kernel-rt-devel-4.18.0-552.rt7.341.el8 E8>E8  HNE6lE6pE8E8fv U]=IGU׳\֎ zx LZ". F"\dxxhk@-yFc]z Ck4d`ݫmEn 3 ]O-c0ٜ^9a&x:#{:H՞|'a>SH YNsl mTsyWo(nwpl 0#Nh&Xwi@4]P+K85}6Kb?.qU)\FlO"K\JX^]†vG_l4H>CN߰:4h;sPzpP#qabLA@UgtM=vՐubox[eEÈ ڍI0M=O)2%4.쉷_A䁽…14gwr@V̫QtE|y`U|'5945359612194ef2ee6a59a1343873cb80bf7ada12b7edbe885562372807fc7b9462fb5a492c1a49897a9927c8612f9fbb9b7fb40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230157924a05da99537cd4dff2df5d357393331052457cb5b29a6c07bdaa6610bbfd994c1608d9f5dfca8492cc882b7de5c02302876bfd3ae7a548df7be14481074cdded50efda015e8e249d4f1d86a85db737ef766719f47603f6bfb76266fc61cb1f80302047c435bb500683066023100a7e1685826036ea61b89b86081e988103b3b8f2f07cb3c9d4d1807621cf8eb2fab89cc37ad07370dcd0debcd10830977023100f2ab821030c8b53bbcc75793cc42097a9a3b8b2b5347283a0e2f085c2da58b33c298f47f12aad79d7e72065d8322aa7e0302047c435bb500673065023100be9e6c2ee97cebf167a81934743206089ee10a7050f294240e8cafbdffd6a63a8c83050ba22bb47b8764844602385c3e02305eaedb7fc4042c6fd15631fecca8e146bb25848c19b38e294e148ac27c6c9c476100adbb0d1ada160ac0998dcfbb2e470302047c435bb5006630640230020b2f0415cc9a87cfa5e823762eeec41e8406e6c9dc485d09cd50f88f4a3d45d4cbef5b79cdd1eaa6cbbb0e39ba0f280230296749dae6e30a40d04c0ee14333f54220ed4341ba28ff784976fa6d44cd471f4383451c8b9f9938b2d37ba3087900df0302047c435bb50066306402304bc2669a8513ab1a0353c89397e95c0dec490d1f962de2d2d11a9ff9be191b2cb8975f31a1d15142c828ace037c967d10230282067c88a30a159dfad42bd8c84b6777a20fba15a7151a8fca6f1335b84b525a38a8381a3177c0d9c84d8c8b5af4b2c0302047c435bb5006730650231008dfaea5cab31d15ce81aae2cebbc1c48725e447a80f8cfa67840e80db8d13a659bacc91fa1db4b717051e7512e53e4f6023012ef343eb5937aac76d8a1ab80752e20b99c1ccc1f7631e1ce0bd8bcad960c90418cc318c0d7b15d50a1d8586747822a0302047c435bb500683066023100fe4501df245b44553041a922510ee86cd1d27033047a32d5af5a584628ea35110bbf396027128e1a0e1aeb3c6722d672023100ff68905a81c9a3fa4c762b46e571a2deb2ec09efe151cb324b6e8f6bf8cd0c3868d7809ece9d3b9724da8ecd347e82140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305b33441b0cd7694a64d16023c626df39c50516568b67cb8cab870dd3a0d9cb22d61e29a579e1aa08c8d590f2569ba1cb023100b647ea6659253cf3ebf12b2411b0e75ebd1d46c880a2ef3cccc92067d069cf630d28ee731df35fceef639ae82dbc6b620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302b054014873cf73100ffdd0b990ed205384e1d7c763ec8be0f13662502bda309b1f9abeb29942fb60b8436427863c37d023100935da655f6fb9c87084dc0de3ba56bb1b9d0d500d4d59e6a2534f4fafddbe7027811df6685bd7518c166866e4926b9030302047c435bb500683066023100b37975e4ba997bcf3c7a10ee0567bbec9d514ef1d5ff1d2a648cc9eda6a1737377d8ab1b17f5b77ef3bade39d76f4c81023100cae1f339655cbaed2ca726c83d4dcb1259ed11617fe916da4331fb95f0c154890521cdd0c3087966b1c0134953b141fb0302047c435bb500683066023100f7f2c9416d404de466db369616dbbbc7f8e64651ae5eddb1111803ede3948a9140c799756cd6db385eb765c580fcceb9023100ff1b4a8fa1222bee47541782ff45e1afbd94fd61eb67698b76c3c8292d3da895e68b1dc73bab8aae9b86797aad71f4b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300de12e5dbf9910aed2f73f1ac7a35768d0efc9289670c5c3ca54dff1cebd2accfd6785ed0c9c179f855a53a97e3b7223023054b50f1e2ab35973e930f7e679e72e56ceccf8c53830ac873e65582449ecc33193d28bd947554d03973a2dd287d8d9270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009c20111e97b2bd656edc5f224e77d50866cdfbb9fdc22f92796e85c7773e74d7d36aa84d567a64452525209ca306588e023100cec1a25f6322b006b98146667ee915463942af79fa0194543a4ea1bc8da1b0b9a6b21b6c633251c99454b5b1fd8945a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a1aa6c22a4f8622c83139c178a43fdce9b8687057708b2ee60096155b451e69d1ef647d4542812389566d2d677f4911e02307bc2890e51832611e621a5bfd28429bfc0b02c375d5be68c7b0b69e3fcdea1038024fb6cd5751179750be298553f38d60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301291881b0f06485821a7e75f5efd19d463f6ec1d290bc6e72ec301acf41da4b320e32620886d4f358e5895138cd73158023010b968455d00fd68b7881f3487d8a216fb6ca7a3ef3c16994b7d103a839648dfc4a6b8a376c8be1c190cdae8a2c120a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a21ab1962a67cc570ebc90d851880ef7fd98acd87334136fb603e5124057a334d91262af8246e74400b301dc7f794a050231009b073e012bdc36f91693de8229f7eab2c9cb94f0640a591be64650574f110dbad4d7e28a887d7671e4185042f7cbafa90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008bdceab96fdbb1919d5362ee4d8895cc81e5304c929a737ed06d79510a39634bd09145d2006fe82411b64361832f06ee023015909681aec4c9354963f52523a9918e2d579742a6830a744f5c0c2c9435f8041d4b96170869f54d56b5edcc8bf991100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c061f64348038919f43151bebeb3614a9281c520d4679451cd029a1cccc4d9166a85a9c30d2a1baf06fe6d92f1dd899e023017ba432f6b18c97c81fb6016217761308941fff8318becb0b97de32fa06982efa6b4c73af32d9a65736aa95728b560af0302047c435bb500683066023100fe5a892c038040fa7b94152e5ed6937244502ebfcb41a90275ddbe320a51456c2c8611e4dbd13fbf53d859cba7f06bfb0231008c680143618e24d15a5876436cc62faeb93b64ac95c4dd5af006313f2945e5585a02373098c15461688455974e5054c80302047c435bb50067306502302f838070409999d008f5df166884d5e371a7070211a4d7972aef11bdf7bc511073ed29c89dcde4eb9124a4703b0193520231009e48a199980d516089e994407eb11f8d7352c86d26d2b2a724efcaa4575744f367988f1e2a930609c1fff9b023bcbad90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c7c3e5a7f42d52e9d60e08c2a3362bfcd2a6584a593942335d763dacd9eee638d5a34b7a996aed3d1239b3a37b4866e60231009b8aa19445b6ef08c07bac8c63b1e2ab3708b0b4703aa4f5d6d8bf4f855aee3d23236b2a32555910d4255f6dce0d08030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230130d111467e4f4ad16bb6e5fb711316aa4c33d0696706302bd31e2706c7b8c6ca6046b87231a5bf6316da3e3dcb1cfda02310086e19173908a258236dd68941279965eb042d16631c1e7bf96843bf3eca2b7420d42fadb403a164bf339e9308ab0f1120302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ec97187212d75255e3649f3eb09ca2f04a8aa3f7be8f38c1637a08c98ec3085dab13b631d12ba1787e3af3611e5111c602304997b17d434d3698eed506f81cf3363583bb968718e29fcd990ae2c005c875fd4427fdea10b44b49d2261dca4e33b5a90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e872721e1b2dd26033032dfdaf8af240f5cdf88960ba194cda7785b553db5c56ce38b940602c2d1af4ac09595d51150902302e5782c178a14ea20be1618bb75f5a564dc0add3965c9f7b11d821329fa8a90099a8460e693c51a90bab928a96b188630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023070416ee0036922626d9fb8e3666de54dafe31a2bd2eb65401c237af75e6b7c0901ba3f74f5ed62281da14440927c0375023010fb43d62af0bbc94ba0b2b94325bc1e9d9b61781f4accaf7f6a73980ee29f64016177997d36033d1dbe4963463b1a2f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023027a15a1a959e6915e56be0c8cd2e230c1bb71abf4a7df1c13347234be5747b51e2a043436b453f7226aa7893ad4040ab02302b742d2e26513c3cd0f32ffd3562052779c61fa68376c379045c044c109debda04efd5fc706fa4cb7a92a7ebc1fee3b50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302bd16309a3fd6279bf85c61981e92a4695edb800f83dc7dd3aa07fdef7149b0784d9f01f76e5254510cf71e1af50c010023100c12491944bde5fdebfb8bc58a79bc347e0207ab699b6ad90569cf91af84124d1f156ca73a4b5c0eef27770db8e2ef95e0302047c435bb5006830660231009f254ac72d0845082c6aa8af9a3a4d8682c824c2db0497107ca0b31cae700b1a59f2a398f2ccfa8208dc009ccbcecfdc023100969a1cd1e1aaa63578c4218bb2426c70808fd2926031a4b6f9837caad6730a3dda0269debbea1e91fa0d4b51f16ceeef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023024705dbeb115c63d5e1ba52349c8e9c3cc97ea835ff5a1f00295d34b545be5d330d5718756ddc653466884f4d262d5c4023100fb12d13497a4801078fa4e302f94780c7414731ff0625b3859ec93becbb4179809bb173e7d4bca4d3f8f54ca033aefe10302047c435bb50066306402306b8157dfe00a421695516edec2cb06f1df80ed42b64094d3cd66fa4447f86f90adf366f2aa9cb021ba7b500e7f2a15b902302f9b189bee093dce87cae22901276fe61c38579fb35667cc9f11e8bcd5e34da29f7517b8b3bd4304131e0abb3bb1c6da0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008fceb18d02603dee4732408c7b87029693f643b7fdc59556ea81319f271ffedf5f06ffac245ffe04c7895beab0d7e6a8023033e7397d33ced147bab2a4c5d9f599481e31edfe61f7f8eda5107d160a427969dcbddd7a58770ca4c8deb702ff9abc670302047c435bb5006630640230213aa26d3f88f2e4544434d231c9a9a0d19e3cb1094ae0d5ffd35d517d6b7677c4dc7441148ac3bfcfeb9b7513aac4df02302112e9b7ca47c5271822afe0f5d22d96ca3090c9ccc64685da76e1bc8a8e90c9ba75b2a30fc8df2bba49ea33b4ff9ee30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230457586d1e10bf5e7198544e0d3c769d8a902585eb8d11beb55b1a00aeca21783d6a92fa8585437c143b93e6b678b51bf023100f7b83490d2abc49212dac3298ae649227da7e37a15a5305916ed8a712eb6ead902364262aef7a383cff864aa2fb9e3d00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d7c2ca7aa1535425655c8327531142b3f334fb7621a15141af1af47751eacfdd47bd211a4e54472b3449cd8555d18125023100e5c7b41743178f07f8712cae9930db6766cf94e19359d96eb090c2a16b8c31fa0dc6c7341de09672c562efe14297fea80302047c435bb50067306502301524084995dd4eaed56f02febc613b77311ab1ea18b1f59970c30cc74122797349a8e784a13e817eb8e3ed10bc87931302310092c624961e3d9ff7bc3d195fd5ed4659b309faba080fd61b1d1dc0c42eaa9116ed4d283dfc310243d081b017c28cac250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230654a16b539c58a33f0bfed4b1d32d6456d6cac992e29e634be019336fd530ab05f9e50763dfccc8aa2ed6a3626b9e380023100eb911f7bbb3110e82f789076ef51f263bb2bee593eee04465f54db8c7026ee12a83127a7a4058f35e5cddae0815ca0e80302047c435bb50067306502302e919b218dc89a2d2cfe2df0b56383fce21ab922f717edf73dba30015ef6c50c01c8ede4b5cf658ed55102a785d11393023100aade5978bb4769126fa9fae853ed7e340877594fd96b76161c81178d253f1209b3f5c9b7a0d91865c8542542d210db660302047c435bb50066306402304d7f894a6329dcedc816f005765bc49b44acb91789f35ab4ae692fd85ce308b6c1cb73881543064943ab194f8219b48602301f33b5fe9b79839ee8e5b8734b5cbfb209b4fd85ce3ce882446e19d6ec1e3538f285ad775b3e5c50a5f17a5aba9f15250302047c435bb50066306402306e969e59e4dce25d7646b979ba6b520a1e4c42cd6d6e8521427b3c3e32840eede691ac8c65e2fccdbad0b03002a457810230143bb2d9c2368e685075a7bf65edf31f52c551971dec664cdf8220e6ee0770f86edb8107002a10f6b4ddf2d7bf4400220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100812a3696286e2acb4c1a7964fb03409bd00fb218477230f1b63be8bf6b720d01808688645c44c78b80d07c239cf1715d02301b7fbc1dbf20ce4ed0d44c9e0c0eb7ab46c54dc9fd03478864bd835679234038ce64dadf798f6e35a72fbd0b7a1954a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230507c63395f6be23d31341a6b0cd322c1db041f5aed93d3c749850e1ee543f01e6f6aa26f050986ccbbf091e74186fcfa023100a2aa791572dec2ca0781d9f1dc660bad12427348dfe0b45fef12e2f3c5b22eca9475fd56e1677c2178f12606e53c04ff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ea5c41670fb5cc3708b53ee1d58e8aaf24eb2a5363f2e8e519115e1a92266d3c704496e96d8ab5231af4c24f3a041e70023100adbcbfb87063f3d90cd529a2c25c1093fa33b6eeece3cd1e491a6bc026809eaf41b34f011987be166c29b0d9ddfa26ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bf2bd1c8264922ba8c51025bfeeebc69a4ff0b192bd6d37ad7e2f913d317a4ae662f92db933d39dc892a4371487e6deb023020d4fd0a3d1f636f5b3688fe3014dfcd9d578b665007861e536e1589db462fe05215d47fa2b52a53c74a64de3f5bf2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bc92f7cbb33d36fea593692b8fe2da20081f6179404fb4a76391cf2d62547b8640a5735e8a0bb3f8d95a69a9a64a00850231009a72516cde4a044503cfbd3ff5ec021e44502adf500d89404ef1560cb5f44b3374b06e14de0ad1e8ab0abd51f3b6bfc60302047c435bb5006730650230513fa63fdfbfe378b172e053d5da1a08069a32c59f55361e85f9b4bb9d4b974bf85579e28eab348b4e99890d6c471c35023100e0762ee133f2fdacbe831d22da090683743150e9f861b88689ce4a5659f3ff6c67369d26ac0d2c892fd70bf9659964a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302eb09fc3c73e1c8fd7f0f5b0d0629eeeeeb5f37e99632cfbf61824c55cd7ade8efbc46330c61d3cbeb4570aba0c9f58402302605533da55045e4b6ccf036aa7875477cca06549dbb23727ec7c5c678fe9f2a261918cfa16a6b4ec5dec7b3187f9bcd0302047c435bb500673065023034de70dd1ce3c01d407b66c77fc5987972d6e3eb9b34141cd6c802091a269cfcade6c71a7c90979b889e5c6779909e0b0231009dedfe7b83a39d160d468b39bed8cf6317c55f3556842d8e354953557ed5cf1ccfeb0c84eba96d9ad7b3aa1e4c288ba10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100daaf9657dba30e3a1797466ea2da863bdba865e5feeb0108cc5e50c649d92f7fd7f6acdbfdff2524b121b6975ce47c46023100fbfbfaeefe9b9e637b906c1057cd6648b1ef0664fcd237f9502f98b4f6bac6148d7d62fedd9db5aef29a63313765823c0302047c435bb500683066023100bd8df4cac3f2b9003f4b8d3aaa29d2bfd1fdb445b61cc27a4ffbb981c2afa91f17d196093e704f36a41ceced7944e9c4023100eb2a57ab4ba137c569ff8ea34f17303a93f5cc08c9c4d31b27e5c2f18011b1bbd06ddf0499ad250fcd531b78e756c2160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d6b37549c7f15985cb8905d8d50825ec667fa5aeaa74b39b0719d61ce84d799e5b4beeb9c973f7280454dde3cd29ae7602303ed60df49a3854ebf6c83a1b79d00bc845613feb68f62fc4d4a3381666056efcd15b42399cd45a36afd69709efcb5fde0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a9de2c4f1af7486114056df708bc87803dd1c7c3186f8e9d24574ce9807ec5329ac77886e97ab8fc8f722de3c24bd89023100c19e3f89ba9ab86f89826e00a5bba3262127095995eb343cd021191ded184a8cf1cd8d38fa7ef7246d6d64a628b21a060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302903d877ffcc6cc9e747e2721571e97f2eb624a9e8f50b2dee589e1a853d426ba747f39d0632a226793eb2ae1d5995e1023100f39d98db57404d1c150184e24fbdab204d9978538c773490bb50a9cf19ce04171986f339c6ac78373f37edc1821bd46f0302047c435bb500683066023100a3f3f85050f06248296c8205fa792c8a3b23aea79ad41d17fcfa1329a059a752273c0f889a0e6291ba4b311d8dcad391023100ef4273bbf496f9e09019aea0bf89a1e6724b0a3c763b6b96a47c5a555e91f7dac27c481037c6a6fc83393d7e31f972050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230746ff0753650bcf8d41de4bcf71eea2daac68a37dfa350059f86d711ca80e305d88be2498599a7e81295c0712dd4b6e8023100e57b4a51ba3a2a09ecda8870dbabfdc9fcc56353a47a2e619cbbbbfe8cbf9fa4a954d6f457c44cd9271bbeb3963ed49f0302047c435bb5006730650231009f59e95199b8fcd6f1a41c33be241b8281f57cc8d24a450b0dd515b6ee4629f2fc4a6222f97321ee3f58675a730c528002303711ceef64b0c658a9b01b3d513cc61a4e009f20969077972bb9454ad6d43130b13a1bfc2da0a0451bd0e1e42c10d00f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100810d2030a63f5db155e701eabd6e06a043529b3da5121f640652d2d045b6ab9afdf3c7dd0060e5ea353867deb6405f7102301223e43957fdd61077c968ce4077c92c8a81978b2a99d8eba602c67b0d672b9fdabcd792e6a7ff96ba9c11cc55b644af0302047c435bb500673065023100b1883481466f6ce67d9b9908c6dd428cef2f3fad88bc97d852dc8c80b1a1e6d464c6967ba977de3ff89113d4c70fe3fa02306b070f6686c8c7f1dc276cfc2bd0589b1df526b8fc8a9b9ebff7dd2be17f297ede15c3781e19215c557fd70c78d2d0ce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f43625870f86b7438aaea21f6a5e6a4f5cb1f023b1bd9430bb4c8e5f9fea2772c03f0db63d2c79a7cf137fb018fa6e34023100e5a379f6abf4529da1e089225b076af170ac1937a785f4561e15f42a7607ce5b6662eccf8de9ba11a19e5361c1a781eb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e46ec39ac682bf3d7b066a930b84de48ce00d3c8941a93ec4f75743240e64cde1eb8dd2f9400e46ea478a18e09f21393023100deb93f224dd2221a420d77a5c8ae9cacb35e74276f395b89166441dffe6c39e02734841babe1243e235a8423343fedfc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d5c42dc64426e6ca0e6be01f0e3dc114d0781b68844b5cc750ce4c047807cab19448b256d2256c012fb2a5545428e2102307a1ee6f9b404a4a42580afd42cba80f3185e99fc59a45da3834a98ccc5b2b3e66b5880188a5665fb78fda63199b356a70302047c435bb500673065023100a947348a5296a97f4031cb7650dfe920d309e076e2c4d2beb12fb5199f93e78976bb7e0ea24b90f9c28926cb2ca7a8fd02304eef07e585d05d7be1937bf39af7a4efdeaeb07910e2670904352f8f119d18f803055d3e0722c09741135dd62466ffda0302047c435bb500673065023100cfbe5596a07c35094f4be00546e7cb15134a0b620979a4977d886398dbf51c390f913bd9e4c42952f28db58eda89ad4c02305c3261f2e8e215066c914e3d9c8cf20dbaf52caff5f61a342e9e2778b078f320a19fe1ce2458278d226674a6e18e48930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300414d534c7f7d47ca08c7b558d9fc0205df1b43851c49872d74f65304724b9d2e0f264997e78b33f80b436a6dd9fd10402307112bb4d4a8ef09b9d53ebbf16dd21f7eaaaa13de3b82865a39e7649e8cc3b7394e94c9cc50dd0a7a8bec7b131199c840302047c435bb500683066023100cdd646e3e41ce545e6e068670a366d2b7c81136376b8aaadd8c63b4c58e2622d063adb4d45cb2562b9bb680cd87e3267023100f49db06257d7b8a6746bab2020e06c3d521015070abcdcf0feeeb9f796c543891e6c9c89e212069a422d2f3bf1e4571f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e3665a2b7bbe0667f9ecf53142f30189840ae8c03efe6e2bdb4e3dd9fa43e6b1baa79c902f54b924d4ef3b3c9b5d416e02304da97da57af70e16b5041d93c03e3370dea4d59ea37953a7a890600417706ff4efd3391ce1ee8819c2c1865473eea7230302047c435bb500683066023100b43c983a4ff439a1c2b483cf4441e8f044a8c82b774261f8db9d9d9faa675194a52e3486c963ffb16c2bcdedbbcf04cc023100f8da2e6245df07b912b3789aa2f430b130baa49637c7af76d8ebf6a60488ce7356f9c461cd24d92eadd23b457601575e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230126f58d84af74357bcdff133c5f82f39939112c64559c7a897129f79c10fba124ced69fe172808776cbde7156e2c88f2023058e8ac517849e05d9614f4eea9184cca3f40de9881eb4212c6bd677123162c93e64270773ffa420203a22fdc2cfdd0be0302047c435bb50066306402302a74f6a0b5d0aa8cba17d40ac3e87ad907b92c8c4cfac826ec39ded864eaeb57c80b81540e07992622bb2cd75604825902306612f0fcfdf4fa8c84964e64cf220cb77bbe638ee6efc4b8b6471e03c9ef00bb1c0ebee47af23fca765e34a67ef4b6260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c944d3dd30ff5a533192e777043438c0bb97b24576b555c9c20ed4b6c84b09fcba153eebc71e37db17734b2b93b1ac8d023100da75617533e83df6744f49a58304403d5ef8609628761964fcc85baae024ecb70bee7a7145956b7471f8de69191e93310302047c435bb50067306502302553ec7c693f2b33b78b5ac9b5f81f374c4992d5e143533abf5c663b4870d81f3e09404ac41eb94e71de95a9ef7a0615023100d5170b72a0eddca2ddded80a3154d766fb9316b384e968af27d244f0997381c069ed7330ab98f902fbc124c5a9f342440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b5e602221d55f0db8d4cb482b8382b295cfabe9fa0b03bdc28c9b5d305015d72493ac5f2f752096ebf3264d09354cfb1023100bd5d214b22215313f80f8b5908261d04ee53b5f2a824861effb88479388fb239cb7f4a8b2648b02fae9f192f40fe9cd70302047c435bb500673065023100859a68fdb95a760d72e3768548b0e321d821cd31f10ece97044d7a61992a76f2ecef18d740c95883b55ccfb297001f8102303d91eea6624c9db5b85a7ff5de2dedffc1dcb1bc7812f6bf3cd6dca44c4c5522c3527bcd0f817bc74354ba65be210e970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230446eb4960e449d71ee3e1fab610ef258fca3a884913227e8041e011723a534eb4d04a6a0c2672a889d3b71fa7d5efa260231009ded56ae46c0c38bf4600adb83c5fbab194b72a927e970dab3f334d5b411cf3f25868357d6043d4535e2db79855d9d370302047c435bb500683066023100f1ec96983e8ac31d8a9c16dd91aa87356b2c5817bc60be9c8ead7dca54693948422fca1d86cd7065486b7ab9720490c6023100a1ee23902bf2460565e4465e45dcfeb5de00d90e405b76d29dce4ae9f8cc1062278e8f1fc8d5861f3a11c0de68f0500f0302047c435bb500683066023100cb43d3f17bab6e6d4802b1706f1dd363dbe802604da05efa835d22fba142eb8fa36d6b55fae0b6a1a5dfa92e29b43f0f02310099a97e71f85073554e2cb5b1900314a0046defc789d595523cff44aa34e8d69d6f04f63ecc382c866b8b20983d385ccd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305e706d239ebbe19fe7d4b94f71f305ce2ec0fe5f17bd637838bca18cb9be9bd0835dc71648cb7706992525560ba25ce2023100a9dbde4aa6b11c348a5e3fb45a6446ab6c5abade631484083fa45e3e663cc61a4ce5687bb2ba53c38677ffc5cb5327490302047c435bb50066306402306bbf51f8ebb1d87b70cce212da2f4f160351120d96381997e6d19477def44c119bf8f81ad97e6fbe0d39d70b5625abc70230066ba96126cb603dc8f816d805d945f9d362e1724cf6b05bbccae9a645b51a3e62871aa042f3e26b8003e8c4c2a33cc70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023066e263fe426c2338a414492136f41e0675767bfe7129de5f31536b6c31809aa4cd152d8eb8eeb9e0fbb88cb335b22e540231009fcca2c584a8ae0daf8c21ae7a80e73404ef05c3f61f1a6391f6208938d7a790d37c236ab9088b28382eb4160e6473ea0302047c435bb500663064023015455420a97bef16cc0d9b1016062da4a5b89a8b4f4a242866e358d730acdd658609f5ed2fd8807fb257e38f0e9c2056023014fe63a3b0230cc1033a8234dd297a098186d975ad5dfe7adabaf11e4f7969691c10f4be7a81d208ac9cb0c49499ead40302047c435bb50066306402301504402004bb183fc19d35a3b7afe48baddf3e57d10e977de20a0ba3c5616ba51332651abf8afb5e81b7f1b2f24fd5b802304ff178089375c5a1bf5a0b61dfab75b8564226ab20f6eed745efb901a130f58bc9973733b5d813a3d4fff6d6b62caaeb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303a8a82dbaa0ef0efbb7f147f71eaa3d9ea811740d00f3019e8331cc5ad9042950fadfc8d03636da04c26a25d476818470231009fd982a33aea7d77831645348286238359b3f0d1d27fc1d48b62e7681c703de350fd4d80c3fb83ea0ab9e9a9465adacf0302047c435bb500673065023100a35e37e917291bbc95f1bb6d23b2b10dfceaee0fa2aaf25ff9b3a252d70a162fabc06ff1546cb46764f6f783b584ba47023003a1881a92e29b6dcc097468d2352757848510e839b4c0784fc7e9893dccf1ce1af714d6288b5751e0e2012fb17cd73e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304f3d730aa049b6c1009544659469483baca94745c972d127bcf3dac4dbab9804dff85dad1c317b183fdedab1b0828d6f023061a4b3b80be1a5183708ec7f6ae635e62bd0d87124867c85444f9ed6f63842900952f1c09cf13fd541fd86b7eaa220780302047c435bb500673065023100cfbe5596a07c35094f4be00546e7cb15134a0b620979a4977d886398dbf51c390f913bd9e4c42952f28db58eda89ad4c02305c3261f2e8e215066c914e3d9c8cf20dbaf52caff5f61a342e9e2778b078f320a19fe1ce2458278d226674a6e18e48930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300a499f9055e350565d8427fb4900d08882297b4869f77a020425f583ebff809b7bb8c43adf68c8cfcb6cf5bc56c422e80230226a93ff82f4f4bb38b8125e3eb4200aa8083f6809984a13bdb7546857290716f5472df89a56f0b89de6331ea69094190302047c435bb50067306502304fd7c3ea9d42b69670074aeee84a9dff34031ea223f8697bf26cb7409fd169a46d3e18400e561f0f2721af9b9bf7b5f1023100b508972d3c531bfbf51e63fc1c281df53406d50c3d66d988bd3e861dd15263876f0c2aa9293bd30f069328ab5251c1350302047c435bb500663064023024ef7d91aa9e84e405887a368e64025e5fc8ebe80972615ec72fb4739ecbca0f093f4d5585c68a8bf279b4aa2f032c6a02307b6a7fcac9e2ed6c59bc1664acf72b0e8337ee99a542a8e33523e725430afcbefb748744c82aee798f772968218dc6790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301eca7439ed80dc31e27d96294c4838ee5bc9aa7327c5c9b2dbe9b515c3e1c288c60080fdb50f14314256eb6d35655eed0230795a6c0474a471038df399c4280fcc86e3af7610fdf95c46895c02c262fa9610f266289d62ac1483361742252781ca2d0302047c435bb50067306502303e4f1252468aaaa117dbd8245541dfb04b86fdcc132facd0b879d26ef0a7528e53eb53f95cfb98efda33af463b981d5e023100e69d3dcf6cc1653173094e2a08a237a91fc3a25da9dd4adc7e5722735004a9c089eea5907510c9e9d45c8712f9f400fc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b75937096da814bb4da684c3ad05ea3e8ba27b5c807f8003f2449a624c367285166d230c3139a96feecac6ddd8e8028d0230617fc115eaba4653bb95ed90976466d08ec09403564fd51fb2f30aff9e624aa296eefe3011f84048c35274d0274fd8fe0302047c435bb50067306502303e84504af1212ad23a91e7606710d7966afa1687d36993a62debc29caf9d2c67f82c5c4814817dccda4a7b7bb39354880231009922276cfbbec26856e8a2edd6da1d9e2ab0a79b3790cec090d5276553c9d500083848bb526e55b901682dd2df7bd1000302047c435bb500663064023061a82487ba805778b33303f2b98e92e3627e02f1058969f8502c46973d6c9347a6a4df70e9da42be3d86cc90ecff635302300815aa079091949c5413a4890a508cc315c19e2fda8b5af109bde04a8924b2dd2f1e8de3d2152e0673bc0b07060cd9d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ee941fc06175522bd9c2feb62490a9ae3d8be2a7177e2fada9b6efb7097fb3c11eab0cfe242aaf73b8dc6eb88c04d05f02307c0cdf638e462b2d79c3ac2e5906a804eab90a4b49783dd12b7687e2fd822ac159ab66febf9787dcff6daf3d432b203f0302047c435bb500683066023100b5c8d1c7f938ecafe7db3e4a9157d8a199fd3cd1530002d4f57fc9dd414f85f9c4b90fece48913569f061967ec1db3be023100ea6ac225db4f06640ea12833f04660c4eaea931dd2931abefce5d3c03a698f539b49d5ded3540c5ff1255995d54503290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008ea772eac0be59a875c1817ff55ad69238e6f7f3bbe266f6f1712642e014a6ca378726c6f996d0cf838a05e5f8495ead023100ec6d861e9e1b42646338030287beca8744521af5033152ee0587b8c9b955b6415ff2c4c1dd8e859da1b2ceb054a1c9fe0302047c435bb500683066023100f654d9e9b743e25e675cd1f7382d01c7a281901dc6079eee8c2e78adcada88b031e4f7f38c53e5ef9ecd376cc1a8020d02310092ee10209e3d683cf5de14348dd8952af1c0343c73467ff8fdc77bb335da8bd340973c3e59966242f17bd8145fd76bec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ab0a1b65aad1837b87ddcc25992ac643a3acf97c6ded35eeff691b3d1a6f01fef46bd8884fa8ac2b3b597766775a4836023100b139d8c234b29c772ae0a24434eea277a9e3bc4d6ee856a2a4ce0285e0e48821e893770807f20f50df210372dbfbe6be0302047c435bb5006630640230257760e8dda29eae143ffa68d431ab225866e0d32dc0dc957439c754c4bba78bc830767edd5ce17ab43e0c519c3a7bf7023019c3003ceebccf4135b8e53135f7d715e4abbf164890f711c07e539cfd9fb81eeb84592c0ad8e1106b6f0ad482955a860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301913f3def2825a89ecb88a5faa276e460264a5beff26c83de8a71563015c269fa08357a32cca51e6f25227a0bd827ce0023004393e8407a941fe5db0efa091080126243077c7cc020ce077b9a462d243d66ae3f4c8e68e87178452e22c3b51f623c20302047c435bb5006630640230789f3f546f8831e60e6f119d3968f3d863defa6ed4e47e7ed5fe33b2f24a906c95b2cdcbde567876c61e564be5aeb22602300b5200c0f6e2ff96067770ae559b827836299164a0a17ce1588b4f00ef7a81595d56472006bb844e8ecbf29b782a9d7b0302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100affc5d46df63febd5535439bd4567f4e9fb1a9c4ceec0145376ffaf541397466da33d63338f276a392471eb18c8b8e09023100ee2d343b61235a56bc4c9bb5b05124c9c8adcc5e9fefa92db4bb54aece17fed797a38503468fdfe9a4eb5f0b7165ac5e0302047c435bb500683066023100aa98dc721871f2e3734fb0da76d68b3b03a268668f90abe5dc012d6ddcb3dbf30811329be00e5b6bba61cba5d601f8e8023100c9ba7341f10e737bea1f6c4b41d9d9b91d3385e6a5f820899128b2e1728de011d1b9878762e6a6a550edc7b83980dbd10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100df4af3b560f5c3a02f88f0ff0430657a8e36767f76648cbd81be1bcb2944bb5ea0163a6a8ac9bafab6c4c3bd2fc9eaa6023100e361bc7d53244057756eb3e84b31309642036ea977140429027bfd30ea144b5a905488e3788bc7c2568309a9d852f8d20302047c435bb500673065023100d640c926dca510527cb43d6b27013b3561cbd4bf99ab7f3bd37ca1809dbcb3f4ef3aab046cc97a40db4c7436cf725598023063439fe002d862ccd9632f67264f9b3f4009d7d1c7553065f2489294fda207255a0d5f823e3ed25150cff7c19a6264710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fc5209b6bcad56e5172cc5b659c347bbf1b6be26dc502d336a378939e8eeb319234965700255f46571d3287052622b76023016e7d021591e4c32084564a45682d2fd95a87585692be9e7e5ed8b3c368768ae83b8c031c25178a736d176403492350b0302047c435bb500673065023100bbfbd914eac72fb061b1d0b0da2f6bd5545c06a0155bc892aa227e81db3cb7bf85f741a368a35a3ca6df224d3ec1b87902303e8f5b965cf192e4f22b8dfe0a0585d91a5d45fc183ff9970fc66bf29d89baac3a4f57c14fbde4079853263bc8b78e570302047c435bb5006730650230462ebb10b51164b630d584e1ec4b867fa6fce9d42d6b3f204e5e4730cafc1b732e0903b229c4ccd4f280af6bc0af45c4023100e8e98ea98dceaab974babd5aff923b68777f3f5bb264aaba5a7946c77e4843f9cc7f896d0b17b0886b22e425235e0fed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305d047ea3972665c9e93f6d3cd275420746f42b872c0bc7c14fb83c4761d7ce45184b061e2e03b670b8cbe9c3494b40c002301f65988c69e3018fd25ab49e2eb17a8efeaa995aabdb7156c1b110668ad3f67b00f2449201ff992328657010dd7051570302047c435bb500673065023100bd52a71d9956e26b124d16c9181920b0b81d34c8feb2baf058254682ca76c9312015e67ca4ea690722b2956ec5fe9bf9023047fcbacaf323259170b360952e637099b3e88086e370751e290a2684de51930dd8b987f352f6a578c082b4c692781c320302047c435bb500673065023100e8b341a4a0b6ec8ece593810142263d0a3300c96ea89e37a940b8cfeca420208909603b57e16e61e15a18fdc22c801f5023048ce7011f0b9168a5c093ee778c65d2c080dfa5161108a2e1fe7a7cb444ecc6df85e58f479b269bd1e78d1c1a42dede70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f464429c239c7d3046591770e9c37e36a8b1c35956618f96cd10af3b9a115e08b4cbc0706e0e14d157a272b8fb93e2ad023100eee12a912d403e9db6885dc712c1652eda2f64b9d17c1f6a4c72aa422423167c5d5bd57b5464250e1db628568e413e8d0302047c435bb500673065023016652889919feaebee8ad1c151b029f73dd3d5457c4281397a54011617eba8928f39fc43ae0f146846de263f8d7c8b47023100dd1d57b9d27120db00258c577af13d77b56bf47866c8673e2394e8f36a742633aae4a0b0841c8f96009c5663e954e0410302047c435bb50066306402301504402004bb183fc19d35a3b7afe48baddf3e57d10e977de20a0ba3c5616ba51332651abf8afb5e81b7f1b2f24fd5b802304ff178089375c5a1bf5a0b61dfab75b8564226ab20f6eed745efb901a130f58bc9973733b5d813a3d4fff6d6b62caaeb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c4df7c17a10c9400b91df21b97c7901ff7394b9722f99f4f3b2dd2fc772dd0e99c2fb2b7d92c3f43d97cd89454c3ac19023100810d9f8fe045228f37cf3075893a764ef90e964ab8460c67d9c0021592a64b87448e65ace9448ae642d3a731b3c053110302047c435bb500683066023100d1517d14e8eda34fe176e4d50705084e083831e90861903ab6fa1f14822396e7b85e0d7e84ddfd71869196dd44f7d4b5023100f6e882f6592d9a21691d3499ddaf18493276f6e128d5b8c780dc92e7c1c9e16cfd51adf6f7f3baa3e581a1ec0f2fdb7c0302047c435bb50066306402307a35ab1dd74b034258baba868dcfa2ab08ce40856faf4f1a6eefa3f66fd773661b4270159481399335b8dc583e36f8b202305951df277019caac645eb43c923cf85584b1fdbb193eb8fc8deb8b7ce16c003347f22818e4228e673f14c699fd4330e40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100af1a02265d5a422d9d5fe720d79029e5d91c497ba2411679e80714237dd2af3efa9e38908b59d6ed94964903236763b402303389610383903234ab75acd09a80bb52126237bb83205679f7dc08b6aef6251d62fd296c641577c2dcee5f385dc71e210302047c435bb500683066023100949d243b10bc06dc3d3386f725c56d64499f62a073b2e360cf0c52078f0c67111e59435450fc6724d988b2820741fc57023100e47a97c4a5d86d5096c3358db3b7e1adab1e01f35a38226f996c0057bf53782557f3af70fc4139834875a1f6a1d616b30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301dc656aca7b8dddad9d191725e57aea81bcff6ac699f9743b792a58a3595de93a9ebb409a97e92d1474a97ed2d6310b2023100e17ce39a1a54a39455c163becc1af173245823fec4366919755fc7b81e9a603414ac664918243ee343c49b04cfc92ee80302047c435bb5006730650230552848d751cd2bc5b736cdc8b185386691f1dc908b3614103a34038add31f07dd2f535c891e41e649305d002a98b19850231008a2bf0c5e2326414a25b4f39b66e92dbc6f94982a976f7b2e2e5914ceeedc622dd3a481dd17512317f8b6eab2e688d980302047c435bb500683066023100ef38e0577f2936fee38866131b2c360a245319bc998c88bdae9e72770129429345bbde2e0335fcf86dc6421acce07273023100c7771fb0a7e8fe621a5fc3803feeecf19fc134ae82615b164be6f5a189804c4fb6eb675ab662511c00ddb68759d917650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a68531bc4b18961743d84779ccca0a8ec793baa244f38d999c3bbe5f8322567f70454940c5003ebe9fae4f632e521cb7023100bae2f9ff0358eb0d4311acf86fb95a0078ba89fe1f538c8858b0e6dc3e059895a6a1788d3cab3308cb6eede2717e03c30302047c435bb500673065023100cfbe5596a07c35094f4be00546e7cb15134a0b620979a4977d886398dbf51c390f913bd9e4c42952f28db58eda89ad4c02305c3261f2e8e215066c914e3d9c8cf20dbaf52caff5f61a342e9e2778b078f320a19fe1ce2458278d226674a6e18e48930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c46176dba4ce8f8cb00ba91bf11306839ee406fface872dab455452577c8aa59e3ca2e51d5b77d39d166cd5f6fd1d09f02301e03187fd97f0c4e8351bf700a8b8bf36922ba478d7e930ffec2272e074bd33f4d5ba1400c557702e74ec16a31922ff20302047c435bb500683066023100980a0e4c421087b0dc7912221c4ec1b89456310aa42dec24273c345f73fd60803a0e793952827cbedaee61faa4f1cf1c023100eff53040537fabafd400a7bbbba8506765bc4fe9f96fcd2ca313b8d68970d187f2ad81f4bdf08659dfe6936df92291ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fc813ad91b945504277dc87d5f11b2f4a11063f4302fef093d1ab2ec10ec7ac41767fdc0c22399f12cab3be7927155ec023021824f9733efa3ca7c17afb8a411b40cf912562e4201c18480427d856b022ef957b497a5d1825cc5862ecfd27bd1c9cf0302047c435bb500673065023100b6a418e80e9c295877c52c216008f6d722fe9e9fd96fed70ae8aacc1e35afa9a34328235dea51a0a11fe6c72d05158dd02305388ac4e272137bd2013510d650f9f43f26c75b3989bc10d79c7ba6c18e0b82304d2afb0aad09f7933ac07a63ff3eb070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023050f09758043894a1998a5f23e497d6c9929b7b3307cb9c10bd06c3fd52569cb2f4e5b24246b14e2a0295a05ff449176a02303c46c6aa1735ec7988480a0de978ad91634d5e5e234ec4cbc000dbdb45d00c118e82f3c2bb54884bc2083a60fa6f486c0302047c435bb50067306502304a329ae689628b171bcaf093ef40e8506525f1d94916ad15c7d5b598bfed16ad0dee8b4376c4ee24de1a2763cb6310b5023100f9e77aa8f3fe63b0861ed718683527e53cddbf197bfdfa6bc97ed602c1f3fbf423c1b1ef61947e0ec7c46a742895ae920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e04220907f15404c2dddfdc2349382c74fc9331981ce90604211e128894eaaced5d23939bd518798faeb0a2c3dcc9b70023032f52c4f0cabc341627fb662c446854e62750ea6a8a56b176658bebe465d44cfb71a0d069f9cb4acd8e9a4df7929838b0302047c435bb500673065023100bbcf8bc6478ff88e836ac96e63d0455ea0e32fa61a3db0288ac5e9bc26d1d4f4f4cde8f2aea478595114a767eabf706c0230715b162daae742a41153baf3c4e3ed64855f40de1e72d21e063714a0f69c093d24844637d437358f8461fe8c46fd3fd00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310086da873e8b5b4959fd8117201583876e5f388a9706fbb52f91d43aa6fc676a34b65ef8021b5278e8df510eb0b7fe47bb02301a4dcf2130b582229f378fa7754fda2e4ccfeeee50c119ec7e8efb6985c4bc7a62e8a75efa7a142088278eb98076607b0302047c435bb500673065023015368ff8af170141b7b727a50582eefae76454e71a6b38ed8f73571175b437dae852ab54908d6017d1bc2b02f19528fe023100d30184d04f8e4a7822a276504d0f4806af2285974a7a9ff9579ccc6198f0e369bf3aabaf1b257f2fd9b403797889533c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037e6dfbacfe5408fd3f9aea65301c79d4f222e53d891cfceceec5709fe5ff9d8feaf929f9f31d2f11c46ce7bdfb05d97023038139a55c2e2f81b0100579329583fd99820de323d37e484cdf5b59a1d6de43f90d887fa527ba8fd4c14705b8e6af2360302047c435bb5006830660231008444f7c2fe970c6e0d4c3bc36d6e34cfba5deb69edc20576ff2c41aecf5f1c9c1cbc0ec157aeb84fc3554142e402c47c023100e75692937c9e21f4d764333e9a50c21f40f7d1c7e49f133cafe18b0f24b3e1e46c4eae1ced38f1300b85eb312d9abf940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302e0deacfba8f4991a0d947084f025f414aa53f813f0480e2caf38f7400d7a5467701311ac6d5873718ba321d13ea9a9102303fcb0cdad121c321d9f624ab2c25e5a0adfa2fdc546576c24b0b06d79a8ad0d0451439878112bc02e4590d27cd5b54f10302047c435bb500673065023100bb5fe742e433f753378b167e0c30f013f26bb1889093a50bfe1cd0caf010f4978e330d86627cd2ab2efa6c34c7a5be3f0230340d5d913cea138c12533ceb2c6b6f35b90eed3d1b5a5a46549976018ee2ce2baec69fa1cb0c588fa69dea22937f43400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100effab764985b25311f5196cf21bde5e1234fae664b11bd8d5d183c908ebd59fda53e2ae2d4c3bd4e2d4d5b66d703a001023100f0d9b6741d700138011c0377d6781a7680c55bdc5c13e93ef31b8bf028345c157b74328e6cb8970f46815befc74a23fc0302047c435bb500663064023073c40e9bd6a9a8f4a29dc45d6631c7d9893e4876e24444757efff36c8eaa9c94de739a21f86c43460301ba950dff739b023041e2076a813eb92713ddca2901c68b68d934216c13095bfeca96d535d9bdc618cd77f5bc20a73c1315a1d7fdb95716e10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e3570e21f33b9796bdcfb8bbccb1630c2c7e81e45acae4bb386d2256e6836408d18e61f26013800bacdd9b8eb3d08f770230719a41ef76ebaa356f212a4783f995df23afdd6db746a6522d0cf1c720cf25cf24b973e3385a1da8681f9686a18527060302047c435bb50067306502300c72bb372cbfc0b1832c1710bf8480db6009f20462f426c2a2212fb2e2fe4f866b5b8c67207add7adbaf1df0b250ab7a023100a524093fb40e211b4b213724584da68a0fb9e12465c10adf32a61b44dbef5e8308ae080b2ccbc840115aa4a5f44b164c0302047c435bb500673065023100971b92894384e043b63d9b8e22a1eab1827fc9212ccb32b309adf9077991784cff87d97885b7fc2e05b37aa6fb995f4202307106032dfab9d5fa7fa98e80ac7d1b9240c9551632f0099d8c7fc60277bd9ba21ca97d313bdc97fc59ea0e40594b4da70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301f98572b440493ad3d70f3bb8b9f0d0f07b3821e3dae22dccd3d421fe92144349dafeaa1c8472412a2542b8f8a609d56023100c3d6917e3845db97b4a744eeb33a692b1c4094f3005f3e1ddcf5a718b6557a13d05c98465c527f145f3075ba2304e5de0302047c435bb5006730650231009090c1159ba207c93c38c1b20ba61104bb32a3f298ac818296b99d612634135081a408bca273761bbbf8095536b1014202300476dc2ccef90820a536899736a7e22b4b7ad63ad9e1774182165fdecde2a2fc2407ff4f07e9c3e01ea082f7055fc1b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230118cb73794f94faf8357a2cc6417d4d9ab27eadb70bf92e3770e9b913b36458280f01175c676f5e872385650292fddb0023100ebfe56f657d1df5aef3670d768c21c912be277edbf3a5e97fbcabf9d2de1f0d32a8bf3ced580c839d61761b3e712cc930302047c435bb500663064023018054f0a43853dfdd2bf2de6f71c6bf2ed70d798a43364429b83070fadfad8cf09419fe81b9584525429330386e9e12d02303189e50e24ab94515e8df48c8a89ab34c1543a473c8df1bbd62f261ba0333810d07648574133138e5ffee5dff1bf376c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230598e5a74d23d1f042aedb32ce479b83769c7e0ffbcc90d6493e4666dc06ab89806d4a7ba57a7d43772482ae4241dc45202307ac2c56d213781c61d67fb43dad6a2cc94dd33e4abc63985f767c934fba91dc61d79e00e366f9f4fb878adfff3ccdb9b0302047c435bb50067306502310085e4df3919e17623896916cc259d2b83cc552274c010e8693696d57f8a06f23cc9c7ed052ec489cb5fcadbf1729917ce023016e92273ef38c38fa94b75259556b1435653d948eba5509f19f5353d9298dc74086270190a21a5153e2ad808c8d3c7a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc7a95d63ccb0cf1e91223ba238d8cb41ce4b53f9289676e8b04d6f446b319e646ff6c778f9c8f07d9a147b168ff0106023100f3154dbf0972772e6ae621181e75f964bb96561d24fbf14a080256082f70b67761889cc31f1718983c5ff1701f1a80070302047c435bb50067306502300550621918ad41af941048af4ca38d92a9b32f18a6e88856260585830080e70fbd952c784478cbf14238a095001b616e0231009d17f01f504a6f6add3d299eeac341d77bf6bb229083775413e44d407b316b70211a6c9d5ac6c3eb274b0a0ce091e9e80302047c435bb50068306602310095f81275ab319a5d198a8523b1517296825d412164a161c7399158a8e575d36e3e63a93a891912d26db9d2ff428f962f023100f9899ff88a676789fb1911e107c850ba7cb7350efb6ab63bddd984fe002d80082a30cf85236b6c545c4b2537793b39910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009df53f0ff62ca56d2cc2dd2bc9d0bfe1b6dab8860d3bbe202321d6198537ba284cf27fbef142b1150cc40b0e7a543eb8023030e4ac45b811cba1a2b83295c1515b7b7451342a63bf5d69e1319c677af8f7dbf6381f541ee11b6fdab2a4fc34df3f8d0302047c435bb500673065023059bc8535090da094efae41079de48d15224fae78850539ee363d6be1e40234548807264c960d81adb8121f983ce73c2d023100eaccb54a817bf9bb5e3e2e68871301ff3c28f330d37128002e508501deace0afd963f51686e27536952ca442228d7cd00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c6ae6c36c6451c8a5ee1d729b18f7e86100488ccfccf66057b7181aac20d04c2949858f9f409abf454cc441e4a13195402300ecb72b3788320af143a296147aff256ccc01ad7ca0e85d7100ba31791a2348b9a418b13c504c1964497ce8024bbb5260302047c435bb500673065023011f5861384e003fa7414c62d166eca028aab1cddc71c7576838bbe60d66d42c703d5866d8d028a92b494a33b93fbc179023100ebed56a5b01a6397452766d6cb7ea1e407fa789d0cfe850b837c8429c2ceecc978319a1020763bfa46ff645ce3d996630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008d2728f6758cb8f652ea72aea5768a419ded2807e1c08a17c3ea08a710ca790aab56cf924d31b5b16cf524df8f832fd9023100d2b4efc86505b986ed6fd7858ec4c6d868dda0f30b9a88860b7460f659ee8419711b528a3f2efad800d62ca5efab04000302047c435bb50066306402301c4e140990ee4c30c5aef41f5269e75a24cb7eb30f572ccd0943cb0112b00a89b92aeab57fa9bf7b1cdd07f3b77ff7de02300d9d9116fc0549cd6d0c435ebcc4c33c5f44f0109f9358a55dc66ea7c695e0862aa48f1d34f6ef78a41503af5382fa370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fca0613db08fb7eba47cdec3892d1aa751e726fe10de63d903b8886c9b257763b7cc6556e5be90fb259bb5cc085e8a03023100b103b71a48046b2b86ed4a5d8fb31b47e3e07f52313b1e00563e39f73e36b5ca6ee164a9bbb88ce5433c9457666d1d8c0302047c435bb5006830660231008d6e044d100126471f76c77828a9e8ebe11c5d276e0123566d5a37cce0aa0bc7cc53835398776ae82290dc3004353c60023100dad4c4b6b0b4bd22e41d1ced55a9302209de5a8cdcd033c7a8d4ee327cb012b0aac73728ecd87ad06d228f071e938db00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023052e8ca639524bbad67e76c3cb5f8fbd9705633b7a2f555749a717a8e8574062d794d9116a13e18e1fe4005e618dca46d023078357516ceb0cc7efa49b7f1d312a028b0756a0c78d2feca48f1ae19f22050444b7559049bb6dea39780c2f553363d300302047c435bb5006630640230444d208edd7e00eb10d974e5b2a540357d19558aa6fb7d43a4de55b2cbee909ca501ef4957f79c553e7016b38cd754e102300acd9d0ba39d16d94e9ea93dc583b312d90a28dbc560f2f0810a13581aecab2c828853513d9b784a0a55eaf716121c350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304eba73cd8fcf12d491ece3e2c7520071076489b10693a6e7976674a0d2a002f07ceb721ecaf465790500978518eb839e02306bf5008ec549121e9abd3bbcae7c6134822bce416a6fc4587d642612abcaaece68a43496562918dccafbdd5330acb3c00302047c435bb50066306402306f35d073a3bf56202e20cf7428e93222a78dce830cb7b8e36a521e0903df1e95c6bd796df5611df3a96fb9f2fc2be163023002e5f0d9ea7601966409ed9cba074ce7cb7d5e8d902d7c1e467a71816af352b20716f3c9a713346e40dabb46d04f17350302047c435bb5006730650231008a36f586df4c0e3ccb5dfd665a2816a07ae7f1a154e07e1d598ede2674f46f51e0683eb33beae57923bdc092c6f2a0c90230342484c42a5c45c8e56ef3e048641871220c61be2c35fadf86b80ee6f7d3fb777d65f4e42ab3f2b11efd6384974004050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230402a222f024679d3362dc69c904e2a7f787184ebb581dad9ae3164639303ef434bd07a964db118da1a9f874b2610d0d302301d060205129013d5f007df9c6f014c2e25b90a31367515f40d744f2882b18c50f432011aa7e5d4eb4df7f49a2b5bb7070302047c435bb500663064023038b16eddbcbb3a2e9517c8d1cd5e52b1456299bb848980ed77f3fb8ced66bdb29e18517901066d73fc990d1d1426526902304955b97986c97deeea1ec8a8582e048f9487046e36229221fc4193bfcfa3529c3d84f4f3a0f6d3c44eb289c6bf7b05d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023038c1ff3ea666ac956aa3a9955da2fc5be29b0a6be64a5176f7bc213c72faa1ebc122a340a20d1a12bca972e025627bf40230015652e973d2973bc2d567d7b69ce47e89dc4257e354fe5b25d20fddb67f8896e183e3d361cc133ca2bcacb4abfb3d6a0302047c435bb500673065023100a2f17dee8bed80f99de50fa604cf1e2d79a65f8a4cf53e5e0933a54dcf625d86c305718173944c501cacd2775daaad0b0230379ad2cd9a227b6cc6d8648d6dada59d625930925bc6224239296bcf4462bee0c3918f0bb306d2afb7e6582c9fa170f90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230073890d6b2749b8ed6ecab7dacb00e9da1643299c71a806904e386d7e15611d86eeb8e42d94f7cf7a6c6cd785978d57e023100f538a2c3011692d868746f1090ce50656964f8e183d0a56c0161294e8a7451d8cbed1b4f95da003d44b9d70483e2ae930302047c435bb50068306602310095847c6ffcfe7ffb77edded4ab8606df99c8273db4e607f56255331b17b8ae22b3a459c2c207a7952114acd45caf67f2023100d292cff8ef2b546a2c832d5f2df0c2b5854b5b940911ee45ee01403a3319a1cc6cf09f84dcafd34ce9d09e2084c7a43f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230676c38ca7e3bb964ce153656149a47f1993c13aa193c445b1c18a6c61e5fb2b66b542cba4d43ef9e2bbad43fdd766625023100bd48b4e465316cd5df3a86b84dc683de66a374b801ff8a6cb87e7b0da5601e4ef9012eafeeb2af45dcff8d096b3d311e0302047c435bb500683066023100c372b996e330fee6ff4a1bfa7cf8bf6c9e46ea6b1b739caf19e25ec990cdaeb173aabd8beb292c3560e7f524568b6244023100e8d4bd100a7f62766077abd68efe285b4f6c00ac5f272cf6c45f373622a9521f27f4865b9b94e817410670310fb4e2ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b280af03c8ed8a2279464668c6a4bbb26e446c99530a83188c42a6ba2e87b4defa83688470070097600e0fd8d9f4d6810230456ffa42c07e65250b77f90d6757b3a754271bb843b946c93f524445e88dadf99271c0f718b5503e7c63242bff3b0d9c0302047c435bb500673065023014a0589fe959b8bec6e218aa8ad0d46aefc445422b3ee6825f523dbddf5368a976a0254b2a016018ffccccf1a9681a3f023100923df4cdc1d7b40bf2e20f064f3fac097f167b0a94dec247549f2ed47bced006c4b6955e320151e49dac2a70482ac89c0302047c435bb5006730650230470646dd9e70eb218db7a76ff2fe3332af3b0f8f00c3850d9eb767d7bd609b43c66b1dbeac8a5dfadf745db42b3a7c5f023100bd0474fd90a3b69bd6918955a7fc556b556bbfaadfed32737f528f141a2cfaf16060574f4ea683babf93bc1c05a0ae9b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f8a8673f8ce7710dc04a720b434f803e35f6c17d40c09ddba89ab34415cd2bdb2f50600fd9fc6b1c956657bce50159770231008018b75af229d931b5028b232a468447562415dd90127378fe9e8641a74f3d41c6343badf38e967c2d1e658396b8ce4d0302047c435bb5006630640230432e896f71021c89cff9f87de80b9acfa86717acb277aaa085e1eec04b67a68c12832cc8486f37b7e52e33ed290fed2f023020c7a56d6e6dac88daf406936429a36393a07c88f691e43768cff2622e1c90ebcc4b0a3cc5a825227bf1c281821fc70a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300edde5172ba012e57d94599ef1da14fd62ac9c584d92ae9f6b0e0a53e79e4ccd8f59b0226b56c9ed65895aea0229454d02305ec0ffbd0d680d3377092ddba2853ae022d6ca26e6814fcf026af3e6c0974eb47d5240a9a48935258edb1ee9b60f7b7e0302047c435bb500673065023100c0930452cf3aea70be3a70476d70e3b9b088f711374b338ad72884df1a9c05e0c911fad2da6ebee5e6204fdca7a9166e0230719d50835e91b569d650906649daf1f1d81d7a86821963d8914e1e1693cd01dd3d1b15980230284e320d77a90605de7c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009362c6939664303965d0851de4e9c69c199a40aac09ce7e490abd78d53f5f3ae4eaa9a597ee96d8511773f923dc4eefd023100c9e67569f607969d6d44a734a94b32a964deae54cbf2d38384a828f27b7d139b24ab48e9390002b854275db5381103730302047c435bb50067306502301f0017173fe337e7e168f892596edaee4566eb0c4c52a87da73ebd321837c177ffb521a1fb6bbf3bcec18817d1e229a4023100e639da3763c67752de37c186b6f6bbe530dec10fcbfd59a3bf84ea6fbd57efdfbb767385e7cfb5fd4961a4734034240b0302047c435bb500683066023100a3785b68b2e9f74f2446ee9a65a4de42c21ebf537c76b6f2a4bc63ad24a71617be7134709da6e9cfa36969902ab5fa2902310097300af660f71cb59c2c37db50d5f2f00371bdff98796dfd68e9c9c0fc3661d266c90af0a60bd04532a0f7a7f0d652c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100825b69a3a66f39347bba1dcbe910997941cfe2ee5c34c9db91c844080c77e45d534401a8b057fe3477dbfd6c03062793023100ee4968574e88dcd3c6aa42e5323fd559ff0160b45bfc641dd017909042eedfb365de2163577d20d42296f787e75e0ba90302047c435bb50067306502304263a1c484a5fe118389a0d32c2b7ed9f60f6697014515ed4f0c3dcac971e4636c6f02974ad74a368817a1e6e050ad9b023100c74267a12779eb8f72ce9f1ad375a20e5362995f6d61d0ea409acfb6013823206c2f0162496ce3570a1404cd478574b50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301e6db15892f6bbcff1acb9fe58881dbfec95cdf385c0f501048a9441fe7ad0aaaa9e363ff1e2fd8718fdd262c1a33c5f023033d78fbd24e8cab7d98353cb7a54af08c5a6f324a589365659004c08a64a10ba75286b586500bde3e5a0b6ffba0ab50c0302047c435bb5006630640230176b99b373f80361be92621c93070e96c5abf8366aa98438c198234e1e2bde0bb7bd8c0f57f39f314855fe200034fb5e023009ebf1f7aa4bd64ed48b07a17aace53c345651268d2ced70cc3d70e4f9a9f61a5b2408d9a3723ca54b854ce1685666920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cfb3032f510c265662d6ddd5d8432d5cb1e4494e01716e7aeaeecf8b502e62075523f525ceeab3f04633570c04a3e4b6023100a7d61b0844b287f2651286cc5f66cfb0b377a18bbf8d5b3413bb1dd68ef46d3a2adf77c361cf04de77ef2e6001e9dbb10302047c435bb500673065023100ff16fe84319159680f6c1d5afb1caacd4b02efb7b2753d2458fa2cd97dfa927bb2124a6d4bb07b745e7383560ebcab9c023049046dc863efa94ffa89f887243f0e1f6e6e3dc4c0af2d6110c746c578c5e77cd301cf2b956c8594503390fae2ea4dd20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023025f0f6d95df141469dc8dbc87b8d6a62f9e5bbc2b349b247671fc27cf24b06026bc424c1b9b62f6ead0ade99bd31976002310088a21edea45bc1c9b49355e0488006e172f33cfd24d857a060f8a6e33886f6acfd41bc7f0c536c1a493f7df4a055434a0302047c435bb500673065023100ae0a5caecb9fce7888d6833947d850d321e2632ad9642146cf873e0200e7fe7552acdf594fc15f6c0ecbc827c9209d3a02303c3d7cb3109302e295ee5a800f96afe1c4d74ac13d37fe9957cba9404893aae13e85c4e3b3fd4b8f52f1002a495d1f9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300204571d8114d2ec9848b43e0a7b691ef9319008b7e9d76f3f766435056a3debe7cfd8a5a781e4c2380ad2e287b0284d0231008c5eea8b98f324aa3d437b9ab61ab8a586da20874d43c7cec554362eabbe86112a7d4fa151ae3d0eac39b95bad2c8e9a0302047c435bb500683066023100a68531bc4b18961743d84779ccca0a8ec793baa244f38d999c3bbe5f8322567f70454940c5003ebe9fae4f632e521cb7023100bae2f9ff0358eb0d4311acf86fb95a0078ba89fe1f538c8858b0e6dc3e059895a6a1788d3cab3308cb6eede2717e03c30302047c435bb500673065023100cfbe5596a07c35094f4be00546e7cb15134a0b620979a4977d886398dbf51c390f913bd9e4c42952f28db58eda89ad4c02305c3261f2e8e215066c914e3d9c8cf20dbaf52caff5f61a342e9e2778b078f320a19fe1ce2458278d226674a6e18e48930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008107dfbd06fb56d8a77aa336d86498625eebc307fc56ee65f0d1a649808ffe597b23f0fa91a61cdd0bd72ff80b3af0cc023100a6b37ba66e622b9eea8004e3720ffaf9384776153cc7d3eb2157ecbdbdb2f140995ff56be93718efee30f2794a7ea1e90302047c435bb500673065023065c4b022438891cb51d26b64afcc12d880ce2302e8db23ba77ad6c60a8301c08c8b97e1073e7dbd77e81ed9b68208ebd023100e64cbaec12667045d430acdcf3628609772b086aa9d51292665800d15da8f9d79025d48de1ebee939d758b50f99a9de30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e78b3cde866dcc0a44c9679151b93cc9b4ce16aeeec0e1e0e2178125e845fef093cc744f43f556e8b3f4963e5a50f0ec02303c0823f13ea1fb34d9b2f1577d4e9c8dd600aadad1d9f27cbe79e4a337069333f919ddc27e440185df3fbe7b204c8e300302047c435bb500673065023100a1f434eda6bbc0c8a6a6d2e55fcf41ef827aaf424f41516b8195978d746e846c80f9c6f2508c323ff65676624f7dde7702301788492460f044012881f6efd4ccceb1bda118935a81b8f0ad32fd88c6509bdf99adf3504eeb246a190aa739ba1cf7b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023031de83361e160ad261b8713cb4ef6baea04d01e7b7acac89576e7f04eceb1b125da45b4aa30423748e9ba0b4b2c3855d023044ad347876ea9f165c97f6b0f16e2af4cc064ce4261dae1c8b13e7bba5b17e5f623a6b1406819d1e2d5cb95fa4a20f2e0302047c435bb50067306502302fff36bd471e6e81332616e12db58e0b04327783bc1c834acb437edb0fb1394223a93c1d9eb5445676dfa44c375280c1023100ee408e64ca5e3de9eb19961dc150e78a00d2d463c28b35e5f2c15819914b82404ad77b2b435fc582abc8a2230416c7170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009949c3b96dd4674cb55d77a2eb35ff06521f97686a55c4b998fb6786445508657d0c1187622ec38734d49eda2578c1780231009668a08ba4b7f8edcc9155c3ae3c17b2ec8ff440c6fe8ee6daca35353b2800dec3cbdbd332029b7b38e64ae43033da980302047c435bb50067306502310094a4fa1ab5ab9be2d6780ab6ca0f2832f38b8362d20a47b837d3dc6e6d1462b40b77a69ba02f86db25434688f86294fe02300e14ae0d54e8489751838ff6d1530ddb064231222be86639eab2a1b2e9a8c5fc1cdc144736c6fa1d1519b0b83fe7578c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091215056f26d4705249a373959d67979e90b3b3eb03a7a54a053a8def6eb8913c5a312fb9290ceebc86acdb0189a6e88023100e0b44aa0b529096ffe4af50d58f24ae46a008cce25078c11b4ad954172814ad74ae8096c81860cabf6a6db8e1a39e9e80302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023071a56fbb1568e58620f8dd4be1963e38fae43bde542d0ce10e0bd2b16b929a5523b48f580a7ae14eab96232a16151990023100d4e2484d7ff3b25603f212b1f3e6c84ada515f1da23a081dc6df2a76284f19ea39a5c1b2bfa97bce9319601a3a29c0e40302047c435bb50067306502302aff28566e4ebd440a882200d12cb64a34127c80695439da9e46df14db5a141629f9e7f695ea32cb4eeeca22713b4558023100d8e3f7f3382a0e640f36d77fae822f2d8e265601717d88b271d5aa5efc84f29f57c42f1cc09a38801566c6844ca4a4e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307f687f1221493034a5a0fd3d668f45080fd44f0fb76e00a789ebe42d6e7149c80024656e0dc829f0aed5f46d6faa1f9a023100c4f92791be0660aa6cbcb9a47e760d9501df8e0a28ca22e21b2995bfa509b88a327fd3381e735d8b4af5384466fc9b4c0302047c435bb500673065023100883008c91a1dba0dd7cebbf4d0bba57b2d0149281868fa09e01a7c5b8f6606ad2ac94dabe5df3fc27ac9d87ee321c8ae02304fdd5cb3ce2fb3bac45c246d1013563408bb7d6090ff14baaa85e435a585c578ad7dbf9e0750cf1177f1308e3b5a6e550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301aec50f4a19e9935f8a0e224fae77b2058ce58c6427a7ae4b0d937d0a5df6c45d0ee7b3689d8c0dbefd7e81a3205ce3c0230273bd5917ff0a482572266d4f058a11b485ca65da28c2fd0ad1f23ed9d3c157eaf7977402146b5bd2512e8fbc331b0570302047c435bb500663064023066c9ee391348e1df7f7df1e95c5c75f5b20163616d30b39ef601223e8c85207c93e2b02a463a3a7b50537eb75187ae2a02301d250769b24de6a3bf1aac94608cf662e22d2e24e14283cad0ab1d9fdd6714fa6ebe8a9194d733fb3bdd7a1520bc685f0302047c435bb500673065023100cfbe5596a07c35094f4be00546e7cb15134a0b620979a4977d886398dbf51c390f913bd9e4c42952f28db58eda89ad4c02305c3261f2e8e215066c914e3d9c8cf20dbaf52caff5f61a342e9e2778b078f320a19fe1ce2458278d226674a6e18e48930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f98bafa2cfffaddcde1f3fd05ff7fd8ca3aa3d9470c795b33adb7c5f0a441c59d2c5e7f079dd5b88975283adb339a62b023100d19af3b44550fd591c04be5991b59b3710bb8d524d1cfcecf08e126ab1f142995dec57a3fe46fb6454b95f8325809d650302047c435bb500673065023002f4ff1e5133eae21de1b46c2819970d17c9626463ac743f3a7d387cbebe260838d65117e507e16a66c0c70f64d6ae05023100b30af98ee73cdfc0ec857123d10d144e15cb9dbbffcb2d2ca940abecf5ac65909ea9f32d0922421daef785194ac68fde0302047c435bb500663064023062d532f441372809d44214b8152570b464d957e29f5addf24a96480e0069d57d0ce0ff2309886800cf85f903a2523cfe02306c834a841913533633169153329650b484fd719b631653e29d104593b3e9f30202424c9efd128e3d75743979b3eaeae90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023005229eb25b2147d8469c59e533e88930832c864dc65f29762ea0b3b7510907e17fd3acfcaeb9eabc3eeed69a794fec95023100d7bc9230045e3a9d758609ef59db25601deab5fd1947bd0d9a8b10794063d3968f18abf5a1eaf99a3be28e929dd759020302047c435bb500673065023100b5fc0cb8c77453c231efc73c4db6ff848d4f188c822d0c1283dcc3712c6a7d1d3fbb3df4c7bed7645b36baf68a003d1b02301c15aa7286ef2862d5e1169259dc9984156ee4a235ca0708a9b7ad48089c7161961ce9d7c90b018ca4264afd5d4849d40302047c435bb500683066023100d8cbd11fe18785cd05e3a871cde2cc7925d09f832f2c4aeaf26ab59c2d9097daf1396dbd74a9cfb3342762083f360e750231009dcd3b0a9d1f5d5f308a09e63bf8c4c5d8aca7689eaa63187784d03e639fe470a2d2b5cb80c6715b76a99a7cc70c8f100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023062680c3e2488dbc83e384901275b41bfa520201ea12bf20179b7d89b377588c66b50c7545d1a05c3e051c846dcb1b3d9023005426f7303b10fa87b52f93b7ca510dd1fa604daa03d6032150644bc8c229ac436d3dab70c977dbce50e9b2ece90de460302047c435bb500673065023037f9ddb20147db544cbed492bb8235c20ae49cbdb9905017b3ad5663a754a6385ed27c59c43ca7d903bccde9fc64b969023100ce34b69749f1d78c70d2595377fdaf010490e0b7acc2b770aaeb288cf91323ec20bc0d01b3e89d7bf58f1d2386da5c850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dee9da9d3ec65795013594844b59bd0057d0a4a05cbb5728c393634db593d54f53a8d195b489c395cb079a62ca585047023100b5225a72c68c847f81899bddcb17102c6fc34516d1cb44146586a324ed5ea8b43b7d5ec01d274621966cdc6c3a3218620302047c435bb500683066023100f1ea6a4dcf6bee475793bcab3b4d79968764238939d4c8bf7771f218e6ffccd80cfaf858ee23bed1720c0f372bc35ede023100b554aa84cd9933db2ca64c3fa5c7d77761937a00d9ed546cc63ed08d576dd50d00c0dab228853f8cc855459aa37989510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dd47643ea1b4d375ac9434ae13ec6d895c8bf29fe80ab7a755bd96504ee6b1ccdde0c2c54b5cb8261b3d874df46a87da023100cb8f94e6a7125c2f93a230370c085b8ef89581197b663019a161be144f6bf777519f87820076bc6bc2c9d6a1a71323ae0302047c435bb50068306602310098f7855cb7b1e80964584749135a0526e388c0fe41538f594342bff7bbe7c2df755069b9e9488cb794d42a0add8fc84a02310099aef61ff33f7263f342f3139ffd60dfe3f66a241aca74f12c9bb97eb8774eea148784033175cdd3e2444fa3cb43c67b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a175e124162a9c812ae51e3391a3f60b585eee59bc861f43c09a3ccf1e05e265b1a7fe53c21576bc5215fcbe0d8ffb1e023100c14eb4684334edad94284eb1ff07983c36f6f6818968e8ac47cf4ad3123cbc722f782c6f6b1f06428887e2a852d812700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a37d5d0de92183267e5df9816a3c149a2b3caab37db526836220a8e29209c873e96502b9f2fb3748f9f71506c0ef8c9502304997e41bf84afc1860728840d4e291d4d7bdefae9af1c9f994322720666031d90a1effae9a5555dcb6aecb631c8efa9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f41e311e74f9e4b179e17bd12d7158635476563b69dedb634074d2e45b057fb9b93e58a9548915f62e52785d4acccfbe023100d653e8426b071a318409bd1bf2dd692da04e69a92180e3f66602521f6f5b168cb646cf59eefe9fafff3e2b1ae23721260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023000b7a572b4b4c0fe3d9baf8752229d843d3485fb82b618d44e9264ec8976a18386ac6fffa46e33d013b165fca784ae35023100a17181d159fe328e4307774ba6faabf15c4e0046ae5ad4d3e47b69a11ac6c102b6c67576be90e144f9695f76761a2f930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fae0291befdeb2fef772adba79d62a2c9b9bd596bfce45fc8702d3a342df0a71bfa999b646fd5d3d349b2f69386244dd023100c4d94f591d495cbbf034b364e697e8e94ccd1591961e045395d0aad751ad67bc04acb01c9e6a784c04e1f4b4ff53a8de0302047c435bb500683066023100e49088b265f3e7785f37935b0528ce3efd5a63b51dc90d97866b4b14cf0af2ffdefcc113057371875d70ac4a951a5d2d0231008b24298a3bbcd7010d513126a2d10d296cf2849fbeb4c88cc4a900bcd8ff9086a0272329a8b8a69abbcff69708f7e2a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086e626becb8fa6f13f49ba0c052c30cfde36cba7ef205003703f874ca1264dcaf149de7d2e91e3367e91a3b57c9fc6a80231008fa9e0e6f0a256cf1995fc979846e44ef53f9cfe45328e2f0aa5d94c8fbe0f2c18fa54977893b77fbca0d7b2264f925d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100813cc15dd83471cbcde20fb474c1def9edd83226203abc06ad43a9e503240b4b2bf3ae7f145d6081224789c5b3bf590e023033184a267835edd9b86015332b750a0ff29ff4903af1c5fdc550e74d68fc2813b78ed4a8440bf2e77e3ed01aefefe0f50302047c435bb500663064023070627c8d3124213bfdcd4cfd45263329405df8d74df7f0197fd40bacf93e456a373a5a9fe8e20c7926f076e37ca0357a023016cb426e93e5ef989c697335cb1ab88b71f3e73088fd368b8f7c60678904db96aae4a35265e6d48ce46e4520fd2025d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230722d9f222ed63dd83594882ebd210fd464c7ae14d1c306365de6219648216526923b6c13a36f83a8f841ebb33e6c541402303a27b37eb46461fee33191e1720be256f44c2859222e173d29d513beac119e3991add1a9f79f2bcc010a944628698c8b0302047c435bb50068306602310089a22f4a292e701714a643901b607ab4f9863400b72565990701c8edf1ea8c22fd07e43860d645ff337c054f7c5f3aa3023100fea9bf3d3cbc58eb1e54e8193513b58db9f7034ba833efd64dc00637681f2a28e094446456dc1e787c43092dddd8c1630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023018cf31968b02ab713b7923c487f86643b197f2efa21ff1918c30388d8f2019a3a8d7611e52cefb865e1ae7d10832eb7d0230500c582de6d292c2961fc1229739a08b41b53e8133ef2f748cadf169b260b39cc0118b2cbf00dccdbd2c0b2017b0f6c90302047c435bb500683066023100f69b1a54ff9e36f8359380403fa5f67366f1fda46b4f8e5eb8dc6a3919c0ad6d6aecf1734be31fb659f147802fd8aae0023100ee648908d59f39a3648cd9f67de4b81d28a9f101fd9abb22e86074b045e0e3189d1b3eea0ef8d41ba2f290147c8eafae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f22b07c67c85338f210c13e54e29b86053eb0eedb99312487f0c2cb082703ef686a6e69104212cf93b95bd03c2c7b22c023100b475634aa00d8cf9c73b6492fc79d9ee4f938fb795d8c6564cc889a32ba9f5d2223289d8ffaf711c68f7d6a470a6d3cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230061ebc5d4ee15fd8abc14f3bf0063ba2f12b547002b461e293f3e86fce1344b7f8c868ed1b983a9a28cf3a1ec5037cf2023007b8a6449b3423cadec0dd050745eb1bc8577fdabffee8344693c01aa1a6dbdefecdad42cd449d8bbdac2cf9571140860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301b6e24e592ac10e97c2aea110fce0503774f9384eed98d2e38e6553c5b4d716e7ac4cc2b6619e8915a8d444e16bc882702305a24e4557c0bfd27016a911c901f2a87af7887ae6a68158b8c4f96396f14a1340d44b1a6d1f0bc998b305dc87d95cd080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302a79ef835241e668d25ebee09fac270d7df47e5e9c386d37329418d39c9d72fbb2c9af8d400c3d3c3bf180409107d33e02303e5bf3291e3334e4053b0f44a4e7f7910f0d5f6a9dde34a5c9772fa78dd9f8dbcac3e01593843dc8fa2edddad3b5a3f90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a6f5d2a3b9b77f0535c91cb78d6caf1753186833bd8eba1687f4bc09139073a4ac3de207c90720aaa18cc2bc3cc9a2820231009bc017ab68c20795f479c82d4c1fb54aa6dc9a70a4330441b817bc54d6c6dcbf73c0bcd30ace4cdf1e0cc7bef95ca6d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023023a7e2197ba711483f97c984dc534e0484eab7bea8fe953bd8336501dd63a0b7908e821fc9d80d5477c4ed12c36ae1180231009c08d1b34a2c242bed9b5383893ffc93cd76543e5c8c95b21716045e32045a7c6b28f6de0990252cb954d6ffb76f28c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306752708c78529067f7449ca9ce59bea2ebfaf4dc6b65b08ab91c2277ca9bd9ba74057d58f14a69cb5c30b01c48073fe00230467c31fde23d2f7b334d83b02920ce12a34ff8ad933feabb873929136523c7e4c343909fad51f4b7870b99cdee283f430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230719c3bff8e0b75a7511c6116fdaaabb702f87a6401c7dd5a0007022f14d0224442ce0b088d6ec2dddc233387b7f8061a023100eb4dd9421921a8a0b8915d3b530a423ef7cd9b5daeb8df7bac47ea5035cfc573b8fd5b8adfccdbefdc1dfedc209c0abf0302047c435bb50066306402302942523c3c26811a5c05203663b1413ad64703f63608ba4d5d999e4bcaced02b4423348ea43f38ccacfc41b0cb08a99202307ba741506af7aff5d251f82f7451309ca2178a7d5397f8582cca6dc2d808f310d59f148948ca285906a7ab79e99f00720302047c435bb50066306402303ad8c4acc18eab47f4c67e716bbbd8649bf9476f54ade2ca978fe3f615f441ae4dbc5101dea48185e99502796a38420f02305681f58704fdf97d2fff318a9225e51a5fd3ca9c6eaacfd515b171110c886326281c955fecf9d25a08cdf1d9266107e00302047c435bb50067306502306ad97ff6a2875e7113752a45985089a7a9d82c0387913aba9ce5cf33193e652cbd2dda50c80ca45afb8412de3c0507510231008de0fa08300de91a5c7050b56b9a09ed8dacccb8ed3d4cec413650a381c9f86f6aea2a3a8f6ae7fd7269cd6c4dc900300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310094db988638578419adad5a451935fc6e4609869d65b937e692cedeb6592f16b700f2ee4b9136897d373d84e35faa366f023067e04ca8f1374cdfc3cce2213d5509ac6488767a4fcb7718995580f49faad11b68938e7d6d3d083c77883f1de5e9eea40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a1997d52eb680c2be72c35d047c22eb895f12f358a4a851e2426b2ddf930f0936e58f46ab26fda282f759d2989f7c050230689f0bf062871928f57bdf6b4a4fdf062d51d93791cf485cf7ab26d0d7e250d7015292d2a2fa0eca634a5634f7a7a3d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100de2a6e2ff405b869e4f124be99f7f8428f056e4bfd680e48331e5b6d8e47aab47610421fd07aaf7298f17d27eaf35044023100c927bdd559a5ca497b04f31ad00c659c69bfbd24cbb96f7c898219b45224d35a11cf922fee7064947b6b001b3dd832e30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ccb3535061b859785b03f327ac7c9bca58c9727956631da0bcb0296055e01df2739daac75bb4fb390b7f7c9c006135da0230419aa9657318c7fb0da504a476a2d22da10e44dfb814f66f72437485c982f5a898127b0684765659b3656421fe5ac8030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023029b139551b1fb8357d1e3c33b229979329571efcf2a4800c56b5ce29b188706e5dbe36823b5b471f81cc1a38bc8dd73602301c1b6e2d301423a8837bd6ea657cfcc20f0aa7a32cb4c2816bd1915c063f6b1d0a6bfc6e381c56988f993e8421d837550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009e60437e3b5c0261a11b657fc92441f382218b03062d9575d54d9b950b5956c3cd25170c654d59089992d9387becd63b023100c6f56e956d0390f38244fb9468b97a6bcca0778468197695331a9b5408802b3ec0c1623a65517a8b845504c38052fa780302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dd201b7ee17e256bbab6abf18d1f5aa5136e644ad28b1881216acf963b3c323eff5e1507cdabe0c1fa364ec42e21964e023044c79312da409c183fa7a2423ea1cf86beba10dd94d6ed25f2ffcc44d8c7f3718daddb4ff1a47513c85f14608e77eaf60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023040488c9bde98e7f0e9ce8f8cfe4ec67ea9032536787803598b518130965c7496a0118ca81047522d47286d543533eb3f0230523575b2409c8450ffe9525bd05c27a982d97f3901aed8bd153363b96166d44e1849fc6946702ac7eb265dc6d7c41c530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310085d1eedacde4beacf6d31969b0b2c88cf6d1b519632b03e2e9abf595d70ce3c87b1fd8ae1c29f3d7682a232e415e53b3023100bee3ab9af095b22236a690caba31ef683e0ee47c4a90c6cf1c73aaf6ad3d82a672ea910f3b0ddb31ceb14534f83a13ab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023053d905f9aaed75908ce723fe851489a4f1b5055afba720c4a71935635fc49f6aa1bb0288ad6c07ed6d8f3c863df476b3023100ac9616e9a09dee1b0d137c8f80736396ecc32b2b11e4ac88aa98fa60954ca552709ae6265642ee24826639a79d57281b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306218ecd5b9387bee6f364b9f1519f296324ae3c628ab6595fb76f183a67effed16fc08606e66084da712583f905fde7c02303683f30d6b99c0cbfb7dba0475c7cb37bacb8433e490d34289bb31de9cd928e4990319664339763431c87a2bf03dfc1b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f045a425b8c889a35903d64f46c7aefadb8eb40ca74653b95bde1ec8a24bc21e6a6dc5ac0d8a59d540c008bd86087caa02303f59bc12f72a2531d879f6b8d366d57caba4111d612ca13c6a641c4b506e01602f61de7974bf9c14a7ee8787fdd2b99a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230147492ef60d68515aaa9a0cf00bc10eff7dcc8e003766269b75532dbf6b38967c2c438fc5cb51d717de6cf6289d1ee58023100e342117cfb47527e9f1baba43d37284c348179e03b712e6613a8c31f195ec65796bfa38aaf9d5e749998747e7e103f290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301b44ad5a49967a8b317efc928e629bfa851dcdc4567ba70ad6abc22b12e4da4df7b1bbcd2754fd23d827b424a8882148023100b26a3316a9d7b16bc895f7d9760a2fda66349f5e5748f34b377f264ee2071748754fd5baa230a041b079d0644ce4c2f10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fdc9b7900f9270d98038660dc6e5f7a40e20065522c5cca47afc868bb340efe6018680114f904821c97195f23ecef6ff023100f3fdd39a26a66ffcfc233403e1f03e6ae298c5575b5508ad185cf9f220e964e7a48b4eab14f12c271b70daea89ccb2910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300f5a44b79cd83571afab63cdd0691fcf2452fb7633481fcd4912f147566ad37d36e1ff07a5e5300689ff6b8fa967271c023100d67e85003a9b6e4f47eafca697bef9e73288cc36e0e2334d041538673b4711a59e6342d284797af0e7d78ab0568b676d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307db62280a73d64adaf618abac0dd20379eb18fc680566a2c5a13b1bc9397a4c0db2368cb64719999afb85b5c8a49faa8023054358922f968b345d56bd19253a6e0d04294b6e9a48c6878036a0933adbc4ab18653adf19be684bf420a5b9c398288730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100939c7629ce58543fad8a6531c6413b8098250cc8b2413aa8b3ea75ec12d12c7b0bb3443c55599a60fdf10ddd9abcaf0f0230277ed10392a79b68c5743a9b4221dc4498ec8982b258c898848652795f716e4212e219cab4ba338db0b6a48d53bf10070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100875c053b78ac5879b1650b472de892fc58f97873621fe7b729832a5b957f0f225fb14ae36b9e559cc6659733e4b9956d0230619e29ad1087c3b284b0b8616ac70bf9bcd0743b909b4879bd749a7564d1d3fda91e135eceabd09d1340348606626b7e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230659e0fbadea2b81afd6a191218f9a92f0e4f974133b25b179f28f1e490ae89f0f4e840cf67870aff1436156e4a6b62f3023100a24adecc79e0d08dff14193bede9bb5c8396872e349134fdc67a030b2b0090818ad44929d52e7a411a4d8bf0e7ae9f400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300808a4e81157e303076f6f7afa14fe460c67594f9f353de3d6413edbf8d8a2675592c4779b2960066380bed29d1aae6d023033eaba778bb8e99724fd795f790faf9999282b7ef595ef1a11e8082f3abefe4bf1eadc580e8ad22e22968b0b37478d440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b60f5191ddb0797460cbb5dd1226ca038a9c7e7a6869ceab6f4e56c839cfd5c8e059c1eec63fdf78380816929f5563c202307cfd049338d2473843818430023c7815b962b521641800e57c25a55c5bcf0d5fefc8d092c2f61d4453707afa33f371de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e34fd7110093dc4f904e86535e0bb9a80ecd90b488862d0152ea4f6f8e848105a613402d6187caa512b4b84dacc62317023100a8b65fa3fe9634fcbcb8934d3d24d3355be66d3e687ea43fbf7ba5ac0efd021f6fad4f485fee79b77b50487d42f59af60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ebbc539ca19cb065a52fae67b29c8fa7f4f58c34268d4eb6d584298b7812ec7be3302a6c049a768d6695fe995048fa12023100ab02925c9ca12e42cd90717460674e16e37a8babef9473005aaa22bc307c7de7198ce91c4540a4983f6776a64e90c53e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230192c90689bc0c18221859eecf9ac9487a60c0c33063b8c3acc02fbafd317cd38b04fb2065b23cd67715da5da884f2019023100a06bfaca9c277aa7f7b9dca252d28ba92e117f6a7c885219a83a696c444c4837c4c6dfa1cf4f9e7e8c0d558c1de53e520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306e885ba7b9a1db42481a527ec195ce25aab0e33762ec5cb75c0e7a70e6dbbd31f89daf0af7a10f74d481b65828a4776202310083e7d6f22a4f951929e6b6bdc80da759517bb7787a2d026013d51b2fade802e29517157f8099b49b130882a012ec5e060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023017bbf1c5de92e1debdf352890b173c6538bc92b056d6bb5937523d602f484d4a0c4fe129285662c7179676714830fdcd02306702c999b7743e17ad58fec4c4b5675a244baba4c3799816ddca9f2897996fa6e68f50d3087c5339cd8476cdb59011450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cfc44a96b39452fb622f9c5564a35c013430abd05705dabbe26dabff2ecf294ab6667d563de3747fd6e80533d300decc02307c87b36e0cd0023745715ea5333f22416a8a32140017492cc961fc8194a44077ae62be30df068afded64ff07a42d72660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307a0c1b90a501879ce4f9c9cc6ad0f2c8d5c40661ae6bfa279203f7160df4fbc04a7456610d2d0d721f3887962b0839f6023100f83a57c18147eabfb7646bd8efc7576d9a7ea6f157ad4b818cd94053809d1d18e6c60bfb8578eb7caa1ab793699010640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e406d14ae0f3798fb12c03b5246c7ea5be5500a5bb505b7442653a8c9bf7a4f8d04f8be1df9e69bcbe1a055796322bd02310084f05b62f92ac71604316fc3ff6861bc72cdfe02462a916c4d7d6b0b83ab35165132c806fc7ebf3b34574f9e8652e3290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023055911541785bf26f57ab4b56d7dcdb92c16cdbb7cd66e7c0cb775db1b928542fdcd97275f920e19de0605e0fbb9abc0f023100b9c76d0b30906d1fc982c1652471724a191f024f4c87d2cd707622944bc4a7165a6a59aeb06daaf0025d7ffb286c86810302047c435bb5006830660231009afd1954a660e0d44f461e7d229375bfd1cb95588c54fdfbe6fcb71719a1731ff5b4ed5ba7cf99a19d40c7fd717412e5023100948834a51019b951e4cf7eb312b26fa2e988cea9a38214c2be8f4a605f9cd92b0302354fe53aa2797ced1b47a74725ce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e02bb46ae3bc037352ab0770f8de0c1788a10473b66003ccf81921957b04e9ff56a71043b6753730d9d0ec9071e77920231008fe284607f332664e9c3aa2f4a65c18247c802941e87bf4659dfb8cfca046ccb8c17b84e00e247c01a25a9a8facfba530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305751449c0f77b08d420b8519515dc3e32e9d52224c0f0fc9d71e1f33c7926823a8c3a1e0202186d2a8af35191eff66c1023100c1b15e1b6ba477d84be1dedb2382d3f85460e00e220ab463fd1a3fbcbc88ec8f5b4ee1282d59b3d6391902b973ff84dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a539dfb3b3f11dc3c7ce996b95b659cb49b36f832c0ae54b1bddc24f0ce44ee5bb77f468c74880e306f4e527443b99b10230424995c31fbe225e75ab6b9cf4bb525eef9aa2c33ae671a54a9763696c5d9e706d3ed880cab6b043193b98673c8b5d620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310085ea3410a27f85bca4caf879fe4c4f02fbff5776971dd57eb9d538d6a74c896734e4ebb0bde525712193c2412d0f0df1023100ef94b4992c746ea3c2b3d8f8b1da513414d6ac89fd033a36798045789620aa90c736b8cd150af24b76dd05f116f174ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023075e9557cec46d40edf7bf0bdbf255f86ae33e121943a4ad78f46f0e445ee1180e1e0421fc8769719e21ee7a2a55966530231008972a1e470dd462fbc1b4a4f6db88379d13bfe1edea87beb6192779f0abf3fa6655320b27e100ef63e82451a0502ddc20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fa10a1092c006f51476b7710852b9808a252252af654ec402ca0ce34dda92f1902ca140c4c3d7933898717a700bf220602301d08b3584a35c649a8c0d98b68cdbe811902d8559b977bf96162ad182ba1b73958c749f16af77914cb049d571db1a2620302047c435bb500673065023100d6218794d86c5932d929f6c4fd94b2767ebb897a02c2487249dd68b4e393a4ee23b4283267ce03853a156291e2262ee0023057db0fe3358fc523a62a53a6bf030d4dec30ef5d46ecccbf8d5e8a4f23e241609b40a04e3f7b073baf0563b7df5010c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f21d293a8c1eacc7e8693a19742a04a31032f7520899fc38caa2fd1b6b17bf56bb218a4e905329b217140fe491445fcc023079dfc44d217fb3ab2a95234c379886bb006f8433f4b2dc3c7fc3253e9a624af038c4443ab746f4d4b1e57a733b5fb3ee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a6e02dcd22070c8fa7759ec561731683b67861e57395111305a9bec34f0560aeb644c79f7c7eb257a7798bb2558be4fa023100bd5748b3f15577b125c25870e6cf856eeb6a340cbd6c7f33fc49c22b6a97af6fd0c12a5bf9a86fc351881ecf521b32660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100db032dab9b8ee9d87f0a8591e471c5eb1f48d5ddb6d11befd38b971d45c76e984b55cc7e9951efee38cd7ae36b916f7702307eedebd9ea31079ab496f34a2a484ad4d3502b32ca27589a6803715309f16e3dea1db1d7a610f355bfcda842ed54c6390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100be0709e0a476ab8b32999f0f0728119d682479b6327245ab11004df1a00c6ee60f60638cc994bf187c6246feaefaa3d8023100e2c3418ddbf364e1cb11a74a470190c3e0aa537b2e498160e4521265a3ceed54b04c5d567a5ac8c00786681f20340b810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023046c3432345e1f2f38eabca26729ca487b34578f551b5823844394dfec7fcd8a9de4311e99f3404001222f179f0725e2d023005ef4482b67a6a2fa3804be514a81ba620790619aa0cacc042318e89c13959015a92dc8ace7928b46f232cea677f38980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230771aa55cc6c38c82a8f745e6d06bb15381fb44c2ad47d10db03c0dc26608ffb1b67427521328dc8a190c72c9a4e66f1d023100d997411a1f9ac24ed84aacf07930ca1acced424732dd863bbe23f8d9c48ae9e0dee9252cc3e5161f0a0cfb93f5b9609a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300e61949c3f693257d134a99bcfc6bff2b0de8fd4246f8865c093514b1d5b3a87e7aea0822b7b25883d5de9c7394914c7023100adf9a9934dd6e70d573e7f8d4da9aa75f51a78182b147f1507671f9f42ce5a2ba1cca1dced9fe826ebc72ec4b27013450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300b0f30b4bcdfd15ce90cd9878084d54c1b4055a9eb710794fe1eeb69c9496d81ca5f640b3e8bc6a73329e36280264190023100a841ce4eab93507697fe4df009afb3dd91be6f318b1f988950b8d451bac1ab93d8ce8fde9c8ac6bf04882727ee251fee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230682e9ffc80648783ee8e89a3d339783470a9546836dd9551792d307dfba68b963936163b8447f11e457437b84711b05e02310081ac6bb256f0448cacfc4660e7c5f96eb51f858b21c62d34bac6185f600c824003566ff85cecef09199d38733b8a66870302047c435bb500673065023100a6dc6270b95d2492ad85d2ec6c84b5ccdf5c85a77769fb9b061e3a66dc61517f74321736bb9ecf4c1acf8e296d67662502307a337ee1297f8b4f8522fc3b4979440a1d46e133372f0e73a553407f135e83ab7010a9fe17f5aff2c0c0718ec27c4ab20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306d0799a43c3dcdc95fb155037ad962ee09e475772e469e3bf7cac8c7559e6f7d77917302400fdb300ead7d87d7bfb181023100cba1567989f5fbe4d48df946dab901b42f0da432ac9616b5253da25b143f319865f13292677e614ab6f97f52cced282e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c57bd3a4b7c83e9dc0df36071d2db073456940036f93109d174246a5ffcd868cd1030ba63de4a15632a3c5cf5c92f1750231008ce8aa4c18f2ec3c5a4ff8030b068da534a013bce2b7e12b29b5c8e3491ab89f47b60a178ca189af4246e60dde29d7a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303bd91053c6c4b771cdb0ca2d44dba804cdc722a331be1dcf5fce333d7e0dddcaf5897ef36a34324253f9f7a395b5725a023100e69f9c3538d832fc701658f6bc5b36ee3b18810d1743318b1af3de00e67af372a13b5377b76644cc84dcc52c8d0b97360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310093fa079c76c47edfc56e497a0b8b5e6caf9e2e9b655e8f4146b8da02cd12d0fa5ca1d40468d95fe21e37fed8d8176227023100a100216899305de478ca4942854b69a2bc8926c5de3a8a26faa4c80524aeffa04b71851257f514c975c33d751f0e3dd00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300c0d584db6450c238265c13aabe4771ffb1c8f74e01aa10bca4d17639e06d0788645e22a7398f262cce5b7967dd21fd8023065ac4b2ed0994fe06c33ff542525760b9f8e4460ace0db51b99ca95c716ac8bd854311264423e9853fc5d6d68f6eac910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e381bdd323acd95fe3fd93217a37c98fae0176ddc4f546e8e302c0d55da2b5cd3986b5dfaeddc9fdafa912cdecc28ef202305d178a357df0ba5b27d2dcc3c26f65fa7f3ebdedc55a14ba60a1da088677a2746f5547805cb12e78d06adb87273ded940302047c435bb50067306502300a07aefe75472e9006251304f894ba5bf4686a9dbe55d09b000ef9a72a6200ef417e443a5b767eed2e66fdddf7ff15b6023100b1dc98b253ce21b89d85ae301a567d84627b126f2d55c0d1217e1a9d98c638053f5600e3822943070a84cf3adc8725a40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300c22d1927c1c74787cdc6de75f4cdcad49c525e8908dc5c582e190bd7e2df4bc9ae58c97cc0751491735832fbf11a447023100ba529b21206925978b947eaa2b29ec453959b61c0604774e1379bebb196684ca316b0db1b273a5c608ae15f936ac241b0302047c435bb50067306502305c4a9ad47e5a43d0b263f74cd7217575e542f96e6311cd045b8c6bc16a340e9c80f79ac46bda0f1a8899f59158a10cd1023100c7249110210f80aef2ec128df78b07e98a34fe6a1853c7482cab156744413246d8587804131edd77cf675f102116e4ba0302047c435bb50067306502300918c5050229eaed834a43861e2dd9d79646c13852adf063de6564989998bb8accd06526c49fb2ecb7d8c1cdaf1fd893023100bc80936aa1670baa516ddefe2306492fb72b55dced5d537a7344f704ce6d4275fb65ee1234e682753f918e38b1b914650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230033e751cfcb7b7a5d3ec138b91e476fc92acf62f8e94e87196207200aeb6d621ec1662451c5224683fb1b02b5bc7ca31023100aee6b17f602f87a49a4197618f031b799480d6954f140a9e2364b05a6bd8434e920bf19d4866b78103a81535ad6da6070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ef040489829f0e9795e58368b38572e1082e9417bcf7b8c8eb5aba7f127ca4ea053eaf633334005e857ee16b8eeaf50c02303a767122b63b74e29389e0580af64f508b1f24e3dbaa9ba2cb73332315e71db0bd6074a808e417c42c9b768f7ed761c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fbff9cc0dbbc06d832eb9c5516ab1a19c4b1f4ac161c55eefae50a072a4949a37e7fa379d9a4de27bb6af2fa1d1c1f20023100f8db90434176044716a663e386fccefde58238bf30be8cb39651ec9cc8d430a6ae211dfd8a34bb2274c105349e9c81710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310094e5fce36ce0f3daf0cdc3a85ba7d04dfacf945b948026966c79a6584d850aff0011560a24c6efe8bfd1f3145de23d38023100ea01618c6dbcf30484f23e097125499aa225028b17fddb16cef4fdb0f46d9226dc9a19b3930363b11451d3e82680ca990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305abb4c9edc78f008ce0e5513283b96b8dac5bdb63205d8dbfd878e9200c95a2f9f6c906857075787522aa374f80583d10230209d897bd1dbbe9705d9a3b3506bf53dade3a5fc55afa4bae7e49a9a397910e4a0dcaac0f7c09cd4b56b15dfb9a1b1e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f3c637c59c80eaa5e0feb1153fb532c5494beb34e34420ea6d0c963114af881afe117f64733f04a876edf023716cd1ed02301aad972217f2aaabf65c8b779adbff43873222ea889fa35c7103eba8769cd548b484e6d44efb13cb26a0e693b9b2f5690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a712e2a87126198e3e1ed4336688f1ed3b6ad34e0fac099779934badb52ba25578878588478e095af3a865c5724cff060231008c077cec12d7db58c7b8dd5cb61ef4127cb544c2968c6a6f9ec772363f1651b2061977393c34989cf817e9e4568d407e0302047c435bb50068306602310085c0ca2d20b21cfc28e418964cd1ba2b5a609020cdd8194d6eaacc68cc1bd9db808cf775d35ec0bedc9808e3f95848bf023100dd38d1460fbe8fb3fb0963a1fa0ddd5d248684b30466e1ba9b69140d70d92d3fdb138a345a6c731c70634dd48347a78c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c9181d3ff9fb19d886a88faffef749d3c3c8b1306d570fd74aadf7af6c5ea335ff58429f93a13c486d0b1461eb2cc9a402310090cacbc085c5b571e16b0cdff75402733f4fd1dd19ac29d0855afb78aa37262f9843e50fb1ed784092abcb3d21d04f850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305953a0848eed7c49b11404901191aef540bfd459642fd8a5c24c00c7d0193f7f4a103e716dcaa2458053bae8738bf2c0023100a815ddbf5db6523adc0d41762f7bb9a1d1fd9cb0f6063f9fb66236353d051a13338c08775799744463bf56b40be6f3720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b5f8c9acab99f71c3b89e0e67338d774b0138de65204afa74839cd7f82c5daa5ac0382b195255137757172c9a320dee2023100d7ab8a43db220a66973c505ec7a3de89e6c56aa908e296a078b73f7816faf1f44c8aab5e547f3cc9288f43742291e44a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a3ce6bad6cb37eaa096cbdb256f1387785bbf4c801f5d108b01b1dea6ff37d664a5023f7ffd10159ac07aae7e400da00023035abeb796712fcc12ad7934294d50aeb3683645862b5b9a90b871032847fec6a0554433a319ac51eb18962634bb979a90302047c435bb50066306402307123f6c2d2a7ff2e3b73713694168588eacf3d5cb51639653bc0beb9c9a271a228c6663b4aa71730f2e953f8a1f5fb2102302369e0b205210c526ec5bf1c9c8a838ee15eb4220ed49fb7a236eeabe08d3644554a71343b6d7013d1444728b4e4c00a0302047c435bb500683066023100902937bb4a9bd8cc804830d157014ad3f853874e77cf4031389bfa71ab41e582e9a89ef1986805721de05fb496f79844023100bc9d4e07742197c2382edd99b7390b871a1ed4efd402cd4d36aff8d3cc3fc73295353168e1ff14bfc96e7b454caccc6c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ff809b47756f47265d5e5e326b09d17a5cf3506d8676678c756190597facca8487f178c5ecc072dbb3b05701f735f2cb023100cbee8d78e5b96c94c7a9b1ef45a92bac997fc4037b9f9695c6f4856fe5b6608782fbd153dcb8ef8442d576533aee8cd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023026d5715afb5a006c5b4ac897653ff8e253334b92aad2fa834d57d91f5a32be1033ef9233fc19ab2c835be5aca4d33c1802302aef5d6db03f8db6365cd47005030f20ecf33551b8f710b7f80582c441893da292dd93acfb81da4ac17162200797e9f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d6f3999bc746d79d820e2e5fb7349902cf5f90e270748cf35ecb8500e298b586cd70e3a57db694e31a5184dfd31530a5023059c99e11df5d9f980f9f148f87a9644e996f77b64319af1e152e0e0b110909a102a4d3ed9fa3bc6ab9d92a22ed865be10302047c435bb500673065023100e3c5d0fa4ef68ba97c32ef4b84671c45e3840fa0463cec04f89b134bf9ad245b87d9ec0826130010d709f10f219dff1302300536329f99afcdc5146290583c0e1ef29c0614620a4cd1be5437e45ff6125302521485b1d7b8da4206e42c5a459b58f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304f1dd22dee97e4e41befc205370538ed96169611c653a319c347e33f931e5602cc07e2ab80f41114e70f74d48076c4cb0231009583607879cd5bb953e4989f16b693960fdcd181169718b6fd4479224874880e0ecf394fecc8e685ec2b9ba5f94fba510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e920aaba66adff487380fecb00517af921893e990d496649229f8371eec72ecafae0f49a5bb5c10602f1fe78585a345f023100d29b4eac68ed05544981cf40b60a94a8676d37a66a02a60e799a0de7f33e8d42cf9c5c8359be28c9638ae3b507d7aaa40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306c95b4a1e6c03b6a17b4703be1bd768954faa722ccbf2c427e0067b237fe03475963a4483e03866ee55f22692d8e01ab02305f16423286da0f82e8db527b6a7f02e61a05968dc49354cbb6b40875ecdc865025eb5c42212153e602c10465e0c228290302047c435bb50066306402301f67028195b737f0794f2f18c602d95d9129cc2d3942c692d96d50523f6cba8a1477e915248e8b5511519f296192934b023022adc1961ba4e367fe37f6792bc8431e2d6600eb8481d10f157409b828ad14e9f89fe1e95923d544bddb806ce78e8e580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d932d126a97370afe20760321529e1a927225512e176899a03fbe2ee293119b7d84aa0a7bab5e71fa89b593c9a74b6ac0230241a483e1858ad1c04c554f7e171f6755cb67618a725080fa79a63585aa4c9564d96530e84d4ce08cb66d85cc01189b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c16cd7076145cb7e56132490fd242a15eded07bdd9930a2f8c26f77cf600f744890fa70292a653739612d2c9275a4b3502303ca82488019f01bff72cedb4330ffca278eba865db7032aa53c7c5ade0bb52cf5d02217eaaf37d52aebc25b73bf19f670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310087c6750c44e19e06080ca200c10d20d63ae948ef48f88f0a1a3a03149652f6531e81fca4492cd2f837527478406c84f80230563df54af024d652c944906d8e47fe461883f25cf5cc0ea4a0ef996ac98ae7cf8afbf5ac2467cad502068eda8bdd8bc10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b7b893a5267ebfe9ed89a0fdaec643d660f07e2063f8f5b65e5c222c29b7d0e1b93d8b3a2ce53d1f281fa562cde028120231008d63a5a7f0f31b6cb4bf0149f9c6eebd5cfc7d565820b9c8efbfb44d60696e075bb4320d7952441fe3f8adafa6a5e58c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ae306456c7b9d18298c095ad89b31dcc6888b5eb95b4c6b2f86e49a835efb555b59ce70d34e9799fc8f414e89b9801cb023100d7ae240ff435159413297b21f7e73e8a798bbf6ff478afd0e83ded93ab752cd2c20e6a258dc3c380e6244121ed1c527c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100eb9e0e55a65b1c06446e458db3b248b94c04b15ac3da13a252ad7345de2707af69e263e10e23c0cd1103ac382168d78f02307796ff3633ecdd4a9d7ca1af46306068c41d2a0b00883644fb4b38c04f6484c613dd604b4141c6ef36bc9d79c8455d890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230100471fa18249d29a8bd6bc4513014ce7f730f35d15d99981dcf1b77e3698371c711539ee0332de0ce0fecde5c5760f1023100b6fbb5b2e11660bc6c4584829ffc66c979070fe84aa8502fa46194c3d3b71bfadcb616326e917d7ce4c7114f6e582f860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023009ff3008c25adc9e57d0d0a09f4066bd6fc2fbb2bcabaf82bdae4d3b712a19557e95180e38626b7af14d858aabf9127c0230053803c2d30143accea7bbc010cbb5697e0eb7f8dcf4614acccfa939a86947d6a3de0d0fa45727c65339ffb88c9c22250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307338f461071a957ce5d9a566309d6d59a98055c7282588d4c26435259d36ab99188a303c8359b621b987d82e155b096e023000ee43ad81ff45cdc14f6face58f905e2480b75264319ceb496129f759e3e5c34376d6e01cc860f425cce3b1acabef400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f01cb0a33b0d8dcb689cfdfac60ed12c862e8146cb6651806e4c728fad02ecaf964dcd3c0133508a6c9e6027e44b3a800231009a56c7801536c0cbdf43f24327ea217681484311e12a363b69045311847af0e1cf07eb4336b60f25d9e2db7a61da96b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023052e66474bd6da4c305318874fdf4106cf5c1c6249ea4fe13e72e68da4360edcc5fddac0ae6c80bc000c447d109ebf54402301dece1bfe6512f74d73dd81b9ad129b58dfaa98512251e65bad387566d4324bf6cbfdbe21de3f8fef5530e09638774050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008c51d576f55ffb9262b73d48ae2784882b91cb0b0234ec9c7868dda281c2fea41d458021f70a2c351e4456651640f3b6023076409a1de2d1911023dcd81169951991343011db1ca39973dab88ad6a87a29f0322b9206cedf16b82b608e86b46fd2f10302047c435bb500673065023100b76edfc9974e6ab91cb165df037389a59a9f281970623726ab9d4aa5c3cb4bb7fc3e5d48262b1fb824bcf6418aec11600230085d558c1dea648d6df06e13dc87f35720932363581b8d1f6883bf8ec9ef51e8dbc58c43dc104a29c0df2c66ca414abb0302047c435bb500673065023100fd71fc11a44bacb8b3fd12b50e23dee4e5425782d8cb10c0a62846c23ef16405ade11501aa65d78ce06a11176a3d39690230021d8522b02547f667c76b1a1d176c309b62727660bc3f265834308a7284799a297112fa575103981dc11ca5cb13d7b70302047c435bb500673065023100803a8b0dd7e03efb24fa765b4e0c184ae7c7b7798b3275616b1631c738cfb67f3682d5d5ea93e0429ba086a5739b326e02304f6998ef6f5487ec57723e5a132993282337b5fc0c2a0bf60672a494f11684327ad105a22419097f84e8a19284e7eafa0302047c435bb500673065023100b0fc0deb36f2055bf8e24d988fd595bff48dfcc3178b759e1ac5f8d102deb623fb811cefe012060f4cfe834c99f6214c02305f7843b4bb1c7bfda8412d24111e8e29c96dd045dba7eba496386cbb79f7eebe0b69c52a4c3be47df3f9e8b4c1a6dd9c0302047c435bb500673065023100b70eed4acf69fe6465da7b1a4e82b3d570467de8ffa9a09d9545f6484895ece85ff4e3801407a61a85fb528432a9ccbf02307f187f7afc8d9cc216ba02929236418bfa4e15d6d1ff12b6e3c029b0f0d2117facbfc597fd5243b5bf8eb41440def3520302047c435bb50067306502306924e3875a159aae513564cb5a72a7d5caaf2bc35f93845daf3cf1c451764470f05f3dc299d4fb9075c273fa76088f8d023100c2ac216997245e24b4f2cf837d36e6b366a24144b7cae94420931044dc769f7d0fbbab48253b282e734da59522bdd7370302047c435bb500673065023050a011bda518d725746d0d402006178daf57241a8f108a6d74525d59cb691e60a2793b823c6c127dbec030d3e538d05a023100eb532a387925838b67ebea683d1dd810ded27d3622f199dadb405a513a0f45584d4d36e2bb45a16565356ef89eb8669a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c55098845b2676ea94c042e1cb4f41432200f2ecb4bba37ee6edff5c181edaa4f28501f4731b743cd5587fab6635756802305522f9ea7fe86fb1738914f5c89df6f10979614e1f5f26544370b4e258602a266d50ad384c6700fe9e69ac099789f8d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ff1bc348ac6a3e7490848d669528cfbc7b89402a23e8ff890d8f4454e249871a260539c2feeb89349cd353a7ff624dcf02302094e06c99dc40d43a7e1ddad20f14e91f340d3034f666673b3e8b2f2bdd0ca882596772bb36e620c20a57a4b9a19f690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054d91b51e59df4f6f5dc45ee6cec4487694903db0206de842d915bc46ed260f7951b7d3cb1369789c4c56f5e8da106a402307ca52fe4f46063899861741d9321d01a66d5143e68d7bf56b789426189f3cae9bcf956f65c8949243957a93ecc2c46610302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302ab7ce87779f48607dbc01158de5e97d88972e41d7be73c86d513b891f321e6bda07838adbd6d68623ce0d602f6df7c302305cde5770a2e7bfa9c0aee351ad00bd5445ebb4873f9af274b18e387da2c68f0b1edb29fb037d6e29e98e255b3e297cb30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023079789afc8178292a316cded0a549ec5c662c37935628276d56a7b3d0fc3293ca6e249d30e488624b3a92473f32c9cb32023079d5c069392bfe5eeb3ca1eebdfc473c4b2f2122e27e4b2c67d2021d9163ffe7696e5481d4ad188179b7a0d84d1922840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023071b82e3fcc8b17db043b5adc580be0a47020be167d9b540659e23f3fb66e66bf2386df00df85fa789bc8b6e0b15dd33702310097a945ad82def4b1f6a051dd23d1e446a58ac974cbf4287c874c827c9fee333e43f8d3fdccc83a018ad874ecf6e0d56d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e3123818aaf0278cbbf7d06b0ee741f450c807af17e5cc4d36753bd589b862906fa80f463ba44c3de5f791411a616171023076e21263f7c83744b3e80ac4880ad218ed1d926bdebcc913b40a7d2a5fa665b0d5bd6cdd47d08a9946fabdd8260651050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306d176e8cbed0fbaa1eb171cd651b9241284006e3bae05908fc5c430e816d0967e136c26b6d2571f51398c0021ea853d302307447e10d0f2e88e4257e65c6e1c7f3eede70f6087806b87be144d756d8ffd3bd77c7cbf48ee55ec404bdbb13e77739b60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023065e72168ee2871b5bf85afcc7a453258b0461139aac201b40c5574c002e88539fbca4829cd4343f3035ac8077f00cde602305e6a15e70fa94e2c2767177ebad48e55332c314fa69cda9a32323ef4e8deb4973b8a3bc44e4d6e85c3d6c0db0fed8b6d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230345ab6e6e4c3a1a0e83c3a2fa856c6d87c8d0097696c280eae486fd3bbf49029e4b5a44b868089ee88c8dbcc20a0df6f023100934a67bad6ee636584058ce2abc962303fb1d996b26d0380c1e3dacbacfe8c4c199f8560d353d6e85a802b711e0f3b5a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d7efd1d052ea31a0c0e98531c1a7bf26faca98a20100104632da0a5aaf292cede3386a9c7841beab74badf52ade5d84023000e736c52942d802cacec619402e7263cdfe2a75317cd4f26b1197e2a9171f3ffc4b39e7d13651fae7688a1c9d17e4d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301fcb00eb3ab150604dccc2e119792abef5329aa97b984209ae7b4a0a8aacbb52a842eb7e942c0d5a6fe2c8133065511a023062f3b78872f05b4199d751526476e833c2812ae0a270830a53e605c1484d64475d451e077e7adec4206e8fc0fb2a7c390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300b092e775ddb3469b01ead588ef035225b3f2857ce9b6fa67056ec38adac9af2e9b4dfaa5b24722d6e554ee09c76eeb10231009debcd58187979920561ba6332860e4a738d0aa09563bc543c2ad9c3481d8eceb23e9ccd128ef7631375821839d4f4550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100baec3bd8444952d48623261a545c76d0914c0be1177d50af6c37dfa9b2b022be829862b0cd3e66885904c04585e4b2de023100c4d2447b71e8de15da408c5a4807914abd57e17a5559ef40fa5a7094f49590e0f10886668170a217e580386be0050cc90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b221d3b3a25b33f7177404465494b1eeff3abacd4f96beaf9e3d9efa871513d4d576db90e2b03153e7f59e005e34e69c023009526861313cdaf5d1282bb3e7daa5ff2ca7285add060d708f8795426aa9bf0848958e38051a9af635a4a3c68e048cf40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009a4219dabd99bf1edd210861aaea6e68d113840313d4e6eb709703430497e54acee6e54ee95fe2cb32c075b130c79584023100923b9459b530107386ad15c1d8dd73f3d3b51821916708bc146a711cd47772d34d6c1025d7c0bfc81f558d72008416480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304abfe1592d9f9350b868b45a3a688665627dba191219e552b0092d60c96601681ab4bbd1b5f3f14f1da2f74e72a2973e023100f0b0347db6a6f55a18429f67298d4de371c3800b599389aad8eded0bc8a8c38bda44a514f6e5ee382665a6c84dca384d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023018570f0d391459e3985e47f991c6d6dbd2d44057fc7b4607441249dd1baddca2926b9b5ffcc17a8381a96e817e99c9fe023044df970a8fc4bc6783bab1777683e575aeabd9ffab436340dc9ca4ab3e65cbd0a761589bd195d419e232421b286e27c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230480c79653e55df39a16505063fd9e65599182e8b954602f4226c8a873bec081b16c71525fa16bf10cc4e3eb3ef86567b02304d17189f52d54b03351dc64ae85c343312b2e0775113813b0c5fd705d545c7cf4423810d6ba670ef6ddf1e75b20d68960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310089384bd9bad3aa311e86cb68a0a62d502518b52fc0dfbe063a019ac1bdece7016fba931e685aca7830b8c2a81a1878be023010067e2406a06c467dd9e1400ca920fdd24b93639fb4cf0e974c5f0d91d5d8f22c0b4ef96495a057e2ebc94a1c1360c70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f6c744a18f941139705d79d4a5d8d6f9b166fe8b1f9d0b9d2ca28d88afdd2263df027144cf539c8bcfc397a4e27b2ece02303f45063f0575209b2a237f1246bdae8baf92f5082a7d8c777d5c27636757b8ab4c6734013a30b9e76c17bd4bd8fec4360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307abaa1dcd466f1f97022eb2b8815ff2d85a58e95dc80f5281b55ef00db988ae7b32f2a908d1134bab6eb9f85b7ff58b6023100d7dbdcbe898df2f1c536f6d9831f4c0e5551756463ce89f7ddb353381c0dc7c9e8d9c8c19d95f2b193e7cc338244496d0302047c435bb500683066023100a6ab7737cd88324ebcb4f0da2225e9888fb13af142283aed86aeda8eacf8df138bd7b8737f6e40851af070793e25de060231009071f1fff17c832a698e1c2f56611fa922feba41071c265c8c1edce25360ebfb2e9a626d441dc2528e5d84f348854cfb0302047c435bb500673065023033ec404a20dce5e2756adfe03dad6c4ecd2b6401eb1e191273d8cae4851f6cdea8c26529bbee622b671b9da1885d064d023100f3a25820f356a26e7b563e097cda1a4643c512d15db646d3cd7a8c2226470338e043401157151a22db5b125ac67c91330302047c435bb500663064023079df57c63ab33e4239efaa81ffe94ba75fa69d5c16056e7e7e72287e82684c20333807be1984489ae30bee2bc411173b0230013f8ae223007cc9d9ce7b3795becfd1a582f33ff13a6f47f1dd0f1ab35b7a985412fce5947ebdc40989c9472bb4e21f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dff4abcde0764403e8e731830879fd94a6871c96baacc9cc68b6347d544535477fd41ef26882f1c7d87ea0c3a27b729402303adef4038d75fe53fcb5264e22b8103d4359ab924079bc3311548598b8ca1a8d1d1223564a2403fe7ee535afc63076a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023042b81f7adac04e7be4f049f091cfe92dbe618cabf6a7073bf747b378b352dd288a280f849387368df1fe0583ddedef6002302d1f8b3aa90e9ef39d086e9fa200ab584042de0b221435d49dfbbe8ad77d3cd59567457e400f6475cf726285603499d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054d184e3bc374bd791d102d76624fd26c05eb513d694983fea352f7516fdce35fbe71d5fed6d77ca9e3c403269833fda02306a9fd655c33e067b713c6b6d952690c7e2acf6900366a46f8c74e2bdd53da8b61b0b9420b364aa16148eaf04991747fd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a5630428afe01b46440b5d8f2756d6cbe62bf666493bc397860e1b6450adeeab596a60bb9c40a9f4671477d05607073023100d0d156172733387afc893c55317dd9d2a4fedd265455f7ae5533e7aa473699ae121766d0a3af21055a253f824c2f505d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023018538c6fec79097216e3a24c34facf6e68cc6417c46ceffd75251ab2c659ad86dda60b981be21b926b488c36c0ab5e88023100b3344cb36bbb2a9a74e332e98aa404d804b4467174ec637f1eeedc7ca5bf2caf657e9ab14c9e8bcd00241a6e2b12b8190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300af63d7b849b08ac91888f4e4f3d156b15118b4ed31d3271c8de6fccbd3c4431d7bf620428767da935cfc7d7b0a3861a023100f6244306af83764e2c09c8472c4f356a92372eb4630da73fe28456b9c87c8611e494cfa5322db4c425186cb4b86eef770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305962d5ff42f9e2a20f3b473997fa650dfada96398c96d489aeb57a014e7331a7a130dc32925dba6fac126efe39acf829023100c2bb63fa20283c0298d975ead2e56dc14b852ecf444c9566c0f446aa4a855708a5ce03c150e571206520c8db60214f2c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fe4d5512b92639ae6b88229c7334ccc2a227e2ee95d549781a0ef3436d10b945aaf2a9e918442ee1d3bba927daed447d023100a2c05eeb0aeb7e115bcb34d44498d3f4938c22a4e4a4f35c7ca72915ef0ae9c9e3997fb1af9ba80855bdbc3b6edbe0f90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230606e2da9d6e8082d2a6b02559bf42a63e43941fc70bf9114e83cfb1e3d80af4cc058f69c8db10323ff92cbc5b75796270230636c87cac8e834afe9c45f4a6493f93903932400ae387395666fb92248b0afa039622d7077b7693df8f92a38c3c4bca40302047c435bb50067306502310097ee13aa6d55d7911b22e3696e59d5f6ad5aa73706c436accfa7badfb8dfb64c544ba4d4667ff16b54cea65790e620d30230037f5069b2a46537bd544e7df4549855c9c69c2ccfef146e0f5cf1f9b9c0b3d678a966194711b25973414ca1d960442d0302047c435bb500673065023100ae1e3fef5b3871124a82ec054637c267098d76786af5c74d06f6c43515bd5fc5b63a1712ebe84a86fc74deed6399783402301525192a88017deb348ed5c72130265fc94c4c509150bd21a3d5983d96902a82d1541c48901fba86329a5afb8c5ba8b20302047c435bb50067306502305865a799117ee97ba923ad4231759f8495bb48349d3db310f2c8a236cb929ddecaa1daf8208b4b14d338169de5fa9547023100dc859a259e81aefd26978af28475a1ebaeb66b5ecbc44b17ca9cbee0a11787837192bdcd170fdbc28775d5d3c9d408aa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4a2b610cbf62ce461081947c6980112b9b0f749a3145cfa2132ea645baca5e705efa862b7e13e927161087f326f988302310094b553af38eb9c2693cf505b487f7d3f1b5b06a215720b2ea0b77f88ecd491f31c4bf6832b2a7d6e720edee537f81acf0302047c435bb5006730650231009ad7bc93f42e7bc28f182e6294882cee081c2995bb73fad3694adba5a461ec63351f0e87302766eda0e42a97c33bde7d02304086db4606b38a44a7e43449dd240d7c3ea6080a1e349633ce830704e324a06769ef2d1c38d214cf230bf36e9b2372880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc96a133f2bb9dd937057019fb15c0b977c15ef7add1f1ebc663060be577c35299a4f6e2aabb207e898fb6933ba19f63023100a9d30ba7e801e0fed4c9c026131beb3d3606c0a82619e4839c7facb6bb8817e745a45647a1537ea776b6aff41a3db1d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303bf09c3e76f9996b4e3e56404a390cec91135cce40f8ba961b3f2a358c161d723506164221414235ea6ef35101e4d86802307c77d9cf13a6a64c90b5311e6629808f0bdd7ea2a4e062008a790df1dd5ca3b941beb78bba7c809c5978b2094a91885d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023078d65dee80bb1030d838a8325ee8a00b58da6a114c26f1869a9f33f777ceb1a249e1144e487df58a3c2eb9e8a96feaf5023100827ec139cd50ac06b996f9876ed714a5ef64c0c55b03c25b2461c79806c94f3a4a6b7d66e9972af7027afc7a7d412dfd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100be0039d2c1443ce0cecd9cc2170461db83ebcb9f5611dd1168e5daa37e4a6057e9663c11966ef6bcbcf52a5954c93600023100f43b1629f5c27a32e023c08042ee09235c71d2d4589f3f4a57924bb303f6ddab93acebf875b4a37bc6ff4ead65deaf8c0302047c435bb50067306502310095ffdf9ba89d76f02dcab5d5574ea2c72981db1b74467050416ebaa833b64e09a612b52bba81c6f439fd80d753453514023042d459981b30a6e76df1c0d975257acdd7bf37f1532b3baae142d7c984116522c3c06e90f25df417788b63b0eed593f70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009234a94f3c8c812e903cefbdadf2911a56f1909ccbcea0be4b61033577d7d015f083ad826e2cd019f6ecc4838a02c0f0231008ca2944ac527c6bb2dd19905bb0bc1d36d8872c537f5eeeaa66ca71f95fce4034134e0062732612e39b3399618271dfc0302047c435bb50066306402307c65c82b7209508aafee36dde0e37f9dfd5064cc6439701f8ec0ee4c4d2422f13257aad4c0d07a711e90520bcbf9fe9902306bff25414ffd7772f7f37eac9a963b6588388df31397d4d39c75d12d0e57f3e4aadec1f8b160926c7a89b1a0819cbf780302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bca6dfd7e247026e6bade7d7e0e04788e327801032896310d0069788c6bc74be9018ce69809b6e97e41d7677e9dc619e02302c0e329b4505b6d72d30360f8dd8c27b18cca985677d720080ec9abdcd3c71daeeb6054518881d4817cdcc1c642934360302047c435bb50066306402306f52a42655ff5db9cd1cf130400c7d1902425328152d51e460d730a56e2aa7e059896ddd56ce89db5e03d7a1d0321864023020527965c29c165e3314387a0193f1afa357daee5c3d88cd8eb2b84757448eda512fcf7cb4bad13276c3606a67f65b930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023028f6fadfe8a15eb878f4b32083e44d54fe466ef3dc01fc4e02b4b97f05dd3aa9c433ffbe54b12597b41af29b3256638c023100e36ce3f42fd057f7e7628e93b8e9c234b1188e32f960d44887ae773c208673cf887e8ddee867d989d53299c53a0923310302047c435bb500683066023100d849641b106a6ecdca522fa9ae43c12602a806ba02380639f0d511afd528b3fd6e47bd654b18ec3c33d2b968412f49ee023100bcb644643782373a7a2e2fb2be1b595cf7cb9ed13ec87ac8d439f864a4860f5d742a0e297b59a1e421dfb8bfdf5c9b310302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230013a5c7a57e3266398c17a18fcd4b384f1a312775f536fef4b10ba40f7849b18cffacc49c79084f7915be55edb235590023100baf985123b31a0e09ca2656f50b95f341f2a1bd748aaa7aabd6cebeb50b08c6149d7bd8f61d3bd6079915657d4ba03550302047c435bb500673065023100e82ccdb01d050f3a11fc207ed53a220cda89ab662116812484b0d1fd9402a9502a614327cdd2feb6e1547fa4a88af8cf023019b83835c95f36a03c322cd85e0a6db40e508516767901b17ee74a6381617970acf8a6c312b8533f76df111c66d62f2a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dccecbbc5c87e36f6fca14f88abdd44f708e976cc01108d70ac06b4fe747c3980c3248bc9b1c2c099c9196668cd5f9de023100c2eefd71548bedad7491f99b8c175572bd848814243e2baec792709223a65b2a3a5e83b89de34d9d555134faad01090d0302047c435bb5006730650231008a3b0112319730bb6473a0fa18d4a027d1b63c2d3f658020f1c0e566890c30d9a37f8ce5811c33d23c906f7ee1be561102307e2beaa138e0d4186348928a90f7a5432efff99845b349c7d98d9ba7401e7330b93f8e5ef16605735a8882e1762002530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023011f5e3ae7a8346175855dc8b7c42c785beccfd1c964dc2fd610500e384b8fe5d6289b18706a2148b3c86ba814a63b2810230050dfcd25330a95b3da13696680f91a8e907093e16723aabbfb0a07fdfd4d07e824186311a729ceda1bcd323dd241a8a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023017db421ac28bc41500dd96b4950c7d0ae6520299658d10526f205bc13ea32738d43627eb2d9faf74e27746bc058ce409023100d20bf458a3239222747edcb8c05b982dfd69e11eac4ad402a4f847454723d17634938a5a12b69f3a5b9f29e9cb19e42c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f5ee36f974f15bb1a96db67c1c55e52c3976880d715daa03984e3488321e2b28ad4ecc1ade8840615d8c4019bfd21481023100b13793fe97f0059fca6012d89e881d3baf2083ed4a103f680e52f77322e1fea00547e8c3f00809e106f0c8dea69f27870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e416b214c3e49d449db4db49e75132ec9a1ca21c7df2baf8b36aa1085eb514bf3ca2c28f5b3622bb9d2862014da9b36702300a46ed281ad203f06215886f6c9694d3de69b8c12336b302dc7a7701476fecf657526788f1520498298d42ad9ffb50280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fba7d61bb0647f949d31ed73cb21d02725dee6db8a83371d879afd6f79f241d71df7dcb8b9fc6bab80c4acf5454ab9a802306ee065677e80fc53ec417e5f4c1fdfee93e8bd27ac96430a8067b38cd036b953d0cab8eacf691bba15583f84ca4048450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023059fd85090c943896548b66b8058f671a7477234fe5ac9619e08411605ef2e8be5182ac5d69427f803db298a410011b34023100b834783e79a832c8b427466d0a32a291c977e934564e6e00503a78fd1c8bd94c8b1c63855dfef2035e9b90d72e85e7020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009bc90310b18a7f71559f366c3a212c78ffacec737218a26f810e141a2b318fc23bef0f0abd3278c4023915bc17702e16023100e8e6716be499be02ab6d6c41504ead1938a912219297259a2cdcc63e4f9f9305a8887aaa22b3f9eda570858d8f6bf8af0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304ccb0f43d95da20d4365ae17d3e5d32563672c89d556653c318ed9cb801632d1583215cc96dd8ce307f913d6f0de5b30023022c483d2dd2f0c0c1793d84e3800b18dd20262618ec410879c4f30fb63a14fa05399495fb9a7512f6398a439c1e8d2420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304a15b1bb84219b3c5bda520207e207d65d4a4b74c394dc79e29a10c1e290eebd6d7faee954950ffdf0080adec19a118f023100f17c18a0fdb4d57af895a5374a054b9d76c9d01a6b0178ddc3b7939c133a8fa324fc7e3a7bc33d3b1008d9408d05c8dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301a6e5f92f8238854011c78636013a896ad838b9918fd27571fec94c531428ab21ff8de197a08e57b294e1925bd235471023100ee71f4873f7ff6df76fd0f484fbeb63a9b8117c037c579eab9878c48294f447c355de2d383039e26e9f6a4d433c65b130302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300b4580723538852c4d9dba2ce8bf262a7d5d9b4f6f0b16b5508ac40ea3cab07665a109e120b8a0f03d1b5511c991d60102307b9ca358c64bfd466cb7e0ca9a516af0b79f4b6cfff1265d599316840813aac35f4b454aba88870cd3432a4ab2c60caf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f68db8988608bc185ec0bfcf70abdf2d3492f7cc148a78739c5a22f76628cc7c000ce8684c222b2d27a9537b6960e7b0023100f431bc8772a6324819da825b40368b306c5447c120119fe4bf28c7f84891cac17fa050db9675dd5008d9e2130b8eb9e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a4cf3960e0da72fb54a945e829c0208a0b8c2ed060989f2c0792b765e04e12b08e718a644c4d5d9f0909abd6ecc56da023100f8d9cb62b563aa57a987b64a6486b85bb4dd71aeeacb2e4cf0f1f71624163b580a9ba25a9377f2c05871540ea92bf6ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cf5979084e5df5c52895d37fe50ccf79a801b2bfe58626044ca0a31bebfd70466f0bff820dd05030d7a8375bcb47b20c02302f7d8f0720070e5467b2a892d6238cb2b2f16e43b9b46ff59dc33a4ceefb78fa9147e30df8a410776fed5408fce3acea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023028e4492f7808a1c48b2df0b6edf7cf5733f6d16df969a3162034a08f1f768da7586b8922337de27c2e9838cbb51c0355023100824b2c4af15172f50bb911c5eef143c26dfd88d7276277c41f195f7f8d9adc24810724299b76077528d00accb789a0580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eaf9b35e22ab198f3d01544fae658ee017edce5bda73f12831929359fc05fe3d805a5188ef6632b0ea6d888e0b91f642023100ab3ee0e2130f509637ca747bd3d995f7bc20e145cfdd34ce93a576d4b92d1366399873a7e145ecb9185ee51f9f4b78d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100868f1b7b2966fa6a0081c2b30ba5f99295506585eee46ffde95dbbecae3a03e231118254a1728ab02db3a8cea32554c30230063ec8f48daa69e6520400c2bbeed2d0e46a0486cc59e0f49e48b1988853d7ad30d8af0bbaef8d8c3faacbfc5fd4e4ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c9b2efdcde8ee74706238d9227c80fcad487cfb30243ae70d1e3a5b589da03bfafd02bb1274095707f449a70f0233a5b023100beef21939bd9195fa78a1d6ffa008b48e264cf8b10aa6e4b2b115482ea2a0f3277f513ec82eef10b95a5bf0f54ee98430302047c435bb50067306502300a8ff8f0e656ad62dd786dcd35f351a0cdc7b77926dcb67c77075cbe0e57b96f01d021f5a9008e835e577386ba4b1a19023100f2644ba1172da5e2f169212928323106d369d68e563ca601a520389caffec016356e59febf1773a6f5d008c3e17f122a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b48e83f78730863f6ca9971b193a513f4d1529cffe45deb251afb932ae22b4e44cd22818645940d7d037a43be5ca555a0231008703f7410484799f3d5fa7f21b8ff164b4718930e2d729bc935dc8bef23e4714333f035c59daa898949a3fe58117cc9d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307e3c375250f1e033f5df56e7e9713904dd8030f9c9e7143bba5dd636141c4b60e15c273b3bbe2500f63765f1a760e0950230353daf976978cd3afc0b1fbdd7722113b6696e57c1a43aa785fbb55f05a1d331029966202afea65430e3ef7ac9966d290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305b8b0c4a768ae9d87a8cadf6bf54b5e1163ed51b69c74330506d4040e78e51bd57ed3a6de8d7cd525abcbf4849073f43023100eb02a9aa88e57abf261c1ea0c1903db321c85832d085d33fd09b58402c2ea940f2c92eff5a4d9c3338a6375c7aebf3490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023034137de16d1f3078cac0fce4344507e927d9ac1652cfe55903f54957d30b4beeff905ddc97bb3b9b5c18d714124e0b5d02302540d7bd88c46a2e6900292fde02530cc0684fa74ebbc7406bfaa2d70da2235457786546373c61830bf9ac434302c8740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230114962d6ee57a4d12056f75b76465156700538f266783513c9a57a23bf1a3b2e4a6d0cb7cce0e971aa47f6d78085cbf80231009c9d79a124f24d3363ba2fa5b42981dcd6e46289d7d418bc3a27d55889e09141a046b8f6536e53e85e0a3ee2dd1a92450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300903e895097fe37d19431a19328a008b1c9b18ed5a9a581ed370655dce1a8cf39983c242f439e885f250cf9a8a5413fc02300bba9258e55c5f91273e815dacac2d5d466c6fdaad80ba1f9edefd5da98bf2c063f41d95cda3f0d69f5ed5b3bbd8665a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023078dc08c567870ac7e453a157dfc53f880f52226599eabbac96b1af0e5fbda175266024f943c5d656d7731c74dac8fd61023100d994f8a4ee64feaf5ea765062ac3813dda172d6a97616cd0457218606cf3e50ada5616c560f4b5d3bdfc58c7c07c98ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023058af54d78deccae9a9917750c584ea57dedaddbcd515b2c7e2648db2a18192e43daf5a8429803be125120daf3b8469fe023100933614edeaa1398b88e97f814dfd81f6935c2cc8e59965de22cc29d33175cecd43d14866e043d056e726210ae9ce21910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023067037185777f5bfee3ac9ed38943d100584540d99198534a069b21a338554f6c123a0435d62fa6540c4a0dbb1dda4c72023100ce4cf93e6505f132390b5a6ea3be1ac665d42c7104d5b79dbbd0629ee0e5ffe6fd3d09508c4e3ba94ff6378484a91ecb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd7300ff66392432b612ff056e3dcaa0beefec28bbc13be12919e3dd3cf63255a0a9139f4d64f5cf523122ebea315fb40230541cb120c32fc8368642ec00c7f8be5329359c54a8dfabf96c6f68637a31065878505d84ca2c865023ae1b9da565a7410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a2d6fe3daa94314b74412f3c6ccf031068b005aad01a9038d7e7cd9054404381d0ab3009dadf722e1a98f3fe413571510230326b312616e10a07c1effbe36c280e8739ab26172a9878083b71cd77464baa4a8c66defee9e42324f66ba50db796c3960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230313cd80863afad2cfca0d5165bb5f93b99bde940bb0744f9eec2f254f4ff9497629efff9d3259c9db34e72bc62da9f2902305fbe0fe3d6924176a11e0ba17aa9be7e618b64132b7958526748961f684d2c7c4dd22433904ea100fae26fa7c6d4f6dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307078a6b4e57243455c2c10d6330c91a37b29b1222edf5404d33004dbfff2daee2ccfd9c28962597e59b64ba680474e0b023003f443ad8202a149e7176cdeab00a2252103641c37094de768cd3f7f1b95930abfaa5bb27b9bbdbc1778739bf3a0de650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a76dfe6e8f513d60929c7053d42e1034ab7f6a95c2650c06b86e8ee8fb315ddd86dac2497c943c36d8c4d8698322430302302e2b790efac5e51833218a706fe1030a9ac6f13585476b944135dacfcf868b8499f8315bd7b44a70f92f5bce7f0221e80302047c435bb50067306502300f733c8ad4dc8efde9bfb211739f8330767ebe4366022eee3ebe49352af62901d3625afb00b90317073e5ba7eecde553023100dc7542818902737de890f50e7e27fb3eda976a00e3d2f8eb30a723a5eaec89b9cfbe5a9cb8f92e39c99256e3e25ea3d00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023065ad86659dbb1f17fa9021cf25bc82831322a111013581b2c7dfc96dcffc9a9daadfbc334416df2ee7730d645251658c023100dc27ddaf7824ec44be237e1dce84a7b1dc04fba0fc815f20a479c247b6c3f99bbab1bfddf1297d2951e72b61e527b3240302047c435bb500673065023100daf7a076d0fb4753df782c695c051904fc5c0674f6388e6ef57c780de1d3b26e4ba3b8ee42e24a4b79e7e6f36148ef7a023021d108a9a36943c20fcbf152f144bfba2c71dcc8e59aa84c5f45074165c4f8d22fc2d7ec8c05c74dc88a92d9d021b9870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230518e90538d152038648c0d51310f7a473009a4c95436242836a8457473d404e6ad5c9fbd995fed8f78996daef2db1c2e023055448740e5b23b3dc2105a0ad7497dc423d9ae790f6ed0e53c53ebe9e25c40de5b09d6b177a71907517651ee51b889b20302047c435bb500683066023100f76248baa8461246a53df3f3e791eed5729edee2ebff8e05e8ccc2dd71699e580251d2d2c7be5b8163af473efe053218023100ba11c511209c711b925c242291878df451c12dbb5f21aa5c261aebc95621367ebf3565da4f77ededfb8788dd6f0d9bdb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023016cac3fb3b8208679b94ca37f8bd1b45824a634da19caceb905a99016d1b92fb60bfebffcc0506f96aa48b82a19874a00230346aba86518abca09f767451d393a5e20d4d00c213e3e184c38db0c155a8577cef052781193a2f0f4cb33aab730dce160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023041da54e09303bb0c950b71b13acb49b0e08ef03edbcc59854f2c9747aa2878c5d67b477fa83a232be49415804a5cfc6d023100dac3c2feee65f93b0b6c22ba666c1b378fb4dead4ec7e788e198ca1231a89dd8613449b763737e8326e30495869e7d020302047c435bb500683066023100c78bdf20c3dda8f45e5868452b3e62035477af42a16b26ebe4f40b3c59c73ef96c874e13558b333d2ccd7fa303811613023100c129904856ca261c201753de16c9b9378bed7162ecc984f3da1f9b08d1532e87c749ca8ee8b538afa6f3dc9bfb2ed3cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f6eccf98ca6dbebc015ceb38c6b2b1b71955c1994c910e0785fd120c86e95a932be9cc27af19457367e418dfa14faa8d0230060cd371769b67b253b40ac2951fc2156a2d153f16285ee8a7599f5fa23069ace2a79682d838675371cc92fda348d6e40302047c435bb500683066023100ee238a635671faae63bb7a127b7acae94d75ecf2cfb6455bd61082a5e30d6ef7616177f42db7b874d4a4f740a432b971023100e8eba1edc944e0c5d88a84a55e445cd983bed61100ea635ed73dac3929d28556ef6707370ef47120dc665ea12beb3c460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a2460472a6bdd9742e842d56f7b8e67ad5b3f85dcad25844a28ca8748455bcfa60e66b4e5e4ebb63bcb3c8bbfd081e51023100f1d5e0f96d0aed66ef4933110ece5969eb28c5afe4e00fab4d31e0abe03f6dead66c5aa662cde3e5afc12346d313be170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305d3995d4b4499f3acefaff421b29552730676afbc7f29a56099d9b9f8694c23fa80f3391b8704bc7c31655914b921f620230341582f0d8ee4d36eaaf85b4ac2d3e986619b714a88adfec25a56b378ec3a14543548f102697560171e73f0ff26f24550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230622b729756039c424a4a0f397c15e7519079dd9bf1e4484aab853045b60aee224979e49619463aefdca21580f95835640231009f928a9cf1b5c4ecf94c14e9e2ec24f42e0175632e9001c93ce1a1358cc3c426e99f1fed426482bb7518e1de9e397aa30302047c435bb500673065023051acbf7e1ff6a87bead4ea30997d89eb48c2a2fd220b7892e29171eeb4bead0fc3af9c83f31bd38c05e0d469b54d08a7023100a329c03dff1f990859f586cab2a28979f195db2c8448de105d3c54cbd033ff741d0bc0fa68b9a1e4d6384dd2f4180c6f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310085de9084ad7cb58989914b71942c35c9e9142602833be1477038836467c6190552c865c2610804adc2a492b8f55ccb8c02303d10b930f76e096fa0244fe3ecfa65b22e5d3284f467472899a6e21a496e1a689f7f0a111bfa457aa1cca46210afd8b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d21466d0fb0985d82d81d2b31d4bed1222433de94ce28149de975e940a138fab5016ddc860af2a0754bc54976f46a8cd023100cd4d04b30740a1c3b376769e5663d08f614c15ddd9df1663e6cc3366cd3231a7d28b3af619a222693e8dd589eb13e9d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d8eaddbd770f4003b833ee6649335af0e31bb900f5652b8678934b247d0ead5a535d5b7f042c7e93df97c24efb848d980231009ed8f633975775932a8f586f997d007f9b8d69578ae14fb51f79b8447ab4da0d5ae9ca6b9c8526ab43162a0d820992410302047c435bb50067306502306c4254f7fbe9af60f794d7ddcd70e3adc92e310536ceae34637a6b2de106334cb556dccaf74b1a53a3391c88b99a1a1c023100d4b0bae93f62b99237a918db07ef19db493d3df1c3a87efe9b378948aaf9f640bed165a5b87bc1ea5fdb616d901cb85d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fe4e3a6ff539400d568893008b97fa9015f5a1d4286cb989be7751032bef998be81646f77489281269b0fdd481a898ed02302f1d6f2b2c77e2e9e48af75b9d5accb55690ce459b64454dcf30ed5fac32481c21e5ca632b4a8e5a73b749d4e64f4ae30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d78cf1353b1276f3996a4bda02a521dd54ccebdb3ed607fc851675c96ed1e55d9c76b751fddb09e43f1211cf7b2741a80230072dcf252d6b882fe826b08e0b62290f79d1266bb17b5d900543fa9595aeeb26fdf63b725bee7ee8b28e39dc5c4d67b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303fad5fdd02f6b06a382e1778b362b76a716c15cefd3c0236204df8c8fa99afd3c696abc1835d522c1b1bc98cf4f4806d023100cfff47c2bacd31267ecd36690d567cf2d1a48dcf38744b35a06df0537efab2b804a8680060e7f96accf9aef2bf46b2840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023054cd59d9be652b5bbbf0bb6fe70d2091bf0752fcc7d1259c162783d8429e18e48230296691cb7e4210dc8b7b22fc83e1023100d7f13ff4f59a03e637e65802ab4fcc5f282d22b688eee93ee6ef8ff830351c91aff7fd215147d42db0591142697df72e0302047c435bb50067306502304138f5c4934930859075aa95c34de01c0f479e74d7479355249ce467981a0a2a707d78d2b6aa54013989e7f0296fa83d023100bfc9c40a8cdf9f1e7418ee7dfeee78c71a528f74b1befa5fb27bb3294c77649651adfb8f5dd91197133aece1e7fceeb50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b19523ee125ce2500ad5cc862391fb4bc460785676d658604e58ee78d3c960138ff69e499bf5ae6ed56b9839bb9d3d202303de275c5e8722c1febc57e2a1ee124fe50f4f3c5cb0ccfec8362b4ba0b6bfde140b72c7d4b3a0609905289fd92e0272c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023060a309c3139504e8c68eae77a04a9b5566e7518ca55abfbdbeac7f19e9447d0136f8e884839bae27a8200f05fb2834e802307ae50aba987cb7c96168bdb3cb682662c5eba4d80dc52347fb1ddff524616952a091f40dc7540436878a8cb1ee7546b10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009c4db8a6c3b3948509d23a0e0f8abdf757f9f30ba85624ef5666e789d7455a654f5bd0f083b08845472c3de00716736c02305b65a5c6cf5912948127c8dbc9089c6556af1ed7e6758b081b31fbc454a324cd0a9a833a6de98f472d81bab0b5a9f29d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100db451343dda7dc904cd463617047ebb2da743b32b312e43578973e09c91e7b095e7b0812e344305b6d46649fbee832a6023100eed760657234b020545646a17cbf8c521a21db74ca270b5891d52d4174240b9e338df31edda76ca8e4575715f861676b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ca33864d41790bbfb54c0e1d9b37d681ee44f9187a1e09baa280ac557851cb05d844b14527ee9b677f484ac5a60d20dd023070de88189260ee86e4d3cf492fb2f55b75c2850700a7fa2fa949f40361145aac2b68d86254b93e8b0c4a22e530a20ce70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e8c72f8ee2e745ce754b8f8df0b604e47c7077d43afba9ecc984e86b8047c62c05c2417661ed58b243388dee9afcc1d02303bc9bc061b685c34e8265009bd6d8c6ca234592422103b3a0fbedaeb2ef5b3a791dcb3710499039cdb518cef47f21af90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100df48e6debd450a38afd0c0a72b2755ab18dd7e9f2d7400912a65d2e0987e7b8e72397fba1545d1664be90da0442e771002304cdd0388a75ad4d3cad318ce989833809a9280bc4ddb112256e7c48be25602a6cc5fdfede28245f51b580f60a3f6b00b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc6432417d4d798b943bd41b6db8acfa77924c05f73bbbdc30c14138bdce81d8d9ade9e0948aef34c77a094bd6c0be330231008ac2b8ac1d1da9ed6b8e988fbf9efcf53defc4952a45872dbd742895bcce57bbb386fbe76a6a616c9ecd45ca167709f70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310086f9f789e7a9bd0c48310b30c500837febfb60fa4b74cccb5617c8373ece3bd7b1750a83f5c994dbc31370e17c9121830230226e1b02e066036537def9fea698d61cb51272bd1b5279ddcd4d249dfb5cd2e4ff3b78987b7d2b416268873b258524be0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301aeeb77881ca374c01d037db453e471b4a321c65194e232c5c0a81259cd50565755bc259b6ccfa955a3289e468a95d37023002bcc75ffbbfb4972faddc6b5aa0032f402238408d15082c9b3af4ca1c059938157f3599183084c48bcbef90826308720302047c435bb500683066023100fe9a15972d2d66435488fb9e802412e07f4c458f8822ddb79cd89b03d1b05d54ed3c6e177852e635e9e51384483dbd8c023100cdfd3abea10dbe72d8094990c7d528725c844738a59e7cfe1abb231c5d11e8924041cc47aab03278b867e06feb011fa50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023074750913f99b3fb3fd24b5dcd786c9b518004ca9e39d13ed4dae61e19e38e29c61d45e2e236dad52529737508016764e023100fc4e03603e7832c813485c0d9b261da86db08b3536e889fed04932291c64faf986e21a767d769dff7643ec2303b8b5dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303acafc6523b76a5e972146b06486e7ed0720471e02be57dc813eeb7355c6a9a2186b77fa55d5361bc0ff4e77783fc8000230233ae709f8de8fb9b3ad1a5ff15f9fc08376bdee6158111d6b879bebb49288c8b5eaa24dba4c64feb07931b76489920c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307495cffb2eb5286f7950bf8a86e9680c337a9e2cc2bce3ecc19124716d22f4c36d50f93d0f2554fafb46ea71c4a5e7d60231009cf1301274f7c118863795a2c96e012f3dda7ce0d98d45648ad3431d52d6ac5b8b0616cbc1e85fc1890d42c00bcb5cab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b1a823ab83dd3a47d7c39aaff4d55e8f28b0371c9830572dd5b91ba00f0863a2da2171133370bff87ca6cabe6790e4dd02304e9887084cee4c4c17e424b62282b95cfb348cb4a0301b33f1c294a9ae46f23eb4a61d392d94924694363121c0ac83f70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009a679b0849bd24e4b7efc8d88cbd24f17c9b1f3dee265e4040ab5891db672300ee489735e838f489889b3a1378559acf023100fb98d665a129d09f1bf7cbb57248bf796ae89b00cc0ed0430924d42b6c34214e12a9fa927e205ba31062d24866a38c740302047c435bb500663064023026c635efddec28345cb6d464d95ffea45701c763b5f88e1b758210ad28569d89644602a4c77acf38a20a3c7c8730cbf3023007622e3e32767ad1a355145305a625a5518c3625e58d603ab187558dd5a29cc700d4c105b12a3c0c3d054d1fb9733a560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300413cf7763f9695e4395d5c01a4b9341c24267ae4128ed0740f6d124544e2c2f260215c12df3edc86e22a6a4c39729600231009e2d632c0d19107ec04ea2da736a61b400068dc9c6cf7af70722007a381acba3925578f821efc70ca621b7facc4272c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023014a3b08456941cfcabd3bcb42b4a0277c619d7bf4d51ddb287733f98e4b6776bcc8bd5b66adff22e9ada8544dc5731b7023051b85ab392eec85ce7b6e1ddd002136ea34301bfe527c3ad265423068965b24f942d601f6ee535dc8df1e56f56e0728d0302047c435bb500673065023100a05b5084e89fdd73c0ad916c1e9aa7164c7dc0ec50f56b0e17f66687b10ff0c4769e06ba29fc87c697cafec008b0f57d02304f20a067d7f800875332d7dbb5ed06af9692ac61cfe8fba73b94ee164065553ff58ece33b9247b6925a15c1207f2a7530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a5d47af341e250ebec5f87306f4864ec9ca77458ecdd24645b858cf16cc893fb197db3f0da8de3bf74f7e7428cdfa128023038469bebc4bbe7705250bd654658a962c80f8145732f9c1e8e9564951a9e76c8e2dc8d0995a8be1f2a13ff789478cbc90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023077e8e8ff2d0061ee362530427e0f0ded254b0f8a3d9211e6b6cf35664f2cbe292454a43b20a8f996e9ac5d5f75640326023100886899b45705534147ffe90fa3ac7328d73bb87d5d5565801d0f5f073c8b557dc75170e038a7ad415b18a4e0f5140fdb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b95dd2f3de7bd550f63568840e9bd2530e0a1da575b1002a4673ad4e1ec0d112d6df520b483fb7dcbef56b45a09ca6cd023036a8f23cba8774b17ce4ee03a4a781a9760f914a50533ee9fd39524ee77df24e48fab38a5345f7368538e649def366fc0302047c435bb500673065023100cc8e497e9051362e6a7bca44b3afd4980accae084fcd3e6c7773f6f40f0ae15d2cb6027633accd45bf225cbeb948566a023018462a805ebcfc82a3a414ad58d280e686fc71ef0db32867b8daf10ecf13252567b7262452aba449efe78e7d504cfb530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023064cb9460086c8e4c9b92fe5567886c4a2e8a0fe700efa8cafb8ea5ddb803e30d5d57fa5979e54cbfed2ae9bf0c8bac250230522d22ec575f8228aa4d28ad03247210e1e41d487890fb274421de8190e0b998649d971959dfa81b7a9ef5905d63d80b0302047c435bb500673065023037252a23f233109daa6228cf9b382bbce6761f2eb0ede821c879a450e730c7d4de0d9a61de428812bb3c339a5dc2af92023100d21a474810fe1402b0d2ff62af6e4e7e5980f444197a10fd80615fd9553fdebd15fdd1d539895089f622993a454f91970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305d26f112b9bd61b4115125933a16906da436590fa207f7aa2c318b262e4faa23a3f98ccd0392acfcf938f543d029c09a023100918c8b14aa8f1d59b763f3a536ed55087aec4c70683fddb0053e141813a3b4af519d381ca8b9bc216be0d779ff4539db0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d7e2f38d2258ec3094b40900feb51ec3b87f0edae354d9da535c470dfafb7f039383538cedab25963381e34e486477b023100d3665f081c47005bca850a7de730d0e670eb576be10855b8802c192feffbd6ca644a838cb2ace05d0adc8551d30b99bc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230269146ead4117dcea3e1164f05f9a9c42fb9955648c91ea55b65a39f803154eb18e34e617931eff7772bc2d23e810835023100df44b31d2eff3afa7bd7550ab5c1c61c26675ec75a2a57fd2573c6b213a5ad2d50cc3120983dbae9821e7a278aaafecf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d98449c4bfc8f0eba0f071b9288580e36b96bba7b60e3617ffd3b3f167977f9dceceafb6eb0d337f56dc0f2cddae3ab02305cc3ae6bfea097ed6fb67992ed9534a5db8ca27cfce1c803ffcbcb08c04af43ed67dac9bc4c3cd30a4b945a8dd1e97420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023002bf788de9819b7dfb522e738ead73d2ced7aa8cccfa566b9847b43a198be647115af775ee4198f4e8ca9b32aa3a7ebc023017a8c2c038c94870b93b847c759e3c07858f41cb74bc413f9e9a429ea00c92d731db005f8aca4f55e4aea23009d35dc20302047c435bb500673065023100c19ffaf62c45b110e2c99919458eb75feb6a99388cfe557eceb7f34a946e050fd7e7f5135af6c1ebb26865ac0dbec389023059f5a0031e9ce3c8f3bb09f3633b77c8e5743ca9b98e6e202f4e73bc675b7d22e557316de6118a1160d0fc75b93056cd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b0636e4602fb74467bf803afff7399c5928bc71f0a1bd1170853f02fb54cfbd3529575f956ca9b22436f81d015cfbb1902304bb9129a8965d4727af22eaf7a04c3647e8f31c6cd34883ca5dd22a62f2be6bbe086d901a80a2d9f54c57b96351ea63b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a6845a103399635d2760feac86e3d409aa961f9a2a05540deff4729751f97593f0fbdebd1c09df7a74ed114216dacf9d02302edaca0380c63eecb664f555588a79a8b48bcb97929a77cfa9a579e257cd6a41f77c154d9bed8bed67ddd37173c36fd00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305f76b710495b7469f29b11d455e2d7cef1dbb8b00bb86f1ec226c0d42a80c48af59adb1ada5450034a2bd49975a6964e0231008175f21f4dab669442fa9af79ead08321a4ccf5e835dbb2dda75b8c165f365fcc7dab4d570e5306d0ae7ec94bc6dd20c0302047c435bb500673065023100f935ebc03e843e9fe6bcb18054d09801fd9a0fbed539ae4a6770ace9098d056d8080ebab1748ebe937684d3456851acf023035dbe5a37d9a371684c65871ee7de030237da2ceab6aca180aac853c780e9b2060a6dabb51bee7f6df359f83aeb6ba790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c0e21e9f2fed9a822936e5cf78ea77fdec083aa06b89fe73deebf6a5b1f86d0a1cc359f83497fe5cef5b72f86cb0a4940231008dceb9374d4936ebbaf8a7a03a54d0959cc0a44f1cb70e1286fca4455ae162fdb194ad779e27b237ada03419a2752f250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306d67c256b84565c3994ea1c3e8f3e7f1b0b91b58ac89cee32b21e4f619e1e19499d5f1b4f054c424b09f812dc3ddd240023100c8c5b4e8e9fc9a6a03426e204fb13a9b935e37c2f592bb05c0d5a374b5b4c678a8f2086b023b913e0cbf1f2127fa9bdb0302047c435bb500673065023100828e2b5f83b23dfd710f0367ac2484b196129de1c255ba91ffc451d2004bc3c25d51082fecd3b6cfc30f1508dcc999b3023026dc403df638b71f9b3d16d74ad098a05bfae13c42dc3434ec5256783fdc649e8988b5b88ffc9c9ad9e7a0697cefc3700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f1e5de55bf77999066b13fbcbbb23db7f3423be77df7c0b1dd0f0f1fd988a9552c3adbf2c1ff6c18792b5e9dee4bf7d002301cb690b819e50da8851687c8c6a251c58a3f93f179d8fcca00d459c425dc8ee218c23ab7cbe36493f4c2be1931563cb20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303c4eae144bb4e140797618a74553301aa6a8000bfb57d35512d0f7f7fe977dd4c24ace28c028c4d55b0d8b4424c21ac7023100eef250a73c5186e5b6c169a84a5d13b437b61ab7dcca44a7815130179b6f54d2bed33b395e792a8e389ee3ec07b5bd1d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f1e5de55bf77999066b13fbcbbb23db7f3423be77df7c0b1dd0f0f1fd988a9552c3adbf2c1ff6c18792b5e9dee4bf7d002301cb690b819e50da8851687c8c6a251c58a3f93f179d8fcca00d459c425dc8ee218c23ab7cbe36493f4c2be1931563cb20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e60911004eb35ee52730ffca2dbc7a7b96da8dffabb00e437860c847acdd2b96d807c23774cd98ad7da5867ba3b9699f023076e2cf33fb294defe8b536faad94e35b6323bd42c3aedbd2b0f74be1e766a4668f2a4a01398999f8bba6ceed6fe5d53a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310095f07774f40e827b7b2786d5f8035054a1b37bd6ba8d4c16aac908f3b2bdf51358e97c5dc5de0e560a58c4734ca740c3023100ac2d5e1580944e2aa70a15d06cbd04728788bc51e2dcb6ea1000a6707e40267a0030b8baf532cbb4e5bae08fa26e9c4a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c83896c06f646f620749fb553bbff6173b614cb9059eaad893658c62375545214c450416d0328fe62b232915ecd1e1e402301d2f870f85c60afcd1efa4ff134d18ad2b0c604d0f8edad096586707f71bf1bf9a8e3b34d51e9c14f19b4a34f6c80fdf0302047c435bb500663064023023c76f0191f010b59c3473e2730af55655e258f9f266cfe35cdfcba5b5ccac413be13460a16f296612163652a2a6688102307413805d83925d99d7783e1f338c8f31897131479f5cd81a007ddfce188a39de8fbaf19859960bd9e7349679709f12e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023037fd17ee4167a7cb4414d95107171d69d4edd12f0571973fd5bb48362413b776d3a1ca509ec4604878da25df91530109023100dd2b4fb6541aa427e418c6413cef5b5deab35ebbd17ca73194ee9a970475a54e844c76cdbe71efcc8512b864619587b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100db555194d94bd878f1f47e990d0c1a6b217f3922ff4febb41bc38f49a900ad4018e6bb3398e9c62d5bd61f71c1729b5202301a3f1205f6d5c43a5668610982f20ff0f78f9ae315a43ba20564bb24231e6265e8362456e541eaa4a34f88ee9c5864b30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023077218c12329cdc9196a04c233d39efac029a6215dc97f6f7951c9d7ff5f17fc12a545f68113f8c9c2dcbfefafec199a2023069e23807749c14d1df168923b7bb719c35a40fc29e479109c8444095c841888bb2787ad042cde3b875747efccfc417160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023077218c12329cdc9196a04c233d39efac029a6215dc97f6f7951c9d7ff5f17fc12a545f68113f8c9c2dcbfefafec199a2023069e23807749c14d1df168923b7bb719c35a40fc29e479109c8444095c841888bb2787ad042cde3b875747efccfc417160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023007c3797da571eaa850e3cd9f27dee5a5e4bf1588e0abf21665fd60b0e5c63bb168ef020d1d4beaeeadd47e1dc835f7fc023100f702f548642450a35e56f5caf7dc29cadda1d466f6b2346ed33d97260cd282403c62e332eaf73c9eda9b48a386face220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301a0a6c6657e0616808eb61d0657ea7624e0a8fb49f1692e8b152b2850d65ae2eb2fd93cf3b906e7c30efa03aac6404c4023008ff73c0b5bec0414263a1c9532614b292f4b8fa410654d2cc8c4b1a908bf0d6bce8973f6d22209d8f73835e8fcc5ab10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ca6b9e5aff7bf47974528c5ec7620947f9ed73020e69b44e9cee39b133a9093f40ded3ada09620bc6a875fc209e94653023100ca1fd96a863c930d14dcb6841094c1200005dda38998b3a7cc096d648fc819108fbee9373f84ea2dbfdcb2fef70741800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c16a04021b867ccae2715de39b95e4e6ed3c415026d75daab88987137c3f230082c5c95bfc9541c967127721fcaa09a3023100e308e3bffa2438b2dd206854779f709f02f07d7fc9ca036ab2de4fe953139d37ce04186e46f5afc48e26b536db88c4fb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e5f77d2707542e34f1c0438e5b501263e1d96c20fd6529c65f687439ead6d6d8732d57ea6dd4bfccf48d92dc35037cd0023077e3f52f5858f13edcfbb05440626d0bd5df66550415a924bc045ea0830473b4d940de11e926db234902406941d939340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023003823fa154f52f5512abb13be8b375dbf12dd8cd70c0e5966818b3ea75f57d17f3f28396393517f60a68ef7f4edfb0e402307ee16db0c974aaaa88c429b345dcf3ff3129e119f75111b1cc2706bf32ba6922ef6fd4a5486929f0818e3c415f6ee0d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310099ec8e8312b8f48ca07052ddbea22ed0ecbccd6a386f437447accbde9c05d4828c79e05603bc069fa7505bb30729b9e902300ede382bc3887dd637dadf566f6f1261cd19b00bf5bc6b2ec97ba555993aa7006cfeb3e357161fb88125d7f2fc995a130302047c435bb50067306502301c1f8bd81891f3c0b56be5a7f9ed7aa1aa6d42165abfbe8118ea9e48b907a9425d6f9c4b64cd6d40f7a5b4bf2e48f7fd0231008092e656d4dd432ab5b44640e0699643af665cef53127f6bd7e75416ca1ede2ab6c4d5a3da388744c90aa27ee2792f280302047c435bb50067306502301f9a020b8b1d8116c2f0ed08ebf2cc59bdd27b45d10050bf563075888080cd0414887400eeba3de7eafec8925897b150023100914fb77427fbfcb4fbb0bfd5591358a6896ce4ef99c274835fb065947befd57e25d97484b7e5840e149a0968d93eb1bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c7d2e6e5034b21b03b34cb680f0884d227989606af538db9d2fc585dd262e5e26936891d9d308f9dfaf4963264068c8f023100a93dafbae0e438c0b01828d20db2c07f8879f3beb6f87126d9d36e6ed2cac947b5bf05c499920bfe6ccb7a41c11ebdd70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306e4b694da2f96589817da0c0e9ad4e7d566bb4255307deeb97b96079ecfd4c93eb7336eb82cda4dd43807a4ac42ea2b3023100e24fc273d90f4d752378ff2990cfc30217a96c95e074ef28e732cda664c3e8f62010177b997a43682089a7c80deef05d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100df2f8269aefbe717adc97f3bb08fba87b9c0a67765e1a2cd855702a6191b9e2f6c3e351466853da65d5a95c6aff6a2ec0230564479f56dfc86f7cb098286ae4c4dd40382860ee6c22b3b0048b82599c98c6b33879425ba2148463776632de5fa840b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dd997d80288250c27e83ca471b37e08fc3ab8f86bddf3299db86a4beb68039be0bb9f11d6383dc167e41709ee056b2de023055a50cb50cf492f316017e4c45ecf03bd90e253304f3cc6f18646b4f823c398366a2299c8c48c9eb71d94a5d2a5d98330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b0a30d22a354206641a094738da8ad9d943556d99375a2d1445ba3024618cfb3af697e2c273848c31eed164a7cf8303902300dd440df898d8b00bf6f62dac185ba75bea12e97f20a83e925d1d0668ec3421abc363c0e7bef2d000b282979de11f8a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230341c118dfb49e38e706f1323fbf359ce619aac305a7c6249e6f8e9d72accc9eee336b4c927e361bf4bbb74f184937b1802305221c5ae8a43779d94519575ea33abab27816774b1be1c4795a805e07ff3143b950f0a574450d9284c3d36b8830b85940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230553740623622e5bca76f9ad7bce20c66eedb389b7b273a36668109a4ec798c5e33beac89b5ce7197134f0baa696de7c8023100aedcf776c65d9a3b943343db2ed4c4cdde2e66511155cd40b16215ea028a1183bc285c34468bc136d333ba1987bdbfb40302047c435bb500673065023100c07891794ca2b62c205fdf22e4bfebdf0678fcef9f6aeb06887879655976d757231dc9f3c7f9e3ce6cd8899074181558023064c6c6cce50d2298af54c4fd9cab7fa9fdc7f29c495a9402e928719d98e024f070fb884ab4bc3f7ec648e00340c0bd550302047c435bb50066306402305f6be3142e31c9c8f0b083808955b208b7947198e27f9817a718367363cb8244717e639ab0832476747fad2ed33e43390230009d7110b796da7737871fdefbe5b27597398c3e790d85c0c1e7f5f49613744920948350cbbcc075f22c855e5a1abb5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a4f4c1f8b1bf13ae71df5cd514dc05ae4fff79d8252cde376aa9fdb3c4202842305045149d924edc35fc70884f34d380231008ee2c80fa5f8ad9df9244148df1e5cfed9c5f224ab74866ad0d470824c6d39bb9b18033c5a91eca328676762b4de8ebc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ff46635af82c1e345ea4e43108dbf3cd489ec197ebde3f175c2139cb1dfd527baac99c24117e2203b53c29aec08e3a3d02306c8bd35657aff25d37716ea18dc59bf47401bf5c462774a546b120c7325a5273956148b3fc694897ce33c82987fb06520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f9959e4c05fc4a6689a5e98a9f8f8fae91f60dff5918b48e29e5b3fb2e523fb5bdb37d4cafe53ee3d2dafd5e78260de3023100c3397becfed72cae44e553886db2aee198cd6cb47668ed2366674cd863e1a22289dcb52f71013143939ec6025ca104650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a1ea55565c8db8e0d73045251bfc2b2797829f061d094c622b6db5a8b4c33a776f8ceec9a2081f1058fd5b78fc200ff0023100db86a37289eb9576e32e67ae399ce6868b7cae37901cebf168914a7eeb648080c38299ac786b11c77568b6137147dee80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e1e8b11407562d5ce9f53ba2d692e44c02a6dd03231ff93f97ece64c6f5df835c41851a990c3df4ee2b8cfd8428c2084023100da99d2eb24ef0ada1d8ce671db47d9ffe116c054a875c16306cb84aea9dbce31a9359092bc49a9bcceddb784dce4d9ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023036f267284bad8b38a73a69c949a37547b6f4ab66fa4e933bb24fe83ea476ce6cc1d3c71b4cc2274c81426443d333f9dd02303e8239ad24ad0ff2d7d4d35411d55a65e03c3db23c3865226ae06d03f08b63f3dcff4c34abb2413a7dc588a43c3e4e120302047c435bb500673065023100b29d83cda131713b8530a769c143a0081f0460627612bdc30323ae8e595cd34362aadd8dde6d13c05ec43023136660c302305076e8d96e9115b7ee32e02204244ec1d274c3ce4cd0edb3dfea9575268c73c9b3a337ba549652fb833013b2532266990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fb6309e38c0001bd447a7c1b41c637b9441e20831f96277c277ae62b6fcc625af7d53efbb22c6b363bd682aaa00e78f002301ac7ef673d5a41883fb58963e0fce1c46df37935097ebcc1454080b33b5403e8ca9f8803c33dcdedf46e3d7481e2f0790302047c435bb500673065023100ebe05713b0d444708c300561c86f54f9d0c2331ac467852bb34a52eea745fd1fc0ce544b72623e8afe5ba0963369976702307e33132811a1904edff2fdb9cf0d0110463dec34a7078ebad2d53bb7ae8bf41af7d6b5cd8c16b7db0e0de4cc057ce79f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301cfd04bf97b69f38e1f2e177fee099eca48cbde28020d302f8f2efbcd8e42450811a32c8f4057374da09b55e93aa68ec023100efe332f0af14ceef60befd5e285f127f528d042398d2c8a943ed599b6ad376a5c269958bd8461ce021aee16ce6a4abd00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230336663e2c662c9919c696518b8f06726d6ac4eecdf17324ebcb0c5e10fbf68063ccd7b0ac64f9b8b9adf763e1d85f6cb02306af1331018bd6f5dfb2a8f37cb21b7343ebcecefa2f81f485b27e33db36acf29f419330178ab70bb0eb30c44482ee88a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100deae282e38c431853aa614df72e5becf2e166162bcea35eafaa965e40e242fd8fca1724b2e374e466f8b77e069f1529f023100de507d4f5e54c80c4aba7648d9fc4aff42521e666e029ad0862c4d94db8c1f57581de095531475d525a1fd602bab2ea30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302de9af81b1bf08943fbfebddb941a1a52a3fce5b0110b06cffff9450d394974ccf66e228bee811ef62021674a625eb0702300e3ce2b1f9b650a36bcf93edb17f9404c6cfe8150f7daad054759f0244d25d957e322f5ab54ba9800156798683f9da0f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023014a1043f50031fc55766cdd77a79578907e106fb37d553cbd4a76ce8f7a48828d3a048ba5e5431a2d18b3d1e0c05429302310087f9345caea15e0d4c04ce9b7960db4e2dfc6a52e9de928b69458580603b598f92facfb5c4f22c3510f18ec57d4f714d0302047c435bb50066306402306a9461f7a8ed2a138b1b0a2015e95efb186d6a43dae129652e91e2f386804c12ba3517f5c4a04a06592398ec5edb7a1a023075118827cfccfc534a00b06aa8d2f4bde7b4332ff7b07b7d4b874995545ee36ac224bf7c498a04e8a25747c52d977c990302047c435bb50067306502305742162570645b513cd6e793f7e0b1417276862585623aaf71d98b0e84637e9bea6062d78b841c15b90e3fc2f105cc6c023100edce398b88c020a40e58f6dea8c44067239f0504957e89061d5ac6711e838b4c528be72c58a50bafff1b98c3271c1d340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ae1ae5bc096076b96ca3dd016ec7ee5e2415dce45a5e1863eec0c2e1260f749e391789698f236175de1c6aec330e49cc023003600d419360b31906dbe7db94aee2bb6054c7d39e45c85de8974e6e11c8e42fef0681f040895e7cd2f7e2d684bc6f1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305869b5a42aec23ea20fdb92460db247577fa4d21ec8b093c3922634bb5fcf0e345e44a316a4b43676080749a9fd2b9100230166438f5e26fe47002cdcae28da0c588cc09064f4268d2d410bf5b59e450a4830f06f356f2fd5cfc2b14af04d407eea70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023029a00dd8dffc7673a90cf222a250824e6ccac8f5798243586c0f7aa151693e19aed8c48e8abd4589a72d394db69f416a023100acf6a5afe7c20bb0fbf7e2a8592e069a9cfddab35d8cd43eb304259358150cf5da8fdc186edd5411034688297924debb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300ef9f4efe8ba969c4d2e8dd7b8a61ad6a759b10346b41028212d7e0773b2558eab2946cc80c09dce3a366d5612927220023100f289af72f4d679b4a218c28eb1954fb3b0e2fafc2c655a302f83f744d2a06961d811b1e93cf7d725e812b3fa4d6424220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304d39ce87f6525cd7e94b27b5860c84c21ac3d6bf71a7b48cc92b409db0a63daaa08414d1ab04920f0e74f94a6a20b191023047fdcd4f00beaf415e3a2ecedc57e4f45b83cd72a15689f9913b560a1734d0a798d27e16fad86307516c7c378ff185250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e45c8f607aafd38cf40708a286d74a5e3747cded76a9071677476c2bb06888d5abf9b3f36415d51a95a2e750d899dfe9023008b9dc01e39a33c4bf1155e15ee5d6f30bb6fb900620e805b4eb66adb2dfccebea98a687b581af8c34fd36fc4fa0290b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f246e4826fc1e133a70d7d8e5e8962b423b127218b8fd147aec393f3f493ec160edda30f538e759b5861428c6c0e94460231008871ae095ef796602eb347d0bec9a7227ae2be80278b7bc5b9119f7fa6dea3ed9fd51e285b254fa5cf49474712690e5f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306acba2bd0f482ae7d3f120d27b015e668229ba155f4655468ee87771c3c3bfad34f4efae32af5fd5c04ad0db87ff495c02302b85103337ae8a868037bba091dfd5b14cbf17969775a2982622ec1d0771689cce9b91d9b9cf5d2d0897e81ff2421e930302047c435bb500673065023059dfc6fb8dcdfe85d971b6514f940b9b3b3d2dd987a1d52898948dba67d6e8ebab97f7c50fe48a2df9f4242eb29a41bd023100970b96e5b476e086b3119c1a5ec09dc5c53b374eef0fe6b7a5058e6847a16f7d3ba5281c26715a1cb01ffd04a26bf91e0302047c435bb500673065023100d42ea48102d4b5549bcbfa9a0d0d938496c6033a6dbcc2a02312f32b87a1c47a5fd9046d42c205b207518c012f5ba83f023026acda96e2d15317c93576c21931922fdb472d0e2aee16fbee4310454c63781efe9efa69a445c90f780628f7d14391da0302047c435bb500683066023100c859177e04cc68f529a1072c6ead1d0dbcc927da2a087ae0980809a131180fa60d2d0f6cbca60dca18af2a956965ff54023100950841e4243ccf97e376677c6daf1175577fe43abca349705a7f5f0d4af5d08be635b838b1e7dcf91becb661d2c96be40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023007f99b0f5e748e13ce0f603c4b124280f08f09ca8c7b4877db530f1271c26f804902e9b3186d13e4fe58e877bfc9893102306a94da181c81d0fd35e52e306aa80c9395737095847d77af5548b9dad86ec5e98736c04d5e517a80a6643775af75f23b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023018568eef9f5e399db7402280a1888c8da40ea5f2fb51e873faee45aee791395f83afd99a906915e14c85da4ecf7f31c8023100ca393d98ca9490101be47438578845d4b102e8608b81ad2e6292e9af5ffdf790168a16fcb6f1f8dc4a031655990a6d090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009e3568caab77218b3b0f228983ccd8ead928d1177ffd545cabd70345a89d029673aa006af1259790003bf13644e815a7023100a8b5677601852814b6ba711e5561027c8d4f446861c83f8150c436de02d14a9cf44012d202106f5705cc61591c6db3f40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c815f8c820502320763a3fef907ad87baa628bb69eacc89b67801413873414a7b9bc7208c32c189e947a6160072060be023048ac255adeae24d9d26ee11830440f61a739b108058b67874dabeb6771f82b38b46ff4bc9172061ad50de97a801495270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306b18af15bbf2a97cc9b9306c22b0d9f821f662a9e71364e2ee5c52ae1b8d212ea38bc4374d13fd94932c793dacb55ad002307c7906cd1322108c0753d033b66e2bd143e751c68df3d34ed59f78ef6fca0a250569460d0e0655c8dcc1850a12d734360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305dedb2c881a74fc99b33a1ce651e5616c158a493034cdefc6dab514fe764eab4f446dedd63f4710d79db1a0be809eefb02303f94a4a6109f8df1970e5a8fcd07573599ed3a87e3449e8406a9aeabc202e799d5eace100a5aa8388a00761b6675210f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009e86fc62185d864ba9f590634fd4bf1574b2174a7741d20cb05222419429207961bbbaa290b9a2de2a8d599a68aa4430023100cfcc12e3fa00de158c7337016544c7e7c9633e24dd677537d0c3e6472fabd5e83088373fc851d5e53dfba8cf31a5e0480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c4f6e1b87fc90f63e165f1459e2ec2f63790a3770ba72a489bd2f81a4e5180fc04a660a4029943fbc8c095f0f09a2d8b023020cf05fb7db47e23867ee1eacfa7f755578ae30477fce180baeeae0fb3f17bc048d25d90a97ba2883dba59e5ab1e97e50302047c435bb500673065023100a489139545c9ce110aac8e5dd4ffa377524653f7dec53fb7630a3471b7a0c7cc39931663ce02dacdb1cce73643c8f9a102300bddd38e53491df5729b2b1bafb4e332fb452d0a6677be406dabaa2c15833bac5f0dce913b30845f1cbfaba6c8b31eb20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023023779a4caa61db8d53e54bde7e8f88a32bfd42dc90ab3628004639aa567ebd14d71d01d520bd3c9f0e1641b7299cd0a00230166827f9210c6591f3a3c1373db30c221729f36b8213b68efcd84e0e3d68d2182be4ac787d46ba88dbaff1cd6a3508f00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302e65b7eae81360d41e85428549bd831726dfeacc811287d3d06e82d7347c93e763bb58f4b9f46bfdac25d35ba843cb0d0230528b19dfdfffeef76e61e0404e994da0dd1d7801421935d89b55613a5d41feaa6682abc0de0b3b7530008eade364a3aa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086a702e7df02521556787553d546559a46c7c95010f7d67ba8d7403f43e198d3f857a705b11df96bd3c088a82460883b023100da1dda6c96d0d3ea7939df7a3ebedf817528b2d867864cbf5bd10e9ca51a2976867282a837a0c3e805a0ff364e196fb00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303ed562163f603f3652d0d4be4a78a5e898c9a3737d17b457b4e693eee35cbdfb4b51385d9bead8e987f0795ecc9fb6e8023100b570b23016870c8c670184cecc0a5260efdaa8c232f16daea931a0d127db6071e52f9ea299c23bc7d130391fcb4dce8b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6bd2853031e797c16cd549c1ecadbe534358fc79050e2fd1afe5cd252368353fe36b076fe2958627d3bb3ebd7ecf71002307aa9f39ffef80ff1f5a81e9ad834e78287e4eaf62a45bf355260a4cc511499f5e0ef88c9af7c7bdb7e80a942cb360fdf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304c35857db5c5fe7d7ed3f99506b93bbb30101dceadbfe51f5580c593db93d161a292477f839d988a345ae4b69a2e781e023100d657787d5b54e905c56fed8191fcfc98d012693e296696ddcc48254046c673369523f5ba2e118e736f1678bfc01b3d5d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f1e7de0e485ec41e9680655b137a356cf01a9b54ed795961da4b41733a31d5737f331e887d79e89506bd42de5a07f4dd0231008771e985b16569c0137f2f0e6dca881e2d73ae738d5e45199b28744950f172485b050bf84797b3f2b73e448fdba3eaa70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302c87ddd4a465586f7b3c4398537fdad9cc1e644dadaa767f7451df1f1ab0e8704a90995060d506a9c75f6d8abd244fa1023042db770edf7e963a7da44e096312dbac92d5ac7d001c96139f3a85077475a4402c200ba4249c2d89fa8717800752c84c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304dbf7a38d7377d2c1dc7bcc252c02884aed74a80fd213b32a4b8499c44227fbfdec28f4e94e369343ce4bb1e85342d7a023100ce38c37623aef9499ebba4daf46574e225aafa9d9ef722df073ce092366fe371bf29a928e1d56d124f7e3dc93ffa30190302047c435bb50066306402302a063b2542b49e4f9366d350f7f6caf7fc60a5476430bc710402180b8bce286ac0982780613ef3f88d9d9639a52822ea02305ac839b2043b843aa8bd3b1f6c0901f44c84ac7cacfe74d25c48630bd3eae32711475a4f4f5f77aa60a5e09e921ffeda0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f930578ab03bdc4ca6634c41e13115913c0cc2badef67386c0fd21aa78fdc81ea0a5ba75b90cf17548e3f5a4a98fd1c202305059ae24553934be9b1692a737e4b2e0053d28036487c22563a8a3a22241938cc0523c5d47a9cb1f1bd5d06b98b634790302047c435bb500663064023036568cdad34277edab7532efb958d40bac644d9cc419579f4965203643fc2d013c275d3c699ede36f4902a5ac0f7c933023037a4fc9398ce5b20206f631f325e1a49ceec4cdfffd163a8b7cf3025b0fca1a158784d5698a5eadfa128ddc4dc5298160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bf7f78279473ec390f1f17e9bb653602c18c2a22be340a5eae3a40bf1b4530c4cef0ed321b499d18b353486818c1cf5d023100e41487f13a0713a1e5e434111a43b73d5b3ba13f35d8ac8cd965916f4212db13320049ded874fbc53d8076256a8044c10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306e249fae1525db9b1e70769e289ed021219e0f83535be3929b7453c9b93701862e29c1e052cfc892ad954b86d3e8261a023100a3a3be26f34edaf2acd54473a427a8353bcdedd701c7f9fb35afc2e357be33d741843d2e9f70094c8eed3c540b7f2a140302047c435bb50066306402304ff11f7483b9330e7552186ae75bfdf229a41e6fba1557bab1104524beaa902cd4d7ef37ab363fcfbc910ca229774f1e02305dd97da39afe57d3d0d596b6ba89d6920b7eb4bfe0fc57e375f7cbb2e10afb75982f37f12d0b42aa3f33ea561a7c13a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023036b87e09864a7827e1c6cb9717d13a18fd7a72d396e0cb922960ca825298501dda7d3f10c1bebeb32aa7a10fbd6f59fb023050af91c9479a6acb59661b0fc4ffbb0350c784be58f3a141674da36ca053dbab983f9e519ff65f19f0c39d43feb31f010302047c435bb50067306502306ece67e816ccf456bf2ea54ef56a9562f1ed8e203106727171b80105f6d784bdc04678aa2fcabd227c7ad626a1950de3023100cfe40e1708bb59d154a4382d6598cf47174c55002a75bab420650d64607459557256612bfbfeccf115e9efb1c1c6d7750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e0aff8b8dcc9fa6cf2022765dda87a80472c1c005e1d5f5babc1fe530401c90f09ccd4435c6d34ea3b76dde20bc753b702306bbdee9149f94137a4f61134bcd8b4eec4bb4cdbcce54b9bd76753a714f36060cf22cf672b1f546952df068991b2dd260302047c435bb5006830660231009f9abeaa87ad6e9b2d00a09b6d526e2a5801523d04db9d4c6ee49b625f8c09dfb06a197980eb1da3f2bdc9faeca732ae023100f5c5fa1c9545a7d311202c0fef32fea2aef887ec27db983c6f49d7bdf9e24036d0ea6f0b9f830bbcf0e5ff449439e4e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306395b57c67370320809af4031e7e7f260d4fd2d3070a5ba2b63bddb0c7a069a709a584455cda0d6dc338dd543ff9538a023100b4ae58da5de222a579d45522728dc09121c82a7c8c9f1db21a9607762a9b1b912eda71488eed3a2cc0b583abc40db9ce0302047c435bb500673065023100b5fa5da5ca47b36e77f95627056f9c015d04b3471b2254201969f35c2353f258faa9b4c0c04edf8dcfc5fe3f91b79153023060b713cdbb7391c0ca7433dc2026889fd23f1d3d273ba388df67a03f4cada4ac91dbd28120e36e4f4c5192eb43c7656d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d5ef848bbfa93ab6311b264d97532bbc2fc67eb8f3d0688d7cf625b53208b1b80e15bfd4167c2662af264c236d7e96c702305886918b8c59370096ea70fde2920a84b8f5a9b34203481ec29651272cf452dfe46a1ce5982f9d13cb5a37fa48d5abbe0302047c435bb500683066023100de3ec20b931c155aed3be72954061a582b2102afd2d591066f9a2ce26ad01e3d7d31da70a1b628ab8c1b23a534c6c0e002310085268448ac9d91a4b577543911269ddf2dd495c2c411fa245cf8c88017f656c3ef02c6fef13d8844e1dab559b4a972150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300247eb08b285b0c301d5a08b38ad01a1824d836886cbbd6c353613cced588ba8cf13f03875a354db9a437c4e10e193ac023100c07ddcc16e65e4e31466b9772bff15ee5d2ac9d42a26aa889dd9278f31adac35194630e62d895cadc230c5e8df642e6b0302047c435bb50066306402306e0bf3bab5a82350e57fb70b919a8ef72e78f0d03a58653801e3cfd1c70be3d2442c50e27c9410a8f75c5751115db12b02305dc40da9e5499d1556c0704fae85cd4f2cb1e8b86a1c3ea5e5a1f87054458f88a6a521da93d10d4a228daea873d5471b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a90269b82235669abba959367c38a096c7cfbe20a30b7cd770b382787b50c6d76b0772544f96c3bfed7e6c34f23380d02306b6cafc72dce81f7be5d7d0b37ed1535322c7d6eda2e4956461cd8a8139d9e643068672aef9b74714b223cb6833167620302047c435bb500683066023100f854e588d5fba68e9cf8d94f18db1de28f8b82bdb5cb3fe1bacda205afba8a68517deeb5718dace251e225a292c77e12023100b87eeace16d314587d52a6bfe99ede8687840e4422e1836bf37f934fa3b8aeb360702264e05e33e729b6fac5478dcd350302047c435bb50066306402301e6be3a9652bc64222d56fae114f11d6ac634a82e2c99572ddd7b839cd5108a5b8b7afc6aaacb2fcd4caba130a028e3c02303dc2db9625609bff03a7401b89faa3134f15a7deba27294652ea884f44b89dcaa0fea336f19e5840af8827792670bde60302047c435bb500663064023061ffcf25f9d43cf7f2df375c9fb27b0ddddfd6c63c27c3976365e0b05c4f44ebc804a91445e2de91e915690ead6e4190023027234b4115916dc9a92fc6bc164197e00e6a2a9378124bace0326e563d32f55256c233d3405f5a5b35757ba2a6ac69e40302047c435bb50066306402304a64e6f22cac9a4e4af593172ce22ad2f2a3ed7aa0d17a222e7c1147bb23314dfdef588755368b33f0e87b2303a672c902307c7e268de050d0beda0ee1aa0a9fd26177760e10f37f1ae4d06e6460545f3bcfd8a137e3a9d91674c351a02ee5ed8d940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023055820399cb2b2e890939f633df90ccb699ca7b33b461f7079a1a58ba5c937b879fda920da4ff5bace6e101181f29c34b02304d24d302b2bae49ba46b993404084e1cc36261ba0301de88b4160387d20079c16c2ca59a2f0b44478425adffea5fe5860302047c435bb500673065023100b9dad5a6ea85e26993d8e1282dd57aaa4dea04ee420ab6078079e048b588c8dfb8c02cccecd1f7f0750f83deb2bbd659023061d1986c223ce06c1e182c3d7a10e8f1dbbb9898443a52471ef134f6491e9ffe92f6290297c375d047fc3361e5f5e6920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023074b25ff95e7359d77956bce1fdfa3719b412151b3a13a3c3e4a986de1c9c5fd817cc931a6acc76a16c5ed931c7ea920b023100e732f5a3f22e9f33957c45fae80e52397c28637c9edde1fbcfa57e6bf5261a5a0c9be750690ab9f40b06d4f12b6bcb790302047c435bb5006730650230655e6e227b49ad5fb383beadeee69043373ee60bb0c58f87f132907378a77aacba8137f3b77762c2636a3a5ffbe87e56023100d38c41bf96f828527ed7595041438e2f0b340ddecaae480980671d4cd22631f479455b85703eb012221f03fd401ab5f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009a5d88401a029de8499b82f1df2c8d2639fae6185da5122ba0b569e3960c8fe7c8d8cd65518f1638d507089c47b403420230567a35b7885d722cb3d13941637c13bd8101b0a5f8bbfce5cc958cf102c425b1e925df2e434ab4a80b701ac02d187c140302047c435bb500673065023038288401ae0707810bf10d6830d94c4c48d7f6b23f2a5ed4a4f7b77e8645d2ad68beb818a2fa76fde09d9b84398fd062023100d732f883073420c5eb004b30c8bbdc6795ea3b5f699c71c444b6727969e913bc449ef2f958feeae5cd68912085e22f410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023010a7d2cb987668404870ea72e3970d31304184c783532b6d3b03b0b741254dbe9b5de2925503ba705e0cbc0bb3b00c2e023100a6b6e5a91787f47204f0737a0a575f38e66507279383cb69b9965bdff4f31d0bdeb68ec78965855b2339767ecc5c8ea60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb07591bf206c82eb606abd4efc18dec289931ff9ceade919918eed145652e966a016e6e7cd1e613cb40187fe9a1298b023100a9d165d470e901713634f2683549c1abdefde83c8a24ff290a927949d7bc6dba98f5842f5ba0ab4c74e6b24d0477e5d20302047c435bb500673065023021f2620811120226a1056ad9a070c44cfe53c2c61b956e988073569911f6b15200d5d4e39e8f348272a2b2897ab2894a023100c303bd4eea81d2f825fda6f9f93035a453e7d7aa7dbeb3b2ea34202386bab7a80e46981724cf9497f5b11988f59de7b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300bae136e1253236aa58a4933769e6bb7d716fe88ed4c12d42fcaa6fffe5a5499dbbd945ee5e904df12526a0170737eec023004bb2e0ca5645694c0ac6612a50eb7c066d4e913860f143575703d699cb2bf386be3680b8d176a27e968896a53f46f240302047c435bb5006630640230199aade626057c63febf0b41a80379a413eaa88fcca9c25031d54943f36554206c6e9b584ad0177aa6827774407fa04502301540c1aeb30970415b26d6ef712e55acb7b294e6a2d78e1657ba3f834ef49da0c3b682249b275588a72b9784475f5bcf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c988856859fc568a4d9bd7efd942057615a7f46b2a3fe3c3b675ad2b507b9690f84db1d13deaed61e2c9b4054eecda3f023100e7e32ac18eccf6f179466c07ff1f7cced2351b709b450a01992c1edc8809c4060ca7c075b1480c847e1823dc15b6e21d0302047c435bb50066306402302fc44107b8c6a6d5e503b422b6e05066dec230f4a747c52d202eeb31fd53462778d8a57a41e2ac55962a0ac1efecb136023055778cbb98723ac43567bc1fe332fbf77f292a3598f4f644f6f3a2c2a672a33dbe3ad25e15995c296eba07bfe5643a530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023014ea7e11e3f052f770872207b4f2ec578acfbd7b205fe51134570712ce4207bd4fdfcf7778ada0207ccdcf3f7435b1d1023100dd18eed8796119eeda2669969613809d95eb34ec26d4de055e9898f301839bd38eba047f4f072bdedd18e7a8a75065800302047c435bb500683066023100e22c7a726cd83c80eb0a6c909e0c02e970016e7915f2dc07cf4d9ff57a908cc1ae67b5141600e6733b94b25eda42f93d023100ad2ecaaeacd4069518b3a9b9452ca9ef22ad515857bf3ba38755528b28beb9f2f9a7592c1cb1fe7cce046617cc74f0780302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023066583ac3938c19233503877d3e3d41ac9f781b57eb455eefda7da6736dc19ca34315fe6f57f8aed1c627ac5d1fa72851023100be6018944d2f89aee12ea2f6128a97371adc0aad53a92c24278fe6c41ee210b8221fae8dd107334d92bf972f27c936770302047c435bb500673065023100c183f0239b7c515135b60347111d41169b3ff5a93231320b4ad9984abf81b1957d45931f8e8f79f9e59d3cfeaf272ae402307d3976b80a6d268c0a4b0d8eddb16eaa7b09e985ddae3022830d596e8d40a9d18e7f64fa29da97405ca5b1d322d48e8b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e1b5a89cc23dd25b7912a81a6715f1c9c3936f3d6ba69e237d7af9aec663ed46f51525e9e01242c3653edd78c529115002303c62257e2b4ec7efa0bada5f2a42384fabfa60b61aad0f45959623af9ad1d2be75e839290fa72237e722a888790850a60302047c435bb500663064023028ca57d4b414972c2b85ce5a9c7751fd180c85dcccfde3f7c11dd9a75b20f0cbe99e4354f86eb49d26cb7da4d60562f902307e7adaecaa4a53e082da94217fea4d73202f1951468e92841ad87afcec69d63455a805fd9441d8f43648aa6bbcc5840d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306ac14e4eada61bf1c4d6b79001c052a3f75c7b00689360e6f03c348160302bec49c9eba8586ad04ffeeb880487e85ba602303afd47319eb50d00ddb56c056c75ef10dc4f4f0fd0149fad584e755931270017b47ed34937b1c47797abe8ec9739b4820302047c435bb500673065023100e77ea3b3451dfdc2686d1d3bc6a8c7926c52faf14807d8dda15c963305e35d5be10a34423ee72e6338d17129b8c8807802306bdd88e3b719c24b8d3aab0545515c176d22280e44cf54d9377728b15838a525559c9732fd493befc7a0a6ced239038e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0103dd70f0fd3dbbaa2c889c937053a341fe89ec54deec05699b5cfa1006cf4fe0d85039d2e3eb9f6efc21c68e7b6dc02310080db892dcd607e010fc3f299b1adca3583f262253b039f9b717ef9c33713a123c2860cdc248c24aabbad9c36b22329500302047c435bb50067306502300de43722af8d56618b56938740bdc7911740eac8504754101833cdfa7e3b2f8eef9ecf8a1876ded1c4f28a41b4317ee3023100c05cc7eb70cba9850a8ceb5d937d7951010a5067caeac2d684deab1a74c4af4a6fbf9b1738d7b774768683d8763e85ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ae9fffebec9dc683886a9de288bdd03b39b96b955f4c620ef13ef21c26413ad5f603deb71e28adb827bd97bdf55fd2b602301d73f40c8e4d7c782b92ee43c18cdd236565a662065b7bd669b21b9a260a56fa721c7ee1769c769ac0ed84f9256eb1720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230355e32a2914b7bdf5ec04919a42f407f31001857b5341da5a140084a35d52917efedd7862a8b156f65cb4ab776e896af023100b241e3a99b9391422ab18d0edb9374581ea1a193419590da0c9cf1904fd7deb2cae45ee8d728c1eddfa3bf7054da36210302047c435bb5006730650231009e848d134ba86598c2497bb20a240b883e200107b6927105a2a1bd107783f78e9fa28fea6eb19a536ad922a0c9429da502302a0883386206f22377e827daca458260c7cb1848413b9e32f339c0edc513786b7cadcccf82c591d9012cc4f0eee010a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bf472eebdb6b4864a2b2e8d8e4a445b66e736fcc9440abeda1b2365dd55647a239756edb7d21403292523e2b0b8e3a98023100bd1f54f5833ca636a82f810f9800acf06a520bbda31f4e5a1b9a4edac7d42ce3620c52d7cca2a2845d6fb749a8fcebe30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305a451470ff72ee6ceb23ed885bb5dc1114dab098a1940b6b17398d8a75f69872433d206073111ad660861d5a1c74332b023041f4c935ea072258ba7f8ab2face4786160aa01faaf494c463b69c0a5779d38ba5277c0f3c2db4d862d961a4e0af66720302047c435bb500673065023100d24647f003f81f6dd8d93dbf77b7475bf22433c36f3327e22cdf1d41bb2ee0c666d1f83db6f43dfe46a48f6c02fa1b88023024cb0ddbba80aae332f5552d109779b1d4b81a0f959a40faa9757cff9dfd201d343813a09b695ea0c9ef4474d4d0e2950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eb563404d10b5769494517e764f0eacdaf3b9520ebab7174a358b57cd64133b8e638ef1c70a001c2e53ab32bfd5e8c11023100c1b8fcbb91312f65c3fd4332645e366f470675a5fbf2b26ff23fd1fe54b929b55a78ad3df1ec6d9c822715125e0335e60302047c435bb500673065023100de60bd9ea6865859070d628b2f46c66b782d92eb8f6673a0f3427305f7e787f9169954520568ea8dfcb0e3ae7ce79af40230102a526052ac70d0192f71c072a45f860b19da17e34b0a570601d2cc1bf8127cb32b2fdd495023e697e9c8f9256003b80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b7ee94dd2e65523c4b9a94d837c7e07f07c9231102055894218f64149005f66eb5feaba23b25589268deb69617db42e6023100b8ea7f095a1de7190877fef8357e1c6ee23effef47a01fdb41bb28beb382e38553a3708134c6f2db84f0166c9b66c96d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a78073262060f9cecaf8b37f568d9752dea56262e1781962785f0f44f86e3ad47efc09e19c3eae6a071798edc1a86d74023100ce2926a602851cad3e0245ed04e33a51c29e9fc66359cb79dd404daa9a01c8fea994fff9251a52ea3a0284d2cd8d9cad0302047c435bb50066306402302f35d4ca1b3c82663ca3a58c76ff0e42ce4c18a3ec5e959e8e165e59d40386ed93a46517b2ec92b0061e34aa176b1826023015da395adf0b0f8109b4b8d273980586a657b120cd95702fe3aba9cdf1f1f6afab894d0220da6147c51111bddefa68510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008425732f76f881abe2e80dc0cdfc27955d221c75481c315ea72c2e4c58bd87e1f45f2d7d1f6e373daf610cd6092259bd02302936379705b8ed51042cf3b1e98db762c7f6847d86ed8332345fedb8f7ae682bf2f9652c74728b86596948e4ff991e730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b45ab65868570d20f859260b12996415813aa58a8855ac72809f8e6342a4e14e4aa58c552179fd388dcb12bb6e20abef02310090f732a64997be889188b9a6d127f95daf997c250f4e338f505c5620c964d9e5636ea379c560c2cb387f5c4c3c1373d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023030bccb640090a4fe9c17c4b982438eadbda87a9dd4350f8ad920fc6430e74b0620e1e753d9f428dc053da069ad216305023022db9daf2298661771424da659409134d60551ac322942f8c4ec88898b9d75524b7b5731b2752d86748ca5f983f6fe590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a8ccab29f25abd5db14941d55a398c8cb2e42f980516ee676dd0157068f3c7b1dc631c0293c8fe9d137dcab5649c7ef4023100897d22bf3eb8606d6315535df04ee0168306e3522ddee18b525da3c6eb87c4b8acd4550f94d2d2488d7ae43516a1e16f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023035b34b31c9d357a371c08f0254ac9352ccc30bc79009dbdfa0f555b46b8f436833763d82c302a6ff705921b581021fcb023009b3fe1ab63bad1294ca0cd87da1d30080e574febd85adee89de26f0f02d5fd0403093bc8fe204cf5ee893a351907ab10302047c435bb500683066023100ca521377452c90033085b850a62ca394b7a42b5ba319f8cefb3e743954cb23fa3ced68f491ddef5c0ff0ca473ce72555023100c3339c26753ba6baca8ba862d2acd92443d452a8f26c8321ef9efe6aebbe457c4f757a3019646f606fc3e9b9b32bae2b0302047c435bb500673065023073f2f9bec897b47a32941cc49e98e27592454abeb901e673591bf0dda795063c6452a149255d4fe3243ad2c9c2b50bbf023100a5fe3bc8d48ac8875edda76d7fd8e00bf50aa19e61cf4f016a4182091bab7d5f9ba3eeb4c2f3c0fc2e022047a57d15050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c441b06f1ef287566215fc04eda7eba772deb8d53ef49f5adc34f022f316a82f0d5f1d12635191b9ab1323ef90c4d9a3023017ab7c981dbf053791b74a3b6f7b6ec969598dbf62d4f482e5186bb33056ae740fc3e833f7518f8a4b89138c1b0fe2cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023058b7a4878d665d6e9c85a1f5cae3b1a423f80619487ec4fa7cbce4eea9fa77b61ee844ca12aac37bad4f0a3d4742d68502305541b5e606435f587314dd3595b7b12cc0a95abc6f1e369efabec70fb9ac705d50247069998425a2fa8beda1ff9327580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310097d8ac83c8a43148fe9693607ba68311fce3e88f860bdbcfca4adc52e53fb79e7877f078546dcec21210beb38d00f7080231009ea0e1e162ae285780b016c70fea3ac6656332a0621abd9a5b9e3c4afea2b9995e1c938e7f9fc7ce6ff76006492d77420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023018dc8db2abb59966896f95884b87e9889d6f834356321be99c8cea2c6799fbe85ae9a2303e8827b88d315a844e03e34b0230776d80fce96f03f1d7df364489baee1b7925dcf25d22baf5d4ca6faf07b580238da36f48a0eb552bcb8110c0d8fccaa60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e193aa1127316064d0f5c2e7054b1b5ef47f34565a21a4167ed3829f821d9fecf638cc32ea7df3dc9799ea9d34158a602305e5135e91bedc2abae8c307c092217be30d63b87c9b45baba64ca950dcc258ecf96832a5abb936ed80d75164030643f10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c5d01b63fc89caa0de09fce2a675e4919ba7811758467b638cd031ee6eb6875d46695505e9c4677dfaeb2b2d7a01fc5602303144b45091c17c7019ced57eaf0b14bcc971194a4c2754e9890427872359db87fe71815cbc537f27309c6b58e99121e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3e7a9b90a820577b0d2d9af584125056f121e24c6c07bf2f9344e944538acd9753c9041a1a63732ae0d899912d2c3bb023100dff2e3c0b2450c297a399a8877c8e0abd7e3e3a194cebcdca4224e7ccdaf9ad988a55c03fba8de3c7365e37bc4e8f8a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305842c774cc5425afe4abf3f58784180ad86138af61b2823f1d9c57e5e36c8f7342eefd73f487a71ec1c079a068536983023049d78d20a64990e4c05924f5e0e9c5caad8522803954cf5df04e7604e29531799c81f8c4c7825ffca2c6dc677bd5b0ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230417bf3943f389a8c7f7c0e4c634a7a792493697d676e0a7d6c880630581e93650a238e0099680049f5e0d97adaef5098023037ee7486336365b850b1a451c2436ae69c82238761f716969c85727d4529feca866699dc98c4eb83f517be543ae1085d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023070bdb0171affc210d3c1980a97ffd626f92665d70510b64b1375e212791c32f0f6331427a919bfc2058e84958c08096e02307bc3858115aafb2870444491e781978b17be58f5ba359989ba101354f296907fe6096637fd63e64fcaf06bff1025cd690302047c435bb50067306502301c6a3b37fe47e5289112b62c2775d1e7a9942bc617888413910515e7a288b5f9a19c204feac16ed59df0cd5be6d187e6023100fc3a20611c5fd4a974f8f013f230dcb3bf6595178db14f2ece979263cbaac75eea93d5365ac31658da7c5cad4ba918c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306209e26e08e65b082206e0d0a1cb86952b121c8b2b16b2127fd53a85954bce6d9c4676ad690141e8bc2b26fc2d15544c02305468eb43b371814bb0f530eeaa4c3674900b530563a3a52f5dc35f835fbb69085e614711ed0ef8738321de77d29378ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304b2e3e4edce38afd55d198691cb87c8a22674f7f4e7f5236092323d967f3c0bebab92dd8ca3fea8fdf1b0a51b1f8943c02310097e37a2cb17c77558c6ee95d885218033fb5b3a69fb09084393db1d1c1d8c49d6d5ef716a6b577f5be2145e0b4dfc45d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310091c912a4932bc6f0a5f0d6a87fb4f8d2b0e80fb1d739b87988eeefcc894cd27d8ab7c6d9fd5b40604febf2f213bba4d60230797900144a30a0d0d53dca125e23cd0d840309a5e15a8ada4731d87cb9f27b9e5a973bfafe572c866fd1e5099a51924e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049d3b4dbaaf10cbf4f248f2060854a76104859e8369f5d869646a2b6836890bffb902357aa5cc327493225f8e0871d6e023100e5830a095cfdf4ab09d8fe00e62faaec7881ce410be57b900e42cef2426f858deb9b272ab91db6b99e898270cb2e14490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300ecde87b5ccf13b44439c027e8bb55f77a6c4e36594ef8edf2ca934280f7990ddce265cd246507f10ea04b318e9dd970023007654cab1e9564562dab4b2ebc051e02c57efd34231f4e4ec4bd7f8ee485cfc862489c88ec096ec781326de0ea69d5f40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310082b88a1f8467085db07403ef2c6c1835f4ef36e0821d7b31aeaa6e01922f440210b879a64820c3d71fa4f418698525ed023100fe98167a3152186afc7c837082721c26125a19ae39573538100c042a386a165f807bbc8bfcb18dc98d802a134c1e08750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023003032cb4fd8c511f703a6f8d7981185970ba27318230e5059e1e7d2621567a16fce55bdf5169849a5be9d394044f1688023100d0aa57ce91b1eca19d85db69d43daea1052be0692195f902a075f1fb5a481a9a9121ca105951da7f4114cf8b6012a1a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc0a39f85ab330894f82b4d6b153c45ad8a367e5f1243b4e2056f697edefcf45b827c5e0e379e21e420d5136929ef886023100ccf92b93ac020037f4e85af38bb58ec434c3cbeefbd9356efc9832b25dc9501002a261409949332105eebaaaf69c3c980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e7c5c7f4966e275a23f4a30d81d74ae614820e4452d888d1f6a0f50ecacd0c1f11f3329e9c099e8231938ec6431d1f7023044a1238f3773b82e205642eb93e2eb5098d18517d975b1a1b384cc2dfa0fd75cf10d0b602f1ec8b08b4f714045cb5b9d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b1821931eff96b0e5d25b91ca43fceb2310e05872151bd410d1b1a07123f6bd254dae079f5799cdf9934c2289e2f831402303244a66db34e2e831e5097f474d07eb07f574c4924e444d51d7922909c060e5817798eadebfe56b466b92fedfdfdc4c60302047c435bb50066306402302cad6deff4d904389fded10244ec592048f0356e0aa4a191bd429ebd77c3c90e15a85f63213183b1018cad16c3c748d5023005ee83ca1e5e301a2fa02371007025c454481d0edef254283087e165723de5cd5978e3594c55d8c0cce785f0d86e13400302047c435bb500683066023100de5f7e6ae104a68df91b5f10a877c832f810ba083470680258de26b0506deb43fe5b2aa4023d1bdffc8cfe064f4459fc023100b906dfbeaf40cb15cd64d2714965761e6b3062949b817ca51273d3c096144f2e35671c4dd27a36f772d4592567be78760302047c435bb500663064023062280be6d9128c6dab53b9445a72bfc2ade89f8dfb309deae7fdd7d8edfef831ecf7fe67137239f6a0abaf5f479afb65023061201113e7ca991fc2efec481ce4ab96c3b61b330333bea964a2ca140a9c3cd2c5ad8d70b9532f11dc60b0e748b89d430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300a6d22b48dad8dc83537164d7f73df889ac07993e1dd7049251e637cfd7c5f34e4d693cfba0569f77415c43ab999d1ce023100c95043726dfb9adaf1c1ccadaa3a8fe7308f19862d36c8274b65dc7509036b46f155c4597b9e4520c8a0953aaf2273d00302047c435bb500673065023077cd592675ab38a66bec4d0866ed1672da09ccf6365bf64ec28c999e097627faaa87c6dafc96c8cc99f3c805d69a4c05023100ba24f823ddca84880732cc31f836e0cb2f47cc91a3fdc123b1d4ede0e57a5fb45526f20e72ec84dd294e65f3945c4f930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e5f0c1400ce9bd0cba5b6770e6e31616879b3abdcdf8a095337e851e275971ddf23ba3bb410597db4a682db8188d4c9023100fb66cfa1888a295f755de694bb59aafe7f7859f13aed37954b7fb24c09091667e07d6e244e89808de92677a7731ed12c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230073f3a5c57eee75355dd4b950918bdbdd22b77b9eb0e4f5db2349cbeffb107a33f693887aec3d1e1e5ff46b4ea2bbd83023100cc9d606677d74ee55cbd25f87f0bb8fad3e62b046202b7040fcbf29650d931c739491012c1aa7a7fdb689aa140bb36100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230439c0a75748456c45e06ebaf7d11800d0ba59f4e2dc00a0966bcb9ed39b22f1d393c6ad1befabd7be83a1f88e784472b023100cd79ab57ae817142f090bf38f561c4a3d1089d4706dc5fca1c0ec92dd60787da55839f9d88d8348b283f549a3eb8ced50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dc03068728d0966c8cfec0e25a97e351fae8360f64fa45fd1d6fa1288ff76984797c92b775b52d203f0119df5ea4a07f02301cd8e9f7d5eb16cae9d9f65fb4182572bc1a58bc54eb26823e97c76129070b0c2dfc4ed4775a232a2f273916b1a0e02a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d5a8e702776b8d2a72c09a9c7bcb06820b51a65be1297dd2d346fbf44f6085bbba05e4fb1e4e0a265aa09341c87b39f023100f7178c867d97418143b6e091e80c62967ecbf7a4f5804670bd7e0182bb7938c4264ebfacdd0fe10b6d0f11e95287ec160302047c435bb500673065023007f14ca6f253cb5db7c5e1eb69b89cb2e3397274017e33ca21ff90fea4362848cf7ee896df09d65f01d03eab7f37c873023100db8e482bee8375cb0beef3560078f3acc04dcd243ccc98479c53b7452fe05c65dd5b6f44d1799198259b26d7a7beb4760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd73c85cf67e2011c41eb773bbfbc54805da76b4f0673d1dcf491726186441c0ede6e38f5dc816a9ba8b28f69352b52902303ad54a20714bfaf4c066bf1a6a7a199bcb520bdd6edc3713e62590a5ef6a2eed3b5275e81f94fafc7fbd9c5f2b7f15200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230251bea41ba253968906d4a451c13d969f312b5ef2d71c255b2d9e4166efe0eb5ad46d3905c0ddf90175a4623542f50b6023040de310e70b83e19b342f031e985d855e65a81f79769cd592ffd1a58989dd591185876af56dea5ac779e58eb1258527c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023019846e66282789f52a299c9f0502c0a4994389f66e1c5d3e1e9adc8a0de5e9bcceb20895e854ddf7b5cfac43068ef1e0023044a5bfafa32c862dd2048f4dbd44b167296f6d8d3caf7a3a93185d94f33e1215ea35967eee5b0a650dea7e743d2177c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f235c44adcddc231a368de34d69c457481a649d58013bffdf9b1975638b7721b94dbb108eae97933942b760d0acb510e023100ce6b0944edcd6aecd2d1d19d5f24e79ab1215cd646a817134f3479df42909509591c7624e9f133c4d601d5ae4131fd2d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d826d16ecedf50847d41b21ecbadd197d3b751907316d2f73bcbe021939d6f14b63900c1f991d6899f322eaf976d214402302cdf31f39edad22a8c857f4606d2019f5f020787133d5eb8ef637a848407edbc3ab149021e2d20816203a8e19cfe84690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230229eb9018ccdf2a4abd2c2ff81ba904b88398cf1f587dc9b1a03219be17cddc9c66ed5062e269cd4ce948c34fe739e0d023079b57d364d3ad71e97ad85a14ffd718f52dc9e4804f09685a47df2574d7be763b03ba0d93c3555c74ebb0767a7eb68d20302047c435bb50066306402301407c04d076a86411f7c596acb036ff9568fcb4b48724f03f24023051c5991b791ae504560ad9ac951668080504f7aec0230242c541807afd7b3cbefcef0321b0445844035d56467cf735a23fac91d52ce5e87895b763427cb870f52b837d220faed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f7fc05cca5a1c2f111f106fab788900df0d2c7cf7f6c3130359927fe0b3cbd7443befa2fa2cbf209ff9c2598c29c686902302129770114020b14136f40398db73a8ee2d07eeb33a1ec8754ab5ff52479dff1494e0351e3f66decb4732ae0c76213b80302047c435bb5006830660231009a0f9523177d3fbaa1da40d8fd1f34f452066b8c711c4e15cd3928de5ef2ae88ba46d19227e03473279b4a415f1934bc023100d8dd852a50c71775594800212ca33d48e15a26b64db208bdc12b8a0bf5c77b0f6074b5357fc2f2da893bb3d2a56f3ae60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304fe1b7b69eb2b83f66af96fc8ad514b9273491667800c1f54e3c372a82a3f09b97c6097a1ba1c92d2a14f131ebe7b112023100d4453eb235d600fc0f0f0c44a14eac051d16f148d48a2b3fbdccfd36f564e7c7259b37a5917994f892c8457d7b208ecb0302047c435bb5006630640230146e23ba5b088f7b9dc6150b7dbaa1d2d15d987fa756ed8afc59125ca831ebd3a7e87e9e159350bf20dd4e981a2dd580023027e34b5425f14e35e41641807eea1e1874246314186b0fce435b51dad608a5230222e84a7b1b5509259c4cd09ba53f1c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100987fa8e12015212e5044aa4c73ffe96ce613fd2d134965ed53fa1c848b2a7476cbcaa045d3d474d2f92f77aa2ad01e5e02306cc3c4669c5615c61d180536f9c450412ab6bf7ffa4ad338487e3f041143ded478fca2b7097bec0760c70f3db41eebf50302047c435bb500663064023100ebf652c71c817190f76a449319a7da74a74f6b958a17e4356158842212eb3b633546d441d2ad3fe38fa21995692532c6022f5948c26c89280df12d0f0a3abfab9f3aa76f3d50a55e8a09f17e37c5c7c797677bfc470531f39a9a14e649cc0b01710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d7a421a093d553934d668ed5941592be49742ab52ba467f24f4a4a9923dd506fc2c16a7cfebb2f9e31eedd9a2560207e023100aa2dd23aec60f54528ce4e54bdfc2fa6e7301cdcc725243dff7a3148ff48ae1f2e6e0988e231089678dde9bb38e995a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dd878c10e0fc8a128ca83f7e920b45dbe0463ca1d084be93f1065d222c8b579a319130defc108ab118f074bf64e9785e023076bc7caf076ce68990493cbd4655e8cf3bf6e7046dc30fbf09fe255d64f4ea57c76c74ce509987a156773f3b82bae19e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a536a127856f60e40dfdf01e371bf833d15265f8345ecde80c17202188ca76dac2148f548f97f714217af81f13afebdb023050649d458c5571f4b8929453daf94d67dd42f646daa0b8c8947a355c0a2c0d6b80d883f34d155ca03e649b383951fb2b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dad1de3524946b9f2e06cf8bb97713a4001a9a9aeaf8f459ae1a85e7f3a3a73bf70ed81b4af154c7674910f0846bf833023100d794a19eb8db89ce5e79c90565d75090e89d272389fd73753b9cefa421eb5cc38e824348f2ce9038021880b897cd15060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300ac771ed546f8d704460c124e088b832c3889d7277e47835de21927f00551245120f856a43de59d061fd959a0899345302302ed25dd6c2f43d3b4e2d00c4461c5c8904f0149ad2c0a108aa1679612b4ffc0628a34ec1d82e6315e2c692ba6604f8c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100af60c1799dce712fe0aae0d974cead4fc5e6145495fff8b0ba64acab42c1dce55e82dbaf22ac0357fd9f77ae5d20e0b002305848f151b9ad31cc2c40d65fbeb95bbf0a457a48672f4f3de21a71987a84f6ce6834b15ff35a98140180f6de2e8e655a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230407559f95e037bf4b1ef5537572a6cddea07361784ca92785a250bbe9f9472388f3817ebaec72666d19334444807351b023032e40e40a697323fd2d92ef5228fbb114dae9bb90265745bace839df0933fb7a98e59d499713301fc012e8e187169c960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303203a8a22dc36e47b8ae47e684215fa0fe0be6412737cfe2a8fd307d92269e83ef3232a015948c613407e79d50215980023100aafbc7fb2ab7845cc033e1eee724a1dabd5634cd9fc96bf3c20a3ce65ae9ddd8220043eba02b438c03f63166791576990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009d90242029988dbf915618f705abebfbc89b7e1f23a64213f02d7e845e15f0a7193ae823d08a8502010c073daea005fa023079a5394096719966bac78b8be811339aba14b53ac223cbda3c6822672bc4ffe1334a7d92c1c0a0a3ee4f3b2f09a25e290302047c435bb50067306502306983d827dd3687480bfafe1936b06d2ed921e9cf98ab067c21349a7100a59f061bbaef8cb343458f91d0631267460385023100b437d860319e0f4cff7b0ce5eb29c780881d4bfb2f22d9e4d9224519288c27477207973cbbff45b4ae55b0bea11a75170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f4afe0737769c748bb544fd47f709da1c5291f1b13bdbe29d4946a548f7d055d0243e6fdaba793748c879985e72cb8f502304362617736c82b8ce8d70f980652037ca675d03edd1f6f96d2f4d0c08d361828495168a6340e16c29c7039347280cfb40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023044d52ad580c358f1d7f896e0b4da039b2c873a580ce4cd93e3e2105b87137970308107e70f8e79dd56c67f7b5c74283d023100f42ad0203d783ef458462200c394cb8688b6bac4e513e9ef91ad9bae61427f0e8f05a14faa5e8428a161e0841e27ccb50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100899aa637232cfbcdaecb1a79d0fab898994c525477c2e447549e6dd00b02df854c4d218d71313182a851151cdc42164602301f1e13f0270c6d20832fd547cb16868561babe3588406d9bae9d9708c9cdcb78c0286f12b78178fdecbb4dbe394276710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c86d5bbb9cf39e263fa41386a0dc69f46dc7e2cab92132f5562b552530520252286a362ff7a3a5ed88fef224460a756502304bc1df9f78ca5e894023009023ea72175f8a271a56637beac947562f33237ee3ea5e456476cb77c2ceaa7f149f62fb7e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c8c88905a6d7a5a4137acf09218c94df5285130c858bd2a5cc83196a6e523147441e70582f1c010a71b7587b1e8cdff5023100d5d6b9d182faa3b627ca3195d6c8d4fb6e30f33cec819741d8ab6e19b81ec12fe2cdb68c62f0c507d41d1a7a73550c2d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230689aa94ac4ad1b767896f73dadb970f6405b9e9c1cfbf1e24b1520125d3613a9f82e13c128da0da8be23711fa3643002023100d37ea555dabca20e2b2b9488aab55b3f71e53f5862d2405f99441cba3d477a424e60073e281af298b7d4d2a6030f21f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023078800759a3aaba6636a2c4871fc1c0b20ca90c8d212318de35ddf0e91d3a65637a38b5548ca4c0e1bc72558f1d551ea6023100c5e32dcf2fa9bbd85c503382b06b1546b9b9c0f69f419b83f127fa13c3ce40e1f6226d7a44f4ca458ede72e16800d4220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e354dad505a5830b2f1282b6eb0e9924fd279a54246d9b967103885c6e4c048379e0ead1afc89bd18ce72d11300a1c59023100bf0e4c4f9dfd1db8a8616c3fccaa61d0f6a3b0a0fde31287e4e356d855c2b19136821e2b8857eba9e39aa4e011a95eb00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100de0544e1993e20a51b5182f8f9e0d6072d3f582d8d269ef038588ad5bc9d5ddadc9dbb1ca1a65348ba30792462d112b6023100d1fdeb54dfd51293f96e164f345d5b73afb902943da325010fb42643f7b79389a1b86c1459b20c7742b4eb8039e7de040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304d9990d65b3e917d1d5a76a05a573abebd28fc1795b94dfde73703a64ba436eef9c7f491751b3bd7c492058ddc268e3e0231009345a72f96ce3f46684ac67a5d16e12497806119ad913d17bda96a3f99fac8c91214366bcc826af2fbf1afd0d581804e0302047c435bb500673065023009691e9b73694783ce2e12c497ad7ab7054ab61310a3e5302ec65e45fbf0ef6dc5b32d6506a49318fb900e2383214060023100b4ae59b76e13fb67ef9e13f65ed79f54224746ae26ebf217885683a811880ee3326bc7cc45010cb23c6debad66f08db40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023033267bff451378f73f78410634e9166f9a7f8aa43cd82373e41089917a1db6eb711619b4a32e921a8409e942403e4b0d023072fd0af975fe58351b8c48c4c80944c0e013d5a3229bc5438a4b345b29319c4f330c2d090e3b900fbd9bbcbd0c6f5f420302047c435bb500673065023050bfd7f834bc72fb716643f0cad4857b6fc4c8cdb3fcd62c8da5dd28c873ed50176d5ebc839c227989f300ce0372dee7023100b54f740dddeff39ca0611231dbb0fe508e7306bd85b9409cdfe4bb8ceeeeca3d24ec86efcd2c322d7c97fb57529417460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b2e4585d7fbcaf6448f6e9eaa43d02e400576c438d3df6b87075af64b2a7eeeddb3f8b65bc237f3a5251473304adb69023039ab658fdcfc12e8e4507f141cf80476814adc2779811e084a427921e9c3fce50a92889c6224e13c2e5be909071e4d4a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fdf6494e208468ec06777d110d46082a3295d010b9122d2a784a368a7b29320ebb4434f0bd1fb882dcb4fa4e419452eb0231009f903e7699e30ebcd0bea98eb168fa97f05cfebed45e2bcd291809764acf7b26772662d4597f1e044f17c383c548be340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305342bb4c9e0f02856c75c1821a2f3a5000187f01a5974e8800f05d53187c538c720c68f06e2bc76ecb1d23f5e79e1a2802306cb59de6d2be9340356c60312a5411f8496f732e1dac575c4ec4e68bfa6f8a98445be2632f8ac5701f793f72efd065750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310089b3830f136137ebdce2f2d78494d471729e47510e1c837926ad5fcfa70558325a9484328bc4ef3f8e4cb45d877b84e802301b915d3d41bb1dda431eb9903aef222a597893a5c32cff083b751c0b12139dd014b1d3d9f44661d0a3b82dad8dace6100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023005275dd44b4636480cb43ae9dc0a68eb2c27856fc4caf0ff2fb58b477a059bc66d7f1009e5302bb8d565daacf257ffbb023100fec61608142292905e43fa97851a11a167be0d6d5f3bb162533588f558b48a7a6619d650edb62dc37696660da0a2bf8b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230343f6dc4624577077810ad005d58713db018994de29fcf90d3c92dfa029d658933db578c2d35ff7f9fec0a1b7cd1961e02301ef083d7e2749df0b1674a48ebe971e02ff58b54d5438d4484b1a6d48d7970b9dd295629b2834727264181233a436d9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302e1b4be17d03ef34eafb90a112c15cb9fd0ca9eb701c6cd3dfdbee72672301b653ef47128f2854930d5b3d05e26be432023100e8629fa246bb36757e1c93e43a23c245c6003a6bd96876e5eca0c1596e90d5fbd244ea60ee6927c4163cfd7f6c0c43620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302568181fce39aae8f244eb601a6555c20d67779dc302946d8f8a19be75aff64eb821e084d5771423c2f8e694df90b5aa023100bf0daab7bec009951d9e69669ec028eb8efec9d4a096aa855bb8ea6196ce66676a07055e2636f372a303b2a92fab7ee30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023070904095283e21b21232fd98913166d7e201804b4d233799f07ed3e3b42e8ee000e8f0f468668bd1251c5213d23fcf350230586e6d76b207afbdc7c02647d1c19538af1e6c25583ab6680afc18ce1f39aa9a377a4aed9fc92f486d19e1c578f0f5960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023057b4c431744a1cd741cd35351e03edf6e60a9b383dfc1e7bf17321f82ab1719e886e3dacab12523cbd2deba4b32d8713023100dd5e154c549f76460a097f6c3d56d854ce8527f497ec383da0d5610cda15f9d3d30cf3d9b580568beff19b81578305120302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307860d5916e6bc3e02759a04038e6e707dc8c26a9d264a44af0049edf5d1bb56c1d8c7a3543acf4e5e54b6c9474294dbd023026436667a77e0fe51fce9dd70a40a6990d8f9e6043c9dae2fa4d56b5069e55c5d3744a72156df1f4a73410d52e07560e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100891d3a23303f5b2722f60da60188dc690f4cc28247a500a6fd9434655b70c47bb58f1ed28145a093c57b59dff004de6502305cdedc1adac5e56e03623db5f799186e04c68f2d36a23121799736848b87284be7f2779a416795ef0c11a90fc299ae0b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230247dd85e673a734a107195b3e803600f248a1cfc460f3625e81b2bbd057bc1ef2881ef41d1bfd48d16c9d44882beddcd02306e1a783777ebe433bbcb5673794a0e51d0edbe3e661a2278e8772597b92f74b7a74ea3a6896ce8a8bcd3463c80fc025e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230505528df43998b8fbcc2d0f54d3058e88bd6058b9475925a37f7434688961495fb7e6fe3c06c715972cd7193572ac665023018a83403e3f7a55acf59fb0f3111c6331b1bc26584f9ae97a287117c017189676521b344234bf93f94ab83355e3706490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ce954708ed44f8dcf534b96d467fa7c4ab482a57d89a45e4c2f3dbafdc54f866047fe504617a5b5d9a8fdf679c801a8f02310097ab2ddfb2e3efa94f20dbad4fb13938732d2bee8b0dddad4b3cd7253e2e5942373ab48e485edef2acc75434263a80f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301c073fd8e5db8efab221caf093d514b5cdce3a39dbcc2150d78bb18fea0b22e0a7aada7d0d644a68dce732862ff220db02307f46ae3b19721bb0a3f100c9c08ed2322e08ef62061be128faca2d3a254f7d7d67c85ca94c4ffb29e80bb705a4e8adf80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307b303c9f67ad355f62ef446520734c4028a45c633feb69f53fe7724d4b34f3824ddfcef5fd23923a8e35f6590445e6280230617cfc02733ddec6c7cea1e5ee329f9092298b438551031ee7d73950d5689819e6f096986a1b54154b617e5a517bf95d0302047c435bb500673065023023a7c136c29881e0324034b50b532dad5eee093b381e57ac32376039d04929736b61009be07998fab4412a7ae48a3804023100ce1a087cd3d61694e1c04dc2eee0d7092d4fc6f537235f6c63b5ecedc05e2144e8196b085e5016d161290fee40a5a9d40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d1965f82c778f6677ea529ed6772aeac19ada86ff488f1a868299b6389319d4cde65a771f99bf2a4ed821821b7e6be2a023018372cecf88ea767317e13240f8e451b09233025eb656b041b89912c9d11779b05e2a6fc23b3dd9b02382e9e9051b6ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d15040849e615ca81225d651e15d25c7d416e3778e642f53d108637afeb629ca1f4db2610cc5b4490f0a3260858fe7390230207b79da87e6d6fcbe82d09767cc309e1d2f022ddd0426cce780b39166166ce96d31595b4a3bad3ed03e3b69c3880dec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310083c2962d8a554dc438d42a194b49736f3028b5b7e5ddd7174bbd77c76e24ade81354be6c200da6b005a8490b7bf775e20231008cc2d4637fdcaf9e1c95384eda5c0d6ff330d75b482a2a8306423b00b08ee74fc1bc70f39f61b56fa1ee5a3a7450e6fd0302047c435bb50067306502305ed71672310e8162cc5dab850404955327ecda8be9d0aa79041bb616ceb5e47304772ba32bd3ee5cbf6b9aa4e873984d023100be89d7a00ed167d99c9a80d76a4542e90726e52ff0ddd0fd762499a0e216c34ef82f2d822d23e0496b6913fb86e38bdb0302047c435bb500673065023006c852118f10c0ca1ad83e24a460891b41cd763ffc46b185f89444959029e97c1cdbb69780e74cac3ac551e9eb4e784d023100ad582af6236e1e350f71ca824f4d75a11f3e9da78edff19aece877288a8ef9e80b380141cab4bfba7703d386c305fb3c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023015625f7a870c4466078762dbab32b55660330b1f4d1ba09bec095ce239f56ea593afeaf216128cb4be875496bf2212e6023100c2ee2c6f051222cfe01ae3710dc04cd32e55df4cb369662bae65d16ddd8c71c68f3b3af04566da7623bfc17c5a54183b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023026809f72636129718186046f6981ae2a230e702b0eead60d7205bc5680e0efa91032b3963566a6eaa3343148dfd16d50023042f61d38add176612ce02045e5a03eec4d82bd8a11bd41d0bc7342efaf3851790936e5203b212a34fc1a4540feeb1f990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305070c133c69a7a4562a3d7eb6db98301709d8401d64bf34569d12e4d3f81f2732aafc2a23436c4b9ef128e6bf7ce42680231008308fd6be63491911d18d73812dbf77d8243fc4ee58fed20163796336c1dcd41580eecdab8fb11b7c2ea1f0603317a410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dadc5427ab28fd40a9bd5f0ba736b3ff57bf9fe9b2795737c3eb1ca3a21112c7884dd6935df013022de329a72eb75705023038da6753c99c2e8aa9b20eb3f8edaa4a0fa887e4cce2e2cfee0f08206d82004f8300a1e6f07d117b54100f03e2a1a7ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008b8541728dbeeb8de670c5acdb92cec004c4b0b65ceb6379ae547f2132f85374b59af527daba47d4bbaececac6255664023100bd39c5b063e34104741c251c6749c07a64e9cb362b513bacd40a6c8ac7c6750c26404b4ce7eaf0c568e3ad70c5e217bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086470885bf95d824eeceb2aa4510f71f2cadd0883b63e538e410ce655f56caaf83a92ab1da39a2dd81a9a88d1eb7d0a4023100b6346d116a319e289286ac3c939aec9eb3f8f0eb6049f384030422f97ad7d4351a119a7b613cfca3cecf34f5286028530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023002e889ec15e79611ce215c0c38807a9e962d0517dff3ecdad4234bda534be2221d200972e83438775eeb68a69252900902300e5bc414f3d76d8bee1bafa2d861b698aa2e0d5ca57988e81c563afeb453f189b82fd57040f01908b5a5d5df25f3d84e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230619349bc8669e44ca62ed72f285f4dafc1d3c18853db9ed1c34115c0c26a8b54c1862f9824d47725d965046eb6007460023023ea19a296b44b65eedb87948dc8f5d608bb1bad23754536b70a6e3508d82d0ac2efe03be77b9b5cd651d1e1f4e236ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023033693d101b02d7e6262426503b5e0e3e3768b320706eb8d4d1d32923e7ca275667fb8aced5b5c0899ef3bd6df3a87b3d02306c24248f7ab7f21af27b477ddc9220da83396b2f4cdd1e9e98aef1c1ff807c09884edeb1257bdc8642382fab437707410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230173abc45c6fe90fd252bcb33156c37af1cdb4a33aaae4f36b31bc226dc29c973d5983452105a73ab589475b572ca72d2023100e2a1bcafdd8df2fdae7944a6f5433ffb97422b727f3ff62d91de4fae90d25b6f00889c13b98727bc4b81deaff0a52c1a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d88e0eaf0ca5ff08dc4666e4f507ad59a46e9c32ba455b50f8c49e6dd78c04b4e513a05e8e9df5c95ae4836af4853c2b0231008c70c6f880774c169b50f7085473f279820de34b45f65b3a396708ce650cf44f45af08331f2beb5585c7758e5730bc170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060cdf6b9ec6e108c8193b42b9879ac8728c85575fbdc74b3309424a26c4f6e34616a2b02eaa74dc4c7edd632d6da6a6002310099dac0871ffe3bd33e023463a2110fbae0cb7dc8e437f88a43110086662f871050934594855d3cd1d0b6d491298446d40302047c435bb5006730650230146353ca1db7d17b8abdbba0246d3d8ec72696a7075e0205a6be75531d32e4331485b8782b121a127b2e78469fb4bf3b023100d31b7192c9339f51dfefbd98e8ab6563df995694a066ffa7c93c2069c2bd1914595d0c90cdcc4a4d194e2ad81f8ede8c0302047c435bb500673065023100d95f126c46f4c7100609a5f5525124ab7594222e42b45fd32d2db091a38840d137328c0a884b028df18ffccec34e5524023009a13130cb3e7b0fb997a9ee91f8dc2c25aed499121953d357f3a0bacf08db56a658ec92ba84118681cdb40ba376f45e0302047c435bb5006730650230378a3891ca9c37b27c3d1c319e73ea12dd04ff8125db5be631bd3d53ae08319d7106875886d23921839236d5a2f7c609023100b4df852692b31ec58b646e20c40a820456b5508d23b6cb757f354dd8dc4bab0a25ad4b9ea6f083f533d739a7f368af710302047c435bb50066306402304655ca2c47475ed803929706e61575b08fc675096061a8d75ad46843efa34ad1974245e4a633324607a7736d1f23efd502300f4843cb3a123c9acd2201a39e59e3281466c2f8616b26260df7726df43eb4d114ac32e2a2dde3542f1019507925f11b0302047c435bb50067306502306ca8bdb6c75815aa62067d303fb8ac5c14e26e51522bd55fab58bd200352ce7e83d877a65b40c701ec746459679f90bc023100872b9da4dacade1b7d910d4f6987ced8a362c5cd5654bab5bef2f7afd8117b68a523d5bab88053fb53464f89d279d0210302047c435bb50066306402306a241f908cb8474b37e820f4162b419183fe30f5aa3de55bab0df3e625e1a1e2a07e7ef4b186bdf65e382dea2703ca8f02301448d4b786c49ca48ef0737a4207c8f5768319235feaa93e81c505c7b18d397449620f24714ade36e9d89263bb9c23150302047c435bb500683066023100ea773bb4cc020aeab1bc0f150fcc485d86d9d59a9b3fdcb8723a76dd36edc6616f9a84e496391a742e0c39c6f9f4b4ca023100a7a3dbe47f72c3e90ec1660019c52954f4e55d669be5f17798a61cb0991d416d6ad9481d2ddc73c11613e6b1b323b6f90302047c435bb50067306502305b2c8aba1fead5f6e5edfbefea4411d2d293dcc70615ef8b54a4d9e630da25e2514a233770a4160d86ee62130495c901023100ebca8292bf3661f79020629726e666c073ae91c0f7865ebb68e6a63895af74bbe0f9c904516dcfe65289766775fe5eb80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d2b030b5297325190a030883181802f8a57443403055e46e0b0f7a23f796d8e68131e07d73b5821f2bb6cdfdcd322929023074fb632c892e1cf04039d09489896fe6d84d074ffa601bdc03b2efcdad609bee5d4a3d282457042e74f91940a58541310302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b93179e03aabc839e9e286293a11deb857b6fff65368fa206995cd7ad3b2fb1ada8fd24479e92a02d9868c430c81f07f023100ed706ac843a79e834bcd0bad18f72440afdcaabbf404e74bc6fd628949570edccf2592ca556dfd16d091e8886ef415ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b76abccccdf53ebee46f185279576ffa408407d85aba30c9ae79cd2578ed385a28f9e0cf959da30717047d0872892f0b023048e1e5fe7bab229b90fee170bf7f26f38ce4cabd37041c4f3c2fa0f0ad8864f78dd9dc1a7c8d89ee6b2f58fd4213df660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023005b99fc04e5c604954b24f2f110f5a040985e5067244d7ccfb90bb6c72015a0f6cec9e890311dc8f53e5c39542e5633c023100f912165afaa5da6cf8c73dd0a38588d8181c93e3a67349a408d9e0a3a6f409edf9132480a41274e7cf27082b00d995860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e84a8d46e0eb5c816bad38bb9aff86aae3ade2110298f4f16b1278f768c37b9a3cc98b22cc76b1bea972b289e7f6ceb7023022962aa17b398d752ccac5123b626f7c4544a7d6c1bb8f081e437387cbe5efd492610979bf855e288982213adb2a125f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dabc701a6ec3f7b9ba185981c1a02d55ff434ade102288aecc9d035081c474b9fee4489785773fbf9e07cb766388a8e8023100d07d6e6f2f33fe54ef51738766e2ac11346c70189cf4c637a73ed7f49065e3878aafe9ef60be7cbd07757292fd2114280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300e2652858d513be23e31157d210524d612a7ff0fd503105263b4e872ef0440c18d379f6bf5ed3de3829375479914ee17023100c9b62563365a48302c3e0d3e6bfcc5afebe19c714846918c42902f7ad104738f6ca7e0f4e14bc158183e002b9a4fe1690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a4463e44080c0c4aff8e2457659968b98a186e4c7dd5e73143344692e61803a3e601631c74b87d102dd4d181b1be5c30023100ff6e4655934b5a5e6f435990ce0a7eb6df5a36d2b155d45e0a2f1d7b53c3e935386b775ad073b04683bfb34f24bae6c20302047c435bb500673065023100f9b2a780856e54354210b8e5c6621d10d70fe74e87eec4e9dc2934e41483373c8ac193b10dbaa7e6c7c9326f0d50eac5023054cd818312f3101773134a96a5fa89c52fe9659a8cd4a8e945ebb0faed339b00eae2c078f6e8ddeef3099768c111b0150302047c435bb5006830660231009c27c711ef975cad03ff39db4ebe5514077690b972461ec9c83dd3e970f6299a3af2d4168ba5311b884a6707869695ac0231008b533ed8b39f4962662ebd4d5e4702081664ad73b2dac105cb9c8cae792166ce8c1adfb32522b22433a707d6a2d824140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230585ec89abe7181a094c2ce6d7c7d3720b5b20b49a7c8c3665a543949bfd12ad35f369dd99ed2d17d7b24d20b92808f920230755816b8991d37af6ffe85481a5b047317e2937abdb590e401faef0b06477ab4d5ea4814ff339636a578f7caf543c2a00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b10f08c1b2f14e43b95f94bc49e364b4568f5ddbcb2429ed07a1ced2c7c07fe3255ce89b6d209ef6e9b816418d26893f02305e29aa791151aa336ff3c603b4186d5e69202d84529a2890e19fd998f85d4b5f3eb0a9ddb54139607ab6e3d247bcf4ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009b4c5b34cc137414fd56720c5f8fb677459cfa153b81d902e957f380fe498d86575dad00a20074aec9ad0be41a3f485d023100dc7404265fc03ce68df6af07df200c98c0430502caba9fed8f4c193aec99a30a785b471263800595ba30aa919e238af70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a5611e77f3b7f5eabf3054dea50d95b446df076b83774c107103b2c8b273da888f1fc7678ec7b711b729b7914dde1e8f023100a4ebac040bd05e7e654482ec7c93cd1297ecff0ff57e76acd6ba2c16e73b520b9fa02d717d47a9d2cfd65f434a1485550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008ef62112567f024a58c47dfad1743b49f42913dae2a34ec301cee9d56dd5231eed600c1dcb1f4c6a55f6f2781314eaef023041ad2431027e9efe7efec340c0c75a3b1f665d612460224bdb178b4cb0bb8cc1a75fab7f0e155f70b44ac157fdcf0e8e0302047c435bb50066306402301be6c210c322c745dadf770bbb15c758bbb71690ffb0d4ee206897388f6636ea64db0773ea6962a2eabb505f46e4311502304d6b84e8e2b0b7e4895d8cf16177c46d216bea038937faa18b4a6596e5a6767e52ccbe89f1263b634cc648b65d01bdf90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303fcf90e96a4b5db6731318243d1409bd36581d04c1eaf0bee0b6b3bcccd12f612dd50abf485bc510210fe3790321ce09023100f53ab26f6ea991c3eba7d6ce141e0909180de01d15b69036921ca18b45c45053ce575a919dbfe1f63d3a44a3958e87580302047c435bb500673065023100af0bf4eb29ed1b97258fba7d980b7ad19a01d19b852a2fdfdfa8f67a677fe72f96024ac5ceffd79c621e674786df025e02305bacef096dacf47ef3cb2a3d47c91b5dde74d2900a96a7c38ba53adbd90069310d68387c6fed38d88669164fe2d4f29f0302047c435bb500683066023100a1a56310ea55b76cd108bec6230878ebaba984fa63a99313024a663a639d00e3c475ac67a4292940f5e41a459b9bf94f0231008d3e20f90a71ca192b16371ffd843f65ee1229d1443d7f20eef2ef9231629b5881a9fd0fdcb9c10ef1b0ea480e7c087b0302047c435bb500663064023041b14bfc2f8439c4d28112d0649b258001227c2f8bf3e8aa2272660c21141bff9b33a11997401421bc174becc16347dd023070d6dcda05ab41b0ce7818f6149b29fe4f5d7fdbd0fe0b2cf7b4f4b18013d5fdd5c077016e015bfe5714c1035bd28d920302047c435bb500683066023100e11ce1d6ac5dbe0750672fb5aefe0798c2eb9ec732333667d005b54985384ed3abe38f0a2432c403ca3cb860a2fb19b2023100a0f0d9d0154f242ed608a0dfc336a3a5f405ff66cf2edf4f2f96476d5905e960992ae7414916914845914a4a7b875ed30302047c435bb5006630640230158aa7155176d16d399ad7fe262fdff9928202dec422aa44beba2d4a5c9143aa548405125d96fe1830a9ba4f7553c26b02302ace92981ca3e727a4989d62ddfb73b32e7e9f4f8289cbd58fccbc90295544f43a66b97fa66f9de2eb1288d15e135a970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b32684e03dacaed3cad275e1267b1906c58dd32b4c473aeee5513c03bc06459474e980023265bc8926a3b92e4400c6b20230785cb8976db199981ba1ee2e99b5b434b52b73b30dd671081a49cf43370f8d85289d8c332e5de0803e02bc7e2e6af12e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f87d7d1072d64e2fabfaee3354b55bb107037cd90bb338cbd25d00d0b44d6424ebda9dc3a64bedf071b7775806b5b19c02307475c8c6b82814d9404999d8e3e2e4921627456def50fc03fbcf9010f23442121b65ae90571a270b8b1e73ea90041e870302047c435bb500683066023100a7063d93373cb42779dc641bcda55c9be8f8da6101ba64b5a30b950b90a2ecb9b1d17a5f498568be3fe83ca404e1f764023100c236cfa83ad53cfc8d3450ad90c803abb9df985c9e391e3f602f3f310b80e3c62e128cd066150c8532ac6212f7286c6f0302047c435bb50066306402306b272436ec0c40fa6ef1888b8866f32db566fd5cf72fef2d9a714ecd07b832e0407472e11cb5637020a77dd323ef08ad02305ff5c3454f89cf9675bfc3d381007b4b264fe2ed836ad8fc76183cdfc500d64e82d9d224d72c450fcaddcd69108c35a00302047c435bb5006730650230298994b67dbe3f47e0eac634a6b6310c9ee47f7cf685bd7a97d99947cdf062babde78043016d88043efbff70d2ef63c9023100c2beaee1e983aa1fd3bc29d7b7a3d7d7dc24bd8fa3984ad1c1c78788a2b138d4473446110804024bff56cbb18a12e89f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d2bcbc575a60aac8da5d7d957fa54d6ba19cb794772fe83b6995fb8133ebd0a44e70ff2d4e388dd524c0ea780343e455023100f77e2d542bfeb77d48727f5efc60375401022260fd4a25ceb56ceeb5a7a06877e0a9bdc420b4ba6ded013d565eaf134b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300aacfafb6045387c91e9990d6b10e423c7923d58b038d8ce13ceae89eeb0da675627dba85326d0154c81737954720a1602303c5b8829060f272e8778303e882a811d8b3f7b0aa8605ec3492e3f5b5df2c8f389c38879817c318bdff5a873f00c37f70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fd92278380998f88d180d62c310c9d8a17d8276cd2d0d6bba21f632724b517b7495aedf9739e497020abfc843daeaae40231008277cc0b9b747d0d6899ac01f16ab92f147fefedb6749a7a5570d1625b34c836f1cc736900f9a10cb5fcb6b42bea331a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100830decb98da4a8e0bd460069372026f59fd7bdfb6971e4226da19b58fce2339f97ee4e9fbc05fc3398d6f8b8ffe3ff9a023035d01722937546224dbeea526a347a23c95b4b5edefa9c9968b3614a531cee7adb45fb86cf036c49b1e9f877e2f73f8c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f40d29b59b5aab2639b784c5e834e5311d030f8acbcfc651f83a43ba08e2656eea2988151543dba4df96969e8d3206ed02301453601b6b762f184b701a1e6f07ea43925031651779e7afeec22ae2054b94487a5cd4f26a2e9b9ce8d55d9c8d989ad40302047c435bb50066306402306adb2aa7ce61e0fa4ca6d1857be7ab55e4816414488a5578c05bbc78fe0947816789b679e3c4a0d80433bd98fcf43001023025dc20e07c38e8afafd3f0331d9a2d307b413a469d9fb81e000d214aa277218ed07ce055c16302362e66b809d1b7a3790302047c435bb50067306502303bb831e6197f2faa2a9f3400c62e526e71007903a5025276744dd86e8b5f67ff83af5b38a0fa61d69b69dfc573433e30023100df7a11921329c091ad765b54686f3977ee3242efa80191fa2a8fe3f33a9f43dfb88db396388cf03a416e00f2074621560302047c435bb5006730650230779e098c0762cd9ea5589f410a9ac288797a37782d8229ffcd66188153bfd0d427e98585daa0a7caed394aaf81b8b53d023100b73cc14e90ce48c30b7b5320bd29ec37e7d32c429ecf2721de022f0981baadc7972987606d30e74dc43a54bb82b9f95c0302047c435bb50066306402304779a094eba99b20e5ed28006fe7662f227cfc00f524a59cd4de42055004c62b8d05e988b6bf38f3d69944f703663ef4023078ea06ba76b17ddc8afdaacc98fef40a341a8826b35a89e6f7f7c979b5234c86b5f2ab49015fee892890ff5315feece50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a9fc7cef20603f980d33c6cfea6c3f6814acc714ff2b22c863faba476f5b9fab5ac4f105b9197222c29761f9c05a0905023070c47f656cffa37fa017f08f13fcdbd0a6b0efbd57829f6b23f51b4aa344edf753bcdd9f9ff401825dd4ca1aa3466a290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ae07a2486f590c8259c0c5274cc3209bf84fda90edae042beaeceafec7e4b7b820928dbae4694b33665cdb60524dd3f0023077e22df6e32462c264250c193ef906efe17197225d3cbe8e8651b7d1c4bb5ca97be7dfc6ff55c9d32348d7cafd97e2010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230351829dc84034d42ff41726179d593f8a057b578c8e4985ef8eebb4ccd02df81ffb859e0b6289d12e6490a14bd0e76bf0230178f632c97ba4b4edbd9813cfbe6910a0be701832160ce633a6cee540a3e07aa26e06aa3829076a9fa9870f44448d98c0302047c435bb5006830660231009a2dacb3bb2bfa053b26500e2ae2ff9c970930a05b470972c622e7476e8ae7c9d9675eedae559a166acf03e798c26911023100acca6ddf5efa31a7145f7e7d3103e1ddfbc6eba0c76220918887d62f1abae0dc5e5211bee6dd17a857050765cb210a770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b644cfaa5d06a501aa47dd37181fbaf081820febde8c535228494c76320c076d34a0f827231f019ce98fc56b36e11663023100f6a34dff4c5448eeb96b39b57961d6bafcef5543cd1188ea5c4e45fc24b151e55e5dcaf41c30263b7f1c5bd8c12490c30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023010ffe81d1e0cbb2371ff2b68acd592b7296f4a51e0de1d3fa3fd6a898b9e5b12b97d3130000e9a982aa396b727f65ad2023100e178e9fe851abfa93db178e9b4e47391410f516ef448b0bd7bffd3863bab79e60f1eda88d4721eb9285d8c0a4c54c3360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d28c0fd6c793c0345f781fbeaece70abc33ecd21bfff3682f68f72ccf8c7ce3a5e0a871005cbd0d0fc407452d3da07e9023076e8d53dd9361d5ff7d0aba239fdcf2caa90f2bf43e1e14469cd80872f49e65ac0bb841dd36b1414d7a2791a26f769a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a52ce76e0e699b5d0565eaea66f967c413723021d78d201224deaec5c9ba09f64068224934cca8aed3d07217d9fd9bbc02303cc701285228fcfd0f37cf75442d8e1ebfcfea0e96a459d1a515025553769078e8fc85cfafa71d0e3505ba5c7db45d6a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b5a3c8cf0c1958f5761f7522219a31dd2735b68757004c8c89b5ee0e242d854f9531c0301c46f7caed93f45fb876561302306643c16a7836d2f8a87758768a5ebc65880d58df07e4186f01e9ad8ce8580ab7dc4aebc2097a2db4238446d6ddd547be0302047c435bb500673065023022d9d53b9ca045ca11b4ae64d4d07c6ef644a8d7f7279346fbc8e1fb13399dd3b6964a1c65d27992db24ac9be411396a023100be28434b730289b8926bd75d995c1be90b2c81384d7b8e8ecdf334812e3790b238456a7cc39369f62b05bff85ef5be2d0302047c435bb500673065023100bba306a932f4d26702c29f81e9f57c71af5154677afdf243aebd9dae47124424d27fbb09e756a8d6bbc39cf581329633023027fec8eba92ede7fccf4c5fde1d514cf7f9d50844e16d37833f38a0f0c5a3ebb7c98818c978c2739fc8c7662a6821d860302047c435bb50066306402302108920ce729dc85213479148ea248f93f5b3149af6e2ac6b807ef103cd19696ac62f2540c504e32cc3a2095eb32f206023060ae0a355c7e99da9e633c685477e8924ed6842986170d74eb7531cbf905b55cbd14c89d5da06190c753fd34a31c731f0302047c435bb500683066023100b85675ea2da9f945b4844924133982c2a88ce9f2e70eb885e5548a167b4894586074f2d0d133f0c9300fc2e76e72652a023100a3f0cdee698bd090fcbe74d0f497001c8d45a126a81f961e6d6602a41ed95d5726113b2b96f2abcc016a876ce6a1cce80302047c435bb5006730650230221c0ed10357dc1307b8e4f320716dbfc5fcddaf506cb2e88a9e8d16f2a9a147d6523071a07b4f3986f56788433e13a3023100da410e47710710a9d1623a4eba45d25457179bd59e735e65701be847bfb7b92efaacd3685fe50f6a512a0824ff4e73360302047c435bb500683066023100d1c2d93a35f017ffa7b29d99e3c11780f66d65c2c68dd0357a983817818a93318363df5146ef592611cf1a3a9fbd83d2023100bfe970a94dea1e7318bdacb76e50ea44256a5769f81169eb0668fd828a3432e12a0472a0dfe77cd149a7fe52d16303ca0302047c435bb500673065023100afad0fb79af631192b0449b1781247ae2d33aed0da140fa446d472737710a9a8e281055e8fdb2551620529b1ce324eae02304da647782cc9cd6a5ff98dfffef01265240d35c51b5455d0b7202feb079dfd56c67f8c00e83b9066b17833b6538afbaf0302047c435bb5006630640230256d446b210a8a85da5036d4a7ea256caf96ba852132ec58bf1047b8ce7555847365b49fcdc34e26e544c186fdf3ff6902304668cdbec9bc8a3e3207347847dd3c91fcbb5620e4f05192e84c9edc69983e6619b1c73022dfe0178db3fad6e53492d60302047c435bb50066306402305ab871c3e261d855d3da1d7d1671315a15d37434b30088ac9069161401d1e504e4b521f06bae7ff338adead972890be7023024fc282b4c2f09aa2aa32571470aae59d10271c5bbb055bc0d0d6e726594633dabebdd9b614aef5c4731aec4843a42410302047c435bb500683066023100d78f586f351b5b15534eca7cf82dd22281561d34263322c56fc009c0d3ffb109f10322588eb7b44a1fe49286e6bc93a3023100ddeb4eddae1ffcde93ca4f7b056077f6eaf48d52eff96ecdad67284c2f37a4b2886da4e0b446bba096f331af1e8f5fde0302047c435bb50067306502307b97a34d444bc5aa410921f8b3ea40920f1a2848fde9b922656818df24dc50979da98f7dc916c9936b4e7e29c232c0e3023100bdf84f17c60f60460a2eb0c1d4e516953b4829f6e651fb98a4a69bd3e5d5e23b1f52dc5210892ca68f4c6b16e1584fbe0302047c435bb500673065023100d9d91328ce1f3a120efeaa45288df3a06d22e7e93a138ef9be32d951603441f65b941f02e886ce305e3f92e9595c0917023001f2869aca8da92d6229e5aa2dd28f122598100a522ecea327f40df779aabf15a9d7797dfe306e6cf11831fe6a4e1ad50302047c435bb50067306502305b0505d59e09ec90115cf45c411d3128423419c28a8f4edfd82a74dc1cfe29387c703f5262691d56ee491db8c90867cc023100ad7cea3d1cd8aa0845783032b8d4f5e2039e0808be2f1bbd3c7b64fdc87db7db25e7766018434b03d8b4285469f39cc70302047c435bb50066306402304f206f9808d1f539f7302c84ff1a6b3c0d7e2c3b72db679dae632a85708a98af03b6f1e245604b655582e32ea097623302300573ec1b828e14a55b2104395f9ef661f9c77eedeaf095fadc08372ce6081d2f8680669689fa6acbfd14affe3eb2cf140302047c435bb5006730650230350ede0afd4875e27fd7029464d7ffd642186fa93b3780a385dd830d8ff1638ddb86309c9c0d3ba21c82cd6f70f2192f023100b094fd9f02d912628d6653eb42ae2dceb89f0ff7b938a5c3b160870169a72a8b4881125bea174b7a9f66fee7e80301ae0302047c435bb5006730650231008b0d3deeb4c42ff0b3f5a7cd087cb1436eef2d6d325b1fbdf3da4c42efb64d44d0f5474fe03795f050fbb32fb650b3be023050606ee307e95453645f1af1066c3119008c1b638bde77af12b3fe30257454dab3b3668862abcf45398328a32c641b470302047c435bb500673065023045fe8144d51e997a9ea386e9204d9491702ce6b9fcd14d33e1a6b27f41be892c9969658a2f5b6a59436a250578e948d8023100c8d3cad09e6632ad41030312372d622b58ad7bbf823d0fe1287e30c9a3ba8eea1c3ba823c8c5c57e02130b613039b1710302047c435bb500683066023100ed992341e19d7fada481dea6e0a252f28040e34d7e2e1e3fc446109d0e977439d08ff422ff77e46aa40d8f628a11a700023100b38df8386005d67457127ec407e8abf7c57534bfef5588c442e4f34de1dc970855451a6795d4b33b942b0fa9095b45cc0302047c435bb500673065023100b9893ce7458971c363b435aad59bba283b1e58542c12d5a87a330aef99b8a790bf3661f440c55c729fd9b7c536b7874f02306b2408440faba7cc86e359d7e71b8fc9af71180445b47ddd32d24e53aae8482767043325709181f6c9d65306f52c924e0302047c435bb50068306602310081cacdb0b0f28755497882ee218daeef8364ec66974fc44402f041d605da77810c74da922d9937047ae820ead3344d0f023100a8759479d2687016bcc280b9a40fd6c04e91e68f65658eb305b01a64536589c673bc7a63fd701804294f18690602aa400302047c435bb500673065023003f77a1f934c3f5a18a5501997d9bc2fc4098d59af51445cee8cf56d4fca523c51e841397b57c5d3f26aa682a8cad746023100f0f7ae4d1601c8840cf20cad35b716257703cecd5b52ecb50ba4431cf88213d2245a1a87f3f89a1e02d1338f262e426e0302047c435bb500673065023100e25306c85c31c1116957f9e557a5d7e852f9319db1ee60e7b348956ab09b893061ee41073ba470b3203e334663d5f5cc023079956a9ae1c5e262ed415dbda490e90714e2f9fadeb270496e2aacab725beef9ca6547baef83325cb6511b30193d92bb0302047c435bb500683066023100ebf78f64d193880e26c4022f03be322d5d0efad4c7eff2025620a4ba03c08e7435bde347040f96299886f0127606a7a8023100e2e24b8e67fb33712453b1245e05aea16b9e0f8323f8e0d56c61437fc89fa41c99d98a38461195bb8c6d4b748e3bce310302047c435bb50067306502305d78184d72e4e1bf53dc8d4223ba86c0727eae34d6915ef7d0e3f8a6b3b4835d94e0815062e66ef9580309511167eba2023100b0735b057be86e0607d5b9a49194eee0860f976a1576ee054eadae46f69ccc1b6483bed5d9dcd3f842fcc478fe1f5a050302047c435bb50066306402306d8da25cc1e2756667c168fd2e3b9d6f47b56ca09e8707a93b56ec4b13e00006ab8cb2cd937cff6b63813f51089e916e02302fe598d79b2a88203c86fe1cce3d24decff380622e934250be097cff09787bf1291e03115ceee2a325c3fbe3fe8c03ca0302047c435bb50068306602310091bc3ddab93f430ac3997ded194b0fb8eae4c69e136e93612dd09a1ea4cd683bb3f8537a6aa2b04c953c9abadf138eab0231008c5a2be03b185484124094b8331b7ba1ff57b892839d71a081fc305b83d4325f3fddadee08cd997109f0152c83b73ca70302047c435bb5006630640230703f36a826ca7fbe8bcaf28bedfeada38b0be73986fbc0ff46be097e7ec44220ea829de4b425c00b077f613cd46ecb0c02306f470c1b409ebb3662123a5f14508a684de1ee91f500831d39c935b5e70df0a55df7b2f211f979ae49d9c623627a8d2c0302047c435bb500683066023100c9423b7a2ecd7ac26f3c2fb00810c0baf97eba24fa0b49eab290b9af8837feffba397a1149bbcb4a8a6f33ddd0fe8186023100aac4d2a5ce2e0d1ced33834739b13a826ff2f7bf0018cd2ede912396bd1b9fa5fe7fe8ef77485d172178b67f590156520302047c435bb500663064023042b84e3d345d6d4769da84e6961a2daebcf19fb2b03a6f3dc38e7ed707f28a390dd7d250ea81f211d6eb386322a812c502305bd86acefeca4bc4fd08c4e9fe32fbda61f078d2853401402bb50995e9cf1edd840ab657bd049620ffab52fd6bef8d890302047c435bb500663064023040536cd332a54fb353525fa8430c9e111e35db0ae985bec6715312c7f686fec2d138cddcc2b36bffa16037564275f6a90230106dcce39ea933a676e2dfbbc64699297b524bc299f7ef2711f709ed6abf39d13d4bb29eadd8136f7b4da24bb349f9900302047c435bb500683066023100ad6457474886fe05046c8e826f59b854e346c008a39cd5e3295d11942a5eab7d737038e6746e6130d20ec2c62d2df7d3023100c2bae9689fbe9321b5823b37a2aa0c6875582a52fff944d9d34fc1c9cd27b216bccbef6d58482d76f863fa3a585c16340302047c435bb500663064023035f79976c5f01484038c678e84cf57d8d1333d6897b7c24633a6866f3dfdc2147f52cd684c612f0a03d65e5ed95ffdaf023076b5f0591d821c7b5db7778bfa2edd39447ba39bf01041552adb95b187d8bc00c3c20bd259d7738c0d6e0a2fd9814ad90302047c435bb5006630640230207018deedbffb6ce3403b5a5a676235414beb5b9aa75527365985498435df34939113d646362741d48afaea067f006102307c9f32ed375d7af7225d3a230e61be4953bfdfe51ec4571a22a78750d7629db8a3a7c0c35e816c6cc80c8b09031c77c00302047c435bb50066306402304458915eec5243a4e4a31a62a6164b5aa97d1ce508d3fdc4de46b270be576724997405fcbdd15afc91ea0613f9872a5b023010d21d37636275222caff60202f51abdafef5de4dcae09b5dfff85f17d69d8201926ebfcb88225a25820005c1b63903e0302047c435bb500673065023100b8f5a6dce92ff561074fb4602d057e79ebfa1b86c337bcc06f097f99eefd80d2e5b778144aebd12218c2df5c29781e1c02303f1a829729fed70adc1527ae29c872264905ff1b25cb8a4ce8f8e5e41bcb70c6982961520d006245c6d54544bf7b35020302047c435bb500673065023100f37b9cef04951b4a4a6e9ded2a310f668743fa6863b30097f31d29e19cd1f485e0e907cb9977a984aa6d38f46289937c02306b332d06dc1df417f9379bc1abf7221b0e912a10bee08b548a8cee57341d3268e56c0a9d363496ad1a8861341485c4340302047c435bb500673065023100b9002d891f8f4722ffc84c267b07c036b9b3a692b5b5edc607804edfe9b44fe0f5255d2bed57079bce88c71444546d4e02303fa1d8ec4336e5ca1cbe63775b0108d73e2cb0857a554cebd5496d3bcc0803dd0fa083b3d78bf6d18ad3f63293c7a78a0302047c435bb500673065023100c035625880a11d589308f964e135ff718d73df1df4c51ab9030892d15f92faf478f4b96541b668d3707aec1976b6454e02305d99a7a3452f965f382136bb2c1a7a614bc7672784024ccccda1eb870021a2dd3038a26094d10e06c01e9c3f8073c8d20302047c435bb500663064023008c3dd870af2abfa3336dfe9dfc4481bdb90e098fa832ff64464da06d4eb610841897c22d7a41c00eb6f282fed56456202307571c35dcc9a200b5baa3b86866a9796d86d96a38820417293274bcbc848e6bb54ddf466676958d5aa575a62611e5d8b0302047c435bb500683066023100fdbf68943598e56a5b48db026a8583182ff3c33004073f6b4d802dcd4b58ec5d17e36517f88a7df4e80a31581e7410d6023100e59ff93d2088844e22a66a1ab1eb557e4827cf600901315b46b148fe954e6be42664551b84453483bfe1779e1708e5890302047c435bb5006730650230543866a15029e0d4886c264d2adbcc35a53cad1c2f7dfb3686181773a2de09f4d88554e31199fb25d411427cf35063f0023100f25e68e82e7770be303da2ed5f8f81edbc7eea1bdafa03034e44c2e085bc284fed9a65158ee12bbc0ad641187405ff1f0302047c435bb50067306502300cd218d5b6d368f2a1a67c442d9eca638ce9178f350a6d470b1ce6d05db624b1cb30926f74322f78b7eac5a67347ce77023100d40918879accdb8a375945c969dd99f0a8a22a8df52ae37ce7895d75dc5a3579ba11c2bc0d4ee0d3087c1e5c08c2a1b90302047c435bb50068306602310087c3574264723262e03870017be8e876db9733bb10ec2988a8220c6ceb38138fbfe3e75b54f136a3ec50107b06da6320023100eabc6321f3f6c21a9d0e0f1e92b32aaedb72d3121549a3ca17b0a0f1ae838a0b37a2d63f3052c36f1eecde6dc04c81660302047c435bb500673065023100b97e089804e10c81c1ed8dee91804fa5105490e973f3080fd515297b86699e57d916301bd217cbc37eaf54d3973b11ab0230273956468f881e738d373e04695288d3475bd834ef248619a6e245f3c456b0c8c8229be288ff8bff7c97dd2922d85e380302047c435bb500673065023100a61efdf4ccbd7bb91d9fb1f0877138889b0716bc3daa081e752cf08f505fd7cfec53d8070387e9b1428c0d19b0c5fdc702304fd644a0d2db728a472e77c4ddea2d520a90c3ea5d41af72bed3c68bbbcd41f2b473fa10ddea4dafa9ab00ac9fc11cc70302047c435bb50066306402304561a2c8abceb9d9095385de6fbb89174687516e6dd5d115bb2ec28250938bae786a5d81c68d1c49ed4e7d655d8a45a5023029aa10e8aadcb48c26562e48cc9218d1478895beb256702795fe5200325e342cd7609b6634ef59a89640e26957c0a9d50302047c435bb500673065023043dbe72d025f809ddcae2e06df761f0bf1837bba7a269a73650cf6a9c179b4c0102b3f78d948895e2e0dff75b4e6d088023100d548cad297f21eb2050d1042a213c87c5110a5b4b73fcc53467c2604542d487c2405b68020b653d47480b56ae14c62190302047c435bb500673065023100c1f8c7abbca059d17e9f11fd28994d6d7df8b204612fe7747209155c2c5868301092296dddefe917a50c1e7dc991c3fc0230282589de2657b1a291194af394624df5a46988c8f22f5b22aadacacad8003b164b1d500ceaa3996a256becbfb734fa200302047c435bb500673065023000a21ffe3a9ef57646b1007efce58bf6bdf0d89f265b08549b43e4bf99b54734f286bec1d9c81269efedb133265ef237023100b69a557f8cdb6f3a8a3d8e22829c71f808fb620c7750c43f6793ee3dca2a2ed1de1512571a7d5be4c65c61a4b48205dd0302047c435bb500683066023100ad1134b54270a3f64354ed400e79fc70bd169fe869e4a482d86ba7006cc8772aa84bd1a1303ccf0b6447b84bfb3e7cb7023100a4f14bb04911c3b86fcb5625bf9a7ea97c0e2a959ad2efdef48061ee966ce347a86fa5d590247ca99fff9539c9fad32c0302047c435bb500683066023100e4e1e97bc3f5307fb8d70b8f259742f85cbfea71eae698ef8d739336633ca4e2d6ff54a79de2c104997d67c3965dbe35023100d64ac378521944b30eeae2e69115e2712c2255522c2a7aa747b3d731172a31e8265cb0af32c940a48a72877c711a3f700302047c435bb500673065023100810e77182f67fbba537069c8554cb87cd38e45c31de204727fbf39528286282dddf9854beebd182f2450301944d4673302301eb06e9f67a7ecf3c5acf5cb8a4eed924c63cef5bb7153a771faa0d850d42831e78d5dc88c83badc29917bd1bfa345950302047c435bb5006630640230652b25e9ac27532170eec4938127be45970bd85a408f48320a00db7f2060146fd772cc223ef17da0b6f4c35da07bdb750230210f05079108c72802df5fe4c20c08b3a61ce615622bcf1e0a76477b158208a2d7c879c2860a2f030fe60805b4f908e00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a53eb7e16231116aba8d4b8b6b9f3ea285e03b07baffec6d0cee3a89a0b9df7ac834c4417118071edb38fc0e4847a01702310093f83b0c9ef82a464d71da09c72f8c2e10359cbe2feebf7f76caedbeb91b26756489144b56443ac2efbaef51370a5d3d0302047c435bb500683066023100cc9fdbe1fd433a0d0418a55b9fa6b6d477e744d13de272d8f94267e0382b9ab7dcfd5f05ccb84dfc4ec6253c37f3e8a4023100cbfb6790558b80aa24521c712cb385e94ed691c41697a8ea89aaeab9564330075e9e0118777050a7a950b98c2c6e66630302047c435bb500663064023061311aa28851dc428e2076e8b449c8bbbcb9df07f8720ee3d45f3c27748b7ea385ea6cfb22c9fecc22c923f8206f1914023010e05e647afc3e35a45165aa99ca0a44b906da48cd0ac8498106ac5bf9cd1bc590cbf085682f964989f7c3f3ecb56e870302047c435bb5006630640230218435becb001856e64e25e0d4b0dbdf34614b11e60504d0ce459500952adbfb5124af145c29f1e1fbd886a656618e5202303141e34833857bfb50079b60381746c7eede23c193ae8ad852dae5cc4716eae0effacd14f660b097f7f9aec028c3ddaf0302047c435bb5006730650231008a5b9c68c614fa7cadfee6341e95f97e42a0fadd7549a9027915d94280af80b9436f0e0ceacbeb443be883dc7097317e023052e99f4df22787973a4fa42d320962df41ec58820197cc895c55b620c5732c3925a8649075bcf30ace7004345e91dde30302047c435bb500673065023014d4fdb439c2f254286c7040e26a3e35c66873d486e15a473c5004c9bd4baf6c6f325553c78fddc05c136ad200d52c5d023100e6b1f3e2eca60b0dc9eff1931e5e80637df46cf64d4e292829de47918fc0f515ed83de78e03c52f0d57d8d9937b0489b0302047c435bb50067306502301d2c337a6b32bb201eabec2ab574f9227a658f5e3255f2368c895a3f36292ea37e863f618a552e77ce7041efb24a6e10023100f20a0b4d04e67f4c09f967dd6f1b857587a3d74748ed3d4197ce00127dfd6096b4c4fdc28745d5eb10fa39748f736d5c0302047c435bb500673065023100d917962a63b7c3ac998459e44f223c45a1e1a2b1ecdd2c70144e75092c5e1b17d40cbbf6730aa4bdb10c4ddeb3a72ddf0230601664af7a0fede9ddf0e33c62d0e2ed9ede51d74b934956b17ab5e8bd97cac543b7d853f3353fb15aa4cf1d46fca0580302047c435bb50068306602310092c0dbb374f78ba001fba611d81c7b30746e8a84eb79070ed2027dc88ffc7943458cf7484aea8689d2a5fad1f50157db023100afd5a6772db71e0d8e6c86967822530e07da2a9025fc25a6282484a8dbc060c428218bed96105e38d44cac1b932acd7c0302047c435bb500673065023100bb54cd5c5427c6a7c0aefa8f8dcde3233940a959e1ddcf3d4bff64ff3622618c1738cd7383d1635bcae8ee77abae489d02302bd55f827bc29ed2bce0ee851159a7d05c144bea5f38f6e5d9f14c609e67a8558785a0a45ddfcae4766447c95bb75eaf0302047c435bb5006630640230712174a80d7d786439bf87ea42a926f8dd5a941ab48e7e9c07363c08a5e6f3326e3d486770d4e17f13c34a4d8ad0af62023029dbaba8b61b4760b84c18f67e2ce25bfc09c54c708db61ecd51d23bd71605a8232e3dce9925530da44fa240de3951160302047c435bb500683066023100bf09c420560e4316c3330d081f33cb041c17e87c034d4e378a02297bc9ea40a29a69fbd331f509d5f67d2e02ba0be909023100d94f5e24821b35e3c631ea7a514be3391878a5c39aa267f8584e583ea5f99442752037a35c604d328dd7bee1edc542f80302047c435bb500673065023100b7cbb3a5a316a7ff44939f72f868781cde2419240cb3f8de829674cc24a91347d29cdbe80a6373aaf97429ab8ab94e0b02304652b3d9fb18be9e65531fc9623adb875675c660b3035db1fc31a642522328fb6040f6f80ca1020835dce8b43326eeae0302047c435bb50067306502302201a150973ecd6d543a7b8abb9d6e81746c7591596842f53c43212279c931dc311fca9a02707f3022b81a2315b44376023100931474a814705a668ddbe4ddea1798829c979e27ef11b8aa4daca3474db35db5202cfb5754dcc216a3a665b0d6028e2a0302047c435bb50067306502306ba09b3dcdac0fb0b884706aef4c50760cc8f9158db19ba58ff7413ce0a8925e76f3e8b23954cb27a61e96e3c32c15a2023100c958ff1c923233dbf8e3bab5de051f0759f152de8555fe27fdd8740fb85cf9b0f460eee55328e6d137694e6627cd79ff0302047c435bb500683066023100979228a1889d6e47f820757dab995aa436b87d596719c3d40ac94141f4a7c320ea34ac650fbf4459ef831a6c06b6deb0023100fe55f01ea987e274b9ecbd80372932dc57a51ff9235bfb7aca010eca224e8ca56775a9cada86c96b55a1df87b0552a1d0302047c435bb500673065023030f26b97d6a16da1c96354a141b59f24082108a81ec0d7c72fe9bf75c0fc235475f0cb18bc7ed2b6978c3b358d9bf6db0231009b99704e1fa6e9c57a391617dada57034701661868880c9fd895ea18be8556094c02e497bed5899dd0bed78379f22f060302047c435bb500673065023028d9ee5b6eff3cd518ff46f0fac2bb355b127ccf65d169720b3a5bbcee018b14706bc1577b32c9ab2f6b8c64b81f6509023100c9a181dc47cd29fdc11c32c2dd07dc86ea17d9210e32829877c770eb4ae7cef9f0a736015b72bd39f6566317323d71d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304d8a9897a51bad284dc1e5b3c02324d8c148fbe4db54ae4dee10b638d7ba7bd83d1f9c108fdaad38a6e67d8c914afe43023062b3a55902c1b5ae1a68918e23ce0e6099f63c348de7b8c6927985f403b532e9380177280eae2bab2db1c5cb2d78b6fe0302047c435bb500683066023100b4b5ce4675efeeca23776c236168c023491b6abcc52d564763e296a22227a8cf8593aad32e64e35b483a98e8cd8dbdd4023100a5133ffe7491a575b7684074c7852a543a31fe3875b7e75330ffd319bd1d569e442ce3ba476dcf6af6150254229e31dc0302047c435bb5006830660231008257ba7cef651dd907754eb0df64db24e3813620f4eb1bb9685892bd35da15433426cacc28b560c7dc7ac7cc810f535f023100ad7d653e42fe84343b0b1f9279be2ba7b671efd18bf678bf6ed7fa17b445926a243cd476d1a3cc25a5ddc9b5b46422dc0302047c435bb500663064023034f66d53c02f5879a1b84c539e001bafee510e308e82bb8ee7272d1d75b3132cc073abd0a60fa0f7cd9b74c67a050adc0230272a463e3fa3559b65289ab27ec255bcb5bee49a6a551a3069bc864c13c22974adf9a32a06acd25ee93a5fe7c5ec07ee0302047c435bb5006830660231008b1b67aae6784aa3919341a6f1b4363291f0c02bd8f299f1c823ed14b9d164a2b200fb3d3a24e028062b2bcd51eae3da023100977be3b4fa6fe3427f34efd97ea75e4e1c2d4ed2aa25b2503a6cd744e5ae6a24170a31f5cd4dd84d639a73078ece5d400302047c435bb5006730650230013c07991e8ea9a804df8821936cdd52b2190eecbb093ffa8ea3aeb5c8fe2d02e2a6574002634e61fcf6e021966cf432023100eee5697f48462dda9c38f2c988c1eb1f103617701e8d9b994d008a7a0f9b7d647ff63c086b2ca5b017e9c5a27c6ef0060302047c435bb50066306402300d382727130dcc4fe5aada2293da11bae06c86035051487c959479f7e7a42a8ebcc2d5e5928491da84db2733879bb7f502302f96e2edd551ec1f2b14dce80231e58b2a472c7d4860cdeaa3afbc5f89ee9aa027a3a20ca66849d2192f22d85a7a286f0302047c435bb5006730650231008e99cb6893a028f0654ec8bd501c37cc04826c81118f5eb6615c61f2a62ad20d4a020199150a03285156e1a93f45855a0230275e4eefa2acdb7eaa1ff0754204e7a3cd643e038c202d79f399f09707b8ef2158733258298195f96568c6ced1d1f5a90302047c435bb50067306502302a3528d6914eef256d4bc8655e1b0c59975b32e88931d0c68f8d94f33e4a42a4abcb25e7134c9572aad3f69a0a61d24f023100cf6c0bbe1c618fbd55ab4129a88aba5b7827ce390ba08933d3e7f2204f4b06fbf7cac65d6c060e1b8241f94892e626130302047c435bb500663064023021e19b43317a4a0e12fe37f18f01ad6ec2fc3218c1829cbd128a8d7edc4d180a3ec558b8a7b4ddd3d48806a10fa6ecd202306d30b4e087c37cb2df3156e28aaf5c50f4bb94cafc4d69d9a451f41d76fcab190a50cb5dc80ad5edab417da61fa7bd530302047c435bb50067306502300cffc38023730baf3404d634ffd8300b85f5320a6af7b22984d9dac9219694a983ff96bb71fc5e52a055ed80998d4846023100b0eec7ff56c274f42666494c83b8dd3e5cfba2fa3adc1fbde3e04b7e781fa6da702b64161743260a0d1b8d56f5add8e50302047c435bb500673065023100da35e426f4437e6856a938e6d400227e7c2d85eb3e3561cb8c2525280a773bddae3b72e7857ab064eff3e7731bdda1b502305a92061058114cec575ae1d3604a04d0dcdfcecb6a012746d780afe830186ec5f8a6883f938218f751ffc04ef1687eb50302047c435bb500673065023100d413f56806e29f9059e7f243a51a255ba17a0525d16f302371fa0294c11427fa73a31896304813486dfa8d3d18b78a0e0230164f4f38d42712e1939c996e24e1c4527fab12165c4bb0dba655954f5298c5c7d98b584f39ea923ec6e6926f2e23cb770302047c435bb500673065023100f9a4b523eee75f209fa7a18c125671aae47ff89207f9cea3a4593c4e9efd8f30df7cd4bede9b2a70a522766d0d3f367802304956def758a970daa1087e06c6deec4c770f17d7020d6cd76dc70b121e4eb90c6aff311a547be89c69e7bdfc0317f39e0302047c435bb500683066023100e883305adf447ed4bc2bc676f65af1da13edcc86ec5d58301cfdffceb5ca4fc5c3a5db01ddf79b0ccbd69ed62a2349a2023100d3f77c5ce8d95125a01b3355e935fcb4cd620798b76ba8201997b3420fedc89f7bcc2cd447d1332f564e2a1ef22148ec0302047c435bb5006830660231009713cc319b1696cee4a4a97f437168ea970b516b99703ef1b179a176ef00179c0490cff8de5d36aafc652990b2c9e282023100835e9e9e7e5bde97bea0f50f2a28ec3c6faa64b6112f42a4c5d47a7b197f95b06b6a3cf0b4baa605d345cddcf64d1c7d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302297241086de8786ba3a068508f881d70a94387b91cf77ae4f6bbeb633b2c25afa9979b75ba7b1b163b9e321aed622170231009cb69201662f92c5cc6607b96b3af331223f37633ec22c5059e8ffd48f0dace8170c4b952c7e6f787fd9edf96b63acb50302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500683066023100ecd002aa08ed342cc41d21e6442960dd7b0ad2051ca917fdfd6af71043c9daf85567ca013185663da462f61aa902a720023100f5d5f093f542fccb0122c0f02bced1039516154de46d64bbba61074608721733ac3e3e8acd71982d1ac951d0f45468f10302047c435bb500683066023100aa51f731020a9dac0487f930fa21407f92a46a64b76032ce31e3998cb64b944c85de998a254170955874cb97b4da3b49023100be6d1cfc55e9a1780f77d49336c4072511ed8dda598023a84a327f1675df12c3c92ed41f38ab32744234880c019048180302047c435bb500673065023100b0fd62c3c5a5cef69950d2dbf619d92c84393d2206afc616d6fdb675b85599175e49f28b099b58f2671f9629c42a7d8e02305e0a3a08c895aa66b451078b4dfcd933ebd018ccbd5036cde0c6561d9b7a16613468ec4b1df483ade6970d5a4a9497c80302047c435bb500673065023014d19254110308669cd208ed65119765a6807f1a253f922ec8d1b0175a1f8b72d70e6889e7bb3af2a9e535fd5a5e692c023100d15ce10a00a8ea4b4585f6fe0953369f742198b0b2015801ea3fd348522e431b2f13931221a8774754be421fd63c33b20302047c435bb5006730650230481505e911d073e99c1bd199f33d02959cabc0769ca8c165907f122640f4053c0ea7d848da31d148e2edf4aec48d0d11023100d7765cc707bc1521a01f3b045c9030a9fb68c6dd73503870a958da7eca50c53d3d008699e62464430a14de0b82ab1a1f0302047c435bb5006730650230452a6625d7b25c193f47ce7ae2b1647df972baceaa31de4b4fa8fe1ae2cf91aeafd1c918316b75b2f4019b4ba4885c1202310081c1d68de1488c6b5dac4134dd37ec63484c5116a038d0b563cd4063a74ad88b7688125afbd0df7224b3eeaabd78268c0302047c435bb500673065023100f287c1f15a3ff9d91ca909d7dde691ad61a68e824aedf3d3ddd91a354c85345a432a4163d0a48dfa9e3374036202d77802303b5a0af135d8e22d5b7aa71232f15ee22fbe7c6e5727d2e7f1525d62b2639cceee4ccfed9c2ff051fe71e952af635b830302047c435bb500683066023100ac51674921a4e1bcaec2d36c74400d67da9c39d349c9e3ce32fad2d7655a63556ece3af1b44b255641f7b4e80bd1a16e023100dcd02e88e7228a07ca611bde526af2e4c2100498d8d6b6e69e638e0218de0b32ba9d14382413cc69337149fe65f548e50302047c435bb50068306602310089af280a9ac08cef4e77de5ec2bab8a867ec7c9dbc1248c23bc4b56bc4789d58575544fad458a222284c365a36d22fb302310090d1b37b10fc807678af93359fc893eb38444ef9abe3224c368a2adc885eea990e6d0e7c29ece76449e7b9c33eeae0a90302047c435bb50066306402302c11e51006e9e07be57a803643f5ed4202136a95e9f8592b28d226fb50027e8e5cf472c2c9df12d406db4e11a06ffca8023023b52ae310b214372471c811c9b413c7b5328c56d76346691a95f64ff903028e50e77d674e3f7a6d689224e70ec417d70302047c435bb50066306402306da3ebe7b7bd25eb9232ee87de29964ece5471bf15113ac17b0b1017cbabebb878470828f9fe4bbdb396dc268d4875cf02302e74b77f6e26a656e8df5498ba13af00a0f94223069eb9ce04939a0dd54ed3d8d5774d3c548abf11fa42e1dafdc75a3c0302047c435bb5006730650230649a0c8f729469ba05244253cdfb6c874dc5483aa0f8d5a5cf8d5a754c38df2fb83811a30016d993c2a85daad94fb5b2023100d44afd885fefc71dd840c77c05cbc0e7d6273acc071e25677284a892dcf869ce8270eebd8953531c7efaf0fd267dbde30302047c435bb5006730650230016a60c36ce06bfb18e82edfadc7332ba14dd0f82293f96244d44b20cf32ba0aa8abfe967b40960806ed8706225b4c0b023100ff464077fe29dc3fce6798059227bac899e346877279abde421014f4b4f87fcbe890158fbd0075503073a450603ecad10302047c435bb50067306502306b8d8d316ba841cf6e339f13c5c455788a55597f77572a9e1ed25878048769e1f25c7c986958138996ab37c9ea97f5f50231009a6f8e6b533e2f2c70721762aaa6189a90812287ee84470255b039fce44772971774eefdd57de46bde0bd1a26ec6030c0302047c435bb50066306402304ff2c02014a6d06a7470a620288bb3e850cad874455ff2ff856103a5086b8c42cf09ad5ba1c1100c8a007458dae10c2a023076fe6675a90e4899a5b3d9291f68872127c6d7f25b5d4aea88198981cd45d9943ffb523164261d65395d90b6028bbed50302047c435bb500683066023100d46ecb67a30b07c6e9b47881196359c92bc2cfb896b0eb4bf9cc0098f26922fb5633fa512d5b54fe1a867625c7ad02b0023100ca124865ec3da215ed36945ca97fe97bb9b3d1d7c06322d0d7b61447ccf1504f871f08593f84c72c592da03286496af20302047c435bb500673065023100a177cb41f9d8954ce74cdaf04cfc4d21ae94fd0bb21360f68d84efd1855adb88fa7c608a1c3be428ee753a8d65b1539b02301d6fa74d80152c6dca8703d469b626d47b5a7223c1e4c59c992090204c2765ceab43c70203dded3682f566238448df220302047c435bb500673065023100a556de742b952a37aa13f54d0a58e1a08c5b4441a380f0b528d612cc410dcf7eb090e9775c69407da618615c360a19d102300da6cf62afc441334fd243dedc162af64f2985c471fc48e63f0b5b88d38cef8f404359c2ade38d65f09fe7296cd321db0302047c435bb50067306502301c12147689d89390b24c66350a8eee1b653731c4d751d397b6842e017380e27a1df5fabb526378bf83f57cf5e16be681023100d719af872366095c58da4336a3f4f6710be72327fa42ba27e58ff7f556db8b5b40ab72b5343511c0eb03030c4b88ece50302047c435bb5006630640230628c2486060023b0612f324bd02a36048a3f68b6b0dcb9552339acb778a48e8b7ec22387e4c63790167081bfc751525c0230318ba06aed9fa1482d0a4f579814eaa2d203d95850b2eca5722f95af203a27f140033617e5236ef2abea060d8d2c6f1e0302047c435bb500673065023100e6360cd7876f28b2b97799e9bed344d06af9c64e48108adb51f3b6838db8617b9ecb5bf61ae1d92aa0d1dd9a474d324702307342fa4f39b0a21db4ebf052725ebd757c9222f56d3b5fcead77542c0bd0dce0ca8a2de39c1113e1b854e3b29fded59a0302047c435bb5006830660231009e5c9908fc05a2785dd6fd30ac89f34f93725e3d2b615724965c73f842e7085e1ac2c9be06a4e49d2e3cede25305c094023100912f214d277b4f18a109ed95ac57cc95c0f882ac6570830b3e78d19a782945a86e868e2a60e283588a1f5601e5a304360302047c435bb50066306402306a037e13d2a4bc94aa3c51c041041efff89956f424c1ebeb63cbefff3ea58879904d96fb2ed6225940ec45d381b8e06902307ab040124b6743ae817d3fbc10087b463eea798dc58f35f3778f5c8381bb1383c27f66914e118055d62bd314070831470302047c435bb50066306402306facc8efa7c811298a376458bfcc0dc0dca2749927fb68c01bdab2adfea6985fc5c78a6b89b47178100a12ddc85fddeb02305a7cf9757b4f4501c7b71e147cb855a831c54ff0d25a20be16a0bca970e8aedc7c708a07df709027b88e25f1f841f2470302047c435bb500683066023100d9c792c90975c2bfc57c0c5a81c9fab068111117f601a74482949751e7dcd3bc7e965889304dd780598231b2855fce2c023100938f4c533d6a5c76595a39f6405f22a3e735b09550c3f88589ea9776267d370e63a0382a4c5501a9c09280d6b5b9bcbb0302047c435bb5006730650231009958dcf89c8162d4b1853754cd12b6fffeee48190807757ba8f128063a39cfc859a916e3fe81985ed83f5971e420372f02301f63eccdec923ca3b502a177cc8a013e9cb51ed68a34e1d4ee97919dc6fddb930e432efaeed57d2d25c95a5556599ac50302047c435bb50066306402307e490bf7c99f2840c26b67599aea34186a5e1381a1e1626b36d381e7e94b39626cd242bfeaee597bcff0716c4fe7043e023015f912c00f0432daace5d36f73c9eee1f73ac9b4dab554120d2202dcb67910dce4b88cfd59e4826e1af053ffa354a4840302047c435bb500673065023070bdbb2c8859d62bcbeeb121b88f60c1b1ca3b6cb5313a26a70b4ff1808d20e5ba4ab6d92dbdaf3870e56a43f87e1b87023100becaa9ebe1fa65156a2f005114f00599ef2176e05f38ef7ffcb04432446b691f2ffedbaf080a703367a39e3aa4007c640302047c435bb5006730650230255762d09eae19bf4b96f97e4cff8efc845776cbb72b4a2b728645006791410d180cf5d7e913b8c987596341ead7341e023100a993c2e3932c0344c3ec86d94bd0ab6e8dae5835547006440ca6fbcf89081818da0c81953cb314bd4f562dc2bfc866100302047c435bb500683066023100e22856470c09305106672c81d6ed00f400c833d62a48f4ca1931195f10627cf5d8d7e60d41a69bf4538389b398aa992502310096c443ba20250a8de0cb50eaa96ed8a6716042bbc57e176ac3033bc8eb7c1743c751d523c8e2ee0aeaae89a78f69e21a0302047c435bb500663064023077b5f7fa0cfdf3b972e92e8a1e068fe718da246db9cffc421a744775e0d10081f67b9cf7a7a6376f15cab5d36ebe1b0c02304b3315870af7482bc6185dd434b71b39f3500299e300a06c729380810a4df1fe234ffa0ff855ee766e9e914e0c55b2bf0302047c435bb50067306502307db29463b7713847e1730c8d2e52864e806c5eca9ea8aed93b0f33b14bd62d1f93c4def69fab05ca7078fa16558d54ef023100bbbefb61360e825e65a7a5062f242d72bd534651ed97348e5de3d0bb7b7e6c3c59c75d9c6ae122d958b60b37519125960302047c435bb500673065023100b2a82c813eb60c7172f230a01feee5f3649e3fe984abd770e5419385120df54b9ebf85b55ff092e484a2a2e4715f2b0a023017395324959a5ec2469512c6009be113b748d2e6c28d6b1a6eeb2acbfa660481347921003c98e1588728d463b8b5bba10302047c435bb5006730650230149397b1227c39b88f6d157dd6fc59ed210ffe057fcaa8aadc5c8c494bc84b8476f590337a5db5938b661783b21a4aa2023100dff725dedf64697afedc89b2a8c8524769aa67eb78695f0ce5bf405384cde1a233f2b635ee8722f32b4ffa6245880ba10302047c435bb500683066023100e8a2e3bd7f2836db7acc0b1d98cdd59cc10046204b7148249a6a3c06d02b2ae46f6e6c64dc0b25a40653261df7e742da023100d741cc9a74f9820908e11b3222fe1af6b1e26e331d5498aa7aa917af835b9a9d2d11772353de056374b3bd4b70ed1ac80302047c435bb500673065023100f469eb93c91837824a75e768d3a9bbcb92e7c244c07bd0c2a338cabb78ac0924027d2b4c90807d8aca4183eb2f41a2e302304fb1a2df5b129133bbffb4c769783128d1d474a973106bb095e54845ce103b3d628fc730f7d2d2afb3289488ef35ef3a0302047c435bb50066306402302674a5941ea8d3dcc9c57250cf3fe12119e23b802605f08128e133a02edee36a2f8d509748fbf41c0d823cd23e1456bc0230734c45b8bef13880fc0b71b8d83d8b07fe118889e9208f8f916cfe9991b230f7a706e5d6a676af9c8e5660a401a96a790302047c435bb50066306402304eb6504005ee47000f4c8e64894935d378e910c6eeaa3daa41af3b36e53abc956bef1f6f517ad9dae8faf0a768186ae802302d1574412545fa414f43e3a960033927891bfa9381b6c90039b73e7a23e6de89023e584f5ad15cd2a7f23a5105fc685d0302047c435bb50066306402301cc75c80f7f81b0c86a415718da3127438e19010b60b87b2632b932a6d87dfe5746621a86752400016b95a08b95d9ed102303d75b2813c1d03bf3a5f8685add8e690e09d16d309544805b8d05f02e75a360558ebd0832186b7d1087f973babb442530302047c435bb5006830660231008096d7ba71ae715706bce5c9ca2b26cce3fc730aa9273da9a9efeee00a68cadf675cb0f793e7270f6ef8f8f3110f5c59023100bf524f348614dd04095309fbb32c7ccd656c2bd28f6d19f28f61f674a559cdeea24c8de00ea39220118839213185cfde0302047c435bb500683066023100cab7f1e563b4a9b0a27777724f076089dc39c9af69e4178f2a0f6522c119120693aaadba08043c35261089978d019b24023100c653b7b5137eca2436e4f04a34ca3e8c02ab677905cd7eb81d067a27862067efab4ef4b812a9358eb7a55bc0efb058a80302047c435bb50067306502310095aa08815ed249723c39e7dbe5596295934fe412fb97cdfef7e45d3e00503dfd1fa0fd679bd854ad43704ce9d190d73702306b723ab257647af126f87670161c9bb927ab09a03579bd4ea8d164b32c7e41950e92f70fac7aa4d86c44e4d5162ff2c10302047c435bb5006830660231008c9ef787b1f5df542f62bc80054e8597b4ae0ac574c63bb666f82f1893cdec14b56e4f4fcab321a1aa2c6aa81d5d8c95023100e9960e226ee9439cacc600fdc6d6eb5db7fe2a4f456323b0e4b97f96076deb52c108d49bef6bd4bc43885d13229a122a0302047c435bb50067306502310087ef5fe9cafe9e85f3484ebc11279b6e020de6d0b5581a5d2325378cbb8ec828e8be46f1532c46ac9e4e45ac6cf5a56902303a4c5ef4f110019394913762b38581c836da4bb8db144afae0701d6120b74d5369450283e83602b140412f9870e203920302047c435bb500673065023100ff568508d89afe6daee6a58ae4b163580dfac0ff11157978a26f25a90e627be9b3b3aec36afb14c122cd88564d12d14102300fe619ac59a8550a0cc14b1d7758cd5ed5a0df8d13e35be03d583c1034908a5a0709c3edae440860edf93a23b12e244e0302047c435bb50066306402300c150f7b4f20b30edd44663c29e25c84bfb813579c3a6a6c363ea79cd2c2a643423a8aa1c2ac7faef923954b2c7eb980023031531cd06beeb14bb625d6d53938f836035314817cbee2f7b3e06167da67faeea1db2d09fbe8ef88b0d2ebb3652813710302047c435bb50067306502303e736a00f61ee3289cacd6498e5ded2526494bfab344efb30d5ffcb203be10f5554b52f05ec64c0b1f061ca52e1ff3590231009913a44d54ac852fe276954cb6336a187170d4a3fbe7ae2423fa6ea273c6a5b3c33fe7f3376ccb82ddb7b8b754f8e8ca0302047c435bb5006730650230635de070bfd45e3ce51b0d759d59d324d54a497bf195aafac900a158c4c82acced158554e0a7cc7df26a64bc387cdfc6023100eaf087e6a48d2e2c0129d011b342da447825f20f5f1985a3ddda9fc47fff379f0b69bbc40ebecce94ac74d77a04ea5e20302047c435bb50067306502310098098277b6616b281d89620d0314b58f42b009e0f9f2841dadd262242332bad89c3cf9c0c9974c36c3eff76dd8c4b6cf0230458e0581c79eb27ae7a783c277a5ed65c3eab61df0fac8124d79b9c0424039eb4efc5f4660564a7cb2bfe6a82679bbba0302047c435bb500683066023100907c04ffd4037b34ea3d62b476c1e5b99cad83550999e488fd31628e343c822a013e517a7c98a54bf172a628303106df023100b0166a168c67dbdd79b3ac3627ed2144bd2cb85703148472016e5e7585449f799f024e12c9fc70c028c3e5b092b7eecd0302047c435bb500673065023100a8c955993859709056fb6531d4db2846d5b2553864cb6bfffc5aea4ba7a7573ffefec2d82dcf5511bf92ae089efa001602302ef2fab645c60377c5b1953e6e26b78cc46eef0602891eacfe8843d83fcc44573bc85abf982ce8ee842cd6556c2cfffd0302047c435bb50067306502303d6caac8795e6e23c38a8df2cf11a0e620f1325a8cf7299ce9bce6d0c109eff3d89b76bf4133a0e04e97abb593c04db8023100b5f0e7da8492465c5cd6a86ed1daf62c5eb4f09c0e6f9d915a76830bebc5da0044568fe6217d004b7da48d62863378c60302047c435bb50067306502302665710675af7c95425f1d9e31f6c4f553fc036f895880e8b35a4558d2264dab0667e9a5c43a0267df240cdd48a3ded5023100d99284305087df35d596e9ee46ab7be41ee630bea13cf214a8e4dc1d505e6c9595a4588ece035a82426cf8488d9f074d0302047c435bb50067306502306c2b63fcb5220ff314e4f39ee548c91bbe572fd45c703db8bfc18e169095d59588e59d07de8f631c3ab28171451dc7c802310090955e80658feb96d7cc986abeb9ba73274276f3e176092feadadd9af0df75c1f7b99217e27267af53eb38d0023758e20302047c435bb500673065023028ad9c72e1874884b7b7c9c6f3972332dcc31969e88b9b72300fa7c76219a13a8b8b1e8b3ccbca28a324c26256c4ab74023100a85aca40265833d9fb7a22d54fc88835790ca97343d243d5bc5b24003d1489a4619ed9e6c1f9904a6a1e854e966ad3fe0302047c435bb5006730650230642c25190109e2f79f13af3cbd0f07d961f0c675e8496071b1982b638d5c7eacee948e01ebf4173bb42813d399cd816a02310094596aaf204b9c9fe0dd9b125a20da29e66a48409e5883fe93cf205ce93d1223bdc1572593637361152a92c865767f700302047c435bb50067306502303467e3094027ebb67ac30e13fea1a8e4dddb42d66f0a1b594bb4a01fca753eb6fced706bf81151ee890019678c495cec023100b7d2ad1b4e43ee67f8b6d3db588b7935a1f992f575330c89e3f8e7eabc0a2f86b0ab734d8f166f7b4e454a49b7f919550302047c435bb5006830660231008fa237b8eeaa85b551fae6dcddf6c3dadea18400b62602b78618a4c9a82f52bf207b82fdd4d3998786227ba2b953bef0023100963470be6b32a998d73fad9d99b27c91e789e37b63d74ef335fa525927c6230e809ab3ee12ab84dd14c9676c6cecbd090302047c435bb50067306502305674ffaaa0bcb59c55f7a812850826f88085cb870acd3f3d5c98007d31983c95256eb5214710e34ee4d8fbf2c873a5bf023100c5422c454e0892c1aaa48e23ddb9fb6e41ca324bf2aae36ba62f747996ad8a247c08ca1828ca352bc6f5833bb9f189f00302047c435bb500683066023100b4607e4882779be3814f44be9cda72ebe7f4d7bbf0e2ad2809db61d11a20ec990327118a052bc16b6eb1db813615eab2023100bb170b982d026b8d3fc74cd551b045e0793843af1edfda4b48850c8758084d0b9c8773911e298aa93315d8779cf340650302047c435bb500683066023100cee89c5c5de7b712ad2f4ee7aeaa755186e530d535042665821d7ce5ae58cffd2dfe58729e9c079dbaa6c5f4be4a8b76023100a6b158d4ca7c4469e0ff831fccbb3ad1504358a1c4f810b66fbb324b982c5d36eded8499d35a359e72cdea0ac56441440302047c435bb5006830660231009dc59249cf7f0778afcc6acd9e6e3da35ab96a4c41f79702485eb010a1cd6a6e370ac6410562c811b09b904968f46500023100c331adee311362e14b7435f560c5a6845c8ccd63ee3ce3c94d531fca2843050c27b9c58f90f71c1c911e4a9f8875e6680302047c435bb5006630640230182c526b1b6b31cf81b1eafc9f881e9b8587f47155014cac5086dcb81bf2efe497c33dc0389ebda4dc2057bd83d09d07023036e6cf60be172f497eab988f438325c6b56fea1723ef621524105fa31deaafa2dffb2af4d9f8fd3059eafcae8f042f970302047c435bb500673065023100dbb3d8a91a9a3c82a3582cd87e5049a647eea36a54243b059d5a82c78448adb9337b91997c478df6af00657c7a6ea3a9023005148fc159fc52c6887d5355733124a6bb927138ecc7452678a8d019329e0d787e6dbd97bfbb25ac16f01b2b546f4b7e0302047c435bb500683066023100b589029685a8a13bb4cf126cffb54457a420c76483647b993f1f37075c89cd9e312562f50a6f173c736c470ffb3d7835023100dbb4d73a2becc163e37713bb8d89af5a618fb2efaf9a03c6fd9976e884d2a5664928486f4d7a4a2e7b99eb38b10b60430302047c435bb50067306502304468af15125c293a9298d2c2c05e6699b443494cc326b11e98ca887e8463e97922cc8a9ac34849b64f09c84b7a40b595023100955235639ec556d6a8bf016a098733bb858e8883f096500d1cde55172dae0a66632b433fbdb0d28dc39c7db8f250a5810302047c435bb500683066023100f895ee91e3d3a2742cccef3dbb64cd33d40ad7ed3e49b5ad10f9dd76bb4bf396ed8c59fab46dd46840ac152ad4804e73023100b8738081e291fcf9e3dc427e2fabc2cfb2be58ada32c3582b2fe5d88b2b9b1e4fa3032844985a21c5200c907178d5f230302047c435bb500683066023100bc49ceed4c4469030b29e18905402bcc16682cece41328b24776978c5a1b87806618e0ad83a17f56c47a3b2484679dea023100c61d8af3856d07e9f008bac68d33e569a3b45720a82ce609a9a6634c218eca4fd16f90bbc10783638f9212912e364db40302047c435bb50067306502304a0992c5354efce7d874bdcb335c2658f145c11763c451072a97291e0fae7b19e204d32cee7402c73ad70cf3f57d98e702310092f884f96eca57233ffefbea1cd9c96485ac5e2941b929efe2d96c57a453d62acd01f7d7e023b2f9287eb81938b1ec050302047c435bb500683066023100c5605fa7d2663161082c5e17c55a754dbb341d5d2310f17aec29c266882cc534f1af1bb9ef1ce3e41df10e0c6a3bcb2b023100e7d6fa508a7233a623d13ee8a43a9fc9e6e0a59498f1cb053055d0ac0fad040644c2de7b0bb8e6006217bd3510e4b3f50302047c435bb50066306402305e4dbbb04110c132cd451b519c49c5cc3489017b3bf62f7f66fc1bac6810121b601f944c6364a81321e860f6830931bd02304b1dff21616d98741e7db17777836d03b358fd7786d9acb9ff8362c3bb8bb0c3a3592dd437a3da8eb433b55198b884290302047c435bb500673065023100bbdcaf64de87d6e8c1600d47507965d7a3e52278c26a11a2cae8bf87ad6e5c618b4591b844e38bb23a3d5f0de081a0560230644f95d98bcd27860565df73ba5f41d3dcd08432ca34ab514f00d8cf045cfd33ea12c1181f07f35656c6ca1d6eddb1470302047c435bb500673065023100e66447745e952186a4cf380b78a904fd7c58d1e6d5df6c5db7eece6b7b79610d8bfa5212785b18ca2a657fc08a56e19402303a371981f44231f52687be89e79b3caf467a633780810d7c62b37f1d4880c529ac6004fc1a2cdda4b93e74d4d122b2450302047c435bb50067306502300a34ff3d504db58d1ae9eb5c262276639782223a822063b2bf83870be16ed32445237a17b4a56b52d8a29bd8761a6739023100e0ac48eee781abe751f779060ecfe0b4b61c043161e4195f06796e2dbc0d7dec4aefdcd9a308210a3438f9337fa940a90302047c435bb500673065023100af690776da36555631050448c31ab7a31f989a8a958dbd68866030c039480495c9c3cf870c289bdc2fe84f821c68771602306df3c24a2614525e6c574e5f57e01651ee9dc8ae266b868b107f5c8d9a7146f4461c6845b321af19fe5ef6ecd3b0e5ca0302047c435bb50066306402303819e532188d4666a13ef80f98a86cb8c2c4d5b4978d2d4f3476538d0b8c40c48cafc5fedf553fe2f8a3a1ec16ff72c80230025c87a8e6d96e9036bb92230faee9c9c13e8acfd40abab73c876442b109c1cd88d7a3fb1f2d8d5eb5079e3c4d3bd1470302047c435bb50067306502306697d7c25a7c9e2fc4856dbac0f6c0ba589e7088fd80b58ada4510e2dc2d3362fa4119f4acead08f4164cb3a703d2296023100e278b4cb13c8ef0082338f5652432dab899b2df75754a67771d74b4c0bf5906da347291ed5b2c11a7570891c040b6aba0302047c435bb50067306502304829da25937a7a9b21d36fd2f7292dd1b90bbca039c5bbe24d311206ad2c27b86707c9a451b8b1e1524468d5a622cc20023100aa8a234bb0d25417a852fa7627fca8df66dbadffbbd2c66d25e8d109ff3b4198fe54dfbdf36d624d0ecb1863e47f2ad50302047c435bb50067306502310098ebba293ddcc74f1e073f792888bc40df34f8a780107fced7f08aa8cec621eabb3ea51cedf76a4560cc102b6f277a6b0230067b166c14643f73851bc026ef0691ebe5e0980b2152ed2eb9e48b908e6150602ac9b69b65248caf294b9666cc62dd880302047c435bb500683066023100c64a549d98089be4656f7f7cbb94ba796e7b52eccebff3ecc9daa38fd60271f1eeff6dd7e337eb4513359a1536cf2c19023100e24c1d1af8022d5df52db75b34c8ddfa19e3d79de7c51b8088125a5f2a1a30ca2e7ea8925ed0b8dc7216d996c0918a170302047c435bb50066306402302571605ca9e6c7c371a4c1f8541d42a99300a8250b7f7fe2a207d32005c5dc73c72a10a339e1a870f1fa9988c1d04e7f023013a11cd1886188201e035ccc00fcc193f6f18c6a87b80d23bfac086435b9fd7c53878ad7b75be8b9ed9f7f34d7851ad40302047c435bb500673065023100c5b44ed7f9a4a3206b7f8d318cd38f66cc5b203792011e9c18c6e84441ec1fb53716c4e705d76dedee366804ad798e2a0230385ca073abd3b1d93c1756f5a743a45afb19a603e1db44bf82378e2992dfd92d398c2b48093a74122e570994518063f40302047c435bb500673065023100c3acd75e08e53eeb5061344b1f3afbda52c549e8e5a05022ecbc30579b09b81e7d478fc0470c8216961269860d50d52f02301bcf79303bbd292fec3758824fb9258eb32a17642163e23ea2e95930fa490481e13b7848e4c1c838e99daae304d1062a0302047c435bb500673065023100e837c3c209b9c4f5c484605a2e8b31a689eaf1325af383315ba1b3b96fe886326083fc0f18cc00df236e42dab3b46a2b0230642006a7c95bf5912e1599fed6fb1d55d4d1f106142cc868026a54ddd4e34fce97d79ddc566be3ae3304649062949ca10302047c435bb5006730650231009ab3a0965815249a9c3e856d96e6e460a587f14d3306587a0654578ee9b13dd64985d8b8a757219b4883ffa58f0a596702306f97b6de01ae29543f1e5802662dae427ab4da42167a70e267644fcdde16f513761e25a374b784eb8654130e8517bf770302047c435bb500683066023100da9882161004c6272d30efdfd1b1efe2df326b57953800a49638d7762a8dc00414162abda5205c8f8a95b794f302b8180231008e57b122acee2a4059f157828128d7a23623f4fa6ecd974e15e905e70c331851e4bc8ee1796c3a368062f170db3119e00302047c435bb500683066023100c945c62ee9a237d0f32492effe27e6cf0d1eabd91d79b5e2bf47c4c5edd4cb34bd8f636c6a453163cbfa78d7413dda92023100c9ff75e6710d4b73a3cd86bf780577707b2f128b99622d740c774a24c4d5fa0c422fc0f3eed11081371116af45ed4db20302047c435bb500663064023060c0a39f311ec05180da5dbe74ab209d7add6141438380967d46b281433b06b19992c647d30fd1346d3ac94b562e845402303a753052f37dffbb70c37e28d486bde0a0c12f3959534404388f1a679a2a1d4e8b3673ea4ae4af42c36914515efceb850302047c435bb500673065023100b234037020cbfbb4e28610c55eb6e5b9c6d4cf765ff71eb3ac3c681589c0a868d123aca14eeaee36d8c1f4593bb7d5d602300d6c9ad872d0e04af67c3159ce05fa1dc0eb95bee3194628a139196bec7d9f6f9c8a04c16d33a304ea6b4a5147dfb55f0302047c435bb500683066023100d1d2c97cc1c61a46d239049bd7ca3eb59788603bf621a9a89a9cec3d3a8edcc6e328f42458bdf75e14c58c45375a84e402310095184992930db3e86a21ca9d578fa34ca327fcd9ab768ea6ecd948f4284adc526adc89a2da505c0644b1bc8fcc7675f20302047c435bb500683066023100bd834d711e899c6ae5544ece07c52dc6d8db3ace1eb51ff0232de51cdbeb13f603b6a5c2223af9487123b7f365c5d66a023100a31ef6d9382ad29c213d1d09e1ba0871834ade2248e90a4d295e4983f4617372c78736f552c1aff7228e61f4e9d689c10302047c435bb500683066023100b98b1c069e4f6250c752c73167a62cdcc24f2291f3b0f9ad60eb4b2d5f3cc8ce574ec9c95ef0e496e357cd7165d71d8b0231009ecbaf0ff2ea8158ec0fd24ed372bd530a788ebee8ca531047a5e9565bf9d3eb8d511e0de5a75a7565c174690e6443b70302047c435bb50066306402303b347b8eb36be56e2dd388ee57cdde6a7df8b837bfc00b0d5a1ca46e3fc51febadc825247915f8fdfbb17de9bf260da20230511244c02a973300eff0aeb201220aeb54e9866601f1e095b7153c8bdcf8b9392fd9b452609adad0bf9eb046fca9be8a0302047c435bb5006730650230425e00d800715815fe40a72176674190324daf608bd980030c9564816150404560f3c101c2f3e1abfe811da6211783bf023100b7bbc97d9bc3e889ce545cf81c59d92611cccc10be7b01cc19ecc5c42c0aacf3602c899034c095c0db3482a52e3bcbdc0302047c435bb50067306502300e6dea239821214863d8691ddb58d39d486234f4e931e14b05e1d8667578418ad2a1f6ce162cde2269da16ce79525935023100ad9be9e544513063b82ab3df619212084df8863dccabf957c77a4faafa20d5376b5da26b75badefe18cae560e5b637000302047c435bb500683066023100d6f85da86214db1bf018db3ca3449b792603f603caea1086e3412e77c6e2487cd97562e1f50befa99b1a13ac74313bf5023100a78f9fd1b4b5335bee2b1f1aebbec738d28aaf880758becbe6d7f47d9a544877bcb1823318d06ccce0d7e6079faa93470302047c435bb5006830660231008db7c0fac2acc6533f1ea7a78434e6378697cd748c809d82d5fefb442a79d77db08a0a7689218ea46af8a2c80541abdd023100f19a605c67d3b911cca0652c2ad7583419d4c01da6eb3cb856901567430a7ca6c672a6b59296de12151a86833c006c6c0302047c435bb500673065023100f8ee28914ee3ebd6901f8d7b64bf621bc3332d1bc4d377ab73212538b26e6d9bc457fd64aa2181313dcaa5bf85f25d66023026101add635986c844c6e7dec0f4b0d5ce067fd41bbf57d37f3028d52ee14483323effd7fc1cbed7b5c4549a86246ffc0302047c435bb5006630640230213c58d9946e42bf8db01d8b83118294b77a42c6673ee6e28a8efe7f325e5f1295cd8d7144d8a5f61d012dff2a7937f502300fd5726b731eceb070fe16d9f48f7d9a8aa367d119a69f0ca0f834f549f77a1ffd58d753e34076c9b6408d0d15bb90c70302047c435bb500673065023100a0bec5f44c6cf5379a6d661c47b96291fbc31b0c5f2752dacd27bc9c91608a7a3a2e696a2d8f45064dee4522508960b4023063ffd2d47145838eb00c53dbf6d4df6d7d422c9a00212a7bc2de27af237c6ca6eb1a7b1243991f1043706f71c47d19b30302047c435bb50067306502304dead652f0629c6e5b18e16bab985c1b84302b54519b2c25024c90cc552ab888a46828ad444a35dea24db70199d5cb22023100c9d3adcf41f4d80bb995052afce333af8c3484f430548a87572a2b5e9a6a9a1b7b59377e5e1552468150fdba20f8952a0302047c435bb500673065023100de83626c143911a2a81c163570ec7d344041d032056a6838c728e0401c647540d3edfbb57c05a233fa5764a6f541e789023070659bf44bb26a04046301915f0255b70fcbc357fe9410250f0732318c3a7af942474ab535bb729d5c94ac8cfaa347fa0302047c435bb500673065023100bbe207ec651f0ac99539e40f23074ceadbf007b5839268a3ab939b4387bdaddfccb4c129a309bf218acdbed693b663ad023007d4a65484e5ec43e48272c349a1320ae47ca6783f0314724fec372e9185732611489e66236566ec02f8da1dca7f2d2f0302047c435bb500683066023100f25b95f20c84035418b19c4fce23c012379cb653f6946d7050406dbb851c11d003ac0897b5bb9e73329b8eb82b2c3570023100cea998e5a396864ec622d63aec586c3de057583c6333e0b3d7693e214c5aceb881d575ab620985e6ac54719291bd00660302047c435bb500683066023100a3f71fe52c393d65861e081caebd4de1698d3e15c382f3dfbf777190209547a4e3325b44e0188bb000bfa0af355d6589023100f615caa2ba8cb9f65641de470a5e8793cd029a26819a7383577b9238c39fcc39cf649e137c96b784db9c6a0d8500133e0302047c435bb50066306402301ec444ea6143deee126ef8cf7999ef81ac1393d2a2d89d401896a643fe4a8e5f34afeab54a210ca853298975848d11ef023077114830655c1edfc3f07f5dcc87c2f423a7503bac32bbfbfb14ddbf5e80629edf93cc9d2af95441048f1dc9479d71990302047c435bb500683066023100c1f558676c41b354e6fec45e5bfe209067e16871ab213ff2f418df6af85176cbdeca7c0f94d92572fbff65c4c1ed2642023100df389ee9d2706029a8837050161326110874c80104c168f43a745dc5c19127b0c8d5026b46ce986cbfac13a2174e9d560302047c435bb500683066023100b0243647d1cb39cebfa04f23c8b3c8dc1dc974c84268b78c616b116e83e488c10b3291110a948e09f9ff7bb3f80e1fe2023100f6176969d0ddc47b06b26d60e4840dd37f528249e892d131beddc20780246dce72d4f66678f9f64898bcb0352cf7ef1d0302047c435bb50066306402303485820692ea642ae42cdcddd950af603a8c4e1de1a215c1c3c14e2922901d33eaeafcd1cd394a39c7515f5804834e3c02300a616c311d0dd7e1941caee03487effe341ae8cd6fa218ec619da0411ed403dfb08793a660d2c73a1230cbd7052130c40302047c435bb5006730650230619198c03c7c5bff37e56215972981f4eebd08e7abe81eae3d5fc9300f319f7c55c7af937e00b3743dc7b7747f26fcf6023100e22e665983dd3b981e8536a706d7b293db2a168079706baa5c63ed94b5e11ee26a64636b3946a13117b484ab7eb210510302047c435bb50067306502310088422b5116321864ee2b341bef9c091c15c31e4d57c6900d108773abd78ce2930d9db259d6179383fc84cdabb9d26d9f02302d6e549d9b6c62481d6cbea9e0230ccf3dcbd9969a54c4181159c21f0f376d6d2a6101b6fbe9c9a8acf9a07164b94dcd0302047c435bb500673065023100b26bc8843cf76b6bd611e3a29f22411f9b8c7f67bcbcd6fa870db2374a3b0ae37a815f362a9748c0c4e02285c6c7e9e402307a5a082f852e1bf40bab90c2cbefc4f9c5465da5ffb4e762cd747bf14df7878f7a39958853a8a5c6ff972660d00531110302047c435bb500663064023073df880ce1cefa792938d38e951a280621dc15e9f1778f15e255e4f65bed15367fe8bf0bab80b1bc52bbf14da99e1c6402306dc4ca924c5dd903237d18b413264acc10c9da4777b242db10422e80f5bdbc30f2d86c13ff55ac18563ffb949876d3560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d87271ca47d53553a8ecb666dd7c54588faabe8a3ec017e477197115a51740b87ed00a34d96c052e14fbf629618a0f4a02300a575b9c0ec2bff0bfc1fdb6a7df170b66be55eff7b549dc7043ab4c55d8a59a3d1c60a6619bf586bb73ad9045ec167e0302047c435bb500673065023073a7398e9dca533702a35dfb3fc49611a255dc538a713210ec603143fc6e42126cbf3dfac7cf1f0276ecaca1fe6b0ec702310091bd37f34342cf110a9c6e8fc741adb8b04138000cce0cd31d254bb756307f10e4d5ebf3a9caec4fb9ad09264537c8e20302047c435bb500673065023017f7831601bb5416572aa7c321ed5adb5299a82dc2606a3b3d6315ca876838aff5f64140cf98083fc4a722168f50eeac023100edc02ee351b814b05a0c091532dac21f6403e1e7299d5eb2fe05d8097aa1577c36481e1976c603c9bf4fe5b4c5ef7a090302047c435bb50067306502300eddf36dbdb0d6973f4217170579b0e5516f0f6d323987184df9229c54ea99309557ef52edd0a47f89d841017570d0ae023100dbac2972f8c3cd6d78f0050e64350c7b40f1019f3254d989485af06b23550a25364172c32c762e1094de5c1eaba61cec0302047c435bb50066306402303252ff1c824c80be6501783b01c04fff57b79b440464f4c361f62f8035bf61ac397c10e94c1fbcdc2c2af15453b9ea2d02302edaa69d4e277fda316691608d35729c92134546fa063e4dc00b115ad310e104db5a07a13d4871ede75655a40d178af50302047c435bb500673065023031b2ffb5c559b41535eddc7034dca937db9a76b37691b5e7b03237d33c91e5f5fd0cd83dfb75f444d5e7ac198f053cf8023100b74e8d586d265147c4ed4857329bf42e84c4f3f71de04b4f872c12dde93fdf31f9f680a974953103c59722a456f7e0910302047c435bb50066306402302d174c28cbcbf0a813c7a21bc65229b3f65f9070b7d5fec1051c4375bfecfade31b70cbda8712d6da686a80a23a2918902303a65fa68f8ac7c1269fe1dc15e1d6b484746e4414becdd85ff4da8325db70cb9df3dd6c4df927366e15e4b6d687fae570302047c435bb500683066023100d54c23d148c602ca61135fd573bf1e7059aad869f5316ba359469bcface73949480dfd67a436f6b0c4514587e25105670231008bfe9b4cdcc2c6cbb3c16cbd50e71a0f9dd731c47a50f4fafe60a66a58869f91cbdbbc1f10ef87341e6a61254dbaa9a20302047c435bb50066306402303c5f50ec5d943b8b709f0a698013b7b58cf0f8d93ea8464dfe1bd0663592868a720d6bbf836d9dca6e4305c1db41931802300dc91483d5c881c69ddbe46dcb64d7896415fb39ef0d654e16bbc2f2a5f3a16e321164d94f4ace57271aaaa91b80b7200302047c435bb500673065023100dcdfa611b1643137ba2634798e966d9dc82e161ecf187126c80f64d64df6f073ccd165453193f42d18f996d78f389ff902304f9ee12ea7bd1a69558e047869458aae57cfd4f6296c19f62a529d0cb31636b9083016df9d1488b3cb181cd5d019baae0302047c435bb500683066023100fb36f8aa93f8b951561e5c59f5ee45f8aad2bdbdfc9cc75711d8a0a759922743c6677807552ec333577f6ad3910aa98e02310095116b24cc35ba952bf681270951787f7a7515ced0968c92147a5841c8e9166f4e7557bf36e1948e5e4ed646f1bf6cfb0302047c435bb5006730650231008c7b96eac4834a8e7dae072eb1b83bb8f3049fcbaf694b3c0e99885881895d9f262593f1e2ae2e0876547a8e7538d5590230102263585fb109daa396a42f4877bb4f8b1aaca3ec0743424c3ac36fdaed9569d14d3a63762296d57f4036ad846988830302047c435bb500673065023100d22eb734ce2b077f376b532323291a8cc9d885aa2abf3188e710bf09aa9782eb4060796e5bd6d914b55e7086eaeddb2d023064ac6c0003d6d3fb0fc25e58cebba9b862db2b1b2594dad37104016129cb780254d83aae5d660cc3e0880e33932c62f30302047c435bb50067306502310093face1f8b83dbf6110ca3bd5853ce10be9e19704286f4664a6fd7985bb0c0488943f3eb3a1f4538717e1a9447842ec5023047732b77df3591da2462fd8ae36f90231b4ec674efe6429428a67a997be3ddb27d07143787cae1c7d961749aca9d96d20302047c435bb500673065023050d1c0713dce495e3b401460a8f65e156faccb4f380cc9ab0467baf9e9485ad66459bed11f66c1381575ae6f2667e1ca023100e334a3b4392984576bbb6225751ffbc649c6ee5cf6ff06a7aa09aa052d53bba4d114f2ba41b0e81330e0233bb42ca9c70302047c435bb50067306502305a08993627e8008728d7e6505c6ecb92e056b765a13d95343854f13ca0e66f21e3fe010215d8f3d3ce28557ac7410835023100efbbf0039b0ee2b0f2a1b5bd4116664bc749e9b37a7f69f46a94c17630b2ef72ad9d36fd887d507015123c0f08f08d340302047c435bb500683066023100b2f566ee3df0038a6165d745ae2e65f372625f91bc456efd4de7f9dd217c1775f921efdbf7736af5c97f1a3b5b56c042023100a539c5ec1840f4d894b22958e57f764a16d404665e1b9ab81e244c9ca435be12ea12f5b599406b6223fb1bb16dcadf270302047c435bb50068306602310089faf0853cd0764584347b88f4bdd03d2582a419bde5f7dabdcc12435a15f49ef8e946ca4ba83f57a7c292d8d0b3d049023100c41a10464a73c8e2fab76445eea3dafefa6187d8dd0d7462f4803de024257087bab87f4017fdca0f799005034e156be30302047c435bb50066306402303b957a7a11188ffce1379ca9844969aedace0c733906f5fc7db4ca07cfad19f09a7ddd31d775b0af14a2cfb20b098d2f02301544e89fc755cd725e707d7876bfd557f93ae398b578cf01d89ef9e3c83d5a008a4d2202b8706a118b946c289af3a5f90302047c435bb50067306502301c07f3b4bc7180336d50cda248c66cd15a803594933bd7a4069e6f98e4839ee7f62cf4f7a89ed82ce216cc31a2ff13200231009c2aa1db4373c6896f95ba49c57c2b355f7e1a68a7436b7d2b8b3826c41afe0ffd089af873d22f447b4df43c1e45726f0302047c435bb50066306402307d68e95fe0178449b6feb58467e0b6525bed3f9e71af1152deb4ddcf80febdabfd3b250f01db941aa0e797ebc50e682e02305af6076757f47559ad090c44d11a4c9cef790779ae74681f8d8813abd9e503f525b76d22202d59e363fd45c4fb3964ed0302047c435bb500683066023100bbfe1259ed0c806ad4c3c34b04dad0403ad23189dca90f4c9518647dc990bc02b81f63f62700a7d3f79ded2e30eed900023100e3daba10da91efac26862abd6cb7b232a56e7a5c43cd26e6ea3b6a5e749837553ddda5f929a4476be1899cefa6f4aafe0302047c435bb50067306502304ebde47a2939ce01a94def6c9c592a15f69e6d51d4b8b986e976d14ec033d965f5a4c16f6b0eea1eb1ec638ce0e70627023100bcbbc326f98117154dc50c06bff870abe6363c3cbd3a2de9b1de53d2ccc8c99e2c21b323e6581eacfa5d555284c05e4d0302047c435bb50066306402305506457672df741142215b124868acc1194bd070be90fc293e53d4c636ae19e52a924749057c64fc1d93e9dcce3dd12c02304ab758e1024fc1b2cd79edc80831dc0c695b9a6b7eae3e8e09c828f508e753d9b1a3b7693e830a22f2e4d6ca76da31900302047c435bb50067306502304aa168e003628ec8e2cfee0f2267012a9909b9cb0ffcf3253b8c3590acbbe941a7a44b1ba86b83e45c02b4d0d4ece76f0231008431ac72cea83b49cfcfed2d762c951aa9b9c3ef45b1ee184e49bc057d1dcd11a9f4bbbc074076e2797c5235b080cbb30302047c435bb500663064023003c82e541add77a3dc56275a04cc08387acad096dd66f64201781318976d19bc520eaa55a3e473875791c759a6d588f9023035874af173446836c3dede6033a4db37714e9857e23f5e070990e3d4cf8b45f35c5d8a4bf042efb20e85f73b2c113e9d0302047c435bb500673065023100f340a975d5d27ef1bb4efa0e2e76bed3f372768823e3789227343236c52f3a47a75ed42ce3008aadc0f5a209f0bd44c3023061b044d9d2b53c2da9189bb1dd7f1b65f6212fd775f40a937324dd28b39bf62878edcfd900f41e9beb7c4477810043460302047c435bb500673065023100cfc190bb000e2bc513e1f28d396886e5b66948fe2f1932bb634b6590ca5e9f23e968bf9828fed75a11f7116b1bff4ef302306dec010b7597a1558001306e35043080a8a1fabda5c63d6773c38cfe5feca8006c6959fb948121a56748f627143418a80302047c435bb500673065023100ee91feaa3a341f41bce95304d0f028d6f1316daed6143cf5b7774eae13c0f78ef117047c226a05c393736c4d7007d92802301877f0da168698937c31fe73f2ed0302f6d32d8431bc84404b897ffa553489a5dbf3090c57f64ea3f73f62210fe1f8ef0302047c435bb500673065023063d3f1be404c663c677e2a8576cd7cd00f1fa73002ffd70456161ecee29969dfa04595b02faecebe497f56d9ab7b8004023100f942e5d8c9711dac6a153f9651a21f16e1d9c89b8feab8ccf0116d9e60437c4052a0a4dab1c6a377bfe84e267d43a6f00302047c435bb500683066023100f1f7f9e63d2532f8c98da0fb4e06d3decc5609815e41f0306f67e7fbac04796a93ea2b76c0ad245a49f902367fbf2c74023100ea2e44316cbcf36fc268c403c1c190b20621609b2507e8f175df21506b9060b7f5268628ec012da47c1cb23212a26eeb0302047c435bb50067306502302ad8642e98eca7f48ee39f13656a270a83cc033734c3bb4a949c8413330f03bc13f04092c143f77a1cad2a4b3f1531de023100d439622fcf1ddd4ca7c90c006290a59b3634215350dcd124838ed00da45e3d52c875e8b5068cb53413453e374c0120a80302047c435bb500673065023100d0152dbdd5e5fe4824407a1bce63a25e45f82da724649721bdc10520244b80199782b853db45cfda4abe91990682452b0230536820c6b5b4085aa6b95e1280bb01b9710e38659287680c769ecb7c028598e9fcc5cb226f62e1c3995c7ca0cd9f8b3e0302047c435bb500683066023100a9c43c3549fe152eb2ae7d0edf4d9ac616534b3d35358688c5f023b9e720d248ac51e6c91671be471bda957448727225023100aea52a5775e9b09521d3ccf19325ae0c3e48531baf77800491ac204e550bfb2839b1186e185499f091543d5cb0472fd40302047c435bb50068306602310095a2b149a8ac1c0d25fe1d39ad574125c03274a1438080f20edc9bd014e0f1d5d61fdaa74dfb15761683ade4b2d1745f023100fc7395854e09441ec08d9ac243d06889e4d0fefe52d10e49a5cf132509d7bdfc31eb51acf0d992f7d7c9fc3bd420f2cb0302047c435bb50066306402300092d983f887ddd98875abcfb2e3f4533a15734118db572230ce6d2aacde487e804bce8550f0c6235d8bacc6c828c6e20230672f6b90fb9f4b6e4bd446a2d475698550d871a4ad2a6093f585638ffd0160f35826f8ac3e36afd45455dd556a8debb20302047c435bb500683066023100b9623879006a981de82ddf908b14d990d914b9c058f01006e3d12a4aa83ae708dcfe5731c87c1469fb5a66159de6c897023100fa8b21e888a8d2055e68b06f3d927076ddf4430ed155c06d1e1241f0a2bcf1ca75d158c81cd2bb5f2875e0a2f68abe0f0302047c435bb50066306402306c837c60c4e7fa8abcb3c38847433a43ec5ee3a564fc2b6ee147b94749f2c5af5f7367f9839b1511bd37f0786f37ca7302300305fcc63c6feaa2ac75f3fa58cd207ea220a083122f5c2601f5cfb5db4bbe50809599f065e45bab8f86df901ce562dd0302047c435bb500683066023100c3344a2a402bb9662e231e6b08cd8c4d2c5c182e195a65464a9dcfcfb34496c330e5f90ce18ec7f773c6e0dfb1102f21023100b20fd097e31cdd3adfe4d1028c3127702cdfb8dbc94cd4bbfb0e4cc473620c841f11c758c94c74b66df7c2fd56097be10302047c435bb500673065023100aeff30218b481fa16f824052c4b776dc3150c8702b125d578bafef7c691405362f62a9963ddb352de054187e05b7196d0230183f9735844a422e9b23f470dfc05accf7601ef4e65ea3c9b73b5112ef602c9ea196debe07e90ba9fb71d55ce9e339f90302047c435bb5006630640230205a1a3801065cb8d90b68d652cbad278c2af7e4a8d4dd1ac57563e5bbeb41c0e715e10e3d9db48beba797e1187ae65302304e6789f24b24827619cf63522902296068f1d6259b8c66f7df5ffa238529e14c5b2f3edab6200770c90812cc3495523c0302047c435bb50066306402303f3415b0d33a5afcc5fb867c96ad18ebf9c864eea30e5608492596a9dae7848a7bdf4b6be16aba8f78389b063f26f98302305702fba2acf254739b499c3cf23f5b1b167adfd7c0a769e62b64e1a9acac18e01d72541163c19e9e9a0134443d3c8d260302047c435bb500673065023100c30db5a3e3e844579a6264519aa95125797a9a1df7f76f8bbdd7492264be964f3a000f0df3245e9997c375f86f112d6b0230391fc96ab2d10b20259026335d74efb5713a0e788e8334a5c95c54ced15699211c3bfd8aaac7e75ed0dce8760616c6ae0302047c435bb500663064023063d1442c5a04861deb3acad46d5152b5135a46e33666cc06a8438bd92cc0272156b3964ffe524656e7d3404ef6675b06023012bba41cf66b8cef642baaac71b79ea6b99752ec05115bfc184646b3134f6ac92cb16665ea9a0b3934d7dade76f76ad70302047c435bb50067306502302d96e3c970153451289b8f1d5293dde2c58b568eadeebb494bd675fb7a284c7ffb8a8511f862793c4639594c274ba6d902310086df96a57269051bbb9244aaf61bb4f418600a783d81e73cbb2ba93de8a88dafd86b510875729a5986700f8a0c6bc9250302047c435bb500673065023100bce60e9a331c71f2ed5c8af7dbdcd11ac50098930ae252ffd0e98f7c42a3340dbf3b8aafa5188a4fa30bc36a46b205d802304aabb0e9e0ff25cc07a77e2faebfa621b5877d819e319f2b4dbd861ea220a505049f0baa12953ee80708c207b1b340bc0302047c435bb5006630640230041fdf65df735b86d02094bbe81b907ebdcc908b5a8e18fdfb8977807bade4fb782d3cd94f6a812d22615d2632f74fab0230553ab4a97e18abe4b6464c4811513e6c8044213615ca3692793ed408f907adae3db9bcc21bec1d346b44a0347b8cc55c0302047c435bb500673065023100bdccc0eb9140ee534a4a61abe75935fafc94ae5b489dce9b27cebf32d66bc742ee97e7c6b7f1785d08e81edef985d8f702307e1b41035dedc1fccb1f54705d1c36fdc7dd646a1d454135499d797294c8a49ab6f6b9199df916bc99eb4238f38be9d50302047c435bb50066306402305f061086ad4d763e247fa13aa65bc7a7f9b2671e315aad1ab6d2e95c2cf41b229e4ec8fc3b8eefb9b7c6cb5fa25730370230367e3b40f0fde60dad677c7245023d6258b22101223c2c3d8cf190cee0b19f261ae3c66db826d492d4e7d3fa78db672f0302047c435bb50067306502301b6815a25bf75737e9cdac45d2fddd22584a52d583237f6c17c43d6fe39de91384d018fdcce475c9e5a88991e652e3d8023100b979640ffa6b2339b3de41aa79f362286a8e757d862a6df2ee7e139f44a9b8cbb3a6036aba5ebf0a589e29a7a98625f70302047c435bb50067306502306322ea9b7d78858ca1f92ded12caa114e06f2cdbd5c88a541324f83d8a2e4539260843b3693025cc127b478d260c33ad023100e979ca547233c35022f11ff71c7621e56187a29dc1b0de3bf2a12be1864964491a5a7c35d76a395fe10b1abc3be6d16c0302047c435bb50067306502306bf21e992713d6a32dd3c7508ddb3ba2344318a84dfd0db75c4f2a8bfa85d5bd96040c6017d6a9549c4b71a85b275f1a0231008b96532f1a216b649c75796235d1c205341f2478fecc246b128191cf6dc765736fe4073d97cb7aa5f3a4706a3c42bc150302047c435bb50066306402304c806181f35dfa074cb9e254d60a6ffa6a22135ed7acd137e82cf1c93a388a4e11975fa4241acb14a56fa0c2d410f85a023044bf8eefb06be270ba7b66cf7538332558fb72d8e376a0dd588de95586e8202b6ab9d2bf52340da52ed524f0444f06730302047c435bb50067306502306c4e6ad8954efeee2c89c4a180a762dd059249f5fc489e3a43a7e34b619052a8ae08f292747ede519877c7a194a1b0d2023100878306358113da884b6b5c0d8527baffcda9c473034cb3c8a693a234ffe59742454731dd665d59e267ab8f3ae08d1aff0302047c435bb50066306402305781e89a070310fb72cef253a098810f08ddd6204e9a774aa08771072d8471cff7a5502ba813b65e22b431880b81254e02305a2ff9ccea8e6d83da7c7a69192f9529b8854f6aca00831929ead2b8bef525c10b69c5092774666185c0a1aeaed2f5eb0302047c435bb500663064023071de4453b6ee9f3a32a298d620b12929f134250e1056e58ddb0ad2b510ecd9e467c8d8f83c543a9f2ea5633f9e96e83a0230749e833a11a78ffd1de3932ef6f014d83e3f6522bb920c3d246452576381e67b1c38e2d0807cea91ad42054fda3d936c0302047c435bb500673065023100c541c18b17b9523e4933f48ccf7ae392cf570c8fdb6b5a4f0ed9cfc2d93fae4ce84280db19017edd6d334e440b42f98f02305ad3458d7e8b2b9d182ed0a2f646dc1049d2c5bf799ce326055a778bd670c66604ee734583d02c8ad30141d9efc7c3480302047c435bb50068306602310082a90a7249f215772928a98211411d098f2da1682d425ab0bf569b63888dc6ea05573727a9e5da9032ac5604f94324f8023100802ad2e347df7c4cfdb61f1ffdd36a9397b69b492deb3a54f440034db5ca988079a19c2d1e0af045f9c1238397eb0aac0302047c435bb500673065023079a0f298cc84295f1658ba596d55c4f4af176a2f89c0fdd590384a7e8ce5294790e7c3962fc6b2b2714bf4d07cc4e04a023100b790401a5f83a6368dd3a9d68eaaa61e6cc3eced39fc9f13b7c558bbde50e699e27193980c67b7523225a489e56491830302047c435bb500683066023100bcaebe3c118d262fa7147f6116a92c0beed8b93ea2892630e6f785bf4d4369c02f328821cef1ada38b60edc4bbd4565d023100fe1b8e3f17655f42b15aced46fe82ed3947336e5743e4131064db718580c00beddca3d89bf062922f1af1ec018cb5b830302047c435bb500683066023100abd096d039a46e0f6bb97c15eeabf38e5e679375aa6cf677cefd97cff21e6d1704d617de5a95dfe38a40fdefdb4d9c9f023100a22234046f737e79715dd92f37ca4bf00008f2d0618867493db6145407482c1b08e7380ead21a9bca6006908bcb5ab010302047c435bb500663064023040e8cb2697e0bf2f389892797d2318d80ef562597b9b51f9cd7777bbbaa80976bd2fb8040669993f2b9d0d8e399ea81b02305b67a38997965bb26a962cce8c17e5c25dfeb3d3d9f0e15f63e9e29d879d79141051d90723c695a347c9c3f9ed6a31cf0302047c435bb500673065023100c6578806471029442823ee8fede27e4b44e0c0d23fd60677cc04f39b0f47330539fc30f037e9af7576a18025830a5c8502302b8bb5a140c619b83a04a7d9a3ed5843f11ee603e7c0c9ae6bc5dfcbe8b6049d829a7535db36f65094c01bae32e80ed40302047c435bb500683066023100c146e3b39c5771421c8c8b1acdd70e97d0773db03d7fb81ec0386e25594843799bf23df95736bc036081d48741b6ebd8023100e5e91079dc7e7c97fd343a4dd4108402327c45a5f788047de1c5ff26c49b8937fa4cc456b60f79ce5294ea75bc3daa100302047c435bb50067306502310082613ddc76a8f4e94c3768e1bca451fea6d13bf1950dcf227772321592a4c97ea970fece6f81fd528facf1ee0c5f7611023019ed388259faaf5880cbc65c1dd1865cb2f06d1fd556ae94022ff13682da87f5e2dfb6d28f9ac7a2ca02d031ab5ae4200302047c435bb5006730650231008b521ad901cf570cbcf2cfd621a4b582c393077cf256816f915694dc387a00a9fb9202ac19e3f715a76a2614cebf6d5a0230602e2484f724f7d6b431149332128fc8e19633795cbe1917706cffe8be7efa58f450654a03868db3a1b3bf27f9b6ed600302047c435bb500683066023100a9b4a9776b9c029bc7c76e980fb0808ac10590282fdc0b9e1b9c137d93e1a9f7feb110d33cff09ef8782aa498a20f4000231008d196babdba371a44123fdeb5e368804b5f8d8e31c6b842209173c270ea0dd5720a1322f00478f9217904f83ef18f4080302047c435bb5006730650231008d76f847441d56b2fc832cd6db5c90d37188ad47479ff44db5a81b6f4c7cf052dcd2e2bddb9b9e1af29ae15eb201e972023068af740e90ced1eb01bf7a7d8c613cc96a592f033bbc18467f093cfaa6f6423e8020f0823a1110975442d8509f77e3cd0302047c435bb50066306402301a140b7b719bb76b26e4c28ecd5d3797ac8f87b5cf7d9c976bd76794ff76318f59310d6ee27df5ea367e230c3c6544950230055f569854f56aeef9bd4afc2472ca435afa711aa417933fd1384be371d3130b217654051879b0cd84361d117925b86e0302047c435bb500683066023100b729585041b0fa43a33e459b4268d7dc2e1f7756a2ca1ab73576b06012a3ebbd3c717011cce39eb514f6f3f93735d9b302310099dd762fd2d7b787c8ae8f3e1dab2256bb6bdde66522c550a3ef448b76966265810f6ecbdb0883e0bab9ba6ec27117720302047c435bb500673065023100f84ef2911ab2893b437545f96348b42f9995a4ef25b54d16864e0e4378543e32ea7bc0aa62b9643e024ec7a2b8530e93023020061f6925ccadba2cf2e6f84ba20ed96d0a690fc460466618640974bed7fb518a2df72a7cfd409db0c2248e5d6485a60302047c435bb500683066023100ba04b8d06f1e264dfc7067fa5d9a92201c15a7acf15146216df3167666d70014f8245f2284ce81928e216dccf020918b023100bb45b5061ba159b2a76ca9a2f1b1faf909960796bbc332aaabb51f3d13f62383a718630efda68db7e1684f31e883b0bd0302047c435bb500673065023100f57590e85fecebb2e34153041a75f7b89d86b71712fb7a032b55dfab2c822c8ebae2677f261480299ac63c31f718c19702306ea4dff680a7716611b95fe592f2638ad41f14d179b1cc17fd73145bbed9c9fe29d1dd484df150a8ab6206440fccb6380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008b5ec939a446ecc341b5c97ceec0aa0979edd74d112f0de35ca3ec80827605805881da9618ccb2b4739e2bbd83e39c4f02306398b73447b1016073815a0c7b64e34a2e5c24701b16f830af8250be0466459cb197cb53b03084958c3a6277bd78908e0302047c435bb5006730650231008b25769344044a3d58c2b8fb1274955354b606299e6458f9ae22f64fae599d5cecde4cb5dbb35c3c485551eaac9017e402301fc84dc4cd04eb22e706941aea0d7061a885ab28aa6af0f58eaf60ea1c6df0ed0370676e761d6258c4cdee80d65778e40302047c435bb50067306502303cba1da18c1af12408108b6fc52550a5d2040210b588322d95aef2c82e72db63cf4f85117a4b2727d18d9cc07bc72e2b023100be43b18f1750f6e584869c5d5b5bd5d2ddfcf22c3b048ed241a2a7c32869d5c67e8be9ff8d19e331f8183c868945b50a0302047c435bb50067306502307b4645b5f7bfed94a2365995ab6466c660f6ae3721c3ad3939fb76b396a60358f9bb7b8f96af4a00564f9b2e433b490a023100abf22f22cfb2bb2723366379aa34c04eba68f2e2c3acbee344020cacf9ce0fd68f88f43b21d834f18dc62b66d0ccf3400302047c435bb500683066023100aeb25a9794a742aed5e7d2350e66a983adf273bc645206fe5dea0e93b23a0b03dacece269b52b3137d3e5c569e3ff48a023100a74889be862efd6035862c063d7be33053fac6a71eeece1d50029ee95bd3cb84631c49595c971ee5ed8b8f5208334af90302047c435bb50066306402303e17a8aad5856a1bd4410d19546fc25653178aab77836a9ba293e3b4033be62a9e3f535ed90331794346415f6a0b1e9d023034f9263f99c4ccd854603bb9a6e8ab8eb2d77eb7b5e799616b45612f42deb53abec1d3b810e7fd3fd2a167d63540652a0302047c435bb500683066023100b788974b46c6d8d023ee4c4577fa9567294e419bf100c5a9bc6ae8dd1b6ec8f597f208a62de133667f88aeb63f483c9a0231008134a81da00975ad6a62121cd0502a9927ef60854ab9d3712209c9df3a3481224931811c7acf2cf6e9bf2b7d58644ac70302047c435bb50067306502302f1950ef9a0d571ed0f0c7d5012d85e0a555bd013b02b4fe501b9e7fed75e59093d1e531b14425d6f756d96137b79de1023100b92d1820d1dfa4068d087bbd786ecc5af32bbab9634c78d9431570cbb2e5d2dcc971fd03ad6be87cedeb500c3e6d224e0302047c435bb5006830660231008e790003c6cf2ccbf29f6bc33583e3b147e76e7c9793c8bf59e10ded8526dbaea2a9ff2ac03d19b1f954e62f47b863fe023100ef5cc17e9ebeb6927f1c0367f20904c5e32109db68290cbf631f243f20e165c74a7acee5e5100f0026b44052146322720302047c435bb500683066023100baab2f5c6fbe8ab7099df5595c0db02ce77d862c72bac95b1f0c209df4119bd620b1f4212d2c4109a8ad8df2bde2618b023100c3aa8baf6e736c5348d05a6cadfef3f0275f99b2ce407bb55391ab3885db2b40c6c8b3f6d987e2d80a800a5b201d89eb0302047c435bb50066306402300b794fa13ec775b159b3e85fb57f194cfcfe0d00ff4e0aa79739f7378ca0305d8427578a5dd42c65c30507a3a744992a02306a2c8466d7716c6094d1a5f5c466e1cc3ab7d2af197440e3e1b0cdc53eed3a5c8ffc11b95c804faf3fefd4035bdc03b40302047c435bb5006630640230773c5dac18040c92936e6f2a3f0fce028baa4305853bc9ae7c52c47963f275bc185cfd53488ba8cb8c30f3f2afd7b51202303d9fdf7dc6018accf851375324e297585269945f9e2be85d453b7208929d4c823c5d70855e444cfdb1f07a03f4fe595a0302047c435bb50066306402303333750eea55cf99247691905c886aa5e792650c468fcd5652727460cf4082961ba5d3040706c1adc04523ff6772d3f402300dfc8186f5b3676481aa9cfa9022d881cc86b78b5219fe794f1f5384af654a0719b7ffa04b26a310e50e59e3521057c90302047c435bb500683066023100fe8c1ab0543390b7da7cbcd07dc7e59b75434f0811957d2a682f57420fd8bad4d60ef5a953d3ea52fcf998126e127d41023100beed1f34ea51d9e720adbfb4e9f5eac6894cec98b56aec7cef82e5d80cec39ecc38ce03899ad547b8435554bbb547b6b0302047c435bb500673065023100afc7d76d5809f23e4d8926667a1d176d220cf165e21c4ebca2db859da37b8e723ac201c8bfb44502e8c57f257833a1d50230755ec70b3f3f1762e9851812649e55c61600b28361152903bd05f18f276176492bf4d3b2d865ec537c88880b9b9cc17b0302047c435bb50066306402306779ab93d72a3e61ee9f58065d433ed2104be868e9af1783476d39710bcc4b1e006c6d2cd434319d1d9e162a9482fafd02301430fed3ea187b2e9edcb92e961a0b544fa51b7705fe01feb2691703a8d9b5d5601881920ab7763e532321540edb5a220302047c435bb500683066023100b11a09ad910d350c13f4c5cab5b5137dd98b34c75263be85a992ba50b1ef4741f0408a4e46ca7783c17b24f950aa3267023100d46f6f0fd8e0ac63821b505265cfbb95c7a9fec9028f30df8fd3713fedb72952d28c18500fdf59dabd05a83a763a3d930302047c435bb500673065023100e63e9457c1ef025101c0bc7d901be5d8ef8867e76fb5942af9aa6fa8c8f85fea60f24e506bf1c5ffee1ec68f2294749c02302c2dff9fae221a72a407103211058841f1712bcfb729cf5f6fb88310d20080ac48131439f5fe153a46527115402a85a90302047c435bb500683066023100f4d2c4d560e77cac35ed68339c7c09155687cf4d9d1a398a0cd599cfafcfebf90edbf06034b1896aed1bfde6b7ed5d75023100a09330947d0e96c453513b45a9c24fe1b805df8d5ab9a6c40828bde552eba037f0f491abfb3019600c31686a4124a1d90302047c435bb500673065023100dbaeb572985236b323204de5df80dc77debcd9ca7570616742852d3cc3a78e65fb4f9683d995e1916fe17b8e3b5115ac0230132a1e1c1e67ee6c0eff1f62c9760f59b391c5e2c9bdc1738041d0be90b1c665e60ab6459725d3811b2c92bece6217fd0302047c435bb50067306502302d69fa9f5694b17f4a9c8f46543422a31d59dc573dcd676b8fe9da7b6804c3bfa7e3aff0c7523f54f486bdcec268b72c023100c9ab39a7d04e540207eafbd6e21708a8ada9b799ac2b165b02ed6af7f19dd7646a78d7ffd63fcb624c19d20ec43452ac0302047c435bb500683066023100fdd27593b0710235c36a5e1fce3292cf6a387318c16bf7ee915f14544bc77acd865ee2930ade89f53a0c7430654302ae023100853fad57e99ea54604bc83a3abe1aa5f3bf452a1adfca899a6067e0add962abfb1ded39fa42fdf9460945c36e60693700302047c435bb500673065023021c0ad689935dcaf5267964d9ed8efd15be1157a5585371f93c7374f5c7bc0f467e28c489fc0f44c7db70dced43f14d802310094bea7efa2257a86fd6e2363c1b00b4c3aed3c5b3d87916cfb1bddc0c1ff7b8cce678121326d05206014296183050f3c0302047c435bb500683066023100eb3be9c6fa0679b590f00605781c5145743b72bb6c36c0b15b36996185e39a04c4d53fb8ef8e72d50599a7f717a56f6a023100eaf18024a6c42fcebcb72d0d3160a810b148a51dbaf4fc5a4a4d7682498c826d6020046538de1ea17f447ddfb99a799a0302047c435bb500673065023100ef52c097be761dfcd2a56626d08a65b1c4884acc29bc7113c37c9c31538b38711f2890a3396f19ad766df100667885520230316517f319a9f67daf3c76e96e83efba45814ce5cbf2e8f89cd7d2f14e524e5f12a1885002835fca483d8f7c1c26d1b00302047c435bb500683066023100a0a0ea0ef6764daafdade66f82c5873de48d3dba92f87a098baa153f54c3e70bfe892f0708c4b1293397952273cd9355023100d1f5d1140a90bf1b5aba195d5bd096cfdc9dadf3f2a36fa445e309203f0685c63863adcb28defd26b179b46ffab84e310302047c435bb500673065023100d48e331202c11e929ab6db39591875ff2bd9dea891061d93009d3dea6d2f3975113a06cda7726f22ba7a4441eb32dea602303e944674b3b0878a1ff5e9ba7e71834a11861b0c7d95fd9c4cab597dae2a8b9e6193c3deebe84493c6246b3c47a767b80302047c435bb50067306502303a0efc520d9465cc6f4bf9aa816dc678833dfa1d2234fc6ba7c5ed8473f11a1399e29285629ce561b3b6de3d2b688ff5023100bc76b79d8182ee275470d021880fa6e18cb32d0ebcd50004fc31b88698c61466200d972cbdc9c6417baeda996b9194550302047c435bb500673065023008b4f593da8509628d06e4790bd2977041eb3665c8a364054df8f5e8c521b0beb7c9dcf66ea13ef55db56a53517d5b0e023100a02edd8f3567faeee5b6abfaa2e73a8ea9d47ec00e818ab3dba5f2837bd710e583d2775afd4b1e725fcda1339ae509c40302047c435bb500663064023060c9f5e9e81c74b79799a49e2ab0769fd6c87d64842ee7c3db7086cd3e626556a9590d6e56289565b5061583b54c070c02304330a10b1e7a56b35e8a5ff06dcd028744b064da722546964d25075016374d187104effcecbd4387b7a00fc9bc97b9990302047c435bb500683066023100f652829272c76f98c2202b59a9b147aa3fc546e8bb307f550fdd918f7972225ace129efe1a5e6db60494c9dad4404061023100b0525aabdd6a91ac7fc828b2c48f14d4ad2479018a2fead67e1be29a9496c02dbdf5a9f096e455e744357a86c994ca040302047c435bb500683066023100b919d9e4fcb8e7db4527f4d2b28d966881d65604ed1628f80387027f88e466e3d1fb489a28077fc040d2a651bbf9e66d023100f8d0ab206417198bb86a7db6003264fe30975ecd5192bbdf93a999d8c0b922f503d461db5cbcb981b2573227b2e0d4020302047c435bb50068306602310085eee7c5e1bf86d52a9914218085b1173cd668de841deec43b8377158cb2874845a836964e60240dcb2494854190a9b2023100b9c6a600ce686993f3738c19232700890373ded083dfd052b598600c785237b598a7a0ae4e8d31c41d262d6c88ada99c0302047c435bb500683066023100a97d44675c40907e399644239c6ffcdda65d4aae99dcbd808638e0ce90ca013032123a44c38da67292f6a9ddd69bab1d023100d688c920692786f9cc619e90671b0159120d522fed21e4511ba9aa2539356deb52527e7cf8616be5389d52f82bc56ce50302047c435bb500683066023100961c72ed9f825cd32876ad689150417c9384c545740e41b903a9c03902eee30fd7ab94afe68bf9b6881cbec4d6e9be74023100c9e2de5dc3bb27a6e2c77d27f9748fc7ab99007e53cab0fdec244223b9e71e6e9a555382de95234b9fa4dc3a27d8cb4a0302047c435bb50067306502303db1892fd8e148070b021bab30cf8909acf1357f6731043a6db5eadf51327170f6df6eddc230aec5937728d4c8f9d377023100d73717afa9337f29507c51ebd24b444ae8a03d9cfcf6399b62312ee607f98209439fc82c5f15e677396e25e63ef9ce880302047c435bb500673065023100c38915462922a21106e03c53be5adec21bef1564c6c0f3953127bd4ee83863c5b144b8fda303ed5489e76253acf289b00230219deb0a498f58c6b73a36d429e34d447cf5fb37c0f5d7a5d300309e33f7500363554101aade320a3187851ec285ea1e0302047c435bb500673065023100db259ce559e184fda4ec8448bc3a734e91c26bbb08277b9cad21654619d894b83ae58a3c181a184a389914bf6dfca33302304a116e0f348ec85b4383222c4bd5603a766b8cabe32d29d95a797b824379128fbc63590323401facaaac39b0e002c73d0302047c435bb50066306402302c73267f2cbcf22166de01cab7e3eb4d96b2931c8ed2120868c09c83d5aaa16747c6a55b253f93df83f819a9da89004402300b5b5b904949a72917dc2993295ecda2afa557bfb8faa4c5e0e952ecebb89db44708d3462fdd8ba9e4f2c2e87324b50b0302047c435bb500673065023100a73a069ab20cd2feefbef457ae31e4f7bcdb56b3e2eb29c1e5584581cd54c1e2597c91a7a846e02dc801698f0e87c670023056e0cd93465d18720742814feee16216ed76fbbcc1f843840dcf32c36d7d8b4796b1243244068d52b965587cf92601860302047c435bb500663064023051993e4e5d926ba2320e2fa2c91d934b0c504eb6ea909c959f839fe26a0f5a9f2c775d9c17599dd68d54165261de909402300f9e7df35889bba82a37e28d3445df4a6cb10a3536a08b2857620e065584d2c5d1a3b2dabbf79f20e9f47da8793c33a90302047c435bb500663064023051515f7be3ad674ccc20da9ab32c6592304fc7df6dfa2e15170babdadbbe3eadfa38fa0a99ba29f3e4b364abe53c782f02301bbc73a38550594b61b575e6510fd1bdcdecf4d99336f812840bf4c7cef2c8e9391ece6f722ecb60a79ddcce8952e9a30302047c435bb5006830660231008e69db80cdb1a453ab1085791161125b565c3dfc0b1e22e830e8d6113b656177428848c59b4d6e1db1b43f620d190a4d0231008effc5546907d67d0aacbd21e96138b8630d9b43f80358e89cd8fa4b722a15726fb0655e4d16d9b04409048e249773a00302047c435bb500683066023100a342fb279569dac8bae50f610da3d90365b8d34384def185eb426fd2e8098182dcfdee9201cbb26b7708b12a90fe1d4a023100fca7a2a8cfe6d83fd3a3c3e2d48dd6a6dddb35b31b788ce22531cc0a108b0b8943dca3253fdd34d7da57e84cb0616e130302047c435bb500663064023004f3628c7f4cdcd78fc5547bbcc14c94dec819b1929ed702f9c0e9e6705435a700b6dbbf71f7efb0bec289b0d4158ee3023001fe2fe612a9eeb9b90e14ad1d5254046c0feb866db3f9eb91aa6743c7e9b4b85f49a1cc82662c91706235fe4d92ad3a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023019cf53e2a2cef312350326e33c6e8e53b53ce2f01cb1b6354eade0f8c92034e5d9e24c01e61337f4a8887389b91ba421023043de12de197d224722481b98cc886d246769b16e17e82c5e807661ea76848847b4b1b962848fb68bcb6876a577ca01890302047c435bb500683066023100f80ddd6b1bc0ad42d56d77a1c9f3ffa0218dc16c6935a6d966517629b0a0d980197e151f42020b2ebe1a54e2f6dbc860023100bcd913128e796957e35ec390ef6d8a024c87f10c798741169debebe36f7b80ea3bf20c743b9f6f0bdb4c197133e122a40302047c435bb50066306402303bd1c7e1df980c3cb35216b136e3a5a47321290af9266f4c1bb316be832384518176fa4f9f7139c8659d1b08fcb23c88023019ba14339a5b0dca50c14e674d204b8e6cf584887289f5bc2e8e33acaa1d90fa528d01ee77547606951f35fb36d27a5e0302047c435bb50066306402307df38e3883fac4ad843e4be7ef6a14f3a6e92f1034f4ff91e8d1b1a1173d0e2e68f32bd8017c3e5d6228a2195faa49d802303ec941491ff448504f86677d0b8e51aa8d5241e50309bc2815f59f7dbe419ea0dbd3a63a4b9e09adee473c96d9ed7be70302047c435bb50067306502307be22055a56ee544c7cfedb1168d822e76fc3251d43ddefedbe6ee3891eed86422be818ef0a2a6bbea586abf9e099e65023100af31b76a8536abfe9995da41cc375b69c889fabfbd1e9f8d006cb9572c4af4ddf9374da0249b0835e6231068eba930800302047c435bb5006730650230136756c150b8469db948230fe9c7ca837c48f10a22be5ccf8956fc24bf46a380e555022a8be436d07cb66a504b9cae84023100fcd10ae1a7048f7b84f21c9dc05f496561bda357bbca9f5d0006b3eff62c48a8605bd1630d2d2e43f2970e8a45aecf520302047c435bb5006830660231009768e824eaff52edadbff50a903e29a131c9bc76c3018790f3f3bd3776f5cf17f6b1e09216312a4196c2c0370e5ae9ee0231009629e26e56f1698bb8fc4aeb7d60782d5cd738fea6c89b88fd74cf330daf91ec53a324181620154bccb302d140d3e64f0302047c435bb5006630640230557edb504e55031a6717252fe7233d2f622becbecc89bebcbcafde4579525268ff7b588719b1a33d2fb3ae77f788b69502305800cf934758c7b11a3b27da8bd4e65b4c66478f751ca3bef1e6b4317249de12a1a7587041d4dcef1eaddc5c232ee78f0302047c435bb500673065023100b8bc1b7a9a3aca15b9984673cb641557329e5c7b60a67421ab5667f97f923a62eb7888fb533caceb63f480bd2496c5050230093a723dfadd20c5de1561e235d0cc7f30b3007efd523345c2dcdd1f23bb7fe5e3dcc8a488702dff6bde168f989d864f0302047c435bb500673065023041d8b358c733a54d7278d1ffb390f07df58b5ef48b5fcdb64661327578a9ad1a9fa12765699f1285620f9ea35b786c79023100d706fd03dcf972ec3833aeff2a64b5efa42dbd311fef96b161f36dd0140a85af25028b56cb4103785e4b7fd3f5808ad40302047c435bb50066306402306c36b20e791cf3bbc35fe7fea2f0f088ddd166d1203692a8d230b9441d5b7cea29aa1a0e1ef46ea621d26d8811e4bb5e02306ab0c0f214ae28a931c51552908bdb0d3a694e26d7591808f98f7b3cf9bda056d1d0145640deb7875de5811aede90aaa0302047c435bb500663064023017c24bd2fa78cc9800e934fb64add673ec6d7bfc17467539e07ce1bb081f4751f8482086b065fec5f539b4c339daa1e402307e991c1d7033bb95209b5e75b0d5d3e185108945c183789bce89289633c833d6cd939d67e829003dd5c8bacfdd57a7600302047c435bb500673065023012a0f125f65f593894fc9ab099643d5b5e2eea15ebfac865781f0697299024351bbeeadd1c96d380cc088a191f6d46f4023100ce88354c5fda82acb025df94169d297ceb85c274a1d779d2c5d89553eb62ccf4b1f26ef39bf9410d9be8dc304be62c790302047c435bb500683066023100acf7e949842dabad555cf25df83c5471c72a71a33d04e287cb6ad88e2563d0b380e3c84947a1d6264608ecde22c654d202310096fac677a6a58b12cc038b2d67297c5ef8f51cc1440cc58e060bc355a55a5cf8a0d8d549faa8e7004250b3f41d1437e20302047c435bb50067306502307f0273dc448cb7c585ab651db4d1df34b2dcb203ef11a8130c908ae4f2b06843a5f9eefb7e3331961a2c26254b245aa9023100e9e525e36ca94760e92037e172dbb477666aafa786f7a5ad6f612312536d8539d3ea9d23c9893eecc3a30a5c1cef6a000302047c435bb500673065023100d28ec0180d8cde3a27d383fc2f5e54905ec0f2d4b3704022807215b1ab017ddda84573135140286d790ec96c1348c4ab02302711e9901521e9babf65dc9a6a77ff26ac537016a75c43bbcabe4c0347e3ca93d034ddb51a3b71deb01a99954f4db6390302047c435bb500673065023100c018ea0ea1d115bcf921511f4899142389ee35294d467a3b49350860083c8df15fc5d8008d6200cd49fe3fd0687933e902307f0c82b1c2afa0e5746b95fe43a32f8a01b98dfbe0e7c48ffcd8279b5e33cc61a96e43f4aaff358f1f830589aff692c40302047c435bb500683066023100e4af410d756730092320909a14efdbfbec0d2b9c0a247204323c06e208f2da6fd528b146e7036ff0b15d4b4e265cb802023100f5c81c047ac61651b01916eb8c37867e0be27973ae716fe4061efa6e13e46c5345b557c25dbf224cd62f539a89b6ab9b0302047c435bb500683066023100c4744981448fd8a314df8e965de58b497e40ea07ac3a29c5a87a1eff8ce6bf5ac0139dc3a59bac571ffee15164de66a3023100ac481c828c62b64207e6f74bdbda8a2810eb54b2201760e3bea44485ac7c37a831c30e549d2d27be1a026de662e2a24a0302047c435bb500683066023100b565e7f87cd8683354710f2b0f845e2aa56b08df2dcc90aa550d8c8eb2e79b495884c00bc347e0ff13d6f03f64af8328023100c591c52cc940d371e99c36badd8ab49c0faaa95f3e4b1947b8df2f877fdafab4ff558e4b9c3a9a76861029dff5b62e240302047c435bb5006830660231009c011f93ada521a89999f7a389888519f4165536ffbf607e1df82d35d62a77c5f089b78ef4d7a9c3f7de901d60976be80231009a56dcd7e7bd5cdcb7bcf451fa2dfc0ca06e9a7e9fd3c83d19d83778f5aa63356e464642069233148d6a527598019d6e0302047c435bb500673065023041fd8029546e0c2f62db82b74d5058183f8fa8f4996567d76c14b8562b1e817186ddb992363c726330af030f24e715b1023100a34d592f670725c7d7dd9f157557a4926cee54a16550ddd874c2d28961ca5196273e0ecb08788ab6ce44e0b3c809bdd00302047c435bb50067306502307b4430188e83d45aaa7b4ee40af5686aeace4026186cfaeecb281d85ac0945346f6f5df86e3d003a3947d758b83fa98d023100d04561e29e173cea33f8133b544cd928de6db249a104e920e6fc6a6f74b703c25177b079f33700485eee3b32550aa5490302047c435bb5006830660231008cde6051f3e8e3fb5302c198725cc93e68c93c9c14bcd153cfcdce00e193d95dd50da7bc36f80ef3b246731d1d9d4dd002310089f3a028a8de5c15410eed7968e5ba2597d8f6ca72a8ce863aabaded422d7981c673bf17412926417487bdb7d31e6fdc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100882be2d7a00537792ed032ffde982add2a92500fb5a1cf0971c3b58000448337f365f34c6df8fe0eb12d019b4844da44023100b8769a53fb77f345348e64577b53c363cab20a9ccafce85ad046d8239a3d8db6344c237625bfd91999339090e76f31d70302047c435bb50066306402301932cf53ca4e4f63525b73947aca77fe50d317480aae410e31feb2c9d646fc84206d0135693da8faf72ccd9ab0cbb4040230309e058165b6526e2e2660162dce6c168e75c2291eb583f9503a2fe10dae0903ad1c65ab5b90679acf6e21a9c31af6330302047c435bb50067306502301190ddc06a1ffd459792bc227214fd78eb536cc31288acd5168e5be018f8dbe6723d69578de6b71299354d4557be8bb2023100b7de458321d19001394b6378d7752baa80eb49533ae2d8782ae4740d587bae88249846c74613cddf84a2184a1e9034d40302047c435bb500683066023100800daae213b58a3172a0963d4cd303759c3f4c5c97fc378d9a778ff301af8dcee7c7ad07083fe995ef2d15fd21ad8bb9023100a37d8708e494b2c9425fa9eace1e30b743cda556c07c55298bd9f05200674625661add40240f59ea373c85cd0b4e27a40302047c435bb50066306402303e9dbcd07b10f51822bc44693fca8de7549f8bd1c9b205a4a54d07ab9ee4314d16112bc14feb3c0c80fe2c5bd744bcc50230618e734414507da90f9f9dc1d2a5d9a767ade9d5cecabc4c650270c5bca35ffe77d5b4dfa293e38d21162d428f30eb770302047c435bb5006630640230225e7cd2b3773177e3de04e430cbfa8cb23525d64fd1538e5b0a54c2fd6d0608f25c6aed1cd59f7164e54745de9ea9e0023039fd0960b2bd2beced1596e6932551c724a0b543bbdb8f7b51682f6c381744f1a47db8ac0c524949cd418fbe4322c76b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b2f756890c99e5f809835d0233301038118e5e67780a531789807c0321cfdd61f14a9c8fa7ec653dd7224ce18180c56e023100c96a8fc5bc8274f7c23b1943b7bd54e5aa733beeff56bfd39ba27cf3698123159d6e420509a1f7afc2efb6ba25d9561e0302047c435bb500673065023045055fad0abf5e189f9b68fa9e8996be9f3b4133b51ea14d50a51b3859e07402f8cafa8101907efe35dbf840276c835d0231008bacbbc561fc2a2768443910a86f8447f989215e4b69f22a592139d42b12d729b384637682d5c52e4f532e5da596cb2a0302047c435bb5006730650231009e316d1cb95335b9e363dd4659d28eb133772299a0bde7d3eb22505688ad8fa25eaf05bc1c06e5662160deb6fd1f119f023011c938cef69d56eb1f24513caba5a7757f98e0f342fba7bee8c8db4f6170c09fafdf1b3190b0fa8f90c69b0e2b5ecfd80302047c435bb5006730650230476b7949bb08a56ac00d34295a9e00e3661876329b8ff146b19425ef49c980a0e882ac98073045d8b6591be2a5dcbae40231009b78dcd0665585709b13a7f8c14535d5d144a262e7f4ff8a936bdeead0e5adcd02503dc40d69f1257c085cf1e56a8abd0302047c435bb50066306402303a2a4ac0fc446a5fc2e9f12b647a8a1d74f928a54e3075de4d94cd066db810cc81f933d40211b2e69df8cc0eda192a3d023003d3568855d09d7bfd0aa56a6b1199f5d31610898ba66faeea88423190dde248236c60b40320174f7c87ade87ebc298a0302047c435bb50066306402301a082154772cfec401752601ebfa316e51a3e2b644e836f4035bb3c11f5da64467f821c3c6d9cd1b7b0f49323c2696cb02305287243f3522a79992b0f3be84b4ef9452be3e3ad2a2aad23e4269bd0f585749d180c98da64440e69bcdd52d72ada7930302047c435bb500663064023025e6f8bd265f85b0e26b86be1810cabb77ad2281f150978a688bf88a733d7b0afb38100878b342f3cfeda8990894148902301fd514395bea38d1252cef8281e30b858512d72102c95ee56885a97e2fa4796edd59e354c8929e0ac537f77f8bb209240302047c435bb5006730650230723f1986b3334d56933b0bf762087b71d723da20b94dcb6353c7529c285eefdb5252491af860c405498437dc8a2b3166023100d8c5255b61ad04ef6729d8f58cd7bf71404a8f5dc418c8be91fd426ebcefbca5b26ae9b2a9f30ea12040f3df50c27db60302047c435bb500673065023100bd82dc65d7d1032e39d70fa1ebbfd04f62afdde37ca2f54dbaaf6766ceb7258f0a6b059c5c54b33536d2dde3ba79089402307929cfe33a2970f10f162397fb8e010cf0a049726257175e4c425065e7633448128edb34ca87b9fa26028df21faf976f0302047c435bb500673065023100ad4a70043c2eaa2b372cd190a6c808d10a84da4c50c75d42a54310a258c682cb39e3f3c281fd10a438ff90e78f7f25fe023014a432bdfbc87f2fec9ccb78e0d11464042270339271d8cb29735c5ab0df76d810cff289fe5a4d83c74cada9ff5cf8bd0302047c435bb500683066023100a0b3634816dd37cb511e259931f5a4512064e1e84b3a87c0e4a9c7002ae5430cda856de07ce34dce60175377ed5d07b80231008981762a6689d7a38e7a2f40c5ce396b8339ffeb291de57a609612965b658f5ffc4dcb86155b4ff1acbb03114d077e820302047c435bb50068306602310098e00ce5ebcd5acb991dcb17d0ce7fe76a749067ea7fbac2dadb230a0bec79e4a33ab08966b3dfc52440b59c578f6395023100848d066fb2653af4d41e7d5fe3fc7e4773ea4bf4a3972d585421fe1e4bb4670fb50d3d65a2055d3400fc7a2e668d089b0302047c435bb500683066023100c12a265ae4b6b0475037ef40369d2a0d7a97b57a60658368efcf23a8f9a16a48ebc74daa5fc2fd95f3c82675fe09de2502310081a51b6d551aa90261434a1c6c0d695300f0df09c65c1586cde2d94971c7169b4147613ed712015140d30fed50366ee70302047c435bb500673065023100ef1ce563b5ba9a3096f3b4babd361dce167071d7538fe33d65b01c6f9aa2a091e3d7d44c6561298d87c4c73ed4c6b17d023021db1abb21a3189d3d0f3fb6ec97e3de439ae6bfb75d33a3dd3a52f553eab2dd8a5476739ce30ff678b2d20c46d01ae70302047c435bb500673065023100fde5dedf22bdbc83113a2ffa6deabfdcc160f39ac18795d37fc3029535989c58a7409871fc66476e8c10d67c359eeb9e02306b290c778c4a636d4f96c4fd413cd41712370c996dd51e010fcb89b2a049927291adb7c57206330e86ba50205fbc3c330302047c435bb500673065023100dd609e76d8ee36ea99163395ee72e89ff381bfb7d2cab6a0ed46d15cc6b411599b205a2c1c8a69fd46f8e85d4cddff020230239c1ed94004ff4471edd89d254d454c0a1c672625fdc5e19445b9a0850090163fcf9bf53caf9fb0caa7c86506991db90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023016fd16e981a1347fe09fe7bef639ca86ab3e7de4d2ff0f50a41fb6886c8e523cbca9994e8715901f0b7adac15f7704c502306fc026bcbef408897b173fde926a3a4dec3a7b895e0c19798e8c5f5a2d6e81c0c34bda9b346595bd8918cac89deffec30302047c435bb50067306502305083bd67af39670ecec9cd37ccd2224fc1c9bba6413442f795ceec662b8ab369e5599850e2c79d3d3ecdf8f9d4b0b33b023100de71563eef8dcef2f110c9431484de56808821f1c3dcd06a8e8dccdd0f45669806be4eb92ad13d67005a85a52e5382ac0302047c435bb500673065023054a939d8a3456b43da440fdf9e27628e0167181d26a3834e796bb4d311b2d1e2f2db3b8e22c206bfeeff6b4de96247ab023100c6ba3920c36593088943566c8ee8815289bc6d6fd844b86cea57bff35fe29747826fc4124097042e5aba55a8ad28c8ed0302047c435bb500673065023100b59a768ab976e4dd07c5b183ec24a4d707cf006eb25b21fa67224d6a881f4f460db05df9d35ff87df01e517714c23fba02300ab87bcd07a50440937d7b62adf4fe927f29247c095c592fc298f7fc5fdf1f223cacc01f14b4fdb3ee743736f0a076870302047c435bb500683066023100db51840db2be61fba21cf5fdb732e017b4c96129c85262b3c35f3f9fa3a11fbf090d4534f3567e9e53da6a91defee209023100d48b08ba25173f29077d52acde1373ec169e2e76632a96fa6c044d8ebdb49f2507bd003dd1ead0e1edfe4370d2b1feed0302047c435bb5006630640230734939eb74497010d3bfc04b34032002bcf81e0af1387b98b6387106bc769fc784bf4e8407b8ae4cc6b9ec3d372279f30230078e6be1b71205a4f2df2790d804dff93ebc14e53d09db6ee87e50499060ce65a3969b4027855b7c8db1c1d168269c2b0302047c435bb5006730650230207a642b49458a40e653620ccef5091e4d87008d89bfe5b7d78c680454e8594178bc39279fac26d89adf90a94ff71016023100f6a4ec7b31226093d9a1e27f5e23276df1cc680506edc9fbbc136f1e502f6876c69f78d354d9c316f9810ac5d66b44280302047c435bb50066306402302b01468e4d88215ea0cddbc4d0eaab2c6b29005c114af829df812f818da348618d1f3c056c34efa875b6ce3c55bcc7a702307943a4eb9b4b8f2627a536898feec1468879c2676606fe528e5e76974c58b1484bd54146f7c2ff552799f8814599e86c0302047c435bb5006630640230670f4a4cf152c8d71665359734c498f14e1e2ad4888e27cd62c46f2c2db187dbdde7f62cc289431c006b3a39d55c5bbb02305283c2acb0f2676d3ac887834e912346992e5b51e785854cf1d129d433e4e5e0091882ebb054f80ab33e54dd6130ac590302047c435bb5006730650230113bf4c857154b9568f537ebfd7af382a6e5253bc29bbb1c32bab0e369572a2c01e21b3f08c84f34ad80b1b72431f375023100b289fe8ef69ffc7d4cd0a529305dc71593cb0487782c2ae09a78a2ce055df420a884a83eefb20718f741bc71088f47d40302047c435bb5006830660231008662c697fdfa544eae1b1588b85345ac68bbd174cd97070869398fb0da397b36ab07155caa3ce2e18a7fc8ad4ce9475b023100a5d2c547138c114215f596535bf8f79d260c108f593eac0820cdb3cdef5c43ef997c4235f32e014661e41b3f9665a65c0302047c435bb500663064023003763e12cd026e1eb9c426fbede4cd28de7de19b735fd5af35f5a3a42a3f9b801eb70e7742eed3ca5a1b46480830983402306fad1b843babd728396a45e852a5fb1bf6f8ba38b40bbae339c1733475504b492de226f2e7dae469511013f59c1f43010302047c435bb5006730650231008239b33b8665049254bc189034570a244241d430d59dc4dfef3b42f261907ebfbe90a89639daf14852a59e5ba5d392af023079794df11612b67a486c3ce6fdbc354e84b96221d26948c5d4d11dda95fdee2fac143f6eb32e3f36b233497d989bf3ce0302047c435bb50067306502310094eeda12dd7808224dd9512333f57342b791a67a8c58ce168a88128ec5abbba2d821896558e25432cb2f7b73b24638da02306bdb9f29c4a94eaf1853f6a80113d5bca53fbc6076798a3748b5c6980a4df25b5f82819e25772e8d89f2850b411026110302047c435bb500673065023100d051adcbc2ee0417ebb4ca33b1b21d182a7c526da10c596b14c76db5477a6e47c984460ed3c198db56b2e9b44455f60302306265071050a80f5cba5ae3669f8af0269c96646847004cd7cab328f98f22aef875d33671698e458519ad0eb87acff3b50302047c435bb50067306502310099eb57fa73e9d9331841676885ee1978109f01fd13f18ab6d45883845538ab0f88f366476c56442888d378c5219681e002307c41cea9bf072278c83fd80e6da4e83d70d0c4f4f61a16ffe93e7207cf1a25a3f8ae06060e1a32dfe38565e327c5003b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300de993b118890585a9dd3a1eb918662afd6fb763150120721ef990f01460e28031d4dcdc7c217c9d1750c345d2f0bd58023100cb27ad2eaf6418aca480aea65fc69c6015f8e9b7dd3f4b1f9b37ef78ad74a50144bda0ade7b743ce47213bc3f3aa21200302047c435bb50066306402303a2f7f0dc2719c62349a9d03f8afa5f11f73564d6a644deb7735da00c6a3991b2001fe88fcfb05b84b7cdffc1a481a6a0230384e726c85a6281036cd42d6dd4586f19e7e84b052a9bd110f26e5032d550b33c7d0e51b138d52fe3db7bec817851f830302047c435bb5006830660231009206776de9246ef5b2c68be49016456c18ac0c1a732becdb2cc3fa5bcb2b3f576bb349a28bfd4b4b7c0fcc9c15635859023100a2908bcf0241e59327b1fa6f3a06e03e5bbde879edd3cd3cc192b9ff8f8f5dc5d819ff0cc0edb844233e7df92c8778860302047c435bb500673065023100bcc88e9ee0f99237a5daadf2a41f4e44acb7d2c896eebcd4b0b6d90732bbf1b36a26ad5aeb00e14a626b446bf580a00e02300eef70acb07bbd78dcf05c1cc6cb92c5a3bb8817dbb628b52e748f49593f6c7178f85a9c10715c6ad95c2fba57a17b440302047c435bb500663064023026439656d52591eac10581182ec5e29c798f820874a8118055dc77708d20bb3b0212018a96467dae04efa5f77ce297cb02307d3f1f729f2a4c14cc35561932d16ae8d9b61f7961ba90371c9b2a455198468418f89b0f795ad662f14d52e6c0726dbe0302047c435bb50068306602310093af1805ad34a2822d30be1009ad91606e2cad4c800ccf6132ada498efea130eb998bdc4c4bfc71b92a01c778ea9d8b4023100d7ef80a9ca206679018dcb09b1d11f9c90d63bca0bb8c85f3b6d9853c1ca4bcedc1ae6f26476e10234196cf0825a25710302047c435bb50067306502301ecaa61e4b4c6d0a8794b75a063c046cb9d1f3ff88ea8475d3745fdb5eacce99c436dae93468e4837b270930436118da023100f2516d0fef5a082944d55d781108a4f9253d7faa26f566d8f064796b4f0e5f827d33e4764a428416c247b730c4b0cd8b0302047c435bb500663064023079c39aea7a93422cbcd21247ed364223e34a8de5440765481da7a6137632a9c77f865257e69356c19e5d24cc5aed0e1e02303ee8a8f1e3a9522869115053ebce0b2b09ed8314ba62738b7e8db02d84469c5605d615eb2f9c0bd73a73757f1eefefa80302047c435bb50066306402306c156c09661a4f807652655acea08edd9b12898d46c0f09357f7c917aa201545375a1facafd4e22dbfd86b1d28e43a1d023041c6bf206d6949a330ad09a1b524e34c63b53301ffc48f387ec466b5722e3b9fc720483d1e73e61fe215c123e07e4d6b0302047c435bb5006730650231009f1ccdf9c23493286ed49117eebe1f88d33cc03fad65b3e915ec0cdf6f6f6d435d4d1d39ed23ba2cdf468c4be1db6f2c023030c8438cb7a7a9ebba8b1fc5737811c1285afbaf3d3dc91d2690c94c211ce597be858e34bf5d42bd404ca66ac919be070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a6cf7d39e0a492cd62af8339eb341cfcc19445c83d6e7b2ae50c12988ff886de10f41a73ca48a5adc350c4cf9614e97702306918336603cfe79aadc27421b62732825a71e267b4a3c5f05e0afe05d1294eae57ef717ebbb8e02d34b7812eea16d9f50302047c435bb500663064023071620ac17fe189ca6622175d5ea2e6c200d7f3e4d3493bd404318cc4e8f94e047d8c3630dcaaa90405eb633be215700f0230654b005d28ee4504187cbc9e3648e56104db0a4531b9760a9109531bf3f02915f6d6400264a90a72eb187ce47aa68b440302047c435bb500673065023100dca3634ca18de784a8cc3c92f32d625e0a15a54988d4542f98875c64fd629ae286123c23b13c23633b06bc107185bce7023010020818fe40c003278e07465e3322e9fa0feca51537b4af0d3b324d81ee88f2604cea82c83ced8acec147bdd5108f0e0302047c435bb5006730650230714b96b48b02319238017b707acff4e8c81eb1d3b8ee700d9c77b51f9f23c1c4362bca01ebb9047ecbd4b80d00d4d1b2023100bfd04fba7f43b18977fdf1bd912fbc45b60fe14ef077dbd4a16d465b2ff2354340c73dc3b9d921db2e1e434872ff22520302047c435bb500673065023034b052b3ef6c7d6406e798598342fc986a68b3b9e0f671fac90af55c219a8046d9da4dc2006b8c271d95bde3ca7385dc023100ff7d63b9fc3ebbd3aa3d17129ad681398fcd33c6d883aae386f9b9616e02cb4d35d93463ad8b3321405340866286e3290302047c435bb500673065023000f7a26e27d7af878a4f8a13f14b51d41e65cfe8289593b2e7a5baa8db15afdefc0dafdde08fa0ea609777d3a82026ca023100b749be5899f20b0aeac2bdc7fdcf8069d0e118571ea1c56ec48c10e41151761f6da5a408eadc21ea49153f53e18f6a0d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023055346ca664fd326f0d623d73667816e117adee0076ce6aa9f71a23d68b5b04ca849f5e4e4e68f9b7eb65c8baab4731f102303a7554bcfc367369c22dc3af79bb6e8b8f4dc441a6ded337e8957f716e10414503ca454a52d804bde39afa603da01f4c0302047c435bb500663064023043ed1d2d0fe14f0cea0b02fe7972157d798f2977ebe6bf6ce46fb2d4e2d76a140e6fb8e1f0d342bf210518d2bc5504b302301c560d3141cf623ce942c8290df9cfc09e71e850b6887f57d32b0666aeae167639bb00d3bec0fc7db6199cf5fe15fe230302047c435bb500673065023047e50b72313ea2a0ab260de7bdfecc6fece53c2183e3599474ce377b3e50d27f222e375de866497432936507f245b54a023100934c0554224a82093da3bc0920fa76926e968ddba8608bd1b1a7415ee100deb46de296d028fa83c8fd2db346685825b30302047c435bb5006730650231009d243f7bc4f951fda969b985ad7192e47b6be8e04c6c36bf8109a583032033d01f0470019db3b5d139895aa2619a414402303ba6f8313ccbfc2552e2b77f0b85a9cf7e70187721e5b5d3345913045104598f7c8799962e86395d2d92dd65e4072ece0302047c435bb5006830660231009d1a6a6ae8228d4bed43037646b681bcd159f000273493b8ad12572084f734eeb2ca8c169081f7fd2ec2beee49fa91f1023100df88b5d64029de4d5ef7ad0abf83964d6d0ce0c8730f1e2931a54a263b5b3d4f0c69fe233beb2069f0f14f04c60945750302047c435bb5006730650231009ca5e762c107ef9e059ff2c9f18fabfd47602efca2909b2d3a01ddffd58a9b8d9d694f8238bb040b9e66dad205531eda023017778dab81b1094a42025ce6b074723a4cdd225736b3a1ab91f9bae14993fb34f79ac02275cedae30e1b2b69926a58f40302047c435bb50066306402302888d684a41d756bd97a8e73bdf83761a269ba0f6cfc989a422444a192c6566be66d2de7720d0a8884e48ba2abe1c96b02301876acf194ef84af6d48deb5b26351546a4d11d7d5c88ab99f2ec76813a445a6ce80b61692311078395592105419c3d00302047c435bb5006630640230710e86caaf7b65353c9d23e1b911b29bdc5794bb45b05a6d3ff4f2d9c83ed469ef6abc452e134c973b27318cec02629702301e0b9da5a56b5c68f341b2f4d5a507e956163ae06d7f4fc711cc5cc17caea7ff5c37715a183abd25a1e6ad20dddccdf00302047c435bb500673065023013ab32ab0c6cc79ee98e789d28dcab41594bb99e832acd6ec64f283aedba99379455ca74719817aeb67ee94c8d1d5e1e023100db50dda59c8d974087a1e635aadc1d8b2ebe3d7d1ffca561fc37ac4784e3dfa225477ec2cd0843e0437fafaf9656722d0302047c435bb5006730650230666ae94bd58209559a6e4a4b01446aec835e338dbb116bb161510d46203264e701e8e9ead8a62de39120ad3782d6a0ff02310090a799ff074d340a350af7262c35f5617b556f6139e660563f88ddb8518b1f080e39fb2cfb9ce425971ca950f120d8d00302047c435bb500673065023100e2b0b7c11aee4c7928f591f6abf8dbd40a6044dacf8a36ff1ee5561fd971f1156bc10a811d8dc16126797a81f38a466502301c97723c3872f30703a78aab958ee18d507232a8744ec6e9cbdef30c10b99d521c154794d2a54b133d745915069a09df0302047c435bb5006630640230408d3e555165565974125da7bc68da01fdf0c34c551a67e60dce6eb032d72aeae785d00c126c575a864e4a5be24d509a02302ec65add79ee55f5987c7c7919fbeff975ba712d5b87af01907d5f4b8024fed53ce370d98b6c7ab84776ab358dab30d40302047c435bb500663064023065978d281fbeb9a7c4fca33611c05e30ed2133e3094e9e82efbd5c59aeba7666c98474264fe13bae4b67656569a73efa023041edc6ca16b908f944383a70824972d83cfcdc96b042262366c95fa0382af06c483c6150dbc88ee5c8a5efbed58008350302047c435bb500673065023100ae9d931c48f1b57bcfecc7f1e90e277526c7631025afbc3bd50d3b3d572bf54065b7fd295a07662abf8212f94ba0060302305c26e926c36ff7925fb81a999e316961525a724cd83f17d55cf91dd8a68923f2368732eaef8f26398bec3d68fb6306930302047c435bb500673065023100bd7cbb539928296711ca4b10755372c8eb977fac84b3b20b1198b2484a2f704082b2bbc039976d5ec8099a0a51ed603402305c09b81783829fe6483f88ecd053d677935e18ba02ecc79c40f1875c51d5c527517f2d550852f444ebffe1be86bd3fdb0302047c435bb500673065023100902cc7519a6a04564174c63f7fc19620a7ccfa7cecf00fc404b27b9c9050b526afaf6b1b2165da9091cd8049b94f0a7602303d9fe03da05a4f8c778edf1c9f143e3b4c8f9020fc03af9f12a6a14b4e1d02039e45f7da8389eaa351108014f6eec7c70302047c435bb500663064023029332eda3ee0f38a41c0a9b393f181da88fffdc03431228706e1520ffb0f8e73ed92bc6d7e640f5ca14b9540bf4e206202303d917929d9f2b93408f7c9c413ce26792f725fb2d2d8083b38941895bdb854cb39e27d18dfba438ce2f1f358510a56060302047c435bb500673065023039581f30fc002d3bee4cc0f80f8e2579e9d8b4e43b90ccce5f560c21e9b8f027b537652e243c8858a5f2c1aecfd4ef8102310087ab82c81d0245a309d7fceebb06f58ef7e96e2c8653ac42574a80d15d088beba5e720164320c7b42f195607d8ffd3a90302047c435bb5006630640230728c014b94b6cd3f320db9ce29b68a3ac758a6b0347e61f3479181a2f12281c3278978b90c76e17cfcf333138b0ec12d023055befffc99db1e78273ebffe5e0d0cbf160e4b2d48f7cae79f5d47c5491d9ec310400ee3cb60c53b831a6c468c52d5a10302047c435bb500683066023100ddebaa27cfa0096c1f016b1730e65de55cadc4cbec0a3d067c36b1a2a687fa6f55a974ba78f5e90cf4f14a994d0e984f023100c17a4f40e7fea4c8a3823dad59be15afc0bc7d286e41d5b3b79960101faae935042edfa43c11fb9c8fcf9fd18fa6a64e0302047c435bb50067306502300c5b747085ae51b7ab40281a66bbd75a7dabe7337d09f3861dc8dfd8a68c0a0bf7cf35cae2c61967e3c9e19c00b04981023100935cefc553e92caaee025a6286f29dc6b5efef525cb1d2a91813cd905aa41c7aa67944739ec670aab807716db2e2bab90302047c435bb5006830660231008c55fa8e2a469c833d4a8081a0427d5589407217f69b45c0d18ef885687ddccf008c98d08d6a0405680236fa656fcab7023100d87b6c9feca3031f342a0dc1105eb330e3d2a2da83f23802235d246fdfef046eaa2a9b4866b418fc280b8b76f6f322390302047c435bb50066306402307b24e604d4d43313fbba4b14157465c5ebe3f8cf6de15f5da4d8d9f86ee058752cdfb2048da23c82e7d24a4d77b1af2b0230074c3f712b08289aee7f30e77ce12d4b5ccfaea262fb162fb4177337b8f5ae406ad60ab857346ed5c9e49238c55e1fcd0302047c435bb50066306402307c7e398ed7c637b1d6252fc79e884d74405c0f1affe23ec273cd5a8a3610eb4337e9715d5acfc55c8d75aff1303c5e5102307bb0af91a4ed46bc47c4bd8e40f3e090885b1762bd65c2d6c9f3e26ed8ec25cfa0b453796971547a160beef56159f8be0302047c435bb500673065023016e9967f24ec4697660a5a596d377c9b9302774a7ab5505cb064cb6075e53d95325f36c021f79065c54dd2da21a1cd89023100f974dd82822c16a4a98be6cbb98b281f02caa2897ddeaef36c116bd0faaad7550030ee1115517105d60da36a4912eb3f0302047c435bb5006630640230039e8bd8c4e1a3b7dab5dd1ebfa592c3a88693f5a240ed03be5a64e3d4aa9825d756f8041579cd3b1616b0c0846deb9d02300e9ae3a2c4343f2aa315f5a17fa2889acb10d5183050ca13a731f9c257340b252c995c958cb2d30716925cb8746a6e0f0302047c435bb500673065023100c7e6e0f450728f4024e63ad03da4f2df4787d951b8d9ed2cd4f23a2039a4309583659d966cc1ec91d3b9339653fe47ca0230465be40361f96f572671e07c35c365a45e90e0115a43a19adeeb45060c538b68f9203d48ade767bac7e96c238337acfb0302047c435bb50067306502301b60b69a8ab928fd96e7a5a4edc8f0496c5cfa3ee7406ad7fd8a6cdd04b33e5fa0d4c7c691724f5fdfe953c54f5fd708023100953df3b6776ab0022e28722f94e49703bd2de6888b26a7e164f6d8f682dcc6c64bc8e2b0611a48129cb77b0a300ed29d0302047c435bb5006730650230539b0f8f4efacf23ac0ff544a830969cc692f890e70d25ca1ba1ab54d21c484b262380d3cc4f302aa7b604adbb3abf1d0231008053a05b9ad90657b8806b9cca3c7f0c5db59650b28d4b9ace08d9ebf74d843dd15b7e72590231e825a28eb2f584648b0302047c435bb500673065023021703e50f130a7d47084f908a29b512605573a5f6cc5d02e80b9707352c0103dcd346b2cdb3315ee0c3f2fb5a4dc5e500231009e7344dc7cbc69b8de1f2a9c83e9ade9cf95a5d39a0d017252ab21ea6939721344ac455e062919360c4aa791f5c585c40302047c435bb50067306502300b8c5dc35142677ac0a3a5ebb96ce5a6be39d9af4182dac1c75dc8b165b695c56a8f37d4c2bb36811c232f6b3ddd1ea0023100a250592bc352473277d05628ed12497811c21b66b9b933a2691bb0392f0f93d8b38f7fb56ee26fe6b9b279674020df890302047c435bb5006730650230186aed92bfff000cbdb4b1fe99674637d905b2b05e57c2f9abd29dcd0fda324a3ef246a66fb60f2570a4e4f2624bd46d023100fc15921f4d2d7e4051fffa7102ca4f19df2bd7ca87e399d1003e1abf6a42edb5fc8ac340ac1336545dcfee0a0cd7d2610302047c435bb500673065023100b906e8895c4e95e69eb4432b77440a30c4e87803d155d5ae08a229144ccf8f6e3e2a4f517ee46b11d266dbc06d0093730230469bd022faa9d47b8513940d10c09aea9adc9463077b1a836107fe4e38dc0e435dcdec5f98353cd5819d7969697c656a0302047c435bb50067306502303ea9d2dc34405ccb67dc43697d7818b42534d045617c21dad6fa8dbffa70b5da4e44dd2eb83e1666669521657e3e2e45023100bab67fce9f218ac2e09072bea222240ab4dd9bc3f778245bcba91602a9e22f807429d361c36df2bc55e9b24db01ee7c80302047c435bb500673065023071eccf27caccd02a1042a6228640de8629a0f4636266bc52e81d35f704c9272f6234fda46b6ac13dd03016dc2d57578c02310094405899f0e89ede1bdec27c5a3ebde267a8fca323e398f2dbc3b10a9f01a1ad130420563511f02d31c9c720b8a61ca80302047c435bb50066306402307d590f36562074240dc56630f4cd1b37894485a8e24e89832a0e686348e65033e0f153e6357dd03379f00a06cdce4f6c0230342b97ca42f0021bf452cf980a6471a580ffa7f1880448f5b3d7c80199f8d532ab6a04830ba6abebed9a4112a65953bc0302047c435bb500673065023100fb8cf9605b272071c2e8dc6276b2fa28d585e9466d1e14f393d604ab4b6469abc16713aeca15893b499636f93e18b0450230793e54ae38eb27add8e8f437d34997f24ed2323010e7babed351f25cda7bda58b15d3524c23587412ac47c5cab19ef550302047c435bb500673065023100e1258d169bfd87ebc21aec6a012229f41e6bcc178f9a160e12e08c8dfa28deac78654177abce3c523a8f3b91e8afafe502305a9033d6628878b4b87379408cb86d519d0265db16889f03f9b6e050585b01f5cea081ef6e1ef7e0b3102c4960ed91550302047c435bb500673065023011d73a79bf2cb0194cdabd7ae4090502050ea5eaa7344687afcc10dbf20fcbb43a09aed5a0e024d6647ee3d4248fe6ad023100d0567b8e8548e2e96c55b3c3b0bce58ac56354d1d6f6d47dc4a60e508fb04ad03e2a241bfa4cf8cbeda6974a6728d0d10302047c435bb500663064023060e9e0a540ff50d383fa185e90f211d41e55f8121c29f03e13b9500164d927384203bca75159e7bbf5365b86f0458dea02301420b377f53900ae59db01d674ce03f66fae0a32d376b247f53fb2654a83f18013a1f704f410831003c70784194ccf8f0302047c435bb50067306502303637c49b6102f7b64a254269357e2d53dabb57a63052ca015a5053dfe8713eaf3a385a5e8ac88e5e1037372960e8f29a0231008e40e6f513b4f6a598cb6e0f57a1341597ec876884033f19b8405b7795c9448d699021aaacc03ed41ee3f65c47f258450302047c435bb5006730650230345f2ec3ea62ae175903e76fe92e972f4ecdb9ddfbf4da2d7109317b88f72349372af119f43c57e433e37a2e39d31fbc023100e65f5418960c1180fc410b8fa5531c0e2093555107267b4fc4814a00de1bea1b5d65193be087db4fc227b19384001ff90302047c435bb500673065023100a9ee9332270b04e295822335bd4843b925c9dfe55fba35a9ff6d56719bdd60cef7843decb5f5db839c5b3f56e7dd7efd02307aa93a054e1928004d31f84827ecda2f6123c66135f17a6dac008735fabfb6d77d5980fba2e88f0eb224f18d2ca228b70302047c435bb50066306402307afde177665a25f29ca6c39729f5cc65b772dd78d9536a4736e9028291de83f5247f37e57686ecea3a72c5f50ee16434023032a2db9bd2c5ee4d26a07b355c7442ee2c4748ec7c87445ab403ad6a1d3c6dda32edfefe770946c5d32d449c335e9cda0302047c435bb500663064023001ec92f66cd96fbdc75bb23ec6dc454b4197af17149b70c668cfa5c52cc0aab611e28a588aeea8ffdd16d5d50b5692d702304739a7004a0f9b34a68c18488faa3e9e52c7e9f07876b69c563310b2c73972ea26bf72a9ad73860cdac37119b542e7ae0302047c435bb50067306502310099e834fd553720afa3290bffee7de49a78b9950ea64ddddff603780e5c88f3ea18f40031a80d503658313f30c601d60b02300ba0001d35c72932fc4452dcd84450604ca40be77eea2c4b28566169f548f75d82999b8be233e2e7dbab055747404dbf0302047c435bb500683066023100cec300c12835b3657b8097f097c27da52e21eb425455e16b1dbb9be755ce484afaf5341bedd5bcff154042147bc83e09023100b8d4e9ab412a5c84eeab702832b2a770c3b3b0714c01337d77f6b3014126f8c2f7a2c902e212c7c9477d7efbfb3df9910302047c435bb5006830660231009943cc98579df6bb059f475b48c06da31a9d39b982da457f5c5151288646a9d40e21292b347e2bdf8fe00623dd28b068023100a48d77b2dc29490323ffc692326be4eb4dd6a1bc7cd03a4e00d587aa467a5457468f279c429af61a82a58de0deec54770302047c435bb500683066023100810a75235d554a3c168162ed8af1efa0606ffe0e9227beb0776d3fc883374b86c9eb63651728ca6d926496841c37054c0231009d4271322622fe0b166750c139411de9694eaa78aa0679a37f9767a3cbd535d37b82fa792cf0a9d70ecd3f62ff20613a0302047c435bb50066306402300d062948a9f3d0a0c8f630e0ce2100c61739be0ee503e3c8ddd74a411894f9f2555d96290b43fd76de9f9660a1c356450230030915f1ace416f14c1beaccb62e128a700b46d273c16b04d01fd1750fa2ec9da3c2f045b64c5edb022d864c0bb444b40302047c435bb50067306502303a87d4dc74841a733b9e6bdf7ff167b6248d225918ea1f2cb8f577686028bcbf4a99fe0df313385808c654ecc10cc46d0231009a732de69f4faad936c58d12d8eff2e2df9d20c9c20693cc00e0ab1c1fca3c8c73d809d6b54a2ded96e9ea84bd1a35860302047c435bb500683066023100ded8a63c3558b64f7a4c1123ce4b5c5e455d04e37a4eb16530496900b5b7d89a581ff4494ac64d36fa0626fe80eb16780231008643778b2f07e4152e1608d90bfe04b99c1b8deb5d9030b8aa196e11f0b5ed6ed99321423ce5489d1fc02d773a714e3a0302047c435bb500683066023100caec785716b631f6aebcd1d6afef63783c90ea575145d120b55167ad0fbce7fe3669aa06dc9d3b6655170e973cbf98b4023100df13bd46130bc32838aa1ec21c5d618262aec759193bfa3dcee3f39d6c1ca8e57cedf219b9d083ebcd84b7132bd6fb0b0302047c435bb500663064023071d1b998f4aee16a572f1f5b3ee342e5138b932c28a14623845bf6a9d7b6649611a726112f18576e968b0ac9955f78b702301f1fd6bc5e52fa616d70ad53aef9345d265a5b63d3dc7984feffda1e1fd1295f189da07a34e88d0ec56eae94f5ffc45b0302047c435bb50067306502302fea83b13857a1fb974a16bd0fbeee6cc144806b374cede51402fdafa05f443d5a1521de0997d5423a991468048657e2023100f61198f1bde13d2f626734df8716961c9cdedc7354f813a33d7278e7dd5dded701c0c5734f17981d75ab6ce0e937836c0302047c435bb500663064023037b8d5d86c3a17a4c6d17852c59ccb1a6e01dc95669ce9b4d4ce2afd1a8b2eebbf9ac68ce01448a9a80d7e30ec4880860230246a29d848e18666f7b6ffc3af7f4bfee2c4d1457595516cca3aef9c8aaeaeab5b082586cbae55a2886058102574dd5c0302047c435bb500683066023100d232d66c20c719d9f607326d1420123a672544c245f5a4c93fda1e533dcd4f7988845a5423e099fc8d053da11ba49de8023100d05260dc01fc6bf86cf5f3ad320e3ba8bf67dc1bf4fe909b44cafa8c58973f47ab78714312e8b00793841f4cdadadb3f0302047c435bb500673065023100e14f1dccac54f45c9dcf22935188984e9a3065a577e743c008a19a8c26f74c915ea9e1ab85ce4338a854666f4c0cbca8023050e51097bde0c5830e554e3184ac28315bf764e3e818e7103018658f2e7dc2cb20bc476fb324663012f786ba27052ada0302047c435bb500683066023100dd71ba459cb1aeb04520928cde2ee87a9554cc7df9b5c845966f8d43b1c722adea76f5275d2b6c0979f1aa4984d64d9e0231008694d92d13fbcf728112ee5c130deaf2b2bd81b22010484401d0f7a26da513ccf58fcb1574e526944f62766f632255480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a073bf2e4d83f6d4a9dc0a952a968db4c9d48d8bbb93eb7165efe304e012d9377f4f4331a924e42b6f1d9da0f79a4b19023016545e0462d00d079a52ea12ba24a65ba506bd120aab1dd21e2bc04a1983b152b503f17759668332c4ba0dfcb942365e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306e8fbf5444c560c8299d2b6f8567bb31a4b8cd18ecb34fc0ea2be16718dfc18f8951486c6e3b0b92c5c46826633135c4023100c52fec725a3fae99a8634421c3ce712aef32ef064d2db28e17cdce919625420908eda3357685e1e021681a9762b1d0f10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f758997b64cd3308516b501a1788b2a892431f8945a169a6f55cebdba2b337779b965fac37e56060bd0d3c5c12375127023018bb10398dab8804fd0f1fd2d7b0d641a40f90f74e79c2613e64290fd00fde6fca9e0d388017bc737c93d8d69defcb6f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023035bff62e44ecb4982a980e2d17b7b75b45dc28bb615c5cd3260a3a083fd73ae6061dea7cd216ecb8c6f2e9705c3d7cb5023016d90e5daf40989fb8a3aede52508f31f332f4f786f096a66bc7b7a219b8a8e33f470863252154f35142d616018b4b7f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230422e00bd22db836f2b7d0bd64cf2821adb14cf98ba3f21317f73413cdf38bd143814ee7eeaa4732d6a35fa0185d8e643023041831d91c2802521c9c4f87292d6fe874a4b2866471676f8351693889e8516b5542d636ee0d50369f7f5814ee71125cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305022a275ad840b0e824c3772ed0dea6d397c9fedb087648282130659517c2c7192131acc7b3476a408a8d47da0a71614023100ef93173f979eceb75cf42ee7ca86e07ec0c1faaa1e60f6e5700da2f87c92cebc0ce4101ab478fafdfe8fdb5f210c5d260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306d15c57e8690bd8ded8d2717feab5382b4dd0c471c7e062134209bd98638c4fe02e47fcc0c77aed7718e07f177969a630230089f528442179fe03548f03c2ef04acd92513f8e7f2ec356fd3579d4e323d814590e8870ba5d2fa3003b4b402df90eca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305f3e4cd7525d9ce900a98cd4a1b86bd3bddef952362a3cd82b8e317c99635c3ec0e1d3623481586f9fe230592263fc0e02301c2a9e908e07296788cfb33d677313fa03887c00834800e95568b4428f19a51e822142aadc3a9df4835914b318d22d930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023062d27d65bdc8bb5cad4baf537bf5d1eab21d24649668679f0f44c2336972b34854f5a787575b79824ecffc32525161bd02310093c1ea6db572034e1e0c636abb1827a90d38bfac04311c4bc00cd8966be8e4d3205c02b6d9deba99e02493878ed26eb20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023007b8b82b94685a818eed6179f674316db36f52716d0bfc94436df84c1ee3132f5ad59aac87d4410e305e0099acb206d702302914448ca1fd743a5e8a36387353eb6a9601b84c6146befb6c30683be7fa8691827b24cbd0c39d41259b7e901bda72d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310094c93deb1ee06e42c571d8ebd11012c6e9f697d590a667d2ceff65bcaee106590e0089dfaf44ca997e14d5522c41f8d1023055423ea44e2816e47c096abb9f6fae323e40de150093c19bd0244abefe69931a22056b93fd261476923eda492b58eb960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230399296baa14c633626a6b6958a2317b6651c98946cb8b7bf65829761f593bf015cb4006c6ee31cb29b86c47ad4ce01db02302bf5ba771ae658e3cd99f2d180a33538531e93868cdafa496df30dbae296d58b620eccd7575b1f64d2d47b381a5bca7c0302047c435bb5006630640230311131733b4f4388d380ce85be7b64d7505a0b62eeb106ffaed611c6e5d3d1dbab99f1ac136cfb0b1786f84cc02c55c2023047a52a887aacba60580b4e531ee567402293975c4707d72023b1f3004256cd149702b275bf44efebd9bed0192c10673c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008fcaf4339d637ab1269c1a4d17ad60e6e311df359619c7cacadbace902b5572535d3a392b08cf04685a70487c2296446023100d6b7a7c3ed65ed4462325ecd55e70f4ccdc231b65cc0f42daa1f4c1f8e69c57b17b4b73f82721a62dc899505e7abc3c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230686744ae8c5654e65c8808bd037cb0ab9321a3857e1648661ab5d287ce3dfa0a1d4bdeb817f545b7b22fa404f2d3b8a1023100be5521c6e8fabae2e7199e2b0036e5005bb23d355cd76a340412e5270edd23052dca90c5fa0be57976b793060200c3240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023060a2de5eed386614b72aa670b60aed56e2aed99ed0109ae02e62bda9152baa817d44d8a281626a8a62eac2630b0f83980230536ee740b33a1bb85d8fab4c50e8b2016d66ce7be59a8b1d3224bf11c489dfeac0d98da88a8b6d03abda417eb07df46d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300545965b96d73a07296b6601aa298a3fd05f770c235a16cff4c62ce30ba0b349ec18e154fe63408bb5142b5552755b7c02305716ddfb0b2cfdcf530b2bd44082493ea5937ea708b503b6e25d3912d4eb0f6f3ed9717a4d3a4928e4e9ea38643670b70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f9e03a8b481ea79ff53515f10b5368a0e473537629fb873cdfbddd9d6a9861880f2f64a5731e7664ce39061dfacb3607023100e1bd79a88c648856a339d5fdacf927ac959b2ecc5be07c4ca6d03cf9dbba717711000bce336bc4a0f9cbf2af9d29e4e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d057457b3d11269cd83c00cd3ae1e06a14e16291b415f980238046ef104ce86df51745309c90526f7a2e09267c4fb21f02307277d880579e6fc54b8801a4882158340a0befd840d9a5903c2e2dfec96d4d4f4122fbc1c74eb2def1abd551a60bbed20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cdc08706470768ce3a8c8bb5fa5398f7da74e5a58c122f9e268f5f01015ec45176431836d537544ea673e7ea12e37d53023002f3774d2885de1674c3409d42d0cbfee35f5af3bc463dbdcca6b40310b514ceb3ecb5f0cc1ea6f7e8b0e3cd443c4f260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c4525ae13ec998c2550e2a6595f46ffe2c85fedfa5cc63e9c7f267a4dea6c4ac19d0319e46c61051ba674dfd8a46779c0230290ca734623f6654f0143004bb7a4107e6ef542273b7e719a8b7b4518878ea653e53c2ab6ced88b3dd5c6c8b94d3666b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006530630230753c30d22573fc1a36455576c756e5406d1dc275037305e454346f8c41f8b1aa53a772ab8ebe4532398a599f4cadaab0022f6d44feda12570440a5ae4b78140c720afb8203d914eb57629f32ec40e7a9c352cab631dd5397bb279c758fc2631ebb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023075e74c506ab23e75acd59887c08bd9caf7d4548e4a50b67465719957bd6300430975e56b39a504e80d924720ea69ca9c02306eff3e1228a2ac1a2d1c7bf90c3c8d8911b0a942ef99a5989c78e39f2593a10fcd69ff3af53b60f90f259965af482e640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301affbbec3208ac4519fb7047c7dd2239fc89dde70cc1985bee768bcf08f05e2247fed1ed0a6fd4b38f3fe8655a4a0658023015f51d9c4e8b14c681a1324a7cf3e0514ed0db309c4a6e306c9431a89f265b2cd4f71017acbeb4937d570fe1fa4f37080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b70a4b0d1c9bdb19f16c0f6a8503d50ac5e60bdf9dec509d84ab9fc1680b49d79a96902977db6f44017963edba99cf48023100a723e8d8901e5c9c7b956d77bc6064d117b20e5d682c1786ac7c7f481c04926ce0c5bcb68dd0fa0551f2390e555e835e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301f492e8b8b8a8f919415248134e5f9c980752c22ad51124b225b0756085c92bab05ddb96c6763de837460805ea4e160902307eb949d97cf93ee8dbd4731703fd2807ccb89657bbdde5facb1f058ee389b285e49407d3b50e285d9b611d41451494870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300c6edffd8d437b9852733f450200dba15121484601034da4e09348c1185b3ad37df6761bf37e2b825c00cbf52c5fc58502301e2e23c869d8238b552b8b6eb01aee5bde788434806f3ec69266e84af9fcaaf63ecea9b052950718b084384333a1e9dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100deecba2d7b6ee7e27af95e497ac551909efbb97ca3495865c789d8d85839de886ab14c9fa872a825200c50b4f932d10902307e81481c362d51f70147177157b9f98bec33f91d76558399c5f576138902f79cd8b6507a997659655f5f5376b04c961b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc8c79dd03f50fd05bc4d2ffd5eadb899ff26cc9ad6dce5994ae36a2f34877cc4d451bf2a90b89831077d1884c0a6f58023100c0a0625d91afd1a397d7d857828c1aa867c0fcce0e6e7d27504d7bbe40b106dd5480bf51508b301e6803713c67d1a0a00302047c435bb500663064023016fb8a2a02f9db328b095155ab369c93d8a238672b4fd1d8407e2cc4810567b96161821db7d63280d372db04307336c902302ae78569d8a6ba0da219c14b1975781c803d35476351d70b60ec0b791a8e5032897452445dc758d17096f9e357911c280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aef8ef927ba59f2515cf956b1476eebda64de86d095a20ee660946004ed472623fc07a5ad5f7560f701d08e876d45c4f02306b7c659559c9e3c3c30f520d04161aacfcc28a3051ea9e559fa1c4de99fc064aada113edb8b3f8aa23d666e289df06c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100959a8b95c97e9c63ae3f1241a135648e7277a562fbc0eeb79e01847ebb40b6b0a4504737bc78f44ab5c9056c33c9656c023067ca86eeb629ed5ac8479352d8205ae2dd4996cfd070ef55fe73946b5fd9e87d3e0add339a5fd9f5d2c0eaeb22f811cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023065ca987a90b25bc0d072bf130c0a8649d4f08c1576ae50050c61066e121bd47e0a07ef234581e0cb3955cf9659a44af9023100b989191da0549df8afb80abdfbe6c34bd47ace584c2d02cdac26d1b43918b2014726ba9ed9eae436bc5458f0b1998f6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303d3f6529fe9d6063f8e14985af0702163654c2eeab0bf04452774451f081e42e33b9aab33a683b7af1357534ca5b953e023100f1d8be6d7654e4518c02dd6cf9a882e873d04c07a1550a33cc6f4fd6fd5a9776c8d885f6aad1ef6f572fc3c2e76b9e890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd9648a8d7dd620f52dd2e179b6bd7c5ac8e9cf6346b02d13903359b99a0a01949f675d1fd72007eac3aa171457f2e7f02301a70d49b80d34ecd14d3b59a28329e4dfbbe06de5409a74e0ab1c83906abae40f59b549fcd15d8ee226eae446aeb5fb20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f16acf93e750099d2cf70312edc8dac5b78fd226dac654a34bec69a2bcaee02b5685a3f3dbaf775c450f9d54a6bc5af30231009bf7722f7338293b87817e44affebf2dc054208a0f5dff21d1fc34a61fd639ef69a8a2a7953251b2f77c2930730d0d6e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300ce600bafdc94bbfbf07b9db21ce68258d2c7d858e771749a0950ee32c38791343bef632484da1c5a020545f4dddc9c0023100b1218bd03248e1dce085b423e5272aaf5d7b4ec4e1ac775510e249cd207e5f456e1ea26ea12ba7d6344ea6d21eb64d3c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230655652de4828af5a09a91eba5671ee018162677012bd9eee9d81cd74bc0f310048c9584fd0a94fd5e7851a1431784c32023100f72742091167797b4134f79d7f9d27033c4823b0a6287a33dc8323ed8936c99cde3eac0b7b807168124307fa7c76a3d10302047c435bb500673065023100ce4ba39bc823b5fdec227cf2653202732c329beb7f04f3dc84a265725a3d386f64d8f6b940025373ec6e473e933ea8ba0230456902a70322f055cf924fc6229b25398f55f6d6d38ff0bcba070d0fd4fb761d7d39079b76e497591b21a6cd88dd18b20302047c435bb500683066023100da64f283e8b9c6e721a526325606eb4ba570471987154d56295a5342c4746779b01e145a01a965346705f483b559abba023100ae4a54856d5452e1963bc6495a1253671b27b8aac08d35b519c1fcd4b6e880c9a4048f6b16c7f0e8e3a8fd9f53f520dc0302047c435bb500673065023100fc06f9e6bcec9af44132f3c4cbaac236633e8d6e5ca27981b2c6b80ce7a7c14cbc2bfa55a0756e3d8fefca1602d8a3ce02307b8191b5180aa7131b3041c293fb0c1f746c5c8ba57faf8aa19dee9f758cc1698d71f91eb6b58531107648e38cf29b960302047c435bb500683066023100f5d02ab24bb62f6df499b1051640cecfb83b9e6b4a4f0704ca6ab823b38e8c2ae05286c92e700078f40c2b214bbbc77e023100ec5f3ffb270d15425ad433331dedb832a8b07506dd7ed86219926eaabf5211d0bc468ee3a43d9c81796b4f7a9e0fd2670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b1f846c3fa9a1f949da7940e494d9959ffb150bed2979ec09248408203d5ff7fde6061eff4b358d33b875ccf6d5ac9e0023100f5b76902451b2ed4faf944d8ae8d1d323252aee2788435e09149735c30ec679ffe627b46e701b75cd97675751f7980650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009f116107f350f6c5a5f993cd9af46b3080d1b56feb06253e81922935f4403218c28e673b7dca545d696680ab579e032c023100a30f5ef6e967e53c3d269bfcdf64b5d98d844fcc8f67af106d485e9d693d38555aa1dad93002ea1baa10857b6351e4960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d24fffd878088b02b2f0661122ad9161edeb08b05fef5b33de1ae6a87ab160977645c0358f5b908a49909dd5a9c59382023100e426b1bc43d0a82a959943a9638366b54607afa75852491cef791ae0b06eb08986ce5c5a372455c8ddb67b16d476ba260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307bec5cd5372041008b0158a43f72bb66bb929092a436f1a0af5caf220b45ecd9d70d545b5878ed3da753e442d342bda1023100e372d8f097237e0d8aa39d02b431b0b61eae9392ec422a71a6d4e87747516723247ac902e508d296fcadee2df66aa0e40302047c435bb5006730650231009e197a35cb55affc081c9ed6b395410a9b2ad24b9ee0d65e02e0fd025c4cb606537bd1cc5641baacb37ca7cb6cb87453023050becb3c417c4649a18db5c691c2b0d06d13a3acc88cae3645ee20e634f88717758bed437d6956631f4a9124b631f8e40302047c435bb5006830660231009287f069e0e87a27220e7f99cabf603749bcb1c308cd2f3e2f9b101a2c935fd9fa84a7d828f22ef3d30c38eef5a81c7b023100dd87cc64fb37ed88c3409a44b545d763a3cd557775908c57da8f4771fa1ff6ad422a4acff0a764dbcfb0ec96ab7402f80302047c435bb500683066023100b5094cad3e5c33ec0f77c03d3f2206cf1c7989e97b8e7f7c480b72d077f52806b67d5036b43c9233f3f2bc5423f6c6030231009da5765c03e6ad1f0260059c8f3d19e954e2b2f9a89735a14b2387b6ad9da0f70e18789a9d9f415e3eb329e0189871010302047c435bb5006630640230735767f9bdb35a6e9f877edfc98d7d04647fe858fa646ea548498afea406b043367d3f6365ef919b5b2ec7d09be408fa023035d4880d45f4aa02a6944742ff7d1753d9b476bc23cce531c760f1ddd092b7ddb37c16e7e014c9b77041036c5ebc8d1d0302047c435bb500673065023100d65b341390aa2b235d4e52f42ebe1c2ae1af2e39be0a44e7cfacb3bab85887800d0720484da3e0a4b15d8d82483defc00230095705aafad15b59f45315a3642208fa5800485f0a89b5d170d91b79446bf64e9c3c31da1284402de7b181b4a64aa96b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023023f177fff60b1d466b6f1cfaa7f800d71937250b004205a153563bdd264c958c184aca63f762d36e30ba836c5a2cfed0023100ff64e1ae5d9846d00cacd40d06e9f4c8e5c585a83c2828400055d1714dd0ade4ef6e919093959c3daaf1d8b6d0d9077f0302047c435bb50066306402306f9cf02e274d4db2d8116a299feb73c080bf0ba912527ab92280d65840fa90126d6e78d64f4d8179724b7cccfc08a5db0230361e2cfb1c558fb73ebe73b2fb3426745e707fedf2fa35c63b7f1aebe41bca15a22a5e188161875295ec77324b1d6adb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230643aa5e59376b09c2171b521ed31b20fad74f67e4b278f5203f8d7cc3c21c942fe1df9a227fc018ad599fbfcb606712e023100d2dd391ecadc315bad72c0f6c21d5b8c8a85077a65eb697e11abede2c8cdb0df273957efda1e24532438e6f036daef030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100943ad0dfc85b2946c58ffb1f8cd26322e111b853eaf6af0924e0d0caa296037ca80675f4a4fece87b681f51afc3f519b023100ec39b4383cc014c663206543a6af4ad16276c519d58551aec599b75cc6ca07c6cd03e9dfd05f912faad249eec5af006f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009e24c63bf795ea36072764b60aa01505d88275cec32b142cce526fc673705bd34f1316a9e359caeac209be44c09aac8502304891460649e3b688fb72073aa9fd6abfa080ee3886e0ec586c940a98cc90fe25b88f299532f74bb2a4f64366a3b2b27d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023041ea3604266af2cae542211088b232e2313dbb90262ec690a2da11608f940c157d39e7f472baf439aee640421c04246b02307aa3b89148058682a71914c48b2feb8356b8787720dec43622cd998468e09ca63395fa4511fb7cc91afc2c51fdc952840302047c435bb500673065023100c29506c495cfb1840052d615e4cbeeb95ee8249eee274318cf406a4626fa64175d4fe248011653df5afc7c75568a94bd0230773cb12cd2e852b0606eb02fe466d8ac3cfd98a4e7ee507eb05bc109c1ed4a195105a367f9b1982b3f6f41c1b6acb0710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304edd76e3c98c6dcbc43d4dfff21dcd3440af2d41c6d69006af19eb10b1c798a0a8c6a6cd4f1de4ae1e72c48fc9a1495d023029bc232a693f0326e01c4632c651520d5bdacca7e3de1cd82818fe08d126c99e3aea795716126b66187914836bcbd6ed0302047c435bb500673065023100ebe51ff2b6f2f2d82834531dddcb18981640eaeaa5cac6228e4e0d97d6dcf2cda56bc81fc2bb5972c51a43253175d325023039d4d927c7d63e98a586ff9a56de806cfb46ccbd2b4b51e0348295223ff2b8ab71822e7e350c635934d85acd2de99fa40302047c435bb500673065023100c3703d34f7a54f751f95e7a47f6c7bfed93c9dd751bf76fc9847addb378869173553f33c930f823fcb7a19f6b1835b24023069b670a74600df98e5b7813f0b3cd943163de184f30afb956332285d24cafa7ea5c74613b5fb435bd9314816d7f7530e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f4556380de6128d4c1be1a98ec9b6dff9f15f7af63085263ba8f65bd55fe585fb4e979543b6ecede90b8e112d00544cb0230608fe92c60209d7973c807849ca0c8122ddd593c0d1b9bd27f96a0332069fa2bbcc240614cf52135294d8c8858630f570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230100034233f98a9d63d22bebd22acdc52d0de3f9ab5ee4879eb2338338c27f230658e72e87d7ba9407e427798fab3ec3c02301f4698e5a5451ffa08425ecdc231ef0c99b0022f017bd03d6b88e162ed1be04f0a0b5662f8b933507451cf28e1ac5a1e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023008ecf086cb35d965896bc01fb7a79f840e9fae1e5ac8b1015d1eb21bbc4cbbeba61be0fb1a9b33baf3c67ba77a0820e0023100c1661dcedd299a50b7d48468ec7b9ddddb0839dfa9bb7ffc1e1eb8046726e2b686ac6adaa1b100932e180dbd64aadde30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e2c393533859769df695b6ab496ab8a71d3d538d0c535cd334b29a056bbe1f56439b21baf0059768b7d330bc4331d4a0230620eeff20e935c75aac3c11ffd0c720333a9a7540556ed55fe1fd73d58be2500f2f22d9df78b0cbdde144560ad84c5d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305a379f494172a4d07f2d9568d1031548d93f0d5babc43e80df193f7fedd0691c2a9b6df0701176bff56b4659d8226c9a0230452bc4fdca0d7a9a8e0a7bbe561b92a3321de6455502c59313eea49e22be079de74c4c4c1d119db59bb09a20de5a48810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c6ad4ca9ee50908538e1f20a51f298cdc1115b4ca74ec494845e4b1414bc1a96b02d4badd472c4c8e060b3348aae61e2023017709cf0568dc40db2929f658190ce0d6f7902d6edece3ddad3466e360107bc4211f9abc25cea82eadd0da02b68a089e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230256b06672ed4c42c08797b9c2bb936f875777b362fdf596c21d245546e483ce8c4c11e423648f80524577e6d384c25c602304be12400595965987545a6bd10f5ac28ad47cc5d214e78de1b93b6aec45e3b81b1bd241adf1e2d5ab46b6ebd876fe68f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023072dff60df19e1b428342441042d8382091ddfc2441f21a08c49e783832677b62c0f444f428ed1d4d90cd9ec91679ca9a02302a10bb8d8e1493605643574b21779228392a5d94f4a7ebb6099344c2c5ebaabbe303c43ec5aa25c1552add2aaa5d57540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ee137b2681a0cc4b0d6ff4acb87c0913abe62b03a8e62dd96c54ccb48609574eaa161368f260078142edda4b54b466bc0230606f2fef9e2bf2847fd0c098fdfae984cea5bec570daf6554501fbc906d880df8d345070894b342cf9298a118f16d7ab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302dfb674c610fdf53eb9b306f2138a3490cc1acfe4f98622ef2a039da86f58ac61763f73be4d50dda1b49886c68546623023100eaf3f9ba174721d3715bc1e1bd04333dfad96af4ae740ff7abaea0583539ee0a0ab720c08bceeada97d43123f8e859a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d75713b7782fc237c14bb8ae855d24733152671f905552154925ec23923e53e4b061400c1b739664e54efce2db7fd8fb0230322648e9e9ef0156ffaefc22e3c6318714d6961b31b44eadbe083c6579cec555a17582de0c4096045e1b31b03d1fbda20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a3a29f2f05290eebd7f1609618344acb9e4b00675f1918c196f9d82d191ef521cae0eef05306da7181ffda0cb7f7745e023079040e1856188f2cf08af91f7596436c47d427129fdeca283de58ec111e828615527bfa553c974be3eeb3c1356fa073d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300557f04562da8d067feacfbaa343d0482da34040bec1d3929406be7381912f6ebff24f571afbae2150e0ff83b3aba4ac023100853d9febb9f2513afe9acbe8249dc8a102e74b478c047938bb5606bc2bd427b8b2fb536b45febc626a928a01cb8375500302047c435bb500683066023100aa3d691f11debd3da21538a821e1d20e703ebfcd3ff9422e9a810990d8ad5f02a570aabe66e1d0ad037be2048d2b53f3023100fd153a3f08c9abc6a51131a7458c5b295c18bc9b1042d5bd6b911a6136d72f12efd82b3a319c023052482d08fff6aedd0302047c435bb5006730650230443317a25b9cde45bafa4691a070daa7cb4eb68fb9d5af369a4c3b49f23652b41055ab9b4e3ef14dd6ddb9225454a318023100a65c3a8a106f5bc68b3a9f7ba3756c2de6a3653ea62d208b1b43c785c55487cfa8665416666102fd068e4ce7792b182e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310080dad66cd487a04fb777c53690c7781c5f5233e178c6243b6c3b6ae58159c8c8a887a5a082b6490749ac0765b0af46ef023100aa9529197c51350540bd461b1d6de05507afa8ef167c5e35884142d71bd5db4096d3ee821ddbe8dfc8a3ddd9e82e80340302047c435bb500673065023100d8ae33f0212a48d2d3a30e0d274464f918f2df321ae22fc6044979b7a6dcb6a5d7567b1426ecdb6f4d8587276ee85ca602307e43ad887de0e9af8263503fa9bf4d70819f60873b5159ffc2547715ebabc8f4599a1822d8c3b6be1b97eebfa38c48dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230446c1183cb10aaf0ca268ccf95566e075e688970b4222938920e53f956fde6f742c0f1816df21e311377b30929457b84023100d1518a4d6a18294c92060985f1400606b5c49dc1481bcf3af58e2aefe75ce66fbee9ad953f3ee3c76e9f2255135c66c00302047c435bb500683066023100f4387f8b8264fd94f5c994f056159a48d9bee861fdf0fb8f4b98d5263e57c312419adf24e65d314cc814985d77eb96cc023100972334c3e72fc0e3ff2684ea04d985e229367c6350861b677ac5347f603ba535e4e6ea227e728e04ba80e813d5b4c2ad0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301c74a5603e4757490ac000e1b36624fef39fd4eef001b4a63839f6531a24e976aa1b3fa9614cca5ce6a4a29ee2ba9f0902300a532e416fe97aa8a910348df672406560f775ae60eaad435535c188c7a511d9992c636de608a0654bdc18320e5b61640302047c435bb500663064023062e5f7b92c3afe322618c62b818a26e0cc4d6ed9ad7dcf60d2bae452adb4bd9f10231a3b7b28d74afa57ec8355ee761602306df3d74b751b33959c5d1649fa59b25d8e4480ac5afbb53f9412413f19b846eef514025231d7c4cadf306608eb23ca550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d911a2388536289cef8f3298f0fe4eba99ac8aed8cf30d8562c5180e8a98eaee8dd6d34f23f75b9d30689d39ff221061023100e9ecca55d3cf2c889db5cb965e354799bb0524a6399479e3b4bcc23931c5ffbcaebcfb5d6e3d342099af406dbd0412cc0302047c435bb50068306602310087d52f3287ad9347d2cb29756915d8cc81cad10ee0ff8088d56613b782c7b42a888e0c04082ff5def84c8271d2073f2d023100b44a58d20d2703413d60469ebeab5f42f5b489e2fe8c3ec87aa23bb04151d623960c743338bd67ad711283a8e554ca740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e041b3159d9cc5d2dd722d57a04443a00070897cc617c5969c23bb6543d5628150cae5948fa1dc57954797b1449ae0f1023100c6fb883a1f264ca579ffd37081207746e67721195ef34f8ea6c72784fea85c72d73813bb4b1d4d12444dd03f8865b7b30302047c435bb500683066023100dc98eb18fceeac756225ad8f2b3670e010f056ac263acc90cce0cb71d08b11004de6442519b01743cbf372e5fcdd6e06023100eb20790fbdadedae6c6d56f0154cee659eecbd16f3c7b925193ddc1e6c6859294e51d4f0500a8bfc5daf476d1b597f7f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a0b001cde513eab340dfb04bb07de834f14b80075c9fd08eaeda8f186110f52ccbdb7c9bf1764d08955838a030e4ded023100c488a0ca7951af33042a9dd0046256f3a96c403da12c2cc8aaafb326a82c3e31084627bd15d380f8a685a2e5758997c60302047c435bb50067306502310086cdf23e4b064241887af9a97e0f2079a1f2f0df884812e9f983c0a5329a6266be84afe1f0cc4a257f9303ef016cd53e023069e4798992625bd14342b316b9130a40a2f07188d008cd921e84b3a347cad1be7815daf1acf80a350624d3a685a3b6ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307063cc65bb696f235335b6eee37b0a21fb71b8879131a73acbe52e7084902bcb757d79e22c81aa3cf27fa796edf8df3b023078a58a27509550edc2fe0684e0e5767ec95508454a57005743d1d66b7eea44e83c73cb3185231610f7b1b1ef16c30fcd0302047c435bb500663064023036546fdd1c5fb91035a6cbd2e891569c8745afeb6eaa429e2824860c2cca148115cc96bc8e52e775b0125433ffb0c2b502306cddf4df12575dae973581c9089cbec93341e22f51d0f8d3b257255e0b1701b3da2f6ca59460064b573cb245b926cbe00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023043b9ce3d90e38456b34b94a8f8c3a22cacf4a3e403ce1f80261bafb137fb73225de2e1a9014049401629f3383ff82149023100eb9a9667cc59dde9c955555554496cbe47bb911e3bb16cd3f8ff8b012bdd5ea7a0ca067b193e13bb8d79e8e38b0d98440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230151d483d3a07acae55b42b9ae56c3ac4f13df911e9f70d2a366f15b1da650f505c2018cb93b3ac9f676611d014a2ed98023100f8fd683fb428ae9369c404f62a3e8e5aff246f3c22ff3953762f305a3bc2b1fdd2dc0e51050ece85b3268e5a0f45ff390302047c435bb50066306402304edab367fdb197ca6b7ee8c6c92892494f2d9de6c1bbde6573943f4bbf6da67c31bffabc1e70a82a0ea1b0141dc5cfc3023024e1dbff37b8bd771076b0e5581806b99a318a345fc1cb3b1441067f9bce114d3934692313bcfb8afb0ae95104a11d380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b674e5244923ffdf318e9481054d28ada8911b278438191f9492faffcb211fc3556e25bac27f70d707e296524be0e1ce023100f29cf7d9f43763ffadd961ae9a367c92d3c794666848df964188cd99429a15b2674161b40c2d8be883399658bce81f570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306d1d1146c1d71f150dda622714e37a02f00c98fc3b9957628b8377664e860287da053d144b4c40e5eec34dcaf608e8c102304889ff10153a64eddbb42ccc3c827cc620ffcaeec5b6551fa797d4fd1f36e3a78a6189244bf92e73c528fc23ca4d04300302047c435bb5006730650231009b01631054e03b3f19c91ddd502e2ff654a4fa24f9949051a9c99084ecb6c63be22c536e4db4d44c0e053ea644e64f19023028fb2c95098ad61a178a709e21e1ec0d253d4d3d84026d2a74e20d8950d2611bec520eab6e66517304ba66090fef6cdc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310094667b9bca31356d01583fef7f7e39d94133d3115d63bf218690a1728cf2134af9a9e37d8def21b32e822208d7b8921b023027b3075b23b663d133ed9f098dbefffb92f91be18515ac879656ad82834d825cf83863f2b4f90571c89413a9aa467fcf0302047c435bb500673065023100a27522e7440f6be902574688ef456809b1f645e1e445904cb3aa679cab6a8cfde05abaa21cd7ddf6bc828c1770e3ca4902301f79b070cb3119c270ca3de3426a72dbc75f564b9ee291d9be6e5fd24adfb6ec588e6e8c50daf9e3aa94ca4e6552827d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023075bf4b840b74ef911f1e73f5fa2964c27bdd3380b0d0fa77cdef816a25d30e1d3315e71564d393012eb3a34e220836ab023100c6fe254b22799f08b7e916c46de6373f35d2631f20b4309f5e1e02cc287400f53ab0981476cbcad2dc7626d9176271770302047c435bb500683066023100e86e20eac0b6b95ca305f08449a049d95e89897cbb357b7179ff2df3cdac450635dc220e20dce0ecd54cdec68c74bf0c023100d18ea2e7718b1735cc37e5987ded76e814717e38864edecbc0e49c42608e417ce459fee8635b9bf0c213828ba16328040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a05807c0279973f9161a1046e4782fdae3ec2d0f55094fc16a07674a208bb15a6f65c60c63a11eda5bb261825757073d02310084b370a0cb4e8eda85b3ac0fb58de719aad583a363ce3cb522ecdd2e4945fe1339b1093d447f31d2b1a3a1095c0097370302047c435bb50067306502306ab1a0202865692a37d94363c2066a4a77daf96c5aabbd7838cf29c6984d096a0e306b8241c8b4177cbfd05105699fde023100dc251cb0ef75ac329422e5f8e6286685e2b519f373ee6b9af50ff757a49c88c8cb2a685a32d6811f4991999882e8bb4e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300cf920bb972d1997112e1d740dcee1694af8bbee3ba011b1efd2e9b73201c43c6a6e92ea442282fc8ba89ba26f084901023100e25be754cb24de7a12cbb5c1102bffbb45c2bdfb0f44f3a649ba730e7cf114bbd5f687eb05ac23bd5816de63942ccbaa0302047c435bb500673065023052e95fbd277c7b03fb75f50b0d0e02931ee98f2e62f80edb35a90c329e09475708fd8d48d0fc489e545e03f7d65a0b64023100bf95aeb545a1997d8e7e19a8e44e1fc9bc6d66550789085939b3f67f0064574ee98db6c663a2578f138d3a6bb9c192770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d5256045f3def45655cf08dfbca05d06b46fc39016a6af1332884683e4c2b516116098ab37caf45f5563aedb81ba63c1023100ac87d3b2815647ec2f526b0499bbfe2e34764601d84a2a73ede04d756eb2d13322b0ff3af3cf4892b4ac589a9fd0295a0302047c435bb500663064023008b7966643d3b63e2791449b7a7e2efc855661c2ac7903f4b59f1ddf7f9fa3ff2b8aa229fd48bbd9bf3e8660b226e2ad023065a0a1f94d5e0c64cb3b2daebac662ffbc6ce2cfaf1ba0fe8a001c2fe40e6eb5b19ba45f35efa4fadf7101bee885f1c40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307598fefe0c13c82f4c083deb31156370a92eba687a1eda78660de34a0b1897c2e4836c28fd8ca46b0183efb254e6f6620230188dff6fa955361468bb767a2fc009f32d56cd8a06a81cd7dae983ea0b74325673b33aa04fdb86bfaad5dd8bb55583fc0302047c435bb500673065023066d4969a853dff179840a40897a82484e4667d7158a6177a1ee3066d9263317c8ddb4773886fb4fe0488efaa9bea5357023100ceec656dfa37760bc623b883168101ee87e1f9f3dc2f4e0acfe05dfe57e28e8676da85da365a751b49e6663c96f2c7070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310089b9bee4fec2a26fa89ae2b4c7f1892d9ff40d343d4936759cc754b1d95449a9313a1ba8d28214a6680c8d5044fa81830231008d07ee2145836f5367d0f4c2edc51a92d85288edbfbe91d5547f32eebf6b809fd106046aa71c66cb6f469b2d6186eea20302047c435bb5006730650230239731bf24055d0e4b5712de5bddf9a57e340b1c931b27280eae85e4530eeae2f7b7af64cea70f52df779ed437b4aca9023100dc2fd0e588af590bbb0822462fc6ded875cea59a68c1c926473b5edb25be4951af118a5b0a6429947e9c3bb3ac45e5110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abb67745dc70644f600ea9629dd6660b8f21e415592e2f03cd8565aded9392a61bccc13a30bab58ebaa21a40f4305dfa02302f89d929859ecfbacb8febcbaf0a837dec9b019fe84d896da0bc6245783453e3674bbe184bebf0dcad4e7ad111c7d5c50302047c435bb500673065023100f29ee9fb09e1a57678abc6f1fdbf8ab0afd846f65f2c8afb1c9386cb22d53ae32cd6c9472589a6ad655a2e5480d3aa4c0230033d3d9a99e175847c759c245524b3703a204709e4f031265c779ea07b5d1aec6c83b2319f70bdec49e1b3c0b49e94080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e15d93946cf1a5eb1744c89ffe843984c1aa2e4af6a0eea21444de242da21a72626cd732e6f55f67f88f212aa1047888023026ac014e95fc1746ff166fc3caf3533261ec53f5c7bcf90beb7db18858aac5051547fa0f9f125b7c423d79388ec0b05b0302047c435bb50067306502310088bc9f986045e202d181471f5037ae105bd22f0f384c8ba2fe3cca5887264216d7f4e3a5619ddb8261db3b7ef6a62948023023b9121acd757fc6f301e09006542759a8c038f163e453bc67ec7ba564a0208b4cbfa22e530341ba517dd38738331b7a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301269aaca641a4b63aaa27e677c4b72759eb562441be1d521ad07998a6c9eff3215d912195a50cd8590eabe702eb137cd023100fa5faed8f732d8a73ad799a1791f1a236243544512b10dc3a42b7d3871d267690caa1463e3126389fd85a00f2ac594f50302047c435bb500673065023100f40faba0519b1e433a58fe922ad757c038508b2d74d6b0edb25b37b9ed26abbfb028ca35c923eacad293fe806a4633d602304bb95f75df5d58179627b97d62fa4bfcef9a10a10a6a1bf6625ce96522f4a30415729bdae7e2194d6c01d78661b4327a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008c4897e7c377be52040a86a104ea687431a113bfb3142ccdd28009091359cd1b4dcf06a787a038ca22c1d368bc131d17023001eeae6f60104dac029b0b1da2a08f62e4491a72147a8343d754fd6609aa27bbf5631abfa467db0dc489cee6683906cb0302047c435bb5006730650230724856aac3439726717c35ce4e30dd21139135c7a834bec0ee539ff9215579c55fc92b979ea25c5fff1f3eb7e4f7a798023100bb1aac38214ed75be85b59f6596c4f6933b2bd45bff41337cd700fa5981d76866f4de0cfc35aa48b0d102f0c8e4305d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ea0992984c4bb0b314f01543495533a904ccad136aa281b1c4edf8350c154ae85855252ddf13b31023ddfe414aa0247602306dfb2fc2073c6b0ae5ceb80d7564c1c6e0db08a1e612a808237fd7f3b482120d19bd06430aa67d491557b727f9833ebf0302047c435bb5006730650231008e0eb3d78ed6a2d597236b56fa19c8cd5664c6324ac619fddac95ecef31f3708879455a9de5ee606df6c283bcebdd6ef02304bbd57ca25889b1d4bf3bedf63612be97aba766a12e058a542d6d3495ccbec94d8b72042df7cac7cccaa1f8b1081c4fa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310085848f10294285ed15d913621cbdfdd875419b3e8c643ffa288bad9c0fa6369cce6b907aefeb38c2443a7f9878c84145023100cd42ddd331155ae716ca09d10112b5965442df64b6c6042cb583743dde1c3609bbcd799f544ffecdff32c3f9eaeb326c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023048577b592c2530a17f5a9067c1572e5593fb2ac15c12007ce6263ba1ead0579a88d7a89b0230cbf4311ef8dd1af0390a02310089f525d9a0b81286243d41ec0a71507b4baf9502537118b71fb182d4c25590c395bb8f571d96b5934a474a95b5d16aa50302047c435bb500683066023100fd2d0444bb6cb59960a81efd2ca50f63195b04876dbbdfb1a0cd7f2120358ebe609d369ee1bbd7d1693bbf6c5cfa12ee023100ae08303ef8869863a454403aa6b702869b71e6bbe4beaea950cd56e8e00dd7a41895a8f2f58aafbf3ba205771bdb69f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ad40839a22728ddfedf9eb3096c2d66ef64f6ff82ac105ba15b37819715f765217e05458a3ac19c26df433fa98d7886f023003449cf1a96114b06c86f93abf2c04a270c9c3609dbdb04b662045f217ae0f69b2f1ae24fd22a525b261eabeeb4c580f0302047c435bb50066306402307f7dbf77c77f307022ce5702c15d5fb355a8ba0062bb6c54c40e72e2f4664910927cad2264220340fabd54cbc7601d16023031aef86f3553e7134f06e565313db2fca501b7b36a5f19779d0db20bf0a2a4b21e3d6f82514f7057b81189b548c7acc70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008d6b2c877e39fa262f1f8b36c5c8bde333c0513dd76865c9a1e945274473032e8502e2528db9cc67e4e567f1540a6439023100e99bd60a76af9aa6a730d94e04998414948ffdf7e1c6218b97ab7338872cf14414c2b57e8f6c42b986ec5dc69d403bb50302047c435bb50067306502305b752a47fafcbb5e749888ac6f986949f579d15dd69f8c9c385cff99337c0d7969eb5340109434d43a794264775e58d5023100d1a3952b1baf6e27e3e5664f87b9804daf3cd551ccf4de0673d80e586a2555ac6b633c7de04530c1f2f469115b9b0eda0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d681c5794104aeb0965a13790780028305c7ba95a5c71e645f8c9147ab47582ffbd8aff0b4ddb672040e85a2f1319fe70231008385ed04067cd5d35ef4849ba14bfb13867d97fefb9d9d7a7ac55ab34a8c11c91d6f106c70f381a83900dc6fc89d9af10302047c435bb5006830660231009b832dae65d134e2529ed17dd6f295584bacd25a0c3b215b62566e3825be3c023ed598421e880a8dc99922f6bd587e64023100deaa714cae8d933ca391d0c58d0ad8600fc5e7b868033e75bb2144b322051779b86e30e3c740300e1235fae07a0f671a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230370847f98cd8fd67d9cce2c3b5e3eac0e656e8235171e00c28d27862fdeb07815f4dbfad837a2ba6c671a86b8a77886e023002308164efc0dcc57d2c0a5a3c507252c7cbb4f7cf9b0b71159127834a698b0a26e3d506dbd7cdea0fb728432012ca3b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e09f3fca455289a59423d5c5899ecd0d284243a09fb27b1f6ffe5247e75086e00c4077aba733119505b8286d80e0ed13023100eaa3c06f1cb4641d41a410da545fabb94879340f3ba415c8f53b0042c99219b334bf68869f3c8780d0d2985c31cac8400302047c435bb50066306402306a927a63a2a81556126d41a88ec6656bb8caf31f775cf758451306535b2d21ba5996419be69ac2898c950065535aeb1402302381183aba7f46dd0d256a4aae5b5261ca5dad9334cc97c47fbb5d34219a3d20df5f9d941ebb5a84157f878e8809b3790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307b859eb42c6f28d821fb97d8ddf79725c959da978fb38d31e70487f6b5199ce19b6034fc646cc13145d98778f87068aa023100fceba78a5102526dcd5cfe3a26f0f6acde1fdeebfb698350efe510e78617ce880afb3b6dcaa60c5560066039a1f922910302047c435bb5006630640230338f179261591ffeba9fe520b3641634d24eb162b9a9604a5bbd728d3c06ebc244d96fd142899cfe9ce9e8467bdb6ea802302b9e2e115f2c1a6c936fb2ab6cc2e9bcef0164848ba78922cba2089602d122451ee290d4df4667e498ecce9db4d9956e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301957c4beea23632d97647dfc6727d915fa7b7c698df176a082c379cca782ea35ea6b6f28db3cadcc8744244929f12f880231009cddc7cd7eabe92d51f2923271049350e6af7dbba162fff13a1e68f08cfc89d62b500d625a517bfa36ead1bb91f6cea00302047c435bb5006830660231009555fbb8ab73a9043975d8d85fec82d176151077e424940666ffc48e8379e427d84d8fafbccb8f328f89e881628d0c870231008d5ac8c761727b3b5723b88f671d9cf91cb0ca3b912674dcfe2ed9f0c3dc5c2e5429cac718473e468a5a9493d4bc48420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023056552d161ecebe983238676b5a914f0a6f26bc0f6be29e66166eb534587a6430fb9b2239d99bf1c26a9eb9c066b68926023100a1e0fee9ac984f179a615046b6ceae725d50509f8b120765ba7e500bd0281215948f3cd75bcca4bc99e8c043b6641cb30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060fb8cb51b16aef26ab363c25d78dafdce9f60945137ae2507ff92552a67b2a306b7ba4ecb6fb5e583194ae903f978b7023100bf599c72c6db91ee003073ea16757f21cdccb6cf8c99805710b216b78a4a193337c1da1980cf084559ffeaa5aa8fc8560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008a0bd86815d858cc35c97865e49525182c6dadc36e8f540c6f10e0ad8cde4e44b5ddaf8e87a5449e377966e1aa3bb7ad02305795db690a5bd14beb4de916263fb6d382d04f891843ca1018bd46d3978ce8943fd84d253da2be726c5ef8b3c40120400302047c435bb500683066023100ee032833fb7d2ccf2335d0d82fd01c12f25a33bb2fe935289f85a88540c42d00d1f268041bdc7f41ef66ede12a55de090231008f9e42558677ffdedaef38b2c093a9127753be994140eb55d34e6f3f93a7a9aecf0630e8c8039f0621cd0fc877aac3030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303499f7aefbcf45b8ec56399906944c0ad32d132531a9ac7208a15b9e007512101d1430882b62049404bfa6200cf715e6023100e7c10708d922481834242ce5ecdb625a70c3e4ca26a368a5d8bb818dfced4bb8d47dc56cd53626d192182964b923e4960302047c435bb50068306602310097c9cc9c7a2b257376a3c63f315380961bdd55977fccf8438fd703bb27bb82ab399f75400c0c17f7ca91f2dd3b3d7b7b023100f793561258fa3b32775fabfd8a6d33bf67e15daa747d68fdc08380a1fef5223f9124762c2ce505eabb4ae36a6c8d07a00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305be22786a3065b99fbca8c4f0537c4f9f472ff0b007adab8a131a84c169cd6637a2cb2a83f5a767e2ca45138f9e1a9ec023100c1bda6c4dbe581b8aac066b47de919e206cf35d6a175ae769dcc54ff10a2dab41467842cca447d2459aa850f00586dfd0302047c435bb50066306402306c2da9a5fa2f81736892772ced1e5dbf261facf21dfa1b24c4b9d9ce0bcafe2af283dd41128f22c2ba3603680101d1b702302bce14869ec2a9d032ef7074bc1ff482ac89a474fb4786adc3b7c022be83af3d8abd2616470871b0520e1cf66988552d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230772bace5b643bb1477dae90b00391adf5f10addebf371adb7ae2e760e3468352fccf4e9ec301741c1614dcf21eae5d04023100c98d0647864bdd086eb59959303773837b08b13038da11ad0793b4914bdda067927d43ee10b6c785c704ebce426949880302047c435bb50067306502310092a251b0f3702f2f3d76145a5891b4709460cf0fc4685b724383dcf5764ed94c35c8a28551f12e0e3c47b84de8af8c9802304446234a0d6973d165bf7f061d00946f5b5cc23833a2aa8cfca1028974c43f3d886bdbc7bb6b3fa383e2fe94912fbc870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dbae6a3ea4536cab5b6e10a738847be9242d99e020cc64c46337c56228901e9283bb45c117b1239c765746702a09789702302a0caab91cfceecd4b05fc88bbf3f59616900587fc3f29a71c97f0ac952efc9c85b1f57aac87d0dc98d6cb4a99cb01ed0302047c435bb500673065023100c9af2698e3f71d837e8562de6fa55ea4fd1851a03e76a2c5bba5ba1f07071d01be1d43bce11f5a34cf749480c78e138502300a58acb31ff8dfbacf1f1aaba029a512747d664e85a0ff3379402b666f14142cd9f8ee3c3f859a90417f639a084e46420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a06f4397d20a9c90e791f3c86348d41db04fad47e9e0740caa6c02a2f3612cd5587b2cfd94f8c218f83fb8056550900402307bbe8398ca642b8699f230f963bbce882fcf589e823d24673c534ca9c00fe8df1c6c3c23a553af73c7cfafc51337b1430302047c435bb500683066023100cfcb6adb866645ff17773e0cf3876627ad23747b9f0d86dde226b25b35e500dd1aa1c63770903c507be1ec8d1c904634023100fc5c354c8b5c57fab979054a4c58a2f94689343d58b1a74d11a982c5f2f368a8b666f02a0b4840d31feb583af2c815500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c30f7d1c278b1bb7689c68f454c9dcb1ed47e73d179c1955ecbcf3fb9433a2ed800ad603458f5bfd4378befbad6b372c02304f509df2e72190b73b4a4840ac78c1e32f84cbd277c04ef54b8e0f0dc1b72c4c0c968ffd3faa4d3f5282100288f144f80302047c435bb50066306402302a3f7d3c24730c6ceb368634e7df56418992bee32c21999edcfce7dfc37616540597d4cd07d960f9cb2052d3f08f8d5d023015073353f7aeaf1308a06e3a720df744153c4b4b778d2efe0ab66b7127e268b9d4cbb1ac94741337c4b95bc4e97bc5990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304d404049d6a98bd8de16a99492a62828b421103db134c8d61faf3eb732c84c84f7587129d27f00c15cc72ec9531a9f8f02306a67c6504cb9616c7590a611f8f1a6833d47683758b369e9d61c0db21c8bb2a853f0012b9ddbf7d62a9b0291164e48050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f82c9692dab4c912581db4f714b7b312f5da53dbf7ec316f30ec9ed901507e22898edf9678a56cdf17e831834b2ace90023100dc9fcd96672f61c75b5b4abd194771dbd2b5e60c985aa24fa6dc0cbc619d9f762038c18ff4a3ab3ea2ac6ef4dd49612a0302047c435bb5006730650230692db28d3d2a13d99a909ccad4ad5fd11712b28c327fc545a8aaf7e6615e850ab958199a3f33e8ece3568d8974f5400b023100d55ca8e07c32fffb21e8b1e70b8cf760f84949939bfbc32872c8a1223827173cf9d2560c8ff01dbfb4f288e145eb21690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310092cf83bb5bcbece0703a751156b80597a9bc5280ca94261f205cd96cd7b3395b70c7d34aeb788935c88990114e58e62d02301b70a6a6c130bcabc56d819bc312de15a7b9520b08e6a01d29343877c080f3f9880cbb72422bbf4e8e93bf61844ca4e70302047c435bb500683066023100d5c3b7bf8a8e175443749d335a25ea5f017e9937a84446389c840bf686e23e7f4447c32be4bc73ff2db969b9e2cc608c023100cbc47f43efca29d6d42c124ee9f7627aa529df66e7feea3498b5187b91758681564766d454da9b7b1cea74de07b398330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d7634eeea64385e90fc7addc219518fec108db524ba8ec68c236aecf8e2b396b984d42cb53e15dbf829f59e3498a1e3602310097d0081102cfaf4e263191c2871c4f3958c752fc6c110ad2f0353b3657386a872f4e4ec4d4f30fc02ce740bd928f1e6a0302047c435bb500673065023100e10a644164ddc7da6bec186ab9d83d13f9efaab605adfd2e9e563baceba11797f25afc336ee61101083a409afa0056fa023000f65b882e004ea7186d13ab30ada8246bd7ab435e37a7fea936c9a6854b18117b204bfecb1d9bc29899d9e685ca5e6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f11845e71bc8d6e2d8d73f970abdbfad85848143a0ff385e48556ee9c4b69da0339a6dcc960382e9354dcfd53a5bc8420230342afd7555fa59a306dc3d4360edd1b67422f36197240e4f41fac7ad2387a64f5d299e241693e4c7f14c25836ccda4600302047c435bb50068306602310099d9d8bdb8b6a184f5a37156be12c6052c6c4d4a25360cbe7982c635fb58461043c530f30d27574828e1defb8104a705023100c10a589dc4204812b06509289ba828285b39af5a2768a15adea52a6b56949ad915f8d78018a03449d2ebc6ac106a3fbd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ce733d1e50691e09daa150ba3e7d57a38e818bdcf0d82377dbdf662ae219566eeadfc060da84b89f49424ce561097cec023100f687dbb465559fc2581f61e122de5e4bd7663f826563a6f98c2564838eaa38ce1cfb22ca63092310bfc47b941cab15430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4c95ee5c8180ad50b9189a83895b6fdc7da1e061210215e6b88a91d02a13f4ad949a6d7913b20e7221f6621e34e9628023100d33307c427ae41b1f4c8c6fe322367aafb00dcf4c662eff86010f6e2e5f2693d91d2949271e0f702667f11a1e1886b2c0302047c435bb500673065023100968e14df07b6c3de11aeb33049894045a24fb9a7c8e2aca9fedfc8b4e5adfaf5b1da060a1256c67ba31b606ab55245ea02307a76a9c6549800ac7f2f73d4e6b5d2e2e351664cbacdc19322df16b064fe9c641270a78b41bd884ad1f1fa1afe908b0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f66f0559b60b7c443a8428e690d512c5d12edb3c15cbd36e72788c93b5b9487175920e88bf6b2855bb35e1a6fb97e7dc023009291b771b90eb7cc3d788c68df5a72a87905e051224629fa7b7f5e0d2d2bed369bbedd43882d5457320896c995be1080302047c435bb500683066023100cd1299b9c4e8f5e96cc19ce8928151d3ab55d5801cdbdd6901382660b6e26c54fda95d491fbfb8b77fa0a6baa35a986b023100ed5357aa2897cbc4d72284ddd70e5bef16aa3735bb96371b54d6b0bc572c7d91b33d6d07d26c0516966a5a6e4cb143d00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023048e3b4a9f4cd152f985fcf4fb82961d28f37b7f8317679391aeac8abfd57ca493fab9278ce9b4517122fa100b35b74de023100d1c1b57cb97da94a7612e50d5e54d6f15034ec3f0b0b2a57ba8425b4646fd217eeaf92e4f48865c558cada708431f9cc0302047c435bb5006630640230163cde63438b3486a3bb155c1f079c220f6ca13f9942f4a87794a27de4bc60bea57ba45d6b92e6fa1016333fe891474e023065f9223aee4d1e05404f984c7ab9b9e2c63fdbd998747382bcbbb00014a651a5adcf75aaf1952b992c3be3b6c119165f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023038bbf12390d5c1875d8212fcd56cfaeb50f3254fea258cbd8bc46b5b2bdc7d90074d55377f8861ee84ec53364a24f1540230423564126699b3535b00458d5cd6b891a3adec080b00bd390672ade2e437e4d6e605a86e17bdfb55886e2ad5aa09dab90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d8345a805cba5498f2ac55f98bc53a08cb846bbc1a5d2edb258fba0808bef8ed10320db857f2ef40ea49b29046010052023018d06767e79be0360c858a7ae5736d7d79caec08bf0b21926233a7186f2b718204badafcb3846c5055d5212c9ee4f5e30302047c435bb500683066023100cb1e61f6a50c5b52e2bee7726c546d133be2eefd522a66558931918a77a7be78ab7539308948ed91b03a2800ae4f32af023100b4a3254e6605d8e6fe5a09a47fd0f2aab883c911c14c783bb5c496881a3937710ad5f8066f6eba1078a2dbdc2e43e6c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230224eea6fcb19a2222c3454fa16fa07a625f97704f15fab0ed0b856acc7888573ae4d20dd89d20a0f7c8029ad17ca17e4023100a2b11db8a424f5afc090509c23bc277f6bc520a4dd292e7a359162765150b1f8b36b1f7105819fe156e6faae4a2d9c1a0302047c435bb500683066023100ce6548cb23ae68ca92846472484f52d441aecf2a34c4088dfdd2b749a7bf9c5a84aa31eb0467ebadc60c97b0f077e9be023100a3dea82fa7dd15b290d7e159fc1d3ef4bc204102a25b47def30fb3b1750a78b3010c80ab37306978c048489a746173ee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302f2ea6306c0f96ed4e7cdf2fb24876d31c91a9ec8791ac68e5b16d904b645d85e48fc72b873074ff5ce1bc6df9ae07d602305b053d80a0fa9a18b9f44d4005b3b12832416a8557402662ffbd3cf6d7d957aaa6aec641c724f42f6d9eb0f8977c18b50302047c435bb500683066023100a7a765495885223a1e140772c80906afba7f5f34183abd332ad20dee9a431d2f6c7c88efa0bab2c625b2c7fb41cd48e60231009b27130cad663f060c6a9f2f6c14f4fcb63cb6188dd14df098048847163a8af752556ac075ffa5038f9564c3840a45f40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304ac175e7b0c0df7969a6dc2e8a166d771a723aafb78dce38b6d6a8b0c734df8d0caeaa0ae99ab0ab801a1143ba4d603d0230700c9158f318f35278811acec9d9ed121a54958340591efc409bd4dbd36a1b0207a0b414c630f49ddca9d640cea266b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ac8add36f6eddcef9274ad213d09d726eb6998c1aeebedf72c39e8032c3cff26148448059c4bdddc3d764ac69ed7c2cc02305a50157ea14897ce705f473e7763a23adf853c38446a15183471fe1bf800d2fc6e49e2d22438d2cfa1af1fe1d9e9443b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100968be4e6567f3b1b979090b3eb7cda20bc7d31120caf55e270ef32091b98cc2fd45b24755a3c3965641ecf63b10675d30230750ebcee39ef001600f2370b7e42521940dc9f388905d85d764c5ed61205422edd552303db05efb054e88d8c735183c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c21e919532a4815f0c01cea5aa99109efc676bd75644276d2caf6a65c356c40c81612d7635dbcdf38756bdb8b5dd9e9a02300258e2a552e6ae9a26cfa05e198933e0b1718503632e13e64d948a3bf362fc4bc6cf2488561f6aa959f1d423e840c4260302047c435bb500663064023031fb5b7ba5e135a33e670dd6845e1003701665817d0fb88b99b43a303a1f818ea834398a00a3c4d09677d31008776c7502300cf69805bdfe400a64759791b4caf494693cefff426a60bcce6180828721d74ebdce4d03a49eed98c3da50e7d3c8ef4c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f074ab921946b5d82f027d1e33cf245ca7e9808ff4e5e03b71ad47dfc15fdaf22d10404fce43d001c3af6935539818cf02307be85f038005953dd8a1b4f8e3051ed153f67ac7e5f48c3bba2e779d21b648a1d0d5bb96537c4d7fefd60e1654879f0b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e10426174381f5bf0019f29c750f9eb13fd679a19b63da77f7bbdadfb205f4ba7998ec9f70817930105708bd4f6abfff02301acf9bb29ed203246aec356bb890d9a60cbd7874ec4f0f3994fc8ad7fced6c54d494f3dda7751614918ac78b39be7f210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305e3136d073de14f96936cd9666c62f73dcab60637d866b6b645265d6948f8f59189f04a2837a43e1f3dff6ba8b3f5603023100bf21e11121314adfa557f096aaacc156266a0d5cba027980f3301f9d1a84508378875e50a1c2da68460f3fff50dd67d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f3750ec11d79b8f887df807d8b3be40c36e908c8ec7792a44f9236747d67065bc6f42939b917ffcd200b5dbab9c8e95802302e89fc2af29a89b3da63f556dab6956f8aed7c9c16782f9b5feb3989d9cc7d63ae17855d8d4b77fea247c6bae0f2f4c40302047c435bb500673065023009aeac74183da1cda98af33d82f8ea1026edcf03fb6a813914019c4aa6aade3639c726d261ce5623aabbb0386f602fdc023100a2c1a1779f497ff31676060a9df2d068cc923bdb1d8093ea4d66dd35f91c670c8a766a68e37c212798fac6d60a1c6de90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cb1fd65b973c37ee12a1a4dc0055be7e4f3513338ffe21af1215bdf0dc6ec630bf4f95f898cc1ea08c668c2c1b024816023100c55b3078b0d8bd03522eea037fa32b4c322defdb8df65c662289f679f46f73f9f63dedad1440d723a61df6332d2c319b0302047c435bb500673065023100f8420437873f9734ca4f6c11ff12382458ce38c6421f9315f5b8573257e1ea766f6857afc18321602a9b9f90b422c80302306924799ad8cfba3b10f078cae2ac7632a56a6dbcb6af065844f1efa5358fd90d739828bb5aa67a31f50a81f7be949bab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230498847f1e2024d3e4b5cebab837b0d26e9aa95d5041937135b4ac259dc989d6a8066237f94c687aaff8dedd801d52e13023100f2eb82a8608aaedba9dcc359392b8549fff648159f1f79c2f58546d837088171028f8aa45345283d0661e894e47daf290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aa46c42ca7d035175982f4e3ebe026c67f925eac05c835a6d18ab97ada428cb500f66c483c472456e50fb7a5a2e2e4900230438ad52c3280137f9f89e71545d3c1a701079abbb9a7b6584c3139d5aef1f6b2bcdfa89d679189c218af695fcdc0166f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a72dba3fcc972d63458f8bcaa4d6cb27d71b784154e60644d807b676bafd317e198dc13f8511df725146ac093ee6c1e4023100c8d22ee04bf020e4176b999a4812ddd3bc2f1530eae6eb4743aba52e1872f937bf207234e3b7ab8a129052b602ad3bf00302047c435bb5006730650230699e2638a3200123c60709c111a13987326c1c8106462a808c00139eb894d4d03b2f43122c82a42b4231b74294d11375023100ff035a0a810883286fa889982d718c9003259e4a0ad0a5495d14ad624006936719abaeadd6f4299c3e45fe27e88f920e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305a0ca70636589440596cd79118ace25a7d25762489f9258c483073f3617bf73a8009181d8880ed23587f0135799668d802307648137ee74076ea1752a4dc325ca1fb8904b252279eebd0546dfbb5d9af1f34dc622a471099a4c275ba8e86a505c1920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100af183238592a3ebfbcf84450abece2beec202c4ab73579d8d25033d2d067888f3fad884d9cb95437e835858b6e93129a023100afd618da70ef4e13edcd0ee916654fec458331fe434bde61a9844f1eea5f6f0ccbeeb2df44a87a67d7deec14c2e1e71e0302047c435bb500683066023100b07b0d6760c8920cd0d89433afc25751a744bf56f70f1ec03f3cbaed723aee70a1b9d030fae209628ea4226ad060e983023100a8f282976849def7b1556d17d37c59c9a8347651de2238d2e6f6daade745a84b817c867f16263a7630cbb82a5020c41e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230321b5926b412b488e5758827e966f2ad7e72946b0fb4fccfcdb2c046a3a466b7383d03300839f588f48622a26b61905202307d530842d181d2cb66363744ed93621afc1d18dcae189ad05dc99bd2bf14c8049ef8207debbb2685184619319b66083b0302047c435bb500673065023034162c857cce17d206b8a61762275989fff17ee377e43b4d8435f7ab9cb1d401c611eac2b198763aad29bb679d87fd8d02310085e7ac9ff65a6dcf6a28ab7af973d8a1f4ae976f4140985e130def4bc28d372660169fa11b27930afd5f48e64873c8e30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b1340d041f1e785398cc6acc587a7712a4b3be1b4d095425b4ed6a759840edd15a1c69cce89371d365679f90cfc68497023100b12ab95bb2bd89df67089682c10d7e7b39552b393c779096b2bd18d7bca013127f68c67941a2da5088e0919cc575346a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c1587bbf86a656561a914acc2f0116712ead51773a5360f6fbe1091e4c71671b5cf5522c4d3749478a19747e2f3a14370231008ffe6523ff0f0c0012487bc7db3182b681293735f5c377e569802f3930198a054e28f9fd28d2d100ca29fd7e4c95169a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230732e0f2a7c857c26fd629c7111527825cc61c2d660347ea8a6b263006604df31ed4003a74883680cb6be6d005d9d27f8023100f9bdb664fc499d1616c53c153501a79a0a3447dcc01e429d892eac65747bb50a6aa23cdc302407173a3fdff79ecce2be0302047c435bb500673065023014bc03860df62f761b22245afb689479975e0f8eb844fb7f4db8af04277a89076833f82a5f5db37e4b20a017e6ef85fc023100c3f3179f9e6d216fc1a277d56d12b84cf4bd611f94caa6d9d94dc8247c82cb18d456db55f5d3247ff590b8773e94542e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023045e7f386a7400d170554d134effdf9a675954a3996b71e1d4d012204e9d748fd8dc5f927ca2460704015a33fad1714fe02310098b94fe26f7c4608d06268fd7e7f76ae3874b9afe6aec46309096b98406b5fb32cde4873f84dc9e5528eb862b97c85220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100de9dbab872fbb0ba19e5eea4a55f74bd310973109babfc937f9941ef3a5919fa3c285fa0d71367eb9c76a25a6d8439a6023100ead8ea015618cee56621c5818f1831dcfc2d82ac72984670bb5bfcde2c76494d462018cd7c6b71d22acfed7cc617c8260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fe92cb440094c2b9ac5c6e903c98662610ec965ef4319b9bbac2317505fa78e3aaf075895649d4b33be22dcdb5ecde060231009065ff175aba85c0ab0f7568dadcccb551d968b73f235336f7e59505e82637d78bf428d985d41750ef335aa4735092660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023040ce0feb888723149570c8943ffc8a9eaf4cb845474b8fcbc1f65fec9f776fd24ff247fe3216c30d4738e4406f3ccfa702302f03933d5cfbd16f621f7920124073d63a5863b91b79c33c5ff3ae1a062b77fcc649af37dfbc04b65547f6fa6f35a1c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023011f878e0b290ef1e23195fe114f0c341d3da6e9eec50f2eb9eebd04d50bd14ed1d372b0cad0de723336bfff3cf6ff85702300b6bffe864096cbb7c10fab450970634fe66e4ba3943fefb787c12ec8bf9ee7e331694cb53dbf42750c6d22a948657b70302047c435bb500663064023079caaa58cc456f4818bdf0876a1e56d59785b2dc40059979a6fee328c3cc1aedffd75b836ac64cbc1e7e49a9038d008f02305a1fa8e2326f2c863ee2010643efb8ea099cec8ab96ab75fcf8911328d0eb73e3ca75731a53467d2be59033e1306765e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306b2b8235d2f8655513c738e029ba38312661430671ef968d16015fc9fabcbec8c836ed919266277f5f0408b9ba275cfb0231008c90fceb4e4337641d52595241a8856c225922670060ab8ae13907b08644376f2be148b6b06c88926810a5c33592bd5b0302047c435bb5006730650231008985880fde5fc664f82cd6c4196a8df433d597c2b1ab3cb03c4f02d1bc32ea74ddbc64af35f62a0977435ecdc58cfef902306f6f50039027a312c4d094a1cbae1a3c6ce38d5fd23d601e9fd87b3f8cf3bf50afc961a9a0ededde7bd70a5864b2b2d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fc5561f046e73deb5eeef63571bd1d59688ce470d6b7c8659c6d4ff6ae0e1c3121e9a44100939f9e513c6aa92664ffbd023100ce541aecb1f985a54b249d32353ebe607b1150cbe6c46505871ebe7d30cc75a18c32eea1f0257957526ff6066016ce300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305ea977fe30694f162573e5adb2bcabbade7c16332c79119fad56b0e3b56a3451dc35885f7b1f2868c2cd7ebad5bb0c86023100dadfeb1ba30f55291dcef8da560c1b3b4ef05af94aca13e1e465b4595a136a572ed68da24bb3e7bda90257f3d070ee1b0302047c435bb50066306402302e42f3cd99cdcf668b96fbe5217164beece44aa47e0d3e9983b47ce5451fe2ee361d3ba0a5c9d6f2119ccc7011f770c6023062b6cdba134a203d1d58cf47a75d781b8fcc22e48f7ea7f1647527347fef78f5519b8e8887cfd686ea4092090062d6f10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023078e8e775353a3572448ad1a16d0c0d5e579469f3b98b70c65adb4d8e0bc916cb8df1272001279ca47ba34cc8e8ca00bc02307ebff33ec9862e094cef4cdd51cc5731ce29e0a3f230e7f71b8e1e39dfa6e2ca39da7ed218cce79312b66d32b31100af0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310080f0cfa7a46b2296170314a22206aa135b25545fc8bffa14bd69515af41e313492961fa16ad9b40998936312d5a56f89023100dd5e579ad7bb806942077cde12a665892f956e2c6b0d75f64539de1c89a29129ccd7efcbcc7dd1a20bbf99c62237fb570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100869eb82a19b5b4613d0fdf1527b8731d8a1dd47a5d52004dfe3ccb9049d6161e48dd7a112c583563374c81ab0ccea8f8023069e26bbe57c8864e87d09ab6fb8765ba2fb376bd33b953cccee56807c4a4cb47e932b95d97b70c61f5947a556b54dc250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023064453dea7357754c7b2d905e81cd98c0f06608000154fd1343c22d5efddf76b57e471f376d1996b51df7001516f5bc0002301846792db0202db235cae290c7ee561d6c3040d67162c87069b456ebd2fa3ad669937bb600f5ad0390d6314f42b5e8310302047c435bb5006730650230307d65137b60e8533771d52829cf123e8b3df8819adb4f0dc61e291131a461b0bf2d99b52ef31c8d7a4bf7882be34f9902310097bae2faa6298f8f48a0793d3c5aaa7dc4f4eae3465520a5584a131fafeafdeb7300f990936e3a0a32c92618d7a9890c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e0aafc74eeb2bcbdaa8a72364083c020aaada900262ea22490b29cb01fbb9530dc29a177731be0a9dfb1606585c9779d02302f44df782ce16638adb9a341ae6fb6b9b6447c974526b9461b9228639b5482bb06ef331d59c6fd589b38b0084bf8cf550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230303b9c7c0b2f87f2c2aeebdbd38788a9879eebfc8a120a5d8a43533057579d44f355d434092b2685d3f4bfe2c46940b0023100b8da43f266d226f699f4523db1f3e1256418e340604f89f7395f0034c388f3e8cb474a0e77dea824ddf8f66d757b0a780302047c435bb50067306502304165a9a10927dc47da4de7852ae3603104bbcc6529f5329a44d890e6097a845ebdd238881a7d2cc0ee8d7a77305cf00b02310095470eec509e400f87cf9a10190c5e0942766efe896354c06bcb0c212b213c6b9e9fa03834e49bce62efbed0e38daeb30302047c435bb500683066023100b51a03eb3573b04f1123c0cbfcfc30663c3bc7daad42ed4d00d2558b4a3803ef6c4ebfb689a30a983d3e45c4ddd29ca2023100adb58a8f6e49c8610605a6f919d7bfb5016be819eff11fac41e1b800988f2cd022cc2aa80e9e877de5efcce5dd5f11270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d2723289a4d8df263e73b01cb816a09a87a952f17547d1af4f730a4ed7cc350e3712926652beeb56aa24a034b17e1070023100eb1dcaa3933272c727dfde707c610067ef04b8dea48462f9e3c309caeaa6ff2033b583c886113f0e7073f5e8c9d1058f0302047c435bb500673065023100b3bad18c6bda17c1dd1c8115a5565d20bc8f5385730b516b40e3fdf0fefe7c32e2d20107244df215ef88c9a588fccb8202304bd709dee056391cab735353a7fe3f7588807f62fbc20c20259c8da21b39975a2945499f7e4c27b818b2ce02d8f680890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306b2ffe565d89b6fa1eb2cf2304b0f4dcdc30d86629b40935649a16d821f7bec2b222e029f34cf53de7fabcaa160621c30230069fce941b22a732e0d333309cefd2c52d913602f70aaafdf784870e8d80f066ed7f2502ec2a7e3e8f879d52cfb046040302047c435bb500673065023100d8a6ea7590030051fc44ca3f5c7245f819e3e2693abe623a74e72c185f3cc22b842e0402f2f117ed20400d0689784b3d0230379a25f38d729f0748a1b53ed04203bf2932eb3443e70323e42a843648d3c2eae2e38c77775908ea84f6147fef7d1a4b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303acaa1668e1f38e24f426df32736d754070736ac84197e1fce562094c888286ee1fae0e99525732593cc3d334662d53b023100ed611c7ef2990a241065a000368fd0e984322b509c15fcb79847d49f38c507a6b1d599920571f01697777e0f32dc2d7e0302047c435bb5006630640230773268d92ec13118e4858b7ab3e9453e187fcee1f6ac3a21409026f901e42782ac9a4457aec5122a17ed313437ce028302306845c621a2f9e4e35b924e0d8a10ea6b58fa9338f83632934d5af0837512484d526834017e2e5087673433e555a35d850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230617ab65d2d6745e5657eb6a1436dff885d788973776b3cb783a3a6d566b659f43469cb59dfe62601152848481f91057202304acd5b164ee3a7cdf6c185b0dd3af23617bb447ee00eb51a50027addd2b6eed8f5301b5984a61ea101fc83a988661b850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023079327acd54f460b8c00c58989b11740fdec13e5821996266187b7eff2d8401edfcc77f9f9779ab28d81e79a8de95982a023100b3ddc3250af1b9530ec1d3ab23e24766fae96d9af73a38237836d7d75fc812798d9d73f8bb478cdb9d6bfb209715b1160302047c435bb50067306502305621dbad56c558874df4205e7ed24e12e5ed205e69f55fef62913f5663e5c66832f7ca6c0562d55112bc012576ae88dc023100c7618ee98c9267e06e93e67280c94ba249b8c4c5665e01923dd46634e6c4e3143d8e14e3c49f84ad34971255e45ef0ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023067d1fee9c73bf4a66ae3f8fed33b2de3330e2bfb80eefe17bcf3c67b4ffe1d3fc0f43150ec212c9f925d980fb7c37b27023100dfd45b4ccaa6ad87ed2b3345ca993d1c7b469e462abe7902327a1e2b66752c08b5f9de3f88f2ea8c46e6f6bb3bec87b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009a4f78d58308a519d07c1e723986f338d0f377cd8ad7418e9cb3ce0e0b7e14953c6a838a01314cf008784d566577d34a02302db2a1c6708859f30e7a5261362052dc7bae43c0eab3c5610401fe5e459d2e495b57fe0273a744fa015511073134e1820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dbfd5199fcb13186ad0dca479c11e193954e9a47b7d1fc13a8620cabb7d9eb6ff8810a9c33b8077bf4f2aa8f131bf44b02306943d76fd32ce6bd7085d9684c426f72d7e641fbbf68dae60fb091f5c7b181b5c596226f73cfcdf05b19e71572546f180302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d5cce5f151451877a9a756eac7819f43eb1a6efa1d0bdcc6b6958b82c7a44939c54c1d6d337e43fdcc6150500f88b5af0230214f42eec062e4c63b0954f2bf86132779510f30f19644d8335fb0ca0755494c96f887755d7cc2fc59c4daad695af5740302047c435bb500673065023077fba3a143f0d72a55b6d2b2f957d7a34e4482d3748c49dd25653f95d31781d2d6454212f30d1e489d71f581a0aa109f023100bc9e38bfb42e87445b4e429f5ec1445397fa6e5cf00eb49573ce28b783f1d28f2cca8fce17caa60371477335ff7c0db80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302cf8129361c5310ffd476cea33bde2278977b4995c60611fbe3971eb4751a0b483b3f50bf1b0ca7530057afbc6a56450023064975f5ade919fedf7f7b94898864f68bb0d369bc2725ce97e4d8678f32dab7e65e5dbd0d1d606eaaf59dd1b9651a8180302047c435bb500683066023100b3ad79d561729db3a77e3e25f0c9c6cba05d594abbacd863d2c9811a761cf1cf492ad99aa379d0f8d0fe9966884e8f6c02310098d56b98d02eff49ab02e17a7b8aee7f64a9099efcb3c073a72e32947acfeca65cfbd7fd0fe6d82770831aa0b45e4cfe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049d926d2565bc5a136e80e414406f2ae5b63df691dc5f80856b65b80c3bb15ddbcf30a9b954691a7c2c38fc06863fcd5023100d61310c2ba89c028927bc72cd4edced0713c41551e12f446956073de60d312b4185fc6803f121e1a9e2758ebac5b36b80302047c435bb500683066023100857f72ac52fb0d04f9feaef9ad44723bdcdb617cfa5973ec2bc87e5c72715379a9237909e9cee084548e994c736394d8023100abbe59f0489f684f37e12f94eb2e2a571a5f5113870cc5b79f85e6394e3dfe992dc18886fe188336925c2de8b9cdf8f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023062d0759f2dec8e7d54696846908f4c7000d5862464e0543595646eb2d7fbf20d625b17a6d948e233a1d6cada9c569811023100b29fb911dd1e22d8f456e96e7d90aa308615b7f178438b847e074c7c8d1accf1775505cda726e0d7f7b46bd87324de740302047c435bb500663064023029a51cb7302f3ee632adb22e57f438c4aa01b1c1c44c4639d2415f904eba0d9caa45d6ab54b7b68c42e1a4b2ddee5a5402303a1789cd2a3b759828c510bfcb6fa844be8bb4cee6e06f316fbee75946b7c859dc62889e8254a5a8617aed2b184094a10302047c435bb500673065023100d984228a2ef40572d8c0405eb5eb12dc7bd6ce50076f71241a9ca4877000c7fbd92e4ea8f97a5af2a653c968cd0508840230143dfd32021bea8dc227875ca95b4e1cc94ee2bc87490a696cb1cc1b847e821eff263c5c1b0fc1e565290d35a766c79a0302047c435bb50066306402301b01cba3d4d33ede9ff0ae095a79cd0260bbe75fbc6f4b3d88c8c28004bb1458c7f1971bb9fdd990ebf29f85492ebc21023016ac6fab9e479ccb92bb2c516f540dc6ef8bdab15a0aad9852bfc44ccad231b6b3445c117f0be95dea55e7b10b41ae6c0302047c435bb5006630640230542ae0bbc06da928b034176a02be22ffe1c6e49c7c0a54b97e8ca1d3a9d109dee85e402ba4c87e10cdd027ddc597fbdd0230774c58f27b153ae2807b4302449f501a76f2023b17570285a4052c308df90149728aaeff3edacd256dde9cf4801c0b290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e414caff98a780a52d8abffb4002c553be69e91ed79299eea6c3819dc48cd242333b7001aaf143c96a2ea8b17c6cbebc023100f942f54fb48e3b9c0e9156426b1813d6c97e00284e617593f1d0ca7bf0c054fe3c6ec4c2e6001f8ad8ea82bc477ba1b10302047c435bb50067306502304503f1677bba097b067af629e0ae8f5914bf68e4fb548db658302d30e9c99ec19229f610cb9ee5398f2a8d6e3fc340bf023100ff81339ab75f5e1661d1fc0d23ca5ca3f617f92159eadaf7cfa9a9d632351e62dbe0d6cddee142eacdb4a23e1bc7108d0302047c435bb500683066023100ff5a2039f1e75f3fac7f0dd15835d00fdf6a05a58f6b379d710f2677b1d7f0ec855cb163904c7eb540021e602646b892023100e460f6dd12d58561841c8c773c39482cfd685ff103349d169c77e06fc9fbf1970dd556af470436caf199946ed6b867710302047c435bb500673065023100a29c6f234a9a730103cb26fcf48f2c530477e7cc1b1ed574dd5eb06ca02e441f339e4a60f1bcaf8f6fc6d11485f0d2340230498e2503bef8ea6c722447ef03879c51feb4042b55c06cf65d35859043062f7cb23682d6dcab49b2f4dd2d3fdde9525c0302047c435bb500683066023100dd9c2fcf3204eefa24237a93d8e26cdca31f7bfe662263c397f47a935ee109b170135f181acf9adb4f510503a74f19610231008065119698bd812f4b8f9d8431760850620027ab961fec3b2fc6d7e7ea3318b437d42c4758e7542fe8d69c65aba3e3b60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e78a787301426ffe7c598cf4e5c4331a18894c9d71c65d24ced14b2f698298250938ea1aa27cf43f369e02556f1eed20023100dfefbd545182de714976b0a00e3fc061b03c81b11bfb08f4f2054c8b9f867580bab58ba4c6d8183cbc75e1d2a64f6aae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009617dbf504d72e4902331ca5114728f51b86af282f0dc486992aac82e522f077aa263e629b7c57c9c8e754d2c5e686a402306b462063817d867b621edeebe9b0a8bdd2983beeafd801deb625c43554a7412a1615d90ff26cc469460045ca4f4939a50302047c435bb50066306402306068b978873dada93d3737fe9c93cc41a222f5e41ff1c994e446487bfd866b46cac3be474ba0ae00c105eb6bcf3b17d70230091b09243bd0741e10dd518dd8e96971b720f62f1eb552b854902eb6ba6bcd512881e849b077e02c5e434d05df417d5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310082996ca5b7be36965928fe4a46021c6f1f09568a239a7e017783611d5ff08e14508b7eb88c51e5c2a0870a2c01b8e936023100a213bb2f5f7a47bac61c800310525203f9722e26dc8441d24bf7a9d022e499b6de9870d56654153a25d7096258aa40050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c812bd3cdd31818503b225acaecb91e693766da8c21616338626a2f4c563816d68869cb85af0515cf910eeda6b2f18350230066f0f144af9595b6b2b17c2deddf4dfb57190aa7cc1a1f0b23e8e04429d7bc27ba46c445dc424fe2b3b01b33bf76ec50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fd350f20c1e2ce855faba9ad196ae6eb004de2100418f89e28be1fd88f843c8d6760a152736c3bceb8709564dde30a1c023040200c5b870a72c5a279e256239fba91b0f1469cfe967bd193d5b499e6b38ee31a716dfc5eda00f3cd70e52354b5e67b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230050713416c6ea6347d558fdb259bb1aad1b01668cdef856a521b7a19613d85675f2aa8c17dd048995bbbe6a4f02a3cd3023100adb1e1aa27e762c8707ccca67210cdcbf187141bc88f5b43d3273ab75b0d759dda504a76b42adf417d6f835579a4a9e80302047c435bb500683066023100e54ab2cb3cce804c1179f8ae59058211529aa9ca299e85f6e48eeecf282a8c00d12d28ddf86e233a56f5e9514446676d023100ae2aa8f4ea9dee0c53eec2a46b89fe3e482aa5248eff62782445c27374ba32fbaed17828326b6de2bb2ef8acf17599060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307d8e9c95084c9bf5ac6f62dc538ad9713340400eef1ae64f688d7015b7161e04e8295ddd8c416a6a4baf021dd5bc864e02310090886fb7b9f5faa12d0c2cc9e67eac97ffbd2cf4579ee9c4fb7d8509663e30b21c2ea6b9ca9a68dcf132fadbbfae88940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023024292a0a79ca2ae8d69d9a29de24b1e2f3fb09c40c4e8a57eeea1184c48289b09dedf3cf1a7dafe6c484f0f6ecd020d602304f8d3b7b3acb7a408678100b8ead8da2610820bffa8ff6325b1e57dc44df12a730b151da406575a83276653b82e667190302047c435bb500683066023100e8e2902778513af2aff67049306be86a7380943df31dfb216971941fcab8d746338893aa78e0e0b80241baac42be1ee4023100ec62392aeaf924ffd124cf63b2e8ec648853ee08563edab7cae98483e7d51327332ab50d7c7578a3ac44cc5c25d22ce00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c6eae067c3cfcb37daa875eb444f607fc3692600076c45d7b3b24b410080beb53e24e0ee49db594855327d98d90bd89c023100eb1c7fe9311b923a621f15c6bcbd31ee8498f15b20c124bd05abd6242c48c4104d30b4a011926828b4a543f30b54d7990302047c435bb5006630640230683626027cab7680a43e6a826e314d7b57b574190feaa5530119792eb861925542ea257bedcc7a5ccd011bb709ee100b0230626735e68e5b4f9caee73ea6bc4440ab129235da083eab5c042aa1eae620e9c312cd2e98fb2a666dfc5f81f25122a5be0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023066e844b48b258e5c215be6141c49f1d4a0670ed47bdd1df2858314c0e2380507b27124ebfd7350c1d287a8ed030a1f7f023047b8b5ce7f828bbd5e722d1e3af527a6b020dd4b1453b1fd070bfccd4a364b0f3f0cd78b803320cc8834cbfe63490dcc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310095e4e67b9a3039751c29d4dec66f89b8a7425fac2b0b7f52331bc33ed183de5c0d0cfd4db40490f1211739b0068d054102307ce91be0e490de11738fadbdb1f2708a301b389f44566a0152d834d29f1c9ad5beaf628fc61e3c01598c87cf715623890302047c435bb500683066023100ba1d826059ea0f83f2ed60aaa28edcc29b941f4c235594bc50fa9027b92c9f68a2fc33cb1404577cd7af59e0468991e4023100916145429f2eae0007e72f3c6eb0fd0b375b2b862c25f924a6476330a57797ffa5ef07a6cddbfee1926c669c8eebbb970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300852c7f643e8e82f9f48581735e1caaad39b3d419885b1ac1b392580dfc247c12899551563666e14fedb772ab880ab17023100e167ac04c7cb83a67c5c2d695edbecd9c4b72c8777d4ecda272322e47a792d13d3c9ea8b0a45389f302f3dd170576b2e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6ee3711b0802db47eceba9138b3664cac63b6cf6c3128ccf15b8cea1ffd1b0082f87ce588b59bb0704764b687d6e39402302bb33c8f602e190d47274a6f663316cb119640b1d06eaba9fc469fa53e579954824c007c897b525b5e793cfc2b789bbc0302047c435bb50066306402302d558f027d69bf1035c4caf165249dae23528322a6642dfe8d451a0ad89f6c081db783ea38ff37dd394796caba3264c002305bd13ba34fdd67d0d7fd3295d674c26862acbfba425a235af60856bddc852983cd7ec11c85f6c454a1824f4cb258f3920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230439f365d6112fbf0d8803e1d246c8216be0e73b9e05965255c5a4d36e68bb9293607709645118063d393a74a4f08af850230551ca09f0bacca10846d07895cc4218315c00b0410385a856682ea3b1a451d4e38cc8e4741a83a269aa9b044624e3a8e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301258741abe3197ae628b2ff9233057bd0a2f62768e89cd19114ac0de8977245c1db278a25c8c0d47f5326f235936608a023100811e8de5ea726a8e0da657b09df007ec913a77caf30a74c35dfe81e1bcbb78ac0051bd0122eb16042aae46ccc4f402b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ac07767266118b89f83cba3c55672b3dc324b58fe5716408da0e87e8619754628b5f4f5dfddfb03c4bf32406a3fc341b023100daee9b3cf2bc80b2995bec158a93da6bcb488c4ce8486095129a8b7be30b47b1851ae1b3048e8f0ff320574c62eb3cc30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230195d87b013491e77bb3bae72d1e3ad7663d7b6e43b48935f38ce8040d65c381623365beee45c345ed12f07feba3ebef402301c2e1a329d1360964f6ffac326a4ba0e9e55ec65c3c84d3ca320a2e5c905cd2089cd3e3b46b52b70276883dfd959b5a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fd02daa1383a273a068dd3f36d5512a1fd98ef38a1ed1b9d58ef03951512dcfbdfef7d93ef45682f8538617a7239bb77023100d5278b843e7f785e0514a81cafe29b026d5ee5f454b4c0de9e84e562bbdc89abd5e410928a2482eb99a9e3a48200db000302047c435bb5006630640230162ac5dd78ff211b5f15c2522f5c7caece1710a93272c0d63e994817e44c2403b5dceb77592c0b6ddcf1a83c020fd414023030ccc175be25854e68861e5a4323c57a5116cd52bde692f04bf7fdd45ffe7827a0f1d4fd0dec61d949adc0eb048c03ce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023040d5df59e62a4cfc4739ea4bdb8999a00ba1b752ee77891fc6d97caa5c9eb3558219e2786230d6a18ceed23e2f111ae8023100f4ff4d96e77d7043b79269c487835dcf9fb6d9731a1fa97ff8ebbefbee4d452087baffb51d5dbffb2f3fa4bdecf3d3960302047c435bb500673065023060df547cb774b4e8eb3798ba7f0d861b6f28c153f98a85171647cd58272af78919842c9e0d1f950b5e18f33966015bdc023100d6c2c6af4f611bb45b7b2fccc0d973273e2204966ab980a8d6e58bd00b05f77747d1a57245cb282e8f2cd276cf59369b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023078431c9ba22caa853e4b2b6e604459470d4bf6eb074a1e909c724302737452f8ecb30176fd156ada0c87914ca28552b802307b40a7610b41907952c02973df066e38007ff9c2cf93824fa0de9d57794aa7c1431c7598ecda67deb741a361380051e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c042fd915ff427f8816b31377f548bced9c31f8ec9118fc4747f29240c2cd1d5ddb575914a4ebc4a4083dfb11a044d0002301537a9c5e6cb2458864647771a2fbccaf0f52b11191511de5cf664607a149cf5b4b89ad2808d9a39fbbc77b3762c12220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230579bf1b4b4cba1713cee1dd789fd06ff27551a86fa632043a1a55cbbdd8a084de0f0bccef9354c93288ef7b0f1a7b4a90230260373eb8d67f5a329e09961587e72bf826a6c6d9eb84020569697d228abba4e9168d468be1468b960f15fe405d575fe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023045860a0aed3280153e9465d66504416ba0d0b6bdc652431163530c1426605f2ecf52630010691d0d69172861ddf757c502303fcc92a46af791aa31ea41c78899c04c9ed6a80449bd273e1956fca74b939c7d5029f3c0a98d56e51cc405868d3b66410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b334a7f517f2a4b816325185dc69d49fb03ea64fdefb174b7f33d86cc58d61bdb37b653a5a359bd53012ae8e84dadcc02302e7025a7ab61901cc6f95b9d08387037e046175a168d889c23d023bf67d2dc70cedc1497521c223c49022513656540c40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fdde0fa033700a16b7b95f6b43d2f63e307e05b23af483036bd00beeb6fce24528587fc249f48f03785b654731b6f93b0231009ddf0f26c5d88faa6133e740097f9f117637ffa60474fee3459b51d3176ee3aeb7a9416c171b41f164b20236ba750ecb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023057c1110932bc3950e790ffc3d2e8ea02bc5199bb6b3372bab37dc38a70d7b8d281aa171aa081bee78e6e06320272f8fa023100ccc4be492ca50d8cfdaded19fa4aef15b2811e6b0d05baa6cf4693beec81f7259535dc3af0f46906b126c734b8c4e55e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b598a7afe2fb4606052403a9d61fceec223912212d436f490ba15c0d6df72fb042f37bada3927574512b8a8c2890adba0231009c9fa0e69adbdd7e3a23e4fe444710a52ea24f5498dacbcc38d1a27d1883b4472cc82ba0d96d2c456a23fc220b9647b80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023057cdd843359d503f6db7067bfa037ddbb2e6d74ecd2013d24919b6fa9756e659a691b1ea08f508cc428730346e146c740231009297a80c90920b183bbf2f7b8da3adb847734d528385c5cde89ec3dc7d6c2e3aadda56be79d66d9c0fa62a1d50208e1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307cc69a48748807ae8a5c9fe450fd14406c9df1731c808a12b2aa49a24b4fced7667dcbeb217c4f879e6ce87b2e31b3430231009bc255a47540c76e4102f4839e00bc9002d64fe0e7b43d2629d8101caef951f7099e079423b4417d98f48130b88e91180302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f479e150fba83dbaa8b0b46c58a0a1787fc9be62a22b7265835583410d6473ac649437563937ba2539c8b76a9a37a8320230510e81d9d2dbfb407105643f5958329c7cc228ebfc90a6f2e70afda177f9a21b8136efda114897f9d294fafb25f1146b0302047c435bb500663064023001c0aa9bd864a1e2d80f3840ec9ac3c2446039227d6011556ae705e933d18bb93694485a384bb4675d9aef4abad43fc102305865e1ee4242e6f48f84bf7f5b65a0f35b4e6fc8a75f094176b453e90cee5dc19e96b2840f7b207f4708fc48e6d466b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230507d13da63d01de30a94fff75a06aad361c7cbf64ecba184a973af76a76afafe704589f75d3ca2d27dc7eeabad00c03002300f3674e9c304f5fb723a331c36c69b8121fb6a2c0bd0b30de046188b4bc5df7aed1c9893861508d34b3bb7e5bf460bff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023017ebb304d8fd706e8990fdbda72a5815aba519acb050c2e4e514efc97430fc2dd71f468bd9b0af266602dd729fa718310230028c5ee6afd22c0864d796aa1642e0215f5a2da3f5dd61785510395b3e02ec31856daad39eee357c7485bee8dee28c110302047c435bb5006730650231009d7e0029d5294b2e50b75fae865f25731a00c784359b68a4c7a2e0f161044f784de54ece49360dfaac3afa64550a37630230191adc333c4c95be59deedfd32c3ebb804c6b01c3e1480a280cbf276d02aa9d28e3237ce60cc934f78801e3c3785eec30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305bf5d80f8744176dce8f5aafcdc5e25c7b5329c5fa975bf5f09a08cb5cbd0d7cc1a838c5c1b1649c55360e7559a52713023074f85ae4bfad3d45f83c77de11d510e87756115ef75836b80860acf0fde5383d2ef51f03d8a7a31e0550badda60057060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305f18bd6eadc80e18f21c156c6981650837c78635f6b8c9a6a9998ae092db21c9c2a9355943dad6aa9b2f991db3be3d3a023100cd27cf0cd34bd1c3bc055c706ed2e5d74d6f6b2fa8d92a00e3970b58bfa0569b80941ef0708a400456c56be5e27c754e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008066492544d5fa77eafb0a77f5de254707522d58dbe546608e9ceba1d3be856d6f1af19383116a61f87b737437d1c0c4023100d3843c02ed6b7c38b2698556a4ea37ea687d999945f0e616a5f95f2b26411493d0cfa0f0eabb3b534d5dc5c0938470910302047c435bb500683066023100f349f8d6775c7a96553fb7336666ce4eeed2b05b3a88567b42cc88ea683f2461c18fbfba7db1ee18af1f5ce6645cd5cd023100a206a8d709bca355f5b885a6e4edee0554b4fd99c0c70e71d606a02b33b45565f2ec0ee1626c7791f5b710d49b0c9f070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b74caa31dbb95c2401d8e98b21046a07eea471c56d2a6229ac0f84b0d56ed4bcdf7490fd4e16b425489ce37afef90fcc02310099669852bb6d057022ba4c42dcbaa27aff77af5cf1cc7212e8c6794180e1771e6cae2fe418cba5ac670a21d11433553e0302047c435bb500663064023005a24974a5249297baa91fae561fd8f41b53e40c3e56e4d9ce86f2f59e4f0fd722af717cb35190ee0a47e508e82f4a69023065756736966cc61aa219af3bc191da4799cf499be8fc2e128b42baf0d9097ac48ef256ceba5a48cce10fd8e7e3d8a3dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d227c3fd479b50c62c7ca42abc60ee5e04567f0922070e1b150953f22f1342eaaa543e2a005c151fee5d77620b09272b02307da802758829924dad9d6157c3a307924257c83e83c11c168ee053174ce87e0f69773f582ba546d1a471853aa16b8e210302047c435bb500683066023100ca7dff26c71052667523ac237a0c3c266ce2cbc41075361140b97c57ef3f6bca6b8e35d32deac9410fb835af11462679023100abba820cb67ac05e4cca1092b328651b78478a3e3be7dc8891956822ad6f0d452cfba383fbff02ba4304ad6d5eb8cfae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023059ee1e6922ebd7baaa702195cc3510589fc007da2b343e1780ac55ca83b03aef968bdfb78fd8708bae9d66a2a3c165770230085c01a29437e31506d6332496c4f6f2c60b86a5bd8f582fad0be9051362f44425b12c9ede13a05a9eaf563312fe70c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd4b2d7f2a18aa14249c1dec47676f0cc61078c4cd45280f264a90694c676d4a95041574494cc4c4f5e33858f25cc89d023074dfe752ac3df55a64f667114160e66652377362dd4d4e1f56de3c63e5e1d3fe5c5665ec046854d5b1e82a0d5659f2e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fc4fce979db26a35fd4f251df829ccced5e8b7eb70b669d2d3ca18b1b9c2a955a3e75e7ea499833870836617bb906bea02301063bed427a552ae2d5c737d19478cbf6e4ba0e1705d37da4afdf6b77eae16c6f388f2f3c698a87b0622cf3f7df3f4b10302047c435bb500673065023100f3be89e76356de243fd6a7f8b572169047c4dec6340a21c10c0c39235753c8581ab46d7a426406220b23d515520b379002302504409872ddfbcdf23f23dab6a1dbe9e216b12f1a3d02280310ca5dbc1475a08a9507a0a2d6ecab5dd10155136bed280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008b7bac8204802bacb2b62c86c8b455eef7be103e2e113219d62a5826ab7810df1405c578fd6c4f09c6158f06e8d12bab02301a12223380444682330b10ca19e7897f95408c65997d8ebed6c9336ff114d3f8eb8603870b0d8590acab91d4e22067550302047c435bb5006730650230543c18632c83df1e743db9bc0add6e49b9f1a5e95315ad56f34cfd5c6d0fe891dd235154d402a96c2c74688d7c1f6cc0023100fa9a771f34df5e3f78a9c5748dd974116443e3bf69f3ca742a5c1df1028c525871cfbb3e84b1b64ef19a2f441d8c39520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009861921a541c9cb4c4d51ba683a9fcd818a1a8be80f4ea33086b05bab6c1798e99b099d36922a247472f19c094eaabdc023009d9c45329489dce3683c83ddcaf494dfaeee613588366c2fe276ffe8bc37f71b087449b778d79ddb8c3cb011639c6e90302047c435bb500673065023001ecabe30f6cfc20d2b7a2a902e24df56228d97c523940a461136534db1ccf770583ea52b1ecc550d88be7eb71d3b920023100c20aa9350dcb501b01706a079069d0438b3a24af7779c615f281c8d3547faccd85a5cbacaea5eac710fbaf2fccb0fd280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fa6cfd52f444bb6df5b5d14cb2fb74a84f301bdcc6d26f4c52b6a49a938ac79f8e3b4903e7346d1af83e75185c7e5137023100da3da13353a7df57d61c224fc32c69b9e57906e14c5459259e9d3dec462bd7345aebc769aa4173c1f2526f0e517c2c9f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e9156ffda0410e3554c183daaf7277cd099c361f9910438760e7866c51971c4df8c0bec099c5bb4fc51c02925e85318902307979ebdfe6d26e5e9a5d77b89282ea3d331701029a523e58cdb088535c837d85c1b80832f31b62a287de04f1f98b70040302047c435bb500673065023006116656b0c533600862f97954bb9548011aa41bf691bbdd28d4703f15f488313594bb2b669889d160197c449fa834f7023100e36816b122298f86cca7bdb4ec8f659f63ab8465211a86762c94cc8cf53522d3ed2947627e95b1ed2416c77fe6a3704b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e0044f1b492672da8c9374c693bbd6a3cb07ce9bccd71dbc8bdcbe7e3df1f257b86160356824383fb5f067fd6fb0ea4a0230066df4a12470862a70d01219983e50628e450abad96f73ddbf64f2f1240ff27c69fca52e8d0e8ee50ad82d7ac775113b0302047c435bb500683066023100dc6042a2a9254e9044749cb61bc06565593722d3c13a8c96bd9cc568d8683d85b9af78f264d7ca7425e594eca0e89f040231009f7e314450726ea8d939cfd756d2dce619bedd57f29a04662165c166c1ae3bf55abe4b185fa09f5912f596f17b5646a60302047c435bb50066306402302976d4b7d98024a21d8b49a0b3a38197bca32db10950be6ad3a57ac9bd8a7b6f956a70bb5a18d90ffa5795ba5a1f752002303440b27a4e7a6c22c0b22283da10566aca114dd57a73f9dfe427fe2beaf080554b12142f923b8125002c0b6337de03210302047c435bb50066306402303a3fa579f03e73a8d32739752b483f97a43a18d440063cebe0ce3af1714b6aaa6bb6b6534964a6c8148ec49e5e024e3c023047e669af46b4a122c85fee4a901af88c6d1f1330e2e4e3c18b9d2c2477fdcb381545f0e4475b69b880d0dc32fb0241860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c7b8798ea3ea45d5975e50936d22e5ad3e8251f2a7d55c61876f9582d49d7b79fcb708c547e7b8146535775b50f37980023100cc8484d654280c58bcc0c23349b0eff9cf4f703969d36b6bca369c01e9eb70cae480a18386d0c5dfa645d10577778e7d0302047c435bb500663064023002e929d60fd984c7ceef72f5487aeb38806c299479daaa8b48ca08a8668862b5603ebb0eb4fa23867e0bf30a4c6e10dc02307211ca35956828e15213ebb6cf91117b25796931709165ff18ba423cc1998f1e4b9d29806231bd096a7f23d32d95e6d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ee5e796f85b0e11637fa928c840ad267921f0e5a3fe08a759ee527de7d4c2dab83dbe1143167cacc9825cc90b574c9f4023100d66537d4b45ed7c25e31f1a34ccc3cc482955c58cc669273f40a396366abe9e65f09126eeb03c8d2d1b407f5054a28ba0302047c435bb500663064023022658fb041de0eecec31fb0348db8aaf96a97a8750ea5be0d4444c501c6141cb7a411811bc53ceedd4c4840a7441708a023024978885ceb16cdb0488be0025f48e41e39c41ed93148a897dbfd0d8e708eabe61b7ba69ca8f247c06a8ad9ddc93e8ce0302047c435bb500683066023100c9b30f042dbe8b63fc182317c03c39548af6da56f74552716bb383b81375330540cfb8ebcb12d59bda3dbc315564a804023100afa4e84b343acd0edcf969dec7413bf8482c0b0a9af80da1ba486ea571dbacf69fc9861d5cc8b9c90b11a3e9ee8b68580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008cbc8ec9e810a1f92f31a579cc66488f08fdbf99a78fd0585dc23a702fe0a5d71b4668191af38878f4495d7151b09481023002d4b0b4d3f91fac21f08aaffbb372e897c8289bb04e4a490ca6264f4c6e196cfdf5c30a15ece66cd04a7a7530e8ff990302047c435bb5006630640230530cfdb3b2efdbadd0e0d89aa5bca48e561f0e999122c2548627b12f9b730219cd9f68c6334154b4f3d04dcc4c7b201702300cd7296efd83d6dbe3eaa30d7be410a9162a236274029d6ec05e7844d4658d9a0217294e41f45cb539016fd94c63996d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023066ee3334e5b3c709d9abc46e633551c9a1c1bf4e8604aef40a50df3419fa981049e5d6a1a0fb4a97351552c01a7b8e17023100cc219b743569909c967cb7f3dbc7811dcfddcfc6727b802f1200ad64803a2f43aac42538e5747c5e158dabff48cd87630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c14169d154bbaf9b1eda6eab415d3200fd45f9eaf8b8b418abaa6720e90b9e027da66ea19fa3447232d42a44e9953829023100b2bc19df7070adaa84dadb9328898fd5d687f10f177e68ac58d180e20d400e90316cd00a200f4baa82b7356cd71c48960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303a8a5fb2f7ed2bc4f6e8063e3a5d0b0e6a96b8316e6ca717bf4b68080e2968a852c882b5f651079daf6233159f467f85023100dca91bcfb60e4038da8a8a3501201e989d7503a69583cb0c8d0a7a2d0d2a6a90894ba507bcdfacaa9a567729e0b026760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f44ba2f6b5b34d671297dc54b90fadeb4d76a76b4691a9529142faf38fb086fcff7305e7f291a5c3a61fd9a24209fcc2023007d0b6a75e7285071965a4d53a26fe47fc92b4ad68728abc2db2e762c590909957f6674c12db75e285053a21f722c0aa0302047c435bb50066306402301001af099429173c4b744f29f7f7d7c3ed6950df14663e7221c78bb0081ef6aaf67e05e47b6c2b88a6b9470fc878f2530230351499641073a178a5427eab1b9b8e1b6b4f55e3679fbb9f25301c8bde07288bf7403a8c4de7eb1dd76c81173b85f24e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023071174cc28181dc5a1202f9fcf08fd1755e6042c0d0b9be20e27e3f34faabab586a6d54d0757178858beb93f521dbe70802300e3e7d47182c2f12921efa83c2cf7ff2580a3508edec48b9d6d8d99d2746866b79ae49303f01d827ff4b61312002cb980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304d4b22c84c6281b805d8dfb510ff67fad462c93d8c46737209509830343889aa8f84f1e1c2f473b52535f7c9fd2d4b8902310089823b642aaeb11693048915023292d30a8d3a8a15df3c8ee34aa01ba9d5dff03e9c76f9b4dc9f68127363aa3c32af630302047c435bb500673065023100c22982a76cdf3336ae9ee12f098d21911b9f8df78b4071614ab8c8596520728383398c80999055dad66df3486d59d9b80230307b97c7907d32db598f9c261e4aeb32561665f15f22fe18f778e55f4b48a82626e14e30f2d2ae1fd8167dc9a0e076f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302e5ab4603fae3c937a175c6ce27e443bcc862e4df6787915c1f03d48140f034a1d08ec9b6e134421b520e97a076dfc5102306e9eae67e382e3709027ab7e475601f69bdc40c83d961d177d6cca23feb6d4f31e98cdb2c5ccfd8ba081bcdac0a355fa0302047c435bb500673065023044d98fb9a1374cdc435b7dbfab36f2fe95d9a48c0d7dbdc303f79890c7cbd6f4564154cee8b0d9dce12d30a63eea2fe4023100886f9ca993c291af8a0af04988c292275831814af3c9d95ac5744bcfcd29f20ff3d969f43698f62041c05ad9b7c466420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100db16c3f1f0589f14e2d7b837e9cc6e2374c430c5fa611c72bd7844d475c8c4d940fc07fe603f7e43a5eb42ac9e56c542023100f0dcaabae591ab8e453423fc857547fd338f70b645d5f04bcb3530b52249058f6cedf55aecbb40f334c93b49a429b5bc0302047c435bb500683066023100fb0c5bc0ebf7b2bfc7b9098cfba1e220b5438ec7cce207904766050ad7666e3e5f8f7bdca290e9806ca252b9582520df0231009aa302abff6a23b007687ed285968bbdb7cdf0d12bc608a805d7accb30a554a975109b0bbcd3d18f38054506764f78ab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023075c4ebbaefc24e0413320783947b0d8d8b5fa0cc2e26ec11eca85b644a937e2865fda4a32603b88a6c200700d5196fde0230767897bc6820878fbe7a416f5d09437baaa6919408128085e3f46457c60e330f5d6843e4126b946aec12c5131df233150302047c435bb500663064023047e8babbc4c4f7a2c09b9fc8ab7285f9c0bceb83687bd667ba496e9c468ae5c8d302279e0fb3390100eb72dd5a608707023069d0f25a339b2b2aafa7d6aee390d8c41b4f89452af1371a392da7dcdd275ef4b61e0007008bf2f4b46e4dcbe77778380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310083a720e467032af231a8dd6fde3e66c41b2d661603a7e4e256f19de97080b8951b8bfdf92f3cae01e06722ea6b6b5afc023021ff6cd6493b38c4490d46c80b527915f447618a51bc611e03eb1c680472f40fe723b4c3868d74595a8c585f586604a40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300333e8a47950c329c13a93b1bf4685cef93b3ff7aa08caeec2d1bdbd30a96cb4e58fb3a49937b3315f1f0563c0dbf98102301e8aa65364d326706329a23fb636c8c0aa4ce7f3c663eeb5289217625d57d8e1cf06be5d65f414ca1bfec61c561e9bb30302047c435bb500673065023002dceb1b003d68e2ff152782a41052e1738fde0f6d9cfa1b5d5d6ce397e0bbbce79826f19b3d5fb579f87b853c5285b702310084fe410e746956d1af7384fec3febb17013bd9e8ca849c2b5fe49d68690068ffd10be0c275ea6b21be056e36040816fa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023002d6bb1fb04154b792ae3fb9778953551e7acb847de7c55a3af7020091f1ba3edbad5a2c847b2e437dc61a38ac30b7df0230021e5c24896e8e90abaff43eb4a21979af77b988210be6ad2234eebf42adbec2e594b8cef9211cc4db764900060448870302047c435bb500673065023100d9735f72adb529704ce65d8cfb103f7d2086685f465b9ffa68ab9b9a9870e5a66c140808ea3ef55407d6f4a5209b746302306709af9ed61a6ed47ba2765fea39817a43ef1780d3daa33ce14740662dcafb0ae942424a178d34f30ed79f4bb8c6c6be0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f9ec35c0a09bbc9de7d8755e4aeb852cfb850590e7d162067ce2aed938d37d79133946fb302d62a051d5826421c40cb102304a6005d91d5fb470f56f2c7fed12338b2d9ff190a347173889613548a617450d7b2408a2c63136a5b13c60d26fd8d3ae0302047c435bb5006630640230376841c725ec3236b6553600fb7b98b38a6216adb2b09ac05e8921fcafab0c156df0dd5bb0228870e9c1379d5240d2a90230581f2f5e1d066b86e82836654086432e3ddb476f98f9c32614b0a0e7a00fd163ecff7ed5f88d61629cfeb0744ab752970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c10978a17e443227e8bafa93e90d58f917cb30ba1408d4d1f8bcfb79fd4d58c1edc50066f4a2837db9b357126c2b3e0a023100e44515c0489546cd12a2165f3f49c934f9f920351f2a95e985e4bbb12a88728b4410409c42a07e9107a35bce97e531210302047c435bb500683066023100c9d314e410e6bffd771eaaaed5faa4348b44c104282e83df5c402278af207750966aae244c17a898372d6d4a3fdad55b023100dffeadecf46c7a51842e4b23853d57e1b8727267d9aa5713a27704bc46a029005ff165c01ce48f8ded609b76acdf2e360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302b420e567b46f4f90af5c8d75bf4cb3be090db57726ce1b06480467a65099d327b71b761fdd960883d88ead01fb08acc023100b0483f6735788c281c61d045f644f2a16e019bee90e6c55085f113354807d317a545e9270860af8451af00bf4bc6908b0302047c435bb500673065023100ada39cf2b1d4660e3fded3bdfa3d87641ed60edb4283011fcba6208656847ef8b04bd7733b6e31ea2b876facd1115db50230528dae71d7327c180a6e9a400469f3acb95325d141af5a3f44ee44fcbe58613971fc5db26dc6d5c37fbc5137252799840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100afce7c3b54a26f78858c2c19f3e1ec318882ca051c3f62e1a09dd4682320ab57ba73bd26e40c1bc4d7ca7cca696fb20302305e54c1880d3b818a221da910a07968e36857da8f6f50c64f593054f7bf69ff8b20aba15a6223e694430ea17013e2a20d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023045f484ce883bd52b4020f476d3044e5287c1d60220be63138d7fbea761fa97368055108b00453767adec8ad2738040220231008e20681831f90faa1ce1da3dc29877e8c95e54d646cfd404df8f18b93e5887c89a406ed40cc1f43281f2f4a502673acf0302047c435bb5006730650231009a8fb8854694012dcdbce575886d9b001a43763f174de2bf626c905ce6a726fc130c77312a8be75683e61eb8b27606c30230495efc68dd06102dffe16d11876b69ce7df1a89719215c75f0608c810e7a23eda6a4a0b8586827fd10f6be2b2fc930ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d9e41f51cafd55e98849a585cc2f78fcc50a21608bed6ef8fc08421a946746a22870d1c7f830d972eb2de5526bb0ff902300d9137c4ea72ef949bc0be3831f0fdbbe958f43c7645f37b8c5daeb48b219f5a7dd6e508b35c62b72fa1f80ac5c66bc00302047c435bb500673065023100b7dbc97c524bb8386b5e87ec8d64e69d73316ad1efb2a872b41030d46768b562124e54249122bfa7876a47495ebc72a802300595e96d824c1928e7803ce33263cf388bcb99f28c2f7beacf7403109409184e1b025c1586c7661f05883be1bf12f3fe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303e1823d5e927307779626fde928344d4d9883bb25d87d065b3988fc1f4681148f57297246c9200d68179c92ce751c973023100e53e7171a0f2d50b84db68cddf64728699047266e5283c8a5f9591a51cbfd02dced64b1782c41b3c440e3cb82670e7c00302047c435bb500673065023100d798f428188961970171ba6687db748e9fb20949f0cfc46852d47a3f3eaa2bdb24e267c2b7083ca5bc9f1009d6f4b1ef023015d8532b64e6d2a14c374a17ffcf2fc7328b805a3bd72b796b2f98dc0b2ad6cacf5b04058e94bb1db146f17633b7799d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301465295b66437fe4db927bd4b7e1b5f5948d8ae6e4f919880db20713ec4b661e928ed05ba60553821d39a3a5096632b0023100fba028bedb10e1655b6c75d8f736da1af869019d9f4cfb1d7c7a4e882846a3804985cd544578484a96d03de496b5d2aa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304bb095eb5a3537531e124980bc1de37a758ef31c89bd82bdd65fb5edde3658877795e7a6b7ae3db48911a8bec9552c71023100905da0bc83c7a0dc5e926638b4690ad2966d8e4af8739272e8b4e816e3eb5d7c902fe5d2e6a04a4a0de3aaee9accc96a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060d75aed5a14e2a78672b254c9fd6a2da7bf038b0d547e0e98308fcce29213bc382d641efda19b2104e4b630da80d8ac023100dec3aa72421fa7b0ab8bfed5058c08f829f2351416219d03b53d9f93402ed4a75e3025703c747c0b2b1c5fc6057384170302047c435bb500673065023100ef0c39436c868ee93ddaf9abd64e20699d5209277ebac7813dd128d32fd1920d4a4f12bdf25269c36f833f2ebe99621c023055a8cd53f48f79c74f4fa9ce448671e661a130850fc4af7a6ff9145e0e472f73594ff46adc057be32791bd4fdb9f5ded0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304a5a2369b09a68997c4bdc7db936bdf205afb026c6a2bc9479a1d3bb51a998ff81aa74897586a6901891eaa3ac520830023100ab19ae598aab80e2c6750230d65be2c9cac2d3dc6131b7f29d5a0a96c3bd514a1e9eefd14682159918cfcfbaf6f8ee020302047c435bb5006630640230106cb6e64b2cfd5365d42467d6a78262d0d26bf2bcfe7380fc1894a4a4ffc1e56d2318ea414ae721817624b6c1c9950602307c21c063ead2f2ff69f75ba7ba76d97288d5de3fe88e2819c42bf88f2fea32b7c1be0412a74ee01fe8aacdfd8950070a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d4679bb0529442b4b47dca5c6305832c746eda193bfebfb03febca927fb39f5e3d231b7b6645ceae39507a71251c7802023070de433335386231effe104a6a33284d20a8b0d1c64f3ea90ec19f7ab8c5f5dbae43db398bfcc5904f436dba881e1ff60302047c435bb500673065023100e25b91128090a2ec225e6cffed710754d01f1bf07d2506e612fec296b3db47a52c155032904697b5d82cdaa22b9017ce02301fcb09297761e6aac693537dec896e9a5409733abdc807e6fdd69d75a969f5f2016a80764a01e1ca0acbe44073015f880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008007ff66a0b995905352a01c34b83deca6db6420e30b0168faf4b880b01431d1ded845c7b83c88d571a6230bea198b83023100b354f2a0e46ba785973bc3df59d16e253406840ac0df50995dd9107aa17aea84430c2489e228a114c1555b41f439a7010302047c435bb50067306502304d561adbfb1c3639d5dc17851c7a986d2d3aa318c610fdaddfb366b9af77e8641d940b95e32975d4761cea6e447462df023100a86e2b057d105bb5ffbc6af6d4515f52947161890daa8689b8d251cfefbd44273c3c9f674608a99b93efe6b28cb50f1a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c04042b2ba9a1259e5c154b0c3030018a455f828df95b1e4912fdb59ded2026b04ef3836307a3c1f411ba3b3412c593b023100b5163ab79443d2ba8c299fc7745f161548ad62f6fd7e4490d40be0a0bb31099d148ac7f9ead8b0af712735da9e7a859c0302047c435bb5006730650231008a8af9ac04b702c4ca201031b5eab08b9279fbe3ee99d69428c9c619e4839c05695318928a767e1e2ad429ec530f960402302fd9616a6227a63ec5a31e99f2d33d6ee389d54747a0492bd4e549978f922257ab3989c11be80d8f95ddd3237b1184f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d6df4148d02150377ce636ea74dd8c8cfdf54adae97b7c2142ee743128e876508ac2988119562ed375971188c2139a3c023100b4f62652e2d44ef99e64390856d26934f2a09f37708af55e0e39039507b78bad3ef98ad78e50ed26ffa1142f3bf90b3f0302047c435bb50066306402306ce92ef77ab1664bedcd6e1db9889013210ee785a2abd78d5f3b00a9041da773c514f1b4657e1f952ad98d6f10379d1d023048afb22f537ba887add6fc90eb6de109904cf40a9365634ca2b682bbda6b67e462c41b258e3aed1ac30cf52d3b9ad08f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100978121742785f6ac91a10378408389b5c2c0357fdd5e2a5f967002a59c13ab522a4a444c07a46b0ffa90ab50cd461ff602310093bf009f3086b0970b93965ff70bd261eb8ca2242bcd8426b544a1b8fd33bf5b96a6f63c144968efced8bf6ad06f82c10302047c435bb50067306502304996d0c039375498319d2fd25ca3635dbb085fea73cbf18f995523399521a65347a707f50e51c59a88671e36208db535023100ad213bb01d4e4ce8fea897c668aa7dab90cc0d22e384dcfd1dd9c6a1b4691147c8b74996f81a455aca4061eaca637f930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b5d3f1857f891bc89a3f363d44e35ed6d403869506423e8cffaa6e43b1042cde72b07fb258f734a498ed80dbb6df4d4102303bec5ec64606fba900f42e95e5f5d463d0691836663c64651c38b3ee2821955c3f23684fe1541d558e6bacda42b100b60302047c435bb50067306502301e53309f8979de69f711502e34bab93d6274cecdab61e478c8feaaee1f59c7fb8343cdd9948c2b759eb8eb43f2a7457a023100f6d72577109d4fc0f9fdea8e473d0761aa0193f9560ef4940042a950ab4d3ce656f327aff505e10db505e041fb3309da0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306f0538237a57b9ba67c4ccd5add4b647730e04f13e184f8c65b0aacbe5100a6b35eda3908e3cb9df7574a600933f3dd602302cb552c9114fad62fd0f05008caea0a9a0906169ed8e47121eeae0e0b7ac02455e1d133dfe3be0f119acc260173f23d80302047c435bb500683066023100d1d4f8b7f19c42609915424b081df96416da55f0b3f8e3db3493985a381686ccfb6d62355d4c243ea27664c0ddfcd0a50231008182ee87be1daac99431fed3bf7bad1c30720f20d3900e0bddeb7fb25b9b5e3ccf7e09fb3f23b56f152387b2423ee56b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a7b23c120ec59f32e77e4e0a82f893d3a0739c0f3066ef5db27250759f3270f09ae0385a60d44979016b094ba46dd606023100b743679e40c8583681a652f5e75b6eb761d76d569ead208c110191eb68e251844d1f978c4773e46a6eeb246f1095f6de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023046249681a2759e3ec24e2f3af1bf05b7bec9f216e5dbb27197c73c1570a8d454e0dd64bbac9b27c993d63e25217e6f8e023040cabfb97dfa561241483907f9751486191558e9347215cdfd73f5c8c1f60ddc6a7831ba802f9e6aa20523b3faf3d71a0302047c435bb500683066023100cc8e033c887fb4e22707f2910d3e520e6aace06a79542f4247f46be9d0bcdf1c70bc4b4cb46fb0f6fe8c06e85efe0546023100d45528a0574405cc97234c4be569e41c6f0f9002e6c91c343ef0712c4786488fb243428b09796b324ffdb126af3e1fd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bc2e226c08b849aa92adbfe532af773418534b29a3f54ea0025cf913368ee19f7c1bf54cc1451f08501db28d0ad33fe002310080cca8da79afcd91e85e40c334840b89c787cd3f61775621cf6813b75aee99e7acade7123886ea119404d4e3951be8090302047c435bb500673065023100de3b3cd6ce6d28c76df755baf51477b9fd20a51e243a5690a3546e872c6b3011f92dbab2433e2b9b50f9d6fd4c82880702307e2f1d76a0cc0e81359c593ff75ad5cdd2846093293d13fc525ced1b05f53b580df4b8f1ad75d899470a8694528cd1ac0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008a5f3cb271ef76a5d0d3750ac79af057407de7fe24d31278188d46e520035767b553b225c26e6fdb4a11d79225e48a38023035a54a18bd215aaf3d8fd2765a5399b3f4216faaefa75097fa65fc51167050f006b50a9a7657c0b4bb75a582596a0d130302047c435bb500663064023004d673b847ed025519e470f29e5e263030c844db454dcf163e5ba797c3cd4871dca3edae58f49f1c854241498932251d02304daa3018302e13101748c668b9742ea9a5553a0728a7743e3e3298191f17363fb801d3a9fa047ddd680e2fc94a11cdc90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230665e995534758a6debf8ac3e8db910e696eefe5f91d1476bca5fd1180381724e5603c8c0d7c248c3e3cda925d3c8ed5e02302db8c052d1fbf95ed06549096968b73ecab3ee55b5c17f1b91c4977c94d6a04ac01322ef7be3d5acdc24749b393711a40302047c435bb5006730650230539e547022f04bf98c68f6cce0592880a9bfd5b86e44c5757be2388eee2e5b7a32753599781c4620058adf98d028c9d1023100d174703bb2397af120546cddb80c9667635464660d1bd471af50e4a42c381be8dcc786d22c55f3fa6d94121893f4892a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fa6829a45af8dc54d22de12d983fd4d7ef0105d7f2dfc16fb0a1d8f6493265f37c99b5d306eb29b2d34b35ec4aa8c4d00230303dc6f878b53f67700f4ad6f7be290e9ee4dfd927d6f230c99da9609dbf4286866868480767c45eb4d892b6e00c1dad0302047c435bb500673065023100c1692862580ac8f11e218ddcaed573c682866df8ff101527822e9e71be423d374304158b63ae7a10905db3b7ee7ab2b10230491a3c643198564f349ef62bbb40c2da05cdb897685c96097592112b07878105f50b232cdaa2413cad1f5c708ad954650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300af28bad77c4d4c201df03ec812560e61fb2a14e988165cbf133a66dc6b9f4ba1da50a82b4ab81d8f10199c1bc7d410c02310094f77c27ba72a29031dc63124cf4d980921574d188110e61098a7269ed3cd39a929263a382b4124ec50d646cb21a8b260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009112b4f428faa665624be7945fdaae0b215760b428f45aa5043e3f2d1b9a26b47c9e9c7468baf51824236f7e4ad3f247023100f87721cd4e6134573cb40e5c8c922013904c62bdcce13f0baf895327f705e069c04cbda9163705f033a509d87312c5b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305db95b7586b7cb94d733de30dd5382044076e9ed98a32058848608d994c026d25cfcbc7e9900140e00abe2632cefb0a602303f6fd67f24c84328e45650a9667f13704819cc7a62a5e37aae154d62baa97e8e219275df306e2a82eca375a477291fc20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230013bb2dfa27ceea69d06c8b6d1e18b708e27a7b0216d101ff2838f1562c1cab629cae10940910b4945ea9cdffa23de9a02310096d4011aea496f67b169b40878540e42fe159a32352aa29e9585213a111d79ecea0bc61145a833c306225d480630de0b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023028e36470ba699525891510c5000767b58bf9afa3aa3b7a80fcacca6bc1f2bfb0465b30b223dbd197bc85c71af51a50fd023044e02a8f7bf38511a80cec1ee3021a9e497e3b5f87625874bab85a895fe69b74ad93cea778c8d19edc8cbd13cf223ca40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100961271dc22e86cd0ef36a38e413a395eda1011dd2fcc1218c165bcea74c1c1615c9f910221c3e69e9d1a163c6b667a85023017c826ee8dba996485117868f747a0b3ca2ae30a7929def4a99e0b0fde90b6ddd7185fc97554852cc6fda247b1ee75720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300bc02508b05225d8e4de5c07b7744864c29e5a268b99df4a0b3a2834eec233fa6b793db1527e2d975e3fc20af0bb9ba402300b4b0403d98c2c737cbbb0148446424ed9586a80cced797baf9cf52d33291447c6afff02cea1c4a0e8606305d8c1f9930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300502f5cd181d6fa66bf4866adc50cc94a125d175166f68eef0380a90a6dd158cf53f89ed9af6a3c7eda6ca8de230b0f5023025dd7a4a96e64bc6acfbb74a3a788055256c17cca9cecd4bee65206ea24b14a68ba42f332ba978f373cca1420d28d6f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303498b0f09f4c39bff506709f07f5ea375b6780c205e802651ed52506d09ad791a88d32cbd3f9cd060f60ea04eef64756023100fac33be730da4511b8f17d4d5dcf7d4aabbe0c38c243535744a1f23aaae14001dfb9fe19fc96adca16d2e67f02ef4dac0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301a72ee48c5eb0e0f480aa82e57407fdfecc775ff9862f0b10adcbf4e63c24fcac3c85e5a681b834405257b1936b359ba023063ad3da90fe04cdf34500dbede12d7f7098655603ede5733f4386de8597d4b9811d98790e215132d5561a11ec29fc3460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f302cc9b11a12784b092821313a44ccc07937f4b4962494be92a9bff664bbde5eaefeba6202f6ca1ed828cb015989c0c02310098b61670f1cca31c757ab2657a6c7bd18cd3719a20631dbefcb791b3e023b7565a2815986cfceb84721631bc4508836b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f5a8f6fede68215f002bfa1139e7fbf4982b7a30287d844796bc921fc47b7130dd1b8b2720e449d15b8483b76835fa97023100f462726ae3e1d4e6cb94225d9a9685fab7a54d40076e685e49b717276930fc08f7124c874a8433ec398995aaef4a62420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c65244293fd3a3544fbebd6922af6cf6e3b8df0af9ddf15aa6f276a65ff4f7210c4ef05ea11a1882fd3c8090f97e7fc30230763366d66ca8378dac124a8bc66e9a0b5c0394e1c9fd052e031cb15180b24973a832e0aec61cc026b238a769cdb61b540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310086b2e22b8078d5799db57a8e1b87696364cd526bb24efaa3d848c0d07873801f3112dabcaf6d13cc624574ef1218705702302f547eb08b91dcb228eb2309fd1bff18e944d6a90aea99350216eb69fe453206e5d37ee20357cd8eb11d402dd657a0980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023062485c4af0777e7c941528daa712b6c03c4d853f811f8342296100e3b671fda55406d67353f3077c0af04fbbc54a38ba023100a4257a9ef5eeb0de4de3b062f555bc0d654c69a7b3f5174ce1f95517354d6ad6d2796790286b8b209dba65dd0bfe27680302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301e5ad05dde1c675ba1a38de3cb0d865a94ea081e71b7e84d8ab7050269e397e7c4f17f167a4d33c9dbb150eb0e96cfef02301af360d331d9a5095f1ad50d9b4c5f203af811e2c5ecf0f7f15fc4a8d7b63c74b293495e12674f99e9e0cfb3776bccd20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b56c9ae472fb67caa6df992e6a0bdb06c8a750d9bbdd57f577e4fd7aee9340bfa273bf4ef592965923b657d1deb5263f023100cec686032f599da1049ef7f14a23595877e979371a0c2142815f8a10028a8d53bf7443469520879c12dfb5544d94791f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b6ea011791f9d473531f1ac3c342217e2259749965a4bcdbe61fa9262e056b0dda750d89e39595a6744a4b396ca36e73023067716e40503ab6e9cf3a5b856fe9e5784b3a17f4c11929499b16b2bf227bdd62a4d7e944bf62b7fd2e11c002e45978a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eee2000ade979c3ceda12768e80b9e14eac0a6329a2e82207183ccd4a7eba50afc920c2e86ca1c416f517d7f6b81e8e7023100c640e6c66b36c038e3a0aac01df6c9942f3478fffcba75d5e2ca8b3cd9dab633f5e37dd3f777357b623da2d15f5073c40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b52e31bce47c4cb99cfb6292e4176ad55108ea09de84b5eecc08f2e6be057b47f6a1df4ac9ea349ee2f0e18ebbf45eec02302ca729d324b54e2d75c997cf6d1e24cf325c7c09f133fd8f4f3d1c8036470ccf3b7f92f28b101cfc36e185a6da1d27ee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306e3993fe03d0f18b2bc957eb9045995196ea5e27e2634842de0462e8eb8675c2e2bca1a14690f648f05517445069839c023100c9f072d1251e3c1336887254c1befabcf566de8d27f643a6c725aaf3cca90e2194625de1f7cf6c5f03c3b947fab017bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230266711f4178816f88e611adfa4985e0585111fdf78e22d07ee7a056371cde122479b7be6aded0ef1c788336516d77227023100c4fb9dc91ccc59874db7582428303ebeace2680d275730e1e96736d0d983c84a17feeba220abadb2754e725b8d3c0a190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009bf879eda653ce874f7c14ca84cac152c4a6852c0ad1351621aec8ca844ef7b6267e5934fec1d7cadc3f83e93fb69581023100a48b2f4f8b035a65a59caa0b7796141d2fda991e223deb8befdcfde43a0bedfa25fff6e43044fc723dc797094f91b3d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301502c3941a5e3422ad1b59ebdaa2e8c204eeee235bc1a90048e81d9fcebda13a924336b537edf437323a6bb090af5bde02303adafc7e267873fb46723e6cd04cf9c56e26e1598306a005f39c32610f287213ea7c93d9eb9e3a31a5289dc44986f36b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb8fdaecb5acf8c594820f9e1abdcd46001ae9a0a8f49956c5133ed2327585086b2745be346c4f8e7210ba719fd8934a02305b5f744f2fd61b5472ae56d102783ad86305fbf13029f552deeaf31442fa35605e9cf5b9cb9e3c0b84fa69cf0783d5660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230334c293229febbe31739e39ed03d9f8950cee5d6d5b140863b614bdb14ea928178c84ce61091f0e9a79f5bf1057c4a50023051801d9e9b50bd8ee8b92e8b1f324ab35ab7892f666aa25b77dfeb08921f3fcd3aa5768a6cb97852c05234323d9339ac0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a544d632156a7feb2b2bb41ed2756cb7182fbb67380450db611efe616b7df914038826294391c702e1575d6ab170f146023100fcf3b461f3306cbd446119e9aafdfc38f11251d0fda39089684162e39d267177cf4ffcb1c94f2701ed74a2099aac88980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a807c89426a613489079a16cb391001aec7dda5726339edd9068426347d058fbb048338f44b6b0f9fcb9a67d5658bfa80230782ba0e6c755df2c17de9274898471f667437ccdad5d57b2793ce3a9cdd72e06a91dac00faa842cff805812a85b0acca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd29fadedfd9e2ead8cf473def898aad6b9af2397d8f2d432117fc1c622a259e168724a209f7cee66479b5ae67ccf8e1023006ffa4841fb54a9601f89c27f5b7d8efcbbf949909e44156bf21d72ef2eb84d9dbd0b9afcdb27e5ea88e5143cddff9c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a72d85fe68271527d45026d622018044f1ccd6fb2ba5af95b6a7aa5ca0be4e8afe830731c38953dfbbd01cfd3e9bf1e002307ea1ccd41d048f61e73ae8d6908ab8acb2c8de3a5b9be18cb95887ba63d74cddb60eb3f6ccbf6e8b40ae8d5bce9cb7d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a6f0d7f4a6ab1af04c0c6502f3129dec0503b915cf9a0ed229cb9d0275d379e6de3070789983cd0b15e4a26e0eeb1cc023007eae9cd4fb0cdc54093765962742e3a148c8621e5d702f3c04939176afb3d141583bf12479e083140a3152d1c0306fe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305fe3195294077cd6335d0263adf67e43d905d6157808ae4dee6ce3005a38bdc7debaaeb92ab09c80c58880b7148c42b3023100af1c51902125c1cd4da08509f269ea3bfb17a414a467af16a20ea464175f44c01bbc0506e8ececcf08d60c6248bb33500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301bed6ba3105cba53332e6cab98b256c59184dff941518ac88bec237e2ebc60e4cbc07483bdb05b7da3afd12c49258d20023100bca70d019c7517679a4a177327492d8215df89caf8e27b1a0bfc460b29418b786393cf5c088b8dab423c8fde20b826dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023023b8b3fb39b88401598275b2450657ec457b0a8d4bf0727cc3d37249093dbc5e400e372341c37b844ed915e34bc1dbde0231008bcf7c67733884a2c0a937c641f2ea349b7e13a41fe2ff5fe7ed6ede83f2dc75c572e24bdf29cbca0704e6cc58220efc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d07e4cbc8ade9b9d17b469bbb6f0407de4b668e02e1695142fc16c4e2b418c56b2ec9c54b1dfd50adad318fcccfe7ca502306d821afbfe4e786ddd39cbdc6a2356a61f80cb186555790631966641e0000c156a032f6def466ed21b24dafaa2bdd8a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ac544212768f9e4f46d29fc2244e1a68bfcaf730cc03740e875028ec031f62e9c3d907a5ba39e879004c30110daf7c91023100bd37fb691ab7dc55e334754286574bdcfdababbb3aaa5062ce304dcee41043a1030c6917ecc79c16c32077841e2416a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c5e9940991022a0a981d687576559222aba2a787b468ce09380a5e830c6efd682b710fb5cc05c57a884a0edb52fcc73b023100b0514e45b10edad3186682021841f65347f1211215a975aefb5e324bc8c6ab69fc0e4b565761e2ca1ed9ca110d26ddb00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230476293550567a4221504ca246b207504b1d07f311923a132c8d3f91bb6ecd76883875ed46d1dfd8c87d48e3e22a2972302303b02138c375a06fc48362abcda916e1abdf4c968673db4e494cb61c6004b354f8c0644c05b28164ca7aa85682d54c4cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009ddbfadd4ffa20e83790a0ebcb47252f1eca478f95d72c5a2c8951a3eb47579d9e0bfc948a852566eaa27b508e4a53b6023100e6637c1482c404fcd9b3e965c6513fff52d66d82c76d7d291436745b323b8f7382cf423a1115f80fd85de7193751f19e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023057d369227de725706a608bc9870ce6a5ce1ccc19a8878f5b88a65ad4cf9b1a7ec93bc05de7c48dc7008e0511f84837b6023100a65fa472c72b93c48b06b8916f9737f769785cb95a5889899a4c205c7672db76c011cbf70e4c1e9ec361c39236b327fb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eff169d35647ed8d8271a996c1d5f34ba1d814ddfc89712bd198a887c14bb18db4b1aafccd93afba4b5f3259ba7260c8023100f026083d1d5979ec1504209f1a060945d203f819f9c4c44740a40b67c5be54b1f6763cd02b560d88e0d41059d4931f170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300efb75aa3a224674152402f4cb70451b93cb446208665dc1a47d03fa76e5d908487c65384842e40aafab1aeb5fe67ec00230306a7438eee92462c4dc53096f590809292df8950beab269c5207606f1b26bcf59a006236b8998c10d8798920aae0d590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307148361216fc85966c02628b10d74307c5d20be4186956b04cb4daf246c20bd006e67644e7fd530222e198314706f1e10230431efd2ff4359c0739277b801b022afd855fb88b380598bff8cc629e360d81b307918c8626983012241cb83691e7bead0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c1b6c27acdecd24c292ee7b5d1f19ac0e33b85d52383464bcb641bec6dc9ab145f151ac43dcd93bd839cb6f91f1826e202306f095be28444956152b93f27cdd1ea7ebc8bee633943313fcefac7d64fb1eca07ca23e327b3953f374085d7656c05d360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023001b6fef29c4f0c4813bac022d9dab92f3f97c277a13e489a65d83441d0c2faeddc49968f36d17a3ac59e1c8cd88dc74c023100b94426b5ef01e549a5f49621affff7b21698bc05f0307c5b5fb3dc50f42ad97928b7c1d0ca212d75aa85ee687d33ab730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a3fc69b055858e5622ec3117492de91e45724055fca07ec880204579af554023815ff31d90e39487448beaca3535f8b5023100d97b569dc5e7e18e5d0d4ecabe7089a801d5fd7c17674aa9a1cef6ab9505acb8c2d75bd9fbb9760e7138b142a090184b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023031ec9aab094c8d807cbc59e7d0bb5cf49e0817d50566726d225e6fc558dce3f156ada1c491d350152e245c6fbad04ae802307e1ba444162ec26864db5346873ee9c0fd461340fac4632415d212cb7aef9ca830c63e74acd67088eacd4e5a8059a5fb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a838cf8d79c728add1b028477ecc23b3705409612c87612bf300b97e1039008511de1f0949ac72bde75b94cbe2fc9c27023072d026ef150564e4cedae62355a7bbff68b631ae57d40b859171f1e171747312900be248d296b0a09b35455c1fecec650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310080c3fe0f5673d479efdeb4ecaf968a2a9d267ddf5a945eefe126d578275402415c0ab34d041b673a06a21390a8cfac710230657c8933f415f41b662bc4a858bdb77a83dc602cb95813fc619c0c2ea087ffdb6943708adb20d3fa0f2c34b8a6c0d4a60302047c435bb500673065023032ccace07b766fe195378654b51c04d5f1c5108e0476902722260f5df0416a469ea0aee9d36805e11cb89e43caddbd280231008a493763ce52a3066274d5190a0adbf0e04d1b3fbfa42131e875acea288a08f75f48e61ca4623374267ab6679c0d85570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023011802a6200b1de0b5dddd22a99b321500d4744bd2d83d6d145d1b3b337b6455d219c3621f226a40399fd5f4f8ad25df402305913739bd946e283ce5f16387cc5edf27ccde3e311d8e15bbe6de898a193da669d64c5d301f2cd000ea9b2c4f4babd750302047c435bb5006830660231009325e04271861668cdd9012b7efe46f938c6bb6f870118af91aed91434aa813ddd05a351e2398c599a314b5bf76eccd5023100a9b2dfc30707300693c57a7d2b21a226516924d1d39b0f977a5e05c8da6546b16a040fd75441e6de0dccf21b523aefd20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100db49855e84c98ce04f72cf226f374570ac88deb620c2f50af4c46f0e2d996f5a134de0c08ece2da00ef2828d1dc642a602306761cb08c3bed3c62b7550d3061c49f6d040e554af9e82cf241c3b489f17ce83352b5fee65ad2314c0abbafcce4faea30302047c435bb500673065023100f54e89c7c75441cc5073f412d0b5bbbc82ce0f4869219ad6f8bdc93303bf530a7507adfcd1f33cfd56e47fbeb662de94023046b383c163ff3904fb92c97a3f21d715f4d2055ed505adcb7d7266b84bc24aef8c428ff6279b6bb2b00348ccb6294a790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a90d6ed8b9eb3af115c8c0636ff582616e46fe43d9f15fad48c920f2bb784acc722da421e8951128973c7eec1344b688023100c7ab6ec865f6862f68a8b717351389f104af2636b419960d46b721f41a9bbd26768b0469fec8f432bf676c08c80b08ed0302047c435bb500683066023100a31e94a4a8754c80cab34a7d7ac5e573ffeebceaa8f54647a25a1b15c7d575cf94e45045bd4c1afe8dd0c49dc1e874a20231009050f096043c80174ac9744e4a1d9ba138e77fe9db42c83f3fc18a5d61f439a6cfd3090193c1e7a638e0e496843a695c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301ba0c5e8d2385e7963e4ee5780e7c950f68ab655d3695f5eda049ef65998a808d1048ea198a38e1ed08220205313b81c02310091c25171835741a95dfdb0d48c4a0acb9821be36dcd78b19fba0275454f7fbd89a90fd6c34f098c9b532d78730c116d40302047c435bb500673065023043b3e3f97ed5110e5f9e9671be3d8c7e43a3be2978584208c6e4628d04ead3363ac20c3762e6fc01187920f010fb2110023100f939191beb057b1332dc1f655d198bcebc64906288abe65665d4d3aac42972503640d8d1969a82f85767bf4acd6b4baf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ace0700e2a24461579375e97be6b31a5a9ddf2a5842124ab3165c76b8f80d454bed29e5bebbe995a6d28e62717147651023100c609784e0e372187cdc587c0a3aa0dfb1b8b41b49e8f6bfc4cfa63d525284a736790f6211065b73062f92fc57b8df1840302047c435bb500673065023046d1fcdfac4ed2f70de53bad4d0c0fc2f94b2f1ad285c4b387c6832d08c3d0144f0309aa26aebd67e2105f629ad4b264023100a5c42014715801a756d6a45c261e00cefd44f236cc6d0c4783745c2a35845c61b35b68052fd054959b4b7a9abd292d160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a81b78a471514de7006727b66af60e3f53baa4030233c4df19e04ccca90bbfbb314c1e4d3d562fdb052bedc2a1474b8802306ccac2cb1ec94d3948450e38a71da0b3516dcf0cd830e1f3fbd5ae9efe2603ab53038d37e5af21848ec802afa40b7b7c0302047c435bb5006730650230300031bb2b0e71784332409f66a0aa8c19d2471616bea02150f28c82768775b65b91b66994e63d9b2ea790aab6e995e9023100abfc18dd4e6ed2c148b241f4c2fd03778677064140c8b56dad9bf2399523765de278711931309a817402776c8788e83a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230306b42ebd566effdee74e8a3067e005bbdbe93955deba4498f366d2ecd1d312db482251d878568b211cbff4a4e5b77bf023066bd5e1abcd451cdcd1ff8efc719551c9ac26d5bb3775aafa50c1011685091026efb9e64ba1a2a1c5d6f579ffda45e1b0302047c435bb50066306402307cc756261e3716b85bf4e8acb67edd88c53bea9a0a70dd4093806dc4af1ab1ce795917e074a4019cd05c8cba64acec4a02301e12e244093174232e5a4b536147bfd0af9d63229cc389cb149dd781b662c3806b30ed2bcd920c10af17d96299e864960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300a4c02d02c39248371e0ec3e72d2f3901c9f717a7750d887ac39dad422706c224e059005324fbda32a8a7213d4c3e3f4023100802d34fc10604c40fc3932f3667dd69082a0605cbacbfdf7ec52d1c19d5d2839d38a58339ed714e4a564cc1f502d0fb20302047c435bb5006730650230738e8b984aa92feb3df98cdc96f52ca4912625eeac4ffb3b52b9672a7aee87ae6e8545eb06ce8b922c002dd431ec86aa023100aa1f6bc8aee7c141a28ff2faa91ac5403dea55d805bf9c6a572bbc2917f30903d2e876c0c50345cb7ad63141a615ddd30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304f637fd572a5c138464b653bbbcb90e1e033762109397197353e26347a0730aad2ef6cfd5b115e55de6a07a5e4f2cdbf0230773bc4a4503189f2ba2fd55f0d99b15f3fe2cf4ffdcbaa68330e2a3dff3e0a1eb741020bb14bf426f60d7e823a14f6d50302047c435bb50066306402303a82c06e3013a453c2b2ecabf6440576b8e2a8ddaf3ff11ee2e86a450dd37c6fbc40e0730573cead7f345fcbe3eea16502306e99728b20a69fe257f2dee20d976e53a1688332acc00beb8a9752990856c6451db4caaf7f248d318e577f86b4206ac60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ebf459740f104912ba36f2bd74a39a9b7514531edb5191d99e57d89804f3151b8d023773028bb656c300c8502b4fb7850231009fb85928d53546400b9a767f59b86be6eeacd49b592527b4816347b43187a227121d6b0414fba9f7c27daddcb5dc98640302047c435bb500673065023070a59dc38cead63d1ab0cb3277de76e051d03f21ba360328228792ea9db994cafb66822ef86858a83905b250cb6458420231008e94411a4ace57f1ff4dddfb564808baa2f90b32360af79e74b6e4419bcf77f5a9e620f3a17e3ff0adad5d047ac758730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009894ef381ded0ab6c4ffdad34c1463934392e5529d6c5d954d785b92d538d6faef8923a87accef17bf3634be0548435023100b3a6d2492fa7b5327d51ce014113155643428ddd95c7750a81b5edce3ad38cccbd4fff7ac30b99efda3036e97e1628130302047c435bb5006830660231008f7a418ba79e289edcdaf64759b0bc0d9e4c3fcac6920ae0238fdbbc1e4a30dfe5789e85a0da81aa95a0ed42508cf19f023100ffa30aa29cebec053dc74bfd3195c8a7982509dfa72126bcd64da9b6bac08c4325bee6e99d9b47047169ff4baca0cc050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086f0b0c0c1851490354dc45a6a34f364642f5d4d5557aaa900bb1ec576ac0fdc3a96c3f3b53338057d7696817189d1710231009b5125ac31ff9caa9c43a663f39464a47fc6943004c00bae9d25a431676b7891e4ae1b212831d6102e1f7e0d542782c20302047c435bb5006730650230264549cde97c6bad68a4eb8a4a3a063745f7a5a8bd5b2caff9f0d31bc61eac7b290acc61addaf11a989fc805984c586d023100d9f5d1c7e72f9b5cb5dd780aada8e8434b23c83419541c0c9abbae1b9aec75b7519685c1f8030a3bd8e22c1c806f760b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300b95060f5deb07dff0a76afeebf32e0061663599404f56e540ef7f8322e0d78171ed47df49d0dd5ee8b61267356b943f023018d8cd9141ee8a0753c7044537e6e76371ce17603ec4fca359948e8171dea90d5078e928ba209fa522410009efd7cf440302047c435bb500663064023025e890dcc5d3b82993f1b493653ccc3cdefbcbeda623aad6850614ccadb0d69199cfe3ad70997dabe33087aa2c515fc602302d4276a0c13b0f6ee46711cc6a08715dad818310a24f55d2dab42fc1484c71855947d56fd2fd91f5d45157febaba7f0c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e7b73687a885f819f28a4b52d32a1270a1c17a7b01b5d50e7af89f40fd5fee4020e450ea06f406d54c33eeaaedbb8a8a023044d21e780239fe2dd344c3b2d4255ec47d4156af88cf80088810bf1cf1f396e377b1fa275a0a757eb0939691ff87e31f0302047c435bb500683066023100f60269bce991285af5ee050b897cf964035d3e9f36a978921cc60f58f77721cad03bab4be1349c02f3dda89f7060702002310082b1236f49a10997ae2034fe625c623f02400c709c8fa0383aeb5f68d906cb13589c5ffb3ebecf2ecac69f25b3d1d0930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a198e44ebc54cd4ece8021a8578e535fa0722274198f6986414001546deb89edaecd185ed56b7f2101c4980bfe03cf4402303f0b1cbd2b493aa8f3a55eb386a71f791e438721e3bfc59000a72363c74896b36a03d3f5589fc1fcdce479891a059b310302047c435bb500673065023100ba0ed9076731e1dc4c5d049cbeb41c3a402938786f6d1f3e9f1e7aa050f4a22920d1a1b22951f63bbc1be956cff7e5b102306986db28d1f6671c8e7510295d0c9f84116adf2c69a6b4297bea6ebbb648f6a6caf08d52390aae9ec8f6a1c2bd1aad7a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fd821410e0237d39a353f157bcdc36e5ea67b2df280cb32792c3228b72558e3121dfd98e58faaec015af1c9768b6b396023100d9d58db834bcb11867e6e9aa1641a8cd6519e88f8a59bdcb2fa0fd186cf8a8ce21372ed2f1d864155bf92caa1ef134f50302047c435bb5006730650231009d3ab974ea6155b78959e2ed90848c2d25b43c58012ba9ad72e6d6616b81e7059066557e1edb7ed2516e9bbc65274a11023009a13f37adb9d433c3f97ab367f1b78a70c55af710e0e07c2f6d0a4ae3c312c0fa1d20159c584e80fb5192861bd6781a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301f27e0313ed8a3db9bdf5e900becb248e6609eb9e5245ae05e9e49f9169c39f480b920e8a783f0bb9b7e19cc32d3572b02310094dfe77290b4676ad3378252f3aa90cd9ec6d4b6f5b4fca913c04db17f69628222e64deec32e1589c7fa0a601fa018930302047c435bb500673065023100d31824b1d08c4f1440ad26f1980be9edeb43fc3b16cc71c15e5ad6bd9e02eb83cd4014f7848a0671537f0a4bc75e219202305162f488e89108452aa16c1cfbd1f5ecfb8a73bfe8436e36a5c4e74333a397c8528899fb1a1b6a5099823d1ca814fc150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304b041c1a1eddbf33b9da5850f213f4adf2ee028fd507fe8f2ca6ebe50ded5f94d4d10d888b7f5bf0cba5259ac437b1c202306a9409673612fca3dd9bfa66c75e2d38fc4b0d7bf9abe539825c7d8b05b146b16e60039dd45bf7f78138db289bf613b30302047c435bb5006630640230529d1d55a3d30f922326116f257baef78b071b37bfbe0b8857e7733eaceb154f5c4ce6d505a12b7f911f1b7d8ac4956a0230008b99347cffefc4cdce6ebc044bf96dd2bc486933c42795c32a77a929ae7baf46bdea01ca975c83a723c2b763491cc50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100830b454c0c398ca04a30597754b383b95592c543b246ea1d01edd652470f190793699b3f49aa3240234c9158b6d828d2023100902f1331391bdf760f56ec4ded0f7503b12161bff882791b2e1e8a9095f2ce51c5be99b755f2e398a52eae392cdd992d0302047c435bb50067306502300ca245ea765bea84f94a2acb1386e6957bda149fef8d9ed181ae3d3795cf3f9097857665bb5cd8f4c78a344427a2cb2c023100f5c7b1c18cf23100af0323a51fb886d55d517bf8e61a49a9acac118798d7761a32bbef9c039bfc89c931d155096ab85c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301f9c99f4a2d10fc5841a071ade73e72d3e7b5e19ed8d6a2fe050fa8f0558f0d1433c45bf01983cf3244a8fa26ff42fd7023100efe7c649c14814de7e20531022b26b2c0f0b13eebe82e8f9c1b0b5ed0377dd16bc46fceca8971a280cde366027b849880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304a9ce83456750ce6d38793452c39e9c8e99fc9ee388be46ab7c4e48ca7ad17f2265c1460ffee01788b446c273938c5ec02302bd60edc740cebcfbd9e1b2ee34fd985baa4d068b339510facd1d7767c050a1e6900147182b6b910b9900bf9d3c3e2cf0302047c435bb500673065023100a5a90399395c8a1036f608ce95100454606672269a6522cf2500443797509eb3706bcb35d602f8f87342f88330186ef50230394fe7f006a07bb8d1135837e7dce7da2ce9a9072e7010f597ba0650157d4162ead9eef221e0e3223f001c33b82ef70f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307903e4f74c124fbd873cbc6a00206a1ffc98d63bedbfca77676d376d0123e5a587bc342c346335c9b1405d6a2388d796023100b24919c1af97edf2b5c956a4675f48b0deb112cac3941764f88381f1ff35d05ca465ea176dd0a13921632add8c2866040302047c435bb500673065023000af47aefb18c96a979ab6bdd03080360bb6dc415c0f55df9ac2be9f135bc67f6ece4730eceb1f250b52c7464085888b023100cefad83216a8e0b7cfd8c77dc4f60f6586c054861ed87496f216095389460aeebedfd86d412701cf9c5969528998668f0302047c435bb50067306502302db2231c3c82e02d07d63a8abdd3507056dd10929e2c0e686a1495449425823792950ed972039f1682363f67458038cb023100cec91b90add8279f7f18f8ec8efb6816971b494ea6dea7368199ccbc7c0a97f0a4597a9628fa4292957971b3af7f68450302047c435bb50067306502302d2b8502ba614c86ac642e8d34ab460d9c11e6a7b3132246885d805fbee94936aafafa96768cf5003948065b576a5eb8023100c740ab19042ccfffc21c58caaeeb5b0b3d9b16894c9d73f70a8c1412e5e813aa6cf452a7599133582f443b1bd3a109fa0302047c435bb5006730650230516cc185b8d8ab31a42b2e0abcb779c1aec3ddcbaaf74194a6fc3fe42b7a73ad09962d2c1fb6f5af41f4badead6bd25b023100d3eb1043cdc84034a6550f0613f5aa18fcb7d3dbc0308721ba8e0b32955582b20b6717bb18170c1c73dc5f2745339e560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008046e213822bd0abc2fb2f9a8acafde9bc8c857bf2352a05d98b8d385197c78aa544c06701f0d12a1a54fee5c534a92d023100bb59af33f09fb2087be3262b9915b68e33c8170c59f03002cef696557415b56c06bbaa39d7d338a8803df2120c897dba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e4492a7386d650102104468f701da61a86130910907743c9bd223d74f24dbc118ebef12875ee1babd5defbbb6d3aeaf602300a5418ebc0819300e0630e2ed4b97ab92240b48e68b2532253563a0e72b5c4808c3664ec1ff0b30cc29d98ac63378d110302047c435bb50067306502300ce477b4f9ea51c378376240e054cc46f8654fd3c67d11b4a49320c477deb24ca79b975a6f7a8f215b913d50c2ced40d02310093be981eac25d5771d639202ce6e411f746f8e5a0f1d6037cfafa675e5046fbe0f76541d1b4ab0c23a4b3446fe3572ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ae9d6b8f8c1da9633b0760493c98074dde71bf2d241ccd028a8554e20daa83a1fc366b6c9f44f2c13ea964d140f7e70302300e1b8755852f9678fa2d81f976412ced649fa9ace3691fc31e18c1d5d9feaf72d1bd3e28f3c46b5dbd11504a3af508dd0302047c435bb50066306402303fc2153edf6fb0f9b3930909f2fd17821665f0c877f791e99fb713f65d50adf82acd89a5a01843ca83f6d6e4be7a6a340230358d8d3ad2554755d38af6541c76a3397377273bcab6079a72843a931e138ce40799144a365188e4479396e41db5288a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a69f437fc4835c3a70901bbf3d3f3e9143a03511dbf6cefcfb5a277f511609b9f0dc720d18e6df0c75a4a2f2a291479023012a3ad11578b508b77e2169abce5e5287dc4fc308720d69550ba4f4dc7292d43ee8f137cabd0a9516865af695abeaf990302047c435bb5006630640230682d96fb1b1fe8ffa7985563f5da358627330370fb4077cb804b5413316db325d05b2f278f031c6bf941c3182e823098023028ecd5d79c53ca98ec06c0fb5a46c9bab45d245e8e7bb070eaf277d72fb82733d7f7d88ca1031b71eb0a870a988e5be10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ddd36672dc4b91c804711db21f40a9768e5a4fc4a44785bac7e8f445d4b7b58cc337861f22fd6a5a3aa478118838abeb023073e216281fd7c154b63a2f140898b1f95cfeb7b4179741b2094b1ff934d2ed62384d9ce9bc7f461122b41f6f984269e10302047c435bb500683066023100d0386a6fe44f440d2d48b95ad0a5736ae95d921275d3fbb85efc5d2dedb7add0341dcf109fceb8cdec6f5b070ce3b12b023100c989c9ad4a277bc70a81074bf0232571bf9be85b8021192405d1795256450a09165e976a48d44bdee2a768ec22a2cb1e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305238ccc07c5bed66a228ccf75943319757e3682ac90d0f210ace1720ea9ad0ca9880b47c331e63276e0fc5cfa9b1cbbd02303e2f4dc05296687ff602dfbca4516805428b78b2549830316e0a5bd7f98f60a7ebcac6183023a699542d0b41479aa5dc0302047c435bb5006830660231009046ebec1a2fa69cf4e72e30f97821a07bcf46015065c957bcd1890128763076f0cd859040e8cead080739aa101f4cb6023100ecf1ddf07ffc053b14ce70b6eeab0cff40205e7aff9503fe00035c6bd13f60dfd2d2787010e9b8e235405d979fb4030a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100de5ca8473419a0631200fbc116faebeb3a3dbc09b68cd1cfd474e6754a2a5b3886ee63453f75900f94b697284f53b23d023100e6aed342b014ec41870df2c9818166453c2f7495d8839e3ddf8235ed2d4655f79465e997a50da1aa45a9878f9b4eb4ac0302047c435bb500673065023048ac50153823bcc6a963e93067524d8f4a01a869b09bb3f5d49c6ff7862355591dad0a662af872ca5f6af62d34601e61023100aa5078e964ababa11c6c0ee9bfee158a7a1a15e4ff1a144fc3f19c8a208514a6db49fa85fe0fdb86d1a766ab6b345c220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023058de7f534d7a4faadba0c813ba5486fadac6c5323cda677e5f6da27027b246427b38884d111e6770804d931b9c4246d702301250e00f5aeeb150c5a1770b35169da70d3813d083aa36d43db9550e6463fa6d14bb3c8c02d221197586f694f7000d630302047c435bb50068306602310096df5587d233bc8c280fce90e81a5091f3cd0f9cb6b03cce333bd2aefc0388e842ce97e551318303478b0bd1a22675e2023100b4a5389e0ab8bc3355ffcef0e245f3277491b1ad53cb0fd3f44db807addc8ee58307907a4ea4f7de9903735b1dfa84bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310096c3f922be99e1d1c62db325741af97b0de95a64aebb5b2869473c756d7d5519ab878e6fcc1e2b2ec7acb0e945ee6a53023100eb8d2d3720b25f59348948dac8b84592c1821ddf8ea2a89d78a1285508a2be6d8da223647436b470f0daae05a4d69faa0302047c435bb500673065023100d2f206c9d07ee2efa9bb804021a94f4855225fab2d143a0a73514330a3c4d6c7a4a8207754854243a396e7d8f59c580e023019dcb0ea3f0f2cb96c900a9c7f1167024ccbb6f16b19171addda35ccbfcb2ba4f4cac431cb7d18c8e42171cdc29bdf040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306c40a9ab895de9c5c70182a9df3589d1fb1926851bdfc8f568894d2ca376557b1e03cf341b0c4f45b2954c42fa37b08902310096a069ddd2d2289c955fd583eb3fdd7ed7523fb8717faa6777ab0c80fd1edc14945a4e9b602e54ccbed1f7b94dfa9e4b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a790d90a22332ac240f69602cf42ca368c5ee6cbc252430226525df45442d8a68bca73de276636c08c82f7e6108573db023100ed608c4f2e1056fc98499e4f36350def19974e0eb754986c7e9e86b0cf0779cae0eb321083fad9e84b68906f0377cb4b0302047c435bb50067306502302e94fa4c299161c28289901f1850d30cf4370ec5750c6165552071f3be7a80ebc420185543d9ec54fbe539dfab596f6c023100d70144bab75d82f4bf54140f85c6f8656aecd5f49800c9684466fc49b276061d73ab4f215b1084d04302a6c813a3a20e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023037c256e89cc7aba1f1c060129d5a9f3685bd9489d3278137ff98c92c457a21e13ab94115a5de40579d71844b5d195678023100c94bf89544e455f746265326863ff4269fec41ce7dd419a6a78adaa1daa79c758fb0905e3086618fed018deccf64a5690302047c435bb500683066023100da7d2bec0e2105cde00994211ccb684734b69844dfcf58a2f65a84ed073b4f5679ad70231e1ff5c34e1076ba68794077023100e697bde15146b35070489349b76fa653b3b079f8d549f1ee427b9693328a7d26a58e1dd9ec40c82ea3e6ce56917e193b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306b28ec41123a572e3c4f8ce06f750253af1751ec2155b7159b06540ffb3a16a2f3f3d4397efe02aaca8c42712f3392e9023100b8700d0b7d4b9f4f442e95ea9cb5c2cc0d90726a361cbd2b13999f2089e145cd83666374a6a47c763b1bd788243f13c30302047c435bb500673065023100f7063a208473c7d46e5bf0b7f5564307ab320258b863eccd5fb71df08e8cc438b96270842472b67c1c545089022ef0ae023001c770867b58d910672f892dd1f38b2feff387d8b73187b40565dfcb555c19d47bd95c5031b5ae0c1e189b85c9fd8a5d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023020cea167baf23cb9b27a0a9b906947c205af87a0290d5643c204616b34108a3150f196286763b7d0eb2cbdb96f086ba8023017d669d41eb20010280c37ac74a5ed721b70382bf08b8125b4c7507457d78065aaf0ef41e889c0dcf10bac2869e7cabf0302047c435bb500683066023100eb22e1b6616284c064efa632811af641ec4f4aacbf6bf391690ff136110e85e60d2c8431d76f9525e80d461bb762dbb1023100d73a1c82cd17a7a3710acd7e01568355e5e9c8d279ea5a323c1459e04607ed2f9b8dcd8576b82c48f98b13bf605cc4cc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a07c7455591bb247602c3c2d8ba29c9e08f71730e4eb578e4e93d784cca6c7cc001fda4f5b967673bd88e018c39ff5fd023100b5a27f175231f837490b9fd5d7c26a633c41e25d81548a65d8987644263597f82aeb0b8deac3715a8f1a5904aee253000302047c435bb500663064023034e1f8ff0af81fb6e5f977b3298434feb8a07526ca84e5a3793003a95668c5cd785465b3a9ecff8403fbf50a15fb2a07023052badc33c140d4feb1c026ad19f9cab30c7eeff93096743cadcbe7343020b77be9cc9ee610e5f3bfacb6c690f2789e2f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ee72e1faa971a3d44a92244cd9910a3416a18e60f53ce5b2d3a09c4aece4815dbff19b5b89373402a29165883a6c12d102301a69768c8318412947439a3e4e15f8835c1a734627cfe0fb311e46973172621d26ea0f040c2836668d75446949e3dabf0302047c435bb500683066023100c4738c73d0900d56919882f78593429b530777568d6d1b51f95cfbb0c476d34c1b4c23133ad7d25814fa232a0454353002310084680bda77bf7ab989a200600b57381adb8dafa81543a8f83790110718bb8b780ca1ae640e94c9522ecd2ebc58bc45300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060f221cec124491d2271fcf4d1e9908cdca251681a5644e9aa250b140c64b8fbeb0b04e1a21a8c4d0cc88d664011c1d8023100bdce7f64b558dafc6822b452e6a9adff39003d9c725d3a6378cdc15f56bc91564bcd4ac2d4c0f7c9066decb8d2d0094a0302047c435bb500673065023100b1511c936b9b51427c910c5650957d99fd8a0b7904ae87621ec4ca59192c28011f824518c6a4a891643128952516204b02303af3feb24e4a5d3c37e87922c12f81ae7633128c3e3883be4e8f309f1eba4ec44822bed04bff8147c4e80090070aae3a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e912b3e424067f02c407dfe80a7d682a727ef36bdd73d3ee2d0d0651f83735cf8978961ddd14433dad49a50ccabc17b30230132e5386e35d348ed718c2a764068448a4e290e5c1f1fe8120dfd527a5447da4313a72a169ac35427d9a38f17af55d2a0302047c435bb5006730650231009ef8e0502c794d669251e26632b08951f8d442a1ca59be7f7a97d454a8e5121dacb2245e48a3d7e16264d4b26156c5b00230651fc3bb503c2449535a7739ddd7ae6f85e34f733a424ad06416e71b95aad08321ea26c5127d9d9f449ea6fa69e2d85a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f30604c653f8fc2af449c2c2ea8a85c7c3ae4097504fa3ce0c7b74cca7f2162239c0385b612e69715ff129ebd0a05644023100d3172600b12808006c701f474d91ca9e24528777b8023a563e5b05bab5b714bd403ec9f3aa9c636b5c5a9202769b56220302047c435bb50066306402303fe8240c66c7b19f91c11d418009286fdc1843d2851024e200afe658732301764fb4fc8094a29616c81126e228a0887a02303ab61a84b8b79d523dcda1441c912ad5d73bbeaba94ac3f43a9432966f5c45f38ad02c5765fe0d4bed9c7567126867cd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310092c9786469927bdf39662abc58b132fd050d39232b381dcdca61351eaf60e39470ea8578e05c8f132a721ec486dc89ed023100c87b24fea9af5ac22eae440c171bfaffdb1f5fd001267d5af0174bf115147124b2578419dd32b998b570e8cef20858a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091a5a79bef57364e2d2d9f25c5b521989db6b971ce7dfec25cac6d05b9663c3b020db8a42e5a369aa33693da2a57bc000231008d4cdef7a8b229b722a03496af7f7d4763bae3bd1b038290e8801cbd913f724e56e0ec08fad0e1c991d05126265e8a5f0302047c435bb50068306602310093dd54afbf4ac2efb48c13c2f0106a9fced51ae50b0a8d3dbeb296890f41c5d6aed195cb839193ac2b1f4ab17b8b88e0023100fb560ebc6346bcc4c6ef8e136b560154d3dabf2edc218abf1f5ddb3de4eedaeac2b81abb6c47c5a87d25ae9e5d57e8710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302822b75002891abef02fd82fa5db1191de1219f99371082e563bcefc714ec79c772d0b9ee59c8616c89999cb4fdb129302310095d0891002ac8c63f9c3f32fce1d30e18abdb3c27d29b90a5f9d7066e145e3b7b366262ca846f16ca31703cfff5ae1740302047c435bb50066306402307e80c21de2c9e9527e7adbff089b1179651d922ec8f8e2e5fdb8b6b1097d0262ba847697b5a778707b4b6281c12af3100230318e207c6cfa6f81b2f66552aac2d2e79b64fafcbdba43ea4d89c1d3e6c8bd39cf04c057f5fd90fe9eb2a93a65143ffa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c147ba0861090d1ce969dee9065e3cdb2d0fb5112ec41640bb0177e823fb4a513da887646aba5d65d317ddeefc7156010231009b520cd9183650a28218caddf6e83a242fdf6703bf33c99d08a6fc131116038ad2144449477f78214581ea4a862763c90302047c435bb500683066023100830a37cfb4e29d1d8df9dfffd5dbcb30206c151442d8830d8835dadd8c4a635f43ebde368806516b641325d8a54ef11d023100e2cceae5b1ce1e8b549597c3d21418b09f057d8debde9306345b7c3ad5def53617aeb9a927d996ff561ee7ad1d8800430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230598b8ba70eca69bde494b96f397fc90b0e0cd7fcbdf505cf58f55ab394b8c4b000947d33bb7aa7d343fe92b2b46e4b300230116f7290c6bd29ab55908001a4e5d17b28f37240d802be853dd53456776fdf48f1cc81d89a4935b0e3974c0773fb0b330302047c435bb5006830660231008d6bc97219599ffd9836e083e867a13d91f69543df2c712853f1aa0a439187b9a30eed3b7555711f1fe1728b6ac294aa023100b962d0b5f103f50cc8216e5f45634917352ee01836866aef6d0b91981516c5863fe04becb6f5b207df631df6efb970150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300ba6608947f5bc1bc3230bc8a8fea187fcb7c37a58fa63871a1b0632c4d12ff1020c109483c68c96140fe58a4643cc820230353078671f3759009d0cc4793b1508a28bdad94bf8cf31eb2906d4caf1fd56b1202c293948913ffa5f154db5459aea850302047c435bb5006630640230344ba9ac20a2c87d1f5622ecd48dcc279ad97370e684f74783f11e232ab72db68b2f3bbab4f97099e4df4a09b17a4414023058076b1dbf6482ee00a6b91c43aa16cdf47788b755522863f395e0f78b29bca8e760b432caf85873aec9f826d956364a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023075138ebe4fbe6cd61242d509bd0148d17b248f349ef2b0d0fca23d61fc0a748aa77d191d20b09fab2092de07cdefd7bf023100de7d8f544eb90f53b47dfdf4d299dea1fdb588e5cd5ef8cc15ca89415c12e0d9ee4100ca355bf110e6b8982f8c9011d00302047c435bb5006730650231008487c91f7403db9d2845a2f3faf2f0621ba8842942d143b087446baa80e2b921d9dacd9b3d84ca5031ecaaf32cf016d4023069bcef63159388e184440bc65f1ea410da6a36a5d99e6917b982a64c8601b934ea19ad7ea292aee56da37f180f284c5a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d5fea9a01c72a8ce481cfd4e0fe24fa18dcc509fb69a02171ced0c6fad13b7f32199dab4e9e41d2ca2c2d2fc9d2e67fc0230117ce4ed41119245d646bcd12f1d180b69da5eee00e78bb81d5b2841c37d1a1f8fce6d1deafdab343f755e11a79d266c0302047c435bb50066306402304395ed03276c7ae43390c9231c3e35c460e5d407e9fe09bd52c7c0c49469e9df256c83099a6e5c8a298f0653cf4f89b00230099bedf3fff367306c918ba1b508cefc6555efe99fa2e123cb5354238503a1a235025df8a880bbad4389fb62ebe412460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e17ce56b2a7324e23f11f603a71a9cca23d037bf186b2e63b6ea0c510b2a47cabae36e0a2a566e87cae196e7e62126c023100d744b290cefac42c434f59b716d4fef68ce648a38a6a79096313ea5198b8acc440b7b3654c550c9d2eac02f8b938229f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300cebfd3eb35b26e41397e689cf4738cf450ae9dd04aa35256942b64ab20ca71d0a11bd765722594386de126ca6892c7b023100c5d0684b248a855bc2fa7baff5caddf45aed66827e70623e09b904b5c07ae674eeaf3989a8efd05a9620038902ee04a50302047c435bb500683066023100e2cf993be6e85b4ef71b8956bc3159287b57a7070e9c9b3eddd12ff6c8b589b7a572f114e7d88d8e8e4828332420691b023100829e042076b41bd9d523698e67fef8b738423d8afdfb379e2ba30c9c05da957b63471ac333b4061f0cd3eff408d122390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e973a53b663bcbf596eb45581c4dbf4a68487efcdf979d183ade9cfb7bba2cfcf88a022431a229fd5c97ff0e9bd9d7c202307cc4879568314c9aff00780889776b3f2f7501859a6e77b69bd4b63f531d34d19c5c9608a7295edbdb58911abeb0b6c30302047c435bb500663064023021b7b2a30e57cbaa3bf0c186d5bea797cd2b908b4b701f3a4d509cb321982b9c9d6f5aebab643bccd2c6a548b8ceb9a702305a82b26931704e573501cf785a7f59adc7bfb31d6fb442edd7723f41e5d9a40887d348d5c27c764a10731d36564f26710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230783735dd8e85af7117ad3328e90e44ad4f53293d418cf95550221e04c78166cd4a7c5e6652bd9c7484da59d0bd935f8e023100c97e7c6f625522df8421877fd698a29e0fb205ab9b576fa974d09c66ada4c92aa9a42fcd347e7ffc1da7d8238601db580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100914e16cdf0e6281674fe894dee0381ef8244aed6535b173657c935da0c8d9f78b9de6250ba557c0cc10bcb43e834632102302166880809afbc640cefab914ba46601220ea8f71b46f5a3ca07a80ed832638ec7528d6ffa10af4955c865698c1392610302047c435bb50067306502310092c3b83565b4833e1b93390d7b5e8670e5b07b95e7f31e248ddde1fd2a1d78ce3d8845fffd738a75c97e7fe2256483cf023016e7fdbb7891d075ec303773182523f1ddb3cd02cb42e080820b22b266df2e857f154978c8c7da864bd0bf68064526600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009290c97786fa740843d9ea6c64e245ed65695f226e9029d536eaa3858664d9f05c1d822e8898779fd0447d24ef7cc003023100f780fd923bf5b3d3c97c4206fc21fcd18bad329cc367f36abf2ee64fe2dd5c9d46f050ff866c25d29ab39cb3c08033160302047c435bb50066306402304d39512bd71b674e2dd66e04bca60ccd2d31d3153a2546691f830976cbae05604087f2ab168a8e16396454424a7518430230491f31681527c044797c7efdd38e8664a28a1d0705bfefeb0c759e0b00e0588647e815e1c33647ea3eb2244cfc4cda270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302dad163657414fab2492c41437ec126cfd2f1f2ee827c4ef1c65a5c10baea92bbf3bb9434f50b87eaff06e664128e6a102306f62d4c7207bbdc96aea2d48860322b78b3b2e9fd2de2a731d5e23cdfe4d9a456eeb0a2e164c1dd1fd74f17e4595bf760302047c435bb500683066023100ec7ab5b957b314c252a89ffa1cb088effc6c361698fd1ebd871434d25bbbd0679ac30da130ff5a1bdd1578ff328b6edc023100d0387468235a45db44325639227b918468924fb91db6ec4e71c0110a9d49deec948286c982f08b3b61db91549b09c6dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023037855ae45929826e63884a0c46ac3a712336070a952792fe876f5b034c9b46727b644248a164ca9be1fd50d196d51a5f023100e56c5cd0913a717129b1e66e85d8580b3013e817dbfd0b966a54635bc73fef3eee9f720ff18159153ede74a9422a7dfa0302047c435bb500673065023100e861bee646ff3d4b388a64ef372a4c53a647ef785dc9197e3266f4d8fac3e652ca14e14e04844596e406361770519d8d02303b445dd6ebd43012e9c2d9e21d88d8c14d726ba15d3761ca8a0c90369cea567f7ad4e95ce7a54205acae80d938174b200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230141ce9d1c3438169f1e92a239cd10fd6f705d65756f63e98c62a68846020f3953eae44a32bb39537dbbf5f2173cad9f2023100af79cc0b1d0ceb2ca0630caa82863ee6120b351fb97784b3a50d66c8b447bd8d2744bbc094dc11d5970c02f6f8f91b3f0302047c435bb500673065023061ae50d230935a1a2685134f06a68bb0d1c4a2555c8ceb9edc28f06a299d4e99fba58b9b5b99737781e2fc570916a546023100b0de7876d7846f10150d070d0b40802405d6ed4d6d206acb179011fbac4e64f28d81529222954c1b8aa354c9e5db56800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f4f64a78507a9f63e38621046769c993ceae222a48d66a04e4ab7b0eeef87cfd0a479b51b3af8ed3b5d354ba8e05d7e5023002be823c9993cfbc3d6ba8bcde4c97fc88a98f89fae2682966d5695dd6351d97d71296f0e584d62bd92b9f6c49cd12e80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100eabc54cd6d12097eb4e3ed144c733b350e5aaaf43de2231f09e00f88d31372f402f85781ad52b8c277f9dc51e8efc5de02304d820004f17ae62f369bbce4b3ef782b2d14b9ed607ffbc9ac37218e7afe39dec8ac88ae7233387cfc36f25b9f578f000302047c435bb5006730650231009d3385a3846cf5a708e4bb19266a09929fe019e68b828e1c7b9e0ee49c25f204ff448331914f3be134ee2b3fcfba83080230293e6bd10281d7ff67b33f8e20ec8374eef0dd77524e1cb87b8793920753d0ed364228309f962681f2d9f8d1439f1bfd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008cd6b7877243abd9767ff6b6536e9adc7263ace6166d46d962e843c2a282046b7d03d9222aaa8a444928899355ebcb9202303b7b56b568c535651fc61d1430c09b4e6e6f1557040e20087ffe055848ed4bdf7e399f3cae72b36145dfabb1cb0998dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306d4ef79a05ca075de53a5b459086ffa48ae38525972a4ecce938d93308729cf829f0ce028fbdc996e0ec954f309c7854023100fffdc96093214b4cd0f16fd5339a102dc8f6720c9f15edb16cc1a2f67da41e15d380127aa30df516f099ed059ce50c720302047c435bb500673065023100c0882b256d52272ecb69de8e7dbea11ba91c378565df3804c65959ef1b4be99c00a08bd7517e30fcf90a0eae31f6520e0230610e642d7f6cfe7029dca53254ed2f57e4a87afc8a4752fba225d8d666faad78316d449d3c2e09d2dfcee7e40e4dbfaa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310086f88a4d5265babd2431e91cd6b2a7c43df6da4246df686019addbea765d3828122844e80459dbf174c0f558653b089602303bf17d24c7d3079cb43330fe607670e974d28e47fc833ab4a2a9675537b95306c09861bccbdad4ee2ae9985c356e68960302047c435bb500673065023100fe5ae9317bcea60325eefbace58fcef6055e722addc03e5edf1b8cd1c207052b9ef6647bc4db9383ba0b991e4c46d5fa02305e41ed6023fd7b1f776b81e818649d7926f9690e07a4fed04f1ddc95bb190c9d97f663e7b10e59203e686192c8cf05d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310091e3ae3dd6b484f309f9f071154d40fd52ca1674af939a64d00d579df88919a01af8248f3d6cc3c36eba629800495bab0230767821a4e481cb1b98523fa0a422c75fc42110899e53d0b7090529b2af15a229dab9893965bcd150090d3a5f4491e4cf0302047c435bb500673065023100ca5c36fec41988d61a39f31cf3dd20e4031f4546cee8b9c224fefa7a2e16b1301960032a146e44e5fd72664ef1edfecf0230676251255020d6524c9ae11a32b40b3a455e8cf8204208be527cb777c5b386dec356ac18b76f8e784f308d65ba215db20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023048bec3653b3176c2fb451afec90e0a292c2b1769d67d1265252306ba34f0f4eecafc1357c5381b4176979ef833d73be3023064d07e1be5c719ba477d5dc73b3f752cbdb72f1113af23cb8fd0ebb54eb05b4cb531ee90d7e8241c93f717e293a789fc0302047c435bb5006830660231009e3629ae57012f4ec7ca91dd9fe7e4b02c496ade17df8edae3f1d1f2dac10d81b9141cb8f568a8694e267774f821a947023100c9954057f5b5ec50b0aa2f4f08eba1dc486a03f5522e1478760c377c90db37d0ef643140e4a1a3e4b1f9f6323900b2f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c43cb22dfb294d23a8f22e12d1ba181a34591007da63969bc555d241f5d8900ed42ca7c69049616499379d8da72ba156023100e63e0dca7c474a92c571758873d88e515539b5337caf1fd70e360eadc5774a52ea323c776f2a6098ecea417a695db5f70302047c435bb5006730650230513989b05016d2fe818ead17f37c7b14309a069f328d7d64601d48bfb65477981b4f694ed76cd0a1c7bf2c5a9368901a0231009cd4faa1e7c15ec2dfe8f7bae4f0e78cac959be0fc6640f0996c880698f107de9e701a89d695cb3085886a33a0b0a87c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305630b55fcfcc9cf3d4ee11ffd46cdf9522349374dbd0a2b764cd22539de7604aacebe1d1514f79e93cff536603a924f002310095ce9c779edcee44270300ae757f3dc793e01d8adce5cb1fd51485b72bcb6172f9bb1f4fffa767b899aaedba4dbfbb930302047c435bb500683066023100d8860118b8f53e08fedb8f292d86f5f590b50ed554580e750dc8da787aa55ec493da915db168661e872085df2a4fb822023100827a575c7e128431d2a51a2288eb61cb6847e5a82236065c942ed2ae18603d105c4a4f6102830be4126e1665d008d30a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230667f7b78745895e4b3ed81ef1be7583a5387bbbe8bef8189aa91dccb15d233b093a1bf39eee964db99de75e1a96c9eea023100d9c1342c3cc0de99cd2b13e9cd11a89ad2700082d51117d40ce3e486ee792becd5e8e1cc2841e7e3f8afbb7273284c6e0302047c435bb500683066023100bda64b288048956c018eca708e9dfd578e06a9a51e45ad524d59c0e3351739aeacdbc205eade5739b38cddca193ca581023100d9362954242a6d0a1af3089338575d9feb0c83cf8df9767a663bddcc391dbb2e637a8a86ffd3330a690af7e26086ee590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d843fa557e82715244d1a227c09b7637b3cd99c8f858ac8cc61a73a8a089349cc5631597afcc159788625fbb4a73d5be02300966b1218555bbc524a4dcee954e84c949fb8b0dc468da1067fa1fe55b84d85823a18671e66f32e7c56214d948e9315c0302047c435bb500683066023100c2ff9d7ccea19269d1c10f021f85ff6f24e77ee0a5b37ad32e2732652e06405cb25c9e802f6f601f398ed969af67d4fb02310093f682ff1976d2fac496b4d3595c2edaf705a2c2e5a604bf98ab45dc5be87227ccb8fbbecd80bb2224067d41b205edc70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301afb5bd1279099915a9435baf3fa617e6e1fda82466c6c6e3af7d40d15b2546704a06a6913d04457ee46278ef94d1444023100caedfedc86f9e5b793dcf96cb10322cfcf3ec0b13aa65a1333baa9154217668cb313937ecd3fe39e7cd4bfaaf40427400302047c435bb50066306402306dd254e22584f55b12c82d23c8b94c7dcd1dab3b4cd6bec0ea04c020fe375bde18bb9d9d8d9f8d1808ee22dff665ae9702301163932217635f1221fb458299ee61189f313b0774909b32f78f7f287a24780a9a8c940718e810eec1f584a1afb320140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303c8673d620118a9b0ed830f63403d60891db0419522e81194c4850418b46565a3b86d5876ef06b89f1eae77f7824de54023100cc6ebc74ec70f8e1f6ce1eb0909237453d4cd523d3a09ba2ff09eeda903253ed986d24b92a03e7349bf23797e554859c0302047c435bb500683066023100adf61028ffa8d5259cf775079d3d0e1c996f51cc2c2d41e1d3e3cd1242c0e30e7bfb42963db7bd7e82149f61ec4fe9f4023100e858d83f5c10b90dce2873c4c000ae99f95b97e6dc7ff252e30da70c5ca711b9afd66d94d8fab443b864e04a7955c37d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301b08c5447b5f521e762a5214733cf575b0c160fdbceab1ac8d0b8a24bf5d59d7b3589b5f1c1f4399247a9f612b46bd3c0230534a12b90d66c23399dcf0d3086def233e2ce8427ce93f70b3b546f18c74d15e9b5fb869a4cf3464ceddf0077aa21f010302047c435bb5006730650230384e33b185e0b39fc33e458eddb4679865fe56586133857efc6037b8153dadb965d40753fe511b64cdd604a4385d743e023100c61114330cf699bc9c76c3359641bccf802f867db9a5cd81740055f7e252d406b2e655007025c70cfbd2ae9c243f55360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230693fb329cd0f4eeb3899e4f44dece08dea1c312aec5a5fee2df0d4a45e3b5cdf5ada710b1b3de67246e48cd65b3f5785023056fac39a1fa5fb863ad39d658274ae345b86079f7ab00fac9a9f5da92d6e18a1be916eb8d96f826d59977d742be97bb80302047c435bb50068306602310089b7c94abb018176b4576cb42bf08a1cd396f79021e1ce1b4d1712f192454c623880a0e3f297f29687b078f53503d887023100ee0a713ce4037fd2a10c6ede880dabe91e8152d4a42eeee940b8c5e1e4d1045e0b1d90b08c71368d329e12c802ee01d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cd082d9904106d837c514dc9051cf9b3bc5b5d2fe94dc1e5f55ef9553750d445108080897d91c9ff186fc28d7df404dd023100e7f02f4e426cec796313c967b5594de92bc0f131252e917fa0d4aee2f4ba76098197cf01dcc0a604dd91af4038eebaf20302047c435bb500683066023100dfa51d09ab3031647be58f6e10c89985db41fd0cb4243e7d4a106d7ad4fbb5fadb7dc25c314b5f50c7d7741398a5c090023100badd66aeeb2d59c8ac632faea4cd2d52dea39739565b8702c94a1da78cc6502ca17c731cf7af584a4239d482075b65d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e94361cb9ae88f742a90baf98cd9bf5701fc1bd774be163537658b3a351d3e02c11c85452c90fed442bd29f35b1c2c4b02310089f13ba0fe38d65ada60e6aa58822a5653685fb1e1668b3e0ee37af26a5d2ee234ec55de82367ec7648b1d75478972810302047c435bb500673065023026f59b8915b51a44db51b69f0b2560b84c6dd2700cb94dfa6969966253aa75d40add6cad64f14b9aa9393f9d751601ee02310088d8edf2f32a63d75ea6f57eba5be8b771971354bcfd48c97d78e8a671071d25cd0b08859baf35bc2e84c92d62f452160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306c998561b350a75f5042a69d1ddcc5762ba761528bf78974baa7aa1515a3c9e2b12ab560aa0aaf956b95c91feda49b2a02301f491fce19f8f4565f387c8c13fba2fc4a679a6a9fbd78029fa83169e85c21bb9d6ef60e415cc7b44fc8589b131e190f0302047c435bb500683066023100b459dfd0a5a70307c91451ac5168b283bb35769994c4a9723a4596f683aee48934d035626321ee6fadff234705884bd1023100b7b8e64ccf9a83ddbf59acc0ea4a9aeb8d9b8f2789b0ed30144cf51a7a2b48a92f48f7e9e6871fdcb1633a8d7ee293920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e406236a93ad466901b3978a2c5e57551bd253386b12cf0bdf0dce3a757f7fd5d1e86689d1befe08e24289848e8607bf023062645ab36593f22305582f9986376c4301c821f3ef036c79a37acb6ee706e563c29741296428ac012d60a5c2026e23a10302047c435bb500673065023100ff7e93ef071ffb26d1db9fc8417f703054ba247e2b3e58a0c8bca1ae37a5144fbcfd76043b927f9d92598e56d9211e5602304463fe4fa074dcd4cd854fbb9a8b646c4383c1f8a3070651bf1cf7068478040d1ee2c08f3d0a04cc324923c9e362eeae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008917a01ed3e05e600966238ae72b27ca652baad8139a36b279c5c62a1d03ef28d5778e129b388a384c4a38be8364819f02307b4202ef99b3234e46805f17a8dd6cdfff2a91f0960ced8add5bca4b0005e0c3c3575f14241a248a07e4f19719d70aa90302047c435bb500673065023018ab275636ea19ab271ab5ae591898a6ec267d7a0196e19deb71056c682610c5d527ce59630cde0003d35263f6f169f80231009eabacbe53f0ede63c804dcb47ce3d30c5eef0e0b3cad1216f7fe5bbbd641bb8c9ef35357c62c85341f5c240610e3dc80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a5861583cfe57a4389825fa589d082d9cd84490a6b178142209010b45d3ddfd4e4ce5d57c992ad976103fec71d07157a0231008f0e0ba13638db604b77f72e3cc6fd3ae12b4d239cbb0ec573578a69801b87120a438b877619a18664a010c18706660d0302047c435bb500673065023100da440140fc438a73208710abdc2720a690d9d69d4e4a6eebb5e24930769c938ecb3416502f91ac4e7f2ae23595e6ff3502301b665812d1e64b8f3913bbfc2e3e260b70ab6e69c985ed6ad42eca223f302d30ece5f0fea82b71ab258e15a74207177e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023055c4201de185afba2bf673bae52e953e12730364f7d9499b546f3eceafe36789346b66e563176aed85b5820716c5ca16023100ed34f10b23886f9e318838ced2a3ebaa9181453f33e884043a9c9d427dc6eef9f033004a436f35d10088f88d3f239ad20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305d1befed8f8aaff9da71fda3342546254a3c598b25a2b53e120bec485a652bbcc4456860ff6b9865cd20110bbe3ba76f023100e82d2316609f1246c6e452a57cc5c23dfae20606132f01045889e63ab8efea8c9a96ab53f9a0fa7d4c62cfc59f3a71830302047c435bb50066306402301c0a9a344db2b2b5ee1555b54bda33f0bbb0245c51c6b88a76c61aee38006c60553bc588dcceb5ce8d9ae8ec467037e2023036af3a60a2365939ca540600c9144b3b1719729a4dc07efee69f107a6eff1d75c3323f7b09d75d0b00e5b1ade53627b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d6f296a9a5d8f4df085e5cffa0aef5b33f4e019a507546eccdd934a497c7db3fe98b618809c72c9557c6a059f212f7102306e20a58683d2316d8763ae8d3c25d8142efafc2607de3e6d3a39c655b11021c29019065548ab6a7222839ee9d3e8097f0302047c435bb50067306502304297773969ec754bf59bced7b5b06db828c40b8f37f99d13fa21bdf9feb60635e97d35451e0c2e1f154072e117f93184023100c081fb5b7b1b7da7115e0e5baa19fc04ef37e900fa8ab775a91328fc6f7f5d518304292d3abb8642407ca9942c3161470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d5ac84cbd3b79c37a413a212bf40e50f42e4f391a0de06d4ad41f42575f7326e21a81a77654201bf78c3bacd4f0e82840230685a7f66909f4be052ba63896e9f06ea897ecbefdf50b9c8a5cf4a3300f50e7b2a366ef228c947992af4078d2d7dd30d0302047c435bb50066306402307959d47a70a48866d30d557af48f46ecbbe73f8b2d0e6a4b2c23ebe1a6e35176df9a601d16f91611937e477b9565d75e02307555fa740376eed1b32e13c7cbace58e77ff2b8513bf05fb2dd260fac7da58ca3b4c671514275837e1e4d4dde1ef83e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009ec4f7f1da5218b1d135f6ad26ca8bfc5a54c1af068b93a9bf6a58162ef48da1e22c2591ca8ae18cae6a635586f71195023100bd76a9a61398449861fff7fa4e76f1b3d9e18e4287ad5462d53a6f29a5f9b2e82d410d37cd269ede2ed16af56a66cf4c0302047c435bb500673065023100dc5f6f8e5a30ae079d18b536d5a36965c2d3a7a024dda39101c7ca4b496ab2425034827137058790dbb428ada169d34c0230299fa50246f1977bfc735ace95874b24cd48eb8706867191e5c18cb8bfe3fb09d67dfd0261967505b933a7893b53a6dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023014f6b039b390dfa7f2c63890af140a5fe8c5bac81eeab24e100dd009902177997bd9405e201669a471ae3d3cedcd8242023016d522a7962d8a53ff964f443ba20fce1d0b4154b47e150fcf4bcbcf0bfc0d07c5816f49f5a849d17121bef36742fd3b0302047c435bb500663064023057166066a5b3bb1fefa73d14b381774a5d904b45808e9ab849fee067d9b8f4b0c28b09fc26a4aa871c3d8a3689250e58023010093f90382abe0fa1f0e7b4126bc3c31aa253fe75b9aac00a15acc13984e1796407316d18932f7241aceae5d580e3a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230342f14f456d7156cdfd5b4d97647701494c3b5cf7e32ab9503d1d49a79db9901344338c15c40404ccca35c57f27cc834023100c040e0eb586649843026a504d04ad099f8cabf2e0f81a02dc0a161be5c5a5a9c35ee87b0ce28bd2ad1223b40a25edce10302047c435bb50067306502301394e913e433a5bcbd4661f9403abb5ecfe639ad788af5e860fbbb97b97d09eb5171965db183e416378d9eaddcbd7c8d023100c714b05baed8b2a737c1d6e3eaf8de753f5dcaa13100afb0aec23e6231720d4d60a3407e24b81192e3bd9df0415e09f00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dc5d2d0ed17c0e1bd9f62847261a8351ec05023f328c784e51bd0fadc0953019f0218987db9721ad6394098ec58bef46023008ec7f8625ecbdb9d77891cd9b1fa975ddd6d1971003d7f8c17eabd25fba3fb5c59e2b100d96380586bc5fe3396afc240302047c435bb500673065023100f6c0f1d8f00cae064f1de8978b89c3c4c67d28cee416f9420d591b531ecd9b065d32c7583528bd2f47e024a2b40656950230163f677a38bfb64d8ba890ca131bb95db979988d3c8dc4b35bf0dc63ea9adc180b642f53bad0b297ae1b3b8bd1f4167b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310084c51d5db8f8e3865fb9ff4e6e6333e8989580f040010b08c0fed9271404ecfd414db48cacfe5d41c40699de624b0388023100c3c0c1bfe04ce597f657fdde2268b1a036275ae933e754042c045c7ba7201b484db95483215d17bdbc9002234f83eacb0302047c435bb50067306502305d93075409bf10b522641ba1afc009c297504e4a0ba68ce7cbcbb883fda2bdafcf9c506b4c7c5202f2a9de1a9b025a62023100dd31d7bebbd86cefde8c87571211a245f99220427cdfb5c5a0c7d708b7a33e0007651ecd8cdd5fdcb3c6a75ce20ed8320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e88398ccdd570d2e6140a0f64ad19c9a336ee93aa1b284ed76b06fc2af7aeb6289b78fd2c7ca3d13cd90c68f1d0ab4102303916b5ae249cb1be4c67e1e7a54841b55000e4a122b138f37acb8193d507a6418631270fdec92a978540739fecad6aa60302047c435bb50066306402301679eb438e17fb50940cbe6bfffc9b7b6500a9937958cc43957a926634dbec36a61afd46b036364335d5bd7acb59071802300534dceee6eff55619046790a8676186b84a77e1de736d8eac973aa3f4a9dd2144c154327d51bd65eba98b0e5f7baadb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023007efb2f2bc69fad998ec2b02d15cf5f417354951d82d164288ccba8d54c9960a982ee9fcd347e7963c7783cf8f6d528c023100cb9860a3472a8e78356b989912e1ecb3c4931ccce7ce79cee13077e1688572cf71589b21e6422009929c0a20d0d9ac650302047c435bb500683066023100e248bce24c7a74ea101a255e388e60e69306d7eb14d428547fcbf90f6d6050e3a99e4963daca55ebfbb24d087019bce10231008c18ab4f57cd8f2d94ff3f5d17d4f1f3916adfa87c43534d71ad9ab4a47102ab67cbd4b65b03cc463043e3f807bce3420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023018f8a9e3adfb60aa3cb4a0bd80acc006d46d5c3d671b0f6ea5a1eccebe9af098196be7b3609e85d4b3d75d345a83c8a502307efe72943511050395af402b96cb1783f92e9f666ebc6d7c792be161c4b01ff6bc5767ce11451895bfed74a2d984bea30302047c435bb500673065023100bf7671d94ebfefde8a655e63e2e97c8a9c0a792a4093e4b49fd6c845fc895dba03872b4e4d95fb77a9c91f1e4db40c60023065858a70763d6ba7717af5fd8711f9063b2a0c805b324bd2e3aadcac2160fa462e2e21671f116bbfc2faf79408ac58720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304def73d3627b4c24b3a5fd700cfe3d5bd4663657d3c6eed6b98acdd2ed08f5057a42b65190f5e4cd7743b49f433050f402302a958fc9ae1ec46e11474f81f9b6959ba2d79485c308892ff0838879d82a227ba17e545dfe576b0b338109e17c2de2440302047c435bb5006730650230400a26abcafb80a6f2344e5de3622bde8cec071a675a0241aefde9ee455307e95d54c5e06108edb3b936748d1dad72d7023100fd11d8c0d8b1599b6b3879440f3962ba2fa9633f750a12a7a7bda9229d865840c7e3ad45f7254e2b0d209a8b58d64da50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100961601ea86730b6e7df280e19072ead301aeccf68fbcbb76fa3c63b738661397f6e12c80a97a2a1baa4cff614b52c8fd023100a7673e72db247c902df57f3c9a93c3820c0826d11ed2b23c0c6e0c02dde347d6ee21d9076d6870c317a886f8bbde8bef0302047c435bb5006730650230138f976a6bb0fac2e00350d837d3d9998bb91493f4fe481625e51e4eebcfff37079625566b949eb0f8040927ceea1437023100f4e5af9ef88ff7a378d7d296a36daba27e08b1e83736767510d7ecc100e0095664fa923e304f9a2e371720735e8e72aa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303613951e5a7468e6b7767ff1c57586f6b744cc2a6b981d42fa0f43ddce2b630d91553fdeda611355c4685843aa8e8eda02307f4b2a81ac8a7d4c032feeeac71ae30c0e2be588f334dee9bbbdfd7eb89a099af7ee54872c3c9ae7ad3dbc129bc876870302047c435bb500673065023100e9b991adc7d3be88881aa82d89bc4cd6a257c8d0829ae357f4722b569866a1c016fd4c6cadffcc1fd520d73648609bb002301b9f8fa6f75ff1934252d8449e275de675b0227905a7d7f248b8032b7f412f2197fa2caf3e5d8f23347a5bd618a7dfa00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023003f07f2361d1b3f216a5af7d1d8fee52039a8523c32383fc8e8745b4ddb3cbda832bad0ed441d1c7cf820a2285138637023078fa3299673cee09894aac91b16328db49bfec446ad0714f6fcb2a11f896e5978ac9332f755458bdb2a5089998349cfb0302047c435bb50067306502305dfed1c1ba4d19e66178407d6c24e55063a8ada9068697ef980eba14c3d2981172ed77b7577e45b4bed2598ac55ddfae023100fbdadd678591df689b800495b86210f6f81228c6e50406b91f7800ad3b633ad2fcbb42fb3349fbd7c6c095373d81ced20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023059011a77ccfab5ee1921d09ddd22a175cc05cfa0ac9bae45ef439e89302a0a4180cc7f3efa462259bd8cd9fec265673a023100fbdef98a828e5ee2ea251fba2b15a186ad7f3a294606a918e7504a88ca3822a3bfa6cc442650a61f07d1ff42dbc560580302047c435bb50067306502306489f4ffd3106d7dc6903ee45f36e4326a0802f3b48b2a3c77e894f262dda49e0c4eea740c1ec26cb823e5f365bfb042023100cc66729ae5c41201a590ba7812aac24055fc87ec08e090bf9596b7e0a9e60f5fc94f73b0002f6c5cbca9002f417b522c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f55a74bde2072f00e74cd52f5f8c196639378a5f20cbc7a5b628ad7fd1df34787df1d9140864b65ea82cf2785cf70fc902307ea88492c57e5f2fc1d5c32ae84a4b05e2bc35861569b2fad1a9dab2de3340c0f9b1243c44d830e796e152f374a078d80302047c435bb50067306502310080680b882ce7c0812106203d1349aee9625288b5aa4b89123dccf65125d3749c66ff0e89b050110f9aff3e4d34c29c6b02300e909e8d5b6a809be990262149b8b312b036bb21599bee2404f2a39aba52ddf38a65825fb30939ddb35bf14bb23824cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300cd06f92e6aeade4f1ab6c89342ff1a72fd6de1d58aff40cbac44fe423a4637951834b339fbc6ea898570bd3b762e0890230722da34ea41647f6af08de92f4ed0396040a57a1fd58b0aab8321fff1c200e6c6336a32bf23468cc06b29c7f449576540302047c435bb500683066023100c028fef56cd58b77243df2ffe2503a1da4575bf135707642e43701c5ba49d0bcc3dfcf1a433d65b829f22241d578fec2023100fdae07e8b9e20de332fb48b020059ddbb74437bb5b551e61376f1fc9b2cb23cc3ba6d72cf6755f35c78869f3d5819f440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023002fe50b2a07a61084973356467571ad8a44f2da0a4c62ad6b622da2b63dd49a88823cc347c0dff7a321c46999a2294bd023069bb53fc7222f5aeb177440d9c94117cee2998303c8f627cab0b25288949662978c9e086d279d5bf0ab5eb3ca0a3dca10302047c435bb500663064023022bbc5544c726404299267b02b6e8a4f78755b495131c1a0abc0e8a84311108b1c03821f17da9a83a32086ae0930207d02303379cc0dd87e1ddd6003b5885cefc5595e46d1bd0886f68ab2f26417fbd55b14896df6fc52e3049faaaf423ba16434a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b1fd461a3aada9e95e9976a474e13f7b427715a68f7fec5a5befea8da027f6bcb85204c16c39e17d27c6711dafaa9c3b02310090959cdf40f6dfd139ac3e982468c62b065629b29ce8141aaf9b363a55d6026b260013777575b275219b6472624eebed0302047c435bb500673065023027225c3aabc87e1cba0b8370d579cbcefd73457beac7c925e2a77d000a9e685626b5996df43e822e6054dc74870ab6a3023100d4ae9531ce143ad37fb0ac8f7929805025f51a9d4d9601c5c042d99e2902991fa7f596ad55c00796ad8e4d5dd2a68b700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f6b391111d92a423d9ee0d6972a17268eb3a35dcd9793d1d076098500ade64a998f036f14b4ca23b8c71435839a7919d02310087859f18633e940618702854bac26fe328db485687369ae0850ff8fad9d33b946e1a58bd31398262a3a3b87876d9f1540302047c435bb50067306502310096cf559f2a7642ce1afa52f6973b103ed52053a67f869ab5484dd0db338204de8eee5295261c2dc1b958970f652a70bf02300441da80f69dd0ffa7f349212cc9b2194b0f87fd03b36b58a8b94b1d896c9982c138e095f4db7601287768e4e03aaa060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b51d055311f70600fcc04b7df23ba3db196c53a12b1b61b73d14e6bc983f2c3676b551139177162e22b8c0849b43d94a023100d18ee03e4cbdc011ae9891168e006d05a9efeb2e6c5f205b0a659a6cae727963c0be1bcb9880803a24ed9ff1171617e40302047c435bb500683066023100f6ef941ede2975b00d927d3eec33272e8589a752385d37b30e57345224de260495fefa331d980bcfbf812a35f4e88085023100eb79d8ac7ce798cce99cf963e1937102f0b6dfd29ecf4af3fa212abb0658d76a9146365d7252dfbd09c0fb9520da7bdd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f057a7e72e6645b81ba8db7955bf598e63643760004406b2ef2adfa41be88b3359fdf87ed23a100a8a0444446d904ae5023100c862a2eb025e403e6fee3a7db6db8aadbf00233b4479c99fecff6cb8b9f85a90d53cf92991b801ed25fff670f95150850302047c435bb500673065023100cf8df449bf3aaf3dae14eaa818e9aeb26242258c10dd2a17da326aa353a8b04a0e64f4b40ae821e0240c336a50c15c8202304d85022f5685f8d6c9728f8f55fe14d94cc7c0745da293f28a8b1a008c345a35345bb80b61746dceb48e9c74909778770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305277938d608e06b1c1777388d8e4cfa1af07837c46cdae25e6a9a42af445f576463972a2c95541348cb2f2a7366fc1c4023032a2d8b4105f95af512a6205f68d65e1a84c66d32d6da8e5d70e197a84c92c493b1a3009a3d1d46ab1976f8ce64b203e0302047c435bb50067306502303619ce1a40de1d6d05d7be3a5b340a4dbfdc38d27334c715792b13027ecec2ca9341fe9b5ab97d971a0097bbc5ad97c3023100b680b26649350ae1cc8506123d73081e2ca04b0698eb43ea709b4dd006f8a30333c086649be089e699a776de3ce03d6a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c7f320ca83db2802fa81d8b1be0403b9424af530bee83c1d22f514b9672f5c2dd155ebdd2e2ce78ed6b03ffbad31459b023100b979e0fa0ab4899f2e9a5a5d6e55c822e3d525a584e262276c99a6a2c9db920ed79db428b474976225916c0a94441f340302047c435bb500673065023015293923fb1b684f56181af5ea6ad3db80ddab1c5504f4ba67aa6cc73f7ec05d8d15624a4f35588ad0b28fea7a08fdfa023100f9c01baa8d4476a16d04513505a0776a72bc3149237863e8af1405845b104d5a139f9df4cb3413e8d4cee57775be4b4b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023062f67c69364c1a3ed4d8fe1e88bea7defa1d6df032aa88003b5e3305b3c06a1674fed974555115a25690a01036b384bc023100b5eaeeb6f5617290e775d123b9fdbc76e27502370acb0c1ed8a267beaf1eb13c7406781a6118eaeb0361cec32986dc3d0302047c435bb5006730650230635672bb8f67e2a3cd076bbfa7a14f3c906f3166c2ae7589b3e93853cefa10baf03baa5f2381c8ddbb97d4c6842fd1cc023100be2dc46829c3307e8ad3207b5857c741fcfe78583251951badff8484cec18a55096c91dc4c9d7d71affaf5193119280f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f108968a688f98a303589a8fcadd5f7134ac35dc953e123930ad6c667d22c28d03ef812958c6f2d1b8daafa3db669a0c02305ad55ca2da1d8190c659c6b0bb3a48b2285ef4ab7ee59bc49a1639c77f421783d5cc693bb508be062edb7abcfdb871ab0302047c435bb500673065023100c4dc18d7aa28176e93e8f5ad5f381f5d97812f1c21ac9ce7f78ce5c8ca9d4d7936de86c9507a999449f4995ff61148d902307611c3d9dd4c7095bbf4ea9d7f0b038df242e56f0d35c5567b50564baba4a62feff56d72b5be9de803faace29b1de6000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c647fcc00517b7b39c9dab5d0fe311b5cef0ed414c90ac84c768e13d57a22399a8557f26bb883511a021e91e4e89ced202310084c4ae505fc643798662830a58b896da4060b8b4018d69ec15171e8ea61f499604200864cb5c0809ac658e985dd70d8e0302047c435bb50067306502310083811acca394617cf36fa6be0eeabefe222d3d788da0ca346ac63ba3b21b33ea8b25f48ce0401bf776650eacdc11b94f023070ef04b7d9e43f0cfe753270ece8994fd603c9c4ba03bae8324daaa4d577aef99c1130890d2893a445baefa1ea5169310302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300f56d82e76b4eab793d47934b7342fbf96de8c3a72077a72aac7d06ce8742a35a097ae5e3f2f0c6da45432c497be0f82023048c5e33306c96c9804ec7ed5fa30acc57b029cfed3ad959067ead80b97a61253e483462bd2ada3f1804ad48f3abe98090302047c435bb500683066023100932ec8e39068c9a4a66d7dfe4592e6ae50c0108b44789a25c5ce7b7f7543567dbea82993b5f92773bf6ac0a0967729e6023100db73762afc46d3c525c51d1e1c12866f07b7b5410dfebbc48e806a22320a564b8dd41f3b1ab155544117d66194ce136c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f11675375bc174b5271b5e53164f9355d9daeb3be345b343db7fe29d97787825ec3f62c5a36c5a45971356e129ad80240230163ccb3115f26cfac97c58c486cd382ba0df7f0d21cfe5f0231025fe30bf9b59ac5c39ea64bb8b537971ce732ff26de20302047c435bb5006730650231008a53659a9cb0434a6135de9858b662b2ca3a4b2fda296cde17d9ccc30ce11aa1f5796739d6064b8671656eb604f6b87f0230463ae200348b04df9f87357d91ffafa57e0fe490731c3d50b9d7a0256254c758525f532cc5dae92f7518073a702f32450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023050ee9520f07f52ec1123d8f171405338569658612b808797bcb77fb15cd0c65675f55206abf45241af2cddf9caaffd2c023100c037e5b3229b09fffe29eaae0a77f2778a351a8eb5d34c33733a861ce6e8bc48e5ef1c65a3a8fb5682fea8e53a0fa0c20302047c435bb500673065023100999e28dde81ff82075d0e1cf1f10d3d1076bc09bb2a011d8fe24b5a2d9674b8dd9037d33ea9f67dcf1aad7abd94cd74f023018c4dfc9404e9325acbe6be625ee25b0ac2d2a7ac715e12521bd7b8ad759d7d6df746c0c64d119557d1bcd8a890bcbae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303afe8f90a5759e270d1d80459d93edd97279b4fee4075696b5b6fae454493532d8666d902f9f3e35a91f5077d82aa24b023100c78d3f6562ea5b1d597b51341e3db4584988c31b6712ea23229ca41c72197b936dc5b5a1758eac5659c40325f46808050302047c435bb5006730650230573f66317889678a1a512240a6433db6bdfc5c5893a40f8d4e6e4ca55f4d11d6bd2ab3465157e5cefa4fecf4aedd082e0231009c6d01e3939c55b3d10d564d0a913a8b5ff3732db68d758cbc33ab9e9bd08ce510347fe85729a2415e5c2b62d979de130302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306381f7bb96870cc357a92a255fe35eb7d2eef8a7340893f9934f005875cefbec51f7b0e3b2a9091409b2edca7181a42a0230293acbcef3a144d45b4efeeb4cd444cc5708fb0517e63815c0a2a07b88269696eb87410f555a6a21c19c7a8b869ba7c90302047c435bb5006730650230465fc308c3b0c1dcbcc5ab15fa123ddc376c117d207dfe37ac92a38672662958f2a054b6dbc516e516841688c22fbdf402310094605ede2f34af98e957714b843acc55640a634fda8dd9a55ed35450cc99e151ee365d5f95dee6a9a38e437648bfd8fd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023038b97bf6242858b1fce23d440ae85539ae2fe4198fa6440ad0f4a6babc308191e36485c6ba4700c47fda9ba5949442210231008b82a1313fadbe43a33a46327b840a7d189e3fc5e88fa46c91d21788dedf9bc02cf6d03907984858582e33835ac07f7b0302047c435bb500683066023100a3daa53aa6658cdc1729731f02c9d24ec7d1a539bcce126aa7f49b86e06fb80d3b58760b64304075e8629932b039b247023100e4f62dfc23b1ba26292bb2db5b0109fd050e8c69211e2d4af2292d688d74b6aba0edf346d4a3d2a7e05a4d446ea987280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bdedccd9044727e4e4c922bd26390ddd99928a34d93161ab57b14739422440cedaa0c6bbdb0559b13a079d6091b1254b02303c76797f55cbafcb7c7a23ad9fdc8823456aec602d362b82183ff02d513bccfd93fc41e81904db6094d6b9ef09f262820302047c435bb500673065023100c466e0ddbac46d3e18e70019dd8ecfbc0e3d81638b06306a85dc696ff7e78f416c3c7b1ca36916f64c2a7258155d8c7d02305a389416abe77e29abe5eda6dc4270b333ee72e22b2f3531aac6b112adf7c1c40e21b0f81324fef4488a8b28310068160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2a93357177df39d000eb19e6605beeae85299c1cff2e0909edf58dbef093824ec15f5164ae1dd88c2c2cabba6aadb7902303110c997d298bbc0bf0a8d78b301c678735b3df9c6addc0ae0d14f5508e6135413d7e3979728596e1ca7bd9ee40021480302047c435bb500673065023100aab0b2ea693fe27819c9495515faab10815472a53b878be0636c7cf8336016a0ecbc72ee68952f01fb6e10d52949dfbb02307a78720398c6c9099a24edeb332ec98d5d65e3a37fd821ffc7d58579a710d74b2b44bcfc953fe656ec795081d72d737a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b79dbdfa6d457fd9f1681844cdf9c9a8f044ee0fb3a6c467d57f6e28a85a4ea4f58d0421e9fdb0639f173d7ea1474f97023061558ec225a79fab86b6184cf493d8be4608dc821b959c76580fae0c7cab4786dedf5b3939bb5ab594a889f084cb4f620302047c435bb5006730650230660281937c4067d86b4033776ae3e82d29d3cf313617adab27a31c33d0284638c291ca6e01c9d63e1cfd90225d86b81a02310086bea993fa3c402f97cabcb3c6645cc5b605b3e66113fec8cf7f923db3e1012d79c438ad33d4a99d9beb0f26074334d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b6db03946d92a22b7258f01e10f90986afb41c109a078d599482b8b19e4e0a676e61e09aa612a6743e920865b6019e6d02307fbe4759c67b0ce6de3e5340515e19420469b47337e6fedd3b35037af84140a43e8322edde6ea0c7863ff340de4c839b0302047c435bb500673065023100d7aa399335bc9799dd05a4f34e33448644ee96780c555e801351266de5d9b0323c66c97f11774807b8d4154fc6ea1dd8023023b823478bb9c89385333991440c30a467fcf264bb3456998c2d7f138a389a48f745669313651fea2c6c0689f01e519b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c2a6aa6e51eb346f9ca67b7d88bffebc401bd69db1c37ba6ea1f3a05962370a069432657c30728fbad935188bf78ee150231008ce9f288c41d1386afd8ac2baca59071cd0c399033d7fba9582c1a94adeff8cf25fb274b84f6c8e5b4e250e2229099460302047c435bb50067306502301d826ae8ec5894064e12f6e1df397a3270c2332d1cc50dcff3bc80a773110b56adfbd2a98bfeda9cb9c86b72034b413a023100b2474a50fb7df5bc8006c2123df5e41f30d81a6f5a567b62ad6822f271858d32873c30ffb65665d55972b35fbbf517da0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001f090c6c009ba789098f225779430b60a23296695d062b07879ba41135d5f1ca5fe01dce58a86ffbfe899f27d88a8500230055903ff47b99137b70d324aa1c701b8d6baee1d1d35bd444a862aa70712bd9b67de4e2fe9d58f180848deb6d9fa6c210302047c435bb500683066023100d7816f1f07e65ab5ae858b2c45e9cef41b75c9e84dc2fe8c6c23f8871636e0338def7f47a1da23da229e38c44bd23aed0231009a7e6778bd48058bdbff897e0df8055ffd61ce10197b8e051600bbfb7716d031dc5197c60b707fc4b45fb74ad1b4233a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300519716c251fe1a1e1c9beb0e770ae8f097263751d84333508a27053e7d035462046fb599d5bf98c0dd38ca192dbd33402307e5bdaa8190f92901d56e0007b800b33e6f2181f49a9098515e3eadec0f31b32ec194dfcbdcc66d04bbe4b8957119dfd0302047c435bb5006830660231009411fe6140694617abbbfa36eb0f0528161afa3fd4d93ce9f6fbada5c67d89077a0a63c0490146bb9b7a875c9d59468b023100da92013e6d489af42deb8764a5d6d15ea688df81e21b00fb0b980bbf96f22e241c4833d842980403042672e251ad4b0c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306b4fca0c2ac38a5d6fac00a6363c5db4b57db1a11c4916ab1d2eaebd64df4d58c75abb89a3983d70efa6b208bec8802302301ea92e926f5e7781f06163b24ae7227be1129552476f691533794fdef0e13ec35c1345dd842d118645164163b48a035c0302047c435bb500673065023100cd6e36658953f1ed9a66e59006b8f56be7ebd1a2a766c1c3886ea71a569c737c3ca3ddeec17de2a2ef6d92f1db17e8e402307b46e3dea6ed3d16b7c1d142625a30f09a7ce7936624234ea7ca5bb91a952198ae4f8cee3ffe84253759f956c9e41d0d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306af9d5bb8ca371c623d0773d92d20951d2716800b1a2e1b66a1fbefbfacf632a5e7b8e5c00ac60675e2648672d06f819023100ae31697e96f28385e787c75566034c4a943fff13f12ac8edb80c30bf6a2ef7e954c8630c42fd8d252d433ad4b61b32740302047c435bb50067306502302b22ba1f0f09bbf1737ca5b925ddbd1775b148bd11ab8c315fcbc709d43e6b30d53cc5550c75d88c59fbcdd922c0ecc7023100a6bd6933c0493bf4d416f6e1ea827222f7a4d61472afcb2ec1d96a2219cc56cd4a80ce5c8ea2af2d6004fa80f2bb00050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310089f00c5eea62f17bfd7741070513398771fefdf58bf518db97f5506e0ca6ba2ec277f1e2d469fe7a7f3ad3c7bf8a96bf0231008dd26520c1c9065445e09a3537391ef899cdde506713d211945f8de12fb4aba860eaa0bb0750a003a28c2e961f971cd40302047c435bb500673065023006c96d8f44caefb3e01b31236c994c3d2860c5beede946847cccd765cb0f8794101c4b6d9e5739c6153f38d369f9cccc023100b36ba03a0c05d2c14962811ecada9c0d24a880d6c15038ac4aebdfcb0c60890a3773ccb9cf95f051903e8dc8958356230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d48a577535d830121d237028734b2806038720ae24010731f36a5cd33d7441f87f85f4cc5e6f159cca78c8dc55a01a7a02307121697899e2055b3af0c2da192c019ee5cb6ae18f03e4ca408ec2180c2d5cae7bea69cc8c07f40cc49f295abb003f000302047c435bb5006730650230776a1e3f0d33dc902db87bf5795ed2fd6f60b5b78c2ece64d2275ba3b7840118e386c6599704b091b705e5dc6111e0c4023100c735d96789b6c6c9ce361ad80be3e4db340601907324ff84602c688bbe037821098ea008fdb4b547a1752fec6fdefaae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304da8eb571ef1f2879fc16887ea7d09d2864181d230de1fa8495240237f5479c5cec4c921afa4ae4b3d7eda6a83ac24f502305ef0e53572d9b0f1ba0d87edea789495608561363b4ec6efb7e237849e7258017716739b2c055db0c18f5691c30b28cd0302047c435bb5006830660231008c5f6a9658ff5c23f1319594e18d646438353b2b9dc70c8c1b0b25db4982e2e327c2a7fc70365dd359d801b99d6e584f023100ec9a7495985e3a15e46cd039ff816c83e66b87d42e9bd28f1afb9de3026f25ef6f57557c886e5aed3cc136bd8c2bbcfc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023059d71b53362ba6a2bd07106833c3006ab6a5310158f551fb3586f2ff64213e70433513b1023c1aeb50c190d617610ae702303e5b75d0c36af56dd00fc1924b48e3395e40166a73ca0642523ab957f06e505a35a09a9f278a4731ac531e4d82a9c37c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b9868b20bc4160f8168de63d9689a2850abdcb3554435aa0e55d745275142f82b01edffdcc99469797ed6b8ce71948c7023100b971b3412da593aa319741423e075da872ba9eff10632d1ce21611b2629b25fef8dd54a631abac5940660e2566b3dd790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302541a25c0fd8a455f9bfb351d8494eb472d9de19305a466cfd30f53cd6a19c21af90f7cc49c9bfbbf430df747b044cc7023047dea58a1a9e48d2a9fe234275250354969657af3ebe0f223d26ebe1e552ab0ec7f5448ac4a1081104bae119e58984880302047c435bb500673065023100ed420776bf00729082fa6909ea035941e931167a3ef4764e0e36b896e28ae453662d636563f2f4ae486ad4a49cca84cf0230530ba6b5aa99c5231d473348145f8e59e12ef79d8f2aa14fc068b622f2caf60c1d27f0923c47409c6a872fc0c0ab64790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a5d230585b7611bba1f05fa705241d65bc3a0212160899ad60e0f556f0dbd040a06769fc4082effc240c97cd46fc9e0702304953cb679f3b5b44f412b77b89911084dcf840f5631810635a2aa0704b4b57a73e3f978dea4fcd90070b80b2ba3e4bbd0302047c435bb500673065023100df560d50de88ebdeca3d40873ae9f43ffd1fea18cdc215585c534ed26fdb7d672cba3cf8010298739d132489e16e026802304064e0828d58438127f1183f12974465e12e4d25bb96b0fed7684c745d6ff77b8f00dc9821b4942a579a742a480585e80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230249125723531a04c27d3b831b163e2c3c31bc4d7a767b88556688f0f185810b464f31a2daa02e079a6ba0a11e9bdcfd60230062519a55eb6fde5adb97a030f2211ede99fb3ada488303933f7a1c597ce180437de3343398007e25bddcc9c347130680302047c435bb50066306402305414754c0599b45b1eaf428514c35b0356eb34b461c0a8172713d8b5258d5ad79dc657f27b5a1eeb7d50e518a8526f5302303c8921ec289dafe8d46100c3ded3be01e6fb0226060dd9ccf89cffcdffd4e51a260d284bd5a7c0a5fc5e7ce3d4d1feb60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307acd6a9c7f9e0c08aab6751dba6ca2f5f75b62cf8d98303ecb0d08741a30535195e2c03286888af8694356a9969d334e023100e2786873d20939f4f3c15ad54050ff107585e339607fcc818f39096b1f06c0af3c9d123a24ae29022cef7b6dfdab9df00302047c435bb500673065023100c1bdaa0f94b9250f5abfd674fb1f994bef1017404cab9a64587fd0fe876c006ae685aba198bd70ba62f775d9b261715502306c52d2665bb529bec319c2b419af7f7ff61159b39321da4c946c66c27e5f817e7c48a6c486da6be326590569de64e8f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e094742bc016b86614848fb05c6cbeb9af60e0201daf0896252b9c28577247d84184b5f8f659d47980b325d330343ab5023100a87d630ff1c1fb77a9d62d420ad7af7ebb51a134c576d8b4a756443947561f706423d0d66128f83756b662a5a2fdb0650302047c435bb50065306302306ad5ae2b66eb9bb71260c3bb3e80c5c999790147dd23c04e11560c6e0d77c634109ccd73908db11b39f1ed317908569b022f1f049899a9f95f38c905180b24dfed0532e1ab384b5929a45beab8bf904f8969b15c4bae5d566d405df17680b40ab00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d8c3ea51b48c9c106392769ddf9dcb7767817e3599c19647de0b705fc1de7a2c7c2f9e2d9652e36b32ce10e16effcab9023100d522c598fef3f5af91639d5354929a419bebb92e8c3a76905930ce82cad5b9d68b8ba50f70a33c8eb2d2d778432f85120302047c435bb500673065023100bdb64c9a213178a4c7950357b1a5000d1d2bc7d4671d58fae1846ec65cbf9ff724890b110f9ec6827060d5b08f55cd02023009378989358e7022bdff2bf367163d5265d6dc4955b558b53140cf23e444255c42d891178b5c17f8c28e4ef0fb5b27010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a3ec678b6a800aaf2c6a4ab3f562ab67173718fcc5b01c965f1b8974a9cb19413ba9fa9c7c38796568b2e040db303f0c0231008ef14f799b77af997bef2c85f39d2b91d9528676d97be57c7c96492477c6a51f5c7e00412314fc76465dabcb313ac4440302047c435bb50067306502300a2de1ed8b048316c8f25ec438a9edc8ae04d9411f41470a148dac499da7b2e6dd167b1740b031232a3a5a1db156284c023100c0e729aefba0cd678219ca4014d3b07adf4da4465a53a236d8fd5914d8fdc3a1d7c140c8783f1f7a91ac5a94ec8d96690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e3d0ec60f6be5b5c898826641923393dda149657f6a0e5297d2ce6f3b5968d87f36f97541ad594b8a63f35512527bf6023100920791077707f4d25f237ff077bfbdfeae8e267349a8ca822feb45a0da1f4e79bfa3ab53943ff67561686c3ddbf287240302047c435bb50067306502304c581c50ce33ca4e7886a3b247d9f012e649a41940a5800dd8eba2bec8bb1a5f5d315785006fd9b75c84936d34cc4f48023100b076ea863bc36dff072904edc43eca4b49822847fb8dfd143153d9ebf3444f0b524cf423858347ca2290cccab3952cde0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023019b9c58435d04b1f9cde68c82626dbcf303d3527ad2f2ef21b54b82b6e196963088935f322b7fb3707435674e4ca716202304d76e965a3b10b6d7aa54952d4ae16b2aca1b7ca73c947d274abc13ebbae576a73ebc9b010acd63e0e5f9354908d06770302047c435bb500673065023100baefe58d03a41aed7cbc17d1eda8448a7983f45d8a97d641fd4ff3a958fdb43cf697a78705951c89e69c409e355434db023018a6f9738a19230ea6ddcfab7580d78746271064804bdbc5b14972419fc784c5ec9578f3faaf97f6f3e93102eee899510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c12ac4bf2a8628d0081befd3393ae88307c5f318d3fbe237e21cb453c987cca6f98b4ed519d94a11e46e119341f7a18002306ac0fe539042604e5d905b33c656830c073eff31ff56c65687c59be7fa98116216fe48fbd0d4ac1c59769d9e546bcad30302047c435bb50067306502302c89ca20832db4040d5835dbf1e674b75e8111439b14d727666897b2bb987217e309dd20c9abca5a067358a30d30890c023100a2dcc83aa955f22b46d17019544d131a5d00e86a17aacb199b9d67978726f1b110d29a46cd6ec83038d082f2e83836980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c5446271fef27fa110b59d24c053162887cdfec4f8f5452d0414382f1be7b49e9db4d3a3338cc481dec4c650e4fbe8bc02307981ef53929483e23f0663e6c35361b008a7179338cae9f5465cbf938ee557ccd96fafd75764ca4cde157e7f8ed72bed0302047c435bb50067306502303f88875e9a03c405d2f0678985e2b59b2b5e69e395847f4afa255f0a8c91eb1a3d5887d2ab8a6b1c7b59bc768146c158023100e729f503a2adde9307ce166a7c8e5cb88fd9ee1e70fc3facddde63f5e7209036ac40ba26706293c2565bcd208399db5f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b4523f80aeb0e875264de7d95bc0f4cde1083c00bc81a30837eaa2813f4fa33d3edca113000050cce39cbdf29117b22602306020aa5afe92797f8d8ac1675783b8c5f266166ea44c3f2b8bfeeeff07eecaf92d886ac034ee18a962b34eeda4caed0a0302047c435bb50067306502310088db0a53aea666ce18a1e37c257446f3dc83c1d69ea0b1ce788b8019340e4f92beeda55860f9b2bfa017b362ea9ccd7f02305f8d99a0f12b107608f4e3432b2b4c62b4e9930bd0b58c676c62a20854cb469f6a80f442b42094b8243b56930984b2070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305a72a91af0ff5e5a1d6a1bab91858c9e0ccafc6974375c237295ed65872468565104578b07aac16c795864d23e0cf3e7023100d83dc2421e58fa00a91aa945e4d223bb3aaba4e3d2846ab55902d686987f7ae0f667bebc5f5dad3f0a9c9da5a5e3544a0302047c435bb500673065023100ceb3592a6b8cd1b91cb0824e9a4567dcef404473454a368ee97a705c9c5da67f0029fb28024b6c31ccc74fa1a0fa7d8e02306dc296613ce4a4ab938de17ec6693ef94664f84bdb61ee90ab766cd7d11bcb9454e5cce4a8f1138e3a6d95201d78ee6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310096d3a82c54a31b4d86316f37f35b5aa6d34b8453a731dd1f3b79ffcbc2a6d2f7b8fc23f1fff94f135e61901bc6868d04023100bb798723cf5fe5eeccaa5b8f6e1e891cb17a85ff6007fb3bbe308b8617829e155398864b98186e0c493c0499d948ed560302047c435bb500663064023056bb8405f7aa45c03cd3fb2ea780f70cf831def22ca036c7b09e3da421fc127e69ad859c44078c89109dcccd02c2641d02305605470acac084e971f6e226a179bd0903b0dffa86e71d69cf0444d6d5aad118896f2f29e184a5775d13fa92bb5100660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100aa274c590719d56171763a29f247d404056a7a3e5f72d3c32dfa88e339ce0fd3ce3b30c9538a75abf0229b893263f366023100abe86456f8dcaf25a509822c7d3a2c5c43c82411bf1b65671c0068a144dadb5e75647b48ed1e01a4c99493163eabe0820302047c435bb50067306502310082e04eea6636c7bd64cd1b5cdf7d647bd6408584876c2f01336ac07993431216aa0ce54f4293a06ce5a23a24f4974bce02306321d12ee89bee8c201935ee5332eacb894f6d351fc6e5ddf210d16be04d33a12ba4b8be045d89c736f1d24e7964cfa00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307c0b8101a79cf1c2a30b376b5cdc1cfaa6f5451d4ccafa8aa81f6ed4c1339cd7118e9500cc49f74ba8fb9766852953b9023100fa10d715e6c687fd3c9977f0e986b4c0ef9599005fa5b6a05a4580b381a17a64ed2b23936aed2670174ccdc7a771553f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e1bac8ead7fbeac159272fe29468d4c433b0fc6645c63bfb3268b18f9e6dc26d3c0b76694bbc58fbe767d87a33e24aea02303d0b2e56735836ec79d7a304d4a15aef7b2bec50cb0f4dd3e1194eefeecc017d877b5fa7a02b71d562e0d2c567b44d4d0302047c435bb500673065023100d5f35e70e3534d32cdf7896692c5df3d78537a527d5c2d3ba11d16d7194bc4414c8635b489c7403496985b462c4b2906023043a37b3d95df336091a2cd965bd66d2ac40100cc2637a946384ca8d2e9c49b28097b583468fc81671ad0a3cfcd1cf2220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300a208687e7402c616247bce1bc9b832818d13f8d18012dd38070bb2cbc811d5630d6ec9699b313d6c8e13a6e7556764b0230414df754fd345ae32514e1de98548e0ada4397eb1f2c30a3d22d3a57dc6fccf74fa52d9488c343e2d9065eb54f992b2b0302047c435bb500673065023066ae2027b215e2383a65822409bfb8d3a9e796c0b84616049e6811375812c6f0ac244a6235688da856db2b830ffe8da7023100d25c49142bb40860ceb7d82a34ab57c02965200c572f89486220b68ab885d07f06a84b075e6924420cf771f9e30be4070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d12181d932d8139700d8f1c0ee67c681c0aca8041b1d456079a293cc59bef9ebd75badba8fd8ae22402638a6987d7b59023100c45ddfcd0ea743b2b8968a15e0f3e429337d092a3c0b4978c1ce1df8f0470016f97060415aebab7ffb5f078128cb34cd0302047c435bb500673065023100d6330d3a2b893a9dc11420fa7be301abe6840562e2b321196cb0f49c9ef9c9cadd2d88b5990996a88d47ef826f577e7f0230228b9a958a4939c9f15d1139e20121ff4e719baa3fc62b2fc3460980871b6f8a33e183f20677ed202f4cfe79f4517e820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c9129c2f451872e7683efcfadbfc7cd7ce87a6819dee78602cf0239604e85b20adc9a383d856fc383af65ca793c6b50902310091446aa3d028bd9ce9ef7faa1cde0e6a18bf55671d2cfd0ef54b05f1cb4f243ba103dd199b6232ba56a972dd427e3f210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230727cabf655640c066b9e1ea4c1337dca11a06afe9d988c3cafa041b2f71be3c30b5a516965469ed1a13d5de1e233d0ae023100a9342c4dfbec2b5265058c6da51b4c1cceace6ed3469bfc5d0ecb72e7d08f4c45b9fa8ba24254e0302f1d827407e6e1c0302047c435bb500683066023100e1ef3380f450733d1630bf51a7f8ea214960b076ad74a0cdb080bf185567c22f3d5dc99baef8f63248232c4017358adc023100e91104955d95e0b4b6a3d4fcdbfd6ecd020314a5af6c470d5e3c47322cb0b24342aa2c92549624b4c8072f97929a3f8f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305a31876ee0564a4a352f0468eea20618c6809abd1f322603855e9b38ded808e34da608253b2f92df49276a9d5cce68490231008569f30e982813d0eaf5f4863eb7fa678ed300ecf6aa109baba2725a3f73f31c1a4ce59f76c70ce30325e108f6ed56be0302047c435bb50067306502301cf6164bcb01dbc61cf91dfa80a0d24371402d3900dbdc14756127e984d16222b16518af024961147ba98edfb46b46c6023100cf18be104c7a82da059d2126e666c9bc664124da2d8a04279972d742638e92f09863e3e53de7a012ffb9813d5dab80470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b5d78e34fffcdd066a02cd06d8897ec48a7e1453ef5e4430a4660a056305132e9910f5f744d005a4dc5d29171725fc760230600c523bed9df0bcd250daf32980cf7a5fdb7db76959517fff474e3f8db9191a42e223070f941576dc6eb1384824b95a0302047c435bb500663064023064f3c8799745b2753d7f6fb9faa1b35e97be3af8c10b65e1c5aeef39293a7faa39d070e54fccf72640564244bef0c46402301f024a82e6262fa5f179803811fb7c72ee993065c7147dc62c92f29f50afd712ce6263bb62ba64f43c837239643593ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310097df28445dbeb2cc4a98d3668f0736700dae2cfeaa83a53ae0ee0d25368d5db5b5efdf13213df6785a24990b0882c25402301f5430e55050a304a4a8d157fd1b753af1ca93bd73ade4423101c6453fdaa7b3139d95306196ad3b8d9843d8eec90bce0302047c435bb500683066023100a8e1c58d7e5df47debb2810ff0ff9488c8ec212568a4e7fd2fc5bd828f91bf24428475589c5f0757619f1802c3d38c4f023100c266c01a5bba30356a1d9965bcdcd37c34c62eb0a67d3d8f98ede863c1bea308b7da4b54eaa1841ec192e54e74015e760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100abc625dae5c431b576ad04cbb5343167c353ee1a4fe71201f69919dfc6784908372e35ba1ebf23bfa496a20032b4cc53023100b24a1aca72a74efb756c87cf6def478db50113ae35679ebbd27aa9fd8c6a83009e9777ad808673066ae661f5bbddc7510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb2ad6247eed1220f470d444cc0342589d6f01ea923418041f99fd65deec4b9454a9dea9059e110e2a7b9ff9629e9473023100fdfeb035f706b35c68d2b87d6c22547664bca81ca4e2f550f3119537d52845cc135c277602daa6f41e88c5e4f5d482440302047c435bb50067306502303b67a5670d79096e89bde90124b291f5564101e12908ce3bbb72d19fcda67812c7d5e03411a9db48c2fa18c2bb188255023100912e350cc49eb89a2b81567958b20b036e84476a8108c5d1a5faf66a6b28d73dbdc894a4844d6f418307b855b637a6ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086ac63eefe3ab33713f032e229b66f282b1c7e8247fea27328a144cc929494c2935190da1c2b15e9d81ad1a7eb9ce4240231009d071b8835ebc7922ce92e7cc85975eb30f447f5acd2aec5559eb8b1ae4a11fd96d2a0e98de640a8dcb34cbb6a31ed280302047c435bb50067306502307f6c318884ecd442526faa258663981bb0b8306b2f1bf7a5b055c4dd6d881ffcfba5f8b39140a0e3fc203e5940cc30b1023100ad209caacc66f72685fcbf4b2f1d65a74619ecfe1e31345b90692a1310b0591c156d2399d6d5a8da6bc2b99c5bfa33360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300c5d4ba37c22f20965f4c234010f486aa20be2f086f3d205420fb81a0f42086bb9fb2cd431cbdac47a0b265c805804be023078942f657bcebc21b13e6978872b310c2f44bfb6e95ba787a95810a5aec5e07a1438c593c87971f76c385b00eae1ee5c0302047c435bb500673065023100dac5157548f0c0e30a16639c3931eff4d6d4fa0fc40b24ffd1ff82f3f944d3c1a151c618415902d5126df3851367eda10230774cd02c3c20cf2738c669c6491abcddb5bf359efa1ee3901747c717068a4d04111ce4fc0ac1a3c1b3dc33cce28418710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230223411b73d64ca72646312782d348ddbacf14dda4cd6c5d19b3a0841fe7f3f5afc388c9383c3132e917f09ed64a24790023039ed36887c56b44a248b06f5a525d19e3d2f95091fe3c892366c25535c8b51e3c7b54b5e75800e6cdff3e102fb74f1ff0302047c435bb500683066023100c03d73d1413213c1204c03bccf476fc37a63739588ca2c6b2d2811f5eb5a06951c570cffd8ea7f05f0be7f395f96a7a7023100f6e076d71ca281d782adeff2d29f13ce80877b9da7cd32f52aa3b35d8a35d0b8222515c4be31b5a61c9f0fbd92f8f8140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023052738a719eb6efdf8bb388c113a3797d02fa61465372e1e41a3bbff4d1385d4032710e542b798964847c178a2d4fd1e5023013a6897315b60b3a68e36df7775ffc7fb0e9c0cec38c17c26932f106195fccd601b347f1e2269cd6821007a1617c64210302047c435bb500663064023018f3d36f35e830a22c5f1706e4f6153e91275a6d54d54f38aebcfb6bdb84c08fae84732a9076c72fc07e54eeff92840002304b478c9df3219dc6d68fcba45fe33dd7189803ddf867bcd93cd05daccefa8ea6095eaadde2354c1c57d3e7ca996bd9e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f71a48c92a9fc4ae5364401ae806d6dede14e2ea9527a9936eb43ea846d716d767724863db0e596c2646194c54d8f119023100a7dd2f4cb8bd5e6be23caf6db489f9ee81dcdac1b9cd1d117b0afa9576ea2c36710f5f5f20277987a84456cc14f755e10302047c435bb500683066023100d0fdfb429ae478b232aab7a7557ee3c829d05b9d89240859be8f33a7acc0b276f822e9f45c4870b46e6a9af001dd16f9023100a3f0265a569b60d4e29cb8b7b378bfee2397ae86a863cf2f08969cf619a94f3e8d6bc1d0c34cf9aabca0e35f0387b16e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307916271037903a3fb2b67dabbce484c4dbf1eb5c4e333ae56daa92ede6d4a6605e33ffaa774ea9f6bdee4cf402ad3806023035dcd707e543efb7245cdb3266688dda4fba448e4bf1b3ea0b424f349d8daa11d7bdc58bceac67022eee3155c6a19fe60302047c435bb5006730650231009c3eca0321ebb2d2d3faad4ac56ec600cad18f62760fc647da2784eff66c9faafff42dde42063fde8b6d14f5c150db1c023012b8b66c46f0b0b3c5e3cbb0406a10bd72201b30aa12e07ea9135cd97b2d6a8412702de6f7c7f2d58d3c263c663837500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303b8e06f2f668e1f78dcf9b789fbbe0b9e63dc6f37efa9de6d8da2955226fd951fbe17348f1415030bd71caa9660e05b502300eea423334f7bf9e43ce8202e80ddcbb3cdc375e37fc5fd517e68c055726db16b21a109676c565e877593fad78705b880302047c435bb5006730650231009a0bf588e358d958d42bec89fdcf4dab1f1bd303862f9ec5fd6f5abaf2560e6bcd284437c57c00b5ba291720fcc59d9e02306bbd4bd9ba696ae9b5ac892a22704601f08bd96232c5a9e12ccc4a3eb48ba139d3b8227cc55cb6581ccb4e64bbf08bc80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023031ee2fbbb8c25ddd23db177b6cc5b614796b3b4eb42c49f0a93858db8db485f0aa5ea485bb2ba8585bba08d836ce4ac9023100dbc7f96b5b6fe20832ba007feb9d94bfa5c77884921e47d6a95aecab2e8f07fce1b8407a7df50536d52814b168873ec50302047c435bb50068306602310088ee6e163edb23e3dcab7dd00c9ef912fe01d76886e4e1a9361445f5d268095f6235fc94883dbf53cb914349508611ac023100c0932a2d577ade97e926e5f4fc6c8d77b8454ce152ebf4b12872241942ceaf964f3b4708491e68035cb5da3d9da80a9b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305c50c4c04de426fdccf8ce6e31de5ec3e096bc5e6599ca37492be5e0e291f9ec297f90d10dd0c8931455937513c560910230600af56556b1097f954997f961a9e1d1455bef8a44b6764a4aec909614e61296cb26cbb5bde1f461e80527a7481a6db50302047c435bb500673065023100831c283783becfb7580b8018b9c50b26820eec1e716b4ddfe26a01335affb24bf226e31fe6981313333a766130f651c9023064d155d01e5760095a38700740af464ce389c03193d659e944d366e88ef26902719af9bf49bddfbd904969d2174d77c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303d37b08429c0f299e1254e1bf7499f9a4cb93ab1591755aa98669f9483d1fb86eb4232c0db2b51f81d495e566ac4890802306059ccf1ad55b4b02e434678b41ae38eb3bebbe191c3ebe01fb687b658e0c3f527d7170d78645f370b601b01158e59500302047c435bb500683066023100e29c625beee8e0ebde4060dec73654e2970aab00bab23f8550ac6a50dee25e3e0955b59fa86b41fd78e9435f71f5e03b023100d4a97a800238e8ac7e72ab7a5e3a843866f9fe92984cbc9e63946c016c76dc1497bd67d1cb7090656fe9533cb35d3b250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f0d30bf12e44ddbd697f6c63c69a3e48c91c8a1abc703fd4d52003435b57675ec6c4d5357c3530fd8f6fc35ced2df7b2023071b5c1ab9d7874b1f9364547006aa3ab1645acb64da0fe7f6f2bce317381a1937d9e595fe340fab1905762043db7e1920302047c435bb500663064023004c17968340caa9237c0c8939ef0eb7a64475358b7ace8defbfd94f18fec295af8ae4fc8860b40e2d3febdba7d710b17023014c9c60bce90b35ad1d40a9d3999f5fcbace0b0a9cbf4879d1d8fd776ccd6a0a23e1033a53bc131d5923b7bea6b271100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023007906dbfaae90f9c4f0dcb8ddfb4411852016b779a915f5daac43054b37f6dd5f8af0c70497a764f9c117a833d4bbd7b023027c3d195c994e90dcd990547ac6d23835d3040bc6d18d5340707e3c50d0a7fb90c909d32d663920bd238c490abb59f940302047c435bb50067306502305c3ba30780bc6d8da99de51bac43a2e9887b92e262acec5bbaf273ce62b9f0c9730980b9d2fbc5b06d90320b4cd1eabc023100de438ede5a5b7dae55c94604b1998e20c7cdb6858627b243e9403b551c48558e811916c9a9b23c99518697b548e726720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091bd61bd0ce7f3a34acdfee9b29adb840ca64af9c0a0f0ead783dc2383cbeb5255a44c669b7c9f5e486316fea16514c1023100c3e9f8f6120b07ac2478e99f52122590df895eac8e8c0706313148cbfb9703cb439a26ca9fa7dded7ae6baaaec09eb180302047c435bb500683066023100a87eba8e8c67924b664f45fc06d89189added9256ac9aa1deb03708b2e09abf1d3c0f84f6916e905fbf56f8b25ac1f4a023100b313eae2c0a54300eacc433107a1d22471a3d5a9a3fc8904f27910823c6b3bdd71ab9f20ca7072b817c74f72a992140c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6444975974e44191988d4e1354774484f88ecde0a3db5c2146da2a542d8ca4935b57c3207c282527c814fd692dcc06c02305da7a356faca7769cf11b2a227547832a7e142160d545a068f632b135adaf18271144b06eb022bf345dbc148568128ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307b843605ac439ad802319a5c481181a2f03bf708e76d214de4d07e88b5c91eb2d04b8b0ad821cb529829146b19e49715023100fa4ea750e2017df49a73a56bba0b48dc5905edcf2d8d1a6487de9beea8a717fdf63c4db850591215a79c0649e705ce590302047c435bb500683066023100ca5b76d6c12e5eccd352c8e867ab3677bfe65cb791d8817019862e7960e6fd632c8eddbe38f8d623055ded6292fda263023100ecaa5704a353b35e23aa5465605adc668e9f10d3e2390ccf275a99093f819e9ccfb1bb5d9adf5c10ea200010ca6c26fb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230568490975f894492253bdd5b6cf889690d5dea8dc5e099a52094e46d47ab6e64967774998332504db6031b67371af411023100e5a8b33438899ea9dfa1f5bf7143fe3fc743c67d3e0ea80cae3795760988786aa7abdab4463fc4a9b8a614c6318c832e0302047c435bb50066306402300e7ac13492660a98c9dc881cf8523ea5be8c600b78c0f81e6b8520b189dfbfc3786a899175b027786727463d389a0ff0023012a12fe103657e640e9d08add8246c97e2882bb8f717272a608ffd3d394183fc045e5cfd94019d10b705b8ef1a5ca8b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008a36c7567e7fdb5b165a05740a4038a8da4eeeac722998b6233a75d020141b9218e83926b7a1cec444b44326edaee13b023070b4c7afacdfa678f9a417754cb8769ae228a08d2b4850f1461bcfcd314b3992fcbe0185b967cd7fb226de695175d9750302047c435bb500673065023100debf87ebaae37313d9e292f9ee3bc4411ec8da586c70c4a8fe1bdd17dc6a72470e8ceb890747cd1d40e7271aaedf46f6023026019b4e676a51393b9532d083fc364afa4986f1829e67c263dff326a62126d8fa6aa5b4dfa41e0f811f33d13665174d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307f6ae1b8a3152cbf3615650a82e7006a29db8865daa06ccb21582ca2fc8c26a007d079f1dbc1d1a3e3df5f63b80074f7023100e6b8907966f26eb59e729a886f7f23029a8949858dc98ac50f9e8b0e1a127b00aeae93adda50738c00964d5d0b1a7bb40302047c435bb500673065023100c8cebb511dd58ecda0e19d6d45a4c598c7f451c4f961ac219e67ac82e7fc8fcb2cc418823d3988cf3a321a0fc613f4c00230500b252eed421a183d8a2faf50317e975506b16d43d5f8596f5ad0857b0c7cde49c030d44123e8a30284ad4e0e96653e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009971319a75fce7c31fc4522db354febdd06907e633472dc958e41b129dc5c9e45eb72cba1e5fc1340fe5ab2a1934a609023050ff0f53483d8c7a27fe7224d750d4763e9b1f0f064fb1add4b256fbd4f65e2b53143509ea2eb56a9ac7b80cee8a0ee10302047c435bb50066306402306b4004c26d5873c4e10cca359c9685318f9639e24a8bca7250010522fb12702b73e7779e69301e8def5017a970ccf49302305d7bf124d453b493c8b4034e2b1bafe422cc3eb134ddb59770c24780b6453471a1f901742188497e301ecfd47754040d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302ec4b55a2cce31d487a448528aa54814e9921f6588db8acf4be62c13b3f9a94aa4bfc50b490a6fb2d09373d70906cc17023100a6308824f73bc9adf41ac1e4fe839e77a015b76cc0d77cc6812dfec6304d86c2ae6def02cbebbf2ea56eda42bccd7c240302047c435bb500683066023100ffa223dc6dbd3a57508156b6fb92f53d653ae98211dded682d23e859a6475dcc150667ac137f507930fc456e31f7bc8a023100edd1803cd866b4d60ab639aa97151013971087981d8216e2563d80bc224a952cf40d3e9e305f09b89610471b6fca3d420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230009d6e793c7e8f7034ab1460fb0d36aadc48f730c3570b8518be7340873f7697504506b122c6ea097690f949ffc399d6023100ca6a57a8cbb0d3e2e6eb37f520d870461b716f7fcbb0caf97f3a235891d666c4793b44dc7bf9ddb00cbc957585dc4a750302047c435bb500683066023100eb4026e2159c51cc581ac13db79b78fd06bce752abfe64cd652497c56a8c85271e4485e9fd4e62cb7d9a54e2021e0e6d023100d0d11aab478f2937bf66dc204cbd9c112cd79a1fb054bf9e0323be8bb0ac3cbe3be31c2dc6e3e7649b3c9d9bbfe18f3b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301012e8984bd5ffe9f4b9bdb5322ab0e677f0f1c9781b9cb32534cc3ed491152d5acbe33c20aaff72da869b354a8905c00231008b61f992323ef4f1b52005572c5e0a6161e07dba40ed7f3afb8f0243372658f84839fbb6b40ae366900d377082ff5f070302047c435bb500673065023100cbe71ae537167d8645843cf02fe407bf631ead1439cfc75c07ac2ad5b04662d6d9e1e6fdf7a14f0489d3c4600f02fe04023018f04a52bfee120dc34a58503fb13811e6aff6354d2698133cbd2a4b76c866b0a6f577b0ce220717c7b46b13fc9f8f800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fa4020cabb984824a48b0b7c4775c896a87c34ff85f2d0845bb06445d825286b5b46d29a15c4da2c8293c8f6a989c939023100d4235351fb06aa7eb7c95bcf57fab6b0cf9f680d9a18d5d873708087ad67b48bc5f12a118e9c47c3f667a378efc233d60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0149d8a94c6c8261f2a403e1efdd5e9cc5bf7a634ca3e9db96f9661aea74b45ce3564a7d8f080409dfd5850b322089102310095646eb1919a5085d1eb48da2571c09fd057b9f3d8b87e4818735ab22991b841cc7ffd291626428fecead9108209e5420302047c435bb500663064023061964f5923c7bbcb004c19b084d5fae5717694ee58f99a78297aa609bd358c761b4fcc427550b3cd0e3652d4fb48e1b502302f9461d91e30420f87fe1c6f74f6d7e4e5ca62e1f43334473ed241bda2fa0943a77403ae1850f8554563a5674cd500030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100988b3e2ba068002193df52a448248a4b72c20fcdab75f43a6bfdaf910579713f2337ef1a1234cfa6ef27509199325e9a023100adc960e4ae3dfbfc8ee35b8c7cae6586748901ad3790f33f985cbb8781955c42252ade01364a14b0ebce5e4a2e3a53a80302047c435bb50066306402304707776bcde443c16ee5175c5caa3cd195ff932f06403d547210a5e2adb83aecf03b3cb08d3c6187195834dc51dc3a1b023005c4be17321ab81862e85a75537162df7f0b7124d3608ad8e70087b88938d3332eca03d623bfbb054148a62f2cf06acd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a89f533dffce7cbda66306ac44b480bf2d3f041fc23d7fae62b8627d71d175f12beb92302d0d3e3383ea2e15496591ad023020b53d78c2fa432fc64b1d2b2d63677b9529034b7173b3ddf7268daf4db232a54cc2e92c5171ee83fbebf5b62731d3bd0302047c435bb5006830660231009323584e494c03ab0711231c0d796846599dc751968c377219068e5f75b3c98ab22b2e84f17a2d0071658281524d04ee023100cd062f27b80db7bb8c224a0e519c00300758b2b7f1dbc0a963d9d9be712a4bf1e77117191a67cea516be255f9feed0700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301a3b116ffb5b97c8313876bfd07697850f4838404c02b564f3e967303af32acc9109da27b0edc12d3fbfe8cba794fe60023051e486ece0d087bcd6ddcf4928ea5eb9457c87a130cef3e39fa8d778e739147c8365ae99392688c767b829902afa71b30302047c435bb50066306402304a9525d6d1e99cae8ffab7e91ea83cdcc1dc10d4655199a2d636c713d3fa21d5283ed95a6b26752c2477d27dfb0516ad02302190eeda6179f396a82a3bd26a17c11f0d07f4cd62d3ed67754c0db045f2ed2e8ae26f4fdfc89f38b129b918e6e080240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b9d03784a073d67e84ef8ac876770743b2b1bbd10e04083dbf27a442df00717a43f79c1a22d82f5386a6feda3df07c16023100c01a9f5bccadd18f808d7bf83049e228a811e2c81bbd8a4a9038347afeb61bab4881bc0cfb7a090c249819fba356e5620302047c435bb500683066023100bef1ca1ac9c93c9e70b56d7b8df62dabafb203c5069e66dd470064e9cf7022c2eeeb244ec12bac8cda3a81fad92101b30231009d0da61c18561948b3eb817e0463c6db197677388fa7ded568a98c4df72d343626a3d81f56b00a8d6dc412bb08838c670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009fab5e2f5c928faf70476d7ae2b2ce1ad571083f416910e13a0c9b07f9d317d34366dcade548fce8066531a2a3d85723023100ece0e38a3d676d34a4ddd74b80fbf150784c85be863344685be7af24374690843b12358c3f69fde8ed76f65692a860fd0302047c435bb50066306402307f6aeb8278dafb5ad140231885a237810d5dc64aa4cf9057fc865c0a35cf301dedf4d87e8837430e053e3ba2f7f63c13023040aafce93af30a0c27d4d22c489aba1a99e18239613888238dfbfed0fc8db5295e8a337ee00f276ae8f24c456db7ed900302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100be3faa06b88d9dc6ce4a5e35cd3b02283181482eec6473f0943a6c09dd6b0f81052caa3d09c5cfa919eebf73cc86db7502304f3ca534dc32310a8997c2f47d735b89ff46b982a0b323387178c67fae4962e16f945e92ea9990ec6ef1d437180bc9430302047c435bb50068306602310084280ddf29471711d15988fc3408a9e98a240bfb440c17e3dfc058affee783d4b91c836f84b26e982b928581c99ff681023100b1e3cb687c0b935bea8ea1acd52c5211fd3b7251d152b74718801051928cfdde19636102c0ade1f8cfbe8df6ab3c8dd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f5510ae29ebf79adf19d72c5db3f40fd1accccbc0e5636c3f17bd01f694921683735ccdf364c78340cbf0a129248d5590231009a461995dad3c99d19bac13e7b1e64a8e07c31286d5d0a360fef809eb014f881f3849e422f162535e9a6ceba999784c30302047c435bb500673065023100b3521f864042ab08348a5bc9d48971a1a8d94c41f951bd0511ee080604ba99d794ef6bd2879dfa779564391567ee7ed102307fef0ea37ed8b9d86f7f23a3dfef3f9a765a208b98aa88a7f30c040f3473cbbaadf409685ac13c2343c726385e9621cc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100841070d6ddccea5cebffa2f07007d84873bbb3f4672b9c536620adb3a9d7762f7ef7c81a785d8b7c9a2a2e3fa9bbe91b0230480ea32bd7dcb1a60ac8dce25e87616add55872d6c98359a884eb54c29cad5b161ebc0a4061fc8932791ccfd9e43946b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c8a1b2e308a4144dfb4506c404fcdf9352b120df51c7bf749726454127d4d371be99b35397dad7b609829a2d01dcc69c023066239dc1a5e4463ec3e9f38184f764f334c6f0ec31ad4611d33f8cc07717d22c4c7b99e4777ac96772d72c09378710300302047c435bb5006830660231009b71eb91c9b77580c096db14d13eb2896f4e7dbb3d055f1cc8cee7e6f5423277a755f22f1d1e9d3b0d15382b3f3644e1023100faf638ba5853b1a6849c7b9ab69e53ee3a983bd8f02c76a871ee914e6ddab0e8d85c399d810df45f6a24ff1e3792fda40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300706c78dce4250f12580502f356600535562ab9d1a7bb91198a8a52cffffcd7620ad8545687a955b29e53b23688ba54c023100f4f0916a84c4bff3e6c96cfb82e26c780c1903e5bd429bc4ac46868620702e816939641f88309e5b3610686cf2a56ebf0302047c435bb500673065023027ed13fcec0bb9cb73fba6c69b210cf0e6ff2f74346ed3f3e28b6ab628a3e4e6080bfdd67348b666644071e47ddcbbd7023100d695c0d45e7383bcf98c0ddf5cea2839d6e2f9428edbff38160a03b71b9e44265a24cafad9e7bd1a0764a11dc542d5410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f38e43b344d118e6a7bd45cd9e187337038d69ee5da3fc275db3ba45f28a5a900391e5a12ede28e8efa7faf5325dd886023046ff25e99930ad3415d66fb66ace22943849bd29a8804bbd9751be18cd81f33a9802e71cdb6a6e03fbd7589bf51e36be0302047c435bb50067306502301f7d0cfce1fc57fd7c275249533f808d1644620aa2122ba4b2a80d06e803a92f889938e863602c83edec5da1138027940231008bd7f69fc5f9a625098be4c816ff41e9585934ead74d8f7557bf38122e491ee86af3ea972f2c26dc4a931d422d8fa5ce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b24458592f3cd925432287f7e95ed3e29a4d5550a1385373d0d8bf6b7e328cb7fe253bb0563dce35a0d88e8e56af7eb0023100f1aa6a89fadaf9a02f07b24e1047bfde784a5f35083c443f3890d8aa39bcdbbfda6df706c341ae5fe33d5aac54f048b40302047c435bb500683066023100e54138d8e67494c0cd004c93fc063777a7abdbf9f8cdc4bb57c665427e54869c68434ce3bc11e030b8c98122d54ed0a102310098c313f6fbfbc639ced4b9f0693b7fb2ab795c6f18e485e4c5892ae226e20982bf0eb43b136901c9a0f674ccf2952efa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fe342add018d250c25de3f4d99a07211e6d9274358b1ab7f69eff3fcbf5953741a6d9488f55f08288feeb7f45eb73cf9023033ffc48b57342796c12b0729179c64b2d22905c0c9f3055646e2d2ade52b5ba46924abacf9a2ee71c9c09ec3488204820302047c435bb500683066023100ca87562a58d2a74f89eac27a8cde4055a4e3152bb02e28869ee0ff8ef894f0236e94630e6f04720118135780c47b254e023100d23d7b0172567e27990ebea464ded092535f543a424369a77adf481342bf047ffe0fd9e8ea1bcf8631dddb98d42c9f650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230316ca07054e0c5fef8e8dd4190638b84ac5ce0a19c0f521e237b0669ac23f561a66c22c695826507dc651606541b9b4b02306fc077b28340fd8dd55840b0e5ff8deadb490394179c91e2e26f3adf4529a0b510463f29473c22a5ca27bbb7ad3b4ea40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d04ee56bb4b0eccf0a82053b1376d0c2cc4288801eb2ba3fe3b75daf0ab824294e4f6f97a38f9d5b6df673ab5b4c603602304d714ac558f5f7f230e0c7476cc5259e20e9f91df13bdc1dfbea759062def803fb8ccdf6f86e6a197025f5c4f147c6be0302047c435bb500673065023100d6cb85cd1fd9245d703608ed61c9eebc528ddea33ac4b299d83dd4c101272ce24639122bc69c511115145ba6f200b9df02301b3c2d8dde17694421521356eaa18537f11115d0889d30a6d1e1dbf8ae38087f08066cbd4263310f0dd5e1f907ea47730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230097ebbd8c304ae37cfbb6ccb8081b810090b7db501c5b1a2969200611eb4bccaab22fd6062df1299cbf18e6cd6930837023100824f146afea59d2e1520502a3853af6a2cbdbe308f74dbac636428566a2ac591dc2d444d54d0328147815ac35ea689590302047c435bb50067306502304b00bb3774efbabd0b254021f3ffa0e852ef4c2bade1674e4ea698cd7b3dd4156b535221b6cb368488421ab7c67f9b1f0231009be1eaf4cff51a74a20bc122588c40dc1098c91fd883f63486a7abbb5bbb9963b6db23fa4fa4bda11c6317d44b78d3750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4a094f72a457850ab390f0c748ea8dd16a11185d28eebf9fb586da610f0a80df7cab3b37c07c411ccbadd238d409e6e02310096d2556c1982154a676357d7653d6249e6c1f76695ff689eab8b2e532b806e7ef6410dae7da9f9a3c3411c4c33d2d8ec0302047c435bb500673065023100ca75738282a1128b52bb589db32fc4690d42c3e5058fcbcdf8dc3203645e3abfb5f83db844a0eb56ffe3c1b87439df6102302b688318a929d5758897226822a8f18d3c141dff3a44834ac62af186777bd19e7f8ced46a261cb43b53fc12b62854d620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ad57f946da0afb853864f391b13de2c773ab623a142765087ce5a2a35aa24f8e5262e2b459cc54c892978964a6094d6f02310087a2fd49ed7d7055f8b7c6aaf8a9e993b5f2a0777978dcd5ce7d26d56d5b49fb2f3329f6beff4fd8573aa8e80640f2d90302047c435bb50067306502310091a7ad51c0408aeb24ab40ba1edde2e5f50eb198d7400bde4cc6aed7b2684afe3ee4d1da5e4e042e5a5736787347ba6702303ebf898344088e6b74f6343736c0be957e22eb208d84c7e9c45842e450e08d0080cec7ac553c9c58f50bea0d4624b16e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307c6a487ea8adf242ec95952795d76b48a7ea856eaf5a7a60beaa8891c832df0ba05e133c80ed2d0b6f61e12d50e513d3023068c1618d77ad973a193a66ae0a2c893e6891f4502befd673f78d905d6284cd67ed6a38f0e64fae234048c7e4dc947f3c0302047c435bb500673065023100bccfc5293d85bf5914df5bab19b22744faa67e09ab86900860c68f453d246d41df512284c8e36ad3e7609d37927fa8620230085aa54a5493880539eb005788f39c3f76080a4cc8ee1dee149372100563291c75fb29cd6e73c3eb7f4994fa90e0296c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304c0ccfb28a3697417dbe9ddcaf5ae5e53d6eef97f2feee6961dc8ee373c89ea712105f10f8bd8416556329194887832e023100b6c056097066b6b6f05bc4784b0ec4c16af5a919cbed5c600a03614a7bf2a0685a6e4f14f9c45c72a369cdc25067dce40302047c435bb500683066023100d9a2075b49844046488ece24214c2c10554ca96c7841d6851bd39286412e0ffac0cffcb265fa4cac3c754230fd117733023100b4dab0a5c0f53dad24528a741e4dfaf1900ee9d98dae74c385d9878afc5c111e2ca7a5edfd4e4e437dab059f27e8b93c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303f13b98b290cacd610cd579085d45dee38d606934e650074367b381a7b7afe75f443950309237abd0e55b452c9ce3e07023100c0a64726c1319b3791c6faee886997caaf8f310645b86a52b14894c603859bb9733818b57213bb4fbfc419871eef43b10302047c435bb500683066023100f177f45485cf5fa7a174309e06a97632e041a65e833bec11514f8e251bf12e56fee83cb98a9fa0779ea25b9a4c9e8f5a023100a03d731b65fc5a174e6bb8cd54f023b3b7233137ed508c97a0e4bb06f3a83dde162c2c07e99ac01437d1ec770c7cacf00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023012f0361ea0997434ac5ef7b0fadbbf37d10eaed9e577ad2a4df9b909d8d3a3a4237a6c2356ad49a16cd05899f7b18ad1023100ed028d4b4dcbd96c00f89d5ee377fd479dd466e02c8e4d1853f161f1b697f7e27fa7fa8a0d6c1834967462dd82f502010302047c435bb5006730650231008f19fdd3744ee26b2cc46a3f2baa8fff144f3e36d75503bc05ba1d176bb05904d718a72fc0201553a9ffe474b4ac7400023011360dc92d5134a542187fcfdbe281cd84513696c4f45cb34e93bc803eae49159715ecea33c7f47f9c9cd0d28043a6220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023013d3edb9269d1473e37c957d788c17b25c571bb07b5fc76505cddda0386d08fc01b4db58606bce1d29b60288baf7ff7b023100a7bdf996c3344606b2ecf4c6e6a56b6aeaf50a6d144503f11bca4567764c4b3aa5a1ddd1a80498072f23f58f31bc1eb10302047c435bb500673065023038eceabe6acdd4df19867a3bea123ce26adc637fb2b9b2656a1fa7ed5954ffc290b8ff0177d21450f5b6e801ca4dc2f1023100bfaea5f4d54f30125b126845d2e2c94e6670c681f1780ba7d591ffc71742044b975a4e29721596fd123e18283fe0496c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023029b95f2a405fdac38f1818b3e5482478d79674507d0ad24a3911dbee01ab23bdbc2ebc7034ace16f3be2e8a1778fa6c8023039f20f05bd5c52251278da8438a83274fde11775c90f63b7b25fdda7e0522eebb18d02ef1f2923d0b290426fe5354cc50302047c435bb5006730650231009006eeea797c5a31246ff4a2f36347130a5c920e0269a8832a08e44d30a1bcb269a3b2ee4b69224027813a7356059a4f02307f5ed8dda17cda2a2a0b218742fb8b3a3511b83712bdfe05e6795f4179cfeada5101919c832fd8e412915fa62efd24b70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a29283aa91c6e24319af313b6ca1b27537ffa9e9d1340daefe398cc66918140c0f7ff1ceb34755d5fcc9d739a0f86bb50231009924873ba533b700b001341543c8ac6a63ae4726f6b297e67b3680b2596afae18e0cbb988cebd143bc3d4c6a51a0b4a20302047c435bb50066306402300549cf02bece5a6d737b2c0c21bc270f4403e2e4a3d6048e853486239ade2c4678bbdf9c095a7f1a44a0d8edea0dfb7e02303662ff0d2135f1e93d21e9c15b7f8bbb2879bd14d6be05a245246983158126c45d02ed6d7463769fccc5359334a984d20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306015e4bd9469e51e8766523c4bea550a8198cb0f0129fe8ac7c3b05a92e601c8988becdc2448fd18741173fdd572195f023100957480c89c0d3793e486f99c0c92629627edbb5de3970978c08dee61f788ede3dcdea184eac71af1febe336e47c118830302047c435bb500673065023100db81f39a03e69d9dae19b73ea065d289b8a58cdeb10a678778df68185ba2a6dad252f9a1962eedac180f5985123143d502306dcff32b56c2984714ca51b97b217afaed2f0ee658108ecf56afc161784d9657ee885ebc34867f10d0f171335388582c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cb6eb2808c90e4bfc7dedc6cab9c1ee29b4bb55429d00ed43fd8fccd3cb678ed2a501d95624912a90936e87f234d4d6d023065481dfb819c7c7b8f8771d5541b7458d12ca051c6139e5e36a7648a6b2700039597e5335047fefd2084d7a25f6f08b30302047c435bb5006630640230481b46bf88458d5517cbd358646db91e0c8c2f8aee03420714224b8a6479a366b1a0c710b8584ae92c30ce3ecb703564023067305d6de3341ef0d2e9dc33ea72446403f497cc6bd5107604f2ed9252c1e6797134873c111d0344df2b137f83c500d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230383eb32a828393c08379645ce4b19c17209b3ff321c2c14dcb516a9ea95c617b0677383ebf91509782f914e52a084549023100b644013cb3626e7d3dd0c11f8d9f6e2fdb0cdafe6b5ec6940384a3418bed2e22d58424aafe8ed758da0ff39f0c98c4850302047c435bb50066306402304561fb3664cede1979b7b19c226674f1b3dda12c5a7af6c895a6c031fd352e93c73a03e39df677082ad2ef74f5a945ee02306468f1b26416ff9497aa74d02ad9ff8672fc0cdbc788b35d9b6a4cb3ba87cf073c68fc05742292538480d5168af3214f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b056d26b931f73070dc61595c413b03ad1e961f2666126a746a1ee63f986335947812f9b520e1389ae556af85ca2174102304de42817680df1d0282f97bd72b54b113589088d18c2ebedb6a8ed3ab62df1feb85d5f92c6910c05eb03cb3d86c00a760302047c435bb5006730650231009552309949413767cdb9858b57925ea84e7d942607fbc164ca42f03eb2e56d77184a5c3d1863768b62936b123c39cde0023023db01c49299524e8634f92962120e5643dc338e5cc45974353ac28f03a0972a27f463fc5ce6bea3c75a76372fd96e9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307c283aa48e1f7852f60ab7d384a57919e0e52fca30cc3f069e50278a13df81fceb5fd09b353c98cc63512139ee4e989b023100cbcdd5a3d363251eb198ab5ee729fe885f8e33060f58cb55b96ff16aca73937558dba0be4680f52bdf7e25cb64988c1c0302047c435bb5006630640230330f164ba2de9cf2f7a6ba9ca7c7131bc7521c2dda7ec293c6caffc1596cf971ef8c3bae9f68da7b56c3aa3bdfa27f4e02307710aa9affc341c7128742d1495c368413ffd826935677942442adbfaee610b5eb60d883cefc36018b4f6972310f9ac20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023014454a27fa8853285049950bb08018fa6212c5c729b861e3b11f08fe0016865a5c5542a8e4b8b2ed40c0e02c3b9eb192023014eee448e4b0d091bbccb3d39ac1b435cbef3b15e10d9a65e059781c420f118831a01ee4d4f4d9a9a6bdf4d51d3eedbe0302047c435bb50066306402306e094bda789613750809cf5c46e79e451b6f371d20f861b75e486fb9422541d95c98730ea708c6c73c05a66ba5a711d502307bea66ce3225d71a9e79bc1c584b916faa0f7daae63cb48a3184bf0467c6a4f3558cc1f4c4086710aa326025d6d386400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303412ef2fa897acfd797d2a26eaecf9ea416d39f67c190ad67bd71367afb36153d5664f64afb05ad53f922b424e4f677a023100cdcca9c3426486877191bc912324b94e5b1f3ae9856b7204c6dbb0d7c7a2b6a28af51ff6ee728819db540f46425cba7d0302047c435bb500683066023100cfaac39188ed2340e241cd4bd3f6009c91999765188599a84e2353ba63e0489569e76c7c51dbc0461edde92df11d6d1f0231008f238e79e65b6c3b3a6b2524bd89e52a661ddb18c775e67453cca4758443d062fab04ff4cdade17bb87d7bdbfe7aec510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305841abdfa2056bfe0aceb7af4144d5ef89af08cfc97723cb3ea774cfee75b484be6e781481fbf793c5ca4fd6f08f7f2b023100e053a6497735cf80c146cb76a41c247f58c33bda2cb3fb530e8ac116321c73c2c7e614bed5f24f20eb6d5abf0514a08b0302047c435bb50067306502310084b494324d5df779ea126afc3f7511c1ce15ab30aa2bc4ce6a11c20fe19cd472483e6aef6a70a3ee354778b83e3e765c02302058c3cc9ab2a4eae58f0925624babfba5195d05118503af26c576099a3da6beddaa88ffb8e88c3aa8905811bea4fe0b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300213b6a5309172a2a46385f58defff0a45da83ae1e11ce37d58ac81d51b0814d1a58a4c0a0784d5404cdf83a54de8df502303bd483dc625dd2cc9df504b4365da344f494c50f4aa74ce771a273d02fdfe3cb8ef2182853b36f6abb802e06d0e673a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310094197061763db8e64e28afcca7ba99257ade05af6c7d55a04a508864f53379c4decedc5863b8de69d44a0ace8cf898a002305602fbc8d7f7eb97d0bee87893d8e2d3351e2bd8caaee13d8f0190bc04d6f26245adbbb2478129c900d9093af105ad030302047c435bb5006630640230407f0a9097e72ba5ade0dc296bc978145684ee942c3eb6fce9be3ae0c7eba1cf28a181c59147183d4ead168f4243219002306da035561b1a249281cb514fd3dd6d35653a3cbca04378e34144676844ec39efb2d1f4d4393233a924b3ee8813a303c10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304ea8819aea238bf89fb5b658d8f3f90dbd6861c948f06a6ff65fcd79f6f48ef1ac25eeb1f1a3ac5e1a158f557c695bd802300439fa6ec24a683a749b2dfd3598e97d2bf1bf7a7721d4a28047edee53a4f0c620a7946a5afdb5ee0e9c3551ea53f7d50302047c435bb500673065023003d010f72075f392cbaab400078e7a5a357068df157b71d3754303b6ec1f33c07ee684a5e61ee797e090f8663d40136202310097aeb307cf62b00c5ffd1e0b954f8b27afbc98dfef4142bbb8b78ca43f2e6cd06168342edeb3ff453840dfc54f14f4830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023070bdccefdecad737812350b4bda59cb8fa94237238171c6e1b6968e4adbdd32b710601a2495407f8b55829b62cf1e84a023100a94e5f4275514f9008034eff25cf115ae2ab2153a8ebf9b166b337ea6d3b5f71cf806f656c650891ec97dd824d1ec2500302047c435bb500683066023100ba28a673c0d06413448cff02dd7867fee61de7408eeaee14431ee873fc6e901513ab8f7f5e273b72924beb8a1027dcc8023100fc8b6b6da47b7fba211bd2210f88dfd3b4f0230aaf7b72e2aa5d3d1a6c222639a6f0a81552a779c3bcb9f3b414719cce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023029e68d8c8091432da4e3db0a4d7a018359840c26fc129c9e39680d87f4c2dd284ff474ef211ce0904dfc84ced394bff50231008a41e3238b10b4d5b169e8f3a01c6529f5188b0823c8abba7ab7b28a8662521c008a2b22d8ff5937dfc51a1d68074f110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023011674d05a94817bfcbcf11b526f9cee2166e7014aeb9fb326ef6deca56875d45ff09da2c220481393d52b7f925243c9702306e1173c6253d5d4586cc42c619a361d950d466f8a61bf29fb8d9711b3c88c83d78e3722ee66572a429b11eba700e88be0302047c435bb500683066023100b485ac7d0f1bb0bafeb3561eb83106cdac38b1a56734f1c367fb9b8d3807ec11b05f980786f2b34489e4d3e61ab83c9d0231009017cd6d581a4b1f15b7678beb48573b7cf3a90d15226e27e7d63577999aee8efa0374c3fede0034573fb3a7557c44290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ef2447c5d90f997516f597211809d183b8bd4b38d3457be4276db1c2d689c53288909f312af7df44fe7a1b27aab7b69b023100cba7835d22d912b0a0b1a2879f92bc1aee35bdb39dab65b54c9c2a4a323c3d8a013bb3e14649ca9ab86d00ca9effaca30302047c435bb5006630640230205124907a18c1698a18fe43ea254c8679ff3dbe61a403f33543d5dc7f845761c5c5078eac712832c138e6a841995d580230655bb512ce993e0a7b2216f887bf810c12f42572e3e8215eb8885b188b0c69a62cb168c9acd4056163bff60650eedebb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230781c9a9f4ceddfad13156d825561a6a60aa05debd6b3cc99f92b5ca8f4866cb8b393074485b9d93c4138d76321d89889023100dddb36cd8f3ce517788315fc482792d6887f7a6f278acec7e53ff44f187f438149dbf2e0597d56eb530aaba82254744a0302047c435bb500673065023100d4ff49a18532b4cba0efd3a6616773784f51a6ffbaa91c633c8f0a17d5234ecbf814fb4ac655eff3f0d2033ac946b9fb0230470320ffa4e5e5513ccaf5548ef120c745e18bab1a55139b17d34008059ec9031661766008962dfaa97ae2d67aaac6750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023059e60f4bb9d113f91c730826818c937ced62fe7c1bfcd08838ae5c08395b5e7ba9253b271fcd440d0c721a3da8b299eb02305dba36104ae496bdbcf2315cfccf73178b82706ac168d6608a7572dec492de9c09e3de92e9a3e849ea08b336d1edbc6a0302047c435bb500673065023100d4076a716d82c189eb9ad0db2f8d529e348474816d27d3c34a4b936cdf74349805caf217c604642c170d0b7c82924f6f02306a1d943f8e5a8a56d726e71b8057ee8d1e73221a51237c29aa411feb1bd386c70fb6ebdb810bb824b3fd7e38792502f90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009d33612ed8970d9f89a382f9a09eeea10da5294ca84cb2ba81d5409d5e27169a466c8d2d11272ad6667aeb233bab48cc02302a1b1938988923d752a456854b1d60b40aa72b6ba8676f2ee47af0f358881ed24ea3485ab669920e6323c162921536f10302047c435bb500683066023100de11427b01602f4c2ae6f71a9bca40fc6888998415297aadc1d3d47bc59e612a50b9cc62f7fec1b3cbaf3d3fa5b1cbe3023100fb89d763c6d228914f7f17e42f6300e826dbfb93e9c21bc6cf8cca9347a486c0a286663a67ffb63baf0e043f86f7fa1c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b0b5ee0acd22bbc550e06140ddefdba6d0567c077207f5020e0eac65a1387ff458069de1e7fe434fbfaa54710094317e02301393bd1834d112c16db5560216c7177b3d58e284884ca498a9a31b874b4f3cf4268509a83a393f6e80bc30ff9cc725fb0302047c435bb500673065023100b5f30d2b56fe4223046fa4204a4f2617a00df87781c80632c525497e32a6c51e865937118bc6f4ca8854d2c9bc969b0d0230041917672771be6c1c2f1ab59b4fe754fbe44ed276d328d262bff4917146805e9219ae1ce2ccc7346117d11b2adba8dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f0cc6b450aaf1674fa751f6b7bc18b9db2e4d667701580d2ab552a6fd316b6f977a0274ddd0b592b0179f0ffa5dff52b023100ebb6255000ad2c724c9efdcb7947cc71db0cd106be9a33ae322aeb37bc3a9d8060ad279b99313893171bcabe9b1ffb660302047c435bb50066306402303a814710f6a1dc49b92eee17c75b0bc5307f49bda9307783c3233338125ab01dd6055f60235f509a8d7a018ff8d4b2a002307343af1aa5cf0df3ba02ea84e5f1e6bb0bdaed96253aff89cda640e8cee53b4fcbcc613e696f6eed89d879f5f3a1c9fb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230309659173bab0c80bb3412fa074b73d661af9de6252192224f1c8fc450a0bba1851bdc04b0447bb59a29d6428f4d81c0023100acb439f8aa7fc5bfe643de3e244a00fcf020d7e602294185a21e014e068fe5ea814cf373980c7d8e9e960416b3e2fbb50302047c435bb50067306502302e6ea3b00cab82e9aabd811bd95ad2b931f6bb7571040a66c7545e4283259ccb5daced346ac6d0fb1da13fd403c035d0023100ba38fadbfbc711a0fe2ffcfc6de7f8d22b021b717908596fa2b72c3bc2b6ba4e4ac99cec764492d79d1015057a370da10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230290a6eb8892bee9d8dc5e9be3d4a7bcbea8ad8d4c0935e81350d4f988cef128de4befa5cb94ac242f62ed005fd2b1469023100dd7fa02620a3ca3214c6da99e29c074a0c84e48bc8aaf4f3951e2c0656f3adb465c295df62ca02ea12fa0e40770d70a20302047c435bb500683066023100f14cc945ef6357ed01fd4928e2ab7f934f711b83120dacd0e7f107593ff9aaaaabfad101287152fb1a1fdf945a6746cc023100a36dd62175398dac8aca050b16eda8971f36d0951dcb310d3a115c05b3af21f3f16f61278a595d6ea21a8a4bdc4a1f000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c91c0448f052287a4d32515cfdb74f997409c298136154955bcf1ab6c47def4f0f9f9c20d8a15f4eb6b99d6ea9142e93023100ffd82935a76bdc4db804e09ec4f5e1479e967405ba0181929c7963af29f409ad60a4773d9d615d746b7fb461e2b5325d0302047c435bb50066306402303bef42686d64789ac89c875a49b0813e0b8205db823849df7f68f1f540acd79438f92c7ee3c50ddf8e809d0c26c7790a02301551bca640420d02893df555e30ee5ade56a1e488b9dea17aeeefa15dd95095b2712d5e840093a6073687964dab390360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310080c053e2a132bf0cdb2aed50715fcf9cfbc1b39e7b16cfcddcda93e60c69351dc78c916dd43199496b20c948aeab8bf5023100a77da34698cd49d46cf49af8553dddec561c075f659a85fff7689ab76d2e9e6a9bd0813abbb5b3cec528371e65d8666b0302047c435bb50067306502306a281213dfd6b344c4168125db3fffeb040da8038798e61bd51cc2d2ac7e77ffabdaa1e9c8dab120fb3b4d40dc171890023100b0de71690ca307b8f789831345af347236deba3d9c017f5b4dd3ea11fcf8fd0a939d1b2a7589c2a77db5e0ad83d84c990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302060ab0f58fb6bb4e90ba092be16159cb2e3d959a3a81a3c58d3b5372b9d03fde47678cfe50ec41f491c05bc916f77a8023100e8339d96fbd0f0cb3a8b5b657badaaaab26f683bd8d173fe4ccd262f8842536ec1d8ef1a1841a3c2cec55a396649bc710302047c435bb500683066023100f963fe78d0bd463998c675ab0f2d6c887134a65b995211e000f1599ef8e0f1e326f94c3c88163cdf56efe70506b3fea4023100f3647dab81ea3d25096fa47fd02ba04f3ca05376f2ed513552a0f59d87bfe901ac26cb0368fab2c92580048a4299395e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a88defc92cb62a408b7b93999a3ed1e4009ece07d30ec15b2926929434c36928ce33a7bfd9f81f5331440c3a1710bb0e023100de8d5ebf02f65fa78ab734b30e25acd23d443244aa4974c03576e647ca43d0daefe788bb35ebc46052c2c532e7eb15ec0302047c435bb50066306402301684faf4107cd689cb6caad448799750189b76c3735fd0e961f37418135da9d3c36016ecb06b9a8639ef889a1f352e24023069591431304d3c4f2557d1e9e30838cdb807b7251f81fa88f2b8ed63abc0c5e29ddaa286e2bbda5127882e68aab203a70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c34d61646fa218fdf8fec31cbab5a9471180b4d22aa68a9a59b110fbdc4f13a8f11d2aae49ed9adb980cd46ec97e2c15023039c795ed7f5b718e3da2cf4b19ba67fb98149227081451179fa9d724a60d3dd53b918cbf83abce05db4ae101f23d49a70302047c435bb50067306502300b5a8859d3e8998f60285ff3761d574478549b288c337bfbf70c8b85c32925440110a8b9b0ccce89d793f04e83d115690231009a5541e0c3cd5546e5fc7345238ced4d66ae759900cfa7f75047eb75dc7b13a44277721d4965c190756493ed1219464d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230268b1819dd2da1858635c73678744ee58966542c35c43187a49c0ebce224d219a3903130c078e2f69e7e38162b8e479d023100b3a3d647bdf146d441e9dd29b957b3c9eeb45ea31145b0aa7d3823bed74b00887c39079c37c66138ee5e2f112347a2e70302047c435bb5006630640230720edf253eb667834229d657387c8a826e9d0401e6ff32a0a506c1eb8bcdf1f22c05d75bece7c07b12105c210e6d67c902301eb87416118e3e87425d7e0f08761a4ca62b399d77bee1561e885960a9978de8c7d2e84bc079e4b2a99d34914d0d693c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d6d6c7d0c00a75f5163b59cfdf87a88534ffa693db70b72a00501188fcfbfd73de5c1da8b9c23c7cc7ad4303dda875a02306418a9cf96de52fe911a5c5534ea9a1446787894fc4da0608bc1eb1e442a53a6718245a49afde69b886a8a35c833d9ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023015066cbd32afbd57a0fe31490192a0774ffcfe661dc31bde005c8c59c11881657db1d71eb4882d14302d95204808bfce023100b150d2c231e3373c4fcda065ee5d4a117a61a23484762675c856612f1763c33396dc9e489b028e37fbdccef291b9971f0302047c435bb500663064023004d13635e86f8575664448700404085cb8b97fe164b0060df6ed9c6ad4dd8ab4bedd206b3c834ce34e96eda246831f6602307da3711485de0d0db2872588349e52da5f29f7dd0ec98669baba7aa99735e1baad943247df27c94e7715dee0b796ca760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023009a936c97c1564a038c3348a92c38624b3376024faab107b11742fde5d842734ce856d15ee8ef37bbc784e8f567c4a11023010bcfc3a06b2b8d74c55296feba4b1f09deebc16ec3f17f8264a78c6edfdcd6d037e487d8d63639e68bad347184affd90302047c435bb50066306402307bbfa438536358e87b705c33d3295ea800f66943f0122384da0883cd9ff84f0a8498fb2eee60818fa1fc811ad6303d74023058de97d791a79262bdf17edb690a46ef4031fd23d7078492230305a80be844999c808ede58f338bd9c4f1fc2fa942c360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6e33edb06bfe50a5f41f4fa562590cb31110886cc5160dd946547a2b7cac7e778d20e149ad606b0a130f0ae552c962d02300bfa25b69c1d99e4443f66b714741e966c59edaee7e26d09c560cef689f24edb79a1e899dd073bb008c14200f90e156e0302047c435bb500663064023069ad1be695181bbe866403c8c97e6037d04d0ff7a820d3dd0931557a372ff6b8285e8105c4f5546f9144a7b9e3b9f2ba023057f6a7663d9aa51afbed8be5ba2e0eee49550b84a5f3c2a39b8b21443b04ad676596348a9c8a590014637cb0c3db58e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cbb112a2139827b949274f44331e34dc0b45679bc97f771006e201990626b8fb7105c50a2127bd560439231916800ac0023100f808abfafd26a7788a37d439f7a245505cc7c65c5e89077790e1c75857f9ff68e5506fca137013850e9d3b3c4d3cf4d80302047c435bb50066306402305e869dbc2d014b884b7ca6b4532f81b9be44c7ccce3bd68a67e92a279f2ff6ffd097e5e0efdf1223554148a050564b45023001ec5074856f3579d7a954b462680040c47fca13cd9c883087be5af519010c22b88316d96170152d48ccd483f88b1b660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304c36bbfa1e5d9779d75cf033914beb502a31b722d63964c156491eeb5ce91ce3f7ab9bc7b3bc58bffeb88597070a6d61023100e74c43dc81f7ea0e00a9722ef72e278bbba4d2041d1d742fe38ade82c5095a1c5dd3d6b28de91ca695bce0c2752c78ef0302047c435bb50066306402306e9f53444285b41dd711e6b43e3a50b4fa3df4461b15d13af661579e9bfbbfacd5b1b4f7943eeef3c2d51f4394bf04b702307114af6705a04d1ab8d33be32806a99a335f32bd6f4da324e156a57116371d6ba3daaa27d2caa9b2be3e10421235da4f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fef9c0c7f9d97fab15a0609273851cb4fee30ca9dde86be668c29879686fc285777281a9aa44ee3550a57b514b810069023059dc5db0e31786ac6758bc208c0e40ada79958c46254440216e01dc5d0d35e124071c16abb2160bc48639f77c12964fa0302047c435bb500683066023100d592843ca97f05d6888d2c69142a9e88daf05b52801cff8cb24ddcb46f31ffa2b4966149b0a50e6b9ca53f5d01460e54023100a12bd8ee52510e674c57100b4cf08783d81b3a3e50c378bdcec033f4932c9ca9d8961a3f2e68f1f1c1ff22d5949d83b50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230322f50fead7b5d065563594d322224cab04b0e2b12204038aa5c61b5506b28b62945bf343f7b36e40f1387fb55f02d110231008e59304f886212950d5b73e21dbe653f181f92fdc359c032ac50e5e964bf62c72c24e8ae72abeed3423c5f0b617c2d120302047c435bb50067306502303a7b262b5955d04986fd9301104856186fbde2fb357a212804a36b0b13dd4cbf351aab45aabf53430837023b51826e97023100f6cf19f15263b3dda27450f7d11b1b7e291b911954303443190ac0ab7cfb1028ef90c77f21b816e213a946a90ab327320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e4fc44412918c19084184db25150a578f3e1b8ceb744bb25beccb078a86f9d4ab1abb06dcb485ba51a4aaf59cf7c6b3a023100db6db33b3bae7680b9b6156032d73cbebe9ba2bb5f7ba192bcdd23bb9e68be2f954655f71b988d69fe4053ad5a2844b60302047c435bb500663064023067670425aabc3ff0c9c4392af5d0cfb188838ca9990234bbf7f023fc7f19f36b33a99f1057b227e647aca1b19acb0509023009c9f0b55ccc54bbdbbb03c28afaa0520e26a748bf579c4162073a45f12794b3bd44e6fc5907895d90692d2436f529cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230239d7e1208244494f22c85615f2e62bc427ed57fe88d4c10380d9663057de00dcbf8f2cf573ca4893dc836a11a8c3770023100b7fa7d38f615ad09a7e8383c352cee832afeca1d5e638536383452f2c724ccfa181bbc7844e26ada28c680aa19d3eb860302047c435bb500683066023100c435a69332dc2fd5ebcc943aea7712297bfdc7faf753e634b9227df7b7a65138e520c52c804624f785f0df67c3bfb702023100fc47edeab00694637c64abd742be1a4f97d8ed260e55469f0f318cf0976768fcb6453e62402cafa2237aa77bdbf1fdf90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230660b5b0dc75a2e35a2e2eebfaa2b24927ae9d12b729e4ebfb871a01173c5e78775d38ac88c1d339e0e244b04ce1f4d68023008aeff31b550499d247f51436a9551960ac9a80de8877877bcd706be5f5a0b2fa594a9a6b3e89d76b208446400cb40670302047c435bb50067306502306a24cf85594127fc257b433192cb01e23b4fbfe9d9d4f50adad639e5db891b403ad5e6383a9aa5e66a629b693273435c023100f4f56876c53c07123f6a4037a30fcdad328d542f27f7973360c6e7b9601ab85c8150681a83a252d47245b2ad55d74acd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c89774e54c99497b2b28b28f041dc3656fff85349eaa58db71bc1756e47dc6823f3f41ba2e401862e9b42aa06c53c68402306e947a34335c9f87d93040b7bf057d3afd98b4f6461f9d65b6a5b0b3eac4b3feddba546116ce928ed59b10fb146088980302047c435bb500673065023019b3512dc9baa1c18dd852351deed6381b25476a0405d42783512ae046dc251f7c321ca8de430e65cf0ae9434ad09721023100cfdfb39d9ebc6b3d4adde81ccad199d00b7eedb6ec37b0c683699b7e4974fe9a015549cf1da9303d220bb2253328f8880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023026572d6e0208c214b6674b57ee9e82bb8c658cc595d345a19988c2e2d013fe62cecbb42ef45404d5e90d3acceb5f506f023100e5964ec3985e1de5af4f6c9601fe85a23642539e9f27b1a19802e13e04b5d4052a40c70e913ff0c7835c47c94d575baa0302047c435bb50066306402306b2f93c17ba9abeb8817ab9ea9dd3419393a6172c6fdf6ff6a0506aafd87921a50cbf92c765b24b77e3108be648a0ee102301ebb748042722e55cca84eba47e41913ba7e4ecbc5443a01cea7db131868a0b696174554862c0e6f6af81ea2a4efc5ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230418a2a7eca2d634874c038e686f964926f2b200bbcb4467071dcb6cce91b3ec2b7c3d3a0ac4cabcc5cc030c10bea140f02304a8a31ec5f8d831d997583771ed7a0fa05badff04103cb55e0841c1bc9184d0e996f7362a66a2231aa4a3741e2af453a0302047c435bb500683066023100dd70ffd2dd3d4a3e82051dc83c22c7e914539dcb8ab5864522592a86ccb1a7fc0543eebd047eaffe03ba840b3cd8d388023100a2a2b50b4a026bc8114b8b7b35b3bca3792435bc7d8a5ec8fdef1c575ef771bca67779c6093eb00e4ba75ae901ceddb70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009d79336bbb4acebc307907bc93a975fef0c02d4a0a49cb62396d20bad863ee62c579510cc7e333b6ad70e3e5980cb3dc02301d5ce2925a031a525f9bbf7ba7ca6806af624c9637dc4563979eeb3c6529a1914aa86440636c7c2cf98cebcb11069dd30302047c435bb5006730650230207f36b29989e385dcdfd3bb7b7026b31b32e0a9d0a7cfcc44e8962583e59ac1357750586bcfc6778b05a1129b1f3b00023100804aa15dd31c7fa5eb9073748a6249c91fec5e4c430bdfd252d395446c33fe27fe33b3d387400d1dd659408a701191510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0e716edd2b92204594fff071009bc427547ec7fde95935810093ddb0f4dee1668223bb6e9dd2b35807c479da3ae857d023100a561efd9ca2b39182718677b55beae040f4186bec1e729d76212cd08e8a0afcb3b173a315f7bda7afa0f0273d713ae030302047c435bb5006730650231009009a256503f31043f38538a5eb774619bad9b73a2f85f9dac1d514b2965300c0616e96ebf2552c034a33b89f180660b02301a7b6efd25355bb4edd92fe9c7c49f57a67d12b57852e3ee4f60ccac7bfc10cb407d3133c17805d19462958572d7137a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230794a6a74e83dc23678928383225c28d45b4262c3a196b56cf6f274c1d73952838f1426c7871ccf1f2a85c5d94562d59b023100aeaf003e1d6755ee966c1bbd6d741c0e6adacc482e686ec314ec38b3f67e1058e2217163f41b68e342774e201dc8b3aa0302047c435bb500673065023100f88fbcf8d37cda56c387f41dd4143b0839c2f6b91f82e45d626d17e367570c0bbc74f57c9034bbf54382a23c50923efe023038593910eed7eb7e9de56f07b738f53355a774115760f2ce5093ee6d699ef2d3f58da2a619b97fc5ed0a5c845692952d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302e763a0817342e099d5aa6df16bda17fb79b6a7a7e1c514a25b56007e60aa2ce12f7f1da89508febee48992813e2e3d202303389ba49983f266480701e8c083974380f199da62081c1328715fdac9b6590322c94b8f3475000913ca5a5a928200b890302047c435bb50066306402304c6e3b34d6208ed71358af04ff2c2435e1bc3740bfe5ebdbe6bfac11e0e13662f0828d0d665d35837c5b532549da1b79023021e0686b5c3e4bcb8f3115ded50045d0e564066987d4af28fed6adbb06ecc1abf63c4ce3538b0da7879e57e823eda9df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c8e045ce477fd1994a0c255cb5fbc8c00ab9cedb7191d64ca5192d05f6111821619571ff2ea7a0fc4b910db41f29374c02305dc04fe42a617f3640489def717c33ed093ea441ab2fac378dded80f540748cf0191392c8f024c9bb76f41021086eb180302047c435bb5006730650231009a12a9d009051fef4b2db41ac4c88863fcaa40085d029279fff9f63a400660cef442b724f2d348a81459f37ca09f412002304545db4c1ee6814fc4dfc4c6cf59cc123306d9895668e2032c8385b19e0a41342ce1f8a826142c76465ba7c91d47cd010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100872b1058c8b3849266410973538549442ce827671043307b2abebcf818a63bf6b4efb753d0e1e94e351eb5be5ffc34d702300cc754b73860d96255326d157753e2d6702ab6620055e1c197dbf9c8846dd911e1fab96fc67568af864cc88ae4bb133b0302047c435bb500673065023100d97cdacd93aa267bc471d4557cb684cc53462b06241aa552739448bf3284509952e516e5ca072de9a7bd05804158fefe02303a905f6c7aaf79557b3711d05253a0f7562b3bdfab969ae2dd7148e64caf0743039c7a5203a8b5b934e244142bfba4ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100876fa4394674d26da5c3ce27a6e5e7aae7abaede5d6fc5218a1ffa3c63e88c4974f7b1e780fbbc375e39d3f78e6f641602301fcef0a978298ba5a985fee4fc70a0e956f240954b3ac3b83a1d98eaccd51e2f73ff214a8015df8e594ae6d673fd29860302047c435bb50066306402303bc06ae1baaecd36867ee1f9d5fda10e51cbf3c23171360cad37c91e588c2984c81745bff74133309ed80d7a4c2b620c02307b09a372a333baf8e9f86847cc13a501241abc5fd61b0cb9610b3c09cf898d911581bdb26e277dae8bf35c6fe1a7d0bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303499e0d082fd2e7d28137445ee12652a120b85b3fd8921bc2e70bf75987577adfdc16f4b282005d75d492b168c6cddc50230490770d386ccd38900e2dbae9ab1133f23aa93bdc99214fdd5231f989eb6470b3047dfdf9032c670cff217a08a79971b0302047c435bb500673065023033f97e349ad1b5ccbe69532194a802083623afc4015f0db29f5ef65755c2accbe3f698be2eb3428f1e6531ec9f155f4e023100910d2f63668767984ab97993c78439d84f76281dc2592025ddf1091eb890106a4135876d1b38240f1aa44c6fe680cd460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023020a01f7f2260d971878c7381a82b0693d8702c5c5a5691b7b5780b45ce1e53c593785c8446d624baf2b93cb51dc8353302300a9107550c8a4774eed99cf9690d7a54acb70776132499f8863f3badb11fe9591b1a745b7a5a42d0f000188861e9ea860302047c435bb500673065023100aad54f8a0880b134721d58599ea339525c15904d09f573e6490edbb6926f6b14e11761a3b2b8b21c525efcf3a104e60902307d9f04224d680368fb4b03fa1146531ca4ba00b9263e9667baa9230889aaf0d33f77ebf72bb629af79d07886eeae1a1d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306d0b665182d36be021b3b3bd3a3a6185f77dd081e2818012a464068399100945ea97df497f7b5c1258ae9815d991cafc023100e5d980ceb34a18af71535d56359fed049e653aca668a70094cc86bb46dfc670671308b837cbd870f2a3ed03630e7ec360302047c435bb5006730650231008a1307169723b30067d6f340c2668d74b5638bd40f2cfe13b251d38818dcf1b6eccde0e28de5fd6aafbaa2a13df2f72302302bb1b0efaadb39b4275cca430c43022c21ed2c7889abadf18996d410fef13641855194e8c06ae450d5f5227f4debaa370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d4a87715819c96452e764b64e2aedec9894ecb0cc12f005d18dcbbc9eaba5e43c78d189cc436806ef62b0905e10af625023100e2ec35d215b0757b2eba4acc431a3eeae7bb7a37446901fd36281edcda967171a959e9220c8774f4f237c30da0895c820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230078a94b0ae490c00924025ae8e5f608cfb5c75af3af2767c02cab8322e690db619902689d087f738304befbdacb44eb4023100b7244bd48de80156bc4eeb76a4c1ff84c43c384c7cbc269be9941db5869a0f5007974a26d0d8e87f4bda15075ae80a280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300372589dee7fa12a2608f9356af5fa231f5c01c7fe9311c1d7032e73688dd4df75884d4da2a6741817ed229c767e6b25023006e68c834f64d06172e1312141f8efb8222f690f1b7a7bcb845134ba052e2ca62ce7fe92af1995c9564b5500fdf95dbb0302047c435bb50067306502307e5107a59ccdfb153e55619f00c9fd1d360ade4091a004587bdb37c4ec2656d3bf5ca17bb0260f93c3361910270a2342023100e7675d1a3ccbc15ac7807010e9dbd619c61bee488447ef990267daee9df63d244c05b6f2543501af8477fae7e8a44af10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305852d3d25d54317b7b5de6a341cee753f1f5720662d67bf8aafb8827d865d2451a36bc8225c3fafff57f665dd756692a0230323978b6ebb2b453d1215059f2450d8e5ec238e502f383ba583a8db0379e9b5d2721898dd06cf89bb3e8da722360d8d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100eecf9415afbb847d0c47511f94ae44d1a3da12389e32d44d02212bbf589a51236876aebe987f2ac5dba3799b7db0ffa002306da1bf5d502fb01242f932750bac44390ae125dfe0d26fafcf157b5b08aaef13c3ed358c78163f78eb461b327a17f6c70302047c435bb50067306502301e50b6945c93e80de297fc99cea71096e69874ecf830717d6138981d022468dec357f639c3ead8406cc29ddcbb2b7136023100e6542157734d13d04d827261bfea99fa675ac594ffcdb2ab563c926e3878c2c49ff2657549f09d730e879c54393eff9c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023064a80d561272b8df292f4158e4afffac01cf33e7cdc6c4f96a84b5b6a02b78acf314d08b2b08a77c908beccf983fa19f0230445195f20a42ea1e2bed4b1573525456c71d555f770f1c7ed77c9a9029b2ae84e3aae6ff82c21dfe0e9b38af28beda9d0302047c435bb50067306502305d6379148efd67e83a14474579cc6d7910f3f2989c9f48558a07327bf76bb4ad7539d61c372e1f59fafec76f15f4bf3d023100ba136d14f5fe88d0b1bdda51a4c80180b3b1f31da34d8c0e293d45165c0f59cd5f33d49507e2a9157d3fb5caf1a8fbae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307384e8d2d4a98df0a2d03bde0e3dd4de0cf1ba3133167700be3d5fa6b77bb99edac02a5ad14c29d417b8179e5f28d92602305ed20161ffdeacf6d93a9ba3fb8d2d47a99ed2a86756628477efccc5390666022dd60657d8991de846aeeb8c1b7c7a830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e6dac1d667b159ee45d9a9fd335342ebe18a7e52eabe6122a80b0940b291c3f6972799224db889c2cc15f5613892a82b02310083afbb22ca08e5797a99e633404392b64cc6abd9c1c55264cf3f65aea8ad502ac5a2d00e6536ea1d84a9d978810988a40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dba435ef85d9bd1fc4c0a20a56c3d226dcddd841c90b8d8165847084a4f676d768862593e96f3a80df72e24576f2401d023100f05628ed5afb5abdfc73b774d873555a3eee5d379398815af25499eb8cc7d96fe7130f33537f92ff63c68cf4012260e10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023023495f94cdd6d5cb897d8998625662ab7362caf208481995ab3ee1c6861c76d66be9a7b34688aeca93179ecfbec0597c023100c7a7701a5543702eaf24f39e8a5772e78bfaccb4a30249536505a304866080273ae43bb60a8c690010f099e25b1721390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230333f6a4ea01697b1712b4162d4066d219bb0ec7db6bf11c74cd5d4164c8004d4d6010001262cd09fe2d4857eb9e16aa5023100fa389765cea01ec3241367fdc8042e91702c487d122e1d27ca2a546fef429ff16ce87fdb01beb626fb0a4235f4c5c31d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302cf7a618017aab053e50a1b68c32f8aeeeda252bdd35ab08d4af731b14772d0de0d3d1c34a9b7051dac10e1f9f69263f0230776265c7dc48e758aca1917f7bae4e8d30ac5e03e5bc478925e8433badd5b368d07c61d46f4a52ce7c390b7ea15b53c60302047c435bb50066306402300dfc573941eafe0500f0b2e4070697bed50e87ed8f03566e39797bd5231101c5bb5856183c304279fad2abdfdeb4a71802302cfdd65ab7a7750e27f3126680dc67b3d8591fa4965c80018978bbac9a981abff074dc96c71776978268e446e7087e050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d602b7ca77b22de9f2db3e83f04ee11f953161dc95b1efe06a6fb85ee872a8563d3e7e2d6777c8c7abee61bafe15c0c902301fc65925e3d100adc1a2c6d19941ae572e3143539d3d89234d2160046c7e51422141d946137464dc8c258db321cd46a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304fca20caa1907b86f79929ff4702acf9becc50a494d466d2557a1aec569a17606706bfe41afdc6edd6683176fd95fff902303e5ffc86bd456c00766df6c16db1784b498b47e6b0a4cbf1f1807509ab2ae6bee75b03c412e6e71ac0d8a3f5d19a58e80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023068ef23e450a70cc35b41151a14b2e2696967a6f9e348f2d5ee4839b9b5d9ca4eb9cb213918ace9f18270dcb7f487a99b023002bd3154c467d19715a870f2a57c81d01238adecfa505320a4d9766eb4cff888f070a6f6629942b724697854d1c221a70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310095192179b6818a1acdc1b1c82033fdaba445d34c15f2d76b94dd700b27cb86fe8333126e57798ea1131a1cfd59b318ea023002cdcb9eb071dba0debe9f5aefdc1b0e922f736b05b8748769af7f2270a9a6259184701f0f857add38a6023115f65ac30302047c435bb500683066023100c17d194518bed6c4890df10d950c728d1302adc89123f5433cf2d8f3830c438204641f9e80126ff399365630583de0d0023100a3e9eb0038c1d112abf9eb07665940dbddf5b126a968742f47d8bddd4dea13a82fcdb6dee918b4b2698339cf585aa8390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303ce8fe5b99778b5a75141f151b06fd33f38aaa3a78c4a9c43f693f427700c782de088f5bb8c69c067a0a166d61608fab023100cf652be99a4841e499bf3cfe8dd21d8ed5c263ec5dea9d63da288faf8ce12d1e189c9902e99692d578f5fc87b93a55ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009ec0b35cc5e3ddd5c82c5f0ee12a5deb2674afbc42d43ab5048f1e3560580caf0646d4b585b8266b8a1a1d6d78ae173a023100e330eae88e385f6566c26634f927c347f7a9f56262f2745ca9d9cc7845d257d395c767bfa2990cd7e36247c236dac28d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230034dcc6448751354364ab07d8138e2b052c0010ba3e0e4bdd727921512db6b022aef7a5d5b29284cabf830f1121f64080230373f644e1333b5c0fafcefe2b312662d5e06e1e75547a2449a902808f36afd524d95839acbd6066edfaf3f60cc584cc10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ded40e308992199155484fbd298f7b1e0a460f651501d814f09a1e3cb05d29d769c2bca7b3a04a747c082d47e7ee636b023100baa2beb6d1ea24211d81687ab2a77865f5afedce8bf8bb05bb0c63b16496f14d23c84a132412b6e4d54c81a540d2f7640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230163c25a8f071e97285d8568fb63c11e4d442099077527c5c8a88d4bfb59cd0516fa0e6597a501fb3e02c52f8029c5f0802305757db59c73f052c7f29054f7c0376549a9260a7287887b87d093b7ec5a49f12f37d90428576cc2403f1eef09a3be8ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ef74b8e3505f0f2aa951722d6d99515d91c2b4d8247109d38fd25fbd60924c7ad2f72c8b652260423fb47b02f9caa477023100f1b1b7e210f25afb0abbb3c2d60eb408920857d6f807cb5b610a22c2e2269d6856e15058517a902b9f98404f5a1f0e2c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dac2997ae4c5b2cd798d512103a5101ed45ad835cf97f67cb97e1928b32d1b39c04fc8c60a5deed48baf9aef492fdeae023100ae672dfa544401f0429fe569dfac120fb984f132ac735da323467506de83fc54cd11a03799b8e03be7571eab2231706d0302047c435bb5006830660231008ed419a92c1c9a4824791a351fb9ed157bce3fd70c23580aa573abe4cb58d25a2255d9c89704a5f6e97a2961a4fe753c023100d15702a7bd68c5433485bf503c757434d76d1e4b7fd9a08dd8b01383ceb91f316019503a881294e428ce6942196c884f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dcb6d6ae66d367daae2ef473d778dbc76d716aabf2766d478ad2234f40a757b49144e4a9d0806fd2fb957044f0896cb8023053d7be56a045645ac9037f7ce5d9fde290e2c53ef5fa2a5236e2e84298dfb0a6e9ce6d02920554f4faa4bfa0cf9904240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310087c40766c2f102914ca9607e51b2f015ab5f04d5f2b657ee6874a17efbbc8bc70ff34db9ce08c3813d608d191fe91dc2023071d23d0c9d54adc17f75886ff941f631d7a9fef970d3ac8f2f4506c9d0a2f31eb533f1293314a950f32c45ca3eec2cb60302047c435bb50067306502304bfb20c5916ce62c0c84b452affebca14a66033968faabf9b94c381149e3ffa357c700dee9975f4899a112450d1c41a0023100deedd069ee7be6f85bf93559ea756a31a429b5f52ec8a74297ce2bd7fc0d0c57a8673b20c1282613cfd87650b6eb43eb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306fa187a39be522da1e170b3d10daf7225969fc66804d2877d7c046f72722cfce10a4e3db528e238ab0148d498edf5bd5023100e39104421432fcbbc07c4840264b02220b68415b02a71efeade7adfa71677ae9c48f065fb9a54d96b40299e235c21a710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e3e059bd50add0cf768c9a9949499ce18c874d325ec8719f76433b0ec36cb71037b47ce6fa6e11de32f6e1ff83cb41e90230699715d518ddb50f8d1b8577bf7394df6f0aeaf803a4bcdf682ba7ce72080f85af2d7fc6a9f597eca9f4af5675b5c3c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c199e23924871d8900a7f9551dadf147efd6b1246960d841afaaa55a7bd92b5f25e59fcfa20e1e5befa517059d794ea0023027252639a19e768361aa8baf65f006fbf5137ad0fbb3b69a0ff38cd49ceab5a1b6071fbff916d7f2f5bbc22fac96ccba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008f3f81cd305cd5cc21ecae15331de58fb07ee8713136a5c91884c20b7cd1956a5e81605d6b023126f6a076332bbd3ae7023100f3d14991f770541e61a677cd4ba86ebfb051dd1eea806b487e2622465aa7bf29411eaed5c3a4b94609d0f564c63c291f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230445dd822f952b36f7cfde7b8ae01a8202f453b723b93a457c97d833c690c4b5941c0d0a896f1ba1cc93c9e4b2e5899c502303794a0599d377bb684e5218b55f385c713980d4b65879023b021251b33579be55b8584f57de62d7c294a2a674925a93c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023018b1ebc1bd40d24b801b73473a81953ee4139c1096f532c4def7f6f07d9ceaa949be4734f9113854fc885ce189a64f0d023041d5411192811338208785b9cbaec513280cc02dc9f052d157a47109fa780dc8126071827eeaaa899dc75da839a68d510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230340d6a4c920a8f2311da25bacfa51afb73cfce632f1dcf1532f237425e727430c04f7767269b3bd10e35c361ce8c7a0a023044e4235e56fa4bad25dca43c9f8366f9ddd86d50cf81ead613e9a5901ee85f3f0625035b4c0904f81d7f813f2cfcfd3f0302047c435bb500673065023100eeebe77ac2e011e71a80e5dff7c64a18749f4521cd7a348c2fbbb62ef7d9bdc58d7eeba1ee224a83fa4b8eb8bf818228023057bdf9ae6c1a8a6f00d3d679a4fb877f498e59f7b47cd354b2997291f422834015fc17839f6d837255995dd351249b810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009dc4cf4c7f9c37c9724d5ab73f3e7ed498e62b661e868aa9e8a550e757fe2ec8497f32607e6b49e58705e63fcb26627b02303ecfa8a7e6bd6c70156ac11af5e56561c27efb3cdf1b2fcc77a585f9c49e842d0e64ecacccd7abf2cbc4fc133559366b0302047c435bb500673065023100a385db1ac69233533ebaf5c6e1154a17f7f15f5db3f21234a34548e46b015b3d4f051f53021cc9bf6cf98a43bdc90aa502307945d7278ffc994beab94113786cb66463947bf9362d8bead984e594d49bad846bb2bb881d2794da89dce7fbc2e2a6670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230432b6f41b787a5fe045d194d6f0d3a97355d6b6d19ed539a70dc746148773e5915e40eb7321675d6373fdb12f52d79eb0230120e8b435fc827c94528fe63530f5efbbd8f994a2f30eee22442b88f28216bc2e67f80ca72dcdc0d0cc6f3377df0e5170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230706a39347e412c624d527cf58e51d47eb67f959e9c6d180f90a3ecf1f499d5a9d640ba6543c3a776ef43e4f2b25f30290230061325a7490e9e11d3041edd64507afe6016bf27aa3f1ebfabceabd2ada645c76c21a8311529d1fa1d54795e2ec5337f0302047c435bb50066306402302d5fb8b2d5f1111600fd61d04cc979be3a19ef5992b3b774ec860922bf5318e4c2dbed43c118f8aa5eacc58bed24bb28023055eeb0f83a7179eafca26a298c7c197adc8a172d245cf838a568303db1d2384d800db7e3b0a3b0fd5cc99d9be8ef470b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b495120b82b37079bc12ad0bddcf639fb778ba548d8f692fe1dd43370a44eead7768a55c6e924f20f3516afce9789e87023100c4198c270d1191828376d0392d2fecfc166232c9e7cae8cc60b72aeee792685620faba8f8c8f451772ac0fdac920aacf0302047c435bb500673065023100aaa65aae47ab839e1dca82e198c7b16b24487b693e3ada6a5833659e101537cdaac66045c72127ee985d6a1cd3c5fc1e02307200ec0e140c6a5a6ff625cf1631d785e7e07991f9ca4b2b289668a3bd5d517b0b87ae3bde986ec7ecbc54ec80484ac80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e0533019145976209bfb777ad96f41229cc6d23fdaab08a477f4c76e9f54af3855b82351015cac6dc6144862e769bab023100904671c44c40b5c879e4d755bdfda59020f22c2a04022c7c602c507c7a69a7f30b1dda8b5a2a62af7cd07a463550ed440302047c435bb50066306402303e3480bfdb0772fe220e32c768317b74f549b22b4320320619c6a5922dad29458e72f5567705e896990994f1eca6596d0230690e734a6757b2adaf95e6a27c9116fcc06017d640a406c475a803ebbdd4f647ca87c64ba3a90c324f840db3866f7d4d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310081b2532b2e42ffbaab369efdc6d3a499739bdc1c2a192a6c1417656b032db0102abe33e46d1c3f56ce7d80e1f727563e023100d7c3609c5b2d234649641d00d408b795bd39146b693326545b4c93899b1b32b7bad200b716b3a09eed1b0015d056fba20302047c435bb500673065023015bfed7accea44583951b392ea553aed870fd8cd5fdee2c1022249fba347d6d86d8556e457bd797f07e3a4001aa02fdb023100c4950bf10768c0312bc56edf0349160558461b1a4c59baaec34d8184f729aa9465917f8c3739e72d9e309e00d695e11f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f28df7ee6f215020a47300065396991da6fe26f59df39b7cda3d1192f25f0e6b2eb7221b66d4d3778867c664490d8c6d023100cd7c5284972ddba9a8c12c89c63cd22700b7d9f14aec5882275e506ce3102f2ad0ce1655a0818f5f2164e0336fc965300302047c435bb50067306502310085f19cdebe65397860920b8a002d9e7dd68951d35231ee89bef8c93f1eac1cb598fd1c80b7e5c9632e8f42d0ea33ea03023024eebcf60c2645b170212d27317e6f05196739a97854ec8db4c533324134c15858de3ad50d9e249a69c9860c86f7ba0a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023070a5bd29c77178b21971d2ec659b7af5ac7816e9eaf2fbc04e27e37fc0eb1ec8e0898a6ebf94dab7eb93380ef8f7b24a023100c80d79e80f95cf820d098b76a3e91b08c94fef745d20c7b6fe3449d900fbfea89d23fea73d5eb6845d2278d53994f0730302047c435bb50066306402307d182bd347b20ab37641204e3ea9d6eb5df47daa3ad1ca3d5e50d5c29c77276f8297112ac7cc3be62c5ebbd0d82ee503023028cdb7afd8065109433ca3d226f4e7b3eb31ac9acd08c18152dc41688454fce18cb07818c6a38193771eb4409c7e6d3a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb85bb8c3af9b5f26e40acd988a849b4c6a4fecc83ac0391c5ceb5a0012322096f1dd4ae10b1fdc8e2de0333761b6949023026c34e9c94f232f32ba098bfb3a4812d7c35df6dd579b2386352a926a1f7a003b5e22ae615fdd7f206cce775d19daf3a0302047c435bb500683066023100a5c328febd82d4042e2dcb2b1144d40225b53ce01769f3e621e3c4c7e6272703be9075c5269dc19e6deacab8286c73f1023100f5c695feba0e99a873f464142443d7312d58bb3da6f0ad76721fe8b3555badc2f406da166acb84fdb577d7e7b9b932660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305927370deb5d5259e814d49d31eb69727faf8afb238f7981fd019e20b9f540b0e7c159d6518d023da39c3681795cc13302302529bb4f2b88619a6aff7c357a111d504cc5bb24fcdb419893232772896c44420c1c8e58c8c961d0eb837150a7eb4fb10302047c435bb5006730650230221fd4d56f9a9d19f728dc94fe53815e4dcf4313fbe33c01cf10806023a4784a7c22878094bd6d119b13504048f2e260023100edf5479f1aa5b5004970cc4348847deac737929ea4e01910234cb9963b8f83026f595cd471a3ba62b3ec867288dc4d6d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dc6201e059a52f1b2fff7a2bf80ed3b7df0d546500803a0cf9ad38fa904a0d1c67dd81146a29c6075ab36c002c5595a602302940cb52fa69cca21ad0093f7707d7b7a80a603af47ec4c0a144dba7536b8b9f8872f4471caab9e900f7d4dadd1ea43b0302047c435bb500673065023100f021dce8a0a4254520589aa6ceeaea02d8ed575e22acb6ab1c1ad7afb0b28774763501f4cade00d70d1079a7285965b402302733e03b2c618c253c5477b477d20f421215b10a8a73e71f9b3921765032094945d1d312e48b81b41d2ed9fcc6532f630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009811c7bee13cca23d8fc404743ba13a47c8d3154c803253a9293a3dc9acbb2c5d96f335de495b8a206ad516cfe65fec023100d50d0248bcc8c458330a76ba6abf8a3370da4101d28e5ce0848edfb9f9126aaddb6f90ca163548ea517cc0084e407e760302047c435bb500683066023100f205edeca6bd59c127bcacc87b755af752ed032c237a3cd140f4d04ad6750db4a268c5166b33782028a290a4ceea2b90023100bd13703a10f9edf50982551f8c220d463b024d88d51a4316a15e17743914009d4c1fd1102faca9de0268fbed4bfabeda0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f168f8a0aca9fcd93d8979729aebdf60d797e6afcaf44648779ef5d1d4a32887bb8ff490b5352d07759ae2a11d9c3e04023100b8f3a8d4b1c0c80616b337a1e42da10d127932ca36c90ad2d6203227a4a452b60c76a1f3499752e29d09bec616b65d230302047c435bb50067306502300b99e29a079b19706e79d0a4383936ebffc198d82a62e278299d6c9c024ae651b9a00c9ee59f6f217b2cce11a994c3670231009c1005c26ec572646445c30c57d323e70f7110f61292415cc90e23bb3f8bae7b7ae06e76d82a5399d61e36f688a1dd260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a1fe4df7c2437838cb8dd89b378c3fae61c28a0c04b517e847bb620ad2b543243aca5caf181b6ef818cb7ed23d6dc99f023100f15eac3454534494addf86a4bb240be1a7e454ee2534870665cac721d9bdb55ab9bc211feb55919f01b483a6c8e279830302047c435bb5006730650230354d93bb87de2ecf3e5c93f21d0470a09ac6d49c5532e84d212e31839753c8eed0c619da282e5f3b2d03c978c23a869a02310080e2a2f6a2d1a48f08bd808969fef2ecf53fd976d39965905ff5d658eac700ec355c2ccc42f1784e10b763da82da23d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ac086ad8e7c8301c0e8770ffd5aa0dc56a1c16d4822b252c214819539ba2aa553bfab68a5119c47afbbfeabdd890ec7a023100b05815dabaf46c336be785723353fdd73e26bb173062b2efd561e420628e7aef94315e3f2310db349443c1e67ac90fb40302047c435bb5006730650231009f0abf90ca66dd09aafb94327679d460afb41f53037964ec2709556365154863710136b44498490956ba5dc7a61a4633023057edbdbfd5a92fc7bda053d9993606fff3241a57d8b60b9887bb6693f1fa02854103763dd6e6984df4007984e1185a340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d3f1ca7f5220f895a1ce1c18aab57f10ff256aadc7628a587aa6a424dcbb25136f9deabea9fd5cc00a81c767211366d3023100fc7070c3d6f3a1ce13b95f83e0ae638ef39cbc75034027e3786fc93f28a5907ab853f40ba8b0cbf5938e9e586de7eb8a0302047c435bb500663064023055ce244c14c130b8d4785693c3b293105e3125806b8cbe221f6e850cc21d6ea61aaad5c05183d7b7c5087625d980858602304f48bff1f8dcc9c38eaad74f71cd79600924fed388386d9552fffef19e2abbda845c923903b2086b695fd4e889f945c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023048012a71f7da207ad5e7f4594f5269a7b7b4a06893745b891dfc2744357dda99ac10d82d72f6c978af06dd564f841301023100c75d404a5e4e73ff03d7648c748180d50782ec3fb9911d51b3300c81d8a9dd839afb1e9750ae48a061a8d42ef64f3a630302047c435bb500673065023100807032e668c665b7aa24103af35cc40a8e98731c22defb8097006bf42a7929473f8ae225ea553ac8918d486e9b6ab63202304cd9ef3a71ec1d74a7de372287d7958e5b081d953daa9b1dc8ee8801f67d08cae21e65e58a62a64578a788e978ef05370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d419008028f62bb5de1f68606d64d640757d22159fbe9e8c0f9b026132c5a62b0bdb51538f289b4029e69011fedeb2cf023100c5c5f434864b5286fc05062fdc8b1acaa7ee0f535452c3a3b095e0f591f2fcdf0fcb7f13ed8727a349c7c9183eaba4230302047c435bb50067306502306d89d802b9f399d01a68282b2817f394a5543678ae41f7c03746edb97e55e73847bdf57ecf0a0c2c7b69a388ce51a27d023100ce764fccc8c109b1576144c04366d6f047060d771891ad8e80735be13df9cc16123bfe3db40e7e36d52e3f819eb8419e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cef7fe471b8af030178116859aa8cd4a5478e2018260afeef6e88b12af777cc04c2bbf205f66229c7454d0678ba2ec5c02310084daba4bf802626eee6e034dd610e21ecb4c3e479ad640578315fe271bcd8d829c330aa884625f394fc1637ba914e3a20302047c435bb500673065023100efd156f663c2fc051a308b01bcfde6335bcc0ba4a81c65b0b1acc3b6149bc871f02396440e36c0b3a5e7cb0b7830bf79023030fd20465bed9316d7d2df183662db9179b321b760a9e24e2a982445576cb979259c4d66988e0e6c01d7de1a9a9d4adb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306330d2859631c7f98184243ecf59615a1117b0a38a263951cdc372f5230fe920927d644ef2fcc7cd408ffa1a30672b26023100888bbd0eb801bf47b9b68227da904fafc7181ac77ebc1d150bfff3eff9455698859f30680f1817e2c148451ed2c0edb10302047c435bb50066306402306a352c836f3118fbca4e56f4ac0c977e216f739dd6b23cee867d1b278a55262c8ecbc01ae7c7d328f87fab548e41b26b0230350161a7c853105b9d0f99e0295ccc9b57cdba90303638029c8d4dfed339a13e003930592c97d90fdbaf86e11450edfc0302047c435bb500673065023100d3a810e2897789ef6fd36229c81a1ab8c472a5c7ae54f100f2e09ff9d479cf748fb8fc5d890450ccf4fae9c7672faf4802307e44a3f3f3acd73c124f559ef3d3bcbd2f706df5597bc08c55bdd319f97a695d20d02f99877455a4c168937928ae6af10302047c435bb500683066023100d36f28416a2d77f19ab950c1f10657c69c6242d1fa800b25de9899e87c69bedd0f24870c7b9082a1eea84927186b08d1023100e8fed2f72cc8bc33215d12cbb11ca170ee8d4b6f5faaf9d0c83f3823098ceb535b40f7efc547f3d1be3f37a5e83b26c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023022386a437b39fcb7a2168a424bd93af94fd051ba079d70355db4a4885f120d5af5694afcd185df7520579280f7be33e8023100c6fddf5b78f0c30e473bc26316a7215aa7b84bbed931ce1705f5dd56b43107d610594aef8061141d39349aadfe78051c0302047c435bb500673065023052f2a29a450b5e6f1d9c229d1f414b94aa7243c8d1e9f42c3d7a421a0b922faa97f814075ca879600dccf2674bcfe41b023100f38c703b7140541710be0fa714aaf490f65f352d3a66f561828b9a585f9f98f6dedadbb9e61e72e7135238f3ae19fe3e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305633af6e451b934552a7486510db7e8a55c3b01ffa77ae8810e3b5012e20c60e9bcb8ece247e189d17f2a76e9a6db1f6023046ec2d44305afa618b7cdf480c5f722aa5db82ddfb3e3566c00f246a0d7d17c8648cc0ebfab5236971985df71e6953af0302047c435bb500673065023035dcb61352ad228a63bcfce1c12256cef06704c83ca0d85096cd41e32efb7f57c601a60e629e0af6572550cfedbc58c4023100e69699fce50e763c73c35010dbe27884d65bd5345830c985364ee574f1d716bbaa4c2c6b31af1ae8c752043043fbfb320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230544437dc0b322e9c7fbb9e820ebff561ba349fed9563954ba28d7b182a5865cf3c468722403a41a1ca8a6aa3fc6dca8102301b41182fe5fe7f8bb8dcb1a72581af85ab843af3d8890011ab6218dc6d9c40ef48fdaeb6e765af49d16a9637ebac8d5c0302047c435bb500673065023100b317ffd903bdfa183104e21cd6d54bbb929f25b15f9c4cfa86e9c46ddee00b4b4f42412f5ba1350379902f8f4bf4ce64023064618fb0b12d5033794bc9b5999b955e8eee1551bba6a10c7283d1acaa9f0df47a781ede822c5f480f52dda1b5bac09b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a3216279db54639acda0cabd46c4df748c031817efc7b86bcd04cf6999e88a0a4f1e9855378fd7f3ebb3aa0ec97c615102310090141de626af0176b2500b767fb816610e395b0af79736b784651c8ec6064a53908eba44bc11d6cb94c05589fa2ff99d0302047c435bb500683066023100ced3fc46ba1ef3b5525c5961dd3beeba5b514fbb5550cca78a29b8a55d7a913357b4711aad6e3a976bbe8968ac736927023100e330edb7b08704e52dddbcc8d9640a82f6cd1eea918d1171f2ff63abfc55f5695aa067dd0d5eb1eb492e65685301f0620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c544ca84f148dc2cc0a30a29a88c798208f666eee542df75e5afaf8676ac09dbdbb382649a31cbfa2a8648f452313425023100850df08095e3b7fa6ab9c16618fab8d79b5895a5ce5eb54793f31e35868cd2a26d4625c0e5a18c10bffd01ea8fc967470302047c435bb5006830660231008542959bfa3c21539a461243e81b3a81c4691fb0eb73ab97e31b2e77a666e8a6f3f23ff8877cea300d5ba7b8af8f451a023100b467c989a62a0f21d302727a2a7f347c7f97b62966117e0ff14b734bfb5b64dc390b1da3321e2b89d9bc97b1526dd7300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305b637e3e0f88366d026b95c37baa4c5bc9c10968f2f70439b47e60a217409a4b5bf1ddcc44bd4dedadcaa0627fe13cf802302e2c7221a6028281686893d13c57683d4059481986b6fa79f5d07302243a19f7ef815d51c4674de5350727b44a8778800302047c435bb5006630640230252effc1e71d202c4a83a8f47e98b8c15ba47ad0294c275c43b63aaced8e9ee5ad1d240e07b7b48acbe8f21482cd295e02307236479dcb943c61b05b180de59ea546bb87d1d80b40ab1b4d0083749d0ba099b928f39c21503a94c9c62241faca96330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310096d4d958bf096cb96e63d9905143232f1c62cd7cf9e41a4e5066cf4e9cf0456e3a6662ba5a9c8eda1fe13289439d0c1802303240bfdb2c37106dac78e7ab97c57811f5674961bf21b1813005eec777fd37cbd55f576ef2010c8ebfeebea7c730e4bd0302047c435bb50067306502310087e20fe2c5ea2d5285b9d84e0a42a1eeadd0c814bec83fb60cde7c749ec9e1a6deb82a6f71a46a48b0110082816f156d023009498467eb54376efb68f78959dfe1b7c5dd09d3cc800a548adf0be234b7b4c6bf7d98b60816bf64dd47a7473d8a34c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e7514e05a88e1dec4aaabb852bc5db77761dc739883bc3c6bff6bf999b2b92e79d7ae2cef636f0a401d2d5333cb5f90023035b014a106dad4f94a125d863450a8602630d7195e1714d5bbee2e48def293310a59857f35a7a6cc6edab229cf2908090302047c435bb500673065023100be6e88c4972277d3b4f0933058e060c7911ab9e7957dd9e429c55a79c96e89cc8fc3d4d5c993507c066639f140366b660230392ebc3a771c781ff66c1ec7c2efd8bae91b6cb43f0e94fe3fd75aceac1f117b53088f8315959b3e30fb97a2d747b1d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230024060435f4cad8840eeeb914118adc8ee931b885a99c7c27fc4bb2d77a275635695bd4d9535a4acb2b46a2f15eccfe7023032d8ddfb404fa5f2cbb147e8948080d1f2139f2b3d5f5aa59c9806ac744ddf2ba08ece2a9edd9d3b8df4d441cd21e12a0302047c435bb5006730650230693a6d131ea7151253153ff3960c37051a2712e8b419fda1f314278717309ea4c4d4b6251eaafc5409e2fc2e6515dc1f023100beb434d07f3535f18c4e7b28fb482737f7ecba5d1498ff4acb739b96f4e860ce86cb71caaa0b9dd2cce35df201de83e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f0a4443a6d03d38d720a7f753026a0f52e86e853a9b34ee3a550d6ffa65ca871440690d00ffa607017ea45c51db42400023100b1110953454e53f741e248e6d64277b50e1a80fd2ce6b33a2fb1e66e8d274e8af5733d00eda4260646e8828275af818d0302047c435bb5006730650230034bea29815b3096b2360ff0351148f20e36c8162f9786d9c9bec25f1638d0c83dd664d9b8efb93a65041ae1123739ac023100e67e375bd14821244e23e8d2796ae8d6febcb1ad0f7108e4355947e7864285c95d2bf306057c053122b69f35a7ab4c590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310089d636c5614a2272c098f8a1f7c3796581d5bb1294b1cdbb1a4d915ba0b547018c0d3ef4a638fb8cd8b59e769316864802301f9016720917732507d7bcadbeead388c6bf6833c6713773ff45078ee0f4c03ba749f1810e9a891cc0f8723bd21c1ba60302047c435bb500683066023100979809258df35d8b273d048440465771781b4bb35f10dfc7a1ba34b64664b9b0882f5d9b405de469cd79c78022b76514023100fefb79c159cba5ae477759320e6211bbb910ab8990410218ea66ddbacb7292b98e0909459f9d1ace5a9488b35b5566050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230205bb8fc1817ec49b0fce109bb1584a85685b08e504769f7e8418d8e94f10041b9399017853fadb2083546b5d2df9b15023100e7b00b386bd00e6b4c593419f89f92b8ef002cebf23bb0e4ad1dacc7fc7b03aff6b6297bf394b13212de8caba3f7c6a50302047c435bb50067306502305891aaa819904934c95cadaf67489329778ce2f3a4387d92b84b329d7de5dbd5f525d4bd342e9384f71477be90103992023100ff44d84fa87ce6c938a27eb820e6d4ce83a686652fe1384599cdaa32ed820bea30e2bbf139465dec80f2870c576c4ff30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d0c66ed26ee56211318f997b966632115b7475b04ba0cf28110c89c9b2d3f4455d03443c3b05e2efe67f59c1b6e33e302310099eb878ea5f3553cd3de6116398ce818427a79747925e519b4eaf779e16185ebe370f750acbf7fc18bb573bf98af555c0302047c435bb50066306402307befb0f36372542111880f5536ca854df6b392d193fd33b1b7de95e50b50cb1ec9eb392b3e1d07474ddbf8336da3742d023055d5c5f40ae3c803067700a5dae08d28812831fd1a218d86f3ffec843f94dbb16e0d01ab2d9be6fc28ec852b759f38d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ad0f272e2f99d71d08892808c569ce2a7a1f0a30ae4908468ab034b5b7d91bcb6b5ff847e3e07a67d41649bb5af10eeb023037fb6acf2512b9f695de52244e0a552314bcaa1d8c640ba6c504704d4e11097b666b7a87f3a9e37c98a051741ec6e9160302047c435bb5006630640230738ec5fa8836c651aef70dcc63ffc4d3fdcf0d597981e0b9b63925a5d3de78cac46c3d5da0b234c4987ea309af877a3e0230764bd3a0f4319c43fc7816d370d2938d65a5f8e33db49bc5c61f7a66655db587959723a78214435ee5cf25269f43aff90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307e6713f4c9522fc81d00d5682d8e69c919416314ba885b6da260ccc8c696d64e3e32c87a7943d56238c278e5c472c3e40230352b6fb67426943e5a83b72579e0ccf779cd45e3b048c811f7d38bab79a81a3c366df059da92a9143422daa578a9f4180302047c435bb500673065023100e7e4259a93edb9c79b74a891065e9cee00f1d153089528359a9e0271e345c247f835442b239b91d49b97d564ff96b78f02305f65b2156cf2d21765e0ec621723fc95ed794c7e99541e7379e0b39610955a2ef3b93fb9fc2cc0a5670612fcdcc090520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230688c454aa8b199aac8cbf8042deb0eca46d4a94ac7a623502ab1a8204fd832ed57151a63b60006f97da946157d6cd6cd023022832a044872b2efd9eb284316735716c8678bfe7908b80e5a381dfab887325602e3e7b4162dad6cc5aad4c7818dbb320302047c435bb5006830660231008ed56183a48eb45f2a142a851f636b13a17a44e86f3e346045ddebc3a02b0d269b57fe780826adacc6517f690688096a023100824b5a4b144915f5536d948ed5bc5569fb16400de99a189b311dd014f127d4ea5518181ecdc6af08ad1a21d662e09de70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301ff99074b8272ad53cebdfc832e9a1e136276d5d9c449a83dd24eb48a3c68422361431ea9975aa60bf5435f3763f6b7b023065c1dbccb0fc77ce6516f76f43d19e7e18122f2f165688def37eaeabe6c99b9292e07864062a8f3fd2e71fa57bfce52d0302047c435bb500683066023100fd6af40f78bb2505932a4f972d3d60f3e5b153e5c46fd47f4d5f46673c42d7af2191101ade6fb29e496247f538f41728023100eea7314c96addbd9ac1a9dc79d3291c83b3848fa165d0450e579b163dc57acb949f72576b88818a8ea12486a7f4dc5990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e7824e20ac2f87b31871b69354835fecae917aa37c9d601c5c08785447b6a4317a56ae9d4b41daeed32771fb1dfc16af02310098f4ad7f1fcf5e716912485aecf33f9452737a5febd2cfe8a932f76295315b267b66657b2a0ffb4391664260b558ba1e0302047c435bb50067306502300718e71bff4e23d314fb9ebabcddce2dd58feb17d0f67b99f728f299814985afe039a150ea82edfe39dc61bf2702e467023100e4d8de3e3f96fdfdbfaad1ac2b15771ca9a4d1e6185b225fb06b31bb936546da8620104c3798fd4eece906667bb116f40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023047d31b6cb0796ff191178e36f1ddf84baff85165776c48f07da7c1c462d32036d84bfbef1f269d8632782bd9c3b28eb8023008906109a682eb60f23d52a57b56b8dc3fb2fb51ed0c85e8fcb205efa5a3be07de746896a9ab0912d096419669098ab40302047c435bb50067306502310087796e5ce0a5597b46df136f6931907723303133185038a6c6f4fffe81d6545035743c5a0d25d1991631d2f49e526e0102303db490c87af1b377fdffa062b8d10ed81f3a63ad09397b9ee17b31aeee597909b7b79911d7bb85cd8bb5ff91068f3ae40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a8532aee12b0e3ae5491f74ab060d32f847b625ba55ab06d659959946925902fef7c6a10939e381282bcf14c70c0123102303d510fff0746830e350e05b962ea4ddd7417f5609140deb0e3a226d62726d148ce2b83ea2dc65c57e3ead2db1c95930b0302047c435bb500683066023100e456579589dab7b41b349782fe82637e0a9c7a0e2c5e0e56c4f0f83b93f9cfde5b74f8ad4b469e92be3d59a8654886b7023100ff4984b214acd26049b3cead1774cd45f65f959af8a7737be1bd785a8a1e2d57cb735a93453ff3408dae4ccf03ebc6f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023064ff1d14f3b3a2057fe5289b81456660f944ae20cabaf0e3755085f271c2781abb83c6289989dc8f8de426efe7eb214f023100c4bfaa0a00308884351163cee7d266d5911996cb025309a06e3321ccb32abbde12a5dc1817282be507f87fa985f9e5f70302047c435bb500683066023100c44d5c65a8f88c41476004b73620fecd4d28fdea38b6d1f61560818fd4b1dad69dc577684de54caf7f9fbb051e1d13f2023100ec022a8e31c273685a1c6553450e3a27242aa6ecdbb46877e3f13fab23b32f8422e696109722d3e1c92d91e0ad7957a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302c6877419d7dbc94231a3120fe716f6c8d599f5722df521a30fe044b1c8cb24357cb3d8d6abd1ebb1896324fe82a90fa02301efc0ffbe19b5cde3be0dbc249105c4f71dd7f77dfb3b829ced0a78a909d726194f762632af701b51938344c579149130302047c435bb50066306402305f69ed49a62b57ea9b7f597a71b945de2768f4e8c4c64e180d14da1fc8fb727c7450427aee611ae2d68dd9f0dd2c2262023049e8c6b9385dc824a3ff74d062ac7609b16ce23c8d778eab5aef097ef7ea94805fa1e6b3b00344b8f050f450cc82e31d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b00b475ef7a1ebeb92cb22a5bc4ad08649ad2190e2be85213e5aa891baee2465aa6526600df61f933af8f1c0dbddb4590230728ba35dfef77ca45ca1e6882ac3d37c76eb76668da5255d3d45c0c17f317d9a10983c6154f9398dc39ac13de7aca9c40302047c435bb50068306602310088a6e90b24e12dd10e3dcfc033e52e44d70a8240e650d6daca6ab042a5c6ee0065e0e9371081a99736c2c1f6b380010a0231009da0006d384591ebf850321de1423ceebf46272387acc6f270e46cd0a517215ac827a35284b2bd569470ffb1f0ba44240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023014ed85dd54c85468f786963bc95023015f9353c193a1ad7bb3857a6de473ea225c35f4ddca8b3aed16e64e2064290bc10231008429811034bcec64326703ea91ede10a335c8d47b945024f66cf327d203277ce424af206a20f89118d37ff91f9b53cf30302047c435bb50066306402305a939896a3d1dc05320b7831af497596178e79580a1aa4c4afe8a6e645fbfaecb011794b3bfb6ecc2f5c2a2c2cc4385f0230478091522c9ccc2a5f1a340b6da8ea44b8a9d64242f466073c886d62e30f6d15a8b942cd768773f95781fb0e0752188d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4b47372b36e1efbdd0faec2d41548d8e7808416a08f5cd68d3b2a610df0b6b303774f7f28348a6151729a616f4a45c5023100bb7458b562ed72f487f3325977e45090f6caf5c9f2ad35a2c870115e3528fab38361c7e39385b40ca549003973ec5a180302047c435bb500673065023100b70e473d7af359d6b7aba6f9df646071d4046b17ca74b5b866535fd88b501cf1522ee5d5c302f1539edfaaf7fd7346f402307b26fc9c73929b92f6f48102b97c152ee01f4ee263617e3f0aebc21bb5582158446c2c66969218d8a2d7f017d38413860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009b26844a03a3764b93c5215d2663b93eaeb0e979be929f7663e77d48d63a8579e4ff7eddce57ce5a99a1d6d8c8bb516e023100feafef2ed8ab006b5496eb7018be6f297ce1cea913cfe52c67c4f427338dbd6648f82937248f52397571362ce93690e60302047c435bb500673065023055d743df0e5e6e80e9992054d429ec45f536e50b7fa1c5a9e9413af8825f95ef62aabf5c5f82467f7ecc881774d1047c023100e3e8a4b9941e2d4fd47c5b9b71f2a1ec4739dbda1e422e8849054319e8c30192f35b9a8c513f9af486084839181101b60302047c435bb50067306502303e6bd71d17222ebd3d075e870e4c295c2e76a5f6d0f013c984600e432951999e6696e187b17beaf22a9fbab22d0b4573023100db2f0d5dfe475fd7438e1b8a1d8ff0383174236d63686b86be5d900d94c037decbe886b098d2bc0f4c08a0c5763c33050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e2863f4155a06b9de612ef515216c598f5da70b71e52f01af6c8cbae0d7b9df48d6226a8a80d1e3e174aab1021fc7b6023025ceb163c87785834f3890ffd3cb560598f1d1a16520e18db4c124d07583868ef237894fa5bebf2c3345992d76702b4d0302047c435bb500683066023100ba8bbb4a55d47634046aa129bc29affd2a544f7b9eb38e7ee44cf21bd8d1e86bacd3a0ea3c74d53c32d1f75e075109be023100e5b002acb1a06639665ebddfb417e027e010ca5e66bea4ab9763633df92fbfe6ed9b25c60e8d7ef9d2aba139f2fa659f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d7b8925d5d20e570c082b8d40807729bc44fd4bc865ccc2b473bcf9105029861a039797508d9ec69d5de6e533cf9025b023100c4907b89a31f8b414f6400a4540288164b468d2ed456270c57bdf36d113e1c61c47b601eb76bdc6698d261ec8ff4619e0302047c435bb5006830660231009d28c6ebdbb876fa72aadc6a63eec67409edaac9ebf24658624c370c3a6fc6c5c1a5cebb1773bface511eb98d6594044023100c45777f91cdbc34fdeb2ee742ae61593960879b126831a0149b56df68c298d29d5f37e3ac148ea2e964181c74ac474e80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008a88e0ca2fe146a38aa428c7031b6306341ed7fc7e551a57bbd8ea8ffa297227852aaa786d045abf9c140169d4ffb9910230052a77425bc4c350f4631be6576c43bdece47e62b0d435136160359ee9e8f0d2a7066fbe707abebb3c9395ba8d24d66e0302047c435bb500673065023100e4c8945560cac397ff2bb40375922175b4031a294d05103f5398b50eedf2f44ea036492887070efe2ed1f12a91fbe293023057002b20569978cc5c26a0963e238d4fcdf82f82c9771fd8de211cf35b4e6c76fcfd14f30468f7b5a8f4401b98e31c630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302aa2b1739884bc13a1054563b4974b91c23c12fe4addd870bd0ea43145edaad167cdade2af0e7f29f5903fc7d6cd1f8d023100b60e7a4a3eedc57f0e971d6a73c5960f04e327370ec6f6fc68535c79e0addd671c7836d280a05454f1076d2002831d570302047c435bb50066306402307e49a5f4d21c83a0dfbd3567e078bc5c638a84e30310061af6b2ae848ef489f5cbf8b0f13f2ba587f5a3d2294e253c000230344605c9f44f513b2e85fa86cfd26f78133d050ce347997563c76684316cc69b15489707bae81bc9e6cf7fb82bccc6ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230614e7a7514cfed2909074e9b7aa83ba5b516b2c94f6bdfe12929218d683fa3e7e3b65c7439e608a3e1f36be0bccdf9bd023100f92fd27dc128b17128c0cfd6d458e9bb017f187c18c8e718cad9d575acec1ca545dbe8baca9d66cf4e9b3d4e2d425e960302047c435bb500683066023100c32f60868410dcb7325745d351b28ea5bf16df080ba1e0dcc152c3f13141eccd1f4b0c85d95ef73b25aa16fd93626535023100e7cf6c43ac1e5b72680a72f670ae756a664293bec7ea8e63ced4c7e77deb5229b59245826df45ee32eeeeff10dd946340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b0131b0f2cbfe33b5178a9f168dc314a130dd107ee83d34c844a01ef56a93ef6fb117951a7e2988c08e1a005e2bc3adc023100cd8c33047d97c5ada657fee4a6a7816c69c7953b423ab995b37dc29073eb3dc7bf8b1b09a3a4db5b78db987705a4b44d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300f9c059e5a12079bc5579c0c9e925e8dd40105a4766e61d537a17f4fb5431e1476e66232d3b7545f6fc7c31f503cf9000230054377fa4d977be551898ddfd94c40066ffb0f6ee316b1ab77c4384e013afb1b62b3ecf82af9a14035fad7462b17109b0302047c435bb500663064023027cdb015324649472aa341b4d2a98fa92c073ee55b8b45e0a8fab43e7cd707797a760fcb6c11567c0a7f4cea04a97d89023070eec64fc52a6fabeed1854bdccddd5e114c0bd7f62a5e0045e7daba37bf9b546b807d80f58e9b760b033604c767f16e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023070dabb75a48162bc2fe54b6588036252b96dd0a547a922db78f7328b0e9027afe2ba9ed50a9fc7f4c512d672f6f2ae0c0230662c5ad2b618f23c345de64aeba30abb651441ee764975a6dc21f772007c3a72bdcf298b03116612dd4066ea1d69908c0302047c435bb500683066023100e6b35bbc860eda01ed5c225c59a16c1d9a8e251006a3eae5239701d15d564b3a56ae1565776d58e6f8a7bea0608495a9023100be34d1dd62db8235cbca533aa26570abc07ca22be86cf0b2366acd657f5dbc70bb50026eb66efe857224f79b747e6dca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302f789ba4cc4060119d5d2c7c0166ddc06c5bea8747392343db594858d0e1c3442f24e3b03c3c19b88802d943fe62c6ba023100aad85ba43821d0b09cb5561dde019244a6bc25650962d574891c1e4e08354e8074ed5c427b933435121c9c2b1e6459ae0302047c435bb50066306402303cc2485cecfa4602976d935a9753a35e926f49025bb9c3fc82363bb2dadd4b1c4d9cc5b82b1fb75ea1bf39581ab7a1bb02305b9f69a2cfd70d79d7651dd788e21f7828a2ce3287a4708ffd41cbad8c49d7ea658dc6e99dc452180fcf25248f9ea9200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300622466724fb1e2882a752bd5645ff59a8ee8640ff8b49f8742ea5c0d188898f9147e55fb1bbe7550eec19242d4bc5da0230611230862f3d7d99ef83e99b990d8fa7471fc99639d216352de364d54c5759cc82f905013aa924317d26417fea7133410302047c435bb500673065023100c2a6d9812a67adcb05227f20ec0900fd365cf7f3d7d6d30dbbe7f94cfe8963a4894edd90c1128e709e595f29263cadd902305742ff4142856a26e0fee1a4ec43fe7f625c0501455ca675d7d6205bc7772e8dc8cd1ac173c9fb4b0a1d33f1a24011a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230057eda5c888a217059c1f0140273935906d397f403528d54084a50b1c5da3e099e1756152b7b2cee8eff38006abd045502307fd705ac3794e8a505896c268ea6a5daf3faafa830a842c00fc64c772a6813bc9ca71baf1f13d782dae7917f87c1204e0302047c435bb500673065023100a19535faf4a985363bfe0df52692d728b32273930d5344ca0aded98e5879d312475e769bb86f9c9a522736336f1e8cf80230676db9e34decdf68f8d122fb5e629d860e10471d42ba10349293316fc6bf0ba14d4c1ec02cf3da2033cf6b45120a9bb40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a0770d82a22bafbc6782ff91845d67c388bdf01c13c3e619afd7e1a6bb382facd0f9051a413fc331c40915ac9f8eea65023100a4d6b8d9d0a6740f0f165927d5e8a9343f9a59c15618013627c55866a490bd16990668fcc3509658d0e0359e170a497d0302047c435bb500663064023065be366d8b316186fa67745557fff53cbdd76eefc8de82d1b8d9614d6b6020986562798711f15847d4991a22799120340230156a7d59ba82132639798a8b2d45eae3163e6cbe22f29112f8984c31691fa6fbaf1f0817a2f80cac92152a18667a32fd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301a027a37e3809958c3c8334536263bbdc7da1fa9b75f072d605ddc3ed4676fa391180800ceb571df430ef1bf5015d9aa023100dbac8293c672247bffaa78559dd30cd6c5858f2963933ab9da892d3f0c29ae10a57a3955bca3d5069534c0d377c88f3b0302047c435bb50067306502310092ed41073389569606169be4ca300eb040a948c9864e3794fbdb57ee00451bc9572810b7a29477a5f7932b542b387c39023054ddbb9687630ee39b9b8be54a395e30ce79a54a553b8a980e1587207510d5cf51c99648c7eb55e7ad754fc8b639f42c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303f9bf53799df8483391e31c455362a74f210d4050a3631b479eda68695b63ff63c6e76346da8f063fb54496ab955e6d00230609244ec67d2909b68b863e82f101cf22acc1aa688ed6ec7e8332208c35e0ec0934c7ff82ad62f77a54babca02dc17040302047c435bb50067306502304bb9e8185342d43e2550773a63700c8842647232cd94c0685e880017ff70acf44887dfe147a32ff6ff3a6a80181e538d023100a507249b3ee5fdd84e12f58dc82e751fa2ab1c4c2f1b863b30f9eaae7e4789efad8edc25ab4a5991703014f67710bf790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307391a32fee900fc917e091999702d3e1d8bc71821a6274b5a65fc0ed06ea8cf6025d02c405ab8616c21c2911d995289d023100c68e8892cc6e5a8e26ab50d97b155216a7a94138d348a832d9c8e9ca3a60ef5003adc6737e2c6155d2cd4c5c17241b030302047c435bb50067306502307d27aaef6cf039c42fcfc3188cfe999d17f0ca5b18e6276896f701471f13fd4fa724f5ca577d3e0db0a8b41fd52bd8d9023100889f973fccb464974bbeb5567afc45158d3ae9e95b01bc8fbfdf247bdf2dd48a03a6a0b4897a03fb4484e3957c11d54f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305325e5a7819562abe345f82c1640fd81784b5fec41297ec66075bd6c041a346a9f24edd769346b5a7cd42cf72a8a72d0023100e986da2a2b0c0d9f9c6f4598b6de706a023c374e5f4c0e10757e1d369f901abb7d177a64fc22789fb34ad35f1c67fb6f0302047c435bb500683066023100ecd9cc4d0485347a7217036642f0a3dc63bd72ad7908848498031b92e97c8bfa509aeddd77c2854f156ef91337c4e6da023100fda9e2b242f92d6b71f0b32fe182e7616818a356f94619cbe069c498e6a7875c6fa92fad9351b92beb23d9469f73aa110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ad59dabf6e716a7526fa2346fbf0c364df77dd7e0cdabe679014bfc879176ec5eb7f300054379ae5b0f836e72e4d363e02306f9bfb2f2fc9905a02170a204bae77366d944eabfeac951a417a893a1e0d46b3b99783f554c4343cbca93ce7feb3282a0302047c435bb50067306502307ed4bdddbba411c00a0a1f331275747ff7507293d2011f9852963d9e7f0b65ead129bacab650c627ed9e8644cdf388000231008394a1a45de1ff47d504f71e80af08ab779d4ff145d69a48f2743b71ef00527e3c513d6d2dfa0f8c8e95b13a11fc95950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b0e233cd854adc533698562c88cddcfeb2b63d38d70efb9e4692b9c1fe710dd462430646605acc57e8be4fb7a381b5bb02300911535f5e8a90e1f79ca2994e1fce149ae0eecc7d649218956dc0852c536c08bdce6c56f97c17b0397a6d2ef28d9ea00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307cb60f2740e6c547f6d98e01a5aa772170c7145be95e04cc445d958bab15673665dcad3eb053da66f000235ccea41f48023063b34114cbe9951e454fba5bf4cc4181d539700005a2e0d4b67fff07329865e2e0b822931a15c3fe0897bd57b1c7df910302047c435bb500673065023029ab8c3b69d1af5df4ff5e491fb5adb5e9985ec2fd6353566b2fe009abf129906ac49a1dc000e0072746770152bbd5e1023100fe9054fe87eb90be13922ce49b1038cd286d8d682926ed314e91f3ff9baa8e91e0a885a6c598a9163262ff4787d750490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f518301ca206960b1a430a3337b107315350b70c9fe3d9f80ad6f38d27075f3f82d107d33022da4955e64d783684aa46023100ab17561ea6f640ea2cfeb5e9660807f781f58cdf3cc133331378443dd032f092915836754f9cfa099f7085b1561774f00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302c059f1bf2c179e3590060842c7907ad62ee049bceefe0bbb9c5111366aad13101d36c851d4e0cdca67292334f6bcd85023100a0f2b9185d4e051b77abc4ebd72d434c8e6d74429d0117d1876cc0494e0c1d8d59eeb9f770ac9b4b5f1f66532d66ad5f0302047c435bb50066306402302630b84b8d4a0e9eebc43c611abcc52baafb11c8cd7f92ecc98ff2f9888c240749591be5a7f5ce65dd6cd2fe422cf5ed02300841ce0732189e5959657a4c71238cea5f29fa2c88f1d09e0aaeec99b5d632adc7cbf2a9ccaa9ab9d6760f93f33b41e80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bdfa21c35f5c683a2afc387eab41a44b2fdde040de027a23e7f60fbb23ecb2cc38ea82b9a64640d080d55570fe01665502304ff7e180ffc1d56f925342af492f1a94645e5ca1baeedff3e837d1e66246dd3270feee78b6732e4e8427bac6b1d668b70302047c435bb500663064023029b97183db6dd53bf0c856f488aa0fa9170c8fd34594d5b1ec77bdb369c1ab59fc7ee8d53ff245d5e0c07c2e0b1a6a3b0230486609bdb944265e7fea80ccc0c91f3dc5643e9f3c126e0bfdbc642f896a8d6dabb647980ec2a5e23be2bbd18f714d830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3fee2e09c794dbe3aedffef6164a767d7d2ef352b33258b5bcb7ba8b7ca44f337c985be9cd848f0f8984e94382db68e023100d6a52c42873b94d0cb1433f0edbcd07eb359c281807bc594e116ff8944a0a5e62596cc9b2bc21f01af7a38efa69e68e60302047c435bb50066306402305875a9c9a418311c45af1034d67bf868634fda8f2241e4832252973c19e1f40b96dd468122135cd1ab7679336ca7497f02307eeba428ec80cfe854978a04beae5da7704bb965a38da2cd95a554da3b4e165efc0c42fc5a3d4ce47ee46e47c228ccde0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303d5267005fb298635f1de2a61c5d2af1ca87960f57edad36f85c516fa3959a3c26995761eaf2a6b797c7128170275f62023100bd0bf6bf564b037f05d0c7cb47a52b5c35b8f238b6f232074912095b206cb2aa6eb6b8517a66f9d5e3dcee525a56e17f0302047c435bb500683066023100a41877c0b291c2a18b837ffe4df754a72524761696638baac16d83837585e92d12b58f243fce06ae6a3dd92e1643254c023100eb44e68de326a465708039002685d0f67b5b526e43f76acab16e81ea8d22b36c78f25ed597f18c282badfca5a51673740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e6e8a59176be850fe7e0d5d362bde3a473f87cb86050f7e9d5b3ca1252b5a2114b13de56650a878fedd63408ce44938023100de96cf9c8b7c7fa6555cc307cfaa8e9d0747013cc8083f3e662fb979dd6ea4d5b967f45523b0b06365b264506174c1de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bd8a0872e7b8adaef7621f8b666a1f5998bdd27885162faff8d4880c42ec857189017ad460a759ef22e8236b49ee0729023100918b91e434ddeeb3e8e52bb08ebecf34882f928aaf4014edb490b9d477e520afc7b38f5519cab5b2c4ee6a3de2164bd60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300839784467538989a1613637986633fbf577ef782d3bcabde4c118b96405aee11dfff13f81a1a4aa43112d02255b32e9023100b03991761238c4beb03820b5987259fed1775d9c09af9a1862995990b040cc0613d8cc7e1ab70928c91d3ed806f737b70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008c49d76e70b72e91eb12258683b3b9c10f64fbaa7a400f203a423b1fa0ee2dbda25d19d4e46611dc3a8cd0394244134b02304114f0605210b52919c9ce695fbe873964e4455c949d7fb5f68b409d57bc17bfca82a1fd8f2d35d5391bcafc24f299f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c7256bb128221ecb1566439f588ccee1a744622a32b9e59f281d280466747a6e0f9ea8c11562cfd586e10ec6a97b82be023100abed6813068f8e0247afefc16ff031eaedb3d873e22284cbdb2ef466704bd2ca333d3781fa5da341cc034dedb1164a870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009c502f6832813bcf8b16733456a04c352615fcb5be439f12029a29299febd888d392a8293d007ba61c31c6c2c137bec402310093d67f41030ef395f48392e8228ba8c7afb05fdc92dcd521565c333262684bb5fec01432e63cba72c3ca5eb08565f9cd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c98eb2f27fba46f1cd7c53be0d8387583a92f9170099c60c8113de55ebe098be81a890dfda0d4a8e0bae5160cb5630b5023003338c99a223355bfe1cb319ed181fce1635617252683d6657160767e4cb514074e969a0c4c90f50befb27b6f11dc8050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e51f0f630d97f5f85146e139a43c0aac9270e1828767fe82c01d9cf550416f9ca69c52883de0346133571b5c2401d40b023038cb35bbf781239aa355e15976aa237fa1b9aa6164221113c8db2c62c4b038a204e8ba5aa74d396520d6e11dedf171690302047c435bb500683066023100f7a8fa586753d8559dd2fef397a3458b40339aaab8cb08cbf2aa292555d86074f70a29a05edd637fd671ecde4a4f33d7023100b5dd614593295243659948caa750d85897002e4e04bfc5a217ee1432671b83e73c8e6bb56fdf1e5990bc3460869514380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307bfa2f2c7a629c4905dc12e10569d5ab88589a42d270f5168156e913f9b5705d563ced7b077406ae297a7dbe4a73f8c5023100df74954a7f882eb631bf5b0b912b0962dd4f821a76eecc7b9eb43bdfd8074bb9227f9b376094740f2852060a2a78506d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310087633aaa5b508c44f31ebb6258763838ddac03ac1608c1f79f678db27a4807fbe08bc7d008da35f500fd13a249d53fff02306a5787967145cd54d5c07a97a991787379a091a559dd6f04a2777791fb024491ccb85c8d7e1a8b1ed62f95c7904890c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ecff2035331d55c7916f7b72a9a2fb9cb19e70c0151c3b27056688d5cf7817eaa9caa93fcfdc3b572b385b1fc0b5d9d5023100ad601f0a0e7baa51063587fbb26b7387530e93f25314e68faa8944b09b18474ffe51b73ae4b38bd88ec0b58791bd8c860302047c435bb500673065023100cfe300a5664ed9e02ded2765cd7a728b16cc303c973d751bdbc6d8332b7575a89d35cdfaa72af77ce4d719c1b77f8e6202307599152888724c544b7137d24bba1e393c0a8f8a8053b921696eb8c01b76cf19c48461770372945df07e5b9a0dc7ef020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e67fdedf14b693ba1810d515a6b6d100d7c63f9c4d64e0a10d6bf0fc19042c5efd39f3acc32bc96d27b60a3f2109e9be0230632a911611c06c88b0ef22b94667e686bf5b958d35bb3a2fa92f2fda11019af8de816652aa04a9c85530b3e2f549e6e40302047c435bb50066306402304d2f7ebf3cbfadefaced55bb8b86b848c1e25d7c2a68bba9dbd3ce4992bfcdb884192bc8f2ac4ff7b728831508739b8502300949c8d8f4883d09acd2f67adf6ca847af7204470d080ece9342581779e5af759702a022f5aacc07bd7587d5644b76e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c79b9dd143dc53659e284f474250fd683cfb1ae0a810c67b263a13ecf9864a9e57bd5ea7f52ea4ac8f0b1818353ddc3f023100ab317367b930455a7b89344cb12b732a50e29f7138cfc43e6456d47bda7fff9feac7b941afbebaaf677dee04e664410d0302047c435bb50067306502303a0ce182b2ba6dcfeb0332d6672969ad7b0c861fea1a43209c3ff760bc23c833d012f4f1bc3b983092dc909a74d4383f023100a9fb646d8e9ad415f4f023741a461a3e4295aa600a643251575ffe9821ed349df3f7e054d9cd462233869c9af38f116a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302367a17737021c644cb0acc89ca198c926e6ec71071154d13c72a043df1e7218824dafaf6ab385a93cdf7ec3f01f01780230306ccc16276f6ec9d0d59b01df1eb92c7873bb7510eb5be9193b81ffdfa5e5427d5ff03d3ecabd6417677169477ef0740302047c435bb5006730650231009bee5c3043788c9ce22f66aed1a5f82cb611ad005ef5aec4f5fde4ddfc16da9ba86a6cd0fbe9b480e4ad5d41ac891e8502303aacfbeb9d3bd7f29735020b73e888e8d0a8e6f9fc4f00c67931569ff1d9ae40a9ab4399260f6d869c45964c82b2b5f00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230524b90f2b63197017ba625a58c750a151a322b1b186b7f61ee62e3e73e889dc6198af3f92cbd7378dc26b3a199096b0502306ba3df4afd94611c1c07b04a1196b50cedb7fe52541d3067f69254588bcd128dd26dd4833450985100308118f7430e9b0302047c435bb500663064023053f0a7e21a5ce8b9f3b0f486c433dc18edc1771d1513fdb8e65afff318bc7f4f16984d2a14614f96ba360e715e685ded02301355e0014593ca0443949cb0905a1f16e5461bc572b99afbe9070ea23f1b0e4ba956516c4cd2d3c48e8bf6e3661047c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb7e21710e11311d265c511454f707fb3b26b3446a902f2c2b0485a003dbbfa93bd6546f1e6bb2b9b161fe905aeb3fbc02301cfc10e28e01b0d78943793c4d330ea78295ceb99753259f2184c82e2657c7ce712b5c86e39b5987ef02981ea0a73bbd0302047c435bb5006630640230264f827a4745ab75e20eae947f154bb5e247cb8b55e357b95ffa695712ed4653103ccd8a6afcdfa17aa7a1d4410a5daf02302456174b43513456af3c0895b4afd3d434ebb1c5a7eda0e4f3a7c9808b165c4ca8e13bf9d25b807b78a04f51862d346e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300d77d5d201cd6bede244ad0c70ca868cd7b3192ba6c380321fbdd7c61de19486f2e2ecf4fd053716f75f45ef1154ca08023100f8445df2eacbf2a99e8516f8e7517b098af8d7c14c2d937dbef15143a68c462ea34a38ef61e9d84772963ef39b0fac990302047c435bb50067306502305e306fcb4cf918c096d8786276e425e6760af971cbaeed446c0c5a5b8cf48a5079f8d8439fa3527f24c4904b64126923023100d06f5183042d6f734a4b32208df20db2edb9f466fee3102513fc6c5cc775635feec4bc92eab2559e66e1133984777cc80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f1f5cb66397c54b24635cada3c0b723da2f9061d53841fb24f4c9e378de5ed2585e901256bb75398e3fa22156fa56cc2023100c514816ca8be76647b8abfbe14a089b285b3e541f4f4a9e2a8403eebfd704f951a5ba8358d1824cb52650b57f7fc05fb0302047c435bb500673065023100b706796c4947571ac27e31eff66fd8a1b207901f840322139a23f0b1fe663bd2955dac77e9f4be2818e3099b9f31066d02303749ff19b3e1185db1dbc758a1d00969289405c9eb276d43ed902998c468fa7417d7ac70a9682501762c434dc86cad140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305c9556313d00f4253394fd44dd555ee1bf8a3c6f719c4b65ad27aa026147fa86f907f78423125b1d8da44171fac9b229023100d2f680957017c4ca526d74a3b29fbab929224131c95609b6fa0e0d40b39c6dda620750a02211f6c164cb3651d8c559280302047c435bb5006730650231008a05a3bf51041c4cb835b82a22d842976484402c501a3663f8c177a232f2674e27607d302315c6486861e202a272671602307e234301d4e51d08a63b6d8cd5ff13703a0495485d799ee2437a4f6c737006817b83598260e80611ce294640f308948b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023029ac391f277a26a24473aba8c6457528b1438aa173d74f4ffafaf53382a163b627f23f5a126537d7a454a1fe71d6a22e023100984f3c51f0d28a70792f97106b351c7e94a2325ecf45b8e298ee80d166c29d6ef173d9706e91c25fc38305434faf0eeb0302047c435bb5006730650230231acfe79be8c9b117f130694f926144fcb14ac809d27fa149d3c7df653b195d5dd56a4bd3c3db8503a5704764a6653102310099c2c4c4486896cd5a8065183fdd1dab24160807f49c1653654bd8017af82e487464dcea11c8764f19dcc15de67ac64b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb65dd08fef24ba1a538a948810f455c9fd0101820c6be53e0c32643c8390236675cb39584565a3b61aac7aadfe9c2b1023100f7067a174a7d898cc6eaf5060efc0a832e08305c92e573ef76626e7da549631755d8eb512a1ed6c5cf1038f08d49d5990302047c435bb50066306402306211868664326db66a0818bc1d0394e31bad799824d158f9bc2af4ee2f269bbd3af06aac58997073ba4db0b9c0112d6d02306c37753d11bdab7c84d686701987bc54d2a48892a849c7771566627afa1b25459ccd164868d9742260a24bf7e3100a560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023053bf68c4246e0e6b8a8aa05020ceaac52a0cea0aaa655c69f2ae41fafe92a88244d62964a318694797c3354a80dd3cbc023100f8f4ea517ef6d98de8e8fceb06430707b8f94692f4103147e033d53cb73c55c4e6aaa4dbce6fc0fc01edafea56735a9d0302047c435bb5006830660231008358174478937abb0cb9f917fa5cf51f2ac682e465b14b3113ff83b7ece65d830a29a626c2b835e43730fc5f5404c625023100c36a604f73aabaf56dcea86072b4744792c2d68d9bdb57f7dad5e63b0119484a750b5ce51a451f069adae3eefd150b820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009713afe60b652d37d55f717e78acaace74972d57cbc3c96dc21caea7b9064f0a7727869c024c4b62190a84b9a8e3887e023004d5197119a7e5112a16dd477eb2efcdc32606b26549d7185f0a85b89a49c5f0f217f19cc7f30c7be038393f798ac1930302047c435bb500683066023100a8de985e223edcaaed3dd76df73c733576517aa8d2803672b5cfb66c571601ef0610f742d1b8c143b9b35905567a1d19023100b083500d4a44a971bf87a95a86ecea3c8443dd8890942e7d922573f95f37b318ae564e30ee45ecc55ccc215b0148dbd90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f8a03a172e8b4da688361bcce2bc4e82c7d5ef8694ec62e67edb6690dd11c42b051719ebccc2978fbdc48816cd73fcd0023019f886fd5a083768fd36dac03587ad4db96f08e3ef15d7df499596bfcb3baf668722ce0543cc4a742e1f232d08923be20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008933aa502e0d147906a204928927425058cee52b16896ee6be1ee484e6a453dffc9354efdffead5149bd010575d22b35023061dfbc278e993e9ea2cdda8d7c905046585345c3f5a59c010f8711417efc48cf86c1e3812babb36ec80ffae69174e0bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023051ab04750332fd4201ab063a6f9c83a17d8ecb77cacbf074ea01cccbaa6b3f1e7932c2e6b4d30ef6f61677f0924e97d302306b5d54abefb14a8bb099b7b679fc758b353fa77707d8f369ed548baa8739e8d66a8af2c6670f3b1d2579bcd4dd6e9b880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023030dff0b4cfd0ad7181484a0aea5e7cc0196c6b39f6a2f8d4fb88d914f6c27dffbafe45cab0751cfb63e94b7596698d8f02310082170921fbc9aa1209dd86143e377ca49e6401e7016253325f72b85d253f2d4060c5b0bd01af5bc159740b6cd23edc1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230566cb5f715392f150a264c1fe7650f279ec1e33ca82cde4c04e790573eacd1e47d07578b36d0a989f3d1e0e8e6172f5902304f155d4b0a87784ecf4302a385a23b8afdaddb7930226642ee58e511425b8bf1c64368ae4c02c92ad62f826f992012bb0302047c435bb5006830660231008880b4937b21a7faa3f946bf3a52d4fa554acddb7bde3a070633b34708a2d1b661d2e8228e06f1571224fbeaf3a7efa8023100f18bc21c91ba2b116305362b938470654d253967a30a105bdf1ed347fc662d0ca5a70d743f4d853723021280ef30a3d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d283506309ff6c56f34df7cff6c0cad75e91bebbbbffc6c9fafbedec895caf15a3ef73aafbca4e8ad73210926dac367c023100fce3c59c8b0ee55edd5f24982944f29531d5337d52686ea6bde2c9cc278283814cc569c080e988d6f8fb16859b5ef0780302047c435bb500683066023100b9d5eafcfaa0ce9249f5cd32282e170f5f23e260c4ab97696ebd0cfe6773b355a61d840447e99a93bc99f2fe33057d52023100e87eae256449f52c6cf2a0fc94b3effaf06e19996032073792c42e88c930fadd8eb1de5df2f3c636bc710e1796bd08270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230083117ad3865e1d93c3ce90802f2d17ec5a6aa7571e10471909350a90ddf5d5441ff40c6592943c15fbb61f7a8aea3f3023100ac7464f0d1c3c973b3d67ed10af72aa6b7c755c076e601878c2fc9f27969f7c70ff81501b6e38b56ce2bb00e552e877a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023011909b5d206b15cd96e032376d3068a1ee41c002ea263342fd594867d9a9149f23191eb140f2c88a279e65b071bc58c702301b84b6622e8575c9512365ebfa747497688791ea4c0763642f2fa5078a383a58dfd9ba54d484a0fee5d53b88c259fc600302047c435bb50067306502304f7e1112847f80151f6303b7e0709f9774e9b2bdd1459891a5394a598dfb89a9f76882676a4f94bff9e15fa212ddff08023100e6afebf70e3c5c10214b1dca62ca7e2362d35241ae0f52a6a54fee165ab50ed7a92304afbd61cf1fe4df99032bb2fbbf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023047864dc1c632202ee65ad1865060297544bcc4d7a38366938166348928bae16dfa5078b5cfce67fbfe196f249044c2a7023100d136d398f94ea16eacd3ed938f647166ae5ee0ae4e9621ce2c8e0e18824f4bf74ad52bef49706a048b7b30c53a63bb1d0302047c435bb50066306402303367baab2f914609c011623b8c4256dc9ae9a3e714804084cf0588f44e6e78ca936fa12e62f617da1d2fc4dd367982580230130ce0877d8121b1dce9968146c67817ac22bc4c90f99b98c73992450de8f41893bfa67efc8965a19a131adc7457e3200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c18fc7654bc1856f5c7a995177bd913d2cd4279973dcea35c46bae945396f1c78284a049cf0552ad176b44060d8f209b02300fe516bc5faae6edb131f525316e3ea64fb142a20be81c418467e53c28e85edb7e3600fbc2496bc30aa9b1771fae9f360302047c435bb500673065023100ba58581aa13a43c9a468c24837602a5a425f9c35b0987b5371bb0b45c73588425a854b5da74b0da474c63e6abeb80b550230684c56022e8dadb1da21d4aff8de9be4b6849f9ca62e691cfe6eae772c46cbc8d090d7fe1bdcdfcefb28065e8a10eea20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f3cf77020ce90d610e83e8cd8ad92777692de829e7fd1f60aef04911c62edddea91e7b1032f826785acb84f7d12e1e140230391f694af5cad370bd0fbf15ad17343ec3d5b0978d7abfd34c44c1688937a01c90db1d90373a52ab7586b2c3de686e0f0302047c435bb5006730650230215ee59937328058da853c277f7c302f570e5c05601e8b741e4d5e657613e22de7aabe68c4529facdaf3d8e100da014202310090a11279f670456a495b5d7526f7e20569f80d64e37d7fc32369e4ede8cf1fb86104fad6045380b46370783e2d8a90a70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305e82452ee7849b0edca1db90d9318b06efa08d6c2d24233b9b73cc2b6e022619dedde84c72d3f372bd50da26f4eed0250231008d2bc4dc7a0b0e71d5de8470c4eddca9903140e5edc4a2706a6a95f78d0b964c540acfcafecad4ab165b6c99662a2f9b0302047c435bb500663064023065bdcb869774dabe11b7600b282739eff7a841327fb0c6ae5044f346ecce0e69a27df8af4ca554f24c14b98bef1ff42d023003a1e7857d1a62e013d241cf4767547d831054300f5a7fe21e8a00b6d1cd6d4c5a7d82817b1ce94c324bcf43d095566c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230750fcea38aa497fb63375dced20505a0e60481bc70e4f634abd3893c5da4989a436577f6a1e9a953402a592b45a3654b0230731b19e4403bf9cfcc92074984fd8600ccc3f0a81d92ef288fdf4528b586b031945b0b9f4c35e2b1593c1ad18c69b8990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230122a1ffba12e17e2b530c4c24f762062f4c31a6a3f99609cba0e3cb8ec12197823655e8bdd495c5234067017b7827015023100dd89bb22cf9384e56e174f9c4c848554c13da201a4ef217c1aa92c6113f0907aec37f5a83f62fc7dc882f315f97f8db90302047c435bb50067306502304c1ffe3ccf37a484550bd2ce715b4f4ad5e86e1046c21ab8b649bc27818e46b3a1551d88fa060662e37a6606aa56318d023100a14e6893ef2d5969b9707a10f237f0d24a3e939ddffe46741cbc088ae8020349eeed759f473a98667975c71f671a6eba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c1af9d03113798b741c8f5ede7cd330125285284cfd8f576339f085955ee2a6bd339a0d1e35e80027aa2bff6e834f83702303c0bb7da563c214ad294b4b3aade6d5a5d67dd178a30ee42719d78466921310eff4d89317c0a677e926c71df030c49ab0302047c435bb500673065023046d61816f41398fc36ae1631a8800369d15a948c31b568bdd26468cdcc014c0707c5b75b59aedf9f468a3c0e96315d120231009f641a7906e6fda50d283079fee50716dad59a55d5f0883e325448cd56fccaff6f87593de907475e85a4a4e9df272bfb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303ec72be1d095804821e2c3eab3ad7b1879cd62f98aaa6446cda2729eec80514d12835ea30e0f5e8465b51f8a3d05f0b80230755b0b0e51ffec7c3386c34d83273906d150ef03abc17da8bab0f666d57c048d8ef66d22b0f1a65e60d0654b96e66bbe0302047c435bb50067306502310083a29345667f671605a75e09627891dd31d230c6485f034043dbf39172bb629b3dc945fd48e5985260fb195d7ec88b7a0230137f7653f0f3621a5fbd6fceffbb9739948f249de43a3a7f31a85b544a62010d6d7b61a56ba0c2ce85dc44bce0e966860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b72481e6741307b4e1ececac5265bfaac39507faacb8d0cc29f87e14ca13ec39c5194ce16ca147f5553c8efb9e8a366c023100c0a08383f52513b1dff0f50b1a808708584d705d840d08524ceda92bcee583b6b4183ceb5a1ecb8e95c26308a1a7a54e0302047c435bb500673065023100cc8d68d22226e4d52afb1783e86d0b4a1f0dd9487b73385c7cfa3d302e70c7aeefef4fb82b631e759470ee60feef881002301f4f4065d57458214bd584c35a1cb84709184b75bc46c7c20a983d579a9c37c563e9cc59021f80dd51fec64aa76be5510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305c8c9cfcc2fd2da0c08025807ca0baa01c198ad2d8ab76813c5c3148296d323774a1e5b42005f93c8f1c4704a7124d0a02302dc451346aa032284fd904f185bb8a1e942a40e6b8843eb7bebe22652a731e7564ad499902c4b0edb5c593912f23e48c0302047c435bb5006730650230502af99447f04aaa404f0edb08f32c0819c81755f31fbd72e70b495e6333390afc9e49fcd4b0b4327d4b070ed5fa0df7023100f9682f9998f6634beff8c1f47ecf6d8010789de45366b4227e354e427120084135d125b4a69aef2799262a712e3daf1d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310083ad903d9b4ec6c7e1f67aa25c1fdf23bdd4b14825675a5aac7169d998b4e39acf62cb66ca7e93fd714a0b395973734a023100ab88d2ed1e1ccea76b875f963c40a3ee7cda306928265eb3d6000c68bd08e8d5f53130e5f0fd8e6f44565c1ed74355a50302047c435bb50068306602310095bdeebe5d6d65b107d291a635b3736b0474fbe3ea1f31e16ab1cd825988c183a16780c9ec89fdef9fe2f6edc67d60e9023100e42cdaffc57a1d63fe631ca8138bbb1a89ac2b441564f585536f8a5a274cfcb90983d714b4e2934864c63168367fe2f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ff28e6215ab3683ea71d3a478cc0db6e2ca8d66e8aa5fa53669fb4a1fc03ff2fa00c45036d279bb434ded6720ee6a78802300734af619d7a93577a3736f6d6d338e6d743e6ad0fe2ad4506d58e86bb993f4f21e222b5b63637b240193d31cfd096980302047c435bb500673065023100b80c05e18d99c28a04a37db0bc34a9df0a09986a382ab4cddf3e604cc76a9aaae107a82ad36bba0e697d9fcf9cc013a902304b03f5973800a12f143c7e47c6d1a05d063010be983600703c0975b419e73cd4cc7221ae5d8ffd30b699d111b08113220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023073119b078299440b94532aa24c8229a411b556b31749442c78b6251c57003ea9a37c9a42bc9c913ad1cb586b013f982702302b5e3ec9ae408f89c88c72f97dabd304585e25198eac905a9c81f6f68cd11a7fde28a82a3b08673f861407466008a18d0302047c435bb500673065023100cdf80bb1c5d76c1df5b77a646bfbd89afdc6d0014d2f97b0ba34d67af95a214fb637382c1b86144f8ba82bc8b31bc43302301adf6bef57ae297064864a3f2708ac89ec8162536b4ce0ad5b161f81789aaa18736d07f4748351663d9ea59c1c2ea71a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a39001f0598a73f32b547ed2accb691faeacd0c7f1c2f95a2b9ec71a58717cfb71ffcc408dc7328b7584e8c5bd0ab55a02304a0c39d6ed68a2d41b1ea967905a4b7c0dcaa5952b590402996a6c0e79ea91584511793faaa3fb235acd2b941a65f5470302047c435bb500673065023100fee5c5aca04b9cfab47093915a2b866d7c66bf51889df3b0629acd123bfcc90e7825ad2ec983aa32f64596224d7ec68202304095673e803221dc158a04169f512b76764a5041f9407c19451f32ee5f3fac8dc085ae7ac6cad118781b2e595a6427700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300b0c64c36b507d0eaf5586fc8e027c2ad5b5b4734df8895982a25a64e8eadac4e5e44d7c49556f6650aeb84b37f7efc402304e69cda9ffe61fc462a82ca776d1a553d2a6157de6d80e3be03ad738d5654ac1705037161d6dd02ddcdadede181ce61e0302047c435bb50067306502304ee9603946b97400bba3d998b80232345219dc2d26a892837b3ea659fccf4393c12baf3682572a1f6eb7e8a465fb371e023100c0a8287c48a0bed43b35d67138829f503b03452e60edfa49ad9efca48c3cb8dcc5af598dad34c1681019df43354d4ea30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230364ad38f298f5ea14b919e2c13d9b60bf21b52239e3700bd808b1844f9b5637e2380836f8911e70426f78cf45b2d97820231008f90eb65ec122785311cc3ea42773e987fc22fdce96d7041b31032cc421cad8915086594a6fc269c8f4b3293f81153f10302047c435bb500683066023100ce2f5a6f5b780909055d6dd08577df3b529d3d2d057efb2003d17b803e24ee986e73d38f23869f8253885dd3aa583c8b023100c8c1ad555c9796c3b7c0b36d1d7ba017192988a3b6c8303c044b287dc207170eaf8a86f853c2a45b76e671cf64dbf4fe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301de2bc71b0ac371a9eac386a9385e8cb1c51fcd7473469be51b223fb8f85225d0fdd1e44918c37f99739da02f142541702303ef29798494cd795b7a3d022336dff4d3d6f5969b0924294e943807d56140cdf923a616210d181fbb336d278a9fa18a00302047c435bb500663064023029a5400c75d9e2cd2b64000e6d131e6ee13146408d168fd26819e4ea0938c697d4d47607d1c669a5b808fec5bf2d815702303b8aab42b02387a0ea1a3a54703d8190f4f18dc9f69646613479bcff0f0e5fd506fab1a4d3126a105e6f38448c142a200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304cc92f2dd592aea9902ae62921f236676a3a99691b76a29c8c24164ea3e80ca35fedd5c5c2d058c16ea3dd156d2fcf820230183108c7ceec9650e0693e0950116d781eba49de94fa23cc3e9927b2495dda1dca7f8737f4a3d50b97025202d69131740302047c435bb500683066023100eaac1daab67a1134c0d95a839faaaebdf49066fa615769806ed827a27abc4875572627eefb3a4e8369e32b13d937622302310096b51c501c261a098fd2e23659f3866cf6fc2203bee10de57d47e7e32b0abd8bce520fc218ffdfba4b8271d474e35be10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a85acbcc68f8ed34cc1116187ebbe4ea00bd55f8dc4701a96a5299edc0b462ad55f0ada70833b1d42d5a2286aabb4bdc02307ca7f96a817ec760f74a2cae9d068a2fc87761e5f45cce0c48102374ddb57cd25dfff541488fa78713d6bb98e9454bc60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008089527f34e14437455f15e4980443c1e7af6e85f27e554a19547d02d7b49c33e180057269cdbee3380aabd8aa412cca023100d7358db677a1667e54f5c4eeb5f3e3dbf77636819b719dea30061ccbc50fbf0057b5309bc23b293645b54d90703bc0680302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b31f257274001140842733225aa15b702c8102fc16e978a41e41945f240975ef7e83ce49c701f58ceb2d28949a1366cc023100f64dc7e58252c4220c6e554c23183f0b5729bd63ea4144078d1e63ed09a525f36605da22dca0a22a190e6d7ee38834d70302047c435bb500673065023100839c7dac744e913fa9adfde685ac534cfc4825d57258e1bafee5a950961a75120e04f72bd042b98461324ba034dff5900230164cbae4aa568d6f1ad85238255cb5bd31816cc76ca8097487bbe4768d2a0e06dc3eb75fd4feed41cd1e1bdb87ca27650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bd648e3959141be6c4c11089cf40ddf5e9c8bb84ca7e643d3b7af6bbbd9492cad286882e707502913e48751c1233bbb2023100db9da0a5091d98f6342984830723bf943793b398f6a74bc257808963803320a15d5130737da1f7c49cb6dcf30313d9640302047c435bb500683066023100ecae0723652e14cb9ef131c11b3b3277fde473811a0492989e1f6a2b61e3cc6a378b4397bd5fa453276d58a73c64bbb5023100f65962e3298ebd23826d3fdb71d9d614e1b7048680dc4bb999e8600bb0849fe880e8a7b439195572c80f6398a309ee300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b12514733f6e9d93f78a0a717e357dd00906096b56a2d602df54600f554ef70fc5ec0c72da19efa620fc5d5959084601023100aac43fe6ca6f7ae89201119ed7e239c1f36e111dd346fb54da9965997bd5edf87d4b5011b0ccc215c1e85cafd7b91a460302047c435bb500663064023074dcd049727b2fd76ebfc85a77cc0d40185268a8ffbb1994b69e2a4c1c61d41ab85f93574204d5bffe271fcebca9f10202305829acd8afb391b2c11f8c9c8d4b204df0b13da4bd9fdc74a9e85119906062fbc887a46baae2251ff9df554e652b37300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fec7cd904b872ed9f6866ecfeab1f36c609385919d46ce5cc4eeb642eb9bd12901581fa576d81d12ec8d30f3480f722d0231008d34c5623a713db229d5abd9cfa5f46c93e56e5d2e25c74ddb28fb2ecf019638fa3df821bda7aafa4243f86436dbc3de0302047c435bb5006630640230608756a89aacb88611e64fa62cd7e124c290684ae6739e281db41752c88c77523f767721d802a7e639aa57e2b70d454002300acc584972c7b24389e960035a80b424258340123270f174aba5fda6ecc08be6bae2812a6e77c02e5cf53a1b339ff9a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dbc9cb5b8a412df99b9831787a1832b6f1efe040bca072a9c8847f96d4970b71ba7ce901daddd5b1400f9c5a01bcd14702300c7a9360b50b82ecff3e6b30de825dd52453aa4e451cacae8876ee8c0f3e7bdf79bbc5c41edd82d9eda95d2885a8d32f0302047c435bb50067306502304ca50e6bfb1773d83188783f057ae4175c34e2dc2b45cf28658eb265d8815d16e7c0548d6d1057ea74ec6fd46c04c0c9023100c678a872f6b10890f4308ce21b9492fe24c9207fecd4eaeffbc78d85b7b36d44e811b7a5e15e0717378deabe0e833c040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d4dabe2e5f23fcdca0ef6f33999f3bc2fb4b821fd1e391516e6ae4dfc8a0bacd738559416965ab113653df5534dfeba8023100cf775f5bf537d8a73fd872d2ebf309035e3e6561ec06daaa8dddcf08e3fdc961a6c1f12c4b3979c2d07fd5e897a912be0302047c435bb500683066023100b2ca9fcacfb6e4b40e1cecc1ce17c148f8e9d740cd973d98b87b5bb2e3fb3ea54cb434a842d61c5069c9fe0d7a8fa4c3023100884fdd13b6691746fd2d6d8fa7ddc3cd4182d55c7093508e6e05fabe914dfccc1e453e15616d600febf86b708cd71be80302047c435bb50067306502303881ad49fb9a5ae3706a97febe0f75480eba14df0e01df6e1a61e7df8d90f3e42134fedf8e53fbcf71d017bb04fb3b1a023100a3040d849aef7a83449d00360578100f3953783cd22e82ff0f0d2a4ed959130fd615eb2119bc937475eb7529375e550d0302047c435bb50066306402306aa8023a6762143fc1364633a191b40abb5368b653de76b1fbd816e4a0108b140961544236b3ea676f41061beb698e0c02302b9646862d7349d0fac8e5af8933708b7d4738f912b5afdd6a8f3ac7b565b1449df4b24a67c86169a06b1ce22b49c2430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009586e04c8a9d3c4b17ba773beafbe1596e205b8ac9241062dcafd91a7690df9c3c0f1bc4a2a510a7d6f4e3d72546dba70231009b14a48fe300fbdf3ff462ee754e79b7a7204042655ca171960bd4947b3e47aa960a23a8eecc3e32e2ae29cc3a1ec1380302047c435bb50067306502301acd776b1db04e709f379e1a38e9f87768329d737e1e8e2eb3be06fdb317ed942e258ebe46f80654907209e960c5c0bb023100f349f8203b80350a93901f7a44c22b9d156f493b5e06eec9dcd0c5f1b988e21483d981a8011b9e57d457f78c46c846140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c29bb07a43cb29e41094e9ce4917e331eb4990eb9598e174c756c756f9372e7fc4b85b38823bcf81966ff73d61c835ef023100f0f794405b9f8f3fc89145709beb649879f9f498c5a693655791ab2af4498c231f176104fa9fd1b700555647db0004a70302047c435bb50066306402303730441378d384f2f5b7db2e3c35b0a443a4f93e87ea5582d69bb5fe2d2dbf2c40404ecab9f62f190d692c276bf894c702306c64f351edb2b0088464006f1fa687624a62c42df5d11afdd6cda70a8758dda81f0aee456d3a6bffef52d7a5ace3186c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302fe1d28f4fd3ff0abf54cdc89c49c215ae10ae838e88f9f5a174b62da5619966b59d31443f8bac4f80385f1ef073636302306eeb15b65232948d77a7c55e2def31d63b134ee9fd6b21dce92a7fe055a37005966145dc7952e601c1c1ab993d04187d0302047c435bb500683066023100806ee7981376ab3395d9025e64b4cccae713c6afe302258297481dc2685e0d91efc14275cf3d1275d4d63f588c70e2b7023100a901d523139ba273c45c6079f78f188f5e673b3c23a12feb914f0918e9d2261708a531d33425607176bbfa466aeb25790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023017551609f53b9d3ffa068b54b9eab288d0acf04a503177e083dc850931200a6225beabdd5ca52c098abc8187be8c7c67023100923317ca2bfdce4e13a687b89920bbf20039349ed963ff79b49211fbc95f68e240bbd9876fa8e1095974702979d34bf70302047c435bb50066306402304ff24fd256774a49d48c34454bb77eb21f36010d4e27c5721d65927e304b73a7810f58907e6656b1366ef7dc2d0bd28102306ba1ea5474b4576d8cd2510f0821d0f8c387e280b6e8352708356490b2d22835acb496a918f348e81971ecc49649c02a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008adb7fcc47437aa7d59ea15fab55fe0c7137a8547c2f3f6d9710a1cc96dad8dbad9e362151c840168254c9a6cd40916802310099d6937f059265f5dd52664a610f92187d65daffcaf20e92933232215ab7649625404255337e72156b7bc255a9686ef40302047c435bb50066306402304156053f19e3d5894eb6874c10d3fa95c8984f66e0e370e2bd5432aa4cf6df00d90c487fbe0a781e2eeee40efd61cbd202301a36aff00b85faa0968e6bec68a1d07f6e02dc99c26a71ff3d14606eff6c84d41d40cc9dde187b7e60b9aab883d8ef030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307afe63878e6fd09da8288f545b42dc1cb26324cff01858fbb5e6a37655969c2d61237fce653106ffd17270e49725579f023100b589537305a4605bdc426564090f1a42a702423b68b486cf7ebcb248359b15e6fc9b50663051c4722ce07cbf6941b87a0302047c435bb50067306502307b8dc3768ccf7ba07bc78a3151777f81e1d46714a80b98a9920bc4996f27439779e104046d30fa6c45c7279799f7985d023100e9d1cc4724fef080bb80e426ee36cf71177c3c5509dfa1cd66436480ddae5fc18a209876d4501f897fdc1b2cf4e4d6cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023045e320a8d39db5c9457a05508f6da55237fa4bc1a1223f841717a1faa4ff298e80a4c6a97de5a4d240ee1d50a4b1f8a5023100dc8e95544456551295fbf0f33b2c1db5802238cc15e7d3a169e9755d7f0bac52b1789c542aa4a23aa1710dacdecab4350302047c435bb50066306402300c74c6af8132fb4ba0eabfae39911fb90dbb21a377347e8ef80fcbb5a3865e9e9e7543f0934662aafa42fa68af8baaed0230146beefb2254cd3400dedf7aa7817c93756b123ebcee9e20ac3bcc728cd267b332481b99d9e93ea772ee44e0e8df82200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310098083e8dace3995c42523363989ea7366404faf8d402bb90f8c2fa94c49c8f87fd91bf18e1541dc9d94d81ff5b5b88e5023100ee87a3354e21c310ec7c77bc19473ad91aa4f0ba0452260921027beacaf34dcf633c0528f59bd373708e2c050aaaaedc0302047c435bb50067306502301b6b2f29c1ad4d1256a5cc164b371a6c82e6444373d0c145d02c00f38edc482479c776f4d3e50e3523c731cd45b373b2023100983a2cc959fdd7a683b283b9ee5b189c8e2c0af59058dbb488bb62f2037cde29acfe8fa2f646419c6ca97dca9a662ec70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301384fa2fdf9a9420ca320133444bac8d92cd7d164d0e4809409b0e0b094ba06e9b0413a1d6d0f892671c4ae2f8ddd38202310098faf11d6c68ed88e55cd9020356718869092492327ac2a1de70157f484956f90da4e214c5b92627b9dc79cd2bf799440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306aac94dd9ddcecbf0952a02740dba3675b9e8936e6b32d1e62033757d1c13a9ad3561a57ce76e065782c57db22f295dc023100f6e65f3695aeaef1041aee0ca1477c88ec0db8d585b16056dfe789fa192a0d65d47d373745732930fba69df1bb5aaddd0302047c435bb500663064022f564d40a5cfa802db4481277e1d4744b7238f3e148bdb7db0f479ab8e9302d4e288e531f3ff875025aba94dff9dd706023100e58f243dc91e0524e8c45ae355895bea4198d538a9055564a237c0eb954d4ebb31ab7881ecb80627461bf9140ee2a28c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086b4370f1495264ae67b6f62038415460af9f51c8b27e6ee944486900ce412489a5c476c9fa4f3cfdacb242a01a76d57023100dc79b876d28d9d52b2159a07edb7b6e92e721202f6eefbdf994a5d13ad93de79980a76e045532ebdec0130b043276e4c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306e329003f4f82a31f2eb8bc0581c440a507965fc5fce06811d9c3283bb337bf985ae93c39f77ee299175beb9309dab7b02301fce3b2276f0d6639afc0c2b501bbc56e1bf0b165892dc5e9fbf949681aaf0073835d9ca963d0d17e9a2b194fe0355980302047c435bb500663064023060f8207188ec983998f08e589812fc5799249c1b32822b019684f2ee9974bc913512ffa613a52aed3056336d75f9a76d02300572bd912a8e83d8b06a035695347ca3402f263fdd6cd8a8f6bfe8e8c972dfe4668b2b827d4014bbc7cb7b7f645b88ff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023042ec0d3c5ba783ca7900a0cf39a961e284f7207fc2d04b6d0888ee91f15d1a1f259dd6458fa9425ddec12c2048c923b302310092371d43824f92a7ff4593e853ab0e090a0f9af77cc064db0b63dbf1078a701224bc259f934d433bf86642f351c4492c0302047c435bb50066306402306a7093bb48f835e2b0b92f0e7a9c2fad8d3864cea87eb73070f360c8c4274c70ece2be2495ee532ed84e80d0feb9366202300ff9fcd29f02e699152e115854c58407bbfe2b8e51a3fa8d38cbdf9b790c7ad90a47767b54b87ec7acb17494242199590302047c435bb500683066023100b7dfe2724fdecd55f651f02ab92d34ff4389b5d3af2ee81f80a2ad204e8ea1cf7d2c24e74f62a0ad24210a5de75efce2023100eb52c2cb1fecead69313ab5066a7a99d8fef0e3f15f33d440dfc1559287ce8628e4ec14d11b99070d23584363085e4cd0302047c435bb50066306402305578d56aa63f9d218fee651a05e20d2368c985f591e0523fd4c2ce1d387960f0e7ccc23f27fb1cd94fdc8fbe9d58be97023029c262460a5038e42220d3074f3168ba0cc6fa853a26833ff4febffa0c7325ec53b3dfd53d27b25947f6d891047380690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023063e45585fbd2acc9c0ae2da64ac18ce677e8c717e8b37724b077cdd4bcafe007c266c5a83976b5a1503ae6df2132d73602302fa3b38522055e44774a2780dfca97456d0296e2361dec1febe2b0fc21f9a88bdb2e8f7724dd01a9a0bff4dcff618ef20302047c435bb500673065023002a134eec42698aa9a7343364141a6c88791671456800f0953b73009717233f349472d114245d41b07971318c795cdd9023100efb1ac57a2ead167c56f6b80dd1ae0101b85107801136d418ae2589a44340beb07c016cb7e9e23c4556426872d6d316e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023035eda52b8fdf2f0315ee0397ae61c29d603909556b68d6962799b955b02511662ed4a1a469c3c140e475d5d4d22d0d33023035e2f362810c9f2bc5db74769867397aab91b2ce4a2798f3d030e462f6554b3060a76139a673664f442df19bf72a439c0302047c435bb5006730650231009f1bb9b14ab63b95e638414f2b6dfb825f6417ed028dcd826a38b8f7d4c7f8975309ced605d6c5a889418b4ce375dee2023075c53ea47e3a0593fb38ff6109ed7228c68d9e4a030567f14ed89807dbafa6d1241f82c4daa027e52621c99cc626b29a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b394162c4b1ced442d5baf8925fb5cdad19ac01c9964dc2a8f47a7ec7bf044e1953c33e1c39a294f6e0e8a1d8ce998a702302ddef9de434d897434c35f93ad54b725362f5d3a1108bfdad211ec098b7ff8dcec6b20ffe2e1419ca7798db3a705ea360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049eab099768ae361a4bfc211544b16cc91e167e888908b857ef4d57dd1dd6c09f654e718a81ae787242dc41c7febb836023100ce53135053afa81f02cba9d76249f60843b9f77b55be47648f7f3fee2a391139622fca880103cd3af3f9e65100ace81a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009df5fd32d3d4c9c70b9cb08fa7312b0dcde99254d5d822cd94481e733348e58349cabae162877ebe1b51c0749e5fcafc023100ef54aa3d99ac5c22e0dc9fcb1fc8bd38e5409841ef56c9c71e91308d997ee62c6e8ecf04c7e49c5d337cfaf857dfc3760302047c435bb500673065023100861adf61aada6044e72d8f7dc25eee6cce2e7d5f889aea5e282542bef9b5bff0079f8d8456cb4077193115aa28ad14e802307992282d357655b3d9e6003107220cad29f8974a126b30e9220dd1d34a74500e402576045b23739c519de4202ef6e77e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ca002e5e3f5d35125fe64f435627754d5ddd1af36fbe19b5254cecb739c8011d805c27af45fd99afae5613b59cc7327d023100caef269643815641369b78189ab29d95a3df7e245a4fd723f16ffc09ca7460b7ca73d316824e2feb0fc6ba38dc150a780302047c435bb500663064023051b13bebe5d67ff263200e1b4b62ebcae56478ecae97bf7f6cb488f240b27b269bdc03d7cf5acd2d4713aad15da44bd602304a9419eb052512bae4fec14e683d0fdf1c0da09bcf532737c9fc447a08f367b458f56e2d069313323d50145eab5a6a230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001d2842c4a0898949b7a06b4178639567542044a25fa500c43d71af4a756bdfa193da7bf0b62c7819fbb03e27a077e65023028db1f458509ab4726295bac9c2cbcdd5690f80a510b8383401ed4dce894ea9ff470e67ebbba14fbcfeaa108a07a328c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ac0ebdf71e75464db437b0099099edb38567e75672c8933bc7948a9dabb91505b63f25c4ee0b8ac88db83dcf48086d15023100d743848d5d99bf748eeca2a2ab9aeb3716be2f1239bf14db51b4f7a938aec2c7500cb8ebbd38a5da77b5b98b4a7194f10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305dc00c1ecbcee51f9648409da65737a31231836696badacc86c34724e9af34588fe87d754dcdcd8ec696d84a092ef258023100c248e7ffd982a6310b1fc1195db6f4efc04eeffd8995db957df808d6265d5b90d8d7a57fb5a8a6c6518df4c0bb0c55990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303d1265a397dea3f53157d2e9f6df57a9989749f7bb13ba1ec320961f565527db5a6d0c2712b5f01a0323edf7529a59dd02305d36de1cc4274b91c8637b1161f1e873440171cb24b6f073d2c80ea7677526baab9138e24e42c91651030d17dfa765ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302a9b716c85524a73920d0d5dd2b09090d8658b9db551e4f490fd09c5535437d2bd8790a0378f4f8fbc4c552dbdb0bad4023100b07eb092e37e7146e2f89efe3cdc55c55505611adbf7db84b0b452fb7af70906a05a42455c47d2f179d4b857efc6eeda0302047c435bb500673065023028ac32134f25a918f827f8c79642e427c90aa4508a9d6cb0b5e63225a8c583b978132f7110d605c4727bed605ad03cd40231008998936d9d178ad3bd29810b3cacfd94cba414f19d4414c7be4d53ad62f50ce959a4b19083dbb934891b224906b312bb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230496d4e1cb4eacc18c4ba58473e816dd738f9d5c4696f444514c159bd38c33a1ba62268acd212984b9737a739b7706b63023100e3a8a41df05837eb2a14c933974bbca02f158db5d752d7bd592ef0569fb03e740c33d8401dfb276630dcd68554d5305d0302047c435bb500673065023046dda191e01976aadba761b0fd7df239cdcde8a9257b9929d7fab1a5ce51a3917f01fda2491d278b067d7609cd12aef1023100ce074a0204ee4105639e9821cfd1f4ba207f252d502b7a0902654886809b4f6edbccfbc0ad3e393af97771638930750c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c91b68416f9259ac1ebf65019118aee9cf9a59b748db29d847b06c93ea83d4c3c027931754944f8e74bae8e53f3223c60230011d0e6db72d07f1bb8baaac0f335f2b912af6a807f328f43a1ba3787cc05d004d25deeb49167c397045633ae1be05280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023026a381de55f6e1c5ff14e6bfd5e5d4eca62676f6846086d7000a9a7abfb0660cdcb787edfdd13dffd88427a97ea60c5d023100ea2c64a99db9b868177b7438bb00cb4e8e0d980a838764a972601eec282c683beaa537af22b0c60d7b42de1c21c873e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2eaad5ef0c27e771ba945c44a9113309add46078914ab09d90e5525b78193ca0b26f79b3bc90af96f366c560160c6fb02300c0b426205c021efdee12a86c1c756f31f85adfeeaaebdbb30af828c8b20ff7c6c8ba3085dc85f37a91fb41e07a3d6bb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023068065a7e1a7976dd15f623292b8f624b8518f35ed3fd067d5125043695162c0fa77112546bff861e557585fa31012977023100820fc297acd69cd54a8852fe95acf0a9d068ce3abeae3c0325500e4419d13ecad88f5bd01deacf948ef1ab619d5496f70302047c435bb5006730650230244c6743373bc3660ac269344d03817c9ee5a99f1d6e249870323e0714cf22527ea2bd7f33d2b0a75e9cc58c9c806b7f0231008745ae6156c7cdc4d629b35b0c1a4e14627aecaa57bbcfdccc5456b523c6718f79baab42161f470a2ad059a6f1e453280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304747987863b15b5a005c8e09eb341c6e8d0f72e92d98b71b4a93e979c9885e894a00335a97034710c61903106486bc78023100b0466be33fcacfd55a57a45f4b437f19f27abd82313edb3d6630a978b5867679190c570ee1001553901ae00702c8865d0302047c435bb5006630640230315f4a3223b2add156085a209547217d3bf8f7e7e9b14d8112d51c526f82cc0c7cd8420314e8fe61d034b01289209bba02307e1abe268eb3ea27fbbce6eae540505b1d125d9368b04f26929e13c20d57891149c2aa5bdc0533043dad3e4c7e47556e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230183a461202949bb740ee400b3549ffc858fc2b8e7f95098df16acf3cc49ce17d7257b910a8ef28ff820679b8d7c594e5023017934ed2f033130a081b7cb487d3ccc9b938215aa96ac88cbc7072422e677678c6c50a22972e4feaec9690ac7552aea40302047c435bb5006730650231008da500007d698b2b78c0ef7756a40337e43e5ca8bf370cca2a6eed3ceccf4f2b344ac49aa8d658ff7b5132cec079776a0230480d5edf7850cb412d1dceb9c941e345a91f9ae7cce5f858d432f87222b5dbc887d94dac452c7a11c6458bcd06e086690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ed8c57deffbacb3cc36baa23fa788b1bce05357631ee4d07ef219243437b2302f0639d1eab439fade321158c0243b10502304aaa367de738e91c34b439c56db5250666af3c4fc9d50c9d8f7a3c2d1354cd3a4cb52a092e985b5a81cfab4c7ad687410302047c435bb500673065023100ef88955c699226dfccc4edfa39174ccc4ac1bc867a50da66c3b421050c0293ca60fc47e3af964d683eaa695458c41574023041466911bd1fcea01aca49a3b6be5686dbbdfdda0b3129b5caf472f1b2b0700767b8946569172dfa2e22aa638deb63bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cf5dccce679b5b69ea2c410068fffaeb2d27fd4403368c47e1581365ad0e1b2fa6bcb1b2b9c27d41174469f407c3bb950230430e097bfa562de2190ff492fd823d69949cc85e41e8b90b77994c9211e59e2d9068bc15d65b98dec4bffbfd2e6772320302047c435bb500673065023004f9e536765e6c03990a5993db7a64c92c484bc7bcca4cc709ffe6ad6f99f6fff3260f1403592fc84bd295441ec16142023100918b23ce24aa2f3e1422a792d9a76cd3deb543ae2c2a1c78e4a93b68f816881cea0234caede15d1087921898db5840a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230299f9a4a880bc452a7e02642c74187f1c1de17e42c717c75dddaad6c4f2828a823d2fb9579d100b9b9a26d5cf1441913023100e6f2b446334095425c039b904b778286411ff13f874f5da0bdafc60274828eeb01ae8a1edcb99a2d42b85a9ced433d2c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cab4e1924632a2436461ec0b1953c9169c1519b40965236d834a79e6462439beecce0804c6a4532351240e1d2312a124023055a67d900c678c6c0b93845dca31bbf062d979b0ecdc280ab598a1ca3b338b3e6bfd3502b50ddcc23d76a20c4794604d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c90665da428a80acb846c09c8b613ea774bd3662244c95ff26046c75f4e26277f9ccfdfef761a4f60300cb7f17f79022023100f9b3a141324d99a3169024487b3097fa650507e6e1aa4fca948c49cec538315351cd9139723361dc9d9fa8ced88072fd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100892a6434a28b6ccfed214a8c1bd4c45df3d4a1369fcf3e9c360a5ef9925edad131f22bc0e3b2cadae73f83f5b16b625f0230330ff720cf0dc55c5b814211dc98547a92a5552d555e8876c330ccafa3b935398526e8633193c45ab9ff24c5e6c63af40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b4bdf3f88a310ccc6da5277f0c1e5aa70df00d09fb49eb41d39b27a7fd0a39518d457ede94f930e21a06938d7cf0ca07023100d448a0bc1dbed3bf7b2ae9d002da3dbf50e3196507450729435204572312ca2b9da3ec94202ccc4d4a25cf927252c5790302047c435bb500683066023100d2d3d1380ad5483f695088302c50eb20b0fa9d462280eddfe5f631151ad001cdeac3038e95b238dc219fe483da06e893023100ab3eaea8477bc1776b9ac16988d3d2bace88ad2460180ab14397c9275b6a0a135e515c9a91f1c4c8cbe2aa6cb40b1a830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023013666c0151170230b6321e8cded377641ff784efa80730b812697c7035159c05978c6191dac3447d104443206d163091023100adcf73e5af9aa8574a7954afa63596c534593617ee5c46b92953f10a68379d177c2750b76b963c24b6af089a98b7af640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100beaaeec8af8d1f991475a64e6e0c2a119e1d8dcc180ff0a3143bf0e47bfe2314d82666b2c7469b3b2bab2c2b964776c90231009586e25b256c082efa107b45fd6b1cdbac04c7a40b67a2692eaff5b0aebe7248df42da63235c84cc85515c5a1c20a7a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310099149e5931a54786688e22693631a5c488ab8ef10108251604640369d18496b5eea186133da35c18d6852ef6fc602e5e023100d29ce8e872e96197c65dacd6948209840e9b8052fc184a32217e5e558da6379ddc9c44754c1b505c0edf476ee40915950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310087493f04135df984c0cab59a8521e8c2a8de776416586202758c6e140f0ebd1096affa4b88d8e8aec38bdf2a8f2547e7023100db0037d8b338235d1ba7620e532df561aa5ea19e144fc1088198ff68030dd09423b0e9747ff1864bf4bf3eeba388a6000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023036ba745841b58557d45bd33b3938214c350c9dfd3b6c893104e272040a5eff17f8f97639ebb610e6e6f3fcd1cd212abc02300cbc1ea2c8fd68d75ce690215f8242fd32e1a7379230ab8391ed99b5a0f7a012f766d30f992d246ac3b6a711b392f2d80302047c435bb50067306502302046777c3ced1a026cf3e4b839dea3aadc6d161e262c4438bf68e9d4d1b23b5c68feff52fe0fa23ff6a6805ee6844cbc023100ca1c65da2258fe9ba0cc802c40bc09aa91e357d2c5220056249f1b5aba9481ba9bfc64d5f8a90263a4e8a5ce28f745cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230121ac43201c2c6360748c12f5259385cc59405c819367d512a4e22548faae2a44937f6eaf9a991c71f20872ebd11ebd502300c2595f53ba5639202dd217c290e7540b80f3e496c7287edd4c2de321998b1d512bae7acb2804fc545dc6844749b2d900302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306aa12d4a90632692f9863dddadc3fe829ddd5f32829fde4fb6cd0f4d2839802423a4af5377360cc900ca913476701c2c023036a7361e31a0cc7201f60eb894011cc7321512f017cb08162a0ebcb9c9217acbb7e7e3cfe28abd08de2e09960c8efad00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304c49ed778e39d86c44c6e7b2c8b501f5397acd348a32e28cd3fca3755cf59afa0903521fde787bc0803d329aca387c15023100a835c5499be4f6c75f5785b5dff2275bf3ea30ffe41f6ae484d5ad25020d6aa2617aa572e9deaef18ea4fdadde82caba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b262253d6dab7ce96830ad88d947932ca5037ff64067922d534fdf35460eea295753c3fa5d6f8bb730e66d76ed4df2c3023100d7d24adcffa6e20e3d14a37829d978cf2f2d0070b0748cc207422182cbd8b45670a3bcdeef19e31f4aa6ee16b71b14700302047c435bb5006730650230102b5aefbc64d8f8f59305e8e5585cfe17143416ce2405259c4f8be2be314ab4b5fbf462ebe7135e85c7190b756c451c023100b18cc9057d2947b66cbbfb0fac18e48780939e314ed06dcf8de4df4a1187a63811d68979f3e3d82329432e3602a29f490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a44bab0263838dd1431417522b0aae6ee15021402ec630239dc089eae8f06ef6a094648cd33f3aeaa1a8b42c12ce296202300f82cf117b11361845fb7dbe0632d1eea5b97d976cabc4da8156aff4769dfca481243f049e7b2324491c2e35f55334a40302047c435bb50067306502304f36aea86fb510787689b027ac6ee6d0030249224ffe719b802b225f5870cfbe1c14cc8a68636ffd49ad9654ddf866870231009e3b30a855725e5d132cc01baa3f316a1279ead79cc1efd29b9072c743dadab6161628ab8496d778e1508ed3b8f1b0200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305ab2c35eaf7b849975396a032267a15e413b475a584674e5ef942ddf24c30ad2950d4959d438a2fd3f04ae0caaf2f46f0231008bcbec5c07fb1a2847eb0ca9310add72ac82aef039e2e3db37305e0495db1c8c802b8ec57032a4b2ce5cd888ba39b0df0302047c435bb500663064023015476a6b6c48274ebeea95dfd2011ef02ada6ee0cf0880d6dedcef6332496735d1e8a022f9479ea2c01db4d3ff5e121802304373a04c8b0a6be618b29afddedb760bd2aad86ddac5943a626c356c78f6e511fee713ea60caf5bf926454a32980ada20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a2d8b440241c9fe473d38b6332652f153887f56807dbc80d7c35a43de26dce1a853dfcad7f0be951e4a6e408c9df16e102305e35a6400dfb8cb96681bfdbe7b556a3ef3c56cca3a10fafef781e13bdca8fb9038516e36e72628e9640393c71ea87480302047c435bb50068306602310090ca02dbe5d1a6e51b611cd6380d51ffa48d06fd6e3243433cd41bb6db19896f07873b8daf4abe59c886fb482abf507f023100a7e338958cb01fe11bcc4894f0152252e78b015a88a0aec95cc4798b7cd8fcad23bfd137e42c0f1724a77a8ccdb3936e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6a52dbea5be28e4debbf529049c373f704d9bb02d4a14a7a55c37f0aebc65009e8e4eafd0f4b69bc5539ee255b24614023024697e3b038c6297cc8dd90fea9f961fcd25f5b949f932fb58058441aefbbea2fa38637e00b59f46954dc8925a6096510302047c435bb5006830660231008c306c22cba693ffc0befda28bef63ccc3de49147f8f91189bba6839d319d43c31815a2c8d9838545429f263ce37f9280231008de3338e6bdecb22ed3fc262b42b3133118295638942829d03a3f4b52abec456b42133977d04299fffaeeed55b42666a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c0c6a4df58044f088f08ebd8f31658738aae5527c829b63eb76ff2188a103cf6a9662fb948ba80242fa3ce6503f59323023011379f9dcd8d3db2f537d2027f3c29d409e469f2263772631370ce5a273ca45047576b90cafd7f58f903db50e3cfd43b0302047c435bb500673065023100ba05730a6023866de494c794785444904be68399bd3841ea9ebad933bb63bd72882658ed810e5375308122a27188c71b02306514bdd8aa0b13af8629bea14e01a90fc35089f8fdd076ea677b7ad55270558e704dda4447f0d25fe84fb728c3966e8f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023016338c62c983c509fcb456c78b66e60b4cfc4f380b46c4e0e6e60b70fe72256a41dafcb651c1d526f20242e967ddccee023100fdca94319d994f84802d9a42740f317af856b33265bbc9cdc1c2eb1378f811e9fe6157120c3df45a93b2e6a71eab442b0302047c435bb500673065023100a0e11679a3508ed1c9e864515f62d025cc11438d63e1e86288cd1b6c2f470f128b21d0ffe8f195e45bcadc548a2b2e20023005dbb7074b0bf30db8d4205b482d24005413444a46ccbf5222c5fa396abf928731fbb02b77bcfb82c23e4aa2d0ea6ca00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302522a5e07a074878965375be6c92345f8702616aa0495e2ca7b803d2f8f74e4670490a8a3c6ae986b1eceb997dec597f02305da210df9120c0e2f9ba59a7927153b4707dc487be7832667ddd6da76b3dcf997a4f75416de2cfb513ea9d2a58b03d8b0302047c435bb500683066023100c99c1060009f84c10aed63e07fb063f2347a69c5c8713a126487fae55834a9d49cda7bc4edcb2fcaa92a496f2bad3470023100dc30bbdf3e7fcb095f6eb82f53efe5bfac6587cf7db5ae8dabf1e07ded3d6558bf4ddabcbd79c49321da7e3d1e35ecf10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230073c5f8191cab79da16f05c744f285068ce8d3379332d28231e9e74854509ea9d12ef99d1de708c5e9c59e5b3b4e518c023100d89f0a8b06223432e8574b88b210eab0b90de8aeb0861895284169cc50379a6915f3df76be13f4507f7c7fc3e4170bb00302047c435bb50067306502300883c693a13f0acac09df617446258056caa78c0963a6bcca9500fdc31a70658e633a55fa1fa0827a43405e2205b3f88023100c7ea015f5f4674411f6cf46df98bba031b46d51f5c95a5dac23086376332380f316080db06d0cc4acc29f8109030c4060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009dda05fd726783d116d3dfb25f5bb6e75d94a8709516f2285cfd6f25295a7fbe27cf853a3a16712aca5e8ea1b813711d023032258b76491af0d286d614ba4044356f73d4fe880253069acdafac4e395c2793f98592bdeba057142a1578310ec423630302047c435bb50067306502304afcfee9c0d481b0e08f25a555c79aebc5d73fd37540d241a1bd226e06721d4844000ef98af48bec2a23589522b9f3cc023100fed705c31cbaeb4d7966b1b415f9e6e1745073b7ec811bda62ed8f3059e976208a709ed6f64e90068b6039bcf98220ad0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037a33d1bf0eb6ba56e42d36730afbe29adc688a4eeea9e099481e75269e70ef86035726a73350d3df72c10c6f9f30e3802306e58774525b5edd900674d2480a9299d06b84ca21aadfe16e2f560b932395e79a0479dea20d01351581ada31a0dbb5900302047c435bb50067306502300e80f2072725b8f85913b0903f38bfc9482bb316d20863781735255531934e81dbaecfdf35a0f6cd0902dbfd1b1a72f6023100c44e1d543420cbdde3e45f7048e00fca853690ac756fe8b666bf340b9d2b068d7827b847c3ac7cc87886cbded53cdb4b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100922098a511ffb39e8458bb23ef5376e030e07d6620baabb137f71b43400dd78ce8479777aa8192e7dcea3c97b926e3be02307ba8835c2e486cdf5b4b03c95a911ab0a134df3ef2bbb043db0517387a83a66279a1449a40f625e6a3068306456814540302047c435bb500663064023056370c41a5971fc2dc162e8158815734e51610244516f4192c65ff466f48606615b81e247847d1f2b8b767c15fa47e1f02302c98558d786d96f55770ccd514c790f6faba2222f1b7e849016c8dcfbb0ee3de129debdef1898e35470527946f9677000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230431b849a0d7f0785154b25a8089b3002456247fa332c0b4e8c983ae2b697527010ce6140618c8a72a89b6e61e896803d0230691e7732eaf53ef627e5ea5e64ac4a9f458e89fa60f9633185b5f54c7561c393db2736341bf256e8abc2c16fc37d7e710302047c435bb5006830660231008915c0d6f4c8d527943729a6c1a7e5d65301492ebd5ce8a18027059f36ef119c764e8d5ec50f8c2477b0867848cb654c023100f99767709e3842d9af2d04606671779d9aba1349528a5ab47943a6032c3e991f41edbfab2ed970d55008e8a9dd819c360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cb4d7405383d211dd6dc6e782abae3d5aa9883c421072599993eaab21bf2491a3b7659f8349448cb566a7b98a0a1ade902302d3883be0dd0179eb193028aa12643905c3935d031a8d3793f13d7ed019a7754469de7354bb270da4ce52c0226a0fa2b0302047c435bb50067306502300bea03ad19c297dcc42a7b95394f3ec342d34b0a5e36dc0d0f5257ae68f1be9ab8e40a1fb22ab375baf42d1e1b3bfb7e023100a21b45394474b2849037b552f0a137f6de48f3c671f7f1f7c53b9db38b44ed6034089c386e05a7bd4037c5b1c89cecdf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023065b4451f0a34ba4e9e41abe07c117284f7e333efbed69e3fadefabbf2296d4a6a39f8afac2be5b83fadd652862f262ce023100dce5b0e93057fce6df7ff7f984ad655661150cba5124835f922a27f68fcebb4d90dc5d1778a3758ca66dc22da8f4ac960302047c435bb5006730650231008ed9bb63f7eefc28ffed761f9f023332a3ac9cb3a260c7dc740cf2c6451c5d22d315c61d3812297fe6c6a20099a75360023078d939aca91a3b0b76bae334503f29098ebed2712074978555a951b00a4dea5801f5a13266b4d7e7a56f311d741aafc70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230383acb04f551e00ef5659b4fa4cd5ca0070753c189059102d450ff4c2fa8f17519cf6d2cf306ac90a6222c11a765922f023026934cb8f19d394c490ab39b43bd52af4b19d7ec788bcd60ac82a3c6f337e7720f2dde23e19e1941cbe8ad3e7e125dd80302047c435bb50067306502303b7e8d52324cc0866a9744779825acad289df6e3687017c7ab867cc36db585a15b0aa661f69e2e82fff6e5760908bc44023100ce9b85315aa4a0db8d0ceb0ae442a0a957a73525305bca2083185584235dbcf8c24b87255810b2ec3eafc9b56fc21f650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023037348fae08840c9f0b86d0a92ab18b9e4b4f293b4d6941fe4ad17cedd9a5448a45832462086d91415cd0558c9d402765023100eef3e7837ffe48be34b24a8141daf4b122e4e1b9c4a3c1ddba1e9b0672e442ceb46380719b9e4d265c94cfdc52c290cd0302047c435bb50067306502304a932dae438ed9d77dfabada36cf7e9fdc7ba2694cc7002c35ca77f5380b5b5bba52d35b80f142f3b0b14ecec1d49341023100fa7b30edd546bd46887f73cd8a21bd6a142d2aa35ace5866af7e35fe27343bb2fde5fd20dce372ba3aac6c75cc5fc70c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310097a027bb4f79ff0b02bfa021218092a97bdc474f59b4f88f7f36c0d13756685a7b712d79b2957ab5332dd082d642e71602304c009539b8811e3649c761a506d146d80aa4789e7798cbf529deb7c00b79d7469ddc2e9b93315ce14829e8d9574426140302047c435bb50067306502303d56e61e25f6c2256378619ee96a2a366178e1f36fcfd7b70ccdfb7b7a1be7aef24b1a23307eccd28e53a759ba212e9802310095606d3522a0ee47782ca97c5e5db7a578648366916d48691c87fe52f6d37666fe138a85e6392dd4c6f001b688dfc5030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301ea421ec5c57d7fac2744d8cac7bc52fdeecd54ae74d143353f0318bd050a5938d19425c0fecade70a4c824510027125023045d6a5ac9e0d2137287a419c8e52fdcca250c564e2d528153662264e4e47e480792d71c45b3d923c4152507feac4d4cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008dd0e72bde5f5a8cb4c6c696403f22547f1555f93731dfff01b6f85d8d996a6d5f9442d08c4e0c0a4d924dab9005337a02301da5d549c8cd59f2d416e2e3653d1de35c60d5789039af264e35bb8465bc535cbbf53863aa4059c7e53e271e7dfa1ec90302047c435bb5006630640230708923217afbf3a3d3331d7ac2d950e7ea74609a13a0ab6a1498527662c9544fca0c8e28be3be2c778c3f65e172b23e5023028a23fe4294e6cf1c22267574f2f6b8d5db75c2e65149997aa065dd96b60222d8319e46413557f4722fd623d32eefaeb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b189b2092861abe7aafa69236b60179a37c58f876c51ab34e8c521ae9286ffa4df552dc77c5075fb28bf15375b288391023010a656682518b57e65578cd0b9c5daad66278ea9e1d97559d09b91b37706f327e56cb4b726b8a47e6272fb5b43a5d31b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230279db76254d0b1c27181186f485ae5eee55475a16747f052dcd855221c1701ce20d537f081b1ea1bba4674799b094c2a023026089616bd41e91884d89117ebb4a434b2c7b95a3aea4556d66fcc6daab376a80b1cab9e2a641a93364fa7ce11631b370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230717f9bd326c28816de5acbaa1e360261468ac90aeab008cce2f79377e6a1119e6d64c01d7f4e0009a978a74675e09c9f023100db7d6ca4b93eb4098405ebedf0ba3258647ff1ce432102078eb7794bd80ecd669d1d5c73e8d386d248f300a1c30ca8910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301529be2702de652da6b8bf1f9cd20f82cda74579f375e8c2257b88eb10e5800cf4166144b1b02840baac4193ef029a64023100b050cbc3e7de77e8f1abd12eb1b768b4c5bae507aa68562e56dccd373d0861d71fe7ab1e0c8217f5c74bad850ff847930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023030bab8fe88229c081c2306c9c5ffab40ccbf3afc943a4931f72fdc7ea0bcb1b397ae23b065a6314b7ea551fb64af30f402302853111b473cf1293959aac6e7fbd8a674ee30438088bda64e14a4125cf88aaf0a6a3ce1c2e8d83fc7e9e57c46ca670a0302047c435bb5006630640230353f061d100ba5265ab6ffbe2e2299a510297cba1220d6d7c8783046641739279c4376be5c8f5ba93e170c10a5cd2fae02300b1f70c669a15a2cc68e84d5a8ed2145f06ab2aeb9059b17f00a1441263bdc323b54a9fb840af792191d4bbbf3a323710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310093be11b9c4d96c3681556b263b7ce398685524730bec402fcc670eecbdb404bdee7e870df07a9ca2b560ac373f755cc00231008ffb56066691d77b8ad01568d6416acbd237fbb5ffafd08a2d086e492ce05e9f187df4264eab647094c4d44eeed1baa50302047c435bb50067306502301eafeb31b6234e92553aa87ca4f5942e73aef3c6c910357ff4e053acd3d20335fc41db3005215dbb78fd02b722404437023100c4ab2cbed84d6dcdb649aa4e737dff1816299bd940101a900bef1249c63206b239bcf253442296cee6499c208f05c6890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023012f6e20185daed1d8c70b7145cc662b17eafc07bd2a6259053144411111a9897d5680887ba6cbd12967f58314cb3c740023100ea154aecf82fae3dd5535bd8165ae75443dab9ee85158df501b64a9e6651c3618044b2b91c7603de36c9ee148123f1030302047c435bb500673065023037d24a0479baf28bd8c6c2747f5e2473206666099e1c339334da1e93346daa3877fb51af7e407d29ae56c84397862ea3023100b53859a2aaf634f62e12a6e2d57db6576ba2d6f5a5f867a333c78008d4b55213d2430f9327e3861fe6fa3ca0d7b562ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023052d96ff3e300f3f4998edfdfbd6829bdf95be55b7ebf8d2d2ec36d927b3fd86ee99aa2324f4c0967fa943b0b216ebfae02304e7f4e59ec775ee52bbe8bbcf813321af85cd0b7aca86188674fc75396cc1b0636433ec645c198873c313f2e2671ef1e0302047c435bb50067306502304ac4e18aff7c11cdce232a4408375dcade36d51b5a21a1031013545360a5f92df30fa5a6b222c7db6f9987f1d33d0bfc023100de0681f5a3287717ed41e8f1c3b08eb9dcd97454f612ebc04e0ecc54857e885026fcff900efd8b776a2b33840ca437c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100871b29e32d70e091a6ae25b346055a85ce606c94080e2078811124f52fe01cd87ec56379e3b28d58b5bf80800d9c48e00230336be5ef634d42408038a058f6167a2aa50dc6323fad1f0d674a5e2157712e2017377a15fbb936f0835b7fc8d67ab41b0302047c435bb500673065023100df996753ea46a9d2a0dbf47cd577ffa1918d50332dc77ca56b0975e40c7cfca219df7e9b4599245ce22c5074b2e717950230656795cefe662da3ecd5cfc7763a3fe8f0eb975662f662a5c4864b55269479669c1666bde0e4a7bcbce63082de5a0d6d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d9a9a10131fbeb7380ae3a29ccea790e593c75cec5b26ae2fdc4cdf0a995834b9d07cf73fc1d7da610c1a5a188f3e8fb02310098c89f65a6cb693a594874c8a965ae1bcd7dc6c4dcc44671c1104206098ca6ac8c6acd0a2950234ed71cd17767c5c6060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e7f8d592316e64d15d372c6e6a54c2dfdbc4cadd5a79bfca8b979e2675fa2e3de5ad1b3be208df668bfff1baeb892421023100cffab9fe85d111cf4afa43959dace72ff56d282348b3c2c46d6e8b13e05f9d67d6a7291ba13783c9dcf13328b41f54300302047c435bb50066306402307c9148e880c6fba30db28cad24b280f590619fac000eb32b330950b446e1aa968bdf3b6e429af86e95be685023ba1d5202300c87c16c3d6d6079ff899e36ff420c399957eb4715202d5ef23697bf77c15a5424ea1cc23533cd1c2e65b826f72968ab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f1689a9d1f69f807d4891a7607b1dbe46864161aac47ab111b78778cda1403dbe6e3351cb448c2957665eb7a73a678cf023100e5aa1d0be6578aee4d958d03a801de3db832bf8f91768bab45f0d8cee8700102693600a36cad284533dccf2ca1f9862c0302047c435bb500683066023100ad3d195422a439f2689c80928b7b7fa64b1645a327dd977ce87cf364d1c33aa5abcf761b02f751bba32e780abd77f5b8023100e1f7d10a909c701d2d8c811ca4755eb5b03f3c7231fb39b5128851ca0d5ad6b17800abefca4ba9356d892c4e5ec6199f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f2458b5497577fc6c599ce84f83d99f908b76b1c1a913b9cd2af52674e4eed4315bc5d4839e667507be9189c346eb82a02301cfec0037d8e8ae96d8abbaa88c4269c8bd8beadf191ca4656bdcf15a88a791432457add3a58f5aca57c66723c03188b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023055d19deceb106e19de282affe7a5576c0cb5578a64d55dd7f7e9235030fe0e467edbd132c022a2c0328baa9d2a65ef53023100c06a4b9dc228963f11e10fdd10c56478c5e44acab0f152d879572d5a517e1128871e910f9ac8c1de8e4ea95f3d9cbc2d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023010e93cd8b4dc9e5074b740e61a7615397e62ed4a5f07d756c1c20497300e8cb097d68b69b073e86dc91c852340b8eba902302b5215355db68815357ca0bafbd859571fc54a7cf6ed6fbcd09fbd81da72e8146dd1feffa4475be3e15044d8c2c84a910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023048af51249a3373b3a324ebb721136f5e5756acaac1fd9973fc6cb0a7436d6d35753079ed9668dfb9f2403bcb859ed5d3023100934f6f1c8aaf4e0516133cac16cd789579feff5f2b9b66b3cd4a1cfb24d8b52cbeb380b71c56d044e41afbfeb68a40020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230027446a24bf4ea780fd18b5da45386a79e49602f0f3179829ae8a28b77c61f66b1510af1b52194f041c0eb90d5029b83023003470857c94cfcba927e3fa1371b380c75e7b5ce4da1713a5cd7e5008eca2376f5f89407966c3cc38bfc79d75640dc560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306cdd7f859a1709cfa0b390a576f82975b84233ee9f8660824438cd9e95de87aa50fb5a02bbaf1d356b40ec86c83acf470231008f7fba10ba3a8fd9cb4ad18f46e011b962ba3f1d0c8dd369b3b1cc984be573aa83aa82fc73699e624109ab430eec55920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230138db02cc9213c5f6eeeff907cdc8e60d6074003f2349739b9581aac67330db0452bf82c96e5b72e526652e15fd09c80023100d0367d149095630e7874f9f28140a108a402641f45689d16d1280aa5407b29cc8811a6045c075546ae1b80c11a12df970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310082e09bb137b4e9905f2024be47cfd637c4e78a21da1a6e0485ab1e93973d831cf70af95860e06ce87f62eb3348aa9cdc023064ea6d5fca15163d86c7673cb612355966f54d69b92b386a0f7514f3de9006df10b1d5dd7ecaca33227c8466b0994a510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c60d8836aa66fba2e10d8a5cebad9cfe97566a84cec24f384dea016e5ad3eea4e15d273f753e323f6632edd5406dd203023100caeb4fb287049994b4d03613ef4fd26a6d89fa2b74ea68b23e7da3c344982cff6e28f96f28b98b56e18a439eb4a14ac20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dce90e587cdc422812c95268b1a3d8a232a8d2089347a3b081d46cedd6f1751524f6ec6db91fa111c3726f22f8bbad28023100a5ff6764f814cccd7e16c5bd80e36354a4c40bf36edb65dd291c7297744ea74ea11e77bd290763076103c084d389f7ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300359bf7c4b850c97db9e957df30fe198c5e4dfae411c7fc02b6d03c135fb7a822e423a0f0fb2e5d08f775107a90bb9c6023100a815e445c25c5be0dbcc07276b08a3666dc4746059b4c13abc2825914d04db88581ac923f5d4b48fd14e3f179f310f480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100815f8c5ff1279f0add3c27355e5cd5c5cc0c560ac83bf5fd4937f025fe30b698f47c6d04c27b7dcaca3878660d65bc4c02310086028d4d89aba22df6b0e3e22076f86037c33cd1aad05fa017891a1cd4af97920d642a909f54da9c54c01f5cae36ce840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310097246ded4893d0301bafb66f9e1d9574840045907ca42f8633999f4b27dfa2d8ea52e1d27cda0e7627bcc1ae6e92512b023100ffd908b2bb65b2456085df06cdf782ecc9a43aa6b80ec42241bbd7ce215216840f4eaaf7d2d42e8646b6ba3493fdb0ed0302047c435bb500673065023004943a735d88d1508f1ef09b1bf8ba9bf393a5964f64a86c44d1e53d0dd4672e7d1bfab546642d21f2d3098b7cbb3e600231008ef2adb93830e9a85f9a32cfe502c871677eb808a11b7a1e6de4a0ae9752ffb9211c04de69b25455170bae7c8420194c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d365e50a1304f2766ffe73ddd8100c317daa3402786cb640de7896e0c7aeb7467e2c8edc9326d1fe20afd6d2647fd72e02303b4e67ea91ce124fc079312f29b0470908ebe3214143aaa97ec141295170d396d180fb76741cf0311a3da37f252cc2270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230672f8a15a43f74a4a0c51aab73b0b8c792de1e1ed35d98941e2e3235632446bf2718b3eb69c6c2b836ed51d8b5330865023100fdc61e34b0fb324c8d6379cd0b3de60e464100c3770850a5f2ea3836c30c17af304aaac768b841646651b52deb6673690302047c435bb5006730650230060e0513bee3446732b762302e1dba74f8713c6906a3c0c028394013b78e5afafbf4168a49e49526454199be7e2383c6023100b251b3bc2b6c52947be05d1d28c8d4c1f28dfaf2c575fea5a7aa8848a653cb6a3153427a80dcc8505e29cc13835ce57b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230521db1a6b9640a18f481e40f6ea837295269cc1e5dff1e6da357b0fb9d2747c2761e767894a66a78a0e06fe3a80f8810023100df478ab45812cf003c604d42caefe4ba402dcff0d41b66fce7ea1ac6d5ed6a5bb38da297324a3f3717a0bf92d0d662c00302047c435bb500683066023100ecaecebd2505cd9ce0d305603c15888cb0f7f31311eef36e0f5fedd01ed33a963e2f6621cae0726d3e75bcbb4eb7bf9f023100e5a4c03045fa212f5e9049d7bea7a78a089b091607b7e96a7be41fe7acb4ca80fc8ec25ff32b17ec6482dfe5f5473b3d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a62b86283138957ba254a5812f6de83728be2dfb18b7bfaed1a2f2700ca7af301d1a2e1d3c351a8d2b44c44bdcbed96102307a00e9e88b7fb8168f605aadcd32354d61c85544b7fea757269d2db4d36aa31ea4164b49576f592299a081d8574091900302047c435bb5006830660231008d354b1edf4d4f3a721f84a53761b7f2819176be3a0605c8505e593249ae6b433b668d6239048ddb31f3bd89db65fa990231009e3cee8003de71a52a7765a206f46fc847a3c9b31749083525c62a3eafa47af42562b2257bdca74b4a6f4570b8498ab00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301ccbc8043b0e298c14453e1d01359a8f45e1fceb2192fc8d1c61b01573303b4e47de42439c9f10f61c904ce39bcf9baf023071c2bc4530ddb2bd927a1db74b07cf8287ced5152854f335f68c2c0f599049067731c0769409713a2916c467140dbadf0302047c435bb500673065023100f71b9d7943771663e9ed46b417556121d0ed61e081079b4b062478e90971f2f6b0275749511e476e333ddb2506d6c66d02306f542ae63902279746f7a6286935b9bc05322752aa30907c08958817864807fb1d27692b67a72057630b53b93907f78f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230702d2c865578c4ccd8ec9a103a06cf092298a11505d3e28cf92177863f98215a0a9282458c182231607b2bdfda2bfccf023100f024b4a30daf4ebe5d675db7a402af7f6f98cf23a7e773e32c712ec360d2938e5dbc1a566079818c1b77d351c0c0e07d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6582860bffc94f5adec88d10f70a5b1a2d502c8e5386752e8f4269452a07762c97d2c827106588d09468d26add485b702307c525a87bef595a38c1a5e951b1c935cce5cd8c940235634602ca5dc0580abf573d3b85ef7be1e3a6fde665cf995b9d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e3c3c0a94a54023b7cdf22a8f11d9c70658b3a9580c366f3366359149ba4a7b136cf583b9922bbd26fec3f0956f39f2502310092d50e9467c2a563dc6456776f236030fa3e6bcf2744e111364d0e8a0e14bba1fac56b522b8b1b8a5f53ab7e4fc2e2940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6582860bffc94f5adec88d10f70a5b1a2d502c8e5386752e8f4269452a07762c97d2c827106588d09468d26add485b702307c525a87bef595a38c1a5e951b1c935cce5cd8c940235634602ca5dc0580abf573d3b85ef7be1e3a6fde665cf995b9d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f421fd8a051b8fd4bdd518bd08362bc62bef520cf2e29576c6ea111141818d0fe75d1e058068c17f0f9431584cd351500230717872bfa421479de7f58b157254fe5b86dbb565bb3d631491933d8594052d2f2be3daf0f50805f0997134d4ea5a29580302047c435bb500673065023100da274c3593d046a2c9b2c69ba62e83f62aeca89b694c9e76cd3368137a1cb2b7c4f20336d765d48dd3f453a8f9ab3dcf023040b659eaf48816ed4637822fd95cb2015a727946cc8903145c16391c8005debe16d619854753a95b9c7d523d5c6400e30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cb67c8a15fec36cd0992f1d86c0bab4f0861aea6c848ae786919585dbd7371bbc1d3a6153648d895bf3d0a1bc4349e1302300ffa2c489b911f4578824ce0192d6e183241df6075cd1e984efae9170306ff690a65b5c07b13b628184428c41ac5eb140302047c435bb500673065023100ec5bd0ef8f2fd01eb44ee700cceed3d98fb60a2b8d3b16a8eae7e504365d8cac8ae77244dae4b047b67b798dd4ef4fdb023052ab8b80032ba05b4be4c770cd69406161b3d92713e1a87172e368f92a8459aee266efe68f438cd303cfed251cb4b65e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301385d5526ef556c7b1ed90ae9c107fcc8872e4d7c7c5d49468a703e62d5b1b3447ad69a41282d01aafd260b369f55785023032325e0487573f709babcfd84299b3579ff19cd51dc197c4ae8f4b5856211c8f392c29d59d6af1e4c7c8c6cb5013191f0302047c435bb500683066023100f33b3451308ce54c4e71e67ae6bb1959aa43bbc8432744aa979b3d91c6d1da5e50398817c215be503e7a832e29f3047d02310096cebbbd82df4cced6e01a06e675d15e818389ab3b838899ae0bf68b5f0b4bbc3067be73415bb49adac3a51de5a1b2d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ac2d6a6caaae78445df33a168a7d8d5dbf9ce71ec7a339da1cf5d3cb6c352040dfb6c4e5807d97654e68fce9db73cec602302ad895eb11725493028f8ea28400d79ad2dd33abb5c90365a3b49865d8d4cc50d9b5f706231a3a4cb205d572d14721f60302047c435bb5006730650230664f0f41e46766dc3d11c713d607d4dccd6b71d6ffca64f3e6973881a8280c901e953add9e0239afb2b80046e8031378023100ee90acad1895555da4b85ad5e15aae92bd6bde06a105a8e8b77362926e707ef616ec32d668202d6acab9bed1f3e4a4e00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d0d0bab193f4851e6e5f59c0c48645cf72186ebc83a7368f9c21ce9921369590adc165c8cabf97ae2dc06405617d7c7f023100c5f1f466b3150f577d750476c0a881668f24947ab48ae2455b49b69c04c6b1e5e8c5437c6b20a7f4409dca89111091090302047c435bb500683066023100a860c966dfa80122e7cef525680ffdcd1694d1e089c0263a2dc0999790ca825d1e3c6b805948136eca88c214651b9919023100b5dca55b986d42911a02060b3280405c872809fd4d669bb9091a1bf380bb2f8a91a4d48afb6660490dce9330b2fb6ddf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230764d7f928bbbfffabc932b1d386712ecf21d1be6adf84453b8795d31dd036f02a55a778325efbfb7b90b67f5e456e18c0230539ca99822e211936285ffe879503e9251e69481aadc5e5ce1b424e2777c73be00bdd67ee7a8c9f33df3fa746bbdb21b0302047c435bb50066306402305a44d59e9e7549d9008fafb131fc70e49c3211018779bfc3cf47c7af1f93d1a46c623d02d0e6d7a20f3bd834ffb2d07202302325fb148d12cc788efd09da61caffc5d863103422807c864b35571340eed866fc3ac8bea4cf8c91ccb711437de166c40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a19c3cfc525a04804fa909c31e470cdbc38207588829cbc6210cb31088c2963273db7f788aed9e04b72f47ecb1c67040023100a5044215243925c70568a9e01e0adbcd4dde812053c980521f76e41d1058209f762c7c054b1458b3328b7090c83443bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023061679177ab6ece6f5ac12dd8b6782b5eeb580a6776e4641a67fc281922647ab264e13e4a32683c7ecafbab0867ead1a002300f4a9e6bd3ebb8d3c5c4e7b6515ad861ead62b2ad638b43f2326896665932f8d96fe0ac9be76d13300b1285f93e57b4d0302047c435bb500673065023100987b4722d250c79d96261c037de9477722a4932c3077e7c6443db75fe4fcfd05cf6b1a77d270a93d80718f654318bd9a02301ec042bf1ee6449e4d39d65a8d0d7b6b2e87749cc6c86e506f44838366e9595babba960bb2fcf2e2be0a6fa66a2684480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b6ac5ad205f5d3655c9a0ea698796854a334e6ed5963315c4d9257fe13f0ac55f1c8ca6e6fc3bad6294f12b07653b53b023011d397efee73fe31205557155fc3887f24ec7f85c5f1e20a64e2f6b87f168e8e05b7c6b0883114033f2c5d317b8d06a00302047c435bb500683066023100ec78488e7a769c767a97169a8383766c24a1f6d43deb505e64a0eb27eee129df18989b363e80fd67a5e018ae574ca15002310088a912120f82687ebdea8321164b1441341ac354596ec07071fe78733bb9dbb266ccc4d83e9be60c86c5f69d15b274b70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a495b70e6a7d2a763639caa7842983007738286650d8a50e41c604b3636fb367d04ea9c101e8a5d50f27dd21df7eedad023100c6e8d3b2f1fddef374cbfa41f9072d4994fb8343fa6f57899ebbe6addc271ff522fa39ca6a4aea6f913e5719d9819dbb0302047c435bb5006630640230321a353729d148f5911978a9175dbdc39858753644fae3587e5e680004405275a71dbec739dab009bc8188994b81618102301e969e0c89541f12dc2ba8a27341297719b9b281337b8da7e1c02f0af3f6e89c1828fd9f702838abe0038ae987e1ca2a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c14b748a17cece3077b34aa7be38c9f54cd50aad857dcffde762c994c3388bec2c5065e1da6c4218b8470b496f524eda0230654942b3bb5b5bc25b5a35e0213ab431ddabe1676db887ce7047e7f2528062bf3fda6c6c005f791ba233f636b75322b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023069d9306e4f907b1a389072b64504119f9939588103beca0d950a2dd300d53d5914888a627203a949a37e98122924918302303b42bbbd3b6b174406ea23a4a2e6cfe88a86943b8eacfdf56d55f794278e51b9351e9bd7fbc62af80ba65d7c836bbf110302047c435bb500673065023100ad54312a958825a7f551046abdb7beccb6ef3d5ce06a00315665f1d2a2980f4a5e1d699ce40e953ef579d5e3ff5295c4023072532ec84add6b19e38ca9b47d21902634634495cb5025891ee1176e2e8dcecba2923a101834ef074f6582b4065499740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b1248a9ab6406fb70bfeb249cb50f90c8e254272ad1d384e635d8f7092ff0e7248fd4b893d3454490eb44da918571045023100fdedf4710ca6c244ff53e84111f9eb53e261eb98bea39835cbea8945ab5a4dbdef06ed26995c665405def10107195edf0302047c435bb500673065023034dedc7ee5f51e2168a605dccbb658d089ed4aced3ee8adea7d27c664211f3fc7532e8c60243b5bd79d76d0a5033e979023100d64d1fb7212c96675d70d7c8dfd5c78f7ad824280349f3dbc47b53c7b4278cc476f9ba8fc64aca1c1a07329e826ab0e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310094ebda68c4199cfc78b75a827ebbff6d996d27a77c76fe04687ffb9343cc173fd4ec15b63185af15a9ef85760449f5b9023063c3ce37bb5fecd895cb478d98f46868aea9cbae6e2fb50fe6faebbd2c0627a1d7599640aa55811af0325927fb8108400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dca86951299b5a84a27f7942fd87181daf2e17117de02e84d67d51e379aaaca9d3d8759760bcee0d3b3cae4da24fb7bc023100cabe079912b68b08fa926e67584106ace045c5aae3558ed142c28565dc2dd0afc066a49d0c68e0bbe1e06d92a4e0e8860302047c435bb500683066023100eab4a080a1a3f8ff88646c307717d05bc97900a7b98663e0491b2edb509b1139459c21ac5390da32e9963ae9c43a644e023100dffe18bdad97543617f59d5b04fbf270ef76ddf5f4e36f667de1ae31ef7c8171d9bd38a51743b8dc925444d2235344750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310086eac9b90c1b377204cb1049dd1c84afdc12f1db78878af033c45f4c62d2a096454be34fdeb745ffef47d5882b866c8102303d43fdef66bc38f47a5694a6396b7704d8315c17a2c47f0371e4b19ab83b1fb9cdfbb3d2467998e6f539a8a12393bdf30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049eab099768ae361a4bfc211544b16cc91e167e888908b857ef4d57dd1dd6c09f654e718a81ae787242dc41c7febb836023100ce53135053afa81f02cba9d76249f60843b9f77b55be47648f7f3fee2a391139622fca880103cd3af3f9e65100ace81a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049eab099768ae361a4bfc211544b16cc91e167e888908b857ef4d57dd1dd6c09f654e718a81ae787242dc41c7febb836023100ce53135053afa81f02cba9d76249f60843b9f77b55be47648f7f3fee2a391139622fca880103cd3af3f9e65100ace81a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049eab099768ae361a4bfc211544b16cc91e167e888908b857ef4d57dd1dd6c09f654e718a81ae787242dc41c7febb836023100ce53135053afa81f02cba9d76249f60843b9f77b55be47648f7f3fee2a391139622fca880103cd3af3f9e65100ace81a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049eab099768ae361a4bfc211544b16cc91e167e888908b857ef4d57dd1dd6c09f654e718a81ae787242dc41c7febb836023100ce53135053afa81f02cba9d76249f60843b9f77b55be47648f7f3fee2a391139622fca880103cd3af3f9e65100ace81a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023049eab099768ae361a4bfc211544b16cc91e167e888908b857ef4d57dd1dd6c09f654e718a81ae787242dc41c7febb836023100ce53135053afa81f02cba9d76249f60843b9f77b55be47648f7f3fee2a391139622fca880103cd3af3f9e65100ace81a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cd29d6aeeba6ecc424349f419528c093d8557673c805b84d542e11a61ad51f8973f8d2ec320332df46c2628c4d38e063023100ad4bd6ee46c9a88bc2899bbf1974f0de95f85a610236634c10551f29aa76bbd9c43f4d177546011359c70eafa7e3a7f80302047c435bb500673065023100f0bdbbc19b027cdf522fb537eafa22a0c9f82159b8ae7e3a63ff9f83ce66bef499326a2d0f128daff5b650f809e6f930023079fd433d4783ebc3c744f2ed8c9eb5b3049d63733438159eaf9d22ff2b15fc2d5307c2088049b12ab48a6780136224c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008ec434e642aa92180bfc3a87622a34ee8057b388a45920118922d74f964594de2cbe8dc2b455462a1bdd23ecb7e24254023100faad4f85ba85a646614a84a8feb29e2922a226d626ec738bc6d6b441039c16cae65d299fcbd0b91ed705f0980f37296d0302047c435bb500673065023100cb52c3d1bf4a3fe2cfdbcb0720eac7d711b4223e0d7f68416f976d917e244da6ddebe8644b5146dc3fceaf19f780e486023051ff9dadad2373b3d97a0ada602ba0acdd6d985a98121d065477cbf67ab3843af0f4f1c8dfae8686d478cea2d7b1449c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303374f28a0cda28eb7a898d0070e73e3bd36114dc112d01ecd939fa71a90b133cddde9c7bbb23c87c0149e220937855ac023060c5b18c768aaaf4bf7522b9ac1a6d9aa232f41f87eb0a1e2e208c36fe036f10d36da1aad1df58630535d650730f66820302047c435bb50066306402307dd07e48b6b3774fde07bccd64f40b3dd5bc6d16aad7b67810b36054eeccee10c0878f3a41ce877c0deb1a006f91a8e802304670dd6a083c667162ceb64c6416926160b3ad8fb9449557899e2a80c14066cf70b7bb6cf17505a5bb90ec32d8b2f72f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023017aeca15a70bba30c044c33bfb187e302c39cda6c352950f657f380fe3530b3c2e43421dc83dae27222935fb77a74fb3023079f49e14f5dc281b30e379be92bdf5d2fa2a2bdf56a27ad1199c1c94b13f0b813955d451564d873fc4ae720ca080bf400302047c435bb500673065023100ea2fdbb3ffc1e84ef6de3defaac7b79629502637535ce6b253079f0b135bafa732a4f02af998b229ada80ef25f3bfe92023048ba3bf9986e884075bbab5a71e59f8bfc8e07a7d5588c0c80275d68689e5e2bbab82960f3ce6cb1b68c1a997b5303760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023043318fda9d41d0978375a17ccdcafcb70d799990d7fa2d09e5b5e183c7835f19234aefbcd17e0b990592ba8b7fb48dd40230062dad5615bfd12758fa71696766f9b32fdf833d0178e8a7bfb091401045c123492ea59500cc46d7fc20c2660689a4230302047c435bb500673065023100f5212456fdac861996976cd71f1b8e0d68aa24da6711eddc9d63b39bce30e0f10e96ce92fe537617d5435fd6d359b09f02300887073d7375a81b994d44cb3d4c2bc0d94ee601e05accf28b9600afe3d387df2fa74f299293a6b75c9f876d737b91a90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023046f64e40367a8705c4e153c565dfea00c3ff4a473bb035cd975d7d366f74075751c04b0b10bfdec2a249d5f40abea61b023100a895672eda199ec13a8fa03dc057b6e12520721ed5dcb1ee437671c762ea37a3bc9ed27be42578229555639bd8b7eca40302047c435bb500683066023100ef6ff078f310ae37786cf13a4ad27655601c25bb906fa4696510bdff10424ef584f570a714d4cdb0bfa05738465491d0023100ab12d22c7a4af6c56624d9086ecb2d72141541d181ba8daf074aaa32a4adff545d8adf957776d807f60bc5d7df4299540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305fb1fe33e6b6d394565d6dceb619b96a1966927943b2f083034eba9dca115dd2e43ab850f97bec19d2a999666a062ce7023100deb2fb2cf875256d1ecdc75a963d18be353a8272fa75ed8b7a3c12a2ba6ad761b88652ef05894177f346ce1b647a8c040302047c435bb5006830660231008cb6d5c2491784330d83b6cd15856aa6a1253796634cc16210f21d057be6e7d94b724e1800f3e810913944c976f954de0231008ddf5e55440a7d65cba055b1fd453fa68db6a8524b4af87cb946e585d66e462c02a3174e16056158d244e164897bba930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e1b5f14aa618231c79391e7184fefcadd207ca80652724ef9244b1d53e3f492801962b5d057075343cbf2a902f92b6a7023100ccf6fb72e29a482326abce9d8d6a2acbdb73470fea7f2305c480fa05e59e171a954ada2c462d0195d4cc74c2ed1de5d50302047c435bb500683066023100dbedae057f95466716c6bae8c9e3e017dcda9f0c7931aa95d89bddeb67ffe5eab1914deb00396806db9c6e64b51288750231008aa34251f153e31968ca63772d59fe6e16707ec064bd67e7d2d26a5532a62de155ef46a79e5964e99450ce8e5e6f27ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307f69ab8ad511f9cc5446668c1fa3a1bab2bec8716dfed86bfed2442367440522bfd2c501bc49cfc1fac052c280b47679023100a83b3e83c15bddb415f62f1749e5f71293ad7e3b4c850b037c19336b8a4ac2fb30179205accdb6bf4532b031c0141b960302047c435bb50067306502306eead792278b8bf49000e4c4fc377069d4d3ab410bd1ce3b4c46c1f830aa0cc01674295de616ac5cefac55cda06b2575023100e1ddf978484f46cf70c7e62ca11d12ac9733477f25b71d6fef98b52b8d94eefce1dae1ff6e750a10816bf0c8894285900302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307004cdae0047264b399740aedf3fa7e4be701508d5de759f8c0e0bb9d3693308ed7b9f149d61fea0c135e634f5f19ca3023100be5e1a44e7bf309b446af9d2054f811ae2da586bd9b26c37fab543587358a31cd289ed7c04b19e8ec20b8b0058180a030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023039432a013346db99dbd0ce03e2aa6824e9865a65f19d94858024940dfbdd8720959bbbf124fb5c2b65c4905a1004dcbf02300cfa60ce8d9a80fee8b31c059b92bcf0d110ed4b4377582f7907937cac5b69d410d886efbb39ba91036b85ce9d59ff550302047c435bb500673065023054438e9884e2efd2eac5003eab31bf3451905b83b0a2eb1c90f2ae3f1f7c2d43845f5888612cd1b94f7c3ef5d4ce1ded023100c65bf3636b2efe8d43b2ad6da3deb695dcce8f50e56f6a628a538e549f922390eabc3ccbe7162b3e2f96e58e5b951ed70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c77123e2babfe70d811b0dd4846806cdcef79d147157a61a30247c5db0d5f6d0770f9698b09a2342f2c9ed9661461c4902310097f29123c6d0efbd52327fca51beeb4fc83840037a3c31af99e648972733c675a31297d6d2bf98635933b365053c2b840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ec50c3e879198e8cc03011f71520be13dea1f23a878942898ec200a08df47aa8da0e721c958f64f080c91430078764790231009d8ba6f83676308c65f981c06814220d7f5d858b3161908d37d101029320e099190f88f02a75514c6e322697667b2d970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008ef6768134097b759ad3f849179373a4727a9894759d58affcccd67e4256ca301afdd8cc41568f40245bc16d2fc04144023059a89ec82d170bbabe28f7456bc6d96fca3cfe64f12d8d7048d4d7a3de5bc527e4c0a65c0129786954ed06232ae076a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eb4e2bc2bbeba15201388064c00f5904b21ca274001a45bdd800557270d3b2256d015042a5cc17d5dcb45921ef4ef100023100d890268fe35237b2c14519b5ca7f4189dfb760e1d8f05010da888adbd7ffd35172ed523b88f47406710ede4d690a08d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302d9f3ee6bbf46f18f676209edf4dd7830e971a453a276fd444ecef9f2817f636bf77fab89dd2a374ef90f2f08a5d3af102310096857812002d4a105a2da0da4bff17c805787cc7291e018925aae64aee737c45bc6fd7a70e03d485e1a10c3232b2cf620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023008ec0b2c59c37bc8c18a45ec6296d26cf4681d9c4a00e29c1217ca358df5561b3b6cdac69d6c2da3449ec8cdf620bc1a02300c9258f027aeec0605310473dc97f478f52e970b2d974273554da7e3818a0bd4dd27914eaf6d9a554547d207a0bcaaa90302047c435bb500673065023100ba584f8916594abbb2ef2f55447981fc3c34256f50394e6b4d0186cbe4ec88b477d50ce9a403d5ce81985d2e8e032e10023078fb193275220da809eeaba03352c057277da64f2c8f049192165569007014bb956d8634eb8503d4582cc94cdd192b800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037b0d5c90834ffb64fc91934c8959c9bb1c09d79a3dec6d5de227624eafa3fde6a199982faaf3f0bf781ca89f54f776b023046e4fffd821a32744d76cb6ba122982202788e004ad0487d8a191b8d58d7a79e648e54a317181c9c44240765771537d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303d2a61a5e8168207a656e9bdacf101c28a8aa996032e1980cef24c75719a92efba6970ebbd04508d28a5972aa8767c8d023100d00fbcd6bccc65744c6f046709e50a1ff786f1f929b1b54b0f1ed2af6dd02a9433b171a4ea7ae1bf14861f5f3b8927930302047c435bb500673065023100eadb6c5ca28c5341ed1791c6ca40a8584f0fd76fd96b9c0f21364ff2d22662f059b8483f2e7a3a0a0d8018583083a52902303e489cfd70d339ffb73b0a25b534fb2d843e69746adaeb3bde932f693768ae302b8e83ab3a8223062986b889d87c31c70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009a7a5b725434a4e1ec5e76141c8ec3c091cf0b5cc77bc7f4b68e6c7230d26a41c03ed7bcaa06a70ab55536de03b7b871023100951db6ee73f441d04a8bf28181e1047d23fb6e423ba0af721f3c342f78d4b664c28dac95d06ac3002971ad10b52a14040302047c435bb50067306502307b59900ac326cee0f57f7afe0858cc3db550c413e39f63ebd5bbd713a652a02e9c1458d9909668de59cb5c28412237ee0231009d2c79ec554eb5780cabd1f5134b56db9911657adad2389dc36124b200ef28062b6f46d28889411de1f7368879af98700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302648dab1cdfc14af250ef9ce6c03d678c2e7ecc7b20e934703b55665384b7369b3320f1a5cda6459d9b32ef7b8bc3fae023100a6fe0dfc2320172c8ab2e4a20d7fe156bd1abee9ca3f384349b8306ce1612272d16c9395b5824e0e7f9968ca6cbf10140302047c435bb50067306502305533b4253eaf698d3ec9b8aeb500268091697f48ab83b016931c404d49c756993529a0112baff0474ed3ecc69b24af40023100ef61f970a1f4702dfa06f34bc0f8e9ab303e4ab29eeb3e66e16a57239acc214a6b524a83e870d8b4cbc413e1482b85730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a58acfb49b8717cb6bdd5d60f09cb446efcda98b52603cd5ed1c4716fc156684db04e213fe79c96bb20f64451c6506f2023100b84fa09626f88a08bb0ff6d07fc2b7ef5aae50dee1b9de73bef438b2b039f6cb423d521dc392a8a604e4d0f862ba3a300302047c435bb50067306502306356596a8899ab2dc5342e60594faff1bdaeda154de332179d2f42b52150ab8deea544981849a3ec301a8087b8112a7f023100c8f83815d2fc327656a68e443c2adbda2842e678aa6654826ca40e4097ca5efeef5f878b552fbd9ba02b1f6aca6d9e2f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306fae3e795055c40a39b0226501ea6cb3fda250d6e86e9f328acea4864c0b7c799cb371c8c9d46dc999b89ecc87af0ee2023100c58519fcb4785baa0b2d52bb03b3f5e156a710d527681371c6caa1549a308f1a6d998edfd9a5713f4fa11f597f085ef30302047c435bb500673065023019752b059e625b6b83cefa80261fc1c4ed4bb6970b78ed98d0b64b2adfd767ccfa62b3ed7d272a782ed039ac6acd1611023100eea43d307ddf9d839e1b466247ef0d9c2ba60132754614b7258a5b35558757155127a13e52196decd10b7615cdc837550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d90141f7fbc77921de5dc929afb6fd1dd61c297f62c58c131b54610e099cd26a1fdabbaf812840be759256d1d230201a023100b4b7890c741556c7bad0877a11884a0a99cbf478a86291030b16c2adbf738e4ccf94a4c6a3c8e7487ea1279c8448b44e0302047c435bb5006730650231009db085fff95b641dedfcbe9d422d3f40e7cb4ebe3d80468538141ec72fee24408805126a4dd3913be4f7d171b2d9763a02304e366ce2edc066129afffda850791d7c7a883a9cf4dccc5f1d55c344bdc7707c8ed9d67343485f050957e6919a2f6f520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306945a75fee44bcc344267af6bba66c55e0fcc38e33aa6db55f7d676bf769a2f1ffdd437a9ca102e4a3a4541c949855110231009be4e49e5db5c5a78baa0e99b15b02602605607b56beba1dca4e66a4302835e0df2ba97a44dd2d2ae59855d28fe182f80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302e9b2bbdba6083ad1a66feac1f7b14dec247ec2a216dd9b7fdab566051c8308477275ef42c145c2dae2dc251fc007ea3023100f483a63b141898b32a44d48a5769a20d2905c5a28d5e9ca52282323136f516a28f8c2fc24f90a09e1a1276ab86cdf6040302047c435bb50067306502302d948abc2191689377fda7a2321a0115142b4472fb2de15b12515ae45837061d0749efbe25b6c55ac5ea442b51bdc636023100904e840676b774a778e90e0196f9d7153b577a9803d184f9c1de865c0aba779b83cf67af09a1e04abb3c541b16434df20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ff250dc90135ece5ed36405c53e1019c081143410069ad4901ae120f474ce37451e8b48ce11b7a227d800b2a6a183e62023100e8177e63eda0e020038cada9b77561255a78aebfc05301850d59d82a39fe7a6289202da1e81a66c9f794722bfacf73130302047c435bb500673065023100a27b30c1a0c1af193d6e90b95a3336bcb78c14ad82c133ad0b2215963b0e9aea3b1ca35f4925b7b21dfc8922b5a708f102300a64a99af5e58ba4a6233b1b6b6bde411dea74388636c287316bb0f884d139f9411b395b52e57d2a1b17d776170af8e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b79438fb0e65d45770d0ca94a11aff4022918159ff74318ee4ea3602580b1318fed96b153ee0f691b97077a646c52a1a0230577c99f5d440285a26b58fd9a9245cc64ce7ce567b106cafed339082e66930abef7ef5aed7121e39735902bfe2f553290302047c435bb500673065023052350020ea3f779d4932016bf570a35ae48e0a1c04c8774bc6393cf375f7dd0d4707cdea0701467a3592cd0082a619e102310099f568e2bafa79b2b8a8a414d902d1f76fde60ec97dc2e81b92a1c133209dce803acabfca1b1e3c8bf88c8e7cfece4650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f54be9160a3cd2cf82e9d2bcab1ecfcddf386935330ede614387c7606bc229143df7996fd5db599d1afdcec3a5689e10023100a03b5a4151a580938b72ca7cc4a0c13a139a029e19023c0ce12c1a95b3a39df363258cac6e3b020d5195c6fce1ad05560302047c435bb50066306402301e4e5932b377220d23bcaf2bfd05b1c040022361269b9427057ba1bbfca53a0b92ec83206ad4309298d4b8610f3d3529023075f4b9f9b4884cf8e01494f9b897ca911fb9ad119ca07382efc7cbed21c2de4e8ba1ff5ec9d7a00098b5ed84f3f052220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023027025bf7197eb2d84b94298119d939c5127e2bdf742b1fdeaa13a2b264547ca115a58fd7cf0bef4464725f7c098e537902306437f04276dabde4b227c2317bc2a423e15463d6619a3d148ce200007a6e90fdc3227e1d7f66fe7cc20c9d7be98c17600302047c435bb500683066023100f51b0c0cecd02ce06ac8d32a6e158aa148f355740671b85808f92167ad6d7de3711fbcefc5a73ff9a6b4f4d827dd419d023100a785a25023b6eb08b290fbc2b6d905a854a3de16793af5530f6e592b6ae3e6aaa4fd5c24220e6276151cefb7159f515d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ed4018fef0a8a4e3413a44bcdd1b560a6d823a538175674cac5419b1507ad9e2b2389e286f7d519ce4bea486788d818302306ca7e9df94141eb280f3250e82245c6bf7da971f232021a03e30d0b30017cd02ce674b0c83c2c1912a06e6c92311704b0302047c435bb5006730650231008999a0a3bd2f771c4370d94ff908cf14e697a7f4b94ab98553e7c84829b1eefd9179ed9d2a907197b8aac078b7110917023056d2a90fd3da125876f660ffaf7e3c49eeae999b611f1d40b825229de5fae7b97db018af3f3b5ef7f19fdf982ec6a4550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310084dd49080ec1ea41953537875afb8456726f84915887f2384078a904cf1bead6660f5285c5d79677ff73177a9dd112f0023017e4698e005b180873f99c6ce06b5aa2cc4e18259fb6791f61d07239c392d4f1b3f12c2b1b969decc1f934b619ea271a0302047c435bb50067306502300990b0f0bebf11ab8324cc0112354cf6320a445ac58442235b4e59b4028c7c85a98670a56fa1fb9ba6da491c0279aedd023100fb26d24e192696cb7ce0f9a15ec6dc4a7160214686f1c81c9ffb7673b315b60a309813544bbb15b109ebedbca8f859b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008bbe4ef94f331559f9004383ab32c7a981f005f7c8a0943753942836da3e943d2ea5e3f9d4756e06d06ac8ee63df6767023100ffa739690b4357750be18896cb51f9797c27cf7d6b39752aa4926b08d2d39b1abf2a355bcb1f613c28716b53f5174edc0302047c435bb500673065023100fc8370418be96cefd52ec0e41a4707329759b72cdf9aff051168489da22ceda3479a588acbe2d6ab2de13f6e77e2dab6023026be2898d28560a63850859f0fe52cc5e01e4d088f8919f725cf441845627434eefce89264a086bd47bf75c96137b9320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b6704751780cef3761e51d431d53ed626853c0f430b5f571717b659ec6f347ec57c6a01ae5069fb4c530d376a003ecf6023100ba60b7ea577e7255e915ef2472c0afa54e0135029f39c350ae11f08afa25c39a79ed2c36c3f14a2f49988253fef150070302047c435bb500673065023100d26b66befca0832ed4eec56b3625fdb597e9b610c2b96af5cb541788c8a0a51819994cbe44f215c1ac22dd8dd74799b1023006e96a611e1797c1750d68b6923841ef4756cb19c0acc034c690ec745862b96b86092f7b23e078a1a9b7e76efa462c890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054e1acc3742bcff1435c5d4646dae82bc19ed4e1d757a1bbbec9b4fe9af3334f4a4aca78235e3bd592785375fd01f5ca02300e19a2911bd6dbb9e258aa92210b143663b21f6260663cc5c13cc0ae09633c45be70cfa981112473ac7a7fe440883d580302047c435bb500663064023038f8a31a830890c291ee28059a51f729a1be5ca2bbe10681e29a795abd7ecb00c06bccd7bc0d5f36833839b15201773802305fd66a80b5548d7ccd3651f44807ca3174f8fe9288fa68afbdddb461ff0f28d7db4d19c4d3fce4c736c440a47d174de90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230067a86091ea103b1f0a5bb72628629d2e6da62900de96ff5ecfb12094660b581ab568955e1bb69053a6d656e73636dd20230562d6bd0a9858774c13e61f92fe93ca2b5dafa8030132df65a873f1bf5a9f9fa5e57c78ec79bfe76b53c5687642718770302047c435bb500683066023100ecbbcc4f9fcb41ab31319d5611d36335e768c0492017286fc114a061ae739b86c90f06ff4a641b1671ee8aa5bcef5232023100f7642ca47bfb8e942b2301b4d0375737c6d2902a8a922c5b60e6b29207fb6318202ee9c0fc27e565920ea6f86da1caaa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd41c00ed4fb0251941aef5e57420803bceb4423bfc4af916a6041650d24dea205e8d2053e30f1ebe6d282cad032648302304ed6b236a53c81d5dac07f29280835143e7f542d7ad2314370f3eaceb16dd9381ce8a08947547a2a9561f900c3e9e0a30302047c435bb500673065023100c49f284a7a2984b0bf1f30134e374319a7aa33a0efd531c9af284665d1c29d294d6833eff145ddfaeebe3b5e4b9b526d023042a62e90a675f83926fbbdd31618f29dd52ababa3a0c01e3354af94223cadb0031330d7239cb37d7b5d8ba9aeb65b96d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ee3c7245f5b9f28d33a41dee99bfd62df76430770ca7d5a6da221abbd883bce90e9853500fb2589b2b544bedfa2d50670230191cceb36e18e3061ac1282d72c4c5b48b45b0209f5b4749726eafe5b8a12f68b6d5f8890bb8d2280b81cd2ab69518be0302047c435bb50066306402306179785821b4087edacafe3cb3f79d0f7a6e8f34e2e41107adff5b84545cea0d64fe24f79d353c9d70f2eda80f71396302304e0ab69f8102b3bc1a27e672ef3ab2dfffdb11e19b7bfbe5865d82d9f133a64b30be685b642cb3cffa0d00eb19b0b5e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a4c7a49772b14dacc71be2a0fddc35afcc8a456e475b878400573f0bab872c40c0e7241879d2846f6248027ad25882502306796cb7a8c5eaf921da32f95447e8e85e0029e300a29655fdd955cd11a02f20b71e95ef06b5bdfbb41e53d9fbcf10d0f0302047c435bb500683066023100f869e60aca6ac83f763854e3d58df69138193d063942e0cf768e4c38ef8b814339631ced7e0121a95267c631daabc729023100da654af465150b58ce78dbf438b1ab128cbfa681c412054c0ca1e392e64eb54dd7b5c1e653e4c1f18f6a062c9e360dc10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091f13ffd9a5aa937a91bcfa44f609856227b2e288a325fb749d8cf89b5c8cd9f6070bae763188a0065df1179d27c42b802310088dc9f2ce98fedfbd357bb43f9e13f779b379e55083ef8c8b2d3a16851359e64f1030739b4c321514616f24b288a324f0302047c435bb500673065023060948021333710ef12f2c9c53274cb3337483532f0148b8b0497e02f8ac4bb12fbc01adb35a2ea77a8e768a22acc53b3023100c45f1fa8a38430359ad1089423dba74cc82ae144f9675fddcb5512b9c90bb8060eb2446876a53d13bc06cf6dce28be340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b601b038c3495d9280b587da54e6edada5268e2cdc07b12327513ed51293925fb36cf1466c00902aa3e5a3a9d5a57796023100bd64bc6c09bac3f7578fac2c14718248f6774fee754bbab13acb9d3c4513de7d54a8c75001b5911e3601bcf582e0bb090302047c435bb50066306402306cdcae156a8d2b819bd408726e8ab287ea8e1fed25d4a1cf6f2f4fc05531016787602ba92da6c5fcdea0383eccea6a730230155d3d2b5ecb1867f1d1f1399a4bc444f9e1bb557066c5200d9b4dd2eaafb69c1eb643c1d7287958bde9a85ed5a7857d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e5fa53b473663bf91d5efecf8987414a2e61f235d7b5f5370587cba82d1892b94f5f41d8d799b17d523648472dc0a82f02301e5be4589a30baf8cc0c45d2d6a0afc1426bc9f8346673e3caf79bf8a7d49b2d80e384a737aea04d784528c90bc6b6cb0302047c435bb500683066023100f50d9439bc2d39bc9a99f4082c18fce3241a1fc4ebdeec886f87d0f9695a8a90917903f86a1fe5b6ae1f20810f60a5ab023100aeb1a39b35da860f3aeba9f44b2847e5b32ab3cf04aedc7d6fdf02c655a9a32c55e40122522cbf4d7133967649bf0d380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e019f6dd58fe48edda0b9ac23905c2547a965eb80db4a2b7ba90bdb0c2402699e78bee35d8c6729a930f3be180d3490802302bcd4160e19b3a8da44e5fb320d4165173f663b8b4b7a776b0f701b3fa7035214f30afee41759f64ef254fda3bab16290302047c435bb50067306502304a5c4be2a9c56c9eefe17eb95be06dbd176349ef00fb6b7e34fcbfd6828316e72d1b688c0d2d25da0841c2a14efa4c8502310085a835ff1d9938bd29cdccfbfb31e6cce5ba38c9da41a135ee2103b6372fdae1dbcc016153bae64e69497182c45de86d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023076c79a8245008a0e8c138871bb7375bcf64807eebecc9faf867945490ee56199e86d21c3472bb05c1f1fffd4f02e8da60230373f2ae5788f9c5d0aac464c0a05dec165cbf80009c76a9f2072df95f6359fd5345df6f9973526cc61c783d8ff94cb250302047c435bb50067306502307ef794d901ccf5fef1d6f7d1896ef649b0017c94e38b98471b85c90f2c9ab9393aebc1b45bdbb6ca29127ace8a36d4ef023100a023352feec8707b23b38e0b8fda3a077d241b65a184b207133e3a0d1cb58d9ccc05069a97877e326c158a6f280db9820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fd8e2b29fec96c5977654a374ff7a3c286c5f7a89a8048d87914b736cf0309181c7f6dfacb3386ae8952cb43af8adb840231008ed96d581399e08f80e184417f77d015fff399e3d8e98f2bc7ab53a1dd16817d9d12ba2d251fdc00964dec93c76470000302047c435bb500673065023100e3f1993372efa6c8ebf836745fa4dca8b3f1995433499c4effae1e8da666ad4972330f8957359666cb422bb83652266702307c0ef874c09127399089be26baf3666fde26025de6e3b3dc9206c3be545af71c1c5ff6372b34050c3dfb79c8013aa1640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100909656cec6a5a25dc665447777a841488612b09c124e5f08de14ce60c51441be90406d526bf3f7775bed545c869bf21f0231009c8aa24be2aa4512af69d8074834069a92b3745f860c67a3c21d9c7414fad731b6aea9407ab7b5dc59d657adb1cbafef0302047c435bb500683066023100a7a34cf58ab030600b8f058411033ef1076335a0d1542bdd357ee903073a5bd9337ab4d08f7458369713497d3c0206a4023100dfde5b78ba1d3a55be3f433c44310b9e644842f10e990ea4e6a19e8b9f40fec34edc910737079024937878343127764d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ef550202764c39c1d6797e8751562c80c5c667810d80f5b7b9992a9308b6d2783a473f45fa432b2de11279101241f617023100a7df3f2c036db68c844c638af2a2bf784d2ad43cc13b331d7d53052c8bc028f5d29e05a16b6f6c9d31bc5a2c3e75d3d90302047c435bb50066306402305175d7f3733739974fd95867ab13e15dc9aca9f2cfd47f17449754e2ed9e0b1f24f6313695a0350b6e6143331c0e400b02301846976757863df2a29e35753d52f0fee84cdf028a6e2f496cf5aa3c94c2d237e9489d86a2d362d4bc2f1780c0d6e9f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230023e15b5502550292b58abcd727c69a5ba94c8a83d50c13e6a54a12043dd91d977fbb1d06ba1e4b6ce40fac8848d7a4d0231008914ca8f8c1171a6a13f81df260a76e80e7a90bd0a8c775da04a71a1e8c4b8388ed56c267d83b2f8a30ec053d7dfcea00302047c435bb5006830660231009763809ff4cebf0fe67ddd0b6af3352616401290bbebe8866ba72dac29d9436bd59faa0822972a665b79dbd30cb9adaf023100c464e54e733d239bef75027462cf05ef531e7d50d83a8f3adb332fe74eab8d8117a82ae52e481ee7779f2188652d8cee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a9320b1f2f8508f9cc1c88eb5cadfb115965b1fe7e0627e31851aed3e8aefddd3966ef87c5f009d6cb52ee6bb84c888302300616179995313d332acc17d4ddd9d75f6177a565827a5ab7ae631ed9af14bedf3b56d4451de0da7305e42f0aa52907f80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303253ea1d0114637d37f465555fb26e3bc45384ec9b714e70c5dca76b77f0a3afd5ac26c33e375e0e2e57517497b9e6360230787c585b09e1afec282a5fade35d0ed07c9fa73e66ed196bed23c475abfe3478659db11da9c05c44793f3a94ac279f240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306902560577faaecf8653fc405b2f6f263765e8493df9819e335ff9d05b1ccc7509011852be5f1f5e671455318246bc9b023100ff4a2ae70a2967a64d444c789f6926fdc0b7ac38905d5723bfd12710ed691b8788bcaba6e6d803c39718aa4ccc453d5e0302047c435bb500663064023070a0b5c04d8c7fb8b6bc3f3defd835d89304a32d50a10dbb2d208150c3eb74550e0a2ca6e00b2bd0a06088addb5e2155023025d4719836499cb13df45a09a59b29d44cbc05f16935a25304b17e8128121a4df584236f3767af1e0948db1b0e6bfff00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023023eb86d590cc74e0ddb821d0aafb084835e786edac9042995ce98e24c718bbf61491b8599b2dcb536a89041614b9aa89023100b1971dbfa0b05ef776a0df2e2e7b48b2cb6e01528150b5689ec18e557f705c932b3577f61c42f0b4576f1e63acd9939f0302047c435bb500663064023057326e4f93d80e40a6a29b10c338b1f7775d78a8e135fefcd35d38035b231020837e706c467babe9d34963d58acdebb2023032173f13a7ea3ff7e98eb1ae9a7d97d863dae2f7cf6268bb0b9c82a2ee55f0d3f160d28774774a47e7091a4cc0c691070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230704fcd8710968763225c66d55577e679d6e77a3dadab2418d275ea574b60c0e846ddb366b4e6997d347837f3f11a29d202302db82ca4a3118ff0f31fb1af83bc5646d51a69affa1647b4a88a58d0faf0457da23562ae93d02ce3b896fa6a5ff881ba0302047c435bb500673065023008002ad16e8f68ededba12ab465d558c3aa21b35d19b20b8858099e49e1f4e801d79992cc208e1285919276a8f4f8859023100af85189320b90f1f76b58fd5aac2d020d1f40bfd58383cfca79522a7ef95b1077e49b69c942aec1a294a6860d573339d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b42434353e34b79cd81b639dbf62fb07b4f3e82f9fe0b9b9824c36d8cf04d1c7c363d794e5b9a2fe7ae0e6c3c7143586023100f6404956d4e4ae0298b87d38feedbffc93d00c14b85a8315bb9fd11f35cf7a119e08be56dd65ff3e007c1ea058e4640f0302047c435bb500683066023100c9e39b75195b9c31c6c70ee35719730259bb02e9e33f59f0c22a1ae84b3e8b22aa4c1a89e510e7b961b7e11b9a76a1ec023100a68f9854104a1f09a151b063299b9ce4d98447ce8bd86c761dd72c8656245c52f6ac05fca65faad6c9c457a2d2f4bae10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310081ca78d705f58a59fe56d6ef2355469f9b7950a5daff7d080161bbed0cb89c4b5e5c4a075ab2eba3cbd234c5cb3f9eac023100bedb237808bf827f4143ade24d8dc0060b4c199fb0d264f1f268f1dee58dd31e3a882adc65c444cdaaf5d4f28171737c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e45087d1882944d95032d94a8f9287119169f99359823945a2e9891fb24edad2363ae5c5d465370444ab765a7813e368023100ad2d3b9e39c10b8e1040bc75695a61d42c77cc335f2e524a89d340a1b6ac721364fb08904fe2369a57f8b5f7cd4ad3df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302680b1e6d1cf2d448eaa49895e5d7360b8b4f7bc4757f131eaed57d6aff442995bbc2e66ca8a92bdf60d5b3eda55dc94023062e3e446d9173d9e666e05ff8873c1c06435b4ea44d6c09bf31126f97c506035abe594c85da7c9c544b8b49f047af63e0302047c435bb5006730650230308aa0f1d3dc6825e19d429d97fa2dc371c32a3aa9b848882c8c7b0162467084551f2d7859969ea2ff275e4b352e07a3023100c5242f77aae837ba19942ff52c4b35c45f69fcc96666d4561b807f9872d516e0bc040b746e4f8d26bc68e8c4fdbcc29a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c48f2f7838383347e2e16f3c4e140aafb91c6000192c4172753281a745d86271f562d5431684812933dd26f335344260023100a15cf23e1f4600e1ab7d30a6b180d15a05b126ababbe070eb82e0d8dbf5d975d5b0810af76a72fa167c470d4b3a9b2000302047c435bb500673065023100ab95f640a146f83621b9818a83afb7ba21ff4723756aee950eac42f02f70c42707ba2d77ae27ba8c39f8903fd815c5a9023067ebae8eee7c8d4d61c2553b6d145cf53f4053f1b3152af4d149aa08bcece2a0545c2541250a61a2388a6f97e281eaf80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060f4bdecab90c1600db2a9642cc49c67f1e312063aee30802925a7dac9691dfba596899f1112b5d0bdec20ec9353d458023100f0dd8eb4abf92762b9670dcbd611d39b9ef029a91b01e7bc30b2f1379f0d5d5296b49248ae93cf879f63ec2f79dbf5e10302047c435bb500683066023100f6486c0518687f5a5162cb425007c0dc10cc697274e08d40604b67545fcd436570468fc4730b783be3bfbccbc4e14fbf0231009105d51b39c475dd39a99fe977f0f52105d90a61aed32f7db76c08072713f60be2e9d96e896343f25870aed4972d01730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307380f316a06d553043eaf59123e98a63e7312e718e02ace348a8d7297c93fd01d2910c5556382458d03bf17742bc627c023100b2566e1a0e39b09d763e289aab8aaa29a0476ff33b010e82ffe0c0f1d6cb2ff888f9192371dd6daa9527df4e373c19900302047c435bb5006630640230021f03b308ee6225824919ae123870dba2b36cfffc57f84e1b3b8503d21d387205c4de6f9aad21a73b7626dd848337220230295c45969bf6b7f926026c3a79bec957bc85a15ea49b531f6fa980eee924760952a27e05a6eb18141da8834d800d343c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100da56e855ae6d515b51063cfb9ed66ce41bd7363801bf7e8214504d2ae0b45c256cf300d6ad835115003be8d6af7fc6920230581c80f69a011b91f51aa765b1167defd5a18b75e34ecd650297ebc96d2395d7239c348b81a45ee9468e1839801f96b40302047c435bb500683066023100ca3332638d29ea5765f319e5baf17a2291adadc7712ab9c2ae47a8cc8ee45a5b98aa57350d7ca0c72348ae86552444600231009cb2de6becf83e25e0b5d3be95bd2e699e2a156e8d3ba4ab57555de52419539517e8eb65ae67899de03d0a42832b10170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023002baec09858ea85e00218f0b5e955436fe4e79591a184c23a29c914fc32f5b26fa7a8c079090284daa620dc0f6e7534302303cfa7cda8187f6744e4579e8837fbf467e2411fdb5c459fdae3e38527ff74b43051d5e84512b359a59b58263380fc26f0302047c435bb500683066023100cb452105652e588d0838dae4340ae75c850ae34b5276b47d4eedede7a974369db7dde155e5f0c691dafa3fcfebe7172c0231009ad2577328225246a9c8250594e74b748d0ea7f326da5f3233c6522cc1bf53def3fd1e601b1a449ea6c6ac61ac99eda30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dd221b05b2f0ddd66e6b6f3c86d25b1514b28e63970eb5417db55c5d141562f3b32c1a54c026603130644c04a6b2c4c5023100c15627fc1b26fcc12aebece99eb9116ff684bb168ad2103e658bf736a07f843db8746bdc5e3ef957d650fa2a482b532d0302047c435bb500673065023014f38e3748148a0b3cb437061e9bd1270775a6f92db719dd752635e1cfaa00d6fa1e1ca69b154bb6b6fe1ae0e590ec3b0231009de1a87dba0443f1af0fae4cd7f8cf8388166ab20ef27f3fa19eb1e578250201aa143259cdb8264b5f814d10bfe57a620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f03ad456a7ba49516b6a581ef4e5d3ffbce04f6d0313ca1e29232bc4ad7dc10edeb9e348139dd8f29c4aecd591b8b924023100fdba26cba6b2cd0299b3fba61b5dc7dcfca71491f8753bd8feeab988b1039a5fdbd599eaf5122b09234d8a715caf6f010302047c435bb500683066023100ceebc5a45dff20f34f3763c23130304f62dea337ef90352999243e8263b71ac8d3ad5ab26016269accf9644706922cb1023100fa31e01e84adc90b3f1b048a48e0a20feb4cfa7f40dac3355ff6e960b057c41ae41346b0ad1a3a4a13453c95398f9f600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230674e537265c94af51cc80f3dcffae378295566f3b2a7fd1166b06449981df3a4b84622a16197d9b22a021640b600a94a0231009110336707846d7282e36324ed86e264f205c1de586617541e00fcb7b19f47f7f3e514bde214bfce29ac19e8936c46ce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023028f0faecfc527d8580e10ba2e6438769ae802b1b5df36464400cc196c408b42e01680763908ed11ec3d1fd635a00137b023100d76c533258ec89e4d77c68b30be19692719f470971b021017f04fbcfaea402e7354a40e859f2c153841968ea14d2907c0302047c435bb500673065023100c732894e0380fee9e7c26bdb8a89abc4cead40c32e562664efc345e2215ef12e34da359bb99c3d2318a7fd857a98e4410230338bd839663a3b317b27865d8bc09e652e5924a464d777add2bf14c445afecb8d9f534f057786eb39cb3450f4ba046340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b00e0c9421f32214098855a6d007ebbc1ea010fe4028c5078ba91e5dc3cd4e9fe22ac1f6c92298165f9e7233058d4031023044d7283d27e404724a441af92aacd228d5a1e2e0d484224fa48c1e631a5bb64a1e355f6aeb701f44bbd950f685599e7d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023031cee019b58748572dfe169c36c7d553fd7e05abf1a4f19a2765d84b70b9e4ace93bd71baeeafabdd111471e4675258c02300e3a21c8b4aee2297e2d2d91b2c4a64fb5bb4153a7439767da880554aa8e33e8ebac9dcec571edf4583d19561d73165e0302047c435bb500663064023060ab9f341bccc3e2383f8c525d4a758c22d84ed904c6c01cef77871bc1d47ac78d2f7d319f462e3c6d2fa11b4020c6ce023026f115005fe99840785da61d234ed3fffc0c3eaddc9986663353e231faf02fdfa8fcb1129c4ccccbd3d824e5e5532d030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023002e84d9ac61b9f8054ad22fb3c79a6e5a550d561db286773747f58c9704456271706a4d574e4c04ce8bf7f96b823bf1302303229a9a34ba5a26a23841478951948d43b770e1d8047630469fade6549154098f81204ad4f5ba91afdd799c30db4544e0302047c435bb500673065023100f7e6220665e681d08f51e688d355f841edefa90cba5f4ba7edc9874ab1cf90913735abb0ab4a470097aae0a1063b7d1a0230704f3912a8ca2fae8b5eb92e231c8513c098ce6be3c5f38dad773fbca21fcdf73d930a44c4364f981d179a7e4e2f0a250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303000e852cf513f22f2f2197cd1ab4605f4ba0ecf397c37be8f46dd15bde1226e0ed9b467cbd9bf06d14a836fda0ec6aa0230351edb7292ab939273fb1a8c0e6509d75b81ed1fc6076c9d1b8938911beac5cec790b939609b632f64ed48079b1dff8c0302047c435bb50066306402307d81be010deb29d588d995adb009c7502c02148a0272a3f260366e3af6a6371dd98c49e665bd2bdf67e010d4a9cbee7002307be812d0ec286de0f2bb0e0ad52113e62fccc1cf53b75d8ece9c69e2c9dced7022093f636dcbd2fce4886cf5dd8272d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230381fe18baa58e14f87ceac1dec462d7dc062dcd31f7444ad6745d27b4b60c3769c2c8530ffe16d0c525fbfe8f71c6a91023100ced9adcfd1d03b6f316e2e47fda2d220b4bae05a1733b1ec4f6d26ce2a38ccd4e74af5c54779e30754b3a63016e68b6f0302047c435bb5006730650230284ca57fd7cc9fb35e462c76433a85b1430d32263d9e253dacec0df8e3372adcd06d71cb5fd474f7abe43f57780ad0fd023100ea98888c5f9a54ad2619d227de980fb49c4a3f46c63423d26d5d4607ec4c3faf5a13151cab6aa66979ea1f13ed1bbc090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023067bfc7882660b32de61c12b923efcbd64f4fab41802ad28600a2106584384669ac0d6d5b66d6c91f2f48ff9e3f862cda0230310ea4fcc5c36ee07df5337778e3303ce5ea5fb67740627298cc934bf134be0174bf76ac51fd1b4b9dd146f671ea62660302047c435bb50067306502305855b6ab3cdd5e23a3f8d9034d1cee7e5bf9f7cd815fc036b051f7a27ba19c13cb3b67391297f3d79faf43dd00de9f2702310093928f9e99235936cb1f2d5368bd6d408bb4b8b7665cd250ba40b3925fe06c42311f2076291ca7de44eab52dbb2fe06f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230027bb0da156e40c50c286569a5a2320d64fc8cccb01df6bb3cb7db18ea0125792298ff91aa931da12c292a2d3ab9ca93023019790d188690708694276869aa330b89da6e68e920b248720ac065df21d38823a8145b9e1d6b0feda2eec1f30dc4805e0302047c435bb500673065023100e86d24e087257bfe76d6e809c8ad690fc32606bf05b979b84a27d62e0623951bd5baae5c1bf20771a01efda66aea10ef02307c96ae0ceae3f887268303660ea91cbe94536de251c3dfe0687c0b32dff3e41de7a5f1e0002b696b5c18d1db02a974ac0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cd68792212389ffce876bbf6d889aa0994ab719950e7c724cf18e6f43c499412bb1aeb31bcc018f7ae88c8ec014d8303023100c03e5c63cd1006a30d013e39a9582060cce34b9de262732227569139b2751c4730731bb6123d429805e82028b4a40e9a0302047c435bb50066306402304c99dce531e7338508a14005f309a1a7dd0bcc369518ec7a48a00165f57a4a1c84eeb89d8a303dcb6c51be1f30ef666c02302f39119edcccfa1a291fa077c4577535cc3754bb12edc377232103332ce1d4e34ef3fbc61a5bc09f3678cb815d1eb6900302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a18336db42f14d83379b04f9184ca04e3c054d7a67a9d0f30110cd8982a5427bd956052a86f7350701156ff17e229163023072b435cb7cdb9288bda40a867a0cf488640c86cea4c283af706351b6e7f3b50e86a86dcaa333fc0a8c9942d49eca52a70302047c435bb5006730650230189ec7dc3be14a61807a47f767fe0ed45e48795d62d38c19cb87f5d639246e0ea5fa0d26feea34c4633c213137fbeb76023100c92cccc31b1694ad4235ebd32142fbd23f38d88aa356001e9937d172eb299cdaa575f0c45a39e46b6fa006fcb78f79b10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008264854a573ec43439976de39e89215fc118bc87c61d22fdf54b7781ea6131f5be6a9c6609f8e4344c3cba104caec5f3023100ae6a6a4083f179cbd0960d7d31e1fa0accbe449819881a52e1dad715beda7482b1fffe9c68db967b2f43d42f45aa31ef0302047c435bb500663064023021beb60042dd86d830be8686b7fcbdaa7cdec11caa20a77c1c297ce93d9e2a212f953d1a3be066102de3f5d8e94290d602304908b2ae6c1b6ffa0f7638127b5c4d3788f436ed2e2b6f9fa30b6bbc125ba40174bb8c59a04d7c2656bc11f05d92fb8a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310089c2adb64d82271ac420422af6f20e9ab8730d1694b495c35549ef2861cc8b4b413ddd829a98cf46fe931f0347589cd202300a555aeb56e30629ea9f2e98178b52b425884755e1c32813b0817434fa2c09b22d8c18d2da12b4c9436daef1fd04389c0302047c435bb500683066023100b2df86786634e45b915777ed51abab6f95043095954fb0aa79e369d51bd42a49d329d9b3fe4d0eb92d4245645040ce40023100a794b366d89c1d6b6d40f26e2538032dbfe04d73d3807d96ba93029253ae122694d22e5989700dd4ee32c7fcf0f53dfe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a7978a01d6becbf226bad10e742aedb0e72230a86fc3ce3ebc8dccd6a56619a2923cfdea8574aa145c751f792accf641023100c39c57ac0a7d76de190dced91258e3b7e914ec1b836ed8ad0495bc81a93d18da68580e8158c6c3c19f34c34363480d1e0302047c435bb500663064023044eb3b7e0c1ede19b6973fbc2bdb20862120c54f4dc48225c2523d74b08f7ccd6e7dbe8d6045cf8cac49eb3d9866ebcc02302e1f0b7efb9ae99c9b2a17f6e8bc23d8b63216cb4e6f23ec3ea6a31fbad789deba52af12d3f65e686ef5e7fb7a3feebf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307abde645bf6b34e84e6c740842867edccd91a6865dd4bb3cc3cb859d13306f15c5b807493973a7349333542bb5f80752023100f1e8241fb95fa18d206897e440f3c5521c15ae88c77570c8a5eb982f9f1ce545db6471f5464421c37f5faa74258ad90d0302047c435bb500673065023072a190f945b900959a25d8783b8308b49b9f5223b5bb0ca93c38a604c286f7ec33f0d8209a2d9b3116e2ed0c118359d30231008a89e6ed7ba8174fd3dee82dded492dd1456b3f0bfc7eea6e31bdb4dcf0940818af20562119a44ea9d3f9f123fde542f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008ebf43ded2e98d425b2c08a070bfbfdb6ae67b9eb4ad28a2567d55dc4dffb04c9c1aad57710ec5c1b5e06bb12c1bae8c023100f70946a0b1798922e8f9103fddfb6b85e971706fd15a261d74bfb0050da3746777fb5ccd388f32bf6109ef15fff655900302047c435bb500673065023035569ec2c896f5ca53bc319e33972579b0d8e26654ce79a03923c91c74495312d49637e72662b3570ee02ece93933c45023100c22bb7ac908ee59c056efbc4c7ab273e0895ed706638ff60b3a4b5883b2951244ae6960eb86ee447a8e3f0466d3e0f4e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023009ba9d2fb9adc08fddb9eeb99f2fb1ca75b1f88b9f5558abe8da151de19f48471f9d136b1d9d0cfa54be152d1867ccf70230098d8dfa14f71408dcd089200a71af181bc08e07144bc7f8196852b643b1cd7968e1d96a23761bdd61e41b11ab93f1970302047c435bb50066306402302b414ebc9d188183856183c51008463afeec8995eb48d7188f8aff7f586820d86acc601cae746a817639286fb73645f30230332c904a900ae8723c4ccd4bed880d97aaaabb8ef7940dea5dfc3b9b65325d3838964a5fce0b90b13911c25318dffe9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a9d325057af5582785d7e0d645060f6af6289b30a738591b1f0b919262cf1a4d631834b51b0ddc2930563e2894291a290231008a1a37c69596aa18a3fdf8423e04c8fb9b37c9cdd9b044d1cd8c12574ef20120842ad063019a8e99132dc62d3f418fe40302047c435bb500673065023100891aa1f44ed6cbaddc238d578b96ec90d593c014fef88201abba2639611cabd37ec79d2be4dc9a42e705f68b2d60a78202307f25bbf8dc68db5e8c9534e8f4b18974f1c2302801754f3c63111f7941dbd00ae6195789f47772bdb4521fdb814488250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023026a6db7200c5498e2a5b408584505c3af16e7d574be3de835cb4e4aed77f4985bed89ef782ad3dbef6c75c42198f217702300692c3ead5cd521f9c85c0b5b6537ccef518bbb6454cdb957c4871676245711030241b3b8ec9ee1f89b23a358dc7d61b0302047c435bb50066306402306bd8d224d983400ff141718e87dd37627a3e7d51f4cf9d49ee2d93eaf5177dc0bf22e98e4dd5a57fc7b574c8a2ee3996023031fbb0a7328d4eaa71ac0341cbc7582a7123ad65eef70a9728f6a15642adc48926d49a7834775a13281d55395b3bc6bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023057c5334e97e1fda05396d98dbc402f1d48c8f6a09ff92d6e8e3a33fd1d6bf984d3af4763acac9388f6a9fd49170f2f00023045457569146522a9402db0a1d234ddbe052207af4ff25e4cc6ac25323631910efb725dc734edd285898f62ba8e6374150302047c435bb500673065023100d8c5306fefb548639947a4963ec115da39905e7ad9966e57ace524f9716d0f5716c94f6e59bf34ce501614a43c16da01023075b9f6354209aa05c5149001bf12406081b241166c74068ad69abe91a1a3e87ef0c9c59c94078cf61c77e7f3901a3e000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301523fe80e23544a896db8deb580da029ab7916bf7c793a4d635c8a68009320ff54ad62b435a54f2a6dfd5a9cafb22366023050b0cf640749e8d4a2033034b03035bdc5dcfc5b0f9f6a6747efee80c898635ab03965df88fafa1d6bb93469424e95910302047c435bb500683066023100e4ca9f3ad3525e6237268bc96319ce5b56cdf6ada209159eb6983050acb0aaa6104864e1ac88eae7ef958bb2698192080231009740d20645a64c51d448ee73ab3c749e0a70af7aa56faa79005cdbc81b450a6a60714eaa889b95de52f56a625b719a280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d41c154b0f9339975a378be7336552dd83fc0b78f696618a8bd0fecffd748f1ebdbaf9b91c2385c9f0d74c036bdbf3f2023065229a1166ef96c3029deff6e057d69d4a21d31180bffcd2b40c84d5e63ce04941c253ac469e451852d0faf56aa2caf80302047c435bb5006630640230357b1ca9a2d57785987109f005345b27594444cedd77dace66222355db5fe43f200627fdb8999908cc307734de1d91f40230474ccdd737a410c9206952b5485a3f4717b243effb1569e0956732a3d4ca94700946aaef3f40fb53fff314c1ef2f1bfe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008e61e4b9b19fa2e4e2d181f9601b049d50f9b401d2025d9d29d41848d864a56a52a4d44f311233b3a714b830c72facf3023100b3c0c8cf830321938b807bcd56947646b0322ad1ea4f8e49db9c91aed2ec57a6c1db1659c4bb27265d8b1754580696470302047c435bb5006630640230505a3df8257cb5235ee377567b4f7c7af0ee3d0c8a64becc519f246332cd6d0809bd0f1194bdb8b79131ad72f9cd065c02300d8d3f56c6e9bc4681c31565bd949a3c7582915ba415e62362a55bfba52159ce90153f29c224aec82a10b8b7a0110fcc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb2cb8821e4179250eea72abaea6b6ab7c562a8d3fb97501229afae330879982b9f4af81ea392e10fff60e7481c8f75b0230080e42264fed265847534cbad1d87384315704417daf873bccf3560020d2d19141e4f990eef42f85917493de2b314c070302047c435bb50067306502300d54c66289a6c6d3d5387d74a718f4d79c78e270a1c71444dbd090c53d8e606dc6aa5e41440fa7e4d673a930aa15f939023100c67a70c7eaaa0073470b7282a7e9efe30949044dc3404a2b0b523396e820a71724592c554ea5e187f2b50cf5614d2fca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f801e4bf8048a63ec42afeb630ad980083c96eaf1fa325613da2f43310c1500e96040e5cf350c18ee2700c28fa769ecd02310094074b5aae9185be15645653259d377b9bda1431a2cb8b00890a12d5712f5a5b5337e9462caaf677ef90f1f016a62cb50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fa844c52cc88b7b5468c6291c0c5b108743ceb1ede8481e8c2632f6daac09f6a348292924069c056b78300da92659550023100da2210535eafef825568e812129a7233b9e72fe61cefd0f424d9008f048b4ea57e0d4c86ac4856d51018afff975effa60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091c29ff840151743b5b473c347864bbb3cc66783adb64870929e96585a821c64795a26f5f8246a6c7a0221cefe51b7c1023100d5cff4b35f59a100dadd42b57bd289233afd29a98cfcf6c7ed8238cb1f995a9aa3748340379e92b833f54625dd11c9b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023074cd2cc44af77c5e4cb739d18806f42cc1c18b027b4527fb5e565187ad2e7843a28e1e2c58ca6ec12e3dc6003b5b24d5023100a9fb99a2f6027e3128d5b5fbfc7ac88a00721d20a11e5414dd9c202b1d249a6096af8ab04312bd3b908664e100a65bea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f0e1560a3d3c68fff2807905b2cd96cd239586f8fac31f72c1474d0dfb3a659667d11b0365e6c7c052e57a1b7da12fa30230682582db2fdcab940674bcf88fc402a14f95db5c488b3e8a07da0277b4a8ce52131f99f6a1d56c171e828941ebec87380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302720d94e0532c1e00affc96507ee71b21fa362e72775e81c318aa8993ec5fdd0e3310ae85c8715e21cec4959f7027ecc023100a7f7e7b8417eb4f92d76935588cb6ad0706d8d61ca8ad516fcf5eebddc00f6acff6fd8a5cc16e1d36bc9afdfd4b6bad30302047c435bb500673065023100bb094f178e6d5ea0977dea63beb40e4e6e06dd8891e0e9dedf9b2976f18dde63ba8196707e6e94b3deda537dc009dc8502300358f3546bd9f4c5feaf1b48857a006b4d34ce2d96b938c5478fbf79f94d3703cae6889bf9c9740d6c10b98ac6a88a970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310087346bd4af13ac164b5e8863e2d070c079a6c4e80668c65080753e5a05398587f182c3120e17a524ca5223d9b505e84502310086278ca2f2aaa3eb3c7d9ec257921b63db181aa521439cf3a501de8ef3cbeacec1cca3a8d6f4d5ac1650446795a6624b0302047c435bb500683066023100c566eec068bd1443853a19bd1bdd98d5ac3920199d925868836120f8a38526c8337cc5384f4146be09fb879b99107001023100aaa2fd25adae6ced12bce1d7e15e8745e1df99d7480436f7c77c6ab99f05f6e10fca22bf77df2ff5ee257ad5f41ff2990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e2090f11e5463f29b16a0ef178b796f0b4422a2de716cb87129e4ae62dddf9c4a6f57e6bc56ae5f5f3fc8c9e4a222238023100c732c1f1674db0b5ae4955312dc9d16ea69a8fba6163128718a62d89942fc4785c501ff05706c5caabe4c0f30cfe83120302047c435bb500673065023056c1e8b7d6eb989487650503827c9a68d0bbafc79775df7a83e98077a100a71f298cf852120c64c5620da262f0f43ce6023100f003fc377887e7c3ee20e5bfed5a8e3fbb16af831dec9640ed23655813c069f501690c351ca1e2745b88495d24c41e720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230288a66ad14f046699d6665853fe0826e5602002ddb608d863b664301913256021fdbfb62461d0332a6fffe4259595b55023100eea7c36c7f4e4114ddfcee9d6d067781a7af186cd5082d8d2330849508d19d7027ffe03eef54d265142da55a04d1e54b0302047c435bb500673065023100fb3bf006b33eb8911709b23034cb0df2b419450c60f1758425f69e598e9876b8689cfc08136e1e041c350973979429570230312b8c21ebc2abf50a7dbc40707ab1ff78678b0e42f921f00001369326a7f49e4520a99ff53365297807813f1867e3ee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f6e6e5b237932a422c3622eab39e8d721655af8966a93f50fd581053557191f921d6630f170c8b64713703f26fcfc0a6023100d46f79f5598bb60134f536afe897c11b523c3ac1d04c2437ff1d9c5e4bd034f531df666a664d769235b88d2d6f3153670302047c435bb50067306502305a1a2f168c617de2a685337a79b59ee4bac4050e17eef53e2def02d665c9caca7b8607275ea52a6ec0aef8c1503d4650023100c7dde756ae03e4a3acdd0612cbb499d041747d8c5995de3e645f1b63ab570825b787a5a25f9f035e8d2150ffda7f2fb60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008e058aded1c2d3cc29404a9444ac53970e561f009ad24e59f999dd178d68e78bc0eef0070000e2852cd199123f5d970102301ae463f6c639aeb4fce9184b90c0c21f1f65890fdf49d072f46ad327644943618f06a3918a2fda88fd387a3529cd286c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f8a60b9e489937a9453795e1aeeb47ed02d52f9477f3265d7c15dd6c485c4e8ffaa557010484baa96058f4e98e3175e002305721614c95f21dc0a8c6a5229430bf9d3cc1a454afedbb69c9f137a020b44073364bb0be7926103f39d0d68d4dedc6f70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023040b7b6beb545f900d58503f4038bafccf3a16927d73972e872b7fc37bbe671d294e33c9872ad012e4bdb5e504920e5e80230618efdf0e6fd45b09d7b53ff3f28bda1cab40067dfb37c668a31a38f048449f8a217c8882884a9013f41927410e1d0a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a861f8b795f95d7aa101088eb103b158b4747519d8c241744ac1b1100c0fd87a128e94312cbf4acf933b536dfccef4b4023100be664bae808f710feec31b5f1f5d85b1631d38b74bc95cf73869fdf93e071cb0f2074546c52842d324d55e2f76824c9a0302047c435bb500673065023042f3774daae87034b2d54c119b9a3d794d2878e1f5a799866e274f122faaee75fcd0183bbcbbb6c6f168d5252419d830023100b4ace01db840fef4f6910980ba4b1ee92f25cbf5b786eac114fdb3b7fe5143786f96bffc1118b0e9d17b49ac014cc4590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304580e93324d3da06eb84cf4a77124785587df8455ef4f95f0e198ea232114bcd1e5782adb31fc9a8c21298e97c22c8910231008cc31b083d97b872e30f34639b8502595d4384a366ae9a868a4e62eb793d422b898abfbbd229cfafa9f1d6f09fcb59cf0302047c435bb500663064023073c1b7c53dea93aec440ececd15d3ee2747a0e1779042f77d3ecb2a4d8cac03140b15d2233aa2b398332eded147e458b02301913012fe2469a22a9ba447003c7bf2da2eb0d3fb85f49d4bc2e36a675a4fc08a6e052a4edb57e30b6cb7863a2e197b70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dd8798722b162762c1a125a9ffbde8e4f8ff8a1a826a3a846a2498b9ea18ccb8b6d631c9bacffd23298e720cb49dc70f0230776cffc639c6c5c8abb3634e5f98c187f3f2dca7db59d19649b14fc0f6385e2e3c896000a95d22f871d4ebf39ff286a80302047c435bb5006730650230557a74e6ccba32fbdc73c44edc760cce6caeecc0d53e1a26bc577ec63db4b1c48dcb18e173a6fe76c42e0cc361329370023100ab9b15168df1281bc46aefe3a4eabf196f034570c4cded9a4c5d3d0fe2047c656aee826f9ff34aca34432d9c944270140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023048196f7387d659f059507063ad50641a1c3b666bb9297ed77cbc41bb1e667400f2a8541c388cbe46bcc1ddb2790da086023065fd2ed75f1689ef4c6dd3de595a3c131f76014e597e7b3c6178e9dbcf511560e9a48aab9e8ed09fc5be052ad3d6a13b0302047c435bb500683066023100da92ff99b3aaf3a5953ef510db686794f8902994628689009c83578d0e92023723e0e75a55e9a98ceb43a8e48910e50c023100fead4a04d73a14cce390116f0e21e041a00106f1f4d3c319000eb8714544763195513da55faef5e7c2db80e65262c55c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f9be77e7ec978dfc1116b361b2598a83baa58c85db518422ff368a52913e11f9e9d53ff2a7b285e7b175cbd01415f39e023100e0895b145c72ace2150e10c954760b0be09048b5a4d4734b6016cafb90f268fa1f842d5b17f3a10b83c65686f0baed9e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023079fd1d895b2577f4bc0762a4e9ba84e0ab1bc5ce6b212465412e42f5963edd593acb43c73e5211b300f18aa63adef4f602301a28fa7f67cd3466440cb1696fdce3326f8a40095abf8b305ca1da33d2978e26fd067a3b061043efb3440a82b75abecc0302047c435bb50066306402305f516ee10ba4d32ea4de28cfee715f9c0aed5cc21c9f1bea6de6359a32b5acd1b586511e6f270d0afd08d6a85b4a2112023043fcd4a58a0ebbf3723af6a30f855c39fe4a3a856787267078b4e77936052b248188d78829430c30e39d02e75987932c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ca69ae2893c1bf3d5a8f048dfaa947d0f7bc0117e622e3c9d6a00a787d4be73493311e4e8913fca52d68fea307ce720402310096d39339765ec6f8c933846e88630558b754e491f54f6db30ba1f631ffe5d6dc5d987d3b5742d61e298004e504c1b46d0302047c435bb500673065023100fe7a84a35bcf6ad48c6ad205afbe4bcfa78eb93ea8a43d1488da7edd8a871bff4789e3c2e12551b003593f7c15facd02023033100a951bcd679424f13da03e6eaf8af1e94b100624ade1e9631e975864901d4f68a4b584b33f9e8945d7dd0a6ca43c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100908e7ebcef70a7702b99281ea59a32ea7b15db27c08c78ec1d5761468c5eac2d00b8b544f6ca08053133d2d05dfacef1023076274b92c2ed3fe0b1e3858847d10347549d990e37c1bbefa2b271076869127baa0e565cef9f004eaee72012b2c2ce6b0302047c435bb50067306502305d7e960e3211a53d61893e743f062f91015985f6593ae52a3e5fb04ed709bacd0b067bf8aa02205d38e147511f27338a023100efc7c1ad49172ea1d130e9b50abaeb8a1df692eb8c2ce64d953814762884b0559c0970c08e95e34a51184d7fcd930fb10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009d7fff9673dcdc94acc14f3caba7cf990fbee4432b418c56f81d9c2b5ea9470164030fc344c276f8612d875ca40806d30230087a537a3a7a0b6128763b24b1182431d1437794fd2ce260e6dd5e177d9765aff92e29dc4c408003cdb0f98195804d1e0302047c435bb500673065023100b7599de6ea61f8d29e171837b4bac5fd4d6e5afe1ed0039cab197a3bb723ab6df3c4048c90726aaa2045a197704e8bf702307541d0daa808aed9066480be381f7840f7d1fef1ff2256a48d51d81989dc9e0af464ec1cea6b8e56175990977c2bbf940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230377a3e96fe090821dd27085148a18ff6d7cb2727ce4ff844453880d8d996e7d601c22426ebd044836c068cd4698e92b102304e28e4075f74cce6725fed8ccf1154b2c0de12a0bc0dc766cc756f6f99d7a3e11b9dd35cdd3a3255150f7759c54571bd0302047c435bb50067306502305a8bf7255f53ec1c75c870e3d38017d00ea05ff218a11422d3143218d403f7c93894b5de19df0d8d6d1e998782ba2a9c023100cdddfceb779261a2da138cb02db74fa090ce1541048415eeab61760a708873e2cc8bf5dfb3bb14142effa1c3de5248150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310094ef117030055a94537d036c2174894526db797805a4de01e80f93e0ad6678d5d709bd6b250232d9967a87bce8445122023100b7467229bd9236952edf720fa00d5af989e6d0557dc83ed46995c53c06543586212dcb5964489de6962d7c3941a34e830302047c435bb500663064023010ddda45c3e7df38014857861dd2824dc36ccab687cd480e679ad7719a505db4ffff90c63f768d8e48511d62dea95c800230209ad65da84e71a265ccf4386a0d111b7214985e941c45adbbc22d11653aa1f6824313883bf5b61a52f0679480210a7a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307690ea168e8515ced0fbb7e348187f26c78dcf2b07055db804bf68dc67776f8aa0d81fd8f16d3b1948bf205a2e77c2e1023100cebe90bb276fe7b5af70cffc3ac1aa25c3128d4aebe7782e7c3479e9db4a0ae48f4ab19bc235ee6b61773a3a4b4479d50302047c435bb50067306502306a43b6a736c1f753fc8267f566b84e1a3895ce53d33ee41c8624a26ccc9b6ce309114bc1a3aa64145aaf594c80e6810b023100f1a5c555bf8ecb599a0c899828747e4fbc24eaefc9aabec817c26ff21a65aab76c7aa7cef36343f9c0ca7f7eb6e51afb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c4145f406f310c951bddf7d5067fa017f0e6ca3cbcb2b87413da39b3819fb56cd752e5134251d8df46db91519c41fa1202307f3477fc5738c100968029720c7e39e4ead3c460970cad100389606b424789e23a958f2c766b771c2d82a4951e6146970302047c435bb500673065023050b7c643b58036f2fedbf6cb4a4b4180f9d7d5e0919cbdbf6eb1b44e80fefc86da8b82ac2f84b3a4e51ed57a555d2ba1023100e28571b146f7445300855070e6fc32450f88191eb90c1b0ce1da9b41ff89fc2f99d5da465c2c6b422be5ab0d50ea0bae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054a036eb678d3c0d8808906def89f9af81b397856b380b284df1787d297df1b0b5efccd4d8c4f3c1c50dd166e9b8ccee023007f1e54fda9778b833952d87fa437057cf030231318b6fc6d03a39f6a9ad8c859a073fbe3d0d635cdaa0c591774ec0ea0302047c435bb50067306502300abad29558646afea329a23edfd3081dcbb367ff386e5035dc03051ebb96c4d392afd84ca1b4c6eb4c232fce12c7a77402310090a14195801b19cdee94fb0bc36745fc9cfd0be28995a15df7552050447683f7c525e8defe0d459f67b98d7139c2227e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009a9e670172f5909f6059f0c660a64c78f6753e60db38de8081fe6619b46c8b156fcc38ed0c54f913e9e003ede84f4d2c02306fc109c66d0d9d1db5c3197dd6648ee07ce4ed4547e0415296dc7da8bfe98bbf3fcce094231fcf432c4de23e29a702e60302047c435bb500663064023076e7c5cce42f38746be72b57b5cb9382fbb2ed398399025c51308f505166047d57b541b756bbe2e7cf3418379d2285dd02300122530697f210dac4253c279f16c76b63c6fa21819237c4477395e8c559b795af27e81b983b7585df00c70aa66da1480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008b809cdb4ae1cec8afe7fef0b8eaa2476b1542c2785c34d7a9a386c8e8ddd466b0bbc1d8d0aab98f3763c7dd835b30c50230362cb02be2a13eeffc88e394192d1a08ab335fb6fef40ab4165e25aa04c5f39a517bb4e61b3fc23f563648b8673b25110302047c435bb500673065023100a7d103d34d802ea818d50dc9d36b814a387de69575d36cb199340891634cbb18c01fc9d203e5fd970614013c23e2c340023078136a64aac12c67f2a81a942dcec94214f5b9cee18750b8f42833a1343a1b451b102a45feba20c5297da97342f285230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307216983a733ef52a117d31d1752812958726e83021a27c08c846b6c66ea796d8ef9edcd0fe4449c8f30e030a800a77e9023100cbf4f25e38595d5f300a2e85b598e57192410ed21b4fa848c03a6d4ec2075ea7dda3bd140dca971df51676979b5939610302047c435bb500673065023100f08b23472c35ef80fbf8981de9f04268891769a3144f1f8e788a4453c6ff528e9bcf9132d5e233a03a90dc87ebd82e84023004cca328aa5fcea34c17815ae85b65d99cbfdb0126cf3df6766728a1b6b7ca532b85daf80a6a808182a844a8c09ae3ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100df014377cf5536b41c77b9e6b9e0690a12a11a01b16b63850bc677edfa38b4cf680fd4d61c14c6b72c54f7191d1f3791023044ca294a7efb31b52dcd68ccd61afb377cf92250a09b2df39b97f4182b613e7e1d03b894a6e5b6fbcacc8a0de3a5096f0302047c435bb500663064023045cc2b592822f0d6ea8244d5b48522276111574f2695388e148ba56aad61e2ce9103e174595b0faeb431e5908ca09bb40230503f6b846ea5a93426d04ca033c4b36792274740ab25bf53242c2b814acbc4ed0e47640190d0e2571a795125045f11e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230407e8a55a1faf6b8298da30a23438f9cf55861d92e17be379a5fb51f8426645104dc4d10e17bff82a5d39895fa6d62ac0231008fc2b89131a7a92845c5af05cde07abfa0f22c558b294f9a06b3c57b87ea4508dd49b5a0f4d4df76435df8d475c55a5d0302047c435bb500663064023034eab166a4cc84f5b80bd4cb4aa0f2a00260bde560f734fea14d6e4ec37a0e8fa01a2223a1a245383c6b709e7b225ab10230576701e12944535fc098443614f62ab9124f1aa8960d8b9fb58a3a16eb9c1a0c1288868378901e104a1a5802eaf2e8480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230527d25e5dfb50f1790d30b4881d776ca7f59be9a6528e1f7d94d10c770532cd387b6463008ab66dfb3d223062e29776d023100e87aeb90a26e9e1ab04247dd52caeb4d9dc3be335d7561442697091385f4a697d41d11aad12641b7c54d3c304068161e0302047c435bb500663064023062a2b5040b52a306a4e1de21198303f767b8c005e88a4715f8c84a728cecae5b9f9fd517b807d21f0702cb201961cef802307265acb1d16b19dd4d519b0918efcb60c4356031471a59568c16aed86dc3b6bf22567d92e3939489930e8d0031b1eece0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e2ca29f8dca289dd002d8d8dd7bbd98929b496a188fb2abe22b3099a538bff1dc415a0eb249f0b347ca02565c61bd3370231009ccd85f1a5727217993ad06622befe7d8da8cbfdc85f14b413903cc44662121960118ad1e973e6880c5bcf606c1d3c7f0302047c435bb500683066023100ffbb494ecc65efddd30d38f4158eb2d8f77d7bb4bcd2d0c19fd706839d6fbad279f527d3920ca9cda8134138e45cf461023100d3b6ebcf97f5e3dc00aa336c7465f57a26750403837badc29eb8d2c5740bc8a3ecac4ce90083beb2294dbca953c4841b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0c2fad96010e15e587df9ac50bc8f18cd2a4500530b3cdc538ffa5f49d35348ba376825087c973dca35dd2d3f22ea010231009ef5eae90b85b59251709773af3aecc156a267c8c53df167fbcbad346c2a4d25de480d36a4b2ddc122d7dfb190628fbc0302047c435bb500683066023100f01023bfee0055e5cfc66d98a9badc45936f1ce77a3aea70f12518b8e280c0dfc0161964e7143a22736c28fa63e2be5c023100bcba12a10c1cec1880e90ffa6f0a33722360b13312ccef6f90e867ac553484ef615db9770ed8d4fc7e211cebd813c75c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023019f9222ae304092530ce1f5b496ed6b1312932aa81ed79b125146b1a781fbc7a107acab7b1bafe09bcb580b48f486e21023100af2f8a0cef1d0d3515e447934a25e176650fa7c19fe7bc762fd0bc47476a28bba3c23cfaad637f3006cf36acc509b1c40302047c435bb500683066023100c4882bba6e322fd572dd0ce27ededac6449b42c32076c731e9828b509079abbef68c535e86c966f0a8c5997dcabcba80023100c50dfaa98984dafa604e071175b7b79ec4c2fd0115a9eb5224f7655f9be4be1f7d6f426600da2135dda4f1bab8ce50cd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100afd6c466a00c0f7d2db392e1d4f41403b6af875f303fe81406ef5f52668645bd447ed330eba32a8babd39379dcb02256023100d0cd21f04c94310f8bc5ad5c49660496b66aa53fb3b5d4e1a78e3fa860e930b0b5fe0a67a3a2de69acc4775cc0dcc59c0302047c435bb500673065023100eeee16b1d420c6945dfa592d604a5c35dcb3d3c7cd65c937a729d898cfe57ac51053c0e8d9a4d079ca56a23c7bf1d69c023032e0a3d30f7d39811d8d4d9bb61dc2eab077ffa3a144c3147d224f641d2dd35064452ba7dc31ed0e51d852fa80a0c8290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b65ec2c051d2b0a8498fcbd35ee68194754fa5d4c70caea50fb60479c30e93dc32b51dbad199cc1234acb8c59b154191023003cee5f8441dfb42f9f80fb2fc5f942c3a6edda02e7c9b704b829b21479cf087286e74438f682b1e1814a3ba3b54fafa0302047c435bb500673065023050ae6ae75f14b9e23dd7c387bdbbca8fd7bc2fd296e61f123e917df84f09d6ee30daf429734fed3146daad310fe0b501023100d6155fab0af0867c1b3c30fdf4efdb14af5d7998a0c29ef2bc1560f9e8e9362910fbbdb3a58f3a24d1c2f43c51177f270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301ca53cc211dd5467517b1af77bce11d3d1e3a3602af44d99085a054045ab4ea5e5d2756706d184234d97bc2efba01a760231009f33eca2f61a05bbf9ffcd0e58bde1fea3379b40f3177e8fd80b2f299a3988f616d6a3c096533fe1b1d45b799c40712a0302047c435bb500673065023064ce1609e718c2a332a6d74dba616237695fa4f998d3bd46e3660f798ddd3da3b5ec210a2eeea4873153164f1f53c92e02310088e6e6d4975566706694b35210c2c661ac5da49170935021454f9af5fd7593407bc1d726415ebbe9e71bd177f4a0e21a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d4b7d7ad6e7f4e11d5628fc74c66318c626c0398ff2efae39b07abba92e58694eafaf942000ee506ac99ace1d0846089023100f76cfce6bbbfc5e564f89f10abe4805bcb25128657a7b27cd7c84587ac27066779011280566f0b1973d12bcb6757006c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e11431973a736e02fc0ba8042a482ee53a5b9f909c81667dbb2ce76ff7a7fbe8f406ca08d094eceaf9117aaea63507630231008b544bb5c520c9b325863ed21dbcf4eedb6311776c3f58207ad55830803a6dfde618d4f3f5db03430615ead7b52d8d8b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e6e0168ea235db01a45070974df0b3a8edb83ee28214baa2acd4fa5bb82283c2b559bbf626679155c3682eabcd4f17e1023100bec7200cf6de8b4cdd384ac8c9994b744f5b3db4b0467eb83399268ec25986b089cb4a0acc1cc89f8307d39e61053b980302047c435bb500663064023021ba95397d38d40cbf2b648908f489c5cfde8d15b3b22c29c4a329a6796c8d9fffa6b081cb906758d6c5eca49dd50cbc0230286433c079a0c449a3465687058bac6ebf0514f190d28f1015a525121cdc874662ba58d14d95ca23b6f214580557f82d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ce05faa9adf795abf9f4e9cb064c602df264513261081f90345d2ee7d437b82cd9d84075648976b14b0db255fee02b3c023100ad476dad0fe21e1bef5986ff3a57dcfb9055c8f8defe846bcf9782e4639711bd13d1aa774ccd18ab4da63b8d60761e420302047c435bb500683066023100e80ad5a7ac6ecdd4ce05f3e14771bdd8cc7bc9d9fcb0ffbc8eedb0cecec69a5161aee056532032592d3b47e0c424d796023100c863bbd06372a8acdf7bcf9aaacf397f5fe18d1f6d408e0d5484c9df6d700833f4b1c0d81dfec45d1dbd509f9923c9af0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300389a6fb38e38ddc1c0778da8e1f3bf35cc43b37319508a083300bd643fe028ffc4ce80d0fea23c35e74e93a3b56d347023100b6893596f43766af3c82b4e77ef8300162d6dc4b9d942a98c781bf74df243c5462c170ee59ad944d7e1a4164e108d88e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001a596f7dc3598391deff0bcd6ebd0cf7f76db7e3f3016d103325f6f68c3cc49be4f9e751a5e88d0160540bcef3c448a02306458d818bbd077a74ed4765c69c6bbe849ec6634b8d85dadbd3867d4ccde424557fa06ab3a4342eff5f5a3466a986ca40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4fe342be6b336854fdaa877131aa6635f71233fb8cf00c37bd27f8bec5c4bbfaf5f138e530adeb8a49595fb204c104102310082cd3bcfc855836b2b36718e14e5e0cbe6003e548f8dc063b0460ea3ddf23400ecba9ddfd1bcdfe5b8f4ad744c9412ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230230b135899496fb3d1c311939cde15767f390419726f1f874eaf69eb041a21c0b6d53092d20f68bcd9807ac9f94ff32d02300acd9fa52790df1713152ca37e5f51f4a8af5ef1858f6b3c1a12d33a17303ab0b39a948858baf81daf5c6c7d85b92f000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301491271a27446f3311bef3dc2c879000bcebe4e702430458cf82ae58d933893b65c561e89cdf8ef0e8fc857459c56d9d023025f5df2f44d86e5a14e1441703dfed8b40aacecf6b3eb859310bcaa3d6259ae0b6ca6b039d087787175c7cff1fbf85df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a7249e942654ee01915192bcd08951ae8836a8ca71e9d8d3664119bb17bc2a88440794bda2f0306b18bec04752409a970230301b58e9c0f83bc10eaef7fbb5724582e1cdbcce5b00e45ff13bc080c1a244bb6910540a367674f6e178b4b0b32520390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d447d49ff077797867c75b783b65245d3830e3b4d39f3229835e265a5658ebb37c08d32fb5e7d60f3e6c26351945124b02300fc5e91b5b1778235b989d60dc80913518131fe32427332eac485b00db60623173db56e598234bba8303d797d1a754cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023031b4225fa813f3e7698afd8351eec893ca38c149095034fba2d3e220882a15ba98fb27b290aa72d1ba0d32eddd56a02f023047eb5b1e15e86c23681948c8ebecf5c257e6af7878a0045531380b38d2bea495223fbbfe7cc54fca82c8f3b235f6ed580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310095f49e0156071d11a5c1a3a5f5c92d89c65ccc49b65b2ec61cf299308edb62be10b830d6ce2be856d89e2ebd9a48215d0230220d7aeddfcc3f19847830ed6c3bcad5c0f24642120387ed80f0038dec8099d9303b981ca80608f29516bf775a7e2bac0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305b2e58f49cf67584aebf9108ff088bd683d43c17ea3bde3472f6040f512cd0d350a08894e7c5a2574cbbe12bd6cea170023100b37953c9976e107525313c112445e9a46e2cf9b22028c15714d1f987def707c22bd472394d5943357050a9cd7ae430b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a03646b8aa6dc188a2d31b2d18042e215e144614152fa8003748ab3e7df471a189aaf739c126bd92009374a622bdd6d402307fd9c4d820bf51d4232a2c77cab74f3af904e68a9b5aec0f14f17a70e36af9948015ba85c1f90e0285bd786056aef4590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023100b778a9f9d78b44dfb489bc8b6521df007149d392b449ac75f734629e97e3a5f33db930a6ffaa99f4a9b32275ea25f06d022f7204cb43f04f76f5358cedf42cbb9cd3bb293546a20d872efece9b5c4e24b0e9bcfdc50f94d2ea1ec8441614c53f2b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302a4dd7e8acc54e2a98a5494fc24212517c17f2da9c35f829ef57b60aa7f75e6f16deca007c6c9d12c6ee07819f3f9759023100ef79dff162bdb42b434d2735fdacd322c5f99b275278cd1295e6beb8ea3f281db3fb1fa24c919f30f6e9ec645e75849d0302047c435bb50067306502304d26d9c16281fbdf3a116901673ff55be08521cdbce44aae0cd3691b23cc26f099227c4787064941df91d03f7031536d023100b60b7e716cd34de1eaa6632cae2c4899279d3b7ad906cfff7d7d018e7abc69551f23262f92ccfddd27941d684ec0d1ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307b2213e09ce2b39c2fe1aee558adb9a70989d48c0586d0ef5ee0c7665e944906008813964e1e70ae6ed2ecf44dd8cbff02304cf4fd450ba70b6cdb5058137a564a38145763685a8582551e757e5d2f9c136df4490e19b37c84d9324975fe4973793b0302047c435bb500673065023100da63eff891be1f34b4d20d945e87ffa5cbc74733c8531e9942464412e7267407e10e5298ca651e3130d4db35f51da18b02303c60a46e1dd3b4dd15ad1214ddb17d85ef63b386cc03716349a75d2e3a1a9b3bb03c2b9814fe4e5ee20b908959ff2ab80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009f2585aac0b9af09cbd814d2d09b1e17e379249810f1ea578b41aace8f60fdf1460b749d48a21983bfeb3e08db925725023100a3928b8e14b16405fc912d28ef8dba2a49b0cbbf04b962430bd5fa88a761d91bf1fdaaee441ae8ba36f291ea89beecc60302047c435bb500673065023100e216d926915706a903396dc964f36f6d430de806c9937cdb5e562fa31565d1a7b4919d23aafce9f1a9c833f715e3058702305d0500b500a02425ed7dd611f7251973017a1f9f3cbeebebacfc2dda5af347e8c2bc30273d9a8f423a00b6abd4272ac70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ded573deff07592c7b419908e40c73161e9e26fda822d5de49df47ca19ecec4fec9b1b53cfc075fc1bdb699e27a3b0b7023100ae39e4fc0b6e9c02cad44bb937188507965132383fb3b225f9e818fae2aad18abdc7eeea45ec1e0b102b6dfe7fe138a40302047c435bb500663064023062273fd96948221f1ba2052ff0e6e39415ef0c40471631c221245df2ca78dbba38a67a5f8625a1f0c90ed6ba6c353d34023063953f20a3daab72f973deba8f8e20057ce8b0df2bb80c3183ac5f6bc0f4b7650a94e00b3e38da9bbe1f5c4e9c29aed00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023010dac2360a97f21a25e7a06140ad9e1d33ed29e371f5fd8624c9128acf910f6b3925a60435b73ab342bbdde9d41015890230705b1cf8df050a3166e0ab3f746f81996545bd92de5955acbbf61d5229eb73ae587e600dbd7d516fc5e602c2fbaf0bd60302047c435bb50067306502305cc1c41f9b64a3ae22e35a34d33963c108e80101a6515595a9d17616f89ec7500833a1c4adda5eb56a96556ed0a1289f023100fb168a306fa77f67637973051e93399f67e7bdc2a866e6a9b594aaca79dd59115f6368188c17f732d5e4f6d048af18860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bfcb84b2e9ad3386dfed7dc9ec164acf8b45db0494d9edda591ff8145ce03ad6e975c561b08c0e593381233911def36202305260d3273adc79d1d8d40a2faf31616f1e06a211c3cf0d4ec676de32f13f670a67e8aede11000b14ac2ecab0a5c54a080302047c435bb500673065023100a0f84ad944e5d8005f2787e7eb93459fcccc48ea7972a37b9b4e3f889ba6ee2643c34013344c3ddc244ec745627ef862023004a0cbf1aff792b79b4d8902ff252367f428faf7c783e278bfef03e554fa221a5dfd3910ae922429f010eb16a8fe89300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d12315544fdb5702c55f651e8464e5c586c178243cf3b45bb6401bafdc56a3b45d3706d7638c7d7631f9e7505b30200002306df31f35afdc0d44af81cba27b94890fccd341cd18554f3835e60f8e41f3374d295adb548943d63412d9cd815c8dce180302047c435bb500683066023100c7e2a6bb4dad35a6493f7a4fd719003ed996b7c0d5f8f6a187bde245f8ee348bf8cd7a8042096acc96e4d53d6a96b219023100c927f0cad4a0bb20a083be214f2a4ca63c19bea86edc94a0e8b82f601b8db1a0d00d8eb319e30d3cdfc0932534fa1a420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305f2e0e4910e024c2e28d3caf9095b8f861e637dbc8c9cfcb6ebb6911d29cb42f1d805b9cbb1fe9e9a2913169ec00ba2502304441758c94e295af9a3356fdf912f248a8987fa05af586c729c1714c0765bf60ee13f117226bcf3a4838e588d2d319570302047c435bb500673065023100802641ed25f344beaee14eef398645d3992a0718ddd380576b1c9834e3a4d5785a2dcfcb591507a0e6747bae7e55a2890230718fd4a4db6d9c18eba62a5db0b9e561df6476fcc114c50bad66b3a232840a3f352a5132f3036aac88807454bfb00dce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302ee88ebe81ee8b9f5cb74444d28fa015218bf31f8e4e4f9095827e7bc6e432b623f52526bdd0acd7ee2835c54d69cdb302310098453ee7716b497532872a59fb1a34e85882307e0b3bdde8efbf17089be5b4199d785b8ce4a2b86db5a17432f4d0eda20302047c435bb500663064023020862dbbde4951ecfd61ea988505fcceae9344360c623b445186e037242c1d7a40dbe99ffe6c75a56b60fc0ec25c812002300961630556a3cc1c494848279e76e7c03a912eb5d0334c09a99b4168acb12cba08246f49693dad8997c91cdf6a49ca1d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b40bd0c9c6edbc34745c121d06b0abdb3e446bcf518347a068675cdd23a124849724e73618fe00fb93a2c6bd4577bc27023100fd3001481b551a8fb9e398bf64fb26614f9c13366464b64ae0ab0fb5a1d11805497a99a04f0e020433044e110f3357a00302047c435bb500683066023100bcae4b29423796563e0415e5ea1f5a0c3b3e0b84d788929723240ca24e7a358f4e8bb92579ea24678bef89c0e3a275f3023100b6a5ca2528c83d14d0ee234aef7a9051ac7bfef52101641829c0c22e432e7081d562d65b25fda615a9eb09410d28f0840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b44c3df5bc080b288cb60f43d63bf9f374d19617f5e891de41f781faa70c69d81def7ba039a1feee4ecc44f80c03591802307b386336ff3fb9b2b6c91fca3af46924ae7984ff5301f7c379f8e2767070c8ae8308b0460a00eefe18a328266a4513980302047c435bb500683066023100baf25668d5e5916b3e9a20278e9d22faa7523406a1688d7cf3b33cb233727b0de3c8b14804cf3d3123b4a26901e556250231008fa9cb4884890142266e1788dded1b3b9df7a4a5fdb3026c787d0e348e5443918a95dd2dbd2a4f8353e91c9ba2edf1130302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d9c33d6ec257dc88683d9e2f4e4b5023e609dee2083a385a090958cf9f38b561c7c0a398af4295f46327c6cd3335608023100e3faffc3ea8d03eeb5a0874d05ef152228e2ee3eab455d9da4b5d0b8bec015c98a0e407a9cba1e11ea34e0d65bf8f8c30302047c435bb5006630640230359fc974283ea17f20ba8eefc126c97f90225033d9a05c49c24a1e2b3f939394e9eeccea6ff24f5270d0e8f1a77393f5023075186e689559586d13bf438868c6734aac4829b3c1a55014203859f4bf7450bec629d0b0a2ef02acd061b1d87d3d003a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100983a846060fdc602fde9a737356218d881ed7488e17cf9cc2851ac4b29a8794fa9c6a7869cebb6a37138ec30eed208b702305f7a545eb68ef3b323e6da8221c21cf495b6d3322e513778f4274c3b3b97a4d21cc2db82e1ba35116ac7cac5f34605bc0302047c435bb50066306402306ad40e91f2f5249058d7b421925512a922b8a395a6c97ea307f53e71858ff6825512d0b45a49594c8923f77ba8d0fe31023016e8084a9f319da61c89af7696e28ead141dba72dd98fe177f931d3a3ff6f79d4223b47ef48158786e0c187dd5aa05170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100876e2adef3a329af0c98861d9517ff40c8d287f5c096d2d83b6567565f7ec9712a618ef5c4a12a621cb3bd6762a00d0e02305663f6b6195d1ab51484eec7109933d8785eb3f53af1db3e91095da3e515aac96a691fe3924f584c64cb73732bacbdc60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100979480a01b685a5f92e2e69e428fce070d55ab5be16ccc4fe27c9b9fa41de84780f670938ed1e81b20157197486b451a02307a8f096a22a31ad70db970f421423d464749a2b069448cc3e9074bef31522b254e89ae9d2cba15f9c55a4260aa7823310302047c435bb500663064023058813052087aecfb503c3ca71e37c3efebfeb0319fa05bd2a2fd412fb884fa3bcd0637a395da5292b0175215b4d88b3102302d8b9518edb78af28095c1f8140783c982aebab4fd2c774cdf093f41a101b0af32653bd10023e0bf984d2e5a078b3e3d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300c05a4af4a60d67fb36729b3931a4ce2be786075d9eaa178ec0a03d72f6b20bf1afc6536958bd08858f4291c44835b490231008742d620f286f0ddb47feb7e77b01c504ee48860e49bb616664cf71dad0f939fe125645b5413d39bb66d3225567014670302047c435bb5006630640230145b3dbcdf89c65dc98fe5330f8bdc6203a1e7c101ca763a7ca3450757266fa15cd788edcc8d384140ecf2507b929afc023050cf5e45bda4eb06a7fc6b4aeb1e723f5148e9d5a6cfa0beba7d0c43b75f86f89903d748a244065aa99ac1dc80c17e430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301e641344bb81b258e0c6652a9ac4fac03f6333c657a117478bc3e382471a391c8e10faaef1431fd864c781be694c394302307fcae61858a3fab83af0b7232fa24cfdcaaa868d899943b5d2f39c013c99ea81b331a1d71d0fbb7e5c831b875cacdbfb0302047c435bb500673065023100bd038cd34a7ee82a2ecdb1f6f36418622c78d4382fcd332bffb39a89129d081ea98835421744f8074d3b874aec1fb15b023006e81d2bc843ac4e663b54d8a4e903b6e5d3839415d2ce491f592811f3556c83bcd68ea9d9a95632dc8d825cb6d2572f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023072091a076332bccd4c6944ade23ee31f23362bf6605c75083ba96db519c67f92144e60c5c02b6e3513092484e35d79d1023100d5d2387e60ee31c0ec0af7eb94bb62e3232194a01f7482451df493aca32747f35d53b06760add507ccd7a6be6b2134c60302047c435bb500683066023100aa4e3cb9c127a83fcac5fa79cc79eb2869ea86211f6d785a73d58d46f979abe4bf12d27b34e4c81e970f3b08cb213f40023100bc6d357b4279a66f893bfb421d16c5887a92f4f5919bae9e167b2c00e605408bc31c3eb89c0c8bbb177ebf62c308447e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023079dd1d1c99eae0fb533031758a055a831d5360f91df4c7e440c24d3367998a5adbeb77f3f94204024abed43cff4b262802303947d8999cbaba9addbc02cddf63c860391bb7f1a16526a8f74aee4b5fc52f840944ced099f285f9f60f35bf10f4b97a0302047c435bb50066306402302cbdced6184694c65c06f049d9abd93bdc6ba9072316e26f19587270f8c1022e94158d1532bf045fa2110c58b1ede0600230406c3bff44b3cf12bf9ad4415a055295e306e99a751885eef0e78faffae77fba7b896c97fed9d7a45560d89ba0bea9d00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dcc36586a8afffeb1ec0d3174ce07e4bde14a2570f6239e528959ca249dabde323f0e1994cff20fd2391d74da7274a09023100b4bd7d4a094f0f6a368ee83f89fda6e3c22839c20d446f97237d4f61382d5fad0ee377806b4ff717288b6059cd0b871c0302047c435bb5006830660231008588456f8140b973c0555a949cec0e149cd92dd85cb5c4cd8f356ccea873ceb91764d13926b2179d66ba00af887b2dec023100ae9824cc893f4285d1877789a8a3db5be52338a8ef4fa4f18f0e0fcaf41a5fadf68b3daf5a1895e76497c50923d9272e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023029018c8b8c255ac58416ae79fb2cf41ddc850d86ee9c33bf069e7895bb89227c2517bff51da15bbe9cdfd0b08d3d9496023100d90617cb132a49e04a0c52c3553285ab125bdae7278310251b458c14b5f8420e50941b36830efe4fdefbc3b72147a7b70302047c435bb500673065023100a0752a88ef01055be830726836357802707aff13ba5448c584d7b8f4ddfde7c65df419077f0b99675d0ef7ea27b1792e0230765805fdc928d924b11d7fa642f2a1cd6b8a7195aa64a86170f65b78c981735529721a26b820fe8fa2b59d617e9087e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e78f6b30730bfedc72708245e27ab638ba7ce9f5b55b8ab90bb4964d363d4d7691141d965521ba9de1d616ce09d1e9e023100ebde392f7863ca05a703a16fca57eced1774a6fb0648e92013935e23ae21a61ef51bc37da679a0ae85fcbbb34c7b292e0302047c435bb5006730650230759b3f79491e87573b1849ce1e232aaac4bca1089b33f7538182dc683475e4dba2bd4390861df3a1bf9e7836b3f04cfd023100ad1fd8bfe6f2a1e53e44e526c1972b87f33c48a0407ff665b5204dd2dca392999f8b1a4a221063e3e1e08a7886c2633a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b1ce7cc3f6fe3c2493ee67aa1d0800439e0ed9dc686688bbc69c4fe91330081d48542fe087864a4d6893850921bf6556023100fcd5eed1ffdadd25d946a27a9e47e8fb82ebd31c16276a7ab0e0ae20a93755719ade0fcf0873675ecbfdc17eed3f16410302047c435bb500673065023100a0eb039dce571d7fff2b1a3f75e1502af54b9b8b278008eb24679baf21a396fa218ff5e6b60456336eee27df481747110230185c269ecb869d487937d0221571cc950544f27f1ca458d7be6fb4fcecc4e12898c6b4300c22e5e14be3f7ab790983340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037338a3748214133fd54567e5e8761f34ba336a601ac60804c9a1aba7287e4e0c217b6728092489863b542da91c0431f02303d7e242feab9b2f5ed4f471b9f2bb27759c8b86378597de17a9343fd5c9de97183051beb4c45b459a474a2bfa7ff59ef0302047c435bb500673065023100a0322abce2bbfc101d9976b13c1aab917da6fc011b3948b53699fbe6f817ff8c9796ade95ef6345615e2897e853a3a6e023047f5f64d4e98e8fa3ebd2f3173be89209e32672ae0acb7ac27c875c877678b8e39f5d10c0147144a1b16e63634c5cc4a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd3ac88367b262014b959bb5431065a91f0b6dd83ac2eaede1bdda906c156bc31809f9f4b63fdce12c0b73cce871ffcd02303042651926a966574e0ebb17d265b2834d915edaf548fe3a82de9fa757669df1decaa072a24a895bd1af2eb0e7720bec0302047c435bb500673065023100e0f3bec3ce95bf475f6a3b75e928aaa7e942e7a1fdacd0e4ca03dd57c42177c1ab94aa72c0453065c398110d641601e2023041afa3b994783825564e43bdd6136108de1366117dece7b9c12780f21e95f8286e27df5c549d4cfdf1caf4edaefff6930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f4c1431da9e7c2d839701bc7881ba483496f080765487facc4c2ccac6126be124968c248ae3ccc7ec39bb22c242ff06c02302e6930ba0f5db2568fb76f2f72f11befba3954e283c9177836925638e4e5d21041902cceac632090b7ea3af6e467fa280302047c435bb500683066023100c7718cd2f3795cb1b07448f6d94df8f24479561e245d6dbfd8bb42da29ee56ed6b31c4d18388caa9ee87384ba088f738023100e2856d406ce50c41702e5bc408c568d95019181d3d10df9087faf037fbea86b5c73ca5e34906da9d451b9c692e5077bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d0a22e708060ef1a5ac7c4945df2d5193d6ad552a4b7dbb31340d71e76a20f8e48db76a998580c17427b259e77d8eda502303b3bba6996d83c687ee6ec0fb987a463e659fe528d557b4a9cb092adb98e7fdee18adc78b2d3305fcec99a10a7ec5e4f0302047c435bb500673065023016a1f49d2aa60b99455958885eb9c5c9d2c742a6d3459ae2ce8055f289b117947cf91eb0e34a9e782e0f833b279ab57102310093ae403c2fb4fdcd532d901e2ca2921508f32af69b22e969d770e77a6ed3e220b6710e9e069a125c181623529cba7fea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304973b43ac5d33ef1d28b1a04bb229dadf6ddd4719cf14563d65d4e3d7aeff6396e1309abd53f75e43c041178683d378c02300677c412e007f96c4fa39942d498d518afd10a4fc44b0d8ac4f9f461476a5f7c3636ed9791ac0bfb7ca433ed5407130d0302047c435bb5006830660231008afc552b9678dd6aa42efeaaa55823b44b45aff0052de4b79183b867b06b31bd096f66f9fad457cb280cc1b018c300b6023100a90e721b8cace506559bfc0893ec4761c4b8a7f1ee31d11dfa9ad21cf06d7581cd0b6bf1431c7876011ce9b3481ee1d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cdb8f98edeecac1d4f18247b843130ad39d4db4d99293f7b3c88c10f9ac4eed0622accb2779a9f0cc375f177c137c9a9023100ce45f548f3195fa2d18ee140b862e943d8e6d0404e2dae3f764cb5a0e9d29fa69ac0d2c3825001cf4abc74ca3e7b68790302047c435bb500683066023100a49c7c064099eb56f510d112090514cf4349aa8482304f5a6733769e3e86416d62bf6152783a748089d6a94e24d197f00231009de98fd7c58f927bd205ddc4869c2e53c552d12e61bef3ca80d7307501701c21338201f608aa9b87cd81a101649320620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ac8201fb14a2abff6e90cbe5051c8dafed6a8a0e8e1c5af367528abc874646f8c3d37a7c0bcb2aace75be07002c754c502303e345e4f4501018505bc93dc33f0ac3bad39f4230ac201c02c1616e9bae5b5d6ca7f57d736f49f6af66ec314b820d9c70302047c435bb500673065023100a96a77675ce6a97370630dc9d4dc90a34acfbe759c4f515eee63a2cda39304eefa6c9f6c83b018cacc477ea1722cd3bf0230278b91fca86dcb6a9e5c08a9b3fe86434cb0a52d0047360eb14ee10607c407ab9458d5c60a49534cc7d22e3e5e9ab6660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301c08e2b3c9862d9fcb068202d3ec963048828a04321548b87e4b29e2ce036ef38376d7049a8551aa79ea08beac82d18f0230452e2518be0c10b48e8c0ea214bd1e2cfefc61a349250aae41a74811a6da529ebf625f21fec9afbd2970f92c457f49b70302047c435bb500683066023100e593cc03454d2aa01b96f4f5f4509dd8ca333bed099f3daac394157c3f71470055f8e99a82a9cc024052864e6d10a593023100c151900ac0cea12c84b085b689a2b062c06d2752038b708ef2dbe6adb5b6796cd638b5b44b6d241b3b170b24eb21da0b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023047dc1066c4c027adf312666448df6e10bf0398c84d5440a060ff849913b875bec2fd6a819abaeb6fb8e8c3e573a9550702310092c51afd06677ae1e73ef7ecdffd207568e6767fa3dbebd515cf6d7eea2be54f6733cc98ee2ff1276ae5423a67ffb24b0302047c435bb500673065023100c102dd8545ac2f1efad35d1f0f5857c185ef1f60cf95b7df5671cf62a5974933782603dff03a0ec04c3082501e3b8e8602302a00c22b33520c92a20a22e6458c992fe09e17cdd4c04ed27ac0cf595559400a240bad4d487c4dcb01681ae4f7892daf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230519bd17d64b1dcc2bc51a8992968584006db08215b95e0733ad1272dfbbb6008847e8eb3c8c19f2c35182453a775aa54023100ad76ee3b58a6038717ac4edfd911b9acaa2d2a680db3cf74cb7cef76dd96007e261759bd5f4417da48ef9ef7b50aea1d0302047c435bb500673065023100b79baaee5763c7b686198e4f017bc538ef0a47fb66d82b14f65d7229f1f7bcf066ea780e4ef5bb972019ffd1017ca6310230044d983397ea9d9ae54eb283394ba08f2c97d4b8848ad0ed0559a681f83091f143082aa2ae21d77ae18b8cd1783bf0ce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230544ac5663dd29ccb7e0225301a823e426e34d6b32cdc1bd9acb43f449207ccddb88d5374a4193c9299bfdda5aee43b7002301f124c0d3dbb244556608f9c5e3dea6a3c92aaeb218f0a10dde517f68b442ad4564fc7dd3671e004f117d007aaab5c8e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d1d8bad256c320c055b979103e8215cace930100b76535de9c3170a5cfcce7042793c80d72355031491cb699ce4b3568023100ef04f721e519b459645ba560f22baf09818297c398f6addf993d89c93720e965be10405de4bf9984fca8a22921396b520302047c435bb50067306502310095ae7a6df45ea8067a2a65efd3e8590781b20a44cac06614af6dc4bdd5c8cb178b6f7ffdf29dc1b32e83204be508cf6a02307ac54c18583079cd230880957bc23e1b617ec5101452c08fb19c201bcfa1dfdbae625d739002c30c5c4edbfb5a996bb10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300dda41a00e24ecc8e22be34b90b4f9a6d2c8af214267ff8865b12d7232c1be7242026207a786cc58df7dae2f959a9a9f023100f30eee8febdd807f2e5c2ef6623458a0093469d3ced9168990ff2f0c27c3d07e67359ce600e4987aec7071548222a4f40302047c435bb500673065023100edc3cd47659401f0aa4c10bbc9a9a9525198f1557088a527328b440322da374298bd78685ae409570bb128b2f59b194402303efbcf3e5e5e59fb0ac8b32e712983afd9026822a74ba0f95ae5eb46da57b8bfe3c088fe3fa9a65fe75105e2982c1b5a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d36a8eee71587a83f021e456d5aa7165bf3cbd7c15ebe58ffbda0adeae426ab5dc21a08160b0026f4d88bce47b51db1102302e0a9d416f6c6b674203f3e1a522785c2c2b2c96ad4cd936950947122292b7322dd33e541cff81d3ee467afa2e64b1af0302047c435bb50068306602310082e08f73c34b22b41224744f2847855fde14dfcf5f77bc5042fde2b3f2c0403dff266e26d8b496a66b7ba1ea7f0951b3023100cc1a25686044a3775a5b8f6ad34b09222599ba2ae2dc930f14be7b546cd33782f75f1b357f01ca5c4fb06b13455339430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d763f29663683898e7f65eac5552425fb781367ce2d9cf0f8412d1a3e43f3b4301f0b06923bd7e484d6fce021c1b66f9023100a2fde22a09b1fed5fde8e2c46174d797c73c59b79d811c4e115a29ac258a43ac26834b9bda9f61ce6004c3b3cb9f33fa0302047c435bb5006730650230328fcec6e3086b0a172f8f8c4a7b00950dd5181608e46e6314b6d9537497a280b1f07e6c64123f0056987cc0f7f61ccb02310099e1c471daaa74b48f77cf0e20e6e81d66c97aed6faf4531831d2cb6480536a6bb4f9885b775f2679bfb760defe82f120302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100eb0f46dc9397a484a937a5713219073da15b679eeef55dd0252999d4f3c546d00e4e4bd97b95a13655456610c8dfca2002306ebee806ecefa83b634dd09a7ad3aab206a09680e2d97cc6537b6f63d450834ab91d0c3867109d59f76b556f1ae1ab580302047c435bb500673065023022cdab407195eceb137b4ad47928ec62ea1c0d974e3038dfc75da904686e79d20c67ff3fa2a09739f621d02c3c77156c023100eabf5a1bbf4be6345a27a24ef8eacf049d9318d90573237e37c3c9d892bb1de426d2f296fcfa62d0b0732362c45880010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300b265a9ef615d11a45022c65f74c0efb2390c72789a7ccae54500e18adbcb65bea1b0c71ce59397d2dec098507ab35b5023028aa189320d52c3253d040d4d6d18c6321096443aadc12538ec31fd8d67add3858cdf797faa0fa8ab3a979de1b316f670302047c435bb50067306502310083357ad28602ded41a22518b8cb47f0bc49c02cde61f08ede132bb122862648ab91943a7a034984d6033aa8bf36b621b023037e5486811cc798e1a4b183312a3f45405782d59a5c358c2297624d2455a9ccced1786856b412a61dfdcfc4c521394ad0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302ff2de9ed211a75d946e1c67a763998244935d939954b007f4e026d5a9b8d69cca3c475445488fa9b6fafaa9ad67263e023060454e1232164b2d44a911a88e22f419aa9806b0b03e8bb85c359a1d185ef710fcc315e8899f389f0052cf5f26b1dc200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a5b37003e4e2fef999e7e3c4c14eb902ed15e3df1d8de8864a06de3891cb78c3c92c0e2f84a9b058c5d48864a3e753ea02306682cb8fe328903c64849ccbd52ae637d1fe9ce28d72d378bb777594b973a92ca4afce71de97eb6a307a726fdcb3fe350302047c435bb500683066023100b5534a594a3ef2eff406c0776319f9c88c4e1ffaa740abdedda65cd501c603f35fbe53ce5746f104e38baedfe4d8f44d023100b5a9b056a067ec6aa75dba3b11c1adcb19997b621e3c09b9785c1360d8a257b007592530afecb79952bd1c80dcbc419f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302dd6957034051d0b2b18b42da0a878ec14f1e5ab91dede90353951d995f30c26ec52a2e818bd541b0ca8e57329ffe2e6023100de32c428ef6e4a895c81de08764b8bb1e4dea2a12c02a9626a949bdfcfdab4aaf0d2e909893fb3721e61e6762226217f0302047c435bb500673065023100ab1c961f0fe8a2980cb0cf6a2f2994accfacf78b7b361b4ebded82896bc94a299180a73883230283a78674eea3f0cf8102300e1cb9df6ae362489bedfce5f9086a5cc8c85eaa40dcce2e737c198b881dc7f925991cee2e946a112b8253eb144c892a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ddc6f5e2825ffc5a7a84d573f72824460dcc2a7dae814b19a3100a37bfe32adc8ec9d32abf44fda6a2023ea2f005fdcf023012d92e4a3e44271e8dd3aaf8a6201f2dc12430cc9357d14a20565e8392b54caeacc3b5ff1171067e33cbf9279de97f590302047c435bb50067306502300f4461c78a2639515ea92f1572c3762f7fbb826cf23009957d0d527a685e64ddfc66a7b7917626eb2ba30acded1d3ca1023100f8c358d4778752158055a22cab10c6536486693fc5cbcea017104b3535f14ef5df4deba36cc033f9f1e6aedf562673870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e7c9d4f47c72320a622a0ba2319d8a5fd45b37c80e4c80f4140cb90f4aadf809f8fc5a5a31ba975890f692ce4c706509023100921677460cadf50019b98ab10fa580b4a476fb872a13cca8282741c2e14858b5a079f735a100142c052c09c4f3701b4d0302047c435bb500673065023100a958623907f82affca0c0d0f4a2fc3dadc284b2e6e1b62e4c145617887f11423204011adaaab4686f889feb34388a01302304f187547ef17ba12f68dd5b64d1c51788bc1178838c016603d199f75fb1485127308121609961d84cabcdd7883308a7c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b60d0c5de032d7dba6d31d7e7b27f05ca727b993959dcd85ad9f4893c5069f77835fc7547d3215a7d5f69a8f6dd0006002307f54de0b159ebd22ea63aee40efb07af667d8ae326ddfe99b95773ddd39293d35c6f4c0fa26802286fa4173a0eb6d3ee0302047c435bb500683066023100f279b448c7e86684ad19cf838e46d1c50dd96f8acaf38d79dc82c526c760e8970e0de76c28c80083fd4892e8fcd2fc680231009560ed265777fc0392e1e53ee853448751e316a445692fd77277a0d7450fd1ea599c12dbe9fc3563215017e5a3bc6d3d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c1d926c2c15bc35a69ae8430aa98a9895b5796f98ec792a2404936888da2d77751075f5820821657348bf385e211185902307a081f3b61057f5849cd6f93889ac06798004489f1d840908333150bc6c94825f9acc2357cdd393c9e938ba31257278a0302047c435bb500683066023100cde4acfc8862a56ea76ffe462ef8cf97317c9b49a19d3573477be3b8fe234ffaf3d1eb263eefa61e2d179b4e9b3ab5f2023100f25840b25f9359c9bd9ae0982497d5be66e19e3e78094f175b22211c142b16f05e2b2fb6665c9cc46f4996e38e0ee8070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100aa3cdeca7b4f9cf1674f1416464a8520d6094da566fff464c5155ad271930036a0404a9b647b5bec5c47d5e8c22a9848023100921a9c7d6bdd9d5872536b7a0e6f5b9e34c1cb9f3f9c313765f7cf97c01ccb4087a386aeeea55fc5cd23bf72359f1b150302047c435bb500673065023100fb97c6e1238bbe5fda23146ccae85da9dfddc19ef68e118f7e7dc6d2f2b245f30097e833c87c9100dd6c94c4dc8aac3e02305bb012aeb814b7858023433cfd4c4a707c7bcb21078053d2355583225395a259f03abb2b008dd25284e6372b3c0f186d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d4f467cf4e46ca178f29306653ab7bed122ff0c93cdca3fdf84ebaedae303228602ac608841f6689432c6c119513ddb0230145fc6ddd1e402b04af7b85c73c3662f748883c859f7fa4803e52a5bb07124892eefb07bf82ea424a31f3f3b045947420302047c435bb500683066023100b85d91c1e408bb27e9ee85a12b9555711ed5c10c85bf8c58640d17d5f1245f152188e2ad2da14cde304e3be124ce72f9023100d352ddcf9419ff5869424a8e27ea16b23cb89f8e96e240a19d86f6b0aae7b2e3fac13b25883044887a985971fce061cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023054823aa2ed6b9223529823b02114d9e6f7085b6e8d75a18bfb253fd57abab90abc9d26cc79fca96410501a6c2ae21da3023100f4bc754012557038723fcb37f1369b374c2db40f06512d3fce4392b3197c066d1931bc50041dd74bbcbd183f2bc25cbb0302047c435bb500683066023100bb251d6f1a7589e01ea855204d4ca5de76af66068798f46b8931c1230e0d6e0290baa50d9f706f337ed9d3ed503dc3530231008d88dba3ed433f60a0ea6b182ffc60bf2887115623b6a3649b19695a381989a1a27d53611fe7f60ef63a378596edfea00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f443ecf8a781c69187d5ee66457ced6ccb2c5c786341e6da38c974f02e0c045fd253f3377f09931d2b8a6af2eb2a7d1f02307c71de571462ff44564d6aebaafb80fd66d4a6cd33da843e8e37d9ce121e10c93cdfa52049b0a3b894b8966ab6dc2adb0302047c435bb50067306502307795bca0613cde2544675511f4be4a934b6966337648abce3ee5f894bb745d1f392b5aeaca66562e00760020a087f19102310087ca8573783a717fbf718765c070e0547fcbcea91b3536e663c3b0f2c8eaa67142abce3acd321a8d8f3f0ea8fbcf93320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230046b15f5b6822d8958e80322bf543db7fefa08930a9c4e586a9940d02dd59bac5d39c7e26fe3cda829a4a8397dbf2f3e02302b5d9bfd2f0e9a4443e706af82236ba97fdd6024f1d74ae621974094a0c333ea4796df665da6c83840105edb6ac48bd50302047c435bb500683066023100c0261ece8f292f8aa9f77f7468946f18654586e06e945cfd9191a9c459c44a5c64c268c1e0f7bb8621dbf8c9cc6f16c0023100ef3d497d150d02fa66286b245979f11ca0b8b8da180318858c41e1ce81f1a24c63b7005b679f191e1ae815d0d2d292a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f57c13ed4f91a702e8f5788ef72206398e8d43214c1c20594d3e341f5a656ee9bf4804749302f827d90f5af7b0c34b1502310087d45d9d72225ba48d1dbca5d9ea2306a2ca10e721c549f8a219c15833f9f3ea62840b3f374d7cae515efe7712529d6d0302047c435bb500683066023100ef142ce66b238e3afc41e92f1202e48bfd29be5ac855b5248b89e72a42bff701e232d9bf21697120eed53282236177cb023100b7b2a9313b9a3ab0b678df089a837ab281ae34b465c9b8b7e09bc42fd2f7a4d4cba5a9201e2bb921f0ffe9ba6c6ead0a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eb5ab10b40606ec7551c12eb4f14bd2432dda874f0ae5b39b6371ef5ceaabbc8b994b2137eee9f68592249ae7ef4445c023100f9db7e3a684fd8e6133d4207102a52ff99b271fe0ef240e126080a86f6244a85c6b33b0042670c3df28859408115bb340302047c435bb50067306502304230db2511385f45e3559369811f64d783d5682f5307a484b9d5388bcaa1a7302a18fcc856641c3fc5099f709f501153023100d938d200953e9d8894926f3fd0d637ab8f5c5f5ade6b8ac975bbbf84ace91976e0822bf390e3fcd3054e72ded82e78a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023057a4cb6a9f3150bc2a825519f66e14f8eee452876eb87a1a481f54222ffec9863a480077f2d19db173d48bef728e0ef902305b4c7901bae1157497dca9d8141b19ccea0fdb9ce25802dec42ca4e6fa8ca0755ca2fe14c05046f0d1cc0e8cc3ba1ce40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023070d90a71ab40e38b9f11ed96b9b9edd291d41a6c5bedd5a073151c80f2a5680ce10132236b12ed1dba5fc82ed56add15023100ed9b6bce570bd7a32528d8655134ae73182dae4387469e7b725232331756294c6e9de963119d7d792eadf55f732379480302047c435bb50067306502304f6bf0ac7242118c6dbfd29334a8a5e2188dc8adb5822d824e449cc8016ebc9d655738892a74bf297de6b1e236674c42023100b2f5da3ca3a22f5c0c0b28ddde5ac16742c8a307f088f996bb4570fcb321e284f1ecfd413865d98d80b02cd4ad622f590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300a52d74e5772c1315b9928242d32f5e2da1d516b773eda7bccb13380264831bd6894c3d54eaa50fef1d0e726bf5a07fb023100ad893d30c501dc3a010001c734d496c6021d8894cf52dccc063aace664938ae84d4939d869c803d339de6d769d5d27600302047c435bb500663064023046c54be89b875db55217005ee87cd143da3f01c8796af5cdef46739d81dad40e1052dacf9c19b8a6961a7b09536a185b02306005a11cb2e329ae10b5b014511570e1c47b5362bcb678a4dc88a31b9f14fb1cf4a3dc10e92a3b6b95d1a8ae2a0672c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a2b8bbbfce29cd0b3770cf57bcec1e20629a70e1868be095b7233fcbe76bb534551ac4ce350b1ed159961b58573c5a3302301b152d612056629fca60f2a736290121cf6cf842fa272adfb34d2c1f0807efd6ccc04792395eaeecd7fb10b681c96ebf0302047c435bb50067306502302cbb524396f1eeaa67c8ba69cbeaa278d23bf4a74190d9a9b45446d1aaaef0474396b246602af51428531a050cc1fdfd023100e45c24c26e0a7cdfa8e197cd157fce471a9c8246e7c7f51c3a3c7ae3c9bf4c122d9aa7623124eda7f3e9e05501d229d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ced60ed39aedbed40b167fda9a1667f7b2eec55d21bad308f699dad0126c5840d51a36d5c215f7edb0b3585598b654f90230282c23aba3fecd3f9bf699397032131be2478030b0f6c8c2678316ab99a1db444253bb3b85fd9244e175434edbd6d26c0302047c435bb500683066023100ca623bd79f8808aea737639612200352cbd33a8e4661d059995bfd01f015a462ee84c39ca9aaa01c7982a231090e5e52023100faf7290a7811cf1410cac1e27d710581a0c6e2aa2c9cb5fa48aa247fc934342694681e16cf985c30a905dab84ab162e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230427218fb42d0b125d87baa6f94c7df6119df8431545b5940b78e8f262b3f39bea41bf730de9e50afb2e3847a81bc2eea023007846339f8e965bc9668fe4247ccea3dd86c8e70e80e982f2f1c9cf27e7234e8664ad7644b4bc108dbfc910bf0fe22280302047c435bb500663064023079fb35f822e8617a5d8929229e9e23dd3c42c88b95624b5b707d242a7a5c865deb91d42e6fad262752419a5eb24b030f02307f69397d5a018f3eac48be450a19bb99475c73ccf607d20ef102aad5c7098ee81927b5692adf340a36cbd62aa89a355b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cc04d93c9b20d0ee3526fe048c4e0ac4a835ece8a726f3ccf3982657724d1fb8dee6564e8fa085c21888c6f860a54f00023100a6adac41e9ec34646e981bbdc6bd60540b4a91e46ac77e4fd526af34034a86ba71996fd9d6d60cf73c46e3550315fb330302047c435bb500683066023100847774b79b871952882890c904dd5c83ee58a27c9c5912013baeef22e88c10d7224dd9cdad2c582b462f72c3e66230a6023100809584845c7a479a7813534321007d45985a30b306c0c967e863d6eaea794fa13f60abdbd0f761fdd79ab6eb01832ee50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d51591912cb81163f7c8af57ed4279a1e0e28558b27599123065c24c82e51ca4fe8ceaafcd64ad8aa6e013f930cea94502303dfe212b0939fb22826bcadbae94d8bc07a2cab78acd1c0f2a6583ea984593105f7aeaabe23d7aa5bd83019d04fe09020302047c435bb500663064023062173fa7c1d7707d754be2036206757a58f84bd3fe61ee38535891622f2920dedbe7b396299a2ad79d6335484afe7189023027c2679e84d28be973e402a82f379148451625441665cf24bcdb082b0bb670d6d2650843fe9d5c7a1eaea5112758937a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e45edc8a8497424f7a1274482a6e20cbd85f7f569871194a4260ff480fbeeb267924a02d76c854e039d548000321d9c023100bcee96c44e1fa891abeb564a10e8eb35fef5b131393645ce5771fa6acae4d09fcecd016a62732a27bdaeec6c6584b9430302047c435bb50068306602310097c2a5ded2a61a2c500b8dcd0c158f2bb1329ad5b8516dc899490b9b20fc4ae456f772756dbb33614d88140bd7c85cbf023100cf4e4a245ec085aba077b3c2d4c8479b3c3cc8543f7372e7bcb99cae3296c0423dae7483f5cfd6c86ea21f95887abf6c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cd1133331cb9553804e605c120bed7f0c8149f699c023958020239b1fe19ddc977431e7a1cc0271899cfb854c255122b023100e0541c3eedcffbdb1ef98da6bb7100d3e8f5dd981d22b5eea0b9ae78d9ab4ec6db6c8064bed5f0f6aaffdb606a2c4ce30302047c435bb50066306402301ccfa8fe2c34ae2751e17f0aacb213ce213a311b2836b310286cf12fb419e256ec074e7fea7c91f2b1e42b33a64f178702307634df21a2d60d2ae7a7751727329126b64d6fc28f60e6264189a208f9643fe1627ece8e5a56f6bca3a1f026de0495070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301032bc6d18a84228418ec562d0b8e7550e8c12b698221c17f9ebe65467ecf34aaa49297bee3fde2232974b4dfa36702d023100e106df789d4a10703463ef740a311993c867ce07cada837dacee3fcb918a46f5cd8de6cc5163c9d074d28be57d7912c10302047c435bb50067306502304dc3f2c382093f9153d73a12aec36719a3416cb393d55b784dac8d0d9918c2a73df3decec1161eb9d7cdafe791b97884023100fcf87194f51a73aad4f144d66e8a48e164f635dd4c47357a19a18d038b2669e6759dff1271cc9522c99ba663f1fe37950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304a87cc2d1daf66e4b7a692135d34a40d81c8651ea1724d20cd71b9b80b46cdaa8acb56f5a3f18e79703a2e87872753ae023100d9ee11c6c7d6f5e417619b53a3c69aca6641d73da533207d0924497cf8587af5dd6d3028f57f346bf10550bf913c4fd60302047c435bb500683066023100f53c5fcca291fe60a9aa4a9b6e54e1b2716da5e4711528258b3742c64d6269305ceae6e4045c66eec7a1f5301bb5ae48023100e87ce021be7047ef1548552ccc62634ba76e9d40d6be1d1adf232e2104513eec6350d3a465a7ecfbfd6cf150f07830580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023048e6f305340810eeb8ace16633e75fb834c7633dfcc772682b9063568e206aaf301cb10dce176820bbf2df5a52a2642d0230119fa9bfe37758b953835fabb243fc6ff4d5b9740c9c3c519603644bf200ff7ce86ac56f27fbcd82482bf67a9ac4c0060302047c435bb500683066023100c5b1b85c423a209b95cd0dfcbbf3c7e18c2c2b2660daa49549a0654728a3e0a5d46bf93367406d267c9f3e5ea1b8e392023100d85a7505af0a6d2e5e5a053ca7993f841d16eb41080c0cddbc06f2de0446592fdbcd64564a5c572c41c0c5c279f98a2c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cbcb9be207cadb564e6080a4733a7077b0c00c45327d0de655134b5bb9c3c590c1e0742f79f1d1e9731152923e16668d0230228d2e02388eeab86bf111e8c69904aea750356cca633e9f9b4ce953f7737dfe5f76c75a164f051d0cbdd2dd28cb15040302047c435bb500673065023063673d4e2a67c953485c1346ea1c820e36dc8988ea1777b8ffa25eb838e68e1a166c4905f0693c308f597ac6a5d8d719023100bf2a9d374ab9bf713af162d78d14ba35cadc52beebbbdf15f8208426100d3a54a8ee976c8615ea8ef546d91b3b850c2b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306901f9a481b9b5f1463a003affad932ed62b13453f6524f63a1bd96089632e08e8c2af52a37a563cc2ac5fb9566b96f6023037bbc5d81f2682d7545c35e95317a8b24bf92c75505bed26db24041f0844930022142cf88b0ab129a174f02e9ffc05540302047c435bb500683066023100e304d44f18513bfb93cbcdcf104369eea25db55d5f40986baaf9d48f69cd14eb758bd80bc7fad1f611b8fabee2eebc3d023100fbc23ea63c120c81801ca8fff73c0c2a2bd2c409967b515328c46e87b80056443449058941062faa713099dcc25b1d090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009f45ce86dc65d140baf7c47c599ae38ce9fa0ca615f4758a7fc4dcc03c3a4da53138404001d81dd564cb1313bc19b753023067d0a532e1d98f1f0efaf49b8af51fccbb6b226dbce16d15783ce12c03e9dd0eb9bfd249ae3ada6cbb7fc85ec8ff10ee0302047c435bb500683066023100e194f20a9141575ac426ebf55d2a8d7bf120f23741e6b8aaa88005b2abc95644cfac9e5fcb14b402aa196603e4bd990402310099e157d65c2a553b25ea1b687cff752e18b96ff1f4cb18e54985d5e80caebe7a2fb0fd9833d8e64559f4d24c75538cdd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dda000852ede2fe376efa1922493dbcc29cf04584452cf61592fade87e80cfc81d3ad6fca495b5921e5f42f5a0d6282a023100a1951841503b386f0bc46683b3375ab04851e369810d4074e43f980473d0d6fb936e76383ec4a3d64a434c5eb38ac1490302047c435bb5006830660231009ec1f5f6a78130d8404df73f9cf8264db87caac3c7477bbcef946def796789a4a13855939992205f1aace8dab1815059023100f7ab40a227a1515671336d046067bd2aa57c6bd00665a9045da0b690d5e8981b38a0de85f4b9a31ba900e9ee7bc032440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a9bed3d39f0bbd21bbae42142a4e0aa02ac8292a5dccc04ca1d4feebc5e0680cce5a27aaebb2a2ca1525cc455708a7ff023100ee8eaf3d4928dbb3ee1123af586f31faebe640897149b3525dc10d69188c8946157af898fba41708381c08a2e103e6e20302047c435bb500663064023062887ea8eb86a3121b36fcea1253133ac99970ac1123799bd314b013eec73e9dc47a52f66a765539e24465288598d118023002bc0aed44e72e9406cda6d340d662093747f0cce1b62c6b1302a11d1a7c4c35089f2bbe6e68269557b8b1ad73667cf20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ca34561c42cd94cdb2e8138768f95d8e2adf05312c7dc483784333aea03490e2c4743110f67fa34393a8b2d37b4dbb2502302bfedc90d706a6307ee913273b539aba310b3b50a652573560cdc632f55f1da94e3d1df17469500876224f3d15b12d060302047c435bb500673065023025b537826cd5635a7312c3c88267cb72de78bb6fd96f53d7433ee2bb42eafd3602528b84e54a67e307a6cf875aa6f58a023100cd6b0ae9609121e0388b81ac06f2d8d6d347acc931e796d6ed443d49ec7bf573456ed143e63bf3a9d7697bcc6b34e5160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d78cadbc1114c22e41a98c13710a0f2f6ce766a44e08441e74d095700d92ff55f37bcf84950de965c41cf1ffbca991e50231008b400734084ed072e23cd32fa3c7099ab28b3527c859d3c42c8e7efd40d2e82b07dd12e875c31b5eb56d146fe13513b30302047c435bb500683066023100e2545a06aa35f06f62753620db3556d8da7264202c2dd63c976610549a13b09ed2cd8b934103db79aff2d7aebeed2b39023100be843ee39044ea601d6bd466d1fe9673e489dd1841b4dffd592621ed622905b9c9af962635e16879d478cef49993f73a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305bf2a9d8b73122e67246950a1e73e62d6457f6c533ef238418a5d9c0448c9c39ffadd8fed75c01bfd42163d8608bee5b02307a70f772764cb7ea07b454975bd844060309e4a11bbb979aee3122f93c136dfc48ca5bef438803efd0d2a04c4dfce54f0302047c435bb500683066023100a41f8cb29695fa30d1adb6273ff47e447e63cb741342c24d13eadf014cdeef37fc405b744eb7e27c23fd410de8ff92df02310096f9d6e6b9cc44f246f35c6e99a6656f275a5b481da969ffba824ee6eb015149b52a3f118405bc50fb2ad94ddf67b7d60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023031a301c07a50897659a7a67fae1d6e199aa97f0e1b0761b23ad42344f2558b3deffccf9a67aa219baf35d983e94dc0c0023100a52bfbe6f9b9ebde5863ca90277b8c6e0a45595e55a94b67ffe13a766330530ded1124db45a792a554f98b087f33d4fa0302047c435bb50067306502306377831a4d303f992ae1ab3e82199a8e72c8397f8875a7f26bba9fb179133e315eb2aa2b3126056078ed0d84002eb21b02310085b6c2c4a7c2b539404b8887e8e8e4ee57c248d6e95a68923d4aed1de3163df54f10f4536bc2160e24dd81482969ba580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ea168db7730a78fc1abedd65553d874dd933ec14f1c1928477bca04eea0006ef863029c387c8c9aadd7a54c0431cff8c023100bfdd44b25016e73e2915398a82f1af52333d2624308f5edbe8c44c4512cd8335ecf5b460491a92281e07f7711217cec40302047c435bb50066306402304e65f01c396d134320e124d1393b86d6fab808280fd32daf732f57f90aa8b79468e2ecf1e099ad7aabe36141c7bde6040230502bc3d8b278e2f5c1af5abe9499a0cf3e203dabdfeff4429dcb309930d6a562f2deb4a38d273f539cea87cb977a84730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230400169cdea9d8d69df3e427fc1a6176d557afdc6c9b723a699e2ee61e9b2ca8e7197e9ca20ba9ed2399dd5c3493dac7b02300d20f82fa059223ea8b1cd0655ffe1f277e9cdbec27308f6b839b896b3ac09e4cf4d3df1c967a99219dccdd28c8800df0302047c435bb5006630640230243e74e3f64599d9472a499279c7d37ffbf9c932cfbf2d40feddd19ef30979b11bcfdb14756f0dc7b0599735ec518a4e023057263d1643083a27383b3e0fd04233065a77e6cfebe997aa589d35e3d5c47052b10beb55c154603e78b888b3674cebbd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303427225419edb2ea9e8856582edb00659911a0608d2af745ce8bab5c6791a3ca8b9714e66549a9739b7a493b0582975c023003a36d58427857b9599a91abd0fd22c17676c3b5388ad172b77e537a9ca09fdd52b1158f4620345346a4c494abade3470302047c435bb5006630640230364b731de45f2f64a3c4f4eb285ae12066749afb5b8ae808ee7cee882fe24881fadf332c0534bfcb6ed95c6f4857ee8a02302d6682235c7f71f690af70eacef45e952c7f22c86f33b82531489cd72ae787791945ef416179ec188f1802285bf5b7590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ece0027da6de9f30bcf7bc7f49e2e0dc9a851678e3e6fcaaed40930d374bda55febafa6e3c53df342ffc429e9ba1ea4c023100b885445ccce3a59a16f4e6f4954b654ac87a34d91f187bc3a40046bc9bb937dcca7e7be4d2eecf5e5f45e7f864ab0ae40302047c435bb500683066023100f95f217ef1b04c34985c976ec365e57c850d90b7e2a40342d3369e3e3448eac8d14bc9496433e9fd4c454864b8f4f359023100d9561f2c4edcf78dc32ce33206b964238e902bd7d8ac8a409d6d33ab67ae5e43c413bcd420398194e9d50d510e1d92c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009c3800b671746731d7430588ee69c75715c76efe6016e58a6442c77dba815d25c3f52896cb91e8bbfe680a3ab2137ff5023100be89610a10f222117a711c34a87e70cb6123222010bb816d760ce400207533feecdfbdb35d7ddf5b077fef3dd3cf902b0302047c435bb500673065023045c2c6387ded0764c6bd960b4edcef20f84e4d3da243fb39200fb17304fc2d6cae73527b18911c0c7cd76f4c1d82eb26023100bc010863b08623deb08a3a675e8d3f49d8c12340b7677267d3fc9975e8d39116f2d4007858011b8b7c0a7c7b27893dff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230499f07445f6b4447c8d655ca9560079ee6c7618b5eaed693ca7f44c4e33f5e65c40c112bbd9cadf048025f483675b8f1023038192d54bb1cc945657f6c24310916cbff7c2f9846578407b48b5e45f65a40f0d0318da866eb8a81fa7d5d60530f724a0302047c435bb500673065023100e47d20fa7ffcc1236a8c963adcde0e3c908a9ef4d02d5c977a2f6dd50474d55308f8e0ff81b8dc252f6aea9ce3e6d988023052b861fd854825083043808e94c53089fc4444f5d02651442860e982361c84e659e14fd9b1aea5277a2a4d3e7721dc850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fd638a7cd4d42a1ef2165581a40e8bc54f6bcb6c1ca40123a2d2c3fcc52a7fd7e54378add75ade06aa4a52e10829a181023100c4b2aeacc9f29e520aea2fbb1bd8c483386de38291c5804c72bf19ed07df4ec809fd5b77f2db82f807ed53917a8ec91b0302047c435bb5006730650230041460ed80ac8dc98eaa1a71b0ed0a6aeb9232fa1ac8ea2a717a8e5af4ea98cc16d934f0460e8f4091e5d5d617f5f5ca023100e430377aa4d6ab2fa9602bc45ef0a74ebfc573e6034e52a49474794308a625aa789e74b602c01ac57ec7fe2df18c41480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023036c447c7a46fe1e37032482660c86005f146f66c16c86de3cfb8aa5a0e816f5a14efdc25b74f9418c32aa67af609798c023100a346897f2e64ec0585f06aa6657ae9cb5c76e5a6b537c2764d9c18c8be5913bf33a1ffec608b6cc8c17209267f9c66ce0302047c435bb500683066023100c26f5baa21e422e85adb9616e75a690a24ae70332b585b292642ed688774ecc5815f9dea310a4177fcec2986a093c7c8023100a2501fedd57f2b63c136c1b7f5bc010cd48fd5cd439c0245858bd7fffb62f276caaa50b8b6c0f165a87d23add9f3eaa80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023018321aa7bf2ff1a2d5b41dc3c8050f30e4e8c288c6630af3f8072cd197bf2c147558bff725e5540a246edb7a5f1d63f3023100f53421e8a9ff31e67fa161f7aa76762d5fda480e60ee524ff07c27fd8a291c7714b5c215e16461249e8e71ee809f5cf00302047c435bb500673065023100dbd2808d6f7949200495419b064a1cc4ec7acfaa6499fa91f081dfcd9022b0556f79083f0824fbf1bb8a84528570c26b023074762adfec9f27e955a06817551c7fc898a134f82a81879574b8ba8b139df8d89d9780429950f58a1f4165ee14a9163b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100854c878c49a4e0ce3bef8aa11753229a00155df9b840e777cfbc632d3bed5e74c0e99237846e5144cfdc8d71d365e918023100f7e9361ff78e352428048f258c551d46fbe601faba81ac88794645e5886d8acd0ffc7ff9e4d4dd1b34237702d7257a0c0302047c435bb50066306402300e8d92fda781976433c9a736e81da12e10b8d1dce35244fccb28611e034de4c474cb54d0cd97a6fa30e08a8ea70f6d8f023052f1784637d028576a44e34105b63dcbe27d371f688b1be9eb55bd91cf437536989bcc6ab2e36704baee4a25b841f60f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302f06653f771d87343f5501ea143969daa58e6eb226ddef5f658507c6775db60f8c9f4eb77b87a21198349d26033633dd023100af79b67af12125f15e96d74787ab87fcb7cb714acec9d8bb37ea8b61fd22c5160268540c0b88e82547ef780b325fb0be0302047c435bb5006630640230547e5d6d1a09645e6f29908e7ad2a5863f60ee514d794f4e708a66fabe37df88adb2caffbf49069c6ddce150b04a1a0e023052d603545443e513398ef5dc7dcf4dc442515ceacbceb93351fe0f267528e98b9507b80c6da790374f529ecfdd79c51c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306692b9a1ba4162f821c1ca7a9ded21e4a89623a6581efd927b44ceb5a232ffe397b6e46ac4224b7bb30e4aa9802927ab0230639590e0ea3a8ee7cbd7a2f5aa2871acf66758a76fccdaff24b6bdc88482e316fe52456b1e768a52225ba07fb3acf5750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023047dfce36cf44daca06dbd457ee48fe0fc3206107ccf009d65f644e27943a7074295a9d0f3477a6fcb5ca1618a67ddc4f0231008cbfdacc8f0c3ad33c8987f9f01c4389ee5475103c517a964dd553006d2f924d9c4fa96d7af9c8dc6c92165e0a2de2450302047c435bb500683066023100b158a95c6ba5cf1ff4b651f5fb472e9e462608ab41eb21e003fd92a67dffe3d4f3ac3fc1caf488ba7786c6897d6a0ce4023100ca0f6abd0f18c538e1b0fdca0f7f1aed5d84cad156be0b41342f2f0eed6daa18f102052434bc378638c2d9ee5bbf34850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302dbd6e4bd44e5a84d3674852c9181006c8a813ffc6278ef14473c0a10f3a36a08394b11cdc30a6f8566d0fe1c8985b5a023100e10c1d9ebb4fbfb2ff0a5dae849b2fb839bff3c4e147d0bd2afbec84f158719317fa429c9c84a53f20ee7523dd0755eb0302047c435bb500683066023100ae8af7eab7a058ecda0945e0e39e3f9d77ae252bab1d2cd85b55b4d80e4db2cc3cc4deb758b60907ebef543cec37fd2b023100c076bb2c7791826798f28d1f381274a1eba063a2f7f6542fb0197a72b9e66e4a0e52694afdc1413a89337ad955acfaa40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307e816c52289e99bb96508d66b0de3b03333ddef6ea5d1429ead802eb308a591ff265e3ea7cf7360c7a0ad15059fc8f5d023100bb43c6be3675250f9e1e87f8542fd5c99e6826dff5d4c898441939b7650ddbbb6ccb580ea2d45c1cbf981b41fec7116e0302047c435bb500673065023100fc10f57eff7328fe3f3adf41e0c87d6fbbb5e645b050202b076f1ad2c6f3e2af8619e34f6e5d736a3a4e8355036008c5023038341b9ecf9e3738fa17025a1d267924b33c2600b75ac270e8a61ac123eba0c4640e6ec7b545b89a36a30d100bb1f32d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cc4bead0f10ce58edcdcfbf93df9d3508868ef6cc1be7d1eb8e1302d0651bd732a98cc6816f74c6d60116fdf31bcd1bf02301b09430025ba5e55013b456007fe8142f7d194f8cf2c04d3797030098343eda5215b6d2dd5007fc47f2c44b7a48211f10302047c435bb50066306402304554e40dd05ce9a0eb8d6fcb792f7262375ba4e8862c352cef192b163ad7b9e1bc9c4416645dcf8898a03b03264506d402307c13d09dedfc05e312965d2301fbd41660d6a98f6a54305d1b749f7281b4a34c8501bdffd52f4342347b0668f19b24cd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d60117524568f60c10ee8ef9cefd2c50c8e9cb1d0f297af3000782321100134e59feb07c92437d1add4da4a5393018e02304b36d68390ad92de46db35bead88fde344ebb4b3f387369afa4a90ba6c0c32cfc0d25fa713c53fdc34da230cfd629bf60302047c435bb500673065023100cb7215e6a28d378c0b64bcca53b1589d688e68b697e70f8f971f3f82144b0c56917754fca86509eb430ab01e499891aa023043cb9ebf90b650c99baa44099d6c2472541fab771b8eaf4dc7b5db127ed9ab2ae6b38917caaed1efdc5f52a9212e862d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023028955c2c2c22776e63f08c282b17d027af372a31a4eface9ed0a50c98d8d2e532a97b294c8ac84f3747bf85680d3c1ff0230540ee3562c689382a323699b9d1e840b03cfeab0cab58eceb30b7eb2ea9cd1173bfc127f1284ff7c82448ee3e0270b0e0302047c435bb50066306402307e2349926170ecbd724c32f54ef6708e3c0436c499517a1c23a6aeb51a8c9d2265fcfa852d22da5ec1d75bacc2d5eace02304346ce379fff9caa8e652cf5a16193b415eac529e6f8bec314e658e4f970269ee87ef382ed04c7728fff42a8010149c10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310084d591d8d2b58808aed930c952ec29c8b69b5f5245743e25860a596cf86c9e4d40321e4d61ec81669ffdb7810f6a3d930231008eaf32cb1d2666042a18f372ef77358a75d0b80f52a4655127a7421fd97f9ac4b6f5e686a672746d255755f7681a23300302047c435bb5006730650231008aedd8cb1706a907ba9dd5de84ce02d06c820b2e56d8e69e395ba54b396e26d0fe90aa651e6e065126cc0b91849bf24f02306cbd75a6d64de2352d3186b6391967ce8845821deee65c88611ba135cbc1d1aec8b103f326586a7116e894cdf87753e90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302a92778d0ba9ada6b1749fb946ad4c76fdd76409979a25c79a195a8f762ea964ab5f26156e03355a8253d4a1d55ea95b023036d2d27a3a6c0ec02000601a5e425ac6d15362f7eda028f3174943ba1e1ccc23a17493eb2e71bb16e827651679c9d4350302047c435bb500683066023100e8428d3db6cd0ff55cc8cf9c60116a68f13890be0500dbf7dcda33da6dec7f8351dcf7ee0ceed1119bad058b2d6be05d023100f0d9dd1a0208ba81627df6e9bd2c8871be2d03b7067fcceed7f2cddb75aa1d35dab11c3a595987763f1483047670a1040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230313cb7084612bf880deed65edd624bfedd45035849c46dfd8235dbe69fc59fe6a322a359c3d4dd1a68c6294652ad853a023100ca747ff968278eaa7043876a9fa763ad22a761b0ee008f6e4316341bdf1d52e46a3d01b9df4f0493a8ff9cb48202a6b40302047c435bb50066306402303c8c9af224a2543215cfc1fac97a35455a7f5d1790d1627db6754afadeec8f1ffd8790e512f215088f7b71971d253bf802303807db9535bb13a94527c1b880e506b6bc844c5092b449866321901881fbdbd58ed626a50e20f47e1903f49cdb4c9e950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304bf14f2204d76d558b046d0c35324243864a9b2b2efa20ecddda453459bb2b058bf0de3f49b5c6cd751e015e76eaeb03023100a5b31911833ea11fb290bb5b547a0ef67096c02147071d1ca7d0f6ff420de7262af9058517236c3ce16ab69e6e25d99d0302047c435bb500673065023013d847d52ae72c3da01e93acaab3f075556c5170ba613b54486f774a7d2a0a2f4b4e2ab4453ff2c1477c2b29d88d3663023100e7c0a4be111c9e776db9645afad557090daa878df1b40c503c139df2cbb8ec6599f6cd47fc84c121c73f8260619cb5090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a8088c848271cfbad155c95ad71157a9bdc3e5a413985e653611719b5300be584a35c848713cf6fab6c1212d758659202305db105e6f5168ddf03323204824342da5f4732602af9ba47349675a343b7706062cf7a8ce0a80ec361223aa9995b249a0302047c435bb500683066023100d119880317e67d9a4aaa6603648c210cd27e889fd04e7b81223925a49811b5034ec8b44b2f636dfb1d6edb2b5eba91fb02310097a7f67630367f651ab114f91442ec6f8def36b4235f77b829174ebf84f49ada7a5d32b6219d77968f5e825040f1f6280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230463f41f0bce299f040952ae87411cd35680cfc1cdf524b1adaf705467d4194ba2133b2d852a9b973632c0eef650bd964023037889ffae6eb4f4d5df8115da392b0c7c4a5c78d6d70444ea3f3fc0799d1f21b51041187a69a749878c52bd0dd031fb00302047c435bb50066306402307edb93b83d7220df953005505b5ec9e39ef40a8f69812a305a1feb7092d0ca4a2739953c4e3d980dae2885ed0b068c34023011744b1840e987f944948f975cf9378df1a675e18fcd6de62c746815fd8e823f6d921e14d1e1728b52fd15a73febbf450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230690b3ecd3fa372f8556530ebe20b40dd4dfd9dc9887ee2d034a899a9bd33905c27fe69181fc285052e62e5fc345e92d9023100fec0d3689c26b49ea496fd2fdf62a6cfa411eed781a3355eb570ca87011a0dc9d4700fa5022866559bc64f8562a5292e0302047c435bb50067306502304fda1d2103a7aafbec499ccff6acccf9c28620eb6ebf8751a3566a833051328ed9e13d3aef1471c88dcff5de752b65dd023100e9a3a8505ed3f42b576b032cf103947b04f13ab9cedd9f929ce3e9833851d05e154883c57dc6786d84c536e1fcfedcbb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023017950e7679e808be55183f4211e245ee58731869b0a5bf224024ccd46ad9f327084c55a77d8f5225877c13438cab9fab0231009445b9b7845d1923a50a713df0030b39e8a7658abc3ec22886a6d3bd069278be8e60d38f80a33618f906543ffa92b3420302047c435bb5006630640230573b8b827fe8720cb5a458cd5f84592f48e370926908ed205f6badddcda76e24b9b218b5d9a915e6364284b15b9d8b680230602041832e147e9eec03f5c0bc18f1500af205ff1779f1763cf1d9f7161a66201c122861e9d10e63cc68507b9d7b243f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008056f176e3c3f2315ace1361304118e1f8ce444479f2cac9c717e067b07bc3ff1650a88c8a699ee607595d9240e40b0c0230079c1777e165f0749909e063114b4162574a56e9f49ed944f83bf76c46fa44133d37a287c162dc33e68c9ca504315db30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230794d6f481d2067a5e7cd5755ceba87fd62838080990824eccb2b8ff9d4739a5406f5d34e28024fdb0230fc4d9bf040d402305b9b6507549ade30be2ae8fcceccb2d5f6728b18a599ed68c6ec0d4420f758cbcd348259dff589739eefb4438438d3430302047c435bb500673065023100e62ae29c11b1aa939bfc2bfb6cd606310580a5a1332379911add24b3ec88278b5a254ac2048b6f1fcdfd785c0e4396ab0230239a1a0d340fb1be1ae6234352cd427e1a67fcee1e033ee715159ed1157248bc22666ceb4db5435c24ee82bf47b661cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301fd3dc9af112af1334eda1872c5e1c6545e119042bde1f4a649c690c16059a62230c6757829a29317361e3a729848541023016c0f14a3a16abe813a531d9e4f43c64424072778034786ecb2524fa42969e7e7d8a8bb7975e9453506ba50ea25e78040302047c435bb500673065023100d6a641a896a7247357b0d6e6d958a654afa4ceb680ad497cfc06b5fa42683f0051643590c2c8b56e29e563b2f706d30f0230107866a04b947909f8d5083020141a78cbdebfef5ea0ac71558b3567c1822932e4ec230f3b9b9cd7e2b6a513c5f661c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c74ab4eade65396360131053ffb31621b22e44eb2237e48496f4a6ad272de7e094edb119329ad9eaff27898ca42c8413023100b6866c24d2fc457d89000134dc32452a33f3b75bac88bc1d32169c459353d2118683055e43b1faceb60def3ee99712df0302047c435bb500683066023100f6e934bdd0a5634589b1aab8f1e204be7c6aacac441082d35ad80f64d55d65d33fb249ea00c28387655fd4a08209d87c02310083048e407e78281d5af9eb11212fbffbb113b0ac9ea1c7f33070070ed571aa601cdbe35cb2b773ecf8c7f8cd30e4f8590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c81bab79ffcad782fbbfb11d19e2b211271f89f096353c2854849ca4591eb0692671bc98356c763dff125048c5a31fd00230090e70e7b3f37f5a3695c459941874db8549b1c3102ae63ff07a788bd7ce1d5950bada14ce94e9ddaefc763a53acd5810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304078675bf5698747bbc91c22dab66f391b89c37b4658036d9b5ec870081fb7d95ff4590cfee85394f55584d3f6b4a1bc023100caec11497d9a577141ae609045f3bcab98fbb99e087902f671e2594133fc70b549661a001e0e3b4009466aed974e9a960302047c435bb500673065023100c37f635f2e440066eb2a45c0a29245a9ffe47633504d39dcb5b8ea414629865dde5a4da4df31ad6dd94ae33fc3588d6f0230330d7998da4b773d6c3d8465513bd06c1fd44f460f0370a241868684be762590780f93ed0c29330a95a29ab446e549fc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310090537369c07bebf1a742d8e7e87bdeeaffd07922a5aeca98dea328ca9f3c6016597607e9a445fe4e74b9af956fa0bf28023100ded26c4ffba99962687f99e59d8d1052f5686fba883336287b18ecd822685e58ecc49221ca794cbee09415eb43492a6b0302047c435bb5006830660231009b621c8547b1b5a9cfbb494ea7f7548d776f2bddf5595d5ec427bff5695daeec9e224c6d586d90221530001b4be38a7d023100a7f53853d61da79020ac00a3c87dccffc8818f6c5ef37f4a47a7afdde2ac5e12f556e5db6087912a058a0e3a91fbf2640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f0801284a9262fd34d1fcec8599b22252c72005751df8ebe08c86228804a57c1074091e91f3dce5f18e4c1692ce5eb8f02304c6f1e13875e4f5dba39ce7880294ca1c7fb240760158e5554dd4baeb4314aa78852f6db19dd71bcb7943868169962a30302047c435bb500673065023063bfd50f3ded094ed7c6fd5f8f4a1d5bb5e1f515c66ba4cbba44c4afad6cea07a33cf09299840ecf2a2f0458824e5094023100b467266a1fbec1e717367cc320c567a34bd21d35c72665cf37999302cb9d6ef11b0c49ea4db4b1aa25adf4bce0d2dc4c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303c3eb0403aa63ad9957a9b7955acdd32b4ed1dd17475866a970fe7c240597b0260e47520343fca3629e5a6b542126cfc02304e6a132ceb894df4713125e6828d579241874acd4ab3ee0734f70487cc96c5cfa68f170c95ecc429104d66a087a47a010302047c435bb500683066023100a58df8b6baf9767658a2552d7186ba5f11704889e212cf2df0c06bbe3a4ae80d638a052e1cac48c7234bb5a80069f7790231008e73ba12a12b9ca9fd546e9cb636d3dda4627e2adce721da1d9322fd1badb80e5ea3ea00a1b87c2fc88055966ebeb6bb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4137179a39ead77c96fe020602aaf19d0322bcb0377b469d7b7d0b5c10ca55d1c577fa54179c8cf668e6ecbfba3023b023100ce5c6ca3205d6a939a860c01e50db1ede3e04c8d79138a781fcad7ebd247e0b28b9e99f8627ebc55466a0f33faf22fee0302047c435bb500683066023100abeaf85c6ff04289f07690b0a41b8b86c23acda3774ec02c4518aaadfce544989e3815787c9bbd9eb213a3ad65b64a6c02310085686fbe1bf5f7584245aea3da3cce1f6cc4578349749b1f8b28c519543458e13ca5c48611c29d7a9bcf48e77cbc621e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc21469ad82fab8153a61d998284ede421492052228bfcc22d3dcc87294e5c2eb4d8cb166c49a63157eff57296a7521f023100b9a2b6583eb6adf764d187c4fd690e0a6f79045babae03cc615430fc870ba9df94b08e4e6a7562fc523d4a8d9c4e83280302047c435bb500683066023100dd315b20bb6b37bdb1286bd9d34da23a1e4d8d696e513f127c70068a58973ee5a7fcec2113c337422e8237d42241507202310080a490a0409961c2e49602dd8a5fb491aeececdfd461fb66a1bf703c3cb8e139bba910ac2e94a7eca852df032b0da17e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230795c09ab79f52e7188165356e8b4a993ea4061d0b29cf639da01cdadc90415b3d1b0b284eae76e33df87270556539149023040871ab201dca6eb1be8f8c345190d85d71ed6c8f4280e38c57345f2fefe1bf3914e9f0c4cd1fc20bab4a055b47d8f600302047c435bb500683066023100caffcc26c0794b4b030b7c07cdffdb820487c28e782330e4e846c3808f26b6e1249b69f5a949e50951fd4059b7c263580231008f1b03f387d74f1b3fca912fc22ec03b10218ea1749a28c5c49b14904a55a4821e9c0bfef0556d416457ed4239bcafd90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230607260698df06c25b2a96ce0d73f41dc9cac10b6616c5452257fda38d41d639445eb137d21d17daac7ba3b2291bf445e023100f38691168446e64ad63c336a73e3d73c8275eccd58deaf679e289fdfe492b9d2e8307923f4d0eb1b6e326e5482518c360302047c435bb50066306402303c13b11ae9b425acac2b3249fad13b07fd9cafc4420c8729c9bcd0ce15a5f49536a0e8c66603cae53ae4f30be01c491f02306161669a170bd823988897912a750e70807872cb4d69679c94255ffcb3c924f64e55a602967f7073779caaa2fa22d5970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ae97747c211cc3160d60d3ffc112bf8151be5e2a368d48f6dfb62b9431b0e4ab71e1b6e1cc80bb82ff17df706a23d9aa02301b37c7edca0c49acdd18b4e7c2ed16b0d8bf04ea75b2aded5fcfffdfab68fdf154fb1a76afda65abc921e2acb78ad7f80302047c435bb500663064023007690f4db2253ceb12af55253dd9510d5d955affdccd6b71307dad4ea36183e4dd76fe47cc330a5e9928847376ad3c6c023078d2c4065169b254795579d3c2005fcc22b3abf56e271fc56f6bc170645456f3efc034a253e2aa565c18b1f3d1b1e2de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301ce364335ca1c526442bace8c83b0f77ad3143abb4dc04bb38e3adf2d688bc96469f7b8a13874b3a51b89af6a1fabb08023067384627dcf9b99d174e24c109274a4dbed03ac701c77096b2218bacf12e9e09e512dcac88efff01c1bb8eec93087aab0302047c435bb500683066023100ba9cdb0341cf2abd3e09bac0bea30bea9b197c7f2472898687a96fd7e62bfc1d629fb2b0c09e1d11d59b5257a02d48ba02310090403acab013c636b0d9a8e746848680cd23d87b44e09eb283d6c4296502a0ca5a8c9ba5a7742420dd6843bcac17ccb80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230201f2319ac007dcf89f33a4b54cd3b4bf5ba9eade05e819048372028bc658b27bb8a0e52b9d4fb37d9edfa003cd55bba023001bf56b2515d7b2a2e1942ac10ca63454bf6b884df9b0c38df28058409e1cffa4b3bd6a0f4362620fd98bde654d606020302047c435bb5006830660231009c32d64a666b83f54fe97a4be78de1b714ec11d884e420a04f3542138354b0d489e80a667b43724b1ad27d74fd900f2c023100a66653eb52ff0623f7189d6b6d92568606f25ec7b9be98cfd3e120b7001958f2eaf62ea994573dd56ac9315b28d780e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305318e4389b82aac8800ddbf1b967945a416faedef48d4755e2bddbe28c6647e98ff80218b038b9b245752e77d8a5fa67023100d42f8bc58bd0879e5c5bcf5733d8c41e8605432115f37cad4de771659b50c542468e02d43c956fe3e82c2ea9f6bc417e0302047c435bb500673065023100bc92ef5347db1d91ee5a0525dd24a8ace0c18be51f10f171a43a2b14ba08a11d3a95dce964c1b6a8c00fe209116d16ad02303c0454a314d7264fbc12296fd5084dd06fa992899f000810587fa4843f78f020d2e3f102ddd7634d328edcbee7465d720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230297798c5cbe3d34d645ffd0374f24ba003016c885e7e8b6b35f52518f521bc5c06c97017958344aa8cd9d941fbd5477b023100d0196da1036c93bb3830e282dfa080c9636fbea1dd1320e1a774525addd01e6f6fe96d2b31e2010641095b4935736ad40302047c435bb50066306402300b4d8e513b1969721a82aa1e29464a732914ccf4d5284dc5b2831fa01932e6fc67cd39adda4e9301fd72580d4b7d9af3023068d179e755b346584553ba3648f8b6852947d947167ec15487bc29fc2f5382054f9245d4eefe0b6c6577233ecfeedd5b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f7ba2dbcdef92882a217a7714d385c105d417415a6c58b1e26132536cbad21ad7423a9769e94d7899983b60204bd860f0230250b243b7ff45e6050bc7f01d714f4baccc1e4dadb7d7ed4551b483b564fa12047c553d1e3bddf1417866b3d8c538c7a0302047c435bb500673065023100d7550d704c6f90ae3714a2ba70b591e20140e88bd44ee0875dc145cd37a76cbfcd8a2055b877085262ac63e700f58103023035cfa369efe794a5e54b3ac169f02777f9ff2fb1eb01e55e08bf3072a87736773d03231c1958c436536f869982ed85950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d3a38b3f8a5e2f84554886a167e68f6802737f933ec78d458e13c2e5fec41103c5e0f859884e37be97be5cadd93c20880230142ef98588143ad0aacf2cb687049d742478ef2b26fcea8173a65756cfaba29a47d39c1e3691519222630f043cea94a80302047c435bb500663064023035beeae33f44ad8a58ab6e579c96695f030d3683f4347f1c8c2951e3054b1366174da881c2c18f9147598f15f98e7a76023001a9baecb34e90c052547d1c3d2fbaf6c6c2918898002fdb2323cf26a489603657cc74c88ea46d076ced41e880cf57e00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fbf18811cbcceca164e6d3e5bf3ac309d7778130aacf1afce841094a41ceb629a60154cb7cd86ce18d200a495ed848d802301083a1ec7048687211d9dec94e5309769fc30da6dc358553b22601e3691a3c5b078ef1fccb5d6a2c22be099eff9a93710302047c435bb500683066023100b55e155da4f4925edfcaae8ad26fa44816fd2a503e22b72379313731000e917738c5c8d382f1e4e347ed0ed4c7577a02023100ad7d070d1a17447dbcc813dddf569ec69d19eb9ab413f3e602325a71f8a67fd271783b45ef2c538c3d42c7f88198bbc00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009cc2576ef539b5a09e84231337125937254f4bc1e07af1eac399f3fb44596b164a4673a431720343dcad84693446de180230628c402538ec8231f2585e0d08ab400f9e0ddbed17cdf3ebd730daf1188e4d44718408d4afceeec7411f003a093b94ae0302047c435bb500683066023100fa404ea4431c4cb817c9a69dcc6890cbd3b235b2c70a83c659677d821b165fea63375f8040731b43f537077492885d9202310094f1b235c4aa09344b8468b6c8f4e16e1657eeab40a9b390bb8dd5124276466f01b836b033dce7b8b67bf5496be75ba80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023021f3d603fd5d7e68a7499079ac07303a4d8bb9f1a47fdb88a8e3621bf3d07a14ff315494974759c96dbb73a0d205846b0231009a8ae5e7592f0cd15c390171978d105124f02c721a7a6d4c5ed4eee74a1f1f973e4dbd9adf6e51a811b4def77477a2fc0302047c435bb500673065023100aa786bd08973353607a0e1a4dda3acee3350b6226ecdb9b41f9b4346d392183d21c5731510adce029e303412c6f76dfa02300f961a209a530ade020855ea0b23e97695d63cb37bcfb6ce74bd363db5a8ad42d90b04a291f6aac04c34e18741583f4c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303e7c5bac4515df9dcaa290e620513b4859c565826d0c672d08d02a6ecf8ec0cb47ddb48e90daa2842c6b5d464f80e98002310097b36f09bf7ec341c1c5dbb0472368f13ea28f873f1452b5c9286c9fd5eb62ccdf253623e30e32437c42090fa9b540c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e906bb49e05842a1fdc780f4fe6a09831e46b118f4764c7b9c4873e1b3f3f1b8c49545270d983df72f6d5b4a8a054174023100d2194308661e360844f6056be7a93c4bb0adf8e4d71896df87bbea04a74e070ee7b8c7e7189fce7d2a7f3cdde1ab082d0302047c435bb50066306402304d78d69957eda2217857fc154b6c9b5d0ba996c81b3fd7ff5462f520ceaebc7f5ecb73d33a98e63bd193a6523411ce0802305349373304c98d0fd696fc9ad1498f315761900c36e78135a7eca6e844c6e107d6653a91bb0820e14cd48555f9185f030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ead5d42482db0d8bd8ee5052525ae038d29e6ddad5f12faaa89184cca1ea3d1e32927ef197a9077b3cf277cc826d9526023038fbce99389f72cc951af9730ef369f18911cae09c62cd3639f635344bb6345096058cf1f3d4c481c78ac821bab39f010302047c435bb50067306502307477c797c01a76350d372c25073ae409ae2770363606a446c3eecdc949ca885bf599e3efe4b1faebb9166c2a149bc549023100ec8c346e912ef190f0647e69196f2f60eab44026f7ff17319a7990a93093e57b984d9c56cd862a358f3eb0f72d3bc1240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb334387624c07bb093e30e4b5ff15b2eb4152c8344da921b76877eec7e78011fdb3a5aa3e2688b16e89860a189a2716023048747efb496b99aa17630046b20aa0a19a37da6802c9b2026e897f37df3089a08f512a999e13987590847b9f40faf1cc0302047c435bb5006730650231009215fbf7f3c8e22e806dad51c9e343565e02dd1c6dd294ca01d7527f5c532ca2e52657c45fdbf6b32c1559f2c847c40d0230491426e9c714ada1a9a5391b9cb13f68e78d4d2691da96a669d3a3df6371373eb3bad0118948e4224671c6838ac22e9e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310097e41e4a5d04c70727b69cd5ded8753a2f338c4f9cd1bd9bff2a2da4328a042fdf6eb42fcd4d85755862c8267465cfe4023100d9cae167c9573d34a6b6c1e8f20cd1b0717e3ccb5a0e8336c1608e5342e29204b2f78c0852017408e4a98c03534766cd0302047c435bb5006830660231008fe50a8eb5d1ca1feba02899587dbc300af16bee0da25287ae15b69b057f453881fe010f89479e74e718a5c9469c9a58023100f6e966b0f22e18664bafd109ee541d112737ade5586c808749e6395ebaad8bafc37976a0058b0ff1b84feeb80bfea75a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e907ad5866d9301c71255bc2c8c74946658260460ef87f6f8a161ee21ece2f8d0845566d3230c7bb4e7e18b5235ea8f802302f9aa23262a804acc0c9f7a188ca78d10762dd054fbe4393ee3b257a3c31c67878df963baed55e9e9f24e1c970f80fb90302047c435bb50067306502306ae15df97ba15a266790fd1c0499f7493d34822a6e601c104097742f51e7c8d70a69d2dca82ecf382b723e1d030628bd023100e30a1d8fe11bfc39898d9d665960101e0a6c44304d3e80394a58f5b1a6760bf4caf3a95d3d4e42ea353896ea81803c360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304c89ce76570739cb42f286c75c025426f91543109a42332c6f2214fcad4c7a80a1295c4f076314390eb7596c43176c3302310080dc30437e0b5abb2d571c0671233b32ef1cc456304d96cf36dfb75aae297bfe4df32ecbcfca16fefe062c0344a6b8230302047c435bb5006730650231009d4e2a2e543821f8d7e8884c54398755d766ab355c741045f41a03ab22bc5f591b38ac907ae5b965b95fdc6f5d7fb5f1023011abad9b20ac1f0757a6f31d2011379fe1cbe406849e0c968c41b0fe90384fe01f6c93ba40f70a6f9bdade6784cd9b380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310088d0efba1d41d9ec7bf8f6c3b72aac7197387b51d625dd742da4b0d1335c299ff8ca3ba5e37436000deecc78287f21d402301f618bc22e3219217792645f40319ab5c35be9447de76dded4aec00da7eb9219f56000172aa5d03066f9ae9c9a50c6e10302047c435bb500683066023100e72e026f7a9d487c5c001d73cfeac9a879cc96a37f144b7febdee316d75117ddeb6673480e8715bb2314cf9ca740d20e023100bc2073de1837ecacee533741b2bea3f73e21db2d51ec3efe4b385fbdfe31835ac45d66da157912ce432b776d97fd8efd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302931385ff3635d588ebfd4bc48d007e2f29690ceb7221b8d6b927156a82169b16870c66775c05d072adbbad5ff384f4a023100b69f73d0922dabcf3cfb2ef35449a0fb0b1c06cedfe1caa4ca634181fd10b24259e4fa36ffc916c80567ff3c388a63080302047c435bb500673065023021421023a873920ee6d469ed018217e1cf8a6abe8911589e11d299dc24af9afcf8fb6fc04761e89748bb7a2ebfe84d2d023100cf5fd257d1c4c4f0907b12795c0c4afe368bd8e0a0433411a2b33a0590780af57f05cd1c8c3013ec0b9da459d76f983e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008dcb263019242cf7ff29d904f586fe8374b774c5af347b8bdd650f2ddc9ec4ebc04778f3441cdb6392e330fe9b3efdcb023100b93d9d38c0f5a8184c3e05457bd37ad91893d5672935e6bc55192380ec43b26e27eb7e244f66bc9c5aa4b480d700ceaa0302047c435bb500673065023100ae8a530a91f003aa2fe89025b0d7eb27ef133768f2ab77f1cddb19d8fcf13bf18cf5c164a43501aa7e5a89389fba9db0023062edc1d62bba6d90265a3f68f06851650b56d13c4527f3260abb6e0c626f78da20b08b2c873941010536c320f2b69cbc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dadf3e122f344a77e44ca542cddfcc8f69aac734e2661e4e8dcf89b2d636af50d6bb982cc90905688da906b2d2de42f7023100d66195cc8b205dd07f420acace88b3f287cb0e0c4eb4c9976675cba3304664979320f3d98b6899bda501ac0e23f8d9d60302047c435bb500683066023100dd12b51f95cc52b848201d2bb186d54b7b9b8e2b41f8241c17b621fab9611aa3832ec747a597171fccd9bb9d019e6077023100f68fcce3fe53ce1b27c7912585421ddc3e8b1de25f34d93b95d4775c41fd31f9247a409bb467debdf893a7f7c3cde75a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100961c362a41d8834734cede6d2a634eaa3b4752ae8333e322338cc212c434f266aeaeb73d51f934e8d939b0f7af9b79640230760220b9251b910f4ef30a55c3f7d8de47ab79c846558b06099f80c2e52727c9dd330b94a1cb47e62abd5b804bdf58b80302047c435bb500673065023100b50c55515415eb4630597e1c7fefaf6dfd5bf3dcf53675ab9935e8bdce31f4153f9245b4a5e887fb8871b0f7d52b0e1b02306ca13843840b9e259d9f826b6c565b13a45ee1a844325b25dd90d3c3487836938218e1ada4525b79d5c725669f40d9a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230342df739e75b4c94ee10f2762fec8203de7c6a2126cf6fb231f2f7e269f0bab3e7a05d6901a3a7292fecb9287bbe4124023100ebdba9094dc22faaf1abfbccc3a87622ee9fdedb1873b4a323bdbb8454b4cad624cbdf6624b0ae7938c58725a902d11b0302047c435bb500683066023100faea914618576b1d3c3c954c69779e0a094551008fcac57987493e514d432811d1f1b5a2e218b80108fd60c5864ba13b023100dddcdecf60eca426534625c85cd9b5c1bdc1e37bfaa7d2228d67e4d430ff37ef3c8c07837b0e78ebc27cb740141200100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306121914e22a033d6a725b986663eb29177d07a12bd289df7a0de2596a4f46e76c4f767c6c9753353dd5e11080ff3e07d023100a2f0a706ebb513c0fdfa27a885432e501b740297778000a8080cb0975008f69e97ead10853cd9ba85cb2b7d839cf875f0302047c435bb50067306502310094820d90c4076f6bd0aef9d101a71b8a31de3d522f440aa731ef21a5d6ea28dea68a857dffef6459e3faf92a1496f3d7023042f26e0fc8d66fb7f641a0004021a139564f8b9f5654ddd8896c7778d8c9ff4e5fcb6bd61ea772f90dc858349f0b01000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306f84041d766b031b5f48fd352ee568c8103ec7611346e9bae24754cff02bd34548972583a925f4d062763e82894799c7023100df02bc6657a5ceeb91194b5f3b9a4a7082dac590f8ab5f6729f68d266d1aa8b8f8fcc422c53500706dd279b9214444af0302047c435bb500663064023020d964751e2f7c241f26c00a0e7e51daf2b8f1c51c8424fa1fa5eae7f0b39f60d815a174b00926141e9f231ae2f21e8a023072c1be63a3d550b3f698922a65fce594c5b726fbe3d254a67c1838538edb58ace2fce47a1e94f22d53882f850aadc56a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023009d26fc0d2c6316b9efacaa6dc8c977b3e54a6f2a5369a36136acd3850e830fc7f8c32c8e188a39fffd8a8d0cdf9246302305e12f96b20fb8448b61aa9dd247074f625ca8406374cf51273adc08e7cef7d3d99d528d6eac7f60802bc3f6555538f270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307a1b22fa7d4925c451a6a271734ddeb3c757b60b88f88e40ef82072d3c6e66d5c2a46f41de9247bc142fedea0cba0411023100b536a94c2abdc8da633717a5cb912f90db7696736c4f19215a5d06299117f0b50ddbd4ef4f94e0270784711d4161a7e10302047c435bb50067306502310098d7766161231bf04a60e434e8b6f27e81b695c540bbe9de948103abf5081ceadd8b3c8dc0ad7d05e514927c1f90eb4502303f1fe60a938372e8f1c98770fda12da8a0966bbbd48ae3e82d7428b660ac10f992a3bd93490c8d3ed0ab591bdf7afeb00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d2c13ac573cf9562aa5c58d283762fa7df5fe05d15f8f4287a47f2878175a738755b994296b5112abd2c45b65e4a8a8023100c1d9566e38545c8cd58aed5bfe23a76421a94ad733eaad52c35210142ef0b2c7ed3d780c1687f00bf571dbdbc791a0450302047c435bb500663064023050fca5e6429113421cdd0cd47cd62415f0c1a175ac1ac75063af01cd691c7f5f047a3abcb284eac739f83bbbe1786d3f023011b1fde9fc62994eeeb0b7432d6a2f7c6ec98455118f4e5760692e7f84eacfd9d6a1918ca95fee657611ca83ff579dfd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008f4559e8aa3c10a0ffbc154462aac2c112fcadda915fa5df16d582d09b106678cf1a652aa4b1270c9822ce0eb63fc55b023051dfedd6b563a4f47f72bb3d5713513d6fe2c7c6373af8e844cfd1787a4a9958e8eac46c52c841677188df93328a3d3f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230034967b6e9c80b1e9a364a9e2e979f8f66d8d93f099ec1d892fa26826944ff93d8571968b8847a0d0dd61e5e8aa921d30231008a9acc0888059ad6b7347a12c363edce0deb146c3db1bde28bbd67555027b191bb81842ca361a5076a3cbbb5754a6d4f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006530630230700ba8089891689fb819c9af42d4fe7f78a43d633aaae357865b2122701c8271a31f8d6f63b5fe7420d98d95e9fc8692022f31061bb8438bb43951cb8abaeb22818eb498adf60e82165aed6088cf34610c5db2de1912abca5c10b40c2f2c9a91b50302047c435bb50066306402300ab26570c10b32979687a2cbde701ef45d3b4cc799e7a323a46dd8ec3ab746e29204e008c8540daf3beecb42f1e91a6d023025542086084b44348e65a2cea2e4cb41031dff37ab5e3759aff07270c1fd0efc3c2a80436fc2453dfbe30c2d0bb5304d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300694f0a882ef609e6f2c933a34494142e66b4d9735deaca44079b9d034fbddbf741d05640a7cbeda765daa1c7b8e960202307aad70d499215c4dd3e643bd5977da74a31c9cff78b233b7e73db8e70062c2023949144748bfe581ea6c2c10d09923fe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f550955d938e276aeee9e13ea762b20814f7dc8347fa0b81264f2f132ee528eb91224d5f50210ba94052469bf99a8242023100d72689bab0837f0426e59409370c3dfc335f97416a4a36adf5da4a0426e868f53c090de58037d4caa39e61d03f7821160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023030b7a36aa3ef741737b994c21b28a6990f11d20387dd834607f7ca8ef939233af0e9ee64b4c4fc817c8c14311341661c02302762c9b3fb3ce9f83732b89c40366bdac824065de68f81f2c53c3b53a79f520783b0d235d77106ccdaba9aef96912e9e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2bbe57b66656b8495ac3633bc6c1e7ff65f09fb56eec3d2327410443ca445a06147a40c9fd5c5ffde83c3eace70e5a102302648a287f01b541448ca2a98db85f7ea0bf2330a3b5567d3e3a240e75130f989dd4e2a03b0d3eac0d32b894597054d7c0302047c435bb500673065023100f5de0acc3ae31bab51c2de9233583c9c2576d3079024e3f823e89ee8406b8ebc794a871839cd2c9a58f856bc17da7ef902304bdc190f1d868e0a9a0591c20e005ddbbf960baf7d03b03e2ff8d12d14cd2b85de1c86943bec9719a6f2f991e42c9d330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c7215a1c9932e9693d323cceeda30b24e7ad7362e103f76eaf84e358c71023094754445f322edd4e46dc8f030962a51102306f40b6acc7338b9b33c965759eabe68520ec79c10660269aac3a8aabdb5d04f977c93a6df789ca007d76586ba6f06b4c0302047c435bb500673065023100ab24934e49d144697e238f3a802830b8636050599695cd39e6bde9e644781664c0cf79d93d9c9ccc03471ef81aee5e5a02307a2d43932b6da53e0cfaf5ba6974fc1c7d3fda2edf7c0174a2be017e7e0c5762d46c794fc2b744e633d668009788549c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100948a08a1b056797895394ac5db2d7e10d86b4d35718fb23211477a61cf9e61af5b234f32ae6e94f9a658c430b874cab40230057806ea5c179624be6bf6f5ab73c90836e13f990e4fabf9bfbd9d6f1db6b0087bdd0808916c2cfd533d50fb719249490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230226f53b637de4d2165aa178e8d27924f32d2bb9fd198401247a62eff5cec2ca487dfe549751a57f1a30a41f428d3d23e023022fa06b732ea580ef1794d5f2203134a7d06acda664483d6d828e2345df9853ca37d2ee92dd9d0e51da4b3c29eb4cad50302047c435bb5006730650230043fb623f50ae98d09e62a39f79587960a96373f86b10c23767d003f122b5438bc0dc8245ebce41b0cbdc0a9417ddb6a023100893036cf547ec71ab338b060059b4c54ccaa9ee9602c39d63014dfd2fc1f65588d734f6f76ab434464ad2de1b18de69b0302047c435bb500673065023100952e7ebe16fc5534655bc1241354cd44aca5903bb5cc1888c028294eefabcd1123475f456e5a1e53eebf93aa585a122002304cd2bb565f578907dfae042b6fa4f76e5f92851e83baea103d5c0c17c5c760818cef13b524bd96c45e3fd53b273fb1500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023005a31d61c3d8ecdea954e9b496f2b712041fb1e955d7e313e585edad809a1eed786cd53c68fa61258b721a1d90472856023100f02a09335eeae0c02bb8257ef14da1ae5a88317f1418ea3bca99135daead85ce1e33bd125718b4f03f278d19b93d12b90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230626d7c419e1face31c081ffab390abfdad8f0fdd7075a0cd42a26a7bba976adc626f0c7cae3fdac713f31f3f3157049d023100b89f261fa8658a36c57650b0986221763e4640c1fb177b17ba24a5115544abdc260165f0b5642829ac067c352e28a0d20302047c435bb500673065023076d77169298ca849c59091c91f38949d577f19708d33f0fc2e1f4e87f000f2a0f017932db63febef66e5571c923826b9023100e3c64ff6bc49574fe540c3603a14f7fabd9d20bb87b56bcee067aaac03101a98e3c9165085dca5c0a6956303952754b60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023078b6d3f517c9f68d877ec1de5b1da4088a05c083e34a7f6f1e16a6b8072adb7df7a22863679722ef4bb4b479af2da48a023100f9ccc9d424264d7478b3c31dbadfb193aa8e1ef5b5e7205bc4cd163ef4b0dd666a039c74291c44c429f3e1fee19bfdd40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307e4741123489d32c63b5db1c11a1306b0c187794a97a25ab7ee0542a2a9cac8e5049de1fadfd9168b725644e0a48e2d6023100f96c2b53863a46028ab8319bd10bb3ebee0f0d7d0c49ec1da1fb5fac7762560969a86cda901de3daef6a86b96f13899d0302047c435bb500683066023100ca57f7de7b73500b94b5ec873064a5185b5781c18ccd0c25fdd3f1e4d6ab9001f3dc76d24a011611358f19e7a6f45d5e0231008052dad7e13d0bcdb4c3c449d0402aac5802db42b24e43a4ee3136909b6dc66d85e48a21dd8c47b4219ba03ceeca83910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230374b022c9af68be4d40936521ea5de8947f324a2f165cd85162a7cd6c2aaf717632783d0eb627f9a25156fba4d6d7bfd023100ee21f0d7bc9b4aa994d78d0075ac1122c8c11ee3f3f3d95314d5aa36513a51d390425f78500dd57f11754bb68e7771a70302047c435bb50067306502300ab2b6ce7a3c13dd02058a143026df80c5b71664230bc3799aad39151642cb4f774021fac0e2e8da7a75ae5f12c9a965023100baf84dbd2b4c2670053f4ff2fd3296c8658f33ed3ae35aa841f9b852c5419281cd749ee094704568e64937d5a8748df00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230219ffde43ed8f91754c1d752997ac8cc86d6ff530a6e214ddb398a1f231154edac225f2e07073717d3ea910ec05297d602304d1a28ebdf6bc13129d902de6c37122adda2db221728cad1bcb13938a5785de0b3183e772b65f6e6a50925ff030d9a930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b93add2283a8b301c2b8881b990ef31ff9bf1c4db03d998ebf56c7cb93fb58b91a95475a7a00945eee47886ad86726d402304a68d992517e4d852155ebc70746eadf9a18a95a557cd777acfbe1123b6ee3145133f679dfd40c13a73068096826c42d0302047c435bb500683066023100afa556ab30ca0cf42e2a66b6c07b6d08aa2f99ec694962fecab54d268cb0317a23f277728b9e6a6266d335a951978cf3023100afda30fda0022eb5a44cb1b5e88e2fab5d2b0800ad908a17d9be3021ee7fedcaa1b8299e7044db29afbff95b07724d580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302707ffc35ad8702718f232822607c79e30d066475b7091c3057b3085e0aa0ce96e7865c97340c4645e94ffdb56f4bdf902307e3b8bed5415ba66b0dcd34393eaaa5087fbdad695ffd1f712014ba6888369e2a5343f32570ef29854ad8522217ee8ca0302047c435bb50067306502303d2afdec8108c1d7a0cd6c336e65f770f99188d4bd2322d3285766960bedaeb27a68c0cb16abe23c177fa9de42504e68023100f552ca9e4b866e2493988081b9b491d0c3bef8de11e30038520d64868beaeeb48057d12b6a14a6d9f4f5a20952916ea70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a994747034f41572d23073a40dbfa78729c03148509fb92240f7bba08cbe92370353e695231598adaa06e7faed022725023100b2ff5614499bfd158ea9c10f2e6d4ac3c3e7bc2a8e9b5e9c9a3589b285c5093bdfc6ef0851527c764036667913e350660302047c435bb50068306602310094db308892c6afa8d9a867c9182611c3fd9fff4f598bf0ba3df782febb0dec8b5d97d1e80a3d2aa8220bbd163bf91e4d023100890a2f114aabc11c027987ed1f6de85b3743242841ab6eb51d80a49a503eee95e0ed64745ff946c81ff6a6691cef79380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302745ab4bfa1929497aafebae00e510dd85aba580d76b2b3a64777b0f1bf1c0bd558dd840093d579e750dad53f1792bef023100ecb90f3aad206052f783c6e558e8d27f0de0701616775266232b9d2818fddf47b1b0b073dedec00722592d5c4e820aba0302047c435bb50067306502307dbed239a479c0a23ef0be7098215032e4b29e2af5221be4238a47f6984fceaaee1c9fe79262e7b528b925a780204237023100b2ffb06ded1aab6daa6017da05b7f0659de6218021da8c958c18cc6b772d5e4ad24effe46c171a2cca7acb69312bf7a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d09de690976efe4a4fd0a8c203fba8e3849e1d135617de24c84b6fb5bdb503bfd151b5b2e0646fbf1057cbe4b445a59b023100e81c9d5daf281df1f1be6560a7b3b842167f3bbc7a633a35847f90be618343b76950c6c09838103768d1b5e29a13039f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a4d4982903c0d87797f3cc5d1c8feacc1e8df95d21aee96eeab9eeddd05e0a487ade2ea73bf5eae9a7900250249d1fc5023100a2f188b43cc0c0456778527702820be36b43f450bb9caaaf45ef5d86aaeb13a90ad34f1ff6bae5f734ca2b3b04a985cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e77b0e35d0e8c0b1db475749a5f6b2e486a93489e55b2e3832b8b2f5cd9b8719ed26acc7abc8776df56e61e02d3e7b14023038088a5df1d0053e15a6f265370701c7ec28731a77177a77f84fe3c0abea6857198d7055057602c4cc28f1cf5987e1600302047c435bb500663064023054ae0e1a4525219e50e431e9f1fdce43818eba1ffc0ecbd0f9722d5b31aca6ebc1f6222f99b4e2b550888cfb15f064c702301b60c178b83c4a3d93efe5a537c84c18e1be0239323f635e79f2ba6ecbc2c8ba699c956755962af4957cc91302f4084b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304486a9804363f74fd28c68787170cffc45f156acc5627c6729dfc1a54f7b8155186bc173248d6df4b274f957dc18139a023009e3f05c3a8816edbc8f7d415b62ce433ea1f77fa12ba7f952ca0b390ec60ef65a91476708702f9e1a78dfbb5cddb24e0302047c435bb500683066023100cd30eae5bd442c89a97566a765386db15d8bf4f46041b6a8f29a9536a71f788370bfb12bf303669399db0043caa93dbd023100f976257ee932340e76122e87c2395725b984b34744e5c3360db78388179358adc144246aa1b75e453bf1c6a050f2acdd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f7c2754521719813f8510ab07f9ac3be02b1cdccb6e1498577b8d654f04efd46d5ffa533d43c0e143c56acae29ffc921023100a346ae3ffbf6f792e92998c3dfc583e13d18c9443e5c733a7963d7404161072da5b11dd12d8ffd3774b5d04d3d3bd6c10302047c435bb500663064023016d66eb9ef94f6f58b12aa35895710ef7993b7d2826bb680508b89856b9a336a676c5a62fc18102503006955d741933f023066e9d1bd00866950bbb5ee24d011d08f31610d4476a8ee0051542a2f0997c2a8af20920a3b736cb46163660ec46f7f090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230510e6681c5992fb4fe3a3d385a842c2b2b3125ac91c68c0f1927c0acf5c4408dddc80a24bb73464e31c7310c7d8b22c9023050a5de10d8cd9e021619ad8229359eb6b98ed1778cf50f05ba35e95f9f4d4e346bb6289e0dfbdc1ac4589aa146d7fb940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302ee69c389c501d0f8bbe84ef5d822b1a857a32de930a4953bed85ba6d3979c95d4f77fc5ddcc33aa71aa69016e3aef66023100b75fa20e854e60dd0a952bb9455941926f807504e8fe32497d6930c20bf0dee0bfc076c480525950142f058f3e220b6d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301665f8ac315d8980aba380cbb56835c904cc8af13bcb5a9baef2cc22bc0333dba7790794d4d7217c0e8f03851a1c3fa8023100d48a060ffb4ce21c3213e257d84ff9a7187596e6684a3592c8a8e739de8917942424c964e4c4e4dbb44c96d43e5f41eb0302047c435bb5006730650230191a46a6a1cef0d53a01e1373a247a8307916403112c86792e6bc5462a8eb7878de9792674e46a319b660188c052f7b4023100e393b1201989e723d8ca0f4e76a2eae2fc3a7a7dfe08df79a229e12ff1e07aeab61fd38ca13dc87a5654bf2b128e27090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023059548c5749e7d7eb959f504e0f5cdd52f8283388dfaceb6ade36012652ff3265194da96f1a4034fafab516e0f3ccfcc6023100c44259e2f442840a66e265d3497c9599d016a85b384bf8280312c31726c86c5b045f62e2569646f3880c2cd66eedf5e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023007ce679c5c9c2446cf5092f064affd46f6920358bd5cdb135125cb862cb827685a9bc201df0ece5f9dd42ea39602500402310095337c3f786e1557e31ac81d1b17fc2c1258a6b1881a30f2cf387d10249e3ee567bc5a811274eb372cd05d86853ec9630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d6feb7034bf1b8f9db4e195079dea540d406f057ad966ae05313039599c1a11af52a927ef8aa2eb91531452fda8ff140023100848eb782a4abd0fa798a1101a860038e1b05bfde8b4fdb6413f8713dfbb8a5d5c87828a4d033ac058cf0b2f126d72f530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ac5e7e7a24f05cad3b50e57a54119bc5e70dc4d06658a19079e729984aa1af19f813e7ee2c7f442eee4e20bfb97699e9023100cc1e0b3b0d533033577ba7a25d7d5d7df2a0d0cdc907f1e4825c5340197c74a0351d22a0b1328092d0e4e439dcc2d98c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230009435a1f1507b1863f29cb5a3247957db14409a51111579fbd99038ca0b59333f325e5446f95a850a0f1e6d8fc60c590231009b8d9aff7f36fa3ef4c3e9fe3783320f03a967ffd4c0299c44877c7c80b3940b7a079a47d9a7470ec55a77ddf0d077520302047c435bb500683066023100ad8e61a4b5d3446054b879f21aae419c1b48b6cb57255941115aaa03b5d78c330e3bd26a3ddcece96bbac1e0e120e1bd023100fdebe6ba592cb9df77da75860faa6774dbc6dbf800df17258c3c49da4c7b209a93541384159d98fccacbbe804dbaa0ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230514ee5dcaeba38eb7499e86346fee33af2e6721d8a186478c406ba4bfd00c375ebae63f10a1397ff63357d1ed684e59c02303d1f929c3e6ca22af59cc049ea3437f4b9178a833324f103f13a1b3140fe42135a659b4b3ec47c0d0906335fdac657990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023027e713a69b0afff4216f42a864305f1e91c5138fcfcc22d7c827a997022dbed24cc41e99b1a01e47261ccc1791a44593023100e3ca1ef61537203310edf8607990285ea27fabbc095b5c4681dc8f5a103d976d0717bf3de23a53ca99e9bbfd9e4b6b740302047c435bb500683066023100f670addb1e40f088f996411cd3dae9a7c43046fa1723bf25bbb621c7d44eb0ecca6b1587b18e4e03378a371d2531c028023100bb396d6b97266c4fc613f703bbc66c6fe6808b50b92f51c92cbf93aa1c0e663556fa8c7a03b6f228cc6104154a101f060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f817cb18895aa36db0479868d28104e18899c7205eac6315e10fa1d720e2cac2e40bf715d50bcdade4fb2a4665d04cfd02300114af42ca7860d2b3fbe2a05b37f78a2c8a256300c5ead0ba4a21c81547bb10a477d66cb3d7933458e9afc4aae9db490302047c435bb500673065023100dae63ac17b0247b1c71610e46f927da28b5b327b47ee347d12bf4b6c8519639fe1397d2213212dcc29c06be8194e514402300b857a04269a249af531090dbc89e691ec9688a7c7a7150f9c1b015863a66c0e27c8e799c53fa757ed1f13febe72da240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230136d1df88d3c96bbbb73ba28958ee983adba365efff1c48f7ca2c76952108cdc3f9862f2ffe10cb8bb33e420b138cef102307a0570a1c8719b910b7322240c7704085a109faafd29e559c4452f45df097d7d2d4f61be4993845dff24ebeea70211660302047c435bb500683066023100c3ce5316ed142ff3e28eaad945a72d7c68b8949233a511c599613c2f9974b5890d709d428132ef4b30a61cf135d5a3f8023100c18244e884efc5ec6838efa527e2093b02c770ea753c543146c9eae493dfe4d26f55b023e14cde20a560af1daf5929760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300e0c6739ed1f9c4f67a22d3d9fac6fcb67ed3afdd9aecb135ca3c7f6650d3aae37cab26c6280b6418cf3b5cdced770640230451f8032961f784e24da2dd960eba75433c8665e47748cf14a7f83e2084474f60085ce0c40aad1d25d2173c6dd3a45ae0302047c435bb50067306502303eb6abc25bad1446fdc584a5b328dcddd24b4689f27205c66f19ce7240eff215b24342f5fa57e5bd6651fa4398ae98f80231009ce04177e05cb0fbb9633ae44409255c3988f6fc95aae454079dd84f70a5688071d7741a555c3a491852c46ca9d8551f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305058dac3638abc23a1e2e59a27989049b1157efecb9e0fb71dc2d263e524408cf6abb10b2a1a95e9c644d344c3abe654023100881dc19ec766540a261f5ff8602821e0b966d887e0ece916d733aa7e971d47a98e7cb150c42d40869cb3424b92b076900302047c435bb50066306402306b135e853ab6b1ed03c2041b058796117da160a4c2b3562924219e7a9b275ba9f7f61e03a52d75d1c4eeffab75d0d03302306651d90ad69b9d4d8ddb14982041d0823c823eb96febd3ee03b801be3ab7449484085ef0b26019b03e39e091b6a0fe480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ab21494e0dbb8556a0bd0edfdb3b7c663b6e5c3479835163fe8abb27446c65630a19e3f7849acdee88366cbd2fa32743023100cb413f7f21335850020b1dd9bece28e6e22d5020d080b0048e1e4c32dfab12757877d6a4757a956ca3c2b7f8fda4d1810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a32bf7ee7905be6ffb65108d54431288674b065899ba6bc6dd8a3df9c1b016ae51e60994a33de62bedf713821fb3b05c023100b1a9e6aeba1a35ba12c7a7f2b023b9820094c6930f1180799e83bf14d2aa45e7d9c9b004787dd4135cb611226498bd130302047c435bb500683066023100ccff9a2658d7e1218d5eb14f233acc05a467d59a03c20e8894983dd32dcdfe57269becedfce4ef9cea964faa206954bf023100b0b8136b44294f5b351be6767ef8b00ce569f870c6b059735bf5c453609ff9be2998b8f736abd741c2263a40fd5287160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a7511f5592d7f831d75680a0ebe7e66cda9e53f0ec961b90191f1fe4f81445d2dcf2bc428ea336fd0e681d2f168db137023100e3d764b38e9c944425c46aa932387d9fee673951fc044c5af2c4ac27118387cb49827017a4d9766a2140741ca487399f0302047c435bb50067306502307bcab0a862eda3ff4fd4ef9805b298b3a55954b8807b198031d69bb8775017391df9974e10125913bfd7310a07215d82023100bb5e217fb969bd24624b0c320a52c3d49d307daf666ebae811f200e7d748eb53bf3bb4c9001722986c6947a8344e86cc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f8cb95be5532ca8b22ae8fb4bec26bf3c39bc51558e0ac0681fdb520992d480e734f255bcef2f02f1e136f337e7486670231008112b224ca153ee2a06d9ea0f1f737d24b81c210fa1fa0d4cc74f66f04d3e234254c7f9485b7a31be6244cba4370708d0302047c435bb500673065023100985b4fa82f86be2b91f30f48c432af65b1a0426f47ce27565f0404a947ae8126b954282c9f90b2f642d9f9045439d571023070661f571196a182bee7812b0c282728fcf66104b90d3a96410c6681ef340ca6c618c2e4820ccbbe6c39f9a1ae082baa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305266d4d5acefe8bae90ebbdb4e84821ab210cd0462a4a63d0b35e4d04c85ebe9e9b0a187eae0541d712f687d8a7191a102300cac10c2e4a0fa697696c1b58b8f505af67d9385b71e5f43ecfad645d9c294162f215df00f4766ef4d9b1bb35ddee4240302047c435bb500683066023100d099fccc981ade7a847ca1dafa9431aefdc7d032a5aa6e329129d9c47efab835beb74faab83df1d911f1124f7e89281c023100c5d687061e002fb33143aac642c51d1e3f1df4398bd6945db3e04159e75cab321a973bb2c4da9560969703780f48cd7c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008281c4e01a083c9aabda29ef430f35480e07c6fd190af9832a89b211096ec6d4df05c73a64c6887713928c8338a6784902301cfc746645c886e6c4678db5b75124a59a78a594b3422b983f208ff2bacb22a191cec88dbe12a24fe4061b03911c5a9d0302047c435bb500683066023100abec7fcff911c47353510c2ddb8e6803205cffd8445b9bf7ae630454dba827beed16e86813bef386bf19596fe6230aa70231008d8fc7dac555a67aaa89010a73e482de7bc7fe670eda50f808442ebb23d1946fdbcaad0bffce4e5f5764b4ceadba14670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023042073bea28a2ed7f1f0107cf525bd9673fe4c96a183884b96b10033d505ca2d2704197210d684ba498047f8cf0875204023100f99d4fce14161e0c82fa1244d6f35438a58dab7bd8fba99aeb7093f1058876fb175462d627e1db2e9f7ec17d0929ee450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230671225a8f36ac181686352393b1ba16a7b539d54a5514a5c7c0c21caca42536eb5eb48068a5872167b1a0cb3d7fee75d023002de319825ec19b99e3199bc857412c0af13b925630031f345f28df722e7306831d23ebd71fa4e94cdbdec676a0f602e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310090cfa927e6da795e719f272c6c7a4485db7c38abaee715c26dca9152b6aa158c90316cae261f64d0eeeed3ed4a847403023100c0ce247ea4888e94cf11608f1e7950c6472b0c3b1f37900a933eabc90d2ea5b389641665a96da46d3fd6dc9eb83debd20302047c435bb50068306602310092b586b350256baf512f2eb759fa1dda869541f5bc97d00d66af5b019498b21a5db985e06a64ec7eff3c94123ce21041023100c3308fc3f89635b4e65ff15c0fbbb0b4687a9f00b4820b8a2e8dedfc9a664a59858114c8cd61435a9345d2501eb8050e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023040ffed30e943198e7abd3c900ab22afa0e2dfbd20f5a799cd2dce99c5e8bb73c8122899aebac32366154d40032faa519023076a27c924de1d9e82cfa72fc3d94ba34d1cdcf47be977824e5f4be8b6a78c3ce3709aa6178a15562b2c926c60653b4ad0302047c435bb500683066023100a315372e082c5ab1d802d5b1498b535197ab571f2c138d7b43fb5f6fa362fac55e2b267872d95ea6a53571dfe9108740023100e1dcc497c2d291c2ca80c0aaf4869ff427a5db914dceda0a7f4f1ad481a296c5cc6010f45d6e387e96d51dc95c585ce80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023007735d0a3cce8b59b80b8f347d93ed84a58d7e9f0d5768b13c4c14704dd17bbaa90616a111e3b8e38886e6de842585bd023100f72deab817ff3a27de86354ff0e4dcf3f522448ede5fccd653f50ef73943febf59ffb919d8bdce79ee38efa64fa4cd710302047c435bb500673065023100d22aa00d1b82b8dc41d5c7262cfd8f94f4b3705b99cf2d56c25d12503c16dbd0bf20f735723e2a21073f8910c5403e7702304fb0ad2ca16ab6e5d8e4f8ba05a775986db8cb81ae71d2a365f66e96dd57b9da12a65506be406fba19206ff7923c7d490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305992e5ce930ff3c2f9f05bfcb636bc6203963849534e99815249426bd25dade4a27b4dff84ed0c0cf6de2103154fe7c6023100fa5fb1aaace756c858e80d2f5c98da84e5d0f78bd852305d06a8aba4df1b9d2cac894cd6d3c4b798cd55bea36b63c8cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009eef4b852107e7beab0c5c7027b4d6721f6b8c849cbc75b6a27b02c063e1b071805e873cf04326da6ef59c9fa2cb0d510230733a4c28f59ce6640e28e343a8566d4787e20f1b95e1fc4bb41aad0bfbdecfd177560f936006646d9854a189727990c20302047c435bb5006830660231008f1b34cc58bfa2beb13ab14c0221ec189098d79b1164568de3bddab40eb4b5dfcefe1a00c2c837c2c43bdfccfa6bb24e02310081094a622760787b4e0d22094474b7720b11d7386d3ae8cc8263785e6722b1d9807cf62d51ae6c1238d566dc5adba1bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306dc7e58e1996afcb30b833951ac418baee8bb5aa4d8c6838a58c2a1bbffc58db7e5c6ab878d7a5b72da6bf83d84979ae023100df2162f75b6fcadcc5d6458c26904a1517745e4cc813fa749126af1535f9bbdb27aee985f43cfb15e5d6d51516d8b69f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ec6d59315e2dcd69e5fd62d6b306e06a3e444bdf72c2445495f41db42ba84bfa8fd14a9f761ed1968435d322aed5a5d4023100f0fd4246b37b402d2c79fb73f07e2f14ed7c535f54594acc76e6f917d4196466bc1091ff927fd4b986eb62d28578a8670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023015f9993c9225ff31745979d49452da6dcb9333916a685b86ad78197ef27eb8bc9810be9f184cb40e6917ce192eccf3020230654d37e9c6d82f958a7b225b3f46aaa0da10d650fe2d78a784d63e8d4dfd0e096742084421afc276177c01815ce532550302047c435bb500663064023036f1a7113ee12e48bfb28c9c168a6551a71e0c00877aefdd771c5854584240503e2c772ce0ef8b1f78dbfe2345dead44023007a62259e8c85b55ecc23d317cbcb2dfe9ddd8bfa7c63e79be5ff1baa89c6e26e5e37bf96b398a6b1cf926e7aa743ceb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023076a9f989262e2a48b0e4fb68c584bedd83748c32924490310dbb76257351a2e5e4c5693e9f2c42ae91c283b96969bc9c0230226619d1bc369809b7451544b7c9c03b02c636deed78f823aa66e4203054b3c08f4e15596979e1798f31aec80b9c46c10302047c435bb500673065023100dac9463b2628b95dbeb6b2ae38f92e7582e3abaf1a831d572ef7308ad8c7f938e23bd19eb31ed4ff707634b1e5ac6ff102300b8cb5557b737762cf60c519b39088df4c3633c3571daa746e8a87a1b7de86de9b1ab6b18ba52673264bfde31a34dec00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100baf5264e46c5ac535465ec95848a5e9b541380945d1047170d8ee9eb4dbb08721616c68b003c6e5d98f239fb9aaf4e4402300c86f4db3b2cba075d0cc767d7e9bc2565433f87379cd6311e197e6449bc1f1c49319b34a91333b6d156681827af31180302047c435bb5006630640230031d4d26223621635b0d2971a27af5469dd00a143e5ec88a98658471787fec46bfd9c9c1abef61270ddd3206f86e23b002307b522795e81319667fcb44265efeb5d1227e5e259bdb85f969a1b66365404fa511f221b1f119308faf40096231e4fc1a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230105a92f1fcdfe3f7d3d79a9d03434ea5f5f104d73b53e57241abdc6c9d7b36a920b1494cb4d915f371a5b96667109b8402305e81d8172c81cd9633bd40ff533554a99d1d8f6c1becc792d1389087353fb3f69eb335f411196610a45a5d02df4651910302047c435bb500673065023052a30e3219b2d164867d9da70b5ff1c95ab73deb86a82ec08ff34a81d47b405869957477e0519b7ab92d8aabbb472fc10231009e324d54789a5312546bc50cd448cf94aa37372ec071742640987c73eab634562eb7624f16780f75a39049b7ba78b6690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037153d41bbe17f47e4661ab6a8b91dd3e9741786c50b1e83b4b3b45a02d6d415690aecfe55240f4aa66ee87d399a423d02306f50372787f882bdc8cce4c9492a450536830dcb3e0652cce4042b3a20172217f0eb81de77fdff46c55e8570006327ba0302047c435bb500673065023100b5458fb1d2ea0044704d7b4ec9a0def8230e6445d7fd9a5ca64e85e2dc727b68fbfb49e080d96173a034a2812051500d02302fa4eb5946b8d1219660572b8bbed6c33899700bf693890d109dbf69488a47f9126e5b6497ae2dddc1ff617247441ee00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303821cd1f46be848b7e502d74b25eb26e7db523d2a9d693d31d5e96713da541a4bc47267fca1fbd6ce05e7f13be6c67b5023100c210221ddd7c35949e024a72753bb025f1922935c84481c6354e64fdad9a13e26b3486cb5282d2f0c174b1a9d64cd31e0302047c435bb50067306502305aa4ed163a4e861e9e7862283b25641264342a738b5cb52a1fc03d5806fb70323c9f9cd17273d74c2ee3d76874e5521a023100cf2f6e5da739f89b9ceba3926918dd09de92945ac598fd76661c74963ad6a0c988a6d5f90343dba222dc7cc2645f33600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305071daad133d65745f3b54ca48abfc1c1aebcc5cff4d15cbb9faa116bba3fb1ca92851e64c95298ca8c6218123a5aa96023019c1543e0aecca3cc90a5edd3db6459f8dbc654bf041544a36653898f2c571ae0ef391d844c778ab14f5b7186fb9e0ed0302047c435bb500673065023100ab0db03eddeb1de80294afea92ec0d7338aea144d74dd606db4c594c28303ff699ce2bddbcdffd19561b7952fb6a94b5023065aeef4054f46e893bfb5532e6fd6cebb70c0e389451980b252ad1b4e02d3e3a85e46160db22a8d0dac6bfad8a8190e40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023051742c247727a5032b2ddcf33d2ea76ec485eb03e09d6f6875d61cefd1f591d40785d2271b07565660fea88519f4d5fc02303ffc277e2675c6ece4946e78626eccc70338a9b8e098e72f849455e91082b8dc9b18c9f5b03cbb654b1f7f5d7f20c4b80302047c435bb50066306402306efef6bba05285b22c40d46535fb07849e418668a3904a137370b8a637e26d011d7ab8ac7c11d001ab3c19b4f7a892cf023059b012567f4d5d88d187f786184b41161ba42d8f41d5422e1121f2fb0f2f8c68bd1de8cdeda9142476f43dc6e5d5e1ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230363ae67fd3a9068e53226391737e49cce9d0acf32bd3a508fe2de2773a1d6df8567f7d6d7d6fed7a163778d6e66e3600023100ca9dfd23e935d51acc96ae4adca9e393ce858ef26baa5e87131c16e2d61357cd3514d35aca23c89d347d9253003487c70302047c435bb500673065023100bcf799b56c189f1f9e03be9c74040691159599b7bed5a90ad06ea6372bea6c57ebc7a00bc7013821af198d4a9d7b414902300c85536695a1e1a23d3e37294abab5e457070fcb554182d2a368b473f5b38d365154f6023e7e5326c05335e4fb154db50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307c98c390c7d8a4a4081d433843ea4be799302326a0b4b86597e850dfa6a3ff9725cef81e3dc4048944e53ff66e13924f02302d3bd6e1e15b08bf1aa20d24457d0a02be7955efe1381343192b81fce02023db0d31e7facadd03e310364c9919550c510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230753398a6e12b4fa75a09e33f52fa1d6b47affd709606d27a5877433c5df1df4ec91cc66b565717574d3d2dc7d2f5eed6023055f93bcd652f3caa67d2bb97b4d67b4857b5872b215e25c261fa68a5bf02ba1fb0041fe1196e3abb1d6645a969e31b0a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb0645562ad2ec6cd6f8431ed3c69d95a6b060298976182a0bd97c2efa60b8836d5713c5143ed3226240e78e466f194802310084c679f978fab76a19ffb81487b74e0b62d19e6fed8f2c29eb40fd0ea3f5e5cfbd426a96f5480f3e0c5fcbec427049bc0302047c435bb50066306402307cccdb1b476ef17df886a1d7af2c7107d0559b4c3671722e822348cd629fd227a76452b639ec8f459b51623d04d0095a023024c0e61aa61e5e9df57023f49a2d2d34eff3e92a2d81a8101496fca19c36c0b8cb7a1c4ff57d91eacaa6b3e0ac7e50980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301be968e0d610d2a1b834d36e18257f7a06d0db12f5bc506b8a774627bf77bed9b50ec384585d963ba6cc13e59a359c6a0231008808d2a6d800bdeeda417625fc6a70f441248799e307f4abe1fa002d7b728d0d4598c77f946624f0230cbe95437216bc0302047c435bb500673065023016713a16bb00c445f4fa25212f574c18b68d542a51f1a11b16087b9eb5471de9652331f378700b11344bdbf7aba6f79f023100ae0f667b45842d01bcb6d490448bc11ed9826f19f79687b1bd38233320d07ad351e1fa614b04043bd0a6fde9d96604020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304a4e4948b8ef96b1f31ec95f67f146eef610ff7d09234e33290dd8305750b625a93399fc3b4b3ce9691f612808eede250230220abc1b633f28549524f613ebe92de5aae328e0c2fba9a2cc7ab31d915f82e0e71736030d1279d1c82379c0948e23cc0302047c435bb5006730650230476e656f1a7dffb097cf931b45492e73fc2fde2dfc58fc7f9b31ad29e664fde4987a6365d934a77754c09f82b2bcef75023100b2fa20193e27b48b85d8d982c05b0d97c358121f55909e8320bb8b32168c35a15c7a1200f240112b0945b543dc45d0dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023028ad6cee0071d1aa01cf5c0f162aacfd9df5369661cb475974f6d9bc41cdb089ff6cfd3f09d06f77797032e2c725e5380230335b82dbfbd732e17c1732fd70dd2d86bff0564c6d2fa88bcbbf1519b51a69a72a176165babec6262252752519bae4560302047c435bb50066306402303c485fb5b1a919085400b9ba51d8cb66c73ef1f36a116bca255970abe2f2844b9381a13452be9152016eb4e797db5ed90230079ab85982fab622b922e33cf1cea65f399d3c4424f16d87247e120d4133442d157f9f3e2d2e34200a165751d77877990302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302228d664d76a3913e55678547b09ba55b434d909426320f859a10c69e0b1c63485f8f0669221e7a40f6c4949e618024e0230487feb6e4977780f473a90883958efffe2c135130fcea581d4e708af0d866d35e6f3dd28e8d5537376222d03d1b23fd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301b97d5d53a1b6eb1e12cd962cc8fb818c4d1f4cb6622fb9518da0b1596036e7be6371a8701e432f77cb78b8bba0b9c3502310081b8f857d887f9141f644f5ccafc22189937f5a12682240999d24fa5edf93a856ff2f76febdb7cc7041c7edde7cf20930302047c435bb50067306502304fff14a90034cbb9f94d4586ed756759b56fb870fecc0dd9e34159b1c28b28b12884a2758e12239925f0fac57eaf1adf023100d499fffd8e7bfb10573b49fdc11ea227980ad9ab9840635cc9aeddfb9ead74786e12029d649ff616451633ea0f82167a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ae57d5f9d36b49a7fb8d03a622e16481fdf18a31f2a987e99015344e9ba11d3ea966544bc6926475349fe4bd6042a8fe0230199d3c0a72e9b0a57ce0d7f6e5ffbe9a1a531b302ea7bcb84e47fff6eee430d779336858edc7345df416db60094863a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d3be9fba4f7e1c678e455dde9b8111183fcd3531aa486d50ecbdaf87706633123611630a0f4f1571bb9b72284a04f2bf023073ba301659214318a7bbd95c424c9c4a30cfc1efe6bc393e120c1fa508c5e61d46f2019c82edb1c8f530763fd8bc5c910302047c435bb5006630640230082364bc153ec59f5e62f46f7ce28ffe772c4731dcf6b8329b7124c494d536389dcf2c6a89a71e566405b20ae11a6447023015b688edf21f76f76ccc6156076893db7c9f3ffeccdba1f7dbfb78022ca669c8fa5266188317a8786dfc37ddd48af3910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008ec2499bb315ec053acf8c336d19c30f812f4c0f70f9922b9da71b2d523aaf58b9b6d27234372c2ad49812442308230002302c4c6243976c38306a2519da4d18beab8c28ecc1c8f1c2c19a1cf95886e080736a78393c48226d27007faf5594f31d740302047c435bb50066306402307f4fe34688d86511008028d98a5ca3e00ec606780849e946fc27aec8227d59b1943b7a1e39aa86ed21121a5d49781f4002305fe8ccbbcdde12096b3cc248a9a36af9081542ac7371afa3572abab689408c77ca1139eb27723e44b45ac1f426372f770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037a77aba1c661d113988b05fe39365c8d2b3c70a41affc63257b2e1dc1c07fc83cb154ef060605634b85dae8ffa360860230631ee530e10951b8391d02a42e605d3e7a2b80744f2849907a1cdab912541eba2f0936e1a8b00804a8530a429893e20f0302047c435bb500683066023100ab8e59ecb0310e2042c0140b2860cfe8b29500920dfe92b4d486d6cf850135b9c741591e2a199f47b9a5166f52d150f50231009c2eeae1f8f37c0e7958df7c912de36f900c246d17719e0fab1f75fb00f7124f0d96b98d63449da68ac89656b0b738e40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a15198b713312adc90d5ab895d7525953e6d3743cf7edb62e7310d2d3279a28f73d135ef2a3aaa5b55fb6a9eb9f6035c02305136b9d37412db6a6171b9ff79e92ed207cba97b3cc1425b944035bfe9eabb3b81e622bd3df223db6063b5371d0154280302047c435bb5006630640230111f485154da3104ecf66f9abca620d68de4c4b29416e65ed3260a6f4711bf3b603ec2e6a65806b66c684e18771c1072023069c4a0251e75682504ab2ee8d64ab825d68ee771c1ef8e7b97e526184048eadae0c01b07db133e4412fb7b5affd21fa50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303fd4934ee936fad887aa7f45b1182afa2797c3757ca623c8b8be4fd0348408e4afe60e41bc5f683f8a8a443c6bfc529502303ba061adf76583667d1e1bd871585352a265ebc6bd2c0f556344b88468921f774463f8e74448f132868b23fb00b3c1fa0302047c435bb500683066023100c95abfd9748c2b281f27b0f2efa15c4ada3dd7e0e52673e1be5ec8d2b2340547da9e5b2c3325a89160c4aefcf831a927023100dd73a4c8315dcca1f3f4f0fc6644fd3ff4e3f2423ac276403db9de94de1e08775932e1e300d3847695f905370f8fb4420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300457d56fd624de3e02525e909e352385349d1a109fe37f18efa25d2e96d09c68066ea8d7b8d13014a15e2b756e133f88023100c75bf0b9b40f52a17874ff25bc1c0cab8abd0987c95682d9acaadf6acd06bbe7a3efc8bae6ea9372e2e6dbe7e8312e060302047c435bb500683066023100cfaecb8f64c01d293b4673d98e929f5d6ecd8ae6d7947544711c0495affb0838fc1306a072b1b5baa5a4dc802aaeef6b02310093b90c3fac5b944ab7440c85b7a6792126dfc3b21cdf9c3ab56107c9df4c8add5b8569e0bbbc3147e871489affe5d1740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230055caf7429fa8a5e9cebadca85a5ba6abde79179cb6aa56f35c602a45122a570121eecc4a72d5095531b18b68c42c4f0023100de0f87a474c9fc4d544218563ae81162d16ebd0496a2686533d8d1cccfdb69c858a156d23f5ae257c131376c91e671cb0302047c435bb50066306402301870424e9af1b0ffe9535fa6aa79118df26afb874f27234e39e5415e23e75568e99221eb5b0db4930d39416c8e8d53cb023066cf8517d0eb6f206008049aac24b13f4c4fdf22c206d9d8b66475c11fd0057032ed243a8538c19ebe4271c181cbb2ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230652078b37536fb51d7451ded082d49caf431bfee495deaeeb225e88b133fa75981ee6ff104a6849544a502e26e712627023032c6577d9e5eede307758ba1147cf7c76628719071ce93d6d3810f1bd01ac892b2868677d2129a69b49da6f3cc3ef5cd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e687da6f478dc56843723cb2f5e5cc2eacf366d7da3bbf37adf8ac952e917a8fee330f8d49f5d681251d5eed6c3276402310099710b80c50ad2ad279d63d914ced000389462ee1345e779dbdb1f21077e1f24fac67e73a039d0861154476eab0f62330302047c435bb50066306402307b747437e313c07f10f79e6b29e6fba4c57771445c33114851401a8cf13cb7f225ff9ada5fbea4f1d69b4a3cfe497c0402302164cdc2424573d92a356aad878f8d0244bb3aaf761394ab5dd303fada438ee331536c9ab248bfbeb2d66b550b6a96810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304a74efca68fad915aa4adb59d8351649037f4836908068435f485bb983d1a6f79eceea40f1ae36fd17114896d0ee03a802307d5934b0df215290e00dfe3875d38594a451cfdd647926333e06afad8973b1dac7d8e1fa4c9d8903ed6758efeac874660302047c435bb500683066023100963fb970d8f6c859397dfe5b17144fcff1b6e40ed99db471d66dadd9c413cf1b6b7419ec76d4561a6c23d6c65d4213a0023100865fdcdd2ba366c67ae9f11560a9c99d949c1bcce2e9e12e880db83a1f527df52b21d558445b919d13e840809dd2be900302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eaf87d8e29c99707440c8ee995f9defbaa76ff9ce338d4a2a6d73a45f89b1bf46cfb9c7d314224a0b049af19829456e002310099c3206f278e3ccd5a8e4696de81c97f0cb982b91892c6561f092e716389cf64c96830595becee5376f21eb495858a990302047c435bb5006630640230601d814a0ab88cab070fbcce1c6b909937b378595b0921079d9bb28305e2461f13f30a9e80a21189b5aa7abf251ad7d402300472e0fa71b748513f44c3109fada4a040caf9ca8f434537797eb1c6145fd80f9e4722865ac05cc72522fa2dfa66aae70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302d3ba55636833cc1e36b7eddfbbd4f16f30217d2ef40de2a2a47f462b6f683f83f8cbb9e0e1d45746d5c13950f353efb023100a5f8252e7130be543368a27b3d8b03c5433c4135ab72f15ca8dd1c0b5830d207b2bac3982d63a9c5f74e418b73b407240302047c435bb500683066023100ebaf8249a47e5dff13e269d130d9ec0a5ffbd97b927233e652c61c7399fe3630b8fd14d4fcf65d5b1429a0944ce0e91c023100f9a8a9e3170727e8f535517f416b82e1c10051bf179eb5ffe5f16821864ef74712c71c394925d3e46b5b7ce3a31d217e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b50487fc38992be43ff4f1521073bbf049bf9ec14febe5268c1aa3ea73d9fc95df2870eb8294a83f8c7aaad082ba5574023100eb493e690b7c19bb9cad2f348df6fc742d4ea100d5d60d6fab4dbee0d1fe34d58d87d48b5dc1c3cb29fbd89ecfb283ec0302047c435bb50067306502301e352ae403b7615a0d0ec502542fe7c22dc14f6c3f55b2baddc9551223397788035d9418668ac2e7d575e0050fe27eab023100e6cd2a7085a18e5c11af113ed1fb3c3bb04951f1a6c73a257cfcd170d145ffceae5232659e88dc2ec83097a0eaaff8550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dc9318188f9e0525cddb6d46952d109d0d5de8f66f589a69df8a665c91a983cedc6f0449f9f3fd29d5312706fcc541f102301b0710504c2aed48a23260254d631f41073a6ac566ee8daa996040b4ad3ef33faa73381fe4cc371423da87a2e57f859c0302047c435bb500683066023100f3e0eefc3289c86d18311feb639e38ed07fc86ba2d35d465dff0756de07b51f909bddafc7da605aa8e87f60a89d864250231009759bed830203714d978354fbf20210c1749a6bbac87172744d856e61c7aa8791b08167bf49239cd3522f6da0f0b2f650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009f8966d779af47b041131350616629bbe3dea45c912e860424172fd7ce7453e30a8f67e111730aaa8ba8266a78cf48f002303b77866d794609b911323a1ab0ed4a6be6633b34ea86bca5e0a39be8af80a80eed9cc044eb6568e7636c88e355034b940302047c435bb5006630640230688ad126a7b5f4dfa6dace59cfca2f6aaf154a9d03c6be0c12dd31efd74b3d287f93eb0d682ac563c5c27973dd55073d023038c32669a251d0169a20a0e3f2ec9aabd48a944899ecebeac238f889c5cbd6d7eb80b6c2e6ac737803b5d1d87ca3cf290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c198c00537eba6c4d42dd08984c97607642369ce716ccfe0cdef474e7cad4e3b79966321d57ec79d5454e5f40ed21a9b023074137a28f34dfb44c4c81f69a77b243e543a3fd872872e1e8aa8e38a7e15a8c3e350e5f01f292a29db129081b2bd900a0302047c435bb500683066023100f96a44d414b5a88ada1eadf669c7267b83f97be549a7b659e1ba6a41c157f642964bb9ac0d2382f99fce4766178a183902310091c509be0e38353af517f2b042f672be147b5467ed8db25f862300ade1e260baf707b5309c4d2e2bc8bc48709e9284150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e6b881c09e2c25d07af1bfd9d1d7bd8da4439b4feb667336c77a629e4ca26af9fd5496dd3183ee7bc47b400401e6ad3202301c67eeb253b9be0488be35259a87eda96ce4f5fb3291da9472b964161c33653fb5f8a6883f1ed2c78f73581035e9a4a20302047c435bb50067306502301b9626a716e02d20465238d35dd66264a971d1658530f3db6476ca4cc18a2c6bba845c5ade263afed55e275481345f43023100a805260afe7e19ad07a8e8c5bfa08c50dcdebc9f7a7999883aec5730e869443a02cf46871f84f970dc24a4d1beeeee510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023035e32292d31db8730efad26f5516d1123f24f340648e21b16b85b88903d937631e4b522741c2731f47aaed747b71c8b3023100a68f9601cb6a513fc3370c1456223dc3cbb09cd06c877cd7f0e587c8a4ee581d133c25413ccd0ca906c250e5dfc7977d0302047c435bb50068306602310083441b3fbc06e1a5108b0fc2bb72f8f70f5804a700e9ec166861abb668f249f1609dad7eed1cb9d6c5af86ea7731eb7f0231009f3f6713aaa070a928a544c1845c204be9b33dc9be9d87e984cd1616465b5fdcb804510b515a7a580c6e83e8001aa7920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c9cb433a8060c05674cfe18f8c5b18db78edb1380d06414ad375949b8b78d8b5877136f9f6c236c3013ace6a7cb620bd023100bd53e6354f041108901202058a581a027f95bdcf65c352e03096f50159bef0274aa1ce256dcdfe6d5153ce41e1c072720302047c435bb500663064023060b491830a5516609cd454e2d59f02313a705606d3b6fb8caa9daeb85e6587d6ebf36cd6b4d3f52d9f7dba6b6491e45b023072917ef5b70a6ffd583c63174ae50f71c242cd031a0f67a70ea1e9d17740c1ad5aff7ceba653f1140c5b01d76d1abb2b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100efba3a4a9a2a7fee6ddeaab8689bb66c66396496aedc1156ab0c2d8b2067c8cd8aeac775d79fa81093ca47a1c4ff0d7e023100e0a7869c5fac4f63fd847103b7b5133063db8153c794f0e7b2f3259df57d9c210add143a6d34829bf6e48d32cae6e4660302047c435bb500673065023100eab9b19bb3bdd217bc41c6fa05cb97c1fbf44f10ccc8e4d6642f51813510373ecee9f36a7fc53c7f303516693098ad0002305a04f4d4c36352333e124738dcf16f27b8376fe35a7ae3ba7aa4feb62827fdcac269c9f89d096b97e973313484f19e8a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b33c7314771ff576800c3e6d60eab26b52e9a6399c9a2e3f3a00ffe0a9afa42d763935e251f21a0cc1af2fc833ab9d56023078c197af21ba50f3975e8d7df2107bd46876f19e01cd211cb5e1a2c35558bc706aaeaa84e9434dd9b4866fbf7cb81e720302047c435bb5006830660231009733cea0685d97ababcff50215ae7ec9a58d42c76e5c2921d0c237b5dba364da43a190647e9f9ce122eb31a30562e993023100c0bc908bb80bda8cbd37ed99b530b276945ad3bc2633ea50ac5e0f5cb5e018c48d0809bb0f9e4b7d09b8b21e1345ff500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fb5913019fb76f379a201a6e834f0abdecbb5c34ec1eb981eeb5018ca8d758bdfd857f499384440531c141348d08f85f023100b41ad0973278835de5d9fddd7d608f17501514b410d0d22cb6d552251ed96d7a4c19fc805ea8b31a1d61efa282ef58d90302047c435bb50067306502307f76a5063f4367047b73fe7ca991d3282733e1cb9f1e927519c01445acf758a646c4dbfc2d2d961ed49e15215da7ddf7023100c5b81dfec1a4f2c90c58d529661c9a61f843339a634f743ddc9bebf8fc47128a30be9475eba2e5a8c90038782a26b5a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306c0d5441a976ae9b04fba418639053e32725250ce35460f46cd376db5236c9ef6f2cf826ddf1b2389d0bf8c93f7386c7023062cc646fc52221a7c58b4fc5ad34f29538dad0d42a03d8deb692d937e8795fe3c9f9a186c379af884c4b45c9a9d44df90302047c435bb500683066023100c7798f75c45d222f8877e1afe2eb5de4e5033d0962dfef68d7a1465ff753b14c5186efbd2b175bc737e6a58839f0f9fd023100ba5e0eee447993c2a446c43c8263d38bb242a24c18d054c254a44db5f05e1df9667750258d548e43008196ec65a6e5820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ad6db61abc587779a717740f0b1b292353a741c8011a38d2a032e9e17d6e1924c0e90ebd7054937c636006762c2b0b5002310091f53c0fc21de605e5d9b779756630e33f144b51f86da79e71ac3e964b4a18c3a554c4c5f134d2c31a8366e4a47857ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cf0a902522519a19c5e2442a6d7fa687bf775d084aae6eb904e088f01fc519752ebc8fc4adc4ccd25794692df457e6f2023038e2b70071ffb73be2d7c7b3bd1f4797899f8b6d4099465d07dd1694791d7d1f93292ec44ca8acc6cdc237beb26c516b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306d9a8d9105a566fbc708ac274bf8722d0658ec34aded492d5bf58979ac30125b2e91de83a2d7e4e52f6a464f5c1c953d023100f56e13822a060cbab49c70ac6e9f69291a9b8197837e23a0065e99c578469e41048d58119c14caf265900289d4b3a25a0302047c435bb5006730650230282df7d40aed3bc0abc6d129c47a513289543bca813ca64f65c2bc4c32fd11807605e1b99fc5e7b5d2b4c76e6fbf20cc023100bef502d2f21daaceb065cac799d31737d500dd9d03f1e7e667234f0585e05cafec0836186c3bb6790f1845e97b0a16160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300bd0d4b145977328f9ee4387f620f3ca1b10731dccd6920bfa73f3e4a8be5b78ca6d876426ff77cdc04e79969ecefea6023100be73be446e178d799f28439194207c72ff3d5dc3a7268dd647e25ad628bdd735fd4e7427a9c922a5fdb1ecfc4d948ff40302047c435bb500683066023100d7a6f3a5f332be4733c4eb548eb959625910c2a40ed5839cfc9f9957e845ee60b97d578dc8b2dee03650d71c9cc152b4023100d69bc1d2f8750de00f3811c37b47be0c0f099f9127012277e298936ff70bb331ca60c2599bedae10aabf33dff69427d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cc54742a45636fb85ca0bf9185bff4463e36a157c4584f17670a4c1f66f20a8150433a5de3fa8adc62ac3c564106e2da023037f24d8ebdab964a5580d399d76ca876536d0d6e1665f7e8a56174b0a3401a8c59ca7e6ce392832ef0186b926348da090302047c435bb50068306602310080c61d1fd82ad7ca18714ef86061c1f3db572290b22d1e069286c366b46f49b38945c06b0b4e752bfb8800d3e49c8a2202310082852adbcebe917faff92774dc5c8d6662828bb69bfcf7bf9ecb990af5af5ff2dc70831b5adf1d50315f08f50bc439d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c69b8c57b5fb358ed6f37f5bd1792be5df28cd03c695956753975abaa2705908421c1453319f3ac300ea036aeadfa5650231008b475efce8cca62ee26e4b2fb766634dafd1187ef7ab13fe8f5b4e979d4527cd02c3ce95ed3f0746b2488ab2291834590302047c435bb50067306502305a5a053b1dd56c7e6b58e2bd9da49b689d00305b26cb62db4bb73f3a8ea9e8351b7f8d0e5dac63eaee26cf8b1ad9afda023100b4e9f19e0273d91d397542a99e969eadd8810aa72029873c69b93616fe1d1fe5da7917bc4cd4bdcc10657cba1b2d99520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e4350593a013a0a7f7536192b51a003c885c878ad08dd5faec5f23d09926b9f3ce1982b363c1b254c552cd0a0f39c61902302f4284f23dc96e2ff0d2dde3f8a1a340f32e07c5e248e8a6f08f02b136fcb5524741d7c37412cf3747ccb9029d7bb9f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023077b14d24bf9dce4bb18d2d8520ef7e1afe269d76160dc0ba04e9565a653b7b9e4e4f9be7b340b5939200d4462d3a6dff02302dcbd528026904c05a249a2b60b75e7294b0928d6df6705787f3cec99eb68a8d925f3dc2243eb6f773186426c892a0390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023021c8da5cf22b1e0887dc8064bce86844ff54309bc4e4437e691b085957ec885a73bff0267b55c18be10c7095aa9dfae202301dcec166b62b26e6693e7982c09627bc276bebce658f69ffa98364558b7656d692cdaf34fc1a4834483ad9c0542d52420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b1a3728481bc4ce06bd98bbd82df258c06905fbf33a3339fbd4b59ec0512f239c3d20975bdec81278351670443d40fa02304ec5c5e5a55ac2e8a7b8e87b59dc093672e135132f29b0ea6f67a3c19d88c22beca998a5df7aa1a7576632375166cf6b0302047c435bb50067306502303c9f8f866647ddc07bd71cdd12d5b8a612e6d43461b8802c61ffefca0aa5cd64585d893c01192d430247475c3f60c48f023100d8bd8cf4a6b154a6557d4bd1247fd878e02f3710f3a5b50cfecd2b3e84fd6a8a8d34f0facc49777e99dd8c36e75349ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302ec6a5cf6dd8cc5a28f8a70d0e3a5433b82d2ef60d8604267266965ff8170031af4ea2ea08928d6a8b3fe732e9ab43340231009d477ff7b7de29b1f7e21c36ec02c35406ad2d44f03533cc4bd5cc48a50f0ee96ccdc44a3da1e1e3651437e1d1585f9f0302047c435bb500673065023053040673ecd1ec66fa49d80cf7b883ea3ba631956000da77fa96d5d163371b86acfcc426dfb850aaded6b03e2972d268023100e4d3f28d3cbcf4226c768f141f80ea124518ee7fce3881d947b74a75fffa4061b24f8370969d5b8915902d000394b5790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310088fa345145700f13794fa2b931746e89451341fa9b88c47432f1f6b22db43f323b5db27792bd01c9ccbe6ba6fe145b6a023100cbb415f9cab940d141ef6e1f51f2fa1be64ed51cc2323fca7c93e33d3ee2e13350170eac9588e41bd58e3b9a126543330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500653063022f54ffe4bdb05672053cf1edec7971d8254ecc4c895e36860d69b7eb86421ff5dfe43713aa61fdd750bba6eddaa723ac023063ef549e4953ebff8960599f06b784310e020e3925d0d336e6178088c7d219f20d5d0f392228529114149aacdb1eb5800302047c435bb500683066023100f21f651e7dbdad1e2b4cf12000d965d66f8e288dcb0c2f936c9abbc5640d8c76881c070ad041a964605110470345cbaa023100ff8fa2bf91012a597161b0107b60a49431699f712276b43fa3778769218b9ac591bb734645bffabc10ea46c3f69930f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100df56c7619afb2d3a8e05323c47e8d3df1b24df54c5cd64346a052b504027907a7b2da61ce24cb790a3ba8087c2b7f591023100f7204b6913efa30cc35f249620101469df36f7e733ed9b5ec7e6c46fccbe035947aee5c40df91a47a0d9cd316eafd1700302047c435bb500673065023100df3980a7db16b9e65f347b76b2fefcb391da0386765ea5ac57a71567a462d1c15146d886f46c915d580a331e5161207802306fc3e617c36821e64e3c4141772ae8d672a76e49a0e59bf2ee35b3d09fa649885e7a1267d0864d547d7c5043446560c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c49fbeb4748dc1d9702a941dc5cc92d241ccf4f536ba5cfcf15909aa1f4319905e75d8e4884ddeb32874e32bbd908a25023016ea560c676c0d2d8d7ad92f04706a8532c3e5a16629ef147c912e183087de37f9604d386c381c465d619d7b4b9c3fbe0302047c435bb500673065023100a731115af5b0f497456370039dd9a9e0e8d2cc98f194152b7fc170f1d23431805f8641fc31be51447fad209b536ef9af023011433b143cb01dd051bbd350c088cf3d0a0d193b2c72a4e69744122f252332ddc99ba0ad815d87f10753422de0bbe4870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023004d8c7898445cee050335d004e11705be746f98d05e78f7745950c6b5e914a3882fb6c0c4453de8d8221a484cad4c07602306e4a31b565c867984774d9593c0608242844ee6792108c0e0f9078e94b65814e9ea43c2bf81edbfe58d55bd6bc2578480302047c435bb500673065023000d5c6fac8e9a46742ce44f24a0b9ccbf5373f8d6d92e880b9d0b00c666b11478af47bdc69ce4bc7244945a886d46b47023100c7000aec390cc0e80b837eed1d88a49f52109d023a09d2735aca71a68d70e312073743b9928171949a0bf55998a34f400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a60d888c0cc7443b986c8795502eec83af670f9be004c5f7a57d16a8cbedba7f8b8427d1e89df23fcaa14c51332d30a2023100a4f8cb48037847db2fd9fc113232151dfbbacf87089ea32c57fa6d8fd7120daae6ba103a9cd2257d1b6a27015d07196a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301aa1010affb0f6e7f37d89ed7c1cb52beb60a53b5335d8ec1dd090e4d2f18d5f226b27b5005883b07651577564189c2a023100c50f9d77fb6324988e126b9d81a5d7b2266527fe4b9a96d490012921243adcbdac0cce109cf90569af66c0ac3937c1cd0302047c435bb50066306402307924f2b28118cd052297db101b585cdbbcffb79cabde94d9e77bdbde775cbce7336af915e9ce05181ef9357302197b0602300aef3faac00457c6b8d7ff85eb94a2cd0725f38ecf18ab168926ade00682ca458541a5c9731b2219e1fea96cc41908ab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023028520357be15a7597d4cbe5becef9c813191044ec2360144f9f079c0ab7cbe31323c1c82320fba754ebd0aa054f5b4f6023100b8fada6010cc24aef20621628d53a7e1b0c5e20dfeae73aff4fcd4c05f51a4e99d0fcd1b0587543a809f008b8098130c0302047c435bb500673065023100a421411ed2b1af6ee4a37a395fe6c8f8cc544f699d8eafa35bdec12b77ac26c27aba79eab1b8a89deaea232d18c9378002303b215b73c22cc6c1110bc5940604c03d2ed3c21e0d800cc935781fbb96bb68ae4c7f7c9fd5966abdc8e45449d6ce821b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303a04207f624193fa5f1ca46ffa959ab257310a86fffb9693279246df40a689b63b566e036743825943341c6bec57dccc023100c5cc954f45091ee787adeed4998ad62c09334dfff64a670cf4d6130b50717a735f2896693e74e93f1326d50d0090e7ff0302047c435bb50066306402307732aa63786207a182dda98d883ed31c7729d6c76beff6ced94449866753b072faed27c2512af7a2a054bde8a6c0343b02301999e7a55d33335f64d144a3a9619f6ac719e97bf04a5b75744c714b11e07a680d9c9e1c374e36f12180882c7a4b62410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b594056b06070a91edc383456e44b0f52e9a121ff8b545d59424d984a6a92ddb654f1a13feffad42e1970e03a2ab46870230769fc59f3e10ca0caabc7ddb61c216acc3bbffed1db84bce4ad885c98fab535f629ccedfac57c9788f90704bc93e64910302047c435bb50067306502303ffb69f00962afd35e6e47497b584bb91f5086ba833b9b0d032b98ea16399ced115c8738017f80792e7bba03d0875d63023100cb6bdb80bb5e4b926a8c886ca5fedfc27e814e7ba5c18e3ba17ed07ddf1138b7ab80ff122a22e453a8d29589747e67870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ba53112824e2629f511c19496fee1488500fa774ebf4cd2e8ad1c4bbab61181c10aa1c846abc1fd2d8f4fb3d3ae3cbfc0230735c08280a7b6bca11675e4b465c488c2cbe097b09299b21e4d226b252ab76039afcff5e808e805074bd379a7b7338660302047c435bb500683066023100cdfa6ee6574fddc1b2e9a163246b9345e6a46863eec32fa2623885ee866bcd96e5f0fe4f797669647dbcca8627a6499b023100ec60e7cef9f50b819f2c8bce69c2821f22a26e7ed0e9f493bb5dea2cc71d1c3ae49678be5dc4fd8f7e101b63d9e5b6c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230338a009dab116b564500b44d78a942d88db863c17fef9b8d1dfe51f7b23e49f02b68a561e25c5f59ba603392d5649a72023100f7b9e7aa4a439aebc45077c3fb34d448fee4e52832a765a5ba05f9eca12e8e25c95374258881edeabce54ddbf107033a0302047c435bb500673065023100c400b26b0ffbbcf96c3cb3197a468c28b1ad7ec8d6314c969fd0596dce0df039a2adb4848dcb4c752390d7ce7617735a023056eb9fd408b37cf2fc90b5d75ce7a86867117e5e321c8fda925294ef10789728dc836409c750c70e9e8cd1f69dfefa570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f47abe077d33568ef6e96cb47621299f0aab50f268158d5bac630393f6efb080a477b713bc7fe6f61966e3032a47415f02300ee8bbd84139bee7357d97b512e7ed5a8d9e1b7b88de5a8f712213950a00658604a854655c79bd8ac898c46e938987cc0302047c435bb500683066023100a6c9c5769c02497e1910d1b90001b36053c834d3295bdde1486e882277e38ee08078a6e7d1618ff1815069201613270d0231009c9681ed5e85268f12928221c66036fb4f5032f24dd6fc015750b030c1e880ab3ad9fe363f1166548be604fcb7abff4d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd61d6161de7538e19c60f2ad5e2f3f23a2579064ef9af1ee2cc012577e0d5329ec9c88b8afc12e2cae8accdd94bd239023018034d700e77fb606dd6a49a381371709c62d4c79dd4ebdacb8d4e198a758bcaec6ff0d624d94d51c79ea2e61757cc090302047c435bb500673065023100d7fc919bd70edc7e541c03031853da15f4a75d95d006f27083ceaf99b78286895eaf59ac70ea63961c78308c8de5e4940230554cc83b5851ff38be1f7eaf16b5776546361947b992f36d23201aba76a783875309f5bca6fa046e6883ad2e2d13a9380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023032d6b75efd40b7147b914afcef063984db50bb75a7796b3bac3ec9d5a902c5b4fdbd65109055509af11d7039046782cc023100f995da81b0ffbf2653f3ecf79bd73a428d174033dbf1312704d38d58fb731bbcfcfc236eab59cf9bed75209c260b43160302047c435bb5006830660231008b72e2a1410cfc3754c03da5959285fc2b4f1108d07379799ea9c7bc37c4a6c7cbc6f8d3124ec5c2c9697b0ff099982e0231008b4467ffa685ca4a3762d409aa4e80992a809d4a0781de3cd26d1d2954d10e093627492197bb4732c95a281df12d7ce80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a57440032ae9d49f5b46cf83e5229b0e2b8f460411debefab15c720800fdbf5f69d82b084d2963fb40ed947b511f6dc2023100bc0be9062c8155935f83603b040b0ec03dabae0dc0519bff89e172b95d44fedb22c1ee7b0790064a4940ea40af0a8aa20302047c435bb50067306502303bbd97f6327549bc5bdbe8a478edb89b109975feade53819d23a90802c730558ad7022fc9dc7816185651549c51b1b3302310089a479fca2336251fa38ed2980faa23bdfdcaa9156a661bee796693c9fadb187b2acec818bd41818a40f270fed459c6f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303f8e81650b6b9bc7849cc173d27d3a85d5327ccc0a0472e80ef0af97d31d6d9d1251a27fcf3c6976f09bca1fb670adf3023056eeae77a5a03e282a61c8ee884d710050b84012e59bfbe753948bedf83e1d9d461ea6367e5a808c2cac31a8d9835bdd0302047c435bb500673065023025a0f23f43fa79bd63b7e7a51ef1e559cea700248b21f2565aab1298644329f168abb55181e51935fc119f10e9cce0a9023100dc96b36ebfc8b4bcaa1f6fa2f9fd7beb1c033021126ef0ec5b23a22d957f83c3033f70692ad0fb695c87b51e5e8f083d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230617c31ea6768419a1737f71bcb0aa75ebd91b8c6d933e9b3803de66fbd34578c9eb6d0f918519c2b145aeec10676aabf02303c2b718e1a341ec09f500b49f2386bdd24deccd3a132ab45c01414b4bef9ab69b58089fb3e38a64f04f2fbdf79e05c7f0302047c435bb5006630640230567bc767a97be8ae969669dcc10181cfbe1ba81503964fcf80143400e8cdaa4b2c0c66facb4bcda3852d42d40881ed2c0230699d6f36eff5123f28daf13ec4f854fd95f1809251020e74f1aa43a531c938448071b54f585f352b275de1c86c6911930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023011c8d2ef61cef0eae1c663c0ef2c570e0d95d616580b97b5a1c32b7e255e16051cfb133bf5505746d5d634046f152492023030cb52a40ca324b58ced76f6cd9523540460e300c1a45dce5b23a9809c94b3e6088da2e8efc109118d0dede88f68682f0302047c435bb50067306502306d0592a4fae42b933ff0ac1f1f0dee4a5f6ba3494c52c551b39bc2a6e86efda20366ff8e1f6080232e882dbb6f1d042c023100de3ec8852982c16e56cf6bbf49e81099d7d528c8ff174966fbdc97e12217b6fea6639b0f2626e8ec27564d2e798db5c70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307989a21ef56b76753f166b13d183a86f1c5008394689baa3a40d58b522f65add0d77b06ca74a454688eaafbac3732b0a0230599a00c1f8f5251c6d646b750231a2110f417e897667a3c03233840fd8f1291bbbde71db7cb49b880fc9be91350476160302047c435bb500663064023028e0d136e826ff4fc25d91909b3523c1e58158fc2361a9c728d5be4f179c1e6c3cd8061a81136947f1582c3a9b294c4002306078441f9e5576179e8edc04d0b4d8f7ee0f637f9a17fde2b60a4b0577a429edad2a8f228259f8591ba6223605e242f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e2e3757d7de1d90a1f461025387de9cfe54e25cd2ee27d7bb995c1e19046d67544b84ac386837261c185b7e95f353f402300fcc28cc05378ea148c186bf5cc77d9714c31c73a19c39462fa280db515afacacaa9db6cee9015d7d3e69f79ba1a193f0302047c435bb50067306502310088329a33f7c784d5ef1869f01d7b3da773902f6cc477667f9ab95f1ae2c71d286fd1d8dad4ff709e373951c726ee5e28023001c49879d364d79f3b706ae3cbc01f5404a134224b3ac7f22c1e71f6641f38bf850dde73ca326c0d1db5da39984ae0240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100923ffac4647bf6d570953260eee3d0fa0f672bde7736799325156a40b279482a01aa6df0c330418f869b897fc953129a023004840743b2c90f8759c75df5d329da2a32990b2a1a7d10eed3863bae4c1d36612c0a8696f932e2a79333c76d8c05a2b80302047c435bb50067306502303cf4738ee59a43677ef8cf1a14f71dd5488f4c9ea898b4071d97c3fc29123bd7b5383ce406a2e5d7d348b0dd31e1b0d0023100c343704b98e34796e907720497464d5f605090960727b7db72e5261c15abdfc736bafe9ffa1f85216ef85ddb74887c3f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306145f1ac60b54ec84d5410306b96d476a3b3a7346d8eafa17989b18c20b61c81a7712ea585dd7eca4f0d45fd75c80ff2023100cb7f60ebeba51bef9a87d22b13721ee29e4f3635a4bfd9369b87ff25b4747a3991fc8e4a774131f9484acd4df9da7ad90302047c435bb500663064023046118ab7e784231947bdffaf182ce3922e437bf9b757c1a6031f05fa95c347d432563f9f8eec8f7ef74e4c8bc4f2b5fe023054f17ce22d315c8ce6bdc1982ec8d5633d38670f2f4e4ff0d4f33bb56817c9f8d6f3759ee56f12ce6afde66ee6f50a080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023069d8b6495b5a09f3e10a267e573ae3bc00b5909a7569f36b9ac1b104d5f2e052c4151607b5727704941786cd14cc68d3023059637d8e7c2f4bcb3a2dfc7395d503a30bb71a86e8beb75ff0c4b87788601f84b6abfab983666fe7a345095d397151f50302047c435bb5006730650230172ea6f369c2d7f4c7e1d830704a3e3affc374a56c329e196fb3451bc9fa39e990d6cda211a170b69ce78d2881a80e60023100a0911c43af457a3d31217b1e117a974056cfcddaff2486a1e38adaa18c86fdaadca89fd535c5124d96da166c825bc9850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023018de5bd365c122430b7d40418f374ac80c63107357eb8da670d7f933c1ac6f20419974cb80f3c5b1ac2958bf5016735e023100bb54a08f2c8dac492f13274c73da6cede421aceddd849fe70f617fd0ee292817515b8ee26d865df8279f9ce5c55492450302047c435bb5006830660231008af0a7a125ccc752f8fc70866a9e64a0e4b0720bb0787bc50225fe96058b18f9094c687873e22bcd6e85f7a36e656882023100df671face12aa28ca8d309fe213f08c3a4377e36f9566393b92948582db35b4cea40b67482b091327036e9059b7b1ef80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c22af5150cb65e2c761970a57ff219674ec8a61521487b53e7ff3b39f04163e09a69483239726061cce5927181e992a202310086bf52e0dd05c961777a02d5a5004f758c7b1526757962d4324890878e32351376376cf826acfd58e9ff99f3ecfff4320302047c435bb500683066023100b74b0f24218a7cd67e97e6ff608df60ff230892519e589c04ae40730c75c5c9af29e6b6cbe1231518adbb092638e701b023100d3ab4962a56ec2c263133a5c261bd217f7d502d134814c4ccec2c444d7f19d98678e6435f8e1391f540146d0c31289db0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023079d70ca29b8f4868f8e5f268288ae485b4711e74a50c0e918a0c79c56d2a197391e429bcb7874c268be27c6fbf6f4b1e02310097d3c15d7ae31328a7ec7774c3fa530b13d07eb7594b8a71d2d2cc98520039bc8e97299fd439921826cb6b34db1fdd370302047c435bb500683066023100c75fe5961ea00f0bb8fbda0f40f754fd247250c950e9dc08a5d90413cd9a3df0205340cbd2af44150fd49d8ceeb55f4e023100cca1fba999119329b260c3041175e31f085adf1ae2f80dacb26a87479257c642de4d7b95bfe4bb2a79eaee727ebd22b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230619deab707e7a31293e1ac9d318a95a544ea66bb4f761484751a824d1abb8ad23f90f8e49dff8991a44f220c905ebb1802304abc2415822a7cd5467eac22e116435d8965fa74f6a4219aaa81e27a035b206f99453d702ed18302550b4bb7bd7f5a6c0302047c435bb50067306502304903e3a1c40b26d4535c885668f967c0ad6e039764f0a8271ddd728ff9dc15fa1184d9bfbab373dbd40685e28e539e8c023100809a2cb601329fc812a5bcf5aeafcf5c501c511370b6540d48711586bf5c5da3be3017e15d6b38791e077d1f948bdd020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023075010e97e9fae060962e95f8fd99110d50af600d9a72e6b74286c7baa9cf28752bad9a985447782fb4722fa1bd91a40e023100fbdd88104a7a38a424abced1b310320060ea302091bfc65076ea0580234d5fb34254cd4600a64c14813b63c7754b58000302047c435bb50066306402302b8eb450cc45af7d3aac3c5512d743eb4a04860ff0c58aecf00df32b951e396bfe068732f88469710f16ca34b0d20fd20230208dad4ed4894763fc9c761bd297c7b56b4265c43387d519f4275ebf7ff2140d09d55e5329af14d8964277052ce84dd10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023034a8bc58b9f138423bfcf0291e2d5511871eb9824092732d169384f3b9909ac4965b11333bb1470162b6a0ee114437e3023060eb9175bece86d75060e1d19b1c75f59c2a9d39ac0be6c3039ae509f23a3f9389765a11c884899c45c4adf34539e1180302047c435bb500683066023100d54fe8070fcafe2979e5cc719ef35c56d6ec7dc2da175ed7c45dde532fad89f45f829938a9e6ecf98a856d4498c8d60f023100f5237edb9fd2f6d1de5eb40c3f2750dae2a5b4a784be8911f46e127f849939304cfbc676d8095c728db0512f4d86937e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306274b8bddd128a5cce3edfa7ccc455f319eeea8155ee8da2ef60d39b93ec6bef715a5a2d486ced77279a1db82213fd900230586f42733b394bdec38ae02794ce6589ff86cf7d30e40ba8b480d0d113c65bf79e54323008c25d805d1a6a7cd35c7adc0302047c435bb500663064023037de5e15f594e5f561440f6674fb4fd07ca85d3fc589349c2ca284b99f5eea5a69101dd1dbfc1a772ae22667546b41f3023045b0d136b7d24bcac36dad7ae28327be3647c91a5c82988ec84d902233a539516eef9acc4c0e3a13817555e416a8b93f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009d31a5b8d969885ab93ee0013da74783c71d71b126bbfe24116a98f8bf59db42c2726a242aa6485bf1904e38d2e7c04e02305036c9b995ef024065883d3469958bbdfac5ad040499fd9142730188f9e792d280af76df676431165d54154d21de84db0302047c435bb500683066023100a59132977bb4afe6c92c82ac8cca49abf84cbcaf1ebbcb807699a10962143fc28fc1d7a76ec1865d6f9b2bd4917f5b0a023100cdfb0b4b7cbf538b8b97af2658445a2ca4c36966098dcf1d1aa5cde97a809ec94d34cc66fdade481f11cb61b2d8dffd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d5405b1855e370523cb1e2bda0f6eb84f0c9872aef204df17887a6064a17e4dc8bf949c44b324bea4a19f05d737af33b023100f0914ca7530d28c5808787b8581db956eae3b8259aa6ff507a30a150d1c8b0377ef3b68bb5fbf5a9832c7195633f9bda0302047c435bb500673065023044587bfd698384eb57af64be2dce31cd42f671d49c099945d3cbd851fa12ea9a20d25a027778ef0e1884ad13266e9187023100abddde835609ef9313cecadc1f855e9957ab0a35caaa8d89291700f057181a07cb7a8d35f32b3312669d7ca2cf4e227f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023034ee52ac01da5c2f25a6443f7c908e284d73a2bb6c7e2d9ca921b932748bf2d4b3e713e954e1972c6307a9c666735a5002302348777e09a930f4fe05f75bc5df92bb86c4de71992d031d0757b0b6217e15165fe1caf339f25e524f919bb91f6bc64f0302047c435bb5006730650231009b63251fd6663759db78b501950c937a9ed68b00437849b2638d65a30a473ddec5b54ad36dce35fc7a98a4cf43b24cd702302f117e6ad4c8b9c20f16432468ab7e526635105357ddf1a01b63e1f7aeaedbd289c4e04bf6df7bb13cc67539f74cad630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e7dac9b7904be2515d3be5e9e95c3390ea83063c992535de372d9374eb025bfb584a9b56ec349f3a518f61f4e86a9e0b023100956ee488b7aa6184a0f287e4c876fa468594a71f5d777dadf342d0685215b4ab8b472771d1d406fec40b06ab061b30520302047c435bb500673065023100d1db153a865f37c663f84f6973d1bc3cf8239f42eb8ebd9afb44db5875e2e280d3ebe40e224d2c29f1a32a9d52d0fbd2023037f37f62f6e60392bb928ac59adef775784f718c32cfad3c8daabf760f40f1ba3fcf35f6bf67060aa15482b873e3892a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023001bfaf5b3d93c404d5fa071d69a636f8791fb530651de5e1c6bb4d36060b74f698a4c669542ffe4b76c30fe2c32d2598023100e66aeddc79e7adf8d4b4c0df312bf0b702a5b184cd9904197498aaad538ea57a7082bc6582abd5c7ed5dcaf5414b43be0302047c435bb500673065023100c2a0ba2724ce5725010b7b2aee4397bfa1474ec547a922be6850b73ab4a1b2ed66b32e8a16b1110032eace58593da5b902301ba39086b4dd542d33c142caac38e8d317bd04a007f1b983c7c8f182df7965fa407e26c041b721b7aa7e00427ccf68410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230667f151beeaecc3e72dccc3d322202155b125bad0272678b742f8ac580a4964283323f1694e05216bf01ab16e5d35b1e02304d2720531bce6ae6493c77b10ebaa8340604f2f1c9a2df58307eb127ead883738a519fc7f7bb44490ea7ac50bd5d39460302047c435bb50066306402304e327e43d9f9bb8e15107810e00885d0893f0fdde9b890e47330e26c71848248cfbb4c3bbeccc482ac2310673f11fa9a023007f42106f783bc7ce834dd6851d11fe6661e6d97f2e7beacc57c57be147d87004441e9349dad334f0d48617e25c93bfa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023029da9417e266151bd72517cf3de2df2471b69b963e70d6374d9db2118261755bbb1b7247cd880fd676f33c1bf939aba7023003e5b1ea77cc9fff5d9d650967b2fe333e60ee0db7f56c1edd8a2892d7dc649bc41a074209c51ea18cb4871d07ff7e8a0302047c435bb500683066023100d17b67253895cec373e375a200d05c19588fd2e7072a8a00fad7f974a82c08a950ff74c368047bef96a98b80fe13dc39023100b8e27005631c43ddfe371d697711706c9f9c518b72efce953a93a534f0e5527680b9a0e6a0cc7da1d29e419235906fe60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e867b07b01af8d3890ff8534a8359fb606a0172e41768a4247beebc75c5246ba13d513cb532ed33ba67dbc1538a8c74502302f27a303c5751d7a9c9ca4f00583e707ccff5f02a026cf70f9cbf5655b022c036545d44da8133d7beddf7fbb65d81cd30302047c435bb50066306402306fe4bf2409b54799f8a79b438968766346db21a71b1c15e495cde08dea5ed55bf30ead8f496ea38b29871429811b50620230116397046b2176b7ba834729191198097976103e1bbeab08e12267781e0210776ac69a1df26e13b747a8b49ceb258e230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307ac231116f97112c3d49e46bccba72df12f1b87d5e2847a7e9788d38bce9d50cd079566e3e04345d84ffcfe72ba45e46023100cb1d2d26121b42e2439488207a036de3ab214543f0fcf6f8e7e4778594003a1d446c2b16a0729a99aafa3f5ff93284ac0302047c435bb50066306402300dcb3c1b236b026aacd92f83f72a9503ae2e661176358ec5e041505ef70788d0223e72edce75ea0d7f6519fab5b1afac02304f90a9c7b38c94c123ec5c6457e8371eac34779adb00c9b79d07531d50d83dea3f82d3a415229d1ee08be2df6e845ab90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023038468a3e3fb349478d95a4b029461d00be794073dbf2adac9e86755648380a9fd388b6456c4b6906f3bbdf9ffb9dc7f2023100e53adc50856717b98d8cf46101760c34fc692455e840593b7247af1bf7d73f9c414661811fc2d7b813e18ed006eb89300302047c435bb500683066023100eafe07172bf7f139fb4137a7e77e06f59dce1c5e671d83c88ef7325e8d0483a50d963e299b65c348c4229fd06d6d6dde023100e2eac6f53b88c7d8a3320f648a9e0a3ab158a5dc085e918154ccd4011c19075b5ca89136ddd9a3c169f64ee80ad38cd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023012e83e283f9220220708a6f1fad3d6a592a4cae63f45cf3f9b75c019eb3f7d01bc5915e79feb211de0c99181e5bfa4bd023072a2eae8a05448a0d643e887a795907e133ce34ac774dc099d572c03f9d67e26bba6a515ec625c6bae77eefd541e3b1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307f93c8d4adcecb939fac1a165899ae42a38dfec6d19c56033eb6bcda88480b6a0231067bfcfd8965e3b7f716eedc9db102307b164b99e4c55459728c564716e663af0959c4af9832b38db355e550d1546c5e15b291393d0740075cb6ad5fabaa8e4b0302047c435bb50067306502310083188be9e7a74aaaa484ded26cc57b329e7dc3bd4e0e484bde093ec97440c7b16976f45f26bbcb3ce4bf37c02c0aac03023036e8f3dd3fd2c7510a47b4530d65abadb57d3e42fd456b8a1874be34bae1ca6928651d6576e24d056159ea8d2a0e43bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303bd410bbdea4f9f10859de9519ddf27d6e1bc52a2343413ebb68aecc90f763a311dffbd88ecc1ba86c54f011767a8ee3023069b18d55749ff3efb54f9700dd77961eb17eaf72965bfa296197a44d61234036af1aec75c30a7a6b0b130ad2cacf49400302047c435bb500673065023100a4d7055cce00155202721133968d8937644b75170e69222e5522bd38275628bd73c5b1bc5ace0bc7914fc86672d57361023009b9382104529217e7b45c2bd0254a814197552e2815add120e5c3f4c1e89f33e6e4ff8c3291c4d1e8cd08da2239b6de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f8c01600d8983c35213a423b6b124df262b56aa003e326b41734570c90ea430d8b85d7d4404c6a52aec0d18d4e948362023048d53ee5ac5b1f9fb9dd71810253a619f929f912963f62ae34dff54ae2c0696bc3689b1d26e4f5183469f6fd6f4c1c160302047c435bb500683066023100e6c319cb5322978b0d21f05a0b77ea0b8f31a5d43dc828ecbb08d4507087f8b25cc52e3fb3ecc05bb700b72aa3a3705d023100c648cba7665a680bd838429be84a3de3c16d501d31fef831d9bcd30d02e5c9701609e2c833d2b9b07ea3cfc1d8c2987c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303102cda7f18138d8c570c34c01c1c88d4cf26909acd92ef8d618d12dbb522bb2d8785cd6c1a4d17cf2f4b7d56df2eb4a023100d407605ab31e8800ce0ecffcdff1fc6b35ef21b7562f02326078f7fef08ef59f75c4c9d61ebd24f44db99307109684490302047c435bb500673065023100a5b878403d672c2a67a8d46e09a2a394adaba1839c5a75123c1b705b1ef5b7bff4015ac507768486769b3dd24b5b2cd20230601980d333e2fc94fb61cf73834f5e7f72f77332205057af77c89277ccb5c20d4272e4ef368ac4cd6d89dfddfe45cfb90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d8b37e0fb2c63df8fb2fb79bacbe9b8323fc353e2d1b7cec5ff1d735a2c74c827fc8c81201fa9cf92497ebefedaa8ed80231008222f01e840cf8b9f3161599a6592f419e6172d10db65d247bb9048ccb2cd4586709f5a7830efc839a999bdaaf4153910302047c435bb500673065023100acc58dd239f70f53a644a76430486ae8a576e430d6bf2ba22ee229b6dc5c0e7c10538a1a15335bc3b86a3ee5e37b7d2c02307f0fdc1f246ed3ef91fe93b4f4cb6f524a68b2ef9cff9b6b890e694804c4a010668d31bd4904589a52af86b7d261efa00302047c435bb50067306502301a12d9ca805a15d5bcdc762be4c6fbe3c799bf33171fafeca847995b4f09b34e973f8399bd166234dc4743fcf86071ca023100a5eb7ff0d7802b341c9eba7ef31f66471f10890fe83a532e1c501fb7fa2b672b05d2472dfc21e4bfb8945045a5c965140302047c435bb50066306402306dd232afd648f78cce52a78c0b8e1057005ce23358249cc9d0deff3daef27b4d331e22be1c9e67e2bc673160ba38a612023056890df3c68133f2667465992fe58919648f0f3d4397f4030db10fa221a572e8db9e111d5c03c6128ed032da136ef02c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd98118b9519b3790be7d0e8d4be97261f385a42c2eef9fa0c8d996e77786243a9fdd5b2db3d4c2025972c671f2601fc02306ec694d99edddc1025193cc6fa1322036a24acf4de6a80e6f3536928fb8e6de7615f692dfd5044e3c909a614d66ef3440302047c435bb500673065023100e74bcbaa6e1f2e683e534741db89ceda9e4f31e746f8ed2caabc4bbdc7696dc07fadbf42b8ebe8f3f8ecd970fea4498102300759deb6833faa2da589e733e75c7f5bcbfc9f6c2b629653f19faf2260f7aac92c65d71ff23c422d5bd541666cca1a7e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d99d8cddfaf1d7818ffee46aa3d9fc9ebb6a78731e3122835729e531d7b35b7c30c30e1daf6a77986d4a45c51c9fb3a9023100e6ae4399116cc4704af40ac32d3e862860c1acb66758a43bc011d0b2bef5f99c4afd547925cce8549697df866d325cbf0302047c435bb50066306402303e6c286798bfde8337f881388eed4814771aeba345300acd1c8d47200784b17241d100188eff40d8a2f01347f7e7f54902302e21e337ddc6db496b0b68d1021d04280d15025b26a550cd8e05ff3a567e2010bf8a39cd0aba9805c48f0012fffd7c190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023028f72851e073311c0ca3b58db0be2e25e7f84b68ddd69e062234087a3d455d21b037fe129f2d27e59f653b9538f9eb0602300986e28a3ba4fe0a1310281ae9f3241dd423127620b3d6abb76ebbcde56372bb28f066f8b9dd636f665f38b993a38ec00302047c435bb500683066023100cc3b9997d04cfc3aa73808688384c18f311ca66c16aaa6149fa1c44c829e7514ba9b5e0cf8c78fece892474804856bfa0231008e2b10c78b831d25af8763db286e33b489002b26a290afdbf7d72fe1f952928fe0fff34e18f17742c80f75eb0ebd0a0f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e40f39fcaea3d7eb76de3144601cdcf5c0c3785c19a7be8855215460c2c48dfe4571fea09b574a7d0e8950ec0ebf338023100b464a60ae7cd0702e125cfb2e251be8f98d2a74305bdaf3b4257bfb9bee827f8b37eb839f0d04f74bda9c61a89b97ceb0302047c435bb50067306502310090f9c124d6da4af9e8e38d3638fae9dd6d8313b43265543d3ac51379c7631b86b0fe88a35dc066024a98de1f6d5cc01c02304f404627e46f426d9ef9739b2fe9700b05771aa592b2661f5dfd5a5d326e2b67111b07f7ba0e06dfd712dbc26a951b870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008fd715054a793667837ec1f9376909913538832a315adeb5dff8042db27d84f72ecae2b460a12c9aea1de88d58755147023019640ff82d9cd94f386aa0d37fd3d37df079505a108bedb62ed8fddaf807e7ef523b57e6be997e6bff6f7d07655256c50302047c435bb50067306502301e7cc09851f4ca1a8c91b34c200f64b4f170465b60587c43064a0c83975527c7d8b16ecda9638df2a42e5c7db2310155023100911f45233f7da2395036bd1e5620f01652e0fad269d8aac37cb21c8ae2f58a3e733f1f486cae79bcd6c8956ca47694b80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305b3a947b99576b4c40ff245d7113e7728c76d71dc149fafd69115ec6891fa16c3a08b5621c85a549d24e9e58984c17fe023100a8b2e3fb5397f327592972a84bf7695e7feb5233095eb3055e5053d5e58fcb43cabaa3332a87714eb14a5d4e4c6fbc3e0302047c435bb500683066023100cf3b3b94f15d68e7c039e14ec965df41ee207393d6b25bc1732f617b4f1f911592fd2dd488b84f49de9e1543e99c59ed023100b59666c123285ebf1a5d3ed1c5ffdf71c983a91f9627da98fa7cfcc8ec9cb27be0d4cf257117bded427b73dc43bf4f460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302f33ecbb5e51c8203c805c2359d2e12ebd4e733542cc30dff1e4fb35811e48a25164246f09ce8c84db673b30770d7dd70231008c3be4845293de44c2922fe71794e12782e10db9ea18c5a5201c8e85da27acb518f2e007c8a0d70a611ab23a6529dd2b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cb03d3829d446b50f7d79ef72e15b8183bd18f6627867fa634cec144f74d5cc32dc7b080ffa91ead7733104e5865936002301f1e487dc03835eb692e80c3bd24d954a85dac0d609516251a2607156dabfdeb9818b835cffae8ca909b6ed13b5ed14b0302047c435bb5006830660231008b37631868efe2fdcb7ba45f9d6f63e9ecedd045d73709815d578cd72865d75a6e09277f3a68ac0aaf8bf3daed4bb9b8023100c17e44976a69045c34bd2899c269f838db17d325ed947777c5f4a0bf335fd2fc29b21102fa99f866189b0d971c38c4090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cdd6cf13ff47f8566bbb33bbf4307a58a1758e289450c42e07ddaad25d55c999063b78a3bd184c32290364cae88feb6f023078b0f3c20ca27f16ed6548faa9a4bb0f41441f71758b7c5969d945d78081fd7d902e3cd2077c25e9aebf83fa72d30c5c0302047c435bb50066306402305ff5d0d3a5cb088e5a29e7215969de9bf4596ad147b771020154785512cd8e48e509f6f966ea37ca08458c8dbb26bfdc023038729dbf2772fd5e0bf33aa4c4c24d4a3f418dd0a3315966b4428bb264f3d12f991f018d4dc8607a2847bb5b79edd7e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b18f4657495290d9d8b62f8145e5513251abe534f69fd1623c431aabb5b69dc2a580c036c188ca1273df26e40b9d0904023100a6926c94e436ac7d506ccca2abdedbb074cba0376d77a55320e68d35dfcabefcbb20c995b603a3a2666e684b8f9d71ab0302047c435bb50066306402306f01444e316977acbdd5eb12f5d1a8c1fb06f2f6d885f0e12f5d6bf12a880f76f29a56168e25e0c700291996ff862e11023033f00ec0e957a1002f95e27e424162e2fb01b2bb42e8a29831ed633b4503a12e9da8fce42bd92f9a030e1b2fa77e7a440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307f9aab7716508c05c01be8075e96670f0a9f712ad1aff7937fccbd5f928d9f43a8ba5f4b0c9f5b4fbd838297e892f7cd02306eb45a6aab6b789866d7f723b29fa2264136ddebd7a45ecc9e9e56541a1c2760a5288f6651e69fb08abd36fa42214b580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d29cadf42bf1ba3ac574c7e08ce535b9e90db5d1014d940bb66964eff121e23eaaf3e25739c2c82acbbb17714a65390602300f8ed6f25cf9e78ec78138bf7aef2795460cff7a40d86c25c4b13441438c709c59b38067ca109a178706a3c4474547fc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303beeccc204fa7ed7aa6d3aeadda088b640816a78cdc858fd1f1215b311f7bb98ac2e6a4b4aa905b3844a48b46c79c0aa023100ac100dce68946d4121a09d5d80d124fe53d7a4f24700f0be0526b8ff62cdf6fd0f7b3e58e34e820d5d127e827ab361cf0302047c435bb500663064023045c221882425feb3caeb56ce427567bb9c9d16f9443681568929a9dc17ea8ee4be827ac287cd6bb328dfb4b0955d00830230158c310145ddaac9490dc9d5773d68d87508ecccb3e3024f7b5ccdaff0c10b2e9386cb904e6cdf61e731057d422f08fe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300177ed43557974921774abe6e6be3536f0db2017459c5b4d897819a6ac289be99d312f26ad9af8cc91f4f4251bb2c3aa023100df7b406d829ab950fa3b4e78ad66ecab4d1c7bdf2d5961cf3bb80a0e90ba578bc7143d3c57a7142c28f7981cec51a7db0302047c435bb500683066023100b849104148abf1b9ac42f4e1d696d4c9bc4f64e2ea3d010d7431c61abdd62a18dd439f4d13454d35b640ec27be2f4f950231009bb3778d2e31e6a938f530702f27d60ecb138a1cbbedd2a4b3a964380f81e897cc1ccf36ee4d1f32d71383fe431ede0f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230165b29ca50528320d6fab72053a1068cc7ee78e616593e7e6df63f4b953f0411873abb7ffc2410610c799fbe885e69340231008cdd1bac266321b6d27098115af18a9c1197edca6dca778a4fa9e655af9381adc2b0ff3f1c2ef8db634ca65aaca6f9710302047c435bb50067306502307b883b6f0287329f9d76ff699af2a24feaa42b5f02c17aad1e3833ea566a19be444b7637cfa30f8120b3a73e6839285e023100a548cb03a5d63ecd0576601797bc348aa79f335b37c01f5cd2fa55ed254cb9191142465677c87ec006dbcf1ae0ce28f70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a19b09a3fbdf2c6f9ef880391b15b2e31eae6fe0e94fb6bfd88ec1aad058486a07f0a5dc7f35404f74b1abc4401eef31023100876b3e1f976b58beaf93f6a3d61e059ed42bb4e29d16de4095a1248c91d2db038fe6f698adb51aaa7df11dcc2dfc9d700302047c435bb5006630640230774276fc260fe9347b45cf4dad7dd53c17f16d2039d7282448aedf01843132c5451400f1e0594af1fe086398b90bfa9e02300723c043682111b5918d783d65f5830c2f9f0509d057a165786bed552ccd6aa6e142b1d2e66baad9a2b15957a0366ead0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100aee61c7c155a6a0fa65e02131565a7dcf0ba10dcb8c57bb2d03e1e3d996842bea24ec4e38277c29006b973398018d54b023100a956678d9817b902c05e5fe03915de55d60be15b4f9293b5d9f71f8f96edd2f4d6803075641e52855c82f0fceb24c3820302047c435bb500673065023100a17247fff225a09b5ba138024ffed20b96d9e89e51cad4dd5d0ed9921653e850588745e3ac2e7b568294bad31f9ec518023024e6b86d4f60856025e272dab086126fed96b5eed3e3adf4437996922e2d8bafabfe84108f3fa7ed23a5ccbca8f3d0210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230696adf8e59a2815d0256f3943b41f189b40d69f1f046930e486a9c4ba5a95adff498efaa32fbebac4edd3fac1911ae33023030c7c5e5605234d94ce269327671b97e57e57c4a56da23e5195ce9e3075bd30e4cbf83c8472d83cfb2e13a657ee7d5d20302047c435bb500673065023100b8d18d49784b4dcdd0edfc7704309de09c6f3f54117669badf59f04de944dea23842c3bb0f9a53826f6decc81d0b535b0230646e2fc0f780da631347b6a3b514dd23d0616cb6c1437e0ef143e80864ee26e1317a5ecaac0ec552393c7517ad4464c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009efc75fea9865fa02268c68d6553bbafaa7535d9760563157a931e1e3b9600043b865a007db3c744c467921b4612db0802302370b9515f5c38255410971b824998824ffcdba9f3639fd5ffd4e225913ddfabe37ac71169a705eb5a8a4b344d4df0c80302047c435bb500673065023100fa9658b7c9bed222966b060986c451e5579d27173ef475deb246259124df60bad870a42d2d8da0dd01bb6525e88ab1c60230121ff412946b2df20ca491e682941a1eb71fb2d9abf538609b19bea601314700c47d7425e60755e9030816a03019150e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a5b46f5af919c088dd06f8cd79edfc06be01808371b06f937caca432e0b91166cc42705ee2cb67b5629fb6d9e52f845202307dd02cdb18321466f09674dca18ac8a099992f3830f78e81fdc2adf723abd600d485927ad8aa5e7c537ccc8df5c9c72d0302047c435bb50066306402307c3d89231913d361f6da80cd315c3ac2480fa421d5183dcf354355835d3eaff5fe73838e5f32e922864ec4da09382a61023013fb9d7df340e72d6d7ab430246b2ac24fc4127cb362f21c91a30e4ec5b00e39ce3077f14d45cfb80027398a210413150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e7709f36d7494886aa97c23642e8f824f91c7c5f84f5fe50c9de551240f79785387a0118f0cc01e25d6e3a6d5128ba0023100da84c0a739590a9c14c01dde9cc7fe016b23a034e7b1e0c92b5085fa6ae5d1305c8acde601ca612d4707813e8c1e784c0302047c435bb50068306602310097598351e22f9c74b4fcff599b02b11a38066481766736205edb87b63ef98c3d55ab2bb05689a4901cc8872fa03018d6023100daf98578e8d72c35a5f2bde328aee47f5b85dc44ef05259b245330a36bf793ea2caa3ba45ad27363169a595592b602570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306e4c0d4f8e3c78b29c17e214b8a7fecd58725b5e1a6be9fa8936785d49791ea365da59786a6eb8d87fc993f9e5b3eb4c02305a405dfc9094323248fe87c265938b49c87b68213f687883d5002a417b1b37d98e08cdbbff8500c9640e6862d54658a30302047c435bb50066306402307f7d11e6dfff2273a30db8df1f1648bc89c04f14a0677cd1533b1427860d34ecc22ed9fa164b2e297eb916a42fccf23602301f36ce5b31bac57072b1b1bf0d3644c3d46ee25396d82b9efa05d839b7de40598b0b29870e8ea1ca870c24dbd55315f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b3bb18aa5e7600d85da2ecca283066460717f03d94582ace6e1f131bfd00d3598b17a018de6764cf064eff14ed0c1ce3023100d675d76c7f9c027314997b834266b67cc2203cd943e25f416999ae47a29998bfe088daafcfcc0a6df21de3dd0e287d370302047c435bb5006730650230757b0dedbca9e24c40cb1253fbbbd08528e006fa13ecf55314e5da314f160e97e1292bcbd768c1ffe08d379f80160c78023100f142af683818f86fedc3920e21e52be7b424905cf0eedf4df8e6a059eec61f3cb39d4086df9d70f874ec0b59b5b126b60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230534568e1f1b42f6b7d4d96c71ba7dc3eb918ae98d0c77652956171e97ffbd58918a2323d9a19f1ec6527d0047270684c0231008c306d541308d488f25dff1b56d66fee28fff5f9595a688c03540db547a00c04f8368d2d2c6f977c2098293112615be80302047c435bb500683066023100f58bf0af08b2581d2f91810f99a7aff01f531b214141297df41c859b9177590c2e26d0ce1613cb9fad156f3b9ce0aa94023100f8a2fa127ff8bfa5c9573152047eac740095c9b1b15a243b9a9ba54679aeccd5418c96d7e5f9436347c4ea50c30a290d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023021479f99b77019e8ed3b8928fc046e793c3d76ffd930f72316c6bab4c2c8fcc5638cc00ff840ab7fa7184727277c9c76023058158f285cf3e2f08bac3bae6ff98a9f984ecafe9e892b9734dac49e44a01b9f9769f6e139073f7589352b63944b6f6a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001bf070c055570203a3db4c79e157ace758f5fd2300c317ba863826734909cf4b223b6525b05e31101170f8e1caca5af02300b8026f46b612d8b642e8e560baf1f712d73a29d681868fa4da734b4094abe6ad430e19f364c975726c1d2849d9b9c030302047c435bb500673065023100a700d8382a612f7f5df6d18f7ae6dff0dd997784719a4a0b49715512560f5dfc75d153957bd372174a62b816758519ce02307817989cc7b55324642f0addb08c0e6656dc8f8ab9515f2c5263264a03663f7aebdae360095f4afeba35323335b424170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bfe47825335ac058782061d5de7612bf172dbf4239b2d26503dadba82c4bb1611d93ac4dcbc0505c9da6bd60b874ba30023070409388dd3d71f13314433f6024138a457873a4f72ad0ef34da32327a26f844f01e3d0029eff22fe1363ac611a7bae10302047c435bb500673065023100c303041a8726cbe1866e6f173d50b0d9b0596d9276e375ef0edd14beac2907a178646422eb3e16595e8a35c25baaf52c023012844e357a2fc6bf5a616ac89073b3870598a6748f8a9e0b929250ad742ff4a056696050bdd5de6eee02483b7bfa31cc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100989fba0824de815886d4f2a4e8f00cc29015a72fa1d59defc28a03ce526a717eebabb4b5e057f8933f6f25d972d06f07023013bebaeb88a4fd002bb33b917a96ec357263a05863d3c72055015201a3480111f504d5ec5a45ba8ffd9c613d4a6f11810302047c435bb500683066023100bdcd7776579e6223d2df876f93d33818d5934c303afd719130b10b9bb706b283562e7ff6989bbb646ef2d244942c0f87023100ce0660984787264e692cb9fd0a8b4d2d5bc0b21a8eec943f9aa4846a9f91ca0b794425963edde64c2f16975b31a284bc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300be2bbebd3db3e7429f696d6f7d6555b88728f3664bb91c23df3360662a140e2254df146b50286a14800af4e3dc4333f0230662ba49ca310ed433f1f91b8753c579ce14fd8015140d0451c18330695edfdeeb93c9268568c2a25c037228c524ddf0d0302047c435bb50067306502306e237cc98405d06ae5e8d1c3a923d03147616e2ebcb9591fff92682a5930ad5b959da5656447407b024d02315e1c3683023100908b1de00db8a84a2b6a34136e62c8782efd75a321145b3f51d1b847a75a43bf7c04b2f82f6aff6fb42066b2f247bcdb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f9137ca1622f8001fd28d011bdeac72d2e2f41ce214dcc4a0b119e7595eb26000ea3308d4b2ab132447d5dc2be1a905f023036cce186ecd17e79d8eb5f6017e80f26ed404d5f87673e70d8b27123bcf1f628feffae9095d176b27b70919ad2de295d0302047c435bb500663064023033d51075d7f85cf42e34e792b2814e13de2bc2d5bdfbf6af39be93e5de5f7a4c33cb894872b61bacc5b2515d4947aef9023009aba8b85fd396e860c06c8b836c43726b633d798a6834801f7e1ae1522657937c978eea68188f7e2278e246f3b82d810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307ad8ac6d1f3f94c89b29ba67a66c6da464cfae8fcb401d0f309196deaa68a6461ccf79f44d5803b527b4941c5888723002310095606c0e027a6a42d4e6ac24d96eed28221daf96a4e13dcde4ac9f377bd4db1120a5cab6961b1e011172f13a50e255db0302047c435bb500673065023100a380a21c2d47edf9f03cbc273f8b5bea567472f75c5d39ee8aba3fcd9467ebc796f8c6fdefd47ecc3d72489b8459e93902305ba67c48ba41457dde6510d145954a3368b0b9a487348ee6316b1bc895459caafc3ad0b52ba60b0850b3fe370f9de1ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304baf241b818b5a97371c9823245203c46b053ae1992b5b45596f14664189ccdb11f7887600ec0cf74ca3a9168b16fde0023100dced03d31ef64030106b39d85dad299758ea0147321641708d14ce61c3e031c1b10d1952e377a6b96489fb968cff1b400302047c435bb500673065023069688da0a3fb353b50b6ce17a96d2c56409278e92158c836c9f04cb0102b56b722f0b421eb2fbbd0e11ba0cac539dfb10231008056350438b49e652189ce95bd202afcb7bab6e75c89c2716f2880788ce825fda1d01eefae2fb8f3ee528323eb7f32730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bd17d2df3721800b9e48a5efa9d6c636c9acf10b723389e5e67739a829a1e2c80074e45a533eae9f63c5094dea66bc9b023100d68e67ac90ab9e85b39c9d0ca4b0a0c40eaf15eba4a8fb0ff69ded3b057f86933af8094d008fa1005f3e0fdfe7c52f960302047c435bb500673065023100e6222e75867baa53db9b1d5ba9f0c4121f1346ca86457ccfa025153ec54dbc8cb84eb218512a2970ed4221e01a12f55a02301332de702e6836cedfb96af40b5a937382d1732fed1988433e1382c562141d3801bf9b7b9dd6382424841391f07c22080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023072e25c4ccda6cd2a8882b536670dff2552aed5e0d475757e9bd976465a266a0662a61c323def4c2f0780243a2a349840023100b127ea5130da5f420c8bca147f3f37bcf0b8c80f69184aa9eff68ac35c0c5b79814952b5ae5912d04871fa64093a35a00302047c435bb5006830660231009a8496193efd04e271cab0afc4b5d9e8391482c28e17fe24461d7d1cae55c3b76d971970d8a85321292ef5f54bf336cf0231008d3a10d9f19c975ee30fad5772a55138a9986a7c08aed017c190bd0edb45647bb1a04ada340edcf1528bf2df34b923150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a95d10ca14fc026500f1e1bdfa1fc996fea4886d7381770c8e9cbe5d1bc57c9dbb6fc38852dc4bb33463f0ed34407dd402306e664e61de63a7af3595865f6803cea0a13aa174e535b9ec468553c0378c8da91cdab42da4ac7e7c43f9592d9c8ce02d0302047c435bb500683066023100f4bae2af3a40ae0994995a568279241d6bbad0524dee09bc777af368b21998c3223756e46902b8749059e1c59062512002310098a123cd5fe9e546a8ed809a43bdf73832db5e836ddc8daa62406facb4eeee89aa788e3d14de1d34c9f56597afcdf6970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306b35112017bd5722be323179112d626652174c648dec04bd9466dc518ff1d49d3c2e9e6c02f257fe4d879375f6ad26b00230159f7d3771c60bb58cc0c794524301478265d70b7685f49b628ff1ec1c5dfb3871df011b9332734c5fdca6a1ee47fd6f0302047c435bb500683066023100af0a4b2054579221251c09a5ef3f8ff1733a82f64abb6c3b1f9dc5f481861fd758b7195b763a258013bcba2d511e7e18023100e1f96a3460a3bc6e7e56877c670e7862dc4b7b6235a7a25b0d394450faf8ce13915f0d15fa7e0e3c23ae79b83c4bdbef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230306ec3d441f810bc246bd412f7746846479242de8b26119a9297b8ecf3ae6fbcc4962cd0b0b45b5eedf672e4f420bef002306c9173ec01bbb90b7e534e9d8a62b5b384d560a9ec7d18ba7cdf6810f2b8e412dcc66772de0520b07ed835d281bce9ac0302047c435bb500683066023100fc46bda0c112563e3a0e68de48aa3c369e3c4c37fae634a876882a545a6ad4ad23eb690919ea64790bdefa949830278a023100fa991c349625ead23a8a67feab6e7ec743cccf682b6460d83585b70faaa721ec439abd5f3fc0666c463436efb9be44160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310098096801422fd7427a5d959158dae7647f45a4d66b78f932d70963d6fce370d472869b26068e9745866154b10218300c0230320f37770be94b6a6df3cd123e4247de37e8e54e6d6141c289406e6efc3783bb3da41e3fb748ecf35470d19fba366c670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060fef0025e5f98297382b16dccbed8b0b4026ea08305f730d105887550a77e3ba577e68ef1bdb69e71e6718bb6a301200231009f792883c202f5ec38dfa94a835c103870d25c470aad55cf7aed519eaabdd0965781838886d38bf3b80271b71183eec30302047c435bb5006830660231008940dd727141c6e965559971bf14c4e1ee5c2a0b30c9c6feeb94312c97003ae7af123940be51589e37607956376fbc65023100b5d94a76b5613c53baf26a2f3aa71e4f00a63e0e1b8629ac16c45ed64ae3f5db644a7e09519bdada1a78228af645e0d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c0a51eb4f5e0e6d33fe767904dc12e1f56aaf89b32880de64e908b12d7a60293ae65bcfdf9ae81cd6a1d6ed38e1ceeaa023068223a7f31617171e55d854a548285826dfd6759ee6c30c47043c18abcbb62363b5ad551f6fdfe7251066729699cdb6b0302047c435bb500673065023100a393056ed7808409efa64c0375f2e1900ffd838e188978713c630a4fffedfc2e06f0a75316afb1c432cdc6cc55bd3e5b02306d6c41b8760af9962d4742df8335e8092cefb0f88fc6e2aa760b37ea88c0804a83201897ce8957e2c1923720d63b34810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230378c6d658a6ee3b1fb371636ad6e31a4422071b71612b8f01ea495b94db8cffa67d90435c9fdb96eb6e2c3c6de604c6b02301bc68bf4ff8cc1774b592c747615d5179c3a8b172dd80c60d6867c4c126cd57ed182fa378d8d88b2a90dd9aff7a5b04e0302047c435bb500673065023100ba4521b0c694e6b7c6ff60c8547867ae8366d0efd625cf8487f048648b82caacc2b4478159ebe90ecb73d0629941b559023036470712387c143b518ba19af03f03f28c2212f0e97d5369f4a2e6fac392ea8d357eb46a693cd56987275528e4006e1e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305fa97c316510c23156a49a58fbf335e71fc8e176aabce540fdaa7d32d2279b7c98c764d89782e63dce5f4b3846f80afd023052dcb20a769fa1f730d8eb64577c64072ccb013058b55c0c9827d53d136664dbd9c0d4ad5f08c71a2a062318e92c38120302047c435bb500673065023100c3ab7d98e57568df49b78e57e2a888e789d1658f99fe515270c970cabd4c4ba37536576962ab242524c6ef889ea7222c023051b4c555c16e3efa936e4827697acc4a866b6f98bd49787aa024358576418dc6290bf1580af032f4ced5016a32f1df660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c54a14267e5cf7c0e16cd153d9aea6f0793e6fa0ec3f63f93038f50cf474db5ffa2a5cba06614cb7d0d204ec2b816135023008ef08d6524224b39417355df696921bd84ea841c660edc59fd2280a988f92de459677f0bac8536bf7d4adabeee8e4df0302047c435bb500683066023100aa1c149b2bc1a75a1a41a86ef79f06d670437f701c5d8849ca19d8d82896350f7e4307754ef8e046b5107a5853d005d30231008b58937834701d1f2796132752fec6ae272fc48f72e69431712ece1754a91f7def57b97a573f457adbf257529e4640fb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c327c92927efd1f3cda010f581d3211a3aff33d92fe47891452bc743a0a0c9433c3a6df72f480a52c6301ff5c0c2fd660231008b3bc452f172ef5eb7d82e1bc0340ab307810cbdb7dd7870b9c2a7876fd072884f46c11dd20d556fc8e2b1a696fe96460302047c435bb50066306402304896a3b6fa38ad89046c236b81d385103367246fe500d778270d3d8db921e426f3c9b02469765cd36e99be0e55a5bf6d02305964f4b8e20779f3173185df0c83c4d00fe53e408eaac07c0d808964344dd591d60360c692645e6b060e2ce0a77e5b100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bcf01e6e2e6bb264f6d8a69205b5f5d5032a3621f5f094b543045f48bf5702c9b1fb9f5b48bba776cc0f2355b7b55ee302300c9b3e89de47aa44816cfa7273a429213e2387aac9feb828a08452818144b56bfed5d331f6b632606509e593bed937ff0302047c435bb500673065023100dc37bd5d0322e0f5dbce904a3aa33e4eae4203d77fb04d915362c0d1100848e16f7771e86a472a0340ae92ffd2c4bd390230598f0a191fef660a1cd236ef815c1e6f1be810433588ef4f7f295c5c61c6682119e89842191601783b1396b3b579f7e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100effff3318a0fef1be12d818c335035ef3f0eb676386cb3f08b0d7ef1dc5c6a6f6f4ed7dd452f46bc789fd5a6d74416f2023100a636e714f68813f3d95cd3b47c0b19a3686dc33b284719ab49ddcb2f5ba025eea86adc21975c3b3faf29731354037e9c0302047c435bb500673065023100f28a6917e4d7bd30d8a96a1b3cfb59b676644dd7d65fb0ca626ad103f8d5db0ce085c30fef7676be9e10faa78e82ec51023003af1d55f884d2bae9474fdb8c97d37c9f42adf4a85a17b767f7ba2ada3d61384eb7e6f222f4523305f585e666f62fc40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306feadb577155948c15dfdb86b8c4854662e8cd412a625023089402135a6be093877d20362399798e2e17fa2371ecdda702304f9170ac43846001169d60464acb734c745f9a146dbf96d1f49c55b3b14e35e8c409ec1d0b40d2e9749d38be8bed833b0302047c435bb500673065023100cf30a6eea0e11268dd99ab745a0eb2c6379de6419301b5df4f0e1f2fddb7d6eed67ce8b4bbeee778dc36ccc4fb6a246f0230623881330290002a611393444ef0f1176e1a3be54b2a281c1efa0ca5503146d8b0bd919f0ac3543ff7c285679aa4d2210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023074d3cd5876492b1548389f692eff9c57879485bf64508a2328778b2a3725de3f59630f34c972914c1d898ce05a2c85dd023100bb4aaa04d7840349dabb2f99eccdc807ebf19ece2255fd22ed20e0705930732f488e5352b0d8ebe8e5e0dae922a2a8ca0302047c435bb500673065023100eb61e841ac32c598d937caf1d23b698c846c74efd7499b479ceb55533756414d67b76325311c37d38b563d4826775b91023012b2a233284fa69ec1c44b0105e53210f1e2fe4a55f3d9d7754b79a0b23848d823eb4a4d4a604aac233814244d6390a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230247ec3cebd3f6454aaf51a491ed14036891735d9140b828cc8e71e92959872eb0a143d0abf3be759ed02e4a2b1c2d44602302f2670f0b41daf9b276419f113c529c23afc08bcd8a25ce6a9b2df5ae688674ed7bc819e5d4ae2cbcb02fbc7fec6c4150302047c435bb500683066023100ddcf9f94465bf47889570c3834eed897f7bff2f78b11431345a68e74dcea18d6a140bc5db09b3ddce762611b9a5b8abf023100ee0219593aa250fe5c864f329c165bcb563fdcc4b4a6a1d00753850efea4258e07b2f5cfd30bb9c0b45feda39203e9270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230150c914e7ed938b4ee174c67d4e7807d562a6d229ff91d280b0391b0ea8f8952e23fd4f3a3a6613e911286ba4d8239e30231008ed5d919ee59d1aab0333daec6d804fe2517bd3a3302550656d2578df175f6e0ea9ed49e276731cc2a091929e8847f0d0302047c435bb500683066023100d1a7a89069dbe1830e91470c06a0bc801ffd73ff236b0cfe2f7f78225a493022ea95777b718383ea64572ddd7ed4b358023100b8a820d8e22b3fae15b5196eb89d7a7ace68670ee99dc2e8821ca271348adacb61c7c6fc72c2d8ca2ab1734e866083040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e71b91c8c168e5716a14723bf20baaebf7735fd7264a3d71c75090960fa573f7a3f992756fea86df39d90f6c1290ae9402307b3b17088c07f595b6f32ae12812aa4eef71048da38ea7f78a671d2f0cc895165c9a0fb005f13082bb3463d5fe68e9330302047c435bb50066306402307f51e3e305672ab5e70b4564384bf9cc55f2b62bb1ac5a236b4c5e8556a5c9a81fe11bfa8166859ca844799c5d0a8098023061a6d11bd96aa70c7cc2c2cafb6167e9d2ceb8e4eca06688ff5a8923907b104816f51495ede96efb643f8bd62c59e84e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bdc3590220cab50d91a1f5ddfca9e133c411943e2fd09c05b202d662673821c9f12dd45f10cd076a4e7de67ba52b4bf4023100b0bd1dfb979e5b4c86fb4a40b9d0c2779ad5ef7e9229b4c44c0cc702265bfa6ab56c30d732ab1e8cbe3b3f01316412230302047c435bb50067306502300c3ddefbd9493c6e5fb6a8b7b90ce2d8f55e32e17fd864280f37eb11cfd22a0b22dcda90293d7feef9da362ba28e94aa023100887de442705c9d3fcfb90ef77f359c3951972ddf963dae6181f3871e1029953a0a3bf28ff15b4f5e432f9617d325ba380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305d1dcf395ef7e98666f5c6fdfe33003f9565f6dea76480980d27a07e9a279a5261b72bf45af5a69f7f355b28277a4dbd0230723716a243a41d7c65f8054a5b3aa7d470bf3ae584ba22685ac30a3340a13dc9ede8aaa3b3fda0c2d254cdf554224da20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310085ed577e36e06d12996973c4542851d103d834b5df8a22761c79e95380b406c200a786f1cb50c9e37a170e02e79786740231009708ed466a81dd758cd6be4156be39c012c5926c943375491447d0d03d5e1e0276c9cbc6c1ac2ca2849b5814491552960302047c435bb500673065023001c49a7d319f75ef5da7f732529726932f5809294032e1c11c112e0898cecab626d59762d93bc8eeba1a1d349997788e023100cb500279878689e1c4ec53d13dd5d7150d4f6922297e5e8f4a87dc60e29e449b7d608661f74243a05fdb109b6444860b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230453ffa26fd320d16d53dc774980c0fc023c58a6aef5b9a41176ed45977653a7a7124958fc879a54500e6be2d695318ae02305118c8594469f3f817f485d91e2cdcdada2357c581a9398191bece0a5c75fc2dd1f4a8200a6cb1dc9a3e9d9278f784140302047c435bb50067306502307e67cf8159c4fe5f0c7ea47293111c20e559089cb19048051366b8bc21c436595c22cac4d27bb243c654aec39d29e40902310090a9204e6fb373d86ac882a73de5f91b5ef85170a705beda1bea2e701d25c19d63fc5818e0c304eb67e58d4d636fffda0302047c435bb50066306402303fede1c59d8816678234a19f5f76a26cb2d7c5f002936cfe68408d5df34cbf4919d4a232c03ad1e079e7866b60b437aa02305d4cfc13c63e427fb5489ed1e7e475c7bb5226867a47361efc834445326e7d89ac4046c9b3e1511ac11f92028ce1bd080302047c435bb500683066023100dd30a2265479d62265e098b2439065e7442d053ea4d4eaf9ae3b949126e158a30a2003fd881e8bd6cb076751f23a3df3023100bc2288709e959e95176007578249781b9e5c781692381b9cfaaab5f5c69910fe5f6d8f71950a935ee9a6ec0ea2d311610302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230448afe9b3b9dde73acdf83d9f2c42fbe5f613b19713780a89f3749b046183a563be1ab34441c01295578dd1ebc922e6602302595b002c30ba2d7ee87942d8b5b7b186e02ac97a0b88d3b2ad42475ff1cfa7c1b2d95f3f882eb74c2df1cee50b9449d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a2ac709c005326bd441d40630553d0df7946be614bf6677114cdff33b0d67fb9c52210e411c48cc88ad31f3e2f618d5f023100dbb24180256b2e44532be7ab73f603a47ce0b36154ff32aa2605b2721b253edb58b3f4532a3a97cacf1c7d62b0b74f8a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023014231f423ca8e8fbeedf0a9605f9941713108cc9d304c9041b41cec2751dd660a2ee6494c9a7eabbaaa63a771945e3e7023026db39295218dd72048a79b3eb0fad01ba47145757d585420a97fbcf9b348cd3d4b6fff3854cda411ce6edf20cbae9070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009c494ba0ec076ce9469f2df7f909206862574967c606ee81772d3a9f3c612ad0f63399e956fe4fa1678b693d79516b170231009a1412d6b929f0ac8eda016d01a31339e5f0bb5b20ed9b00f53bb33990b1ea7b8d363f32a94d3618520fc0ec72e6ca880302047c435bb500673065023100d80bb0a1e3d6bea3f0a25e2be5cb310753598f88ee30eeb92bad927b685d63b52d9154ef84c0ac13806bccce84f7b9400230441067bc0240123f7d9418d2ca59924710bde8414b717f208203b00a609560bb4154e2065837f0531ec255b7b15a1e840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302675ca70b7b20bd998a5335ebe212fefd929170777b0bfaded9b2f79a2368db48a68e8e06160e5173bb42a42980d284c023055aeb0951aad0b04c120ce8a4b3b5cc109bbcb0f5fb6afd9eba2f003c61a4b960e2f2f6cb7ef7d5445631b6dc84a86420302047c435bb500683066023100e719616abc9455e373733b5ea91ad73a3c624dfbccb294800ab1090988d430dac9f380ea9bdebc065ac2b4e438d862bf023100ea7351027cd1e2ced721a8277ef000227c022fb4a227ed75f9fe6cd80b4916b109fc6d47e46e05cbf80c08a21d43d5870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023035ca01d025b815acdfcb77440a78888f97f19026bf4a3b99c9d6aeda188ef5ffaeaa35c53771e07ffbd5aa2a5c3752a10231008e7cba5324bb1d294ff208d80d625cd642f1d26f96567f4344813ce8eda73c0c383f8f246427c2e968595280cbbae9670302047c435bb500683066023100fbacb4d610ffd78ac1e0288f2f18000213f9adcd60f51ea08865719d00fa1ec2fab56d32b55c328f42f4d9231d497e42023100efd51c8eab12d9c7302b85d4023478e6060d664850fb7cc8a79ea57a9df9b0ff04ee675149ac4d796a7509673736d3670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c33b266f9fc21b51b329f44906fce8a82b92c55e9ebae03fb45af1a220c0d9db6416ee248007659733c81f758144ade6023041014867baa78e1ee7e79cfa59473bdd71d41b9f9116def765515423ed3de6a62253fdf0a4f9234bfc0bdeedeffed4140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310087c83efdbc16445d3668b5a3d6e7c045c6535c9f03c4a24be451671847e0744ddbe17c3b333b9b2fdc99ebf7dc3dd898023033d1203a6a3581ce3f1461f3d3e70bc8ddc12f4efda09a7599396df2a8c21248fbb8bd765525be716bbdafb9d2341c010302047c435bb50067306502307fc2e2e2cddbe64a6ad946d837c0b329bac5a61c1a76e600cfbce3b77a7a1601d365b3922023dc03d3d9e46b3d4a606f023100995de79fd207287b98911e54dfcf272716824c07d7eb96dd5b78736302f4305841df9f605980e59aa4a4e01f61d467080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304d4a2d5b72bde849567881bd57c32a6eceb395f6a71746996cefe49632823680352ce40cf6e065f918c94b8e5c7d616902304bca28b1925f4e70419dd9721d2ea9323b0bcfe1413496cfa3402c1619c8080dfe208c4e1ec233adc41b3fd323d40b050302047c435bb50066306402303a0d52461b5a81f515ef2c21fc6f86fad4b8b739cddd40afc37701dfc8ad156c425785e305c2d38551b15e8fc28e1867023022d35e003f2e5290bfc3b52411af69513bd41cbc9071e57a3da18f4cacccf81219094cb3e16f8f1c4b9a94aa6f6a425b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310084b865ccced05c597d592cfa6c2360518c13367613df8c8a0e7eca7e2bc829f79dd54934ebd49d6c11c8ac38fb836390023100990142f692e5faacfa2cf73a7245eaa95d18438468a84b257051838dd3188518b4bb2247f22ebf617bd7670e39b424cc0302047c435bb50066306402301b42118ead37899638ee2527b75d985c668a669bfcde9ab7c9ac0896280d30c5781176d8ca793987f1f13a165cd9d7f402302178e2f75647465fc84e6f05b86a0d6b9244723cfb084160797730072309f23cd89464c550cb5249827f638fa62d31360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023008304a2526c5381b35a56c0713a6aeac600c5e696fa5664f5051ee950710c026e8d609ec02bfefda96793da018fb1423023100c1b89c6f3b059c0940c7812b38c8b6bd2c3a579c1e9803a538b7b93392b844835b65706b89a8a4528699b717c0a6f1160302047c435bb50066306402306b57a07d17fe2e6afe71873597d44b4b8ab59fd40e032eef48ec472f587ddd5803f5d203596445b064cfa39bc4d11a9202303bcd6fb40457cc26082c41f71b1802a52fa2b5610fc4269500f832ea95aefaf73a7bb5550b82f47a409e0948be4315330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023039444c46563d34ee178ef4d2a8a2b5c505c98b41213616d1d1389db64b86dfb146e806e117d2676164346a793cac6d57023100e5af418d0ba64543dc5f494e4ebe049709bd51c104b091d31211f1f6dc5afb3661d314bdb70dad6ed378baab727b31410302047c435bb500663064023019744dbafe72f835a55b56734b8533c66de563a0e0ac21af54dd963551e6498df2c8ef2e8893922965a87cad3594ad830230332eb794ab9392af4a7340f22aabb695fc50165de0a2fe1d96108475e10677ee3d014454b2a530886381e3431936ccfb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100911036e3eab41bd95c1505267b3af14ad94b2fcafb773c0ffdc8676c22e26c11657e957328a209f05f0010f9b138494202301d043d8723d2d4541cc91a34b3da6a14e9fd358e940d93439b1b96dea83e3b516b53289bc4ffa51d1f0ef6825e82935b0302047c435bb50067306502305e1f9f627df9d743de0c4e61879fe962eea3fad3b6f1760f229348344b5af6fab7bdfff15367835f7da9e2be0492f463023100c0882a678aaeb455c05e186bbf253cefc153b950a248325fbf5a607d5a748b53602dd11387412a373a296365a786fb210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307b04194a0f71cfa4628b1198fa279e01a7126d267aa54f16a743c0299545ad6666eed39ede539603219a965d5d57efc70230283b4a335249b5feab5052085f9461fc78507a595b8608b56ffc9d33b6dccdccdea8aa27f5d40ab87accd157d01d88d40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230014a5dbf1c39fe0444e232f86b0fd2e531cad0a72d80144ccb267d2a7d58c7943a7be50ea96d0d28493ccd0daf02eb80023100ca3b07fdaac16c324f21610f47a2ac7faff4b2e4f7b9c8ccbe4801742736954f6eb9dc1c698803bd7ae4a1f5eaa10ec70302047c435bb500683066023100aa157a63f51655d92c1a9d3f0356a93d3c856fccf9a1bde1613009ccff8bfce225e900a478a0fb07f7b29a40e1ff6805023100adead5150d2de58414315bc8ea61c46753b77ab996d5a648bfdfe083eafa4517ae7a640f20eaeea434d81a4f85b0e4ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c6487f2f9259c0b8000da293464da75913228565439c411f76aa3efd91fcbe9dfe002b48cfe4cab6c6f17f9fa8902baf023100cf36d694068ce09105a73b74380af98bd9d571aeb84b9a29799547040639c480b14f71ce9ae2414a346a0cbc67b1eaca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ccb34658e46dc653da50616c9b900d6c5d3630a5dba07220205ec1fcc7e1dbdee10d7d789e583d9193e187f682a7e003023100d002e561c777ae634a73335f8c855df8057ba3f8ff5ac299a82a193d872a48854285f5e0d2ff724da3c74e95a64182ab0302047c435bb50067306502304109ad602f4cbca7246c17b4fcb67848c061e5bf07484e46c90f09c2a09e2fc6578aff22e8e1f6d70f0f2df63c6a02b3023100d04508125bbbf756fa713c807772071b9a0f0eb410afdde3372994d7241e06117fef5d0e572d2f0439d6e3cb6dcfd81f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023036acb39867adcd8ffaa82075c8c2ad877277ffe3781df92ed8e001c67cbb543f55b572c0dd8483fd886eea4e2a79c83302300ba936ecf04ddbae67c0ac1a4a69f6771fcadc122eeb7cfe0baa67b069e15a1dcd1f35ae3465aced5ad5847271c455640302047c435bb500673065023100bbf1b4a37192e9141e9e27e256890445fe32d330441dbdb9ad7d469e415f990e25ee31e323355126041af7786371777402304137aa9e9b0c7ff05e9a54a1c10e8463ec12cc75541ecffb80c588a351057f4e8cbaa2df1837384ef3350be2d8623aed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230340c125adbce6bd7f73e58563ea1454d29dbd2cdb523def8d9ee7810b70cdbca0016cdf36f80d6dcb4887775eee539be02301f941d6e2d4c537903f05826eecf058491814779543b30b8bd67e66eec0ef8711127318a5698355f828e479ad14b30940302047c435bb500683066023100b50e21193f1f2402a363772fedd163156e43da23efb1c8638790c43efa56e362258cc86ea3755c3f0eaa161d1c63ad33023100a7ace7f7db7185ae879d232891cc7d158f562eaff8324f067ddcf9faf03ae87a8063e53246e74104d7100b23b312378e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230685005a662fa63e1f490ec83b43c2f8b30d3bce3459d2e3909b7a44ef50b5f27f7371bdc28754418bdd04655725a261e023100937d9f739252616b32de824771956d27fe4103c80018269689a25e39f7d620dfa88a9ec388614fac86672ee2d45ab7d90302047c435bb500673065023100ec62a1e54e0a817b499c1234c79771e3254877a0365b06f78027249238a472b854fc8df5078c1bd34f48ad69b4055090023061f13e1d0c84e71ed06bd2f1dfdc46015fa99cfaa1ebd23503940ca6fc76d10f2141cdcc58a34af6704473260c7baf590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d21ad816c7afe5290e04ab8f58d10af35ea50ff6e5ab419dce2b08024df9e8f69a6dedc3236b58c611ed7499333fe33b02310089ebfc972e79be04c3ba257513d08608b7be91ffd2e9b94ee9f75e1835713e3ad8aa8803f92b95bea1fda44d4a2255440302047c435bb500683066023100f147a609d073768b37692a67cdf920270338d526b428a48bccf42269aeb8d7274ea9fa4525bddeb94a8d96681a86cf4e023100d538a1cbfbe9a362f0b8fc6012a42967812360c7b7f241744df790919f0138a6ae049781793cae3cb38946291c1bb2bb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304b20c4699a02a5f16b8a67e5404bf0c6defcabe7df2919e60f4d515b2e497b6de03655e6aca4ac1cf4afc20a1ae97c3c023100dc493bf320f1ce58088dbbfc0f9ed295d19089f9e889e5b11a913077aeeb36c08692a370e692de2ac567caa20be358700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a95a6b3b0ff71cb31722024887595086dff877fea039c20c8b814607a9e093b39fcf6835841270c4aede7c92f93874202310085bde0984c46a1f224239d87c7af758ad7af90c9d771da5b9effdd9b8321b5c9792a5ec7cd0e004f096ffe61a439648e0302047c435bb500683066023100b15124ed0444dcd069a16d90efbb1c6dc31daeb9f1608631521d620285942493ac4df321bea9aebb0ccbcd2b0eca2e50023100ffd2a9ae19796649775110784496b95116da6ed3aced5d590b857a130584469b497d678c9a00b588a99ccde5e1f195860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ccb45b4e964487e25dd0a8ef4b9be326a7cd8127148eb8c63024c3caaa870cfe273494e9dd36cfbc57a8782e19f1698c02307cd70e7a0a9d3d19aa19250f33454b4aae54e9864ca7de66104ba4d1e3138e21af9614255826964391aa129789bdf40e0302047c435bb500673065023100ac4b4a59f681553b31f328678e4df3f0f8ee7c753db7fcec330a8f8fd5c1c4bedab9ae04c0f8248794e76e3f2f2438fd02300cee350e02aaaa04000d096ba437c1034fe2ec91ec206afd6ef08e4e9c87761666af32de42233fe9a1704e869a7914490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306f207b8269cce53438769a636e937b5b433b14c435b30b7e848828cfb5b5596cb4d51ebc1d83c36c072d9e4ed6fd74820231009ac2a37db9eb872c28c6a4c240d82f7b40e42f0f51b53bef60babda7b3bdab37522fb429bbb9bde7364203b0e5f833500302047c435bb500683066023100ef830d6c141758dba0980e7211d7535a1350ae0ad7e64dd3d16f3c90327e0a226191688ae4f1f4183c8b4f799b8cba53023100f290907567e78e259a291166bba997de48f3f41e307eafa8711ac5f9fa033209a23e71f8fd96bf5d6fe2da98779b4d6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c5615234364b1d9fe91b4dcee7c9b1a81c3326dad35b9d5a57144516d313873089d57dcb1ce4784a94567f729fdf8c8d02307c07f6b4de4e12de737ad106a88133081a60dee1686d229627c1fd08459f55a5f18fa86e097531656440d51a2815cf990302047c435bb500683066023100a91372797d7cb5daeb9655ce6770810440304eb698e8bd0e9a849d4404ec8a8bdb1c6fd760d5465e5365c033741c50d4023100f5ca7a10348f74829df97ef51bd4f40d9f04b9cb5d65c1e37e49dd6937f5baa0af57b28f9815b9c3b92fb17a22c89f100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023041133dcdfc0c663de2884a812e83651f3ac85455325753ec49623b1008d14a6160b8bd657f0f14bb5ad658ad41a4a59c023100e380d51fdc8c39817a527e8d2ee39f34d936db6b857b981ca7e2b2672ce07a06359bba1ec523a9ff06b2553e3d6db3ce0302047c435bb50067306502305263885f166ef1c794579bc8c06099a91906131398a5882a1a391d1dde421ccd0269b492e7dd3872ae17f030fe478e5e02310099f2c3d1c867069741ea82668a91c7dba4cd6794ae70c684191a16b53769bbc5b726750b51fbd897b35e1d61033f5c7f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023011454c393c50d9a07d785bb51ff16b32094e2859b7397d585920ee13140001ed0df51a5fdc5465ffe3a638a81130aabb023100806f836e4710f80ff73535dada656bca969d66f6b984bf4cdb7c5aa1227f953e7ea8337c19a28e3ee269fab98541165a0302047c435bb50067306502300975ff057594211ea0e305e0a07a25c435b89930f1e4c371244dcb9a4655d483f09ca3a07a84f7935a163799812518f50231008db28dd2ea0bd134a81c35749227a19e935020bb2a9fad66acda96de20d46673c3df3cbb7b2a58cb4716c137c68d80c10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230454c448e3489e7f647cc3223214b7b2763f08aa9c05cc1a507c05fa20be0ff00836e77563025688a4964ee2eff9776bb023100ca2dfa2886176668a57710aba54224fa52fc6222b09a0e18f862fc6b0361281e641420ed4e041dbdf208cf14e62850d10302047c435bb500673065023100e57ad5ebc92950a5843852c13833cfa8ae477ef54c146868013e45309f18e919ca6da8be4d2a2b05a5bbb45addc4b836023052869d38cdf2326f4ed9cf2a0bce04d9f7edc2a010c48d71f71e649cf10f2493427a49d5dd3888c32470aef13709044f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303713f3a340068ebe147e39f1b17bd2e5f00848ef73f162780cf364228c83ad45e42b0ec5cc286f23c7795fe12d748d6c023100eb1d7d48507a4f15be76852e2c27d73d52eb18b02fd20ba299e4e5ef8871e20f606f5e47a16d301a80d957a3cee6e9270302047c435bb500673065023100b60a4820028163399f42fe3583f143f6a1001c85a2686b34e6e76fd33546a66bbbfbe570ce79abf5d6f6be0751ad432d023003e1a4f2c104ee0c2b674d8a43c5890e4eb815a58a61e274273bb88a9f6e3c49a98d38f6ccc31de973e39280693fcad60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f0731d9280cc7883de17455b498b82052ce896cbba4d11aa5e0e963bab5f66dd2687c5a2af6eb4d3ca2d3a98313604d8023100fbee8bb5761d9a413a084e5c8b0e969cb0ed52c975c6bdee46a257a49c489081f685e61a5f5c88851f87040ece5ea89b0302047c435bb50067306502306ffe5d239a03f4d0509e813b5687e543e95103ee772ca568aeb7ab5b35672a9eb818f43ffa55af5488d6c037045eba4a023100ae3e36217c4aeb62e70358d1758056f9a9cfa3704d53a376f60b087b95add94a27a1fb90f6ac1d86348e8bf8286ca7a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310084237a82d6562ca7837a117a2d261ed3fed272584b2042618135b5f6b461709ee326d4904b3fa752f3c2dc4fa101e20a023042c94f1127dad6dd2bddc88d1c900f342cd9dba66126970a266075c177a2f00e8e9bd2f5a374c4991117a1518c7c0c6f0302047c435bb5006630640230587f50a4a855b5f25da7b93b6fb3edfcf0080742c3d5ecd502c55ea05ae720d28d0e2264c934ac9de1b49d07f1c1cfbe02303fc1b47f28e4f866a50468dd6229689c44d8e0fdc1c53c90f683bc912ca9766924e40d0d983796dcf1c64c4e613038ee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300e690def0b42457a7bfecbb7df804604857da924ad750006416b5b5a2e80a21cc0302bbb5f9a1af8f6d2360751f9504c023066d709238a97975d4c824206390d9896b0c681a275451f68fb9b1fcb55748d4ddb31528f475beb7c15145bc331fc9a4a0302047c435bb50067306502302cc951aac0ced7f7c3504fcf37ffda287fe00eb7adc4b6c8fdec767211cfe212453ccdcb9459943eb5aad1cecf01cee8023100a9bf6bb0783b01771c44fddd0e71ba4f0d7ba4ab331ee0cc8b8bd9f0b737418022cab7eec7d0d5dc46fb469a580e3e700302047c435bb500673065023024571252a2001c61ae71f3f0867d08da95181766d9929172de0b610e87a9d5183956c56067dac5e6851b9abda6b58a18023100dcf910114ae12a06a8e462b7f1cac6cdd6189cd9a8b0055a82af8e38b1d2b10b525a9f6011653ab21c5e159fd8d30d9c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054c58787865407d6f3da1b2df68fc6cd9c6a074c940a274f3d8a4bca0bf51ed0931829ad8dbc161f2131d6764ce6d21c023034658b1847e37059dc517f38f0de10a26e2100bc48eea4d4f26239bf6a4521bb77e95b67f32c5a248920b7083418f1a40302047c435bb500673065023100d8f229cf0f44e245ba899784eb2321404b6987ee32dbf955d3e679a65123d770994ecdfd068ebbd722e7a889361ff31d02306f30f643b08cc9e3f66d13c2c811f9969db00b0b0e54d009eb952b239456a9c440b8b70ee89361a48e84bda3ee2da1eb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c9be8115065f3d49cf59d8c049f16aabf63aa900e251e89c4b77dd901f600568a2704b0fd3ca8fd6714aa733a12025d8023100fb47c362be3de0ac6918d69e53408ec3465bbdfba7ba0120873555a104b750fbecc9f8a7e6c34d9304a52eae212b4df60302047c435bb5006730650230712ea535678e508f3297332de3a21eb34f4b3b197450f881301769af0f4a0ee0f93d630a29c252033cc022475ef700da023100961a9194d4403a21cfa5b902c6d4c00448c1b732811d2f7aa7276797c456a92de0e42c382a6c3dd4dcedb0017843ec220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b4b96d88f706431f5d7f0781d7bd371ec8936c23ea491451e6a272ce03df10b0f4b22336087f6348599f4084a49932ba023021c5592104bcb78c6226daa2ddc99069062e3e5898309b84b8d37fef7b94bd62fa991b169849c69f5a870b7bc05195c60302047c435bb500663064023052bb2281796e31113956b78747111c8bc59cc0e5eb1450f05b7701720b53c4b2cbd2c12ff17a6d015fb366defc278afa02300af973e7a437fda45c3beb3d2b3c5f708b2a1564f1a2eb7d5aa3f307b42092b99b1a890d9f7f3f5da12ae83d613f1c300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb86163bb821682a7bd3e229d39a5530092c2021cb4dd650dbbe5b4915e083d2e4fcbe9001554e4bf0506454c8aa8621023061648b29d5c6c67710b72a6d97e0f550a28c1d173ff2fe13fad4279705c2dbbb4bb1f0514dc422e1865cf7f207b5dbfb0302047c435bb500673065023100a302e615d422623e22258569fa50382cf9124f2180a5a97645b232f826a32b6e9aece8fc34eab244b4eef42a7dbfdce1023049c73dcce6d20207053371a661e78ff08b4bbcb8666a8765159a055fc8246eeb8ff1dba17b2590e3714da8f6b92fc0d20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d1d8063ebd214574064e3ff86cc71b60a68d8f75a48824feff8877d4a5b5afdad62fcd43df2f89ab17e2315a22a9c64a023100f3deac9f64aee761bf5a24f7385ed8ada17f8113395d70c8ebd7899ba293317584f39fc31242539ff0948876ed2d0cf10302047c435bb500673065023100ec6b591790f526c729ae70ea6493ea53d08a8c13e89e5f779660a05b7c623d382c3227854edc58030e768d0e80840f9c02307b774973afd84fb1586151d694fb728a1ed4be400285c119ed6fe0781ab5800220314c17e11067fdb4610aa69c2e95a70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cc29b36f856451c8883ccb9520a67b2d51485e9bb0a1b0252060659a0bc2d44082a2872ac79d000169a43dc07241ef7b023041708779fa9e33df1e3b8ca9f8ad7100ba19119630e85db689e1907a5358b04f18aedde3ac92ef25fce1e9e4e1ab747d0302047c435bb50066306402306d0de590380d5105e285989c5df29f312558cf6028dd83bfc621bec4330d10ddbc5ac775f10a502b7661c0f5416bceec0230713cff4218fbd7337f66a434efbf518a10bc6072ea2e7e013c485f16fb14cbbb45bdf8f9b59e8c050985cf01bdd082860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a1cda582db5543718005f4d3f186a90a2a24d4f662548701c17906c2fba538bf929c147c83692c2565e27fd4493d517902304b9a7706d405ea856e51dcc64d7f5ae46ad7facc2d78243a418379fa4d17437c7324d2e925dc47b593040ef1b1f4ac660302047c435bb500683066023100a2e1d2258ce03013b9bcb2c066112c583822f9fa6535d6660566d697fee33f1b439aae5ba7a932e9fa5960b075b513c8023100c47823af33ff7dfa675071492cd3789ae4a14b5065675315e7e8d8269d59041d9370332d2c62e66eea3aa5e7e6e717f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d0f834277792dbcccd609b0ce6b7235b40593202d8d23a00e9d6d2fa3d02afbe79afac44d8808072386affe9333b005d023029cde052612c0301e3f1a6bd5cb57ffaf4efd2d962624a21cd84c31ae8f425404d4425266e71b9bf23f87ed86cb2921d0302047c435bb500663064023076a9d29cfa28a0bcad77e30e70c5d6d6c334f7af707d1b44d1f0c8f7fa76c1f55c31f19034dfbf88097299067259a003023050fed7391a70c72f5698e09f20b87d29f346b8481c9c722886c47383b9c11e0e9554b0ea41112c9c6e30090bc3432b0f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d92a0b9332012f3006bdbc6aa6ef1874f1dd0274db3af32cad4d084d799236dcf76d8c2e21a493c901081da8e13f5dd9023100af30816a579b361704353f293e73ebc67832f948f5cb2c982394a758c3680203fc1a7f0413a718efb6c6ff730050a4870302047c435bb500673065023100a1eb64dc53e4d99aaccd30c56b8268fdaf3447f28123056872d25063cda07cf73b7019bd79c53d95f90bc33924619a8702304c39462308c602ee64fd08577ac0dae64e0a3b8f52ad282bf3aa7de3294987144451ffa8931967d1678f53cb45e102d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e77157e6fcf05fe1bb4c22b82dd72a405298331d45e0d748ee2afa98c396d9e248813506e002747dbf3f80a7752bb52023100f83c82ace80b67ffab863bb2978241cfed7c7bf865cb51914d70f9f7c0a437a47a9c6be63b5d56b72c285b2c4b89da790302047c435bb500673065023100d63607b65d9f4d468fa581e81a3ae83bb59f40628816edc54288e6d7435d2184c5302d82912d66b0207d440e08ad979a02306843f2dbab24b99542c41787a699cd8895141a488b2a7020917e798596f52d3de056c7073e40dc19effd3bb0485dbb400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f707badb29528256830be64d7c92ce78a389b66b063d9637b6713d841ef394756898b68d193c8c1e13bddfdc07340be1023100c51ce02370084f0700be5f4db0158a91a9700617bbf60d571a96c0e9cf09d96bae71d0f3f52955f642017e1f36db812c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dfe1487201d5e73e74f97ab4aaa02ac90073822a263be7db664c57c96ec1e16a93cdf3bc9eaa657374d003ab5d651b45023100dde53cc07ca9ef0d85169d31c1b86d50e1c1cf53166318eeacc9db0d0d0db890337370a3821d2f9e0452a242e4e476220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fb468cf19cd7343a56da0746774316b4608f704cea11036b4071aff7a4ed91a82707caabe06cd53b1cdd7a0a190ec3b00231008655162e04f143651bd9b535d66511f1154da7e3b4e5526586ecf06d18c8c76ac53174846501af85e57134eca29507a50302047c435bb500683066023100a36974f1c404015146cd2b4941465a9b476582cba75461b10dc4ec92f8cde0c5ac23b880c9ad846cfdf3b0ba192e4cb00231009c32035a37fba56c1aeb07e04df550aec829a3bdc56a0feca77ad9dc25db0b5c28778352e35d2531e9281c35efc5ac330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023076281205178935dc51a1b7026aa319e24da37d28ad0ddd883d1d4b42102dcc36ac1f0af2a13d512aca30edd9662b9df5023100be649a02711b183e82d9a328e44ee80c8d2f3197f3cf79a23a1bc42307dc52e062eebef97058a7ba373414c7f0e458de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023043ed64f477aa613461fc28f4490c8001534d5164179cca85092cbde9a1668761e696e965146ce69a8574c5de3021b8ce02304ad36c1a90828e99c2ba281fc1ac7e34a316a39481a403ad6ebbd9788c4b9a93d45c1c7e475ba2df2baacecc13428ee30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230637cc91977074ac5a854a3d9f2ab6927b16e4f2458b8e9c1970a336c610d652506e3033866c2e521bbb4b51ed71102a10231009ae3a725fe9e45747e6003a6178e42cea6a93b833223d261905aa496e009872ec2d5299e454abecd80e9a2828fe06f7d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c6430f9972a9d8ff2b1159f6ca8a866f3554eb01da7e9a71079bd21da0d541d83b8b8f235854211beea60d434620a7f90230081c00bf969099321b5ada9b4e1f0ea5923e15186873c63bb66876b9aa9ff9192f5d0205b06a176663fa19ad1418d62c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301901c61cf959c4025f5e2d23b48bd6796a72ac0c4617b1fb23b418f9ee58e0f666d999b6c46a19fbf2258ad7281c6245023100f2135cb594df05a08079edec1942ce32fc19b4b98aa89c3ce4748a8fc29b07e0f54d2ac0aa4b931cfe4f181e608e48540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c63979ba700cce99082c30ba0124b6bed2626f9990ca3d6358b16eb5815cf955bcd738ad81aeee5335cb246c959f31c7023024db106d1dbfbc5fbc066d9870aeb60c55b51f760150c3dd7e0720476a061dad62aaa3fe3b85682d1f9252fe8234a1210302047c435bb500673065023100e9eb3d6335b1b61c87ccab6d7bcf2a72793a2eedb74b6e45d47d9a014440f66e73ed33ef836a31e4a180106c12fa61a60230550dab2bd3390c38d1653d276a212ce7e27d689c31d8e194f44c8e20a372fc6389f6c46d3308d3ab69e1d5e5383c22f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230352196252e116a5bea18320e98f80e73bbc5084cd9fd3a11d491fbb90818bbd06b43fc6af0a194a6339d1b9dfc3b00ae02307705ce5d1a1c1ac6f57c2010ba858a7e657d923f92739c33f39ed7b9ab1f1220f007363ceceb9109472e72b8611dd7b20302047c435bb50067306502306dab699a065c250dbbb075bbd9db83af2ebc5a6f69a7eba93bf828faed8d4b20759f71e44c18b5f4284752e9d41ec77f023100e1064889de93d243fed84cc5284886308185c5460e0905ff7dc293e136a57fc2e58664455fe1533392719aa8a70f4aa20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cb79fff345feecfc65414c0065c4d77ae00dd2ec5788e771acc21526763dd193bf898666b0f9d5e94e7af97c6851a5e102302d0f05a7c3bcd83f780d7ba97382ac3fd433e0ba2dcb33eb0376181d8d9fa33824c5e3f8ccf5e6bfce184e1a20174f900302047c435bb5006730650230324a3e4312b73d06631480dce1490cb7f1965ccedfed3551a654d29945a11770cdf5b7877f5bf5539ed972a99dfe210c023100ba7e71442086ebcda2c47de7b83dea90da7c5e9aa8f1bee253c3a99a4ca410c77728ee0637004a0de51654ef0cbdebcd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305695f6d0195cf6a33dd3ef8f983a6a97f19812e4cd8767e363488a1d33f32a5e5e8c00cf2091a28282986fe4e083e2b102305d548a9f027e9658f7ede0b889f3c9f2861d9f9ae7aec1e1fa485ca715742f6d10b437e1973972db0fd3f76a9ca3956d0302047c435bb500663064023009c5ab588f4087b8c6236cf7a539c3efb892f3672d63e7b60035e26bd210d61f1b489a7c6fa73da0633c78eb28a6c6b302306377c15208f6e8838ce80926eaf88d2a101de5a61468b4e6b6273845f8e419758cb6c05c592f93e48c0f87a07924bf190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bf553efd2263837ac2c6c3197117ebb6b27fdc6b749115208c6a124f4c066c95f500c0d9e39ecc48469f03697a83ff2802307e16e1efc8b456f6971b51571086dd5c4c01abbe93be04bd5d53ed7896935e2ec19e208a53ca1b11bfe47cc9932a8bd70302047c435bb500683066023100e8cb2e5855946bd9d059912433bbf80b24d9a13d1eda86aac682d33b39ff576b32307f7b8c163631d8b156d9158d91c3023100d73c9939d4bcac6a7ab6b8b6638694ce640862c73d3d8d72e00550be7bd8d4436d31598a43da07517a89fcfa70d6bb0c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023056a2b604c718d74453a2b5d71a95ddc16bc0d36e589b6af615925ca604763f443211267c4eaac162fea79ee7d6819e8102305c675c54fcd1923da4c6f4442dc54d9e916c6b5e4835ca72288821b8c7580d4f3a1e2e6db01d5cba2d3d469b34e7ae7e0302047c435bb5006730650231009a252d0448cc4d0a41f529ccead7113db27a56701cb87d0813d85f40a8302d8dd40308318dadc3c1c86c4d5fc5aa7e7b02302e3bc5f1c6225d219ae524fd44aba6d0c1b5888e2df69f6ff5826b9aae36142031bf4794b429fb9c3183b1547698f1680302047c435bb500673065023100c2f8d7095ae1b7d9f68d7581bf930c41a3aec4ec948dcc3efa632376b85a6032e2c76a1113f0e9d10113a6bbb055ec370230421c1c0647a36de1e441866db0c755357705d442c560557229b5a8593208899c5b7a28af48d4c010c38c304ac3c48a0a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c876e1701ce25411718eb35270afdd89cb762043e05e146bee8280e77cb1f90521e7c8af0eaf872ceacab41425d5091c0230797c8d3a7f7cbb77013037cc853dd2a2b3faae33fed80160386d8751d70b4f3e89c818c60c3b2ca3dcb6b0e1cb5c669e0302047c435bb500673065023100cd3a10a348f63e59b6bc13d9283a529e4b73920289916c86bb2653a1eb80b651e17c7d2f5b4e79542bdb916f9248ddc8023041afc1ead2134ff918656bec522f7b11082a112b5a2fac982a6db724cdd4188530e66f8770d5c6b7f678092ccb903d030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307488f30dfa61510039f7f22958721b542753abdfcad883a679dd7ac65c73463ef70ef62b8475f15f6aef7acccc8aad70023006b7e1c949ef0b3eaefa1f3a92de891c858166d45033dffcbaac74b9c9bffad8b4eec322a8dd3222706a48422625a9ea0302047c435bb500663064023002a07eb8b8a60ddea0c84957d33d2b604280db33284a9addc66f72d0513d8f2b56cc9efc72e6e4139b56fbce5da9866702305386d94bdc06285929caf2abb4a760ae5d65df4013ea20afe3b15535274523e4e40ed9544f61f367846c3e90798484c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301f3bf26e7d5a430eb7afd375f2a58d2308dd76735cd157f10287f3a8afa363511d7ff4b4588d25e39ef864e6af01ca3402306e0cbc7d1c7e392a44e5ac59e0e3cf7295195605b949fa04dbf78137157854f3c716e64d8599daa46952e33866b5e2090302047c435bb500673065023100ba221b7b25c239476be214f8ca2d21ad3f6013da6e18b3563c5e3facf5fcfd8ed3246a8635d3d30761bd01ebc33a9ee502307dc7e6853f9ee7f846d0eec8ecda62b019a56bf49fe30bda989994d55e8caf85d71a433a6a989703800c2d474384988d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037e0f809d7cd59050a9c8f7f553bb4ddfc05e57c79c81e8e42b3f7ef397c4418ec63bf8f4ee2aa03472df060df2a09d402305c54f32ff94bd702a05a1c1cac5675ca492a8ac4dd9eca6de907d45a47bdad086f1634e1cc80c5bf8896c621f33913110302047c435bb500673065023100a666ad737e2b422188a64a2e280005df0e3ed283ae8257b0274c6a821937e1aa301005aa4e221995df0ded82ab4861fb0230523ed3e175eeef7e1bc6ab3503ae7f63317c8b4970fd1998f8d896c0f2c091908b2f6e7a2395c43fbdc3beaaf99438190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d0104c9d5f9380f8f83bab6f87f3e1c067175b13b977c7753343b7820fc1060f24ca5bc2904a20bce8a07a13a6a66580231008fd554e2870779a19c1e501a81cf8ecb48d73d8db0e993f989a6f889a166c8fc542a90a52c33c59f61ab129718cb45b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230069e792a40b96f1ba5419970586571491ad2f6893e7eaab37ae2a78817e05e5079635ad01c6d4a464f52048e506a31ad023028afa3dec9f75e7b55ba6ce8a3dca19f479e17ef55d66d32f9377d9c606670141f34e2c4d9db4ed0ca9f48505d392aa40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230684877203245e765304ea6b7b683d3cd31a1f9d0e1dd3bb8ce2f51b92ba62869767a9fd805e66298c19ed2bac107bee4023025fb27b72b8e5e4b46f2716ce18bb21d9a6122d230c06bc54c7bbeecf4f99c235979c3a33237aa60590975099275e6ee0302047c435bb50066306402304a630cbdddc1265ab0feeda857318ddc2f314addb65c770f0bac18f7ed83bb001628c6157b4a57012145b22512563ecd023059f15a5ea942c1742ecdcf9a80238ae55166e6f6402b85078663b331bd9c63fae19dcfaeada1278c3211f826c19b0a000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009d63b118fc1e7d325f6bc64ff382d27ba2909b3ebb1465a12179d490bbeeb1e5e6b11f35469b7fc66d2300b0e5e0f4f2023100db09f4d7b623b02d8058cebbb606fc7c2931e2a5f8d5fa0646e61a4eaf5348a20c2efa5894b75ba5041a119e7c870be30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100862838bc97be0736bc46f872d5fefa7989ebd26ac430b4caddb641cb209104041fa9095382e8d3017f11c7f9b69e83a302300c6457b863b48f29d13e7a23c9d3c9cfa64332c1f26cf064ba48c84ddf17dbd191ad1767a310a5fd9faea3ea304654620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303f5ef9c9c77fd80aaa1cb86ee5a4464ab065623241aa7c4718e6f1e99205b18158a6212d5c643c0d97c67a7671db45f7023100d2aee705e0e5b88d87363acd07c923cb9b9e459c6f3edd218605b0032a8dacaa951e9bece47efc141bbdd0843950227d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023031f620d9ca9171fa1561b8f3e767c73b2c6591f64c60ecf0982f3a812d2ae55ebbf242723e56ea097ab2f046b8b022f50230769c8d3d025605b058e6b3714655f5efc90502cecb3d22d611d8739d3597c1088bc3cb317e768f97b10585ba6f6145610302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023050fe8390245a220305e92f7320f187d813feab0b6b1d91d48d8038e2f0ed7b1dd8c13b318adde510fab512a96c1aebd002301ca7acfd807e4835be976fbbab6eb11254b4575ab7329e2e504fc0d80f724438711838178afb794eb876079be6eaff1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f4b188c5a1fb1fb828bdac5a7f97202c60a2f18cf9efcaa095b4f9b170863ff6be00ce5bb0607588e5371805ca0ed4d90231008823a108a15b814f3a5efe9d107c259b6fb53c48a8941dd08ed2023050b137cc28fc228637a460dc36cc754b889480dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064022f1acccf39192a7c1dfee2318f3f38b8349213b8418a3314cc1ebc58f459f5bf5453e004fbe32fa12dabe397404ae42502310082d3507f8afd026f0f4949f666ad86a0576b3d7b4290d85b671152ba1210860564c84e1bcde086bb982584628e297ee40302047c435bb500683066023100c47a971e4e8193392d604eb7e9a34e6d156c0c26bb8c68259c6ccefd6b9ee29ad3642fad88df72763a6c1ef6c26559f50231009ec02d5ee0e695734b0194a8948bff46e7c08b9c15e07b9711963d766d68db0ee624a53924c82061b0678b054784bfa40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230406c46103fd949c55e5363ab13e4e5f2793bca62d4d58658e1689858e9f01546fb598a973563e9d7b67b0ea6b633f4e3023100ad1a56a4b9790bee56bb6900374296f934d95d7bf7f08c0aad0d0dbb99bd86393e1d8768dc5215fe4997c5e87ac37f4f0302047c435bb5006730650230521eb14a2c8177ffaeb94ef1345155187d132522bc33d92eddb07e6450e1d82eac2810a177bc806acb343e7499fe787a023100ca2f67b5aa568eb89d045dbabf4bfa6c98f758f09cfd15446f7b9b3e2d59032c7d4c5a8ac344a2f6518d41982c0e30d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009cb754d9ca9b63de953906eb4c328ab688916f8455196b791835731e1ba896168bfefaabab22965762c9edf565dee00a023100b30c3363026f7d2102f6f441cbf354d27943e142012d4dcbfab7a1daaf6ce7f02774f8d22b0face3223332471cf56bf10302047c435bb500683066023100aec4985209d2dd52cc39279a96ab35528b2c5f091f307afcecfdfcd12147e46473d855fb8569540fa11660c34693c10b023100fdf37d5b622dd69cf8f8dd4405eca843471aeab43e0adf8acaadb9d7f41bd91a950cbc8dd6dcd48a2e77b88ec18596620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100825f3805f6cf8352c563fc01215d29c3bceff6e73ae7f5ff2a8b86a3c5c77fd6a8907462af7aa7ae209ade5e4331aa4d02307bf30ebcf809dbc8279514a1f9bb1378683e557a09c94a63da5e482f929eb36341697f02ac5bbd61118b4e43976179b00302047c435bb50067306502303584b0fdd74a6d47a5071032a1b78b57e85a918664ed35f73ada23332b7328a2dc7c19db88b334cb8feb8272531721ea023100a61f0dc31a71b1e8aa6e1992a27925b53d96df1711227df9c65bc867a8defdd949c6ec2cc668d1d556bd587d7460497b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307eddeb7519e06ddc0880c995bc1bd8285c1bfe07eb332f63466023ef9283ca30104f891f01bef97a07d1e58c858579c3023073b5d1ad307993a07bbc3fe6e16e87617f7c255e37d23514f777f4cf696e076e9ef264db191b18dd172488e69746eaa20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023045945d68be7b976772083502e2c9db48cc46d774806f0310b57fa9f7889239a9c7253d809eed856e67d5602b690b8ae00230281f4f8a306aaa3a93513a2b5fa74bd1ec23150a0a40a7501065758016dca7ae4296281a49684e32132cada6f98febb50302047c435bb50066306402307a30ecda7294fba4640189fde6f6b8c97cb6f2d0b1842c56f061079a2506824e11d15e89ce6671fbcdc7a8688250baa002307e70c219339081b590c127e1b04f7988044d3629a8b58036df8b46859b775562cac138ede8c9e3ea5fd08e2ed9c43fa50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d501c3d83d083904bf5b1911fcb754c03191e4ca0505fae4db12ea4f8033aebecb40f1d2dc7dfd8022c66236479132b6023047189aa7c9c47c228c51ecde549e836fd9353f64dc763561ae27b7a9bac2a53f1b875fc2750899970ed8527596b402be0302047c435bb500683066023100a646b9c5a1d19814fbcd38c4168ab000772d0e3223a6a26d2e58e904667069921be01e8c14f312ba165ad8d19a7e86ab023100d70e7252212d31a9175ddf350eadd0919aff660dd5d7ee11fe83d1e277e00e9acccbe838957d56339f1e9d6a3a17d2350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305b266ac6fa9f83e84783b0cb78b242429eacc4e600aa591381b046befbd2e7db13a5b6e897644ef1335a9fe195ed363e023060e18607d94f566278a384c525ae4761fa67555bfdd39f8363e907c95894e9969fdf65d18335e78636ed6246bccf61090302047c435bb500673065023100ea907090b57f9c9ef738bc26b21ec3484a1948c3f85c6bb662a46678b11a5621ff06fd26184de48938dc9138df2af4ff02301a524450387dc8b91330ba71fd713cab19b15499f5994dcc8fa9e5008207c04a45b991995555ad3d1ba77a28910d570d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008783eb381b174ba8b5ad1215c767d7c9264987eb34042cdd11e493cfb7156ec12d14c036e6671fc10ec33be66e9a444002302f9634945b57f17b25d628e119d905b6a9b8404428c1c09c39e80623c81b7194dc0323d3ea6ca134c7f3bc4c72c5a1670302047c435bb500673065023100fa45c2c77e48bba91ed8c3ac1b112b544e89e94221db6a2456a35ecc7f4618fa2c8611006819669f58958760cec1ef69023052dfbf8a5eb714437bdc48f77d3c8b1df203f8ec2432fe4121546eb9030f91db9ecd826c997e77ee392099ed215237e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230015ffe4ecf5643fc4555500426f088291e00d02a8e51581837606425e8aafbc726c77ce371a03a60a592c78906201d7c023100fb6114de94d08b84703294a934a1fd6807cec29cad98fe087d720fb697475fa51f0390d43cbba7c6885cfdce88de532f0302047c435bb500673065023100d4f00dea32abacc5821c3ba662e22aa1ff0fd5aad600791fad5695aff781f0a24e0372e32f4dd26743120e54db5a92d702304998aab65c5abb49543d3b1f66e6966b781217a45db94d48324cf7d2d2963375e5327cb3f4e086f8baf2a7c7672957070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a251913256dfde76f25772ad1fa1f0b23f6091aa45057c4b5db7ddca2dbc0a966e28903d1a9501734d998d5d09c9581402301f1c5857da9830850d2f35415d859b7913d2376813a5253268b974224018a5962d13d1d24a1624d6a08c36640d2b6b5d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305fcd7c3f4ab77960a78d102f252995a2b01c9db8702cf55707aa62f41ec7e6467866409782870934351a31549ac7ca290231008f37a679c28d9826a72a32ed4f6823a867ea48ea408f3fe15053fd18d7825ba973b2a5fd818f99cb8a4279d2f6eccca20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d9183adc3c44ede99fb3ed449ad1d00b12ad6657dcf23501e36ed5d2f9ae0556f57cc97c0114425fd96a5d8ef3b5042e023049d4a0ad0d8751d87a5ed88a04c98b8b31ea64dce52d3d2f26d8b2c6c7e5c03a2648ff0115d8f407434807cbef6179a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023042a1410597499c6891520ee49d6a7ea81e2c16ed2522ad0574f503c66bbaa8dd1af064eb9b1f834bd5de5993865fe53602300fa4e0bf52d5232d36723640d4303a2710169315b7b3a05e6fe31e22fb77fee54dd6eeaed0b4ca845604be4c6e8b33ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303f37844db2bd9b187d3be5ec960f577adff142f73ec9d29ce842ebb5de43592ec3f842f832fe1be029b77ad565e8a135023100fd69dfc4e849d7a894a6d8bb66e5278284402e2724526b3aab276dff8d7b2f9de2bb39c6ebf58690eaf641f91972ec4e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230759a4ef152d7421dde26118cba46e3a8f01705fc8954ce8a288dc6787169ae7dcbfe045f76d57bb5729fb1ac101e5344023100cc3aaf30257ff7ecff2a833dccbdf02a2448e3f345905500c77bfd6e132ad7d609b8444ab162697c3f01e32b946b78c10302047c435bb500673065023100e3bc39979ac7a1441e385df3e744576c4abd00b561fef88d057ec5da381981673c25c7febc2006ecec087b6db915f81c0230467522af5fefec0332180f512dcf8e917e627a4fe76ecadafc40c651b9ea276861b82c01b9dcff4d77ec57a7ff169b010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ef402d39d55a4a985408d17d5daedb262d907d8b79ec649dfbe4cb695adc97225ca3dd5f0252c64831d4c77b6226b9f8023100958fbedeb320be79e681c8aa92f36638a751ed252e0d3d03e9acb7bd3d04b20ab41687b04fcbfa64eba88ade8b4a64130302047c435bb500673065023100bfc84a5cd5613ed16d6a87b0a6c886318f2f4607968b0f2cb02ce08c3c4d280d6f20e7cb276da62ede364a30b2fe1bbe023059eece56f9452bc42fc59df6960c0d0551e810d732c74cbccd64fbae0c16cb6382af9e3d52d7aad65f6fc20e55fabfc30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e82fe30b3165399f7d6c4be9a306bb5675922bf0fb4e84ac21f3e97b925adb729c12293f966c97c68fb0f6b9844f130e02310081008f17e77687e06026744eda6e3c9e33ddd5c4f8a8e8c19c974eaffa65dee4a903d2094741d91424276c3075f5de6a0302047c435bb50066306402307f7a220988c541fbb9d8996f81ffe3bea6191c4a48454e7b59951a5a2a146066634173dd195af24bd9a5190fdd1a98d202301ba0463ae439c3b9e7e499fdb28a6e6476aebd1ea999c4e56c3ea45b3cd6bdb857b8e8b2daa4551ab9b6f17b939d5b610302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e657b2f0bc679ffc368cf6c187b55700d9ad808cdb990230fef14d4161a743987b533ab5883e30b6cc96ecefa0e2dd8b023100ea2c17d976ad8e58b5b645f2c64c227413dda329b316cfa1ccb7f0887875c412388b9cbbb73aac0e1ca10b956692ba280302047c435bb5006630640230709676dbec19152076d4625a78bffd82795e1dd2390b463e10f5ff8055033af2b39a3b0fb8476629b4f5bc92452250b70230768e201a31143c9324892185d1eb30b238bb2ac7aab08f8f33babf8730dae7f31b62afc3425e72ec699ac80013e8df790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303e6427f651f618f6f119b41e46219afcdeb839d8ff5aa03bc35a1f5f5493c9abeb5704b4f7bb9b449f2d554cc53cf2e30231009298cc316834cefd7406a4d57aca0f0185eb255d9e65796b8ab324705f11240d789a0d477127f4eb7f87875ec11c5f5a0302047c435bb500683066023100faee6b4e4ced4423a158af7ee4c8b74135d474f0bd47df3805c76ecc24c53deaad0759ec57b1e0621cae95d9b7494d5b023100d3d49ed84b0a8f4cc63e5cd45a9ba413450b15c6d1fa30feae127fdbb7ec0d7d63831ae1ac47d3f1dc037061935adbf00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302c4832caf1b9d0fe3963cbe655ccb586f4e8ea0f33cd5c0f5777daf23d39c3a41f8360b4296b849dbefdbb61319fe46402306724ae6dddf904f1c1f4546430ce7c3eee2ea2e315cb21df06cffeab8ca3913af5e2fd6e9f5dbfae910be05d134309210302047c435bb500673065023100b104770aac4b3ec59f0042090bf5cfdd0d969fb214c9e242de239bec53b91f7391ca5bbdd9d34dad26c4ec056e547f4b02306d6282d23b1e3aff3f027faed8ffc09d9f32181cac92193fcedb44b863b90000ce3f89460f88634f7e1fe66ae642219f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023073b1924b8b2a8012456333df4ca73f6813ada0a240e0ca70beb05f01f991829f3084f6d8e56a124654ddbca908803ed8023100c0ac36c11bc9ce3d786d750007984917e8f6912c3ada0a29e92be1e1a0f882ea76b33e8b829e075dc1ea02df652f79b10302047c435bb50067306502305204ae6c6620fab05f0c29fd27d7c4252daeb425678607646754eb2d3de3e948b8c04289983aa4d94262b67fec02cf37023100f12bdf59f415e1f593f099a1d3e0b87416c392a962b45ce6b66fbd6c304b55949760e51aab2a53fe20491f379f2543160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009925265e6cdfb8bf06a6a7ece17d343894054de5269f771874155a7943b4fceba86c829530502288c42a9221612cce66023049bd4a4875a6600fea22b3319710b1e9c6a3977ab3a0ccf19d52ed451f1e7f133b4ab9d986d807d0461d4265d9ac5f520302047c435bb5006630640230256e2cbace616d879c2042aa1d94ec02983f10aa8b2b7df1e81e31d20a3e71549c09eacb107ecda6dab328455615c594023045d25c40586f0c5d577804ceec3e9e2c00e56f03168b7aae4c4bffd1528915de30bc422b301e60163c6afacd7ba8cf9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100eb6ec383dcaea2d15e7722f9358df484c7e9d6d8510af0469f51f81c711d27aedbf8aa90791520bcb508de0f6ed3c13f023071c9be6e32b364871975ac88c652518441886cc3a5edf118e92cd4e5c5fee1f4007f237b524662440fb8d7ca395c6dce0302047c435bb5006630640230459d3c47fd79da86bd1d9f225c03d7a53577fa98219174062bec49ca3661b2ec6fa8ae3493bfc2386309df4343fe983102301c0aafe1f01c32ef7d9e2a221d1a8901c584e30703201b82f252213a43ffa3cbca5d594d307a6862a248d3cc2a9523b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100877b61ae172fc5199cdf8a6b0d6f218dc5aec460dcf8cbaeeda6174a25e3b3e033180f2fda023007ed6de12991de2ad10230042092489e15aa5da9cd2f8bbd18d188d1298e0b30b59ef476def9cbcc822747b49060d2424af38825d18bd81a00a34a0302047c435bb5006730650231009554ede1c6f352702b85af537a275fb726ca2939728cd3190a63c8544cdfbe7eef1dad2cb13d550d861cb0cd208be4a00230299bb964ebaa9edfe1ce486a757fcfb3cb19ee1d5ac3ffa6911a128d068fc210c13eda8f11ec390c923bfccb0cb27f670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f51f283117a1060c37aeeb3d1b0b1a4d522187a89cb2b6020abd1a60d21445700b9c6396c439396da43513f454eae7f9023100e1626ecb01a73bddb69cdfea2bdf22691ab0d4c1ca079adc3cbe0e80f4450630b2acd038384ffe87bc3f20ba7efa33130302047c435bb50067306502303d765564175d5b4a36d950518055262faaffd99d1e92d21e4bda6940bef69d7ec8314f9bb97e4c40e8e5342104adc095023100df9eee844e256c59670df05ecdc616c0deeb3f60ad06f422804555c02139d76135576b170453045e029088b904f7cc290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f605db8378dc2a25c0b2f9579df1c34ecdbfb87364ef2c792188bd7a2d8ea6c13b8e0657b11ba696515d6e1da7ab59e302300cba93cc0e90f9c9e37fdb0da8a7fa925e215d0fc248a5a144e6925205286fa26f02cc36bf562aa5339807b464a312860302047c435bb500663064023063d3b7d859d0c7491a974b78b3d8725c15cfa84dc9399fa31a7f23a05bbe018ef437a6ec01a830194243746af097e7c60230245cc682005ddc75d65c2fe0ce72f530dcf7658ae1f005e4b4f9a7686b6520bdadb2f6476f8c417652286515f2c7ee140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c17bf9e7aabb35464e22150985c97866d2e74a2aeb8cfb266582ad2deb75832f0af0f504fed26d39dee47ffd8ffa0f750231009aabbe978b48bc1bf94152017239bcb154e6bfbe8e1076b345ae77e30fc4fbcabdc4eec81d2081ad76cb052fad04b6220302047c435bb500663064023067f4a7888ea35b1cadd6c3fd8aa74d44611e16d4221f2a674c1621c7b9e7d3f38eed26ced02d75f0860ec57cb3a5a59102301b90fe4461783b018d6f4711b2fe9ccc290e3c404ca43d6faac7fb39f9f37dd30b32bcb8cf4a6cc07d13d906bb27cadd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023056cacdf30efa243c571855a772745491912e1b59582278fff9fccb8061ba070e1639c1113d3b5207ac79bdabc874d9af023100acaaea12e360e478fb03860fc18d3e977d9fb839e8ef75ef771b52d537268a631bec4f937d528ca069851631cd1fc6330302047c435bb500683066023100814afe2051ea9e6f71102ec398e258dd9d27f060dc19a9507e9c432cda6dfd84eb3ad7838229ff5beb4e9dc79b2fee7c023100addbb622d5640ecb4a44302aaee3a535f7355069010b78353efa91955a8dd88df3bf12fec17a5c3edb12d8efc26d00af0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a7536a9a50d127bb81d1fd31a03cab4f8eb993c170a4c62a324539d63f9ff0d7702b9c841b5637e158e016f8b0d6b07802307d804506b5dc2e20ee555dc4f5e900548f0faaa6abe97a749985b6de1bfc54296f1794a8071acc24102c56b5777fa06b0302047c435bb5006730650230107676f2fc2e94d7c0c85f9fcf4d0a2aac4d385e61f4cba02065353758f7a0a30b725d74bca3938e164f800d648b8300023100afc934dd49ef5066488428933e22d2f5e69a516a54362c8fbc443a7a8ee5331ba6dfcca03c63e9cfec23d268396b1ef00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd965dd115dfe4ef2d854e285be10d3f8c31ee20a48fc8520a7b70270c69b84e6fd1e71d833e4c4aebacd30cf0b432d60230663150d1b54b4ff9aacd51f153256da7d42764302e7b76a186ef983fa4632357e4d87e5ad8d918cb926861b4c875b9160302047c435bb500663064023013c8d052f54798557f011a7f28b2fdc714dc15ec2ab04be65e5452c6b8143716f5053768abd80d5f4e9d9237cc6b196902303053f82476f9386cec2f567bec60fcb4981a4de594b8b4a70b1648ceabf4e9431a406c79350436ce878f8b7a6366cf970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301dbc88efffa5d638f3a5021f1b3ef08e96bba0ca7e23f668390ed8acfda8878876b0e6947091faf23f762ea688797875023041dc127588dda34c70023fb7ef7058f387f943ba0ea31672e93d452786422f025eba11847948371ea85f8eb792ccf4870302047c435bb50066306402300c3eae73af93cb00ab1f682598fc2e09671de1a0347fade6f07b84257b3db95e4f5d4e65341df848cbbe50dfaca25efd02302c9e9aa8e978e1199f66233585db7ebfbf0a4e17f144abe5669a3fe01c683be6ce4c0cca13abe629e42e2b497f7833ad0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310097012e01cdefcb4744684fc8b26dd3a6a3594afce1198eede3c24174e687edfd404692e26a49eb3a761a6b7cf4c9a282023038ed71ce2eddd5deab00bb9a218d1ddf30d5e185b2ef51c94ecf62cc4a54a051220a7c8e647b20ec6e02428848db02860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008e5c5823fa572ea657c64583e27db937d6c623d54a8a937b3eafff5cc4178f429915926dbee06d9c5216c633e7464c6f023100887199626d44f77d2255b2878ca0a015aa243b3926651d1af44b84a9cc7827bd5a7fa6befe99c872006b72d6a533a2bc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301775aef0386e6322641f10bc72382eb63654b14c6f4d22068074d089d78e133ff4990a0f74d6de434ead8e19a638fce10230525f7cdee42862d7d9c1189dfb9528ea5ae47ea8197d331f1a0557277204a918c9492d34a4f7edf54ec8dd3619ee05650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a970aaba662a722a0d7266edc91530fce7f2e3bd0659f7351ba03671b5f49cc837e9ea23e3b37d9e6f9096f59f95859202303e00ddb7ff1e0127fa2616280a6d7fadc116f687c3d90c35be538861bd16f96f7f685981e5a9d07ac4e142a9163c88400302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303b6ab601c7e4e94638d54197fd0d235a9371b96369855780448d43fc35f32870b8a337b3a26e219215e2effd6ee6dbdd023100c331134cdcff91584bc9eb1c8bdf2a6fd789f1bf277a581ee9590434ac8b829bd3c4455e984cf6f6e181e8e0de2b14c80302047c435bb5006730650231008b9219cd074d8dd6ee17d6713c1f0a94cd0e44ab2fc8113d4cd5981416fd1ad9dc17fbd8d2c2a91f81100a9f9baec71f02301ea6f766ede742378f77ae3b4b0e9f5acad6d8139dd046a6b9dc3e2d794f7c2fe489f4244c16d73f650b029350dbd07d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b711abfe46a9abfc60df3036ec55039e1319d5460b6b41a546162bb577f081f702dfeee7f3f6b7b434acfc2b9704e36f023100be3018476ce78f697296be061cf6efa83087ba31abbc72f476cef0bf48d73ffb52ea601b44928c4c70b131b9133b6e6e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ce203d78b2c1157c5353bb8896912c9368b500a9a5b686beaed78760d7724766d1c148cd2f6512438542deb6a97e3b570231008c47138d531483f795794488fbdd20c7452448d685addc6d973d353e47852603e0e88904341a2e486b8a532ac8892cee0302047c435bb500673065023100e083808f778a1c133ec3abc139de72536debb31adcab4eec0b61365cf6302c03ef52f539d56321c4c67eb87149be82ed0230125f784da54e235159e81072e5e9fce57c4ae9d0d9d57fa5bce16050ff20897de94e200ec346eb6fdaf6a35e6660d1610302047c435bb500673065023100e9047b49cd98f2f7b4f88ff343454649d74a3aab1944bdc413914030d176413e142c07298be6c3be52a4abb1b71ad2a602302515fb6fe79bf07f625fd1dec21f10ce11ac6def796a3a2742c48b96c9a0db421145438b3ea82313dca1aef2384baa7e0302047c435bb5006730650230432f9aa5f6c715ae296a30600d3fadc756dee6304ca84d0ba1fe37fdb1aeef8e73972c1529a17ff2d9a6d815584c16bb023100f8187921a9232064140499474cebb7d5259ec1002a01914c6a344eed646747769b24e71c0e68b01be6a2f40d711ec67f0302047c435bb50067306502306713584ccb50c94a47f33168126456d445568e8b2c52728548b4dc0b0f36f4d3d7eb74bd3d5476d5c6f1d6ee010fe099023100f5d07cf8a463334c4f67e44db409c1a5291bb5cf66e35d259ba70ae5348277e13563a1de7e99fb80800675a9407c52370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d2cd335911fd8a26e9f9f8fbe2054b0b0be0a4afa90feed1d0fe03dcd0f311900ca2093635262c054585513ed7f4e8cf02306a2296e18529fa1058b93d8a5f968c2fa6f1562adf536e8f165a95c1129491a6f0fce0fdae5cc147cf1e27a7bf6b6a310302047c435bb5006730650230711b83c193f79fe2c2cef682d277651619280f42dedb612e7448a134b4a9a648655fe6d3f3b3c0fd89c661a3c44dc3cd02310085e688792eaad5a0410b50648f0ed5822e19321e048e8fecad419f7c81673d2e56850110723aa2e55d9bf7dbdb14fd3a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b6bc3551ce3c57104087c6a87cbf67c17ae72ddede23768f48f12772607b4097e2edb62af814edfd0d32214cf8efbbee023100b514bbcdac34587e98171befa18e1e2b84ccec45ee3215cf43a057aa935b1c3fbc87aa35e3580e6c16379c334aa5a4540302047c435bb500683066023100bfcd36d5b77c27460b658c72efe73e497098eafccf84df48765ed7a302143d04da981b1a30bf0239aa4eb700a39905af023100f6a797fb4a78d2d2360f6f2b46c029e069056e865e40d9ac92e37cd9d29024939dfdcaf4404d267939648767213aacbc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307a1df2d691c6ad887661bc0b54b1089d9a19a70ad090e0492533dd9b270d28d975388b82744bacfbbff7c75ead752447023100cb7d7851d62abf1645a877f88c0f72be8326dfa4749d0bd842188a79ee1898ec482391f2e6896eac5e6a77f0c6b8b8fa0302047c435bb500673065023053878473a2c636f7a17bce3a8250040843738b01b72f3480b9ba2984ff2c21fab0b560272f78967f03d9744b22cced5e023100a2f1d15ac3e723a543d335174eb0a2faff81607a6b7a488ca30cacf8110120fd0c70673334607b22b921f5658d42d0ff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d7369d3b0551fab6e7525e4d73519a84936b4fda71ab4b7a5c5f19aee854a8fe434d0e9d0518142525f2253cab3210ed02306d4271b90b8044eb43146907e5a7851eb42c685f8bb9a37d5b781117bc9e6cd0db643ab8d22fb74c7b55f5a092f410bc0302047c435bb5006630640230088f356e87b76e43372ed6e6e8b8e275953f248ca4fff73e7de3273665310de92a3fa9380fedb4ec655fd1e12bf8937102303da242274a6ce2de386b8cc5c3b8f9dae589802b1329c308efdad44ebc2107c3911ecefaab8230e82b33117674de44b30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307bc2ea19020429909c689098a93497b9f0fc2ca5af21da096969c022babafd6ab98e8baf0a9acd7636a8efb645b1f99802301be0b5b1ed1c1fd8a8b35b7f64af3eea561137103371a12020aca56ef23bd0099f00a53062c421f37432b4960843f6630302047c435bb500663064023077935c6fa436fb60257fab2b960edff89bdef56838fd56c3d3ccce2c3636c84c9872662be3b44e536da1cae0be0c7609023037b450c79ff591ced99d370c446b815bb0ec2253a1c7e4e4d54f01e5c678f8739862b85659469b91241d25b7c820d0660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009bf6374fd292de1c7fd99bc9a963136b88399943095e9b4b55793fdd23a3029d29cab642afeeb69ceaffb424208acf2802310095559c50edc534bac433b0869978c96ae7946600a8c48f140106f08400fd34f3c21601e876222521253842794077d5e60302047c435bb500683066023100b9d9c382db5a4362fca4b89b85c758e98b12dec24b5fe0a26092128cd6ea02f9759ab033b24515713894fc7bfb07197402310087e9b77d4b85c3b4c512c4eee52e9b2f3c9ffcc576dd77670c839d7f09a3373ae877389e7100e0216231c270c1deef810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230757c256657212f473711b971bb6eec0ab183de502aa10d4a05108a532bcc33387e7c302732367b1f2c31cffcbb2a6a35023100d5271b704439f10b0d60222c772df1efd48860c041dc1a079f540a1489006c8c00eb967f20aeb967e6da55e86059059d0302047c435bb500683066023100a531a3bb5e1713adc76701e3ddb703c616941aa3393f53334cdedb0b570d3b55e74bd1c4ffd2b2783d8ac3728c383ba50231009710b4311d08655a7fcdac9c39b97c639d80aef34739b9cf275664d13b9226afe2424001481085d4dc20fb213066630b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a0cb95cb5c273898c837c6fb901ce775723be9fb22c879c7055fc0cf51089da3a2f83c012628804a3ee9960cd301a46d023100b216d81730644a0124bec02274ae43c1060f3216e5eb799f3a081b85646fb121be11d1279cf071f8d28b58924bc05ae80302047c435bb50068306602310080138a3af89be5ee8657130b5740cbbf1652c3e3dc1cf19092da691eac37ff06c99fc6547d7bc97e998387f561ce65e902310098173f1cc93afab4eb71470e9290ac6c53e8bead6bdd266a68135b54a5d09a79044e7348d6b28bbccfedf6e708b71b300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a2c424a825f530dd76f9a35ad5c4d566907e4c09b5c09f862cb28f637ef1ccd20cb51f8c874c945f8652df17bcc24042023100c1d8f2c66fb7cbb3f384dcf5bbec53f75541d98a72e6e8e0be408a4ec82475f2daedf99b31da4fe444ea09ff3a3b1f800302047c435bb500673065023100978e6ec6f58fe75abd5d452b5fb316f17c140cf7c6001cfcce22315423bdb6ec026b8a9c39f92520b91c2a48f5c0ec6f023021be9735b1414f7f658289d6d7b2f4ec74df26587c966f57dae5e07694e61691d058b98222d211caf24899dae680806a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d5b45092e635af24902c44af3ce8537fdbe63ee985067660aea8539022dc9e0cee9be238f7d296134db6812ddd8e30ef023064dc4a41ff68b1bf8de489a809a23d964007a97d221369bde091eacbef9ede8a28dcb3f4431172f3e993e2b733c0d0570302047c435bb500673065023100d0193569bd23467b88e7332c3d0c9a24e9693b365602961be34709a0b443256e24e8ceddd8bc9554d9c0640b1897de430230387c37aa87ae1fa62129cb9b724cdb546f5b476565821faab0cffb13b4c229a569dc9ad1a31cc1206099fdcb7f0241a00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302dc04e137c8bb60850263568e3f3c52f3e6cd63e385fc10c463d4220ee813aa27ad936c14f2f32ce69ef7952db743ef60231008ab2b842aa644801f25a5e8cd2b3658e30580cfd7b43a822527a728bdbcc876829b2030153ff0600b90234af25c6096b0302047c435bb50066306402301df01b0150bc12c244e61ddabd34ead2511cb727180b33372108022e5ea6148efaec1f8ea004e8bb899751559848bd8102303e8481a30a8915f7aee6f76a95ec51517c704f9435ccc052a33a4a8183c3a32af2886b6f03b6e18bfeccf2399a3543cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230521a44b0a3912aaedcb66f707e4a87893d968929c7ce3555b138866eb90e15316004656bbd2a19b9a12658a4cd1f5360023100d38587f09644d5b278b38c07107621e189ddf33a68ddbf63aed3a0d3777ff0a2af0c7aee052b56641f63c3a7c9c5c2aa0302047c435bb500683066023100942423e5f0fc4901ee702516b10bcbaaf7f71fbcd2c98a55b83f10e1d72ab0f3524e9b66d65c4f55934ed702f2f15a2b023100a74c1bf297b8e44c5d23fb533269ef591d5d2b630a8cbb74752fd43154a693f4d5ac51437c7b003d14c29c577bd0a8a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310096574f1e17eb3c4a71a0482657fcf0f3ac4d686e261e7c8e3863aedf019e61294fb68a74db29328099837faa0f010868023047abdec7aaf3b1e200af2eb4be0ccdd685b31ad0d7727f1f9b52520944392e5031d0d551c30c4bc2d64e607a9609e5ad0302047c435bb50067306502302c4e3966c0228ea908c577dd9439f525e2a6f8593745d0e571251f197a96154838dff0e894af0a0555cb2d07d9e0e9c00231009b7a22cc8073043bbe3e73256d85a3b56a12707753fec3348e8a28cbd718ba390bcd6966e1c4b8ebff1b0a76befc23580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100800cfde3b0941e66365923078a49a19d769dd68627234005cdb2f6ee8ce1ab4b53cc9a5362fe9c5d97711f348f9d12530230135f5abe93816a2a36701b3c1471ac9e5d65fae66bc3d264a20bcfa98a4ab3c9b880167a60863e0fe54da494d9a220750302047c435bb50066306402304befaedf47491a5936ad9b1b7c7fca8ef95572a1a180fe56dc9b570532fe42c4c45f21eb387ed6aa79a551c2c5b8c861023072585ecd2e519561c9ee606e0520cb50d2afb879e8d15cc3739ee944ea8b932bed80c6d0e7588c146a7efcccf3bd198b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301ce4a30af911f889c8d817e974e0434f164646dfa7e2790389fe345759637cb91f390ee7e13162c291159c3c476bde5c02300941740c45bd84463ecdda850afc5bbc59e6dc309655e5a7b9a70d671b148bb9bbba6743b56857ca646bc20ae8f8c3130302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ecf3a126b5263da4fee479ab367880c0f4375d2d9b96cd017481660d98b47adcb079f5c12ff55c4a442e0321cf875a31023100e28201658a7e68d60214df2bd453900dbb92547411557fc321531b889563de28acd33c6d78f181d12f13a05a724ec96a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100edce4709d53e8f7180a8f2048a745a500192aba7f267702dcd1cc20204d19bdb89c12b64ac7555b5c546c515b02f750502302afc98f74a1ff81b38bd4a9233cf8c85acc26cb8bdeebd51e0ea84ddaba31d653194c3190d6a88e12aae305f7f65ae7c0302047c435bb50067306502310085844853d2c3c7b765947517b0a490e8eb039131ff33b40b770765de946c79281f458f14e7fb66c219804241b34028330230132f74173727e1f6ed88d418dd3e11b0c43ac88405b80c5367e497ababeea2b8a72f041b6b82281339c0d94701134b830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f8c1c97e0c9616c492ec9c8031c115876fcf6552a5dd2c39afc9f876244a86c7a5ec11442d72e9cf2bed725d844e29ea023004fff7f89184103b88de2e449b38e189df5c54fee2aa88d486a7d3ec01b0dce01a8727b48542ebbee78c7009554e4eec0302047c435bb500673065023100d69ab3db167ed9dea36ef0106bc5689cc84ee27a92f57f40ca182e2a5702e66fe6bbc5b98c0aca9879e32a859d1e3ccb02304ae6050a65c0e8ceff3f3b54a23218f8160260ede4d71779f273f6dca109a4127836576effa33beacbb54c22bbd7f9600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b16ae997ed3efa46e138c7f61ebab38ccf270ec3a612a13e6a8ccd5ffb4d652d99207e64e0c33ab3679b55047c560e4e023048560732080d430f71fab53cd887608cc3b10894e64fdb93d6abe096003677cb7e785dc5cfdc54432fae3400ffa6330c0302047c435bb500683066023100c4697951fd09256078d5fc194c1c4a84474ec1572f0454224f3f9ed604c02521c9ebe81ee115c2c0e5be136e1404d2a2023100b295df5400bf1f3ca4798ce76b0bb1689a4f543a1da796b87bec85180d97564e486461cd5aac37df5289fb9a9462331f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0ffa1697e6191e119ad13031f9c1564b33500d93324fd6c104b7ccda2f1d9b8e5cd4523d2b4e26b0ab772ac9ae009cc023100ef90042e792ae99c54dca1b175d0e2318e0fad70f3770b541c856eab9a8701786b7d1e4b2ec9da1c07ce5a076f5c2b700302047c435bb500663064023012fee45f568878b425cf88f17885052ef3f01e0a3d98c884576ea2e87b7bf79a7ed9e8f1a0c0eaafe1fc0c82cd8f0a4a023020644056151bd8bdb4ea15381038db8293d3cb41966287b7051388e776174b88663c9fd9ccf70bef5ce9b55de73ba95a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306fb94fb17cb511beefadb327c13a14d4f3ece608de161c915a5fec65f31ac277858de182eca8f823a5554ebbb3f5a539023016def55e649477c13d7b373d38f00558b2df51bef63a491402f9d2254c59b4c95c6fffde201ff8d4e3e2b77f1c88c35f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023070a70fd93f2a27173c7c704039eb62ccf7eded8e1b55b81570f415146e36c0036910ee97c4b27ee537622996e7d7810d023100b274aacf6499455e26d48b94daa97b22981da935da9c58c3348bdc706367f5400d3fa78abe804e9f407aa9336b9842310302047c435bb500683066023100e9a909dee6f12bddd8d01a4185fff3a9b66c697b47bfdd69e4b1a75cf156a95c55698122ff3b544fa7ad429204c98eb70231008c866d8f93d98085c62fdcbcfba1a57ddab9672c3270dbc31701cea8a1765b52aef745e4ca953d7e0389e4ffa1c5a5d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008fdaf3de12a079af7bf33eef162e89749dbf9f1cab48320942863b9111b299b401da812643846e6204fe415f046683c7023100b826914bd40930bf4fe95a4c1f412d56c74946b72215b1fa13177fbe1b35899e438fc1eaccc19461233de189fe8ec0560302047c435bb500673065023100fecff053b62123a0fc7b61bd50e8f69ddc71d2702d807f04b9798e056b17d2269e26cca423a2df05084d310ca6744893023011bcde770d92143952ac359c290a104c8b7632ef60aa9cfafa743bbdea12f5d13429ea4dcd83a5e5d528311bd55094c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b09e93e786ff509ed188ae78b71110af8163588fd0f66f152ad408ae1144f5a6967c44c216c23f5fe597822c2d775d28023047b62e8ae9f6b191dbdfe9cf47fb2c4b228fb96a0f24b673b27c855f3f08e23a3b1e1054d5df818ca4962c92ed35cb1d0302047c435bb500673065023100fa0eb6fc09fcf5fe127811699e2e8dc5110f88a8081b639a17b183fc025ca4463f9d6ba17e978b0964bd960d6cd0c18b023014a8b25738dfc76c2e453bbde7d58c336a75136ec11d216083184f694d91ea3d1d3958deb63443d029c31067b8cd2da90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100eaabf08fe33dd53c0284a5426ada1dfc0316a9adc35ed8b319d42abef72ad35b9b90b702e308966f2cd52eddc665fff102307caf62f5b2a7a86d2b2b728ddd999a73222422959fe44ef0efb9810c12ffd59b6288f884feec16d67539567465a9b3ed0302047c435bb500673065023100eca9b2fdfabfd894cfc0938dc6bd74d8bfbdfd94a9e3d93af3ae82a72a91db73871885b0df356e997c4b5810dc3dfd01023023b83dc038d70bc622f55915f7614927b8f9311ae35606050d5b0c3eb76ee5cee8db905d13a8cbcf17cb7f99068c59950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cb067faf67b77886ebc0b88f1399c698d2ac41c970a81653a315033bcdf745b81ebd189a5da10f492f6480203d1802a4023100aff92b44b63ae3a519c9788eb8f59cfc279c2a8b2ce9509bf7079cf46665652087f08ac491fb6fc28d0abc726bd997520302047c435bb50066306402306d2209d7c0ee2829858dd26a351752078a6af67aebcf504b4bc8cb4b8fd6b63d5c5f9ed2ccd42b967be4b8e20bbf533c023024596ee281e9d3b4d7c741dc320d16bef876f85a6c9363e7dad53f2a30100eb02ee160c4011c70b6f234f2c117c3b8380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100af549b0aa4edebe985bcec75df7bab3a662a022af06aa3d2677e666845907593d4c032f76cdc816a8620f6216fe8251a02305f7626c39d716659be32bd9b4c8fd969d1505c37c5de7760968c7c71ab036cebbf04e11691ad48a845a8e10f53eab88d0302047c435bb5006730650230730eff031757c609ba9274e568de8b960675f359f3d923231f78cfd377cdef1b7741014028e750c00371016ae5a13dd0023100f6107a3e88e451ccd9cac6c294340ce8074fa2e6d0f582bed681017b3db1b8ec525061476667e0273837a7829558f4590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e3950ae8b106187934d4dd9562b63bdbc1ec5dbcfd2d3dd352fc7fb7773b90faa9eadb1dcca1c5eb0dd4d39c5a04d59c023024d35bf048cdd885e87f266576eeafc9bf9546680ffadbe09732b286dfcb5688e39c3fe38057a8a7985586195d5f5cef0302047c435bb5006630640230649d9372cb042d779872a8ae5b296ee36f03763fe8ac31c9c612a2469a4dbad017627ad6e5048861ea434ee1db814e9f0230547d6de0b355a85999a00ff55593f7898299bacb7668671e768829df72d17ce80ea4a1e68c2e899a7e755c51f17019f40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230617fc9979d6e583fda2d756326a6eca30b409abc18139149c548903f58b42bee27444ccd385b110d3f326db47b26d8b5023100b5215fdc9e807e519b81f3ac90fed1155f8d669f85bc17a5b3ce16d1e3cb0f6e71a676a32e7960c27eba3770924cb2050302047c435bb500673065023100f511fb63728b4010b2e4767b4f0775649124570694c40d68d4275c1803be8e52883f259f85a3ab0961b0a43e002943e50230447edcd7c3ca3177cf9f4844af55db1068aed4d561f1d12b03b32e3ef3a79d64fe09cbbaaa3dbe1c1760755a9392f1290302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023036d20e157bc54fac8bf9285d810d206497280f623725623de722ddc62b9c6da060f70f4eaeab0e120071d275433ea11502306f05835db5c3913b2f14b384d9d90b4900be8235a803d91dc444ec91712c22ff97a3a3c2746185d6939204034286c3480302047c435bb500663064023031dbb10ca76e8e82d1d27cb6a300322ffea7474738136a2bd7e8c637168e7a5ecf685519e54590e8b34965172e4dde6902305a8c2bde2139d8ddc5518282839236575008bc16972984fef7688d9c5b2aa2aedaea19ee5744125c1596db9df423824b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023010a4821573772e614ac96e42d35f4f7f560d3e3041090378f6b9831e23f452f1d5083e4054729a58509ed3573b04aafc02306c0501ac58e64dfe44e8ab83595bbde401c080ea67b90fdf99ee0ca53ee9356f9a82e8b4a785ea44be377c00af03f1b00302047c435bb50067306502310088a11af993e3139537575e83ecd52f1dd4c26ed5d93d5de31509bbffd2417f8d591e41d94a0f1fc6d5ee8c21fdfb5c4202301bce49dfafbdaa5ed418f535519240e4aa8368a85aaa7db40a562d4d250be65a53b208a1795327393871ff4e2ba553110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e31438d8e6d9ed6a8487fc58cefc61f1bb909f41b73274901a7fab0429855bdc3f76f023495df005d057265e19afd02f023100a669dff4b25b26c824c9228e34033ddffee6b82eece91d64d8863d0b6828435c7501770152a1c465970e3cf126a861b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd2dc78d66cc0e1b4e67c3320b9b04a4c1b8014e6ba5e9bc058c816de9235c37ebf4e62dd1d938c3b6c6185de78d13ec023048994f112d392a95dd436a4a8bc927d15beea025d3e0df3161bb2fd6bea5d3786ffa9d4cc549d64dfe1fd4178ce36b880302047c435bb500683066023100e57aece5054bb99afce46a0c0d2cff98efa37cc77a86bb18c3510968bf0d9892435e40a8b3035fd87febe0a46ae5b69d023100a04e55a5be03ad805c22158832be6766000f9bd16eb204d0bcfbcc869d6054ae96050eb89bfb4fd5094afc4f01ba16390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100978939d3681eadb2d872a7a4833fe94de6128780eb5f296295dfd508bed7f3cb8372bb5fefa1495f837945324b82ae2c023015647cda3e4cf443381436843720e391ace712380068235a8f85d27bd5ccac8b6d916c92d5c041786efb04f89c5ea6220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091849fea249e3908c7106d821d1d4219dea3efab59b8ae00632b5f87702c52b7a3f34b7d2cf47e1f1112c50c441645bc023100ca6aba93bf917e48bd34dcd9c9d134ecb8f3a88f6033c23dea13ddeafe521fd06271cef5232a1a098805b9ef6af525d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e9e4c17815fe1843bbeed9b0a819e079ae83fab138aa83889ce23d2f94a8477ee722b45655acdd7b5bfcd884c86321d4023100b5a42ff17283bfe2cb829be3d54cd05df566151d406df1f3b4e9de655efa91d5b50c21e6923636f4836b7d70114b63800302047c435bb50067306502307aced85812a8a7456c9bb94dd0f29ee838aa08b09b4966859e1741707867bceca1d127f47e39fa255bd28484cba86845023100849564d2e07e6a391529c4181765cd6ae07b8f829c118f24b79f120cb2e1d545953fabadc88adafce2317787e9dc82dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310092a220e0b9a091bd6e4fe4dddbaad420a1beae812c9a82530b022697fee522f3e8a3b32a458b0e20f6fbada54cc5b727023100aaa32a3544be0a90ae0b0480d627226eb44748f0ae160470edd7d169cce4d7e6528f4e1db6fb3397877fee837d9913220302047c435bb500673065023100bdbc1554fbee6da263d537257e4dc1b0cc74d82e673ca7477ab2c41c88f4edcf6ed8e56f610b3d6adb3f2dfbd14b0a1c02301134a0931128049170d91bb41a2df560fa6db2bcb0a3c6c4e04c84708745d4ed66697cf9ef0b8a190e7e710fb8a2842d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ccc6491cff7a3e3ec802a0e0c218c2081e467bcfba28ad342d4cbfbc0ca8608f22fa36d5b3067d17b28b22fd00e50ec202301166d983e7227a8678ef97949e048a469fa6aa533d89bc55992c2e5acc22d2787c8471addde5cf16f193c460459eb3500302047c435bb500683066023100fd3efc79ee7a4f78bfda5d8775766323e5ffbdce36311b544ba8bc133e31a6a853ad32d66676196bfe3ddcdb6bd6fd21023100b93fc2de0ff1b5c5cdb044dbca3bee83bac1c9322b3e91f30bb9f671ca3bafca563dc349d8a122a0d19baadf3fc939450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230697d19056fd296703665f026e79964e984be8d793935e61154925fb86ac9a6cef9091dd70d70cc6e4d1cc2548c78fa1a023100e6d51310cde3b04fd60688cd68d4ad15817952f94160aaa638dbd2fcee0a150735202e23c268f19776810b8fc409d54d0302047c435bb500683066023100d4fe72cff3d5b98a7e339febf03ec3951cb40e864f0232c2b7428533f51a55fba716a2568676e61a682dda171499c77202310098061462d46d2e99a7c8eeb26101a9878b50167ed164871e4d6da97f5ad2195f573824bba7d020a916e73fe9cfc8e0060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305d74a22227575bb048afd9f3e43f1df683ffc7cb32b6a07ca4ccfb66acd1da96cea1ff1efcb387336a58c569ee891d1102307150a9a795956e354517066f0db6eca634bb4be89d5dc6cd7078e6a871ee33e45711dbc63b2906e109646411acebc2c10302047c435bb50067306502304cc30edfe53c6b7192efcf33074f7d44fbb6967c6f2ea3db48b5cff1ffbb17757100f42835b7b8f571e3dea32c80f85a023100f453f94bc0945ee68e2ae4de042e7f9474654dc76984a16e00d2395a7d9206a5b887de4142bc10ee601364380866ae720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008c8f57f5013d8f879347996bff6beba425eddc2b27ce8c687dc04537dbbb20caa02191dfb8ecfeb37cc88d4c6a4c1cf4023100f2ab92d70bdfc1dbdcc7de04aaea811df433351313fab6a4d8d787edfd25732e5c6b4a9af2d2ecb768c60c39d4d3e76a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310088eb9752e4c426e405305830f756d6a41f4daae78b5ac609cac9696bae2a89d8a0b9ed5080b2f7937967555aab798e6c023100af6d22bbc3872ea5eb433a0faef19581eadc2981ded35f78b1c54bd15d437dfd8a8999adbaaa3fbf5be3edac7b97f7e40302047c435bb5006730650230265156ffa7ed4c394033bad07948f9bb8d447ba2e7c790eb44deef7cb08dcb0635d9d4d3317c2ba57095d30df8345c0c023100fab2c2552ad2a2b2b3464f3074d2cff8dd1c78d65d5a5d8f3d652abb2f30dde5b11f763585d9a2ac40e6185ca62adf8d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cfeccef8b86ef2c273e2fa752b7a5028e587c3704fd0c60ab65bb97d4eaa8f7791c658b6637cc62dd6f59fd1e78e7b3002303a98ff41af5e6de98d692e1e11a09bb2b77506ffce139c0710d4041969d85bbeb04b21d265dd8d0250731748e43bad3c0302047c435bb5006730650230610a6b07e4a1478019e02658f13a1a069f55c728f7bd6f889ba807323b2397f7d714838625835fb1bf8fc52e76802599023100ba90e05778b85b584c5e365c34cc419e2b2b29275b7598797b93fce55818609d69396600f85fcfa07a9da66139d5bd080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230679948d5a9e7fbb9ec808a929deae499bf2f155b8b370991c76f31ca2519b2bb5a8174c1f5bf985381b1f6920bd2837002301b786e732eeb48dfb3e07c07ab2837265db43095521b1e245c6a46f565c7c1bd44485afcbe237243739e9c6d60056f3c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009704ee0bd757ba1f3e5ba7aec38101ec65f51e11684259d1c7ed9b5b8b83bda7b143371d7f1b55d81128442127ca371e0231009ee7f4de481262330a99f1a27093f6ea10776e0f76127fdc41b758c04143122b9c9fed608fc1156a888cb520e5281b3c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c79b39b1d36bd7dc14e35b15111544eb967ea2543c6969476d10da2841e2305390a39bd6bf29e62e1ce0cc2fc7234e3b023100e07ab3efa4f9b2afa05c03528f7e00dd835e7868e44b73460072d1232f2a71426495fc8ff87cd5ddbcdc0e68146031110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aa021739552569fca27bacda57a6abcd46174983fa091551e0d354018637135b6deac3b8c302001329c664367378697a023023fd8b535d61c69b60cfc53cacf267edcc867fa8fc1be939f9594b5168972f66ee2c3c504d83c042ddda4409195d79020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008d0d226dc1816155e180bf78ead2f5f903177420a0abdd6673a67e68d843772303aed1c7dd7f605a77e305d02e408a45023100c7858b7e6ab88b8ef3fc4c40b35c4932c7a7c5105ccc195d76f1ef5c348d2e8b375f14f6568b25e7629672f552735b4f0302047c435bb50067306502303f4a30f8256dc604b8459585a31fb3a51b8d5be105a033736b56c3a38ae52434d760becc84ef0a4b4c1d1f0b123ce505023100a5f0ff8e0b024f1841a6f64846df2d692cb7b8e4cafdf82f4f5cc5c21ce316547b20e485c69393cb1801f7933276c3920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008370e4ac82dd9bba37aaa84e336d6a2f81a17e802e6ef78a9cbedece3ddfdaf98f6a0743c0069aca330b2cfcd0a8f49502302f07d97415fa6da4f2eeca4ab8264b19d6d5ac9123aeabcfa0a0ad72012c08787418e6730fdf0fcc1998b68480f941420302047c435bb500673065023100e1984f2c4138944bc2006afd088e1fc82220ab9c09df914c8eee369f525c3723044605cc9b7e996c4772add21ffddf0b0230053f20991bd5ec61b6e7e7dc1b25708f0af7394944467c5b708c24db3ad67fe551fca99b826eea2f4a46510db22480500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306c6daf726e38c374f2f956a2b9f84d28f096b8b5ad5208b4ea642f0c584b347aedea8ad8e0176773f283bc289112a655023100def79258f214519a4c416422822184ea9348786e8ce0c68cd6e6161bed1cb3497ce604c30e250325069f3791a86781530302047c435bb500673065023025290563d88f0ff596b15a083c8c9a19d53c4726c5b7452642c9a3558bb769d35fb5ab7b0f84a148138b722c9cb56180023100b9f310b1c180e6f7dd1f2160a950bd93a97bc2fb0c4e1f8f7d05165fcab19218af235753a08c3db5f80d384854187e510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305bf67e9447f3a4aee8a83baed9b594f371a76a08a8e742f939dc72c5c4df407fad5aaf6de920dffcb303e8c7b9ab441e02303733ae54710d2042e78eb97389828a63cb35566032561ded94d623da28832557bdf4253a6be88dd5706243aa619481960302047c435bb5006730650231009863719a871440e99475ad01c8b3a82c98fe09e8009e4591c1afd3ef7b9ba85ae13c1f064158d2b79068bfd5bd161339023066b283282540c05eb3c652f8473fa3b7b526b020428e9e91fb442773ccbff5e50b568a649c20c1e21d32ff7966f4b0ab0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ece316465a309dc211de5ea4a56a267e26b20a4510fc643453af8fb5d3bb77de717c66479e81a9eb20cb39ea931b2fc402302efc79beb50d136210e2399c63e63d2ebbaa86e4f30f0d400432ce43a98e6f7409c75518427d5474c55b3ff0c2704c010302047c435bb500683066023100b332cc81a333f80429efd95ae428b7b3663d440fead7bdfb9584248d1971af1cb5c5dac2b080a4d172801990b3812e0f023100a91b2276d7a78b3f4d5fe9c5ba8c60691e7c7bfd77ffc45c1b67cdd28686a1e57d0d8bf2cf063226f68083e51e4cb6df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302662da7c61f9c382b7e6d4d4c4971042b30321f053ec0a69da340671ecd7ea82880fca76ad0d1502b676685d164c345902302fdb05a44059be28a7aaa1b8f31921e726099f1fae5fa5e79a24db0d7f1cdefb96750c07348d4b6b5bf54362412e8d010302047c435bb500683066023100edcc7ad9e59283c03b562bbb07fbc9270bdb28bcf5abe2c5a25bcc92051755d484a061b5e10f8814cd122cec1e88e3fc023100c2f133bd715f8609756f449c296947886a240691ecc04c924f06956d4895e7bc542a9861f75c74631f40e652091410270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0ae0fe0450766bc19e64271c9b3a1bb8ffb5988dd4d8126ad01f850363fb38cc84b13bdea32402623ffc0e044dc89d2023100ac527ae86b5509e986019361a3b42128a46d659d0202b60d251b16de84d181c79e560280839c0c4181f81c102c1b4e240302047c435bb50067306502304b4e8de4b7bdef42a4ab629f94f6db0e5e331a2b27bc522d0b42f582fedb659df7a769ae6a228c90f8c0ae33760fdf9c023100d91483b38742d15f23112df1b3de64e26723aeb9f3512ef0a574e41a41074bebf2928c852cb4006a7b3b6f6d0600eb310302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305ccb44d355864174d06647db780940b87fc2e7c61b9e361502d6215a4e8f70767e55f5752c8c8ae7a0cb42385e605c600230519a26c7b69bc6a74a385e7679114814fcaf4b04679f3d2299a95930117ce32ab76b559df58e87333940b56e8ad276ca0302047c435bb50066306402307b3177d142f4fde88b463bc00f5306f45cae540ca20cecca58cb78e10476c065f6efb8c25cc4ea501e872eb60ffbe3ba0230285003ed1c03c1bccc473b6e3a43f282c7d5575f0e7d96feec3c4d823b984633f2408a8eb99f82f29e0c7331befb30210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b2744000cce95114ed563e3d6317942b3a9172e928053872acc82816505da6393821bf28a4599851dfd5e4d68b2279a023060aa14d426f3721451fa7cee0a352f02fa93d25e9a09fe6d101ce4833320b7e715bc4bdcd830945e38a477fe5f6d99950302047c435bb500663064023021578a9de60085d73ba9b08b5c3f176929259abe072b9c73314a197b16dcf95173e8082c99578bb9d0e59beca81708020230789bd4bb97db7817ad0b758f7cd9012a2fa743e4a2facbb16273f83efdb5f773ec6245096cb3d555afa687f8cb0390160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310092d311177911364b2296ed7c168e83915e3fc9d6447dac713482ab80e5b37bff342fad7baf17ee21fdff787559f22d91023100e6317c70a5b971b6d48fa29d0f77276a5da619e47c33ad9a1992213270e7c4ae36aea6aa248a7dd81a8b0c58a9c7ea640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307e9d559333a1eab6e05b68c6d75936238dcd7661ef46c1c18f530b852cd9ce2b5d78fcb50308c7985288b4ca011b8039023056f050a15bf4d76fb11ca3bd16d54b2d7116fe15374a35abd8b19a67b85857f33479d23287eb1707393e5f70c6cfd3b80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b498a976b5f3416668597f33df4ee2b2aff490620c7aa2bc88c35360d6fb5e8090eea4a9069c6151a042fcd4a581a8cb023100c0a1dd6b66e48f985a908e86f2eab577e1c99072d535f7f6474e4e8a5880521fa4f078b4c139f780919a0d2eeb2d35080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fbe3a1bd3718d920929187fb2868e0e24caf27d204b62803b94f7f6fa5afb03e05d835b326f6c96f1ae38df8e950732c02306581eec41586be72fc6d378bd87f23ff0578758d5342372781034c2195fd6bed2510fbf9384a485b4fed28f22e5ee9f00302047c435bb500683066023100d0532ae3739092981c91987621d12056339f407acd8d8a99d9c264f4188962701b93add84557665e9a3efbfb108eb571023100871eaa19849937273efd84a5922460f3d6aeac0fd8a031750e2f8ed9be6bb0af94661b0ad555984301d6317c6bda09890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310093cd69dc1c00dc0fe6dcab522c08a9d6f6f27f9140ff6aab5a1acdb7e3a831666b0da6a3fc3fd79eda7ab39d7cad6a66023073231b514122c56de5d626c63c191919644317601c62ad0bcd8da8c5680f37ad645912a06264673b0f2c5e8c646f730b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a18b100f67935307591164323c189b995ebca362e184083e67dd598e151454e8b82cfc789d9b1db5a611f7d99bd6a923023100d1b31a34996da1947331b353e488fe14fbbabcdf7e29540ec4089671dcd734c860e977fedfa23ebaf7ae2fcb399a8ce70302047c435bb500673065023100c9c9ed2f667ebf4dbc46d97934aea4dfe8da020868b3add9ff9dbbf13f14503016ae2f487f928464314318c8a5eb2dcf02300e3a6e85dbb002d242f961755a46793c94908b55c8f58eb80fe1b729562efa2e8b2b2c0ac5d584598de0613e62aedac80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230404fac7f0bcb187760edf9ba6f2c5459fad1bea002c6a0216668621af00e10e9d62065b7f94384ac8a9be809e77b5c85023100ec40883c9a9982da468c9374176749218c868f984d60ce1b272282cb380eb41b453195c8084ace981495f4eb0cf5813d0302047c435bb500673065023064434ebe2dbdd23fae0666ad49a99006007aac11c0f76dc32c1a4edd35f1710dfe20745e005bf726493d5818107cc02e023100991b50b82908e1d1fd726328a5c21bf64a04b55b0ce433fa89d4f060bed20fa4706ab52558c0da844a8d57d0dcb9432c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ef93038a4216a5f583241b762645ff0864801a8d25ed8fccde5ffd8dca4267bab5c8145bebb2b957e80191b6f495af0502306274d9f81d35ab00182a94403e304acf1abc8c3299095c34691dba95121797e1b2f70f575a138616470d6bc8fb6effb70302047c435bb500663064023056c9cffabddb35c4b41e7ccaea139e74e8ef46c75196f681eb30ed73cb88da6caf9780850461f4015033a42cac20cbd00230485a2bedd66b144619eafd5e3f5bd947027ff52fc9bcb0ab929fa3e9ad792e0617b470c95282c3da5b9a08ab534b46c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023077420e267e8259cab3365ecf87d4db3f9c859e9168546ef330e68d09ff3a688fa08812502e39f5c5b5c25cf836b180bf023100cdaf8ec42e7fba7ff19109e03690c094a661a8a1efd8e6ec1e90b11a67ca315afaa4294b7d875a35d94b5163f4d614f20302047c435bb500673065023100d9f774031d0ff98d816f66d7a9c586dc1c2235b7e3194a5422b30b8b603e5b4c27985b4564c5ff514ac33dd0458e2ca802306ae9d75ade0ed06850d3fc55eb93b691785efb69a0561d597338c4808a34ee612890a3c0325cc1cb44061f27bc3105160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023040bf3430471b991dd65c465fcad6b849b6a8dc2b5338cf8020b68a8e8da93e75329cabfa19888f75b375ba1dde61eb5b02310097e2724542ee3714c2471c294c9bfedb1ecfb895bd1d33b6c90873e5fd0ee62cec7ec51fc78bc2640516d84c3dfa1be30302047c435bb50066306402302a614d193d970c1afe837914dabd7faeb87895a4bdf1e5278f0ab813ab8813d17a9289afa177d15a125c4f507894281d02301b8e80f334d166140b2f6b0be0bdeff987dbcf1299c86ada80f51bea4d82b9cf93f3da2f49c7f9def85c32d89932f5540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301aa064dcbe216aa932dcc56fccc72f6380b388c7a65dba75130271bd00ce2c2e166954f373640c30baa659de6d5743a8023007985698ab78b9b996fe52b3021d9dd711ff8dcf2ff59eb61989f173697a42c3496c59144fd37e79f737f3bdf1f224640302047c435bb500673065023100a5c8b5c44736b253486a631d3acfb2216191c19fa814719881027b1733a78458705065337636574437ab825c1e59c55f02306c58fcbe634b2718690022180774e19ed1717ff494a6956d191e52053ceee7ffeeb1828cf4f1057efd220a05c3a0d6a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ff24de4f220cccbccbec91a6db3cb3074754b631826bf8415f6b019eeb1c13f80e1b0319f5c72b5c166b223b484c9efa02307fdfade7e8b833d9168377e3b1b67443097a97c37c2e82eb836b5ddaf2394eb0146089ccfc34c78af04508c074cee3650302047c435bb5006730650231008c489bcc572eb0c6c663b4091fdb753f7c1d030d8213e352fa413ee825f4cea4de1bd36e954ed4492574485bc5c8df1a02302ed8e96eff58c049d31a781d5ef0f2732838c64335864f9f6ad0efec8e1a1e1e30f42c518f0ab9e0bced8b7712b356ba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b315360220e899c6ff3378e8f8198f7e2704dccc2ef566c8519b11479c8520550268d49e9b99b82ad914f0ce33c9be4d02307cee0b07ae177499d336807269664313320b7ef8f46d609aab4065f049d8177ebc8d7fa14c4779a8183345220f7f845f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d485f0f6031d2b8ad7695728da547b823d574023b0779985129d6550354b7ecd63622824e95c1031431648359914ff002306925edc1f5193eaca57022a5c51d42b27d60f067a381a1a163a0620ec65264e3bba906d62ca034e081661ce4758b939a0302047c435bb500673065023100fbd3f969260a5655f77c9a186dbdb3e4252cef792880d5be2c0cd048b1150424019175c98c89094843c2a584b211e91b02307d64c95cf5ff4d564ffead74c4aa00c9521257ba549cc5fb75c51b2da5b7918affa02cd67209e3fc799659792eb0e5ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301bd78804e856e428fb0eb056dddff9536d92b924a0533b75ef35b0610131facedc2b62bbcfc56296ea86f654efb75726023100d059daed5efbf598422ef9d193a0577bb18dd0d41572989310ec44c66f776db08d99f51ac68cac40e22fa7a06d585cd70302047c435bb50067306502303144eab64095b256c2028dd0e7aa710544d57423c006fe215da0b45d66eb6273b0d934da37f09db61c3d3ff55aa027b802310095fd90bbbb89283420d4f3e729b3074c9087655a8eda234ca76c998414979cf026f272eee161fab78840113444fb7b5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e41938dff03b1c85d6cf56283877c18ccc0076b3ef87f447c5f9a1e103647ba11c8bfa1b64bcd926e259b535ca0f9e29023100e5fcb95ec280b65694fe0abc9e4c42fc2b413ec2ec6ad3feee479f9410d7c535970e34399634df8196cf606899c8339a0302047c435bb5006630640230431ed6d4abe7d2fdce0960327de507920a461c6c89f1f2e4b7dc9191d4acc7d5f866739446fcf81540747c10235307c402307ee47c5590973c4a2a0ee7f2a506f144ea719c34f729f4cf7b73c2105175f1e00683e3cb3fbf721868b9c416f50a5e3e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230039d07d3f612349d42183f44225fc02d5ee34a0a6c32e36104e6925f9a6193164f8d64e33e8ffe91580ad8243d9a76e5023013762ed1a12f5c404fe1c22058c47c67ac91bfa6ca9fd8f3ef3ba0acd71cf65dd5982b8a87c9a095fb1afbd5ef9e73600302047c435bb500673065023100957c9b01decb8d3be3310414c8664bf02170c49f1b5245017a1df88cc8b534789812e8e71dfa9572a911f4b03b5c5a58023028299be6d62d68dad343ee19294854fe019a87d90e080948ffaf98082e999d1bce23ac284fdb9fd296690b7a78779d6f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fdd3580be5b0b472035c944a00c59b829b97316df34e17b8d3426d35b5e1539558c40f64808e434d9657018b39eb3c31023006540e1729a9131b3224289b2ef6f258ca59b141906688e01b4c6872917adde165a003a4216d3239ff039f88b37747450302047c435bb500663064023008c64740f29a07d6da858d26104912af73a5b0c817bf70d7a5f9f4f9f0d70432c31695605d3dea77c1e1b55dc2f8481b02302677e88082e9f645d5d0c8c188bc41b938dfffb4d38b2aaa66377aa76c1a3dd533e6ea0276ce20d3cccddba0a21de0de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f004ec4bc96b1ed98c4aa1474dbd104535bdac7949603c35a9f6c7e4126572e0c2dbab93cb37e8b57ebb8be63eb217a20231009cdd63fb97176cade01b29c96072ca3cead1446a755cb69f88d14da749c3bcca15164f566b8103aaa8253337b809586e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230071e689c55aef81a12b1910198d4c5d6758b2504757dcb6dafa453437c58021561e3ae8f07bd39a80ac68bff11c22e5e02307574b1663f5e82390307b5fd975891b8b8fdc4be457f7678b36dd866346ec2e1d15686e33186e9cdbf87c6ba76c159af0302047c435bb500683066023100afb198af66f30847d71f349ca1de02e4a9e0b607e19e89cdd97aa198e719922015aea7daf07bccb09a59c3e902ddf65b023100e9ca9c089db1a8e9816a268f2f09bd9bf414830635e50fa464f1bbfb283fd0e032c670c4333852dab1d78693063a0e630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd1a5b6548d37ee0f2162857781c25de5d0664d57889fafa4ea46d780431ae9c83a8855453d53b29510107e2110045b1023033470a483cbd89a57d80b3aafc681efec2729c13628d680057facc906b1062cd13f0627463d5b66eba5c5d7e79403c0e0302047c435bb50067306502301c6c760883b4dd2bcbb65e6488b279733cb28614128c4b8c988efd7f3d7dd529175094311fe36619c1e1e64bf8b9c710023100a3ceccc4fbefb1d7e03abb3f05b764739007b8c2a163bb6ecced67eedf3675e8cb81290992b6091da826bd4ac108dd9b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305b70be43dc5916e6417f9be8a14055d856e031ae25c70e62a337fd9d1f89b98298132f0c0c5d2add6f608a020ffa65ca023100dd9434ce1c04671d7be1a77e8b3dbe6f9ce4c707285f6c3528062dadadf5f764602806d52a0e01970daff2690ef6f5240302047c435bb500673065023100bd4cdd4ff294828d077b3e4d89694257e73fabc35f69c5757094a64cfe5e9e6d368a3436e50926a522957c4370120b12023030eae82b13c5da54d90d200dda85cfb6a062c05d0b64d07f46a90bd825f443b4fe7fef07a91e318132710e2a5cae0bdc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e0cbad8cda225a0e6dccb2f7a6616eacbb2b6c35d5059205ccbdebddbcf538c53e051b0394577dd519a9b8a2bd13cd4a023100fa3c9b2b0d20c22ee2ebd9e049849a88bb00aa7a7fc25c40a0db62a138ef1b02abc556539bbafd0f2987b998a42eb0950302047c435bb500673065023100bf593ee19eb86445e8f1125bf4d613e53f4300847c15901a0421f240ecfb8dc82634983e7e3df2d1aeea244949b16b6b02307d6d7245aa07c8fa33b2167f072dbd6358ed15ecd270e478b5be48a8674dde10c08cced526ee11fa68933371ad28b8db0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023042ffdf1a930902038d113b3608e26c6f9d185b6c90dacd6cc5431d1afbeffc2e19b74d14c65910e5f4044d26e0804f47023100fda7932a48d2adfc5dcc25f70f97aef06e31336cb2dd17cbbd906b633cabb236461b25a2175ac776d7f4ff418c0a64420302047c435bb5006730650230036f30d5f714c7488ac319350dfc5a44707b1fdf91533f8674dc869e32aa0dd66dcd438b9214eaa70895aa2555bd8fb302310084a9c6b38ab6cc5bd72be56a6fdba718c590a5612e18d5ba18f5842207de63d7f66a7404e90db4cb15a9027fdcf1fde60302047c435bb50067306502307f75f3333e2dbacb6ceff9f2e8c82aa9bb0cffa84cf25259896825a787e28d443b12e33a0becb05a3654cc3442541b9c023100b43132c3691d55b47de97767193630d9fe847606efa4d52a9f65ba010936c4289d798af6e9cc9e415ad96c0ea19017af0302047c435bb500683066023100ab2e1d0a1d67bf5b637fbb402153a8167aeeecbdad2e0bf7ea4480e959c79de06b07e2145dd4acca9cea464ea95ab7b8023100edbdf07b88f0e67b4e78811a54bba8a08516cd4857aea01f177b2836b07bf34f7af5b8362606666a4adac1155f684bd40302047c435bb500673065023100f37f9ed8af7708b2e6465f8bd6861bcfb0346e3d6c7234dbb0e52777acff19255897a3a732bfb84ff088c15cd1c705fc0230134586d5fdba2d0f73a4378739b98f5f65dd9f851c3c2bdc174154d7850a859c24bbb5f7280f2dd02fcbbe5a2715e0d20302047c435bb500673065023100c04b95473d5eb614ed2cb205dd41d68af030bf9897a0665788a849854c10ab6a7054e85800f895016804e0dd239bfda402305b25408856930504b707181619bf5178afb6dfc8bb56de0a0d2ab87ce6621962ba47a61f8d89ff4446eb31ceaadf4f8b0302047c435bb500673065023100a7060ad588090b9f38c85b06cbceb38520405cdc681e924ec94f78473c0e319acd5a1057424d01a581710dbed397781a0230747ad66f8e4f05592ac0150ca29f6760acba7e1a9e93d12f4bd0ace32bdca43592ba69347102fb66df700786bbe3a6010302047c435bb500663064023007f4355405d21fcdaace4f57a05cd397eadadc4618d078575121a722683681470fb28bbd6265dc8788fd511aa9eb58180230308ec4e7e412fd99a824e0cedcbda9bb331b9d09ea6583d8b672e4c7fed9ee3c05cf89f24d637a31e7dc0faa17fa7a990302047c435bb50067306502303f2f229570626b76fd8ca681e9942a3fab79eb1d526528ab4f190fcd17fb0907456fbeb15806149a02964574382a2bcd023100b846d23f8e36c6d871a719de40a1e8dfe237580446572d96f96f6b03beec46cdacdcee782b2208f597ffc6c39512218f0302047c435bb500683066023100e40ae9f14322d1bb215abdd9e854b7ade0e09990ccbd05dce3b6a8c0d7fa77ff89ec5912d122a8145120672173298b260231009d259fc438c82ccd2d9d406f38ea381e300690dd790024f831ed482038a25406c786f90b5b16ac582a38c959196aeda90302047c435bb500673065023100da35815d7c47243823f8adba3f40dd2ea0ab8b914935b69b7a404fb3b0ac33e6d5e5db1ea035585058bc91209db09da4023057d27b28c0ed79e818452a7bcbd664d88bcc04e8cdb9dcd6d3e3de0d1d503c6cbc9d4a8bd6424425dd1d2185ecf733d40302047c435bb500673065023100f0f7344788719a29b949610e17632e0d36533023487fef65165e2e2e6db34edd81f9f7b92492f5615dfc376ff18a32bc02307aed16cc84daa4174b58032835ff18822e7d4d32e792c7b4ca78065d30a2e7df23ffbda66daf8aaa36fc6febabb14eb60302047c435bb500673065023100c4c420570af04c26cdb5e6fd08aa1de565085e513fe6dcf7f4632c7961598a601187f1343d253ec17737e6701921c59f02300e768dfefdb2c44a71033d177a17787259337cfd558a4d966b776bd7bb457ef8c438ac45de66ba60004f178c1113ba550302047c435bb5006630640230262fb5b5bd8e86c71c0ae742e7c1b4946e6744e471ddf7e9277540ed1fdf2fb53086d1e73f9c06aab0f579972868a6c002305e7518e6645f0fd5ce2351376d722e48b012ff8fd47697857c70b4bcd97eae6b36442d44c46f33b0e42e5b6c504e536c0302047c435bb500673065023100a9176c0c34d94b0dc0fd6462833dfa01624e06d11549a8d85f6b9dc21c0c9c993b992fbe165bb362b8c75eb410dd6ca602303b9894656de1322791d58843a1e7610f1a11435e3abfff9c925312fc4d431e6ef59829e168ed13a6f5b8870e69313bf80302047c435bb5006630640230193f7939ea5b30ee5cda7beadabe4387752d29911db320e63bda952d8b59b6daa7099fc4c33be04c287a736f917f8ac602302d907b3eb6cbc933ac8f57e303d6260c49eeed7efa2b62056bbe9801894006c0cd686101e69f9aefb857e84397d668490302047c435bb500663064023016f38d36fafa213fee2c0dab8e9a8cda79b31e4c1fd09ed2fb9834bb651b1a9fb7985a92f5f345192782552eb9304ba602301e91342cc2d7be2d1234656cd988c3f5969432346ec52918b861f29910e727fa3eb21b0590be2ff19f5cc5fb8ab3724a0302047c435bb500673065023100ac8cbb1695695b461e5477b70b72d0e8e3b5bb688ca990af5fed27ea2ab9755c3bf5a4e7c9eef69f700917612760a82c02302591d9c4fb490660773ca3678448117015b9dd53eebf17694c62a69fb259a3f3a6579f81923f0f492c062a25d2b4bb3a0302047c435bb500663064023006588061fd970dd98ff5b44c860df55c09c931fb15d5ab9916a263da31a381bc9c60c2e36e1449db010ddf76522035f002302cd38832f3576faddfe23db20dff2b535163c7de7c142c7c59b101908b82e560ff90d801dac16dbfb57aa8ff2cafb4b90302047c435bb500683066023100b7082c21a86012e5a815b6f36efdcaba1ec2f4c405edb3440522f33d200fa6990b98079b57a69e87cdc187278558a9340231009bf40bf567f63588b0257b45a4c2a1885d2faed16b39e7fc4412abce9eb3fefe79d622bf2836fed5e5644d7d81a46dfb0302047c435bb500683066023100c840f42439c71a0571c46aac6cb681af642329aa725db7eebe631fe4e1e02b148bf658301fa295f0c683e9b15390439f023100f8d9e0cc159070cde9103ca2ac29d758bd4c963866eeb4281476303339762c90231ecb17ebd81c4751ba668263607d190302047c435bb500673065023100866ccef3354d126295287cc224be8b83c718be55e31c19580e4b6594885e71d600b47cb39ffc23e42953bcd6b9c10b54023077c3adf9b1c6a08775ca2a5d2312d45faf2ac1c57490a681a4603bc46c1f0067320526eeca93e9f64591df4f073c912f0302047c435bb500683066023100e5c3cba7c98cd9ec59236d4413d79a79dac046d71a11da03ad7a19423074df17eda48361390fa863a7023677553616dc023100e4b4c6eba2f150b168d6ea0f1ffd23d2449e0224976a07ebcb8737f330427a038496366b1bb9dce269c7ee30f67e3dc00302047c435bb500663064023008b56828b0106cf9508bfaddf23c098a95d683bc040c1e8c95780979b80e99ed97c250342741ddd5fc4f0efb98c26986023059b1eb496f0468feb1e3c1f8cda74af59034a13b595953f09e2f2dca8883fb87f6455334d213886447eccfcaa2de94d40302047c435bb500673065023100e7091f75675230e50c0c3b20ddada9b643998cb173dab8c2a8c9863237e8c32e3c83e4e8fe14dcd191688321deba8fa9023061054331c67ca59dbcc670b7c2992bcbe513eb80eb78561e5264981aa64d19d7a88f7410ba56582b590057b1f288df1e0302047c435bb500673065023064362c069ccc845152bf0a01f47f77c8f029c1c43a597cd70a28415578400d1e370132ac805affb2a43ac548ac411ba2023100e39e32af53c8da6c9b0784d2bd8e24bbeb1e9672f1296a050ab1922971fe09f5e0e59aadeb5b6e05949390e2caa07e4d0302047c435bb500673065023058658a8db8cf0a7f715a8009708b0471cc4500c0bb29d10244de3fdaa1c1bd9327c696cfd4a64bfc7c6cef2ff89c9f030231009524be8aed8f29ff9fc66113306ff03e73c22094f6c64ac2d220c8e1833029c75519689aede2b638bc00537940146e1f0302047c435bb5006630640230472bbeddca9826b37810e37c14e753816b32569565d1fec966cb846d8a3f55f928762a097ea7734b13dcff73e1c5e60b0230753ae66bd630209958873930b765e54bf8d743497d3b64bfa484ef863ddb79bed00d2c4885f96a17bed6110373eb624f0302047c435bb5006730650231009397554a9ba92b215ed57eca1d47e0954836a3435e693a9ac8e820b9ea3f849b91f36f8f6cf5f68a2cabefa787b7d554023056c3bef438cf120714adfee201a12b4821fb9a21923d2bb73d52908c95e141b8b55f76ec248f58e771b142a82cf41d570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a66e3260be6a70118c5c12d217131e85484c1f65b9a5d9823ca7cace0aca557416f02cc7736e78e8961003a4bae35a5f023100c040239cd14baa78ff20ccbb7af417d4bc71b1ef0b27b7425297c66fc3d4510a1232ba51d71a9ab903020f77e2e170260302047c435bb500673065023100bc6f1f2389d90900c61b83842841d4243f89e8605e3920a74cbc47bcb1beb879cdb8c8e655a0ce4166a4f1f34b08c49e023024e3c5ae96de5693c5761cab03cf5be9c320da7a6c194b209fd537c0833ff9019661ab0f19279392fe67ea3d2ffce38e0302047c435bb500673065023100fad2ff5ca11771f11cc37158d2d944a74951c344495b1a60b5800ebe13b0a829203c632f95084fcb0e63eda9cfabdc2102303ad8ebe8e4d52baeb9970a39d2e309d543a730d6cc0aebeb83343205640448f29b333c3e258d9b8794a211a5df0330ad0302047c435bb500683066023100a3b78dd4d6fa707c4d593db3794cc16ba8700a4f3a7bd5c0461102b44d896778951ce51843cd58b12eba5e07f123b8ae023100c9ff370430fae6a1e61ab6898057e675820c4cb5a0d471c988e4a54b4e3a47ac1bfc9ff9d3d8a97ca92f7558ffaf9b940302047c435bb500673065023100b563c4304cd3a9f9a9ed0f5151e70a713d2387d5e89e00ba353356cd18ad4aa6b48019d623136a1ab0be6e89a7c3281602307b240bddce66a66e62d8db532121c951c2726ad29c162dcb868ac26fc745ecc45a87fd4b474cfc7f2525a9dbe3b8851e0302047c435bb50066306402307bbee111c907906a354ad73705399068528f4022a2514c70f3d74ef008263dd6072543602d3711ffb4ecaf512283b4e302301ab3b6faf543ccfaf0dd3939fe84bfa054202bd242391f68d85baa803e819c92da6c6f317ab68e777d2b996844e491f80302047c435bb500673065023100b216d5c9cc0778f139eb3d598d3c9a97c23c36ef301eed9ce6ea8de129f710a9be4b388b3bd75cf504bed6a66291619002303024e22c970ef1befbb073966177b46ac032c2e295d849ef2db3fc3a444282a9991619a5f6107ec71eee0eb10b0cff0c0302047c435bb50066306402304239b06fa6b63fbf00d652b910cb9408d79760b12d8d285d07f9df84c1164f0dc615f865add2b24035e415bab7051f97023046a6cf7c859be68a6a88cdcb00b3ce90684f458db8bd909eb95860d26a5b56949cf18912f55837b8d3decbf9ebf5ff720302047c435bb500683066023100eb2054510b4adbdc2fd46bbc1f13d0696a9a7fdae1024dc83ef8bcd6224eec618d91baccff158a3593b10210b5a76d82023100f0df5616cd95b6f5ffc4567756832f2fca8ffc0b536ec31d73d9d81eea36c00df9992233cc04d417a2f82ac3041ba5ec0302047c435bb500683066023100981edf98b2228782306444bcd131478e4e82fee64f091dd82d93550d71417eb0c0d30319495a9f7a1cf13b29e083c49f02310083ae24dbea90cbca89deef63a92acae29d18a70709d2e6d64bf3216155903c9b9e23e42ac3f1214c2bca029fa5ca66670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306335a78480ccf6f26fa9d0d0459ce44fa881bcaef72de4ddac95b9b987049ea67cc7d9c5ae7a91128b3d21ba82d118a3023100e56e1b7e790d18e3d844ab1c30509236af9f2cc4ed8257ebcdf2d159bfb7f52b8934c78ccae29e8e73459ced260e0e7a0302047c435bb50067306502303f83523e46a8d59303030725025e52b16854bdd671c2824777944a072f1d7dd41ab5792bfdf5898f60fee41345cba0b4023100b5a59eb866fc9799c4645736c0de52387420289dfb180cc0294cd3488ddd570d9d4fffc2512d1c59dc025e0be57430fd0302047c435bb5006730650231008b0d3deeb4c42ff0b3f5a7cd087cb1436eef2d6d325b1fbdf3da4c42efb64d44d0f5474fe03795f050fbb32fb650b3be023050606ee307e95453645f1af1066c3119008c1b638bde77af12b3fe30257454dab3b3668862abcf45398328a32c641b470302047c435bb5006730650230350bbf937abc0d9d590a3bf26b335e55fbb0fcdbf66f02d5edcc26aed58472996c4d759f5f5fcab8b2473710129e3317023100943614aff45f762cadb87e6e99912bcb7d8e783bb3ca0ef3edb57447293749602ff6420a1a80ad8facc32c46533b96830302047c435bb50067306502304823290696ccfbfb65a879ad02ebb0a68f2f86ea9d824db44a518e741a0f1aa72683bc562ae5a3ffdf28c5167322b458023100d9805e03882017786e588754ea5a94e59aeff10ee386ac806e4897abca945d16cb0c39b7947eebf6aa48b8a2838f4a190302047c435bb500683066023100e601d5fe09f616a474b4def1dfa88f13b3050dd7cb7ac824afb7ed7e1e553937581ded72f9ec73083adee5ec5a00b98e0231009d1db3a5caf2c7237ea680cf4e5552e05a3e9fd1307654a8d942a117257e21f6f4bd4bbc79db26c9ff405e11316660330302047c435bb500683066023100adaafddf3dfce4567c29689f1c0d88ceffb241368a6b520e4f9ad8993bc1e57fc379b1785ff109cd96eab18a4de6582e023100ccac840b0288c3ae53be97557d109b221b12fd46525bc25937fb876c946ee3b474a92e17b9bbbe580bee5d09bb33f18a0302047c435bb500663064023024181ce3c782c1166edfa0c680f0c421172008ee4b0cfe3c781e4c6cf6f59263d6c4f178a8984922421bb988b29da76e02306539d44aba5671a6d4f2e1c2819cf82d033997e3dd154174c7a1cd4fbeb733b35fe9942e070789e80144e35ec9548e6b0302047c435bb500683066023100abbefb623e2871bb9002c0ebb6199bfedf9eb849f3ee25d47524a76703abc6909f2d5cc3cccea78b620b598f1ccbc9b0023100a83414fd09d5539b0956e2074ab04953f7e0ba7c1ff08e5a2ceddcc987a9f92900715d1f5558d600e236f93972f383130302047c435bb500673065023053708d3910a9fea399b100c080109e4f7634b160263d707c9edaa59fdffbace1d3a86c56af1a8304a0d998cd920bebe7023100a7ee1798f19a34391da5530e7bba711136095560409c930688027fbed61400e424d70af076efe35aa285743a5b652cb40302047c435bb50066306402305effe0be0b564e95869776aa344cc2c3efac55a3187a93959452a3407a0a2b366195b59bb30d50565f18f43612a6887402301a7a9fd75c47f8b0bfd2ff2b44a6323ea6499328222bb57364ea00df8a7c7f0fde4fc62646f25b381df01e3157d06d010302047c435bb50067306502310084c62a3aba9b3ca2dbad8c9e350ba008d60805182b90b745ef1089a450417512bf7a1e018443b47669aefbb24a1b07fb02307edb75c6d1c91369eebb0a03af2b8aede42f25e1ea4b77eb51614d75362002c5b1b6d2bdfc904fe1362a75d81f0c79e60302047c435bb50066306402301fc113311d95937295e8716c19077d512a4537744a4b554dfcf8a586b00db97a2e3c0cb7a92f8a85d612fb6192bdbfe5023036edbee8e14ac7b6204c510cbe5cde7d2bba5030d29632158e93c72bab185174aa6a52a218f511f3d70cc14912bcce4c0302047c435bb500683066023100b0c302d2e1d5b0ef4582751bbe78afc1435f48c078a68e89d7102a7838e9decfe51f7a35ceab580fb758c1957d1e4765023100fdab32245c7c9c64e53f7bae12137baeb2d08bd39554d94f0f6555e18462caffbda4c1790ebdb1fb5546566813efaf850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100afff43cda0c21bcb7db1786fdc2f20c350bf99d029d51c565fb1a7643814dd9a9703febb180e4c17f6ba6090876731280230262e0ce595b02382f42e2094187a14513340be903e4bc7a6aa8c18ba7da53e82297619fcf5fabd1f828bed2b610e4a260302047c435bb500663064023060975454c09196bcfb99a376654d910b06cf26f3c52dc671f6843020934d956135ff10f908c6dc6125da6e8800e2690a02301b09d358c3b4c74a21a35ac9054c956942dbbbd275d9cfb89f1f37faec5955161549bb227bdae665fd583b009d09a36d0302047c435bb50066306402307668d6470c7086f2b18961d729cdabe2831550a8649d085d4da51b032041d5a2fe50f5d9c2b5741ebd3256ec067cd9bf0230107186202cbedab6bedf2fc6236e57e2de2fd8126a3efe9c1557303b0c2724f8b694aafbecf2e66d5d9edab34396cb8a0302047c435bb500663064023037b0fc0ee76faafb974d18d124e1661ecb625bb1f6015adbf2fb6d761c215772f057a47c1397fb4b5880bcd054e6cf9c02304b948353823a213586071fd25d1b92556136f151890ad898e825a15c026d2b56043bf2b7075550bd724766433840c00d0302047c435bb500683066023100c1900db528c9fc13a1410b76c049de7535149f958bbd9b42f65a32bc9f0552443c82bc084b602e4b0dddcbcefa61a83c023100aa82a70e8df89038577af6c0f98fb30381c34a80e5a7a476e4104fe14bdcca5ed9301d996bff07a2b1165c55413352cd0302047c435bb50067306502304e82d188832b291610578df6362118a67f060249a1252390d82e5bbfae34f90d42467400c4a661fea005590a313335d5023100e10e01d7c6ccf035c2a3fa3dfe0f4271372bed45afcd9fe6f9da6b61890eb9470d01ca95da059359b72ce91197385bf20302047c435bb500673065023100b353ebecc1dd403340493c56097c51aae9cfb9da34a8f6ad4a9a36edbaa7b64dd85ef1401d5458f962a2ccefaff922f602300d1151cb4d61cb88d0f8047f0178c082302d116d4d254b8864c3f80d6282b99c7a4d34987fe87e9a02f932709436b0e40302047c435bb500673065023100e2ae527c3e54d0f94dd7a27f5bd7da7dc61d209c76c67496466103b2292d0bc3090a552092c6145655d5f66d91efc01b02305f45cc88717bdc010e21d86d447fa2cdbaef46df7ad1d6fbd6693388fb4697e1231fae16332357e9c158f04e73a4d6220302047c435bb500683066023100909aa6a7f7ef325f6db42b1026ef7c0f8f6b79db7bf9e0ac2f0591e9b10fc091fa23d586d736189a077d18ef28fb16cc023100e1b0d2db2a0194f360616dfa6f7c29048b32f032de3177aaf0628ec11db3c128692704da9703c8503f00a2e17c9ecd5c0302047c435bb5006730650230611332b2f6c8c142c69e41f17155a408a3a41566ca76787148648c6e71e9b2cb88174ff34345b573ebdc463fc96f2d0f023100fe5018ef4bd2cd5f542d9a3c27e81b3c81f9566d3daeba3c5256f8599ebe9f3491ca56a3b23e03b1018c88c9c7f96c6c0302047c435bb500683066023100f32918d274e1a014af986c939db4e256093640bdadff912bbb152f154a81f1790f034ad697a8c9f66713546f9cacb7440231009906a04199a61252ee59ed6df863325c4b1012321c2f9f1da7da53e144dd8527674a69c1851c094d1a05498ed1367bdf0302047c435bb500673065023005471220a2cba65b5fad1c89fdfe440c9d145203740af41de0459b6d0ed7b7c3b78fee6727e2970310ac683876e28c24023100fd8e00c536720ed5ba29a451d2c14ec1af7c6b3c732c88c28b1857e364f3d8c30105f6d8900a8607d5e15f80ef6a04710302047c435bb50066306402306d0d09797727014fa4e94a159991d8048c30fe4fb052901c13c3ec4b470ec391c2be23a4c21a5e6cc3d3cc8df5995f1e023000990c683f8e7aef6d993c0d0528c5f76c75ab32ed0f4340516cd730b9f18c6e54cca7ae1ffc285e67b9fd07657fb54a0302047c435bb500673065023100c6588f4264923730f411507af083e7d5fd357813a585572840b0bc9468da0c58d137415d683bb7d5b8cd0f82b8ac6de402302f0b49bf263486e750dbd85177352f140d6246218beb4268c0a3e012ba85dbb056ceb19f6fd40aecf53b3d80945724590302047c435bb50066306402304f3edc8fb65603a15af6d2155b485c49138afa97207fb52cfa1cb52223826dfb77b493c7f99bdbf953166eeaad0c2c5302304c9b8828d8e213aff9f8069b8b496a299e4a2f37b740a560bf164f91a82a86841a2aebb3aa08aeedba88dddf79a7a2ec0302047c435bb50066306402307a43e2503d9a7701d011f927fefac0a6b02bef22c084730ac08342c891683e3a30a4b0b2d4164145a5b96c61740c3ae802305e477ba8031eedbe6fb020104445b487a21197b8a87f616db383042400b58c9345fa96f47c49d51eb526d9d5b9a764200302047c435bb500673065023100878335e591eba9b59cae459052a8159303b5ef8d4865ec6b40a51f4e45492139cf6ad0105898a56272e2c6fc7bd6773b02304102f9ab9c02ec098b0de5fd4a7ad351fb6bb392690aa0976484a03ea01b14f6c64791eba0743e67661d197916e347da0302047c435bb5006730650231008c68a3734a4d3c7e1b3768cae7e874785dd7818ec19027174ca413b0a8f0f2cd8209f4851d2a45ada965ad6f14d136850230504a9fe5bdb0e1e8a991e4c4f769831ebd342be9a78c2aa21ab6dcf6f5b003a29fdf74e8d9a15733e5df529bb33f11840302047c435bb500673065023063c22d1467080ef20e1638782046eb66e516daa104b1763f28d29bbdb14d039b7711be4425a5719d647378e781604c3d023100b7243cdd07a4ed03583b4cb3861f240b5abf68c21f53283abe705b3331fbe40f6a002e3ca8b212b6da836d68f00a6eda0302047c435bb500683066023100c4c4075fb6a57eb0755e6006df139a46bed38eab88aa02b80092a760663febdc08207f28ede141713b5ac5a20f468fff0231009f19c8030256569ca21f84481f48877025cabb83aa736e2fb29e57548f84c6c473bf27e674cd7c9ecfab21156c9ec3c50302047c435bb500683066023100f3857a90011475fcae965e70692f55b70586f4f720870cc1cdaa7096e937f1cdbdf8670127b44e1c8e726e3fae721ff3023100b1ede614101c40380663cef4c41acd299139fe932fd7bd6bd0ce427569bbccb8bb00c870bf3817823b37d9ef60d9fa060302047c435bb50067306502306673101408de800e317b4194b5d31cc53ea86686c767903907215da3852b47cce798a586f721c55a8c1304bd3dfc3b38023100bf8e93cca7533436e5b8912fc9d34837ecbf76b8a148f7472dea7e86fe8116ba1f32d6c187cf4bc1914e8b594ea215470302047c435bb50067306502303116bfaa82f3cd0b4ff5bb167f6d43e441a4d03681884e5f6b3291409b3b0361569c98e4ff2eb72fe91fabc3a535eb13023100e5a5a0aeba6cf6934ff5194e73326e5370b802a3f8186c8518179134df2a9d347210a128fee2f066cdf90f3e9dff85a60302047c435bb5006830660231008a6c7f7170a7ed587c11d3f70b68bf45f3ea42829154e6e04e7d421792c85648a9819f57350caa1d22a25619a93836820231009f81f73b20c5b463ea455ef6e9d66a99d4caa9eb1d5e01badd984801baea0c99d64d60df138e0c78324643f9c4c410d60302047c435bb500683066023100bf2aca7cced2f14b6c7ecb0d3419bfab839a48a25f4f08c437389018e79ba13b5c7ff7ee52e1da036a3016be784f1d690231009be1721b19aeccf14243543f944ec250b1edb4715248f7c68df2d14d6a8c1357a351371db759dee5bb6d21ad8e543c5d0302047c435bb500663064022f010020bdc5d7dff6f32a04609ec60acb585d4aba9d40c6b2d61614ef79eeaa0d20e66cbe073c52fff4875fbc77bb8f023100baeb45338de7978d781ac7e2738c971b50d8b5f6dd188da2d3cb4c91886a0944d491b790b4aee9532228d2059065ff8a0302047c435bb500673065023100d7f20582db41a93d980135529ab14a2349aeb6dd446b0cab5a67dd5ff20ae69d7bd9d4ab65ed6cfbc8ed3b5ab0c14f4c02303b6ad0b1f07a23c0427d080596c7ac066ad0fed8fa197385b5ea78a1c2cc335e8e6982eb11a8cbedcb24330cc3dd4dfb0302047c435bb500663064023074837b38961d6820861433f175cfe26933e0040f6e7cfef2250085b0debbe459802ebdebacfeff16befedf9a31e97361023059167a827354313ed1abc4f99ab65310d44cf932dc7f8e5eead838f5bf00a407eb558727f948d8ba06496d7eb300a6e90302047c435bb500673065023100c7da15e43e642b509abe0493913109b5b5c04cb09d2d4629bafb48eda1523541f8580592be377ac4b1a1460a49dcb16e0230529d6f816a5f9c08ef6029407741f416443f2fc34467236cc11863a4714acfc0b89b63e13b42484954b955d97eaa8b510302047c435bb500683066023100c099f709b00b778372f4654d475b69ddd77787253be344940df9239f8fef377b51f0af950b9ff5b7ef7411eda94cf86f0231008d7987e8ddd6d9c59daadc5aa2771cba53eef8ec3805982b199763b4ec552e916d3b0b1c5bb543f85cfae4008eff439f0302047c435bb50067306502301dd492912c5c18362a1a50f56f8ac2cb9d7a3e931ff40e4bdbb52f5ebda97817d2adff8b55dff7c9a66700a68305a2c5023100c50e447964f33fec0211f7f35158d251178ce20094efb84d786f3191fe6f8035522c9fc7e6d5ae9653acb4e940269f5e0302047c435bb500683066023100c80e1b02d5979a02fa18d08d0b16a2bb53d836a632e6986c296729992cf08c1d5cc4755f6e66360ad99bbe791caaf12702310080887fd17a72385853917c78ecb581fa915bd26dd34198852301383586ae805569b400b983eed0055f685853b24a30b00302047c435bb50066306402304cf29dd74c615542e4035c60079e49fabdc2eac3856c56b2015b48d951596eb0deaf1b8f77c18844bad9d90b4308c99702306c2d71d9aa8ef743455ad23801931a8e2bd04794a0ff45e52a99109f032f10b9c0a91a7a9bec5dfbf92e47aa634aa68b0302047c435bb500663064023054e40c526b37045400c9cde971c1abcbad0d75aedabb78ec93a3724b1afa7acaf6f04e3c91af8f752df48c3e09ff7b0802302683d2c6be1e235dbe9bfd0e9e4e6d61f8de47f7b072f4ca7aa3ce21895e925c7255efe0d602dee425236dfbcbddfddb0302047c435bb50067306502304993a4123b879aedfc4aa8b3c37fa5b4eb0a1dbb772ab93902c640ab4f6848d5b2145b37d2a28efc7d184c7ee8cfbe48023100e34e4ce4573c6970634188302010365804b986450c83dd7f05f3fd1eb8cc402a401d8d3c7adfddeba31316e0d07e67b50302047c435bb500683066023100afa817a8cf1479ecd102ef1003c04db3aa9ccf3a20d5318bb7013a9c966d514a1141f07f3a8380898f5f30835be6fca6023100cfb1061ca67e29e198fc6f423287c9100e5ade562f68a1c4a3e8fb838db0ad4f857e805ea60ae84bc8ddfbaf0cb9b4dd0302047c435bb50067306502303b4988352f749196c71e8d60da6d3518087d1223f97b2441f198df9234cbf89742cde1a6549f656ad5521b8803002355023100d2afa1cef075d2582b62ab31dc85c03aeab5d3f8b06a12ba6895ea99081e00de2690e493cd29dd82090c2a8e1621fc8c0302047c435bb5006730650231008c2fb3c0ac9d7de713b0e12714e8aca5a2edbce1ae50d0d49a580b76f1098ecb3e8051692422bd813f210f3a75e22fef0230558dfb3b16ca802d2c8cc9be05f60e88fa9ccde24b509b37a32a7900c5fd7a336d22444ec0d1cf3ff41b48714c47f6ac0302047c435bb5006830660231009a94eb52d34d38f95964ff1cdf001093b1e505d15ab987ea891f14f7facb9385eed1c05ae120fc43f63798ef60bf76ba023100830732f1d7cf4d7c123af3a0750a0b8019d0901602a0fb95036885b5759ab81176b768866cb2576e233c8d44cec8bbcc0302047c435bb50067306502306b0c6c9a86c7786fece4b61e20bf36c3a66f441effbb6bf4534c2edbefc314f85f4242d080a5d6eb9ffb72548b0a4aed023100bab2ee0a84d2a75eae0a4b9721c9008559e43086dad4060432021764e1a066edb2ffe44b69f2396fa574f79ad9398b1b0302047c435bb500673065023100992c49491f79983f50691df769c1b2f728c7e7ea89f7a4893d59f78a5766623c83c9d2812bc9176f30f66484e027da7802300ab3b6f3abb4f07fccff16dd98dedc0d7ca8b0a0c8801bef9432a3ca4ab138302720bd20f38a212dd19edfaa7535a6aa0302047c435bb500673065023100dd91a78ac06a8c7bf9922429510f4bbefd9031556f2d9d5d22c3fbf26334f92bdf7d3c14c5aa92092181782f3e761edb023059b690257699bf467b5028dc82b0274703cf7edf4b90d17dcdd00285713d4940c26a4be36576ea2f2a4148787faa68e10302047c435bb500673065023100925c3482c74a0352e82a997697ee510fad6a5142cc1edfe6b1b9acb3181408ddaf33a57938f67a740cf5b9d2b1ba9755023078e36dc558c47a1bec58bf213b0f28f89600ea8c287c90eda67d857bbc7fda698a514197bc3a11e67f86b10057e9c98d0302047c435bb500673065023100e93d39dbc5ae6fe456d217d6b7e381d6115063611f4f43e04dc0160cf18ef7f721ee0490182fa3f973191594bc8fef13023063450ef780a75e2b31f55270d7965e95eb3ddc735241c6cf9b4dbc70ec13b8e66ffbe90abe12435d4236a233e1289f7d0302047c435bb500683066023100ee5c3c93c1dd4d8d3db2c95f7b4c2ec4a6cfd4ae43c44baa897741263ccccc2ccbe72aedea41294f73a1121b610b5104023100dfb1d5e82bfd3fff0215246ea4b3e094263eed325ca2e64cbb6ec6215c6b018bd9f1c6d0df1640a77a46b200f056e91d0302047c435bb500683066023100947f7237232d7bfa5892344d68ad556f793351b065d23588a4c581d75d359910f6dcc1e9831f0120e7bdff790d9bf785023100c183dda43b1a96a130cd7b48f3ab51376dd886617dd1f1740a1625372fd324c7662dd83de1077d9df855be9095ccf40b0302047c435bb50067306502301402a191d1234908a9507523839ec935866f61de03dd1f845deb79985038216ce3ac4a2f244769e7b395d5104c03e14d023100e28603edb04af24f730543067a2374848f434c89447e045e634b791f75be7d16c78ad4181d0c1d1d19d38fa1a8cf690e0302047c435bb50066306402305b1fab9f3a5b15c0fdf908140d0242b4337377ca5810613f19d5bc613a3fb01883a3bcb184a889ce21ba6e0480357f3c02302cdeaf79b9a6b052350656ff495a025cd194a280b12a3bc7cdafffa05f0f5c26f88ebf8dc572c7923d083fdef33872da0302047c435bb500683066023100cefdc8123faecd0afd0aa83d438112bee0526837b289be306a5a42e8e9ced6055b51d0e996378272cb0335350156b289023100c8949b54f1cd87e0b4eb747d9758667be92b7d5aeb88a7f80a183d10a7a8e80b167484603228b319af864f24fbe2508d0302047c435bb50066306402302fda183b21f5619312f41a1f6457586caee8d5e06bac142395b88e1f8e0483dd258e7df4aac00f8e267aef5bea3c5198023010e1b2709682507f0263875eb1037610105ca761f21741224d888cca296f0acd36554ecdcef2d7d53b937c284b4518600302047c435bb500663064023068678986b95f6954a1a37b3d0163670ddcbf7d2c218cccad6714517fabf8c84bd929d11a815f4ab0a3ecab1b2cf4cf2702304e6391b672a3cfdd8bd6325a5fc711cf53d4f36babadced64dc95d9a7e0a8bc2c21ef20fc06e478aa0a7d43ef4cd44f00302047c435bb500673065023037cbe442d59cc966c10e17834a9003d9d406839f21f77604ea6ece8869c221c63ce3f482ea9b4ed5fefe936c03ff6f3f023100e03cd909c620359b34fa505f0065f77d51fd179242643e41f3cce8261ff8539ccdeef0b5d60eb5f6345b1a28bc9fbf2c0302047c435bb5006630640230748751e47b3c0a4a3125e5b52ce49164588432cf041890d4f5ef7a7ec5810f7056dbdf39018d1b34290b517ffcef355002301b169e4bcb9b78849152bd6f798d9ee4ce47d8388f6a5b7650ae40e534fdac48dcf57f45616e67009a067079532d63c90302047c435bb50067306502300edbc232af124cfa4a164a5f9cb5ac6cad97a5351baa44f11791a10b9acabd5660d0aa8f8b13bff88cd9bddd8e521cad023100e20b9294a6fea9f6151956fff401898d192114eb859a66b57913b270c270c90a75e2d774c6cb8669115c5b321946c4670302047c435bb500673065023027e23b20adff7d8c8fdcdc3799dcb4bced92587285dc9cbfa5728b989e4bf2c65f24442a246cd60fc7a8635dc02fc107023100d7be9d2f496ba105e034872f59577d539647048abeee32b9d1730d3f52699025909ed97eb1c0d807689542dca59039f60302047c435bb5006730650230438c1537a0818e4811a8a61e2dd13250327276fd6b15d114eb273440ea22c235f895fda2d35cfb8314b2a44a9d756e7a023100a8a51e5a24e2176d595360b14198b9b1236f0f68cd8b6a1df1c5b60a99b4141bea67f9da188eef9ef8bd29456fcec31f0302047c435bb50067306502305b28e090d00fa218f0faf3d9ca86d2fd000870d18048f9cd3d14601431914756530817c01e957d043000808fe8c277a6023100daf7d132ef9c3e5ee08d3439a43ee39ad95648e375d1f0d9ffe0813121c55b0a10a7c8b0c548dc761ad88ec96c2685aa0302047c435bb500673065023045a2294477a8e4e1549f11b1f59c3e49ef3eac71c79865b734ff166cbd510f17d76024217eec05a31841dcf835a48811023100e3a29828a0c31f4614494c91075bc787e77ea64f1f9f26c59dc108e0f1cda07660a232b9ff25604f06483a4b3340d4130302047c435bb5006830660231009ff757c45612705c3bc601cf8644ebca2a4429ea856d6f4e2bbc6b17c9de3efb57b0f7dc1a0c6dfa17da86cf49633577023100a38716b477d836ef288ea260c81debd680781509dca45407cf088acd49194567bfd2bb39f8d5b9fb42d648c536e68b0d0302047c435bb500683066023100871d86edb345be6274ce8c3cee24f8d45b547e08e25ae1b85a157ccdc8bcf4ed17e67d4ce4c2c867f9adc12b2914fbed023100c3b2697dac355c2510c65669cfc719b54f5fa725ed9e172148a26abf23855aa3aa1134fd87e27e8c6bf385cba022d0880302047c435bb50068306602310086d547fd887078ebd60c2190213acf682e31b0c75115d45a52c99f243dd623333c16ac8d57f5714b65873be5b3f915560231009a178a973e59e89235a27766d29ba9c308bf47934c531e067bb9b01c045e229d9eeb29905ea345de3ba5e375602276920302047c435bb50067306502305aaf4b49e7ae0f744eb809dbb055f3c4855f710e4c761118ce15d74822abe8acdb19166bddd3e0a34125d32d6b630e2f023100cd2308f844f68553ad2af762a94ddce4febcfee26eb3ea97c69a3f22732d0b471e1306d02cb7f869547835ffdcbe77100302047c435bb500683066023100f9275f1e91ac3975bdac6a8a753ca04b157e3cd27b6c6a6aed5ab22e9e1bb304bf4c20ebac2b24341ade77054707b23a023100cf8eae80b16d7e4cec4089a602656ef670aa0ff87498a7a7ef0678d03486da8b1c328befed5b3b07a01fe94c441bbb930302047c435bb50067306502300bb1e43d178f1e5fe8d19f5144649c3254183b271953616788ea365f2d9a3c9c10934a1ec1aaf9644159e0928a6f8d6b023100fcadb8f29f616457350e421d4ddb08671e843a505055ec1adf8ef298cb63537814a79f04ee70b93809603825a261cd580302047c435bb5006730650230648e794c5fc661088ee5f8e7da67cb1aaee6efb9a1732be5483fa58ec2c600fbe549734c6f50150967e5a9d880f2a58b023100f787431d5a611be1557b74ee8dd75a4509591b809c32d1da86363581b055798a35265936886a0e1b288cb5963bcd98630302047c435bb500683066023100c827d7f2a5252eeae42bd52a519e91f727b015d5f1e1cd74d823234762846b77355d57e93c957ca37853869a1415e54e023100ab129d0af3fec8fc6835fbffa5878965171ec82104d1f64e5f1537280060cb821b22d791e8933f3f0751ad00c89522da0302047c435bb500673065023036401f572f58cee4f6e1b3705ad2672a2d0fbe380ebcd40aeab85a90d28ab62e7867b7c2d9db18d906c97a7c42e73766023100816d85fdadc6822db1b4c176c7053b6d5238befa609dbd799d6351e947c736722f38b6ef55143bd36d5b11f2fb2861460302047c435bb50067306502306d2fac657db6d8cb62922ffb6196037018222de4c0c40b2fd0d5fea917f5fee6931163b63c55821cbce60e86d6339544023100cd43aaa1c260bc95a4886434185ae371a9ad5b278d43d138d6a67251260f7aa2da575f27e5c23855cf15e1f9bdb3309b0302047c435bb500673065023023158b9f8a52f98c7af23b8e0e77348c3afb0a21a4727d4b15ef26af2dc21244d9d4ab03681d5ae12c61095a90891ca5023100c729aa636727cad44c84366e8038394a8a4fe24cee2b5670927e002c03a88c71aa3f471811ed462cfab3c5a2a6b6c5b90302047c435bb500673065023100d2403627ce37ce4131651aee59ff882f25f7119cf7d8e80cece06462d25a498ea5f24910d11608f04095d21a2b25261f023018537cc8a0fc769268d0439ea1347887acff2e35275895cbd3a419e62f6d8b6b8178ea0cf4d3faf90e33c584ee03c5900302047c435bb500663064023030d3e6d827ca20189fcd55403a5594e8f78d56bc3eebc86b3b6b821db5f2ddb6cd0b5c64c3f68c0684999ae9cc160630023018877576524a733d2f424651bcfb16e715bc1334a1a718ad7f66b31548448f62c61a4c102f9e54a18277e6ef804e0f530302047c435bb5006830660231008be773229cc56878662171b59733ca34e801cb49e0f04a07a85fc390148ba13e43395ef9c2bc6183bf7410eb20ca09140231008e90b1f3edbc9f4ed1cf14b01f60e2e97083bdc50ef5d9cdeea8c13d131b760ee1963da85730e5a4b66d0d38b97ee75c0302047c435bb500673065023100f87c23068b5f05ccdfea0dc7fa63b511413abfb92222ebcded94a88c4b22493a79735e2fd65fceb25d1462d66ff519a7023039aa827f3f31352b02ade8b40ce72a781d869c5ce318b3c78363cbf257e0370cbd4e45c70a793588358c0ba8847ad2de0302047c435bb500673065023100aa235bcfa03bd43aa36bf3f2fbd96969c7dbce4b3baa7a09a0bb824869976245c0d18eca7e742a932e40c7693ab3091a02307896767d01a1f1b6ce007828f3eb72b929fcf8894dd6d9636e0ddfd3427dc5504d36a4595f7545a51f52a23bda376f8b0302047c435bb500673065023100ce8f4c426ac4ea6289001f4aebaa53c613797e0afc5632dd32481f3d7881c8cfc97f3c41f4f8d68ba4cbae84e606568802302d4e31a72261dba63e39008e7d55473863fd2ce51c246bc0663797442b4dc48a82045c727c1e2af77e31c6c22e4658de0302047c435bb5006730650230210ad1626067104bf1086931b024916538a46f0be1facbaed9c0485752a9c15e8d74ebe3a5040920910ae227bb41fa93023100be85a9e644c1e04193d90c3d8cd4b124c4ac25fb2d1450c08984858bccfafc33780cff6dcf9dea775e9ab1b65aabd8070302047c435bb500673065023100bd76183f1994572acc87ae88de1993d1572e1c5eb4dfd224595b93beb9ba150deba6672ddaa3d61b8ef247d901a5f6770230650401ddc529be1cab7d6bf25f567bd3bec6e65fa77ca71a0445f7350de700b57e8994726b88e408b1d4542a0b0fc5ba0302047c435bb50067306502301f071a3a553031b774df188ebe0e5bf84eec8eca4f99177bcddc77d55604363daffa24c517bd916a5077ef29902acbd1023100dfefd840591e4c4a3b4b8ee945e78270ae1a4d754bd325065b7d4673ebb4e9bbb152e653bc217efb2fd6fbd49215c3da0302047c435bb500673065023100f84f01233a010e2447c4cc1d1c3850d15394cca7c9189a06878aea4e244e519b800e84f70c440c0a3f61b1a11a4b2c7302303dad1f6374d702cad5f8e99c691e5e0a60b95b5be9a55549b8029c6cc76baf639911ab17d097b6b06ebd1673694d80bc0302047c435bb50066306402305eb5db70d98c80c28080131095ef0f70d66b18e64ca147b8da9cb92e7b8eb458b1a216a40fe29500b8ab7708371163b802307e7ccdf2c5a26703975650e370e75e2a97e08839a0388468d8841efe3f54bad5c0ed2ed88f6a5d739f3a60ae321829890302047c435bb500673065023100b29a13fda5f5d67c6edc404af12d1cbac869a5f44f5630c699159a41ac466e2155525f2b9bce4df5e25dd5e13d43e83802305c648b8fdcaccf7113f9bc63cfc9f613499a55d33510ed4fa6b0a7c1bcb0dc180af85c592841ac145775a43e4b5c0d4f0302047c435bb5006630640230174d980074f133e922895705382cf74bf9c3cf3972bf0873b2c3055004779ffdc4f4b1204a910bd5377bd6b464575a3e023019514179f795ba25a2b77f10d497ea9f1a1bca505eaee8378a16ce218683bfc0040b0f1cfa2de6976eeedea60a245ae40302047c435bb500673065023100aa0ae650629fcf02becd555fd2cbca1f6e2344227c7c0c040533beaff8667ecbb1d58b8792c9ef83342c083bb01efeb502303699cdd2427c431a51bac1880fdb4b06e393382c429c249ae6adcfd2d77f0763348c8a967a212b11bac5aced92a65f850302047c435bb500683066023100ff7abb27293115e9dd72668db180a4884f728c8419d0c86f7eb65179167dc4406b08f36fb2231110ce0893e6a21e5883023100e8df6cd8bcd77874f600cabe64654c8cae7797254c8a65862fcdb416de9e8bbe211dffb94ac6ad0af639cd147b094b140302047c435bb500683066023100e89b5e1a706775e120da73556ae08086a1f27dba5215dc01e7e26aaec36e3a6adae68cbd53cec0c9facfb703a28bfd59023100a2e6632f5a3d6df3af329d0e4f793267ada00f1b76c645604d3d05130db2f7444c6640a243b649b85d51fa6f5c7ca5fb0302047c435bb50067306502303e3893aad517a933d508dcb6c1a6eb585e858758f34862213d59933983d767129683fec5ad9bad60de0905a5c7fff573023100a9fa716b86a4e1a3398d8a673d4b7bbf78aa958efb0dd654be4375150177ac4f767d50a5eb4dd480cdedca768709081f0302047c435bb50067306502300085608bb50c9669c9d9d97269b7cc8516a82b1669e345828e4a0ec3881699735e9c456f64ddea509732747e85bd703f02310083a9cc3f0342fefd4ddfc032f2a74257c3c4da626234efec5059df34adb244addc9fcdaa587c979b4a75ba552e6373ad0302047c435bb500683066023100f5c00af80563e795857223e9db3a74ecc7eab48a1308be0f986c7d61b2881dd1e1113702bc1c056334a9ba05859a77c7023100ec7ec5ca9de9dfdcc6e22bdb4e326bd55c232c51ca598270566b02fc30991d19a937861b8009d0eb758a9e61278ea44a0302047c435bb50066306402300f59e986d241aa1df2d9802ff0a779f650809246a0e39690938191e41d8672bb60a061792af4a5694a78183dc886a87002304330252426a7fb26215cbf18bd3ec2cd23db79b2a91c9ec6c1e9d5423ac5e334cc06edbd7d58a471a0244d9f7f909ef80302047c435bb500673065023100be9a10bc95621a89f1ffda0775f62a6986c24b246621f1bca30461e7cecf10851cc468c95591b43adf70fb2736faf6ee023025a781783fb6ea9a8cbecef9e0066c8639ba6f4c1d0e74045a8197a60f23acb071681ae7e2970535d8b98c792c0b61ec0302047c435bb500683066023100bcda79089f934a3b896646f6bfa72f3bc7797121ae0fced31987cfcb250c22dfff7f8237eab869170279e301085c81f1023100ab2fff00595f35fad595229891f9fd493ed6b7b54592b043baa37e68f42a7927aa144677116bfd18e8ef6ea4fd29cd440302047c435bb500663064023071e0731ddebe329ad781ccf245fe7482523258e641514be34a0a91cf9ba2a75921efedad2089ddebb4fb0064701b406402306519b5f0ae100fc897024430d7c11877abd011502345ab4b9099b1c1079e138eff2502a2c4d8491cab2652aae15e3e6d0302047c435bb500663064023043d859974d86260e0c475c510b6818616b67450b9098930ee2e35765e0e2e2685b0995269330fb3852962e0fbb8406ab0230586ff217d9dcd8b4a83a3776cd6cd45bfeee931a953a7fe5c60b591e64e3c703a1b8bd088b63e4327efa4a9cae70b79e0302047c435bb500683066023100d0fd097e18e29999bf7638a64afbf32f3fec61de70857cb6e8c66499bd8d958f524cc0840e81585407d7a65b771314b00231009c98e56b9966853f081f9d9937f968ea6977101717b4fd828fea377519c5baf975a1cf4ff70b1919b3ea909907846fcc0302047c435bb50066306402303b436c1a445a8a2be14810810cf9507a2ff1a84182e5d924840bc0ad0daea7a6ce44ffafacb985e070dbe9ed6dbe28b80230668d761657914b9c158bd63bef5f29213e96ae18d84b98b5404c2f52ac54bf4aee8ea5992d07aea6b204cd884a5049cc0302047c435bb500673065023100b8453de2c395f79a93d46e444fb2abf506943e29dbf018ef1098ae3163936a4002164ba694f3614b05bb32195b4683d302302a0b88ed8f8a138f0e9736c7f5b1d034e2c6b9f59c873f916f0670dc2e4a4b15a80357761961bb99d5f0f6317d174bd20302047c435bb500673065023057c1374397ffb140d82789c7dfadc951b3f172bcb4c7352454854779cd405a1099c64d87e17c5f2c0fc447751d0772dc023100d54e59072488cbcacf6d1fd256070128d51c9e42136982bffe50e296a4f4a01058531db25b9f179ebca5ef734d745cf80302047c435bb500663064023013b5d482f9e7a147bd6acc2116a96f7224b35b5c58104b97f8f70ede64c0c43d3a18e470113db28196bf5018c0ba7c33023029134b8ec54d7976dc71651a44e4afe8e01e8138840068c55b353ae15d449a03abdb5f00616a4b37f181c24c454d6d0c0302047c435bb500673065023100cdb259eb4d390a62ae194a7741511d805aa651204b6fc642fbfec5f2b5861b69830d58fd149d3da13f7b56011d908727023078fd0b30eddd06047e2400b0b2deeb23a259bea7ffab28cefc3eaaa1b9b4113518f443e125826d4003c536bb0fa623270302047c435bb50067306502301f3562e4aa690e66cd9b495f8abee1042da4190a1379a3792dff2c2148fbecf235b93fc4021640ee07b491e7bf64890c023100e263acfb532fcd05c294417ea3f3c9fc7d6a955f49ba1b14c23c81ddc82c392e96eac032738c7c73260be21c6b323f620302047c435bb500683066023100d0669a2b8098dadb05a968b93acfe1b1794a532d2a96dcd3b8ff6dcb97a7c11ad4f3a7f99cf37f8c4aeb68ba0fbe77f6023100bf91cf885526af6d84d1719d6432d1add785f97ea5a29c2f7caec4e272b4c829a49a3cb2eee20c882b573c8a26af75c20302047c435bb5006630640230784940a25e8f4471d820cd9fc8d0c89070856e30ec48f8850ff54e01d9bafea3bf7329beb76b6aca5e1c8710f28222a102300f94659d154f0ac9c81c90b9db3df694e1f35dcb82bceb1b91a40f500ee7894d10e7cbb1d7d2a3c5beec0166e3d3df250302047c435bb500673065023041b78421106329107302cf9a3702f1c5ecad1c8460c4a2e9e3af2d83c7d4c2646098ee7760ff6b1fe4d132c66e73e6cb023100f97a923b10f69dcd4520ed6ab635c834864815644c695a59eff671294b605f6d3daada935b592c02a3e7d1e5e7171ade0302047c435bb500683066023100deb0568b3159b91a3fe79f331280a29595f945422532ffc5fd54171a95098679ea06bcc6d5352a28e2c76d4431bc4a9602310085ca46fd1c31f323572bdefa2e3677d51c192d040c7bdd6d14f2e2c4f67c6d14a865f3dd4310d59b5903df4323305aa40302047c435bb50066306402303560413083c06c2c92e55ba3580291d3f3d8e750f9b127262d6f8d6ee9f834625e28e1348fb27c2d2f6e241a33fb0fac023061c540f5cb88e3e6a9fdf9c94b9a8a2229fa4001b7d34647585b11c933830652ff411f382c2d9990a433c9dfde7e66ad0302047c435bb5006630640230614fe6f0ca08a37f34e629f4687604cb5fdf12e1328e0562bf9008b058730f3cd2e483757d37dc915882692cf02efd0f02300ec96d3cdf6b455473fb1e3b690bd2b6ddea7526abf6ae171cf16ac2956d7560b2c1ec92cf26148d66d326cf329e0ff80302047c435bb50068306602310083a09ff46007ab77c29448e4a1489b3eb87791fa882a38344a1d1c19df176cd73e1d5ebadfaedfd202bb46d0e457fba6023100d0075b2bda16d4edc2dc98f3f49f1b1ad21ee5114b2ff363665753c6680ae389428d7a500b8133a13b7aa7ad534cae9d0302047c435bb50068306602310098e08a0f7acd2f7061c11f43e6c0cda4e2bfe648494127aee988c554671e59a1268ed2fa1a5b0486d4002f2857cb660a023100cb5dd5d0586be30857c58f61e3f0610c7f6341f91d24deb6cd7f5aad32197e193e61fb753836f086da06c302ce988ab90302047c435bb500673065023100e8180c70d82e43fd6af68649873c2f175c50ef76b73f8c57e9999542405a963a944c3b239e073bf130b1ba4dceb8dacd02302fe8e5bde5c5b1400ea485e78823d98594e00ed55324fa5fda5b24679b96568b74ff5508695abbcaf9972980355cfe9f0302047c435bb500683066023100cdeaf76634397113bc1a955cad6e8cabb084c28330630dd316dadf6107b47aaf38c19bb093abf3948e366cc2344ef574023100bad310c9df74dcd3df5df344188cf80baf9e9e933eecbd69cf17291e7dc4cf0e59e36493fe87a2248ddfcb4ae8d0996a0302047c435bb50067306502307cf3f19eb4893325e72e7b88fe2958125fa13aa4a37af16c8e6dc3be850fa5a6323fe4810eb4af917dcfba3ab5b9a169023100b427a337bda5a62389a572451d071a5899f116fa5f5f60dba48838fee270b0447d518621d370ad6f7b129060c6394f490302047c435bb500663064023048eb38b6a293fdee95abedef7eca9635f296605766148d0b0ee26a3abb7a54a812ac6fdcee8aa30128f290618ccc591a0230501c7369bbd581e70d90f9162b37f4d5b87715991f0d8e7ff7471a12af748720317ee583a63d7db27c29cd6f01ef75e40302047c435bb50066306402303663a842a5ca32118797d2b546f956a853db36dec8e345236ac5bd15f40dbeae88ad7d193f63476c24f1eb27998f8c8f02307630fb25a0542b0169a4d6b7a9689c85d708d96ff35afbaa014579f142d99c6f1583e6d064e08f985aa6830210b7f95b0302047c435bb500683066023100fbb474b265ac7749cbdb4d2c584c1451d5b2211db79532d92ba9040842d064962b16c1fb23769f68aec3d535c9c1bc97023100d05a759efb94d3c653756d08e81e58ec2874eb83e3f6e4dd7f4cafdeb7eecc32a07c225127661d7ff82efc29ce142e760302047c435bb500683066023100e7766d195ddb05118d4891be74b9734cc530c0e2ee5ac3cb2d55ada14189638775c4457618efa97cf0d7447f22f19227023100a1957dd45a79e4fa7c6ed513ec62bbf96ab12f2eeac129645aa3a536386d3ea7ce441db2b6b3e03150f8c316cd4d3cd60302047c435bb5006730650230150f6de2a3670588bee55e3e48cd4daa7a7ef137dd2324ac0c7fe438c054b9620bf7181868f18fd371a661bca73d5c0e0231009c7668d64f4c9bafb68ce64e851eed9097491c21c3e88de28393e2b70e9c88681441ddb9b5d62109297047ec87dc37720302047c435bb5006530630230450f39c187b36dc173237ca8db5009b33cf4d62d76e4eff2fd4aa72600c004b7f8e8a8bdc7e351cfb8ddcfd3245fc5a3022f565ae3254d80aaf3a521f0b32121da2cbf7d91fb4e4fbf860acc694adfd8678b96e3a7db0bc40b45e195afb1c4874e0302047c435bb500673065023100b47db3ac7b3c98cca7e45118f4728e4a7c10b0868fb6981c62be97c3845641c16c0d444be2e5c0abbb841d2629f5080002303cb7d1ade8a6810ce7ea8b94a268f62f2c5968dc9e7d8fb371275d22918894a14843dba6f04a07d8919475f13d3431b40302047c435bb500673065023100ba645e01a6ae84666da96bfdcfb9dbe1796e42f14003cb15aa7581ef80e1a138b357d45675b8a2fc1508ea3b3dfaa52f02305b5862f101b081c23726d221c80fcebfb4844859563f3438b30546c2b46ea9cf394b3d260f964f31e26dd4d98e6fb37b0302047c435bb50067306502304e0c1f10205557ddac630eea2a969b289a2ac830b2b181748b802307aca8f90049a938ce5f41520395355406b641d23f023100d90aa168a4ce5dcf648b9c80a4f48f233f60e6297038095390b35316dfc5b848cf648eed26aaeaac4a9cd346c8d527c60302047c435bb50066306402302b5e17cf4937133f304001757080d6881771c8ce91258bcb0eb3951cff8c805b33e71ea1e49d0ff2f8640b6a1e79136202303ca965e38d2c5911fa79950e35ab63462228b81630ef9a54868fa4b6864f2781c74d1e34e9cdc78a26b37265f1917f070302047c435bb500673065023006d90d613c3db2abdbebb9aa4cab1532067d343844cf79c9fe5be258ad2b431dd5b7301ccc0247f2d086e9807106da42023100b3acc9f00b2f4b5f362e6832fa7a7e15fc7438a0541dedde40230ed2b3dd6a3dd548a214a89326f155e81eb785fc5b680302047c435bb500663064023074c70f10bcb25da03dc63327e4d5ddc7be8932cad4e241078598535406b7b6a7665d6af6824b6912e3c728b18c701267023068f835f0bdcba0cfa873bb27314bc0bcc8ae6208a2ccd9e914f1da170400ee9af7fc9abd56a93e4efd695c3409c442f70302047c435bb50068306602310092d7a537cba3915dc8a8288c958e4312632679f9164554aa0a4f3c6eee6543e31bef8d39bed58b12f54324879b7b7ccf023100bdacbce17634c2bd49d624d04bf749ddb5ac9ecd3315a73a7e5b05ccc0d627ba835804be767f80a95904989dc706e40d0302047c435bb500663064023052de425baec347d5e0490211600f70178e49be75b1dc9840bffbffb28d39994ef19e367eae41561be3f5d3824034835302305556f7369ce202cb4138c903b2ae2137cfad71f1327adb42e844ed6dde815667e949486c6caa467e118f121123881ee90302047c435bb500683066023100978de240c1c0fa2d9ff5444fca749ce59bd6e74d2ab59b67614e6b305732111cdf07af30e6e75c74b76e3815c11b5e9b02310087a01f44d927dc5d0f5b1eb3878259c9cf7d7fe177e2f41143d10e07233bb910b64cf7b79b46f0ea904fdcd27f0b8ab00302047c435bb500673065023051e45c0636049f3aa06dc18eaf8b35c4d8a5f9c6f97909d92d30b3d17b42d90516b39a88902187574d9377521fd41e33023100be6ac2bc8b30f7ce5bfb8daf7c6dc4335cd440404093bd84a59b690c7555ce882230934e375d7a8216d53b19e279ceac0302047c435bb500683066023100c25d92b977e645b1a3f94eb5fb1aa52a559ceed1dc7f37954cd3e6b3f3a7b4126f1414051bd3605c5700213e75811053023100d1197b9da8104a122c270d5d89d60e7140999494addd0730f69a5395872300b837a16d4f67c6b68506498690b70f28110302047c435bb500673065023009557ef4f75d23f1ad84ab79ceacc4e92902430aa342ef151385099e28db546711305f5add642250dca660238ee09953023100f05110d91f4f559787be5bba40da71b6334ef86ae05ba790f9df477557e3eedfa4e1288a6bfbc46e860560c00d1cf0c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023073ff4ef993e97f5d11eac04ecd0cfd858605ee40f8e1bc251fd2c65d6645ace0cc1e97b42b20830b5eaa4234ef3e4581023100beab3c554fcdfbe5c2ae9d08bf4760e968f1b6c7cbcff192fef0f6dbf5b099227a092a1ab5f7dfa23887496d56b0b4f50302047c435bb500673065023100d1d5ed48aa12f9b7d8490616b7be324e4d4f281860160e5ab7809bfb7aca430d89ad3779e3b52f27538f3acef509f04c0230363c8e6529f1c2ea2d9093a6ae0754d85509b332fe58c3bffbefd54d1e9b5d0f32c23403a7aa78bcaef4fe55d292b8fd0302047c435bb500673065023100fd7713549577f429ec2a4de73c997a222e19c0cad1dad18e0a8bfb20d5506287c15d14178ffbee92f2e2d5174cc8a15402300a71c20c7aeb85140a858653c3e9b791e25fb68b80bec3f26e641b9a2af57265f2c008aff729dc5530f332bf641902f90302047c435bb5006630640230585631bebe5a80235dbe808e28f33c4ff63983103fe6400ad12dc90d37877133bd59d3d8151bd2345fe22cdcf52d1df00230249f89ddd506c0b6dbca4658d74d25d61ada74f5d2fff37b913acb6475284fc2380a9ff5af21de9b607941bc5cdca7cf0302047c435bb500683066023100cfc26414ca9b685dfcb09c2ff2740f4369e169c57552f1fce37850df2dc89ef39efaa9e1867b02733ab1f10b5904ecec023100af7ec9289a880ca30933d0ca4e001089a4451088c86d2b27101adb75a532b552a9c14fec7e989a1c6d39f9a1d708243a0302047c435bb50066306402300cb5e1fcd01ea602424c9e0753e41e85fde286fb1c25231e3c3886203edf997d617d69a2d694475c374b4e43e44fa22f02305aafe743886fce77d29d98e80e694a501da59c7151943e4739ce094ac607a04968a34839972f7c2467862be5ea678f490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301bedaa99a9ea28ca8a3f85e3eaf3e7f566b55863e3594cb99089d05d06fa4a3521364131e675a010aeec7ab283e7bbca023100c9d9a513e8751ccaf9a3400d3a0c33f42bfd1ef70feb510c3a2036ea0317f16ff19ce0fce6a039e55c2a0c9ac3836fb40302047c435bb500673065023100f1be8d319b45b9e3070b8b6806828fa10ece5bb2f8622e20f03c78a30fa099540db7810358133c6e8e19ee1b370ea59e023076d6d4dc3139d214c3b8f333711d135b01bc83893a36ff6e5318f764138b8e0c00a5b78f83dea59580b5c325a81d5ec30302047c435bb50067306502304aebdab95c7d7f6680233db61b97a75d073479c08e73531a692b816cb5ba1a367887d1584715b2520c8596400b92fe5a023100eed4a1e2b83a97a7c584c8de5ef8c19c69d41ecca5ccaf38110f9cef9872ba5d667c48bf1b6f20087728867df845b85e0302047c435bb500673065023100b4c4b8dc3d14f8c2b96b791b6fac28d86abf0f2b81f5ff29ecf5ee937557634d1882cb5a6957d20b49e63bb8eb86264b02303bb7472330c31b8c3566a450a7ba6e031bb2e8e0a567531467d2730031b8e2110c305388e969abf6f9fdfbe843fec80b0302047c435bb500673065023027539b0aa60babe53b2286b03f033b1ff2cc56048ef39a876efa3da7602a6ec7dd9840f250301222c4dd3aa76102894e023100a9adfe2ebe0e0c19764dc82cacd76e2a967480420774053d52d9cf59a08fe7fa6ca1c72bb25a3b8dd405f6bb067c98c70302047c435bb500673065023050815a4a9b7a6de9952219a9e6d170f56d31026035f444e725221c1387ed3b67a474b6531418e585bd544e5eb2a2ebbf023100efffa3d61fd91db369a47e3a443645e123ee7f8ee472107cc3d17fc5ab20ff32fe6a48f8960589d548e8311d1cc58dfc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb5006630640230157924a05da99537cd4dff2df5d357393331052457cb5b29a6c07bdaa6610bbfd994c1608d9f5dfca8492cc882b7de5c02302876bfd3ae7a548df7be14481074cdded50efda015e8e249d4f1d86a85db737ef766719f47603f6bfb76266fc61cb1f80302047c435bb50066306402300ce78ab29116dfeb8fd5dd84e3cdc185d247fc88b023a3e12af8c428c7ed1b6c9545a74dc2b95aa6050c59a46419ee49023014bda5f5d4b7eaeecc178ed51298cf3b7147d34af8ea9c4159c10f5f08d4ddc6328149c8e2beb313b81f5f960d55a0f90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ca74b6ea844ead6f0b36269edbe091004f96cb056e3942d51a22e267b94c418e9569bf033921d0f8fc1276848c1e5cf0023100b1f2163e294973afa95ed353fb4532775d90374f87eb4223479283b6b0e36b51df8ace4ce167610891a034696de37e490302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023048fe388e174eba2d1cad84cf7ef3c27a71d027403e5c6d1ba14d2be5c288bde0abe98fd3c7afaf70b351a36464d36e91023100c3ab3ebd2396f87fbede012f1967e17bc09a5db4409418c4c65d3168a5bbc03460908fab0260c18b5e0d9afcd5b6dec10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f898667bac87de7eed3272c3c4386404834a21f72dba247317de0cf765ca6900d8816f9d5bbec0dfc52a18cec0a5d79302307eb551deee702610ac7dd259698de93ac38f918094a88ebfe94ad4bd9f006127b766c9dd1cd6103bedc123eb8a11e5950302047c435bb500663064023012afe0397f97448c78a4bc6572222fcd40cdff3c15f02b4ceccc3faca63515ea6b5b4cbbb8fc532a36ede4fb57a01f8c023076cd266a34b81958e4815adeee7aacd41b7acfb178ea8111431153a001d8420f12105231b084f1dfe5af5e823880050f0302047c435bb500673065023100efeb71bcf152a2b9395aa49e7f50443037b5d6a02d3756d7db7a6a063cd3ac264bc2ce0e33004959b10beedb38c54792023078ff86f3c7d066b0cee7240b4b125f7a366416fc486b824e8835637109ebeca82236679ce9f192eaa47e0044d663de0a0302047c435bb50067306502303184bca4d12cc720ad62df82d84e3113b14c74a79d292ce2cdd0a0d2bdfe8a7f5ec753d4480f028bfcf385ddd819f7ac023100e93aaa9ff76eacd55e31ae3b6917e6a3faa5bc98572cfdd4e29aa17ca84553ef6ca443584ab2d167ccd2952934cc86c40302047c435bb500673065023100e3ef301849847f3814694ae40e4a584a2bf586ff80864b1ed370d62b29404ab819696c45326eb1b20ca19b66adeaca5002301bfebdd15f9fef12d4eeeff8ca7dc76998b755332bc3c0cacc07f1b8ff23b3ad4c8c64e6d1e84600ae0f5029e660b82f0302047c435bb500673065023014cd4fba2f02a6f176521c28f0e4fa090bc3963be66c42ba81f2145cc24fb867f8440492b5bb613357246aade292ea7d023100f36a0efc89cf0d8f5c7168d1045857f3ad202fc1359d308c09f20b235007f8a26b25d336af7d4f242f9746ce4be3ab020302047c435bb500673065023100f7fa4a7dc075a9da42f03dd57af7b99f40800c7c048e78fdc68550de1e026dbda02de7fe990ffe58bc8e95b3052eb9210230630a02d5cc3508307971bd43894423b6c6e2eaedc627d67816f4685a43f15f86762f6f7a5b157265be3879dc06ce2a2d0302047c435bb500673065023100ee45bd9f3d1be9ed56363de834d329adc949ad88515f1eca70ce0114edaa047b3adc800919ea64e3ba028c6f4b5e673902304ad56d96cd453f2767dd414f006767caf823b22b46195fb8af0aadd8d3608e593c13c705465be35255db0f080c3bb3180302047c435bb500683066023100c34af89cfd80486bb2956d408a460c1ca03a38031eb32d3f9350d418fe25f742c7624f6507f88c59caaf2105915cc4fd023100b06db3b2d08166164f1f94ccb18cdf9a8ae2710901023a0b0d5247694b4d773eb0de688e6e3c53732bf8c280b824829c0302047c435bb50067306502301d9669fc0d4b7cc114749c2ac3502cd635931993e948869bba6935294ce269e9ab8453a3bcc28cbe02e9d4190fe30317023100f4d329ef020c6152a911e1ab8ebe3395bbef9f205c1b0e59647b5c3e7d07258349426c12cac0085d3b9140f4961052080302047c435bb50067306502302e2b4cb3d0edd141adb38c5a0bd2eccf85044d70394fe3606db37b32c2c4ae6589e48394814eacfa34f93054b94e1cc102310080bca6cfc7935ea98289add4a04e1f45693a9476104dbb38a5fdba4c7729aa19b6abd525a136b8a86696861e5f7514bc0302047c435bb50066306402305ff597ba5d854f79551cc4287dba8147742230d7995bcd4c3ef6a5c0ba991d0f6b4d189c7a4ce3cb0c8698ac02e334e602303d15d33045e4809dc5fced512264af328f17126aafdd3487a080e292efc950b87e3d2cd12510df087897214a0e4f54090302047c435bb500683066023100e3aba28af4d3daf555649986a432792e960f71eabf6f8752189efb35c8a87f3ca7fe10fa1294a796dd127e122b93f665023100b57e55596e0211e6e90fa7987a1bd22e9938670fd779d07060ad7bea550695457e368f34ba57c96f3c227069b4017a2c0302047c435bb500683066023100ba194630f1255d0e0d9e4e68e33683b1b0423128a0e5cea68701ed566573701faa85d709942056fb3eb52f81d00e8ef7023100c7cca8ffcc729658161cfbd472f8c150318a504f53e9767fe34b574d19054003a84708d992569af633edde9e7c0fed790302047c435bb5006830660231008a5d227c55b9bf68abbac9f8d78e0810e104624d4a0723f8254867ac718b1a2d3c54b4357610f7a7425673d62a4bf9c0023100a9c8adec710fc88c0ac0303aa8d6b4102372fe860ae5bee9779717d931763849bd6d2a8673e65ab529f67643e85d969e0302047c435bb5006830660231009e4ecd436089c8e54c919a6ab9844bca5ac55dafcfa04716cf5f97f93d8890ebe0c2b36a14bffa9291a5be65b38e5e0c02310087730e131503cb9a0e0259a708bc6ca07e44337ed9d1013ecb931b5f38e93e03aa11aa63856a02d5bce6a5355d19b8640302047c435bb50067306502302c1514a6270fb08033403951825edffd3ec26854e0cb5820152691202c75ebb2adb387f06efe536d200801867baf17a90231009aa96afc59314ce126bd9c3b5a6f181595fd972581b74c07bd598ae4a19c5c9b5c503f04e43f6942672a0178933532070302047c435bb500663064023041671012864ece973c3cb1c48abb3ecc0c7194ad9fdc7c41220c9248b826811f224caa89de800221d5d420254ab34751023058580df5cecda54e4b3271a117c81dd26478f4ab186d0f55d2b9dec483f60ec862697fdd18fd38f5de2d40c0a80828f00302047c435bb50067306502307ad899d2c9ce414fbe36b4374844c66b90d822cd98be9a27ff189060ed19b3f0f949406ce2d019bb0dd2b92cc2c62152023100938135ca3c1f93a866c0ba21a5add8bb2e72c5f6efc3357a9eaa7ffc775fa5bd08d6c5addb2aa1ab6597087e5b3437d00302047c435bb50067306502310080460fcc9eb13d3a4c66cdcdec4cb7f46d387b5b05dd284bad08969875fced92242670441bcdd7f67c565a4e1e2528fc023008e80b7ae29f95bba0fd2d9d1c27960016b548a77b250c446cc919c4d5cdf3f554de9de9ec7d113fb605c9ea2967d05f0302047c435bb500673065023100b7ec8c7dd771944b072e8f5a9883e17ff02985657d8d11038ffc623598baea915bfcf7a755153c7bc12b30bc7e1e26e202300dfae99d9fb320ba008c6d6422344bea0cf7a117a951c42675ceb7d341983367f02872b37d078bc7cb1d74f541457ffb0302047c435bb50068306602310091d299c4dbae2c6a6fbb58a926f70ceaedbd22f77ce40e641c9f9f78529375686300cd7c550b7fa4cdd635274cf6ff51023100d65033c32bb286343be6bb7008167c031e76e5bdd3b6730850a11c18d44d0a32383046abb45714fc649541bef2a16fe90302047c435bb50067306502307a2120fb2e7445be177a778b2ad2f1a7de8eb225b056f9a40a59ae26a5aee052c8509d9a6c38a3a478883abad1f7f459023100dd40c2e17da01af2872457a35f4da68f6c331f252e92e86e7ee859f23657821b69d962e7521912b3afd35c84c644a6840302047c435bb500663064023066c0e2da0cab7edeb19f80cc4355ad17cba82ba138677dd6e887785651798ace4356695f695f384fd62c94319418031202304c2931ddf61f4d52277eb67900d4626e31fbe40b04f48ea21f29a66bf9ed5dd6708984f4ce25f7cf3bc1acbbef5eca770302047c435bb50066306402304f2625193135bddc6d69501eaacb16afe7d28090375f07769a056bdbcf42295167c49a1a432e77848b778394a2caf5f702307be3225f1f44f93f5d1dff045aeaa7b8402c09af0bc97b9fa5435c27d341896fad1b36747e67974b78f34e4bedfa94e40302047c435bb500673065023100bddea79c563c750ae6554e3c845560851c128cf8c022848da72111d9c9a2632d7a6a114ec9f7220b72b4bb52c1b5022c02304f939d8a7259a372d5dbe551ff3f3fce7d3bf78ac73b86578334c187f0324fdac61d05115eaab8ac1d1390634c8fac220302047c435bb500683066023100900bf5e650dd629a1446ebc86a31c68ea0d04b458a25a17918f9004d9941c679a0896ec40327239d6e00807816165a510231009648b68bd067b51c5707c96fb8093b719a6091509b6e0a2eeea2980ea4e99a1615e485cf8c727bba845b16b0344766380302047c435bb50066306402302d94b7e366c0ccbcfda9332ce7257e17041cab0475036ac1d65373096a569d66e323123ef8ec871f915d46ad2585021302307a29e10152f202e20be4b4b7c2006aa36b55ca5f17f52bf88df6474b6fc0259042c3e2aced4a4b26a5ced73f3ea2f3f30302047c435bb500673065023100e7b88df6616d3b224dc0f0968f9d44442b636cb9c43b3fa06568567e57214bad091faf6b164071a9172db7611d56d46d02307c83ebd86154222c0ba7bdefb55932b2504d5db2ccc43300406f2bb9d5facd91b1d692a891143ae8dd6a58014cd47c250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301b1a8f09bacabc89be53647a0657e554babf0aed0705de10cb4fa7c1233415681a7db685343ee121a3e95e32fa22f0a9023100cdd3e10113837a3ea97f7d47493abcd28d7c3f6535bd350655b096863acaf5fd74541aa6845a72d2052bbc5cc2baa8bf0302047c435bb5006730650230224979c13fd6d791f59e792362c8c2527330cc3b407660deb89cbeaeb1de693e26a0b80519fe434b277b20e927cacfdc023100bbaa753907e94d34d678d868b6271b404ea1303201b2e4e71193ef5d789a392d1a700a54d80fe9778ad6e801e8f6452c0302047c435bb500673065023100ef7a4004d5f2aee2a163728490d0db25a1b5a3c5ad613e8b8be7cb9b29caf3f1b8bdbeb9c3a272f3b7d3bba49598c5b8023034c46837ad59ad7291726344f9bf7a812199f19622af5263dae6cde1064c19228bb9d3ec5474e7469dec25a7d62cefd90302047c435bb50066306402305fa710d25cccd73461179fee6c6c20bbb0baacd5d790a532eabb13b8e61c528c5cf47f971e56473fbc37ce483879d5c002300c8ac45fdd2d29a9b022e211883bf4acbfc488db4096c7870c33d018b8608823f767a5b45711789972a654eb9be6148a0302047c435bb500683066023100df5230eb21ca4f009e0dc9535adc1b8772dea5e559f8a292decc1c2dc7696be017c0cf736c9591a91481c4a1b56e638e02310098f957c0411c5db0ea70ceb1b7c41da646be2243b99ac441e25d0ec91f7ec359528b50384f3dce8f4587294580e80bd50302047c435bb500683066023100e142b51c6bc00348f5322c4800fbaaff2d97f904bc00c0224c95f1b734e390f5c055b9dd447a6a4cf34420a1f7383ec3023100e89c1b41bea6a1e5222d0588d8f7de6ab2db6052bb7960557f43c18bdcb7f3522e875149702934cdf37eb30edebe10de0302047c435bb500673065023051a43e73612bfef99ba81da20735b3eaa275ae5f107c85e07900ab350cec4b54caf201aed732762b02f51ecbb439fd26023100cb79eb01524367738587a803d1da4b7343da5aaf58f45d275c53d50823b21252769394e27355480c3823d73e997777890302047c435bb500683066023100852561bd97d723e2f85751429d2616d167ea31188c862170ed95566082ae91ce53937a402cdf123c4ef0b83b327e77ef023100d16c876c8d7549df72df5eee80b40bc9e18b9cac4ac6718adec2a0640430ed556f54e89921a0f0c0e63a5512a445932b0302047c435bb500683066023100b820266226bff93edb7327a29cc831b2e383be49a3d395dd4b2287a6a7692e2770c05721811946dbc73f0a2602c34c2b023100f72063ee2fb71c26c6533302561f18c4c34022ab780ac62c44ab4a1d3136cd868700b283db1ece6e9fcc503731f2c7ed0302047c435bb500673065023100fb533aab68eb1d838f197401f7c2a9d280cd26fbb5522060735abafa9c80da7949bf1c4115e24eace3e043ea4cc1fccf02307fd004ad775085e75a0861abe28385071f8189a75b079aeb10f329b94db6b162675656559b3f706a03fbf71c10621a610302047c435bb500673065023100cd78654871ef5e5ad4202fcf84e053401a256297121b8893414af1f454e316cfb8f90ab9f33bd7728cc26fd481a3803d02304a91d4c1f9bb75b5e615111cfc2cfbba43b3cb406d03b499a0c71a1497deb625b2668ffbd6545156a02ebaa8c3d2ec5a0302047c435bb500673065023100efa706eafd333b3ca26d95ce0b7e8357e1793c26a5d0a4c1808ba8523fbc37b86135163a89df4e2b691974531168039a02305232907eb3af44e24773ee1d96ada239865876b8552d7bcd1bda423513f975920f89a4d59ea58cb42ed8a4638595fcb40302047c435bb50067306502307f6488baf85b8babdb59064ac528d92eb2c161d1ce3888e3921f7b45a87e2925eaa994f959c2ddac6fb8b9f343d5fa76023100ea7bfd7f3dfbc6d66c20db599268b595a180b79cb3780284dd8c366bd651e5528dbd3d94c3e53e667395aefd3c8f6ec90302047c435bb500683066023100e1240a450fe6d6721702346b7466742dc898276476f56e979a8b7a72bf300eb0301f250a14f4db001be20d8193491e77023100d0420fed5ad7b889958b1dcb2da98d5c2cb1514725801fc2c8829731c4aed8a4b2e2892d8c2a048c55403f4bb9430a900302047c435bb500673065023004b879adcd23e7eed5a88a15a093c695402e43cd9f327bfd72209d6cfe1cfbac4f8ee6bce679b42f13cba9eccc7d97ef023100d8ffc23eaf1fea0413d747ae662e47eac1cc8725cea4320c69ea09e744b4faa02f63e9a51dddcbedded657f99221ac250302047c435bb5006730650230437fee53874e45d2432d58775ab4caa6dbaf01b46bbbd145939916054eca3861105b8a392e7018af5ce7abb623a3cbd70231009f32f03c5232c56c460623443f63e73cbbeeed23b648651cae22db842f53913fb82a887b06e13d3064f07151303fa4c10302047c435bb500683066023100a6edc2dece18fae477c5443d68d23b793b5e188edcc012f4bda0cc0d3fe152e6a6fecac697b777e75b8c0f2166764c04023100f089a3a8b9eb55a6149b8e17bfe568ab685b20035bb411f4441b75d4c3d013c0a5627f4357ed40b588a1ac0e20410af00302047c435bb50067306502307bad45b03ade89efb6b1e35a3b78056b224021eee23ee89f78bc97872284cafbb31f5fb35da2dba3c53656b054ee6062023100e9f42c9cc24b1f2c91e7d792ee4a9bd990abdfad0d2f6878529527701c0cca4411592e1b2a616ffdedf8e7a8ac541c070302047c435bb50066306402305fbc6b1b5e989157575811e1605f27b2c7eb1d48d8512f35eaa175a682485adf45ec462da3c0d05bc79f1b27dad64d3e02300144c50b2193b950c0c8c9cc01b395af6aa3e073b9a51385b87ab24de8f13aedc90dbf4014ae4c1a840a13d29fbb12350302047c435bb500673065023100d0af1b8a663789229f70e9bef277b5aee5413c926d01589fdaf54a232a4607da19c26a774ff5f2f2375584e9f50cdb1a02301588d3ac98cb6134314440a60e3f7611a30a1e91d762b7265d66efa12fd7b3b20a8bad8b7d643ebe7701011357e514b00302047c435bb500673065023027b329e9cdb7a46d064ed8457bc070122b39e8d0e4e7bf6d9291a54797d644cea487e1ec5c0cc543a6766897929fb22f023100bf3248fa6ed1eeaf4473abcd9fadddb4104a70099a3ace68bbdc74cfb1c0c003731c08a27a19ea5444522712374d80110302047c435bb5006830660231008762e201a825ac13b275d238974cdfb352cd17d52e5da294bdbeb2663ff798ce952463a5dcc89f1dc9b28035d1af130e023100eccf72837987333623787ee603b0b59323a808a5e09186a09824b7f09305dbf0a092c004df8c9e06e5afdf97ddb1bf940302047c435bb500663064023033d652952cc6e6333b1a48f191bfd305569822a60a98990acddb6fd1bdc4810faebd1e5d185eddd34b4593a4a07975e602300778a79b1a1dc49630d40b1fa885aa675f5a26794bf498fe5dc66fbc4802937e2f86f3c5690e573addcfedf08d158c160302047c435bb50067306502301cf9750c36e8ef50cecd3bc41e6c1d8dfc744725f80ba0f86600aeada8ae2851c0aa13b34445035997356cf90c041c060231008275a41cfe9b8fdd8b9b918933c3b742d763aab2928411af437a1a71a8782873fe8d7a01b66481598738b877282ab7a50302047c435bb500673065023100bb8d50dd3959e8e85b2f935b3e9612f7753680a3441676babe70772968bf7dd6ca90683083f17c097c4fad587ed0f09902300224116080e3993a6231f498438b1f1e23e82b6e0c7cca765b34fab408f05229ba8a126cc88ca71e2564c0e33da333390302047c435bb500673065023100818c92bf16ad70fcd805099f08a2598ccd5f247240d8fbe29571f2a9501a8b6b0ca930a962eff13c6062dbd3dd8d7f7e023028c693cff14f09e481b6e4e645e8b1c4adfc0ff711510bcd27be359aaa3aa379a6c901d629cbebe2be5972b02f9027c30302047c435bb50066306402307a96e9f224cad6c2897fed2aa2f6b01ef68bd21aaaeb0829066d572f12a0d2c9ad84f3247872109c11227b6c64bec3d8023007661f6c67d0bf29c5cbfa1da41c2ea597fd4cc9728a9edd6148f9f2a3f0be85987e66d0475e1a1d04034d8b79b944eb0302047c435bb500673065023002be0081189c435296db84b560f29815433006cb2ffd197dd0fc0aa9356866994e4173444a11dd64ae06f1e6c32438b8023100dcf286e6aaba1a72a4ec6e32bce3a129e0bb66be3113228cc7cde530a2fe618a39be9e858eed8237df9460d0d9727a540302047c435bb50067306502302da2cad36f8cbb6974b74d41ea0e4d56b5c9d15bacf5f6047656fa4abd3b9986956eb406f2aeff6a4ca49229b1bf98d7023100cb30a55465b5c28217dedc2896658c1f0270bae1db45818c58fd6c88e6835faf901b20b4e4dfd39d34b6e4364b4611ba0302047c435bb500673065023100b0e39478f0a5f910e66f363f51f7eee17f62c9017e4db7ada242715dfcddc6e57f7ba2cea50be5369377b06f177e2cc3023050be697dacaf4a1e58adc9f6205d3e4fa47f430ed8d7ca14513c121f54873bd31955400d1e89bf0af63189c510f366320302047c435bb500683066023100d4a5d620dce379bc4a6749dd342442d4d7c1b4f00a0bcae246eb3103826748bb4d9fe6b5848f3d99f480401c308270c902310099ef716de550c6f4594bc19c6573dacde925add939702ce8e393394bc155e9c25a104a422c7cb3f168025a6f510da13b0302047c435bb500663064023025f59637b4161243cb9e38bebce97988fab3db0d4dce9f3fac68d3c9a6268e4fe03ad275934eba259c5cf30645e8b3880230281f4d85f883809dda2ab458fdc451f7a6659209cf1a97454cb87fba5c2843a8ea092f69fc56189c927417c5b3f7ec3c0302047c435bb50067306502306821a3fc1ed481385dc6fdb31d6a3af42a8507a824ba5f8cdde2a60752bb8caf93a0d18c12a386271aec0e5c48bac380023100e2bc271fbd499d70ea9a8b4dc37bd7456ff30a44dbc33778c1aaa5c011128144326ca879eb1229e61bebe23699c011150302047c435bb500683066023100abedc9e7c7fe1dcde1d876de6d8e4c5f160e52992d353db45db65516784529b1163add76ea68596ef413afab7fa6a672023100e75ddd2e708bd309efaa34f059c79b61524e6f25dd3b4c62b5841215cf5f310adb86e7b2c98478a2b7d788c2046700de0302047c435bb500683066023100a9b3645a614a6eab69052285890751fd0ec231c39368c1789ea910a2acd06137cc0018e52cc27c1bd67ce4b107d6ddc5023100fd1528d5affe91871337e0b1b8d6ca0bd5c12b891a1991ac8f052223bc5ed36984c019bf0e4ffdbd7a30f8214ed6cf720302047c435bb500663064023067fe1cab5ac88470cb1e04f1b31a5fda624d6f3e6372d0a247acb42dc896bc1be11761d018a73db8dcaebb1c8a5ed9cc02301e2b553aefe57bcd1830886fb5ff192a7bb7b8462aaf01d954ebfc75ad23c8559776a8d557d9ae2552fb6893ed64bcc10302047c435bb500673065023100e09d461b48849a3aa709b5fdc12d06d81b3cad61912ba7d8142d6388d67c233f652edd2cb8c4fc9ac6ee0b366a3a7f5e023006ac89a9dd3932ff1971f9cf6199d4325ad52e7ef5bef520a0b217adab0eefbb6e235744d29201e0f9cf9723762b6ca20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023070b840e92ff965df0825390083b3538ef304fc467e3983c303afda7a484672bedaef0a3d9eb40309ceca5e9bf1b30fea0231008f8190cdf3bd73fde36d94c92b6f79507d9f6cdecb9e5059dbfa534e7d9527042e397c4894ebb5cf6f253f36f7a6ba1b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100da057bce35791c4638e024d4d869da77b47033aa0dd80ef71769f0a1e78cb03834eb75a60e0822399f8af91555b8507302303271ad06d971ca24767f60b0303d78c72d2731b84b860853401531f327aea177f9d985c941396c8398fd8dbcdd5222a90302047c435bb500673065023059f742e4064f326bcf1737c4b882a89baf4ccda575fb9185e68a8af6cd3c7b4e1fb4919682c421a175af8d8e8239de6f023100a93f265de5caf4ec187ee03d4c3ec21f17d33a17398a093b078d8ef19cf2b20177dfcdb8d11647d39f574602c6e755660302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306668fecd6862f0210a21880f1c45b2144a63054e5b5faf07c8d2fa954564fc21b96c7c1389f6cb6fc95b10e1c74e9be10230252a3ea226f9c8837a3973f3bb484ca4093be69f2242e276e60ac5ee2f53398205c7af118947cb09e246a4e1969e8a820302047c435bb500663064023034ff7feec06fd4c7e53fd97e85798c9e76837e2b9cbf9cb89a94a44cc0b712bd466cf2ffc11f1d88654b63aec6780474023050ad2a09ef06f6350142e15bef5c5fa8646a237a7e8524fd7e78ca63524089cac0f3e77ca2e9c4c57b9309dfc7e36ac90302047c435bb500663064023000cdd4b39e447acca4a328f114327282e20d9337a54e6696f633a341208418f20e11d1027db8e339db2490a1cceba5ae023016ac051de1ad5d8fa35dd282f5c55a6d106fcd0f650e9a9a811343e2ba059b77ed260908fa9137c73ebd31ed23aabbc70302047c435bb5006830660231009bf87d24e3cba311907fd2010672f90df1136f514b9f0328e25bf08dc08683ca08917b656c10a660e3cdf661d8ab85f70231009a52f38c6fc540ae0ad501cc748d00926556d6bda1fc9324d402da250e417cc9ca8e6486a6eb903ec981a855b80cf1160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310084296a3ea110d4c331b9cff1d4b3616674afdd6a194b86f4c0fc94194ee0182e3ba7381f1684e9eee7d1dd4e94a7fa25023078305466f226b3d6e4112db1990d1019187ca5c3da2d78866142a5b556bb1b0598765590939f767e74bce9e4df8defcc0302047c435bb500683066023100a0664d3f1c1d9f355aa086736ad12a7dbddfb0e2406aee5484038cdd772233d7afcea7fa9e9376ddbf3b86dcb2c6354c023100eef4b2079d706bf4d9c64aa6ca788c05d2ac9752b68268278fd9924e78dd79acbbd1ae280d4fe5e1c5dfcad1bd2152d70302047c435bb500673065023016e088cddeca3ba1726e81cb54777e2782565911d1213cb92a2c4bec04f2606a02c3ca268e42ad5b182c41c31551d222023100e82d55f383b1d0ab41e29e149dcfa12a5bbaf432bc5ae7dc7e23fadb66c9c12530b2efaa5861c0d0f5841a24cf93b75d0302047c435bb500673065023034a7aee77cda9db6468c2b2824dcdc331240f66884824e3a5124b61283e885726632b0b8e0f468ed8dd73e87bd00e202023100a7ecbf126d5488ad44e55daa818e559ad6a128001f9e4d92834619e5844c07d3d1f0615df63f891f915dfac7c54d63a30302047c435bb500673065023100a1ae755fadda63a4ebb6d7d8432435c260120c3bf469bf34ba353817ec887351bb8af23d42e4c2c03e0efb3725e5d2b802302fd998c40a242720ecd2ddcc384670469a8e9b5107c0e595b731d6c4b48673ddddc792e560280c4f4d066274e338ad3e0302047c435bb5006730650230205dc6bdfbc6eeb4db37739d148dd21eb7897a4def85dff3c7123a3a3072920361ce0d75c0ed66f62d065a47914e4e95023100cbcfbadce96224877d737d8aef26b215b82e2e7b00c392cf074a6d6f59efd3d19ee65103096c372299ffba682afd1cbc0302047c435bb50067306502304e3d7a353c3550f774b44b2d11a25179d1b878b7128d57c7f453d4a0741cace759b1f53f2820e89a1a29f2f17f19c658023100abbced340a0c41a9310b15e61cc6a290d3367acdca32bcc8f3bf6ad85fe22bce7e2c5af7800a2ac6e2908d4721c39d360302047c435bb500673065023100a5410ee43a79558ea5288280a5960405925b31f62046ca9d2d77aee7e50d87ded50575b850fe779bdf584826b10c2b1e02303e271437f8954b0fdb485fcf061f27c4d8e5abacdfc24cd9196cdc3bc7eba980131fa42209a995adf849fb59c482dcfb0302047c435bb500683066023100f92915c4dcfe0e74764ec105175f111bc0f3f13c7eef13c15fe4991053d0e7ec9ac216ae5f5239546f65a026769898e6023100cbb3fbf7722116cd1fdcf0f4fd4fdaae9af8f3bdfe8f9b49ad8f8f3235d2141146663963a54fcc81f75b28553737ac580302047c435bb500673065023100e0b19164804e4418bdc61e4897665dc15b99353133f8a828c8b8924b506bff4f18369c13e816cb827720aa1643146de902300396b5200428a6ef6cfbb820a35439469c52923fd668970f072bafa8b8a27b626c093366669a602f2c38977363c3c2ff0302047c435bb50067306502302b298df7072584318632252f6726a620f28a78920564f6888416aca6d4ffdb452092d311d5797106cff77879d3d2803d023100f5526034f3359502be18d0509dcdcf92eafead556cc01a8ca2d22be30e9ae0a6a1903a4f2838796b3f4f993e6bdd458f0302047c435bb500683066023100984e1848a7b63de9acb8b6ba1691d807d6feea25ddb1f578b3a56f9668d84d1b31e7648e625c7c445f56bf865c9668a30231009d0fb84f9e2ee76c070e9a64dd019174e8ca99ef93b60aa0bc67f40158a82ed22a02c169f49cc465818aa461e84c56a40302047c435bb500673065023100d97fce6392641f5f59677eab5af269a9a29f083de1592b28e968673f8e04c042c597e80bfdd8f6bd7d4c7a2fddae86e302306a12f5c720285f8b3b6f22615cf4f977cb9d22d3445ed81a7cb8879dcc8c3c473a159da9d495560c5396d7b8666e1ce10302047c435bb500683066023100f8d1f76d456e7e1331ba1780c5a4dc829db0520b04d6fba6ab363582963d04f11b6ea1dd1d8bb698a9c0d6951d829d10023100bd9f0abcece6a59629c05ae1cfd45fc3d730d103ed0b39ef8b6f33327c3ba067b17e0c9b176b6fdab11f10618924ca5e0302047c435bb50066306402304ab86eca8b6128db27ad86a1f23d17b8a9972dc1671a1dd1debc25206922ba54d03bc9903bdd7a1b8bbf68264e84b61a023060e29f341a975ec4375acd528c678ddf4dbb27e201e2d2e48eb0ac49acd5fa40ba9245761bd9111958bb36a4f12c21520302047c435bb500673065023100fb08c8450f09032bc243d4de74809f930b21b1904c8e999659edf86f785d26496c51c15b608e86c1eeb08a865ce67cde0230653f037dbceb52499b488e749414d325cfef25bfbf35e63bfba69eabc9c658e8e0a6c1fdf60ffd6a86a7fd15186cdd160302047c435bb500673065023100dcc58097f8501d99ee33627f80e3a81316f3e498e68b5de3a04fa044d3a6846d9778b85c6f335521949b305a11eead4302302b6bca333bd96bf06d9379142004edc35de5255334dc40c2e8ffc5bcfea1bbffe88b46cbc1b39fda49a514a7204ca7330302047c435bb500663064023028b7b65f0424811d476b649fb4ebfb8005707ee99bbb3d07458e33286316257918d1c1346f0f586e256b0b845099820e02302d1b750bb748ed46dd859980bcbbf231fbd361dffbb4150ee24c13c38e50c71fdbae1693dbc04bd0823c4cd3e68f69ee0302047c435bb500683066023100bd08a7f2b2692c54309dd53f8d26490fb350c2f0917825f1702919b44b216f68fbee72aaa1c356bd7f142bf0f2be8c6e023100e8266f50179d8d82b284a08fcf6d6a71cd28b559b86ffe715a81e1b5ca6d6d0fbdeea818dbdbc25dd37bcbaa70499f3d0302047c435bb500673065023018265c1955f0151a8e62f04be5d5382bbe2168a717963bdbc8416f26a601fc1c5f1ae940f9985cd151b45bef3869a1c9023100c9a1b7cadf5d961475c082ab19413784f748b996b9ba1729f4796afc22600986ca5b3630d215970b2e5a071c735a89120302047c435bb5006630640230039ade43b73e7dcdf7532ea9a7f80926196ea68fdea79e67957ef7603ffa1d4d51642b23486104934dda8c2e160545b1023071a3782fb40a18800cfaa6ddc5e128018386fbb8017005395b41bddf7d74809fb8e9e84fd93918b494551dcfeddba9350302047c435bb500683066023100cdef8c884bcdf9f276d0badf9c005264219269ce738e9bdcd0280cb6f1d2183a663784754a87855021456bf971378947023100f66fb70b07efeffbf3ca597863a4793145d44fbcebd498815218c5f06f45e46b6244f45613a4bf5375490f9fcf52450b0302047c435bb50067306502307f0819296e61904843c572b9da21bf8429d6fa55d67e013a8483141d3c9e62d9e6044f1f91998fa4143288402e827c850231009cd7daa77677a8af0c3f1e05d1bd0a3fbba7a1ddf6764c112e0d02ce7b01efb93af51b036c055e2a2e51094b5d02ed1e0302047c435bb5006730650231008e66f084d5571f8deccdb80809b5328bd7d9936ddda7665281c7274c098e9ca8ecb1c4e55256dbb57e3ae155e4fd1dcf02304c97fc40db13afd6d98fe1a41e4ccb30aae1bdc76209afb793c4124c5ae7c7ee5fc94f8180bf155e293c0d17d991958b0302047c435bb50067306502304867cd4a1c742a4efd803accee3b90c2aa4e796c6f109ad242f6964e7cda551574b4f43384ef56a6e74458820b054ac5023100f71f363b3bd31cf261f1d7b9eda4440e2262256d9b06b9c609deab05910855bd664483a7af65145c42179d56f2da3cc60302047c435bb500673065023100dcad96434e5f0301da76d0702725c5fd9e4e08015abe3022a1b1333a310b7e6aca11049483bbaf367b439f3cab718b40023070b313cd5126fce2a25fd001c1d696bc0200f98dc987a94af371c62487550a8180ef30f3325e7d229c6c3db58042b6150302047c435bb500683066023100f740cdd4ff7605de3b0159ea38ab9188011d1eee4401092cdf472ab510e43757de52989c1d4ab9975706f0b5abbb970b023100a2712c173dd01156c276dd274617b8ec22a2dc641bc745447b040a3db5e77fb82b77c454d7754f2672c76cf965ce66100302047c435bb50066306402301e005ae2d8e406a47132396035ac33087273a5005aab972388bb6bcedf3f675ce67611140c7c9e0c364d7d52182d9b8802302c918662e46cab94d94b66a3177c19585f9552481719ddab3b9e6fd303f03364a89613abf2d22aebf6957e50e468c8a10302047c435bb50067306502306e6b126de3370262c9707d83f7a5ae0ed902a8451efe8736af9aaa27f8a7fb9dbb84a4e5072eb2c25bfd7daf4c77a6c002310093a5c3f12a742cbe3c458575a5fad41625da81b9db140a359b1013342dac7002170c7df0331898f34369d84d6d7190340302047c435bb50067306502300ee06c5d6c1fb88f6c3de2f4027ac959ba0999483718334ac6f887d4c12b0e1843daddedd3416e7f023ae404c00ff8bb023100ba9ed71d0073061fb414c16e86627f83245282c226f19bba2b348069b5dee8577904c85c0180edbefe0f8df84ba82ff80302047c435bb500683066023100dd453d0830e49cbac78ed4204cb9d0844ad12ab0b77647517ae3ceabe48a53a06a0477c59e58d14ff7ad79c9f0c70c4902310098c11737039adcf0915ea8c0a3c97a9a081d83d0e386bba78e0e85a6c440ce686db38f076fcde9ee96c22b151c360caf0302047c435bb5006830660231008db04a6d1ae055dae0f12437c467ccd9e7738b6b34a94b0726c095aa51d7712573370fef67076764ff409a900780116902310080f45cfa6f2e91752ccb770af79547f5a5bf044f9b05caca7764148fce1f1cd6b115d0e8db70e0009123f0dedc8d72850302047c435bb500673065023014113a0c1d1798696efb98e575673556282ecade02d9ca28dd7babde66f19870ea959a55789162fe4289346e9bd287cb023100fe830415a0339e26da31c6dc66f82b872bdfe555aeb455dc33f2e8c3b9b27c3ff8448566359f547ad48f95b8ac00f8f90302047c435bb5006630640230284a35f2bf7808a0c87e24869f3cd36b8aac64189960ba635e7f3edc8f036bcfcf31d5d924ee93dba40f3ed567fe99c5023044e864c69afaf9362b0bd5a29115f064db524f611141bca15f10ce719e0dc10554aa4e8e9cf57324d802ce12dc7ea9290302047c435bb50067306502306744480a071764fcf74849a1426dbb8390f9da157b092f0ba76024b4d0b73f2356865a297deb4a2616a9195eb5907ceb02310083be2a9e0610f603482c42d3f1de49d5259cc6f2968801bd1dedaaa76e3a9e506926fdb06c65178ab5d93b91a3eedf280302047c435bb500683066023100a6e0b7456aaa46e96f090f21866c8bbacab153da69fdcee9f856fc3b6f55f3c0096907c70fbc9c6847726b46dad11229023100f6bf8538029a44f2c5e958aaf3ed41258b0c7a342b7f376e5919a734ca9f359882cc0acc25f4d9e84d8938c1e40711910302047c435bb50067306502310089f6953c6f0fca96a173e0a903f16e6d3c10535d60f9791cd31688464c3ddafec22418064fc3e9b78135e10670f4793202301f2af7a37e412c4d94ae2a2edb51d35344fdde8ceae75502befb30431d7ed4d109fc253bde1b12085ee9ed2033fae5ca0302047c435bb500673065023019cd03df87991db47183ac510bc926d77afde0e8c35a8a39a1fc95fd491849176e8f694e636f4f699184d59cd0320147023100cfe2ed9d7cdd0b04325ad2eef2dd0e86022a64d0a9980a5d5ede0ceea1c7bb3b6e6afdd0ab72b6d6e0b88a77dde4de580302047c435bb500673065023100b578061ee38bb1d0fcdcdcf9582a75980e000f1754279d19f0c5d165be1d27ce76bba623776ccd7b0edf00947a41ceb7023015ee7ab229494e382812effbecd608f4c996630cc7bf4d1bd94946f71643317c73db3e23395f262f1a058339060f2eb30302047c435bb500683066023100ea2ea69d69b4eca7c054151269ab4a16c12fef09a22b536ca5d1993b5a0af034828a675bc80b5bf4a65d8540cc80eb37023100a539f6ea842d053abcb8cc2ba94827e6a4507a4a91f293844b4fe2fa789cd7d27c611e878b8c6ae72124f2bacaf4bdad0302047c435bb500663064023031089ac342ac5e15a5419c23fd98163f7dcb0375c568973df2ad6e6ab2e5f55a97ac5c35ed91914dd04b0319ada7da850230557d483f7cb0e290ca4de8c5fc5792ac04b548c08a812d54570fdef8fd13068230a7080f8687823319702bdf135ba1180302047c435bb500673065023054c33e6a7488db66c8d9876caa2f9f5d5cd76e50e0a8aa1d10bba9c759f8bf8f7c940d039788f051560e0c0711afe2c7023100d345c0a7b9ed8b510839dd4895381ec03726c50bf6600f7941c82f583b61c320e013f1d8a0ec40fa51a0fb1a09ca294d0302047c435bb5006730650230034bfb1b33ca6750388dec0a00ba77ec419689474c80da93c9f8298efeb4fdfbb418edb394d9de6843cf1e9908ac00c5023100a9beeb1057dc5abdb47f37a5e2aa53f9b8ae4d5e4112027a02265a5655ff17d8bdd8924921fdd6f3e0895791b0e0a78f0302047c435bb500683066023100f5b05283180bdb5209f4b22a8c636857646a920ce128658dcc91c229b1cfdd7b68b8d4e4a3d27d3f7266517bcbe9a64d023100a861b0f09540320bb7a2cfdb6f494114e5f612a5bbbd1ebc734bc4c568a58b5d4b7a717cad6713b5dc0f8aa7331eb2250302047c435bb500683066023100999110bc860e3302060e336818bb71b8e180f1b4e6e2b535b5353c505366b58429f118aea2131901bdb27ac81232847e023100a3b6ad8f931de07475e36a878f68c469c856cbe2dfed56a56fcbb8827fec3496c3ab414d7302619ba4057757ad4e2e0c0302047c435bb500673065023079fc46862cfe8202092c1b5c88b0941d2181b416c24be9b15e99d60bab4a540efc3cecd03b0d6a8b1e6dea9c74e08535023100eea5ea6937b21ca069472ace33d960dfc5258e831f339740e6da5021f5713a31c525035b39feb13699f3471f46edbb200302047c435bb50066306402302e2618156fda6b3850d825b775a3d8c92767de1cb5ebf183ac5c0c65cf85ef9eed16b64b5727efeb33a750a2621e49f002302ff56f719419dff9823d7b0f8ccefc12627fb7f5dbee69a40ad4b52b1ea737c9694e8077f0ba43253000efbaae31dba90302047c435bb50067306502310082951bf234870a361adc28db1e4358efe9995cfd5f7ac17323762314ca91ac560785b71f61677f24bd78dcab5c95641c0230565f7af6df7e1638e3d405f71af68644a5edadcddfc54ec14796c891cbaeb49a5d60252503d392b4cb88de3c4ccebc860302047c435bb50067306502310098254438645eec2acf46b5f5dc28faa1638b10a2cbf084b3a052e93257c5776fb634d25bca3606abc275fe0ec8953b6a0230424456c9147aa84122a4943356b3f1066ef99f18b06a78998700cdcf8a05855efee6ffb82bc4139f66eaedb49ed99ccb0302047c435bb50067306502304e8f04e98adb49533ed4d5caf92e5a398441d92105d089ecdf5616045c34232496302fed7c63e17fe3c27321250f6917023100d3f8a8c84d528e3f347af6a3fd27c2d6c6946848b48e310f7e6ca4767fdc22642df8e6ad23e0c66247e5d0b1fc698c700302047c435bb50067306502304ddb663eb1ce49ce13650f4e0e9e5afa11a1999351775ff82715fb8d611183b436ce18a639f4b00d81977d4892d74539023100c23de9115a4b5467e29206dbe6d784fcab710854b02315c62ccc73d2ffcea1f0b8d1be40fd9efe20659da15fd91afaa70302047c435bb500673065023100b11096a5a55248a1903984045c38ed6230e8bafce4db0b876bb06244185f334acf2e5b8864c771f501c7c97ff65ec85d02304a7b17d48af4b3a70ad25a2a0ec9e77c6e3d1b2a7cdc32b976916e1585a18e8eea5ca268960f6b392e15b93213c7d4bd0302047c435bb5006730650230453a0f5a19cb9705429429332fa32f54d22dc9f689e849ccbc59021b419e00b0e1c74864c853466706abf1eee95892e3023100d256c258b3afbcbb097eee40e578c20073f0970d94e99bf160ba1c8d7525eb7daf34a26380d395dd46546153a8cee0810302047c435bb500683066023100e07f8ded2d8673b66f51f7c78ca8b688f74f2b9b354b4415f3b37e46b72947ee9872856232dd0d8c41afdc7f0d69146e023100d3c07852b0c63cefc86085061455d6a56a6b650c1d223d63c4d613a75c58a4fd6411cf2165a400c54985db90e4a605560302047c435bb50067306502303d7bb3f767c376c6124cb320b08764e6387df4d1b807239b26c0be366b89ef41f0d5636c4f66170ec5a2332da64d9e37023100bc8da12c27e3ae547e03baf3567d9c2e98cfca1c225c4350a04acea13c6d0e077fa1d9675285fe99246490b743fda33c0302047c435bb500673065023100908478bc128ec085343e8ff8d97f75339f3c77586c4a7449f6636eba72e087289d7bcdbe3995a97361c0c4d16f44a94b02307a67f5fe385888448a9d90988bab444714e1374790ecb456fdad57df98de2f6ec4b73db65c0da02e23370dc5b94a4daa0302047c435bb50066306402300b322537f24d01093be7536f6068115dd15aad3d2905a712eaa750991c430bab03c588238a6a60828bc18698cb81024b023036a807bd1bbc3a433e0072f0397ffb06b859f595c861f3a4f784006d492898f828b6519bf219819a955964bea9fcc1d20302047c435bb50067306502305ce4d10bf4d6adb1bcfc624d30e24bdb6d0dd9c2707a7432f9cfd3bd9f3f4f0ffb778c8f6d6c6e4b581613b4cbd16326023100a8dc26250b0ccb2a401eafc3d5cd27ad4e29076617c1bf3d463b8eb1e39f10521d4b8f4e57b620819905e59b05a0d7f00302047c435bb500673065023100ec8c1c085ddc02d68368e777d9fdeeb2d447b76ac44cb587087afba21609c8b986d7ca3e806387e5d3b962d4f604a70b02307ad9a3d481fcf95b31035eee307afd5c8d9a95b205feb062d621f2643947bfcc0d392f4801114657d47135f2c79d8cae0302047c435bb500673065023006880b21009664bdfdbf7813f048687703ca2c686c82d19b7137d4b4bf16a3398745e7864e8a421c41e413f5ad553ea0023100a712f294e8a2d4f04af4cc47fcb55f7dfa8ce65dc5cd3042dbbc43862261f9876b140cd2af3717659c9ef97bb6f517f90302047c435bb500683066023100d646f266d60731155ef5ae01744e9d5404d0af09b9bea65ae0a13c7f00c934bb46d03e6fafa1d25a5abcef22eb51ce58023100eb27e752716e6e105ad91d0cde69fc1496a87ba05572e58236874744925b93a6a98f1a8c0811db27c0050d13af01f07a0302047c435bb500683066023100cfd0789cc7e29d087b10508f6fac575cf751a86b5b3dc2e3c099d57472ecbe00be3a9d46b245d6c39357c7b57d35370f023100b6ed3329522764c224de13d771f397ee3c0fa49f5113ee5eda058785a5fcf2569a0895276fd88a248fbc2a9cbcb862680302047c435bb500673065023100bc8a35bfb401acb3b32e65a8791ed718314b2eea4f0cb03a1916c0b16462684697b11adc77098a25210124c3866dada90230065a1cec739f24a3d55ed7c32c3167e788ca9f4c7c7c2ad976160d8be55726ddc3ad4514122e40e2531c0744efc5cbb40302047c435bb500663064023052f9304aa147f1b97feb7c91b9b0d1b339f61ab9df86f5539d1c4a586b2742b4161baea8a59957e6c9c5e33c4c9a995202307766dea3e418446cca98d602c8243e273dbacb96967023588a07641f6e3404f1b65183bed5c5e3d6534683354c74f3f50302047c435bb500673065023100ac85029ea2c3a772588741d108c7191141cc4fa5b183d2d674045e62ca9946edf4723390ed111c86f9ebc9a9588ccb7102307dd2d64418ee6a963f2e7519d86d14d970b392d1d779195a01d003854ac65a5eb7ac379d39930fd8b70ad060d06867850302047c435bb500673065023079353c348125042b41873af61e0961e826812707c2080eff1d629709b9cc43a44a394e5a4cce67e405f1f58a565fc92c0231008fbf84a4314bce4423396f7932921eca042a26a9cd146386f1a518e0fd3ccbd7d0ed51701034171a3cf2d951c57535330302047c435bb500683066023100bd349853fb92f936737642db0a4376dadcd25fc93adb2f02ee6cadc9590aa4dc7f7afec5ba434d161e2ba92fdd894cf0023100aab6515ccc812cf4b208a5e93736f0392b3efd4d671fd57691ca2ce01e846b77fcb28bc9d4299fbd93f7d2d27f01408f0302047c435bb500663064023072391bdf8585922599cf889b2a45b4eb2791c6f6cc2fc7b5d3c32822f38a9e9d451acdf7e404554e823d8382c45ad3c502305c935082eedcc38a7599f4b48d178d0a113b01542dbcf8fe7070c838f2e9132f4a82ba475ce94053d854c4ff7d5758c40302047c435bb50066306402301d9861780a5c2516a800cae9a776bcfa3be7cf7a21972a33de4b297072d7f1baa1c570071b9fa22f210b28deb6c6844702302ca11d8136647154a79c49fcb01e3247a370eec46d380238b105b02b8adbe950ebb83fe1d891375eb0dcc35d092657280302047c435bb500673065023100f356bb06086ce608c9266456371ea558d202f955bdefea1d196c720f35f78a9703deba3f7c67c620215ab4f4f11d8044023039e2e98f63872719be68f94c9dff5a02dd6fb930e076f1921caf4be064085d69b7f86c8cccbce5d558d6ee617da9064c0302047c435bb500673065023100a0c2a2d1e6c18251b4a97b4b58225c6dfda766af25de0c6eee194c5344d3a552386e33e9075cb35375124916cf788a5802302a8fbb656051394641eb6fd9ba8785bffa0b576b1ff3c82ca0331f3bf17341c10ce52ceb0fe357cac77e7f0ca6f3ac190302047c435bb500673065023056990e45997d59251092ddf5e59861f15a8cbfff710eae7814d34d460a9a56b7a1158ba8c183a9a90528f2aa38b4a25f023100d624982038e2ad8e41eecd4e934fb7db4c0e729374d462af8fa9954aa564c4df6b5a6f6d0f50ba49fe822649a76436280302047c435bb50067306502310090243c98425e5d738c873c70f97649f2ed658e320c95c1729bc6143d589aecd81e5b0820eefa64b9cbde2aece887c496023031eb8cdae85308e76b5b17dfeab84111ef71c977da671227fca704f81be680d5d27ebff8635384169ddcefdeef979c3c0302047c435bb50067306502303ae988f8621d312d7927afc26955cf6f16903c5a22b53579a61884774dbaf0f930defc60d2804fd3da93cade7359b8bc023100b421d333a45cb0641f3871a938f4369d152aba516c06fe06b7daed99bcb3b1d8b927ee18b030f961302749c99180cb7f0302047c435bb500683066023100d02c70270bc2083fef285006b7c46529ee8ad8603093c4a229fb270bdb601fd6d4aa028746ca009b88f5996c3e371276023100cb9cda5f51b3905a1336398ebdb743cad782706ccc0151f4cc0c84fd8971ceed81646f2caef6c5914782fd1b031514630302047c435bb500673065023100ab22950a95edf8bf49a45214d45d6d29769ea95f5d6281a743c68a6f4329a00c8f696154a7945dcd4ac939d20dbd91aa0230236df8ed50636f98e7a9a282be63c4b6a0c75e8bfbe5001a785bc3969e1e210c5c8216ef607358fe0efc0ca19f7c05270302047c435bb500673065023100a22dfef9a04e2aa63e0aad325b533f03578576e26d3c209cb9a78568ee7fbcffd883154bf96fdcc08b9d11acf816d9d7023007c4e68dea607a2ed477616770b343f5275a45da6c20529ef9ff2cada5dd6b029da50df0b4eaa78a856e539822f71c470302047c435bb500683066023100b6b12e68d2719771f807aa6525a7e0a2030c36dd954b15846dd169e1a8d1d6abd41489356d7fa8979adb6224102de95a023100b8771736339e0c9d3f374579b6fbd4664f52f0e58d2affbc6cf983360e7b30499bf5b1a378384ec9514038de29f171140302047c435bb500673065023100cec81e4b38983acabafc7a5cec65aa07f5f72dd7b16df0525623e6545f60a89cff9669b7342583d9c5b25d41ef457fcb0230403b6aa3778841ffc68a080659f15a40603a87a8a11879e910cdd1ca676045277f25f4ac2e856f126d3b44ba06e090650302047c435bb50066306402301cb598254fcb2e35c21d3f43f473f9d7f889638ee3f21208004e56c31f9082e0ce909162fa06079e823ee75712da2d5f023012aecfa0cb538ff1bd79b1bc9114ef295111b54d8720a1281cc9f595764594bb483706f15d4423e32a85a3ec368901d40302047c435bb50066306402306a51d02d600e7095ad60c562380f91ed36f441f495f748c7267d059dd5c8cda74d40989a225e5115e9a4ad20db93c7a40230244ded5b479dde1212442e779129b8319cb77e380814305beac8d0134e23bdcf02bb1d5461ac7c1895056e74bec0cae20302047c435bb500683066023100839118161a634fd9c6e263978d66d31cdaf3df30b140c2bd0025e51b6c4f3f7d3180e29bd7e437c9d2af0784f037481a0231008d94d77bdb3528bbb37288b5a086ba059257ecdd80c364dabc9e69f1ca4f0f42b15211ca8565da491e37897450cb51f90302047c435bb50067306502301c36e887b011ad52f9e51b83a10484aa5d25c20eef6d794a34674d5a1686d00df66dc9766a86aa0817f9f674ab099f200231009c4f8a0b7e8a669ae6d648c2931e582470a986a329720bee98e15ddff020039f61bcad37cb1b6a91a74a3ff6b419157f0302047c435bb5006830660231009e0ff76c3c8f372a829815123809a515e58c01a7399991fa1f8e199e1f4109a8fd62c42d1e196e24fd870be3e797295c023100f564683c48eb38aae427f318960eec9d888b21099a47ac7f132f92567b8a987dc9623d5de80294cf566663cad05d347e0302047c435bb500663064023043d75e4deb65f1943dc03a2dde38f5f38f4be66230451bb9e5a6723abfa9e858ade6942b61ee25392c4ad3336f146f1702305f0e467b3796afaf00bf2cca1475b358f241365530e55b79bd60a18098649e004bc289cb0ff9ad3876a034985352779f0302047c435bb500663064023050cd87eb31d3ba6b20a323649787a25ee6bfa62f22f5b2bf0a03830efeb58791f5c41209d74c4628341a18484a5af45302302505ff6083f2567dbd3a0a48f3da9c312542e65bff4641c54271a865c1839671ed4424d63db89d2039ac82725262391b0302047c435bb500673065023071fa044eb69c13361bf0194ee164974dec15c0365ff206addb423994f236df61a5e05e57d73d50577f8daa29cc642e2b023100f5503abc3318737ae9ec64d8094390d7821aa2ef83e7ba153740343bde9f5caaa79a0dc4a13691a64fb28906fda9ae7b0302047c435bb500673065023100c1d1ea694a8316c5e44b949ee007692c782a35242305aa7049f33ff30c743a550fc87fe54ef078348b51e0e705a15d0302302eccb6f8997d9b62753c6cc78f7fbf6edf659ec43d21e7635c37e799e1dcf810b0fb4c802c162ea1c3b5e256dca6de6a0302047c435bb50067306502303ce459aecc65697f960897da1ba2c32dd93e6ea39c0fd22f2e7d696cc69dd0f982dc75af79be5ddbea1f008f80ff82e402310093039a69db329c3947d76f743d353797f199eb05baffe7f834ff56c6d31fa215432357db32466459510059065aa59a640302047c435bb500683066023100d25a1213590d414803a9496589474b33db0228608df61b3de807a49a8a5ff52af471c8342ba0d0998e82df2690ee62e9023100d14fdec2897e6026b6d4736a5bb1f14daff798c93c5065e9397db043ce6139303d1938dfab00ad511dcdd6ffb367b2a80302047c435bb500663064023061587c474144d1c58a5a0ae9757429ff26339fdefe35d2d8a8c62a643f291172dc1dc13c844617656cc8cd1eb3753b330230726e2d864fc1577979cb9f1e6d8c7e7aa3b56c93e6143a4d622b42ee14fe4878af02c5d7b8313a9238262996c3af89020302047c435bb50067306502300103e4ceef0076a5edbccef4929a86c4988fb9d9d43c82741839879d1beb2c962a5c59df7ef4785b3d8623e5f8bc6325023100de3822d3c8fb73607127a525aa14447b7178ad17c833c1fddcf50e64cab96a65dd59facb40568510f385ff0d3e46ac020302047c435bb500673065023100f2c2ee8615a4531260d2deb2312aaa3567c15abfc12c4361aebe64c516555d0d9d5ea422c267f21f25166cc03105200a02305d69ba0f41724d8f2726b4a4a9583e255c0a2122477977be34e0038864579ee9f1161077afaafd707c641b9f21326bfb0302047c435bb5006730650230428d1386e5143300079fdcef529eac71c3747d253fd486140c7578e64bc7e9cfdaab06ad1d18a7f73b4b6f7938e472a5023100f78960d6b4cc6eba11136b6633bd51a2d1c6daac01d33f7d01085034505919d98525fa4281ea37be6b95208b933907bb0302047c435bb5006730650231009e2f6a314ee7d14879033d0a051fdac5c5afaefb785e3fd441c207c9cefa90b76be42af76083d98f36abc0b1db53e21102301918edeb5de5d8b0303ae2fb0e1e575d6f3a01901b0fb1a92c54a7b0d80a5b9b55fbf2a01db1f90e57dd20744c0445e20302047c435bb50066306402303a4f3eab55c664f52a00e7e91b512141f333c84a034f59617b8109651571f4a7c683207ea62e873247b8114cb7307e6a02302f4dc843d02610662d458bb3866dfb7c9ea16b1416b558d658e70253a0acb1b9c5d312cac1a673fc8788475d430bb0080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e991b1ebc480d9656e8312152aa0e73e9f2d06d40b605a930da3f7c5a6e512d51a9a6a9143a0e1f7d026bd668c7f75a50230798ad6a257ba2609940322ef94cee08eb881fd651ba09fade5ee3b9e4cb0fbb871e91973a290ab7bb6820c4833176e8b0302047c435bb50067306502307e24958a9b0f8be06d56e38bc1f91bcdc27e2b2cb6d7cb7acaa1c08f768d943f5f907081d4711b859ed836e830decac2023100bded9a6da366fb2d60d16330913ee148278a1c6bd15c20f9bd8bf4ff4f5e8914036fdcdd9312aff386cc7b85ca5c7b710302047c435bb50066306402307fa1ec02f34089e932ee807ea8d59cac4b2ffea7978b751fd0ae09ed66680433d1a5baef000e7269f4c34d8d3db0b1e2023002a7d2537dbd11499b0f778b9b7cb870717c0d522e4ccb58e6463629dbc110a52f3f7a96b40fb67ce1270013d6efe8d00302047c435bb500673065023100b23e9923ffe162d7a3377dc5dee07b27afb577cd46a446c1e720d7682c5893794f5a35b6569af54b2a2f5c195aa5279302300fda05ffd79701e3c53dec4b5032720cae53608629cddc7e852558afa15943f3255c27461772b1e3c1d76b425a1875890302047c435bb500673065023100c5e049c5106818408c49d59dfea4d332cd37ac7f872bd68e257752874b6a72984a27cfbe2b8e09fbd5f15456237c435e023028e404a0991bbdbf431a6474238e9aa269fa2f7368a6e75fca3e9b00c35469496147a0d81e56668ab5230d74e9fc5c4d0302047c435bb50067306502310088e3ad31a7e4294b848f1926f38ace92c58a37748de96c772d3099854aa7ab03865efd39cb9344214e27ef4f3c426caa02306053fa072020dec518c56a89bb4e2972e6d2bef8f7865082ac21521790812c9cb690da8bbd84ff70a800d7b6a11179d40302047c435bb500673065023100a66a543255f185f6cb8cf718de7488a44c8077dc236f50bf7b3294d7b120cdae8d3c0cbef914adabde7b736c5e406cbe023002288daf8ada213d45ad5b250c584901233a9a2adbe176b7f98586343801d04ac0fbaffb11c241978ef0dcdb55a591210302047c435bb500683066023100d9de6668071f87dd3a156d8ca14ca3d2e1804b3b730bf6d6f3693d06510ac94244c956578afe28f02c14c94a565d88d5023100f880bf2bec0f866f585a52653c6a776c683506590e24be534754b09d820adbaec02f5b646e34fa61fb3d1265a9d565590302047c435bb500683066023100ed6ae790e6d95d4578a0cb55de431077ce5569f7f178e83b51b5e079b931b9bbdb0c85b82472c628e3703ee3fad8c725023100dc43ec74f5d98b8d4813486e52f9f58b2818f7b926595d4b042052aa86425109053c93eaa5e05cac66d9684362dfed8c0302047c435bb500683066023100d6f3b7b92312232f976edacdaefc23f150803b1a3870be2b4a79dfbdff5231018c5de3abb3c44377df43253d2efcb1b7023100a834d6f616843f49b861d68190cefb5ef859c49f796287d4d5088d38240ba2fc1e0043b358abaa87cb8f61a80d8b63cd0302047c435bb500663064023062ad69bbd740172f8a52923b3ae759784ee2e44222e2bafa11a8bcaeda00d6baa1916d3e3186ecb4759f460f886556bd02304489fef33c468865244fdcef45db089d008a7bf227d0178d5a1832db4b4a2c9f00f9c985e4cc727b58904ab4fb760ae30302047c435bb5006830660231008da74b3bc23dabfff0d60ef3ed503e7842712fca7e25a589ff0e1c6062fef966f0fe7ead3c1c2e51d5cadb24cea01c04023100dd463fd31fedc87c82659d54571d351178a9f84e6bbfe9db6107e9bb30edc5ffb7cc7e2e60e3ed48106bd213f8c0727e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b39343714d0ed5d7e3f2d935c4ca1c34cd7daa17389bb3b419241e64b8edccde597aaf88e84386a3b0747403fca348d20230114303ed7b635dbd68f7327f923032439fb65a87308e4100790b81391fc872e4983888d1a0a893fadcd5fe9a46e91af10302047c435bb50067306502305604e11368f5e2b87a4ba1f99a18e7cbdbcb131388b7f3ade76b43ee7b3e07358d57c24b79e689080494d6720aece57e0231008986049bfe58d379daaa912a3b092bf3003c12c4456184189aa1f6ba9d889bd39e6bebeb038a9e90501bc1e34e49a3d00302047c435bb500673065023019cf8a579546ceedb04d7c952464ff4747d06c52c192166874930651442c2305fd0aa9bfed6295b7ceab5e942508189f023100edf65cab293a5e9bf325789a429e8904f0861c20db5b4bd2d2b7f7ded9a8b3b82686106b0bd957cdd8e621f98664aee40302047c435bb50066306402300e1aa9d3af4fa6f9707a0eee51282d9bff764508e11295234583d4003765a2f478481a25fa8766abe35f8030ec1e663e0230691ca616a5c32b02bb9864c52d65485ae390cde915b16f3f28d3f5836b954cf95ea7ab68981cc97243cbcc2f336dfe220302047c435bb500683066023100ada2cd8713b41de4ca702e07ebfac277173e8609cd6296b089da97a8f150319f6e6f29361165983b1a88bbf8dae51b1c0231008b9e90c0eda4dede3b8e99fa885684cf68eba741442c17cd060dff6191fc3250de51481f92034ca128e08ed0c03648b10302047c435bb500663064023066f4bb28f33ab9a569384c80d63bdd4faf4f260f4f8cced972b1c26b69213867662e06e63f2499e41600c75b1575b43302306cd3637da8f28ec58cb960547c61bb3f853534fb137bc02b4e44c48d9e6c6cb5482557fe144e3d8f69a36b08de6c599c0302047c435bb5006830660231009a4744904c65c2f7074505a1071f94eba20055498473af8422c40964454b28837a9f5b09e201b9bbe17bcec2a869056e023100ba4e9d1333002a0944302e7a7609a0f541b0ac283c05560618eca8d7a923062530e69e1adc22d765c548126957be6b760302047c435bb5006630640230755b54e9361a7bbe895d00cfc171aec93017134bb4bba78d2b4372f71c8990bfa52daf8a6e758d67dbf392eff4edb14f02302eac81ebcaae3b3991af1cadee738a8a641a7ac1b643a7c0cfae54db473379c3db2e95202a613febb05dc21e61f48bd30302047c435bb50067306502307ac2e13f088abde62950fe8b064667e3bf305bc3c24cbadf1bf917d505c76b2c11547c5ba266a3fb5b36188d2aace2cb023100b466ecd807167f1f0fa2ca073b9b925c03a85961723b9036a143ee801f41cc0af0d26fc8bf7c15a96a756fa71f23d3ff0302047c435bb500683066023100f73bada77d212aca8e13c9389c3134ece0a2d48716dc13d8e4058bab4a80f244332bccda1dcb445310d5ea689a54ca81023100a0c8226202698966a79894b6224f1453a252a6680f01b60325f41f549ae52b026f04091a935b60b2dad0d8956d4b6b6e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230021bda8bf8f2b1a0eca110a4233e69f2fef1f09d0e974c6099d3c5e030ec901d01085f2ba88fe0238da6e2597ba6b6a802300302a9898b9b3a262b00b5762466b02a67c7d79009f947bb21b1cc5bbea372a3c72e272505d2926eeb5197199641166d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ab625257351d2cfbfb2f4fb9a44a6f01f1b665711325ca132dda104dcba182d8d71616040c42a3b525a69efa2814a6c5023100a0b30941b4b81c7547e9226ce0f7ef0e8657e3e40c6f7f7a174a284026abbc27bf8d3c443272cf9579ba5d070c4fcb360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302ea03e549774e1de9d0d7a945ecc097fd81362b20737e9cb98608411ef73e6ec5707e93247b71d10f1ba26b4343f8f4f023010becb591b09ea402d842e89f7ae7a1be1df855b70f65f553e3491b287742ce8c0a6543ced98f53d7941e8a69bf4ee890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a9bcb10d0076b6be3f9d4122d44746573135d0d834021eb71b9a8d48187f1036600fa23aa5c641833d3209be5b916891023077ad007953dee73d04a866dbd081f7a24967e36d68e6f0687ccbe1392e9eb69b4c534fe8e7b8f64bc37428e953d512b60302047c435bb50066306402302d767cf09df99bbce3269ab6a482c33a497ffdd93b38d3fa68f0dbfcf39aab65c28e1d65f7b4e17b7f5ab1ee25bb144f02300d68859520df67b019cc800c516b9c7c530d10a162000a217d07c4fc80998a666481c80dc0a16f375dbeb2a68918cf610302047c435bb500673065023100f1061191fb600ec4b1347380c0eee305ebe9ae16fd032db9585b869090d8b84ac329d7e5c8138b53dee6bf1b8f65192602303191d2bea514961b790a3302ccf7fc15f5a0c793a4eaf308cbba950c19070696790fe8dbb0b69ada58215c8d079335340302047c435bb50067306502301c99dc42263733cc789f75a96e5ca3bedc27c8bfb343e3ed7781c90eb215ae73ead816fc3364a41d95e85499001909c6023100bcd0774032d268bf65c8a48967c1015dbcbe237fc1a3824dffe5716550fc31f980e59cb2306f18ad2698577b3d8fa2470302047c435bb500683066023100c31cb0f11d304c75492279de52fce1ff0c75cfe6681f0498c2b8a81fa181d966ff8acfffbbd2dc699bb7af2b7f5b657d023100c636a3e8d1d42776684eef63bfd4c6cd4160c0878e5f284ee2bc8d89315d16fee63549e06a8ffef328e90ebd9658f64b0302047c435bb50067306502306b458c34b1931a2ffc2f494d3e776e4e00b6776a6e4fcc29523a2761f5919e49cbde3ebefa410d8a3bd4009dca39bc3c023100cbf5cbda37781f2413659b3948ceb7d200c6d8c2ffc49d42fa94ec6259dde2aaa3052e23aaf4b283bcc0d68cb3a198b00302047c435bb50066306402306371ec5be0b84afe2a81a49b0acc1720570d5d7679da133e7b9518b608f397dc0c8a3a57a1f9afd79ac7322090da05d90230274ed1d70072cfecdff1ab174e219b4541faec2708acdc009760be5fd4c2462497dabfbf5255b16c3c9d438674c2076a0302047c435bb500673065023100928e93415c419ab31990595d1b6b70616af022478d0a1ef2946f55991995f55ba80c0b92b513cb667a1758528de9f11702300977831d7258710c984a48113d1f076c418963857d4c3c651c53527ebdd6e54328e585f596f3ee3211f71d26e8b0cee30302047c435bb500673065023100a07c65f60119efe767e568ddff4fcbd7532fb97ecc23286e69c4dde0ae4ca5b0bfc29dd52a2cb26ce1ff568f005db91302300cc5abebe215747fc929b5175b7ae527b927c7addc8c839198019e2d4ff0841bf597fff0baf06ec183536676aa2d4db80302047c435bb5006830660231009e151a92a1d76ccf5e86abc40dfa27c7c09123160d6f102a8ec51b5c5d3e7d3b81620034cd9b279959b082813666e84e023100b4730324a5228eb800032db9e633f47ee54d5beb385fc3fc2e98b37d4d84f154814d9c746a872ee799ca7068efabef5e0302047c435bb500673065023100c3cecb8de5207d630e8c9237ee0b10b76c034858b33a76ee8107c2af70c646ac7330aaf300dc409a4cc0867f72e6848e0230572446db32c2ad374cb9f05c294d8a261a18307f4bf8bf0d923979425f1d75625f2866b4a383d46913521eb41b0b84f70302047c435bb50067306502301e7a6f188008d03d5cf1f8fe5fd106f3c562fd060a708ccecd6d3338b9799d6dd1caa966b9ff9646273ddcec330bc389023100be05292f258da83dc7b5ed973c62ddef302f7be7988aa327721ee0e5fe2690a992bb81aebf01b163e36f69ba0ba735db0302047c435bb500673065023100f40d9786efc4d4c873277668377d5eee1f5c2787128c9e3964985769055410c8f831d0496f6d29ecaeee9f3da14d6f3e023015ab599171b5ada972e74e8f1a4d30ed5eb752f95ccecb2537c16eeffe019acb88e64e53bf1bc4fbfae88db9b1a91dd60302047c435bb500663064023023674e6204bf4ee1ed3854d8a139ab9edbd31ffb243f49e97971153fcb2b33895e37bbc6ad573b7b7bc68a1bba14af9f02302d5e2c467ff001518fde1cadddc99c3f69eb7110c5771d40e71939c79ccd2cb7041fc5b7f2cdc8bef5910c1d6d430f4e0302047c435bb500683066023100a4324389e2cc57039cf9d699187028880f0626fe7219cee6837ebe39390d949d0ad02d77ef152e584680c22ffd02977d023100e32142a997bb4463d03cfcf87ff6ec85d6d0932745ab9ccf38314ff8d7a1ff3d405545e1584a78df0a6afe3d967426fe0302047c435bb5006830660231008b000c1861132ab18bb08ccfef3272faba8824026fcc1fe7c4ac441035489d9addd2f4be027c72b14f230aaefe50acbb023100d44b8666cbf3ffbab9d3ce308b463f23380daf605485915a9d64725d58134d9c4cd7476300005f8bc37b5780d42d94200302047c435bb500673065023064e193b1a608d2e01acf2959e8bbf3b85cff4a6661a3b0713e11d54d6f00f58ee5c65b7811207357f6fb49ced93478c3023100b055bdb831946e7aa28bd9ec5b5c013823e61cb3dfa39cab64561bc3c36deaef966e82e32d0758aeb3da977b07a746a70302047c435bb500683066023100f1f074e4ecc825eb956e603e3d2ed416ee5481e59f5dc8cb505fcf24bc0c524ae139760ed83165fe88f60444e4a307c7023100cfd4fdaa06d148d8eb9dae5951c4b6d4af9b10f3352f05fbdda796f0c21b1aca719825f1811f1b0f001fb78210e859490302047c435bb500683066023100fdfd8a641d52ae1d0e89488655767703bffa71780e8b0838983bbed8bf3f9374eec78f64ccd3c55bf8cfd19819585127023100d7c06923f66493c24662c379838ba104c8627124124c2378a36e92f1ae1cc3f40eee5347829b908d5bd86de5201f07090302047c435bb500673065023062075d84df8bb24442025d671650d0b3a7bbc8703f6f9e092bc474803e4ea2125ac7ad6ddd64a528b955f3f8a1558e6d023100e39e15e07c2e9872fb59fa239f2642b649b653a37ba11e6d0fdae92649fe96a1f4356f27b2869dff44f4b5c38f17ddba0302047c435bb5006730650230258a83ba83b849533aefab2ba18346ab7480cdf6556ec7c7e1c7197ec20080da865fd6d609eb4373536239c6ed8c1b68023100970a8bee26a31480595a3993b5d8628cdb37ddfd7236bf30615683d621e389f66b7739f67bb6dfa922761f8b1aec14110302047c435bb500683066023100c5d54feaa8504138e22d4d36c9ba638947d3780aa007526d8f072e5b80f36d6c7a22cfe1fd0288ee6f2ac761ba429bb9023100e977641d9e5704fe6a324d39debd8770260bef9f779de50ea6b6d84c3ca10234954d9743ca69cb07dcda08f40616d8610302047c435bb5006830660231008dfd4e8c84e2371705ea4ac84162f08bc82ae9bde232cdeafb88a53d99a50aff49f00918542b400d166dd3f1a19d09f0023100f6b8b85235088ac00b3c0bdad82958ff81e730dbe5a202a39baba82df67108c7091240f982d9aed180d23f37af5b143f0302047c435bb5006730650230457980d36b489a225ca4b9d733d6b6cd5904e257765c6aa5ebc4cca6e7c588d2440729dd18620baf4a0fd4932bea997b023100ff0479353569d237043e5dec72bdad8222c4ccc6f832fc3a0ee530de2e4dd352b9ccf565827e99c4896edc5121ce2c4b0302047c435bb500673065023100de726159063a8cb9d15991dbd697612c09fd18eefbc4ae53d353cf5aa0f2cda7d4b0e65732db45e0936b511012c46efe023017ca296d773b72a481a3e9ea6f835fdb0807f3c06d4007797af89509b2a5ee5c627d9e7fdc95dee8b85ec7b080b1fd480302047c435bb500673065023048317bf8bd0d6582fb35590bfcf013c43fbb76422863560b2f0f2000018bfc915a445b5d2f51592fbf4572e5eba1482c023100bedc2ed67c41396750f9eac61db9961fc615737b8d68037fa6aa7335ecb468e604c51f246d669d565472255c726f1bdf0302047c435bb5006830660231008cf798f5cb9120ddab199a37d675fb5e7e0363835007abcec57e083db9cc44ee82be2ba157fc1f4e4b0235c1957f4525023100e4b51fd0e7576ebf3a68cdbd43cfa6ccc39b04324c7af15e7e7a16d79bbb55ac2e5c4fb79b788ffec874a274b1d8f51b0302047c435bb500673065023100b6952959ffd971c4e7d5faf5b98edcb8e4e2eae32532c43f788c28f2575fcacf726dac936b8103e2ba1bb45c8f005bbe0230562342285e61e49e2159992b4848be986d4c882c7ee9d01b3b5384bfabedd473cfc4d536fd87b6936630c6819de240080302047c435bb50067306502306d56c2a774f41cc42ce9fc80b8b48daef4b780d2130358a6f244b089db8bbb1cf7e7722816ef4db013e4ffb4efac30b1023100c0cd694c1d9fe8f03092763ff310f09c07596a32210195a2eef3485f58c4396e2455f1d5999537fd8b1a914811b121df0302047c435bb50066306402306576416514ecf39d630828a7fd238adf01db3570a766cb5c6fe959418b9897fbb6e7e4721bb09f4fe74472bfa8f59a9f02300254ee6e10415b23826c3d3765cc785db492b1237ea47b64a3ee24d2e187a478a9d1b7eed78b9c24a7b26061092c675b0302047c435bb500683066023100ab8ed7b81e239d08f210fc16c622d5ba90decf7f482a20470083fbad81d4e7bd149acac35687fb28a0e270f983a78a9502310098e55bbd3df09c4fcd25e99c390505340f2997131d176b02cc373135a21ec013056fc828309f8f7eb8c6b55d4e54a19c0302047c435bb50067306502301b8d683eb7df855e740577be56adbaccac8cc1fbef4b3177739015f193360c1d435db917986dc4a7e24e29b1c4baf1f9023100afc9cea1e0d9deb98452608198a9c4b0b8607df33220a3785d51a9f4acbe49024581b26d22b74629daa84206082dbe6e0302047c435bb500673065023100dd688145f348ada3ba8a2e9f1cabf907193b01c66133972d92934d897e1c067133cbfaf1b09d95fc9b1e68b2afa053b302305fddf24d4ba90d2e763b48c23599058e44dbd3f81f7351a23aa20484e3cabd207306a5ac745ec1a9dc70beab677d5ecd0302047c435bb500673065023100be1eb144e0738635fbecfe6b20d74f696cf148d0fe889dc3f5a71cef1d99ce97e355840a79555cf9b56a3f0df589fac102301ef03d2714ee416d362cdf0c7725320e04bffaabef23f1d48f0d1efc441f57b3a3d4cc03dbead901975e3c741214cb440302047c435bb5006730650231008354d2334aa2002b478ce8b25ad412024e3450c741777ae91078ca7d762c837ceb6ba7817327cf3006b7cbc082edb6fc02304e90e20b31d7d611493ec204ccc9ed7a7d81d4688060540b84f63fab19a1cc0b1fb297593ce699f5711617889b04009b0302047c435bb500673065023100809755e00f5372bf1b905d9eccf65ad087d7d77ca233bd6ee8eb167b53b0a393008311a601c822f723fe026dcf51519502306317721f85777ce2281b1a87c03f8e3cb1bdbbfc71cbba3c2c8ea8fdd11142aeb96c1cbac7c73cf0c8df08cc95e3e0090302047c435bb50067306502310096bb716482b91c0637a24995403aa23b3b80387efed4d398980333a577842429ae93e28ac29f33a1b8c0dc888b1fa41902306d7737b92b9517e38f5623b7fbe749a98674c38f5304b10e25cf2f09841504d75500470edb7e907763e49862051f6f1d0302047c435bb500673065023100f3c38a7b2ae96838ecfd070189f71d8a17c5c5f7085e209b5d9a8271bf39ae22c227825c3e9e83e93fe720c5b1d98b6402307a59b2634c33c56f3c89f9ee4f490f02ab244dda15ce9a8d3884cd47b84ad7e6ba1b683de3d57220615d96b9fc6dc8a30302047c435bb500673065023004a10e09c8b98bd130daae419110f28fe2807d86e417e703dd0cb7871fe7d077c5b0b1d1a54a8a7c3f9644905535fa6f023100d3f6a7f8c444cd0332dcabfde1b91762701799db99f06b2cf5344592ebdb8787a71ae7330e834c66e36804a52c2f1b630302047c435bb500673065023100c4b3bc0fcf0c5b9e03410da622aede15f530f0176a332ba83a3e98179c95ce33b2fae167c9e3708092763ee4794a286b023051fd6aef26aa7b250f25cff0b70217639e38cf83434d9ad9c4d67ec14d44e718333bd073bb964725e754ad832db3b4220302047c435bb500673065023100d52d5021e3b722565ae01e109e00f42b8ded97b93383eb3ab8619681d1dc4a7fa5d69e9b759a1319daeda972e1c704340230509d390a4e4f3220c133f7755864524c88e71b9cb607bedd0a56c5d40f690d9474157cb7682168fe5f5747f4c4d04aea0302047c435bb5006730650231009e61d699476455d8bec1da0827d68770c82202cdb3decfd10d0a24c20f2db3297d2ebe033f9b0d733f6542fc6844441d02304e5bb0e6ae008cb5cb42b2246dc24a9022996c7e144a9fe29cdd16090af203ca26d02e160ca6c624252f367721a916550302047c435bb50066306402305acf1466f0af5052ebd32260d425954cabdd55345993b7a15446cecf42a60246f638511b4abc031eae46e21e0608e794023061dd498dfd43f79df728a019124477c49e553b10f1005dc9ef0fbc61b14b8e2f9de2ce1a5c0ee80fd6e95329342d9a760302047c435bb500683066023100ceed1847e477f497e22e1e3d29bdfacf37000c86eac62f517be8c03945258b78961e0b040bcd5476e69934a5b754ca5f023100f34aa34bd1cd6f58456542fe6df87862433f2ff0da89968fbc02acdc066437238e1c0060e4c07a39bad912c31f84c9740302047c435bb5006830660231009e7ceabea532822889514871de3416fc574440fe3ef733c0a5cf98dcb3d5f8cc3b627acdb2d608fa538a64517d548f14023100f44dba59f6e7809c1ac55dc92ee7ca003b685520a32cc09db3e04a4b6dbf3c9a536bd26386ae9eccf03de1b66719e0ff0302047c435bb50066306402307b282d43391d540159430c21769362092167d591390adb54f457530446e31b87d119baa64f0889bc48996dbd6cd273ec0230621efcde570e62fbd73ce4a723c940d345d1400d34c09f1dea068a7b6bfb96b5551ca88dccc641ca6e593f7c144d3e000302047c435bb500673065023015be3e64a55db396e0ba45d7912556a95d4dac8b23fd82b840342897cfbeda747d5ac021d33a71c75d3fcc42e5f0c3d90231009d784fc1b028a152ede7b34adc0e1942a629adfb201ece523d595877f3a9dfc315217ad9050d0b32286356b6f297f2bd0302047c435bb5006730650230770856bc92826d136c85243be641d0b9c9235fc514eb34d130c5a2cb63031ead653f156c9f73fd2f2d077f4a0fc35ada023100dd49ef04b766f88964291985ab6ae8118218e9e1878a219809c87f597b82e3c9178354938505000eb4ebb30aa6c9d87a0302047c435bb500663064023070cebb328eb93d7d8a8a4eb333d20bc0b1f2ce59981337fe96e71a82c6cc629bc34aea8a545e764f70d17a99145154c602300c7d33de8121fe0ee7f715049cc03b2861dfc74146fbbb6ed9ef365811d47c9f92d002605c4d2da01e322c3fb55330d50302047c435bb500673065023100b5ebc8fb6612e0c747cb1358b2e7c18baeeb419a2ef2178d40b736f988a3dc7ba1bc43b618963af3787b84a84d8c28800230406567a1b1fd6034d12dbf203d2c715319ec04e2306f3eede1aa54544cb3044127e31689274b3496ba2c480c11cfd9890302047c435bb50066306402301316ff913727a20cc8601183f54f599f71b2328fc64a915088f700af1ca555b41e1d34d57ac09a7ea879dda647b182d4023019e572944dac550455ce3ac1f2e56ab035eaa49d12a7b96186b0cb50c5b0b69bca08e760f928f82355398da7bf677b7a0302047c435bb50066306402302d48eb0c5c373c437410a5c05e88573255497e8441876a2225709a65d63cd25ca63ee2ae6f5d0f7e7ac7f160caaa420002305f20f8a69389344821423f7652e406dfadfbaafe4691aa32d4daa387faa2c991c2408d9258d3de623293142258ae4ce00302047c435bb500683066023100faa5bbeaf770f1c6c71c27a75c86837daccfee21731f527b3d1ee1a66bc50b71c4b1bbbccb8c1945bfb969d1735534f9023100fa097ca098cc2a57730468ebb4d444b507d8fcc3b617590281971319d511a096d17339750e6805054b3e00bb745146570302047c435bb500673065023100e9f3f9062f92e74eb0a80f07b9977d3e57f1d790d9e23911ee373b08ce9e8943c4e40a0327bcbfe7dc6e7ef83e37a54a02305b63df7297613ffd03b8f3dd04d53b251a95b872f28c7d3445616cc9ea1df2e20421938c7729c828366a79ef89e368160302047c435bb500673065023100a8a8b008191fbcedcd6e5660b273f2e346b49553a0ad7b29600c2580cfa2710b1efbeb40ffdbe58bd10b8ad0291aca680230648c1a405bce830ddc7d5c5a3ddda48029c89a2ffc906c2a88bc3bdbcd314c2277cccd7962756cfd6196641d8d158fdc0302047c435bb500683066023100b6f64fd267a5187cf4f4309ed06260f339d644375afa28492c02e4643fb1e981d93e4b79b2e5c962466aa68a1fd533550231009dda694f72046e2e30ddff93f518d88c96f7ee9758d248f9537059f0736c2877c19b69bd61cb506ea148abd84454b05f0302047c435bb50066306402300c561a2e85f2a8fed5fe44413121fbaa78161ec06dec4a6d6ee9f02e7de7a674edb7953626a67b0e0d4aa37631a93ee10230655fbd47f10a612ad30219605d305a7cfa13d06b491d463eadcb0967cf7235a76bc275403a55a8f6e0f7dc9d9a2429690302047c435bb500663064023016bdafa3d090aca353da1a18f64e57170ab3a4711c2a48d3e49b5d0788af747a0fee1eab7bef19f5d02e7b251ae35f4c023066c9221f6dc1b9acbf99b3b7e9d2abce758603236feaf1f134b6f272c03fd1480d4e2761afde9f1fe0088feb91fe14a40302047c435bb500683066023100b81269260a54a396e52de7a6fbd5cb047c7d2bdaddf93176c4871ea6707f2a605b5b88b0d4c36435a26124ad5e7a12fd023100bef20ddc821469d21d1b77a0a9b7b72b801af73bf2f17726ab3a229fd2bedd00050087d9adbf26154e87f0a4626a61b70302047c435bb500673065023008267a95939342ad14f6daa1c16fd30588ce3bc967d018cfad19db06738b4623f2edb42e7b592cd512445cf2dfa8e6c4023100e851e62efdfec4d0090ad0fdff77464de426e95ee29c7086bc988069c981f5e722a0d262716ca8ad7d2bc6381529a2e70302047c435bb500663064023075d2b10720cb62546b209b87b53f5b37713e55dfe3b45e3380d3161ecd344628eab35b1bd80223b2ebc4202176c5d026023014819d5b7ceed4fa91821e1e9f4bda27112d64ee5ca4d2b4a8f04db8aa59e72aa2ecf95af8e22ffc6bbabd890388389d0302047c435bb500673065023100c549c3fe4f90357fe3d99e5ace8f316ab3274ffd3151c68ce1d59536a942697e3973a9d005ff5c53c5b1e55ab0754f4a023078468ab16340cbc43ac6de51af20a9b1b4f3cd575f4143da509abbc8415f1cac25d94c760f9c2eed95d34c120ca5f4680302047c435bb5006830660231009e70f434fe4f02b69bd7104851cf6bf777bce0ce87fbb01b75ac20755654243e284803ae0334c5fb44d9bb4b792703d6023100ddb9269c89782b7eb10209f736daa43787acfebd409f5777d50d3a104478764889fe6c2d7c57c27132e3492b0e4f27320302047c435bb500683066023100a9125ac54516e6df0e2495dcd261b8e9fba70bdfc4fec5d1a5040f0bd40c298432d455875ec4e1cb6c0570dfc106c979023100dd7b784a551df81494adaa3b6d2f2476eee9941db48792ef91073bebd93541e2eb2a46f853e7ed66f8b283d512939cab0302047c435bb50067306502300ec9aba7e0a56efb10ca2a50d203f540d6eb5f2f45e733b77e138adaf200f7a4506be711f96788586a67a5064864ab98023100c3721257acc512dfc688a1fa2daa3696216db43df09cd8b3a61c4bfe847580b8230b896478ef91ef631fe12c1b2e63dd0302047c435bb500673065023009e2d39c172ac11340d02ca202d945d9b8ad1a57cc6b4c43b53e127946cd53c0cbb00f573a4425f8459ab179490220480231008163c8690a5e9c77fc45df4ad176dea601f69525c5285cf143aebb5ac721d941063e511a9c75d973945eec2be1df01aa0302047c435bb500663064023040089662b1e38047c18c687a90a71541faf31a414588dbdb51a033a70a64a98ae42b229c49f57bc167fe391fd85eba5c023026d64704bc1ac37d90416c1018239b9d027efe1128f2bb8e69d9600b13ebe00d0137d40eb100f65cc83b84c9a38fec350302047c435bb5006630640230438f0e5d066beb22e94c6ff09332eae7232afe439b4a312f46e715ebac07b84ec5525bc7d5a892ad84ab2643b4ed3837023059e27a996ac27d32d4e4ee9bf01dcfe0e1a59fa447bae75163fac40f2e1daea901846fc7c0be962a789ad29ff21288340302047c435bb5006630640230783ea79cc5d5518b3afecc149aa137fe5466b822180925db5fae8d5b5303e6b685bbf287e04ac225d07007c161e8dc05023005bb0c7319ee35eaabf8c21b340f2470acbd17734ed99b05e30f05f4d8eab83ce5d5f047c50e09cdffac6410fbfb15cc0302047c435bb50067306502307b05fa10e14deb93b54aa069befab946ac1c32e31ed1edc0158aa49e15755af4516fafcc48b03023f8972ee1d03713d2023100c1b6811c697e03eff9a351f7b2b7ef0bb30280cd118f1bf9b2ab5f5d757bb3d5be8b6f694f4fb0ab6c3a38c9f5e4ef140302047c435bb50067306502307469bfbfb4efb45d1e5881e234b9acb6b28d2b2be5792b8ce25a619b8693c3ef12ae9d8ca1e525d228ec101d77aedc57023100c7d32381988df1a3090ba1d25f1466bf2d8bf77e5a1cd5093d9fa3c445e0d29f0b79b1b6c236200f056ac029e5ca392f0302047c435bb500673065023011252e567e50538805593f50802ba0613b3ecd1b8d60b98ff9db795a0f52db935259856954d1ad40b65fed22ececa3d6023100e198dd183b06c25a5c5d33f122488d94a11c9b8ed2c943637d4822663a4d7ccb42905f1aab514d8b420bdca13fdebb830302047c435bb50067306502305cee96da90b38684081d5e91f5ae193354ca8b9d45ebd748d257f50064b67f355cbc67249c67566a7f78113851022352023100b189182cabea504828da5c50ea1b541c8fb333bfac05eeee3ed27f82c5cd4a78da2dedfc6f7149fa3d9138a4d673cdd90302047c435bb500673065023100805f8ac23806a8682db617fa081c68c7b52d787330430ea38684f5a75c2d57263481b95d5ef0e38d615fa1bcbfcebc760230660b61febe54e03223d26009e21b9c5fdbffff2f5f2f1baaa37c5ff75c82c634de0dfbdedae4057312d9cb5a3d2f3abb0302047c435bb50068306602310097ca5cfcdb2e24f29d575cceadd72e7f1fc95a1faa22a7cda0d33f2022ef09a190b3099228b12359b8b6cb0a05945f8c023100e9d81f3706836923ab26b65f1dceb5fb95cf6d896c45324721a4cd9fe767537a7c3286337aabb077047fbdee14bb4b710302047c435bb500673065023070360f5447a628c2bf49e374d73dd479555148a296cd5d6e3c1d3548b1a8e394a24f626a90822d02adbfb1ce25000866023100dfeed1d676e6427a988007dc0761e82586b3897c6c6db8bc57c64dec31fb903916d943c58d25e9b67a90f0cba284216e0302047c435bb50067306502305282416e91d21bdbd3561f23811ecf9038781ed23e0ba39e1907e646c9c3ec29d7adec54efbbf6a151bfdb2373385b6b023100c78063316d9ca2bdc111cc3e2d1395cbfc0d56bed4b79c75db0ab53c0115ae1c84b3723d008f224e4ac31827afcd79e20302047c435bb500673065023100f26013d10f317cab0628bbf5f001f021ad16988e24b6636cbf47c934c0e4e1cbad1acc6d93936d1b2e3a9f4468355ceb0230621c86eb4f173f47ae90502499acead040f5ab4fb0639c274545e68a1687abe0164500a6e314cbc6868168b2b88e63260302047c435bb500673065023100d40c6df62b5e17229bc5af97121141de861010c60ed3e95e454b0f0d83d4c541400bfdb16327affabb0b53dbd851ab130230150ec16a5e74c5ba117c7b6cf40b0f748b47f772a163b5ce16db5f4cc38d88ac99c36b2023e1a8f9137d825c326f9d0f0302047c435bb500683066023100a4bd0fa8fddb58ee98a033446e7381133d62e4766bb472f5a1fedf2de428edb15fa0293b61d967f89fc206895330aac1023100f26048cf5fade6e4d53ff1ad009e5fd76f1d0dcb6122fe67628340f7024f2afe04d9b9b872c936c0b39052788d11c7cf0302047c435bb5006730650230339c568f56d65289041697f9b09149209082f5a910cb90dc013f1d73e28abe023c12a0872db144267a4e88246af2c0f9023100dea0e1b91e8d46aab5b806401371ab7d958979d76b3d90ba12b77c48635cbbebf5eab865180e66ecac6588743d069c280302047c435bb500683066023100a4e29b8bb89166fd6c91c5a0334e32a488d92bff1c838abf83ebda45b177af5f7e6394f3c31bb59c08d0c8b99264ea4d023100f54dae7410235c0795aa13b41027c306c200cb8b0e42fb5ccb798355bc582df6ed4047004477db3345b92a5777ab68460302047c435bb500673065023100e610fd5ece327c5881c62b144b8e64235d95be419c482d914127a1c0a1fe65e5d30ef70ea90eadbba3b7c1bdfa1f151e023034648e441c0e1b01d5d2cdffc0d33c992ffc939b1117365bdcf446ba665c353a4b5169d494145915e2c1a08f8476c19e0302047c435bb500663064023051c531cf3e4bf539d3d96079460eca5b11683c6c82c377cd0835966eb86d870519c678d9b07ea3aade82ea68f68395f3023008101cfdc3dcc6cc632fad4af1a0ef1e633e774e64e9a9d480616d4fe6058f8e32c26ea90e46b0d8c887b543a2c0f83e0302047c435bb500673065023100967e235717fb86af95c102f7c899d7e80067350600fe348d58376e7fad4cfdd431181735b8f62f94cf355d98e390d9f7023022114477e33f4433725a9ca41cb72a68c7198d1d91c2b8bc2fb87ab4d412acec5ab46340376290e8b9b0ff39b23a81bf0302047c435bb500673065023100a8adddd29a226aa6c92a42fb8368505121ebaf9f0adde5cb5a41cd92087fcf7d9bf050a7c0cfc2313a579afe96fb57cc0230406f647161c088a7376a83c665f33fedd3a265e800e0535cbf966ca167fdacb559c0b17a4db470813c214701579003fc0302047c435bb500683066023100f99221170210e02bec3a88871603243c778e8e34488e148a75039482b52ad9ca91aa793de89d3c12943bdb95759ac046023100a22d4c684caa7b1ec1cc38a4f3331fb98b51b4ab23f8e696fe5627d719a8f534dea9a1dd41711b8ca7fc480f503fbd550302047c435bb500673065023100fed5ed38aaa7374c6c2e2569dc47423a5d2a81175b4d62b892df28fb7c9076c0942b246ce87dace4ecee0c06f59e01fd02306d580e7b21077703c4323d945b2d5e393710211c01291bf07488f6e47115ed474b7273a051680b0716d1ee051749d10d0302047c435bb50066306402307e25b1b06f981ec960f7fe67d56514c9ae80150693a0a8fbf94299ae1fa2289015580d3d3c6a0dcd93c75f6943e66cd302301183b1fdb0df5890479d608fe92ae6e8dd77c4edfcf7a6be35758428d01225b91123e70bb3ea31c09b739e5605b9ef6d0302047c435bb50066306402306559e12de4967a7ea29cbdf05c7a6ebb8606f8c46e15fc00fb3d0a734076188da8e1c8b52856f1f8a9203ed1997423ab023014d93dac679b2a7dfec65835c8d1cdae4dcde7517bd7e197c62044d4963b33e41d811654ebe892383e1f6f27b9e9f73d0302047c435bb5006730650230541b5485fcb0460dda3d07feea494723822ce871e7cd00fa7316b6f3b5213755be7db530fabc1681eb541f085f122cca023100fa551d5f3c2b5810421ef54d6770f381d55c9bfac162d93c7aaf36280f7dfe1178f74ed28b15d429a7475e2bd6f373c90302047c435bb500683066023100e43d3c827939896d2ba1744afb95d03bb1bd712107cd54338957872d8c774955fbed7ba0b3c1968724aaa5049156d66e023100dfdedf7be808b5679012e6acceea4a23c75ad6b9d401be75c1f0c831219d58673fd3182d1375cb1db861195f2f9d295a0302047c435bb500673065023040d861485afd44362a8bf332353f87360c1ad96d673eb10459248701fb74c0919c7e8ac7facf5318b4757225f092f745023100dc584665738bc15d59374facfba41ba34f4d69a46dd1361930bdaa1a159caf7a6c88f5b4d2ff7e2e942316a36ae62cbc0302047c435bb50067306502307639cd43dadb8a9828f3730e1af0320d3457c9fa2f020830d8476838da67c8f613e53d4c4c04c79d47eed6fe15b252fd023100ca274a434964ceed9a02d921f8deb38f2898d00aabc50ebdc284a8b4a1ca3cc441c6bfbcb2eee4ed65b7ed9f44051a2d0302047c435bb500673065023073267f43cc300adcc00579b2b5c250e149010867629756403fbc44b38b477a23e77d5af9436d95bf8d08f33e0e14d5ce023100d774c9e66dca94b7a3275a6afb4a8a4ba4494f0268ae24f13fe6a159ed70c17df1caf635437512bec3dc237059babd5e0302047c435bb500673065023027653b5a7a8485d27ca2019f9edf4c94bf0c68b906ab51d814e375e34e1ede5aaaa410f66b6a51f501bcefb939c10b33023100cfeb91766cd4f15b23a70774854c99d7428918bf4fe3835630792bbf58a85a1d3382c3cfb0ee8742638e52898a57badd0302047c435bb500673065023100e28757c7f3176bcad3da199d9d8c94fbf1ef965bd5c901b9072b16a4e65d29c930f5be4b414355afe66dd0d30a4b942802306b9772733f395b8339fad02f281e75698be1246290a2217c8ed402e8c5cbace68f5d7313af4c98429388afcb57d3045d0302047c435bb500673065023100eefcfd94fdebbf494cddf7960b4b0b750590fd87e56fb35fcba3a8b1e388afad664f45046068cac00fb1530519a103ec02301c19a9399a7beb1dd09d256ba52715c3e4b4a26e98731790760e59c25b3a56871547ab566e4c59da7a8983ffed200d850302047c435bb5006830660231008900f442edeb11fd3c946fe7cb7b5af64da0d0931dcc648690e7c6a1b14891ae5355ae3b77cb0fb4dc42531996fa1257023100e28305b5e94b31d5381bd0c969afefe2ea966a0fa52b4b4e48418600b597ee4c7897f83a9f9902939fb857fe4590edef0302047c435bb500683066023100df12a952231c402eacefa326a60d2dc81c6a8f454d349d1081ca183ae9eb28f815106e79c49f57d8f04b2d5860bfa321023100cb4030a98747ce4f6141d3a2309abb6ca08c084ae48824905c10062c3009e4a3c3f978ffeb64183e74162c864dd207420302047c435bb500673065023038c2f6df0f5579e38dc45c6acfe13c41e41ce2ae1d96be0795f8daeb536bb625326b56f10b7e79f35baff12bec3d3113023100fa88a154d39100d5279da172ec6704ba96a4c2889212478c4f0abce1f4bb25150e7a138536805eacc87cf4d9bc5960a70302047c435bb50066306402305806e87ac68a2e4ed7d129326ff3c60717ef530eae0eecf488f3c6ad8b5a4f057eda9b1aa311e29252fdc25703b68d800230688647db705ff3769dca1d93b2b98feffb3e8065bdfce258fd1b62755738efb3f316e7ddddf32a6222a210bb101e3dbc0302047c435bb50067306502301e90ff0ab8ca3e4965d1a14620ebfa24ef71eea66df7940426a4b3d6ae98eda524cab78c425707039d56a3f0b4a9817302310096db996b4179c730095ff81462e255a593da74a9b8b8687583c94d0d411f1412ddbd850053dab0ee5a7392c12ab1fe340302047c435bb50067306502302c988b69a6838b18901307f7bfe790a8f49004c106ef8f228122036491b6b0c3fdb8c79a92fd1c21e3776132bbe1ae44023100d5bc106aa35d325db862d3c8b5d90a4b2fa4680c7877ffca3e9e90fcba7207dc94b697bedd4892e9359f771c6cfe25060302047c435bb5006730650231008d74b403b9479c6e0cbb47f3c5f780cd9058c2b71166d6d584e47fdf10d45a58095eb63510baa75406168b4562d7918302303649a12c5f9ab6a887dd4be0b4e8909b5cc65078d9318525b39b3a640d5b40bb33d5a74159b9e23162e77b7c670f67290302047c435bb500683066023100b1b2ac36539cb719cfd5521eaf75165a4b201f72c132dd6073fa15bd9878451d37e25c8f9e2d439bfabc23700d26a30d023100b8af552ee9c8d2a74c67551275d3830092589ef10abb2cd0c235d0b4715ebef5bee76450fe7054f26996efd372c0ba520302047c435bb5006630640230628ffa504e59f6c5f8c70355617d017461e6d53e3d24e38fc7e85ea236e82936afe185410a2985cf81feaf357c90304a0230174711caf9ce8c5b862f0bb39b7a78812b9ce6eb475f291abe6af6a018209de66f34fff44e062d64ec5f48ac906e567f0302047c435bb50067306502303dfce13d1ec267d63d9a9dff134e1e984a10b8b0cfdd36b8d11c60fa4def7175d1aca6a4220b2ca9b880add4ce7dc18d023100cba54f3e2ad8840466a83888317479e1582cd7f875d42a62d91b78b70a99a55b98b628b4cf88a1d501897eca89cfad460302047c435bb5006730650230290dd7205e3dad496a855c701c8645d2413337432ea7e57063e63807eb8c73c879950883aa7269b30428ff3c828e7351023100c7a342c84e96d6e34f5d651d620252fc142d4113d0b9491ff3f580a6653443012cabc7d626ba96c4cde5547f5c6406c00302047c435bb500673065023051771473c5f66ed893379e81c9e4d219a2cbf72172d103172ddb971c5491ecfa4524ed182ba765c8cd75e3bf28e404cd023100f4e3f9a309880625812d1c8fcca7d3cdfe48b38648edd5ee502ecbd8abda2cf54113d8c83ef1cbe016176f467aa022c20302047c435bb5006630640230687e8644b30d796922f047d90df7a028a5a909c224ca34a5d7612943b22df481fb5bb558d7fc0c0f1dd860399891e25a02300f9edb9bfb0343365ee034cc9693b9dacdeec90d73c30216d7af402e8e30189e33245db471ca3c9e9e7aca3fdd3bd9340302047c435bb500683066023100abf3968c04d5e54ba1829a0d3f5360ad3a042f0a4942d37c8db16147e13c4573d80fd87a1a90081372e69e70059dcdf4023100fb0c0ac09695f744a760992ade384bd880d2e3c5bc14861fd255da59e9ef6fb06b0ff96de358178896cc9bffdbec98850302047c435bb50066306402300c102a361d0ddfca1418f6142d426dbefd3157670e6900256de98bb7174477cb39ecb829252b68b183418f1ea80267de02301603441e4ee3d120b9bffa283ffb97c701b60b68febbcbf26fc6cbcd133aa16b29e209406a14c290141b85b7abb93ad80302047c435bb500683066023100f54ac7f461393d45a3bfeea8677d8093145c4b5d53e0f40ce44e97305d0b47631d46f862b3feb59c698dfa96816bcb4c023100a4b136c709bdd0f97723603b3e2c3e3da71b6c2d00c7f7b7ba4de2ad271eddffe1300dcfe4a7f2627a6dcb3a3e9c57e90302047c435bb500663064023032ff3c148a2c4bd9c181d3650aebdad2514c65dd939ac749da7c40e115f9fc749bb69bb36a1fa9d0831e1eaef2d58d5302303dabdfb57cf0dea3c970277f394e39ac5d30920ffdc00c8af7203141ae5f864cf737907b66ae56af86c33778c2b45bdc0302047c435bb500673065023100a8347ed772d119e2d164253ade452d33aa9cea0add0ef2555362af116e2d2a650b0c64543975e47aa4083611896980d4023019cef0d3085b0fe0567099a9f8e40905068757e8ae53b5afe5084ad75d211400e998441fd5472f76cb154d5e70eef2750302047c435bb5006730650231008605653935e32f5a3bc25c9f04ef93753cb9a214abbc21a5fad884c6dcaf089a8b740726bcdcf76f6cf73b5f49bd2e230230069ee5df8014ca4c0bd0b810b2f9e8b28d72f6aa780698d9c70c86da6333e9a2811485aeb702f229ae55fb648f6d6f2f0302047c435bb50066306402302094b937dc4de58990e290958c7116ec2780d977547fa4ed28c175c1b6676a7f8354395037aaa5f700629f0ad6ba1ac702302432b41f395ece4ad034d85e7941f718e9054d2f093c5f610621f788dff395831bfe01718fc0902b311ab7779a97ec580302047c435bb500673065023072232045d4f5e032429c885dcd2e6358f4b624d295e7fdea3f1f8f001fe344140a320a47c669789efa18564e69ed32f2023100d67e851f92bdbac7efe61fd88cc6e9b6a117859c500e5b323106ea88cbe371d587b07b689b00c2c5574301c77d496ea60302047c435bb500673065023100f0088d0b9432b4c033542fc40e999bfcde167ac103381e5e3d90f61a78784d120abfd20211592c14a40864c6f58d55470230222660ce324cae32db3d27f6b22f4a8b5572a76a2bb24b68320877948138e7e2f2a9972b67cadc90a16725429960b5300302047c435bb500663064023047b2366cb220beb0ccbee6d68dc677aad1a09d9328daaebf014c93405e566f8adfed1397cf56e3b305648cc33da17cc802304529ccdb247e741d6ca3c77400a7973b90de072883572ad0b69fdb26e78dd407b222d4b8b4ea3ab3cf8ce19b372322600302047c435bb50066306402303f72050558690b54e47cd69a3122adc525bb0c6aa6a38940c1018c59373af91ec7c25b82d47934ecd574d9c68984946f023076136fc9983bd1f9e17c5ce4c5cca42973a6ab9a9d493083015bd7c018b52b70acfb1f39c6e2eff08ceb2fe577f57ea20302047c435bb500673065023037d35af36f55f1ea3805f3f565137c5ce3886ca24cc2a5a8dc3752b26d6401c483dabad9421553fbf56fb2e314444de5023100b28ebf1f8bc2fac0111733e91d00775049c106db8267d1b81f50200de04bc661902c0dbba472cc949ff8bee25d1d12140302047c435bb5006730650230219d79dc670228b0d98466b86e021c15f950a01d7710c38ee3815352162b198e8def3934365df338280e975fc70724a9023100b79732ff1788e52083f4a633ffa3e1842dba27e87dee9f38beb51b14115ff82935e800eed9f11d186e43c6b670a81b8b0302047c435bb50067306502310087627fc5a6eda251cd2e04d539913ca30453f3435c3d8bc8257a42085d02b2c6f92e14c17122b2a55e682bfbc58e95ed0230545f6a774ceed1e729140bb5491993b35c058ffb72be04c950b40def3050707200bc35c802762b61a315fb92f7fc25170302047c435bb5006730650230507e1cb0fd9e517a0be6cf4543d6fed93fdbd74529c0aacbe64506752802ee0db7933f94c42c1b5db450b65b4f264c1a023100ec6e7c3eb319bf4e715633ea167e8053d6d349bfa6ec824e2f67366226794597cdea79055188a3f20a1541fac19ef1450302047c435bb5006830660231009ebaf4f282c23f584725a905f7a06b0c35b88b502af662154e89693ff693e548ec647b5234f59965201a1aab04aad753023100d2c0ad4052c9110a70cece7fe31e889d96b26fc691de65faef081545c88ba72ce73fc0248dc4631717de9f24198d2e610302047c435bb500683066023100aa3734dae2238e8f28887821e1bc49d9133ebf4af87fc5d49e0d54144300f814a5e13cc40db90258b8d6c76051eb67f9023100ae37282684d0a4706327b4338b7ca7026f96f243f0391cd88ed582979f06c12dae0832f3e59af1079c0bd1f15647a1f00302047c435bb50067306502310083e08fb041cb85b9a2d52536657b93846c8c7f3c2330e23680025b3d831a063aed88eff887b0dabd1c9ed15dbc1f0dfa02303cbdfbf09cdfc479ed30555189aa159450fa5d47678b5a26615c8f76bcbd5cb56ba26c65a5615a7a055aff40cb54f81d0302047c435bb500683066023100ff17fa7273a7496265e2b49a9a6720c3a1d97a583b1e9ddcd69f437ff0fcb512ce8e6bad442c08368042e98dfe71e1a7023100a91ae7058fdd966e290b869b51605daf1aaa31fecffb3486188c12143bcef153653e817e5714b258362210820df05e1e0302047c435bb500673065023100f2f9494bfb78b8c58df229d92689ba2dda6ae883fad49fc9e145d949a31623b77ae219a7b51d3b3669fbb05ae32b2449023008b5f90be48a13862bebb90515dc15e170bef23918f6738b4eddc221847e03a55c56a2d98d3528b565464e6d3dbfbace0302047c435bb500683066023100f00ac2b3c48c9ec9fabcc43aeaa9d1286bf2b6ed3f88d9d9a1af9a1b77ceddbfbdd715892d4cfcfbf4cd378392e7e541023100b86801a10c7d349d0c867ba0b0682805dd9fc21cd2a66979fa403c9275517f6bb5bcb635fd3082bc2c11b499e71a3a6c0302047c435bb50066306402304b93a306bb69ccd8cadb429ef008b9db4cf6d2ee6d829a5f8467aa1462671ddb58d06f1ef3154592f69f79bf24a90fca02305ead4ac14c020b75946cff3e740540c680755e29f15d675add7f806ad68185eba132eafe5338bcee75b20e2ceee441c00302047c435bb5006730650230588d624ff901dfd351f1863a91d2e02e68ff98dc904669cd57143ec4faeda6013b104dccfeb9358559284bac76f98e61023100bc8fad127ad987a976f1f51839a6e831410ac3e368e917b0c8d1748048e2db19135bcd69447a6187dc2270852396ffb20302047c435bb500663064023021dbe4ca26de28ecfeed26f64ae33ca03fd73be0f95132974fca440012deb0464cc2eeaafa4735ceb8058b618f8f21fe02304113d539b965606c8b77163c6d9de2805d2e0038a8580405f187d60142d8bd53cb257513f21c5de8b1e62dcbc9d2e5590302047c435bb5006730650230461338d81c457b73172f473e5f4a8bfb3975fc3f086e78d003816937f7e5aa544e6ee11d8916473400e9249f71a0a5e5023100fad753f3456a9599c159e3fc98ca36db2e5ec16a27430408f97b50e9d2d6303cefe883bd70f3b9aabea571566ff2adf00302047c435bb500683066023100fe4b3143b793ec543627352ea9a812ef0e9abf6f7e049510bad881521505a573a3005b77c96a035dbaab46bcb316d4c9023100cf6b3051141edcbc158f8572109b643b891ac3fd479f2e9125b4f98fbf752a4c42a176887a0934aa36692386f11e672a0302047c435bb500673065023100df5ad72d710a4d9aa25ac99dc42ec52b045ce0aff9ef5b24c5e8cce760088b935943327bbffc972c7f447e6d5abd8c37023054e363eba381af2ee5829a12211ff7621017d02401c3d7fbb6b49eaf8107170047609124971685f2c012cda3e9c9f4980302047c435bb500683066023100d6d3058057af6663b9d33f4187416d9f720cd12da0f844de1110b96d959197f801e603b27e7ba2c9cd7da11740e6c9ed023100b0a48bc554dbc6669d2dfd15bbe2bc10c597c4e3e8dbf6c98b9c9b4572e90a7f5dc793b687f5e9d1ba23d417834150c10302047c435bb500683066023100ca194b786f8d66f8684c66471ae86b8d0cfadaf862c665e27f97cd0e0d001b7f930fde6a51ee58f9644b2c0eb8d4d3ef0231008ac2b6716e3aa16b9d3921b7758261ac8418d8245f124e30b5cc0a6ef4c6c51654eafd04e3240b9848372767f387900c0302047c435bb5006630640230441f8072e44af5aa806ab8fe9d6786bd1500dba8351715a65dbeec0f4d82af7e47d6a6bf22681ab821f4c47a93f229e402305da6c8421982fcd370d271e1f043d5d815247a6ddd0a1046a45885bef43c7bb3328194a102a7ecd834ebbd3cf96698640302047c435bb5006730650230373eeea15d64f928567a0b7849424554aea05f7a45729f5a3b96596270855545c4605d65614be0ca25999c960ce1cb8a02310082c5d2d9e85c02fb2d2db25673ee779cbacfe1882ec98e8d95172b079bd050180579ec073c6e8aa94f3f410b64ac9f5f0302047c435bb500683066023100c5b05a4b8a243f893237c3ba4d5671ea32dd6c1f4b0dcac9470c8eb3870968d2442ee934a3df69d2304a19e9fdb26323023100bf4acbb573db666fa0bb63b1f26536408998aea06b4d934b50d432bfc4878849a66ea20c0af23a1b70adb863c65d437e0302047c435bb500673065023100f188a05bfa5919e3d642962f38a149881e88ed2207195149d66036ba1dca72dbf3ac4fbbca7ca50a3607ccf98958dcce02300504d310c74f7abd46a9b31774c365c28253d549ad9b809682bbd3b14ec18ca0e819db7041e60a8cfc6f6de61ec1d8a20302047c435bb500673065023100ff901cafc7c674abc2a8b711acea058650f28461dd7aa7ef71c46f34e6423bc11c2238e23d701799aa7a7776b13f740602307f5b8b66819292450b5c09773c90b59cedbc10414bad3da533070d3d0b8e4033f330e4569797e14ff579c3c152e2de3d0302047c435bb500683066023100e4bf1ea8512d980f9eabfc91c3c6a3993efb69057d4d01eb52067f6e49c29d3a93f961e33300008eb6f229703edac096023100f9dd1d8d6daf060c753054c32479152dc7ec92f6ce472de19d7bea911ece91f7ae4210e7d9112d4e07c38a183cb524c90302047c435bb500683066023100bd22cbf273f5fa03becd943453412f14a364a33743f368493cb48e4abf66d4d3bff3a5869b42fea3d595d171a63025fe023100a7271d59cabf2bd4be16b857335b12b699d9d1f443828e86942c28ad4d278cc05c1bf145dc9829bbbe943b4d1d71d4b10302047c435bb500683066023100f8971294f79e9918b05a0a58b50501cb32717a5c676f43579c4dbd6714c0e1a64705ed0e6166fbba11ef190741b3aa5a023100e776a741375851a6b74c60cdf92ad4cb6693c8d3521e6137758c4131b7cc73ce21f6130335544f4cee89d1482c2707b50302047c435bb50067306502302d6b38ff7ca0801a3cf95886b9aacbf721d25fc9229cd85ac9f25bfabc2b67365ae094ef420df4145a55d3a22754aefc023100fc71905c8f7e881abab765e9aabb89d6761692c3b33a01b85f9983d598de08585b309612642cc0de718479c9583595d60302047c435bb500673065023100f837d2913d8551f7dcfc99b7cbabb415750be0166f3e0c8d172aad3e3e290d96558a9d33ad0c15cb0b972595a14d5dc50230405dfb489ab06f2deb4866262632dd27552c887cad55a76272c46eb251f0aa32f6064b9fa39aa649c8a4632447f4a0f50302047c435bb5006630640230080de422f241bb3098d437ccb1167b42632c4b49a5e02e3d1cc86b8635effbedfa5b8230680e133a595d96c90979327c023027fd751dd73c7842c0540007b0d05386d7f27a46a4e03075535a1e0ebbbff010f46622fe7f04ebe6d6f02a02dc5502f20302047c435bb500673065023100a540daaee7437f378a187a4aa441048da59ce874e1d586c99aeb5812f1259fdf16c34b2d502aec723ee699bd17637d0a02302633802a5e18ffe759b8dc9426bfd9538b2c45dc71c03b0999ba4d9ab2ab1849ff8b690b2db48882b0221128713c14920302047c435bb50066306402307caf2798ee4c041e6d1e8b9971890ab52f474023094d35f7b571c98ae8357d2717d7be382a5247edc02ee9aed7537a190230045fbc6445d1cbacf3c31391d4d3c8b38984d4cc04c0b3e25c723535cee20d861aa03aabaf84d191cdbfbbe1f146e26e0302047c435bb50068306602310090eabaef2fe0d19e78bb15c643a043bf2c54809a95fe0444c83d18bb92a31526cd5ebf36cec25e141b1db0a3121da4b702310083613d3860e4291a8d29a66c146a478970d507a76ef1eba1ea91cdde9798b0597baf48c9175fa7b0d1e7d70270837d2e0302047c435bb500663064023009831cadc56cb588696f409212e52377a6a7cf4e7d08d44c56263a7b445f435881689edde6d4cfa7565057aa9535862602307be48b84c618a8afc0674a04d00a3dd67077bb04a88f9f6372f18e7ad45a77239973506cea7fed02050f6cb32276f8ee0302047c435bb500673065023076b55f943aa60a4bd81746887a2142bf2c3fd502afd9c0d27aff44fe231edd6d456e6fd499dcce0e695947e36015e43f023100a63cebf5a91e623f6834310f1b64971a6edef93cc5275e216087b6ff7a4dc290483001f8786e2515efdad1ccfa1fae570302047c435bb500683066023100b0663b747294ace59b7c5e0f649bf54b0faca3dc4f3e83348f67ae62bb9a059a480df974750bc46d702c8aa10a31e0d7023100d5697516abd95800aa1313d012aedf6feb0d5a2d79c0f77528a5f686720240e77ba20b37b9d40c1877ec874fcb2b698e0302047c435bb5006630640230367f86b4c81d8725c5d395f067143e09788b069f56e16dfc0ac5147d2a527e7c2ad4c2f1b0efc609fb4b561711e399db02300b8d8bbc96fc75631df814c24a5a8ddfdba10db7b0d56668521f94aa46b68186c38a6f747ee34c3b15d2f2a8eb9a6f450302047c435bb5006830660231009701a606b70f99bc4119fa53e295aa3246c5cf0bbaa09c7ae0586a1c986f7bd4f0d34e2e18c645767288365f476941f2023100feebba3906caefc0a5b0f587351f929bb131b2b37a0cb7da0a824f32d526fa15267f2b802904952a996304eeffe2535c0302047c435bb500683066023100857ff577fff991a9276f4cca78e2f43a6eed493238226ec021f2594f73de450a4246afb149822dcc3e9e7c41f3feb338023100a050cef9f83a25e108623e0b142ba434461464d2d815175d7ef914bd4b716fc5751aaf08eee1c85ff7e63983df8398630302047c435bb500683066023100dc369365cd40a017638644ad8fc3662411922bf2d4b1b07f83b5d543ddf95579e50eea8e7fe8907bbb7f640f55f74a01023100aea736faafcb71c9a515ae0a89b6defaa543d22cb019f3dcabf7dd191bc13a4d091ec252539e2073cc1a48b212f92dd90302047c435bb500673065023100bce607e2b7f070af08dc3b46762bef92b100fa62815a7ea308f1c2bdfaefb01c80c0e9c414e3b67d387c3e013cef73de023051fe671e00625291cb1eac53c6db194261097428e7fa9932c64f4f2a2d1041f91b02a231cbb71a0e48a6c5ba48be8a990302047c435bb500673065023100cb5bda0a2263b618037e94ea89cbebe48336c1a82a1402f044d90d430e620d5a765fa0cdad3540ab2142c3546034a8f40230251f415b3188172554500ece314b861371f1bc4fe31600e1a1ddfdd2bde1ea5a76cca71d00c9f88ef9300150efda1a260302047c435bb50067306502302505ba8a5044bbc72d0aa34eccb378ad42d289d6d185aac514b4bcc511e40ed013e50d6638ea6a6f33745c24c09ea1d3023100d19d53456a0919df8366d6d19a2044c49c330b4f03e06948ce91991066ee45c4b513c742d8a2c3b8125481735f7224d30302047c435bb500683066023100ec642a556efde4b71db881ab3d78dd4906e67cb4504f0ce1a6e20c8b44c143aee5b6a222ab0f595dd2261374288ea2cf023100dab0572286985d3f1d360cdfa23aed17cb319d80340b488ec0d08b4e8456398621f644c8352626bd4fa149ec2ac2afe70302047c435bb500663064023001dbf4ec118f092e7e7086aeff831640d4bf7e5737b791988e168275800dbcaf253ffdeff07d4b84d1ca9ab31f3a39aa023036a103a2b91239b03172b30fae0ad520ac99a5bfd8b05533e5812e483cd439973d6c96c32c86a341d92cde542178e9280302047c435bb50067306502305b7a4e01704adbd75f37af0526fb258f8a7bc8303a318ce5921b61d10573a68f87ed19c712c27daff650ee92025b461e023100b264817f197c85a5ba09d0c14e9beb32610c04fb4418156117984e1b35f86e201fd6444669f261e26a905778c03d7c660302047c435bb500683066023100d8a75a21f848bdbaefe2ef004a26e1d8f871f12f982b9766439133e7dd21414dbc80a92d34b2096a4a6bdf6ac3fd3817023100c7e65d96aa5d54e30fd55e487f8c4e1ac5475284f4cbcbc0e9041f7a8615f3063a8bbe1efd1f44749b874bd4b9c878640302047c435bb50067306502305e91a5f6df4f5d9046d58d8b22889156f97c538328b4825f8f82a7c610ac8d371b9778eb14f6230f2cbd14b6ea84b5dc02310092ab2f72e2454722a43c218dbb53beaa96d14a90e5604628d35ee1c5ad1d89205089bc09e073c05278f3e33aa5443aa90302047c435bb500683066023100b5a03783ad3ff5ad731f59e5db630c81cd6ef670dbba79d53c46aefe854467491e885a6455685c7ed2890c2a35ffab0a023100dd09d54703076b4cd19166814ee9a889f886a8866d61f61456ed94f65b4f03b6c2f159e9056bf7d8f9c8703f21d2436f0302047c435bb5006830660231009680a6e6a65cb70133dba87e340db84bc8deb5c4a68adb3b73f544a7035d1221bcdfb60d9becd28628875a5566ecef08023100a9bbcdb9cd5c8e105d7f152b83603087073c06bb9670d7f085d9570c18cfc93cfe44461b8f2adadf719cd39370d9da8b0302047c435bb500673065023100cde2c5a3989965452123e934457b694c3ecc30c876ac9c3f39767c418375c5f8cc7f4376725bdf02f84b308fda04a66e0230748ec79af86d684826179ceacfa0979597507b0a3caffd6f04f8f7f20056e7691b5117fae1f3ad5173dadd3e93e44c750302047c435bb5006830660231009bbd7ed4426c219f37e99eec3949d4da10abadb65310fe77d2901634c2cb86a20ce9cb752669d929f1a8a3e273ddd8ed023100d5a11396f985dce1c7c5ee4c9a456a77f1a7c618dbb6f5582026320ef67f69b42dc9acc928e81f4e374c17a9bb1a26080302047c435bb50067306502306de448e6f32664a580b094c991b981054488b2eba1b160f98a6ddb476f6abe0281c8b3caf4636a59289c63cf530a0640023100a055c5f13d518bde74c4725c474f1c6fb0c73e9d8b19b3b12f27dee174e7b80430cb5e3aafb40379d4e155ff84207c2a0302047c435bb500673065023036795db2545a940a66138870b4c53e4a472b00bb23b9c604bf19686b467033bab73b921ae60fdb6189eb04a8aee4eccf0231008a90fc48d2b5c388af1714a43df1473fe411db17aa1f398aaaaf5d331d103cda6410fde24e128f2c811055f63339c18a0302047c435bb500683066023100c72e8781fc44d570ee3b3d267d5dbc3f25cd67c13ab028c0758015367fe741fc9ada534468840cbf2b42c0e2eb24b8f7023100f0f4d937d2d91da7fd67917fef440cce667fa7e75875e1c9c00a4cd70e365c945cf51723e89249b64e9d145b4df14c560302047c435bb50066306402303b4ac19287fcd62662823e8fb4a4781aecdefd232e84ea79a156ee0cea3c8b262711258ab5b3cf975a1491be5a9875b102306f290342f1ed0da7ca9be62a0b8408acf254ba703e6933088bb53e5efd0051cb2370ddc034a47667afb20b48f3d7aaf80302047c435bb500673065023100c708140d8339cef132c7aa0b6a1b2bfb7ca5e0773049c22d3a41580edb97a479b56c9f70a7abba63b5621c326581991c023058e3aa4009150bc10084e3917c49da9040799d18d8fe3d9bbf13406cdc21bca1484d3072e7f7aaa19b54fdbe8ded0a360302047c435bb500683066023100da6b33d27fbb722772d14038af49218991ae286dccab59cbfc90d941e9364b6604d3394813231b86778196c713d35ea3023100c7b9360fa50c3dfabcda238a6a8c9b03411a76baf8af9811fc8c37ad336a632d7a99fa1a7248e3ffd0f32170f54eff340302047c435bb50067306502310087fbc1fe91513475eb5c5762c9001511689b2280151106f36d9de78e02c5d2519a742e967db0e0e86c54e2c717a5182b02306ffd3cf2f9cae598bb6877e941670bfd65bae8f3062743188775cc8e7edaf071d326c608f59eeb85e77b218c2a774c060302047c435bb500673065023100b2efaa2e6c29f8d2d392aae30f17d7271ca343cc0851e7871b1a3f530bd3d8580c63aafb8744780ba143e5fba070744102300f1a0fc9cf2719c02e4da598cee6452340db300514f81e8c21bcc12089c84858303667d7dcc3be6285431dfc27e3b8210302047c435bb500683066023100f17f55535f4df4d2e8290393d61685f3de4f6242a3f11757dcaeb4d1f3c11e4cea39e2ed3fea527df7a5dceaf0fd4aee023100e40a9d1a75fd8c81d0aac9668ad4486caf0145cc078c3469bb9a0cd89925f60685c62c39ddccfc8f13428267f87636310302047c435bb50066306402303a68ee9b73b33b793b317035664fbb05e211f97000fbeb154c25353ae2c443323792a652b8532b5152e6e882faddd02f023079e8b51cc1e27945b57e2ea9d1defc4a61fae2c7eb76b94a326fc981fb88aa31ef394979d46040f7e1cb6f07d4bd8d030302047c435bb500683066023100b8bc49b1752114afb1f6a85900fbfd3f66065260e7b35fe2232df98bbc87091f31020702fbd3a583ceb816f6cf4af49e023100f68fa22a8cb23aa57bbe373a40cdcaeb274bc398b9e8aea4e06f75ab5a980132115e5dc6a568f0181def0b4106b6389c0302047c435bb500673065023100a266e2c55616460fa08b47282ff6505122e890025fe9971f58b07939323684130449d0c078daefb70907832caa31cb99023069608e29298ddd3c4d17745228e199521860ee07f009cfe8277edc45534263e164b66d8ea67b48251de8fc7de6668e6f0302047c435bb500683066023100cedb5c2088dada7d8d90b999a957907273c1b11097ebf7a34cc4967997b5dfb7d5016ff6481414f6cbff97ba9f559ef10231009c253b2aa67b1e0cab811af650c01fff6e5e77c6fe8fd13d8203dd6ed047bad6e87f00b7a5bc3b04ea1f5af4c6f2b4bf0302047c435bb500673065023100980a8847a2df799823783ac342f25110abfa40493453e918f63d1390665c7a2c4151fadab76ea51ae28efb7c36a753e502306a9520d51162a8a3a0564c963e8853729739bce33f515f7ddea85bb96182d6410401ec61f82d7136ff37e2b88ef73ec80302047c435bb500683066023100d493f012ccde0a67b5e9e822b2c69c1aa4b041716fd3faec76046e9c17e98769953b14c8a3b9699b6edc69d631f98f58023100e5ea7c385e37d9f585eebe4f6a2a31482be03929312ad7463aeca0b818619b36401db0a918c5b3d55cac833f611fdb390302047c435bb5006730650230503f0517168e182c01cac9eca1736836264ac3566ed4907b818787aeb6e3224f3c7fae0ee649ec6e9759a7ff28b93d85023100feae56a2f1d78f24ca3f8425b3a442456f42e993da4c9a42b099d8bc2e746dc693bffb0e5e125d746b4cca5ba26198970302047c435bb50066306402307b886c63598cec5435dcc619c51febdcbfdf369fa767f6fc57269e97b27602e6d6266d1c4f848f050997a1c9dca3e0e80230605c7bc27f3208bfa17f2439ca7b5c92d4c1a24daba7666f88ea4a52ad166abe08e506ba53d07f4e3da4c49154cbee2d0302047c435bb500673065023100d936ca4da96829ce94c66b4c6fd46bc2f896c1cbc1d7c891e6c5722137dc184799ecf506444bcc865b55357931c039d702305a555cde146f5c4a6f01249e7d9bd00ce4fc4474d00a324a04d90d078bc05ee337a09cf7fb7d70d7a256eb79b89989cc0302047c435bb5006730650230779b67543d8ede9f8c7b6acfd8b29558da55296595c96f2509d1497e78fe37e234e4608d8fdaebebb5394472756e2142023100df73bc7b76ac974cb17e0d7451d5136754fb39bb4069147a6bbaae7a0f5d2367efcb2f4502f7f013f8ee299675e6784c0302047c435bb50066306402302fef80d145347b6ea7a9aea24c4206a4621e1c324d6c1087ea5bd2d977c2784922ee08808ec06191e9a34be4eb993ea20230433a3fd79c24f128349e674ab3f6f8f0db14750d428faf7ab8969c06b5e8a749afd5dd84a82a8a00df5cee6d7f90d2a70302047c435bb500673065023100ce64b5933134ecf544d84a50e945a42506a4a682865c3efb4a6db08b50dfd0b331a021d7ab9347b34d2629a75f46df3102300c1445dd21621a0e6abcd38abf6277f406f5af9148f93e7d2d8b7264a861da825c25078dc80f14a13ea5bb790f4001b50302047c435bb50067306502303bd398f71be6a7d8ad052cdc3590c8889324a48878c364762343fee8de56d0bfc239b8d2eaa9c86f757b5ebc970edefd0231009e27891661824d91c582562156bcf89322e6aca7c8d64df11c1aa5ba64390c3de7aa9491112d42c74da0b7cd2f4ca76e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb4f370da755f213b591edf1e411269d6a2b0052e4b588bfd6ef510ceb61b9dd15058215deff1f9ce1cfe7e97bb4f6e9023100825094813a173e56b4df578def9ae1ae5bb5910dad16c5896ca8e1f388765545f075d67353a9654ef0c49c4c6834a8500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100850ddc5e5e2dd6b9e813bb24da3123cc4993258634b68767232a9d8ba97088170ed35b8f2fa9c4be1aae52b69e7e5f0402305e4190b1de04011dd64b2bf41028af24842ad9a6a14651b4f51f1f81506ff766137d0888664012e7d13e256bf7351f230302047c435bb500663064023009cd20a5f183bfb605135dbbe54128f207beadd3208ba30abce985ce4d97ad82648edf3839877327314766a749614437023068d9d3e04ccae1468d7fa61df14f0e1afebf6795bcad76ac39bb4324d7ea1b9a729c023e60d17f2d33ae4ca3e8a35ca40302047c435bb5006630640230271364d6a2519a6aa02fdf226525a9b28d77d2f3deadc67cec1b4d23c8dfb66cfe31a4a235945fc6848fba362c7e4c9d0230357c8f62519bad185902cbd599552e8c47c2288f1a6a8e6743f2fd2e76e503a83a75ac1fe7be32bd961613313ab0f7d60302047c435bb500673065023100ad0a172b9c8448847c39397dfd8a8d540f6fa11c34dc773018a8b2258fcb33beacded4385363b735871a5a7f1b0a8bcd023030b67102a624ddb3a8d45f454de3425fe3af062a846b750a679872b52987511a5a789b9c432526a00ed61b1a73a58f080302047c435bb50066306402305979ab202b88c52c9905a80271c6994069055a7607c9c4ddced4913380f8afc8771b95dfb9901cb446a29f77af264bf7023032a53e820a3c1255282899cc48d4822670237caadc3631e2738c4394831e284f31b03f0bd9266c21d34a1d00a1e4d40d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310091a09c648e0638d69bd31b4e5b70b665b9a2567c3ba82b7c80635a076bf74c7c2c8a6ab191d1405fbbf06892491dab1002310097dca8a7ad2147f77e1cdd449f9f6bad6b2206a65193b1987141f8b1667d9f1bb65e9a3294c6ceacdc82a14b904e794f0302047c435bb50067306502305d2afed34274d5e4e9339f1cdfd06ad29bf92a8211cd6317a8aae58b2d13e7412cfe72b1c6b48cecd1717da98d4cf5fd023100b1cdcc8c52ce35974b1c1d24e016b9549484c06d51ab388100d769b5818bdf1757b572b4e300365d0bac2d6b54d672820302047c435bb50066306402307c4ac4ec06482c200f6a723d0cb1c6960b5f9be6f529d85bc1379025b432de832d53a80bbdb42ef94c58214d2428c99302301490eddea328b089ecd5772254a3099d2bf2674e1e85506922be87cbfcc78e167058968b7225109f604f93c53aef5d870302047c435bb50066306402307f383d40128b4f4b659d5a417ba67f51cf149fa85242bbdf3c3546963ebc0e67c2d5ec86d057d17b16090977b191b23902305c29375ba7a3fa819c01e24b095cb9a922bda0e31c2474175fa851bc242874aa26877e8346c858b198dc5351c4b93c240302047c435bb500663064023073d7b55fa06fc4e74e7e59a34459c0ca58b07653bde03fc6d10a034ff06ddc7a1a0655717211cbe8ee4cec4e902372bd02300a52be7efcc1af9ebae8ccca1463507513b6d0a2c45b1423adfb349f0aadc210be325ed0d0d1387efa53c2b1c7b55b4b0302047c435bb50066306402305f5bce0296fc8571d14f361ddca4505875d75e3b8e2f39ab851705a7f253c14c6552e00b760b0bfa477d82748e739c4e02300ce9df9397e192321bb7f76b25cc2cd9d388611645b06e199ef16f8cd6215de8f56cc63c5f708b8952952341b454707d0302047c435bb5006830660231009ffed98fb69aeed693c573259922121b657aa4bf9df5152ce9321178ff4315980588dff48521ac5f837afbe6ff34a8350231008eec39bfea1c38b5815704bc0abe3ddf0b59bfb6c880c4b0992d5cf5096fe23947a80ead782f8781e34e3557aebbff370302047c435bb500683066023100b6cf4646c113a7ffb08bd5e413572212f5dfec5c5b7558abe1f94e539a8f1689995e6dd173f9fc516f79656c6e5ac835023100983b4fab2d09f9d30137451b804c38e83b12107a9bbbc7a7a62364a27cbb206a16ee118cd014dc853c5b23834db1bc4a0302047c435bb500673065023015b1aad5af2cffa0ec441f4b8a4c6da2ab5cc831d04a44987aa21c5dbb89115bf8c2ec91b802c50f967935c9eb43db4f0231009d3ec48af8292be89e57f1f79111b5d479d34764e0ddae5944d37039c4193bb1736a4173964bef95376eff8a954cf3220302047c435bb500683066023100fcf121bb593d54fd3718237be77fdf39a9c5fabefa8b8b6c83d2f5218c890142c00dd08b62606934df9edeb5fee28fc7023100d90a3e8ebcc8a603cc95b6cf421e3160176fed22dbce73449b6141ef8f36fed35c0f889661fb439122563effa7ece0f80302047c435bb500683066023100b08f8eec98ff5c0b5c61dda018e53c0ef75c3d0cffed9ba88d99db008b71c3e2944c96f8a0345258109c8570e386bfc8023100b79344c87b78bbfe10e92cec949bec28f7593c1522e206daebbb94a438cb2ed0724ce980311b70ea5e7bd98bbbe206530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008f7c3bfedc1c8b4a7d275b57ae8598d4af516f7a7fb8a0f19bace9652b5274064319db3cd8035b10f3175820baff97f3023100d056aae112390dd047315d289524382aee9d855fc358ffd32daa78a6d95c61c7154e6ebac99680dbdb93c1d87a8213eb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e1bf8d1aa05275dd4ad4b0845cf12652155a097891172ada1929dea73860d0bc815c61ee79088f66991b1d7ffab4f82102306f727c9b967a7c9af113abd875e9bf4a9198df878fcaa64abe6d53d0fa1c5942b7eb7c7592a076b93a12c7484a3ab74d0302047c435bb50066306402306b06557a5315f035130ab18ff92a7af18814bf44f9885412cf2f51c7758e0e41edad7d39926990104eaabe5ad5d834a702307a5c26830a22c868e1360809736b6008d9bbb3386c9921ef6d6cd75d763fd2a5c8e5577d6920c66c4faac3f5239799ab0302047c435bb500673065023060bf95c994a16aabc6eb16ea3967bfb3dccafd7b20833403c20b2d3bd02010910ea921514903b456025b86ae809c12cf023100eb770cb02e8c20e70efbb78c6844ed1ac8d13542380b94f77105d4308f80a497b132b0206cabea2d11d71d254353788c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023063796426d37c82d5a5ce82107676a56a3724f08cbf3a2284cc5875f319be199cc9e7ac66c31b7cd41fce2bffbc2e724402310091d63d26ba1077b63f30f0805597331637eb69dff2cfc8d7a19b33f40d1533b8700ef808193b7134c2a5297b86378b0e0302047c435bb500673065023100e1509521914163efc55c7bd8a0a989434750face5245d40a59bc4f5c1eb5aebea57ff971a16235f79ce6cf7b442c729d02300dd8ccd8f83e6ce3ba8a1e1a6a2b0d34ee1d2b291af33ccc313465f1268c36927ba96c1df7b8d6ce6b9d03a173d9ab100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023059caf58e1ab0e537b4709ea430a466479a523c79be611f6cb18dab551233f9a5a964cda25be090ee04de70d267711b1c023067388a279b7d08ae940cb1e98239e577587a2658f5ba3868c2ddfd62e29ac197625a85dfb48caf3da609943f59e59bcb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e1da1ce41b0d7926e7ae3e5e90013103f437eda6110ea5c797dc1b2bb297b6bfb34dd12e5f8cd9368e70bc1e25fb8d69023100e909c48e95ec5dee7a2e45e9c3f65b96502a1f47ed35475f37edad3decf9db9398a57fbc9ab79847365553c7660b66360302047c435bb500683066023100eafcff855b4b9d5adcee14c13a27e4d307b530f31cd56c3b1945f6283e4de6c2df0081e60fd76f8aefa68a83b564ecee02310096480a10d92fdd006afa1341c26ad62dd13604d9f3826f989f2de663c2d32223b48a374aa8a0f7ca1ed5796bad0b6a560302047c435bb500683066023100b3684ca393c822afce167a73f106bd6fe674e7d9e9be1735837853d28ccf044a530e3bd297d1434490ed4acec82ce6af023100e5314fe94f8e748310438d8dab2bcc1b1b60f88cd2e4ae8a568970d0869eaa3bc08d17fe50adadbea65c29a217492b770302047c435bb5006630640230157f0ae160c731c8b653159b0d80879f183a9ccb7569af004e58217759fdcbef78084147cbcd970007eb84a8f5a4a275023015a06eba5b9bd0614a2222723afdf3670483e6f6e8ed3d021546b3feb7a59fbb6dc7b7ad6815b4f2d6332bafa86d84220302047c435bb500663064023056f9dae0412188bce0adf5c05e30d23b2dc28baade4cbb36e56dc65aad49373163b2f29f4f4c193dc305aec256bd357502304878c23d808d815fbabc0269306a84a7384c4df43d3dc1bd709618964b5bb7e747c2f41a82e7ca2e73a5a0d5ecd266140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a317f0d12ec47936ab42660341c91da46e5517dc39197bbca757cf1db318d862b618a76529c1b3fa27336e56b37b0cd02302a1067d3cc16ca358666e7e0f3d84d2344ffdfc2e7c931e3fc688701d7bd56f70a340e1bfa154165c90ea64b281fdc590302047c435bb500663064023007eda56d26afd61e40cf4ac2e6695817f02a186ced6d8b2d8fffd90106f8078b7baef6196d5dfe999bf0581592b1beb70230434a345eefccd9cb8baf4e18394ab6f730de08e569cfb709980d9dd63f413055edaafd69463177802e8bab610f266db90302047c435bb5006630640230697d526b0879866552448565960a2b6275a747577769c2e9658a536b47b17817ca17135813a6bb6e81cedcbd8aad634c02302d3329fbb4b9ce63e2394c85539a497701d782fadc960b4a4e61c3918af081c475a9e93c7bcb4cef8816cc6e5a57394e0302047c435bb500673065023100b8dfa9e53bc2993c863a4544c70c126b94d2cc50228581dfb15dfdeb2c515dd863c7bbde24c1d250fede29093444d5fa023052ce5141af1f4899e6cee5618f9fdd1258ece81c293356b9b3b25797335fae69289cab3142d96b641bf623e862d3fe140302047c435bb50067306502305f9358cb819977f5dcfd32b52fad12755b326300079c36e9a076a386af391334c497cb86198a1395a57a6fb0c24b5e4b023100f0dc5d32cbb837784e371bd1eae27853315bcd03d6ce18ca439bb7353a985d6dc746ea4043933780f8d45a8896be34370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d35630af1cd5ca104caf5036db55936682c8080a242f9df2869bc605269c2fcb9907db0196e1a2720e496e707a3e80c6023053dc4de0553cdddd04b36139c72fad8d1800d98bb27b4047c9603264915cd74fbaf3538d2eca78bea9a84120cec887c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023056583b97a39bdad7d23662ccb22f45afe083b68048c5be35406d21acddc1a5e080eb2fa21f80f70cb3baca5770d61d88023100f3c8d7c1cc40e693f80bd38cefa8c2b704775cd96327184f37f3d60271c61683b37c9741ed2848578ad7a85909f4fc8a0302047c435bb50068306602310094acc692cfd6aae42f3f84691c7fd01d9a08e7aedafc9881cb67a4c2b107c21c58bee40f29d57205b41c87547c1e1b6e023100956dbbef71613edf7c9988cb2a2e8fbf6a47632efb0ca98d9cfe02ede1e24260fd0e8b0f56de0247a0c88e4794dcaa2a0302047c435bb500673065023100ace5d014bc0965b093f76f00c341fff5616279ccc868d2d47c4e66de1a0feb4f4d7d1b6d6720125f0e07f7bc92d04fc202305f43276c464bc472beab1d967dae61c47c7904057bbcddc027bbde0a12ffefd7c5d837d8de990bcbd36e3a95be18f0fb0302047c435bb500673065023100aee092172e68b9ab87b868dd762eb2d1040c13c676381e04d97a8a42c4a0560ce83e44413193625852b3ec641bb39ccf02305fb68b2c03c8c1c0df8af9324354dfd18f8370e73db2a809069d98c8532b53d52bdd8ab5ff08c1f89ca9ec1ec92c8e030302047c435bb50067306502307a03a146454294a3d9da5afe90cfc56a2368b8cb01e4c35e3720083b9be139577593f1749ce9849bac79e747bb517f52023100f144a39e07bdc46ed0a54b535a6b15bab3f5a2cbb0d63964d27eb167d350ca46a293bf98ec2120116d41f0ecf4242adb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e73c8c323fbca86cd6cc1a67fcca7f4650cac5b9ec17d69436cd295c66963625f30e9ec11674c4bcc29d8494f11c6d51023100a6314a3a87de6a980464edd8abc9636f6a35e3a2d8f73be5e5ee4a96dccf9995ade8e9fde60886003f43c9d15615a1fa0302047c435bb500663064023015fdf163b73820175db95377e4cb3a377d6699e42ffcb465516df3772780adc6181f9bff9bdb570e3bccec9bae4d80020230108f24571b03d149d40ac8063efd3a8eb7ad31ae0358bdf76a529d8f7ee58bfa6f5e24504fe7ac6fb724537b604159880302047c435bb500663064023011fe7bb4020020632d82de9caa24ea061703c3e0615fe4740bf908536f406209fd014e7d0e2d2725f5341c667a8b43aa02303d122888a317c5220321175f97c5ccdcd0df184dc2568e9e72da0502af9cbf9a4680e5722d46bbe7023e0e29dd844ed60302047c435bb5006730650231008cfe84669705d4a91e240b2ecac104fcd1373b29df1c4a6753a76891c8f9920c7b193ff02c0d1c586d294a124daaffe902306a57f9f4348685828c5809eeb50af0b0a29ca823fdd7d1db256ca4156aae453ee5a331f0f30db1393417a0c6297b28440302047c435bb50066306402304d9493e85864a837055b0f787b47a3516612fb80b7f4b7d341f66099420fbdc1bbabf867f23c7478bcd2b5a6da2221f102301220011a3279970ad6893bb402bd768ee2cc6ebe465719bf32b5e5d7659d7017e7a8e77624aac7ecde576e5138555f290302047c435bb50067306502304298c7e59988a0fd05dff41216de0b37971e989b6dc1c8c89efcb2040dd13415588601b6f4868ec57aad1837ae818870023100deef2502202a654c9bd7930fb8606f53856ff99a41fb63c0341f2cf398b55c12e3073d2194f6922ec52a1a0b9c76002c0302047c435bb500683066023100fa388f7d9a4d7085abf2f38c298768d9e3919ea145d2b25aa37959151c8555186393027fc48e3c7067cb2cc58f2a3152023100a4839d50737d96f97af3e8cdd87445d60363aa196b80f4a6c84391ed57291fd37dea858934bd64950c55629cb440def90302047c435bb500683066023100a466b4570645426324de4c2ff4b9efaa365c37cb5886dfb3a221ce036a5eaa9b2adf6c4c8b9f79f2c931e7e3f95c7467023100c13afaef9d85284b1ac29d3ccff7734752da496dc11f6b2d796672ae37e842222a5b42909ca7049b8deb2f2a3a2915470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009091eb78bf1320612d0aa87997671595b7613d43753788082cf198acb4bd916aac1a9d01996f0b98fff192db3e33e8c6023100c7ca7b70812df220059e1af57dac16c1c129efd4cd65958a3340d50349998f10cb477d9b007f547ccedd41a71b375fd60302047c435bb5006630640230246fabe8052a64c230225ae4e646c5526426f22d25b1bf6043856a0cf1124a64c7308e6d05dc650c4d67ecbd6fd99efa023035eb6370675c9b185dd714571960f1931da691653d9fab70ffca6bc01b38e8ca0093a684874a2344e443197ab64de9870302047c435bb50067306502300396133825d2266a2a2a4ce5da4852f7a8d475aac05bf404d09a9b93ae48f609a3d03e33d18ef52c2a4adb51aa0ba5d2023100d8ea550695ebc8c6dc03094f2025e7b5caf0469a6108358442970a5d3fd5507ffb107dbd0cf607ec80f0c97e88b6ca0d0302047c435bb500683066023100ff4e9b87ae782a78710f3b65ca317f455d6000d3cde7a3d7ad58fcff477ad14a6a5f0fd0510f03e2f035fbdf60e8f542023100c9071ed34a4441effe9d738c607c7ac74a89f147a41374e15f28279afe7df73bc5017e2f83b9b0644c9918a537c1de020302047c435bb50067306502306620aaf4893ce4478dfa967b90a6c35b129669f7b9aad176a0cf779ab9d58f3e0dc7d5f46139289f9156c00253562c1c023100e99902fa57d1493f2126b75ec41419327b311bbff6a734b8e881d93d7e2dac8e460dcd42580d96244969a0f30df556620302047c435bb500673065023100de88b942bf00b4339ce05034591183d13a7f94878a84125e0bbf83c8d1158db516f5d6b21ec18dea7fbe5a04bb9e5015023031e5f7f0d91d9feb4c970630bfaac9600cf8bfea37f9e152daede47c65151fbfd22c74f56617c6bffe112b97f884e05c0302047c435bb500673065023100d1472957164a0757d84ebd2f9ce92d90b3e3a9a7215b57b2f913510272109195ce6e3ef61712173132ddaab011e86d99023064f520014877ebd72d0601ac6d6a0ad14c384527dab25f2cff7595aaa439f5e312e6e4f34ccf334ecee40759243f30ee0302047c435bb50067306502304510ae81aebd5f15231f41971894031acfda64b0e8abed4712a2a2b69579f1f1e70648b65b6aafa78e16324c9c7f0229023100999329fd3f1a8a922bd91850994ae7fd477da9a38d17f11110e48f5da80f34a03d9acb1783e593ca33cf09e355997bf90302047c435bb50067306502301c192a4c329d4d032fa7c17885c9ae248ace35100ea6c54bdea5608ae162e0944e31264947196becb7e5c213350615ac023100fc409b80984ac79198b1cdd0e8591aac0c0317f1c519d4bc10a8bb386784a27a0e9e23a1a686c139959376e9b3b32f8c0302047c435bb500683066023100e68f28269f7db548eef6ed12711d814b8db4dbe4c7d9a071d3b760d210c7058046c89a0c5be7d183eccb72d362c10cad023100bf35445112cfad6faf0ea0dc7f8bb3b9eaa7a4a4bdead58a508e7b1a6c7a60d363e99df25db3eee2d2a3d5861ffa613a0302047c435bb5006630640230145c8ef3e047fc8b0c923c6da857ea41faa71f40849d033593604cbd9acd579ed60080014186b88158f36e88512c1a8a0230057c90c7d0ac11b937b3a2ac7c2ef87ba7bfb16e14acfca323a2e912ffb83ad78f0f6303d21e8c082e805faf4cecd9220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023077f0e6b1c616274f2afe6fe419c85f5ae578789d76b08012eb393847efb1342c677f83ff183e10e79cb3cdb9b3712e2b02310094c260a9f8db1e2caaa60c5f71a1f66c843f5fff37f5ba647547b70311fb3120159bae8c7ec18f6f674f70fed9c30dd70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023016b479644415b0e2f37cd6271856b325e53d5be3926fc82a5ab3ad2bd9d709470623ea086320521dd0f0e28c029352bf023100ba3cb51ad89f2af54245f0ec3cbdc95d99db00a6a96f5a5a91fe1c0a95285b74affc516752fdff30e72ba83cc4a059c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f6cf741cf4e31678afa3342a897565406aab3ae3daaf23896214915fd1b55b239996af30cd25593fc643752d8a7e5c56023043367050e1d5c6205a7f2e62730ef14432907ad6010a07f1404e00c2f53a028a015d7fd31725ff1920445514ce52cb110302047c435bb500673065023100e8d8a2c34454f9d0789782419274596eab942ce62928f06df6c82aa909d726ec03d4dda4a7c525b078d8c49fa84e51e902303c456fa5c6d8b8c6b809d0c5ebb99e78e6bfeba2e454f48c0c67d31978d8bd90e447d83471f16172da7e3cf0b1690b680302047c435bb50066306402304676fb5771f10688748b4bc2893c2020e46d18f5cee825bf37ba13cca0e086895ee08aca09f167ba84b2359c7fd973510230384c3f6e79d79de7f65279163d15f019c3cf54e77edc74036b94412bbe50d7b084a7ec8f936b28eb5904d42a9b821d150302047c435bb5006630640230117577faac84d7aba790bf973a8bb3e53660e6debaa8de714dd4ce397d3b3ba1ffae53613cabb461982ee9e357af2f930230474aac0731dce5b6da78d9ab62cf68dc557228c6057c485c58ad615917fd4a8f873df71d1a48a477176c9f46f15198590302047c435bb5006730650230613f4bfcd1466151fe192f101b711d41cc9efaec829307fbc4e43d350f59b008eaecaced36b56f3ab7e440ec96e4385b023100b4ab028a746009f134dfed94bed57f8af0e72401b354c198b7202428e9a5576c8728905e987d434c8884b761f67fd57d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b6b8e0c3a524240403bdcde171e492e1b33c92ca8ef86790910dadc24b0477123d6a395639918c10b5f31ccf2f2b62f5023100e37061a558fba3e401c26aad428b6bee642022bee95d0f9c366d6a08afe8c7ba07531f62ada21c3b8c6cfcba1aa0a0da0302047c435bb50066306402305f85b0c39ec5eadef6554793027319ce9af26d744e80bc667f8113f752b62a76e41e696bf68df5d31a5a712cbc8188f30230229cc69e1dffdb3b167ffb2f56cc4e85705dab9fa45f86808a6fd582c575f543f0011d28fac8dbbaea17435b169c5cf00302047c435bb5006730650230096a65865bd4b012801aff710b49d43bec5bd76af1e061062ef549ae8f8b0815e14848eb2ab0241da71e5253d4510a57023100b5a91376516b61ddf44c1d81844d81a849238f629ea2e518c8b3939405fe19ceba7c1ffa54dbcd86fb31f342737762440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c1c957696842310129ffa6c3583f24bbabba6d5a3ae7f58f120a77eadb99b2cf7c698bfa2ee21d6583154df422cdd4e4023052b2155aa924b34fd851423f3a8e0ebe7d5e1415341e996a060215a2fba3703671cd11dfdb4f9c91b3e8ad09f9247d100302047c435bb5006730650231009ff16c458cfb51b003f67e8a0ee5fbabc61cc9d385c4e69e92c2ec3a2e7befee8633c17c8f4986ab5b0aa29f7107e8a1023046e2df6c798fbfc24891126edf6f0ac157ec3d93d90346703d851ae8c5ca7275a1078c32a8eb34aad8bbc4d2cf5ad4ba0302047c435bb50066306402307117be859654aa5812a822d612fc6955cf4fd6e4e18cbb6a3ad88046e4c5cfba82b2ecf90e8dee9c28ea90471f6a060602305ea24e07d20a3ff1e17f129154ad1cdb91a6e29ea03b89c1bcad15666585f6f7856457d8381c308b0922f773acee42bb0302047c435bb500673065023100814f41b7761fa4bf87888605f2e45a94b8c9db345a6bab4cb74bd143adef7fbd0f203d1c545945f3f334501ef81ded66023036776a8b2c1dcad7f23007e460e4b92cdab87136e0e1c336c0a7b495e509bae5ab9d2561c23ba50cb06566779f4acdb90302047c435bb500663064023069c6f13a28203e00f3fee2871179d78d50316085944e6a022d03b9fa338fccd2b12e2663cfd2c2eb0255fdfcc37aeaa802303bd612038aafe1c1ab0b9123222e3ac7bfd49e440a2844dc96619f5bec9f77b1f78b339e986ca655622f198ff75c68260302047c435bb50067306502307aa3e65188109393413b2bac5ef484fd25a24e6d39c308e4e4328aa8498f58f9194de5623cecb72b4090bc99453f824b023100a946f18ea526e5658cdb5688ff242c091c0b5a6f129fdc145806f27d692f656c31b4094f5045a2ea1032c1573a989a7d0302047c435bb500663064023043132c2a22e7d869eaa8ddd1125e991d2455f77f0c2dd6cbbb6f072386436398b50a8e7649764af7e463274a776a72fc0230383485803d0d6c03d9800242452fc09a22451eb7dc2224e88b6f6b409f2b50ba10967adaf0c82705fb5313115a1db33d0302047c435bb500673065023036c0d99f5670c6549a5a27db6bc7512febb93ddde27e20340994427bc15164820479e3c0f62836b520bb6717f24463bf023100d2e3c9555ff1fcb699793b0d9b72c65da7f8ef93e63845ec57b5b2a7ac5be7e6f02907b9aae795382026e0b473cbdb0b0302047c435bb500683066023100dcc76737216c6e99d1cd411c034523d7eeb5b0e43a27739183df288f22260eefcf27144f4556f98692bc92f1092d96da023100e7baabaa546fadc37004217e9f7b2f7f3464e9de9db37ab70aa23cfe1558d1ac763dfe31c5b1a3be614397613f082b1a0302047c435bb50066306402306892428170dcdf0aa86e35931ceec955459d1e0f5521a82684db2d7bdfff5e318b4aa38b92f5f3ef86df130b96394b13023010b79186d220e9bae882c7b066393399a9c423ffcad371618a7f3e8f8b0d69ccb9f6af36b0ff682cad68dbfc043f36bb0302047c435bb500673065023100acace9831cef12ba9ea89c0dd1c828d779d9bb87761580977e9ed55ab0a6604830437c02b29cab0fe3849b90f9a40c7d0230673bce3ff4cd753bc6cce25141be275f014c2e03b6ce9de9652f6dd1efa12ba3b69ab14847b8a8ffd4e4c32f9c6bd4fb0302047c435bb50067306502306fd1766730e4d15d451236ea11d23c459657c9902d506d47cbb6bb6b41b50db9af5f8ecd624b93859a1a59c7092f8d8f023100daaf293795dd323ff4f836b34b8353aa449ee8e93bf2908735b25205343df4481d1fe9f6edb824b889dc225f7e0397c60302047c435bb500663064023038db14e6d90ad37e64997146ba85db4abc220ac07081a7f825fd66e763d619bb7662524d14ce87b75d7dfa5ee52176fb023033bc0a38f812b0109abe8c2ec6b2d9d2dbe8cb44a85a79940e68feda3f2faade2fd8e58033c7f1102a88b983fa40c7870302047c435bb500683066023100b5ab8192f44d4d2fcb7dab991522a9bf514a00d5093f6903f4496f722ad7eb3303fc77d163a9a69214b45a527766e88c023100cfee89fc50b03fb277fa6f7ffd3eab9d849cd12014d90beb5a4aa986ae06de740b1d5c3c95f10379989d2f1709f93e2b0302047c435bb50066306402304d820c38706551acc8b06b25fdcfd1f73eec309ad939911b46f56c51aad5506737b64ec4737992aff5b83792dff9bd05023072ac51fd1a20c05b645bb70c97710d059a9f8cce6295a02fc8f9cb79292abf1e5fadf6028528f5c4d41b2bc7ba1596040302047c435bb500683066023100a5c08659fbe816b1b3054fdc1ec957ac910486a399fd80a1a5c09acfe92d6e39c25ea4c9a751047655a5b375e40f1c49023100c92e7a86808bfcb5fdfcee7cad89a598e32a88ad69c6556007f8ce48d0a0b342eb0ae622c1343dac3405bfb64627192f0302047c435bb50066306402302ce145c02a109e233a0496fc424f83c67d2b1bf84c5192acd8a485bcb2215d7a525652b5e83e484a2cd29e16bf5dab4d02307742e0f36248030b3d8fdcc708f40b80db145830d850cc63acbb465684b41e40a668cc3e318aac8e008ace13516f126c0302047c435bb50068306602310080d2ba4d3ef9fa2703fe8ac28e19bfe35512ff1b924296fed75da787c1643fed11775ae7b814c4348baa0145df7a47c9023100c484aa0edfd742eeb64fde5cfbde144929e231844a499e21e2e53b0d434efe91d30b25c0f28248896ae16d582f32ccb90302047c435bb500673065023100e2105b75786563a6a8b0f7345357a101b75cd60d50d8593ad3d4637954a769cbf4a5127cb325729ce7b41e69985b98ee02302c84c7c561c048bc521aa28cfd8cba0a93402a753ef711cf511d01e2db1f16afaeca3515b9715e7f450d5b97820741b70302047c435bb50067306502304bac4c252d6aeb16d81f852198646a5318cf2189679495842aa26282161a507f5b3012e003ea0f4e72578a352102e78e0231009db6e90cd9c91ef887f649182d0d6f6a7f1adc2528caf58e07e34e4f239a671360372235d51f1454b7b471c45ac9fca20302047c435bb500683066023100c405b9004e87e2032095f65dd98364a0ee2b3fbc82e7cd1ac112ffc77e4673ddd5e393e95e35a8d37d9ed0d7e424933c02310095a051e42617acec5c600430c2ca3f74649ee921e18204a43989ad30cf7e90b7335c1f7053ff468e67d79ad70b7cd5e90302047c435bb500683066023100ef16675ebe9a9858ec561bfb9a38026949d23d8926a08c9488b37e2a8cf797abb1f531d2fa2a83c2e99c69d287d9898b0231008c5734e54f5fce331d83b37212a71ff4523ea438e1c2ad434abcb69e3f0eac3f40a46d3dbab8dd76675b9ce7a045a2b10302047c435bb5006630640230485a309a1543186e46996f6616327456c27c9e327527e1db985e665c05a0e332cc37a6478b714afb66baf39825111cd5023024f8fb660df1f44af103644bfc951419bf210751fa30037d331e8d3bef1af0f5fa8496f8b8b738d45d4f0a9ec2b112250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230789ed8ffd0382dc8626f80c0fa9a1d49755690d3db17aec8c7ef64e7ef0e8f7e92bdb66131329b2361e36900a90fa7e1023100f36a41c9639fe9fce128b89692eb619cc32307f1defba2adb34b542322587c92411b96124c6e23a2cc21556d2a5a077d0302047c435bb50066306402302e4849109a26cedb4605e983a762532aa436812524f580bb40ab032f854dcb4086835f3e3ed3e210228a7ef9b83cda600230166a6b31935cb6e15505fa38fc3ed7478106ef89eb7ba02f270a2b51e7d522718d4dfbe8b4770a9783e7d1887d8ea9590302047c435bb50066306402304bd534448fb320b70e87cd5f6dec8776730adc7cd616b04938763722d13e45641b8d06d1c1eeb5540a0362684bab0004023074f49c50eb2926f053a0f890b0a663566a201597d93be290812f2ce1e5c4f360a1bf05d1bcc8062d16d323e061af99c80302047c435bb500683066023100fafe8722130ba7ea71c2c32ae69e5e116dfa6f92a727d0ce2699456e6563fe5f9a162f63817514596ac034ae21fa2733023100f3523c238775612e9cfb7ff1a20dda9a592021327c0aace0d3404c4a5208c6eefa6839593e5df19ed8e42adbff8730330302047c435bb500673065023100ca4430ab17c69fe2ec9660dfd85bf68ea8e58211fc19936197681eab91fb571bc0431240d079bf61bd8f275700b47de302300372d4640e6e3a1e1a293ed35aa692a15f386f3ba1cc16392576e0fd0f321e0287acab9534188764fe743d4048f91d430302047c435bb500673065023100b9b47c6500a69eeda3c62dd8e11c7c6e1d417077fd2aa584d39b63daeda982bfc5bcfc2c572bf0f62319cca75b09764a023018c387c59660e5c8d529091603bcdc33597aa379412fe61e091746bd93723479e7034c4559f9dce1d9032f4cbcd384e10302047c435bb5006630640230459494c17d4d7f699140e584efaabbdc17d39eb5eca86332d8cbbd0c949d57ae912bf9750940a2afdf83ecb8a9e34ed7023014553e173dbfa16d49d698f200753d50839ef1bd1b0aaaed75b53b3c5e6b9c96d93329919c86d3c0e00e709619f972b30302047c435bb500683066023100a23565a68416ca60374195627ef3e529e1d7e29d0850ca8b0b80ce533a00cbdda4b66abe57b9d983445fc5ade3c7e8590231008dde179c0bb9f143cfeb854d2d1d5235466431ba008c08b1dd73eba1e512368c00689afcea1cdc86c411efe9f0344d4d0302047c435bb50067306502301fe819b4cc7b709e2519ac31c7aa90c6ae7b91ca9b1485d628c95df1ffd46157ba54d537d3e25e1fab7d728aa88e8030023100b7452bdb805608ba98199a24964388a50f2e03785e19c096a5bd74bf7b4014b4fb9dc24485d39510190cba40d468fffd0302047c435bb50066306402303138aae08ae9298a7c28c89be1cb40b5068c616f499cc3de8c0b499f2b4bec33026839a55e3c466595736e99b3532b2102307643d4cc97509426920b82a0329405fd4a76dae2778bf03f7e736525849ff1ba1ae092b997a2a96e8d98b8f240fb75b60302047c435bb5006830660231009209fab092137255a7e8dee032ef66d2d2aeb581fe8ab3a715b395eba73a07313186c6fd3f93b8d7c598c1df1a11e64a023100c0e492d51713382bdf3f73c4be4b5f2bdaee22bea1c1da0f0765572e6ae9d2c90476abc6b8e40708da5493abb05d86be0302047c435bb500673065023003da5568f1aefbc25122010950c57eb63193c0fe09e9cd83e8d56f3f2c7d84ba4a65b65c364beba8e4e9f7a2cea93d630231008d4d23bb3e37f964ed45a9fd8ecdaf527a13cab00ef1b9280ab65e32c6dd37c37133e245895d741f88ef9dddf01ff6d50302047c435bb500683066023100d814b4e4f5cf36656a431b7210e183d1237683b60d30fa259a07130abf590ead628e5f8d76b2a9a57c7b52fcbb1f8035023100f0f2187adb998202c8995dbd2f19010132e08e1352fb5f908b45fc21bc0b08e00dbe5a04e892e93c9c84d00da0e1ed560302047c435bb50066306402303d107becf1eb75ec58e9c4223fb504d0db2ae6efffc286dd784ec7b2aad6f54390d3c1e9f8735ac1c8e590240afd51c802304693bc3f4d0776eb3cdf88987b9fe40b398dcf620e4fc907f5287c503457ebeade2f89fb8e5f50d36b80a8fe1fddc1a40302047c435bb5006730650230783515c7b11f847cb4f9ac634f6556fa8837acb6c1570fc682fbdb48abd2f12f31b6ea9358771d78e1922a903d44771202310088849665a8a7c6331dec6545efec46a007f3e30be5164a8515627b8ffd6a58e7f4a4eee548435018a56145631280facf0302047c435bb5006730650230567d6bb1561bc55cee924f2d98dcc84cac9e4743bcdcf6f097986b30cc09b8553ed842bde677dad8447ad65643fbba1002310098067a81c68ab56d0feeea74aa23f1c053b18d0ba74b4bd8959a61501287ef6d36d36710f6efefe779ef9c635888319a0302047c435bb50068306602310088ca4788df9896b5adaf03e19c356884175b63ccc0ffe6be938a9f7af13bcce086821bd64e866eda4efc615f89c4a7c1023100dbe7d8c511061529662099ae2738c1e6a2068ce972dba062450be3b31563dae8460fc5ad0fbbecae4ee653683af634c70302047c435bb500673065023100b2fb9ae5a8405e751ebd29caddb5e1af1e2ffb64ce37dc02b37b8baff5b4300e5dbfdd98718f0dc38faf28b994e714e802300379aa7966501bd4e04d77ba8b325efea1366806bfc77c2eeac9ec35ad6bebbcd585aea0b72297f94ed7c1c62f6af9230302047c435bb50066306402303d8e021c7dd8f383f2390e1f7721f47973bd8f235092d503eca71dcd4b618d5a1863944b9399de20d2a157d27e742b9b02301c99c41ebba0407eb07671ae4aa4d51bed2729f6913712acba5f3a3903142a55966887429fb08bcdb5dd7e1b3860f9990302047c435bb50067306502310089f8f862e84d53f21bbeebf78cbb77ce2b526c4823f1eac483e57a9ee27e4c8419d94f624387d636fd46dabeaecd9643023029e828880447342eb7ecabdbeb4ce7816b3cf50bccdf9ddfef4214f762d9df86ed5c5d345c0131cec70bf64b0f2026eb0302047c435bb50066306402301105b4c561cfb7cd342c22a02e0b6b7988cc7ad65f87c90b48a51b88235ea67df606d411ecc777bf8e776523a3d3e53c02303a31f67d0bb40dea21acac1c6a19ac5acfbedc133d8ea900f73eaf874bc72638d801ea2cb669bd9e50f551cddeb81c720302047c435bb500683066023100e76dfc6f7aadfc79bd5d43f09c6bbca0585a7f85b4d6dd75e900a0460c95879be2895d0faf8f928597abf84c8db2f69e023100cf03c656213e600f44ca46ef7401a1bcf4941543143169a5ca082d963dbc2e33f43faa96aedbfaeb8c39bccd9cafc3950302047c435bb500683066023100ecb0c9941310104be9e8352798053290256c85c214e75007b154ac7109adc1ce305f051f8b0c65703077e2b9086e521f023100f36a070be94d363bf77e6880652e6325902af5c3e0138a8cd46335ea0df024e5644faf56f9e868156bed438f250210660302047c435bb500683066023100f5d4fc7b70bee9007902405bdcd40f2209bd2566dba50dccecfb84f7563d0d548850f4c5903c6d532a797cca23aeb14d023100e2b3f89d0266df1e7c18676687a57bca6a5d3a2483b98c785976d263f6fbbf0154b053aa5aa450036b95f528a13fa99a0302047c435bb500683066023100b94a8bead209755f202087bb387fa32a69ee10fbb82633116b60fddcae649bcfc94ad30969c4542111d522fec71d176b023100eff2786087106ce0c76527cedebfcee1a58a87e2935c1c0b6878ca6b5b3cb7acb94e495736fa4b165ffada2c64d32a980302047c435bb50066306402302c5e860fbf3b73ad78090ad379a95f12bac0d6c01b50ae7c4cf148de34059ffbb74dad643455128269bb440c2360befc02304eaa09e5c58996ea73e77ef283a1d00df691c4c61a1edc37d4575b31ed71f36279a22c014cc19f786b569ab4c34871730302047c435bb500683066023100eb26a344bfeb60820d42aacf036165c7cc023de67df0c6b40b33779d30eca82b23836ee3c8039083d9103ec07b1f360a0231009bf3930dc86c14173a8b1ad4974b8ee5fdaef90592b483648df614dbf6ae11de634b3c75f80d95a79588761d45ea87450302047c435bb500683066023100f52d02dc05133e5fcd068882d56d4c85b7f96162c6edb08c52b1d6a9623ddbcdda4af0665376e93b1855ada80fc4de31023100e08a6e30ecf931a8009e8ae561b2844abe591112c094cb7ff04e492271c809619e9d497622bc14325b6e894d42d963900302047c435bb500673065023100e180325d96aff2a9cf7dfff36fe3de98fea8b805173e089a11cbdd450e0f90673e6e86a3aa761deea62456c024acf5300230078a503c5935f6fb1a866cf1ba2ac9c663799a48352b29fdaed8e12ac512f6065a328a5a60f217929466f68fe57f3ecd0302047c435bb50068306602310082c5882d147ffcfea7a23b0b2015714856a83d318cd182d3b3577f380f402fd1ebee516c2bfbdd072f0a32b433fae9af023100c1dfba3de1aff2d0be8dbef8004fe03417cf6a9270b74d8ac2498dc400158a2e3cd58171da7519d01186cd4739dd652e0302047c435bb500683066023100b688daa556e20334a3a5e4c77824fa223aa5b298e6ee33579272102df9716c6fdf709771cb398ab820b7c7201b3bacde023100d5820502906cc53d4525a586c7eabd40ce06d1cfa4d4b89e3e1b85ec2bdfcf75d3912f0fc2e470dcc44016ff0d47d3270302047c435bb5006630640230436cd7d792f4e43d304633c34073b5628557cc2d98c254c985e7f53a715e272fc8154a769c4ea07973633083bf80a1a502302ecaad3e3f715b39ea83f52799712f7b8388a8b7d83cc35e25595359f78d569d1841eb567c30ada17820233da04a5c0a0302047c435bb50066306402300a72e53849228e76ddb8c06291bc287a284b3612e00273f1c9a435369e5b68f9323ac549dd982f027b3fadec499433bc023042b8b018976f2bbb88b74e73d5cfbf225f5399cf5f4138249d35eecfdfc41665d7f5fd397dc0496d90cc45da9a6730e80302047c435bb500673065023019cf448cfcd8ccf31ab048af9f00ea18e3d926747aa82c5ed355d96697427e58356a056b7ded8d1ccb9f6edc7262d2510231008c33b24bb5ab4f55f93ff2e9e0d1d91792431caf388738eeb90a6978856fd45d84c42ef590eeff962da8bac1de8c32960302047c435bb5006630640230014ab03ff8423959c9263ab852ed0f63b6f4ebf9e5da7337b7577241fa0368bab242e9c9b671c53f8c80c4d9067f3f13023016f9721e6a215daa41341f84769b32c0030dbc378a4fd867e6520d8877f3aa590fc5e410b3c016d4e09d5ec078c7194b0302047c435bb500683066023100d02d75588420c340aa2aec858e4c13e8d93b544367f2bebecb4b10921034215325a9a24e0e59c092b80952bc4d2d662e0231008371a6eb0fcaa0bc60293fd949d8cd3791e8ea1b9a1859e9b8fda1e9072e466b03041c71ddc7f0419c0312dfe554e7450302047c435bb50066306402306dbb2b803792fdb77e60ab0fa8adf3d9ee5726175c5cd6bf8fc71aa01e6e3eb9a4ab4c0e5cd6729a39602b073c1fbb0d02305251524cd07cb820fa38b9f56cd4ea68bcb4d9479134686e668e4f0a4fcb4932577b8871be80f4badd4a7e6085bd787b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310082031009ceffc05a0e1788cf5d6b904d78e71cc76da2d2ab2cacd6caa7858a38f183203a7768c8f1df7a4f1c3e0d3a0c02306a66440922147f93689120cc69f3e4c7efcb8528d1b5f96cd3b7e272a4b686f5f923e1ad62a6d7ae8675b502e6949a6e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303b704dc08fb00670aedcba39d67b6d1ea6322004d716e24896c4de39a117ceeea0218198a1d098548cc074189d5aea7402306b41a780d46d3fea9c748502f9230ce74bc04038caa36cb4e2210de144486ea36d2cff90c2f9af0135d949fc980ac9010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d4d0448bf1f464fc9e7456f75d1960a8a5af50b002aff43bd56e7e57d2147125573aa9ff900fb77e4a20b403c8d21182023073bb45b816fc18eded380e0a1ddae99fb99548d6b683511a4e9b53e96af68d931f037d11e789d658b0c6066d7818076d0302047c435bb50066306402305700db3ec4533cc9620bbc819099a5c8d6fb8166d1b2192d9060a70f49229fb77dcde96177883951f4a203073b27c634023004cf0f8b0e78755919f9cc09f334f88f25282012b1d5ddd994091a6706d129ef938ec4068f5fd9cb55ee44cfa5d43bf80302047c435bb5006830660231008868fb3b8ca2fbd1c687a10d24439694019b201c90ecc1894f9d055ccbd5802a045d9a2ed8fe92bea7f4cf4f5530db1e023100f53cf6ef9f0b77d8ad6c5060550e40266b309728f89167dfdeb982a43848673e5b43a69ae650826b7517e13e4c64f1c20302047c435bb50067306502301f565d689011e77d698ccfe64ab4bd92ca5ceea20392ab342de255ff309e62fdcb9dfbe11ffe51ed353e32a315777421023100df5fd55fc2328934976b232e9d178b55b99b76c268f24165a7bbc71117ee4707b523e3719f01840953f218a44b11d3ed0302047c435bb50065306302303d24c2f00f6b82aa509487e8cfdd3f44e535baa375f753264444fd45d1be2cb8cdad099f3ebd7d17eb656a28ca82c228022f36cb424c5507934ebf0d3f05a4be2926fd08bb4835f42c59e36a3e41dc05fd1100ff2333d430e1e2418f28d7a19f030302047c435bb500683066023100973244eb5c36d01fa75550d75e0cecc653d0b3577957c24b3806eba06341b658ed7b29a7216596a2566a742d1d46edf8023100b4ab234917b69cf3d2c431472a8d44ed0adf62476dd3001f7d760417f3fc508d62098faa7dd0afc1a4db338e867958280302047c435bb50067306502305752dc7dcea806c14040541e512d6a0be40b6f187552ac034cf79486cf6285dd455939a6e51a71c9a17511cae903595f023100fd67b08c008ab0b5630b6ade7e714a5afea05c2e617c4d51017218c3c49fcd5c5b0b92d5753358b1efabc3834954edc20302047c435bb500663064023045ea335de52f10c19feff2f61b5e300d9e1e3797262a7d368489afdfcf0a82f6b9f0bc33767c08a02d53e957c5a3bcb1023046bac2692c4cc4324011b0f619a0286bc22db375abb25865cd49377e8c632bf4670d7de14de967e1870e223dc2c6a0b30302047c435bb5006630640230101338bfc26d43474bf333f84fde49d74621e21462603bcc5c273919c7052bc87cb425ac3e5d60521164c737cf7cb4dc02307f753e76f1231f23560abbc1bc3b5e0aa9682b5200b6ea1a2d1545bf7a92e4df18ff108fab372ccddc64d6b16f2d11f90302047c435bb50068306602310092278a6dc812a72fb6dfcaf22a2e47ed23c34800dc68547bffffcd25b1cf062b86c355f0f77f3b91dd91c2f87551cb61023100c278f9fc2c7db5a4725eec47c237e06cf1bdb585432dd3d40bbd3037b7f716553c54d392d4e0f7f181b4427cea97dc620302047c435bb5006630640230339f89c82f170a535b3f5fdb733818b98556731bee1da15e56ac373124a51255a0036e41da7ec5ac79dafd54cec9d4960230438e5519d574ce0e78c82edecc0163ecfbb8cdb97c5cb0950ec62342233b751690c0e726e4278bfe7e3235011359d8b70302047c435bb5006830660231008d69b04437a9ab2cc84cabeda5bc06dcb27693f6ac0afe0360c845f078a493351c0e66972dd11076a5568665c3b477fb023100b00b25daac0933785f92bddfdbfa4cd6f5b52b66da99cdf0ecc39ba1699afcbef449afbb0caa8a8193e49a3e454a22b10302047c435bb50067306502306d18fce76d073acbf2922a5e3f647b7fa187f79b83f58d39532a1de39c7bb729d9996aa6a228d9df37c232e502851e20023100a38f4c9eef14d57a7cb5ea8c90b1724458363d9e4e06376b44172c67d6b88dc46febbea2d86bc483a92fb979ce5d29e20302047c435bb500673065023100afbdeb27c8fc40c83d8b2cff360f9e088dd26f81f2259f580d7365a079a56f3fcdb8662d3fc3673d4b66ac7e4b7d40280230604ef2e8d4048e2466ead417ec7e653a35b1d6e651f7a79a1821695493ef603661512afaf705190b87a99a3a0392366c0302047c435bb500673065023100cd8407f14b976a2160775b59a3b65a169bef56c441cf585caf70b9d2faf869a83f795f35f4ec09b79afe53a9b190c8e80230121be1166f1572d8e19449a2cf430db64af97e5f6ef2139f11bdb9845c1375d1f4c6388ac0f2ca250f710958d42250870302047c435bb50067306502303ba550faaa36f15186e227cfb75c0d24b230a6614ab6788186875cb664543be0b0a63848a562abeb53518ebbe7b21762023100c7b8f2d6715bc1ed6c8ec7d87f1999856d256f4c46a4ab92002b4da8fa4959ff3bb28739c824cf59aba80f714b0d06ee0302047c435bb50066306402307924651612c77cbd7f5442c4ce7104e67348444d7583346f5de145f3e0ae79ba9315103d721d2e49daf3826b630ecdd7023010c173de7a40e660f46ce21e8b8a2d367ac3026887d6474129a4ad5b349db2ded9d0a4865e7cee7a83b1bfb5e75fbb660302047c435bb500683066023100b436a8f7143e0f8815fc4559af058f032f798d184fbb1d5dd00cecde4f8d9b5a111188bbbb3d3469404a227256b2b00f023100965ff5c7f8d8b6b47ee647f80abe4fe3301c9d9ea726090eebacd545cd91390f0eb3da7cc360c250ac720944784a51850302047c435bb500673065023100928cd6367ee5b4f797bbefbffebac35c11e9f1925d15d5aaf8c5f66d5cbdaf16db9214d7de356e94b3dee2bb53149139023028ef6808ff6ce63e6b034762fe77a5535be36f7083ac1a9d2b77ad21fccd391faff03761f23202cc8b215bc5bc4735e90302047c435bb500673065023100fc161e9498b62877b9384e4fae6934cf1e52900d3f8eccd17bddcbc9f1244b5dc45f1e21424002e5c5fa26ea1967335c02303f42d3134cecbb874a8ac49c0467427148fa5003af9a4a0876cc74ad76125764782853f0bad0a1c035b3acc4df3e71290302047c435bb500663064023057e2e05d486fbb39a4db3c8c68750a009c123805fa4dc29f400169fc34457910840d35961c2a3bdb99fb76fbebea5dc40230014fea209fe5bd64d9c1db1482dfdb78678a25c09a421288de88e8ad2cc704343321fc8290a3f3a749373415120fa1f60302047c435bb5006630640230773031fcb6bad1acfe964997fa5474939cfb3f3f447df9a81a2b82dbe8a2f42a9d1ef6a96ab2d2d2ade8fc1a39f9a4d2023065cd5cbf11f7fa0548ac24d25a5e8cecf965f4298ea073b53a94548990a26eebc8d18a268be371aa7d07b859621228720302047c435bb500673065023100fcd2860bb95b38e19223b67fcd83f88b6bce6da40a0d601e4b5d107152f7127c97486215b00d4ebc3d33a11f63db039f0230368516f0addbe0162b715ab677d327038f322adcf3280ca361937d4aa98693f13d9c1ea5d66516c39ad0d77e879b47a00302047c435bb50067306502310089dd9667a07f9f25df92e19200b27b8e92017d56bd4885ce2845b0f4eb617d78b57ea02d44a3342a3b0be8935182f10b0230024c6d4b7b7d77885ae53ee67831b1e3956aa502fb83f932e3f18cdaf228d11c0b7fecd0f92b236c35eb8a41983705310302047c435bb50066306402307f3b73bdfe3128fc05e41fa4166bc675bd39a5750091f6f3b2d6960953e25df1339dc0501e1f167950b4379a569aed5d02307f230945b1afdf215280bb428b282b1a1b7ad3923667ee3de75e7e587180ce5fba2d274df7ac058729900e4c577c31560302047c435bb500673065023100b18a190a188955b49463a16d799cf76baaa5beae722c06dffd6ea66a3b52107f7e8356a8c51b4d7a2c06925c51a46cee02300dec66606bea00cfb4747904dcf01217045318b69e69dbd3339082025e5c39daa3966ecfb9f51fb90931fd18b9307e940302047c435bb500673065023019e9f8d1bd6017b29a90ae14a39003d305528dc81786fcabc24daabc04f3bbd9b6b1936d44445efbcedc32b583b5d33d023100dd345a8d3a26308f201780e9f8cf515c424db836d70f0a176b2f229a9d06ffed681cb98c5864cb8f63903d44870d7c9d0302047c435bb5006730650230495fd6ed5512a042827c504539c31cf40c05b4dab0f2469383ff36988b5f342024b63237d27f1629c79d6370a522c4e5023100facb37e48176c489930f6c12bddd57b68a3111bc08030b25cfb0ac62dbefc6aa6fa4ce0770f0f53188496684235ed5060302047c435bb500673065023100ff98dfceb98143e691143bf44c861109c70726139c441588cc59546a6e43ba26bf1d1891984ff8fffae7573c677ca9f102306d1fbbbdc8c2db4ffddb5ec392fbc7f6bf152cd3d42daad9bf3291eb1d7e0c67b19a0319f4bc9287c6b7e506ac5539c30302047c435bb500673065023100f643b99a3481ff298339a2cb1f6c2efa4418fdc0f4ec9ed6a758ad8df3865cb2943355aeb931277eb92c498eec325c8402301a4fce6255df3df610f4b2c5f48b6b97f628e7579ac8031d4c37072baf0d125dfdbf9eb684fd6abe3bfaff1a51860beb0302047c435bb500683066023100f6d8d6cca6a67e877c3a066ac2494c2a17fa34d31838491d0f975e21ea1fc44179459ea805a7edcdf3e6490f76073ac4023100b4ecd21a96b4d927761595069076e3ec16728f85648238e8ccf8361e1d3bd593a1c4c00a1ec348b4239ddeb32f1d749b0302047c435bb500683066023100c96bf1dac690f1da48c26d639056775bf80c4ce081c14a18ee15028809e1d86e42d192356be22883f9fcdcbb81ab1159023100bafe99a1baddc93d25451f01746cbbc67f5e9102d53a5259c4e76426a76c7481b674ad979967ddcb16396a20b91c59360302047c435bb5006730650230350c358f5a28e0405796113568b6f85441b22252389515bd9094e0b8620f9c039a00f32ab6fadd6680454d146dad202f023100fd16c0055df3148ab156613b88985364dd064864d716072325766bdcca09b8afb431a0a628ba0302e77172e2207963450302047c435bb50067306502303c7bd03cd0d08cecb554b0cd0fb8d946dc98750e8fdc9acc12be7c4890af586835e74fb3cef493be4de2f4ae50b8468c023100f575787fccf2b654879ac1f4b80f29bdf30a1dd89bf81d1177a018da0e5836f4af25f23d57bf906c3ba836b60f9bcc200302047c435bb500673065023100e14e1d299f84f1ae7103b55753cccf4a536fd54f77ba998f77f90bac5631e3cbedcb72cc5511fcaa461248752954c7d102304b367220f033fa06e0f73be74b683258828516567fbbea5bdd215406824054975ffd8eba3094fb36d0ee5c3dd3d567380302047c435bb5006630640230463b214c78c60ea79c1027fca720bafa7c92a8b00b31dbee00f56479285da86d41f5bdb4b4f5723a10ca28da79fb5662023077836c24986d04ebf2715f25d6f57b552add63bba6036c4e71aa8090076ed7db3ae8eb1db6d62fde654e79f247b1c0f00302047c435bb500663064023024871ff8bc18fe09c761d52d2d936a245e9693982b25e2562d72ba607db0db3016c298ee87ce9527c72d1a516e1e26ab023006d4e9d278444e5af282e55fa963719beb169889605e7a8f5c3d612de6187ba3ae398bc03594ef6c2b64792484c601fd0302047c435bb500683066023100ae4fa0b91179e3d35635ef39b5b8c634fb6f098d64ad826e8a16fbd284ff9c67686255767042049fc3be4767726aad520231009a6bf996b953ea005cd9d7376b893ae502358091a6a931b36f67908804dba8682777a87abe28ab5b65f88ae5eadda7f30302047c435bb500683066023100b2f25b3a2f3ab8f218dfe274db46c9dee3708fc44d7297d296c4773f30ed2a6fd06eccef87183b0d0237c5e096b0d0f0023100d457682ba873e8c063d72e0c7405382b1aaf08fa5af0068feb139ddaf49c66f6b67113f1e2234a2624c9c9f6ba6ff1a70302047c435bb50067306502302e9543715734e3519016f6db6d5416f7be90428468a9f7a7dc3634120bbb38c7437c3518e3887e942d1099e88635b3360231009d7ab9abd098f5fd70568b8aece5a2dc189690f5226dfef81cf2d3b60ace5d844056c10ffccbb77c9afa886984c7441b0302047c435bb500663064023051b2aafb8f51bf3777551b255fb699fb0030ecdb450dc817ab4ae55f17c1495db283ac1f3211a0e173d6c2155bf79c85023022a0799b0ec5b125833bf5d83d41d2db1064438ffd4cdbe3009c5622553c51fb79cc805641cd9fd26c2c828755b5eaa60302047c435bb50066306402302e1a917204623b6a416b32a934497314a59f62ec5fb1f91c1b62516431094823e01f40fde6274dc18b400b9d7be4883002305338a7314fb4a1ba7fb35585fd7845f136f1c6a0f50914ae8d7c8957df15a77447b8f1ad064c38701eadf1fa51e24c1d0302047c435bb50067306502307cb1041e5edab6c0c0ad2ad01d478643a89762a430f2e928ca2898d400b34e7cd521fd0786539e61f64a631b6312854c023100a0c38d22769ce971cf089d6ec4e9a170a6f400109834ee330802f6a42e0907f8a38d975b6b4d9d9ef7c4629d23ee644e0302047c435bb50067306502304a59f132cdd191427ee9619716bf95ab54f2458c03f465427cc867e6e86066a2e2e799e32fb041c39015c23b5b77b2410231008785b88774b73d1e9bc9cfa22b2b43613a0de7ded050c2a1a0d29af4dd2b61ba2db0704b046a5352d2b330f380ae7e880302047c435bb500683066023100bcee5e8380ef89107e0d2a113f7ddf52fc031ab14e25b3949f415373277e50f67e5561a3e09288bd88c53dd0001fd6d5023100a1e2e76726993e30e1b71267d0448f9bcae1c65e60e7e3446bb63362e939c2a8a751f69b542461db110ccca76a459b8d0302047c435bb5006630640230079d75f9a26d3a8d833fd7d22acd7cd4c13319b643592175e01872320bbb94c166e9d8d4180b88051e35117031b96727023068cc34a96c726f4b4fa1890bbd72c2e1a68bb0ff6e3a90a05356b1f9446effd82eb0f05be21298ce41616d1baaae4caf0302047c435bb500673065023100d2671ec2bf9d7b2e4927177f375f91c5399d7d79ea1d219277dc673c18af33a6dc1908a1bd53f0557ec2fdeb5dbb79b402304b1774ba05f08c28988a11b04b391dbee0470b73661baa14742d3b40114329525839e4353f69ca2fc552dffa0c4023640302047c435bb500673065023100d649274abb2c0369e88a67c89aa062f616b58c1d69990e0e1537d529112b52934427e2002f07498000b3023b10e51eb3023069d54868aaa44eadd629adfadcde4a0cd4b683ac69c201cbb6b8fff73e38a55c5d439ee3d2701861d0a090d16e15c3170302047c435bb5006630640230303619c5f5636024a0f453c602dd33a4b8ac78847d8eabd57f6c782887d6a950c66b32b6539e3ec7b296da115163c0f0023037367ef5041c950a2791c9d1b8dbafb3afea2d17dd4982074150d9d9b81c3885017bb3f7be9dd0725eb82d4bfe8ae9480302047c435bb500673065023100fa939ef26b42b729e9c9142175747450b693bd76c1dbe2a470b0f32df7989de20df3c7f48457f7aaacde396ea0d5e2f9023076c0cba1d1f60ba55d471650290252bc508f63c6db006ead67364e9751c8e64b099fafeec0d47e877d2e20de852e92a20302047c435bb5006830660231009257caaf758debbc0252748900aa0ad3305663aebd65f40b027b9c539f5396393565dc257e8a89b31347cdfb3d5ad307023100e27232594e7dfe0b819765b08682a30250acf3c073acea7e87a3407709deea11856b8d22756fd3f26a3d29e83663484f0302047c435bb500683066023100ca5f3e50fac481c9b2f6bb43027057a1cc23b90fc6725421f5e12ae4dade292e2f043f2ec1024983336413e2a1d1b6eb023100b7de629747a84ee60bc94faac0f7fd47b78ba189a6f919acaaccb06f6eadf6f4ac057b2dd1fb57c5e0548db45d2d7c150302047c435bb5006730650230301d418525539df46ece1a7a7b59633b70bb8b9104b6dd5dd781a0925f63fe59742e7c1a8e65504749f2b54b2bb54e57023100e754dea40908b23a26e6734eab6f7fa125b6e2c0501c6a3dd981caef2fed5b89629d0a70a59fd18aa650c72ebf8a506d0302047c435bb500663064023066e72e1efdbd5e3dd20216a6a3752eb4bbe1c3e8f8c17f199b51f67b4d744f946e4b2fff20f9d9b843d016ea6255af0d02302fab955117d04b63beab4a7a9d2b97aea71b024dfc83df05460bae34e49e4078b36d8edb1943970555173789c143afb70302047c435bb50067306502310097ebe07c702d5252f83db1fd7e80744174eeefd4d8402e8d9bc12ae00b57056f9162fa1fa4fb1ac531396b4641ec499402305b3b27f1f094860e6b690130a2854ba7c203d697d766206b469065e4c7b91c794a6c88ac97b735bddcc3795813fc08680302047c435bb5006630640230757ead90e49c85cdae404bf5af524a5be21e074a4f4e9df7946025e7f327698bdace30f1954afe97aad89a50737476c702302dfad6a075bd7fba564756214a09e5a8efc9686e4b39e601fb0d4ae2b5f9b9ec7f369f340dde4de467fb93046dad87c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d002f724dac01334917cc994b5c26ae89ce73b86c146dc7acb0f3fcf3dd6f38d15c7207b04831353f37912fae3f9360b023016631b56c7020cc4691368f2eabaa1e4f8d3c6e4fbc2b3e6729f18aeb655ed168d2570d8ea996f4b9ef9473098b816f60302047c435bb500683066023100c3d61fe9bb697b4b0b00318d24c0067c86cbfd777ef9e125b084b327320712b394d5fa64cb5124f6939d3c6723f4acd2023100f19faac4e022173f4311c4efee9ce1dada4b197bc72203bce9c275c524ee8fd92c2a5fbf7190aa07c1833ca2f717f96c0302047c435bb5006730650230795e51581ee97c8dbf937d2685b6fc135e7368ce952021bb3eb63329f17eb822696b2e3a9e4d6e2581b0e1135669e883023100e41cfdc76951d50e7a50659b54bdecf6b563ce9d10204ede856d7322dbc6d803f740d13f01d278db7a9d71ca2570c56a0302047c435bb500673065023016dae445564723109c2425335b549ee3c46979340f606ce4f231004c2e4ed5b1d1beadaab777b269b90d9fcd9a7f8d41023100af2370c10e964d0882c5bfc77889fa5f6e2bfdda969b2c10f5bfdf42e66e4d7732f2a8ae625222a94d48dcfaede873a70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300f83cb249669c3145dcb5c0d7296127bce0375929a740be700a13225c9f8288825e8f4d53ed93e4501a5d0bb678535f3023074f3c5774fb7a6206fc4cc36dda38e45595dae1dd7101e2ebb10c291925fdf8117174b03747e57fc44e93f35a4caae690302047c435bb500683066023100efd644b9259850dfc6419546439a00f547555d38d7757ea2173a1e25f6932f1d745c289caa71ae2562ff6f2ab516d8f0023100dbb250108069692d8cc69b1c2188bcae0bb0182bbcef221379354dc03c04304e231cff4e94dfd5148d7bce2e7c5885940302047c435bb500673065023100d588ffe347c46e571f90a303162bc9f22f45e656e8c8740cfec6b02110285cd5e1ba90658fce7f7e96db3f068c7fa1ec023016a85a48ac995318bc36787860cdae41ab7b685469c9c1a9f373f0cd230ca7ccd408e3930d55b0aa1ee0faeca75132b80302047c435bb500673065023027dbc3b259e50ff7916d09452525dc6eaf76145eecbbe50e2a8e2c5c0a790256a54de10a0d6c35674b4077902df87bbf023100ec822149d014be2bd7568d38c2b014064b2ea0f25198510b0f30e291e239efaa2b20410828acf3cba3235d8456be58c30302047c435bb50067306502300961c099274620fd1eebf5fc96cd49c66c199eaab183ac8724832f10d78b1e71eda2a47de7185dc1eb07d5e17ead7ac3023100a3910b22840f01cbc136daea281c31f1f264b5be05031fcc1952c3fd507d40e8b5e0f90a6e9f02222f08db76f39b436b0302047c435bb5006730650230438e2f371ccae756c86b90fbdcd6f22361f19ec49304827737dc5e96832b44ad82587e583b7f845adf0f160c6d6beeb7023100c43f9f59e676f35a870198d6328a3836206eeae591f97a70d1fb8df25c55f03ba7a9ad5953adaac08c42a4286e30c2b00302047c435bb500673065023100c814b26ba3a6229e6145f8e3dd6018ebe4a5e1707660df2cdc2d9c1834aa43d7b8fe4ffc5258a4160eb30f137b3940f9023011a22ca24db62ca14e3d7122f2234cdbc4153abed2fc3b8e2596b0a48d722f3f0cd3edb0a4efc6c3bd843997c60cbe510302047c435bb50067306502310081f87f1b66b179f4786c3238714ec3bdbc58779e7ac101d53b99a7f654c3ab14a5c74c644360458ecde2cd7abc695654023021e44e1d73844605a638674fbe1b614c1c0766d9dc30b0b2f6e8d211e77bbe5d2afbe6439a78d43f47c873006721fa8f0302047c435bb5006730650230449ed64579c5b9e35d3c2a083f212609b265b1a7e6d009ac1b2edf49f3bf425b58b4ad4f64212109a7b622dda4f52842023100f2aaa6e0df87d21dbf287e1051b1349efccc4dcc044479048f28cfe90e7c3f015f9cf2c8323303b2d3501fa1770ce56b0302047c435bb500683066023100af3606586e241db7aec67e4fa3ba0696e89a0ca6a1c0d9a29bafe8606cbad1ab66d3e44715ea6a6adb7b04f784804619023100929ce0590905d4663be984050a91bc2cb153c8a9902707514b153d9afd591136c79997eac9a8546d2bc70811d1a8871a0302047c435bb500683066023100ee2a3b4af190e2b3db28205c9f558e1d3166c913d3c74dafc16ab98a77424e286d55df1dc471b7f0070815e95282a02d0231009437a17d92e734a6d6b02e1d7d9cd60d3206a05aaf1e7599f738c0beba78686e1845f206eaef07655aa1631a8e3370110302047c435bb500673065023038f37aa2e813e4f2f3f650a3d481025bea75a702ee9d4d58b57d9f3625e6ac227d19c022250114e3343edadc1d79fcec023100de6fd403f221e7df9caa8ded25b1bd1ca301c326cba426abd56c5921160524bcabdce60f7e8351029aeb3509645904d30302047c435bb50066306402300fa2094cbee9d4d814e49ddf6bb1e345dd0423869d977909d52012d59809e6457ffdc44c661cabc9bce7c088ee3b2c1c02303420ba88e56783b1d4a46bd24adb1154501e228f30849fed5574c0e1582542844df076b7e510ea08cdb4f34f629b7ec20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310094e052596186d546b2713035ab86270520d05a2ad4f43f635b5e3e9c3cd71804630325a7c67f531b5a163a2abe5405c4023100ff812e90ad899fb5e84b4d98123fe06e781f19665333cd260b92f9320d3261391fee3a235bddb4e097148b03802ca0090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023001acdea51c3e149e6909e185b8fc0fe6a2c6c1e71f522e085f3c43cd2b2d054cac994aaef5f11cbe214d939fe3eecec4023100b1ea88829cec46bfbfa4eab57dbabcbf45a078451cdb144264e7f6a7b44ad490a7be442fadca05832f8cea0da47c2dde0302047c435bb50067306502301753611d313ccdec3f945a86a1efc397341ea323668bbf12b530a7484dc617b2523981ee65a05ecb9223041a7ec5cb4f023100d1c8e624c07cbec4cdd2ceaefe46a730d99bc2f3c2c53520d94a45eb9fed0d49c732296bcec829ec717a34485306b7500302047c435bb500673065023100cfb524cfeda9919d7e428f6c66b9dbdf5152d50fb639359370675573b9fefc68622114f7431230cb2b476a10437c5de10230530b6dddcf099e1809a2470acce56efb5f3fd41dfaa4294d99b53babbfa967e81ac326155e6da50ec80eb10ba81af6fc0302047c435bb500673065023100ac8c84b75f3c0afeae3aca3026424b333aec0ea26449a15e21ee1c10eb0dc74c707655f86e93ea51fe16a0f627b2a41402303d38fda0190ba3a26c84f7ad9cc0bd7834382a6aea1315da672cf10c5ee2775d667bdf9fb9ed4cb55e38168ad922287e0302047c435bb500673065023004a831b88b634aa38cda447871fdd97b468dc294d5037b53262c79d6c94a4c03f1e1d50fc76eff1b93cd843c05cf2d7102310086eda9bd295b30063df5f46275be983ad6a9a7eb832ceac34bbc3de7048eeae85464a90b97831c0ac1b8086ba56b12e80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001aedd47b59119df841cb5a71a4aaddd47fec4c7439e9042b7542d9bb38c24ab0c59747ccff8c801821c6b0bda81197d023043c39add6452ab9d35f218d74882fddea7b1698290e00245f030b79fb49696144b9f84c55d460ce92a12b953cf2ce5ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230094f1c6388b086986608e32ae4cc212c07258848bb11226f05beb28de4de3b3786113dfebe0a1caadf488df67865fc6d0230722bbd2c88277659c3c11f9fbe3cb3edf4d4cb073517656fe7372779de060b4a5d0364fe6abab365c9977ed0f14fc4c10302047c435bb500683066023100ec133e8daa9c1328253a77c3fb4178463273bd3a1fa85212ebe41e5e63d6d897cce3f0cb04f6cd1f5c4a4dafc0d73df0023100ad6d61f0de9c150e67632c6241933ce6b2e4b0f900f2654d61a7ec11448903b3fb4882e6848a6cd832ecf6cf7973b8820302047c435bb500673065023100c50fd73a73ae1a4211d9dd2f478669df698eaac5eb44b662e8e59eb03ccd2a89e18a4304a95c327a01f1d91c6e8ae335023063b1b883c4b9808ccec6f5ace04524f9026cee595fe53d7d69d9e7c9962150e36bc4118435af73042d5e9543679d75e80302047c435bb50067306502302456f3b4ad54fd9495d43e063ac6269f020ec9c35410a2bb859e34c7fab5ecfad73ea717d1941891ce96a918a89d1b53023100a50f64d6eb807d309b5cf15e61ad1a518b53341de244c3fbcd718b0cf1da79e1339af1e6853ade9ada08df946b92c6220302047c435bb500673065023100c6b315c9a4068181baeda6380e7d093de9ecd0f5c8ac93a246af84acbf657ac9c9a9090f28d85a9dba6114a234a765da023053ebc03b5fb172349f6523572e7496ae33e8be8883379c35fe906c2811f03626aaeeed464206cb13db751dcdc26b73e00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023015a6280ffa25f80c07f3a3834cf624221fbe2356078469a7880ee752069a0bef2c017d49592654a8d1039857a418141b023100ad68492ab124df1f28b593d771fba5f003556d3cedc2dc253fe731b57f6ea26aee6477784d1a7d2eb0de6e2d6ff9a92d0302047c435bb500683066023100c7b54ae45b9f5a497fc70d5cd084f71d464bd9e0926ad4ffab0789048cc6fd0c6e59ba8887f0a1784aabc7fe26a7afb60231009e0585378de672370a2a481a03a188a2d657ef3d759ee53d2542182962fdd0c50d83b8f67e0436da603c1fc79bfde0a40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b2ff97454dee5555fa67d8c729370a10e0346373435473cea4898e989fdfcda92efefdfb18a9106335e32c5050bb66d02306d44fa5f90fc88c2d37fc6b9c1377ba216fc0dc0c36f93d4dc4d27cc008b4cd77643686e3231a6cfb92f4bad1c7c63450302047c435bb50067306502310099f33b763df834ca4a91cf98f07c66d728f53a4a7f8c5c3de88a1341a8c2ce92755981ff1f84661b762d333ff685ac84023057edb48787a4a719a9fbbfe8cb2223b7ecdd648591d2df2e8d0c753a32c4e4faef55c19fea5e5b456ca2602031d1d9230302047c435bb500663064023062dc959e7965e5090c358aae48edb228750cce64c0a061f945363f19cd93ffebbd401dca3cbf5d4e885a5ff14e38654502300e6260d7571467e519e2e57c82bf746cac13aeead43d419774c8f3a95ecdce21cad410258a2fbeeb8c5de878424db56c0302047c435bb500683066023100cac6efbeb3b44283ad210bf90195b4203a5e59d76abdd5a58079d09bc59d31a28e5c2f6d54d5caea8ff7b79dd482c255023100f41bc4a879b10502295ea2da32852097a6f4f5a181d2b2cdb7f755e703f4fb8bfc11b084349f77fa4da4a509d587532a0302047c435bb500673065023004736e0169e463fdff5aaddf2e40e9a7c3d241512778e62b4803f7377bb6d46242de8d2d67ff4a5d7a4326768b70665c023100c71fa22acc5f691416f8ce82238b446da13af94ecb16c8ecee85ca2411a5dbb1a770aa34272dd1c1a6017c767be70c710302047c435bb50067306502301bafe8482f0d1df23aa3356efbba51bdbc1f402987580be37eaea6373e4166607aefd0cd068162adedb2a8bde5ca173d023100ec155125a36b0d7fc195fbc595c072be37ea382f35b90b32db6c5d5420c440c9402f5934d5a359bd5eb128fb93746cbd0302047c435bb500683066023100d7978a87259d00ffd69078dbb42c416e703c601c826287373c449ca290a30a582ba50c351bd11518a12116fd1f4a9689023100c86c9db7dc4a55756720d9233ca6884b55dc056dac0ea97171ef25e21b4f267b92f08a82ad9b08f83662281c9806a3860302047c435bb50067306502304d4d1a259892d65849883bb39872b1b102d42a9337791c36b259c29d71666b839c1101b0043bf95f52a18c7f759a671d023100e433202d267c102806b016a2953d5af591b27bafb601c230e0cb1ab75309ef146b0d7d45a51aed8e37b5bcfca143bad80302047c435bb500683066023100b2db6d5dc4e78415c093ea0cd445d41cde648fd6edde31ec2c6c94e72437a27317296938271d92bb95d69c5832a8b8c2023100932e9f8bbb89346a5a2e9638a90c64e017a3286b9fa0b5bdd2927f45800eb92e56ee95e913688d92553120e0594aa0f10302047c435bb500673065023100854fb14217fb700a06066bd12a2f44d809d5068a8215fcf43bf600be60528730624d4664845d0ec4c570fb2f9d9c1f8502306421128353232060903c7bf45e53cb7f2e54ff1bc8d9eced82a7b3a4e1597139b76741cf433204988062b9d995bbafbe0302047c435bb500683066023100fb57d5f8206fd8825782a42c573f92690ce9205413f1c81593a8baa6e210fd7e6e42a8d13e94d9232472373e787d1ef90231008e1dcbcd889753a0ad443a200a10dbd45478ede09abfda542430086b89a164463b9116bcd245af6966eefff96a07e2530302047c435bb500683066023100fcad54ba510e15b608fd950dca4cdad43206a79f7e8b52651de54725891d113a0d434bf956c7dd1cc6190e4a2602fbd4023100ef46b98121f4214a1f442d8eb4947b881ef4cc6d5b4ae3b358cf870cf21479cc349db59e5f010f5c6494231c2311437a0302047c435bb500673065023100f33805c6fc2ad5d42ae19288961970411611ece1f86ebb14436295df1bd2e812fe1b2cb7f74d680e748c5cc0d8165e9602304747571a7fb6c4d6cc9a561fc0614e1efbf18a2a4f7add0cc7df725b5ec8ac6f3d126765136e246de9ef424be5a7222f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009bab03ec069bdd15c521a449cdf9dd341abe350548bca3b00acc78d8b9c1ee452fe5d54f9e47554cf411d04c3f8e67a023100da4081dc58062c420f70da78399a18708b54f9c04f1829de4bdb227df0a32e9269d54c233fc9d140eaff4507752497070302047c435bb5006730650230143bb95350001499c200ba63ff394646906532fb52aff8722a2bdd060a9a9b13a9db76adff68f99aff2790f0dbd3ee50023100e21101a6e112e021aa469e8d61f43b76ce309311977f1b449e57f74d325eaf7f942825d79b8c72e5a2f4c24b852018470302047c435bb500663064023049b4c4ca1fd2c4c97beee0cefc4d219e462f2e9e07aebdb49e67af88c233bc171a315c7b35643e0897ddbf066720df2b023007b12e83e7a178b2a2d229a7434998ff83035fd012df2b4991ac7f208ecf82b3691d2de874cd380677212f62245908cb0302047c435bb500673065023048528549860adbe085068328bb547da108422410497cee2ebff99eadc08481656461a095d75a66bd40dacefe6a8d3d69023100a26c0271a0edc822e08fcf9726d2371b5336df0c4d646517da7d34c357939e65c57459db82f5726b4bb5ed3cd6d7dc330302047c435bb5006730650231008d3a85e4bc5845ca7a84f8eaaef1e012acd408ee45e3b25c34c6d400664724ebfc36289a60c62a334871d7d8c283c93f02307540e08f4e72e333d2df423657c118b0ab29a9eec4d656b5de737aecf0fc43ab83f26a4ec1d7b7421d7afdf1c85c338f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023052a18e51ee23821ce609bc76e9a3cfcbb721211b42c4f0db377d92ca531f03c8f23605fd55194326ccff2d78c5c0ff90023100d8e124e6fe9d5aec059d4ba685682cd4f84bc06690d22093571ea872c986201853516be88d37a15bab5131eff3ddf2fb0302047c435bb50066306402301b35dc36f44cbaf71583719e8610d1fbeb290d83cc70fe297b39e22ce4219f944bb795efab7d75cffeaf413f56f46c5f023007c4970e8c5d2e2b0acf9b504c79c29364a7a8bd4a867073edd352ae04a049c44ebb177eda2d51346065a15b29f2fe4d0302047c435bb500663064023053ffbcf75f59298ef98462b7404f220436c54b906e5ddbd1bba8746bc67015986723f9746038cdf94219adc42225531202307cd6141c010a649781eb51b1c4fb86ea493b106733a8e3cc83bb28586a54353747b0171f0da9f06e6972a5e9472947880302047c435bb50066306402300dd06af598d4fb8f6b81f65e8d46ed2b603c8523f41ca359521b7070723009199fb277ec588b534afeb6ab2bd3fd86b502302e6ffc7b6bf25e0b7ce31110dcb59ff4d14939bdc3f56e7167617928b86f536043787bb8d7b1d3d947c11f468f8233de0302047c435bb500683066023100cb14d6363c584772b4ee04c6c3361c31fd3a7966b4f23061dfb6729b4217bcc87d237aea40c63b560230bcf145f60d0f0231009bf63654db8d3fc4b4a633de508b00dbc7afcaad014ad086474cc28a82742ae9925eeab9e569df84d11cf068d05c30380302047c435bb50068306602310089a3416fcb77724d03771f8b56c2a354321f59b868189bca84d2e5852d94c6399dbfc9961a32d474246d6c85d1e254be023100fdf59d32dd7aca2b8597908e97b074fc34bb226f791960c5e14b9c6823eb820341a3ffebd42d150910b08aaf10f1519d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100decdf45ddd6b4d47790f56f62fa98f76af47574c3aca7a4f09d0656a2fd45e52bc830de1d147f18a34bf3238d6f634a802301bcb4b4bcefc536296ac3afb155a71d63e059de0fada2df30ade2a6b96028efe907f774740f65d9422b852d0a28c5c600302047c435bb50066306402305fb219746d253bdb4b83d22112ab3b970ea78275f9f85774c09026233b3fc38bb2d3ec24029c700106b9fd739a500b8f0230592f47ffa8588955d88103d059726e1e6e877e7c3944ac1714104fe3ecc49b7828b2b8df7f54e972cbc2a94bd98db61e0302047c435bb500673065023100be0457b8abea8ddb0e742900182117e3cceb851d70210017cc0b106c2c73394df09ad32c41694d183d7958166cb8dd7202300b6a4d68e91e967c5f2849a8aad04c434ad0fbda96ca64cbbd45fe7f4e16736fa3db4a0708944c092ae6dc2b086dc24f0302047c435bb500663064023050dd910c616e61aea42b1ab6f7ff3b947679aac5b521ba1a1d15867245e1884d2da0ecdea11db530cff1950537a84b08023040a4ac6141f73e3b445ae014b6d1629223f5ded508c450d550d137697680fb0e0b2ca3018fd5ff6e35eb973698d3c2b70302047c435bb500673065023100a7d9b3733bf558cdc7243c21a011bc3e5ad62c00b8e28107108d0f2afe3924d1be228f87ca6e5780a9f455b2106e525e0230642336bf6337f28e80611416a7f80172674df95806b6d1ed94bb33d4d2e4be8ac1817d40ed548ec5cf28dde30fdcc8b90302047c435bb50066306402303d67111ae6effc575eb84eab622a6dae6aea77a5eed8b96104af9450f3465548996b5a54a12410bfae0ccf5794287edf0230066a900bd01767a1a92f169d178197454ab3d15be6c44f23fd27a12fdfe7be69dce08e75d5073af823fd18c805f179e30302047c435bb5006730650231009064ab876b184c7e2d04f8f0dd0d37b10a1854d850039f619db3c0726e3bea8515997f331b39cf4b84592de1bf99541402300f1cc23096cdffefbb0c6eb5dd340507524065df8b78a7f7905c4057b586057cb2888b36090dfc644fbce585d28a29e50302047c435bb50067306502300ff405ba8658c633a85f83765056f9f5398958d3271cbc02fa7e4cda91943c9eae5f841047793f6be30dddd3b541c719023100d3f7589107b2b3bddca1ba725318a68fb527fa8c70f23b704905e0bfb205ad5ec32ae6ea09dca6fb6a1828ba48bfabf10302047c435bb5006730650231008b025e2c7f0fb0316fdddfac309cb92c2a108136c3396d56e5380cda19b031348e7c25df3be50a248d9764b3c4d72de702304040ddf52fe86e97728e1ca72fa4f3c17a66a898cd1b90b8bb1409f40c1cad060870d1d5ff0b08844406976f75e877a70302047c435bb500663064023000c432f3f5f388e82304d63cdf2fc17a0dd820e98fc9674fef67b8a41d0ef9b934cd4346907172f4e240fbc0b3e0e73002301453fb57da4f1d812dc0cb2f3fd1bdcbc70ea99f48a495d2caec3cd1301416be6e02683eb33121b401030e16286c2a2a0302047c435bb50068306602310090c429f73119332d4603762b99b5ac4ade0f8007513d2b02b66cc7699cc16d9aacd7ff5ba41cd8cab46c1a474978e0d9023100ed9e5473d92cf3d83a67c0840a710c77cebb089e31621132ae4a0db169dfb87e1a2dafbec096e9b162af65c77c09bb610302047c435bb500683066023100a1733c74dad83591773667de12cf5285813fae3d9795932d23e2d08be9a27887a8a115bc03ad57e904133a0be7413e2d023100a66e39428f13c8d67b5c7e221121c489511b25af20c7ad681951954359c023a3e231ff84d6599e3cd89d7e02fbe0816e0302047c435bb5006730650230116a52bde4029c66ee4891342a0cc9927d0eb37e29aca9c99ef3ca44c2d8f046b0f16226b2c1f6cd016c7137fbcea8290231009a6a5d1efbf3a398122280a46b2a953592982bf99d68d3df13c50e4795546d5c02a37fb0b23001dc8d825d06b653dc210302047c435bb500683066023100bd87a72adbbc696b2f31fb680bc58c50ffb38d4a5471ca821c4f6c92ee7e58b3c496139c220471824b171f8d7fa314ac023100d2991945e696d5fd314097a2030b9a200565bd5813cb61db074ad09690c631373dd957bd68c0dafa17be52b2625957620302047c435bb500683066023100deb5b768a85f339f93f5623af863568072cd8daba8c989df4f1277885c6de9e6974e0df82537108cafc4df437aabc162023100b0f950c97cec0c4d6d01d53b5c2fb176994cd189b20f0ed1c883095effef8cb214c16f30d46a9353f2e383c69a74649d0302047c435bb500683066023100afb247ccdec0f0708e8d25d5f11aecfcbf34f67575085e5a6bcc3bcb933f414bd2a995e536b6a0596dcc3f94cc68c4f5023100eafe4785d573ab715d068c776f913c7bef70c2ed2d2b9dcf91b103ae63b6b91b328d50d38c89eb912763eeafa9e4432b0302047c435bb500683066023100963460592bbbbf16e951d460bcc4f804fb11c34bc23b79ce9622ed33e5af40d0ddff0764584ff7a63144f246a5e14151023100b61723b60b495895adb258bc0701786537bbf338fe2a8b06607f4780f37719a1e438cf4abf442ee9249c5a3b4ed18e920302047c435bb5006730650231008691409425cc0b2552dff67f7366946e33682378e5d41cfee830ac6761a64908e8fee39ab9533b5bb6dc767869be605602302a26869427569fc99df2b7c3ae4fdb3fb66e0407c61d03282ee239dd53069a906f258d41b040156e3522763b164c50670302047c435bb500673065023051d5c56ac44d3ec368662d5fc23da457de3908e7d8193503e58ede8a6a3a65385bbb444d6e86c1a5152cc5286617ab28023100bdcde16928c3769be42c9f17f8449cd1cd34f730b38178eb58849fde3896f590c0c83670d3a5dec939be82ea34baca830302047c435bb5006630640230752807e98892bcd2dd61e635da5b7c728353626853f2d9dc09d9bd17be9058282fe63a6222fc537c52800e753efb668b02303f6d64003bd9c01ab7684200e1c5438dcc6ee444fe789a0ca784ca4e5a8a9eedb100691b13b0d2e693ec598b50d4ea2b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230696d176fd39744eae38acc503b4c493feb57b71e028a5ee2a10b36c7b276e18a587cde6dc540880b9b48efcea7daaf0d023100d2975c27cdcc21f0e373f660c6586fb85a2f83c0434189692f20ef30875e8e8c20c787d721f476a524cc81ba40dade240302047c435bb500683066023100980dec11cabcacd6ba525b7b89f52b5d831201e1dd41df92001ead0f9967ed5628f913b1124992df838ebbf7546897300231009f9a5cb656c1c50d6b1d4b8abb34cc89a3b3cc2d8883b3eac1e43f2454a4380538a897fe1cc6d65662e11f9e85bd358c0302047c435bb500673065023100b925b10b006b90d8659a542f7469e75ae27648e8865d0bd8ac92353f97e4c174a9e4b14d4cb4beb9b8f46d8c785d38ab02305ad88fd1f22939ad63c827ceb43829ace8c80aa4c8135b36619a639263cede4344032f65920fd504e92625fa20edb6500302047c435bb500683066023100ec726de08fdb16770361cdabd5bf1ebec97aca0852c844ab42e1d8f934fd89b10d2bb48f10a82c411c0367273041ca99023100f6d64b351703ab88d62f53fe263883587efbe39f91dd0809940079d8e473ba6b3efe213fcc97a4d87b3f2c2150de22d70302047c435bb50067306502310090abc8070016cf152faf356ddbccb0d7edbde22884b0968c0b2ecd31df91254e7be3c02ca5e7d0ab1cfcfc8a89e7db7202301085bbde8be6d419fa097651f61ae9a71894bac3ffc9a0ace6f74be87580798012d29cbbd9ebc2d85faa42dee20d654e0302047c435bb50067306502304fdef9ccfd62a382f479baaff9d7c7723a10f34cb1e39037c3d61a28faf9f3a514876a64175449725cc7b0bafde2985d023100802674dc985b01b5d4fcf8440268db300f7225d30e754e9a99be5a77fe71efb774ff7fc4816531f86a545317544953f70302047c435bb5006730650231008e9b42bfca252c7aa900213745386d7c0475fb1ae16ccdd87e3546a16de60cabef3f2c4f7a307698f5b56a1d932bf1790230186688102d9b8e0d31bebc7687f9220eb888768361b9e5e261db6b7c70090919dee533ae7c2fc6112ceed0c7326ef40d0302047c435bb50067306502303373021b2a902a348fd33f2c5434210585378d702d1858f27a683e868ccf7de6be8f0a19e5282c1c7f750badaf416ed3023100e283e710c383f6163f004b656d5f3dd8ae017431d670e62955352033134097d11cbf0efad08b6ffa71deea17123e38ab0302047c435bb500673065023100fc4b8bfc934a080c04ca31421a64b6dcfa1722ccd3e370a9605a3c56a4ecba9e6f53653376e07d1cec4aa1050914e99c023069eef6119dafe905d741cf3c4cfcfc034832a7c91ff3c88c482ba023531eb709fa6325886883a7c5ab38efc3643c71f70302047c435bb50067306502310097c92674943389199632c6ede4fae738857169151768e755e9474050257d4bec2ab53a8810a931fe51693c0fe79fc051023060ea5c003660ebaf982635a096468689f8615956fd973bebe4ee0ecd91e09ab6568b9080ca565170ebc9c30d656815f10302047c435bb50066306402301e74e9dddab1ec1b3e3da64dcd177c846e8b34f7d8847ee47eac427148afe7ea9357f133f0660e98a61b118eea403762023019f499d463577f9e3657c7e6df2e19089d701b4278044617015655b164a844d0d3d12f84258032e51c3de24081ae1f820302047c435bb50068306602310092c726ac196c117e7f550871318170a62d18946ab3fbb2af441f440561b48b3f6ac0207a2c19105253fac33e3a7af28d023100cd17871eb37dda764b7af9f9f3a846acbf296dfb4b268f24600767fdc22133888db8063873935250031c6f951d1eab530302047c435bb500683066023100cbb93dea01a85e731dfc756d57872fbefc97886590c6ad5bc5dfd48ef7a378956c350d5a7240b79992f50d49acb8c7fd023100cf04f2e26aeba9f10b87a8aaefc9932276b6b8f9864efa02ebca3cd076d3ba37309a5469791c145544fbe251d1d40d660302047c435bb500673065023055d2baabeccdac822dd805086541277ea9630ba6fba1cce0635376b7c0849fc9d9df3648bcbaac5c48fbf8172ce44d11023100b1b52c5372dc4407caef237e8865ec1e4dfd4cfaa8695c608d78b243472e949a18249e5798b243abfbfe1ab9a0a16f390302047c435bb500673065023100d745923e90eb8d01c187154e67db3653ecf95ece715b07ea72554d701232a0e252b1c8aa66f8aaf2d6d0d6a0a014fb5c023019b6cfb49ffde97d96460ad66e35c1fa3aa869807bde79cc9c69296a4e2b759b3c416b675f217c28d0b286c696ce71dd0302047c435bb50067306502307c33158d4a5cdae138e118ffa52371a5d0edadd403ece58f4a36cfe9349ab44e8bbc0c0314ae22dfd6f84683fcb77e02023100b2ca5591f63762f6e130df4377955db692230028aa4dd2d408bc56dd4da186b52e9a91c090fa5a2873e3b65f4cb4e9a30302047c435bb500663064023100f0d5ebafa7cd839d824ab5ce008bf3a2a6fb1063e76cb07c589b6a7afed7f33768f7e304444d00e22ffdab528935d307022f34355ffa245d198c6239a5bb34fc428e48b35f96b675bed7fd9900352244247cb03e96e69609c65e93891797f0a8ae0302047c435bb500673065023057e2ba24f500a36df30d8a7c921cf26004525c367b32df7628317dc701877a6bea4f5172d6f7b3b20156beb030824c6d023100b96a62e8cccd65f0a74a7565340111e95a59e7c29755f030821fe62aeb888f51263702a3d17e0510c24fe4ab31f7d49c0302047c435bb50067306502301967d27031327d259680eb4cc07803e121071b016e4407887c4d20b544a05bb85be334a21d961a902cb6df2f03c754ba023100e675517f293b2d548b505c1bc6a4de166a69e8ff05cdd5af18f535e82f636a1e3ea85d775b57d4e9f91c593c2be7e5d00302047c435bb50066306402307c7195e7b3ceab489f10dca73dad8fd993bb7e6cd11d4f88e88795b1c4e5028adeea915d9fc29ed833ca8778a5dc1a7702306c096c28a82d9bcfce5701f7ab878385d2a2bb41f4db6ac97b8b3554edbe184c617f4ed490ddedab36627199a5f997570302047c435bb500683066023100b6d68bb23f4d082b1a485b1acc412fad48dd3a0bf508759e293f41f11e79c48553707e03e3a709c532f9eed0d4d9fd300231009a9ee0e542be34a20265c676910639956883c8c1db7197bb512d97faeb19cae01623df41f090960f0a4370ed9ad7e5100302047c435bb500673065023100a78eb260d2c3bcadcb0f9d0f74b42b1e77fc2ce99127db919d676beeba847a7460484e0fa0e27700994f7a7b4cb1467802305131aeaf2279b0a2f9eebf3dbf2ea582be3b201d1f38448691c62dfa2a39570ee500dce8e7534177fa6bb9749849c9f40302047c435bb5006730650230173fcb2f81d858512b6f89b9cdcb51a7f9c5a289f900371ba5182c484208bb845eba1e54adc9839e6f96334466c9c6b5023100d5f2c65003f983ce4078f20b0c36a662cee13cc8d372318d7ae69c362da2bbcfa32170888436ee78034706943720d7b70302047c435bb50066306402302f02eebfcdd13a11a38e79c1b439aa407af2dde1f7b5e2539e5cdbf6ad9f5f332dcfa0981b5a7c2d4822d0f3abb66725023039f1eb6129bf9d6c25ea17f4c8bc87e975a23f229c3107e0af62568812cb52e6c41cbbf2001a5adf983dfc95300127b10302047c435bb500683066023100fec52cc1f9dd0fcf9d8f7decc8f5b28d3ba748ddd30594fdab5c2e6a313907ac5a6feac3bd5df3193e961cefc2c793a00231008a42850c22c2c179c3dc1e069c9f7f3028aa404990e3cc890ca6e4128d4826fbb3745cbfb1e14bdf4decb326fd9b899b0302047c435bb50067306502306508e671b3bb6672973e7ba83e0b5283b49ce3239b3e8365c21adfb62d5d83c85bc3939437ebc300a01e85dfc69c87d3023100e1d6e12d405bd263b0def88948709194006328e3f5cebb8235e49b0a853662642454d58f225635f3bd5911edea1c21cf0302047c435bb500673065023000aedf087b73bfdce35cc5a9a12718ca3a4f979e1203800ba4475dd0258ee0b1ea3b8727a10740326c11535439e5851b0231008c7f899fbbd105ad04d96cd9894bb7fb383e16e108c195dd47c8a244d4e4da97b94697f5283e8291d8b28137a3ed62e30302047c435bb500663064023002a941ca6fb0a5ec3fe1de1171d17cf2763cf25ef54ed08f7fb06a7c4489ba1e076fdc360ad77dc1c5ab6d4a7bf567b00230640c8c1c07511f2e1ab18e5e873bbe861e89f81df0d571dadabfc328735949d5e780c54b1f17b2f87107a86e9697c1f30302047c435bb500673065023100872c0866cfb53105360cd63a70c7d0e77f8be3f270207af72175dd03a86eec9496a6e675efec706e1f74be44de4b30fa02306e7799006d8f40952c2b7dbcf8270c07c3af47199bb02267cf2e718e4ea612a22b7a7d5b25bda267a21857d0b0c3e5c50302047c435bb500683066023100f84dbe69d3d353ba8d65656da23437f95e6418275282d57149b816e4ad14be5511cf7748d76eb119269f2de631544d7b023100aec8d09c060d8053fe4f413cb68853ca833bcd22e1ebca12f8ca923375e541a785f4f4a0d3c825ef9e00de10893d84510302047c435bb500673065023031d6602a2122313444bd3ae9d43dd9491bce292b5949298e72d1a62205816e686e6e51e9f71d4c37094b682417f508e7023100a2aa951f87ed071abe6dc1120ffc14e610eede9b82419c811acb2228dd58ba5ed28264fec3dc277534ba2f9225e6e3e40302047c435bb500673065023063958013c39c16910aec524423d90907bfbb29eef8c0f6f962ed1a46973130433d682fd6b688f62150a516208e32dad6023100f79f674659596c2e6db0552f53f8d0265b0812c7c565f6ab7bbde1497a1776804dcd04431e91248573b64c3eecbb431e0302047c435bb50067306502300f16b6402c99fbf7da16cc9e814a9a72ec908da39bef9ac76bdb3c13a4906c58d78a1795814cb96c9743965fc692fc700231008fc344b36e157cfe4c6b9dfdfbaea4c1463d9162463366622b7e425f8a9e3a6b287882f83ca0e297f4422246194d575d0302047c435bb5006730650231008711b7d86ae7e8ba121a681063ddd9ff5d63a1c75ca1cadf32597619c1ec130c499f044555cae3c697f0b8aba3ad7654023065cee397b920ec00a0d282e84c67d379a252ba98583953c9f5150c7a462e22916a2290107e9d0e26c44ea47c34fc69f50302047c435bb500663064023000a9e5d1a762d6a3618b41e631d702e2f2c032b3c849e4c4fa39455e7d25a41d48f4baff675b98a1634b694a03eb353a023005cf84a39c8794d371e1f41c56ffeb4a6cab3ffbdd88a4eb7dbacc8b9ac8e6b7685acfca9b5a74fd9e965cee48d2c1470302047c435bb500673065023100838a26f9288e444c0dc087938ae5b23398ebf907b7ec1f2d905bb97da0dbbeb47df6c97ee798938c2bd73a9f9508f3d10230115cc0369337c637be54850f55c838cff584d514a1de1f4bf8553af1f4f9a945a6bf97e3ea1fbcc197628525ad827c840302047c435bb500673065023100c5d1290b84a1e410f4c44683dc523944c644382b01beaec08e037f990bdbf6b80d312d2341fc58783fe78a0744243de2023076c48d8382ab8b47060ab0a062f5618737916d755c9de139d3a3f25d20dae924f936aa1e412e7efa565ad0dbed113a5b0302047c435bb500683066023100868bbcc23f8f032c9d3a63727bae0ba39ea68c3e738b7f45d56b925eae8870dad80b074a076af2ba4e4640e72a896f07023100d9675ef2eaee29533eb890ba18ea17211aeff64f5180212265b682b587209f9581933414209c65a555aa5293b18b08690302047c435bb500673065023100a842a6ac17a746a15876cb92e297cfe6b8911f8b8767de1eca77f6777b54db19e700b62c0baf87c83b34346e614b58ed02302d05ba4d3a84165490c3514046f43c8d74e2ecd1062ac2205e11c8d5ef4d7cc4c5b88627c4920f78d9e9d9ebbb691f5a0302047c435bb5006830660231009d0f3eba2592555872b7780db7ad6c29e04cbd7f6590c8b43bb187c956613f09d09246cc22bc1c5c38fec26007b9594e02310087c38d74cacf152a1629003bb40c65bb60ff55189b4701f9e80f1c12d45c7613fedf4f7a00c4ac0d6cdfe43a7a2dd3100302047c435bb50067306502307896776ebb60447df58166edbc9fc1e29f7ae2da99a1fc9fe7c2e268166a2b191204898b4dd71ac0676c6d321fb7083302310085ffef319790a0abd7a12f9ffb97bb1740bd81511309ca11f4713e60535b3a41f35ef86a7c2328a92f18a62c6c7ad8720302047c435bb500673065023073b27fa71854cf79a6d89cc54849f9f789cbcf6c268c2de979dff72dc07bbd72e714fa826483331879fad9e6217736a602310090f069469be0e69e93c855148b17193e455010232272431474b91ecf98f8ec24d2a59e749ab74337d6396a423ccd20bd0302047c435bb500673065023100fce3df3dd68bf55dbac2dbdbb448f49cb5fe92138d56693618cbeb7daf3b0d5941bdad1af5891eb2e92d2e11ae25a30b023070420c8b59c1c2704bde270f0851425f02101f1ace6eef2befc770127e2ebce354d70f77124909a119d08287d8c07f2c0302047c435bb500673065023100dcb9b52393cd0ad33345fea391b70d02c0dd2f6470b4df85b0816aca04894188aa07bc265d239e38fd7e42a199dea317023037bed287f29ef4bd9fc99d106fdd816e7e87e884249ebcc924d436e15dd7a2e3afdfd21f113ed3f368fef30cf8bbee580302047c435bb500673065023100c06a3c268e64d68dcb8339ee541e5dae587388c72d1133b49d2b6fcd47b9bfd15af4bb7fd665f35146a92f6e472462ce02307e24abe13316108f4f0a0f1639079b971f8c91acde03743e6018d7ec7d5c233d9ff6851674788371262c9ea2d23fea330302047c435bb500673065023100b4d958b3385b68eeb87890e585b0cd5863fd5c9fce809cb6a042cc233ec69ec30f17130430121079f25adc04b0786e4f02303418f84b6643adc071e3b6ee5b4661362e0ad4341248f427140490f399f2bd9cf834b639f1de2e28cdd40bb1b9039b570302047c435bb50067306502300ef96c6832d0896fc7b1d4e69cf818b11f043674660065cafe4e4fcbcd0ae815a6d445b2ebab63a8e99eab52f83ac727023100ceef36420958d7a2c63e27929c5321195b3f493b38632a6482d2e7cd9522882c01f4766763b23ad5c604529697261c2b0302047c435bb500663064023047e13b6dd9362f194319f6f3e87542c74933107818211e547a0a620ebaf0faf4a4bb11db1a725d73274490a8198f81ed0230780160e0257e6729a4747f3fcd331bbae91a4bcd82266beb79d440788ff5ee0d9fe496585b179dc8fcc4cadeb71651c70302047c435bb5006630640230625f4486a9ecc400e4b90cd949dabb6d3e8e53b0843bb36203d1686ce68ca99a4fcb38cd3c12f62561d537667c14a1b50230083facd8b4b8095eeb6b57a5d35c5240684bd11347d3aee595b315ad4f57c553bda4909236ed6df9980c4a91813500cc0302047c435bb500663064023023a38d623e16a2bdcd31e5bfd47cb1216c5d993f0c9978cae3c82b16e1d133c54bf34f79cbe708008bc21e0274ae966a02307f4d9e339f754ece4bc9185f0b1c41a4f3d17684a746276f0c85de2b42b4ca218f94ebae21dd2c9546b1a65518dae0980302047c435bb500673065023100dd9c7918762bf8b1ac4fc1111529196a739965c3b5bf066b95e9d40b7cd42f385599ae8910f6c5d4862a8a2a3e3d104502302a9d4495790fb1a4d20b985a8712c881ac23fa435a886d7749146e642a590f2041c2209ce290db52a1d16154464c1d7b0302047c435bb500683066023100a6adcc1b4292c9f91f441ddbce50ebcd49745e85f78dd4a30aa61b4049db8a0b888e163a708ab5b874f358c132e61e0d023100e2a8d3f00913d34ccc5b3a328fa648d32714f680421ffc3f8313ce6c3b85f5ef185ca434ea826d4d6743397c16babae20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303b1898e5436340da957bfb929a07d29ca78847dd8c59c60606f1951803d8cb565cffcf3555b5945054d5406079bf25b902300807b42323ba6d045186bbad2e8e51016b248de69d661a7f61580131a743399e45e15550ae5a2111d9f6ada4b548955f0302047c435bb500673065023100d667a5e07991b233ca22ce3f08e8e0be4e904f4593928abfb6b5808f2391078732347694e9aef7f40ffd3fc54d9e32a902305a7694c39a3f0d9c8c9d08d41e823ae1b789d0c5b9282b5f638ce9b30930f7d8fc37a4de6a9a3f63e36c6061143d3afa0302047c435bb5006730650230010f673b616b2886f8e87efa3b09474b304c20aa5db52c504467127af0d109a38881dda5918c332a32e5a7eaed1d66c5023100e1b4a9911ca40aaa8bb7bde1fb84f85e36ade1af03066b22ffd9f0579e2af28b56694cd4b1061babf25fb3e61adf87740302047c435bb500683066023100eb6a49f87925f8a3b6aa7c02dcbbbb0bdd1579d46694f99557fe893587cd63638db3fc2c7d14f6fbcfac2c23dd8349e502310093d6d02571cabf7ac936495b112c50c1118223d220f334a4216328c4f53060ecaa0278d6ee149b6aae96f100332a324c0302047c435bb50066306402303d3fa3e0e69eab54f49ef09dd44eec1aaaecd5f02aadd6df9d4b45b74993a9c2b730bbe16c1e1072f217afbcc4e4cd1f0230060aee88350eaa3feab0123ab82daee9f22b9d9dad8bcce14062a22053d6f43aa0a137cdc602ab1489c3435a675cdffd0302047c435bb500683066023100a61398feaeaedcbaff738059cc322d7aa6523e48272013f1e65c0713bae8a939cb2fd984402979a855adb1d0b4eadfa5023100a12b3921b1a3b3e049b02687dd8b8c2f2e5d49f09311f7a43ab781736cf566de0fee9dcd3d2b242d6b463f439380460f0302047c435bb5006630640230026526b41bcb162904a3834a7ab312503ee3e7bba54555049ef2f6f8104b98c39a1e77c548db77ce99fa472ee7aff7aa02303908b98a4c51998ac5bae58aa347c016308816738228a73ebc58a8b56d9b5ca8ccb5897a5ab0da35541975e46e67247d0302047c435bb500683066023100da6007c8fe0a474d57698077957140fc1f64bdd5dcba1bd5540c6e2c459d62ea7c1a6d9eddff8da974f3898236911e3d023100faadfc6cd4170cd95d80645497ab5e3b97c4e1335143ac3ba7dda5b4b14c58d9ff7b5487ed5db03bae52cc5cea76bc2a0302047c435bb500673065023100d6778297881279fed3fcaae65473f839647abfcacfdbfcf40e6e0063b5ed1f114a241d6eb8c44d4f36a09739b8a79462023066920abe501d4b0d7d39138a682204530cd12eca592df665b9efa7637d70bbf986bd8cfc529f475833171115a1aaa8cd0302047c435bb5006630640230229f428e7ff0d9bf58408f368559ffbee6154c9377fccf96cf05c5132050288d85ba14183eb00c3ddcd10587ba7261a0023074a22bf2e099c648c5dc67912b3767b72993e9da9cf90922ff97d7ebc6a1be236ae6fa0122d481087d719e85b568d3480302047c435bb500673065023022a5f1d6297aca75cad66cd2d56874df5faa0a977891e80228f88e885d1f54236ec4b80f9fad802b90af1e173270e36a02310088e65619f54ff3926e4617ab21eea720b1116a409a5abd0c5e33495f44abaafe1ebce12a3f8f5ec6d79abbbedd3b0b520302047c435bb500673065023100bb4b51d249fa3331b5a46ef7ed8bdb1df02424c55fabb0299f0f1b53060a3db74928d75777f646845238659ed1d488e402305bbb0c92198c30e7ef8a1cb319fe8cf21ff24e99d076542bf42abb5ff6193ab47587816cd3d3fad019b00a5ec56d2a220302047c435bb50067306502306bf2024a5d8a1bc49d3abd9d24b8024c0f8685ea0b9cf05e8869e28731168619dffa7c24185cb86a298d6885b252235a023100c60071083aa7e0f54f9a38786712b9b72fd57f3b985adc05352090980891a2635cbda463d562ba39ec1b5f7d0ae5234b0302047c435bb5006730650231009ca8dcfd0ce397f0d814e1ee3b9cc0c0226b61ce4ebff62dc378dbce0a1e1cf0f8ece9e9b045e050dae79eb8b5ec373002302125d5699d2a9827e56c32965fc9bb515ef152b204814d1b4d3d8bfeb38cf896627697004f0d9ca12b1c4eebbdb7472f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302c498379a4b6afef95cb62039b01ca5ec7de516a85bf1c37b0d0ca8b8c002717696e3a6ccc62a87475aed5bea991a2fc0230307ac2fa373215d28d5f51ba9248e528466c271cc2c34c74c8a09ee4e074d69da879b306b9ec227b6af5493b1af62def0302047c435bb50067306502301d4b52701d1bea30cf7598f671eb917a1a015351e0afd25a2bc0acbe541edee93994e47f9802615b93fd9743e297e918023100cccb07f3a219792edac638c19a054d01d696eefd3fe3e2f74a6f08093c0ed49e606a8bc0234501e19a07cb0f440952c40302047c435bb50066306402307f11731141ab70cf0b88cd7cf836fa3954a1519daf75ab4ba17cb7d0e6207b70d74aa9ba7f99d37014553d44eb37969402307c49b8e3959c0ffbe8fd3248941036c3a449f5db5376406d510477df74010c0213fae3948882e5fe4b9acd0a848c03bf0302047c435bb500673065023100a5a1698d8f474594253fb298ad1cb47775407012b22a0da05fed8c4d798130e573594877670b2c73f37c0bbbf7603fa102307675c1aa8751bf64c3099673612220599ece9b6e830abaeeb5005061c4f0798de4588e361c3d55e54dee8530001f990e0302047c435bb5006630640230178b8e5a60e71b208a53abcb94c4b425ab38614966243133479f738418b4eded45137fa07102b13e364bf83e1c9acade02304b12fd7329e3ae6c4c136773c67dd2d61e700e7799784f25e660b2dcfd11664983773215479b0d1533ee9465208ca19f0302047c435bb5006630640230751dec0cd7b6860e4f627c4a1266ddf74bb39d466d4c8ef490095217c441f1811d24f1079e3819f4c6a8d4bf1fac4b78023054cb3b044044f625749b7dee7ea44916ffcef35a48134cc020d71589d21b7a2274003cad4ef032e09635b779ed84a49b0302047c435bb500683066023100a388628f071f3d58fa6f6978afb56fd5f1e7d0277019c11a93f496dc58ddf5b36e7b5a888603a9c4f51d23218d866ff0023100bed840c1e3aefff1ba9ed978cae18406dad2afaf8642e0ac24f58e9858cf5dd740abc974bafcc6d41abea604d97513950302047c435bb5006730650230084ddaeeea6e53a134c638849ecd7e4acbaa522a63a7c240b47f8e07d80a7ba3e9702af4896110604f490b48a5fddf2c023100c1b6f904a54841aa460e3deb5696c0bb37eb251ab9bd9a000993efd0147f0635f8f240225a1f4e13f5857178cb31f78c0302047c435bb500683066023100ddb6dc77059f691bc2809c2cc4632ad5634418430b8c54de4bf268a1c03d583aa24867175af43e4d28c87c8e2df4f361023100ee4d40b3b6a03231ae245d5ce009c79a6f91ec808023ea628abe192866b309c6f6f6baba6ed44896fc56100004525d5f0302047c435bb500683066023100f84a9a8dceacac91788d13d84c6708e7cc09db337f7b34d4d834004b31234ca517327f1e39b28ae4b10e27b0cf2cc302023100a42bd1b203ac55e252363224bf2b2994b7d13643920ccccaea7f6f54eeae8e05b7b77573d67556eaf162d4beeb1c76750302047c435bb500673065023100e93c0ec567f5724e81660259f9cc3442898a0a16cc5ab45247fdde022fa4dc022c462daee334ecb86c914798d15279bd023057f06da3612c2a771548a367e83447ee8216d974c9a21404fc2819b8bf782d7b658d62b793e559ac3ec5f884b21c8d580302047c435bb500663064023050f83d219b733cba90b0179e6dfcd8fb1a5848575da23cd2b059c01249c2cc78c1ecba0e1458f0c85aab523446eaf8db02301d8a9266b219dbb826e0fd72a75fa747c56928c5c0b28c5d1aae4af6fa98d48d34398a6461301d2d42aed8e315845ff40302047c435bb500683066023100cdc2d85ac591eaae0bf9a9ceba7fe5ddd9753988a083171be77509ebdff5fc9c12f052a5df6ac00172d90084837cf037023100a8dabfbc5d63f6d6b48c5d3c2a4b198bbdf6ed24111848b8428ff6e6bf964df0fd9bfad21887cea184f64b2aba363ba40302047c435bb500673065023100c2600902670a0b85203c775628eb060b29a2c2e9a3de5866990bde10c2e8fb89fc46344e46589e905d11b016e8154e60023008359e3a3b8a3c1da3e8d4e6cf8279f3238b3ba37dd39833bebd3f69cd05c325c852c86602853f5c01cc86edaf8ed9220302047c435bb500683066023100c070a721a210964c1355b5cf6c1430bf79be4cb77b7a6d070147fce3f4bc4fa6f10207e431d0671cdda5deed63b4e777023100deb4a91258c33deacdd66b63bb6e16509cb7baa42cee4c03083f764ad5e0ab12772d7f145d2b6840967ebf950f0831330302047c435bb500673065023073008e932a101a0c4b9c4825f9b8e90f40a98de48f39afd99effc0f93083e9985b0d2e05462952d4498d90148a59a06d0231008009b4d169923afe0106217f5cc51cdd19ab33f84d46c65a7e16d35ebac475790c35a6ab493c7692b22459843bd47a960302047c435bb5006630640230352cf1bd5e15616ab91224a911733157252033c0abf41d92cba7c48fc8a4d754250c2d3bf9409b03f8c8806990cb5cbd023018bfebc2d3399fd875caa5d8130e7787b21fe816b10ccff2553865c28f329a849714e40004fe422fd77dfa3ec0dd448f0302047c435bb500683066023100936836624b3b7cf4aae53896e0379767a42c5098cdc25e300dde8745b4064c42e9146a2747140e239c1ab793c763f69a023100989e53e263bc42975b7e29ef50383ff42b19f017de9fe402b75956ce5a1f47bd1a1b099daff69ba09991d71344016ac20302047c435bb500673065023100c2f7319b46b920ef1b28803d83b6486237de5109821b926bccafec3a1b31928db30f69f89194f47dff0f2927812d64de023006e68eba5be066607eced759d479b1036a538925c1797119bd794dc09858b5255669dcae259a80b3499745deab39ad670302047c435bb500673065023100afae0463fa03b1e16e570711e6fbf32cc91fa977baaf83add3c737b58098b874df8499ae1e456ebc75d2d8ac1349ae1702303e18eef706c0ff0a9bacfbba7aab7ef7789f7c0b5048ea52cd9fae8650151bc6047fae2d14f08a5c3768d3a6b62c7af10302047c435bb50067306502305dd3fa8991110e66a8644973234c8f57b0c2cbefd77629abc8a63b496532648354d50eaa33062b25f8a4dc7ac1131e76023100d3537977fed23063528586a1e5d5d04f1de4bdf207e192d0942a917aeffc909b12e0f4ebd37e3f20bc2b97f0786ac9c40302047c435bb500683066023100e28431a3fdbccbb33b15036967a16e914902932f1a9a32b90780f5c9a912ddb23d227eeffa06ad7a6520569368bb9506023100f8f1c0973299011a25d7d0d99fc550a8d2f3e3d4e736b24894b09619404d79425477890c7d9e6285949a8ee663b967f70302047c435bb50066306402300d149f29ed830de263ef05566ca822daa3ea8337ceeaae6d957f989b65ee8efe79dd51bde448a61502639b310d7cbc8c0230729d80af71242321ec81b0d6ed43afb543d3e512ffff338b4df42c4d0372f761c21bbc55c99f6ffa26486331a41e83be0302047c435bb50066306402301560e5160a266710ea913687886f41b78e1986a954932e2ef678e0390d6944b15dec83015eac98183887a3f83a92f8eb023014a06cdedc43ec57465cc9e6df6daf8f9767083e3b3df9953d69cba264754a2a2de433328ab5abd553eb14a8c2ddf16d0302047c435bb50068306602310089358b0ad7d13cdf79539977853361ae61b54717e25d7a4a20c024525ff0825a7dde59c64e215fa0597d0ecc879fd668023100ea291047fe2435cc57de212878f0e88288edabcb900e429570222bfd1027d61457106e8c4cfcc6b026406a99061499f40302047c435bb500663064023036bfa756b1d7b2f5ea987e4a2c53b9fa6a65f8a7f70bb2cc05e4441fa0df1dd75c1301880e68ff26f865d4df47d107ea02302570e3ec5bb15bbe93e4a2440088679f941850791a2c7982c95318b9a5715eff0c8f8991e9cfeaf974b2eb18281237040302047c435bb500673065023100c495805f9cceae172191d7a6be3fe13c2a5264bd160bbb9d82e52ffb815dc3bf6fd8156677c4a0f08549e0f72d61e52d02302625bcdf34d12fdf0b87aa67f1fd91c994b926ffa45bce977fb695ec89347a0f11907b2f287b5a94846465e8d826c0df0302047c435bb50066306402301bee7eea791f05d9a9c70b3dfc56e185cbff2ec8730c404f0c399cb3e5cd6f6c361aa0014f766e7dbdd7cce7f85a6f13023007306e84c4bd6ac40b83b64e5793d185e9c93ce150b7bfd9cf0a148e6dc76cc7e1dc533bb76d660625c7fe54cfbb4dd30302047c435bb500673065023100b5d5a2f3d6d0501a74f00e28d8ddb83fc971ec67ad1182cc7d8eb8c2dad961babf177fbb75221be1e4e0efb1321c752a023071d0181206a05bee601ba01d97c5286d333188e2bb2c2aa4fb01934fc1b543db8066dc423c1e2389efb6c23747ff78400302047c435bb500673065023100a812fa45530d82cb8f63e389581d66aad02f74879252efd79034dc46dc17fe02619399f2bb7bbb56197f7f7d78453d960230323d90b119ca41f883a23994dd7d7f277b5cf6f11d8d3feb74ca7f3214bf4ed4d808dc30b0815fc838be31f46501777a0302047c435bb500673065023100e01965f508fcdebd74f0b1f7fafba71d05c1737fbdd0100b16f7444478ba220e4a8d1832763dec80f72b64dc2dd71de9023068ee8c0db26b7682a4acf20be9df34efd6bd2caf06802d5606721ef68c09e6a238a8223790c8f0ba23e9d025644c5a600302047c435bb5006630640230363925b4e7e4ebee3ed0ce32436936a929c99b92a78804b32c855b0e9a7de9d3bce28bef9c25801eaa8a8c603b3cdf5d0230169811ebb570b8ca35afe1b5f3e2f8da18e2b8a38503b1217fdd50097186c013383afd7631f5123a20048bdff83184f50302047c435bb50067306502301669e389c3d1ba9535408bb5c2a93a2fabb4b6478a4c74e7b79274ec7ebf7b91f482c27f36cf1e7897c9fa32b30a8470023100eae6775b97aeefa6c1ab0596459debed70ddeba7156cb67d5410d2c66833a3f3a64c57322d05f039fd7a3c8553b594560302047c435bb5006830660231008fee011b57666c0ed34f02e81677375cf6f3c0992c1f9c130ac41d10fc14335218f013f654121b9b7166620495c5c8e5023100b8efa62f88a0c36106c07f425b2c7ac288a04e95301df462f3c497ae369315224e7ee4ad5f777810639dc324fe2a67f90302047c435bb500683066023100937e1ed83d0de8e5e3eaccda3a6bef5944e003fd6dcba10e29c6ce8ac3072aba651767e3c814eb8ca9eea5a950d152f9023100fe36b745b8d44e95ffa7629cdccdf715a3af182aade5dc6cb2bdda39e2f024911ac0b8a2ba39813380716026c13876a30302047c435bb500683066023100b935f74e1aea7b839eb24723ebad677f1c3824b94c35cdbe089cad08da6d3721368f332263cfcc5284c31467c981e73b0231008e98ec851390decb7b186a3192ceee426fc9daa62f259a08ddf48bdb9daff81e70838e391eb68aa48a24056e5bdfe7c00302047c435bb500683066023100f49cd9313c3351909617901480c90cab75bd9a7d13c51098afe3d03afa9d35ca9995bf5348f682a3105560d44dcd3a80023100907fadb267ec544ec9e5ce6e5fa47e77637d8eb3126f9e26a48f39b81df16dc9f55ea26859efdf9e00670cbbabb533c30302047c435bb50067306502310083ba6053e45518c46796fba89a705bb300faa9e7c27ad781ad2dd147baa433160c2dc5798b84751ff57ff10e98c50c3202302e222b346d38bec7304fa1aeaa6caa8a146547310761155b36dcf8dbb23e533cf4fa2f58c6002c18062548678792f4540302047c435bb500683066023100d505e17f9bbeb40a3f26bd64c3ea432b4a22c89b4e09322bf7f45dbb28cf8cc56147ae9dbf5b11e5facd4e88909efa06023100c05ae3c3803932c200a158d094e20f044729af83919967876701e9b8cc0e9183a4c466033042ca77c20d3dbc91f76bf70302047c435bb5006630640230782026cf7fd59e2504963e1f16efc33293aba81c913e8195edd75dac1b68de85896d602a107a4b05f67809a7528c8afb023057b816bfb35b42a34e44b93377ba3cd4ef1b3de65fb1fa090acd188c0898f806486acf2e12d31cde19b7fd6b9bc2ac350302047c435bb500683066023100a1890d2e3afda68ad01d6a3fab395b4c59bc78e17ed2a4571e1d4b8bf9563725c2b6a34c38103beac7012a684f8e16b5023100dae928485e06d0d1f17c3f8a66ef21f0d35301755dea048c506808a0ea609578c86789d8beaf2f863820871929d9b7740302047c435bb5006630640230016e1586c8a1e538a7f2eb98a221678fbb6c571bc8a9647aa2baa08b553bee7d4577fa319dd2b04ec53d16c1eddf0eb302304ab36c1e2f2924615ec7d60ac0e4fa60fafe30c9fc46ac0af13aba255138b266af25a38284241186979a359657f3ff020302047c435bb500663064023005481681dd38e8afed499a367e6cc71aea2bd9be7d75c7db06ced79fef41af025fb095750dd6b742a72edfded861bee60230401c57b0cbd4715649f533c2f002d8e8ca639859cc556a64901e81e22204b9bfe46e6375721e04c4d9e03bfdc0d84e3f0302047c435bb5006830660231008b3148f486e55102fed09919df364e715b27b57fa52b657571fc30ed384b0d2c2ddf6281129b27bde92db9dc2f8edadf023100ddab46d1022936c6b92f4c65a7951888992292746fd79969d6e9cf58d7538ce2582e07716197248796fead618fe8260b0302047c435bb500673065023100c03da015bb29e779389f1de29903010b11ddee4ee7374377963c3aefd85430b53abcfff18f0dc248c06b815b380b20a7023013085c3c13e1bd2830deb4d183e29d5d6e713c01c3dd3d884304454b549d0888e9b6eb39fc85eca01f723f1491a172be0302047c435bb500663064023055a0aa20502937eb91e2f300beba239188619cda51b59ca15f8634a47f1424533a8a4c609f91bebafb6a44eec9db075c0230784b07d9557cbf804f33aadd3dca3c4a267b04c3868cdc855ff65d61e35dfd0961b960bc664c9bc3ff3d7f9e5ec5e14b0302047c435bb500673065023100dc91fe75f072f373ccac148072a4286aff4449ca6ffee091b53316d4cf56e416dc8408fc2dda2a04fbc1b4629cfd45570230622fb91800cac7790a4271c912896ab683442098290120efcda2b6567784500981ff77670ef8b88445ba49c36eff2dfd0302047c435bb500683066023100a52176bbcd4d38246594d4a4030fc7ead650b7b68cae5cc71f8c0045a8220399cba4035af42159c9e8f4d9dc2bbc628a02310092d4a590fbf41b07998da2943a30535bc0b65627204ef26e9d12e87491b9c36ccaedcc1f7f48d1a654eeb0540d3355b00302047c435bb500673065023100bdd03162018b27f6b37066f12868d92ad50f3ad053fa5bf40abadba2e63fea8673c316ebbdccc3fb74ae1754603822db02307dcad7512313040fa7982b92366cf17bfea60a43dc32396f581169030dbb9d24e7cb8f5bfb76fb961fbd5c4749dfde560302047c435bb500683066023100bffd3f011860313abf345165e5b292b0e08fdce8401957458adb4d198beb0d68639a285072340cd72a416a0f7835a615023100b8a4e2a14e760114dee67c37a10736e02633a344c9bf903c9c9715295ee5019f2cc84da9289b21f1046dd782b72f4e160302047c435bb500663064023078e905eea4e1cebf60bd19743c883624bf405ed77e5cf6935e221df8394ca983a4214311ddc27b87ff082aad0f87549f02302b3ab4172582341098a5cf2157595d8f633b37457327c021800e32f3d3cbbef96d89c471d921a392f6754bee9da235a20302047c435bb500673065023100dc105a132e6219c51fe0f991acb70acb0203dad3d81e14eca8031630066e0041c2f4c736db13d33fb78501ffe1bc8e760230390727a78629291327d386a40f2d607681dff7a26512a2edc577b14a2360dc09ed6f20a1e4cbd2f8c7d6b556e0934b8d0302047c435bb50066306402305f9e7460854b2dc7f61215ca92ffca18261d7f49d5b74766567dcfc7a3d590f3e37dd8a9cdaa730fd96e810bc8c6cb1a023021b77ea597ef6ab0467e2026a4439a6d411226854a1af7839b33ff6527d77c774f0a42b9c4c1dfc88f42e53699f69b980302047c435bb50066306402305e81ae9e0fa7db173137b78ec0184b1fd8ed3be8c57a4bc6ec18f0992ca51539931131726d0d84827b6de8d76dc19d3a02304b71302c880aec53236e383c7ca3fd738524eae10aabafde52bff4c64a72aa6e861903eb4e9192c7255308bce4a15cfc0302047c435bb500663064023066080ec4e924bd6fd976429710f3f50da183dbbccb5bdf6b9ff2e8d1624fbe65524f4de287c7100e8e010185888efd86023072b1e25418efc6f94898ace71971284a33e96b3053d0cbd054c6809143cd543a86918b91c25ae5dd2c4aba5c8fb5f88b0302047c435bb500683066023100c6cae51106c4cd60120fc4444497c2bb5438194bbd1d3a80c577fa63ff73639ddb0135d09968da62e696fe9ebcee62ba023100c1a90b27ec17e00ce62889b433194b384902bea9779165912539735fead539c461a058807e379dae59605f2f1969e1c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cfc4f716932cec8f8d9c70d67695785295bf800e587f8a588931ffc0264abe4406b14971f5cfa01fcdb29b2054ba5bf3023100aabd1da665eb1ddda21b211c3adca327443298cde719395f3d1c5ce5cce0dd4287804a26b55f4b1c21c7ea808caca89c0302047c435bb500673065023100ba47fb37fdeff6c0c6e7973528b9b79cde9d2f0d84e0ba66f1e55eacf75eada6a92123819a0a8530109cde6d46a2a69e023008dc48ae638ac4ebafebd28c8e986007293a4f6e1e2ad5179124da50a0fc9ab0b5b5fb11f21faa4195dccc36a62eee3f0302047c435bb50067306502307bd7e04cd833112d6f2671d6eebfeb0bea903eb58d79b704d2b973ec8793b4e28327fd42a7311e799fd2c81d2e0da846023100fe84dc59d52eb5323d36257b773cefcae55ef6d54584a4c14f43aebf5825904407d2452190c49d8458e307bc13c8aa6d0302047c435bb500673065023100f8dd985eeebb657788117167b420ee411f0be87ad89b34aa80ed0f6129a783f347386feab407b27d1bcd0b9e58cbff6e023007a5f07cadd1beb5e58ab42cc9a7bdf3107cdcdd8068962aecc227447c2b36942c4c58b88c180846ef14d71313507bcc0302047c435bb500663064023078fb046d6dbbd9e796e6d604ffba2b58582e2a16292f94f86d10ec816220111c7787589f621826bba13771b15cbfe36002303eb7da097a82e42ca31aba888ec96d79af4bb08aedebe0c926018fc80490a0ff709c8c041886528fd1cf6baf6e5abc2b0302047c435bb500673065023100fa5f583f97623a62abdd79e980afbbbd18cd326e9d55132189d523654c385eb40dd21bfe4e0f5333566daf32092fcfc3023032c083e3ba7c07b2ba08e0ca3d0ef65941b4ee522f5ff6e22ed17d1e298485928ca43872fbb34fa71e8665a966c855080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230444f98b06b7719a37b85cb91ec413df8980429a86ef5622e6aa29f09147ceb2750b2f99b56321d837688e4d58a801a5402310082d42e97c3da422633b92c29fad8807494d4bf27691d3bd13410716492c820842fb390e38c4df3283a966f561323774e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f35bdac5d1026e847c2d1e1a6400704f1033382b1dac1e7f676910958090092c5bdfd4be3848adcb854b5bfa828ab76c0230708a71977208e8c70819c12e6975ab5a70d525c81e1708cacfa95be7570005b660d68379091aa2ed3af1846ddd9dbccc0302047c435bb5006630640230169d54aa0dc1073f19e0c69bc7aa20987086996f203687ffe7fec20d3c81dd1305921845686234fd7516a6cdc0d3ddbc02307fa72cd20fbea3b1bd84b7e46a5c333776d68b6ceecd322e7affb294e4e6468d9f020e039b8012af0506890e9754b5a20302047c435bb500683066023100a7c15cf0cd4412d840018cce4eb125b3c8e8c7299d8ee60fb6d6db9d88ec5656e10eab90efbc8052faffdeca885cdd6c023100ff329e2b7e1e4dc1b4f13c5b5e516a2dc380e03f99dc1303042fae2d9654d66c510b9e0fef3dcc012d3c9e5035de227e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304e92ab8f526aefec281771810820d32f487960ba0762dfaafea36b38987e14a9fa9f394980153b5cf61ed1f13f5dbbaf023070d2ab7015c7745ccd38a70e2f7f6f7128dc2aa4d917da0cf1adc1c20e04ce3ebfaacf1ca9e91cbac9e3f2dcb78177210302047c435bb500683066023100ed7f951cfbe580bd212c83f87ad44d7ec1f3fccdca8cf60ee5b3cc4b0c191aa81bc115099f78aee2eba9621048782b830231009520b98083865d984a80d15f5671fa2fc9a1259f651931391660d097e1e3edada73b60b5de9390cb084acb40f5f8e5610302047c435bb500683066023100fe9b93659e9772f5b99832ebbda56b823b1a51db87e755c44bb46731742cbb850dbff3917f52fa82c31e9cde11e83cb2023100d53eeb38d20e0504f8a115ccbbea29407832c32ac3074d12fdf8a335e93794b2a20940e02701efee10273259045fe1af0302047c435bb5006730650230435735ea9bacf0e0ce4921e0d4142e2bbb84cc204ac6b25f2841c64130475f841730f7e12c2680d33b824a6d49ef1eab023100d2a18072397bb63718625d07aed9819d8d55e80c65b8e18996d3830a001a671016a4cd74b995699bd72605e83c0bafb40302047c435bb500683066023100c27f2ad2f61285dd2526a04eadb93489878be49bd414b452b4c9f581a48463f6a3af18be09095936baef985d3383f339023100e8509e10a45d8e94104de28ae76198e48373adcbb9c6f2274eca42de843245d3bfc4c7a4e0c829a73b7dd668356672350302047c435bb500683066023100b5dc8050a07034c11ee3738311ae1e2a63f620030b738637a1fcf098d2051c90376dae3d02942fb7ee48e21feb77a17a0231008bd3f1a89967d541c1c2f921f1b68506c7d20fd84845f6ce8af04faf0016d1d6189fde6dd10c689f3a7ab03330403f770302047c435bb5006730650230207c735cb3c2c94787edd0d845598612b55d8e47ecdef3b2ebf46e1b9a877810647df7d87a8ffbd0a68d88aa465ce937023100d1f4d7dad40c1ae5ebf531b0d18c7bae19753bea03ec0c438ebb8635a868afa665c77a1627c547e9b3fa71f3b334abe50302047c435bb500673065023100df75ba9199813f121959799cbaa2865e1c6ab1de4814c7f6bbd090dd34c55bff2a63da71d28ae6f77aa2da043f53b76502300d2e181c48f83b7e6af6bcd55c62dc0d039d0bfd8975ce5af8de7200ba975fcdc4c56b0c07a30793b1e5c855735caf440302047c435bb500663064023020d0a0c2db62dd6871ae9a7c441c95c57d8679dbfc15af90a9b277030990bf28f9b09f46d45b2905ac58c6523ee04caf02304cc6983f5db7b5737a046bfa18916e4b1538028050cedab2e4150293b76c7d1613648c9907eca8ae1126f8b9237ddbfb0302047c435bb500673065023100af76269cefcaa9d0a2cb6b34a394eebe5c4604f891b1cbe1c035fbf72e78fc907a2b076fb83d0e38005458e77650e68302301b731a483958cd2b249a1df1599a8c83113a85742c1c36882d034132e3084febcddba6758a16303f14e645a547fd0b500302047c435bb500673065023006eb98037753768c618bac07260046db4a3b833ce6ff4c033e4051e27ec530e80da2a5689e5646e88ba348e5fbb09aca023100c84d00df7cd240d7f227cac7a116e6542172889e6961b5332bf8edc89d1fce072493a6e967f45c957064c88f1b163a600302047c435bb50066306402302e172ed87e634aaef62fb2e3dfd6eff26127c5442662b795ab2acaca1bc536ba0cf1b0a2617f80d9386ac37a00e9905e02305c90f758e40de1cb23b1b8b71b04b655ab5f8db5078cae82e476eb5b6b81fcc18b0f98c68892b504a0d95be767c758330302047c435bb500683066023100f1be3d94ad7f9070e2882340572fe833593b6f9a252df915c13655ffe1cb94282772237d8274a5146cbf942f055cb2b00231009cc2af1fb757a840f170b45de2ef2996422781bb0eca7006e8770272ff11f2c43b0679d4dda25c5e075c11b957c92fce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d7bbd62efc582244b7e766d71bb51150329f8b5b2e90e11723522f05e43ac7b757a629f0b7fe34e3995bcca72bda90b0023100a2023695f5e5b713d1416027a8ffbcd1dddde477cd4c6c94e38676d97098127bb53349568cdd67a8fb1b8b750f03874d0302047c435bb500673065023100c90466c207f32e52f90ede5991ac3a5c60483ddacbb1fc3e5f65d95c013a39fef4f607f460f0b3e2ecd4da0bb860e53002300e246e5c2b6a077accac8a48405617f6764829768a28a1005347c1c99d4623ad25e376732146bad6341c1f37f6fb0ef00302047c435bb500683066023100e2ee7c51077909e8c29db4304d074c01ff62eb2c8488c9159e4019ed90300eedcf4dbcf107623da3c739ec0b8c83c37f023100ba29a2c521a7f2a1e185571605cdd81b65578061305da7edc5750e7129f55448f0e10fa88a7985adc0146d20b05c53670302047c435bb500663064023055a2939d9706ccdbe5744c636389d03b4902245eb9cf9d7b90e6424fbf7366755ed0036574b6f88386d65ac63b6d60d9023028fb22cd2af9c81725b891c2b3b52ee5792a9ba25fb2569408d56d1c9c2bfa70082a76fe70ce7b5f2707967333fc10700302047c435bb50066306402303a0c6901398e14544ef22d8bd2d45f92f397d5bb29370f755d4f10137f280788dda80ee1e63b94bc88dc2bebe8da932b023040ac08e15db881501899d2901beace61f91e2a91b1a4accf2e85e56b2d01df804bf29bc4d8367e64b84157a5eee9998d0302047c435bb50068306602310089d799544fa5e357f48c40f02e6c4602b8db7707235264972ff92e8629f622317154ba011bceb4cd8fc69bdceb8bee58023100b2a127f1972e224d2b1510c83b8e286d259d01b540cbf8dcbd8d549efe0353687dcc7d7317f7c03e66f3681646190e180302047c435bb5006730650230195a22a83caabde9088c5e81e77c7b7428c4c20b92195873e0ba9bfde9d3ffc8b240b3158ddeb3f60136a931a7e6a049023100d9a5a6a5189ab08c75b63f2009ceddd8e30a77d240ed59c926d2d3ae4eaabae2f270540ff9a533ea39419ecd8af36f380302047c435bb50066306402304d83caa898e846eeb82d308c4e6fe221a9fa9ff9cc29b8a5ce358f14693ae695b5eb4d17d0ff3865abd24f23db95a9cc02302573fd0f3cbed35b981a45fa5dc0aca6a6503938b8c6b58c538301afab27fa42c7a3359d0a3f17b155c49692d6dc346f0302047c435bb500673065023100adbae9b51ab0a2b9857de9b7d591684cf0f38064a716e828c549ff5a8fb5e93c823df7af320a762e88404672d130f4430230213ea711dd9ee2f405c1dc472590cf90287c0e48e72b57bb02e6bd7c8ad32a768c775283ebb617705512b157d53434080302047c435bb50067306502310096c547c0c2c4c73c67719442067bad0c4644f7be85f1a79c43a41bcc2b9723a1913ddbad6dc0df26351417d0f18e3fc0023031850252b52237777d78f78e4e2680f3b35f5a1c029264bb50c73793c892680693dc679e3ed51cd3e12a8f7d4372ed8f0302047c435bb500683066023100b2531db4f9cde29541c183e153b12c64b173e368db2aeb348df5cc889f711c9700a92e26716f1b5a5ce85f43a71e2bfc023100ffb163b75bacab2f7f208c5508d16d0a459e1af1ae8ea33f00de29d5bd7ea41afc81b64cfe9148404de8258f13f014aa0302047c435bb500673065023100fd1a1e2b2b5b540afab25bc39259f85f557cd8d0cd3c125033f17e1264a749b356a34d6e2f0204b97450d96771a3471302301c20bb16b27730fcdd4ef4734685e6fdff0803487946d1ac7ed12011cb0de476286a3f8e45f61492e31f5f126ed69c440302047c435bb500683066023100de782f3b38f4151daf59c82dcaf094ba8be431cafd5c51f1080214f8bf7fed7e3312b304b0d7d9eb23f41cbffae0dd9f023100c00632e29eb3dd7fd4da12ff1371437055b873fad9f857698dae8b95e03ad2acfd4690ccfdba65121f3024238c3a8d320302047c435bb500683066023100c77120c9036c6ed8d3af6d5e0a77765a7585efee6cd211c33035a4c76368115fc2df3f04e8cf76f9d258e5eda263992f023100f388833ef4934c77cbc22c817666c484a82773d76f23ff85e15540c9fb445eb5e5c46569590bf90886e0dd0bd3102de40302047c435bb500683066023100a8cbfeb53e9f0b378290278d0028ac14198f7aee550c6c19c114fb78e54d572c275e5ac0caafe4eb053c9c1e6718abbb0231008cbdba04228b9b8d7e982b96ed3a4fd327f7f46715959a60794e5289f68d5486304eca83f627178004e74b9ec709a8270302047c435bb50067306502306de26147d3884512938def5f724b2eb99a897c6093d9188d51c09e70d9396164eae13c2a6c4d35fbedf4fd33f31de068023100b8d44c0f099b58abc5beddc73615e27206defb7cd4b4f0a32f4d0963d97c2931812faaf396d423742627e744b2f06cf80302047c435bb500683066023100f0ff81bfddf8062cfe3e82101c14304542b6044a638613b0d9d575659552859e8221ddbde225758b3236bb5e5e24d4cd02310097a55e9647ecbec008b841fb86158bf2f48d4359e04cedad237cf8de6774d370ae11fcf5826e1a11cac8c5620cdc6d490302047c435bb500653063022f313cda91857c016ccdd0170e1ac356df96d4cc3fda4c334de2779ae41eb49983f0fd08080b076b817f51f9772628ac02307adff0c0eee97a6f7f6d4c623916af5203fadbb1d60dcd64ce1f8890d63a723cfa680b1599591eda6e5d983e9e0d70050302047c435bb5006630640230466173ecde32517eb61eb992a960b155ab1a8ff0bc11046fa87f9c9ea59bf1bb0ae8807998404ca7beb35b2c92c189850230632cece3275921dfbfeaa1e25e075e6a8edae183762c709457c63536b75841583f74297c128d6e5a5524b803845dfded0302047c435bb50067306502300d5df76d97e5b42f0b78127eebb44063f98d6c41b6390818ba4d1f433cbf141804b362492c6bb906f3379f3030f6c6770231009b2d9b5f192d4e276021f4fd22527c8c355d17612452df73cb1344cfdee081c9dd5f1b4bc0ca18edf0a7f4860d7bade50302047c435bb50067306502300fd256d7e1b270fd08ab08702e7202886243df951f166a1f2c87608cbb8bc1162f24e2631505ca0f86eb0382b6ef0ed1023100ec01b12b8de0d19eada4e2783294682e34d4d53cae16c0cbea19fa1011aa8a3e64a5a28823820996ee21a07b377cfe5c0302047c435bb50066306402303799e83560220408d3be600e7c987a0d2624bf1459b0f98566a4292551693416f7ca39b12619fdae4a12f5e2e9a972870230148ad8fd4ed3c6f50c1d723bebd406879ade072a829f28f60844fa0fb552d65c07a0f9f4717a16ca9cb01fc481ff47ff0302047c435bb5006730650231009930b9ab03fc50ed39e5d941a381562870d0b04cb7f72bbdfeccacbb572476d48c5f51a48464e0fc1cfbc0aecb11c02d02302fb14ebda3c65e4fdf074837a503abe8ffbbac25f2810c499c9dc47ee31d549d7eba9ed9a3f09f5ec937f2a7c51f10330302047c435bb5006730650230588a624da35a3e5e7044c26639e9f4cef88781749992dd9d5fa17960c79b5fa02c159a97d27e07f50ab28bcc31494fb502310084c17b17c4384870065c72d48ff9987b660c81e53f4fa98924cdc5e265dd6bf6fefd02b74a6b777cfb054646328e788b0302047c435bb5006630640230696b3a055afbc4eec5e980c97b61f29ad00e88b49882dc91b03117b5079ac15849c6da9a62e4fc62ad5fd525dd38f6da02307044edb72e3be94ea9154bb9b9c9469b1d937173bb91855df7ed02563b6d160bbc637be039db98b4fa78b6ecb0de23420302047c435bb500673065023100edd35e3394a93e109f1887ee497c663c4df1cbe95da353aef5301a131195cd53a83bdb8c8f8140f94d0bd46750773fb60230237a7153f074becc28cb2dfa18eab7145ba7066d697d2ea6c334394fe2f5d73f288b9cc56e50487b506308ca03ed1b110302047c435bb5006730650230609ddcd967d577c4b7e163e402c4152a070830175cbcba0a60bb86ab112c94216a90fbb4793055acd3b7388166366c9c023100e409981e425f2354e941ff0dea752a34b8bb5dd0ba4043133f47007729ef1b89ba4ac581d4f48e3c5dbb96cbc27462d80302047c435bb500683066023100b5901b500c2df131b5fee919f20629773089a60265cd132d87f2d3030f6bf806d6dcb1c182cb483cdbceb80b4b76c1d80231009f6092d8b54f4495c10fa4dcbf0d5e9a5a211f43dee1a7f450480811ff33d1173ec506916157fb7ead0349e0161dc9390302047c435bb500673065023100c749c4693d403d013d41bfdbd385d258a8f3b01e099dcef5cb7affda782e4db179858ef27183eac311be922f1b0491180230288505be57ac02a53f8d8d36dfa82b382514ada46a164fcdc668ee7000f437543d90f20517e93b989f58dcce0bca72710302047c435bb500673065023100f1a1620c358a356179d1480aadc4c408b4b8dae00a8964e0ee8c578b7442c88cc95b30c9150e97927187cebe871d27830230197c4b6c39a61b34b32c85d35debd246313be9e9015088fefce8ca2691956f31c5215523f6c9e48a91d6adf1c702c4b30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230307c90c294a19bcf0543bdf5ed3a1432d335568700ade15c635622ab6f147e75a85a87628388e65e4849d2dc46b9a818023100c6c07078eb364ef81e8dd2a4d9590afd001491dc5e48fef1301abd0a727d551924070759f605196f9f8b27a74ee64ee40302047c435bb500673065023100ae6385535b7387cd4549146bb4b023ab482652bb1ed032b6a75766dfc75ebf33cb44c984a9cc538a0b15fb2369da75a30230369774deb184d726ec493545c8d98bb9ebff8a05809d154f674cb1fa0641f9bc1c1c2e2931760a41301417626839852d0302047c435bb500683066023100eec8f550ed80a2e2e2ee793078e83148ad384acbeaaabfa2bc914267ea88ebb7e4254f670385a4c328602515fe6c65230231008886efe1d05dbad64632ab1ef1701b36a53b55f7e48170bd1fe806b9c31e2677e2069144ae8151b6ecb7886d3352d47c0302047c435bb500673065023100f8d7dc5d4f3e1728ba211c72c4c4502fb05fdbb5a50d3bc4fc95959ef2e767d703382ed2d7b24992e68af56e8cd56f2902304e458a1c88f53e37525482aa92a12603f2f6fad88ade7129bf58044260fd1069af95f43ba1638212617cfe3a959ea4b10302047c435bb500683066023100d90daa12c9f8cb02f20acf3f0da6e83c244c085004d120540d1bc20b1b54897aeccd95c325c0bce800efe0255ff414e90231009f040cf7a33a3e7f66a677b5bb4f88868b38b576c27ae17b0067bf2e90b88a5fd9df853481093005fb5daff669d0efd80302047c435bb5006630640230505fec9a2213fbcf686348a8b9c86cfae2cba2c89de02ccd43d77213382cdd3a377f779a906927c15c97972d3a4ef3a102301b19c58981f8645cec2d57d595d7f6e15352b9662bc4dac5db60da9409699e2d35769157e03889ec78f193a9fd60c5100302047c435bb500663064023059de644b6a55af4fd6004eb274739ef4a31709de104110fb810a9d32ecb86a7bbe52a053779aa39e03c6cb02fec683b40230573df6882fbc343abffe054b9d35a4a2f289b4eb86000812f0d3887a2b5f766ef29a75c2e8a408dd63d4d35b4800714b0302047c435bb50067306502306f5a87f87d818702efc7413fae15350ff666fdee29f71140bf5e156d9e8c68339418b707c45f671f8b72cbeb1419a539023100df34ddde35da94f34ce03d2d0907d0b330a11469fd75bdd6cc474d121a4b076a95d5c2e48523016c231716aff86d29520302047c435bb500673065023100a6b293bcbf1148333488b4e23aad6ad52e9c6c8d0180997bd73e1b0a4afdf244beb3bbc6162bfe83badbdf8537b0bbaa02303360838624160e574c45283f438b6253b139a329cc1d85ea280eb28e8de315b76e2e4e2eb57974fcf3efc6d4c993da600302047c435bb500663064023056229d691687539ce0a7fceb3cfbb9d0ea16daf2b13b5f3566f544d240e3ca2cc24757dfbb866f24c902efefe83bd6cf023030bf5dac6207d86d7cbd63e352cb38290423c77a3c692dbdca98685f9251497fa06517708f60eafd319e692a829e4a110302047c435bb5006630640230125f3f097822fbc7b44432b2029cc342190360d4f305f9b3e730675ee8a688553e8f73c7293c0afbc744e636ff23bf5f023002fbb76147fc6f5e4661cdd248416ab16d50912739e6146249bd4ae33243c9361851e9f5689af06ac1f1e36b3a5c85ad0302047c435bb500683066023100fefa433bc9f7cee7a514c38fab67fc61008a933fb665110b363df477c1e09453efc6117669943cda1af4842dc29c32b3023100aee2b76fa3a1d171427aa73fee74e1dc62d06db96cceff957eb164bcc2e0555ec5c6b8399a1e365a6f949eb3e7ca739e0302047c435bb500663064023069031be47c629e39ccf0fd9d1e33a0d017e0af8d01ef8df0f8f1aa3b99f594c3656291a932eceed4e07254ffdf19f7af023066156b5d76706d14a4fcd4d5d4a3002f2b049c5fd462d189a65f6db5a86ffd4e1ad81bc09dc428c3d690ba20be9ece3b0302047c435bb500663064023025a2ec6594d20cf7f82e22708b475452a9b3b262af473e6fb6e56a0fd794c012a4969b179349ce0897a1da983992ae9002300922bdcda0f7e143eea259f4172582253104e232aed50708a38461e42acd79da2f71b0f9dccd47a7785e287d818feabc0302047c435bb50067306502300ba73d136bac5502bf8e5a327ae170714b2e4dce52c503b481f8d90bea98034ad614a42277e64cfe481d37cd11894b27023100de31029260d36f6fade58c1917698ee6dd72b4c1312907fb0aa303eb6845f0506673057367f9de2ad08ed778e2e990860302047c435bb500683066023100f80122e9e17088073ee8c73da39f9ace2af004a6f85b270e24120ea4cfedd0ea077119ea3e300f1efc19b9fbd7a94295023100d46529189205c03ed2c7d31257e4260da8e35ef4c04c7f265175f223b75aea421daf0f72608ac025c13f1556554f1c410302047c435bb500663064023021fb7c09d127a736ea0ccdcff0f734d8ac0947820872368e80aceed9f3d2106031982cada261fc3258db4862f7f170ce02301d69a68f4652f9cc8dbbe4af1ec044800ece85bf40fa8d9c242fcc20e5761d6f11416faea592407900c092c2a793c49c0302047c435bb500673065023100ddee8ba7507680b150cf5a1912b86b2df457b7ec24ba5aa5deb784146c226e056531f026958b8b7e99783e1f52ee425c023008c6c853c1b7077198e28e6c40b83c35264676af55298b6cb5f80cbbd754b858834bf0aa4d0c727bb997368b66e0335e0302047c435bb500673065023100fe193c33f4d52126fe95792e61b4b9526328ad1ece6d835fe5d3081077cb05eeb4ac2ef77ac4d95cc1e3873a5a466105023009f13fd2d8ea34dca6587059906c9d47bec48872d7a8d1797a4384f4dbef8ccefea4e08674edb79f3f94b6a999e62f170302047c435bb500663064023056268cb6cc6d696cce5941e3a2376dd16d3918277d8a68dc883fa29a1bc77d8e621b288c217f7b06c2e31ab17f24dc8a023056f6cdf5813a999266af978a2fab24d61d8a05aa28242766101821e817efaa364f87760e05c06f98643e3a66e37a91a70302047c435bb50066306402305f6981bdd50a75824ba695d531d55964972b4bd4aa5db54d79fd6eb75fc12ec99a3cc7217fafa4ebd6a69154a5ff7099023047a87b34c937e1c04d2c6266e8985124fccc9c8ad8956c6ac5d2f531266c7bbf6c56ffc22b60ad527d5c7b3ebd2119430302047c435bb500673065023078ec1bc312f688c37237ede85f6f4875f3af38f0819ec83f0941497d35e93b2d6e1ff6c02f01f237cfa3601cc3de8b390231008559a0e9601b92f9731312e63c6af1ea0f668012790c19294f9b630c800fca7234c81de37662ffd2df76b5d9259b64dd0302047c435bb50066306402305e51b45f8ee7ab6fe121452053c24b546e3ffbc1c90cc9592cf72b4a9229c2902d59c994ab220db3e8e3440eb18e5eca023027c64206e718389ecd2914cd68d89c80ea346386fe9b25bc2d00a5a46c4612858ab6d6425fb8699c3eca6c54728861e30302047c435bb500683066023100f648d3f8ff8b2681915426a191e2bd79fda3346ece8f1d93502874d6a3d0420d7da38673a6d538475d1f281b2226b220023100c66546f2d05ae843493e043dea6bf72cf5c216e1133d945b30b801f88cd8d717bda55b472beef867a6a4cf84581a03790302047c435bb500683066023100a8b0c8851aa5380b5d77ef330d61d04f54f11d015410dee95bd206db400dcde74bdc16cbaf14f1cfe4cdb54393783ead023100920693a1b3ae751f45127ecbe524d6ed115b4537f8f6138e1f773721ae3e35b773299a2d8b27dd98449a95cd92bd8c970302047c435bb500663064023009018cea8a6abb84419205feddc2d3e59ea63b9f735b64c02f3c2937681c35651e78c7ddf5e1a86ebcb50969c4b4bc09023068b9122e5eee7daccef76b7f3f562dced95c4202193584cab2288f0e5b646a58ab7d179c4820b623d39f47e7912feb2e0302047c435bb500663064023100f90a1105c1e15bad1618cf2b2e9d539c40ed69971728aae34646f0c01b06e116598518cff2135e2b96cddf57e722600e022f541393ae18513638dc969232fe64f231f60afc78862b6b533da7ab3de385109884ad6b8aed3c948734a9a312270b470302047c435bb500673065023021c433502275b010d16b643cfafe329f1e69ea5f2cda77a65d804cd59c5d5f2a76ed38ab9dbef62325f87db662072288023100c06a1438b31ae133a59d446268bdee757bd7ab998ecac474c4136fe6d7cdfb1f60c4e6b3280449801def948e5b4678a60302047c435bb500673065023100d52cd20bd3f13645ab17ce93b470e94d1cb206d35dbde44bdadd5e2b1bae821b73fd78925778500f43079b90ae6e8618023011e79951b78e7c918269db75e404393f6b99abaf32a45f239b612642de0c5033d6769b98c374ab4b6bdfd48e9dc694fb0302047c435bb50067306502303abeae7c1099be294def94e3e461eb4a952d3e04a65342bbe5129ad01136b33dceb4622ab275096111573b92fb6536ec023100dcf12a91de76a3d542dc7414867d5c92879c88f34ce6cecba5f1fea49fb0c1621b0d5247aa36f178c9128393cb4f495d0302047c435bb500683066023100e8efa6acb543eb812f20c8b20fccc9f88c5a292023ba9f291a832517643d5f9f6353d1af4113d0187a211a13291de3d7023100f6d4e2d43581e50c7bdd2a749587137c57e4f240fabb958da863d1ad6d1f8f22c8943fa2ac387f14c94f4c2ffeb8a98a0302047c435bb500683066023100e908c5338c53aa3df24dedb89b22fcc5e88f9675e2bbadaa3ea3d4cc5033c8be3aa86d4679a82c33a5b18c421c30341c023100ca3e5380ef3af889ec7c02d031d569d13026845bc595aed98f5ce597b6a19fab04176ee9003836affd9a6c47cb4e4fd40302047c435bb50067306502302041883b66e6f92d5a64d857bc447631f1ac13ae2e4f93df86490c8b1ec6b69af3b93269be7f40ac678b2c019fb54244023100a3914f278cee75e46524bc137bc7d0094bc6a6c556f57e71aa409d93b4706e1d9dd5e29be3d209d1eb4edd8539d7159d0302047c435bb50067306502300a257d337aec7e56a52144a4b6da6580f2e1ae5217b3879e6abd313645ae3c1da8099755054fe5b420e301b9ad3d33ea023100b442988d26cb2fece1c715f91224bef73fa1311eba515a90965a47dc144a68c05cee77eefe0d3c82e2e5a7c4f7c563dd0302047c435bb50067306502300520f19ff12aa7ede5b47a00886a82c9e9ab5fc4958ba3fc537d348bb1312b66002ff5df3a3ebd8099839de81dbdd4ad023100f1c5447145c7ea89f3e3850aa93c342a69f7840fc0d9e12beea6f42dd00c9dc4f067825a3809abfcd5cfc2851799d06b0302047c435bb50067306502307dc4f8d1de1a0d30d7111ff36b044a69b0f8c3dd6f053332efc2a50ea60ebae4c6d5a87f13185d91daef2601583eec47023100e73b67aad506c428c016a9cad5c09f55dc6540575d63ec53d2a25492d4bf3b3f95117062f60d9a564ab12c2227a733d10302047c435bb500673065023100bbfb8ccd93194ae02575f0de8646d7569cdae83db039d518b2d35cef18a300e225c2f9fb7ce7aba4e37ed68efe31cba1023012366d6819a296dd89b9fea3803d96e2f8ba7f5c1aeed6582a688a8a4277659846580cf64e1a1553b151719a3d74d8590302047c435bb50068306602310089a3e7681d6e551354404bbffc646cc4e4ace816f2e9eb6c4ccb42c7b26a0d0925573498a8769f9be1bc0efa36f94abb023100f0522cbf50e2d335f81968fb9f4dc69dd3f930981884a4bc188307f704f7880deb58726372bf7958d4f3caac3e392f760302047c435bb500663064023077394b299be3b93fee9386a82f02a59e0ab475db688edb9e47101e8daba44b73fead3691b2aa397a2a7325c65e5d376d023033e94e5061f4a54131b6ce7e4e608479de89280b9848f2639e5d3c18150d98092059c5a26268e9dcb4f14c6570549b530302047c435bb500663064023016deeb59b54a741262b2cef32da88cb6197e8fb51563856fb88cda546062177e3f79bd783f0ceaf2dbc2443dd9cdd67702306bcfb599b0f109e9f30e5c9090dc3d53da79d12b04099ee805e9a9335a1286da5d7749c13ab7ae71d112da05f35822970302047c435bb5006630640230432bbda368df5513d890a35f923868d646ee4706977c3a562d399a2191753eb382e05021c52cae0b25ebcb260143e3870230580cfc02c50c4fce11f0ed8789fa80c6a36f4a0091c31cff62c04a775f51d4173a171dd39d553ca557803819cefa603e0302047c435bb5006830660231008fdfbd64bfe9920c76886048227de9782fae01b90976183752299902c7a76f7e8b5097f9369b495a1969e1ae75f1cda2023100a423082ab166668e413350a6b84f6519dd5797d8ccefd0af504d8290cab90f9cb3702d430eddbbc0abc67c9316104e210302047c435bb500663064023076ba0ec0e1ba7514583d87809cef5df487cfa9e4d7371ae0998923c265dc022b8c7ec5be028f39c371f24ad34cc3031302307f847e61b4a9de0619d0e3ae06121b68a2324c03b70ff4dd3bddbec0fee733bb228266d49fcd5d6b69134d1633fd431e0302047c435bb500673065023100fc0180306e58aa30f183c792eb0ddd86e2f75082bcda2907e636aa9cb9bf675ad161c95a1254c2d1fd9034cb45f06788023036bca11d909e3db1203ade8ea26544a75009f216e6566e61b0aa50a66c44f44fb5a43a844ea8caa77d0f6fe81d4193900302047c435bb5006730650231009d3254f1562c7a0437b879f637af301578964fe4c9a43e5932274639e17e77de1c44f7ec59bcb560203603177f970d630230074b3a91a0038eee982ae8b6e710371fd31ab8e264df16563cd8094c0ffd5f30d61d5b8b97db45d86293fda4c86c704c0302047c435bb500683066023100eb42cb00ac403437175e661450c25468dfcfc824ce42eed86a0c6ec498a2993a2728a3c631d8cff21381766e418f4f34023100aa70dc3ea7698ff6017bfdff4d9ba663bd73fdc15106ae6848c51857963c8efba6d7a2cee7156536db44340c7d2bbc990302047c435bb500683066023100de334b496dd256ecfeb9b9b9b6fbc1d76e123b8ad7dfdbb0cff85ecd054636ce6b76c8783e01eea899651b68da354f8e0231008f7cdf04fa74467eb5c4c8d6934ec084751c6c8c81439e57a7b55eed92badca27df35546372dd388d8fd68de85a585d70302047c435bb500663064023068413aa4b7a7f00db44793030b4041d84ddf95af41b66fd8a69176df286e7f1c0a6ff36042b7ad85142b41e18edc24610230161dd23859666987adba70f6ee05a2b7e012d6f3d48f1d95c2867530d76623f4d813bbd0ed41c665f4ab56c7359bc0a40302047c435bb5006730650231008f642dc2de8ff1cbb008f05d86513ea72cea4f6d08e0599ff4fbdf2f19e614f6be5b4fcfda5fe85dcfaf1a784b67032002301b960b048cd755ccfddb4cbecc10d622d43d7fa436e24e2a565a5a940f3f7635519908e673eebceee2cd2bcb053174950302047c435bb5006730650231009028997f31e9ef7d480a061f9108a8faceb96c29a3f4edb2d192886d12542046af320e116ac32576608a24b07bbe2365023015b18f992c87154ebc3ca7d66f92d71511ab4bb6cec570ff3e4ec6e0222eef693eb86ae12c9009651a47d7f09c9236c30302047c435bb500673065023100978cace6c43b4ecbbdcabf20f7da2cd25766f89f71f6c7b3531ecc990580cb5e6ad2d23b661ef218985a0441c489953e02305631aaafaf7a262fcd8bacf768336f48dead2522f64dc316bcabbad0eb36ca44c3ce2620f0bbccf32149d11bba28dee80302047c435bb50067306502303f6b248974104cde91ccbfdecc0eb24576680ae2a813587d684b04c53a6a567ac3db52fd8a008e9f5623285afa896ffb02310086da2dc2da2515d808bcf1596edd65d188568ad83a2fb92f4b0392f2d0193fed9d2d32e6a51f4c1c22298ebdf71300d60302047c435bb50066306402301d307f25066da3f9db4480ef2c5c933231d5368fe46ace22e5e0488d1caefcab216a55f9470b36be24a2811094dd8965023064fa52d16fdbedebb8a84b051ee455e026f6964e49b77a67be72f9ce94e6e816c9a05adefc2c89c4894a06932ee3e4230302047c435bb5006730650230518103df6e898e2a2ac03c38037efb7c311c111612c1818e227f38b9e1c73f582d86d06b7c1a58f6a8aa1604efdcf59c023100e406de73100a132767cf74ebe8012a7420e389cb081a07ab9e60cc38dc883900b8225cac35a9841db5fd0520ee7b2acc0302047c435bb500673065023024e5acf652517a00c59a49b6da85d0853bea8e3bcfd15647368b3876449789199d905f2ed84d51ced40a5e213ab8fea7023100a9ec066c6dcd7777678a892872af9d382fc6341f5a4574c6cfa8f3aa8d8b1c061234352d4b1cf390996bc7cd710701ba0302047c435bb500673065023060289c95181b42187d226c541d9ecd8e096309580d140aa730b268265592c551d08c9ff892da29123849bb2920bd6932023100bdd29a6f69657aba0e47f78299f788e811ef47272e98132d6614638559db67caae6e226bdd5c99aa18383a7c84935bf20302047c435bb500683066023100b6216da7bd053912b76460ae8189f8f8157baf0402c947953f2b4adb98e7a60343d546f0966c51570d12469003f3984802310093d5293906988c9902a1db3d19e89defe976a1aabe4825c96ceaeff8d25acd441fd9fefd9e1d7556857a5080a06b6ebb0302047c435bb500683066023100d9d62446da8e6a79287f040f2ab9883964477ba4a7d12ccf85f763f7d6e1944bc2d42f9c7c4f93baef94c23c226c634c023100d2eee3623ba987147fc218f1ff37f9d1c93d6c9910dd96b2ba0d426249d134dc9f9f1c9896954ac1c411f411c1de535a0302047c435bb500683066023100f664c88c42d6b99000c411a14e158e023a41c13daa874f184a040ce7463ec27ce5ead59857b1ae3eb241d670781db729023100f6e066af8658032fac489e40aef06fb12781f4ed6d924b082cf35e00e3a9e0007597e7945980f38312593cf310b1ad0f0302047c435bb500673065023069b7d128f2e65150b40b4fb0b75503d92b7a59e854a1fc04327c6cd38b5afed039c000714b4216d1d580a113513b4102023100ecc2b30e995b20e8c0234c82b0c220e4e2cf5f0ddcc4ae99e7fd2d85abcfa2c386ceae0e45e5f379ab55297ab4d920260302047c435bb50066306402302976d8e7e1fa60eb57a9f16eb820744a4315bd8351b46fae0e0035fecdc5f4a28ec3c8c019fd81ae06e9ebb4fe663211023004910377f31e01e518f9abdbfd5f7f95023510b019ea3965ffc60115bd5b7f573d2a453c1cf655f0d2b93679fb76af270302047c435bb5006630640230742f30cf003b5a2c9def10a2abdf49b0ad4e4f9be3d7d1c3393b984451e5dcbc5347177baafe639eab8818678de79c1202304662b5c6b80df9b7afe229fa03ffbc5be440161c2342c9982d87a424992e519eb7bfba851c574ceb90af6c97ccf345ac0302047c435bb50066306402305cbac1325453e434f500096fe0e8a0f4ca8b3673e80c559933d52ddff1f5c6c50cc5060be6e47c4c2dce1b92dc3da45f02300cfd1646f2a04a0a3bb35eb92e6e0546a8a1f522c5c0b23f65ff6575e721a7490c1e8b696aaa891ba49e9dbcbb074fae0302047c435bb500673065023100ebc94126e542ffea6aba4ec6fc17c2050cc3c84d4045404973da6f3a6f75104f718e8eb86c11338e925b65f959f09ced023024931cd8420d9eb57dabc9a0b7fa6e36ff6e3d30bf43a521fe936a61e48dfadc0d4d5c242a2dd9b20b07a067238a78710302047c435bb5006730650230705592aa44a9b549eff08a4df51ff8f62ad92f7dcd63d1b62688f2f9cf66fe88e4cb12bdf2f0d9fae9a921b4e2e25a68023100f4e76d691b9678145b8203f8aea49c3015a72224555e0b30bd62cfa8341ad3c3f87f09409048bc89f2bb038d681c97b90302047c435bb50067306502310097aa2d97a2ead3b2d0eb3bb1bffb2437c42b483929e6be8f4ce3f7710babb558bbfe96caf766f8d85d6837c5e51b3c9702304505c8c062836a9411dd0fe937bd8b4b44a76bbf7f37c112cd7bdd6cdef27b3ac09141214b8294d3eb34977728e399230302047c435bb500683066023100b1a42fff653e1c9bf09ee6eaea0acf1922d973ac99d4fdfc2d41f86e8a1b102210bae85bd434c2430c8c36a0be89de30023100abb98970572dbb6ffba13015a8eb25e207b7a77609e70598e192774e4f3106a1d7cbfeb4bb3fb19b81230fb6145fdc470302047c435bb500673065023100a08aaeb94bca0f990f9fd150b6ff8c11f5c1a3abc93dc733b807bb19c2ce9002acd61e721793fe93e47f91d8cdbc676802306700e2f5a2f707ab7d5eda5f4f14c51461bdc5a78ebeedf1f7da6a8d82e255dd2b90d72da1874b43fdd599b34a2042970302047c435bb500673065023100b95dbd50167b2b5747032ee4c9fb01d644d09320ce31365729b4d5a3f8252f9dae2926ff2add643997b6955534081d7b02305cfe1b9ef29fa59ac0771ccdd15376ca0f64271d65c9ce4a4deab655053e7d8d9ba56fc1a31f411ee320c93aeb22858e0302047c435bb500663064023003ea6c250312e8adb07d44c4f66bd7d8d6ee2739756597c7dc65fe2b312a9056cc6d7d7cb260bd10a749a8edab335afe02300f7330f0113a604b471a8a1272f4d74aeea7a28b5798596aa2b37beb3c19bbb37c21dded1f7133a445acd18d304bbf060302047c435bb5006730650231009b3bb05e56859d7f8cd41ffc3cd882220f5231829858b195779edb74c128a3696def3609caeda71239ee3e4358660bc802300116de68668b2ac072dfb6841b0db9a93540bfeffa9c61544d39920cf717083f5de9d8c5312598960686f3367e09d12e0302047c435bb500673065023100ea9193a03cc195aec6b68ce10f05c41cf7be5bf983766dad735203e2064a1bace5f9393908a9a7ea90fbb59c3cc3439702303719cd4d0138ed103e2d02c00943281676272a9a6a0481e97e1c40c75dd5e73e855d56e773491cbb8068d47029b418fa0302047c435bb50067306502300d99e70cf19be2eb6eea99e239993f30c58864e665a8c793b6e6e5d639c04a3a65325c7e2886d4fb98789c128957ecd602310081240393feeb4eada9fb74172eda20496df825b3aec7c25cb3ee8f38bea5cbcd0fc22c3c2244b39426c5bfab90e1dce20302047c435bb500673065023013601ac8650b0278f0b0ea49de8642e45c75fc431970549efef15941259d8cd8bb1e8b8f201a13b858844864f943cef1023100d0b4b420e4a3525f01daa1ff5f96a020e6752d7d2941050fd27ace785fbca066d459a9b4727aad8fc5769dc6d496cfd10302047c435bb50067306502301f0860a4c71a7cb45af3496709bb273c89af10218dc3805eb021e5b6adc7aae9dd32e4502c0b4ea03326c5421e17ddd802310080cfcab585a76501c84938bf81bf4699783ba011f1dbebefe0689fbce4ab51290a1dc6c7a1bfa444a72088f59f95f75d0302047c435bb50067306502302d6f35e3a116bfad7ea890732ab29c6b07aedf7ba27960ed1b723e0495a33ba2b95d26fb0c597f202f5b4706141baf63023100f7e300c16f00bee1099384595f3d1ffbb9d836e196bcb8e1b81c252d0391a30dc5ffa3db4f89c1b133e7e00d6d186cfc0302047c435bb500673065023077b8d11757ff14c03addb33cae65f575301598bd1d551fe56bcaf0fdee51e974a5aa14f9f179a734296f669e3a406ec9023100e0ac3b8a25e22c46ba6952ea2e1a8d619c6f7eb933f2b2c7f4f3ffb7a99360c9eceb0b0345b329e5fac5f59e1cb163b90302047c435bb500663064022f4f994bc1b3c750370850db5f50a25602fa00d5df7c86c53d7a4013f6720013e6d2fcdce226a4f22b38cad9105133c4023100ce20a27f243d6f20314379b3e94dbedd9e289ab3e3aa934cc02826376a925b45daf478720ffdbbe8e61a0b520596d6a60302047c435bb500683066023100bbe6a6eb840904fd2c3f423c41c9a55c36bee443c7d163fb47eabf967d0c374a34a63819e0b8df4d57f3146598d094e9023100f6fbd2635c5e543ce027fb87c4cd05d915411f996b8f306839e2b8dedc11059934ebcd4688dadb696e6c2d484ba0ec800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ecb199a66badbc89fc3a16cd69f1246248793d49c4f585b6d2f939f952383ae4cecc5e92b7c654628e6c5423cfc8ee7b023100e0bd10e8d97f12bdcca6b9c7c2e43f88e052c8b1cd29383ddb316f78056c720fef747262526aed73505c9257748529dc0302047c435bb500673065023047ea2bae335589b5155ed45811af3f599ae56af17fb2aaffa09396fe1f211936fe26195bcf7edf2b0179ddab890f4d24023100a0a1d213870514d5075d1693271c2db83445fede69c2d96bce41a023550f2d4c2801ac9a2ebad1a7efe2ba72936289ef0302047c435bb500683066023100edae0f4e7b6ec274c683d42a0b8dde91899fcb8b5b627ded71c490bd136b34f8f765d39a4dd71dff93995cbbed110803023100ed4e6a836f17f3d58cdef1a61ba3cf63fa1fef15bee7db39ad9e78be57be0f07bb1fefafe0ddb0437f4a5ed865fbb86a0302047c435bb5006630640230493a8bb3be4022141e7c64e6402c1fbb302ae70a83892f5face77ac1de3e954b5e856fa6b6131ad91de3d636b24188e4023040c524b9a86a5f45d014cd1751d934eb38e29908cf4cbd6391bf8089db024a8d63d83bb1136dd09346a555dabdfa3f6d0302047c435bb500673065023100da97183ed158cec5f3c6f9416974982438a35da8e1524c0fb749a8a3827b75d7a7e8cbca197474f28f8255487646218a02306447ad1e2f601aab74297f16f3dfa5a4d0080b0e4804b6bf3a72b7c94f607b25863e7e456e495bd585ac6fdc40045c770302047c435bb5006830660231009a8ade468f2323d163ed1e826f94c3e7eb9ccb6aff23391891f9574b52f29f2d6eb6e002bfb5b6615cbb72dd92c9b9ff023100eefa7c0f67aa33ce88df179cf2c908fb42e0ec1f6b818cfef70e0ed4509a6496885cecce37860ae60ea0b5e9e03d8cb00302047c435bb50067306502301ccc86bf1f5c592570e1d576b440c4d0c1326b85029bf73877b71e5b3b68624cc37e5faa507874c519de2dece413960c023100c2d21f77f21438d413c3ef989136a88e872de4063597653a9165f7311a9ed5ec33ca5f3acd9904632d20aa4741bb29570302047c435bb500673065023100940927781fe5adc3d24c74dec21f0ac5a8173b29bc62d5d24b874c4a9edb01b0a5930e1e0a652b76f9ace9d84bda5533023077105dbb666f2160769d3c6a525859c5f25df6c8d0a697bc7ceb101b0d260e68ec6e991f94ebb1727b04d45075b0512b0302047c435bb500673065023100ef6f97e2287844e26d29f945e210c98296e3c55db5b71d8c040bb226e21fd4e6116e4dffc75f015b86c222171146ff1302303f625bbf6651987251249856ce10e833bac27cebf6cc7051733648d3d18f933289c25d9ed776b94b1112a8eedfd7a19c0302047c435bb500673065023100ff4e0c2bf110e306f056047bcddf75fa6d6e6163d09d7ac3a94e2691fe39d86cf288b9666f73689c4e4f85a0b39f26bf023014e93fdc0c1f4a8e53d66b1a3f787c17f0194a19d6dde032c6d58f3b8203b69a6474453131594c4f205ade699739d9760302047c435bb500683066023100dad7132a40ca221f07b075ae4ce8ec780631df316c98afe6c735015f9f2c335671ab9dc45c303bf06c6f9d0789eccf4f023100e66b4a2a64580c872ff7399df626c672b039a51cc60fb6e10482a15dd2930696f95c10f426d1d09677c7224690c09fd40302047c435bb500683066023100d3cde0649ff9ab304c0b7e744daa300bc439e61cb3cbcedae2834d102289a606e171d322daf97823a3bb660ba54521d40231008982e44c5134ab73c4671b6bed60704663d4aa266331c9928e7a7abfbd50d9f19964090e7c50876b8e9170a468c26d8c0302047c435bb500663064023012aa255a4b083461c19b1ec94786ed0093aeb5502d129acf0946e088b5ecceaa8a2694aa07004beb80b84e874be0742a023062976c516bf52c41ead88852fea8c42784f2477d7db427ebd37df4545677d512152d7a6ce0b340c79d72865854bc07e60302047c435bb5006830660231009ae1b60a7ef496816c15191ccdbba5437d6b9536aba7e5e3b5bbff4c75112c990f13b4a8a0048903076a42ec874c8207023100d34d141bd94a3f4815c7f0971a52783ec5ef781dc4ff124213ef410b9a7ed4413c9ae3fa23215b590bf7006573a95cca0302047c435bb500683066023100a39d7247f933152ab52cbe5eb5e8173a3c0cd59c23c9df3dd8fd67ce66ab84034fadf5c37167e4df17e159febd7d50cd0231009f5c0db72d1dabf4e1e084c0a93437fa05fb5fa471a40ed6b5dcc24bcf7b30dd26e1ce07dbc510b7d61be69d6bd0cd610302047c435bb500673065023100c0261d037bb438ccd40b8a7f225f259cd1b8e17cf9a085ed56439add078a8c9751ea5ca799685aead9370c378908f0990230352587aba9e3db2444efa54c9e00444fd5d8e324f99b666766793b3cbbb991410814d6e204bd95734c7337cdfe6b2c470302047c435bb500673065023100c0262a6bd7ceba144889447bc0fbc31593ec771268479a33c575b63d9e0979a1e35710e2a24eb0f9e221d67b288b148f02304a558b845a6314c36912bee93d3d99eacd446c8d02f33f1593bf00a18fa437fa3f71a2d4b1b878d7f97a47ef19ab3d380302047c435bb500673065023100ef452f29e0f997df4fbdc24dea8dcd6aeeb371044312173b103a7927a88b50c08209154e2f36432f14fbd22e39aba764023073ac2e775515a3fc6e99d052a7db9797314cf2736a8cbdd42b32c731b6bb72531c64de5a9787bbd3f479ba2192c907cc0302047c435bb50067306502306d43be096488a7180fae9b6357a3b0f4f1bb14bd22c02efd73c71dc0bcddd6c3483af20a8e169a0702425f16a5607d22023100959f34f381613796a9af257fd9442f008565f3e7ea50a10166ddc30407cc187c069349756042b5cb818d753f3401b24b0302047c435bb5006830660231009b002125dc80b169673a8d57435d30f237e57fe9d582dee66ef34da96c806d1197002b1b3296a5e4586b209ba3c31da002310084c9d18897396cfc98ee0c4b3ca8d904c853867539851042615d7d1b543569ebeba01c3a58dc2216150a77709d348d9b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305705a6cacbb62aceb95413d50014bffe21d5e340bfc37b74f732e19db3050e9ca6cdb5bd60bce50a54117048cf81399c02310096ad5b5641fc15a33deccac02c400f5c7d8d2a33281c19341913f2ba386b8c1147b7cfa4ab6647f910d2dcdce34588cf0302047c435bb50066306402305902d4074e694a1213f67dcbda82666a3b30a5ecba937b9032f2a344bb6ed1d6c85498b61016a59bb0dbd059e386a16d0230054d7659a1b035318d195b354e9a9ae0fec27911b1fce0a500725d43cf5714ae0e574c47fff3421dd867e47d1da77e8f0302047c435bb500673065023000f1c4285414815248260c6293268cbe3a9b0b0efb6639078b8e9231e6ffd6d34e8ab9ad43aadf46545302f7848da421023100e5e9388462d29ae75d7c66f8abdfd2e6f735f2b0e38fc2677c4a477504e34d5138bd5abde0e174aee704e762ff1057a80302047c435bb50066306402301c3130fbf0d0578921a23aa1e277bf622341f7bfdbcbb454d5eb354799d8ef0ab0cbc2caa12bb65d289ea3387f9f5b9e02302d967f817d946c49bd87ed686af4cf6e5fece9d84d7ddf2656584d5d6502f65b1d660a324bb9ad46a02c0342b61325340302047c435bb500683066023100f908932c94ec44cfd090fbf3016087f81c24d7107a5d8deed36bd340155de486b4aa3c1a3a0d81b8821054fd4931dc1d023100b1ff7ee63d92d29a6c247f9223498eb694d6079f579be26a04b968befb8672d58935f5fc8639b6bcc1541ac61d09b1e00302047c435bb5006830660231008e1ec1edd4eae591e67b931b12fa30b769a8a2fa1e40512a8bf3483335491b9b571c372560a486fc1ce8deb718d9212a0231008eb1e08940e5ac8ce1e3e64f917fcf9be1e3755465640f7ba10434e4075816b1d588d39788d7e6ae230ec5e68745c36d0302047c435bb500663064023002fec98fb3045ebbbdf71de33c96d2a028f780e298fea6a7bcd591d80c6ffbea70693d00dece7c8ff1d49d355bb0729a023006d65a0a540634d4de9b90ed90214b268ea851d32c4633e523d0c68fdda6662c8d1f6b6692ff6fa3dbb6c4e9953677d00302047c435bb5006630640230794d15212f20756e9f365866c702100294675e9bd33b5a54bab1e535feb5d92bd78d8e543dfd728b431ce7ce7170985e0230795ed1de6847cf04de5224f753e5eaf85731d470d0ef0ec864a4c0c4edb10624328b25f2b5bab31a271749224bd81d9b0302047c435bb500663064023049e9a2a0c6cfb2b032bd14137386d6419cfc443799300f086661b189a78b8d2d27e568f31aa5cae524439cf579f27482023000a0c38ac55bb2140cbb5ef89ea82c7a345a93d14b4ca560f609b4eaca4dba3fba4b182d673a604bff24d3692edeab010302047c435bb500673065023100e87f152189b0e7bffe4ae1a914acf70ebfb486e9e07ed64b33be5a695ad42be2b3b423f4457633866704eaab71b797290230558b0c96773357811636371d2d4768601b01ca8df687645770002922e554cb46568e40ea2c4ef58493fc98218291d8d80302047c435bb500683066023100a7615b0e56348a24ee347fd06cf04e9fbc369c0f2cdf8866e68244e70838fd31f36b9a3b4c9b3f38ddf0c41e1d53015c023100ff5b257d51a2c84b54548aefad59ed4ecf2958ab41ddb55c331719e86945df74093ea76f51f6a69e2fe8797b39e18ce40302047c435bb500673065023100ad446e4d1589270bd2f3520acfbd820808857c35c54f75938ceeae3f61a39d43b18ffdb41b21a6570f9b1cf66d5eab8c02301c8b8ebf54e743f455ffddee09677934f18290e33b32615f85fad82bcb388557110a54a1f6c7a5ecfc5a46d89705e6ca0302047c435bb50066306402305b1eade43e605a6d4bfc330aa4cf44ba00384404a5bde419e6d3eb0b7595469aa585044ed711168f624e87516a0712f0023065621e587e28c32d36f1ddfde031ec5dfcdd3f61c874adccb030c5a1f237076b5afb49bb7b20108588fa0613665d4ee60302047c435bb500673065023048762486d52b0fe91018b79f23d9cd3e0078a4b0b7765041efbf025dd341904941d1f4931bae908f9a91ad0ce7dd5e7f023100cbc8f57c3098aef28b4996d2817e48f13811a1de36a91f0be32d209a4aaad2a3ddd572288155d19a6013108852406f9a0302047c435bb500683066023100a3442401e9c8c43c0193d6cd83eeeb93051346b0a2beede614827071493cde794eef4faf0d694791f60a511269aaa1d3023100b9d45a02051abd52716680fb88cc64dcb2e52e130e2f3499d299a92b377bea4501c1c9cdcd3e52a5f135a634c21d6bc20302047c435bb50067306502307334b6370d1ce118ee97d56c237daf7b3cb04c109acc7b20c24af9dc5affa02a96210af39baf884b01ef8fbb9c0578d4023100a381c3847d28e99ba47e8ee472efb764929c67ed1c5213f1e83d4dad4b77627a51f7139d06b223a282462487802b83460302047c435bb500673065023100a3b3b061ad601ffb2ffd1256460f7b1142078456648ac721501025d29fd5984f20cce222268e67b5c7960300f2733d7002307288047f55e63b2a3e48eb35ea9d4cafebc0f10b400b9a3fb3612862644d68dbf5425624f3fbe87a48d668aff24d10af0302047c435bb500673065023100e087c4229d0fd2c69d729b1a9a05f87030f4034e7ececc380812c243bd74efda3f2f1c859fd49d45a2f59f12eaa776a00230074c63c91e08002a4c51c1d7acf1d8fd0169ae71dc6ef349c1664b68fdea129f63b7ede8e3372fed50bdfa286e4ec1650302047c435bb500683066023100d1c18a5f0cccb85adfd045d847a9730496b9051182daa2403e53bb92c83d7bd73faa3c6419c5f2e85cd53602ecf67547023100c60e405d2fcaec8ad799f8b601b5e8f979fb629aad69212428b5187c7e14770ed945236d7cafd0e5bbc6628b0ad5c8960302047c435bb500683066023100e88093e054c0c92811c64067664c21d771e4bc2f880e1a5cf8c9e45ee7adfec98e5778fb869a8856d3b8fee9436d2a62023100882ac504833e35baf4aa44c7e1261fb902bceaf217a9553d5319c87d61a8371f0b6c991f5a6f0a979e4c50d67c5acae10302047c435bb5006630640230613250975002ad4fe86e3c9a474a11c87e2bfbb8f8e967c85b2368c975ffd910557700b568bf0e5c3c0e794128d4bdad023040f00353091cd8f810ab0c7018ed60662c42c49d2302d06dabded7dca376a40c7fb4bda34965082d3ac2c35842b69fc00302047c435bb50067306502310080128cea25daee97c16273602ff6dfea3eeecba9337ebae25c24b2bc236e6e0069d49e6bcc877f756527ff4e675a6b5102307edb239ccf53fd673c19f25cb5ea0d70d52ef7b9c310f85fc1e5ed548191513ca4b8b8d25ee9bed67b42ab42c16490480302047c435bb50067306502305e94c44e477bccdefa7dfed88fd84547ee5571fcab647b3e99458cf7dcfd5946c9c260a4570a8bacc64440bdbaaa5b4a023100e9b89f0b56db8c83bd776cf30aa2d3457d9a23393ae1cfbd2d97e9798b16d8a73f0542b86274933e8bf68e11790891490302047c435bb500683066023100943582c64893c328bc8d26f311cdb970f55e1478637bc06774375df9697711abae3d07b482fd4bf46578f5e65ea1a49e023100e6b5975e2adf380473b5ad8efcbf275c3e3ac6ea791a5aaf3816223b76e91b2dee8c06eaadcbbac4ce8df3cdc6fd42950302047c435bb500673065023100a3da81ee4ae978a2f36249cb6a3154da931c5fa3bfa275171d8ba6360bc8b453b2e6c9d632efc2801bc0be1e59ef791b02304eefaefcfb2f51d2fe02fb6f1a4b007a47bbe9ff2c62eeda5789ef66fb4628a7652dee1940e5f746df7ad2a6334272f40302047c435bb500673065023061f6e06d09bf43d8a8c431536c3931032a8a611a696dc3c5f06d27a89309fcb00ff6cf7f43454dfc4d4d934693afac4b02310084356d24baeee9023f58239dfc5aeb5e8785c30064962fe0507cfce20f85786b6da15a9858267ede2d865e1c421c61580302047c435bb5006730650230316bbcd8bd1a3c144af545e4705ce707739ef8a958b84257c64a8bcd643a45492d01b6a7f6dd90fa3dff063ac5bcaa3c023100af953f5c27e734597d82a847fcdfeba70490f7735fb7fce70b1107b210a3cc317dae6176267368ba3fa28edba15cb7710302047c435bb50068306602310092f453b3bcfc166e087dc79c6042dbbad92739866170bd27307537df0eeeafcf7918abc11e7617a0be9f10eab5547fe6023100f330a12dbf93e268bd40f214aa4e1684fd21f2cd4cbae7f4f36d4a8afb94991f856fcea2b1401f729ecdb761dc76ef4d0302047c435bb500683066023100b76e780c4b156a3c09b47929696e4fbd6929181241f66af007085dd51959b345be6c993512096f9ce8fb247989356f5d023100b8c133cb3323d44631f180002028d61df337900e8994ec467136f9199854d2de60d8e3278c668921fb59680583426cb50302047c435bb500673065023100ac7732c380623628da9fc8455422b1f7b1f577d466ce5f6f4abc904452423e813dfa6eefcbd4679f53252511ce9458c00230706216172639d666c959ce9fe8821537dff02649aa95930e12b813407de98fe0282625bdb2a485fb2778fe20176f62040302047c435bb50068306602310095d31134c32d8fbf14a86520971305436318cad9a09c191f9a61967d46ea99145c0c9ad4bda373d4045710207566fbf6023100b2acb86c1bc3083548fb1c2766d740b937bdec5b934ec1239431da49d326656f207518375d5da0aab8ddfa0be8863eb20302047c435bb50067306502303baf0035207cc336bb6b549f997f2ef4673f59b5fa72ce15992b68c1dea5e50c1d1319996c12819940fd67a82611f4af023100cfc20a2f323f3acd33659ce01a55c0e3c1aff0d4d93a515690dd3b09a86ca3f1e95c77710be01fa062bf0603a599e3af0302047c435bb500673065023100a099b7cdbc635d7b27f4b8f1e8bcdad7984ffd180f507f4b524ef4f1ae2189ee85f20abad25dfab3d82ade395b0e00960230505500217dc40296c38551b058413a09bd19f9e9727ea66b6cba5371d1d020f3dbeacf137c22efc6efe941ad7cc639f10302047c435bb500683066023100eb24a2d735e733543b0724e9362516847899fcb048be3b0e2e002b0e74698840e29c030381f702f3060ba48347e7cc40023100b76e4e0af771ffa66508af313ed00c85f12613945f42942ffa4326d0255aa55ec187dcd5c78bf3ef195baadced05d04f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306b60bb11baa6b4834a33b2118c824e53789a2be78c69e83d1fbf570c9abf5d7419a9fe1133aa9bc50c50834af26c524e0231008a2faacda5bc2c837d8ea7765e9d4bace41422fa479c32db687d6c37dbbe53372d4327fcf91061e06acc6c41567f4d2e0302047c435bb500663064023035f89f7dda9ae20c2d1a59c4427485ed556b4498825e155b7a9d84ac92c6e6526b6f87b986e3b337bb42a78d7bb79ca8023034c840d412bef6ddd6f1ea9327b405f8626556847fb879aa98a4e78298b27cab8bd8514e0bcf701abae29f495bed29d50302047c435bb50067306502302e560856524a5febbe184fc9bf9730bb0e07cd55ebbeaded411846c0404b8cd2b856bf48020c18fe6dc9b6dc4b62d3930231009c598fc6043489c7b75da091c3389d9cb43199f56f852b23124eb3a3ab79a480db60dc9c5228c4569dd01aec81918fab0302047c435bb5006730650231008d449c2fdc0d77c822defca5d9659eef1201d031ffbb6ed8a551daa4d6a1db3ec578a730ca25c7a2a263daeca7c29eea0230583c4ae3fc6ff0131e555a06802b4364f28423d891f89b00c9d8b5a3f0b6ffbc4afa9b677fd5f2f34116482b8414a2410302047c435bb50066306402301013ba7f2fc1823bb3bb46f85bb2d5bf5e5ceebdeb1251fc4d14942593fb1cbc420147e4a70663d50dc1b5e0b6497ee70230381621311eadea9345b07d016b68f9c9d76a8bb3c1e8e1a6ef7548d40482cf6bb7257b51f2dd76a9dd350d292b66ce180302047c435bb50066306402301e43e81d83c2320b08782f23c43c4218c6d0e27ec28134bdcc10a0e52b15eb7b28459f676c6b97a89c134f3fa95e46860230671abfe4ba356f204ffc7a93cfc6bfbed62f40dd101a4cbba394967d788659b43de22a73ceba6e105cc2bd79719b3caa0302047c435bb50068306602310091c54948aeba2a382e9cf6a385a64a3e3b20985e285c203004965550d171fdc21f1e4eb85f57db8f2be5fd477b9b132f023100b7fa58736df0aa7da099236b424b21fc4ec2d95c30f7cba80403ebe163869b55f634a3f8b348d61dc8cabbeb68415c030302047c435bb500683066023100f52248bf8107b4e7fffbfe864a445296d6474893a3dc9e54899e8fa9998ac2b5413a678ebb7e0bc0cf5e27b7c77645ad023100e88ec4a27895f5477fdf5c95f9e9a2a0a715a72f13f7b63f59895f2c7484fa51ad6208c51554a6f125acaf6476a0f89d0302047c435bb500673065023100a7620076b047ac8327d0556a835bcf9b2de2a0337f5907357ecac37095be8202103fd452105e9322b25b8ca3391e036d02305ea46d00ef22aaa1d5c1d12453efcaa8e7c4cea6aad8a7bc1bc2e521e153e215ca3f69bfe35d76d21b20e2b247cc85170302047c435bb500683066023100ae3ef4ad3a6b7b47733f3e71fef3f565895317b5cdd110fc5127f07f9c3e481c3743bba093f6ab0541890c6158fadd8a023100c623da36f2e78bd1da8076a369f8c26d67c23c55806db58f00be35ccfcb5aeafc571510b4d931a89562465a231cd065f0302047c435bb50066306402306695246bc8727d89e93797dde5aba8561777a507e3f84b38ed3e5d7900696f53a7bd9db2f2c96edc71ba8e4a3c1cf2fc02307b94f023e5d469bc01e505c3015370927bf9d8b0ee9b57bdb161d418d85747ba3b98e7d345670ff679812c0e64f31f190302047c435bb500683066023100939b04e0eef07f8bdc05e636b3b7df32aba0f5a819da190af952277ccb01d4020cf4ac8b6b95396e2bd8f01a742db61c023100aafba68603fb35f1d32a34460955663f74c2c1adf2f14ae621f703b9d9d929601aeffb31f6d76d3c7a5f0c723e5462740302047c435bb500683066023100e4d49c44859e15d9bca9760cceae72fd322c39f04ef1787a2c67d8f5b3c3de88fdfd2bf358183d6fd6305bc1f1da868d023100fd1ab0e7eac881310ab7b82ad3e2f1ece56335c0375f1b5a2da4794cf21542be524ed058a2fe65f382f120b25a102bd40302047c435bb500683066023100e66cef0cf88811daa4c5b28e5fde247892e04b1ab318bb958c28bbe3e080e4cf807c469a5c3a72ad7d94a80c1771ffa9023100c1bd6e84f208a65504599181e20a56a3a19aa9b34d8db37e637cba1cba9ec6a2c57bcaf385e89cab1929a814a602e9db0302047c435bb50067306502303c94a4c56959608ca438c7184cc60aad4780f1402031abb53e86ef38c68339e0897b227bb110f048776582f39a97cd940231008d5f13d9dd97a8112426fb80a871fc53c1d67e5a9d73b8e838e4ad9892465b6b3bba629d377e3588c04ba26c03f42b040302047c435bb500673065023100dbd24b4637bd16db620f6b30efcc4fb3cf301c1ad6c0edf6c53ab0796fde04152546efe19b57e168a7df72dd93406eeb0230410b5a19982ee9c4dc2788245ac83f56cad39924b00f0f14744aa26881871a743fe075542a4584b01d331efb95db69ac0302047c435bb500663064023057b891cfb147db90e1387392cbf0671102edc3bcc392b025b6dd2481e577007db51a5b73bad44f262074d989414fbec9023015a44a04318f17e18cf0898170dfd9e2571d8f5074188549030aed5d39884c5aebe6084c3d4cc6e131b65ce00dfe153d0302047c435bb500683066023100bb1b075aa69d23ecec23a7bcb64ebdc5b97e21179a33c4c04afb2169f1b443dbf4b4bede956f6c4817fd7ab32c1af55b0231008c68f5249e72d677e7a63ba853d55cc968c024e98daca072a2d50bc657fffa00137e26060c53ebdc7ff161c693b222bc0302047c435bb500673065023100e2d9ac185b8f84bca49d6949d53ffd946101e3e9bf3e127a983936095ed1318fb7d45d1605b04717d0f8d7e60d89d2cb02303fc93b264bab254888ed6ff5bbbc2883820e4144a3e2be2b6c1b65e2c0d35c7fbd1fe793614f31ad1b9ca3770ab85cb80302047c435bb50067306502302be50db96e2861384de7428ea605e73749af64dbdb962d468c44b8c1656a96cc9f04c782dcecda82fe8327f987d4f357023100fb27202ce388919fda1d22387fda9fa10bef269005665b883c47c0badc98f792fc733b2e0f21136d83b2c07d389bf59b0302047c435bb500683066023100fdd118102bc2ff487e809c89117e19401b4f071882e34b3be41463923b11212a5c6a75a73be3f00763db4086f36e675e023100a18d0e0e7ca119255527b1050b58d1d48c14020a4d175371c6c89dea0fdf3353136ca7be2e5a137be35fdc472271763b0302047c435bb50068306602310091afd795796ed70420f95cc46859c7fcfe52cb431e8ca548807f6a861e097625252f6d02137a91b3310b79707aa13809023100d499a354d71f2d3c7691c7bad98cab3a2a8974455f5aa72d1e3e5a1df404ceed2a3a86c5a4c125ea3cb37482e7ecef3f0302047c435bb500673065023044b2cd3193d7cc0692d74d713eddae03cee5cd9ef88da9f5fd2c3a6fc8ea2ba61a54f5c5c49542440551065bfb15e1d8023100e6c5a67f07a32f2e83e9417eaa052e96b96aa7f3e3ecf86707c50789b44d083c946d6cd313f50f96b49b570d1c4c51560302047c435bb500673065023100e620d06b2672e00bc9105ca3a2405ff1b9753f1aab15e7436180c10fcb5641342a022ce2ccf623ee5d9e08c67134374d0230699c62916710da13d37f4f568fbabe62a120692996a3996b4762aafa3e9c3cab26636aa82a7cc6c47768448b554cb50c0302047c435bb500673065023003e96cdbf38055ed2bfb1e793e13487cc90bd119313eebc437d09a29c80e05180417f4df939bebc0175007ae9aca3fb0023100e456ccac1bb2efd865e5b39306ea92a8e7ab9f2efbe3059266e0def8e47aef997ecc50c226bd5b56622b7e72c903e6bd0302047c435bb50067306502305ad3c340a3717ef69c321e9e3ea24f186c38ae863538b889d2d3c3b1d39149338feb12a84fbe4d39f312a235032def59023100a3111494470a419baf163ee8e7e5d8476d511942d1c9ec1e2320b4bbb70194ea4ce59e81afec14f8effd4ac49a63a0330302047c435bb50067306502304c22ce30e369b2bcd97a6a3191883ff06797a64ec468e06d4bfdb3a6972bb31467c2b365ac163d7532e89d50e61c718d023100d0c16c21d3dfd4e3c4e437dc0c7fd39f14989a963c4f5211854228109bd030f7a9e71b20157639882184f9cd4d9b6f110302047c435bb500673065023100c09c2f38b433e39a9e71d5b8e27543fa97ba3dbbe749e712adf92e9fdfcbaec268fc26b73cef07c5a8120c423e7b1c2002305ccaad4243b57c8db4bbefd4c028a3968eb2062d0bbf76695a1ac972ddd77a0acf354e0bcc13923603414b5216600ae50302047c435bb500683066023100c7c8148cb77be4980e3b25e530255d5f138ed5f7a52f24d86030f48f967ad0e40afdaba706a18b2c76123729a3257eba023100b82f9bfdfde79784ad6164e0e2306665da5fbe91d68f8e78c447f337900a3bec6a91a4f245199799988dd40b3fd672a70302047c435bb500673065023100fa024fe539f2635d98eaf18768b3450039e9508cd2f57a1b7d7de380232aa4baa714df6811685c05536305592b24333302305ae9641ec92b3fc6a056d4979507fcf72118e5daa848d74ad96712b3ff80a4e0957d851817b566ad6af6acf52538ae100302047c435bb500683066023100e8f9eb5724e55dbe3edcf4c8ad87eee8b7a4583e005f21926222f324bd594af42a412268151d90cec65868759250c89c023100e9bd0d53a6dc0c0632a0625d942083a12b76ffde9ad3445bd039a0b3aba6d2c90b74a41cf6d512539be8bfd377c588240302047c435bb500673065023058ae0b7d4951fe7a04b92e0908a810692300cedf8a8563e390d96baf02d53453b5bc6ab398025e32cbf9a41ab6083e55023100fb40b4611dfdbbdb0f7c3bb2bf51a00ffe22dacda8b71758b8b8a1ba68e2e04c8e36f0a3580a4d2c6bc2dcbf76e6bb2f0302047c435bb500683066023100d9c2e9944893f351cf966c4829da5a9d048a762b970feecb741507ee99e9abd05b6d72385e89b985f2da648acec13442023100b0e38ac53fec02bf29a84abab7e0564f1fddfd99230106b06739374908da8ddb7e56416319ba855a5c12f45488f259990302047c435bb500683066023100dfb2ee5536c657813120d95457e0540b70d88d1fc142d7057fd446946dcdc8b1e5ad0dbce861e99fa0e0cca02a23029a023100be1d069e4febf62b87cce763cb244cd5b18a85666e44f62f59a22843e0b3eeca9fba801c2ceca9780c718ce98e3a16120302047c435bb50067306502301bda6a464d08ade567186bebe9d7e47467bc5286fbc3246c863534ab3c950aa626a4e1dc26b4f758caa273d52b537226023100e77d25c8804ae0b9b0ccd00471f6ffb2976c847c8df975af0c1764e046376d574800f4b998d903c3b99e26303d12dcf70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fa8f452c7c62c0cf91ec7035c8ca6cad124ea3090a87381e4ee1460cc9235a42ff8269e5fa47fb3df56c6c60c1bde85c02307092c0cd3d35d957028cdb9ccc8da8f09cce23bfe9a093b84fedee8449dd6a7832afc3ed8e79e72c019aeac3b50439480302047c435bb500683066023100921deaff468221128381eaf0ddcda8ee4d601178f3a29b64daf91db7d807d1849143685034790b9d7e4f929024073606023100a1e7deae7331f48b40be873a5197727bf119f9fd34ecd5c55d88f41fa5c9be4f4c4620b6b782b9ee1ca884980329410b0302047c435bb500673065023100ba425a1c813452292e0b8df2c916a37e369e222ce22be95091cd98a57d31c576756968f53e8262c760f0d1e4fc826c0102300ecb356e350c78cedca27bcf80e929a9144baea02a1b8841a6422b869cce78ed30a8ed2eb63f9988a5df4d9bcd52755a0302047c435bb500653063023010e2fbf5f4e381f8ba11c1aaa8c70c0de3f300c68881552a7ede987d5870785f2a8b26579ee6aa828345e60df8381245022f4173f51312acd6cd80a2259773fcf4b2869eb283edba2d7e1132af8f10d7c9e90dfcf85ab59f8e4fe9a06bcb7c3e6f0302047c435bb50067306502302e1c93852c5339cfaa174fa2c15b846a2164809f131c5cc9192c3f21c290604e25aa8027c0c5b421ef1ea12460214aea023100ac38a180f96d1fa717d24aa79485dd9f2607e45e034e21b9519a4ecc00a5241759ee2fd7d880ec660ac165f6fd3f8e000302047c435bb50066306402300899f8140bb6b581bc20053ba4e7f10e0c0958920d9cb77fe2b1078211a9956e11262913af6b86beeb103f0fcf9ac94f0230382849fc51da9b718a030e11f2f360f7d8ec310d1a8f82c361e5c95b1d70dc1578be2411332658e3f88da56e1b7c65550302047c435bb500673065023015cf8a4ffd324a4d439a8028c12ce0c136609d41803e429402c3502403c7b3de593d897071df05af4873e16725faf386023100fba1b226c64a7cf43ca829a1c5e142ff7b6d7a0eecce5e633f55cdaa8a5f55f232600bab91f5d3e0ff3a98a140bb0a820302047c435bb500683066023100dac7c680653abe7e39a2cec591265f52cf4b91421c02a2e001834b1e2f8a34ff3c5aca2ca77509979f0bd5a083c70a12023100d20e1d988d97332208cd769aee7c458e95aab624d7c3164327d872b1461e216f19aeec3bddacee13dfbf0ca5d06b6b6b0302047c435bb5006630640230031a250341dcb4650e3a720c35fd51c7adf17919f8ea5182d3abfa75d201d040e5c6ff312f1b7a8519857ab1bcc8e31c02300169f9baa308caf3fa1e574189fa91f9af71145a5eb7aeabafffee7643e4db245b77af9caceb75385ee96f3ac45eab3a0302047c435bb500683066023100eb7e9e1c611f50f2c7f35a6e26f3f80c21e01a2f1713b5807913b6ad866cf283cb4c498ef6f6fd359e2dc9339531dc840231008d33ce30f8f892839a833d1838c16f14c0821d31f9c48252279fbb5eaff60fb70ff6dc97ebb2bebcd27c5a1dd32263730302047c435bb5006630640230259a30f76436d773857c9b7757b067b298b50353a45d76e2f351bfe41fc59f77bb6770839fecc2e9ad674bc1d3dd9998023016cb2d5f494710022c7da31a82d9dafc37a875dae8a49d6ea878fc246003cf8feac49c3e6f0ed7386e79db110e169e570302047c435bb50067306502307fd0b52ed7c49a5c0d3279fc35540f94dd07b3d8d4fbb1787ae51980c54741f75fed186ed923d99b17d1c48f45c8cb170231008b8a412c1caac126818585ac2481109b024bcbbfb801f9105dc0a8a8407c075d4a3b6ffe27b1cca986c631d550d931ba0302047c435bb500683066023100f8d498c448579371f4a1251c3b7522e012673e31432b626f338b02834f722cc0e707462afd55ff3f10c0a0b77ec7f163023100ffd9040363885f9bfd771924c08065180c31d346902fbd73d319bed46c05f9d78008d96618f235585ee586c86dcd45e90302047c435bb5006830660231008d388004db0327ea7c53afb1e916efb3014b59e1c2c40deacef7b22dd2ead41d4ebed89b041fb46e196a77367dee99c2023100a91fae80953b7c7c54a14808727d59317bd0a974f225dc9a1a8de67ce15952549f0e2111e0637d4d877146ed736942f20302047c435bb500683066023100ed171d0c5cfffba6e7bd8e215079e1140997493402a2702e0514e056832c8911922ff45d1cf3d76bc9146442e756e6ea023100c842a13afc3dfead85f709c3fbf0b06d59cf8e59d22824db6414d50f398a8e4f9df4a07d9972ef9c9bc9162a912929bc0302047c435bb500683066023100d9ddd9fe820684e1d6f602cc639b22da186fba472eb0774802268f918ef3c63475b569ea1ff0daf48ec3af05c24e3437023100890d03e4dc4bb22c9d4a1c37f47be306887c7ed0c5825c8e687dfc66573890aebb8ea4c277cd7e7cb95ae59680e338950302047c435bb50066306402302f248240b21c154f94ea69fb05e820bab83ae83e68aebf65aea6dd724880e2acb3275a12e9b6dfff73c65f252c5869e102304f016130a7dd7999a137c51f30da905215de067817524f95fddb1a2205e9c3013f5a422b85888c79bca60d4b29a796f20302047c435bb50068306602310086f8d2d7ac2d7898ad20242e52bb59dea15edaceb65a5b8fe4ee1dc19006555d649ae30f37bab84b80edc09e5f6e4fac0231008c0f6bb05b50ef7b60008eab7ac1b87beaf2f5819e5cc0c6e6aeb1f2719e2a3d45820c81a43b01e9e2852860be3d4e4c0302047c435bb5006630640230139fcd48cde831b91804820c24f48b2140845ccaf4800f4fb69cd7f572aa721235fc3d2aa9488179731afec3be250a350230693bd8547d56a4c455d0e6379ff00ec2a92ef3b2036d8b72bd6409cc4c293293b485ee361a414e1bf01f6b0bd201b8c80302047c435bb500683066023100c43bb4247f0b7ed07a1c64ade2eeb3ec778c6a16db159b6fe3dce68c14a6db43b5e7c7ef5be31f73650862c9714272c70231009eb43d53200df8f41b5a6c3fa027bd482dd0e6c65257f876a367424befdb24b2ea81568131f2e61d49578577d54082440302047c435bb50066306402304469c49f2503d91270d1e1e55a80f7df8f754a721dd4f7d748e4a9c151a2e104475ced3d9cd9b39cc50c63aeee3c048202300ba46251fa36160911180877b3cad50a8092057e69af5fab42da3043f07999266ab88e2a819947ab29f45a81c60e10ea0302047c435bb50066306402302cc99a47af4ade58741860f4522f41cc01787d5bd0821a31951e1afb039164d03e71cbcf541f53c55153ec8fff2685cb0230159327bc7a0e6e8b17a15071e3fc7b7809dd1b921be2cf3007d8faedfdb97c83258bbdea0990586efbee785031d1c72f0302047c435bb500683066023100c57cea3be5beef6339866a56ae90f133985332b38371e1977463d293877433246c0b3d1928821ed9f1b2aebb5c3aacb90231009ed6eee05d375ff65ffca6e930b33b9fe21d106053396267fcaa994707fd9c26f80f7525bde12eb635ac85a351b109b50302047c435bb500673065023100bdbcf7bdec1daae36cb670aa78da3301e480dcabd546f80e50892c7452836f408f39507ba904b334ce9c85c5d5bcba030230111067c7e1e822ca280258e9e8e8b5413dd4e26be561e869506d38e23f4cc4f8b4abebfdb0852eaeb1fbd7bdb4c69a7e0302047c435bb5006830660231008db384399b53881552e50c73104481b97481993b6a4249433adaa3e8311859978b0a9ce0e0d5ebca1f7c2f2fe6dc62ab023100deadd14291a3eec54807e9eecc91cfe602a6d0b89a87d23fbbaca9090f0d57b0e4f87711cf8f85788211064392989ff10302047c435bb500683066023100fde07d51a885ede932b8c94e66fdf8f64afb582d9b06d76db84b8d120d442d70e460074bb2a5e487e33b243fd2c2f826023100bfa145bc482d0134a5f15e37c021a25ccffd88bce07e60c494c850ab3e3c02005fcc88406c11c82b0fc300ea49b828b50302047c435bb50068306602310089b788ab739e1c8f8a609356baaa796d4d26290935624460173e17cc17cd7c1f74a701a9bdf155a1cb4c953107e5b886023100a5b8aaf13ef2f7df968099990975c617b2724d80822ea4b246a6b32ff107ae0d520372e0e66cf9bac1bf60f056e56ca40302047c435bb50067306502310097b0f4859df2376e5e9bd6f32d8f918f56a6e892bad387f6f99439109ee85cacfc8406bdd83baced5954d992f739fe92023006d851340236a958ef0a6edf0a622aa5df73c8193b223aecdab30c51aaf088c78e399b34d177b7584abffec2c336a5170302047c435bb50066306402300663f50bd23c89a660610541714e5f884c028e59298aaaa1d19bf507086f50c6299ed52121c23852a8a574fde35df0c702303e6d02c453da44e2a0ceea01cfc2d00f9674cec6b295f1b0208138321fb8f4ff9203fd0a057c7a9f637f7640d14c0e9d0302047c435bb500673065023032946d6be4a37fc4f84fcd69fc27181a98feb3c162585f2dfba90cc3652c86eaebe27f643b6d39511275157f71c281da023100fe76841a4ab4d7f9277258a635cd964c43c7e5785d85b7f465945111660e76303ca3040268b3dc41873a309d39ea613b0302047c435bb500673065023100e5203b6d89d5af3890f525d1953cf80dd09e61948d1df8d057f36b2e655abcc7cebc46866aac34b9fe605ce26cbbdd280230544c056514ad9151db8f3b90ed894b53824e8fb422117719ba85ba791b3b347c8384f8d1713fa5f09b2bfbeb7a75d4df0302047c435bb500663064023006e039818093520c3824850854ffd82c58ce0753f8e3dd5b77902ab4f40f1c3d274f6c91304b9329f975c6a8881bc2b502302dc46424fb8b6d8ce3fe2773bd6ff7600c7a25460b6c3f67e9d13e2bb1e8b3b60b7e2b5306d671559b29a0b3f5934c660302047c435bb500673065023100b4adc028e569d940811dd9ba19e302b18b1ec2eab71042d6e13a865b0d46edab378d3a2594a500538d298bb976f6b0c202306d09737828a099d39ba10d01034716657844a6fe2f70bb9543a92bc64efac51603de11f61730bae98a11aa649777159b0302047c435bb50067306502310086bbb061838d4ac9caa6ac7784ae58a38259be5c35d501bf044562a356d2edc033ff080d9b092b64804ffbd0da0af66902300356507ec295579ee976acd5dc5e778166f14e406be0399c5107b3b8462b50d9fc94f52b95b8cb5681fe5030e238e7a80302047c435bb500673065023100ad3b5f3f7985ed2d8363794dd400a00e0a408bcc042484aca7df1b8ebf40b9da4f026b3692802f26f0d60c9c0d9cc47102300288ef1f42f1755eae15b2ebd0e70022bc85d782bc54bddc555142d35fdbd9bec282877a506ab5889c1a007739b3daf90302047c435bb500683066023100db57f89ce3e40cd02b0e81dbcf6f796bc4d503bbac58bc97bb030c1700a92e4add839df77ffd8afdbed0eb095ae867b6023100d84116825197948654e52565a2c0ae8c8a31c449cedbfd820ca14dc9cf78058d6210d74317bf5928cd5e2263798e93430302047c435bb50066306402305190be77c4e5178f9fa4016f5711e72483f6c15bd6b587e851dd8342405dbfc9e4236c72fb65fdb442a7d8ab8d1fd6eb02305945130a48dea696c260dd350e8ce702e02115d0605115c65eed1d672cc1ba00d2b34140d16b641e895b34e9b7690b680302047c435bb500673065023100cf8bd8d070361f9adf6312e0441193f549718655d2b593633d5b5125afb005684cadea220f5830649060a02d30380f1b02302a742c44b8b1e1a9d29c48a691224529e16ce168bb248f36db270ca5c4f2c4eb3089bbf977445aa075ba9e6fabbbb6210302047c435bb5006830660231009eaca3e1bcf88b47e1a6be0faddb80486e0836c587d6033797e4faeadbb77149b8aec3e3426a58e91cb90857f0c87a6e023100f678b30ebbaa54510763d6d597058a957e4ccc0e1a483805913f3e96a2a719213a11664c526749844b7d419b0886a25e0302047c435bb500683066023100c8a91c9132d5687b8ce1df427af05afb21ffd03d198257f86303a8b43956e3a6570f42d689c037e195d4afc407175b04023100dbd9e2a91335f66728443a5fb831026b12597b2b643f23c5e296ea1f7039a4b8339ca41c00b936fc2179ed8dbc2fa7390302047c435bb5006830660231008013880f09661c3750d08664549478500708dd3754be5984baa263c3788dfa18b6d0840a3913ae61ce702b14ace11f99023100e3ab0deef2d2817842cc846f390436b26176b61125176f6e6170cbfc259ea58a7aecd83625c3166c99cfffe9b162a1a80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023010be0ee165b0614a7b5014fe51a4f978077349d101eed7daa37494795679eabef719eed9b750aa82110c35ccd7fb114b023100a6181e3b3d0d40b1f5c02e72b97ed6ea7a9740e4d113603b9ca075b053a2f2e190c2161ed59be9b46109714d6273861f0302047c435bb50067306502307d9946d42f1fdb2cbd31095f97a757ed4b482f6973193d93203b3bb696fc59b383a58a7231efd4a190ea6afc95d93c3102310082a6b6a7b1d4529994fcfc092143a31395790b7d9fa31b6755286d8769c509ba365318e1622293f1947039a2d42fe2560302047c435bb500673065023039a9ba3bf93906a6b4c60f5cfc0009c400c6cd666107acb9373ceaf6e4dcc9c405dcd9baf7bdff4341f19e7579dd0ba5023100b69293ac4625960d3d3fc4ceb5421bc1c21b35805dc57743a7855ed4426ab6ae230ac2c2936da7869985741a236bbf100302047c435bb500673065023100b4130755f914b530ce189f655975fa065d1421457fae5ee9ce78ce1feb3753809117e39ada04a38427bed7d9483406040230140841519f36f46b7fe495c4af4ef74cd6fa8830b45520e8324e8f6108a5e32eab7896cbcd2bc564d5f20fe0c676bbe20302047c435bb500683066023100b1b40d3522a94de1b8607420e1d9bbc569db562c032b4088d9248bc39be918f3bbb733f529b5a6a5d3cb434f6c227a5c023100a799e672161c485c680da594f613d46eca5c8fbe5a92aa8a72283ef4020619bb5d77329a4ba743158a1b7aa619282dbd0302047c435bb50068306602310083a61b027c17cfb61443015cc637331aaa7270c4699424109ad55c4f5798425634b635fda2b79ea316f1cf7feed80358023100f8b6a03356275be15b3ea270dab1a2fc06e6dcb811268d9d080ae42a763a5abf082b0d27c259a43143b0aba2d9df29830302047c435bb50066306402302186dece381d173f053e2c18902dc576bf45736cee9fc22a619ec44088ddd601977c12295ca1412519fa096c572435e602306356865ffed012bbb755e4c42268a23462ad63e6030a908cec97d54f9de7688b7fe09dc00d407ec9f761ea26776a84860302047c435bb50066306402303940bd6d2ae730f572409e45ce6deba3fc67563613b470f9bc7d2c70b0bb49ce93159d82049420b764ad5ace9a4276b402304764061f88865bb6ea652c96f871f328ea544b5b790cf2ae9b2e534b84de76b495730a767c4989f9b381911e015d4aed0302047c435bb500663064023040601c83a011ad1c67e27ae8500406c07dba55fd434129f0e2b96a3240b10a7dca51c68766a948410f699728464d657c02301919f25511dd2b714cf14af703cd9fc0edfa03b9b306316011447f5f9c41964c7adc2cf184f2b6807877f511b79e97280302047c435bb50067306502303b4c9e3ae455ebb76fd009bd37705162cb57902b933d2c3527e3eca6c055286c7bf28e767820f882769e1231eeb979670231009c0f0253da78e329eaff00e530c842e03242f46976f78f2f4c5a1dc39838731981f5a9a0d7ecfc5891556320c2df32e00302047c435bb50067306502302fe9fe494245a93dd74cb61b316ba4f2598bcaddb7add7baa4132a25f13f3421fb2e42dfe2caf925374631633f170032023100c0292f0083fb8c32bb0c4f5b54894c44fdb3eed7867773b981d88ac1e88b962aa98e47ffa89ff1ed6798f07ba6f116da0302047c435bb500683066023100e407af28bac85739b1e3acb1aea38b1b172325af7d3701ff2ae4cb74a2e28a8217b70414fdf57475b23e440bf47a49560231009a6cd8087d1cc48d3e11bdcff3ac0a634f58676c0726cdc5c8ea2f74555d4fdf04cddfab41226f078eaaced4720707d90302047c435bb500673065023100f7df1230451f8183e9c6a5f652418dc85ea4f23e6c6f9b7c3c8eb49d8ae26039da33b1bb348855d8a014b6a74fccd98b0230431365f4d2867d6e87eb34ac84a3ace69c28065888188347de37af47329c7410802657c8e2f2c2e82d9aa2fa320c1fbd0302047c435bb5006630640230162aa9c1690c7852c759b70ed77545c1161261b92e2642519921487e704de527f0f6ce9b25156c329ff83b9618eff90402301eb46e56c058ec7e9baff1bcfa8c39fb9ff0d8ac355b2c203e6856c1f36661e6c148e416231f9e0dd28d862456ebc11f0302047c435bb500683066023100b07d020947adcf715e1b9764b50a9b61b3534025fa83cc2ef31962d1c6e5a1beb87814b75c26e761b35fa3e16e785c30023100e3a6a1aae62153630751a3592609b35700aaf725bc7598c2c9fb4a66991e1079783911bb8931e493e40af2529d744cfd0302047c435bb50066306402304829e99da88a292afcd111230548e1f30aa9742487f45d20c510b04da3a69d1197886641bcaf31f0e742d1110cf37ad302306a4b3f92df50416d6c29b9120dac05d75f163f87604b92f204f2ec6ff4a122eea4a05af97d0663af0adac320a06aa2f70302047c435bb50066306402305c54432970018a57d80ec030db7cd96777589e837bd45b4cdc991580591f590ab1a1afad740e73d3b7248e6ce0a0f02b02307ed818446cbe5034399e7cd91bafc6c7dfddda6b7074e9285f2d39127d9b93607d4571a40824503ec456d2a62ca0a65e0302047c435bb50067306502301703969f6ffe562079c7bb922ef7f1f75dee0fd23da3034766ade50dabb734c13dcbcbf9301633c5454353692a20cac70231008a2d7b5f34981fef8d8df79162b1714ec705eefeed294b015be9fa2bb1d9f54137f264f6ffc2dff47bd757fd6a0701630302047c435bb500683066023100ba15ca397966df94e92e5b03d580ae59270c9ae0c6a19d5ad9ff12995e07fabe010c6f4678dbf0db9c7b23258ced794a023100896170f05824eb353ab524ebb8c72d4eb3b7ae2981dd783982e84771fb921ef3331875ad233983674c373b9cbf3c8f7e0302047c435bb500673065023011a45540f54a531e9966401a0b6e7be699302f901c6a17c4aa90650aeff5979912037405ba0e1400ce7cd56e1df827cb023100d168aeb02bf78e959e5e4ab841b03d7580bb40a051ca99762a9d292048e48db8aa28b003cc9ce7cb2714caa5edd68eb40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f3b3159e765762fbfd33bf86562922111a5150b3800570c9ec473a516428041564e1fac37c2bf4ef32d7f51bc3d34b5b0230644a9e6cd78e3a9fb1e5b2927e8ddefba4f598c5f5906830f170d11b9027fa703533bb461843688c2f0ce40539f32adf0302047c435bb500673065023100813e3b5d476f9feedc4986d98ddcd1bf0bd0c8abb51fb8253e3adc43d4d625f8408087c7e23707c20ab19166662b787c023000eafe5494b3fbd41153e619bd7bd9f64d634b9452cb93bc55c81093a7b53c55059972b957a24e9fdecf5b82eb4a9e910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023039cba126ba0ad5f659d31ede7552b7f6334ab8292a0f8e593f8264043e601148558909cc0687fb04aa1cb0fe97d3d5c1023100a1bd7e608339f4d23539e6b81f7455dddf19dee5bf260914110697739de016e2e8f105353d95d74232beeaf24bc084590302047c435bb50067306502302d076309450f2fd2841f529c59772131e93fe13aecb331663e93d9ed7b2c92ea7a60e913b4b3f329285fa687cfafe247023100e0f18f2f2a3fc2c84fc058d8f61982e5f1322a64ad0d92f8312bfa93efcbe7f2dc5e26cea2d5e01a3f8d2b3dd92678d20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230548bcb30e39da601e2a87466c76de8a4ddab916c66c98bdbf826193e41874fac58209f6d61db9c1de1a9001ae2d26ea8023013a9eada5e1a1c1bec389779f22ebc1e1d693461e3971b71e41953e5400370d660d5f64d15960c2358d827e69a91bda70302047c435bb50066306402307fa502982317390adb55fe832c60af765a6fcabb5d28364f1b6471aa1517ea13b3ea05106007e7f5a2e935ab02607d7102301e0db2aaac196fc2cce30970c960f700e5233e2bdf98a1e1cf057c8f6866b240962f545e48baf6fd370efcad825e2ddb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307e3bb330351d4ac5989c5da53acb598efe655cd510dec86e1fd6abc32c35d52725c508a4308ee0e4b6a75147d997a5f102302625b6dec1d85a3cc113eae1a4fbb11a7677e132b90a1557021840f5351f4101d50a668b43cf2173bb355e7ea842acad0302047c435bb50066306402306b319dbed7de023c76310351c92b6ae5610a9ff6a289f0c4b2ed09da020827e60881c055810e5e7229f18ffb0df3a8650230021df1364ad74c82527eb89a28f2aecdb5882c4c15d42d25c6bee3983ff7965081f730e26489d3a1350f73949c4ed1840302047c435bb5006830660231008790925f905a5bb7497370bf3b89453d6d0fb9a95967ea7ded8c975fc24b374ad8673b68922a107ec8ec9848ea9b099c023100ef77a1ae6ae18abb135fbf89c5b641035e689e3fe6660592e7c010003c173f1ed02fba59d6d51ed2e79bafee4a05bb250302047c435bb500683066023100a4cc243100b411e6a27d47893255aeed36fda864dbc7f9ad66fec403423862cd22db16d934af3c0cc056f31d09855c4a0231009a57db2407a76ae30582d9abe8fb6333224b06fc5b3cdb455ba25c0ccb8bd3c19bc8587e47d2bd88c9b3d2084d5f67910302047c435bb500673065023100aafcb6f396604ed13a0435960bc3b3741a3014f1b1ce1452dad69f1018eaa31b440052830de5550c1f5eb46f6cf98592023038c71c17e6590da719bb40d0397961480b2730f66a3bd380f721a29917572e550db352428a475748d413bdcbc08180cb0302047c435bb5006630640230208890d5f46dcae9ac1b3669d77a24a92e1c43a677ff6007ad3f8af58fbe2b6f2f9bad567a5a88b13cd4d608a7fdcadd02304ba545e8c632cc694b974a116f1da67719dec693aa8942f231b8b6873e8f4841c079606ee91cc73c722d66462075b7350302047c435bb500663064023041c681aae8f04819928327d81ab82322bef93bddf5a34b1057bb3d4bb41a1d95b2ac277a5429a7d0e2a8c469b8173a1d023047ba62ff7cb0451387ddc0cdb37d446f6c0ca63265b90edbb699e80b6225d6af57af8e78e2bca853005ec18f6b0b1a5f0302047c435bb500673065023075aa95dc835b2983ee2ada8afc618cea679bf58693c4cf5d44b9d38619a494583d6a60adf74141082ffe4d06e70edf810231009d1382c9b122b2365d0485423caa684ba504d15dd4bfc264c264442d1e048ff604ac4f2ae982346bdb16845361c6c2070302047c435bb5006630640230673d2032fb048ba2c7fe72afbaf7300d83101fbc6aa1de0972a190e1d989761ae91473a904f1608225e87d6d090bbb5902302d7e0882a2a481e9a26946c4c1fa8c7bd4ce4508cc22012e38c02fd49531255cb0064f06ed2a0efd6cb09226bc9b87d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023060fd8db3fce45c7fa534f4763b02e3e9e2a76fea4d8d9a2281804932562826366d3bc016cb15af16dff8561ed69337df02310084bc0fc31258e883d747f32458c5c417a3f832728ff0cbd8bac8db6cdd3e4eb12f5ffef3204e6fec23c27da9c58ad4300302047c435bb50066306402303f472f876f6052e55edf7812bdf12520938f37c04a090f403fdb330af9b4eefd8b9ea812a8f1209d7131881197eee4c7023025e77daba2d3de52239b1d386ff5805d18ed607007c7cb2599fd9f13a58a796d14f1d5d371fa532d39e87b5cfa7580870302047c435bb500673065023100e354fe77a293f4e036d569438a2983fce110c933112382948fbbf44ab8a5f2c64424ffea6d9905e703c088a3ebec9edc023064c1530d74f9e1f3c5743ed3320e371082406bfb5539183b2d6df480fd9766292b332278b120e5b6f0b6bbc680e22fd10302047c435bb50067306502302df2b4b9468b867334be12f04fae055eb94d50855a9c1c6c26920436eb3a99de5058c0a28a30bf609cf7f10a63e8c533023100f8aad28dc7c387ed2b166e0f38cd2f1e2734590d60534f8e9a6da55bafb1ee6634ecb878bcb04673d6a145dff9db214d0302047c435bb500673065023100de0f7fa4a4477018a3ac5cae9693d431b4f0afdc8f4d5e0c04d3077401fe052b737e48c69743e63476776490b4d3f3a702304360c5466572db52849a3cd4c781f44527f6b87481ff1dd047142b8f207fdcdd1ef138535cd99f9e100f331eb261504a0302047c435bb5006830660231009846e05b3edfd8b70a49399e5a7d89c13d91128227063950f4013261ff5b35c6f0497e2b0d0ff086aff3c7cd0e8ed74e023100df984763dcfe5a20204a4533fb28fb21f338bf3750d90075d8fb86a0db1273c28a6245e21aefdceabea750ff583e35040302047c435bb5006730650231009131903bd73ae4dd74568a8b1a353eb3ec089dc509c09aeb26ae4e4bdab69696d2a15878fa3513b43c39a6490be5e50a02301a1b22ac6d09a3f86613d5735eadd55df7a4ea5d2dbc62c4922f67e9651d5af74852c6e0f2a423470151993535fec5bc0302047c435bb5006630640230634728af00771ff3ce522ebb33fbb0d8572b4da6ba3f59b656488cd4fa07d10c011f64db83f1a110e6056071c8793de80230102bc59808de453a68791f881ccdb7a879127949959f29f6617220322269acdcae3b8bf1d31a1ae7327468ea2b5b8c2e0302047c435bb5006630640230138525dcdb240a744eacb9f68bbb2bfd88cc8eb9923601db5390f50b7d95d1c716a4ee0c723d9d83fa0c17adfea4b0b20230771c9637f1988674abd014c781fe10b2d1f97d1a9838b8d554de4b4b709a70941220e7c51d5ab2d539ef748ff3b1c58e0302047c435bb50067306502300994fb16607063efaba8ac44d0202195fbc40b3cb4b075f95fa80fbed27fd115849d04dc903dd7c27fe85dcea32aa778023100869f0e78076c036984b08be49f1f8acb52e85d496ffe3c2959372be8d3d00cbaaf63ef35e2f035c8d4999edb908d279a0302047c435bb50066306402302801f277ec65b78414bb6e32fb61cef465c33b383d6799f38515a7c43f3676ac1e6a214d208d23fc1161727005a47f0302307cae40d619b64a5559d77f323a6123bef19db1b4f545b62049ccca487c44a42a06624d95563022c1ba6e5ea9b8980b020302047c435bb50067306502304e40cef12599e3aad7e1870b2f42d8beafef09b14a78703d3d1aaf6ac4e004aa3d51f5b418b24fc7ebabb71b5921d80f023100aaf6b687063d3916764123c79038a3e3cc0bb269cd205d66f00304a0b3d757bfcb3c72a3a19901b761091ec12da95c3d0302047c435bb50067306502307e15031b5c11931c9367db46fef36a591e0eddb33f13271acd7d13c460f1901d885c216bfe585ba219ca2568bf35a993023100c11d7afbe90187c3f99e50df0d1a76ddf3fbdba04ad80782ee98ea00f49c53fa51a0b9973b8f5d09123cc2c97ea26ba70302047c435bb500673065023100c18ee6f7953d19a01658b7bb8ba33ed2ba2b2245814d8a7fc8d908271f9cdf0190d0d5d1e4ad543fc9b39d379a1684290230080d7f301c4db621299e2ac783332c32df03aa8e2b349f761bd2d1e89901fa92a5056fae36c78427504141b21efaf78f0302047c435bb500683066023100bef9973fc4c2e07b428297f40b518b1975aca3610d44c2eb50510974cad06fc5926d9d73c8c10b47621498496831fbc5023100e0aabc45aa67fc59012564c8ec3add609d2b4186dc8f5afbddcaa007622f072b30c19dcadeb943cf547313e058b387740302047c435bb50067306502310098ea38250141774b9e4a04849f4177ecd9169c24e463afb8fa01c4b629c290b951986148c44bcd388b3e99a0aa36e4d9023071503792be152453eff3cfca9dd09f5ec2b901b20d9347e21d1e3dd0f0d6890c4eabd6dd4f762b60610fa4dba43804e70302047c435bb500673065023100ee501f245c2639a897b7ddc2ac835fdb847b1c485e49ce6632b0754bdcfce3922a116a2089db4669a76ba61d6e15116202302327664f92817ec83d5bf27a390600581682c818c7ca2f31adce4738a2f16e0ae1f208f640f159f3135a0e88a09a870d0302047c435bb500683066023100f4bdf209eb9b467b1d7ab44a562ea68b1e19d3255d5414274b8f2db5e953fd4c20a770372f6480de2d27bd23973ebe42023100baf9c5f365852dc8ef8bb931558eb0677cae2549f06d2b675da25eae96d8a294d50b64362cbdda53d095f9e92f82470f0302047c435bb5006630640230193f79ceb9562e58e8333ce06dfe5718860468dbcdc1393bec60fea974bdf7ddf949f24f34f87d81a0dd8a55d226742e0230756269df5b32a6f0abfde32cb8a3037e0fd194d0502ab8bc2d18c54dc64a3f55872ec7d49a108a226536877855473bce0302047c435bb500673065023039837ac70fd88beb3b5b28041cd14ea68fb3c0a9837ae641b97c320fe6aca19f88ae2a78b78c40d59eb97c7c3f33420c023100e3b412ae37384907e75207104df1fc8856e1d2c1670dcf3cae1f543ca158f242b38e0d781e87642953df6b3bb9ce32b60302047c435bb50067306502302e2cb75a0085b37663975b92f7c0814857cea46d4e41085f23019fb800d171e56f21492ca07bc7da236dd9e2ce8cf5a8023100ea35011362c1a9b6a5d77eb3350923c07903d5ecc815b7d222788bb3d4143410c448b8a50ff31f053d90f2004063dc860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100867b95430bbde2b1d54abbcf0793feed9c76e42038761c0694510d3e47ce276ae3fa7892e340d625763f9fb44d167a5c0230773485b44abf2724ff8c00fb7fce251260a188f1de5dbbb95ef2662f1db3cbdbe33631f30fd5b83d8e8eeabb8e66cb320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f308fd913d729509e8c8946a7aaef26660e16683f7ea5d613a6dbf8c0b27c2855c58baac7fa56595b6a7e36612581235023100b8d5419b05acb542da4748ee526ebe64ff15789e8234fd056d34e1f3290b352eb5fca57b824183aaf26e0d90e08abcdc0302047c435bb500683066023100b6f55d5d33f82083701ba90f46a2961b696e371fd7a0393417961aeb5ed4eabeb696fdc798cfe4701768e949b62d3f85023100ba1d69ab4cc13c709e40149d0dde7a5e909b6900f1baff6db553ccfc3a7377d6127270d444f003a16da5bb1c4dacd16e0302047c435bb50067306502300442a11f69bf48e402f871edb4f36a085cbd14889c657b7b610ab1e1e4ed6c084a2937b6d02d5aad0d42d27c2da57984023100ba0398883bb0cb2f036dc25b63302339f0124cf7de70489685a0abdd19991976a967e9292c29d97ff0ca01bc4aa521ed0302047c435bb500673065023100de55b2dd815f137ecbec567ab7c849a831f8ce5dcc137d97179f788140d683aff495577d239dfa76ff85459e8ecfd75c0230639b107e242d060eabf57cf992aca5edd3d1a5fecfa87495973717e021ea3f74d4d0fc99380f17a7b095f8381dac7ebd0302047c435bb500673065023100e88d9dc4f3245d19239a10c44b864368fc8444f053c28f0fdfef6d006dde300c67302d8eb6b6fbf26b396019c72d2abc0230463f9e1e436c10ebb13e59c2df5bfbca48767875233900e33761b93fa66e27d95cdc035c3fc948c7192d65eedaa5b6310302047c435bb50067306502307cccecbbbfe973279a0a6cab24a96ced2e035462e5af8efd273358faf6661231ef6409f94e26af84919d48656ae534ba023100978e7413389b7adba4d15aa40ac7589656d5b4268344419e2f6aab1bd27ed0775ddb145621f5f061c3ead1f3ad261a830302047c435bb500673065023001d016bba237d5584f08426b8e297dcd8fc95645c058bc22fe8ad3b24f56224f8db7e310d788512c0d9ffae365e40403023100aa813bbb1fa648e343dcee363a0eda17c7543a3209e8e2fa6fd44c8efa4f27a87994455592dd29f04762b40e2cc0c9a00302047c435bb500673065023100c69f827f03682214409227c187e2ff44a18d20dc5f5c66364c64323aba2903b2e40b6888aac5e49d8d12b8f96e75f5d402300877568ebe54b0755748c52079be7524080d696db1f179d09a4c2f0f36c1e313683ff548d293d4e945f8667ce2d62b200302047c435bb500683066023100cdacbdc7370c39841342b8e53a14faae1448c859300a3f65fed297a073fd9bdfe676badb9480aa09dafd916643e4f8bd02310098717c73f6bb292e573b63096f1e5021cc476baf1968fb55ca92ec5d295f1812a8d26429710b669df680ae72f3c873b80302047c435bb5006630640230393c6e9651fb21d411c8b7916ef87ba51eeba0989e72c958d7c289bd58457462ccf7704ca494dbbe9bec68fd73fa9cfa02306b37c688dbeef9cda64d31f66a224b6c932fde224cd88e590d015f14225287fc840da6600164c8d81b1aedf3a18537320302047c435bb50067306502304280bec7c1695acd0002dc5e4e667dc90435e5b6833a3fbd892119ac52d5096783d3c8272c325075308e6bfc2e42e51b023100eed3134368e0f85c080a399d7e82c69fbd61949b655e9c3af7079df0b4497d3897fcffe0b85425a2c9ba6391cc93ce930302047c435bb50067306502304d5fc6225c2c3e1de84ae1d88cdf38b5cc9c1058484f1d82ff4e924bd185f932b6bff94c667be5748c844c67052743f00231009ae5993014311018a202963978341d06c11809908f0e1bbd400b138eb7478c4c7048fa5cee5993a2663c99953173f6d60302047c435bb50066306402305cc0806875b19cc5ed6af35390f6ab04b8570b0201ee168dc753d9b616bb87a6c256ad65729896e1099b14ec356f040102302d7cd5b71cdb6695470c58d81280c15560c0d25296eb329dd3f34408989e219928b23173a7a3310a484928d4ffb169940302047c435bb500683066023100ac966f48faaef04b86d04fb666fd61a19b68805ce9a948b871ac44d9129233ed95a125e8d05aa1fd1b5d32861eea25a9023100f21bd18fd62c544c1a188d45f59da5209c7320d77c7fbbe1dcfcc05e415de0071c2c45edea50576b2d35a8c75e963c970302047c435bb500673065023100c54ceee9008175a4d2b603b6ba171a6f3be6ae999b317b2823223efb8e8995dfd71a83b420b00ac8f60a3d2b5a00fd20023022e247e2b451b5cc0dcc6907a4b7873833cb270481df7c6267e73b0824c5dfe1d8aaedbff8df5bc7bb3ceae0a457c7120302047c435bb500683066023100a4877016441465acc9bbd4ce305c6855c2ef9a3b699e01446af5c3ebe9d7508510f71f75520f80b8311c869c06e68fda023100afe858c3b14ac7e1c7dc49f6b6a99fd0f12eb2825f19bd6cd39ae7b78286a922930135eaed501d885208da6f75e01f140302047c435bb50066306402302b71a6c6a9d5408c999d5f9f04a00ffada5cd2b3b985d84da18f6f7a943205a054aec96f0f3c94b0fa28c7f9a2bcf17402301da0ce61a9c1bdce692900c2421e269e55287b35888c2fd5574d627735d427e788746fe0a22dd46d071b73a27ae90c660302047c435bb50066306402307bbc98f25b0236b9714112c05bb436fe7e48af289c0e0a350e513c55fb73fcdc9e111a94f6da1c52d4632abe75c8d915023078f3b2e64b82843daf7ca1a476926c98e705407c65571fa36f53f48934881d84bd6e11160057502e05fdbaa6340602630302047c435bb500663064023015ee78e114be0b8a77cd7ae2f8e654ae3bae7a8f423e95b2ed9e1bc0552290aa5e3eb6a63b5b0d378b0e5528fd484e730230422d322280ba24988bbb33275f304cca47e0af96c98b73a455897f76c8a04bb5777832408cf8bfa8b778496c4a23a4140302047c435bb500683066023100fea0f665d94e88817518d6a87d134eaf8b2b980038fd68721d9b30ed9c454cf296107be35a25a46800c9b9d9e860119602310088d73c9e67cf4b33ad5adb8151714b38b7d8f4cafcace905dab274bf456c73446157d3420ca6b812efedd50545dc04c70302047c435bb50066306402300e9127a4c1eacc78eea1574993230ce578340c5955057dd10f5335c63114fd1d41625a378418f0779ed8a422057e1c9c02300b61e3b7826b8716b08c2549da156e4d5a66ca89bc8e0a2fb154406312ee36ca3617a0952ac2427233fc8e14fb6a51710302047c435bb500683066023100e880f8b523fe2894be2e2a634a8a81ef7a38bd040aa612dfeeee81b1210a1d88f337e42ddbf64dc4c2a57c8cdb557f98023100f57c4825dd0a0d861ac5c6f28487d54c746df699c9e96562fbee184aef7939bb4b6943fd3a9fff7f0c91d27404f5f2230302047c435bb500673065023100d9337c0fad1be428d096e5d39edc5400c2048a3e901b34e2d8041f4fec58a91dffc4c98e567028d1bf60fc7daddecc5c0230062c1ac7954e49495404424046d3d74922853f8c78b312e9d75d62b6177d62a3adf398384f09ba802fa95a91389df3d20302047c435bb500683066023100c7ef42fb572ac41c52ae62ead5459aad3cf6cd388d8e2398ee473210459d2a852f65b54be47637b40fbede65a35a474b0231009be1493dd7a4ff6dc21f34961ab13ab1bd1ffe6d1a03ab2b6364bba3dc18bbaea5f3e6d657a3e2353deb088adb6832290302047c435bb50066306402304110bed24e24dbcb6b64edfb44fcf8556de28dabae4ec87c24365ea8450d017dd42a4b9df06cd446bb411f12da16ca3e023058389249185dab45d99add02dc2d87b7913cefd814a5883b5ff804a330e387d864a22a3f0e5c6d369faae390968cba7c0302047c435bb50067306502304b12f90e19dc680a2d403472e2e8b16b17452c451c858a33fcc1c806430208ce7f39f47c41ec987db6ac7bb431f16868023100fd69a6bdf1fd175326cfa85f019b5bf1c463c5934f6cf352065f3de51df093843dd75641c912009809473cc8bdabec350302047c435bb5006830660231009a38e47e7845144323094b543e7db2a606bcc5aace09fcfbd7d23b3fc93b7bf5aa4b8cef5d6c0c77843d945fe6332c0902310097847c05621caa390be71e68e4e998760699aaa82b192a8351c0b8a5af522439a347af5c94b566aa27f352e9381e3cc10302047c435bb500673065023100dc6739d51f1b4435f3b02a5b889bce8b08667e6a9a99ef1e6652fa833c1bc61e301c7079c1a5f5dc041649fe64052cdf02307d015f2b3045859ab769ece813f62af84e835d55bec05013991a047084937b0e1efc2cf454be24a4db48f100053f55320302047c435bb50067306502307719975096278d1bfb4c221ec216ed5365a84aa1e52531110c9cd1cdfd8293af5d63a71a36428c9b1ded50d5c7901367023100e86285304da77280dc963dd802b351c78d8da0223eaffecd2e44f35590aeb64d1ecd6f645bf67f17d86a0b48692d1bfc0302047c435bb5006730650230715edbb5f8340e4727efaecf5d78c86f0b5bd0e15b15081840602068b05f57d3b7f0162e0ed364e8653cd097b77f167c023100860e7774224d49504d66b45f7111dc3e554aef63697d473bb11eb84965abbe3740a911b64cb8a0391c69cb1dbb299d200302047c435bb50066306402305076e7878af49736838119a9f91f45d7d7d3fa05913b11c472ac93a769352cd547e40b159cbb921ec527a001a98682990230656f4219211a384abc94385b962bedb5b83c50e7403d264d5bca6d73a3c4ed979e77eb447ed88194955999cef7db8b3a0302047c435bb5006830660231009bb586e17e196fd55f72c6659e9d41b0f0b3fea616eb726ba60f25c108549183c24ed75fae08532f046807a4eb2b0329023100f215e944c537ff20b02bd58823c3d5ba7d1d50476dee814daaf3146fb96a1fa3b28ec21f4b65cac363339b0c71c570e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303d6cacd4f896bd1ab6f309a74882f20f84dbcfa20ee838478165e4430d1bcb189376ff138a634cad51bf6ef979eba006023018d9a967f4a63e2cdae1011c6a07fa17ca16fd49b6055f177f05a872bd6453e86b72ba67e80c2300bea8c96913d969520302047c435bb50067306502307c4cb9416e51d0500999d1de2229ff88f35d757f10ac4be93f5b61734532928981f884f5708d87dac156c5897f863157023100d5f64ec8cebd0eac5e2e4f7fdc056a532c8569e526005582e396b6983c42c301226f374aedd432ee5dddc7dadf347d5a0302047c435bb5006630640230443f4097ccb6e7502bfe3b330afb9bbac28cd2fbb4e23a6bbaef2d286f54635eaffd31cd65437285ea96a7bcb8c42bc302300f9e32ffd3a71ae981e565a865108c985b56810e45a93159cf2f023d2792d1e4e09e98fe5a67bff2eedf21a854564dd40302047c435bb50067306502300fe3703aed39989d808d9c8091fb6573fc6dde593004cb68cad942685ede02736cad99d79bf416b824660f77c7c7aa0b0231009eaeed824cbbd8a62905146c2d65fd906b7a7eb86cc80f5be6cbfab767c9b66e8fd9376fe43cde1af011efd336fff7bc0302047c435bb500683066023100ec98c3d586787fb35706f859d15dd1c9b1d6ce2e9964ed18e851e71f7832a50daddf58a55c9295fe1c2774d80af8fdde023100c17e29b36ed71d01447790351188a87d82bcfb6ff026201572e0200f6e0149d7714d0954f50ed9185eb3e96bd3907c430302047c435bb500683066023100b9651753a47f7df354d0bb23f7a1d9a3a508f6adb535db5d1386a29931270a87206356239e44d26dcd8af8e8ff60b484023100df859a2b51f57e63e77bf02ea857531d5b8b263fd4aba5404474ecf569a7657973dcfc202331598bcb28538a59fa56540302047c435bb5006830660231009dfd91ef9466ee074d96b4d88c6ad30698f6101af51ec539e7c5a1bec549764b4c156cfcccc4266e409b4d7ae4da6411023100f05b4986f4ea78f63bf9c5d3e1efad11f29abf135231a708bb896e004eceb3f9da2c3c0163bf7366b26fa4b372e693c00302047c435bb50067306502310082275d2b70d2a8acb782b62d7cefacddd568da8d883a449a12c14fc78ac25563b285f650e407859cf4972779feac37a5023000b645a014f29c63beb785304af6d60ed5210629a28662a53360a3fbe47dccae5f1667bf67bcf526dfe285e96b00d0b60302047c435bb500683066023100904f7ed56f2171ff038febc1ff652be590e4ba6c25369eac5d7d6387ddcbce28c11475531fcfec9d81ac6fa231c76a04023100a1f8aed976a7b430998adbb4d2b7862a733b8dbfcf8616809b4e48506fac6acdc64205d6bf995da9888c3b9d81e556630302047c435bb5006730650231009399f0468809d78460e2528107f9022e92b943b1f46db06f5c8b05591c3f60af487ab8856454cf5bf0fb1ff5746447eb02303e590f35eede9b1f856dd4fc9b9aa1ed4d1a5599b52e5142b98eaa0edfd9f74b4316182174c9e4372bfbd1467d2975060302047c435bb500663064023049603f753f03135dded845bc97d5ce6ba26fa1fdb9c9587dd07eb646fe94d36eb152f307de51a7ba9f549ba9496e47b102304c16aecee2919ec8ccf6b8ea829597c07bcaf2dd50c01e716ec18cb26f6fbd52fcf01ac454a146ad3a0255c729ab8e7b0302047c435bb500683066023100aadfc6ad6f3509a67db5fe051bb8050739e205c986886078a9bdeac6f953226080bec5cceff4e6f784b39a7aa80ea04b023100c9c52023b29d1a64a57508377a3cabcd52c540cfedd2ec67e94ef921ed31782c1232d21e6d9b88f0bfd799156a22ae380302047c435bb50067306502306fd5b07e51e23e9f966d37868e3e7fa7b0b879513b672efef64fdf687c40c88d8681e564012579195f0be1ebd721d400023100882903b7255a2881ee2e55ea3d4d73bb8468cc9ee298d9c2dd283b48010b0091cf67596fceaea497070c2d5805740ee70302047c435bb500673065023100efbf0ac688c675adff887748f7ad98f8834c777029f4f248ecb233f9d1ce2074942b51396eabc914aa40a0c6bc68290d0230748a1d81e848e46239b7b167a2670c36f8bac423ca5f9562a3e24df75a845fea17ca98f699003496d1745c20db2e098b0302047c435bb50067306502310099c7e48dbb86d4791f664ddfa6604bee13402504c511b487a6e592b3444f26b56820a9e5e34ec7d96e38cc563344c92002300abf503349edecef604a5e06f1033fbd60e928179230092410238a0a92cd74239eb60ef5692e50537e0c6187c1abcd500302047c435bb50067306502305351d96a9e923b6443469f7e0fbd929844bc9eb9df1be502f72d900d642729693eb3465dcfe5c9f3eca8819d2445a4ce0231008230acb09a36c4fc3d9283bc449954592efbacf40e7e6fb1f81ba21b053bf60cc270cdef58353bcfc6e47b7f67fe548d0302047c435bb500673065023020a562f4b983c6a89b78779bf4de91c8dd693d9346418a4686101477c44bc38e2462942cdf59cb1ce05bf55634507b76023100ec67905287afb943b51eaa4a707c5c36d6eedb7f9ab9ee28996f1ab858a9c46daa96e67ce73f5fc710bdc9a225fe95b50302047c435bb5006730650230262550d69cbccb3abc212e4df27644d971021a00c43ad92fb6bf2b4364b0ba318caec7dbb8afdc36b215ae6925211f81023100ab1a07b2f1bc609f35e172a8fdb6eeb191e9b1e7dc27acccbb90846f6b6bfa326e02d6501844d6580890447a39a1b2730302047c435bb50066306402305dd425b9c64185601717197e37a8d0fe732bc56b3632e7217c349adc1f838fdd48612773d6f6f62efb87d1991f9dd43902300acd60aaaabf12f87e7623f713d756f779d2022474328f561e6edced8804f63fcbbe88697e031c035a65c19d7c00224c0302047c435bb500673065023100eb26b0de9e80d2ef5b7a15209c17568c7a2a00110a13d02b0ff72f5677760b90cc84fa5075fc22dd5004960c987d746b023005c1da2405aab26dc6eb4d278cd0e5a12961d836088d0f5424e5d6f5b3b4590610ab4a65f58026aaa55b1b78c7d175140302047c435bb5006630640230361486aabc597b5103b06895262ed801c6eb531915bc73cf1ee55866bbd25faf0f41cb9321676f160259f5fc8710c194023054ce95f61584f2d97cff14a62589ce7de7f821aef00fbde206126890680a5198fb7ac967147df1bcb802dedb49a047590302047c435bb50066306402301ae1364677e72aecf37e1b030fd27e77ed28a3df9cbca05a751a5dd4868200f917af4dbe4ff4debfbd0e19158839376e02302e750b9cf75e88e7c8b5db46686657bb1a8ad8d483554c6538edfa817bc1fa21ae716675faa61ff96efa0e49e4693bdd0302047c435bb50067306502310080977eb344abdda1f70da8c2e66d1be77ad04bb2232bcefcba3573a4247c1b2d8040bb29802ff7be3797e69b125dd69102305f7c76bf7d80516eb5d65aeba94ab6d7ec18387523260964852697f59a0a51af3dbc130f6c9dcf691d9cb071503b57fc0302047c435bb500673065023100da07fda2e4345d924e1ee08d663ad9d454639a9ad46c5df0fdfb7c87c83c92f4dbef78aff6e306c46b8269d98287f62a023052298773e120506d3143fbf1fb0ea89bffcb9c237b7ead214555352856cad73472da5feabeb87e7ecf2c97c4078272730302047c435bb500683066023100bfb1d0ff76c97f1911752a1f376175c9a7f015e16a1a6ec1fcea9dab5f515234c523d2d58860aefd7886e894bd0d2e7a023100d6aa63458c26bd2cda20ecf90856b97a0ecff4e02b689394b153905cc9524f147bfc36dde92752c09474255b8bbd3e390302047c435bb500673065023100b3ba0a980ba9e6c1174a34747ff3941fda1c366359a772db8696b429bfbd49f06d7d4a6ef3546af9a172c09173e5a3de02301c03a939ca780a4556328b43574d4b9095effa1fb91925a028e5028eb6995ca3e7bbd5c2b5454c76ee1d403bae5e62950302047c435bb500673065023014435a3a1c981490096f793472f74ddda1039b99b2d49a92fc28c1ca82ec8290b3398983829315ed74ca26ef2dc87218023100dd91e81fb5805146a494673735e111e0b0e1a9c71f2e312e1b4cab96e21e572864e5bb1c286c8e21851286a577e42b560302047c435bb500673065023100eaeefe3d1b17331aa17c021f3be3df42d2f0b6c4f21c823575f00426475754f6abe939f964b13c7486891566cb8f119c023022b88bb784503875aadd97e92579ae2ee64db2dcc8fc7be8fc32eae89cba64fccf6d12c9dd4da338c45cd20acaefff0a0302047c435bb500683066023100d48d34366c6e92e91adade1dc2062f1c1a7a7c11eda9678ab3d9a440d9687cce211e92ee07964fc19f17dfa4d9cf1ecc023100d518eb189a4f3eca668b34bb4a3a2bcb5a0a746bfaeb65c7507304ac34e219d48ee86f680af29778f12320f7c7a9ff200302047c435bb50066306402304c83bf909bb571d5c4c4b564499cd2db0ca287f59bc5ffe18e38c8040bf39c80d72748c8140f0c6f75860db2c7ffaca6023068f26d7bc92d3f1c98e2f325177bbb98f49e52391711d149979161b121867c3564070e797d6cf55ba09a4d9b2f4632fc0302047c435bb500683066023100c8d644f77e571fc4fe75c8f87da387ad181ad86747593796ce0c6935979dc6131365c81e0a36de29e3583408f8fba44a0231008b415591dcb8688ed40716a0eaf319bdc40d585fbfc55e036a5d0a02687fe295a095ae1fb27ecb065ae15ee5cb7f62930302047c435bb50066306402304ad1df4b5366a67ce0c2e236fc3906788c5b4e9f247bb4484de2eba52432f22fe1386745097eaee213b1e58ea2f79199023051e8504941ae69e0d5b4273fcd6c9b672ca40f97327ffa1c13a4e2bf8cecbf7adc2c1767c3294c6d1d30a98e1c62f83b0302047c435bb500673065023012f6d575a4bb17ad8e10e5f2e4a78bee6c87138eb6c2d021290e2bf86571df1763708f50ba7b97f56357908ce42c465e023100d44c1d88f1237d738bcb54acb504c73df82469ea1a53d5fe6cc7921537be29b9701c8254d9acb2b490139d821411160b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e9d60dbf6a6b5e43acc39692393e51d218e3ace374c0b70855b341c7f8e6c43e583b0c131a366d87e2d847985036892023020be7e59a858cd43060144e13e0016a596d601885b52e5e9b8c1e19768748282e52d2de5ca1cdf580063a2752c78563c0302047c435bb500673065023011d2b1a71c074c1dcc642bbddcf66eccb4530b540c6a341b0ebe3b57ebbce0f93f89c9524ed01fa5542f818bb673fc42023100cc7a171d67c89b1f4adef58290f486dd35253ffb31f1d857fb1dc31dbfaa2843ce83682d5223055bffca23713fd770f30302047c435bb500673065023100ce1a67c06bec9232040dcef30bffed2e0e7aaef571efeb02cbc3bca5b842db34fddcd0bfa4b6ecacef581af24c980ad60230693218ea9037b24b337e7d7870c8b2aabcfa409adf20af7ac8e393027c8f9c810ba0a13a356986de8d732a8067ecad5b0302047c435bb500673065023036612699fca09a8ee2f8cc0d852059ab8ecbc483e497940ccb77eed5fe8b5d8182ce895704ea023b847a1d382ff28602023100f3a35807348c692d15365eadbcba44ca61a430141a8f979c312ef45cdbabf3531f0de330642425c101ac8d52d2a646fe0302047c435bb5006730650231009aa0f97e65c84c40932d620922583dfa6f7cdef126165274677bf09e86e36b7f7862ba42d738e54ee0edc04f4705599b02302cd9190038e3f7cdc88b3f8d37c76f52641417d71f1e5673dde1b63c4db2531534a228badd5284b97a99f0e7184ca03e0302047c435bb5006830660231009994f78d8aa3e57a9e3057f86c82e34f3ce20eba0f690b435c3bf445689723c868c3c03951e9ac92e6b31a3cc624ed6a02310088ab8033b1bb358470ea468372a0e20358df9f781fb7e09e763acd5207d654d429278860215c6dbff1f19e71896ca0640302047c435bb50066306402300cf13098f108a65f2889b4396e2322b6c07f7f1a50939daaf416962641aec24879dc3efa357f801db9bc03fe3a603e8002306a5db2cf1ef4c650dddf38b774ec257c3b21bdce453bb293e375456b365213772339956f6eb76d2faec059c1d7e9320f0302047c435bb5006730650230712e777b7e9f5b4e13df6fa8fc69c3cc338241a8ca46a629614816c7336aa1eae8a9a3d415f1bbb26b4f4be7bf4f936202310081ccecba312e387a841883e04b1abf83db7b8b1ef07d0c0a6161149c33e8440a1578275c7e124c2fc295e5dd264c78810302047c435bb500683066023100d899322a5dae92d0875bde35f4078058ba11ddfd4c04caf05d2605d7898577b4ab5c2a0247adfa84c44c8101440f6ac50231008a93edc7fa3b2fad79c21b89db4f9d9c10315934629ad12b80f7c6765e036971ae5572becfe5b7ebbe342bc0f7684db00302047c435bb5006630640230517335a7d8e338044429736abe3023d98c6d5ebefde27970f1b96b9aefd47998f9a3f01b5b68ba111a10f4d53b30e3e6023012ba15a603d42e4073692b1b6aa9c757308a32d204b2f54365357dbd6398dcc8373206c0613254ec8db07a0917c100780302047c435bb50066306402302aea5b7dc7b784b2b48e5aaa309c934bf1ea053a602028e68973eb7043c10ff10680fe6693693a33c740d0ca21fa45db023064fd13e37587317063dbc2e383190bb4c4d6339c3d8f732cbc62556160c3440c3a36254d71c5304615ee0863e9539e9f0302047c435bb50067306502310085b6e27d4323ece0c2ae753fae6b01ad9e7e8088045273c99200e54a1c20e14281502f017792049bbdce9c7aa5486e8e0230436f7a4f6589fefe0835306fdfc711366b04aa43958c1b777a216caea0399d0d9df15e1e0b2a1a4976fc926cb8bf6f340302047c435bb50066306402302d41eb3ef4c0a0196f21825e80cf6570b295d546a7339172a0c003a419d7b982b60facd9abcf1dd2b219d6f883b71240023052b544133744ba9d5cd224b68d6fda5a3788106cbc2053c6abdfd7ffd815df6a6d952dcd8e08ee54492face6a84e19110302047c435bb500673065023100c17ed6432fb75367f5c8dbf60a08cb49b1c8226ed7aff905ac65ee2323976b3806469e5e3c6b90f7090322edf685a204023003bbdbe5a5d6d4cb92d04d8b3a2e6d8155a4336edca54a738ad35af8f6d7ad7e75313e5bd1e2b9dfcc5c889b03d51f1b0302047c435bb5006730650230578e954c38345d3a1c804978012314d9a3b7b19a8b37850a07a9b378df163d38aca8e72c73395a11405c9ad3aa808e3f023100e9e7a84fb4d458dbe228b88163e20234538d711d097484384b290d30eb95aba04708ce0369409979844936b5b0a14c3e0302047c435bb5006630640230768f849cd31cf6e5c99b7fe8f69e63064dd7a1656806672d70c5e157aa0e81044d36080a6728ce58d8429b9b5281babf02303317e3f3dd36bc9d97843301256be49705d87bdb0503920a88709c9223508d0a39da20302d227f818bf6cc15c2a71c1d0302047c435bb50067306502304e7df6f5ac8395f901b637d831db1b44c26ae69a5df018d16aaf22117b0597c34ae8886df9190f230ec31c94e435a1ab023100de128fae39646cf937a98cc892778b306e9c1a70925ae8903cba7cd05311bdc7121499debfae26acf3218c5834fe06ea0302047c435bb50067306502304474d6f8d04b277487d0220fdadd190c8a8dad5fc88df15a29db18ca2ec57f6906d69595649c4ec257fe88142da315ba0231009e3d28105727cc8dc5f56eab5092b7f385ffeaf96035ef6db6a7d2c58980aa583f235b42bfe8b36b2a73f5cfb10d78850302047c435bb500683066023100e4ba1207ca9fdd66f49e9b4550466bbef291ed45ce32680c8502cf88d776d505d9ecba26e3458f535f21b29d06c0117b023100805c1104cc0ef38f20b0690793af18b8186a30b231c94bdb3621cf736f5b400febd1082e8eaebf53a346e932655973800302047c435bb500673065023030b3205fd406bb9742c29eadabec32b7b5e0074b938b3490fcea34b56f9e50241cc7da18a5458537171715e2aae857c3023100bfe8a59bc185f33b4ea299347985a4b6bbd606434dd5b3e87dfab572c6e308c25383f442be931180627d49067c8de26b0302047c435bb50068306602310085695565d935fb1ad10780a67b16ec525e391f3ca520715a4ac766871e8236714274a7cc77711fff45ef6ee203edfe140231008ed1bda487c3a254406dd0c304bb0a7bd9f78b1eeb728943740d0ff7209e12cd6ba638016c104a307270dbc8607c2fa00302047c435bb5006730650231009d4f0027657d696ffef472c753bf343984292ba1ae7edd750962e8fd6c2566bb94c5e475b935b830a52b5236d988a58802306b0e958a0f25d6827180e300dfaea3e413b16c9779e42298be677176cda33c3f2e6a6e825767434d3acdce03c9d8d4b30302047c435bb50067306502303dc531a76763f6a82f400d8bbee3e4c44311cd0e546eebd8ad5cdf225da4dc9a6d41acd1dc9036da59becf34fc0c358c02310086a35143b1668461075f48e5dc2af70c89024a20d0947b000269aeac3cf657479b239c1d9d8671f19943a76c2e5a52420302047c435bb50066306402301597146d8984ac09221f4558ef8a68bcc1ef0435ef2349849e342ca6d51782ace76ea9859871327280a8d8c16f461697023062f4d99ccfb8ed7ed79944ba346bb7c1d8984ffe7c8a46db3d32ff897ed735211889ae57479b40d69fad4e29418f643a0302047c435bb500673065023100a9f85fa42a772c98554a8ed79a8192e24f13a681574c6048bcaf233be472f457d15f9804023825acd74849244e155902023047e294f61a82e1c7929af5d83edd266c328f043d54769d83061fa2a1eb143473b5b27e3895ea5edb8f863de4c1e93b430302047c435bb5006830660231009eeffe1ece46abbf44fbdd8970452f0f8044c63ff87507803adecdd57aac5ac70dbeb618bfbbce4c44b35139db3862d5023100de0222e0e5bcc159df1b5651c3091cb411f10e2b88a35238ab96c19d859d49b55d6ca2747dd4f6be45bdb6aab303d58d0302047c435bb500663064023064a108c2511e42a5fd6f537f877a8728387578b9e3bbfac64ea2f42807c7f0c4884e64947010c26f399c76a5a7ddd8d30230299214eac924b7300bad6b65f33bc1233214e7d51b6f598b014a532e537465e42322c66bf2520f728b3f5c5f1af04b1f0302047c435bb500673065023100abc3e8295f6aac45c91d4d92a1b16c8fa3d9c629d8432d7697be092dbc9e5d0ece0fb7d561e22ec8ea97a4021a2e0b3a02306c4ad44f9d4127c68802efb14e1f63a6fdd9ab327778b34b173a1bf0b12027d7a0fe320be155bb8aca9d1cf3b49824b30302047c435bb500663064023020208b08cefa774bc5837ad6b177e363b05a0c75d7050f05f60aab0d5525dfbf4d1a6b2649b45568eca06384377bdd320230281944e6058afbe69cda238623d2913a74e465178f528226999e25d5b3c55c84839e39380dab8f73676bdafc0927e6b80302047c435bb5006730650231008386e039fd15b8e5586686a915dc1294a9d3ca6edef6f8adf3c0303b77b7007923e70833898e74133e0995e3052e874b02301debe06394485ec7cdbad1892eb66b00fee47f18ef09ca91601fd9a77c65172969843e048123637c0942dd329e0fa6ea0302047c435bb500673065023100bc7b7692e78f638b7e55888403973058ae06d8ba879359dd0f5378639ec6371953c14ba5f41b7fbc509fc95796c6e7d80230103895c8823be225a4b136be67a80adf71214f9ad9dafb7b2e532436940473025883dbc016b71a2b10c286ba23d327080302047c435bb50067306502310086fee496ad33281ca48f3f7f22a1ed3bd3663cdd0c377a54f4beaec07a42ee51b1c8eb4e3389774a03dd26436658ccb502300fbfa66dcb83703fd2002d005bdca7a4a8be337946c52877daa010d88d3247961689af563f59b9ba16a34bef807cad420302047c435bb500663064023028071867aaf8962fd536b3d45e120a9626ae42401134ea6f2de5721399cdb1cd68178fa62de41d4010012cad10967d1902307eede17653200c15f3f6e321490fab69cd96a367b2566632df3af04fc6a70960a8f1458244a63b9dc8824f14d1df11870302047c435bb50067306502305167f0ca92dbd698cb5e0424372fbfa1d23771cd3ed4a440b4dd03de2b38704ea9b3b7f13f0e7ff87f45a5e7e72f5af3023100e84b28b042d25e525c26e858d172bf397c35d7b37a0960087ea5379dc1ad8bb4ddc0a0bd0e52e807b2f094907f42ca840302047c435bb500683066023100ad88cbdf9535bc993c3d547f2c4fe7ddc19ab0fdd9a76edab9a1c4c8ff2d3c24425a2bb147105b2894dbc1ca798dd885023100d36ce3335a581d493fbf190e171f0bda283ec4cc32fff0b0b1c4827d8f61b37e89f2824d83a447448692733bd47538020302047c435bb500683066023100a8ee133fc1e16a99e4f1faed985378a01cd15fc2d3f8ec094ef343af5d1f00afdc393d74e5db42e575e6ae8755a914020231009936ee6e17f224f9f46a3443be1ff9a59cf6ea8a34e90f3251236e7aee80e408bdefa0fd8059a4a20597bd8e1c8fcfaa0302047c435bb500673065023100f1d218f3a5949dc8548a47c28159388812035c790ac32d6ef6f26ea6b82097b05bef3273f61dea7d06d12c623cab153a023027bb6252b5b4fcc9a835bba077b0706375b2cf7ce39c2491dff9b2d464b7debde01887f43dd252c17aee9e14730595ef0302047c435bb500673065023100fb932514d96428192e890f707e3852794cd6486fa7314e7594d56beb3bc588a6c23f226978bdc47d079d5d6a1c6a54fa0230125868a7e4c308300fb780102af4da3f829df8328ca54f1a24fce37fc99777cb2ab2df2b22ce341ee30b79c920b39b0e0302047c435bb500683066023100c248fbc1d685f6a90fd16d4c051228e09b572cdaa7b4957c15a2b23ca396c037dba05bf1fca73566b57ea7f616ba491c023100cdff5f2aba019ccc38b49bb756b49aa50996be5aa33f6eaa11e31521049cb5673c505d3dcb3717fdcf4e3c95401f8e9d0302047c435bb500683066023100c2c7bfdbdd139ffa6d28491e431e20b319e741eef14dede79b4f7b7f459f2ae656e9fd3d03bb2594e228f6687497db82023100b1ccc16a0172e22f89e55dc1069637859c6b86f00a0377e48678144619e8bfc5c6ba3baccc7a2d14379b9e9ee57957270302047c435bb500683066023100c9dc4e7d3ac46b3ba6aa0a55fe7f050f2d09a6e4ed487ab63a648ce43d40d9d489c3a24c2e73c6ae55d6f3b7c2b7267c0231009dd34c899dfbcea38baf3661105a5da74816071493dd01e96e510029448fef04f6bb4cad5263a172cedb23f103f4b8380302047c435bb500663064023054475460e400fca9660b52fcd3e0db4fcf19dd0b75438ffcba057c24bd18af81fd9317b9bc403099d123388a296fe98702301adf8f52a1e3e673f822554790ae74429265b73ccc593b026d10a04647ba2987701abbf311eb17ff6d3175bff63510970302047c435bb50067306502305b3611bb73f16222748e74bfc9d4785a7ea0209421855dddf6f76e32a5286d7d93b0b7f51c1cd257082c22a5f242b8320231008f8731ece51c15bbb1c48b003eb2b467fd1264d85480e776632801c604be375d38e138e1802ccf786a8690172cefcae80302047c435bb500663064023019610dff5ab15ee5c88437f6402ec43afd7fa60bec45377c6108d5fc4848a6167aee41d919ab099a9d07ed2bab9eaed102303a11377aa6b706f9e28707f4a06db009dd1e1bbb61fca8e5efafe7d5c5d4202c7350351650536aa1d88da5fe5b3658920302047c435bb500683066023100ccf7c488b9343b972280e3ff3efbcefe875401ee9303bd165c4168dac1dad66279f069051b6b8fecfbd82c979d4c1d51023100b325502db3d227299e9d9e05cd9b34e101e354acf37d3e7cf35ad2fa5212a8bdd1cec3793aacdcea534c8ad845e63adb0302047c435bb50067306502307b409b03e2f5c2676da47adc85676b21f32ac1df22130f675d72e0a2562ce234dc344bd7d2291ddd1a6df41be0b93cd6023100aebacd6615d7ba1bc977b536932ceb1f03c465ba7c1fbc9bae6bb2dc2b85b6cf1928cc0b9bd19e232db139ee839abddd0302047c435bb500683066023100f7709569699902d1f09cb246340bf338adc27bccadfdb73ce1088d4c99af9cf73bdf90f04931738b62f7dafb87be0d3b023100da10379a39fcb9fde46478fc94878e6d348b7b06f0186b9192910734bd683b6c1db242492a1c63fdcd8876eb79655c250302047c435bb50066306402304a94e3847e2605df1f063845008a5bbc2bf1bb4e6e961028cca539ef7f8a12967f80db3879772ea5440fca19501828960230225efe628213a6c3997d35a2e4c779fabe7710f2fffb80366072eb52c490d980c40a12b3fe239a7f24f23c6205a0c32f0302047c435bb500673065023100ea097e8b4d8e90d05116f85750633189bf5600cc9f59a1ce3e0e7e15589b051f7287e191121f6a846656b50c42fe14db02300e07ca926de21d8c51fbb25ef878c2c98a779d29e5ab726eb61bd514e341a22767f68cfe4a3b041c1edae82fa2d953380302047c435bb5006830660231009b966225f6f45b1772fb7d9d85bc1ec821a193a97fd26ff4296f76cc9eb2320865dc6fd8976d50c4081f90a55033ac4002310093ce57aa5e32099b8f810a8e872a6647a16161fc6069d78a7ad6b7b54001291dd6ec8d4d8bbf91d53ef5a4c9e7b2985c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023073e9a2859d56d013da22d5e4dcd28796c89862b6195d7704b108b4d0c47280077620c43a1d40420f23f2c949253890cd023067b3c6bb22bb27cf20c367b6c7ae703fa73daa14e0a6b34ad91c0dda3138fb68dd4a006b1a5969903ea17a93b0f5fb4a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303a4ad785f96aea3fbaca503a6d04d883452009e650455f705fbac20331af7879f146a44b189fdca2b1edcf12f3cd8f98023014cbda4dd07d571d2ff513b7b35ca6273870d8200559dfc88c8e0177240c1d31334088c0af6dbf3a183ed564b49ddf4a0302047c435bb500663064023061dfc827d10281304c39f614a9773927cf26aca495a5a7199f57fd8db67af7b46db2fef4ad6ab4581d6f682704d1e500023078659dbbd3ff241ac550fd8a223257f1aef68ae2503379869c4e733dcb58d47f260434a6b826d726ac413a79b4d2b2930302047c435bb50066306402301126c7f2247d6dee260cd0cbc94fab200786e2adb344a84275007b070291c4ad1efc4df9276e768950cb0b391ad3e34b0230019dc8af4376eee34d6ae3bb4d37fb736c9929606a995f5f49961210781e73f44de76341b1348ae049ece9920ed99fb60302047c435bb500683066023100ec3631da03b73b38fa5e1e59904554a91778d21bf2fcc68d9f5a0ae9907450189da6e61d5113f1d82910cc789730e51b023100b48284d605d3066982e8ab2244f60d242b7b22c04d0c3f230637d4bab7f8aa951d6faf677a77f6e9140fa034ed173e9e0302047c435bb500673065023100a37e9322340c7a5583ce7c4cd76f8e4c9cb299b48b2a72df192affc57e2ca2bcd44e33baaaac0e20f2c11f190316bffe02305a41123ba4b934c4d5d7f5aace679ac4edec619e892aeca1e5858a2591e469a966a6f1881f0b986b987992b437fd815f0302047c435bb50066306402304ff20cc3d0a4e216a7ca50a2978f0c21f67bb545a9ade362a599ac2b508a03d9fd9deed867fa932fe08a652300afc02802307a6c980423d5ae36d032593189283ebae99d89751489f195e8a3ab63b39732b66fe50d319ea2bcd85fca2c9b0d7e9b2f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a3b4dbbbc7151fe372c697e583055278383261aa695a7f094a9779eff4e520e0a6728b9f189e369f828419ef2bc0aa1002305339d23d451b931bce097cfca93ca21e06283229d0420a2f4197fafa43ebbadae6ededb62ade7ee8a6b843c6177643fa0302047c435bb50067306502301744bd87d8658d121299bbe96579d502895abaddd09190ae4e64606408728e4c41c4a91b861986f3138b0e4965e8f30e023100e8f199ebf44e5d85d3bf23187819b076a95f7faa57dd4900bfa4451e302dc51bf9ed2497ad3e195eabcd7b4ac54d346d0302047c435bb500673065023100cecac5acae9f313c9d94ff00bd1808dd66128f655de88f333c35c232cec4c9c1ac36c5b385cf7e2f776047bbbd63ac4d023000b21cce1d813c2a43ee96d45a73cfd5d2ab8fdeadf5011ed78da0361ad0f205232203e55bec782924d450f5ac5362e10302047c435bb500663064023019bd71e62e89726e9a20dc5deeabe875730b525bac05e7ae6f3b6038cfcb32ea67ec15ad665e29320aaf2aea40773d4502304c8c8816d98f49512b08fe56159eed6acda9aec4e0e625d30f1709fa26d386286d445af02f6d44655d5d0d432f93a72d0302047c435bb50066306402304b31eec325e8cf80806aebec8ae0dc5d4dcdbde27aee95a5f8c7349d2485e5d31bd2e407037a0e2a009cdcced6e6f17802305413904a410bab0b850a999ccd5f68635a9f887f207ffb117e14d463c7dad5b1638704c0feb34705808cc7719ae56ef80302047c435bb500683066023100f32f7c952cf6d50294f29584e0088ae1fd9b462dfb5588f3dda1336ffd70f84940fdb6197c8038d3253721a12209a5f0023100fc8df0ea24ea2587d33f8008b5b187ae0136795eef9aa0ea8da8df2263d7fbb913ea5ca6fc88d4acdd2ef0fd493dd85b0302047c435bb500683066023100a68c0c5c8eed1a58868a8ac962d1e3e32787916f77ac2b20b71ce30ff12fba9b6c8b5cc7e2ecac315170b78694f26509023100a6e4e67df808cf86ddfb29ea409881667c0219371c1f9166850d66dea390f6961044a37d478183c2b7b1ba5d595ed2cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305fe77a9875800b8ef0af7c13ab27b170d8bd324686a3c6b06c90f3a2be0e0a8d33ad4a3336c3c90658ce135c1a54bfbe023008fe8fea1fd067af40aa8dfb37c42127ae5d64c2da251022e025c1ff3c2c607ab5f769b3bc097539556d841e6e4823e50302047c435bb500673065023100da48e82e9ed9537227dd3493863cc72f7690865185add24dca21e5392ad48538aee6cc27fda123402ac098395a6fcb6002302e040c65edec4b69f190f64823f5bc9b67132a2440a18e7274c5cdaf28c24e47a07654388075a4377dee609b6d1b984f0302047c435bb500673065023100e76567fea50b381013eeae5773e63f8851c15fb39a97a3e2225101b9ce43adc9f14e88a693233136b244c074c553d6700230719803820dd51becee7ef39f94732c62793a35535273e36117aafe7204846776050f5d0c0c8259656156b7212aff4d5e0302047c435bb5006730650230660586cd181b7e410a0affdf14ac7c658caad7d0fbb49e9af25e60c367ebe9c6b90a7d2a13f02f5fe8e598d2a2e0fd8a023100fbe81b4edc00be4667bf7f267d4e5c33f38ad537e7027a80183b69645714ed31437db15ea74b6561ddfe6b1fe45306550302047c435bb500673065023100f21f6d9243fe79b76381c4ef486a85291da34da85c541b7f956bb46bb9d5c720a4de8710814338e7eee18e538471b6b802305332ae74fd90bd6e4d33f7d7304fd6a44779c0339df20175c07fff6445be9806248d436bd83887e1b2a30aadc74f25b10302047c435bb500673065023046bcbc5cdccfbdcf7fb2ac032440d720825bd78bb72b1c18771e25fd27f7b8b46a12d4c335c3e680c411a498a645ba7b023100aa13523287816a8d51b8a9e8ce5928506e68fcfbf7c22cc2cd956ca55c5f5acfd8da742aa8090b190be1e1c76f9ba6a30302047c435bb50068306602310080250a91c89c460f1f07e5d1f8296311c4ecb50710d8c2c24cc72f2fe819ae747a7faee09d465830d8085dea3eb02d0202310085acc4ecd526b6d55aecefb683bd2779b54dd069b84856cf1ed78b75ee49621a3057bf91e42a395f54c8ca250adec8940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300d82f9755e1022844ebec2cdc63f7378bd3fbd72dfa05f2269dbd2e5841f21783500c7c8d300d0e50a88d46e20f39d47023052d87011a7d17e967695481974e7a25d70aa454c5a4b05a75a0a856c92c3c0d844144a37bea9a39a9f8c3d32cb4752ad0302047c435bb5006830660231008809057b14b362e2a43394fa28b4068c15b24b3da1a4dab78044573fadea097a160c89aac94c22f3000124faf42a96fe023100979e95c6426108e0fc393298ccaddea7dcbbe1c9335a4e231e2d7b89f74306a8e9d5308b809e88eb8d3976c351254aca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230679a3c7255d990062895381e239a7852936c71beb992dd5112448e4efa9d659d1e4774034a43661a4b96efefe47a5c7c02305e9759578819affd8b65c7d6d8c802185bf7eaa0763d69cf7e6d568e559d6a8555a7b040bc6fe29a5382069733a092210302047c435bb500673065023100d2c33c6206c95b85fa78d03af8f14006dfdebef32b845fb2881bc33898a46654357882c72ad3357a0245a7b7c08706d1023056c3858d3e614f1f467c2a4b2fa45e799bf7af40d6f7de0ff53276da37a5e2dfedd4d579683fb1cb1b2779f321e652400302047c435bb5006730650231008803cea0f985d8826fac9743369fab0fd5769c0e7a028e1aa5adff3a83e280eb5a66f5f1ff312cfcb0db3f634355f1470230119de4bab7cd3995889d968d09cfb7cac5ace5c4d463aba908f232a96869e03981e58e18c2766d6416fc18dc87936e480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230628ab04ac7ea1f9823d0f735b9472a165bcdb87b98c0555f26851ca657d565119f3f190ee0c65f42e1291e58122b974e02306cc98c77b9629c493f5ec825d43db39bab8fb884650d3821a313b9fe153f2fd0f1a3a1362def2d834a6363fbfebbaeb00302047c435bb500663064023036c049112b8219318ce78b8e1876aa5843ffe3fe6d3484be6802167e774fa3ae6a0e7e161534ceacc9077036074c87d702303a09bc8ac0a45deaa8ce40960db013d60f3ad088b643763a9e1e0fe614dbaab49e807835bacc44e962ec210edb024dcf0302047c435bb500683066023100e2bc329120368cb8d6c58c585c1704225e3051b5e60ba8bfe49376336f9a008fef863fba94231a53eedeade4c050a34502310099f597a43200d3d68e3dc1a94776850cc679bca5373fefcf3d265d739af6720446ed3b57564b14539b6e7d66203c4b120302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023032925830321fa9af96f42882e25c685805217c0900831a26930f70a5cde08bcd5fd40e6fe5a0ca64c43f6c7de25fa9eb02306cb061599748ac3c3845701268620577fb5ee3c49f3e0e06e7f2f19d7f08832f7a8be05a4a05867c2eaf24ca2dc7f3540302047c435bb500673065023100ddd6634de904fabef9ebfac215f2dddd97397913f08e39c8bc0f24ab0e2b3ab968ef6f385f97963493d4b30d2199c3a502300ae6edb412360959379e86dbe3364179e3172dd73d1c88b87f1e4cfcfa6066e8fc7fd87ad9900b5833c67a55f4cc84e00302047c435bb50067306502303f65cf49fc2f4ae02e226da5b363c9f091a0af40a2309f64a3665d7cf92f529849d2a2030252929509eef2539c1e2586023100af2157e4ebce52ffd0ba664225110cd8983b0e431706cb1f64ad5487b466aeafb3ca533ce8c2e292ec13743dd6c82cb00302047c435bb5006830660231009231f907469aaae00f9f058bd3c5575bf14982f9f700496b8112bc0ba2d9fa567f00dc37958eb2d0de56ed5d58f8ed570231009664697eb428bf86e922522d5be90c4b6209870c2eaa538de2937ce18127f2191090fe80d497da0360026763940b03d10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300da8e2dd92eb24594092f3db6b75df07eb08c576931b58c6b1c01a4ec23ecdf0ede0792545e99431adfe45cd816dd4a70230173530c5717a8049972cb1d86c9fba268647df95e0f8dd907906c04c97d03a082510ccf2773e16118a3425a7c49e8c620302047c435bb500673065023100b6db8172e80f66a6c70af399328941a1d3cca41f4faae6de33c4be9197380605228803b08d5856cd3998fd1ca60f791d0230198230f70c742da9590b53fa8e2e8f6b3e547bc61e02b93f934049495f6583cf45d4d9b9cfbbc7d4c14ad2181b194cab0302047c435bb500683066023100f4d4cf4283866607e65bf839eec3229d81dc4becaa0b9f9b446260cf0bf4f122898007c0c81854620f1d5532689173d5023100850e16695206b563f722550173f70dec6f538b017ea20d4e1a9ba08c098b5ebb795a9ac6651390ad0541172570c418b10302047c435bb50067306502310086980e4e93a53e734d915866a71a27f50ac18f5353dcb31d94d62395ece6b7074661f913a123b65224dd17ece6fe4b5f023044a44d9efad9ff7a69a046a58d88e71e68863e455138d6249764f66454081da80f16ec343091528c5fd50b2136c6b1da0302047c435bb500683066023100e9fd044c6577217e18c5ee464b9c1fcb6f5e80222187b7e163e17ba45d581fe534ea45a40513a982c97bf88b61048c66023100b5a5f9ecf40510ab1eb0b44eeb069dc63cbb254388aa1637f5515d2470edd29c4abd37c8374ba28591cd5c85882ddfcd0302047c435bb50066306402306738feb843a3e7abf2dfecd1253731e44fbf70dffd0bff8ed352c4a96ff84da243ae7cf6ce6bd2d24a33509c74fec184023044ed176b491541a4bd64bfb52fceb80833c5d7360a337b9da3bb64a4e7fddcb8d29b16644e4f4faaa9ce1c0bf97f6d150302047c435bb500663064023076b09d4f39110f37a19c35b8b5c877cdd3dd47b20acbc068d463cb2c4006a1e911afb9fee3c16d03c4671fd6ed5985ba02307c33d26fb70b25ab2e6c4aca7d6a4ada41f29f3375d13bad626de477ca2bf5a85aa8110b538c2ef97a876d9867d642fc0302047c435bb5006730650230719758fa1b05f785dc9f070b9ef8cbdb4621c017dabb6a296f58f44dd57270edc401d7a3c5b75dcae9b0f5677d066281023100a297f9be1a417a34a1fa36a2e29a11e869d3561700c4f22df5b67d6abc78fbfe98e7bb92a4425f14a5bd39350697c81a0302047c435bb500673065023076df179379da13917937b7696d58fc4356bccae209e9957e21306aff3b054880db898552fea9eb4949b722a316918606023100c7cd1c65b4305ef3596554d85a755591d238b78ea12993b3def09a7de9088805e52b70e5b5b9f2c577e6d3e58997e4dc0302047c435bb500683066023100ada4fa36448ccc6f9830eba7344b7fa683c78907749d6e01c5c42b6c3163bcdba846fbecc74ab988f7764843622de801023100eba14c7b6881f3415656270a54159da15d17abed68e052c277534b1a2c58775df136c25b078ae00c2829931bfc2204ae0302047c435bb500683066023100ca241b9ce41b4b9fbb359d2cddbbb1794c3ee0812a324e0d2b1853589c9408ece8ffeec2f27dfb7dee24e07e3f3278fe023100a303a2d52dea1b20fb4bd3728d0c77aebe3ebd16de22e8b78820c5ff23d856dc9e6f8cdf184493d8a5de372e4587341c0302047c435bb50067306502302dfe80e95fc5632ffbfa64e4c7a9c1206fd346ca7ccc53201f8c433f4ea5a3a4e259ecc7a1150dafb133ffde0ff6f26b023100e5f76a74dec1ffe1c4518dc91062789afd954052ad3213b3e1b97da75886bce0811ea0f1fee0121d68975be17a653b720302047c435bb50066306402306c00bd347f52d85df9fd973902fa9565c4007a52351d35bdabc1965d5cfc665e2ed53031d4cc08f23de003621ea38e4102302a73a43f9365d4193ee2075f1ad6d42906f6f1250e5a1b1efa4f51560db1c0927265d5b3c786baf4f5e88e7894ede7db0302047c435bb500683066023100f5a7d6ac80412cd12137f6f56726c03a6fa137a1d8be94cd4263cc975808034479e33a0b20d1d591123e9c2e5a05150c023100e1745d5994edea791027b62ca353579d004f0545f42e44b8aa57e521fedce74851b290a85215dcb5018b3614ffd6abfc0302047c435bb500683066023100b200612b20726aa1df890f00470d803c7b85590561a637fbc1b14169b270c5fbe57c6cfacb2a765b93dfd3c53961590202310086538aad6c0d0dd0d1121f32a67576d2c0d078678e306f0a6ae81a7c0e967858b9961337974811c2bafdd42e07135a130302047c435bb500683066023100bcfa4aaf282d995e4e9e51eba8b3f7b2cec4c398f2357f1e44bb0c4dd56dbdd2c7532f4369743cab9ac20452185c1a08023100c6ba34a80b8c486e6bc355c62205373698174db16bddfe49e02315428d20bcd17043f088fc00e0fb082ef45a57fcdee50302047c435bb500673065023100b8ebb3cf2711a1d80f6c260b46eecb8b8c9f2f960cdf1d44dab9d7bfa6e6f16a926f3929ad74341cdedccebbeae773330230373f315643f4170f5bcce6f55e5981eca542a4981c4540526396d384984d7772aea48e3a8c88f1e4ea98608ff7ec11f60302047c435bb500683066023100c07940f16f62f2d3bf5275511ea9bdf7ceb25ed002fab8b349d31655d7daf1af4cf3682b713c49a5392b4254dfdd38c4023100f6b7ac34636d5b248ba33326ba1ffe7834edaa11eb6bb477186c08586bbd18b8d4b6d93899cdc420392b01641d0abd8f0302047c435bb500683066023100865b615400da054e4eea1ca04ad84a566d79ad040d9bb6172338bd3d989c734dfa8b8d2aaf66048dc1d6d2b146f6bb09023100da3150aa2d26e7a8b7952699d2ab835b6530352870d26ae250ec8a053c01f6ccc945e0c1933c7a3534de723ab88e62f00302047c435bb500683066023100f44da710b2e648875ec97fe2f2deec44c28327a0dc092d4025ff5c379e4b3c5db5d6c04de8a0bdbeb7471a64e867828d0231009f465a2eae61e64133fe6a6d0454cddf89de42ffa2552a5e26511e7e339e1960fbe6a39c07e514cc62f434864a840d830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230658c894fa100edd1c6aa61e5ee4aa4f6efb6d73aa0677321a1424d2fe4ca4fe9f5eeb14dff95e811054f1c2a836c37a0023100bc772e33c60178b7a815eb5c05fd52968975a4ec7823716e81cd9e71214e535a97c7288229e28045d67ef3a2f0e2479f0302047c435bb50067306502305323929d8ad45081bf423e09475b59148a9cbd0696ac6e51a8d64cf854bd195d75172b922d8d9d8125ada6a3799d34a80231009d48cc7488d8c44c7a1038c61abbfd31d3b8f2df111453506e6bd02e9a32b6c8646ccf25590c4a2dfb8adb8b998b6dae0302047c435bb500673065023100fa184f6a1723f7969df9a735ce7335fae54e8b61ebae7a8bb48906b5a26a17f7a43f3deba06cf50b4abf3adde993a64e02304cb34a36d7d3588d7ee6efee646baaa8e468b0ed651f37e71611f58e71f9864516da462dad9b98fd7e3c579e1ab050440302047c435bb50067306502306cc49f0e32dccd05b08dbb6cbbe751f4f21799a432bc01a0847c6a17fd243df41d5ff2f752d542f0d3af2051341be2e3023100a3b451ab6f473012f28f96037a0bee09ca95410fba5af7cc53b12de02153bd1fe4de5f9ae33fe15cb5761704abe821890302047c435bb500683066023100c73b78294bc9752af1ec938a09d68eef773c9f37584e001a848cd2b2e0e5ad6c60de1b74fbfdc126d8796063b64d01d9023100b84c395511c7d05c6ef1914d3e5111732213f0ccd48485b417d671f138cabd61fd5110807388b498568dca7a0f25ef160302047c435bb500683066023100fec3741d25bfcc5ff5d7d030bdab4a1fecefa64033cb7b7a17dc70096515f369731670b464186b383aa2e1acc2de57bb023100a4cdad61728cbde955a3d24169dfaea4adf272d8b3cb61aec018011193bfd0c56e7e0083701f7c3b4038c1bea77359970302047c435bb500673065023100bbab343f5009e47edd92a1a8155ada14b199598d11db4d633ccd831993b132273079d769ff2e6f0a9300390203d4e65402306b8a7363787403f435077e4f7d5910365cb45d113d0b75097aaad42e9cbd66731e1778a1b56c965f48b8ed436d5c50940302047c435bb5006830660231008bb51dd2f911f8acde40a4b6a4c6f92f10732cd3535c024a1d26d9fe40348f109f1e34fb34baaa83c236ec83d9abb9fa023100eaca8c5015ee26af074b121f18ee1de704e1e646d06e0aaa82d27449419ea875a23852173700cf57f0a421be3bf37bbd0302047c435bb50066306402307ce02e605c35da6697250b526c93d2259aaf650f6bd12117f90f7894c9dbe18c16640d80f0a77a386814049b992a753802305371722f6ada5a0d48fc54446e3fa8f11e551f7cb5c860181c2fbfb9116654005736d043bc1317e1d3c36c3c2f6b6e520302047c435bb500673065023030578a52c2eb5eea842f8e82baa28d5ab7e887b31381a23cea65ddcc0b1a076b9ed3ff591028ef588436ffdeefae5539023100d58fef29cafd5532f0697f5657a6920cbb59080d656a1605dff7bb4ea7c68f06e97a646d74fb2318bed45abf4c88f4020302047c435bb500673065023100d16185b2501d15a4fba81d794b874d6395d81119b238e520548d82e7a843b1c8538210b47cb4885ae1633893b34bcdbd0230570475b42895ea14c7d64d5ae5e9c8df82502774a462180b40e91e5c20c0b42db11f54946b55bc3b7af6463f91bcfa570302047c435bb500673065023100a04c0764618184aaa3e4ee2fffdf2ebe043e622802f1016d0dda17eeda38bb1a8d464a08e4b4c5110c3e826652d0115802301c610c5cb1d57990a3d409f5edbd41e1642abec8f15f1a36ed2bdd9e37ffc9a5b0e402c58ab28a78a0c95b948f1fb8100302047c435bb500663064023078674043decef3f3eab512d43d8ebec97f2da83fb8dc0f63884cfaaa19898e52052e8342c723bbcac7523eb77bd376a902306a197cdc97ade2cbfd16113150c5003f508ca2cc77ef5a57673ad92853623da41eb834b4b9b05c9d98e226066a25dd080302047c435bb500673065023007e717b00de3d3cf400ccaa1afbb66e694a0ed6fc92c7b3678a985fab5ebbafbb473f7d4fd3688637dce91af7ad760f102310092e193e7c9548562535acc77da133e3f8e5191b233df24fff76bc14e2b7de0aabbb6af241d1b8556d136c61e1e25d3560302047c435bb500673065023100cffa92af9c869f4b762a3b63639dd78ceb722571b0e62aeac9fb52a5f7a1816e2e720d3cc4d7cbfb28bf0f0cc01093fa02301bce33959134461ddd6053786f4afd16d7fbfa3b5a066e9d9487cb63b92a8e6d5796bc4699d00337403148e4da884b170302047c435bb500673065023100c3fe9a3fe94b2e7205b08c0bb82e96ac53ab2dcbdf29c396b1f85d8b4c03fdf65c19adbefdecc5c4c924db4853867a3a02301ee86f2502ab209826d6ca5d5fc17fcb577a71b30b0cba5a1d6cf522e187686b4f877c848fdcdcd4a632a9dd5b6d83920302047c435bb50066306402303f59202dff4203ec01532d846f17797091d290998d47331a13d422b936144380c91dabb80c0b978afab663b181feb6fe02302c94586d5781d6d4fc502f42a5783b63d7ff5cf7609d7ab612b033abf466e018d3ba523cdbbeb8482d1fab49abf2dfbb0302047c435bb500663064023037de5d99aeecb104b336f21f4da5629c010fdc46672bdd5a3dc31fd3dff2e4315a9b383b99d53214b72fda2d9cbdcf8a023013c7171b863e8de1e158693ab03c8bf34715a1e4438cfd583c2229804484897bee14f075117b272143eaa0a13a863d570302047c435bb500683066023100e601bce66fb34484ce81539c9941fae3997a805aee9c65c0a7197697d86370c5cd5b540ce9d80710a41e1175d82c685b0231009533acf96d3ffc978aa22b82362b9996da941f9e82b55ec4bb060ca1b9a2d2e8d3858f153b6a41decc45c37ef65473e30302047c435bb500663064023100f8ce894ad1ec73834a7b6a09f607f9ba94e15351aa0d5c974f9604eac8d09e1aac2bb0b8154af08667c5f054419984cb022f30fd24695546a25d417f1eebf4022bca4c9b39d80d737911ecd4d44fe3f2def2fe6e4bc84a134aef30662624480c940302047c435bb50066306402303db78dc52deb595baeda54e3d72fc9ac0338f5aaa708fcb3584ab09387d5c0331a93bc00eefc9d3a5a84b07b8763567c02304977470e5d09b9f14f994a4b80e54a1f1fa682388d41d3495e9f952666e3330fa3a8927776446fbab218abe92ddab5960302047c435bb500683066023100b67ac728473862ca6caccd0e8571e0ac7470c02aa3eedd1c855742c9d951dce07b9b78d3bcd7861190dc910f102d579e0231009d40c53287841f80400eaa752fdd396aee368929cfba029a42c1b38a1c4700afeb5d939c78913d8aabfa74a762a3b01f0302047c435bb50066306402305dc1b65bf9c380b7ad28d487afbe45d7382c108c0a15f9eef41b663b9dbba38c8960bf4beb19cdcd143c2d5ac9cab2e80230660857a1514490a2778727a39ef1f3bde5826b3069a97b9b420f5e1f97c9b814537b49cd889b3077fa1e86566ee624b60302047c435bb50066306402304b2f0d5cdbd9b0a906ec530fa742147397fab33008363254f02bd988b1a5f743a7d0b237294ac6aaffd35dc5a8410ecc02301e364e2ad464599559f9c298ddf9ff89e0410e4846f332b411fbc79b157b2fc5d0788ee85c59e524f26c8bbe2d13091c0302047c435bb50067306502305ae1c9173bd11c2681e84cd033837e5086a2777e70f8ad76f2b00d439d2c40f844a777cbf20b12669793f96ecaf2ade3023100ed26c8eb9d07c242178a0b99f6664571482fd9f9b9d8565ae01129ba33a3f59fbf8df75443a5a448bfe535a54f4b28aa0302047c435bb50067306502304b4db91e876a828471a6d380eae4dccc52e7b0eb5c54d92e28faccfebdd62a708ed8c02fdbb207c628ca52ab8ca871f3023100955c564b06e9dfa9328d0de6b6abea81abea37cd6a85930724d3c3c3662c1111347cb2879627b25455d6b70a21208d6a0302047c435bb50066306402304885d79ecbad8c790776e48974ca3ab708b43232f03a48b5961e288c5f4599d28be6bf0ed54ca3a478308818934ac2ce02304455658c479920109edf3f1611c1e4523c6bd8376d72577071098a3478c01d34acd9cd07689b4da79f7fd4aa14d4480e0302047c435bb500683066023100e27cc6d5027e69c8c83a02bc1dcd60d13a164600027ee5ff6869a828836b8b6059267fb0df73bf40deefd5be023e3faf023100ba517093633b2376f9ecfc0aec6d5191200a58cab9de0d1c6dc2e9ba731bd70b87a446633c781fbc33792f03810a2cfb0302047c435bb500673065023100cc1297c3eca8bfbc0fe764d59a6e76c9effd388a0080b927956c32bed1138c0ae5e96caa5bfbdc9ebb2b4efd3f6ad91102305bc52ce1c4da1ba8bd3d2898ce9025eb7d5caefcc81e27e524713709c78674f46d1f873a7ae8aeeb7b40c71cf8e334db0302047c435bb5006730650230450bf8029a4d5d340aa181286864bab2e2eb87bd98280bc6feb6264b9568d506da793060b45acc58acffd9d9b4b30f84023100c17dc723e157fa29c82c2c7221de60214ba91327704a35dba385d73288cb4c8f4948c432ed2b4183fd4743b57bcbb8b90302047c435bb5006730650230657960f724824179355e13c93965ccbfe5d7bef834f1d0f079718a9040fcf706a09442ec3f7e39f80aea51df5612f1090231009285f5529b9b8829cf42326a658e6e0e1d36619938f59bc530950888364dc2da1426e59d78758335aae73d1217d359cd0302047c435bb500673065023100b8c0d565da5b0edff67aba311b004a7ef04e4b9d40a5bdb8368af1cd4d52c48908019078488cf889568bdf3a4adb0bc102302a4e1b3f38a7ddd9471aae363fdb958f87f0498b130bfed72324d82dbcfb388bb9789e3dbe3e836a726bf7396c5ae99a0302047c435bb50067306502304888578a6a0afd0704ae7469adb37fc72b4f7ca2350776828ace48c93aef124e3f07d4b072ef88ed753e7525b19c5c4e023100c8f0c2af1a333d40ab9a398366eb621e8b5a1a16efcecf447f8ce1f84d9597340d1ec4febac8c96023e856b4095af6d90302047c435bb5006630640230438c7099b442c31c9a6cbc86d234f49486c30f267660740a5f9c004db1ad0c35d2b5f30c7cb010fcdd56c5130995644502300535c209106c2354082c98b6905884f5e120f244f09113308fe40fe13163761d1213dc62372b26ddf9666c06ba004c5a0302047c435bb50066306402303ffb007f27b7bdad0fba7404e6e5e58568da0b4344a67c76cfbc651f88f4b350376b8911c4e579da072185d43e93d88b023057b5041dd2f6b68be2452356266e899b9210c2260b679d5a07b1fc9c9444f19892e38421086bd0faa097f68eacec28970302047c435bb50067306502300a4f361c3a012089dd182219a9bed519a67f223982d993144d89a277821e40d30f60417fd0ee33984c1bc32b331c46b4023100a2d2fcb3f98d989eff46dd40b667b3f46b1d8faecf59856d320b8af77e2e18fe9e71aa2e9337ebb6c70c35a3e635ba560302047c435bb500673065023100c72b1c2c5478e15c943501c9ca470beec2228e61eff8e491ce7bc86db8df61a61ff0145d88905d3408488c5d01df5f9e0230437fc1024b3250fdc3ddfa56b079447f3c91fd6aa79b4f99fb39b1eda8dc144f8291e40f439644c606b1ec860ffb5fda0302047c435bb500673065023100b5117156d21240ff2fd574e72208bb91a1714fc2012473a2ce94343fa6120e2e8bf6e0728d5a22425700dc5e428b172002301d5094ea8393155e045bd5043ae3832098d1457205ddb06effdde0aad973809faaf80b74780451fa5ff67b1b299f41430302047c435bb50066306402307a2fb947b87d65a0c6567063a4ab7e05749d012389c3b81ea3ed4b1a1c883143b5ac9370aaddcd43f36ab481b11ce8f7023013aa9065b19a76369242126955fbeeb6041b674d4ac6ba639835b29a9d974817f949d73b22002e83adcf8d12deda369e0302047c435bb5006730650230115ea1a634ab4d44e0eb5ada7380c32b453937249e38eacfd4704c646a9299739692598c091d3b83daf4e145c39bb21f023100f441fa0ea609db341d3ba9843a6f9cfc41477f446e2e30401ca6a7b3ae4e5e89c9e329d4d626c6a905c7af0a15aba06b0302047c435bb500673065023042226c7fbfbd8d97234f01f0b7f2f048c304af7e1bef75dfbd57852ad55557009d7ee13d6ea6321ef9f12f755d4bc921023100dd091ddb931dc3693d9b0e3279b03d77ec15d0d1739faf8107f7392a9d8267870f93db9f4572d70f9739449d66a750c60302047c435bb500673065023100a6072469e3c8af75e445ea4c965e140ab2971391f229905ff709ca0e5587c610230427807fa28f5d5b84bf50561b9fe6023056bd543e0d25f0754ac691a92cca2b2c7be1c9a500755bff49a9bc37d3cda836a3582d9b64f25b363609d435afc444270302047c435bb500663064023001c4828c945135614fd48b4c7768442a3699e60128dddb29bd5329b32390c77231da6296be9e798e84886ce578fd203f023036804b64fb478602f42bc7589dfc4d21f1cbb7e8327934a95e78e2f8ad38d1f2f63a68ada9273349195880c0f9a4781c0302047c435bb50067306502304209993cfa66f932c5d1d61e922b263f66bed2c21025c167ee0e01d16520443e0b8d726c16e784cf2646d4172f29d16302310095e77c2d83dcdca3f0c5def31848a321d045ca8140f0bcaeaa564e7af6add9bdc37d7d8621e617b033e3b113623c77560302047c435bb500683066023100be70a5380625ec4ef8f25f5e0cebcc32b83e2d02d68425fdac80e0fd9216adb1bf5748b2064252c927ed53ed9cfccd18023100f0f1d6f3d4af01ae4cd9e9ba06c0317f7531e399e0e3139495ba4d7490dbb910abd354de68ead670914580972706e7570302047c435bb50067306502304a4d8c712f745751d6c839291124cc79c8c63db9df794b23ae5c49c9d47a406287a06c8f4b1afb2f6ea98760705cbde4023100a3b32f1e966d2206c856aa464008fd96b64c197f970758d2cfe87388f447670d4b7f12303d6b6c5929e88926df224cf90302047c435bb50067306502310087877e5ecb23a1d2df3b92f408a002d5baca6a10be6fb20a2723c8295f69e2ea9b9e7d8bd231c78e6774983121b3293002306c4a103452f6eab352a4d0a353e8dbe8264a07c871122a6d9b770d00f2dddb4d10f9704df63cd553ee85a5b61b03a1300302047c435bb500683066023100cc4831da253b8e97fff957122227a858f4c29a3382b4b47cba233db742b6a2792e232c5e655bebcb3ffed89a3db7730a023100f3c1b170792dfecb7c8455a15ea61e3ed3ffa80894163eb40d122b5b2251c955a05dbc0bddce65c18648631c4408aadd0302047c435bb500663064023069b960da179e3ce8c3ebac6cc8aac89fa77531162c557b186eacc27820818726416f512bbe3acf709164bb1f184b03400230351894444504539c81748ac793af8f2417e32d5e55ed0bc4db3650045e55898256bab40323d9531fe63f95c4a08fbe140302047c435bb500683066023100a15a3eac25af3d1c70c53a4fde13703d23cfc52d14586f528a64e49a7e2ec8fa6d7afd7684dc3e3950391cf0c6542d71023100916e8662ab541412bcb74495fc81a631d01e3d12541fca3bbe9f8e92393b6b0f43b0419fad04b87914b85cdea09a68d30302047c435bb500673065023100953447aa0ae6de1fe1df4c29705928540efa4331ceacee4fcef0f094ca8feced72be6b75cc9570d38084454ca39eef5602306850441cbf0d1fea8690e765df678ea5a6182fcc4ac12886bb3843d5613cb907bbdb78fba82a0a2b136567c3171fe60e0302047c435bb500683066023100bc0bf54a0e2b0565303c689ada8bbc9a8e29f5a47712cff2a0233ef46f59037fea4f0d49b723318e53370ad456e90d36023100bef04ee35a6f9a474a78f37019c0a1cd3ee4f23b20a362ebcdce2a7652de1752fc678aee348a7806022cec3da6f63f6f0302047c435bb500683066023100a597913ba16b01ed8d83ae8c2e405850cadc1736dba36c20b2bcbc16a828d856b892a933ea14c026a562c997f96722ac023100bc764ce5e1a2237bdf921c944438cef922f8f5528c9214074a1b634826413f1caa655d79be8604fec77c873b62545f9a0302047c435bb50067306502306870ceb14e1bd77b09c6103d46d1fae28fdbe3574c56e680da81e5a328fd33ce980bc5b7b4abee5cfea8e72afd8e23f1023100eab5d6c919ad62fbd9cae040d85a669ddd81071d2781ccf8da3cd4ca51a60f9078a9d1001b36f498afcb238dbcd485b80302047c435bb500673065023100ff8f68042ace5d3391b354c20ead3015cf49f2854ed29f90158ae203244635f6b75fc7521bae89bcb05e968811d39bff02306a94d9aeec67b7518a6fbb79fae9407b27744eef6be829ac34be68c29b44df8aca29d254be17e06e34641bb2bf3162500302047c435bb500683066023100fc9e2f3b44d609beb510a817c5e91d1c5cb44dc1a2d14ed20112ff21402fdb2fe4dd80daa448b58b56d61f8b6447522a023100eccbd3a51bccf78e113518797cc913d38e96e45b342f430d24f5f135ed708da4ed89df6aade751d5b3b4ad0503187b860302047c435bb500673065023100992dd2987d0f93dd71485795de245e314aa43fe34dde87518fe566130cac7a0abbeb65829e4aa630b88e9a82604294a102304f94763a2fcda9cd4236a8a243153de76a523461d26f4f9d45deb7cbed726e80c374b63833c6279e8dad0c084927e26f0302047c435bb500673065023100acd8cf7fb27b6f00732f3c98fe9902199ce149891e1c0c0a289b673a6ed395254d6a20f6b8b66cec492c659f0c64cf1902302dc2dda1a5f0c7365e3466b27b1d49916c6ac2fa7ab27be139829883bbb3f687da51ee081223b278aec3276a85adc7130302047c435bb5006730650230782c2ddfd560cf46f8ed89a54cd33b16dcf718be86735e6b3d1543b033f10c54d8343efe85afc861521e54f155886527023100f642b3143a89968002342886c3201b0bca7ca6814b1797d36adfbf7401b1857692ebbe2138803a0023820282d38b0c2d0302047c435bb500663064023100e1f01da22c524a005b5e042246e12d68fb54fda70fb7f4b4b24a1e7a12af44ff22e407d3f05d0f5d7cadb3223f1b231c022f46ca8b61002e4dee1c3fa227519f87ed823d5b367da24f008dc0c1e4ab0d607d495bf99d305df2ca7458c0e2471e080302047c435bb500683066023100a82f6dff70436dd23712dca018c5172a4989fa9f6448b8fbfc60b354440700cbbe3e4066c86612eb9292457b22360c0d023100e4a7541b02122dc5217daeaa2a3a7c9aba388658adcca497e9b8626c6adf11c8c5ba047e5975a5fc97062ce923962ac00302047c435bb500673065023100dbc71f0414b3dae1152bd5abd070710c7be5e47aeb90e24e69ce8ede6d8a2cd9565997aaa5c146cf76ab470e3488184a023078fb4eca1296c6fa339404da030841d76a86220315b0b0f13d8a463f6727558334589d32712d0b6eda1387cfbc4c3dcd0302047c435bb500663064023031ce36d41dd2f7786d34596a859103db52ffd09c5a9efa5b88ab3ab726fe7d634e9226482ed0e688c68988023284c14c02301bf38ea08aa58c0e7214d57a1bf659ac9978fd17adc734394c64af959b3044205a37e30cf959cb8653040568e95cec6e0302047c435bb5006730650230053d35caaf93a887dae3084ee2e0499067880b418d0859623423128b28671404a8f804f9c07aa708a9ab3d12fe65e599023100e867afe2e8d49cb5344414edc06072095d74e259f162ec60324d54fa68aec98a64dc82fc6f68e73e9dec8c29ff8790370302047c435bb500673065023100eeb0ddbb96aa11368390a40bf1cec00a660750b62718a9f32a8ac51fdc48497244f330450fe1edcb533a259acc729f9802301927d5f651405d0047271a8efad1288e0048d3ada3a4e61a12701e19b7192ba22280d06a4ab1fc88fbf79dea23466ec20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304573a5b937b48de26c509689a222d141b48b402f8c4264c882793487520dfcd0b2dff50513742cce9cb2588c3bde81dc023016d86b954ec33fe8494288666852adb8fe278c5297dac43405994785806cc135f0a2a72f4eecb1a2015825cdf569a3360302047c435bb500683066023100d1ff68ade991569db3ed050a270df0e4d1181c185fda7995dfd5406143864a3ab2657f601a866269386058b7e89b75d5023100fa494b6162df2b255165a4a6aca618283e2a35e6471132263cca45ea38fb982a3d31a020b04616e367719320e8ee4ae10302047c435bb50066306402305ac822370f8a703ed87b58f8702616207d259f36e2d2841ba9587df9abf883595dc2a11473833a1ee31a5647cac316fc0230043d25b2fa2445174fc23b59ee36bcdf3c7de6a7dd899e84e17dc048c3ba70e99cc175380ed4d80769a909a55d25462f0302047c435bb500683066023100909a900a3ba549f7f40d0eff93be24086a54c4431ce7797f25129cccefa8cb9a17b1ffb955fcea8f4f4a1b1eff79c8e5023100d9d51de9a2ccc6bac6a14f6b0719088aedffe60385a57d5952cd08b857035480151f5a2e6a6dfbac59ac04e4dbdaaaae0302047c435bb500683066023100d321767eb2207417840eb25cc9b1481a4e20487c0b180fae2cba2742cf76892134c24d717a8f172dfb8fb6d96350ae46023100de6f55198d161d55fd7c840d063eccd3b0bdfbf348cfd167cabc31f1852cf612642a1cec25021279624970113f9351af0302047c435bb500663064023046ea0c199859f84547deef6a3e978c655ed119972c329df2e8fad8aacc00fa064e686f7944268e83301da5e80a4dce2902301d99ae9c00e08be0dbbd59b815a8d6543dce8a00bed60c51b4084a18bd7621ba52ffef781410610401c76557067809f20302047c435bb50067306502305d02af0a8a2926bf59e649a62d0b4511a521767c4072fc82759f4974d4114843f718986f7c00384c91c4cd099ecaf657023100ed2b33d2635f615c7ac5627f37fd0526f27d2fd49cfd25652dbd566e205442f5640992da10a56d73ec32701af76a9e370302047c435bb500673065023100f70342cbcb153804bb01576bd2ac37204bae3abf6d2676997ebac7504fbf32a40f3dbba51ed340aead49b8920e9f541b02305b6d59e8c8f5dac6818334fe7d570da8dc420d73ca996aab9b9060d1aadfcff19a671547608fac04ce1bc6ba34b1e1680302047c435bb5006630640230180c685789371b2bf8b844dad8a6bc232726fd5ee89453665dbf272cdb2c417b78f0e190dea1c75c37013f162e55ef25023035feed5eab411ef554a0cd855f6a83c34371d5f3615d49bc5ff94f29c6e61c4c609e262b0eb707bd811f5d79806ec7ae0302047c435bb5006730650230433fb7fb19f6bf80f12ad261ea095fe186ad25da107069c6c0197eacd337749f82f44b9f9704a0102e397c04311bc0dc023100a286fc552b0f5bbd3763ca23ccee45b5e01df76887a2b041e2b27788c27139d76d25778d436b03ca9a5d597ebc9499290302047c435bb500673065023100cf3fdc6b07aa693806748cbb90f4baba3a18413727f4ee24731dcc01fce67726c23c3219238c8446b72c0ea9ddff18b202305f8e947b4df84f41d4f881fd19423ea8630bd74ecd21eb1abc5eb1b0c5ec8ec65c22d0ac2e5b8eac8ba80dbb9d1a68da0302047c435bb5006630640230329bdf93c8e6ced7e3816ff3b520b3a16bb817dd16f1552500d08c2d4fefbd2f99011c695b1edf67d18b6544717d52cd0230233175a54b3b68f904d363b307b59e34c14014cbed96c8abfb12c2050e4ed363ece1343887e6275ab0af204e714e4ad40302047c435bb5006630640230716e98afe7dba1be107adb4258cc7342907adbaf14eb9b20d3616deed89ee4cdd4b4d39d66d3cea9392f3def8363d05e02307b116004bf03022a786b5b7ade37e804173e056c24104acedea485b474203214f73eeddf8287e6c8608d7f7147de9dc10302047c435bb5006830660231009dacc86434a4588168244b99843f7ebd53507a7cdc47f8eb74d69fc8fc28a46db97c662f74c457aa823b608aa4a782d8023100feff323021f3b13770ba0e7f3e6008604d90d14a37cf8861f257b572796f7ec3ac636a47b11ccc3622b2de27068c78970302047c435bb500673065023100d152ca84a77af6422bb61875f639297b3e9c43d7a311fa7677da5238b5c9beb554fc21d7beca1ce4e7a05771a228092d0230487866a61bce90725533fd9a8e4cc58401578318aa5f4a486a6a071fbf88d5294ee23862ca2c2965182b86413f8c059b0302047c435bb500673065023100ba26c3f40d7c09827428e1d8309499c2aeef978d5f87fc98f139f5effdd5a6867c8718956aede399d735abe450583c5d023055a7ca058fd73dda6efb675c53c367525348e01e9b22c13aaa0480de9080eca0a8453b8509f7aea9a3fe676f8140dd120302047c435bb50067306502307308ff9be8ae320c461e5dea87869f73bf90841ec82c8030054c64fb25b61d26c4dbf474a92a94ae751086d12dc814b9023100e49adec6510cbd0258a6dd814a61466254922b5d201659909b540dd7ec91e72afb5ca2470d7036d43edbe6f07f1111240302047c435bb5006630640230493d3bec5e5e2c8dd47821a5e006b9a602698884ae65b7e7d60ebf32d33c433bc77f384ccc126e486dc4e0e107a1d52002301387673b859520f9a95661892e16dfbcffa05badb41924beb7aa9db5e1f14567fe899a76632d60cb9ee2c648131c870c0302047c435bb50068306602310087725c9948c23c266616383229fb5000b91839f35a4f8015d83f4ed447699ae84d83a264b54896ab3286505b8d1756b3023100990787df675c38a74bb4aba6dc29654ce2554923578dd7eaa12df4385a14fd2e55bd0a27f86b8b3630de6faea425067e0302047c435bb500673065023100ac29067367addeb2a5b05de79457ba640d19f64f2421fe200bd16d11f06f2f4c3cd5be437d49e948b5bcb7df8645564302307912f39b6c821825a6ecd1db00f115fba6a815931ee6331e19e174b9cbfc1eac21561bafa300fe1de93847876e4129d40302047c435bb50067306502302256e867ed8b1058e9c5f530f89909c8734dbf62183e35454229ac9f20644ac0888c7d61f837f5fb70df8694b0b60359023100d2eb513b4de6e5c85bb59b399386b38613908e11d4d688e6e93aad99ad1f7d846f540dd1f05483123faeb3d34a47ea140302047c435bb5006730650231008fa42ad5b020e9250f8d88a491694bc838a6cf3cb3e4163db69c0ca8ce67f7a5d85222f4d958c8f7c2116e50194df276023018113869d8ca64199380e8e84a7f03e25f289050bb6509bd9d599b6c407c3929d6d1ea82d5679f6892d9c6c870befff50302047c435bb5006730650230606c5221b3a040cb76b81009f05187c65bf24dd466e4393fa904554f8b586f137a2a88bd74b1bac37e3ba3386c4b30ee023100883c50084e84e90a1e67e066a439e3d9df56ae62d6e5b01ecb23a83c5f02163a45868113b2e07c5520458017109a00ee0302047c435bb500673065023015c4ea102110aa81290c5262314b42a4e7dfb88d036c43dd60ec7921578ca50afe23356f1045a48674875b1a2f5e95eb023100a7ba8176564c701a29bbcecb18e96030e1dfef43cda2be7ff57838cf878f7984d205ac3ee877b6b5c0fa0e1130fdc4fe0302047c435bb5006630640230340a8f4cee291c004a70a8e84adb99448fb9ddab5c7c1ec7112f8690db606f194d0542d8b1a9181e4d5c1d376b23f3d2023045fe438ddc87b0d5255f5f52be8efbc79001d6c2ad9ff68313186de3c07568db43fdb92d5ab93816dff87b6f480031df0302047c435bb50068306602310096de919d83f75d2371cfe5c295c5a8a9cabea300d7fbb34ec8bab2e98d2aa1800f6f6247ee440e8f294ed81eed55ecd6023100e75dab4e14a2ae9db0c5ae2f2007190c346aa947f903cb68dd94cb1258a5a2bf3526f8327656aa42d8da29d88a719c700302047c435bb500683066023100f3e58bf595e75f4a28e3a843dd13f406fb0f585026e4ad3dcbe3499aa8f6252c80adf7d05584dc606d0c91ebb9c0127802310084186cdd5611e3f60361d6d900c2e037f7e4c655d5207049ff0f951fdb67a76747245a2d067f6d2e82550f46b491b03e0302047c435bb500673065023100a01730d2d704e98c27a83873364a3254a19efa960259d084a0a232c53bc9186fbc885d72ba5080572fe995d30f7c6a9302307993bf8396c2c72d617aa359032243f0230e2160a61c31939aa968b15db4b1d2288b3de5e9e6d81831c02dc4a1ca81090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c80d385bf9ebc0791ebd48ccb2900ab9363ae0acd1c540e6f1168e9ba9e04b01ef2bdfdc1fc5eda6dabbaa153130095902304fef4447cd376e31cb84588f2d3f5fc604274e06029048658bcc1d6554ac840dec47a8b94f688278836bc629cb5fae220302047c435bb500673065023100934a18eaeecbd0bccd04944a72dff65ee5b66150b968a982806bbbbcc47a3ed3d2acfc27353ddb56d4b0cef8a56e8e7002304ee02a7d7031ef111f5327fba83d39255375418ccb5c162dbf7890d596975fb7df9468fc9903f349b67103898cb000070302047c435bb5006730650231009fb167e608ed3d2bfd49223c4be42789c2bab23e20922d7a1625a43298862939a186b9cf17c5f4708c586f49d1d9146b02302ffe66adc8457df2838807938515077d0ca98b04361e59b8c6218c8b47d1609fd658d132b318ed05c7b3b07ec567f3c20302047c435bb50067306502307c25f405636bd2d7c60cb3a8a95e3004d498455ed07612266c405e0a4ea015ddb5280cdb29c0a715a411d290969cac2c02310082a4ffc33d0043a0a0b05440ed36cd2d737d6823e0cccf1bce8b490cc5069b1f5b897681b9b87f28ad52ae9d9a43798d0302047c435bb500683066023100aa130a0bcdb80a894bc6b0b593dea5715cb04c8581afefbbdd9bdec987ac231edb9ac4649377f7f99450632c2ae96d79023100e187b141373fbcde7d25bf1858759dc8382d21bb374f27d4ec4664c05a2b82abf9e946d95fd1994a9e27892b8a59709f0302047c435bb500673065023100f4561a005dfd86da9d794570d285c7f9b4db9a1adb0b8e10e3f843cd411597bfc9b1781b36d872f255ea3840e3f30b1d02304b8c32ed06b2b02b349bd7708d9348a288b2113d16cfcb5020fcb0d6bc03a7372e9fcd14b83f7034b108e38163945d9d0302047c435bb500673065023100c9cfb6673fa12f563054d11dc61616a5c1a54dda9e097d1c750f6b853dcbf45f9f628a772d03e479debddb3802c794e602302c3b667868d212a18a346bcc72c829be8a79968f987d2fd4e0bafd221c126d4a5e8622871a786be5cd05c7e181f2f53e0302047c435bb500673065023100fe2cc2de7d50b6432bbc475c34d490aa5d2f1a0dec6d3b5dde1936d1aade0e307f2698e3719c61f9595bb49841bc96b302302f00eb9ea7f4b9f8b21917a7df88915e3438c0a421c2d87256c484af5d8e8fd5a14c6db71ec29f841e5c13c40dbb50190302047c435bb500673065023100bcce00308c426dae45b6af3c5382c8a5688228bef3efc9a5939dfd3e03a641136d772a976096289990e106124bda5aef023012806bbe5e2e71dd01ac262ba56ed6ef59a21b35ecabecbee2a3297589f6e7f4a48b325983c445c846d033985e4cd4e50302047c435bb500683066023100d8e4a621e605385247ad14044a3aaa4defcc551d9c53764d77774e71a38246bffb8603b9eb926db1b10cd8b40db6b427023100e1268a156892c91f9639090dbf4d0be30c72ccf1dbdc225d6f97f9f56f4dd78fdc7fa273b46a636aab53a85f567da8090302047c435bb50067306502302c55c96d8a75167affc32c981d43ddecc686437194e5675b87007d90caaad796e308d277d6640260b6286c1f7e7642640231009851013ecdb664b9b036b1c8a4608e890c03fbdfeb9b3a105678dd31ca11454b9e7f854406e6d6d2473b5242f179b6410302047c435bb500673065023100dfe09e1aed55dd7443f2e132510f9a4c72f28e79c287adad1edc238e8fdf889d44643071094780ce0537aa593ae487110230188845260650d25aee4f707086caf2ebec1ba2927ae2e4c0ad030778513deb4afe29c3e02bcffff72ea5bd6ac02b355b0302047c435bb500673065023100beebd0be140c9d22376c4a7106f10c2eeb56b0b9119d893bffbaa6c70f973154da564644f2235f461a9840dbf4cc227d02303d062c3334d31044417be373f9b2c9e93b7be8a1c9b10b1f82a72797b431425cb481f834f7fa2a8b8fa3b8d1eb4922230302047c435bb50066306402305ce7a357fe387b04ea276b1d25af4ed7c639bcf5a4cf7c75413241781807c251ebc90498ed54adfc2235db9152d896c1023016e2143222954218ab7240bd514a3d0382e72243e239afc4397c9241d47aa982794c1ec8496fc90b39d8a62138c3ab290302047c435bb500673065023100ef4f67275c4b3462bf1c2aff8dae2b974d84e146a64664c525b9fbfff395330f2811b8da7c4212fae3071084be333181023004338896bc6e7b94490f32f7fe6c3d4f7435953415b5c0525b085cf05b3b6aab143f444791c7870f727341abdfa644030302047c435bb50067306502300d0d9f3608a378acce4552f0a7032ec01af6c54e964fa00f1118ed5c1a12973b0fe26f0623e61082fb5181334581bd77023100a0d8b7b06cc627db3c0e693d50054656e27297386be205feb4cd87060d0d9448cfeeabc9db21fe68c6c9b657a0fd65ea0302047c435bb500683066023100bf9f5b350434f6e8f478b52ab67ec31be4b1415e5fb7ffbab74fa6bd291747400ab61e17b5d43cac51b3d711151e492f023100de3998eae47036fff200908de76b838b10cc985b8a7a4c4985c5b4a85ae4d849630eb497f5ecd969e3ee24b1ae575c6e0302047c435bb5006630640230795f750bdf652676fe83d3679cc5d4615f570b37f1eb01163be8fcde88d814d724ae50854ebdd8b7273567c2fc63a21302303afd5656d4917f1401bd46a6b188e098f38ca3a66574e1258fec0740044dbb1f446e67ee6e8c6b1ecfe377af6a5318ab0302047c435bb50066306402303b1dd219eae239289f4d71b6d228ae240d3942629eb0e640f8579caea32769fdd08764b070acb924665742e655aa99e60230638bd7a0e489324d8bd93998685afbbb9b1a9445dad4a5a3d435b151c5fb158253e72858de53660ddff6081891199a5a0302047c435bb50067306502303ee06f7d1f3394778348f3c1a832e22b46e44ef68e32a7c2d4b87f7d5f4887faaf14f3504e93804236b9bbee49cdad5f023100904a994532151b78ffd62db6bf0ca44fa9a6346a3ddbb84a4e6130100c23c901d77a4f17222f32bbdbb610d53e273a170302047c435bb500683066023100868635025f77ea2e0031cf172c7c886c1b5c476c4a05b704f3e9d2d3dea24cddead466deb78355185578a360399c2294023100ea95a73315c5db9018f373006c7c0cb210342610865a99611c72b97e9fde3ea551c74283969e0bb6bd5fa2fcc6dde3ae0302047c435bb50066306402301c4a56d9b64754872d284b29525564cdee8cb3786455571ab5cf65a3702074f46b3f8c731ed4ab012a6779047c7657f802303ffd5d1708d29528d90b87f4af7f84312afb472db84d067ab4dc79030c2fa14de675117ab899930b047afdec30314ce50302047c435bb50068306602310090c9522af3571f85c7202d36ed9b7757bc731a8a451153243edad09e35d9648051b4d3398ea1437809d5f547056a42f2023100ab05578f4f34e6896cc213316d1d0c24a25a2c4feba1d4918f918c21288a0188994ad1ec3f66cdde97146c57265b6c430302047c435bb50066306402307851ed77766d2d0d28dac9a29d956482693ba577f09bb2a39077f8b07c6f3b5716256025d72b95baf6b869b414f29230023070257027fa9c39e9540e0d3645aca6967e80d97c9436c69e83f316fd7c62256827b00ea217bec9abfbb30a3bf6ccd33d0302047c435bb500673065023100ce4ece73d223b4ef57f62a273cab8d780fcd5ed42edfd5e11c19b00116b76c9f83381c017a79ab0496661920177effea02306e9232e6c83ec8bd50d5a9d1ae9930bfb72cdb70ae8677472dbf4c79ffc5915a3f0609dac7bb2f126eef928e939e2b450302047c435bb5006730650231008d8f26d34ef757c4f78a272054886e1025af454c0645e988dbb526c5d6f6ea4c53363e30bf95543c0920bf07e38c019b0230091abd9dfb0ae87ec846f14d26b9539948fda6a9dbc6282be3a6ace90b554fe2c1f217a47c6ade7d818c33d352cf89580302047c435bb500673065023100f062d2e883c3ab0307746e1d3b4758f74a7cbaa3828727370dd2316a74ad7e45513a254723461c2fffd1ab67ac7e361f023028e6aeef8c42fca0078ab57d9d490955e3448b065908903feb962747a1cc48d55e601efb89d2fb988de9e33a67e1f43e0302047c435bb500683066023100e80b8242fd1e76e1999675b6fdf33edda4f04225c9c25f9f6b8132f755b5c8aa7685769f74780d46306f8470fc275b69023100ed977f441e00eb67f0c640fe380b6d6532bece811ad167bbf8a523cb42f297d7d786d6c005eb5bd088a78d9c3c59478d0302047c435bb50068306602310087f8d10b221c87092a5cf28fb1e9105e81cca1a3197b16ae804a4330a192e55b332747d0253cfcdcefcfe4ac4a2faf2a023100c724bc94fa1b3499d2749701a797c1f48850eecb22ff0818c52853ee8ea341988510286cf1a275f03f727c76125dfece0302047c435bb5006730650230327d76a629a900d622cac35b08ffcf05c018b3198b3eaf9f318de5652f5f70684b4dc1c44a5ed51df3f62b21471c2975023100868cacebab0f9b8b7d13501ea1ba004edc9425ba13db0446ace82cf918f9b8e597f46983b6343f137c3568886d20f4fa0302047c435bb500663064023056ffbfb54fb6c878e4437239122e3617161a95ecbf041d668b80dcd5148dd87db76657306cebbb4ccb5571b3d63421e90230616cfcdff6836294678e0ba1e78ee0c842462106b4a777004f29502657e0d4c27dc4d5a3d9121e35162b4ef0f8f9c80b0302047c435bb50067306502306669d29cf568d6e930a48e1870bc210eee6559a5c30fb4126e5f1d4d1c4f32bfbd9663e1cd126d8a37abc9b7805f2f39023100e972f019d43f59bd566ce47cd357779791e177fba93c164817cca813a4d8ec7b9bd2898eb4e00aa54c0389375b2e53530302047c435bb500673065023100e3f16913fef45d61d53ad78afc0989c6a70902445c32bf12ec8357531e7f24f71848043a714b0a984010d691fc6240c502307351fec00e8ac91e6c73c012598828397a576df508d0c27f38368ff104ca6d2862f4a326e8dc69ca01964598d13b0fda0302047c435bb5006630640230295711743c7b9e691791c9ab394a7909beaa2dd791abd3b879bf62146a78af8ce9213b1d48ddebc244ee7eec81108df302307aa3dc7b906824663369cc690ad7f8fd2b960fd75964dce814ed902f7342792e39b631a58c7d51fbd9ad5b94c10e450a0302047c435bb500663064023054a5800ca1b6201b48a2c1a18b7ab94044eeccb475c821199b446399b90e388bb965e3dc5ec3a4be77d763895f41033b02307b076b034e18a2f0c76cfb0ae3fd922321703042528a9c8ddad3233885cc42ba9394ce21d402c6d7c52cbf6c53a1b88e0302047c435bb500663064023023be27383b6daa7177365b8c218f631bd2ff5ff9a6eab49e7773dd0827ad135dc4656467b27a061f2bdbb915363ec344023044aa8aa6007079ab6b99672577dfb2ce792e6a8f0154812bc6b207c8adc49e5f17cad87437c6505eb793ea636a4d05fb0302047c435bb50067306502303d3a97556ae710069003797c1aafeefb77240eebeb61e5a331611d897788c2f9e95b57d4e23075658a693396c685d0fd023100e90a2ac95fa7b6c079511bbe300b4edb0fa4e1d55b510ac93d3dc99096a7af60f4ee1c6aa2751566587f67839c4800830302047c435bb50066306402307f3b5906f2262192e06869c59e19628bde2a97ef19df26e7b730890c7344c4681948b38870d2b4907cebbaf1e731ce3702302ba5bcdb084379093e701dc91e4b7ad722ba127403cb138a7570a3112da255285b6304a0abbeec77acd903a6a0af93710302047c435bb50067306502301df573d065f909f2bdfe16ec73dddaeeb3951feff3efe0e46d34638d00c9822c5d78b0d550f856595f8b875ff73f6f550231009b0529ce5f2189f64cb84434703330bf5588a8f41bddcbaaf7482f9dd016a8582adcde84caaa68ce550af93fc171bfd30302047c435bb5006630640230756f0a299090e046cbec4ad36d01995b8891eca539ef4761b3c6f0e59c57d2b7f0aebe8fd0e2bdb0dcd0c46ed999a154023070db891d084ecd30188c3d00f93c48dc8f2474690fe6ca0c9649a87bb946ed6ab10683a6e024c0966dd2e273aacabd4c0302047c435bb50067306502305467a235459e69a42feeb9d9ad7e7d35f226401e7d0ce1781d267e173c2f5d209a0449018878ada539a3590b17641671023100bc240645912f333865b8ead160b64b85bac5ed2b8c575e994a85c495d29c48647b62208fe732d0e154b5037895d7fce60302047c435bb50067306502305420df5f63127d41e0920501205fc6ed1b1fc7799abafb558762a95dfc3cf694777bbf55cdad18d9d7a56e1c427518f2023100bfa75ff7db37ddb99e00d17699eed81c6f021f81ce2a668c267c504153333116aa69f175261c6850dc94052974d088400302047c435bb50067306502307244df15f3a1bd250c3b18023773aa5aaa11d3fd73be0d5f6c63a7ed2d9dd488a7842da19481c6f2620bed4f3466df28023100a37b61fd4d4d1f0342b713293e5b1f3dedbd24c9a584838ec0893f87b231ec2f34170d5221897a243b514d0ef64cd9a40302047c435bb50067306502307b832e6ba028c479ff2ef85726604218f21f02a0596335800fa1ed9ff6783ef81ca4982fc5caaf26ff22173386cee1600231009e651263dbb4930dc5af5ffc6127c45563b41f958f61ef2b7cbfc5f9059cdeb6fd340b0b09c802ef82cc0a637e794a7d0302047c435bb50066306402300b957b594d75d9edbc9111e9ae03ca2ccf3b497e7226bf3ca4c1740c4bbda6c8fdf2c9616d09b4e0e1560582f3ef8a3b02304def78e6d3c51448b997edbfbd515ad31c039393b59925f0e4119b35e5c123536672ed6df0b711e1d93d0f36c30bcab30302047c435bb500683066023100d4f6a96c1ebb89b80bdb0053441fbc34aa440dcc2b68136c6b86ab82d10feaf7641e8dc31de4dc0026dbae59fb40e869023100e6d1fcf8764d2bb355b2034832ffb37d01f8cc4b6684d573805fe39c8cad444dfbe5293fa900862be9b3830550d61f110302047c435bb500673065023100c39141c8a89f855559c45e319d1a57db5f6d4e2c60604e68e287c060272dc207c3f42b6b4fbc84347df380f3ea19fcbc02302631bb6d51153175ca888ca85db1d5f8219472c9b48052cac9b15bce475c562d43d7e9607ae85f4a2b2dbf4099990bb10302047c435bb50066306402301ca80095220d9a9f2f6c1755f1fc47723f3c1a040d32393d5c19645148ec7c878983fd62f9fc975f221762180650e5f60230716dce41564cce92dce0960e47f2f1259bbc1496db6f0c513826397d41d38993a631e92f2b085a4252c409efd1ebbae30302047c435bb5006730650230431dc53b9afbb5bf2f92675888c6e236cec0a49685a099c2eaa044ac8aa8f14877bea671da054995eec53b44722fe97902310095190ee6ad987e424fc727beef12418c49f336f69c29bde7513dc37bed981535ea2aeac3bc90638c495f4ce9782ca8cd0302047c435bb50066306402301b819bda38ef9529b4e92625d288843d3be20b53c499e3d909ed114abf8ef772fe47f3b74f50320b82cb2739ac02a6220230443d67334d3c285c4a25c5f925cedc6b0991074e2d5d7e809aa4c6263019212e756dc26375f212d4911b30442d6399fc0302047c435bb500673065023057f3c8fc2ba58e5f1f26560fcf09abb48c0696f43728d7136a362ad734d6b31830b912f0949b0b9f5b580a70e23754080231009fc5822d666af3e551f3a7952a63fa8f9e841e884126a41e53b763f3a5f5a96e2f0951ccf605faa75d645a75a60a144f0302047c435bb5006630640230030e38b99333cbd34afdfd45d08fa908a6fc3b1ef632231d7eb631e93c64ca25ddf910911f0f5e23b375b7a04e4652a40230649caaac122e04e4ea3d676a324f872fce69bd40fc895b2abae09dbf4822c37d6ea87a52fdd9b82cb7b495b3e6e8e4c20302047c435bb50066306402301777b856f8e028bcc1e00d9bf8dcf739b3aa959630739b04093ea79b1dd3426a337ae73c206f488c35997a815afc61a302303cf07ced284c951b2b83c2e64d09d870092c957c1a468897cb89315b82baa79256686b932426b1eb37bdd52d477ee0b10302047c435bb500663064023026af1e9857b89021b64821c7eccb378439b00fc29ab82e8654fa1a4130efeab761522ae519347c236e2d749cd20fc87602300b8a5d1cc24ad20b1c1408a3c828862c9c0fbf2d1455aaad004c5cc768f1a0a1941d69784d69228a67468802dc74d2040302047c435bb500673065023100eb82c25a4556e9354f0c78d1be34f04ede936a47bb1922dd1f706321e72b8b15faf7659000e61f2201955c9f6942e00602306d474361e4740488b36e85286a14dc73cd7c2088aaabfcb70a9bca4ceafdce2152f2d01af0b86cca8eb1aff2308c35120302047c435bb500673065023100a25780dcc9e0a060b580c72e73671578467b07fde72dd747c0a458d229340c861aaf586f54adac8a2ca608ec496988a902302af5da95c0760bbf04f54e80e03ce7d2466772a5cdda7e46b2d35c8a4b002fcb0d101b8b9467c575bd89e6a3082a0b100302047c435bb50066306402300590eeadfbcd51aecb14f77dc479d9dc2a180cf7ac0d24af7b6e5d22e2da80e1718b82b47aca4069e2985850ad8cf89e02307b599101b0327f5cdfc5a239bdd7ead7420f768531cc2883b5ff6ba4bc70ac25363c9d9b4eb8cb64231ebda85253b9010302047c435bb50066306402307ad58b91d2ca46ec76a7f51fdf0e7af21386b5d5aa814cea5d73aac8dc8dc3e58f153a48b8b74292563c6fba0a04682102306129d6533c8416e6439105587a70b78f0ec4409b717a610c16d278f1e1893f4c33e16b9d5e55476bb366a3a12f6dd8100302047c435bb500673065023100e717e8b64d70902b0e123379712488399ebceada9041fc33ed78903a7cfc9a358f197c0f447cf27995544997bd8662ec02301ad6095fb0612defc86220968cc39596b09610f37f4b78feac3c898d7cf1e9b140be588999d2423d49e0fb511acb9dab0302047c435bb500683066023100c05f6e72f3001f2f376c3b6a4bb94e8ec7e0e3711a87703bf5f7968054a6c8769522efa7e69cb47cda4f1bd0df8a6da9023100f04170fe48419397b74c63a9ab181ff1cf389c10763efd50bc88a94bf61c32d715e699bbbee0f3ae83b22d4b81a84d6a0302047c435bb50067306502303e0e76442ecd8fa68c6102e28c2efb652967f5b51fde2d74bb83550c462f601921c46f909e1b593fd40c627d2c42abc3023100e3f4009bd0dfabd3e2fa30bca6a9c57e26ba5f538e294db1b27f8505aabdbb157fc27addbeeba4e834e2dbd3d67fa7d50302047c435bb500663064023019220155e7802b243f7ca0b1b5175eba46dd5b0801266b10b98aac8476e5ec8714169e01764aa6c13e0587048cf168930230606c6dc8bcf65f9401a6de4ae6771291f1679399895deaec9d08441ab77b7f095b6bf0ed5a38ab75d8b75397a0b12ca20302047c435bb500673065023100ca56e8e5eee344eb2f13528cefdfd956ad5c4f5cadd05ddd6b68f03158f5dbe48febad2ee7a569f9c66d4d2ff4ca0bd302304c5e9c992aff888df40ae6d203c5c0effc269edac83ac97bba8ca9eb654a5ac1cc5688c88d0de6fe4b62dc30f1f653390302047c435bb500683066023100e22a66d32aa9738c91fef8fd00a164c84efd144e5aa5e4becc3c4a7d941e8bf4311c8fe9ed0a878f426960e35869a3ed0231008a8f96f884b2e4f23e59178a8a37222822ac6aafc752e6b84d39c0c172e1358de1a320c74af57c8a95068c589cbea4290302047c435bb500683066023100fc7a4d479d380dc13b46f0a6c31eef6321a8d6b231fae8ad1d4f6456442137e3e5a611fa15895bf15ed9e101dfbc3f68023100f8acf7a6a9fc9328e515f1d533028251114b57a6ed968a2e5035ccf8fc893d38c33947037659cf6645414cfc808ef4a20302047c435bb500683066023100958e112f7215cc2067b891d1a390aea348722d518379190ae91b6a7f1f04aeed6626ffa924fa47ad5b8ba5a7561966660231008eae721c20ee7ba525d06a57fab65438ef40a176372af6cea00e71c517be47265ff5c23073b0acd780f04a289a3506ed0302047c435bb500683066023100b05fa54e20b498b7a04aea5b0eb15e9bca79a3be81baa10540c962c9f068664d3b003d5993a1b53cdefe1fe121c2f599023100ea072e66bd453303d4c90a01f0291da9b32f5ef15b7581984b0db41aee0fabe4616cf452fda5498845bde0c588a839970302047c435bb50066306402304f8132cb1b892548767b49190c141f12fe942092086f851e3c9b2ce969c939ba0c828acdbc13cf249e2f66c9e72e35db0230205a10408148c26260fd682975add01878250efc80c03cb7105a2d914823e5c44b5354bc2f77fab7294162b461af56720302047c435bb50067306502301937ebcb28af30a6cb9185aa093d6f44a2ac0e77df568c551222b99e74cc661a2081e3305948002738e43982166bcd35023100b77609a3b93a4ee7628f90f825a347b28aaa98a85c660b45288f10acd5fd9442ad94a19a2e85f9d8c54afc6cfae706a70302047c435bb50066306402305d35a67795f3958e674de054e889f168f6484e219f89fff47684107b7d871864bc02ba8593d9af5e9c1dd6dbc0ea7ef6023062f4f32b09ea333180f72419fe51a15e0c9045e1bde27abf6502dcefd9ab1726e973745eb3e2b5586af51c632efce93a0302047c435bb500673065023100fce2ca033e9930e9e81830932f138f021f2e074d84091ea60ea1e6be0413b08fa806a951ae378a8d0c16d49028f651550230294ce0e121db4d22be9868735401cf9d672f8910381595327b3ed215822802b58caaa6dc1aa3726e84e98b11fd08e76e0302047c435bb50066306402302d610997eb0536762579abb53bee2b32a73600196e90ccd89441ecf711cad55ee255e48ba157e60eefc786ecfe94e3d7023023edf6fc3ac48a2550cabd3b5086f6ade342babf408ca9a399f0a120b3e5666112d01b6d3e6ccabc4e4069df6e4e3bc90302047c435bb500683066023100febb90d31ba46daa5e7c1b85244c37445a76940dbe14bd0038591e53c87b228e73ddd16747299799a653ac3188eaa68f023100c848048612aee3ca5e43dab26585e4ae34d57912d9971029b0061295b13a902a2ceef9f5201a982ae2209e624d385ef20302047c435bb500673065023100c471cd615e8c4f1c3d07ab65f4956d49f5ac3d691aaf8fb0452346b40fe3968f7e930b7b9ee7def6c946670d4127ae0c0230757e533593576096361d3914f39ff07231050f4b18d505ab78ed04876d2d7840bd70a07b8e41812509f5baaaba15440e0302047c435bb500663064023041ed5ed3914413395ef00f9b19a11809e04e7a601e5d188a242fcbc823f53a6d24c40552c02ba0b0ff0caa42a38dfb4c023070cff6327a0c437cdb088a2a67eb52216f5ef9657be44d4862e4a0b9b1aa9e08e0ed0b53dd59b3d68eab253a749595360302047c435bb500683066023100ae4512a927914e9dbed2daf356ee858dc036160e93350096205e4b37dac965e4a237df07ccc06232ff11b48ed14f7a00023100c32026ec71ce636debf09e56b20ea783f807ffb137eba432eac040f581697f707d0bd5c691cf2ca0648f027e14b427de0302047c435bb5006630640230322def4f7f079ffdee874d21c209edb93568777606bdd1abba7daa0607569fdee31b36be086b689fd71b8ce2079db85a02300d86f78b6d840557fb4199fe7a7145afe674344743e5a8bc8d88e715adffe8c34b89079b2e0f834646f271ef68a9ef570302047c435bb500683066023100cce39ab5121c6839decd2aa7fe39807331988acc2bd7d69aca653a9975e39b38cdf4615acac4f4942ce58fb4b4136036023100d1bdd29b704745b25ec0b2ad2d7d6d3c6f8247061a19986ea02e750ff2d25b326eb7863cc4f16fee4dc9f81ac58ac8510302047c435bb500673065023037fcd7956695c0d83f8ad831b00024aea1c943ab49460a0a6c33b8976fad3c8741c06dd8b4c3a12c7cac2bbbe7c28350023100d9a11093fb2e25930b8c2188775d27f5463f9f47e48f6b724a9b7dd7ce84a7700f4ff8df54e0131924a162ced14756610302047c435bb500673065023100f8778e82f952923a2389f22d0165b7e5990ddad0d6f9f39ed680dc8c7fd6b9d6ccdea7293525cd03201c79f1c6d582450230531936eef081b88dc630ab524c28d1d0384dc3fa7287f445e359c0f6da751af46b0e48cd9b9f14bce6e9f3103fd8c23d0302047c435bb50067306502301c62b07801ed93652d0d0774c6d5dd4856c675770716d9b56dabf0c693ac87b4e0506352de216863d435f6595664ad58023100af47ab5196c07fb53d4dc31ae2a69fcd8e06b5c4e644ac479b16b7e9804f85bcbf81a666eb4082129e13be341ed6f11b0302047c435bb500683066023100dae6c1154b44f59c20a9066958c04fd52be23208b9052a791889252ef40b4555b8918215819af1bb4a99241635886df9023100a183015f02b046f64e41e3fb6ba5f78e5e06c7a7b0086d60c45576b02c70e430f741f538041f4a3341a29b140e29705b0302047c435bb50066306402302d6367739a3ca34c81ad9f450f96aab0b1c1aab8366517c79631981a37c5e61046d1bd1e4e2e9728b93de63725c823020230317b72e5f0f6630372c25b715627b0e1d9e9d3fd62fe6af07fc063667e7e109145cc43c86d7d398ab38e7a3b3c73c3cb0302047c435bb50066306402307aea8c6970f28f443b3a0341a6927f540ae3db95608ed440601069d0609ffbdfd284a5c6ce881cc2f951a1a7518c330402300eaf2fb16a2f6308d07629097b30b005da1ec42282910d7cab35716ae9d175492c616fe21b9827d9a2c3b141bfb7a82b0302047c435bb5006730650231009f87da65eaee9c689878ff88d626e18015cd920ba7fe52dbf09693a66ecb7b39b1c7bb2911ed019cac6a96358d3748bf02304e71670e52d1f31ad851acbed0bfeba0953ca443143b9e91081165438e80d7db6a6ff42c93c78d3c1729427fbc66bf0c0302047c435bb500673065023063a90f988bcafaa1340dc67ddbea345c5e3b68e0ea4858c39c69b7f090ad9519e0977a51fc2b8e95e9c8cb28d07e2f45023100f7e2be1a0da6a2f863ac3b71de83fe4469fbaa6f8ac8a14c147af5f21ebd2801fdde49070a318be147b3193ae9ef932b0302047c435bb500673065023100ce55b57752f32976bf7ffd57697fe90322bfa8251bc2fa2b22b3e17fa081110ef636a9024051b4a4144c6a555111c9b802305ad9ad944a4ceec3649954e422c0654b7043f010dae2ab3ae1b451b68345fa7cf5737b8c75566a64f5a9b73204648ee90302047c435bb500683066023100fdf9857c5f68ed83b588415bbb2b1a266e0ebec3cb4bfdc15f11ccdd770b947ce0bd5bf186d76adeb2b8c74322a4477902310096ec051f27878a23579c60e0713114d103013d3c9937e04b5f46a58aaad13e5d569c37d7c4a7402c54eea8ff1a98ca640302047c435bb500683066023100840031047fb03c72349efe14986acb2dd06a814db40432f41169c03fdb50c22bc43467e81d797539c93616c20aac2ef1023100fc0070c0ea29b98a6d905558358d01a0106969a4856acc35705b1483fbf53f657818748ebc852bfc7aa0a80c8d6c575f0302047c435bb500673065023017ecc8da3d2c5fa852f4197746af5b1ade807ee3a4dc7edd09786890347fe75b215abafe8ffdb620747ed441252466aa0231009a0dc50516d8fbf9613b809dd5e6c0f2904cf776d0ea67c589a40c5206dc987b58034d68edecc1c3d5e9a222986fa06f0302047c435bb50067306502303722efe176fd63901c4506d247494be4eac0173b1a12430a11988067306bd76c46942e6efbbf84135b8ddc2439621d06023100fe5c1eb37a41a69e0eea188802560abeb704853f3642f462b3d6fc874aad4a6c8dd58b4ddf226a7754a8372cea3ba9390302047c435bb500673065023100ef05993682912e3f1227db7470bafc3398b529adf4eab0a9a393bd3bc6ffeb7aa848c9fadee673273ec7c292478f3f4e023021415c466215ef32b35a379bb9ab4c2271617e39734195d3dd2dca176731b10a29023a78308b493b2d9476bf66f2b3560302047c435bb50067306502305448f434ac70a7886a7d955f530f2813e731a93904c4423f192c2cfde55178d41676a7d5afd6f16b1f639894bab52808023100ee9674c1e989cfcea1fdfd52e394fc873937128825aa1ede4fbc9c1eedd8122eb977e86fc07c2b4b1fb52f899b7576390302047c435bb500663064023046bbebaa59b1daa6de18997ab93be7000a92f9f0678190e086d0c12b10f1a54e9ce413becc40705b933cde7bcef5e189023016d8f54a0977933fae57cf2386e9613a59237e789d7c1224b56e94bbd545caddb56e4d7839c04f95014236a78cff41560302047c435bb500673065023100d25fe2a321200b34d281878d40d504b2a081f089a9b30f8fcf3fb9047bb76cf2abc35577a7d1c3cb2014fb727a6fc0f3023038097cada6045fed62e8dd3c74875f07395c1bb369d2c7d2cee2a9bdf6341ac47efd50d5fd5e0ce408bd871baec97aef0302047c435bb500683066023100fe78c53b5555f9d968dd17852549c7f7a00fe15087c3d26c0af8fb522b36de278400aab69084757d89e742883082b16f02310086f734b4a9223463d32b0fbc2ef988c5827b4e215478a46313fd47a7e7f838ac8e9fdba8e26c74577573919ba6de87390302047c435bb500673065023100e41a929f5857e44b02860a90d55322b95d20fe55bebc1303873b5183671015a27cd55a6756b9ecc7fdf08a8498e1a188023057f74fa9f73bed269cc4cb7beae064a05049bfbb7f661c68659c95754f1cc04b61acd46d035ddaaf0ff890ef1fdaada60302047c435bb5006630640230281d3848342ec28365a47206843f02a852c2c1c5ed30842645a0cb10bafc63300bc9a86608afd543fe2764debb354d9002303e43262b29e7dd9f6aec2da818b8135ea47fd38e94ece8453298051c8c8888f46b86752eaaf2dd7d65abe0d6075f7b370302047c435bb500673065023100f554d424e411e872c9507417b567cf28ed9114e679fff065c6f4051d22827bccba2c1fb6410ef13343f505a5f968385302303e43d6eb4831d7fefd4cee195a877a3c2655ae26e4e73eea70d7bf9084242d52b3bab594faa11d47f8b565f4ca669a470302047c435bb500663064023056b2e3825457b6c76a0ea09e05171eb926b802b57e0d7242df0711d5e6aa37bf25d6c8944840edec1bb6420973c9543102301ee35b00c2e18fcebd6f88d4aaf029ecb2ca63d8f8e4b05a0adb13fcb3437da68a0b959efd63f7256cd57c55d2901e830302047c435bb500663064023067fc24f9bcef0e937faa82edd9627058b2be08961de67ca9bf0bd65760446b2d1d125b27e2835064ff0e387d1ef795910230063825fd0dd40a6a4d3501fb39cb3684ea6aaca50c59cfbecf8faff66c590af50ca3a7456809f79c77c4508c8aaca4dd0302047c435bb500673065023002d6a820ce6f5648bcae9e4957d01ae52b634085e70f407d7b4ebe1acbd349a681323f817aec692177338ccb207c1743023100fe47e21a281af664a0ba7acba8835a4abce1dddbde96fd4f31827450425b5f789feb203fb91cab581c5eb610e2b84cce0302047c435bb50066306402303d7c51e66bdd01d2fe1bda039781fc929a7f98d0afeb9462255f613f1fd096545aa6d8c739fb39b7da78cc5c92b076a902300310b46d0ea91382fb7183f12929c0cbe5b9788feb66aa35cdad09035750c8bc072e63332c386d1919118144593ecaba0302047c435bb5006830660231008a13e665993d04f7202f94b7b3f9200e516ac7a7bf2ade908ad3c4afa4f1560e7b4fa9c2f67886c8434d1ba717c256c4023100a1aeb6a3cea9dc5e001939b15226a3f9310defb5308942c50444e4e6512aa828a10b369326d7bf2a8acd12209bb3c60a0302047c435bb500673065023100d3cd438a795f14c9fbe9dfe5e6f1f7c53029fd7575efeab06af7c1be0c277f5fb9cddc805f5d68b70550df9607bb66d1023053a9c5d18b7eb844231e515d75a85e51b2100ccb2f74106dc8dc6a97ed5904e9c5bf9dc71dcb5043797e039ea86e3cee0302047c435bb50068306602310086172d39eb8437308a88b937593ecb39c11c0f7f57822d8bf1416066791971f0ba65d9a56c1db754e8cd63e350c61da5023100e123b5445e55618f659975034bf274279ff8572951d81732689b0bc5b2384e95e6e0946f74ee82a10428bbe70a1d574a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f3b429c8672ae83191c7c29c3e55bdbd30526d12e33b0dbe046c582d3e323ecb5760871d2081014dd295ff9df91df0af023100d77aa71ea6a2ee871ba92954e8eb2c5bf1c5f9680b4f7c38b793409b405be5580656e5b434c5276a0f44c0dbe0bc1c0e0302047c435bb500673065023100d2ff8c6e70b8a606ebab45123dc35e018732b6fc540cf71e320bfc522d08102ec1651a9851720ea642e4cb96420fbd44023054ad3604375a5c82e86b342261c4f99fe2d13d5495dd3a07aa5e2b1bfe6ee9e6fad955cb3f1b318b32595a87aad4ea5c0302047c435bb500673065023100a2ecf6cd2aeedd33bd3a4a41424353a5d895792f240abfae64fe38fc8a27ce6a95003b0c6deb00aefd99a807cd6b89ba02307f35c33e891c9d8c58a2e6d3c8bc44419057fb4f3f812d00ec5de8d55966c6f365688e39bfae22403b71bd422a2a5c810302047c435bb5006630640230466e795ed80ba23fd3dca470a57ca263fe1909075a6081b8eca5a6623d4e0ad235985a9e720730b12b95470054d317fd02306cc6dcc7823d87ae3e9dced5de5d17aeea727e3de65501a4a192343ac1df52cba91a336b98a1d73b1a858915c4a169090302047c435bb50066306402307f5fdff85cf44f73050f4b6a9d034de5b8effbc53295b49771d82538b3bd797a5569ee4bf2ccb6820264bb462ef8df8102303ac52debd4d5eccf9eb0e96a088a060d38dc920b172653ed7294e33ba8dbe2db8397dfa4a2b10d513ee157b636151bc70302047c435bb500673065023100c3fe90c19615c65d9f6bb5d48345beea9742d8510d76b2e387f5b3813f0af9119bad3c7baf72a5d96b3d0aaad99c90de02306ef7ab8578ae6a6dedf737c270cc4cc44455c22370b82d27d39e0a02af71a8e1cef0ebe1acb4b3239b5c3e8d57af291d0302047c435bb500663064023065f9e73963e4d0ff90c32ffa8ea63530a42186d4857b88bb8c880fcba5193bb2e5c862d643886e45b400e188113f092e023056c5f815ecd4e2076ad73aecc9973d34375fef6e22b679dcef49d20e91af70a728062c5d62ce1dfbf613779033b49c3d0302047c435bb500673065023100cc0ea2dc480dfcb375de060c615ffceb49b147a89dc9aa870be52c04353d396cdf02cc87f900f63d0f3a85a3b4a5838302300f97460868f36f370b81ccb85e7a8e820fca7a725e0352f53510a3f4e74afd2acb07b985a9a5469fa32828a5435a0d960302047c435bb50066306402306527e7243a8f4b98599aa85a5d31b0e211a7ccb48e559e5ff2614c1d31379bf47083b0e68b77dc3d9b9ce32abacf40d0023002a23f4886f1743fb1fa02fabb33aeef7dfb03e2ce4f9e1eb972c4c2e1b56a25e8ea592f030386647566338c364d75460302047c435bb50066306402305f49b0833bf9ec0a5957d967c3f93394d54b72dfed83029f2e6543493136ab9cf0720f55a591e8c8454b80f2a33fc6c402303f0c6b8f74f0336168e847bfe6a9e5b2b832ff219f9e0837bb4af39def61c4c794925ec99a262eb30f18f9abb104c9610302047c435bb5006630640230582ff73bf0c2ca242041c2b3452c4eaa5d858d2551f1b7750c292c86c9aec1332f0ebe838c1b73e97282592e5068968502305580cf82899e232a53d66b44e72914c751574c34d157478c3de7b5c0db59049eae2cc13f4cf5b478fea568c564c6b48d0302047c435bb500683066023100ed4f6ec26ea58ab707be9e0eaeefd7ddcf8fe33dbd166da7d4a81b4009e1887ff2ee1554a85e89e75d59647d507c3550023100e624e9a917c14baa45f06b33c1144a42fafa66393f6dbf3ca29eeca082641705a624bc26961f231753fd63e13b3a5abb0302047c435bb50067306502310089893ec49e2a683927416b3de99876dc41e700aa4fbdfcda3e57306705eb1a3844df7c6535b689c9aa18a4ebbdcc841e0230252a8700559c490525a482337f67a7939edb010327838228167c131b30177d51b7b9ebdb56027cde94c2873a183a52810302047c435bb50067306502310081d7aaadd72be395e28d32203f322e6770a909b97b322b9103bb6a8b12710ddf53b7662c1b20579aaa79770ec5bbd7e4023040b5a10aa538a0b8caef17da050eb22e4ec895f0a78b34181445ee8b87429a66215778f9ee2ce552b600bd7cbe959c220302047c435bb5006730650231009797649d804ff5198d6d9dc9550e85205ee2d49992d10ab61c16c349f3df8ecab45ce830beb85bdd00755d2de6589ed0023041ab89570050a4c9452a0b9ccfd24a98e13469556969535458cadb28e7124e7143d5f902f3287e0d126a315755be50e20302047c435bb500673065023100f555c94a239970b95ba591700fe9d10d0fdc0c25a0b340c25cc44a7763a076e02081cd498feb46f686be2344b0dc98f602306bb79c2571eb312074c35b4edce84984c9262be29416a59bc16ea84c6013598424acae94f5fc6f07ec73bc3d582259f30302047c435bb5006630640230247de7ceece3e5d03af6fb3a09c520e448078e87caa5e0936138fba299ed6d5c7a5c7aeb459b186adf058d34e2c0841302304e2ff956fb6402c9735888985c14122012a25fdc45515fc249df3909fea9b75c3d5dd4d901d73984519bcd860f405ec30302047c435bb500683066023100dce87f6c8dcb2bbe48b56e81422ce96bc9592bae07b598e12693940a06848ee789a871c48fa3f109321f8de0db5f86ba023100ac1d6ae88814385e4d09b7984335832637e6913cf91d89ca48a3479c6c1cbee98aea95a323edd6a29ec9a2a7268a92270302047c435bb500673065023068dc93b0625ac783bd0749530f8c752e373eb59c5a2e77eab1f28fcf91e637251c255eb1202ceae25d63d1bcfcca87c1023100c7a88c27d0396c494f5c61be3fa3dafc3853cd4b380f67bad067421ca1c75d88a7904e97c862de9320610ee417f8a3470302047c435bb500673065023100c5315838898820ef1e1b9e90b0adbe304fa87ca8af2a82d528686fb52d05e1b0997ea9531e7d74c30ffa85a7361f89f8023040835decf38b608d70825994366fc9ec644571602d1f2720f50b1ccbfbed4f49d16d19b9515579109e4cff6bde769a1b0302047c435bb500673065023100f457efdf12061b31415904e1e0d6b1a76329f6fb8e4e09fc06b15efd29a0c9a24361da439999e9f5bedfc161aa9efd5402307a761ece2b2c7b9f670895786c0b7dd14b7d75d3beed6a9fdf1215df7c971babc684ff0551c83c882054e58fe49cb4ff0302047c435bb500673065023100a6b9a27471309f251d5a4a141f45b28238a9dd3d70b6b85c2170048a5362e070d190f4d9fbead5e49605c0244ba2993a02300b348869308accbeb66ae94087f737cb62ddd7891259a28f8d8d09376bac6e9a0e7cc3824c0f8095fb98fe79350e8a130302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310096f57b01f308920ed574ea01ba6f39352bd4e7d9da18c6507acc1695e37cb74c3160726b9413560762af7505ea6076c402306d7cd5c5c3b05e81f2e52c288897e7953ba335b42f4a2479804b93e3344508acd4a6a155b5d417fe0e1271269d399ce00302047c435bb5006630640230017fa81bd221521c54ec5795c63bc74dac5c2a108272ec2bdd40cd4bc1834b28da613ab7170cc2bed578bb23ac91637a023078a10872b700372346e5a9d6adcf15a95144d43ac403e8d06f4ce7b744c6a1e5b72d566286bc4fbd5c4ecf2c825438830302047c435bb500673065023100b4e957748a97ab386ee2a7298f7bc3973edf8a9dd3e449b2aeb5ffbf32e79abeabaff5e3f7e8efc68b7fa6fdb60ef7ba023017f4ad9ac083aa4de3611e360816c21e5b2b213800b1dd3a8c31b74d3651151f6045d1e3096fb97ba57ab53489f21e240302047c435bb500673065023062faeafd15dbfa7ab1204d7cf92b5678a14f90d9819d02799fa727cf51fccea4419329d3dbd6703e385b7415c7380407023100ebb2be542f0a330f2110c321bbd52bfca9c84cf3531aa9b2afbdd542a28a99b79dafca027258ec7e415b26398da7b2c40302047c435bb500683066023100b81cf7d39f7665225a10774cf5a2e61a0598d849ff9f20eaef4d064c9a9cf862cb20f78f15b16727297fb38c66f3df14023100970221f8e65ea97501e607f7172d6604721839e9feb61d3e43138992a84ac4d83b049b4a16d06a318c6681ce14b65c2b0302047c435bb50067306502304137219a34f8245cd9fdb01c9ec7c76676cb4a1dedea86a687f43a0cc0425fd43c38b901a7a24b1fc106692753250625023100b46eb3ce00129cfdc683eb554049e034e25caba336d2d4ae58f13e26b865b75913755b951207acbaf314bb9cb1f75cc30302047c435bb500683066023100fe2342f5f38e2c0c7c20bc35d1ef9aaa9d7ecf9444345352747e5547ab9ae54d086a3d50333e5046433bc347f4e9f906023100b7a1cac030781603b4a8ffd7c56376ff0090dde7f6aeb338610bc2c5eb79ae186b291c362e14ec304963a68ef1d956bf0302047c435bb500663064023100b090e9bd4430c3dcc5f32b5a5b2df6f34b69504508ee68e3948959913f8562110682751f2e05e44767a9b18764ce61b7022f3bfaf5003cca0f1707d6d4ffa6e3c5e62ac600cbe8486f753bddec6c950b85bfc3e0861fe968f625d129a9dfc965460302047c435bb50067306502305be90f2f6b803d32ca04b82f8e33a3fc155c3d0c2c2c4de00244ac027e2c47d2145999db3ada77f49bfbf3c65a8325610231009c44b7f0a09a03e7934488fd8c4f3ca48d5b5771ea8cd12a375d9e27127e26e5cd9946a7acd6b4b0a7c594331bd1479d0302047c435bb500673065023100abc2bf22f7268afaf87eabb323912ca56cbd25986349a8a4641d3a98e57d693e47bfd8df142c0db4be390be84f7a82cf023074d459eb01d8f8a76223d3c514ce61f1178326393a8e5b32eff4efe9ddbb67a768d1bea29730ea19dddab68bf57cdfb60302047c435bb500683066023100842677d68e9d45c26088438d8c5d0cb0bbb6eccc41bd4119dadb3aa4029efd4b49100a65a14cc29b4d9dbb335879d1e3023100f0c4d225dcbfdb738e9ed6273767970ee2fe3df1549d7997e35167df83a5cc8c7943908d1bc6d2610e2e27ffad7928cb0302047c435bb500673065023028048da5ef749c841b312103f41a73825e6a37c8ac513c4acbdae53c561ee796a17dc644fd4a50091f074e7c3e7764a3023100e1e1882445e92c1fd6b0f5ee5a7756afab7055bbce31236d4db42fa55af18a90330b4d6636fd483545ccbd2314eeb1550302047c435bb500673065023100a9bdbd73e1b3d5b06923273d839700eb177215be3a06a23050af944214a696417cd512f6ea341f751dcf8e625b45c36902303f98121f4e555794da8e859bae2fcf7820add56a90aceb970f75b792756fe563932bba51d758dcd760f977d1126f504d0302047c435bb5006830660231009fa1333ef7edce656f428e5a03cab8e4a429bbf8e492ff6b878e8636d7ef99085520572d768ee0a0fa5d9ce2a4690224023100eba172dadc9349987870d98b80cd76acd777fda7673bb254d760f74a83f95c9f080cf70148f96d8c3dba072ced20b81b0302047c435bb5006730650230529c3a4e90e799cd354be07f4c3894d58f3f7bb008ecaa6f8ec5a2b97eda0387642d0740887486cd7e84eaf2c01a890e023100982b67bc00c5de67f655b803d5f7ec4d6c6cd704c76393a5a943ff97f6203393df9d64aaf6844d45979dc6748a11e51f0302047c435bb50066306402307d4194dc81be4ae556a6ba122e52d0ac13b6847a344a1b0e6f0bffd31cd3ba196c1238f46f8dd8ec9409afdbf4834e3502303deb223af03c3601b2fb1da65d4a074912708f9e8211c2289c0de41f957c5e6c5695a6172096c664f19db166a878904f0302047c435bb500673065023100a8bef204e478c56a0740d682f30e32f7c3003547d8e5f30d702be7f29df37d6dd126f65cbc2c0f044b54accd38374c29023046435ac51b38b94c70e98ec8b6cb795e543524d13219404175ed155aaec04c54b0a1d6ab62010cfce8a8eeac960a17830302047c435bb5006830660231008058c77730fd62e0b96206b39f4fbfb5d0c9ae0170c8d3f764001f998705e6d3c0e29f602777119f8b9b077c1850c9ec02310081d1698aaeb044497e6c4dada0b09bd050ed6b96fe3fd2fa0d2cf37f776e6eb0de2cbed8c903d20d9fec27945be506f20302047c435bb50066306402306a52808bcc456dc4f1e8d9c8eddc9fffeb484f847699e0bcbc9f1ec64e9fe2ff91533e9836c38a4c514b0c4429a2608902302e2f9f23f0f4b292c713ce07cce69ff0c7e593a2a73f29e0b9bc17295e442065d4e837670779b242f9b10967db06d2d00302047c435bb5006830660231008427b5a78faab771aead742f126c92a295a1888ec088abadd18cf25025ec6df143f5fd301de56a94725d49878455efa702310099b9f038f0490b1d1dcf4035f87a28443bf05b26d4e8add55fa298e48f38ed832c59b9746a1a73187bd693d0628c2d7e0302047c435bb50066306402307c97572bd4eb9f2e11abf5459312214bbf59a16a91acff59b575c96899b055de86c11c3d14924ceb7a1e1f2dee7281b30230491e8aff5739eec97c9da263a895bbdbd61b8a9b97d56560376727ec36b22e3fc0a6c5b244fd4171a56faac5264623f10302047c435bb500683066023100a2ae957c31f8a5d02e101e73baac6b6d2abc6c022fbc143879e056f885300e7053f99aad0fcdde90883237d6ebb7f36b023100cbac224eda0e76264a41ee9e4db3a472e8468c9dee3f26567fb425940672612e3d47703bcf2a1aa43962072cccc498450302047c435bb500673065023100aa9697f2ae339981ba3716b2e7ae730c413b2647ff51a33d0b19246f3ce2982d66b86aafcbd2161d08f78afa0cb97be90230411539892dd4937fd763b28c061cb672e28749fcca07ea74ac33fe2091ea03992fad38b2985b478c6dca2c8275cb39230302047c435bb5006830660231009dca8a4149c734ababe4e41041370ad01878a82d43fa50da256ce9ad9ddda08102b273077cbf51c318eee9f4efe137c2023100c89d89a2c0fe0253db829eaa5e501a6165a6e8496dd228a304090eb55475313011663d543004ee54a23288d6699d56590302047c435bb5006830660231009e79b885067d5978518786af388ffbff7d8967bc291f8336314b24d80664e32b8d512b4c2a51a4c68845f4e70dbb8fbe023100d059c13f993ee5827a76c60ce2076572fce4df6fedee682bbe809fe88910e15fe0d456c5e7d28dfb4d66a5851671cd640302047c435bb500673065023031856c78222da9cf717806757cd3acf6c3483fd184c1c09c1debfb024bd2ddc6d3aefbc22a9ca3c3fdf3e263ac5ca76e023100b081f1e9340461bcd2e8809b18aee3320e7488c0e19cd082f397f513a824cc7800a06ef3e6ff47a832f796e5f07a7c280302047c435bb50067306502305c8c5eeaf876300240af887c9f7e37fb9dcb60d2d3ce8c357893a623f797ebece20ee6f6af45762144227e2e47566e92023100f4922c6fdc9d0781c88e3050ea54e161b7b3d2e7406e7d6e7a645a72b7564ee55ddb97ddd15931cb6e1e774cf449d1940302047c435bb50067306502305af6c2549b5c8895c65440719e3a8172edb491c7fb77c5ba24423b6b33d70d9deb78ee947b60530526751bf9658ddb82023100bd4e7ae64645c82d2c6a60c9120af81a45c6ff888502f2f56864a126d624c0a07a065eaaf916e5bed9d937c66bbee45f0302047c435bb500663064023014c2856671ccb50b96e03920805207b58e66adf4d3c8beb2f953b461c556a007e174d744c7e2707332c55429f4e27f67023061e133d5ccbb7cb14bbb425c7ab94b917e77859ad6ef04a9f9d2d4f9e94684b270fc7bc2e83c3caad6d931e0d37c0b750302047c435bb50067306502310093fc959aa49de7e6423cf2081209d17531f0bf3090311d24ec73bd3d64ef99a21bf06a6152b53a0ed457c6f76fc64825023008188e8fce06add4eb9fda05c80b5e505ac672894ebe5a2f0863e07fead53f0616a6c30e0094e10dc0cc1b1d4456dafc0302047c435bb500673065023065b5a431100452e259f72d237d2235de0652fac0bfa376a5a17129250d9966c4e566ff100c9464c2c162135e4dbbaaba023100ed13afd83fe3cd30d4f7173a48d59f119d271f713eb072f02fb7f106d3d0f23c7d16c31a4476ae3222baa81f1e3dc21e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023032fc284abd537a41b49efd3ad4384e4b0e97ca9352b1e7b9e595546c7b4c7c98a0c7fecd5284173fc1031c6cf72efe3e023100d91002db274010e2c185add3c245ecb85c0064018de6e00cccf6d171e72a31e4f83d3c8ecab0a4ed5cc2c0e724e3179a0302047c435bb50066306402304ab032c9e3dc0e8ccfe1fdf0478f3c053b82a20f997f8e1303fb0abce7b5279fd20ae000f2f7443d7f069b937ebb707a0230755ede7e2cbcf57f1125acb9c6a88d7b12510323d939ecb2badc9b085a16f6c160d425617be4df69129145555d1cefda0302047c435bb50067306502310088cf6192786f88b81aabb4c253be219c94f69807ce49fa58508878b62f354a4506df214473e63944b9e46f5a1d76d0c8023074d8717d3774afdc500f723afe0011b8716cd3dc4ff718318a6cbeda32dd6131bad531291c5cee0c18bb1870806fd3b30302047c435bb500673065023050202924e4754a67815bbc6189ff229476198a20fdc4575669597d1442a44d26f17014ea45965ada7c9303286146b21f023100d499dd7cc76a2d758f5611237a9ae069441936a1132cab91db126a87fae646ca3082ed0dbb5d66079eb760688a15f7780302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023029ee3e34ec647218fa3bf4b22a804dcbfb78912c150731b007482f3804f5740e63c1866174009dc5b37962f8fcdeecb2023100bd76b855445995693a2962630542be18f7a37399290aed737b6586c19e3cbc8903f9fc05e74fd4559486c9a6ec9d62b40302047c435bb5006830660231009241076b199da875f5394ff06f94ec4ede83696b990b6c21f2df84d8e1b948812457327200fd59ce26499c6b9b4dfc37023100967c0e9fd46e3ff3233f570a50375af369c87b6328dfc974b02c184a81a4cd0924c9ac23cc536d9a3d853bb9f85f42840302047c435bb50067306502301ab91fd93be86b42465c38b007ffa27634ba7679dc4ec0da97673ab15dfb8fae6380dc54fdda5d65634de24be872d82c023100b3792c7a1ca650d517719b1236e39148ae4f5c98b7bcb294106943dd1edf7efce5998e357251e08ae2c030d3fe43de810302047c435bb50066306402302dffde2cffb5472fb60c47e98ccff2343647bb764c2da611e5b32ab7aa3c7919931a2c7e467f7846966e1a568039852102305dfb97c1ee9cab89c71c3d9361bf35484fe269529857c25c2efd367c926114b98296611076e52c9b1dfefbc681c6a1990302047c435bb500673065023100d31da0692bd908ea26f9df81a1802d9e3454d4da173a068d6a630608e5971ed43303e1f6c970021b5443fe88a600d5ab02302293bdfde9eb0a980ae992d06b117c7749823148978dbc03369347ed2d1ad0400adcbd950b2cd7cb795e6978f718c1ec0302047c435bb50066306402305de1f2654e466d2dd962f5e6c59fd4ab4e8ffa512e2b25c8860a14d84dbb1acddef4cd5ecbbdad4e3f37574120eee33e02307daa5cb95aaeebc6c3ed7ce168ef95a5d407edd08b7a4a2ecbc1f5a37c99cc584f3a7130d6e06d4ff6d3bcf4ebfaa9770302047c435bb50067306502300848d592c90498e9cea06fab8faf3241afe5d5ad7e2295fdf11c6f3d5cec38d9c3c760ab367c0f22a28cf9f8ad98f179023100aa3d120fac8503f60ac70fb770d9e3039e6f3f3d7ea082df948567ef0b43d15bc5274302bd6c8f71f435547e2d53c1930302047c435bb50067306502304a735d54e46b8edf92d02dd8d674342e07feaf573017c5a23e2644ced6fe5c0b96a512dd817aa24fccd9919e29a48706023100c61d0a789375a5fa8a10bb1c97cba8ffc7825447bc23b68bf2213d37cbca44d825edac60e7c7efadee908ab92b7506500302047c435bb50066306402304ee85d3eae48561afc79e9ffc6c2ce59f535c5e800212414d62e8fad6ae4b8db6ced0f1031baf06d570155f8eaf9275802300504c225d83295d16e157c241da67454d89445e906dfcc9974ebf310242761d8ceefe8f22e3d6a533f7b146aa0267d320302047c435bb50067306502310088a8b27940a5e573bdfba079f03328ad699068db123696c4cd5911df3edaea93b825a4bc07e8a00618fdc90f7e1e9eb902307c9ed2f49b211e5a2d409019014e3c304b72241367deef846bde55a5f9a2b889d2fa4650da1d5641e54b793d303cd2420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e8cf1deeac1e7f8cf46ea66b957f21b1bdf6dbcfe287cb30abc88def743ab230473503822e367a095f78e866a3ea62d0023100f3618ef7e1363d34fb323c93c04dbd7b5fc014c8dcb1a38e94b1a41f242d948dd79ca35c3522e46ff008df25f6c610d00302047c435bb500663064023040a8e40e98a4728b71cb50cff1eec837e15fc50010877fcda672fe95aff272d39c7a72f0a1a7d7ff25c6998cefb9f67e023017efee61ea677194217878bb3e4173745fa9d80c87ed2bf482864eb25b9fde58df2efd812297d2e42e1754a7f1588b480302047c435bb500673065023100eb1f53747cd34f3e5f85fec8e66958fadf121129c7f004619e73ddbe2dcc7ca4d1c4f8e64ce1d6200572cbd66e2c5197023018d8481befbe39c27740cab20fa59edbf036bdde2d4b0ec5b603167ba91f020aeb671767e1a5a44a15400211f6b7834a0302047c435bb5006730650230210328c41415a7fd75036cbc26bdb2ba100e19edfb2deb333546fb6362299574d46df78744f191e1cf497fd404bd9b4d023100dcada0432d805da4e0461005ac8342efc98cac30a55252dae1fb876348cd187216d7150a26a9103b1f8f504c127e84940302047c435bb50067306502306e88e9f7b12ff6815df635732e6abc07a5daa9af473da4a72c6746bfb64b1301590e3acc8cf6890704ed4e6a315121e0023100cb73fd2ac83db7b1625ee63d0f5eae755e92f6eec34d2c47c1983f7dfd78574c488c25d0614a2146aed6d99ce98d944a0302047c435bb500673065023100ef2172f88c6b5719156bd1f1fb865eba01a140d68f8e399e410ad3d94f0fd7c16a76007b3a2e84cafe9c103a217c3a5b02301b521237f7432f8f3882e3eeab6b201577aaf23498d5400cc5cf5a420ce747b02e599845d7d24941d29ad803945c6f9a0302047c435bb500663064023064c48d678e30b1dc8d28e1d02b1719241c13f6b097b06082635653e356bb8573bf1962c69b9ee913b4d8911ee0f19824023032fcc8c1a033e3617a056155c224198d34de7f164ee06b51531b2adbf7943f097952bf67be13ca2b511a45bd6fbecb530302047c435bb5006630640230022c69cd52b221bb223c8b73ebf22ca03128e5fbe5233f0b729aabb991a4214cde3f67031eaa29bb3e7970b14010155002302e426cba8097903e84cd2a34828beb90d47858bb6f5465115a08a6eaf4607838615c4d277f7554585d6ae16cb06caf970302047c435bb500673065023100ca3c8a3649b77ec4b37299d44356a617e880bade802950d89e88253de48d09de5f7c936e20579d894f80fc49ddaf8ede02304717e0de68e22da7c8a7eb74cb1e50340ae48e2e218cab8d588e0f38da299ba16254ae50bf25f24dba4e6939741e97c90302047c435bb50067306502300e109360fb7693fa6eb8c455a4c7bbea720e7f65f4450b5162d84baf5eac8cfb1d368d35902185a0d482b331e4a657b9023100a9b2e0a4bdd025d090817004274b8f514b3daeda7356ea09dca3240ead5a19203a1670c56d9f8f620b319028ea2126d80302047c435bb500673065023029e95a0afac6df96c529e3767bb4b12694b4adbc0a0792308985db5247077b94e3c7f4eda58a1a57ce2dc79dc8f7dad5023100b537c7638bbc42dec75c897687c902228d2a78782506f531f78729d8568166c58bc44d85ccc994bb833b5c918ffab98b0302047c435bb50066306402303ebab592579dd8a0223e87089f7d443dbff05c094fbec4e1b69edc89c2ea4990c3c17428a662249b480718c56b30537b02300bfdf61b7baa7e868ac0a071165908e58a2e3e0381179b515b82d1161a5fd44c94831624a2f129c03d8cacbb7c1f67020302047c435bb500673065023100d9b0b79d4afb295a98ca98b0b50d8ea467c024b772b95ec5b74a1dcc8bd70cd26e6fda18950f317246f1ab124d2e6fc7023030f14a6b5e0b451fd7a63c6990b81c0f08d4958dfa927c994704c07649eda80fa91f3acd6f6c92aa2b3faf4113adc0710302047c435bb500673065023100873c509c37b45b711aa29a9be1304c9cae20c0e05e0368d254c9819718c68a59db73ab05cb52347a7b56c0692273451d023000dd270dbad6697d907335a9afeeb1446bc0d2e18e5292105613a87b9f9c6c36a7a0050f9debb89b433c157701cc34ec0302047c435bb500673065023022d8cb1be31b08e320bcd083604255281d56cd0ffbbf5915605ed060b91060979e219083ce441260f5c3984031ecc945023100aa55a92d6b136cd6a36e9b7bc5a9906ba9ec85e256f4320d01363e1753b73022678a22fd71be149d01046db24c1fa0640302047c435bb500683066023100f6a906a81836dff074100caff69d3a7de918d13b15f722d8c089a9bf40de616e5fcf54f9f652d7144924471701fec27b023100af034133d6329ad9688d00fc5b0d9cd8b681d2eeb9266af1975ba31271adc2d070c6b5c2d17aa4ebcbf17145ac57116f0302047c435bb5006630640230241f473872edb0f21ea2a51a535ddde3d84c10b31064d7b1975d181c54d94ffbf07afcb56d37e67fed328f31be1f641b02302c59c7d29dba1b2ea2ac6e677128458f279f2fb62ba56e0005c7f735d535a113b41116c19466ca876040aecc3d9ba0910302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f469478601eb1ae68e6c5c9a26b00ad7a01b65763316b5400e0de04d42e92adb63e4e5e45ca96a98c4fef5e6ca5844b602306e9aa823a223dc7882d43437c0f016dc8a66f40193d1c27090feeb10bf66479bf4a29af81cb94ab6428c66b1a4a961380302047c435bb5006830660231009346fc41070ce367bf185f005cf73b6025a067ebe05dd1328dd28829a51780d6d3beff1109bbf5b4b3355e6ec1506633023100972faa7f8b025c2ff735be4cb0ee7acd70566e67673a0919612fdd56d46e86bdb7da7ce196afcd9974ab49b9f17c13680302047c435bb500683066023100aef2731d67c337426d7f1111bb8159531fca6700a701d488c45fad66b80c4343134207da7b4444486a20c4c7c3fc4e82023100f373d4435f853322940a30287aa6e2a23d27c26839661e2c6bef3d76b8115b81e3ad827b1f3628e3c9cfe36af1b2954a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230486cda0b4f2ed5dd026804506f27e11f82d93e9ce881fc5ea2012dcb5f4f44d890183e302a79061249b9b7c2558ce3040231008dd6d7ffc7c5fd519ab62dbda4177e78b8fb42fbf199557e73cd490c2b6ebc7e1f8c3286e87f0ab4c20720ba2fe398450302047c435bb5006730650230788b209bc3c46bc5663cd159af5382becb61bc8303a1aac8f899da8fb832bb7845977ea9650d4ac0c5745442d366966f023100e93d1b0249d6e43c47e3a8b0ccde84fe9f9edeef6e81f14afbd313cefa07c876a0bacf288e5ffcccb69337579c641f130302047c435bb50067306502310081d4b930f98ee580b6f03d97ac8ce9e88d1860ff17fd96ce8a4de16f30da7212122078d495ca70f3a576e1fb4e5c3bfa02304ef578df60520b5b1ec141f0af13e479b152bfbd5dc5cc045e81ddd169cd151e4d3abee2e7584f60d9400209a4205dbd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b83a296c3eca71f021c27491c8d5c239c68fae2b7fe3e1dd46609efad9309a97b8e7c951d4f26fa5d39ea5774a5fd8f6023100a6acca023a8af9ebc6ba7294cb30bfc92a3e2d82fa3b1b8eedd449a75ffa79e101318cad4420e1a29128e66e8834e78b0302047c435bb500673065023075de737a73293769629a14b60d8b653bf62ba9910dd60b9129150e17a3f59252e34c8618ef25fc6e9df704d2744701d802310093b459327635e97c43dfa715524410cd0563184f1b58e86ba96bc655408ec77a3bcd13149b852f0c8a02a4dfa23ce89d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d2025f3dd330448a935102e7ecec94b4df9c0deb1d91bd2f6643b9db7df9ba646742d06f95c9eb2f9c9da2a20d10715d02305884e7e7a7822581da7b16cbe8b77e1e652bce504a5099fb0702c300303f8ebe4fcd24d609db9ca2a5891265e35cf7df0302047c435bb50066306402302607837460d98f990d97055d03a5f77584212b2fcfb661957aea3412968f42711b2f90f1dd61de29a65d0c2c9c35048402303847c9f080e269e9dcb239bd862eeeaa21f2f66fe4dc724d83a4ce099d6204450906cf054adda19567686acaac95cf9b0302047c435bb500663064023053fef2b638ffcbfd6bd9e5e1a8af91937c1c818adc41e3c3f4738091bdc523dcd78fdc877e62c5202a53d143996a0c2b02301a99642e4c539b66d5574fefcc944653b055a1b279cfa7b1d749c9993b45aeee4c64c746e5fafdfb626edc0c90a06c8e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ca0368e66ca1efb65eefaa24ca02768dc16e6f467c69a4bfb033aeb4cab85af811e8c32edc4dc7947c656f38e3476006023100a4a0bec11375b2ee14f3cacf8e78d9bb8fd170732d07219e68e238694364deafa700a44c90e0ac253152618a2bdde07e0302047c435bb500673065023100e8f358420cd7e10ffb751f15095dc43ff500cb7be734c072ee52df4abc530697d4ac244ee5554d1a10014379b17d9a260230696d290cba62c645804f340d3502697f5e114336186a272d76925ca6aee4fd27828c396f48dbbfcdd9c06979ddf7cd510302047c435bb500683066023100ced8d71e599765166e69d372346fb6ad847aabfe32d781efc24f19eaa84f161ac8c05a5bdc44ac92c18092af96a98a2702310081032e5dee42663576ecdc9a502534df50e27748f0de8f03753912b028ea746131041f3f7376c85819d4ccfc95f2419b0302047c435bb500683066023100bf9280fc277e97981b0221528df65c6d54a5db6322440c07c21fbeb6ecd7a46587afa76e5e745003beed15313d9dacc3023100e5340fd02502c383cb1aa3c10e45f47b16f73e6bbf1e55148704e4849cd6855f102d2e093e5971dd4680483ea4bd91260302047c435bb50067306502300ed6c3968a97595dd3fba878e18b7f7fbdee54bcca4acfe114600bca552f9364d424d98a3508b6739a630db6035ba307023100a9215ba8ed709d9c181a7e65c1ccab6e144a024b0924a96c9eaada3a3f009c5081148d44e0b21a29f423585e21f6445e0302047c435bb500673065023100af71ab2ececb4639faa88479cee8af8759229e805e8753b01be9c2963ff397114495d6b9c0f4eb649b44fc384d5e0ddd023060eebaa6cc8a4dd1b1d1d73502e3584ad754535d522123b18fe5c77599b698678b4ec0c977e10bf94dc498e806529ba10302047c435bb5006830660231008334f70539b50445e9746c999735b2a63239d9a8d70ecef18a4f59209af3c62caf211d913738e4eb0e42cdbf64dcc7ae0231008dbc165391d14495528f1d1b6fcf46cf11e2893d217289aa5e3977f158c61c6688f93ba9f1ee98870572b9c7f571af5c0302047c435bb50067306502302d52cafe9924231ba37840d9631c9fd99fc5abd405c961bc429bc5054e4db9829647a37c523f3c203a4c7e7f8af6431d023100b798efb9dc309490d2518a16e26b3d6453d5571830954bcca7146947f1623d4e903135505e7ed6c96a1f7e0c07b996690302047c435bb50066306402307299ff427b974ad4ccfacb9db82319531435a51c6b9404e7b2328a168fd41b362de3300671892e535e5a376afcb7f780023071f43a5902d042055ecdc265161df40f3a246b277078149cf6937971a21ffaf97277ab6a7d85fefb02d0aec1aa15a8ac0302047c435bb500683066023100c7f9ef6b917d2a564401032ae560c1afb932552a092c3e2f713d9c7ea7025f18c0e5875b563d353107cac92f4aa9b4a2023100d327e0e6a65aeb20e09e82788f79a7c2d9f4942260b518bb6a9758f469c90d520569717b27c5ed2511691b9e536495a70302047c435bb500683066023100807d1017a817a6154e2d828dede4f67012438b99144426057e221a069a75857f38e0c1a391703aafabb8446593926b7a023100cbfe3097109c2cfa56f8494297bcb1e02d56cbe294be38cd8e2eced9bc86825b2c6a74eb0baaa7f49d31ca2cb5b0aa860302047c435bb50068306602310097640e1a7d06ec57675bf03226c1db9574f9182067b8fa4ccb789817272021b36a179850167f30a3d3404606f17a1878023100bd35dfd41d2f91c4557846d14d01a2798697d9efb2ff2465a524819e77c40ec1bdc363ca577152e2820657a6f1e006bf0302047c435bb500673065023023ecc2a43e4a244ea6034baa098d1e8f79728eb87509496d70aa6d497a5ee9d39d4e8c01db167b7bb35753e45d7ce10c023100b56d38cf3fb3bbbd5de64e48e98c2d2ff1d36ed9966ab65244428728524ab9a9009d7d8f9faaea78904216066ff5cf4d0302047c435bb50067306502310088490600ff0d23b1db81bf65f041581656fd9e41e296ce9dc21849a858e2caf400b354fabdde4a9a70db8604923fae9802301ddd5cc316324bcffa56a51a441aa52f859c47c89ee5e93dd88a2e797eb58122a59233003df09a7bd8254d73441669cb0302047c435bb50067306502306d9f667756bf301e19e92d2033a17f4eeb451a4f02461c364ba9d7d72d6dd619c9476db60ec59d13457e0e0edea7197f023100818f7fe3d1cab0a8233209b53bec453becf1527ab7d30fc8d91f1f73b7fb63ea5a28981648346984a333df60269c9a850302047c435bb50066306402306b10e0c12d7d86ab0cca0dfd5124f1f0e13d567dc3fd5de3e3162ca62827cb6ee4a0809e4aa6867b979fa6327084078e02301593fd849686f945fe86e21b05f51181fd042f3299e3b8c1406c677595cc9b56da59b8c77ab6c295eef7529d541c2b800302047c435bb500673065023047235a5adc729df7d9bafd92253a203e53352d11095a35b998588e83977c0b3b804bf5dcec0f26b55ebe8dd2a3916b960231009e5cf2c0edd6cc698bdc6494f19bcf6c1f4e7a2cda8d94ea6a7fb9ef20470edbe36237ee390f29128b1088de49c5ca6b0302047c435bb500663064023076fd736ba4b39fe6e1ffa23183982495a53bb2446559a587fb7ffd6428fb00dcd53fc9f55cbe10248e1642bbaaf03328023022971eca95af90cf0a22d0cbc858bd9a3250032a21b55cfbf9d24dd3ea0423d8efcd46bdc088d56c42f4dc2f2984ddee0302047c435bb500683066023100ccabbd364f03a92a2bad855c90dbc87b412e493a11c5caf50bbbf62047085e007bef82ed9a4582266cdf2d071365e7b8023100f5d9a169c01feb12a3706dd53a4487ebd1f8d268713181a8f629192fbaf81ac5a467fbb9cadeca4d43325cfaa37677710302047c435bb50067306502310095e709c6e182d3b6e15a3ee0ef536eade07bc4c9d1f6efda911c74b866136679d072307696052c8bc474d0acd934f83002303f0e3abe8de15a75e72ed6c5ef584e66017b54b1d947e9b836b7ac193ccbdc4bf5a20945878eec2c25717089c6aa646f0302047c435bb500683066023100b51651f458ff46101c2eed9847bf64389374d5bf386673d84534838fd10a041c56bfa2587f9f838e3eb8155510be7bdf023100e523cbca043f4b3842152c282d89e363ecbc790eec9ad1e4224115ddd8793b1db1cb0b29a9d088a3b4b25a2e29d77d400302047c435bb500683066023100c1f6f84baa6b85690f3a84dd01008d021bfecad5846e33b5afbd87b48701846690a1e541ab1a24ad401f847fc8e37b42023100f8e78565f72b3360f6265145e39126fea5d023fe6dcaef556b8cd709fd886500499d6d3d3e1ea331bffd92fe05673e200302047c435bb500673065023100ed718a7504dcab1e9d6087cb9b942540217ad89935fab7ac45adcaa29c52827cbdaa4942e634ec3c6ab14f988c9c351b02306f53f856b2fbd683b3370f093719e9708fa1d9d40c988a970c6a33caf363c96a16edcd64757632b1d16254d602e08ee90302047c435bb500683066023100f2b458a4a831af7e461d82c09987bff5cf4bb6a4981ec31304e2cee753998e55603c79ebd26a593f46a51e02facbe928023100c7099c673f922a939df76646d2538961b6e3e1500aeec041e42bf7b9303bda2b9242bdbad2f9c6199a315a86fff0b9210302047c435bb50067306502307b9dc8dfb9234148667797e975ad93db8fdde220700cb4e68269ab85cf0e60f5442dc640693b0b4cf106f8444c2c2596023100ea0308d210689f170b64f15fdebf784bf2af9be6dcde5062f30a6734ccf4c0d43b0a7c6eb38d4c90a2e8a56416847bcc0302047c435bb50067306502302f2f604453751b97650bfea39a1f1dbe4013df49c1eef1910e14df704a816357ac5491c0e4a995f424ea6e266785600d023100eb49980d66505b44f28663be5f1c6afd16d63c6da15b372032300607fc16129e411ee3331ee08db15f9a916e7ddb2a280302047c435bb50066306402303b329c3e35e6000854a783da725469fe26ea47d337874d448703f82e9276aad451f99e1ac89bc4c31350a10554dc578202300f0eb53a04749cc22853467117c9b0d0ed46dcb7c27cff2841eba894adc11c60775f567d87c059e5957e0a679056c4400302047c435bb500663064023036973a9fed5bb22079ce49a8437eb5dff941436a866ddfb0b9a016a277ef2c9d29c44de7032e2e3310ff4fe00208f9e402302cb99e30cc711a6c1389e39749fd56984960d33e4f70483f99310c303e511dca91efd80474fdb9003cf934af08691f500302047c435bb5006630640230328120e69d1dd8bd91e8ae595d28b74d577b5d5fc59edf6d38e0b0c1cd39057df0b8faf790eb38b562a8cf39a72c92e2023044192fff46714012c88f9e8eb2cd22ad6fee17156142cd97a7d237b186737402ce1f2a1779551740cb618213756284850302047c435bb5006730650230070aa980ddb4e04e2b25310b951cae56b4a4d74ea2b78328e3dc4a353ad2aef2b1dff268e69b445a3885d7b3a92138e0023100bed7c1bfd0a157b2b89b8bd5a2915e2fe03943c9579b718f482e3f218540e49de250cd4e48b96037cf6aca7cb7a0073b0302047c435bb500673065023100a8c9adc0041062e5bba12703ba626a960a16d26f922aa4ad9ed098c45b1022a48437077964715d02fdc26d53c4c54f3902304382b85e13620e7e924261466c159249365d91e43403cb8dab1a251f1cea1c51d996827627b7b14b4987384959eb48dd0302047c435bb500683066023100a417fb7af5bf514ba3e6687819933f5475c72139019218a719c97b99772444f815abee6abd80dfb72dc6b9eb84086ae1023100dc4e629279e4e9dcb47d05ceb2032139c70887b77501053b808533b33100bb7afe1ea7f02a407c33446c61d88ba309620302047c435bb50066306402304fe1208cc7f220615364b2d5db1b88cdd82cda23c806988c1c58836ce82b27ed13d278f7aa95bf95f4ccf751a9c952590230385457a9994aaa663a7dec5a71d57b15c280ed5ed6bd61e62d5f2474616ac95cc6bfe60c49b2643d15e3ab68bbb515870302047c435bb50066306402300bd76894e4c3d6abe752401bbf6310b4dfccb5b4a5e09612e29999799c042fbf2de5a1f3bf5bacbb87c32adbe231f25102307ec5d32ba7ce183f455402ccd9a230fd2a7eeb68711f4bb7a9f1af0659733279cbe2c3a9877f57029983a441a11956a30302047c435bb500673065023100e86dc5ab95cdd6f16215de681095ae1d0cc702de1fbc1e9ec2f265de2868a116345b2f016c28c817ace387e2aee8f53d0230634578cec2ef92d1801067ceecdc1f6d678f0b620540fb56f4084d8aa35b456bed0893236546322360160c9047687ee50302047c435bb50066306402303bd9f398a585349a5cbc7b5abc1767cd1425b549cdbc44c0620e7465d99647ded3e26a28bc8208b414a18ebc63545b7e023060c539fd5f707d058099c55680ea312eda4a27dcdd684c3c81824bc9ff7e8d3e5dfabc2888d16a03043133b58b7d578a0302047c435bb50066306402306ad2d11ab8d7ce1f7229aa245a14942eb4bc44e29c42f9808248b924c93396ee95b006dc64e9d56bba561695a8b262b70230669dc6c47d9a691ad46c31d3cc1bfd898fbebc3d99373824217612a6e67a9b25281135612b85c2ae34306962048f8c8c0302047c435bb500663064023001e7ed3173d985fb40d7b4c18007a6744aa1af946d82932a45ccca9ce5c8feab963ca17c8d09baece628aa3490a68aaf0230733333b9c9fba29029bd0de8b49d649fae19887615a6a9f61ca5ce51e3d84d48b1a650691d9abcbe515424a39ef3bfa20302047c435bb500683066023100e1a3fc1671157855275a67fa3a56530aaba95f2c1783dee28c4de03315759dfc5c9774abb8bc15349292643c41d5a4eb02310092206772508831fbede584740f27adf9f925152ed86c14d076986bfb8e564842ab03912b90fc27c2bbb74213f780ce770302047c435bb50067306502307d8d6aed64b1a12ca23936797188a5b9793205d1ebebec6b2b1d5696b3694be0b11df4eb30284578bbdacd447976ea86023100bfd173a84ab418d16d5052f647fbd769275dd22cae307588eb345b553af340bd4dbcfcc32db786f28ef0bbc5c1c652190302047c435bb500673065023057301b2e5778110ffcd01807773f91cef83478fa1b22ddeb8c1060e575579072bdd5bc1c6355131ce742e3fd63d88e40023100bdb4072201d182510e684892e1e89ddbe8d85ec99d1f25deceb67469f3b757ad48632466da4e99568765e04e7b36da540302047c435bb500673065023100becb735fe1a8fa1a3aead2b39356b0f7d377ec0fd6c4b4fdcf46d25e173e62e09daba05ec406d02b119baabdf76e7a2202302d4771368f2b79f9b27c7528ff4b5109ab580c928290748a6c094176178aaee4d48a7fae8a966447e5aee635322126d30302047c435bb500683066023100e4f017851e5cd63db9a88bd59dfeb1a2c6446d077e61cbb9f3d4256e30f543db6abadb43d60780a35440ff906d33b35f023100cc75ddc4b84e569162ab46b3063672cf11d85163ea8e1afa0c3b96438fe055faf0c93dffad70cb64835ba228b0a472480302047c435bb50067306502303c52f81814e1eabcdf4ab492d84d27fb36ec18e5eca0e0129ec8ee98bd426697800502467048ce6d12d78523a51997b2023100c8f7a2fa6ce4cbe72d4effd9342ed4a6e373015ffc0661e4fc4988bc43803c19a08d8834dd88e1f401eafb5e4fd151980302047c435bb500683066023100de3d30228fa457a55004c2b30c95c56728c4abfc57506b1e3d2fe84639e66e1b032b0ee66f63e85ba4a957da9242426c023100a82609e2bd98ce0ff9abced2ce7eaaa068e389c50bc06489cde444fdfb866ac051c77b6466717c1ed9e07668d56121630302047c435bb500683066023100e8ed5c9351affe7568ab93674544936069fb75d6b1cd2e4f6e1cff390ee3b9d1ff55df6993e8595402a32d35799db672023100c932780333237018df5e17f7575f84af6cdf4c7fd851be2b14309f3c4e9c0fac64f2c22bba7d58a6d1bb3064fa8fc5df0302047c435bb500663064023039d3ebb27348268d3f08a77cce6ab131fa7d0e494d199f9edc7eb02bb218a7b3d6286e1a40c2ea234f19cbaa354c6f0802304167e3cf81937eb130449302f27344b94b661d86c4dcfc394d434dae9d0110860abfecf1de431d30393ea7faaff80a570302047c435bb500673065023100d91bf1f6eff16b66d4b0d7bc14d95043fef17f9b35ca8ab5d143d1033b6aac3eb3200d7067cb3cfc74615af65873c56002303cd293d3999706b8dc18b3594ba28fc52fd6f4af0f74398f4f560fb48116ac7f27dd2f613dc9ec08ff3c59fe40cfe2250302047c435bb500663064023027f6d57a278011788f0e8da04bf3847e2453b7020794c48b02d3c72926013e259bc15502bdb35e833e86631b74e9a64102306a360d1a9793f3011ed6a9e223043eba8b51bbc26110910783b9e0f64f4d28cfab4ff2aaa6301f206ee4a4421d59173e0302047c435bb50067306502305addcd8817e0c9699c0beedb29c10545911914107520db66729d948e2424538e09893080f9856ba529839367a5d25ed502310084872e1d59e6f6ba457944ea9ac7735e4bae3914ab9bac89aae81c68a948f28762f5447680dcb8c13176c9b67ec001ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023020c8fa51108e796d4d5a227e8ef6be90d1a2915bec22c7a960322a8fc087c3a85303fffb8e86cda18b883aca8b791dbf0230728731a0a389f380b40fd884ae3958030d3de06eb3c228654495e04fb116c97e1171f10a8dc9d3ba331facb340cea2320302047c435bb500673065023100810c496080787c7d0cbac74d72c5223687bdcbadb7527e7309e366aeec1af979a486b15bd05315002ffb68f1874d6ccf02300db04173277f0c538ee92f79889273f4edaa1c6dd975bc6cb9eb3a0ae6bb163bf350f6b0e92c656fe652d9400766e53d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054a7ea733f59bb4f21e8e97cf5782912927b65185d7c08d0c64ad8a5b978f9ebb2ff5bbd02899549f9553a87fd83cf1f023078faf5be2a1640a754f40e23320f8f1fc65f6a5d5ce0aaa494b85fffc0700dfe6e20aacb081f58e6527a11208f945c9a0302047c435bb50066306402301287e4a3d0dc455816ef78e5dce11f9aacb74303795fada59277d398efd400ba0754443954a2540611ad44004803847202302bdd94fdbff42f3a81bfb384074a09e0d58b17972393747a7ed587a23a81d80b6682994adbf4118a68e2d29307e521730302047c435bb50067306502310089acede4d408978957ecac6b9518e4f9299764711ab7d8484fa91996970b1ff1cbe2b44c77be9f23eaf1d33a94c6fed3023039a60801a4e21a4edd91b9e04d54e519a1af47b2bd19f5a66aabd55b65f05086587834a530f8d4b2890ad80ea393f8510302047c435bb500683066023100c1e5c31da30dd5fae3eca67b2a9fb6c22f9b275e1375308bf35bf200aa28538df42ec00733e519d419ef55c01166bde0023100810f1e9175617b711d8c42bf2543fc094ab0cf79fab629a43f5193bb8e900b38ab2239b8cde695177e2270e0b8696e8b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230228a0c43c16d0a355427885b7dbbb7d78ddf43f9c3e799332d9c71a70c6583022aab0f198affd6efa9b17dbaf4dfe0b302300971be31294542e89a20c1426b80510c900692f4fbf64d0b3270f6e9e700508b377ba4608f97472925d504870b513bf30302047c435bb500683066023100e6cbec6f0618fa5b67763e90038d5867b17ca95f160c0f95d6b10b189fb3447a66a68635ce915f70a88a966c61b70b6e023100d8cc13488a55bd816a25dbf65752727f7c56ba85f121286078d6f654c6426833efcdc3f68e900704c6282d22bceca21b0302047c435bb500673065023100adb5bca05b0e65f31da28d86d719e36bb04caec3454f6f721277d319bec487b71885fbfce9c742304408a6fb266b990f023040afff1b89a544aacfc456625dcc9e2c5fecf90ca8774e37a0330ff15a54afe829b445cfbab991cceda5aa77045722b20302047c435bb5006730650231008c7f57b29c9d4f2dd58cc6290f8e4a7c8503974014c25fde0a45b91c6e69bd20cbe17320a82babd1105a9228c6601de70230097cff282f78c96c78143c9157c3a3ed52c1b55341385ccfb65073b70e8fe6c0b15555e600c93e48eaae04d81aca4a190302047c435bb500683066023100ce358fe7c2fa16ec248f9b532a3befaacbebb4a421505e0c1ad6c2f2df220cbe5a0abbcf3e6ca965d1df4de98be20d32023100f30b9815e473c5653537b67c74ae61a5d96f2225f20b29fab7556dededb1b0735d5819455e71dafd3726eb860c482cb50302047c435bb500673065023100ae902eafc3fee389239b488360978e161bec6038d576ab901c81145266a4bb7e6810000036579132c20f85a03134c9bf023058c3b3c071494d8c26c99f522111466659bde6d132363902821e5295789dcace4a88f345579c377bd1a782bae852015e0302047c435bb500673065023056c4fe100a7bc4717ad911703d72ce3376166ae9dfacad2ea07c20a33f51f119f7d2e119c70385ad12c241707d05f385023100d3b0563c10b58e0040f23ecbc87b5eeb31b8a756d894739752c6596c604948ce836535147c50c98545c99b46199876960302047c435bb50067306502303b352de20079aac8c81f951e3ef7e2e0fed9463967a46a543e05fb6eeea070aa81e0314d8155754613bd4449ac98a7a7023100eb7a3e90c009ac4dc59862a1fe8ddd2ea4e85e8b835ff4a1b76b1de29e5048e90d7a42756e430a407e5079142535ee4e0302047c435bb5006630640230704a8ee843096b4577495cd5163dee8f2321501a0e8b33c28c14034e7e287ae34455387ea3f90cc670bfd99355b21cae0230782571bb51ca073b95c172e609dc752962be49ce79fee6149533a64e771b9d33064d0a7269d12e3cf32d61c9575dcff70302047c435bb500673065023100ba762628fb9bf2220bef6f7bd29ccd43f4cd34c1d8594d0897076def7b195be6732fe81046ccba096b09df84d3e4336d02305b6facbe2ab50f333cb2f6f26b9ca79619851664905511af9bc0b18016118bbfa6588b10cf1430f5d390359a33af8f230302047c435bb500673065023100f85e9ba7e3d21490ff9c9e2305e7c9112310d7a8cff44bea08142f8d9fbae39ff2bf4c0619096401ae265ab9a23dccdf0230412ef5315443790b270cbc642387998cd8ffca95a0a7a2f388c08251fa6a38a98b169af87851abf271d9e154318a108c0302047c435bb500673065023021157432402e982eff8da6af025b59c7b1da4a32f84b8c642c30bc0fe95060a236ca6ae99c835634908e122c28a006e902310098519f612618aa2df632cee7ae49e9bf808a39bdf7a388e1b3a5fd91affa1aa67c14b10e889110a1b0f3dd4f6085c0660302047c435bb50066306402301a8c79a0bf539824e8eb173833bfc4d59f4a17743094ddf00a238e263a791f515ae268d1f81b3801886cd3dda99adcd3023067676d8aa3644104504c7c58c8eb79ff76b6ce2c2a1cff1f16a44e1fa7ed7e0bee56666c1d8452aa463f4415778c29120302047c435bb500673065023077c790048b8a7a6b2e5927c12c73b80236bd43709cbe413337d8185366a341d41ad83562e991c910e321bb146f1d0d26023100d5cddc0ead0d669e802c9ed43386bef61f3af6a634cb86d2f19ba6e603a37e2cbf570f0a8572e951716606a8051c06da0302047c435bb5006730650230791aca4559a5cc3d1ae017c4c7d4d2e2a629b5176df5a8aa9586312b1069b21a3eb60a4eac88fbdcfc02e8923eae11670231009ca4edfbbef14eb6ed57d5b5c3c198a03c46f69ac30083020f1aebda2a45ccf37548d32b45b893289ef9d9ce1202923a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304289fe17f7897886bee1eb46ada045973981d06c4ad488166b15e887ddab5d9bc5c91d11a3cba6a3fae862e749f723e4023100fab16372dacac6565c49a650e312d61aaaa110727ac2769575137fc31586902c88fdab63771c4adb6b84644b2f201bcc0302047c435bb500683066023100a7fcccc3c3f5b7534dc578ead56ddedff73ddf331a450d4a966513142fb8fac953881e2ca59937fd95dc7c3bb4d74676023100e9de1515c08af1f3f3a7ef33d26b731a7d56c5ad94b8aa9ebda08099dbb471a7c515c87d3c557eadc83a54ee9caa30ea0302047c435bb500673065023100a19da2c4b4d8db5adced02b169bc001d51374c8253180cce5c51813e4474dfec9f53dc62a671c2b50f568594603a177102303520a39fde2617cad14cdc5ce4fcce638c83d61cc33f3c64a68a046bf209d997afb900fc9052a06a36ab95f1996289f80302047c435bb50067306502303a2c47a5a00dd08ac2b2161fee12e23145962dbb30f481c78cd6cd8e4662f1d053751255b5b4510b2dae630d2e3019d9023100d2562332c3e55db66b6668e1ddc07df67c523d2ffecad7b2beb908aeac33e85bb7ab373d16ab1d610b307f655f23e5630302047c435bb500673065023100a1f7a4346ca416a0d743f7cd32ce5083d4b07e50f3540af22e072adf3c08041ece28c736c8d03d7348874d0e3e22d3dd023010ba03fb91a77a734855e42dade5f2df8d041a24b626f9283315d6fe617ae228826e78884551634384cb77a3089dc11e0302047c435bb50066306402304c27451adba6925ceabb939ddc300f6f6f1c1d586ea610283056e6d06d7c49b067bf9ea33ca256edc19604206729bbc5023059994c26de1d784499799020cc531134d1868c5b12d981875e56e01475704fb087c72a763be77dff4d0c7bee657ddf290302047c435bb50068306602310099a84b4a6b239bfffecc615c4dc857b1304965f8b6cdfb482c81f9a18f57b589a4c0b25e9196f25d189e653b63ab2f37023100e66ffd7f6544d9e9657d4c5ea54bbb8202ae2470b4897aea1c7984a999850fd553a64f0513f842759787b0088cc131340302047c435bb50066306402305d0b676c7e7c7c9c4abc4d1c2c987e94d5994c34454b2ce0e29fdf16fe8c28fac0559514475e37634e7b1c7c1f8c9586023027afb219a7b3f3d425d6767cd3af7693fe6a5688beb5316d3bb39afb4a859d6970e0b8f6176dac75f60d26ff872788380302047c435bb5006730650230590276a86d69b5fde7e2332ef99cca7a950a6ae2f45944c8060f6f97f219f5bea74185f76b755e03bdd0cbb22e9de5e9023100ec1484df85e93afe87cd81d5eeac00f1be5d9f4f9817727666388d44b535f07dff1e0c1c54a142b6d0407677fde0c20e0302047c435bb500673065023100a8478a72214306dbd60f941bbc79f1f91f33cb629c5b4bbb0637f36b8562d23c2a206e234638315c3f66539687c24f0f02306f9a32523b1b728b82d3b841875d30d26ac953046528aef02b48289af3117c4bf0d7407e1d24a8885e511fd310de00be0302047c435bb500663064023055137973223e1e2f30af05507dd052566de55463509389f0fba4e30d93146fab47ab2a1bcdc031ba9063fc4a1247e36f023006bcdb6d9e2b0d00f364025e677e8f711bbfb827d0b97ab1010342dba8361e67b55796a0440da76a39cec4f5aac533a00302047c435bb500683066023100863d81880a78754db857c18766e453830982c86badca052c732f89117208f0de26851dfce9b283c39ef81e6e747d6d10023100a2e4ce8d365a011a6e66f07425323d91e84517a24e14d1aa930ce7bcbbb399b97ccde68ac915a1e61390f9aa3e8aa9070302047c435bb500673065023100b49adb3c403023331022826034164caa5e630aa7c2ee6922165440a2cec4737dd2e4d016fb6aadbf5610ec3b0c47334902305bbecf76b8fcdfa7f1292db0d52c65c4e42eeaf529305d1d30585601d9ac6591a9e7253d6e1d66d1a705d04e6f3ec5290302047c435bb500663064023042fea59e1f77e2921bee4b011b72602d6a37bea8d6aa2535570ad715fd75d1679f87284abff4816a99d017b33037e5310230701310e2f353c603f778fcdecd9d06aac4863fbcf81d85703831fa1460b3aa5351ec01d3f5ffc19e79733814e172dda20302047c435bb500673065023100d1b1b31159f655384051b3ee67bfbeae1610be84e31bbbde1920e06f1dd4fd8c6a208f1853c24a92c387375ffd51e8d902300725d525ec064a0ec3cf09c374c45527433aeb571e694e6b6a0aa94a2c05a09932bb36609c1d7862d7c076f681a005d30302047c435bb5006730650230710ad0adc3a55c53a083be022b373e3d2aa3b89a95a4f02637ba9873c0a443e9435b2e5a972b789b4e56f97ed3e70a46023100f308d1178cc98adac3c3e011794900fbadc1eeea83530765e322199df254cac2788af96bf8a119e55999b158f0ea687d0302047c435bb500663064023049b37844d4519899628caf52154f2ce270df4262a77aabb83e3a9e877ba161b479c55b40a3104008f53e06e844d36dd30230756a5303c82a6e2dd1d5fd20da16baec49c0a360f74dfcc55f151c078e848a50958fe09c91a0bb8997442c12c043ab660302047c435bb5006730650231008dffd8f52066edfe0ab505c972e1ea95134ace16d7f36c8dfe610b4fa1a08914522dc45fdb1622a7092ea879b3b963bb0230465fa45ed6ee4aface1ac23ffb3a387a7e5fbd7dd10324244f93d5a71908fa2997d04472fbaad5d0ddcbcababa55afe40302047c435bb500683066023100e594c98afa394c15b357ae3bf691f17a6a605d0ba80e720271b2c000e2f8bdb9dab841a82939e90f92818ea3d97c1f900231009afd9824197cd8fa35674f64f9704890455dedb126628ed7d5959208984b4e644decf8b2f7dfcfded03eb5c1bc527b930302047c435bb5006730650230406f627dca081e28c9afad11cca281f611de0fd108c929ede621aec7d5f6eb4d90c577b2ee2afefb182e9c0728ba8fc9023100f1ca69ff62e0031b665fcfb5273064eff6c344928e2655b4b4e1d60bfdd9bc34acea449d70c77b3aa5abd5f15d75d04e0302047c435bb5006730650231008b3165f73b3d94ed993d80ec6f5f9ed1638e42c96ba28897e8c19d786523942c443e7389fdc7420d01408391a1cbc4c002303ff8cd9aeb5fe3b98b16f52716fddd2f5517b170bcb145d1f108b57e533b234a43a762e5cc23c739e7ab040cb5340a100302047c435bb500673065023100a9986f804fedc0d066b297f9604a2d9a7ba03858cf9db3fba657c2363538ec6d28b39f20e6dff47542853ab5fc01a7d90230335d83b516a7bf642ba7ffd95f2214d97cd4b153b40cc0b197807512f640d66acbe3c3943d1ca9b1e2d7edf306a35d500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305e87f0c13fbc3a39d18885704546219bdefd925fca0dbc56aa84fff10793f143b76bcfd6f2f5fed1f696ba24ffd120a8023100d2e19f5ce704331f854aebd6e3403e557df0d17350c28a3fea365a11e1ddbe0e69a614c2a445839d717269df45e3e45b0302047c435bb500673065023042d7c1d0b00cc7361d99941bafe9c0f84960a4f50a076bc4eed99468a8375b8092d3c0277ec693d5a4351f09fc7e9ffc023100a08c5075ab3740b260f69dda5b050bf8f2c015147a68f8f25ee09fb8ca1aaf451869fb9201c23b80e0e43937a4876a580302047c435bb500683066023100aac4aea398eb912278123f1f20836c393aa75532bb2bb0b16ef3e7802c775afeb91ba8289df351fc5af94c944f02c0e3023100b9eb44b3103a4a086b1f15131dd7cc275709a915a777e8de70bf9f9b27ea295836f65a09bc2f3ada2951c86cf80296980302047c435bb500673065023100bb724d801cb56522d28b70a8ad4bb44e90836c8dfd9531b7562312f84207c8021f051d219fdca82a23aa21c768105866023070b9437ccce80473d2c1e9bb6b64a806031ecb9fcc4a841b1ff0b165e54ae453ca9ed768a69c95623d51350ecfd930970302047c435bb500673065023100eabad896c31565428a2e8eef60384c09a4be509a33e7901ae740080c8d0c6dee13d69d9d9cba891ead37754fea312b140230035dc2cb20c07d52c67440873cab8b70523b4931bb8f6934765be5280475d7bc2a04945cb4db485a96f7cd359adee57e0302047c435bb50067306502301e3c8f8b00c76aaf4a3691d6a86db24697a0d659c3193563b4272cb101851e9773e247f321444ffab9162f5d90c239d0023100975b8502eb1ccaba0df166a1c0142a3815ab9aec4967dec685f73533d03155d58eb7117f4d636328640d271fb0de27b40302047c435bb500673065023072c4783f1e2e9aa71c0ce7efb18688a966b45de85e92aed0a5adb37dc0dadce6fbbc223893de2707ae6c9bbb3532e623023100a532b309b4561e9b5a5bae18c662a0293d92850cbf64470720c762771a236b65eeabec9f82da3484b9890f8bb9eeb3170302047c435bb500663064023025f1a016c63d402fc1623a8e7f65da6f783adee02cb7fe258eba1a7a6ec4814a740a6f895f0763e70abca9f3f9aaea200230505d95f4430741d28f0785119a510b7c766dad43a1ba317af751a8b71d7f4683ad862fa0b41256556ee41cdf671177bc0302047c435bb500683066023100ae57c7ca6a99c1aa2f3e90ce9b4ab01dd5a4f3ffd43cd564ee9bc2e50630fc3cc111cb9d704df23e5b023ca5631ebb50023100df62ce4f747eadc669e4eb11b5443f7cc2a8f204cc0cd9078895df41525f423665e765d3fb9176c02178eef6f2d272210302047c435bb500673065023020f4c571a40f0550d7eef5cefef8e4e9a5edaf937df94e71c3ba5ad56a237765f154ca75597458ba460437d9f1bee908023100f66237f7afb1f0c75e0f63ab6d368e9f9ce22d47171e7a0f83416c0c921f1248b3d85b00938192b0c2148d4a4a20790d0302047c435bb5006730650231009f1b8676a6ee1aa3d9184e6b513fe20cba68810638bddc2b2c4738893f3d63970d19ef386ccb0d2bf95c49f38d80f9db023004a2ff24eb03f9ac268e3ca2ccc41cfaa8e8e6fea62d6315ecebfbb0a08c3df8af8737ed3944c0a178dc6c93f33058eb0302047c435bb500683066023100e8d35676c8c6a04603093ccea59e68f65f97b7086158be584ac6d7eb7759b8c3632257dee923a598843575c8c6911b64023100adbe5463ba5636734bb8b2a92f5c0a38a8bf704daf49b83bfd6c40ae1fe50247b4eddbf123392a240650a4d203f61e800302047c435bb50066306402303c55b3970431f1d8e0cc5d4c8c040ed56ca58b39db353ea7aa78decc3aa4caf335f9c2b0cc56eee4c749bf7692758ca502303bd1c3b24cc064b04b422b6ef578f508ac913889a7dfe38484a355748b7b848d73f6529098abf766128600d8fe5e49a40302047c435bb5006830660231008530f36ae9e11d6731a905bcb1a49824059840cae3ca351dd697747ba84fd9d0a5ff84d38de76b1b1fb474ddd5de49ba023100937b182ee45d329ddb2d29a8c0840053a9b5fecb916180eccc36014d9a07793cc90753c8839972f5a0b3c18fddf47b020302047c435bb500673065023100d6a93061c43594ef6e1290ff5b666bf08da4abcc496a4267d2cc53aacd7e2603b9daae1b44cb7f99050ce18b9b5bafd002301b58c549b5978b565c4665a34d8dbb508503e3bf21ea4f961b428750a59661ae827747f08241e30d642e436de626b26b0302047c435bb500673065023059627963eca45450ea4e14cbf71bf37e284ee5ff3f3b04092894cd1eef567d068e7d495a82d46116b439e68fcc12fe22023100d0c2ba2c282c616cbf10fde19d5fb0c8c87b9428e16fe379ced0dbabac27b50fea80723e8d2e8a14a2521cf9876dbccf0302047c435bb5006630640230737f552835de10a498d6064c771b4006067eee58c9530baee640efcc5e87ffb694d4eb995fe07a9b48e9be024797fb170230114f44c4ed7f3fdc756cfaad93ce205d5a335f02e7dec4a77db103ba282dc379cca4e35147d2e57d5185f07b3a85e8cf0302047c435bb500673065023100a87849900235b6f58302b339a78253d3fa94119cef6ab0a088cd5f35669e53975e0a1d2a346db2080da5873f8ad4760402305986c4f37b9098c4729ad4a137c4646a6fb016ed7c5f9cf83a4b92831048788559098a8a8011408071fd10fe03fcea530302047c435bb5006830660231009858b8132262b13ca78f70058f04dc046e991a5749ed32dd1d7b60d2a851c5b968231b4d45746beba85647bfe5fe7cfb023100d2aa7e78a8f4e037e2521ff65d6f30dfc9e558c9fac693f11e0d8e5a531087993d870339139ee17b2b888d49c6af0ee60302047c435bb500683066023100aaf50060fd44840649b273639c46d92fd9504266cbd874ebc086f4b6f1077d0385c1b1a4276c7edbfcc74da11a55e46f023100d8a158960f4dc0c5c6de9cba181a9ac63c68ba678ab872b5d1d8f7dcbf8307cb363f2afa5ee10efd06bbdf940f3fa5290302047c435bb500673065023014092037aad7050e2cff6089dcd3bbe75c01f7a839bf252165f53e1da748c1efe2a471837e35c15527b1b48b99ae6c03023100f4fa7cefd7821fe66cfa26496ab0ec3c7c4ef5b341b89bfd2d3c193241f8d9f8f7f0f2cb4597f8ee95ae8b71d73b00b40302047c435bb5006730650230274e7309c534dbe9bba837f504d155d61795839459d98a855c74cd81cde6a4b43b197f6f1a3a870267c88e6cc86ae0fe023100d60f944c97c932a7db87414f7f56bbb44673727c9f53c4dfe8f0a89cd5afc70feb2054b9578f2792b7df7266c6990f860302047c435bb5006830660231008eedb40421d1092ab787bc0b65387ccb49c188a572f73607683e4576e3750bf992131b75dbab303ffc832e531cf7c8600231009c997cf734e3657ee2b479fd64afc4531b0170a6b880ef6585530ad48a8192e38e2304752db29fee8b2a773734e2c2580302047c435bb500663064023049ea65cc478d9a62c6198d542bed757abaac15b413c19422a719faf8979c398965f9cd9408fbb2d30e51a5a7db00146802302112c14cf7c0dbab299c6481f24a3d537280c8c9c79a298c11e41ebb075565e56916b3a0d480683dc79840a3207037860302047c435bb50067306502303e1e6136ac9f0649018d5f35f2abd4bbe95a49a308dd1f2138e4f33a0255d52c35e514be305b7b3cf238c21ed06b7bb1023100960b03d66a7d591e4a73011891e07793ba289828391dec37ea528f0506e58ee87c2f745e69d3412f061f300865edc0bf0302047c435bb500673065023100ed262b582bb4021537b51a19b3c46d5ba3eae83c1ee8d9838687f68dac8b3cf143e128a77972edae3b709be45cf8ab5102301734e82f5849e5412c3352d0f347955c32c2a2dda5a33bd0ab76ac3c6bad2a7ccb69bced20c4ff3cd05381351de01d5a0302047c435bb500673065023100bb673bd3736261e0f3632313ca9cc0e4e0521bedbcfc7db8414ace88b70a023e590693704c217606c4030b90ee66559b02306199ae65539446405d5d75a7000c8f081ae733b64fc0faa96b2de566dca53426e9b74120155342a73d138630f63d7b210302047c435bb500673065023100eadb32d3dd05ea8b6b028286f328191a77c045e5370ca91d5d00483f520ac9222fdaa22c8212cfb6a6e658034e4d713302300877f726fa7de2a257bc535b6be4d07386ee943a1b1774d2925c48c25eb8be921ffdd5beb804cac85c0b61ba3d03a5090302047c435bb50067306502310088ecad7168485ac7c2b9a6fb7dc268598fc4b2d27b4042550a38b20a7db5b102c0ee9df76f69fba24bec7f043547871b023009d65c1a87787985d26881baf8d03009ae7bc7109211cc357a03e426fcba0beb1613cb9890b9aa4df849ef6a05f1fa240302047c435bb5006630640230500ba568ec36a155b481e749bbee46cc790b20966e8aa338112204fec6dd2b04508c005234cff8fa1f99d4fe052308da023076ed5b545084003ffed4292cd7ed2ea1fb0625d3e6fdd79ecca4dd3333307dfbb6cbc026b6731c4f040951b914ebad330302047c435bb500683066023100b6c7f43d7f84192f3f7b5f1a3a2e9e29420458325908aeaf9b7617ee24468053d4033d7da01e4e4701a3f8c024c8a8e2023100d115f19d4df9287649710eb4dc78317288034f1a55cc61b5fb4d28025b6e5e9d10e21fa39c62fb0a219a88caeb7c355f0302047c435bb500673065023100983b1d84aa252c92a77e9876377e21143f2e63f36691f2a4bd6fed851a9a70159a3395b2e804ed5f4feaf6e5a124af540230612e393235786a353e2af69ace8aa585dbef9c8285517aadd01c07ac94a9803c36560fad79b4a0be789d4d2438ba7bf70302047c435bb500673065023100d1e6b1b3a26d304b41a74e4ed94b9e6e403004fdb645573105edb78d25da5017216d14c51458c3c3cded13e8d8e4df5602303de30992b85c167e8df2713f735d5adb625bf79b2d015e9ff5bcd17ac4d7cccafeea579c8812359157c0f88c5bd780410302047c435bb500673065023100f255578ea8cd4f1955073cb33056c3049f735860ff5082e7ac126ecf2bb8fac5fe03ab75ed63a2a6b96258b73c33755e02301a264cc4ef24b857e9cafe0f765bd48dcb3bf04c620b1883494106fc03f6c1d3265f5d734435e609f992620f7e0485470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301bc7797fd4497a815898e2b1d0e6794afdb19e387ffafb925db9ad3d3dda17d5f0998f7ab09d3eca2109e5455fa0a91a023100b1e5f603a5e132037daa57f2cd547043ef427ae755e5fe14817cf91e9cac9427a6e0c8abb78b09b7f35f90a077d655210302047c435bb5006630640230082e9954fc33168920058f08e92a1f3163593a36fe8a6c9c632154b69ea079137cf4c4e3248d51144863e0fffe315dd602307d6f3806ada8888134aab7adb812a2046dad1003e2054fd4f0683dccbf51e10434a1f8d37073b23c3cc0d12ea3106ab40302047c435bb50067306502305bb3a0c9aa7413af9fd7aca6c466f81f22ff93b2d51b4e1209c5ba508c7127f7011eeebbf54e44e445fb81616fd8d56f023100cabf1d5056428d754506ca0cc0681358b94d90e1e87a6bce06a98c2f8c39761d9600109ee4dc6a6eaf684b91598c5a4f0302047c435bb50066306402304dde3f8861598d872e3b413e326ee91e43411e346f355a958e03e66d598a50de57e352f4b055b88f44bc8d0a5c106a0402301990af90140011e16725284d88e8195e3bc6a83ea771d207bcc5370dc8007595d87f151d58dfb553638912db41d3b51a0302047c435bb50067306502303cd9d0c478d03bded97a97b3b47f7938286ea5f73a4cb68d4ced93af44ec48520590c6bb5c0363b89eb596cae340b44f023100dd8913d040cbb4e554d1745e90e9adba6479c49d8e5bc2531d1ecea7a524d5937ea5e2515f32b88f4d99fb4664676ca80302047c435bb500663064023009ae890a884630c03845fff8e42c3d382afa55e98b86acf764b42e4232cfc95a898e3dcadd544085cdcb28bca7def98a0230371c522692ad383bf3b1425ec0eb7a21d5b87eafe3c68566f239a8a4bb306f2a5aad75f1183c6ea6ae1e85857c0c862a0302047c435bb50067306502304dbe9193323add3ce46fd493655cb194621a42d4cb5802e7ae19b6e9887ae71b71035fc60315806a2006fef07933560d023100b155fc2e9cbfcd5ebf7e3bfa84b2b082ca24c0869ab95e66617c5359bb21bc6e53229f193829557f34d6996a649a415d0302047c435bb500683066023100d0d8247ddff2b46ff6afe19acd486f03786739927a10ef2de40b551d495020b115962fe0bc9d5734426e848f1824724b023100a399df9ef08a416a7dc351bececad944380b6e8f138d85784e01cfbb6ce69ac56de5d5c34397600b08b8f3a825cf8a320302047c435bb500683066023100f71eae3b35063e48fddcd95039e40a78c5df14c3d30c8deec8a9bb4a930cfd625fbb80d7393bcaacb304acd7eed928a4023100c85782a1b0934e7d4bd36051e57ea382d934aee242c982bfa9d48c3d2d0ba6fcb2512154d224e4a38c058ca159be830e0302047c435bb50066306402300c2d3bb1c150044b47954ce2dd30308123e42fb05046d18e28155c23537b5a12b368bc2e30dfc1f196810abf1a8a3c6b02300fe66634b5eac3917ddade5038f0c9037b1d225c2c92626dbe4c557a6d86f9625e2ac46d41ade4cb767b25211a6f79fc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a8c1604b629bdcea66260452a6e54a58e62bd32c4886ac96988f42fc5f4174e63578ef620f12c0f94cbb11db76453fa4023100876fa61f14407acf2d8863c1b2eb1c44f77848e0aacf6fc27f6a525191925b6a75476178504c1b3d06dd741804a75fa30302047c435bb500663064023060bb790f8ece18e3374431e83102e22bcf04d1ffdf04ed210226e94fe5c62c4418dce3dfd1d63342bacafdfc51be1b4802300603abd5e84beb328e301d64019271589755e14bf41334a776a624d4db5e0e7bfc77bc132bf6a1f76496210c82bbd3680302047c435bb500673065023100a2909cd038aea634eaba48b21179c5160672838610874bb75cb72236e5c3111034b69c3e56f1d74b2b1be3243041870002303e89c931f9ad560a9dab1c2736c02015f55a1ff5e0707795d459bf6b3c8463abb3113070fcb189d970b38ddb3b711bab0302047c435bb50066306402304713f5b7acc29d014e7c6f53097e01b83f80e7f3c2620535ab013bb163adc99c8d958ed20a01293cdccd66e410581ed302305f4cf7f73b5ad9e0f7b1337dfdbe131c651cd6384733b2469936df6731e9bb191b1a42c22673767292828933f8a09f940302047c435bb500673065023100e7372c70b405eb448a03b10f6032e49f01c0ea53e2ac4c297f1dbd09594d1035daeb07150f3fc6153dc50ef094112b7b023040859fcef82c69bea393b8443236d2713a5f6ab1662e23a7c912e3db4ac003055cdc599efd8f62ac69e3abefb22c80e80302047c435bb5006730650230114b80cfa40fcd3203b7730c82769d0ee43c269fd1aea44eea147c1068d28bbedecd416769bfe4f1c3b2555a88423ab8023100b70dce50410fba892405a4c07cde69d2fa404f91c072f32c587129d3f7fb12b5a971b3431771b6fdca8249929df363420302047c435bb50066306402300f16c1c6f40ea8afdc42eb3f377d079c5062095febee4a6d652dc8312fd36d318bb2a0012cb941f9c32f953f9bf1a2ae0230689e3e41e50e3aa5f2a03c122dbe7a1886728c0d7e00dd5b687dc5d6c56787be1adfb9971fc580c365a7d8c4c1493a820302047c435bb50066306402300bb49ecad41a45650652c9501cde5a7ecdd56c6475695a2958ea5e279191359b8857352a9537ff33758eaccaf22bb7e70230369b0fedd6a75fab0ab184e6d585d6e8c6657712fb8e28cf8c65e194d0dfb861fd3fa52808efb188361d09230aa4e05b0302047c435bb50066306402301b471f3c22d62ab65780a1709bfdb11cdd4a384bbd9e6f0edf7b93e3bd73850c548ee4c6965ff6a2ff61e1aa3a4dc25e023002b0cfb171a85f0db4c48e1d8e552db477cf0150f086069edd6e384d9b4f1074e4cf444238866ebbc6a6dc8eebfe5db80302047c435bb500673065023100b269240f27f0f001d739f9f1dc803407e19bd2420ffe1449236a4c5dcc8024b6a1afcba80e7ea62dfa7e96614b010b110230786ab03e61c3987656073cf7c9e0406eaeb6eb6d34bc1b59f357a6db49bcbc81dbde8afe151de07c4c8d9da77ec7c0730302047c435bb500673065023100c1c11b3fcdb0505dc89de9b61f8acc2fad7205491b0e1f14b69445ac75d15811cbb2a2188fb7fd79c4df591e16be546102303825d24a79bc09048471048788c44b1d269cb659d40203672817dc9e3ce1e89f9cdd51811f91f76412565cfd93127ac10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008bc794a86104bc99f3983a89bdfc96d20fd1894cf79dd341d2a0ca66b75f5c6000aad2e2d3ec8d70aebc64328ff487be02303c0bb49eb246cd9ef2e283acad7851fc2fe5fa79984c54a73549b151fcdde93eedef991afee934eace03b978fab6e41d0302047c435bb500663064023063ecab8ea9af73d58bf4949e463fd4ff5c544797dfb5f3d2ea2d54d6d3228e672e44cb91b96c299fd19a5cde6eb94f28023059c3fb1fd3739f171a90fb260d1459a7cb0323cce6cdff0d4fe985d973684241897c90900f3247a13ccfba6d5e9b27960302047c435bb50066306402304a94bb172216aa1c8ccfc7a0116342e1dbef4cac0d064d5e32e3ec138d2560cf5b8512220b31883ee85100d4ddbb8d5402302f97e9f2aa4107335077cde6dc9ec32cc4cb5209bb6cc1559be856c1fadb4304f45ef46d00b8c665ce671351fe2500600302047c435bb500673065023100b16924be9ed2e6d8d2b7f3c4447b8caf3be87a8f91c086e94b2dd9bca9828714ed5f23fb647f0bba73f835a52f29139e02302df8fc5d0fd78de2a40a7d026f77efd324c4d48e1da23fe046197dd0df78e900a7a55c6b197c054a80660e64afb2158e0302047c435bb5006630640230093b299ff90d5e941a7ac45a22fc8f9bf3b28c3bf73e51431f6c9adc4f2895a21d4d10b8540dad66e3a29b7ae3ff13fa02306cc5022d7f9a50a8efc7201f823e31f6d5e42f37ba4a0a0c0894a99fcac1b232fefcdb875fb5de3a7067887b5af5e5830302047c435bb500673065023009fed7a62a65f539ba8dc2239b5a150b58a24c95a18065c16be38a62514afc4e8a57710651618576bedbd040d7af3deb023100f6789177a65f08c98723f267817ecc5a25cb7ab553c24e49eee7470804f711a1d3c25219993aea32e3ec976504c4ae970302047c435bb500673065023100da9ea9f334c08d7b73a7862e06d2291859a72352decf1807ee345e82d26b08c1bfe284f49e4dc51508bcfef89c64735b02307f85d1cfd06d03b216d20e84b29f5b83a3b58426c5a761498d24575fd8d0ccc2c6c6af59d9e09603b661eeeaf7d2a6d10302047c435bb5006830660231009e93ca7a6c665d03eacfa9ade24f44a72332a1052775872a829b570b9bc4d7b3ea9ed781f1e71647046cd5d86b17a19602310099e47d0887dd878c152936ebd5c70476209e6be1e2178107097145d1ff6859414a2f553d803e5deec5ac9c7977c5cbec0302047c435bb5006730650231008e01db88a6efd71a2324c597abc0018a06aa75083a0d85ec3e5a05f439124e2080e2bcfcf51263b1504aeb673f9785d00230515e7d33e1d4a13d4a64deda2fd77bdbe12843fb3010843b92ca568dc2699723a441a220ddfb4d84e35b5a763d44399d0302047c435bb500663064023050244aa2cdcb0a9d79105b1bacf6b6f2a7ac6b8f1adc53289c1584fda2e593677b4e2b6034f3a9289a7f35c022d7a69d02300c541cfa2af2bb34194d854ffea54209aa5b525f10880e30e97f94972c92fa73fe75cfcf8cb865142686f2d7bf842d950302047c435bb500673065023100deb657fc729fb56847f8ff4d6be46dfbabc0f4190f05ce94343068fdd2fa4685f4e102abb0c671fc84e86c5f618bec0d0230704eb0c17eb7a36bcef72dfa2eef549c330197d966a145c015e97947e2d3c4d1dd4db1e6a6a63f4b99c36791ce8c0f9f0302047c435bb500683066023100b1ae7dd4d8eed4cda190467de6b9f5b68b3ff9ae497a3aff679d031ac9e2f7bac0dc4047c872241b3493431d91f02d58023100d606d889e9c0d7b29aed22e7970e1f4ea267273251d7628b058fd9ec9f3124c2a32b1519105393ffc992af0660ae24840302047c435bb50067306502302da6ef76e1909b82d4bd5116a6f7995e7f4c4d77e68c33987d68d1620996d61959f775e8dc4c501bc79a1f3b5fde7153023100e5246a27ed670ad4024bb639db2b036e3eed1e9335f5fdeb0ea82e57c94c454fbdc88870ac919137c93d36976aa33f2d0302047c435bb50066306402303382958c294751263a5e88074209dc2dffb0af735e5d6c23e6cadc70d5f843630f81b5d5031c54c725ffc6d42c8708eb023036757da8d547e0ae7a60b63294c078baeba5f04b60aab9655698664cdfe7a87fa2535151aa902fda483178f17c90c2ed0302047c435bb50067306502300a1315069c1bdb68de78fc5976d4f290e2b961ed5c0488fc10dec40fafebf8d1671c4496bbfe4f593ffa12e3b132e673023100ace29b2e791259eb98341569f9f7f87ed7b95262427ae83156dfb7a1221088782c39054010669a06ab3daf01a64801e40302047c435bb500663064023056c566eea12fc101dedd1e3bb36f6052454cb4f99676dd5611a0421d468a4cda430c40da6a761f2acbfde03df45b7f1c02303db948c1f90fb42ba364d004c291e14eaf8b14fc1922f3b81b4af9ae09e512ac5cba92078bd78e5e3007060c438303d60302047c435bb500683066023100bf1d36fa29262cd74f0c5451534dd943eeacf286ac130f2d5174b8b3653cbe39d41d83028fe85cb1ecf6b6da40d4da29023100f4a788302e4c7f9ac69f25be11d05dc4481f977deab7577e17b1a77fb6eb5c7a725204c5cf8e9fd912d1e282f4b7450c0302047c435bb5006730650231009f99094b6580e4ea47ef60607af998c0fc51fde5732dc97688a7213187d5bada3e1f7bf9d65e1cdb7ed6441028e4b1b202306f6c4ef59177097200a70f11c72af4cc8c83ac218c46d57516c4b231d5c29e86666e819f485cc177968677d3e3a044a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100865b980c62dac57d9f924b81b4a6ee42b8ce33cf0146fc5db457404b15993e20a4239422ca6b1e9143232b08886b50980231009a842de150182d675ed50db81a4c84b770911c70c7c9f03b35f1d17f20f4adbda918dac24d6377a68946fc450275e2c70302047c435bb50067306502306a6583b54958eb98d34068d6ce2eefc227525e78e9e1e623d2673e1098daf3d625ea692631049c0d4892c553f4d51cfc023100ae444c4789eab2c5fbf551c7d74f6899900b2fb99421b314a745dd338c4c2212aed5cc16fa79974966dfb6f75a32151b0302047c435bb5006730650230393cc0a91ca956a43463fc87f7b7cde27e265878690a756065bd1a16b95fb2b670270f8592bacad5b6e4df723645518a023100b7aeaec2e4f201c1a3c5688275afc9a6fa3665676b0b397d2fcd2ce350708e2ccf727500a5714e5d08048165b39e761d0302047c435bb500673065023100a5131b7c5bb5bff8a03e71662ce4bc1d7397939f6b1dfa3441cb2ab7584b5ee0baf6a452e54d9215a0e8cec98760e6a602302796469392e22b2692109af232ed101b7021a82d5b845112bdbd76fac02fb2a2bc10db32079b6d3d84cc08ca9f84da1c0302047c435bb500663064023005a3ce931b4fc709e13e49aafe076f515f3f7f3c538175e6828a4721c195210169cb310ec5205d9cc23769bbcedc3ad6023039541f4c2eab94b6b316209f91df026a3389d617cbf9cddbdccfa6e65d65b4232e34799468fb265009fbd807b7b5e9410302047c435bb5006630640230395071fd9f5ca8f07f67d67ee6e87e427170bab3e98f50524690906944f7d15b1099cf15ace566fd52325bcbb08420fe02301ca3a49752594be18798fe3ed33b99edf19742d2402b2b41b3d93816dd681146a334efb3645f92e2a1720310ca5b7e0d0302047c435bb50067306502302d50b4c557095af216a07884db492b4a1e7ca845b5ca13620174b0dbd14429d10d29a6bdc206815735220c79c42117ef023100da28d810862a900cba7d9ebfc79c1581199cf299eb821c0e30f52085467bc23ade18e46d41ab847053abd437e949f4e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100981d0e5486250f6b3709394957de9c89ebdd3064b2547cb8d1331e4dd8ea5bd4261b75783e6ab25c88d6fe0288ae24190230014d57f1fab544c062947c9c66c66d6b047522649d83eb8bd1f745d2f5ac3acc188962bcd23df2f45faa8d01b5ccc4fe0302047c435bb5006730650231009a11b2eff8d86a52b8e2f0e51eea7ec4022a722a4cd2e775de107068c4b67cb80f829b900d4e606936de105260674aa0023012bf7ecbbfca514814eb90102d1e7b3a9ecd4f780e4ebfa6b7594e7bc3667fa26fb4cab5f1e51acdd8fbbc96d25add170302047c435bb50067306502307dce5ceed54117b094305ee0e9016ec60ec6ecd066d41797a9a3ba39ec20272336002582f4b544733ee565875e7e97dd023100ad206779515bcac0cbc7743ed1befa719ff45212e3e1f5858fff7081086678064b7c595c4fdd1db09fbe4ba7aafce79f0302047c435bb50066306402301afac6d65faafee0326bb4d59b005ad40691ac3cc19841f4cf158fc8ba299db38031c2fd84a1286fb80a79d5274fea7c023078681ea1d0d30635eeb46cf63f23894d4ffb23f671777abe00c6ed7458e03a1721038c938dc485dffc381b13740b20d60302047c435bb5006730650230315c845b077ee6419bce5aa50787f8c8bd8ddbab3e58ad774d2996f5cd8d987060acdc7cae268c3a8caa756824e6496702310081009d64bf5e48ab0940f9b73ab329494a93eb5766fd85425ac07595fbf97e230b88365974517fd115e71ea195ec417c0302047c435bb500683066023100941558821440e9b85e90152d38eef72cfb1c40d6140f051b46d63a6efe31c8f26d03f212e7d445b33253381aa4463da9023100bb0772c9ad9d0f6145c6846757f38f10132199bea20381fb123181518504dfe20fc2d76918f3d38969f2a7a0035194540302047c435bb5006630640230547f6f7e2be7eef475f178b3acb0f2dfde7830b70d2cf3d15fca134c41e1ae957e1d3013789bae10bebe187133c6d40e023021e6826796fb28a0857fd1125ad321188a4df2a214637d490fb43c5da7766e38d1ddc5ee95359342b823a1ca330156450302047c435bb500683066023100d497e4b82e6274607389db1ba64d06d1464f6d675de1b77bd0bc8c964f6ae5fe9fdcce3bf09316bf817a93bc242cc2b2023100e3247f815c02c2e43108b98a926874872e7c0011e81e1dcea1b569715cdb9e027935cbaae945511befa363efb59094380302047c435bb500683066023100e373ccef21f17975d9e29b9d0164f723cfc9673cc441f28874a1e8f7b5f8b1b03c4200c940620b8b423d7a72e46a605a023100db3a488ac0a5cbdb37decd597b6d0a03097f5d11d19218a251a49b175c9489b3491518db21b6e65bb76dbd6a9ca1af820302047c435bb5006730650230781ef9957ded8f3461bf32d6ca2c234a8c955269df7f4d5df805c635e25c3d882f9996f1d4972e85ffc538b3a51e6da7023100bc5c9a75cee4cda682098be59951ddf13a27c98932a497adf51e56bb97d02ba6e24231faa4cf0436bd63844f790bdb880302047c435bb500673065023100bee69213934a6ec7ae4428e4b1475ecd4668c4b3cc983b1d22e0a07746a492847df7f288568302b15969994cb6978ce4023000fdfad82fc94177d09a3d014113ca3e2979e964545e964c6240b6e03afcfeacd8bc145f73735d85c5025f247632ecd20302047c435bb500683066023100951e6c89d139fc3ed2444f71bfef23fa4189f22986e667d38662a0ee60ce39376763c9ab38bd46b94616c467055c7834023100dee7ffe25febf9ed6cbf089b467dfcc832a092bd45f8d7beafd21f3c9d496a727cc42b2d66158d2d1bebb52fa6761de90302047c435bb50067306502302d0926e4f2e497aa7f6fcc778c55aaefb039c1e5b8e4fd6b15e71508946d7e1b14aa6357436fc666fe0eae5dd44ba41a023100abefd34fb8723c4cef915d4667387202e1c8cdd34a5cf3537b3e1bfb9eb0599083ae08afabe88d92ae66031807a447f00302047c435bb50067306502305977ad8366bc90959cb818b994f01ab00c226ed43998e6ffcadfcebcde75ace7b43d8a3801cf5da17e578e6e1473dde7023100c66bd80f7306ece0b74fa6bf2c85f2b18dae3003cd2d810c3667c8f4ad4a2ead1b55bb941dbea589f4456e2b928be1fb0302047c435bb5006730650230166fbe805fa6f03fab32c4b4fa1f81a72395b17187ac7927351f048e4c378144c5114af598265f692e94d9e68a6bbec3023100c7f524d11baa37c6eef4b1040ca23af6dee4ab07ddfcc9d53e85400c4340c4e038aca04ad7a4eb3be0218bf502ca79880302047c435bb500673065023100992258732f6cb4a55b4cba8afe9bbd1f8060337774d2336932aedd7b2728c2ca73cdfef43483c0ac0451b30affbfee47023031976e4e714a89465730a9121759cacc58da07ebb141cbe6b1c57bb1304bbf37ebeb01c1fd6c07528b7f78f2ac1f9d490302047c435bb500673065023064e28bf305df1e1891f5c56cb4ef1e40d9ca3cc7a0943016cdded9404abc2a51f81a3b41f4701505b447d98682c63539023100fa25124d4bec2edb97e660365ca674914e765187aaf42c69303c835055ac02c59889d84af553f1d98cec7d9066931ffc0302047c435bb500673065023100a902cef4279a5dae8dd86c2539fdd2a5e69b550d4a219c9f18a38195be9fb8aa05895704fbf709eafc93af3a99f66da70230475fdd342d24013e52beb70700e539fcf94a0cf5e9f9567840527d5f4f92441b4542bd48cc6b7d6eb82aac66f8ed02990302047c435bb500663064023007f78a1b70eb3ed513fee6f44c43f088f67f5a4498b86b567d8afe956389f8cd68bdcd14add829fbf740e42a7ca2586702307362f929dbe8c2aff1e401e0d1153991c05de96052f5dd636c768aec92c0041a40d5f4da50bccdb50ac9b4ef11aae83c0302047c435bb500673065023014d1225a045ca64d4201fe643e24c7381957f8bb93177512675085eb9ca151ab451ae0e225bd07ec18d68b05649d2dff023100c70d079902a1a6f5be11ef999ad3416fbe3db173333321a9a8c11026f039e6772b21d192426eac8b4f0caeaf000ffc680302047c435bb50066306402306bd3ddc56d539dc9f2d60b46db0f462bd8a7cad12e57359f229cf6c99d3315cd7323e8a97736b4fd3938ad7f861e6d3602307d231554e67c9c6b76336bf42d26314e26e41bcba2c7a3eb412738bfc1a6d6ade4598ccef5258fd6d82cfd784d1a7add0302047c435bb500683066023100e231b88ac15424b6d6f5ffc3bb835b6667be230dc5f40f3ebca74c6dc17e370c9b3d647bfa6f4c4a679a559fc2579ae6023100fd74c881b6efdcb936cc4d5d84c461c74fa91d813ef4486e7a5072252115a18cad58647ee1c7e841f4601dc7452058e70302047c435bb500673065023011075c071d9e0d43118d94536f932db387b0ea9ba8377d385175467f894fb0625a0f394f1c5dff3a3ed795049bc409b502310097b0edf272667f630c2ef50305ea614699bdf468968a0c3cc8cfda9bc85729e2b4832994c86759c20170b65b725310da0302047c435bb500683066023100d6ab930d1576b9048360585b65f243be52d26e52d3df8843f12ffab62266967fb2ffd0d10b41d3060d378852e9c3da3f023100f7649227aa8925e5f763cd13cc97f70f1f32e0d4888e2c71a464d67de11d7429a6f3f10dd38e672eb8bb5b9af2f874c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e09ec78743597b5384861f58b0f26b628c5825b4ac7e0cccb644ab4afd172c48e6e130ad0b6dd5b57cdadba5787ac8b50231008a4ed0648f4af55c0391bb2024dce84ab8d17a85ee953f985ad344f67652e5cbe40871cd798f0e3ac526ee816afe50c30302047c435bb50066306402302541cab007e34fefb1051ec619b2ea45f1dc3a7992964f44ccf075ba2b5225430f3398a5a5996fbdc913a97b285d0a9602300f4e40b12abe5723ed098593ac5a4cf8e4cc2f85432777d322f09ab14cc684954eb9d6b77008877af199c175210341ea0302047c435bb50066306402302d73f95bdd9d8d2420a6971613a5e8f32a33b31c812c957218cb082562ff1f7eff50ce3b4aff21acd1c478e7e34cd14702305f0e87482d1d6722e6661dce3badcf7971eebe90b0f04afd829b1f94e34e6fb337777325944ac7d4c3da595ee8a84c1f0302047c435bb5006830660231008a0d0cfc01990892f9c99ad5438d63977d38938fc43230fe2514591a764b438e98164ed0a8500bfa37f9b005893e08a0023100c465dbee27970bfb959a4161608b2fe1ffc70d2b5c6552e7ef6b1994d271f8e89b80121da7a94b405233e6c55278fe400302047c435bb50066306402303b122a249ac2038579037468e89a99c5245e25f1ad05de8b83df30aece543b17faceceba26f63a9b1277265a0bfabd2c0230078855877a1bb2af159d123f0851de08db7c663b32a3fd23f8e03761d1714608bbb075c458b192b41f36c427665a28af0302047c435bb50067306502300d7b65251a36594066f3f7e1cbc0f42ef15fcd953d250aa63a2029b6fb88ffcd3f5e528dab382f5e32d8abd348dc61440231009857428686bdc63ed4c4da96dfc8bb67af9142308abcf63fdd6003a6e0ec18d7554fd4d73f897a074e5eecbb46c09d550302047c435bb50067306502302b69d3b3122ab6ee4e7e012404e014d38d996a8f1d3e2711dcc7698f58f532de11bf2820f30cb9538484f0b89e189411023100e5fce5c3e3f73620c90d6e18550ecba9f762eae0e8d83271cb7805a50a61954b3958e0eb3324ae748ad4918eb02f43020302047c435bb500683066023100b8f5c7918385875a212df65416335a6cae76c4fbb65417abb64662a54f7c9e1d824e54d58386de9fcb27d9c81355976f023100eca6226b74adab41278352ac8720d64db3705933c6efe02372480b6629cada4ca654ed0de2785760b2f8b8f30e6528730302047c435bb5006730650231008b1f54258cfecfefed4abdf3a1080a72b0bd4b94397d6779246a7645f8a5fa594563930d707760d2053cc68d94bc863702300816c39f0c6d5302d85af1f7963e2e60e133705809ea120d3e9707ae0135c5ff0f7320ea1e60618c273d5847b48048e20302047c435bb500663064023043a4b839b266e3b82914e8582251b316c1f6ee10049f9187f482889a5bd4adafab02bb9496a716a53af6bc2ff1679c820230646e5a0ee2c34937a66023d5ff3dbd48ee458da041ebec35a3331de3e7df5eedec77e974e83bb4eb494fdc1739fc5b360302047c435bb5006630640230717770d06a8c144c821f058357f95c71ba2250eb6c3de20467fcf04b00ccced7c60bfba9b068b4faecdca26204c02d5c0230043b47d274be596f8dee49548e6474a0e75fa3b7702481107913b89e5e142adccf3bf7eaf111971a3ab2d2f112ae44dd0302047c435bb50066306402302423adfc511b99920d62bfd5870fc4e2ac0675cb410da9439025f8145d947089165a685d43ac84bf9394ced1d794ad9c023049b8e3098d2ca530ab2d594e73001a2a43de7eb1a325afe07c19197ffcc3ab575ab2a66b601b9684ca068a417106df010302047c435bb5006630640230759c1977977606404d4afb76fc9d1655ad3b519d9d5b8d1071941831a453700c92182b13122da2864e06425eeaf172ef023055932323d0fabdb1d68782dee7752363bb12ee97b3f109103a6662ac443c65ce721032df888af477020b8e39b93b9b3c0302047c435bb50066306402300fc6616bc0dc7e1812baabf5f286aac3174b63ca734a7d1724ec7918bcf7fc466747b91885d80206e922c283b9f9a59002304465f3d24d451f8be330e4fc90fe1c2f0ca79a8c059ef1671207889ebfadcb1b32facf894ec34bf824e013993c34ec680302047c435bb50067306502300ccc4d00712c8cbeb52fff36a6915569079a52f7a23eb696affdf0506fa9b5be1c490170f2d25d5b660ec4398883b3ce023100ea86983f1a31d0d6783678f1d1b08916b97a30691ddefe6136b8bae0105437e6254a9c7fc0eca070afce50a5093486cb0302047c435bb500683066023100d86294af1a9259594d062d1a1b3cee3aa7346fb914f44286b9357bcc7bc3868d13bd99d583d170622c15a3fe098b68560231008874e2fcd960e6ba0e26249f1647d4bf07c843a38bb45560b6bc845c252cb7cb2e3bc38a18ffab7339b06ce2be9ddf0d0302047c435bb50067306502302990937159c4b63df6eb00fee9179ce59dbaf6dd16741b5981ad2a0a716041ef752ca9cbf6fa94d490e6035019f10603023100fab32828452ee05938c8d04fa39d594994c9369612668160538bc14e916097c85a1b202fd845eca946963596e32643870302047c435bb5006730650231009d16ba6bc059c48706bae15a54330955a9fb7e06a4e4ccf1f88e485b7419de74c2b83967d61f2cbc6a9bf3767f198ea302300bda29d584297d3292976be74dcc612bc5c6b8e54bc055e10942cfccc923771da9b12a92b3af83b5b60a60e78e4f533d0302047c435bb50066306402307758cbdbba9a87fd41675fab8efe61f633fdabe02065d665f20d3861cd824ffd35828ded00eecc16105ba99d0dccd5e402306f9d9534c9a12227b43f5da8fbd928a80fcc12746503b4e19e140f1df8fab36a5c116de2b21918ea6e827b3d47ffb31f0302047c435bb5006630640230183c0f531cb180ea97fcd7b066f89cda5512b0f82c75623a5305c57d4b8b631d7d535db5d1e919d41b4f481c526b44f40230430a2f275aea82a25c2e90c9c2c7d1c3e07fbecc07a5118bbaf40f7198dca06f9176052d105948c1a50256a56145b6170302047c435bb500663064023068b2ba073787a7f4784b27e3d0c2dbd9014da683a0bb12bdff02c1f089f3cc0e5cd3ffd82bf510fb0f0a7e1e11cca9cf02307a1e0bf7f52d061ff5ad56a572eecb4b120cb5c4f09abf586b33f1eb253ef7787986b2d0abdc8e02d72abda250c8cd420302047c435bb50066306402304f702b9783eee73601e9618cedf569fc9b2e00e9dd95f2ae40bfab521b9579ff674a1814b4938babe7614008c218e174023043933ec1c316d8c55897ae9d526a35f454938243aad558df21615c28b4060248931fa29a5d942fcb7f531ffd61b799270302047c435bb500663064023061a24dd965814811115edaff31a1ff56a86de61903b7f473c753af76335468f1f11ce361678e8c5a7b127ad59b1646fb0230021d583094ddf239878d05b6f7e8c9349116ba6a6b4769b1db514a12a3952a353b7cdc0bdd3b29c469cc2fabc079eac20302047c435bb50066306402307ac5aabd98d69b0ebb93b1c496df5c9b30ca9d12f7382b48314f1e8d52baf219d1f96ce2657b8f59656dc695343761ee0230168de54c73953645bcadd46b447386ea2604557a33ef2adf294e14f4f7cf303d0fc53f725b1908e051beac53f7c9ca870302047c435bb5006630640230686fee5ffbdabd6971153966baaa300ae4928f1ffaca0205e254ab65bd98c06aebb44f190be9f46453a7354866f0c77c02306ceef1d4dc85819bfa00ea348f7b0d279f05b4f951d70aec386009243df574306ac2b0ed31e70bd51fc7298b79a8ce540302047c435bb50066306402304f57a99c2bd011e845b1769b1d8e37c66c3eb8bb5f2b4f8ea7f6eee7b7372b635e61af246282f0f245a58e4a378565f5023016653d625df0d1054582422b2adacf53b05d73aa10725c5bb8facf7c10d613ea515bf9eacb923812c86451f2ac9c5df90302047c435bb500683066023100e2734fc315d54d8cf140b8dafc1c0174710fe2cd81dacfcc6f9b5e7b6eddd7f68ae3fba01fbbf5b014b67505fb9165f0023100c950594453f2388f06b992bc7639c98bd13303259c4dbec22cb6cee5d724cb2a0927b7d3ff9b43cd262b73ec73e3adc80302047c435bb50067306502304513013a52e1d9da9ce0b543f4f700fa00def006b067a7874d5fbf6aa7285cd0d47732d0399a47ef435c5677a262f7f4023100964033eb83a281c342bb184dd3fd17453fd2eb1dbecdd01f5a7865f64e883dd70581e2b732fd9934a013f5f0140642220302047c435bb5006730650230456be464a19181b39710a5e1e07aabbfd40e0223e3cc22ff86ecb9cfd47f9aaa2d38722e742fecfec5b3d0876db147c8023100e39ab3ffbca52ec90c1b1767d7c722de4b835db1b60ac760eaabe5cfc9b422e841718b5a9dd4df2d4d88a9006bd645a30302047c435bb50066306402306c74f899fd3e550af651e3220b0f268126506ae80704e83d8894bb00d525b9d45437f6957f29129649f4fab910a54a9d023013b64ebcd8f3cef1c547563a6229a7ed38fc231d708d2d6d053add67e1fc7d2bccbcab80e1e45e8cd249966f139fc07f0302047c435bb500683066023100f881286d7f3fa146f5dd78f6ef7551d87b021973d104014c3bed1951875eb6c7193ff1101dec1887c23b49ebb32077c5023100c2c692953ffa458986960516adfd521ef2dc2ff1a3a333d497b65bde7c48babf153ca6bc2ca82cce33623aad83a62cfb0302047c435bb500673065023100ecd38632dd3787e6387de3ccbc5b6f249ef42c07b42b9c0cfbb12991941968e482770dcd20d849ce7ece0b20fb3e966302304599a92d644bc1ae69e937fd8fea202f214ddf73dbc8a8a86027578d7ee514ed57ad05e0f7aaf997296602bb7cad1abc0302047c435bb500673065023100fe774e6d0ca0865d74308cf7a0a33861cb45c755f8de896403f32a72d37c4c3e6795da842871270faa8f256591dce38d02301dcf8a86ec134ac5c3ece54d6ba857a08f7b7fe1c0153989c95ab8219ed234614db44c720935e617979aa432a30928050302047c435bb500673065023068d4b64ac60181fc844ef556e7582ad0afd55e37e1de513fe646832996eefa313c7e31bf026cb3860db93dd780332672023100ca0cb78cd47091f02470a6c95219e991d4f866d3e0a388c0b56cd2a72a79bdd66a24a215250a7d069cf415861c46ea0f0302047c435bb50066306402300b1ad8622f6a3a5ea13cf85cf0d9080d6b5ae7d18268c5dc20a3d4033ddf03ef15902335cb60db59f170071a062c7b4702306eeb40155e9a5c9c5609d3cb3a33bf3500b9ed23d57757e193e59baf3d63e44997d1e3357ed783a21345f4328db6fcda0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300216e677c8b857af5a6fe117c0f4c65269e0c5da69e5b01e8bf7ead98aee6c39d451ae160a13c31556221c3f6fc6d2090230356347d814783ae9b93a0dc515ddb7e0c36c9e4e2c4294f5b5c374e7a1586fe423db9f6214784676804162ee5b4cce810302047c435bb50067306502310087fdacae4464bf6462ba8b6d0589df94c5567e60cae0adbd5f55cec44d9f0c1c8aa39a6e7c6d43d660c04dbe492cb80402306e05c8721051f18d63ca078baace0dee3c131e6a260ba30cf687f9742cf7218030c58ca067def50753a3326ed71c89860302047c435bb50066306402301589308cb27de4c8852ec9277a75aef7fbbe3e2bcd026e8b3aa3ce8312f9d97eeabf0cf2c3d1542c304994228ee4d550023023a9ef571f919e8024bb8c199a582f7c6462e7c3a1bd504b9d0ac9eadfab719cbde46cb67a696eea72f13bf0390157e50302047c435bb500683066023100f6759d3d18852aef12ae1f93ef6fd642a367f7d7b4bb2c89635893e3404db5d248c8b28979d0283e812202a240a375a7023100b859fb12c0fd87f52779604cedaf15f82196e049a9a373c443229aa0323de0bfbabc6006ceee72ecbb2189cc8e4290d30302047c435bb500683066023100ffd1fafaa05ccb7edbf7403c9195722b3c936c2cb6e0669bb97441603b14e9762311ce2380fc00465ab6f9c8712022180231008d04162d7aff0678687b7bb5ef1e590bf8397a2ae4d89179f5cea7581a01145affd885dd760aba5755c311ca476ec34d0302047c435bb500673065023100d10d0c147e18dd581810f91ba785a1c858ef67aa6043341e7f87021e15101dc0350bbfefa433578de354b21f30ea31ce02303d9e4d540dad09c731978271df5e43f0d0d7cc565cb67b74ddf40491a5bf2cdef441ea913e105c9f836542425f69a82a0302047c435bb500683066023100af69e51c49827b74fb7919d9689f7aac070b8a9b02a78b78cc0fbaa891a1a68994962370dee887192f1c594ba898492e02310088c391b07a3cc290a744688553a8ac1335597942e0d8de7672b9812559005766a4c9b53a6a6352c12fd7f1c3b03345480302047c435bb50066306402301f757b2a61942d756fb08b5122194c5d6ee26d480866e840cbfa9cb50a8eaac18929b1c0fa8f8cc03ec3574b6e982ea402304716079c012164030587ffc029a6c514d80ea7394b60bfb4277fb6a6138ca751f7b5e2304398aa0bfb940940b092e2900302047c435bb50068306602310083c15a101c9fa3d8d2877a24c3ecd1af646cb5e82334af1915fa91e59b01422d9171aea3a7e3573317f42365c429e5b2023100e9654800a9f0e95a43e2b60a08065fc00c5c3c1c240d851bd2799a6faf74ce51383905509972e4ce573c23232c4d00810302047c435bb500673065023100b21a6acce493d372db0fa24493a268d1fd324c93a62b6936c027b5a74b2c2a9450779a6feb6261290249c14a0dca7d17023042ecc43b4f86ddb3dee8dd5ee8e9369003888131805e4d7ab93ff7be91cc8f3c16574e92350088de2d93b61a9e7bb8d90302047c435bb500683066023100d70f9cf35ece1305f73fad11370544e5d9d6414a5c4e1b59e3e987fb1791fe31671b9f9ebb4be5378f43da9c628b57ba023100bf43f42505a134485ddb76ab4772c72e7fb2fda7e581f1d9e08a3da077ff3f76d5dcb69974d14e6c8285dd706be660f10302047c435bb500663064023019ee017aeb61fe1ac39ec89dccafbfb3d149b8951b3f8dc2fad8ba82fdd3121e7a5c06a956f9e0ced9c231409a54cabd02304f68bcbfd42c7134477606005eafd38516fc7a8f6978639e22fa1d1a7c961dc5a21560cd019c19e2bfbf4905aec1e1260302047c435bb500673065023026156af083dc53707f976d286c23ac246c6baf3bf70c25311ffed87ebac6762e69ddf34cfeb7c3ebfca28e96e3ea1ed802310096abcd6698665fad75d88a5dad4487b6bd40cd048a5dddbdb1d85f00945c6a8b8be89ebd5ee16e3cb33cd8d0437d4b760302047c435bb500663064023043b91e8e755a423226ad5c91409e4394f81c47edecd6360ac9c680ef1b0d47d8f503bd32393f619a6f71aa44721acc7d02306407c55bc117ed1e7f9b53c96c013c7fea89319cfe73afc92488eb367b14c93f095041d39c1c3935ed9e49dd3b55d9150302047c435bb500673065023100fb4039de289bc8a8d53af558aeab8ab3074114ccd83b0274666b371e2577901d30aa198d5a6598135f62f04f762cfc63023057d533b393630dda67263871bd92975c63e7a66c83f67e20ebef463a9670dadabf9179dc93c814a036c753a26eea194f0302047c435bb5006830660231009977afc1278c712545005fdda0c4d4da2652a3b06ffe2dd59ee79de616aa2139181642fa6cc1d172ee0c63a1fb22b03f023100e2b0ba3fd580feb8dfd4f4b75134ea9d683298da45f3463fa56143e427b40a8e5c0d9c590aa8913a72af429093bfd9ab0302047c435bb500683066023100e3e6be6cd69420167c6cb342871e3e499e16c6935de3b7d79e694d6270f7e4d27497066a8179b5570e5353681c0274f6023100b80e16b0b4d8e3889b206006fd7028d0207667543162626b8fc166a1c230acb6b383c38521bf0a5c123aec54d0dfe2150302047c435bb5006630640230669b3dadf496bcc41075891f303e64a861f7d241eb465888251e36aa0f4ee90f5868068ab789f5cf3178192508d144f80230541fb09919eb0dc37e7c29d3b7285e06267d3c9d103319e6d975ca0c129d9d945eaf8357ed4f370eb5974f685150e6030302047c435bb500683066023100b3cd28a950367ca940b909aaf57bd011521d964fb5f052799729e46763dee8f2533fc790a284678aed8209854d66f6fc023100b0565120756dafbfd2d4a2d6ec9f0c1ff9d8430619becbe6e62919f22fe29d24ca0e7cd17d49f73204f71b1d3f5d5e080302047c435bb500673065023100e7b77c22110314de91c0b636067e71665e24235523b14d704379e7fafc66a2abe06a38d0bf8166c82c6d6cba194bfc80023064ba366241d0a3f1702a8ee72e59cf4fe13c2b7e94db299cb2b21ad7805e765062b3192f27c1aa82119c27979704cc970302047c435bb500683066023100e5d566b239cc59cb1f9e52532a10321226ce1074843fa2bd6d6a83096f3d23166761d8d9ab63f91f63dcc1844b282877023100e0c8b91c6b729aee172ef2fba9867bb947e179927ea9325784aa6b82ac0fa91fed14c732e448ab2e44ece3bf7f100ccf0302047c435bb5006730650230334f959b79ef6c19e8f880e4af3fceee419b74fee9e20472c4688c4f43a145c935d5912bd3f4390fb8dc084aa5a5d20b023100d7d98bdeaed3279af95b9d90d930542686f263ee65645f745f9a488a4766401f9aa9a98654ff2880dff24f06089bc1ed0302047c435bb500683066023100bc41164027f9539c9b01c0c7162852db252f9d81597bba0c072aa6c7d8267851a81c514ba332e30c0a0c980206672366023100c0826f9f682ea01a559d47cde2aab9795e1358b7ea825bb6ee3f231d4661ef76fecaea00dde38e03908968d7371ca1da0302047c435bb50067306502300daa812e6767360ef29aeca1184fa0ee8cef68f6a338bccd8b952d63d9019994d5d3a14a6094e637591634bd30b17b38023100badded0dab72865b7d18c21e62f3d8edfd3956822a7043b288db005179c665a5ca1e8ef42e2b1e53040074509fcb95e10302047c435bb500673065023100f42bb5d9184dc3f16986d682978dcc9a0b4fa5c3143b48d4895139ffd8dfcb811e6d4a8eea90a3c5b20a3a0b19b779b202300b211615809f34fcc8f5d81d800df5e8064bcb7f5d10739ec01bacd4729b02142cb68dff4b9af13009cc73d6cfffde2b0302047c435bb500683066023100e41e1099daf3e2edb74518e6233c266283f3e42cf53246629be9b0384be7ca60f00f25ff79c7895b0aeac94a506de7dd023100e46afe9bd9647c4767c173fa56419e0b543a704c9004dc34f43fd41ddd7695c20cf05b1483d2535f4976b1e42b826aa10302047c435bb50067306502305609aeeff2e5ef22f62eaa40ed0ca221b92bf454ab4bc398f2e003d828194d08a94017dd64c9cd8bf806f3aa2762cccf023100f6fa971538d4de94748baecd5b11941ecc07f98f2195a8ba7a5fb7b875a09b13458d2bf8c69d259b7311273b9db5f6080302047c435bb50066306402302166d6ece50cb6d3b843b10743c2d2f8ea831c1bd0f27a64c036b20d8dfe7b2ff3a03ec5495ca2a58de940cac8cb533c023052b79b023937fab91d17b90705b8e159ac051e10c6a028fc88842782d5325b1f5e185ea458ff27e60ff13ad0be94df300302047c435bb500683066023100ff3a7479eacf8f01c7545fcbabd95df61b5e2fa9472907cd896e0d7f5f5015f2c0d9f396537b5efe2fec7d7c525867ff0231009185d8010b44815e9c413189a3e716e0be772fba0eb4ba15b29895e9084f888a4ed18c7454aa7eac0bade3eb4b69941d0302047c435bb50067306502304869342e2159b97eee0fb47ef168ee579384f0c26ca8aef91c1eaf92d55120a6bae583b15609c7499cd3d2c971f5eb98023100d2c7d4b8dc8ef742904f032637f1c2cf489ee26cdabb719fadf0e18e52ce2488fa95585e035d9f300d41f9b0ff4c49250302047c435bb50067306502300c610db8b508769ed4e504ba6b3d51b9f0a074597150b4dc640d0a0bf7bea65df82734b343c4acefd73a04a14783dfcc0231008d5f0ec9be9caf910a0d89470189b84308db75402ea47c33d8602b309d24bc4052df0ab6caed636affdecee803de316d0302047c435bb5006730650231008cb7f968dd08158ae368bd8cb1981c967f7a358da51cfd91410211c33b206742468dd962e0665d52f75f60dda55dec3b023069165a8350a55f3d87d63db2f5ead1708c85f80fae936f16721a125ec4075972e5669a03d4ecf8695fd786e32cc299670302047c435bb50066306402303823ebd83f586f395a0541e77b325f023df4c4e53971e8996d33cbf0627c3d62d416fabbf56f94ee0824cb8efd61bb09023009f2bcd15b3923d9a310dcf8b6c19d7b5e08598cf8fe5b9ffe2cfae9550a2026aba46330eec429bfd1382d1dccabec630302047c435bb500683066023100a19adcdf1ad0ca8636c1393ac722658d1360ce696e1cdac25785a52c7e6031f7dfe18bab5b2ad2cfabf1c5c0b7dbe428023100d237d91391c1b5f00359b8c961b5908cc55a803574126f433f05c8dede35d2c98af849dbdda23b2983f9ea3da47be8bc0302047c435bb500683066023100afb3933a63591eae6c2a6ce257de3855895991b2b3aa718688058bcbb35c508585065974dd9b9035766bb1697dba6e05023100f7f39d90f3b27d040c0b0413e4f639ee9fc7df65d0a636e59bc664a81c9847f9ff4198487484e72ed85538ff19e8cb250302047c435bb50066306402305d076380952b4e7441e11398efd9d02190a568dab20a9b0d5c1355b1a3673d59836469832e569c561679217174340e5d02306ae1fa98a1ddafafaca6fe5de066399d58c742c5dd7e6188dcaa03ae17de78ca46821261ab17c89a1ef3d57622a49fe20302047c435bb50066306402305b2aa4341240497d967530bafa23bceb8703b26fefad6a17afa8d7b476a0454747c1449d5edb680652c876f97cd4e3ce02301146acf2d5d8eaf82e0e993e11c32197791b76426d353c4b6aa26857223f6f3f1bba8208ac0d8f262fc091354c8e07ca0302047c435bb500683066023100a3e88398b88c4f7259299817ef7c1f221c282dd4dda3d6979ee9817fd708acc74e0cd7998a77a8534cf8b5b4c7a62fad02310092c3868314fb4ca26a5cca24cdb57076b9738ed12295244cb96f3558986230ee72f81c3a345d38696530d2a9fe4ecfe60302047c435bb500673065023063f33b9729e1fc68e727a41d039113046d3ebe1d0c140af2db6cf97a58f9b9d2f8f2eaaa862e3189244eb97d6d067ed50231009d84c7ccc07d559671eb7a8fb7305efacd18038b02226ce2646a6a70bd93e6ec8f36f8a7b81184094e65ce79404d65c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023033d0c289b8fb88842c20a52253918f8412dd3f24838af9039193f17262119c4f9556fcd536c15c2547653ed2bccf88c6023100f581aaad575edd8d4bf8f25de315a2c383c47ad05fdabcfb969ba648d842e142ac10659b5c820ec481f0beb711bfa1af0302047c435bb500673065023045549a82dc0a6d897140331454bc72868cc64fdd1d26b7bda96dbf42ec3d13acd6c5f0cf1d7c31316e1e2ad6d75e2f24023100da68521fc16c6e777df9b83907fd0faaf3807a9d439937ab1491ef7cc6402ba972256a4fe734999034b275d9fe3131810302047c435bb50067306502301b141fa973a00a03fad54f5ce7d3923f5fec396ca7d1b09bf5845bd552f0943428eb7edbcf520d76001ee066c849310d0231008ed039fdb24d1cc5525a8d0d48650fef2b0022ed81c0aff80c0737631ed87cb0de11e6a40fb9eb70f242a82953ebdb190302047c435bb500673065023100d9166b213b801f96c3b59c3cd1c2bd08dfb429d68b3bfd77f1544bd545c9a17b9744e2c8216155011964b3339c581e0102300d59e18b8715e41671d820ed87245d6b35e9264b81e9e79dc039ec04e5195c1e6ffa74e74a720a9b9aa13ad2b6a2db6d0302047c435bb50067306502302c888785f9f283cb942aabbc4fd92c390561bb3bff0baf8b0336d3ea25c59683a9b7f3861ef8e24a27097693778e6304023100f66125558074856b0489a3201fb809ac7f94597280b12a647e644cc1fbcc16819b34cc26ad697289e9648e5ae81feaa70302047c435bb50066306402304ac15f386116ac06ce4d37c35c2dd1d598fb4b33b52173a6cde7b154d9b3f03d820d24e5261e466725dcd738160b88e702302c974bbca8823419b782306fe082bed0040d1dbde168f486593e20cc333383382a9920cb0eb11231ef9b7033bf1590ec0302047c435bb500683066023100c241b7ee0bc1f38eafda0a92ed7f78c9c24205939d6f48618c8d1752ac53032025a6cf00d07ae90dd432d60b83e08354023100cfd8dcc40153ad177366f74229fbf01f612fd24333fd5f306b430ce7f6a4a6288bb36de844eb1a92620c29a79130edad0302047c435bb5006730650230566566ea9811d445b284813b086d99ef1d84c253622bbb341b7266202b06197f997420aca8a379a8033055c1e4281a3b023100e79ee2c469f749449d4b95b1da9311df8493853249aa549f12b1bbb9e7a78c5c3d737cb0740cc27fa7ee33936cd9ed110302047c435bb500673065023100ce4cae4b8a095a3aeac45265587fe2793813e62c69b38607f31a1a08de2bf77ccd96aff359ab8d505c3d634a50f34a03023020c4bd8cfb13d0102179a48e98a9bacf8d4f6476149c17e55d2c4818a085eba9ffc2a726012bc05de353c50dc6af31c30302047c435bb500653063022f1c8458ae8a1d91b8607437b6aa12f03b506922f751450f2f68115724f32db72951d0cc8e084e1f6a77e4c660cd7ef3023021a91c1730c5c84ae35809c620742c3fe50ce76847ece351e78d3d523558ad96d9c1fc116e7355e8b1ceffe750d483b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bebc705da2aeac80fa8a7e7e9c539aaf127031491a07b20fe5efff60b5aa07185448c4622d30ecb718ac84984e3c858b023100ed1ec660ccc06eca70ab4d3c4c21a6a34ea38038e86057fde1eaf882f60a7b21986923b08efdfb11ec613d01a94089370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230086d125860ae7a187db569ce9657cbe4a76830e5227d8e408b311d94107218f80c9c9fcf6a1681ed5ef534de77fd5125023100c7b5e79c37cc8716f0284006893335dc582bdc3be90d8997b1437123c0cf1ed75c946d6ae89b29d3f55cc9381eb307530302047c435bb50066306402305c91f2b49c4016565eda6b4a287271cdc7809f2e36d52bb556e16ab1cb28368dfd638be4bf24460eb0d16d866c3b4988023063e78b4c1ce7f4d03eed15ad48533fd872eca8b43d81e420c3c0fd163ea65a7fadaf727f43c6c13ecfbe8fa61d08fcf90302047c435bb500673065023100f6ebac1f825f3b3d68d766a278d35020f0109f07eb8073dabe16bd5410685a813377b09792c13a4c5b156355a89f0f2702306c6260b0b3be0de0c639066738e7d7f65810aa8e47243dade4d9e8451c57127c2d46a67167c4d8454e048e1e30da9c930302047c435bb50067306502302672f3c706584bd0b378e5c56b5c3a121a082e90a92ef9ccae1ca64e7231b782b90eea448126631b412ebfac6bd174fb023100e832e86818b85c1346e9fa12398af24f5a6c06f6170856e14a13c8862985f2a56590309aa084109aa1abba7fef0c12640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c9467a91a29b3dededec6dbcbeaf4632f39b838273de071cd4801ffaa9df28560b5a760d6554728fdc59aaaa3231335402310095528bd83140c67231548fa9ad0ff288b3dcfca82c6c34336b786c1b3f53ded272caf9a8717135354c6d02cbb95311a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d1a12fe331ca39697538e4b6cb9fa4e4f58dde59a5d82469d8e043b52e38eb37f2f8e08d8b002af61714c4666f996bf023100e439eaa9d4fa5f89f84a447856607f1bcc599e8ee758c87c8073a2de844fafe329d320cf8a161d33fd682c88a263a52a0302047c435bb5006830660231008c128bb414bec2570a986353bb0b56c11471503ec4225f53da8538d78981f4f4f6dd60a24813face9e9a3402d9531d71023100c5d8b43a9159ac8d46ba10c8403b46de57f2b94064a4e038ffc1afaf29f9277ae2918758552f9d2c86e9ce2b6cc875610302047c435bb5006830660231009751f52468f041e5209e4d74a6793df3eed6b3f8f19f2fcd4f776c60e82105d9c7cf89b7244b3f5c023c3e8ae3c56bc002310098535d63d9365a9f9ca4747126a4880be0f8578923fc63e8b9e4914daef00b46aae3e1cdb123e67f8595d376f83a7a810302047c435bb5006630640230058ade10f80d4b10c0c961989d295927b0e9e687dc6902ff32eee7d36a3348bcc5e6bd5aede9a8b701ff582d26aad8330230019c6ad7cf4663db346e6ea9e788d1765310cfe78e6ae2e6bfed98a69682bf54acb99ce22f6feff809492f436b32dbcd0302047c435bb5006630640230427a91516ea30e689e4c981d7414abe8c73b96bec060e3e1e185578f1a2121e49d3d95d4cb1a60e6a376ba7cd19b8a8c0230789cc73424ab87680afd811c5d59858225e970351ff8f6edb496931d6aff533b4d3eaa7ce5d9d12d3a89a8d9d8d02b570302047c435bb5006830660231009da256a154670639a84146e983272b19e95a27abe23da9aeb3ff55f88389f7499e33ba366a4af1b3b7ac34891e506478023100b1651c1dba73d083ae5f6e5fe65d2e616109aae00c6b1155523625c4e0f1d415ecd1dc9842a3989f71f48080cc982ee00302047c435bb5006730650230493f205014c002e53e84aa1e29ed0bbf401ccf1a7c87d657514ac6fa536d67bf610e484e57c6f1efd535f48dda414ec9023100a79abd4235a5076a46159667dab57208c9eec9f227d94ffbc20a58827ef0ae5e33bac75330ddf27c6aea10b595bff2190302047c435bb500673065023100b5089a896e3cb91a5f699b3c929736e4e332c479606daef9aa693661950eef447d1f06e6fcbb36a8ffd78cb458dce08f023051f6d651c9523753a7cb5efa95fd223218d5730c5a67c316e4dd9375984b9ce0b15c4d1509201ffd703af4286b0a2fa50302047c435bb500673065023100beb841d241f05c284fa445d4abc7f6690e5a154f688cbd8d0ecca8c11f4e18653ade34ade38ae9e1a7ebdff7b07c3c1002307aea88837731f2856b669614bfbc6d7a0dcce956a144e528cf039f7a28375110659326f2abbe7dbca615b5be5a520e580302047c435bb500683066023100f00080ae8502005309f72b7bf267feb1d1d7fa8fc3a5a3f06eedb1cd44c67b63aa464a618f267fa9815d8253a624549402310099e2a9056c220378fabf39b4bf46ed94bdd60c017c27897144fdf3ddf5e78aac3d00455c4c2f801863c197b2e4d4ade80302047c435bb500673065023100d8ef1f24c7455b1eb9d56a03aa375551d88183d46cdb435724096fa5e7ab0ef65941edb37099d3724485ac6f0356a02202304bccbe72099925e776c0e2aecae1d2b7aa4e1a5cccabf407264b329357edd81a417b5cb4be29ee4d6b0269d053e1d10e0302047c435bb50066306402304a6f302ca7b2474edb64bd3c04d46cfb30f79fa7d513522e8b45851dac20c86854de04ffc392847630c6e41a0541252902302806bb2601b44823fbdd0602c5576405114e4e7799a8930cd4aafdb5817ada8da26328fae522e90f95c0b5cdf36dd55d0302047c435bb500673065023100c1ab818e803d0fbd00b080e6a740316cc854b5a09d51968c87d7a873cd8096a82290025a5c09139251a434e8086309850230190cb89a17a84caf2b8a087c97ac53af9a29edd277f386621b6dbdb91ff7a2c7937994a06bb0b4a5ce2f382d6faf61b40302047c435bb5006730650231008804e91c91c2ec7ae032039989e9254b0ce20ec6323f3ddff3a4fdaa7e8113c2014fce50997b1d1821584b63ad238ea9023061285fe161ea15462476c293f10a815271a97e21cd0028034d341c560132fe003ff33b48bcc401b51632f5db1fdd7af60302047c435bb50066306402301cbe1cd6aada8ccb5e7dea662018546f4b86b1f3470cfe39630db728978149b3c7a3173760bae14073b5d94e50b2ff19023078014797301e3be78920f2016b39e9be9c52e534c3570c52d152ea06194167b7be188d44fabb732926c273fa482554fd0302047c435bb50067306502301ff8fed5753f900e067a1866ee9e2e6bd0e91067e8d61309f80de9368adb863ab980fc83d1da752b0b450adab3c68de6023100de83882d081c8bc29bf9305c7550452ba62d14da64e2e31ccb6ca0147abec9a5c04fa9bbcdecd73f43209789672000de0302047c435bb50066306402303b476cca05e3ab621fbf2585047dfb0defd7fc7f86972dfe9868be98d1c3683535f545b7d2c70899ba4b8d3bc195a649023041eb51ec7d7f8969b6e4525b0284a7c25d35e149a6cc2c5c8301751f6397c728be62fbe7fc8182a184703182ca1b7f5e0302047c435bb5006730650230776ccb9080bbee2c95b9e050badee39cc91db9e01bd891d1ac28f9f2f3197c8e59fd6fa4b3ff4dd5538b78fa5ae62113023100e38078d33983827dce0b5c2cd9fa10d36feb7ff7d948b1d0a017238c6163b31eb3370ffc7e76864f7cdc0e8436e746820302047c435bb50067306502307919a6de8967b8aa3a7988310ac5c8bd4638fd2e39c1d0c7fd14408ffe4e8725b2336abec76df519901a1536f5b4c16c023100e789e05e1d90dc33933fbee746873e358559391361b871728c2d1ee557b8aaa0c5f7f5a99d67dd4133350b27731891190302047c435bb50067306502310086ce1930f5bedd0603c5fe67a1aadc5f16df0d818aa606bc69d77c527cf23b29da780b8c3ca5efaf815179f28d7512e402307226b3e65df8532d671fab88c90dd570e95f6abddfe65b01ffcbe888f549db1b9c498b020f637c50b8556dc7ba09aa120302047c435bb500663064023016ccdbf4c5ddb66acaa40d0290f0afa7923f1ad92a46261386bd71fbb52c6ff9e94457140281fd0628087bf97f5a5baf02302000c59d4a34247ce5b7ec5f7dd0866f4294eb6e3a7a1ddcbb1958f1e32db89319fd8ffb8dead133daf6995b8597b2bc0302047c435bb500663064023062bed724267e8d32b16a603f493a6a532739509f27eda2b4d81477bbb5148c92346a3f67171fbdd74ad205cd500ec0dd02305cec78941c9ca0151e441164f856c90e1f6875f2a8adbddae99630f2ff630dac5ef7a2ee338e3c0d371c40021fcac38c0302047c435bb500683066023100e8746b00475befc42b7fa192b5c5473656577d8ba083baea8960f95d1921acc5da7fd71223c7db3aad1eda61f30329ae023100a98a8bb7319e45ad289c95124c122f2e985dc412124f1a7f4bf41e2680b171b45f24b62dd169b836b1499e114198b3af0302047c435bb5006730650230381c4e2f4a989207c4b8a0af72797a19bbb63734a63de3730caa330438ec21790bfe139af5e198d484e6baa3f45eb6c6023100853349d87577d81760962553ba17bc3b8d079a890e04020d24c4d538da76dca8d3860cec8fb48bb8dd3b0593400753a40302047c435bb500673065023019d6685f05f87222283293be4670c0114bd40fd0595d89966f2e650dee56e39f5ad416f98c2ef3fd776998ff1f74fd50023100c987986f6331009cdbb76427137c9d120bb06071f31b9041859a9cd65da0eb70a33e13d06e88d4c9d63eef2c5aabab640302047c435bb5006630640230031f5e75cacea9ffe80e5f208be2c24f41ec6e89c4b144f1aa897a431393f5b1bd80f96bc247e1f984a076e6db2f070a0230374c1eac0696e78fe9d11181a54a8b5026a2f3e31e3f82103c145285c2f488bc67fadde0f0007ac91f95f87e1f9d332d0302047c435bb500673065023100e8992739b962948d81a2835b0b0dbd54de0d34cb0dd9b2e74b495ab4c741f43a63e0e2685999f8b5c1857d5d1a6c6a1b02303ff68e1dcf9ee21cc93cdef71e8c51beef69d91292d3d076eb82e09152147b09646fd0aec15fe93efe259e636334442f0302047c435bb50067306502306bbbeec40eba5be5091cd8437737cc4246b0cc649d23d1f00ff65da75c7945b3ab6fd1503133d62b8599f3fee17f2817023100d8cd3a5e92004a7186af67ea00916fa991af45416339c92149c5b190050c680f919d53a706fb660914356e56c94325910302047c435bb500673065023016adb239dedb7859a5747565548b2a76be55bd16e8cfafaae930a70118070f0c51a4b842593fe50146a8d623d98c39a2023100bda2d9586cdc02ea52295d89cd6a7041cb199c2631f9ebfc1471b8b47fc2c53806644ba20e049197a8b4ee8a688e58590302047c435bb5006830660231008fe1167878b018ffd4941f3611195f28a3fee0e73979f7fe72279895c19e2f7ac112af5d467e3012d1d263c706604dc102310081fa57978e93487d68edaf057eb19f7c159f8649e4fed3a14be51a314443b5053dd293d91586470290159f79ea4a5f1d0302047c435bb500673065023100ceee0ccad3beab1fcd144541b85a0319ac61aa47d452ab06ca6b36c5e295199e987315b453da664376152be63319d6e202306c0d17eb1da5511dca15d82d15acb43a2d1689f1c25d17d03b818ee1006af0f87ea1ce1f760bb4a27bca87ca521ba2810302047c435bb5006630640230761d80ad387ff1faa0bee74e460ed469282c6fc5e80e4a32cf39496ef29cc20a396b3165be88fd50ee3cc2272a2e9668023036db2c375a0b1556c15621b3eedac0da463469992e41bff6cac5e08187a6b0a1a9f3737f4fcd94204206072167ca0be90302047c435bb500683066023100a86347e4cfdc9c3a510838fb0afdba2f6b4006710bc587fb770c1672738beed40570b381733fe6bafe78cf156c92c2f8023100cfcff95d94f1223b3e13121be9d3372228f1f1296f91a777e7ab2d33c25517e2a8d4cfc317fbda9032bc838d496b7d6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306bfca5c6445d158ce8c0786717e563d993dcb846348ddb7a8827c1e33b37c7021cfbb749d73f1419f68a86a95e7bc07b02306099b6b977e42261575c7cf79e8c6a6e3ac38057c7374b1ae019ec96c20d9b2eeb29c893a537e723e6cf64a68f4d2af70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d11797973b66dce57fa9cebe83689322e6b366f73a11aae9bf99a65d750ee949c723c2bd97f2718c89309216627b3cc023100d0f61e3733f0fdfc4398dad77fb46bcb508ddae7ccd7bcfe25217a8e7a8676f8cfd5bd7cee4fd655e79b17c676bc43060302047c435bb500683066023100f5e59cfd5c28cdb65fc0a9757ec28fddb626acb0d4b0e5d3eb477617f53a5674f02f1ebc41fc07d6f9401dc41bfbb530023100b01422edcd2caf78ead237f449c8c0edfb14ee7d8a061d90999fe114e279b711f69eb99198513757c07bba5600ac1a220302047c435bb50067306502301092d6bd84db3187e733e8c9adf7b896b61d4fa38616ea72dfd1e751e3978623c662ac4ac32b89ced00038168fd511e9023100efaf1e706ea05fad80a2f4be98613220d485f70221c42ab8f327792c71818216a4149cf80e1e0e9c915c8cd74685e84e0302047c435bb5006730650230670805d37952600d6f25bc94c558135a6a06480a3aec4d94b44faa800ad7398f71d75dd8b242449c037dae2f22c4d6d6023100b560b83918aa22a7588e0db6a9bab4b5aa1ab098a50f1033f19471fe68610b925336fc23f0161466240c7e6e263f32120302047c435bb50067306502306bb710edce95d9038d95d03ad95b4a49c4a09aa0c6b65696ff16ee77edb74f080709fa84297894c9cf7faba052d39127023100eeec6f11f8aa9c53e07ebb14f8607689712af08a281089e744e39d54d28c43bc9d880acc2fa71ab16510fb1d5884cf0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023006e299c0345d411f44af73382397b33241bdc47bfa7e3da9c866bc67f6d84c36628b3c70a912e2dd2ac217531c019927023076e7e6416e174f7ee5b86374f2b8f24a9bfb81ccc79c40698fbb831e83110cfb609f602f573fa22e03c228372174c08e0302047c435bb500673065023100ed2be2163fa5da921a5269a4a9b8ec04d180f4b10f4d3935855205a05f1005204ad46741b0259cea3bf71a18206642480230071f3da1031454c8b29f94b1685db1b17c37f0aa6f6d251d0ee76e71935f9853a8c1cef5da10634d32346c7cec71666c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304e40a505447718d741a3abe7b14de25a55ab213aa3dcd87091826fb3148cec94b49ac64e26d1ef55413e8dbf6b5a48c502300ad8becaab01849371dbe41f1dd8c9bcc8641db737ab1326a0d7c175d37e624e0dce06f1fb9e8798b0530d86b9532af00302047c435bb5006630640230388f7285a91685b53450a258b78edf4e7c3adaf6ff40be960d39590b40069b17fc4f4300e4f7560f4a33a3a7fad49e390230218d7e4ac124c98c17c0efb1332a58ee5c5a66441a951225ac7327357a00f61c608c2961536418f675dca123c042df990302047c435bb500673065023100841f5929a8b2239856f4e6b7b76548c1826864734ae1e5a4c595177aa990dfdaf3faff674085f0c0a93752b4f5bc424b023068107e826d8688b53bef1ce122775a6f1ec746acffc4f3ea1ab58815814823bedfecfc2e55db3cc3fd0e4453764d4c440302047c435bb500673065023100d4d9e82c181a746b10424dbf47cec0bd7be06f62623681257ccba8cd5466d378e60f7a93b9c60fab74365453f0a97d8f0230776319c78d5e4cdcedf855c6e02b84b67e065d685fce01066ba52b69e48a7864831ce80c36d7d2c20853661d6af819b50302047c435bb50067306502300c4e516901928c9e3e207ba003ddfbdfab0bdc588fe5d0fbf1ed5dec579a368cf06bc1aab1b57ba76cac490aba0a9163023100fb08868fdd4f961ec09c5d7a771b305ffadbf823576928a17dede8729e3e89d9004fbcbc5272c3bcc1fbd946e7cd253d0302047c435bb500673065023100c5ee514a356d92cefea7dc2b9d58b3a7dfd96f4a83d19953bcbfc966181089c3964f5b1452ef6383d1a1bbaefcd5a0a302300c900780dd854e1fa778e5f30dd161f53b6007dcd8117c378b15f523e229964029c6d86396043483bc60f6f08ce8ff100302047c435bb50066306402300a1f052ece68f46f341495bcef40c715efc0f0a021c5d4ddf553b9b9b395a6397ee75b22376b3ec83d847f47860551100230517054b73bcf8bd72aa8bf90fa53f9c5d9124c83df0d5821cd6b765d6c170935a6cffc4018542a40be46afc67bfcbfe70302047c435bb500673065023100843c79beb53ab21db1ad071a937b1c314d985c6df7f4d87bfacea061c1653a4e36718eefb8d05a4d31222071bae603f4023004becfc8ecfcec1fc6163dd528177296840b468d450e2ba9ca2f1b1ae12cb08ba0a646ab64ef6d16b428a086410a432e0302047c435bb500683066023100d3c616fa5ef10f992172afa56276a59a3aa28bd4c0e4e774586c69dda94734a577c85a302ef4d6e38c8480d8ec9a4ec702310086293415245424b0882bc38dbcb02473732e490bcac2181dc8a1086c6e00184127da49c9bc3d5d6df771482dc5b84a4c0302047c435bb5006830660231008ed611522e36be4edb009f124b11cba9f7568808b431c086bb2280cda5b3596bc3c1f66af2d55bfe28cc7f12546b19d10231008a63b2bd9a58d1cd3dd166060e83ebc87c26263a54ba4a90cf8e29fa2740f1611a8489d0cec4fa09460107c1c24bea5a0302047c435bb500683066023100fe1a220030829590f5c4b8b664fa2523b9d4bc10f633adf8519b76af5350e7043f344ff8fc6fece76e4906473e3852e3023100aa57b120ccbd957ff304cd439d06c4623a215a9048b8e7e5b70a221f7acfd9e64e2ee6027fa67f72b968070c6ac0a59f0302047c435bb500683066023100b559298538f218de5db929b27a625b1e507b90bc4176b28adea79383f4c5c6b0d7d7269957c8c11c07857067f9de1538023100d45ea24091671ea02c20c58c782df5a2a7203d3f47bd094e08b4197a45c97413448ac02c911a225eb2e7fdf5340011ce0302047c435bb50066306402302a1ba4b07ffc64a80d9177b06fb4bd55a51605443edbffc5b98688512887418f335f7dd057b6c9f981cde4971c2712c602304dad4a01747b4f9a33ca37180f8d94f069993c90874312ceefe39bbb49b2999dd56546da7ff735829f41fcf89219cc980302047c435bb50067306502301dc08ad42afbee50063a58fc1671b77bef7f127a5529016e325e4745318569cd0d94c968ff99f123b521144bd645f5270231009a108a0678d6a3ff9ab7aeb2d96ece60dc920f7a6b403363afe120459b7126dc9bb279e4d87af611c4c3aaab31c0e6e00302047c435bb500673065023100f15bacbfb56b9bc783e04cab1af8c5b370c66d904a0d3f462e3bc270eba5d8226606054a198799bf3f1a8da8ba0a2d5c02303f4c1c6b3679773cf6f137c1c093b2ac14c69998c3248763cf8ef47dcf6927cf7d57555bba817e202418d020713f125f0302047c435bb500663064023028a29402135022d1b4e6440a471170ca2e62f065b2f5a918672c01c304d5bd94d9658a1ec68595631fe9002f90617e7d02302329fe6eb85e9bcd83ff2c368db387cbfab5d0e5ab1d965f24d023f65005d760390b4ca9ed9a64eb7b8c7fd88b0e13460302047c435bb500653063022f6f1d0f670928380124078e6412d4c038923426dd548454b65e00802ac696b4f545830168699e6b50abfe131b0972180230230f9ece4d39581c63a7906567a1b7f596d94f39d91523e5ebec2bb3304a298e68e277f5866a93a8f4118225d5dcb7850302047c435bb50066306402301a732574255c5856ef63a8792f817e0b7303c3d6679e2144157b7b50a44f1157b1f29570f3e5df84534f2526a15269a602305011edbc07b1b1b0dc7fc5f8e15d6a13b27d245d648207bc3b3fd3b18edabaa68a39a3ae9a94db60cda4938e0eac57f50302047c435bb50066306402307e27eadc1ed650068d4cdbe822d00353888f9a1743a5f80d675a86ab4b5afcdf262177f12bc0c4c550b677e38dac617202304f6200d3a64c728f0e0247fa785b296454664465824b47c1d41ce59012702ee3e43e3c18a8c9035a4ef95cff6412aecc0302047c435bb50067306502300f9e8c77525169863054dde7082a95fad5bf1b6de3a4538fb6d9caa29a5d814db6041f625b936a9051fcb4900a589096023100befe3aefabe2d5e8673351207d3f496f0e0a56914149bd9577f244f28bf3e6ff296a76bf004221a4f8b9078b0a4d55a20302047c435bb500663064023061c7744c9edaf3d780299072d71bb6c07bb3011806d3b9e35a51e8477edce07a148396af1df993c9e4a51b818a40787b023053e56c257e4c15f1e7789995ff7759e830a9293f25364f2da210ea21e35a2103bb30f20ebc3e458fc751c148fcf64a840302047c435bb50066306402305241782f91f47ea8a2ac4188fb5744ee3676312314de0da226a0bcedc113fe17d21919778a22e48055edc522258b6c8f02301e2f551b67c99fbba6d5cb4931283326426e096117534f25f8a976b0995d7769a4561a82a82cfeef31f3e136418d983f0302047c435bb50066306402306e611d99f0c376c54036b465f31fa395cec3c5026aa12c2417a78892805d6cc16326abe3faaece3e402ce832531e3c9502306213680e9d2acdc433db15f0046224b7e1f10ab844386c77a8c08df55c10b0b049b8544de178f819bd9dd49624290aee0302047c435bb50068306602310083655e6a211f79200dff20ef459b1664d73b2a498b1ce2aadaa12cbf398994804b36775374a5d0b4520e788215991eb0023100d24091da5e1dc8fa1fdf26b49e89e264b5ffad93a7841ceffe674e36b8801c67f05f0acb4a7fa6aaa9cfe7123bd116a30302047c435bb500673065023100c33df2501ef4156eae9ed9c41ae08048d792636b64d70c788b484c96344ca6615938d01b275804673cbd44f08320e8db0230204fdac4ae5bb1a92c1b862f6514e566537af994d791a2f0a025da0fbac49257af329fd01d072e150be755ba4658de570302047c435bb500673065023020d2325cce602c8a90036c06f334827f683f1b46654227b9ab38ea7d885c42fe0c6621a8797da70f56f0dc110c75c270023100c421d1a0c47dc563fc4a80d51670c3a7ea832ee875dbd002c0f7d4ce1e6b46893b3b6d5e779201d1e031a406b38309b40302047c435bb5006730650230606c6f584be9ab2dcfc60f0ad4dda9aa9a3304c4681bfb4434e5fa6ba90914b133fa6144cf64108886b79dd47d1409fc02310080d1dfe16c251e01cf45010127c403abd65ea94b14f5cbe1a77ebfe0c351cb34bed8590326cc0d6717a2c296c72840250302047c435bb500673065023100be23157d8aff3a9b951a42661bb5a2d4cf1c0cd63fbe952eda96df52520c85ebdd5b3a5a6475d3ba4c425e4bab042f98023048b3c21d041ccad23cc7c0c02d765f8d4d4d24c9c849d42cab9f3c24f795b0bf14bd22532ef33998ed7417474f7c7d450302047c435bb500683066023100aa3f490648e0750ff183f1c961bdf7db364c3da15696a291ec9cc893390b8ed5fe235d2eedd0cf7e778912bc083014cf023100e3e6d1a64d30e0d4528949bc219305ac0f94b652f54dc85c5755f2ad2bb911b754f2d3908565baf6a8cce3ee7008402c0302047c435bb50067306502310090e7d665a186f5b88c7d7918c4d32513aa1c20391a93bebcd9b530cde29ba175616c5eca9ccf2b85ecbc3a0a2afe363002307fb607fca80fac68263b357cef9e87833ae65f973b07ad4faf07ce15c4e25191ddd42272e3ba8f0c60a21222a578e0320302047c435bb500663064023047a2e9d54f58ef01ce5f53f262508b547846da97d5d7b8504f0637f5d3975d444c15ae0c867507168a35dc2211cd50aa02301078b763e6f83ecedd3f131901cb8e2c8cfd76bd0597e3b9e097b9547a0d12fee30f523b3f6e6e5a5b86c04d7ab27d4f0302047c435bb5006730650230074ec5df52fce6341949642af2e27e448c519e9f0dd81bba478941aed2840902186ef9e0aba07ac60365b331c3f92af6023100b4068c1bd971cd2ba05b68a9bb197efa003b17362b5b909ac4d54abdfa650895895582997114f3e4a6044cc37ec11a3b0302047c435bb500663064022f2cf9aea5f9bb040a6b5b8d3398c6b74b23227d78ed89972aaec46f1b34a37cf9fcc74ed58ad83cfa5d483028060639023100b651d05f1b80e637680a04934c3dcf15282f18ab98e772cf702aeea5a9a3965b6c88651c1b31943ecaf72904a49115450302047c435bb500673065023100eb93d39fc15ca7d93a25f3a09a3b0ffda5f378106f8f01e6e2f9584101aa0b2cb5eac3decffe09df2abd118da31f8330023017c1bc6c44937bf4b89e9948cebe8cf376505ef2e6e4a2faebab51e693105e41b02398b59418c3e7107dc8125a2b1b700302047c435bb5006630640230289e2045a1d8eaa6e4458e43af1af073f7d4b0e309d5b640c70930cadb4d16e3b86cf19929ca56ac4d33343b9f46df0902307563b0c935140581ffed65b29bfd5c962aac40c4e3b7b9cfc6db58ffd2895ffcb92cec1c6a15891eed2d365c8f6da1f90302047c435bb500683066023100edf5c0f49e0ad3c6be45af74e7d2460840fa7c0be025158bcf2e9b6ecd515f8ca9cb54307d59fb30e08f4368ff230189023100a526423a60998c9a7456f56d5c062814738d50f9a9fab2b767a75e0d238c8d71489957b3929b6cc3ddefdca6cc6f5ca90302047c435bb500673065023074fbfacdb3b92c266abd058060521c46f7db58dde3092566ec9a3e09e12751070b2fa50a91854ca752e2db795ff9eb7b023100b21f6104564bbaa48a310801d12b45d8ac26f8eba1d608a794cf56edea08cb08d974a2cd76c782749d5a7bb729cb82ae0302047c435bb500673065023100c3c8178599deab4c2cbcdcf84999dc0f96e080cab9fbcd5aa7ebbc83a60d5b0b66bfb041cc7ec085d1ffa93a57528f74023012be47644480a6d852fbef9772ac7da5d2ec187bf0f8b34f2d1f475f11481f9afd5d3eca13fd78a373594c3f4a7ec7450302047c435bb50066306402301da91cc935bcfb7024cdc839527e978a04af8b990a63691ab86f9f0cd5cf03a12137958b6a220c6d5d5dcb17158e658f0230665e356467c22bfc2e77725117c318340ca6c2770157b8609d62bfb01a3638af486255d6c9d700b02e37abbd492119d90302047c435bb500673065023100ee89707b3a4dc37b112ba2ec847b627472a7bdc78313b95509436311aea43c845786e71ecdba11282fc8f954967f53470230729aeb5537485089180712a98ee7687894a6e02fbcad6817e6b272d4903258ff7b2c3fb6886930157c4e22b531ff14870302047c435bb500683066023100e82b20f7c89e80ff631ea3d577e886657633536b653478e677c1820e2c4f0e8ac67b4447b52eabf759dc32e9b0ac893c0231009b9c3394ef0a828cd067f43a30c1c8a5ac2c13c6b71a90628130b120067439c0af8d0d16b930446cec38135a824f5b420302047c435bb5006830660231008c93115121a9723403405bfec8b0ea8cec733919fee95cd2879f9217ae887bb3f8ca8629ed7c8af8a7ba4c457f686e00023100d2c8cb4ded30de7a5eedefc14ef773ee4f7bdf862d4fa6ec59b68395d1cf3cfc8be4dd123b385ac61c256c96b37e73ff0302047c435bb500663064023043069234dbe738e5455a72111a3e4526a3b57705d1726f109091babf4729eefca9f028d275320c3761a9740ada01558402303872611e0058925e5552f0df3bdf6146f39616996364722436a5156c2fddf3e50b3c525f09d448a839c60a2fc3865c3f0302047c435bb500673065023100c42302baae481bb6be3240f0e4f6fc1dc5252526d78b36437f23c8a623be21be17c5c5dd27251feb37e1047cf7ab7a7d0230057878fba7f5d9f879bdc6cd74e289df762b748a2caaefb404cead6e8e3b880f951640181d39150bf58de5958fb3326f0302047c435bb50066306402303c4a66e0089bfd2301e2159317e595678bf52f7c6faa482643f8c1f3ab29313b59f2e25e76fdd2446a3fed7accb6aae70230189ad08815dca950dd6227558ebcb5ed2915dd1336aef7865a2bae0c4b3490b478d981e41f7d2e393a4edb27a918b0020302047c435bb50067306502304125403635b2d8d629703eae064006faebe75c6a9de6e3dd49bf7d5980fa14dde54820315ac6347d14af7b9a82e81191023100d1e536009516667bb01422816606796e3575aa4fbf5520de0cee0ffd57bfe8a15fef842d9761f02cc71ddcb899478cfe0302047c435bb5006630640230293ba0ebdf8d0300f41304bbb43458a1737d6dd9805d3992ee102995000979939def439a6534652e9f93e663ce356f3c023054dcfc51c3a546548e8957ae55b2f971d323ffbbe15c115a56e8da43980687cdd71b31d02be674154c8dcbaf112c6ab30302047c435bb50066306402306d5b53abbd930fccccd46f6fc4a6cafde4e284f25d3e91041c91c28da5d23d216341324c4206aa57559fb38fc9c1b3a5023023a368f8d14d92f7f0af1a3f6e3a128ef5c840fa4b433202630fc7a5e39f6e2d3bdb4a9ae6cb456062aad671ad28dae80302047c435bb50066306402302c508cbe91b40c88573400702945e4b378c2a569d62c9a14145da0b5c717afc6d7f3a61b3d466bfe62b7dffc0883718a02306ff4f545d3645e5acd6c9f69b8bb3a920c9240692905e88ff36cfce7a92824624b69efc6222ee0b210c91185b91a1de20302047c435bb500673065023100a444df7410b57ace359584b5c876f4444d916f8ffba4f4db53ffb1739614861d33cc009639e4a1efe7096a1c4435a220023034eb7ab21940eb4812407d81b5d6d23e94b69c2fabc6d7abad38b6655d940aa4dc6129f6ff2e64926e854e8d6e8abaa80302047c435bb500673065023100ebe7917d868e27d73be417794b0d762f7cbf836c8a7882ad33e5c3945e3111c9765afe3145c7f40bf63199f89c3a24b202300397821998e7e02ef9a03925522a9f923681be2c369196c9fe9a9de0948dcb894b2e5de9cbc5f03fb682b780473e566c0302047c435bb50066306402300e6b3ccf8a310df605576032a86e1e74349f52429539c8c9673625f457f7ff048d03fa0ac5f0b674560ea419c8a1ad3d023018ef2bd575e515a35018898fbf1e0443b04b5e0c46d8e99823ea041f5ee58143f344c12e4c8c9b21f72399d2a7c0282f0302047c435bb500673065023100d13873e618ae19050c8c73b42c68397ce4aba861a961a9689c46b2ae2b8cc8f5a86f8c9561f923cd06e33c43af04f55a02307c0abd6f12e5ea1bbe94c6c58ce3670df231618b7e527639f005a09ea0571e536000de98738aeeb48bfc72817c68e3120302047c435bb500683066023100e2ca64be6955f74238ae1017539c2abfa9b2687b9eaed05ebddf853a6faee69308de015db28777daf436e4cd98f1006a023100b99670c9ddedebf85fd8d6a3c8b8c94a60dd5b6979370eece0f91b892be82d527c13113c13b870b9cc6744b4499744750302047c435bb50067306502301333da49b012e84b9e03d2a6d178de53ea29a3fc0d8ebfd7a592282ef01e556a8f7c40b8569c6c2902a315cab250fe08023100dfc62f9a6867b27298e0a60502e8367e16c50bf93b1118afcbdb91c55fb7b32fb5524c71ed50a4e173121d3d2527d5b70302047c435bb50067306502303f9c501a3bf7bdfcc21b4c1eac82fde1637407eca2d7f9a43c7408c7e34845b073873318cc5c38c375a551835e0bbff3023100c1969da4eb3823734813aef966c2cd5f1016a2b20365acb9783a9a0f6719547db0af81289a498ef78df957032095d6f10302047c435bb500673065023100e7ab5f545216854ca149e5f032ca1a35b010fb89524192fdeae6e6da11ec0c1c1f4ab02d4ee9632bf657d8e8666168b302300496d28d7a850d1ffd40c91477a3f68ea1fcba4c493b370a7c23fa5ebef1772eefe424ae284d8c139c8aef415e0313d60302047c435bb500673065023100a7229757e130eb249ab8cefe04fdd8cc357ae06513c5fd0633c94e4f8a2200abf3db5dd3bae0b2ec68504145b676305602306074630cae28af6a8955c457c699e702337460ce6db187108ea9dc65e4f3184c0fc9e6b21fc95260707890e1ab18f9860302047c435bb5006630640230671ff6965fddfe3beab443b8afe40dd7de50cbc1f04cdc1d723afc66c02e574fcf7289576f5df11913224fc3d8a42f5d02306e1e248724d15c303883248f423f999a1254c520a05f0906410a6af901235ef91f01d3f459d398130c0e57b95ad13a540302047c435bb500683066023100b92058d9b0456c6902430889eda28e4b232ee406b2f4163cba90e24a8db9d205877f0a0b4cadf967cb8d8cba2b6d9223023100ad5f87c3684e9a39bb6e5118394926b2c78cb2e94cfe4d34d93cc0da0d6bfe269069edfec65e6f59fa416dbc57e15f820302047c435bb50067306502301eb1c08712e73cf9c6a1879cbdef958091ae2936bf2b1f45126466af31530de78d54e0721404804d82480d597544f8d8023100e4a9d8f31978e5712a9c371468b9c06f73df8b59d1ae18851469791c325bc8231f4cb2fb3084d33bb3fbbdef9644eb910302047c435bb500673065023054e49f3651744564fd9ec4f386ce4dfe4ca265d812ce4a4421d7407e5f05878b0718ea94e68d060f1db435b6affc623f0231009293ab4f3bf14be8e1f9de380f579d58c9fad404cd63263307a3615b11447326c0d9f4f0081d87113c0e015fce4d96920302047c435bb5006730650231009cae172b67d24b1eb7e24e906567ec91330a3e0b93002fda2fff60a55288baa3fa9f7fc9b1bb8f0db173484e76aece9402303ff90959bfc7a2467f6d0d727458812afff4faae7235d775edcd3ef6e967b5d0a13ca0f6166a7ba42b3e5dc81958cb650302047c435bb500673065023100d5f31303816e74c6ad27e316eef254f2cec6dc4d7ee005cace21f69ff380a6b239005a43b856fd41f43047092a03d32602300f1360d7647d62cfa2e15c88c57f07d2d1b74351bdf540c95526550f793222a30a3684e032a9e66ec2710c7d29d8f7610302047c435bb50067306502300eaf71e9b653e2101aca9776dc201254dd8579a5da76bc6ebaf5357436f71baf059d2ef4b6470ec942d834af13a54edd023100aa2d920162300280ffe629dd3399ce1c73f87cd74203d471b49d8f22415c15dd0e0d1016deda0b3341159a8dc3bbd1ce0302047c435bb50067306502302f8c7f492878ebabf2c28557cc7bf85c5c1f136f7275797e12e646b4d2cda190ce7698ca57c59dd7ef1ebaebe55aad2d0231009bb4b0b40f17861eeb3cdaa926b79dd507db9688f06388360bc60014004c07a8098306866e50834ec9bc7f3c1b080fde0302047c435bb50067306502303e84ea45cbee2703c02b3d15d18f6c94f6be7080a363fdd94d13fe10b6dcb3fc2a89d56db6bdd9d2e1c3686b50456c8f02310094c6c500b3271d40ec554527dc6e68483c06e81b829c9c11f5e441f3e7a94514c5c95a80cc8a261d6aec7662a3de3caa0302047c435bb500673065023100f9f3d12f6e69d8c8bcb8b1758c5a4d0e965f5285b8e47e4f7676ceee0693d17cc26a4121b03578b4674ee5cdd27fdac302300e4c11300a2774092be2140e12f87438557061cfe4e74a9c7189ab2d8975d129c46948e276407e06e5bf3f6ff9f694b30302047c435bb50066306402302a0c441cb39b81e6c3ae2961b04f4e4bd3a6c369f8010c7d5edaba1a1ef84550b78e78bdab188ac95d33d52aa988640f023078cf24789e2fa3fd50e5e10f64c3d21217bb84f29958dc7254c549780a4f5a5fa5c44b2f5985f5a1e44bee9c8fa333690302047c435bb5006730650231009aabdbf8199a092e99093f6c4f3df0705a68f61cddd4f801f7df5f8d08ea435cd87f490e09ee5a9460896370f0dad00f02307a507f5a8176ff479ec7add77d15d63ee6e216becfe3ea4d66e3597914d580cd63b2e5dc19499489ea273a2007f0da940302047c435bb500683066023100c7fd5cc3dbeb01ed058be72ca8ce44efc292b991853123163370b87fe54e6f0d46c7998771486af71c31a0e52922a5bd023100aa52d1f360c80e66639137bb51d9db56a50487972215ec7423e0c6c1b9370bc40631a487dcb0b498589c827c71fb05670302047c435bb5006630640230492a9a2828ef7c393fc0fe909ce3201b9614436ed392112782653b295d50d745376ae7494e8e1c89b1981b65658db4fb023076c4a5af804e092065c7a2e6249607199d216e35c51e9836f454c696b43bb1da4f594e03a4769bcf2904834d3d400cdc0302047c435bb50067306502300c54c657b98db8186795b19f672a70bc76097f9989f7eed4cce79033a508224fd9a8ddada22f1845f7f64e745d38e682023100deb2599f2174ee1a4b757fdd5de49834050f4cb229bb5f861b8f78d9ad9e0b18be549eb412e166d28818eb7bdb8486400302047c435bb500673065023071ed63e8e781ad9aa2f20cd7984d8e6b44822569a0127e068b0fd2dc7fa5371b48bcef0c919a8f2eb15a5c0ae1fd9cb902310088ba7012e2eac939bbd2d008230a31c17fef6f99c5b613fe7f9250f68dcf90e5a095bc995ca99d9cf07bf3b389712d720302047c435bb500673065023100e22131193d3f0e6dc0228546c49089bd663fb82143f30b87b1ab3bab7e97b5e32bcbfaff9ae04235bcdbd1211d6640d30230125b8cf07c76fb1e8b8ea3e408704f42e1548ad18c3e123700bb77b6abc608310c52d19e2455d9ee6bfc3aed70f5cdfa0302047c435bb500673065023058a4919ab2caf1ee6017fbf4e6d1df897bbbc98cd4f5de1eac6ffa23cc480c5389418237781f51adb7be377ed561fc79023100eaa3e45d1a826cf05d3f48920836410e723dfe15411daedace1128a652bbeb9d75006b3da135d69fec6b544fe266bbd50302047c435bb5006630640230151a37ed22e5584d3a1d1367bac854f063157c47ec7e3e92eadc7868341e0dd10952a5da6613905491926bd73f8db4b202300c2b56f1a142d90245d1eb10da640d9ee999f3ac6b8bff43e401c4d4ef3decae4b1a87c938d035c9725974259f2cf4280302047c435bb50066306402305968327170768e62402bde543c14dbcb58f831c7e82defb8221687328d93c828da73b8cfdff813adf03125a88acd22fe02300b5d7096d1491744ba0640b703fcd6be6efac30dae87f3ae9f55d90aa2a4f2f4fb96d5fdadf5acbd49c6f66be60dfeda0302047c435bb500683066023100f7479d9a5f5e83c734b9fa2990c51ac620721829d2ca026a83d487bde611af36036ac9661a349f733a2703c8023c9c380231008260e025f16ed1f0136fb8cb54e61d65cc3c2eb937987a8e989072ea8a752a1aafa4d902e67a1db2a9b6b816efec513e0302047c435bb50067306502303901884521faa56a801e81b12cfa3221679e25378b7572020d6e8a71e998faeca2e8b290786f24b744224ae11ae3565c023100ffe92398a6a080eb005121a2dbce9db5e9f3cf242f8d4aeebbfb0963476c3d99f36981beca95e9db886da508362755d50302047c435bb5006630640230194eaff5e0178ebe74ae7c6d6194dea6f2d8b2d8c1afcf5198f819b55c913ffba8d55d744d174716e3a7eab95d5105450230367518d620e3529c49333d65337e850802af8f2b9da5dbfc0076dcd701297247bbd0ee79eef1bf8bfdaba3e6900ef7de0302047c435bb500663064023061c3b1797f03cd1ffebba0ca026a262074a8f81d038c019abcc1f80735d05480213aead0cfb9c4f9cd0a9a3f9385124202303c003a9d88b36e696cb49d5c84aaf32abcf66023dd4a3c6feec1cf1da4e26cad16bbcbc607d1fd3ce37802b51f1e869a0302047c435bb5006630640230073cbafd6657c2a3cc26536e3e4e50c8423c24b518d6f58bfa974963e231fd925753013b72466ddc4ddfc31fda41803902304357ef45351e948200fdf82b712b0fa163c6a36c88b7c6bdbdd17f1128e43ef9f51ebfc8514d0eeb31466f6282aec0c20302047c435bb500673065023020d27d8aa3187610ca470c8fecca0531c75ebb3c2d41776588c1ea9a86a3a1fada7cedd4b9b9d4664fb25d8152f4a6ad023100fc5835fa1f851f27fb2e4fafdeaec00c544f98803fd5d75f00e0c586363bb1bfde3c13f2d4d2e578c4b5a6615c701c640302047c435bb5006730650230721fc9e38f6dcf3252a51055f511ad736fad7001218daa62e7158218f5dbeb51f067f873950fe7df16b56308a17823db023100a4b5b9885894b2296526ff82867868d3e383f5fe25c100adea35692b4032f793714abb0a0a9c8979751c0dd26850a3f20302047c435bb500673065023100df5ac5d9277ed2ed4b651475425704586681770cfbaf502aafcb344678fadd9a2810597a118e5cae5bcdb37a26e7a4e402307286e94736cdbd3822adc40e8b8a6d7cbf0b55cfc08902d7697e098f182bfd3c48a7cc6ae77bb26122192955677944d10302047c435bb50067306502310080f51d7678f60034a41fb16b394f9f71f02dd7cfbd533928dd9e391d139b78502b88c41b6cc99ebe35df158235c6b61e02301fbe06ac90ad15363052d9359ccd05b5827b296a4d625d1971f3b0d7c97e735e285a4c148c9b475a3c645932cbc7205c0302047c435bb50067306502302c68160f7a1659e3bfcea31f872cc5858b7090eadd63522b9fb6ebf039d53d393715558b274dda808d0f13802a3a06fb023100a7199fb367c576798460023a7d3a09ebb2a19edba8de43630463c2366fc7bff13c9be07ca68889d12637baab77eb82f80302047c435bb5006830660231008b8f9fcc6f4e3ac3f96b27d26a6b3fe376f225559e627df928db727405a779ebe764282fd8210adbe6fb15cc3458fc0a023100d5c4126c4044489addd00786dbdda706bdeb9ee61803687e9cc26af1c1c129f8293f971b0039ff8ad5255b0dfc486d500302047c435bb50067306502306d99e7415e2375a27d2ca1353ee290bf2c6359dda45fc61a6016c00c1733cf1fde41f8e3626cceb33dd0581e6f91a097023100f53ea0dbb104445bd50b20a623db0bc29c84fb352a632459d062034d093f0f50cc92d69ba92d4b30578f46db2a00065a0302047c435bb500663064023070a90badaf8424e4feb5f9cc2bb786a1317bda6e4a6f43b4720357381b6eb1502a3262f923447f4526099ba2d5940daf0230384868ce259c331b6f67ecb5fea820327d041415172bbffcd6d8e123a4d2737021eb833ff5798da1814dc8c42d20c2bc0302047c435bb500683066023100c1c3edd689aa1af92838cc58931e24729179b62e5f3ef5b971cd1a1b1cb2e30b8e6776fa1257b6a57e18ab3b2fe1883e023100f40c97ae41b940d7950a05c04778c3f580d941e7e18cfa14ea2bf0a753fd5f48d16b9e0f5c67800955c6bff52bde9f230302047c435bb500673065023100ae76dbe52d7616f56006e90d69f491735f7cafca26bd68b2cbf150d5ac8c261958b9222cc6604377f47dc3281bf3cdb2023063c5dc62da4ecb1e8946986c1ff84964f3e2250bd8c66f4d0f1b03d55e8b1cb996646a5008be020c1ff049fa82b6ae1c0302047c435bb500673065023011b14aed2568689559a346440b7f362cf879bd42dc56d927ba664bb0fff93f53a63c4bb43cb163e3c508ba60aa53542b0231009915ff5f531e9bb0014caf03a098beeaec6d5492a688f35c897ba64023f6bc9bd96d8e6c3b8b448cca0d95b93177c8db0302047c435bb50067306502301948f584ec3016677870f1719cc616b5fd133cee9a9a4b426d0efd569058ace7149963e5967676dca567d3145b66401602310099977f3dd61934ad1dc847f7e9e189cb89fa9f13b3ec4c17eab56fb706d54c948fa90da6afb7d8ed0aeb7c66ea44ac770302047c435bb5006630640230050c0bb23df2b016af86f4b3044dedec697e93001fab0bb02e9ebf527d903904b9519a33af25e0af5d653fb7b3b10af902300aac425e2e30c95ea40dc907b571a778a89fa84a0c51801634cb3d2c175947e8b70322cd65774034192f6c9b9d99611e0302047c435bb500683066023100bb8ca59497f4684aacbf6b012f98fb3f269299ac4984eb314b7e9b15457b284a23a50e72b516dc8184d7b7d1dbc48229023100bd70353ff14e346fcd5d1d79f13647edb392ef31a36740bc0c635bad9bfc4eb3e535508dc627578972387bc9e408a2150302047c435bb50066306402301753a4b3cb92dfcfb7ad146991540183555b393c8aed703bc74f01f5c45907ff2c0683757c5699eee5d9d0850bb048fc02307ae706d593942b2aa1128d749b2d629ddf2e0f39e4aad29808072df0783c205087fb462f8122198a65733f35dbadf7320302047c435bb50067306502306ea197199dea56bf856fefbad3f055b694e4d7f803d430277ebaa1a073a9a458fb739e071e4c09d1268b9bfa31a4b7f1023100d797fbff86d7ee2be311b339f5d9bcc24c4c2c993700360bef03fa466e9b780338d61f3ff6f733b632abf65793d210270302047c435bb500683066023100fb989e0e0ed3fb85d478dd3428f007752ff9f9e28b8367b80b3c7e80ab392773f88e98844f12d81b7406f776e2978ae9023100ee7a99b0f3b8220ec24ca0c6aa229c42bbfc55c883bc964fdd3639335529d6fa68ac5f3a3a954cc280aece5a4a9fc7b60302047c435bb500673065023100f8612c40c5ac73e86b8ba3950963a552c9b6ba4cb2827d811fe7e2b1b77ea2dde57f4164c11d73f839c8c0f4f35f38c2023026ce89f44c9570d01272d35b6eb13d304b7fb8f351a88af69970571c95cc1d7ba1186877dacaff61d47ef66a0b5800140302047c435bb500683066023100f731352ec22a2ae65360f63907577b48b37f0e19ecc79fd9d4365c76b03bc42038ab8c324f3cc86cde0490e5d23f877402310084abd6231646f730bbae315034000a184ff9fc28d668926740ceacfa73c53a22b33f8754fcdcf2b4536e15861da9646b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100817889a82c7f7ae0731e1e3dca832abafca0660107d7bfe9ff02752871553ea4522fccc2ad04e2b8508c8dec57bb404602302f56305d75ed6e54b8e07877094b07c50a804d51c29966c4302134ffbca04849e841c17b9819a2247c405d450088d2410302047c435bb500683066023100dd08282aef5caf543d09dc5e0060ea9fcdb4049188fd97bcc74fe1fca4ee0f5fa372ec516f057cb3877b161437dc925102310099e5e7839c1de9966a1622c2be0aa862e6b2a92c388426d1809e7c68a2130e34c5281fd632d22dc2948db0c3131659390302047c435bb500683066023100fc3b8b67d169ca56668e48bc693b4428bec3c2959d4ab469d69cbdf46b5802af59cccba340f6385f6cc3a4095065952c023100d798fb2ee814a4485b5c6666c0e6a268340e0c329429bbe51cfa073fa4a4f6e8b303707698a21e8c646f9fe14ccb39c50302047c435bb50066306402302051445200892138210e1cf449589233c6e7861abe3a44dfd3f67253a622c142257c891d917e4da43a16588bb6757f5302303d422b4ec94d959f672472fcfbfadc6edc5e410fe19ab66a150a1d3b1ca626f91fac0346ea6d64ae3c5d5dfd10dba8cf0302047c435bb50068306602310095beeb52b3ac2a139d417a42171f239dc04857977331c6d3010dbf48d07f413fe5695f61ddc79c9cc7317db0ac7cca95023100805f06a014cef9fbbd2f29749b6f09c36087610626aa32c47fb0c0b2e251a620faaa95cc102506c28247e735b8edcdfe0302047c435bb50067306502300539f23ed34fbcc795b687518cc60b536417af5df119f7fcb3a689fc71c2e3595dc5f853493785d43a925eb71cbc0ec80231008fc6a543b107d3a8c71dcab504cd2d87c7c56681f5a6acb0bad135e66be915aa69adb77b7e971fa16f7319a4d8884bc10302047c435bb5006730650231009015050ec432e686cee221cd4ed046a6da597f53f1ba04cac2340f0358a27a0f7e17b3be68c3104eebfec26ef5f3b23f023063e58b3b792211d8ebfabcef18cd44d4ad60444f6b48f2e1e465edca7bcc03195226b3b6fc17f6919ffb85bb752899600302047c435bb50066306402305dcaf774197731f92a5572a7abb3e36af14a2682cc77f6f8a0e6e91ef836906e77293e74ac55bf45cf8cf47d092b665c023021ca444d93e68de3670d64c6bcce02dfced2ac2b1928e907ca5d0e9f90818d1bc5fb01513c8307afa24b7d393ced45360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c6f47577c02baf6e91f6dfe6972ab1c334d6b5af81a4d261b2b3d0e44809999be3b0844837eb72e2bb09ff1067f0b043023100f951c2baab293100785b84eb08e10f9bdf2e94de4502c8dc0f22e05c25649474b7382fdcaf471f822e5f4b0e646233f00302047c435bb500683066023100aab597ec01916084326187de2dea15979f417fb4b6ccd5aeb23951584cbd31c35bdd4466ca9dcf2556590d9733cb44fa02310097368aee4a25a5b2e9ffce4821428463598a1a69140761b882884aee7e264dd7cff2f4c0156e1c66e4e5f5722c0d6a880302047c435bb500683066023100c0e44b145cc62d1e078ee75d187df7881c069ce4803415b5059f5e2f3ee6b2b9080a6af04fe9166739309e1722bdab04023100889eabdbb5f3cbf50760afed3fcb61594b8228ec717d67ad4dcd84f42a48cb2771c0b498b77e5288199c5ecde31b9ba60302047c435bb50067306502302e73855b964744ed8080f72d4e8e83d55e42bfdad8957b9e9a843162476b27445611b33283e07fe9bdd1cf7f0513af55023100fb2ca1c1fa11e2502b42fa16549ffa75a965ebe4ba19f3e14f78075e1040ac6dc7c6c6ff90e6158ceec41d849cdd8f520302047c435bb500663064023061f7bbf5065722f55d130c23769b8d65cb61d24392086e03cf5d746bb0e5095a18272ff581ad9cdfc15da913a30a52cb02302a90506f80dba044ee58761998a79f19353128c08a8b0e1a9ed14065e3295e362133ed2ccb3f86168d0e1072be4903710302047c435bb500683066023100fdf89743d4369b5c5b38d3650ba0b3f80f81691b73e3b326984c3ccf5e098e207dd73b0688939462f5bf79e6048a6ba5023100a88a6e28533d965038e17e635118f5dfc795954d8a295f6e937bc519dc0cdd31264ea3414d79cb5a3c9b7075dd4965780302047c435bb500673065023100ab2b08caab39fb687cd78f7eecf05f209d990614d65bcbed4275fd26888ef3eb6286a32c5a369b94eb48044b4d92bf98023047d40eb3cc9a2bfda306c23f580b405c05f1066cc2bf1b78002d0aaa6de849a4915ded18b40fe38384772c7642dcc5020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001f705596d5635a13312b93e5ed7f7a1b709af734a2bd28e607bd589bf43d241b842702655d073bf7da5335339aaa48602303b36b93a0146bf854b236d69aca3b6dd0abe2645177484358170a2a3e20de8cfd745a38cb836ec2bd7de415dc1bb42810302047c435bb50067306502305db17c2da579a19110d48d07f4e7c1b650e62952de500d4d5b6df8eecdea19a6b75f5cf0206f04664f8142cf6306e673023100a49ed683ede5a288b18aa09e6411fc40145e2160304eb1562b2ee033bdb03c587c47a5a9b925321e954af7428cf090290302047c435bb500673065023100ad1e4f432b8b29e05746c134440d185edd823a33d2fc2b59903c24bf2a04c577221eeea7c148ca3e87d1e473aa4283d7023014fd263031eb8cdd2eed010ad476cea603a551cdfba14883a1e69e2fff4f7b92b1adc6b50186b626d7ccdeede8c9da5b0302047c435bb500673065023027f3474a70e08e5ddf463f0fc9e20ba913198d71b9368e00dd595b8a9e259a639ab883480e8833a0a0204ad45f461d88023100ad9f3c63bc899304d0010c6983f70aa2f7466ca135f171e764e896834960fc063341b9bfce478917d7762178f4c0ca7c0302047c435bb50066306402304cde0b415fd2423942a92506247f6f84b4cb608b2ce321840ed16c7f6b98aef84a5c34bba0f73d13017a2ef00cc9005202307aec7e07791848c2a608973fa2ddb2c67c292cadba93dd05d3579721fc59e5d30d22ee52a0a8230a094c0e250bb60a100302047c435bb50067306502303f95a0bc3b24fc8ef07c946eefda59224993d0084f32606f2042ae29751a290ecd6e100a67df39f265348244d182cf2d023100bb91c4d5a56e6d8dc836d48ef27598ce80d38e154f66488791862b004d4e4eeff299a932e19085dd1764dd26721d446e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306fe7ae6cd23c41929a72431736c6c4bac669a7d7ce7c3fa90e134cef137e3f919a3ae7fa9225894d3b4885c87df0c46502306eb437ae66e3a3ed25f7c14685adba7107e3fa6d9d8073d79e14b3094cad35d16135d10fbfc20cfa548bd2ae8ff188a00302047c435bb500683066023100964c4775c279de09057fc09ca4232c54925b40c6bfd9ff3110310588b6ac367962a11742af9afbed8a101b59564ab3980231008d6914038269cf705d70a9afcb0bf03d8c9e8737f48b8c5e43a20ca14aaf45d3f338853184c77e1967c43916a32b277c0302047c435bb500683066023100cc560b54957766af13dea38e8563df69af86bd0901fd469c140e02a12c409da669a459d261aa047cf30a8d31efbd702d023100d4db1e96db408da8166e2fb63017238b8faf2fb0f1a1f2afc0e6a85fdd07fa1616ff04a69081d890aebc51a848dd8f4f0302047c435bb5006630640230744ec40749be48e00f067622b270d222662b45415211361de1b646017b892b4746ca8679415f5ccd985786eaf0a892d502307580b54e684cb50265c47a3f1db356d147a8a8f917350b4d028a7c4f5e95b1047b1526f5d436bffda8f0671f1d0238570302047c435bb500673065023000fe3db79278514212595aeb09306504eb42aae67f33fa2a34653183d4d75163f778abd3277535c3a7e7efb636a53d37023100ffcdaa860a1b15102cdaeb542162ef99381e660ec187042a79768621c712110a9b6b01002640a177abb5f05c30dd3fbb0302047c435bb500673065023100eb6342cf85ef96eecd5d4dd67d54f581f47c151078c57b0bbedf0a033828678a7c5d06c39876664cc131437b02ff0e49023000d6d016169958694f9307ddc7af8af9c773429a73577bab1d402e86800a4037a2a3375326c056fa57500dcc523ccb1b0302047c435bb500663064023048821f9c49477e95e1911c34a0ee287cc4aa6fa72170cdf39e2f474acf9eb888815e94304e1c3f31ad334d4c162fb77b023079a7fd15af8a3fae6949317920232c87b4d789d162c57de88bb862ce2aab3d4bf9f4a07189ba80c4c3aa136ed29b21870302047c435bb500663064023027f46cf34be2600acdc5a2def552ac28b784af3d47bcc664f3be4cbe5621df4876413c9ed3eb2514bbad0e2a351338f002305bddfab08aeeafd4743452aee2873431ece6acb574aa0e8594b8c9f1eefd5ddf9186522db2d77e17b9c1561320a259880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304b917f27d2bc7aeb711800977df480b3b5c08a43d264e3336c7806d045c3c4392f3e925bbf1b2dedd607ecf3b62965aa0230444f16a9a599e04474cecc50bbc60a19a26c91784c9fa3a0569b6a41df1924c3a8ebfd992267a44859f04620482f196f0302047c435bb500683066023100df881c788df0879a8bbcb52aa4f7cf698d766ad5e929613abfc95ea4feb5e2edeea56cb3d35ac89a019abae2774cf431023100d5e5facfcfe156324cb83d796ee3b7b32e910dcccca74f7390a0c4f2c0745a322c2b2823fba33d00ff05e01f0a60a1b50302047c435bb500673065023100bc000eb5b0b4309f87abb1b28761239c021d423d122b20091a9f3b4c95b5e7fe24b0d7555cf2d36fedde76d5c8f64f99023031fd0b247ad98322ff55089be9700196ead9e0d65d58f0b95ef3da36f7fd262c427c4bf4594ae762845a93ccfc8938c70302047c435bb50066306402303b3109381e58ac81b8f4c56373f89d722c4d8f5f6681957420f2120c89b947cfcdd6fc0ce0346757c92104b9ef62a36b02304b4cec292d8f7e007ceaa08fb8bde9e70d5dbd098533088588c992e79aa7efb493aa9a597b7e6357374574d7b594501a0302047c435bb500673065023100fbefcc0a8ee69598d3b9f106ceac84aa1c0770cc785e05c8e745a3549da53e0429d34198042ee1b6b2c5650e77fb3c4a023032fd29ff3736c54a3e91f1c7c703534d164bba30f9edc8e7ff6bef6db7f81a316692ea64f4a6bf18317c0b7bdee08d430302047c435bb500673065023100aaccc608da2673404768febeb47be18ed4d6f1ce1c19867045fa6650f92766dbf9c86ea44d5617346b8a520034c811d40230324f5f430a242ff3010612cfb7c94539907d168acf945df5d53c1d60b7be94c5695e0c3c1768481d462451f7ee8584890302047c435bb500663064023044f98f98295567dc48448c8261b22eb7b42e506c65ca123a1cca2dbafae840d539d76896ff63fb643d50d16c7af19a4302303cd708737fd6591b974e2d2cd3ac56283ec81608abe73a6fb4100cd9be6a3e828806e89c32be6ef9a63e932df67a9c390302047c435bb500673065023100b47be40ba5aa242e27dbda22713251410bfeee62f5fa3b2262c9c667cddb4ad6e6ed39453bb0c7691020b27a3ea412a40230167de6967ecdd4498845979401012a1bb011f0699a7154631b0a6f0561303bcb4287a97b0e6fc04e66f62042eb4b1ebb0302047c435bb500683066023100d15492cf5a8d7d17d6995502cdf5cf49e53c390348fe2956c5e5c2043df2ce7efed614f4526add20959835d6d520048b02310095aa4db2d91995c82d500e751166451af6dedbfff183ec7380ae3f16bd2605ba3a11c863bb647c7952b7eabf5097d48a0302047c435bb500663064023075c6e8e724d2e3bee469c991df93f352ffc3973260b5d9115cd54c9f858b5d8f100cb6a3ed7ae4e21d92e24c1ccd5778023030f24af37ab22148e7f0d7add28efe8a35505e2a55a626607715f50cac8f321a2cd55a6419fb68c93719870510d1cb610302047c435bb500663064023036a11718c939770c210ccdfb3ca1a2ba0e42830956ed16625a9c04981a19ab3ef42696f0aa3bdec310dfa93e614c2b0f02306e1f871d242df3cf27397704dba6478ac05951f3954fc9fb963a5cc60bd0caa7b08c371bd9c7efa135c465884fe16ab70302047c435bb500683066023100cde63a4840073c71fbbfab6694ba17fc280a7fa91277790e57781aeb6e10725e5af90f310d087aa7fc52f0c5d6a166a1023100aa7fb423886e105e01cad02d2275406225ed0f03b729d917f63d7bd77bff9d0a745d261e49ede3481810aea4ea415c670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023078119203fc0f6074d3b50035ea1bc702e6a5231fa6b8e21ad0e265648b77815cb15dc3887b95d0161fa7c50b26ea529d023100ffbee882cb2ef1f075509ca9ac2ac2260ac10bf6feb2454f9d54efee4c5722b285dd4de4e89041eda92a2ea6d33170d10302047c435bb5006630640230726832728906b8e47bc8467aef3f037394259548b42e1acede18512ced4d240986b6a123045734406f986501db8a801202305ea12a511408ca159b17c7c2ccd27f4dcfc752c4cde749ca54a0cc6209077caf073dbbae55b66c8f760eac303ddb61ee0302047c435bb500673065023100b9a5fa739d760c0e38dff8f634a59e7cf15d41493a52a6a7978e784fbecd50328f26ee957a48b55ada4b35c4693b1578023059934ce0117e01b50861aa0a85df5be2e9db8945565ac10a61e366997f46b3de92d05df3e192b02b92d305295d5a28bd0302047c435bb500683066023100e1a5a8bf6fa3c0760b825b79260f80f335127174f4808cc786541daeab62ec065bde2f23420415eae7efbe850011406902310083e4e7a45c803282cad35514757e4d5389982f47b258d969740e4d763703b06824a153c70251df15d5df8039244c3f0d0302047c435bb500673065023033519d437ee0e1c84dd300f7d9b596d974a634750b3eab593482acbae5ca325dba45026e71b598b85ac80331cc49d41b023100aaa4e01142b027e1339dd76e4341daee1495936f64b3fdc81e7f270991ee69bace8ae2063601fe6fbfc6389665ac9c370302047c435bb50066306402306911ae71de3d35171f802df08d2ff78e7a1ea0a4af3f57e1b8cd493ee89baf0075c254a88ae920b4f704d3f48508981702307562ce34e44057c996d452779aafe10dc528376c7860b3f088b1408ec6d12044bad8afed21c77e835ed5637e49f336720302047c435bb5006630640230571add8e9857b31bce2e38e5308cfa9009e415ffc9ddf3e5a09b6e621ff1020083e2c64109d8861d40f8231e7b8dbf48023012bbd2c6bacf016ca43176d15682d41fb1234dc244e770dfa1c3869de59fd7d89a81a9db4f695bda8872ffd7ca7ce2350302047c435bb500683066023100fd84bb47273bb7b6bcb20ccf203bf86e15facf9f7e3dd022d21fc217a15492a8058ec2a514d5a8e2879bd93ca3adfac9023100acd82e0852b34167878a919ea176ed96c9039a7daee81292cde52d4c98dd9b7e0d0679c0a5f3e24142b0b42fce4b35fb0302047c435bb500663064023033305782378e2ca3624a75567c0b0fb154e3f83718de2ec1b915c3fc41dd0b136e6820dd8a38d17beaa993d0550eeee802305c2adc6c05004f0bb39641ecf5430f69f448f4643447b36daa0434a959862c0b8017b17b42599f8c44029e3a59d7a22e0302047c435bb500673065023100b8461de2938eb47cc1df0376dbe7dc9590d1eba9c4da319d92179240f52f330d2049d33d763c72390f3bc3c8fe2f75ff02302e47e2ed4ef8a5e1f4f267f56a24fa058773caa1193fab89c5595d3d71c93b71ff361f276cbfb903a4800ce5e6f633c10302047c435bb500673065023100e793b6ad760112001ea6af8b39fa2b66d07979bd9f0daebec4633bce83c453d9907c352e05cd95eb09a4e1f682bdbb50023041c89bbe1d394f911a6783995a49b95f632f3cd9f7fe71125124a6c01353209db671b9542caa0fb070c1e13569395f050302047c435bb500673065023045481ef5832f4aacd08517069a5691c02b5cc295b70f61e89a505419e8f453748c567df2ea3dfa7e23b223c8fa78275a023100d84b151acec9ff0a91a585760dc6d4adf6f5133f22ddd8a5fc9603227562e1723707bb00e94f024de4f4b93894196f380302047c435bb500683066023100c28bab0500936d65ac5b1774298570442d7450870b632ceb6786b228290bcb6006d6a064616c6edf9049556a7819dbe2023100df16ee8fc01b59cf6346a6f885cd8adcf5848ec4b09f168e15c2589dea765334206d3ebd727cfbf3efb33268bfde57770302047c435bb500683066023100a82e7c23bc69c4cf7be9b70913a9a6fffaf2495ec34f81a3cd22da030a2772e95186ead371b3d91b8b1fa572ea86971d023100fb853f44bf9ac4c324b9a3a0cdeae8cbb713163c9c4efecc215ef44c0c45e3fc974e371f5a561e2fe9e0c21d8dc232860302047c435bb500663064023012986d3dd797a1362466b5cbbf4d694e8df84b21a22f072dcadab01dd153b450b0b63f7149d65736f4348e5e6533e60d023050a509658303613e2e76994024f756515a5675782bff76df9572de2cb21e40f8717596bda4c3c87a75907f8ea6e497f60302047c435bb5006630640230690401f65b55ecf4d60546f967918ac433e1f87333bcfc99d2378948f76bd71c439b81440d36a255d1911248028ef226023046466280aa36e135517ec83871774ee2988710146cf9d07a21dd4cfb9ea480712ea9e52c7940db481eb72b817fed3dca0302047c435bb50067306502305026fc47d396de4518611a9c6c72e930d094a7c9c078b7821815724c2cf975952ae8890b8ad730ec7882e34ab0f350aa023100a242e7a98803d1447ff9aaf1e31244cab9981ebdb99d24e1bd11468f77fcee05756c2cc158d121b681a7dbdf1eee21fb0302047c435bb500673065023100adcea1c6b48c7816ff36656cd6614172bed156bd64c0329c8b6eb99d2b4d32d2f29a41666d251ef112891476860ea0e202300f04fdb9ec5a77ea48453e6d932a96e5901a4b0cb9e0316a71eaa1f5d5d35d2e947300aa4298a8efb232ff397047ba750302047c435bb500683066023100ebafc9813fe7e21d59f9b66d01abd3bf002764266c3a2dc2789f28c604ae61b22fd4da6076bb460f2ec298a7835d2eeb0231008e9457b0f893d7ab4acb794c74292b277c58627f889a435e09fc32d868252d47d4882733298e0936068dc3694d04676e0302047c435bb50068306602310096bec11a29621ef37e5b31a9a7b629f785b85259d3dc76d4612ec9421e86b7d80ce7d78f3038f6f9c26813ceacca9345023100b048d4c1cec16601e48607613ba3cc1b04f4210e615d58161cb5caf57dd55de0eccaf8dbb6697c842c952526935a632e0302047c435bb500683066023100d87608ab4c8088e9605e9f60e51524df3a107e9181cf0566052349ad9c0f201a0c55af653a0312b58e80a954d305d1e80231008b76be2d38740407d00165b6d211cb9b04448d2e43df3eb7c6bedf3d317e92ccf02973e0b9254dd2bcb441d0ed7145fc0302047c435bb500683066023100819feb48c4235554066f7dfa00ec9b860951e3644b9cd3d9c1f8cc01a6383c5c1c293b03c88437eaa38656df97081a2a023100ab541b55f37c7e67352365dd6dbfe2d469c98ae9493ea267b5bc42f3b906f0611f519d5c16925de7e0eaa23ce16da6420302047c435bb500673065023100b02eac1412785ee1299f77132026372ade3dbab4868d67521c230bfb7ab9173ec379d1e3a4c4d082412e44deb8100c09023053706e9b788cc15f835baf329dda33ec05bfaf227f0eff1ff8e13fecc58995e9751dc55d22f215ef0dfcc13b94044e250302047c435bb50066306402301e163a4dbe5a106f702c6c9ba3c6381f1a0c6d1318520ee6d4e682ad7d2439d3f9574604b73162398cbfe99711786f33023079f00d8f0bd6d192abc427e1c31d7cf4088b5d84688f8d64b594a1ac359f536aa6607a5a4534479b53884f563619116c0302047c435bb5006830660231008fb3cee053b6790fc762737c1ab1f4d4803d690bba2122cbb2f5c63dacfae3544c04f058b5655f1167341de65b8f295a023100b42a3d53b745327852bec1f76a01d6aad7c645b7a0f50ff6bcf45520f2f204feb84ca90115e7dc564ac1a96f675fabba0302047c435bb50066306402303e9d7647b823665b68776c3efbd22f33cb0421d8114c350598ab116f4546d37d37930b9b6affe22a6c8b568507473aab023039fbaf256f75944bf57311a4a9fa2d94de2162a01801c6e887bc3c4d043408b53ee22d26782d1704e6ff3071703c2d040302047c435bb500683066023100dd4dd02e8df7d582d74fd67b7239a654595e2460f0c9ab42d3f459c85de4b32cf4a05ebec0653a6a97c045d68176623d023100bc086ff442fa23a5245fd007fd9ea0aaf29fec2cc747e90b646cb4828448505a17a2bd42da7cf6afcb7788e46be2f0230302047c435bb50068306602310095ee163d605c1dfbdc0317b0b5848e23a106a7f4cb474cd256992c003fd9f3e45a5fbcd804ee1a6c26265cc83aeff0a10231008a7513e11a556d3645aac8671dd7d5b897f0cb3a4e00eba1cc195c29fe1305a3d49525941ac08b765473662863e71aa20302047c435bb5006730650230042e1a3a1bc05867621e5f8270c7c24a4646f1d6b90ed3ea121814d0ada36b3fd8e9f3358e4fc5d626be4c0cb2e081f8023100f364ec683dd9805d6e86857425fa806a764461810ac0fcb573593d9363f8c52493f9feda3c9f4dd90666d208b6464ca50302047c435bb5006730650230181ad1e7a903529a68da90c8eadcee5273ea8b4bc921edb4dce8035ec2afcc6a3ee846df32e9efc8926b48aa1a43e3a7023100f42b3ffc205464f4023ef7f617933c0e83866540d52f5b4a730ca51627530a3913f47ee919cbe5710e1f06006fed79fc0302047c435bb500673065023100d0d9d6f85251cd3d62040b24eab18a18727da05ef7373e82880f5555b6f764fc971849b049219366e0d91d4e21eac63a023038d4bed8f50b05251a34b5421ca13cb22327d3fb6b2e4621bf8ebce9135cf01315d71410f1e88b53c83222d0528bf9b60302047c435bb50067306502303174039f94f3caf46f8c53be0742e3228f63be006edfaaa98d984f7cb3390df3c4c5d13b67babe1734ae204ca531bdbd023100f6b46053e68e4684271798a30c14a86b2a098e94ab8af785a88bb9313c2df41f16d5b5b545670d0d39732ea6abb1012e0302047c435bb500663064023030114e8d7d2e84d6b419befc0bef90a5ed5941c9776f7def531dd563c29480faacc7714d47849f7b03832b4d49e8087102306ea46891c88d9adac74e5b18757c8684ed3b670a84513241a6fbd87d03c20b323dc35c54db6676d18e61ee6d02d43d2c0302047c435bb50067306502310089318d265be97682cdb7605a2e612a91acfab0d4f15750f258909fa906f6c58a2e1eb6210e40b528e883e164462385a5023015a7c919029845dee5cee3c4ac2773d7b62369717c95a8699ba93615ddc7aee4d67db603542fe082755181143051c9eb0302047c435bb500673065023017b6962b3df6f0370df135d423a7be022f699a030684af454b64ffef3738947e2447e8733c8441c5dd2956a86a5ba22d023100f9ad69b16d18c9afcf7d5f5773de484577029598ce0cd9bf16ba6b21c4c60504a430c3a5cb71e88bb5ea00c01e57948d0302047c435bb500683066023100a711b9c7270deddb181dee0701e7f034011d74803c774083376844c44047adf518ab92065a67e10b37d5a13c821df055023100ca4ef4afc709d9cd304ed9d930806bdbeb71039f87b9724223cf615991bd977a21cbdda091d6168ef7bf9911332412190302047c435bb50067306502306121d8ba05ef534e01fcb3365b1afc130dacdf74c0767854b45ea071ec884805807429d37914bb687a98d7fdc5963406023100eb227694ca9e8fb484146c54e5e9e6e3c96d53dc749e73d9005177b984af88f65d9fddde430590d1831db977976075f40302047c435bb500663064023076b71872e16f85abe8579704fc7ab3979e6ab83e7b0acc448ca8e36d90ea33eeba450f8ce8f852617a158a1beb109858023040efc3a989ed3017e021a1b5b46ec12f8f4d6d31b95a3a6dcb2d4cea26ca834222c3d30db0daa1436607cf1a1b516de90302047c435bb50067306502302977bcebd029c7aa1d302b0924fddf7302abb9ee003c4493dfd4415ae1230476f6446eef6b5863275c6a42f13dc737e5023100abaa2ec53b56f32f8f9b9729df8d34c8caec1da72353036198f4e9481613913afeae61bc8f4264f67f89f4a382aae5bf0302047c435bb500673065023100d59ad584d68ab18b746c80a923b95da4c6480aa49f71977c5ebb11646c40ed5d3e73af22d009c3c7883caf11a56cf1f1023062ac12cfe5677865170c3a3215ca0c627e5e474af672b74c5fc9b7527e64b2fd7e2fb76b7f4eb64886fe022365ac320b0302047c435bb50066306402305ab7902c55d9b8096dbd0fe8df7e4a43c4b30248d8fb09f13c57ae44e12f8fad09fef8789777949377514be270460ca2023022c1145e42c4a239d82af192503a17ee50ad9bc8c0a18af6d7f61e63f7951a20a13834ac516779d65eb8c6d6040bb3510302047c435bb50066306402305948305879312df49d4ea44bb384b5620dceab4675e18c5787490b702a6f398c52907b0b7b91b94cf2eb67a389062bf502305976b3bce473f9445107261709ed3d7635044391654dc00954d79698b957827498deffb734cfd034bf7a45bf36db4da80302047c435bb5006730650230133d8eb7dc1be391ab56f96a0c4e9ae732009c557daa6543701be02e2791e2bf9d21afc270a4c40c844313cbd13dece3023100dbf72532c27755b727ebc2985eafe67c83fb9407299a8573d1ae3a13ef1ec83f02f250684ac9be0192d104fa83f588850302047c435bb500683066023100e52654772d9dcbb7772def4e012bf2cefc16c831811de4202c5c754f3e97fce3d116b7b1568766c5a378fd5ba7cefe59023100f8abba0a5817319827ec8690e5f8b1aa5946818a7eec56d29217f3920b2f8c4a00558be99152767951aad2f2e03bd9b60302047c435bb500683066023100d56a9c6f4dba6f7342d72285cb81acd3852af8983bd2d0b6c75345200c65cd742c7cd32296dff76f1c8ff5c2b56df2f9023100b1ff4df9e88de79b73f0c93877484e37577a68a12cbbf4d88ac3bd207726490cd7fdd308c41e585cddcda55f9318b3110302047c435bb50066306402301c22a1254f152ab96a292e4fa9eb5e1b66ff48b759845e13c9d02937079e81090521d0c818f72c2f25b0feac199b130702300f98bf834f43abdd7e1f4d4c7e94ae0b239f6faa9a10bcc5e68c5722a09bd3ea8c4d6c33ded7f9ef338d1148aca8131e0302047c435bb5006730650231009724729f13fbe1b89e3050314090f8c4669a12be60d31e451605c1520b95c11bf1b9fb56551ce963c469e9f4d8e79f7602302674a35fd6ab5383d3bb231df718e684546bc8a2873b2fb5b58188220acf8c87c64a4696ca71417fd4288311fdf8f7eb0302047c435bb500673065023100ff11d91937ff5212443cbbdacb85fd58e8dd0525a4f3a760536e31463bd48ed6f0d50460eb3617ddfc173535809ad45102302c203e53546d0362569742cbdea6dfeaa6b3bd9a962f96b946399f7dbad88d6de6d8a1e1591904894d82775638dfca140302047c435bb50066306402301cfe3e64889aa6618064360f5dbdec25d630bbda2793f36cd2e8e19fc0325ede83ecdda68f0e81cf8737941c183f71cb023069e59246897f07f5fb14442d816eda8cf1a2694d6eecac9c7125eacd7675fab43641e3049cf82454b906b6bd2fb128e10302047c435bb500663064023067c0968823a245036aa35f777a193bb3aa558b62b515528bd5737efe28d144b4b53f20607399c5d391ff405e31a8b08902302d69f5830d921c9e56782a268899162b61864c8f1576ed60042b92018361fee542d051021266f1a861d56e341ffa14770302047c435bb50067306502304de4a3fac027adacd3d998d63c2696455a283b8c5458a0150eee45ff2ba48d886ec0de34295ca0b2ccfb68f62a56be38023100e62d196f3c20c8eadfa7e752436dd1f99b1cc0572263c9cdf939d6f59022ba7bb4ccc919c6b9e11a3dc87b42122c0f9e0302047c435bb500683066023100934cd789fb93f7f9b6c7140dfcaac896f8923ab6b385ec705ac45e8ef94a227101bc6db432e74924504bdec6109bdb67023100e06b9faa69c12f149147a174dcb40f62f6c8d65b205dcd7d9b6fd6ba57a55e84344d02b7aeaefe96d1b124f7feec9ddd0302047c435bb500683066023100c6c094fa3c249a25a7110df6d7880925038a6e7c84076f97e5a866d40ab9210f58627cd4150e23d231434d191df3ada2023100df7eacf8f9ce35da67bfdc55ad4dc4efe015d4639999046b97d6da6967c5cdafdc332ca92b2ec67c32d10db16208949c0302047c435bb500663064023068cc86a47c9d4a6b6e9409ac51ba23c6fee64baa803c12e707c56aeff6f716b823277fcebf62a1c885293692727d01f4023077e578681382c714b0d32d95eac2b7e3457d35924aa4be3ba2e540fd73041dc2a798905d3928de4c57cde8a9b0d9a60a0302047c435bb50066306402304b5ea68323bbdcaa732b35580b77fcff76834632e1a9f4b354c43314b5a7326057f99f920a241a041416d9b17982834002303ba30671dc650caa3a317e5c991e801c20f9eac185ca97a4fddc40452a9e8a4e1f0350f21cf742a95b397340dbac22000302047c435bb500673065023100d9411dd20684b3aabcde12bc60c010cfda30d3347e8df1a80bb27c1317032baf1c7d2f9701bdaa8a60ed2be5b699bc9d02303b064fab3011e29a0ce04af2b712a63f8c2caf71c9f305c725ea79d371087ed0e75b393383540bda0eb320bd688054a30302047c435bb500663064023016b3fc519584b67d39dcadf6fec84b291225085c9d37acb84edcbf2494a7354b39e9bf507554ab045cd3a9b2592bbe1a023043f88ba83096d1b8c8f61509f1d77a1d796e5340aea7633f1b7a5f4fd012bef77467a4f02847c9f2f2b395551a6a52fd0302047c435bb500663064023036249da140cec37e2ad50d82cfdd02cdee2a60cd5911621c1017a72b9cbe60ba9e496db3fa3a2f9fd9eea1d3defb0c8b0230170e5b0f2f26557305421f7a1d8fef0e5017f69bee7134b17e5b0a943bc890e3bf1dd8fe233d1e8242abe10d977bb5380302047c435bb50067306502304414865d6a11640ee2966ef4372f94cbdda3382f8805dedd645c19e6b434ef82286d423c9819c0d035eeca612ae03ff102310085dfa64150682396b027e353fc260b8c4d7ccadffe8fb962415f407a74e43261390dc96b2e6d7031425498e3035573f10302047c435bb50066306402305cb0c1d8df87fc72642b7ed8d598acf937229492d84b29c7ae5bf16a2fdadca29962ceea274723f139eaf62fc910e23f0230254046cf253f91117357e2996794f6012db2be378921cd4bd1975544b0c65a697be848c4e0a4f5f6437b2733a34743000302047c435bb500683066023100b4ab3e42705e068ae48d56c68f2305e988d2660a56cea5f4c014d3d45fe75e9f3fa60a76ce5b58c9b09317933ac54959023100d3af7ad64068fe32c043ba083b074822fb90c7a3c40e67585a224b467d6cd6756bf1bfe362fceb2931c2ce64f81db1120302047c435bb50068306602310091d62d82d1540879fc9451ba502562db776f88e78eff0bda49c4186e6b164d65c31d347c55c8c7f86d9979e7b7c8c48f023100dfad098cfa9054116f8edef6b08fc6b814fc7aadf5d27ee45cbc99621f7bdd0377bfad7091b1c4e6f001b6bd60221cb30302047c435bb500673065023040e45c4b9d43db17ea51f5d39ee981a1914034df90a38df20b8823a74370be7a90d5e3f4709706bc65af2e712cf6638f023100ac2a882443a2433e3fdf58c8e1bf40e659e8c22f86a601f5066f5143c4a8e2a9db82ab33a56dade09762ca713fb3099c0302047c435bb5006630640230642d011bb7b1a78ae53987b38f86c7c8a48b49cddbfcdc78d217e1bafd3882bf2e2ea28724ebe8bd9a32c43b72e31be002301b81dff02db98940387e842e32f9daeaa1adc50b91493df3a03d8196c6cda9975257aece1ba0530190b5621e800651770302047c435bb5006630640230562869d5d082b3cf9770e8b46e5db52b5183eba16a1d6cfa5b717bdee84c00bdaf79b69883f083e2186acdeb717747a80230781e12580b6c77d5d6c5bbff7d476b4af939b7856c3e561b3561794d049113b157e60a5cd084b0a26a1dd9ccac50c4590302047c435bb500673065023020bf99feebd5d8adc84c473b8f4529bec50e40df15ec9c8638a9106b52fc33b885d5641622a22f99cf411f7aa628355d023100e9517977bae2ed9966e7eb2c4ef391e2335fbb3e35cab348f9a58ec194fdd4d7b65ae37567e0135db9dce20121c3cdab0302047c435bb500673065023100d9d8f315743e924394ed195d4b4f29d936b5f6b16c97a851c4c7b738b7e05fd7395b61034be3b132dd64de7cb9cd493f02304b682ac633bc4372e09dea0c9693e74fcebbc62ec216ac401d3c9775ef8971e89a4d4be1ed7d24de4c5ea9a7f922851f0302047c435bb500663064023077d83f678bb1c069e1229bfc7da656e7560c1c15a9c08d622c7450b139a565a1201b7824938c14448cb49a932b5fab7402302162ddcc09394ef7688067020f07647e2622d8a19f450f70307919578f32e2e58eff8c4bdff7b6530b83c480fa8125c10302047c435bb5006730650230111506f3507740b3f6f3e8f0550161b48645faa7881a525b573be83e481f9a202a263d5e2cb3591cd99764c2e54e15a4023100a1471869501f40da49bf85978c1891121288e52e4156a2ce57581514719b3e3388aee7f1e272425783b800b75e48a2130302047c435bb5006730650230116df988b0b695860699f79bd67cda5799563ce54c0c5c81ed8b6a489d0a406965afe6ae433ccbd2791f4e323124cec802310088b5816e52385057001d70d0ffa5d7c1fb01e0ca9c15a996a714d4323d6b10bd5a8a8f2d1dc9491ef724e8bb9d6268b70302047c435bb500663064023000a8247f33f534ace1c907d5a36462ccec593c1c744f23bcd35752a340a3c5c8e21ba46e03a699210f899dfb03da73a9023070347f125426722d34552d9ffa004a624eea5630aaca72b40ed61657d66eae38b65e1ea76f5d1582c3602a2d3c84e8470302047c435bb500683066023100f678199b0780168ab31d867933c4ae4f5e60da0546f6164d88fd499b7395a395a0b8e4378586b3ac33769c8e3eea45c10231008bc7b2fdb8746f6f3bccbfd08a5231488db081e6b226599e029fa9d0efd836ced623af96dc9fca25d3cff396019172a10302047c435bb500683066023100d54395ddcfb4f7468d6d182ba11db91c9c74c19b79e9760db861e209f5e2d8b3d04f20f7045ae3cf8375bbdd484f9fb6023100bebe2a25bb5aed2bbc458452b761ae04fcdd8e7e9fb7f7502b124ca4ec960da5072be3c0507898c242f8a109544137000302047c435bb500683066023100c4adbbeee4b9456c1b71c7cbb2d58fa64f2ca2f844ff36bbc53a5ac39d420ac3018293ae8a0e038512c5ddda07b2d1c8023100dfcc41cae4e44ab21f328f3692a53772fe4b709b5debb33e98f75791d1ab86c250c17c41ee516b790986f48181ddaf230302047c435bb50066306402307a65f073d62d932253b4f87ad3da036e21dcd434704bb51a35dc0667ced79eda7c1716d5d73436a35fd3aedc0ddf3e9d0230462db46aa7b25c04473a0d35a66f3cdec66dd921a1d2755660e49812605ea8e23fb01362db2e356ccfd28f79c5e9092e0302047c435bb50067306502301a9afaca6c9c7138365d13f9928634f1c4b96d5cfef4540c415485adfa3e903e75276fe064c82114c3e2ea51124317b9023100d35a4e1577d418c39958a1bfa2e40987c8c548c7e2816d6f2d3e0204913e7ad3c26935a5b0d6ffb166c10d284facf3b30302047c435bb5006630640230365d1da2081f083c31b753300a25940582c60f815f98da86ecc80ba087efbd1d7be77c81df7272681d8ca4fc7f83fa990230225e850b24ea5b2d556b98fc984ac4d5c8a94d9a2f3261c46ebba80adcdbe939cf698350d4f3210159bf4d50b2406a070302047c435bb500673065023100a5553b4e83f64ef75a4264073aa27d71919af54cc722914c8b7224a09bccbacdd78a7a08891ba759e02f3abb13096e5e023071dece1ab7f59b0cc32fc52626251e56250429686c850a771801f1ccdd923fb29f9cab877b8bee64d2db6c36b72c98f90302047c435bb500683066023100b5b1817cf38c974874f9f7b9a9ad8333767f7bb6064d7cad199fbb1709680091bf504c4d27fc3645e0c93d177ee039ae023100ec5de231fbdb6b6feef34a788ff6fea628ae764435310c25730f54d596f41b1f43c43219e117291bc7b8db26a5aff2a50302047c435bb500683066023100b87d39986ba8f95202d7bf4ab8c44dde7b526ecb8693b78478b498947a76efa2113d6484e1dfec1224fc49510a85e28e023100b2cad01286d1c9f90755952668f0dbc304c1321f2d4e269dd95d1f36d9f71137c3802e2eadd7c8e05ed738bde2e14de40302047c435bb5006630640230787ba051848c76990f439b6560bec87b42017d4fff6073134e89f53cdff879f4bddc08d869fac444c1f5e722c50d6ae102301c87127036488e9c4d3b9784d622dec5e78df841b959296d67d7d14800e02864e147b2f43665202deffe04972d11078e0302047c435bb500683066023100cc357960df098fe2bf1e282dc9b9b28de487e9448ac0ac367e23810264f4921d17656ba3b7f8c661201fa3dd07ff0e79023100fceed439631eacc2b9846ce1d64764c1199a44b9f159fd618a91b913406d98d71c4ad282f25d18905e34786774c96a610302047c435bb500673065023100a904615366d79e3fd79be00756199a5ea5afa24d47a2fc3d492cb64bb3f7c12816c32c0e83dc03ad78ef80c05f7a27fb02306ae51838f502928bf205cd3abc338c2d7383aba94ad8f2207c83fe75263669a5436e8523d6d2abe50e9345c681a348eb0302047c435bb5006830660231009071dab6ec76a81f50d4ef9e66d5767c4e1efef37c2cc5ba59306ef72b281d96f91d5b54e6d94c1983b613266c84c4c7023100ac8b33ea0f41ccc4628d3d143ecb411913dfcd4442ef0d6007634fe065eadfbb389634d27796edece5e1f2514fb1e7ea0302047c435bb500683066023100b9c7c9526678bb8d4b13eacb1588eb7d50374d982b40a784e4106a669fa2557e4c98f7ad6983af05aaa3fc5f62185187023100c9c17eaa7a1e4705446e3668275af0e8f8279a467290010ba3f9d4bbddc4f332c414a0d915b1eb5fdd72761f2cd74c0f0302047c435bb500683066023100fca6fc9b5a8447a16ff177dcc04050bdf8d61b64760bbfe67cc818cb3438fb57c51087373e5ab13f1f0331203db7792f023100a3557fc3c7eb9bcd10208ccfd0e3a7896b549d5777914f9c4731ab7584191a40890413c1f8402daf3037c7df2c974f930302047c435bb500673065023035940af1559a40272c161e0a449910f94722f870efd42038c9f722026a715028717bd9b764c81b82fd5178ee31c4af5e0231008a313e102ef5e791925fef34ebeeff979045fd6f4c931c9d00fd5a050d09161b6b4d1e30552dcae86f8c76dd543f990b0302047c435bb500673065023100ddaa34d31ecaf0acdefe631e84a9840d85a4214298e9edc5146bb53f21f0621c550eb6d59eb459eba73f05aff7e602a702301630f079921e0c0e0e9127ae391efcc06702420a195172c2f2d1a88d4a01ef19ee77f625f55713deb1a5784cdde31ac60302047c435bb500673065023074dc3de669a2abb771a62f1cda58151afb2056441def91f4c78a5ce390a1d1c2032fa285f836cd47d2e1524436b489ca023100b68a66b5463835040c6f8bfd989f7d0eedced59f000804fbd853edd98f226f2ae4e086203dfc967fbfe87d4f913c00870302047c435bb5006730650230709ab28934c53b79f5fc34a29567ab5f753e09f337b777d7564297015a0888538d6b4948bbf5f7f855898086be0b44fc023100b56e4fe3960d6a2f89d1ecc8a8567b3d62edcf7f9bb26a4d9507501fc394ed2b2a2ccb2cc92a8ed41da8402b477772a50302047c435bb5006630640230634bf7176561f65c5695170051ff316c49c46b3fe4e7f6c207bbcd8159b2227a034024502341f4845de2b2052df591930230397e2580cf46dd6732733a637ff2c74890c1cf5b18ec2c5c6221aa0f6fca61413a5c10188a35a0dbaf0992448ccc4e9b0302047c435bb500663064023037fa75d2ee5f958ffb484d12a869c00447bd98eda2394e3b1f3b6fbb48f8bb56bc7dd5aba971318a6dfa85f5a9eb7b8602304dc4d3b5bde8319fab27e58fb2e7ac45f373f2d555ee9f5de47bae186c128f606c5f0c3b01c16536af8a18f738f529f10302047c435bb500673065023100fddcbb1bfaa6bf6d6ba8827235452a929d5ff579d5f8c2c36f5e8b9b1da6bdd5b4ce61f49cdb9780059c6ded4771646202304a46e16f90b49044fa4528ebf93310c832a4faf3db998cd2980dd7dac12890d136fb5d4b5b21d3bdd7fb75d3ba02030e0302047c435bb500673065023100a038ae2d90126072b712dac5989eb55669e181c28ae7a4fcfdc5876b48778afb4f7f60d7a3f115ad8672539ff820723502306342f271f9063ed941a2237195bd0fd363ec8b2d0c8ef6f1e4e4e2011196fb8da97a20a8d3c7fd6dbb66236362fce9ee0302047c435bb500683066023100962fbb748c3a6cc43f46f08339c7a87ae74d25f5b20c3ff7c7403048d0cffa7aab9a9b4d43de0f61501b36d9dc51b10202310088cbc415d7f7fa8758f42cfb80e445495929c3a73d2e6748a495bdd5641ff61bc5a78ceb12ebbed3b88856ea5cf0a28f0302047c435bb50066306402300a3e6449690acc9e8cf1a488b7f38a5b013668e5d5ee460dbedfaf5eace5e373b0d68788209ac7eaf2c1c8a0944cd9b302300216b7521c9fe8ad6b719080c44c9feddb8939b46c353740a34edf04342a783816fd7878807cfb3708f48881fc5f5aa50302047c435bb5006730650230155862b3bae542cb346770dccb693c416b64995daa3ef275e2e4e63a6c1aa8336b8c1a7f3b55951db219108dfab3e0fe023100c8c330e753e92c9e033a06afc056bd4fed9bd2423305e839c491366c278eead47b0cabd46374fcb8c4c92265cabfca420302047c435bb500673065023100c62c7431cfa7eda35f32bc0bc4f5f03206ac5774fce2248e20c276d6c3a97906097441763662dc4fa2729c4321d6e6590230607b06a77f0957ec837477072c2f4e686f83a3110cd7bb0b68c29b4841d144e75bf3672cd620d944e3b5866620482b860302047c435bb500673065023100f0b9cbb2a4832359d1397ad126dbd418e3a19d4d36a73478df10a16188866e1213e844cead51105af520a3d34f303a7e0230260f2f07d42ed7988a77fa56e63cc95d5312a61195682da0e47be5ea9fc2f431c79e0ed2e82b0638485f3f83f0b2b36c0302047c435bb500683066023100eb00f5efd5d8e52b8916f36da40483dfcbe5990b876a83e132b9ae28c5e398bd4c1dd7ada269143f423027c0e1fbef45023100a908910ebef04553cf3d933fe95bb929aaf0e74907a591d26cd793defaeb31804e9a90fabaad555ee0e1f709c6e4a89b0302047c435bb500673065023100ffab24477547d4da9785c460450bc5c5b56b80b1e52eda0a7a5c87b2431ccd860424ff156144b9e6ae70bf1fe5530de402303001920a9955fa0c2c81b414af80c924ed09368619cf6ec992a847ccc02789acd4f054b3bf96488f785dce62ab3c28ed0302047c435bb50066306402307a2de432743f6c0d925830076044cf156bb175a172bda2ae2007b18c2e73af4e25c8a792f8e80a752f3e768bc09608de0230405cfebb5c293de8cb2048d1ae4119962e9ba347a361a7cfccaecc84b5706db12cf63f6b8dfe0a5461034a74cc667b8a0302047c435bb50067306502301f91ecc14958a937bc73ebea37bcafcd983d55a992b7139776fb384037ead49d8764683ab7cbf43ce606b82bdd2f1ecb023100e2168391956038e83a71bff5e842c78384cc1b5aa6173641a0c15da528caa50cbcadd98155f3d5e9785b22c61b378a330302047c435bb500683066023100c47cf41f4660e753614e92ae601755f621f86fd687a28ddf15138ba5d8e83ac0fb24b1dcaecf5e88e8bc10fcc3f3129d023100896de32aea991e38d1098dcf9bce38028103fb9276162e164b7d512dc12675abec7fa9806f06443a78d50311736b6a500302047c435bb5006730650231009b7e776d02a65d437463cbb395c9d2636e34534e1b0bec6dc67232f2a25b9525c19de76b5348c3f98123420b647de03a02307c901629c273ec01941a941da2f2816f011a642fe0606f43444680fb6406fc77d197c9e750d497d8a7f03711101bd5280302047c435bb500683066023100b2c15d6f3bea5ebfc1722622da1081d8f03827eaee1e097cddae95eed0a728a14f81b36ba5e207bb0ad065ddac4fcc9d023100b02c7721d5f5958aaff08d475a20df320ef23424a4a56e5bea14372189909e7500d9dea4b1465c5be5d74907612a79540302047c435bb50067306502302bedb4a518f2c3ad45ffe46ab8d37550f5c602bcd38ca5de5aee911b4c5b9bacc68bc3036715d6223d8636d1406baefa023100ea19367e0511608a336e26906501d32153d9d4a4538b24ac17d1e83f4029f7a6d7a767586d9b2db40f9203b03b0fd2760302047c435bb500663064023039d0cf90aa9d47aa86e62e0252941b3b330cc0e81b73ab5cac26d5f24b67a5afee52a62ed8b6e5474ee8388020a9687602306cf4521dc1dfb6a48d46326cef103a762f57c2848ca411800dafb37aaf910b9c22b311e2660cb2ba6c064ccd06f46afb0302047c435bb50067306502310096481b6d4866e50d36be6eb27d3ab9b0201c5bde2d7b1bd3bf61c76e8fdb1aa74b04c6c182cafe2543b742ab21a4b646023035a3275b225c86bac4f6be5c721febf13dc7b67573f86ae44bf811b33d42f8e9d7150efb549e54aae20630f60a6e34cc0302047c435bb50067306502306ba77470256f6d57cad4bd1634fc5be0ea222678492d139891c05272613bcd1cd74c2c71fc3cf73e5e1b72f79f49b068023100e532e90fdd0683b507457f6284c037c09841dffdb36a5ba1f5836013fe4d73a42fee0fcb28972afe68235ba3876f62b10302047c435bb50067306502305a353b26f905ab8ac1aed355255f9ed07e3efe9077a7309a39fd5510bf3e5764b7c43d0a9089b8e17723d7ccb665945d023100f77bb88720095e8f034a3bd719a9357896e6cc41f274704d99acdaf8d9b6c723208b64f80dbd7fa2e6abcadbf6bbf1c70302047c435bb500683066023100892cacac7b5705c48cbbf73f8d5780e77bc49af133d723440f7ffb862e107aade022944f3b5bf7f3592188fead9b55f9023100eaf9fc965fc6af6767338db24e69b1dfea813f7fce93112a2c4881e732239907e801f52872a32e0e1c10e84d24e2f1930302047c435bb50066306402304691a2138c51093d0c3f5eae0d45c0e1daa4aa2423c9de42d9d7a5a35765893828cffdca8abde164fa6d52faf8fc1a2902300245b04dd0111552a775d46cc72cad51142ecada9ae59ac09458385aa6d1e8ac1ce7677c33180f9dc9d7ca6d19048be20302047c435bb500683066023100d3ffc08da323ede93d28fa472069fca7b5e507d147438a78edc940a475b477a089c0f01d635b906c85cce36c9203418d023100d4be862d090abc31bab48bbeb97e064d3f5762da2c7160620a5df809a856946a904b1af6655686b3f557521c45fe97d20302047c435bb500673065023100e0f1b44bc512d2cc88ccb8c2059026a3e72bd25ce7b015a49b1844481da3525df90750bf7b5a24437d7f0318cad961b602305f35456e20a19b41b5769503a96ec7462c5d06c19aff1c83965eb78fdcb84ef59edf3f25df173b69f3a418d0be129b780302047c435bb500673065023100e8d8d2419e01f5e8c2a7b7ce03a15bd6f916d6d9e231d34821286f45bbf84fbdf3c1aedaee7dff26f64579da96610377023031ce5c56a5bc385c6d6fb3c0d6c26466f834d4601c4ca8f4f169aea51cd3c9be22a031a0bca580b746a5431e2ffb7e790302047c435bb500683066023100cf968cf585cb2de33c65c331f0d4df8fce243d59bd84d945a3df0ee7c326437c0a5c1c840105b597981bcc9a7c0dff0e023100e0ff0d2fca9b2f7e6496cce62a559a643e55f163a0f28f627f0ace2d3ce2ac58ac26ac76e2e882d42db7ec9b31cfb0380302047c435bb500683066023100b231286009e73651b85f920abbe53dc6721dd0e4aed2680d33e93e7a7549770a11c83056e6bcd8c9295c64a19d761cff023100ba15597b7ddc0ea94a085d79df527057b5425ed1580283e5ec1dce68eefd7d9ef5c7fae167d7ce2bced8ddd19ae785990302047c435bb500663064023025e72de24a3290b3b98ba9e8c9666d00189833ee52a848dfd01cfd032cce7bbc7edc8c061875ff065006603ab2c5090e02300238c4179d4ecd5f3cee30b16dc16f8617a2e1b26a638c1eb0cc11e9515637ca7b4e567e1cfdd818f47714f29354809e0302047c435bb500673065023100f96afd7fae59c880369f097b05c39fb2703a5cb8a712b6ee4bc56531a6c3b7f4fe1af9e4f5f78785d4152710761053b202304b4f72af051a692e37193ecc6f3194a5d297db3c961c91318ca155534b1a92127b78ea1069df0a106cc239d9614d20830302047c435bb500673065023100ab64daa126567ece473cc9645dd020b0c1a299e0500457099a50cb8814015e70a0e76e350079eaf61350da68e3d6a23102301a8b5e5e3b86dbe8a6db5b26d9a7102a63bed006338cf4c50025a11b2fcdeedd4168f563f72470468367239d194858e60302047c435bb500673065023100b9364419e5d39d3408d6eb43f4966391c79f26dc0274589af29ef50a9c78da16833e5eca8bf7a4321b881d3ba218f3240230409ffeb78b38ba86aea72ca435dfd813abace9d1ace4393b7bcef494eb3b0ed35d1277f7ad2bcfbc657cef5997a2089f0302047c435bb500673065023100f52f03385b5a50c16eae8caf92c883984ed839ece6fa2b9f3e855b3c2192fbf1544346e93a4ad042edde3f8f6b351dc3023015737f7487041d51b5ca9d10bc5f8ecaa3e25cc262527865f5d8632f868a01d72e064a6344e39f2a4fd1ad3d055204e60302047c435bb50068306602310081c5ec6110494ad0eace3710cd6730b5da224434891300676b180e18ee2dfff1e0f1134cfa90be53b281f5429b9a60040231008856bbe371161667e599fee67ec51bc41ff38ac5346fad77fd96cf946cc78fc5ff08a0197c0b7c491a97673febec34f60302047c435bb50067306502300264401cd8372d0e9fd6f5ef8405700ba14325d788d48172e39d69789623a8acaa7c7605878ab0e1b5216688821d04fd023100ff314e8fdc154c1511a79daac3895c2e6f9e118a1ca43e961b133cfb478a03d0498fcdba013981b86a54f419412461710302047c435bb50067306502300cfddbe59202f67ed4e1eb4cfe23de613b6a59cf5c43ef6d5ba600c6004a1f3974448d7fa881136d5beb9c37ea15892a0231009e370cd7e859e076dded29c39d2b8287a79471d2d054db780414675a1d62820a1605fe433cedb9f3d77051a43e4ae2c60302047c435bb50067306502306567f86f16b0b13a8f8fc13b94b8562d089079aeeea92c54350f70a926bc1ef8ddb05a7d64c98241930b3d993435c839023100b5f61cb496893ea28915c51d9cbb55b5dc82b64f276dbf381e95e39a0f1dbd87ad6b8e3f5054829a005c2d9f6cf3137c0302047c435bb500673065023100c136481c8b847b96e11a220818442de0ec9f10282935ed2b80b1dc530db57dc0f5c3303d3c2c69db8ca2bc601e60eb74023026754e62417a94cf94e912064d5381b37da8874f1949abb112d088916767c6c50fb341b73b25d69b161bce1e1017b8550302047c435bb500673065023100898c31aaadf3d4df1af892ecb263be60602cc8d3fd3a797b44b028fe972331dadb0daca03ebe8d02a30ebd7f99c2867f02306a74a000261c9c8a27904fc7c3bc10d73e6e0a9f82c004d728f573d9067136409599a35702b975162b7b6d8e2b75a7180302047c435bb5006730650230495a056a7279057c042ba23eb4c342299e3adbc1b8ed36db167c21540ea33aea03344ccc51af7c528318756fa9c8ee4a023100c5dc0844bda1684b94790a8edbc159c5e91ef78eaadafb22e0b3d8d3cfbaea3dc46f50301134f1894658b8b61db40bc80302047c435bb5006630640230518418d8f468e107d963df23b50722bbbf4220574ce1ef9576eb20e87006a847b3b8dd3c46060fd72fd3dc494b7e502d023009f389a9e31cb5cd7bf809735a8fe04b7d81f34bb68944c28fb8cb9416182e35f15d7be3b929f719b5e00551bba56e690302047c435bb5006730650231008d8d189da510f85d38eaf3de274df6ccb5036fe08b9dd188856f65b91301f1d43620d59631d872b0ee75f236255269d4023078c95bc3db64f2ea5842433f2f880470bdea346cce9c413a700eeb8f2653e11595216bca6843890a275055bbb4711ca50302047c435bb500683066023100ff5dd62a2609f1df730682589d6f41355104d98838606088a674ea5fae349581e8194e82cc6570d497353a1ff00753ff023100870fa5880e8f573ff5906a249a273158d567317a5688031d2d2d52d104c0228b761cff5529b377c8323970e393ffa15c0302047c435bb5006830660231008cb2e0e336f4e1ed9882ff9b138e8a4b05a99e6a0ab10bf725d6604d3d58bffdc76b0ce4c6f6060f4ca97d2a56890d60023100fb51442e57fbd4a9e40878b3e0d74910d5a7e20f7c757853ba3b2312443bc99f19b236ebfd743df7266c76423641eb6c0302047c435bb500683066023100e46430be82a1cca68792f4135f3b344809218655c542b55c9baba31d2ae8f7709f1787bc7bab609c7f620b65e84e7b5f023100ada96f37497377fc491acb8a382047586caffebdb7e5646854fff76437909fd8607f44b7f040d780efe0a8bc59ca6f540302047c435bb500683066023100d71f8f3cc52350194ba65acbb5b1f4057a6c34e83d70e6a4ec05eeeaba195de95bbcdadbed59edc32689f329c99bf39a023100f1e6401f3ae76d3dec17987316bfc4b2ce748253dbf0e46c5a55bd987380febbfaa70dc863c453af1611559dfbfa13450302047c435bb500663064023062ce6d7de649bf561b2791d155b6a0441f8942b81e99b89f7e83d59827ec261adc30bba9d9ea0eda50af3c70a277f04d02305d8df2872dfb9a853f7aebb6c4545a3f8c37ab311cac3c96c57b84e4007239e080456f8db92eaba21fdc1419051e6ff90302047c435bb50066306402301f087d9b354552289b0b5da301b1af08d0de190a262b7d96102b00b8a78a7a4e927782e54a29770f2cc4a46183959e990230510e37cafdd97324a9f87fd9e0004b8844a25192f09b71dbe8f817c70269df6f53c8aa22cd23eb166b66ec6d05c6c4a40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b6341c8b616d86f888f9302074e3981148347438077e82c737e4cf96c196dce85453b3476dc9e324b4ed4ee7fd3d9c7302305e238a072e8baf9c8496d04633b0bdeda922b51b6f45aa663170363f6199c2502d077fffd6043b482f578d4ca82381190302047c435bb500683066023100a0b32a98bca9c284ab0afb43fd5b27184bd904d1c535326513c24fca9593fad4abef09933c0a7c63896040c97f1444ea023100b8ac0b00627016c92fd873f28369330d2dea98b70cbcf30e261e80f827b23b1e70c3a647c37857a2711b95321d35a5c20302047c435bb50067306502307a2955dca28a7564800f16c2b573407716e85ed851259b2c6f261c0b4f9bba0b7213be759720ddf70af96abecd1643d5023100c7a73224b216961a6ba583a9e33c51690b197dbb5e6e53aa8a1a890579a238ffdf7599ff9a1f52acc2f131bfae98f3870302047c435bb500683066023100fe5d6c26ad5e212b7d8a45c2e94d8bac0e85a6745b53ac3dc6a6ab742f3b85b26cc398e8c01f94edde8044307ac89cbd023100d5163bb8ca87a20f3148da5d925b1b13083bbe1d5d4703fdd09267483349cf78756a08fa2348181fac038369970b27a80302047c435bb5006730650231009a102c4321a1485a784c8ddd6f52a95f45a4b6c8b09499788ec74c2ae87d1b6d9f4e20e936c8a9584f1a6d0430c02ee602303f3ab0e68e9021c20abe14528558476629855c861c0d12741c0a9d281361051cdd50fc21282cb2eb9124c851f35af1310302047c435bb50066306402300c16ba4b73c8fb488a322c5e0f36453b9cddf798fc27b29df3492af5ff6f5b8e2fce63f1b2c044e5d35318153fbdff12023012bcff587bd9cff4d33a8e614929b03b0754a6996ce06c1076cebb64cd3c0adda7c1491e590ed6881248f47bcd1f41b30302047c435bb5006630640230560bcc9b37e955bfd4239ce35c6b10abc83223c26d4d96aeb4798035e42080734f156b154cb84755257fbb3b7f3cb77f0230151ddc6799132a2e8c34e6e12d7736ed4125604a40d83d9eefe87d4474fe02265b71fc843f064c5cc35ec15b3666ebbe0302047c435bb50066306402307f8d9f18be9dd221d0980da3600d6de0b9127ebe32f069ca577fc4f87d9067aef3c5cedda3c02b50a2b3b813d7a1a83502304ae13309d57b355c934fff92005780bc007e63ed20e54cab3d5e78313d85163c10189d65f2db4c9ad7485717c10c901d0302047c435bb500683066023100d60265acd7ce4a317c06b17a34150e17a8340774e8120406171c892e4ae12853d0efb6dabdb8afbcfea91074cbe630db023100e7e24dd499a45ef2aeec67a1506cced5912ce738b8364109af2f4541ecb9961134440282935efe35e77639d7d6bad6f00302047c435bb5006730650230614b081e5ab727c69523752fe5394df09f67b8eb70babbb5a6ac47a94a47041105213befc927547f39ee5e155e941580023100f9f7f06eb592223fbfdd6c4e157bdd98379b7250217cbc6d833c04e29c4fb99bb42961b69347128c4e52e41aae920df00302047c435bb500663064023024040a77de73dca8647c9ff98f5e2a040ec806cab077b8d83f515cdfde0baa7eb7f2534f30384ad528abc9e379872c60023055594bead27731a128250587f5ed3dbc482b49bf92220063e761dd4cedc316dd0d33eef06757750759a99fe41b9e98ac0302047c435bb50067306502306f567149b9f1862470756a75f75a8720f1d337f405418082e533fe570f15b965ccf0efc3f2373902a83d32bc84c7f2b2023100ef0591bbfaab3aec5dfee5719b4ade04ef419d289925a4a960ab3b2d13d4a602a011eead8d9acf4480df995c2945afb10302047c435bb50067306502300d1b1e624fe5687b38522abf6acfd212b9b8868909726502af43f5c936e19408b8bd2790d9caea0073451cd7f8598e1a023100fe38ce972dbdc3d692aa559492c9e21b3806934e2713d302b46d0db2b72ccfde59a88c93ed28cf19847e6f71ff4b248c0302047c435bb500683066023100dc2cb3b7476dbb0c6623ae4b03ac5afd4ac88310ddf8841773734b7cf12d00d86e9950b6ad2f8f7602994a7ce228c05a023100d05775cbed5633674b2063898de78c64f72c7095ce5f2b982a91c75a410863c76f7abf9cdb4ccb54c4d2729278fdd4630302047c435bb500673065023100ea875865740fa7aa176a15e3c546baf01b62368947f3c2166e3cbb61b0efda8098cd0656e543f2d8ed31c3ed1ec099a802300e7d5e80f73278f1ea2f0afaaac2c1d555e89feb5667172b2c731c22c8ac386120e9ac0c2658837aeb1569a5f3bee0fe0302047c435bb50067306502307745f8c650536a587e957b744924653acc2070e383a196654440c5956be2d874a29e3f74845168f547bdbb308d7416ee0231008c4bffdfc084c30e3c355526a369b6e15f09f9a437235c5a131b541e79e0f577d2a46f67c3679d0f97c8c1c9c4ad18800302047c435bb50066306402303e84c6118a6463225421a85ecd524fddea1854767f0a1f881e6b7574a2c81aae5a3f2aa4017c5d80e29c6a2f8eb5972102307a36439c78af3cd411ebe31be18a09d809928dc6838e1f3bd475ce75829c7b0713b07e24734cf4f552ba9fad7c63db3c0302047c435bb500673065023100d7436562cc16ca314837305f059481cbbe071563014faa32bdc987e4ff462b8648ce493f2d5292ccefe09c14677f8fde02307ea5fb5c498ab6eac544c82deebb58b619c44c4a57f39f31a31a18b96ef8cf1592495199fcce0092844d63185cfb09e90302047c435bb500673065023100ac0ce4b684511aeb327e3021af1d6be4119bfd7946b1fcefcabd0604a137ee2ce054ebecbbb13b15b9ac228b902273ae02303d01f35aaad44da3cc20bbbe5b97bc1c3f7f79792df2a045961fc970042cb10f71f3e93ae78546f97e1f50d66eabba1e0302047c435bb500673065023004b8b9dedc4bc62d33b6c619c5766dfc0486f7d1d9da91d4234944a54257c9d2d3ac256d6abdb4d9424768d0986559a6023100a61226589437f95c021c1ec1e316deb50d592cc59fdff8be7a3a091cce4c30b11befc2a3aee0fb618c65f6c6ea32b1620302047c435bb50066306402307e4d2510238ec476cf7bd8d917ae51e14949bef03080ae1f52727b8e9f13821016904a89f43534e00f06d45a94135c790230545bca872db7ba7d4c054dc9fea99c6f23744a440e3830a0385efc4468b099f4d133a731b1d9e03424af74f43229ef620302047c435bb50067306502301796a38fd9571a8f3c268dee476e7757fe6dce0c53dd3eb815b13b5a9f9bd274424f8ad79fb8718199da655bcf9dfda7023100e4706a130d0ba15d6fc90b0237efc445dbd9b795c3a62ac1450e99bdab00f0f9caa13318dd356f6a20d71a8bcf3bc74b0302047c435bb500673065023100d4db0dccade9c673fbf2037ce2e0f35600896d603e14b161379bc9a572e92fec9238d795ff4222a81832ec419bf63a2a0230708d90475a5dc031e0ce9394949c1d5c14b7579cfd0457a1eb7c2e18e3453ec5a36b5656a342200e725482625534f1fc0302047c435bb5006730650231008ade2e019cb2a9cb08ed5511aded62b73b3f5b0c33e2d8f8320324b552ca67987fa5a85baa61ac6af01e56bd692d7e880230038a63ddc22afec8ce6a94494e310556ba5914654f035bccb66b96961a6d214d62de7c1e8b011e2c75fb20c618b7c9b70302047c435bb500683066023100fb4fffe52586307be1716f1d6944ac41f28656f3ecfa19e3953d9ea6970d7759e5439b340e1a2a1b9db03c8e31a81c11023100d86533db85f7c715be5bada159d76424b20abad922bf1fd38466040301ecfc5b6ac56c767a5306877ed7fe1398b8530b0302047c435bb500673065023052c0a12167361dab2f76431469bb9564d6cb78c65ffcfefdd556e71bd9c8036ce206be9485ca539de499d81abd8f4673023100adae018be89efe836ffee2875b2d2e6f1833ead14fd257d97af75e64e29e8f0537e9899a120bb0d0e40cc0654380af870302047c435bb50067306502304e41ac7325b64481278d7ecc8e13a090d61a570222353a7b84a6c31467df284eccb574125bff7558f6d7662b50403827023100d1ad5987e81d55eba10ac51cb2d2a12edfda61789c55328714e0ed6b674789804f9d9d6f4e6b40f05a80a013063b4abb0302047c435bb500683066023100cb7332664a823099a566a81fca012e45e31b37119dc0ede6d47519da564383e3d4d03a82943069ef8699220f0a74fd7702310093f861d7652df05c5c44738e56e537f5b8d835cc826a66678ee0b0a5a4ac4200b886d0701cf21f5fd3a051790666f5fd0302047c435bb500673065023100c11ccd0a280befd8d3372e841dced99a40201b740b5bc892e35971622fb6da5354a8d714f3c8ef257af526cba37630a702303866fce8171e33fd7526a00ee1ffa69105d4306c04a60dc2f4d0718e8cf2f82bed52f9bf081f4c3724870956590f6a770302047c435bb5006830660231009305b2209313470f38a5912ecc6cecfa5d2756a924f7561f44454a0690d50d98eec55b8b9676872590d6bb54e852f35e023100874ac52a6711fdaecc0cdac136ae650c2daafe820f231a21143ec13ca3f81b1f5bbd791fddba5adfdcd375948d88b1330302047c435bb5006630640230469b1e3fe817d7a9440442fc9d91aaf5692a3a7e74d3e6137023e0092846f25c2163cabd016740feefffcbad6dd9019702300bf17334fdc4494026cf5304df59f4c69fbe804fc0cefc36f8c354361ddfad42c93f72e6fc1fd974dee204dc0f20e5250302047c435bb50068306602310091153943b22f87b432e9c2b39a2c5da6f5e1a9f5205e800fc59885e6c47ccd3229013a3cc4fd1a5d7291da195f23be610231008a1aa22eb13e7c5646b28062c41350b5c7b78456d888e56a989be6df4b3bc6c46d4c3e13b4c041a8133f97d3d3bd06180302047c435bb500673065023020575e2f49314b8e72a3ae19a4c121dad1ccda9a371e59f2a622af130aa42196ed3a61ab85f4e07e6cb21eb5df0c4d87023100b0e2571ae44883fd66c4d6cc630d26c2a6f9a87b7d4b35142667eb07bd78d91386097e59809a00a9871f75c52c6de39f0302047c435bb500683066023100d255fe7c3e699c4c72d514eefd05fb0addb242479684a719b61c74bddaa82470d18bf1a35ad48f649d2704a508272beb023100e4c46848cd50b701b93de225089fb85414cfb5e9bfdca8aa1d9d6442a1efa9c966ecd898bb29499a15ffedc87e692d780302047c435bb500673065023100ead3879ab2fdd0d5ee06cae45dd8e638460253cef26950a451fda1d2da3b2f38f81ccf1bfd7caf90b96eb5f92ab2d8ec023059dc7d6ecc786c3a18758800893c21958df204ce718a8368dd39fc49dda74f5656631a4c67c27e35a5b3a0886849ff0b0302047c435bb5006730650230041d75aa5f96a582da937323cb09bff67d5a3f9d01de7b65e218ad77b171f9d814e8061b7506503f18d7bb73bbb40a74023100eae9ee964a53a6643bab3f6361dda5031bf11dc110d9c7b6ac6e8cfa7fea7a994a443c33dc565eb2b376383faa53beef0302047c435bb500683066023100fa9ffa4e3ae7363f607bcb0f1704f07161f267c147d7dec451892987cfe96fe8d6ee7ebc4e1efcb2be5c13f015c31607023100bdbc01042bb4b68e6a588c88e56fd40cdcb46dee34684af8033bc45ee8e955aa1a263c6e8d3aeadd3d6a71ba0bc94e1d0302047c435bb50067306502306c3aa9fcd8f2d40bc8109384ab141a972756cb57fb1f3f4a1e7bd1633d1b628169e106878b5e75a477f4da004fe15f400231009fd4b0b6bf78f98d5eae6141eef48c10c29cbd397792e154cd03ea78c3fa000c07bf67d375f0cdd46ea411f4e45b19ba0302047c435bb50066306402303b3b2f9cf9d196238bbe4a9f4d25f83cbc235ab30b8be973a031330338a0d31bc369973bf57ee2ba76742c7ac898971d023018ea2c03bf77b744c59e858ac94e94038af1db66bf820e1ce83a76d67b254b7cec1653832f7109d57951e650f7945e7d0302047c435bb50067306502302e891a83cc16589712351f304f6b7009203070e297cf5a1778e0c15832ae3ae654a3453322c9a17296813d729ec2669c023100b8eb191f6ca7e5f9f8d426f13af02433c7194ebad9eb3b9fc9556e053ab7047233e970ec2815be8802de98000eec2c0c0302047c435bb50066306402300191ff3b5a116a98010283cd8b6424fb7a9f1f2fafe4e0ff2ada9d6f34e2955da1c22921407a49828d6589660b52d20302306719c32369ce00c06497f8333cefcd1985d0ad74167e6add0701e9d65577028fd9668963406e72ca7e0d41f4d1319e5e0302047c435bb500683066023100bfa80651bd408aa6b2fb7bdb3319f4ddb8d0fc6c31664bbaeff2022574997c234e88678bc73c96a730ac78e33b360723023100803797bc468ee62cb8a5a587536151ba3dd6b72c9a6f500a6c0d8dfc0054cc1194988f276bb5f4baee5d1681c13301d20302047c435bb500683066023100a2ba3e7e8f749167d251498970ec0443d1489ef2dad3052ac410e0e6875bdf986a42aab64c9935992b330dd0ceb56d6f023100a06956f0c5e589dd8c958ce5374638ff42f170212cc59fd5abcd8906a276b4891e726d0611fa390be061610c6987ec040302047c435bb500673065023049453420da57269110e1a40b9fd5ffd782221c0e753337ff5c712044a8daa070c7d3e719f554005b6d78816d703a5017023100f9c1468a00716dadf3fd0470149a09fd024a4bcb5b8dc91382eb5e7e09884dcf884614a3eaf624c9f60997598d2b4efa0302047c435bb50068306602310095c4e2d75b8f8923744d6d6c6aed03a2b12dbddcc53739aeb1b30099cf1b6087c4c0c970f76696c336ab308d0dea5cc9023100df552f3d270e69a5c484b3352df1de46f35099418b3e32ca924146bee390350a9ef0139563c599f8552437ba392f10af0302047c435bb50066306402303353b0bca9737bf780749c82d7d5670418471d7720b8a102f10cc17c51915fe738b141c09091d34c2d59f0d9ca2d634a02300a33f6958a73af0398e2745338fd6d9f652737b122c13d7aa6d8392f6687d52522483718a1ed04ee7dcbd48b95e5e9010302047c435bb500683066023100c15840aa25b3534c055bbdc1505540fd293c7e47fef69a2582432ee2138009b506182b2349c93304f5453923848369b502310085112fbf31ec2aa0411ef5f1be5462c4a4f26a62efe30fa96deae95e3917693ab13f600ece281cb3dfe1a594bcf3f6500302047c435bb5006630640230581c0fe0138db5c6419377671f60c9f587318e2bdd8c99380f0b16d6619bbcddd5a43ce334a16c9ae779ef4212420d8402300a074e6f1c3cffed674b8303f4fdad1f0d6f867fc17171778577d079afaa2714250e0965ec98d76f8cbcc1d111d377730302047c435bb500683066023100c54de740ce535d81cd189bf2b824feb86a1a9caf7483856d37bae464ae2bf0c57320ad6da99934e3c98a4ec63e555248023100e5d0ae2aca89af20125a55bd901b4e560fbdcc47f4a7ff2a14a3c1236a5d6f24df63aa6a5bef2f59aff19bd1f51210920302047c435bb500683066023100e6d0e029122c6385bcb307cf02c28929fe9e72355e862777a58f95bb1119fd1c976a654677b2c18a9fcc9247f1571209023100e30a27d6df4f2f21fc1db88e8e9cf995402a85ab58d2ae98c4f5f880b6cd097740a778fbe4dddfde90300e2f9af3f6440302047c435bb500673065023100b09c77e41ca891013a92438d489e1b82b2467a325e4b8a306297db9a7e1daa6a941f82685d91681fa848e4dec6e4c9c5023050ddfc249229653aee26b47b7863db644b369e33d9ab08f3108ae8ca337c42ff64955a7e21eb7432fb405c686bd9b9940302047c435bb500683066023100dacdc8d5f825dc22c81e12d4716771e02159fdf7a48ee9ec98f3e865c90c56676467c6815bae202e0a446718b9ae62f4023100da92c125ae9091b159ae08db659370f17b4eb714a158577b74f1f972d2bffafefb28cf368ece384bde05cf8db1d740550302047c435bb500673065023060389c0cc9c98441fd1f7753c6fb2ab1f0ddc721a0357bc77b77d2440fb6b7c0d974ac94a86e3756b4a6971d7a8faa58023100a2a15ad527d2f7efb0e478f356c04db6e48b106e381245434c88889dd120208328d4fb166176925cedfa1949ee687ec90302047c435bb500673065023002988dc91021ce3550bd4f6c12088d8c3e9205b8a0a840be59c0f8426fcfa8859de0d2d7b08adf9e104de99a1101e7d1023100845212ea961f1ca0c2fb63e37233cb61488812ebb985becc16a44a1debe96cbbe935f6a2af7b94cded16c39cbeb07f520302047c435bb5006730650231008f3fc54c9825501a321d7e65573be28eb819bf073d189b917413cbda2c99c3bc951922e924b4bae29cdc86008bce27fb02305a73a66b60848ccb01fc42a278d5ee24b17524b045af5fe7b01a72d877ca7f6cac393a7ad105d381e908b5adbe4a23050302047c435bb5006630640230481dd972e2162f05053e1730965b8c7957f4be2039623503dc80775539f534023e306014e30b0b21a0ff814fbaf95cd202302d5d824ece1337894e03c5c6a1cd3205c8fbc3831f9aaa65547f7e9a9af43a06e200c8e7065832d376c013704f3957b30302047c435bb500663064023032a68b3894d138bd3b56b57edb70e9a3bf52017b89684b51e27a13ee845760d1bd9b3651df391740350f638f5adf9f8002303f116d2a26eb953a1671f78262bfa4b667f3b1149aaff7f3cfdfc7446d7466074dbce7ee9d200947de7bf5377cdf948c0302047c435bb500683066023100c77bcd497a0fe7ac13e677b4972614d107664fe19d8dbcf18b88d2dbb4e3c1e151792390d1225a88a295eb4789948435023100a087b0e3b9889b6e3c5b3c1c3e4e4dfd24c06f0caf07273811a3013242974a33d694ce45847bd1feb777e28334c3f92f0302047c435bb500673065023100edb8640c62261ddc947e6108d7d61ec0c0a305f7c7f7c5a67e57cad328a33b8769073b27dff2750caa2661183f5559c302300f18120e909b00a942570d40636077310ddabacb73383c8ed22dcdd65e4d0df7a622a856617074f21591b27dbb80dc0a0302047c435bb500683066023100cac33b3cb99f16b0d4ac9b403659387953a107769acb516064afdb035630b08ef2f4c106918996a67979bcaf58f35688023100a8e20171b94db2fc079da7d0b321cb31d76eb53e825e6c294168583c1a404c40fb97b0a9b51f3c1ded00d91e4542169c0302047c435bb500663064023026b0dc1111ce149808c6a87a166731a7a11038a60e2737792427db14264ed56dec373a03248031fc5e3c429bf66555a202302d486394f7fdf1c1b33d9fa2f25fc48d1df230e89a6120f79d9a81d5c18aacc1e8a2e7532c5fdb5c96248dcaaff98ca80302047c435bb500683066023100bda8e72666f30519006fb7f94a6c01883b7fee7403d55e9df8ec2917c178af84034296a505747982d72457f3f801c6d6023100ade2696a630b4fd703e9fa4269dc257cfe30637fddf79023fb1611ed5b1bc97aeb408008f320eb203de78765683705250302047c435bb5006630640230091f28aa328c24c1058d5d13085db3b8574904fc882b5338a57971f5781f1a0949eb8fab7b968d117bb10132dba874c00230696c7c331590972d7b59706065db2de09b2142c2ff2f960d8a8df8a874de9a3af903402ff48319c4e41243e4702d6a590302047c435bb50068306602310091ae0e2242e69f92dcf90313e48cae4629c634178e9764cec2528ffecfe87a7984a48d650aea06938ed3ce99053634420231009a8a0e1aa7daa9230e1b4d1fd904cbacea93864dae578395a62cc0c2bbe71204b353709a8e115d8519a9d086dd59147f0302047c435bb50067306502300eb5e87ed800b7fc694494ecae56102640c14a42fbde0a2df06f58757e5694978937e3e091a261b715b96ad5cc8ffb77023100e80193a69a3d7935044f1d2843dad51caea088d3b0dda0315b8bda4dd4bbb41e227fabee479cd468a669df22efc985a80302047c435bb500683066023100d428df7ec4da17253c4d6eff05a379f2929d1cb560d15e02a9d37017fac404685df7940918b2c64afb5a8886671fad610231009536dab0e7ff5e04a722de1661fb2973c8385542f2202b634752f11797d7c9e1d9855ee3e0863aee46b70fb123f056730302047c435bb500673065023100b375159748a1d3dd7e376a2f4af28642f08deac2b812fc1f94760089daa6424f6962212056d553b3e93d123339aebe92023060e5ec34f97781250ec76ca7e8a580c17f0408dfc43ef057839195c3bc3f5fef45d05b26513257665e8a2b200014e5c80302047c435bb500683066023100d91f2e0a10aff8e82d24a691e1953586298e1ac40ea6b61b83463b126e5ddc02dbdc38c6c0c50785fb462b8b0b090bd4023100e2b0e8288325bbfd53cf5aafd07be22b3405755eb1ec042b3c7b62db97f2a37e81bef7b95ac3f4e1cce8ec27075ae9b20302047c435bb5006830660231009820759f4d785143c6cc4380daa12e2fda93458a964fea6fe84d205826eea05d54b36be5649ad56988f98f4c047d6b87023100a1836ed40afb2e15aa01a785a9c952be3bf8fd157eb2afd1e4f32fb1ca817f5875b63a3d622dea81fe67f5fe7acf50a40302047c435bb500663064023023ec13bdfdb15677688e74bb898ab74671ca14764cd5cf2a8b2238b3712026a577d08eb9d25b32a58794e67ee0936f190230011addcbe8794a66aed2544260f939f3002136bb169e82507d09fc4e1033d8bea2f92ea8b6c98527f6e78fcb991154870302047c435bb500673065023100dec2cf5e6efd60a2892809798495723af09e08946df8dde23fb793b5f2a0eaa271ce08daab5058e2b07fa0decc01678702303ac058c09084fab47fda1bd16ad57a5e4d0aabf06e5512aa32d847ec3496d579be083de6379ea4665568a50f5d14947a0302047c435bb50066306402307c5a40dbd92017fdb30d4fd7fbe28cc751a7d9359aa3828aaac3ee53b7cdef4281b1e96a2de4855b7f050fda05759717023010dc14d8d2f5dc3f5bd46bc9c3f192f0ab2f064ece93b70f0aa85a69869973e39bd22e1ecd48fa8eb59c2456cdb68b440302047c435bb500673065023100d01454a3e3d2287f10bd0ecf53cf8b66b471e06a5a27185c9240931171f446c4d8a0045cd3fb21fca036d5516286802802305e2e250291c8d116e99ba95b0e7c101dd6fa671b6b717b609596ac126be4ff2d64c8a40ecff5dd02f2048de040c6eb030302047c435bb50066306402301afa2bb3768be425953c17e6aa388cdb9e1bf61f09ac4aa7bbce2906b16cdc07e9791ee4efef49cc3197732cd2c7d8070230776b2082528dc4a8829999d9d4c06be816ab198763d2148c34ec65399e3a166a4ef52c7d2845e64ed667c9c89c651a4c0302047c435bb500683066023100bda2854414e9d76edc9f144dfee9767d405c29f2419e4ec39930760f39946b410f674d41722149c7847e204feda85e2b023100d7ffeaf243fb22d287d52c74d5e4643e04334db5d4c7bae37863afcefb98df4837fc7a230d487b289b6f02ec34eaa4240302047c435bb5006730650231009ebb4b43282744ec02fbb6bee90e92ad1118681b5f51cb592cf5f37b1192717ad4e961676d74edf92103a7cf50f029bc023074a5685c7d62f06cde5d47ee5d2b418fa51ec434b164eb95c6d6b610833c1050b2f5081b5e14635071af27b7d9c21ca10302047c435bb500683066023100cca0b33ae5d2e7d8f2d04cf19ab4ac2fc31caf28fcc72b2e019502bbaf5ac0239d3544d1f6d5b9f28d6231fddda4995f023100eedbae1173dc50dab78574b5317a4f3a921e2721c38335280482f6d99b7a2f7238a7af6a3eb81bc359914ac61c1349b10302047c435bb500683066023100edb762b2296777493a2236686b33376c5cde3a63c58da4a9af2cd8289bde42320a3c3ee6453c676d15d5a6e3dbb41f9a023100866aced7b17f61ac9649bc76767899e22ad7fe68511982c132ae96c313d03310f99e9d67164ebcc23110322bece0951b0302047c435bb500673065023100fad737b825d8d228e6a69d672a40f1b32bd1e6dbdb269ab3ab30c8e30d607e6e0401089f10b3ff20162538f8349ef7f4023022189b3cc6dc1b801f9823c1d8a2b60a49ab66cddefadb3d0849f619c581f65dcf6a1097ebe25d42b727c929886b174f0302047c435bb5006730650230194343b036bc0de10eb7d987c4e73e99c17e91ac8e14a2084237196ca9f612b61e4cc5125b16fa9779a9f591409ae1bd023100ffeb92f09dbc11561192cc3e09ef0230a75bb8d97d0a0412cccaa9bba99ea0680d4956de7cdc9532c256b9473d812d390302047c435bb50066306402302a0dbbf4477809e572f331f9670d8cee2bfe8b195a2d3c1541c26ccc5dae0197d029e558e7c6f7a7b600fec5d4d09ba302302d7d5efdf96e8663d22c5f7b32530d2dec39750761ce6c8fb5e1893c78e58de689b3ca033aa51f06aa332f7bd33c5cd00302047c435bb500673065023100edac69f240c826c8b450df8aae77366ab701924ccf21c5eb33ce6f63290571efbc0bd0ed6e7ea507244eb72488adfad602303d83ea70225086a8091cb996215fb0bf4e79d574ffdd4aea3760366500464480f4ebf201809b10656adde7b09ebae6b90302047c435bb50066306402306175a89e501e43c2b7bdd483a706fdd6010894535faf3ee4364e0b653a61066084c8a5bde7adbc10312d7b7a9a38a4a1023015f83ed22e4a8200f12887c687eb792049e4c9a9af1f4060136f18df4c3a64c382add4134d25fa9827699701c4a46ed70302047c435bb500673065023100fc10abe86d83cab2024b23c5a414e0830bd3b2d8cf78504c864913086275d22503ed30d133816eb0b23df337a93c6ef1023033c7f0b0f628dd6f1894aecc1aa472b9d30f6966911cfb722b75963f1bf0e8bb7a639ba3fcb82528ceeb61b0acf811e40302047c435bb5006630640230589b62d7dfd83a899c5c607427634babdbcfed3196eee5df313830b88648d983068b566f9759b3a7d6916c835b11854e023045c17df7521c044bccb776d2f25079120ec1b2b6a84a97da69156191471a6ac8ca1bffe88a59f6e6ba0a02ab47cdf2db0302047c435bb500673065023100bf7553d46c7d010df357cb99238a918317b2cfbb918f816ffd9160c500c52bea1a2c3fd994f57644353aa9be72ece09602305fb20cf2413246728cfbfe5b8bda3745b1b1e7cafcb0c6c0e469acd4ee3de16f0f899837087bcac52f8f3bb7fbc6ad3a0302047c435bb50066306402301bae44345958e71a762d7352a4a74c2f99bb86e2764a167192b7b9afdad638cce0cbf1d954ef803fa4309cb696e7d0950230279958b54cd59d84c2b41953b690052635727ac69ede7d129015a748c97b990d6febf97431a64ce3c51dcfad167373560302047c435bb500663064023015244cf53ce1c61d34e19357fedfb2a474fc3952da6cef8d7e2eb827a2476d4b572d26cbd29659d6c9dbbc4d3591dd93023044cc46ef10e3f77a10b6206d70beeb7aced5f017f271052c2221f2650d4d95be20a4989e81a78069fa69a22aa8eb9f960302047c435bb500673065023039696fbc6e8126a3554b05a75fb7c0c8325cb33f6f8ba657e6d0ed872c972ff65542f9ab8feb9c133d309aad2fbd48880231008c03cf7f31c9805b2e26d5979561b51c1de309a7154c9c48e250a2eb29c9e8412cd40f6d475f447989c3fb0c6ef4106a0302047c435bb500673065023100b44951cf5d944b5b94a2d897cb30492e1668fecc8e4af6aeef066018526f8ed900a817266cdcac80921ccdd4f8a488920230376a043a089828e05e316b5c68831d817181eb5b1a1cf2104abc7f619336c7147802d00844a4b7b8dbc1193c2f45ebbc0302047c435bb50067306502305ed8da6ec4b221a08b4c54daf7c1aa7e29fb1b4d1bb9d7090dbfdec59af27e7d341b98c7ece6c6f17088605edc7390600231008ae1521e6c38326021e8051aef894a6b626e4938ace63e4721021279aff3f805d38d47425435abd738b1bdd75e0d4d3f0302047c435bb50066306402303f1e6197f83ef29d2689278753155f9b4e199d7b0ef6ac4a20b52e4f10482affe999995cad6bfcd2b5b53eaaab562ecf02304a5a8b4d9505743ae89cc3e59d8482555876de04623bc93ea568bbaeff35ab4bef4182545c6ee5f690d6d108063f26c00302047c435bb50066306402303b23a5baa8a532c9cb597c47a87dd0f08b7b273e03539279461a7690e917101a1d8a5684c6c27b5f473c51b7ca709dc80230780dc5215c3aba1e7945e24e119a1cc20142c0104af4e046b7be6eb68fdfef9ea2ee1c1c35634dd2dfea2913b14b48ef0302047c435bb5006730650231009b1d1d9eb2ad15efbd915f577b104023f5e5d6d9e6b935dde24eeb3986e89481ad0a09fc604473f47c1ef7ae00c9950902300be74ab33f68a9203a9d25e8e753bb5767308978f7058809ca78fc83e4513c7df1031fea433a544478f1a73802dd30fc0302047c435bb50066306402305fd6a7239b316a91fb1b9bed20e11305ebeadb481effeaa0e81b55abe6d0f907e0d3c478c4636dcd6e91bd7a0802dab902305c705a9ba35f783e651ef7d677d077c320794d48846eab6f98b3133b64d17f414416b3402d3813ba33e00399f230c9910302047c435bb50067306502306d1f7fce76e5da6b27cd2f6a287d545562e80d56c7885eb1bf67246bf659b4092618e017a34609721d56017fb096f82202310096625ac20b3e76167851431334b3a63c8f1a76da85f8ce23ab71940b86562f55bed90ff19f0bfc64bc19b41c775b23fe0302047c435bb500683066023100cff046257ef6aaf8a2c42b125db548b2d137375e6b4b534e85e5d924d6e4a79ce34fa1f8aea456626fcb96251e6d9179023100920c888f8ab2d394902093346cd4eb04308c0e17c7279333d25dc03a44e6dd5a033dcd9b47a837bc8436a00139fab9790302047c435bb500673065023100b9d1fbdfa23b14349bf02b63ffd44225935ecc79d0bd195beb2d6bc99bfd888e7a760345448e7bb61722b8ead8beebb5023079a95e481722af0054ad328a3ab767fdd4126be2d6afebfb178171db7293f8bbbaaba30584f5846d3be389d6c8f0933e0302047c435bb50066306402307799893b77ea09aefbfbf3dbc16aed311b097b3c9ff8c315632c2c3287b71be2172ca5ea142becdbfcebdc50ad2167e10230544b4d4fe6cea41f4c076d3959e126586d413bd99a6658eea38c967cde455074f05df16c0fcdb58bd213a398bb907fdb0302047c435bb500673065023100f6b6e512f2dc7269832cb16e5b4e1e4231bf8f7929511122b42afb8d8c30f9af45d87a8243561b9b92871d4723f6d2ef0230175d473379d2ca6611a11de515838fd08bbd79de72387e9bc06dc28bac78bf4663d9dcde547226f53f6ec5da1ad9b8c40302047c435bb500683066023100f3d56a7230259b53162ae749837b62c9d758c40d2431a343a29f2ae8800014ab5e1d23066d4d7c41bbd2ce79665ccf6c023100f01b95d80110abaa39aef8f8b59e3e55351f51dbad7b647b26f8fbd04f86b33d16e90c1a1c0a395be0d8bf6ab2facd570302047c435bb500683066023100822a6bc9a885a8e36a6cb5c46d360a8b94c4a7455fb57c9431e0cc8b980e6c826ee5fd459640c5e0cbfcffd5a9165f66023100995fcc232100365c0a9e8b1fa870d91ae7ab1d866f631b4e4e2a767adf416a4b151c8f9167211b7b13b7fa8befd240bc0302047c435bb5006730650231008632b72d7701ccd17ff1f3acf2b34a3da266be654fe7c707e92e650f60015a899d9354618dcaf659da135bf3e84a4e5102300a5a70e31bd39b9bfe7908494859336abcbb5c5fc9c055d51b1ef7bd61f2d6b780ebeafd3d536c7d5aa68a614fa3c1ee0302047c435bb500683066023100c9b9b4a07e5d54484f4b8d2093faf5c3c48e83bd46eb22e18376f0eeec0870ccd93706c1eff57d65ff39596596ed1f270231009eac50dd25bd259f46ffc9f6fa2f95214c182377b47289f02891dbc6c62f5e85a33b1ce7e75a37e6a142cf0da19ce4900302047c435bb500683066023100b4f4b050dc21f5a8ba389fd6a0e507b119c91a1a14b0f7b46dae72906fc6e16a202752e84be5a5931097581aebba6d4a023100b74ebbc32360bc62b64bdd40fa817fd36358044a5fa9de0e6aba224393164e52fe797d8cc10a8af6eff537abff3715620302047c435bb50067306502303655da197849803bceb6417393a481e37ffd8463bf997144ca7b7db02ce3b0360d9ebfc517d47a236267c857a0b97f9c023100c184989533259aaac5198d71bf21b3287f3eb03e4cd0d2bcf8cbcbd7415709fac03ce6111bf53659ac5fe1f42e5e4b5c0302047c435bb5006830660231008d14e335d1017347baa3a7bb5e732da99536be6c2008c94a1a7c01bc0db8564bb3e2335874cb182d282495430e9c0f550231008ec45d87dcaed51303ee5a9e3bd1f9f343602eb3e7fff92375c6178eeeee145cf22fe2d2754258af36a26b80cda758720302047c435bb500673065023100f5acb943c97fcc60a91db1861c0f269f2a34492da0a4dc0dc258cbbc0e37fb5130f36f8ca64a06400f6c2d95e7d4d522023054dcb0d01dc4f8413120ef1c8a6d8de8602dcf39f831fba3fe474f4c1dbf6a066b5d230674bbdadfd3aeb91cd201b1fb0302047c435bb50068306602310086dd57f292d03cd11f3aabe41f7070a7da284409a94d5c0505989a6f35d161d48551518f852fa78033a9c23a2dcaeae3023100efb2bcd37e379bed38e2765eaea975b8c48d6b485f1821fd93476c0a4749f068f0fff4f6135b3a1f0d4a1a471628b5260302047c435bb50067306502304dd6af4fc49bdc4da217daaf7b962d2938ced8e25056fdca8595d2244d1dead64fea92d6ab3d5dbd2b69a1c53692c262023100d1760ec1182022d794c62a418df49d151ab79f894e543bc081502aec4611f61776c3b651b88d3a99ce5ab79b1ded4d2a0302047c435bb50067306502304afc610dc72f81e72e817d4cc8dd7a6070f4b69c3a884eb0752388c01f68d95a5cf91630e813fa4b23c119a585bcbfde023100fff428340912cb3c195a03ab97253478a3af771506c0a41889e619b09f460448fb39479e7c38345e72f1482f05671f7c0302047c435bb500663064023066b33cfd3f2cf0b487829cacdcbf9d94486a47067a1352f7db31597b7a1de37e837c5271fd4e398d11af4f73f81c17e302302b414ba15467237a9808e5af5ef5b87c86e1561d9069c0e98380a3e42e1f56f1fdb56700a81ebf579588adf7c33e5c810302047c435bb500683066023100ca4ef0e5270073ebd895e178f0af69aa58d2aa5f0d20a80d51efa0368cbb46e89b8f563f8e424317738e6b30f18cf9bd023100f36f2ac73243a1e8fe76760999e7ca36a6b2c557c3f3b9e2728a9ef19daf01012bec9a32df8b3b399b88818d10f54b900302047c435bb50066306402303c6ae1c92e3ffb3c60de02f5e98395aec2ff9c4ededffff86490aef6f92e9573c29fb59dbb08edf710634a0d5713194202307a46d5ac4f8fa70b361f0fddca6fbf24188772543c48145c6fb44b711ba3bbb9c10bfa57432d652caf6e84dc4b04755e0302047c435bb50066306402304c3d44944a111c863528539d912aaeb53cc128d53d98ce9924ab39a9d73f7d987dce2cac8bef71f6b8f96c7662f087d8023046cbc3c52e7c0786cb508dc82b10596d82d6e9c8d2ce495c655a3b03891927f1bcff319f7f5cd8b87670e765be68bb8a0302047c435bb500683066023100c79c91d9d793474d7626125bb65dbcaa39203f1a8418ed2d2f2dd01f4254df3fb97b0238bc9d09c7cd82c875025b7fd8023100fbe02d4fdbe3655f564187d28a35718ce3ebef96d3808d8992c23baa98076c6cc7403b74a5f8a995d31849deadb0c5bb0302047c435bb5006830660231009f94ade58eb676b37db14dd52e3dd3016fd14b618eff43e2dce2937874560935bd25731420538bc788cc3b3d4f581f74023100ab0b11297a3cc6958acb6fe4b3df0c8818d56dfedbc4ad09089d009edd8df49ddb1893627edd57cf8fd69ce7e44649700302047c435bb50067306502302a74828a77b48e11bc366b42a65da05223825ed07e5ea7537b560848d540fa16f9fe6fda2eb415c3ae1c690d86168843023100f5ac5e4757996eda71d2f3d4b9766a198b849290f32e2905efaa44aa1faa91c9b6383fc91fb5de89aa8b61443dfedc350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023025595eb54a52060c2aa27264b1886e0bc415986459335b956c7298ac9dd8552ca8aa6963ce17e687ecd9d573362da14b023100ff1e3409b595a761cd6271e0e77c790f040a50877ccf3dda35d86aa2f1a7e368afff0b7bb7ad8e2bad1d5dbc6dfcc4d90302047c435bb500673065023057ef09c0f04ec0e9547ceaa8b7432e11ca1bfac933b664b953f44e00427f25d642b6efb14bf9620011feef26e052690c02310082c3d3a2a18d246db8e5f4c62e50fcb9e70405f176e170fefff3af4f0bc180827a84ad8581dd8364cf5353f13ca6c29e0302047c435bb500673065023100d748b356d4b1afc8989e558ff3fc904def7da9c16e95dfe2b8e12f4f9c06be15fd905d388e0cec0d4b70dbeb9dbb172c0230514e40e9abed0da6677bd7578ec3c04f45fcb15da5507e10835ccdad8eae0d7f3370e83222bae0b4a01f7f75269d7ff20302047c435bb500683066023100cb6cc995833be851bb8ea7129104f9dd2b6694ddc2d9d854a5250b041ae1683ca897eabcc028da7f759606745ea285ab023100a8f642c07e7d24b1db143ec990f2911efc704447784cc9476ff3bfbd4d69f385bccb29e9a57617fb5377da26090aed970302047c435bb50067306502300546e03c7617faed9221cd4561ab42453dbb72484628e27a05142028dbb594f57f6d3f0102255b5cc584a5bada5264e302310082cb3f63c631aa669e0a72b2250ab596b574bb40b3d544ca749128a4b4e5a16dafff1758a7125326ba84852ef1173d670302047c435bb5006730650230718dee92e3959a01eb349a47b7ad5e0a5c2b2722ed7cb179a71cb07f6d59a8649ffa1489466cda391d529249fc0480e502310092d0696b257bc875d9550804e8d94d8697eaaa7364f408d9e4d42fc216024dee7ad14cb5299405bc12119a0b844dccb20302047c435bb500673065023100efe84b7b76362e928f340f04291381cacf08d5c9927f46f5ef9e6751956004b694b855f380a77579af7fafdec5ff64b00230169a5df2fc2c6346087b3a28c938ff61badba570b78ec1aac05d471eb13014fddf456ba7594452e766e28c1b5a7b675e0302047c435bb500673065023100d26a95beda5329eb76880d8fd02b7b90b703a39e06a4786f0142fcd603addbc008cb3cff1a2534d68df113f72c684d1e0230275265032baf9f70c4de57843ce1c57a0c1884d3251476b4353c19cc036b648fb13bb114b159702b8e45cb2a2eff811b0302047c435bb500673065023100bc01ffaddd3a339cef3dcba768a14cb27436585ee86fe1b2cea99dc60c830078ec46b93cfdb3dffed4b9ed16e2d8878f0230382c68797d1f42595d1c48ca773486cb74769133516bde81ce06e9c06e4ba729b7e363e2c40fb0444386cea16045a9b10302047c435bb500683066023100cefe03af98d7e7af9e33a42a228e1ba78e3d34210215427a52b2abc8a79ef09d2c918e2b99731c8b582f584e2d94d4c9023100a5c116f1435c8c301e83885d563c8a92d28d13f18d047b4e16e2ac3c121940eaa1fa9322594ab3a7bd4454c7c38b32090302047c435bb50067306502304583faec2da84c994896f949a2c1b4d336f869f389a9ef14dc167b3b8656e8175dd18bce14b0b94d73685c50c9159fca023100a32739ae64f144f65e61ccf5a2fe8aa9f66191879d31720cc17934236f7d01218c81a9a89fd4f272b432e27b30f7fb610302047c435bb50067306502305ba312df7a57cf17f21386bc6d599cd9135ed9978b7c8718b515177e3d35a97bff89d4e9390db35afc5720f2f170a286023100c1720d1007ba5a5c60871c7053cc93adebc105d409930312ff65bc46542f547d961896040709b00aef2bcc8d442522490302047c435bb500683066023100c788d25b91fb115e6c7e72a933ab4461348b5999c1b7a7bc703154ffd8aa1a4492944ad322f4cbde942f4474df175f57023100d36593c21d19ef4dff436f612c0bcc3f7882c2b0c8d26c985bc49037d4227563c3db4d483febe946b14f39270bbd5a4a0302047c435bb5006630640230104be8ed944ffe2ec4ed0dc2f9bc0ee163b4a9fe45d71cdc56838a3c0e6d269805f6130821e192ff81b89573ef667273023062261daef3c75c862c64b5c6c9893a414a8c6b8347d927c50e9209600fb38ba81a3272050e153f2d98e85f702b0acfac0302047c435bb500673065023008306eb5e45b89d88a201ca0c8210dd80e0cdb94b4f32aefb066b0f08360fe65ff6c6e93edbdeb14be29df1ba23a8a4d023100bc36bc4ef10ce2a67a18e95c5b2af6ba5f5d42bac1f532f37dc0c1b10f72c5211f801b62110ab49583019db74ed1169d0302047c435bb500673065023100fbb6bc6199580386ebb0f7f1bdb2482c005b615662b6609cd0d2e99e410b26fa5a14a7b5163f59f4e47eaf2ca70c51f5023077ffa14cba3885a66f5c7dd2c9ba11e4a7a5183e5c43a540cbcec26d39b05462e5b1787ff040b1cbbc04b5919c0c79760302047c435bb500673065023013a9729471c506adc48ae7a723f8460d6cdadf644bb15d6a073793f4a4bed3837f8053ea1f44c4da11cd585b9730138402310087c8527080044e57036fb08a7ca635da98cedc7aa686cd50cfde17d5da68af34dc2cdf6bb0cac7a31b0448410cc37a1a0302047c435bb500683066023100ba229bd44a96310a87d6b40545bac22f6b1297ec839cd112de22369cf1b52dfc839d3f2242a1da44f191bb84d947bbe50231008ef79b4e23d903b66bbcb0b9e56951b6a05b0c4b5d00cd6683c3c7e03a16e0aa47c02e4107a164394109d49e23f2fc230302047c435bb50066306402300b8e37a828c097c21a99cca9f75b3e50d0dc79d4849f8dcb22bc3d991b66c62da2934e0c6c868a8940ef7ac88afc183a02305c702517d79c72ede2a3f976dce297d96d26fa2a6d8c1f54bbd405e6d2fd52b5c8d90ab192333630891b5ba4ac2f52450302047c435bb500663064023025ce4b7a9cc9d36977bfee84b3ec023cfd610f461d263f0294b9b002df424157319c393ab4607c2b8be96541a8bcebc602302fa7e3acac176cfd30380a9cefa10131eec1935e9a8481a47a65ee2933b59cc3699caeeb293e1f8a30cef649c44165e50302047c435bb50067306502310082512c8b9c19254254a7e47c8ea4899c908432cf2091c72b6e6144bf45477bea977b41bf404a7cca5ffffbed5882799c0230273bfb06027810aa02c6e24379fa7d3c694c47f3fb277edfadadda501258979756dff4d6be218bbd488ce34df84fe9440302047c435bb500683066023100b9bb1da9cc264eecbbcf44b7bd8c2987aa7f62fb89e45ab7fd6dedbb33e740745cba9773c88abac1255887c9e796ee230231008b662fb51caad4eedf41b22fff8268b8a610be507a3d6aff744835e71a2b3febd93e55b4e561f6bccd7c65286d2036f60302047c435bb5006630640230386bd3d18bf956a92903db1242957425cdddc06f7ade28c7e9a71989917dee85f402835a18884d14963cad0b881499f80230713d1029c3dba5464188f0712b374e10eab0fcd5967523500648bfd2bf58635604baf56b7d1c5bbb617363530e4101650302047c435bb5006730650230322ee992cd98507555ab1e5dbf5a1af97016c8cc59a4567d767fca700d7750b495dc8915981054417b913b1191cc76f002310092b23356347e95ec25f1f11c6aa419be600a83460e4ef9a6dabed2b25ab9bde9dd419fb18a3348b9232304db161774e50302047c435bb50067306502301a00bf37f8d8d05ce66a30bec1532375313571549d49f996bb3581d7aac5f16597b543a6396a8ed578e4efcaf8b0f6a3023100d6e8a122a025377170cd352f68b0efecee8bbdd57ef4295756d408705cf26e83ed91a485e596a9ad9fb2a7d9ee5d811f0302047c435bb500663064023048c3730b1325798e3f9439e3d679043857bf580c1c3555b6a831f6ee60f870dab718d73fe101a203255b77fcf28d20a802300e6ae738e2c1fcc2dfab2512db3a58d2be32ee601622627a2fa26038e497799a4251b6044853e5a1741d2bda17222c190302047c435bb500673065023100e958ff55c63faa50b530b16ec6d963d23188b025190e8f4cb418757f99de8251fdac2b17516f768303f943cc1aadd652023004a022d2fe62845dc2f846d2a0dabd7ccc8091e6a74f9f3670b254b825d06a42fc3c78f6b0a41a5fd10dd98f951f73ef0302047c435bb500673065023100b7d61d90895b152bdd869abec135bcf5d6ae5f4994c5e7292c0c83e4435afc810a983d245772ae17c13bb46b447bdb6002301a5003feb7052ee6710afee54218f8c22d5ae2c6547edb6dea81dbfd86e5f568a7b8ed07391a6f4e1d004fec05af43eb0302047c435bb500683066023100c20ac9f1d600e3a7d64a949d68a29a8c54bf8db95e074f755c34af377d14fd202901c085b2cecf65f3653165314ff057023100c719168a66fa57b477c7d17b7ab22ff579e431910686a4ca411bc11ed65b175b1b7c1c91224e31087c989a02e88bbaaf0302047c435bb500673065023010e8db41d935d561675bcb72c2c0692fd60772912727c60a3e6ee15d2bab46ad8b1d75af7a38f41c318d4011fd61ffb5023100eac0df085ea03349f620dd5a1644821c91cc6391b635ca0bca4c9cc157bb27f31924c96853ff71e3058e9cb9136238200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aef743d6bd2ae1496eff6cea61714c4ad8ba7b3f2be77c6971b01b4d9555a0645f7b8cc410d86478d8a7819da20d71260230444ec620d08569634831a1f84c8dc76ef8987ee6b6d4ec7c71d1f35abb2bfc2a624d862b0ddceeb9bc90f5e895114d9d0302047c435bb500673065023100cfc28da46baae2a22c8ecaf7b7d1a476f4ec805bc45a34e1b210b380af8aed196141138b40e688f0278786f1424de5e3023051a7d788955fbf5d0bace89ad9575b6bcc4b01f122973adaaaba4003b26af50f32353c692e1e70c593d44acf800bb9e40302047c435bb50066306402302609df8676ed79ebf85caede869df122aa1065cdb977f8262c9a75f524dbe26af2246161b599fc8e9dec03902c5ea3d6023026a9a30c3a8e2aa010466f14ddf0698c80dd9bf3feb3bc82f3512e8e320a28ee956718c2230d80de0548050d3f37dd180302047c435bb50067306502303a21b9f85a386ab263f1af65d5baf016a0695c6ad64c4bab8080d6b9b53dd06f2a3353e172afa4dbd6ab77f3c4e277810231009d01ec583d44439df7c9c725f56887457186ba4096bd70244e6d446a20a23c73af4c603eb45b85414c3c3d8301fe1cce0302047c435bb5006830660231008b7c67e9ff6ba867bde0e2000f21ca037fc0229665b218da317a660d70b4f37da2c35e651695d0223728ad81e3f5e9a00231008bdabd18f7dc8a4e9180aca27d5de104f120dc48373a62532b9d80a52e802b129daf453b011a7682732695092dd206950302047c435bb50067306502301904b86988ed0ceb72bfba904f408e75327623f922f4fc0e348fef25d269bf9d98e072145206c8cfd60173cb923c6e30023100db4679d4a9ca5ac53a9a73c1e988bdc65c23b21b36cbb3bbc1a446aaebbe43cde6ebcf3a4f7c75cb37b6cf1cc44217710302047c435bb50066306402305ce4671d5e03568fa0d05578a6a7aa99f42954bcd12fe00bf04c1aa3e119de4db589d52144ea7a333d91f78ed47b52d5023040d4ba6724f3c8deb87f97b7b0e55366ca92b0d58ddff1ca49c0045fda1aa2b2236c54958f5fdc6f017cd3dbc0e54ecc0302047c435bb50066306402301696773968a00e1de37a6467d874c6f69d5ea4b475de7e73d762c03594e7f82cb3ce21bcd4d0df4f7b9f354bfc5e291a02306095f77113c8ac2102f880d1dbb163923bcb4cd0e4d2476188afec6e896656c81ccf370272a68dcb54c44e9b113bc6150302047c435bb500673065023028ca0fb842486b1f9e0c5885fce52a7a8c8be5237c19c299939caaeea1e9de1f3cdd4df80df9548fdf8bf3928725ff890231008b2615a19108fd19a1dfd35d4c7992d439cd4f55af53c3e2983874a0785ce47a3cc84eb8d2abba0746b963701b21a9d40302047c435bb500673065023100927e2f4be528ad50693a17b7be4996646dfd3304c5dbc0be3246c302126e4c03070997517cc932c23d0eba689dcaf96b02301c60bcdd6fdb4f88c811c093cbe7b90f98387d3cbfca440de2b7ad448ad178ce68b486aedf9e2193fda158643e1ee3e00302047c435bb50067306502304dde834ff1443eeb502c075c7d6bbf8f021fbd9e0ded1f21806b152320412817a8bbe84183a83183478f77f2c489bdca023100f74d39a44adc614b7df30c7d1a5e5cde2a3a23015e10c6e2793576c4ad46514df5786c6789ca9b33df0027ffced069db0302047c435bb500663064023004c9a0598cb8638147fa3ca10376a67b1d4f7e4b3e33d76974ed796c88440e7797041b775f6fc8b3887e8b2fef47d9f7023005e2b8c9a8c7da93fc48ab8029337ca0453ebf618278d23424f5b55e2e6139b47242f6ca74ba7234bd252608d12078aa0302047c435bb500683066023100a9467d029b12241656eb97307acfdc7bfe02c35d6c2ccf55cd36cabb7344a8c432c40f0da2deb71fe8c25c17a06e11da023100cb49242b6de3924fadf80242bfeb2a418644e4e84ff1be824c03ebed0bab476c24263c136b8d7431fcdd6616d1a6de920302047c435bb500683066023100c3f1cbd0be2ec3d08d1adc5ed6feb600bbf63f6085fae708f16a2b41c89924e88a8badcb936442d5bcb7ecc790db0457023100e5b95eaed11b6939a028af29e2c4d4bd2454cf6bfc7df9c13f467f7e3780d8a4f464be40fafeb8a94228622ea58c74fc0302047c435bb500683066023100f12f89575a1cdf38085dadc3b92885f0a5169de4233edf8b6bb41d83f2347bba33f2fecb2b6106d04f3112dcc7451f76023100a39720a4f8e8b8596f02e4d672cfb93d6b25e95eee854845cd60b751546742ced40364b87886de809b750c7bceb739960302047c435bb500673065023064a49c3119132d5105e7ee151a08fdcc61acd9d0b11e1d8f0e2ad620476f67cd5dabc567ed06b07d6f5bc22daa309377023100cfcf59aaeec051ee516fac0d8d8c4ef829628e1973bc6d60a019b2214cecb00ea4b3efc0970e6e00dd1f116f298ea9290302047c435bb5006730650230227fabe3ff2b3a3c68e574c0e51920389cfd8c43df1ea63a855bf83de1cb7db279cc92635b3453563c7142b0278aca24023100d502c544b635dadbf932f7e56c8c6eb246844bb9b915b8044f9b66ecdb11211a064db609d9db47141d385d8180f8137a0302047c435bb500683066023100907ef5206de735226e426acc02c32fd7b16742bab29b48fb38af4f0f9a8ef7c17727fb8f55e99cb84f9024d414a10d52023100e452c4d9597eb95cb2b67412a236bbf5c36e23358074727603e20e932adec0d3710dd9365d929dfab9ad5c3eb6d1db290302047c435bb5006730650230679290be40d4ad45dc39eeb109db6482eb4e2d5f9a03ec2e48f7f12b7d2d88413b6e3f1208097140db3917c0be790b2502310095b18d6b2412d676384f2f4f9e24f0dff220a51a161cab4e2f38baf423455d41e08604a553414ce2c4d2ebcf40fbcf7f0302047c435bb50067306502301041974162dbf78d937c8190ef91b1dd02405c9b0935fce7722271ae85b649857da55355a14a9aadc20358a3bd14da11023100ee1d21c0e344c2828ff66afdbf79bc8e814f950f294e626b96ac2f9cb6d53e56546d92a9942ee1044625b717d186d1d10302047c435bb500673065023100ecfbb9b536373b2549cf5b9dcba3d4e5d6c5335627e360c7ee3f96873cbe91bf659c79df32ed03bd8947004df31ee00c02304aac140cdbe2e025a74103a681638a453475e8ae2103f80821478665a9e8a45113767bab1c484091c12cce0fdeab32450302047c435bb50066306402302a57a65dd4341545f975005d005f6cf595914d855bda9a511ba7e39e6bcd3448361e864fddaa0da925d5d0e46dec72fa023066c1152810e8eb724d58d372ca9d3e7340bbd83f0cf52cc6e4c51253418a34096147fa016666bf268abca5ced5e3c23c0302047c435bb500673065023052fe39e49d7db664e9e85bf576484fa9759a15b813ac5e66a7d7206d0c6ee83aa2c53c1ed8ef6cd8c5248a49965c32a9023100b7b5a0257e98efcbed328afec9b6c86e66a11d115d1377a7d75aa8dbdd722a13d95317a22b4f327b7d1d11559b8fcfd90302047c435bb500683066023100b2ab2ab79f421f45492eaa47e2495a47e5c44a81b66468bab7c53f5c45cc69f9a65058db1aa3120d15beb5dc8dc95450023100f77acfb1c34b0e49c3b5259b627877b3956a8f54fbfff66fb0b12a46e361b0c76044c60e60e62b2b448442718de034090302047c435bb500673065023100e8163f7fe4ed3cea81dd64f01f6ca29b08b0a80c9aa8ff33c3ab41e90d4b8dffc62d90d075cc8d6ef22ef2593354d4770230253339f4163720588d4430b056a95db4ee74884c1077a732c87a9c264996cb740853afafa8a8a845ad9781b69d60b3080302047c435bb500673065023055b20508e3be938a7c00f594d6713f769248ef7699a5413eccbb794f229cb931c8fb21d906465edb7af20a10992afe2c023100bd5669c025c32c797081435fe1957697105fb4f1887ed974d7e024be4565576f4e8e711cc8d9c2766ff102f0205589a60302047c435bb500673065023100de04caa6fe18acc0d37fbd6fb5ecee0ac5ede80152a91741fc0f6971791b0283f587c03f37d08e3b2305b4c3f7d3820302301bcbce89304d3196e06705079e00e9b1d1aee12ce3cfa9405c1525c7f1bfa5dcb970bfcb30214c87cc50c5373ecd50ff0302047c435bb50067306502302f7fb6555b90e82ff92b850d75e536f75692aab5879d6195b67525090267457ec569944b7f21cc5b1678349c453f14a7023100f461f8c3e09707730ee62f0df64949691fcdff1f3188cb79f40e2fe9d23aed713edfe4676c8c7b97d7639be648469dfa0302047c435bb500683066023100e081e9d664c560254aba868127c4b35d9e6afb7cb4bb6350438d1671edd1774b1e626bcb4b8c78b13c39e08d1fd71d69023100b260666eff990bd1431b45dc7907b802a431be0e5a37b6381a91c03b8e449373140230a383b197b1b8e0e9e6429160ca0302047c435bb5006730650231009663a977cc11ca57dbdcd60d0c76290cd53a0ce8066e1bd74a7b1bfa3a2a6c11d13dfe06f43620fee8a34b05c54ed84d0230113636ce07e8b824a1b0989ca248a0655b09fb0c9a4b25437dd62beec43f7cffd60423356e361b8893652716b215781e0302047c435bb50067306502300cd02a1f357fbebdd21d1e231a28b5c3c0c4558c60dd0873123a137b21f5ff6a64edd9469c783218d5ad0ac4ba60ef23023100fa20e565b89687ac359fe5e6dfea005164fea05bd6722b2bbcac324a527e94110e26a5059b0d1231bba6c725ac2aa72e0302047c435bb5006730650230673f1fae9ed465b0d63c6900d9ea593d9f62470c483d1b28ec2ff5abc28d31fb954d891b95d0a2f190052a64cd6441f50231008044a96a6a633b915ed81a691d5b19807d2c0d98851e744b4fec98d889c1451e384b7be15558b3ae7f4d6693416c12920302047c435bb500673065023015d13962069bba9ad5d70841730e5a5d6d0561420e95f226981865d3961a93a6ef2b0df8243cb225e9d0a900296da9030231009d6a1e93a867f3912721361ff74a3bb08ab0c39e91819bf77216a5bc5e810b7ac7b5aa68c11f80e60f92876f88c333b10302047c435bb50067306502300c4c508bdaadaae540d044ec8cd43079cf9057998025abda8aeec2d63327b7448f282c1bbcde0d19e00dac6fce240e2c023100add16352c64310e71924731e51d3a22be4c3e4daae2c9d6ea36244cd4c70bf64d403e7f904904277f1622f9a591950520302047c435bb500673065023100c8332198d450728f177486a184887fe81e10eb98f205442e664947edad2dbf286e65ef0161dc4122cc299d205ddc2ec502304506049ba8974a4f7b901c9e0d95ca143d78fd66669a0418f160c6d1a34d3053369d875d08f613dc13825d75352f88df0302047c435bb500683066023100f1263a7ec5b3a28829ce7505d86a360e5c387a999cb97b759a4e394656a1b5a9dbdb560687d32dbcbc56ed44eccc58af023100b211e96ec7732f0a5a52a86bbc06ed25dcea9b6019438d932467fc633e90e96fae3aab2206f7ae73e34fe578797160a90302047c435bb5006830660231009526af8c23ac29060e47b7943f0e821bca6b474a49c8cb3de07a5b641a50a279e3c6875175ce40a41ba570e58c36229f0231009d3d65ffd41aa3a8e1772fb62b4c0e1e4d9a05706484feb87a585e64b791c72802a350e41b61f5c1dd256723ea57ca790302047c435bb5006830660231008f2edfe4d507e69fc15a33d78f53c2ff06372bdd3b15057a8a42020871a8f7e033c863e0ab79b60932e89093adf4cd45023100d72f35373acea8273aa442640a0865c04afc9d7dfa9538407a8fd38f10a27145e55b01723f593732326528231b203dbe0302047c435bb500673065023100ff65da2b4028b4796dcebf41f84483db1e95a47097dab607b6e39e435e09152bebbea649b4d7409c2dc5c6819caa1e300230762b7b14007f11911fa5980579a213b5e133b888e5597b1611158187a8fe808991bbe256f3216244a5746ba0200023700302047c435bb500663064023012ecbce575e8ff15806740d8db60ffbeee832edeabdb1b7054d3a69180ff5c3c3c7bd752a21d5b2ed8621ff30c55d84802307a05420df129e4d5279d58deea1275a7850a4e2caa3e868e3731b9df7592202b078bbff01d19d0c18447226928ba87ef0302047c435bb50066306402302faffc60350fad5f870d6f41d3736749fc64afe04ddb30a952a64ca32f198c7e395fe6a9c2570ad88f2039138e4c0f2702305f8504a521cdc131fe414d37a55a4ae81b194913ad5260cb61dccc85b17d3a4cedc5ec7d1b3a42ea200d805435e026c20302047c435bb500663064023035a61bb7f63907d8e3a5b69fbfc47f75c70ec886ae9128d63166910d3e30a569f858f55e199230fa2dbfde91725145eb023058ae892b2562060d38de14aaa8b3f73f4097c913e7039c28f9d14c87f7b0d3d35d9a3a4540d239f1f6de18be5692fd7d0302047c435bb50066306402305879c31c668eb1dd00a3bb887737b0920e0006a6b4b8455f6901503ece1a0a3b725244e02f218347a71a075e2139e2fe023040406533d5a0f7a97cb11e97de34fc9c0d48c515b4f1867033e5dd0fb71c1a0443509f76dbb9308d4d512b6c03e34dc50302047c435bb500663064023055c2e4a0748ed0e8387561ad1507294568ef46c19bf6e10237ea7184bfec3342c40c5e0578a0cc1b1f87d3a7cf8bcacb02301e99f1efca676fc784e5c6750d1b2de957a6256f0fd72c03579f0352f06977c890c491fab845bde736bda8c8e82dc4650302047c435bb500683066023100bcf22ee5b850bc2ac3887a4011f96db3168117a894962665d95c64871d2c67ccc8357f7f556120eb752a729d72cafcf0023100ee4e69ea5cd9bd49c9fbbbf89ed31ee198838ba0fe41cea2a6d8efa6e3f11d53cfedf50ba8caf403bb48b980358a0f3f0302047c435bb5006630640230773aca49d38524518a395086f73a38a4f1de8a475a057110a09679e5e0da2fcb6e896e07d4ef735588fa9fcec490dd5302307867f3433fe90d0eafaf18de2ba08553a25b4820c8b2083be0acbe9c1a3193ab462325e02044d816f5af3aa72866446a0302047c435bb500673065023100ca62d361499939dea7544bd53c794108030ad055f2afc3b1aeb32a1643d6d9fad07a1cb753e25435105fe3a3ed4e6de6023003d2dd848da5728f0b7cbbe80f93cf40275e1e502b05436c972821725a8c567e6b111821ccce1c8e9eb3fe4032f9a7f90302047c435bb500673065023100a93e92e2a6fa90cfa48e1d8e5c951097a8f59066d7e5a78d689a5c537ed65f615dfc7cf3a019380340430c5097f3668a02302b551fe9988c5af80f69c25b17d48bc5a0d28d2e19d33b7defe365b9ae4aa2c9ba01033948e8dc6c0eb3f467443ce3660302047c435bb50067306502304cd7105be8e5e85b42ac9e0a3f672ea72076d00b7125b4da297cc1ac496164211317acd0b34a3c80bd17860dba24dccb023100b6b618a021072d3a7498d00c06d20adc9bc769d7185595ec6ad26f060daa1cdd66ef5272dd21a7919fd85daba62e43090302047c435bb50067306502305b68e7083e05596aa4f95c4c96f7b682d1f25d5d773f95c26e3bcbfd23daf17a4c4661ed02ca9513445a7380dbb12ebf023100c02a1692ad7e20489e15fded5f2f37bcc025cba6bffbd6d55a4af4e5bc11eea4bb5ce8ba717fe5e5583dc2fd77127eb70302047c435bb500673065023100e658cc8f9ff225294c9f6ce8e781a0cf87d3888d21efce3850d5fef2984147e65bb1851f78f1b7884ce6dd05e1da22a502306f197ef28312af9cfd988f46916bfd38a8c3d33320191c2b4097febec7fd0e6f61051f40ade68b13c4298418d22cc0560302047c435bb500663064023012aa6de304f9ba2d8848adeb5325a15e9ecc3beb34a0f080392777cf7991d4a311e62d5aa80bbcb2c164fb802f420311023064bba60478c759feddf82f47a156148ce40a55ecc52abf97bbf08bc05269405aa716e6d3bde209d7b309b796eb1f4d5f0302047c435bb500663064023050057f60a7445e73a5b881697868c57b8da43c3acd2ec5a277ecd67f00e719cc5ba15de1c66b2c9268a11f2a169110cc023067d101620afd643c5beccef9183c66bd3ce2797cadb843e7d8c5bcb5863dd22672ccfb1bf64a68597ba3bc1b1ded41cf0302047c435bb500683066023100841e0062c3f55a6e35cf61a9108674e264b2b7511930ae30fb0eedec7798c96ada5423166607aec21c45c3cc674ad5d1023100ee47ec6ea9d10556ab433f45b6e4f35716280337f14e1b66a27327b8e896f4f26a30f2f13620467abced2c96cd7e9b1e0302047c435bb500683066023100e6636018117a564d196ebc15ae6d62f828ba17940a6ccb5295a32ea6566cf6c5de993c9d103f920c7cb92944b3c5c8c3023100b0a626f067331dabd6c3e7f9d2cc8e7e74130f56e8f0cb2d3d7f7c7d0101f0246f7602610c6c359de6d4c6922a466e4b0302047c435bb5006730650230412983c8f1811f05dee35ab2976f6dbb588b387f67527e9d0d0d1c7efb26374e43f916bfb6f4ed672ea78da9eb4ee4ae023100d418ca7d84e928d2122e7b61cb0c388809d2a1c67839a7a523084763aff5e83b7a149db6b2b8bd41efccf89003aae45f0302047c435bb500673065023100d59cc0334d46d3daa17b7947203ac3ab1d72053af48050292b7335a58b8d883bf45aba4c4a6f2399ea72c98500dc8cd60230595ea9deddda0776af0823d05917577e81318a06fa3a864b7a79e8cb89576578c58569f57f1a06af6917c2cc9d4016670302047c435bb500673065023100b02dab8fdc7522f1ec7ce2cc58892a103c803ed40e6c1d03c07aa87773bf462de1b7a2b4aae6c98cd4ae6e754600c4f7023077d499f2bb1da5fc312bac526dcd2b1b748a9724fe75a811fe580413bdf49abb6bb2052668a72c5fffaa439e816950d10302047c435bb50066306402301d55eceed06af7acbe06b336f75817f79beed8e233973fdc04195358fbfd4d1962d115229492fc5ff88f1549ac1e4e72023069c77377837da9775f244bfe70c36076e77f69cfe38c73a2c4846019792f0ef37e650c9415dae049dbf3293f7589e93b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f0e5c25a9b97a6c967734c616272603f3761be706695cd1d58b2eee2ff739d9a489162b56052673d00478d75e079e371023100d290db4929ca5a1661f67af17522e70ac912639cf2f1ebb89afe1c8a94e0201610066aea957a12a4071876830a45ed520302047c435bb500663064023030ffcc05f607533b17bebeb4433e7a5bdebb137f9c017cb1166526bc9874d79091e5a66e371bf891f84a027edb7cbc03023062b6f2be824910622a7090d00f330ebbf60ca4397da08a54f91895149800b23cd4c3ec4b230f887e0d5a6c2a65e1e7aa0302047c435bb500673065023046a91040f9a18803c272eb6071193b5e2096f7249eddc8048a248fd756377dfac27bfb2b164d69fa7186a6413f95d622023100d55e1e0ffebe6fa39aa1431f20837d59f8727e7c6623851ed011678afda1e0bdee0da1b4982fed48b5381b3bb9d74c6f0302047c435bb500673065023070104920d6abdde9e6597e7b1232edf47660b0d13691fe49669cde3d73eac4e24998594ba763d86120c39b8a0f5dbcba023100e8d6064ddb665aa5f93a8b703f99e0ba99014c87e35859148625e51f9e6791da7e3bf4c8ec850091726f2d7e41579f2c0302047c435bb50067306502304013ec91a292537c8d5f1f6456e3f0d3f24272d5847b527718c32c24394c48cd41d927ecf3577e9a71efa31439ce972a023100cde35ae591afb1a8f7d7148f0161e9975871f8fa805d53a38d7359e811aed4d61775dc6a69fa727b3b0cbba58e1e44f70302047c435bb50068306602310090bc9b6c013f4bbaec6dc9d3c4047d364fd6c39c997b7091f9979d6446f818edfec93f777e72044e1e40712c283a60ad02310087e139b4f4fe53d1e297701ebb0a32f7f4ca7b80c415cef9cae7032e4dfb722074d554ef01b3903984c421ca9820e48d0302047c435bb500673065023100f7cb991023499c6925af9a2810025038d68f747ecdd5d94257c2dc23ff95f4714070cedc316c5b0d0eb5942952ec460a02302f888831d5e1fc8d7cea562dc4c2af18ccb3d471e17bc7aa8517cc38e1d4e4d7cc28b7f7222c8e20dea08f47debbeda50302047c435bb500673065023041c1095c89c852930e111995b4225ef385bf66f7bae91395b61ba55035732e1ded7fde96de27d705201ac4bfca2ad8a5023100f3c0367dbcc2fdbae002b8296486e0747e8eeea29646702c1d7a0740827c29593fbaa18d639f6566e91bbf0b684dd08e0302047c435bb5006630640230285c649238c0d529cb3b5222e7161c0b4530d9f97012aa622313529843ea2f566d1233042d2806291243a6d619a16b800230339a33c1ea0068c29b32540f0a98971aff464fc675ebd149020fe40ec6c7325541c93cb11a38d22976193b5ec1b4e5d60302047c435bb50067306502310098dfc4a64072be4c68dea8546e692518714a8c1cd9148d592ff20a143dec98034bb37e0df94bd4991eda64dee2bc6464023010b4ed8802571d6a5cf54e8d4ba85e61fd9ba31b260497aa10dcebd751df0cf694ebbe92bd5bda3188d33d0490a22f920302047c435bb500673065023078f65d2313f9b7f1b636168d88d16a5a4f424b1828978017cf9945e0f1de86d3d5ad438ef04660dedb7d1623c3f689cd02310088f9ea8dc623069241aa2497658c00e6c8521e6236380365123cc94453da4eb373e023272e22c4e3dd54cc18adc286630302047c435bb5006730650230467ae0e6935abbbadb9406e398d0847bb79b89502ee357700609b814e1d033ef1672708a4078e8926dec452e3ae524f6023100f7d2d35970d72aabe38b3ff46c4ecb7bb12b61dd4ae0f38160a8e8cfe0709261aa4a501710128c86a00651d6ed6a98ee0302047c435bb50067306502306d034aaa93f076c6f91ee098c8af35b00dfd969f3e81029933b29820e29808aee77bbafacc26b3028b13f8c6af49c1dc023100c7a4b1d92293c27ead16839dd812607ea2dfe06d0d4dc66294ae5ae7404a198318ad95f6306f4a880cc336011f7a3f8d0302047c435bb50067306502302044621cda9781e322394ee2215c39f4a2cca3a62e772eabee4412ab47b4ca57845c09d40cb20ed8a2b8395210338532023100fcff8b88fc1a72c2291589e78aa0a7592e6d5afd4aa45ddc34cf0c1f3f3a093f75d4361ab0def32b81571985ffca94cd0302047c435bb500673065023054a270a9fd26db6d08fe81aa985949091764c5ea22fbbd7cf1fca4f846a7e66682bfeb612a41a323882e25442db74462023100e4633aa3d277751ba10bb4a8c76e211060310811bfdf7fc0576c14ccfc52b26cb3f6677a3171fb714e0b09b5ab36cc860302047c435bb500663064023047b0ae1d26e13845dbef0f296853d0bea54002d1c90b53d2c086f193fbdad7dc999b29b8b9518b8042b8dff5242b848e02304512405e566462187d16672bc6b9385f1a36759ef61a960b9825b1308f41d6d4e0032496a68ec1aefa54a143d322fcaa0302047c435bb500673065023100ee1d224e7076e4b4373d7b7260c30270aa2db0794acee944b90858e181d319d449dfc9ef8d1c642c3cacee65a1e4d71502304d7d51ca1a88cbcab7ee26d2c0c1a0bf5f21e57d2ae050d0b12a4981933f46e52e11bf76dccf9b7cc6ef898cf4994eeb0302047c435bb500673065023050a9e3e1766c8e3423a5fcffc3372b360738d091813524e3d2ad9fa2cdce2e07681467c242c04a218c7d02a31267b2ed023100bfce23f0bb1682f7795ad5d5ae0a08516f1a5fdcb87cd4474cb9ac28a0bfb4ff7ba6e5fd7e763e63a0fdb0f4accd1ada0302047c435bb50067306502310085ec76b0d0b0eb89c60e2c8677be99fa1bfa1499f1edf642845c956914488f215c9c443b3fc0402687c38f81de9e0eb902304ef63cad2dbcf9bb2d8dbc02101d111a0eaf69d1144971705615dc8b356aeca5149617beb526e26e2d5fc6fcad679c260302047c435bb500673065023022e39a9e8ee56b14434134e94ae855545ec2549b61b3234817cbdd2000945a9cf71416ac263bd9ca76f2165da410da09023100b05410307c3cf5ef39471ebb5e2facad4cebd69462c20564e80c4f8b5a8307a14328169d61484b633ef86fc3ce37ee700302047c435bb500683066023100d3230f8d23529cdab517578e156acb37202aa963ee4c56c7cac346ed6015a9345d61156a9726169d551ffa7d8ed96c4f023100b798f87cbec27ab884e3b5463d24002fdf2c58ff82cbe07b2eb179af9c1c220f8137cf7c232bd25685cc9216b859958e0302047c435bb500673065023028021b08f4e38cb2bcc4743997cc029d40e635d31fae63a6565222c71dc14706c993a1ed384d5e6e546f91477b15bd33023100a53c1b217bd04d5f8f7e54cc5acfc73cf623023879f3cb912b3628ba9a3087986f48b6eca0c322d5747c05cc8eba512b0302047c435bb50068306602310082b759261098f39453c41117c41f049884f3c405ad2953f0226bf24f82427358217a447c375fabd032009942bda73782023100d54890fac114b47211372f1bbbba8ef0960648f2b9fe68105c0ab2e30bb60ade20907786b0e5011d2cf9bac31a8a91ba0302047c435bb500673065023046b5c58eb5bd59cab06bfea38775d26d9864ad76ac804a40cb267a8a67719e13b8f1dc5ae837c06cf4909f025db0c5530231009673cf86c7dc048c77e6747ef8a3445c66d8f53f1e6eca4b63067ef48da2d887052ba2b7e979593b6130e3cf470318b10302047c435bb50066306402306bcaf7e378c5f50463ad253067be98dbd5089868f6511099acaf7f7d5dd76a2df7ac4175996cd0d71c8f390b1cd668d402306b6611a145e4a6e77f4a038fabdf4e838f0aab3f285b6dc33cb001292a3d3bea2191fc6b459eed6287ed9dbf56a898f00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023026eb2d788e358c0eef2b32cf8ef536079e294ae3b834f25dfb73ee72b8de2e3ae45a9459d20ca82ea515637e409cd87e0231009b5e0fe956a71d78d6373041ebaf206f7d3d35a82ecb08e38a37e8a9110843516d89f06928317d38fdc1c5bd431045d30302047c435bb500683066023100ea3fc4a83dbfadc1941fc0e06da51b0898834f99ba57593e10e386455e97e0030e3b93b11f28c90feb6bfcee78b7485b0231008eb1055c519c0619287a35fba6b35b1bd93a61bd9565bb889ee88055c720ad39f91a682d0004316e320373195c7c8bea0302047c435bb500673065023100b75330e724cb3c6f8f1e8de5be5fdd18cab1d31463c095ddd184de11bd3fc7047ebbbdbc12d98668414bc0e2b039f797023072a98f8b6ea3dad278a0a17bd66a2d3945e91e44e0438ad15da2ff696636955d8a92d49d60bfe564a15b25b9c81eab1d0302047c435bb50067306502305353d0ed55d1fdf738195a05d75db5fb7bf20d4503d7a1b26d59d9dd7059952c2f7374021788a093b2166023ce5958d4023100f2ff741cf7af2cec3222f7c0241f54c6b3f93a81f42a305746b9c23c0cb25d08f273d75ac9b7f810d875a66a74fabae50302047c435bb5006630640230632a8830cb45b8af9e591731954b6fa6ae8ce54e35a5d46a06e3769266596e345acdff24e930501536b061b380d10ed4023071f5591454429268dc60f899d82c7473fcea43af673728e956067cdd7525c0d8496cd678ec4cb3169a24487c29c7bcbf0302047c435bb500683066023100cbc70177fb47996f583069a5c03da5ed78358f4ee91c0c44ba0f1b19c3a6ddded4cbb74070c0eaac7e200f0ce26a641d023100b4bda15174dfcfaa0f0dfca5c41a65fc59fb8f42da031764672d8bcbf68f1b058fb5da7fd0887c2ee7ce75a4252d156e0302047c435bb50066306402304b3d3b2de42c83038f298a912b7803f51480d132db9451e1e339fc3d0a2b53b18d8c835af10940b48fffa24ac7d4607802307a547ba4f95349d8d864c8b0f49a2c25e54c63601ad38a528012fff9ae9a4781f3db35476fd8f82f30ccaedc017af9060302047c435bb5006730650230304beb5888c5a377d90f9e3c351a7b7115b5b18c20dfda19440440dba634aa03afacbe49902ea22ab383f41dfd7002cd023100999f7f84b9ed2f8dbea5b98b08e04c1b1ff1e3a2b05bd37f45a619f5f14e6925f1290cfa2e648a5b4047a02de4d20bb00302047c435bb500683066023100cc405f8b5df88b7b46a254f400458c7aa6dfaaa14584c498d1e7debd63b6f78ae10b676005380b0566605f4d96679d89023100cec7f33719cc5a961435cf0100ca77d24284b3f1c66bf18c16a536efdb496890d6d725faba26fdd3c2e4c65f2f9f54350302047c435bb50067306502307ff9a7f77628e72301c54e67099342ce2b23b48a7eaf48f077c0f6d39032a2da26aec49e67799e7cf8debc5c8b7f4e17023100d66151a6b0428e56423dce32fdbf40a685acc2839c6ff5dab49910c09689700c402fd1e7eff94e0b769229838518ef440302047c435bb5006730650231008f8bd8304780182d637748c4af3944e2754c82d798daac6773b7d047b2202611738f5cba911b2aab3f1cd79d7c9d0a6902307a567f07476149c5ac3e564d1b034e64eae32bba93378a6ae0c9fe1f91607da7fb844be9d0ebc733a09543bff340b5150302047c435bb500673065023059e98afd051b4963929747d32e6d6b5583e998b9f05e6ae80c9c8caef582306612b0736d85408a4293c1435d8d7e1af4023100903ce4d768ae35eb3eb11e6dee6afe8abd6c1e9ea118f4725e8a025f3ce802917aaea25a505aaf591f7fb822af68a4d30302047c435bb5006630640230673ee1759621a2fe34db47b9903ae3e1e78881a14be777f7a73542bf8de76f825c5b348791096f5adc455a0ee2d35168023008d02c7b09ee183fee3ae8a372c8e1a97c7d4e790fb4eaf58d1c35801585d8c8cc7dbb62ae058fa685de1d7844a82cbd0302047c435bb500673065023100d83a4b22f47c3ec2af4d776a3494a55c45a58851547b384fbc5dc9ee6c642f1ea8379b4f00a879c4e87a86e839849459023065080299f245428526319f344bd5cecb2768414bd670d957291d26e14814707e663020898eac94dbe68eeba5b73e4f0a0302047c435bb50067306502307462c8bf566fe7e3a91384e5f4f994b4085a9cc19c616913a10b8e02bb6f44ce49c541cb9b435d08f8fedc7fca8c6d9d023100f8047d4f8444fa4ee92630d6c85ef3621688d3b79c8d0698885ca9690f22144426db55a8930a30b5996e79b2151924440302047c435bb50067306502304b4ff28e35d4f893e06a76255138357919920d3672e46670d3ac5b988e61d75ae14ead84406b6b0235022c86846c24160231008e4db1f354ed5236d52fb28328316cde9b6493261f535f9519c4caccc4ac29864f1464f300c2dc02f015fce43ca863fb0302047c435bb500673065023100c92228742f0082f0d4155851c097b4776dfcb79cadb04990bb8d8994aceed157de43c9878d9492d067c5facd5234b87a02307080c0d6bb053ca68c053172447a8c73f4f6d2c9e70baacad7433c7a963a0ad526eb71c58a4ef8ee320c160b48b7441d0302047c435bb5006730650230799dfe4809c16680de4ba9fc861f2e3752fcef20d1ca4eaec2e94acecfdd11d17079ec0a524db683cc2ab144728f8f51023100c4f93ec9bd306a9e02d6fa191bb9ccd3822437147e5b8b96703ba10f7876533d6ac517749f6790e379749bfd704129b20302047c435bb500673065023100cdfed715ed90d6ac27d3586d46c29906a41b2624f68d44834ec6fd44224140539b63d39bc83ccbe14d2c75039c1abe1e0230119e568715195af537aded284f87ef910d3b78a21cddc51b14659828e2acac10e71944e53e44e7751f30d64af10f7c460302047c435bb500673065023100aeb918b63a9faaf7d3dc8e2469c61f8c20c8f723ae2c2615269585f283fbd0f794ed215f9f8ea6105c6e1b010cd9737c0230355a9c3ec42d95acc9dc433979a35dd6a8c9f1f54a36b3f36688b8b8e1ba74d11fc124a63e91d66d70cc6c0ed42fc6080302047c435bb50066306402303e5e26ae954aa60eefca9bb51382f528dcda50d6cf79c13d4e35abfe47a5b295591e64e35b805aa022e741704878801d02307ed7a414c619fbab8e23c59a6d4052a594caa9dc1f30c75d1e06b0972027ce6f1261071c8ae3350741daae5740ddf2ed0302047c435bb50066306402303120c4b45c58cd6d8e2b7bfe6ede86ae18fc594079268dc39bf5cbf79b1a2cf0b518bf017ad0946111a1cf6fde6bab200230487303726ef4eeba0c5e5f48ff40394269e2d23fb279a76c00b7ad5c206b424d288237ba3cdd37aad6c96373c045f6210302047c435bb500673065023100ceec1753f84feccab8d0ceccabe47be8ca144637f8a9326110670ae520baf64583aca3262d7b68700281567f6821c9db023049c0405c2bed30c5d56018ed6092a9b84d63aee9db21ed5e2140fe4777b9d9e54ac883e97c7ed571a74c9deaef249a6f0302047c435bb500673065023100eec8608988277d8cec1c4c13a329c0a40397f5fa7d9ce32aae1ae8db954e7854a7d0a3f9e0e18b8288a3074b072c9b9b023060125d51ed687cdf6c3d753d1f45000ad2fe5f951d3a73e6292facc028d6d86db6d701e5f8bafa54f5db31ec2178ea770302047c435bb5006630640230763904b955e1026ce3945665359d62ca3e8a1c37d59a5916aab84bdd88f3613cec6c54031e9a8c937a11d47050bdb05e02305582f878d32969321da46c95d6b752bf692421b427cd6a30a8896d0a763636a9ca26e76b296ae75a0bd391645fac22470302047c435bb50067306502310098c9f8d619325d209d5e777795dbf28284076c8fa7cf4fcd705ca6bce3660a49d5417348652c701cc67e77faa0a9145602300d37f93aa05f6ea4eb4b6e62d3a32d4b8e47d3166dc0ca31027e58b7eb384bfe57da6265c0f0b25c73058a466546ece20302047c435bb50067306502300941f5805d3ead2b1b84479aebd6e4717756b52317c154dcd7a4aaa0bec05f9bcfbc0e37eccd9717a4747e59c38a8529023100d05fc0069af2cc73eb5bd1b97cb0e796cbb393850b4c31021f9999343c76c6071cb993f49affe14998f4dd7006d19d190302047c435bb5006730650230759fdaca91c626f65532a884f32e0f429f0ba080a4dd8f74028abfef7c0aee592dbcfbfa9f5482e18f12e0aede302fb9023100b31aed62879b4f3071e17e597a2013aa04f70d8c5b84df4421d9e61b4945b73ae7cab21d154c640631172266719651b60302047c435bb50066306402306fc2792f70bac9977a4e9cbf3918dc1b5bf297e42424949200792b997adc0ba69047ead5cd2955406e245da6be7fa501023048d3b02740d693cb8a2735af6f6dc145f59ff3a51efafeedf01755c040ddb9b0af653bedeee256c802a82d806cdb450e0302047c435bb50067306502301cc8ac6d907e719561e297b7a139943dfcb8fbdffb423bfe37f3931d86ac226367cbfa52736e2c3164a4353e85a7c0680231008f8f1142f1b7606b163733e1eee119965efb7548a17e7a252bcb71f67efa562d8410ab8155716ea9ad4544f11b7e867d0302047c435bb500673065023100b491babaea19ad24b1fc885dd9eda6776e7ecfbdc04954717cb1757d95bb8666b99a6676d2bf74f0856a51e5bf7fc1fe0230618081777a1852c98218a1779f66627b79251612c689bb2e9f9cc1526acde723aa8eada9f05c162f131911eae46254130302047c435bb50067306502310086cc4ea1ab43ba98977d825c1b727d4594e327a86a680a5f0a7519444122229731233d90f3485d5fc8e7e67f199cdd890230411c5fd389306fbaa1aabc1ddd447c9f9bedef9c4b6078b5c5b2d6abea052fb9c397abd3e0988dea2a95b1bfee0ed6b30302047c435bb5006830660231008af6e2df74afc3fecbb8c61888d7a08a605f04c49524faf42b6b6cf387a3e29535420290549b63d64a870aa4155e9168023100f199fccc171f27c0d479624159bfa5180df55091edb89ed6625c7910a6ae1205009d9b21197298edd64773eca881e5040302047c435bb500683066023100adb5646808ea33bbb83a5a4d48d574ad7467cccb4242ed6eea0e507f45a72bd72a895300dbcdf8560d7a6eb888048363023100af32e78f9eab1f3be3f6319c1f6a65e93b1e15634a5119b7dac67e7842d940a34d17f6fb2a47eb04e5159277818d05410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300a6590dc4cfb2753c315a698fe820527f59032b5fcd99c8c9a5dff8b65029bc55c2653244359bfcf61234ae9eda295e902307173210f9db97f1e6dd8fea392cb510cd870f590a0245a43bb48d4a62c0d8113e7b1f50a58471461fee2f9edbd886a200302047c435bb50066306402306c4022319c42b291d1c4db80f85ac7fe1021ea7bb31112af7ca5c94f66ab1e3c13bb8bfaff888b6069b357de0e860488023037170fa49da606379acc738a052d54298a55f8b4929a24fc47d07a7c91a3393c6bfaf832c52b189feff2a2c07332e8230302047c435bb500683066023100dc1b24a5cf954834233cd20cb48c59dcf369641bdef24dc51c5665a1e381ed1ba834f34dc8e9b23791f1547eaa44db17023100e34dd48e3d743be21e074c109046dba9c96deebad19ab2f7eea87348c95d4427957413583689f92a709557d8a97d30df0302047c435bb50066306402300b91ed73a1d31792b2cd7e9eb54057e8385b5869ded95391194215ae453335ff69dc9be2de36f1e186ebfaa4c80356c502300ee1b2c6ff5a070d065ff9d64779f7351d4e5c9e934c95aa6bf82c60663f5e897de78283b5ea5c254190ae6fd8f80b8f0302047c435bb50066306402302da2ba94e827673df9767f8dd56d15974254373bf97d6a8b054cb1071e6d439ab619d13625d745a8111771950bc9514a02300e50ebc042e4f8dd8d0d51f48a907e7af0024d2ce477205f18b0366b87f9e5540a0eedc95d5f8825514e11b2b57685a80302047c435bb50066306402300276bf776e160c27dbbb0457d580a4e5a8e7e53579cf8ad08530e7eaa67f1e8a5a781041349b41f6db2203f4b75d9c76023038f230c4f20a0797fd0f7ce58cc81e54ccdf7591c0e2f0eb4dde01ef0b20142dc62dc118784eb298885fe594e873f6d00302047c435bb5006730650230012926500c948b98a67d2679e5bfed975de9dc81e5669b9a7ee5fe683fc74cd341ccc87827e5130a92056ff4af402a03023100c104aa55b92d19a3db0d84cc9e400f60a19667090c3cd47aa38190e56b3420ee9bc2b6cc56f55146633887fc0a89eb060302047c435bb50066306402302786cd13804257d912ba3fdf51c8c7d0e332d5badf560abc911c28adacf991376eb293f8f9b30d1a710ea795a6363478023051af4e36b939a25fea75cf10b264c693e3d1a821cdedc48701fa4b5dc37ec1e4546fe54f54269572b6e4d341e3416d1e0302047c435bb5006730650231008dc28ba2f00a52a7995fe599a694a5af6ef92bba1d16ea9d0a251064455c9dc09e4c6c6e9663205d7b894438864aef82023025201416481ec85005d55af55e789d6cdf08e25d3ae8bfa11596ab32ce20f9e294cfd4a9bc4465b294edf61bd408e6940302047c435bb50066306402306445adf10a8bbc31501e2cc00429e0b68b56567c5c4b0da7a10bdb01cefd32c1f58e62a7b98faca83a47746b2149b13c02302900aaf384bce52cc5fdacb8abcaa91ea2f33d6c91b9f424084c9a49c19f7f56f9a337bae0a2ce643623043b3a473d2c0302047c435bb500673065023025b8a90f5d4ba25eb29cc718f62d1311afff4257fd99e68d9c54193b02763854e06936b2bd8494689256ae1819e420e4023100949abb2632407f30f8807d2497d081fb02dd69f2ca6c759ac4591ba2511587faea9349e23baac9cd7b5bcbf127d136930302047c435bb500683066023100c92c9565e21ba3041f7449f6adac4ad28980133799b39193c2d22c5236ad51683bf4aa2e67b7256fd00cc7a0afe4e0f60231008a080dae8f0ad1636e9991c859fdb158d3698bdcace484c39cd2db7f40930977dae5e9bb8de366cd4922b8f62c7ace980302047c435bb5006730650230185a01c34e34db21308d64f94be75b54f78d6ab21a243b1fbd557b2d17fc10551bbc2e6a5858f9eff178daf1e6afebb4023100b76567f058941908dab81c16377e2d1f6a04f40a7e6a4e70935995e6a1fc5751f405369b1c76c0d93f5bab578303c9e50302047c435bb50066306402302fdbafd6489e0a99e19d5d5f3a66e85132ee1859f33077ab2958d195f97ce58f85dcaeb22a266dfc673bccb57015805b023072887b16143566e3bb58983c3ed49ccb5e32e17d461b77840c1e430c10421bedcbc5f35c84c518d2667c7c03a2d91b970302047c435bb5006730650230650a83c0bd9c461bdd697cbe381f5dec21275a15806f26ef279ef64b23bcceffc117680e660401cdd183a90a899c0327023100c47975ae1d6c5acada345532ac35112c51f595cf19f836ce38f9b7bccec92721814e0b82ca268490d22b9dd5af7f4b120302047c435bb500673065023079986b4a6be64b41da76994a08b764d1ca388b93e4b2afe0c2198d424a2cb7204f644d00633471253f1c63800af1ccab023100fde7c9e5ec618379e0cf93a2fdd26a2ccc68328125253d55d1416bf9783cf7b8e3907244aed8df3dc769fe9a78d159920302047c435bb500683066023100b7ef126326ea39f2624c553b36195abbb1b381f4376706c62443dc5b9b3a6fb3e9562480bbe6afc9c8426a1fe4ebaf1e023100a07ae460cd1348127d812d27e19c61f892305db1e318d6f1bd7eb4c8fc52fdd921378464c2787283559d6481e0f3ea7c0302047c435bb500673065023100aa6365c3dd2df6d2ec66a7d5aa4792073776640e9a16a84fd1908755a57846dbec7f3d9f1ae6235cfb1369920da20d220230110b9a3f2f83da1f994fc70e8ab0faa771952986fb095757b8dad62569c88d03cb23234b3bc025241424abf5cd2d88100302047c435bb5006630640230509a61433a4826cf59de8188481b5aeb6c10217d48dd0627f01842ebed893b2c992527cea4215d341e447010d499407a02306c3b6cb2dbef74a16c9c66999c354b35d12e934e5cc5c08161db49f33a687f22989e4f5f8e3fbe3b7c22204b5bf698fd0302047c435bb5006730650231009c0b0f956b5d2203f152e75c332603e8d3688c1933b9182adf727d579cb9fc745f533684ffe0a496f9f50328869ea87002304f3713e1bdef2f2b572d344cbd0c3567cfb86dd1088e14cf3e596db10f84faab38aec26549033c7263953407fbacb26d0302047c435bb5006730650231009a479bf1a4ad2a14fafa6071c75d6695be452613ce49e2f0f4122a8271665fcf7c6c81f087e62d03c7cb0c014d9f4e1e02303d46fa6b5688740724ad8601c4c8f59921fa9e70a47a09a55970c2778cccb554bca1ea82ea6f88105482037796a9534d0302047c435bb5006730650231008549822fa273f7521d05d82978d42ef9b71b884628ff1df261242c22c920732e76f9444ac09b4ae565b4802c3b1b1b5e02307aa10b547f8b3f5ff03bd9e5e1bf61ca15f2031902348910fd79ca9f3aa05f72f280ad24c68897ed2dbdb465457bf19d0302047c435bb500673065023032d136fe0b9ffa28ae61a79eb0d1daf36bc914bf0def6cd0a2b149ef5d49f743c3301c5ad10e36188fa2bd5d4e4b02d4023100907c560db8cb44bff2720632c9502e17d9bd032cd574e2ad1f6b299fcaf42b3f1dbacf31ba7f4d104ab97d51f49407dd0302047c435bb500673065023100cba2e80ae6843ee89ccf3825c062ccd1849eb7389f459d293a001719c351058933b9baebda71c3c44537b5817608a822023067cc29ad382199a51b64e3592d83fb154e60d54d811b3a0c7936ded07ac7c7d3cc7d9f3006bbdc6baa52c9697d3ce4960302047c435bb50066306402304385fa3c324d3e1eb1ec7f340932b9cf7acb048e0704f1fb1d2c4b36c02e55dd705ff906d1448419e1f75fa056b81ce10230044d3a5017c1117212b4f3c3c6a1d366ceef4754c27942d30c87992ab44300c05ea5a0b03ea12ae58f8f5d2f2f7158030302047c435bb50066306402307391b61e6c81210d617bedc7f522b7dbe8f6dccc42d51f7530fb4ef3434b641071cc673a3425912e54c59dea0088a4e4023031bebd683564291475c4fe7828d2b8f3c52854f1154d86bbb58d50f47a783608b6e999f49fa3b70c4b136224910eda180302047c435bb500683066023100ea182f4b34251546bc5c677a1fca308a4e39a375656905f2c1431e136b24f2b17ba191ac869af054c6c300af48c9e1b0023100b1e353169eb5e8bddca8bec9db623af05a6ff8b3a34a6818862f89bd840ca4e4bd209fa125d447cdc1d0e9b8894df7270302047c435bb500673065023038a0c2bc21a9b9a2a20944a082cb02fa3d26e3be3dc56ee930fae52f6fcee04a5db9ff65eb82addef852929cc16b8d9a0231009422e631e574c1b08899fd6e1cd643b2aeec195713573887a127e0e0dba31f5dac7559d91e9e4cfe3bb5d6f13e3358890302047c435bb500683066023100cadb658410df8891c4e36382178069ae0bab57f2d0a599611138fc36f065c439775a16d52aa16446cfbf3d72416f095f023100b163b0d3866ba0ec4df562fefb971fea99fb4f509f269087c632d2efebb00946a69f8268b27c4e57cd5741667f11cc570302047c435bb50066306402301d9c4117a8bcd63a9783072f72bbfaa4ee57cbf3b22b1d77f3ceb4d849ed1183bc280e4776d0901ede04733ded84c7c20230271b0148bde4fb5a4fd8589805acc2ea9188ffc70ae8281553769a6b650b5c259fd6dd5c8b05c745857734365d9c76f90302047c435bb50067306502306f5e61c4070b17e1792e522e750c7c924da5995d24990e365e3e330b723fc8c3a2dd0904f6c129113788e9539fb9e16d023100a29e9a8395a440a71592e30159a7f051d4dd7c0d3afff403119958a6c2a92fc8606ef6c8a7ac85a9eb18c9f26ac843a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e5f6793c0a90f58deda378102c3f592f1e82f7525b4c82773df718e2a24a17d0f03ffe564c827e8017685ac5fe85202b023010c7e2dff1eef5d00cfb70a302782095c7b47f2eaac9f1d824d09f8d082cbf129c04cd626f829886c9a08d4f1098d4dd0302047c435bb50067306502303040a5f4f2f3a1b40417e0f694238dd1d3930fbcddad2a21bd9c68775c708fcf496b3fcc5f1e9ba8c304c702084a16cf023100f49b64297d6de9dc7f70be666d181f417bf4461c0d3490ee9f42807afb9917a028665177a109d70d21db7b2a510c5b100302047c435bb500663064023002540629024e280f52d2d00b58a20ceb7f6e5c1121a7caafac7bcf182f6804788f18f7c9d929bc07161d3e86ad2e918b02303630b92361f5b46591db600370239563eeb19b80570d80d652579ceb6e509ea602c00eedaf47b5d1999ef04f8770269d0302047c435bb500683066023100a937782103ba499283ec3336e93c8ac7a8dd9d0c8b6780315413f9cca66d3b0c3953ff7500a9f1852e68e7dacd0949150231008da3314a229665bc21dfad6374f4c384b8015aaa4c6e2b4cb7b0957a3ff3b68fd4e9c43afbb53fa728fb81d52a4ef4b30302047c435bb500663064023017bdc0bf120ed34ac520fb2d66215bb26808fd3209b771abe00402ca481cb4b942c05d516535b62e2d0f65edb9227e910230040de3b330bd55384918b447cca149d94c5a2b5be0d57f1d1892a6c33e62eb5d4708a652c1a59244d444f4f40d7630220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310090474c243833051f62270fca6df1db45aa7568811350938d34c029a6211d92df356b7f121ac9463a50edadf7c4ec4be202310095cc8debc9dbb6ed160e25bcd9ace4c5146d261ae0ca10c0019d43430cec3859ae12bdb73533de3c4195600ddb53d1ee0302047c435bb500683066023100bc4c5b2ccbee8f0476cea17628f988545c07598c8a1a9b80ec00bb2b623a1174e7799568595e7e8bc6ba3a3b286c9040023100837424ad32a587890f0e0fbf6ed67866757d1fa26affb40c5896dcd2244e11355c1b86c0f9511070568f05588103c2130302047c435bb500683066023100ba2a3a8e23895e32c1df1d1eb7182cf5011b8b67905fc07039f00ad7a3b34714dcc8ddaf17b30d2e2499c117e45175bc023100a1660311317ee135bc3220b46a1fa7b19f0b7476268f48932de45d87c1531ba190e692540364766c5fdbc5f5d70e6ce70302047c435bb500673065023075d5cccc3c22fc949a519401003147c5fde258609390c417318cbbe3c190b5be91364c159ed22cac821704dc7c53788d023100a746d9627048b23399c0e8046acd687efbadaf9da10f45ab20422e5fd6721bc4997e6f90da46182ea1c549d8ec141f390302047c435bb500673065023100bf50694086b7ee20d09fdbcfc5e7b3e781913b8baf4cea9b23cdf505756585dd3a702f4641ca84f04471f657792f8cb5023056e4783f4eab6b9078ffeeba5596d1002f5aba042ad48a5b7cace203815f3fee4c528909f4214bd98a590e85644499ce0302047c435bb50067306502301c70cab77542e8b74a840c088fcb9d24bdfb316a6c117c406329be1fedd81e6f199196795f27b21613f995c59c948562023100f62214a5a52f4cce677598c10c62ed8fcf62b130be8f7bc58dc9b07a83bc2e5c80ff03326c08657a10449e4583e9c4320302047c435bb500673065023100cd741744840055411a4b66076001d1a4e2b55ebf5b602b461404aa7a9f668d0c73470fd77069c64a6ef49bc7847eded90230381d938470b8a6abfa31daa619561a6e09c25a0fa9e98408ea675772fa2935a752aab18abca497fdb7deb1b401e1cc1f0302047c435bb500663064023032d147d9ddb2701020115965ac8eb96c9d5776aa8c63793cbb5ae1344c10d7702a40f7cea1a6043dddea62759513d98e02302a6cb73fa98b4990c4c1174b9ca5458af8ca0c4b705517353eb7350ea82ff0e561dcab1e2a04d9c95318aa35b2eb61510302047c435bb50067306502303a75532d22a1ec37d194f2d62824a407eb5c07d2ca816a919fc0ff8368832559ac7df64a5f219753117c99a24764ae3c023100f6d2f0f5f936fa6f25467033ac18a0323d5769fe9c72e3e9ee9c24ca71ac85ef59946bab89574d8b9ae08ac4a4fbc5e90302047c435bb500673065023100ebf75afc68dc16fc939252e4b02f53b0bf09b3686139081e8cfd1f3f6464151e141cc07bc75523cfd31a35d0e730ccfb02302022877431cc7d405fc0abc19a2c9bd58b9a08bb228ef01668776065541bc111dfb57ec89c504f37f8090434934dab170302047c435bb50067306502306557453e6f10798ebdc92781da8ea8edb3139b9e77016d40e515b0474e1a0171317ae2b2db53126d4963e68a613824fb023100d8af05b291c811f108a0d6a11eff3edaf6830a67b295fe0a3c11d16eaa994376a9e9ec9b324398d992e7d9e90af082480302047c435bb50066306402304c888cb5b861b4e3e4a36ed2593e9290f18a2bd12db5b46b4fe7ecbc3a72fe722d94ac7c81c7fe4369bd447f6f70839302307a9f24f1ab4b90a994ea334f7f96eb99bf0279f0a3785afe458cd641d6a40e17e39eb55367c0686ed1bc76e5fcd904f10302047c435bb500673065023057aeb74526d52c63e26bd76668b88e10f103ad0d7c1a297b8befe747cc689c121adac54ef561c04fb8335f8fbdb95cf2023100b880b0d4c7626244901766246e679abc9fa8ba60fcb7cb2fb341ec776fc860f07909a846a982f07507269aea35f132910302047c435bb500673065023100f1161a04369169d75d39c8d78df54851f50281cfbc9e74605a1c1bdd19b77e5b7fa039945573a8380b1597ad62c63f5902303ed14a0d280ea803b690b504c562c6508ff1265dfbbed01c07fff8ba0a87e3185caf2abbdb1feb4c4ce0d4025512c3f00302047c435bb500683066023100d6a6c0e96ba60e65c1374ec131929f26c920efbd7b0b8dc951109b8beb0f0701b9fb5419ff42c6b66c26c234c34c0368023100b845821518dcd77060bd49b0611149daccaabe2d56019d84641180c7d6f075cf518a80680d9365e376b07e9d384201310302047c435bb50066306402305d61626ed8bf766e9cc5be751aa315dd73a080647992f3043a7fd2b3a4cca82f932d28ebe3ebdbdec843d1dc8e18d28402303e59cdb9cc6545a2dc6537d7e57b84ee7e879011b3d61ef2727a146c4f33a10744c2a9f0c7fc95b3f29d06f204cb08e00302047c435bb50067306502304ed2128287f6e4cbc6e960fd147be1858d48865117c272abfa02c50eec3485fb9db6aa5a7eeaa3264118052383fe608e023100942c096f17a4a9c5609cab67060d256723e5166c95cf18531e93c57f1345bfb799c06abd9b6a3f6890b8ef524c7ed90e0302047c435bb50068306602310087b726cb39fa7488b1bed82b8eaeb3c98b8cd8f7e2e15dedf90471ddfbd805aa30a93f2bba3d9db4c114ba81cd6a35c1023100e203b5531753210871bc4f0f69327bdf47fa63ffa52f244096a6ae23ccc9c169ab67470678637aa525600287a0aef8090302047c435bb50066306402306ae37b4ebdae50ff2951c53273ae8b78c262953b3f3d6ca8e7dc54146adcb5b89e2899bcdf190cc8f68c3f541025472002306bb4bc234e1135e253a3abcf9c9c0a77b01e0b316ffb8ee50392350219f72f6ed914520f9ee317d7ff3cbb12dd68c3750302047c435bb500683066023100f0c0867bb7b0d5735ea6da495531263c4d2bbb00c4f59243972cfbedecc86b1c5a8fd6e87a06048d11fe55f1aa5376bb023100f8f94022d53f1fa02e80fa0e87f6e45194f5561712a26d27806cb92a1d6ef17068d862639a87204138fd7f339c0575130302047c435bb5006730650230425d902cb6bc79dc891773ba6b32cda3715a7fc5349abed17c0a095753229e0c1494d9940c756f2ce3793efe1b016883023100e0a05c0952cee437df3fc7247f2a573183c2171d369c3bcfa952b7328cdad7f14d61a5ea2179acabd0bec39678e373960302047c435bb50066306402302465989981a15731b0043e467c0c0f541be8c58e571f6b974a75a863845bd4db2b403d55f3a1f4a1bdb411faff69d94a023077b71eda1ab7b8e3bbf7b33d6bc53d4f53b7d8819b0c6ca5ab0819f237ed9c4c3fae24d5cd8a3fa403b1b0617cbaa7e10302047c435bb50066306402302188880e3037ee821223313bd5b55a6d2eb2ffc0cf80a1399060f0d65f4c84b98fa97052d3fa1433865dfd83b05dda6d023043d0d216dbaf07350365bf3fb4f07bfe36782395eb6b292dc885c405f18b3ca72e44ac43c6e43ad33c0c47d8d03b2dd20302047c435bb50067306502307f67cfa76100e46a396e0ded1e1deafac5fbcc3d3c635145621ae062dec92ba32969251fe0ae17e127a1c1e48b582f88023100c307f7c58df4d1fe537a491871b1b6255b6df77b647bbd7eacfe26742ba21c89242dfb5cf6cda21834e6f1e208de56210302047c435bb5006730650230713ae29e7b2b88873d30dfb8b64ebffcfe33af0b8972f401f286ed070de52a6cc0d11ad72600836a0c339dd36c439021023100cdd093c9363e4702b8f30286160c4341f2686751d79c3a99a1bead2d431cad4d3964faa33b69592380c8c6759d0023590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304c5ce499363ac00785dfb38a552b7b2a741f5ba87950563dd063d6a9e5be5afe512eb3850a30d936ecddacc9203ee66a023026edc3bdfed965c55c3f86dbfdb83a2ab2097a84d3da2c4684a1bf7364a09b0ebf1f7cef1d7a96ca68dc6371e5d9b8020302047c435bb50067306502305b5bbe7f546b8a2bf3e49542ac4438265937ed33e70a33adefef4c3427fff23d31c43dfcf7424de0eb7c52083dde8ef0023100b17673eb0fd435214d1eff0410231abe3b2c38f8f0f4cadc28f10d47e7799895e0519eae171c48e3efa58c7c8794aea60302047c435bb500683066023100d6d921a7776d8e0071e3202343e8ed2a66f112178b178c85501d1d1cefd8c5ce480b45c0c97909cef7be2bc7e9ba11d4023100b3669869736e9ab440cfd8531996c5e940464ba6a41a3f99ac839bcec5501f72f902ea8ace0f69414781b2998689bbeb0302047c435bb50068306602310096ae2650395eb23bd1d0221f9f5d50e6cd18f1a708fc1ea3a556b8c56e272c1e4245495bd7fd0e94cf31ceb760554e1a023100dc9d80939197036482ca7f521aa9255a9dd2995f7149236e7ff7cb8a69fbf13402336d859e7a1e52609ce712cacc5e7e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304a91fe6685888ec3eda769ab2925758fcc771d5b6b70fd49628e398733a0d1a7bc531b0e86fe7eda9410e472c0bbc0f1023100850d05487c12b07d87d8cf6385b7d6a5c8b221d81715bf1a8e619479dea4f381b4024ebf3973cbbb4783c4f5043d36bb0302047c435bb50068306602310087db9fad95b6bd3d267aad7e9a4f46e9fa61b35755a5f561d8fd19707a853b72965e58dfd2fd43c22ca9310f4d495f50023100aaffdf4beb32cddb30fe394fcfb23e6b788434da24341026983ff334883130825d6376ba8285c438707130d5fd88585d0302047c435bb50066306402303aa00195d2b33dfec9f4cbfc6d45dbf8344485fb7f91d09327f69fef1dfcf6ac3e15f34dd69553445b35dab1ea64a0c30230370d172d3be62caf081f2fc943070cc48581dc682bcc183c0e2d1fadb05af4008ba22771b00fc34bcc6209b68b33b5780302047c435bb500673065023005a9d2560ded88bfee66b90ffb51e61fc5931940bcf974fd161202090d66e00f4e9f6e66af56ab7fe5c8389798e5fc7e023100ade914e856ea125404aef0b33e66b76ef93cd74362f65b64b6da646dea4440facaa56ccee2118f2c4a33d74a27f9a7ed0302047c435bb50067306502302bc878c1a6f88e4bbe8da7b071e61686bf3f15233b43655f39fd853b99624e03884e2feb69100e9fc9a98dbcd374e530023100cd3ddeaa54cf68810ab5e592aa2fb96a30b93439586df22c94a53c035409a5072d1d229a0330c83e1043a5909394b74b0302047c435bb5006830660231008a0cd7997c451ed4c4612a5d0dd62f5ecd40b24ae06698097c99c2c6225afd070009f1884f600336bcda3e7d8c82674b023100ae7b4eeabf3ab343b5bd3c48b5e67cb6943721aa602a9faf8ac8536026cde8a72f0add046a0c3c7dcbd79299385412110302047c435bb500673065023100e9c5a8bc24f37c1a3e604427c71a89728c27cc30f1d5e7e59c8572171256d4b39265080d78075718a0459121232c906c023039b71c19acaf2216a8fb5ce77d707350ea53c1b80dd1b97adacda2d3b115430f00551ffc208d7b3155f7b7e02690d38c0302047c435bb50067306502306a6599c2168ee53c642b620cc6648d70ec1d60a23b2d2ed6ae1b614ba10e02a09b5908b94cfca0c5d122a762c224cdba023100e1f24cffe2a5a433655bb258b58032ac78e74675f9b364f756c55e9ab0ba1932a82fbb9fa64297d9aec25956de8939f70302047c435bb5006730650230341c85ee7215260849cf853299f3c0aaf1a7993e059c4370eaa3fafcda622eb4f273685b1ffeae0661da1a0c3ed13a4e023100ce959055d3558e8a6703dd8856172b42ba7a67e27357e7885800a6639b435ba264c605d48fd456134cec9e92c9d2d3b50302047c435bb500663064023017eab12a888f170ef843bf6284fc22091ff94112e48403c18c72a17332386f5d536e910fa04d71291e04ef0ba56b23ec023013c431f5ce251e10a60dee0e4b594f7002fcc9ca5130f0ecc4507bdc87f3eea958ea722d5d91f1facf701077ee537b430302047c435bb500683066023100ee2360a0714baf3672df401df13f89d0068865bdb4d2b64b7cc1df4d56edeb3161479da9fe214e5aaf151768972c1448023100ebbc56a81075dfb0d5bf6cc248e2cb79a110c7399765d9db3c5ec8ebad52f332527e2a02899121dc19ebf5bac45179310302047c435bb50068306602310093c8b4f656c8747d17de1c6ecdba112d4689c56002ce3c5391c1024c0432120746ba0d9ebc9427b409256deb28c5db93023100b9fc574887c310ab781ecd6dceaf5a5ab58d70b770123e28b2fc3dd3a37acfb8ad4749bcd95ddc390f6af0705bec21670302047c435bb500673065023100b2726885f3344321c63413df24da5a120084caae075db94196a8c0ab2f650ae5932fe843f3ccc2613eba563cc41a6d1a0230518ba6d8717be7ba2dbc99a023add04665f9586bebb0addc3c8e6107ade51db4b5aeb9cf3099b8cf092d91c85685a6c20302047c435bb50067306502306c863a96fac3b7b34ae5f395e023f8d1a0d8ba1ad82d27d724afb5c8f5f8fab9ce4a7e8a6081c16cbcdbefd665b1664902310091d3dd1d5f26fd35dc9e82a39d05d9a500298c429a1f5a2f11bccfac66197a37dce356e6a36ddf817127a6182b9df1b30302047c435bb50067306502305856a28a8ebee2f5a19094be1681bc29c71269340090b6c2a72b57c52051e0bd69c6d1431398b156f23ffcdb51fda258023100fecc5ec45afa4564350d4edbf84525b72cdd160fbc2e36527e786e78e279b1647bd2fd2a2bf10189ce3eab605db739480302047c435bb50066306402302492e623a04e7467eddccaa5bafc8604d1b05ccbefbf85bbe09832afcecd6055bbeb6c0b618d5a3732d118c5d672a5d20230332244157ac25eaee449f39712a23b92956c3dfd41fe971afa75f59cf0f692dad4af692b56adaab65385770a0f0527c80302047c435bb500673065023036839ce9714fd8b941227be87683112c4afbc99fd8af3f980310db9436f1d3266ad8f5ff9289baa48b0ee823bbff31ed023100dadb8f4f95fb060da6e0886019afc70e22c689d614c1b696b3d7c7ebba07ed5cabb0cf15e11e391a185a14f97141580a0302047c435bb500683066023100acc33d967349f2d5707e14cb2d97a7835d124776998a363456cc4d0c58244785789c0f146c1f416174671862d6689ee2023100f0670469d8d98f73afe65ca93e7f879a26907529f1ef207f5fb2697923a68b841dec5ad1bf35b0ac8d7c5cc09c3403f40302047c435bb500683066023100cfb478ad986b826f6d1272576fa73fc1663e6f68411bbe9b99fdb7a7373a26e669047a67237f5bfe087cef643fca5df5023100b2b6e7c00a8e18020e8590b74e60bf3f9683e9ebc4bb20605f566cc36e138e36d13bd75e555cfc5fe8f26bc4aa89f67f0302047c435bb50067306502306eb59dcf70f7a00f85fe5f9fd098f793e969f671395bb6d6805fb14dd558f8efc8f55d4a470d98fd0cda8a80bea530e6023100da955efa2aa070b4851f10bf3387f447610e36c6f243a10631989c75e200f993fb279529f9896685c8746df1916b51ec0302047c435bb50066306402302f26f034744e802351737dd2f38d941481433ad2ef84d2f7bff15549ce8cc7f7f114d36e019e85fae59c1e652884c33d02305e2e0736f9b6bf028b25425ce5b320c89e49e61450fad87888a937101bf7bcd69ca64072c59902971203ef45ce876aaf0302047c435bb500673065023100dc925986325c94da885a589e3c99a2de818b7ce8f9b93e77386b60954326c1dc6f56d83d2cc4fc7876b231c9fdb66e4602304e3ecc3075797099d8b6e8acfd56c8c1b1e392153937d655059869c3211a81a7a79cc5ee7b49430dfa1cecc3ae47320c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a4b4a407c7001577f4f9f1dc1127a010162cdd57398c170ee1edcfc402e22927eecc5af419acc95fab7a8a572762732f0231009926d96858164c658f9f844f1b63e10df26cd7a1f9245c362f769398bdd7171da7c8e3e39194fb443d0ea5726b5dd7cd0302047c435bb50066306402307eee7eec9641f7a8d3f257976c1b2caecfa0bde1b68354f0e57ace53a4b0230696cd38010eccd0d116e71a7a533924b902301fb0cd07042db2072986a6b8cded02898b42e797a49b023f71c02b05c398ee93d7f1bb9b5cc4a0751fe885e203962a400302047c435bb50067306502306859f1c4340c818af0d1022590cbbb1f86e355c530449ea9fc6fe97aa4b033489dc2b8e2ec9d8b9cff89fd617fc276680231008d4a7cc97c2544f5b975d98ab95b679de2d4cde3c0847d7969b2841b0bd566bc9918835d39942368f01859e55a4281b50302047c435bb500673065023100c2503961b0f074beb54ff1ed08e2212ea69e8d9c13bacac25f3f7cc0816f423d5c96e6aa0e6b476781c336adb20b8725023031794a588bbf12c5a41ed5688fe204d384daadecc42fde7c46ec68d0a58be4b83f9b0926a70cb79307902484d3dd7cd10302047c435bb5006730650230154e73feabf15d20b4845dcfb6a300f5b2f5bf735c2865a25eeb32c022d3322d0a644eed073e3a8e217f5550bc8efc6c02310082aa1409438070a5ef8dc5cfc057d1b350d1526390773596b7165dbc0271ed32fcdeb65d792d2140fcbf0a2d7522b47b0302047c435bb500683066023100e328d16fe2ddd016ea079b7f76815856f7a87c75f1cf162c2ad3941e1f4d1b33eba950497fb92379781424903cb232290231008e54e7a99532320b32c90f8b2153ac167c944d2d84c3e6b96e68c5d892fdccc710a7cb69d7b9a9554c084b0a2ea28af30302047c435bb500673065023100dea76fdc16d6c3e1f8568f2a2cdb59fe8aca018f872315f55ce696f80b8de9a67f1464b4b8b85253118e591645b13eab0230243142e40b82904626f35606118a5170106faee3f414cddaedef143c638e233e4c3e11bd45065093a783ab94bfff13510302047c435bb500673065023100866ca3866f8fc6af7d4e29592de6c654ddb38531fbafbfd8f23a02c661ff33b5603342986204cdbc48985fb4aed07c90023064b03c1119592611e248bca2226b58e9be7ff3d3076f2007aa61e01b532f90295b3ccdcff2bc18e79303a717d2d081080302047c435bb50068306602310094f45d6a070237875d888291346dc81a05f8cc3f6f8d3d049ac4f5327f3e5e636fd7fd144826ba439f46005c9d906308023100875a61bb7eab2e935d6de520308284e7f89d95766523bb6ae15266d3b4425b932396cd35e0cdc49894f8f03d3a8f7ee50302047c435bb50068306602310097d7625c32c8391bd1e09ffd07688308e05550f4e6520f34154b729a11dfa5f4941f9e8c9f21722c82410efe83dcb61e023100e3703775d9f07a809c199e7894b0e250207346477919d42eac1572e53e7fda8b4ae6b926ac99043ea58ffc6da82ef2dd0302047c435bb500673065023100f200fec2d5b31d1a725c1f91072ffd966711972df6d77abdbac74069086179e463fe6a81bda822013612cb1fc872fceb02306077cddb6e000ba06e1e788261ec9a17d5a65737fc80bf05e79536c579c6353181e4ff2750f2e87a1552168f7b2e59d20302047c435bb50067306502300910ce61bca538569e09bdeb39ff4f8ea509ee5740f1007a952ae17fd864355bc83757552c5c2818b7a51664f44842f2023100b9a4e1b9b0422177e4347e5b4f9a7bffb8227b1055c0ce8d0590e124a0379a80c66f8463d0c63a3310e8ddf270d904e60302047c435bb50067306502303d7e4a82231a125e25826e1e3c5dfcb8a812b8d43965d2502480522cc5a6b46b6b9bd6f6839e3e3d3290bd4555b5b791023100a5d8557bf3c9438052f271264e4bf81e4665cb233cd63df66c8cc0f2e3d03c0a9b1dce6993201b72b134bdb9be2d52e10302047c435bb500673065023100d18553f64bbec487278a121b8d7ea810e77a52f7382fb476dc37f4ae210cc3be3ee2d0ee553ddf61619f65899fd5e6480230506882b343414a3c7115dc892781c9822273ec37effed0b5332129e85ca21ae1c4aa4b6affaeaaa229c258b3e6ee6eb30302047c435bb500673065023100dd89af1b48b93d7e848c56558fb7d67d44016083abf75164e2441aee0a41e9df9999debe735f38adbcf7d704372acce702303eb98a4343b76ca5bfd394e64c148e84e5562261da04e2e28dd6a409c9d3654fad0e6728af3f6215635bb162f4ef67f90302047c435bb500663064023010b8791bce5dd04ee348f9670905ffb28f5c38a343d23735267b160ba106ff463aab5fb1a2ab881390a390086c7e4a30023056ba84140f816f844a2c19fd7c33ce3e26bcbf6ece6502e723fd2d096f82963d7a938308877d03847827549f248ba1340302047c435bb500663064023016fec39308fa018ad5d652e94b6ee2a91e1ba7c0d5289a22a894564cb047874e0dd973e5f884435e5b99c0dae8a5a8d8023066db83deef17712dddcfe837b66cc3e2d6f713a7b73925f4ff302cc2936b145cdd6946a5e3ec75d33e4bb45fc418e0c00302047c435bb50067306502306d9c1e60ed67b430609f0fc7c4546cb866379a7d4d006462d43604c26458c77562af05f98b8eef0e6495c634614acc2a023100b74af54150dc397df63e532c9a8bb4b7ba310acca2fbeb8d11a7ad91d07d189032a42d216a2f6d5437960112622a52200302047c435bb500663064023041d8ae3b426640768eb0ac113b6fc65e2b6dc7ae00ab49c8b9fb541e77bb36816f9282dc53b4261aef87cfbbbe92ca3002306cc0a7c0aef0bc069b60781b8e13aee0317c00fe1aeca1d5583f4734e79e5e9e49df96ea77dfb719e7fcd9eb0ff598820302047c435bb500673065023100e2cbb05c196787c36539d7ac85d8b5dd74b85374ac75a37a72ccde3ded666b730f0ecc85323ebe09cc23f9ed3d2fbb0b02305b5d69a6ccc5baf02c372dda105fac4e336750b4666d666a321a10d54c31059bab0233c0a9f3ea06338e9f0f103a23df0302047c435bb500673065023100ef25384fd6b2a7ec334afdc8b08a6b564bacb79be52b8d67ee27b88cf693d36a77e64330eb5541a6bf219dc4d67a839502303c07048997772a0369857cf533afd8b0cc47b6a5f77929681ceb6f5200700467c7757c116e0f0e161512a3902bbe48e70302047c435bb50066306402301b1df53eafa26493e9a0a4654698b453ee178c55813ff8f18a339146243aedf1d7bab67faffc0221422f7fc5843e6311023035bf63be24dd52aafba084a4355f6bb6cc8a317bd8594d2ceb38fb282c13ff36ac5a9ade4b47de75302151c181f975860302047c435bb5006730650231009dd0a4d138d7da62b81f89d4f74241d3963634b0a4a860ec580c9d9d8a2b2693b56e2c0c6dd414c6b95904f4b24fc5c102306cc1a946ada110b5f4264692dca9c5e48632dd8549e286dffce3889749e80ebca9d7c79a4e984474830faf6ba6fe9f430302047c435bb500683066023100ee9f582a6a5750fbba90cd6827031fb5dcede52f002441b9b1d8975956dd628ba9736077be614264f632e1eed80ca00f023100a690333ae8b28dfb2319586b63877cd5e1831d636ded9fce09cd7add97458451808f2d7bca44c2c165456ffb2791edca0302047c435bb50067306502307a22671315a2cc52d3ba40372b92d82ceecd8cfc76f01a636dc8faa5a63f65290eeb7a4daad416f70e57de515eb1a0e5023100c17550f20d0943e31609a35ba85e3a1b5237639fb4c7d34135c5b5040f9573f3b716f4537ca7cea47f46a8bc9bda7fec0302047c435bb5006830660231009228fe0668ba5202b6e0739b6f8db6200a897cec26bb5c78818394fe6f7d6d5aa0dab4a0964959fe5d3499554f42e75a023100b9aae337aaf416be53abf96e29f7a46cfa1e428672370de9ad3d26881b2507246458ed5edb5e677463533c13de229ef50302047c435bb5006630640230105ed7b882e20d95a46db9fdc6cf6b60a0a4f2275152654ea1f409c5d8203ba73c80691263c33104834fb9b6e00a0dd102303f8045f204a8f43f2f633a1d7ba3834d9aac5a443ecffe124cc9a0b1e5cbe7ccf42ced0fb2457fdffd7ffa794122f50a0302047c435bb5006730650231008ce7a7f942560d61386f50784a9bc461ed14e48ba3334e2895a01aa0f86d25cc6823c585a8c92a044d59c0b9658afe24023011796b42c0ee65cc1cb934f83d8d5f5d2a27ed512c325ff8eb3a24410543178257c63e97d9ee33013851e941758a05ae0302047c435bb5006730650231008bdf2cf5d982c638417a955e019ddbea036c63f434e8a8a1e7000609b880698ea72f546e703a240e1762c51ad43ecebb0230009e0616f025a81566b61c7d86279b33bcecb963e9c8ca85f712b304b095c2adf5a8a48417e5a79b5b72fd4a0d9368790302047c435bb500673065023100fbd34c186d4a0c15a613c198e028314f379953467643a4d71ef2413f49d1a33404113658fc2b77474273fd262c5eb53102305aa2fe91cec692a973760e60b8b6770a684c0e30e15405901c44712fce6435ecf4fafa341e79dc19320bbfa0979ebb970302047c435bb50066306402304a3b1e3028ba9dcbba8350522c6a99d8f3924996dd8bcd68b37a98e29c1f585d1fcb93675fd7dd63d6b1d9c29ac92c5702300d7f45b68dfad9f19b37656182768d77264e3a16ca3eedfd4e220ce7e7fcef6c810669c3f8237ec78e4531b657ba490d0302047c435bb500673065023100990b30a67c56031668eaab6f4aa779073ac30f2493897d0ec4f9a962f1f9f3549c5850d8aa7c95235cb5e2b0a417d4a602306da5128f9340bbb505ad746ed29e43111b04363da3bf9107a5010ec65f8a0290fe958d2a7a846c8acaf12a25f6b343e30302047c435bb500673065023100f23e52053b09ac85345206fba34ae06e3673280345573c0ae7a7d466fd84fad2b1e498bfcd9d94b59f9391db5d5caa5802305328f36456d4b2cc7aab45a011e22e7544525f4a2edf049c588be2032050f22fae8762073eda69938ff97d1420427e090302047c435bb500683066023100987b7c895310d02959bc706f1ce780d11cc45706bd0c9d117c5c9801466a90a21adbd1f0bbf7db95a7db63c74d0df19f023100a21e3f356f172cfbe5b17c004cfb71b05d87d7f05c95a2c342d6d0e247dcad7165130269403eb624050e24f4ecef9bbc0302047c435bb50067306502310096ea6b2e970d29b8190bbe6c8924d6bf6c484c01526ce5263e20179b1685b8201ac3e821925e1286ccac39e7889050af02307f39dda5382469067e3607aad513cf0871a261913320e62f303726003aa62a78b7029a55f414f6ccb3069ce402500d940302047c435bb500683066023100d48102ad081c882b7b00cc1dfff7fa3dac757478e6b24dce7d164820da2fa4d3891c892545c1697483bc900ff472ee12023100d6866b2f8907834c6af920ceb40fc83f7761c73b41f03c0c4958b229850acf43c1dd85e5a19a418611690ffc9e4464330302047c435bb5006730650231008726812fc3ab921c21440f76692bdd3ea74eb276c7996df02d1895f3e93f1324d4f43597d2e88df97cfa97eeeb3e945a0230089d768ea1430fbb7c12ddbcae74f45c5185ff4dfc2ad060ec43eaadc0feb52a7be0a1a79abbdd670f4b31f5de1d95320302047c435bb50066306402304f7a19b7ebb1d1a779ffff3bba346cc8bf108848c05b08c19690172c9e1379fe4d5a3da78a4038694c6c59a00e83941602303992c6c08d871226c78f5a540b9f5e40b5c7e063ea42762dc5956bf7502edbab02b32bcad4673501864ca20556bede960302047c435bb50067306502307bc1258f17e818053250ac2a910b15c833d063af1d5476d3d609d2148cc9ae446abf74b76d979caf9c21cd5ddaaa5e01023100865c7eecc102ae89af360ce91485b151ea863273c2e5b8e3de7c6b45bec67775f6197c56a892eb558ab67e23ecc706080302047c435bb500673065023100d1dac539689fff069b04fbb2970768d68d23ce6880836b5255c12cfb60125aee7eebd9e188d774adaff8853e07825edb023076f270deed8bbf470a574166c1c9b52f3ef55a552523968c907bba75e35102f02e1d326a879d2b7d927eee36299d9a650302047c435bb500663064023000bf84d0f6b31d31bb6e955af2fb3ea0c71be815fdfd2d3fcaca87ca99bdf6eead30d969ab0ee60740e0642b218ba3a702300b6e369d4f365f827829ef63db591cae45ddf7f6e8ec67fd19dc14b29e9f8420cc30d496e3bb9d8a743e9ff3378bd8130302047c435bb500673065023100fe2226238c8cfae4249633ffa86cdd14b6d5fa7c536898f7733a858ef7977fdf80b927a02cdca52c57dba01756c4a9b302305b6aac6ce9be6063b3de193a4debb991034cf95f0011ce5d7e60900d30d369159f1bba7705aa90051b2d52a8c3cfb37b0302047c435bb500683066023100bd4c65e1a2f90aa25bd06352e34a811db7f96b897d4f05f6740950a1595cb22e78ef69d6daf54d604a73e932221b1e3402310090f5ba6c3613481ecb896808acfb40af19fb26b2836e41d4f892531fec68f5d7ea761cbb02909d43e9df8270e4fe494d0302047c435bb50066306402307f4940bda16a2b8575b956ec0d03b8e174fac539574d309cd884554855f5b8647bcc1f16c71e9a4869226a00b5bc9762023020a89be092b9bce1a0353d8972022648b4b205a85fb103e76fff9848548f1216dc3f1c71a01ef955794aeb43c2199bc50302047c435bb500683066023100a7ff54632903b42580eb9f14c31521ff8e2a59ab938d39fd079c6809418834161463e3d34c95b1aeca12cfe98823e632023100b52275549a25d4e46414537fe43733f2eb94762308f27ea040dd172ca1d15d72dbfbd62618882eec8f403fa60d096e200302047c435bb500683066023100b49f3e3b3ee5579d9aebb7975cfe1cb24bc3001db5b7549808ae008484606b435548b86fb18566f1b0b81451454cf162023100900a71bf128acb87f8f195633438e11cdcc1b8f54ddac24820f3481e60685c8da7201d5a78da4fc96ff6d594d2f2aa090302047c435bb500663064023022e96f3057d6d2429574cf485cef5641dfa1c8fee6a141975d36e1dc9dee4db33c4c88309902085af563fa235cb2be7202302339997024937d08011928be5de6d3e9c31ed1c4eab37b85adb6444f23fb2eb246f1b68d7d4b9723834b5761998e4dc90302047c435bb500683066023100f06456b1a0c1488f2363d48e96048e0ecf0a68a83a36b7b500a022f04c0ff03ecbeedab0bf029fe98d273a4cd0dc9279023100db0c2dab440fc259563f155ff7bf470c8e47a2b5898b448ea02649aaae5855cd12ae89468cda42badf2c35e1f3c26c930302047c435bb500673065023100fbd7a80b0c71a5588fad08145419ea6e3a7795b15f27e2371495dc17590c682cd8fb78958f9b153647869755545e4a4e02304053fcc5489ec241be98409e9974fd30961ecf5a5ee674c856faea006756f090fb896a1c528004f6e006a0b1c00a06a70302047c435bb500683066023100925da5926058948ed943ca8e60420c6dae1ffdf3985dfbe56da10938c11b2bcaf378876370392edd768003d8f15b836a023100f60541ae9b6153c4c2b518e23a44dd2a40d99e39c7ffff91d96afad4d34a6148037ed7ce5fbdb40efc8845d6ab2c8d710302047c435bb500663064023038dd144fe8d25db8541d3016611a662d3cc687755b280fabb2abc414331afb4ca9f1028c0502bef767ddcaca11c3607002300564137c0f308f1a1db3fb62bce83ce2837a80845af42428b93d8c98733457ef77b702846a2088557e9e1f618c97cc7a0302047c435bb500683066023100e71e7ec05a628565c664487620a3258a1397fa6ba825465f1194ac1a34121ebcd3b3c67cfe6e9ff02c920b0247157c1b023100b81a53d90fde16015e884d72017fa4ce484492e8a03ba4157e68593cb774877e38d6db560ee5816d79c1a201445c4ccb0302047c435bb500683066023100f5b81e1cf224df0ae578ff93949d685a81297fc2e06a66edab45d78db8f2c86d941d561c8ca36556781507146ae57652023100dabee20d7164fcc9b9b26660411348cc3297bfa392a6a258e85a63fc8d194185e7ff630a135e525ec89cc5ba75d67c610302047c435bb50067306502301a6fc5a79bbb327a096e895a1088df6e9c57d2dc597d688dd0fd71abb4c2fdbf7a14c22d8cb4e86bce888a88bd699427023100ee64f8ee7b1d278a66366aa3bba4470ef309e3fbaf4696116512efd2abea70709084a5c8c1e43a7526f5542b5146277e0302047c435bb50067306502301ca1985d22fcf180a679db66ae1c3721be5f1b9b253c6ca52291c06a4fed51cd58a874d64a58368bc3b9d0f6edf2f5ad0231009d9014bdc43d4e7d544e9f2213d105b829e54fabc7d1d2c23d1cbb4cc2ce1ac33d866b4ad4f3f1996a1409e8f2f7b08f0302047c435bb50066306402302275794154c59856d026f8c9ad75e233548d13d8785cf099d1414b872e74109eac124c925703e73c041f20c848b8e158023010556a4d5165882fa731b05a43170f2221cbbd274522c77d64243d8e28c10e4ede428186e39fac4cd4756cc82675ae890302047c435bb500683066023100842b83b0676a335aca681a2148725ccad93da035a4a24fc9059d73fba9a5df52073533cb9a2add1d7c4697cd35dd8bfc023100fe6b6d4616d0bbdada9a6941b76ac8f7562899c9746c759741d19f6ac5eeff0b974987c8976fc33e532ff5256acc9f360302047c435bb5006730650230154bcf548635a4a3227bc0cc9f819bdaae792f595cac29e1ff0454fd6bf2845d347f28b348c0219608502836c7ddb30c023100b86fdc2523fa009b8865bb5f9ac921295c0c7bcf3df2176a64de17c5eaab38c72d8892841c33c8465153b9c0fbababd70302047c435bb500683066023100f296b5b6e614468b876d2819868441b66f5f440e238be5cfc2773cb920a88f412927f7f77bd7c202b390f8e5df1b4362023100c25e172b603ac01deafaf52e7e787e5a0bc78006e948c346239d57626ecdd0c109a93453ab9129b063f0f660a80831990302047c435bb500683066023100f9073200ea44837ca8897ebc94074392bd9eb322ded94ad36d7a2132fb5d60db64c6e84ba300e53e10028b9f879076c1023100bd7bbdd9a6d190087720804fbb4140de4d52071659a36b3caa434d64b3a49b64e6d37cf8a7b718b4b02949b7c9ce370a0302047c435bb5006830660231008b715e2e844be11bf4e3b871321b2d11f2fad9c2fdad93dbe23d88776f6239746e507589e690cd4523f021795c85e038023100de1dfe894efd87ebe6866fc20e3f96c8506937a1b39511135161f0b864dc5bdd21f6ab3653e3945b73b27ab1d8e9825f0302047c435bb500673065023100973505d6efe2715703068e364faefe78b5abddf610ebdfc48441b04b7a97f8f93a3c8587c77ad27df8061061b0e938e202304029487f5c40580ea9c3665776d6390b7cc5f3474c921f848c33089fd29fbcb9e68be1a3b89a66cb9841c1ac3fed002e0302047c435bb500683066023100b13e2b3e38be335b5836f218476bf6d7246310af920aa02a0241554547681387707705aa533eb2145bf21507b602bfd60231008caf69cc19288104cba6de2b98deb8cabb598c1f9855384440368aac17cf0a9eeac1b64b5e108b5f38194bf4586d9eb10302047c435bb50067306502310082295882e247b90e77a54a6af7a011eb7710f2051f07d7075fddc753193e19d48a4a10edd15ad12fac13e438d2ee253202302c99b7135f061fc347681127531ee71c379baf05b1a3a083cacd7bd288762225f3c102949268b64079c0c82c49d8ff8c0302047c435bb500683066023100ea47111b40ed49c12a38f9037b08b8ec2a9079891ba16a2f0dcb5dc54bdfb6705e2e725cbaba5e9010882da7eb6b4afc023100821d5d47b6e37c3c42e5443479a8254bb96005d218fe095d9aa3d1100970d6ad00828f01c0d995a46f51c8a98e362a6c0302047c435bb500663064023033d8b6212003741a3ab6b9eec50303036ac87721d5c626dd0246b8f4e5cce1ff2045018b4d2cedda74ff31a807650219023055601b5428d219728f07aeb79e2b27b7e047710983445ebeccbe7bb71dc5875b4dc547817bd35b6dab61a1768930366a0302047c435bb50067306502301682d061daff2c039dfd961d550eeedde04a51354d8cf8b2ae5acedbd2b5cfd40d67f8c6d432eb4dab18a5e6d2763c62023100c042c8049a6f4070c23245fda702500d4f6e84abaa1911f3386966acf8ccd28c98082ea8dd713ab1272370d7cd1cbdc10302047c435bb5006630640230604747b67dc9f74be7708d7aa982ad505031f5420e698666d05dc02c8e65a3b7d4c049cc1da219d33ce1403e5d687a430230736fd94d7a93b979fb8e6f4cf2021233cded496bd75c9a6bff6e9b3d4ccfb5f02279ed507abb88c4c016580a694087650302047c435bb50067306502301d45fdb5807884645519e2f8edc0e7b2dc6e7d842aaf22c8d2596c167bb264812596e001c8b35938f4223f1387b2fd61023100ca58ab11a9a97ea5e88ab85ab5654c9c4a7bb54d84ea447fcc5602d1f26633d5131ee939ebd77080688ce82340188e320302047c435bb50067306502306ae85a889f3812024a41c0da3e9a18838ab5aec0bf86a48e7351f47e8c5d303144a32b6a388338641816e17f603d75d202310081fd610705702ea34703aa3d8da7f72cf393b39582bf82fba2a1bc283dcadf25e351ee24d307e767a3b2f30ca8b2b2830302047c435bb500673065023064e0b9fc3fd04a7b794475b2f206a20a165ad3785b3795246901d41d639d94211722513fd0091d2dac4333447833428f023100af21a2b22b8dffaf609dd46436cfd0d94e8db7a052f8b9aeea7b7f0a65534d4a2d8b533a16e4c725695c9510716526380302047c435bb500683066023100b2299526b8bd83ef066deb20b0467f4ef11f61c874f8d4682c200ff1783f4c84ca9d35ea4597bce05d2ab9958c014512023100e452f9790bbaa06dbc761d0e99f71b69ff1ee4257119748644d0bb36b2bd244af764775d41d5adebe15b01384313350e0302047c435bb50067306502301a7cf11c2d721e15caa1a4c9c8bc3c331d29127362f719d3fc6260eb65de115cdd8e5ac72ad291054b6601e6be33babd023100ea2bae91e5125089446304188f0253048f4ce759374c1ed1abb5c61dd07e022f0552b5da334b3bf032fe709b344b3b140302047c435bb500683066023100d64cda0f8bb78666a340980439ca9a6eee5c499b90d7a6d76347f4c6cbdcb3580028ab5279f078a04ac3fba0c5164eed023100c19b5981b3c875f7d7071ea2dc94aac6578a67a5ed9ced7eaa5682bf339889f7615f2e329426dffbc14cfc433767cad20302047c435bb50066306402302239e75b52a98a8633f9c3d5ab1411e9546429c4e2dd644997d7775db8826cb494d4696e051ebaab52cdb49a5102643102306bd85ecf9d1f449f20de2c132cc6d97f219f14966ab4167850441d1a999da86e78f52be0cba4e0a14a96add77c07c9de0302047c435bb500683066023100c732a4416bebd8ea207c2ef9eca602704d51200e962e949881a472d1d0e92a07fbec54b4c04953ddb51a0baa7e2db4e2023100e439e68d201973f94474d1be386405d81c5051863184e0bf7abe5aba45a4023baec77f122877671dd0476d1afdaf3fbb0302047c435bb50066306402303bac0bfadaf8b5dd0bff69c3ce79c4f9e52a6458c43e69aff8a91a41e063526dcc84a00c6346550eb28fd38353115ec90230730b1a6b27c4c045a15ba586bb42fd0ef651665f2caa77ca39db4fa3f5615553c3091864226fbca772c08999c176bfe30302047c435bb5006830660231009d542da23ccddf3d806d1b19f8d79577a0da370a5f49fc11ee0818df74a750440846dd41c9b77b5de1f5735790749e36023100ce4ae37c5bfae52a2c54e19dec8ecbeac396f538e6ca8c3d8b5f000f21817a7163125c4ebf4c0b448db11da89fcad7460302047c435bb500683066023100f9d951115f50fdcd6081a3dce2ff2c097fbfc36ddcd4f32eaf94ece751844fb198bbead9e03ee2316c4d8b09db91572f0231009ecab02b606697fc5ed0bc6ba93e181c6f7b309850911143297315fff9d2517752230e8dcbd860d5d8ce5823ded005fc0302047c435bb500673065023100fbb0d02df3585dd1c2a384dbb94ad945d6148d8f6adcec06ff659bce6f8ab1d62bffc8e929da9225761763516535e34a023007e6815dfcb54a6b5c12eca335597618f207b33f31cdf768998bc1859829ff852dd636d6ac34d068339a993c5eaeb4d90302047c435bb500683066023100ae85617e1e15e869740491031057b7b524ba7185825fd507231d29a03365c2e39719bc2c146f01983788b3114df1f040023100871bf818518c4b4dab3af7d35b00d982874fc5c73961a40628708b85d254baa19db6e46aa032796e1ec4fe66765c88720302047c435bb50066306402300974c672cf3c163a499d42b0176c7f93d0d0db1c26e8725b53af73ba888807b3fe6ee1f6e6da66258240213d7f4a80f802306093fde5d27ef5089bc90c74050fcb3e210114bb9b8c6b4804e2068a8b5ebb7137177c21d53424d9aa19e55b2cad01360302047c435bb500683066023100ba40c7b1f72fbb9c6d26220eba8f243038b15a1dba163d74bd0dcdadedf6ed78cb97ced3103961c7d4dbe0380b2aa8ab023100b4e7f8a9c5f26c1fd913f3e08b10a9ddb524361c43be27d291d81b41970debca63696f8fbffdb1543656bf126824f30d0302047c435bb500673065023100982d98acc27c961924daaea25f6f25757f9cb06157593befec3843ed9111b1739b0ff4376dff2a1b452fefd2e3ecda6502303967a67080c804747f5cdca74fdbae1e573f1d9b89baef3831c172b0fded6b0e5c54e66c644dd8580e7e8bc19e9f20aa0302047c435bb500673065023100f74176de62affa61ebc5752af8442d703d238e2b058140f9d26650af5d500f33baf278167bccd8da966abbf35f755245023026ac11e96fddc097858c661eaa23334792a6583dc62099c9cef44fae411c757de594dae6e9937f36696a9d41aa6a344b0302047c435bb500673065023100c91ec5c32806b5f995853bffbe1421bac4621483eb81477a5bb5d5d0b9bbba9478463a7ae6bccbf50a162fd9a39cf3ce02303ae382a173f156919aae6a4205e8b0fd411fc2b33c6c0b48812b73d0d0dc7ddb9e90cf7ab5fc98add11c58532fb389f10302047c435bb500673065023100e83f57d8ae146c5804a206465c900ebf259e80e5e876b5ba4a31149375716e6ef86f13fb48869f18a0514dc4559a8e7602300c9e370bb04784518271c6ce2f3c896346af96bc11b7a561cf722b7ccd06979baff9a9317cfe36efc89f81cb761af0860302047c435bb500663064023027d53e2c794740235033d955b7398a86de1a8e293d86903f83b378c9819ae542fc4f16c84a53e246f287b6f8bc6dd4a502300d9410920d0dc3b04d19b96b9421e3ca2b0edd061bd849f53baad917076bad64ad55baa9f4ea2de7ea9b71e367740af30302047c435bb500673065023100ca7e018c5f03f9ab7abcfe12cb8dc90882694ea58d9e865ef7cc6b04dc72d1515c33ff86130ab4ac6ed5bed3497966fe02302cb95186329d4b4c08f3c530c7bdd6357e911e36f0d0528e8f724f7f2c02e0d1be8ab57de6d6718bd75f93ce1eeae4970302047c435bb500683066023100b3dae63add6527c1bb9b64862882494c6d5d4e840e36fc1d09496959fbd2551d5bd479c3db137146ebeb545588690b10023100f176f16a3ce10941d96755859a238c26a7d97d784794fb668fc26a1296f79e699bdc89b574228838c52296830cae8ce50302047c435bb50067306502304a158b7886f8a53767d8a67c9e83926f25ab758b24743dfdc83d8c3fc7d0761287eb378f4fba465587d1cb31d1261ac8023100b21f3918ed7a5e1ba5ae94c999b2e668342be58aabca67ba994b5e980198ca3802e4887d0c86a91835c586137546e2bf0302047c435bb50067306502310082367b4dc83ea1530f9921fe2b3734aecddcfa000a2e77eebc6cc8ea98189e09db98a4f30c491b03fb957dfb02d9cd3402301d5ecf9a94f9f03aa7ddb4a6e3e2f70814323334aeec1ac77df82702232293746dbe627b7d21c367737ea5eae80495290302047c435bb5006830660231008df398d33686f8bc524ac95cc51a152d3c74520861ceb071f299aa96bcebd45eb61694a6699a0336793e7930abd834cf02310082cced7f706218b59f116509c59c4d26c3f911d2e34225a501757748753202869f5d4434a7b510f593bff61018b5b7950302047c435bb500683066023100d2243eeb9b8092ddcb31c3daeff1eccae0b52ceaaa656198a309af7d067aa22e621e61bb2e8aa23bd3fd126eeee9df740231008eec112ef9a2097c18f7a21a0731d2fac186a348b727c5696b5bc67be0a6100b49c91240317140ee0fd1909c644861a80302047c435bb50066306402301f5520291d85a52fefabb89cd05e37bdb3bf6a63af54b3f0176db747fa52a428d13d1bbc0684da3cddc683e66510fc1302301152ad9f126db546b3533af43dfbcd9cd36d83e487fa64d24fa5eb5f5d0f78e594713ab9667bb9e5690d9bdecc9e98350302047c435bb50066306402307a304f874d82647348eaf89e0a79ad05de2f73a3222f0fdaefc7030ff21e8cf877845297313e02d40cc23f0615f9359c02306bb7a7754ce204eb27ab5ae6bc0b2d7666addce0994df4287a290709434ec371d7a16027c3edc42196125f71a7f705fc0302047c435bb50067306502300ef5bbb4ebfdf9a540c4f613b205446f8f699c033f0499fe9fd31bcf6da1f6a631dc92ab44da26b6f4fc6dc838c08203023100eafbe00594a89def206428397de8b9fc3d72683f120b20b80c2c8861fe7e4498cd2a4439ad79d9d7a8411388aa4631210302047c435bb50067306502303603220ddb475a04645571aed9aa5168fe28ccdadf94c0bd040bf585c47953cfc06cb9db811e6e453b036d77fd232d2f023100d42765955542ad40ecbbccfe71be70bc1a99a82120bae0cea6780ddb55cdb1892db521807839fa63ee896925a02583e20302047c435bb500683066023100de19e6ea5c2b0112fc43308b377a7c126cb21778fb565ef360d59ac4a51f480a076508e58a0ac6b56ccb74de9e744226023100f0fd02b8001feb8458f6c267b9154bf7274ad262ad51454030f19fa43da81355f78e1ee82248200063dbdc3e0921ccc40302047c435bb500683066023100b408e037f4d7cfd51404bdc60c0bca4eb6ba7c1175c3d7433d816197bb662a04816e9e0f21d75f89a4a80acd30ab445b023100b98c50377ca95aeb516a358cded5e4cc1a646e21853e4dd599c771e9acb7a14122fe89039574601959441b375dc0c3760302047c435bb500673065023100b37fe0c83489463945ee67c8fcc4478bcba482be158f07869c51552045510331ffd3961a8a922476d337a5c19ee2b4c502301fceb12b84c44831ae86320f199122938c0940c172ebadd8bc83df9a4df38b2fb5ca2dee420b145871a5434c41cc33c80302047c435bb50067306502301189a4fa7ceeb72f1b8067fc9c0c2f1d6480852293360d8d65a8938d993537347a3a4e5468dfd58f2b5e40ecbf50c0fd023100d2fc739430d0d59920ed3558ec31aaf86dca63b57b6a6db9f046686432164b9bff9d3bef24a23c2f1e432262826110eb0302047c435bb50066306402304baf9e6f1dfa12cc69fae2e73314466a6d672357d10d82c0a58839b2afbf6a03dba955b282342d8cc0eb19a3b8e1b4c40230369ea87b51c578a3c354ea8b9c4c09cc0a4aa472be523c69153b5c3eba0d6b3f416a41cf65d3b1a0c9118cf5a74333070302047c435bb500683066023100e866ab442ba15fc28426335c44d2a2271c1e06332e96ff763efd9c83f19d71f40747dd8b4867a4421096278d4ebb95140231008b14b2fab62cb1b6821159e383ac81166718f7be2e95e4b6ef1854b48899524d9d03f9415aebd37911c7038cc0d439100302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d825db9a0881ac0f97505bcc88cd9903ad7f73562691140b9aa5aefb308ef34a830c8fb21df16bbac0fa7999b44de69c023100b3e4388e3386075322c0313c635e62ff02b579cd06439cc9a0be0a81dbe2c46a0a4ee7b54314e384771e05da03920f0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009c6a75c5c623515aa09467fa1355d305448e5dd655a1f2a88bd98664c675f88cad61f8f3b192387d37a26b9aa19f8ead023078e7b5adfa75951dd10b75386cb9da67d5f1ed090a41f560acb13d5237c1aa9bfc0ac01f80b4dd0a592d569eae1ca5080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307d057329e20f0a6226e95fdbf7e792d07c6fee380421617550622d41f389402f8f5d65f00351fd53032aa3ed2fe367c1023100e2dfb0543f1097baa145a1a7a2b56ff715556c9ab4649d19eec4a67ebe0568121af2d5dec028509619607aff37c1400b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230450d509c5a94edd6bd8b5a4e194c180a346b4d699471ef56e4f05dfc20570433d1fdd04d976ae347b976424457c45c83023100fc9bac59ad897ef2c34b4c7acf4a032feac7c771cda3617f42d6ed36cc1c4dea814b56f0990addab43bfbb08f6a6a4b00302047c435bb50066306402302e6c25d57255901cec1a27b6a6d7bee9d02de7df48a4b31c4412dac97114f46843994a2e94b35a16122b233fe833c780023068fd11b3f912dc7b259a0bfb7f390270edce8db1a26ccbc9f2d710870918c339247bc5803634013dfab47acefafe971f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310096e5bc61f781067c110f35a3bf14fdb1c94fa8c3b685781032f562b9bf19fe9c96cbc7fb595c3dd82da2451bce485129023100e64aa494d47cc4f85e00b2fb9c1163cd177e2e0f5bff5412457db7697172e35a63d0c103902a982a38b42f1cf54a91fb0302047c435bb5006830660231008d7625e024c997428ae02c29380bdabf532c0223868994f79ef5b3f71a59c2ba57cf7327b5d4c03859668668551baa13023100a3496e3af5cd6bd3f8093a45d7c141e8446a2a865e1400566a113a6d05a3c0ecd52414f043cf7060a129ef2f9170a73d0302047c435bb500683066023100e55123c4c41c9a25ce9c3505594381d1acb60c6dc2e9715c882f598e147792fb1e834f23a9d16fcc7afa709ce4e5147b02310080f6b27926e4e06c0b65015ea64b1aea0766a550917fd95253bdf8ac1c77975660b9052f36ae0a664782eba9d3cebd1d0302047c435bb50067306502301f21b538ded87a5660015421fbd505d9a672bb64ef0b4a6ab55521a56cfc111e933a2dc1943eb0a56e0b791ac5c7f3bd023100d4cfc1472c3a1fcdc46bd1cbdafdb0b509b6e14eb75d3fdcb0ac5c970a906959eb093ba36e5e85e25c57da675c764b6f0302047c435bb500683066023100aec39825126833c9442ead5bf08e241a7f67bff3c3227b5b8e8ed511a25dfd0c92695570e38b02eae0f938db2034501d023100f3671a1650fba082ce847d4eab2693f4362ac799a5f9e989ca1f4e81be5b3fbd06b1bc89595229b3b28c4127291479fe0302047c435bb5006830660231008eb76f9f0951959a8f13c4083181dfe4a0a066ff5f8df2d9a69ca0ca25df19acbf022dd644cbc00c00533bfa6f65020b0231009014ee836a02726a82965a3b04df243d6301ad746b0f8f0de2892d0e3cba8a935045c73c5a20a72d2070e6ba880df7390302047c435bb500683066023100f0d2f52637fb13179e78eaa55efb0dc30620abd08029386e27578f7cc19df022ad2a2a2fd6f67eff163b92cbcc5ca477023100ee5badcceadfac1e06cbf323b80b958588db3298f0c2e18dd98172775b9ecb1be6cfca168416acbc88c14eeaa57870d80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306a442a588cf32e184c484896edd6ccb9a438a94383bb90b31d780796699e9fa978b50bdd286043c98878e4e32ef49029023100aa77ce572305af65db6c83a59feeb85cfd6ac91dcbc92e8da8f95b9f855811fe496d23060354f47eedba2c93f82d24990302047c435bb50067306502306904fde6cbb68a90f27892a44cbc6ec72fc24538b0fa8568d18f16ae03633f07cc3ad7fa02440a44a23457ad3e031249023100b279ce8603a5d57127b957af3cdcb657438581c3ed67245c2d3ee157187c0a71c1bde5e701e67355b7dfa8d36f7a3c930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c1c1e980abbad8b4fe4d87ee0f872030b12ecefa2b712df3c40f2d3c08f06f817813ea98184b999ae4c9c709accadaf202301e14953af60c07a3d850ce83257b3823a0f7bbb6bc12e51d724fb6125456c6569c7aa2996a8e7e30bf7a952f064adc0f0302047c435bb5006730650230033e2682261b0169b2a44c5affb46fec81938cad3d1912abaf4372a69e22562ab29da2b53db7582136d1a23a0a88e7c1023100c0ad1ae1eba8a344e39e6e531887cfcc06b94cc638777f44be4ce5d2a13453e16c81e4b147374eabd93178f5a7b8299f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100be65c32fa33912243f82e5cbf61e6ddceb10d3a813e7b9520f420b5db31c2895353d8442cae69d1f09142a195eb3f452023022ae7182b87d98e137f482e067bd7f9c043314fc7b990f8ac77b58d7409493a4b9940c8adec522c9fed60ca07e4681f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230686438229903235cbbd9449cf14daa00fd12b1b33ff2ae3a6098cfaf878821d55903ca83fb1d67193db06f1bd730b30b02303f048424b04dba1f755fa5455f41c2b130ca27c842fad2fdd6b2fea67f113a9f00c2e2c5bf68a6394fbc5c3976d7b2230302047c435bb50066306402301921a96a434739849ff1017d805a57b254fc6944feb9e6fef15d49bca116a2c7c4ebe9621b524d41e2db4155227f4c0c02300224705b0475759483c18c3423c136fb57e447baba068c61a33b2b4b2addc93214706429b8fb18d95c308788291ba4760302047c435bb500673065023100de8ea05c7d254ad6644085ed5495e6c833973cf08d25244bb514aa09612c3903eef72c026d464d8d1c5ff9781c31583f02306743061a43ea6d320a2e899bae66276b9252253fd381aea5758eb10d4dd3aafe6ad3f355627fc6bdda06d379ac78b7b90302047c435bb500673065023100be6d2ef4bdcac2c67377b046e9281fc09c4ea6a8bf2eccfe5deaa7902e4065e9c90388be2ba855f32868db70730b3841023079e2328a17e209492093650ed5319b2cce2c9f3b28353b2ac7a5d92e6a8fe220839ed3b37cd0b17561af5ecfb08c9fa80302047c435bb500663064023007f87cfb898ff666b041615e61f13b422ec232c818a3c892d3eb1555ba3caccab29e49335a0e40fb4e6c961c5e30193302302456f9b6800df8d623b4977b8a30e6b592e5e6adcb730305db4035b6b2457d6222d24882799ab12b2597127ce86eb8c40302047c435bb500663064023035588c74745c0b458746f40a52eaa8db36b8e7e856a315231a31b0ba17d8df8a0e9244369f10c61e58f5b0cf4e3424290230337edfef8761dbf2d3d25371f4e1b45344d770a5ff0f45e90b323f624a0251a448a2625478cd40bba9e8680f2353171b0302047c435bb500683066023100d69cebb5b26c8f20b53dbe520aa1be3576bb4826591148353f82043012ce73a0c964353056f3ee0436bdf0e02a151349023100f47910b227c2249dc7004fb2fb3f8fb796137975d9bda0e66283104d4a419a8f816e9033c329e8fbc6f3335d84c8526e0302047c435bb50067306502305877b1a8c72965dcf4f68e4e08032d37d6caab56f01d37e18fbb83a78e1e86a3a08c5dad0bde4705ea19493e5360d38c023100cef5fe2ca620fa470119ccfddaf19437f110890318b87b8efe270c4cfaba39fb540098745d4a689ac5e67d926bcb5b240302047c435bb500673065023100f7e8a6f449e85241fbbb8df0ba5c6837a794549a67e2adfad3d71712a063b8d8cbc52d2095c3cbe9c246ae1f5a866c190230530c10a40b149ab8e2266476377f41139e9bb8e03e297727d9538b3fa7050286a20327572515388c3338389bb5b682e90302047c435bb5006830660231008cf5ec1ddacb2f822d97cc38b37e2c0f97ae99e88315d5f6229ac434dbd87ff799ed9b54340410169091f97110b5bb02023100bbda617a31cdeea51c4decdd791ab4abc0aa9ef7d29123cc6045e25393937d74c6fe98999578f3a29598fe161cfb23160302047c435bb5006830660231009b840cfb878750c1d2849dac0d67533f85e09466670c970c2a3b43ea2282b1a0ea260ac1f2405a78d87f264b45bd9cc6023100b6dc2fef0abc097f2cd26aeac84cdd6f33d0d89e2abd666512c51c7dd1595191623b56bc7630469a3f6bb87049453d120302047c435bb50067306502303183ba10ff0ff375374fc5c05ab57084bf46e62c3f1af07dcd0948025cf0adb2d42f2d6ca335018278c84ef40c9bed64023100f5505d5970341b57bcd3e7df738ae64529a5a4db0cb812d72593eeb554ea6df5ce213db9c6581c2659270058d4752e270302047c435bb50066306402304ec2884f7956ee8f662be4d8fff2540a1616749a1121951e07fe638345c33fde35a295444bdd85b7d6aeb3bec321f43b02302a27a70bf2ed76eae7d9a31eece05b7189f3a9deb92bb92efcae059b052fd88bbba226175353e0be1172f1917a347d3e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023061d3b7c66a73dce69b8d74eeed43aaffb1e0c4eacb243627026370319124421bf98d666cd7f465149d8e7b16f642d443023100df2529bf53198f9bd5e4dc6f012f3e0a1696911d83fa83c9ec56da558fb0c465ce1fecd3915c2d5f97525aab9f0dd6c70302047c435bb500683066023100d27ee832de4f1401ea48703099f9ff42759e71a7679ed69f5c284a204d8f7b96429aa3c3aef535311df773fe43ac99fa023100ab8df9c53a44e7d525de6103297a13dfe4ec5d2d32005e55932ec288b0cbd5cefe92a925b813e7d38f4ccf2a81c774c50302047c435bb500683066023100c9f9c8ab643b8a314e3a52ed3509ff7cf14d99f120ef7d4cb49289a8d0cc1d767d2805c5e8ea9e35b77c47629c9eee390231009f6ac0c6c1d987dccafdd192e3626a3802d0aa1a5bf7c57897965a6a150b70ebefc31acaeb1535c6300f19dbeda259e30302047c435bb5006630640230115a89150bebb1afd8c10b2b6caadb71dc95e170aa18a9bb5544389942bbb3af99a4f32285fcb0c67af26868eb5e764702306d69899b95359f1c3a1a375be9501c1a69a9eb5e98be4db13f3f79b832888ed9d5731c8eefd9f6c03c0269a51861648f0302047c435bb500673065023100924b219ab981e5aee3801518f82adf16997658ed275f70dfb2ffb32442b71cfab250c2c58267b06a4a238da4e5ff200502304cac779887bbb1316142a16b06c142675e1604dc9cda61ee61d8ad5250ecc076f744759b2a96b0ffa179fe96dff1dffe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023075dbd941a2550990619b82e4ea182243722c61033c63e935f9910077710b43b5674157a58d142a29ddfd0509628cbb1a02304c0733d12ec661eabbdb06d2f1924ece05034ea215f424a0c393c53564bd5020027f4a8a2bb83028e5f4bdd54d85f39f0302047c435bb500683066023100c99d420687f67ddbac87a339132e3cb2dae8aa0caaaea153205a40ec2820d2cc9f088e2042cbf71e53e463963d67d637023100d5cc317db5af57c4cac7eb1248a54afdabd2aa0fe07f8a5da5034b68be0a87ca224ee49168aa7e9080d2afd2a87c6eb00302047c435bb500673065023043da606f7dcc8192d48855b6729683e12a251561e47ba66c4c67e27ba4f8b4d3d989724d2501d455c5a88a2e7718bc39023100bdb104fae15904ea140a0c36706a236597a3f1222b635255614df1970b7e2d760d82fa5d379b5d31e69f585ea45ff7df0302047c435bb50066306402303e9248d5b611d04785708e13300447a811e52d1dd00532e53f3e939198be6279f718c27b39e858cbe160175fc9207525023054081f196503c3c62a13873f9d14c98eabfe180001eb82376892f22bd8d5f349cfad93b679127223e0368cf794447fa70302047c435bb5006630640230489b82bb4b4d6b57be87ae9e60f94dbce15053cd549980be3b9ba7c75b8a1915e2f68c7c871ffd8be6ba29ea8c299ea4023008f14a3f9d6fa883f3e5081ec2e7b2c86aa145e9d2eae20b05a6af9159722f648be7201e40fd35cd50e3dd9392855cf00302047c435bb5006630640230687343e26c8590347a5ed8682879c7897fb52e671ca2d93a9196fdb0eeea330887896332aee847ebbf8c5cc5184d317f02307032317f78503b093d5b5264751dc8b3eb162aba2a4c9570f26552e82515f790726eae573610ef9599cfb71db4292e080302047c435bb500673065023100aba05545b5aa784f0ad52d3e140a3756aac55d21591803a0a4ab0b65d33e26485513026229d8d62d655a4c59a36e1aa102305b65abb5e1692dcbfeb85e2640401469dac7995488356fa0a33127131eb92493cffcb0d837c4251dcc95c5861b9ce6ed0302047c435bb5006630640230155c1024c7502cce9b58c8f8e1578b70a743dd10f298f5be3c370d40e8e674de78ca308006e944eb9cfccd98abb0d9ea02304c0b800c3c5f752c2c6c7c0f695468e0d38a31c4fbee8c311cfdd88174c55f2e286a79def7484c03def8b650ad31b7910302047c435bb500683066023100f0eaf9106e0378e4fd2b542ca13c13555dcdbf4591d8422356a3392d2a63ec8bb77e4dc3d553c998d2ce760bf4042b7e023100e7f06b2d9fd517fe363bb30b8fb60ca5a7165fc6c519718968cf503f8f2953e0fded4c0b3d17957815293ecca6434a210302047c435bb500673065023075bb588664f2946fd576986c9e5a18c42bd5b5746150d1935a4fb82a0c59b721366ff67f4125824618a486d5d9c4ccae0231008c3a55bcde54312ea36475a3b00d008ac15b4eb1d567e2d7e2cfc37abfc78561f106abe328e00a26464d4f086d39fc4e0302047c435bb50067306502301068f4a16521a5ba099eb911f210fe55d1c620ffe8df7ef5a322c70afbc886f18c523bc57503255dbf74dfb4947f49fd023100f4cb0c31c48cfbd1973f1ab871d8bda457b2c3e35ca84022bac339a962ede19015f990e6c99767879eda1e3d09f4cd370302047c435bb500683066023100911328714ca8d53309cde13b003248351aa7462249384ed873d3ff611bb7ebe64b87bc8a5506cbe2272d94a4840c7a3f0231008ad086c4da23a9444ac7dd1629f20b02123c6455f87ddbfda55af5414cdd5062a43a82ac9a0e15b258586c20546f58720302047c435bb500683066023100d7fe24e61a1b0ff8bc1d527e49b24d856d37d3b92edfe3e76e7126ccb339a6846cbd72800975b323169b82ce200244f5023100fb8d96eeec2b4a2b44808bb1e8175abf27500fb30718bf9601e35947aa3166bd683c40389caa14cdd6bcedb8265e5a550302047c435bb500683066023100d8e8a4c4c393db568b7ffb08c38711774d77cddfde4485fd93d18f6091c3de3d8ab494e02a2064c6587a6d4ca1966b13023100881d1cfebdf070e36ee40daa8e6d72beaee3972256ce57185f2e5b098c66b08f9e20d653c54b2b622865f9dbf62ac8e80302047c435bb500673065023100e0251ea1370236295ca176c76626c58bdebef31307d70959c286ec8030508d38ba0d14aba40495df0908c587a02335ab023012699075ecd3a64580a5fe30452b40bdd4a9a16a605ec7a9a32e9fe5f6fc1febf511f2d03ad5d99eedca0e0686acd33a0302047c435bb500673065023100a6ffd87c361b6a9ca8f72e96702396e031eff963699963f306e111c00bbd657c946fd27884a7163dd2d285b0b82116870230450f7fb3506c93607a6f3d80371e07ebacf5e976e3167b7e6b8e93f4ccc3c8d70c49e5b0873dd3b1d811cd0ad7728d640302047c435bb500683066023100862da8588d58a58e4c09740130c293d22ac3f97af432c5af22c93447c07cd6236d238064d03f46a25284bed0bcc908760231009c7053115d1f854a38972277505ee019c0b098a311a4783f7c42ef5091e258a2be39b5d41cb04b010c470eab4043f9c50302047c435bb500673065023005fcc6af1198a47aa7252fd09d7466b5d114844caafceee90aad97d57eeb4004d9e72ee3b4bba14b6bda5552dfd9e1a9023100931e218e62792da107dd23e27b1dd8fe686a26d82950d70c51eaed0105ed1332a3dc258ade4add675bf1754ebe7efbe00302047c435bb500683066023100ff59fb52234189832896f4e329e55b7e17197aa208724e5f823fbcc4eb3e00a4e972ac7c7ac58bf43fdc25eda78fb02b02310091aed07e68d517e042cc886de8fdeaa148871f9e716bb8b3854f5309e94643f09740599c568871018bcb11d5a992e0980302047c435bb50067306502303b92795c36e1170ca8ab134b88ec9287bc61457f0f4df266c47c017bb7c45ebbdfcbb1af68d308e9555d0402c7abfcd7023100bc9b08163aaf7ee7877308119f90dc8370ecc77455f890c880566b64d57c738c94165ba35b0b7a9e53cb1aeca4440c330302047c435bb500683066023100ac314f66943cc569ff8a0ae50f3ab356d9ca4ef155d1fe76453a0285f3d2a26f3af3ca23f955d99efdf723ed3c121793023100af4f9dd0e6f6987dbefb49e9c2998a8a2a7e3397d97fdcd2930127d1b7547a21ba8e253dde6acc5e5488cd637c39ab330302047c435bb500673065023100e3d98740f7b500fc3ab5f4a2d4144cc5d3029de1bf4efc1e166970d6bf5564d6f95056e27071d5ddbf5a2b96934bc916023076ad595d877540a7459cd5cc8be1f2911ad07289fcd919fa75a0591059fc3afcf5f3995d942b025ee7f37eeaf906e51f0302047c435bb500673065023061def512ac553ff790cfb6c25ae843b6f773fcdc5ef69901e0b02d292ebe60893aaa6371e3d64002794246dead6bfac6023100bcccb00bd2aa0355ea875932f5ab73089f8ee934f8fa10c395924290e2dd8fbe0ef7aa9df5a69181f2ecef2ebf828e500302047c435bb50067306502306b8470c4fedeb523d3dbb0a72a553f340694432c66e3559121102c97ecbf07ac0a4ad59c2dbd8ffcd997e3f0fda41a95023100dc65be6e42da3793ea8e25ee428599c0d66f5f557f028c88388e85fbc974e69b53e8ac55ba3b9cb186e131f545da060a0302047c435bb500683066023100db672c230d59e4e79ec39653d758966cbb8e4382cd16f0eece9239a7b4c7657ecd2fb5e29fb965656f7142e1b1cd26b8023100add7cadbf476d79d376ff887ed2e625af85cb19ad2e0597dacf4ef7dab72aa33bbf151adb94910157cf5e08e7d09559d0302047c435bb5006730650231009943482acff0d501f01f096d3a4ed0e7927c2531e339a88e7a2d25c4947b04b9e428bbd09c4dab8839ef81f88b880028023003b08fb10f562618aa2d0253b1fb1c22687ffcf5d78f53c4d54aa45183dfc4f20c72349aecab90c57bbecc3768de008b0302047c435bb500683066023100eaa4268b9cf8325e270981c313254cab29413c98746fadbbf97ec60167d9027db9a882391d792bb4893b7d8b14d9f042023100e6d19a21e2e1367823644542e24c841a32f7cbdc02edd0e9a392b761c83c65c8a92770e06cb4bd27bcb76306b114d0b70302047c435bb50067306502300a1dc4cada65eafef1d5c3d897157e19f91dbdc67dcff28eefd8f51460b29a5ed500b48e9d77c147906967af01b8857d023100ce8bd462a53e51bf49b04768a306a5b7c77247a86010b1afbe5423da4e6889e0a6269a47c54dbb543a9367fffc94794f0302047c435bb500673065023100ccf67ad8a494ed3339a96c04dfeedaf3c2c60ffe203f160f1ffe32d3d31cb93be1f5ea45c3c41b741c9912378b6f81ea0230091d0724abf8fdb1b19a377e69395f8a93f6d699b1f7acb02321a4d0210980661f2d7f5149a1f42b6762b2c5b947e7350302047c435bb50067306502305408664568583939441dec021c624ba15f2bdeff7923d1b449159a3cf45b92613a744ff368df54df59ab36e29f919120023100c0fb3b0f85c4d6258e1e32b3e570d244d8850fd206e4710cd17f38630368a461a952c0da50c3a15e9f596b352ae63c160302047c435bb500673065023100c28172c2ffa125899db376da9d1ee36bed526bf5a410b9bb253658514adfcd2dd98dcb3319be215cc9df9973c6a359f5023051509715c33a1c80ce0355aefa88d8b0966cf3fffa20b3f3b0116055e51abfe5027a54d33358fbeb078befbe848d5c400302047c435bb5006730650231009acf916337a926aa746a659c883ce282cc2c0a426de62649c37f962330ac40723435e10df656ec3493298846f4a3afd102305b9851b473fb33ae32e566f3043a6f2563241c87a592a838a2fe09850c7b420a0f7f045f559a575a2c5d5162b63b7a9e0302047c435bb5006730650230407089a673b80d68bbaa61cfec794c1ae9489196c2a15d9bb20374aa23f3ee33c4975812605e81725263ef72ad809e64023100ae30cd5d93f2d89d19710dab9adb3740bdc7c55818f41678730cff0b43a360abbf05f68d5206901c4ca71528be24a86c0302047c435bb500683066023100fb10a465f42eefb7a765b8a14f444f7906379954244d8532da830ad88afad62a96bfe731b1c8ec502542388992a94e56023100acd892ad90d6c4d00ca28fb8ae152f4345714515ea4d017b8cff1a5709b851b603c6b1a62595b34813bc8f7f1d56ef7f0302047c435bb500683066023100ad9a5da166c0975edfbf36ea6a88fb771424a5a9fb347d4c52b9876706501822ff668684d285daa07c7a906b40068638023100dc4e58947060b57630fa9cc1d81d1f95ea3595cb4e3c23c2891615e5705d325cf81d68d272ec06efdae86ccccebc0fe80302047c435bb500673065023100a97f33baf8f3a72239670cacd25a8a02f49ba56cedc20db6c86ff74624eec312d961d3007733ffdbc22348cbcdf4740a02306cb407b74443bd44f53a9ecf9e5a8e28d77255ccfade4fe4f0560ad3e4a06691514e90175c5b96547b72f81ea9f2b9390302047c435bb500683066023100c68c03a07259972986499f1c98c2c06b65d490b03de906d4ea5e56875a3d6a44e35d2ae4baebd2f79f01bfa7bc49a8a2023100ac97be0de1f0a84867351aebfa5506d46ec719bd3d1fe507d10ea897ad490b1d96260d1aca9f6247fae32ad423e629dd0302047c435bb500673065023001774a0067a9faf93b579cd81320be9d88874d4d94df9779e49cbebdb0a626f0a8bb25013c1832238b2821761635c0ee023100de91eb57c7c1666e3cdfe65bf33f5554285bcc2b37eaa59d809478a440b4ea793b2596ffb11c31dfa9567b1112d147e90302047c435bb50066306402307e355d2cd6ffbad07782979e5f6df5669cb493d754090571792bc9db5bf9fe0a28d696d7f1f5d9c605fa7c0f0575185f02302a5769c7e8cb80609c4c21cc8f6841594aeda213d1e6d5cb5482f9f0d2979fd12386cfe2473db85b6104e57c95994d7b0302047c435bb500663064023043d558a27143f9fa2e16e1e36c4a5e02c9e84460cb29a46d09048bdbc18387ef08bba69bcca235c7c1266f37482c2c6702303797ed56d1d7d4c795b3d4ab717dab7cf879085cf102e0993022589c5c53ab8364860e93785acf56048baf8d1e871ea20302047c435bb500673065023100b4cd7e340419abeb20b5080e6977d73ce69b917e1cb36fda27d7e6af734d503bf811817b93890dd6d2d8ab186155eea702303fb498821ff703f0e8d62315692d6437c0ce60113b997d475b24aae13d191e8da38d66cac285e4ac7c1713e107d4f4d00302047c435bb500673065023100806f57001b37faab6fdac7cca3cea62d586cfda406a0d4f5c37e8d7f8160be6ec550d1ac1eb73f3d8270a1ab03d2feb80230715fc05d2d1c1a9c578dc7e0c9adbfc7ed1668f3be8e2266ebf64240c432a566759575cb8e52819f75648d1feb6c5bd20302047c435bb500673065023100a1200f436cf10b6f91df594102cd5b16f0dde4064695fae43c91b47786c5b5989747e9a0ea331d1858ba1c1b05f1eb3902300b3198f27cdcf44264417bebe6303b463d2a8db5beb7c5bad8dee830b84b3b02e2137075a674e5053524545ab081dd4d0302047c435bb50068306602310093911c8a70f5f4d4ba3e34dd36142abd5e6f45eb5da330f1acb698f1af42a73696b48469f44da8dbd35ca579053e8646023100a0e737bfcc5c9dd1458fac9bafbd3376538997fe4da5ee46e9f52be4546b8bdd5a6645cb7039368b6ead40e1c2b510370302047c435bb50067306502304e5718902dcdb1189be6f0ad034e5c97d990b27d0d6e4f53b7f4e435891c2177ffac2efa5940331a1c6614c6fe986c1a023100ead0fed4d2d19bc77770a7bffde3f861f70aa21620e3d370537a98c5f2e929d21ab4285049ddd87b18523885fa5666690302047c435bb500663064023053e886caf602eab7dd06a1bef1776b644e3303cfa5eb2e621abb7f15d6946faf98a17c0f1198f4ab8866da07469cb0eb0230657879e22a386cd22b6ebd117c381ae347190d379d824061435052600d7b7f11eb72ff2d8333b259b85739fef7b5c81e0302047c435bb50066306402304eab599b7cbea04d8eb7e9159e4e99e0566309ae2c526d7bdfdc38f88874ef07c21bc415b0e2d7f77bc5efe432b70d210230642004141dac2dd650e5ab61d1d7351befc61f2be80f10c3fcec3d7ad0eaeecefc006eeb4104861fdf95afd51b79d6c10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008b238a30325fc81df75ebb82aa5ab72cc8687f035293a7f5b99fd6324902d2413f27b1a27cd82eaca8f9d2164dcdae5702310093aea0ea2aaa4a91dfff2e34f6c412cfb070547cfcc42342a4860ea3b29d03b94b9702119c0522c9865056da910782e80302047c435bb500663064023077adb91d66ccf7fd506c5f801968909d159ffb8c85263607d1e7e0d07b64b87327a010c5fe5cdd341a2c877b3a904d6302301a8f6b5727380db7e53cba1421e767ce26e1e8a95746ee19d51f48ccebaa0bd42ea463c01d8c43fd4a25384c3fb6959d0302047c435bb500673065023100f22fbbb7a892d6ef1bdce05565d7dcda951a2a9bf54c1ab0bd40f1104693009677e23e6f4a151368084e8e35db5c883a02302c159ad365ce99125452c84d3268d534f0108470d3d2829b23554ffc22a5d82703bb16c680cdc7fbbef9a7e17fa028a30302047c435bb50067306502307a87bb88af2630c68343e84bd810e2acc687e93a38e54e9a783ee1e6e1d3433d4ebb899594765f13968c9223ea0f87b9023100e1c259ae2afc10e567bc62914b3e430c696352207ffffe114e579a46737b6c31a0c34f4f34ae71dafa9b188c82c7e7690302047c435bb500683066023100ba44574a542856ac63521777e03cc18d31cdc218a1f156a0b5828a910ea6fe6625da9d343d396e78b7bde61dc577f84d0231009efea6c33e34ea3907aa342e854e90df421c43dfd8ab47a3dca5a067f42a7aba0fdb76a11103b5d11ae7c53518a38c350302047c435bb500663064023003a18e9a30ac60f547bc1cc629815f77af5deee8db141958690bb20962c3fe494f9a789c1582ae4863a2d58c4ca2366a02305c2afa81bf642fe72f0e4beb91ee3deaee8f79d13c00cae1f572ae4206ecaca225bfba44f1d2f76b2e8a751d60f4e8aa0302047c435bb500673065023007c1ccb3d7343b875e80f0818b84108f3bf0d1e37f205e357c76c69890acfb2796d046aff7da8b4fc75ac4944d529871023100a8f9f99f5f9ae896c3b5cd6a4e8fba86d4f63b3b8ca2bc82163368e12de963584cc4b240404bb2a2c7a719afc114c4bb0302047c435bb5006730650230413d581aa92f2e046055c0982d3c4bb6a6bb7e4609b0c6c520bb110859b77380dab9832866284acf65303cc1d128396e02310080603b621890f5b1a5fe42ddb9302b15fc9259bdce3b80ab10847766c03121f059da04298b9924164dfa5f6e4c53c7790302047c435bb500683066023100ba8b897f8095693e04fd45c0d58c111f07d18000de8f6e09c42983f69b59cafd4c8d5300fbc52365db9e613e93626abe023100fb8bf1c122d7a2cdeedfb7611361ef239e781d7f155e5f4dd9f309a680135d71b437b8ebfd76010cc261b4f3a25ece920302047c435bb500683066023100c52622fd66428ecaafcfb1067427022a7ebf593a301995924b680b8a87d5da13824eb97a3f907ced16f54333a47115c7023100e038e833d22281802004786f77e3a712455ca0662f05fdf1807129fff565c30cb8f8f258bfc6787221a5999b587f11cb0302047c435bb500673065023045557e8c717d148d20b40c3fa3124060d3ae0c02a8c39dd8e524f37da49d33cfb052807e3cfb3d6c968a9758423690ef023100cc841ac4d263abc8ceb7eeea64ec9846be1c98199fe9e793a7ad73fc8b329bc2ddcf17570a450beae4f848b7117d1c1c0302047c435bb50066306402305be54aab8b6022288a595fd9dc3cc4163247513e0af9fb64ae207472be792c1d007759d15589e43c069726332335f029023047a1b7e6c99fc29aecd529c355d85692066c655e6bf8644ee3adf51e3dd19ec710bf2c849846246a5ee479e2265322130302047c435bb5006730650231008d45a0ab4941b68cdecbf5d76f7fa3ac744e106f1574971a88acbd29e0c17307d1f3af4a319dbfb376bb64c410ddef6502301c48e0e09dbc7f69263c6a54541f3ec0dfa81c462024aa9d7e9972bdd579aaa3ebe67e483611be523ce3638643f491600302047c435bb50066306402301f6b8ba42a321ee61acc3053f6e423aeac07c7d4f56a0f255c0d74cc3b9512a3c8acf890a2fadac13994d13d1e2205540230402429cc9bbfa68c6c850c6cc2c267ac73188f5ff93572440e2f5b3bf365b1deb0752a871ac157e4ac0364a5470ad1650302047c435bb500673065023100b06dcac974a5b36da8cf3e478afd6ed46c85808cc392649509ff317d292b69918e7bb5aeebdc0fd6e5d3eee01e438d9a02304f660d5eec6f1e9b598375836b4abea4cbcdd5ae6334cecccda9da68e4341a41ae1d268efa13c2ef5c836f22c4fee1e60302047c435bb500683066023100fd100b849929d9235879a267110b41629615c8c24e8c54e5710ff55e5b3739a7ee51855ce352c9d433b28eec0d17d25f02310090721d657e5bb6f8402a387db8d9e191dd3be541d3b5f5825b7a32edad95dfb9493189c53b33f7fbc9f662c71f5d16230302047c435bb500673065023100a05b93f4280f0d85cb6d9e08101841a9aa7e6d828536fc4d0efa0f33c3d6c1d54bd7aca5bd6016e9bed5dacce883cb4d02306b0fe9ff7e4076aa5829d7bb29e6bcd54743471047517f6fca205576b42078f9f21ce8f22e5f5e13babe56df77ca42bc0302047c435bb500673065023100f49464cd2051c837067e37568731f2543595601f8a84ed5612f2b6b045afb3f76832d34739f9366ec3c11bedb7b18e31023033c14493e07e47b35696dc253a7a91f8e39e8e06006f81d9bfac912444527d2741805fed12deb1195e0d292fe4dbe7790302047c435bb50066306402305c2446204d4d56e3d2761d5114b71d8ab3c3edfc8d8f56d272c643237657227424cef64af6efc006ca4c35528e1deb0a02302d5c8cfd4b7fef6f8f407fa46ed370fe447c4edca856544d57935c8fb86870ed5936f46833adbca4d4df0f85f2aa22e10302047c435bb50065306302303443f6d658e2e5c923137fa93940144c75369ce08ae78bbf227cbbcd70e93a7f99bd70b82abb26f885b2faaad437ce4c022f651ab03f146673f590ccf07a7ff0938d2e68acc89ca7d5634811ccbbfc0c89e36a94eca8cb0c6f6f80258647dfa01f0302047c435bb500683066023100f54c05c31c8aca61c1ac1365def418aa5a973b535bdd29ee7d617fc164a518c767acb6f736d7fcc5c7b8813446b2e5d3023100ae1693520137bbc6fb6e8ca0f04a1d652719f4272d17e92a08b8db76535f005903504ce36b904e6dc913c33d793263bd0302047c435bb500683066023100a414e3c0f5eb3f12a783aa3eca9936d303f61c9b4c662d72549351e47afc9d83e81cbfd6ecc4dc769ece6e460a9aaaf002310083c81f14cb185cd411d1342692192aac8b09d1f1b17aa9572d4bb8c1d9d09be6f126adf59044fc5ddbe51fedea8d97890302047c435bb500673065023100bdc538c02c05c5a10ddb0470f6f7261cdb1718b7890bb95f81b1b3c6549a300e6866d33782c61a46ba466e1193372cc80230310a615790c7034dbfc7218acd607c32295ddb2c86dadab076889204567ee40f4afb7f480effdaee6e208b4bc8c45cbd0302047c435bb50066306402300a61500e09fc29731acc92c2d9246a515de96d60d147babc1d6d7ecc4496c2a6614cc5364cbccd6898b15837ac388cc80230437dc877cd5ea18a7332a6352e2583ab08a2a1eb7ce8ad9c52532201d65104527559d18cf796dfa864aa06d4990a9b280302047c435bb50068306602310091e223c00050f964d564400b84e963149f6f5dbfaa1b7595674f333308d12d0b8f1b27be8484d8e1a679a14224521a9a0231009b4b6310f4d66ffcf660f2e4957de7e0dc7765bb5da08ef6b641a8ff86fa8d0ec6cc4c3e7fab8baf2d7e455463e36c460302047c435bb500673065023100b520a8e5a4d96e609be43af7b573f198797971629b424ae1f0a091420c57ba6cb9955e1df4349e71d0ad3fd0a360ef9b02303448329d0a392f910440a899d6ece89573c54e3581dc812bfa48bbccbab354fde1d59109c3773ecfcf023b076aef37e30302047c435bb500673065023041940856fb53ec69ccf16723d3dcbccd922fef5f0f1d14edacd6c35703aa48186626f729bb155d4f758cd21bb2a3716f023100bc16f775392ed41f22b03d2ad4afab731b201354fbc65ab286cc6229e313f2c9f07e501c9f4693b3f5eb74bce7f1b8df0302047c435bb5006830660231009e6fb4acdff0224a4a6d5229ffc4dc1d3c6d9f16d5345f8df2fb371b399a63b4420056c33bcd07f9fa030fc17b36864d023100ca98514860dfac7aa2dc12927ee47849c83c896b198a3a599403d6692b186df3a5bd60c28067b98be429e562e26485e90302047c435bb500683066023100bd4f42e600a970f6cdcb8a1d17554ca0d4ed7ba3f2cde1c3f291743998070436a4d88b73d8c47548729c755c0af45fe3023100b6c03778ce15f15a6f09bb93ca205d632ab56c1ee670433537b6c3cf295c876fc95c0075898b19975b49d5776e545c950302047c435bb50066306402307ea636a4229dd734489df0167cf1968a7a8eb2f9cd68c1880251bc8462025d75a208a3c3ceb7eeb661206dad85816052023040fd40afdbbf40b596bb5350b804723c309ef9edaf2e3d7f8d2ceb0902a84e4538d7da2958a3b1e97e7cef184d0683ff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302a2078ea91458d55aba76a3669311f370983be4654f972bfcb7390508f919e4f76169045057f9143486bb60a128591c102300d14c910c6fb3463434642fc21606e3ec616955a371f1c07448bb777532dba0657f95fe3bb6278eef0f90e3f61d4c3ca0302047c435bb500673065023100cd381ed8ec1f9758ff4a2bc408878189896a8ba9ff8407eb800255803b409ae90d145b3f415e2b95e1dc590318494007023046013af692c7348a5ebaf5e318ad6e7561de764010e87ad8ec51d44b45f2fda8083a73481bbdd755f309814dcaac62be0302047c435bb500683066023100fd05275e024ca84159fbd0882ce35fbd8db0ffa7d11ddfce40e686a0b797b71c558ed47afc507d85f2d02705b4ee7b8d023100c770802b7da83880de6b116b58f6a90900823597c7fc8a79c2262dff7ba7d0e899e7131888d6fdc8dcba1ab0b783fe690302047c435bb50067306502310088adcc35a4867265aab47118961b287e3afcee0563e64a73f12ff49ebcc5b4081d7be983f3eee4f4b629650962692b8902303a42a13d434c032ba38c5a68cc09578658746918da28be9ea990b7ea83565c5e2b10b5663b98ce1e267ea13aa3773ebf0302047c435bb50067306502303b93bccf2c311910eb833f4518d00e6f23f6f0b89670c43ed22221129dd60346c73aaa530a335f53d6ebc0bb69c9475b023100a92c63f50269fff87e17233c1219584b3ff0c670f1fb48dda8d7d0d7e03bef22529f3fc7dadbf9532e2913c47b32d1c40302047c435bb50067306502306d4e7d05d22c62cc75a244341c3179d69914b6e025624eaa4004005075ed53c6b02ae710370c46852c2a92e4e7ebc40f02310085d2a51b2671867fda500bc42880856167fc81791c844c6d0dc617ca9de3fbe8a6a3da8aa6bdb9b1eef6b2e102a76c9b0302047c435bb500683066023100b2f2b76582b53977f89775eb291369e907953b621f64b4087f2cef69d5afa8a758f5f60d33b044f75be4977b41aa5e89023100d2b7408e769bf497a3c6a84b0e5963bce744d8a8c5da1ee5529fb488e7a3eef886d3a759c6bec550426d6b0f47080b230302047c435bb5006730650230141336ef90d0cd5aa5ce47641e0f2bdda4d3145601e81952dabfe67abfb0c90c488a20f7a5a5debb04b0ef2da45d2f14023100e93f9ae184eb3131c7a631afe1fd5853a3083e3b82bde8e02abb542a929b7b1e9b102bdc8353eb4717b7371cfda3a2760302047c435bb50067306502310085de6bdefe285fc060317e5cfb6e0217e8a45d5722e0c80e02e6d4abd5d525ea298e9acde130e16d990a59af5cbb960702306ae63b0cb3abd679f761826054c5c4bf7cc2baa26bad4a77ead7a29d5cd81e27a7813964db8da49084e5563c9ec6dfb50302047c435bb50067306502302a182a6ca3954c3aedce55833ea5685b9c63c0e4156a458c832348762431d0304723cc7dfe40391f9b44a0d16937d1be023100ab9caeb0beaee861b74808556a61b0d34c188899c07022fe83e75a8e5d6e320a4ae5d034ffe7c0318e886a3ddfa5b3da0302047c435bb500673065023050730572a733d1c3aa42268dfb114dbf66c916af8d3f06598ef455e0f79885127519a0267b359d8a453aa34ed1da027f023100ef82accbb6644c7cc52b69b17f4f715851614bb683edcf02003ea0cfca999f89a95f0290d91f3e2fff2ab92bd7b101a20302047c435bb500683066023100dd2eb8418c1bb54274769c779e3a3311e24079cc1460d8e3cf7f9d149efa4dea1ff95cbec72a03a949faec1da30c2349023100ae22ec2cc165ed824b9f987a234f95f71b9ab0711a3064cb0ef43a8103d77da510175044e421989d63721cbe4c4fd5c10302047c435bb500673065023100d20252dc45a664fcdf5bb56d53b5be1c38736bea22d53cfd4a5e7e4b4eff308f0e624906f825c34239a8de3de93eaf1a023003eff369db926685228a8ffb7c1d0d81525fa961b6861c08c1fd6ec9c2ec1ded40c2c27ebfe48436e6b088e1afc775cc0302047c435bb50066306402305a6c2a74325a504d79bbe4eaed3b343f3c4ed0fb3bb6ac73fe5c0e21a27caf443de4631420b1bcaf3985c063b73249d1023044fdbe9345fec3be2f7061f840f8c375e71eaba6fb733778e48d0752c16257b34c70d3c8f8ea765354b4f76732fd87ce0302047c435bb50066306402307e6a6a7a3522e752c584b2f0357f391192db627a5c744f951c7dea4b3855491734fdb698685c2e1ff778fb3edc370bb302301e763cf75d6cb65f4e48d46daa863bec7aa42952f562b8e263e3a3d4b3002e5cb907735011ee0d5792db99aca177159f0302047c435bb5006730650230558ffbd8cb4abdc9f8a4609bba03c9e7de79b56cbe10e01792a4a83b9b28a70955b79882abcc1742351ce940e66e5501023100e50f97f99e44a578533316305fc2976519429e09011121b69d80f9f4bd89ece9b88243b48d1889233dfa6f8f155e1f950302047c435bb500673065023100bb828f5ad207f287023ecc8ccb9b4cef9917398310faa7ae92039ba7e5ab296dee110aa9d2459858b1b86e6009bb6e4c023050c649f9f7a949bc35b1cac1916175f5640db179f0521854d8efdabcd60c7b3e372d4fe0fe022c31c21545dfe68c61ff0302047c435bb50067306502303f2147462edef1794ea987eab2e9eacd4499a0694ada6cf6bcf1c42eef8003b5d38cf9aba0debbef5143a5401fff159502310081582ce7d9de66adabf54ace79fef99ac8858de1c4c0e7204bd504646fed5cef17d90e43af5261732b1435e32ba784f90302047c435bb500683066023100bb17be6af21b69d633591531996ebb5785343b838f38452ce0eb0b84bc1e3e445ce6f425e7b52c8987dba84ed2975b31023100b56000904faa6bdca9a7ed99c6cbe753263b07dfd2be37c9ede792f12c0b3ee8df8e87da30dddbfe911ef4bdee8edb8c0302047c435bb500683066023100efdebc19d2ad90254a2c9ce4c3d98f6a95ab9f0003d72001ba7465414b76079762a75459382072002fa4871d7718086d023100f0a1e676d0c35c8e5cb1dca95e53e29fa29a05f6d3439787aacefb0468044b39010a0e49336ef756ba53108d137b5f380302047c435bb5006630640230223c32fbcb34b48c92eb8913d0e9c50e45ddc94869475a8169d8d570d0023bef9d8938403276d43365c5010546f634fa023047720869dffeaa3735e58f6f9cbe5d1c49226a77768a474dcf5c877097d918443e81e6c5be91204b0f305dab858f98320302047c435bb50067306502300719b1b3ef7537ec824efc5132d0f8f45fbd9f773adb06bbcfeb90931d404f52ee812be66c712736c918938d98972b3d023100d634b0b55b7e6a9dcd84bb42675a86f9e839b6fd94a1c17f0a416f0b59cb5fed032ebefafcc82e030c5c32bc0d31e60e0302047c435bb500663064023001437c301699ab90ee927a9108af30b968321bb00136ca46776efc0cbfbbbe47414cf275fc4ebd6f4c947548ec11ccb6023067a2f60d6fb631de8cedef30fe32e0697b7a06a6fe62e80374cace00976500b141ec953cd7e63469f654e7b3482542260302047c435bb50067306502302022d36372fffc20974b64d7d7fa76b270d8464e7d87113ae1db87823c9934651ea0cd05bf0e635c4e67987405511908023100cb1e699ac796acd90d25a9cc18a6c8ffe47211bf6d02dce34deb6fe220f7865bc664c463e7bf58c7b1ee5dd1aab3a3280302047c435bb50068306602310084c7bce683488197dd4eac6bd4394dce09b039b20e260c8c1cf06c4902038ac8200492ae121e70e3025c27f980c42d0a023100af8b4fb36a340713cfed374cb45fd134e861d2f0cb950c116885a0ca72c360862a5d7a1a0d90e1a68537c2b9f8ffe12a0302047c435bb5006830660231008e3b35e8f9da89b8fe5d7a9b48b80aae0115ff102ec37d5d67766c6b344776b391ff73cab4c859cfa6047e1816d274ac023100e872ccc98705aabdd051f4455a6fe6ffef06736f52f12e493a10dd94fc2b9de7f63fd80c2380a09738584841b49bce380302047c435bb5006730650231008cc2b08efa2eb85f9fb236ccae489836eba88ebf6f3fd6dc6b85578ae0a0496c7f3ec34cdaa4ff701b6520316524dbc102304da907cd5973d7bcea3f618efd8484656abd15893c61af2627458b866fc6b7284d2663a2204fbcc97a230440f1802d990302047c435bb5006630640230535cf03a9fbabfeb5a7858372b5a81ad67303af92f9b1261184abc3160e5e1131776d89d773d713692f78b80e1a49cf502300f50eec6ccb1b45f550618d2329bfd9ddfbc0e5b72d95a64fb242d627fa207b675df06e1597bf299e501c259b1ed84ef0302047c435bb500673065023100e9804b4e11915cc4a839a26653de87ac8c55fb8756bd385a83eda84cb8102a4510dcd75aad7bca45987366617e6b3ec702307070364cb5c2ff0581b9da90b84f5b37cb77006f0af27e512ef54c0dab61fa800565399f41b9f45734f6ef53adf78bdf0302047c435bb500673065023100bf1a2ff1dd142f3e164c048b3d4df78b4c71e992613f4c3b6f32532c24a1578cc98394744d947ac88dd5e21ea792e11e02305b1aa33c876397b3c854b2efbe0a8b1295e2cd43048d3ea60032996702cdce0d11127964e9b14c41609353ff768657790302047c435bb50067306502307da63d3b8fe3b3fa04619cd6ab65f7033fcaa2e2c7a0055067e6e897b18484616fa6f19784804f3bd826ca515d3a0c70023100a70e37833db340cbf44fea67cec1503af24f61fee579a4d40b7b6180989f902eceeebbe34588a5c2eb4c7c7ac8a1e6640302047c435bb500673065023071288b626fc8c91f11919732cfa4b855b94e59b529ebe19f50cf48665dd14ce6edcde6e1f771e681d78c042189f51112023100a4c719b3b8dab9febc4298ff86040b579972331ccb7e605c085c1cdfaf082af2d7b4524fc68b9860c055aadaffd2ab4f0302047c435bb5006730650231009e479a09132e1d9332d31b4d496a4dbe9207eee9f5603b2273cc053ac5b26acab344884ff90f293414ada8eb6545e3ff023029d63714a7c978cc37a38ac74702ba56603483524ac441f8689d06d04b2a37dbff4003b3c59b0745d2a8f46d2c128e650302047c435bb5006730650230790969e6627bf070c8ffb00bff6dae49b7d61ce55b1468c28285d8625c4ef79b64ba1fefddae0e2bf589ee4c33697d73023100cad0f60cd4b34fb0952ac27765221f4a249d8b3cea9480bb0151da1595cad7e54a61530ca22c6683037d2a59d867bd8b0302047c435bb500663064023046163647fb516445efeaed2104ec3ba0376f35df72518382e84d9fc913e5e73df95c60a9fa4485c563274f15beddc9c802304f82ea4fcc9f206409c0d0d687bac57f0cad7c893922439ed13d9b68a77145849ff1ad981b740e9d1cbb7fcd1d5b87dc0302047c435bb500683066023100ba2917460040461f01ad64876749ee49b82db5c5b16125f26ae947b50d142da3826bb7c838bde8f6b236f123043244c7023100da6eadcee64b407b0ca7d0e7bc038533dab5808cd0900e583005c9c413887fdff993de6bc95bd05a07d6fe46835576a20302047c435bb500683066023100eb2471f9ba3bdab1c3361467c9058506939f43e19429abc663462a3fe1a8f4fb4624ce8311c9fe93a32d71616397d1fe023100876d9685f7917893ed8b09a117a4018ce03d24d850aa39b753d18e00241a276d371b23e447536a3181579f6e12e638ba0302047c435bb500673065023013a6fcd6b65a630cb198a969ef12903fd1bbc168f1d5beecb46c4174ec85037adf5f012c86913fc42f699f6e4861b7c6023100975e4a6bbb82041d3c0079386aae1cb89a9fb311508d70b00645547b7fb6e645c9fa4b7c8cfc33540b84ddb8503caa690302047c435bb500673065023028d1262f0cced97947a49242b90e0be020a8ac44b1673a14421060cd26f572fba21807633e5500a86c76f2c326e55871023100dfcc51194db32b122b17e726f58eb8b84e83830e4dd3622cb647aa8046f69bdc2c749f36a0195efe010dc546ed1bf2d00302047c435bb50067306502310083371720848bf098a3565760f928f69c07f30435cffa18e1a6c3a4301bbe5a1f41c53a64959fe0faa760667acbea247002307e582336a53a210fac118e5dbc80bb351c0f4533ea37e7169729e295ff3ff7a997d5f108ecae665d023bc8fa117d04af0302047c435bb50067306502300d502c5dbf89a332c7dfeba270e73ca92ea40947ee78f1b1fa938d949637e4921183ac3466856ca01f9763c2e7e99bc3023100eed2955ecc75611e9b78b52b411e2109c21ff238b723cf12157c34b47ba6ae3d0a27a99ebebfee728f143e4d9bef0fed0302047c435bb5006730650230151bc46857cca32f4dd32b1b31775ef4004c9d97b49bbc46468e52037762829c0c85a155f0bdd3df8b2b961aa0cc05f4023100f1ce92a654b45118ef50532742ebc6ba3e1f460b4792710551832d881ef3551cbd7477cbe671ac1f98adff36907505b80302047c435bb500683066023100e0111beb43d85ff5902700d8434aa8363e978c4b42964db109422d635112c70cd6ccfd9389a1fe04b4506d85104432ba023100b3afa7f5c6834098d5150dcd355df7b7de2f2c79fe9a8248bc393aae413abf759186031c5e5766c9bf180e73efe706f90302047c435bb500673065023038461da52fa17d4dc031a11ac76aa760eda980b380dc2605babb089001c4d174a3480d7b6a7d1f34334282e5d4b37af30231008c7fa076baa8ad35f7f420204f63a38b7493792e915d515503bdd85360800ac629a85bc5040059a1a81b196a5f696e760302047c435bb500683066023100d5b32cd223cb018140652e65dc167b292cf5ba9edce6c2ad53d3729c7b92325703a2db40aa64ee6283930bc5f78589b4023100ea59156de7ec4a43c176d582da75a1a231f5bf8d1bc293dacbe3ed15c1c6dd262c11edfe68f9fd6c98b90c6dceef87720302047c435bb50066306402307ac114200515eb940e11b14d23e09885bed17aeb505517a1cfc2507914173da72d6077f9a09559269031d3677d31290c02304781f40bef4ed688a06a62d8a1f1aa5749e1f23c441086243841b095e096028e99caa20a5e6758df69f33da374d4989d0302047c435bb50068306602310087710ef001139bad99750d2dcc4d92afc55677d66251bbbdc6fb8bfa3ccc828aef414a311aa220b3e512744b627305a902310099e501fa1736c1ec95bc08cdcad6e9b6c09bc8fbe7a34a359255eea546eb757d4bc1c6a58449c8a0866627aeb6bc376b0302047c435bb500663064023029f1da3eaf1209d34d2cd6384cffa83240999ae02a0612185287063161307df66374506503aabd3944ff33c39edc99de02301d9816e8994f86d1f23feb0c49b24334686c764c88edf6108e38160aa3d25944508787d5fad3205bd8ef29b22b9c34d30302047c435bb50067306502310085552af5a0e9e206f03a7563e63a23d3f51119d7919e086bce83279a7482f7c1dfd9118ff0cde0abba02917bc4356b2902307e5d4d0609969a490f9440f53d00d52282842a5032dc26fa60001cd03ae029bf98de7dcf94ae16cfc1c8fc1e5fbe6fe20302047c435bb5006730650230704372fd0cd25b74da4a83ab11275577a2f031b1c19d95686cb920519b348e69ad528ed5f73a97126ac3e0f31ec68b7a023100f6c9bd23a39fec9aaf5d05731b1e7b7dc65fd12401517edf968a8bddaaa8db50d5ec41d0b142d26e99f1dabc54497f2f0302047c435bb500673065023100a31725d988eee9b020b782b869315632bb9d39be8d796c468c979231c48b774ecb8db136eb1177c65f67a8c00fc31a2702304b292a790eb9eabb5e257ca8847eaf77ab2a38e57e21945f4caf2761903c7c12044e36e33d6c228136540fdc1b8dafa90302047c435bb500673065023100b5c318adb986c3d8291681dfd6c1099c77033dbd0a7656e8d7c4efe6ed89cbadf9f0ccd954ee4e09d02f4e7c2f0d494b023034b45fd1eb225c974a8bdf410fa2bd0e7485ef7307f7894d275165b2be84bd146fa7ef220221f2af49017fa2228458630302047c435bb50067306502304a0ecd9672377631b89c46b175d63709cf9d18fb9036862d42241d5c7f78f0553ae7fe656d3096ec55a61d9be684250602310094c28fe203d9c006565a991f684e3a9fcff6e0f3de25633d4f15476d73a295f612ea09ec7c33435d0df37d8dd9cbc02d0302047c435bb500673065023100c81993d9eff2ec5840a2735a1845e56a923b0c750ecb6ecd6c3f2877ccb5fd400f3e8d3c1ebdbea7760c1e298e52933b0230561af36431b3960dbee642d8f2403d8171cb0287092878bf11f3f613b9518b296b24c94896665d40f9d442e9178321880302047c435bb5006830660231009b1171ffe8781ec273a07babb78ed166f4c3177bb67dfd0c71fcade61f1ca9084b58606f07e227ec7f9cab59bb34dbe0023100d52aeb200df50466c23921b214976a1e282f44550db87a398f77094ed9109a9bbeef7246f21f520b2f14c630b59a434c0302047c435bb5006730650231009fd24b2ea784fb3c251cb237e8cf3754940e97db4a8deb8d2b97ce54a5f2cd72d351b7a44bddc152841f6ac0db4732bc02301f5fd41c3ca18ba8b941a6a4928f05e93dfa6fd600fa37be182360630018e80beed711d3e3abc9228f8dd980a865de3e0302047c435bb500683066023100aa9e780bc32bef1808c5dc058d24825e1ff09b9fceecff0115495c2c1ffd39fafc331e855e8e2d93952c1fae43c943e8023100fc2f295b345b232320e88ab9fea33a01ca18c6f2388d163a2515664b1a2f50ae40155da3ac6e8a84b6d2fa3d1e3613bf0302047c435bb50067306502301dbce996e5157646b6a01653f73465eed4876d230d8cbf6be728c447add71d1d79d9cc27851d560c112003a667d534240231009cf981be6b03bba46171f09f10716c56f2ace1129bd1f0bceda569100df2c7c29767633ab20a68aa1e38af9f211ff3820302047c435bb500673065023100b606303e82aed3bf327e589457b22a1021dfbbe79ba844bfb6b5985b77299854abea7ddabaf13134cd7662510f50ddd102300105884ae7ae44316e06c64b970a62c2438ad82e97c5a95f0ea9dc98d6f2f124d12a04f5a193aa91439e9666183a65960302047c435bb50067306502302b17d09c03269fc9770653d8f7fc184226014d8c3d343c909ff0bee6634522a1b177132eaff95bd33e96c7274c253537023100c788e81e51f053370eede5b8545298d737d38a5425743c4a8f893ee251b545cd8e2d9ce39b74dd3d293d37fe1d3ed99b0302047c435bb500673065023021365f863abfbf6ec1a83ddfe5f58474cc04f3be27bac7d8b227577baaa74d421fd33bc62e7bf778d184353c3fbceba0023100bec4c45dd93479067a2aa3db68dc54b1b94664348a9797256d985feed7d2f9de377a68272c02c714fb77133cf7344a4d0302047c435bb50067306502300edde4fb7a0974df836c5e33f57c393237aa1a0170e846d151829cf1d330cf2a8e68ee630e958d43b14358898f802d37023100fe198e66808be76eb7f9164672421e0c0476a6513ef504ab03660136aa7f6f1351530c41e8f178a2d2a56ef3b97e86b30302047c435bb500683066023100ded17edf58216a205b4476d6ae27caf0535215fab047b15842de256c8c76847411acab990c8d1580cf6502b699ddb08a0231008fb06c1077f6446faca4f676f904b358f012cc48488ab813abd05f4bfea569781255a8b961f4c87ae14482949e7d537a0302047c435bb500673065023100fac7245fe4ac002744846c1f3243ef98dd84a0d9961cfaff6d19fc9ec82631b63e58637e4d90aed044813e90ea18127d0230511d3c27b6ccb35ab3432fc75f638f05cc3f2cb7f0362019321c6f008880c96249b10d1cfae7df22ace087ea05a163ba0302047c435bb500673065023100befbe90de51b8f3fa099cf4de7c67a8eddc90dc35e0c3496a91866eccc728d9f2e9790e57dbb941b04bda7e7ae23942e02301493f9a830073c26e6e0551fdca6c642a93b568fdca5bb9310978cc92b5f4d597a9e588a8139504e50d50e55c9c4061f0302047c435bb5006730650230175d4f059e8049098aac078c1a678e151c8faba8c6f3d2962a4c59a673471de3060fac8431ae06663c020733a94cd3d7023100b6bda212f85a5864641b55369ae83cba2096bbf47dcae2c5ceca5fe40df9f7d5a38d304d17c88361364a3bc757c7e39d0302047c435bb50067306502310091b8bdd8b481d239a497602315d629edae991d0e44e95f71c6f3681464c0a488ec676ba2b7077231a0ec3473b1b9ec10023067df609199f944bede52eab20d406445e92d4d72a86706846d9d0d4ce83feb005ef84aedb1d051d6a46b396c7419598a0302047c435bb500683066023100ae07f8ddb12efd84bab9276f7916ffaab742e849885b4c00abbc5ae125abf9c08d0fd23f28b5cf535a696898fe4a0c5d0231008bdff46ec31d302448fd8a7fde635ecb0be66dd580501b65d305270fc981cd74d3dd0efbc1493233de69265e10dffcf80302047c435bb500673065023051e54d775e929e98eea986c776dcf668ffc889cc8d252fb7173f6d3b98591e94285ea98304acd5c20aec8f436fb96d4e02310090eb442e7dd69238750790f0bfec20ca0eacea06678b7e22ec2d446386e749b0835c0db3c7d4c813eb1ab6e757168b8a0302047c435bb500673065023100b304a1aec23b50ef560ec1bb7d3c5e27e7cf6f549950c96356d8c86862503182a29cf018dc3fb884fc9d531abe3bece7023034eaa15b83f4f0fbdb26590f54fd635fef347a315ee1b75ab4effd08c284c913e9dc512aaa78effd27a5cfcc9e9e05d40302047c435bb500683066023100f6b1de08f54572485d8f9c1024295e7cbbc05ee7a9ec474aa44663319ba4a9a6c5fcc2f763b0857b49b6224e5279e5b102310095ce8fc4e1d1e59743fd7e67f59e505f4d5c4e1ea19d82cade57a57c1a8b452595acd2eb0443b5b1db812ecacfe7ad350302047c435bb500673065023025791d73823dad994dd39e55092d91dbc8de599e473dc1eb68561afd8128acf51a1a24088a1bc8f13d532853bc0de40e023100e2dfda7fca5c99187cc399219a94a0421ed5a8210f719457af935baae72f8f7b133725b1dbc84c444f41e09f610d7d330302047c435bb500683066023100d3ac5343386c4df740ff56f9076dac4ba36da13b8b65f2b34b5476090a05ef1ce8345746110a1d4dcfef0197b0a56d7902310089391ec9c0c1c3d5c7cc13bf4608eb714d32bea97f7c7d11b8af06b45f6e10543db533e80eae3680f4b1606e16b5fba20302047c435bb500673065023037fc19c5e08cfd54a38acfdb4d40ff36bd9f9f9c137f0d2f9f284a8329e00994eabcc090d3ab73bd9d6dd1e0aded728f023100be34678115886742ed9ba8bbb8e4657acf14e92fe1ba36de149a6fd6c3bfc0241b1a27d5a14a83eef92df2f228c067360302047c435bb500683066023100e1dbc982f33cf02b6405ab2aee27481fb037a99f6430845d5139e708ad35024735b65cbf65613cdac80eb4291d672fb7023100b3b80b6527b1d96c8152b215a8c67204974bfe67598f8da967e719f9149dcf6f4b7e14f9fc424d3efcd5ea18555de7cf0302047c435bb500683066023100a15a8bebffded5cf5fcf3c79d02b73f584d998dfd26b05dd86f15ac65fdfd729f68fd1aeea3252177d1d6dcb5d2ec409023100db7fffcf8fe5a12ae719077090c43612ee800b44f7cde949771d544e7eeaf46b40cdb4f759061a00d423fc8c4610ddd90302047c435bb500683066023100be37f457a8cc2e1f791538d0369ccc49d0ebf795eaed3eae1e106687392d978382c11e0aac500cfcc833a79eb08847a4023100b182b4ae264fe7eb10c9726d80acd44e381274f179414117f8cfef3291d41ab45cd9efc771af8bef91f9b3eb78df492d0302047c435bb500683066023100a91c87d1a1b31794878e9d6b3cab2b4398e5fb9d68422179de2784bf9e788bddb66e3443f5bc527bb669a71f54167f25023100b838231ed87a86169ec32d321b9d51f5bbfb104b149287799a0832d070d211a521b902add99dcbf2b8c7ffbc7b16e2fd0302047c435bb50067306502302741fb76e115fef5f9f81e123235bf7205a78d513f62910bf2a08c1a0c5fd50f6295a8fb6bf2bc7107faa9c0b40bb2f5023100931635c0d56575e2d313423f92b8f4901fb53346607ad51b8f067ccb1580c761cb800a3de4c1c8a89c7ec155175da4de0302047c435bb500673065023002c6284f9dad0cfce1ca38b70645ba3e86a323a5984a1ccb4b984783c6ceacd1a2d1a11a24cc0b958c92284e2e3f02a2023100afe88b4792cd0225b2d1679bc20ba4fb2919c1bf8b79fefc7522afa0b7cc0321cb0256e43dee11b88a266fdae43e21830302047c435bb500683066023100f0b2826878d39a61af1a7653ea1b3d8f58eb33deaccec8a69422470f86f58026f70d07a04d0e72d0adb81c760042403e023100c55d743087a0020ad21d0684e78a00833a3edb34582b91be9a4c2aa3f76bc60b8a7398b2cac4b5d8429bc513d919c96b0302047c435bb50067306502304c18f7a91c7cbdfb22546661ff980aaf4a99b2fe865c867dd14e5c41c1195b79031a4862b5991a7e57f4b7f2c439704e023100ffc12f404a6d128ce3c7121b765cdf7a42eac5471964bd0f8ba5fb59df350dcfc7cba2a17f4e8fe3a8848d7430c37e490302047c435bb500673065023100ef27088e8f86dd16d5c19c03412a451e1050009f8326962278961eb7fa5e2437d7931c2c1a1d4de7c2e3cf9781865e60023051f4713907c3d0e9cecff11c618b712eb4812d3a97631581784473ca06696d20658a6e584f4b1ef95d2a56b2ce0890bb0302047c435bb500673065023100e57b5ea01c2798bc652419521937d18e0a2d75e5e93d0c4cba9a0cb8cf4eb55c90d5728735dde4a6fdd59dbdf415e6f402302446742d2a6f4f52969ac1d2c197a7a63004affee89ff77f84bc45ae4361d6db62c6e9e8a976d8bdca1a21a7c0b0fdfe0302047c435bb5006630640230032fef8e4e5d5758c988eebc6e0757612dbff2ed68cce61838d345f857668e35f25a52327f8bdaec28610b33c72d852d02305caac1321ae46bb70f01fe359795ae02c83af4e521e6812d5dfd414bc263e31e2514372b5808e4a26eb39730ae19e0cc0302047c435bb500673065023008d1a5cc9d00723e72687333be23110350ee3e4e5db6e1bf409355f8f699838d30a3f889945a4b318a0347b225e06685023100c515aeb8c0547e393a40cbafa5e98341c3f4187888ff3d3120a7f2249481aa5488ad33f88822d8e161e39344fb90296e0302047c435bb500683066023100d962e3b5ca4c04cbb490b3e26c1558840678a37900070cb07d4f41df12093f39ad07becbf1cebc8edde09db093a0db65023100abd136bd2378df6992f4845809995c59b6fd607aa964842b36c6b2e0c244038a908df965f6d2973c3f8614c3801700550302047c435bb50068306602310085d90bb53a5c1215f02c4701e5eb1e58fc3c5900afdc47891735f16835bb215601c98c2e86ee6ae4c84a3b0d9e5d8f0802310097976fcae99f6cea46378853568018dcf971aaef95d3b471ebf66420dba5f5d00e960ed67645575cfbb882561690894f0302047c435bb5006830660231009d989d736ca13f190e3f6c74af3e00bd36695db453b68668082aefbb788c1efdd4f040295190f3ffe08f90f2b395b6780231009c3aba4ce0c78ba24fb24f70016e4d31bba2d4e8d764746b2b5f0508443b89bfe9af6be37fa58b7e10d9afcdcd08f8610302047c435bb500673065023005838f7a076a7bf680bf0eac1ba574c38a02e02b903b204669227073bd5dbdbddd4882edb0d26d10f2ec67a5785c70d9023100fdeaf1b94c4a191aa2555edad1d74f5d51814324726a21cfd6eed91042ee0061f62f909f6a20b1b03d107438840054760302047c435bb50066306402306d16cbdd2a60d7feb16cc5a8bf1ce761b8ae01082540b6fd7b0a87280f4942ee77ae22a954c32e1691966fdcbbe02467023031fc28e7b522cfa9c28a242c7e2bc9954b014ebc43b836ffa516c435e17d0433a9996fa0f2d8b16ddf121aaf22105e0d0302047c435bb500673065023100eb3586d6a0721633508d3f262250297fdbbedc3d4837b2ff9f592e459931ed7525a938370dcc3a6c0727058a22dc5b3c0230064ae023e7680e0eab3b496c59f705ec68693cef86bf4bf6e707c16fddf0624cea38c1c6ffcfa60b7df4ceb22539ef5a0302047c435bb500673065023009e84417c4733dd7e5b9baf61e42bb8c19b94e384286c1140fb85627f3f429602bc90654af22af605bc03a9e1ad4468d023100e3567ad8c479ed968315193a7e7ace3e8a505117fc5ef4e4d8e882cf442fa56f66cc81f6697d7b449ab68a48b68d605b0302047c435bb500673065023100dafd0cd6a0d8869d9ce6daa6b6ea9b291e94524f09bb7a9780436ab2fe91f3b3152519edcc1766945fafd57ad38196d002302fde80bce0acc8dd94bd1529d467c216c2a587ae2dd6d8ad24b2cad4cce9545f1049556b8af44c2aa0cfb66ca97d08a60302047c435bb50067306502304a9d1b708f5004daac4c85cfeded23e53322126bb72f08e1bccc7aded80bf94ffba117926e6cc14c754ebe68a0d99f3a023100994565aa060881096d31f48a398276f813170fe989dc5986581f90ccc930bdbabcf1e2ecd8df9a5bd4ebb647b86ded0d0302047c435bb50066306402306f634f1ee3971efaa565bd6f11317481d00f0376b03fb472424d495d353dc3ae6f899414f84f460850ab0fb7f2f3ca2802303a3697b25a3211f9c6bb5684f6fc6120e6c95ab270da176be6a09dda86b3b76469a1469ac117332982ed16ecee91a0f80302047c435bb5006730650230125981ad5047627698b9ce2988e4b4bbe3f011cd3149668809fdd3f24e254725a2d0be3dbe87fef2c5dff910d31035c7023100f17840f4966213612df12a23ffcfa34f8e691a6724f1ac3c49ff42ee351f6d803d69680279a9aa18da722d25f19c23190302047c435bb500683066023100fca34fa5991d92a52b03ca950e2b9d5437e08028877b43d85594cdcc96775046ad1284aee441d8c3e1784927fcb08ba1023100a281a5e57a3e64d0bef64e7cb7372910802a2daf07fd262bfa3b86f424dbaacc0f863212204638a81bf34bfb578c8d6d0302047c435bb500673065023100b4e6d987bc1e99cbb4ab389d3c0104d1625c0da5632419a1cf6e12f1cba6e6e2f85452d92cf5bf25e8b319cbcf91048102303651a1add9291e1f615f52904be12680efb5463ed01e338a9abb5a0b7e6cc1ee0b772edea65c17d8b4a510040c630ab30302047c435bb5006730650231008cfed03516bd1b68b715ab8d41ecd5b6bbb8fd292db9e6df198cd65222d476c317c193ef818879d499d8566e559f2526023059e5c48f9824d901097991ca6aa93abf44173f8528efbbe884bfa3b29d6cd898c3e056335c37b0f2f17da5080bfb0a580302047c435bb50067306502302009118d563c917d5ded5048bdff98f85dd022a8871e5f50e51cea9ad5c0a0c0e1592bc18da1f5ca051628911f2f0ab3023100b679cca4327aec7e70ba2db2a48c915fa9561da98596ef449fdc17c699b34f118fc9af325f70648028c447cd00ffe4900302047c435bb500673065023100961b5ff383158aa49d06cb0f12caed61f6edc37d8ce8d7c4bbc34e9f73e9fe232848270baa363f84f7f437f975d902ba023037a958e94741ea10777e49f74e7c7ebd20a95062bc1461c595de4b599cddbc16c9fc6c1abbd90ff36a7c2cbb6e504ed90302047c435bb50067306502310089781c0c5df6556dbb12188c27ddf23712d916e732739c589a65a771fc39d755472615136b1376aed16e39527e7581c802306e21affd7233e5ac87fd59d757b2a7406723ce30e4cf77c8c22704eac76dbd3fa5372bd281ff5afda0712c45925118840302047c435bb50067306502302c6cca9de747ed5ecfe0e5774dee4eb82a0bdae3689187fddb5934f3fcfd712f61519680de21850653556803a165a11b023100c869414ef0b30f1ff3dd2a362e4b8dc2b583741423c2e518ca2bbb72aab9c028f2d6c44565f4666959a31d8f2d65e51d0302047c435bb500673065023027623ce9b8eee5a1e02c00942dc4e5c49536318c7d40c3a2c1d12f2caf4c3d5f76ed4f22aef90416b2a0d3bf6390d1ac023100d3872e132f98d1a2dee8ecb5444093f7143048478905376f54ea6502924a4bae91bad8d0108502299ef502ba2f0eb0ae0302047c435bb50066306402306353faba383a7391c0eb8b249da0df5539985603b367813698650265eece9e5fadaf44daec1682a83991d4ceb4587d4402307686bfd9bc96660d3c0972919c579d02092a9f81aac458bbaa62dbbacd0f5bf6f1474772d19b4a9caf28ca6d60b298940302047c435bb5006830660231009ef2ef06c766ee31b12787fd59e56f1eb2b06426e2c6e964ca57d47ad2fbe1771303954fce9d6c72d654061c09266e54023100e1a68a6a07389a460a6badb7786de96093d776c8af007c50f1a7f724054fe2f28b2c52e0c3ac21d8a044aff70be320570302047c435bb5006730650230642f08eebdfa1ad64b15cb662f8107b676f70141ec1d5531437778c3dfe65d0ad9a93579566616ede113b7bc541ecdc1023100fe6a3dedc665efe84ada1ce0f20f927a36af81d2c56cedfcde2ebdb8abb331b63a768002a89c7d4740e40f2ae7f6fda60302047c435bb5006730650230378d15b329687679a547bb8b27648ca94a7b467f12c52fc33d20a32d34d107d6b36b816fd9a9c821a8c54aecc7451815023100ed602b517e0ca9ee64a9d07d988d81ebcc92548c251c54068878e46cce2dc01386e076240d95c6774b833bf3a67a26a70302047c435bb50067306502307ce29c919afa87f7500c92173a25cfe4373d1cc908a3ee1d13457683491de8bb5e4fe9d39e328a1b11f029343764e7e10231009378cb5d56e9d55346edb74a0f94716c2e7cb4bfde28e55725763e28c386b9df7df113cf3c5cb61e39486cc04fc108ce0302047c435bb500683066023100ee236ba81f6c2dd6e05059185a18e746cb25a194d6add3b96f306b231ba9d1d960340762e7fdccff58e38854504b539a023100bee42876842ccb4a440bbd4df7c23b67ede0aa4945f4cc5ba9cc324da9a19f200a8c1e73a4eed7c7051fd5af6f4d31ba0302047c435bb5006630640230658677bdb331fa5bc45241e67ecb8e4d11e31383d79a696d9080f2d327187be50daa4382d3d63b2a24d3fa117a2ba92302302932e8c5ae294b3fea6ece80c1ae3bb87f293f03f2e5c4a399299206eecaf04d15c9bcb41e946454ac50c1caebcf2a1c0302047c435bb500673065023100848d932f9d7899ebbec27ac0a718fb9f7df4efaa12dd22a3265591973d1a6864533a5140335db22e000f658d515a26db0230565f18eeebae03cd350f642ee019ac606597f87d2623243ff700ccf6cf4d30ccbba4fedd9959c42c43ab8d00370774dc0302047c435bb500683066023100c3a809d65cc7eac8c581b69fd040751f687a4fbb8d337618fb9a9d158344ebc383e8ea1526469ce60b8ead5fa310dcad023100d2fea3a765ba77e9907cf16b287ae68a96c6c4e23af281c7bf66aaf09129d96a84faaeb987d3da38beb25145ac7d3be30302047c435bb50066306402300e4c0843f24cbf6ddea483c7670f3857d3d3674f86020336a4dc3277e5cf1fa6871511bc78026ed7492acb268b054d98023051a284a58306c19f08c4d1b1ca6a8d16c8f510b5dbb91b7598e0d9efb9a72ceb5ef72440005a2551ec51a988bbce95c70302047c435bb50066306402301d69c446e808196dd32004a7ec002c282fb53b061aa34ceac585178e0658135c5a85067c76cd98de1676f27be44a980e02303b125263a4ec843182db7d4598f240f3a54d131f2c57fa5919816f7e6a05044bd3e45b19542ee57d3d7a9b3e88e552a80302047c435bb5006630640230778b487a467d0223fdbc920602582ca613cd5ad41f81dba53d407ab2e11e968b33f3cf0692889716fd66b84b2b73d8bc02301fd8f9a266c713b531033282c37230bfed8f7b366be7f03e28b952c1e431126b0b4acaa3cbe0edd0946eb44649bdf4b60302047c435bb50066306402305283aab0afd5ca93ad455d48c868b386dab7cbb815fb1cf30a81794abda3bca09da8c1a4d2b1bede2ed6c5472e45cae402304208c58ed888987b7196d37da59402f38898fb70a98599a2e63f73c17ef876de732268f25614d243c4f6371b2782406d0302047c435bb500663064023059f7cbc6bc937d80c63895774219a47a766ae769d8b4b5524195d5802832fea9fea229c72e049dbfd4829a16ddbba2e40230666a03a91ffed00954f9a84abb664c806fcb438e6a188feaf8aea252b3a7eee265a0ae9673d9466cd7097de0750c43c50302047c435bb500673065023071a6d113faf0f56d593282c5800f8a1237bd4b2afc9faea1600c49c885b85440bd731c539d57b2260b20e586a3e1b27d0231008a0773e1d7e809eb4d76abfa9c414fb2b48c5e0d7d5b82e4604cca1822f66f4eb571cc13ad7b95791f7ea1318c90f8620302047c435bb500683066023100ee93bf9913384b972fc65c524baf63465180563f4448359b0fd09b05428b188a34be58af1d6a75645af92b8c9ca80a460231008c650410cc9f1f6c6d1f77e40c2f54fa97341f4b9b185ccd809fd9b230c17df80fc8460e94c02ff5fd4cbd435c5d6c460302047c435bb500673065023100d7fa36e8fd3eea766c5dcbe9cbedbaa1f651939cca10d609d5ff23073e45a4f6ea4fd635f4e98a1ee53e1e826870dec7023077eececed7aedb97793d93999ee61870bdc23cf784a7bda471dd99013ada06752a9f7d5747ddd1ed3ef5e868fac8d5bf0302047c435bb500663064023067c82e6c75be2b6e8c78372466a3b2385b4523604f184bc325a271b95f469f7f553562a92bd668aa32c5ef31a883a34f02305b753902f91073ac575f904c87479625be66724eb8100635a9acc687b8fd18136f8711d22de122704ddfab5bbd00208d0302047c435bb500673065023100e496b659ecde006e5127d1e1d6dfc07199f3a0ad4432e85f1ba9db69cafa9b0e698840817c5fcb5e7a772c615e11bab502306c65b80d4ddb3be3e554493397dd41fd528e471c59017fa449d71f1fc4032d32a98bb664ef9c032defa430dac24a32d10302047c435bb500673065023100eaa05b1a439e4fd4eb4d4ef99bdc8cd31e615ca8517fd2209c495b0d04341e0a4fa71499a5853fd8bcda7b9620a496d9023034757b75eb079845d3b15adfa9d97e6c31dbfd2b2e33c0bb77776313f5454a26bb0ab15eddf86befc5992466bdcc333c0302047c435bb5006830660231009b155f1feb14e0a8864f92ba6f875f944a2428252d9d7aa853fc113382dacb7a711f50068cc736765b74169ea6a4996c02310091d55401ebed96ca8f34d26a061ba114d184d665b61bf874778171e0d1f7d9d0a3ac59574fdc2c14e4ddd44cf25339b70302047c435bb500673065023055b61c296f3035ffb1eead8f2b3f6f27cf63808d7ccf25a29660216794a7b0a33c3a851f678fe9229c213de7d32209bb023100ad7b3d5586b3f6fb089b13457d481d02eb252d8f7a2bfa638dfffcd8114672478a8865a4c37d7139f7f4010cc173efb70302047c435bb500683066023100f52a073d9b7fee6c2bf5856f8db2ed10a987b72f777293faf5f3a6132e9a6511083b9ce0575a37185455cc294435a0eb023100af358e7ee3a1bc8f02f258582ff9b62e21221c25362162a029bb99c64063ef38f4894a7709825b822421ed48078a32600302047c435bb5006730650230629714065c8d30c3b39214b5fef518757ab33a9b3bf5f441116354c99601afb63f0165f27e73cf3c5e15f9a44eddd2dc023100eee593ae4b0f2eb03bc158ddadbbd7120e7295b0e834788909fc0352980a86b4edc0d844e8e5c71b994ad1f3753cc3f30302047c435bb500673065023005afe0f062695995fc946b7de99414c28cda7ba2a03e6367406331eedb2fe6672cf7e168f4c67af478d1f615c6e12713023100b4fe93cef133b28c3bc313163f0c1443b4a041d7093b1728728196ac807d81b01085d0a462c21542cd26fd6f7927c4cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230272c610845df56a71957bef17421f4bea7f9d40f5d77341aabf075487e24cc77e10201e1fcea752eefc9840aaad69cfd0231009f439de1d33d47017be62dcb6f41277807b7d2c34ee1cd746505bb587cadcfc9e5a294f2435c4f54c896663786bd06800302047c435bb500673065023038cb5a0d52309071c4bbb3648e3c51a3f5ffa77a9743045aab31d4cff8cb56bf8f9cf49b3ad35e4a797c1546d6ca0c36023100c2ea87a0fca797f7784df001d93d5fbb249b598af6b0b0890e03eceaef0fb03e907682c117a4d75730def6a6b6c8d0df0302047c435bb500663064023051928a905e6ab3e91b3dfd52a2a7f45d98e7c79fae194f59ea7395f99f6adf3ee55b98a0ad0025a87e373edc3151d712023079041e30bff28ed8cafc97bc5db07b9847ec7dafa3b9a533c91ea95c04eeb904540fcae42f1f732995a5aca202907c690302047c435bb500673065023100b8f41ad2aa4cd8e2f73829eebe9bca1a15981de6d1544e63ff9776f9424929c51313782a2c39c5367183ccd7acac506c023069e116ff312d6f0052a0bc73acfe37990c4be81cd54274d0ae5ef166ec9cbdaa0f77fdf7a8236ef201fa4deb1ec1831c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023044fcf6f402d5b89d951968aae370ce511d4c6ef0b75d2034ee34cb6fc9de9577c4fa20ade04d1511cf6b04e02d91b2cd023072aecabd059ce698c46291dce8034bb035743a2c8e70d4df068f8241586b69d317de8798f2f5ae509d35d0fb435f91f60302047c435bb500673065023034a09e296e1168d1cf68b6c3cc0254f0346ac76dedf45e1209393b1e35c622b95199a59362af8964193b99dfb6977223023100972abcafa2063f731064366b23e35da84c9b275a3e386d95f8f6467ea1eeb392c1bfca04b0ad6f12d845fef0470778e90302047c435bb500683066023100ca66e29b5d9f28be3b9251624266c053b1df8f8fd00de1cc2a6dbe98fe524ca3b2165bee71c977ae17fc1c776b6fae58023100e5a9fd12bfd24c90653052c551d24b9a280783c30ef988940df3bcf17e87a27baf6251c73204f45d0b31cfa4a49adf3b0302047c435bb500673065023100adc6b6df006ce80a0f52083915d1aede9108785b2bdd4002c2abe63bbfa31b71c98b44d9da9d7f994d8e6ab71abf62cb02304fe5c4bf51c075ca4944996b8275d02c5bd2cfec242acc37ae5053cc64d25c24db5580b1ed68744440d9cc84d318662f0302047c435bb500683066023100ade42601894a6173c711a3814e373e435f5d5fbac83da2b951aca0e71b92dea77df434dd5ca35e12c460f5e19c5f61ed023100c8a94c0d80274ebe80d0edf34679868f4eb9761c70d88a8fff24dc087d47105f083da8901801960b653b13cfa127d88c0302047c435bb50067306502310091ebf28f2fc2ffdc2d91d524b6ea63508a35cef5e19c08e178a1b3534af212ef4c64284b18509ba9d9c306b2150678fb0230331dbcb07e9c6ea4a5cb0ac87cfda288c7aa5e095c2739669492232d8d364773344c1e3901df66aeeda921d14c3cb5fd0302047c435bb500663064023028b804069f82c8adafd415b4ee931a16050e4799653cc7f9ca51abef4af72c66e8ee48c74729811f19eb88332f5bcb06023054c80ffa902168521c4a743e6e81c18809fee74c3faca740e6faf21f6dab8e27ba1dd5734c03e34b350c64ed87dbd2d40302047c435bb500673065023067b0d40c037501fe90c661a507ff308b4b1ddaf449294c2d1f96352566d5e4ea8570f0dc02db773e84c0ef60ece1b7c6023100fe5cccd319a21f2bae63f8cd0bf5361c7ebb3104d579b5511dfd8e5baea6ea7e1bd5658a69b64457c4a794640597c3b60302047c435bb50067306502304611a283a36d0554651e834982443f6ff270f0c866fcf91ef1ce8d26e721bf492f4d7401217cc9a0acddf39bcea7b249023100a5acbd09f327c889e54c432ab63df8943a361499e580553731cc8722c956b3c1636d526786282c190e3e3919b76e1d1e0302047c435bb500683066023100d70a19e5051c8bfc6cb55dcc9ed51ed4ed08974f770a94358274e85a82a671ab7cfbf159291421ddcec7012a7e17f109023100c3ffdbea091cb653f2e3b9279e6da6ee940a233b857f67b58466e19f8f56e5b8f2da2ba25b67f66edf1976596af3858e0302047c435bb5006830660231009454235dceb223d44629cfa325296c5ed1429738ce45918a2b51accf3090122f3e3cd4b27a1c1e3b35a6450e3b0c11c5023100abf47ea0490da8a6e898d642044fa5f38c44a80ffa1ba554a06d8dab7c00a89720fb2cd5097a00c96d757a19dca50c470302047c435bb500673065023100bf1ad954b661ef2732062929e9727b7f511f0ff7a68e0b8329f5ca2222e7298bfec6229f23fc6b72cce348f0c133b20702305e74da1113384fd392fb5efe58664433b4be23079c0699c5b19abe7246d9d1d7e046ea17f74fb1261bc690e70f852f930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023038662fae0a3a6fbc428364aea450f12fb31427c9fa19bb31bb86fa50523c8e1685f9650e17f1a0d6dfa15ccf2c97415f023100be7a3e012c68ef4a1e7f82004628a61012cd60a9d6b959c319baa7f3ace6789878afa30f51900d5b48d1415cdc07c82e0302047c435bb500673065023100b087ba79e4ff8f4b1d25326af2a3827563ca84e4681e8326d5fdf4b41a518eb48061ddfb4e833a26a7582e8215e5019c0230196c1b725b6760eeed4038b1907d15507a085778d5b26f6c7f0c2b5648d4645eb787741817eadabea2df75c9b07d701a0302047c435bb500683066023100c2fd975a184f557bc0cffeea8b83f6b5e875f950e33f5f459baf764d22fddcef61ed3f22818d0b88e8590c38ea1aabf3023100c9e4807e80a64c360cc7181c32b677d655640627a29ec3479dd08052a3d43a7ccc89de2fef0fede7a08b096936e0c8ce0302047c435bb50067306502307556ba5c6ee8eac590d790c8dd65382a978285068fbff1bd1caabe54c19dd1f8e668953ae0ca98f886a853fb39db6e2a023100d8dc9d94d9413c2a6b85ec71ae1edd83b063d6f7f224993bfff67744666a1eee017488c8893878ae3b4bab621e9810770302047c435bb500683066023100dde70a929a156d3197d4b85924a245a5e5d6bfbdff58d01439a5d419da23005d1929299cbcd4b56a68429269954c5565023100ab2dfc6c87a11bfa12d103d8c7a5c79f9ea51e3b1bb398be090866751e459b65aa6f8e21cf4553218590b112ae35d9f20302047c435bb500673065023018d48b9324b0c9a3ca65ada94fdaf96caaf7bd948d68212448894a56c65345746a2a49704320ae4fdf434b7ba39aa926023100accde7b453432c5f43ccc5cab7df76ec29cd2ae1a1a73d3b93e197d64c57371dcb7f4c41ad1fb12a00b3264725b752d10302047c435bb500673065023100f3347f2d2788167637ac9dc916d569f33ad9f16e2f396d26e1126ea52f689fc3f40dbc19c8bf6432bc500e76c6ce2e0c02306e4efed50c3dfba29af9b44d0687b9a201c7d4d861b2c176e413a9ad254dd25e9be7e5487592ad2e0d96c2561e37c6650302047c435bb500683066023100bc3d86bd8082e5a6a93d04c26944b196d658ac54f481ca8a7b46b5d3f33f16d997a959ba435a76665f4597e2aae11090023100de7c337d4614f50ac1dba95e28ccdb8b72d3cd77b53579f66e7f1314f2650eac0f2dcb6dc1d7370f6d15a24b8aebf3a10302047c435bb50067306502306af3f2aa17bfe2e8a03d28f383df3d2ebe86125b9998b4222c31168c57b4d43b705875b9fe459e88a44bc16bc59030c502310092620ef44ae8677fc935799246d8e0273425617258d3d3a57f3f38eab08cc61efd5c4982455b74a5db1c7f29352a0e990302047c435bb50066306402300f30a04f926bc6c0855c4562d8a88770b7f5f2869000d78d542b94bd637d64ba30dbad817726ff614ffc68e48c153c04023075494918f45146c21ecd4189e24ca15cb02022b00430c2bc92e85bbe93f11b5155f838ce9321afae891d47dd4187f4930302047c435bb500683066023100db78bfab8314f2264b2788eafd1114f72a611b1a32905d7d0a81d1838af8eeec1aebda0f4660e5ba605bf9b9efa9311a023100ba1333a1f3c11947f17fe39af50a2ff97b3532a90feacb0566f1ffb20e1e3de0ca03844bf9f147d899aebe42081e731f0302047c435bb500673065023100f2620055a05a3c3f8be204c8bc1220aae1c7e05ef89c1d752d26e52310e302d70168dd7365a88625fa6c91f66234510c023054e3724fdd60be762906376bfbcba220cd9d883b33951f4865e6016c40d7e9a5ec378bac6aa52a0aae20a90791fb89ad0302047c435bb500673065023100db4ef0de3510b41d17c8cb9ea95a1b9fefcb4ea95b43908a09360936b1e9de6e25cf816478f83205f250fe65fa567f720230053cc25ef09818765d2a3accc96a8c5c396fe1266c19e6f9eb6ccf51484c9713435540fba277df72473dc100c7f618af0302047c435bb500683066023100fb16dc4ce3100a1e7f011fc4fca31ad9a775fe8072583a2a9199526ce8405dfd9562dda4212960649974df93e25dc8da02310089e690797760022d59d49d22752d37d74a50c90d84c11f28a18ee1439967e798dd61ea0f10f03be919395bff81a703330302047c435bb5006630640230771ce7b9524e7aec5ccba2b4d3d3dfacd4434efa412be7daa8e17b2a0224fc008b770bd53f6afe390e4878097cd2d21002303f27a6d29d65ab1b59116270a96e33699a23bc81bb03007e511bf92f7f0a5dcd892c1a60a00249b2a60638276dde16940302047c435bb500683066023100e5abc9c3a55dc0a42d24cf70a395dc66400439cb16ee82fb6d803b354118e7ff0ff091eb48609810377c3be8a9fe2425023100d5ae8f34405894deac84d8f8c1653d0b06c1a4316de825655392f9d03e557878e78dd2181856ac1115da35385e7bfdbb0302047c435bb5006730650231009375e7c38c428467fa1c4ed39a5c82a827f20f8530e7615c68c4963c619ba1d99e13a008ad1cf67731868c536064abb202306432c840d9337ed6edb4bb1e565eb468a4d9225f266da55e1e18e60826e74d1fb5f26ddc443f597f5c6d98f2295e9a3d0302047c435bb500673065023053b53826fda5f000b7030b8996ca23406ea3e39ee7f6bd265a00143c4f8d082ea57fbd60908ea357830b53354e1a1bf70231009f1088516080c7e9c167657c49b51c76c9012dd89fdcfa3c894d23231027c5cc38ed1c02d1e3f63db8b3c77bfa680e520302047c435bb500683066023100b1d09d9d79a127e9d35de332980e5e4a5a553a903c6d86e72020520f122dd9267d33af21a565cb5b742543fcc1f268fb023100e6c368364bad1b2efff5f21c23d91840b4613e814d31f53cadbe91809dfdbb3078f12546fd27aa63a132ed63538a5f640302047c435bb50066306402305847344299be27dc8a28153cc6e2f0f6563c1ace311531d4de3f5d42bd1fe0876d1d0d1faecdf11a1bdb25be201c8ae1023051ed82205fa61a1b10a40c0ef7717cd6a1e209e043850e303f527ee786147d7cbaa4f77bc7dabff5fa65cc75de0115610302047c435bb5006630640230799825cdb5de6768dcf72a83b59f67136336bde0ef738b63767ddbfb0381841267a240686844361e3bc4b3335732d80a023049c71a7dd16ba490a655211997c8087f810addf1da1a8d68c4c087a727d433aa26c2c81c956c098cb73d8de0270e4da70302047c435bb500663064023018dbc31b0267b19a303be7fa41ff840df2ee4aed08c5488cb0dc12bd69ffc5f89df83596fff30a71b142c9b68a4bc40902300f9c6a747e6996d1809bdc5b098d48fedf5416fb8e2f3f988dbca1bd02ce63b1ce31005fd6971f169cb5d285263153730302047c435bb500673065023100fcc6dc8056e7597fcc435634c1d05196d999a7aafcbd02ff6cef06228e199a1c544d51051ef475a844b5d6e5ea24047a02306bc4da4b13a49c40002142886fb79f3e5c8e01a69eb06d541ff97cc49f7399b6d5e1dd8568c7c9884e64beb41feb011a0302047c435bb500673065023100d4f8af415e7ffdd6b3756c60fa396d5b7608c4263bbd3bdfd02f3a5a1bbc91e3dc37c203a952921f8067d6618265d884023074ef54a11652551db6753ff40023c4fe46a91afc5373bed447de9d7bc350e3aac5a6470559ba8b6679ee09b45d8ca0240302047c435bb500673065023038925bba79d402f8f14c1fdcd71e3e10907aea1e72d426e9f27f5ee3f81f0af17e8f14dd772013532e065015961e5640023100b7b55f103d03ccbf43b9d19a78b74ec9886837e319d1e767240ff18d843c435e93219d2e6a8a6c9a30fc29b065159a6a0302047c435bb50067306502310083f9030e49e674d1c1f127654ada3c58e9dd3e6bdc7870e8866fddfc5899a69fc7a5434a117f7eb46b859d6e4fafce6902304350b6efbb6412fbe73d92e04c2e21145a2e03359ab6599b3b217c88bec1b315021e0974572a8e86583ed86b31ed26c20302047c435bb500673065023100e6a7d3049599669b9dd849ec04d250cfb9d43eeb0f498b547e18f2b8de59e542989a8a002fd041fbb437baba07c2c55a02300dfafd140594e6b86108644bb1bc339753050ccc8260bc5a2463ada892a36669971a7e62d4338171c8a484d0123790970302047c435bb500673065023100d7b6a76b6cfb2953cdfda349913bc697a57909d15f658f5afc3f3afc981401575eaadb94c1ca706c721c81bbb0a61ca6023054a29d3136fd8bc3e2e6a1af823391e99657d7d94bacaa003f393bf3331bb1e5d0de01a96338e8f6424f8826a2a5bd810302047c435bb50066306402301b9dbcd4a9800fd7c84bfe64c3901a0e1f3b63de889ef9719e4eddd280fe947c83eb0ba35d0b70e2795d7c61de90eaa602303cd7c7011585ea5b433d2803acfca776fb034352de0e28b564896064895db46d3a9be074b2edf6ad058e9894426539120302047c435bb500683066023100e54cc1410f984fc39331315cb1738657ec60f3e3c43d693487ecd7a6aaf9231767cd14a98864f7a70cc363202e316b710231008c8e1d1d97cb268d9739595e3da8fbb9902bc39dc6ff1f6b24710dc0eb7beab7dd41c8e5c7fa70240aed78b4d70e9db90302047c435bb50067306502303057fab9ed7be5bcef8c2ea8c8539d0461b8869dd5b755c2f009cee609561975158b4beec303631b1f0d64664971aed20231008571554b2fce80837e3d8a56327de6288f8016b8c0fd055b85efaf9f7aff247950883f2c443da828d4475b53d62b30f90302047c435bb50068306602310097a4008243c3ad452e85eaa8dd048a56758a759c3f5f5a5e682cfc6537b2015214f57941ff3a76c2c870b0d09678b8a4023100ca286078e163162bc706520a9653fb579dcccb167cdf5b98e6d8b1cb8e92debc8db44197cc950723049522504159a40c0302047c435bb50066306402302c02f72ff20c18dc2b7ad1626c118c54d2361c39abbc97803737f899bbc1a5545654be4f1784d1feadc7c08dfea6c137023047775a44b9c43480a13a7434380b7e5f26ca9e55cfc25d356db87baa9b55bde82142eba15d4196944c5f127a5c6f94d90302047c435bb500673065023100d14415ff81e082b3007a477179a79ccdb1a182634575972bb26296e4b32127b60a7d105c1318236a5d8755647b126f04023060194dbc9f3ddbc2edd7ef28e88cfb392f2963cec9d5e5986b1f788b5fd90c24985df744875750b120b449af442c0dda0302047c435bb50068306602310087a6938f0833ee746fd4eab47dd8865f40331e6fac364baaa6f05131f8b7194e42c127027da5d569c86b047b5e1c1896023100aea0d48385be9ac97617bcce458aa16d57001d95304ff56240bf278a924e10e16e9ee0e3a65a975d6ff06d9c9169109d0302047c435bb500663064023033cc9dbaed277e50251e028da9a6de47fc3f197b44e67543cb3b9c3f9bb58b557d1200a95ba6de0acece92d74e7d148d02304d554157baa68d92983cab13c12ff09ffc1eecfe4b3883fbb5f22bc9817130c41787169712725f22e70308678fbb78eb0302047c435bb500673065023100b29b8433f8cc0410254689a15b0e90f5c233b0e806d016e0949624f1ae51593422cfff002443f8ae7b6ef84fcd7ba94b02304a529954a6e2a385f187897dc2e12d9b1016af4d2465f5eed66236009208126db9887964ba7d0ec1f7cb16bca99f8ad30302047c435bb50067306502303b55b190b617e74947539f8340e09c28b9510079dadae42a4ab00a027dd23849c6d8b6e3d40666eab57537679c839c08023100e901cad9df7e69e52bc15badc9816bb8a4a474eb8ce1ae8fade7734d78e7245f42573d5331f0bf9346d6834d3ca53bb40302047c435bb500683066023100bb29892865293f76db5974576e22ddcf0cc39e30ba2e821e13ade6f884bb0a91b5b159f04910b5f5acb1640f4bd27a43023100e170e0de9f87f024c044ce8e53e6767fb0d6537786a28a608d60fb988f367a914392d70a708efdfa693df4b1de0ed1d40302047c435bb500683066023100c4fd1f201b4620adcc0c9f71a57a61ccea33f5352084931d0f794fbcb307235c84963d0c1ab079ba7edc672760dfd337023100b9186ff964ae9ac11f11ff8f533e131bed4630d1621a6e347306d8f408a635fa455fab4c7a4f5ddc56356d56a41469b70302047c435bb500673065023100d13cfcaa303c5eb4484355c6c9455be81c06c45e7b9342cfe6557d1d1841370f4dc5219135517ff346db4b9be2ab8570023029939660db1c720b0b1d682b6ebd16471ba55f11e28cdd35ea0ca3e14e7fa738485de7d8a3bff02e1ecd4d3f6ca6d9350302047c435bb50067306502304c8857ccd9c867de472a7f88061c1a2a027c511457990f7c6fd6bff037d97bf2767b849bd64fcca7cc4753147e42cea5023100d3c19d1117b0377dc3bd1336da320e576c809ae2f6b74927c78f4efb94c82f1b457efd3f4bc57446300251f23afa68130302047c435bb500663064023075b100ab6b05f0a8c707dbb2f961a4761a7c5e21a7854698bb7249e19b5afca9730e18bc5535a1651a9f56926a83828202300ece9300f9c7d727f1b5665dbd2b71b972b1d93bc65b643aa37c8419a608af9905656bbfb87e4685afc0457fabb4c6b70302047c435bb50067306502304d50dc877a62f64e73d79fa324eb4e8b9f86ce0f737a407701a86c5f7f5ed1ed50e37c8e48e4a3cd24d1d6d0f7e268c3023100cdbcfe390e92a04bc1b32a3651f7c80cc1b09c09dd08ee684c3eb7eaed2a61751d11c0bfa9dceee06e3ad9bfb02205240302047c435bb500673065023100f675ff5a40922911e3e34b20f262e10b9deb8873ed6cac7ddc8daba1da36c7e1f333c0c2f2668f73e92560cba97f7136023027768d12bb9bffa74e2f3ee2be2bd8f09ab1e07539e49de27b21030032a38d72de1a69ef79854bed381e9de9da6e91d90302047c435bb50067306502310086ebe9bdb255e43f52537a8b2148a03bef9a8de632af04abea0f6a4163003de583a87eeecb4ee1043e60e1e49e1d814e02301fd382896cf422dd03727ddfc60bd675f33b91b55c5de32d59e8339ebab0efdfe5f38c8af3ed6552dd866551cd1f86bb0302047c435bb50067306502305f1de27d130309ed1a94343544afdebd56ab6b9b96dcd4beb7d914e5b4d9963a56725f30cfa3ffe449d69002bf36e30702310098c3ab775f615cc6f5d40a566c88094489ef0c44bc73fbaa2d912e5d0dfed7352c906970e220d68ce2d5513ff5af4c660302047c435bb500683066023100a68fd4d6ef7711214cecca4e101cb8c081b8f5604850099ef4caa44ca9a2e03a36adb216e0bcac1ce12e4f5bf71a1856023100f4fba68a62f0cf9f878587384c4596dba6a77265abb91deadde20af245e0e35cc6663acaaff43c13beb768248d5c31eb0302047c435bb500663064023078b7b223005cadc603492ba31ca8fae731d073047484f08752365ac7b5bfc1df9e5e48162a6f689694c386806d8b90d10230715b9bd85dee8ed50c9d662a19fea2d65002a88355f9be35b60ecf822359537e166c4f8fc1e88dff959940e373f6e4870302047c435bb500683066023100927236b042321193cad063d24aeca8d871e61bc4ac80bf4384bd0d2ee03cddca51d3cb43bd85f1c2e124cd2b74be686d023100b3bb6be3ee564dbfb9f8b42a64d55d4c76de99eaf9114903da1298acc6b9764c33af38a44fb9a8da75908323997fde860302047c435bb5006630640230460eba1b8bef8f4e6846a2264b0e82a21860bea52df9e27b9348c608914eeded943287509302efeb412646682890cd3002300fe6a4f5a2f1bf928fb29e4e1da8ecb8b365f10076bd17a516f31c5fbf88a3794dadbf386c738e6089f36f338f4349660302047c435bb500673065023100ff9709e608ef227c6fd615da332019df589473c1a933e417482e6abacbd59809447c8ff5079804d4f3ddc320f55f592402307887d26fd32ba181d69dfafaa0397aca16b9ff701b278585d06dc0a1b7ba1cf663846f315048590dc191fd4110544c7a0302047c435bb50067306502302db6ae43300410fc17dcc802208ce859cc7cebb4a8c2cee0ff376e19555fa82a529513fa35a71ad5da7510d37620402d02310080daad11f5664dd681290f2044e3b604868f226c32cf26d19e0242a2845ae7a24821e87f2654086c5153520c3a66cdea0302047c435bb50066306402301035d1fd625c6897e8420a2759c9bc3921eaf553f07e4bea00612b4ce42a309fbaee200d56e7d2850fe4d18d2426285702302cb7d766500f821f7e998a36bad99f769d598490d502da86e6b872c22a15cf3cfb78320f2b044b8353070052deaa847a0302047c435bb50066306402303ea3f0a365643882f307076678449d8d54b80df62190e45687a5cf1ac01ad85626c4fff8eb34cf31b473d576d870b13a0230496c7bb02815da6c7c2148b41a1af47b52289038749c44df83b1721864c4ec4dc67cdf1fa753f9bfb354ade8bf491b690302047c435bb500673065023100abf6af20758234772b05a5a4d398c4a1f28e04898720e14ef5a0b451c24e66bfd095a4d40c475fd162d71b8284f7aff3023077d0a6106bd8d862efbd527d58c92f243374599dff3d8f22f213d0a4e942bca4f5a217d9698820444e8d207030d377680302047c435bb50067306502304e027c3a313bed2dca61cb7d69d0aeaac1cf98b719ddd71e6a5a7ce2b23e467f2099aec105e2e16b519c20251613bd9b023100cb9afbf0b1c7918a1bd078a0e364de62def10bd8510ebcf44c2fd6e3eec7ceef4ba70675489621641b7f0189b66e0fe90302047c435bb500673065023100941ff49c33f2c3ed98a010d0211d6d7c288be057c6d8067a680843134fa9b1511849fcfa03853caa5a1cc7207c03d03802307d3c53715218cb545f359ccf53456cfc7a08ec1fc212dde34dbe76b3e17f6632b0326520ff27062fdebe2b1ce56fa38b0302047c435bb500673065023100fe77bd545f3597e6bbe06216a6a0456ff76114b529a40ed76edaca1eef6c1b43087e19ddd6a797f9c5293c2af0ae1bf7023060339f73a28153364d8fedd227c442e6e34c4b99ebe185c6d0c9fd5a000d8f0a462ca287ce73ac817798cc9575c88fdb0302047c435bb50067306502310097823b02c7993974f6a9ed0ccddb560f88156947f9df0dd019da2b2b0e94d130aabe44f423ccf8e4d80e022db5cbee59023011ee71970070279838c4e85796c84bdb7a11a779474fe6a88a42014c9362294d7de621a012caa325cb6bc648d7a8d8c50302047c435bb5006730650230009628a799317437e1bde7757bdc529860864a7c85257554caff2fe71386d5b9426e131684214e0122218eb04630aded0231009045b18587ec4fdba693ada8d58ab8abafa191b70cdf255ec31ba456a557a8993e4578d667465a2a1d74d51dad61d8330302047c435bb50066306402301f85a1c0248d2b2c8efddd4c19cf19bcd6b586764536d66ef8043351fe88115cd0f1e70868dee7acc5440894d8310ad602306565827fabf8af75f11c893cebdab4403162c1b1cb1b7a480f39e149b5bcc3d907990cbe206354b5222dd644707e6c900302047c435bb50067306502304e3aa0f534619ef53ff9dadb2cb767d04cef45eb9ba7ccfd99d1cc2167c4d160b8c697881854189830600f0ae26c2aea0231009b27b37463918c0a40cac80c75fc69374759f887fdbb34b112e4b3a474ce3c5a25d11da141a7e0e7c79ffb0f35f3f6350302047c435bb500683066023100b3a2e2562dbbe4c2c2d61082c1e02b7964e2d49774fc1082c430a0bb13b3ff5dd750719dcffd825990b81a376da44104023100a6c50ec7066f5e1ca93939c6b0b4a10d7bc16e06c320e4f02925f5a9428492ea2635540961968a6a001341f2a278077c0302047c435bb500673065023023b663e628152879e1d0896bb768b87a500ede9026a15ff23b362a62b5532651cd06b6e368a632d6384a85fb089a3c24023100b0ae5b7b3c51116122c041ecca60acb56d88fd7126d2ff0949adebfa38440fd96e777a6131b01fe8860e22c20bd0384b0302047c435bb500673065023100c0a34a36b65d44ae4bcfb41376ba1fedf8b501449570e9a54503808f030fb0e349a5459f3956a46701caf223de34948d02303af4c238e6640bf80f82d21bc50a440f6d6cbd73b3f998635a8d14129c6bc53400f95839eb45ffc0cab4524e6f5c64f70302047c435bb50066306402304c04ffd0e53302004a235edc2e0c8fcaf8ef92d3dbe45d04f02eee01fedf55c3b4ad1256a8761febba14838b83dd313c0230535d68e8c154687dc4ab590e71b847cc84d2ada755e508282f10dafd4fa68071a0ee5cde659aace0ded1c42f37210bd90302047c435bb5006830660231008b0bddc4a71d757d9a3d1403e5df78f61ed8908b47345dcac1a333317c2d9a76696512d62a37c941076feb15bc3e5460023100f12be93d38b542c1ada402a077519e58c9b65ecb87fed33414006cd6480d8b99c3c792b8348813fa3255b05737816a1b0302047c435bb50067306502305f940316240d7b67b67c0b2b783a5b8f3c227a4465d8f7b171553a35a2d3ac04b94f827b5787ce29ec1e14b198064a14023100c31d65e16538de7911226c2605f490c48ec99e5ceb8994629c19bc1aef65f57ac0ec6e6ce83692125d9ff1a3a97af5390302047c435bb50066306402300263d95e70c85bf6a3c84b874e48419db72a98bbfbc0fbd4e1c417ce9a38e18ce51e0e01b36e1e282fe63e832d37c2d402305a355768f31670a0bae25a5e1999e0c65574e242995f9033f39961a609e7d06cf590930c248dcc6245b5f87c7725ebfa0302047c435bb50067306502304fd4c165e185da94cef362fda88d85c8c71e9d837665740bcbd012dfa27d026f2fde6e56c38ccf9c290676333d3e2fbc023100f6cc7256c5a8a75c2e091af37b19c7ef58b6d2635f0b1827f17c9a20c5e84d6beb3b4ab553adb9eabff69242821cffd20302047c435bb5006630640230088356b1347db9caab1779630deada96587d72a4400d875cfc46f038d5a2725ac27c4a6277f23daeb14ab9c0bd08368102300ca3f988cfb9fe9615e6b4540e15db2266d863890c20fd5916ce74f249af3f285d32068dd576d31202cc88b18b27d83b0302047c435bb500673065023053c3ebf9e933d7819716a06961d82662a37d2b0e018c92992536a3faabcf4a777ca3e90200c0d9ea01e5fb0fd1bceca8023100d2354743118721e34855c3d159d3c1041298edd03685ae3be0cb59c6aef06fba6e968bced84a3d9c3f5a52782fd39ce70302047c435bb50067306502310096e95c46b04290f35e62883c497597ea4c572fa973dc7ce366684d7b102f003c3ad6f00d633acfcb01be386661683b660230603831feefc43bb614d5c7759c916d679485cd7b0cb1f0ae226585a3ea9e66b573068106d193c3fbcb38c1d89cdacbe90302047c435bb500683066023100f7c67a3b14c36d8cc02a4c7fc621973815927e8ac74b8c84782c5ec3f3883519ad1e8c3834098c705bf577bb5a97ca69023100bbb6fd8197b2060f8cafc5e52b334c98776563906ae820373bced1e230b09c533f12f3731a8e29605d23249458922cb60302047c435bb500673065023100f29801ee9c554bf57bf65e89326578436337fb4e593abf6f8ac359994f561129b6ce43e5e2cfe497ba12f821a4c07af6023004723d1d1dbf40a49abe7168407954659331fd48f88ccff86a03b0c4bd9b11ef50a04c8fb7290639b8e0eee2918a52e70302047c435bb5006630640230298ffa713b6eb36872b76ffaeba370ba2eaf3cfa6b37df58803d868aa577048f00cc07bd382e26f4fe1b3f4d08393a6402301119732fc2fff554405a79ed3be1c7be87bc4951ddad58244d3b9991ea999d970855092cbc3d68c2e42631553efa0dda0302047c435bb50067306502305be9d52389fbbeed5d1ab2f632ba1be806fd1feb2e078ad19ab6abc218dac34286d95d66f2f6ae728bce27aa84890aef023100c65bdcb0a1fe4e4f95c2250084254e072898954545e92000b9cf7bd2350516751e4c0e0e756fb8d43a8c453440198a7a0302047c435bb500663064023031685ac1be8b6a0e96addbcef979c7f3fec04f952fbe06f53115790f0e60a49bc74e4233cf47cbb67f3fe56fb35b89a802306fe790a2f19fe0fbb9b82c5c9e0f4fd00ecd961499825340b1c831249a8a0e3880e9f7b952d0235ee2030d3658a089c80302047c435bb500683066023100ebd794583c228648e2fbfa3dd17fef86c8fecccb278e142e9b2221a78bc4bdba3e8251dcf822b20d70b75b7317386557023100f55909d2440af76480d8295f2eb317743394a69d8976fb7ccfc2f9ef4cb75961a2a31920e6760a8db8a469e1933815450302047c435bb500673065023027e7373ed725a52fcf77f9468e8ea85b168b3939cf60c1722ec40a51d750d581368758517853e2833faeebf6ffcc9812023100d42be8b3c68edb65974d99a9a4e009efeaf25c61cc9ecc669efd3a0c5e0c6e2d924f55dff65aa6e83e42dcb3381a8da90302047c435bb500673065023100e3e2299f33e92f58ded76993b4e027e04d713b77c342a70baa8845d0f5ed94c17714c883cb03ed2efabcc56d17f07e60023066032a98d55a7b9c401a6edc2b3f8edfeda916b5c2a7e0644ba76f9925a0c6ff08fa2366dbe6e4551409bc20a4944bd60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310091d9c2619ce24fb911e4e21caf065fcd7af2d48fb9abd20ca22c09521a1be4e86cafd4a612d84bb63ec7167e568bc6f302304797f27323a7e4aa9e64bd93a9c67d699ac4260f2df16fdf8250ec6b85524371b439dfbd3a06c920cc179ce40ed4afac0302047c435bb5006630640230423c9defb061ef0e722535ca239f689b29a64e34b909266c30ebf367e1a8d1a497b4a6377b4e990c6dc550e77252696a02304acbb1877119a230952ff8ff67d8d92ff76778ecc8d396602afdc5a09d0f0c0a45e2ef70b75238741c484d95f481249c0302047c435bb500673065023078ae650debbe805f40e4b84f2c7a8f594fab4b1372aeafec2b4189b1ccf0e03399960160aadcd47d35fd6f248d41151f023100fccc01a9444a8a3e96dd54f0599f919008b05206ab55f6596e54d23225f5fb94c4fd9f16de2f1f99d1561af5335546920302047c435bb500673065023100dc1f6a7cf040ef9c420db31f4b88e019bd776186bbead287f356cc216801a219d15cdb4fd9e77399abf4d81572396d8b02303c8fe2132928f62d248a2ee599b7dda5d9095283fdd99e879de2f3432951c083e3548274a086689c13a38d54babe12190302047c435bb500683066023100c79525f2aef57f734ea23bdf773f5a5c909256a8ec265ecdb789ffe3b7f0f71440a9bd0be4a8ff30e6bdeffaaa6f0ffc023100ccde6a12ba4e7ea85dec433a132dae9b976ce5af2c4798b46e16b7547c80cf8b4531e46f322e5cfba53c181f015093b50302047c435bb50066306402307ef08d747533849d5ab7120dd173b3aab894a14a17268014fc47078d6494f338429b7f0f49a389517cf4a823a8accc2602302479ec8269471f7d61e28aac6041ed9952a17549aecba38cffbc6059e57fdc9a04f3da61f2904a0fc1e578aedb595fd50302047c435bb500673065023100bf4db8424f560b9d4e0c4f85755397d2af8d7703e186de21b1fb10a2615ca7a483548e9222a184b70b12eae8ff5d22430230694b0c4299d61c887208b7da2044b50921af3e51401bd1478af8210811f001926ad9a240315df017cd0023df4258a13d0302047c435bb500673065023003ba4004bd7cee3e1cb6176e035eeede1effee5ff77b39e74d991fed1df46a6940dc9d6bd3fc8f0e953b7083e181eb24023100e4a3ff83ca6bd80ef2ae30b8934daf894ca5219d7c3a345601673d8b7ab125dedbe3f119ac4e35cc3827b624005054820302047c435bb500683066023100ec2e9f964f431b09ef7dd5455316ec5bd02d90220311da19eeae58f725d4f85cd143afddcd9d206f67797bb041c15b13023100f575207a1166eba2c8fea9275afb609488da8e9be7e2ebdb969b15a4281f8f9901f013b2fe92042ffbe1374b95679b9b0302047c435bb50067306502300a066bbebe14f308cf1e5faa1291308bfbaff0ae50e0787d4a466efb5dba6cc4dbee2aebf3e4dd9db5aa85d71e0fa3f7023100c639b411fa3d58c5ff6457dba74320225e0458c4a8462ff68d811a3a268d6e1c67bd97f6a5976b5a4dd23e239a8b9de50302047c435bb500663064023034e49189e962759daa7438aa5de5a020ec731b2a40fe1d92d5ef1baad6b22cb496c82a8c5514401a2cd58ae4be2be8c60230691055fafc8c83df0af389566dd3f713cd61eb2ff2b05d437c09ed9f89685837b778a55865ec952f09c31a6bc33e910b0302047c435bb50067306502307e61fef34b05274501677f46e57fef22ff722920196d6c5462aea9a4a950aff73704add5e2333f2482bdc48378ab2f98023100ade4112a89b1af6fa8d2d3c7c1478b93a26b17c990a07464f9f49773f56d66b56b9b83f42558eef973724d4471a135e90302047c435bb5006730650231009d99f88fc67b60b98037ef43c0e81a5e37e984a87366f057a457c96a9e3d7213ab3d22547de045114c9d1ca8e382541f023076f5bf461eeae154161916a3a9c4290a4eeb23e798badb069d065b2dc8c5e47a73ab488acf301da66ac7a382500313840302047c435bb50066306402304b3a3cd1ceccd8a824318f1d9dbe32ae838c5d248d782d50a418d9a42dadf8b4af97989b44cef00d4897c1f73bb02f8902306cf2d442c3ff648f8af5728662d858e8a5f7abd1eb6c69d7bea745f36a7e5c8b3e35938b34a89654eaca3acae4f8578b0302047c435bb50066306402305ec201b8b803348ad9b1057e27acf210901bd2bf84509ea0d1d85bd238005de12628d89223853d0574663c588165008202302ec2bd847f6b315e6edfb180da3f68ed8607ca1735137abc62432ca68e977ea0c0ab7164721fbf23c6b5d91afba8481e0302047c435bb50066306402305ab8b3989c50a8e0b0731eb44f8914291ba64ab6feccbe13a42ed87dbf220b77353adcb201a3b6aabc442c3bc7d418c7023048f3a24d3892d0df5c8242a1df4750d5847b349f22817f83ded860c6ec8023c6a301f0b459ded63f410440af15885e4d0302047c435bb500663064023003305b614dc43c145b10b1133296e0a8c467b1b242c3c75007102d6fa2d38d39a5bf310f8db0cced82045111dfb7bb5c023058fe04a75932640b0e98a4f580fa78b28282ef6d416dea3171cade7572e3b375c5067dd8600c066a397ccaadbe4316870302047c435bb5006730650230618d85207500653050b62180d80b6203c0bdda8dc522e875352bfa8a986602825533e791a2a26730f0dc7fd37f8272ee023100f59eda4920e07cc01e00ca965ad65da2055acba82b6b9c39fefbf9bf51b125110141e69bb49a80291a5a319b9d2b96d50302047c435bb50066306402305833a35b0c3885a3dd4b690aef30049499e7b9603fba6a4e82448567b6c500bf97f23600cbba012a67137ecc90e0694d023036b52e907b6efa554262db87bc472b01ff88f7c0bee990ad03ee2f27f6f24639e7c4229f0f28bcd72c4302167d994acb0302047c435bb500683066023100be13d949bcf75fb04f2664b11df11c67a2e98e9b6f256685cc18ba2a585c83304766ba5c32d805794e4d6ac9215a4cf1023100ecbcd8c5d4952bbce7517259393c324b8f7d3c77a04ee5c74e3993dea996b26bf588b3305da6d5cebbf70e8672c0425f0302047c435bb500673065023012e3a613fd942cf98f92fd547184bec7436fdeaf37adf252e4d8cfb38cf715a863f1bbf8608944909be13213839bdf3a023100b673fc4c7fc626130b0254c7a8199cb940c07df80284122cd9d1ccc8dd0e82d6e92585b3c027fca81ad3b011564ae0c70302047c435bb500673065023100efceb1f60f82a2f283bb09e4856cdc96dd0b67afd6e622e8f542a99bbe3cd76e8658f4d6d3fe2515dbb680885824ceb8023064de497072411a7139475975db950995e527855037a1bd0e760bca830244b02b7a24e7efbc100c11a2d99e83f62869280302047c435bb50066306402307ef280447a3009987cdc14577be222b00a6f222a45589a72e7461682fcb431e6f2f955a63e92b63cc71cddaedb755cbf02302fb1b8e93b28c863af6ce3f93d15ab9c0262fbfb462cfc3e6578c5da0b479cb4da408ef5db84315867112e895d8110760302047c435bb500673065023100b0dabc6ff9bd1716ba7e633c7b66241b9755fca7129c5acd3a1124c530794f4a391c785789ed797216e829a098a599f702302abb4fbfe89e5a5d02a99e730908d662bc93c18928a446b23387f7e7530ef8054fddcb51a3a24076f61ef336043b6c390302047c435bb5006730650230731f40b01eec18adcf85bbaaa8eec77ff2700ee475e14e07685aa4e05541838f317a1fd8e3f4d92db8f122daf4a893cb02310084e48ff3b9a9171bb6651dfdf8a0378bf00201df1ac0be53f8b8226220b344b18c743b1535e519fad7df7f2b1ccca08e0302047c435bb500663064023014d05a3d4f25cce6018d77855d24dad757f2e78c7d5a758c3491977b544f876c85a762b20b0610ca5d8470e1806b169402301596689be4e35d1ed4d066b75b33170487d5bc03aeb7e0bd449573c474c74c12cb659ccd1430975e1b34bd8afe6398240302047c435bb500683066023100dc3c52cb972321b4e508ad62877bea1899d35715f726095789f688989f58ef7d141bec3145825e05f9bef7ce77e872de023100a3ebc24fb6298bc419124b004a20d4ce522c19db70e4605a126241f3c7fc4df6e90ee64689ca9876173acb82222e44e70302047c435bb50066306402307764306faf84c55d9c3721528164225b441cb7b9294b3006a200d2dda4acd6af7fb983ab41cc37415ff880407e84982f02300c1d6c496cdb1db13958107cf45237d0a676edf693cf06366ee33346c2b4f740c3274567b07447681de9487acd69792c0302047c435bb50066306402302fedb9db887da1c242fecb32bdea6f9247a7e5234397a94557ef73e16ec9474b7477649b6187c6382066f94b6902714c02302fd5079f929d0cc1225c76ad60f21252d24735a381ba3ef4074d468c0ab618b56d7332f46d8dc905563a0a3eea228d540302047c435bb50066306402307e575371ac16aaf408711b6fd77ccf7255cb67a888f9011644c690c6cbd750dafee585581791e03ffcf033f99952b9c1023035c80c09fc5f14ee1e095463173e10bfc1e42e401b7fca884e2a5d154b9e54f6861f4e7408d90a2ff20a66f8b2a7f0af0302047c435bb500683066023100dc66d423356ff19f9b0bef07f4d742773c959d62a6e50b569063af9966dfd671f7f0fce6b1765f7e0dde6dc452753a6b023100e7966441f865a7a719a2bdf4d91e4b85d65ba26f1c2de5928871920c18ba5b8acc9cde230f5bbca811ce3d596e8175480302047c435bb50066306402306d5b95c90c79dbbe0d718f459db52f61b09aee88101a4cc7da4745c0aafa8776c93ee5c23369d8411c791fd733db934b02307c3994c3e66447719dddd40df15be7bdc0332dd3f8914e7631e2f0e2c2601c7cf6f01bde7c779d0b348aacce7ca115860302047c435bb50066306402306cad0cf47e8f6b2c410f0c53a5d3d22afa4d995238e91a2aab006077bad8bf02ef1a3e569f8eb23f0a2288a4ffa4545f02305b4dc5559c79d6bcc0b7d5cfcfc50fc3fd71c5336d462302a09409cadea9b1426958774b923f1a021272ca85988109270302047c435bb50067306502301f0921676cf6281d2676cbb45e02cd20fd2b3baccefa94972a849321dbaeb4fac150d027ce0423d4cec52fb43a29c509023100b2dc230ab0472f25292717ecfa968815b3ae62fa3a65ac4a422e3e458fa1a573e22406a1dfbd176b21cb81a2da28747c0302047c435bb500663064023012d1898daf7d531c4e213d583fda3140e76568fe1e51d919f3f58d2187704b913d1e430b01a87915fdfdfca9a17e1697023038e2058f584004d108cf01d216d28d0090eefbe274df148e9a31ccad61f827354cda77cf054c3e03f3e02a1541069ebf0302047c435bb5006730650231008355427058a34cc3e10a0da2dac63caefd3de476d8ce1e37db42e0abec826cf7574b5b5c27d204e41496bbc1ea966809023021461a8e1602b55f034c8063020c4f1cd8d2c575e7ef7b371b20c69be86b4198ddb13d884f3588d633bd495cd74f9b660302047c435bb500673065023046096ddf7e7c8ab39d55f91cac254551471fa67f2b26ce12f76afbfedc8654ee61dcc336f5b1ab4faa003325fbaee7d2023100bf322bbf4072833c44421756ce4af2915b01977658f09eb484f02900f3cde0598c28ef295049f442019aa2099e2500af0302047c435bb50067306502305a55b28c4f2937f24424ed61759495eca4c7b73a62d8e96b19051e422d593ac540b0bbe90eae93e5b742001da8035f53023100b19558759c9e30975fe7b1bbc25688c6ef27ef92bb611fb6eec4f8242c89fc73ffb0dfb764ec53847d7354cc145814f90302047c435bb500683066023100daf15354d536865289c5a7c97481c01a38747045ec845157b89e8e6bec8deebe47ecb239ec6d1742aa1a569e59496d4a023100dc41a8d306d0941ef355f1299d4885ae2aca5fed060f42e92454e396adff70b898417fdcec6333739ebcfa544503591b0302047c435bb500673065023040041ee03e9ad3f7b7ba97341f828e4883c888a2b4f6140c4bc85c3d4a3a6695494c982f07dcb5876e9d1614d9adc4f7023100e9e0fd19f914400a1a40ec9de38c31e2fed76338f06afe9a16c2d2d03fe36a6c56f90915562de980962e96413988a3630302047c435bb5006730650230284ec93b65b3dbda0d9b3344a0444df3cd2dd82ff7bb76ed6ca26b660bfcedb31b4977feb5331307622f5608e46c729b023100e460119c562b3b03c99ac4da5ce31d3b6202e41141560dec4ed2df077bcc07a92a081b5d4df57629f22c1cb91e791f2e0302047c435bb500663064023014973de9a5dbb01e4fefa591fa424e8d3c6530faa59bddc3245cf3ff5d4a33bbedb0e3dc9a2ff01a9336ceba7080140a02305986e006df71bed1f8783670fae654e9ee4ebe30b602a3ca6a2e0aa81b50450f9b010f6b7b50886f8d08d8eece941b080302047c435bb50067306502303ead0cb5916c505338c5906faae425d90c316d9c133d442cfc26dc477d190ec569621893a4ddfd7f621f8ab3a065b44102310090a2c014d513958ff6b7a2414d3b148c4d9529310661e94e4ed15ad1158c486a5e797b88c8f67ecb798feeefc81dba3e0302047c435bb500663064023074bb8e6dff888e6e71d8df666d87bc5795c864ab0f21aa05c3525255342255c4202a3d4c368a77c016c6785b9b2de3b6023032a0dc73026046802360e6a45826e182e03019688276c29b84f950244ad124fcd5c42070018364a25fafe7b2e62f50d10302047c435bb500663064023036b266e49a2f067ec9455900df57b95e88cace1e8f50b299dc41f4237af9dc805aeeda2d53f9108da5a4da22c2981e0c023010e229ab33ade8fad62c1727e0978537fe5ae63965c9ee886632e02e6376849bbc0f8835da54680378cff71c5fcaa33e0302047c435bb50067306502305dbc5946a44af53f8c758778401e653559d9feed2135dcb0872bc6d13c4c23b3ffc7f3e3ec4e2a6f501313a2477834aa023100e1e3bbd2f674cdfded71d5e7c32a7bb3ba55374ec65b9656b94fbd8233765e1ee37f8273a30e49d43121e932652647890302047c435bb5006630640230550c44c3672430da32168cd8bff9fd957345d3e2800655d3d56274c82deca6498c2c92e45701cd9219aa8af02c28fcbb02305f0b634ee2ef0669c9c66980f54b2a5a2e40443d65a6435bc81c0e46c257d4bc3d26ac2dc410ce241b6be12233d52fe30302047c435bb5006830660231008f85d22294772804f5058d60733ca8273db257ed672e6c14af9389ca5f1f5245705d71809e219aa646e5f907308bd08d023100ebd9817b98dc26f5a6c8d64418199bf74ca3f31285edb8113c61eecd1ee01c6ed2e5a611e3d01d94039205f8eba96cb40302047c435bb5006630640230786240b25af7d9c83bae34e603d8f9547657bdb63f1d7f632a046f888e64f2da66c3ad2b2b0c4507c2e830d38610da1602303bd1331206d4cec44c4d08b9331026b9724cba3350b3b07c02bc446ff02948b02866f9b849d568a943219d32a14a12ac0302047c435bb500663064023039b33c351c26bccf8c63a4ac887e661e0b57a53b187a275a2e1857cfbcc815ad2c4e35b7bda1235ec0291dffe3a6b7a10230495f3d8f119c6c0c871213ba9e0e164dd37ae39409ef1d2e00244dadef57a7ab7a5be2e7b02c0f9e9713df99821701b30302047c435bb500673065023100929d19eedcfaa6692f92dd969b0a38364acb8ac83cb7e1b53254822264bf4617d4a539ae1667667f77a017c25b052e4902304887977310cfad23f49a23e38754f97fd4fb4f523fa0b9194a902dd0267fb4f007a0fc377680054ed76455db825afc5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023030771d074e620b785b84cf743cbcb52881198f825b407dbd610c3f290e5a3d03228b96e46aa8f35ce43a60628f9c2ed6023060fee3d951ba5d471fed832ac3cc644c4aecbd9546067598b757051cfe096e44ee1f6ad78169fa29339970e0901390b20302047c435bb500673065023100a2a017c5a665218720c63a6136b9b0ab605d98c3e70d4562c213ab5c06d72f474474203a9ff390bb7feec84ee5ed2916023072efcc364ace0fd0bb5a12304ab3443d98c5d6b980e344fdf31d495edc5a21c0348745e6009c879491f6ab5e605716e10302047c435bb500683066023100b4f9da398315db223cb212548a0e39c61bddf22dcb6916bce3aa87a1c3b6f295d2179e1e4957d697914b3254faed7726023100be5d220331fa97df5023a7ba0d63bd27018654137ac0b5c87f13c35bffe982e17daa37bc5cc1ecd536108f39597c3ca80302047c435bb500673065023059cb520083b59839f8db4fbf3396168cd085e8f5a5a77a57987bd61bb8df3396f675598947153372dba2e515258c3dde0231009e190771ea76bd8b6432b5e7aeaaf9e4d268d8e1df1d0c539209b72e4b86c073b184b45668237d824a8731e681d68a3b0302047c435bb500673065023100e137087c877458d73c80ffb17f30810d7c02b0205c884f08ce609bbf511648a19246195749bd80214b1677e90d20aae402307d2d5c19b94e30c063a755d1144833fd6972374e450077f547f65ea20ad39b516d82d1c08f5927f2014bf751f26aa5d20302047c435bb50067306502305a3ee9473dd66592bc8fdf217df81cdf860afe22db3ff951c33b96833078bb80efe30c171673f8dd03544e0414f98146023100f7acbc2e7c7ed55b7d764a84b8a169581a1040414420307c4a4e5c07aac28af55877b58f647214e4cff523fa6e3c756d0302047c435bb500683066023100b5b05163ea2c90009e2f857adc494545d4d1f311151847d969f91b9e595a5a8b175a4e5c5ce8dc2c16eaa4bcc1d5e326023100a3d376e8155a4f8b0250714d43f68397e6188c097d1c3141ddbb7c4d553eea3a8dd999ecc35083d57e2d5fbf4f65b81d0302047c435bb500673065023032fdf1850be1d4ac844bd2b26f4792bb19f36bcb71abafaab159d538685d15cf43cf26d09b86a0ca26acc8c1ffa806a10231008a03078aaf8a62c1b71d34fbcc0fbb1b6891fd8f6228e919a9130d8423a0c41525173f380764f26665f1b1a9baba1ea40302047c435bb500663064023073ebfee12c6b04058d9eebc585b1ca4d9da6dbad14f064daf972131aede5732c2e51bfc6db23d5eb38b980f857d4523102304efb9238f983eca1a4133d66a8410c02ea84cd1af2f2e768632a3106e53b54bda50c98b22f1f33df59771a507ce287490302047c435bb500683066023100fd33c04a31bef06b33ccdbe54786d721ce6e93ca5ea3b3fc96cf866af8f7be851b3d51023d56bf2856deb608f8b43db4023100f01e683444bfd06144b9e2a816a8690e1c2c1a85e31c3a1c75ad03454c9fc72b240d5f3c06e50b7ef2a36d606103c9ab0302047c435bb50066306402300db76f96681297d63ff4cf2392790c99450ff6fa64a374b71fd0661e1f2116c8619a54e6208579dd71c23809aa828b8e023052cdedbfe37c61dd68d9bafabf5db1d34d161c92357381f2b0657603fbee9e338b93f0c878ddf3f9df44f537d93237070302047c435bb500673065023100dd2e8985a523bdb1ec0e0b0e619e3f192a750652e2475e40e745eaedf79f1e326c5cb8baa241f7909a3950693129baa3023032a905600561821e2aa673c0416e575afb48ad8d38fb6492675e6d9889c54add84b5e6bca5e5cc1f496a019e369d375d0302047c435bb500673065023100cecf82c2b9c296549ddfff23d490166ef92fe02707cf71213b5c7e7a4db45fee88478aef65aaddbe01f13127bcc905840230577f9ec4f112bed643efb4290f03da36e05c7337bc863ea2042a83e07febc6f2d85636bc001f4c9623352bb559a2164c0302047c435bb5006830660231009ab8a0af696aa0660152c03aa6a8757c6e4db6746c2df50e99128a2c6492ef34e85eefd8a010c7bf29acfe299163f121023100d450cf5ac155633e7755ad8590c9c704ca6ccf3dff29c00eb1dd4268ed632d1d93864e56e6a439663e3738ddf83d23320302047c435bb5006730650230336dea5cdba951d3412cc7afb07dd4ddd7b8d0af29908d60d2e7fc5413c3721468ea003b10191cb821ebc71794f50820023100d7f2e923a0669c8eb0915d9062e456d71e30326aa7127d044e2ae8403e6563f5727ddd5454dfc9b9c91d78d5675334340302047c435bb500683066023100c765efa31fabfcaf0c2e6eacc307b3ab577afc7b01dcfd02aea25c5ef383fc7942af9eddf6b2d436e9b606946fdfb493023100d30d32e00f7bb886e47211ae8677800fb0503dfa679e192ec0a4df2b5cf7fd42bbb75bc487afad317a93c554b723b7060302047c435bb500683066023100b58de3e63263b99b0e503194dbd000e2e94bf231afcec1a9826e18d9a6804ba32d59feca62e0a68169a835b586579d62023100e47affaff4855aa0946ce4822fddd31277a45c7af457bffa27027c5e24af8aca678a348dd506be8d179ec96e73a42e870302047c435bb50066306402300b7a536a43a0bbde9f8dddcda619f5e15dfe7bef78fe9d85753afd8b246823f470e2affd5893df6c79d57b3840292dd1023078cba45e1693d7f4c300318451f18216eec903e3762bf92d0f6b2fa16a19bd0c88194a2a2495a8bdca76eb61e54a621b0302047c435bb5006630640230243364d79d28da004be2a22a6df3dfc37c3cbb93c5af198fe88a55c218197bdbc68db09d477d90f2fc2065f5aaaaad9a02303fb78646bc4f5a56bd2ff9eba52de6d96237d31b02f17fbbebba6786d6ad67d1211c5103b21c3be390f8f63b562717190302047c435bb50067306502307082af536197e606d1efb852e0f1dcdcbeb986a96478c10110984538ff973ef7f800bcfac4cee42efe3d8bcb7bb1e1da023100b3b2c1dcae1083ed5ba378d935a641aa5d53845cd9961014369d3d7bf75d8c0bd4c40349b7fcdc2d150f1527101287d00302047c435bb500663064023064ebbd652d7026a39727e24a8e8da71ae2d7bd19aafced8355f0a412ebdfff42cccffa784fc75e7b6471cd9076f6e62602303cd1574f43c73e7e36a29a25a8579122c443b935c10d3a7c013a5df506ba7bb0fd9fab1d524499d8f13a296a5457ae150302047c435bb500673065023100df0279c714f9eeececf34b3ee03f0956323bcdee0322ceb04273553e25201c12edbeed98d7386858f779fef703bc321902300f78788206b619614e8a201422dd3538070452c88840abeddcdb8a980d83809da3396594f261e91e8600867fb275a6e10302047c435bb5006730650231008833c1b8a908ffdb3a7134012b19892bb6489df5eb7d63d027e4f1e983b6ae76930a02cc82658a060b66d0fbfbfc6094023043003422c233dcc4af483d7af24f5daab0e14487227de5798e9d48df52e2f5f06747825d317ae1fc9bf21179e8ede0380302047c435bb500683066023100b62da74536bc4b19560f2055d6bc14339522b2f786710df55111cd88dc77e9c22ff0e79fac3ed8583481846762f24e2b023100b6822abb8a5763a1c7ae34365b6f5b98aeee18e9fbcedcfb2e151bab5e0ea3c2d37647bcfba6c15ff579ded4edc7c2420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008cefe142a5a6fa56d3a08f8416667bf53922efcb8d1b06673cc1912fc9a00bf71f19ea4bf1794a239ceee70e41cc1c280230758cbd61fb797925058fc284983fba7cc11375f7ddb8569c5be3769b3650aba78bf0e94a16d2f8cca95c09ba59b0df420302047c435bb500683066023100a2450bb9a1147e70ce5f3fcd7915d99efc35831a6e8d1c689d7fb48b62ef7c4e93aee53caed3c729aa103940007916cc023100a6c0bc823c292b5be1132862e9a90ba43dde8ca4115e72282208def78b7ccd46aaa0dfe532925061b7a978212f10b0e00302047c435bb500683066023100e4006dfa05d73aff818a5e0e7a5ec4cf95fa50fbbf89a57b4ae6920a8f90a10bb81621e407d8cf65d2b67ce7e56e5796023100e31669af94b92939ff495b481b5a4e5b655d49a67a15a12a46da720c20db9becf8f4d10e09c00e8b41aca93e5e8b404e0302047c435bb50066306402305a3513b6c3785142d3a092bbca80bcd99c1a09ddacd38ea3b9c38d30ec2c04fbcdd1135407660db3bd662e0fd7eea9b702301050f85ddd5a05296c3223c6e063e1d8c91db582a8bfad8d69bf2300094de83420135d28701652af2100a28a7ab4c2150302047c435bb50067306502300a228686bd34ba78fc6c16b5a530bf21e8fe035960a8330a77d4cfd9fe1227dcba9aec3ae3997a1fa4c72e76f25c8263023100bcdc132505fb57a399c8a1b75a8a14304d0d8b55dd819a4b5fb31e47562be7a8e57954936c01156fb2cdbb562b5c3b4d0302047c435bb50066306402307f83f9f9ed459be18a3fc5b844d381d31764f33e5a1fe1cd526802f8872f74a67cd1c7ce5ce557bf0f479b3ff12bdb2d02306329a6ed1f70a0e355ac244895edb52e3b6b7abd6e0e917f1b49ab238310ec44013e22b1e6a3a0d8447691aca6f19c7a0302047c435bb500683066023100b062322a424f34d4ce5fbe1abac8e5cdacbf4b1ff3c5e5823df3e07817100f9c7e10a0ca232629d2a6289c141ffec37d023100879e0f84b50825dca3ea1db89b57c00d55e14fd4eda3f04bca14b9b46874c2c23ec73dcd1212779e465dba9f888549cc0302047c435bb5006730650231008eb388d26ef29dc2375222fd622951e31529b262cf1e1e388f1480bd39655935e7974dc77586ff430cc31bfdea12053a02300c298bbb2da01c5f4fe4a038c9a0e12ab6b6ae4b9f2c974815bbaf1954f2d755fe83d185172b52d547aa7e9cafcc23030302047c435bb500673065023057936ca0db7725fc4e6fcc64cc7c6a3b63f5663d3385d037df4a1232a86f5ca54d8202b97a5c4b767e9781760f665e72023100c7e9d0d6d5964206229b768d70f6eff4198693b47a6b645ea5bf72dbb2be8a60f2cabd7fdff95c5b317b0aebaccdb4f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230737c8c42b7f1c904586fe0fa30421191fb4f5c8086931e0186dc10b82b181f740492a93281d97406588e2951edb8e772023100fbc2743be87879e81e75caee4e5de176f6b377f1adad1c3c76f34a0c490f3d4bd2b6451759ba8c466641f09965f1774d0302047c435bb5006830660231009d8e9e524d9f85bbaf2204d5d69e199896ef71e478e0977b426e7efa8c705aecbb0f9f71918a0db5c57f97758f2da6f0023100992427dd57bb104d4de5262292cb7d9aee2d2484c1e591dabc4b3c476ef16b501be3b885f1c7683e97fa78a414272f5c0302047c435bb500683066023100c87a792ad35c24e9bfcc41a17160835849f8322ffa08ba5c7c4031bb81154a23f336430969b397954ea11cc9183340d2023100d7556076c5d4c1febd1b63a661ee1bb5f1f6f19f14ae5aea6fb09f5be56521b57cc5e4a40b19acfad7f05fafafa0999f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023013bd2db3e9e0eef4688712ff9255ac5a26bd4ee593b49978828d5a07a444b00c430d359c71ec39eef6a9812c0c87fa61023100ffbf391300fb61289c93eebd88eba9f7cbb4eb7bdcc0932440cbfa4df2fb5c343c47efa3f74132a2e246ba91ce1a0b2f0302047c435bb500683066023100e7ad0de50417e1ab6907271e4acc3944c13623237df97b3b6d70ae6f11a6076b172c7ca9cee77a857a2f409085b08c42023100fb0255a22dca0be3dcd330fa1480344f90eb69bb1771203d1e8272c4977e1b666b32b25b20a090a0539f46627c06c3530302047c435bb500673065023100840cea974cccf94e15c9e9f4784efa5f315d0b6fa85b7b0745e99951a3c2e2dc7f88d47db0617b55dcaa8528c09d9ffa023057920bb52f1d3a868b2f8019a9599dec6f01ec002cb4bdef6b601c74832e801cf682a6e23062e9874015d5df9df94ae80302047c435bb500663064023075b64449b9ff0a84d37b2519e3409ae1f7d8ec738280c5e25067b5e226a67b75f8bab1c58a4750fcdd64bef8f1b86b1f02306987b4ec2af5bb6dc137d8e00fc1d90bb103c40274bd508ae0e31adbfabab5fc5bc8828ff8c60cb269469e9e3fd402550302047c435bb500673065023064769093163790cc11810296de9e172e6c948ec0edf5499b2b919ebada3f4a4fffb9e2fbd1c2b4c15a19fc0f073f884e023100d828c3bd0911e571058add160a744e47b9c98318999cc44a1eaa9971693fc26d0ee13e9154d30c86e7df40c5e3b424850302047c435bb50067306502302e4aed4f39fa4b16ae717f91797bbfa412a6cf8fe3d349cb22f7767d28124e212a74e8afda454919a6dd3b5b9ba073e2023100ce35a64bb442a4129490421b20cd734b67ea3a7f424e85ff28b19f13282e060ac5c313fae70d135643665f2e1668c9610302047c435bb5006630640230110d0161bc5f0b03ce39995377d3eed7681e6129d1445451b02c3362ce30b1ad51694f960fe85ed201a971b359737cd20230612b17ba941f630db8fe598378c15c4c0ecaf1023c6c135a10080709d59bceb47d11addcdb591ee45c7513603c698f920302047c435bb500673065023001bfb7d9400ae903106aa42fdcb7323e88d095a9ecf8a7568e116749b45651084490ed1fe4098b707c6a9b8d5884c00b023100e06cf027435698ba44c2acfd10ea773b95655cbd239f7c46948c5506d62a5cbb19c773fa7deeef5c1bfc69e796a18e7d0302047c435bb500663064023030a7d9afead8f19b58c5e01a78a66781571ea5eba6b7835dfaef6f1fc02488c06f114be3d098da01a212f06d7433a4f9023009a9fe89ecf416acf403a88a9278f1f367b3af1fb818c56c61b05729b32ecb422587856c7f19941d263507000b00816b0302047c435bb500673065023100ab1e082b42fa4e8c4b3905b19331d504ac1049193812bab1a46ef31fef128d89d082a2a92a4925fe5f5dfeed0b9b7ec002301d7dcae6f339c9318fe55c14667fdc76daaa59c30d6e48aab617bb508a90759bf1ffe208cab8c8b68ee5bdcaddf3bada0302047c435bb5006730650230762ef3baa1fc97c2dea6cfd4cf3aea0c018da48e7ef37d8e04947cb5e71b4f4f6bbc87a4c76348a17ae86708bb38c8e302310087d53e66acb2ad7ecab0a3e4704c4d848d49c0d8e00cb77b5f85fa761377491843cbba37e02540daee73c50f5d2c451f0302047c435bb500683066023100a1da792711c85b185dd84810e6fd769b509cdfe53b237f43e6ec2967654acd31666b8e07adb5c78a30caf3bcf3575a06023100c9eb33b8056d75c0fa65441081a132755a33530d91d4d0e25aae5113838cf28ae82433c150b9342a68f36f6e4a591c9d0302047c435bb500673065023070b1bd72ff487f3a8d9b69974a128d4a62f9babd967f4507848e0edb3c9e904c6c75a21a2d7e87a2182fd6407073d9eb023100fe5fa61c7b39f3cf5fcbb28077f23a355e40bccc33ed755fd69ba1a7c74ccb491781efc9910acb7a89f03555f995b19d0302047c435bb50067306502307b7be186e1dd3ebad93753e374a02dcb445a6074b119978c7d360f49fc62f7a4130f98643ada09bdcc4dfbf1ef59df00023100d6d3e951c16d7aae7f10c86966559632de0cd4b7de41758d437a3bb8cc9d46be081e6534b3185e748a539d127a5b17160302047c435bb500663064023000e5f09beed694328a16cffad30c2f9346191730cb466e01017ba4afce5ba9d2f86661518a54c8b5e532cdfa3fd000af02307bc62089693efb8bce284465a2058af9593cb54b740cd0b224654211f2f1c13f65b117a457a6f8bd85bb72c53a3294340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a34ffb4aef582e338200d4a29d79b8228dc2a5085c8611192c8aa12b9b854a55cef1bf515560f6e80c5764e86a8aed9e0231008e0904c4d47e29d80b49b9a24caebace9a75e8e45fdad9c387da09ae286bfff94f50ef4e14fc7b270dbeab18c42f612f0302047c435bb50067306502305e40330be26b9c412a69cfdc3b31f66d42218b4c62342d45cc4f735b4d99b291cd554d7b99b0e6e3843215c9b84ae6e7023100b124dc8af7e8c691dca8ed7475e5e417d7333014bfc32bf5f155a4ea4af2505cd2df0dd5a26b405201f2ddd84f9ea7ec0302047c435bb5006630640230740d244301cd4a57dbd2ad6aaa7d46a766b924d9b3a33ba453a5fed86a7014671d7024a4907208a329d87e0afe9f3d0602304c50db22466d0dac66c8f2a9c53830ae1a90b1c6461b5dd43e5ddb055b8356e48c60ea03d3ee61308f0425e924911a320302047c435bb500683066023100d173707a13679596d8c140cb01417c65b83af1ad079417a24a8c2f0eaed33ac2c89fae77be6b45f0c5c7d3961aed254c023100835c11bc1023dd194400a176a5823e76c8513ff461cd456a36e8ee317cea206266bb7ccae7c0251d186cfc77bda28b6a0302047c435bb500663064023015c544ae8241fa6608a31e782474c2b409a73ecfe1fadd8dac7367a61dab7aa3d517c934161a054776a0b2f7cfd136e2023071e565aa79b6993f5e2a28c9a04622c187faf23151d596ab2599879eaa8adaca73abc169b07d280d7edf0f3e978272500302047c435bb500673065023100c8b83f6ac3d5dd3b0c948001bea360ce0c7612f24a039ec05e756080606a52d5275d20633943a08de8586764e41de30a02307da5ebaf906d5bfcc254bce0ae6007b29a74c70a4be5e8add38ec6dd0f91693e2f4338816ffebfb2ded267c59ca0733f0302047c435bb500673065023029bc092df6d5f33f835942b58e74ee49100a7ab4012d7fa26cbaea219c0cbdbc416da0670ce5f032578cb6ea06163ff50231008c884bfaee08dedda2eef5a594d626fd44c8f0a5e5ee4c7577aa81886afd1ab8f32b044c77cd1a955ac2acffc545fd1e0302047c435bb5006730650230120266d4d9bc6a2c613ac314e7a0b24f9507c946107c53f54897d7ae76c3a2b2e2e4e8a71209b425d789186783f9cc9e0231008ab6b67079df0fa0efbd452b74b6ac3ff17cd944ad511452be3d1b0816ddc0ee154e6d7861736b6845f6e9bd1bc368400302047c435bb5006630640230134ded9ff455a0b7543cc71559b8998e021ed7177cbf0acc0b596c7b62b4c1a97bdde7939cd962526bd99de85877182a02301502a61d402f392f3c491df8971206b8dc5eb8f1774e118a27a30087b833f12b53cd65300d287b428da69166380568e20302047c435bb500683066023100e31cca310a8de4eaa5b5dd2714d15140e119310052b3c5e70238fe7d54f81d030d2a972ee17c891b5ba170c9eac5d82c023100bd0ab14a8f0af5ecd11df91d65d10552bf407e480fa815cd395ee57a1b5d71904c1f2259976f56559312dd19972ba4270302047c435bb500663064023049eb2e39cc9989da52e80962c9ac12a90df08fb654bde677bb6ed2b5dec5fe0a614164706ba445905190fa7b76725019023010a06f4c765cb2c895c580466638b1263807a33e152d2d40be232226c8d440675c082f2ed53fd3cc288538557ce4501e0302047c435bb500663064023046e277b79e4bc0a1d223c3ea687f90589afdadf2fe772f9be239413604d95a73c40d8bdf24a15bfb2ced5a2bdfdb840102303c748b0696aba2e96b8a39925f06943ebf3f6dc5abdb049f9f664a0e5fe77e6e987ad11f86105c1dc8d2010afa26646a0302047c435bb5006630640230051fafc94c8c5d68e8e891330155f00a359a5c22be24a26fb49841274a76ff717ec2666254d372fbf658d47b91eff51502300325fda6ba2b495f64f2e90f9d7678607eb7def0cafcc3489a10e19ec31130ee209dc1281d5523c98dfc24d7d2aa43de0302047c435bb50067306502300e1f7e528171ebd1ff32def7baf94eec10dbd53f81da9f6442a21f0eabdb86f26639a07090996a53af4bac32e8473f98023100931a5a6d6b5f2375ef122cdb1ad670bf34b7a8ad9b6b6338292da3c3bb2e5d425c047ee0f2f759342a4fc351caa257a10302047c435bb500673065023100bd9cba5c49a3129d1c614d946383295a92d2e0a12efbe9ed03e8bb19e2ddf1b3b5d988cc66b77d0ad72b392528caf4b402306dbeb29c2537e3b9d72be0068f67090b2958b1cd2abed0a01ff957d89e640d4833136238a1a6ebe9fde97c28ffe0a1ac0302047c435bb500673065023100da14dc639ee1742b155a296624b010f71ad1ca76449918a3cf90141f6a9c0d0fd7b676913e72a19d5a087a83212a587c023044737d0fc2b30fbe57f3ddcadf90bad0df346114458dd37cc4adf0403f6453061e3172a42896e809c9ea97622525d7940302047c435bb500673065023100c098ca6e4b0104f1146e23cdc87c487d7f06f7c868292405b4762402434fef756e5df70f23ce06c1cb4e08d6bd9a815f023039b4a4dc6cda041dcdca15b9e0d3c4e82aa5fb5951fd351977354cf8f05a2229f8e436de33cea75251f7d6f92a902cee0302047c435bb500683066023100b13b330575b94c8dc5a96bfe9dbd79c3bb850f9696d1cd076f315e43c104c18f1a94676a4a29e69fe14f835da2b1fb6e023100a6dffd3ecf8f538dadcc0601cf89ebbd9371603828c054bf7d7b52539f8e68f04c4dcc497b8ae610d15bc28e2b13bc8c0302047c435bb500673065023100dc5abb845f2b15bed432e180140d77ecb5133a6a62644d65ffd9d1ab3e77f0c5f423879c1344d751fb4bc200f288f91802300ced9967739bd1d6dad8a814f63ac4ebbb3f773327225a1df01e47c89a3b7c62e5620b4db969f86cf8f55a36338bac090302047c435bb50068306602310081ae64eb95f551fe73d12cf46a581789e7536acb4c950aa3fe20ca424c620c619777ba6b048268b096d997073eca466f023100bae1085ba286a350c7b80615a1fb5ed7c5a4386831089051b51e7c896dd4b1adb193a430dcf849c5f483af67de2458050302047c435bb500683066023100f41630e7e07c3521b62dd489ec22072ae5a3ebb9afa623090e7ac25222a60350414adb26dd93bde0c0cd6fe2a1d61135023100e2c0405726ac21e79bf53c7f9db53160018d555988b77f926cdfdea39b5a22561f59fcfbb8d09858f830fa02c70b4a180302047c435bb500683066023100a7479f4d6d09a3f22bbb1575fdc1d8a9557563257847591c0e0d5d2f40c43d33bf096fe874761bb3a1afa3609a725c13023100d8b06cda5ecc745efda1188e9161cff006d44e98d89a5a672135fa7178adfc4c7c2541a719b79e35e5f757db75f73d020302047c435bb500683066023100e7679346502aa795a26a888027ac210001ca3706bed40d1c8b2bc8f360836551d76e7b2109bb078667efb771982770bf023100d4b2e796785bbb503a018a8bce318d02f9b1d2f51bfea6a6b5cf5111bbc8db5f5a05671b344cde252019ac5dc581892f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cfc0c9efb5fdf0b9be68b01caba5cde5dd288e3e135989919fe370f6961901ed9e36540bea5ac867c66003bd2675b71002306173cdd370c48b54cec89b273a0a7d0dd14f12dca1ea35a16273cabb6a0868b5ae9d7072c56772c38c26f3bcd489bc2e0302047c435bb500673065023015156f7c68f7d7532411aa078dff1de926e6b3e32ad8ab54ce4ec99c6b0c0a1e74b31509f4c3ff399b4543606d0241bf0231008855a6c82490945937d0baa3482545005faeafbad3b4ec8b61deec8182c89dd696ceabbbedb29d69e13267ea1e549d640302047c435bb5006630640230084db2c8339abba7ec277d5fbc3d21f99168a22b6b3ce9962a09150d2b57746130c159aa97abb31ece7adcd8865a7b5002304c77f7f3768c57ba945742192c353fb842fe0dded4839f2532fe85442e101244cc7b99e96ef37064bc7ef376264c25c20302047c435bb500683066023100d0b023b6cc88d30e33d96abe72eedfd06ac81c901b0ddd4a6a2200c449088e489c1d74a055f0765f1c1e9e0b8f1bec24023100fc5e516df977c1e3e20e28e0d7e20473b84d827980f51f48c9d39688d3852ecf02cbb176010b00272ee61d1ba3862b360302047c435bb50067306502302d3607f976275b580d07d3749911380b2c1691dcbd82d8bccc3f3b89fabce0ab277dd1eefbc86d3695aa1aef54a739c502310081982a70587f4d8999af4635a094e40935c761d3f769a67cf16d6cff2d81599da2a11df75bb7484b3de45175dcf8127e0302047c435bb500663064023017fde222750968c72a0e4b285cfc1dff8b8e74af94346fbbe255bfb26fddda47766f44b5fee189b77699d4230598baf3023063e5d6b688c514b3dd9f6334ae6745134dd3119b47ac9cbe279e400819464f92038922b7c37ac200463ca8986e22e7eb0302047c435bb500683066023100b4ee0c76cb5f9a14a08642d69b16683270e5386c44e5af9e0b2fdf7a807fa09c654973b67f45f1633b3dacf9cb2cbbb9023100c368b2762592c8a3cb8315c7ca1f03d4c7976a5439666db6df387dc2dc20849911ca79ef1a65e7a5b5bc212f465d58280302047c435bb500663064023073392520864693ee27b75d9ea39ee4dc149ffdaf0349093c0bd08c808663e64052e13a0636aa19ab2ef2b758febf1204023073742ba28033c519d5233cd35fdbca71763373bd5d5bef4290ef10de01f80123bc8a96b46fb37bb43c945e568f368f470302047c435bb50066306402307a1d35eb163597751df5f13cb8086cd88786ab76e61449c046fa0d95bcd20999361442c85f0e4a7e6d7343a34d1232f902305a5868ca89dab68ce524276e6e49be88c9c4112b69b5f7e6b380d3a77cadc374a6997467ec310e6e8c84c28c532734cb0302047c435bb500673065023030329acb4ed832b0d5fce90c495680b9a5541e12dd67decbd39d3a0e6ed772609e03d8e89a9b56518d47bd55ae592b16023100c0365459e4d14cd90b753dc8b15e1bfc669c8a29bdff59fbeaea7d39c2725a3a27dbdf5cd23ace9caf8bed1e8dd54e500302047c435bb500683066023100b2490852d2121fe1be57570085acfce09a56ae0dd90577b327331d8c2205c84d2409d65f4b60a558487414448c506f2e023100e223fba9c9005b1ae29dbd77ca6d2ab4355e11140a5bd94dfc488ce6c1f2fadac9f76e66e981dbda0a13e4eae11cc21a0302047c435bb50067306502310091327f033dd9c1b7306e2df2cc2cfcba1fc9c1848f761f863bc2144d2c3932c6873c435faa3a9a91023c1713f562dbf4023006562979fbc0d7306f1cca691ba629e837327e10b9d8a40c5702a92aa7147d7e8763cf1265a4bd37844cdf253679fed20302047c435bb500683066023100a78cec64316edddeb3ccbc04b28201a09d9d6ea0c1162bc6989c8a29ba577cf9229fb078be06bf5d5b808f0ecb3eeed4023100966ebe1baa63dc36a8a93f0dacc6df1e1705d53bf28364422504385bcb92b7516725af774eebde843d87a96e7ea7f6f70302047c435bb500673065023100ca0d953ba172df7b57db89ea08351259904b65a0eb5eab968ffba22e8e96eb39db96dcbfe18a446f27421032465771070230607492477baf747ab040ada0546a21a20f9383c8e8c888d39489d04d1508812b08f258f3a62c590b98093c7fec5266b60302047c435bb500673065023052db0c3fa6647e7ed3c1a8cae5078475c80794d29c0fc4ae2ca27684c371e20e091de2c7095ae500b690c4980b3925390231008e7c63f6cf4de7923f4d28c3354eb60b598e4d1e1a5b07de3c12c9876c6f53f9b01675b2ec77a60f5a052d626734017c0302047c435bb50067306502307db307248aabd85dc2a689d7c6edae197d4ec02ec81c7539574666330670e63b5b0f2ae4e3e2060f8de9df7a34083f2502310099e0c20bbe450a634e43ba23db822fbc37b41311c2f259ee86f3fb1e6703410a397feefd98d355ea417acfc9839afdc30302047c435bb50068306602310098d02065e6868c79fc652c4137f3948d5d7f2a8932ef11148eb724c199af648dc949ccf90f49e700f98edb8af80adc2a023100f479193a94f63973e97b6ca410a2f8d928294628ebd5ce92e94c4f2210d561be3c5e214e5991b1f1f0fbb5073e1acef10302047c435bb500673065023100d7e3d34be2bd771c69559fc2ba7cbda9d45ccba7d9bbeb6ab353990650010a8a1faaaaa6b7f78e4ed7c9d8c7ea9c722d023077dc32ff14c170e66247dcf1c456d534b598f1bce55b7f512ecfac2bf0a9ce44824a103421718cfa9461a9eeb41637060302047c435bb500673065023033e924678985358109c4b700cda9b8cf29eb636b44871597520d48aa06097648728634519e9fed797f30d4a925e17c69023100df52f6a9623c5a4b339cc6ddef3962fd9450eb7a2a91b8ece8ed978c3afc13e5c1873968195af661af29c82c252357ee0302047c435bb500673065023071817a855c532473107537a029abd5253ae6ee978cd6e8ee3b71fb3b0a0a2a5a6896730f6514d5ec431dbb131cd6af5a023100c0427c1a929f9ac20512dec48befdb42b018c7513d7bac0b3e077b8170a03bfd7d9ed02c219eae4c99a0aad3487463cf0302047c435bb50067306502310083a693a06312f96892b3c0be485f1a8a142730b932a989e1331ff84d6b798975f08f8d020c53c67f5fb402491c7ec0df02303e8224660f5d65b34665ff49cff94fa1760d5250d13d7be1bbc4b55a1a770276cd19817a2d217955da7a213bdb684ff00302047c435bb500683066023100c91d040ede2bdf63b5dce700da414b92f0f03fa4537d175af0f47f8a67911801cd46ebe2fc0c05df89b8ad08939c5172023100d37c662545012ee2a0efd418fab2bcab063d63697d3433590e1ccb8613d868e32868e98bb8bde2777e8e7cbfb373d6310302047c435bb50066306402307e20251a1a08f3a68d3906dd8f04c0d18ce2e2cd1ddbffcea3516456c47d955ce990bd626ef9232a5355eab73f8905ff02301e470c17428b42f7ebd2d54aa3aa43203b16cccbe10366a90b5f40db89b7831974f0bae876e03d7719d6dcf700c46f840302047c435bb50066306402304a68db1d6217f27b377186a9395c2bbf8ac7c6a7ab9cfca8991a17d4817259d497382f3727e8c9f8cd3e54734b4e93ef02301b8900476d2fdc53f1e6b7922a0ac08798046f0f7e214eb4535cc99b364da319357827b2e622722833408a8cb6d804560302047c435bb500673065023100a8c598ff1cfc4a744097c01e313595cfedc48dba68b76cff7d128438d4e9053ff4bd9e073dc14d77d6eb52e1359d1a880230491a50bdfec0d89134adab238aed98e3827589fa20a5ab29125bc1cf2c2f2d5a320125856955848f5b05d6da5dfd21a60302047c435bb500673065023100a2a69341fb5ace695414818b115df92a8a91acd39582a54263fd5d6025e2cf3ad4051e8b67d6c69a5f2569b8024fa4d702303d0fb0e6b9601f5c2a0893be3f523d4442317c5b6c3d39d26353965b3d731fa46a9b35309fec45b2d6a01f023ae516730302047c435bb50067306502307bf3d974d52435c96fc07902b66be54782a3d9792296f99a1fcfd7a6e82bfa8f95a3d04146260419d282630e31146936023100ad090ecc8e5cb4dd9f7f7b44ee093b1ff27c1e2604ce16266cfcb759e8677170419f935ee6f94e16308b92433d3752560302047c435bb50068306602310085ccc1a18a90f4ee3a21f9734735ed75e44bbc9b01d2723df073ba9efb8a9702cf9589d894c56a7eeb9b3a75cb661ddf02310086d05e48149b2293e0beb13984960b929d63c78e057d93402a24410598db8a44c79bc3732e027f6d4334661538f2a3710302047c435bb500673065023055a1da53e45b67dd5beb92b53e37bdd475d56855c5122d50c5eb8477e5113031e2db554f17a0e7eb487016c5be5d9215023100c0b28bb9719da6116df7043236ef4fb213017aa5733be1c42b005fa71a6ff064eefa02e54a090cb3805c7e28c4b8d7ac0302047c435bb500673065023100dddc271ad53fad501afa250a4b1853e36eb56c595612bc4b1a24d5a27c47b705f7d2812bf825835329bfe5615dc6a72c023053c4c0d03f5ad749e593681027b231e4ba1bf4a817cbbc9ce1cf34bd35562746946c2ee002772a725f22586d391ac1930302047c435bb500673065023042e4364e9c23732440343d21019ae259da53966f08481ff29083bbbc0ce36b4596ab025ed30f4c163dfb5313c548f8b7023100b1a0ab0a92dda037d326d80a202a64c73146e3ac4707dd5f680fa73002d111d8209d986eeb33d61c1d100d27bfcf80e30302047c435bb50067306502304c32dd8e44acb94fdb0a7869a4ce6e216d62a932d8218e994288bd6938d3f072afe4ca89386d44d027cdaee79b07c2d7023100d4ef91af3ee6cab2944ae5ba17a01ae7aaffd8eb28680999cd910d47cdaf3c361b604d20a6ef603c764c9b871a91755f0302047c435bb5006830660231008a990645e7ba1dee8c2fa1696349df5efe00757487e321fa4e5871cb7d95f30a1201620e65b47e82917e29763f335f79023100aadb449535a9982df6fc5c7747a8588c8b62f235b3035aa52a90330e9e01a4092ef933393be042794d935529a413f9be0302047c435bb500673065023100da0b587d82f942836b6d1fd57d0e38df4ab1eb268bc12573122e549ad79cd2c97b27f037ccc6cbff988701317687b182023033bf0ea60b355ca3ef36a1fe21f7473d7116fdc5c466553b9ce270f5b99ffcef6440f8f3eee02aafb88444abfdcb3df30302047c435bb50066306402307b29581b37e9fac6714746262b09c56cf6f2130147e7497fda551746f650c7ea84ba1bc4bf0a80681cf7ed3c584e4bc802301e67f5d056847e4d345f01f8b3741513d7d3b72f00aaf66be3ff4ba55497751523455439937ca280afb73848a1e16b7c0302047c435bb500683066023100a9d98cefc30923b94f2ffd5993aaef2e61fc6abde4c5303e26c0abd2d5bb86dbf3717a5072051c2f31ce42992f4da937023100c6cf747c0e64d63be3af2f99437a4cdb585d7da15d15c832e0860c909c30d1b3812c04fad07f1d80def8c2f49c48bfa30302047c435bb50066306402307de81973c2fc50cbba841dac9f2362eeac128a12972aceb10819d3ef20cc55f07f28fe0ed20c89708eb1b79db487c551023064847334abde06e5c456fbf093b5abc5c8501561d0716ded19b294ca74ab492e0057ed11733eae6200b9f03371d2ad270302047c435bb50066306402304d2720967b533128ba5576267fc896d20c905260514a04d0e1ff9a388aba037d6102a13306b0bd1b64698853259ad7c3023061ee8997027c3c09d8a86a9393c1f7fff22bea2c5f87f0beb50b7a9546baac763dbaeed766bc0c76cb2ab9d7fc9e029f0302047c435bb500663064023007ebdd815dc8785aa154f4a113fbbee955bce6cf585e5e73662c13f411d4ab69ca9c73e9e6da999d9fc9ebf869f6f6a702306234d7d5b95fe51e74f9a92cfa5c1e43ed2e6d9396301ff8563156be22e73667761240d4a8768209d7bd46dc73e7b4440302047c435bb50067306502303bc0dae46f83be266663b6e0c8b4392bfe694310431321d757d5812e8724a1ba60008f276ef9c063f803b45c5cae9149023100d8a5f4edc343210870fe962e3b0cfecab734544b6b8012422c37de15575224d97640f8e8fe0e449c0358021c1d370dfe0302047c435bb500683066023100b7298eabcef943136d8e3a8eec6fb127d15e944b70861657c266a2fa787ad049e2c61ba8049526cccc0825c585f354bc023100f2d0330b2e0b395161448fbc7b6897fa19c88ebc03a211e4c07d02d95667466d04e9cdae105f6d6562f8e34a14c3c7d00302047c435bb500673065023038f602756760ff470c4a0799bad5bb9a5270982365a452c748aa72a0b667fc4d7a4062f76710d7fc9087da86e7454398023100cabc51f987271fda6628fca6989d4ef0db08665e11255cff5630cd3041680c0f0d1d2fa5a57275d39a63e1176713c1c60302047c435bb5006630640230074cae7c6a04d358accef2d3ba0d431042ac73514cd117dd172111e417d436436b95378d4b8cd4848945b9ee2676a095023046f0b45cf7748ff3d29175d844ff9a6841eaa90bd3781319a334897f9e5c669f476b15ec72a9f89037dff35e2c9bea530302047c435bb50067306502303d959f4a4ecb3624df426cc95122f58beb1b14e46d3453154b7147b09644c949b9613ca1232fbcd4d88f9d1f83592f27023100b0fc5c36b4f24b6ea3b12533af62db3db0fe2803d80f452d8475eaf46738cd341e6493ba99249139637b7e36537eb7950302047c435bb500683066023100eb0145ba2d9cffb5c470a920e164d3cc91245f2dcff97bac6b865d3479307ad2056ed7c2ff4e6ae1ad8a1c46ad627b85023100819d001a4729f1c2e38839a7aff888c3cbe1fa4b3ca2f56e569c7211e11d22f7251ebefca4bcbe3a4bd8497fa79f3b270302047c435bb500683066023100e0e371771053339049e102badf7514372f9c0075fc73f0dc2d288a2b4cb18e868e3f274ababcf4084e9ddd873216d449023100a61d76ed5f96bf87418aeee52013abe518be6372638948bcd16e2c705eec934a3ce08133db635fd21f2953994a49e0440302047c435bb50067306502305a022d58a1b0d602606354ad7e3115885118e3ee7a20a4c917404199a6ff5b190b5bb44189c7a760b0744c0058d38de0023100a0ccbd79b5429038a41edb1f919935941a5c0d97831c94c46bc1839c5fd36a69b5b47003645673d9d1e4c0352d51e8a80302047c435bb50067306502300e746c1bd85dcce09190c9f566ebc52d3c176ee35a7672b8034856a141e00b58f03cefda896728467072732b8d07b27902310086243e0abde945c4e135ca9571dfecd456ae182c7e28cee087a7706ce3d61508b6a8e787693de0092a65b201003b416a0302047c435bb500673065023046c0e9aaf1a3e97855d9403100633d81bc0f35fb80687e9a1dd039da4e7f39e279ef304f77d12d23164b5797cff8f06c0231008740157df1465a1cc109959f86d7d3234501c77f0268d322434b8ed09a0f50e78463ab54cc636f38cefd7e54140c579e0302047c435bb500673065023005ed239a477c7cb78c13d82728f5ab69c6c96ebd799ee9b0bef1905768da0d2dbc2dd046961ba18bc28c8780fd8034d7023100cbbe22c6da6168adb16290c96ebf61f729e810627101047b483249cdb35c9591f24cf17c5b10ea8e88ff0056f19126f00302047c435bb5006730650230513bdd96c7d99988fdc0e865e4298ec8c55257014cae7f24f38f81d725b0cb8d35f3df7b2c86f02297f45a65fad6dfa10231008aed55564fa3cf4717bbade171034a34051376956aef4665924b3d5b5d0d5b0618c3c162fed266b7e4d87bb9d99d6e1a0302047c435bb500683066023100aeaf530e5cf2f9a7be4f0cffb2fb9808765e5da8f4ac0141033f2dcda5121d2f3554a482c165edf9beead269f3a69b5b023100c8a68e7623c3429a648bebbca7c315462f8bf9c6fa4fed295d4b02fe5fac5fb651a444735838aa812e7ff501096237dc0302047c435bb50066306402304eb1c85f466f2875619411b6b3f5c9fa47030d7b90d3bbd37cd2a74aa0502406f28d55ffde38e811ab88d14742e495930230391d324f413bd7a02007e57bc5dc06eec392eaeacbe98809b9fd7803ec86d58db0e32fc88e8ab637b80fadde097cea500302047c435bb500663064023072afdd31d013ca4ec5ed30de4047b93df093afae90e49e468f895b22f803c3dc82e1dee77ced9bcbcb721dfc99647d2002307798d2da91efd4e8450daa9e2625d3c9291c2aac88f0cb3bc503f6e4bdc61ae73aa6afd94647af819c8c5019926dae5f0302047c435bb500663064023007c638b790b47b13df874624f256451bc4c454f9905ecf3dd10876b751b3db61e770fc19b945a2ef944cc84114ae56ed0230277f47619ae20c97f4f48ccb348dc096ec53acd611d86d5db32eaeed673f2ef9098ebd846ae8b0d66a8f1c5147a2286c0302047c435bb500663064023064061af8eea15b86aa174e52b47360a02a67669fde95e5bac8fa3ca59a2025b4ebe4e07b7fb56e18b055547254e0d6de023068fe3aaf74fad48ac2e0fe8c2a124f1edbee071f9b4bfb4606f97c47ba777ac1a2d3775ea80c834e56cdd6f72ab17e5b0302047c435bb50066306402303d75a537a22927d6b1ef6f7233a106496783df1b60b7c3a55b050ca473b81af01f61b3e76a67b3b5b0f19adf8c06c22902300838bf67f4108fdfbb045c1b224071c18bbc7987170069b301c3f8dfeba77d163f5f0eaf4a5b0fa8967c1aafbe9336ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009e3ce194a22d30cd833c9c9bf428557042a7da8280b433376b438b1ff0dca188cc661791edb2ea460970589db66337a40230571774e7b46263940ecdf9ec203a1174217cb9986ecb522da8f8f0d813210efee3ee4623a0e2fed3449a76187a0ec24d0302047c435bb5006730650230666870d44d2a814a11738887ddc8b16ba7ba2e83b1abdffe6c843d08eadb3e033697bad42ea8d2d04cd68acc643ac2e1023100b5ec7d7cdb412effc9bdbf842638478bf9d6329c7ad7ca71721bdc2d1dc69fb1f2b774dbf1f44bf8591a28695656751d0302047c435bb500673065023100faab4bb22d1db67226c8eb49e47eb98fc05479965aeba5687de7ef1494512a768115b7d25d24e444fde921af9b7637cb02300d5ab164754c0d028670db3465e0cebd449856a55f1d14247c50a15a48b453a00fa372fa7864e2b0bc28e9ea9ce726340302047c435bb5006630640230052488e2108eda8b32187859f8280dd34144e8b7a3c965c9745bc836a4d7792f40667aea2f11a5acc669de4d82b7b45c0230788a574a4d762468282df52c436413558045ce04bf173a374eb491ca73b02c202fe60518b4fde5769e55b2e67b5f26cd0302047c435bb500683066023100e712a907460417aacff8590dc3e2e4e50ccac4079b8fc76e347cc185eb446f81b18a63bc1d30f43e8b52ba59bace056f023100e3d1cea8560fdd13ab618c3eb54850cdbea0795a6f4334411d55d91cc9ddaf143150a76d8284ad6b5176e518e6292b800302047c435bb5006830660231009072acca47ef748ab28360b032a9082f5a7278ea35ddc28097f942c813c38afe0abc7ccefed36b88dd145f81f7a4e920023100f81c3bb2c5e30c5a8d53f2d340f4b43f8ed76cfc10d3c926edb865d53fc6c27dec6c5dc4b5bb8e5886bf66a1511281250302047c435bb5006630640230412d19ceb7a4f1e310ad5bce29f41482835b29f875b7e0e97e5465dbb4c718161120cc2d2bb32226bdbca25641a7435c02302588f34bd0a342c340c3b6ef7cd7d36f041e66563769b28a29ea1e46cbfa776dc7e79f0e50422793fa229beba84854600302047c435bb500663064023045f92e7690a86a7af36105ef19e282d6ec078b85e4c4ae6dcf6a8655721198ff2ea3c32eeb6532bd9863cc4d52f81da802307062424397a677707f7714d1c64c4dd42a1d31f4174fb437a0763a38bf1fd0d0b1652594990569d09082ca5a092b49770302047c435bb500683066023100b6053c282b15558e26d7f3206857f813a89b5ec384810b05312d08f00120671008ad6a93149433a935f9d38895c5ee21023100e6554f7544e68130e3b43eba0edb3b60cc03443de08b80fba70c8581f0e1072781ca79e95fc1b2a8893032d0a72181200302047c435bb500663064023074e6ad6952fd3a5dcab8221315b98967c03627bf7fd4f228a52cbf697c3e28962b3ff6ed9c3301ade6f48f531e6760920230015bd533a58aca679a341dad3bea965dd39a80d089021332dec6fd818c59ed6ecdbc83f92c363e4dbfe442f4a234a12d0302047c435bb500673065023100979d2d20f8c4b9b85d379ffd8149292a63b34af79d915ec3832a658ce6918d65ecfe4eb89fcadb347fb301f9904e160b02301ac9f8f9a85b1bb1a5098eab597f4fcbe448a2c15a87e48f8b2c527896a396bee823afd38f84ca4ec143aa9b2aed8e720302047c435bb500683066023100a507f340dd41d86c698758be8add2d736268e5f5b5b362e4e8cc0de6da3e3eb74d43a4d47fc6db730052c20711d362c4023100837ed43cd938837c6e40266092d81d804913f0093daa5f3bc90a8e0f9112bd9c25a33bdd0a64e1b64d69767299d040c10302047c435bb50067306502307ecaec6a2f092683cf42e49a20d7c7e7516bb61ed2ee4de87456e58bddab9e0e2e12ba9aa707b5f14d127386a3bceb990231009774bd11ff3612ba8627108cb2a790ea69a31268233e52fef31d25e2facc21e6a722a7540453bd576581289579b7c6f40302047c435bb500683066023100962545e353f0a3a0e778a0f42c877c9209b71e55324c6e2874a57b04f640eebad7cca74332c80fc8fe6c1d4dccc62c4b0231008bdfa0630f85b6eb67e0e36793455a3b3f5387464956d8825a58c19f54ff3a52086e28fb06751e10a4830ad999056ca20302047c435bb500683066023100fccf4a139ab0621bf8e823e782acb5c7c29b93be2c9e4e088356b6f4709a2337e1cac85023ab36b10d12a11af478bc5a023100ebfb6751240ddb3c44da476ef35d08cd88c85f381d546dc732221a91e620fe88454a93c6fc8f56d46dfc38224badeb480302047c435bb500683066023100d8e2c6b5bc074693fbd6fbd21d4cfb0ce2a90bc771541ee8ea77097214aba6a1c343eb5997f28abf9e64bfe016977e35023100fabdb25c2563f39d0bb564a53221dfe93ebfdf1574d48b4fda5851269adf4b724300e5ff17c79cbdce7f0658de4eac750302047c435bb50067306502310087bcacd2a43af261e2a59f996ba672b1793d23137cecc3b7eb18a703baa48acef6a29fc8448ac7241623017b2e2ca04602307da6c3fef5ead769823ac4a70c69dd1352e739cffa9849fc1c208e7557b0c9c7c9ea3a93446c36484d2b6e76d9ace8810302047c435bb500683066023100aa6d4bf2cea2da5da885df40c69f3e240107013660b71d7cef4d50c784d0dec4c31620fa80d84c80519c1036b01ebaae023100b1ac35cc1ae9a0a49b2962559905497bd85d93f1dc3aefa5e477a84640cb9a129723cb1219af4fe941fabb33569c1a780302047c435bb500683066023100eabadeb5fdf1fad24ccd4e8926247c01de6950c7aa9095503c0922bd786049b6bdc17fa5230c483bdfe2e548337350c3023100fd029174ae8c85d6a21a861e17010ecfd50d2878a6bdaf0bd8268cbb1839beb6aa8b8e71ceca0d079c26127a4fb6a7ef0302047c435bb500663064023071625faed192c4a230423276f114ba2ad147921e7daa02355bd8f5a317cffbcbbbfb3e293168f0b4f5fd8941107179ac02305766f8de512f54250bf520e1209cab78dea5a144e92f5b7b1071c286a08d219f75fe6502bf1f333c0a036045f01f6b310302047c435bb500683066023100b2a6bd1fd4fcb8509629521b142b4e01930d7bb5e5960448cd23bb8a28fc5861637f13c4ec3aa6d6d52d31d275735bd1023100b8b4ef940639087fc658663f3dfc11be787c36c8d077ae43ae35c98838b24a261d040b6629814272babbb53be702ad8d0302047c435bb50066306402306569d91b4be58f8120b4602e30d8dcc9b532ed36c2f33b25f0bc9aa2d2f1ea534589445c2444b45bd26a23aa19b9f4a6023075b2d85fe8765e0b2f727d60e0f89e90f75d7e2513112e5aba90fc3130b250abca830aae3458ece0c9f091da343d282e0302047c435bb5006630640230404cf49794be3692033dc21378e80c1ab15aaa626596110e1ad396ed30635ac0e40a133f8a220e07afa1aaf6a7434afd023040f1014096e8cc7fafd1c1bfd1956a580cf3a3d2a2486d692563dae23e2c2538469c22d6d631641a6f6fa1ddde4aebb90302047c435bb5006630640230190b934ad3e2449005ffc9fe523907d28aa5440135e101a811b9a98f4004c60d208bf9d602191f5334dafe7bbae5a7d40230205b16c247dae3cbc92cd2065d09b57a29eb2cdcb0d71055722abcd5768d59fac73f1ad53f9deb26e80cbc5da301ba070302047c435bb500683066023100cba55d159830d2fc86dda1688b320386b84e1fb0c247e1c0f09311dec0ae3066bb6f0034f617258e9faffc77f6db6f46023100c86f25f2cd49e3abadf057dadea9b4d0c3cb403e982286a199f63166f95d474b45ba2d6492c44f0297537e660c961b9b0302047c435bb5006830660231008ec9f599d9f21b46efda1be7c0c4fcfe2c719cd57b9bf9c2f2a8de0f53a6a4d145d6ce4b2516e61a51d64b4bca09c9c1023100b90133c60e632dc2828b37f50a54452f15650f3cfcb0d87b15828e1af77d9830e6c95f7201d3d3d09eb18ac351abec4c0302047c435bb500673065023100e63092af3c804cff2a46b279d4e8c122bd72bbf041ca2a171e102b5e0672acef93d6e6ae8736f9094da94e424532ae440230173e8c32112ca4a42a2c897d69c9e4d8fc290fdef831dcdb419e26aba43597ee151ab9e6c9593a3312620cbe37f4a1300302047c435bb5006630640230040a6f9a2abbabd2e2a91d173dc6d6c8b0fe1d2cc9600d2eb6958dd61c733845ec9cd76fef155e042146b9977e31fa76023005be07421f502696688b6a21b0b1760bf82cee6c33d008fc450c42d35500029a06360a2bacaad5128811b3aee88fb84e0302047c435bb500683066023100a88d560908fb5a3b3e96791f6fc2c02a95eb2fe64e5f112e82f55d0868cc7d6b38c4aa14f20b3aed36b9f9d409460c9f023100af903c8009a519f0f7cee8492000355608e6960c48e4896a195b2267e6a53f232fc0f0c3a87541b600e80ff1f40c9bfb0302047c435bb50066306402303781f49aa60198898bb8f10e7194fe590621d49d93caba43e3c9a998c72cef0cc31589aa64c8e8a4c728806669c4f4730230268b78f97211b666ee9bdae30897d95e1861813c1177260cf1f56ce9d1170c8f1c98f202adf667b545a2c9cae20b53260302047c435bb5006630640230610cc709a5e3d9d75b6bc26c4819809fd73b52c1f0f928824f037464f9a2d7370bc159f0de99493549e5e1e30580057702301d670627c6e2c5f24c7da7d1815c6e5f3bb2fbd3752086d081bcbe80f1264a3d0c4454bf1d114d68e0811e06873deba60302047c435bb500663064023077ab6b7dd280548e62d1eade1b826053db44d4bdcfa57411321370bf2d144d6558e1cfcbb60c9d9254a16b27f8236be802301797252cca358098ad16957c7c604d878b065036a8573a6b04148a6e814f49adaa0baa0139ca8d59fb084846e336050b0302047c435bb500663064023025d3f6809c37918626a7496995fb124dd735f83a73d219d899ac2078822a590ce45082b2f92a2b102309a03b5446eeed02307defd03cfa50d3a48663fb36af957741c807c013a9b7ab839e1b5b467e7fa20531e7b3efa697817109062a4aba9e5e790302047c435bb50067306502303d195222c62a2ea9f607259010c90432bae0f1911c78587747678dbebace8e5bfed9a12d1521d70bf7c8bab5ce2a4be602310086d6d2c407dc7915ec61a23367f30d7ba7c1ceeaf99f7908998bdbf4d282c5ab73ae14cca0960f2eea31446540aaad030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008c2bd9332cfac0dd76377ffdbfed4e3791b5dd2d8ce66431a96551357c666211bc9dbdf6f4f7e437ce8261b48b8034bf023100c9b28d72e198e06cd98e944f54e6152a4da1a96725fa133987f7ee83385b916f7b1c473dfbd50c7cebcdfc5db3e9ee060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ced5f69628a70fd013cf73091d92285a486f4fd7ad3ffa7c4d8eea69cd2237877d7d85ac1b06ba285a2671043043ab6a0230577aa197a8083d812816c234fad20efb3f741e44581fcbd4ee42de05b1f6a1efbd384e23f9c7f214dbdac11df994d8a50302047c435bb500673065023100c62c2c16cf555552ebfbf2bc120127a6f0e5d6d3ba62b1e5b9b1d2629585265da825ef72a7b31c5038aeef555f8a8cee02303ead8920e71d281c6fa2926f20ca891fbcf5e8e5732d1238ac57d9a3b049340add5ab79bd9f834138fbf8397958810ab0302047c435bb50066306402303843613a6e4de2e309b0fc62b236064e927a8cec7cdbdc01311d0acf667c136151894b1713ef327d6bfd61d385c1d8bc023054a647feb52a95e6666dc8d0257c8cd7e3ab8dd7fbfe31aba6b1b87d58b1317c4240901573daeb0f3b9c857698fda43a0302047c435bb5006730650230326fe6ad59942a12a2d93b49d42c99f3877a652dd513c2076d5ca839012e6bcc53ac883a57e95296865f2212164a217c023100f51119f789de2b450d9591c68c46bd58857e4f16a00c909c36542eba78465bb21606647108c01253794c4807adc6d4bd0302047c435bb500663064023024d2f8b5b950eb3006375c9eb01bdc80e42be60c971cfbeeb47bbabc79cf5fe266e41649281f952d72ce866625a3d5800230264153ece3cc5870f4d067d2ca733744a4a9bbaa0cec47524cdde31d223ce1fea81fdb0eecf994cb1c1da615f86e4d170302047c435bb500673065023047d79c5a5e987147fac5930a70cfebb21d9df00445efe7898805ceab5ab258ad1e3df48882bbf889e65449fe778ddbe2023100db89a75e9b313d405848972ab9a70276fe297e3371344bb059ba549d9212e49b1b61209cc500c336084c5630851cf3ba0302047c435bb50066306402307e6432e365f100370e7f0dc4e50ce974432d9d47f7768c26cfc8b41658b41df0700e92374e0bacda2d9091082b12ca8102302f934d50eb71a4f29e88316589f9a516cfffa52c40bd0521bcba22fabc984fc4d4d9c93e478a24355c1cbb4d50bc8b820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bbf9a93a2e07c4bbf99f78529cd12b59ccee3dcba208b0643acb7fa859478a43150928e06413f9bfbb8f1b1d3222b5550230555715293d3989fadd58abd1dad24a7145e75dc5a649c6da224eef692b71e92c63e4de9a03094b86fc3a4244b9dbff170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009697c54de7756684f12987308bd484611609da9f8272a82b4e2e353ae02b3f62fbfb0a7fc68d08a768a9efb4c62e3f2d0231009ba960a6064d84917f7be2c9d618b65c12d4003c582312468ab2ae3698387de5dd4f1e71424ed0c861c3bb1c2a4a72ab0302047c435bb500683066023100f61e1b981962212b031cc7706b5527aee302ca2abdef19ce5ad921f2195c50f83ba8e344c5a81ddc99efa0d6083a7af9023100d9ae5f06c9e912fea3ca0258b20e8e3b30460fd050de031c7452e30baecfd299bfe95f3d99cf37b4fa0d20f00e41eb2b0302047c435bb50066306402305194760150594e66669cea5a3b41c19154aca9c69b8aac79aed47ded456bb8fed2f355b8125fa074b1a914977778574502307d54d72c725218b20154fef5bb642a30fa7fa75740aafb85cb5e2aae77a804a3e39c1b4d7f79e3b81b4585d7de06df090302047c435bb5006730650231009f0662686918efd34eeadcb88988f6245cb108eae9809df56b257044ad8c3cefde8634107c121969ac00aea474d2cc4a02305c6e7f3afc1387c59ce8c7168df036d8e8baa6eddfe70b4bb2bb47d9b2c5299c2d1e4e4c96b89c38558e8c07d51ac28b0302047c435bb500683066023100d674b8f957824726a530be878bf993b6dccdfd7e281353053d50fba6827f06776d5ba3444276cf05d1136c77deadec58023100c5ed623ff426b5c8d7d08cdf9c2274952a5a4d1fd84820dbb62e9c62f183992e6043423597c091114ffe71ed96b14af30302047c435bb500663064023004b7ae5edfb0abdc1bca2cd136a10e9dd68fdc09f2e9ad69a4cdee860ddb39b2b5df441e3d2f88608a7c0ce8a01b5b60023010fc7ef90c98d78ebfd70cf97e3b6828154bdb48d3cc5fe52f23681bc728bd4c986a32ad225f902ef38ba0a2893800420302047c435bb5006730650230269c2132c00fb688974ac4aea309c59feb382e683d4250e5fa1de3f0db7fd05ba3df81ed77becb47bac99180af14c30b023100816955a4f249c027a0b5c49e91afb90ac0d9c06c97a622016bc441cf10e55d03d6c65caf2d0e3a2fba79832b6a3881810302047c435bb500683066023100f43ec4d8304efb34b606660bbb6771302a0f915828a062966cdc8a065e169f4790051e19759d5d1aee0d92fb623953de023100eabe5c34c8e313ab4d539684c549c302df7e7262712c6877f687dd890be3af5bfe8181aff7256f13fa9058d160655f760302047c435bb5006630640230605117df5958250db9db91dab96bc394abb5075453f46203faa6120fb272651a0bde4b307e8d9feca6940191c353852f02302c965343b47df7ab9d0617abb2cec8f3da19fb980e0a41b8d318d8a88b90ed9c978b39f998df8c8558bb6ed7f9e9f9450302047c435bb500683066023100be70daa755cd086b9c62495d9b6fddec3814d49ebc9327305374036cf20d0d672d470618bc17c2271b23edd50f07f411023100adcf224cd033ceb45d7646b3f366ff8e321ff9d309cf8e7c4b15d84df1056bf266c50d56f059ddb32d9915716eafab980302047c435bb500663064023100a560ffe8460e3c8d7043b1429c48e025c0e371c8037c0b0bc7d1e7d49140644bbc0c37d6cac6c678caa120e85a83403d022f706fb7a58cad8838bd648e0bb66a3bfe6f589fbf82f1710868ec1a94cf192b5306278c8c267e77e5e6f4604ce0a0260302047c435bb50066306402304f003e96caf01521e739b5d749bb617de32da443f581d09277f0a996e38f56f41421eeb7b04600d1eb0f959fd2b7ca390230607616d97fae30f6f7a2f1484a0909f8bf77fc8fb6098a4b5fc2a4df44976cdac58fe1e6d35cbd01b0284affd7bc67450302047c435bb500683066023100f7646b1dc1672e8fb3074cacd9dbfd86ff52b52cab788159a6548ab12beb79a2c81d284f905cb5602b1885f08caa4dd402310083290e26c17d58045dcc8bd8eadf7b9aa3e542a3278661e0c705ce95a11c0623dceef9bd541a7b7c1b6a2c3c6a5520c80302047c435bb500683066023100c93980b33162fad371d34f118ce5ed4b59e42ca09980f5b264330c7371cbaea02c8e207e7846b8a62cb9d93d977edd06023100a9149771c91cbe47bf4a728f12731815b65314900c6e56cffb9e67e807bf402ddbae0db01b88bafad82c4d8a186c8b5b0302047c435bb500663064023100b45d03b9d342b92fa55521636934a97d1f6510314acf775e0406d8b1f9544ca2512c7734990bac28a844947e6856ee79022f3d3be129b7db6ba3fef7912327074211a184bd49e8dc77c33b66c6fbd306b91dbe63fc17045a126db8e5fafe79f6080302047c435bb500673065023100b7ed16ff96560887f81edaf276b6bb32617dfe5cd191d973932727260958929cd7cea9578ea46b96f23eda184a35536a02306663aff094b73543288ea535c4c050dd5cb452b3d922430ad73f3d85f7d9edd4d30513875138545e8ef98cbd4fc1d1970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306763dfd7ea1afacd0366df395eef7ca3b790994c4454128d237194fed3bddaf609e18f2f05ed59a3f0bf033568bf4242023100dd3227461ebbe15402399a5214b1c01a0c135dc3123cb5092c6a6d0f9a163113794588f5bda36e82d44ecd152313e6ed0302047c435bb50067306502306547a93d775cec2546ef1b3af1bca9d370b7eea0ca6b09986188e252419e20069ed59ce7e26fc1624e1c8f5b5a334495023100895e4f637a62bee09e165f6570822da03522b7c341623d9bfeeb5056990a6943cfd52874b655636b457935e47575cfac0302047c435bb500673065023100884ea7dde005692de0a3f67c04b2868812e94f35881c5684b3100b350fcc3e51d5094c6e299891ed814351fbdc7c48a5023066bf15b9974a1c4c2a7ca97912731a051dd477a013875164d6ee8de7ce426d3196386e8f5a5728b15490a1b55ba5e0990302047c435bb5006830660231008fc23fba7c38c8555cfaed7b50d9402fbfe52f20a25a063d4c2751b0e479d0f3cb511efdfbb39b9b6ae2f1fb84e4c9fa0231008a498d16127d9f62590009433225db7a7f0357bf1aa77d6de5a4c352a77b5a2b5c6f793d55bd46df5ef1123b1b5ba6560302047c435bb500663064023060a9a1f88922ca52d0dd70ef5319681a5d4137f58844535c220fcbdf639d30591b272a7606fa436fb23a12aebe39d013023017f48b509c5238bb554d0ac9c4df23f90747d96ee6b04f03c7552d1c67b78b6232d176a76523d8286ff3408b20649cb40302047c435bb5006830660231008ab67a27e0ef8ff385c08f8689354dcc47da1336b436d68e26ea16b11662126923a884a7ec30202ae4a79bbb7d2819f4023100d70910dfbe7e2144da28609a10f018db69b485e2fc436ffc632d62868463448233f7015e7c58db5e33eaa704e4b05bd90302047c435bb500673065023035b1b68ff322a1fe627ed5a4b8e81643b37e73619ed86427bc744e54d175c2ad108966da0607f4b8f051ded4cb651519023100fe9c4ef99667cddeb2f68ee3df6ee508a0c93f204232c799a240fb04e01bc2d830afa70d77c6d7ea9f75cd2344ac963d0302047c435bb500673065023010282d1b02ebaffa7872e2a5e2e320c8cd3c0e7fbca302bb9815c8307a09c02702b86cd4d771fa7d94e636b4d02da7c7023100b50685e5201405f62dfd3f6a92d1658a08477ef0930074ddb47b3d1af375bf82ac8b8f0c8b6fe414c2a4fa650d7aa0810302047c435bb5006630640230081d2ab27d9ef21e49c84c60d0220b6b73c5eb9b12088a66b081baf957052230371f091a5e2250cf80222a480c4125b002300288d4daf22b42eaea95309021a1c654697bab8dd6bf59db0f3dad369838108dd3798de78d23df9e63c2a6e11f2857380302047c435bb500673065023100ae0ea5929fe1ead09a7b4d076dcc1a2106293b557985d0fb7fe41ae965bbe724ffabd20c6cd15fcadaf9f744e96755ab0230538adb0a762575c76e289f59ad0ed809381456043d2fc2704690c4462156e978ee78a9dda59b50b53907758ccbec75810302047c435bb500683066023100dbfb32f81518fb81b27063877a4b755ba21cd8443dafd29ee33abf1fb2c5675a3ac4ce09e217a9f8bad56be484837cef023100cf5bf262805c36911c2855277bea3d873f8eb864d2b47cbf586455b32113a8ebdaae4fd0c360570088b8dba45f4a103e0302047c435bb50066306402306655b8447685b56489d5b90254ba0896e377d07b38a6f3e0d21472ef2358d2f499a71838b9556e55057313de40e24c7c023079164ee0f5fe7a0675fce6ad5977c830f02b22f21b1c8e139c75836401db7f383b938ff4b90a1d686f53a70085bf37b60302047c435bb500673065023079990a10ce0829a7ece79b2b3fc5daae4e529839ae1d612a0ede5aa8c7baada823a5b254107bb4fe29ab088db9044a10023100ab119d1ff97bba816e665b8d50ac2ce21f59cbe2cf724180c4f2e4c6ea233e140fadf43d20689663da6d0abff06c8bcf0302047c435bb500673065023100f63d1dfd31b9f0e02e84c93b804e318c6385ee38c896291d5f70f40dd21ff41534d66a4d768c0fa9fcb1fa2a2344e99f0230632c708cbab11e473ce090e2e1a140a9fb81abf3bf8f901269a1400540e5d07d0259a8e7127aa42edf06be00b15d8f8b0302047c435bb500673065023022acd3bf339a8b8a52a2fd31aa72c1926e6302c9c7c405f638de21a0b9c214e643ff773370afa590a4dfacd3dff52a990231008a7f957630f5c5bfe5556aaaaaaa3e8c2f2961bd9ab654f2c986d98bac845e70db1a602b1b8a10e654758f60f66eb9fc0302047c435bb500673065023035be5629ce8f7358394c7ecd1801e5004737dd315f20f4688b1398a82e7ba18fec899be89e11776329363443217133a0023100b2b66ba1f8a25f4a6d04e17a7e8b6b81c4bb28897f6b246fbb11c655bc4ed1ea1ea1a20e706eca2fd3308dfba94772850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230543477048e57d8afcf93afb08c45365fffd75156f082109941aa5ba69f5a48da74b5e01c76589bba0bfacad4591d46c6023053539d6e159e34566f71f39227190ec405075a8bf6725de88361353c50ef6873a9ef27c1bd07b8827571f9afd62f15b90302047c435bb500673065023052d83dd0761db7017f047db41150b131eae1cfb9ea38281c1e4295380701b8e0094c8e62c824ab818b0d36bf6e01b710023100984ff57dfadaf4e38b31270b6d6293675efb1150547d458d1fcfbfbc6b3fa707e4cf615a5bf13cc6b7750a3af13e97dc0302047c435bb500673065023100e6968bd5d4c92f49ef335d490cf28dc73076210e30141ff9566aa61d86c024fda708972dbfeb82293f8216e2d188c99602306eafc783db36c6cb692eb0fc8ac1d15b476f9eb0e0235f6b725cd3980c4cd2fddf9bbfa3d1014e8a6b2c1980f46cff620302047c435bb500663064023013009f050819ff2936b269f8aad68ff67c3260cd4808656b1b29148adab79b5d829a69e5f9902ccfc9f94f390fde02ec023058e66e4014605e40b890ba72531e05caa1360c5d508c66b753db63c3b415e2804d1c83a05395217150d32d5e84ac2c420302047c435bb500683066023100c8da4e5447c7c958ca56bcba1009c6dc999d7b4b00ad99f156780e6e99bb7cceb40c3e0a6ef9f665859f692971fd96b3023100f0d959b42593442f3e460e2e70929358743c966273104544d72fe4281492b19a15539e48672ec7c62c885289ecbbb10f0302047c435bb500683066023100a02d42fbc15089497c5680a04974749fb55e0627f9e0cc322dcd3ccbc87202562b3acc61a0c562b923f0fa14507dc7ad023100b5352b76b28e8b13e99b3e42e50234ebf9dbdefbb17f2d912cb12663ef4c59db11ce7a9e9c6f373dc12b9adfa6cada460302047c435bb50067306502306b740944b468bb0060aea59ba49ed60c5d50606e0613df889526098d3d41b23ca89d2f84f7fa43c63711b1a5ee7ae7a3023100be97b1faea33b1710b0e8f00d6ca48707a8258afee28f758befab8d5e68ae21f52a3c99dc799482d7ddb26e187ca406f0302047c435bb50066306402304177b98509831a402e9a12d7859b9d187686ef7192956f1b00b656eaa644540cdc09dbcf98c300fc21a2a0d789183e9b02304ee1bc08630198c03de5851190f80074bbe7cc29a98eeaad936a669ac3f79dcf05802bbb1933278ddaab7b65c96ad44c0302047c435bb500673065023100ae4ffac7afe54e1c1a1079b6f37c35ac7eaa92a2135014d2667a2c12ecba50e5fd6fc6fb6497df2b1d44b41a36bc93d702303e06cb4253464ba5a2dd2a82249be5f845b25d458a760d4e6a163308832c22cd65835eb88022fb8d008f6d8ad123447a0302047c435bb500683066023100f8d0a3621a1f1c885eb7cdd768231d9b65ca5d60a41d7567e0fc2a39421693d4f465744015c7cf8d8d16a454fcffcf2d023100ac9086ca83112991a0806fa207cad73de09109237ac0f32b9e7b3a597a7142c72e5f9feed7803d54834220fd2b7bfd9f0302047c435bb500673065023100aec87370885967140c517a3114f5a52c368ff3445375d90994340cac9fee34c016fd9e911a19eb12a01f2a19320eab68023077139b03f1be6738d45c32741496cd2c572ab9dd8c35622dbf3655cb5618b0a6fc7e85761f899657c59eae09e68c3f620302047c435bb50066306402306a25b8c88d3695e745507024c6d86b5634ea13867506cf64d6f615aa57ca4206691e5891e1ec634795f67740973339c502304339bbfcf4888a9f9b1dc1422ce270f4171649538dcfeca50be8b9395b73042296226df730eb25464ea00645a9184ba90302047c435bb50068306602310092e84e2334edb0f090a3512f568a4179264c33fc98cf87566ef3163798a7d6b113f7563678659143843f63ccf2f793b6023100a9c060124f356e7f7c47c932da7fd62a92dfcee3c1e540efc60aba8b090fdce928592e3b1f543e68cefe867b5372cce30302047c435bb500673065023100e32b4667c85e3fc970fd66ef1057c1f01cd9dd5e5b4b6d6a6845d5cd0876ff26a02820fc1d68b4af43435fb088f36f5802302affae2947272215abb752bd44f5246f53e1584505e5a54d29379020b699156cd25a6e95ab35a578498ffe1d88bcff890302047c435bb500683066023100ef7f941cbfb1d017e91272882cee539952983c16868608c5f6b8d0742f4a77130c9f14c885d8d78eaee874123e46e4a4023100927e9f603f5398517f65e55cc47677ee9fe920146d728d8a576d8911c411d1f7484b198a961c548b6ff59f0694c1e52b0302047c435bb5006630640230075bb7fa0629512421eed9b69e985a444ac66b55d8612830f4292191edfc4f23c55294b8bccba65d3a042a4042c2dd9e02301a408323654d7ecbc5586d1a5c176ae6e4fb0d1e9682738eb60a4fc87ce90373c697d009ef0ca10030c3442cca5e4a690302047c435bb500673065023100d2a0089c204a8e94183fc19be625a1cae2342ec63549fce2652b4eb61c64fdca4cbdabbfbe4b482635a894b7c77c5f6802300bac9f0471a8450fa0af16e6e767b854c8185344f5d1702c041cafe13327836b8d5aa0847f9cab9964a29bf7abb25fd50302047c435bb50067306502303c80b06ec349910966c9183dbd69bdc2f6707d9bce29fae458e92700eb97b3b803093d9f4defc215d316f72daa55993d023100aac30ca21e987d790268aa8041f82b64002b18b4737b7e217488823ee4fc193a62d823fd925087eda1831dce0edd18c30302047c435bb50066306402307ad58800ee1c660d1994d413971d7466d1156c3bbae75676afac8ee9444a51fce4ec7358b9fc216812b174c398b8385f0230392cfd53570a95fc5ae7882b5aca0b65c639756da3af116b25a420d6e50bb386173e273c42c523c13b87b758388679700302047c435bb50067306502303461b453e1526e5d2128a1c2564669f4a77a6cd147858fabb954ce6f6fd76652fa003b4480ed8677344d57c8bff09c39023100f46292abbfb84b2f63fcedc57e35b076b8b370ad190b8bda8ba3b04217dc41a5840215f8676b230a5acfbdf7566088140302047c435bb500673065023100c222281c257501419d4e689cd052077755c8c9078e27e3a3b854a369f10879aea74cb53b3dcebda2205327a314ccb47402302b9146df8d866b844e6980f8d29589ea4b21f8f355594f5115bfa5c4f1af9e96864f9a885a0b41d0f348d6f24b6878a10302047c435bb500673065023026a9386bd5f3d72f4194ff6c0e8bdaf24d7c71a68442991d9b67f2993dd0e4244d9a37c3ad4628e7121f090d216a5bcf023100d48f93f7c3563e9cd7cd16b83307f0afe2bb4f136318a08aabf090058733eb471ecbbf67abb08dce63845ff70bf5258e0302047c435bb5006630640230315749726d6bbb36ef39d502b39ff080d8e202e2b954ae5c5693ba837b0bbbbaa88dad71ba8275ac966cd80c8beb32d2023079cd4e9dfce8e8071c7f018aa27dca1f242312d2f64b892e77fcf3ffa23edd272d2d1cfcd9ebc6ff081a3300728eb0ef0302047c435bb5006730650230546a7b686ffdb821cd8c0a99fe8800b006f4236be2b7027476c08f241d519e433aedeffca5a45ced14f2f3ac3fe810da023100a90f6fd5223ae73bf27955216fe97283e67a28f7bb1e7744c797812fef5da9d0532d25a79780393ec70da848fc4e3b440302047c435bb50066306402301a3490700f9e10caf1c02ecec52aa2cb048f673082f4281e9d4e2b089437ce53e4dbec25c687e76b3fb5c53e7a3e308002301ace471aa34d347f495a90a127ccebf29fff8a57bc2efbffb10a7e3c091ba9de3eab1d5fae97cb60480cc02d510426e60302047c435bb500673065023100d63ed7707530b23550c2d89cf7abd7376f0916956d1306dc725d7bb18b295ad76f75522703e64cd19fc16e45017b409e023076f71d8776c7707c80f760f9d0d0a36063eec89cc236de0971553a88c8ea780da5ba026575831364bd6b9cc77bb7eb830302047c435bb500683066023100c9669efefa7e32d8f321dd547f34ca5731cc2b7c8492a6b93d2235a190e27a25222f4f8ff902b17eb50a3eccbcb64b16023100ab6a657e34c6c0cc50b4fcc0896aca26be0d91071b601eef2d0d8bb771f154e5e05094a0c0811d059b89f9762b6c3ada0302047c435bb50066306402306bddf65f7868445cd2b3a64d6fecf2430b569a9ba43982f064ef2cfe5adcacae47e9812e16a88cb7ea6ff473edf2e6980230756c42ae3720326d16c557b776618212c4c1d1002264431fa19a138f9828a8ca1c94d7a6dc26e23d6c68d1653c3ad21f0302047c435bb50067306502305b27e039f715db4a1da98bd4fc192161d1ef171fc2ed5d96b09cd75c8c26cc8af2a9789cfab4f64ebeeb4017309510ad023100f6d7bb93c16452eed6843463c51419ec77387757059dc58a52b073397737fab824719e275973000e795f6f23d260e38c0302047c435bb500673065023057ccd6ab7ed48453039d175fe5423013d3ca73c2cddde35e443d337d7903bde42d9ce752286ac745789450c916f01de2023100880f154531b3b874771aad54b74c183745842c044c7080d6fb64806e88a08fc64f635f2d3511516b80dda1690d7ea0640302047c435bb500663064023023497aad7fbb7e5cba928da55908306e77342fcd49f0d8fe0cd697105d47dbdbbb8d211ceb867fed502508a7f90f7c3502302c1b964e286584e5394d993112161b39e9153cd5a25497a1edc4f1dd21e0af8cba2370b965a536a8b4eaec399b1925680302047c435bb500663064023047d4dea530f595c351501de2640dad611c89ab39f336242cddc2bd441e9bfa9c6e497e0e7adbb082b500ec06cddc192202306bb2f9723c68a4d9482d536ae26b5c17947334d65ec17cdb80c5f85520359ad6d0fb231fca96ae8965b9ff37eed567440302047c435bb50067306502304680a0346cc4e6d3090d009878323bc1d481ef5705e66d0576de71d0c5e48fc506f4baeaaa79e29e3f8653e5c2f3e055023100cb3e2a13c15b72a2e9c46b9e5c84a256a0d6d4a894e82d540ba239c1af51e389f5325ce547c47bd81116051b7e73b6180302047c435bb50067306502302b707be8861be96b690a98ba5a5c86bef9472e4c6197950f73243658235b40fb46813b6093e32ddbd729239b6384f4dc023100fed768fb7395cd399a6d2ef14fac4e6ee862162b82fe7e194fc8c3954a1da88cecab04890fa3ce3b8dc0cd2357c723a30302047c435bb500683066023100bd4e14ab8a766c0fc26cd0b1f17fd1537633825d859c030b5d0e7dba76a8b4cefa41a3760263295f34b936daee6cb8e4023100e30d2ebd12f22238447f066cf3273c003a4b960b28f0b9fb235557fa3b63d1a299fbb176c8bed1771f0fd8598294804e0302047c435bb5006830660231008efa60b06bb246850b60d5d9e554f8286c9e70e0dca183f93258376d3b59853cea04617ffb048456837f35c8697e79d5023100b320d66371f5f30f8fadeea34d2a5eaf6913039480c69bee185c9be49b308b12c9494b5be53a53ab269280d402a1c83a0302047c435bb5006730650230663dbd0cded5013bdb0e9acfe667207c30f72a28cf9b8a9d88dc24e9cd59d5f574024f157805a109020c00d6c9ca868c023100d5440606678d0c9560e8246883cc23f6c5690674e68f0a1c44c2f51784ccb088f48d12019901a9ab15444299c854007c0302047c435bb50067306502306bb37c4932dfbed163d7233cfb9425bacb17605c0829ddf375cc92f26fc087b2e36d3e5650830741b42873e27f49b675023100f512674c043dd22793bc0390f97761e696aa64e9d2b8b350c7bec66981922cc50d88e0249f829a056e40ca7bdb5fddd80302047c435bb500683066023100c73336ccb4c5b2e75b699f2aceda26874a644cd8a597b51cc6a9801e3e5fba186a7877428a66b15d8e71fe8acea8af18023100c584198b41e7e13eeddbf22ac2d31242ae40ce5dcfc36783c86ea4d34c23b5a893362efc3f559491b7434528533ee1840302047c435bb50066306402307393d9b5367bb5f8d6e3ad675ce25c6c1bcfe0ba06f3aa42cf611095cad0759661f649f4e3c74c3d204d0183c4bb33ea0230086c38a7145c95fcd1c4888ba6ba28b365c099bbc11d91501cac4ba75cee3f18b01fe348a846b79235d70abe36373cf70302047c435bb500673065023100e47b29eb2ba862f7031670802e0da8eaffbab9d5b7ad8df228275a1210503fb1a9d8a064c3f347fb044d6fd4a130667902301b8c2aaf433f0869ad91aaca35b4b5d62aea27f7a7efe8517bd0de4023a24b66295a87e4647304d4dd86c2afd06c2c210302047c435bb500673065023100d8b188035b18debded1f442a217eee6426500d4ce01e0cb6135b6ebf86099ff7839d5258bbcc1be0575ab72ee0e5014202304c9796510cc44a760531b10fab9f3e5ad0a265c2348988af1a5dfd4c24f32a8c7ce6244de29be06f1f45de1f1a9592ba0302047c435bb500683066023100d07c16989226be9fb20a3996203887c4e582a2706baf6ce1b6f8d19ada000c62f33ffc26aced409e9c4e23a4db6ac92f023100a3830a010cd6af33a6817f545bab3bc4209bd4242a54c4e6c1f8c08e121e1f19d54b52e68d7e49de807841f1e16563300302047c435bb500673065023100fd16918348bebd087c779a958c93faef0b7d5cdf4fd933a9b5afba68b52bebfc4e96fed45be4acf8f1b0826daa93302d02304cc7197a90a829ebd74ea8bc212ed99118163435b47d703de3b53b98a5d1a789cdf55373967a08ad7beb90cb48d44f0a0302047c435bb500663064023012e31fcdf59c557147edae66eb87c24b2a0e1751fd233649995e10280ab0f596d010509471bb0920545c6a4f5ce28dea02301412cb8a4a5f07e427d9b2eff2e5008ec271140c900e5c907034d01b0ea02759840d3983d671911c261ec30b94c1d3810302047c435bb50066306402300d22040d90c85c5f9b82dcbcd5c0182614bf62f7cbf6cdc34f85bc1ff94de9988c5069fbe7617eacd97f911e0f9095e502307a7f4a4e9c8cef80c7abb9f397e3d8ded1a9dc9864f04367f9be52f37d9e7c5146feed3af7bd961656e08c4fa2cf30360302047c435bb500663064023041363ade66b398e0bc3cf726ee068e876cb5438791142e7ce04ac139e6952fe0aef347992d5ab8c16075ea712ef1d9130230112b4777ce058c1c7c3ef2ea829f961667737a746fa25c3fe523e9ddbe48d3bab15889eca69f1b27a8a74e17ee7616ac0302047c435bb500673065023100a23277bb667d4e7c68bbd65c55fdc18a344f4790aef9de31cb0def528407eeb1e7a3e56c6488ed5bc02bf33c10d6c4ef02306a3fa5e98c3236e409025bc9fc9df9ee394bc9bbdd175952daf934ea137b1014501eeb439cc5da029742e5a0957931c00302047c435bb50066306402301f655b1d623b878e4db3e35b0e35a7626be3f0b1b3c4baba0e9c9e20433697c72390d01fdc67210b422b1f721b65dabe02301740a549a68710b2910b3d718d11e8f873e43fb693d5d5845842add63c765df0e2b5d651252dbc05c80b84e49a5df2650302047c435bb50067306502310084cbc8a2ea0a210ea79e99e29f30282949b105bb043a1528f73b1a73fe2a71c72bb3bfdf9daca89040a21171e8c9a5c902301c2b4a132c10f148f9bd05e9b318bf42b3942337546d0c10b4942ceb8181db49661b259cd82ddaa993363de2c0a03b2e0302047c435bb50067306502310086604891bad9b4a6b0b6cec7c4891408186a2ac45a5b9b9d7204f395120b6ab0ae60818a9edc8a4a17f598c02f0908dd02305b882190f2d790893853b040ab446ac813d0d84046b08a15c4f840251437f81c963b717eab6f9cf1733d5cf1c1a726650302047c435bb50068306602310089a5540e982d9935c20265a2027d8acf22c8346d63fbd3b2cfaa66f94a1a6cb40ea8d201eb1ef98c9b77853fe5a8abc8023100c47a0b9d91d9dfbf1550a9f5fb9c3b0a5cd7a89cb78192e9d93f5b8d18f4e62a079527156b79fedd426b8f3a6c27b89c0302047c435bb500673065023020c4b4593d3424e8c7a9a399e086ac1c52ef4cd21895abebad9d79cd3e1a8418a9c55c83cf25c527f7107773af276893023100e4d73851e3b18ce96c74535279247e86cfc97fa68f6d0391dda2a6b6ae6ca7607881178e922f5418f2e3434911f6afca0302047c435bb5006630640230386c7cab6136315cf9455f750ba0281f0cfc99e1c5e687f77a61c2098498827d582e2c6ead99f3b23ec4979e538ab6650230573cc4bc235e63541ce6b62f42de0fa16296dd44f3a08ba19e306da2901c0a20ff21cb3fa4322e8ebddbee753ffda4d90302047c435bb5006830660231009fea30ea0a4e5ab10234abc42a2e49df2a99806d0f28f5027ab512860506cb872b9920e3a94e974cb80787ccb407ab920231009c5f312b816f6668616f3932065900210bcf2a2c6c09e85f54d0a657a7d40b6f99b5d4fb440e09f6adf3973bb932b69e0302047c435bb500683066023100e0dc4e2ea217a47233fadeeebde4efd7f4e63e3ebd035aa68301081ed490f9db9608a9fafe5502116d2e11b00b403268023100a3e109f3bdece92960e747b7af4da03e7c039acceec829d5912efe7c5297ce4b172b2f17cb11a2b03a08cf4606a939d80302047c435bb5006730650231008735eace71d8441c8baa63bdbf1463d9b4de91779d8dd95726832dc95b90d3a69e7b7110d90fae46c52baffc6ce88b3f023008731c328654f5bb5032d358d60955e3180f0c5a2a78d177307c1b976937b1afb89e480b15ffa0836bc03f93578b71930302047c435bb500673065023100e37d1c72defd6d54cf9de50942a50b6d8b9d4a86d0e3da9d6dc33f3329c13f2f711ae517658ef4c35941c20aa6295fc602304cc30764c7f5f332ecb257b42a0b556a1911da7304d7b9d82f1aefcaf291a518f3b5fac1994eb2c8dcde2dbfb5be5e960302047c435bb5006630640230452976c95f3c3ce760217a6f6081ee1d529037cd562478bb15a872cc4d8701b17957bf836c01f7e154374755b640ad56023024394fc6c278fa29263dbb1f48a941de414845d17f5c11275f2843ed30fcf1a46a2c61419a76ea8b1bfce9828a92e90b0302047c435bb5006730650231009666f150ef23d9e2a3d5b147401f81d11f142fac303de7bc67dcf349c67aa81ca1cdcbf71aca8af49b2e37b201a6013802303d5392dea145c79f372748088f4d03ed2eecfa549b4ddc455c5b74f547f417c24b4bf4a6282df94e970cd1b788bd07300302047c435bb500683066023100b3dd91d5c3e11582539f761ce09e97b035dc5728788ac245ae1f1aa82deb60cff201a3e9a5f32aab239e7c7dd6e12ad30231009b8bf3a3d188028554b0cd2c49d574a5fcdf6a0e0c40f248033424c2845b4743346d3e916b2585a015aaa0d17b849adc0302047c435bb5006630640230145408e9ac233d0c980bb9b5ac3a461a6b6b60cb67bb49310f96bbec7fbb065c4a4c1c627e471f89e83fe6b58f5e8fbb0230751957934e236e69b16518723847c6d4a69551dcfe11c9c26e4f85fc590d58a7e7955f12e182cf40026ce87be5408fbb0302047c435bb5006730650230013b6e8c03df16fe02ce55dc4e21937cec4a2d942df7a78da55efbcdffef759624e6352baf8613c602aeb66c87e78ce4023100898b960c4ec8c0c8e97ea47028d0eba1f86ef0a750415028a68e04dc6217f5139d07a199ee0a015e667ac479ad48d0af0302047c435bb50066306402307cf45b196490a9b2abc4afa77c36a1346bc9bd486bd02200c645831f8782bf45a3191204e0255d65846a4c1866e0b49b0230661fb035cbc3f5975ae8393b17a94cc6124190b532b2e1f686eb1fd8e780276007d5f93724dc5911d2e787c808e172d00302047c435bb50067306502306b57ce59d69a57cfd3aeabe10b41f318ce3f1f8fbd8ea745eefb7a8f932513466d844904e9be26eed55ff94169300b3b02310080303b65f36601f822c0b3d377cc6c2fec90c87bf8aacd85f7b2b6ff6583984b47b63535c5dccc1a14a4f3889ff60c820302047c435bb50067306502305e4318bc82defd48dd513af6a18441f69282a43065aab5b0a593ede559353992a74193f6c926936f924b1692af6bfc01023100acca2def7aea05ea075eeb21fcc482e7e2f6c2159de2079238067f7e8c0895011b17e49354797e8cea010ffa8b83bc7b0302047c435bb500673065023100e54bff61ffdf1004ce3e75f24324ca0e728418020c9a1f6fae531a9c7e4b30a534074273f5a8b7c511111ffb33c546e7023019ddcdc867848dba24704daacbc17bf3c636557aab07ac0dcfcf76e4319cb4d9fd27f79bff1e433f2b2a1e170bed2ca80302047c435bb50067306502307137a918df839cdd7286bf860af77f65aa5f52968bffc5e0116bc8edecfb8c445c39a69a916a11596042e385899f338d0231009c08ad83afcb2eb2c49df96867d2c703c6c447fc6b2aa2051aff82124ee22c181048b112723b8d3bd969ccacd407b3850302047c435bb500673065023100bc8ab0be3ba7211d39adc9745cdbd8d7edf6fc1f81aafd3d42f681601ca3860dfa07404853204d13014ea8de586c0946023074720f3e7eb15637731f1dd6503c66cbcd7778c8aee40a84a3c90f6554ca8add1abb03975d7e7623b3b47fe1aa2fdab60302047c435bb500673065023048e51e5df6cf2fbf8a6ba5cd22febc39441d6370f72a7196e2fc48355822a75507a51618830a5a0baf14fecc7896f4e5023100c204a934fdb443e8311cb07e07d99dee3a42e7493e883d41fe7c8b6b8f6e61b0d021d8daa75686de4421db1aeafecc8c0302047c435bb500673065023100a33e3ee36b275041c30f8fc205b8959a65e87d35e97d1ae52eb1dbfdb5d89e1c00c3d0227b793fea3e654b611c29083b023050ccf0c6002ddc1e392a8152062e831830cfab4d78321b339d51505f08a42ac19ec716a035371f42be120fef72b964630302047c435bb5006730650231008edce32670d2a6ab4e57c4147923a35298b8ca41a192aa23914800d648d801acd8a0ca73c07d7412261436774070c5e4023042e5d79049d51766185c077c0a384c2b6dbc420f4997156894a6b7cb96ff5a04a44d33c71e072678329838f7dc38eaf10302047c435bb50067306502307ed660b249047fbe88039973f20d628216f85b35832fa19468663cf28dd96d1ef547765e98a9c56f9726dda1a7c55b3c023100dfa8a21c0b029c77e908e05e1d1049a34b2e357e53fa17364015d73d758b588122f8b9ad4917998cdce527b633800e170302047c435bb5006730650230349391fd516580a93f73edb3d012e6be7556e0eab430a31d507a0ff73201758f9cd487aa6fbaa1c8a0f2e83d20c7153b023100e41dfadac9e33bfdb59517c96bc0079883ceaf3db65556d3e1e64b2fc81df0d32d92e092e6ba4b7f131b0ffe515b86460302047c435bb5006830660231009eaa54340e2a76023028411ee0c3c266fafb2ae89b5e1cc222541f2fcc1b64f4d2429a7883ab20dace789fdd5dc716c5023100d6a5e78f521b3edb55b41f81a16f77625d10c95d02fed52798cf559101f0671a69f3d8b87518c155cf93077387308d610302047c435bb50067306502302ae232003b1b585e444b253431b4f8cf6c0ce54c3edb7f0bf42fc0c822a8b1a5cd391ef678439a9d4c50a67a9ed6132c023100ad667071f44fa320f82dc69d94c10cf484d16bf8e0f5f31313eed3535d66e6ab72a46a80a349f18861cae747626a22870302047c435bb50066306402300bb3662a9d3caf18f9c70e56d390f7deb9d0e9bc586769f386b00f68b45a2cf54cf760807793f694b7d3e79cf4f76d9402307bdaa5a88fc34caca416dc99846f32770631ed6bfa27d08e9aa38106208b53f50a4e8df65c0c41445e7d5ba4c2cf59810302047c435bb5006630640230401565588ce927a10c6535e04a117deb7b5b6c00e995b36923b5712da9a6acf4722e63acd12c04661092e9ec974101f002307bddd6d604e2ce3bd05a201548406bd7d181d3f36731d387473f3eac2cce09ff69297673219057832b1be15ee48a43d90302047c435bb500683066023100af8ed9561e1f3f57d1eb10cef444c9eb9be62cbc8144aeadbe2b9fd7ce12e2220edb2d2ec348c0ce06e008561a7979a3023100b93c4398ede6fbb51da6cfcd7de0626891f86c172b8cef29c904328d7a2de5be0a26ff3613395741c7750339742884080302047c435bb5006630640230296e9b22c4e0b609c7e3ee8676349d8c0264ad9922a0a7940ba45c6ca365b224bfc1d5882d436e44080d5cd1e3e57bb20230314566b0aba67ef5a4f35ae93372ce4eb10aca854bb4d71abb789adfcf470fcc1c22957eb9f766472e750dcf9fb341d50302047c435bb500673065023100a143d4776ce9213e723779f204de61055dce5e0931f257a59e39dda3494eaa135bc8b4c1e5da0a04cffe041a6fa1308402302e9eb09514c025b0a997924fa59274500b8aedd307978066af51b02d5d45ca0d52e70ecd4ea505c1287d2343f7a72d700302047c435bb500683066023100d976237ede6fad20a608edc47055b65cdf25df8b3fe3c48a71795599166f708e14ba1c2ef23410d639f6584e74dba60e023100e38033c5a8ede27576067341c0d093c73ea6c71e45dc0c65468a1eba9d24d59d5e11a5abebe2130a80bf2e0a5b3317ed0302047c435bb5006630640230092e080907c99acf45a310c180da955bd4dd6933a00e16509aeadccb7ebbdd34f712a76ab6818acbfcb56154caa3e1c1023016be2740258e1eb64b28cd0e91e9001f774a0817f9b63c65cca986a533869800334f73ab5f6b711938aecee242ff25350302047c435bb500673065023100dc9eeb16d82f784b03ba4862838ac349f8a263afc7f4f8020040a528ef68d0daf540b8ede63e898a0d6610f1b5f0029802307815f3ebdc4dbfa7e3419fcb025d91d2b6cd041f2cb4bd0be28bb6a9869d9606f7816582af7c625264a72a88b009709f0302047c435bb500683066023100e84c2f419e2b4a2fa34fb5ddae77f90209f6f42236ea1055d110ad7277e39abd955ffd74fb9aa2702064a1c8d1e8f1ca023100896a03e490bf88075b7330da991fc2e46977a4d967a0344937e308710e7b8e856094f3f1f30bc2f52336000cf14566190302047c435bb500673065023100a46b538e665a4f66d3d55f5e3a38d801902fd70346849357c493990036a1692dd1861b187fa09d958fbe43dd3403d53d023074a1c4be030e06bf6801b7d0c4140929e30516f65708d5d220d15f1aeca5615a215e78413534e101b5666affe81c78d40302047c435bb500673065023075d42de68611b3aab68d64c0ad7494606368eb4bbc7a370c3005def6934a143051121cdbfaad702551dc8db2427e3c0f023100f1486b6428eb64f358a19dad3482bc0e61c643304ec06755197aa347199b2161e7a02d7296f1ee44fb7fa781b8f5ceea0302047c435bb500683066023100df8d8f1a861c28ec8cdca097f8a5019df0cbbf99eca06112fa772c8ed6791086179f39f3b6e2ffb7e3646b6a936546f7023100b25d8e0d1e37eb30d2d41672af2eba9a85ede2545a24192aea12fc78e1e2b4e8a68130932ab03ca27c7355b47e851dfa0302047c435bb5006730650230207743302d0397e4e3e0c9e63f155d90b01f607cf3e19b5b2ca5bd3463c6d1a78c452db294304f70d6557b519c48f9bb0231008b12bbe15cf612703bd9f5348aa766c44fc25209e91f3ff8f2d325d70d6b066587f61c47cf615f338d576587c5e7102b0302047c435bb500673065023100e630e8a80f9da60b308ac6018367505f07e56b84070fd421f1c8cef0a1e053730e74a3899257ddf64e5184362cb840fc0230519b63bbf50af87c8628ec5c51bc489f02c17ce061ce7a210c43c6833b6563459a95687cee6019e91f29cb12f96b60fb0302047c435bb500683066023100e9fe603054baeb7d9014e4dd32fa39d3f10963a86f5da0b2c3925cc429000428414998923df3549166f8120dc612579f023100bf8bae7ba05312f5381bf0cb1cd7e33bc0ea5e477a264281ff4ca40bbf24dcbc531a5dc6fab3c130ce903b930476c4e00302047c435bb50066306402303ac918617f39bd99585491c77f5a433b916065c6836bf276d2249934dcb594ccef21589570e6122a734eb96a8c5138c502303ce8f00f75fca204298bff51785370a7197a3f9cb61f0a68090c10b6f108c2378d1b0e6d6540765bc24fa51c3f1e4a2d0302047c435bb500683066023100c2985c772f309f3740cb9c5356482bee8e45164ff0f22ebc4307f39d992903df15f253a4f46f3b4b26b5ee46aadd5ba4023100af82c50d67533508911aadd5b4b5b86d269ae88420722c2c0ba0ab554c4f6686ba9d50f64398e1a32c931950e0c33e070302047c435bb50066306402305f1c60c50455028325f490b679a099a9cf340ec47fd4aa8299693ede14c6cf45c427c26e2e4146a16c9d293d0eaa509f023022e9a41b7c10e8f9dc86ffb64d4f30bc39f7c54556d08bc27606c0d13037580f7c7cc4711a8a2c357a83f77a9b3f72200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c38a67bdcab8bef0bdff16b1f3bb03ca9d306c7ef53789140012bb10de8f9ca1a17cfc9f6ef68cfe9ded2f8d7d9052c1023100a9aa4c7ae9afad3c5767d2f500a1d61f00c31e88f2eaa781889a6c56c28ae3f58e7d92e937f2b2c2d67d2099bd9a9a400302047c435bb50067306502310095b5e02d912c6386b0a9805a15dcb90c5c2c7d09f49ae05e348caf0876a9b41de915bbcc7db41aba5813a232c1cef75c02301eb51963bc3e91d0e0318ca0311a5e68a0c822b1e0983b691adf02949b712b97c2a4dae03801d2583e518e5874d4b1430302047c435bb500663064023027169671323d99c4a92e203f2734b9a3eab399ae907a297f85767cd5a80829d78d5bacf2319b1b5f1b358ade9e056710023068809468e70a62395eee8acf9143c4a62816d761f3fd69be3ebb0f279368835540344d89c14f9202d499818952ec83d60302047c435bb500673065023100a7fcf088efcb086279344ee9b08b9a9fcfb9a17a4c1fb0d7a26442139e70bea9d6b6cef2b0ab4d2ce0635970b390ee69023025b99ef3edc24e8febf92089161a73221ed425ec0c36187a19cabffe0a0ce439d41b297cdc4f9af5ecee53ef4d1687e30302047c435bb500683066023100f840b2cdca0a489aad86e6d71ef1d16c6fe8385f0c76f31db5643b1250d196ae697aa07afe1202370301583614cb5b0c023100b392de83d0aad9572ba4494be15d8e502608a3f6e5d71c2e12ecac95468677d89cfed5b81e7f82f2544fc809c615dc270302047c435bb50066306402300857b3c8414d3cf4dedac12590a67c6f160d9505de3ec34b3113e6678212330d81ffb7fccd565dc731ea577f8888a42f02303a7c55bd9d50bc6d0422ab7f47459153f5dc046c6a1628f5ce27141d57c72df13594f4cbc19440dad8b93db7458faf940302047c435bb500663064023048fc40a6100c63ae67b6b97d96c147f80b9956b4f208bd5a2dd14c7d6612b1f25b43862a50a7f4cefe68c65453f93cf0023027ff4d7bfd62f6137506065d54005774b16b3e404c1aaace9e0076d53f92084088c87e19c6e3a710ef25bfec0576ce360302047c435bb500673065023020b0c5beea5ac5f55055723326ee529b9676bfdbf41e618693fe4815917a4b935d16cd4e4ec6ce44e9478ce08b2e55dc023100b631b7cedc6386a2ab2f3498c2aedf64e74093febd255c00a0fd6de4d3653302fac175a5f0d92a42aae577797fb832280302047c435bb5006630640230256795ce5283274bea6c5a27c2ca87bba20b3f9650e2e9c024429d4d55f45e04734eaa74c0298d9373b21fef58a3ca8f02305b72b67897b258fc05cf1d591526fd7d8996d5b3f8225893f9e2972d0868d6d258254bb7c1a68a215ce364462385145f0302047c435bb500673065023003d834acaaaa8477770be399cebdc61b0716b2a1fe747dac37264c0ece5d7fb7d0ad1a26b3eda681d2c5b70f6548f18102310087e51b2bed9086efcf2919a424d6d34a21672f9ff71927ad564010d1eab8ceb4291bfabeda28c2e37066dbeb1eefbb980302047c435bb500673065023074db85db8ccc53395c830f142c65533f3c435bbde2495995d21949e169b440c86173e09a243f15f64b4ea7440c97a9f0023100fde6c6a30c5d5daa1da199926f7d1a3563584856dfb01ceb46e46d52f05b277cda0955ec4efae914fa0a83b46ad054400302047c435bb50066306402304f6d82a3936fc957981889b267351ae087e77147dfe161a1b3f27775df2bc1d673df5d7b8c63af955653dc88a76f238202306379a2e3ef54b4331330423be06e084575510bf61aee2a6514effe300d7c579c1cac91aea988711665495c666c493f470302047c435bb50067306502306d23f4f80b4c6097efb96d7077ccada824b21c775448c5f780f1e1f9fb2f28a97d32629abc1085433c366346a5427004023100868971f48a5963cb4a3def48dfa0deffc5b653eaac459bab9917c78b9d73f517082f52f74d13ff188efe5b5f4f8057cc0302047c435bb50067306502310089cece5637b1a346293624c99b30ad7e11b914a6c8aad4f5c82bc3f0e23f4e34b53940fe820d61f1e5978a85587c033b023065560c34954dfb3335fd0e0cb1fecc405969e3555a77ba06b36dff011be2458be644b73008732b61db3d732d69d8d73a0302047c435bb500673065023100cfa1d8ecd1ca46ccc4b703f0e5b74485f46b8c9d4fa6deb6a0023979e48972825c4154d5a3e4925e8bdaef54871ca39502305dbe65e1b2220b3745156a12996e5928e7f8c9007310059685ed9babf89d8697089f18c5324af525cd1c1efa62f8136b0302047c435bb50066306402305ec46d02b70de51113c99833eb921556f1497d5f09844020fa972b84c57eb8b180df2d17682465275f7f2294d950a95d02304a250de749bea628ff9ddc262055766366977d0f70cf77eae78125d80668809c7ffd28db702b76c661eb878ca4e0e5b30302047c435bb50066306402301aade89d884da99b5e202dbe1eef01f3d1656ff89d3c9a8f919750c1d63ebed0b669e165b1f5a1669ee139c676c26d8d023078bba14aa95bf64aecf0c8e0b30dd9b90cb8cbf58c62f42b8f966856f885feb362c30f21e8e6c36f08b98b330f4876340302047c435bb5006730650231008d597d6004e5e0b5f65d1f4482f4515bb4a94fe7e42de6bb57c9f544f27ebbab1cf77e45fc7ab289e6de40d6288155fc02300952730bee41fac7250098b37c575b8fb988a4727a325e27431e384e505de2d1c5b114dde67a0734fc090a3947a0902c0302047c435bb50066306402305d14bed7b85b2cacb96ad71cd4e52d450a68e4087de4ab28539f243f125ab28b5f2bc9aa384fcee07ca2061c663fdc9c02305b36eb22f80dcfbd88253fa95ccf2e63d26bb21b1a23c255b4229f6fb5f4579b09ae5b21d0c89c7778ebb3a8aceb76d80302047c435bb5006730650231008578bc9cf87c41101b1ffce74f563bde10a1244a270de155af144e2afc8d1b7e5508ee0c18d744f2eca2061e25f4633c023036e9e468e9a49683ddcd45938e6c5e1767435ea2924ce90e7a74284abd380de8b1c8dcdf35bf074b01c6b1b7f8213fe90302047c435bb50066306402304e37695d6c0815d34c54355ba40d2a490844dd49054037aa7d4bf1242d6232a04d40f68d2b6e5df936d7b01b6220519b023069bf05e99747a80d69a937393f17e6251e370dc45e14d271a64a34447dfc55d89f9a7ea47e44d1ed012d8e23826ed4ab0302047c435bb500673065023100c906dec2556ac0c490138ba7be547e8869d1789d3b2e44f08184c4917029bd67423bd7484b076c2077e145192d7f347e02301354a6e7f120cce9fdd0b4f18fada5da2a848397e1addbf1182f3f7a9ce314ecbaede2198a4cad78fbbdc0a5ea2f31a90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305c16e8df0ec39bf357028b03bc17677779b0053203b874831982293d077b5704f23d5cee9801bb4ce24a6b915b7550fc02303d90c19111c0747e313ff1979f2cf08395a2b217701edae18039358d16a450c0bb2e1a5bded32c37248d36882ea6129d0302047c435bb500663064023018d5f93242227d604cca02b204026c8abb68f261c59ba0bdb7e0f206f4ae87e09df88a4f7ed95638846211c892724e5d02304db051f96af1c7b44e6a11584da1e389a15f96942dc0aa14953f42ebc5e52151a569ad095aab9052d50c60dc0d7ad1620302047c435bb500673065023029d7da326e517fa249205ec3c831cc26f6b42afb8b33bf0321f7724d0c87acd2cc222e14cdc1c893ae8218bd1088f268023100d67377f78ef29bea9835d1b9d2e31b091d604781d6b7626b25ed980606753c576b735fbe03090d8782a3fc3f873e6a550302047c435bb50066306402307c0f00a871b2729bd12ac2fbd418492bc2ed233d4bc7ac9d7f06b264d43490f4fca7582929c8185a1618708321db66e802301df101897cc7e00b3e412650297a9eeedd418cb0dd77bda3d608a592b15ae024887edb495296eb91b16f0ba250a153ee0302047c435bb50066306402302b3cf8d7fab6c1913c26dbda82da7910f9ee0afe18357174bcd2e0d43464fed3c1edea1f75c2c0feb14b8876dffe97520230628a80ead7d3b9cb50bba41fff7eab31b3b2063f1880d836e85f4f3ca2a3b105b3fc93a4fed131b3a002aff6c209ea940302047c435bb500683066023100cad9600a3d71d8d865fc3077d007a66fb84303a0f9f7a4dba2ee648de808741445575f7a96d19536e061309c919b7e5d023100b0d0a7f32561786d766a3cef1c051c2cff33dcb2fb11641defbd1f05fdeb106731455bbf27c8f88e639502f837e9d43c0302047c435bb500673065023100e0bd82f4afa143b9a04f5215f242d53f71b7ad5ba7e7495ec2b3b9741bf462e6882ff43b7a082c217beac799a41bccec023021cf2892ed7e8bb646ed0915914d4020120e4a87cc29db1d8044b9a13e1b46fd8fd536627c445fefbb3bb2e4112e590a0302047c435bb50066306402304b1e1546a00ded87569187803cba8dec058eb59112cf0d0a7afa1f6ff9d2c1c58bb7276566d5af651d4eae75ef7bb5a402307d1f5d53b55e9215628bf31fc2c6c3c3061875d42a214af3fb1f45936c2bf6b3634056a06c62ac79c89838b69f8019b70302047c435bb50066306402302ce4091df4634d62f36c7e9b1af257b8e2715dafee40d5ada5f651a029408a531622554c75e9eab551c8d6f3d68848cf02301ae43430e97dfe601d3dd9dedf03b9fb34461be15d3b702efe42d938f4add0376cfdbf01fd1eec62df0b5658420db1500302047c435bb500673065023100b3cb66691c234eb77acc634c65f921284cc617296fd5c72eadd430174d724f19d784764a986b513fc9a0b8cbf23177f4023036c917126e1606edb27df9f2812ce1ba757e0c94c3c8889450350ce669d75f4c8b099501efac8e9aae388413851a800b0302047c435bb500663064023064b85491137e6de42c8aa2a892c4bcaa853af137ca197daf2b10ed80e43a528f8dab1e13bf8fa54e4dbfcef8f175498702303cdb12b0a163a73cc115775f4e1ceb0eee2cba497c2b056bca589f885ba041ab882674dfce5c7214e559ca11dba6f9160302047c435bb50067306502303a7213aa51f7f2a150912b0378797fd97ebdd8335ec7aa8c67bbef3f59fc3425c358d82d033f2ec0754fb4f452d4b5db023100b946eb4f4229cb64be76623c448e69371bd4859af04899b4d4cc0c1833de1f9645c41c8e43d57dc1993d6c340ae437f80302047c435bb500683066023100de84c35312632c79cd8be76486597191567d40aa5b9633ded42ff538a979d6d0449905cbc2f69925aa5fce013c1490d2023100f6cf6708c5fd4df7cdcc10bd46e58bea5fdd2c6a62e81febd474d9abdf9f319b2f6b49a4f5f6fe38895b42e8deb314110302047c435bb500673065023100d6037cbdca82e27e21ecc50029b6ecc6b98a88e5ae4a59f4a29c4fc8efce7ef076ce1f6de24ea6b5eb5fbcdcf281e486023063e9abf9522388a6ca63c6ae8cde73681035a5e909314e133ab8a6d9a97cd6cc9c71bfedd48276f8d31967e6b40abec50302047c435bb50067306502310084fd7deee6d6a52813eace0706473b3d2a1dbb5af8aaaf25f287d07a84ac4ff5d7e3dd4e670834559c9265197f6408ee02307843fc3e6ddd2f54d55e568e4f772f458ef555aecb49b369f72cfd9b7de68ef81280d6875063997b78e736a7ad414d6e0302047c435bb500683066023100a36ba5d9ae22c5d5e18bf2ad188c0c3c6c3806b193bfaa9cda8bd256a68f2ae98d7e2e9db22b82c2bf9e6af3aa286af1023100a22e64ffc8e62d10db3c1c77e1cd5f3aed9aeff03349eba922062b4e0ae8666aaedbabb07b9b4b997ecfbc65119f0f5e0302047c435bb50066306402301832882ad935648032caaaee36865b7e7e7ce2913bd4e73ebc34fdf640f31c86dcad7f3b4e69485c9511fba24bb3217102307d31e3f7741bd5ca0bcf3563712fc7cdc1992ea57109ec829c1435cb9c18937e43309de79de758a3960b9130f8a6e0fb0302047c435bb500673065023045345717951f134e19ab3fefb778c6838751ed14d6ca498ad05cbda3b7bb5918ba80604d6d815e3edd830bd86389575902310090d2427fcbe4d37c75fcc4018c0f7295775c123f9ed847135dc07ab56789bcb9ab720ade39c0e4d0800a42b512bec2c10302047c435bb500673065023100b0f8d9c0cdab6f3236d2b9fbb8434ed69abaf7fd2e2af4e018e38eb8f5f089f01e8fb92829af5b245e2a624956222238023060145fedd6f0ba75334d555ab7e10a8cd0f643110c87a0f8d1633c24d61b878320e669341bf9f3f672a0cb5e33e506bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023053d6a96e684cb8c585c3704edda6c3c5eaae88d586fe1e538c51fe966358be0688849b734162be8bfeb6d2a9f57efbe702307253733f116ff1e5c3592e6649df527017018bedb3180a4ff6c780c022082a193a28bf18183e180ce63153506b8a9fde0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c49161ff3efda9011c2fde96d06d3e0e17b1ba8537b25d91601b0cec78e0f7f862380c9608ae95a2755f45615de1720a02300d247341279879c12f0968b137d8fb11424ec3e21d1d6462348a5f252251933596476ebc18f5645d72e7f35a7fe110640302047c435bb500683066023100c7efa699229efcffe5912a583cf995097b8a302014e90466e0df745ea3a4d25ffb30e84cee9779332007f1950f03a699023100f57f103d274bb100a635a16353ac88f651ca5312ed840e43008878b86e839059f6f867e6684d7a22a08812c45c62f1260302047c435bb500683066023100b2932154ad15cf964c43210cf78cdf192ff81e48017ae2607acb937e2154fc0182760ceafd85d12932b8fe7cbdc2afaf023100e35a9741c64b124d92404bff6a2146c0c3061e56bfa30c6dcc85df0d40076c4bac5763670f28400704aef897443618ff0302047c435bb50066306402305459a3099df2ec7029c2197c2fe70a5ef41ab0be7cadee9258be026d13c1f135be7138446e8d0352f0b47402dcfb2b9d02307058cfa96532795176c019356a8190e23869391b7c4e025520b2a1a93a0ee5b98f4b18128f9513ad097c85e392ccdee40302047c435bb500673065023100d830442aef68e811aa5078fdceb59b6ce1623c5d52e9ca8b521b34813b3ad405c4521c2f1b5ccc79ff05a4bf1440936302301d788b92fce6fae7b9115fe37fea6864dae6fb4038265645f8b6f7d717b64a398a467f62eecefd25505c53a54090ec950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b68650e5756df55c4557281a3a9116c2e9d9af1fb6d172c9a09580250bfcada677a70d51742903043003c3c26ee2163f02302ccdee86baf8cc0b10ffc492037b7f469417c1616de1ef41989febc94beeebc1ce2d207955740b63ecc032d67be002060302047c435bb50066306402307293f40ee1e59a32b9482d7d9cbe0ff13f831b9bf7bd5e1ff027caafa0f709bfc9623185909241bf1bc1845d39a91b460230523985451c1d4792d86342e9e46613c7195933321ae773353e6ea2b1dee3ca6612ea6425eb839e43075e76d8e619b4400302047c435bb50067306502307f002e26c73a5d340d13cb44600d9b7f9bb6cfaa6736a9f75b951b50172bc046172eb7a76315dec0559b6cccf4e75503023100a2f5e23437806889f3e4dd901d73e288e57a101da276558e8143775afa7bf7917fa4bf123372f18701a94019c4bf47140302047c435bb50068306602310093a4dd2e5adcc3f28064ce5332bcd027a54609898f0b27116fe0a1253a6cdfbf3568b58f7660540914204726407dd176023100ff33e9c712fb6a8636b592eca4d7017eb6606b995078b5ab2e2e9bf0837c4c5063289160b8e80b82d7e9a140138b98840302047c435bb500663064023024ca1cecfd0552404cc30a05f52adc93f9d1c3d1f7bacecdc78b5adba1f7590a7932ba09da6a0e7a0b40a6554dd2061e02301ca84b2d97bb668b7a326315d2fa49a61ba282deeb5deb5d09040893ea4dae698612c6c513d33fe3a2f59cf800dfd3b80302047c435bb5006730650231009d718772fe89744a27eba3476c63b33fc1a42bbfc791544c4ba1ede37f00af1630d3a1fc3d87a5218013b57091b29dcd023018da08f5f9d34068ac6dfeda46bf614050873e38178045e143c29c5a52b5dea7714aba2d978e3323ff8d22d1a258c3440302047c435bb500673065023029a0ea985038f576bfdf8752f47bf88ceb79eb19a98ce75e4d5256e592b3209d6f8a07af76692214038a825a3f19e3a5023100fd99cd88bddaccaf55b3ab5a5463e825dedcbb1923faaf3fd2f329c45cf05ab9a1fcf7e309ae095e616058b0f4c972090302047c435bb50067306502304298eda2b202a1f2d383ed34857ee943d31d50ea8b8b4bdd37fe03e904d65bc856858d9e74e8bafb624ca2b9743a23a8023100df29609592487f761ec41a30a07231f117a61428ac2289313d4411b05a6a005fbc9c1d8446d417aa27968423902031850302047c435bb500683066023100b3853ea280a69deaefb5a4ac74845bf61d56c52edc5bcde40fbebe2423a62367631d318b9e7021b3328871387a38b45c023100874b0c83278083df4ac8c4e84565f008eb7105cbfd33a191c9832984102ac26ebd7a4727658702d21ee6a7bbe86667440302047c435bb500673065023100e41c9d025c48aeed898110cd6f89676a2562735e4c589300c52dee83926437c5743fb8ced47cc3f2efb33aa8409e40b30230736cfbec6db5fd9b2eb66777ffeb961d133065994199f71181c524793188431cc1f88729460016357e4bd0a7498ca8f20302047c435bb500683066023100da3910b61626025927ddfbb83a87c04f0772b84bf38bf3e56949ab7e6903422ea53734f0d4eb3d4607cee0a5388b3449023100f037d49a7f7b702cb8c55a5381a06992e9eb719b515e689f3d83a8c7b6bdec3075f01ac4909e29cb261248fcbb79d64e0302047c435bb5006630640230492987e38170153b4f2686ed4a871690a78c5d6c33f394beeea5644f413647a0096853f8687f9a03dfcaf6e304b8ec23023033af37f5f1201af624d75b3ba826ff9c8833bc16f6ab9efb98a64fd507e79c2eaf3bafd020dfca5c8a478e7441a2ce450302047c435bb50066306402305596132f388acee725a9c6375c12dd84d273bcd7142580f249179e5e7fe807cc8a52c79444bf834158d32084596613c902303e4c93ca418e68ba9aa4bce4804a4543aecec010c2e040753b69139c6d984e8d06f7cba9091ecff1546ee34d884addab0302047c435bb500673065023100ffa99ba69d55bdd5a1a9522f3c34417993657aa8295a17144e526bf88d3b03da3b51311958fe1f76919da69c44287c3b0230664089f7b59d7cc0aa50e17549fbfded1de4a4289f94d0ded1dc7f6764da235a10db76ffe511c612797075879a6220100302047c435bb50066306402303f839de8dcdc8b238f01ed5605eb708ea5a7e2dff9513076bb82be3ee5804da360425119084823a6774ca435465641270230601483d603088c19479fc1ef8db4d7f92f83a1ded9d06e72c06f9028eab2f42ba986e8fb46f4258289bf9099f15563b40302047c435bb500673065023100c0e0bea408957190111897cbf41a7e21badd24d83200585a6675c7b3d685ea62a29adbddc817d4971dd9577a888c4cd1023055bded3dad0f4e41ac7be9e0bd6966ff562615e03250f71cf7e8badcf858ba2cf66b96ab15e44cd3d6c0c9a439d658310302047c435bb500683066023100b7e8b079282ccfe0eaabf89e5f0527163dc343ffbe6b54e6421d28086f3b275d097d0e4604a1c6f31267bdd3b50598050231008e1a1c217a58150fd6dbfc211baf880fa67e40f1bd7e11159f5a159ba9ccb6a7f1b156d111f2e3c12884ff50b5af189a0302047c435bb500683066023100fdeab2cef277eaf78973662f1bcc9d122c377e3c8eed8b12e6d2895e410ad9ece5e23e03bd754dfe6716a4b10fcc7de9023100fd017aa788a009cf2e52740b1a1a5170dfd70d1146e51304424cf29ff8f3cd8b4f874fe682f54e68e426454482a9bd570302047c435bb500673065023100f0db3a820b55550754e9f42a244eb20ed8b76da5b482a3b1453bbcce9a8ecb8b2fad18a9172a5f15ea36dce369e029ce023076870bffa8615fb88e5cfcc126ef9943bf3b9ae232b19a6fc546b3c2090b842c2a1483a40000e0c8a1604770c1d821c40302047c435bb50067306502301ac264c6484bef2c76d2e208bda2ddeb54826bcdf8e8071320161baa0c5f6e91c6e14476240a42e3ea318269468439f302310080fd802f6db1f5f593c4a9292691f45bdc9bd65821ea53b198e0e49323d0a2ff6fa0e38004aa67c1543b3a1d2814d9fa0302047c435bb50067306502303595a5f5dce8a5cb4b5ae3279e74e132345c10e3e36338f659dbd8678632553d4b0b730c2e636a9b6760721ad8f3c88e023100a14087bc41d36e4425c41dc4435a5e0a5c5d9aeab59c8d2ee6494f7a67eac1f261cae4d163f88a09dcfcb1f29152b71a0302047c435bb5006730650230031b9f173b5b53f44736c1102eb83d85c47e0d655b7e9464dc47c614156ef68bd6c53fd7756ae4418fe5721ea37fb0e8023100ad35e321a39586da25976ccefa34f8a5f856ad2641ea3ad22a44b43c2cc264bec403fa234aef6730e471952ee05efa010302047c435bb50067306502304421f084dfd785fa7aed140683fe8a445e5cccd663667e36eba3ce8130b3f0c543f7ec9f86e330285753d40b38c2a9fe023100d7e1801d067a33ccb1c8636f35624e41cebee76964ff8da49589d8af6f981af6e33467293cde23130d38f02e347daa600302047c435bb50066306402305c7c78ed01507114292cbf34cb841684ad2c9199c35cbf92cea5f20c98ed414503bd8c97cc66924f617322667cde67c3023040c66da9bcd3bf9724609c45ac2a52c9c170962cf13634437ef638c0a4a86baf1b1923a8eb54312daf0e14e8625738160302047c435bb5006630640230019ef7c1b67f817238c8617e1f4df702a396279ecb680044e2cfc1e420eeb1f93e091ae047b35a148603ad7e7dbb766d023042a8d1ff01f9b730e8c95cbc35e96db686cfed8f6d207d713e6dfcbd7beee5ca6e90d2bd7b26162c942547dce5c8fdac0302047c435bb50067306502300d933601868cfe03248c6ac108b2b2c81745f9c2189bf9a99a08b6d66a23f4b0741db1fa09f01f8e6c622856a1893e5402310088e0bb5e07ba8e4f048b4d1235cd8ede34b6275bb31b30541b168eb9dbc3196dcd6761f554a48857cdfd5d54096c090a0302047c435bb5006630640230307de8aa14519d75b4c9606c88aadc3f9fa1838a1472da8c077e69a01212da054de9109569195b8476cafdeb222d27ec023055deb783cdb16030d524da3701aa5d5413af6fbef727afd56d751e6b6593a994f88333a4274ec073298c34dbc17210a90302047c435bb500673065023061fceb716fb44cf8326f5135cf9c2074d7d66ed534466166899a77592f07b6b6415f92033890c5a0985332d19009594c0231008f55d3f7738ea58767cd96362331b6f7089f56d08c34ea48a27e08e0f6ad12ddac65daebb5e4bdf72be6c921550ed2520302047c435bb50067306502307a4b82eeb392724b62105b54b9d284a467a594010e6a0e309436bc8dfd676becebf3e3d02f73d34f34d7d1ecf6748665023100aa3cd27dfac5059f27d31a0f574e3b4f3f43bc3a117ba813c3902f0e2736c36857d1fa2a28bd91f0523d9012cc1f2aa30302047c435bb500683066023100c7d608cedfb9d2a459df0d43644418dc5dfe9cd4d668c25e45b97c859f342a5368b30b152320637f5a6edec97f57718c023100c57bc12b1165b18d0d165d6d1b37876a02a586c78d2f2d08b8c1b41899c7e8a076c278f0c88ecf54555cf65cf99b770c0302047c435bb50067306502307cc362fb643334e010590c4cb7d61cf17ee935ab117160210877955c0f33ed49c7660f665b8da6742c7ed2db235e2bed023100d9016f48e243ca0e62615cbaaf4a545550eb49eb3d54b4307a34f19946360980016d3c1bbe370b5f2829277724286b8e0302047c435bb50067306502300f40361e69cff19d25b20baa0e1cbf70d6ad8d11afb57e6aae0e5b8dbf6de8c2f4330b0f179a9e3623530d17313b84ec023100ae3c380149f077874c787b329d60e7600c185a070ae8dc4fd7f6652fab1a67960223b683f687e2e7e44003038a1774d70302047c435bb500673065023100d16c7d25dc032e925056863324c0ed92cd32ae799633577a751c05ccb10792f99735404e8da0b840c63f5de217c8370402301e90961702d5200464dfb7f8c3ddd9d0a7138e82f88d99ec535171fd786946090a306f171d27442c54551bff6ecd71680302047c435bb500683066023100b5e6fdeb28f389f6b7891fa039408949c7303c4f8e7b0d31c2e21b077ae8284c95524ec62ac2054896a886f1ef919a9f023100afac87d0578782f8ff5a71ec16e9d69f529181944f1bb0e17bafe66b3ddd49351f3439fef6d46042f55858cecc5712d80302047c435bb500673065023100cf1f3d28e09e4b389fff0e16db15c5f90c0abd1f635ef671112b1fb8d6a91c2c92759d90d2321a84a70fa7c02737680e023056d7571e589aee39b3f604aa286998558aaa5b6bd666a4906ea9e5c6951b1c8d99539fc43807b898bebdc140ce6fba7f0302047c435bb500673065023100c798557ffba560dcc87efc1136bb199d60b41956028949d065a8156a55308e140cb270c3ecc78bb9ce1b1239415e5b500230186962a7f7359c1f5e3e73ca85424f06cf49a261ca12322e537a34f1d3aeabc0ccfe0ef3812ecaf07c835d30721b0dcc0302047c435bb500683066023100f3ff4c4c97bdd630fc79fcd595d7ed175df9c9aa07e8d2c730d10f1b799457420cb9b775fbd93818a1adc370d18d6a67023100c789099fd03db0e5d63daebb521e201a9b2656af69249f8517140ccf0fe0ef9f7d948fa6c28f788e72a987a424fddad40302047c435bb500673065023100ae808ea8a8b260c2aa52b03b595daa8829520273fd70858779d266241382325d3761ed9f67b2abf87eb0cf49aed8f2d002300db102d29875f12079b5e00e4fa86f54f8aab1c91da737fa9d8f749298c3f811b408b9bbbf9ef85534399ffe4eae8c790302047c435bb500683066023100ba4b24dd4be448a6c3004c92f56b602eb24181b3b28d0ff50dc03eb77059f998daf10dbef170fe3dbc11521c765c0aac023100de98e6079b8158daeac0dc9f0f7e769a4dfc93f201a4031a417a4158ec156cbdeaf71f38ca58330a7d3f6c0722c92eb20302047c435bb5006730650231008c025c80401194519749d60ad3972c093d44a4eca21a7727159efd61322124e1b9b1cf39870d3b25837c0a1b40c1331d02304039ecc4f126c225baa6906e66f21a6dd483d02e0d6f8fb179426c1e3fa61f11bdc2d8e650a505ea2e68c4bd67ed00de0302047c435bb500673065023100e0e0f556bda2d4ceb244887480a5931b22adebfd8c22fc8145e6ff974ae0e0021c5e86f1eb79f2976e5d6afefe7b5f1702302ac310940d485688fa08a6ad3c716dee6d282b6c24096f804d7606b984e339a2349d88b3892e17faab30b426f4aa15a90302047c435bb500683066023100edba0e02a63a2db299da132effd85bbb3ce5a053be321f41d21965b3ffbd51eb094e88fd84ab5e6cf0efed74c96bdcad02310089940d8bdc270b75e6b4e74a39c38003aab1ce21622ee8396625e7a93d756f24b437584da2ef8a1c30555a95879275170302047c435bb50066306402301c7260203646f24965037f40c8f4bb5642d21e13faebfe2a867ec7e7f1e2196ad00388850940a51be5c8b89026afce990230667dfd0fb254ad30a939c72779d4087c04ab66ee112ce002a64c9b36cc2a746c8540286e7fb59085d5b07fe6d1e2236a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023025f6b8782f130adee667d772e233fac993035a44d4e7b2fb4b66d3b889cc698f35752f43f001d5a76aa1be7506c3feab023100cdf5277e90a9e41bab89e898ab539fe6b4fb6b0fff1827a61b8077723556b15ab5d0559a3ef4d93bed05597dcd4f27440302047c435bb500673065023100b8e38a4c127be298ba90ddda14c91dc0c091e528ce8f45c09af2ae155b6876d86ce8b9e200357e598cb64713ef29738a02300425fca28823e297e298d5d94cd657eb5ebff6ddc13b4a6c794ea6eb755cf3e55ae61a37d914e13128361a5691aef21a0302047c435bb50067306502310089bbe312c9d113c5714bf6ad229c5bc6b9c260dc1ba8a2bfc8c47b27e88837e5b37a0eb97a1863a3e9f1be30565a0a1a02305b3246bb5e99af7e06a331b3454eeb9e81d37f318c75ee55942ce549404ce2c1c489771d85ee07d6f7799774638f895c0302047c435bb500673065023100cfa119344bb5bc6773894e40ba541b3ba9a58952d62d994477b385616039947055a51965e69c5d64b3cff1c47b4e71ed02306ccbbde6f99539485bd6e1a6ecccd6ff40cfd9a4ad6f4353d19ede59e07d01a3625f810933802b38fccd25cd62ada9c80302047c435bb500673065023100c5d09e1b76cacf79c311260ed45ace08203b264775ec0a47f2238969f1304053c339fa06a85841a09d6e0f2c54cf4b7a0230676a84ad57aaca19ef19898a6309e094b34889788033ea6a847095225370f94ca5d0373cfc0cebbdd665b4f8e00561640302047c435bb500673065023100f8b299ea57b0774a0c188a755384d999f1e1c606305a4f33401efb41037adcd31550b5958b3aec02ee8f21892fdee4590230704bab08a9c62cb6d1c1040355cf3d14ae823fb5401a9eb04c0b44db5af312679ff5311ad116df54871fe78ad1ac0cc60302047c435bb50067306502303e0ba251313b2329e5f99c960b31490a073bf7f0a11ff52869844739b25972d4d1b2ae58e6cbc8c3e7bd94fc1189603f023100d26ca616770bf01d6ef623213f16528cf5e6caed0924c278a5f916bf8585dfd86830e716cdd301a49fb385775ccb20540302047c435bb50066306402306f0da8ca4057439b834b483403a44540d5e9a68faeb2a94627298eb7dbf92b41ca8eb80e60c164fd80fceec208f95831023005d353db1010999786baa49941e71968c6b3ada1cc32ed441014860e2be2274fef8d63b1ccdcaa47d78d6b0269b98d6b0302047c435bb500683066023100bbe7c83ba7be79347ccee73f9a11f3421559f2800a7e88bcc26fcfbb693b1dff62cd1a7fc98cfdea2f980340a1aa52510231008097a3c61fa54d8e5e1d9132796f164bc24cc8b4b9d69fca0cdad74c925d41e6dce292df9539d75b82c46057728e28680302047c435bb5006830660231009f7488c29789bc6722b0c5367e6a995fd427f8b844519042337d958e1e53c6923b85d2652aad190ee4a8ed8088117c5a023100e30e08c246e04926126e764fd9afe1b6548d0cf262a0ddef3e0bd8f85dab935410cab427af1a6dd01f17b0ef4831be030302047c435bb50067306502306e5919059fd336930e62868c9f409c39d62d820796050ebf4b1cdaa376c2b3bcf2d6d3fb9c94fe5bce309ec075b47e80023100a63a2e9ab923ee6fd7d52c9b21a0cac13d4351b5779509bd644f1f1092382527ac6ad4f60cc74ba75468af0b1839f08e0302047c435bb50066306402301f3f57808e812ed9464068b01d7625c2d8ab3df1914a951bd4ddd631e9a9f5acde495291583a4fae9278e29bdef0bfcf02301b429a4363401d7071f857a250d11762f6f02ff57fad95021efc4950e55f97bfda9e153e551ca6a2a0a0790cd702fa840302047c435bb500673065023100d4b223cfcbabb75ceb61d93fed6dea6d281d6f57969adb9893c235cda1f091dbdd353d6900d489481772b40b11a56a9a02306c42ef7f0f08d3daa521046419bc60c37ecd197aa6f16aea5c2c130df03dffee792d7e973a1a221067e92c7c0b02c59b0302047c435bb50066306402304fab976f9ad4d50946918d3c0668d64a39dc028841e0d10ba4dbaf23667568a26c99dad2bd31c0f86696bfb66cfff0ec023063b3c3f7db39b1b2a32c0524fa64200d2ce23b48763df1a2316b2aa0f851ba21c30f72355b14624d851a5ac0173a3f6f0302047c435bb5006830660231008135f7cbc5d6cfc610f0fcfd08f1c36374b1460e957ae8db6f81468a7baf74402e6ab596bd14d4eba2f3992724a44fcb023100be7635e599605843d0983f351d3001c8a89161515175ad9e9fdb88ecc497e132f72c60fe716934049d48c3614dffb29b0302047c435bb500683066023100828ee055ac63ffa0ad50f5b74b7c7b89efca6fbccfe8b46a0398905c6bde16acee98b8a6c958cd522ed26784d3816e980231009f8ef17ada104c7045182a15dd307f4b0f8d79ddde9896425a2e65ac3d6da81816078df1b6a85808fed73f499e0fe2e30302047c435bb50067306502300c43301c6d3a65869f809afaf25f0057b03e8d842ff1ce88c6e8654403a2aff905d6fa348189b5b64f7f517144e37dad023100b5305d669c074de2002c72f8d138c08adcf58c2cf105761ffc83d07a2ed7c66eb3ae94c9826103052816295a6f8419a50302047c435bb500673065023100e50a9d7dd7d133d74a5829710ad09dc07e9c9841b26f8642c0914307cb53140da0ba9f2171683c821c795d7657c9de3c0230429940cbab03546c4a5db5cb7944ec6f7fe145bc16a6e8de8f28eeec1543d53dea7b17ef1b8d65370c19a679d5e9953b0302047c435bb50067306502305badd06d5ee0c9c8dc6c11f1ecc94097b50f4ec01a86840e37e5dacac1a76b6dbb7bed49966afab5c7ab7db759a49600023100b283baedf04a154a6ed95e7b4d173303be9ed04ac12a7d7879a717714c2212759c70f7d4221bd273303d7fc1639d2ec40302047c435bb500683066023100f234b8f092a605024f1d2d093bdf1332d795ea68ac725adfc918c4f645792e996c0dadb770ecf90481b2f98c71eb95e4023100d0f78621bbb84126f77aa1ad63266d157fdaa25e3d2ff6cde52ebd9a78c37987b56ed2b354a1c336ec5de6d49133bfad0302047c435bb500683066023100c0c93b5ce046d235ee59fdf01674dea991216776e6527b15a31874b7397e442e7d24cefbe79f754c49b489b4d175042d023100b82679cc515a7324558233ca15aa3ec739f3913ce42108470b72d011f814eba9d3de750a24d3ff82dab18c38239287b50302047c435bb500673065023007c646f71ee8911765f35a63863052d1c27808abb58c413f0f8ca0e02bd87ceb3392ab8ba02feaed4e107cf4dbcbd563023100ae56e1f34717cec70effb6ae32f8b3262d80582d714ce24ccdfc79223caaba005c82c888e5bc405915d73ca0ddc2516d0302047c435bb500683066023100d08083f7ee8dc688a49cd0bcb97c3be549ab6f0c8f53e84c7f592f6fbeb9350205a4e986173c7d5498ba88e46f425fa5023100ebf3dd24b93392704a18a6d3d7c298b6f5abfea3f9cb243deffc1fe3d2bd9503933bc43bc77808dde1b28531efb3d5590302047c435bb500673065023054da39206a4651cca35c7bfa4498c207243cadb51864d129777b7e39244f7855c2e540c81b3bab0257420d4c7df6495d023100f96362d32ed4f603973690af76d04a73d158a5b8b60e7d15c3217c1f6e6caca642e957bd6985245b419356a8f09deac30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300a3d036f1823a9e9d17c8604ee3d12d96a382fe3e3dd6000197da4be756fc73f4d5de0a2914b3d67ea133c5911ca836702303a7acbdceabdd17fa09bb8b917355ff81be40381b4faa4d932bc39b6b1d383f19be286eb53c8510580675e8781172a8b0302047c435bb5006730650230087d7a591cf7e3c87fb331b3b00e30f22ac1f2728991d8fac2455f3d3fba3138c188290f7c00a008a540a7326f33797d023100f1b319a36c2aedc1b8c2e340c55b1ac2831d7f10276f9209debdb9e5f0ad90b410ff81d2ec2ce829077bdadaeb5d35de0302047c435bb500683066023100f0396ef2dd828cbb19340e85e1363f01152270a4348a8bd1347352f80930619e5455cf2630cd048e0601f67679d9280b023100ac1c1888d0d0a9c11c1f3b350f8cbb0a0a46940cf27b8939fd0f035af25b116b9a8f0cd85d17b6e6b1bd92fc53d2b43f0302047c435bb50067306502305a3204951b75dfcf355788ad66c7152da24f673a8ad4d144108786d2914255905207f60a616608dfd372bfacf08317350231009469a29da7f042370b2405e5907d61d972b37db44b441cfce6c81b93330adc0aab3d530409c31af5d9b5df00c60699a20302047c435bb5006730650230087f4ae507d46b54db196ed29308cd63f31a2c998da3df5b1c9b1c927fab9b61c257388c7d89319ef69c36b182f1e5040231008850d7f7493a0e198c51aa12ac6e2efc9a8c99236e3562e79a776678e14b88c0e22c618812f6ddce10f4960f754f49a20302047c435bb50068306602310087e831526c7f26e60052e8538a31a9ea514a6f218a6348941edeb0feb30e2a8ad4e163036294dd145e16bb16e8bdfdc60231009b9abca5d79ff849d96d54ccb15b9ab374ecde27fbc47814443956b42bb54fd5b4e30e37c5845484dbe99917756f4d520302047c435bb5006730650231009cd9ab6ebdf75d128614082aabf3ae15784bdd8a99c21c4df06f89ad1a29c80969cac99d3184b71d7bba2a28ca28f7810230093b0f862375507d201ccd95587cc74964889034c5f04fb34aa0a97f6d7c3916dcd033f0593a79b96e00344fc960e9620302047c435bb500673065023100e349525195d895552f530d1a707d7e92cde9d254ddea0cb2f41270d303467c1f532eebdd630f0bc2aac0063ebc85c066023012e348cab49ecbe355a8885dac87a90902222ccf16f3454ee532f7fcee7932517d3dd97cf57d86f90f9e1a634d256ce20302047c435bb500683066023100ead50a06440f0386b9f3d79a9e12538937e85e15b888a5a92b537283721cde128570ae97b9931b272004cb442ab4056e023100ef80870f4ca3bbca1a672caa97251ade461ea6b2dcbce4070846be2e000a210c820f69880d3bf6c78b3d1a8e93f7016f0302047c435bb50067306502301732965abe3d4a57dd5cf29914c4e738ad399329b4218f4c0e61f0073b466bad587cbc5f5894f9eaf1bf99619ed241f7023100b1deb15d478fa82d4572dbee734818ee8b9562f6a4b3b3e183bdd1eef0e4747c4c15c2e77f69bebe1234ed663d94e74d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230547d6e07a5ec96d2534a37a63b7d82d00f86141f086c776cdf4d972193a50b43db6ce698ea807bfa393911b8ca2d038302303ac503f2f85018806d23ee36b4d10125cf642e9e9409b6935d942cd18e6cfad08092e83f29ba8fb7f0dc37e7c5e46f880302047c435bb50066306402303dfea1d20bcb707893e3fabd0ea45a4cc52c41201a38ce895638580cc21069608425723e72771ca51251967166bc73fe023030d980103f8dac8da8d2df65828af7f53d610d672b2811e948812749e568b79d60d121f3d5be46f76877a3cf3879e17c0302047c435bb500663064023001459106203aefa6568fbf6ceb290b7255df27392ae4983ac424fdd4a3558a85f2cc4c1607f6ac42ec1200f884e15dab02302fa7f8f60b9fa179cdb2295200713c31e06beb7148f6e304a633af5e1774b79825d0a940d4172b30f105690fbafd039f0302047c435bb500683066023100a99336389e804a518a54307607302a959eb85fe5d45265a35d37a6c6ca1601a6d8b546833214dcbcbd411f670538c4d202310087d3f94eea3ec30de599cc8f938f6b917c6cf02090013de732ea2f4ca0ed8d309573c56ec68a66de16488b37acd552f50302047c435bb500683066023100c5c2608ba484c94a3590834b97747c68e1ac0e67dc9b9e4b15dba7c8ecd73db5e08f64c1146c9e8c7752c063514fdff9023100e4afd6e856fce19e744ebb481ce3cfb9bdbe7a66e7efc7f7f5dec2d4f6fc566794e4b611e8a84f2484a51d81109790a20302047c435bb500683066023100a2b7e5ee7a42122fc27afc071932c7f052f004821b45341fc0318648a622c2f254d3fdae071128defa037d59c4bd2c6c023100921b673e2cceb8ea9876040b5f183332e48b098badf765930bf9cf1c0b2126a7a44cabfc67926a5f8cdc03b2ce2f9f830302047c435bb500683066023100f85cf799f03d236489ee305f88a2bea2dd22733491f8a849205bd662a4f28e503bc63018f590dec9ad70e702ecc3a941023100c8d80496d9d143d5442aa46d39093acf2843682f3dc53b36d7ae24d24f40ff0e5bd073f8663db211ca64dd1f320660790302047c435bb50067306502302b2fdc3a4d1a3d84aeaf9a4cb968081a22798510457115935d6131697157cf76d9778959526a30c0a73619b0fd34ac0f023100e62796d9d4704a6ef2e086c589b518b6d79c892a8fa6e176c2e2f410ede85bb7bf07dee4af71773abf6fb52423d63a230302047c435bb500673065023100d91db583cf8a6621698301d63b3dae32d3b082ec4b5141c9fc4f6c5a2cc2a7d2086f6c342997a88769bdffbc8ef15e1c02307bd8d6bea6f5df1a48aea3e96ed775c196a60a5fb37ba373da2b2b9920a07f5d6c6ebb48f98ce142d068e88dd543d19d0302047c435bb500673065023100d0927553190260d1d404197daad70daa584baa6d546b7093e1f931a58d5c90021bfc8688f025850de074b3078d8751a7023049d8714ba7d13adab1240ef4053ee7b61ec6c2a8fb04dc7cf8eda84980ac457a801e594cf9f5a318f71e8f82c573ae670302047c435bb50066306402306acc32d3400f428f5fbf52ff73f48ae8064d5ebe855cc42aa0ae80d50d4146076c28c569ff70baa92d696ce5e6f7071802306a7ed7802f7e9701ebf9887dbe29a2d3d8de311a5cfccde6b4ed43f21662da8d576bda5e072a9e02f2e62539cda1dc5d0302047c435bb500673065023014c8b5ccdcaf7a08b75fcad1c577cbbd1a0fc5823712a25dd7244e825e683bdb3854ae5699bd6c5ae9a433f88aefb4c902310092b11b6bb3ae3f169902ad1145702174b4ce757535bcd1c67c2a0f7bda46cfc9ed236b6f706f78e4e2421deff42e26a80302047c435bb5006630640230593380ac8d81272c1e5f0eab5dddb2a38f41775278a6ddab4b2ab5eb9cf04b10e3d09b74643116bf1c663a7ad1fcca090230792db761a2015c4890c32978e67dd34a1b3ff45d63bcd04d5616777ac6c544306b900fee885235f74f32801ebd6012d00302047c435bb500683066023100c2b4debf2be1ecae75c8115daaf995d328d6ce3409470d50452398e35566f16da6408add92267dc25c7eacef6d8b8417023100d5fb095e2e828c748b2cbfdf0381be07afe7dbbe36c8e88cac161fce801003369ccef0b8f6d9f089279a801618e6c1ee0302047c435bb500673065023100a7ad155f1d2069cdee0006cd56880333d558723e75aa69a6bc2224ce8fdbfb0c4223669b76efb78d9e96f3c8d2aa6e0d02302db2625f80a7b54fb91187898171bdeb332811fd20adfafa1ac2e2936d2a736ce63b2cb54b5c2399e4a2aa7c706d603b0302047c435bb50067306502310086d375c745e6c5c1b2cbf9ccf84f4bb50b32ee416b43ad7753412f5e3ca3bbc08c4905f3cc75ceb5b57c0084670af8d702304237043c49825dd492d72e7ff80973c5a3c8ff588a80328f48e262f8e7051d5b1346d16725909612a903947c9f3cea860302047c435bb500673065023100a55f87ef6a4d4efd556e17a1ddb520fd0237833e041a5823022c9d1eabe70e1241e1bb83fcea5cfbc7cd2288cd5f7d7802303883af3197d0453682059e1f2c6d5a0fd34b4bc59a089afaeba8dcb5734862d35c8dbe40a785ce3eecb7a70a565f9e7b0302047c435bb50067306502310092e3a7373a95325f4a8bd794437d1808799be8b1d9420d454e26999e1c8a1100f48de4e1d1011c6f04bbf1cf0186dedc02304fcdce1d08f2546391b72bf790cecf612dec225173f432e2ea7a53ae2de1412c744751fc8fa0dd9ef0b841134040d0480302047c435bb500663064023039e8757222179352ddca379b383561d7ec317d3ff7ea5768e1943d2f055cdae95a49200f65d02d263584355fb51a85db023037148d60d58f76ad84f727c9c6818c10110e99f2e7fdd0ed62a7cfcf3889d81da90881818b202b3f08480eadeaff53fd0302047c435bb50067306502306dbe4f0435ce4fdda84ecd33dbdab0b382b3f7b97bdaeef43e4d90eaec0e78b0f834dddf42dbd28b2ac1a094a5778587023100e27f66151fa60a0ac6165461fece2ee6ad5dbf59f7b0e377b67644843a5414f05e94838a4712e207153c87652588bc810302047c435bb5006730650231009f43e9f3887c84fea4f13b87e6b3ebf47dea588863425e474a43000f1c2c86c21009671131b47bf335f5a6ca2fba1fa4023040fccc8ba1f60608d27f064e4bfde3966a73e45ea744b440b37e2d1a3769758744453c4871e97b7769671f631d16b5680302047c435bb50066306402300affe30292bdca14b620c7bce2b3aef6d14bddc9b6359adbf7be2687f43c022e4535bf1fe4095125fd5869609c78a9bf023041ea461e57c3b8376a6089b10ebe4d4dceaf189e4484307dab842bf4575c2e0147173fc214898d4fba47141e2b0557bd0302047c435bb50067306502306327c8eb2bf963af6a1c02e63d41675ff018154eb7b5ad9c555c17843cbe2ec4ab06e0027be53820d506484ce57f71e6023100879a8ebd372d93b7e4cc8d57ae576b006a02cbd6253d8874247d264fbd35e53b92c4d401fd4b4467afdd3cea8cda23de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c8427a3fed190fd9c04cf86ac5e76ea2b01c1d955ba0d912a4b4682b7ca67019f86f6c2e96b3e155e1b8c2dd4e452b47023100cee337802e5054c3789e8d887506b6a5bb3c68b40acf7370d442f2b58fc03f19984f35fb6aee17016f154d360a96c4c40302047c435bb50068306602310087a71b929df749fcc111747d81f660e83e7691cdbb7f3259d181c0f5bfdc3b07aba68d39d4fe480ae0b330f76ac736f0023100b5ecaf0a0a248519695bb78440ff2f5d5608a1f9b4b1769d06a3a87fcb475a14590817dc99c4b64bd50ce0449abbc0dd0302047c435bb500683066023100b3742cd560b09bed35ea9bc7f2bb722303add941eaf0784bb998215a2efa2becddd794cdff464b24df6b7bcfc6614562023100ed004dd47bfa0eff0b5571a50f8a1ac2fc472cc3368a5cf0c036fa0cf31c34966b8125542ee2141a6312a0d3012e41300302047c435bb50067306502302906ccf364162b631c292f573a058fed1916282fb995f16482772ebd6fde8e0901563f4cf6327fc6185a1b01290c9261023100f3290441d381bbac7ad18c1ef9198998038d48608bf96d61a3ed5f8133d98941db549967d8d296163ff3214811631ea70302047c435bb50068306602310090bc5acba35e804eadfa771970f8fabb028553dd66b348c9adaa319d4cd42bf71a45027dc84e456acf220212fdd2c39e023100a7c8cb65d5a60dd6efa8ddfab4d6855aaa94e7bcc5a850d4a40e80df88339b2d5183cc3c27cfaa093184bb995336b8a60302047c435bb500673065023079d8783038be0b9aa80b79c3bddb15c2f60e17cf9f50e35fc562f529d9269b5496b19b284a3673d19046b36f8a22e3d6023100c45386e7a6afc266c1be26293134f938ad7c8e157bfba8d2f87af00b8fad02f3baa22948981c1fcb69a9ea148c2d29260302047c435bb50067306502304a1506b8427167a135d8a0d918e3b345592d0acd127affad29c6d0ebaf139f672e498b3f4527b04a7a710f0416a716240231008c513ef6f7627ac0d5c3d4613feb0e32b0edc2a00abcd21b1d21b17f2b0f741acc6f11da18d9667268699c880dafd09b0302047c435bb500683066023100f7ccc78bf78d0b2458a7df8569006780c9b1af1bdefe3eb90c534a41fdfcccc50a70bf0a49a62f53587238c83f1e8fc5023100e3a34a68c2403f229a7f771c47be50f62e44fda1df6b0e8465fbc2ef76fac41cb5d31b8a0634d7f5e6c31b6cb9e83ea00302047c435bb500683066023100e0b3da84eda4703ea760776fbb51323cca40f8cfa400dcf92834b7a43b939164bee99cf83c72e22f8ff18ee4e8e4e002023100f4f5fc36d7c5bb0181fbfa65f3ef78d5c7a4f01e08df0ddfa44037a8d783bc6749d3c322348669a0752573e3f764d4de0302047c435bb50067306502310096f21544445ea89288c60b8574859f03676fa6156d88b1bc8d23c15a83d64bfbf4380da6ccd35d9a28fb2502512fb04302306e3f57bd8f01d4646903322a8f8cb5f05d2dc2b9c1fbe3fa0622254cb31c4ce298858c031b20c7cd39fadfe05c4ce65b0302047c435bb5006830660231008708eb3ce5a4a9ef92f51a65d949fc59ca4b409dfa9a9d965f0ece3064cb186fd842493b5876ca13c11f34a070993ad5023100c91cac78d927e9021a49e4f15c8c939dd6902af1c78d6e928c1da92c3ce3bf5d4161ead654b1cf0e7213e5c98ee2d3690302047c435bb500683066023100d9032258501a9b696f85e94b0ca574a8f78ea2830b43d2325420ae65b596fe030b0ed58de5c69773d0760091d69c351f02310080d608aa9a741db35308786c00544c8049e4e3d5ee78debee4ce29b3464bfa3523f153e2875b1e5485401182af1d60450302047c435bb500673065023100d724a17815ccc81dc4eac63ffe1bdeb8dfca08ba58d5099e0cacb500e7106884a67d5b66415b117b291ae403808321950230100edaae6370c042ea241bb5161ba9979c64d548c1af8273701e26694ef01df34768e58a2bec13b3c1ac66cec5aef6a90302047c435bb50067306502305d2658381f0428d86cce1cb14fb8a1c0e6b9490f6b971296abee2bb3a0278006158a187205f669686e80eb3c9821c105023100ed3dc4c2f18f066d7531600811f8cccdc037e7a005dab1a065c3abfaa63e5901173059cc7586d0a90d19aa4b1d67d5e60302047c435bb500673065023100d5b85c1eaa1e4ae52abec79ef174a00eb1e3a01e414d9b3f58208ff79d91fa4463489efd8b5080caa0c340ed07b1e801023050537f02ac2f0de77edecf5c761adf36932f1b0dffe7cad6eea6e4a9b98ce5ceb641c2cd51b582e0b8bd52a8ae93cbb90302047c435bb50066306402300cdf5ef20319f51c300fdfcf17a0cb46e12a3290b5610e872ba0af8602d7854eba9b2c66e23458e17c8410d0d543aba102307425f02929bc96d271c8ef105ce18ebd735aab6c3a1437262b4c909ef97e7fef970f41b2dce5a8461f5621b58c63fb400302047c435bb500683066023100901e2e7b7c3890e4e196cbd5654062d5e33b07442d70669ce275e73a8978a1b5bbc401081bc5f5429d2af42f29dd4435023100a6d12f3e201e6d55785c50c93cf7c9e093a63522e6fd0eb8d1696620de2bfb533513b64ba825475bc62292faa1db40eb0302047c435bb500683066023100b718008658bc78316a2a48d757eaa1e3263ad27cf7bb619c5098b3b558220b4263d0e523b8e6ba672d144bba5fb4dfb8023100e6e9065255828329e890c40c69349002f8a774b6354ff043488feddc6c716dce9a6bad170de7af2387016d8c76f2d33a0302047c435bb5006830660231009e5d29f36c01b7850d574fc47d606eeef513b44ddcdabbe91d25bf8d7ccea2091f7a6f7f3e378da18cd0df568c57e6d5023100968ee0f9d51ba2cd49b3a0e41185d231be23d383ef86e9b090437d58940256bc79bae019ff7dee3cd49196a4b635104f0302047c435bb50067306502304258ddcaef756f5c6adf14995013640cfb55af4783f4cc5abb6332f2fcdc0ba143bf5b05677a9ae76ca224567e8820bc023100d858d205df1eebfd20e30bd9a9a8e6e3be9a4ee07c6f81de2b465441806a0b849fd5331a2b1b867b2a45e8fdd77dfe800302047c435bb50067306502300b648598210dde769e9de7c404de635d0ac758fc27ca6ce35f62a30eb72cfbd93394ee881ef4a43c44579878dfe54543023100e6a283899d8919b3794d82d080ba5d12e63f37681c044cf559dacb83149e44990be95411ce521546863c657bcb3f59770302047c435bb500673065023100a33d996a67606b56b42e0ffbac8cac8cef704748be77c5a45b9a843e292232626f069b96c555f60cd787573dca18c2ff02301a443fc8106206481feb3c52f1bf5c15b31c778d04aec6856765cf5cd0d7a82267fd8e8f96d20f3039476fdac18726ef0302047c435bb500683066023100c5fd1e08d6fc6904440cfbe5a948d66ff07a3e9d40917a70687046a9ae60dd18574ad29343d0a475bd486f0651e1a1d4023100d8bb7b8ae95c16a4a590bbfbb19ad0e7b9096cb319a79da5c4810afc27bab4067bc67aa9667dd8ead35dd276438b854d0302047c435bb50067306502310094dff977405120ab1af7d83e68f94b2f807ef3cb4b64ad397efb563df3e7b183df2bce2ca16eaa5e1e17f395eea21ce80230027a8ffd253157742da014661609aad9b93c3708329f906a0671c84367a2b96b14f3f3573fadd8143f21fb5eb5c0bf7f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306052974862816aabd9ba2198e0f0b237551040dc708fa34421e4668537a5757df5b40bd1c2af2cebc85002033eea95e1023100a95bf3c32de21668e694ecbc9a533b607c6c14c5648784cd1c50b45783428662f97d5eb539edece1236df642530009f30302047c435bb50067306502302a1317442c7b137d09399e12cc19592b4d88327b7cfd25b58f79ec8be56998f5554b4191c3f9544170abad8929cd2af9023100edc2a85c36413f078b4c4e47068760b70e286eccc57bc6c002e2026036ea98f76dd9b1bc5ef137bb18c9eb0252f2d8970302047c435bb50066306402306033e3d544ba6d4f65cc13a8324b286c1bd6d48bc9941b36b717ca02a4609a8590c88b5923b05cc6f2f14f7c23bf12570230680ad9ae65078ab30c8255ced9f3cb0e8f888cd3bddb899fe3a1ad97291f3cad0057292cc122159b1b199303b4a1da810302047c435bb50067306502301bf7c9a96b3c99979b83262ea05234e38686a6fd08d077f308fa514eef16d7d058fef410e3573c7f874a90f193330bdf023100e1af91ce2b7091e8b0d60dbea4c3dd84d7f66f196f0bc19f08d5a40d91545ed925f420d58abaec5063a9cef5f4c1759b0302047c435bb500683066023100e170329f468664bc106ec534ec5abd29bccbcfc3566de540ef2659e71c8c3674d0fb5df5434dc6669ffc985122661a87023100eb58a24d4d4f700fa52157364cc8db4a4336569c3565a60e8d325f00494ff1f0f710dd127424b9c575363537fa2ef1800302047c435bb500683066023100f554a23192b642dbd52b2875720be3b36463bc90491cf2d923fddc38181fbb695a63118ff49733f4e6174d352dfc96ad023100806d07ed38df74d94c68959c2c8889bee7f3a7650454462b8216bbe790682d96c904a31a7234ae83c7732ce66bdb6efd0302047c435bb500673065023100ffb9dfcd7c4ead5a91a14a7b0891a0a4ef238baf95e30df354c9940d01d33f99c0b043cd3b54b14159663429da6c48bf02300531f5cfe8566a94b7a7f3a27da223bc8f36e8812414165374de9e20260b0fe677fe3f741000ab53cb0b6f8572ba3c080302047c435bb500673065023100857e008c16a1388ab9ad2f7206e76f36e6c5c20fc8b4870d4e77149674de960393ef4c6e6a6ce3007dec5d2b6dd0c5a2023020ebeb670b4ea456c160cd40b300cd97a9a3b9ae5c827af3ea960f8ea71f34ea1db94c52389686136c8fb6f9c584c7b90302047c435bb5006830660231009843332c77453a9ff8e849c2c26f42c1c2b9fe0af973e695e5833c9d1384e01f5b9cc77dbaf0230cca02d1c9cafb2042023100ff057417410ca0896aad79101863e6da204c560bee46d1466619d06c7f5989296a5a3cf1553fd1b63a3791bead308c3a0302047c435bb50067306502302f5a1b127b7687463638aaa43f29fea0caa6a293a165df91ed6c186b273be39e2086c814fe9e619335cbb1bf66436c05023100888ab85d681d91bb379ef0510263001e40601fbf8262b6a8a2852a2bc74368fd9872369701e60a7b539d1c08f30a77b70302047c435bb500663064023064c4ee24a57ec92a1f123ccb254b64aba7f8d34b5e7d20670b01aeeef412d5f462d44857d6570d5873c904caf2c46fe3023043782d8de73314705218de654845e477dc5c7f76d6d5ad195b84aca19349787d71c23ca5e98d7d6a3e6ae6eb8d65387d0302047c435bb500683066023100f96bcc21126aaa963988dfd466b76c953ad33011f0ff671051415cf01b3ab493e4f510bba50bd7e881dbc75ce5d3e38d023100c1ec40c751fe7d7b9bb117884a993fa4f3e589a0c4c8bcfd146b1527609260f6a4c1fe7dd4e32e3421e55349483b3edf0302047c435bb500683066023100f343662290c2d12fc8545983064e2166e42007518ac6f71318a1d1a8819f01205b09996f59e52544d638eac011edf3bb023100f3a459854234d6a246eb17018c7a4dbb812308528b34e9066ea8cecba7c91441074af6a666a1fd0127c7ee8c106e85f20302047c435bb50067306502304770c000cfd2eec1ebe2b1b03eea74a5263bf2982b8f451227068255f64dc1f2468f85961f95915bd31fa8f71c5376d3023100ef3a91cddf09a4b434dc0a1980988b3f91bf29620919c9d67b6e0562c0da3266a9cf1b0d8511d90b3fabfa26f7ad06910302047c435bb500683066023100b2e2e3d36d3a1d4f79302e99843e2e95e889c07a5a4214ca097dafafb806af7318faccdb15fca355b32b20bc5197927d023100f90e83eccd4e4fa15ba15d4b1826e6538b0dc31216a80b6fb0525116e218af3c736d39239a151a7fd3e902880453a6110302047c435bb50067306502305d8c375533ee45471bb453ee3238f8a67ebbe9bcd107517a5e07571f158f0d73acc0f52d958c9d57ca6cae1943dff696023100e2b6ced2e02eef49835ac49d8a3dc53b12d4a48ef78d37178c7098f6b3e17edbd437c6705ab85a7350aea965f7ef0a310302047c435bb500683066023100db0827864ed8b10a8d3384dc6c2cd2d15b1c3651cdb83b0b301aa067cc73b587842884b086f44f297c15e44fd48a07b0023100b9f03075077260f1cb5c0af70b5210f2c7e3e9c5271292baf9dd0a0042f03e8692d4ea28fff708b9599405d6327045150302047c435bb500683066023100cc2898e2d9201b692bdc76132c103249a2af2e271aa8c498f9183f8057e98d4afe200428c1f3dad6d07f91c3cf6f20c9023100b1b15da4a29779e9ff549b2119edb36ea9773ed7a2081c0b68d438c262dc56f22505b2d6d41032542c2d900f579e12340302047c435bb500683066023100e9c6bb01f61ae72086c62208db4f7146c6b6f4d08238febb74692cb2ead5e944fde163d0fa4c285d57ae53586c74cef9023100d242aa5eb01614d2b7199cd80a2d47663f8ebb1a57875c079ba058bcad93a00cd5f192fab587c765445528ab720340bf0302047c435bb500673065023021d57795fc98a9f85e9529aa341433fe52b90c7cf0d5df9033e776d51a4404a4a67bac45842eb56007973c1f00701bdc023100e761296e1fb3ebed3e6dafb9591de625cd48d62473a9cc6be735b3a490d0f1ba0bc862058f303d8c2749d2ce9d7cd2090302047c435bb500673065023100f6b6dc7ac244c1b6931905bcfe2fca96d9238ef3a48286f790d819a548531e91eb646aa5750aef4c41c2959307a63e7202301654a6e9281b4598749d78c4eb596286d76b898b50137f85f24f038d00cc9805df8e7471696c7f49799a5c92b35fed170302047c435bb50067306502304d199ffe12649df4112b1f9343006c0b14537d0a1c234695b94b322861dc9ad369036e1b672fb846e3f347efd7bd7987023100de81d7ff035765ea8a859eea36b6e51e69685b14037f9f07d1aa41352b6b0457b0a401267ba675c6f55158fbe27b08570302047c435bb500673065023100ff88801e9f3550820ed78f0c2ba8a128f7b5eb82ca7f2f74a1e8b8a63f107c8e1e65b07cd88d9b22eaf1e05e55a1122e02307a4818c67c2aab05f50875dcb7995303a844fd89a55e5b84ceea8ec2489037f4bf18f100f7a42313d67b545b2310ffb00302047c435bb500673065023100b5b2e787d6426261f8072962307f8698fd8fcf213a334a0cb36783dcadcb23f068b6f4e4706fe1d17b9e12a3b0e95db80230559d639416223ae96f591313c0a22f77d4a1576c83350c6e3ce1eceb0b7c11168982be742d81fb14186334d647520c860302047c435bb500683066023100adcf7b24b2d0a17761e3580d51147977f5ec5c7bf57228d849868bc432aaf35992b56d7100315694b968d7b044b8cdce0231009200e7b7e0dd736f00b54f7eb8040ead9e14a701ad263f987877f6f78496d7d0cce5ae99d1767a6b0fa5734872df644f0302047c435bb500673065023100fb53259acdd5cf29efe1f9cf224ad4f5690fd522fb5f525394a1729134c7a65c26aff52c0702fce4d6536eaa99b632340230274e27550184bb6090446fc08ea9fb10488c7ae2f340939a885a8e84c34324a26a9b54fac0bca0cfd9f947e65ae5a9f90302047c435bb5006730650230572de795e8bc634887ff0f139e497998bbb5a000226492194aeb57983c6d0f431b80e8153dd8627d7ae199e99aa35bdd0231008211af974d182c7569fbb1ac611b484bc54f7a1134e1c190d631d1ecc54015d4895960ef44e2a6663d712b81549c3bd70302047c435bb500683066023100c697eb19b92c9f789c31317b5ef7ea4b5fa863292b99bc13271ace4b3c13fed08b3e25fe7e914bac0346076a1262cb3c023100f2c0ffcc4311a7614942a07f2ff8ef8c226b317bee4ae1e43c68a2d833dc9840a44d1d3da7cc6745bf72327d596da2b60302047c435bb500673065023100af6ab8d91746b479047756b32b4eb39f39ad9eeca6c8bfa95c2ea23fdaaffa9ab60e99672f621b06b844c4c979a98e49023049630cb2ac98468021bd10d39f5bd8e5a92dfcdaf0d20be72d39c7eea57f23181b387ada0c949dcf14d854b75d88291e0302047c435bb500683066023100c308fe3bc29d596f491ab682ca669e6aa3cf940bc4e2b5fcb1fa5e8f76db747174eec2724dea65d15cd54a15845195070231008dd9d7f88499f702b1ff7ff6d45b77627b1834119cc23da77e507db24a619b4ad339fbfa63a17560daba567d7dd016850302047c435bb50066306402307f14071e45b58007d70ada647a022c553a1816f3663e735677f73c01be0ef922c7a9b0398a8532a7b69419a6dadaacbf023051bc98a3454a318cc5da04bd49507f37fb7286a93718ac3f519f01dd438f7f5fdc7a1982a6411dbf3b953517db2506dd0302047c435bb500663064023076172150ab0974225625e65a89b87b6a58e3254f1140a6cc87c6b4c67d15852e716efc4117a9c2a2d6e87ab4ed1bb5fe0230119e1a775682e2bced0f482ab689f1f79a07d8841d5c0353f7092fbc65f1cf1680b09bb28b03a055355780cc85ad429b0302047c435bb50067306502307f54576dca32f7a2ed40c035c8d5aadec0c18967a0e00b4c045b3b36083fc7a6fdf4d0de2e8723382c9963a4193570e2023100ca6c31b36c6458374f20eff33e92c13575cf8c9fed6006dd72fbd5729eec501f20637be575bed1a77a99b15d828778500302047c435bb500673065023002e5f93fd23dd66e9e99586960da538d5e4027437a11504f69dd44e88d7f2e0ddd1882dba530d73dc29dbdcafc4601bf023100a47da9d1884e9f60bee796ee281e9078dcff092f5e3bf0d82ec7e6d3e4d53b184938e32ab765afff4c7e1433ff69cd670302047c435bb500673065023100b62e96611fd42260c43c1ad1143f7b513c9d548760f7ae1e3cc6ca1c8fbf3357c29b5ee23b935a4cca7d9385dfb0e4e2023030750933784a0aa3c69150ed2a74ffd7179ac87e30f4af9362f736c270034ac1118c3648ff3fe0324b2d0a4999758fbf0302047c435bb500683066023100f30fd8eaf1b3b25e3279ab79cad828830d9ee966df2138b4aa9210f957582fb77aefa2e672b35c1c82135ae39b6d71d7023100eb45ff2596fbe3d1daa307f0bbe630205798a032dc441c5ef829cbb3332a2e6430cbe895eefe6165ab70646dbdee3b5e0302047c435bb50067306502310088e0d183b75e4b0ff3ab4b8122575d8d825a8f72d2b5ae372e56e7b98bc0262072e1b4994162622e5cf78e0dfea2fdc1023023ac1a3809e71b313d52ac380a9c580c0abafab6b8b8cfe8f0c072831edd05dc473d7b9719c6e8248214f144372343410302047c435bb500663064023048ea5cb5b194b0df7786a8f3634baca52abc620b77866eae52a5662526a10b7b696cdbfd7631832046f351725bc0c12002305fb723e9db009dff26521f92e8774019a0f36c927793ed53babfe1f32ac6c2d450c9999c32eb9ac064a5994441abd6250302047c435bb5006630640230210a8ce787c5d01315847bc5c03e9f2cd80907b87f84d6f8d13a591227229345ccd01d3f4e61c30a5c4dec3234416eaf0230046cd568b6cdb12bf495eac539a40bff42fcb2867445361cd9b96dcaffa18f01156ccfb1df441e19dafa1a00d02061980302047c435bb5006730650231009adf07a0ca5df1df3857459d5331ebe7063d041d7a2f0313cef05670785f58a2f5e902f70f53c50db19477bd3f900a25023073f1a37309278353c3a7d0b4001267f5b1df1cfc61f87d2b8c2beab8035971e5a92744171cbdc16429e9473a978ac7fc0302047c435bb500673065023100ef1e40f2b51b0d98c18a35d5f1d4175f9cb85d0aa768d9ed54ac026860596906cff303592ae77ace12daf1ef9723280c023004206bba8db5b335f1bbd90bcfa2b20de9bada68c04ae9e5d042aea6a0485e1a3cacf5f357a7eee9a54a1c749d2c8fc90302047c435bb500673065023100a22d50bad44150ea4ef3704004ddcef88ac9b18f2661ff3de12acc04359f135370f58cfd80dd249b6354b301b94d2c980230275ab7c8952d673197bbd96b68c43313f816aaf8a53717825ad1053ed64dde28a648565c636846444624a351d079897a0302047c435bb50067306502303b287c401664b31723b1f365a042c2f003d1dae045fd181e49ade8e28d4241c275b923f38dc7eb0d5fbc8702d704fd25023100fd550b02fc153ad55fa9bb06dd182a35563548e36bdfa6f9e7f11c7572737b0c9d74e11f32ae77bfbec30bd69af134480302047c435bb50066306402302a33a7af743dbc5fc292015d21349a323146f1d85d1af42b10073f19c1eefa39ab45f07dd5fbb9492ae88b44f87e094602306297306f8abdae3f07305731c938d64e2161e7a8ee83fbeda6057ddcbdcb10feea0b7a85195a4f5d4e5de8122d78dd9d0302047c435bb50067306502301709671870a5a1d90df06b060cd94acbf7ac8903ae8cfa3de662dfe6cf0f32a998c059161cae628a5e8c751aed1684fc02310087591e4ce861cee5944fdff59a3187592dbb9fd0cf094cfac9eb0ddc90f9e583bfd3a67b4f979e43c31ddf696581e1bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c96ed9455da257ceea73e3d5f1cfdb089328076d106718b4957286434c6bc67f520d0101693cff5d28f30e3c6d4497bc023015caec44159256a427d8f8b0713491f1da209ee1cf778733e66b0c905435a92e3d3bd942caf6600a8f839d5d0f7278a60302047c435bb5006630640230183ae088e9c4555c0eab27a02aaec03cbdbcfd8cb64c74725d4310fdbf6bce29590057dbc62fb1a8c1b1b4996b4be86102303c7884fd375e540b3b48563023f7a4d66460b3ee42de3a044593dac32b1212cee389e174674bf3fcbcab78c4b0f0c1f70302047c435bb5006730650230561e021fb684b75efa6951262dc5195826916ade65102a5c7b7c19ef32624e99bcbfcffe76c65e4d3f56a34c491379c702310098fb5d35903cd0d64db933ea11d69ca6df1c0602f987d11806375ebd03216b79a67203946e49118fbec403b80dbb1d220302047c435bb500673065023040b0dc496f99c1fb5440599214e0a6a2b1835fef132ea9c997d2070764c73aac19e17c2962f51e3aa6844d512fe6bb8102310089252faafd500c00bcc9dbb06754cc9bc828a745551c29e2c86b5918f8b254c233090a289f18d88bdf3f105250f8d6620302047c435bb50066306402303465eebbafbd62b46924584a883cd2cc28f8be66df2b1d8e52019f4aa84588b824823238c84b20cf4621ff8b6a895af50230128fdeaa0d2c64362c3bb12015e567629a715a76d76de24de0b6b19a5b48fff19c572e93a857fe14004c3d0cd4c2330a0302047c435bb500673065023031b35dc2055695f8282aa108954000ef2ab53bb91550acf9f479f9334b106ebd78e38b55d09044f692bb9e187b5dbe8e023100ca3b6d9ec5aeec11c13bf5fdd4d6d2c3ef340f3b4926f9e176410e33d3f1cde3a1e5e93550574f4047de37d9a9b25c750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300b22c612c0cedce9a43e8fc316b0d613d6085c535276d0c73454ef8c082bce7eaccfd9c679576b209d1e9a289579f8c5023100a0761e5eeb0900d85c449b2ff9424f8b7ac62d095e8a82819f24db62b4677479e213e72e9d63adc04f1d7490d019b7c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f02686a71b02876bc0f815be0a6365164e6758a579b79beb0d0808b4eeef48f7d75088b746b03204a73d9b088266c3ea023100b316892f4ddbe300da06fa416d0094c98c45a263ffd53f525a4f27a020927c5aadcd676a25415b9cc45af4a3aa9a69c30302047c435bb500683066023100ff7a0a8e260b201223d1e7132073d33a30169166c5d967f8afdd85354ea48fb0aa3702fb211bad3acda22565d3fd3b38023100e7ae03e79069ccb8bca8248cb9e95d0cc277cf9bbbacc255fbe29e2fbba2564aa039c0308da42440081bb3eff71ea5a60302047c435bb500673065023100964a90b0976e3b9846c26702d433f2d6a1bad3d7849ba60e25b329619666a566cb021855a981f7f432c6c9fdbf8ada4b023045cda572040d2db3d8c1704c3e29687fbc489d746369678dfd405e597d2ae439ccee6f76ebd156d16d4a94f659b6cc2d0302047c435bb50067306502304c5869c72005d4803f6391fa4638392f4015a16a1e11be8ca9b17374e9caadd3f8dfee55264b14e289a2acb3c4d65f730231009a222819a92b38d13df906706b1d9102114c1f2544ea7b54f127e2c2e58841d93d669c1b20dc47e0457fccf96ef392000302047c435bb500683066023100954112850a72534e3c23e33ee9339ac39b0798f5f4ad589fd675c15876d470a25a3121b059b1a24f9663de933e324024023100dd626603b8a1face2d783e952051733ebb25e4f7d73404166b7b051bbad25e87a06281f3d548e72c10fa649b57305ef50302047c435bb500663064023005244d39a00589e877771542b42121afa960290c13bed26ec0d4b8c385c0d05e783e838d35363664b101ec9959a16f2a023039ac8c1ba397d0218963acc38c51470b70432c11b9fbea07d99406cf8b40b2893d46f7567849f50507dcd5be9be9a85f0302047c435bb50067306502300166752be2620f31ecde895b58667c4043d377fdabea758d6402da110c5d245472530edd2da813ddca8dcbe82096ac2f02310094bab3682e415f26b21ac3918764d8f4df0e631913d2150e457469729d2630f30074814d54df6978273846baf69b8a960302047c435bb5006630640230356a3e51a613ca49608c6ac6c220e4ef8f1117638b520e363f3664257fb97de5ddaf918a73a1eedd78ef0ba00082d8f902306fa3b6ed15615583c347ab56c1a363d82c084eb9f65e8b4479868730f7484e5044009b8fb603b8c9e766eb582adbb91a0302047c435bb500673065023018c0a726d46536eaa18823e7324b582b95e38e4cf1412c4b2fd4b9080bcb82776019d0ca40115fd53dc01ebbefca4e9f023100f34547e7cf35432b613914f4c57b0198d01bd82ccc6a0e8ff978cabb359cefbb768caec07819c9fa4cb926b30069b48f0302047c435bb50068306602310087b8cc8ada1d0b66dd61351d645abe4fbf031ebfb206c5bea941f8ed4738b85e923ac2ae669e8db94c60f56b0f2927d20231008a00d13526eb1eb6e4f07997c6677bb0218678ca4d39d39cb797a60e4f158843cc33aad9e4a8a3825f64f4a0b2fb0e440302047c435bb50066306402307b0c066438e01c22fd9a6aa45eb40dd1fe3419fef913515af7da0314d94316cc3e6690d7907967f3a3d3022bf1d3ca5b023014c66984dd6a1a977b59fb4eea40dac4a612f59883e87299fc5739201c9d85e619e729dafe884490b7eb25d15d2f21790302047c435bb500663064023079bde225ce7403ef7a4962130b517d6ab6a56f53291fa3d1a51619c0f554a3a00deb8a67a139d74cfe61b8ca6b80ca9a023005c2980a3e2aa8a6e50db17849f0beb4fd9fb39aece5086189ed59e57b1ba4955203fa56da77304c7a3d29808e69d0810302047c435bb500673065023100bb3637be3a9fa8c810b5f0b26609ed44f26f82fc60d131a18a6cdc01757636312be8aec38b71160ad5daf018184176bb0230392e1521c5af136d912103fedb725f9c8ac1c3e801240db2b470ef9a05f9e9cecacd4d997c276b9598c876008fc68b120302047c435bb5006630640230304c52a947b27d0a98ebc6f80418535531c1b25396108ee4fdbcea2206285d485af9de8d1d41d4ed3d7c77b206d42b8e0230295c993c026f66c93862c8699b64a8abc8aaba81cf6658fecf08b4b54438fd1c0dea54e8c06746240c4d44aa16e3863e0302047c435bb500683066023100f1e7ec032481437636d593cf6f3022942f1d89316f7b2721192c97eaf0dc4524a37619112b741875a91d68dbc5bf374d0231008ca07725652cc30ebef3e2ffe44ae334ecc48a781ee99e944fb850815e3c4ad3c33eaf99017c6974928cef25f72ed0890302047c435bb5006630640230289df323cb0480fe7bb758f1dea5e76848fbd238489436edd2e77bc3f681164222c9bebc52962d94cc87fc80843d5d4f023062535864f3732bac61a4838354bbfd5e681737976cf5899f6d5edc123fdc0d1ec0f45eb4c17b576ef0b386bd8ee544240302047c435bb50067306502307396137a0ad50a74961ea7c1cb158412c653d49e8d766d9512c1a93f309d382842615dcab20a517c5f32eb78a5b41641023100a68368c637e895275d8f2987563562a73ce9db59e26baaf9c3f8eb6041e344d127ff3ab95295bb3b4bb4a28c88809e8b0302047c435bb500673065023023a1ea3ee54ae8bc7b92d6097a4e6c5657dc7333f72579f2a35094f27b5f1b12c1d9fadc4b6c47ddb07259da3c11b1d2023100d3a072851704fd3aa1311db97e6b0ae9d24b2a5496ca217d4e07fd9b39df891d9e394f08ed9a70369f064240bf8e11680302047c435bb5006830660231009ffbd468b5980da9e54b33c95ae7532da43a82a01fd6aea21a58fa7cf3a537c20d6ce4f7ddc323815b9c2aaeb5593e9902310091ccf74e7e3afb327cbfd9cb42c8260b6f96423c7e100bc225a0fc1e3990f1d4cd8793842f7fadc815b3273f9efbabf50302047c435bb50068306602310083fd7921ef45b3614ac0e666f87da45ea7f12df67eb2a1f8dba9e5f55aebb58466bd6fd12c085666bcefe5e0ea3e4616023100d4df3f072e3821999ee754c26e411a46302a39d213d3ce807b0f35dd5b377f3f936d100b6e8aacd2b75c385f4ca84f760302047c435bb500673065023100c500941d68fbcdc802022a8ab42a0e2d98caedc0b37cd3e4202aa71911c7d6d9c5adbd41d129e72d75c6baab8d79cccd023001d5a6b4fc1c96e94d56d8f326b0d5c492a9c5023728f561f4e8e0c803de51ab692be3f32f849916deada419142937330302047c435bb500683066023100c82c77006aeb3ccc3ded80871feea4162215ecf3856131a232aeaccdb8d507518d9fe6860f8dea27a0d463580d917772023100bad252debde0e0bdbaa0f8499e9d83853594c9070d2561509d73c004b9cd5c0b384eee75a8de75238fdad906fa4aab250302047c435bb50068306602310085db2a85bf0f230e72c4f00d9fe0cd79dec65582ecb56bc0f5fb388a379d3a9d28c693c41b16246d2f1f17e03c8c26c5023100a677e5b77a481137a0517aeeadb86b7138cb7184df4ef523e9db08475fee4adc1a1e38e0697c125a18fafde5b708e4270302047c435bb500683066023100ea852e92edae5731148fcdeceafb3c5fd29727d3f34e507c8d2a8aef7d183483014fc23e35a9661e1bd5b9f6252aa22d023100bdc1db1f2560151beb47bad0eb81baff7aac35ac6c499d80894fa2e816cc5a8a9db939fcc93ab52b34e0a30418d281610302047c435bb500683066023100e21fbae9dbb30403f1e6cd607713d540cbfc75aeb84e7b0f6f3965bb0a4893dfa3b3cfbd4afbbbcacba447b4c9f2b396023100be2dfd356d19289c12d5b49e35bff141bde21c7996a90cc361545c28be9a6ae7d580aa071601ba68b650c115d5816e9b0302047c435bb500673065023100c37d139969f7a271ed3ea16332eb6f68285ee9106147a319142d9a52f790d9c14892d9f7b74dea0d67f398734bcdaa5702303660c96684f3ad51d980e96fb8be78da7baf3b6adff59319b0fbcec0b8d938846c96f94e9201e53960425cf97a5201930302047c435bb50066306402304bbe00dbfbf42d181035d03352e9a88d79eb96f92b0a67203104ae816918897988debc9c7b0dc84f765f9ad2ca7b8eef0230580001f39fe1335d5836d39601a59ef564b6989ddd90abcf3320394a4434ef5e0939c0c31743c9e17aa776200ede81ba0302047c435bb500673065023100f823f982b7e6a241de59f719ed5d542d4ba5f34d2fced8c33c2e0fe34f88ed0e1c88297fd32fbf15dc7e69ce022c268202304c2e199f0557438e9535f9fc6dbc694d1f65176bc657a5d7254ce22e507a0975162dd02ba164a32fc33233102a9cfd980302047c435bb500663064023035d80e33f14182fdbb24cfdbffbfb516d8c85db352bc42751670996f0cc94ea171916b6ec341d6774cceefa620c2f4e3023009148891d18b7d776b75b5fa506cc7dbb814937b4a1a4075b45a2a96a56e2c76baf39e88523f0d9bdeafe7e2a910825e0302047c435bb500663064023077d7c935498b5e60ab5fa1a0b56268877259624363ccd0db438a4e7c586db86e8dc08b12f9cfc200813866be0c0f045d0230241385b43807ca76a892ae83121b2f3555e06d7d1b3af231bd53690a0fa81dd5262ffe1baa71637d3fd9e1a5ab74d7050302047c435bb500683066023100c9637bc44531dc62a94ec17ba545b14291670ab6719de4edb77d7aafe5a5ea6241e2a3967cabe7efed02c232e680041e0231008da6b1343b46f978d9afaa68e7f5f24740801ddcc14b982fe663ed0f0bfc1552252d572668e117744a44cc6f58974ae00302047c435bb500673065023100e6633a154d87cc2cac774e56b92ce0c0eeb2903a4dd7d0deafd1ceb850b0ef5bbe13a909b26f12e298a8df9ab696f5ec023032184cac7ae9124ecd0aad32bfe8248e2169bd062c8fa021373ddf291a292fda3dcce3c2959dfb6cd0d0f23d7130c7de0302047c435bb5006730650231009e185b4f1c359a98c157bf1203b44a5d5900e2fee06315211441d994bca5f0dfe4fdd9da239c4a1e0d0918705073c2f9023074176bc1aa89f8538d7889439cbd05a42661492811896d298ebd584ae9bf13136097418318ced5341d7f25b7832454ea0302047c435bb500683066023100f064cc0f2c22d28e63b30e6c7baf1c5e8e4d739cf0de55b5b0c6fb6d574ba0b5bfa393e6f8d32f99c492ecf1ab976cb7023100ba95ddb9ae5d2495c3bcf27673290d962742df72f16c431cb60dde07f9bfd1dd462ee6ecaff4293ee7d37073e99634d60302047c435bb500663064023004295df83b504a8fcd2a9877523e985f20f8e53c435faaa88a05f8a44923264e313a326bc28b612b0442344b3b7832fc0230114d113f1bd04537401804878ff4170081299aacf8d0ec1cec49236fab088d8c2f403872ee115bbda435377d891139c70302047c435bb5006630640230492a4c6f600da5966ea960194fc5bfe8b990a71beee638d8ec40b86bbadc66aa72dbd29ebb9323d07990b3151bb01a1f02302dae57a7bc9815bb5aed9a73af52ed532e98ab709cea148ff1c6ac324e41ea7a8a7448771da9fe79984f47d669db5ac50302047c435bb500673065023051603b3058e1b8b98cd2b3ca95e06436c73ab2fc8cb6bbecaa99344568cc247667ce025f211665f5c3875a9422346520023100c85be24faafde55bd0122be20384c778b4734060998ee47f2fcf0a2efcf1fb829d208a610e9f6f7f5c89788f60f6829e0302047c435bb50067306502303edcaf139fc7217f80ba11c592ea177ab59c357b673afbfc2e13cab26e09c9a6fa3701adc874d65d4e4e85499821cf75023100dc6993ae900c576799dd3ec7cac82589f557ca22cd7f91a832aed0e2cd37b537540573d95f74a799dde2740c7a93615f0302047c435bb500683066023100d193d0238fa2c89ab4015650248ee57884b55ec8be4025f9936dcb77b3276c65585ef0f746c82309e8ed1a32d0701812023100ea427bf8ae3bb593b3dfc272672db0b8aee76976a4eb9eb724f5bd758d2a02ffd0d713c21b1a3a3d9747412bf31be28f0302047c435bb500663064023039a5cf1070a1a834cb8adccd8f08b8a363faaa447a4f8aee3ffb159bc880583efc69016614f925dff5312afddda8daa6023075e885a04a1afe14ae810a83094f8b9ec25109803f569af22e50947e093ebed488c0a82ab24949b48da6d3c7f25dfd500302047c435bb500673065023068de66087c910f9cc6f0f7059de8c78c2f5f710b6f75481acc33b87f775f095971883a227842f23a8608408ee486e946023100b397c06335a1306f3103a846b82f6f6c5370272bb16052d51bb3446eec0542635b723e517e92610a50c073ca71e333a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301cda929730c9f961ef8d3e3dbbd82980d2b3057b0f37ba93fe20c10c374a3f3fe9218ac41f5f21d7365202f8b62c2d9302307b9013582dbfcca069277931f760503167fffb8ab82509662c1ccfe9601596564638150871578ea7c2229db4adbf14240302047c435bb5006730650230139ac3f4aca6999692643d1099f9930537e02057ff3d4b10180f31c294ede1b2592b2ca5dda13097524fd22f2210235c023100aa8ca869c427dace183907a027b24c2e04e6f5376e01e250213ea7e612695af40a1a6393122bcf806da5615ef79ec07f0302047c435bb500673065023100873fed6be1ada166038775fd70a4bad7d4e3485c64ca82da66c507d5a2f4febedd71c5fa8034d147d3685af5a91e0b3502300345cbf985c7a4a1f2b72215e7d6afa0f020ef95a9ce99270a5f393dadfbced8aa4ed4f97b6faa18166aff685190f9d40302047c435bb500683066023100f89a8e360f1befba6613f35abb8883e98205de31e8a8bec837ebc289cc26a5f751cd68b1779202de533c1acfebe7faf9023100f96a88684136720dd8384170e23c5d8702cbae471981e86c97687e6954d321c09a0f6ea0e2fbc939f4650cf47890571a0302047c435bb500673065023100e953b7f1e701432b537239da405e4e4d5676cd8c87364049ddced9cc139009062ad574f30f75d0e34202f40b087f1d000230492ad76cb6ae6568fa1f25f4de9f5251c60d6585916b632ce1dd250ad44e968720accf75aa131802646f30688b1c59fc0302047c435bb50067306502303499349c360f45d3732c2d88e72b3d5497a82fcf783369e70e28045176ce2809313b7379a4ac2dd7ba3dc1d14bd4eed4023100ae610f2c42ea5b8cbdfb659ec1e3264b6dc7dcf073b3f98556c557116efe447c88edb364c781ef3a4d13f291f6b883b50302047c435bb5006830660231008719cbed7b5703b86e2b2475723737891a4c704ea72dafe2ac59ab30aef51b5ce29f39c1517210e7a342d21dfee676ed0231008eebc544d28ddbae9617a2deb48d69317ab3b6e9f02436fb7121b1bf69b9d68ef5a35bf5b9af7a81b36718407c4a8a0b0302047c435bb500683066023100d4a7a9742eb88ea8a30471090e638af00dd29ae55dd08e2936802b2ea6e979ac65d9a740dc62ef2d25ceaf5577ff04a20231008588d616457dae128c54bffafabe5a1a4df6994eb75b8ada502391ce30d34a9b2ac7afb00d69cef4574c82e74e88fb7f0302047c435bb50066306402301bc5cc3516a231200e5fc6724a08bc938a5467b8ad163990dc16495f08f23f0d718be62aa27d27051cc9581ab233538f02307614aecabe655e4a961e668059f83a335afb3aa1c8803a43572b3f9c1791b2c84a161c525b27979791d8ebf2c4b549b00302047c435bb50066306402304aa04d41eef876e0efe6764d1e76c9ef509d6a48c86c3f2f1bd198636a97e8926e0d25e84ebd39b6cf6fbc0e6303a37a023067460b0a49dc3fbb390ad420b21db0a231f9b4fae8cac732425034f9d7b35e848a78818ea9d2497d7c08510b3221a50c0302047c435bb500673065023100ad2c8ec3b9ba5c0baf48d83c519e0c51b5ef7e2ff4430b40ac4329456531307a712bf65427762f90d6e2f466fd99200a023039b2ecd61c0b2d9796123e7b0758a1d723a2a66270c553ba4d01408fccc85d38dbb3273f1fb2ddff998999ca4df1f45a0302047c435bb50067306502307cd180e1e08a70f8496c992e87e68e587305fa1712fa7c4cd4db15c2204fcb5454b540e6780afa64920389b001501c03023100ae7fef643ebab52e59e7ef163b3df089afb5e2ff80af32c469b0657bf54fc2ce41cfb645df7e4eb47886d57e51afe4020302047c435bb50066306402306dc7dc3113ea714c2f7e7327405e01a7856f8444fcbf00bdb21b8ebdd9e4d868a1dc494295af5cb60354543d0eff8aff023020ebdcee5d0b2ff4903c225b30d76c7205c91de2816943318977a31125536dd13ddf2a2c21244ffa04d5461c1d0ad3ce0302047c435bb50068306602310086f4e830569a932983844e1ee7495811a2e0293bd667354b00a8adeef61c63934dda07da51a979893a9d53dc08857411023100cb8caaefef80c3917fa1d60492656877a7469a3081954bf44c9992c2aa15a0a4fbd386bd7aa951cfde044565b9c113500302047c435bb5006730650231008ceb88e36a420d9f800001352345f4cdf708736835d3ff410e6663d3cd6cf4168b037246df2f6eb702568d307fb12793023029a1b41901a033c9080b74019ec646bb56f0fe20414449cd9418533e841d664d8ee379e27c221f992a0d452e77e86d030302047c435bb500673065023100dd879d167811f5b9488231ed548c5008503517f1719824c8ff06e9a89c256a8124d0279b61628c6a8a26cf841053ae7d023040d0c5868ebfab3cfdee306ee89bad9a3edf87431d5b311be332d563e83f226176990f62eae1e8454e05440297a383c90302047c435bb500663064023016ae91330bf72b368b4a0bf37cef6a33a96190ae87f5fd0ad818570b1e6bdc98402b250d07169342e166584a9e1787a602305dee8bc63c02aca027534d092f23b04d004c82092939fdb6fd5c436951722e5997e606c57c8f4bade7a8812475862c6b0302047c435bb500683066023100cdcd513389c7b72bc147a0bcdd46d494f2068f8077bd9c22b28c50b75e96260791bb2baa4748eddfd99e05c649647ed8023100bc5b9c898c46b9e7504fcec51e399ecbca0e7003b1c98c203c9ace6b94599c6126621f3e9ed64b6c16c33f2b65627ac70302047c435bb500683066023100fd7fc5d5dfb06057af8f3578ce6c1657b3fbc2aca8459ba64fc32650c65ebaa31b981abfeef7dcb77cadec86ae8486a3023100cc49ecfbdd2350114b722c8a219c4998cae35341c89074a0f2726dda4ab85dc21dc83d29b9bf79b2313b8336330f5e0d0302047c435bb5006830660231009f2e989fb23fe47e5cccfe37a7109dfeb43a5b48be791de80e4cf0b5214afd856f4a496cacaed94b55c49ebb2a5b0c70023100ee2d750fd53f7f161374237397bda188a21abf0aada789bd2677267d169eefc06d9b0dfd542f0828db8cc35e758b13e00302047c435bb500673065023040c948f279a4cc96d344c3ebda392dcbdd58b50f076de5edf44f436ccb6e3aea986e18ce9ee1739dc1e7698bb00a713a023100a0ed4c29063797ffe65ad29b56f89998b72096fd692500c6450a726e2310a1fe2faa4a146f8a36f887579ecf965f573a0302047c435bb500673065023100f63cbeae1af238767e271bb7b7937d43bc63e970ffdb31eb8dab5c0ca2355f1a15aec98e1569c56d06f5461ffa35318b0230009d3233d79bdc2cc1dd25cd299644c362bab20b8afbf9c592195c1e6fbf54b34c88b05ffd8f999944429cf37582b6a40302047c435bb5006830660231008e8c275d78e5e36a478845483897ba47611920544b312f23912e09bc6d60a346c273ad448e74dc20c4749358e1ef1af5023100e409ca970141c1763ce02063391881d18c7ddb72a4cd7f2cfcda9d6aa24cef8af795c74ea76724e1b9e66d70dfe2b6b70302047c435bb50067306502306263e0fd051086dda3acb058d59be8bed7a934fd5c9f03c35a83a1784ddade37c5b4ea816581aaa13dcd80a8d30944270231009a3e187aaf0f9079757c72ba50393bfea705dffe1e860878e5498e4b3dc0c61bb334fbd155a938984903c4c32c9d87bb0302047c435bb5006730650230279354f31bc8541cc2f4a0f09228df1015a502e308544bfd855b353ce2828dae8f0df256f10ca606a499156e2797d42102310096f8dfbf7c0d51aa848890109d4e73cbfc6c25f2056896416f5354de48250c355f9335bb14b7147145dbcb1c02109ef80302047c435bb5006730650230023123e4f2a27b53a492220629eddbe2aa6463c955b670ae421b5eef00b08375239e2fb0bad62a4b33661deeb7c861790231009244113f4bc504e0d9a4812c5acdf8ce8d7863cee15da80f20efa3f2e5b259c08277651ab42149c2268fb85d21e3741e0302047c435bb500663064023078f18cdd8f928a05090814ee17abab75a50178cd2ef7009ca77277f07fc176618a39fe6af209b555e6b3ca77116fc75602304f4a17433bdf1f48c361847e6e88786e3dfc72b6a73580d4dd4200a9a16b5258dd68b203a6e437befb22bc701cebb09d0302047c435bb5006630640230790dd6828a4771e42ab814dbb549a401cd2d681e1dd5c44a8c607a3e9734a02ad02236868bef1e8d7bd597726b95688102303ca4e0c70dab168cc6bc2bbcc14e15fc773366460c3f04b27ebd1be4a9cddeff564ad4e05461e04756bd4dbc3578e1940302047c435bb5006730650231008bebb7d60b774b8cd3148c16ea6de34e57b970687e8877486d752c2c35af5633509f35f07009a3d06f9f2e1de96911da02304eeda1d58e499b56a43c8c5cf37ea5f8da59b1fd64cdce5ec97571c73ddd58df321608fe7629530a392bde45257411700302047c435bb500663064023001130e13196c1535f7312d349628f82eff198ada44b4ae6faf114eca83114700c3568619436e39346ba2e7433d2716780230626e618530888fa7326ce2d1323fa14838531a51fa1ed4c55ea27ae8cfb3ce90da0ab79d724d867cda1811c206b91ea10302047c435bb500663064023010ca00a77b45a94e87b8f567a53f5fe27f16bb51fbb6f508084a99309e0ffc8b91b7004a482b82fba62c1d3b5d30458e023046810f9606915e346a01718c5ffeb656844ef7e216f6ad56cdfc0cad6a9e780a74a0f36e7ceca868e8b0d050296864150302047c435bb50067306502301a6dbda32c109af9d7a464b807f540532cdd5f38a1b1a99f636ec8ddd03ed28a76aa39c583ac2e62877340d0d7dd8aae0231009cef2604eba6848683d26aa7bcdb8d46862720abdc2f45b720d4155bc1603bb274507bd7bb1bc05d8e59341f51cca7340302047c435bb500673065023100d8c1283d897c1e497e5ada7dc005381452bd642647b8993ad6beccf266a4e24ae5073f2774e978fa978a609899bdb83b0230607d7382e1fc4de3a1ca282673238a56afaaba406c079dd68f4573ae498f24e56dd2dd4c7d084055e363712c0098625e0302047c435bb5006730650230575fa1e62fcfb7de7fa206e11d80c307238d4aa761e57cba34432999d871819344fbb3cce70e65ee342846f01da40650023100b8f18e2103a9f34d54e0ec45287c1328a8f33381d46e7c507054c01cf9559d0a4a204cdd1695ec1931727f9f1a781d800302047c435bb500673065023100f38f11f2ed55776251ba34a854e3929e85e6cbfa3919397020fef9c78357a49454a59fca7837c9393059a7b848a8744d02300d653b30f6b9fdf00f5fdb82a4c453ecf50b52dfefdfd34c61f6c5fc48fc0ea157fc5b49dba4c8878ca9e2f6640ee4c70302047c435bb50066306402301bbdfad0a7ef39674707c468bb96c499876dc3186a993cdab73d3968364d035706033545be453d665d92675d55f0591f023060e47de40865792805ce148e085f20b3847b3d066b11577dcbc70f23a5db8a3db69f78404dc8be0789022e7a98e066600302047c435bb5006830660231008fb2c096d75ef1ca6007251efb0a8bf7b2809ad5c27d442c71da1e3e4d626530485b8f4ddff2f8df30e06c5394c3ec0e0231008ab0065ab3c74262b46382ae82f1d36a1c2716d414b0b3678f0fc6ebc9d62fea1fbe2d216f42730eb4eb79c66b7622650302047c435bb5006630640230037f5996033dd331075b3a9a1449bfa1412ad4284ce8664489ddb660820c218c6ca6cafb6fb26029c8dfffe020f798d002304533f9cb238c2b5e1ab8994e2416ca26d3c11218e9bdb3cfc617150cdf4b4c1ef55c2833f3b1d4729b113387b43cf8540302047c435bb5006730650231009edceb37a3b7d058d556ea63794153569cff4ae1eedead7b5940c8e51610aac103a96aa649b4d96e77b7042842ddb5bf023020b9c5dca0094b74bab4b8f72a74291edf02ea0e85c0d49e228807a156319eb3956f473743c5d14270d85113c65325c50302047c435bb500673065023100bd27dfd3b89e181ede6df23a2a0a928755fcac8f062a5004e726aa3753d06fa5beb87c2391133f4f1dcfe63502bc6562023003b7f96992286fc3339dc913dd3eea9f9924de9dae7a01a415603fb6ca8651508030ce73589d8610b845954be36a578f0302047c435bb500673065023100ed04b516df5e8781302454cbafb8b00ecf30ba8c7709e77b2313566fb1364190abc1da6ffb9b4c38c8ca55bce14353f802300ed9d657593fc8854daca7b94bffcafb4c27b68008b360eb511647dbb156d462d232c6b15a11ad7a6f2a2e42ae0632e40302047c435bb500683066023100b1d3ebae0d3feb4d451fdf7dee0fcef3428f2ff4f805691455314405c1a5fa0c84596151b02fc9fe5f3dc4ffc2995d57023100925052303635e59227fa647cf489d272a204545aa105b3ce193d74922118782b695bb2d7c2d4627b92a5cf6442245fb70302047c435bb500663064023021f971113e23285ef13ed997f4b2d482c464f33ee168f194115fc0474af5c776513be7a74cd7f78b323202c857eb62e4023065b48f238ee30489f773c0e07f7a3b4575e3c1ebd7e3f7a2e7503dc532aefbb0f73efe4216dc4ad7bc095fca8d1174660302047c435bb500673065023100b087d3809a0190966309283d4f6861dbd0e103385ff64f31a95744fee307522e0e8ce9e2e2b41e245976968eea1881db023023dda481aa8d7aa7d578d0c9be40a8d133f28e2d9fedc2d83ebf8e83be0af0ab9244db2f07935dc17d5489721f7ed0cf0302047c435bb500673065023046c350e4f5fd591fd9c6fca2e422380a49667abee9791d3eca7bc111aa3a3f1ec45e643f3be4804e239c29c4887818dd0231008503381550cef4bfdb54a056b1953fd79bfca7de784db9afe9c2051d8f31e1f14558e1b1660243209f093f85061e1a7d0302047c435bb5006830660231009313c8fb4a1a722fe01b53a321d65dad57fe0d8cf5b40fcd8bfedfdec613456fcafae4dd4b69d118ee38838232dfb8f9023100a5b9158099f0478b6064e4feb26477aad024bbb7957c92220156054c109c904b89d8448cb0f212259ca971535383d9170302047c435bb50067306502303051d31a19568f4e55dd353206650b51d49c6372b6ef5aa6c82decb0a7a1cf337b2a22257c1ddae3ad901082593359470231009e9645c134e8e12fd6a36a4ca749f054ac22d22623ce85537d26343e4a813a5db0d9e45cccde9b304f22b4685c3d7fb70302047c435bb50066306402305879a0373f02110546faf771451daea7db8b919617fd966a269b270b4e983556697a75667038fa615d355059c7843ffa02300353a2e2cd12164c949551e78e1a7ef031480d57ec9c113ac02122c34d37587c21636d0b1f833d0472b1648c964cdf730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023019b822c55b77fbfb825185f07c732a63f944187c12f834d453294b4416eb1499ddaddb8e7ce456dd22886cf06696853d023100e6e5d9a2400c811bd49a34791b518909ebc7f045ef8338a66ca4244bc233596e434b5199039fef70a959cde86b6da48f0302047c435bb50067306502310094ce5684da18e1e90c8d1fbf366b3c4a572d1927c783bae9bf5202da494a49b5a1c6b02b6bad30d3d4851786f352ca9a02304a9235f246f70fd8a89e5d3cfc51ca2ed9c4648c8a1ee84a89b1b146dd5e9d0ec413e38de04c2073165fd968ff320a3b0302047c435bb50066306402304d2000748184c78e6237834bca5c7b95fca64445caaf166e1b8e0500361a5dc0225bdcd66ccdd629d7c2fe0994a8ff2f02301d0132a99527a10ed9cefecde0ee53b6b3540780d1b55a92789e2dd95be4409df137591064886b0a25cb582427eb0a960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ec334abe0e57c1b73e40a28f3b0a8fb0180975977de879cd8cdd6bff91f4f6cccfc922d9ea934cc45c81621875c03bd6023100a82735de3b8c21d11641bfae2f0b9e953df41b473eb770d0c1da643eb35fdbd3a6f430b876c0e2ebe2eaf210a52f41d70302047c435bb500683066023100a4429b30080ed8fe6056b4335c5062c4a1c34bddbbc6780153329f62b8170ad92c4c6c806e5f91452af53d1bffebfcc5023100e52cbdf0c8eb3c27f8727ba9663620a7c511720ee2843f9fd92935717b540bb4455a322b1a24c8ea459aef329628daa20302047c435bb500673065023100b0c67a6e5eb97b773cc196a96a12591338202e8e538462c816efb4f93387f30b48a794912ab27452509ca8378f47d373023040c118ba777ea06fc68bd69cc67e3cfad07077a5c8b67fafa696fa7e3f70005cb927ff86371882c4e715b7834814e4c70302047c435bb50066306402306d52817f616aa06db0e151c1b6c1c26abd7c6fd0ab3637b34d8e748a0f4af6a72e1bde83bcc64d28f9752e8c01d014fa02300568b64fbec8b266668422e4bb605d2bb654a9e0ceafa9ef2d5ea2c436d287a2a91d0aba382ca7b057b057bd54ad7f040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e13864b37eea6c013701d0e7e310f189839296a39bf61fc17389cad5da59ad3f074aaae63d289caea6e63168c889ff9d023100d0c741d24716f40407a069abb47993b43bbe2d7220fa53ee4135e67fc96cc5dbfd68078cf61c4c27c273563ef3fc33d60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230375d34f71d26e0aebf4cfaee9c63a072e209403f2b1356c239e4d24e4acd6c2ed2a9e2bd4997580dc06004e8f43b878d0230765d1ea5eae10d6c172262356cddb762e81b126b6bcfee781d1cf49cd82f42ff71119e2d1759675f8b9a6fef0c75fcf00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e8642ea51ee0929702afaa01412745b95284ffa1c18f98f50997e86da9d0011da0b268564851973d272e78fe9a21984023059a3104136cb8db1a75f326ae6da10bd9e41be736281abc1a8d3099c3b92d74e28186ac6db549c9da4d9007bf03d74410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230283b8f25150592960ace557d9cf89aa3661e4e51c831519088cbc4e9fe8dc1c73db2c846b48b5c3da07e8f0a7688a98d0230362e27cc54894c3567ff4c983215f1de3688f351fb7e3920a7eb8e107e579315339eb90e678eb29cb2cc1745fdf152ee0302047c435bb500683066023100aae9199808347f2668c83838a95aa30281110b2ec290f17da7bf44bc665bff6cd38b1a4f1f76915a5a2155625a11b7cc023100ecc9dd4e9d8dd8066fb727ee12d009dbaa216cac8169c707abffd1d5a32d7873f2448881b4fdfdef2a6e433e5be57ae90302047c435bb500673065023100dd8422502c1f0521d4c56876145530b8ab0bae2820af02727ba8cc79dbe09916b17359d3e3327a899673ac3f39ff7b040230174cdaffaaaeb79c934d4057ddcb33a51ef734e207a1c08484df0164dbb3ca259ceedf8cd5e16410f41df17f69b9fc870302047c435bb500683066023100aaf82294e40bb8a35e157f5db960e6024a6c4d5ebbfafb4d0449db3e423fb747992165a3e7383677869ac14153c0e3fa023100ca995d21736eab10ea3ab6d12d728ed2690f2fec663aa84d629be1dbdbf106d4658ab1d4441fa914ef749b9c0eafe9010302047c435bb5006730650231009da8ae136ac6d7602dee2fc0b1c982e3141d797b7f579dc067d64e6cf587bbf7e7c809664978f73310c23093bd56c14f02300c8f61aace81775be39d8864947f579dadc96bc261a4ef06dc61071c8890e37ce2ca1659c2a5a60b1e57a067f8a56b490302047c435bb500663064023026329b4837cec903726622c40c22a0a76f30401acbf84d73e74c8ef341eed3e09cb163b20148de31fdeac9d3502122060230497ce39d2122248df00bfeea7b9f7b1b634e1acc9f4c4618c127776ca8692bb3bf43aa3d07d4240988a1822e181381040302047c435bb50067306502310082f3d6171577666c0d2794727a482a59f38e0efdc95a044a70041a8f10262e3248f9ab1b0dc2475ba6523df2f13c5f5f0230663e43690b703dd206835151ff94a052927efd0f7e0c080c3843a2e239977347fa45c527a7a7ffbdb9985ebb50e49f3b0302047c435bb5006830660231008d2a4f02c8af5612cf355686f7dd567aceb40dc917830087fca16ce723805307c0b7a040b2ae93972b1dfbcd1d73ba980231008ec77b4ff2e2f579d532548fb8754057ad9dd85b4935a23bc43aa3019d19c48c6899db51b59a8cfb307d8d2b0acb45cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ecec600b5b71db7de844337f70f88d901b07c8e92dde49685759b65169e60910ae956e0547441877a42e7c01ca54c440023100a7e544110cd149e80613fb08f553318204a190c9d4ce354f26d4447f27b9dc2eb48788cad3182d7df5ecbaf1ac71bb700302047c435bb5006630640230312ee1f1bf46537a0682243725f6fef604bdf57f3a20bc5f49f1258212d3e27ab49ba135747975d1cae30ddab04d95aa02303402bf66baa94bdb14b08f4f682021324c08f7aa43ba31b347b4f3e930aa6b4a2083082a54f971ea2a816e3235f197f20302047c435bb500673065023014d5e317ff10a4f24664396ebf0cc276522a8918aa63105a826b86067df2b2a61a863550b110629272f27acd3bdf423f0231008c034cd802de4173d71bb5a8ebba83c22e77dbe094e8c11de7338336677307cb25823c338a8393abd13272d37505b51e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302b5ae50796e9df6395e94cea63024c0e1755de4c6cdf1494bbe05f84d9c17c410aaa1c930ce11ed80abfba3c051881cf023020696714571782bf69fa3b1a45251461670722a7a318e41d813fda973b364e6327fa8b4be3a1dc326cf537ee2212eeba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001c7d6add6fa4469fcf2d2bd2d5020c1ffbf2aee55ff7229fc0ae8b6d7484fe192e4d103aaa1cf29bdafe8fdefd0dda7023004ad48c303db30ce11811621d54212a576b2af0d304319cc118948790817c008cf867852e621c34f86a0f467ddea24300302047c435bb500673065023100b39156c972b6f7ce77d3ce7269576fbf5724e4718f8340983d949eb1f1ad4bd07fceefa9f48056fae68f105a78f35b3b023069f20787830ec3902f3e91763f641897815bad46e943a080b6ee261657261c2a2b73177c6337b776d86d17f278b9c15d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aa43ed26597c66891bf8e51e4eb9ca8ab6916907c8eaad1abbd3e37302f5c5c2a26fc7d796590ab5499bae9d6d8b597e02306d53f2633065e4e8c7fb8eec66fb7b4735bc0a0bbf7acfb677263e9af84d44fcb8d9675086f3f0590b2199f72f0258220302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304b8c211df975493e56d7b6d6087d85d04ee67bd47613b8d87f3602a7742e3faf07054416d7704947937596c93c1e5c9002303a556ff0ef440db749787e2f1448523d61077136165c8ce26dbbd0caf123040c39e8d4e2de51ea97674850fd3bc033c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230580e890370c817518739df72fae392bccc02edbccdc6cb6ec1bf356897d317765bb41e396abe53315f358620c7b5309802300e4b2a46e7267c5cdd8a6024c9b03cd19fd30c756a175b9074d407e1bd9153be1fe156dc841c169fc8ef5a9779d761080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230069d7c175a770610e6bc4dcb3bcfd65028e225fee0c4e45f1bb5a5f2271705f7b1669dc76f4333b8badb77fd0e4ec186023100a100704c9ca91afb5a74081631a2d7fd380f3255890036b4cb1b7f814716ccc10105071a83ca01a8bdd08cac32fb092c0302047c435bb500663064023074fae253364c0cb8c2f5f98232e7707f866f8ab9e89ff6b0c71ec6739a92a8d720864be71fc816fa7136177f50fbe20002306e0e7fc43967284a2cdf80dd72cf515423c4cc381fd8bad3fa3f9cae6b47026355f49c739acfeefbc16c9e25db89f24a0302047c435bb500673065023100e1cfcde1fc4ecec2a7eb9457acd4af9174b40e7b76e9289ab6e9733341b44f1d93925bb34e6bbdc0646b27a0051f1be302302cc7f18457946a0e995cf8102b1c28d18145c7c392ef79d7c77734921d4683db3b525609d89eceb46ed75f9b80be08890302047c435bb500673065023073b5d02bfb5073d8fd04f18fc4fb9ef54a1f0c6003090644948111836e590631026602bd9d77a4d642c63eedf2e26ba2023100b1f4d8cf35b5d3a5d8d25117b66eeb21e0b4353f3f25207b558e38db0fa87f1e90e11785adb76e9f77d6657a8140a3080302047c435bb50068306602310091b758cf976e19945885a2486b2765f08833e078f4af402c3d838978b82206a8999b1b36f4c6676575b9ad9d849208d2023100aeea0a54cfdf9749d69e35084dd5e3dbe11e023a1087c2a675a9cf6b4f14c8dc3041e65f3a572a79306b74f9fa9427400302047c435bb500673065023100ee5498bc330d931e4a487d191debb3e20f2941d34f2565f0d1b5ba4cf25998ee5b6fbf10d62507dffdf4ec63b4190edc023079beff2b7e3913d5990f40b2733ac322d5dffab6118f3756d2a4b756a81a4f60e2a818dbf8a8c3e1ccc3ffc8851cd1160302047c435bb5006730650230557060266fd89ed42f953d5fc366467d441418a46d7e5eafd135c07d6523bb2ecafeeaa450e5326afcd6ad8622c1027102310082850dbc4c7bc3caad7dcdf946622f797eba01558734f44dc13e0c45cd19ab1514709f5b89668510386e09f1d1894d650302047c435bb50067306502310086b5b788c23e07c37f614f25888e07424c3866bae38ad1c7d3217454e6262b0f716624fbcc9fca117c21fe671e280fcd023056dfbdda09f1b6096518e16dcf5de24aabe0dc91fddc161f9b04038695bc84b6e12053f0f6c10df7e420aa2badcf98a80302047c435bb5006830660231009c39906b5d2fd14a85f709de6027d45d954d8028451accbfb2b1ae6533abc68bb625b0d790d15af46b744ebcc5d5d5b5023100d7f4cec65eccf1c2d689ea1832a5fd9022406673f37adf8b72becfc38cb7ce7872f5e1b5c593ea4c8ca0a460ef1293680302047c435bb500673065023100ebf2c41666f553ff74d43fa44b3ed83ad9d2defc26ca8ef8a7b94193d50f58741be2582e440d13032b95d6f4bea50ac202304667c8acd2d1a1c6380ea020c1966602729bc0c239a9384e5068e9dfef0ac21064754ad3663c5463aac1301eaa6592890302047c435bb50066306402304f841bf2d0e333951b79538aed8f9544f1ff9e055036c0f5a6560d505f95fb3cf167f16aa2704927e4645b0063fac6130230474acc98f79b84915440054ad3279cacf6e554c69d2be0277ac5b5de9e6b8beeccbeb02294f2f730d3b1ecd6fd55009c0302047c435bb50067306502310081bcab8d747967fea0c5f1977959ad4b0f565ac4a0a6f823fb168a28d6a67b7821b7693153220d6e60fdaf3b5a92f5cb02303f13361e4cd99682589834b1ee7215755af66f5bc750a00f54fcc8004b3dfcf914b737694ecb428ef0fc3d256e08af1e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c25b11e182b442b9d810a191ab460b899aff5398926fbbd7e8d438e46f711def94ac55e17f9fd988763476ded315e8f202300c6d2067e37843d240525983c0f123476acc2cde4d29655d8122e6eafc166fe57bfe0bb28752262ce8fb93ac40a982980302047c435bb500673065023100a11d398d04de534fe2b1abb6ddda11f04f584113cb54d04ff9a1de476ac15939ee8ac5ea944a5085c24c4f7dc2c7734c02304756e4634affb3346e362ff185475177f5354b6bb4ce61518614fc359b74b435ccdf98962dee0a166299e02e63e3c6a90302047c435bb500663064023074544137913d652d45b5c180eacd3e0aa56ef7700c57db9e16c156a43119356295388509d16748bb2939b9f45e52895002301c29a012b6ec4552c64b7fa22409f25f13b527e55fd8487d71e9b925750eecbc904ec51105e520a688fc7d7be28fc7350302047c435bb50066306402301cc00025fd2a3f8ea31d0e33b84e195f703716920256f6f7fb5a7fb114aab995c860bb5f452d4628f74c6f624e094c2b023016b49dd0594b8a808d245846affd15f98470d9d7caf03168d9b903d4ed75b824bb0236a7d4a0b5886a898ecbe6f492ef0302047c435bb50067306502304b7100ce5382bf6315156652a4ffe16dc5f5dbca65c58cf4587b8b197f04afd53bb8aef1c1caf9bff3e09182eb8c0eff023100fa4b69c88726d74754a94a1863ab84a5470b887140e65300aa35251a83fbbf6ad5383bea424335a017f5d6f6e1a1b11b0302047c435bb500663064023060fa9658008dea17c6634fb1a00401ad01cdf3ac8178f631c215f36ee58bf9cd5ba78acd51d2051eaa229c519d6bd39a0230369de4ce2fcebecaa1f6c1c15224c4cb41fcfe34f1ea70753923b1af617df9d359ed1b39752f47f402206156d12658a50302047c435bb500683066023100a71826b422ef43b2b05eea28e900fbe191dcab466cb6e74af4aa74c8245c7c833591f3583e9e96fa647ed3f22d933474023100f9c0b929a7ac60d88c3633282c76370e0734470bac2f7f090ecda718e98220ec60c7993dd70b7eb5aab3f0549501846d0302047c435bb50068306602310085895c4631dc2e05dbe5d117b4a5ef9f23710ceab0072b7f05e63855a3f8251c676b04b08b0646ad0edb495bb75e26d70231009bb7455311d3073192e05d9ab4a5a8ad6975952e9fa482e0cf9065f96e7475a07e30569090d98f0fee0f44b69e5d99170302047c435bb50066306402303bfa92901ca19de0b53e194bcacc68896743115c51e5c88c9dac09db56728c0bfec4eb9b9a4b7f8cef7334be8a72c2f40230273304484e62b32050eb0384fb78a3a1ac6538e55580df08ee70249b35f3e58f4aecf751ce31877a036d9a7080fb1c0f0302047c435bb500673065023100c853466d43fe4e170c7c7f5b81e990d4605a499dd94a54c7c9ba93a99cfc1dd3f3cd92236f6eff109c4d5cf0786836c7023000b18e4ec8217295d77c2bb827a5cce85ad5ccaf210052fc52010a91c90bde9b705bbf0ff4d03c13f23a6cee2de2c3690302047c435bb5006730650231009be460bb98418203915540c3ece89aa017cfc7eaa5b5a4c4c686423ca9f9abf2e27101727be94e0fa5b103b5398d0b2d023078f45e87f0eade6c120f952f87fd57f701912d3fa55657080713c8c71b867c41bf029007014d8e051b48cb0838867f9a0302047c435bb5006630640230375dd90f7ba2408d923d6ee43b3aef5d4c9301624cff3b0f0946481fee524ad8ee424abea36de6441c0a7e9140ef44f50230147437c30258489fc5fdb3438716362f9794d4cb61cce3c811144d48b42c27e100fae9ffad70b5ed6303b177943b7e180302047c435bb500663064023025f0fd704a6bbd7bb2a50b36b2c8a9b3ccd9085400917b73a6034369e996514d8e35cfb236bff9754c290d320b46fa73023030e9e204340618badfe2486623202eded497b480f392e0ac680611567890160b39a4f7d4a35760608af08f7a11670fe10302047c435bb5006730650230712b57bc91d058465fa9fd689dc10e015c4511522502e46344422430682552fd089a28489cd5b01d534ba56fa88351bb023100b191747be3b83411fae838a02ca803382ff78b768d5c3eb65c90521edba148d530366390a0b1ca06018ada4001740ed30302047c435bb50067306502303cef6b3cd810967a5abc6c7769b9b6b7a10f93322f134b57255a37cc433b0f0b75260868ff48d91297bf148e20982e410231009c068009628b77b8d063fd26bf1e63e555770cc603aef301e35671f485697262c6a0ab6ce7e30d3431c354c9df4390550302047c435bb500683066023100b1c8167259ef324b6b38310799d9d8da5fe25870ef949c9adf5470007f03c886adbb5ecf2523444e2c5e62daf7983298023100d0e655df5156ed3c46c75b4b3a3fc3b74ec5205dfac890a1836cd9f837b992280de393c623d043001b2bd3adb991e80b0302047c435bb5006730650230274491e15f31802c26140a865a479c097d910d3b9f653c4b2e4be6b5f06b5ec1e9ee5086bf0f2e8aa347dedbea656ef1023100c0d0d397fcad4e262f760c1ee48df8c6f190a674d9dd591dc9cc5e653c564522e8d3cb662b908343fd7c863117ae8a370302047c435bb50067306502304b183254de59ee912cbd7aa19d24e5bb172a4dd1ef897cf68988937196d7cfec54bbcd2ec00367ff8e4abba569890d3f023100f0141ae699da02c945bad575a4ac1fe02d4fd040b38f4e4da84abd0b44b8808a947d733a336527074b287d10f989d5710302047c435bb500683066023100eb7a984b9ea9e48d6486edec09a2801ec784bbd49525443da1e62b34dca0c88ce9538208b0200875b92f1d46a277bdcb0231009942a298be39dcf91fa58639556738a810bc4c721fa4b5e54980c14d142bce53d44606890f79ce54413b682b85d917ad0302047c435bb50067306502302b63b37eb32165a3354424ca29541e6c0cef19bd1d569253fb00be0d0d939996a6da4e69e1635569295d16ff995605da023100f5e8fa49139f8f44a5ba1ab32d0a411f9698e78bc005ee9a01a97d1bce0eb544209d4b1002caf0f4c0edab686d32d82f0302047c435bb50066306402305dc7f8df444e62148d8e5f59d1c46582d3acec1470f627859016b98b7830693d2454275c040b014bee0a2698bdde4d9e02300469441ef8d2cec6814d2bc0228f1b2bb80ad9645b39b98162c179544597d6bd5ec39892782f7992385b8d8bad76a66e0302047c435bb5006730650230685a217f937d4b2df7a17d55dfbdc7d709a67b463d918d35c66088a988ec5776be257b02849e1f920c128386a3a6ba2a023100ddcc73f23e9ab3e694c1c471c1da44177a70c9869970647416c0ad66587fe9ab609c269d3765ad39ca4c930ab4e473540302047c435bb5006630640230441bb85aed7b1792112d7b905f5ccf5b7ab04378d1d06d149578ddfa6022a352fadcf2a1b64dd01f7f4ca5f50660ab2702303968a661070627802f30db5149dc4c5b4b8e650c0e044e9dd9662263452af06e157edee8d33ff05f5ae1b61ead82a9860302047c435bb5006730650231009b82bcd27391b5528ace24b7455286d5a4981bb2591fd259536e0f64980ef218bd72c3834d437496c4a19778bdfe877e023061611f3f4a347d2d2cdb52969f17a0317e31d46874f4c0ac23c3c180ef6a195a506fa576e4123ab8a214c80287856ce40302047c435bb50067306502302de863b2e834fe0092ab3924e3bc45716f4b50facec3117b5ed6f549988e70f58b21b737481c4d9033363abf846a88bc0231008b5a478f5248febe8a95c04b8de19e99bde0b99df22a0dcfcd733e232aad48ba436329e95869f8a53696c31e2dc7e8b60302047c435bb500683066023100d2989478678ffe0d2ee885c2b9bf2ddee3fb913f8412b3ed42d2c1e11189c2a72ef13d5d2958407a99307a8cf340987d023100c7673df110c0df6689d7d0a9947a79a447a80c2e6a8c3587a87b30e4223deef67c9bb7dbfddb4d7ff42120a44681b3300302047c435bb5006630640230786f1b8ff78188c365e2bf1f666f36e90aac788928bc6be0a52748ffeb162179a595b141ee940847fd237261e355e47102303efdcdc8fda1ddacb8b36c6ff018dad079987daa054dde725c808015abb111f963c63bbb6eeaf1fb24f41d12c58e50020302047c435bb5006730650230447b89a09ecd6990f2781a913ec04cfd3273accb7c974515a33e29b44624e7144f021ac18c30850e07454c4ab1375970023100fa86a0b2c69b122a87e415a089a3b4d902f4d13c9efba1e62f60e1222fc22d0d3ec03eb527a90541b3171b616b7faff30302047c435bb500663064023014cebc3b1b540d7583231fefaafbcdbfd48149e760b9b54272a94151f844aad11df2a44705238657ae6b6ca6b9cf1d8802307fe7e34fceaac458e251457923b27b320f706994b6b8811b0bed1c1f8d67f456f30c8d88fa4e540bedc35fccc30df65a0302047c435bb500663064023077ac25b3e79a3b4445f15d0939b77615ac32439b8bb30c79fc2f6ee0ad348c4d6b5b27852bc185d45e49f417343508eb02306ed1a9e49c60515271030214c4e5cb5a6a27928705fc6219856bcc70ed0f7c649a559cd5048a39eceafb0ebbf48988ee0302047c435bb500683066023100c0afa5207cf667d357d2322837f18f71c16e37df05cdc7f5657c19ef0ada3f17e0aa3b3de22f49082ef5f094777d32ff023100e1f3572d635ef90959661195a3bceeeb93300ec087b51ad674baa546e42eb1063d6d2b09e1b2af7583778257f14545630302047c435bb500663064023040e2a2dd82dcbdffdf2bf86926897c52bda5bacaf82e1a19605560dad499ff8e599aec274fbae6d50f0967741610667902304de7ff8ccd1dc4cfde68d78343b3145a561b5b29af0ddbd13ea3ad328699dec63f1fa9771cb860e2406632bb5e25e7310302047c435bb500683066023100a19291d53cbe18a39d60b64046007ea1ec475f39d5b45488db940bdb19562883aeae5999fe08ad4b9ac58e4a89c761cd0231009e5229dbff945c432402ce744585935b3fa889679b571ccc23c1d9c230f15dcc381111d01b3f9490fb06876230d590410302047c435bb500683066023100998de4cf4b265aa8ca12222db72fc53eb6c2bd92206437a9ffd9c0169856487d0292c906bcaefa2944c07d78cf2a8421023100bd9d5fe93471e5ddd99b3dba5c71abe7c48ab8d39d324adb9f60a034bba3e71955b5234be2557a4326526b19b537dc9b0302047c435bb50066306402304cd8bfc70e7a9762097d4e3990e4201bfef11606944bdb248a4a87c1ad3ef7ed360e7c1cce69a4af4a3806c0fbbdd6cd023021881fc157a72aa12573f8d2f74e168cca001497506b1682a2d270a39679bb2ae6bbcd7f58d248df1f96db5e1816cadc0302047c435bb50067306502302d16f210cbf7f37f5636fc8f9a9f8bb12d805b619c261de2f6890fb832f4e78ff1535a3cc7ca02cc53d11e8e398ddcd6023100d76bbbee07ce2973ca9a480de042c109954e43fbdc26a1e38cfd89b336d4809b07c9a92a964147bc174042b5af08b4210302047c435bb5006630640230032b7864d34ada2bbf05c044341efe4856bcde737a0c163de11ecb61fb14cb4fa4f3f3149a8e5fb2083dea456ef8432502305b629e3bb05a9b39884ce62dcfecee2d4bb23b532d8d5c7847c5ee8f1c27aa1e1afe0c15c7308d16fb575399802022510302047c435bb5006730650231009b7c01daf6c3d62c063143072f2dd8023aa5352379c99e34a9e401d88c58f5d109931bf46a0dd76536392da35383d2c6023075eb3a4fb4c589817d68b91326710257f53c11125c9b63ebc3f44d209a8053401313498919fdf7b08cb1a3543ff7236d0302047c435bb500663064023052adc567239e647c17bacac6deb18a2ca577cf6260152bced4b9a9d08079663d4a7348b70f60596df33274d01a69e3190230107f34aa862c2c86c96811b07a631736ff931de885d3a88780dfa1b0d88c50640f8e186b9a9b1e9e26fabae196bcbc930302047c435bb500683066023100e896d87ce37e60a8903d948a5eeb313554b3241745b864043207ec802af8664f2c918bca37cc44d9f62e53ea615244bb023100d001e25650022b0b3ef722535cf9e28f95143e177b593779709d0dba20ce747b333ebd5612e0ad7050865a6cc20372f20302047c435bb5006630640230030cc571a90f16f813a5972a2062c11ca0c575d7767cf00c0d1c46cb4b90df3885f7ce666a98ed82db15447939f976460230590f509883a140e5e61c5d68fc497d87b7787f2f5f0a92241ddbd161934d2c68b2a25e155211281f4f20c709b6d536190302047c435bb5006730650231009480c465497a4c622f919211ac39d9d79160b4d757d42613da9a46a51b8d785e03c40a3c78d21d82a5ff2723bf5ccd2a02305d52ae1b055e1136840022b159efb3af8c927c41da91ec4bd74d0ad4b709b32a30c0329faea8e0dca2190482fe8ea7210302047c435bb5006830660231008283dbe9addf34e9fcb162be9ab3a44d30996caa89ac5c39cbd9c387eada3f53382210fca1b8faf1c8e8a1cd59b72e38023100dd076b1fa1a9c6aa691565e1fda9eab3bc22170718cf9a5592a9abc478309ddaa35682ca6d6333475464b227a85e8f980302047c435bb5006830660231009e142638ab449c898e9f8af9d20b53fa09ac2d06f919015cf29237658ac38cd2993dc6ef0986400f05814311463d5623023100a117d17059ac83a37f44e04a3b0ee52f9ede4cf2b0b3261c9a39463f039f69acc5806fc9daee7c2e62188edc6ebf5a1e0302047c435bb50066306402303046fb36904c27e4df50dc8044097656641593c15ea39f3c8ce9111143da2316063d6bf20e83bde4651d6662985d4e2402300c050b40464edc33de7a9e7ff3a3c228d0baeb5aac5eb9f5131c8a0c77ba0c9820f74d033da8b33788d291de80fbb83e0302047c435bb5006830660231008c4f72486c5eeebd40a1625bee085ae9cf1598d160fcf3d3fcde3ce99fec2f5099055f15a59b1de04e9386bd54dfb3c5023100a3801045da91b7056f82c381de64b308a7e57c3eaf9a912fa92ebf73636325bb26a9764e3e7c0a46eba0370feef7f4b40302047c435bb50066306402302704b297ef63cef01750e53de4a7dbf0fb04344c106c9d31911a23859367291ed5bcc19d75dbbf275f91131e89338e2d0230131f8595901e6740ac754c3c3f2633c547c5f3d5fc94f7c31f788ae57bc40bb45cc47c24640536344835dbc0ab98d5860302047c435bb500683066023100b96817eb8e806693912b3f1c2f739c055cf1bc355cadfc5511fafb253f0c7d15fc7a179a5d349258390a643bb6c2fbf2023100b2094587168992dbcc416efa981db2770a70c7743a4a676c6206ed0e23981cd0208bbd52bab5df28e9261b40cd7155b20302047c435bb500663064023006564e9f0b934f0aa02388a5bbbc525100fec1105a6a352e001843723567480af8d000ffc1023e2795b224596db267a4023046a873ecaf87059bdd749c68e28d897d63610c4b5ca195783ec58ed51c4f9de4636e7e13637fbbc2d59ae4687479ab870302047c435bb500683066023100e79565b3802f0edc1d861c9211f04d20aa8d30b422cb7295d36b19f0e16cd0dabdec4f372679c75b306a3f02adb4f6f002310093b67dab9c8aa8d2fac5cc3479c77a92d978695450484a0b2dc2df5ec68c549b5b49c0729b1185db4ba8226045dc2c1b0302047c435bb500673065023100e9f95778de529a7f8d0ebb312d9f69d8552f211980f2aa6c4c2d85939ec98b9ad4a5301185964cf91aff7b2bdc4087cd02304716e1ec67f125ce197af0419d435ad4a617c6e774aca3c4e22ae50d2655eaceb212a91d3e3163a810165f3e6e04ae100302047c435bb50066306402306a356b9551e618dacd7aff274ac58f0ec77f31ab2a058806e90d0d6986897d4b6016f6446fa88e2b23844c0399c270d5023016b78b43bb35a4fba558923e1f0e12b5cad792a49186308d276e76f47985d3576f08341ac8a5266747906ffdbb64c0b20302047c435bb500683066023100ee1bb9e1bfa893628384538206529ce9c50a5d7f99b0d56d5808e29cf0a5b19b16f99e45620c63a647c7712cd7966fc7023100d3bda0577142a75a34fe60745bfafcc3f6aedc44dbd5e70862ad032f0e1c003a2f2a7906d2fe1d27a3ddd8c79e94a8ce0302047c435bb50066306402306d87354b63d83557ccebef4128e760075c263171c859c0e35f76ab909be94d0c79da914afd1236b0466701fc19c250bf02306009f919518eda147c421b1446474d7c62753c722a3528e6e1d4eaea663a48b5addffecaf7dc61fdf46041a63ab60fdf0302047c435bb50067306502307de19c142417076b46da3eab9dcb20983250adf6479f5120a4f84df411aeb53261040b6ec165edba7d1dd0ba800c2f76023100b51a1d46c32aa0b4262105066f67ac6670c5f59f1f0df9c22595ca33dac11828aafcdcab7e8d63d88180ffa8f91505ec0302047c435bb500683066023100bb917b88cabae0a309f753efd60ba9f0bbb9beb08e04765c72f26c146b23e7b2682d519cf4c56bbd1297cbf4b1066b4a023100c66fe6778819bf50545a7ca6dded10c769b5d2f731cdb0c064dd52e0725fba33873c2c4107066252fffd7f27338b3bf80302047c435bb5006730650231008a67fdcd29cba51f5bd21a8c7a0727358999cf9612a882d248ee71b534d65ae1af85182d4983544b7e1c9ca29df5ba67023077429e7dfba6cd17b42fb6a28cb604899157cebf5c7682ebbc3d29be3e07a8190ace9a862774c0838c524804923b9c5b0302047c435bb500673065023100bd245835b0b8654a8916a579834cc1d5587aa5fef86516e57af58dddbba57b80f7835a57388130f9accfa70f08fb6b530230069cb596fddd0b510ad218000725049071bb386d40fb6a6b0c16e4779ecb580448fc0226e6832b8e6f2151fad27e06f20302047c435bb500673065023100d2d5dea7f101c419534ec91f3da100eb37f90acb16e3329ede82d604e004dda58d79600b30c8104c06c1fa85b66009b40230482ef6beab4bf57f0109103f679b283635b8375de990971fe716cf6f940d311b48bf41011a11f808e8765d2f3486d5ab0302047c435bb50066306402303fd907af8c8775f0ad93a7c31241f13e52f36b9ee09927882594e11e90dbde7733cf2c7d3a7af70a59ef7eff2f05514d023070e47f43a08c437b7f2f4feda7ba3868e34f987b9a5789dea85abcd5ffb5d12492c96c277be8a3c5c151df1a2c2612340302047c435bb500683066023100fdb9394edaba5c5761f5fb0abb79f705cfd17e685f64e2676904ff99148520dba3081996c11a64ad00b7f74b7aaeca65023100f08e4eafcfb7950c6ad57b25a5b92e62c848904e676e7dc4d6fdada2b1c232c96181c5f37515abe71f3c73766a6f16020302047c435bb5006830660231008031c6f9318a49625af948f57d9b42efc16755366d6c7637e5f07d7e13c2680d9abca7af0cfd142e09aafc3d448f5b29023100f31393fb94b32527110f75d36435d1338051476b7f67f7680c1757fac7e7a417eef18a61d879b458e50f8f371918495a0302047c435bb500683066023100e2c3f729d66b59334dce23ddaa78a90cc176286088f56f4b5a047c9f91724578ce82a8c97143a389a576ad847d7a6b66023100cd45070fce19c4d30261ba51f1a484b8db3e6376e07079b96160db26c2e74f2182ac629ddaf57ad17f07d77097568b460302047c435bb500673065023100c769611c7e54992df1fa42fee41ec3176a6b4bf93b58b59bc3a05e8e37981f68c8fc3249d733fa728dd2dd70b06c701c02306c8db03a2801038599b71ffd713bff84258108de4b98985386f4b5aec39b2ea4bdf0992a9bf5ed8e7d07db9e708ef4850302047c435bb500673065023067dafc92ad8b02da1e3176fb50fa9e4c564e16a5a0491bf4f947a0ef9ff6281c00ce6937520fafd554d5538622d1a458023100c7838913e5ad30e9f406706634b7053de90793b7208e52ff53898dd805c8d87505108cf33ce71dd33641396081790db50302047c435bb5006730650231008bcd9971522111b86c58dfaba61505fc912abdb1dddc2c5e259c6f111092b3191809005815563422e9083475d5c8d324023046e9c03cef0c21f2051225c487c0a70fa97c4b37b6844cb8464e4d68327a958a5ee8c242c7e29ee90bbd505b4de5296c0302047c435bb50066306402301a497311e8f26ceb45b59f64907bf5f07d8f2f3a6c064d31454de1c30926a97a852661bfeb32fc2246b9a922e6e5c43a023070a2448a4ff8fadc2c93b4e40edc94ccb575cd9d476f1bc1ca33ee3fe5a8d99ffaa93d1c241a5139059841410be42fd30302047c435bb500673065023064c5df0e4e28215a753f3dd5f6ab7bb30ef4a5bb061c19ea2fa2839b4729b13c80fcece2464d9b5452a6df0ee28bd151023100b31cad72c09c19467b559af6feecde58891dc35f1488eb440731e05b102edc54ffd0e2d25ff322e65eb944f86c06812c0302047c435bb500673065023100acdd8c27340de16919132443be8ad4787b726546425850b8ab234a62b5eb3de62ad1ca47f655a12d0c3dcb38ad7d984e02300c6c5fe53a71901e35bddca8cd6b6ded65504687e4f006e6d0fb7a6cb75246404a3642b7c037a8805bae0a15366ebe330302047c435bb500683066023100e093f23e74175579a10ad8c71500a6c95dfd77a2ea5a73d1a7089a2d82924fd72988a4d71de122e3265685057e264788023100e33bad18c7d445c04108984ba238f248a6b496c7f37ad43f4abb3b8d1877d0b342c6bbf701a2f045ca763a54030a203b0302047c435bb5006730650231008da7e9d3f3474a28dc34bcfc614d9923b3b5b146b41fd285789c7bfd8f807422ed480c12aaff92a9bda2ac21bdb9cda002304f75afba51b708c70bdfa71c1634f9f358cc1d225728a8fbef6e2714b69e1641f80c0ecb33289a242124ef92a18cfa1a0302047c435bb500663064023007ba3908aa4073698f3614c7b705d0bfea40451b734e1d6adbbb6f6f8d6ecd6a4086f125201e82b11512bbef5e70849102300a364af41e97b252146fb68c0b5b5aee3f28df4b0b7f3ffb9b1f8216f4c771229cfa6e0293defb502fdb71d4a9fc0e630302047c435bb500683066023100e1fac39c7e4aecfed9360d421af980d9aaee0aa13d5cfb71588ae54bccf009de9af2072fe6cbc0bb330dc6490de2fd17023100c487a52248f0c785959271965f48d9831cf6f762db60590a47b6803a3b6906658dbf5320010d709fe60245943e54c1a20302047c435bb500683066023100a3033d71414844c5803c894123e6266b2560bcb9e85814be468fc74f4021590a9350fc1292786e469cb910e51713fdc20231009637b1ba2ff864db9221f36e6bf33c834dbd6482279c5aaa87864f71b47fa817eec29680afb6b7671fd73106b9baef750302047c435bb500683066023100fa126c67ee2084fde0a6dc7d04ed22dfd3719cf35a978f5cdfabaf9ce81b8b8cd32b709dd32679d62319983d4594d1040231008fbc70d90147c0e344b97a03640c58e1548b1e80b291761a5aacbd2bc1a1c2f89f87d93389fc42b154755e9ba02943990302047c435bb500663064023008ebabd8fced17c0f405bd49fb1aad665920f61fd57194ba8d6d469bf61d1eea029affac273bdd2d3dcf5b3ad68e814d023013e4b4394cdc38a5b080b5b158c60bf45c07a72e31ad57ca389121f3826ae7fd47bd29e7c9a32a8aca72a4b10d08598e0302047c435bb500663064023043a30da86b77d586ccdb8a4dc9a94d5c7031f78b1b6394f7b56760aababceca9a82d9fbbee93d13276de15be7f41e21e02302e0d358b238075de9bfb0f02999a836b79d8b46e0f697c17ef1d9c0084f1ff45c4ec846eb1254fbaecfc0b8a6312f5110302047c435bb50067306502310083d95883de8ff701b549fd07145372632032a284ed0ed4cc3c76193e46f400ef558fb6e0af0cc304adf5556903d10ebd0230426edbed0ad398c14f22d0d05e309623e717e08ea5e35ae4fa77012c5478cb811a6ede5e78712cd3dd13a78b5e1ed5e30302047c435bb5006630640230716d1c9a2f71f4a2747ac1ba7bda373a078c89717802d02357b85604edddff4b5fed1fec1353df085ae12dccbbcea10402303252b2c626500ad7f7be55f8562bb1f4db6236f659f7845969bfe92ee4e4a4173b15ddf858d2f74ae93f3a9dd7537c030302047c435bb500683066023100f59f4bbfc839a5766e3daa3cdba8954ce472fb3a25256df9493ac9a051d707c604e266ccd21a564a419bc9e479889f50023100cd2b7f5c2e479c9148e15a9669c33b56479c6aaf87d31d6966e6339d639dd989ac5842b7720a627944606bafebce61dd0302047c435bb500683066023100d5d17f901715a82b2cbcae70002b244649fdea8f807a9706129e8d6ff69cc002920210d31aed7a41167660d3463bfc1e023100e888b5fba84451177ba35a9702428ca0717e18137d1a0524f496a81e131eb6b544d7fcc3ff0c790710a8187b341dfae40302047c435bb500683066023100badda87ef3f5e55c86da5e1ddc17b2f86ef4058968958fae7f3c7a49c9c8776c0f2d3b9a165ea04f20a3e60152a2e6fa023100d2f66e995a4ec222afe09a037694081546f4505ed5673b56029b587571eaac9a0fd5d37995f69be6b95a636af5a32b440302047c435bb50066306402305facacea32a98edbfa19fc91eada2d740d0d5454746b1455f542fb586d1661b91bc9dc4c36b15e84cf22cba711ea17c0023021bebc6f06d547efda8e83077ff03df2d11ac92b2dab3a25494c5940de3807de69f869f8e5c5466c3c78e20b2fffdcae0302047c435bb50066306402300b3bea8b78f500156796161ef5f169bb22634f5f8dcfb8954344173b887138ff3e1192f33bf15f7ff9de2f1ea09257a002301f64d4b575b885ae68e0ded267ab52c05321ae4519d6fba45aa5e84f084d3085d7d7e6b838957cb51894960a3916b5ee0302047c435bb500663064023024dbc24c75c40d852a4e83c0039ff57320a0f4b43349b646af3a992ff5ad6a377fb9cf842c48cbc2b642a15b4e529d5a023044fa9a2540a94aa2dfce3c9b815e8f20b9a4b4deacdbde08912ff7ca8f8db4131e6346277d60a2cf5791a43c4d44abde0302047c435bb50068306602310084e04c24ff8f8ec4ba95553c1f4e3396f92dfe8123708d74aa3e2dcfe8137716f00e94e5a313a779c53ded4ac46b6979023100a309220a9dd16104a5d5cb3fe3b43372404c184d9d70f642d99153f374545dba525d8611f9b13f560108993460c9e8340302047c435bb500673065023100a47fdbceb5fd7c23f3ba1e097edbf3f120bbb63ed5f158d383fadfee08adee31f3b975f18a0ebacf72e9d8e425ba2ed50230076372dea1298e6a09855cda72d3af5cb585fc2f569ce6f79df89577524f8178120c12030771f8d2d8fd98d2476612990302047c435bb5006730650231009e4f643aa9ca0720e5b5fc7c4635776b5c3a68f032bfb691c2c63792672f69629c8b3f11c4b3e2478d90e5d36b64147202302d4e96e84d27ebb7cc4cfcd3f2bdb5a964b6d9ecb0c1321015923c18950bd583471ce64c959329d751277477cd6ce2180302047c435bb50067306502301eff551a2dcfc122558119da98d60f54db4ed5f0ef2102731fb21217167934014cd83dbd1beab2fb3a09a5b3cb176e1e023100d66baadf5d3b93575f514d38c6f97d692b0d79d329654e79661dc02098e04719210f9fad9c009ed28cf8e9f186432daf0302047c435bb500683066023100adbb854ddb21941614482ee4e73744e4bf25f9ab8affde5e3bcbb33c15b398afde1bfd710e2cc611a7db9a4cd311b503023100c8b491dd5c68d88ffdc0b785083b48af549d45a971e3a60a5338cefdd37e520f0a5e5026d67423372f8dc5a8f73a8ee60302047c435bb500673065023100afd15bb46cb83816c5e6868bc2e95cf769a2231984693e4894d43dda9cb08ddb85d9c1189037ca3287183168e82a0fe902307a2b7367d2e2efdd5b961599a6a7e1ce6623c1c488a61f5b9bfacc363f519fd5ccfaf4a461068d6277e24351927942210302047c435bb50066306402303e04ab3a2259c9cbbb0305af9198ce338c54b6bb9b819b458fac189809eb686b82900c69e0d7490790d468d0f6d59be2023057fed30e85e7730a860309d15b35729623e592b40e66560b2a927453640180124f84f03d1af993193290ba502ca8ac650302047c435bb500673065023052630107775d2e669a6f793984d26b954887cfc513c68cf4daab71e1cd3dea947bb20ae2a2f433991db7771ec40d4e9a023100a1f8c4a0dfcd33a842834dbbf455dfee08d3337e91a184da95dde6ec687b526d4e7fa0f5549c5fa1aacfffd3eaac51550302047c435bb500673065023100b4b624a5ea32656b40861ebff85965a8d7a9378b56554d92e4a62b06396e016ab3fb914e4a5c19e2b2ac4b5200781aec0230045c69d54c22fc6c96040322c100e59ac4b1f54cb5f5218de1842f6d6ab3205c5a1043d07874db85815cc8d2fe56ef940302047c435bb5006730650230511950bebdfea13349121963ed332f717709700ae98bf8667b6013722de203e917c2274c067e099a3b9c825316c130b4023100a950f22c55fd635ea9ea699e027136a109524fdb8497292c57f7ac38cb73fb6d951c009bc509a176831ac608847e16690302047c435bb50066306402303db4f2c8b61c46c3b40776823ad221a05637ec7eb92b71215fb6eccd4de4d434a24dfa68236691cbcabdc34bbe6414fc023023e1a1984342317c229a5e7de380075943def7f260c1d98d867f94764267fb7316baf6dc860cdda0e08d82540d7ff0ec0302047c435bb50066306402302fc2e1e1a1c8a056b34434a90352b8c57276b1b17339e900c780a7af88ace707e2dea49c20107677ee9c8c2394a584e802307ae7172be5e94c3370653d62bc687aff1e33907cbef79ab92c9a1a2c4c68a468d583a2e3951949a2c42560f70d922de20302047c435bb500673065023100cab929528e52ad2c61af20a4e78a2d9ccb18ac6911324aa86f24b12a2bb35185562dffdf392796288a2e3bd076aa7bee02301cb7f7167924caafa97346997ac0c2504c3200bba2f471e2af7499d2088402b6f126f18d986e9b097303ed0343825f3c0302047c435bb50067306502306c7d43d1e162ca3dbfeaad28696ab04a09b34308b07bbb6d7eceb5c170cb8e75bcb7d562e9f31909d0e28223dfa5b754023100ef83f50e9c7fc188a5167a0f70087585ae5116d97f113687073d698edfd1c461afbd740f6cff110271a73b1a38ab06a60302047c435bb50067306502303079bac3c333db3466ca283ef1c127f8768687295f1dab081d3d48929552c88a990adcb9293b752fa458f2b407630915023100dc20dac4a95d2bbde601970a481774158c41fd2b7c55816a33dcd1b567c9c7b70c02f7c689b6b654ba72c300c58b99410302047c435bb500673065023100e8a1401471b9d0a9fe0d715028e9e909e614fd6d26add8c40594ec40ed47afc3a57e1273c770515a572573459997c65f0230592d2ee1aeca4639afc4cde36966d5de5f526453345e72109ead2928530e2df8577c5193dbc8e04a776ab1d4ced819e30302047c435bb500683066023100a348e79f219354922c08d509f8caf5bd7b8213656d57ad28cd69431d2fa26f7d43ff86ec041daadfd7343fbb7dc491a5023100bf1b655893994629b39ee4465eead38e9e3cc16806b54c417c599fff393a434f0f9e9c16105e5297622c2add56c913780302047c435bb5006830660231008560b47cbfdba5e6e507d483b9cfdd843649745434fcb96a02a7f381be27eb771599d421c38e09e7f29a38922a644ed7023100d58b372e3081656e31315ecb9d87d09a346c2539894e6e08b5177dbda3d53ad5ec33cb929e5eba71bc8a0dbb02c040f30302047c435bb500673065023100a46d7f700baff84a3617457c55fb3af23af29996505c76d19420f1f3ad65e883d94006710daf8778ccc69db81ddf6c2c02303334eaf355a5c7fdfa2ee0ee199c0903451b0e0c481ccd98ed08f2c6d77ee300dbb4e8097c7ff515a4a87bf00538446a0302047c435bb5006730650230125c03d43b930393089ccfc3eb42ea43532f6a611e5974a3c03d093148977a8fd4c4c3a48f950c8c1ba1f57c9b4879d3023100b39117ae3337c3d4fab08655db24aeb759896737d4ad95c05efd5ba83be06247b6c44033ac8b0998827d440da0f4bc1d0302047c435bb500673065023100e67e249b1f2d516dad8ba7bf87b4ab2dbe3a995b8b8a2d022387bad8be159f96568793cff7418c27af312dc4a9d3fd4202306da1c982b24900a1824b0c8cfbbe7e3b873fc4191cf9a9db310eef4a7701e1b1463373b5755098637cb614c70d368ff00302047c435bb5006730650230670620bd9069fbd079b3cd3931dbfd3cf7af23f05d49e6a7712cd50ef391b6e99b60b5dd0117f4a2526cb32f4628c469023100bac0e139b669488ac239e0681bc39b3a566b2d338f8e6972b73069456248144f79d17e46dc604f3816665a77bbaff6190302047c435bb500663064023028b99246686fc846426e7cc7f5967b0e209370bd3926426da583d16ba099d698d32ea588ab56509814e11050f341a1f6023011146d9f3db62df12d660ee1465bbcca7adfa3cefdd5a6571db37435ac73e253b731b1dd42849b44c1b55bade60634c00302047c435bb500673065023016b62b0bc135e294e9632a19a66ae484b6e49e4d528c22aeabcc07cb0b4f1fb8b86ea2a6ed49864a154bd627f089493f023100d399bca59cd487cce38f0771cfaa600e029acdacc59259f4699bf2fc65d411f415829715b6edcaa1611a304380ba0f7a0302047c435bb500673065023100c558a61ebbe3e7f9629d48e208838565d846deb605249871fa62e3e84d1df530f6eac1b1f96e2722bd18026fc2028b83023060eede3f1789be910314285bfcc460292a1e22607d365b2cd26fc09731c56936bb1adcaeef441ea076af3fab6218ef600302047c435bb50067306502301167732f68bd7dddc1c2fac6048cb5b96c3b970ddc060b9ccc408ca3750f2df53127ccbc73a0bc2f446b66fec9a0b34d023100b3719e82e2c3051c61aafd86e3e3b6060ee60342ef226e28b181cd2633a440e7a7df288d7d360acf25fc455f7f7092f00302047c435bb500683066023100bcb5d0aa015ebdc343bb4fd8d154f67642e668d653075326b6e28968916e6b43057292fd0ea67d96d9fdad2d1915edc5023100e2a2691ee6d91ddcd7dd1d12013a3603944e552cf18ded80a214bdba35a27f58b912ace463ec2d2c8a8858104e7b2a1a0302047c435bb500673065023100829dfe6f1f6bed1c871bf43c13505254639f4fc225ebd52844ba03921bcc36455d8b8d150015ebe02156123d153f66e6023026b9f58cedb5329bcb340c50993c9ae498aef8453271fdd3479457324d2f595d67dcf39ca8014cbd0c05ff6104662b540302047c435bb500673065023100dc9e7eccfb1bd501f238c89a53b2fb26b3e6f0d10f9b83b0f8d47df5b99d78e8b4bc4195f7a357400d4cdba036239c2f023051e5d4fe98fc83303470f0a12330e0eb8cb7ad5813e1067341998d22653bd48025c329ba24a3c7d1ba58fea0cbeef6520302047c435bb500673065023100bad22f90102ce90c05d644a1a96689ad6da762c3b77e288a02961568f0901a7e7d71e863621e40acd29eebe6f5f26af402301842746144100cbb4616084b33e9595207c07362e1c842f2cc6828b1175aededc674c6dd96809d8c00f0c5ae069654780302047c435bb5006630640230335d5d425814a88eafdbb2d58486b3e78e3862dfdc100478a416da335dc4ad56c01b9068785b4f58be96ab2fe044ee2202303bd98c40eb4fc17a7174b9543bbfe14ca506523d32832d24ef6adb337a9aa543d6acaa5012867044278987cd504015f40302047c435bb50066306402301954fde5069f0c9645ec808ad541c054e3f71912966acafccfe0707c08478c997b64a0d0f5bcea4a8dcfc74518f8b90702303872fc306f3aee707b0fb3bae44ec0504548e205ea3ac39a0b89b9993c166c76133142915f716c769e97ab0e00afa4d30302047c435bb5006730650230069894ee2b2e832be5f28335ddbcc1446d253f63f740e88176ae040d4925af3b1fc076904f0560e891c0e1ced99f59c6023100daa12b2b9d742c91456b6535403b470d9458111c56608202908e118ab1a9f7e72c90d10f2d100eda413d6ffece6c71dc0302047c435bb5006630640230257f55ad5ca8476989f392b63780a15ea4100914523f1ef9a60095b36637f09cac4438a9a80ae6bb0fb393418e76d89802300a54fc0de1d8eb434ae8e72c14862825d1af5b667388fed55b2970c93422561e0cb42c42f119087cfdd74e38b7527b010302047c435bb500673065023100ccc76c312b411890ba08df65a65bd40c7600aaa31251017af115a25bc3adb61e98c7640dcdb999869d21637e8d8f590802305b85127d95cd8b3b38efef78f984d8f8b8dabd81a05a2d9b5179663a9a4d99799f4e124086960a5be7f6feead13bf6650302047c435bb50067306502306459eb2383e9ba67f830c1a72b1db76930f8a9af0c8424455bbad5c5ba76e63208aca1a569a5f35965b96fbe967710c502310088bd8167e6053afd425a91600eed017257ed33091d82eb2670059b656085ec646fb978c4799ac01d81970118fcd424250302047c435bb500683066023100b257a69f9c9b70a9c91ee7ebe5da5cde7225aac0d583f6952fea395d3d95f21b5b5b8eab0321736534d3319b4b90314a023100966847023a58f341dfdd372766af1063334b16bf27af5720e26400e08e9b04d5d6d0b26ef2aa10ccebfb6027dcf20d570302047c435bb500673065023100d8a252bc7cf56d5fbdb27889abcab93c83d0eb27e257e0a3b4990df7347e7edcd9e83b2bb63ea5032d69fe03dfb3c79802300bc7872b369b1edf04c3efd0a7045b9eb839cc0381014cf2adff87b2ee9052e9891c578605d644a54ae91877244a72900302047c435bb5006830660231009d35d5fca22cbca3c14eb0846a0f43380ea11b6003771fbb20f7b06debc4a611bf6b5894f36f186f12698f0f5477240d023100b120ce5e0c70b646dc4a2718b201d29a60bf599c7c6988f2e85d961eeec2d23c56d61540f78102fb43a3c534c97994a00302047c435bb50066306402307c24b9d3e38e88edbb55c8293ffa99a41061982c0ea00bcba70c989d914192e37e1ddfba1894d7326ed58a3a0b5fd70a0230498f9e1652f2386f30e1e2ca87c04e9b2e1b480469e9ed38413c0b73a7ab49e233988ff4889cd53678d055f9ea0aecee0302047c435bb500683066023100e371af02a1f02ce78a225bb3f957d65c49e3fd8ccd50398e52de8826006685930c475661a3b7c6bcb03f007d918c3f69023100fc9be84924b7795f46acc003123daad70574201b2fc0f2abf5472a04f33f7e100241d7c3bee9aa6c3c01b7a759b9878c0302047c435bb500683066023100ced96c51d4c40f0c0a2d0582fd51d8ee209d98915f5ffe1d32e8e884cd2d337b259978d160d2a46d05751e30619c5659023100dd692e002085b7c0fde9290242e3a5f86589c2ff5aebc403fdbb610fa87fdd9e819c6720a12a53d900db957bb3e978530302047c435bb50067306502310082e37470e373b2cb22f1b3cf95a22f1d1dcff3cb20619c26516ac15e0ed924598b778e8322bb69e27a44a8ae34bf480c0230460892993d45ae85f7db52a8c442c2b2159e3c5df94882d28d6de7370d0a8bb62a17d3e975166db8de8665047eeba81e0302047c435bb50066306402307c3c50d3edd8bcfed43e06ee0eefabaaa59a4dfa4b0dfdb2f5ac4dac48d48d8b42ef2ba6c4bfad044f7ca28d774b424902306c713ce75b068d467e9d6c869843b106ddd98b8fc937e1c71b56e20e36b0b35becbbca0f13ca0546d067e771035275500302047c435bb500683066023100b03bc12e03bccfa55fe46d2ca84e1985ab76c903dd82e4fe3e83ec5f266bfe449bc25c4b37dc6f1a317a4e7ec1fbbbd0023100b0cb99f832b6066b00e007447588ec736b7aa034bca45f2e4d57e411e847a025ab795848c28a78b83b89c4f529755d670302047c435bb500673065023100e2e99050bf6783392c98c0f85959413e4e9b4ffa4914da16bf1aadb7957fe1364de30e94afd0f3872a06860b5da622dc02307fd43901ecfddeed86e6299316f11ee9cece0ea8ca07b9f6554ecbc0254f42a607ac9f8a5e97b431f2f70e50736cae5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cae7bd7a1aaed5a2f950f42c33c83926b0ee46d950f585a13cce2b3ef6f3fbd83e49a8b431a9902ed5cb86e6d6d2898c02303a864bd68cfcd7a850debb519f63e61335151676c25318bae0bc4ae3cc9cae5e577ac6ebd68dbbf1964631018c9b571d0302047c435bb500663064023049de01951e1b37b432025d5269c77a11058448f7ef701e902ee692a22861fdac98dac9a550615b8249f2cc987bdf0fa002306f4992fde611f98a41f56a2f5ba03ebf15027e2db29edeb25d7f6458ce394f7cadf4b77e08b030c8afd2cbf980b474400302047c435bb500673065023100f74c0190cad3dcb82b489886483d5faba77335aa29a1e8b1191b37042f2a85a1ec336e6a2ae5e04251898dd9a23b561d02307c2a2fbf0b111e77860756dcdc44f015397fd800e044df05e1dba2be80ace7f118b2ecdfa4190dc6b927f138d650c3410302047c435bb500683066023100d357dbed520e647c3960b616f79693f054cfaf1100c358b5a0daf284115877dca85f61e210a39bf029c618673b010ea9023100cafcffaf8b1ce7518a6ca822fa0fc4b104c94bfe49ab2db9f67315f041daff9a0880539deaa3519e19f8ce2d7aded3120302047c435bb5006730650230636d391c72f97b299e57578e4527aa840c517f38d3b488eb9d3a12a6fed7546f6e005c477387dbd02135886814cc4857023100a817afd8ef94d00ee767ab2805bbfbcc03914ff81bd433c0ce6aae802b04cc812d58b144b1ee89e0916cee6560f57aaa0302047c435bb500683066023100a7286dd1b386206f9572cefe7e067d68641469f8fc83ca5f2f2602b4ff07efb553d5e062f97fda8bbc642def20a23276023100b386030ae2615ac3aae9a74fa6fbba391a27b77da22eea69f809523cffdea1c897124d0937f760c4ab01abb85b48a39b0302047c435bb500673065023100e170bd076e20f34eb3707db35a1f9eb430ea661f5350a397d3f58e0134a28b7f905e8746ec96423d466b793fd679073502300dbe72feb785e071bc8289bd882b2b1370542e378d8870c6738918b3fe113bb1580b29053c917c551427d8153a071ae10302047c435bb5006730650231009dff5fe250c1c50dcad6516cf925afe4306b735a03d1d34b8ff84e25d062d074c4791d2f672c2961f0c112dd1150e5b4023052a96dd39b265f522b20b4acaacfce09fa6b5308642167b2e9c472ea496ef2e22a2a83844ff8c2181db5aed88f4bf2540302047c435bb500663064023023c1d22300ccb3e8e2632e8a8949f07bba62789b748311f02fbe3f6d2bf1a6574a1e2e20fbb15083377141066dce9d9602302d8d364802b3fd8d8c0d8977c130085891917db191b0337a0e9bca69cd04102a0afbec3c4b39b8718e9100d04cd8bd170302047c435bb500673065023100ca2eaa977cf5deea4cecc1c323811dbda0e55d12e4ae968b21ad51bffe4ad4d43f322f22e267f637b93da92940acbd660230304f089dcd172e5df640fc3afda86970ccb906218cec4fcb6cb5678548d40d25f8ff04d653cc31061f8a2aa75d51e2070302047c435bb500683066023100bf63ab67d48afd57fc9f60a03f23d414019e98628fc50cb8ee04428e9933f936bb5570d940420bb0319f98da8f084b81023100ad9e76300b26851489e542ed201a608d662b0044b3204cdc764aa87f78cdeeed55b25dcf5dfc21bf7c2205a3a7af50480302047c435bb5006730650231009f6dc2f65436183c2fe300bb87a9c63a57ab62843d9e198e9b24e876952f159e1bb0ab83414cb3d201d443a0980a2e37023052f1caf584ee84dad8f8995dc47ae66b1bf40e9a612ebcf92da298670ae4cbbaa00e57b2641ad12a41a5904b454999490302047c435bb500683066023100e225d9705789373f1945c08d6e22a9d870111f0eb3629f1f1697f6ab38ece7f60c6fd33b04efb2ddcc40d97fd59efb4b0231009eb5bea20dd875825ed32fb31da34b664f4e297ae4891c942b0f29ed704fdbd263c566100355864fd43216e214f053800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a4d84dfa0a9f5f17171df791ef03c8c597a9d884b1f18a9b32e8ad0ecbf1cc5d7a2a17883575c4096a52b3a2c5fe62d1023046c8b7a816ab7529624dc1617285ec8b8b8b2273cf4173c0f857c6a95d408cdab5b293b94b417637a5d2f4f975a4f2c50302047c435bb500683066023100c43e33bef390a53cb29596b08356f517ea585362bf0141cb5b3352ba5f62131bd8fa3948c2243a7962cd1a0a56a012e202310087dc84076262790d6c9c42d903f88f737a4ddd7b897d29c0b73ea3a06f0ff14927160a8d457ba8166a208341b467c8c80302047c435bb50067306502307932214b87f966c97081f8fe3801dbb643dc0e19c3073fa39229485ddb967073594f8ea7d0156d8914e705bb12091fe9023100cd91bf4cda8dedc4736f85a3fbc32fcfddde28a095deb7d96a606856a767445fdc155017dcefdd340535190ce0fd17690302047c435bb500673065023100d53b79c3c2e0c0f69251241adfbb8cb5dd4f77d89f01a9eb25e3a462ef9325dab67385cb2b1f7a973540e9155a8ffa1d02303635d4ae4aede6a33259317363d6babc6b3180634d50b61ae40f079fd21a96ed1fb0dcf6cea2039e38c6bb0365fc3c020302047c435bb50066306402304332ffc9565f5cec40acc55bc6a3674cfc7549e5eae7aa09dc30de95dcb4dd40dd7edf28791f020928640c651f8277c9023072a21768461cd8a6c9a99b71adca4ea42521d6b19b7138e60e6ba9f929ba0f82247030be3822f093a705b508a2235ec70302047c435bb500673065023100f0505a6ff0dbf09c66ff116c654f3cd0b7b68a755d7857025ba5c55a1bd72c9810920e27accd03fd9a9b7102d74a85130230345ac893031fbcee2e83042aab75f450d70a501985e960806285ebba1069736000fbf9b5c12a2cd7c69d7c4153742bfb0302047c435bb500673065023100eb7be552bcfa443ee63f31ffedbcad30241d31c4bd0a29375df87f15406031d20907131ce81b43e7cbebb6ba56966d3d02300bd0e2597c37669fbe3c5549a234d88fb72ef7d4b38a78acdd17e2beb83cc562e11f10009e4ce7a75b61bf5d8a03951f0302047c435bb5006830660231008070f503de898e05a822088f7aa19dea4b3581bc2019aa7384587daf4c77ca1042b492a9b4e94683107cefda0509622c023100b0311e00d0f5fb122238cd1c1327134c6b8942e4685a29f716b910e33a824a59567f14babade25872687f9a3fb42eee30302047c435bb500673065023059a8c978723e281116ac92e62ece321d9fb77c93f25fbe016a632270b89d443f2c67e284dfab7f309fc1ff74c7f97d97023100c854f906921d44eb307268e96f829b64b99668be4bca8ce4ca4fec205ad6cecccce60d9ee0760bf063cfb88fd1e842c90302047c435bb5006730650230056ff096f28aadb9bdda60cd237a95feaa61a135c486549d8d4add26d47881051280e8793fb78a1b1a6bff846b95d483023100bb2c09fb46ed02fea7b10242674d373b9350f1a6cdaa9a1dfae42fc26b10620398c34632af0044302b68f4c77baab8750302047c435bb500663064023012a9cdb62800986b837288ea3d5bce2b4a5d6d19158cbb14106687e79e4f0d74c7e3faf17f5ecadb8c735414ef988a1c02300e53d2be1218de17347a9ed2c4393a7e87d9066d450de4f862e2f4742be86143b8d23478ccf956d30c4d59c483e8bff30302047c435bb5006730650230184ac794480da44adeeb2eab98ac73813d12c7357d7c0a1a35df411a7508ab1676a85a89644320f3f0d23583ecf36a1a023100ddebeb0e25f70eb0905e098da23e244b9ae6d38d871bc76cfbfdf364c2bb53e460afba78417c6290b9a144ab2b77e1a90302047c435bb500673065023020838498ce71d168f1d38efe2ff413051758d2acb060dd5ad44ed9b8a57fc0e4d7f02eff2ab80069389c79514a62db2d023100c2ec9fa68dcdcfa215314e4a170ec25c4f67cd3ebca7f406043b19b69a3b575671a6ed2d9ed2cdaa8b170ce4a71929e40302047c435bb500683066023100ccabe46f391717388a0a1490a06b18ec0185bdfca0762b9cbc62b63d4c0bc71255f369071eb6dc459f35fb02bf4be3da023100e05d87d1be69c0222e94a9fa59a4ae03836f242ec2631b2ec41716707c4640c260ccb4a589da5969ea6b42f47c12e76c0302047c435bb5006830660231009864548325a1d80fd1d8166e123cd1d3a0cb65a47edd32b4d70f5b2e03961ca254d90b4fd1898c0d2d099bb467a3a550023100d603e56e75a123f7dc7a2ebc2e3df27803915ce9ee8b18262c61eb7f29c59bcb0fdc54a059557d31847e93f187c48c5a0302047c435bb500663064023005d762c4410267790ea7abc291639d7b4c6aefc06e80c23fd0d02c29e55462b61f2a4ecf36eda6989bf09545d5a751550230365460711886bba2e3e3b18cd963f68cb25f0f5b50d0ae75f5796d02ae79733e0408c441f3b69c19e5c96a95366dec190302047c435bb5006830660231008c087ce452600d5ccddede7801fcd8399f96cde7673be9afd0579e295dcbd0730a03b6e6070823083ec8167ff119a7f7023100f60de88fba967adb243d62d68c0bbb6d575310d6ff58aea7fe368becf442ea8a91543ae619b6d9e96898cd9f0bdee2f00302047c435bb500663064023025b97b4065a6afdb6986b0effecce3242087af51485139742fe277ae2d0d263ecf8cb95a6ff61eb00ffb7fa06204061202306141cd0be7397ac77b64effb3b21dbbdef5d8bdedfbaab709f816665b71cfd81a943d4eaa697726e2e6f4665206191db0302047c435bb500683066023100c48c2d25f478e5c62c8113286b07514f9aa5800330ba9ba7ffcbb6c076b9e398cd123d87798c1ccd16801e695230ab9e023100e2c04c137c6e3d6d39bad353d0a5195357fca90ccd4fe1acc02faa118e5b854f776369d47bc3d99f947392eafb97705c0302047c435bb5006730650230518e3087d03be33fc7f569afde36e2cf408ad31e56f5967d91e21ee93a2ec4fcc69268d40b23f40495fd908d8dc0e401023100faee9945df83ac59e239d5680c37b64e57ac37cfce1646740de173ae303ae6dd1ee0a260c2b890df8c53b362a92861db0302047c435bb500673065023100891c760cedcbbd8d3d03287f56d451a7501ecfb8d575de1fe4317c76e614ea818738506593bc76fe1070a1357369a22f02301f22f51c207ecbc1ec5f57ce5e209e6793dffef408557aee27c62be3d2fcf4833d49b515f71908b922d68377dae51fbe0302047c435bb500673065023100b52c8961f5f9365e37235f7cef7888d65c9ed82a45e719fc9933ca3b95826723d0bc8654b448b3245064a44f45ee11dc023073388fec16956de84e137925c85ea353b1acda87f93bb3df831cb72cc269713e5966596d1d25957fc238091c209b0ab20302047c435bb500683066023100babb54ed303fd8c3cc7f49d932f911a4edb679fd79fd6dc02834b56073b4f2ab033017eac314d1f1ebff5af87dedaa3802310085e6b7bc19fc61122e94c1a099b006894ea263b7482349562684d116060015eb3a29a5dcb3a4ea64679cecf07da429e60302047c435bb500673065023100f63a866982872682775a1bc1b8723607a5479389447ba1bd2ab5ccf7f2598d8a35cf9d81faa8ca6dc711ae6e962f2ecf02300b4b3627eceabb11ddcb6a0b9ab4873cc4f00649ae8fc4dade050292ac350076cc0e4d996c8dfc5b7ae2b2c10e81b0e30302047c435bb50066306402303cd123c071167562658e7efd8b438329a72b8d85e5a26c2c45f742c3b80b934c156cecbc97b493c88467016768813b4f023049fdbc43c8a933befb1b34063b65370c54c6119529712323fcc213540366c19e976eb22c3d4af0c70cb714775d1aed040302047c435bb5006730650230694155ecb92d40b1b06d78e7b1a82844c670767b98e25960ac5957cece536082aea273b21d4ecd8988084711cc9aab00023100f5884bedc65ef86b1c04f5b10e9e293812e57844d01dabbf672cd68f9e81c668a5b01828fe47012a1c08f89fae67ec4d0302047c435bb50067306502302ce19f9bbf2400fcd31a5824654312a61afc8fcd92df4e63b79e75a7f512345f1829c5be1ff897ae83384c724a933247023100e16a30428727221c66c5ac173e6d47f12b642dba05076f156576b2fc152a0ac33955bb6d33f58c28c1a8eb2380ef65130302047c435bb500673065023012494e8d22f72e815c9970be4b59d7c84761ae17c5f433ae82dcfe5edad229d178b91b9a8fedbcfa162c4ac0d60656350231009f38dd76a6cb826e671dda55dad00a6dc1c3f186a45004dfe1de9575f155f8bad8230372d1db60f6b9c3f375707bc2c90302047c435bb50067306502301b54ff7fd28c71ff1426a147eac7dcecf52e889bc08b73a769216a422de7a04ced76de8496978d492720dcc554893041023100b1dd3e3c98e1d72b77f01a74d230a42c6ee4466b77f14bbba5971720a47a8a8bbaef03caf0b88118dd60bf087e1a14280302047c435bb500673065023024ebba3df621b74816e9cb39c4a838e2b151e92159aa038ee75e3285469341d231060b6c8f1f11a1b5415aa88cc56ae9023100cdcff541c22c8e5795c779157323e99335bffc4609c0c057cd0b5b8b77fad1a4a4ad06f7bfc998baba22d02989414d4a0302047c435bb50067306502303b6171a7d42de668d686c1c421d0afd3657b92b3f4a90d4e6850333dabba46894b777b5d3aae1dd797ffb073492f53cc023100cd6745c42efd20cceeb46c30be53424d727cd2a547ffad0e862d959589af7411881329d4beeab37ea2335e27295c21ce0302047c435bb50067306502301c9215deb2917238167401f67556cdcc6cfa7c1220caf532ee90d5756582fd76dec2d443e5fc498cbaf925b4f8bfcb25023100b5a01bb13935fa654e82539d3089ac5fc039c37a74996fee29b6ed6c1ecb5f738d0be9f4baef36b5f2377c74af7bea8e0302047c435bb500683066023100e3a70f4131ee64cde3a09e6f0179df4b0dc13c93069f8270a4fabfd94125d1538c3dd5276e9704a34a233bf399385f4c0231008f67ce7e690ad2507bed276c374752037546e50c04981b062434454e90c3ee97de5242aaefefc593bc16f3c6dc3fd8660302047c435bb500673065023100a4e5d4f72ca226f9c19cbf949ee850d7f1a3215d44a68ce735907fd58a4f4e160be1cefb5cbc18b827633eb4a37c6b5402306f22bb2223a8da8de5924277e88e4063c45c0848381644a3a61cf5c2cbce2cfc37b2f369e211a9d94bf4db5cbdb38c940302047c435bb500653063022f5e389fc71380efb1e766ff4dbb3fc01720efc80578eb05834336bdf8ad066e4f626e2b5af4568d76cdd5c43368b3b00230090b74598489ea8dcc644f48fba3212e862839cf95992ff6436bbdca0ed9315f11c92daeee40725396dacab6b469ab610302047c435bb500673065023100e4647d28e4fc8f62ff8a9ab79c915d31ca1671afa2f514d282d4649c200ef97e181a3ca82260759d2a9d1314fd3c482202301e9232af0998008e22cb9c7260031bb3b7f063026e5ee40bfc0a5b1cf398c3407c870f3b80f5da8e623657be831246ee0302047c435bb5006630640230668fe1caefad0dccc47bd84db4a6aa8b10cadddf18a0773a284683d621502afe885ef6124dc49a37fd8ea8a002df81ae02300d89793ac6d1affca6c77af902158cbedc91e80dcff666a39002dbaf126546d274c459f18c1d5f1ca15577e5c8e838670302047c435bb50066306402302a6fbb44991d97452dbd96c59e03da0642da82b47dbadd5287744dc39b4b30d009bcad03c6a2d2eb3f59f729fc6c88470230296ae7fee5c3795ba2956c02db7cffa5d7789e2a12c4d5c845b6c8c9832c108b602031d352da55ea2803be3d373c54d70302047c435bb500673065023100bcc60796b264e2626f999197300f0c816a5874a1151640785953446a3f83dd6e12ac4f3c62318612eecd7967593eef2102301fa542d2394d02f5497c8eb9603bf8a26d01c4018d2405b9b5358c742df8b813305f57c72587c288f05290d5d3e4dd060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023020ce7a58ce8271e3351bdfe1fbd13f87ffdddf3647f8dfb82670dd5f08eb54a25af2d9d3e0232d7ef57f426046d8131e02303a194dca5ed7f02a2060e6aedc11a51cebb0a2cf6664533602aa6dcaa0bdf5be5a1dd5d6a30f9edbc4dfeed9f8dbc7610302047c435bb50067306502305aecafa546c9ffc9a0c072cbeb2c57b43f651845315db53de4be4530ea50e6070f5115308ee3b4c54d7fdad1c8003f51023100dc597563b9718f8424794b61d3acf9259d8e1d84a1dee6b938dc1742530b70cfb0fc87f30f141508461499b4ef173ff20302047c435bb500673065023100d6232b7a7b5d0a7b61fa1b9ae0fd54918711fbdf30c619bff5b9836c712cfa8bf20e63703eba102ee8c1221899acea10023078d1144c93675efca25c35f072a4ae617938414eaca2880ee0e19f39c3835180f64aaa396b9a45f8af5aa0f9adeb2f0d0302047c435bb50066306402302dd9f76596333d970f00cd50dc5be3e227be4db8f6e9ec57355b47a11e89fdcc3dd9c6e68e8f9825f79c59b3bfceefa102304a98ec4792a8a174f21c0c79e10ad156589d99ce88951f6f697f8d921ea83abcc3927c7be6b9047997280d41a03c51b00302047c435bb5006730650231008b333ee5abff45f221e508b9178b56264fa1c0974a10adef665c758a4e56495ed6fd3fd4d9779a409213018651360ba002301c680c786f803eeb3b40e32a5e125af16eb6670c4bd11b2240af1d02c007fb02cf6b390b6263b3c394d01ea90ed72ed30302047c435bb500663064023019b1db1ef85e881b3b6c329e59b703794047e198b54536f7674efa00235c0f52d66c94df58dde4633ce15f4f6209681602305ed60075524af56ba10f929242acda282b67e844c5198e7c6564b5e7feb1321e6ee4e5ffca53b84b2efcda0c581e0db90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e698876ff3caa09244498a8c1f0f7b1f42098f1721e88604017be5098d4cd0e960efa957c692f723d99989c29447c1bd023031c87dc1111be93b05d8b501d21fcfa5b254c134b761e141c197b369ee646e7844352dded8716ab09fe51f3ac70fde0b0302047c435bb50066306402307408d01ffc10daa1ca2a49f96403f08d40dcc3115a5a234feeaa0fe0df30f22e39952e9496f26903da2910f1af913a3602306514a7e5b15d3e330026bc7bff26669d4e7e596767cfbf8d5964e0fe769f5168d06aaad5c4b5721704574297e09057810302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c91151580f17ef679506922a2f4e58ca2917ffdd26a0ba741a90de39fc0e195d9d24e5264d1f040b583aa715379b13fd023100f810bc64fcd6071d84a3b6668d41187891f0659986bd7f88b931f51d4752a983182729a84876384e9631965fa49007bb0302047c435bb500663064023066947368d8b0adb644d9a3b2f7bb839c1fc56e8e4a2e49a92da187650514680a7834951856933acf50ee36635d5057f802300d58d5afbd08680cdd424a1ab30945e0070b99607143b6e1b835082de05eaa9a9a72dbc2a9da67b5c26bbfb10b96f5270302047c435bb50067306502306e5bb65479bc0f0a9cc75b2921ac16a19d27532f39ab74114860b81ba444ac2f946cc650c646ab5803086b4a648a0a27023100e3fd52a5849962da9c4a51a3cc3bb93248830a6e8e95227686e9ab44d2b9c1510dc964bca87fe4e338358899e80eec660302047c435bb500673065023046e79c505305d573d47c7f1a31196df7fa3cbfce05d6b58c8ef98e648eab88b7718f3bc269b0298c7f08a5eacd24736d023100dd297884f7b500ce9afee4f76209c70666989ac59830e191ffb398dcdeb7e5befcc2830df5e7a3aba195ca038830ce1e0302047c435bb500673065023100d769363e0759d8c9997ebe10f5f517f54376280c638297efb59360561dca64b8031752981a122eada70d6f0a8cb9e8a602304b62e96e0278298f34cbc523c0135be087775fe327d49143961ac97575a9d9098f5efd2daa0b70daf410d9009e6b400e0302047c435bb500663064023079655f743b141d38243719cb6955fbf1176e01523a1a13c79eb57ddb47a2fd56a3e6f7c6cbb8292f88c3070638c3a26e02300210dd04c0913f2440ff9befbf9d337a07b0c9aafd10f1b9d02ec4506b11f413b8f0011d1211e66135f189bd1ca0e41b0302047c435bb500673065023100d25c3c020080944dcf257b7fa1bd6271735f588909950e820bc36625af1bcc65e1373f7f405899816822707752049ed9023077e38c025d845f6dcf4fd2efa9b3ce02c7002882468ed57a1949b423034ee5deef9f5bb705d8bb96f44c867305fe86c20302047c435bb500673065023100b454dd86ec4cf37f8d039a370ce39e385630d54067bffc91c6ac60290fcdc63207e0d81eba0b2bdc2da4d83ecf20b8e002304eb9b150a9b3cae11ab554f878fe15040864cc101dea3fc648dbb9b23756cd6d90b27789d19d077ad52bdc30b86dd5670302047c435bb50067306502300925685277ec57e80a77568bc3dd824f2153599e6a4e6dc65be35ff7e7630092b7092d6534cf92e74e0da5d873680370023100ca6d228c43a3628f44f4d9851dbef77ed7ca63bcd92b21cf0e5ee38cf18a217380c88f0c90b40df0f3f25c65a55a6e3a0302047c435bb500683066023100d1d851e17ae77d65752344b43bedd2939b85db028c1582fcb027a6de1c205f12ceaaffb4daaa785b7587bd36e413a6ba023100e4782091a32a61b8aa2a2e22ed84f3f0fb5dacc48dbab5e9eb6369e517d1ddc85969d891a55211c4cd944683952635f40302047c435bb500673065023031a9cb8679fb268b10a0fe3f2749a339a3df6474c4bcb2978a6c0e93f381265a5bff362305c760831ce8de0755628bd30231008ec70cbb26b9d48722d6c19c45fb6d8c22e4f47bfd1d955c6a2d82f56dadb8607e900aa8f0af3b004a10bf415e4e1ac40302047c435bb50066306402307a432a3758a14693506f8cb7413c1fb264074150d4c3a11b11104d333201c5c0bcafa850f58f4721bdfe91d4c2adadd0023053cd49c8160dede509927f988f0930ff650c8920329b926bb57380b71b24c46d046de262ffdcc01111cec3450928c7f60302047c435bb50066306402304bf2ffe2dd9933a7f7070fcc18e2ddd948d15cbfbebafe7232fc90c702c69ac85345bb3fec15fc6570ffa0f4384c1afd02301d87cc890765cc6502e8e598d63250f2b59cf5bd4ebe6e6015709aa485aeb5cd9aa2ff6ffa0291217ed02d4b9b26a1710302047c435bb5006730650230322d928250e441629ee1430f693b6a2f12c0bfdeb68cd341ae0080cdd6ed805c615eb7552ae5563bfd9d1d2bfc0023ad023100ff07dd288cfab8aa76638690e0887d888de7cea69bb09d2bba9ec44f8f2b2c382104e29e4cb5d54212a76eaf7ff3fc040302047c435bb500673065023100ec93276c1acba2a5582827b76cfc6e4d2097add738ed44c797724aeebc26938b0c1e00303022fbb236f3dfaf7e6586fd023054056aa85000132aa8e72c652b8e390bcd9e328cd2b0db16edd1a9a12c3828636400813641ba9f7a819186cf503d8e6c0302047c435bb500673065023100a8ee2cc869543bc15c95c9052269f08a83ba68c2f9194f4d7fcd14be5c634e9338463cfaaece97952563c4a283c687b202300811e9d26ac3601ac522ae08836f150ecdee10e07b080396988b29eab86e13d2c2d058fe989d82e2252fcc49d40da5bb0302047c435bb50067306502303e082462d445c2591cf8e7723158a1f37b7201e4d92acbbb7665b0cae5dab746bb4db487301d006ea9b0dff33438504f023100f9ffb3b000aca1d729f3007db502a1335011799b8ae628dcebc45c451485cf4375ed29194caf7ed0f35a282a57bc777c0302047c435bb500663064023035998b429a96574cdbd5b89b9fe6420aa11bc690e6cda0dbfc04f165e441416ee36a62dd0c2ec1ab7ed15e7d901cac010230457f6ae26f501b43ae3aa85d3bb5e029bb067b460655d45d26ab5450acd8a34619c5a703bffc9a263b104267f61c54a20302047c435bb5006630640230794f682c06e228f5359c2c993b28b67db4bdcd79316fdb7d519a936463714822d490ddb66da97da9473c6e6fb996b9a202300c2f72c642cca03fba2f09e8d8ce1b00230e37c2c727795f087e1c92a62117c368581344e50844e765a3de896e7da7c60302047c435bb5006730650230757794a375c0e5fe644523e4be59e998cc7bad12e2e22bc0a5dff8d7685748133b88f19a059ca2e43145548bbbf324ec023100d335cfa5aea1dc30713fc88b61ebbbc1d7be91c8e7ca455f8def53c056559ae296bee550080c60bee19fdc3d0a7f355b0302047c435bb5006730650230183bd9bbcd741685a2c8ab93984b07295cf3c2f447122994bde7aa5a5fc29faf52e722faab3e13aae68f29cf1af67f6e023100c7e6e5d59aace8447134334b051e4355fa20e5194bfeb26926f66ef86af9d197f0c8ecd29c57fab7b08c0d3b25501d130302047c435bb50066306402305ba8e048da20edd99a7eb688ffdaf4e01a5593994db1b36fcbeeeaae13065fce368cd050946e516c5b7df1fd6d06882802307cc61c095ff932a9e461a2d6096ec2aaf28db8124937923ccc93efe10245d776f73d7818dcf796aed8aa097666d3e6d90302047c435bb500673065023052c92b616ed258aa5cb0b8e5691d6df8e9eecaa5b70e64455e78dd1720ba57466e33db71e3d2c323dc17ecf4177d4d6c023100eecb07ad636623e8a5ee3393a999f797f6309844efd8dbfb6510e0f8d25373b7d30269a8fd028f72643916528687b44a0302047c435bb500683066023100b19a64b22202bcc8ff74cc84d34b6f911cc614896a3692bc7711c99961505b7c353c502978d942a27d0c03de799553df023100c9faa1ce2b7d214725163589e5180b9b752039618bb30ad7ba66a2be82bdaf6b62faf100f6c8563a5ae97e5a9102f2440302047c435bb5006830660231009ece3d3d49487889d5e3f123dc27b2cd107c16aca55e1d97c36cd95e6520bc0d9eaf056f28012b2a22f47716ddfa6d3702310082c55018e5bea3f86a0c9416c498198c86346b95d89afeccaf1a27d9dce2a3192e9562fba090d64b3ca73bb43972421e0302047c435bb500673065023042bca279ed47367a2bf51ce4bade508a49dae0947695871672464077246ec2e52405915145352d71adb4c478424e2fb2023100f4f558fe895f77f9120dceafadcdb1ac23f5a6dcf035fe190ff795309a36b2d74215e323d4567387656d0963cf701b970302047c435bb500673065023100cc69f03d6105d57fe06496bea8a66650a8d7f4c9817d15b93eeca2de6fda87028c6df1bf02fb403a4556251b5908dcfd02307562eac116a59bcccfcefac2b8db814077937fd028fa1cc8d00d69d988c3568d987180bccb2d9554ccedae69952f8e5e0302047c435bb5006730650231009eeae1048175490c6ea77519146649855d615540aa0b65ed82d5c3b658a09ba140a3a4a3be1c8096f99ce70a3e2a83f902300e60961986d061e32b698a6d3008d44b478c9e6473ae0781effd1035952ecb0de7d4aa1f4333249a0660e7be7ab94f760302047c435bb50067306502310098a21c46e8febdddb4f64c2b919233168f7a3edc6a858698fd21deb3fb7442bd00b39b302ab778bf653366579251000102306e250e82252d17d8af688edd76caf79eb39e551cb7923b45b716b8d71b215205fcbdf613dcbae5fad6f257012cc5a80f0302047c435bb50066306402306c64c3eb1546ff953bdda4d691e658813e50198fefa4e0054d1786c8bf82d4184e2e78dd394d78b0e768a97bf3aa4ed702302a23372d33b375592ecf3f936255c273193adf511341472d1778a7fc7dad5f63d7bfc93dc31d571cb83432ca8f1c2c740302047c435bb50067306502304bbd9c6d997e22474b43f4549ebb28bd65f583580c2eacc06e5b6ace1fd0c2904a2710885eef7a77e846b430b2c39bc4023100b23b3535f49a2ada8bc3916caf53ae061ba7bf1e84000e164c46325e23e43b8c366e3cb3513fc905501d67a42a7bb62f0302047c435bb500683066023100865945990c3da97c32e094b3974549c81c7b0e6770a6d71317a7393804d9ec7eced8239d3854347edd26a0693f2371c2023100e606cd3b5c5f1b9b47bbfaf5c757bfe80646ecab6a7d205d7b86d9d3e37dba4f57cdcff81c33759c44ca324b227cc7940302047c435bb500673065023100b09216a1b3d18ba779f83c30b438738f986be902ffb1df5565f10b5f679e9aeaac5fb2e137083c0f9399b0fc6d40a87102305abcfe5013690c9eb123ddb6826a0b5a8667455e4822f00e41cff854f8252b310deda299956dc65438a2e90fd6d001f10302047c435bb50067306502306d6a93695d9aa6400d5775d57b9c350f1423621ed6986b912ec8c547f852195974211a34e253397b0a88af53f747a6d3023100ee6d32dba1bc4a6ed234d6a1d6f31c03059af0f2b33c8df67d5017e040dd785c3a16a535951461d438e5b974ba2271cc0302047c435bb500663064023003cc490e371533a123b69f2f7631f6068801ebf0ee1474d6db1d171f7220883bcaf993be87871bb4ca2997ce7a7209ad02305188ad89204635dd69b98df730fa98bee911cc79da11a2220026d271a1eea60256e8afdd9292d4bf84fb9420008580490302047c435bb500683066023100d467bef553a1d8237ed069dba18040f5bf513963574c40472a8013523b4eadaca49ca99081fbe649b9f982c753e4ca18023100c5e2be63853035e7f21162a8ce23e8c70a899cc80dd8cbc7af4b4d0adb964a6f6a2bb4f28e70435c1650c31751523c190302047c435bb500663064023021e1c4bf16801454748ec67e54cd1fd4d5400d677f52b48837f216d765021d7d601b87a8479cad19a7931ad6464ab3230230687c62aff100726290bb2825dfef1661d030030c927866db292d0d25a14f1b95f798a55b00a0599ba215bf68913b34610302047c435bb50066306402307d6729aab101f66740496b8f4dc8078c0638e4b3049aa943b80039ae5485026a436af7baeece5ec58f35ba682472ba1702303297fab50ad921e3ecefa92cf8b82c6f0131cbd9f8c4e3afb1aa3e0ce5c3afcc997848708cca8c0d11cfb683c6c2578b0302047c435bb5006830660231009f34053a42db7799ca4c69a7760e680d29610fdc0ee23ecdf218cd3458a5d587e445c3d8e8675b01ec556ebe8e09e0b70231009f0789b43d15b8a5b382d6c4e7d683ef8f4609be3cfa9c5885a91a283d67569f16085c98bf8e8cdbe58a59774c5808380302047c435bb50067306502300daa8ea2ca07398def6a17ea31889da58f99b19f067efc0ad1cdd6ac51cd03ec2642584e0ec287e68fd1f5c0c10b6b04023100ec5daf69c6456efc645bd262edf69f0e8992463cffd4a65f8a21a8baa0f2da7ce7e5da5aa9a1c11c494ba1c0f57708f60302047c435bb50066306402301ebf88f35d00da06f22385217699dfe3a26a39db399936c9fe6064a350d1e813de94687171aa67d9bf77496aa3ea6e8502305551e718efc833d91a6676d89348d7c7b25c630b7deb1af285e3a29d325a9107cd2941b7c1ecab9d5315f4bc2abbe3bd0302047c435bb5006630640230130428c20b42491473ea1af526c8c00d3f37c2fdfd1846006bc18db346e00b4d13cae7e7ac4de26add0339bdd9164de3023065e84093aad53866915be211fa57556c54984782d4ad4abb15703c832adb437f597334e8a1d1c8aa3481f645aa92db210302047c435bb500663064023050b0d6c3d8dde8b964252670497ffbeaf6b3c4fe97c7da7d1e92971456a3a772a9c19f85c8b75a13d3b9e14518b64b4702306c7341d96a8adce8a9da2676d7e3d6f40b1b01090bb157db8d15a3a375d9d012460497708db2b637a955f90d45cfd8c60302047c435bb500683066023100c0182bc5841cf9b08836f65383d947157db7ad5be7456cd85cc6238b8a7dfe5ebce346993c1d23edf655c9e061a0bfad023100ad9771297ad1e6d35934dff6083c0575fc8a429969a585a2d50d35b11c6052d526faf0aa4238f3ddfc34cce88221605e0302047c435bb50066306402307cb8c0b65d0e65740422a5d13d082f6d33c324802e60a0b500a9a7d90d4c3e2bcac1a665e038679df29ecad6785577270230761695fa14a193f040d204e1fb3e8c72b314e924b279f31d2fbc680e0be2d580fa7c7afa81e93f2fd735f7c31be9dbae0302047c435bb5006730650231009584628c77156875e59b0af3916311566877280abc098926bd9e133605db3c36d0479c62b8af86b0a56ff3875a2ebfcd02301bb902c591a1ee8fae44f02c475c6064b93b4c13dcb71b9fbd1a57b7da133f4205e92d6bf22ba031a61e19d3f4dcdb530302047c435bb500673065023100d80c690b5109d71e45fef9e26c6ceba454a88eec09497e6376a69b0064740c4dc65b2b2441d51aa359ff28dfda3b49ee023041e12077a8a24f10d525e22ddd0fa6accf4a5c0469af752b25b6167e0256ddf01279510cc27dbd8a22c805cfe7fb52c50302047c435bb500683066023100d4603c9b0fd2718fa7579aaea02b23e1ada5a3faf98a3bd7a38d5e530fd0d971bae6ac44ada52e4d9b43f7aec330508a023100c38ef8e40fe6203ffcc60fad273905a59511eabe6f636bfbfceabfd4be3b9ab70024e346b5cc438cd62abc9aeeb20bf10302047c435bb500673065023078e65ddd191871c40796b23b0748df3d517615612b908b730ac4eee0a22b56d8f56b12fcd1d1582cf197f5a52453476e023100c78d3eaedd181470195a37b79f75a89c6758b537cc5094a250fcbb036e88c0d614b783778e33b621d0e7b35a58b0a7660302047c435bb500673065023100ec5d94b68637801c781d9606ba19c33f68a6d3dc962606024d0f15b99c74ce40ded29b68edff4e4d9709102e40d8a4f60230335dc791496ad3c32663ac4d0e926dcf3c22b0dbc81d84e00446715607606bc0ae12cebef7c978b4e5b13de3a7d8d9a00302047c435bb500673065023002b6f342245dfafc182d59f576cf4833881cc49e644a8649bb3ac565a93c70daaf48fbe682d00dceaf880027a009a46e023100d8b77ff282de51f7c87b28e430cec0c5f261dea8ff29caa6b35ae7ba7bc298052e74045e17e45580124fa94c6a64a5190302047c435bb500673065023100ec8f3ec76320812de9c23deadb049dab094a10295e1c72a5c5a774c554312d2bb4ba1353386f41c56cdb576e676908ee02303dcc0788265047eaba8ab4208b5c156b91e5f3a6fcaa0f1193168e91f40e765f80f95e17a269459b362e6c81685c7e500302047c435bb5006830660231009d4adb7710bec83516a7281b30cbcbcec78db00524b6e1a453b9aa415e7169586e8f24ea6d243db4bcf98c7c864d11b5023100f03fcaf24d2984e0273da45c1a54f2ce15a867fc7c95b4de72a24b9a31b145c46f9729b268b520561528c8dc8064e85c0302047c435bb5006730650230782d1da21635b8faf361ecf2e7ad7008a9d8d20c2d1453da49813bb9db7f4fc1048f8949875d92866818e438a6703e44023100ae9b91693c7b278cd0f0d4b9f9910e59baea815a28183bd64d7d703bed6e2d6654cae03d62fe19e4b16cb053b0fe55d80302047c435bb50066306402301264f1bcbad913d53e15e1598f5564746321fae58cfc504258abafe12b11042925c7005c0e5b9b068f804b5634386d5e023034e50de4870b01d7bcbea2e8a5e7f15353ac8f2dcd99f1a2c56f7073806dcc5ac2d91a17007d6fb7628e624c78151c2f0302047c435bb500663064023039554248b96cf8789e1eba3ca698a78ee0d1b783bf03c5e85c9c09acd8b3ba8196e1c0e4b8473d8d88ce66469bdfd9da02305dde7289b6add37341158923708711cdc04c685842a0ceb2f26a1380a210cdfc8de6b6dc78520bf292d3b3563d21aa530302047c435bb500673065023100eeb913a2222c44f91bd54252048e0c2ab6aa1821f3f8cba06e3294328b93bb137c4b9b6182e77f7a9ae70860e037de570230517062c6cd7be25ef8fdc5489f9470fa420e19829add2b3d38a327dd37806e853d5b1d0c84eae5114e08cbad4c0bcf8e0302047c435bb500683066023100c482db2e0f5afc3e15a05a38ea7b2aa0421eaaefb8a4f26bf4b991adddfe289802f00fa027246d2929011425029ac4b2023100ac2bc2593c3934e1742557e03956cd470e217c16b32894035a87cd47a7d8cc5a568b6d644872ebc2e269cba1593e07860302047c435bb5006730650230243388386220b32f102bfd7651d0edb43c6ae484f827be118c671a2872f5ce1aa7fd4eac1208dd2b1ea63161b0909142023100d94c6e2f56beaaa8cd0816a9c6333934ca1ed64559bb6f0ae1f8b0a5a254198cafabe16b36334f322c10600c6ba196d60302047c435bb50068306602310097f2f39d6a3b1221061b8f382be53b910774cef822d92799c9ae3e1c3d73ca93921cf3469a202a22efc3d31bbc9771c6023100849e81a29dc20a16c2b5bc39862fecf0f9cc663514062fb2e41d5dc43fa2da808276b8b297846044c2cc3b839cb1bffe0302047c435bb500673065023043e65c4b8f344ab23bad66fbc21bf9f0bb6bf90010c2108d564e7b0384e70f3c68685705e59d5c44796058429bd14af7023100957470a2d237c9a0c4ee8d43efbc3be5361bfe6484b5448612f2d2b84754a858d09bf04adf29190468b1bf29cd7e563d0302047c435bb500683066023100aabcc4bf093c555cf9c7663ee54ace1d60a04c0ae86216065c6a128cf3bb7380b76eed01bfecfe54d2b70e3a7a76f3ea0231008660554a71c73ff26db898e9c53f5ed2c389a8e5022431fb8b9c1b696c409264eb98ba90f559541bc0fc973b2979eca60302047c435bb50066306402302161af7606f20b11abedf1be7230b0b6fd30a6eb32c84493af0aed8f6ee04b7171f600a1a53cbe4d898f1ee6f290115202300a840c383d70e63637fcb8cbbbfa433e620b14824cfd8ce06d4f15bfc596c24f254169af0576522d0182d28806042fc80302047c435bb50067306502300d6eca1d3984ce21726dbd38cac0a4b82db16ddd7d482120f77a8c7b3cf30cf336040bf2583e586eb63094196dbd9a91023100f3c6d5f6f47fec8f406a3eea137daddb7bab8877e82443e6ff4904a5cd48d589fe196c8d7a479c27fa3bfad1a2a90a550302047c435bb500663064023045e3834900b7595af6863079e7c7ec0470242dcf69e933584a31ae3bb06c84838642e266f9e1f26e8e61b41847ff01430230084972f90dd1b4ef92aa96e9560c762a3511e440b1949b8f0087986717821a8fac96091929cb4db1153681b9abf645b10302047c435bb500663064023074d97f0b6d287ff0798c7486293788605f82858572ee87ee5700104699e49d547d2f9c0cccfb67bbabfd3757354599180230040fef827c53e3892db4822941fcae0c3e4dbb4edaf81ce5b357646508342721cf6f5007947c8e834282ea795d0365f30302047c435bb500673065023100dfe810abf53095d9379e3ee4aceb8804fb2ee070d0f02762e4d5412e188c9e08d25c2c1371ef2d227dde55ed7e5a722102306bcda0edee8abcb0996d1482d6c558cc6c18f344ece05c249f13100ee6362c345b25e1a76ef50461bba232d96ead46e30302047c435bb500683066023100c642394c6a235e6be647ce2d59d6f9241d94905c94f9f76eb19ae50670f3d696cc297cb0dbff0f22d52c254ec46e4f4a023100e1c65056ffc1d6021a21c08d860ecc365df0f8f78b75e1dccdfae63ba10aeed51b3b666dd9ab89c4dc9bdc0dce6893ed0302047c435bb50066306402303337510d3b771bbdc17d31d3dacd762db8b40bdd96b4f935f50b53e844f644aa56705d6ff9855458e5c8b8418f9103b20230048560a61d3ea8f2143d241827837eb264c0c39f24eac34905a0d1a42883894151ad320b9ad057fd492d06709a1802730302047c435bb500673065023100d98beac680d959bed64e3b73280bbd0578b818ddf38f935c8002279489ea03690eba323ce87328977e8d6836ae11ad75023045139e8a45156954a849eccafc51c78205585fa04f01d464f02de5f96b0b12e811833ab2caf955bc4cbd847a507865d80302047c435bb500683066023100c56f3bcb05825255f2b0fbfcb0f57f14301156bd0b0b2d508fcfbceb3f2bda2573782959da262ae31d6c317b8de4a8a7023100d092df7e49ae866a56ef858e79003db3265562e3e957df692cdab1deb2482a718bee39442618f6670a552bbb0d434d4c0302047c435bb50066306402303e7554723575ecf957c38db742b857eb7b532068d151454841a9ef6ec2e0f9af9cae64581b20a236da84dcfa321d1de9023050bf1df01f2b564c42759b8dbe9a27ee0ddb8850b1988e76cb5eddff1d103624b43ad4c7bf1ff4156a23cb27b4f5a2c30302047c435bb500673065023009f91c551a8d84be2142f668c5336a175dd2c673391cc71c97be62e7b78fdc6ab83701cb29bc486a05bd4a639daee826023100ab1c74da96a2890fabb4f5ba64770cf5f4aba1bb053bd10098fedd235f824e00f9c6625363d08272079e4f1c39f05ebc0302047c435bb500673065023100b9e7fc8d0390350f3a72ef03d59746b821bb9691fecb96fcf9c3b42a52d2b077cf8fc42c5883f97bc4715c7a3029926602300ab73b8b08906dfd0d0419a7244a0a6bb4ef44fa1751b41ec5ae0a1d86344fe57c02edc76e2cc287efa3f03ed25890cd0302047c435bb5006830660231009be10cdbb9a9a696312a9b9e4f233c75f8f295a6c5eaf28423ee1c42747d5536856fafa51a78b33caebb76ed04fc8974023100db151d0b5d4ceb233777423fc1551c6b549ecb7a6d61eef5ba983a006ca09504d03cce6f7525ad1c2736da36027818000302047c435bb500663064023060dcde8e7ceabc4f2f82ad746c1cb278d456a7aae18e491c47e67ec75573ef74d8661feb2c856ca3e08f41b8f60256b902307ae97674ed2f3c17de7c7782c6b3af29db218caf0854cb126eab1d9a6a13539a2af85642e4619eeec0dae8561bf17b040302047c435bb500663064023043c7ffd5a24035ee1a03f2e54d5ef8062d143d69971b512485d24f1b1a029fbce73007cb70feb480549065bb7a71fced0230419173418752e48a2c6c8bfbbe7f8a60cac369e40c496315012d5c218c3616d1d9315d6b76993e2fe364b20155cdaf7a0302047c435bb500683066023100f669f00c7726f39f60da3e695187940da3dfba060f7fadb2a2511fb983dba96e87e9dcdd06e2e21f63627e573895e44f023100b7c5bf6f34b82e89b6fc12739fc41b7ceebba1e30492c297a4603a5874d8bb15e2587d81286a7cdf02a31bc120e721690302047c435bb500683066023100aa11005342e64eda9cabad25815639a55b4a0e645de49bfe1be76596a2cc7e6c2381e796baefaf6dca672a88bc5713440231008b80772910532b7ead6273969085a86e6827fadd28c0c6bc885b2567d35992a1107acf412cd39617c2362f6aa47f72f70302047c435bb500683066023100ab82dbe4344e7bc95dc1ce0351278f7b8941eea396e6b0bdab32fe657882c58b28c7ae5d859fe79845c82af9c80d9761023100f86ea998cd4934abbb84b0fe8398a7b605d991a882bba37e6c8a1c0c9d20faa957610d6b816ce7b6465d81bbb5dace920302047c435bb50067306502302170f6e9fef88afaf0a8a4005eb78c4fc9dc971c859c08eadabcf8296f2b36d0ae6e9f749d98c5755040e0c6ecf0daa3023100fea436623c7aff01efe4ee33a3e6d55f352051c1551d31d191ce52ab6e432ea684e9c9876f99d26bdb137e6ffea65d9e0302047c435bb5006630640230513f259529efe27703b478f46ca26448e06ecba5400eab9c731de17e7337b204bc75bb35063c2c7ce5114859906a1e9b0230313fee13e66ed34177c826d9164fc6ffe853894341e664f1bd7015386b3ef0348faa4a30ac7e1130b6ece1449db66a770302047c435bb50067306502305943d81af5560a81dab900cf201fd4cdcb6600d25de70d1fecbdc8ff4626e830dae3846b4532a1f31bce5ab4827e9b110231009dfa2fc528e76b446d2ce86f28da84ab7ef4f6222d7497cebe30b85137123603f63ebacb3642d83b76033b2c5a99f1940302047c435bb5006630640230611c8c9741b91ba141d48c6f4ded2849cd1cdd040d3af0880ae3b4b6c43d63ad1de4a27c516368708856cd510f23898602303365550e2dfca3f37bc8175942ea64edc057691889d0dd649b6367680e93e5a476b56974f76bfc2841589e04cbbfe7d30302047c435bb500673065023056a808e4a0daa03e4c5fcbd4c045ac0fd9d26e902d94af7be2db44678fd579b3d6d20222ffae95ef83184524fe95ad1a023100efafef9e152884a62178d1de495675cd27a8811c899b70c46c168cb32472c1981efd11d0cb76a48524b53acd62df162f0302047c435bb500673065023100eab6ab7e7be3036fb6e4f8479945d3e1117ff0099955a6c1d478e91689a898bc74d31ccd63bd85eaf48529ee5269bac702307d6b72e37c94cbe5f0d4e9ae88c58a83a098ebb885241cd07f5adccad09b7da4e389346b272f0f0bf8444f54961927270302047c435bb500683066023100f8a9b16ce8a17404b33379c7db65c3ebc9eeeafb535f0e649646c8f05ef40e5482087a1374fbc51b0b9bee7f50a1fe78023100cda0228ee29536304bfb6d12899f4b23210ee2551fde4c68e0880c94c756a32e54af04948aa3e29c15ea9549fc1de6fd0302047c435bb500673065023100f1f1f95ff6ac74c29ca4a7695f463b30ce9b3b1ad62eadba890c07a7a164d6f251a23b1ac42952221496998658c263f702303d524c80a286a210985a932f81723aec71a18e699910eb55480d1aa6db05ef6ae7f366cca5b8498ab040bf1b2aaa407c0302047c435bb5006630640230573bf491e37645cc28fba5d8c22e96c200338be204bbd66172c21ce9172f93b95d1d1498dcdaa22b9d63adfe45039472023077e0f64e462d37260cb84940783d439cc5bbdac81166c7d8e19d1a8cb4df0b5126b35d58f8bd908b71d7b6a3f8628e7d0302047c435bb50066306402301faea0f82910c1e50d31ccd9d734fa7a9a19a0cb14410a54ea5ba6b54316336ab308ce31ca4088963f470e356c9c07ef02307f08e9c99fb2cdf6d9d04fefc6b9fe8ef9b5eb4ea08d1da4ddb8b6b01282e4b6209877b793f1f015f00868421e07ff550302047c435bb50067306502304be6bdf8e8422bfbca81d11c4888ead76c795017e61f798bb1c8d548b51be83d570ab958876705c5ff50671a58724a4302310080ebdbc634540f1c38a9f9368bad176f77b734e03ce7306f0ea9d2582adddcb376d409a7cd6f3f5218f495baa41d4bb90302047c435bb50066306402307eaee4e1b641b19e1e60ac96c9b0eb4d6c642feb60a6a5cfe789ef7cff573989bfaadffdf9b85105f92c798762a743c2023015df111df25a1709ef4207a6c8f1573baeaa75f28e391800c97d21d875eaa04de2e31158ee004109153aa1c210e9ad9b0302047c435bb50066306402302c469da72e9a067ef8d4eefe8fde36fcceef43a8e3eef73a2a79a202e6f5b7caf153315ea0eedc94c7268497ec348854023051d883c15df8a9afd04be8c3c8d05821ec14b372bc3821de27b0a4dd4d3c30c9848d492cbcfcde5bf72b12e4c815c1b90302047c435bb500683066023100871e1006835c7283f66e4944fd45218045e110ac23abf09a873e9f01ce54711b9a4393d3b318809943e2f54b1c970423023100d0bbdaef2009ac83dc16510df30f92dd468341dc5a40368cb96fdb2c176313a2e2616349533ae32c17eb97c4d99ae58c0302047c435bb500663064023064c84007aee11a4acaad10f7b184249d20934e3c3477a91630aa5d82d08f7a8b2bca2339365189fe74fa6dd62a2b5d04023009f2fa3264a3749c14e1bd79ce4b44bbd361a1cfbd668e5ce667ec1d1647e6d02689908c1e082cd5e644ac891ba0b2440302047c435bb50067306502304558daf16379ee54b3e9e3cda5f8c4590e7105c2e7ab08f2870fb59df0716bf430c41f23702ea93f069e390666d8d08d023100dde9e721d6578a134129b25e921ba7f0e09df674e5c465d6093ed06c2b28e7dbc7969c8a63731dddfd8a15c20f4162500302047c435bb5006730650230382249cba3d3f5d2cac25f3bf82ee682eb674658beadd922745d14886acc5f418544f77b3ae5a0b9934225006f1430ff023100db5f5a571dd49fa584148238d2cc39e8f21e38456e4332a4fc57517912a0b3920baaf550d0057818adfaf25a63a187570302047c435bb500683066023100dc8e429c7f7d92f19f6478e50a05b0a48539f978279a45c809a12976b21834f856c694f9e0a819fd650c6a6167256962023100f96061aa3b110933cea2eb9495bebdb6ff104ce43d9849e369bd6c8b0639d3974dfc649c651307197b2cfdb5dcc11e8c0302047c435bb500673065023027ac5a4e9953ebc23ad2e269e8d0feb1736bc67eb7efdcf665437c040d0f983532839830f6c66c825176c28bfb34ee750231008b5b8e4723bfd37e6597e139878341ccc29ff338df5792cb5243e88a02fdc8092a16df43ab66264e81f6f3aca6c5eec60302047c435bb50067306502306c3c5a9a6643f7c6c50026ad6c4430188d4bff1c658da1d9478ba6322e67dbcc77d28975acfaa982a85d05d53dd175bc023100be45c8f325f127533f5a5374dc41bf2cd8e3adeb6f185d59e072f1546eadd74628fb483e57b0a2bc427bc57ed3f1dc160302047c435bb50067306502306f7ad80e8648e79341f79bfc52487b958b75a2eade1c58835241850ac13d1e82db9db510cb34704cd8c0ba868e597555023100ed10dd9c979983d640be948118b2fcb0b4ba17beb11eee6f02db42e66b4e610bbc46a6d172c997df13dc19e4369f32990302047c435bb50067306502302f756f46d02c614dc075afaaa543ec0f52e9cf310e4c7c844f8cf922cebd9d7fd65567d358bfd369911306b4aeba891f023100817bc949f9b47536f9860e8b45f8902ecb2b236018086c328125e3779a12280f1807d40ddf78a5b59206bad96b8de3f10302047c435bb50067306502305d903a9e59291bcce0cea981f81f16e4932700a8619446edf30b3ff67a0036f5b7757953e65869a6799c4a44dccce77002310087175eae2c5e0271530bfd5718d018fbcb1ac245cc3fa1cf3b6c6908d0d4e8abeba82e604022ce95cd4174e47f4119570302047c435bb50067306502302ff326a6178ad8644f641cde5cbfda0dd628726ec63e319165dd3d7efa115b7b2471f177700221b6466b57e738267dec023100b56e794fc9031e637e561ad559b9a15f0d86b67e40b0b1855176de79b159cd1d2e84b752f6ccb986603c322a81cec8470302047c435bb5006730650230085c913192a97add9036a7c31ec7773bfba67a5e2463e0ecf1c4b60a63fff193925eab50fbcd1e3c188dc53538fbee05023100f7c65b9c1c7bba457c2388447fe3573221a2cb3ef483b118873f21b5055c0c23b039a192b83bc2ac4e7540c1ff6d1d5f0302047c435bb5006730650231009c481ae7e956c599f3943ab50d17c2868849246ec1b3b1b60efa4192fffbacb4bda1c7641af8fb3abade45af324889f7023024452867af833d33ade699132e44ca0c1a565efb4aa852e23c7bf6dc9c634f6923b9b559c64805aa093a0bc9a766fed70302047c435bb50067306502302f8c039792bb447d8dfec51975d434fca928df8a4f92bd548feddc1cf3e63bdeeb6bf8e0bbcf75737c837b91d91b6a57023100f2292332a247523e79ccf0dbe87df570f148f942dc73483c2ecddfbd1950572617fb927bd2a2dc9659f21f67c3b1db060302047c435bb500673065023100d39d047fbd0f485c4ba318399b19b137bf782bcb7d26bf48c06b02977ef2d392806c020052615fadef23e9e35a303c03023076b132f5a6bfe5cd2709d32da6893c84baa955bfa69733444ce67d9384ba2ef87e9b5509afda2d4631e36f08d038e4c50302047c435bb500673065023100e7d549b4e1da72704fc7814da77af40dd38ac192e00f7d66280bceb8a826f31f6edbcc778e3d4032134c0f85c2420c8c02306c20403314a7d6aef2c355e14960c75f34eeb0e63c8b58801bc1177425217d0f1f798b7724d74417234879946b6d26780302047c435bb500673065023044d65198f8ce1b6f854149f2c60c66f3158bbdad2364ee2bbe6405cddfd7e0e7d3d51598e3cec87454ea186ab2c218d602310098d57decbd2a3ad80a904c919fa82f53d096eace3d1326c6403b5a804dbf0b061a400145a1a3aade6abf25150ac3d9dc0302047c435bb50066306402303bdcb7c98aff1e8eed73a74bb20061f757dfd6b543e437e53f18570a1ddf8fe7d2e5d4daa87d8624d3b53c617e9fbdd8023027485abc018f2986a81f3af16500411df0b4340463f260f326d034b741625c1d15288f0bf4e81e3c0e7dc84fd65f50450302047c435bb500673065023100c4777002dc720ec0ed5bbbdcea15d4670c89673325823a49a1adc1bc696ffd9a00e51a1feadeb77943cd1980c8d24f9e0230345104b00dc1a8c29d1b65c9ce372cf286fef42ee811e16869c47386c84e228f3e7396ac284bae634a50b1d0777ac6ea0302047c435bb500673065023100953b5744eb142180089225e2d45dbefa8889b16833105220b7c4be351ab648c6586c2ec6e3ba6876bf1898909500a28a0230115e0ebfc5255659081a192cb2d2fd29f1469a9a8336ecfe6baf5f739a5ea1a85aa8b9d78430e3e0a96ed472d6cc81a20302047c435bb50067306502303941484155571d7a0598ca1644d1394e3591e8ce06d600fb22f6bbb97ab1f6cbfec9c5b045f6bf2a35883330d90d0441023100cb099245257010776874d973abbffc505cb85bcb0819d7881df1d899826860264a6eae90d33a0504e26238252fd900850302047c435bb50067306502310093a40e6a56803f29dd20f528b0161be0f6eb39400c51364c65a3703156d65fb4c15b88da310067cd5050482287a42c5f02305cbcdce52393d015daf7b03f920bcaeab6c3895f37eb37f1af0277be8f8e2f29d18b7989872bd8e3803dc7248d624f5c0302047c435bb500673065023100b995d889924880411a1666b92767998abdda63134f6c3ad84b7d6c46c92aca1146d04ba742108e0f87988782976bcf1802304bfff33ed2c9729ac90856533260cc9850836946a7e88de6d72569838eed1e385f2eadca0721c4cea36ddeaaabbd646b0302047c435bb500683066023100a00d3e781c3ef0dda4a31b1dbee2dc3d180ce6b1375d16a9df6ffc6d9a32a52cd02636f6fa6521cd693fde3ebd18b4f9023100f7398b2c4f71777aac16c9fa1951da9eb0875c9ed2ccdf8a0563132119b8765df805206e0cbac5fcf411a96363ee1bb20302047c435bb500683066023100c67b5066d0c95a22bbc792b8c27111f940060851a5ffd2ccc8d09afb8b7e25e9129d4ea1ee32afb6b366c48cbe2939390231009e4ba19fc3a8f5906abed2737610448e4cb6bf3b3757d15447ee8b1655473b80276aa889a8c3d8029cc7051501a314400302047c435bb5006830660231009503169703d8a97e127b814dcc16f29e2c62753cbd67aef6a703ae50d471c7221c3fcec4f0a795b344e30302c3d15c30023100da56e9060fab0eacd38236219c6a5f0a5a60105159c215e095ceb2b0d6739f48995bd30ebfc0c9d1af78ac4084a9abcc0302047c435bb50067306502303b5695eeb5a75ef473d6e0285168b5f1ccf5b60254fbb0f93d281ea33a284bb1a51ba06bac7fbfa957884603fc721572023100b341c8a5644edfe17dc016a5a11343361d09af71c95ae7465e86785e200c2629fc00a1a7f539e3028acbca0989625f280302047c435bb500673065023033d0410c35a19370d96468ba350d05f84a9f08fb4a71b842a00768ccd777fdaa92a6253261b3f8552d5ee3e2669c608d023100acdd418d2786a098c8a312ff5f98a0082be05b69d575ac3fce45eaa88703cc0233a508628a614b084ef27b5e335924dd0302047c435bb5006830660231009e10401849c057691f1727c50e52bf96ab913b374a88439ad92666948620494bff3568df282c11ca3a613e1190d6295e023100dade6d84f092c8c1fd093fa190b40167310f6586b69226d69dcfc2c492ac74ed016ee587ffdfc7000acbe85d82e96abc0302047c435bb5006830660231008244d7a1f1e39e56a88d67cc959e788dc411369e62a6587f47475611dc5b353d44c477a587d150bae7c2c0308dac001e023100e5c8230aabad66ecbdbd00aed7bdcb7e3d07a1eed606d81a2da0f409df0d3696e04c2b9f57dc2a6ba826e7ff9375c8ef0302047c435bb50067306502301d4a148b1a4f0dc3c295fdde431e9948dda130a33efb6b618a745aa29224e261ef28207abc92d311333fb2167ffa0eb8023100e90ae93f720e143763b1cd9fa85320a4331d4fc14cd01936a25d6a39f93a3ebfc41593aff8218d09ab0d5bd6576836c60302047c435bb50066306402301963d0c0913d37196d430d6ae9aed4fe0e0d8bf3662279bdea54ff5999e11f68ad1280adbbd0409ff326fa2e1a564fb502303c79251d89138918925b625a846859ff4e57aa8a7f2c4e3f51760937402928693a7c11268d95f647800587bfb905033c0302047c435bb5006730650230413fe4674477253d17aa35271bd74e4b5f818518a8d5971575313e80bf2996002d85aa8cb1b8e7f3f8726a6e1f32c32b0231009e3cd35587283ad2f5f7039bc9b4fefedffa2ce57a9e4e9c0935280865dc76a732804becfdd5476a982a714eadaf25fb0302047c435bb500673065023100d4ef4848dcc614dad9beb36ee8629662a1f25c7d22036b7e95409e880f92d9c0d95edf1a8d65fd3ad6ccb5b7d61cf87e023067eabb426333a89132c12846a84f57612fbb8567a4f3c24680b4164d19bad8fb7fe055ffde87846db66e203e66a644500302047c435bb500673065023100c75c8344bb6520cc3bc81ac85df018dd767a3a6b52f769ed3510a5d14282f4bcabe0c1b91916c1d6302a515e813ca69002300f7978b603993eda497ba2f943c69d6641384f500fc06563d86158958215a281fdcf2a9e21ec9d1c2c79da39d46836cb0302047c435bb500663064023061bd960b8ff1c73630f3b2afaecb1fc57b1ed25f3b3a45519cc4a33236596000cb411fb0a244fd2ccfd7efe21aeaf6700230593e599cf5fd7d73de0f673d705f87502319591bd0fd9e6283b56c4399bd232940ffb7c7430dc1ad46c3a09ac72c98f90302047c435bb500673065023100fdd3bb954293913d11dff0874141519f58f57740aac5d4fc5e8f82c2c68400a769706a45f6f3ddd6e2db0dc055f6741702300ba60281172c562aae75a6eb7205a87450ca65936da39381146f3a0efe62cee261a41e86c7e9c6452d94de4532dce14c0302047c435bb500683066023100c32e30ece7294bc9e9f24891aae90a8d3b25a6946a8ac230474aaf076438ee7be03cb8aa0e3df96650b780a5a06e3cdb023100b7914a5c92812c043b0a021d4a770a7aabd2785a75472252b76923e4264c318a17866300ffe6822d10900c09bf67ae930302047c435bb50066306402305c6a5ac636630bad5f0ebfba70d81633370880dfa8b12a663e9b80e4a91b6a09f02c31d254d6b8e2e71f89f05ebe8465023068d9977cfb28434a84fd3787e0c08da48bcaa3efb808da6a056baca2e3e407854255f1e21b0a2ebe7113359b9cae888b0302047c435bb500663064023009b440c8b0fa2b02c4045f3334708334aaa910d7f3529767a4f8a9f65585ad77f2fb1ca44bd680d4f234eda2731e79aa02300cc02b41bf58e925f69a25b4d3b38d32240b3f7749f25508c993fee656d398d4900a57daa6835be707379eab951e52500302047c435bb500673065023100f9969331d17bd015c795d50665d122d5bc98e60509da244d5a3869f3eaa481c3a463cc3935a6cc6f802baebe148e6b3f02300351c48859435692854a511943da639ae121361123fb4912fc393cf9918217483e4af7a6f12bfd6876c1c717c8a783ab0302047c435bb500673065023100fcd2434329a203ce50fa4f46b02dface00e09f69c40c238b741d90e0cec8e59ca304c1f0aae092967a02a304af8d38cd02300f45ea226885bdab27559846d94cb7ae0afe046fa224015f2ce19eba0a05947f3187ca3e64a7744775188535f344f3af0302047c435bb500673065023100978f7cfa25fafe65f605900dd2b7c30181bf9278a656c4728c548457a7f491e386d1ea7650ec41ce40e6e30ba40824c7023039c41bb5e6b4935d5273abb9b1862f505bedb8ca75b5df11a699d90d454dd151fd205e5a19cf50223b751cf7330aa0500302047c435bb500673065023100f1295a62a45e43428cdaca1293aef4c2cb2f744f368c5e9add82219fdc41e2f9c85072a9a0584c834811441b3a66a4be023049f84a1737b1d2559e0e40dc55a08eea066d002ca3a10ddf130b7ea552234da583d970d5c62917e003775128db20fde00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230050796319cb038bceabccb2d058c6f00a4fcac66b113f8620dc50b0d25ddbcdc84c1868364d047905c0bf0833ed82e7102307f229ee6db03050beae8597dd08d8a79d5549bcbf08a715d370a7b9da55b03c48c5c92061eaf7325eebd79eab555bec80302047c435bb500683066023100a60d18658beef5f430078261cb5659b7dc3e388cad760cc1cc261768795982affe1a41df017d84ab7a2f97e3dc49ddc1023100f6ac0d03b52756deb8bbbf016fdbe1ebb8a8e8b481825fbf38b769fb44a01055ab733007ee51d268254235fcdb1371c80302047c435bb500683066023100ecfcd3ee5632dc8ede02af08fdb5d09544ba488569c113f3a86dd9f401d8029a9eaac48120752978253ed0e31bd1c8a2023100995d0535e4af7c468de1518354eee86818475455177205e5da94bdc4c4e205c1b36fad80f2ff1ae9883714e5019e69100302047c435bb500673065023100fb8db495abe1fa85e4c9204e35ce50149d32cdf9a7846a10f69cad6fc771089a9bd8f0663beb003be438a9fe7a1efee302303d3d6e8ad7ff63413684cd7842bd21c8c4252d57f9b441434ee6658ca7804d2589ff54ce723780b3a719cac8f5c64a0d0302047c435bb500673065023100e29a2f30b760b9c43941b39110876545508c6038f98ed910a8e5661125ffc49c5fab1292a08a4abeae53e8992f3575280230424067481631b0aebbcf10681de2ce1db10b9cbf27d55cea0ecf34e7f12f0ab6c75e95d20f7de8149a018f8010182cd90302047c435bb50066306402304e033117a11420598a5c134f657a24a99d198023bf934591da80146f804e3f19c5b885e985a70ea7253f2c8773b51aa30230126b80de424e7a92b375b860e72d0d2206d892b943fae275ce061def676177aa495a5980ec0e306326b608271a66d7550302047c435bb50066306402301d2c899efa69170037d479fff2578b24fcf031d736a89c5081a63ac680a5cc8e6c5c5b4c08a1fc2e3e437e17e650a01102304237688bb9c285d03f51ff32b7cf8abce01a3ae98d0163d37fd8deee12b51c80d8c4015b230f00a66e56ba1cc756e6550302047c435bb50067306502303c6c347478135e6198b7607bdf086c2e88f51fc5bddcab01dde4125e9297096d9619a8948c4f58281a0a4896d09ea5c5023100e1264bd774c4309b3734e0b3bfb9525cde699d460de072027bf8fd057242ad7f79152757a83514f78842fdcdb658579b0302047c435bb500673065023012362d41b3f22fa92c91ce53b42a3d73a86a5f624bfb9b4aeefd94d1a5c9119d56265bd8612a0ab99675ffb8572fc997023100fb4c89dd33efb1110493b25ebbd70c9a3f0571362cfeabd787dbe0da9075e5edbdeddc1f4d4e9f917feaf2a21a8377330302047c435bb500673065023013b44df0d8ba201761982ff89752a11120e4a1b687aae06d7856355ca09fc03b518ceaf7a91fef669c90a4cf05e0599f023100d5ed30a21dc2743025961563cdfddf33216058325f59e7614e7c9a491e14ae52d8cf3713b0c700b41baeb126cfaee4810302047c435bb50067306502307dcfcde50caf5ada866f9b1b82171e5a15189623a0d7f7cbac7cefc5d2511500eff7ca73edec6aa0f74e105bd852887b0231009d45cd5fe8f60a650252473b09e942b395877a3c097fffb200a9c6c4a52a911c8586be53cd41abd0e09783677564ea5a0302047c435bb500683066023100dce272234511e25101db2a2b394cf3a473364991ab47fcdd2513e5191fe4840ec08547be3ed9efd3d51a7e5a2bb46b720231008e23c35477cc5539875a710fcd5715738f1af19d13e02e41c3633403290a79b20c7e1b1f78266acfb59573b3ff3709e50302047c435bb50066306402302ff67fca0d5b61b3f136c60e62b1202ef208b4f294e88ebf34b8056eb52c1d16a35a72f96f1a24016f20447e570e72a602304321f73f943e0a5c8510fcb8450078d04fa1ec8e92a95d2949d62e801d4a9dbe44ec9360f57b1a4a51eb4cc0887f2f850302047c435bb50067306502302bd758862d248d7dd496477fcaa983b6ae73ab8a2ef6abf4570e1fcf640ad385b546da3179f0bddbb9aebcd9fcc89cfc023100eef007540fd86f465761f9584f1a94592b51f01fccde0e58825dc64ffcd1ff16d2a47b04ef14271a8a604620204617aa0302047c435bb5006630640230169ef0ed972f25cf988f8087b61d4feda2f7d66f7ecaf024a015de3a57ed7a261693688445919eec9198958b5079956a0230601e078abfec612f5c8cb1a657cdb29153ceec37b01f57508971de5460af2249f327e4c2ec5ad564fc590c553c81293b0302047c435bb5006630640230630a28ed69237d04d79f42dd5051fa014b7c4fda5cc91410de388567eecab32e88a2e5236659b1419e215b6ff54b7fbf02300c528172bfe617db3630449019f330698cddda01abbf6c5c15b507faf97b9399b511b9ac480e5b23ee13afdb3915ebb10302047c435bb500673065023100c16add01ab13d98aa2c2d2001cad3915c7e254e472d7d4810d3565bd61b5bf29a692ce9060ad626336e2944558572f520230725450d1bb358734bc2f88d9d20361f89a5d97c1904a110fa24d09f2337beb36c00574b99f6f627758a5acd329600cb80302047c435bb500683066023100cd345827821f85056a0ba9b78e916e65dcfb5f7ffc6a148e4d2a444125d5bdf11f0b91290f296fec04600c1464543520023100b687b06251f952cbc11f0eda13bbfc1523cb727d73629451f5649d04a71668cfb769453cc208f5f2e4144a672103e7f40302047c435bb500663064023027a167ddd56480581a9b8a2856c5d223191d8e38b6a98f485cf0e45da1dc9be0e316216d00a76b00348f15f1fc37fd3e023013ae336c7778c7000d8844cf84e0ecdef98ed34d56d91f577d6e9446c69b48ee586eb08b95ff5a21f068ffd470bb54900302047c435bb500683066023100952b6b80ebb6a1348627056eb01f08d6bcd5bc257bc9ec336a7388325b32aaed050a10c523e63c11caaabf209e0b7eef02310084da3a83779053f99cbd3d8936673333b7d12e927d27e903d8fa3147a43e40aef43f259c40a929fc5ce0369e18a43eea0302047c435bb50066306402305929986991c1837770cd7470dff6f333f5da35804fa5fbe82ff45ea9d70f0a07a44121d92edf2929d51e71a1da25fa3d023012e0816ff593fc46674fc7fd0c967bf0bd60544b39616ab5827a68b3f9d8d3f657d8c0c5496d4894d992a22612bb89530302047c435bb500683066023100cfcbc25a3a0d0ab184ceff2063b2fffb6f80173860acf977081174c940c51c8f2198eca9f4729ff451c5afd4f4779b880231009293a5afb712a7aca3faefc7fac50f2c456481d3546800866c5755a8a170bd7a80b1e87b8def418b76d00cbb79051b890302047c435bb50066306402302ec34d48708f1aa65349cbe9e7d404b98d07b7354e73e54f2c290d25877a7eac127a7a70ab82e8ae3ed77db21b3e965b023055938bd4b5ac11df4c101980d4b5244c54156dc5fd9ba4fa7cb11250776857468f621e87a23c71aade1f8ba18aa84a280302047c435bb50068306602310089fb355b644ae52f9ee015eabd8a07c73950e4d082a3100b261adcfcfe1c6c4a418a7ad54ed52de90fc556e03ff245b0023100add63250cbaec306e4a5baf7f5255ff7d59edab639a8bfaad1cdb6077c3c2cb5652842ba09951599c57998da8ea887920302047c435bb500683066023100a8bef42d09b45c27900653da58fcfc8f0a78bb65e7c456fa2afcaf3694ea60db1461d417522fa08047525ed64da13187023100db693426a21f1f010a9f03f9cf51b2c2447921fe7d1954b1d8e993c3beffe13c1898f1daaab19e0891a1fd03931cdebb0302047c435bb500663064023077857538537b78bfe2f1de9ab76a56f778fca69968f32cb5e5d3f92270360a9c959c0c05ff76c28fde25336635a82cfc02306f1f196c9f3ca4de2d21b7dd56f7daec2280e48d5587c86a0827303d0abe8efaef1222d481fc8ca2d61a6940feb5e2fd0302047c435bb500673065023044b31c82d4af867b5d76d4fee54ee8cf11202ebaa9edaf8fcd6abe96f068886bf0a00b11eeb799e388e9f4ccb4a62f32023100da20f3175438188eeb2cf5cb47edd69beb183cfc8fd0cfa42cd08b84622debbb9776aef62969988a6e149ad90297b4aa0302047c435bb500683066023100e5f3fff80989bcad1cbef28cce12c4b72ee0cf40e0174247fedd2e35e074ebb706d8330ca18feaf7cf68e2f2b8a90e6d023100a351443ad0c37f75a163af12fa44da535aadd15541d4449ff2c302d2a4b1ccdb5ae8649d15cdd71ed5a3a10113179d020302047c435bb50067306502305ffe5d355690a477a9f14bc6bef325a353477de496d8af10f0a08a0d039366165e4b1af31d0c4bcf11937270626fe1ac023100c784f05b345f939fd0e395faf65c6b02ea72b72e0e547d46b80258db277ad1f86294428c4a756e6bdaab4ccead3c6ac10302047c435bb50067306502304182934bd7f565c50fc213509306c0ad0c4ed7c3e1b940ee997c41b9198c3156b482765b7fb9cae29201a363a61eceea023100f2a3091045e7710a459690ee1036529a8bde84fd73d9a9c85c9470c4876642803e0d0b9abb7da0e86ef15e5f49271df70302047c435bb500673065023100dfd377ca52b7e76c886e08ad79f8c9a51023f3c55ba59e09e074a63af85981e092bf9a52ca0ac5a7cb8fe15373fc98a20230747abcad9c5c5b3beb8ec03d4ed28e6c6490921a430c742158aa1ea57cb14cbdd73717b761b665164ad600a3b6992d510302047c435bb500673065023100e99b27c441e4b9662fbb5ab7a8623be164a032bd0230d6543713dd6215ff7a5e479233e6aca0a436fe00adbad946d4cc02304b531106e135c58250177728d84afa014af7141b5cb119c483fdb398db20e38a352035e924cfebad2000ba1bc83e3f9f0302047c435bb50067306502303acd9a87b3f75e8b23f7dc24768e690f078f60ed5ab136ad0be19a92576ae767bd680744101e5466f3cd5acb028e78f2023100cabb277854dfc528a2518e7e6dac60b9e9e5ffc3830dbe70dcc57ed55aafcbacef7179ee9e22dbe415c13e7ffa80f53c0302047c435bb500673065023100c5e4338968ca001874cfc699a59f53186dd58ffe916189dff708dc135aa8a072ea3dbaac20e1460d3875d703a83e69ef023019e81129eae8eb7819b238dcdee890abc527a9440cc1d13aa9595f4bd76014b75119246b70ed1a3473b71b949923a7b20302047c435bb5006730650230318abfbc55d0c7642327b2176d2e72fcdefffd5f5d7d617d8452d3a18786efbba15d823fdd937f7bbfe59e6431b2f165023100e8c7ab5644d2264b33c04b3d1470b05a030bcc73711d57c48ff6c47e73d09906ca08705b747cb6066649e0b47f023c830302047c435bb500673065023100973befa89f68ada73affec41d6c3a37c7a1e8a1d532fcf68e46a7a6541270f33a3f518849738858e219a8927254eef9a02301e223875593adf76b72bbe7edfb280d9de261ab15200bd667defd5b0a113df2b27c8fd2d027430b178bf5203c49169710302047c435bb50066306402300d7c181ef375c26f6c187a719ce3cee62d510eafbd0b8c6fb6967749507193edb9576a8487bb49f10b3a52679943ccd602307e9160a0c0d82ae9753b88657a3a1f8d904e7927f3946809589614f9eddc9eb5ba12c10591155b700863eb20bdf714490302047c435bb500673065023100a4d02a93ecf809fbc945b909fe59d83135363a132a3395a35fd0374205f339d17fafab2bf5a991e252fc46a01d829ad602302aba613ce2b109b04584e3516ebf401ad0b2f6804ca54f476298f22718e27b54b45798a8c037d3badc2973a7467914d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009e50334552ce0cffbb7bf1370659a141b99ecea812406f46982ae03c982208948f215905e0ff45e96b6c7e2771d4de99023100e2d61bf03edd865800f2c1340a4c7d068d4cffab71baad0e962e6c229755eaa58d4886b5db5f4bbf179797e0388400600302047c435bb500683066023100efe03edef727656ece8cfc7ad480c3ec91ec2fc6d44c89bf8650414a9ad471c1d945c122021cbec1d0cf8dafc93c26ed023100d9155aa5e89674e5f05e5918677034a4589af9efafa0872ab057ef023d26f661412ebc52f5b1fcfeafad623b1666794a0302047c435bb50067306502301f6d1ab05f0632def522519a433f2c8423c51be99d26099a14fa22ac21d3f3aa4b52b0dd4e6d8cd59216b87a649a882c023100b0f9577989617c219d36fd4354287bf31987012c6e3d919b1222da2cbe8cf40b875c50399f888d8d327b40f71be129810302047c435bb500663064023067b1314c8ba345864061e68821306456b4ba531619b9ebc1c6482854961190ade66dccd9fa040d8874acfe41ef8ae0320230584ecf6c799b5846fe4a45e9d129d9c73d523368f5b8b1361d2fad49552390e01da8124a4aadf2db531dc4f75b3bfcdf0302047c435bb5006730650230022ef2624542e9d293d3aa64589115cff5a1006e2203b03e79a0358491f6ee25b2bfa762cc455c821cc7d4e593af85db023100b660250c7369863e5b6b25f594a2f62d6927154f839d74f53980eb6af2a348c6491f4d71bef81e1d81c5414916cd109a0302047c435bb500683066023100d19ad442f8f86bafbe51a7fca94862fb22aa858bfbbc2e0db03ac65e80a701545820dfbc962da589b74411658b9a07dd023100e5d8bbfe6953c9f4d7aa7646b58429bad5db636d17cdcabe861e09fe749de02feac1ae3cba2d7c48a68a446b6c7b2aa00302047c435bb500673065023039b6313dacbcd935ae5dbe210df62fea633e5e658c73c2cc5021119f94ab83fd484e654b70497dbe49dad9e6ca81dd4d023100e7832fa26a3dfde51f7ce08c35c5ad8204e74bdebb23879440ca9f8dfab9567408c37018cdddbd5a8935e9773192ab520302047c435bb50067306502310091a431d99334382e95a61408de1ba89f13389ecd3124094d7f51793d664ed2ee993e054608576aad86e91edc9169e8e402300454f87dceefe21edf0dfa4624973ac8a45507fa518f1e256a063b4084d927374dbccd6975362a021e5415f9ca898f620302047c435bb50068306602310089faebb2ab71b13f4ba18c11a5c0cda82dc1beae9e133decc86feef48ac13488b8499fe3de5800244106064f31005e4802310097340dc83bd953a4a57470ad998a26425b2e7704d71ec9db24c7043e512297015185dfc7ccadc79bda8d6e9558f9aa470302047c435bb50066306402304fdb4243f133940dc0f2d24cbe9b69084f8914f2f361df365dd9b9ae03cfce39ac822f6f22b84f111e6b8a5f9d5078fc023003b716c4dff250b29613f0efb5187d9715a7244789040b926661b94eb122c5b0e8f42a1362609f204f8af40f9dc6a9340302047c435bb500673065023100ba44df8f6d5263d66da8488fd71a62512182d64eae69174712593eb83ef6e2f85ed1ff241e6ef41fdc3b472e52dfa553023030502969c2f209f80ed7df0d873948a656fda3e75efe347d669fd80a37c00c96bc074e6cd48ebd42871547422692f68c0302047c435bb500663064023037d9de8a98df01cef2966436a16ab1c49dfef8c22c054e7800816f7f5620b91d2caf14018783b7579ae9d9df59e7bdc802301a03054499eab297f0391eee4774c650178713a2d59fbe1235a83547aeffe0be1a54af81e22155459d1d0cfd702064200302047c435bb500663064023051571b39d1cc5b92297bd9a95505c441588898cecc74bc19e01f92ccf8a1c24ffdebbfeb3ee042ff9603122c2a6e76a002301c10cf68c9ab42803c1309d9b97c3c5a5518186be7aa6b0f9d55e26af85ae4ffda04ece8de6721cc6ea5a4e53d70680a0302047c435bb5006630640230440a050d27782a8b4e7215d7963e0951b1b10b6105c66906ea73068653f8cefcb76f5a2b43a78f7e71946bd94c18c38802304f505b10da43f8a13e8a1cc0018613bfd052b0d6698fc78b9128b812a3e254d8d95fe3858cb22ef8a49faccd51f6bea60302047c435bb500673065023100c6db59c81e76263e9623664b8b606ddf72609325a9ed8431023bdc6b71cc930282bc129bbd65a1302544898477c14bc502302be1c4ba34da561cfecb3ba57b484b55b32e4417914abc155b648e04d10011c99505f1ebc66ce222e80ca6b25d58c3f10302047c435bb50067306502310094ff4751a5d6dd0bca435efe39f6760d68beaebf8a13d34f3452abd6362a00ef016ffa9d0b9100cbe6ee92e4f7ea16fc02301d15336ead32b89ceee22ec99e9f82acbd8571ed32b29dc91c2810735c70ef1f350447f788da77a5c8956d8fe26d28340302047c435bb5006630640230736125f93132ca1eb7e120bf69139c76c7644b1c76b0c4b72a5b72c2aafd8ac749d2b69b808bec66412a207a883d64af02301d9b5e7a78d72eed75834ba0e812460be83b23f29936a031450ce66b0e17924231243e93e9936c377e7641c9177393400302047c435bb500683066023100a63cbcc7823bbffd4f2e87715171c910535eacaad7255ee1693845783b7792b249551851c2e457762d6aff7919678d18023100826408029081a24196f3bb776823df6254ad61481f1afc7dac8908f2a3fc6ec9dbf51f8a7e55cbd4a739bf7266804e7f0302047c435bb500673065023100f3d4672cf10d1d90df8a017b6bf8c3bff166d8a91fc5c972d20b9434b9cfac4b83e1c57142415dd7001681308022fa9d023031a8d22ecc27094ecc0a01493ba94a6f98d6e5ccb8fce01af098c2a66aa9575aa0f26fb613a22898268527acc55bc1ac0302047c435bb500673065023100f61ae49f6b0534827a43666044ca399a7f365a04f1805af78a618b0d9e22d740fd0eda3c29f3126f0f663be54a5afa4802304d0f0853f61e15c9eaeb1ca7e39c268035add5fec2cb5463c052bd9de40493238057f9229a2b5b3303475e1d34e4a6690302047c435bb50067306502307a68f3655154e23c9b5cba2db6c9be8995bc6f04d6f37ea9cd95d84618e25cc559408403c1f028d932f51d85923522b4023100f4da49411f06418f543202e77c357df2457b636f3bccb0670ec35ef4c689a43cc0e9a43d8c990cc203fda21ee81bd7510302047c435bb5006730650230687fbeb6f322770c0844972c184e4c183a86df1e37a18746dab55f11b6a173938a8b9322d0137f8ac2584088ef5b4453023100c77157c6bbcaf8ad0f32624f0f6cce067384e25d289ff1045507cee54426785baadf607cd4e0764b3f0fedb93cd1e6aa0302047c435bb500673065023100abab1935fb9aa36f63ae83132ea79e1b8205e85ddc12eafccb2afc1b7ba046f0bd7e6fb44827aba39e0676bcd84d2eb50230321a4f76d992812d033dcc9f5c301b55d76ad6fbcaf7de7958e0599f847a0cfa70bf45d4248fcb8cc91ca7085db776630302047c435bb50067306502302f12555e693b61b0c66263d767269e63511ad00107d2715dd9cdf8786d9d7f3cec3cf15df6f493f7a942c4200481cd66023100db38aa6412aa7490c35cba368cd8b6318433d55712e0627eaaa58750856b9b248faab86d0af02a9518df12421c1c216c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008a18947e093fabcfd8587e355327f5f8db2f135244de79b8c6529e07dc4fe48c85cbfa4ef33b3238074429b33b495639023100bcab2c13521899ad3f378ff69e0d371547de85a4fc6d1480c62bcd05f9a55296e8a63aa3d2e2f234bed366e5562a3ce50302047c435bb5006730650231008c42053e9d58f4e86a4b8c5dc9cd9bc4895fa9236b0f20d6206eda943aa9cfd422e5727d6fbf159eaad055e8ebbe407c023073230ac91da58c2a128755ccd5e83e7e188d58aa9c9a173f04cfe1e51329925120a082919f69d4aba7f0431b6313eb690302047c435bb500663064023078055f3f55a61f89c06b1fa7d5107c1f8deb6dd99f5b019e4298161a6efec327d911ada80b4597c9b994b3ab0d85254c023052003e1d31048b9624a9243b228aa0d1c7623b91b1cf766a3afa767c04588db5af25a15b1c084d6c77f0a08cf2c1b68e0302047c435bb50066306402302cc7e1f29ea6c6b10df793143f050a56f3d4a6d21b8812a07195ea776058e74f09a680062b90a004b4f99ad1e0f868c302302092957d7614d56a92bda6b4202cff3094027c996722808427b8779d8600ecf87ee9ad593c813f9def9aff1533339a460302047c435bb500673065023100f35c977e94b47c5df2ab4e5a25b85507c73436b4e102057344e1fe2aa5df2de6e5e02f50ab97cee2adb64a162b30faed02305c86b581c2b8db6608348686c8fb6d25e9c3252c64167a68efabc3059866056d7d94285cc20232e7a7b88f40c67ecad70302047c435bb500673065023028b077548400e8271a54b925027422ac379d15d1973092fd32a5e9e822fe90d77bf5158077f4203000dca136b6165ef2023100ff66a2ad195e1142eacbc21b147609b20cf7abe105408d6b3906ed48eecc67e6b5dfd92bd4cc169bf7cae070387dc7690302047c435bb50066306402305760b342448b1eaabcdd3c57b9702f70bc8649b4978d951b29bbb1d82331ffea24126771aa667b5ebfebaa58e41c912402301ee66d6219387af417e7aae29066c6666f6b1be86478749b45d2e49c45bfc4a558e8c301409110b2f5ce27d1d6961c5f0302047c435bb5006630640230229b29572ecdf1223242f3c19bdb96d147257feb739bb87eabbf14cce32a22740217fcd153b77c5a76f6ca7e44f62b2a023043c8963c2d2d7eb2d0b2ac66e3ff828fe3c73ed9527603bdb8556a615a993549876e7850b0b305a20df5402c3157e5540302047c435bb500683066023100c8326dd03c654fbf9c913b9a7b4346edaf582b71ffafe55c2e5e30e25048ca9f9ff75132cbcf145ee5cc61d2bb1c69d7023100947b39108701da19c7cab2c5a40d8bc17337a695ef84ba18d965236dab2b1befc1b7116100ccb778c17555e369bf48b30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023075f6e7053289432bfcd12071f700b7f764e9a89964549edb58ef4f6d5c80ef8661ee1e6fbaab3bca492e2a82363697cf02301caba32e8fb8d7e0d476ea0d89f7c4bdd7eb9d57334c32f418b9eafc468fba9e26151a9cae5323c772a89ab5f99dd8210302047c435bb50066306402305ec4872ed13ff0a4f2acac50d0f94d224b2c1378d544cf1813e47a0336b39c043378a0d54d2d7904f04de4da401e9d1302305e884d0f9affe98610a4576b0aede7e75d4f690e74fa1bd744286dfe51d748fe2337ec5539e53179b392cd95a60c2d8e0302047c435bb500673065023100e18bb447ce5d663fd9cb93c57e1e36b8121d96bc4618faddc838243b15d6893636c043f4e60074b11515e0d60b5c9c08023044f720855a18bc9d9c67994e21c9aa1dc5e378d00c5a805681596f364d8a7d6be840d60c392d663408bd5294f35f36160302047c435bb500673065023100920019ff2195e5f6102512b9a1cd1f0452db5a34429278dcf4d45e3f4d172cf1c98971e82e0f7b05631be90622f3d07b02304182be1d911dbf15722899eee421ae4657d6984e826adab4d42c9c1337e0a8333db4274f68ab4f88a40eb18dbcc1fd2b0302047c435bb500673065023100f4becad1821ba72cb919df62d10b5f7d97d0f13a8d641703e011845f99373f296efcbb7579bab9c9bb35cb290eb948f20230598df97a6012168033db1f59e3c0593223bfa1daf68c80283f0793f37f153b396113c83c64686dbbd1baa681ac26f8780302047c435bb500683066023100cdacf393cc332eb034cf32eb2d560e7fbc98f694c697449405421b8a514173ef081b481227836d6649ab9422df03b95f023100f0d56a01664a86f041ea0852f11c902f4610005a06cff1ca9af2cde40b9a94843533c891ec9445153da576d4c403851e0302047c435bb500673065023010427d1c2590c638173d3c4b29078792b5f8ac9a8c88a6219332cb9761b570fee38926d6861e759c76ae7969a55331f502310096b9265148f641a5f0e2a58577e54ab0438214f2642e4f31221371f857f5635a2c448960b6ee1bd10b893cdd0f3069dc0302047c435bb50067306502303d85810d94b98f7217117efdb72bdb4927ae932f2eba1a5f0622a5b378a99f5986971d3ba7608a2dff71db9312ccc66a023100a65a55137e6ed67d0290191cecc704297cf721854772ccf6b2004cc468c53d1aff508f01c399efed0bc70def605a526c0302047c435bb50066306402305e3b33e1cd3f949246428321cac59bfbb23d6549d31a1d680710c51b5965aaeafe0b0a7d6b0fcb65a1a58f34958297030230583060155fd9526d2199e30651e74ce9569816d2eb83cbb829c2e0cda35e795235f3cfeb8958582775511e000c5b81750302047c435bb5006830660231009aa7f8439269ae1dd22dd5ea97ffb55494c0b21e65645dc2c3e046bf56a6a51f4c1b883a939a01dd928dd8205c61ad5a023100bd2511453ac8274236a0bbe9c37f3cae04025398fea1dda01ff66bb827960462f9311469d135b11e4799fafa9123213b0302047c435bb500673065023100c3169aab018a7fcddddac850a75f9099d40ba7d9386783b67b183138da5cf10916841caffde5d335f0bb7d2984554ff302300ef8fe3f89c330dabe4e3ce7a9eee252ec8192715f9453a6188f51e819a427eb3f58566750c1255f3896cb5b3a2a57680302047c435bb5006630640230057fae870358c4f966350c831f90a7d12618c7fdff872d02e9054c689ae716456480eabca7a55844331742f19d56f03502301dfacbdca3f7e21cb88fa3f6b2213d9f55c89e972eafc9b75056d94c263951398595a2e990a2b9048d5614c877fae3aa0302047c435bb50067306502310088b0c400f2e96ff9a4abab1c9a183e6055a685dc7d6a348b8af7487113cc1f1369e06bbeb3f999d021452dcf5b8226ce02306a300ed38dca87999cb230d79870cc33defbee330753d062c6bc91f3ee85497d8188dd57cf0a48a4f49f13adab6733f40302047c435bb50067306502302c28dec522a39e4c88773b4e9521999d51ad03f3b69a48aa8a910fd92d6206d646cd67847d1fac94eec7cb753ea22af1023100a01ce3b122ee23d6e62e33950f6f0489683904fe93ba2a4c28cf31a68ec55ccc5e490647064568ce7c52a1897fc214340302047c435bb50066306402301635f4c97035b3f547dbad649f2c5dadf5aaf5d2acdedfdc420740c085f27eb96690476424a5421f79e6e6d4d34482c902307a450c6d9dc0df47d40d7556b544639148ed406b3b5ff73742bcd4bab61bb3453f12e1652e2e90585cc3a42b2cdeb72f0302047c435bb5006630640230628bdf7370cbaa412498d60ad656df8c51273591ef9da3be2a3fd00221c19f6e7d71623ebe4c1025e47104b180502f7d0230363153e3a52f922027699ceb1a12c8576f4bf399ec7374a871aea78f063e5ad9a70c2b363920d90c3b4e777f37827cae0302047c435bb500683066023100a2b8b52864dda27b8ee35c3af200c786de47ffaf49c61bd486194a0e2eedc205f8a2fead76fdc343a2d037a88d9bad15023100f750da59a8b02725a314e85cd7cd034481f5b84f64db9a58a81785c4b7bb1220eab85bec6aed80508354609a0d9e613d0302047c435bb50067306502304008900a453f5e7b3c5b0d1fb1a8079abad949fe408d9626b903b4ed34cffa064002c52a1ce65b6a7a69489c4fda2df90231008335835bb4c4cf5269e70d8ae9bd6bd5f3d67ed5679fb0c8d60e52791cca149604c7516c53b59c4381fda6a61d7795710302047c435bb500683066023100c3c86535c61ecf2883a569934e9d0a97df97c1935fbd93f5ea8f563d1941ae11ea6eff234b38281efe75b2d31cbea9e8023100d9a26115cbd6f38777bb13e66f314f3ec2f626186dde378d8e30dc83a1dcfffd298e85c086bfefee46a897943aa86ec30302047c435bb500673065023039db449cafde938df4f94dc29ee97f11d37e0f114d098886f0feb9f33121c0c2991ea53fb1f77343745c347aa77da995023100d2ec19732f077d2aa2f4d9e8ff0448a7ae0745872c04009bce90c72130eed419bc0a923569d6a49e437e87f6e28794920302047c435bb500683066023100c28050adc509f29336cb2aa95035ea2dfe7c3977c614ec0da9f54dc35da6d5ad72b33159d4e59b1b69ca04e17604405b023100cb993f58b9e9e3dad917cb0d2e2dd39b519880eac75a31cdfae7a362dad3f6f11e8c2783b1e0658ffe25ee3b11feb32d0302047c435bb50066306402306fd499dc68d092fd63718a3e0a74a101c5aa00b306948e7ddf722252f1efd0de7e3f5ea8e44b345c032ff2e2ede55f290230217d4aa2c04b49319182964d2e14fe0d504d6302114fa7b1f5028bbd953026422efe721f404872e1fa1214edad7e5ff40302047c435bb500673065023100e1d2961715d4beefe75ee5b5143e76ac0ec4c07268cc1a61c9bcee3d5ca047cc6593fc5544ac0f8ebb0edcaade2231c8023017662d709b9b3e6bc62e27e0eca512bc482e199b81b39960e41a0577571e884d7f0ccf7d939404acee63a2ab1b653eae0302047c435bb50066306402300e7f4a120c88fe227788dd584286e1dde0602df44d593977b14f77355119eea5f07edff936e5d12f06026d3f5b59a8a002300a585aecc40c3319f225d0b600dc2a4b61fbcb9e04a8a78e90afe0a29d7f12a6421a02c32201afcb3ea0fad569c6b4cb0302047c435bb50067306502310086e995b3416f6881ede52dce1e0bdc33b82feb1940777affb8f93fce2d5220d54398b3f080257324dca6edf7ea33958c02306b1401200a09ff156b493ea311d8d064154308cbd1b25c6640a6b0755467b4be6c4df614db7582cf88fa7294f05e1fc70302047c435bb50066306402305a120fdee2ce09ccfcbb0f37df642e41e58ee9eeae74d8e89e840cc774f3f2d795eb920981ccfa4d3ff1273379dde4aa02305acf26375718556d9d23e3f5ea93ed69606c674ce90cd676aa464c4d25a9582018d1dab234dc09d6b5f50c2573627e020302047c435bb5006730650230222f59402e6cd814a67e2e3c21136cf6f957d84dba96fc3193d3e727544e5f5d5a6da764ce7727810dbdcff3d4b15421023100ad18697fb2fe992efe2fffc3cba98b571862c2b09eea7c67afead4360a23975af0083c7a8a87a1453b76fbf7576e42200302047c435bb500673065023100dffc91e3edeb353491cafc876883a0ca6e98439c9803f1b936a11917d377abb8b59a0d160c6e9fdcb9fd6fca479f43b30230592a8ef2c16eebf2bc49fa6a8f35a02475f767748658b1c59e51de3b7d535374650979c7733c1b18b355ce5e99cb73bb0302047c435bb500683066023100fdadfee13ef3a37981c4daec3e4d4896c8527dcadacf7ec604f5cfe0b3716ff506ee4ddcec1c2be79e09afb0f734de48023100b4c0b674294b636e2728c9a71c2bef11b5d884b84154e5670b3ecb9efba31b5f8f6d96373d0a701ec817b89edc060f880302047c435bb5006630640230026c6fe92417516c9d3f3989fac86899bc15df286fa9f0bf4f039f400b7a17961867687d0a475fc1db76fb029bb6326d023065c820a65f43ff3ca8bf3260a8dfcbdcbf475c63e4499c1f5b0f40a5c0948396ea73565f3c63357486603acccc3eb9070302047c435bb50067306502305d62796fc51ccc3636e7c9e5aecac6ee532710c4f3273de205ab0e783e5b0295bbfeb452505692fd6d24d44785ef160502310086424bc0004f8911fee7172c76f951f6ca526a9710a3585524e0bf21add5fadeaa0ab765ede837c96be28267ad5c68e60302047c435bb500683066023100d26d89b9941066a17ee6702102193d692d438e888583544ad9d347867b3d26b5f732dcd7cdc00ba3684e2685e3b539ab02310094021da6aad7327aa87c32b19a89ca3f8a5e1131a2e6a07d0ca1a3c207e8bedd2d383de56e9a92f904398944c1a03e150302047c435bb500683066023100a8b6be456806db00d066c164d0d71722dd0a6b97c37c7f0bcbdb5eb4810d82b248ee5a552933f7249a7356e10f13b4a7023100883d8aa37baa0cbfffd90864b3e54ef6c4203f40bc92f9fb0fd969d64248932e72f18fdd133371e14e5fd3d54b4115a60302047c435bb500673065023100d69b46cf7344d2732347674ca645765854ec6abee40acb71b9074a5c378791ce86aa5c9c2274890f1093100a1012074d023023719e9122b6b8f3437a500044c5e5539c6573f25290a3a28ef7dc619b8595bf2826b0a7e5bbae8d77fe5c3374899e1c0302047c435bb500673065023100b3477a52ed5134b1fdb4844adcc10f93a4d6598d6872cc0cabc604048d7bdde203ab69e9df0a08e97ea8a253430ea42502300d3077a37fdb436a9a6dca6fea2d4353bff5d318de48aa76a1bac0830ba07fe95fc97aa262bb7afcea2ac20132c2761a0302047c435bb500683066023100f4e4dfb45e0f7d251d6128beb01f74b3aa4946ce44bf0d66d86f6a5ea8484327ce22cc2783e658ff77b6211fafd1b484023100aadcba871ea70fc22b1c45a44519b3348ae77c7c0b32b6b24cedcd1a2e85d1dec8bb91edfa27458e79643d5cc70d78530302047c435bb500673065023100a4853ae3331310c5926a64a0dc74c2d988bffbe04ee5f81a3f7aec48c0324a575d3b9480dd20d8163954ad3c8b2d31c202302886d7b65ac5425bedc5225ad4eeef5122df1cdc6518df8cb5dc4c47f7d0e89b9b53d50fafd31fc575b1497f846aa90c0302047c435bb500663064023069a74fdd8a169c7c5edc9049f77a3fb9d54eb8e8acb94c4850b75dbc35dd0fc7c38b8e3a2c20aa5e027c4a86f4ccfb6b023027e19cec40c057b757ec112fadc422818498458ceed02ff179113b71675eb17e2be87c718f1177d4bf7b68b646da1d550302047c435bb5006730650230136a26a7b6d3336ca69490d6b3f659f9344b5990aecc8a0c2ad5b0f8c359a2801d603d70b8fff2d5836386c19c1eabf2023100f51f55c723bd50669994d5b58a6bff6c3626157fea6aed57c646e9be5da420e8bf760fa9a4a83e6ed69738f5d41e8b580302047c435bb500663064023020b48071bda36d7ecb04e152fbb01d95880bf7d70091a207bd78857fbc61b9ee29c4dbab6602c00d586d48c80818ac2b023041eaa64ef412a09ad483b3c8a2433ef0e8855c48bbd05dc557aa341cbad810d0d6235ac7411b0df5e01a3307f6c159f80302047c435bb500683066023100b861280f08ec8f85fca2b948a5b9a627037672200647bd184e0c5d89af491df64116cdad853b44aa1f769e4455c8d2b4023100fb523a3fd7c8466a0dabb49390e2d61f6a6d7702b13922785ee55f049755a807743a2f2276a43263e868036af7967afd0302047c435bb500683066023100d8f0e2a9305f94dd97d4f86276418e210d802854a978d8fc80337fadb2f6394851edd1d1cdae30a0a51aa090c14c794f0231009b23413bc3441328e7b0bff2326770a5ba4fe6e1f21009baf0c1a3e4df53480e8fe5548149870313d63e6f6bbcb4c62d0302047c435bb5006630640230218cd51127935fe7749773c22254b119d043681c52db46e895f8dbdca505b25c90a610f81b7cbb6d36b88627031a5b88023073c9fab93f9d8efb724704efefca0071755c5d903a8dc6ef323e2734780a229b7302651c96c4261870a3d72191b04e6f0302047c435bb500673065023100fc4ed98b6fac56f301b0bf86c48ebdccde1ba6b4ed368f092fe1ed99ed9806cdf8cde0c6be07bcceb4cdfea10032e8d402300d408377cd4c047336304112b47c33ef2fcf61aaa83ea0d87bf3e5116d8ef96f5832f9c9a5776b36157047e5f5dc6fab0302047c435bb500673065023100b9d6e848d3f35b14180fe7ed6fa94c85df24db6114dbcec5afc9dd3cb7cdf3123eb58053420ef7cbbab0e25e6824b55d02305229cba0ce8e324346d923269c0166408af9b11af74d30a4e103f128bc62ff06a869036b9a165a0264453749a7d0e3d40302047c435bb50066306402303be984f43fc2317bfc951f9914f38c3ed5094f6dd5145f5b719894cb7d5c492acf9d3c608fe52e59224a6878bd8e268d02303c10f11f988bb55541f0a672133e453d6aca0c729869d87cfe575f53d625e6d32b2ec56dd84648c33a6b2b5e3500d5220302047c435bb50067306502304d5a82f260e7dbfb0a496424dfc1b63fed89fd09c8256a6a17b2867dde2852fc6e2a0f18c15bca466768ed2876e1722a023100a7d271c0aba87cb03cccf3d16ea2d1042c4b0d675891d124122ec4286d101c9cb2930edd802f3d31bd221059e5c616ac0302047c435bb50067306502305e4c0345c7fc65db9947363ccc44ae80cd892f28f11ba210f3eff63403fe3d2a48df8af67c0e6779fcf5e56fdc3d9476023100fc0674d98b60f921e4678a5e3a49f94cc8ed224adf19725b1b3f48cacac07943ae3aff74beebd7c2cc0e4f89e02d3b7e0302047c435bb5006630640230381f9cb77d293dc6bcde3df0c90a309c98d9dade1516aaec9bc904fbbe98deaebcf3bced3519e84509fc82b373de14c8023010e49bfcab99dd94eb43f3db45326da00e286587464c647300863514fd92de20569873a0c8cb04c81f3536bdce422dc70302047c435bb50066306402306d854aa7023e55a17b477121073f69b654de0bed15379ba22dbfd32f390463da6610eb9540aea841f638ec3915d009d102306ebd23df65694a8c5e34ae6f20600e813f86f051c5c7aafe5ac3c9e71d92380ca58a91a5e2c2a06603928fe238bb29000302047c435bb500673065023021e90f811907d7f486beae46c2e97096409c780ba0763749cf39f08ef70814509228bfbe2bf2b8a279e7c23fdb935164023100e9f1cc8da3fe91ab13f42bb88e352f5d8eda15ba98dc1b43d1cc7892909e935665f2df17be0f4d345a75f6617af7a95f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303916291bc49be5746606964c9d20a75f03bd5871251f7afcfb042c4349d59931a8b21cbae69bcab0d368104808e23af1023100ac0f9334fde19acf2615b071efe9023a2efcd1180cfbc99b6fb0d7d5452a60442b81a934d4bab91935a6bd655458beba0302047c435bb50066306402302898838d13882e039dfeabd884baf936468e097d02a46a2d69549f172061762f0293331f2180e4ca852cd0a7609f071d02307f52ad80fda44947f7eee8857e955f8cf91758d9e8f1489a46f0e01eca83147a88a1658d2e0ad9377f1f7e3051684c9e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eb0b64af72a137ec0161bfec1bde25a4c1d1231a6a99413027ee3a156f16aacc213222ee68410b268a626cab0d735fde02310084f063ea0c393815770f6730e40383bcedd956c724c90eab0572918f1b88993aee4257abc91a7fb1d90dc48341231c9d0302047c435bb500683066023100ce81e6f5f0d4fe7974956b2afee346c87368d97430ceba50487df6b3409a5ae86c17cf202c6a953db3e8064467bb9b7a023100a50f134428fc5e1b9f9930f5eb6d5b563a7f7015b2ef922610fc744a5b797e39867269f668aa1d13fd66b0c99a89d4f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f968ceb990e3f5d6dab487e776fcee2349a8931e747cce41167ff8fc0bf502cf0482f099214fd2efef44de75741d79ca02302686a2b0d400508eabcdf9968451d4127f79173c0f7b4581a51b931190cd73524a38ae50e68f5456c7952b4dac960fea0302047c435bb500683066023100a212b6a66151dca2b57dc8892000dadd525f62d87bec20defd6868063fb1b4f98c076e187809c508f118ac264e689d77023100ba3df7a86f676478908a3381c23d27f3aca5a4dabb7eeaf7132067f1765ed3e53cd72202107c82d58b40bda759d061420302047c435bb5006730650231009341487ecceff1231692965ab1400a9eaba0e8c98c03410f6cd4eadb1072225e1d0096824aa9c0d3057eced98b548da402305f5e91838841b31ffeca832a0cf7b77368901a977358f573b5144a5e1700312819aa71efa9e52707fedf0841a304b4110302047c435bb50067306502303328a9a67a9738209f818d2500faf38bc23e4065847251e338876b1ed9383237926aed3aa68395809bc9d50fb688be5f023100abb55285ac6677b244204817ab39838c1f42a43447e7ed6d0742c0b025863fc9c84fd6ddb24389c1b3fc23e5f87b1eb50302047c435bb500663064023060cacae254de8e5b26b925c5292da0cde0f503459237f1f98f6104252aea230685aa25973534eb0f8361978ee1e8296402303bd329c4fd2706568eae0c23f0e07b2bee6e0cc94e5e8ec9bb644b3bc65342594394e231bbaef57d6b71f2cb8f8fa8f60302047c435bb50066306402302a96b25d860cba0b3ea78e35fda1554eadd99ca8489ddf5b95cf23df63e2ca2ac147b3eeeb193d7d4c42dfe7466d38aa023019b73b10ad21640610e850f157c30be3424511c9123857ec603ef4925b58d95465b7bdbb5d172be52b7731f78762ff2a0302047c435bb500673065023100b37343375b3ded105b757b617e7280b5a71f53d90ff5112443313f1abf5e42a9ff18cbddd62e5f90d805e1226b9a49dc02304d6db6e09aab1e216771b3287948b0b52bf50a26d3544e244e949de5cdfcca3d1cc94669229d986113496096c3563fe20302047c435bb5006730650230516111fde2f8599af9736375681e29d5119f4f25e665ded18218d98b4c08a06632cd859be1582959adfa098f35f09143023100bea2b2aa88477d732e5db37dd90e834fca09238ed691046a66ccd1b89e8a9ee802cb500c7634e816ba925b93e0017a3e0302047c435bb50067306502310089b278b8a21e4c5787fc5321ba4dd6f50599458f89f521df5e3ab61a4c36569d174b0394ef8fc6cf14f6cd07dfabd63b023037f6fb35499f2a27b930dc2350ac34aef8f05630def9a0e4b98f29c771ee24fcb70c159ec7ccfabdb1855dd03f7258ad0302047c435bb500683066023100d015c21ca3b238057e321eb65b7349f7398d4da513bfe31d959764f4332f0cca03990f8dcfb387c9c0a1abea77a07ec3023100ca0b482e109179fde2668290cc87be9bb7f6d0862cca446ba0e53d3d6e6b35c61b27061105ec5ae97dbe1dd2c3862e830302047c435bb500673065023100b8c0706b8d3dd999d5157804c0cd259ce156557f9e7d290aa74f18fe8ac1b888b0f983fcb49bfa0e858fd9c9103f54a502306ea6fb178d38a8422a734ef7bec848d5e35d11b24f391deb7ed8e2ce073d7a3b844b2a1f7a495701cb402ba62bc71f420302047c435bb500673065023100c4bd65e57d1f8afdaddb3e4c39446d8e62d486fd1413e265e486ad378078fadc2fa9e91e12ae08f7bb4c0018db31114602300e905b314c5ad996613154b097462484c2d0af5b60227d42b64d315c6c43390c2d4eb52dc4a3978bb1b2d7aa848bbe060302047c435bb500673065023100814e7874770498f62b52fcaeb4ac253a49de5a2f05e2e4a552925a0e2e73a86ddf0ebabb009c261feed878fd1c2d8f90023079782be6a385a837241dea92f36f7b7f35946ebdf6826b9346055b5685a5dd49dac298e6025e178dcdfb2a5cd06b9f370302047c435bb50067306502310081b1996a7b70f6a796dc00ace02b98b05acd4399c94a03afbb472491647f7b76d94995767f57a57e24199c3601322019023017251be925c63b01671f479b35bc5efdf1e643a24c0c0672b1680f4c75296928c35edabe4a17a41014386a9ffe2152790302047c435bb500683066023100f1141a9e68211c8f958a66e7c61f9a069d3754e7d61f9c29b6ab6e751ea9e0c8dd4e68b7e47bd663af5158a8b9f5c962023100b238eddcae338b5316e06547cfc27631f3248772ea6d05f2c9c24aac74b5e81077065a2f35871d36f75bee3f6bd403aa0302047c435bb500673065023100e895656c82f52762be426ed72b0c4c9b6ca4002dd60d8c65c3739223b96a011c374f9bbb8eefb15ddb60a3e9eca8f96e0230676a7b495f3186de5ce3e96b5c47198ffe28a4064065af5b1770e65361838e6b7f2974109bd2a314d7c4db487f5f16390302047c435bb50066306402302c38bc5044a035338771582c7f32895fcd71a688e38bf0f9a925d6e3d88c2a657f9b42c24c3405d7886fe716f1330615023019752d3a9d9697a1a709487736e4cbaf02f58a8327b5064ddbd936b88d5c6bc63606ac47db0b390b19e4418c50d980dc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310086fac3b9cb95543dd27148073593193905eb36058600a458287b646e0d4a362c2cf3c2bc2494bc0ea14d7c157d0b6195023029314faab614ebc0eee43c37717c568cf1ae4c692fcf20ae9635b347f88b06a6066e6eae6f77839ebb61d543dd4d53040302047c435bb50067306502307b783d8c72cb128ad80edff37c0a2c4f15f6292008f96d304a5af579068910fd7dd99b4d8360ff430b93dad8e3b633970231009cc25d8a1c6cf0c8e292a80e1e5706caffb23b3330bf726d8fe1a56d91910e59ad8997e0085b9d2d9be332931589a6cc0302047c435bb500673065023100fc2e3d8634c6cd3d15a627ce6949b2bdd148c24daceddfb05265b02d84b63a9b4aef6e6acd7ca4fdfe9ffc83185cab94023002e2d19ac715c0069cf5c9b0223ce93d346b8beb367ecbd1d4ea2aec702cc8a81fe717d7f537da48aaeb29a5d97edff90302047c435bb50066306402303eb52b3d8b71992e5ec067366bd7d79404a35c75eede2b03abadc489eb9bf8ff82054043a4cdbf1038ccced6d3dd9608023054f650167ff034afd91fd437770383e2e8a02f392006f4af59804c633bdce019ab2fea43d83e14471cac9ccc499fa2ca0302047c435bb500683066023100f7f84600a7d2c1338034fa84ff4120ec71f106aa4de942b0f2633361ff82aa44993bb0a6362b075525f60d1ffda1f37c023100dd0c75b3da7a76d053bf7e82220bfcde8a2cc2e0cbdd5a72b294ccaeb850f20d4cb3634a384769caaa565524466d12da0302047c435bb5006630640230659f079b40dc383943a3da2f31d5dc0ac892f7a04fff6c4789b816b2c3b4c5ec34b45984574e9c597ae3553b8230df6b02305ee2c8cf3718d305e53430f2c7b7c834c65f47defe52bac9eb1d7c22d8519dc90dbc0488669ee81571a1ddd469e4e2f20302047c435bb500673065023028444f3a5754b997df35b42e5a656d2d35c44d9b768a2ad4d5cb130796932b11a5ce517c895b04046d766f3e77145fde023100cdb008692c9f3e96cd8304dc723d40a25d8b00548db49460f9ac100c61b1c75d693016bc9d066a7f841ffe013269bbe10302047c435bb5006730650230032f35b0a44dca6341174501dd731d2686cdaf5b6c50838e2b4cd9cf57fab90311b416511df9af27247c45395c7f9ab4023100fa90d89fe5851ac6f65d20b30fae2dd7314e08b85a5893b8c6229ccc6c587d65a8fd27dc3b7639bade03472b3c681b6f0302047c435bb500683066023100b3fd868e65519cf79686ea247c0f889c630c78a0a28e4a8e63ae20dbff32a36b9ae8ddf7171255b6e2164a34eb6eb033023100c8aaec09afdec6ee5d9cf2420ce3c3816e5f0087866cc625cdf48aad7c25067de55332a260f6c5b7eabcadeffe55084b0302047c435bb500673065023100f92aad67f2e13d831b2835e600532d9587d187994f42a65aa81b13335142e5c6c6326f42a7b8e4386608a745485e6d67023068abeab144f34e70f49c44670e2b6ad51e2e6e69b6295c8843c6fbadbaba6dd730db67712942ceb494773fe80fd80ab40302047c435bb50067306502300a362022b099d8f7ec6ed45c7cef42cd54eb07a1c61cb1b87e3e08ec94030e805ee783a5dec4fbf15d1dc77400b5e12b023100ff3cfaa1a97a3aa3bd3e5c422fa31362538c0b03c692d6648017a2b4170f6f7d76e2420efd67f316a7459eed0c8456810302047c435bb50067306502307631b5350fdaede68edc681a678818b63c033f98fe599930819fef06927e9f60966d8dc5107ecf5db772c625fa173594023100f0a1e7d8fef7cbff88e33cacd69246287388beee89b6303910912687fc56d9d1d0f13dbb8c544659db0eafe40c77c5fd0302047c435bb500663064023032dd46fd97df180b1b86bc12b1f1ecff3c23f25fffb7d80877f414e234a625db6e5a8093db6e53630ec4ab595698881302301e6283577390eb0ae17a81b6750521086bbe69c284e7596474fb4386cbe5c6d9a2a697090a8e7c429088331832da6c900302047c435bb500683066023100c22cd2da7473a42301461f04547adb7d8c5c2a4429c767c73d168c7109e330ddd000bdbe610835be3bd8e4583cc3982d023100e235ba66793407b42614ada1b3d1eff7b2e5258dbbbd6e85414fd0b24c127fb0916782ed1fea6256875f3273e877cb0e0302047c435bb500673065023035b65e900cfa5f85a86cb458f66e9bf8872f83b11e26a252d29516477d547eab9fc64b4272c88fd81ff638cdb6248e08023100939219136e57a6d09c00a9033a07e6acb3dc5d83c9a5e57e98a0da71d7b1e675f9f510e6e7c83fe8c45b52d5224f32de0302047c435bb500673065023100efe1f56ad0ee1e5fc5afc57a481ac6c066b7dda0bf6ecd5a82bc5a14be5a4becc8550646d9485290a352c3ac9c34eb3202306aaac557d9e07c8707ba871317c86259084524bcd755abd6bfeb12d587ad6093f714f3d00d6d46bbee73d74bc4e59c780302047c435bb500663064023071262bfa7ae1bdec16a6a0b55a7edb53a5730382be995f48c74a32eb9971875c07a3c9c45fe60fb8f5b4c65cec41afe102305d2348fc44d7865c18ddd37cbd8cc617020a71b2e795426202dd37122ecefe48919593f1deeee4d063bbb4299cee6e7b0302047c435bb5006830660231008f1196c0d76d4f41f30f52308f4d5de6cbff32b6a29c94d6466e2559d8f523fbc57fcaf903a9d3943cc809590f24b5a5023100c46815649e3bf8f9d8c27219ef6e89e8db87f1f78cb732bd0c8029d1bcba21262f4154888457430fe7095b6db03296ef0302047c435bb500663064023071f3344d8b32c7721a8c1b6b2d7b6cc948c3304411e29ad408aa094459677f712d4e3eb6e5438f39116f55fb836dcea30230502bc74c4e6ec039a3b95e8092ac52a4bfc5b0bd41f967dbeb4cb3605b0bbf6e171820347f98ccb365b73a2b8003aa940302047c435bb5006830660231009e17ab6ce4c68cbc1e434442a0da5074a80cba70e07d628ecc2624abbf8ae81301c28779d558c23e5666c66d69ebca700231009da2ffba6cd8bb42cfd2d7c6eaff76eaafcd64c8817ad219c779131d678f2607c654daff23b7ddd1f89a436d780564ef0302047c435bb5006630640230677ee833d9272ffb8bacffcd18bdd157a25ab035e4224f9bc407ccf2caf6c8118723a6fd7d7b449b5d47a6074c2e4b14023022cf920aeec2459bf55ef72779389a52b62c73b56b434f50b5056b67a26a4ade36c61687e4a9791c3f2c4361e65004f30302047c435bb5006730650230040eb53cacfb6624220915545061d91e512e69738e85b50b7f6266346fea7a4685803cede66b628e1cc2282c663eab89023100bea6ca1fc98f8b58ade8dcf10a3c8bb2ed235bd734118b95d32d77054d8d27e03f2c725e7569fb18f40526e8e6ade08a0302047c435bb500663064023060583b0ff22b410b047beaa1490f40bf6be04d489b9d0f464818e1a43596db821f71404b7485b33691836e1de9ad0abf0230362dce0502ca5a186cb8ada4fe8649ae34aa082577205f738fc4dfba1ca84bfac1d286bf285a95bf305f26f25110a31b0302047c435bb500673065023100df68562b04fd10e8334a391b6c0ced4fdd2a6f6073a3f725c01e47b2905ac871891f82effb69487f200c2a91345f588502305e1d78bf3787fd40d60f3719c4163fb5460d0f7348d3491f9d682f0cf2bfc61e28d86cd5f4ced82055a5dbccb207272b0302047c435bb500673065023030965025546635890e62674c2d4d860f307892ced6f12eef850054a747f9fd77d639f0b9c59541032ffdb1a8136c0d5a023100980de682ca296c4a4f74cad62b93fe0a066991f052baf77d88bcd52cc3dd7d728774b4723c01f926152d18b3623de1600302047c435bb50067306502303081341786af077ea1f4f170e3695253ceb9a99ab792ca6064350f4fd667a54eb4ab1eb708565e4d48205f8acb512ae4023100934ce712b5b12a6306e082bc30605750164dea481fc84a4c8b1ad00dabc354204f9f4dd34a17090875436be3b4d054b80302047c435bb500673065023000d22260ce11a3ede8594b6901bbfb6afacaec798a4bb2c039fd9e6a134f88f832f61b121b0633ed461faf298160338e023100af10d9d2ba319aa8351919f37a075ccdca9e8dd593571cdaa7fddd76e310ca100917df5708ffde5a882095aa5e863d000302047c435bb500683066023100d8f24c004e26c82f414fde836b1fa25f5c63d9cc905efc61c138ca79e824ce999a8bc302d055348127e32e1850246805023100ff363e1bf97864c450b640cd7f889b71d05a405b2b6ccb1f100674dd9a30c46da85cedd4d849232749de83eb6a339d700302047c435bb50067306502310095d5f79fbe4ec09b4be8aaa4b053fa9be48b5127e90018c9ac647f1dee7662e4da60fa8cbdcd6b540113adcf861c042d023027a132264382e6346c3e2f37465fe551da6b458714331539e4f29329c621b21617bab9f5a9a06a701452674ffe6009600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cf0aaf573f4873b6dad364f373257a803330294b7a6537139116e8e9f074ea1fa72b754db3f8baa1351f10b49065c477023100d1be5a7143992a0368eddbd4cb0142532213f3b669ae980f61e5e27e3b495fb94fbd110fc2b67feeee80224d1564c0a60302047c435bb500663064023024acc921ff541a3792abd21a239069963275b5a3b7177ac9c0a87a87c7ffd90fe66f39b99f6d93e651afd6d870f44cfe02305f8ff64673f5d1186a29005c831d824b84e25f793a704e0975a9c5570e3e40b1f724ec2039bdc0ab478b22495dd0a4970302047c435bb50066306402307d71d75524b691531e567a0b9ea9015d85a55b58e07a84fb99decc86301f2d1e890bf1b8fa30138c8de42e5aded5e53e0230082b1818976936ff390a99423115c6ffa9179fa59132fa5186c98d4cb27a876420965938ef32acfa16049d12d9c3f7560302047c435bb500683066023100e48812ac5e876c849fa32762f01ffe5bbe0e17c367b8d49e6b81088531f410a45f412afe92499c0897fb64af36c5c910023100d6dd2846cb1889d415e2d11c31d3dc6b02a2feb47363be827e93ee6077464e4ae68d16f4f02a702c36fb67b869a092c20302047c435bb500673065023100b00e8f0915a74c788c7fed728e37ef2c0a5fdefcbc0e63c8fb2fbbfcf6ea7d23c9c898e2b8a0c99129b546565575930502307e9f330f9e251b19a53b0083a5a4daaab754d56ad9946e73a8b839ae6513a26d3810709b466e281a4c1d463b02c1b57b0302047c435bb500683066023100b6ccf9d7daf2dfa7e668a598702973a24dd6ea5040425210a3daf7c37b3e3c5c898b39060ca2d62da2a2cab2ada952db023100a441ff3c3c21702b89004be3444dced9ef1be5a882ee10c0689bd02bc4f070d29189335e854605408dc0244d6272baa50302047c435bb500663064023046c958b423076e26c9f4d00093242143ce618020d1910174a47990d70775335331fc007ac2b7657af8c49d8e428227be0230518e899604d7c66e784b7a8f1a783004d2622e98936d8e9353323e2b53f9ac035220463326909f1033c1185a5aa27f9c0302047c435bb5006730650230269baa18e4a127b44946f3402b1c2de99a024596c5777221efa92042f66798417c4df4b088c1f8b3a05e1a4da6e0a76102310086e6fa43c884d8c80f8faea80d2a3d5159b301c1e6ff584b5da990a6ab022eac7a5656810757264a6099890acbe403ab0302047c435bb50066306402303ac82f6160d83e003b120541d0b9a8c8895f22c376d4e6b374d6e67a82ef0801758f455c626d530fae109a799ba6b5b3023053a21f5b22d6019bf8065b7df81e9b7f56fe21a8eceb2ef7af6040a56c9ab504a7f06dda60e9adffab3567b4ab9f77a30302047c435bb5006630640230656517de479abd68db265c0aa67f6fdd71d1eaead84c2cb418bfacd4d769c3a09a7dd40d0085295c43f9669099a6485d023060567baa8b2fc5df01925a324de4644ba05379bbc2e41fc397ea851a50aaf710dc9badcf823e31bb17d7ba436e5e091b0302047c435bb5006630640230372864c0196c2c8d946410aa7561feeb9580ff7fcdfc1933d0aee6a3904373d82700d3d263aff31e6dcefc50c1c788a90230551b70235f5ac1fe9f404bf1d2870e44c53ee4439b77cb4b952d482fbfba7d97ee54e41babb38f62535f7dc82209b6250302047c435bb5006730650231009d009c5225b5d1a4e6243ecbf737be27d25c6f0d91a0ca409913d27279eab2f5c1da80e489c1e55423e73f5a7efb167a023067b912457ede168dd04e201cb7dd99b6dfdfbc0b9f003c234971f93ff0df027dd2dd23f7adea00c0aeed922900fd08550302047c435bb500673065023100ad59fa58cdc79cc6fa1962f51539beb083f91f4723503a765d94d8be1686400d1b8f383ccea56f3e210f7a5739b94f47023024987a231456581dabf2d648fa185d93271bd10e8d1492801496ba0607da8e8cabf4969ce802c16e9411d69cc2f832b70302047c435bb50067306502303c6b7385aead5e70234c8619f2a5c52df7e0ce8e23771a814654a9e9967a6e85b347e2031960a8b4b77dd7f7944e0ded023100f603e461b153c1aa7574c3994560e27e92a7d23bf57e0d9069e6f54706f95d4ab7007ece60474ead44fdae6790f41c1e0302047c435bb500673065023100f63f3f2e3b12e9cdb5d4e0720ade96ab4b36781a61ad3b9e55ec24c42c6d546a59c28db7512fe7535fbe127a5266609802301205d2617e08d4956f92b572587484715d78e86c0865eaa33698b62265a5b1a0a372e0e15f8cc8cdb362ad7cb43010770302047c435bb500663064023000ae7e1a45f0440e6ce2756636d393bc275bc13a3bfb643845949d941e3f450d065d18fe5dab3a57469a843f868f418f0230370a8c3a5cf29ee6ea50ae377deedda0a0f19c23c60e5c5ba72f4d1c1a06ef6cd414c4c2c25db9117559265055ebcc310302047c435bb50067306502304ba59329a9666fc464d5f47dec9539dae5a71d8178fef1c347d80d0bfa153071de8d9d9917f630713c7d2c13caededbf023100f31206999278b0ef0f8e6cc9f384f4eba80f4f56e297fdbadec2913c5b2f959ea6935baedeffc29c55dc1d1223dcf2720302047c435bb50067306502304a8ec73fc33598fa274cdb4c5173c12f0008e15365a05204c07b007eb8fbc563c2dba618053e76bf1a8ee389cd36ea8e023100da2ff6118574a2ea547cc36aa9a93c62ef404ed6beb860326011ce2ef548f9bc2d1e447b98fbe68e21690c06edbee2b80302047c435bb500663064023004d03800d6b9878944fafbdc01eac86e195e45c2ea8121c86c3726f5ba163cb4316662475b12e2941492a2b7ac7e224202301285ed1622f9428ffb6dae01b9f40d466cfc634d08755662169452ada8666625d209801321b67754911e18cc1f585e960302047c435bb50067306502307883fd77ebc3646b802642307a4be319bf27e8100d3b89c538b4c31ff10676c9a0948ec8922418fc0916dbaa5a18a7a902310093f75fcb6efe6e4ef5e4a7c8adc4cd0036fdcd8603121bf963ff2adf8a62e62dde383a57cb4624d2a7aa8141a4028dd30302047c435bb500673065023100b61f0e27fb5ad4e012b0a9914fd48e92670b65aee5504e019edff35140a12369010f03dbe62d3a60cc7ba0b5a83716ce0230390004bfeb8af9581cf764617508a79e3bee6c412147ef5f5897077d5c5dec756ccbdc0227386d4d8e05e6db882e9b300302047c435bb50067306502310093c5d5caa6eedb2ca368e6d930d72829b2c684c7c7c0bdddc0ca5ca8bdbb5129984ca5f3375b985fba8036d865a0cdc402302bb58e62bb1e6e880dff03bfaf26db947456dfbb30a5a30f088499b25068d28b2a4be957efe656b3ab6f13b1a539d0ef0302047c435bb50066306402302f773759d985a658647994fad07e9ed9053e07d05e8123dc1fc49fc4a373fe7babc10a5052ef7a58f1b1aecf42d2c76402302fe92a314be29f81fe1cbb9d7bd70639c75d1a7e1f8e2e56ed6073d1cea164a322dfaf22b7ee3b002bd1e4410742de5e0302047c435bb500683066023100855435e573fca81f5ede1aeaf1d5303e96dbbe9aa2195763e994ebb8ff609f403846c5847a550542f1cb703ab4b41d92023100866aff7c43b2bc643c63c7744c23455356c150f5789a9d0542034ffe3aedf9caa15c787fd78a986172e64bd557ddbb0c0302047c435bb500673065023100a027c4007a89dbcbaf2c6231b6d58865debd633d7b465f3f8f965dd7d538c0acb7f2f0c1f213dad1a86bcdacdbb0881302300b3d2b8c220ff4e36241ccac6740cf2fe3cc1c6525b2b6b5e1d0055c5f962ee6683fcc21b2e49d33c512efe2c44b28120302047c435bb500673065023066326fa0873c3a46694e1e334fe410aceb3044c3fcf921532e4884c833ee8f0090f557bcec5c9a5c7dcb859d2cfaec2b023100f554a259d78b7d338d45f2bb74ffd5344f5dba30e22527f7ad14cf166b80ef3810019ccd3bf0c57d5ca90ee5c20a7ae40302047c435bb500663064023028797574668e717ae6bec8fa7bd03aba3fb8994366ec78c5146bab487159cd6771fcbfa6c98f897a82b7dab52e783eb1023006f8e5f6d4c06fd1bbf0c18d64533e6b362d4dddf6ce169ffaa392e0df1e33a8adb7d7a424b07586e8a798304db326840302047c435bb500683066023100ca35e89778b4d32cc467002aadd17557d9d61988f76460107be0b2a146626f7b8f3360defb0453a98e349f4b18e5f009023100815dda2b6dd3fd8ae5366495c2bfa15dbc0ff848e3c504a3206c7470c1f2ff2267da504c86c1f9a7ac0d32fb529762b30302047c435bb5006730650230738d11c20d5ea9eea9a5098da500ab775d099eb8d5c6ca842b3f9066d9f392e8d2eada3be1ec4d3aa648a0eb94db19f3023100a855e5f60510819af3e4449b92c8cfe754ee98d7ff84e63041018d071a8cb2e165338e166aa6381467827ce9017184f80302047c435bb50067306502306f912515dba2beefac9be981c4621d6472778b43c18b3aec0c4569d2fe827a3b8e54b22efb66d6db576e867ec9bdd4000231009ccb189079ff02fa37250d7a37608c3c3d2c3af22983f1be9eb425dfa9371edd4350633941faf7f5094b78e60bafbc530302047c435bb5006730650231008421295acd15c6a70d308ef809401094741f0646f60a747c214a19598dc2cd760477685b580b68a320715464188a95b602304945d3c212d38f6280f805d5389ac2212e932daab2ebacb829cd73dae35f2221fab146f2c0dc8e580fedf0509b4a67b00302047c435bb5006730650231009646001042e18f63ffd00e4d596dd4e87ad5f0b126609c3718c5e4891f81d4f8b3c5508013a375d1aa9518c5ed16a7e2023011000ad909ecd3ce67bc2cefbc5b5ed2cd8e4e5112fa4e5449c77fc9e33ac7701af5aca59736094d942693de2ad63a0e0302047c435bb500673065023035e7e92a15abdec971fed37a32093379aeff4ce995425bf736d1ce2570f3efd9cca87eb182bb9684c61f4163c9f94877023100ca432bdc5a54698e1d23cdd7a00a11aa77cbd0d352ebfa3378d196daa3290553d91b78f8e86eb31f14eb48a3bd0ed7960302047c435bb500673065023058037d1e73d8125a259136ef460028028c2206485a0dec597ee96025dab7e7028a9e4bda35a05895862152cc09f3ddc2023100e48c33e741d78405d2cf5ab0ad55de2b00f4d662105842001abccebff023874ce256159f36451e7f3bd949e12a5099f00302047c435bb500683066023100ac6f0e3fb17b08d5be4fad1bb96da5aca663f347a66abea5e987599935d224f9a5e38dff9ba7388bfd517582a026b9e802310096135bc4d5815f8533b59cb6d5e2dfb647264a2dc4e11872acc470ed1655b09626fa18b1f4bc595598f8484cf9725ac90302047c435bb500673065023100a1e05a757b5ea6c7e79067590a2cb7884b6f0a12bdb6fff7353c42d9ebcc3bd13e565c6208ed3843e68b80ca70cbfbcb02300924740bbdf676da23c51ae183d31d1080f9182b23c2cc3e4570ac5036e06537ed26df1745c2cc78bad4396fc5a675750302047c435bb5006730650230648927130ebd5e6f1dc4ff9de85b551176e03a02c89c6e88f00407e10c6f13fd0e6118776a38dcf7181792d33f7e435f023100db2533ae0bc0b8cd4e37b530d8cc3cd7f355d71918f5bb1b5283c84b47758f08b16105a4ee21f58dfc0288dadb82ab220302047c435bb500683066023100ff8121390f443bbf938ec8dd3888273102c12094551b0f6302004c66a26b73208f97573c9ae6eede961400c8d55da748023100eb2380cd09f47f09d54e8f845294efaf1331e265acb613e6ec64b25559ab9135817525209ff89dcc183c5d6f6f4a50570302047c435bb500673065023100bf5d57de3ebfc4e981ec6c53ea1440da53c45347ec628c7525237f0f6f793ffcb65c8fdbe4357c0abac9df0aa2729c33023027f9c5a21824cc5fe030b35931a93646ddd2751bdabafc18c6e6ccaed8e40e0293fee15da613648646473a2f8d29352b0302047c435bb500673065023100e8413d1015d820d3d5138cbc4275a553cfa0cd294a7c7493d545166300cdcc713c36197556eef0a8613d4f6277c8ce9402303b76c63c4b0246b852aa3011bf662ae856a797ecf565a8cbbe96080e9502203a48b643853b337443959175ced25d81950302047c435bb50067306502303b13a1b4468b8a4e5d0418230e0420e83529c7350e4b72203aaa6b818b882a7ad1e6e46a363137c3a0a71156f56e6278023100e0381a4d66824c6bcd831c41cdebd0d8d5b90de7946178722213d9a1539b3c7b17a84ee68aa96a6e66cdb3d65f3d08100302047c435bb50067306502310093b803c8806c364192b949d3377512b82e164e29db49bc60eec4011a40b6640c662898ff2bcdba4b56c4aee7596c2cc0023071e1718995e356e37bc91b77d89adcd7efcf75166b2e43302c15daa9ac8351b159f84393d6df272c563e0ef560bce6880302047c435bb50067306502304c6e7bf11c62aabc13e305fdbf4deb6f48f0d323d622fbd09718bac3c13faa530d2dfc39447530434b3f8fdb0cfcc428023100ee5edae1955d27492984ff6145dd6a0b4d523a9ca544fc7da944fb9d7422d3bc4d9220dc9a77e753056fa09835bce1730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b9c111d3be2c7b710a9ade379d59b6488a15f8f8c383abac35a4a0cde6cedf2d55af9790eaab7ed60767adf1bb66f219023100a0e762f9784e3be61d683b19db43c81a74567796dc738d6df8caae8422f3b35eafbacb2624004f36b2a95d547e9aadd10302047c435bb500683066023100bbfc02207d243427c34529153f55ef51959afe2207be2b1160de13628ce39b4a9ba6efe864352b763db9be48f5055b20023100ef7e1c7b8cce046aaf9f4f75bd040c67927588ded875b099ea1cfda963f7602e6cc495fc71450031658287412b815f980302047c435bb500683066023100fbac76a51e9b8e32963a802be849261f2f9c681a7f60cae991b8c5795993130c8e094db3ebc721a7d2a2fe8a7521f4040231008e35b9cb67a6c4088db10f724c65ed6ba35ea69e0749e7c9d3c3449dfe0e9c5a63850e82270cbe81fc3bb65a1f2723800302047c435bb500673065023100a3a3b2c0c50a7f715302c5162542bbd1f403714566739be69b428e2b49364c2e034151805ad7ab2d681763b0321b9b9e02302c503440f66c4ab1962a6b5ff979cb94742dc55097204f67887008bd12128f3437cce90c1bd57dbea48b67fe5bb91f790302047c435bb500683066023100e1d2010a2a7db76693cbdf41871084cd0820e99a0823d5fdecd8b4e421ba8d0e3ff664e67421db624bac29cecad1a0d3023100afaefe3a5eb2b587eff5dfb8612a749f5d50c99487b3874cccc0c3229017fe2c004dfc2ab05c19d9671d095e0ca292310302047c435bb500673065023100a7fa212ec195a0d25c00af9d8bda91bbc5aa0c52fa60040e3784a38cd83c3f360cd57477282a1265864a45fd65dfdf80023039ab5e64759feed0610c5f9da98021cf9a698fa8ab4f7ead97bff587f11f7a483342708c4b2ad88d6fb7ef20cc6de6530302047c435bb500673065023100cead59a8e0ef1f0f9dd52ea5a6a7592d7b818161db0807e202a55e93aa3d467b97387e9a6a5f6afe90179b315702712b02306315358ea572489463d4863b2fcb999b2e4b1ff55b799c0ec5bc9da0ff5d34cdb2b9cc5424a514f40d67bdb7220b52570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023025b68b26f840e6a9d54284396b3f7246aa6fcb72715a646ac0cc291ef4bad5f3c2bb93b8d630cff655c802a893a0550a0230244b647e5f2ce0051e682ba8a964e4b89ae23bfd8229167b6151a9da2255a420fcc607f167d62c7d83f8a321fb3475c80302047c435bb500663064023060841c1c8ba04b2fbe7fcf0c0ddf6a7b054ee8f1bd2ef10e16327d3857d4b353fda93cd440b3a7ec328f36675ba2eb850230775d03fef9171f5dce1f361a061cfd930d33c14af32bfffcbed06d0ef00ff327e8fb0791e46fb48a4d0971791c5a71500302047c435bb500663064023011685c38ee7ad2753e485a36a08e4c3ee751fe9a3957a91e92449249778e8e7ce649f54a219cfe302329aaae9fcdfa00023062c137ea004f69c83d4f98b9f1856d78f45551400dfcddc87df003c09bfcf01c98f38741cbfff57770e812524ff9080a0302047c435bb500663064023066751fc7d6060896fd3841214f2b304bbfe71556c1e1db59406e128622f9eee0bd36d409754b6ded8bb51de99dac175902306a4574c507b115712c2e57e281b8652f24d9273bcf3464897f30848c58028b323553b903dde541f04a289cee6b74e09f0302047c435bb500673065023100efa0b18b99447955940566f01d269020e10860c1150e0bcee4e2960b262ffda1bd1664751254538b12fd30b4b2a4b42602301dc6c6ff4a88ebb4398a2ffe6a94e4b9aa86383373b9a9672ad450eaba85f64aa204801103544f59ed990ed66ac344c50302047c435bb500673065023100fd65a594b0cad77ca19e675c8feb46b79b32b06aef017177c19b92c2c0cca7053c7eb063d62bb9daf574a633f39a7439023008e1a63406391f00d398ccc982461383ccb38c0029f1b1bafc4d99bee075daae53316b465fb5ecef63b335aa2150b4a80302047c435bb50067306502306924af93c60dabf39c3c5b1072fe621b7236c46a93fb4d5a1a2b0baabcad7f60e5bd527d2357f2c32cdcc65826a7cf4602310096468e4aefd326c429c9a78bbc5e527eb97f4f2233aea44c9c7d49311cf1ffca0ea51e47e52768d10ada3e8c7bd271e40302047c435bb50066306402300621a4728608e6603c1d1a1cdcb09e8ac10c487f28d6c5cafa1aa94271df8e691ee4666e51e108825f25e0ddbd4fda2d02307df9d9d7923c4c3268e6b9491c084733c4f496814dcbce7689d0d9a75a529500d53ff1000e32725ff5301f8d02d5e0340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ae69e44110e0d40b1bc31e4d0db35dd791a01dfa93469b83621ff883e7d4c727ae4c86bdcc51c32c999daa157247ce75023100fc780e93bba6202eca7d41c7d74ba6b5638819141fcf7cdd94f5a859e718dc3bb6506a28dbc5778705669b00addd036b0302047c435bb50066306402300d3ff9b6a0248fedbc084c3af9b0bd6414d14d3cb8cda8da9b6834c54159a796f7b2945e25420e1f14754635f5f6b5bd02302eb6bf780f9c4504d2a5aadbc59764e946824fba1819bea63ec51234ff74ddd9d371c618e1f521cc3fb12f9d270997530302047c435bb500663064023004f4b6c4e82b511549a4a0d3da400d3d105081d07848f9f5f2c10d9958d33f72f890b1653c578f120a75120a2e291a9f0230730049fd1ce88d88e480b31834826547374bb3936169591befb0573502240d103bed8b4de4eaf044ad4ead918d857d730302047c435bb50066306402304d4ec170611652fe756ff51ef20c1f03d3f4464bfbdb377aa87c7acac5a722e8bcd72594a1db47fdb4e8351031a30c85023036ce1e357163702604a829c8717429fabd55cd10b28df843b8bd6eb01c6c3a245626c0f17437ed74658c9763bc6177670302047c435bb50066306402302b42e1ee7a657926ae7be550fa1526c038f9dac7ce1eb068121585c5a883f795b8aa47d6ad4908c9436097f795f3726f023066457afc19d456b17c947bfabec286e68466618e24ab2d7c0a51100ae7ab8d2f25f744dbeca89d81f6ee7c6e9041b1a30302047c435bb500683066023100d2dc7e683acead7454a939d4fcee9f55d07c8d71306d9787396a464e826068ba64315d18bc022da8a94e01a941c1f38c023100c604ac98e637e95b1c1ed544d116fb729431c3ee0f63a30f88d0a97d2950d2f45ff297a99d20fde7dc31364ee94d3afa0302047c435bb50067306502301ad981df397d3f65bfd2c0cb16b9671deb6fbc0a800911cbbcd5fca98bfa043ee8a10f299c4cbe63644f595213c766d40231008b00d45f52e62d39dd8563b51afb0f5ee735332b288f8076708f6010bfa27237deeb0917b955dcf5d9289c851be1fdb30302047c435bb500663064023040c853411f057fff40a64cd999610a474a7097c66c6630b4b9b137ac110496ff5f8239ea9497746136b05f07127cb70402305c4824e0d25e2ec4ad388b528789b4b1d836cceed689ba58dc1e20a225d729245037a377c02e4c395a77d353bc70b9670302047c435bb50067306502310096e09cfcb220c7e986170f6a435f0a10564caee6243f02ae6e055fc367794c6732be853055c1868dc9bf5139d5d0e6e202303ed54f755d54448bcf721d86455043030115768f17486cd16e62e50d59ed2c4ace0a75d4d4ca41b4783558c5ddfded930302047c435bb50067306502304254814fe7ca816cc83cd13ab6e4a95ebafce410f214ceb25f035825abf2f00f3cb51026741dba32ca0cfd7874e07a41023100a655543973f4f28136e5b595e60a10dd2e910ef9804f6b9b711ba70954c59c9def9ea4cb3ebc4ab77bee48b3c8249fcd0302047c435bb50067306502301d53c1a6b75e12bb5cc12f1c59d3fef39d3b8b66db050f1a47189362c0a5ea075a055386528b3aafd0d6adc1fbe7a5fa023100da39e8e08d234fd079567702bbebd9511b2d2fa65057615cddb73ab20f188d9d06919e40e395d245863a1b898b6e17530302047c435bb500683066023100ac08ad430057e6e47a5184015fa2cc6c004ecd8b87427287e868d57cbb05f2a73761d53be33f27e919af66c029faab1d023100a84366fc727ea8ae006bc5777a484ddcfc3cdd278e0b15ef5fc5ec49d60ce3af3162db9f753a0ef012415ebd2db4b4700302047c435bb50066306402301e3af7ab3ec68c7d4454c4e4c8e76964740c36282a321710a90478d83224acf9e3160288726efde3f49cc66b61ae2e0c02306b3e2c21ccaf054e2c84c5919f9c29eb4ca0340ca803f987a7dba927978909a9c8b3adf51c9219eb50f8be61cb7ac1cc0302047c435bb500663064023043db6d59d37fc1f0e5561194b629c8069c17e72590f1e5a5f08326a53759daf23813dea81b07b9d92aa6666368d5092d023022219b095d0ee0c812cc7b199c2bdd14ce25f2ee004125d3c4cbba7bee43803978c2d60ff5e48386c3f8cc92886b27a60302047c435bb500683066023100eddf596b877aac5a095141b83889b702cf165fcae3f0f5747ebdc1ea0e6c14222ad76071b2a4bda8af090a4565dbd240023100bc661963f28cc65fd5953eaf8fb78ce70f3a3e9edc929aede0883ddc30ccbb0eb71f8ac700bc5e3c016b8af5c96834760302047c435bb50067306502305cafc3d43629c7d4c7bcceaf3a13ea8da14adf4f543ed0ee695e46976a8f78dcdacfe0604faf18648e739b07ec84c97d023100837192360106f79ce750e51fba15e3f8c829225705ca2c884394b31237c4d5c11993fdb63db7909169f590a9b7cc86580302047c435bb50068306602310087bbaea9f29b1c9ec34878a9bd9ec2fbc92b7f5771ce48fc7eda4a41982ca518a01389e4b6f279188a57dfe95fac9d8c023100aebc8ab6efb238b7c6e0cc903ed10f2c4b770576ddb4c2b05ca2e4389d320b9bd5b7f305b1626884425e98cb748d1eff0302047c435bb500683066023100ad57b84a8d0a289678eeb31b1263fd02f510b65450619a636e5f013e8c86a9ae10464d4857ab9c34c52cb7a14f7053ed023100b5ec7ed883e0f2dcf455c6530193b2f5ad0d1f75a4dd9e1c16d30a730801cf90785173f76b7b3fe86c650d3db69903780302047c435bb50067306502304f81b50bbeb32fd7df7e94b68367fc0e2f0142360c90db983b6c652df03a23e11f350c2a0cb3502e3d4d4bf803926af2023100c1f4e84bb51cd72829e045f983f69e0490921a2c7c8c03fefbce89ca30a03bc47ad4833ba1295b19a50710522577db590302047c435bb500683066023100f1e2f5cae754d6d4c41532aefed541e002766a3fdb543d82284bb7b987299017efe3943a76ff63a9ad196398a364810e023100f81a1ab28f35f85b4510ba69ed3c6c693015e7c4156c373a32e5f812d4baf05266bc2422eb02d26f3d198a7eeed82add0302047c435bb5006730650230594456c704e5d9e48c6353e9a92d5ff1bcedb0999d7289f81cc8fe3aa2ecacab88d2c0036dd6b200df1fb0447fadc4d4023100adda6653aacd377c00f75648d053e3c1b8c76437564330071bdcff9296fc9649cfb1cab245027b7a3c2718f9843f8ec70302047c435bb500683066023100e8bba0f23d056e1b11c136882734f71fde7952c3068446978c0f0c2e0859ff2a636505d68ec747b7aa0e9f468f7b3c4f023100cfacfced0b7a1bd143660863a60a60c5c41754bd6e907cea460fe472197606ac82dd517f9810844be6da8064018e76ce0302047c435bb50066306402302ce0499bf04955752e52c3b3fbbcedbe3183f3d387a0a8d1761637827c7223a952d9955232b692dabc9f27d87b0330f00230456662d67db07114a76096f8a7c3bd4ed1d2b866ad22ea35e1b739814245d0257ab271b3e69e42562773422d92f552270302047c435bb50066306402307bf9b1b8978b278b0dfc210f224726aa8269a8cc041bc842193a4e5a58bcc7b2885d7a571ea45f1315c43a752a5ced4702302fbdd63ae3ac0f30c2013a6f26627433c176fa440c7b59f5d9a8d9ab8b54582120295b42ca3776e3f5fe320e0dc544cf0302047c435bb500673065023100e5223d0aca1f72f14ddbe4907ce9a717c6d59726b0b6084d81c237f41f686fe7038c812ae88365b85f49004bf2724a4302306c7482fefa83d5047cc67112099e43ecf1fd9711376c0554f1d358ad7f9988d60f51e25b926128da4444d45fee0825310302047c435bb500673065023100934d3a845fc5008fd6c8f0521b726444cb3c7ec0a9c531e37608cbe548074f5012fdce3782fa48b2a2af08044c168ec40230750772536d2478ec753178882fe6924cad186e9ef50e462f113e73a5dd3ac770111133f852818d763dc22cd0887c966e0302047c435bb5006730650230229e05658577091b74fc2fdfa8f481a0c4d14f189e5452168e0adb7fb387b69108c56d030fd7408b855b25d5212b7f82023100b428e5a574e5697f8fabdac90349e73f068a63a7b7d3b78090c5350c56b9a17bebb3c26b692e5c653d2a24d088bc34f50302047c435bb500663064023039154b2e95c2f511eff464215614558992c7d74fa0bbea43e9239f030adb7cbe0664fc9acf3e0c7b894e8970a5fa0a290230628d3c6c51260c1fadf70472edbad385a843111025b2a7cb53823d3ed43318f6183ba2079c195245b72251305f7f4cad0302047c435bb500663064023040071fe3fcbdfe253d64cc4276ca5bfe0373e05d8b6e99959691c79e09573fb71825d0a916e6879ef16edaf353741b170230302a7dc2016548893b44d67e39978d9fd0bba8175c6fadd668fd969daf4b32ef0026ad5c2f94f047924349e344e935ec0302047c435bb50066306402300a6eaac597863acd52a2eddfd704095edfb14a7f3780ead4b83e3fe0d4ec55c1d41b176ef8ba82829f03ddbd3b2accf4023043d6b057cbcd2fbe8f6c687276b694a42a59dc773fbb016aa1ba04ec9c5f9e9b4fef74bdbd7be751e6a7c26607db7b7d0302047c435bb50067306502305b837f05c88e9fbc89eabb2e67b35ab0e8522fbd96b4698fbe7f49b6151d6f602a9f6abfc73d5dbb7ae16ee0f296d5840231008addc3f331d034d79f2f76907689e0d501885267310ca7c909b5b961b7b1de770d1ac3dbef79156979a503da0bfa93560302047c435bb500663064023010c86b227342dd17136b7270234c9034200781beb66feaa9d8b03c70feb0b9835563e9545bff4c383abfd91842e061a702305ceb9042cb71d27dc072aefe384a845d22c298b720631bce1f68272f49823caa93c37b028d929dcf80b12631f71d79aa0302047c435bb500683066023100fe307175925f6f9dbb4bd30577ea4ca74b57c0837e660bdfa312def65d265b8c0cc2d3b53c43581b12ce3395700c9a3a023100be8b838f007b99ef16cb4c172c84da3317c7b013a53063943191a217fba310dc791abb101545f2c8d5f64b339929ab140302047c435bb500683066023100cb9895897f06a2cb6fde2efb37fa16b53c614548af530928e83089f8dd9fbf0cbb3a8f83ca56e3f42f890c8347fa3bef023100b00cd7639a3b02a8439ad457e2b21fce9dc57e049b0ea199588753c15e383c74ea3d82e765af0d5da0d19984b6e5fa330302047c435bb5006730650230512e865f6e87f51deb83cf7cf54a085e13b040126bf68a378b56fa414dab83494856393ed8d39c24e7b60b2104de85cb0231008ad5364f705ca40404ed8b012dffccb081c3149bae7ff6fa540449f3a5dc7cb46f148ef993e9b06f4b45ca3ebf19bba90302047c435bb50067306502304c23ce8b5202bbb6063b6e9ff1e89cb6859823d2c04bea89aadcac329a2540b4f38ac3a02a9f7297e85f5a1d96f82ba60231009da3f1b420b98437503117bf42918acdb20fb06bd881882fbcc2a3408f406e5e94fe46895397c8490d78387a813778900302047c435bb50067306502303dea016a6ce03e1083d51d9c4fbefa6772c2bb0d4cc9600e3cbe5b95653b52485addbac901c1222b94a83d585d6b99cb023100c736507c4a73d08c083fbc52b3075b7c1f54d42395ba3e09ff0edf9348921e72c8aeb22cc51763d28e26437b87bb34040302047c435bb50067306502303cf77e0cfbc1bd3b056471b214c39fa9acf365fe4b61abb66da6d7790ccd22ba784c016071f588d5d324893eba6399d8023100ea38e191cd519704651fb869b5f03b17f777723543b149e3df51b5abbd61a52e80eedcc9febe6240c51168acd1fc23000302047c435bb500683066023100e9f92a9ebaae65aea596c8f0cebac024f92c91a16a9b0db300d05ff2f38221ac5ecc232e6bf465ffa8e082f48ba7001e023100f534e9b5138ce41fe8e9eb738228a5b1115cc6287d7855c0ef8a8805995059c3d63dcb1268624e241f903ec7ba17fd6c0302047c435bb50066306402303e0289c00065eb22ab5298e76a06cd06571d68f20fc3ca127c2291cf5c9d1f062cf8d757b5126cc89358d4b07f6a5d6f02303bff71da2ebcec8c8d113e496bf96169253105dac9a88128e299ac1753420a11e61866b6176f7d594902d1a31e7400ee0302047c435bb500683066023100a60f63c0a5db3aeb60875121d961049b1c326327347bfa66ea910ed39ecc3117c3546252f76380d4dd6721e5494627be023100a564501e69a2e23de9e890040cd6512e07bfca493ec77444722e506a4f14661a752d67738e0819dd7e0fb6e0b5576ab10302047c435bb500673065023100d5b951757fe188b2b8978f13a399767ad0e4aa7e1b387f1e2c189a089a0aee21dfac7e1951ae3fddba9ff153c0a868f1023047abea38dbe1ce82d875d39058b2fce1fc1e7b58081f187323b55a356c1a13e23bb6d58f8498431f1591d4434cb503e20302047c435bb500673065023073336e0bf50658c5745132d1e17732794a5f4af47d8d256d76762f3f96bd781b4181b3e86d9b856b9eef243dd6730bcf02310080d23d27e068127ea91b3b09aa135cb358b8dfc4b7e87b87ce7451518cec40de278032f93439647bff59f95f2c2f73b40302047c435bb500673065023100c96deb659b3b445b16f2a197b86331e23e04dc1a906617e077bf50f0774dfbc0002f92b4be7a377657f7d788be722e010230793b585761be72bd955082111992f1be6a164beec7e3870185f96e934fe923f19ff5070a06a511a4e1d58d6e81caafd00302047c435bb500673065023100b735fbdf4ab35134b600a6a7936859c7e9e94502243c0d9155637ee87242d9bb53c332058f78688ab648b1c70a91de7f0230385487548a2a918d161d53db21c478b4c739bb6d16291047909cf1dea58f13a4aae657c2848aacbb093b98f6a45d07c80302047c435bb500673065023100eee36f97965491b5d4bd255d7af1a25662f1471134a91bc231a42340e6fb94f7e2d9498a2ed41c5481b0455bd927fc4b02303ccd1f17ac51a61657508cf0193c81f6b92cbc878b008c9d1c92f1af5bcfc6459d8359cf60e590af951ab1116a132ddc0302047c435bb50067306502300caf253d9ed93adc0d45a9110427ebe4b73c6fccf42f72c6e4749a18dc56053ad4c35a3bcdd84a80d0e10b3f49dc7de6023100adb0b98cbc3d1a6d7ddedfac8b9494cc1576ba5962261ef2e92a45cd706ec6d746a1bf0b7ed0dc15ac2cfd44d9e637c30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301604561a58a8d405e31abdea398c8cd2081073538e2eead797aa81cd15ef6b7aec445575468eb5bda139450171e7bf680231009c293edc469baa28d6cb4f5b20074842d338a3553d85c4a8813c31fdff019d0c882b4903cfe6d237634fccfa372db9240302047c435bb500663064023023fde1fa2a5c180ed93ba61aba938c519435643111931f1121b5869574e7c29d151328d3b1d2fb3c0c7720c5f1e4f999023018590ceddbded597e208576e269711f4d90afc6a3c4e1e71dc8fc601cd8d070677506be30412d7c8d20ba597231a5c840302047c435bb500663064023067c0ffdfb170883fc091ad912401aa4f89c79b82fb520ef1d554fc3b63377f6c62f56571d29bbcc2b63a9451276081320230185e658d0f366221b6988e49b556dc1d9a8b0870f36379c21824b5ca0dfffe6b58a1101b49c3bf138a4cb3a43757ecea0302047c435bb500683066023100e6c0267410a1f111001fc687ae0a20d3545abb12556bfbe2e61d7edfeea13c27cabd5ba80693344bbfbfd1e3eb628d3e023100df2393ccaf19500a5ca46d4efd4e38f27f12bf46f6d944967680483faa20952ce9d5ebac3cab2a10660c2aa367d723b00302047c435bb500683066023100c406b46f94dae5c786d57c1cbf95e747906a6249042e11440c7268da0f59b89580a5fb2025c782a7385cdc397106903d023100945ef8c6593e7c1d4b3bd2d4b24e3072ed132fcc68cf5477c7890cf42c07cf0bd88ad52ecefbde592f7c19691b4889730302047c435bb500683066023100a05312bb23d8faeffba1ed9b46b018b1cf024cbae9f9b661478485014d93bb742306338e5d460fefeee0c79232cd1118023100de19e31642a76e8b7fbf31dfd3bfbfc6a70921884cb77713d8c46df967cded8edf894b4824913a0273203a3c606c211d0302047c435bb500683066023100f3e9899a6e2833ec0bf1acaaad30a61f861dbfb5d8cb835462652c20f48b53f396fe5c37c6d56dab63036f2a4197dc2f023100e27e22895bb1a57b59b3c674119369c5fad89af08f81debf7cd4cd2fef3a523712e07448f6e071377820c437545e8fab0302047c435bb500663064023056e2b97ef3dfd15bf7f34970d20c5cd614cced74de12a00119d04cd1761d5fe1279c193464c6769eac3c18567cf25515023074992ab4964ba9de106135f7d1c3378c726926609720eac1f5c636cbefbe867ee1c1721cb1d7e76d39626e23d8091c340302047c435bb5006730650230289cde915716f742fd874f164ad3c5b4e0b86f783cb6a8232a8132118b640d80eb131efe3318a3686bbd762aa00da01c0231009818900b4616ee3c66ad9671fd836db385a2f14461d19c39a26c140235e3b68b8a41e7fdefa7a9c4e3c2ae390cddb4b00302047c435bb500673065023100fe331a5dbaa6362434e505ec1318cf58cde27e0be7eeb0a261a984103654ef32e15248aaf97a347781b7ba13671bf26b023046b679a976ac0c82d2a07ba20c1f3762825dac6d38de8ef50e6b78675bc02960cdbce370eb483663cd639cca77c464080302047c435bb50068306602310084611e84405eaff5b78b9a4024489f581dc37b9c314c9e30be64c9f0071e17d4e065297c2f1e1de5e9e2295528874dca02310083d86093eb499a23191a85bb65b628096b98aa4079bd96e480bc50c59611b4b516544fd824fdbcfb5b45d7210ebe24360302047c435bb500683066023100ecc652d783e26d78deb1e117a2cff742b053bb55ba25ff6300d49982e81ed8670effba729d7f2146e838470aebfad62b023100c35a262ea0e03570ae79ac78bc3e2292dbdd0dbda46cc20fe85f671868e4017539a096d198bda6920128718f289b04840302047c435bb500683066023100ac15dc6ff48247c1ed62b1590309b020e6da82f6786a0ccc98f734eaf7614ddbc01f58a12662c595dd7918072db80f85023100ec54b422c40ec5413697fc84296d8092cc10433b84b7cc7208eb119f6d108673f30640965657bba2c1f2cc6d2650c6240302047c435bb500673065023100e897c7c18f1c7166df3d81f41595a8bfed523c427a94d1f7560ac57d5cb036885f64badb99846f8b1322a1dc78a560dc02302d462506d39cfe4a33fa44dc0c7b03ffd13bed9f6fd0856fb1c8fab9d3249227e68420d8a651201476bedaa24f18db330302047c435bb500663064023068e295cb894e82a57663b0653afb6d1fd594ac4eb9e97037f5659b5fb23f1d63beac6e4af8e6f8e70457c7c53a9c233002304e31485f8603ba02949213fdb2c839dbc573604ec33401bea74fa0b54384c41455a6baf24f67d93963d460e7ae4523fe0302047c435bb50067306502307005f1a9b6d9ba2b45f90d5434eda39bf673d73dd5b9bb32a3ab0b108931d85d067ea693b6dd4602791f901f6fdfd91f023100c7c6b5d1d5d3d037d14f4e433e83476d6bbee3a9e452443f667ca211a1a377f44cbec17041ba850f2169af3b43520f720302047c435bb500673065023100d810e6959cef6a2c3f9a2c348515b98d0a3d6dc901b11446966bba4a0861c1e9cd261ae29203e6c08360057bdeeba61c02306c270fbb10ac7fefd34bf0e4ed3aaccb3dd3b81d2b584affe2639a3054eea50e4c658a85cbfdc5f63f70c1cad2a238000302047c435bb50067306502303d4a4a52ed6b045bcebd3f5ab92ea8d8430616f7e8e0f32367d26ebac6f400e35ce2c332767616ddc22e2f5f23a7d2600231008f3d7ee26e28feba9d5ff68ddf468627788d6446ed41aef59bee77d49a1fe3ebee7b95e9a9f597c5e547d9773ffdcd5a0302047c435bb500673065023100913f35154689af46807ec15f6c9002ab73229c90914a2c21b3f1995a5c9365ce68de179b48c61a90ed13db59e30fc3a902305f144a57f34064d3205bfa4c8ec89ea7a52e1eb76677abd76c5a9914109e7264bc25393c4c199bdc30bd96b79a0a90570302047c435bb500673065023100e7f06895278fe18db7cb6705f985f874796acfef4d77df1ea51e16d436ce9a2ba63d07e31b2e86e310af950d7dc053de023001940b6a7bf4f9d9ede628df2cf584b191b08f93c9ea8bddb7d7b18c3545094d2c6fec55476b69849756eddf06e7e0190302047c435bb5006630640230195a412cc70de21b9ecfcf54b955b4fdddbc9051f7c4ac3613bf88cd062a87602b0723396624cb9334ea4b6f505eb0c402303ef9b83bdd79df900e210821d13f0898783d638cb030be5cfcc5ef85abbf909cdb9426f7b0e21320b8abfabc181084dc0302047c435bb500663064023076142ed52a8c15e029000a54171e515084de0535e5d9623043f12929bbd3c147dea961764384912b2e8a32dcad3c465102305fa64ff6414efe9c6f2b17efa6170d9f1ad9f7093e5976a161b1c015807f4f9e540fd1e636327a01bbf5e44e276b0c160302047c435bb5006830660231008962de2d5f5c937dba25ab6bc01c950f73dc36b3e9338f8bc3cf935a98fd0e52dd2208d7c2b9addfd067ddb8b32ae40d023100a12a492b78ce00b54a81240fdfeb15002fef13cf8b193598b81cbc178c3009dd10981e2364546d57475532ec0ac24edd0302047c435bb500663064023043ce70a639b6fc95445c91480dc908fa24bf50689cc0509cfd23c5b3e88342ed36b2f34f1bf24e023c90c2cf7fd522fe02305718eb3a4253d574fe53c43b46cd446a6c10d537accffd9493decc8167c21d52679a58de871ea75804a6d2fc0fdcc3500302047c435bb500673065023100b9576d49896b9875a3f3fae916428383087dbe452bd79dd333dd4a29cd53b040d3e00f372c1949ee4bf1c6dab63bcd2202306a417d79ce395e85d6a258b9f04977e7c4fcea053d3d0bf92e39a7158d4c596b3be64ebfba669c982a2a2906d57f66b90302047c435bb500683066023100a25c91824d7e40c25b48e5b3ce7553ae5a0564a228120bd5a36b5f581984256a6b757d3abec700dfcf1e31d6c64e9ada023100875c0cd431e560a6ea1b09a2d4b32142c8ad96a3a9341a4224a06fdb89580c5bd9e2c16a6b7a77a166725b951edda5d60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023012be6ae46e17298e168a8d2ead7c42a4f9a8d2339a48a801ec7897f0cf93697cb498af2eb0dd9f0ea51528d92d073a7002302fde7112b37ff71272bb0aae8f452e52132b36bcf476ea40f3987c1eb8e7159b34e328943a0029261cd6358156b94b7f0302047c435bb50066306402301f1cdfe3a274cd9aa1c23dfe6ef49283e31fa5166e8fa0b8f147d77ea73aa22ebd591d5701a13a8d25361d7e6c7dec11023021027b3a5b61142cc8d59f6f9d2b726eeca610951ec19cece64a1696a3da9168a067858c661ed5f7fd292ba3957e83990302047c435bb5006730650230773e18bd01eb945967e87fa70cacf4f3e0db0936b50b7d2c79b72a95cb65461d0798c091c5e63b4b095b7251c25561cd023100cd4357293f688c9734a760edabf6e56e1a2eb88fe8713088d5262d5a544299efb98034afc2f5cfb4e4c38e24384f5f190302047c435bb50067306502302255f5190512d0b98ed81510525acae9d1bbb56bc280d6ff7e3ba6ff3305a79bb3b26b25f8db6a8f56abbd4110ae89490231009a79d4132a76447823e4fc7151501d55920136b281b0f4118506b13d5dd8f27c602667ef4d610582141b3a5a5de8cd0b0302047c435bb50067306502303ee1fa64b1a502e044a0530cad5fe1e8616cf8ff1e133e5715b90d6000b506f216b9ff49bb8ef57620fdadf912ba6445023100de3b5f40a113d5e6435165b14bba153b938bac9633d5fbd5357f6649c3bd29e121bf581ad171ba6c48cb6fa47189235d0302047c435bb50066306402306ae782b6754ffce91107cef0cd305c37a6ada03859265627634e866c953a9b94a75e2547d44fce0e4307fff3f89de071023076ec51c1e19174a21d5ea933452aafdf8e530f902e00ee7ef47201e1f7c182aa987067b11cbb6e0ef16fcc2af07b1a050302047c435bb500673065023100d08dbfb11e6e872ca1566998c23258c8956460ac2236f97f1b2fb3fc346fc1070a6e5b43987ed551b769a1b7eb71158602305aac42c93e8f022667b2fb1ae0218266e96f7e21281f4e943f19f1a6c3fe7c2d1ed8fb70d4883711971c25aa34f80f2c0302047c435bb500683066023100f4d4070991b9a815d406b612b71638cea681e597375ee826a7212283d3790bc3526aa18a39f36cdfefae68e5672144e1023100d7c2b0f39f38f6da936b51f6d262f001c3b9cf53ee1bb3087293f4e6d75d3f90a7fc2368e87eda6377c616219f29607a0302047c435bb50068306602310094504f285f2a28c9965eaaeca91e1a8579fca15fa044a8bcc0bb7f8482efbbdb276cc4f3fba0733adc2950a180aea7ec023100ed78f33bd2fadffcb91cb2b2607fd46369689eeb29c2ed3bb78145ec32e977e192fe7257353c28c4148936e3c21e91800302047c435bb500673065023100a3b2b3cbda0032ac588e56cd2578b712a7676f01ec54630260cab3460fd6dde4d64ea5cd9de46df5a4c9af09ec81c5f902302aba489ad19b3d7b19ef5196b140f0d33102cf9f5f20f11bb591229d3ae485df58dad0d968f0319c1508e4ce66de42ba0302047c435bb5006730650230084b8b91dd5c7cc3efc4b11153536a1950bd8ba3a80ef6dd2b9d81aa1a53854463ac8364a2942c4218e13bdd53ddda41023100b328b885b1b081a83cdced3697449c1e5af89fc375dccce9c935505a882a75597f87495a66de90d8b097baa02056ee3c0302047c435bb50067306502305191f9f9424c6ecf6f7b0ba4e6d4834e262319d0324e8a25824a1b741d44686f517dc498b6fcb69e8fc077457484082b023100ebf31380043784f4a6b11a9a8abc26e5d7ed62cf2bd84dcf2929be5e639df07b1a5814cabce865b0b2da34cdda30735b0302047c435bb50066306402306d77e28173f7e78e3dcdf72990d79e2c9d42c2980bd39fc1c2fd32b95eeb1c312beb292f8edfbe12592c8aba296aa08e023022cc29809595a5ce4ef8982ae5f1ea2ab7eaabaeb1fbc61e13896b47628c3791e2da8b9eeb70e03063ec2bfe60f4612b0302047c435bb5006630640230342507736d1764031a83b559fc81e59b7419681d831198db6723ed7b2aef3d8eb785c14b2399e709450ad7267e99678f023065044b79791ab5a5c2e11cea456861a548737932129392ab42bb1ad52f49b3ae15a155dd714d62eaf84ea13932bc67010302047c435bb500673065023100cbdb87c58593de2f724c4f6ba2425f5ade52807660d7a726eb36af89535d96d0afe22e4eb211ea31e8c64cb18427e0b002307525407be9d3badb7623823602c0aaaf7be31bf482261e30a7ae698b1d694f7f6a569f5f61d02d3dfe1b2a9e8118f6180302047c435bb500663064023047ab7fdb6c0528240e748410fb4cd2ad4d8599a5038dc5dd0e3cd10a67f4d4d5b2bbb3bc477e2d02643bd9e0c9786162023027eeeea09b25369a3768e295d4a7dcbd682fa56076d3b6a4606a9e24c946e21753b74184a09f382e447c5e3dc9d14b520302047c435bb500673065023100800c380047cba22011d9d58c76b7455aa874373c4f615728ed279f856bc0e8c4f55e8af7debe4e44f30286936a8385390230109af22c447ecbb074a6c945b53b528a4a1e9c9a37b10d12b6d8837ca4bd09811cdf93f7dea2003fd82c1536a5c02b8e0302047c435bb500673065023059912c394d0b3ae73dff6db4abf99bee15673be859e1ac6e4a5f1dd2ab2f2f10fce80a1f13125548fa2ac0f2c60b567a0231008779df75913e197f3e69dc129e94db9d476cffe958f8c37f68a6b61e6138d0496d1368ca24f5e70f5752498e6bd767f10302047c435bb5006730650230442e84ae2d8de4cadc226361ecba68334d027ae7f84a6de513a5f6ac1f29958ac5ccd3faf67c0ef332b986f80aecb278023100e5596cccd901657ec2c23c5ca8f0fa74d88acc6b7bafd1d49536e4ba59d4b81f227c6543ca7ae626e5e343a304f262ac0302047c435bb500683066023100ad73d91ce90a993dc7a5a154c39cbe113a5982d7baddad0d3be2f04783c8188632c8a7c9bed85266656365d274c15e65023100b47ba66045698d21b1b9f28e22d0caee6edf16894c582d28d0d6bcca1f2fea6c665a33f0d6eae76b0b56b378f22cc8610302047c435bb50067306502301ba5238bd42091eb2029da3ac455af9a1dc78159a8e844fbe8e6577b3de2f727499cfdf031f98e87513b74cd14c862bd023100ec469687ea4ef1f8b4d358a47d2d64eb42ed4bb84a412a2d287d039eb959dfd06fe26bedf19b9624cd3245f7f58c8c710302047c435bb500663064023017dd57b40dd9be36b99f1dcfa9eb7664b5d41c7222564005d3428ddbb7d8a77c22e413a8901f88757e4b64be5a04457e02305b182bd49bd6a4a8df81ef7aa2029bc5b2d12ea18c7e4fe45c98970b23f8694e410ac5e09ccba808af9a2310a3704abb0302047c435bb500653063022f17bc107fa00b11dfdeca7bffea00e278e8e5df73c518a66c91e0fd041d261642c4230212fc725b7aab9aef414b5795023038ed0d1f987eeec09075e0c8a9fef8e7b94d99ac394f24251e3876b26e23722030a94285ce7d321d98f8362ea14323ac0302047c435bb5006630640230720e56e9c5f77241c3194f7ff91a395282141b4c65d3f463d8dc45ffd6d8b9fcd0f7abd4341d546571d96e9107c31db302305b75672a0a0165b7cde46a6dd0f231fd576637e465516dbc76d3cb1d69ce4113fc3babb5d4d18908a3f7475b40d426080302047c435bb500673065023100c208005d0903397f3b212b9bbe65c38962aaab4dc5d3e2ee0848a36a1548470571fca86b29c7f11e202db96562d1fbb2023044884263a35bf2599f8f04a3ab24a108447a3ebada4a373063293bb34a2f3d9f13acab369c3301e46ac4c9e5dc2d371d0302047c435bb5006630640230052deeacff39f80eca7d54f53d9cc669d2797adc01540fb681189da6d2a69091e9a330853c947ada909df7b1d09eb9c602301eb23fe0433379d5589a3141a4e25371c822cc21366cbd2606a6abed0c94e4b548a39aa0b8483e67f3d723392363e5cd0302047c435bb50067306502304c77f15490c56f35de86a2a66016de18fdc6987d1f9eda738e9844ba2c2e51c228e337070cf1fd843c3ac195395b3e40023100c4716644d42402393fd5f9144ad79c64968ab93959f1acee9f97ac5f2272de7d81c9568337701a5005d351f28d7e4d9e0302047c435bb500683066023100a9c9b0f76ac95545380a58c055c5b274756867068398d997f4e7b3321b258e1e969beab4cbc74f5a01cf773984cdddd1023100a5175a69ba0d3e4ff72a59a760c89dccebfae62b7f26b3444e3ba8815f9434cc83abc6690dafe4507a95c4bd7050a9cb0302047c435bb50067306502301afd231d2f83c379acb8c149246a24f0e33b665aa5703b05da496d9bb1d7db72012818fa9a56dec3242a158de8e66656023100d9682061cd18f2df0801c96c71b53c84cb96843440c5766e00e6d41200ed988acc599f177df9c9da23f76c91618370c00302047c435bb500673065023044de58d2cd02f074de26db90750b44f73426d6a3f69a595ab60023a8590eae7c93fb4902802469bbfbb9d6f13e5dd827023100aefb10ed11882ac9dcb5d34b9cecf15b0c945d46c793644ff4060c38e4d6a854b39558dc8f5bc075aac94cac604649920302047c435bb50067306502310092c24725b461f9ff234221c87ee51f56e168f53f3ffcdb2acca4ecedfb9745ddb4cf97305e9317ac9d1f34288e171c0b023050f7eee036f4f4c39fca1d86cf0d31d8cb0da3f7d17394f82b6f69f8df383a0d580a6407442cc42e3b7d875f33d4acef0302047c435bb5006830660231008682a6e7177b90672ee0926e4440f45d317eeff09cce0fdc43c8210bd976a8ccddc81aafc42a5ed667fa2bba2f2c0384023100df61462a92e930c371bd82fbbab408765ca64d3407173b805cdd0e86c07a9f87492968d31ff6bb2db5f64120292a18070302047c435bb500683066023100dbb4ceb52d02803f8ce36a0c23a451a431ebcb3abcbab79c21f9945be727fd3843d38b19adb468dda577adf43b7f8689023100fff2f9196690b15a60cf9aff926aeaf0c2551eb1e0464240d0defd288883ac29d787fb5aabdc5f22301fdacdb1cc8b580302047c435bb50067306502304cb2eb1f5a714b8fcc5ad2f133acf4a17164f0ceb0948d1e2462ead5243caf89358aeef44da502643a0c893db55926b6023100e4d1221416998005f558f7d73562f0d5f8120a17ed7c6bdbd88bd50a69a899b07616a8dba2f1062f528b463473def90b0302047c435bb500673065023100fc40d0b906d950d35f281ae4665ab8eedfd4037f0d5f35b0c2fc262e4606fff642918cb19c1b415f2effc92a30c0b92302307b8c193b8e92077882ab184584dfd6b0f9cdc10a37be9726655a289dde795b01b5a4e2812a77bd08ccaa748cbcebe9040302047c435bb5006730650231008157f0bb22118e6de6715b776700561b731b1bc95efc73282fd275d4eea18c567af8db8de1e701dc9ab3c93011a2eb9b02301b7093295408e7be7543bb6d5271db4f47954673cb43e1a5c7c9518cec61925d4429fb19d17e57b79705f425a4ae976c0302047c435bb50068306602310080414f76f4e477cc1b66fd65d7ad54c88614d0b515369bea743f49037636d65345de66f1aa9ba8398c0e48c543814beb023100cdde634524ec5b557da6f4abe0edcb369f862e35cb89303ac12aea3b5e15979c752ac5049940b3df439a567a43427ca40302047c435bb50067306502307d0648845c8f7f7e207e94f8e3c224dc7090ad5a282967ad07ac94e5a2708342bfa1d348eb5086627d0e78927d3b6635023100daa059192394fb6979e81114fc63f539ec180a141b4cdfd67637e172e9fc33f4eb269b510b11b85e194c89d13ef3c4770302047c435bb500663064023004bd937ce2cc660df0ac1c969cca23dbe59712610db178fbd215d1d3bc134b9fd88817499e98fbb46c6efabfb7ad2c8d02305ba8043d115f5ecb083703f1bd211814a842a09dcdd42b22660d1a1766c6a8d9274fc975d29895fcd18561af7054bb4c0302047c435bb500673065023100c348e46cc528645ca26b90ed0ffa7a36061544583fceef98f3a26657c67f129e5c976a176f4ed78ba5f6c36e2bdbab2a0230372e3ab778e86d55f0697fd14a4bbd764969780fc65953a6aaa0de4f6fa0c0f4fd1488ea5eb500054bb6ce85ee7d94240302047c435bb50066306402303ef955edc378e2b18d56ec79c50c9035aa065bf7d2588124aff1534508c210f31fd4a39bd518307ec96bfde797df5b1502300cce1fff259154adafd8df1e9dcc61cee735438520bf48a22778fd21f7bbb31149cbc8f322e7f8f9d12cd74b04b2def20302047c435bb50068306602310084cc339415d3afbd7bf60fc4592219c01df3a49c725d5bdf3a5de9bf206dffe4324e2a9b39f7dd34f842bc7b5f9975cb023100decc9c4efa7bc0a13abe1598358044cebe727ba0b1c6aa84fe2fe99ad4a23a272b270901c497a2b552a75a67649276980302047c435bb5006730650230449f451fc3e40949406a32c9b935cae382f7e466edbd3e5c477c30c1c48e443c066252dd690af989deda925c83a1b031023100f84b80a981315a0e2fcb9db4441ef8b6ba711e5e2890117be348696d4d7d72c38e6dba4c57a18589cd3c6ec20f97267e0302047c435bb5006730650230133b4d80cd2c6e49b84ecc8fd3049dd1a7b549d38a0fe5124015f402b20521513aac99fd60ef28c190160e93581c1c03023100b015c088e657de9baaafccd244c802826884433b741101646a8fe57443a8984cf1f78c8603ad70781497f6398a96d8e10302047c435bb500663064023079a5866cd6a45e3cb73c3a2a00f5e6e1d6cc2e6474f73c1ce2232a9614fc711be7781d3f438a9fe2bf99d5713aa4b61d0230392b5b6546986173f09e2157cc77daf29552f498b5c0bc2b48ce356595b1afb71c8c78e355feebd45b0ec9a0f2c1dd710302047c435bb500673065023100c9af8ecb72a85c066e33250eea1ef53e95ae03bd5bbf7c34b1fc0a1668bffd249e50089a833c68a860298eb0c8ce5c9502307544002099e5d94e14a1f0e6d95dda8f4e02bf41f878f32895f5c8c0a4819bd2309eec11ac0a15088f6f9d88474567800302047c435bb500663064023044bc3e0cfd58d02ffe40dc5c841c7f4678c07625868258457c9bb5d37692755996fc7ba38511d8803e94c93eacd906f002305bb8581b2758923d509f7bb5db9d0c069ede627ab08520d8bbaf605f168bfc645792cd5e696378e95e1938bbd18f54620302047c435bb5006730650230207ebd789d152fad7b94ea29e222296a94f103138949c125a5cbb3d20475844ee8dbc5c66bd08982b72f5209ba699088023100adcc8dd5769585bca8ad40cc4b213bc0a58e679350699066df24e7834f5661a109ed17d1047e3d39d9900025e8c985500302047c435bb50067306502303ce5014d020d994166a72cd1d9007bf0d99504c8d14445eb263dc0d8c561a23a4eff8493f68267f7668504a2617d5248023100c6cbf40093c43856ea4d66de39677269e6ecf839e317fa68a1d0fb131388aaa9b234f15953f9e5caa67f91d1ebc5b68f0302047c435bb500683066023100f3ac8890b05a1ea6c716be3e8ebba8a767535c5937362b3b01c4cf955cfad479edb880a459989ad23c81f5d644c3ad74023100d74b802f65c0c6f0b9af528bb87dd64eae01fcedd656b30f12a9ff49435e16098c653b468c05917cb7e13d84cb93a4e90302047c435bb500683066023100de95f040615b5dea127cb8a7134e7821d458720924bc66241a0eeadc70caa091cb73613e16ea743872f3209147058713023100baf3ffa2c42ff5064c00fc038df1bf3b06adb7d5d34e8ebfc489e65bdfc6e4873c6b10db66c247b6371ddbc3f27a3ab30302047c435bb500683066023100d1faff08503046c485573c71a1bdd8f65528da5ed447ed3aed8406078bed0bc3ff338e3278c2f53404162f6d5ed6991a02310085e0d86a34b6cafe71a00178a9bb618679f700cb45d296ae2ff0e1e7c683f67f4af1e876d354831f7b760b2b7b550e410302047c435bb500673065023100b5e6019c64305fd9d472ed373fa120fb592e6d2f1d02f6418fc0a93bdfb5d3e5bbd8199c0896becc31a9e1d5b3593db1023076d8f6ac3ff32f6e8aae77cac33722ddf07e293e1971bcf154a52d785c173054660b0d5ac66e16adbc812f079bfce7460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ec6f588888a60208a037719d2bac15ecc155f4d43d037728865a3781d26ffaf6b52c7c21ab7b5f896fed99ddb93c3541023100da2e1ebf0c7120dcd02a571ac799d08b058a3c7ffd9b6e2f984827e2a654042a0963ad14e55a5aee7b017ec10750efee0302047c435bb50066306402303acf63c3542bb5883c1dcaa85c27534251e47e91ce85acb12945e911d517ee98244166c624ac8795873a7433637e8bf1023036b861bd638f15e2ae8ecbc6ec43460bb8e746828e3b3a82e5179b207c62ac06ad9bf3a78d92ca69613fb66a8954afb60302047c435bb50067306502310089e1bb7b7f9b063af554f0a8d10a5ef720fe763e90542aaf26b612e6f07ab8b2c75c73f0f69a11362ff4d37e455cacd702304c2a3d95ea8c77884a98f77b40048ccff9b5a4fb663e6e63e5a8bb2470e7e91fb5c39f9166196481d36ecfdd00c5c3210302047c435bb50066306402304a7e975b82a26bf239e088b279be649ee02d0ef22a694a97cc4b2b3328fb21ebba0e9dd8a4a719aee74d2c1a86f6faa3023055e664c1d9979d252b98ae99fbc8754aaffae58ed9b0bbbfc7afab5148781e26059773fbc74e550a039d6da949b5252e0302047c435bb500673065023100deb0bf2c266b22b8ef143600ee5a1812c01e495215c9b00bfd460e36e172f12afcba23ae2d57d55eb15d11ba77418b1402302db17bc52c57a024be5897059d8a14393f23cdadb8f97d0b3cd3ccc23521787e8d581935f6061ad91488d06fe3cf7bf20302047c435bb500683066023100d464938bbdc8990cc21310968acb37596319d67e4963ed3b4aeec3f2c0b83873940858a629aced73daaa0b761fb6d78702310092cca882123aa1555d3d4a6d30274b5f80bb60c0f38ad162354b755e8a6461042a5751e1fe66a3d960c1740ae029f7b50302047c435bb500673065023031969f1cc7642c4d895d4ff3d147fc0e16ef8615c558174b55da0cc3f890abba4231ae3bcf23730c162f9d5fca806439023100bc1856f9f8851422e436cf1545f3204cd8a9a41e1f9a63b9b24ac175c1fc3855c0d92a994131cc2c4972f8fb99084d490302047c435bb50068306602310084dbb48d52453e4bc4a7488d2a3527e88f51e0674684d24a66b57bc945ca8d29cfa1c3d1914ffb8b9f5012b03c35ae0f0231009766e8eb25604a5af482218f9da993e1e7c3678e8fa1c980e53a8bfacabcd6c57312bb2ce76dd55423ddee0bee05e8160302047c435bb50067306502300f37e42a37fd561578c3c643b1f46146805c1a45593a2a02b609dbc648eb0897b38b85dce350cf7c3d19a48a2ad1e8a7023100cb77831b2f6a650327a8ff7b48634930463407ad259dc0a5473ba5ee1238aaaa6061b26132fcfd6e2bd47ea6ab91a4200302047c435bb5006730650231009b5b18d0bd24cdfa3dc8d2da4db57d96f46b904bb5a8a4acbef1ec30cf5a4b21ab4b389177e7821d335a27977dcafe2f0230510505899070b40ec35baeffaea3e9d19317ee3ff523d53598bca3f69ee2ff0bc5a18f4e84d157368d925fead0a1469c0302047c435bb500673065023062829d64848af8718f50ddf083b82b0dc1b5fa01fdbe50a134d08cf248b362aab5b73c9e32f877d2b5240ab5d6af88f2023100eb419bc7cfa423df35da66728ce04ae285f2fb1a9e21a3cf84abc236963099e4ec441be65f38accb68873ede3cfc91ac0302047c435bb500673065023100f581788436f3af2c3c8bf47ea54f920b550d35a21c48b0e342cceceb26557acd7254cea9a18a7391993689ce086cd0f3023044787a22ab1c339cb9fdd4741af2dde40237b21d9271229a74c1082e7c0839a9424e17e0f655c6dda9277072c13a5c680302047c435bb50066306402306dcd8badad8f60c524e67c41c861826b913575f31759a2e6bced5dc4c983edc56028492648b3025524fd1b5f563965f902307ca8c7b7c4b9aadd5a6b53fbd5cc72e3ae98595531595c3ac07ce6ed37befee142954c43dd2e4ce75f68703281ff4f020302047c435bb500683066023100b850113f434ac680a0d0ac5c464fcec50b73f0493223d298ea2bb12051d519199898b775ee6d1f4b443805b30608c6f2023100c44c372f7f8c454e0aa3b4a47ef042ab609cf30cb62c773ac6b790656e1225161fda0aaa0092713595eff1787455b92d0302047c435bb500683066023100e67595976397c7766190ea791471d60cf172e5fac3fda571a8e9e30b3fab10fe1d24ae8a06dff38766ebfd1db0882f72023100fad2c1c0e0e4e0d59df9586eefdcb3c9965b907b5e25150de0d5d000f6d6c9948c933dac921f90d90853f7251ae604a90302047c435bb500673065023100e9c52d3e95d1e09bc61f2a7aca7adeb2c49ee5f34e0ee06d5798f5ec84275cc852de6fa597d72b5391de78ddf5bc85cc023002800719853224bb344ee52d439b1fe60e654ccf5ac81dc30f74fc20f26b1a8ddf4bbe17050592007cb3304c3f1a49f80302047c435bb500673065023100eddaa16767a7ee17ce40b437773fddaec1ae00c5674b8ba8e359b368af3e2d7df2e2f95debbd9d9682824b8e0d05149a0230436275db5575c53de2a0323f89c428884a4e13ca9845e7f731e105ef9dadb6d9a0298c9bb73e5cd686bd8965ec9488e50302047c435bb50066306402304f039e551199b47fc9825446bea8574eab36e2d549d06e56c928b11a882cec3fc5ec0f6e22c221ae941e2299c5cc014602306075d169c3e6572b2c0f26f67b3d47f84087484232835cc9ea8ec1d28276e70f2f2ef74859c419c54037404f7414a4060302047c435bb5006630640230059dfa5ca290a359633de47a47febba37fbcaa3374b42158870eed47763d9600ac4682307baba61f766961884c6814aa0230166b9f0958c9e43e5e255df6025b97e79b001f23ce32957fbdb790a5e222b13303007093567fa28f8d0d5f139f1cccb10302047c435bb50067306502300876b3f1ee5b05db0e5bb4f26031e6ce6dad9a417b2b63e36c409a8269b98955760935c3715231c0438c060b773940a4023100a558563220768826e3b2f5a12e4834c2836b5b4dcac251a0a3b9cd0581b9f0154d7126741b277715606de5debe6055a80302047c435bb50067306502310094ed9db992189bad245c1166ec579444113f2a7d327c000a7075fc98363bb3d5b9f31a9ea9b7be57e8d2913ebd38180702301c87f8406217f4c277269c18c4f28fe5ce1f5680eaedd41597b168d96908eb2d10b1f74888e4106fd235d5108b5f461d0302047c435bb50067306502310090037195a19d348fcb06e2244e0ae5ef47da49c51639747daf5a3abc023afd636fbac1aaa61082a12209ba586104620c02306cd0cd8dfa6e7243cbf4e47878013c51e8eafde848b32786b6664de52297cc2c734bf9513039cb36df8bed01639bac7c0302047c435bb5006830660231009dabf3e4ce54c87b9ab3a383ba1478ad05c43a3058df943dfb5a71835766cc86f1de937fa9340f311b759af585e6e2d3023100cb813933b3fc7f8adb040b7c67e23656fd00ef85457a454af8519d7f1ce0e684eca6f1e72ab7dceb253dbbcbeb6492e20302047c435bb5006830660231008fcbae5439d6db5d20b00113c976bfe5fde95510b229dbb2027c8e4e016f9a7e8445a65ab59e56de1231bf828e2290da0231008b1073fd663a7554f493106c4bd641e4665ad7e7d807239124e353de4fa9879826a13f20f16a4a13574ba5d37f806dbe0302047c435bb500673065023050e9ecd0010d495ee7a005c63c55af6f347a80c0d4ad84561ffecfdd409b95b689d0fa86b9ed753f7a96e945550de467023100e154151e41ad64a73667b5a710a088fd2939de94c3b93529cc2c06cea5902caea6ab18cf9f2fa40ca04a4ddb43af94070302047c435bb50066306402307ff7c8f0c7fb8c3e842a33b13408886287a4942911e1dcd37b26d96ebf7b64a2cb36941eab1182388efe9bae5422a8220230201729e9a4f5d28e563652033bdd5f8d1aa625a616ea5a45db2b5ddacc5dddc41fc75596aa6d9d62f797f899cce1c4460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300ca1e6a16f33bb7868a85e43ca08eb3a294818061ff73eca1069ac5af115ac256ceface9680b2fd88234093b2b689ec40231009a6adaee991412dc59c960c7c1709d9c5d93ff5bbdf5e3f386cc339ab2e34e51eb941fd93ff71f82560f04405496e4ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305325ed13165a6cc03fdede31e6a5a54ea7318c124cd2ef926118bc895b0af3d057d44afe2123213b246c7d385799c468023100e8970f278630dddcc5b1f7ac29c0d9766f1e488daf94d73398ec232f1f0b908bd42fa9644a1539af1885e6ecf447fd4b0302047c435bb500673065023100abc74c8a166a94cfe7f615a2fd1f0bbbaf53e06e02d79bb9e4556c895d3158643b1c4449b988d3ae59ac0ed01ed46f160230553d0786379e54d3a1d41e2ab1eb573a7da70573cbc33c1063632fbc8184fd5b1b486f7e152d09596cbcf26e3114436d0302047c435bb50067306502304c7e98dbba32f8522b4f155df41fa826f6654d7a6e274819c458460197cd109837506381c9b0acb1ae828dcdfa2b5c64023100fa0faff75243039d3354f62c4244d5966303eb4e18aca85eccb683835fe9e812c5e4f72c20f51a9d428209cbe8d03cbf0302047c435bb50067306502303f7a6311e8e1ae1486e1c56795179d08ba24f13e7306de26e9f520860b5a2a742407285dd52f9014b47dc61508bc3002023100875b95a405ec798c0cd0f97c1aa700cd477218810ba12ef987cf2054a39dfe8deccd717b59fbc15b43e24e03dabad16a0302047c435bb500673065023100c0ce281d0c278079ce67cad3d97ad932e90027b4e5b62e7efdb734837d445a9a037e0bb910615bf747e507ef8106e4c4023066cd001c3be8883ffb2e465808246f1d90891d04c3267762c5c901424bb4a1eabf4a286ce5cda8628f98289131fc3a370302047c435bb500663064023057b347e2dd6dc1f4a03736bc86b724454589853502dddb3c1e94d793451cfa9af6e15eed7945bc9553f13b700e57a9f502302946f04d07805fffb31140854ee8d7bbe97fcf2c45a5e16d861977ae1e537902f4104f3dcbd2b1704bddb4e6c833cc600302047c435bb5006630640230463a9da72daa0af8e285e6a5fb358d5ad7bd0aff1619265f98641e516dbe6c3472e06cfdf6d243e696abaed45a45d35102306312f6824ab727807553e7d6eb11058ff02fe148a927bc9813b8a1b58173144fd83440e773d716943911ad0bf395f2e90302047c435bb50067306502306e31d56d0190da4de789338b0c831758b1dce76e400f3b714b005547f72f7e8294b42fb8b3ee89b02df2568c023beb3d023100f9fd6d2383739ca013c1cced5c2d085d1ee9812d2faee805d08fba958f0b56f309ed284232e7fedbc04a2e8292889e120302047c435bb5006630640230470d6c17e8b124d94aa16ec4761d66ea5a682bcf9722223575dfbb06499deb852a1803215b1bdca63681c1c70fc834e90230216ea5c26044cbe2d38f9492417b8281ea6ee035050b4b696a60477d2426ab02c2d24271f5c055daefd9a2ab1b3774b30302047c435bb50066306402304905ed57fd39a83ca626d2e99de59ecba7d456c31d76ca2bd2757cf95d714112aa5d2a4e746be2bd0178135544aadd780230507c8c4832ae685f2e4e5009d437d648f0a294a682c2d83a9f1b6dd7f3606e3a6573b3e6a742f9aeaf4ee9141d30d2b00302047c435bb500683066023100ec17395603106eda1d367d7025cd513377236b1545e8f5dff62d9b9dddfbbd03bcaa68c20ff3074f2616bbe4913d935e023100800d978d2b01915ba2a1f14ca9ba48fc0c12c616766825b0aa60783a260b86c1032ebf906f70f805c4a1845e27f92d1a0302047c435bb500673065023100eece1b87b0a600230df2e840029bad6693a5c39914eba25cf5ccb7e2958a9ffc6e65ad606711d78e580d83fa33163ab0023017045140537941e0e097252458351136d28321110f3805dc34ad65439354f8de12e04ee58206e58d7b3bcd816d718f2e0302047c435bb50066306402301b32fcd7668170e8011ec7ada8ddbd3135a5e5d11cc1d9c9b18d2caf018b495acd79d63374823563b564c746f010ea49023076c35dbca8e3d500c1223cfcbad2ce14dff2e8bc0a191c0375488e69ac34a77e898ec270fa681d8af630ff96f50d6eb50302047c435bb500663064023023501257cf29ef16051d8c1701e0dd284147bcae8a80e27e009b635aa9df4adc1647a787c82175c7589643254ec652660230362497433c66c2694b563bee24d5dcfcf8e382ac2a090b71452dc78647ca851579949c2e423bd4bba00b9150b529f76b0302047c435bb500683066023100a4794b8aba6c943232f43c374784ed21e25a6d4b0bef1dcb7065ad7ffa30a90c4afd0b809d791de12c22cbcc6777bf15023100b1c0cf96c27ed78661de47eac606884981a1cc57e11422a48517a048217a4a3a032742f188c3049b009f3f41899f4b710302047c435bb500673065023015aa11b90462089b8ce47562531d417693ff0498684526ddf95d24b743e1259f14eb3413b649b16c77a7644de337fd60023100dbedb54ebd76835c7a53cae80654090906d4afd96185cfc6bae04717325407d2da90690fb221ff20093c6bf25cd7ea770302047c435bb500683066023100b80c6ace28291bd87dc50382742477cbe7fc83110b853434d14f10bcbc09745fd7ae0cf447257e6f39d1e31c0376c1a9023100f695c4cbab28fcbaccd94537c4f57bea2cde6b8ead155f37f9bdbf4627709b7abea6c52fdecd3f9a3a7f255233f531e20302047c435bb500683066023100cbf661d45542140f1cae6dc674d98e34cdc5f2e6722796846dc287b4eb29a6be2ff66b64eed3c1acfd7c123fef98d45a023100ce37b342ba5668eed6aa6359382accda863a221bfa01c495f56549cdc2b940508be82be309e34b0eafe3b23aeb79856b0302047c435bb50067306502302d760111ca4d4261d4c21da26c91ea9e1e7c871941f555fd87d6995ac536cf39bbd73b7c3b0c4c12778d47db675bb71a023100c41782a1289ae18f4cb8b99f3204375cff54b72394fcd3bcf55c7f29eaab8cec61efa8a62df0fc78d531611d6d502ea30302047c435bb500673065023078d8ed08304d936a225581931ed565a4261543f1032106460b630c35946ad6edf7df4fa0a6d4a0ccf3ef0ace40b3b4ff023100b302509434273dbb61c7b9a5a913a099e40093e2747c98e47219ab796bd21701a71c5ce491bcfca2b6bec1d55e445e7b0302047c435bb500673065023100b3807a3b7a05b839a0534c57ff79c19569924a9fff1a6fd08fc114647b2ad0d026b19cfb66d58083261eab5f0e94739402301d366ca2454ac80a403477ed2ed58e7ca0b19b5eafde88dea8ada3a1b5610b38423650a06b4bf79c032c91ed87f880eb0302047c435bb50066306402305bfd8a2b19163422e1d645c48fcff83d13f79a70ca3cd21209fc7679a08100a37305ec6534e40bab8a2f24024662e225023050c2eba1be8aba6f828d6a83d837f7e5f27d4510d63f38fcca3d443260506726676f18e208a542648487b78fc77a326e0302047c435bb500673065023100dda4c9366d32c3aac2e68440992d6c2203f510dec6cff8937b047585f7dcaf29dbf2a1d70159779670aabef6cf72e7a5023047e36ff139066ca4e9d10f008f162f521840737d85cbd9188c4950a35efaedd053aca4d5107b1655b76133a526d336910302047c435bb500673065023100a30a3f6d970c728e4cf852cb4fa96c8c79da043ad3794455235bdb0658cc8581dcff3938989b7aab4b0364a1bc67c17a023023210e4cf1624595f1e697b16ab561b8a4dae1a1a0073b49cab25285de7c8628e052e48570d7afb33d882761ef92e00e0302047c435bb500683066023100be262cec61a9514b21a088f083ca6e43b6a89239bb71662c2451776792dd668ba91c96e36d1ec10a69be2b5b4516609f02310080c84319bb15509b66eb608e65db885b2bb840b5f554b2a59f3b631b068016a9d0faab963f976a3eb2e75e349defd0610302047c435bb5006830660231009688236169169645f5ebd8f02114228b8a85063b0cd4ec1e73f3534b9a501c569a4e43856023e927b3829cb278f7a2af023100d72cfb2f3f1bd09911ad032d2a509be982c00d5a306893217da5437c006cb3605624fbefe146d943b72c03043d1788670302047c435bb500683066023100fda9c59d71bc1a782a459f5364f94554ea6374c55fa975283ddf04e088189d301ff20279364dba527bfe5178b70a2b76023100a0cd14f793df9172616e5aa8e18c8ad0fd8bb576b975a4e54d4a89aecd0c65ae7fa38d9d77d821bfdd528772917b38f30302047c435bb500673065023100b7a08468bea8a066e2297959911a56d91761135a239476031f0fe73e97cafdcbba8061f71abb8d0be9a01d2b0d41b9b602307e9d156d4db40569900da0e0a53fc9bc98f9de79224bb965ec1a29255c47a698f6235e4d8450c1dfc7d6176278c1c79c0302047c435bb500683066023100b8fffe0dd27dc930c6c2f60834afb022e86aa36f3f82b05c22b3048321d4df1fa59d5ff45e7b2e24dd4c0950b10e8a12023100cdea9bcaf4194c0ee6d0e41b397cce0e130b8d64b1472fe12ccddf30c13d09f79171b3d0a5d35108a6d90511371ca0bb0302047c435bb500673065023100a6400a805c88daae34295e19d490b1f3847a6835094bf9a39d0c3b782b60869567a529ad1ee37c01d113a4db45118d16023009b1eb198c360d6032f3b1f797a412a0a1139845844fb9b281718e5d12401dffcf24136e958a21707f36dc06b74d81220302047c435bb500673065023100b8295c8bf27a6c507e4f28f4d298e568df8e15ce34351b48edb3fe89de762375414586baffa146e4c01b82298078da07023027d55a32a787fefa949e30cd7b802769ed4b1ba33b2fb350e577b63d1217eeeddcd5d73873c291e86768c0d17b9cc6920302047c435bb50067306502300594ca4d65531fb41e051f9d935021fa64cf9e2f4cbf212698d8383ee2d8ea9eefe78a772bcc7bdc2f0e2cff7bbb1c5e0231008aef220d70f304004e85b4acb3f39b1c856c9b3f4f3eb768a2ddc70f10f09be557ac0cf2c3d3898d3c65c7390ca6f52b0302047c435bb500673065023022a3f9ef5d3ba36e214bb44d69304bf2aba4bbf72597ba38f173a332d8854328206e7b0620a97b9a787bb232bc3565c0023100ec0c78eed252cd1546a4386390d259fea92fbee93c3042e8fd53526cb792311dd208f8f70be1d84a5a17a134dbfa946e0302047c435bb500673065023100ad3123ecd9a8c3a257b2a3591c24c431d446bdc1170545226ce0aa3ee6424038cfdc86088d223aa18a4415d161bbcf2a023011c5967bd8408ef748c2c98b33ca1406842fc9aa88782547db262363be6ed262573ffcb9545bbcb4ce69fa6ff912d81b0302047c435bb500683066023100ec65d1cd1996dbe538f0696b05fc65b2edfc4408ca4176bc3cd3de7d486ac504117f3044203d07baad3ffba18ed505e4023100f18851d91b625a0b39697a9e8002c9610914527b09013e4fb2a59ee104c9a623b99ebd6d9bf147b2598958e1c26fe1400302047c435bb500673065023100f0dbfa0f97c787c1729709e1a4d9969c463a10a3eb0af5ec92ab60710565acd801f24333a745e29dd76f52b74e00da510230762dcfa482eb560553c5528e4941d3cf9f7b65cca54d9f64a111efaf365a41858e2ee13aef5dd82e3eb8899ca4602b380302047c435bb50068306602310082066a8f69d4cd4640defef1084f3cf3bdf9371453686f74608fda6ed274dd83d85485696470ed2cbe8d973303cd5acb023100f3ea8fec5e97d375a0977a77f27b1d44b75653317870535b859266b952244dbf8464905cab6d129d74a881e6daaafc600302047c435bb5006630640230221f8666443728ee3f7d72685588359caff209625619721f000dcf37b82a3fc32aeac1af7d6b2fa8edb3a2caa328f376023055dd6fee3fdb032beeddd20b0acab8a3281713915f1245bc006f5689ed570c9cf9fd7ae5d1b75cdf186c0926f1c8354a0302047c435bb5006630640230676fc0d15b86ec77c079b4815ee3c7e6320028ccfa6ca05c405a479a6091d2ef7a9ec37c8492be975846ae4ff1d08f7202306a122c3aa2a071ac18e8aa5e1c4ac0357eb4b484aee11a82f6433843ace472792d6c462becf05dcf1de8667746a4d1de0302047c435bb50066306402303f29f182543c612d40fb0459c6755100648da429cbc8aae58ad6b2266d232cdf0db8e6e7e8ccafced04f5270ae0fd90902302c40767f060b97dc12292e0b64d00fe25b6e58c74e6764fcfcd821e0664a7f743dc39f3657633196cd436825af11f0b80302047c435bb500683066023100d12421a31805ad5e97b2c3742321c517de02c89f26333abefb196657b42d60c4df7129de05071ade8c8a369265270ef9023100ac5ac0e76bc67df52d5559049eba759a58aa93f5c19171c42c49a4adeab982081f06d6f1d8d43d2f8ed59d721d502d2a0302047c435bb500673065023100e7eecaf8bb42e39efaf72d4aaf96214f2d93f2595319363f2a757fe597fc7efc01775db29c53842d6aea316eac28c05a023065cdff4efee9acde823d81481439e7e0d848232fe883f97cad2035b360e17f2f81aade56429cbd12f7efc31388e9da070302047c435bb50066306402306fbd20bef38a7b033076f629777285dbb1b3203f2c8c384734377ae37935aa2aa27da5260324cea02cedff7c089d08f802305e7572c8e7f7164e73b9790388edc0b83377ff29ad42edee9c4506e7fe15194f7a50d81c4ae94283f9c023146e9bace30302047c435bb500673065023078ce28c5fad4488c3975c5a476a3c0de2a2c082b7b658ad6f1fa7a132a51462596647bf09e2cddb318296188ea082465023100b2960b80e9c93467e2b0ec12da6aa54797597e7bbe8d6e13b1b714521a7bf37ad094323262377a8b8201a80042599f3e0302047c435bb5006630640230448921e5ee8a61a0d8a58e0c00272a98ad42c5796f4a10d482dc5bfdbea4bc5e0bdc2b5423a6d450aadba17cc670704f02307bba0993d746f1e9214f086afda6b35a3bc4a486c6fe0a1da6e494c0d8f1b5224aeaa780e3bf30331610ca715004219e0302047c435bb5006630640230576da318976a0f42b988680cbd14e4a597a5154c4da11257f8dadaf7d2374b057af4a7bd053c33cb3ff8b16b826ca747023025202eb76bb881b63ef961491eeb81f6ff7725feadac3531210cc901e22bed32bbba26f7db9362a7ed2aa22032efd5b20302047c435bb50066306402306eb941963e6803eb8b670653598cc45b23e38860bdd74db569d6e11780d35c6eb56454604b7b4ae5053ffbecf2a54ee60230614b41a08e7fb81ff402c61cae74a477ebec8e6227e5f737cfd3eab9ed2b1c543247660043b1d308c547c0d648dd6c000302047c435bb5006830660231009836036020bff9b14a94f0229aea7bd37fb935244c8fcc2da6e473103a89bace02ea246a4934a641afe988727976808e0231008e10bdfecb87c578dabe148d809fdc3ca8be1fad3918d279ea29169b4611b7f3fb8421860ca744ec56ccf29ddcdae92c0302047c435bb5006630640230029bc46567e5e6a16c7ef31528cf8576421dcfbc13e4bd89767990b56e2d1a643d69ac234ce3ba74ac44910f92745839023020aeeb6722d7571bd3b01fa836a2a51589aef8f93f22d9b578f539d9e3dab9493f6c49b347ee447d90ec4e3bef9713a00302047c435bb50067306502307d44b8ad924efb66143afab81edeb7c51ca67281ed3a5013a0feda8afc93fb18c1634ec784bf4cf7c16f17a551710cf9023100aa70d49d17867953d368e12c55fe4fe29c69adefe6063452ea403f3725a250892051c33746e5e48f06f60a6ebfeee0bf0302047c435bb50067306502306d874428f5f0fd89d6102b125ae9e6f19d1e07e3e3ff8288738c744e8d45afaf73176d06c3e821692d355e166a4a7af80231008e95c214964a90eea2003e2b451aa5a5325507fbe8df266f304dafdbc030660cf037ad19c676b038f9382be10a78bc550302047c435bb500683066023100c164e748171bb31f5ca0ec22af4e6d9587bbd4393d1177f0a1c9589590321da219f8fae70a9470e1e6a369d49beab7a8023100dc850d1e00a918a6caa76c719240775d73d4081dd1c89bcaf00438d1fd9e5377e066f99806c83a6baf9c5f0913c1c19e0302047c435bb500673065023100be38eecca6a76f2ef4361e548dfcea20b6724e30fa074847a592576a7e31d8c6a4b5e75162d5500fe27bc81c44544cf502307f0168b7d8713d68756895ba2e1b9de678e49f73e96ebc46361a742f3b35318ceb8ca943e182f56caabbac90942a23340302047c435bb500663064023041ab544c5581793571a9d17714a7a2f25d68c8385b8927eb638e393c23c86d0441f7a4003b5880827c785a36abc32f7202306a084d3f4f5fe95a91c12655dd78dc37ab13348e2c1da9090cb86a1c8c8c363d2b6ef08a20dd2dec8868fcdb96c3ea940302047c435bb50066306402304d103f790639ccb66f47204b37a8c159b8055230ddeda4dd5388ad078695c205ccd1a17a68a7517b6fd057cbfe041bc1023062acfb16fdee67bd5ea6525b8b66fa7c7f64788695fdae79483b48cc473e0cef3f0fe598b176a00a3a7bce33e30e2e020302047c435bb50067306502306de19ffa93e865e8b5fa311eae2816e74b0e8fdaae1d074d6e9983b081984b232cb88650634a79f63e97ed8534f3a505023100b087f29d666c195262f40293dafd0516ca9de44b16eb58f852382bf935113801e82588175bcaa26918ed3a092669641e0302047c435bb500673065023100a68566db6531fa58127f55bd3f356edfb5283d58351f4fb49d9f91db8fc44a2a3e878ae3588f9f14aaa6c174c33cd1f50230511a521f0b1353e4bf2e1fc9cb8b788d1d495b4b9474711660a3e4f876eac50e51ce156a2624caa4e0a8dcef5dc791210302047c435bb500673065023100b996c9eb98ee65fc902bac36d9c550ab85b0f903abd94a78ab668a42d7ac4f82a38473ee341849c0bf66043cba78f1e2023044e8891a290b162b47a2e79a2b7bab7bfbd6a561eb31e2c0f6f9b35a3c4d87c4e411882f2a8832790c1cabbf17c04c900302047c435bb500663064023038d17b2953d6e34e43f07fe65cc7ecb0b57b5a1f597a974b8bd3af53f8c4104308378c0f965f1462eb227095b26918070230748bc98c9ea979e6d43f8cfacc791e3b9cdefb08ab8b06ebddcf8599b3980abbacc961b69c9c5e6723300d14c9ad1b250302047c435bb5006730650231008d4cc59e59af552485b3889af46c01b50c531e701d11b2a7ae8fd5f470d4b2257dabb49d57447435f2567093825b01f502300233769af2eed8978d1f77da4c42238cf0d8f1a8cf8fd6e20e33000c507cb06eb44cab0e28b88a9e2524dc455e61a1660302047c435bb50066306402302f80c1b5217e42e1cd42fbb64f088efa0004ef05f541d974fe3dedbd55c66c25d15ee69d6ed5a06386d6e4c440fdb53802307203b388912d04a610ff9e7a70ab5b670502c40ebbccfc1ddf292eb075b8e2d03cc3e1c442041ccc4647e5e4991df9240302047c435bb50067306502305bfc1569a22aefdb6a7aaa18d944d5314138f52142189218d3cd7de69c8d58833ad4ad83ae8266a7e49b780c881373eb023100f879f9f49b9349716a5b90919d3bf9634c782a089a6a1e48e974a02d6d1aed8facaa56a295a39aca65e506c5e68b3cbd0302047c435bb5006730650230175be4c6d06a2e0f966542befb2e0fb4b240fba343e9e58b7b10cc5b334a18573dde78eb958d0d30895b57769d8be49d023100a8ae00a935317060aa9399b0d770de8a80a864d0e875983f67adc3b4fb180239eefbe52dd7a12f0c4cb737a3f26d52600302047c435bb500683066023100898223c0e6352cbef1d58a12e62bbdc4349b81e4034c610105e96cbc63010b472ec6d4043152de35347a41ef7a6754ce023100b1356b821832ae7d37204c58d438f5b0c912c44023376088c6d5ba4d404f3a9fa1d0ff5739f8ad8ddcf2c435ccc5b45f0302047c435bb500673065023100919e2a22e5d59e01e028c25a2fa016075a2ee17f07c16af12802cffafce20e714c24b47ff651f45c2e732d6e0ed2c41302306288c777d15bc5bc8dae8e307dfd4b0986fd1ddb645df4bccdf1a326a0d5574d5b6e32a19da1a3339bdad0bc718ed2f80302047c435bb500683066023100e9d757f3325bac99d6b9cf7acb2b8d2d8c8c1c0eb73ab4c1da32d367fa2a957043f1fa6a6813a64e91bcc121da2a3600023100b4d08d00bd50b437b46b033ef2cb1227fb5a78f51f83ca0d9106527d9e66f74fa854c9554e837a788f4401a7835bc6de0302047c435bb500683066023100da6a1d43b11f5699f9b807c71ca464e122b1dd4927606ae8052cebd0a2d5e80c9b5d5564eea13b43e0ed1206419c90f1023100d1c7650637b2f64177e7e1e76e40afaa867b0a84ab403ab0e127c92928ead0b822cc59fd55da8de77ffdad72ea21cd5d0302047c435bb500673065023100fa418e0b0e738bc29d5efd4a8b134fc6a25de6332c229501b244a370cb40d1ff39961e55ac655915eee3b2616a256dcd023013e381cec49fca62f0fb0f5cae9bd3563a214fb0051b2b2fa44b9fc441d6f857607fa44220c78961351707b83de67be40302047c435bb5006730650230758e0976e5a9a1837a720e7ada5e0145ac566844c9525fe27c51fa4b29ba1e1950f9e8186d9154a864e478173d012bda023100d10cde69a1b3f78f7a463ed50cfdaf160a3626c8a5550e163edbe491c2d0660b19c78cbbef89de80707aa6dbbfb0d42b0302047c435bb500673065023100ec92b55cdf8dbf154d13012aa37a0515742681ac752d407a81e84344b04e411e5c800005d592e57b7a3af479e893232c023062c3ed8421dd3f726ebd7e65ef2a8dd078c5beb3980b8ff1e9c2f48ee535e1d5e468545daddfa1123ecad911fbb346810302047c435bb50066306402300b256f665f45ba53c46feeedf90e195cac3acd3cc15e0a1504ededece4a4de85962939ce910b57a3fad4493db96a5d9602305ef23d59c0a2366e8a9513aaefb93a753b5de5e2f3d4366862f1e55db13edd3bd39497815e40e195aa7f3ca2300288180302047c435bb500663064023040862adb0e425c01ccf2b2cdbb0db3285a767752d39b1bb6732fe074abd8d7a9d429a4458ece14f9923c50c55ddb0b9202302a2adf91901a206697334f610c92af570ce9ff85afe400a99bb029a1e62699853c18765b6e771857fc83a852007c290e0302047c435bb500683066023100fef3c11bc5166a5e20ada383cbe2d6e743cd4463047b538e5798c3170d959e856cc42ff34a3b04ec9f87f24c3b1d13ff0231009b8e9456e513e4ab3a7f36bfcf7ab5850c9ff2b365c444d6c711864fb2ceb5dfd1941a20bbfce680a42f3cb4fd1edb440302047c435bb50067306502303b59f4466e0c817f3c87b503960ba926bf651394328c5b4865c3a1cdd64019d595eae19e62129660a2a6a82bb20fe4aa023100dd813e009d91ce76e23e08aba1680c590e4669456a1403cfeb60ce238962276be0c47cccda3e128a1f9009b4976ec1ca0302047c435bb500663064023059c798c8e61a9c62bc0a42438565c004c222443a4874a729a2af8775c2ad60b1ace9ef0a4fe90178a5aa88e062c629b202304e30bfe998d9eaefec78ea17af84d3fde36475248354ee013a68a18c7019b2ec425ef38e1efaa7342653f12574d17cdd0302047c435bb50067306502306184f465e4aff274762091be674b64d7b84c40c0b3729d6a003b84c492aab3eb9fc4b92c6f05c8c1285cd1d939050da2023100945a83b2c1c99a5701fb122917e1fc7c789bf49dd3349b1753a041043e13fb5c0310401caa8555d6a6dd9d6ab224a7f80302047c435bb500673065023100db0bf101aa49aa5ecb5c99133776131fd55d3b0e96da162da078194b182d13c9653c9be2f40470ea1ff610eb9cfb923902302bf1b9ec68e8b2864344218254c708aa64525c5723531b9833fff2c4babfac845dde7a4a2d6a7bf7da04cd3dc99883b50302047c435bb500683066023100b9309a9cdcd9a5d1ca40c344f216f3cc481c49f9ce02ea7dbc28c3d47a948f8f2b3ff53f0697d2b7504399e0e75601d4023100cbd06217e63f8f31e3a518ba975b873aaf9b61a34c5103ec1c229ebc7497a45b0ba6957d2af46e2b30a241ee61b6bc1b0302047c435bb5006630640230290d670372f309159c3721f0b9a6ad9ed6d9561158ee1ab34e57ea402056ff6706183408d9e0feb3210f87d92a2e97eb02303226f8337667a70c98bba9b4c29458c138bc9da986c14f7c2dbf625bd25a508e48801f6b950ec78c5822f871e09daf3f0302047c435bb50066306402301337d95c8639b742d858e3c15268472f1139649a94b30161cf5bb3db93027976e349c973c9523f87ef1148df7b187f4102307e585b25c3c9031b4d984dd4cb2f4444c86aae472ce51dba302cbaa5a7c0a53e78cfe20702fdd20c3a6d3943357754530302047c435bb500673065023064f01978430818b358d3dd94bde74634eaa0e4de80208ba57054af971d21eebd7d2c342990886635e562287c308a6ca70231009f21ad467ce4e841349ffd6c632be5d5f1dc6ce89f7e746355fa326cac2e6b7ab57655aebddcbc0d86333056269568100302047c435bb500683066023100aa58763ad2a3d3ddac6ba6f229763f51dca5305445baed803cbc799d0a8129f0443020397ff78eebce69eb475307d8e1023100b308cb09495467eceaf9c6f114386760d0f27424bf3e683004dea6c9eb18bcff5a371e8963855010d627dbfd3e6b66160302047c435bb50066306402302a6ace69515db360aa15c0a2bd6285cf3328da5b30474b4a3f0bfd434403aa37e1cab5e9837255275ad45c34b681182e0230315751a3ec2f95cbe2f8788c8d2cd80cd7aa52d40fa4d4ad85bb6c77c5b4d56a85d49bf6f834edea37995449d1571c130302047c435bb50066306402303ff063eaf54c2666ffe642614ad4ac62739a161e6f589592ba17f65d51ae63bd85392bc16543a89d99700ec89540dd7702304f175498f1eb36711d092c421aac7104802457b92fc0a8df84b3316e44a73cb20149157ff5f0c39814078b28cd5ffd160302047c435bb5006630640230731ab00b5f7bab3b6bc281997343f94bf22e2e3dafd84eeb4c2f2de2f20575c369941a23016a11739bd951ab6b576be402303f78a12fcf31a35d86ed895c0c0763099ade27bc056a4565a5ec779dbd4543d4d51cbd77f7a17efd668a097ba10563d10302047c435bb50067306502305aa304cec46b7f107199fd3f4556303dcbbe43bc9453949803883495de55049406242f1decadea08b1cf1840fb19690e023100b02accc148f11cf890fd8cfefc2f7d25e175c3a63a6e02c8dd8dbe44a4c11c643015aedcc1af7cc953b41f28982946d60302047c435bb5006630640230649771e66afc2e50913d5008acd52036ccb1247dfb719ba6d9b3084b7ece1f2c6c5d17f50841c89c85404e5082ae29ce023054df6aee99e832c8a66acb1521d448f19662e8530c45f9d91c602869ad6b4ffa7504c69dc7334224b97981b6cf4f98ac0302047c435bb500673065023100af73ea6cc7644ff7e79fb2e727d7f032c0a9d770cb065f0f60eee1fe362c83157aed7d809c430f77d77e4f4526cf0b330230685858350e4f14821254070c2398e1d86d59b4e14b22ba25aca0b4d6105c5b9622c81a8af97905d7d1462f3f6865f47b0302047c435bb5006730650231009d0a13602d65272efb6b406a4ff6043e39a492ca23df6cb5b5a54446b3669c3c9606c84c0e449039c333e50168dfc684023001bb45651b7923b18c7149ed819f1200a90ab5437d115ed845d4887f7af116fedc9f05898c4742a795b8d9ba0a02ef4c0302047c435bb500673065023100be5a336b441c530d99849583e142daa65c6e20eaebc6fa8d2ef4570306dff6c02b7e98f3049578ba4dd9e00a2ad3d595023053028553811811f0994731e9b99ffd9216db46890c85a71b02cd1be26483a5bc920746886d3ad13daa14236d995fc6a40302047c435bb500673065023025fabcf14faaebe8cf8d947879d8ce4411a52b19e48a24883999a56d6018ebc24e5f745cdfc22b463ac3bc31adf421d602310084b95cdf08b101093b3ce8e1881f9ee0a545c96e91bb954f47e05665b43b8c4dc4da29546d51faa61fa3c971d0fd66040302047c435bb500673065023048c5bf0c2d4f2e697bcdd372a5cba1e3923465f8c4d1d4bcc0b8857008bf7e33e0a9d347d136ee309e0751942aea75e00231009509acf69936aa19f2c62458422445b42a20882c1a7080dc1e52e40ab3097d6d45c37b6275dba324d558d039152778420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100af743bfcc138dd6c9c9c81661a406cf99f39b6df2e16ee2edd8dbc75f0ee135f6185f9054c94bdd7ab0ad8bedc1e4c6c02301f3f03ab54142a03003cff440e4439019ffe1d5199405162b41eda8aaa5222947087100ebe24326641d11cee5bf0ff240302047c435bb500673065023100b6f64df92f40950647cc4ab6c2f7e56aa55253fa67031e85984448c3821aa8b3b8896c0566bef4d4e08b6b265d7d50d302305f812d2c615e6a1ecb38a5c8d30cb28af9bd51c8c9a35b680f49b282a431cfb18d01c0b8b56ab472891f2082ce9a1eb60302047c435bb50066306402303fc785dc87ea6aa8677c45517361ce64f80cd04aa2bf1385d88dba4d8971f719e9511e2da1658e8e9d45507e27b67f6802303146581bba437be6defea934e3f89f70054a3b61017e058cb9d8d0aceb0b251605de64d22e494dadff493603a923eb560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2b889277f141e08828052461263212a3e442eaf6d803e3fdeec225d8b946114d2dcc5da70ea70008d307e5431cea0f8023056fe934c032faea878e92db94ca2abadd1996b4e41e1cce4e273a931bdb910c5f4f3c2722c197234ef60e63f272b0a4c0302047c435bb500663064023046911eaecf0143f954dc1299b750c22605de7add3e1edbf9ae436ca1e655558e5645b246f57a1f11b0cbf70e5394f92402303be29ccec4da679afe69a13927b330b4edab8d12eda2317c4381b1fe6876955d56b18c63f8be2d3507c98147a5cddf570302047c435bb5006730650230564b65a98ac701328eca219fea04887d7b79d680004d3607f4bd777bfd416754c7a5da9c81f8cdfff6c3826e09fb4e6f023100df44444d739db3d991be06eeb5f63c0e18c3e56dc595d59aedb6ddaac7afde6b936b483fa2955412109e5a234dddff310302047c435bb500683066023100d4fcf12cec251ed0985eb195486c238be948b67d7acd2b8cae2100f68e9224089853b156888fb33f478e07cdabc9e72d023100c1763d6729d83fda439eccfe797a577c31402f25c7844d3781aec7e960476ebad8c5043e35e258e1b2dc4626a3de6d150302047c435bb500683066023100d4e63f39dc370d9e6d69bf8fbca9eb8a09050ffe437d7aef162806dee73b20866395339ee549a4e7877cebacce00a0b60231008a0f2f795b78e3466b068e77d1fc965bc6e923d256ab7deb7453f9cd239b4c7ba23920505d30ab2fcd196e7ff34780320302047c435bb50066306402304c16b147335ef36c1e33db5c84434ce8d0eb18ef9aceef0e4f4ac2e2156641a2b5a9ffba7fd9d15cb4cef7ebd3a9d01402305e3007d27aaeb02ecdfc74135a39eab2fa2603bfcc2179def96eebc8bb3c1ce0481455182748aa2a1b3331c588908d420302047c435bb5006630640230161ef2a99306f7e85228ec0374d67fe22536a5e95fae700c2eafd19db931120cdd20b598440dd0fe7b17d0bc8c46574302300c6401a49ca81fa5b6cdb2ad569a6677edfa9c18377139e74a07b262cb58f9b0b3683ba854f461471d9cec74668b02a70302047c435bb5006730650230644bc569a60d4eb3bdb41018a905e2183becee24939ac793d5d6543ea276ef9074c8cb2ac2e491fae8a99f9262b341840231009f91097ee9f801f3f17421571ae132558a99ab7dab6fef364152b1889b24f2285863e6a1358cbdeeba936ac11642146c0302047c435bb500683066023100e6746cc87d6ba170fdf0f331a2c2897b971f3ddb803533971b421fa1a26ada8d0c845596580a9b5039b31b9ee53f522302310087acdd005d0edf2d8c0f4c06fff2828b5cde11fc29f752cccb31f608e9fd638be90e4b55080ecd67ff0e1a64a2cfc3530302047c435bb50066306402307c3f190f65cb925d2a7cf53ae0b1364ed0548aa54ba833ea86410c6e854369949544c6707ec9ffdb51756096dfc63df8023058dbe316d1d24f51dc4d8374b0cbc4a89836955ad311d149f4a8e9d71112b669e6ebd3b5c80dba30927bf8276d27f1720302047c435bb5006830660231008c2c02977f4cdef9c5edbb2a7727b3870ad4d83e2431bda8e5486ff8dba2730c01ba834d636b135991071e8e8b6d27b8023100b1bd06a10f57a6a1a75c3e46a18cad8f6e74f9f486aab8a152e6065657789eab1fcec423858f5d0ff72e956d65ee595e0302047c435bb5006730650231009939dbad409b28afeb0e83eaeedcd36ad1b762a8c70403863a2546f6beaa2bac33e14663bdbe9690d3f47d81fd29a689023013e1a9f506cedfab2e62e00667f6ec1c5633b673e90ba15d805c321d21ace2c6b3a4761f0953d2e25262ffd700c5adb10302047c435bb500673065023010e8daf0410af3f24e75c77d8f881c80fd96180584b5392b22c4d792beee23c11a96f9e6cee2af73ca6dc02d1e51864b023100e69793c854d1daec97f90289cd219cc88385c982fdd6cd3f380cae72b2c5b53575e696f1038efb3459a5c32e42593d720302047c435bb500683066023100ffafbd3c3c6f7eab56a9c270e91e5df6d97fc1d3df160bf4f6157dd0ae4cc3f09c118f7d5a38aa3385c36630d6746a3c02310092d79c49045aa80df4d544dce9f1cc1e36ba5520a9b139502717bf31234022e6c2491871ba43831e29c32d4f2f89d4b00302047c435bb500663064023060b73fe83d65d9ffe2203bd25f235a3047d6ef861717a9f36666e1239fadd69a9802282f7d6975c8a40180cffa4da55d02304349fa1ec76c887584a1d2377f8d8b4c8c67a63a71c2100e89c70acc431dc005dd563e18df3505bed733fee9330278920302047c435bb5006630640230084e339b2c242240b8848c3769d858464265f4dd1ccacccd8867cbc29afffaff57e06a773960e4127bc123ddafda90510230244b0cced5c0f8606fb5d3a02755f2ad45f41e02c3681054ba0e8f5b987584377d76f5f8b6e721f906a95abc573d8b6c0302047c435bb500673065023100c776ca6f87a52966c0ace8b0c7580b2a19746a75c53d461db8bd15b8527eefff724a04b57abe149d2836ab019a3bdf2702301b40c090505c5bf4a5682ce2cb9f1a175b76213f5640b59b527609aa9e9346f35bdd816764cc72830ceac47204c1bcee0302047c435bb50068306602310082ea6618dfbc099275c24e7ff11a7d2f1fecd91494bb7783552152048d440cc88408396f3412b3324db0275a6ad92613023100f82a197ffb69904cd8e0a73474dda624ec5eaa5a2b7ad96c5a1fac5765e768a9a71a83bf097a1c094632e1ac36d20c300302047c435bb500673065023100b540f5497a5a19a89f342c417a6d68fd11bdf46274bbc341716180a793ddf3d2b930bb78f0defc97bf940e4ded25b8ce023064180e4d3555d0f49d0ee65c4c28bc6266d1e042be54665e73818d8bc0932adfea983e03106312dc82c5288ea74000840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a79c89de7cb4f9d4a96445ebce48f05046f30a8a3f7b83a1a96b9866087b39e9d3aa55c9f07c3d29dab867ad8a5c8f1602303ff60a74872fdc91e1496671740fa39b7fd33ed08ffdf02c0a13050a3ef1459b02b586091b46092a86d47b96ed7bc39c0302047c435bb500673065023100eb7ed629e01ca1ae06eeab04fcc0d169189c3b9a01940c7e9fe8de97062217fda850eb14022b597c2a5929d41640da1f02303ea964f48dc07901e72e3b5c109055621de7afdb0d805bb0dd51d354cc7ccaf1487b0622cc2fc743a18e486ee999ea1c0302047c435bb50066306402301f706750daffb67a9405bfc6d95403a6a4ec9ad0e29ba6df086c88de22d121182bd3618f0f9d8aa8685f0eb7974713be023001bb975626176225e45ff909eb0c709a7596801aded58348cce9430ebd8f4046a0499d2a54b6905f16d295e81b6f95960302047c435bb5006630640230308e60b676568ff6243d726bbb763abd11dd9cd9e393f8393578bac113fbf6af414f101d1151113e6c3dded27850900f02303843c1acecd38da64d99698b24168c6c890c80d62839690f28e1e54b0b4e0bbee2db0b2d5ecd70081c2ea533f698c4fa0302047c435bb50067306502304c3a75da9609099dcc63799a2e0f18c120590655e03646bc9e96c77c639813ef99ced90f6cc4123ac1c850adefdcfd12023100b9739bfc9acba09e30882aad8fb8ffc6f8711cb9913e6ffeaae0e6e812f55c6c8167f2bddda919b90b5fcff056794d7c0302047c435bb500683066023100dad737036a2ca331759f06575dba81c8aff826896348c842e2b2b71839d0ed18110551302c7a8b0ac4360bcda21a88bc023100981de04a4b8215d1162622760d34991c4b0011b62d32817079afb26391f40a24d63c519bf4b8832b9e85c29748b9e7020302047c435bb50067306502310096d69d24347a24df947695773875fcd424423f0dc5080d9d4610a10e5b6e5cbef7f16b1b640ad77f1a03bfe4c406ee4b02300ce98892ee5a4fd7f499b7a2ba46b03b0bb564299f80a37f42c369b39b50604bcc571c965ce1d95e5fab689c60be434a0302047c435bb50066306402306518d8a871678ade6041fca70c48fd0800e9546041b8969e73f8e5ef17a7eb82a3d368c67ffd828a570a9c086595faf20230233841eed7a2fa75adba4b47c6275fa65921c70993e591732f874f1507f8c6901ac49d1d80bc4942fa6bdb3ab233fcc30302047c435bb500673065023100b797534aee40c1f05e6467910aec1c5d66676b02cde0005b07eabd66711627c9af5863d121f08179f87b620c5ff734d002301fc5cff296dc657a553ddad3b8605144832329521b82ed9126328277bfc823ace6fbc37f29863e66ec7903c97f8db8a60302047c435bb50067306502303bf119f9e5cddb7c335c9305c168915141756297983470f5339b2cfe399b5bd2809498159a78485f5b0191f314a792be0231009d4f40bdff6efd8323095849fa3fed35781e2061599774c3dd68429d42dc71a3a594568eecb1806d37e10d589b326d310302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023029c1f5458998ff625315504748b405d070fc84bd20fed1ea6883bbe456b5691c474a5954b919ef3e4c313dcdba7c8eb4023038add0ec85b02821fcdec3a81edcc2d23fe2468bdcec2f89688852485ea8dc701399e84ac1a6e930aae104ade7bff9d10302047c435bb500683066023100870980f9a6a0d0a2e5e05fc37390bb6d3f106b5843ff532fce63ffa9c657cb0c485f2ce9e133c1ca83b5289378de1d0402310080fe4f66661727ffb4ee89455d01e096b5500eba4e01aae21a63e3f1df1f37142110ccd3668d230d8c83c704f9fb8ed40302047c435bb5006830660231008b1c768329f6e817aa501c0499a32bdf3e8292ed06c7f5678f3570a5d809af2e681bbf199a803da616a921b4b9715e55023100dacaf23213380b9730d12ff94aef388349f7f90a1a2f3dfcbbd97eb0eb9e193e74d151d8c95088d965b239600ff77c860302047c435bb500683066023100d8ee4bb582355f3a1c568467c65abdd0454bb8248d663d21eedf1ba29532557439a6632d9706bf4c17968c6e17b9ca640231009bce4b7919e41b154eb156089dde8401e01b50b554e81db6c2927c17091daaba9aafb46f75837d98c6f5e46fa9c8cb9b0302047c435bb500683066023100c0c635128c0b1bbec34e2707710f241d387a4d50083df4f6408ad35feff6a705b5c2af40d07b378f0f527262434bb521023100e9955368eed1e6b2ce28836de276cc1c8f213cd2230b5a53d8cf981b1523b73203c6874997f9e6f9e0b63256cb82a4030302047c435bb50068306602310094d290a51bf99430415e47e9d3e30a62ad73a0878f88c7811b5f73a20d7beff329b10d74c648ba9b1ab0455891c40a4b023100fc8d6b993b73aab85357cf1ac7cec8862ef59c4984387ec7ba5775bc1f0ad2867d5fd288ea9d883b7203ef1947e3b43c0302047c435bb5006730650230100945ac00c26fcdb7ca55364b3d3bb94c91855338676c5414b9b120c6dc0ec216ad5304c53b78a92125dd9fc369fc39023100a8d60203eac953478ed3e3badc8333a0e7d7bd0b6a368cc1e32675f9f53326c129f1b6a518b5712c342e3d17880cb4590302047c435bb500673065023100d7b8cce044b1e20ebbe11f2317e9a01d4f828814016e403cd539b803250ca653cf38a814ed1dbbe6eabb7aab8fa81279023043add9b0704a61f55dd99670a10fb93f259e54b15d282a58f28bd88ec56ad97e8252f3de52ba680d288f70e07133b60a0302047c435bb500683066023100a5ca9d16bf5aa65015f27364f2782b603b94a128ff6146150919251e9b6b4bee13ca84e617264f1beed522bb8eadc2b8023100a581c0496401c4802e9a34ab2a4cfcad6da7752106c455eaa264f8e98f791b941347ecfff1770875e2fd1fbd0a580cba0302047c435bb500673065023003e60ac35b3718ec443a3812dce3881c542d4592cb18bf2a443aa2750eb00c386a83b6af7bb463c20fb07a0ebbe8e678023100b6252738f39237c99fb2003fa06f2ad42da7d8023ad80795c2b2ee40f0bb28167e9c0c3173a204ab093a6b8453655dea0302047c435bb5006830660231008d84e33a8c63456ec42f9e7960aa99842acd77d3810235caab25324fcc43bd79d754b4b8e070245dd9916e16cb524e45023100c4387eb335ecd356205ad65ba0829bdc50e2a28ef0566d6e5a3ea87fc3a9a284937d073301eb47e360516827a46ad9800302047c435bb50066306402305df78e34ec60bfceaeefa3b5898d04a72d031c1f3022a48f64ebf694a3b1f0c3bf1e75531d396d11b379501d80a936fc02307b590213cfb732415a35c992e3ce07d73285ddd722e4c53b332b85cc42fe22a7ca17d614f2c1c47405371ec8eb8d04100302047c435bb500683066023100b494b571270d0100d73faa2e8189a61a938aa5856cf50fb0d2f07fe8d6078db1126ce9edc014632b46dfa4062ecc7ea8023100fadb5b4be8927fb9cbbbb2e9c023b3a04b4ea34f8cd5c59be4d75da6057d285dd9c663c0ab87ea5d88bff0ca160fd57f0302047c435bb500683066023100a4d6f95d5ae8793dbcfded385f66a3a83800dcc4764e5c19a171309a5e45daf8f5b0262edf90f5565daa8d1bf75eee1f023100b0fe71419cf102e91e4f8159ce385816ebcdfb8383176f1fda0a7942e8d0526e0185bbce25fd06a684e8f139846527f40302047c435bb50067306502303e1688234dd8117a67ed0cfafc1b208693fa9f7824a515630ff221f4074d72a225a6ca5c792baeb21eb47870006e5b910231008dbe9df3a127c0f50130d4985a3fd866e67f21811f13230713dfbaf8f23c652a88532f9b5759b817354ca51a87a48af80302047c435bb500673065023100b4dbd250aad25edc735d8ca67ca4f9485c6e717a40a49b90fb2974f1d87c1bf2e82173523997c3b551aebd8d25febfa302306e2c4f2530749c7acbfdf3f030d4bc7dbf063888fb6c7523787833850646557ae2379d4a496a92b4a626ae23667050fd0302047c435bb50066306402307fc60c1303ab38040dc7462d5a979038e81e9fc4b660fe26274f498c8aad3fa5bfd56b9e10fe6f5f548c19c4e8b0707702302c41e7a07e218c47dfcff7bffee278b477e71fc5dceecd81cafe7972baf59852916b397527f28be83b94c872da3501f20302047c435bb500663064023052829bda65a54a77c747b70fbc13b2fcf813524331185f36e9e26f070bc5c9515c540ce4d42a67b050961f18e816b4a002302a74c650ed87c9f9daf5eaea7e0240bc94ba8035b6e8cfff74112b241f1e1725238b6f6828ae341c2c132f31ca8b759e0302047c435bb500673065023100e110c85ca613641f1a71b1d271d2a9acb2d1de56ff4f43fe004c5aaa76f5a739b190600b3e7b07206f227fbb566247c6023065549b98bbff6c8be88deceeaa17b4287b6aa4caa8faa927ee2666d714441d631753e63cef3ad3df9a2200c0155a5bcd0302047c435bb500663064023067057f37f12f524e58bd3df7c4fb657de1659c76a1311d3f306928237dbc781ec6f8cfa7dd4e5588fa6a09b75447ce6b02306f7c46ebfcafac5fe3de1f70dceb6f4bfc1d94fbb8d08d629a2d2ac0ad0e0646ae510d9ffbcdb27bb4d0807ca1e4055a0302047c435bb5006630640230022d59e0007362adcbf8f055e6eb02c9cefae0b69edc1816df715b91487ba8674576da8fd95df435dac7da59457eee010230765d059d01763409f20af076f32fd5fe85df0df0ed22892de7bf97c5828abf69e30067cf874cb4c9a5bbead4c2fd75c30302047c435bb500663064023046587ac38bdcb51fd3b9b43327ba41faadaf8a546297921e6a2081987e996c6ca6c9e18cab8d7aa11fa1ea97a8c135f802305a94a025b6611135a08aac15d77cb9d554eef7bbffd5dc91d04b7165816959a5a7abfd158fe527df130bfe4ae8f5934a0302047c435bb500663064023005a8f0d9bd4fe4dd1b060da31b66b779fa48faa28bb0248f92c1e1f281438443586e762f7c5c40317aa61b245b1f644602303130b4c8093faefec167bb5bccea940ef1209e12f5b27182c0c9577c981db2b30f9d508a870400a4d7d4644f9c29ab400302047c435bb500673065023100bf1bc111978eb44583f73ba96c0f9f68a8317423fb47d9c2b279e150c20e6cf1ac060336e9204fffd069faa755497e9c02304b47a17f4af387d49fe04270adcccac2dcf2a86aa95f8c746403849916c87d65331222eaef593a9d09e9de3aa5c7a4430302047c435bb500673065023100dac7674edbf6958f97b342df75a2639f70a2e77bee04479a91660395965967c2e50d6f4f51ab6f6f9e56014e71149bb702307a64673f7a4dd17997c9f6896c92e4cc18c105aac7452c8ffcc8d11eb2046bde991271591d4f1ea5c4a3337f390b744b0302047c435bb500683066023100e8629af0a1981467439ba556ef725297908a22d9b4d3815c2b2b939f78105e826170aad1d9ed51303602c0e8807a694a023100c9e75ad02875da601db3cf24b4d66cc28147d64cbd5a89304b2a5f51c773648f18590fdc554b7ed684719a1f0e4953560302047c435bb500683066023100e11e6253d4fa90f3fa555a4387269722cee90a9dca7d8eaaf2542d15c2244e93fcbc7cc0ed41e38cfbce02e4379c339f023100a8e8b783330be9d07cb7a3ec205dace5722b98ec8f533957727bc0b27ef0dfea975d81d5a7ed3cac6991bbbdbd97a8660302047c435bb500673065023100e45137036b3bd8a2db73a3d717e45b1b7911c4a48aa553fccf561cb812180dccafd1baa25a2ca3ea088deeeef4c5973c023031af1a2119081c26daa6c5ff0f2140d4c53a5f250f604cb2b8864d40baa729405679d2acc545a3be73658cdbcb89df970302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a2188f0056c0dd65ee2db9a39aef41dded3f642e8266773ba702ed14ffccf55cec2e764697f60cad800de0f67eebe7b202306b4d22a29d2505754bcbf26071d148420eeb0f7e7484f5e1c4e9166ee8afe5eb95fd859cb5c28eab4cac9ac33e3ae2050302047c435bb50067306502310081f167690aad00a45377785a10feeb55c8fb438848236313d6686287b4ee63bc4010786c0655ac975abdd4a6b4b310100230757f0e03611282999c2935b105ac20e23273a4fae45039388b5303125b39f8078ac4c9f76ef44904affbed57af043ca10302047c435bb5006830660231009b0bc8f6ed0638eb13e6d9d35b034cf70cb978c54ab07761effb072edb42c16f6b7d13bd5edd46ab418fd8be66c73627023100f12fe31d8ef8df9366e8daec9fca143fc6a14372523a2a692ea6f33cdd3c415066de9487fc81e3ae130410d271d6b4660302047c435bb50067306502306d850136ec3f541d71c7dcbcc7bdf535f81882865064d0b49a2d842c2a77e740aeb1429d1d70fb788ad5aaabb8c0e102023100bc89352cbbe58213b76244910cee4e2223b82848c86286ccaf068d26884aa3b1899e219c5f52d7f21192baa74446dd8f0302047c435bb500673065023042b7e079ebe6e6cbd4e5853a9f7881da1f76004193d237c36910409c1567959e9b14590a3ab155d8784151bdb0bf12210231008f98ffe724fe6463fe0cb5b6dfcfaa3ad52594272adb0123a4412d2857f1e86733ef075577e033672bb8a9991fa3b7eb0302047c435bb500683066023100a80d96e15be98a904d7f5024e6cb0924f1f18fcca13cbfed876a3145a0582a911e8bace5cb81c2054f31875df2d9a943023100e647a29128911596928102d5f9ea6239a550f54d51be8db0f606a5e0df7a7b29769007ef0717d99779155fea849101f70302047c435bb500673065023100d6794ace14fd28516a0a843021fb80a247e1b7ea1400be2a41004a169e18ccb2bbb658a8e2ca19e2aed5cf6c5d09a98c02303fd480274c06f877844ae8edd62eb3a04ae7aa3a11b3e3dc61dd153097963cf5f93fa7bb493e05bdfd221711df08f0930302047c435bb50067306502310098dd9d0b1d5a47b63e84dd2f34afb70669b52228af8fc31ea1a93e188c711d2d9287e1ea4d82d0f8a1213ddd4f332cd80230407e169de4b10e273f07d20e481c6263f39ab0f0c21051160c3c12873121396733172983cafca966897b2bac5be0aa900302047c435bb500673065023100bc6b645e06ff1975a6bca191fea430034e10dc5579e848b60138a05cf44d3ff2cd09e8fe48ba877e008da2ff20385f3e02304117ad12269d8d858607f8342d6fdc99784ba5544816404ab4adc120ad0c94d603ea5bb1e1ce5186d46f81b927856e450302047c435bb500673065023100b151798e83abb09036befc98caf4d14c3141d7a41dd52c9b77d514301b1ca491e012cec6ffa99b5fa361482c3517f03202304fd6fb85bd468a538f4ed3803025ec0555cee99558ecc804cf7734cebe72cf041f0ec2ca41e7acf59320d79d70c988660302047c435bb500673065023100f05812acd68881142d25df6f239d71724b0c2edc1c2627b5eae5167d3fe854c69c8a2283b92d33b84741f1567b250ed902300590b8e255b85b78a2114c087ca5aa4bd3fa1049073498bee5f0c224658b0ad7c3e083d41d7a062a37d7fee0c6395d910302047c435bb50066306402300aad62c1b2bd9efcc3826e766144e7a06be9420d1f51b126aeda51c0f70346b0b35b974213659efa7107b5ee1ea469ee023055c36523c0a28e7360350d0fe381abd0d981c44811f8fd4b14dbd38b5fb67d686e6c915c0daca0be624ac643b9f96da00302047c435bb500673065023009c415be1473e014207c1e9c3d9a501470afcbe7acf94297600fa5ce2601252a00314d019c4f83680228f10e3761a6070231009cf4ac57b6c9b259f58401e8de9950a6b2e2a3b1228624ff1f14c386a03003b63c3285687b95fd57592eeb00c51b31590302047c435bb500683066023100c57c6f250b9aa7b85f7b37012e280efe3c142eab36049eb0c002a55ec2eb3361cd64b7ada3313712b92dddf40e9acd110231008af904cd5a74bfec40117357c07cfebf0903df0bb264b603a9c740caab888b52d7519eb4f2ac0a0eb1cbfb83e4fdee280302047c435bb500683066023100dda219951a1868b30e65d5d129ea2976844ca1b251d0b39b63f0f2c2e18b27505a1c5b1814e652d747bc7eb11e822636023100b3f03557ccaad594507d7ac624e87aa16cac1283d78a7036bcf69e464e6ba9c179b8193f9941809f1a6c8c9f3250590f0302047c435bb50067306502310082406ad997e4a31de0449159b5c7570bb09621c43a88476cc5376cfe1f8c260caf304fec1a453f6af3c9ca8f0ffc38390230636b399214cff92746fd251de05e78a18942200bc106b8f15ad659e754a3e1437dced41e755637c920be1a0055e36db50302047c435bb500683066023100bdd95a7b7e495c63e19fe41aca842fa21d996787385eb7b936a4e770c9942b6c7a3677b546b99657583b95c659ec912202310088b98433b7b5a3aa3e32649525057e632654bc32500c415f66cff4825c2182099606bfc86b2b824af52d32d3a2a61dca0302047c435bb500673065023100c72bb6d235e9656c476f19e08980794d2eac011d6cdf283e364fb55c429dddf7ffa2f81010d25d82e5d0c62f2ce613ef02301a73d04cb12e27f06b135b8b78ef088c993bdbda30015f7e29f828739a4a588ddf593af90367857c6660e7380355ee910302047c435bb50068306602310091011a89161d5dff4a70718069a88fc23caa79ccbaf8ec0231031520a78f8bcd7d127152d5416a0e38eb7d72979f2ea8023100cb0923c65ddc5bdf4a81b83c2527a6ea775863319b481e7f3abfb65d12183f5e9fcc7e0a3b67665b2dd492db2c252aa60302047c435bb5006730650230115bb2d03161e7eee5cf43f9e59b02a5dced9f22992ea049d21abac4d56bf82e76fd88ed6a3ffb29cb1f855d648001ae023100d8646e0836143dba486092dc1f5071aba5cede8f3fa6eb6fcd7c051a9c58ddbb389945b3e5deaf412eb40119f9e3b1490302047c435bb500673065023055611518b3b5333b7d932369ab25a0f586bb7c8fca1b9effbce7fb0f4c14e2baddb98d416f7158775ee4747fc1d49023023100eefa6349ed8136951c12ffaabb3737f88c116b7610d28530eda18d56b0108ef43ff30c6b43882933de35595cd66a84a30302047c435bb500683066023100ac0c403f67da0b94266b57b60b83dd76bf20d5768d19ae0c01048210e37af1cc24e3fa4a6e870b39395e1343b58c4fe6023100e0529ed5eb156139597690dd99aad6d38467f036269025b4eea8de9696f8658eb21a035305e535b78613df73c638c6440302047c435bb500663064023049eac4068dd143e8bd44756049f5895b6fbdc52fc59da20d2f3e617f28581b1a2942b3b2ecf38883886ee42f96474536023003589715e02bc9f656512fa43cc35bc5f1b55f0b0a2df742264f0890606d11ea7526895ec4384e2a6031abd90c1cc2280302047c435bb50066306402300f2078a925581eb3612126d07e1c853886751778907f4e32bc9a518c65596ad4e55f667f870f31ff9472d97fb721f6fe02307c55fc422b135dd2e32da5187ac0b2a8199c6a0b06a45ad3b954e2e87b60711386a2711b25c748c008de2d70c76dedaa0302047c435bb500673065023035337aff85ee5ae434042195e8d860d12479864a570e80a20fb83cb94c403c0fb5652a667f3566b0d8a52af41ab17235023100d4f8a229933ca5c0b6a010a3bcfe20c6b02a3e7210ed49aa3b3f1d90e8f054f76043d004d58aad160b4e4f22d52dd7a60302047c435bb500673065023100f2635d81fe96f20e7ca39f344ef069fd51c594a7c9e0dee9732286f9e9dc7ee7f094c2d8a24730bc0a6d459c8a08d954023022bc461b04d474a262c3b3e4bf0ff225d3ef018f373f908ad2ec801faa0991dd450759dcb0553bcb544c38d677f0f8290302047c435bb5006730650231009f8ef84e8e35d13e77bb2623220bc3e2bd10e0cd0a2d0769bd788765fbe8cb88cbadab1cc3a75b1363d515e8c7be716a0230154ad74cba46b0bb972b38cadcdea036eabc2d54ad3cb0ad9bc1779054ba5e3c7e6cbecc792c179165092222a608218d0302047c435bb5006730650230190a98d24b96b758ee4c3ae7848666d7d8a545b9201fce207d36fc716e0a7ba9a80fe2c45353b0d0977422fdbe1454b1023100a622229d1f3962c29aef07a8325fbc3ea5085cc53d7e49a15e20e38c866c2804f27c9609f4a315fc0905d045c37c2ad70302047c435bb500683066023100dc7017ad1e2254e7b35f3f3d3fdc01d6980739c14c1a3447fe5f3026c74cd8d46f6710ef4b7d3a9170cac640451a392a023100d3c2af40c0d907103972e3b2737cd1707397588c4eb06586722b5345ab2d12a27320ee1496146c9eecb0a6ddeb4445580302047c435bb50066306402301128f15dd26a1eb9b3e7e1fa66c41f9a661a376df272e91a60f419ffca8f08dbee2b9c750fa5778a5b3092fac3553a86023054f419ecdde766d9ff38060801a92f5a2cd5525859be11c4352d4beb57ab9efd04103cdbb80ef01b4a2e664f033d274e0302047c435bb500683066023100b207200019044b4663886bab8c99f97f7479877c96f932b6ae05f678fe35983353e91c65457654a523f31c5e8e2d2b72023100e8a47626d98398594eefa8816d7ce51e790c6a24885eab757486516d0622925606076ee38db1d22b1de804da385684960302047c435bb50067306502300d9e1eb291b0b638090706273881b4b4af281d2bcafb0209f146ca5387dadd907fc7c77f8bf17bb6950d1ba4c1f9ecb2023100d0b8989e811395d422d356f9a297a50cc666a84ef00ea8d9a0c2c38eef888f1871531fa904c058bb36260c682cebbdf90302047c435bb50066306402302f990cc83cc7eb219ab00b1f7ea9c8916c6c858b6efaa5c7a6ea61832bb3bf386cc5a2db01b69b06571c75f5ef0486b4023072430cf5f65fde241d665a7ec47d79ca484f0325a72b95a26466bf9567c06661b15a93778ad8f341ad334f2a0753a7f30302047c435bb5006730650230568fd4e9d88a12ff7040096ed43794dee1cb650cebd4adb410adea5ba63ca7081e9cc6145ff7338728d814060c30ccd90231009b9c96b1f50dbd08a9f94818855eba441f27dbad946a12d907e70c371d6df6a8970a6dc867a1d7042ae5bb1286cb87260302047c435bb500673065023100a3d9a19c58032b2bdb17bc0815882845cf844d91d7c5e915347457ed9f3bcb3405f99c0cf771094362ba55535db663f802302aeca6d6a1d86a60421d2e5334b2e4c3846264a5c6546e5279910c39a7d73753eebe3af4aa03aa7755ed941644e798f10302047c435bb500683066023100c948da953d49812f8fcc87bb12963fdc2df9f60a332f6d6ee62a6c6e305d5d303a3d6ce76ee3ad9da6e74aa169219191023100f6b41c9389cb4030234b49fd00ac9925e848185b5e96fa038b8811ff12f4d21abe5a60316e85abbbf26d164eb898d6030302047c435bb500673065023100d518a1616a53a44a96d2c3419af62b7998c02166ac1c61b323e5ea288df501e82e2d057a17ff44e5b4177fc7d16a2239023008fa8bb6a5f9c87a681c09b8c517a23867a348f2557fdbcfeebd427231a7ef39a3aa5164fabeb720bd02d9b5614ca05d0302047c435bb5006830660231009de20828c136912ddd3118f726431cff1273c1bffafbf06ac8601b4d60e5e493cf11dcd59ae756b74f09c936e4af15a6023100d9ecdefd335dbc71a3d5079e9604af67695a5d6a2119cb216ab91289d949b299780b115406175b2868b7d558e18e2eb80302047c435bb500663064023008bc351a6df54283f74a1b42755823a3bbb090b28f6413b8f19fa69b676242d463aa10a106d1f4e68831642b7c42982302300a63db354fe63bd8705d89cb3741fcc590137a657085f359f456637121c4a0c7a92601bd27e90314ecc68065a4252a270302047c435bb50067306502310099414d84b4db684ec260c71ecb39006aa6de0b596e996bc92332f677e1a98c25cc1d601a7fb39a19d96cac65c29ca47f02306f8a143c0504f27b154333af4ef162263aa8d4ba8cb36c5b60a465a6a4414a71d46dae56e84d11bb58fc7e670128a3810302047c435bb500683066023100b97ff35c8030f6b7030e359040ecfa5690ff76c70b0f4dc114cff32677a82c9d453dc3f14d51a4a5177c3880f02fb4fd0231008f11925a9d288b35508e05e97102379ddb5278e96777f9eb5f20da9d931a4e38d3f4710dd15710b79e58582d19b1b74b0302047c435bb500683066023100e9e9d7f4bcdd68bfca916c1d1867b23c11bba21f46aca325681934dd9783ef9f8a3d3f61ba0edbdd935a28783a7ac674023100d7f464d7c1f7ad0ab7abf01101753671cbd0dbc13c25c096a4008980032bc5d7e96b3edfad7d1024571ede5b34f919bb0302047c435bb50067306502303da23a4ae1e1b04db6da638142ca9ec1ef589af384912d4f3b593776d10d2d005ffdbb281c78312229f3c3393db5b9f2023100e5a51e74ce949bbe464a88074fea737b44b9269e0d297fa9f165f372bb877f8c9f9e5eb1c9c88d933119c281f644b6610302047c435bb50067306502306410b859a3e6eda02ffd693d3e1f8cbd3cdd24f3ac4f331b9945263971ca8ff8248740372380cff1419d54aadb4bb3d6023100dc47ea19fec235eaab6940be47320179e2fc26fcbd0e941726bd05cda53629fb1fad3f5ba96d742ed7ef76bdc44cbd140302047c435bb5006730650231009155483a5aaf51ee7664878a118f8483ec7e70b297f74405d16b8625b105c2013258fcc0908ddcdf9e915c9dfae560a802306d57d30ab253b987a14a2f397e2c7e1e735de02b9635f56907476f34295300fd02814c13e12ef963c59ac500b3e304ba0302047c435bb500673065023100dcbda01cfa51d4c69df9baa5cb3808af24ceb71273cee1df244609c8d6961a00773bd6c2063bd49d42c62b31c6b3f7ce02303a96b5440443989be81a8a8a4dba7911442968d2d16c706d341fdb472ee6c9aed17dfd6394865a386b6540d114d2eed40302047c435bb500673065023005c0516cda9072d5af87b273b96ec145155c692a40da755122653987e435843737aafa17719557dccdc366841fad54480231008a3d83e21650bd43690e6c8e972f7069f174bd95f0ba4919a585a8d43a6848b997d1dc30b54a8d696eed055b678d2de50302047c435bb500673065023100ab5f9cdc2a80c988c8147b76bbe71439c615a1dc051b8ff172a26a4a2e8715aa798bac795147d403bc687f6f4d26d6fd02304503aba15341e40f672a064cedf3c63a8e010c941ab14f9f0896fcac3fc4ec5091a7c7da797b84c4967731a1562119fe0302047c435bb5006730650231009142868111a9865cac31237fd45913712f8c133ff2483abd02fcdc4d19a0ffec182feb9d203dedcc5df26811c7c346ef0230129315c45a83f7a5b748a9a870df09f07c6f1f7ced72286785cb15792353e6727d739594db0108b504c8d88dd749a8c20302047c435bb50066306402303f64774d0f661cb8449c15849a3e6ab25d9c3f5af83e8cb0eb46ac92309264579bbd0b08869f7afb1b511f8ca254a5200230022658abfedeea210ce5a42f37749a6853d3f12350077488aeb02649476a660cf79afc688a7a12407cabaece030a6eff0302047c435bb5006630640230725ebdbd8d2399c6e5296cf483434e2b2e5119824734b1a5dbd68781826e10f02a241dc28e658a0bdd2570ed1249c68d02302181db06295d74d4cbb25cff884fa954aaf92903b00035b97409bd25686ee38f3258f8723bf60ab3c0fdaf9c7cefb68f0302047c435bb500683066023100b851d3f2a9ac56ffe53d80ea6d0d03e8a722ebbdefb3f11320596aff96df948afde714d2377965a05ecb3b87aa715b3f023100c1e0d2228f9e6e4ae3ba60dae3862eb0542144e4a8870063b08dace9fb79281082d4a90b3729353a94b4a38ae0aceb000302047c435bb500673065023100cbf5b2f00533491310c12a138bb241f1adc0f8369ba503a4371ad561c188a7b67b72a25a5f26f54be49c93b96af3e8dc02305172ca96ed5db4ddb08e2cbeb2712aa8dca37d0ffc29dd9136a8ea7d8665d3fa4329380b4d0b07ba745ff4b0b1c292250302047c435bb500673065023076aa813336ddd1673c39dd549fee3ef1b7e9d3b3efedf9ce2ca21b9eacd29d66f38568e27b111560eb8db58359e6d017023100a2128f89bd58ff338776ff9c405f7a783a8abfc3872cf6e57135ed46e70c9da1d8ea274019cd898e7de3e038b5321f410302047c435bb500673065023073f9702c0dde5e37be32e7d3cc4088249cd59141b06de36a4553682d0c2a911bda7bbc19383c2fd66564f3e2bb168965023100a65448ca6b5945503019a81eac4c1cd6f7c7bb0106d27fc081b690beaa73f1b04642694600c078aa76022b5f92b389f20302047c435bb500673065023044ad0a725c8c8f8d7e4145f08779d8d75d989f4a04bb6372f16ee57c3c8adadedbf35ec84230c0942259bd8d3433707b02310083a980c4fb0426e0c61ff22979392edeb38be04cac0a39ea1d3f2677eca5c969c7360d5bab8cb0cf6638eebc9d897a980302047c435bb50066306402303af16a59ffb91864a308cf7d593f97339b8a7735b80436429a01388d2affe31b1199e23e45eeab4731d5cea14bb5377002302f24ee155481a81b6ddd0b06148376af3702818f890750df5561673e33a9e88389824a5124bbcccbdd8869bc5ecdc4600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230161077fc58091ed137d2cd7a881c8af98303b285f93e4c177fbcf20d4c70a5dcad464628f6e9183bc995c423d3d36c67023100da3fc17b959192d7e883f1bb0527832675687e6eae0c0a921f0579be0966357c96da08ad8161c31f7c4a2f6f143647900302047c435bb500683066023100abd4a6bcb33f176b7889d1c274930f9ec10317c68aa25fc43955d15672c562085f27af0cdee0d732ea67f32b21f6a620023100c1b7b5bd1a8656a2f07dab82c78da72b2406c66b9b1437d1318327e0b9ff781cf63e5ef91155d1b9877c2ea3642223750302047c435bb50067306502301da89414720c78fa7633b698ccd8198cfebd5d82714aa4699f0c0474b7928d2a1c8bee39019dccf71b68a477393f04b5023100b6af6e1b5865ead8bab39e16f318bb1bba2c865901ca58aea2afb4f99babef609af2f8fec6eb14545a7f37b50c4fd0db0302047c435bb5006730650230532b225a112d6e52a5eab4ce51e6222f50b9454d1db51836687b056e3fa63ba4cbc2f1d32f5887f030ac8f51243183bb023100bae90d79b02ced97e6a94a4abb374a35869fc4c6b75859cc110d2d95082f57f6129fbaa205fd67e517b715912fcc5ffa0302047c435bb500683066023100df618b72a1a328c455cf23306ce66f39e9104c699d87b8c3de56b28bb39ef1877fca12608edb18383322dcc68bc646af023100bd5ddb83c16f8bdc4e5cb64836b55b159298a8fe2f213551a1d4c73429ed806bfb532d4f5a761f8c139c137c10f9a85f0302047c435bb5006730650231009bca3182ad0e33c044af7df628cdf09def94852f3e42008a4c77a3691c1d46f16e8d7af07cf04c52a3c6bc73ffa0b8c20230223572ecde234c9b980a686cabd5b7b89a272efca3a428bf702e52e0e03cd79b0b00a625e865ef9e5ecda03dbfb7e3bf0302047c435bb500673065023100b9630757c81d1fc306cdd743b62eb9d5aa277de19d55c2d67dfd9fd5403df2372bb66f167d4977149c211f0f05110432023043c421ba4e9abe581b55fe184ffcbe4f450f3bb46c4b9c43a380075c265d25b04de60258370974764bf32789f4b275140302047c435bb500683066023100cd74697527369bb4050ba2504419f80c15d6905d9d2b77d88c473e8f2045a1609319efe74fe5b664d196ff4651286392023100952c16ae6fed7417f0e320c1daad967b9ba762e45c38575f7fc5d21c80be1d2da5a9a110559c435c477e3c92d875825c0302047c435bb500663064023072a54427f6e127d4f5f8057df2f377fe2ea622345583581707a8a7d1d116255bce6c4f4d9698b0868b70e65a2bfdcca80230703864ece36fd5b828be28e853b16a0e975ed9c0f5b5a8e51d139616e0f2e0b36b544e34982c6f9bf9dd19d0555662e20302047c435bb50066306402305ffa3335eacee645a21debfa66159dacad5511043517b474eea512b74a2e25608e437be84a3cb111679594ca2fbf89a4023016a2e339b4fef91ce53ab831727f082fbf89dd5948fc5b17e423960a28e15b7375517ce561c7989a5038dc2af9a713730302047c435bb500673065023100d263b97bc19814d55fc31c2bdfd42f4c5ad8d5b047b50ad159a7252f9b30d4258c8f2fa6e0bfa9fcf792ad802263145202301c12e22ed9add4396f65b7036702dc2ecddf6eff4732820f7688e614ba68859900226596877ede3a779c99c0d80d0cb10302047c435bb500683066023100804f4efaf3c009f11832173ebb67ecf45253727f393db229474ac639096e25375fbcdd6166815df9ff560a9897140182023100fa470a7fdbdcffc75d99c4057be31b58bfda08d711b4fe1e691abdc6b8bda11820938d0e53fe6c72c73c1c4a06fd990c0302047c435bb50066306402307966994235d1afed8b3a4a47a1fe8896a7420adb5170ad739a42308447c70c668d0ba191ac68419b189b81d2ceefd3000230598e04f6f8444f2416ef3c311b0fa84d13bf5692980b2f369269061c00df74a69fc3fe0beddc0cab7e31124c5471b2fd0302047c435bb50067306502304eb84c179af0e04ed44f9941794db391b60c31f55e3dcdd85d97d1a27cc51435b70a4d53a1aeb956892e44310782915a023100a9e2ef5b2354b3c1983ebc2d1a9a340fec99ad020748304ac720872355428dca51cad9bb34125c3746fad4769e3d38cd0302047c435bb50067306502306dc4e24c90018fcf2c80a6fdb99dfd49c6307ec2adc097186352087dd51a8072ea78e5911754af727c8d8beac1c741bb0231009a77ae6487503430893d32223b2e0ea3555f820ffc0a026593ce3ab51a972ff3e12b548f164152645af6d84ebc950a360302047c435bb5006630640230421daa6ad2909c1d554daf689b5b53494ec39f8b0826f6ca0df3ddd33d795840c55a0d009a4f4a208ae089cdfe02f5480230611e5cd9698c4a54abaf866d72bd37c0f81cc4f79dcf9accdfd5c21605b73e1c964782715d553b98dbe4be24a10bff110302047c435bb500683066023100921dfc1b01ee8c17309132c74caf17bd78e100afe2ac032b403a4dc3c8feda05dc2ce5e93112f5b6972cd85908ea718a0231009665302a7744a58552f792b96c7ef4b064dea44fbd94163c0e36cfd499e854d77cde5f97d1bda26db70d95576aade9910302047c435bb50067306502303c877d1870dc3e98670efc57a44a1eaee2f1b2f45ab08eaf78174e8f8cc7b8b3dd865e86c537efc0240c3840bbc5f611023100af4667db75d74f5a46165db4a13d1b21b73442e5e767f048b141fa9003f0ec6fcb99ff8ada1d841adc8742b118405ff30302047c435bb500673065023100c239ac6cf867327a03b76f28211c7fb4c36384544f3bd967e2e25dac0738c3326e3f94c80f59afe3e19cceada358ce0a02302c434500f1e5cf74cc61017f2614e797ab53f8a04e270fdb52412381e1f1b1c0f2a6827b21ae6abad58919c95798d6dc0302047c435bb50066306402307e808bd59e5d0409b0fe67a08baa7c401999f93a2f6c1973e65efbd4ab5776bf95a833f78f1b84e294c4c44e30c17f7202302e75c820796f48519b4670778cd8a07c09711d07704f1e71ca3ae0872e7b195b79b178ea1fb7caee02f252b6cfd75be40302047c435bb50068306602310098e114034603d3d306a64d2ec5b1a69a982a30fd022d81a6629791ed25799119eaf0be3fb9f2c289a60ea5b54bc9ed55023100d75cb42b63b40d3fb89ed04e047caa29da879d2994f76a4527835989418e6f14795ae62c53e24fefe177590961ef616f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cce1d7fb1e51cab590fbe74f8aedee14e83df595a5ff60c0f90b2f0a85d2361ac38b6906ef7e602fadca4e05dcdc76d702301cc389445184a578b0b5c8816128e036edaddca4403a18cd11e7013a71c32aedbf3c9ff0f9b1c06593a83b3697a51c190302047c435bb5006630640230449b7d9a819bed16d49961cf1f8d3dabd5f962296b8dfa19e1acf89b7b3d44cd9ada81e2ed2a178f8bd1732988263fae023027736624766f598ced7c7ddea105dbc5f972defaccd7784575bd2bd249e094e2b466635d7a82e4e316ed6eb16080d8ad0302047c435bb500673065023100d67ae885dab7a5c5cc703da4baedaf7ce890d5b9621da44745294efd6b73e0da7448718dfce9162c2e9d66bb3ac6338e02304f40812d3ce4e26ea0fa08c092465ab0c4477fa1e4f5a254bc2052b83027e4248af1d16eb3249da2c7e3647edda5be5d0302047c435bb500673065023100d8f8630b2dbcf2c1661f386d65e181169c53bc4e915e12f2439e83f74a70f0a99727aa57503c708761aa7d1f3f709eb802303c8d4f54779e963e22aa4df3a699a66048ad551b8a591c89dba63fc9e072df816bfe94faa0536b7e8569e5f9b9afe1e80302047c435bb500683066023100927053fe12c87ee681318dd4f8ec2cbfb577a175d30cd9d32c7ba901777ad1bea6efcf8374394c3b635c70986b7d2b51023100daedf7b43ea344f5a58171673397ff4d834d4ab8da9345abb43d74466250de96295bc702c890f85ac212c78d45ed4f360302047c435bb50067306502307c1b3fa1115e711ebb641a052a8bb792f06bcf030c2362b7275e313e4a41f83f8a4b5b6ed38abdd69e250a031fb1aa38023100bc6f9afeae032241795589698bcc3e585462577e624ef3914a87be3dfe62c9d5622a88d41f8ab73940a525844f0503a60302047c435bb50067306502304d1a560fcceb42eb76491fdee8f24b78bcabf394960b3ded8099f0c43a2cce324b145f489eace02d7d68a756a16a9bcd02310093100a615833dbc5d9a16dd82d2a592132aced4eb26f82eae9a957227c4c5fc23020bee606191d30f7eac6475b205af60302047c435bb500683066023100c7c06cbf5e013a1d7572f90300969c7ae4312333e7dfadde7a090a40426f504b46a3e5b42404f4d3770eb0258071c819023100d16ef6797e06c88a71b9d90861254f5920a42ca273489740d88dd55278445ebe90ae9c8b077ca735aa8a1c681b0ceedb0302047c435bb500673065023100b0faebfbcabd4bc752181d21cf74ada39b57cfcd9bc97a4970e2fd365beacb225114e87d727d5c6d08a20eb55a38febb02307d4713ec7f9b4a2c67861e85410c4abb3a5205842d1ebaa1defefc352d612014cdabe22e4a462b3257a7a5502819af7b0302047c435bb500673065023025d76fe72593633d014c612052817b33fced8f403add9a416f143fa5ef8d4ef0c0e17df76669d87d88b71cd5c2f18619023100ceba71502939663744abcf1dfe39c914369505695ac29201e7f96d9c873f20a5d11abb3b7a38dd94d6969e4b54bd99e50302047c435bb500683066023100b678b460b3292cca745bd5a2fcd4aae546d452a587347d6e2bfa2b87e229a6adde7d24dfa729fde0be5411f4c597c3da023100f8b25fea3aadf1c5cdb3b49fc9aa316a31863fc025328476236b176ebaa9b9d0ced326d37dd9dcac5928f7ddb6b7f0280302047c435bb500673065023100c85e341bc88ded50e9a51957842dffcdd388f377affa54ec124ee3d18a8187f433014c063f947c48a6015174c376e1660230182858b328c834d5865fedb8941081740e58eb91bb19475afeb24ae300eae1243cf2f3f5e9ba71055943cb048143883e0302047c435bb500673065023100b31ceaf4a9a6461a73326718b30667ab68494468539f7cfc22d17f4459faa7ff69ea95c4b5ec5422904877377027be40023026e53831f52a336221799417ce7e93bde85432bf3246defed64b065be8812ab90cfa1b282403d4799f2c08907f9ced090302047c435bb500673065023100c12fdcb64d73574f9dc4094ec3b4ca2d744a8fa4d3d92277e3735003866c1f5d8fdd5980c95c100127ee8cf47fb9608c023071e0e802335d91fa44524a72cc7bc85dfd882a0bbedb9286c4bd4d76328d1715f8de134ed6a7c1c3f7ac3680d993ad2d0302047c435bb500683066023100cdf483931bed90c0ce33571a2f3b52086551a893e50c4847d1f099d88ed00bb44d332360a487986b74eede9b282a0ab60231008271b0329524172666bb69069a4fcdb4c6fe947de5e9874d190a1adad30a187f76a7ccca9bfb09be8095b5a0bc2d98860302047c435bb500683066023100ba67bc4ce895f48e0705df010a9a06ed338312db7dc94546c33252bdc4716aaef83d25cb6a12ecefe4dd645da9701bb4023100f011c67b1bb2a8f3007d9e6d0a42e1c8a41e3d9a336c40d2f348faed40f16d266b081be7d5ccbe401e68d4bc5648a5bc0302047c435bb50066306402304ada3b6895cb0bac21f787502c757670b7528a3b5acc70b17ede72298cda0e141d8faf332c81d6c8a623ffe84a544c0e02306821566a155ac25d9bac0619774ddf141665fc35494e0da8c0aeb0e6580eeafd8b58aa70f0c5a89bee582329e05ae6270302047c435bb50067306502306e8f9b7f5ddd0fc2f898889b69d91a18ab11851fc41bff4f8d503d11da1e77fd3dbcc3cf478fb8427d164b1c32760566023100f00bad755708476d54c9d92a763fd4c83b1e1d9ef22be452a7dc83c32b9585946bd8eae64bbbb780948d269ae2d413490302047c435bb500673065023100a5a065b42cb23ce4f51a357d0aa01ebfa6919b6d4c852db658418f99e3fe25173d9cbdd6a084a3adc194834b2d64c0a3023009f6a2ed45ba4b053e21d864be88c98be80acb5026c3eb567c58d4d9c9fa59b27a7e890b82358170ae7f6bb9c723a56c0302047c435bb50068306602310089bc111b0a8b4acb4eb088c5d2b26f02e58f876e88cca3e4b87a180444a2b283dc49ed1aa4dbe2bde7e5f01bdf743c22023100e9e45a0b387b440889b5ab983fe89caacb71c623964fd63f5bb9000dde83dfbbd22e60ce37a605911dc4b51a1f02b5820302047c435bb50066306402302096f9b0f7d5486e69fa6499fa2bdc8e71630d95307a69c9ed77c5759945729066427024e00d7532817526f22db5684e02302542038c0c36781ead1ebf195560559787b238ccadf0bbe35ca786f04cefddbb8207b10a1972b23e1892dca4a2c364500302047c435bb500673065023100bdcff7036ecd12cd78bd7f739fadfdb5c57c3c7ce90a021b4d8dce6dd39cf0026cd694a185a51eeaec5f644b8eaf2d32023055f73c4ee91b6c8f3141549a90745a45fbd00bebe59b132c20cf4af2ef1717896dd5a4cfce1bd95b47e1d7b13a9d32800302047c435bb5006730650230740ea37899168852ad2fc9e35fe5be9852c604aeab8416f87bcfac54f64e777762d104df548902ff147fbb3209df2957023100f4169de79ca2ca8d3b47984ecfd8afa4372467da3db2b07ace268b627fc85e0836a999cd82d0e1880bef556c692f2fda0302047c435bb500683066023100e30969c9d12986eaf8eb888b538e5c9bfa96af39e1b5cd8be332ef9565f5d82c89a09fbcc3cf0f5b9f05ad28dcad07ab023100dfbbdabfc84fb12b3382f43cd30ecedddcacf8e2d56a62f1a598a631459fa8455d484435dffe832690df91bf84b9be460302047c435bb500673065023049a7360869a3a76a8f2e80ed5fccb13830f0907a362eca2c8fa4b9d72d0f090e13bc04be91f05f516a62180fecc7f312023100ea2e109b39e7d76bdbad64e454b240d6ed61603871e9427a71f1fde5f13052f9294ec05bb5548329bcdf0ec89236ee810302047c435bb500663064023046193a0e5dcd4a2b74d8b65cd836f7c34d0f21a602d2059f16b5180401d21e0f17cd84f8680bc8c8ff17dd99af4c7ad10230682984e862f3cb75b8c5b2b2ba64f4a61898e959654520012ee61631d3e6520efe800712f2c28d45056b959ce40ab9a30302047c435bb50067306502305d3bae5f70fffc350208608f938c177a1d7e5a4dfadafd585d6dfbfea5ace5e57ef10af9bbb50c3ed461da2c9321f146023100ede338769f20ffaca7660b38f09bc3119041f2b4e7edcdfcec5c30918c13e694ce226b2236916267ce43ceeb8075b48e0302047c435bb500683066023100ea6d607050f1cdabf9ccd9195eabb3c13041fbccb7feff0b29fac81fcbaac636b2e3ab12a29a9b37ba5ff21d482647de023100d7edf42881733cd0acdd057507a0183f463be7d514b5f28e045bafbb5a35886a3b0e40d3664c88c781a4ae2255db195c0302047c435bb50066306402305711c69903f651fa1f58a0cc6cf3f263165fdb991da3ad69c2761420192becabac4b10457e5e5c6aff956d5dada403be02306ec3e6ac8221bc54175adb26c156597df6812c62d26cdf0bc3d3a01c2f87e9c94f097d350a25349a4f6202b031923aad0302047c435bb500673065023100a90e0ca4ba1a172e9dc161798ce45c2f86ad368b418b6ac7d769482ee0c710f29596c3fb4ff1db9101e05c0fbf0706a1023019d7fb1c1df24c691ce9fb9caa7f9b84e524e85d52b317ce08231478e37beeaa66b28195f2603dab2cea00bbbeff927a0302047c435bb50067306502306b6bbee0798346ed8cead6b3c6ba9ed86355cc1c98aefb6ae27fe9aa60ea0c4643eae0f1d36acc79fa40823353b25530023100a5fffb38e6a6e3c16974d5d2bf2c099370b7debf9fcf67de858f0a3c6686c649117ccb169784b4f0d29d6bdcefbb46760302047c435bb500673065023034682ebdc530c11d9792226b3e143148060732ec19cbcd6d9ec716eacf92a630eb79d2413a68ac9bdc7028a27e328bb9023100e91f83bbe7566f86bb02db73af922d5a22fb3419d8c9324ab6b4a9a9914e1acd078be9ffdc4be2b2b8cf2504208e19af0302047c435bb500683066023100e92eba6e7624a89849c71e1929994394e73de6739630accd60532882ce9be1957f6e6ef9a98667e96c150e14a12d1af5023100b2d49097250c8e950106d8f9ca0475ebbdc1130d145becd387350f6f5e5c2436625e5ddb0c1a898dc16831c1520c09810302047c435bb500683066023100ef742fd18271e2600ce04625e886adf3e7b3f49787bb17494faa1507260d3fda772ecacb3a25f1a8423a10393f72ba82023100a72a3b6b7c17ea3d5010817815e03bc40dfdd20894c1459ba949cfdbd4c441f9b751d2defd34e8424384fc6585b7b3e90302047c435bb50066306402304ea6a5d56ab54dd19d7de693dd9fcef36883c0d6716de3a7af9ea0ee46abf70577655f8b7fa8f8a432657f76b33fa0f90230744919d9e750d065de7d6d30628b4a60203c2670b3f3fe11200610d6f3af1ca9c0b955022c0306dc78ef0892a05548360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bd14481f35340575f8180437487b81e2ac2e322c57743a2f1a8aaec40e40ae7058e595aa3991a8fbd9d2170500fbeea8023100d7d13cefcbf44024a3cef2fddd0d1e82cafa4277c8e3bc30827ed70f3acd4a8a56680f46995c03b8bee9f9caf2e8ee280302047c435bb50067306502304f13bcbab582eda733f4c44f13327a4a97f13c520b74451c2adab175e0d1b366dbf677f25263afcd4bf961bf7e3603ef023100eb63b97e771250fb621ae917d09ad58e45c35c0ef382522f729a62c63c7724c2112e705f9c23a122061513801e7b5fb20302047c435bb500683066023100b9cb6f2bac44b3d3636692e7198adbdf407eeb9ec3cfd48e4e17a1027d45a8f11e4b98fea448582c67e0a45fc07fc47e023100c0bd3c8a4b16524d48aa64118777f65343c926dd1d539a6c2af8d07e4d171fd85f2bf9ead8503171849a24a3c5a95fba0302047c435bb500683066023100ea2358961830fe879de72d607b12c909ab36e111d2f826a2c04bbd98cb75116f75592f4c1a34972f902d951a162ebf44023100f29cafbd9d286f0d9b37b873f8d1f40ccaaa2208755ea17c556e748e206451f26fdfdd0cb659f066715ed9aa88d78bcc0302047c435bb500673065023100dd16ddfc597bc6e13971c09df7c8f7eee69bc6694c30a9589459142d0a28f831d057f965460942fc4544c9d7b90a00e602306556a689400d7649ddf97834c895ecde0c549f21b3abd2c5f5e1cb05e07e0e10ef13863b9bcf821765874d6189e34a790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a3d0f5a92736ed55906670a7ceab3e30f5f0fb6e123cc32ca1bb5c299bf0cb130e5dcf4c7b5680b42f13b2b467b818a002305c7f7b5bf16303aa43bcd25636c5eddbdb3e3587cde996537a50802cf09e078bb00fa10b7134d1fd936a09e54f0af0440302047c435bb5006730650231009cdf15f620074dd0e20b75017e109975e907464ee4b32ce3524944242c3e982e1cd580c2351dcc27188b9249f4641e8b0230788c1adc09cb4ab84a84ef135f8e047489d0fae5bdefe276d193df11a9f35e14fa700ca30f048dbf8580b20df74b3fd40302047c435bb500663064023077dd2b51a005ca9e9b3fd7b8e73dd6967e37a5f8b79ddf86568bf7acd9bf9816d6e5c2818558e76cb008909be7951add023061a2a191fd8eea8be318e6c68625b222a1107abc62e1e9a21e16fefb8c217b3966f508cf93782cc96a801f89d2ac07050302047c435bb500683066023100ecf9f1d0211b33149a087cd83c53036d11bd43867c54ad85dbeb6b94d3f6ee2ebe4165e292f93f05f2a1ec7ab8f5cea4023100e39a355157d74a132b89338b4cccbc80caa8adaa5f38467f75df915b973e4ee41e9c9f386e038300e89166dc0c2107e50302047c435bb500683066023100adac0bb6eaa00858e8cb33e957d1598b3cb063782b7ec9cc464576036e2053989b477018c9a931e72217b0288880f3c0023100e4622c3b30468a10a671e88f111758c219fe93d73316b0d45010adf46500778cd2a5311ef41d9961f4c9c5e8cd6215790302047c435bb50068306602310090eabd6e1a2990960a76352b4bdb99fb2640a9603879e2be6e362883992aa1d3a94110d27e3b3f9b4901262b6382b6db023100b68ced8459697de08ad4590021f2f9fa8bceb91193e8c8b3f3a089fd98e0a75d4fd61e31a149bb62d5399cc80b9afc4c0302047c435bb500673065023008c77053bd5a6218877fcd571c92207585a1a8772ccb690b14873fe52b18e59c0191b16c7e66779273d352e70e9d6f180231008a3e2374428704f618ced2e6f8d6ac6d2f1e3ce11ac78c85d3646cafbd04790344d5f6250ed5d57a71516bf46d39c0250302047c435bb5006830660231008993f46e85ad3e0af92e55685f5a60534bd97d0ffcebff024f74af547d37576c3c404600af1bc5501e5d17d1a24f9f1f023100c4d1a99b48473cf81e7c9da416058fab3200f3b9ad26ea22e5a31e2acb75a811c62d7998b0d097d7de10b7731c5d8af10302047c435bb5006730650230137126cfcb99225b7f9f4ad1111d7e07fa03a4ad2b43deeaf557a84ed81064501c9ea948e9977dfdbd4f005ac0d770780231008c755a97909f25591b405ded683cc1c29b5ee31f216ffef7eb8733072c0ef3a2d276ba9c9eaf24fcc2a82ea2cef568fa0302047c435bb500673065023100eaf1cbd7d08e29e07952fa374ae4100b9efce6c8f15a20994a1627dfb45241b0f240ff04e95269787292636f1e631113023047193cca8d5e3b016ce6a4c898e50fa1b84fcb748a8a9129e9b7d4a9b711704fb66fb13309aa1910a3252983f7f5e25f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e6e93efa10d8d7d3d9fcab1e131a6bfa9b332c8c5ac44d8110907d5c7228af34f0665457a772557ae631341c6c118a48023100d7fc329554935cc03f84b36928817217f2726e8e82485bee1a3a3e34f6312dc27f747af1be8c43d5cf948770d57ec23a0302047c435bb50067306502304880df393533b5401ffdef11f0c843c78ea289bd54d310bf52a04b9aab7b5d3167c6905025243de18ed683068e9f5cec02310081fd4e6da94b4a68382cb4803ec28e100dd778e01a9eae877cd6f7c4cc6d62fce7e9113a3d05a0d531ca5ab0ab3e98d90302047c435bb50067306502303b027635f591633f424379cc1e17e02e8c1518d71b019928cb955df4d86b237ac49392d1ecb99071209980070e00f319023100cec307e4688f1002c2ffb51a6d5829d3422109842d0d1c2c8e3cb85132b9740c6d04965e3a739495c87fbbb3bab5c3bf0302047c435bb50067306502304e80fe439ffdee5725f189c4185fed4b508a9a5e59216510d24dce61e75641a4a6d24d32d1794794c9c700cb42923fd3023100aeba3d1426f0b1e3ab271d2647856ebff634bcf3e926116a4786e20e5fd210b737b42f0318f795bff378e366260b76890302047c435bb50068306602310082d59d0a5cfc1681d0838d450f9d85418154d96bc5d259be5406ca4dc31c018aa567a9cfabb847824ccfa01dbb72c810023100a59ec502c1bc4ba5920c75ea1d76b73c7829f42a528dc11c6a35edc46865474b5e632f00d34205e97b40f24fcdace0c60302047c435bb50066306402307a23d75f3f9be383636b7e6c9300fb93667223d2e6ed8a4776bd33fcd4262399950f4068b44229cc736eaa1e17051a860230356b42c00930044e82bc67d5de631b26bb1734a2707b73ee550dda0e1b24a31a949eb3ae33e05f08138b86a1ef6558510302047c435bb5006730650230440a37a7e6219ff94909dbfe935bff6be4313ea62e57beeff5adb13a4e1e78a8e42dcf6e0df1d0bae11aa50ff3733c54023100c9374f8aa830ac6379bedda7876ed5c2b08a93bb13eadb4f99353d4dea4b1508dd5f85b59ed767ba91d4be2fe1d7b8110302047c435bb5006630640230416feda1b592ad7ab6d058d6f539c11ebfa89de3d85c8eed8cee8b092ba8f6297f41a2ee271b0dfe3d74326375cf3c33023060f65cbc0d77ce74b6875e87bfd14a26e3f80fc8f7014658de6e65130ed9d8d5bee9c25b6d5bdefcc2a72149fdbee1360302047c435bb50066306402307e119313db7a578aced96233047ca1411e1136ec8cb872e170fe61fb325aa00ec8c49d7993d9159a0f5b276e4b110edb02303ca92882960735dc9d113f290a3492f55661f2544a15198e29e63ec1f341cec39700360e8708b38990755b6cb081014d0302047c435bb50067306502303a7557626737797dc7db9ed97ae6ba1506d68c37d1ff3e075f23f3c08c46b0e29eca93601a60d96130b2be6aee5685ef023100b59b0d0fce5146e56126e1522ac6f644766e769cf61237e0a6dad51f18d754f0f92ee7d21daef634c8507c52612cfc8a0302047c435bb500683066023100d87e6f358810442c06d2bc8f389b11ab15c7b07d41c1115b9a387138309cf9c1874bd841670ae565474132b1d494c5cb023100aa76683fee8a6a9875d7ebd8b1816b4909a313526b614d4e6760109781da67fbbd70a155c4a02281961ad0ed78a0356f0302047c435bb5006730650230211a5399d088bd3aae462b9d021f0bebb36dd55132f7505f619d2fe6dea600764c59fbca82221fe7163c21ee380377d7023100dd4c6ac18affdc2c511e2194badd84e184fc6cc863f84e37a5e4bc3ef9efff73cea1a19a87ebd3f397ff5cb56fde294f0302047c435bb500673065023100e8bab438b4ebd7c774d95c78bb86e4d534831a1a4e9d1cd9dac8b106041b49b3b5b82628bae2eb2c9820d2187d1fab2e023013410c79f7196a4644cc75d374d90d2bf684fceefcbd6069947c712400bb360d972fa7ee40a1f2faf1e6e75faa0ba7240302047c435bb500683066023100b383240e9d56b2b4aa615bc34e6fc121914e2d56e7468930f9838ec4f06e84e462116a23412e63714c84ac1fb5c46de1023100b9274c69e5d281d3ea877c095044b18cdae2ff75639898d11a7e606507aaa2e434b7451d0d6ea4c2ab2d4a377d2980200302047c435bb5006730650231009006aba22905c5e5017e79879435536a86238e3183701defecac604392c52d05d6598ae622399b6f4c2100d6d6ef79ec02301813c34dc194a42102c0bb2c44bec334bb7d808fe9dc4f009ba330da62b082fc11965f9c6168bac8eec9c301f6c8508b0302047c435bb500683066023100fee1b4064fb1dc3cb0b1fec044e3902e705074da31080bb9dc8d8b07e2e84fe604cc837969b8904ea6731c44f6cf2906023100c67630c365c9928db30fc2ccb0125f81d7e865d990d076e586ce87a2b2f85686d1d4b883b57fe90549466ec46e1982940302047c435bb500683066023100df745fc29625da67cc4032ae3d327bf9e03ab1118278ddef6b13fb78def5f731097aad1c4dc8731ebcedf3a991d1dc5f023100a44effef961c0019d3bb290dea354a1ff2fabf85a579c08be054a4a7cfbdd0b584c076e32ac384133f0e72e633732b450302047c435bb500663064023067d9bb215dda1fee55ced31b191d9a29fc6fb50a0cdfad8de8ffb1d1afb80be4086b5cb280d7c89933b2df6dd1abdbdb02307c14545d2e39e5374156c8df645b13fa955aeb3ba2da1301d3d95052e0ec3db71c4ef2d4e33fc815a5abf0b65469b3f80302047c435bb500673065023058917b03d4155174d25f6633db2bcd8887fd7fb6e2fcda1fcffc7621f93ec51a99f16d97080a8675c5d39fce518fc66a02310089653e8dd094754dd872f65aff1bda7f225f91d62927e35654a0e1e2c54c086971bfe99e0996852c57d7dec6689a4c880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fc7ad089f5be180a6f90514e53f5111bd329e7132699a91146cfaed1f52c1bd3872857080df2082582c4f141eca4d87b023100f0c7db50b2bd08ceeff32b9cbbb1740fbed7eb1e316e55d37dd38166cb832e1969afbd467c64d3e8cd26158ce68c4e580302047c435bb500673065023100d975444b8fac112d26d5dd6327d6ad08c6021848a285e057d816e9ff1eeb0f795aa68b2f6b99dce9c61f96910420647702304243099fdc637e3f374bd090deed43406ec0367406146cb82b301f69d3c9b8cd10a17a8483756babd2c6f565eaeb82160302047c435bb50066306402305ae96f3e82a452c754fd2c67f9763c8373e235875d5a79e1799050637247d16c257d1ac32ec4e804cc6160ba6ab849d902306bd0fa467e159e9971bd37ee1a0074b1b15cd510697958e0a270010a1720f80be0edd4adbb3647d46eb27a16125198c30302047c435bb50067306502306b5b80a95282ae65630e7a4fc57aa8dd2c74bad1532a1a227dd90dc0513f82e00e2c93d3c72ba1c9f197576323e641ad023100c04e7ee872920abc949a5b7737255241c2692255e05381d0133cf0d999c07d4bdc8d6a0bb16e187864a68a8c9400eb9e0302047c435bb50066306402307792ff2d2c00227a81e9e80eb5491e11eac01a73c56758ae2bea292ea060d2e5dfa46ff02550d9090dead67720730aaa02302b31ac5b7d6620a97fbe98c4c0ff0c064245f5ec794a0cf19a26b8659bbaeda820abf7f08bf8946df467e04a117c80ad0302047c435bb50066306402307dd6ec6cd802fbebe14091824d9d5542cbf65c4b42ceeb2d99cd68f0f2ab1d0bbf1843b531d8b13ace000326aa8d26be02302f2a93e15438d6f6365ec1d85c835e4927a855688f0164327de7fddabba9243c3ac79c3eabaec1431b98d9c16aaca6af0302047c435bb5006630640230220c4fbc46285900cc5e1673488b59530bf16722b61bffda7e6d8f84ca26445e2d435b2c3c0789e05242e33c20aec4f802303960c774ad8dc7b3b8f1ad4b39dee73d1cc434dbd83d171dd67a88b4a9cdb9a40f4b1d1c6a41d65f0d7c509e901cc9150302047c435bb500673065023100d3f1ddba23282c6f085ffe8fc2176aa1d9f651f6815a11adade5d014d0c62cd24ab181a9803a2e6a48bfd2c29669d3df02304f481196b26d6f0eaf6fbb2506a9964bcf037221e89a701e01c8b358c57a05cb56ec47e07a77b0f0dec9f5f3a25f9f410302047c435bb500683066023100e183910ad671be4f669cc2a18af37d666b3f42e7a0eb7691e9d68d98d55e73574347e2394aac04d46c8fab01e545d258023100bc98d6179ecd80bae13c3670b48b546031aaaf4da3566b83f97d6f785c252da85a80dc7809ef7831e7d181ec0ae886360302047c435bb500683066023100a4cbd9671cf8f81b6689bff7c4b27f52e6a5fd97257c533bda97e60c7ed3919d2ded422ecf2d8a165304d7a1aa7758df023100ad537e36f65bb89970c2d7f4096134cd6e4838fa4039f0c2d1ba54a9b7628b40c04157097f31b2d60d992548bf5999980302047c435bb500683066023100ac529faae489e7deef72ab5538f55d3bec3fa111a909b85785cb7b5029650e832996ef391817d998650093842fc59060023100fe1a8ec25c4f171235cc2571f687ecfbab4067c3152cf31237e8df235499c53c726c5a3bfc2a4e66550bfcb862f46c550302047c435bb500673065023100ccae78ab2dad3cf34f4660c1aea18d901d615cab6a3ed26fdf57d6c7062516e28c12dd8425f1c353de5782b69f2036bb023025d5cbd13e033fbb1cb490e434c3b2fb470db7babd97f5e466dece437b2d7ec1642b2bc7486db929fc5d4031829ae62b0302047c435bb50066306402303557fbaa460b8e3b5aed73db8dc0a5017f63ab0ef9b5b7ac3fabcbc92567d58c5bab88cbf3a762bc5a806e7c4997f835023076d82fb9bc6a2756ea436c35068c41a7a064fca3695082bad2903042123d12e0de2d541c60e1ce358e24c265369250440302047c435bb50068306602310085351ce0b1394e497f1237f8fa88ab40db48071c1ba91d10fc6a9f18dada1f6fd08b0388286dffafb42f2b05639c800c023100b46c6b187a26547642c2a2d99ba9d6e32e019c714cdc0a34ef390e3b6fd7fe3a286f2d268cf30ccbe10492c4d4ec29ad0302047c435bb500673065023100949d13755c8061e3475a9694385265c94edbbf059fd03fe60e2424173bc0af2b7bac414ac86934ad2a81d783f13c4ae902305c6dc18bdc8a378c6c6e3e3e64deaa9d4fe3c4fc435d183a45aed61f04aa0d60bc93ae60cc7e84d4e75ea89da50f8cba0302047c435bb5006630640230246158090c0acbaf8399732c3f5f920156df19603226fc59095c7bdea83863a26c39e6713a1140c6e59c03c398636b9e02301a5c627f058f411ca3daa18ae2531d75c83fe1dd8e27e713e37ab56b4ab251e4bb046b00210f04b3db00d97bb075c21d0302047c435bb5006830660231009cd192d856c551db5080e588b21b84ee000f95e72cc9c7460ba8c8c5452623154ad202921a34f4c6736a8ea0cd203dee0231009d8ad184c2672a47381804ec973c7fb84308ed00aef82474ed00d68595e6984c476badfce2328ee3562f1f0e16e0d9400302047c435bb500673065023100f7d86dae7f9a1ff1353b32927e6fa772cf74ccd43ae5decce01391d13a1c241b61d2a68a879c962c8ada51588248dabc02305dc120f2d187b4d6b0da88c75a5e0328d4a332d5c466db77fb7d9585ab550ff241a290b998eb2574bf22dc2aa9dd956d0302047c435bb50067306502306742001de4c650e293785844c73d1a6a3f4819fe82260ed8d9b4f4e3237d767357e93d254986755859d9394af02d2ab7023100b8bc81b6bce0a403696985cffac0a04613c53bfcedadd3916472b05a3621f473374b8af0da366a29def8ea2499e17afa0302047c435bb500683066023100ff19e3fdd7cb38399cf617fb796e5e2a256d121da8f0162dab589a77e751c1948079cdc2c484453f78086531138005f50231008340176c3ffc5b090990e67661ed2a9a7e2ccb82e38227fbbc67047fa8458c25b9f11a514f0373d0d2c8e70ddf34b4850302047c435bb500683066023100c70a614cbd08c5cafb26d4791a16770f2b1b15ce21b97f6dff4828744cbb842611433d061babf6c66557fecc307ecf41023100bcf76050207d12d993dcea5a07c9a0b78098d205344b139e16f3309b931fdee306cae0f550947263560c7a4716ac644d0302047c435bb5006730650230571b5b1c2bfb0a3d3cd08ed0409c1b934cbce546ea03f6fc5b8e7480a175449a8ed2ed66d8901d0852561e7d79a2f5c40231009ba8530ea18a19197fe6180b72792b08c82cdac0b745137be44010f33c17ac17df06503fed39c5052b68e17850053ed00302047c435bb50067306502301ffad5261ef000ccd20526cd20a7851c444ded46250d07406279eb86ebd312cee1aa73b7d1e35fa3211523d52c62fec9023100a53df2cc73a7b58ac6d907ade65ec7a4e895178d46cc03818afde4adc6136f5744e5339a79bb9672c490b760eac1d07b0302047c435bb5006830660231008e11e2cb0ed1b5d8beb6758ba7d891fa1af422fe7f4b03008f0b9dcc46e142e20ded8e5f99bcfa7fedc6af0075e404770231008fdf5088265c81dcf65e2c3ea248b0d6ec6b333da6649e0f987c7f8f94875832f5fcece5739c91b6404ed037f33c1adb0302047c435bb5006730650231008a3965df0e02e58508850c9f4c63746184a919e201fbc2bed4690cb99e2c97f934512cabc0afaf5efb35f5704449c5dd023063aa146693e947e65f07c4aef9224b2c56280dda30492ed336c167e16f1704fa2e44e5cdc98fa6a4bfbdf8139a4cb9af0302047c435bb500673065023060df6d6f450f7f942beaf7469a254ca1f157ed7d0cb7f98cd014e60c976c187fdb763d951c99406e9f52145b3406f4a002310087bbed608045892b45b461d7cd94dd89547cbf54569d3e96a5adb637c0ddbcad1b7d7694106eef802ce40a763c9451410302047c435bb500673065023100b3eb026875e871bf29dd6311c1f3639b15588e72e524a0f6eb5d8cdc819f35d99d22fe01b311988d98974d6ab98287ab0230575bb8e47142e3fe23eb9f0b0c4783e92891f9d8467bbca681dfbfe522bc882152f2bc8b5ff9a3705fee5db58f5f623f0302047c435bb50066306402303540688e0a1cab77d5f13ebba6da0e15ed3898bc3752975671ad023e9c62320aa9d2286c5272c18954bec91f61fbef8902304b1fcd8c263ad7f45828d0b28123ef85c1bd9ec85cfb321f140747d342f15350e1dcfcc5f32ab02ca86cde47f7021eb30302047c435bb50067306502306684aee652990f149c945a2d216d5cb4892b6235f5a69f0ce1222ca1279c877c7811f563ed7204ff7aa4947ba7a401d702310095f398e723d31542081447901c313e88a13a9a2137a411824e2a497eaea5931c2382d1cbe52b9244dc7b27760272ade50302047c435bb50066306402307687d0820aa790a0319e92e2a5dfbc5de856f985cafd273c372545dfd406a4fb3869247b084e8e093fdf94056f00e2d00230360acd6136b035b7c6f50336c8d694d773a23e8f6882a75f493137edb023c67f5ca57759d8cf14f214af1913fdcae5890302047c435bb500683066023100d2186c101448be252fc32510f97978e4c6616685dc48eb04210bd37a9d2f86cd8388dd8b20f380684910d42bceb31910023100ffd5af5fe5fe78753b23a3727f995378ef8ae685570571c1e5b8c2f1aed1d68fff38ff1566b0421058886bde7b38fc6a0302047c435bb500673065023100bc174666702d3899424435c3fcd1b626786502ebed3c9d0702fc550735a35dad4c68cf5c4f57be110e549ba5d7ea996802304a9bdcd01f65dd9d2c14161ab7cb71cdb7931479ce3d3843e1e3a1f9aa3f6c5e8284c573e3e9f1a78b176d73e9287ea00302047c435bb500673065023100d3ec0543da1c740404250753e043ae1ae458fb2a23f71b0be47209f2e1d88b16cd8c56dc8f5ca7d2adbf96fa1b54817f0230275fa6c3c9f5a08cfe0c6fbdf94b81811ccc650efe16662eac413c57cd5dbd6c4e5f6ee2890ee3b2522fa5a46a88138d0302047c435bb500683066023100d6c6b92a39dfcd39e21078aac05ffc595668ddae85857c591d65b0e94f2556804e98d216547323efe1df935c19e093f3023100b29675350dd158d3f52f90fb946f56381aef2d50df0b92df24b4dde49b482a7578411674727895b704fda7c94e33ee850302047c435bb500673065023100cd1d7d9db55b0024610f02d0d6b9229f7d2a43766bb65a65c3613676ec209ae99a860cc7d8c9985cf8c211c3d15de53c02302c405f65a8b8d112e10be4d12e0cc3d4028efc5192da978b0bbaa07dc8b241759fb35663adf190f084e9208f6dc473c60302047c435bb50066306402307549c49270f1b6ce0f5700345aeb1282cb1eb4e47260f1d3f4de3203cd15c3893e8b296fc7bb78a77faed99c5ec934ba02305e9192eb505dfb1f265b99843aa672f91a6dbdf01d91d322adaf1c93e9de2c3eedb9a4132f264eab3f682f63301002030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b706afa666f362668a6c9cc56e5483bae2f033ce51d50fb68cd231e9fe6a125057f685d1a763a3e47b618ce8773736a302301399602aadb8cec50f004929f2e6d6830bcdf6510f522d480c4e445480bd770fca4413ed0f99a678a9e3cc07880a81cf0302047c435bb50067306502307b2d292ab0816fc74ccb116e9a1e19b73e7a6176ba5793aa2ea25a975d2c2bd27cad90981c432b210e979ac360edb69e0231009520d37ea8ff11cce46f3fdebc4ce8c806e392d267f2fe4823dae5f25319ac0e3223e0e1abcedf24acef506aa793f80d0302047c435bb500683066023100c9897187dccea80480143645bb596ea61302618f4d6072b4bfcddefa3da448f91796f2b2b0e8678d320c4aa5ed25e6b8023100847d31fce4ba4ad013d0bd570aa3c3bc7ac7f3d59bddcf57bb79487f17745b552ea6be125820775a0c7ce877687a08410302047c435bb500673065023070a4f0e647eed6facdb5347fb85bff58aa833f73c4456fe5f563368d56745e453551e1898bdb6b68da7b4c0fbabcc1e30231009ab866be1643cf62fc049ee67e7703a18a9b2c15008419c99020fdbc6d35b7168442c5b67972ef21313f96bf29e57eb80302047c435bb500663064023055b9ba00752e379e1ba2f5965e942bac30ab979130777b1aa970afa614761aeb52de9b0903fd2881cc7b0d7d27c8b4c102301499580f1629e1d738be3c6230f84ac86a093b07be48372649325812f452fa55c5b935cce7564d5c8ba6799984030a9f0302047c435bb50066306402304b3a031e90720670d217813cb6396c50df7b1b59a33f5347f9197bf3eef9a6ae9816a1956e85bc58d00291826c5bb80e023068c4a2473382be037ef22eae36b6246512e7a3e27d1ae7e6c9db16b61fe9a20b6b8df750bb09a096d0942f7a6c0e6e430302047c435bb5006730650230442880daa60aee50f837789c7d9a9ab9a18917d9c6eeb7f67d4212a3d902da554b5802b64aee6bc1e78662d3759dbedd0231009a8a7b82c0c16deca071d8e7ef5be24c4b41c6d73e7bfadf9ca0d31f082b8eeb04a482521fc4bbd1293aa179d46d93850302047c435bb500663064023024c4b0ccb5a2236224be18ad8d1b224fe158fe3d089b654250e5c6ace2ffa2701d8748db4422dbbaebbb7adcb20dd956023037e1cd19c225d45f64b8319003d0e2cae34a5af07376db11a0b54d445032f0b68c28a79ae742048af9b5dfe47526f71d0302047c435bb500683066023100cb80dcbf337bdfd1952a85d8bc2d71624c9b600f9fa40c5ec935d4f31518aa8080b534be353853b3481d95ec87855fa1023100dc2c7a4a99a0118a73f20ad1663c0131a49d746a3d08066a80e0c6869a41846283219a95750c5679768b7a9025d436f80302047c435bb50066306402301f85d844b2af5666d103caf5b0ca090d861e0be981f2a824387711a0ebee46a75db67c9240c32070928a09719ec44f98023032bf546b5644e02b96f81304b484358f53d2aef15d93773e7200eac92addd36281a2b4acfc69d15a64c2bc89c330699f0302047c435bb500673065023038c8d7dbc4299deb6ddaf0b03f9db78ef1debd91a900040cd81d041284b6144250b73d16de0c73daf8728fc3e44baa78023100df5c391435ea7f54d947cced0e7aaf991e88ef834756406141262882007bcf8ea18ddc6bf4482590d20ceb8dee01498d0302047c435bb500683066023100b60ad24bedfc85571d633fd1f463bd9d15c7a8703d0f50e671e9e61c988e3dfcb46cb33feb2ea56391b85f249aa3d283023100bbc3ccb8dac7be25330d58b4509678a72b14b33facaaafec5b0c7bfdb1441dd469d28b02776c29467b4648fed7d82c420302047c435bb500673065023063c7e2b924a2e580c23eb420ec2245ab63c1ddbfaf3b212981b0b26f84685ac42186cc289855abe5e51523558e6c03f0023100b6fe8ab3572f2a2ec3b9f8620b86d128bf55cf0b19a435e4742898b216327200a6bc500d8e301a99e7ea7acc714f75b30302047c435bb500673065023037c755b6a8940231bb95f866dda39f599617377510c46c11857a08bffede03f927596856fb422b4b6b189e40be6a11a80231009696d179f69b63248994ba0a0275ebd806284a1d90b62335aec6c08901fa4bd2261917588467118ab5a090f1142847320302047c435bb5006630640230027e9bba567325ccefb57afd66079d61ae5afa544971c705709ad8e6a0a023bdc4f04d11de446b75e295f8f3f831e0a20230798b7a466f5da24984ac20951106cea578ab5d3e0c4ff2c2246e02d938f33e33131127281c100e03bd79e276d947bd820302047c435bb50066306402300a8b009c1dc44420d2abfdd1e05168f7412d8dced25a4078d07ee7d65264e61cf677c0c877d3beaea2559edffea1020b02301ec830a0001433b84b89ad4b3cf7bbb00e0cf25da143e8e8f90beaef16b9865b05d15bde08c13ddfa6c384a7567aca4e0302047c435bb5006830660231008420ff14d82ea88bc74f843b8294f4219297691471a0a5dd11c981d7734020f4510de310b3b28da16717473acaa7afcb023100e54ef089351b2b1d9a04b09af47ae28c28ad6cac743a6d3b481de1f41e6f2c9de80a93d84775e07cfe65377a3a51875d0302047c435bb500663064023005b0e006d76fcf1b8d5237a899ced5a7aaf4c049b1e750bc8e3c6d5d34a6087aa852d4f22f6f5931aa027f4d446ff49102300923e170ce5f5beed9e73b3d6a8502e39f21298a4f5d19cbdede611b09127d2dfee5f06c5fe81672d646d97f25763f860302047c435bb500673065023100a647efef3f6261b42980efff732f5cab139124a79fa9a3a408b011f3d3ba3072e8ed6d8383aefe52bebe0e4620081cdc02305e108fe2c68a28040c9cc20f2357ee9177daca12b2f4774a9a5a74a2cca4e8d7fc560a841e72d76578441584313371480302047c435bb500673065023100c41654c9b283c45f19dba6ffbfc3f0ee3cac5b4569f424924ba90985021b8d14cdcfc4be719b88dbf1f23c51de0e263102301a426929c6b7187bb6b35b145c4720b33070b221c3df809806dc27c81afc8d4f73ddfdd7f3951d1a0cc557d286fe0b0c0302047c435bb500673065023100b59c89ade07b556e4fd84205704bae1ed83ba9e53455398870bc23b0014af856774856a5ee32845e7b95c0f0f87ef56c02306543885076c888120c875068c899a480b374bb599f9b37419aba79c449fb1d136ccb55fe63977689c98fdca240ac10ca0302047c435bb50067306502300db10016a4432c02fa628910872bde5ccc58f4f042bf5871294f56f92ee3b407700aded3d9046cd04000e1c611ce81c9023100d44c12546d078e11b18888cae48772c509a7d9c5c523320a02a77c6c442ba39a5182e276a4403143d45326662b1774fb0302047c435bb500673065023100a5f3928b91f0e2a59d7a4b96b214b8109705a8007f1c324a1353975b5973f7bae94e23e8e09c08c5f16f4c00c31a996602301b0b31a26c9c15d74b324f81ba27a607f6ac244bd4c8954e4f25717b97733e6bf53087925228eeb683f764ec9ac83bc90302047c435bb5006630640230737a62a7c741e98d2225446460bb01015d766327aaf92ce66873be3a95dd73a179a4b2dde2df0644cbc2ac221f0162dd023065d2e7a8b46fd3a206cf59f708ce68adca1c9442c6d3c9e5fc4194d114924a4c3c5e393ad7e6c3aa4555b052750386530302047c435bb50066306402303347cb23689802a7ce3d64483d136072bf5554883d35298a5784f15793eeccd20761b80aad23ac2a65b228c1e3d7320602301857dc5941cc1b46aa32d62420b32ca3438157bbcac8838f1b58965265e47005560b661e0e719d55404225956c0306770302047c435bb5006630640230558a939d21bf361f3cc952a1b6673b26dcab4203574c418e6df5e622000fa17660512e902e4a846a235f4b915bd725d60230736148115c07bb8d5725611873e9f2799b9972ec4d03768eb2f3b5f143a1673e1d5ed623d935567b648dd55216a303dd0302047c435bb50067306502300bc17b9c9640ed478bb702ade4d530715a26b276ac9de54e9ccca888bbeb5f8d4169d18d563cb6ea61a0eac4b35ecb26023100e869b38d9bf5a10f53d7ecba1e912ba23732fad6d99da5acac78592fde633f727e5f7af0c309da7761a96b5ed8dbfaeb0302047c435bb50067306502305c23c13fe8bc13ca6d653375767b8d85ce37d5513a3f3f6ac8265df05d6e41037ac949f6616872497cf9164fd0b09ed8023100ec29c0fd08ab9cba7483cfc108c064ac8f0acf526093c8f27002faa01dd7f2aae4e4b1db3f488239ea903913392c74970302047c435bb500683066023100d5b0533366c40c529a354788f5dd893148f200b2c5a1f3bb18bf4266a34604b099a834d7da9c4f6c74754363d73dee6d023100f85d0a822ef5ade9c85aa77a5615f5424cf635996a93cb8cb7cbcb86d7b9fb291231861b0f5967ae2a5bbdd00ac570c60302047c435bb500683066023100d1a0ac055acb236882d0fcdf18d9df9915b427a4d53f5ad836313b683261d44fd120f9d2ea66cbc80da6837fd38dc565023100ce90f237a4f781a6f49f80756fc080759754e152c199fdd166b94aab39507a93bd251df0e67cf01dcfc5d6ea2b2692ae0302047c435bb50066306402302bb16d77b602ce5b457825667c3141dc289fdf151adca0ba6f12102aa52c47742f9066a5a9bb68ea0ad3f64bbc04fca402302f4a3c371fbb38a9640bf555e5a06b1fc393be47e334adb68ea496858ccded8c5b154d73a047ed8ba4ae88a71c380f580302047c435bb500673065023100b6a9a1e6293551a2effc500c3cb7fcae1c53a61f0d630d7211013d7c2f868cc12bb7ce84b3c2457deaa6962809b90f480230627adab8b3389cbeb0dde0eb15213f596693eb2e06ebcbf68982601714158135badb9d4f05389c436a34dae6109a2d830302047c435bb500663064023060f65238115a75d56e5b692d46617e5dc4b1a0f159f4b6d13fede6c3d487740a36d2e9cf30d32c2479975553878ed3d302306d6ab7d4827ff45db864b3593828e08192652deb6e7319775e5f496396cd0a53048979251fa26b25641303b9f9774b760302047c435bb50067306502307e2f686369d44ddb6ed740f8ba5209f875d18208ae511236699b36f71237141d2fa35513c38de960a16fd21c04a01b4f02310098daa2f08a14422ff52b08176c26e7e2b37dc27a9813c018cc3dca10661c1b606e5dd9b60a432d2ef581ce0ea41b5c1d0302047c435bb5006630640230469e208ea3a213d58cf4f45c0643a15835e4e6a7db4fcf3c1ccbbb3dae0a0a537fe997fcaca1753df1bdb267546d09f1023038f08af783de8aeaa58db48569f9063f1868cfb809edfe5cb99c80150452315c1331e3e5bc652ae71423dea1df3510ae0302047c435bb500673065023100bb7bc75cc01cd274a3bd4b0a4a984e6e764c8c4d6c31f736530a2624eed6b7d278d16c0397728cd1b8f89164969d09550230217de098f52618d53e46a148e0fcf899f8b3acf0795fac53ca100648d335c97db873c21b11d48a51be1e8c91190cd7bf0302047c435bb500683066023100ee2f70ffe8682f40dfb954c42237f6645a2eb9e8174be01f1174d2dd4788afc739156ceae2c76c74487b45aefd1ed90e023100d7c3d83a823c81de2b24eedf4de81c00efe3fe98d0afd1391239be57795eb609ba21599bff8f39d441d5b4944fc7c2e60302047c435bb50067306502307aad32b987249d8bd166a03e5184b7f25cad0ac1a299f9ec6281d03906270b8b1481f5e7d3e2fb7eefe3c26a863869e90231008b842db62a53cd8fd4319140111911761ffd6e96d8e6be83036f285aeb026990887cd3ae0468d6d0c842b611cb94618a0302047c435bb50067306502305c356c698c1c2d2c3ec1eec5cf820f313d0c80c4ab6c81aeb6f23387e52fcc63d9b903966f18e30fb64b00040224667c023100e9cbe710e84886c699c555fc5e83ed8e36fee7b4217f014f703479fef6f98eb5134ebfba11ef28693019a7fe7ea275570302047c435bb500673065023100d13ae6f2a6c88665ef740c30c6264e0817ca7840bf3da5de1afbf39ece8bef848bf06674affab594f8bca1bc805c5b15023079df1950a8ce2c43f43583619ef000de0bf156bcacc86d2292f81a74a1e9a9ede8d828ea8a72c0b845a2dda5bb7efe430302047c435bb5006630640230087395beebdd5247d275eb9ad02d27e47f16da12a81481c07ce94ffe375335913890be5318ac05c74a7d66a705c1ba6a023074fdb07160af090c608dcf4ee3fca5318440801e027758130c768a0bb90fbc8b7bb30ec0b1f99cbab828d6400f9289ed0302047c435bb500673065023058e259631a81e7a5c06775801cb1bdd0fe9e0b4439944f9c4e0f6c5a9dc28ededcc35dc678240aafab478abc277864f0023100b10540d0fea3238954f42ad3fc069ecf9ef62f881405cb11e03fe1f3f893e2a89701a3f46be7a094e57286778769013f0302047c435bb50067306502304c3768b86e03923448a35cc8a34c1d1cef90d9feff777e792d092e975ccb9f4d796c0f2037160dbebb6aca4572938976023100f4077441894c2dfa7606e67d6b23d9339539bceaf1b53f4dd92846dc83de5d742555cf107a595a3591e0af40bbae028e0302047c435bb50068306602310095c63a1c64fee53eadab3b86ce577f5b49b6fd76fe2d7245dc5387c1d9cee9f76419d9a34a75a060be08f7cf9e608d2c023100b641480489f0ed7e3877db70833d3bec72bf1b6e891e96e3542c5a54be2b4f0ff83c16284914ad6a2fa6e1e352c0218e0302047c435bb50066306402304058df71529498683a56c2e5848915b8de0cb29ba4eed4576b3b77d6480bb7f6aae7224633b6b649976bedabfbab6ca0023011f40f62a10d18c7944ac932f973ea66c338e3ac2b6c4f9ebec46ce82a759b949445bfbe79cde40fc2f5a6960cb16b800302047c435bb5006730650230361c55185fd253ea9be4a277aad06cc5ffceb46ea872e376d917be2bf5d9b8534c95f35f6fba98e317ab15f44b9db713023100c393c2006bcf6f3bb096fc7d63717053865791742d1cb55871bb36f4bc25f873fa472660f4503833d1d1e148042bc52b0302047c435bb500683066023100827324b7a7ca0cbc4fb15d53cb4a0fc2bcd651b9bfd48a7c31aab81d9b05344c41e994d5ab3d808c3db046f34092cd83023100d0bf251269607c5046e35e2d6e7356ceea569e0cf97814380cda0b3f2045de3b8ecf71585dc8e966c0ed60bb2b06a0bd0302047c435bb50066306402302f2a24b97d7eb6453b23208516258b94b6dcc3c4980bfd005017d90b50c6a0e305942e4f7197816857f5f121c33c49c902301d06298dca06dee36dca43aceafbb6777eab4da5d79475fa81486cbefde19f7fb43fa020d7a0743285c8fa106a5bc3a30302047c435bb500683066023100ff0d39a074dd9942d89cf6bfdb5868a257eca8351de87d37557a24a3a22bcb1a818e878a463df5ef999ed738c7ad8e45023100f4cc2e5ba9eb6e8d8b5b74d1e71fe4a73da0f993309a2abf021ce706463f548248176438a3c43994f656772a6ec3c43c0302047c435bb50066306402304efdf39437e4f0ce4ec722d2e5fdabd2cf5e383122ec61d66fd99b93a0a488258e114317367cf3fe6129f1bc482b1b8e023048897fef92954fdce52151afc219679cf4c72348286ee39b5ce15135ea75e363fdd21fe24fda6a1c7342a6ab08c863ff0302047c435bb50066306402301dd698eab5ac3d5c303cc8fe766503c50cadc60bbaa950f0a27d95593b7085a33080dc5c5f727c5f582e0ef0e02d4d9a02305ed4d6356d67f1145eb5c3201fd48bd669ab024d379e4f470237fb8400859c98738704fdf398840249d3f54d5323c3ec0302047c435bb500683066023100884a5a55cbce20231fe0bd57ea24d20a85b42a46e3454d4fb6b948b5ae72f65690463ac84bb5295a784f13d3c9e19650023100e611d23c1e94979e8328356afbfa5b9eafb3aee0959afe3a89c09b3290a070cc5914cdb5ff3db554c178bdeb7b2de2ac0302047c435bb5006830660231009813680c934234a9c81d163c346c7f713d9792ac04f90a34cc311dc2ef9b8a204b702c0fc48bd9396a783263a6db5663023100b38a6fab44010c04cc097ec1acbd261998e75e0880ba4378a0890bff5e4bd0ff0805d2a2549bfd0f6419e6fba013f9bc0302047c435bb500663064023002edd08a8651fb913c882ab3e70c340159dc0d123850675db7bcead92fd50f62f5112f3d607b40881a99080c5f0e739d02305090613c4d0da21149f2c24a7040ce1f2303166ec18111f0eff95ca6ec394a34f1520aa4e7c31e559ed856ca8f1c12730302047c435bb50066306402302210386ff1c390d3bdc104fc83e4faae98e1ca072a2f7249d034c8bb74250adc14f50d5573bff5bc77ebd1d8e2d87f9a023057fe42834b0ea0075947589f7c4eb009fe2d51930b21c066819e8b3611a14b2b5cb2c73bc5624783b6706d93d9beef660302047c435bb5006830660231008b939e42a37f44f73b55409433a4be498412dd99db7c44fe66fbc7e2cd65163e8de54d29ce45fed6945b78bcd1bda1e6023100c023a88e17506a24989cafae4321af10f9fad30fb7091458cb3e44b1ffc1a693421d5dea28f064de7d22e646cf95ab590302047c435bb500663064023026ef58795d6fa52297111ebda1c0adc0eef42b8db7aa1647a49b29d11a1d4a67cd7bb1f3e22cd31935ba62bf919c3ae0023078a67df639de4a00fe38ac9874560eddf8db660a34907ddccaf38edafc1d3b3f9887ea8ec3cc505d2ef53a900b57424a0302047c435bb50066306402305b37606a8e07c63acea9a905d773e072811005f5ea5f06b769f3d28e2fd220ea55594ff23c1a1e26d1309e96af9a5abb0230064d155aa24471bd676f339720cfbaa9646760d824e1555ac7ec16def61f42206b31833cdc63fb5cfec00cab6e0ff9800302047c435bb500673065023100fe402bc8714906c1ae68dab4a47bbeb3290ce410cc6e76f9f698e9fdd42bce8ee774fc9333c020e3b6bf1fa485d0cb7b02302f3fff6302ff88cf8d8915a6b1579e75b4160b628a0c88613cd860346edb295b94850b50f296525eec5dbce2dd8d79d70302047c435bb500673065023100e9faec0ec5183b3299b9f75d464d75b86fdc5a5c46baa58d54504b837f15c7a13644507f49df40a705173507bf5d7d740230270a789b04ed1cefadd2d84714e07e8f4923d28fff8f10b893d5a2cde066af7dd5ef46a02410ccadf2683a9154c95ab70302047c435bb500673065023100c72f68c2048873aa078edd6f75db7467d055173444080c3f6ce2816b99e92d72cffd2fe36d606e0fd148826907cf807d02300bb81afc2f95736070f6d1fc904e505c6c949c651f4ae34cfce159a90e92647950fd2eb8e816569286f558546e059adb0302047c435bb50067306502310081e8f43e93553913538f39e163adf83d241aa38db6e6fe82281fc736d5838494d3123fae97e2a714acaf5d3388f4829702306222ebd6161388e0fa7a27d92dcfb4499711ae05eca9775b925f3735c67248ac7391c85078525c46b8e740219d05e7bb0302047c435bb500683066023100e9a9f8a1642a34593ca36d9853f6c931b4a469e56645f660a24a36c4f2a55a244142c8c2513e89088f177697772a6eb4023100c7f61546ade48745044f6f98c9bb39f43563d0e9ada5f894b7981c57a6cc2c8dcdc854837389d65fcb7a9ee53d4d449e0302047c435bb500673065023002b9d844bf8bf149774f206b5949b7dd2aa895aadaf72190423fc4322a2c2ce4b159df73128310db03527f3e3b3ca6630231009f2c44e5765eadcb9696006b79e3be1974cfc3a0bd0a026bad3123b5fa20735ce8812fa621cec8644a660373e79705b60302047c435bb500683066023100a5d3ab89a6d16cae7cf02a1250e84db9eb2a584955579a93dd800557f04512e09952c5074563377ced0b511787638bcf023100bf18b771446017beb788e9dcc4485d1a355e7f8c18267126b935913f40f16c072cba909c8d45c805531c4f60569925020302047c435bb500683066023100dea2e749a7c802dbf0ef8cf42dbb4dbf1a74e175ea0aa4ba8896a72ffdddee2af52ea1750dcb5711cf55fffd42e0a066023100b4b20e3d529e36607a09a225ca52d6d3048f6a66337e813e9450ea5d83b9ce93f7fecff1867b718c69bd7439d1fffe750302047c435bb500673065023100cb52ecc88f0b66ed3c0d2c1031fc709ce6037043f0ae2542ce507596848f1006e59f461064ad697f466d9217a4f2b93a023042b739fab6cc957735043952327041b215baa260775a95be403d0203d428b21081bfc383b1301759f48c230398e9fa880302047c435bb500683066023100daa65699d9b3990791235b0873c3e4f33045253c7de8ebe37b654f38dfab00cc4280de7b5a8c4e13f87d9e3edec90046023100c93275b05aa65185ef3b610c9ae155ed1d03a53924b21f28f17e26d665cc10823637f65759356e9c82b73b37462d0dcb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302bd22a88340906b2628203ec4e42ff80afeb5a8da21a6b4d08b5e862c381ce5a84dab4179f32035c8bb16880fd36a80a02306198ba1cfc37958fe5de84c97ecb5b84263a1b67f980dcc1ee9ec811a76a637d681f2b1ce0d3615c948279c41989df360302047c435bb50067306502303738baf2e6cbb0b0bd38ef07e52de06c3728c81916ed90626d0234a070bd4f65ed195195bcfa13b34c1d2a7048fb814e023100847662df10a865b5da76d5e533659c452e14a3f3dec74f0a38108c9dde06fb9faab0858841eeb061e99bf43d5f24697a0302047c435bb50067306502306a27e123bd9ede4117579950ce3322c4d82ae87ab1980ee42cd349b41b93e8d11b7228f299268b9458d8e1a7d074c7ad023100f0a865306131d135f0f5229f2f5fbd9bd216ed6732fee567d545d5022fc01cad16f70b93ad163a0c1e2da978f6e9062f0302047c435bb500673065023100b37d50449e9e847c055d5d398e6cce95dcc110217b738958f299318fedab8cc2ebe28d82bd4a96d03abae9d17e880cf702305d127303e9e56501c1c37c690562589aa92a25be51a7041e687dfb97eead764d44c9749548ca202d239121166fcf4df00302047c435bb50067306502300f77a9889203d27c816acc35c282d73eae4db705e5ed7d8f86d487bd9216f4b2093aeb7404d140a98473712a5345940d023100ea48ef85ed1f0ee5055a4cc84193fd8bf284dc7a9cfa56f222c6b09dcec6ea4bde4796e9e2cc5ac6083946523fb875a70302047c435bb500683066023100c8aa44a7e1e405d77c5bbab3f6950cd02b889a64a8ce1af64bff2b04d7b3a14d548b77b31946f87588dd24d21c5eed7b023100810862c337fc9b65646793f968d856ade8b88a70ce097b18187df4b40160658e85edc6cb2201dd4135b522e0d8f5f8cc0302047c435bb50067306502307041a1a794bcdb92952de869536be07e0e31ecf07ca99abb0c14edb0bedb608e7f2086f8b343faa7a8929f72f516ce2d023100d32e4bd86ac96ae385e4242c3071bcb17bb8f060cbe5acb9e2e33ef1154117797e849cb1fb70fe11b6b1020999f118980302047c435bb500683066023100a847960522d3dd7bc3799d3eac672f5274ed0ad09c6e5110571c9a0e2ef560252bbbcad7104475e5c733756ad10d5841023100ff7213e4188ac5c8a75837f0fae72ae86ccbe5f242ba1d55de4a42e60d902ec907a9d3d7a082b1417612fa37abf09bea0302047c435bb500673065023100b204c98425105252137e4c4b4e31b44ae2924eae1af1917c735f1a4b77a3310bebb3638354fc0f68172ad23c6ac1f97502300ec246092f2ade204bc4336f21e371f9e147ee7e7b4e8443db804ad9535f8573b58812165b78d38355e44801c16b9f4b0302047c435bb500673065023100f8c2077187f0ea1243846e54b074d96ea5c55054845f07c7ec3cc3746c3bf42bc25a0586bb82d23980902cb250699b14023007dc80d98cf11236bbdc818250723c394c8f2f80619fd1fe6c874ee49e0da1a48b9c75c1d286fcae013013c628abf1f50302047c435bb500653063022f7631dc625f04c504b7cd0895b5a11c91d53757741f5764decc43e09ed8b45ab1f8baac498dc6e828118995f0c966990230102d0278e7ab3de44183345de16ca355496b83b443b941053d67c837accc34feb4f88dfc0cd8f7fb195d52fab9549ef40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cb61724f59acefcef2493fcfb313ea428643ac0678dfb95a12e2300eefb76c47a1af317b5c8a83f0e16412f6c21e31f4023100977152de0d5c68e86a30e9215dcbbd0d99c8cab4abc1429e7c4ffd8cb01d0c5f2e7678826c426221b25309df110065b10302047c435bb500673065023020a8447d8eb0dc3d97d11457e5f233d449783cd70a1f24e12dbda7728fa2faecbf5cd88522fb491483e87de90b5579f8023100c4f41d2df96b2b270f688cf476afd56b9079b4310cc024102fc9e4edb95e71a009132da0196bfbda64ccfed58217d2bb0302047c435bb5006830660231008326c1706bb695561c023e04ed0c7435012dd3825641b78c3a0bfc2e8052502fc3ca6080e84ed64c55ed987c02e97803023100c2e8e6ba65b94896163f08cefdd938f004607a9b00f6ca6c33c135e4f42a995bf5d0747b30ce9b3ba33fe51eb43bd5800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cb5b4c6956877901c4ab4d39fe62b35a959891f71dc46bd280b510de1eb05bbac82710f4bd332437e51065999c2a2dab02310095a67581e84e0ee8b5a9bdd45194cd964303232712ac139e417d3762bef5b2888d69e1f085e2762eee2c2941911d6b170302047c435bb5006830660231008f6f9fe9e3a2b169d1d27549f869ab08b0cd6b2b1971d280465ace7634d79fc47345aaefacd1422e533fa57ed1daa57a023100c219c751cfc3e41e3b16390075efa08e92c861c0a894ec2f65aec12dee6190fc4731fe303f189796e79f176c94cd51700302047c435bb500683066023100f3be386c0ac6383cce41369d4d4c8a44e85c5d32c9ea6c6a8721da448b82c220c9a0549827e35279c418e2ba643f05df023100ca9b62f99a66328b6bb9a1c4cc0120e58f94af778a95345076d29c49da077d61ac22b19030be99c9adf46445b9ba46d20302047c435bb500683066023100f91ed3159fb2243e56c25a228ce2702438eea9110fe1f521f63a58c2adcb621f0dff074aa12e79bedfa930de5b0421d1023100b24ff3b0b8ee4784d7e90fc2c4ff32514c02fff371f33b3d454adb899ac7f1f5f5011f3da7227ed837e840e1ccfccc2e0302047c435bb50066306402304b804335b6a38b9d12c4b6b7c9ec29b47e3d2afdf549179889096a992f6a0fa3b7b6ce1d5ab156fedb6c34eaf225e05a02304f701de13cad2a1797cc5eec5ae1207073869baa47a00ae90e9b8c18212f5afd786defcb9eac28accd85e90ebe1bfeba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a1d8b8a2180de5acccdebabac1e93ea7629130d208a3693ec749c41be97cf1e1e2d3f73a8478987ba6cb427fda511806023064f867af8aca9fc0ebebb04ab36efc726d17e25e0fc18520ecd1a7f32fd0268c44fdba8125123468d10a3840f250c1820302047c435bb500683066023100d3d8c84f53d10792acbd358d26dee80a415a0201eb5d7961697d871348a9768e566acfe0fca593eb626c8870216a1c2a023100a847c23cdbb493f303e5eb2a53079bf42b1e3a6bd5ba8c0be092babbdf0de36eec707a51ef044e3a5b8a68fcc36635190302047c435bb500683066023100d15c58d77cf89691c0f1d83f2aaee753db86e7f417583938285be7bbc6f4f1f6899877d02c737d75263df3db0e96a40e023100aa57a5b29bd90f33812f7be642468308a78dec4ff33df25007708056a109c0760c2234c42079f2ed2d45b57802a0665a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300d7978495d0d7e13e1ed9f1f4e65559564123835289ad42ab010883a48fa52f957f2d0e9be64bbf6b445414eeb3abb9d023100e9ef13ac8d39d83441ff6260c6b514bffd86da25bfbcaf4f7c4c873e9206e36d550d794b78118f3bbc293e27900c2b020302047c435bb5006630640230652d5d15c21559d73f171e89ae67afd9851ddeab6e43490205e25f93f6a834f4aa66f7f5f2ffe5fbfdd36d655632b1da02303d74d0fa324fbe7b39b1d0896e5a17c786d99be7141cb1d6fdc071d33b3ea095ddbe58ca7c09aca9faa307daacaa8b2c0302047c435bb500683066023100ae494a0bf87ac504eb31f928e05fc69794083ca62e5842562bcd3964b2f51b222e709f2054f25acd3b611fdadee2fef3023100eb620fa87308306a58b4f8488bb97519d0f39b3dc55084a76b894c94b893188a627f27e2d44b778e67a1c2744d8d699b0302047c435bb50067306502310080bf6f2b4afc557802b6408a08b9130a275af3cf62ef51cb086fd0da04e8d6a4085dd3e3cdb2e82b267e82802ec8045c02304584929bfd01152d4b9fa9774006b14ac7784511350fa113062986f0fd8e7e334f42fbe3448a09347561ee40f151e6660302047c435bb50066306402305cae44f8e64a53986f5fb2409c84f235415a933c79aace09274085d2d2602cec06c4644425438095aa1971001a5070f10230292e5a276d979432429016d867a5526ed5cbdb4ed21505df6372c0c572c3796b6dbfc2dcd110b68b66cdbe010f3db9a40302047c435bb500683066023100bfd97e4e3be7ef4cf89eebc417ed12247f194033285392e2d6818e2e99b1c9ffe6f102237b78aade82d8ebae6500349a02310092c482676e1abb0c259ba3981718650ff8d124f16b9f19a6ce7d0f0ee7be6c9c4fae5d6c458ecd3a27de95f5a1f122090302047c435bb500673065023100afa6db2ea9ed5bc379b55510e355293d12dcfade37339caa4a949e30ecbdfdf09aeb9e1781e5d3f1109246828414fbfb0230180db988ce5563e1c42d60089b7c5ced3da8738faabb58b3bd4c39f8b3d8f37066681140f3fc7e6a249c44762441e7b60302047c435bb500673065023100c4ff64737cc6e4cf6b403fa88bf1a11a0f74a6c5b0c38c2788065d988b7d99c34f71f99a71886ffda0188d5f785aaff102307b688f5e7480af8270b04a44088edbc7aa4f64d048e3fb9a6e955cdd58aef9c70cd3ae2cd613c32812469daad1de71c20302047c435bb500673065023100fb2fa4920740f1d8a613e1d1a399e4f66ae388f29b71ae654ec227017ac34ec38487ce97570c120856307a470a333dc302301710d72ba952988123f9d2cf14af16b451e52ad9a4555f1662c9180d2a6383759e4f33f10510217ade1a497f6881ab180302047c435bb500673065023100e16e4e375b3d0171937759ac7701df65ca1b998eb7537d78c094419441a296c08ab5a4c13b71776260005942cbf9ff1d02306480d3b56413c6b18a6f4cc5255bfe39dc77dcd3d7108ee73c2d3213579562f372b63aabbfe1f469d7744a42008d6d100302047c435bb500683066023100db5ff4f79da1669e0bf92c7e6d70a1428b7badcf97c5a639ddb7ae0a6c00d8a1e2545415e2d61c15f411f45891c7ccae023100a3afd668a1c5b1760e3b0d3e2dac1497475dfacd63b10f415008c00e890f9b564acf0d25f3db3c27e62bd60b676bb7790302047c435bb500673065023100bed7479bb7601f7bd9ed87cb929e9c5bec1ebf0e127f93ac44a7aa31e31c986b604b7605d6b9e2ae0b94eaa73683bdc6023055682d460fbef778a04c00814bf3f56e3a80326214d67d4c82d0b6408e7c85261d22f5e76c615e444ede2735c9c452ea0302047c435bb50066306402303f16c7ac6662bfc78982af1a86872be227d79f358fcd899071a5a4445655a8823ab23f9af9f50428a1499c28382b4405023029719e9ce407e0e66ca6db7caf462c5dd0a8c36bc4efec26d56bffd632e921bf6cdf81d0cdcfa1f4feadba93acf910660302047c435bb5006830660231008ed9c5051e810c4bb3d07e5fd6e74e14e326040af6682146cc66ebcb8fffaf0cd2936da2f9526574ba1d879260798e7a023100c9735ebddae29310e725a368b84b36ff8d9f40436bca6428e6fef5cc2a4c903d646bc174e8ebe43a91f709b778ba6b010302047c435bb500663064023016d4a2f8a1578ee264e11ba22c30b6c6263c8b5b86667a09896c7a6ff1073751ca9480edd3c3232c9c6df9e2861c26f50230046bae611bad9bea814a73e7a7c25c997c7c9a005a341fb4413e1badceaa067cbb897413b63ef99111ec956d1c05ba740302047c435bb500673065023017ecbaf371abab886a6bcc8a1fbaae5afa6803922c332992eca82d98857ae0220e4278d43a7e6a2bd5fe48838361188d023100cc3a02abfbcb2aded40d6da2797ddb137ae71ce271cb626bba5337adf373460ecd69dccf9cc9dd1515704aceeafc85430302047c435bb500683066023100bdd3d7d6be6777a6313d5dc1953c2455dc3bf0a383bd748f03298725389463aee51366e4d6264648a916cd2ff84c4452023100e4aee44dd251a4cc3b060e65e4f28a65229743b9ab4999630438431c23369ca1c0a128e2d1641c6550c9a327a842dc480302047c435bb500683066023100b2e10a20850f60bff16b20254df06df9713c5134f81f03cef46cf1b33b3a17b5b35c37fead25fbe198c518e8735bc581023100ccda4c1097d0171ae175479fd8c25dd032320b0fe7abddb14cc34d48f655f3bd8ac706da44026cffd846a764012845d90302047c435bb50067306502306812e5edd489a6ec535403365616159e70f509612a1b85b75646aa2be0edd16761215e3b73fffe7d8994f5b233d890b6023100a96cfa4df87e2f5dd5cfaea012d046e90fafc9d9506ce1ef171aa48d5f194f800ccb5d8c4e62768604b414de395197290302047c435bb50066306402300ac1bf146ffba5b06fa353baaffb989f92306a59b5ab570492cfba35105ccf432ff27e96a8eedc277c05a4e67e57f83e02307b1d2257d04291a35375a235027f27d67455ab9ef1c8b24982a4c411a1d150769717400b462c82c5348a987a544a25820302047c435bb500673065023100fe29e8aad753201dc4b4d63e4cc8e97f2d1635c78ad033b002b46feb3ea7d1782bb828c62456f209f3f900c02e094c5802307a1b47193665dd6c52ebdd5a06fe630eb15a7f7095957562804d4e429fa686938e0c3ceaa2817ab036240c47dcb84d990302047c435bb500673065023100c6b0c1f7b1a5460a82ace2edbfc308455122f71059f3dfd5af3df01d646866c0cbb25bccc4b2e078335abf9ba6b216650230643e47c03a3ad76626edb951f2f6b9faa8f24b72b3cea0bea6b12d4e860027120cbbb86aa1b046d5b714f8e71644c0ac0302047c435bb500673065023100c1f2685ffd3ee5b10db1950f77654384668ab4ed7bdeffd8a46052c66745ecaf41654b31787d94c2f0fdcf08ae33b96f02304973f0e61f2d9ba0ec07e4a940d732352aaf741a760b417791eac5e1c7b6232b5eb572c7e7791773e3927ef09d1647180302047c435bb500673065023100c83cbe74df5bc6852235e0343e039be50f39a56b836a6a15dd377947e16ef91ecb2debbc03bc5ea2db055ee8e4bfeed0023052f37e1c1fe7ba6ddcac671ed70730843681dacb1c6765c59f2e1014f79d3f62172023ebfda80c43debd8ef0e66e02370302047c435bb5006630640230227bc18836989d7ed2558b49702a4b7188c9ff3a64b48bcbe14c31454d700484d288eace57ff1216069efff7b1a814d502300384333f3bc40a6f2f7d21284b3bd3a3497c6e0c8e1eb2c899106c68cb0680138d060d76ae1d17ac49504a436fc5170c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e301896fff8813db8767685398288a1097e2b0de445a518b3aa383e3b28aba3c1b4511f62624339303ba93b3e9b5ef77023100bb8765a46ccbd04af24241d6983a1e4f67d07b8b031524751780a706417231fcf1e964d18853f821fb8d9a44c3a686a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e74c7f204754b7a01d96db33435042afaffd580d900924e272d065e41d1f822794d40d88ac1c48b686af5c62a831f2e202307b49a4bb5743f86ccd14a5e3868003781009ed492de1b94cd4677a9276fe6d88088a96ad512305b8dfec5732b8ac7f2e0302047c435bb500673065023100a8fe8edcf39466de859b05bf90923acd5752efe544de7923833b6e046263f76a9d985e683028ae6ac9ae658cbe539eb902305b600a230f093df6e0c3ca1572631611bc2aece8082ff49cddf9a612669843abc37b43fbe5be10693b21507b7556e3800302047c435bb5006730650230403dd65c6773b263548582eb104e18447051863698fdcb881e53d602540caba6323fdafc8c15e66dfbce4ec3d4c707d3023100af69261155d66080f6765baa9a3121ea41784e7af4a0ea870812233ecd5906ab26fae68e008a5532724454d5e3dbc45c0302047c435bb500683066023100a827fbeeda0831d3fdcf6c473c1bf9b344e54ce5f61c8583b3f2e910bd31ec8aaba68773ec1f96acb6413cd3655db0ed023100c640e67d0a230e2bc2cb13f96ad43451dfcdce52180be6342bf6a86aa64c2a962dba6ed1a27bdde5696aa45fa9fb4be90302047c435bb500683066023100afa2f6267ff66569d8116fb232ddaf60f7787f731f634a2bcffcfefe511a832afbd804f2bdd6e88403cb16cb1ed0b4bb0231008959a0a44a0732e3a3b54a55318c4ea10c791dd188bbeffabb6eb7fa65b354f44a3c5e5458df1ab7e68f10a618a1c3d60302047c435bb50067306502302a0c720430d9903c68d0039edadd412d57c8b9508848695cccea64a08e843115e131124e875057f4d778141ba3664349023100a463e901863d6604e14c0f3611600fb1f55436ced7869f5e94b3621971b5881ddd80c558b2fcf8dbc7a8f531833278d90302047c435bb50066306402303cdddaeaa6f992cc16b4bdf4eb668ed4f9d70062d62fb7b30ee9855cb176dc4f1d807052de6653f59444b7982be1ba3b023053171d1bb313b60e7f9ca56a7ab97331b37ebedb35cafe8bc71b191cba5e3b6c94abff09c70abf25858a0cf23cdf18340302047c435bb500683066023100ae998d049356bfb6e34bf511a47f7948257474ba7b2c8e15f4c9c791ac4be0976fb771d559b86afb8b792d8452b76ad30231009719cba8050fe80399c3d9384c26f02b5597a20231c0017736fc6c5137d397acab86899e04833ec65edbf3fa4e9012c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c8967b6f26e7d6fbe8858e3e7a4e5bcf57c154af3f729faf171797c2df7ad2a36574f4a3c2cdde8e665ceee3d978f257023100a85ec1c7f9aa18905f4271f23392e8604ff3942044464f942e7110559efdce9464daa8bc02d91d16e70f3868b0805a220302047c435bb500673065023036abdf38bd668de3de498d809a7107f531c493f762edc0f128d9bbf28d1b5da39daeeee9faa69764f11693546e555831023100c74b081cbbf5b358ea37679d8909bdab0b12113ac3d35a242832a0a99f49cd4303115765d2ef5899144a5d4c7045addc0302047c435bb5006730650230022cb8f8d05f9d99a579a42a2298ba2867a355142af7f1c03db8fcbe581a20700cffd393fbea87decc907f14b98cbe7c023100ad0c5beb96503226c1b91317620b0c02e4eca6ac3462d1f2e3301d74b703796e424f11d880225dc141ef06ff722eda220302047c435bb50066306402303d08357c627eb395122ef58d25b93428dec4b6c97d4b110e8011a2230976d4660927109811a6cc6f11bc41019486c4d402305a8be3b7b2ba0bc81c24af018e242e915eb2c39a460b4f60fd4d804c1111e2ce6c4f96d86b942a57bfbd5229cb5ca0840302047c435bb500673065023100fc15db46d0a3c9e5cf6b3cac468807531893fb7c8bc0f6df64d34791b55b33b22269851ba214388f5148f8fa00d1a21002301506a767222ea97d74e63a288b64f21a2cafd97827eac2dea92b49898ffcd68b8b4ebc196f49a1f05b405acdfdf939df0302047c435bb50066306402307fa24195e314183fe3b37efd723663f09b552d647d455001c6b2a7956df3808fe9bcd6eee25ba1603bc9ba93548b18a2023062ddd879f936c42490e776abefd9253e4f2b5581183c804ae71bc60e07ddaf9271c27209e490f2afd0d500d6a542ffbe0302047c435bb5006630640230793d5c34487b434683b6c4a1591fac653fb1535f9432f22b42d4e2e3cf171042196bd07c4ca5c29a84238a2cdd3916b7023065207565b123691bf66e6b7169abc14315ab054e03e864f16048d610aa5e8df3fe0d90251ccb2d996ce2e8e5563364960302047c435bb50067306502300358bf70d01ebe7ba2eaf8bb7dbdb8288c9d30951f0b085fb02e3b777f1c56c0a1fb6c33dc8a2ed7a4c0266c6e37e2d7023100d712061c6a5cc1d9e1f6c3281f82bc133c66545b0209b4c63a4f07f3c4e96323b6ecabc1f55df962f4a6e04c65b334280302047c435bb500663064023016d87b5899ce31b506f2f08dc14766ec2b33783a8861971482d2f5cec53250bbbd93666cbc30266399f6e96f8470ff270230156761335640ed0459ac6704c37f65ddce0b521c9ee12f5a75aa5b04f2203a41430a1f7ff87cefa0339d9db68515f7770302047c435bb5006730650230377890c416fc77dc580be0d2a7751a8024cbc94d6347906b1ce3972b3252e46f8029a6df3b8b02b4df25c6d1ffb51b1d023100b6c43aa2d4214cd2cd2dfce74761a06577a99f6d72b50e22cd4aa65961ceaf888be6fc2ad6979736e8e3583e76de7c500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230067c2be0a332d5a73e84e33ba4acc8a7c572c626d84007a3947f89d8c635c3bf748be93c05ac56b3c239d09318374ca5023100a9046aeb7cc0ba101954aa1e8cf86a7514031e86c7ddc818a3f0628db67ec7c634d3d9caac56384c1c8a0b6a4bacd5920302047c435bb50066306402304c0e2a214e473da58bc79407a334986ffa860e8cdc2a465415e609d42296a9ac052298c60dcebd60675dc66d121b041102307a3201bbd70f4ed7db96ee12898071289a1352e5970126de4b61d3974e5f578dc35f7ac12ec72fe92f1c0dadf35a94fb0302047c435bb5006730650230211451268a728582f4d0ef114c62b88686e24b7cd4c4ca1087f3782e5d1092bb2d3e55e4b12a38a555da47eb26e53eed023100fca18a45b66f08f941d8651c25e1fd19ade7db2bf548ea41c866528ce70c752555d7f1441e1762ca857df312536ac7580302047c435bb5006730650231008585b4803ff392d25afd48f59b0f3b55d7ec9be097b36d148f1e980a7deaee53d8d953a335c68b84ae9fae61bc879ec702303f30dfa968da20bccf3641685971a28e7eef1f5f3e46e1b7fb2118afcab619b65637146327af05723d212ecee19209d80302047c435bb5006630640230323f28aa208a8030976b23cdce303e22ca8cfc648392261d3a9c82e93dc77e045990c6d11ac178c557d088b7697816080230489e964ab0fc8f907c0e1ed3244f608bc42a1a6d291b5d43e8d61b58243e6c9cb3537d8df6895db88299c7e19524dfd30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300e6a3d53d95e463346668b871772a0aaad135c9324faa1d77da853af34a59dcc0b96a96dac5cab2e4ed6cd3380ac3454023100c0bee01c17332b67eb85a16018c880cf4b6c9e4a383dc68872435126279a8c612dcc5ef6db67492862b31dccb6a31b8e0302047c435bb500673065023100bde18d1df5a1027fe28e7f6fbdbd7a554d4996222b03ecd6ef6eb6d94ccc7374c0891199026c4c85b4e5fceb7862b1a60230393b6a068341db96c5976818f4e758b9b906e047f353e23d12b7a5bcf501e2284642f3f6dc4ad78e1e6167e297be5bd70302047c435bb50067306502310080b676526c52c22adf6424b2c155639bcc5b290b9af1d7c4ac211b7bbc5879b2473364bb48caf029018035bf648b7faa02306bc3d021c3207db208e4ee18950c9ce913351da08d58b7ee183d652845d5f255e8248390317d3d888e94f1e8f469d5b30302047c435bb500673065023100fbec5505b384c9624fa78fd407433787de0cfd1e4816502ee98196aec6cd0cbc228da8615ef8ab7be6f6dad07cd04d8e023049fda341f2771525593e42eafec17817f90a6073b766a638d14f51b98dc30e314cc3019d804b305754b70652d68534db0302047c435bb5006730650231009120ade3219810223681d000d058ec7c398e71a5ee83b2131d98c0853d7695fe4bc8ec5776f023c7c5cec3c915b973bc0230271b158c0fbe6ff0c273ccb41b7b1162cb03cf6727d700305d1effb850ec9af0d5c4b21cc0779daffa609d759a5b3bb50302047c435bb50067306502305764958d9cc0123dd1bc18fbb919f4014bca3df8fe3ff1abd0d9f3a547dc3aa845a2cce33bf829466f98d4509d303c80023100b93d5420f9f48d23c115e53fc6f76f1caae809a8f7a26c789f43de6ffd08390efdf9b8143e499e2b6c380e050343aa370302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b5fe590e9000740b40ab8fe917da80ecc0cdf4c2000ffff57379624e3cf563a2b3d684c7cdfe947f9e3490422014f302023100b2cee030651ccfe30058238734552c5636de4d997365146528627edbb8cddbcf7d82598320f1430af430cbd8363652e50302047c435bb500683066023100a8b451cc2d8a1b153e7b7f82e8bec343348700883e47c756a370a5d53b5d5e5e670180cb7f5a95a8cea9e6dcfd7ba8870231008e18740a94c7161f67cad369f5e19f3b6848a693b944524df7e2d92288f0fd0fff62dcf4a455da6bbbe6fce3ea84b6b30302047c435bb500673065023100b107f152abf151ea6f5a8fa69b2bcc4af943fac572cb22d50a8cdf9bf71c5b6226e30f778c1f516df65acf617804e10a02307709129f75f8e753b11b688b664b5cba2c977e3e6b267ca3bdcd5a367b747acd7dd280c1a510e3946ae4c6cde346100f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c0d2bd318a3fdbd2c68eecf0a44ffb4c6a27434bab8923c3c64e83bfa591f5b17a0b376ef68c3416bbe7e087772f714b02306eb332b4aeb20bb91feecc7b038b5a29fe0a8a4d54d2534105b6c2ac5cb9dcb1cf7d71dade1f4222e6d357dfe9ac6a930302047c435bb500673065023100926ae804a537dfa2febf1cea77bb7b2156de5739edfddc4928adb5108f83a9f3fe67fe863198615cc349e7190e0738c9023057cbe49ce12b2999b188e8d68b9f82b1e58ef1324f61d63e4783d18acb87e2a947dafe0ab3aadd29ea28443bbe0a3bb00302047c435bb5006830660231008c4d905578029bbda2cb416e3835b70e70f8e5761b6155e821628c831a4df063945acbf09025a24d71ce9b0905536f45023100f7c071de0278eedf1d8f41f248da13b49f5c333fca6da2166c242740777c118d47ec1333dde8bee4d538bdcff63673f60302047c435bb500663064023052a6c6c5ec25b6f354026c96b13f5d08e016a48bba0e4b4aaa7a88fd42da4dd1bd1cdb1330afd0843367b64cf0889dc20230224d5fb40d87ca60539302cf2b6ec0dcff7355103b5ebb771315dedd90de1b2a3a10107791c16497f2a2a1f9959a14840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230732094938e30304c2c1461525eac3034246b8561d0bcc9bcc7a50a60d56e8b5a4aeb76751a1f1b436c9499ac8afc02ff023100c5f8c892e28858b8e9210884b554953d7d7807d2966a64a6d6e00269543b81680ebf3f08c8dcb61275a75d77302133570302047c435bb500683066023100a4ab928616881a2e379a856876ead6033599eaedd7bcd9cc15d7577f9cd180a29379e3a94a8b940a6253d0ff4fc4facb023100fee8f87ae32d552ed6fe3a166d0f3a1cbb91d1e5170df2d7fe71fc2a4cdf6f3d82e56cc392939f860b59037fc11790010302047c435bb50067306502304587dfe7a9a446c39720c8f6636a04e561c3508e1a505632cd09926566e9b69aeac4f905e0b33c5a5045b627974b4f02023100ef656a7cbf4d18602688a2253f1ceb7a000bce1e74e563fec8c5a40200ee87b097adb7671e15f6d8cca913d0030361b80302047c435bb5006630640230200caec41a7d9729a77a298922b2c4ea5f51132685bacc06a8f979361202250b1e4b20c5be8be8939749caa1ca8f5c4f0230727bd34e0a48969e97e9a558d5cf583f71d862e64b1c292331619c689e6bea1a9eaf894c1f1624b6b661681a137e39d40302047c435bb50066306402301c369f761a033c334f55d9c6e98538aeba4ab7360feaaa29cf176a7e23f75b7edaa7f330fe5273c44ac9775f3c8588000230345b5463c2215e59cd1253e62ba2c5316921a9b2e7beefaf18f0d73d9094e25fed0c60a228a0a23efff1047f0b48a0690302047c435bb500683066023100e84748bdd692409b66c6ff3cc7771ec7ae0d0a8262465ef80feb10a6e72061a3f4a244bd051af5099a98bc0870be43f102310094bc4c2d315792f09c87e40c0d8a91fe4d97442ff0e70a09f090f0c0d771cbab737c956dff0194ff69b9c250a248db580302047c435bb50066306402307cd5a5a22d89daf52b8368e9987eb320096c4a832000f559d471bf1f1acf2bb03f7da62f638079384beb1c592b8a8d94023055ace58bbf8698abfb3c240ac0eef6ab5b4abd471a4668aab92f02488961c4a7354d7237ef000f331f15a6b7462649500302047c435bb5006730650230596829ccd7763cc38e66aee7b124eee263f9b02254a8630798ec55377bee9816c84cd5e7216163a16474f30cd3358e7902310099df0687f47e71d7d610f287f6a6aa7af3b29986319b5ff80b1c69f7404f9a723187d1a5fc413e43222307f82f8bdf660302047c435bb500673065023100cb5a3e9af73846bd7b2bef31c463e98acaba6b98860df7ee95626cf68599d35280a1ae6711b32b26bd5fc8ac7751f79a023061b4254cd89dc01488fed8c95726d7beef533c2a6ddb9586526aae83a8f6a26fda9d5fb8c8757fb3ea0a31a4b8e6f0350302047c435bb500673065023100dc353b9eacfb9976d9b5899028b4a160a06551febc662033182233dc85f2ad5b8697ec443b785da6842a1afbbf5e643f02304c204b0c844ea2ef2bfa4740b3a2e60d7672ca7c12f069e7b8085f806de89720a2221d8abb0020fd132226ae6cf8650b0302047c435bb500673065023100bd9c1150656250ed56ca9fba4eb145b7e5ba99ff718f494583524e69b93ebe560e1eff8d9319557a0554374485161ce702302ad8be77fbb6a2e3f9e10d59f0f85716a18b01dbda7bdec2908488e4dc80b3b776c8dad410eee144cdf7a3e8829f0f420302047c435bb50067306502301d0f6b03b8b571c9e694a2eccf9757fc83a60781f3a053b6b4e97fd2c2e71f1953572bf147f110a4ff921f59a5906367023100cc7dbc6aa39a89e3c5bded9c2ddf59b2f8668a1821fce5125a404d27c771bc33112fa2f7ea98abadc01652b56f5349b10302047c435bb500673065023100e9e36f53ba0e6c7cf3e1b5f1d02f94c146833181eded76958cef054a7704988a8ae04a4ddee8869951a4520566bb259a02301a3a24961cd62f04f3e6079bc9437eafdc5c0635373882c50f3b679d783891d5690910a65d2e09155045d98dcec70e070302047c435bb500683066023100bc3592abbb2f53edb8f680fec1bc3cc02501f62f856cdb058859906ba423b882aa0a1615e7a71749cb60f1522a43f4c60231009b72e30a4b67c71708cb00191d3c92b1dc3d2c89e9beead1b8a13d8010fb16ec5ed7387a0bcd9b1a9cdab6cc2077e6f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100da9d6096380bec047dceed06df9f6af79db96ec1db4e42c35b25ab06cb392eb3e3ab34658b7482dc774e4f0868e20c5702303b2bec128f4dddbb85262aaf8400d51de64b68b1ab88c6b3a49527c429b0b25de4d4e7bdf5fdc3aac02a8d694b3fd5460302047c435bb5006730650231009c525e2c15b6bca07edf7853de0c95214679d7b125546b878f212dcc6cce51e513b5c92cc8bdd1defdb386998f1a663202302385322ae7191f3a158cffbcd04ee61a7fcd6c2e6e36090172d82e0d4c404a12b7fbf802ec34d0a6b0de48f82cfe676c0302047c435bb500683066023100cb9703bf59484b12e94c07050c48e5ec677891bb6979e8a1a956215485003013cd6b3682baa3a44979a895f99700f033023100a1f9565f08fee0f42fd1e0ecf43016ebfbd15613bc64a7dfeff644bf79dfef8b3bc6b8ce92963dcb5b87f739e4cc0ad50302047c435bb500663064023033ac93db443ecc0593aaf400b227c4ce4b15f5c0c3ba7d85022e92b2a6968bb2a8cd8cc5f5304c753aafdf0cd26dc00c0230182c9d683631c50915983d0866424da57da55b7454290826bf6f525b2d48849c0260db647cec3e58d62ce49bc4f88de70302047c435bb5006630640230732735adfe0578d4d56f89f4d26c6450607dec0618092f9e2d5a500b46eb1866e68a00245f85b989d0f5b62e261bd963023039105ee09630b47b4c71a53c7581ca0a4df4070f04dbd45bc020bf55a1552cb33d1472c64a4ba3484fa3c8c18f0ecfdf0302047c435bb50066306402306984d0da3a88c94f0b43e72ec4105e0aa68954409fa838a13c54e38471a951c6e09ca7633d2e042e5b4ff0e08890a3c602302879954366e9a375d262fceb5f206c087262f7dbbae086468a0b6b8437b8b087a376784b8e3f6ca4a8accc7c04a408070302047c435bb500683066023100ff2ef3d8632a284fc33c7e05dbff0108acbca2e5eac15b5b09362084bdb5f50a04088600be7c972aabefc5ffe4265865023100b1b536f60b1e89449dc4ff36f7f13bf66cc5820d3b3420adae3269cad455c38d4020c9234e2f303cebdf50071f794add0302047c435bb50066306402305d1125266f61aa30375481089bacaaac28bbd72e92cdb4add0e0b7888a877d6190c1cbda1162ce1d071646199fda116f02306bcfcd66570b51f6d3cf16cf9cbdb060c034ab0570f2aa2d79f84b464f1ead52ea304f293fdc88a5aba532b08013934f0302047c435bb500683066023100c192b1aa11661ba277836166f8830d9b470ff98b63efa65fb84b97ead6f89741033f78cde57d60f9787bab542f8be35d0231009f5c46f81c5b9151a7b3b7b5083150241dd7d402ca115dacf95225839a792d86d1a2a0f6706127a6de3bb7ebfd52e2b10302047c435bb5006730650231009d9cf9b96aeef5fc3d14dbb5e587787404ce279aae7224bb33ccd77d8d7b35c81f23b31ecdea56c3b3b566b995173ea10230061d386d5370964458e5aab658f08c1885326d9ef40f5d8a88bdb4442c830a3f04f1334b9fa790446a19dc5f098e98e10302047c435bb500663064023040521470f83daf20102104e370df42d69d18ebc45bff6b35ea3b5e60e44a41b63aff9970c122f2e486d87a5ac20fe746023029de96cccdc2d6c3e668b713abd625f26994edae8b39c5ccad23d609ab6b879628152c8c144d594bcc06da507c07f1340302047c435bb50066306402306a0ac703198aa5da847fbf11e2e88cb0c172651d5fd672cff87c1de6bf3f5db0fb0d19c6d0fd6f31b335952c641cbeec023051ba82999518a5b9d209ef5f5088394dc22c4b3ef3ccb59fe5da61b233a29dab313a450807fe56e3e249943cbd78e7950302047c435bb50067306502301eab7fb6c787c0390a5b034d9181132302bbb4e992dc0360e6b36434c1c16135456c13fcb0bd5a09d58f25be4f12b336023100ab1775f10fbc4f58a7cbc90ca7437bc4bc0e7e0986e02f6f2d749506d726a573844a347749bf4dbb6929915aee1be11e0302047c435bb500683066023100ae8795a0eba5c9e4e61d1746fe620f6e959fd1c9de9d5ba211b2487066f89ae58f54fbb3d736756e9ece61304720798a0231008c4c530761979355c8e209a95dc44ada3ea037d4066a7990c07067ac8369c5324c3f92313b9e07781ec0658624deedf30302047c435bb500673065023100ab09dff68523748183d10e70f7aa47636d89fa2fd51499b4797eec5b8bc634124288532b389a093e0cd1f83af35d8ef902307653bab30d31397a9798d4e13993e0f1393957af381d07dd2c29861a3ae80583b29f0169f459a31d623702e87c89598f0302047c435bb500673065023009f8b6e19c262b2af3298eb5f4c58ae5000509ec5a39a6fc550b33120eb6939b85e2949b945135fd210b789a6acb47aa023100a891750b0a0146c8d5605e84aea968dc1e0e6b6362c140e0dc5343f0a4ba424490b62138c48db406c0eb0eefd00210080302047c435bb5006730650230459e77c206610940d9389eac74e2eedc0d928cb2977ff8516e89765429983652d737384ccfe282db9c24fe096b33a86c023100c3c26e2c25e0abcf4461d89427e69e16d2c6fc03635e25844154d0af2880e98a8ff7805ca6f374ce41d2d3f5b54c50660302047c435bb50067306502302d11a37c23d7e825f6d215cf75ad7a6157ca2296c998881d202414798581595f107e6b22c258aacefe8c9a2496d1591202310081d0b8fbdc172c3b6aa18a8cc6f8eda1f6c951d12052bea77b9aafb1fb581ef4bc3d3edc4674ddaddd5698bd0f9e229e0302047c435bb50066306402301f29116cb5732710cd4953c46a1f3732c45b9faf8d0cd8de22b25569f192dab2bef76eab990fec002495c2536391d5d7023017426939dd95e28911c0b90ab46fba730863f7b8b0d5aa3223db5e264ec56181c2aa083365084465e69af6ac17f861680302047c435bb500683066023100a8eab55dd6e0ede39a290f7748369a5da282ddcc0647f382059e44ec2abee6dcdc5a8aec24fc6bbbd6fff7551ac0086a023100dd70504a78fca0afadce9edc1e93f2fc4374877bca311b719202ce938a1a2c8b4dc7db5aab206bda579a1894e2b28e870302047c435bb500683066023100f6f6175dcbd7f2f918724d388f1c88feb809b1dfe8ffd967da245a035a02fe7bcc1128e9f737da12c727c92e491697aa023100d29e9f2d3212f341fb41cc02ff2ee35771fe726aab5b269246930239b59aae0f551a5c4c253602bff811f713682c2fc90302047c435bb500673065023004f475ec8eb5bba42d1463a1a34ce579703daa7e8d32d4584d31a1e645dcfa8f7c8c6f412c5321f4dd9687772b271c98023100cc9e89af60d518995495cda5dd6ba1398b60f95523af70504742547bfec2d1d3e4c7544c2dda5e6b6c41873a3e9d23a70302047c435bb500683066023100c6776de8ef2e43261245deae48a6b8a19a58c22785f433eb2edf488e72bda0a36c946bb68662237831c6c6a434fb7a8c023100e334eedad287de0f6ed435086c1e2dd8e289d9ff37733e789c9f9beb8a9a3ccc33193e8e5a3f9033975045f1929dc5550302047c435bb500683066023100d4b53f9b3647a0d87a119ce2032f0526f1f54aa59cdce3ebac2007e70e78099bddcd78acb54b5f851c36db7eac2b8d1d023100bf043f8bc47122c4e9a5db2e3a99fa2c27dc740c7661a8640487bc20b07855d9e130ade9de6fdd1e6f7e73cd56aef5c70302047c435bb5006630640230205815bbbb71fe4a427f7a169d0eefec311b63632ece820094f0980f9958e1b688f1f484e13010c0c33adaf8387e470b023057b5f823236fcaef6e34e1b452af8feef760c6728f1366175f556ae4d1bf9676877a7ddcf15a6e03a39356b4343669ed0302047c435bb500673065023053a57fd6c2035b6ddf24f8e32494845e3fb42e480c8ef66eeec3fde961c7fc0c7f7cb4ad3ebb29b2543eb2f7c2505e86023100d7b2db4435783f2733e48e1322c70b423d839d363bde7451884912e0eb8b0206a9cea0d0c6f1b6cf0304632c8b21bc7f0302047c435bb50066306402302cb202ca73df72de66d65de57dc3e69999ba22fdd9dc64dc70ee0643f269a12bfb38ca71fe0536f9bc236e36463977b10230620554eecc87d97692f5eb2db1fb4c408db8e28de3d68dbc2db1dea28364e6c7f246eb1a889f01be4b1e837ff09718fd0302047c435bb5006630640230108f0d5710f2b3030dfd7f6773bbbef3efa5db66bd890e709b5a6fa78b9aba1bfcb87e239efdd32b86ee6bfd683c8435023046dd493781fe68dee6ecd2afafd43ff5cbbb195fd7ab2318a585f51dc0d99a964199a6ae7d4115a1b8a9aba972ceb7dc0302047c435bb5006830660231009dabc6a660c4c9ee220e204bd57df7132727303a1e26885d69cfa817a44680eac5efc0fb728088a1fd15ffd88f5cc500023100851b79e1b337d86ee3f1daad11b1e1f9ac485c741afbebb1a41342a9053b19edc2aa47c3894dcb5c152c4d0be4a71fce0302047c435bb500673065023007b42f975c4bb4e4a6e3fafe7c35a9a3c1053ddf89dd2dfa1510eeca13e13ade274686f709a26d298ac586cd9a3a77bd023100e6e30df895931e72bd899dc71628a71aef1e2f572874450f182fc195d7825b90a82b33573694182f5c697bd7e930618a0302047c435bb500663064023024030b8a37a4412d11a694dbc5a6912c174b2226133137fec640f2edc8d7104c3ba96372ffb23d558195291e8a7e039b02301791da1a12751abdfd6a25c005d2c09191a6cc9eec7b753f48fa3407a6f4161c3b22fa19f927c21205cf00ca6e832c730302047c435bb50068306602310081be373778bb75f7b472fac4b708bf7e8047d7268f3a037230e6a40fffe4585680572d6057a45f82d44ca24dd200c1cb023100c9c212293614943d8fb67d271377b3536ef308b8e2a4e3240d76ec63619d346548887bae4162d08c7ae36aee484a170b0302047c435bb500673065023100bd58028b5fc50320d40585c73e03f9c47cf6919e38814343b931c4b961699b164d850111a78d8343af4dcbbf7ffff232023023807f7478d89508cfd977ac7477971eba5336e6e1420729ff3452f8d1e02383797262265f8c91c0be1bfd20ac80ce4f0302047c435bb50067306502307b1ae5438ff9531412327a413771d4c6e62c3a2f9bc48664dd8548ceb3bb495f6d67ec64303f0c39ce966d76d685bb4c023100cdfc2f4d8e889bbf349fcd31045e8d43951fa93f40b81b5046544f99b934422437b2b6a5ca3f477a34873699f6281b520302047c435bb500673065023021e7524a9460ef6646d53ea3b8f42600d0dda9244d1be14cee873e34703c9edc300215099e32bd0b311aae29bbaa4a340231009571ac11c9a2eb044791f0684eebbc71ada9e6969edbe30d7dc9b389c8172af9a2a21d754fcf7e53c19ee634c33670f30302047c435bb500673065023071fca889947d949506a70acf504b2e3cbb7b26adb724c863c74bdde90e5a4df32e565d4ea364067e7baa99f31e691d47023100c4c3145d5b8151154c6bbd1332d0826636219dc00f433c2a47381489a2dbd1614d6af7de9ec76b887ae5b3e70f1abe490302047c435bb500663064023061012843da0051e25a1682babf95d03aef4948e3bcdc1b3f8879cbb2a2b80e643f493f4b006bf950c1fdc73f0ec050f902304edc2d634d41ce9fb7992974caf7d6d8d569bac81de4c97f058c668607b985e0a4495c3bb0d7e54b767f631869f795fb0302047c435bb500673065023100b6d0b0c10e6aca9cf6c2680c9e1356645e068b8103d75142595255a630aaf54c48a04839e86a0562921eb5d3b2aec74d0230063b213eb52c1656a19c35823d45ac8c31490f1f2990584c0bb8cfb68d3754eacff4bab7280f030a5d72a83882a29be90302047c435bb500673065023100ab92cdbe690f85d2ea5c60a554aa3b873197598d46b78fc31310491b8011b46f3b4225a9a445b6eb8541a224cea984e0023007404eebb6d3ee6d8be9ba090f12368b64e858020059566023d391ac464d4b67d6a05d3313e0717cf37b8e262d7e11570302047c435bb500683066023100e8a05026502686c429f29dad73aa2f49c95f0f83e0789b00e78121ee1925cf064c7bf96f69639ac93c3c7c17114a665d0231009d75dc1190f65f841f88f4c5ab6301aa0f7112023682007f327021c5dd53f44df51f7c241a9c0b66027929d982c4c9ae0302047c435bb500683066023100e4a3ace8692c55adc5d375544e4d138bd42a57e99490571553232a66bc08c13227c4a3c01610a044c38957d5134e5bc8023100a4bbe8975c909d41133580fb3a5dfa130fd5dc9e66d487a0b622fd6610b1b71008cc5da2b46a1f733d98677f91d5ede40302047c435bb5006730650231009b6e57de907a83ae062ce08442bf979133f4dc9480e859d5c1361a953a79b42a91000488ec5981652b65fce03ac6ec2e02303fc4028bcb74c89af854d0443102f3dfc9b9a1646a44d450fbbb2f66956f3bbd1e099f6ed09642253e4cb95b696275700302047c435bb500683066023100f40f69a9e8fb85c3128741ba375824ab0f782f41bd320e821042c8db88e2e3b098178db73cb38d59dc73276111b72655023100dc8019c05c22763e81ff0efff578fbe59d856afa91b736f4053833bd37b6d9f849167b1de4906c5199a1dad3f0daec6f0302047c435bb50067306502310093ca8452d1a23fc8776acf20d3f9905744d3e932e3bb06caeabaa9bedb8d373c2b2a4a5479c60747df600377c544e56602302efae895c039eb991d2fb066b56f954a23a3f0b50797247a6171b3a126a8f884906f38d3c6a5e633801ba95d1b0413ac0302047c435bb50066306402307cf919f450b4126b187618c467a500cf16767e0af6f73f552417e5f1a70302bf428e6b65097bff05b07b86af51b81e0002305e12be808c87fed28481d35cc8156ac5bdcabae8f11c40749ea52ece25f121aab2f05ea255a4664eb5d6bb225e9e968c0302047c435bb5006830660231008ad7c185508e0be0622e16de9ca0cb253cf01c12d9eab876db5bb33fffa28e06ada486aa95eea739743b8e57769251c0023100c8c1d8ab61932e47443451bf3d1ba16b3060ae9eb42bbe194d81cc176b857cb6d41c20f38620d3609b9513a468732bd40302047c435bb50066306402303612e2759ee52047ef26bc71d390274d39d8ef29f7bc8808de88c25f134caaecb4dbf5f1c0489834f2dbff1c8dffbd650230559f8da387b25911d602388696d0cee029e87ad16b597c86d9a93be27c473abc075824a9c79c3c6b90d7c05af4c4af630302047c435bb50068306602310097a9cc9108773010ca65c380bc4259a0cee30935fc829fa9957e7f1100505599eb01f8267efff1b2670c0d7b6bea58980231008bff03273eb1485cda43fb316382d5b81ff844e2f83c2a121e62ef11dbb8fcdb698a9a49d3228f3b809c6929888470750302047c435bb500683066023100cc33834400497c06f4439d90d79ab2a4e008f027c1460e0f1c08cb3ad23ba12053d26d5fbf4661b5900e1bcc25c42aab023100dbcf57791e4c3e71cbd894aa18beb7bd02324d0e1e8af877d4a791e0795205b7540f51915b86ad2313d77b1563cc7f150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230561c6ee55bc3ee923f5da73c19e655450f4f09e91c55d886df60e2c426dd1e71f870cc18774c967987efe93685e6a83d023100ce187c150baef219181a47593c0835bfe146b1d628788bd25688dbf20f9f4e6430b478007e9c9aad214387c949f6e3bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fff77f20adbf334c766389cc3f6ce8717b12ef09297bd177847155a638bf36fb73315cd09600e420a512d69f3f46882d023100959f75587ed25b2708dee6778f7f27606f902497740dae90009656250aa118fb5a34b452e85096f7847db415402932c00302047c435bb500673065023100d235d8ac057141bc0efc77a29b2f8393c9c07d3c7d552f7f42cd77514a129439d424d6b7b198ae69dc17ea5e6a1fb041023034bacf5af4f12b9949d3b9c07a8558a98249cd376e8095271b9cd6bd9c32e2141ce52457e57a4964b8e933d34dec92370302047c435bb500673065023056fe41d7250d19baf4e9c17060d973f7ccd2dfb05c4b24d5a0cde64a1df7ea0b011494a6a040f7ca00d4faea2b9b99c00231009f6286092b585cb06a8da8f0c024678fc2ba28abc3252b019fb317614c5d409805957027d51b6f085582524fa3b572ac0302047c435bb500673065023055cafb4bdbd6db466946b52b64ed7e3f37a26e87418a11d5083c80a8a3cd639f733948057c809452efa7456439adc54b023100dcf76fe07c94550b8529fb39bcbbb0317595a6c4707db27f69d14bf4d254ac63f6dc38ed2b1db68999c7fddc4eb593160302047c435bb500673065023065d86bc687fcaa4e16b2f1d7f16373be6b6c8f679b9dbdb57d52caecc3453589fd4068737c5d9498d83fc4a7a8444aee023100f2ab3d7d4ddb59805070c56426953f50a01d437a914ff7747ef9f7cbf6d771dcac441030bfdd4ea8b43a765a8f021de00302047c435bb500673065023100fbf4ecc484b0d79896a1242613fbf690e3983405a8c828f68d160583bf72e21c2dc7c572ed349e70197db7c8f5fb8eca0230389f11d1b27e92ca48b3e06c5d7c81e3f66184306ae70fe6f6ddc8af59e572625a501ceb0493a977d56a7474c60c4cbc0302047c435bb500663064023042fe13242103562538c38dabc1cab1396f0e8f645aef4e543ef2558064d0ae27e7b14684af1f0613897e5da00e1a1c40023042ae8df7cf101c233441ec265477d22a035d620cb952606a51f4776270a0650dca0589e343b7ff033ab4347524e2fd2b0302047c435bb50067306502310094aa87126773a5e6a9ddcc04291b7c1897474ea03c4db880958532d54e9d3da3a324a37910a93c2db2cc33fdc816a128023004b942e841f685c97b44ea718074855e69d93e5e8f746512d4ef2b9741a347e54d5c20adc25c58206970e9d28971776e0302047c435bb50066306402304952451dbf95280e31d3ecf7c06723c7fcdeb10773d7b00d02072ec6e1a103c2c86dc1c9f520c19559d356e0c5af641a02300e23cbb8cd8441d5e4d8ffec46b6ff4484d34feec965c55f5bce7159d4d02041250101488f890a45fea16dee16eda17b0302047c435bb5006630640230443612f09c1c64caff8dcdfd3a6226cac5756dc6a5ad10f3de3f89bc0eb1e26beaa27c81e09652cd29e79851d436d9400230254e4829514873472148fef7122896226f6fd3dc2ef0aa04932af0ba8ff7681eb1c7301708174263f198a8b467a053350302047c435bb500673065023100f78d78847139ab0bf051ed33f0af5178a56b8575aafdb4dc06f27027c365344474f2673d2b338bbd0a6bc1327eda45fe02305aca0d45c100f9249fda2b1bb051373d15b0bf7927e7116e2aed7c0c3d16c6f8eda2888e78aacb0ba390beed77da59d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e8644ed698df4601e6d86ae57b79f02fc6467f1d92b02b623777b541ab0910c90fccf9746b76fe2f3b9a4e57a8bacab702307393ec16619ee4a4339d9fed8e0cbef17b2538384586111fd20818db16922564db74a5b2b207d7314dd780a2bcd21aaf0302047c435bb50066306402302b45b7ea0402629cb2bd1d559b94faa272b94d3b47be5ec2dabce5741a2c7f7992ed26cc065fc61685b67d7513d24b2f023035328b930c1c2b8e9230503d73757f0b9e9e3979f82a3a0121b3de2a5374622f669a2a2463fd590329b7f86d841386de0302047c435bb500683066023100db5da132a3cfe55826911942923f59093fe5ab72d39029d26efb1c620107d6b93e8ceffbd065d51725b6503f71b1397a023100f89eb80a49f02190f6e49ba3f30d079c0e9c3b7bae3ebe8a05105435cd0e82a74e0f52f55140b656defea4ee58b881ed0302047c435bb500673065023100dd7b7586c2b1143fda9f59e3359a92799f38538ead209b5a485e0a5e434728a95eaede78e741cfdd27ab2dee0f41d94802307f0889c40ca75e32f324d6696b1c901b305a9ce8d411e66cce388c7bbefd3cc964aaaae3c99c23f9af62c6ce8608ed350302047c435bb5006730650231008554339dd81d53f3bd18c7eff94714fad25f4895121c78d33856191965b4f82080f787c86df9ec2ba5465bd846a8b9b0023061d38b72227a5b24d6c959394143d71d404952c4a1a0f79912339e073e8303d3cc8f1d97eebd82e6703e41ffd2d646d20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302439b315a193dd6d0283c67a4f7e645f8c9348c6645306cf23fbb2cc26518a1324fda2bc570f07c175f551f03a12b3f402305a5857e5feeef8f38cd328a9a16f897acfd611f1dc59608c41ca767832fd37c61ee1d4fa78bcf1340057c5b429c7df8d0302047c435bb50067306502300edc0f32bc76c8f35c04bb4b7ec15ea25af51ec27fef7ebdccd16481be499a19a4cebaa3e02644492bf252ee6c81999d023100d4ea38e0722acebad6542d2bfad2cce08dc0c03b84601af4a441707b23b66547fcb80eb90900ec7a31de66a5f73544fd0302047c435bb500663064023058ecc026c4e153db37e0359105bb5b5b26891d0adb5d5e25eef5451ecd60aadf2fc53ca78704a34dc7e211da79d944d2023048cff2ef4c9a6997af8dc67e12aac8d9d64b4926e7b2574680f2cacc3bcd68162a4afd978567e009661e9b2ca91049840302047c435bb500683066023100d825ab79d52fb3ef177e01208f0ae4882156aba8c58cc49dfae2bee855046a5ec183af6200d7073f35ca2d150ec28edc023100a9fd35530105ff928202da58fab9dfd523962bff3a2db0dacc4e8d664a899e1bbeaa0158bb6b30ca6009b18cf942a5a50302047c435bb500673065023100aab4fd751c6a0bf93c0a86f5093c82b8defd40955edab6aa0c37d881f016ec3d2ad1f44b695c5c232223323bdd597bae02307202fd931432818a0d345d8825b31b5b32accf4d3295ce08bcc1d16ef977ca7b3d29c36b98de80b1d852bd107ca1090f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d3c1eca2107a51d5b95d18f6950456dfeb5a9e64e43ccd294032a7e9fc9b1b9e490f0d5a508ce30f51a2df3d13a77a8702301a23d867c2d2796d56b65d85745fe568a2c010da3a929f6c26e27660341c3a12f41aad29c7ee583cd00decd83641e2a50302047c435bb5006630640230084f8d8a7d2ed373578d699444a51794b0d4ba5e024a0b5ee83db89145fa1e09d7b09186508dcf34226c48692aad54b3023071611cad083b594ba4f1affe0ac7a22bea6dd4e25fc40cad7c16c2afb9ff83c601229579fc0b2ea11dedddd12414380b0302047c435bb500683066023100e4e941445716cd981d35997509130a6922441537a6374925822d10ab380ae40359cc8d8dd548abf387acbaa14204909002310091e84e4ca6398adffd700b1be68d99f6eb37fac0208be5f46e21f64d6daaa0742203b96f007eae7b76991c49223bb6090302047c435bb500663064023030fad19049abdd11ff439b71cbbf600f8ef9f84f11b40b4c77d3b0c823b3d60daff0c816811f4d261975a0cf5063116702305af74ed12380d2a20a37237d8e88853ab2414a4ba3be9c23843409f3eec648b76e2490352a7e12dbf1b532ff0cffceca0302047c435bb50067306502305de28e8225f42df557ebb16c6611ce1f515cfa8479e4ead885a5b0f10e24d8b04981faef00c2499fb08b85a21bb7f6c2023100c8b10cb8923265d16cfdc49867fd31ef7d55bd7357ac8f27c1b5a6ee3fb4779c7f9d63f6a1c9685fc9cc6b8bfc8a7eaa0302047c435bb50066306402303091a8d3885c324576d67c3c26fa99a238aa9e32c8c7bef8434cf630055c40d40f1b6e2b54800fbac52f18d28aec79b602302e4deaef82506bb21336fbd2abecf54ceecbda5999800b0f2efe5a8b7974a994f3c24aabf8ec39cb5a6068fc8cad06b80302047c435bb500673065023076f70bfe6ad8ca06efd3cdbb012cea07e0f2f9606291c9d297581718960ff8ac8e941895b577362305c58a1396fb2003023100b9e05a0ff479c4fc53dbec349e108fe10d021312885775b0172f6d404f8147cb3ee7a9804d1917fe7dda4efde27d4f100302047c435bb5006730650231009783d02bea48b3563b02b5c89ad1e38f21bdded48812e16f85a6c7c4dcc0e060b7cd18902ff5f35309981a8bc7272071023002e4a7348cc43a5f596eea5f42955c8ea6e0c4d52daf7fcabf7a58c80cc9811f690d6d56bb122dc32eabdfc6f4d913f40302047c435bb5006730650230018a2ed339b9d46a27798001bd1024ba2804d53f5b053d452b593b9a774224781841f07997e922f18923d4133e0a65c5023100c757cc40b3d8b64cac5bd00c0020215bee0e10940fcfe939108a06418a9adea828a6d40aa4b7ca63e115ca6433b7710e0302047c435bb500673065023063a05cdc34482085f56197c91fc5657f4db7e0ff048d0a6c84a015c2b873c690ce88210b6ebd35eab0bd209ad7cf3b14023100a8ac80e2bb2a1ff3e3a90d4746f65b5ceb3a7ddc257ef7bc89a53301905e80206ed13b02c67d7399a92954d5aff0cb060302047c435bb500673065023100e1cc10446497ee1a5ed36dbc4eeb13aaabdf7b6290e0ba51643f5ffe3a4d28a2c297c0d7f2dda80059b483686ce6fcc202300b5e0d21fe2b83ca1069e92161d98a727b268147adc0ffb9199cd0a9875740bd719c401d55a843911336f68a9a93fc830302047c435bb50066306402306e8708b7b23a90ee36912160afcf8487a12b32df32ea4985a4f367edcde1f51e20c02930216f5a7c6f3943df8bafd3cf02304301a32128b9213ca5879f5f72596f0471bc6733324b74d030f6824242c669f811a4b489ed06637a037cf010cd28f2a50302047c435bb50066306402305491fdf843c101cafb12a6688e294c0cf9a0bc005a5e63dbd780ceafa1ac231fdb1cb66e6607005cd02f5711bd7a7c7002307b3050c0eaea024ea85ca273439c19b6720ba65016a058a99d1052aa270424f9f14664f53cc9fc67c67da0b8756cdda70302047c435bb50067306502302f559ea4974366f8df59c8c77125cb23bef315e001fd3ca20d039d78cdaefed293b85304c412867f19890d63393f3b81023100ea93882ffa321bcc3a547faaa0a242ae2de785a4a9685c31ed9eb990126e86497616fc2634cd5151f6d79ef80864825e0302047c435bb500683066023100bbcf8924a27c9c5208567b24ebf2cf89e5559b951492bf40526b7d483c211b2f50c70d235797e265f2586cae317d1afe023100dfe5aa03afe8329afa5d0957f45973de59681f8d2f93bba6708426763df2a773e5eb02fdf7a1c8efc39b2bf0320cd8dd0302047c435bb5006730650231008a2ab36887248bad64cf42078c699e62aa8c370315c606624b1165c156eae5047f4b3c603aa3321b108a24486bf4ae36023026ab8aff4ceb570681bd51a7a280d6d04945c8c7dc6a48a7adbc71ac8daab1f385a15405b1f1661b9d9c77ee2f6d5a670302047c435bb50067306502300bd15872f90be0f1ffc9c0ff1c1d51953711b5175317394399161b9e66b3bac9fbd6648a8650883b2725da8173dad2fd02310081ec80ed1c06eb3e1ba8161e77e2f9472f7c15ca35b603a0f6dc9771b221e702c9b0fcef701f0f598e5dbfd9d327c9240302047c435bb5006730650231009fe4c9e2e97b90b7c4dd1e599e1cda0c6419890bb7c601432e3cca7260eea65334f901395dbbdb0b49987a78b623ed4802300a43caa7a77ea0346b9f2e1be9e60ae4b1847790c33ba8151de63b04ba3ca1a0410f2f6de6cc9d7e0cc46aa2678efef20302047c435bb500673065023100dbf0b94c142eec1d818aa522e9b4c417b4200faa431efb518470c2dc574d926ada8eddb9039b14d78d9053757023270a02300a9af57074442c3a944444af60d47f0035c8ede3d481d8277bbb59a8e90705350bf3b0eea33541ef91bca83cc26fcdc40302047c435bb500673065023100c36944819ca108b988f5f4a6c7e6dc8c0c01453a02acd011356e22d59092aabe14d0979e7e1174acad5f9f64536953970230680ae4012292dfa27b2fee8d9a43566c8efe793c9bc2532751109c4d1fafd1737666c6172f201982474295f5c2e7ed5b0302047c435bb500673065023100c2d188910fc374f2b30883f62d225293e4797b433050ffd4f55722b1efc0a073b0a6cc733a70c52e0dd7955070536bea0230536965c5796c35e9c02e1e78a7ffc132a86565ed798b23bf9447768f0d448169cad8ec767e5bc3aa541529cb03dda10f0302047c435bb500683066023100df1db9a27d78ced90355c7ddfe71e63f7b6a620b4a96dacaa64e75ab0904b2fb24a537a5aeed0b006f08408bb13d6b38023100cd4b5298f90e005797d7acdc97268ef1afb62be07f8c1790330988efc4cb7bcc9a975d4f4de30e20f185a622b75cd8620302047c435bb5006630640230502b233d2f2f4c15b759717e6025b9eda9fbad0f1b88f500e5dd270ecd60f44ee43931bab394f9032242bca92f9b66ef02307ebb1de5d149d07f7f9b1f6de3be077f77adedd3874253612513393539431d66aeb1595688d5b7cea921f438bc74ebf90302047c435bb500673065023100f715b43c65637b54acbbf2457dd6d050ec69df1a95349613e00b0c35935a1b2c044aa3eaa3262f22085f433412e50243023030ac4a80fd6d7b118660431864bafc587248f6f6847a6e3df3ec7e41f9d816f82213588ae8ba3206dd4a7a34e60d6d200302047c435bb500663064023018d8f5d9ae6d3cf53489c9717270ecc3a72c024248b02b3309af7729009b28ec7363abe68593107ac29ad1f12f1a5ff00230481e039f19528825d333814ab2646f99d374bd987f849e667c1c42f2fdbc7b6eff27a4233c8727aae1e5e702eae46cd70302047c435bb500683066023100c64be94405946f354bf646d70c02360b5009445efb8a68d1b406b36b1fd68363fa565f01a47a348bf5e93c003f3a268902310080049aa5d1defa3ff600ca341d254f85a4966de67e27bfab2b019b4d15bfe2e100c00cbf1162fbaa82509d520536b5590302047c435bb500673065023100da25fbab7a8464a00844082f6aec4e88aef3961ce81a9f89a4c378bed94e97c694644a54628f05b7ffc8c6f1ebfcea240230455bc5d27a7c7eba4b265f329e0e2abf7b7fd2d0fefd999f3e0274351dca79b2dee4cdf4a7d3c318831893ec397a6b560302047c435bb500663064023077806a6b8f9696d520575227207d520f8da7faf043655139bb557964a885742c8b99cda203565f247eccb56fdf1c74ee02302caf6e803fa6f60499a341f9f4452a76f5eed08d76a14a37e0ad66f618d7a272b6e03cbe63d502ce1bcb8d0e6e849adc0302047c435bb50066306402305ec362b1755f9603b801feacc841f2142b0a31af074d249f70f570caa0a77d0075028ed143189c8a3f5a600d59cd6c1e02300411144a9f6185c7ae13c8376bed597d1426cce036efc35c4e1864116afec78cafd83130bf825a078130268dd9eb229a0302047c435bb50067306502307706e88bf2c952784e3627d183b07e5b9abd4bb587814fc5a0f3b365e41e6bc7cee37e59e980b717c6f19af249760382023100c9ebd63567d29ffa5893170dfb55e92ff9d66817131ea0b955936587268ff689f8885504f354ee0ff95e098a712beecd0302047c435bb5006730650231009cd416d97f20ddd55145f33d065f51dd8e494419dec0712c2398c37a46c5a3c67053e297f39989fbb2550cb527ac3b250230667ab56969739aafa4a19c5d9ef767871d23e02a7926ca8d0eeaca0385f62121f3ab5228bbc0c46884078fcd1ff3f3540302047c435bb500663064023063d7925d3f6254242905b0912482ea22f089eedcd9e703ec5b129b59ea26596b41abee2b0b5fb39f8daaa675ded4d0c50230306ac24a637edcd30d939d230ec1b78916fe7d108366af0f97fd6764e7717a552b7d1fe0d330c6bf5d334ff0eec4b9950302047c435bb500673065023060459243d2e19f7a22800c7ea9bddaee7097f67cbb07a3da999e0427b38100d6731da11a4e6c205ed6e0975c09c3f37c0231008f618712f8861a5b7243589724e9c3d753cb78cdfa9119848384c7c9128eb832d2ffd818087556d495ca07634e692d920302047c435bb500673065023100b627d5a218688a5a5ec0433ff4cdefa956f8aa011aa8ce88c3a7ca8142545071b02824966b4ff70162881b6d0344787d0230698ffab3af14c74718c302989f87149bedd96fedc6fd8302b56a7c8354297c5b136b958af981f74911e608f54d2153d60302047c435bb500673065023012f8f6c4eb26659785b6a97e960150f693d6b0d71a3f0f633c5e122f94be12080d4bc889bf4bc4f2e7a0eb8e32974d0d023100b4329da0e4a5e4e6068f75f7d6d11b192949146620f40f8038dd1454ac365b33e8e8ebbecf56f7898b091e208ecc30d00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230314b1353c675028edb99d5246eac8fe4436f434667b9c5233f7b8ddeb9cc81f8dd59bdd8afe66d4c493d2b8e03de543f023100960d0b2cb2299b022a063c86cbf0c33f651edb64ede0cf09e290436ca21ef729b2f8643a08b96420525f359ee2d9c4900302047c435bb500673065023100c17a47fb6a2473b9ac024099cb8a434074c38bd63077cb83bb1d245dc574d2cd6245f1e2547fee185d1681cc382926bb023013fbd358f12abfa320bf070a7ff46c96416b87ad4e6149f6019ed1f661c9a1b67eb85523d5c30e2182c78d2a8c3d1af20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064022f3c6638e4d354b53555ec1112930b33c23966ace21cbe0e7a8ee034004a27fe6961a57078a06668413581e4cc5bd3d6023100f94f0eaa4c04b9ee9b525129dfb210ab2eedf90638646eb68cfedb6d1181da12c609aa7bc6810954c295574e09a486540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2c3c6cbfd610b24abb07c7cc9a6641b774e9f2ff9cf80aba94eb5344540fd1773b056d450d5c0d47b657dae7ce32e6d023063d38ab1a24b2b6d45d3598bce90036c5d7b05c39d86afd7e0878e155244e56f9ff41774237f694f378531224483e5160302047c435bb500673065023044e4b3f9baede613530b0642c6b52b5c8fc1f58d3e40cc9d73f982cbfc8e342f580d4240d3a6917e749e917bc353bc84023100b11c7aa3401e5fc6b7a4466e48c77a1718d6f0714d3be5464cf7b0cc7231ba42dd069be0854af551b7718fa6b4425c580302047c435bb500673065023100b30c6666b56c62c641535a0a038802c9614802354e04c15851363ed8a6e48890d301b8929c2c1ce3c1f57c44b0e2a1620230301c176e597d5b0975ed171c5eac6e5349205eb773c02810045347780679aed2899423d184966d92889fe0c02b8eb1380302047c435bb500663064023022b41ffd2ec81acaecff28cddf2ddba5a0c003238940f8434280980d5f19fc7b99ed27dad4fe21585c699738a16a5bfc02307db4305cdcce2931ab7df3abf57272792ab1a2f2684a3910806fb8389d09010eb23b9952602b43bafb7c0af5fcde63ac0302047c435bb50066306402301e875a96ebd2267a2865e3da0ed349046297b3c388f75b623161a53cc9aa4a71445da6c8f9e6845dc0ff03677fa0484902305397591eb2d26b9713e77a1037928d847ac1e1c9be45ea28baa843811f4b4a91ca81b28d03fb669f79717364ea34df560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e85f72c5e5da98f7edd32f6168c0e53e94ad21dc4285549bd338eb16be99df63f5a7d412508f30b88a1efb6bd075e8a302302900313df79bd68d2b0cca21e5f8aa405c1cb57a6fa0ffc4767f071a5f3898040d03ebb30af07a3c04e1c07db3ed943b0302047c435bb50068306602310095bf201571170addaa9be5091b54026ff1bcbaad3844a490ca2eca03d65f3cf43ab608dadd2ed14421966f6bf90a9d7602310096128c8abd86b6223d511e8db364393ed98ad39811a84366db6fb6a54be57ea1049aa4147b9750409b85ff42880a92750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009cda9b6fba96b6034aeb5ad52b877d964ebe9460cf84d75d3225443b6f9abf72583290d1078a41e3cdf3efa6d1781667023100aa5397957ba51fd2793b50ab048678cc1f2c59cbbb0e5fa97932265e6c1f24f5a24ffaace6d548c1894d007876d7645e0302047c435bb500683066023100b94a43fc89347cef9535cf4160d31d52697ac2eacfe40f08eb8723e710438a6b431fcc41ebd61177e566479235b05884023100edb15b958a9b4347f0cb604d0b47bdc407d56cb84d1c11abb89e6d233b6a5bffc4c7e3dbc2d152dcd5ce8ea562737c760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b569291eee8882379c63960daa9473c4b830039ff5fa5ef43d279e1a9342eba3eac11f01314faa5b77178401364ad880023100dec4e130ff6127b4d82cdc542b6d2889cf3987dfff1ff00daf818541c40355e4b02dc285b0b66602a14b52512a3ef77f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023004567e9d9185d5f58279df6bf8151f3de11252e123da10168caeb22bb54567b43cdeeac3da53774702828af138c52f39023033d7f7ddcb165a34aabb7819420a6ffedcf7312712d801b04d9b51c44c0ce708a06796f6754dd8c2f046c84645b3841d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230540412ed0eac5897a693973bdc1ae18ca893b24d3c7d95356e52fbcfb265f42428f6e6b4d14ad52addd69734fb5a7221023029478c51b07e4c748530475906dc2be5e3d1d9aba279150eb4a3bccc3c4268ed88a99f0158aec572e0f27bc665920c740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b3af5c97cda49f5ffbcf8b357af45181b2bfe4e39340d864d83302468ebb20944dfb1e6f387b3843b6f1a2c77bf3ae32023054502e4f6fcf419c3eb2fc75d122582a887e0666e07bffdab1f936e268b76933e0b03ca530b166d4c90b370e655d787d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a30eea308fd183ad61b817a20ca7176ee31eaf261acf8bf8b444a8d6757043f2e9834a0dc875105637f0bc705569d81a02305447f3a4d5b103f57ffd492bd99b83a64ea19d0f092c33182babef9b30c8cbd03028c4e0ded11e0a9fa68bc189aa81230302047c435bb50067306502304c53f5138ad967beb024354c2b9d19f600db63b0a015eb4de1da84a26e15192eed905f3f9656a6dd431776cfd63487e3023100896628fa2e635d5ba070bdbde33acb422ab93b9a864d1f61466c2e96167d87582dc48f95e30c21759f2c156de95ac2bf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230756d099be1297347a9be58e84183d486d24efbb0cb705a90269618d8f405c0d7315c3e465aa8f93dc2977ecf5cf62fa1023100dc4ffa8da894a308171c2c1b15c8115c4411ba306452f8f474ba0ce026b638220c6c18923c118ca65c334db805678fa40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009f6804de3224f9e8b4fbb6a6e87b4438e386c9c09ead388a09e691d9360798dbabcedebf1d79eee18c9b5243629e3ab9023100ec63d7f8f5f40c54677db3f13212aef40b3d84505fee931202e37c1f8de29b3db9cb92e3e29f05e297c7b673e4e097c90302047c435bb5006630640230584cf89a5ee2c44608ed4e57005533a81310aeb03755a88612fd840c216e2c9fbee31e4b6bfa8527c5b8502288aa8363023002e818e20834a7aebb3f89e710923cd4736dd31dfa3053f55e88ba5b5f450c7e87d457101f483509a399597b748f56320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303c3cb68d30265f75d105ccb507b2313085d3e33c0a296694f867e0daac40ee4e9a4e500c760578254286d9271af7bb55023100f9873893d065adbf782cb6ab1dad153be3544d5cd9fa671b599163e46814e066a2a9cb6d4ce21ad91051fab73008c40f0302047c435bb500683066023100a01e932279a36299e5edfe3bd0c56e5e3d6983fa1f12684343e4b6c3c3b8fa8c645d22808708a043d5533b6a04caf7580231008c9edbf9932de3b2e9243e0a8302f9b00821e162223c8b656d28458668b8dffea30c79c7a93769d0b25e19d95c3298460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023074106ef3fe57748eb7a941ef26f2f0e3dd252f87fe50a5c15e4e2e46b76aa847b45f6db49824e2b9be81096e50d2a3e802310081aed4ca4a627185c87ad5c5e6e4f71143b284aebb742fdbf6b7f220c9539bb70c7f0cc52bd79ca65b2ecd84edece0240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023041a0163d8cdcc273f38798ea93fcda8af72fcb2e471373047d299e2c51d98b899199e51d985d0e9f74df31c671113241023100884e1a41cd668dab5a67bfd8e475906f267b52018a757437faca944357240c327648064cc4b7994445ccbf971ce33d5e0302047c435bb50066306402304b8555ef6831b0a19d81b4e351c671cbee21dd46143cf8a95c79d96f513126e4ba27464fbc9ec334768de34141985621023037ba103f172b8d633983a70cd4c06b255d84308909c6f7d7b2bfd3edd768314978b69920ad42566efdb146ed2810de1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023040aab6501661afed1d0c38c70c7461191f15d49e0698d50d9ca219b17f121847c5f76fcf22f3659833bb344107ccda1f0231009c5c538211a9b28cccb9b7dbcca744c311c0a90955b3f692b5a7f2842e07c4936545feaed80f01bec68e4cfa6a6d17a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f1c83eab0d33a1fd30ed24174569e689b9cd3ad552a4d06bfca45c45137e7401f0ffdf24e00bdced071730162820b69d02302a8d20b5375768faadd2494dfacb12cf0c037b278e9494dd4d9ff2751618bb71020fa13131a254fa7914c782db2dfdc10302047c435bb50066306402306bcd2907ab81ffc14ffd59a0acec5d48050773cc3396ab362c53e4ab1d5147008cba4654290a4a9bb9f00cd9ddf03ae1023009bab366ff0644badf4463be60aa5568dffa9167d3820effea4d0d3292546e5350ce3715480bbd97464d6f6e0ca24aa90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302bb5f31a089290ee1576c29371886db2b6d4114b87e97bcf1dcdc43019de9eecd793dbb2ee2a064db6dff7fda58d60cf02305dc602cb34a176d3a15572354682d635735f6c4236b79b0ad063685496af61b5e0d948adb780019d293ae21a3a6bbda80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100851a4257f5443fb6840ef0d65a7b1f21be7fb7d98b2ec25798ddbc9efcc1d5d54a875ed45420f1f2d40f24031fc276110230241b09ef4d09e5762ba11e428759c5f786c0ef91c117fd3e0f8a7648af0d25e0d8d016cead8c07ce614c279e175759550302047c435bb5006630640230453498b2af6d45a23b9cdb51b3c62800a79d354edbfcf664ee4db0beadff73ebfc73485c708889a689ddd55021964650023011c5c1e128d96299fb7192e711fdc8f04871cadee4d996f4a1e08db62f59da928a376a4e9b5daaf41cfcd9779db738fb0302047c435bb500673065023100e6cd82be051b4680e72bec1b8a0594ea84c5451e4c6b476276bc00cebc6ca8f8aa77df4fb013817ddaa2270cae32e27a02307f0c0601390b3b53a64f011d9e1fe342af84fdd08dcfe1ef5f1311520722a7a84040268cacdf89888e148365a3dd878e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd2cbbd77e799ef0fcf0821fff767151f3d9d906850e0c599d427262c212c81fa6a30e83d5f826c787e1f131619b0d640230229c26d6a9b270ce2fcc500ce19f3c706db3ae43f51bdeed5a58e2331e0ede2400224ef6ec9253023858c8ecbef0ec7f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306f788375011a6d66768b2cc07ee91695f771a9c02fc5951a8f78b44859fb9094033634deaf9c312a6defda5ea2d71620023100f35695b24e9662ddd129786abd5905effb6f2ec55edc5a105df72efc39db009eb8da95eba086207153df7539572a9cf10302047c435bb50067306502301e12af3108e90f1bf1e0c2c6f86ac40b3c0b5e904222f579044dce427832af2e659f416570ae26f3a23e46df6ce2522a023100b7ca7ea8d8177232e0ccd1b48b853a5f643ad827a3f1ff51ed70f632a15de3a3090bda0ae6694a829e9ba9ac66451fa70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cfbc470c772eb90886e5532b3518eeba261c2321a206b0b025dc1e54116c20b73d2e4123a7c658d785b48063c71e7bea023071a28cd496c69aadc722d73cf0646ae764b0be14944adf44cf32b31a4b5a95eb9ed57eca49851a2339675a60e202965e0302047c435bb500673065023100b794ad5e61ee1fc0794157f4853f9add98c5b3a1a5a2df21c9a22a223116d8a942e33914b9199af7246ea51235fa367802303996141e643a17cee92327617f790bcfee4e7ecdbc3d595b1499d26b7fa6fa6eb799cdf68579d4c8c45b678f52eae1b80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023016a2c8cc0faa25a3e0b724061e2744ef787f098ae23e9c1e3d463f3ffb86266cfad955a744b458fd0f031d27271c3a1d023100ec9b6145f875beae0060fe492d90aa9ef29aef78f0c0a90401138073e92e8c692bde51602f70f08e57459ab92d74a54f0302047c435bb50067306502300e9a4639eeb935158cc10829a3e9e35d2ee5da4966f5d5a505ef91691b2ae942dbdd58e344d976cfb75fb38bbc4da858023100ecbefdadbf4734380a256640ac522509e29486543875f7415d115d3845eca5512f9a063c4dd5b2149ba219a772e744f10302047c435bb500683066023100c5ee0aafb58a89189f052198ecde50e8b7b14785b23d37d41ed5af06dfec09aa075f2ea7b640577964a383eca7af6ca1023100d85ca339d8851592644d2c3409793e2a933b00b0d01dcae516dfcb39ffed4008fcaefc2b25c34cfb21bc8bfe17f9ed000302047c435bb500673065023100b2100904185e09d089f4045981e40818752f3806cd89590785762896186b1fabcac87a00c3f65006e5f3d692664fdf3d0230188032267e59054532c98c2235eb02b368d29839b10cfbc280b43783f85f54dcc1590aa0fb6407353127afb3670b175d0302047c435bb500673065023034567e7cf4fcdf1c47df4c097668131715e69a6f85c6bf8309ae171536a7db8004ef91789b047440e6f0f756fa8198d502310080c25419880639239ab235f8d8f50e1b772ea20877191ca4ab05d86b277ae8ffd09c23202f78e99db343afa867cd58fe0302047c435bb500683066023100a14e8ff9c5e6fa60cc6d7302db7ea959986fbca1ea88cb8278d5c4f53c0e15e32e502ae2dbadf6f8461144ea2ba40ec6023100865448365ce3c90ee8042decce19f28149e8736b9b1b0e3e4710b6d0fa706da7a74371a7deb3430f48fbb83b86bda4310302047c435bb500673065023100a201a3811941b5b42240b18e01f91df853cfb0a1b6a311d1511da7d19bfc13c4263674f5730479e2b26a7eb42c22d87502306234124c9e22cce5cfffc4cd201b5a430c0cf9e18871c073edf0d1271b954f38cee579377e1a5786a29637c4312c6ed30302047c435bb50067306502301edadf70d42dc38a95b98200725d39bcd868ae82cd5b8ab68df6ec7783ffba9f2d6085b042ff314e27d0621a601b5200023100879074528c6a5aa1c66932670db68ce8f85cf5922e25d14aa159470979455a2130542f127741aab4a6bcfb420fd405450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100efd849ee766e42e6e368635496b485999ba1d9fa7c315606821ce136cdc11446dfc8fd29e4db9114eb7e73671377d644023100b16623dabdae35ee39c0de180dd3ec2171dd95de04cbc4b312116078250cf642f19cf8e44a5a98b1c9722fdb80b7e8ea0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310081338dd56abfe6390b7a942f0bff0489b2fae01a7e04b051d7d64ac6536b4cebe107551373cc8409d2c2a7642388908102302da6966420e8f33ee9d6de1b30e0971cd2d9038850ccb70b25b3f9b49624612254df36099439b98daa0bd35b4ec3aec70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230682c2f981464e1b926ffe89874d40726d393b722c3da05a0e0117038dd92aa8f69ac93f1e8bfaf29ab74f9784720ad0a023100d248413061a4aa23c74e3f671f2b5c76741aeac4d9290b92535a05c5dcfa7a94a07b00181a212ae61951f7b34699f08f0302047c435bb500683066023100ae6b8737d3a1c99294733f274a39b07580e06fd777572a443d1e03d6a611b8335a35505d9597a8466aec858207fc8f29023100c686b64b2a20a453012c04c124004e56aaac9355bb0afd35d79d671fbce8b66a293e6493007bf257d1c80ceac84077390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230035dc1e7e660c367ff55d378eec0317234ef378e05fa61b00fc6b947a16ab8bd2c209046096b649980cce1927cbfa83e023015e9f4c6830da0f8638684a8904a603fb0a08e98000917310fe59a60592818dfc462e30162d41e9a244ead25e48aead40302047c435bb5006730650230378cba7954851488962f024c048238bda7a300a07897d7248b9cacaa9293173f7caae641631026ad52cbb8bdd8c99fc5023100e61027bf2bfc9cbbffa14686748fe78107d5fc9b4ede0e253889ba48a0f2112e6fcf638d6e060b9fff449ca6f8477a4f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100899b7a292f670724cfa7e06e78f2602f1a669966f0652688d263ce15d0a5127b8941efe77754c009d10e7463abc3f1e6023100c501f4945eb45e36c8e8a66369e362d43c7df4db68d47f636c59d32892b40749de3e5cfa2ab7ea4b541f27b883081e140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230707cd139c1594c8a4f04029dcd024c7a8b9ccf052148ceb98d668c49ae53768ad9cfd5228e8e508c0794e7203432526e023100c5de56acd78dbb78d36eadf063f783073b47133f601fb58b571cc77dc0443c57e10525fc2b7b846151499ad364bc9c1b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304460945ecc4dffe77e63a0b9ac13403ed4d873686807582cbf39c8b3eb6d6804b7bdd2089b0e55b4b51aa7e7b02b5a5702310087e83a9d331df63699c41e82c22d384e078b6377b55f15ae7a9db3230ec850089777b76a94a8b89955c3c3b6b4eb14430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023053344fb5164ac130587d19d6778ad84d11c9cdaf0c483243b836c4cad86a3829c76b582122119f3e3577fa1fb65b149d0230259bc4b25c4820bcdd0ae5fa593e2bdd0b48cbd3e41df75766aeef2cfbd424908d33f5a71b5d040029d1252c0e00b7620302047c435bb500673065023100939c941a5bf5a551f0121e8419e6c6b6805079f07b0e4f30bbb60c7d19af9e5fdc27b079016679dcf00caf13ec750fb602301bdebef0b8e39fd6288874cdb0115f8312f676083f075c6c888842a13e5ea75c04b572e6de0c99d13b1747face0a51c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ef8421f9067498df7c01021d61237edc47f540b49aa5770b02e35f4af55fcd1e7f8aa6e7ae89437cc20dab49c043b97a023057909874d635a5871dabff45b168e045489a8b36d48b21ce9cad30492aa73c0b12f29fa723a06bae18714f691145a90e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d185851f65fe4e3ad91f60e84f91a6cb10b4fb0d1284d075ccae934f213c3151a767122db30c9b157c3f752a028a875d02300c94032c8026f9f92e93c54972d4ef2b7af7e77e9ccad739c1df55c90236f5dc9fb4a5a0e67c7283c68cfe056f77028f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023034ee0793ae3d8a16ebc96f7b722bc9ae9f07b8459dc3447a5a7ca212d77de2097e6143ddee7bbe176109b0643e99863f023100a3297240bf58116723d447d2a69b51d7e25889931b4bc74e5cefc213b86411d4a822abb83b6787707d7bb1d757048a720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304ef3bb22be542d0800f2c987eaae9f720d441f55ea9517e0db2c4ab477319aa52d92dfce2083ee7b2161f28456fa5c85023100c5abc33320a5fc0e3fbb3d79160c63fc5ef82939c08fcf37525029a85b8205c9cbe4b9165ee8c3f1034d75419384cbe90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b28cedf28d8ca75c1d7e3e07d2eff882cc13e10fe2ee8b925230981de5f5584d3dd8c3e456bbb0a2a334e8f7ddc571ca02303cd1a6c6e619cd5129f26974671af0719df0ed0c0e7c99630e842733ee0f0b98316a8e4e68688635a9e11864e5e6f8710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f36046bc8366635eb9bd645834530052693c71792fa01ea8d7bcc413cd2f328b6b3a6a07650b5724859e4f26614be2910230437226683ad2be109f558db23ec9dacf27f9f71c802cdddfe06d938086745a3737c0b184107a692ff1d88b89cb85e5bf0302047c435bb500673065023100bc82d5064325b2216ad2b5c5741bb9e954bd00ed9bd98e4c6971c7da8ece13248dc2542238a9b8c15b2143d6c808129a02305fc0ed8571e5093aaa7c05d76f26b2aaf97ce1c008729949e7eb68a1c2a8f0ff1c7e99f6cdcde72596023459de98d9800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304dd237c8fe866eb52af53ff9e09abcb5614f4c73030655d3373ea643fd09d3bf158dc87a864639abc1373626b083cb3d023100df23f85571250ab3ed916fceba9f20e8abbb010cc8ce3791554f5376e8a34e969e93b8d8b4c665131b4991833d08aaa20302047c435bb50066306402304e0b30366bea8dd1b46e215a4a0e42fc1c90bce342a221b1c40004b1fab3b7efe9624e6ae3baa7a97ad8ce2f45835ba3023058488cb7d78d5cb32779b17cf3e18260f6900a900695b939e3518e1cbaf456472fdff65de12cd47ae65109558d8b85630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bbdc99ad04a4b62176fe2e62fcc7a252665977f57798b970096b081ba31730e650d7284246f6953838a4f00e4680dbc8023100b64a3e2a7e0edb2f7bedb1361bafe62e4a788374eccccc7483f09c93534d1cc8ad4997a2c7bbb792030e40589e01dd260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301d467970234cee7125e9049250a4e163fff4ef8fc4a4de3201264ad872f61f5c0a7f690ba587da84d1daaffa351add38023100c557b3c105dbd3114df72c1511ccc1660629439fcc47b1a8c5d03049b999c1b162b56e0ecfe23f956727ac95231677440302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303340e7fd6dccd75f180b5547581379f11f1c7160217cabecc244db243eb3af90e8156349f9fdf5b0f9d3801f6317aa6b023100834835a6bc1fc09643a2a84187991df544bf5d6ae19386de91ff25c9c787bb37dee15ac9f0d6439eb567dc61c2210a630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023075311737e170682b3116fe4b61999f750afb98b95124f24f9ea94b297b0c32852b57afd205422250e545c5e90260e36d023100a4b46b4037fa675ba880d20976a090b196442e04c8e3c7948a04ce77024b5c52cbd8d1cc40cfa54423078c8e9a1f8d630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301bf758aad61d3c674d710569141608ca7768fb6c97ab2770b57a1826b6df024b94a110ab253644dc4b4fc1991e8542a802306b7af9eec461bca0a8e69395df33df88458b93061916292ba9573ab396914c33d9a168d16138c234ae118f79cdb640a40302047c435bb50066306402300c79450c7bc670d19120b4a3a6fa06c16c397e0bb4aa9a1e9383901e111b5dff271b6f9892450ebc4dae63a6618ff24402306f0a37078ab6dc8c0ec84d5bfd74482667e24ba8e6f3409d7786b515f01b167440f965b5302bd190577e27a0e2a0d81f0302047c435bb5006730650230155581bc8e52292c937d9305771fca59bb3e8f503a55d6a59af71c32cc1e804db7e87d5ce04e27809dfe44b3363dc3710231009a66cb61c7e166a723d547d55c901660c3c43c4e8497dd1e71d3eb73b0668688231a2076ce89fcfd7d0b6e1af0d888f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307374fa30bf50ad0283d71def7b00b31292e3459f50061f5cec9891dd00b71ece6ba40bf45c4cf993d545c8fbf5d09b8e023100b8e8b79b375b9f6c40cb42a324458ca69d51099564342ee24142e59f336c86f93e2546545920765c51f4ad91a7754d890302047c435bb500663064023023f056b2c9dc31de777e55ba3da0bb4523b3a31b21bed7cf548565312a565b24f89ea3673ec77f1c68f024b8ca91a68d02303fa7676e4211aa2598cc46538d2ccfa1d8532c197d14437a55f63c7d355b42fd9ee99df6b3e9d640dc776cec297744f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300289eceaba2a127a2e4ce4213507ad7fb1c463e054eba9df464eb9fd5ffa2c3e2e2c58490d4f706cc2644b1f12088193023100b9e2dc1b5508e242aa272264c324e6b3a8097759edbe078fedbbb29795bae7c2403a2b494d4eaf7bb8805abbbcefd5560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303c12121b7bcaee5ba73f1aa419cf63c11b8a33929908879edcd18cd2c5427a0da5b86e78d9b3799719df7d168b8007d102310099b5d0a81d8b001c57cb19130d55f335ba60bc01beb91fc2451bdb1c1785597d2ed9c40d0996a25bf60309273567e61d0302047c435bb5006830660231009d962d77e908c8521fac233c168598f6b2f04d02729a8f482251cc8d26320178e29cbfa9eafee5e67f051b8813be38fe023100f30d8ef9a572c81e79233b4d4259becf33c4108deffa7c39ac9d1ac6fd9841dd032b646a3361e124ec7d0e5ee839a32c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230254075bed6643c189e9546ad24dc925e4a96c35a8cad80b0cc8b96344d061094525d1ae3c966fc7d4fd9117fc25e9e1302302a51941cd09be4f34ba3376d81326227594904f90b832fe6d86f2df9b47204bf22661c452794414952d560e062677d440302047c435bb500683066023100aeaee5bae911cecbcb4d40be290f83f550c7a46c57c4073ab9547098c37bc6531c2c9ce6b94e2d2a9dc5d531c02e8924023100ddf470fb021ef789a418d318daac9a0ff33048e48aa9ad89bf21ae226ec84bd95516f44fba07e23640e89d6a7ef348630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303f8d6b516915179b2acdb36476082f89c40a62e24b845a026382320af083453471f8858384f14d80342bbffdc7a6fd3e02307fbd1230932ddb4e1798dc1da319c653d79a3f950e4290c50ae6418bcf23b94d66c67abe6ada59cd448aa1c2ec0f57920302047c435bb5006730650231009695b87993f26fe72d1071b900b2ab7813ef962120c496e9219249b2a19ad54b91b28a644030bf1111d8ed233ac9bcd1023010c22d07e80de3bfffab9ce087da64b484dc5469f78f4a1c7aa9e2b2c667479524e8381520ee9ee20b8196452a8bc98d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023079c073bed0cf6739d3c7061f7164b97a5d9814742f0f4ed2171a99d850efd0a55de7792a554c3ec172f132e9534b875902304359c40761bc0fca65160cb67217aab0e64d63b085ddfc8a1ca1e4332bd305e7d8d77b8ba957eedf6785d01f47a2ad640302047c435bb500673065023100ca5c1e3ba50b47e4ac3ee799d2eee170e1279a42828d72d169257f4ecddab111752698a56f5dcf14ca3f0aa9271d0b0d0230721ee9ba0f9d3c9d2ed340a4b059f522f97bc6a5798d68149a639ff66a1e9fdf48d43bd1c38f70e68620303157bf54420302047c435bb50066306402301e651cf066567fa60ddbd4503d57e3e4659f68f0b66a8eec724084c34e46885d6260ad193321170ee0d5d5d56cafd892023048d29f3410fd63ed9ed0a47ee56ffa895e871511dd2cbb539ea7e2f98f9e0540f77abc19d256ec4efe6f39fc22bf18fa0302047c435bb5006730650231008e72d18bf2b067621ebf474509d2b8014adadacaa6902ab44ead11ac954a36b45bb8f52788dc7cec28a9501dd8e8e01c02301d2250b1dbef58c6e5cef41d5a716d1eba3af3a581ed4b7cf4e911ed427e755e89bdb8de69099225060b8777d544621b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100de8a47e2fdff96c1fbb447dac79d2212f6217a5d651815dc8be951dc5f8a292b349d170255d0723ef8422a28f0c00a700231009603c7f2ba9af3c212f913bf7b4933c90d0f9f69d2d5c5cd23702f37487285733c2fd3f26f46c1248c2dd2daa9cc48510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023032dbab40ee7e88677315e813fd2b2b61eea90f8d12d423dcd26445ca75b4748fd95211b4ccdc18d5880cf48b0ce847a602305263e553eca946bc211c3071134799bc7fffa1226bdb776fe9c3b3223cfbecc3a7e77ef98bd5617b5b6c5a1f4dc01ec10302047c435bb50067306502304025175923d321084034503082203376468d3e91e68c0c36210df0c9343d89dde92a079907b191f57d49641d247f4d62023100dc0d685586bf8eeafed371b4af351f3aef0f8c98cf60a3ca7222aee7f3a907538509bc93f6385a65ed3c8d7355d788e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305907952a81bdca14f291140c6eae7564935327c5cbf3d7c88b6286482b97b9a56b5ac93c466131256c4083469b7fa947023100f34b122f6ac56ded2e39ef64ffe71d0b99bf58d3f5f7d08229cfc8b5fc2d4c70f906dc7b60ac7fe52fd7a2c9c9021c5f0302047c435bb50067306502305acc9a7dd5ed15f6b5ae45b976c363a8e0595847495bd2496736b9a29aedba32db1718364eb4cb2c743fd4802ced2c330231009885f4716782971ea75b9c9ecb5e6503c1b52af5c9691ed756f3fda29123789720fd2d3d19255bf106c64c78445b97690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301d68e5b0448a71b2c4a9bdc0ae95ddb485a8f6543e038104f2f2915a8199b8937f20039c27f52ab5f7d85b04ad7766d30230180145a5fa7da382ec0267b2aaa30d62133d2785c2b4335f1ed0e7cd1e04b7a78592ca06d837e811b0cb983eadc854f20302047c435bb50067306502307a1f8eb7206d9faf42f4676855426d2a8a2145a158e47d112aed80aa4f984bcc39dc89af60df93b4e12ef2cdfdc5cf2c02310090375ea909a6e8779c19fe2b3e1b5d4208c614e7d612bf7510e38704408ccfb6a365fe187922a8ae56fdd0263fe4b1570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230151916623acf4af2288bdebce55f97a3695bb9686db897117f197214bc3cd20ae3d86b78b35b8d19b1772c4b5d6db5030230142f129e646aafc6fb33f6ca13a9638a421a1ecba2eb12013c31e808af73479f21236e887bd70ab209d6ab6574052da20302047c435bb500683066023100ac8ca63de151034aff165d9333f398ecec63197b2dbb819bf546a6b811fadab2f5287c83bc39a8bf0fbe0e3d566f5b7c023100f7d5ebe3b45d61de266e76c067c3ec659b47b1b4befda4c8f685638cbec1c3517c936be485fb0304a4e7cee97fd6b11b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b965980dffac0d90ab15b2c4ae4d186fe38da7c018bdef713c37ffe1e02cf2f10ae8081f0fd9bab8e2ccc6b317f9b4bf02302612f36b1d7b423b535957b028063c8ef772629952dd84d5dc3f71dab09895117f5139c05d9ce1ee012351d816eb8c110302047c435bb500663064023009a0cc8a9450e955e2dfc03197e516c41fb3406f78dfb6e7fe9864d95de276b0ab71c8e923e7eafb9aed2d6c31b7eac202303ec7ec44d4d86612129be99b74fa0f1a6604fe7cf738209ee4e65b4ec0a6f081fe76f933f8edd6a2e56a3763754bbcdf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023046c836eff46e57f2cc68e0778029b7376ae4326b6bc7f53f4ae8dd0ee3c6dae712780599a6c0c8adfab4cd8fe388ea1f023100cebc0793b30c2a360b80043ff10b368a5cbdc7c11caf31e6cf780b93a1bc5bb14d5ebfa7c7be52dea806b1c03a9b9d980302047c435bb500683066023100d7590dcb76931492966f0e41916911f1a5887581e8484515f76726123ca15649cbd038a93e0a3404ea22eb45af7de544023100f14bf0ad9f70ed4a8aab123c6cd4d0f4452a1879df7de3052b489df7b2aab1f131eeed069853019c137c132b8af902cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b8acd243352dec987493236ee244064b053f422a91cc532289b1d0da291e9d5ca822eecd7b7f9916a2b5e8adade03509023100c55f6dcebfd81720fa67639d63901c85ac7c0348067fe54cc80ea9913bae3ab19c124871a7049788c5e1626b912551320302047c435bb500663064023079f4a6e0a7cd970f7761ac402247dc9cd864e40bbb528c4403343a2aa88f569867bee215488dc543a0f7f1e6a15e87ea023067ec62a3d3c0754c69862790b7a887707ab83a167f2c9ec9312835ca76877a13d0ed2f125069346a5d7bd7f395ce3b350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303b12cbf0b0b4bcbed422e1a7ec464aa7e4c42cde4303ef11e61348aa142997555b22d49eea788c783286c855f1351f8f023050c1dbeffb3b6fce2fe64fe7fd29f6128c2dac5451723c809e6363cc53a84ab20d6a52c18f132c6843b3cb39da4a7abf0302047c435bb50067306502300828d35c3fdcf8325bcc6168f68badaf7dfdf40f77b3c370f8040493f8386f8f63536223fa48a5b2215b636777e1fb17023100c0f1d1cd35aefc3a9b1c64c969b44243b88206e7a499ea477ebd8b526a29836be11a3f1dd11af6d5af6f6cbaf1481c030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023075389679ac8c7d89bdd8cc720da43b84b9be0d8e09b7ddda5df5d31c2642cf53fc215a074aa36665151755bc2564b83a023100feaf3fb54287baf2152b137257e7e244f1bb4a94548fdf010497bbc4e1301807234ff2ebfbd9350acdaf7b943f92145b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305a9ab82e7115c74a11235628e276c63a8d7a49ff7eed9a98890ef9269d26cf5cb4ebae35090d25f44bbd4896980b9f4e023007005f203a76e52e618ea68ebb2329711ddc8aaca0acbb0956f66b3b20fef480c5380491230a743bb542892a498adc530302047c435bb500673065023100ad9152f3fb65fb2fcf84ae53b06d2a2229940918b4ec7cd6fef9eaa406a6c3863d1a8cf8b9e98728a577cbdda18f5e4c0230766aa2c299f5655a9ce3291fa828d18635c46cfbae359b3fab4ac37ced64b305e15a4fefee3682bd69f6f51abe8d6a300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c9e106dcbe5e6d490a4e3118f6cfbc60d62a246354960e94c93115267f41e22049bc0bfb84f795df8f0654ca14a2d84102302f0d04cf5075c286263e17e32ba6af030dd8cdc671dbd0547318f6d232211241673b35811d35fe2421a8eef8723aca980302047c435bb500673065023100ca7ce852976f298ff830cbd5e3251e9e3edf050441381c2b1d350e2f81ac79a93f2a7aa54c436aee46a48a6b2290ffd50230495536bf418cc4e9e85af16379756a77d42477b5cfc5683d7ddc59b1f7cc8b8534fe97539ebdcbee72758d40cef756720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f152707fd68497e3edeb59e8cd2ff5889ff2b0bc1ada4505b7027d28b4df6f813059b453cd1262c52ea4f32d09bd79a602304254bfcf39adaba4f17f5ddb1cade321d3229d885f721e14fd6d9f33975173587417556addf21d0cde30f2485f3f697f0302047c435bb500673065023100b0f03d22b0cb9501be694723dd4cad95b0692ccb6665cc723a615fde98cbf2bbfcf63cbcbfebbb0da45a5b037451094802304aa18dbd857d1b04c5253a217398d42e4c647a89b9300a1f60c781d574d2b0f3fe258541e7d20ea49cd6310258bf80980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b3cbe2815febf1979ad833e96f4d91527058b6fcb3cd1b133ce64f8e8e3b9c44d45293598191518314872d588f0448fe023100ebb11b4ba40400ede54fe166b95fce1035e9619e33e67b2fb726dd006f556a32022f474acf0d1fa0c7aa77f96a36b4220302047c435bb500673065023100e6e9e521b1c71596608c8ddb76fcd7b1a1a3a61f8d14de028160fa891c4dc44e9332fbecfddebcde065abbe6b1720b320230386a125b817761b1f0cc0b2b6a6a9bafb3be959a53d137f893834fc852deb554c9f2cd2117c7f3dee09c2a353fcce4aa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302b5f7e2cf349cbce08221217fad9022c3cca1500d3ab07fe3466a9174a489c4aaaeddaf9a1ab1a2fca1c9d3b8aee60e40231009b27de076a381937a0aa4eaa5e7d0e71b2e152221f847c38ff0d7c4baf84c79899b08308700e1ac149ee16c2b9ba205e0302047c435bb500673065023070f5c7a60c6fb13e775807fd65ed2bb39744adf227c05b0e00e6e95bdb0b4c86fa0e86dcd4bed6717f3d99640e8b3c90023100c9b74ec289680f791c1fef63a4b8eec0705681df758bcbd861efc7db2e2a0846c2d1da573c529b6e617b66b324b618cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230093498f7c5001b2f0771aaf1c3fbfeef8cacd39b4fc920c93f960379496018bd593f91e4654eb7d5fde4d6a5599c0fa2023100a868304733d2b29c4d80610d38642973eaa62371d5b46a0920edf10089d4bf5a40a0af33058e4a7b591cc6991e9f29380302047c435bb500673065023100b526ed06d80c9c8f15c0d5392606bc70e50ddd801de835c56e2c7a6df0d4bde33890904c32ff57b0a63f99f244a853bc023063cbb2669ba99af56621f79a6cd5ab83ff97d12323ada3035dc4dd9a17c20575a8fa7471c76c6fa98190a190285623580302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023059b8971ac0e887982e982b61ad490c9ea00a7836c92e9668c8942c482f527c4a73b5798fb8ab730bc1dd3bac16b2e0f5023100c5d787e74d58f3b0db8398e402dd1fe99515e99b89ea487fadbd403c17df7ce20d1fb4e74a3e9af32a7938126bc532d30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640231009cc12371489e4387e6e7c32e4c28699a5f6d5d942241af2461b1f03aa4b64e6a2470c647e47164d0c6f7cb8535c242f3022f70e27e8570cf245849d80b56b22b5caba32b6720615f3e03432924e56b165e337b1960973cd29282581b5fb4e3bd0f0302047c435bb5006730650231009cd883b79cb80772f286a0d42a231ea5a09a3836387fa36a12defb342cb5f4b2b6bfadac28e5385b318091e0f21e1e29023052cfedd10c255c7d78fb831605135f0b23468151c2b389e4756d243d41fce68007d6962ac0a47e38c69d375d49d6819c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d6276334570d70b4327d2ef44a7a446a5bcd1b341a3743146bbc58b6788ea68cb28afb9521ee7b1146d50917fecc0d550230488aaf34de1ba2d5ea80d080f411f89b3c4834a7a47760146d42958eccfba2bc0e546f82f4ddae81382eb3c172cbb4ab0302047c435bb5006830660231009f43e6a60b70b0cdd97c258497a0f00774ea1cabc50163e5e1755d6ad43d7b0530199b882502803310355aec24a81396023100bb290673df117aad46eba164eb561f45bf87dbb5ec0d39855ecc8fbabd3399d7e959a7c30add1bf704b4d2800b378c610302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100af92f00c60a91d3e37b06ac1c045d6b923e4d89e800f80052832db816b38bef575c7fed5b034c56659df646dd6d25bf202307fe8dd593a2c9b399219d4582d328c1e855d0dd15525832831de89a9fddadea2dd8d2ac13e22de5ecf0929199fd2246a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d0b5d9449e25164985984a2ddfe6b911ff339ede902df28072c6db92ffd544e5aece696eea5cbceab8c7c2f42a32881e0230666ba3237a7ea9fe94c49c6ee157aa658ba00e6d7f74fa157dbab583a91ccb3e1debcef269beb8203dfabb481c72c5350302047c435bb50067306502300d434e96f937b2b8e1dddc300dfc6f7581cb85c53ac1174498e17b696fd8b3c08187e870771a34ce5070cc8f08fdf301023100aa3f7ed7586e6de6bec14c96e2c0c1e2d7ea1530842a97672a9010d8e291f1e059d0349b70b2d82deb8dea8ecf9728cc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023028cbb73e4e1d431274b14c71aba7469a813c142006ff985a08b3c042adb5f6653d4b7b0b8a5b106161e9b7c7bc16e8d5023100f16172b12dcb7b6f0ed4c66e7ecd4ffa16ae11dfa1c8cc676bf7d3878066d8cd3d5b027ddba582480e3f0d1dd739621a0302047c435bb500673065023100ac3e4020e67b64f7bccbf497fe07384e2eb7efed40a6002fe36cee3ee2baea47309702a100453446b4d8dcab964e903e0230785f16e33f69e634d57a23c0328127100aa5815cd01f83e3149442ddb4a249f1f6dd3a9ee623e17a4718a731702929950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307c66826014105197e556215959296fde0d91045dd5ac108fc8c584c07d9a7623792d9aa88e3cc6781630bc8b1745ad1102302c747eedd97a504162a781f9dec34aa68410edd90fd8ed071a1647869fc2973a7a80a44166c70ad3bba283642cf414e80302047c435bb5006830660231009bf9218016113b6ea402b708ab263663b65db970a760a893e126506a71a9bfee047b9028128305135622b15e22d27d25023100fcf06fae8297d3762b39729b16c6294dac0f8b116fc1054fd75ee3680732e7131b87b0790543188165c8689fa4b7b8b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023073baf0d794a6175bf5e9c23f5784388f6740b9784febb93315ca82b34d9756b1a31990c1cf3180daf29db088f344dbcc023015c4fc1fc89f668828c26ae5abfe99405c834dc94ff35129beda18f53dd17b071c9b93a0df63f2b54bfedcb4a7c523160302047c435bb500683066023100fea0f415bd6ff0952558932b049f8ca0a3d00be98cfbfcc454edb3db77674ef7350c75b5a7291bddeb13823263a96de8023100ea25e485bf67ab2bf21c9d031414e4e97677faac7bf10b6fca836134e4e1a081237c78e828a4cab0a2fd43a24b29a6d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fd7359b568a9495f7794301b4eebfe720bf68c8574d3ee7a81c53488d1873b665f6a4c56c2f6cb6ff37a61f5fe38c13902301075a892b6030c48c5f928ad244ac86a616da60d2bb59c3efc413aeaf3b32b2ac2472c861a036370c26bb4185c9cf1940302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230091456d8469c62ee8611c78444eb1a948954c2e1a671d4061a4892af9e60002a14765078194730dafa98d3cf5e48a23e02310092ec286669d748898f3597248dc205d18ce5adb589d558a79940e993cf615b65a6102a41bfabad9ac04e80682d96c68d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008e13c21c3b01a6414accd51100fdcb5d7ef7c2a9e8f4cfecbedb938b302a1a60c153e9786a4846c31239e33f21757175023007afffd056e9fd657b2c7c171d391c5647f46d8a21918e6656d62ff1f6dd44f51aa8660a6c0fe4cd73e961601a678a410302047c435bb500673065023100bbccdec84f3882b434ec9dc34b889f93e7f41d53d678fe8363cae05e49873c5be4da8629a51cbb52b1771959522fe24b02300df561659fc1c3dd89574d65b94e286d6abdd4e68282acc856de1e1a349a0896a90e141554d246a77e48e7d1e63710320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302d5e004da7181550f434f1ce1d8328f5eb8a44deda207d551e89bd36438e52f215ae61b8736db94a24123dcaf6da03ea023100e4b1b7768c1ff56020ebf8984db6af798495dfd3eb7bedeffb89353b6496cf9869c5c44482e67dce214d332fba865ae40302047c435bb500663064023009a9a4048acf20c816bf6a152cb129f2cc05f79991a4fba37c1eee616a878912b0a087b1129e18cd8b470efb7de1c03a023073cb4e6d302e1b1595c05d434e7a9dd6df5b7c6ca3a8e010f41e203578e674479ccdee3da8f38137e56b0d98f9c111ee0302047c435bb50066306402304d0c235ddc868cbaaa4704bbdb5aa4f2042ab601bba8e9fc66f9caf077c7c31389f4927e0d01a17139a306ab20ec5c600230349f445f664333c9a1d3b68a2db5dd2f7f99ea4336a77b045ec059c44584e7a09c18a5331151eed6b9d054f55527b5990302047c435bb500683066023100ed50949221ab9c3c407277d3600c927d12ad5cb1b615dc9b16839d8c69bdf3b5919d54fbab33bc365ffe7b899ae5e402023100abb333095cd7344330a39ceca092d54bc0a7b0a7add33ffa703b11bd32513eee990720db55726181779dd8eee85760460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dc760ecc818eddfff6186c8c8411a6e0d923aa550b933427c2315f0378bf3565e9e0f307eef8deae64f36fcab691741c0230173499c96c3f4b8f65e217fee3b11b0d0e5c6d8215a0b437339ddcc95b2483aed3c6f442a530283e70167f8c9d957b360302047c435bb500673065023100a141c22c8275f793802e365796c97268003f92a8943d4dde6d797605e17378eaa4e7b8a1f8a6795a8b54704d9b9b39ba023006955165716fae9468a5e88b85cd8ab1071e436eb2e3f2c7dfbe88aade13ad2faa80abff223da235db20c1f8a9ce3e590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100814ce7fe48174aa0e59c2fcbf7fbe8618ad4bee485d94f20dd908d34a29c42f2cc99dfc386ed39cffc258f9c2335a1b0023100d345e7bbb8a4fdb02e8ea6e84d0a09537d12e77398eae31a175b8a9c02f26c4298fcc7116e2f1c59cff5c7ffabd49f6e0302047c435bb5006730650231008bcc160ee77c60783f144f723689686c8b5a86fc6786ab1bde2165cdea4c4542861958d654aa5b35756dbdface44094d0230293b2a85db55933769b9ba3f89331c67caf15d163271bf11d80012debd05bd674a665ce221530c4ccdb81babad11b9920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e5ab8c1a27f9de3935b705ea87896023dd1d7b18e0ae3299344aa5f7960c2e0971859e70344ac0cc8a28f92848091ff40230059c7ddf5e79a5a3ed961a9eb6521314984a4a61380ff617e6fa9b7cb7b75e4bf79be170f25f65ab6114c3d07d09e13c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307559901ca15cae69f2f16b7a6a23b49a8d5d526124c64eaadc8ce46f3fef9d145cffed26b340ec308fb50245c5e1df81023100a53806904df52b18f7882e4be09e7085f8618f9efdadb16a09abebb445ba4f47c69ba4c15df63c016caf6253d6fb0f880302047c435bb50067306502305abcef01d3c3700e332bd5489ec98fb5724d95808983ba5d174cb79b2eb204ec31a105eff372e300d7376e409b67c782023100c5e4dd5a75dffef9727c11f0cd279e5f533dbfb90cded57d55f32f90ddc7370d85ce32487a4ced212fc1132a6d8e198d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023005b7fc82254e9a23b0e08ac4f40f0041c0dfaba122e0c3401844ee7e4fa7145e6f7f7d9129ccb12399f47f3b2a4012500230212bbf383291c5c25ecb13c95b758853ac720150f5e94d3b0e55bff28f10254d3b2bcca9a1e2672189b41c817aa65bbb0302047c435bb500683066023100b7aa392280f183300eef9aa5eb862d12e2f46a6a21be91970f18fc01ca236b8ff4b1d9620f4098096e69368133b8b315023100cc0b8bcabda90cf2767229581d28761003fe9a410260389ef4210b449f25aeaed8f4fa164f1df196e77838184bbf865d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009aae65ad326431e0467a832cb45df9fd8c4ee4a85f322288026fc9a838c0a2cc5d1f7f1baf24abe9653ff61a8285d6960231008d8ca19806424f3cba4f5fbeada6f1a29e627949c53566b321a5133940c1b3424910c762527a6f4d9595b1c57c25e38e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d38e0d8e05c2049609c57a52d567c02a40b7baaad71b436bc7ff1ed92e9546edb5c7eef670f1b6438f8cdccaaf89276f023022a9f40e00679180e00c0d8be528acbcece445de9f36728080d9ed5fae7867ebe5378ea4b049945e245759882ca537d00302047c435bb500683066023100d26bea8e223b4be680073318d05b8dbb60ea8ea481e29007e8f81a6aa74bc0dff07ce0f7780942b35977042898de47f0023100cc322959b446667aaae40c4ef56e5a0dad1a39ea756af08bc4aece8dea8132f0b41cdb8ead0d84e0e9aa63c53bd92a9c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023028405c616af12f862bbb29bd90cf36128176c25793e5437dc61a658ba1194997c91f3c477dc52d49cd9fe89f2c0c2c350230387f32ed18077794e946f20ed0cbb9b7aa118f4e9050bb1bf4513376b2359b88f94f2243d5dd64749949c07e1003312f0302047c435bb500653063022f41603b21c094de13d03ab1ae3805a1897a212713a241b36739cf6604711aa19958da591b3ee6c99a21f600d1b5f6f3023035b910dbc827299b6c3c06eac073d9ec348cd86a24a8246f2a58870c6db9521ab3fa514737e82dd4a43c609d2dbe0d340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb3df05d3b8018974931f93b6ab8440a322751ba4ad14390917278faa2c80dc28e6f2d190d33fcee4862d6ecdce51df7023100e620bd3f399a0b9231fc545f90a13bdf5a77220b971de7062e141f03c9ab00f083c61fbcb6ceba873b3161e18739aa690302047c435bb5006730650231008921040073745e7e85653d372cdcf19c457bb190b9fa7a4af07b006baf9dc8ca3cee0c35177c4706b7c23ec38b9c52a5023045cb3197253c50394172fac48d402f8ed8d96f5a842c44a9dbca37b273081b1387d56b46fc76b5a4309d695ca66bd22c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310097b7bfb83fbdb9e9d1f09b1c5c0670551437d7b7394b62013469b30a295fb236f54600b777a309ba0af186314a3203bf023100dc2e0825001085e8f688e1ddf4b8ce4ac2a97f5b302426517cba7d4fa1a3f014be97bf8a2b1108c52456d3f0480369070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fee81c56414d5d683b40cb8ff56fb433b9c07fc004fbb7ccb0c4a8d91744beed43705cdeb68e89104a305191d24876df023100a5f5cf3624c9594672d985740245bfc9c2a708999cfa586d1a0a5d1530f5cf37feff1a974401e42db24ba85ab1bd27a00302047c435bb50067306502306079e7d9be198e8768814d2c379d85c2054d513b00f291aa85f62db447b093861c45c356aa3a7291161f1499fd0ba22f023100eb1934b118a8f2126c4b9d2ddeab3b5c90b215f09b43fcee319035c122ca8fd9ac59598dd9352cda6ec6a0f4421ef1110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023059b4c04d8d0b1455e792c1b160c75f14c1fa95ca00ca4066ee003b15345d0d39f6418c5f258977c171f9e657ffac3710023100afab3206144604e4a7140b43b8bf4fea67d5e3804497efee3b99cd7701c6f195cdcb6221c14be56c2a9f2d764dfffed40302047c435bb50067306502304ed7224ab6b2ec669ce275a686519ccd1ba679817b53932f70825cf26c3a464d108f1e5c7a49a653cd1e39f600fbed0e023100ced3bb9b5c5a8ed7d8749198422aac25aa36975492f517ffa1dc1e4f228a4553e85285d5406fb76e775410e4aa6af8850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305636f6eb5493bbfac89177a667a174f1d242adeb3e72eda200ab5373321525d17eeae06822ef44115d2fa357c462b733023100a1682570ebab4db80df0839aa79433ac5abd3fd354edd0099690af54c617ba46f568f43217e3d54bd172e7b3515b9a100302047c435bb50066306402301968a3ae15a44c6d2bb827c0d3d69b767555e67be7c643c4fa719469b4d9aeb1695df9526f8a7299ce1e39ab1e77acd402306b611064bd5514aa4ef6f62cea3c70b485af60f5c0d2c9e5d2b45f3ab77db999252b758d4c1c095118ca78ddbbbf20800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305e2987c95b47f393e6038fe4ba72dddc31795988c9521cf717113d57c8af01a8a2aebcbf6c623a2b9f90e810f37af560023100ced59c4700acfb92880762310baaf0c032c0720d06b19ac84dd0021c83fff5438489690116d6fda36062aa91704255370302047c435bb50066306402307d58697699dec4429dbd1448a78130374d2a8d4c047c99f3ea91f603bcfcfe418499086bda25fcaa704b68ea696f239102307887a625e84646dd8f91fd7850adc0b471f714f34422591e817a1e173e85e459d000df5daf4da7e6783f68c03b189dd90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023077ed0f46a7f59b946438a67bef66c9184e92feabaef77b7469813eaf6fbb696671b2a1bc2a9ce54223fb3df4eda3ec09023100c172f9851eb283e4fe83f9ef72148ce8282d5e0a0c5b3ff76967ef77cbb2915842fa3e47c697b3d96a7b221c8e3550980302047c435bb5006730650231008b6560bf8a7c4c2df0d1567644b42f82300378a4fc835cb619fc5ea6cd4698e84069cb418e47f339224e3a94079de2f5023015db5e2bfdb2abb6d254f4cfccb12406d84d5a6c9d9191d46d6f4aaf1eb2ebea4d03f2c87fc8710701f2239a1c1d0ad80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100db4e08a3c56c04b848cf2d775ce748a8d6b10f373042032c0781c635d0000183853f747296bc38fe390a995274a51906023100bfed3bffd1a45cb0a690d0c210efac1ec98bed1889e9f025806a0c4146befdf36c911518e840a4c2c3bb2b11986e58d60302047c435bb500673065023000acbaa0a08099c51f69c0e0a892f4b6c42de3cb3dd91aa676b0d9744df6408be57a784daa89dae2667b6f931350452e0231009741c4285aae4724f5b4ae65c567ad041a35f2ec623f9d2492f54191aabc3abc9f5cd84dfbc205cf63a391e2d36a87ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302d6413b89dea587b43ea88315dfc20b8efcb5a2de00e8cea7fdbf8aa62bdd7b3a8fd9c9559708c55b83fc06f2f2ab98d02310086af56761573253d2ca8e6fe8a7b324893f163504dc4fe26388532719cb5f2496d66ca8923bed548d1139b9f14a68b4d0302047c435bb500673065023100f4c399a25b31e987aa40874821a06494fb96a80d30f2aff9964e27c746ee21257eaa5c04c326dc032933d6bbbe17b848023023eca68b40cb09e7a82b74b1d0dd234fd80f53fe28d88626f0ad0c59aa4a61c45043ff15ac5da51d7b465cd427b6e38d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e4e5bce716396ae8238ab4567239fb77a0fddd1d0d587a13aab7d060b995842daf7da5fff1370ac0e65ada5c45ffa56c023100935dc2d6c072d767f75f856e343f1fad0c1d280556ef773343ae762e63c5d005864052debf3032732300db07833dc1070302047c435bb50066306402307881c9c110899d499087bab29dd498e36e9ddaad4e9f403a512e8e2698c78c4945ae0c6dd7b2d97178680458d38b51730230440339c9d5aabd7d347da7e6eda4957f95132e12271eb53070cf5ecd05a7434700457a6e807d2325ef3c8056867cad2f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100849a0b21426445fd569616c1f013c760422e7abbf0014d538dddc2b37fb55a339ada076ea6b3de83c5b8d08394e05ace02304f34d7f8dc198f203f1a18e1491c4c0a585d12402ef20bbd13e06e5f6b8909de23948be9d99abddc77c1c847abf2e2450302047c435bb50066306402306bb86a3378b284aede4b497eb093ea09d5dd44c6d254fcca0ac54ad0ad4b020476cc0eb79deb632e3f6327411125a70b0230445125972ae64df1534f96f4dfdc2dc371743984f54e3e0450c65b9eb305a8951836d1240c622c23086570e9b6b96cba0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f5f98df79b2336d0fc83d460c04a07678d69213652f34da0903e5475b772e57bd0dce8d09c526846c9aab8f7a4f9eab102303ecd6158518384de56333ebb99e634b0c7bf120c6fbb0b79c62295c40b4e8933932e214e0b555f1fbfe47694ba7038870302047c435bb500673065023100cd05d17ae3df905df1a92d48149e63e406fc20b5b3b029aea4cd3d7c4a0fe902a23a88ffe5337aca3a4c3403dfa05ca302305b57815272342768355fb1be8a7da769c951e6f45e9014a525580321d9efc090e292e6b2b7e2f5f08c1ae773fb7560710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b30f2fef9250812d67d08fb244c1159c525f154fc607c489e3ada8a97c74f5a8fa72045d451e6bdf2140ce80535475ac023054592810700d52eb86b6822dd2829b23952637583ddb170ba844124af74c3cae0f20dc2d624f467e3d8457a7ee67b0d90302047c435bb500673065023075690553a5736c877c124c056eae4350bd4ecdaf0964781a316d5259637f028914d29daffddf72441c283b0026a63dff02310097f47a0b1ce42f73095f9c94e6e1de33c2974467e1a298ffe75865b28aa642dcbb966a338379b31e49567f905d5e67760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023012efad8fac4c7b639a60e18e77207d0468debf2922f3442a34000477fe0f914f9e03642836c9801d784e6efc2c27dc23023010b376f66dc372bdbe8384222bac7c3f27254654c408213144454f23bfaecb4ee349c20f43711f7f86289d5079edc6400302047c435bb500683066023100966cb714ac95c9e50358fb17cbc0ea69b147d1c1cacc9129716bfa084dcdf2acab2c86197caa5721b5f7def63a36269c023100bfd9fdd9e0fe639097ab8c57dc75f27403641bcc1038132b1d7097027359d0036dd961973172e2e94e0fad777c999a3b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230273b7e620c70c2cf34298b4fd298b9756770f39cd164ecc4acf766b120d2bb450e6bc296cb7b3ce55ff4681837d1001b023100e86244706a744fdc76866e247588bc56fee626000a61f4c8605ee442cb1c910687037aa6d288432d9f9e4ad2cf8d88080302047c435bb500683066023100a58cb75dec2b2e3055ffb39b91fd15a744c4ffb20b048f391fa297715e661096a1069564f4ffa09320db997e4f941f3a023100dd26a1116537d17491ac7819566d558cc323bbc8277e8212448e574f3a752af1e2e4340579e0ea6380b0f75f37d235880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009925a92d84cbbf521d5a7bdcc50aa3e247e3fd0c57b3f14aac66896dd031ee9f714748561e81fd3a3d15d4bec44c328102306d8b7d4320cae992787511793f486a14c71c337aed768234a2f557c9698d1c8fbe8ee6ab7fb0fb80073e8855dba8bc880302047c435bb5006830660231008ec8b2ada597aca8d793d0a1fb82054ba7559092904b6b6b5b81ea81dd97c6465e57c14347516126555734d91a041cfa023100e1bdb05f5cf5b5553428b9cd9f9b36b492cfee82fcfff5c0a546635e53f8fc1f26bcf47e4492635191fab2bad63d3fbb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023008ac81a2d17e85df69c2d892a17e921ccab454c7b7f75b791053fa5f392f3c2b595c4a42e31dc771b2cef0e74003b7540230168bed377f7b35e77cca04e6832a21c0fbdd50bf45bd09c547dea58421f8014f66e30d4e1e133013154450c8b58032060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023039ee57b25b1ffb5411eefc288c1019e6ff9d98ed57f9e9afab6e6be2c959ef7921617f1aa738839ca234c29ed56eaf2f02300adbafa42db4e650bda7218a849788085574b6c2673d08ac9a6d935507ad8de0d03073401fb442b3c7181c9ef8c5e07f0302047c435bb500683066023100c49d7b952382801ed6e45971b03bb1bd0586accbdeb1f475abd64db8252ee1c9fa7fa391ad44342e408e17efdbd32fa90231009a9937accb600d00e2beea26fe71e178309d1227074e1c9d2fc75794d951e16106b7e067e8f1a7f3a65963778754af850302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230410a51c345d064ee7612b5e0b0671e77c8d7b4fdd716643b0abfa42f3499fbc9bf30b16f14614f201cf97154844d1ef9023100ed794807bc2f40aca9d7fdd66b1681b20b90ac453893a1c13175132c73d1f3fa5928e442ef4735bf7468fba17581073f0302047c435bb500673065023100d1808afa7a895cca754b79c652f147544855072797114adb70c148c3adeac875163b93b2c777c544dbf5350e3e2499a302307f14c1b89b412e1fd860e1d8f1af7fd9fb9fd7167a72e44de888fc98bb4cf51db2a81f4e116966405f5976e2c39a5a7a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023042320f835a9829b4826b74b7d4b75e67240838afc875c0cac90804718f5e328189516ce705b2029a751f0626b44d5363023100bf9fa6282811af5b11541980f77706deccbeb484475fb1270ed7705e2a9a5360683020d9f5492723045f63defc68eb480302047c435bb500673065023009d9d0127e2776bebd69c3abba4b762c9759bcb3a23ee323d7703bc81ca664b5dae10b6f91c9976bfd8a5d09dbf987d0023100f3772a92f283df02bc8ac76ce290431f407f756dc2450af887abbbc9a6491a238d518a135298e2a709b88fbfccc1cb4e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230279fe9a4eff7030a0697ce2ce843d78d676fca3ad8c85580f4186ece222ec259f0975294129756f80ab924623ac67d4f023100f06550c7ec53f70bd901db9f9438bbee4b0d9dec625d9ad2140763640d342a3f40894d7b5891fbeec0446a18459279240302047c435bb500673065023100c41403651f36ec128352eafc4fea56ce01de9f9aab7b2f52c7277c943eb6c7154f061460ce4b377440d66393dc6af8bb02306048fadd2a45a3a8710755fca131d66023be184516ac71f05c07be197aca9673246927e3d95180f4628bad3fb18328530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306c2c6c913c281ac6bfce0a051f62705bda87b40bf52692bfc2cbc565905a011f6a78b9c4b62c0de0040382c07cbc72ec023056b81015aedb49c9a272d6898ba97209cda7a627ece8dde48c007cdec193dc60439fba2779d9e251468db255442c1b6a0302047c435bb500673065023100fea5fc73a277a553e01d1bd9e7088213b073b3b9262ffe70043e88b299a6ed272d0a9a5cc63b22ffaf5b377e8eb15d6c02301f6514f9ddb4ba555da4a67fb783a58b5d50c9da5f1f4d0746268335aa1a88a48caf95eb4103b44640c75d203a8c08330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ab719da035a179a8be9fd042f82b2551f16e1d085dc4f0538da96273b7763c478f0e740c528ac63106f89e59506e80e4023100c393db44786ef5015fd98e4c31f91c23d8d12d36faded0fd452f76323862d603db710c8856a517fc03e766d024940fc30302047c435bb500673065023100a38f2cc0c07a5824bc706ab27972f0f767e91f33bee4986bae1f6de809af9948131f24c3b5e002ef9d18d9ac3febc19e023048fca7249d82d68d40d0599e0d93f12f6ed980cd9b2542cffbba6d279db6974ea6addad4bfe4882cc608687aef240b980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230423a2b3eaefc3524404d56fe509946fbdf64fda54362d894477acb62bffa1f1999c5fa35bebf301c98a630b7bf8c3401023100d4a3746461c5d063a2f31ae760a8a6952ce7ca5e97a5e56f50ed9f6606f4b10ca2a54eb768bdfb33f6799e43cf6412a70302047c435bb500673065023049ea47860934c697ebdf374c8e7593fa27eea25cf6ee8eab9f11c3d5ab5737cc98c6cb5de2b133327c5e078d357dd15b023100d6f1d418ef3a5b3e9872abf886fa7308ac633180788b392ede97f154c13e4ab461b8f7894dd8408b479b843c28db32c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b6564c31076de5c64c6dd080783a42c04ab130ac79a15b571642d38ef0cdd01aec2931d4f9c53eabb84b3c7cdc1af96d023019be4863ad1cc07babb0ca7519c482e854f5189058bae1710f0756d85a20565fc71b6abd36e624ae937a190755b913410302047c435bb5006730650230693b9328de052b848b57c297134522967ba19302c675131c2010f184ef8932331b89fa4649a5d99fe7f795b51f8e752d023100806e92bb4bfaf599046f8e53df93111bd32ada27536e2ebc7e2f35a5e3d93be1fa536cd8a34c2cef8bff8936ceb77b0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230127b5e6b2c15b435d88aa18dbecb7d0e6de813b9052e50767386536c2847a82ed34c231ef5ce2178bfefbfac308bbd41023023393219f5d2af4a8504e1c73af18f7f7c093630feae99ef3dd44ed5ac90b476155b2415f43c827a0a9f51f8ca8f67ee0302047c435bb500663064023046e93ea08ccafc13c69150723dde82b5f9c51816737c374376510099e93e3d472ad36704f7852e95c3ff29695532221002300a895ab8cc89f42e46e1b49ef9787a74374b3806c0d14f63e3b830d7358512e39e5214d4512af8a4c996bb13681a1bef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100992925b99eb9edcb3913290d4f642c0e78b8120b8ef37980e5c64390936b718a2c3bfc77d3e9d4729092414311ad62d1023100cd24e11499851a1521cf1820e843d4c0a58de93fe3a9bafc5d711bc835f0c284f43356c520b7c15ac587c03ba700b27f0302047c435bb500673065023100c49f8a3bd893a040a918d450e0f3134c43f92c0f276eb1c57bc4fc530147f3088509a81ced9ff3f06d25adc1692289a40230628961122d97eea4ee81f40d693187e0eaa8c246d837352e833a6e831d02f5e04369056c77b6825b3daec187ac6a92640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c5d1c5db5e04e954d55c94d149f2d442451ce83d88ebd2c1706221ad974f6f86d4462e05515d4706bcdfa5395ed3d54402307472ffe922c8d3236ee42c6a242672c1ae06301b564b8b9ec9a771ddb81924bc1af0667fea224f7c68eda6be7288edf40302047c435bb500673065023100f2fbf00d0ed6b16d29b5cb5883b719b93d7c7700dc7460ae179b55bee67984c9bb34f78a988bf185cba9062f1308ba37023045005506c63adcc0f054bb7888dd94f537f72ac0946898d907e3536db805248475cbcb0a74966c86059db35ccf577e030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307fdb08572247fbcbb3c8836655d30b55ead067df7ad46c4d7827e51662e2bb4e39a31c8b1686a0b0ee3b2ea96896b1b2023056bf069ef19fffa60fbb583c054a225b32f45b60e09997838fd2b69552e7591f881fe6db7f3fabf0146a8efa30ae744c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c71d40cbdf76baeeecb3ce8c4d026db557b8cf0f4c05d8ddaebfa12ccb6514ca3629e6bc3a081be098a926d8747c581b023056eb5b57573649086ca4622d9a98cb8dd1e63656a426b9c3c496d3c596fb4aa8a83a2970efae60062da3409329d7c6410302047c435bb50066306402300627d53c8aca6e8db6de6edbf7846f609a6477f5eee261263444d74a48e3408f44e7885c5766aa828dfb3c6fe275eecd0230061b85df95d31fb79c27f753db8a79d07b9314be8f447231f6ba79ef2b39752d3540a33fb52c8f048ba8235b92fa6d460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e29051737eeb7008fcb16a7d5388aed0ed63b16964919238f9be5a21e52a5f4b145134c62e631cdcba73f5f08a7c6b180230747c587b4975203629252a280e151377f367f709d38439daea5547f2cdc8562fda03372ab1ed735bc9708e15fa0b1ae70302047c435bb5006730650230481e09dfc803b575e0965e6b2543cba9b8505a12da4e5c7da0db00ef50ae6a54f0ea526beceecf967bf6c95f175b82e4023100d19098366c7f132c7b17391db994aa8b588397ae4247c4bb22fb66dba10dfd58fba0f11e89a284e273591dd9ce7d25a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310099a3d9399c9afc6e85888445a2e9f36a65de47aca29260ee06e02001bef33df3464d2fda308d982a8c4e68d8cba62178023100bd9ac35cea080cd65a2de5eb563fb08a1aad0d0beaedb0817faf1e253eaa979755b83b0071dd67a1d0b038a92e4b94070302047c435bb500673065023100963c83aef3f531ef6d7bf901b14dde33bea3d7711010fd96bf4aeb8d72ee73e4209102cbfdbbd4201cad9c73467aa0310230551369a71d6889e14a4a460fe688464445a63c5bf814b1f79857a1b3ae482e507bcca93f2dc6edbca6d60b61f5c1e55c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305194307a49344b41b7c8b52c107c65c9a3af8326c91f8aca29afce703a1154fdce44663bff451318f886d29e79c70fe4023100b92518f67c31a1722cf11cd112b49392d3a3961ec2f78c505be35135633444c2d886fc389d692a160f824747c25cb71c0302047c435bb50067306502307449be94926496ddb274773394447bbf96cae9b9f60e7b2d0985febfea69724e71ef5a714404b74ba5dc21e9752e5ab5023100fa6ed68830c0f0afa32ec050d09411e2293feb87efce3199ccdb086b9e6905743483e14c46a62f94f7aed8c560c30cf70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023050157d25c8c8815dcbedb580b87b8f9b1a1db7f58c69babff58e2bf2870e980718a82df687eb51c44b1aee0ac2992eae023100821eeb4e5ceebec8f7249281eebc082f07953a77485a08cd8c2f6aa9c987c3e137d696622ae06bf0989496fdca86b8650302047c435bb500683066023100ed45e3ac71066d6f4a6d72e0304c7e33726197d1ba18053180820f7abad69f4116f6fdcb1082ba30dd91b8eaa463d6d0023100a74b24e8c253044136c7f84a032a2d1f157b8a63617d7d3e8a3a394e0d087c29a0c932e3c0b37b8f47f7c62508d8a6a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303024e0f84cdd7f4696f639c2fc07f57314348b3c50015518f80aeffa496dc60080deb9b26474b8ced09398031c9477c2023100bec4feea28c439d34be08346cd4bb5398f63118b8ccefaaf3b87c65f2f64089d22c8430db2e46e9ee68282946c7672e80302047c435bb500683066023100cf76594b1694cf866078c512159c10a04ab7d5bf5fa37b89e0fe183e81e41bf11f316b84923f3022eda0e5208c82ef8c02310093147741bec05aa8871c2f041305e2f4d1d61ad3193c07850bc536b2d03bd543900393087813e6d90d8af520a234991e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303471a373257d94b7eb8f7e5dada1032ff83c0015fc49381de2386310036e0f672c62a53b80e62d82a171a5fe478bc50f0230060202d0576de8999d598e5f8316b522317e208c5ff11f7010e69bc6124ecb446ab666650c2f432660c5cceb7e1304050302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230337d60552fcacedb5a0b5d965d393906b53eba2b53455192f04bcfcb684b1731f7481363d5d7048bcb6133b74273d8a3023100d138f75184894ee84c98ff7b6369645dff437cb4d1103fbfb12826c6e594e16041e85d8192be2a41c4cfe3afdc50a3640302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008be199fa92709da64b49ed07abb6ce0ff649f756343896168255f5cbf262c6d01bab423612b433c897f0974bae22f577023001eaaa65980c301d68c376f0bcbe28e1a12cbc887bda61907ef5261fdc1541c390c888cea8244a20c989dc9cbe5647810302047c435bb500673065023100c1cc4b5256ba555c81b12ad5d65e5ee694ca7f9dfdc401a16b26184988510c95945fe7aa573233d81ad0de692400381f02305f8258d3005071354aae74f00c1ec26cc24dd71ef9bc724702106cc577687ebbbc0c9ee9527f4bdb6ee5cd29d32b69e40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023070747883b4883dc92baaf895d0025e2ff62bea8c8dae3b5a570a5bead8eb91ffea5800a2500176baad076a5cae0429830231008df07ca5a9676353e8240c16f1a40b6d2ef15b3145471364eeded8543170fe77fe3dc878c18a4c328b11adcaa354a8eb0302047c435bb50066306402300d5dcad9fbeffb263b6cfb8d7be9ed251f1bbcaf682eb3be9ec821f12175d28406c716e5907e637fcb6498b0d919877f023011e0914b3e73c4db11354e33169cd0b9890d25095e6b2ad7c268653335e208e532149f08728d869a1d7cbd35e53f44480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300c075eed8b56f16057553bf980ddc6a74678fc1499e99311a7cce174bee1519212e8a9ce58e2cdeac366f1ec0741ba23023100a9d185d7bcd63871e2e94c6328685fae6258347100c8a9817f373992fc6b44a7ee312afdcacffd6dcc8901944dc823c80302047c435bb50066306402307b6768aff9a9a504c717ba934fbcd9047956d4bb79e3abef8843215683f9ba903075ff4d48f7958d0990c036cf25a3c5023031c5a5e581a852dac5ddde7bd10ca68d1be7a4fb7b61b34ae147b56ec0a1d966db0266452e9236005fa308247b2616fd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d4df76792db4efd3393dee199888655bc878fb4cce68aefc1c7df098d2f237f1e9096b7c5789d0ad4fb40345eab70e22023039be1c2446ba6c9f05e90bba8810c097ab87da8f66892791e8a119be0493e18c255aa686e253cf50c957b4ca518d68fd0302047c435bb500673065023100fca5bd2ad604364f53a4de8c2412e0a257efd4ce6c10cf5cefd39ff3b499b9aa238de03bb90ef9b76fbf9aeae9a21c1602306ac68f9d5ee18c2345334accbb2372fa83c3e95e6d4108d98df13aeb12e315f4de8c404633e9d4099f70f1305160c07b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eea6c510691e831fea5b5bdf1ac24609b98c3706bb7be4603c773e211647d8d51d81333445b82c31758069e559ba9310023100c6f4fdf227c33a8e686b8e1c705376de4ac9c93ec65926f7e73c1ce97bbc463ad162d710a58c211178e55ac92a187da20302047c435bb50067306502304879ccb3f19c034ee158d04f97bbdbf4106f7ea8c7d2987596379bc587895fa33c9ada168278e7c1906d92d4a022bb91023100a18dcc8e3a09a840282d7d21b311b4e74305a97d1c72b66626f6a98ea82d051dfab0ee988cb20cdae2e684955b6fdaa00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009c87043ac67bd18ad96c74665e0c12511a57eb2844ef904c42567e486ed99283247542353db21e3b834d807bf97e8a20231009107d0c5ea70909e7a39a8335b705fd83c36b467cc46f9e95459f8c5436bb8291ea495c3299354fa3d1020177dcaa3460302047c435bb500683066023100baf82f9f30070280623ddb82c835247e238d8b035b7649a946db814baac88543aafef724d4223548934540fb5b22632f023100d27b2b5ac45289c7dcdb3bfd9b4710eeecfe2e59c96a5f9f923b8bfe0a838f7106dd530db5ccd5ac1b54050aefa9ad000302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ea6b1544d4e3db28c5db2bd314e9e2d9588d4be1314e8c6776225e70fe85c0d788de14a6a4574baf7534df48dae6bcf7023100a0da15b6e928ed5dfe594a5043f57e793e555546d6db52cc5f92525283a7276917e7d3862566919c525d9cf99e23272e0302047c435bb50067306502301d0ee44974bed2217ea70588cef859aa163864f638ca772357f1b46505c8b573926acec5d44ba85babcdc48865dafc4d023100e4cad74f3108be50123ca86df67be5a2b2a52b4bc28596aab0f6228325f212f2f1a2dea76c4dffcbfc9d344e82597d120302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a16802700d1efb63b85ac94b672c0d6698993a3e4e739ff7050a793364221f04ddc43401630ff5cb30b790caa613f4f102300d0ab5bd5cd837f615a33e4fd0c7b6cfa88e979a23a5585457a6835553ff9a657bc730d768d1a3eee41efad5ca84d7650302047c435bb50066306402306b8ed07a85ae08cb44b2e16d1c7539b9174559b57ba8630a173e2b3e9cf3998feed33be25d4ad6e164900d8e8ca6c7fe02307d4d555cea049a31676b1a43dfd72675feb9ff53f2b5382faf009416049d872bdba1f5d5a811ba048ba2c453e17fc19c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f3e058638671723f37bc6009774b4415969415b6ba93890abc2c304099d5fc7b63601b7189c31cbaf4ae74b4ff6e293802307e31f2a251957620e5f36cfcd88211ede7dbe5da162a5aca8462481f442b551c4da3b6558129a0f4e5525c2b20cda4840302047c435bb500673065023070ca49d4be16c537ac0c24722d7ab77f05e05cf87ca03179eb16830850f8aa99e769aa6e3465559305fb018779ea844a023100bf40d7805e5bf81729d400861e28e032faa29e0415858b3074e868bc6e541cbbe50223c41dbe3f198b17ace460f90c7d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e584de698754a567f83a78a8a9a8573d4723e96d964f8641721830e1239b614b6ecd0287cd321564daf758f7ad0af54d023100e35115afa6015d98e1ecaff80cc99f89a6808dfc45e7b44265fa8cc5e1c2fb2f9446711f0e88c36c96c7ddb7a1f1ad5c0302047c435bb500683066023100c5f3b6f73e2cad8cdf79b16c10ecf1050438cc0954778cd37675fbe6cfdaad44849a89754d05be93dfca18ada40ab9ee023100e6ec2ad5bdc4996f3bece5ce40e8b228ebac306baa3953598f0507866a2e6d23f01b627406133af34820c90063756aec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230369794d6df8cc87575ab0242c11c0e920f8507d5f5485938b743a5cae7cdfff450779aaadba6212ac5cb049935ba5fea0231009e733526b4b5a278e7dcabb26b25b39988c733752a41e62decb4901d3c7fe469e33c41c362c34d2603fad0691d3c32ff0302047c435bb5006630640230685376e06b85ca40e0a2a123ece6a8fdc24b6a1ad7bd64e46c8d6f73f0b6a895a2122141f1db9f2e852a077f690af55f02300c7592b39d8cb20128b9b97769c9987e77ae9acaa30d6dc577398e9275dae296fd933904dc5435d66a62152ecf6a312b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c6bac9f69cc2865d2174a468f262c106628b2ebb469d8837600dfd9ab85796b8ee851031848b940872289ce3bb2fc17802302285130cefa959eeed96bd13940e75f7d8d9f915911bed5ecd561f5ca039c0fc0bae47464db1ed850c21b28bf09790840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023022e1dc2180f1b2e7c3dd770be915719d6c037773f2b6ab4f935e2e898248f9a4f05e4f56868df8a6dd03a30b84f48ea20231008d1663ab50d0d5e6e78f17aff6018da11b0aaec3d069c8d47ab33b7f7f90bd30044fe737cc23d0085af078c58aebe6ef0302047c435bb500673065023100d48509490b60259e5890a26ab939428a066b1e9914ed05f9bcfcb0cc8299558ceb98222ef637f265a26fda01071cf7a602304d8779339c63a4e0d882c9673133582c1b01abe1f379aad5b5047471fdfc85ef8981497b4e0c7214715b4e20e170fd590302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009699d36e46b027bf513340df140378f920eff68bf65cc3252f0c4c19b786b7cb6e04dabab73f0813223ab858dccfdff6023100a83fd197fb00c3700581043de2ae80a3f2a7e1935c16853ba5f1d7dcb9c4e4f6f4edc09ba7c883d3a1b12f32c96a2d950302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302e6cc067c8cc1ba58ac586d259f74fdc2dfe36b5f53d8bc4e5312d717ea506c116f7a30028a1363ac7334fe686b4d98f0230096f026b1b3cf790aafb01d74cf19adae51df62dd0b422d538ca9c7d3c0ee975e8160fddce524cff79162db76ab755df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a24919a21c317db1b806b88d10ab6195a2c856096c8d479ac310d174ac5e2547c446326e41e111d693f52e2e5430b2060231008897f17a38e10e2690be2103252130cccc302f5a49d827ddba5b18b970191e127ed344e40a498337aab4fbb224cc4ecd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307ee0cdb2575230d18ce713ae94deb324a13921767ae8872d12210cf0326b47b9d7393ea5361533c98df36221e3de7a6e02306d13446332912eb001d18416e7bac542c365217dc0bdc8e76e4fb95f215b1315c7496cc1792faa8224ee2423fa23be9f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009a7a2c7635655bb622de69a647856d00bb0e06e86a4c6822cdb2e3e4b401f0ff118b1fad7995c0836c63d54571e1df09023016231431dc41a074bb83fad9d2bc7d7e948d4d3e7be2772249255b6c6f2f52e6aa84eec77b71ba315fd429913e59dabe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e2cefd172b7877a787f77374903bf24f4628c1ff99a9feb3f3e394a030086d3ea94b0c08525ae5fe27373109e51caa002307f5d57780406a978d99305101d641751c7b1c6b6bcae4c79f34c8ccd3356cd1e20a1a1163d2c98c7a04d44cf9e0a1a200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d6abb744fca34579ece09afd1d1556751ddd4db166b57fecd1d1ff183f74095bbd6e59b9a97dfdf23c5812017eed3726023100f88f71e47559f3d8f59f984968e3723f6350487e5687106cb201ffb6e054bfc055c6df2daa46704be496d002269d62080302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d41393d316357615057c89080f5581d82cb29c1679654e9e2bde1429e6214c3dc7497e6dfa8a60a7d03b4c0990f53114023058f70e9c2cce9b6ac4b6743a609371e1bee08051957872663639698dd937214a505906271bad2abe75e4228b183f0bd50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a0c01d3ba11276953f35da56b1879639ad030ae9bfe1826c20366d7f432dfe8dc20bbd0a61771b46a95974b7a7673af8023100afcdeafd682531bb5ef1b41d34079d12ca94c0c83b1254d142b9230fa46dc43c3f970fa3e8b904d244f43e91a60c5aa30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dd0dd88aa704ef0df8f47ebc13802293e9553a451421cc8e2a7a596895d2fe7b2aa2f2c1dbdfd4c371121f0cb45ec231023100ec00fe8965de0a350a852e10e69c28ddeaac546406c811a8010cc506248ccf0c3954ceb688cc4835be6335143495c84c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ff65911313ac8f90e1d3b61cff7f6d636cd565176cda46b6fd5ffe0ff28575b1c8f86aa10a7eff2320ba184291099130023043f5cc71d8194b335b12ab678da143263652f623557710262eff54a18328687582e078f3f173f7429dd672538e96863c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310084bf629cd1eb7d4f781bd797e23a6c9eb7cb1381f8a3e73a89617791475a7919ab583c061962d3e996a21c409b7fc63902302dcdd43a63751abff8b0562fb86df4ec49606c7d5b2b4f6ed257b09e26fa7ac82335dbb5b75bf441c83250b68d6f43f80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c9847d2cca9a89af3c1393546499766db42662e45d0ad5effe98f04e7da5d94b8dfe1ff04070e29e42406162d1f47ada0230400a5a8ba0a588c10f2d2692821f876927ca9ebb52ab0650d10b05e675f16eb9eee9345bd2f3ae4e697ca7f051a824e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305096c819ebdc62de2fe924f79014cb553cdad4ecf58632426b2aa1d3c2411c36526e4f94e2c7cfd693c64c7da5452fcc02303b61551b2082182236042410450cd560f1f31dc48597479ad9c035ab00c1b392f299797e33797265105c0da9d89a6afa0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023026c87ed3c76ca22ca585491ff5db61cfc55e9ea9ee020a49df2bd6e644b636fe30529db8a053cf0f6497b55b119934fe023049db9e1b018801e9df9072253251fcff8c3ff19d65632af4530f66c04589766aba7be8220c3ffba5b6d25fb00038e6570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230662be8f2edd9dd1d74aa10153427022643521481ff8435726f7490a0f322c97e86362eb846f105cca72092ac4f4f2e2a023100c0a0c87b5dbe829e03573ce2529690b3c98c308ab37a0877bb063be24f4b29c8f79df0729d9d214919b8d26f8c95ce270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023047015773a318c19f89f4ce0dd43c0c6623c5e851ba266062d497bd58c28b2bffc8ff2c11bc478659209e4ec6c8cc89db023100b7551964fe9066316c043042e6f6d5d89f72d58575c4d587896e47631704ac9373434e448e986d33310483faf2eee46f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a061bccf87c2240adde5c3d8fad606e03f4ab9006a09924fbc8d7bc1f3ad8c4c67a2d04b68465a0112c0cd68d58efb9e02305a62739f9d5760630ceda99a18a4d4703b8973d5e6c5e4038e2ddd971a9516fb65ea7590c97e388814b9cdccc2475ab20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023026524741d70ed2ced91b21d5da7a847147acd4897b342363a2d38c0f389b669ff28686ed44e8ed33421e8d937c6e5c2602304261892358d9a29c065a38624e344286c85ce469503b21f330cd14dd2269ad2e81fb8d2cdb2c9e88661aff0ebdc7ba740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a27fbd8b9f2edf7aed298efe557480e8b8aef19e73dd6bed7968a9db7dc857e20567fe824081f73a085bfb163ccb46dd02310092a0c008d085c59233827e7e5f0898898d5a3623e4b78c4c06cc5915f8b8b9701f02d49dd915d4298d83846e0cf609fc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023020b45fe4735244e394585ee5fb2d26272956c65d583d07417ce4b49620d52bfeb5475bf51d526f2e0d67b2ab31e55ffd023100c61636bcc186f209d75cabc2a231b40719982edea14bad5a8ed2cd1fdccf1dd3bcfc718c4f56b96cfb3d326e33bbe4330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230402caec59295f356f4ef0262667441eb2e6c45851822138cc3b72c2af6a003ab5fe63eb7f4e19b661fff02d04667b4be023100f2f0d25201a6b19fd7ad25ab44f0a09e00c3977d789836ffd379286663443ba8fafdef7c9eff9d16020786a630eb16a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dccd7502978771ace5b3567ee43b8ed6e0a82241b5bbf881ca43dd5bee9eae3363e270d098afa24c600fa4c54a068802023100fc45dbb51ea697fc979005cd1a47f48148576aa53283e4e0e73962553a9a1e7b922cf072285ac69970dc51f2334f7a270302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023017934c89f3b31adbecc324a5000f8bce5f88b5a2abb06056807ef0319d736c2caeaba542d6ac69efe57ce7c85b9060c1023100cb04254b03dc5572fc04564b368f0df827410a50f0cafa788646d91d57b2c7ac203b8285518fad11b8ed78600ded8dce0302047c435bb500673065023100ea38734bff4fd73fa7820913562e0cfd0bd822aa8569b14a9c86c2b54859b852094431809e396576b33a377f6d01227a023003d4d5a2b96725f1113207e7e26ba0822eeded36df4d6306dd5a9654eeac05eae081c6bd5f604e193560e0a9cb7df9840302047c435bb50067306502310098250ede0dfd993c929124f1261c7861c02c2be30c1b73da27f0bf20bb416052baa5c768a26e5b2ed89764fcf43c5b9102302690c478b21cdcdff426d840f0db22c0d89ed16776c90ec542f8f1e52cd3807dae980d677d58e87df74ca85834478ced0302047c435bb500673065023100ae68b99b99ae1532a114ae10f63b435292045aa1eb167bc95234ef1e98bc8fce68558dc8b2584c84ce2a7193a6b48a78023079d6d9c8743249fe94f024ee2879286262118c1566e48e75e7fc4803b9db3052666b85d8f393cffe50b0e318f48c20010302047c435bb500683066023100c0c5f0a1339de50b4d7fa95d1c87efc0561118d12c393dc56b9b063ad8c113eb168e9d351bfbb713378c1ac802294a71023100be7ae39b0f465f6291e7aad196cc9a1513585d888c5d5b92bc97e5933efe2ad19f4f7387693d3a2fffd96d128cf108600302047c435bb500673065023100b1ebc2fcdc1efa278882c52fd9a15d4bf69908cb58debd9ba84412f834292394a171836d6ee3856c128a337aad65b9f702301af815791cc0a09598cc9b34cd9e9fa61df3364b72069ad2a6ba57479256b8030df37a483d6965fa1d906026402974af0302047c435bb500673065023046b6bf3ea4106f774b755a6ddd13dc620ea1942024e1074821ed7db3df56680e4cc9e4b17ea85b576cde5a3cb08cfacd023100dccb446aa3d043ae05fe564813a58e09fc4daccceb0a5ef7025ce408df40973925e2e381de0fde8c2087d784d33708360302047c435bb500673065023100cd56527d2cb58421559d2d8653db4aaa9a42c971f1f9a9b6e21f87eba0ba1d9107011988c9610d45bffac6a2363caaa9023077234ab57d6b0eef4e3055ddacefc5fd574d71110343f4fec1a2f0f4654e1a46fe4f57bd9360dcc7eea7ec9dadc264e50302047c435bb500683066023100c6f0a3f75e81f5c506856130f78a315cb5c5f151705b63f44cff1f06bce41d76e80230614b0a17bacad989b118e7cd93023100bb3adffeb5e352af853bd86d3330b956c34f8e56d070ac1c88689c266e64bfc216e51d05de2400a26d140458b93f4cf10302047c435bb500683066023100ce3735cb112671ddb35c201a992fd46135e830ef5d7208408ee4be520c7408fc918eaee21ef2568550400c1293996eaf023100e3fc856a44dbbe286c8fc244e6427021778024ddc7884bf95b2553cb8636f2523db6b03e3b953f2f0913858cc9323f340302047c435bb50066306402302200135c8748ac7b2b3c147d4758f54b8c361839d890038ce2f2c8f7eaf93a5a64bafe323937ecebf7b259ef74b786cc02303a4eeffec1000daf8ede2bf896b7b5959a75ef2b17661600ebf2e4e5188384ae230d9db974d112194f859b211a4e64200302047c435bb500683066023100f67251f61dbf482c864b21e0141f6685b90e415311ba6ebe518cd40e9aa56a4348e58842db296c3b11034d44829c54f5023100bb285d720376496d2d7bf9f7e0e2cdf2e2070899ac291a99c055fe50589aefcf64bfe18923233f9bfdf413d0a38b38a90302047c435bb50066306402302f2db309713de383ab1c8889b4f77f6051aec3f055364dd5966163faf559580dbb32b48be4a24f77db249c9eb8d371ae023074439d7c1b105910eb80f4303b1da80167735f001dc6d4e75add1aa509fbdd13078723c1b9d0fe0b7eeb97e150f27e6f0302047c435bb500673065023100bd4f79c99806ed980869f86e84a1a30069a7eaf7ddceebde9d7b7b510ccdc8dc3dc125d21649fae7939b8ef888956ebb02305565f736e24d5380f389bf598d6a80ed01628be82a542ae2321d20276948c329cd113880d93938830c7b03947644b7f80302047c435bb500673065023100e1c27eeefbca09ea9cfcca6fcfe42923b939d4f70e8e874d3611154d6d2cf8b8a69252fd7310ed4a1c5fe762f2244b9f023003b6fbf71dcbe566e60f9f82ceed5da562afd9115ac7b32fa304ad4fd7d53955c24ca969b33d96b7c25e6dcf542d4fe30302047c435bb500673065023100a337f2ea5d6a5f92ca71f8cb8c1b737197eba67ce796a3047d81638123e9c5fe58c51551a64e9a6471d62ba64e5a7a32023025e06c9f25315fdf00eedf04ca194ca0c24ab927f03753c5bcc64c3f7266f91bfe8d708078d851f6c16f304bf034832a0302047c435bb500683066023100d018c580fcdde97a4fd813baaa2c063451341ec608a976f803ecfe994dce39bd4dfd8bb586f64e396d4804f600ef08ae023100a3f3db4babad7f36d5bcb2e018e574fae677f5f5a901b86955da58f48b90971cfde8691e871bce553db4cf4da068d4ba0302047c435bb5006730650230160894eceeb4dc4a2965440fe58719278c3ecaacda549bc2d620a3570e501d30f912d82db77d6b0072b0b464fc479fbc0231009ed4ea488964fc6164438f6fb40d54be470fcdf4dc5225b9b9ad2e90b45403e2cdb296159809666bb16a00609cb3772c0302047c435bb500683066023100883f42444b588d4aded17b4fd2220d040a5e53154f70f5ccb59482ea60666679f478c084bc42a5253f4d501ef3b4c530023100b6f39fd7131757ed38f8c8a03a7daf79808a41ffd35b4ff15536fe907f7fb763352cfb3539122beea3aa609e1cb63bbc0302047c435bb5006730650230778eb44c4017890ab989d8b226d78fb7d02207de8a80dfda72f198584aac0e5b11c2995cc30b42cf98fcba914e177cb1023100b06691e053be49f2c9ffd81a7e97143e7f9954c0f791613f55c6fc67eb014fd5f15418ec35a871f5c6ac3d9ea62e7fc40302047c435bb50066306402300c2d0e7822794053e154869b2fe5a5e1aa0d6445aceb921af5ea1b31a9ad0877f1a3ac9b91683b695be017c2f49c429a0230788c1811e4dab5f14d12e4f47cfe6350882ef42b5a6b317af7c9f3567091cc03bea849f3dace0431ba0d4678baf79b220302047c435bb50067306502300158a2d036a4fff626f9c0f85bf364c28e0527902fe4eb868795543fe4a3dad73863a8712292e46b3351af3f652d13de023100b59378a6f170ecdfc05fe596aeda9264bf718aff8e76a09870df2773c1fd6d40282e09a0827c6b06f76b296bc101c3810302047c435bb50066306402306ce992ad06826e72cfcc59480b75821a50382bedb20d5185ad3df14302d1d7a2c38ce883257674539f00127cfd3a538d0230640a61353c336e8787859346b561d005330db545d0c5fa3297049eae5bf220a988778d627ad1d34ffbf3eb431f2c38b30302047c435bb500683066023100ec5c8ec30a7d3a7f0cebcdeb9830becb2f23da47c51254b76cdf92148b3f57ca78de4dc76d863b9ab911a91716352631023100f0e89d7f88f910eebc59bc64fd9922a622766023af64757cf645e1b33826bace24e23ae2a872162d0c539394b65021630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300d52cd8bdec6d59338a3459ee285a0d4c90d43a6a6c2e2734f1e1e9cdd8a89dd28cb72aa56aca2fe2e61f5d0ec2bfdbe023100d2b755ea420595c324ca687226730a3bfa53bf2ef9fb37524b2565f869fe5fb950010164b2ce8bc62be4b62bafba36480302047c435bb500673065023100e0f82401a3ba5306b2c303aaf174315d801c05cb5a088126e7807095496587574544c493a8ad0a6fc3a768c6485cfcdf02300801428a942ae443dd82999e309bfc1492a206f36dbde37b4a6778a4385164f1857106c2e5d104c257a31c4c2f16b3e30302047c435bb500663064023056e1068883874c7b44cc29f7c10f1023e55bd5374401f989a3600927df15a1ab6c7b4484e5d370313e920842451ed24802303bf005367d522a3c1f39e4c8b9ced2ba2e289849bf5f736ee06fb63ba10b05042e544c77c4d0b50e46f32574187fb28a0302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500683066023100bb740141ca92477f4c0c06ade6fad0933a2235a1ba0b964434845b2dd1aa66f577308681f838d08451b8830af9f2261602310095ba8bf0f5d155a564d587838ce6c58c498a365e46b6d02e048e8c3d44f934b9ec8cdde51febd45ae9204e2bb0c6baaa0302047c435bb500673065023100ef5a5ddaa8c04a5efb0be911e08084cedc3dea8abaeb9940e107fe067f50d7ca612e5a6f2fe21e6d1993f2b362966566023073966102b5f51afafd11161d4b3b0dfc67e6c8b0b2022f5b05032025e08c8c060dc7be8a2bb732c264d6accb7ad6ae0b0302047c435bb500683066023100944e52f37cb6e0a86dc58eb77568d92cc9cc89dca19dfe5db91ffc00ad1e6daee2e99eb0d1e58632b215088da3d562bb02310097fcdf7166f6087d515d84f69c26297a3673377749d00721025878fa87fdf3c13f7d64ad8ff151b8568d83f5f1cf105c0302047c435bb500673065023100b5e0b5e7db09574d144cae4ce3aa769bba221513ecda334df97524033c5e4a2c0d7f6c8a1c7aadf77fa6214afb2582d3023003b2b9a582f351bd972e0dfce436a1370e74c76a233ae6bfac6ff420eaecf8d443c48bbbe6d1310d443686fe437bf5370302047c435bb5006730650231009ef093b7f8b6b1ac49709304d7197c5a3e38ac8951f279ff022a1884df4c519ce9910c83e208cabf4cfad6727189521902301d60699fde53b78f930b714d55674bb5be7b2998e58bd4f7e5fae97b593bccff3441630271f252028d5c79e7b8e1ebc30302047c435bb5006730650230560c6b68192f726b54f316056e2bf83c9fb6c94f852e07596863aae63b9231e25d414440f42fc550f576c5702afa1caf0231008f535de5e033cf82d421feff6277e0ffb5e7c9823a6a37c8844fc67122624bf6c252e236c4f2b71e1aa99fc6c0adcf2a0302047c435bb5006730650230260cc2868bad75600dbb01f69eaa9e88b44cbe679e3c4373ef5d00f65b0bf460a093281cc86169e272fb3fd43a56ff6a023100c1ec27a096a7cfa5023ce892b397660e3fd88bc1a2adb0978694376582b71293c262aed767685695bbecb5aa314346650302047c435bb500683066023100a532a6efe383c8e67c1ab779aeecf1063d5748623ddef533d450c59de66a2fded6ccabb7e87983dca73c3a5f499ff07e023100c27be8ff1d69995a1038ddedb83109bca5572b4282ce2051ecaa20a89f1eb0c3c8f936dfd225fe3adbc3964b315b9db30302047c435bb500673065023015936a378957543a7040d04e1fc6bbd39da5b57da9fe659f473fc8718f978c18d9006f24a43a64f5edb57e65d8244d9d023100fea77228a2024b9e0c6ac7d9202e8abce944de53223d839ace0fcccea9febaa598995e801ae8d71d85c632343888f4160302047c435bb500683066023100ec50243be43390ca609a84c11e310c00a64efd1da4c69d6b0a0d512fcdc090a10f5677f25d13f07bf99619b7fa82292302310094a85778b615810fea22445c7a49c5784d9f144ccf227849bd01ff56f1b62762500308c8e6be6a930253976ba36e6d2b0302047c435bb5006630640230793e9f98b1ee0ddffe9c8f3648ebcd7189b91f31c5bf7f602e42bd3c49d4c873506ba3cdb8d9624f609190f140256412023022232988eb4a7cffe89a646fcfffc4983aa3f2a194e95c64c09bd109417b0926c02b905049aa8074468944b6a83de0f20302047c435bb500683066023100bfe0891f139495faba6f36dbf0b47a7168f5b672c814ebc16fddb3ad512e52abb88c0001120d8858e2cc794b962019eb023100b9d72c554763344ea44d5cf56e8168d5877dc76eb3cb204740794099f832aee90419ee762bda76b6d6bb3eb6f32a9ae30302047c435bb50066306402303e88926fdc57d2cf358a5ce2a3066333df1f7c0680bb919284486bc9f7c6139ad2de684ec5bec3f61870fb290813d288023058cde58257d8c92fbac3c559bcc5e5b86603126fd0ba2b378b23177630e72c321e644568c69f8db7d59bb67a4bd192120302047c435bb500683066023100f2e67ae7841fd29291eaf19545f90dea3c9febe1b62ab839e25be5f25494aa2f2d31781a57d85bfbb2773e9597998a7f023100de22afedbb5dbd276b29e592758c33a2e04a7ac9031570f8bfa934334f90aea4ce59ef633dd13f814c516df1afa5aaaf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301e93a4fdc30af42aaca964564bec6dc70bd2b6e39c41f7c6e907fa41f636667bd42203f6b7bad8b20430d4ddaae971f3023100973b7065b2367c87b2bdae5c05d7b4a7b62046d910a553e592c14ea8d54781e31a98ab6049c826e2f6c11dd7752a33a80302047c435bb5006830660231008b099b0fff01155d9cbe8dbd57de87a2c44ee7ec70c2e5eea28d5e2c68b42ae63165776f74a1ac06eb1a73efffab6e5f023100df8abc90e4d032e28a29605d424dab2de116344195394a5913510fa39dd153a406bd6cdd7c8bc46aed31fed7643dc03c0302047c435bb5006830660231008f8789cbc4d1d2420336db1abf40b6061e4248ce814e2026fd673a7cefbcd1ac70e4c0962a529b2d2aa5a7b183f83380023100e1f563d326944e75d94728b72146ff8817b7b53c19fdccaca0dba643f5c5618f69c6aaa49b72d1afb4810c57085e9a9f0302047c435bb500683066023100f905404f1e9dfdb0718b061c9b8725efc9b881bbf2a691800f5bcda68ee9b67c969f75fa62de88ccf46f5d95d6738391023100e1a272b7e89f17b915d982fbedd0e37679072197f20477c7fe7d3ef811d9c70f35377dcfa8283d0d2d949e4759c4d0150302047c435bb5006630640230360b192a68c3b31ba5cd42153a04016918061b02b23ef216d4c3294c0c058b0786d78d26fceef653c7be391b5b34863c023035f9d8a6e0ed85b5d9bab23155fe92898727f92091866eb01a29e0b37e6a8ef9c9500f95fed616630f55b6a1c3222ff20302047c435bb50068306602310097cb76f941ea52729ce70fef3ba0c0090cb5bfd7b72379a26a75871324fd046cf9d079b6f7f12d79458be8e164d251dd023100a7952ac2a9a9b5e7b40c0a74df2ded7e1864b1589b538f1572fceea8c0b7a062d9664e01f08f09278a488f46904145f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310083b16308057de4a830f063eb4ab1b8985c42223e934e61ae41204f3a512332a81f588e824b2b70470d589c93822e6498023100cccebd21475bb8cf7ce665d3a82b66cb12d3f4fe58b3941765dacdaeb0da13d11fe0c0318df6fcbeff64b9fbc25a67ef0302047c435bb5006730650230657bb0778d8dbb6f7e2642bc77e7ab2727b46f13724725e8373087898117b76e7f47d8086539e1f29bff6a67ff354f2b023100f867b7153ed39261b7453f967876cd1606412209014277aedcfe0498ce790ac8cf5f995b9855fb090cf1e7bf71618bb50302047c435bb500663064023016dd8a2ccfe1e416dc748fc3948b5e65bbf2d8d21acfb6b3fbe11f6c2b23f2a541e5f0dd08b381e329b4c065b7aa53ee02305272ecaca2affb6a0bfb8734c5a37af14e6309caba467f0b59b8c74c7397afa752d3351b55d571b5ecd92998a3dc7aa40302047c435bb500683066023100f446fbe2e59a289ad3caac348fb3d8fe3273932490fa0548a8c358ec1dedba92d98441c9d2c71c5abe12ee0563a159fe023100fb97f1178640d8d3423a5b1975de62560a98e9ce926bef7f36b8c06d76b34f357cc65e1d7d49af8b1148c9653c57c2d60302047c435bb500683066023100d158a3ad77e0323018084097a23ea360c9d17a68ee7f4fa1c77b745ec75295f439d8aea348e4218a54eac74ad11b5b95023100bedf6a73b9b06bbbadab34c953d0a577f8ceaec987a07a3bb35d9d100422cd13c916f5c2e494e51449066f609b5d18140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a17fbd288291b5a41a630ab74f5e03fc056972c375dbab475b7480744fc796664fdf9c38fbfa72aeff384c8bbcf81c21023100f63189e3102bd9cd981985c8ce80833a264fbcaaee7e22de3135b28e1072e60951ec22c801818f24143d27ef39905b970302047c435bb500663064023055305d77bcdf00f08f84ad47d3d7e6dd325667e64c4c2c3e37e6f14667939e977384c169acb649a25e9393e239b79e5602306170bdb889a1a8fd91d40a24b2cb91399ff1e2303ebd99a35f6f8a98b36f9a2ecdee9cf2b8b5157c2f61838f5167d2720302047c435bb5006730650231008964904a3afefd1a1f9f790c9797321d42fd2554d8d0faf04485237f38a5f0c722624d4b30383b850a032e2a8a541914023062709f7bed2bc4993bfe73021732d1b8939c1d1915bbb4fb02bba300dbd492badfb5953bb4a75530bf07323c955c1fac0302047c435bb5006730650230180e7fc07a43e0bd83e1dfab125d51133aafd252df457cdac2b1cc4b973bfe74361816fa94918ac1e3a3caeba9ba0e6e023100c4ab933edc860ac11e0bfb96085454d286de3d60374dfd5a78ea5346cded1b1e7c21ddc2f2ff5aff473f694f64cc831c0302047c435bb500673065023025670d0017c619dc349c72d4fd6b2e1b16c649c77a5cf70096a086ea8efa0b8f9130ccdb6d23b4e084ccad726cb3582d023100f8d8957c4fa184940c4bff164a9a0a12e6dcca63d2b5a7592352ca039f4cede323421b8147b2d65d13f1b942de8bc6240302047c435bb50067306502302f95b52e828fc1fe08e1e02854b50b4db32b8daf4802219934d206ecaca1ba5dd40e50252e3b309eef8539bf0c25e55b023100c86d481c41e7b61ef700274a6c022c4ce220ad8f11dd92277d27f7cfb07439dc90db6ed5f6eb186ca5538477440c876f0302047c435bb50066306402301204a6a0cda62c6eebda315390a857975f71f423263780f90d8ce2c31cd0097427f216ad3209d8fe614d690f55bf81600230373bc3e323fef88109fd4733ff7d1c52e74960a78e576fba06fea2e8ef9d39d41fc24ce3048f655661592b5f2b1517280302047c435bb500683066023100e023dc49350843f20345ac3a83c7b73d0d0ce42d393a9618b9c47f963839e0036074c0a8a17b12f38ccb7a69ffdf80ba023100c6679053a1f7a74d1ac43afbd8176f0576cf035821da4b2cd099cf34ea5573fbff82b5f4ff1dbde6615a713c1e9bbad40302047c435bb500673065023100de13b9faafbe792d3e4290d46fc061c933e58fb2d411d6dc3ad176943b1bc5ff31aae7fc45e66741b92447c64568acdc023003f8682d71d1f448096c85d49357d7beb93cc49912826680bffebd97cba48136d6561add94a8e78a4ff4b0a5e3809fbc0302047c435bb5006830660231009cabab431f97a7419dee9c31bbcafd8286aeecddc9f8889590d2ca9f53a3228aa483405c5b09409cd244620e42f9f078023100acfd328e223db61da1709d171d6020f575b9883d5d00d9d76332f8a86ddbc1fad4227fb089ca740733b360969ce5af810302047c435bb50066306402302279ed3701d9efc592ac76733f94573c98792a45704a513768ddbf06d4c5f99e7c0a5e21c8bb0dbafcc3aa19cf6d40f7023020448726bfe116543d9d6f647227287d8cc28cfe4f03c9fdc7e034a42ad4e3eb633bcd66750ed5753197d4c30713b48b0302047c435bb50066306402307341e9f143a18000490ff99514f80e45c7188ca434bb3d3c5be1e861ae6c0bbe7979e34dee6f83ee5ef968100cf81019023046cd876e2b0f894eaabedae26b3e2c6ef433455549af396b092885609b318fc003c0964aada243705de75089c7f192e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306adf544b7489966987ea2437bf492fc7a66d2ae3f8d4a37247089c98736598347485b19f721234e505928e1e6d2a73cf02300db63cfa57bc2f796e0b1d81886dd37c069d53fee48aa93edd2cc34ad8a4e237f24a0fb4887a72f5f53654ea97cd7bae0302047c435bb500673065023100a536d5d2e60925ba44bc717cbfc65f54c2dd887247146987baa315c58716578a2d2e9fb3d4ae44a336b9ea6818dd5294023047bcea41f789baa11d1860e440d730ff669280258c849a9dd017d76c89b5ee7dd864de180187c51005229c7e6a0e61660302047c435bb50067306502301bf61a7d482eabb94322b88f4171cb3343d72fec505926dc12abfb6108df71fd9e84f3c37a70db79a4eaf9f7907163a80231008276c58abf8b72ec8a49bacdcefa34795da91bdfb9a3ef17a1355a612608e403e417d6a5cd67a0d935a74c4ff77e128c0302047c435bb50066306402300ff4f820fe7fd989678011d78c3af3e0a6e79bb6a4078ab632fa3b4f8d02bf34f02a417c5b0e25c3a7debf7024c23b39023032bc5414f397f918ef3fb6d94aa9404d1b86bc65e58d35f6783e3e6e6dc346bd24c4f39a929ba3dbeadef1470c0f3b330302047c435bb50066306402307e71945de21cc6bee5a425d49401190eb25ca5e9ba5e32bd34b7b7667ae2ef19695335448f1a45916e94b69dcbfdf1a20230236a659087c212b36f921ee58969dc8bdaeda6485369a22a6ed82ff8bd9d72307a7ef7682f551c922e1f7c31cb5bed920302047c435bb500673065023100d57570fb2b73231ff6591f8600f1ee2c69dcf41aa8223880a408f8dc84e43ff3e1063f5d7daa5fa512e902e712bc7041023059e6521617ceef0f0ad28e63e5e58756e527725ce362e64fa7c98a92d0a2cf179c380251f7ba74cebd64d27d5dbac6470302047c435bb50066306402306adea9f4ced1e0a5c38e42da54b7c091ea699cc80d72116d9047de22f66b22e02c3386e2eb7ec219d108ba4c63375b6a0230008f2c21fac2c36e543afe07f0c5361a3edba1efa4ae6951da4ee9a6c710200987cf4fb47556a877348675e619beffdb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100859c7e03e28cba970776358003e6ed4070edfe907a631def89e8654e01a9b744693b04d452d8a9684ec9293240cd54b4023050bcd69e4d3c05b693ebb85a0a738a9281e8e139918cea21b410277680b54b3f4b2d3f68349fd273607283771d0f4ea90302047c435bb500683066023100b3c5b259b987b16c9968d0f2d57fe575ef4037f99844fa6b4cc110bc12ff824eaaa07a122f13d09528b88c734f05e076023100d5b911d54231d9c24b75cdae7017a485f55b72168e066398f7a9786c55cd800552a0c77e56d73ff2918f4b4bb1a78aa60302047c435bb5006730650231009d838826ce5d3a2c55166dc41680073d43cb6c33a6f00a4072ed0436bf4dc734e55bc398d33fbf905d7c10a66e45c61f02301c040d1ee30058a4b712710f03d6eef99addbbd10bc8a4469579e88fe4a8cf6288d95dbb7cebfce6230c87f988f27add0302047c435bb50067306502306c565beff0795d5329dceee9efd0aa2a232c028cd70e26ff9247be820b238522b9d3b1151f08e75b96ca36cb9e7c143b023100e463b2b9b0ed33546cf94b5c83a635e0e6fffe2ca681699377bc793ab4981653128bda5be7f241c0a16a69d0b1d2739a0302047c435bb50066306402300d6cb135cd132641733580e0f32a5359a45ed5314149e19acb353268460bb88eaf4c74424c0e4c873a6b866d75e2925002300f6bba9cbb4c4d6ed9a233d787d29f2fa4a05b510d75f6eb2187142374289ad5f6e9be54c3c258307f0b9d7a4deca1f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023062592cada03614f6570fed2aa1375630ec25a8905db022b2626e930d39249d6d744934718c95042bdb2c94a7b810d7e402300cad5e6014231fc243a68194ed94038122ce371cf824745ef26d90a05d668669619cf164796992ec5fcd5030faa2d8850302047c435bb500683066023100fb2263b64409730a309e9faf75ed9651c74f7b514a050ee3f45e2c0846d0ba7990b4ab392938b487323e9aab21e3ad89023100fbf9297d794035f037a58a3c3dbe7e93b3362707ee45498c4334482646f2e124fad78016108ccce05cd832a9c568e79d0302047c435bb50067306502304214fe6e4aa04b78345fdfe1aaeb9c5989613bae5a63c6585dd3c109ce891010f6141285c189a56dd077c4cba3ad12b0023100e4521a3201295a339bdf208cc88ac8c0b8a904f88a1862ca2130969e72336f63c6392cd3a2177d8a5757c121ca8576020302047c435bb500683066023100b0efbcc593ac402a68c3754bdb5646036d18cc0cd42738a93d3ccc5544f84d237bc334ec93edb19e6feb627f2c75210802310098ec6b5521c19e7db72ffa25654edb23a2a8d455356c31590cc202b9a51c024e17569ab1cb48827c93b69fa58caf06710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023076d866b259d985b8fa10b0b4a08eb58e855bd785137c01864af0731cf4adc8d4e47c657ff38c394a700443c18e780d0d02304eb3c3c68e240f39522ea2681dd234b7c650358c25eede7cd712dd19ad7354141e18481dee0bd4b593f2bb629d1962070302047c435bb50066306402302006d42b45c1d50990b7e304ac4e0a579dd940f6aa110180b17934d833fcc98c5ae9fb3cc3b77360717c93dcb113ac12023029d56ec335c17d3827a77492f1a53bff9ba05a357bcf862dc9391ed64effd659503bc8b5e59426acb315016a0c86d5700302047c435bb50066306402306e01a2e09da5c9c4213a0b5acd6b9f1ef5e44f7091c44044a67e482aea99f2094d41e318e1c20407fb97364af57ea181023012632d4bae6ac4186b84d82c379bbe809d85d7d816ad6ec645ca300c1ca1445369ac5f49b5584d3a5a66a1ba94cd73a30302047c435bb500673065023100f21d4d1080d1a8f032d444dc254826b906c6bbdb6bf3edc297c311927d10e1902389b1e855cd685f81e56e08365ebb6e02305c57cd5a68dee56f85545a8395dc0287473d41b471708eee9291f86d7028dd8be4481a5f916373358f86086a817d81e80302047c435bb50068306602310096da07e33fb51033db662e0f992391aa37f2569673e362dca79acd4c107573980b0181c3c4dcc94e319c79009d84a126023100ebdb0c91f6e7b69c51392ccfcadf51dbbcb67d4cc5662f75cc86e3c6765f638dc96da015663582655ac09cf6397e07b00302047c435bb5006730650230308298056e28f61e28142f94d71ecabdbb493b8c182c916d727e4f91589ecd5f7d9622ea6b25fe0f7f33fba5a5f85407023100f39688c8833a4f6b06389c39bff26cd4a4bb10f584d48de71d5873f06a1e97de0c77cc1d902b31f47e6c1a5f1a20f4130302047c435bb500673065023100b1dcf76a3ccb7e5845983069b005c6f6be604375e6378e242e91383a98fa6398ae19286d99c18ef9fb8d1d9d40deaae602306cbd27f0ee3dbe90a8bf2a731f290860bbc2b4f9a37183ddcb66afce199f459be6d7e2630b7b103c8231bed0f1c796e50302047c435bb500683066023100b2c63eff4186d0bf52b57ff6e09634e417ed2febe1b76c86b5656b8abe1e804c043a5f3fb6a41380af1fe7735c06cf15023100eedc4861387d9a3b1cccca3aaf1e789a568c7e80a3d443ba95d90ffa8b5f1838fd893890f4e6935bd3afc3cb6850ca240302047c435bb50068306602310090b69be98456ea9e68eb7a572848b94e2f385a404e440263b265daf7328ae4f213db191d171b23fd037c1659d3fbec56023100bd6a2716ed5526406a58bd4f3bab4519c87aebd0149c6b316a1f57b37465416f07980eb4e31abd09739b20bd50bf5eb90302047c435bb500683066023100c119d634e9c227cdbda2bb26e1d23b0c2681166dd1ddbae9ae3c1d3ff5d7ecb1bc48c6ab67f9c215abab9c08aa3f86b9023100bf47c951b8641f320fd09d53e90ad762cc4ebf728956bc495da4f17e25d54193c6c9772dde3831cbde87203b4fd57c0a0302047c435bb50066306402305eb65df55433af94a55a456ff341635862900f52ed13378c08d8542271f7a3f2d7c58b756b547ebc8547028c83d4e7c5023040fca40e95ec065b76853edcca02390c722d7d230d940b4a877aa2f815f6bcaee2df8ad5802f588919d25d40f554e80d0302047c435bb50067306502305f53a72c3b5e5e3a1c673809c9a418f48a1f00d85684599564c480558fff7d321f7febb4f3aa7711e8c19e4e7f6423f7023100fbdb598c508fc8d2739e0371a8c5d44535a0051de05768afac77b74a0161614f9a96947c1304069efe8d7dfc5f8557ed0302047c435bb500683066023100d147fe5cd6e0e5b1240173fd0f8d937e5567fff6692806f654bc7ff88c42aed6db0312d8bfca01e3409f9e82aace683a023100b843acedd39245927bfcb5d86070b12d9c479d94bf0d8ff4f22496e7759799bf6368c77e0267e432b2ece4e5a80f11630302047c435bb50067306502306cf7989f077aa9a8d8fe36013c23e8d8fb13a78a49d3f6cffb72da970ade8124a0818e5222d471769419ccfdd7db78360231009504bc2083ffff5261825c1b1c58a51e44163c6e9c5a9fad64e82d7bd5707da3817b2c5a2fc4a4f385ab450b4980614b0302047c435bb500683066023100b3a181f0d5b68c3418ace50b2e87513cf995c204fc4b08ae3afccae1664d3462e8a893b4b0f2eefdf7e8b04f62308759023100cc4e997b810512278f0fc8879e0eb71c7abed68483bd2a290d6f5bfcf08e8d6b2ff587b85e6ac8d348cc1039b761e02f0302047c435bb500673065023100aa15e2dfb575865983eb03b619c6f1ee4e3a2d069a2dee42fc1229875f2a1872559fbf33fff16a132d71f218fdda5154023016ddefac7f6a71ff7748d424a28234d97a6ebee3bcaf726c422ac16bf67e5d78718f7bee6ead8fa2fd9342a7f078325a0302047c435bb500663064023003f407f0e2887fca40a82c0c6c648ff71cc506cba268de1b28719b7eb2606fe569021e926d296679b04dd3d88de74715023074b606ea01983b6a72bd82727c819520ac92ae3e8c410faed9178392cafc0c3d1260dddae4d7e233d175741683c25c020302047c435bb50066306402304ddcca472d21597c541a3293f3f41b769a80bde10ca34d79d880a5c63a8ec2796aa5e6ef8184d0c89b3916e5a952bb1102306ffb99d5318677ca6921cfc369ea1b8aecc25ee692ee9eec02f271720080ce968e9c4d2a59ee1c2793c645a7a2283c720302047c435bb500673065023100b49164dd0888f04d96d8b09f3a3ad8365fa86fe8dea232efd18c99bbcdcc6aa56388085a74a4059245f3b2d773ca38c20230210710085dcc7e8c5b4f0d2c6654ec5b302eaf9d7407c19071fe21117df79beff398b08db844e2117c01e0e2ededfec10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a76621901959f95e6c14d41d112df5ab3e0311121737d92e1da9d689be180d908aa46877bcf35ac060632893fe5f85da02302893b403ee2d2bda9221df31a56a7d4366ac5f51a3c6fee013ff6786c3c2202be3e57e6480b1b9a4b4f5f5a4b2eb17bd0302047c435bb500683066023100d44c8d1798fffa31cac49cfd66a1ed09b51f02042219859cdafb1be86dfb96f1493828fd9596f2941528a3161de587a802310094396d8e61c84aaab989bf38345dabfdc5fc93412e834de460e230c66a7a15fdbceedca75c4a870300607bd491cb1c230302047c435bb5006730650231008ca63d900638babd5d95b96f06f44fec029415f66f473f6acf1f8236db54294ee2d228315c325f150ebb92b684ca706302303bde5320a31b8f00684b680a489f37ab60e67569b5a0eb2b27a6ba56f232fe4d5f5431881ed6054c03f9c83e08e9df730302047c435bb500673065023100a2446bbdaaf613325a09a87d8830ed0036d193b5c311f3992d0a0fe85f5284944f8128b57e4accc875222b5ba5bd935602302b42d1b12a6d166697aad8a1aac1b2864045cb6569a7510977c2a778c374a14dfaa246bc93761c8fa280f0b3dd5520c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306c104a7ca4254acb2fc7c26fdd114813aa040b4174831c6276783653f2b75e096bf5653c223846a0676a6a04cf86d3390230056b670c9686182e2dafa187eef97b24ca11c783accc490f45143f5ab388b85e1b0502e5c2c61fb710e07105d2b9dcd70302047c435bb500673065023100fc2e59d39efb7897822f06ee08b841d0ce9a54a8ec6af8da3d59971544a69fddc5b69e9fa167fac026f949ef22e4f96c023068261535a5f6a4ab640c0d04581aabffa0560826a171634cde082322c981e5f1162e2c9e78c42391ad29d1b73772a66b0302047c435bb500673065023100dfc4fdc33cc73c03568e25f3b1dcb02dfc9571de0195ffa91e4a42afa66a434350b783c847c8b178b71b74ec32884a330230779ec7667f062bf90789b4387834605f5d30aef87307ed408d7f9f70a2e7fb6e488d71fba6033fbb322a6aaa9f9315330302047c435bb500663064023001c1e95d3daf3e59390979787d2b48bb4c03a5411a98128a64909060a047fdd282035a2479c0eb560a5b0ad3b00227fe02301dea39481f9cb5d1f7b5bb72018c0ec27c7489f5648cf618920e9d4804f5d2c02a233e377bb599ad1e89cf7254d0e5f00302047c435bb500673065023100b8ca6e74d9f89a23ce3e4b034ddec2b613456a9badfb4a162c5e9055f985bdb98366d1f41de702905a2ba0c9e8b5f4ec02302095d6d8a11fce52ace5cdb35c1496cb3d9d3afe79fc9cb0a4b3cac990b8c45b82627375adee707757733e4c1aa4e45e0302047c435bb500683066023100c41a8c7a9ebacf104a1fc316e843e68a4df774a98bc1fa0cbf3dc0d6c361f00c8e609a8e24b68cb0225dc3c15cbd79ef023100dbdf015d751a06c342bbb7c7bd2ead02eef85d42793f7c4527d5574a96ddad05ba7b887c34e295e7eb14c71308f47ede0302047c435bb500673065023032c101f18afcb651d311bcdf3c02b57c719e20d475560f7d028e24eb6de27ed3ac7db80ba455f8169dc2f20d793353cb023100f67d8ab6353ff02bf4992322857a4ef61c9eb371b0a2570d3963cecbd343d0e8d808907ec1730c2ba786e60527e3268b0302047c435bb500683066023100851192f6f3430d170908dcfe116f2b301b647bb68e9a4d09b735cc09fd523cf8a4137bbf1bfde80851b072ff4905cd4c023100a173cd7ba0d538c79038c1a439e47c36a20595c16a9e4eb53a93a15966fb99af9c89ade74af8299cdc9536ffbb6e6c640302047c435bb500673065023100d6e36960f0281471ad151f1f126152754d6fc4dfca717a42c6b7a065c1f9721ce942b644e938086533e2ef85ad616d5d0230233c62cc4d4c7322e3e79e68ea4e51251a6aa8a9eef82a2bd589c75ba826cb0c39f1edabe5f79ce3ce0c028f330a1fa80302047c435bb50067306502303ffd5ac6bfdd1042da4a3afc176ecf57c854b62274d1e238077f2abbaeb243517ee2ccfb2f04c11fe45685f891822abd023100ff79bcd42363955a3d95efc85cefdbcc2ab5559ddbe2a6f63ea3fc6df5a6c8bddc9d485544962815832794a2a55743d80302047c435bb50067306502301ad99f3d31a21dd3bd27ac6b35453a6bb68a56ecb526e33c2f0c446c1077d2061aa397d2b0892a0be35737e63688daf1023100e3b90c564d0e0a01656344eb34d15909b1f5d3db49c447360a57f30593f186138b524375603b295cd42b502d6623fab40302047c435bb50066306402305b7cb3b86acad372759d1625b711c32e399bc619a1239a87b5358b50ed141f9a663fff62a007843cac655c6e582a070902306390f5110527883a520ac69d09d3b1936fa07e4a1289c4ccaab627f3193486db7857893683bf4dd89fa01832589d5b5b0302047c435bb50066306402303426cfca0d8a73fb0a5d8ec996338c2a8ca8e597f63b13f13bcf04bc222c073a2d089de0207d7c1c2d9125dab42ba1ec02305f2d7d3278f016d34d6fbbad14b87f6dd12138bd7f95f55ba8b094a0545746b0f06018ee74f0353c056e3b8bd02e9d550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100890b66c559cc355efa0f3ede387272189253fb32b3fa74c198aa44abcf91bcab65e6f8d3bc657a2e3f7eb12f98bc86bb023100b95ccacb4152d2eb7427223cabf7b09f7540484ea82044d1dba0c3426db8c264173a00272a01c053fdc983f64a81b5d30302047c435bb50066306402303642a15a70e2000c02edfedc35c9b48bc72f2347ed99d54f3c9af7b690750fdef6db8622ffc01711a5f743cf942c185302305ebbd3051791bdb51729a6755d6a3ccba5007f322744bee1341dfd9c67dd2fb2e784cc2fe33c03677e8379fa98fa33860302047c435bb500683066023100b1a0263104512c2d6fef9aaa48cbaf92a0e084be54069597f9662de58bd879a6fe905f47c15fe82346d2dab0cbf8dd310231009e98329ac17396b7399ce78ba56dcecfa1d21770fdd7acd108358381624592b3973f201336639e94722ab847f83c86710302047c435bb500673065023100ff21af964a506ac71b3cdc81c6780f8e7118332ff57fc991f22e7605032208feae97ab17e46600471e778498c7a5baf002302f138ef46d4b43ecaffa83cfc1f85c8049f8b3f28330ed9270b163c01f7f2d6a163a148324d1732af70f3469eef026ac0302047c435bb50067306502302b716c069ba6e6cf79f091e7e09a3caa5b7ff65fb3a2148040c49c46aa5931c1d665c222a12a2aa4b3de63da026307f0023100e310b4f0ee12abe29a8327fdc6b5a0b14e35bf9ec6d90c7dceb036f832a549e58ff1f8f5c4100cd50b16281e4919af520302047c435bb500683066023100f47e295235cb1cc230116b9c168b21de0e8e622513b098a0c6d6bfb6e2b18e9565ecb7cfebf0583c07821caea37f0fca023100bc97756cef8e1d87b996fdb7e877675c10db5ca3d8babb8a91e2e90d5991837fe7d039207bb25b4d9f16369d8ca513030302047c435bb50067306502301d24e8efae322eca60f7f3bc7119cf36da6c4ce9387ac85e71678c0ba7860180f56af8ac5f68a47f01cb2c5cec282e72023100faefbef0928aadfc517d75b2252373943e8c8585179a625df8a783de14e53f89ab3fa56d0e2bed16978bd38a518cf6710302047c435bb5006730650230295a300ea169fab462f1f952025f84890df8a8bd8c18577886b1114f8de10177711226d0eff0696acaccc25f287f5f83023100ed5d821eedb2dd8b296c3f5b87a7d48ffb26d789ff708033f710c15ec3e59413ff51050bae26f0b4bf9cd2e70d9ef6ab0302047c435bb500673065023100f23342880e437ee782a2824ee00b4101cc4c1874d15c9696db9b809176f400efb27d985634d207a2661ad2509d7da2b202303c4a374a21c4a210e1ccccb9d4f04e21aa0ef1f5f6fb35689d02b81f2cbb341b7291ab47624cb20d9655ea929e2dcde20302047c435bb500683066023100a53b146b84523ec7def4e4b30f19f8f6e8f0450106dcb96fe762f957c23e0461c5453a633aa16855b6caa8ac08c6498c023100e0d2582d50229d43082ef6098cb99244daabd3090a38b312eac1b8498851334ef75cfd70d8ae4681b7a98bdb7d44ff8a0302047c435bb50067306502300d650c02360b19c478914b5021727a925f5f2c70f45db4531313cdd2cb3430af6140f6b8b24cafc334e326e4805d9790023100d1850802e9360d95e94af4313983d2dd5aaeed710e3363557491aac24097c487281df1aa02f1a913ebc0c2d9b7c603b50302047c435bb50067306502304b4108d7b24432e16f1f7cc5830c6a24c8fd6a905bb88311574d613e0a15fb32ec4cb26770166b4f0821aade808a078102310091e69ddb8498ffa1f9f1d272832e48391dd1f420c62d51d70401cb9a9b1682d2031c68ddd33542cf5dcdddf86fe329620302047c435bb5006730650230568343126464d5cedb35e15156e84c7e34b41f86993c39cf5ffb9d75ecc75b80b5b9ac81168033666a6e2093553b24d30231009524057d7303fb8acdc6c0ffe3de69421e3aeed92a8179f5668f65aee602fd139cd10f0935b2b7ff18820171339af4320302047c435bb500673065023100d4c0a8ba90f9c4351ff4ca47579083abf5b512f7dec29dd9ad5bf6a10915c8e50bebe5957a42f02938df6c4886c4288d02304cb0de70877b23d75e82a022b6ae8f664d02d77dac2a8299963c640bdf73c01acd0e4e9b2674ceed6775f1c0614528d70302047c435bb500673065023100bb3f4b6766b4b7ef8346c607e3fb76de2d3d0634c5e9c4312a658112d20c9757ff5b9956c40b76fb63645eddbfe6aea6023050c364302add9ecbd5fc8315948b3e0cd3c30720b8c8e7b7887d54903c7ed2e4cba2c58547968dffdddccc3e117d89a00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a5ded042fe517cae8e6f9b1b9c7c4599ccefc365aa923b17acf029825f430bd139fa34ef67bbfa83142c82c541a7a0402307723c181e53f2071c927bc8e699abdc6645250f883536badc9f594f6ac2a759f65ed1a0588cfb255a809241301b9e5630302047c435bb500663064023027de69d6da1c9e3ed6586719512b81402418f7d65dfd7ef50cd01dc81b268f443171f3106dbc84cbcce5e0010b15ae040230518cb6c38e805f3d205e83503d183328bb7959cb8c6b963e146b23dd4ed95f94ad163e31872d144745a2c909e8a3fea00302047c435bb500683066023100b5184f327e9cfefa8be81d56585823d37163f332db9c96a4fa8a4e4ae30364689253d31274cdfdfa23a953685bee1c2f023100d3d01e9a879e45db55fedd532ea2f3936d867a2adc59ee4c73921294f9e3327e0c59426fef3a420261a7c3f6fbd4b4fc0302047c435bb500673065023100d5df05ee35a51ccb68f9c444ca4bebb61ae839aee67e72f3dd9b6caee83e7745deefa69180b17a90cfb856da2609a553023011ab8ee3e499a660964ebb51ce8d2074e9b89ebd410ef8ca37cbe7438bdca46648cbf7579154a3d2bbca71d64de4e1210302047c435bb50066306402305fa931a4c7be7f9315b978fcb42c1246ae47a901fb4f196810793f11d0ef4406863c2d323c2f3a45088e9263ab76d0ce02307512b5d2d33227f6e0af69f79336b76cd3a4adeb2af2f5b8b125730cfebf77257db8451b787a07fd772aaee39d0457590302047c435bb500673065023100c86d12d14b482bf070bf2830486237ae90c4b1ff18425da6195c084dddf79f0a6e9a3c9226e28aadefe4138a0d5af79702307106d5c84d0c29089b03b478f3c58d0c73fdf857810c881ddb51d0cd51c54d0d299fa8350c2192aa9408108da954914f0302047c435bb500683066023100e5d791bc7af1371423ade5ce4be035203bdbae1948e55deb0f0f534d572945b865c700e4adceed31e913ef9d7b69035802310080a66c5b92ee3efa9536673b5fd42e92f37ccda158db46a7aa16730b99e7e678c184e1ae0b74da245fa17f990e458ed60302047c435bb50066306402307c09d2f78c669d8888b7a283040d537d8f2afae8dc7bcf0ba9a4eb2ce1309cd7c3627f335c26bee517add2ea6cd3b39202306e70c07da42deb1dcc7a7e8633f8530aff172827561652c9666c7cd9e9894912816a20889e1129d2999759ad09bf74de0302047c435bb50067306502302265b279dac0d7f5c0254e90bbe688ad5a1400c220520ad68c76babc17f0e73d0ed138fd4199f9534b8b915e3e1a6040023100acadbd32ed08046de80e77f35f3245b7c2b5f439c6784fa0eb838eff3a4678439dcbddb301edfe7abcdc67537737c0fd0302047c435bb50067306502310094b55fb64be77fc79dfc9e4d9708574e89bc6eea8429e9e7f858415ca221903cc247a291763a13bec5b77ea4bf1173f602304c0d39ea5b0d77983461c72fa2956ec40204a936752da5358075e0ad0e43cf3748bc20938c69aca921ebe58fd7a340400302047c435bb50066306402303bf9daf944cf000048107e95b97e35ee2b9495bff194110d6edc7e36926f115bd5d102b70ad4a96faacc9b1122b4efa702303b32065cf0e57cc45287297e4002ed77c683793720885de2720edb041f0c3d3d954fd9b24f395e1fb23eb728241580c10302047c435bb500683066023100cfda18c840e6e3b6beb7be55334f8b333b68bec908dfe6be0ee4e33c1ecb2e11b18414c9a1e9a9fa0d0b8ca7fa76e1ce023100bdd118ae0e8b6e4930576c15f82e3ce532c733e040f5cf5a129c6f0f573cf7ceb10f306d241cb032b738235997c5ca8e0302047c435bb50066306402305689e1810759862e3842b9f95a75ffc0a3246398c4dbee21989010f98218b98e678def3f1f02fe253301727a66a22be802300acae9e743cb65d363fee2e4598b89c1d6235beb006aeaaf960337009f9341134979d33051d65cc1f756e7d71a54903c0302047c435bb500673065023100a592b0023852d50491eaabe89af1cefa9f9daf3be9046515cb6ab905de2872975785147d1f30317c7373e7ac9edd159b02302be50067a0c3bead22c47232645b989f0b880301cf8e2de0dccd47da1ce19334b530b64e203e9ab45d35502bd5b146f70302047c435bb500683066023100bd6f6b6b7404cf5b8d7e11adb49625eb28ec067de195b48991648d11d667cf5d9b03fbe0de66232ad6b3b3078f39e9c5023100d85a4f0f8fb54d69226036b4b5576a00a73ba270b7d56eb1bdf8d863a0d07be00616b0de55e8d8bd62685cc9d6dfc3280302047c435bb500683066023100e47d32dd9c4d8e20ceac8fa5a51ef5ef44a4fdd411d9a673218914908e6a249de952c49a5934f8c441615e2560e52936023100ec8b14af1eeca7b00c9878e8be17c04fe4ac857bc552ec14ba516b7b2bd74bb2fec465465e84b4c347293dbe449bed3e0302047c435bb50066306402304d8bebf2c34c41f339e945efb65c9d51740150d1bb3c5560d236771e400f1d1d8eadf90e3651fc6cf4babb110f00cbe802303c4ecbb9c9fcbe9468cab671b1777e8f836f21a97667c74fd29e9f529a93c761e17abe4f6e095076159e9cc541b1213b0302047c435bb50066306402301cdca585df90424be940993f53009ce07ba0c9031afdb946336648baf6763c1a93febb27dd6927672e80fd55c2e46e7102304b76b7d773eae42c582b73c0cdb2ae55e8bc5d176e07570b1593c048d9ddebb47e830789bb6b90a01cc2a91966e821f80302047c435bb500683066023100c6ddb26d1859f56218301ebd7fa6b7490b094a862c7e781e2ed8a70f75f949d440d54afe8cc2bd30f3c66db419b2c76c023100e185b18e77f5c666c3112bffadabe7034beefb55e07ec3e9acb53fe3fc8c22afb8692f4064b5ca163169ba6b12268b5f0302047c435bb5006630640230771335117a49441e6f7f0de51e2e116c91a0cbe0c4806f9a11ccf8f0b555f226e58051f549f7289694c9ed14e8723e36023064ccbb8554fd239f7408042f920f1d9a3440850d9ca8e72baa65890cbc651d77aa2dab1ead59f28b53eca58bbe3bde1b0302047c435bb50066306402306fb05772c11910851a96259beacf051e911e795193921243fe6c8406ac20aa2c9ec9e026b8841dde9856400b0007272402301b8946f588cd8810caeb9e46b038b08ce65bf1507a6147dfca07fd3d3c7a38467203320c5cda508fd77d9e3e5b72e7e50302047c435bb5006730650230168b48994031ca598f22049372e94859c23535282027bf4eff343228edf1bf862dd3f90098d114b0720d019f09cf390e023100e994c9d3cb868dbffbdfd7a3ec199903fe479464f89c673bb73f51c4de410ddbb5f7c70aeac2eef40d167a04a1706bc70302047c435bb50067306502306c921e0015822cb208928f31488199ce05fe0d0f81a9f466e39dcfdee96d725f44b3740afd7a179b83ba80aff7d03314023100f8ad74cabf0a148252070d0beb7ec4c75312b12b28d5d10c527fbec27efad4949f372adf82e91a584e981caa782fec970302047c435bb500673065023014303ea12e8e9b06ae055c64be6c6e9e223475f441f0aeaf588e7e8b2c0fb662a124b4310442ae0f1435e4f2842dfeee023100a2a0435069423112fe38a2df3cf999a9d7520ce2bfcdba9cb340dfa04a68771cff5ce678b7b9c1cd506b2eb7e8c4a8930302047c435bb500673065023100fecaa89aa786a34950ced91ae0d43169cb34de54d311f7e7b069df6f38824f08f187ad1bab5cae7f3b2e3c5a97c2d34102304f497d50e4368ef7b27ed25621dfe30066df452ab922893d80154665d2085c8ffcb614eff6ea2b8db8c3deb809ccf8430302047c435bb500673065023100d3f9d0e011f5bd8f1dc69bd5138a3651dafdaae41ba2c4931884c64aa807cc80b697b4dc85fff188dd66acecf9776b2e02307775ecb149b71221b142110fc93136821a4df2dafa8a0b84251748e203c940c742bfe68ac887627e4e761b2836c690d20302047c435bb500673065023100963ada5e7fcd9a1cdb5f84e9e558a778eb9fac4878593508dc6aea7bae193c0056c3344364fa1dcd9817a71446a517bf02300bbbdedc0d2bbe64f86f8656e517731b37f579268eee9202b249cad23a21013f3318302ae33d6f52198a3cb5011958ce0302047c435bb500683066023100d37c0da9234afe5250eed41ff7c5ea75ed01c7a646242bb3f5ea78190ccbfcd26e858bd5869e589520ec65df496c86f7023100a05cf1a01af7494b1d62fc0dbda245bccd2793c9c9e7eaa2d9a56c15117cb8f970b172e9dbfab37a994d6a9d75c919b90302047c435bb50067306502303d07b671ff9b484cb250a9007f1ddd80e390fd57edc57e40f8af057b920b38ff3b9e025addc2d1207692e47325cb6b57023100fd8cfc9b17464d75e2ae74a3eeef5728810626deac9459f8cc640a837217fc70cadfb2350e9e68a009f9f6d71f94c0fb0302047c435bb50066306402300a9c7a47d259906108adbbfd2b6b3e1caf97aa6cc6988cfccda65cf2d3fc523b09978cceb9e7c43e4de4f2ed421a28f602306911086875b09d9b9ced8a96f4d3615c83d4160f2778c6d63d9a9a0b874ab8f4fa55204c153d8259ac077600194a97e10302047c435bb5006830660231009800eb23801d7d966f605988b744e409f1aff7a7e906870856dbfa1d1129b7e46e2536e0f87b17b518d5f54714e95313023100a6331e1b7606cd895564b08b6056804f3d23a4672cce4f7bbdf441cddff11dc699ada90e25b7b3401895c4cebe404fec0302047c435bb500683066023100b0e65ad7567f37a8d29d436beb8c9568b2deacf6ab3f39f2426c0a83ba04b3b6b65d905e355a99886b28f6839d5eeb33023100fdb41470086ec054261a6acac0b309833210bf75906c64b67c43b86d58eb27046328531884ca240e204f4dcee135a63d0302047c435bb500663064023073b6be4a54aa6eb206b73aabf9d286da7a3c5fccd74173b07986d8a7dbf98a1bc6e4775da6ae649688aec1e9c0b135380230060c4ecfc384755decaa3ded85cd9b01b3b94f18be1afe2c70924c20cf406fee54918ea4910fc7367415fe78db4608c70302047c435bb500673065023100912063d20af8425afff7fbc35b6677fe43b00014a580a84395e24bd4f6ce87d2959be1bb0605c9d4f198614d856a397e023043ee8f72fbbcf59848c0e4a03de8148b7c92c440378464e18d46d4e38fae03328b03c2732bc6484200e8e362cb9f1d5d0302047c435bb50066306402305683da438443f12d1f49632cd3e2a04ab49c0f278f5c93d53815c37a6ccf6df958e6194de23b7213d058c5b6bc3949ee023053c598ff00f23e4ec78f94978845194e5752dd93ea66faac61724ae256cf1de2b699ede3ec23b8f0f9d00d106ae671450302047c435bb500683066023100fdac4eb86a1b58fc17b9585e75065cb3099a5d16d5e1350f8fa7ec2a1447788088b7f071d49977df3a029fec106d055c023100de8f46fdc8db01e8ff1af47146d2c3594f97b963c9a0a8479e447f726e34acea614bde8d227bec7f4bb9fe0ae91c14d90302047c435bb50066306402306db0391100a37c6f8aae16ae2c1f31e8a30303672c943a6640c69c6a900ee64f6c2b30b9bdabe33d60f93f0acb019ed10230300df925b8fdc6083da4806077e10cfb3379c39d22432eb94029b93029bc1fcfbeea4bbcf91394435b9a695d1c7db9110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023026c8fe255f7346dc531ac7c1277b6dd0e9786bfd3fed28d6fdee04b16667bb43ea8214b6c1ba613f10fb3c744dd18669023100ad8f3297d026531d8288ace9e071f4613d1855eed82a2ebdee183f8a0560fee5dc8e04c6ca50afe8fad6fe52ade34fd20302047c435bb50066306402300a4be794cca5172b8a67661d31b2d0aca6484407bf49f796c56b237c05acf36eb77423d268a1bf6b2413cd7c582876b402300f59ba86dd3d2723e7eab3b2dfbc0d56b933da0e6b3a0e13d565cfac64523f6da55189f47b7c289cb01f8580838b9af20302047c435bb5006630640230105257569567c18e788468888c05c128ee2238fceed408d5e0573c3962a4be213ac85a02089bfb993c48149c9df7ca1d02306950cc0f9f0e7f507dab18bf346dbeb04cfc21f3c7123362897ac0f966106b61f8ece038043df20f5252f7058a827d020302047c435bb500673065023053cce1a3bc8760a245cfb8f94bc092cf82dc1ea36f356ecf9bca711cb7af1a07efda02a0e4b831c6817b077fa23c88cf023100b5fa7f4efd048a57f46aa4d344712bbaceaa49166023fa1429f7db602400e04e44cc511eea548e9b4c489f97fd093d9d0302047c435bb500683066023100b19673f2e4000a24d77941dfadca6cede5ef4b608fc86b3b37cbb66c5c5618e93b765c009bbb27d0efa7db50d41a8292023100c8f173e5d250af9c933af511c8543e136a72628e1c504ccb217cee85002afbebd3eacb7e52119141839fe401a34731800302047c435bb500673065023100a5275bf3ebae4c1e57b3e3176da71651a59a78fa072cd7e5a64a782f8ebff0e4edab8a6ad491d200054a79c526e1a801023049b55bfa562453c1f82603a027a074f6e9f90346f7279a051997f7b054012449d3e27ddd86844ac7adcf44f19be4ea2a0302047c435bb500663064023051b3c1083ddec612ee6b1dd2d82bb0b00c69d4a4990f334537a8b89e3a0c18266bbdf5122b89b34db4e7ed3be6a0970802302dd66840aed2663852077169fcf113bc100507fc2a04f63e4f799dc6af7aea543044e097995457aedb7564ba62917b440302047c435bb50067306502305f8e7336d92fbdb0d42e35534b706ec747d9880392f99e15b7bd0ae471a37f5adaec8c96299171dc6bace723d2c28ea4023100ffadc83af1fc0d314547d9c50f4685724592181555a1b8955de2bd8bb80f088c6557746bd2f7cc5e332549b3244f307d0302047c435bb500673065023027b1ca314d377e8471ec3e01e05e0e405fbfe5f7977eba7b8c9761a8941673d864c4882d2599f73f8beaadba283de822023100cc27b0aef525c564f478772948142efff8c86194a232bfd3845bf3b0f4366cf798552fafe27f3a17a351748bcd7d5be00302047c435bb500683066023100ce4422db5e92f1091b961dd20fdf0e6bbf121fb143e498787082a57427a80ce57efdbc194b4035fa5d3dfc2eca6529d302310084a3bdbe5e737f0d342f52881a30d4e45c71745933dce8cc820b68a4c0399724bfd0943b954c49c00053119889562eef0302047c435bb500673065023100a00381d09980ac4a8ad15116fb8467fa625fec9f851dab6bba99895ca3aa51c9abef4adf6beecfae05e58b0b7ea30652023027c650eeb74b975870d1f12a2401ca7774f9a13956e8de2dee2f65b7e159afd22b5cec6186a7f7df0851bbfea23de7b60302047c435bb50066306402307f576704b1eebd4c20cc4ebb3ad292e4eb1ce66b3e46582fb7b4ce74db4291f8ca7b5d205bd93517200c6a5a670bbbb0023054446333a08f345164385961cd116663b7897229488ccc5360fec258a40aee0b67f7801d84bba25f4975b86b9a8a86ee0302047c435bb500683066023100c2a981e0d5aa6db2cddfb2d384d82fa0657926bfd0090f0197e58dc2d7902646b66dac2d8ca4e48da206f1577e657c08023100b9a17338775efa337c7b80e429c6be64ac24f3c048224093ce80510fa417afc95139c40499803ffac329d556866ba4f10302047c435bb50067306502305596145d4cbf778398ef81f0a9fd3b3ae3206524cdf77c594cd9dab7c1e458bf2a0ad1c693956db4a7d88d05b28617b2023100ab508d1cfb9839c763bde66274cc96675698c5f9c01a272397f0c5657ffb9a36f2987046e1d21e4542407e6edc64eb030302047c435bb5006730650230506ceb9d39b6c81be8c14592fe4ae430991762cef334541cf622496c87b6916816a763892f8bc434f60581b3ad694175023100b1e688c4d51fe5305189691d2be4ea21ed9db5425f918f9b9d83e89d987d2a9bef4e1b42181cb204ed859d56c97e64430302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2d7b0a43bcc121115ff3a4cded06500e7c536767bc4d1abb9e629578b182eb8beaf10d27f5d19b2dc8c3e4407049d1202300d0235e6355d07dea3b71fe5382caa0e64b667035f92a0f54a5f2a50aad60a78f463f98bf0ab4c4b7f94bd6872b796bd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086ff028d4fba8a766805d854ec08e4db763f291dfdf863a0b92776bc989bc1bc541300ef5ab7b825966ee19435fcec1f023100e764a8ccfca53ad66952774bb2ca8df2dab70b156513d7972613233b998908458a3138ab8ba7fe893b723c715f2674420302047c435bb50066306402304bbd6199c8b46d54da1e520a78cf8576a47feaedeaad33831209efea30c2ccf41210720050697e59fa1878c5e7901f6f023003d878196ad8a27bfd2ecb3710a6626f0c3e3af3ae413b9878e57801bdef7d0cc9251a19d44c6e824d9019c03682fa6b0302047c435bb500673065023075e775bc34cc8cd41e69f8348c578989bd926612ee31c9baa26e93063cc7070fceea0c5a47e4c79c028d54a022d880e1023100c3eff371b53ab31cecf50e22dbf3d02ffd9d73addf32b8bcf4c9b192954304807a5fda019e875216d69e943356b8b7710302047c435bb50067306502307ec0281c06beb1d67e38423ff593595ae58a5ad75c165927ed1037b93a1cfe192a6f7a36529e86f6ca9377f5254fba2d023100f03ec2be9e47c66c2702f6bce582a854846e377c1a7be3d73aa989bc55a40d8b884442371b49a0909197460f6d8ef3bc0302047c435bb50067306502305394f467bdc1b82420c3a777340c14ab2dcb0c3f16a356e8a18776b2bd85ad994d880573ad6871006a1d4215d3c3ac71023100d2ade6ce901f7643ad34635f30fe1547f58782f248e0409f6531757884ee80640ad0076f9d8e7397fd55af67cd2964a80302047c435bb500673065023045af8cff089a056b4fc8898c132b436356bf99dc2b30915e2dbac01de132cb75ddf48cdf0b10a2d1a16cb854bc97e40d023100bc3eb6a0717051561ba6f266f2bea54e052200a588b1dc1a0c14e1f808f44562819a2b1e10a98b61752236ff8ee659fe0302047c435bb50066306402304fa926f060ad371c8dc88fdfdd78f366185fb1039dd8788630e2d6693dcca53e1589ae44ffa164e7af93c42e0062fdf3023004d0ca74b7e5c7b564a390bb3f078d9dcc172a5b048e09b50cb4f42d485b33bdb7284b00482bc1cd96933695ea11f58c0302047c435bb500673065023058138186cc578a3282c147cdcb230458bed23c4c1327a63a91d5b66662896e7d88fcd06763a3745e195b07824b9b1f42023100fd3d42d4108864574ee0ca13525aea49ed3e8f588778d191619d3f43fde364545f824fb10fc3b0d84e2a325c6e353dcc0302047c435bb500673065023100c5cf20c128b7b210872beee5c3874bc94555f89af474ec8f1c7d6e1d2bc636f0b4f1d6e6335d2ec776fc8937ba5cf93002305f822b545a02be75938dd270d01e2f4324366dc8cd56d663b5e5911b55dbd932b2f141d9820722ae0147205287fd96b80302047c435bb50067306502310080a4746879a435ab9de0eeb143c12e0fb4449a62425475bff4f5567122c4d178881f52d85597499c1255829b81ea1f250230051bd696f8541a3a1d0a0da4bdff37663d445fe6e360b4dfa776f1df505f75096b80d2a49d48e5c1a92eec14dff9b1d80302047c435bb500683066023100ca1e1f05a744b0e26f71468280e27501e8dae59b812351167499f9e170c29602831fa99b5394855b06a77833c00ab873023100f33885bef8359b7489605c12c8a4d293e5a87b5547173f0a2576a923fe4cab8a579181cd9a25626b14655858ce60f0c00302047c435bb50066306402302c41cc5d7ebac90ce5f94edc7dc74cd02836f6aff83abcc70da500a38b22b375706a6213e32e3e8aa5d1f28f4dc764490230256fd25765710dcb8166b4252d50ba68b2de48b044ea585ed5df99571dbaf8bef586f53c9d490baf5db620401cbaa6c20302047c435bb500683066023100b53ffe90348f28132cd6abeb92423cf24a0ee3aeba714c50d1c3d86051140fe6e63297aa98c2fbaab37b3bbd96b9b4bb023100f9c942552a0a78a602867f8df19c02fb4f7a887f6e35a2a3a57726ac6159d7c599a6788b5526a1332901182406a613460302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301b5254ae6e5ae99d652f8b8a3a9c91ef6053546fab3279ea08d5c08785bf101afa6cbff623d756b303e1c00495f0fa19023100c9283a75690da3c9d3bfd13449f4b7219a558d0c543aa4d05d46898a96965f9036d064a31a912b9396f4a3e4d0bc0cd90302047c435bb5006630640230759c09acdbe7273f94a0ef9d3757ca29f66bcecadf830f886ee84a8643d4d05eb04178be3a553cbbb43d0432be1b061e02300e358112b7529e36ce657428f227f41a2f06171740fe589a81293b8ea90521ec306e0b98bef71891c9ab0f6a94c9784c0302047c435bb500673065023100c123c93181ebbb1167a07f0422a4e17212b633d144cf9c9598b59abd9a34e22a9fc314d75f37b16f20c9f43d97cbb02e02300da62a9538dd0ca811a6a215e5d44de06697b6a1dbf222ebfdf96007666ae761d75986bd8e8ea8e3f7458fe2e6f10a8b0302047c435bb500683066023100947b141769c4225a76bdaa48e13214c71fc8c30c649a7e47e7b84d361df230229db0b4573a2295001420db9800c2e904023100a677f9559b987b4a4121e3e0934266757834fe034919823afaba4675effa1a14d999045a20196072e56a9b7698b869d80302047c435bb50067306502300ef526b3aea34a36046da54c0d2838131ee255bb8ff5d4fb24b677c9c27eb1ee3a39da1f7a451a06b20085c8b99f0e84023100b78713bfc0200044fb5424d6effaa6a8ecb1900a62ac7c1c1fb361af84ea39e80d027d846a9207a2d8fd122f74d83ef50302047c435bb500683066023100a6a8ee43daa64d3fe237b0fe4cf06d1fffd9623f0d5995815b6c893f9a3b6a59f81aa8be60efc4deb5af53a47a8a452302310088b9cf059443fe0bc730cfc6ef024d0abcf23f0209ac2c325d6eb59b65b1472127153e4b0b76fd77bcd5c5747b9341100302047c435bb500673065023100f0444e4adc9537936e392d45766e8f3e9925a67c815732405e00b6881b73d72646e6a47914adff01f49986b8d70e207602303ba9625f373ec8fc4e083affdc0ebdd1828032436462cdd7ef167367a5b744f449bc50e30490bc84b2bd2c3c919213c30302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301dfd93a799749141516f2199de935f11945db106d262394f2921dc2db4283652563ea6862a5924fdcb2f094b6ae11884023066beb1b791605115863008cdc585f5301c62d005d3da680be89ee7667d886577afa2a0c2ccfe04dc92363ee2449e8d800302047c435bb50067306502300d578c49186bdbfb207b3eb8df4742109b15ec70c5867e4f9403e815bdd2ee6dfa2bbf0d3316e363f1cf0200defabf7b023100bca41c795157fbf0a70d89d1b09c37026328badc3f97bbae25097f2f687ec4e45280e09fff0d7965276a67e22d1147120302047c435bb500673065023100a47753eb27a4818b424dd4b00c3a2aa3d894edf9c2072b9d9145a314fc260daefc1b564991a9bb75f338fb32c3cd00ae02307c8d5a668a80b38c0d45f4b322380aae61a8b7231bafa89fb9182b9486aea83d63db6ee5c2390930e41a719fc01949ea0302047c435bb50067306502303ab2d250c8d5c5413f8b13d9d01d168ba8516e99a4babd5c9108972b5bbe12a2d40825f83d74c186cf46c0f8c9ee48c9023100ef50c5fe3401e0170c9576eefb5544472383267517020dcce968adfc12630ebd3a1c4d409b308fa7c448c8ff9da31a5f0302047c435bb500673065023020d1183089dd3a1b8c184f3fd8ccc189baddda03cb834523404d3c82ec5cbda801d5b6c46d68c8803f163cecb86c526e023100b12098fc68e6d6b0d9802ce93b2036283e261ceaef7aa894cc3e37da6fd6c33ad2fed2f7fb5d47789435dfa8d5f648c80302047c435bb5006830660231009f129a091d7371251d2f38970d49d5389707f21aa0495524d5463b4f648507bcc268f638fd2e871748ebf062e3c4f3920231008ad67def8dec80a83982ce373b34d0fd90eed9e2af107d94be6dd134e5ebfa67e2e3001c52f4b8bc3ce034fd447077b00302047c435bb500663064023032c8b00821757afb9fc35d8918c7cacd1fd2aac6dedccd6efa01a4b5e5c55eca6107551670f8facc505d50ca9b35d8e80230464855a9fef90d439f881a74fdf75e074180a1985e9d992175af0554b84c097637f6c37d06c52b1acc4bf35dce9284500302047c435bb5006830660231008c9a01e946344212d6f4d5559a862e3e9afca8ba2941cdfc0336cdd5c80eac4c7db2da17706431d5d2dcd05f8b2316e60231008cf4180897bb832f5f08457a774bc6f542d5b192d4d9727dd2e37c5c9eb4ff2c83e1431bda21907cf2385703d9eb670c0302047c435bb5006830660231009aee4a1bdaa203b36881ff5f85d4d3cb8878a449d7a39fd105679382e98dc9674a77adb8c4d66d2c15d2eefb647bb545023100e6e56d102714987949828b450dbfaa0f0cad59ae06ad589911082c1f49a6b330d0ffe03272eb9513759257b995d823850302047c435bb500653063022f37d18d074c321adb09ce497615b1399b3df8cc4802d76b88f466823960b100b4733dc66aeb73eb7b1909c6de58948802302e90908127c7c466ceb612f5fd88b0815259cc01a9abb30234c0e3d44568a2cbed8900899be2c113559b9b48260eee080302047c435bb500673065023100c251536e9f52c2f312a72ee35e7e964a42f85689ba6b3a4b5b845b422beb76deecafe3498e41ef9cddc9fc7dffab51c902305a2437c84053a3364b0c75bf6e7bc3a38bfd7238ff810aecd9f22d40a78de75a33248114ebbd1de91ec146815da835230302047c435bb500683066023100a22be926e03b0330d63b59befa316dd15db8b4c3bec5af09fedfca4e65cbd6149d66a324e5423a1a78db242e1ac9d936023100f7690f0e61101d1029cc294cacc6e9e8f8715336e02255da73293ca2b2efd3f51c918b911796e6e2c08927329c9b3d120302047c435bb50067306502306871b7fef8493cd6a55c5149a3a645133159936a7d91ac361e0f60bc823a18a4fdd12020d759543c84ebfecbf8051473023100901544fdc4d6f1119e43f02c3a726e3ac8553b49a4c9c4f6f1c27f066db6b22815ae03a39fb47961b028335d90f21abd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d43bba5bb87c8def43c4e008f61d622b690d3c1b2c90556d3e387ef0467ef5f6cf096026f4915f7d653bd9b35d612aac023100a34e67d6d1b394df9b1d989acaafb918788d4d009dd8936d68b55f4ae0ce52b20f32042ee7ea2a327dbae943c4d040220302047c435bb500673065023100c3b32878bc0a62f8162433ccc51f3a094456e98741f277e9dd4404ada65b9c6cc846afc0044ec474a0a5a252abcc47fd023072920517b4fef1272a23967e0be674afa9e403430562284cdb5854bafe2c6ec05086a92fe4d71bbc7baf70a952433ca70302047c435bb50067306502303afcce40a278b655824ef3c03cf0aa17582d31ba926e589066b1c1a811cd6222525c88f71dc854f58927b4a1f3f94bf90231009e723268ed9881650700253d2f9f05d7640afe3598e9957a89aefe392adcdae876b864e22d99072f86c6b3dfc1109b8a0302047c435bb5006830660231009fc5dd48f27847e10d736bbd250f01211957a8fd24e9ea1c9a6e608ffe2c4353e398590445fae3ee653d37c2b993d735023100fe73999481cb8fe1f3ed252b25eb8763c98cd9fe4b53a59e3634724655d7b7cbe633a8f4d676e2d1d21ee01b01e9c93a0302047c435bb50067306502301caf11ef4837c7836b92bb64816f258849b32c19bc6fcbf259e853897115fbd8a1a7e91aba92976767fbed9425a8d261023100d1fbd18f9d8a7249b54cbc050aff20f03db3603474f738c39faf80bbbc861e65b4eb26fe15a3bba52d78164f42e36e9f0302047c435bb50067306502310085e32d73d34cf390e79ec58a3485eaaf74b3b0dd1eda368a48d9dea6d374684c58e3dae3f2f759139079d74f4fa04726023072abf1b6972eebca8ff7ebd982b0175b4703ea2c15b220f70713ac340b8daaa8caad9b2b79dbfc23e36090142c6483720302047c435bb500663064023015168a3acc471f0708852d7e88c7911a06516c30d6f4e514016177b3ce2a6233956fa468186e6a027837779c5a35819e02305bfc959a1ce3243bb41ed854a85e3256ecc401628511049839962139a073498c6b26cbe6a577d61bfba4d5110f2f3d6c0302047c435bb5006730650230333edade0943f514d08587df458d5c3b346bbe5ff2e8b7e7afbbd5e5a97002cd0dd266710fd41ac4877f0a09a3a19afd023100e564431e789c407b18a2d325b377513d677ac66842f95952fb2db807f48469516322e5b15261af10801145b4be9834260302047c435bb500673065023000be0ec3e66b63eb01e06e2fc936674993d34543b8c3cb05319d245a15250bcd032ce37dfd514f2917bbda7474ee3a9e02310087fa5eab689859689852a54a9fb12b20ed99f051f0a62d9b5c32ae58f92f523cf38aed48ca6c203d1342b2c4aeeb0d520302047c435bb500673065023060e035bf18c56a853e73c73bea48f1210b879baaf9b5be4c5d2ab51107c3ec235dd0d9edc56e8609f67f9edf894ee73d0231009de0f88bba62f4fbc3a67bfba40ad1401662eddb5b4a4a75c4f421d313b7fe99674ac74d0dab63e48127a428adb68d8f0302047c435bb50067306502300ab6401b324d8e3b7424d35d0c165edfe38a9ed84812a4af9a82f83c9601cac1a5e20d405bb61757c392b2af1e8056510231008254a79a998c4b0021b08f20fd294638f28fb85d668647a4f43d87f8f04dc65b2ea8b90f7853a65f3a0b707dd77c5a590302047c435bb50066306402302edcdd04fba9134ed2a8edb2996aed26f33d28f1ec152df959ea7f1623d8539418b8bdbe5c07a23310c9fd4d79c1ad2b023022f31fe6bbbf290018610fc27f379f14c48e62610389851c3f55d83e38959db8cd4f471855c64eec64b279c29d7d091f0302047c435bb500683066023100e1c488e1d223a62dba0a8b69483560d11cb467969b428c8e98e264a0592061b621f3f557f0e434086c19b07e9dc9eef2023100a7c81fc248f9d7f6f3fb65354e7372a6399641e3367363d882146223ad2f9b6d11382a11ce10cb3b7d1e20dae9201abc0302047c435bb50066306402300a1a71f8aeb5fbff7deff757122678092e980cfecd76f56f3ae8d2998d0c743c446400bf763a42abae229babbda934d60230226275fc48aff077a0bff98afd6cdd10eb4c77660955346474bbf564d5752331293891368828bc67575d1993f3ee20e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023043bcec2912f1ca4cbad1864f6985f96cfb34b67f0f3c3c7315147f61211f4e36b3c298736e6960dbd2fb50e748c4944b023053af7852258c2af97c1d6cfbd74db02c7f7595e020d7afc48aa04265f358376e7e7bb5abcf1239d0f91e2a25d07828000302047c435bb500673065023100d6c2f5f96b78ba0515710756489f480423ae090a3a5a170cfb6d438fa78ebe0e08800f245ab311f49b7b264a7b8fba73023067971b7bec543bbeda1562fb84d4d5e876f2933d2b0a5130100eaf8f62c115405e5ef24e3bb17b3a7150a2c7fbd0e6a10302047c435bb50066306402302234dfa3fe511d45fc2c3a100445021908437557fb035ba4264f83bc9bf23cae9fa87d1f4e39c20162141d61bd2d76de02301fd6694b9fffdc86693bee075fefc29ed2d8924a508cb528f3eb3fc8e7acd7e11c07a1ecd105e54274bc2f2a448483450302047c435bb500673065023013892490bc8fcd9fe481cec6e3c3ef2ab812f29198885efa1b618e1c93c07abbc7e5adc639491475aeb8a57c2dea0f4b023100976f156f1a3307c87b0de0d41a8aa3bed070aaca4e4bd93c4f66648be9aeef50debb002d3f59798155d5b19f93742e2e0302047c435bb500673065023078a8d821a2facf3193b37300ac3d0da35f72be17451b021191f66eed94ae4aa24591f7905ba91cf6b7cd66ae4d14edbe023100fc4b12b5d2a1cb84c50070e23de2a60dccba6e785f0b9b37c304a2a16fa756c75b74cbf495df7489a1b6ea6815172fb30302047c435bb500673065023034aa9d7994ef0452f984d88e076c3532e78badd459d4ff6d4245fc74f3ef5fe9f7566061ee95a1712087fa2f815f5984023100bd02ae3994bc1a067720ad0784f6eb726a734b030641aeadb9b02706fcfad5796e64aa41d78eea295edf2a4022eaf93c0302047c435bb500673065023100d98bd4e21a776390b0dfeb85f32f874cab198dc62c8b403f242d3dbe38ec45a5c8aab4ac7ed9fcb3b59982bcf32877d70230361373397c384a933d7d29a0ff807f94d94437b3f7dc0d52387ff3a2f5bd01c0d762b0e146b59a68d63a4bb8e7d91a100302047c435bb50067306502306e749f9fd5c94f94e10a726420438b5b7bf005dfb6574d4ffbd49fa48ad878bd48defdf29ec6a81f02347d44f0b580e3023100fd96aa25536309e9e5a63c218b150ba699929a13836567203f2a9f88bc1af01ff2bcb8def3e996331cdbe96662fedf850302047c435bb50067306502304de03b011ee9a50fe4113126d0af58ee3ecbd26709252085468efd8e02697a01937bb7616f82134c73fd8c030d6d07c502310088339621541f059f92c567550a35afc504978b058a94c838b23364b22627bd18395b9e45c4dc89aa64d5b669fc379dbc0302047c435bb5006630640230670d06017fb3eed4a72806b5f71f0af31d7fe7d69362b68f29fcac75dfd338441835c3a345c917652d48460e54be13740230732904a9c7dcbef91c893e592e8d6f5adbff98d1f1b0cf719bec575c96056c62fbbe2e9f39639036dfb25a0b3335f7560302047c435bb500683066023100f768e3472656d3168304bc3479cad1e4755297fcc16c23c5290da68b7e01e67e28d0103afaafb81580c4106ba7ea0561023100fa5a2b21d9eb064f923805c412d569ac74b333155547d6a1eea8dc3db77698fb1c5bc043b384fa90ff3a8a7a3c1326de0302047c435bb5006630640230295f233c4cc4fe85d761be16860b5ba237eefe5127feaa911dd1e6503d719c1cb3441cfc103243ad60aa7f39ed63e37c02302c1c2350f269d9a99acbf72b860d1cf4f110f4794e3f08e79f2bdefb078b8141d860f7dd9de8991b86294e023499f3c60302047c435bb50067306502303ca6a9fbc753e51aa3fcd7ae549963f8dff67e406f6b6fb62a8769ce77d27e697d02c8e81825da1456e4ebabf3740a89023100886cf3b022655064ade859880cf85244b114bd0325f2a6f41fc53cefbac8ca36c30cba3646c4d68fe0d0f7776c3f109f0302047c435bb500683066023100a9d8ce46136dfcdc290c17e28437d3fe14965ae4093fa5466f371db66b987ccf482f505df3d0b90775181a0b0e94ab0d023100bf826c27529da64cee081eaf41e9b1edc7ae58f753ec7429b42d30f6d4de1c2337099a132212b56797daaa9fadd43a180302047c435bb500683066023100e7797914d5ea4ad5cbd4674bcfa13c995313c58238de2d8f2e21cebf8f06af64c20fac183c351927b959735283461d54023100f0cff59659c1f142239c3eb8780b76c593dcd9a1ceca90dc91f40fdc92e8723fa04b9cac8a71ff776f927eeaa9390d810302047c435bb500663064023061f8bf6e86324719d2838490db8dd8110d0e120210e2563657cd296e5ab21f4ee5230331a360037a54b92951f4872ddd02304bc7b51f426269da85e1722649cd4261aaf8b9f1db6c13b940e3a2943b59c982437ca96a274e7e4bd2442f19a0d2bb2b0302047c435bb5006630640230550bfc4b7f560685d36894d452767bbf9747be9df7652e6ac4770a9a78cb7a73c6747b0b254b0a94d83a9dd06fb03e370230518e683d63273e5bfcd63ddd60db38863a8830186a7881249fe801be9ae23cda5a4951f5511ea2f877d71caf8cda33c40302047c435bb50066306402302bca0fdd9cd1fb785ef3f7c332d0290aa07c21f72a19ca1c8cd7477d94ad42ae2c6c1de1e8b0d545730c1f77ef7912f9023020dc0f22288af5f632919fd3c6c959834bd34e8ab0afb7a238d644577640a4b0ab2796eaeb7d1e4c54ae4cf08b19d71f0302047c435bb500673065023100e006babd6a28cc6d5f3637616495b88d3f72dba1a764ec725f81b373871e02c03918a66f4cbb1ce32fa5442432eb4a120230519604b48ae0fb8632bfbe913a912e40aa53f3cee40a9237819300cc80ac9899f5f82b5ab607f3d47c3bf705a11ecdfe0302047c435bb50067306502304847fa32e76881bd2d7a6ccdf12c1cb341ad6fadaa78cb1102a0b3f511cafb4bb38ab026621ae706bac79269690784a2023100e44bddc13ab9c8df6cf01526f8f19599efecdcc014e6dd0b985a15bf8c188cf5c2811479f419402a958212808ba083ac0302047c435bb5006730650230026c563046bee241903e6c735c634a9c6accd9860b39a2dd6f3d7e6b070579e0831a541249c6f50d94b6c004554bd70f023100db2525d25f1c63638d327afd7026db1962f468872464861c56a127f7f2d269fb0c8a07ce2cd3f527baa4853c89cccc7a0302047c435bb500663064023036a06888df7aa12d23332764ef457284ab5275006d91619d42b38cfc19bc3a20e07b9665f7d06ec32e3022b36463e9350230594b9062f83e10d580333fa083abcf1a301b4f2a25dad6aba98031cffdbe9df2ff593496c1d6bc6819700dc06822d94d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d6172e3910007062de46bb16245fb03a3480c40181048529ee633c85bc903bfef3cf2591b321f784d0c6c74d684b9dfb0231008297c79028b6342e21ff4469e2cb0c4e0eb217f4f6469b0b7e03c59ebbad6bfd482291e52651756bb1d73941ce6011c00302047c435bb500673065023100d66d8e748fdc9bed07086bc99679df7a3b8043608409e84ae9fb4bf7531dd406bbf0acf543a5e9019f10a09ec673412c023029c4ba3f9756fbfe2d09495d378020dd7eae4ca7a52272cc2740eec37a45ea9ef570292f15c04855fc6d9fbc6004e7fb0302047c435bb500673065023077f5105c529a228eb75a4eeaa6534228164e376e2b56dfafe45403e34547c04b136964fc6ee8cc4e2c0614af3875da21023100bc8ed5abc080c48b612cfac6eda0b058cc155614ec79c7c0be2c78bd680d6dece5249fddc2601c8f043f382d2941c2520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e909945f3d69fe0677bc643f90ca02deb7b2a559e02bf59cdbafe81098296139460acb83739cb829642f87abbf118931023023765b453cec65658ff6a26f888d51a2dd9a5f7e6ffbf44edcd020a46299afa54c38976f5c47769288ea2ed491cf9f9d0302047c435bb500683066023100d044e6d77b3326a5b532751e149e0086de15546ceb63d67837c3e32e9149ec1ebac456fc4917810f145e2101d8888ead02310084db52515392a92f1f081f190ad42ae212dfe37a164da1bdc5a8a9f5dad114ae50f5d24be920ec05b2db5597501403740302047c435bb500673065023100b30d0a584c78e29b09ab4a59c7862e7f60a56d2f658f656cb2cc0eb70fe829a431e6957deeb49401bf420419a345aa81023076d11754fdff009671d8c8b08439de949c8ab5ea1bb99c37e4dbf9fe6926f5efd428c8b631c73ce528c570c2d07744570302047c435bb500683066023100c41a9b57acba994108dd2e6b833770cc325a7f15ab011793f681dae0400c9a972cad90bbae04ca0f21539487e0d78a92023100c4af6b399fbc53e1641c0f881430f64ba9c465aa2bbb9c4c413861eb235152bfcfc44deab1fad126d6646f59af7743310302047c435bb500673065023100f1794032a4eaca4bd81df27ae93aba45710578fa34e96465949a4cfe56abeed840b92592fd92ba69ede0944a609cc7b7023018a9ce68f4dfcf08004ecb5a35a435fc13b76df634a3a2831339a711794515b29746d175c1a1b77ededfddf019aa95130302047c435bb500683066023100b08eefff40a32cb3ed0f1e162a6e63a43f87e49a9be3f906c5c1dc5bd62b61ff9f8ebac357c4f5acdc28e591cd121b87023100eb4bc2b0da30d079e4d8b507280a051649b868e03214e71ad60861f01defb733b7cfb5dcca1cfc53c5770958aaf8b7880302047c435bb500673065023100e322a7c8456fb35465578a16cc32f3961d1d5c4a708bba1f2d6339ab4c0cf77858d6360407dbddb49fb55e361ee682920230391e19e2ec587435e9bd7e4b18d659b2304be74dae0537f12f624f5bca0af40ed506da15e04a27ea39e8e683f27f5abf0302047c435bb5006630640230326a3d67225ec87b6c6ce6111cea18cfb7ffa3efd17d0a5d6e9ddc4ddcce174e6d100c1f42a0d2b063a0f12d1330c6a90230417b5e324eaac49dc6d8e85a9c1ae602ec302aa724372fd9b7e85dbf7bd67a44932eca84a610cee8e13dde685fb96f730302047c435bb5006630640230577aa7b00e05922e7692a5cb810b8b80574df6dd0bb19e8a1f652ba5ee1a5149595caf48cb7aec904cc4d3e421bf3787023044a8e658b3d192b1fae5643970438d66b2b8a563dff83a0a833b1dd5c51facb519e62f0b3264f41b15262b6f2f4ebc880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230133d4a5ad1fe1e9088595ac3d0b003c2f739f3a7c3a9e0c6943ca34801f1a1e254eafe1508c39a7015a572035799e16d023100e75ce289c900ff31e88e00e75ee69a04d07a64f71114ffebc3254ee58cd42d6d6d42bc42173397381a39c2886196df030302047c435bb500683066023100c46109c6f89ea67c5acbd2057736babe4ad54545536f3cde251f4426a333558a0ac9d66a1d0991c1996e86d161014272023100a9f4101ec86e663fcb5eac59ca03703e34a5997c28e86667a15fc25ec2d29474c6e18b6723ca17f2de623d60e925c8ac0302047c435bb50066306402303ca88b70ad733e98fc58be533ff47f80f7753068a570f2d4c091c6b47df66fa6b7a89296fade131fe3dc4545d12b95f9023042cc1b9bc4512cba477b0a097e44d691b962f218d050ad9e40938ca84dc481bea22854af90c78f887d35f9e610cdffae0302047c435bb500673065023037e83328dbd95a1f777deb0010b83fce8cbf19510fd34bc4e41e9b6e9c320b176db7bcaa27e00edd2da3bf748508c168023100a760ecf4992ea8d0d1511d4233262ea882705eb054d1d04ba7a6125c1f8a4f2ec3c988346bf49df3e214f779d2ab4e910302047c435bb500683066023100ad014cc7e68463eec583d642b163386a537ee9a7572c587752cc0bad49ec0bb5c9f26fc94748a504005f104604082710023100bac417f9426c977e394102bb845ae30e82e7fc5d8a255d582b027757cc1e9c7e36ead96e2ff5c1dec69ef71cdba997700302047c435bb500683066023100a97140649ca1322578637018ec81a32b30d592d887c75bcab2745be9bcad8e03612c5a27ce5478838dbca5a591d54051023100f47f7de8cdcead0313d5e8af1441a14a4b874a3feda6c8bf354336e4ba3e46908bb1c471fb98f91394d769730999214c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c1d3185c92efe19686521abeb08579f0ded23c5b52a666ae888de8372b85a74840bd3bec337e4c75a22447eeccb30cd7023100cad9c41065b475c3d76e499d7a369f8c8e0c49f650e7134c4f41c61a0b9a6b041f931b535dcd69b85b8f823e902e02280302047c435bb500673065023100d83c941d6e82e0af3267bf674e5923f06faf44ffec830b33235c82b1d584aecbe2cec389385ba0f609f722ee5712d174023068dab1a85aa2dfb5ce08cbb8c165032adc8368772d7b851f7661e9722417d61f5e69907d4accecd64a76166e109c51c30302047c435bb500683066023100b2e47e7ed5ba5fee5af6927d1c891c980f7de601e1e16ecb7e858bfcceae98ef145e65df15a085b4385c29f0f77db5c8023100dd21cf4a38d9fd39185fb3372e8c5f30edfda21197312f242028d693e47d6804a6b511169ce419d4673cef771d7bdf0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008df76618615e1f9fce06540776d92d130661efbc120d23829adac3af9cb4037a28becc19c7df6be0c1c6fbc207f48b35023100e650c84e51eedf650266f1d4492a3a7766251ffc487d3f04cdbee7850791c7d7dfd843a99662234a6a52ad5ebe84fa560302047c435bb500673065023070686d169466cb50b47b6a545580b65f52a6d32d7b7721571e83fc887c76d7415c2b68457922a4fe3c4d8cc9e40203b10231009b4da3aef3dd4a2cb49fedc900a6d4396f4c5c1899d1586a17897adc5d6b787b48d56c173f6e5674089c94e7670823400302047c435bb500663064023024394a2164fa8a03916b7959cd5384f3de4a6485dc8767dda191684948f8de13330171af4973683675b38075ce222e6002303b7b22bd4b140fcc2f36dd3b577dbb54373c9a0b614311d175661ccca6fb5ae659b4a5c6b4a34997b787bcdabcab91300302047c435bb5006830660231008df76618615e1f9fce06540776d92d130661efbc120d23829adac3af9cb4037a28becc19c7df6be0c1c6fbc207f48b35023100e650c84e51eedf650266f1d4492a3a7766251ffc487d3f04cdbee7850791c7d7dfd843a99662234a6a52ad5ebe84fa560302047c435bb50066306402301a1f20159df97cb147922cb168aaac5d60cd760df5f994b89fa324140b17eea789dc0be636872f3cf6c0bb9ad4a92bf502307ae2894e56165dcc86df9f250535e513a4d45857783030924998d40b11f7015817f6c04693d964ec3f72a732c706a4b90302047c435bb500683066023100ef9c612d6b0db3fdc4695d9cdc180c6a84fb394312b667b69ab4dd2a174446ec5147a646945026fa225214733a9413cd0231009b66f9f149e0df2be144896f93e5b63f4e242911255dc8a9fb0fbcc6136224084fbab1c0581d8600b13b9168f30ce8630302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230444fc1d3f585515cf973498b9615a8c65ddceca34b78b5d6e3a3712d7aaa77e78a5a8262e16544cf299d29da38199a48023100b9421e8f0a7a49235ea06979d591e387952d2fa77c99f79c7eb844367ceb0044a6d06275849532114dbed8e3b837137f0302047c435bb50066306402306240134ed01cd1195e6bc1eeb33bab0867ecdc4569685d24b835896b02779c0ee8bb0a51ba69ea63ba1475b1203a0b72023072718f35399dadff6d807720d99f9d678cee9826910da3b790c0bccb8b0824cb615382428f11912d3aa32c1e02a76b940302047c435bb50067306502303e9a51070a269311ae0905bf9c040765e4ef28ff3543d438f42b515b32fd035bd1b13bbb78cdb2564836ff53adedda62023100a4f4d9c7e0946a61cb0ba4cb13fcc160471e16eacb5b3dd6c58be74e7c4debc9fbaf24105e1cc72d90785eb2eea0481e0302047c435bb500673065023100aa02764005e195240be41638bc6de5c46b51a53d5736a3d76f3e060d881a565c40649d5039d3be9a2c38b1b42048eede023016b856429d1817310f21b515dd0aec2c84b2dd1020e1ad3e9c67e94416a609ee3a71e1eb11401b81d8f9a5473e251c190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305e6d96a5615c0ded2d16dbee88d8c559f538241b9ab6fdf1bec1f18700ca1b65adc5cbbc4dc4ca07a08718fa5dae3ccc02307b67d90efa31b8c0790954d3d9c55af49a67deed3ceb62bc9209a200b58ada649c03f040b1e3dd80250f1165cd400c720302047c435bb50067306502304acc120f1adb36e813f2626968a3b2a302d4642c29b7a566583b368848168a0d6a650a29f3e7e199d91ad11a086a1d09023100ad0d6d5abe4b997ebf3d0740a53bf960a23a37e16bed080a18e7b5a1e8afc247be89c44760d7a66f3c404d0c7be491ba0302047c435bb500683066023100b70d6347733c3eb070ea2524c5a05fc18d6296dcf7cc74401b9059ab5ac207dcb9e5664aa068c14d8b277143011093eb0231008c76c8b3c360ffa3f18dffa98f05e7bf1898f8812e5497426d431bf35d4cb1a62063cdd8fec721748dc2d5482ab52c220302047c435bb500683066023100da1a3fee7c88cc6d1dad02cd826266dcf5639e10819e53e5e9fb759d0d37c2b24ea9861875b0850dd182fb492aeb6af1023100a067ef0734b0f6fe4a2d67ea593086bea4dc3b1e4491114cea452b986aa9284b6c5ed134602968c3a24a5a666c6843160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230048a49c91ff1ad6cede906693e862ca61629cc2225c4ea885dd0f05591101e25e313d03a0981c43f932240e19ad1f26202303fce6bda9c3af8a228d12d249fca66bbb0065987af7dba2ee71c902fb10c87cb475610477f1146913a350e635b47312c0302047c435bb500683066023100c0a26482a661b76da3cb0268ddb87cd7c575de2fc2b918029dd3c8df88f03b5cd2073faf13f8f9af71a3c9bce9f4cd5b023100f5f6bdcd66f85394b30f588de622ba6167c089e4a090dc1042fd1fdd6fd91dca45347e75e888f9140bfb1aaf534bbf970302047c435bb50067306502307e592008dcb3e7e585ccafb233d2dc83af15d4a2b7419b77981691d5dd56a5917ed5503236574afaa2c06dca57dc6f7d023100bd959168ae66cc3820ce07cab77d4aade7152c84e824eea5880bda1eb31f881e7de130741f7fe5a7355a048e4348f8ce0302047c435bb50067306502303a900be9eb5765694a4102ff78c6c340bd970a580e9be977bcb994b5d9e06766ebfda73f34508f938be13ed680b58130023100d55c1feaa7cdb00e20ca9c231ab77c0972eb80b53a7f2588a28dbdce9e47a5b679a89a1ab266fef882689c18ca8042500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b028378074ddb638a9f6b8d2b191a19d3d6eb8ec53c35006f7d0ba5d2d53d9d0d37b77a34b4e91b379cd24369be36bde023100d1342eb988d13b274fd434f1f2b2113f4471f59d9456e15022b0ec14b94e074f426fcac572031a9b9711b13b49df8c7f0302047c435bb5006630640230401d07e515e425d2ec96a2cccb1bb97bf0ea8ce8c52cd8256652a8302f997cf1058deed54a9212bb444387d0fd534fdc02301dc72c2b88024756abb43ef574588388cbde331543dfc091bbb09d47c9141b9484c1655291c90ffabdbd9315135e11be0302047c435bb500673065023100e2f2c242ec195f2ab2001718d56b4360de80f6460e38a7122f80baa64652bc49daf3f335afaede5796899dbff269860b023044d5b72b556e997106d212cfc898b0b59314f66e4d3c3eb8c525865a4cfe74c1f1af66963c630f861d5b13237e48374d0302047c435bb50068306602310094311026a791f36c63c226890720568025b85f2355f2180f84f275b1ba0f860dbdb6993966dc42d557be34a9610ced200231008c5985cda31d3f52f0409a4cd1476275b354c2db27a01cb543d6b04523e2e7b90ecb511e1b39b8f1da3004dc432bcb830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230674b14b996cdd808bfdc65516388542fe80bb14246220fe1a5691a55b2f43c7d579d1ec488d9375e8701b240ab646e64023100ad0082fade26d3c6fb10b315d5b10bfd224f9102ecdc0c123427ef3fe17514840e7d2236078850ee23674c7a6e229c800302047c435bb500673065023066aad134a90baa6c6eb4c8b4fdd5583f9d65d82210d3e8ee21d27ac62d5c703a623e1724bb6ae5a33b679228dd35e578023100b95028469d1d73399af198fd68829fda374b6b69089d187dbd0536a054c1bcead25fd0a6d2cbb540e21baa94a52ae0dc0302047c435bb5006630640230240595ef1c3b58aab203e12df92be482a6f4d24ca0da140a6dfeb29e9999cfccf224dd6b548f21a156b8cbb4600cab3d023074b34c428c1bed79d0f6a6441ea13df0811d1abb7b4233ac16db7b446bea471504dbda3dafb056bf1b6a698687d02cdb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307e6e6c1f5a2fcefbd960c962515e93933b404787bf075c387f6312aede295d76934dab88f8a3c466096c6279735628250231009e802e05e16dbcdb6ea4645fe3faa7454b80e999f5ac19ae7f0048d8430e1dbd4f07562ebe6f7b07b83d8d1dd26e8dc80302047c435bb500673065023100cadc678b04067896725ea2fa8c86ab08e7d56c37cf7dd4436e0b6c9ee4a513cd27fccce9848a0e3235faf584f7a7113602307166172c2a901f6e9ef79d550a85b5665df4067121adae956e59561b7b3a80f37e40f16c2216f6ee62eaeefcc310456d0302047c435bb500683066023100fe1253e7308335e4d7dd6d3804acee5a35926bc539a660505c53d9504679f08c869a953603e72120e637b82d4e5afef6023100a1887c3097845af490afe1954dd37883b836c39069f38c102065f9b4cd9ed397da873051e9d392d8b99d53a8b854dd380302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d5dcc113cd8a8a0dd8f17a6a2d22da12bfd8ee8db37f5d1fc071510150abf41cff6e0bd2febc29577e83566b27de8952023061e241ffc32bf74e019127e150b6bd70d11b765e9fd78262a560f59f7cec25f5b20bc0085c58945240d5decf7e26576d0302047c435bb500673065023074ff63b594650e429eeac5ead0ee213e144b4e14a2fab40d17b0a59c8a265f89216e9d7f0d700f2137abec78617f94ce023100a6506059f9a39bb843fc6e423fd61af55640578b3f159f4287894b6cb52657f97c5bf2da179811fd40e4761e83f696710302047c435bb500673065023100c24ec87fe902a299d063971f44938a0b8247ca61b0f93906ff4a2fef0aa4d276c165c023f9f924e4b26c50fcb4f185da02304414926ca9d878670fa338715860ce45beaf4e1b0c05e69c37a0a7d3332b314f8e29bb95da530d74cfdd394fd4a8787c0302047c435bb50067306502304889b636bc5f27ebd534ad279072b2c72124c6dcd6a6e7c3921f78dcbe2edd16a68e2306cc2e380835b55715b0b57075023100fb42d7fdedb90cfedc473d833d103a49043d124da2cf3ec6ace527c35bc46f6f3728ee7a2a11c94dcc9d490a19960b860302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ec910aae2a7cec46f0ad24cea87158eaa42e28c7386647e585d8349660e3630dfbadaf65405e0683858db9902b3253a802307b745af5b331110454613efc9acd937f8d7c9716fc583b19f61e09a7830b3655acbab577e02107702d92d6ade95b59fd0302047c435bb500673065023100b7879b5b6d4155dc140022c0a3ee519ef2cb920d53038fd17ecf19de160a0db6655eff606c7bdd599fb24b6351741cc502307ca99466dbdbad52213ddc3be042c58dad5603185a9357671d3845722a13bfa5d7a25cf00cf1d4c30b3b4c94c1fc21950302047c435bb50067306502307229cfca19bb27f6f549dc8e73727987cf1f3b15f6de3ad806c57176323b9f180d8b1830d4ad4a12f1565bbe8ede431a023100cb5192b0cdc71dae7c749033f96a078d471cd7a87ef49e7f335b71eaac773a0062b130a20bc9fcc236a77cdf6780056d0302047c435bb500683066023100f18df4277e7e2d462b2f8a5ad495fec6c968e4cc3ed604516f724610bcd669757c6e4e0cb33a53afecae31bed563ad70023100c9f5cce92ac2348066a12b990e3abef57e7f26d628738b603a70e90f199cb86616edc43bb3f9e2f0163612dd9bb62f490302047c435bb500673065023100d26f0137f003f7119ce3d351901d65029230c91e160d4bd3ec2d79248aa7ee9fa2f3bd5f4d3ba682c4f9a276340c166702307577977cfb10a50b55a770e10331a170b56d688810959c60db5bdaf7609684ba531b006eb82c2f0b13d9e72f2bfdc00f0302047c435bb500673065023024d23381cf9d9b44f64cb99f4f0da710de8ab618fe25bb3d275793077d338e97ff9a1f2032fc46e8342c909657554ef2023100b4ba705cc0db0c554542d864eca42a8809a5118d8b4266c147559f963f1516db0000365e37ed71aba612d8c709a44a700302047c435bb5006730650230209a8d0378ad0f7ef19c0277886682c12432213505f4f21b2b57d67a3ba878d98ecf4751df335e0b3a1d92bf7b90cfff0231008c36e21da1a1b8bdd7a83c9d96f87ac96963092243471d78c6e510364f3bcefcb7bc8694a50e054c8d2903959b2c192c0302047c435bb50066306402306a0c326709572c95f8fd87f041563c4735b43d9ad112cd28b2fba7dc07e56d33fbf55d965a1ba6ba4600dbb1755778f902306ab8523659afeecd28d316d585c41d22f99ebfac70de8bf111b591bd99a574d7535f2fabb1805c2d60ed3fd06f85380f0302047c435bb50067306502307b05f7a4a626d56981dd3f64bb784cc1ab3828f0522e9a12fe8f9bd790ce0f9aeae10be3b5497dfa2d1ad80a4dc9289c023100ef6fc61970d3c5591df0aacd44a07ae2de1ce28a13901092f12f3737db2b77917cfda34b6c8adcbb3005728f56a3e7ee0302047c435bb500683066023100e6a1396f76444e6da09c0fb5e95519454c47da7cba3579b6d574494147fb5fb5695a229a0cd4150745cd2e7bca0e2bfa023100d4c893d3b7a4da9909e16b6692df0047004ddc2416b1832d7ee69ad22d1fd2af814bdc5931b2217593fd2f4da78dfe670302047c435bb500673065023100f2a0d7223ade9c9a70a87cd039b62c7bd2a9adedfc34093613bf5f997e327df6de42589688caaf599742f3099d06536b02305132c14032ea385b2d1c10d2c6da95549158c5d860c07972e036c9eaaeb4f29948242ac190f4455df627d76fae5696ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023009a4c9300ab55de8794c505c542d9be426834c748c306b8b94cf2c98d6f4528e0425556b1a2956e23352f585a68c3aae023007ee412baecea842292b7a767442405cb7fb42d5dcd13bb4df8d1301096b7f273bd387ba4433cd1eb39891d4f37e20c20302047c435bb500683066023100b0869003d67bf3cf3528be792f78f30080ed2a11374defee3bb7e5f2b854fe3f91e574fb622f8edc696b6f26de020a91023100e6902909afa8a898a86905d55645ad5e7b2b330d562c59a96db0767bc39ee999af1f796c2d4fdc5a062a841dacd3063a0302047c435bb500683066023100faa5c12f3992e449eae5d72681147e56681d4579be53ca41b67385bc2190d7f9fd66a14f1a2f628e103c136c394e87870231008396f0f80aca5a9e7dba554e6964a0d3626be25eb4ea40763298cdd3a6c63860049db8c1801ac3e9b461e2cd22914fff0302047c435bb500673065023100b6c1fbb2dce158a9c2efb5b09c0a0596c0ea4fb16acc57b951fa49a954d9db5512956ea975399b0239c8b762a14333bc0230306a72f6561f01a6c35b17c94e042a248af72c36e24fc7d2c669bbff71325d913ddbd0bb50d56cb9e348ca6c8cc6fc730302047c435bb5006630640230595b27dd4cc676e953ce7474d0d13868386d0c00d88039c12b8149d0dc3f82ab58f6c8cd1a07467751a8adcdccfa14b80230305f9c88591e05d6638e90e67a1b684fc272cd844cb3d892a879a156a36d2cb65303fd4f64be1cbb75837723faff62060302047c435bb50067306502300c1db54416746305746027e7dda4e9373ffebd6a1a420c0519611d1982e63259f9fe2eff556335091337eff3667551d6023100d9de4edc1d09e7f73ffacc6c0b131b285feaa2d5ea03eeea51ba06d39e2e880f5aa6a21f07b664ac1cdf7361cc68d8d10302047c435bb5006730650230337cee7acf0e1d077339c7c86c644157b1c695b54da6f9be1fd892b91318b2aa96d67c200cefe605391caa1bc811c853023100da87c33c4cbee9475d0219a628a78bbf7dfe7804ad3ced1a63c3b8446c24b59748fe241f5e2388d09834f4594fd63f490302047c435bb5006730650230441ff16331627f50716022953e6200767111045eaf6b009893bf64011557bb7db21794030690703bc2c7f665b9b22b30023100f4ec075dbef0b4d29cb29a3d3350bada5215563e59889c0abbf718550abca5c03ecbd02e2bc966a0fb52384c7dd1ba8e0302047c435bb500673065023100867eae0664026f3730534472593ecab36f90cd7cb7f4a74f90accca72e969cbc10cb98b5eb427402a7e831bbb880233f02300a24348b0c3904d04ac13932ee212a3eabb0be23fc119f5b104d082b2ee39209cdca4d349e85f0668e70530aeb3a096a0302047c435bb500663064023043dd68be461692162785c59203fcb5b4c161760d0589dfc92845a81b8af321e3532802259130bde7d0b67f98991a75a90230518b20a93ca28103828656a4b56ed9596ec99e761614b254e0923222d899266011c8981367e7ab134753c06b86ef8c410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303f075c00d9af5ffadfeda7a20f3eb5b49b0851edb9633e7dcff7ae31b138626862bd807cace4e31ffc62bb5f1144ce850230696c5b13f111285203f50a6d2af1c4ab76cab53750e867ac25dddb08dc636a11de29707876974a689a7e63753ccbdeac0302047c435bb50066306402305ccdf244e3581ddeefb32d822e6b42451a9f067a669af9f6c84d06a462f22f844dcc7e5d294f6550c41158cebfec785802302d0c8c6c6f5b696a542d6a7b321caf6734638d9ef6de6a16e9a863f230a97e2d2b50c8cd93ecdc6256fc3d888619e0800302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402300e47114fd520bb7d21db8c912952fa900e0c14c4c4bd7ae0b917994f9f26173777cda655da3ff93ece2b40f84b5313a602305dc1668e8c12971f9f96c6564229b56aec813c193a4224de32874c5dc0bd231cdc08bec2b830fd8605c5b862594926000302047c435bb5006630640230133e5b191376595b9e4ccefed66ceff4901ea1c94e2b5de3671acae096a533ccdfdebeb733e4eac52fae1fa9b7da84380230444e1e73a384eaee5efe3d983389c5ce74fd3c79427e77632909b40ab1fae68139be8b2da23ba9f8e2606cd94ce9ed290302047c435bb50067306502301157f12db602e2362e92f25003b9ca8716769e9fcac8dccec6f249fd29ae9ed3529efdfe2ba573fdec7a1b2910dad929023100e953f74a69a87b05ea1cae7ed271257a7e3d9c7876a38242f330c5b7f1d85ec5be311420938ce04d4c5efd0a965f91dc0302047c435bb500673065023100c81dd16513684b52664ff6738bec480e6b12fa0dcbd4c36b38011b6e90ca4d9208daf3fdb0fde368f69452535af005a2023025e5062286e8228eea252b9929f5eca3b9d0efa986a44a76f6083af47e8a860f156ba89a6f606683c1ba565381d90db30302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50067306502307b9699b200ed54be40663dfee22cb09a57ff832296522233a7b2cc6ad18ebda766e254122fbb2a2a8f1b0cae80da5dc7023100f578614bb87fce4e67d7da2cc6e74b99bced44c74d8ad3b10d7bba18f4db711772b116541af961251d50a0a0b7201c240302047c435bb50067306502305a65061a214dc74223868b1189487e202d9a90688a47d0b85e6186a080cff9be5c64848da7ce06f15be3aa4cd497b998023100850770e1b9a79391350a322d4dcc15d8c806d4e4cab49cada526ac48e547e2fc0ee9139fc7f26109b482105f90f0602c0302047c435bb5006830660231008846866ba3a7f79a3b0ce032d4834c57124b059c7a86b9fd87d2a3dcb1073fcc77ffc9bf53d8552f977398ca8ff1884c02310091b92fd22349f4da279a1fd553f49af796a65a1be34882c108373b32c3acd98a893e8b2d1f4263ed13085f935efdb15b0302047c435bb5006830660231008c52c1726f1a034103f1a471e2653ff8d48950d4ddb068f93115a536ce9a98bdfd0f51ed10ec6d80632352aba27080d6023100c9028267ee3c288c6efed5c7d5cc5a9cf62199047ecc0eeaa5cb54472a4caa9ea25f695a9f9c48978676bfc1218f57e70302047c435bb50067306502307f902e5ad4036d691fcad882d0bf8e92b0afd0b4d8e22b2bfa9bb4221b82e575db81ff255fddcd274c0c38fff340b8a4023100cbc0439603377942949701bb5c4946f4316eb36c5f884e9f264c288d7e3e8ad3216b0a6ee651e3b8cbfea45cb8328b750302047c435bb500683066023100babe432a5335754e2358f74cacd5fc862b6367d81cf6c0105e63f654693ae6b3ceb0aa8b7dfc4a81564083ce127fa9a1023100abdf12bada21e398095dfcfebe3e48bc8cfb45d8083acf4f036e6a507508807852a48d0634922730c5c79c149b9c641f0302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402304c3af025528cb3cac87c67d53a25f6322758f819936921db80ce0fd30f60ac7c85a2775048b07e8eae5cfa4e4a68280202303263c2b6c3b93a7b445d9ce71027368120ccc54b4aeccd2521093b2c33304d41881bd2caa33e610a8de51d4f646a7e8a0302047c435bb50066306402305bc7d406d1275dc5c2acf5824a422ea1a72234d55cc5adfc653db03e60e2c0de7a54f820c56051e0708632443594fb790230650df1cc051bd3862f9dfa9edf45820d03f609028df10e4943d63f96be92cccd5031a1408d4c38789d44d6db472f09220302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500683066023100dc33ac83a7d50eebb520d7da2559e7985bc4baa07643d8137766f63c97a61346d4b98471c868d961d1c773a406bbff39023100e3e26ec9115ff70bc0bc78c4d397851804fbc026e7515d0220962e3047fb96ef15d7c3541b9ad577b6218d87efdf9b3a0302047c435bb500673065023036a4e69bc6c09f0f5c3fa6a09103a2488925ac504342ba5f00dc575ec28f600303253d15a81bdf0d455480de695e758c023100b8b828e62197f8a3e84c146208bd67c78f9532bf22ffed71928856415aef4090e8adccf64624a801dca297ed6114fe3a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307c721f8a024e6bf990731e12b31a34857ff764462cac7653f1cb25423d3875b3a8937999147d86bd08339db1cfe724b902302835c1c670b4eaa515d049a8f47a5a4de4d64e4591aa20fade4907880a402da2e2d3a27481db3828190bd5e7d91660890302047c435bb500683066023100870ccbe4fbecb0e1a1973f9c8f67d7501ab52ba4b4004c6b5d040770a2dc2de6c02981e3b04cd33b75d7eb792c11a4bb023100fef68d17124f4a90595d42e5d5ac0777cf0ed469bb7c828f4f82fe0c771ea6506bc2c921ea1d773c32785de26b5986540302047c435bb5006730650231009e4c1e943e59570416de4bc674d674b409b2ea85092defc81a44ede70b492fb664beb24e5f8bd1db2417ea43befb8cfc023036275325a2905fac966b4b368ae030d72c04798d2e7e7dfd748d358ea367aeebd3552e56ec0a2bc68858cb2e171b31470302047c435bb500673065023100847cf271ddbd71b9ef55bd3cbc6a900931875154c28221bc3c24f32f2df4e76398b3669d29061102855c641a70dc95cb02307f4c3e8c054c9882ff49e8f6c3e67f8b0b6bb8ca8740ffba2a8d53aad3e4d46c5efeae4167e5637f50d84763cee561760302047c435bb5006630640230639b6dc0a478db3d0efb8203d9f0fb4469eb16b8de7cbed03834342b04993730b33405550a2398b90187ec48d7b7257e02305228335dc1d07a4c7a3a940fe80c9dc41f2d08579a8134a19c3b57fde4836cc49c22533e839d7320bd8db5bc3d2065080302047c435bb500683066023100e87ad18a53e234a426cb8d91946fccf12ef617afb728e057f255cb925ee2a96c85408918d8f305565c35066ef665399702310092b208efded692bc9ffe8405f6157b8ffd5752c7c7b877f5c77169905071886b353aeb84ffa6f54a6dd762b90d6a216c0302047c435bb50066306402306cbf1d1e3517ca3e31b5dc83bb72d9ab05d64468e00cffd9b93f23e5faec79d92a8e9ac295641c23dd02acb6e4213538023038d890731c89a604598e7f08cc396a1b28d3c3842d7d69fde704ef7bdf431e5db5181a7ed69532ae17d1c56e733baf8e0302047c435bb50067306502306f1d2642d340a8c666491bcfcdb5980a14d9acb3571007f325ed2449c8b94978159f494258fe8d413b9473eb1b5c443b0231009036ca95f2a48c78e81049efb27bbf1a8f1c72fccc77a654f2d99803ee23a931bb965b8e050039285472b48eeeaec5390302047c435bb50066306402306d08dfc0bc3273a7597f118c6336e3128f7d4316382188a3f9fa34493ee6d99baf8d8d84517c30e127aa71aa57f333b5023002eb6fb3304d4ab9e44903f31a6c9f6df2c5f919de34b5b085eda556bf31ecfa2904950dcbba2a33d8e4892d354ba9d50302047c435bb50067306502303c2c1f962e2eed3d1f64c6ccd45262da427865b7379b3ce0598c7bfa3b86e8bcbeaa0808260124954c4443aa6eedf70f023100a29890ee0c6e68a859d93d71667c381c390b0e59429962fc2dbcd880a178721f48029a773926a97dca4a6abeeece6f030302047c435bb500663064023078d90b010154e6000b9e8f088fd954bfc202a6c1ef7e41b16045ee379b880a37b2c0761eb8d6934bfc961ed466fabafd02304f7bb7d9e6def9ec60dbb8294a10351f277778e3fcf466bb765793673d516e8d6218180e1eab0f112b9a6c2a5d560fc50302047c435bb500683066023100e7156fcf9b3d360a47989b3b06d2e4a9a3b636f75fb7e2b347c0161dadab21a941ea03d6333814c15424d94914d955f4023100eb3e0a30d61e63adbc3a9318310178abced528234b05c1c658990c6e836c470a8d3990f779b3408f81217b7e07f99b160302047c435bb500673065023039374bb18d60d3e6edac3d739b2b9ddbdc8fcf38ca6cca4fd2712599078113b4c4352c8befa161c5cc06b309b529c7cb02310086cda0d64b748078156cbd7857161f9aef55ac32d3e6c08e2b4f8b445ff73c7e9c85402760fb82c54cb463b2478ed4820302047c435bb50067306502305f387fb967881af9ced49a61e25df7945023c5728967051e4d1e4f2f99808e0379a225f6bc9c79e74c454275e1317bf7023100d678f8d7a9018c4488e8571411812289652f6aaa3f90f6aa9c106066fb170d781c8ef92afb30e3314befcd53ef8742500302047c435bb50066306402301f8bf8b2aa83907013852d092245f8f99aeb0ef5b1d085ab703dcd9f62a49f25bb08cb7081953255f70e71db70abd1350230453a78d1239130cab1e3130653adacf2ee2c0055c9eed2afaa85a7cbbe6075f3340775f73d1639e3621f4dcefe69fc8c0302047c435bb50067306502300e36620407bd2d838f536314a0b9e3ebc8cef858886682532a53cf4ed4ffdb01af81baff3c80113b7ae5da5113d9a76e023100a07f54ff77635beff9d94a50b095de74265f3b94a2a09e05774ed0cebde1974fb19c1eb72ea53a0caba5099d1aa8390e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b9f923b9941292040192b6f07227aefdd0d2626cc833ec312aabdcc57af7d8e24f072f1111db164d42b1eb00a2c79c60023100f6b0b25761d4b86cce582d5e402072ebb88f1206729697b1ca5649e85e3ed8e7d7e6fd1654e6d4535201dd23493391590302047c435bb50066306402302748f770ce55df17d469e9ebe92c53464ee2189da5abf0effded9e7a1c14c94d74b849e2ab21eebcba7938d54e77426302307646355d54d3d0297bdb2c40540bc3ed55d66f2c65470f63a16981242508173aa95c4f7ec041701e04936e818298d3120302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c40d265111b254f7173bd503e148fcf1e5e98acc284c6a4e549bcf5eaaf74ae1a5e480a87bd2037b813875f2c83043ec0231008cc6484a94df6e069b837b0130f1dd4d716f520e6452d48897db1f106358803b3ee54a7d441da134498a1992473e209d0302047c435bb50067306502307f417f1d989a47ad4fb745a4a5d544194c47fe445e99d3399e477ae44dad773e796b2fd8d4750223f1068b3e7498c7e1023100bdd54e2afe720939a738e54a1398fdd11f218fb66bc370e250f2ad8aa7b73a540356d42e47a2f0cc5d2dec343dbf5ec10302047c435bb500673065023100c102b21f6e7c5114b2be7164634ac61c2498abbfa23c4b81d65f8ab46bc19e06b0cb8f34dacc1f2088af76572ed1c1a502307a336650dab73b96d07494d22227a9f7764a9cf0bb37a7e90141597f814a7cb67a5c4b09dd057256798715bfa2a8aa010302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500673065023100d225f04ef3013ec855426af113837c3de9e5b751275c022bad235c978680337e52014255bdd2dd5048c1b0c333eb742902307d9cf25c3f3bb5607d23182c08d9fcb9e5c15d7aa08044b152ec635264d6946774f406a7844ba8bf0cfa0caa1f7c3d530302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302261a533a1bb3791e394e153c254f3ac1d93f44dba98801694c767490a342ea7145cdbb80446bb2fb7fe160104d24cde02304d70ef1cc8181b83afac38c23a8ceb35fd8d734b2f30fdb2c780e939a7319b238975b34351f15daeb2c7ec7240168aaf0302047c435bb500683066023100f510c8e2bccb9877a48e13eed2df8395b1921539d888c5edc785025b761221958a2c00b22da6395668b015ed0b3c4cc402310097f01e284b02cac520f91a2a8b2bc844428164cbd4ecaa210566bb536e433fd7c8c614983fabaa107193a8275af25e4f0302047c435bb50067306502305de04186172717935b6a335bc36215bc29efe9785adc3dfba80369d92d78f56096421b8995d4c42e4e5bc7d7d1e0a2d4023100af4b95fe88eef41ee91641dc9780f0a29ee5ace70c804fae7a5eab45572d336d6b666da7db9f52b4dda79bd34af2ffae0302047c435bb500673065023012f190ecbadf6c4947988394794ac020c5346c34e87947fddaddfaeed7f8f969bff17e661cacadc82554097f1c9a43780231008c9bb469bed134b250ac751b2bb9f9e994ef546b66f0f92ed2d8f72a1444a169228e1f484bbded0659a45e5470cfcfec0302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb50066306402301d2cb3e0d49bc5f3d2fe1b3855cb82ca4b6e27de6fd9d9cef239861045b812a1f5d307bd4a3db9ec97eb72a11490dd1902301fca19fb0b98bf5a89d673f8788e16e2f49469f93247563cbf28d9c51ee7736602d7f042959c8bc22a03971f4198d7350302047c435bb500683066023100ac6299e6728f8de311886ec5030ed70d0eeaf5459fd152f821aa1b4c3d54fd54f441cf7840a01515f139b26f37467603023100ad378fffd5c1b4d83429525783bb38ea83d4f54a4f3ef18085228f6395c05566b5ba0dfb0008cf41bcb8b8a5bae219f40302047c435bb500663064023006a6c8c61d5435d57dce864d46fd1594dd960bd25e71297e6a3ed70b0de97293b4277aca1d18403dde36c547f048b6af0230261d5726d93264c3af386d1db0716a143c06755dadec12d587fe35587f3bfddbc31c3e9b9ee7eced36a7219e5127fcce0302047c435bb5006730650231008fc8a538395997243e03d59737f2ee65887f378ef89bd798d5a555aa4ab7230219ac298f946c146633084efcfe6a754102306f59a1fd8524b42f9178d3efeac6e7d82c2a0e0c8f5a566956b4bcf703a850c33b89206474606a180b90560dac6be36b0302047c435bb50067306502304619731f111dc6d3e5087ba512a34be34ecfe8403613fc11d4e390ecfb8d0d6e72e5b0e41c25a7eec23d52a900a06c97023100bb99a825bc2ce964af1ba29fef83374b0687a9c8daf0dee59f9df78417cb03c6881807ed6f720fa69e1607f774873bb00302047c435bb500683066023100b000da606b999ae665997613d06e5329282012abc101c8b8df8c20d61c4de5217526460723219ffcb6f0f5d6963cd00d023100de83f9d173940456d44e50ce72c8b0a96f6d90db118f81173194e23182a5296cc0f9d3640ee1df3c8e77fc22ca2034330302047c435bb500663064023072fc3135864e47b188cf8b289fa81295e39e4eb9f9e627a8f456ddb06b7d987bd763bddf3618a99b60ec85303db32a2c0230151138d8b556c941b41edfe72523fa1517389c7aa8695f2c83592679c58f65951e45efb14dcb1a239ad217de27251f7b0302047c435bb50068306602310082d7c4321d61214bb7daddea12892ca0508f586d8e4f055785f0244702c8e7953cee1c4e5e28ec18a588738cb53a81050231009fa86bb0f4b839f2d12f26b974a32ca7a9d4296b385f5d686e9818d417b67417995ad430da32eb309ae8a4257b7cc35b0302047c435bb500673065023100d51d1e3103dd2822c9117a9205c0813829dae8b7304c8eba88570b46d685aaac56523cafb282d328622c043e43cd29a502300d4745b42214f6ae190b7783b6a53d96bde3c41ce5af52b32688498d645299a8e56e8176471702bef7e2f9ca517957270302047c435bb500683066023100bbd7cd6fcee53d8d496b246e02c971667d81db1dd214a04caf91190c2cde328b8e3cdceb4950806349bae0d4b90e00cb023100bf110f6fe9f0afefe5e4c79bebc775a75fd2f6834025d2b937e18118c540e11ae80ba2464c2d2f5e405445c9df17649b0302047c435bb5006630640230416d6fbbc1015cecea42d1ab71bcd7e57c5a0be10b742dafe4c526d904354c7f01d84b185fb059e30e7cfe896089a97002301a08cafad2b2b964b1dd361f46a1c65d091aebe879e34f3487489437bd717d1ff0922eb584b2565f25543de18f27d4c00302047c435bb500673065023100c53b8ec284c080f007f15a03f3e853486b30b2c89cb48f6ae4edea002ae16c5e84905c0953eadb943e768557efb6e1dc02301e44b945e050fe72dec2ef0aa4fcd2e68af7a391dbe71e4ad85d498747177151d6a2fff689f3fc0ef816615deb37db950302047c435bb5006730650230657d891afc818ca50ea8615fa5e6094315b49e2cc0816a154d5a4d00a89b5d8ca0c0d9c50906be558e61c30ace1944ea023100b7c212272612b5bed75858b9fc628a0046a14ce5cd8c911aadc9ee9dff4c230c7bdaf1c63c35f7ca04b3c77f6bb3174b0302047c435bb50066306402302d9a02564c2ebaadfd711420f22059efd13463c33c193040b996e7335363baef3d0ae87a913f7b05b97e70be730123f1023025370e3d55fee1c9e424e4098972eebe98d35b84cd119926424130e3203bd432d8630be3fa5d38420f31bde0e9aaedcb0302047c435bb50067306502307bc38c8797a1d314d56420e6d4aa92f8a592ba98af95119ccd7cc443953f92fe6b4c9dc0f43f4191f33916802fb8c54b023100f80669d3ccf9ff07d18e036b38d66010091ccb533a8d7d31e1d1da864852dce687e1dbab927858055e6c04386ed95e1d0302047c435bb50066306402301d5e00bc53b5aad5bb5e68b29d4a8119c9b6709da5740db9c9215b24456926de0d6bc288256522df549dc7c1338267a8023048f13247b151f9fb743fcda1ff728f1509ea0feeca73714b382d4253d9a0bbe684b3934191a4d92413f3f2417388ef740302047c435bb50066306402306c5bdc3e8cd6b4cd6f6797461a902a616b6d3233fc92545dea41007c032c3fd6ad40b36274df4342fb3169aa5657085902305c4f8e4d1f9e592ebb6d011fe0368075f1ea497813cbf5145e985997953b5957e249d3810d15960214f3a41c5e668dfc0302047c435bb500673065023100eae150aeca14c551f4e783ed7662b3090651ad5248d40a9f62561ced3613b67ed5424c5d9ec764babf47d2d6be05742802304b97801fe1ba6bf92b3212b8a21877c72b35d25b8ed58b845b82cf6e0c24fc733f9071e695a9ebe26655f784e37b70aa0302047c435bb500683066023100d688147528d104bfc4f95988b66dd801260a6e4e3b5f6e774a5aaf22c6a98db54c01f140bb5ebd7fa25fd7e10dc95ab4023100b513337fa0ea7b7ea0b72f49660a608b7ff620b7d3b2717fd7db441011a2bb9a981c5967b8b53f337d5af8d309d3390b0302047c435bb500683066023100e5ad19cbf34bde0e4ff855ae8a2ac38add8fa25489e601a11113d91ab85b706139b80752adf0fea5a51b6fea06f267d3023100d6fe7ab4c5c4c478ea3cc9fe92e75d4033633702bb020f8664fc88c1f7c409a32ac819411957250861935dd4a75d83fc0302047c435bb50067306502302d046bde5e543910b56cc7cf1dc8a2c503d216ed82990d9cfcaad352292124483c467ed8467f2b40a6d0636a4b8603fa023100b6f83e5f71691ecdbfaeb82cc31b823a23f544093aaf0b1ea32c1ff9d2f7c2fb0c43c1e0e06e4e1cca4958c7416a1ca10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303a61c2cd4ec0eda267dd6f1424af07e2d58df64a12a39a4a7b6f0f518aeba3be36fde69b0c8fcb3091d1955425cb93bb0230512e398b07cb60da62675876c955959c355252c7c7af38a847e4422d199645d92e5bfed98ff6524e49ccf3aeb1951b2a0302047c435bb500683066023100fdd6b292dc69a550bff52f26ecd7eeb2a1e5c16fb3b067de85a9cf4461f06937bff39cd08966f69a224272cdcde0ae38023100de3a440a564539ea8c79bada768c41916e4f74455d060b9830827daaf7792aefd84d5a13cde773e4082bc02321b7d6af0302047c435bb500683066023100aa1dba8466ac87298b817dd7d25449e1cfb34be69d3f40c51743a5ebcac3f71142a17df70864b53a37806bf7246a9555023100e5e3f867b9e3315f0b2b8cd8270ebedbe2d0d070ad378768b397cf5e3664ed35d829de73846b8a770986f68ad38258f30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bea6e8f4b87e1b85b83f80b6b8603570fc5141a00f6988e4d255e892d7eef04f48bf54cf7ea4d1cb9be862126c9d17dc02307e3796bf32d106f1e38cb197a9662d8ff361631a03427087f0727c31f0c38fc78ee754a6aaf1a51ecaff857b9a1921ee0302047c435bb500673065023063d2550d1c820038a8e30d791c96f358aa7b6c34374396c7f5642fb5b991751792c777cad4b30eb152b834c66025f46b023100812e0a3cf7142eb9a47bd60325ed4b1095486fe157edbbc1801a8d08e43d73bf2cb4bb800f2db91b5b2b883ed2f85c840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aa896d3db443aa5d0fa81faf1119d364621ebf2f2e406e8dce0b4c337434c7ee1d5f0cbb56b05ff3aa4bed16272630140230681f1e29438eadbee6c1133a31d4edf15b87ee8d60dc8b774339ca693d4451adb496d0fce1ccf206aaa38b7775dfe6a10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008ac8e92595f5e3379051963e64c5cf9932540fcd2d5ef8e6908449491a64c9c4a2e11142ee733dac17e4498b236da05f023100f50b8bed0a20308efbf1153dd08242238a2cdfa1f6ebfc3251b7948939305545791eae65ba8272d10f46eb43b2cbf7b10302047c435bb500673065023100ab099255d7f16efa9c2a6938aa19151af1da293844faef492260e38c3371ce2a119df2edd0aff26c8f13a109a2a4d49302307d7a523c110db49ff081805f25a6e645a4fbb47d333f5a4a5ca844edb8fcaff7644d3fcaf189b118e546f7e2ecd58abe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305b3975cd1688a9dc58a151dfa1068435b775036553f871cee783f66d0ca4257541de3b316d7446f5739b6abff14484a0023100f6506db1f77d75faa126f5c85f9ae5c7348cfeca594e7fc7920290d55d07d41463ada6e06b87acb42c1403b4c8e281aa0302047c435bb50067306502305903d21f53c3e2b68177bfd4766a92692f2e2276979efaaeedd1307126ddf210b10c10eb186bb3e9f3f8a6625f0eb352023100a4e959b3673a291f81405d480c149eb1349e1ce195dfff97df1db36edbcc2ee5c099de87e23ac745f9be6a94e48d542e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c3dfc731c44ff050dec75a309a033155e3497452b69d0679aa2c1064e7ccbef05fbc626ea72b7b13bd0dc222c48d85c9023100e9aac9ebcbbaf207a6c81bc00059e2a6c2e0d36d1b99b4d4206b69facad59e9fb0352719fc1d440ad41592145f1d36f40302047c435bb500683066023100b613bdeca9dc757aa8abf121b6a377a77aeba0517848d7148e403a71eb215fb676e15b2f8b4cf30ba758f1c90b27bb0a023100b7069a47729daa45b232d1d6cb2117eb52303677ac0d5f5f8db0e7cc3777ab923d19f82beb3dc490e181e117ce5e2b200302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023064db34d7820a242bfe7cc7af153d87dded0cd3d228b220461d05f2a405ab6349284988751d738e19d45305f5084b862302307c6056a3da8336edf8c4a04b159d5685db77f326385d031a35340f9d94d53aea6eb991bfc92e47390f64d36d16485d920302047c435bb500673065023100f40824f629e90211ae8c75adff8968aef5aa9ed1938886f66361dec563c2c63509bd885552416a17008fae2862f0283602303a00ccc9961d69651c0aaa18fe47546c4fa9d87709c90ff0866d2df65c86fb77486c7d4dfc8f7742063bbb1410fd9bd20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100de4518bf4574f30df124a31bc4e640184b2ef95ee527f21e7ead1d57f44bd0309deb4363fe05808cbf5a406371f0c37f02310085c72e46e1e5db3a69501d8ee6d87d0aeeb3a5135f3c56cbbf1ab3107b7bcdeb1e0d26237c8e152c4687cdedcf22e6ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b26c320ba72b4af92475befe4db0210399c044dd0d941c7f235620a6e6844c3d3555ad0b810d5cd4079b89764f19691c02300d258195336b7303e0eb8e056ba123c35df6093f12afffa57f67d25304d4435d8a500f6d66dd2f5705a0327eb5b5004e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230161ea6b882e3288ed15e9b265f11ddc6822a0489c244e1072cf99719a6e3e9e0c3d8c5b76d275a7918b0754e41ed00a50231008365853cb48edd0bef489ab3a31312244ea010cf9ec461c995cda8cc13b18027479aae29e49e8fbe8c8a11da0804f3370302047c435bb500663064023055486ecd79444a6abcb84bb1897d7ac60f424ae6cd94e6103181e057d55c398c0ff919df34357f689358fd0eec3ba25502302db8237f7c2198f6cd879618a21f87b63e9f9e8355f5a0adecb9263f9dbec5a0b172cb38c7f92997d380f631f36e6b0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307fa9f87172384e4a0316a07b7751deaf40d4279d7bb620df2a8532103e79c49ea96925c2201a362913567de79372b70a02303180d915a568fd090669ae77c848c7f493a59a5e4cc8e65cf12f22dd532777440fef8fff3298363e53e5483a40af587d0302047c435bb500653063022f473311898ab26327c0791475836385564f6cec23c7e38571f2c7ab1d997ba25c49ae7e11defba76d5728f14d6d16bb0230022bc9cc41e9a4eef67023450acdbe07f442be879732f928ccf42b48cf78c0304b91fef318121a8f268dade7f1a443df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b0ecd68f2f0a51b7746000bbdcde8d2a850ed85618ee4760af7d93353730b67c4eeb5927960b5f8a9ffcfc77d208133b02300c31eab412b82bfc3eb47c8d168ce51cd51b785208443b856424736da9527024cfd024969182df034b6a82e6371305580302047c435bb50066306402304b13bfbfc747badab863afe33432775f40bd2c2bd6453f5cb9654b33c1358b74634ae013f68e33040af5e01ba7e6b95d02305b87cd77019f591e29b84e074b80979460f167c1f445cd484fcbf2a0430656c46ed759e7305f1f2f416c4fd6b2ba7ba00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e23a676f1a731100cf01a759401d25310138f87f327bf06053e6974ac08ac042ea98490c612a6382cbb9745f82a63f38023100b7b4ef80dbad5d257ad65385b3d5b23666f65dbcf4767594a332e858ddbbe17e22ae2cd3dadf3e5cad0ec8ab4f5346270302047c435bb500673065023100ab63dd2f90257d8e88143a99416aee09da6f4b946d219263b26c0b467022ff47a91dfc5fc8ccf701cb0a2df98f79f69702303bfdd06de7ac5ade97521124c288d43d290b495bef93fbfdfc9a831413bcaa538ea4f023068f7956c71d5448ee68eb2a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b2756a2b837c75bd61819f1c0213ea0db68e814a0edc96a09f6d61aefcdf41cf6f43db019d3a5f2077281be2cb293db8023100dfc92e8a888786e4f533884d78908fa62177e6e1791f303fb84307016fdda4cac498ac7a4365de0c7aa7551f64a37fc60302047c435bb500673065023007fdc0263aefd1d658cc69e79c150d4ebeb6b4c096e02123cb0a1b78d7dd6b32696d3fe1b7cdee3f953cf89e2986016a02310098c8ecfd4f57adffc8a7e9706ca7471f04b001debbd66b80dd0c661ce2fd6e81e799754990cc3eed772c9388d16b18040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bbc2a41e5cbf7ebbca72687cfc5f8628c119b3e7e66a5f8e14af9ebdd56155d31106805412dcd9b960b5c570ee46c3920231009c71670b145aa6af07a6828e4bf8acfe291a2d8fc9302d9e6cde971e18fa398cd5f8d66592b1b8854e5ddce9f3de5f230302047c435bb500673065023100e6e5ae10c1101c58c3cc50d73831c71d61cac8d11adcedd7ee4cb83202c57bb1f1eb0c0b89d9366a872666d00c56f2ea02302bda31a588a121d98c5b5cc5c502878be99264a8f93be9e033bb4b3d2696e78e9e58142d23b5e92890485c9a93b010930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230604c60a1bef878273913fc0a8e7fee7ed16d44d1e06b82a329e4994d0289dd3e2507a7498fd1a1205928a26e359d5e7b023100b04abd31070239cc31a977409b563113ec0f19110ddaea1b111787fa256be009dcb869dce05a91213f5b0cae217471b40302047c435bb500673065023100aa358ef4392fcda97a52603222a9142b29c348fedbe6a17f405e945032b9d7bf912548acca5b14a7112b528bfcef54a402307cb0daf9e5d8adbf2799b355c715b2067ea670eca3b0a1ce49cad3265edcbffd96b8b9bce4209b0a20846afd3ca2135d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009bfe93df5d53cc60944ba498f5900b67f6f3ee0afd86c207b8fbbf97bde3807b90bd53f1667f9154f5e2bc64fee18d3023100964daeb53fbcd806965251e52c984b287d823a798b0b02d902c89dc0d91065d150988fdfb210110040bf513b1f35156c0302047c435bb5006730650230178ee8020190263694637d68f9c0dc9a2b8fff5fbfb245f625a3f2615e9482f7fa593f9637008aa6b9d0c5fed56b397e023100fa29d3b498d058491566f4ca1165ec266c6b6bd91846a68365c6c6a23aaebe42f973aa961ddd35beeafefdae68badb920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310082c49647b4eea9177d3b98835e4580deea42e74649b16b4ad14e3825f9181e72da914ec260f965c463c57cbdcca4a69302302ca83b2c7c8c5e5659c43ef06d922a85857060ee09587846198f2684971c0a1d9970af2023cd1fd16db2c4623a9aa3120302047c435bb500673065023100f3b86acb9e2d6da988ff5f5e251ce1c8601ee84c5a0a880dc68de0a08614983346b443dde6d36561c70a49ccbf01468902303dafacb37766b8ef1990553b590ca6b419cd91faa8ede80dcf1a9fb0a6435e171a9c4d23fe6e34588f0070880220518c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023027206fd50b4a4748bf1948a710d6c2e221b8f770e47c2db803f084e11f672fc9a4350f8611241507b27d11317ea80fe602304017037f25906352c871807fb3a59b01f87b4bbae405f3febed4fbd3ffb64a1047ee3fd5fff6dfd6942caaf4a044c6780302047c435bb50066306402301e4284703875b8edf564d790f0f8d9033edced3b4d768c299d302ed63cc43627d556efafb4b3e08135c5c9e52ccb009202304079b7a2dd2b2e02db4b436413c34d806d5b4f0f75fe6248cfb7e267d68609e35716da01b4cb6b0c2cacfac2dec43d710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bb0edf93231e345609a5c36257786b3f7b5b58ba10bc63483f361c8aab1612297c2c8e25243255826308c6a7c0d09bbe023100fa3e1398633906f866065e6757f8d982d28d5134819dedb059fc0e5c431fcfe27e267a9ae88a772c9d82dd599975144e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310088ce1c69df77d7a4c7592aa5594cb4ed6ad7f2febdcd1bbb36cafa5584cd5d2317fe17212d4a59ccc5ab1092659d1bef02302b0fdd86fc797ccfa5c5fe73116cc22c8a5faea8febfceacd1f6816de2125d94391b0a5e1ce786849dcb046d9e738b8b0302047c435bb50066306402306afbd5212af9549e2681202011780cc9f9a17efaf71e0e65380105c07d1dda2b91723d85f83e5b42393c9f3eb2c5d273023040d79fd99f34061c4f04b34838d0efd2d364058904ce508d87a4ab187d73561dcc88e1f8b987209aa26e76fe2f8f8a7c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a394c7642f1680a37e84556e28267d9b25965fd91df8f4b54eabb36bc0c02bfd07410f234aa2e7dc368c8dc0f9115f13023100b727957461a59667aac8d010f73a86e2a81779c2a7179dd4281b84bfd5571a7eb54e8b62e43df778aaf03241c78a85b40302047c435bb500683066023100e75b80961716ecdb0765d9a0210136232f348dcec344e231562518118f3ad1769bb12de222a21a669f5958daf1d6b8a1023100b8770b47a8c0a0d920e6614a5b89bb6391978fef47953867dee6f1706b1cbd639e674d82f7c92399279b77219437e50d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300d2fd1767c930c9a2e8c4a3582bf632527b2118264e1d7a07afe983c7f9469f6f2fede4ec535003f00713868a989cc2e0230200d167c249f1c9e23e5e19c9f35ef139a6d6b005213ea32a7047e080205d98d2ed33bd015831954bc3aefaf3ee32f670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023021d95735539659d7cf1f965961ab115c6dbfcd962ee9c3fc05fd1424d4f80f6a183847d45ada148c10a4736985578439023100e0553271b8e47ef696584888a40b4fff4408e756693fe3700eb235250506c4992ef2a98e9f5934047baf50cc1fce45870302047c435bb5006630640230506f62f1046943547c6539430f53183c74aa57c5e2ecb766752eb6cf112e17ec1405b6a91c9178ae205bc1ab2f51e14002303059faf66578cdec7c90a7dbf8e5ba73ddb7e128af488e149e7a9e180c1f42c4007136f899dd6251e4b35e8c5ba423880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023072f69bba4acc81336213890a41b0907dc7a71443a40047c8c2f58ebaa2c75efe122767ef862e836ab833002216de6f0d0231009d46e02e800b7f4444301971fc5c2cdb63822f575cf009a5408cbee3f4aa5ec23b70b56f605220af8922bd6b967c65630302047c435bb500683066023100f125169d40477be849c411e90de64b199f614a32d3d0311e9ad22d8379008dff2b024e9201c6b2dc7c75515f531782ea023100e3c17c3533f0b9392c4b7cdc79598b9299dec359d654d34995444c78410f7f8913579325b9e63c5f46feed8247627df10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b793d194bbc1408e4a804bcef2d4ce3d9b403bb5c7bc49e37fb68090b9dd93d83f75f1fd84cef1c2385991dfb4f030d4023100bafc72b3c911a2607aa6c84439fe319d0add553ab73ca5b718e319a05426101c4197d761b3fc31631d98ee2dc238b6210302047c435bb500663064023051684abf3ad50a863c3550d85c23a3f584b2c99634d0658c5d68d952d0630c22c0c2e09993cd2fcb4a41cc2f876faff302302e6c28317f603f4ed2612462654bc057bae6fc1bf6881bdc963603da7c76f8ab43a691633259d1e6665d9737b38a92690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307085c7dfc5936cbc13aafd3739fc3e5777cdff00a575c6203fb15244f8324544fa4a65dc259b7b847ee55efa29a1fc3b023100eb2ff37d13dd6816b3b8b6d0e84d1268dae3722406afdf8e54f475a7ae67c78cd82d455f96a086b4a75ba304fe92960b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009ebc8905a308f995216130c8c59fd9840c74f1077af0f33f34968755e1e9e6de6af061a5eedd20ebf6cbf8f430f03db9023100a0115725404dea4f98a8940d9f797a930c25738d9f9c52db59ead66482574cb05b0b2d0a3723f19928351c7a15f9decb0302047c435bb500663064023068f61c0817090b2733d878a5f23dc46950acf57de8a0a8abd7d5605e0db589daa0a17c3280b0d15bf2863e1e58fe45b7023075fd42a3b6b21aa245116fddde3fc0a4b8e3515849ccb798168d056851555391dc69705bee890f539c71ebbcb1a5fffb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023072d14be1895221b3f167de48de07cdddc3d31aca054b86980fd8a378e9c869f539d8a56db0dc3cc776914426005de7e0023100ccfb578423aa8439215b0de720870cd44a39690a672a4e11e91ecbdb0361bcd35c49092529285806420d8eeeea2b1c800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f3159895e36efbc9ed56ecb8d0f672c5e9bfc7b9b3092adc66249b67562b22988d52ae9b067a7d1a1c7359ba3fda56ee023100f621e5c07f145bfd8aab6de666bbc5a2d7b749dfb4c81f6898146438b2d8982addad722f4072131337e048254a6617610302047c435bb500673065023100dae2fbc3bd15961aace4ff4a1558411af0d2451a08270481bfefd481f4c0c0ca891f9adefddbfe3b4fe4471363c54d7702307c98c056d711c5018ea1697a00370c27a57a1816fc058acd7e7726350a08b9b5bb244d3a71968164cb83fb469101814a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100926e9426c365f1a31149aac6ae06bf3d1664b0992bd8e1104190caf805415b0f598a84e5cc2ac7bd7b2a632f34bfaee1023100a96a342e8e39d997ff745494305dc894ba242adbd581ec2a64d2341f9f03e1a7384826e79fd2e3e00d6af2a595334f1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f7cf5efbd434538e97ecdfa812739279974a2036e80f8fe12d5601089583e4dbf81a908a796910f7d0895e5282ed657f023100bca5b2ed745fbd24dcaaebd4a46e65795a994e47c311cf73acc8473950fa61972af4f98056af87bdf8ff318c359a463e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ccff0fa67d223eccaf38a83101a821551f582f2d650b590e2a7081d82534f56a5b3b213e3199c1bbed3e85e5b93f479d0231008d1f31bce3ba317b039ec288bed73bbfeb83a568f7e68a0b719c6c86a7fe71828c4978ee3e1c4f6ad06442ae3b0659fd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023034b3e827066a64c07eeaa070b99035d4bc8f975d229c3409685433db375aea4c55a4ed4107d75852ff250fcbf46c072d023100e7240ac34b8704fa66b0b664fa7b3a65b1925d6e02b4d4e8d6f4912d5e8e84898025d0063230617ae7fe35ad5b531e870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ceaeff72a152d944ce9e8b1d869e0cc5e959a45c97e139139fcee72d11d4b0c168ed062f552a126e77724799e7b3d714023100f80a76bc189ad480c50b0d49716ba06626da10f1a79db9b47677ef0e8fc774f65111798f5fd373fae6824abeeb17e3b30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310086cc190a90c0819ad7e9a28082035dc58fca20c279355d4ab67e01e2d23d3973f1d656ed33fa1a64015dbe923a4c5c8a023100a8a7dceca5e012a29a62a1464d147b379052dcd08eb2e674b870471c9f7378b695ecf509451e63557754a9b4e115f03a0302047c435bb500673065023100998c56f0f90f1761a79abe912ee495551fa4867eee334e79c619f3617141cfd49cd48c748ee548e1784470e5753d1fab02303fbb9f1b80c00ebacf4717499267de5a13945add2c741e247751998be7f48cc666d13114b56688faa737d1c50552f15d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305bbbc3e0a3c2651b5fec695dfb5597ed4cf52c98a5a53caf7d05320160796bc8bb82d63bc1ad57f1b10ba8b71d0bd75d023100d3b66c3e0582b82b92a92c3cb9223da17b5c67ca95981f2ba91d6fbaf6ac375f7be66d3928ceb432b308a0398732d0b50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a77ad6ab365754e7ec26a9c6da35d488fed2ec90ad7dbcac3e2bdd6525b4c3e1bf4a37b96e00d91f8e69968d37c161110230711f7a2cfe202cdfcd1f6c86949de2be1e0b33e78e7e2178db7fb57cb4761ae200a0ba4fdfb581f5281cd76c1b6ab3a30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230447e9807b1d7794d77b0a39f9135fa18c6ea5274a38c00c04b670f12076b57457a0b152d87947185ec02ba152b7c25760231009b33e6e55164df51ed7242ea214594c7579683c6d2ff318c44fe1fe80d8f1794b4181bd7047ba90121c03af2fc3d72dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023057438a475cf4d0fa576c5359da38fc5a80cee56410613e960d14c2a93fbf4bda0542806a3876c8fd8ced19ab334841570231009c71d7a23475dcc7473309194b11cfb4e57185e12a3acb0f357fdac7d64ae4973eb20501927bc0a0bceb61b1a3f63b2a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305afa5f44be0b78fa8bcaddd0b109e6b41189e96ef2b81c2a8e20d7fc1d5d3ed52d9fd9d199338cbc39f409813159dbf6023100f33524a2385903ea9c166cb658d57592f495377cc542f007db3a3e9b44643e31b6926c560faa06a3619cb887b81048c80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310092a4fed62cc3bd4697a240919a269ef4101f7cafdde23c7e5cc5415ed52a31c68022cfa4e7ee90d432681d816f39972e02310084d7077da664d021490b8a7c4674b920bf2b92b53bb0d6789f29b7792fb18c9ef4171ff7f1bfdf71d6f1318ed81fc4f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300f19f0a436b6fbf16ef58593838258e08bdaea7d8b6178bbb218e32fc74a1cbe1dc7c96687d8f35250a4e349918b548b023100920bd25f4a92312863b0168d073809c35931f6810364c959d64fd7239fea2145fb17f96c264047e8b2c0888ad90644b10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100efdf64f2d8f500fa5e66ed696cc8f966f81fe7af587f970d9526727cc85811629b109bc7f96b3609ddaa864fad9d5a5702300adbb46ff28b1c44fdada5f0f613d255ff3163923ece9ed37391ac49b17b407f1b111ef71491da512912c3adbb3b99830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023042ae66ea1a40e3c3bcb00be84eb96354ec24a4348330540971e4dc63b5771d3c78e049843e4098a51d9b5eab2c65943202310098cf37d879cb42c0b559b106211c357c949e9d676163bea5ac41ae5cf46783510b228818158ca1e7d81d6fb463fbd4d20302047c435bb50067306502303db17d84b25748f48cbe0225372165072cb24ae8be1056cb9083fda5acbfd373eb783e9fc094184130e3b3ff92bc09f2023100953c77ac147be20d9a1398ccdfaac48f148ccad4366a77ecde3fde646faec1715ee02142622b9d6a8f07d8f10f516ae80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023018091cff291a90262233ef3b4476101aebefd35bb1e4bbf2e7a9b08917404f5d3a0300e3835bfd62777c284e3c853a150230722187a4c7770a8ab64be4dff14bd442e3d7a37bca1c3196b6b670db754e26c930f003e6f13d5ad51fe2e785fd6a19740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100acf36ff6dbcb475415f3c97ed3250809b3facacd781278d7b6512818c71eac8dbfc15e033afef68f6733b42f8a9b69ea023100cf96f252bc8094fe56e6d0802181bc000e7e023dc4985bb42c4111942e6f12afd0a7dda7692563bfde043b738c4960df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ce117225fd49401ef75fb883e3f550ea93f86f10681d658b52692aafc52eb3382ae557a973cabe48655b03a00fe61e2f0231008d0df634084a4d5cfad35312f1de86db1ec11eefa384c45d54054621efbbc2e7d5c227fcc3a1f2c8ecd7c282b9ffb7650302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023041e5d7117698ef63b9a3af2b4c72fda03784ce48e7bb67926422e8bbc907f68eae86ba4ef5b8e9b7084725d8a84f7bd302301eb8025742d9ecfe8ed731cdd824d8547b8ff8e5a00a4535b48776f645d3904cccbbb3f6ea671054baf7a02ac08ed6d40302047c435bb50066306402302af7fc887306093defaf6c92b148da6fdba5c1b1f0e9ad42727e9e620fa76b3b667b24ad7a0168449ca7d03e62cb1b160230673cb766136db190aedb5edbd75e95a3d66f84c1f4e6a9894b086a9699d936e1b001737415ce39e43dac84930840f3900302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304376c45462ef5e6ee1c8a1a4d8fe6b5076e544a7965027d6ce8cad52a6db361c3edb7d8da59ec1cb2b2cb2e82fbb9084023100dcf9f6d8f9cf03a82ef817b49d6a6190120a0100316845627580f1765b375cfa5d264b68545dda794ce5bb97c13c292f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023013759cf7200e552c8b993f9c083cee51cb21031a01296bfb4abb56ee954d0d5e660bf0caedc1a6fc99fc65ffa6dc3a21023100aed1500fc5421610a6aac8fde62042ddf643994a48685867e6ad6f34754ea992e596b12a27e4d0ddf34fe9c37f07445f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230189153a365106d48e40a50bf451105bbe5fead88ee5de3947f8be2c23a4b679f2e65b70c3ecf34f76bbaa5095ddb8bcc023000b3c540298e793b8aa92f978496408e19453562b25ba2eeef9c781bb5ba1bf8ba22481dcf022cfd056ddf3af34d3ef00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304bd151e9e126ed85f2654133dcb8af63f49f86faa2641847a229caf2ad4da49082c6f5832963b4061fa30a0dc91e6245023100be490c79aacf05d5aad3ffa7c8f8b2117a0fba9625809f87f29f34881d7b7fe4de4f5f94980a18625ebcbdd6d48aa0110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bb9585ab37372184dab6adfa159f1fb7522ef7009aa43746247a3625101822944b89a4bcfa2f61e8dce729991e1c73c902305c8d91e1d67cf981f4005859a0a7c514dc047f2d9f2134eee33bc0fb48c920fe8d43ff04fb28943a6ad7b8971f59594c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023017d17a7e59adeedaa7a8c78536d32925c7d75386b8c9947e6ce37ec877f0df1262761bd4d8e7320f5655430d5f2162fe023100ced2d38c62d6a0ddedfc1108ed16fec55984ab9a2e5ccd5ef0304ea5038b7f6e558eaaa143e8e692604b67a1f6e6ef5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304a56b2fc00fa2d0eaa1850d5c1ae3edb84337744949277c813eedf93789d960daed0f35d865be305b1c50bb40185591b02306ab47c6f78e3c6781fd73e40f3aa0ea9a6fdbf4f19d149e0fd37f44eb598db9e3d476a623f6857a7819ba3c44b0e15730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302e40f6feb650fcb82137c9f2b13f4861c5b5b39a1d91e9a570083b7917d7a807ddaeea43cd7ac2a5dc50fd27474d95cb0231008c72677386693f9d4d24f8717b3e28cd4c33f60b2d0ce725df992341e0de7ced46e43a3ba81dabbd1f1e2a01ec7296510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305a63af0aeda33d80b82202ff92e071334380d86ac43f13ccc6dc14809e93d53e292d4a01148b8c9924b64ca5545efaf402305b37b9b8f8ecc07fd3f3e728be7a26e714ceb830df0776aa3cf274ec7667f78b794701b273c0e31676717b8dd24109540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100aa586778ec6ab010c10ca5260344d5861b3309dacc7042e09c732f8b2aeb84ef7acb7014e9f960fe9d5b76993a7ba300023100d92c0c392551b97ab8235b1fba86d69cc3b3b3f2af6baa4a1ea8b142c2010e3abeb4884bed5ebdc0b2cee4159ba396a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307d0e7f23c33c8b0bdba12b481a525ce2e52dd9d1cd7f37dad53f580e5ca999d2e80c2f39a7742b117262e7a31594aa5002305c5e2d8c62e3844b3d0e2dea9aa1d22a3eb24cd51431e07df6f0d758dc8b9d096e6e35016260441a87b2206ecc1b73d20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100efe47eeecf66ae888432041d4caeb9c107697b4e7eea9f5b823a0007cb042b137c72b3a507dc3974f6d072f588ea0176023063453a2a07c70e64cc764c06ef2bb09fdaf33a1f91fae7c437a42e945ce790c4b5c8d660b0fbd87ffa5807fef42413460302047c435bb500683066023100f00d0423c6f4cfa3b50cb4f43ac2dec830ac8d20cf7b87dfdb3276c7e14c5241352e4c8b60faf647620413805b836357023100e1f991b8091d151306f503856b771be64ba69ef95251b1499909b2fd0e20fd0946a2a1b7012c032f42a21df44488d1190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100943a62f27ee83192a352b31ff7a1d8b8b7623d897ae35cdb4b1c6189c4169aae14e323271c364cc8d57aed89a882c3c50231009e3fdc62f2d86a830ea64a9b9b25df52baca8c0d3959ce48a429c391529c722f470787619c14270c9fe4db4d95c467b50302047c435bb50067306502304cf1c7dd371ad436a7b286bbefe35624a402c0f79566424f802a7520da533dee7f72b78bea0da4e5da28fcef195b5d9d0231008a11eb048332e91e4ddc9998c5242584858d7f29237472c06621aceef63e0381798e9f9b35bb1ae4995ea303ac75d3da0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a3a15823cec18314dd7c47edbe208fce81d03ab62153ba4ccb7f8151c1763c4a5020e8dd394be14c7781582a184a2d2d0230457c89bcc24ccaca33748b9b34ef99f4db99e856389a99d32463a80963acdcd67aa64a2290d4a2653b9841e9a6acfef80302047c435bb50067306502300380447afcfb7115e06a8d5b9f8e93c2a8293ae23cb8c64a01b8df27d0afe11e9bf2195267d1abe8a807170d00a49efb0231008e524a3af53022e2abc077c3133a16afd36f241b2edbf6aba03aed113b526db2b3ae5aea39c2932b6375344071cb58150302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b974f2f1c2e96d7b0f69c9962699d790d9b9a320e1079cf2e3104c87c38cab87f560a4410e0058eb02b932657bb803ea02303f4059a56924faa8aaf9def40e7beb964d773d2fbd8a09331fdc5e2dbe52c510bbba878d02e40e8d533a659b5776e8940302047c435bb500683066023100e44952f28f04403417a971cb7bd955d0939c252ff901f87b4f5cdce27885e075f3d829c8d552ba5fd502cf48fafa30d5023100a5c0ba592a9067e3ac226cb19a643088835b80076058992f02c7e4e91fec113f7f2a8d031cb10c61a18d5df833710b5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b6b56b0a198d5c334cff076ce8ee24b6d2bafc12ed22d85b61d3cf8fa12e1945200eb2b8871b32446745c6f9c2cef828023100f8ddd9c316de75c0f0024e95a13829bbaa2f30a906e4f78308a1270577e3e4456840f9d13428eb0c01dd513c4c97e7db0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f8f6e1e4dcb66728ede58292df47331a8d2390f3f84482d18938d81b89d03224e065b93294faf2741ac21aad3597a455023100b622c5d85a407b33654337d9f0ee4958ac008a9d0bc2bc335d6f97ef30e765272503a57571df914a65a0bbd85a10f3890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023051e81ec5699cd3e956c0c61dc87474ae7f4faad8293cc9dee1c2b33f77cc1d36becbceaa20ff529437894b2671f2d4f7023100a32e562b5e668a4e33108ceaa8357e3b8f68519ecf16ac0289a69bba21b6d788a3d5cac256d2db4f19fdfba7c37a790b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b07a83f124626f28841e1ec068bb521b9bb752982d8027fd15e39163630436a50c6450671b66c397d34907cccc3fe5f5023100fc3f1e282b0008093ba0125bfea6edd91812a061a4788e6c10e5a736604ff54e268f8e7897d6201f91050be3731536070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300c509b3f09ba9d6e915e878b765fffffdac585ad4f3cdb8e6c8e1520aec2649d4c7fe80ae8daa45732b54604effae8cd02304ede675a8164359eadb6022d784f618f2f88fbd78d2e5dc4218bf0f418d12883feaa7833786206ef1d5220fc084448420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305a0b7106266960b91b688ba6786e27f58067fa5d9bb0a023e15960aba9d373ce830e236912895f29b19846779d212bce023100d6347b66766c44317e77cb31904251d1dc477ea20d8bfda00fd43765bf334d8bf955cbfac191dc763cbfa188bb409b330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100994491c0b912b195a9b86ab2a9236ae063bde3984e7588f501e8c9085827c9d333e10835528f3f1838b26c9fa2af4daa023100bcc31da22a8396cb639031fcf46b876e494c2fe8ba3e553ca2bc818b402e5a81281bf7790f4a6b61593c2739f9efe7960302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305c90df6c1becb43ddcf0a0755e178198bdf86ad9df8ee8266756c1a5e4da3fb469677a7619cbf83f536fc831ed6e47fd023048d44ab09143042b430a1d0305831c844e399cbd2d290cce10cda0f8f27892f01a3807e23cda7d943b3b3325381542060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b23a9e97bd0b427343a902c0356b8f97f06f440a7dc9eadd9a0869d82c0218789d7322503c0594ff0ae622c74e99b98002304bd8f7b0fa5809f52d88e33adaf872d395fd4f93791803aabb28363048bbb4cbd7975e2748b573c7f85d6fcbe366c3470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301cd1f89e48048fe355f7a61d381b9a0f4e31a397dbedfbe427bcb1505876e7fac0a6573869ded836303fc981948dc90c02307ca47f2c364e9911c2b44e7423d1b2f662027d649edb1f5d3bd44caf26ce566ffba4be4f8f314cc6b666983a5f60b4c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306895ca48d44c56890c6193efc36af875d414058622e071ea9af0bbb21fa3db071efbb2a432fa0b45cb3b858242e09add023100ecaab8d33b18c72041dfe0b244ea769a11e66a0b1c9700d6dd3f2ecb4851abfc16928afb02ed928d5d1c77b7980c80040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a70df22e3f1a252d459205afa3f6c75d8c107865846fb4f5751340d38cd5d7eefc4ab1558efbb8a85a410c10f4c5463f023100f91e400eb3c32fd6999094b17f263ce95f35eb26754693bb3f62188341779b4d41e3071932d1e2fb14eeb746ddcdbb130302047c435bb50066306402303fd1852ef90da50f25ebef2a8e35ad585d80cdc11afcb22e3f33bd9dd995a2008ad37411841eac92b34efb48eadd50f502306683d0d8613b897c5bc0b8612ee1f4c824152e4825fae7ead8be02ff7ca3149e67ef9034b8fe29948d53a4faee1c9c9c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bcfa694051fccedd667c09d31b4deaf08097df8efb50b498cb229e8ad23208e352007b3e8026668a646854c4748af17a02307b1ee139eb2d88268b079073fa8e3feea667960934eb503b39a41ddd69ed051b8c9a798ab460a1c701773a66915b09280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300ad4173b35f256588e7ad8e48fde74100efd3c22a0accb0878b554ff1fddf13d0b5ed279aabf8485131f55680ca9952202310081d52fb19b22ac23a29ffc0a06bc6c4765cdce052bcbb6865162519b63eea7c2df7eb997a5ef74fb4f5c48e0bd15b2130302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023001001935dd657e67f56bdd9a0f069880a60538489ddf60b5cf94c91591a8a0d78f42529e1a30484c45c425898beb2fa90230263018e27b704773fa0972499d74d30117db4ffbd6a8db77d2f176863f5f1960f8b8ec3f7e1f5e3c0107d1bb3664d2510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230109267a589eec1410863a4452dedca83403dd6ae7c50b637a8011e0d19b8abec10e03c6f7bd62a207ba98c004d967805023100fbc2f9771434b985010badad3fa786e27ba0df473d043f31582e3772f27308060eb412bc213c7e11b09c58d8734f59320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b9b09b534e900af946a9f861c0325bc9108e72396dcf62b0c3f194d38a9aecd7fcc5f18a72e755ecf2572892ea375ea802300b54ab48c29544395d05f247070728f506ec7d21dc15e46e39637872aa338632975565c8330125f7f0c95b5c14c7b7020302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303c636e9847e8dc5878eec0f8cd09604aec4da5454da6eef20cb7ccd55bb980449f549bb4b5a6139c06dea99468a9adcd023100bd6ef7aaa968188d7b3e632eb37d31e75f064591792a7d8721dfbbe8916998bbfb006a3128f0fe58d34c7bdc0064e0be0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023037c69c4d87632e892a492682d6eb28891b5f47013a3d58d8307d03a4ddc87d8931d8b43c477c299d40e98940a12b8b95023100eb3b865e1be74af0a76bd3abea707c022b8431f31e16d1377f58de9cabc0f5bb4d63ebbb379908446a80834acd8ff7880302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fc146c950f6059b11f2b1f1986f7ffbe96215d720d7f2e1e6798cd15c49ad630b697f11ab7aa507945502c02e7e3e5ec02303f890c1620cf4f91986daea0bc6b062a54fdc41fd23890f9ae1bd12b695f11f423d5ed226dc37873c24d6916226e91190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023063c81eb42466056f9bfba2e52602b50f8ca4f2c65853b3286a0f6d91e28f3d2bcdf4cea61b0aa48920b6ba8780e1c31e0230490023294b91537f2b523b715615706d7dd1631913677d2ac0a4edd71d202003eb3b6bd46a56a43711c21120a7349b7b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ca794d7c25d24e9d768c82ebecf5b159a93447928e2f096f330d2b8676c54822708a1d14ada4230f984fbb1bb674db260231008728cc058ba90a7997ec2b86f035435f281ad51f65b26e8354aabc4f5b88defa1dfad27a17a34d8d6f582a96f8a79ced0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023052473696fd0f1e05b5ff0948d16f75db8467c9349365054bb0a55aebc041299b1a513266246d04b30c8728ce0f9a914d0230363aba58ed36632e4ea2906f61287c6d50c7b5601629b466d2afb7095ff6a8d7df262a1c782cac701c9138dbfa3d29c90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023005ee222d5cba81c0dd1d2f0cfb232f7086e5d10de1cb7f6119f6884012bc7933c14c8ea4d18e618b3c56bad164c11c870230547dcde36beefabf714eea42d403ad8958d231713842632dbc8e618fa61fa9932713c87a0246c3e58288d5bc1d4eead70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306209327e925f8674d10d6ee5684ad8466b4fb8c87b2c00ae2dcc5924163a30d2d084e527b7d1b5513fcafe4a86ed191302303dc0598cc1b35a87663adae21e61f8d9514404f033b4e32b74de2c64bca81f34528ea28ae2cd9dce3c06edd98ff6dacb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d6493d75dd584264e6a5ca09251443f3a4c6ec4da360e44192cabdac1d1d1d111962bd0da8a8de4da08c2570c0d03dad023100f7fb89c2f0a8b45f4f172ed982c3e0f987915e9ead5abc4ea9cd6d446b53cece45949a1ac1872e3d7208fc42093824310302047c435bb50066306402302fd1f5cfc85c0dfa3e64fe01da3bfe3192c433618047c7f77496bfe9080121a767ef794fa77caf84f8e5f453363cfe180230236e420a8f212b68e024625caf3b5ae8babf23585600ad480061072f53200ce575dfa3603f4bec7a8655140be045bd410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300cdff334f4ade58860f220e3bb88ed3c2420fb97246554521f017d0a24affef1aa0f425e3ee43b69cf248a503cde0004023100e531b5f1620b41063a57d9bad03df1fe5aa0c83554983792fb89ebb1cbafa483407f9a3d6eefadeeab1c8edd59d366cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310096f1f3b00a1fb65d5aed738bf68abcc7a25e1a02e978591f8013ee071ef69a48af214aa33d1e05c9ada5ef417b90839f023100d903ce3b906f2f37e8b008031062f406a6bec17f03fcc718f04464301194e981923ed9d813b21b9f21e6163ffe4f6e620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230162f42ae07307834e677118166a4643d3b567d7906f35590f3e7809d3836e48c53dbf4ecca271f50cc31f73f519200db023100b2e4abe08593ced246817713090668c8ce676e657e50dffebe4391cd0a657dd7e7fd41735e1137a6ca8125187650f8680302047c435bb500673065023100c05fa6075df90a9b6edfce38c11fc0f8abc5e68e046500957ba348cc7d0d79d9d2708c3fcd20ea84a04829b77259bc78023039f7675c1dfab7c762b58f37d9b6d9e2a01f31548a45b83ada656d2a5ea563175c473c56ef63607585cbcbd0103e78e00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e7d18516d373887d5c2b9382dc751e42c3d87903ed5c8b66c88bb3915de078e73be3d25d2b0dea30469dfb7c3fabf12c023100ec3b015a9afae8e3956598e99a194aab91f8703d87c5722c9a6af2cdcd2cb5595e9359ac1f7ce1a7fb7c6174cf9b40650302047c435bb500673065023100bf1b043ffa11c0eb179e4944a26ce83557cee0ead7b678dc75c72dc17b4484ca565e68ab3206fd49c78254fb9f5e098e02300e7a7c35559ed92a5cbac191e008cfa1d49539756e476e6e2cb581d28abd35d4aff7f5be3c68f12b7f4ce26e94c01a700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a2443913aa6c60201b55f4aa724446a99c6d6cacb50d54ac1e1c8acb65b3c8cf14a4c2b385b5128bfd2fdee599a3500c023100bdb2811daa4ba82fd454673fd0d1bac09df906286661bfa5a9cd78420a83a490c14407257e952d61c5e88eda5e88d8390302047c435bb500673065023100b7b2865f36700ff978db651ffc7d89dd1c357c6ba713908c546bd538aef3fc31b1195e700421f2b08bd2155d617db869023067c5b0a58004c8e690e2f9d54628d9287c51b6a8f10bbb9a4b07eaa0b00cd32701bb75489542d7cf3d2765622f902fc00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c5e01c1e71227fdc5b7c570b34bc54c01b0bfaf4c96304f12c59b64f1bb5975b016cba729c50e211ab04c46d5815f5a40230029973cd15ff8ca9b35c3e1e397d673c78429381fe62ae103030e43f095c766d503a2ad9e0fc538bb8823f33f68469be0302047c435bb50066306402305bb212d1fe3608859f1cb98c5f696abb85392e9915a4e1beca56acd031e891284cf18c8b8481f692183b184b28672bc60230034b14726d962e42f2fee0f840e8bb54416e76e9b4668acee25a4ac2bf736368ea09e985a2bfd4a6fc8cb0b108b33d3e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a0522dbd919c1fb81230dc33962b43de86081d3dc7ff1e7bfac1022f48fadcab91b2522558659ed197c3153ccf3d59ab023100ce4715571a581b9056f5861f45c3aa5d0078392db0f80c60ad625a01b3605a8fae43bc1f3062379ed6b304bdd8cf91f20302047c435bb500673065023100e7ce8fcfef424cf26b3864291f902542050753ab23ffc02ede00b9bd77082453e7505de9b2eb9317013a8701758fff9602303e4cc80da7f33fe96456e81cccb4bf7c682c393df51f905b6a858ebe2d72a9eb8b2bac6cf165e3fdcb79db3b102c9d0a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023064896742b1b9a953bd08aad779d38422201e320859ae4c60bc165c4e3ccc7f6f8c17a263dd206697365d1de2365308ef02307e453e69a13f1a169af9c5ea93960afb331a57ee07c67b012fac0283bee630da5caff00c474d7ce210959fe7ef4de9980302047c435bb50067306502301bd44d02f8e50af0eca980d51265541382e5e381c97fbbc4d297722a13a687fe7e2009da0b57e1358a2e6428d4c35b2d02310097e3081d8b51ca0d819dc7e218554aa2b9141bd69d276bbb8ee2211002b77381f419d5ac8b151c937a6832909cf18dcf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023076733597ea15dc2395b6fcd7faef9d5c322e43bf56d01b3b008a85b1bd1c94692fd02d00451bd51deb894b4246de1c6a02306d5e3d9027f333be47fff14edc729fd7cdce8800a75d69f990c821f4ed7d96678ea4e2e89a6a6a1f23b5187f998619b40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230056b01f05beee74c6d1edfaa7227024bd06c4aafd75ddfbbfe0be8c2f911248b0b9dbe66b487bc4ea37d5ef62ef58aa2023100980d3b796c5997b9398de61be54f12d05163c3db4a5f4a05189f9c408c0dd8d903891847eeb5aeb3edaff0e7bd0242980302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023034cd813a8a5cc955004a6482dc80d11089218ae0852b2dca935534a38834c76fea6a160d362152b9c331d902e393a78d023100ee930b3ffb40c325a9f04bd9a7be131ad733465de9f588782e4c3915fc96b854d3cfd5f0116ca3fd4b82f3add66641870302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b6a9c3459adc1116b62d1f2de8ebe67d7f6661f0f18caced9d399a20cc74dcf89e82e3245a53bdf756536dabfdac8fba023051d35b569bde51650e2840216a526661feac9a9c47c5a141e248b8d4fda66f4c9798840d4fd4cb193809d01ce132d35b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310090d526b679d765940014241a1b82986f0ffea8ecb4fa4f6a3210c4763f33057692d5538fceaf8bb086301c769df75650023100d4b07b150c75fb91cc01e7e3bd11fde3c980a5f33e2b3f282606054ea9b1903aaa31b099da84b3289e1c545ada24b3570302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302fccf307f20b0ca1703c2cd298cedc3354c29700cfb6eb030124daea2245eb06fe43567ebe868c040ded94c15dec7070023054773934a3b477e25f03e1db4aa360b0184a66f3f9e42b549bd2d2217ef8d0d432025c84f6c9cf495310bb769efa1fd90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d5cbe5f77d10987e154e0ed95ea5955503c8daae520db514ed922bda4b9f4b45c4b4c35d3f294e1f4883f663268229e40231008a55a7ba0995c07df1d0102a9ea1121b0df1f037d97ab9000ea2723360eb81be48d0fc44bab6b9b1507a34a490c985480302047c435bb50067306502302c88d471e11ced6fb6596ad29eb053e198ad5c0ac4568aac8adf3709aaf25bf72f60b2d70741d75b52a6f748c73a24b0023100c55150f13f2afede1ed209f9a2ddff3ab3111e3379c6dfc9a04f6c493a98705985720b5972a3311b8b0d10988de8f73b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230799a9b2e8dee370256b31194ba7873f29fecf71a3233e698b41277e4270c9455f4b2435e8d315eaf4db389ae3e19edd7023100c613fdb3f5900e73f690f524b5971e6996d0d11f8fa5f37c25797ba7f1bf92726fdb14bc88e82f9fdb62ec66ef216e2b0302047c435bb5006730650230300cd4351ff90ab053e31254a3f51d2b6da83a025bc8e76dd2687a32b6401f5fc642999fb3dfb8b0413cdf239009e9340231009b9448aee71e84692529f52f4319830c188ae6ec735cb14ad50c17b512bfa91fbfafa7e451fa0c2ef2830bc9fa8bd79d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302d7c71596928fe79867e7a6ec63d68fd9fed4f5ee482b6b68cfe50191d8c1bdf3200334f539c04fce26fc8936f103f7a023100b125d6c8808ee07c0ca33bf7f549f4d4fc7c33a5122a205a96ad57d0bca03705378ca06ab85121f330060a7343ebb8350302047c435bb5006630640230363076a1149f2a1e8ce27a7befc68bafd91715fb459798c27b2308d51fd5507ae07fed9a24152fcc47a6e6ab9d69b82402301f72dd51e110f7a0a2ffd27c6d4103061abf3ab424b299160729a8716a2572870291e656ccbda7a2fd4f67f12b658d1d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023001f792cb132646a6be1ca36215842cce2b541b5eff61428f1ce3967b594dd16b9a3f76bd66137a5b7d216eb4a4eec763023100903c3dc78a9625f281bbfd799bd7d395970e18df08ef72686eea143ab6ef61b282da7853ddafdb052ed280a4fac0de5d0302047c435bb50066306402307b1356c872ddc2805811f3c1a41520a5951d5a4f1315378c2202e3e52dbdeb55555b5f10987ec5405551e5d6f2c79ef00230619dd3180d399866142bf17a6acf6e03cfe6800335a50b9fcc75cd7adc0260bcb6476f6879598d5161d27033d7f785540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230069ec57dcdc4ba08b6831258018a6379cc1ec8b62feb2c70a1cb3441a03edb83fb56314c38919a48275e6b0a1de2e28e02303e9c755fd7dfe6e00abaccf78e3d89fe1edb14bf137016562649572be552743df6c22522448e03cea229b80261fbd7250302047c435bb50066306402302a86d6725ccac5b21330b5a6dd04ff0b6af792733d77d95d16f9eb200295e5fa917c656b9cd8af9ed11c35591b86312002304d5ee0414c0d1a6646e54d810b30948d3e9abd85be33dec4e83f47b086cc299671f33cc0f4ae2e04dd7ba1f9dd357e0d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cedb435c1b938c04905e04d5a7b80f071c829bd5d618453bb0c39aa8dab1ce3740e943e7e6394e4faf918ee8d7955710023100ecd3df1a83f0e3d37674f73039175f71e02cf0db5a60de6ffd80edea69a2a56a3981fd83ac63a10ab20457d9f03828e60302047c435bb500673065023100db98f5ef8bec0f45baf8c2110911228053cf92f806047f9c4a373709129c5264d7008852021f6921e7785fc5325778bd0230558cb5e8fc2629d4e1ecf0dbf6a243598269b71e0f5f7a7cdfb3d274fda351088c1e3f688de2e05ded60b071cca5fc8d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230575ffafa814baf84f97c5c6e71b0d98f06ca2951d59d465b8c1517fc73e5738bc4bff23beb1b417fb9ebc8661865dcf60230243c0c61fd0dc4ee12be1d83de157f3817364bf48e23b5e2fcd885fcd20127270c4657afa3fc09eeeb23ffa240933f930302047c435bb50066306402305e723ff9b04a00a4d63d12e290adfe96a076676f316b3cd3613430a973f8189cf911e09fcee075264b43c326dbd63bed023070e90f7de86878ac8242befa615920210469f8d19effb59d82122ba066653e606fa71449fad67ed0b52173238ed18e6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300a7061ddde6c7c7bf1f715d922668f1bac6f4d599664159d3d1107999684589f9b66d5b9faac3b06a7b804ee7fc339e7023100d0a4c3efcef8497e886f69230f33f419d91fcff62600d706589c286a9ac9dbdca223db6eb0d9138d6b85e01f33a0c8f40302047c435bb5006730650230185936b6b4e10d2a4d31fac1335af4b836a4796e9dd3cd7083607f0a8fedd3e62b6d97eb28de31e7331696f94dc44066023100f7e5a6b10d067d8b4652a7387709dc4ef078c24683bf643def0db78308c15e1ad18d93e28beb2c6ce2cc9f383ae7861a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310089a18805d4a911658918583cfc4b5ae70ca3a01575b6ba83da5295a7fcce88e57e13d53da2ab9b0e644291f6e472b32402310092e809791aff1cdc3aae21b5367d405eed9753d1e90f44a6c049008a1f25dadfdc2f760c38bf269dab0a683ad858427d0302047c435bb50067306502302e23872e61c852202f8ab5c415cb93e012d3ea2f5bbf7b4732199fcb89fc652b2f75c08f88beee45c79d12863833ec73023100d4625623908feee5bd726892cd1d1a4ec6f256a12593937ced59b9c23c85ac7aeb5f2cab25bf8b83f2826d338ecd00490302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303602fe302741fb7855696e11f99fc98d5baceb4c2c2f537fd68ca0dbe6ac1192aef1f49b12255f000a14f23ed40559230230305a4583a24cf086f2e9d1a1e83cc2f031ac1a58d49163cd0924004d1bc86842b2631ee3580b2110b4508232db684de00302047c435bb50066306402301906d8f83d41014d69ec942a84427a7b911b9159273ff4a41a084f9dd8022bb297b62140622e5a84201950167f76d5900230649145452a235c4704f2ffb25f3bc1e5702a97bf39811da6e19ed630eb945d9d60555d62cbaf0e08e69e4cf4e60c304c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ac070d1c0455908c9e0ae602680b4449e5bdb1d05d559e9ee3485557ef51977f5eadb6524fb6db0d1d2c77797a855a4e02307c87d923cdb00ba3afd56800fe1156ba1731062712de237776a7978a45a4dba5f30efa9009f7229733f70df0e4ce59ec0302047c435bb500663064023052f28d45fd7249592a162caba513872cbf4982edb853c6e308b5a31278b97292c981c937deef2041c25760b4a566f80e02304e184b9b45c1051a0f9217294d24e306d004e5b356e0f3b40e400d734c4d140fc94e3d6cd7453045d0b23d66bb8574500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bdda9a65013cd04ae30194c3a403f5241275c29f27825a1680a9ad069a14c92a2be720d5caad3f71e2b62277b97eb621023100bfb9b62a053b2e11f0b3b61517fecc62a986d0b18054867db3b3d41dcf60b7e980a88f7f9a6e69806421fe1a76a13dee0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bc362c4b6dbb57c46ff419969aca6f79ee32efcfa11783751b2a1162380e2a186e38b7c89fe18ce686fc5abde3f479c8023100dbe6720e993b55d32b276f893eaf5fc88047e263154b570cf5037a2e3e1ce6129e4258537b78e8190dbf62a4fb2d3ff20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d117d7ead28383d53e6d2ba09961b32191d72e2c40ffa208800d1a175030992a4464d437ebc20f10f5ffb1c57d7ef9450230685a69e86d125b9d6a6747bee90f7701cd8a7a2e3191aa792311443239f1834d68e3626472523cd8b542d6dfb28207bc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ac8b427f7e9e166cd410b04b7f0d80549d7fbc7b3bcab9aee71ac5d14c69aaed84905515280c93cd1f7e7d7640dbe3f602307b9bf54e6c655d50233586e86cc041ed3599cca284f53aad76e107ccf90f229f918660ab542e590e2916c1c76bab28890302047c435bb500683066023100f6aa1c8d6f99e885730efa620e8bc148e202ec7408fb0cf225961ae59ef847ce20c6fcaed7c391286bbc820b6fb87be8023100f51c097f87ed414c44298ef7a0a2f11dda8be13870ea93fd9ea4270ad46ce241ccd23789b0baea1916b103fc2722e5e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310094202cf509e86201d24c661d12289686641db4996e54199bf9920d08d09b25d19075d61caa8759e445c7386a547298c30230618cbef10cc137a1ab9838aea98824025d0cafb74e52bbd186e6104c626f12741a2d908a230054218b03479ad9e42c130302047c435bb500683066023100f580b6a04c540a099657e2c6441450b91c825c48466b96b62e46cb9d9b73f6360e01f1c6715abf060a41bf799961acca023100ea8386fc91a4a885cc4aad0247ce21f096b8eccd88d6f64f633706b81d30c65bb05f8b96e42be853cadaec0924976db30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230597453b09d860bb47a7d7c3d4ecd4fef580a8dafadc645853b052e202faf92b07aa54b6bb7436a491a7f9a272b7ab27602303ecd4763a8ebc5df7c66387f200b6756707359f32769061189ee4c44e7c923dba72894b18ea22240d0351f61b712c49d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d7222164dc9622aa08f898b0716a8cf9f747a2fd0a4d5cab816765b388f06fedc51f8679304b047961fb212806d543ad02307eaa7526e97fca744bf08430a856fa6ec044a6329345cb1c8af82478dd42d6ca865acccd2ca11ce811fc534987e2c8820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f2597a4dbb679fcc9bb27b547688384fee4fe53621abd7decf2ec642f99b57fc6d7da7c047bc54453e8dcef72ce7451202306c94deb6dbfca13d75b63447f9d71a17a08e56a3d6875cd2aa58af69f1b790db9e55f3855d7c22b8a1552a17c48eda5c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300638fe6644131cdaf627bda00787f81a47c8be0a5578cc79e84e62d85f63571b001b2dfc694508be17bf8c078b7fc234023100ed583bf559a7d1b8ccf5f721fc49737cccef230aeebfddc5add90a990e87ad4233a4c4be0f34e18b54b5d6b570cff98d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305ae9e65191391c07f36d9309a52f86da572958fb114269c3226e8b4834476e9bbadc75373f9dd2ec44ba4a494ffd6580023100c32937da79e62b7a2dfe9b808e63efcb715819709eeb00c805eb265001dfa0258cba27336fd8eba4841a43ca4b1f169e0302047c435bb50068306602310087f921ccdc344cf96664860367b9c375200faa25088054c067a64e8cb29073b13b3e08259f591dc55ff3beec84c3d552023100f8854e2165c3e7451cab5ca6e40dbf5f3a001db1baa65bc95a79ac456f75b93c67de8ed305d927d59486e9cdc552a9520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ef4a68ad11070bb5ad593ca80f26462b12ce5f84d67e0a8c435fc77a9c9ea2c6fb48b70dfc4eda7ba75299710f690ae80230737540f70ef9e43252ef7eccb6e549aa316b9b3fd8f55d891761aa08f373b4ae75f5b6adba3db90429e8ff4f864d99c50302047c435bb50066306402305618b23be2b697338fac151defa5420250621f1096af83e6d9b9cdfed9cb07f4dc4a55bad62d4caeb784d2b93be1c729023058b5490659456f5a71b338150d2b03fee94796f2d8264897fddb8b3e0184b6f3d0b70a50057b52d3619c83a3b732bd9d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306cbad33c1cfd27140e2a54775a8e597565a5b2f6837cda9efe5b516423e01f3cd57f51ab1c9b8593721896a74cbc1c5f0230338f5f76c97a9964cf623c23dfe878b71b4ad59557b588cbbde0ae0fee28f60073e34c01732755429f5b3ee27bb2db680302047c435bb500673065023100952b71bc9c311c3eb2efb5fd20c16f5d0b9d2e1d7c216298503b6498a435bb64117c041b4875af879b3dc55b6a78f90e023042657118e82bcff7b45391936d87493085932b1096ac53a9dfb9c0112ad501fedc96be93eb37e1f8d04a116c0bf65b0e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300602289983a16b769ddcf9bbcfc586f9aecf13a421e5efd330ef6aa901ede912789b519895106b091545fc2e4043fcb1023100a68b2c9f7c61ea3ae9868500bf266f9592ef7812597e3262c5e1087b32e9a7c20ab75adca8e8f38cbd8b2b84fa6e4b720302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023036ee9f84a701ee03753d5850111a4d09afb052d03350bdb85b440ca5cf99e3dae3cfe66db99af97a2b6679d11069b1bb0230506a1aa755003fe8002e9a7c24978786c4f620084e56c93e4614706890ee1e4a6673c2f029835a9e190e42020c1acb230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302eb8354b1080cb6da5f8247fb472bff6ed655700e18ecba54efa99744883c412c7de65ba7af53fe58ff2d797f721ab0c023100d80816c5168bde49b746c394d1c0e657e6a7ef06303e1b83a4407d40a7822d5b018efd2ae96fcd52103d13348c326b520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023057f03a736c21c3bad35b41c1d089cd9315d9030ebaaffbdfae11a6d3a1fadd7968d4b2c5afc222b67794d2a66d3f8f1d02301142bcd0b7c45ca126bfc0d339aefa2e561cb7587ec2d063fe05220697d52ff34e26b60cfc708ff2758ae2924d37384d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305326c300d0af27c1629b7ffdec91787e7a5439d7ac28c3385ef582d488b2e886d01bdcbe9ca9db74bba3cc17ac819570023100932cf2d2cb1e93081b84baf12848dffc8810e20fe711a1483a0ec9b0a4f65ec9a99fa2a912fe2457e925a07cf007a6c20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307f4e082ad1bcd686142e67bd090e2b236504831400b1bff29b21fd10f5e441685e088e0cc3cf67d3fd6c3ab4d6e53ffc0231008295ad787f93fe11cdef5bb192372be0ba3e901072e40c75fbc9f7972df1e69f8a3690a7fa57f2fc6be4a13bd9a9b6f10302047c435bb5006630640230304cae5f3e0cc5230d3ef9dacb092b2295cfaba11925dbdb8b0d3c2d7da231001bef66604a9d9746a2e7b18da6aa758802305f205d0e96af27e4995da57c63069860f5fa0c965cd2da6dffed58513103784bcc8d733c2a25b0202075cc22d665ab140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023025175f597966e6f2fa3c7574c64c14da0beaf2cd9c2259d38ba62460dacc170bfecb80876deb33820012b0bbbabbe6eb023100862941fc98a0365a1c86a9e2bd7f591bab34150b36cd92b60d891914329f7f288dca8edaa0bfcc641ae469624b5a6aa20302047c435bb50067306502304aa0b0fa3036f9f550604842d29cb0d4efa204ba9968a61154afe4d59ba42c74f9ac149eefc06e9693d4dbdf5338a84102310095c54b252d998aec0fd246b992cf1ea410a5c97517daa0a5984e3d6f2ec510024ef38555a6fe2f19fb81fa7949a9d7830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305965bf99bd94aad38a7f2fdef78534a3074fee9e7bcff14a31c7dfe72730303d2df58045b0f3288420fb8802faca40e8023100c668368b2a22d7f2fbd0578c4bae3f1f222d31fc914836ff64f1551f3f1afed5d068021587c5f5405fb73b82ee42a4a00302047c435bb50067306502302602e83f4544b4ee7a3798a428890e19bcad69992ad1750b2e23a9ed25a99bf16b4c32f72ec1e6c7f82bf1f1cee07811023100a0c89867b97a02da9705acf13bd32f09c651275006657bdc2511e8db91ad94564b4031b4bceaddb46851da880e0704ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023008dcb1880fdb2d2ae311f7ba868c9d0d08a8cac6ea3cfd7e964068a7e1bb38e935531f2fe767a42bc9ce2fd853fa24e8023100d6264d658d701e311466115d40c291f188479f27511451f10873460082a49757490eebeed87fdaf1957b63acf86f9fc40302047c435bb50066306402301a8e074a734db224c24c4adc99199d6341be42a190672543cceb4777c2dfd8bb7049a8d5c103d7e4cf09dd2e93e80c1a02302602b1b6c632f437a7caf4f95a56cdeb452b0cc6522bb3893f3479bf25c9e6eb1d17bc4133d4ea816dcd0fe93da2ec1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023072e5e523a76262a0f09ae8117ad4af4878baa9003e39544a10e9baf00150c3581d8b522ce0c46e1efe5d45f392041712023010eab966a418c939cff2958fefa9d6190cfe43fd50a1848167f1c988056e9abfc93e96029bc350ae71bfe6920ea155c10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a6899a7992816fb60540dfd840dce4e6fb6236784b25d6fd251b7d0a9c9a6680c210f711315956a9be48b319cc6f752f023100ff8a70da994bb952e2bb0e4b64f65ea12c13c5927c1288d31ee8d0b00ff205eb9a597a4d8314186378954dfbc732eb290302047c435bb500683066023100ed2688bfd25f8c96837ead11e79437486de53a3eba1c8a1cd6354957bccd6839cb71a1810117b30cafeb42e7f5c0b6e60231009ae975569ff10f5fb8b610cfc99056ed7d1e95ae9fd3e468650d2aed8c2f4195a01880f627cc82c5d5578674d056ef4f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a072bdcc10bf0ab677159e6eef6cf8c60d3e858c333b3f315ea82333f9fd684c3cb6c3c452fafda358da9b018b8a785b02304ad025fb8bcf1086d802caa4df74f549cbd17f04801f6841094520dfa5766cb8972ffaa01aaee38376173e506b842f3d0302047c435bb50066306402302e159b632c21b87926d6d9de8b30aa3e836806e28353cc2511759274cac77305f6f1243ba8a40f1951d1e018f63822590230060ca5b45e84afee68b68ae49143ef181ef9ff2c0f2889ff89dcbca53ad2aa7f4ba3f3691458f198fa06b6d92898aa770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100902170621d822f270c379e00407404a6435130b00b5d95c0301a2f8516ef6fdc85429e9a006af3cfc3fccb2fe283058202301d49fffa7b6658ccfd609df09ae4a6be9291a1ebd256742cd5fb47f68a6688b99873aee455b149641437af379a9fdc950302047c435bb500683066023100ba8283ec5ea8d20681ca707ae692f9aae3aafb5870fc4ebd900775080492cfd4ef231133b54c88e88abf4cf920ea523e0231008100845b65be53a1cc1aedd08e2bd5da7c023f7e937309a08f1b23d5fd66cef638dac250e842d5ad06b4244c1eec4cf30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009ab291a7e61bedbebafa3e25b3b47ed390d2cfb4d8319142232227018d858c4f0df741725ca5d5e0c56bbf206056d495023100b03af7b7f4430c6f144bed35b0e833c9c1b66a8e503e8b11dc77eeb37d90d16495326d8c1a2f9aa2ec83a3042e784f470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a897ebf0cafb92587b21a152afa78777f651b223fc821bc3abeda1c6dd54d00986763a3ad785008dd9df169f2ad5ca302300ed98039b5ed848f765af74e0acc399e787914d02f8a9f5b6043e72a0e5d1ab3c2f42a1105ab2caacc344e9fcefb08390302047c435bb500663064023006b6d83bad9bd33d1102a6be774dd826be03352e4640cd0ac34ae6dca9ff16eff55c4c37cc8364825cd054d07452765502303186983e80e1943d64be29c2b3519fe4fe4496ad390be2ddc51d6ec68fc048e45b83a3dc14f77c8f29563383b9a92fdf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300b051a2f2c8a5610b92d6ebbbe553d0afeede637cca03f8ba4e2149253b30d8f97c635888ae6ec57f59ece0fa082f50602302ab08c277aebd3f9f550298c725385de80d6239276ba92e23f44065fd07040b7972551e278ed57b5c7357de16c6405c20302047c435bb500683066023100faaefd78d5ccb14f9cdd1218dc3337ade5f073f57f9306dee6ffd3b3682668518cd94c88e5e5345b4d2ddb1ab9991c35023100f3e38a8ece665900fffd9e9d063113b4acd1e6408efff99ae86aeefffc712226462ef85b0c8092bf365adfc52c20c19b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cccc35c8668367adf957d3e788390fe3b2acf69026b75550b390793e19ed5877e648b8fa41af80a2caa1a55c491bf90302302ad1a03de9043e3e37e20ce29332fe1ef84ae7aa1d4d1ef2424c931d2281726f3451205370bd6f7f5ff3c24ea3b395730302047c435bb500673065023100a7af7bd58d5180c11ecdfce677fda835788d283109ea278bf866da72c0658ad4465c6925e5c6db23c30833f7e43a8bc5023069a13eb581cac1b512f5104aa3a00b702b1ac4f48d9ada612647f1ad33aa5ecda7fa58d0bfce54646ec82b58e9b254f20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023078d81121c699339e3917b640358ec37c92fc449a1a22e953c7e435f154a5bf23f1ac3d9fa94845caa4b7e079997a1c00023100a3e84935679720c897edd557352526dc26af70f9c92d65cf1b85d60b21cd95565616e60cd42104cc384c94928c56c9ba0302047c435bb5006630640230304039cef5c41f451a6a5ee20f40e3fa8a3d2ed492579af21922d9e33ea371ab13d7377af1bbe4c1248a0413900ea18a02305b3579ab64cf44e5037e88d8fc4f9a3877a165dc1cd79a7c2a7d549f9168865c6046d1a875077b52c0536ab5daa3fa4f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a5d807d06764039462234130866e37956754c2e389caa60560f50742950766405f9c757e143b1d02563448b35f036f4e023100b2ff16ce6ead0afc4ef09f9b7788de07e111643dc43d1dda7d6df898c9d8ee5ee556d5626cd84dc19da79a7917f1646f0302047c435bb500683066023100de4211d5d3ea6c3a556b638c0905d6f59b7b92889318a142f116b786ec7b3bbfba8984168801823457b465bb80959135023100a551a8cc9e5e302a91e56e86242b12be4a39d5d01a378e1645cff8d635b351f5daa103f2362dcce51871be2c3eecd9bc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a6489d41e885610cf4efbc4ce89ebb00ca6876b0476e791b4bc4ec3e26d727736c83c2754742b512ae465c51c867946c023009ade98f898f91991d44938dbd6ec6b90a5ec37e251ef8004b7dd1fbb22255a9823611f2f95b6057d67391f725ee11110302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306c6cfa260d34bb2865784e337779b17cb03685e99a8f90b39e86cf97fbf2aaf029de0342b8ab78a7ad0b9c5cc02fa86b023100ed573a723e76c305611f82391eccd703c41ae677a8dc06da6f2b48da82960ca9080c96cce591d78d86406f467d3a12f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008ca674439725df74b366cba787d50ebaf5cfaa9acdbc9eca88007d4a918aa7627882a89961f877e64c55920123a70c56023000f81cb25df41782f42d76b35e2366e6411cc1506bb99b04d2e87364a1e1ddf22f6ef96dd938661d6264d9c09296c5eb0302047c435bb500663064023019e7b0b29c29ce2c00e089a2610647e2b2af9d68b2322524d13354b97a322d14dbef142fc4f33d51dcd6da9203aa35e702302df1d66a2526eae822cdf79315378ee8e204639cf5c13b7a4444a3601b4aad0c0f4d9da5f6f2866a2221fab659b510390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307a94ce27a343ff8e5aa71bb759613bc3eaa3ed434bac80cf091e8da6a723c13ee2241f5b47acc2e6eee6d18ce3a169830230755d0c514cfac175047812ffd7acacfe8858cba37a9e3708d7536af8f9b07e207f2da5ed154c90b6a16bdd3f119e85640302047c435bb50068306602310093651fa4d16e67926bebdc69a0feba95f7cbfd952237591b7ca44fad8918664e4bcc0474444ae23ac52f5cf111f10c4002310096f3775b73447dc3dda0adc82598d47223e02ad96cfd17b34041e9e0e36aeda6cadad6b0d328c460c1d12fb9b8118da90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304f20d2778aa0e4149ac764c61f1de23d719e5a2522054a2b07189b3badd47c73e5b6c0da5bd60bebda798a9bf3d22c54023100a914c555b2d75ea2a7b3948604bbc20a25a3fc5750d248e190f6b1a0c951289b507d09015ee4038e17cdda349d1485fd0302047c435bb50067306502306f0e9fcbac33122d137fc7de77e0b84c2fe9bb249544b7776599fb3ff2831a140c178a1f5c81d4af533ca05b275c3dab023100d19e079482733b98ad20a6622f3dd5d093128a1a5a35aff68b5fcb6bf0244843fef6b2fde0b0f52608b1e6f34ae48e0f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307c919d019618e13542f54cc7a8e2b1d6976c1ac1a099d6a6aa9d6c2844d1374162680b4ffda9753504a27711c6a5305f023031c39a23f0c865b7bed2d5e87a06489224c82e3967e96ef9884ff3b4ebbe80edb1affe033c93592972ded9ee8f0e72ef0302047c435bb5006630640230306adcfaef1e2f37bd5fd08638476cfc6b93f9126edca18883ca07f7db075ad522ecde0c0c0250f7c58378f87ad6dca302300319e0c3f73d315b0d29d284754a4bac07093300590311583becaa5c9f56076a74c8644aa7f56d12bea19e1ae68adf390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023036c42be63aec928b138ccc8af7506b813378044db669d01f72a38ca2f56e17359d5d10c4677fea454e57a571a7d1af780231008814dbae78aa9eb4ecb1fca7e6d27a883dddb4d577f71f8f04f7a136e2b42f9710aa27d3a953311ed043f580e5f6379c0302047c435bb500663064023031d42097fe69796403d23f9871741162cf451b9599a50331ea8563aa253bb47ac4fdde3c8158f6528e1c49bb1f49ed210230121bd788b460cc9fa4e24fe8812686afbc69d80cdbda693338b7427640d26116ccb48a1cbf14bb35d56b91a788da41a50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e2d1b10baad11ea3e9011280b78a7a463128922294b66aadb9c20f92c80b34594c1dbea60e16e4f3128866695fcacbb7023100e4d507e07e44487842d946fcf6452e7e0cdd37744d9df9dd61115a26ccad4b323460b9a2d3edcdcc666da1d8a21985950302047c435bb500673065023100e04c1ce9ef94b9f0d2b50ee5f997d3acdd7fbb7e391abe86002d7033bbe02e3934ef29de1bd87c8bbeac48416c0e4a0c02300eddc844d864491b21830e1efff5cf124fad281b182f2022c3156e33c821c4c04890b17a160739708ff03c6c785017bb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bf26bcaf0ae2be7c33a31c305940775f3543e2e373fc433582cbddbf073ce97d57deb9172d94e0c700e05420e627144b023100b722baab80cb53627e475707ed1e8bc6e3ca5899e722e4ae80628b7c9e1c7c3c25bd25c074301c1bc9315eb6f37b8bb50302047c435bb500683066023100dcf84e8ed7445012dc04b76ea3653100c6afd8088c3c0fa55b0e4e5a03979e151ef1a0dadc86b7faaee184677f0c7d0b023100be52a59521397144bf7b1168e1078971c837c819a9295887f082ca71861463ff0bee5b11aae5370671ef109550c11cce0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302bbbec88e9f1c8dc62bc761035c6d47ab5a6b70d9677a8f02c037a226b068b363f55e170721982517affd0174fe2de95023100c2e3117aeb723a94c92192e31975c3c23152bc8ae906cf4408cfdc5c3e656af1a5d43272720ef9a9e00fc606c0111f5c0302047c435bb500673065023100b937ade646da16256bccf4f631aee65b645df9e2a5d95c861648afb45d06fd98e0f2efd8dbb82050c677a0599d4a9f49023034e1e29f5b9e465bf57afea3f791ad8eec44824fc0093f932a6ba6ee492c21fc5b6a829480c98352bcb0ee0acc014e840302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c01b861c220db6d655a2c304f1171f26ab538088d38d8bd6760696b436d265cac3343986840670de42dad3203e89ea9c023100a09d454dd6a0ac263f0384ec6554b23387f31817b2dd80b183d9ec9bd32941018470b4cfaef017f884b8ad9d5c7523830302047c435bb500683066023100b335ba51ef946c82b2ae7c4e6de31c0fe0ad1a6b946c98c2d8f4ec89f9695de01490cb36b34d836df183f4e653c1a914023100a4ea5f948b5c0081108e49f0f89c01d40ff304d6e1dd7c0f2d0741874301c5b23f56bfe15e116682be9c38bf05f69e540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304bd7fbeb3f7d0aa543d6970e71f427ef2ddb4eef88ad953eb55c59525ea7ed787249d33f449c509f930a0b6bb776e5c20231008874463507ee085308b3fd3151a1780e796acaa2a008bd22d3694e8e83aa743f70c9b2285e3a8ebfae644b5e169703f60302047c435bb50068306602310094a24de776db319f84054c2b1b7adb9337cf233593a628a71447e3e0029b171789a71cedce34fa46fb18702dfee1fb0c023100919155ac16a03916d9a2698f84c389a53857ae8edd576e767d68f11b1fa02999fc7d75d56237667b9d1df2428694e0ad0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306d4174033039ed98d32c3831d508ceb6a8ea28f27e1233ef7f581abe83a6aebba419e84070319e5dde63d1505a21ecc602302752a24471bd2b4fc7d004be0ec6eaf0a02ce765cd89333fbd14b74051917d898aa0753b9adfe9e4bae2930fc14f6fa80302047c435bb500673065023054d08e5335bf0ed8a159bda7deb01aec673dd9e8a2eae1174a93d4f6d764c81d69bc94fcac5ac5baa03eae39ea7b1a69023100eb03fdaad772dc953f36afd993f13c4d8b897dae4b12153934732bca3d5e03fb49987670ed826a971373f6c1c34d54dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009afe1a6a8b41ac6e96033a397094d20dcd48b9b211dcd1b8dfb4b79fd6f1f97ca7c93ef2408a2ec9e70f3906a614ced002302921af3473eed47e3f17975ab950efa8cf4669aeaf14f8c4ef1712f8d7b28016c15024b3314050dd56874e87208ce1f90302047c435bb500683066023100f66f09e8c980f1711b04fd737944925519d3cc80eb47618f8e3e407ca56203353130d678f32b897692d2cbfebc2dc4670231009c47c4a9808ca7ddde317e84fe2ffb25f7988f67eb55c23ae6dcd37e734c58ff7d1e00674be6568a7751d89a2d99a13b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310083a93569e3aaac4c8121ae1156e1239a12f7ff17a73196e674ce718e272609cbdd1a84ac5de4a5229ad8e75c9d4c713e023100f916bd4e5a23a456f09df67541496746f4860ce5d4eeded546c5eb521803189acdcc564a306a1717a006fafc950ef4070302047c435bb500673065023100e6214a2772f3899669e7a21d2620ea0d41f0ccb0206558420ff34d5ffe730aa692965d57ce36253c107ebfaef92c79d202300ebcbc3d9417494869186c442ab7f3710cdff4fb480ed2f378765e26b5c8e4754e4cd42fcbf46f88fa27754cfee9b7250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302681c6b09826b565d7293e2a534b6f6a0286458cca84b1f84d344cdf3abd31681698b02fbb04d1ad678331b428e59024023100a4cc2c3b8c35a271349a4f63e742d618c35cd2435cfbf86765b4775b5a996f8b69b38333842aefeb0cbe0fb94b6f41ab0302047c435bb5006630640230211430c1edf78b54f5ad85775b986ddca09153032cb687f505242ca530b7d12422f653b3097079ad0ea4ce5a331c893e0230329c4bda489b0c40a84683eaa7dee16fbbbe9dfb5b2c29b0ad161f53d69f36094f4e6b4a6dcacd958556c0ef270830040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100910c403f2d38cacf56828fd0ee88dfc47a4c9189d3b427c5fb4f2425992de4a3c022a04b26a4952203ea26205ae154ca023100ac0bbc900c96aaf68d45dec8d7c8fefc466b3e5f987b02e021876011cdd4ee638d2827df595f9470931642ed85abbad70302047c435bb500673065023100ea214be860ac5f855abaca3a7afcd8b939cdff5604b7327eb8b9a7974fcd08b70e903f036aab1099c6b0b94e2ce592d202306eb96da31a5a20ceb1b0540ec95499ee96520ba03a63f8831c2f980b964aa0223e802fdfbcc92a04ac963e9014930b1c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230754727aa9366798e33c924d5d0eb76c7e2a3e3d3382c15538adfb4929dd0e4e670d278eeae4b004e39e8706a2769ee7502301457d6c25c06b92adb8585726ede6097960aa04aa8c1c84ca6fe646408eb4ebedee0226b6266e9a68b369af2ab22360e0302047c435bb500673065023100f68f7379338b1d82d126834579993cbb001801f6edc4282c1e86c2b058b1401cae10ec30c07022733b1ff89bb05403a402300d1216f8e93e170875c748d7a3ecb431d750dce0155d5a413483159f20f637feca0c29f1b78c5e041b174109af4aa3c50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023074c390a24e73b20cbf822ccd892bf6c969c1f02617305ebb4560b1f495e70ca69b4af337fefbe78e28768d0e06878de4023047ec4e1c577066e53cbb3e05e71794f39ec2bb796fd792ce73c10486e092bdb0cc8b42d71bcde79c4b2cc5174fb0afa50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a8c8d939b77bd5d365740526822567020e2bea3195fdfcdabfb3368a9725ce4273bef4d16b0b325d36474f7e020c06e602303a4fe25feec74333f0e8ea4ec67d6ebff8d77798a469984739239bd4de474038bce56513163ebefbe6970a19e04552c40302047c435bb5006730650231009d145ad8484442af12423985dedfee6a23670ebad8c845a4414b35a8a61b8c8b44886866ce6db61d5edb880a39048d3f02300c69b480b543dc8fa8300b98a05b7b2c8ba5164c40ae0172e86a10abc97994b23fe9a7de55dea557b8bcc64192e565210302047c435bb500683066023100c9fd7a597bc1d8a6c0a02dba1694659c5c151594a626d485f8659e1e170ca08c1249f277f17fa2c51580d531bfd05dfd023100c09ae5459916beae4921113d9911c368954fe04b73c5137ec5a2665012a27850fa4bb2d71197ee809291a3972c5b80e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304f890d65385c4019d397a98f3eaa011b91cea7230fb618a34d5135dd2be3cc49996f073779ccc4158134e032c955c0ff02305fe1b27770fab24beb18cb000960737dad5b5f83575e4142442691fc5119d7a40f11a16268331d356d37b44bd07047d70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e707f60fefc1da7e3ca01c947d159116a4e4aff6064a1e6f93c14cd4f78a325d73446ab1dfc26a1c921b4f980f946a1c02305a2bf43fae92f4ac86c930dd7a9235a2d3de52660c6da410c543cccf6fbe6840b8b302bdb8ba9f626aca1f760f4859190302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023071ae39a0dc1355ab9b76c9109d846ea85c6dbac36590ed27ed60cb621bd8ccfb9ac7460d150dba3c9cf4ba2dadb2a19f023100bb68197d1695299a89852e63d401359bf467efa1942c516c8897f2c0e31bfa30e71a11ddd7e7705b2102ae53551b49dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fda3670a8e10be7de6d771fcd9d9b63d6a0b978ef955e446a7638887aaa10350c6113849d76b0c40824092da7609402002310098a942420f17d480ce28e014a5f98314020403ab2cf2ba3836d17527618e8b882973c0c42b938a36938e88dbc41cd2ff0302047c435bb500673065023100f2bb8f2d29d2ae4139560b01480bbeee09a60c258e938f0544886f5301069baa2900d5fa874fe95d14f23a545bedd5740230433af9cb97245f632df6f0ef209a3dff8a18d13c04551cb67bc34d18ba61043f3a84ff9db92d09748ec759e76f02c45b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c023bec037afdb45df16d952dfcb27f075e8bb4f8a475a214265f9d2a3298d50e04bd2c8934f3f09c2af13abccc2c282023067af2d39e9ea5e787f10562c191b280c6ed8ba45f54a923171405ca09337fe4d1ec6fca88164bf364ed743cf322d10c70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100efd60d53aa30ba6c3cf76cb444805857661d404080636064ee9fe70f230147a30ba2590783e64228b897898fb0f06590023100b7e866dadebf93f76cb8af490d7d7c06eeff843216b2219cb6f104aea9f3c946bcb5e3a8c1d5ab0e3b02179eb93b62760302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e49c0d5b166866554b29caea7d6294fb0b75cd55a399976026bfd6f33abf2aea21eadff1a890cc906f2d30bb4dcacece023100fd10b3d4da5ff51ba3cec2bcb81a615ae4d554634b5c92de25536da4fe8e06207184dcb90466c468a11c12a555e0c5320302047c435bb500673065023100c5d1435d48e3eea2d7b1ea93aa8b376c74f4055808d9e92b5d0f43398caddd6a0000b5715e67fa706e5d9d5ac39c729e02301551827f123bc8687fd3c04cb94718e65365639d81d23a5b6d392a58e9a9fbee81699ac5629e280ba342ce9ec0582dd40302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ebb7b1a6e627c5c3adcc9f6fc24f5bdf430f95a2af86f3a1716e72919d69cfe6aa6292548c19a4fff13971a7abf8461d023100e692915a297100876d9321cf56f28b796fb4a8e04d05ee3870ae97d3b6707c6a5ec31e035f6b8a9e8b96b3ab1e9337d50302047c435bb500683066023100e04cd0fd61737c3ddbedf6bb8dd8e5a0ba7d950c843f84c0f992b1e2653c14a3fdc15d84a19b3289ef1f30b09ccc8999023100b8b5b4d18dac2c4678bb7e1ed355540bcae6a96e739538ba087a00119da1a88a5724e4e3ca9a62bea114841aa45fd7470302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230032c7130e904cd7cd7eacca061da9089b58f75ecaa5b75b8f3e47a2bcd497787cb6a17dd753d1aeb5e868e11acc34c1a023100bcda284a9d6683ac2a25a73e8b859c1b9bda2030ff78f503f2474bc8b3039cb432c897b0b236b1ff6cc427d682025e2b0302047c435bb50066306402304f96f1c0c6c578b2b75994ed893e4c2c2fff7686703673f3601f2cc460b5c55de29c1da738e679208cb9b06a2b15199d0230263ab4425578de04b45938832c8bdaaa92c1f6ac3e20fd87b7caab48cf5c76061b60297c9efdd4143eadae52ff0376af0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302d27755d3407540354e95ffff6e65d311b8b4926ddd463e19977f501c4191240ba9fc61d603d652bdb193d3873fa9a5202303e177ec8940f4c485dc6409d4c85fffa888c4c087cdfc78e6d3e4cdceaa574d291f211a476cc0ebacaa42615c8d3e2600302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231009085c0152f487c855d41d5b554c296efa5a7d9634414072982c5d77742bed98f47c467f589ef59ed2bec5e09642d0b06023100a9173078f5e3d00794b134803b174cca152de1751315cd9f85d60330d67e066fcef0e45b77f658ff480a55d35e67a2920302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310096c964b3c8a2875c43c8a7b8a98cf70741daf2af10bff3e7089f4e4d9932f6413330e0cc861bffacc6cfdc090ed48aec02304aaf944fd746b9a68a4573584e84760fd448a8358d6b34ddbb1c62cd482ed09706fb6b18383342335f8b547c5dfc6e930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006830660231008626c831c63be9471c7a03b17c588b30600a8d71185da7d81178c16af1b23d8954622e9e75a25a064afabe847a32cd7f023100a5f5c8fd7884e31fad36b7a3c3b49df87207adc0972432f276e30cde83b086cdda57dff8e494da412101e9294eb030410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301ff1cf07d04cdd28cda131bf0aa6ffeb2ea80606b253dc3facca1b1b2cd09e777dc6cf327637463b0ae16a2cdb14efd702301e5f0f29c986cea027c45229181ea53d17037ee272b48671cd2df27540b294b963fdcfa5ae75c2a830dca786ff143df90302047c435bb500663064023059e26ce68350c582b7206b5e122029e0e7716959153e62e4f5a81be96d107f6054015fb2a37c700dbf101b34fcda4f3d02304eacc05348feb6562175ac0ddad973fc1a69e35f237bc66d4f6e12e76f99c8bb00d87d7cc92e3c5a3aa86958960a28500302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310089611bcf93f11c05a50ff6cd5ca653bdc356eaeffbe38edf2f8f33fc78ff6be89629db686fb3e3d937bb7baa3f6134a1023100aaebcb560b8b0370c011bbc5213724ddaf8e191a7c30ae998ef5c687e7223727b6d0f34ada72178aadf922c35ae559670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023009deb8be70fb56747d8aa3ac3d2fe9dad3d114084813489b2319f71bcfd7feeadebf05314097c378084601de621b85af023100d686e2093c9378e610a935d675f6ff6e95a1aaa6853bc45cb8bc13fb795a2664023718606702ec8b643dd0db470794f50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023012416029cbbf58f53ca87c3986e1fa5fa41aebc1315ad7ab593a5496e66c12bb4c3be7c6d3e48f250f9e73d122d92b4f023039e3f413709e29cda1800c9376089161381482f8ef896aab8616f26304aebec360d8aafca0d8d068e608f34b247bf0020302047c435bb500683066023100b27edc78eced5c85272268fa119625b045aeafc4e4a954ad251c3c5d17e7ad9fd8f620b82074679fcd092087e6a08e7a02310087d254408dc2a12b00bb619de45b79004f2d4fdc4186bd00395dcba25ad899573fc11d3df06d57666b7e4efe0340de260302047c435bb50066306402307653b4cc124940ad933d627e32809b91fdaf462f3d519d509e89f0a8d1099b7e5e6a19330c1cbb668596e910d02aa37502303a5ceafa66e41f2ecb9c29a1e5e695210c01da3e3c153741e78a70e66511534cca01131138a0cf3372c151b13cf3839b0302047c435bb500663064023016946b1dac004e307b4e482149cc4241c6db41627010f605c7f0233d00bf274e87f8c636179f3a742debb0d7c14a3f390230143bb2c5dfb2faf4dae46884d21ba9f7e81f28ab5a8267b0c96b7816595152be009690655a586da4c35b16ea9efd260c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100813591f57bde54e931cdfb972810a64aa487b1822151511c53acaca74cd5dc627acacaf48ce64305bf20f1ddd07b76a802302b09c8fdbc760198607fca7738ffd56f1aba578e66be61fef0f9e40a867c77489836969b5a798c1c3c6e91ab6268c87c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230096d8ef15afdd8e68e190515054a7b78fea9a45bdc8d72ca157c910e33a732cf3d60a9a64722588f04b88c8ebf035f42023100a768fbb4b522b797175ad56ca74a5938da0b486e82154af62a7612d5a7080e21b0cd84f9974d6525000aa33710c741330302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023025e5380c6efe43a0c30cdb437983a2c4a4bfc6301b8e0731d9381c6ee9104003fb7f6fc830a7e2edb2b541d44047f40a023100caa3bbc703697763a396fac15bc1b0da51a269437f99eea8fff4ea66f462ad6696069c76eac067f2aabbd5d811ae9eae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009b5ebda9cab2ee9a76ac832a44fa3a6b3933baa9419422543287a48fcac8e5fe53219c34701312c53fd906cff659617d023049a77f1c2c92c31f5f41e72334ddfd6c5f6333e48667986e667caed75ffd76d70533d18ddd7a99227b62c74cce383e170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a95226ec9fa942b49b6e8c7db6b37bf56529f4e31ef22d2b20bb0f8a195c8425e77f1ce87573354dccf1d1b9afad8bae02300fb12922cb933058a88b0086fb9f3cc020d173c058e6dac78b3e21bf1a82554bd0a229c992eecba13ea348ab757441c60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e42a12d3534a18ecbcbaae45a9c5cb17590b57cc49cf0d3bd68c7a72455a17ee6e917c9908ee57854aab33d264d111470230471126f38ab8de6496947dddd873c9c9771ec03c27657162d61e8a5c85401d0e44316d8a4ee3a68c0431be7e083567070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023023a874f488ef3a951cbd1cef6a50578d5254ae7af6442a8272ed3fedd6a6960732b79bfc7c3fba91b1cf4187f7cb6718023100d5573523b310dd0648fd5b9e54d88ee1849a4fcf917083bd2512eda7c089e4966e821de7e0cb97c2d1822826c76ba1ae0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023019d6ab74ab6aa9d5c4c3a8c55963c089c705b8a45ec1bd6ca8c417f83718ed874781f133d7cdf3c142c8655e3535d4f2023100ad1e305d61e39e13c40b1f138ba150fb9a6f0fd721b4ad2e6df56d7df8584f0cbc82efd66746890f8620882679a656eb0302047c435bb500663064023018191fc371b65d933c0efe42f59d3859d00d6cf177c8a6eed4239da141383949b34f0a83c050292f83522bf205aba6db023038710b031e126be4657ceca3324da5a9e0e60b87bcf88db0f10c66de51a103dba1d9506ed1021f1453ee99c184e320cf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023030294f6cc83e51341d7344616ec5b2e771bd575a9d4e860843f935fc76d041948fa00d614b7bf9c23db7eaa6de0778ee023100fa70885dcc580ccdf77830815349e64f958c3dc32889fd5556a46f93de4bd5bb419e93093be07b3be304f905d2eb20dd0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b841f1f4865f0a80b781e7956d62490b97204da0eeb5b1e7f62a3044a0c736a412ce3f0ec413ef227da8e662d1b96bf102302dea2ace6df0f0a8692c41e34a7f3ad09865caa05a8c44d05f112b23d373ab56ff96319c37a98af61c49e42b8c09c8260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307b8288f4646e4017229bed283b6ebef8cdc129ac89ce852c7f8ae44e1e2459e7fbb6a7d9706d1145aee0783b40bff45b02304e3c4780df7a0b661e8db77612e38ea12e900955e27c6f801d43385407295e72007c89851ff454b2ff9497dbc5650af00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c1a79d8f9f38c80c76f754f7d0f1e149e85e6a83d79960383f049f6e6011996e584340dfe0cf99c157766589083a0950023100985b8e0a978eef0c7a279256f06205bdb2184ef7a01a2004cb7d1e383b334d55bbad17242e14fd85be8ae64e8cde8a690302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307b2c4897df3c7781937ebbc2c440e2c2adbbf18b1123b8dd20c5bca94c6798f66f4ed73459d64123fc27103a1335a511023100ae58c15ba63aced2e227076a2ef901a8c50faf14c6b87f6c4a7f5cc4aaebe8d85f8aa385584ac47d834668c2640648620302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ce7c474a59ae7703bd924c61601f8fbbcafdd1fbc0341bba9a203661424476669bebfe6d44ecefc38b7b8929afe5b87c023100ad95d9a43d03e16e969befd063ebba84066d972ec4b60fd448c39276795f150d529378536f1706cb3ef4cb3d5b5482060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305df74dd51468b5416aedd78d7dde9976aae33b949f685e3aaffa944df6ecfffb202cdf42f787dcee97b41b644f7825a30231009bfaaae071ca132c875186ca9b4ac015540b17b60f772aaff910f4ffd3d016c71ad5119223123f20ebc1c101902c18300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023006e4dfbcab907e77415edf7a63efa9ea051f60fbef8a3f3cdd004d6c6f1b9cf0f297e38464d136c840464e05755a1261023100816a5af63b66e6c8afbf1673bc82da0294ca97bf5836ae1210a1bbc7918fe1661c4dc5afcf14bf97e86abe3605e1d8de0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b331559e86a1c9512aeca038c60baed19a08995df7df240dfe428d994b4d1959fc9c524af5bbe8d83f4409e101d0558d023100ce791821154118868ae7892111712a428fa623d6b41afb21ccb0b8d8adc2362adf0faa02b3c9a399ba0bcbdc52ce0e040302047c435bb500673065023001d53a149b69ac028723861e9d995d4a88bc11e3e149d41a8294aefe33c2187c3efc8d0fd06ed2470771434a5a852b73023100a8ee384ae4ea1b9326cd51d5f90439d78c5194280895ba245f64031fa5562db14c0b4d9a130a771c7590bc28d1f608510302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fc2fd7246448e0763d285271a154e38c84bb3f43e8522730db5a22de48ded0c4e8ea517765470abba9772ee7951a206c023050ea8d9eb58652636141943bbaa129149f45b66a794cba28e7cc2075b376baca1349a120e780501a24b708ecfc266f790302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310091efd0f6e0de30b713a3402b5d6d30b1f78a32473afd688cd2ade3c7ea7c9bdb3df8b77cbe1a54161af180fa482ec38802303bb04ef47bc79ac65dfb9eb1b8c6e369fcc176c310ccfe45475f1d642ab75e87f642fd2fa84bb258e306eaf110283da70302047c435bb50066306402306bde7f1e2b5da5655912977de1cb17631e51ed065d0c8a6722a7a3a698d3940139af4001171f0a30099ef061041a705e02306104d9c842079014c6fe3218732c6e0d0a400ff291d295f919b0856c170d39147c604d0683863648e52b9eb78676323a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d1a936141822f6689a0edd00f816c5f990806c40c29b260d7a52ba234a5f882fd3f5779fcb07fb95ec8e17b7cd8d65c00230129aa4bf1c290a6720922c4b0603f77ac21f69098c1cbb96bf31a3b980f2b65455c34c0b9cf60b9d7ee384f2dd61db9c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307738b5dd65560808eec7fa68c030964828d9c300b04ac97c793bc2b24b111b6266b9fc956e825f519fcea5dba4f0c03d023045ef42dbedf4bdcac66d8e6b1fdc44d08e5e78489875cb00dd4bd512b72f268476fdbae05e2e29e5601c3cea27868e900302047c435bb500673065023100f2aecc85c2d7d105f17bddfc5ee47d1b24ffbe8de381c146b18020f91b8a5178e71cb3b79848c6f6b0c6e53b572aa39702304c7f088ca9b173bbb4c9049a2e697126c653fa39da0b9481dfd9b8ad6942a22253df2a3bec47195fb9c7c02339c78ac50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023073d2af48c14177caa50291d2d8dbcf9c7ee39e673c6316fae60cae8826d51ce5aab4786ebf644a12a4f76df8a833f76c0231008d951c09a708e65711ce40b765455d9343d2807447cf1d0a6d5bebf7194ba445a9637984bda6ccade656d4c28999f6be0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023071b313e549bfb258d50e1f49b4afc896bffe258b025d1977d37ce49341e99bc66ff2394c4957a6b44584e7479992e7c4023100a44fa35a08d3f6aa25a8a678d9ea1f560617ee48cdd7ebf5657c050b47c97a9fb635db3896589d49f514cd2147da4b0d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a7541f3c24ba567848bbe52eb51aea1a0fc564681c0d99aafff108f9934254361843e99c479b50b84aa6f305d9726223023100a4a98713ce0c8abf1afcf0a665a6ba0a241d2bd5024d37e568144cc829dd0527019010d13510f475d2a44bde00c95fd10302047c435bb500683066023100f9b807c6326702e3b55955d18c47ab4b343262d42ae5997532841ae48252a1dde3a95137e722a9af96cdf1fb78c34a7f0231008d168fd046d3c6216207bd2baf0c58c0fad0a45d0c5c2783748ff2f9a1ca0066b5fc418f124efd5cb8fdcd528134cc990302047c435bb500673065023002235a245ce32de4ec4243527a88e5c3125a5ae660240a90da8e7da0d551c0599b8c7e20a8ac68d1a995ad43404c09ca023100860a33788a92b7eb5612015953b4bfcf917f388d122b663299ee9828a65a700530f1ecaf4256d49a6517bd03fb2915570302047c435bb500683066023100dcc802b438f7fbfe04c6f105e1b2b5215edbd526ada778ac8c8b4b49c66b6d0b010c0adbc22311abd61ccf422273cd7b02310080cd3268b3211dd170b040acf5c7b6fadc3ed17a6fb72437cc5f447ea36d9d16467a673e7e0d8771948be3a41c3030bc0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f003c18f5d4499bf7625ae537d8f5d986a754a4ebec0ef4f776204ce9bda7e1642568f5d09ad41f87b6b8e62dd31994702305a7fb9cf58ce7b508d1348cb22fdd2605c5ccba35c710fca2c79a03c81e7374d1c403a98705d94dbb0e542d949036bbb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023044851270ce177625fbd8fec220ee34339d9090ee8e19f16700c106da2641f7c82c41aab074475046053ddec06b2c943302302676b7554819044e71fc9a93347d743b729d47a7ca26419fc876fd24b8c8cbb8dfc235e8cb2f6de0bdf4190adc7c9a740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023004d74196f9ae59b796dbc1e8f98e4a70d0e3f7099ed0831e7fc2010032a555926cbbb6339f6839405677c65cd61a9e6f023100e5d8ee8740ae5bf4bc1f4379484b64de8ac2aea053b017dcb3e6f6414d55fa9c06505244cb43910af63c338eee7c15210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310097e429917d11c78370151451f8bd20042cdeb6645a79fa0aefa082ca0d62f8ccb66ae63616a3eb71c89eeef67d01698f023100b8bc0df71ed60441508f215002e275125b555ee0100bce8adf86a37a226fb0a3c8d212cb0d283e06fef7b82812b044f00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402302464e5b359fa112b4c1a67989dbcadaaaa2903b0a7185db4bc0695557896cdebaaad7b5c248eeab886be26672d753e9b023017ff663d02fcd1756483afd6da00f66d80daaa996cca637cc4e023997709299c679f1bd6382f81b8417fd5b8a866a99f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ffbea40da122516c52d77b9d82dcc4b4aabc8e87900277f4efe8f2eed26733b45e0383a5f680f73e79d79af846347af102310084b9071ad7583e903a30e66bd1bf423af892d1bbfec9c4ae606214574eb374a6592b9f07faf36397b5de498d8eb456890302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023004d74196f9ae59b796dbc1e8f98e4a70d0e3f7099ed0831e7fc2010032a555926cbbb6339f6839405677c65cd61a9e6f023100e5d8ee8740ae5bf4bc1f4379484b64de8ac2aea053b017dcb3e6f6414d55fa9c06505244cb43910af63c338eee7c15210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008ed791e9f10da2c9a26de2cb700f9abea230b762f81c08af7670551cd2672b3e0b99ce805cc3c0b8907cf102dc1a3ca602303c9d952b2780b6f28bdfe7acafcb974bb13b68fa5a06ed7b167538fa51f7d76f6be8b526bacd24995b3323b562002e5b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304c9be60351405a76ede6e2321c051b5e431d3af62aac280fcacb8b077e8fd922681c6b6617c6eae8b5d096ede3d048380230594c303f2aeb01940e406d71d96ae4c3de7ecfda10180c65ce7f60c9354b4ba746f38706dd56bff0d2d4a0a2a8bcc73c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023004d74196f9ae59b796dbc1e8f98e4a70d0e3f7099ed0831e7fc2010032a555926cbbb6339f6839405677c65cd61a9e6f023100e5d8ee8740ae5bf4bc1f4379484b64de8ac2aea053b017dcb3e6f6414d55fa9c06505244cb43910af63c338eee7c15210302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d80cb2e54aca93b73c70de155134bf57f6b8db832bfc7558a01cfeb2d546cf2fe9beace6fb2c2f264eab112951659c7402302ba55bcd96cfbdce114eb1891764c1fde63a4c9192ebec8185902b7a130785e3981c6552aa757e2e3fb4243e0050672d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ef1e07510637e7cc9b560c46283675eeaaf8c4d70b6d7519d8ece3a349b6e73ecbcff9f331c28595b55b7729e17bdab80230318e7bd031874a6b1d739e65d18b248875be32e046b484e8967658b71635cb4d1ad1c4b4d95bcf0f4c47199c26ad6bce0302047c435bb5006730650231008a3cd8175ef2503032d228a9c4b5f1220cb971b7638422859e3599f1ea4f3d537dd98c1664f618058a48e3aa379fc14c0230454b817867fd7c7e1b7d63ec2d5f7a15062c622f0427c7ca3b974bcb31879c728efe53cdfece8e47627b1fd3f00824840302047c435bb50066306402301b1aeeb2bc0e467a6a231e9418ce126998682313fa9db80597f7bcec3da8b879db188f005c9bcc757e4848af1cf93c6d02306078a6292b1c9a9962ea4421259c8d8a736e80e554ab2763cc678333bebe205d7b67f5de68af213dd5a69a5f8110ba090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100aa39d88819b32d4c245b6c805e1af77abb2d0f2474ca874899bb3536d48e4ecd427e7578dc2667a0cd5ce2fa9a77bc9d023100a613644177369aca84fbe125f65265662b8ae6086fd793baeed3437f035e3a73747b76aa1ea90b31b0a9662aaf07bb9c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100db1a96f0d3bc8303552bbb3eb269aad892dc6ebbb778ae1d85779bb302aa08e5b3b483af8918a44c3bec4f15906a2710023037175c71ff878effec4ffed805b546ca8d028e2d09a51c4b321f787a0630191b1d1224f02ec33af7d59511f772cf3b0c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304ca49c37e8bc84eecc36bfb0f8ee57c58443538a9eef31705972d274dc384ebe6aa07a05fa306d075dcbf1a4b42e8b940230274df454da5af32bd14a6d5fbb01210e73181e48590e35a76b66fe7d773814a8ed935160a3623967f5e27b2b246918350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b1a2935e3b5e6cafbd9ad7e6dc4e39a169a8582ad1a6f06a9ebf0a6847e572d68e26105e1583fc352d79d72d09b5f7d302307243e9419b689f55416e6b921dd125e5612f81b6e56fa2bc61c28f7159b32a755f54fcb26ba6f53d1b5e11dea6207a350302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310098c89ac6a9eff5086b5aa59d4ef80e059f3181aca9ffd5f10f78be30bff7ab05905a0f2979044cb42b5b4a4772beddf002301232af67b5dd39964354cd03184b1bb8aeaf9e54ffc5c54ffcb6009849724825c125a4f85230962f925c7d8d70a835e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100cd0b68cda6b9662b3036313706f21527eb297b5313ac5d725df826a477949d264de77e4c824f42b38cf555c9a6487a770230559b2278e6a1df67413a93bf02e3dd264956d4d5b3b21f74f8500c7772d84b6659a2c112d1d003f91bdb23f62e87f5070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230130eba14da604cfaf79952e1ba18d80f695a046c561cb5779b7a34374e52814f7c9bc1f34a2d98c6b2c40fa021e023bd02301b9fd1ab3b027ab2b8bbbdd5ce2d1dc9d7913b14b898faa11f58e4ecaf4dcaf9e3fca2ad9dc204828aadc653a5abe62e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e579768b447e06111cbfdbf0511e967821274ec125d8a18afdea556f73fa53a3e516de25cace09e8da53f8d0bce5e9a002302d4988ccca3d3dca1fe5b044864cb110803d46920ab3c826726005de854f0859d22fa4d0097847229c95eae2a3ea87450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310082379b6b3cd3fa78de0bbdc77ccbd4ecab5c8637e1f59dd0606ebdbf2df9b0d568a37757232507e2a3b69ac988ba2174023047ca02bcf856cbb8c7b74b1e87db4684c817d9a96a57e045d9fe5030adfbe1424a4860c7fdb0fd229800c0ad8d45b54e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023079c66061d59a6cb5f6cfe4e718d6bf586ff0fc3d89dbfbef455e740b99bee84e4ab692b5da30710eb8ea8ac667cc91c502302129791173d2db8893510c394683e291bc7fc9bb94450533eea16ae7d0e3ae01ef2a5c950797b0b435a1cba7cc3f8a0c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305baad91be7d517b96f48f37e304742038b17bf5f7c464189a1195bbfd6aae093c262cc0cd5b564620172ee6cc4ec0b67023100dc14ad32e96cf1edfe8227be3de88b58fb12aebc0d0d03090b9aa6d8955ba4b5832b3ff0fabf612e316df763f44b104b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023031d880572ab314350c5fc81941fe87dcea063508498a4908eef17d310f77675dea641198899028b43ec8a1f34fc94e92023100a9757d7816fb5ed4e8c8884694b30e3919cf095ed690d51c51a41ab29879ab770baf69c71f033820175ac376a7ee162b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fe755f29267d4aa589c79b4e64572fa318933dcf622625bebbc68b89f513033361c56d2f7a18f473231a4be244ee001102310091b3ab8851cc8950a3c71400699380e75a13a4f64c01b46e6839da0aa786f8d6f62f8960e646cc83c70ab217c5d60e2f0302047c435bb500663064023024a45cae9efc34832575d6a5a38a4bb689da5b14ee43f2fdc0ef18658ac6c96aebb1ddb565bc05a9ec8ead012190cd4202306b1c2b4ad3e3022552b265b3b31d58975c1cfe89b0c0c9a1101c601f90bc92b6a01e2c64722ee4c00cb463b04a1a44730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c803f4d3ea5b623c3066f3f8607d7a4a57db58616aeaeb2693de939ec846be995f7e6bf2f55d5efa196885c2052116e702300ec82ea6adcc3855f64ecb16a94d95def6d7aa16bb426af14ad93a9ae87686a5e2120ea1e21ce742edb7eec97e988f160302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310080d05bc4f6d7a5acb1a22f32fa51eafd65273d9dd1b68c8744a642fb085ad6216de31f21aa3f6d1a0aaa043fa80fe1f6023100971c5bbab93631b75c22742a13aba0a46f276c5e5049dd0ff128ae94e4a45f2d1d4940489d331b4cf075e4bad5f2080c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023020a841bc97e7ae281fb9af78131a98ce9e8f47eeea6e84ebdee3678b4c8891c77f92c27c4b34bc4948257c72cd0b0f6002301599f84d68a77f4f0a7b3f3f2a68353c6cbafcb0b1616907b89334b0c7c107fa87248c41828b5ceb7272e6e90dce04ca0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100cef3c3e6aa4ade64751b97edccf54e0355397c56c5f930c5b820e0c251b836afe38ddd6bd4b918b1e0ae6c3a17814aeb023100cb33c8e2b721ea97c88d3198bc38dd63127b9d70de75e356e9a183067b713043fe1186d3f665740009966cd266263dda0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c8a22407d49ca6d29790e4ba0466069d66a0d101887b32c22aef1aba84f596618c450b73499a556e07bb4b8633191814023100fa64ddf1f6b7126fc6a3b85306b59d325f56e2c8e1da34bc32ba3a3181cbb66deb009d7a7adb8933a98393761e9979cb0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100dc2b76b31c8a9ba24d65c49d6ecc5d1ebaf92d660eec3955a29b7785844ccae52887e7912804ca8431de4e2e67fd472d023100e6c65a9ad25057c30af11521427be3d654bbd26ffda6aa820a030ee5d61ddbe120f619be126684f4df1db20798d549540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023066cb1b885cfaa6cef7bf4f1bf79b56f54e589490e93e2a2248231fb344caff6e17b83b000d52cb7b2cb4a79c21214d47023048032aab83baad8631bfaec339104ea6dbe4288e729b22e8220d6253b70f325c97e7cbe56aa9037a8e496a96eb1b2fbf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f80ffd3a0c0a940aca4b398e47bcafc739ff3e5b31453e4c7e2700db892e2197282a5b83e736f91567032fdae87b8c65023100988ad4406fcded896fb8e4d1dd3b528aac3e8e89f87e50f16c05a59f242063650a8f5c9f93d163527880dc70b7a16c310302047c435bb500683066023100eeca0739c9164919aa2416605969a709288e8434fdae8160e807a72cbab427bc5d26270569673d5ae8ac25541790fae8023100ad4728c6202c6d8070abbcbca37056d817b21fc70df1d79cce39421cdcb93136f70387c90433b1b34a767a863ec58ae80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303b333849d4a54ca55194ec78545920ec29c8ef774864f69ffef69e3301ecb2598ea6aa485a0a6c600051f53ab5ec70c5023100a0095e708530049c72c6de5fd79f086320e6bfdd57039137e47cb9142a64297c9a994eb3c12188455522dbc89f55ae9b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e756c0b91110ac35c7e99fd891623c52d5b0985ac0fb809984ad56fa910928e3e740a14776d4ab5e80fda110aa3c143c023100997a071a670c31da4bbf8cda2b299ecb5b552dd3207179bfcdbca891d18d467708bc21ab943d49b0609e9a48a7ea1e770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100fd979d97cc539e4bedf3f0333a15742e1e685ccfa0802811b54da44d9edfe4ba185cfa6486eb1adc21930853dc796b5002304461971d2fb11b07d14a1390e0c518001e7d23688c490c47cf19bac1d78e9c1d8d6ca72b8429513b68fc5c995453529d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023054541cc5e693371616c6a4ddd82e6305d50115a28251a3800ff8854e7535d8d0487c931411ef461faec90065edba8fca023054ff4c2d2721134bfa3630ba247d48865cad84364a1fe93b8614defd055e0086c8a0fa13578e08ff352812dac69f939e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e38cf16bf929c00a13aa3e133240d80e444bf562eb01c2659e4dc31b96fd9325911bc05d4ac3beadfdf5735dbdcb93802302f85d3b7fef8f438aeee1183d6cd448034d8ff08ca79796675e2c0ef9d176255e45c032d27cbabc61943a2c95e3724540302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502302eaba076835c030aaeac880d7a68cc270665a11768c785fcb99eb9ad511a170799a1683fe638ea7d2f379b68bbe62575023100b67a0523c13303a475e2db5a8f9e668fa8a088d1e79cbf4637200d7fff158cdb3ced5f83c088aae25fc275087fa7f9ed0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402300e4868da5fcfa03082e4f73eafee01c664f0b98cde92f7816e635846805ea1dd9079c83649df570f25995fa7240adb2a02305cbfe896f29996f5a36f1d4c7f5deb14f47d07c9cb23a4bc43a9b9395c8cd560d0d386724254f9d747e3cccde3cf62730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402301b813ae49527ddb31f379146cb1983a5f2b11be7bfe82c3e7ef56c37860cb37453ac2f2bc00c09dad588b03fb65a8dd60230521c68e243b875442c3584aa2be6090b5f4d00aecc4ace4b20a027aaa629529a0432fdc40266547b20a48cbf70025ddf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023009e2341116009f0ce2bd8b7c84faa8350fdda96153b4c613b235f7895e4c354f84104238b2798a34b3b86837c7bef33a02300a05d94b3839c222922ea4696859d29ec58f38e824d4ec8b5bb821a7c28da82e028c3f175b706dd0d39e7a0dd3ccf0d90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230671bbd24f09ced723fd9a8b03d80119d1030f7e961b92b6635d24e0653b3c1cb71ce2f5dc3bc2c61547edfb377f169670231008a05204780e0403a37a80e1378202e1365108691c24b6d3a86a02c6ab8c0649506214a1ed49553b0d4c146f30480a39c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230730ed43246a3cf9580d3ef7f66848ec062d33361247db548c35a2a628595d430140d089c34d45d0dce855acb4d7ff6ac023100a1fb998e07de474ccda4b1b738a7435bfc93c096be90d3ffa72f95e5b5c929807ff04a35b1eaf4453c6aeda552df78060302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100eb44a1a5aefecaeb9dcca75d96aef87487458f8332fec1fa768de0ef0793e33ef8b0035a9bf8d096b9487a70e2d9242a023100d3497530faf9e9136bebcd837b50fc54790e4fef15544437f6ca9234dba1634abdb0004d17e2a4917c23671210f873930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307467d059b10afcb45f07779b77641bc6eb1f7d8afefb4b5fe99809ba3ff369db622f782d463dc84aa326d6fca7d82d5502303a912d2f9d83968a69bca4ba8cce2c2e6aa8f7c57f55db73cec270f665689bd72c4623e98b1bd9d9b913b7ea76bda9300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230453ea2bc37b198467b0675923537a9a79302b68d8a524432ed9ef01a3f3061affc20ef36ec23768728891f1d8d25e70f0231008f5df7a1d60ffcdba820f04145fcab2a5191779b762510c793c0eb03ed81bdd6ba2f5b7ee1596e63e00b6778af2c9a670302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300e59df08037c250f606212e84f78b7199e5ded7dccb9a23ba20d9b58a35780e46b0f6cf0ff5663c9eef7229bfc98dc790231009063bf49832708d86e7f59ec6660c521d23bb10039db4ad9c107c6da79597a0c2d72936cc25ebbf599baffcd33aa368f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304c73eb1cbe547fb4a285f382fecfc068b959ec9b3b2815b47b4944a64672e0ea4a22b4c009ad1c482b7ce600736fa22f023100c98ac74d409108fdd0a12ceba479837f72a8ef256583783429e2f800c360dd665381a83f39522c4eac5493fa96a1dabf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bd72fd2bf8c512f8e3940adac64a0e7c2af33486ddca5cf7ee9e013389a83a7acd6e968e3bc381a1f8e3709b3d928f25023100d2a22ebb9baf447342d46a57d640f7927a6832d7d6d719e6baa637451ec4ab1523ba3702575cc81f2f118f020d5557140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100dfe85f1842859a798167f7ddb6b0224fab3d0ce95ccea79ab994d37e375e29e0fcb2b1127fe19a6210f0b54d6a60fa8a0230512802bc2d1eec789c39f51b45a1604df559bf951c235374a60b1a50a2f9e9bd844587ee1fa3fd629e6ec6eca899dc1f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100aa64d5cadfb47bf5be636ba684b7e4899deeb9acda82d40ff14f02c90597fd7eec67b6fc5182d217da9c9b19949eea1a02301be464cf3093db50b303a17e66c6920b4904367a2ddc4add42b85ba947476bf2b541e7efd80728efd459ab2b7dece0090302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304af09c2e864e0ae93dcc64ba2658c362d295ea0d9af4b374bdb7d7e7f68fc69dccb217c092157cdbd2b14e190afcb9ca023100ee69db7ceebf35371ded6eb0fa47032421de9616988d06964c842145ad31e021e010fd54a8626719429cca252239906e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023040e13aad59ab978c5aa4a5e5a65e706bbaa4644f7fb6b7cbbfdc1f516e11ea81994217519b63c2d0f966ce68b7c7a137023053946bae2f7320db49555f0494ad929eb039504e93934f1af3f1812cca244f3591a9cb4e1da0490fc02d17daee026e6b0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d626c49a338893aa52491e9a69fe6eca14125f7456770ee801cc773ed21a6617f04fe2b964c5e2f7dbe45ee39e49981c023062d4bf8b1a5793308550e50005ba4a1cbe422e896e787a58bc18a19b9e9e99947fdd763d777eca5285b35f4804d877550302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100b421626521cd946ca36a0b495dddaa72fefb140d6917bf8d782ffbf1c6f59c5ff72e7998b7090f5a7981068b6d033bc2023100d34918301fb1f329a2849832263d47c907342029b659fea00a09323ca663695d2d04eacff623447d470a01dcc6b277b50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230091711bdb4768b6eb4acf835029f11cb9d81f02fd7c1a4f2187381e0304b59de421a8933e314b8e59cc996e57f23cade0230741691f547085f2592f02d6b0f0f4f26912f416db65842c1ac03ebf0d1559813aadbae8f682f6334aa121bbd535c1c390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100fc61247bfe2875c89b507a0181cd0848f003309e7e6ebc48ee4cfdf3d54bac6d47a63ad3a7f39b5ef5bd74b1f2e257000231009bad522ea01ff736fcaf7b20b789453632daba4a11dccfecb9161b2612e3d8cb81223f8fbdb9c9e085b738b237a90c9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d715fc6b84d35563c892b09c229587a5601d45375651fcdd9e606d881a67cf6703dd601dc8a1c4c756f5f2a147341fb902302dcf90d8587f3ffae0485173a6d7d7c79009b291df644291f48f06ab47393643dc3c7c24e024327e95b181c8d6d3fa230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301c78245830a09f6c73b02c887387901fb4c493f3b89fbaf73e8fe6a2af11deddb849d2d9bfd81992d2f7c27ba8ac03c8023100abfbfcc0713de10773f6b53556024324153979683fc2c059e9c5b414ab899f9267b2f1b946f1143de4353a4ad753367c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502301fff2325f8d5701cabe2192e9d90efa4a8ef8b06a4e7a7189baa9a58c700c2b1aaf1201e7a3ccff1ad2acefaadf4cbf1023100c3bb763ba274db1206ce1c5c8ba2f246db843fb4d81914d07d3a6de7f68f9003521dbba01e0b733dcaf4a4467678b4170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ab2f41f3b7e83fed082eff5d08ebec0c0da62e5e7ebf1368400103182d6de1a2c969b43c4c3df8fa477ab4f02053c78c023100e4026972ba35095fca9e29ec9c6f6afe103d0bb0f82df63935d6bae896fdf3a8017dd74c1d5f442f07ae4b70738b8b710302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c0e9455ed7290d4dd2f27a53da2a78263a6278a5ed7166a3d8cff79cb5e8341d409bf024f425967da9a34058ea197265023100906fb390dd3af4b96dd47f283ed8ed96de6c8e3cf9e939cf987270ce49958868436f7c445391b51750544ce68a6432a20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a40cddd2f3f60f420613a90c4d6fea9f71cb255af4a9a82b90bc122750038a19f4fa66e77a8ae6a32d999aec1f3485d0023100d1f23d23fae24cb7d32cee0346b509dc901ecee1650c55fdc71f6a59500e94f4d2316482a0aefc1923320f77d56cbae90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100a5152fa7a8adbf00197192c50a43137e541926c4b1c3d01e1aa04868e68a535dd93285405a024de7e7048c61a5d421ca02300fbbda9b31fa6d6fcda97914ea983be8d0c61c88c2275bb278158d174c5a40cf764503ffd9393e7c5d0b6de44001b5480302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023023299fe43ce60e7229efdc534012eb3a4d28661f57ad4ca2391dc51ae6e700fa88d91d21d128e90b0df584afea15de9702307caaad96e3131ddb93845f3db54877e30e28d2b8377f64f5bdca5d6d5cdf47d3aaa3486b3cd1142cd6ebedad1d9456e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500653063022f31164f42b7e8af6862cf82ee927a370881b597e0acbe36346ed7a41cc916d034b05ee873fbbb6a69328733eb3ebe0c02305b012f375765bbf76d99ce242de0264f56daaabdd9c74e505ee8ac33d97ba93b7ef95bfc9b967c255cc6afeb715727df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023071c9a5aca2532943057b5de376de7acedf4f8f9450b6b8156ce5984e92209d2f43ea260d340f77011255951c18113887023060d969eb485d2942c88aaeb5bfbb000aed458001698a546ea02f89e77dc4b76086196fb968293020bf06e727cdfc12e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502304e6921a9308b9eb3344ff49f083e3fc366b300c6f6168eba89482222e3fbde4b60cb143483bb8a894360e2e31cc6368a023100966fa6e5c3ed43728153fe4bfdd533bd6bbab58b7ba4de1cacdbef11677147203c5ec292dd46d0eceb1d667cf1d5e17f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b471dc7066249d8ed5b51c6187c3c7327a1b45a2ba4717e4b5f5da6c0bbc9ca75c38e841fc500c23497527f108ffc42602307f7bda08f8b620038e0e6f4310c401ef6ee631b5eaa44c1e42708cf2854337d6093b5872994dcc84614a562be23db8930302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d3d4330c04edfd78561913e216fc51864c1bf0efd06dd0f43082822b06aa141c793c4daefd17426c017fb1b601b9d1c0023100f3e61e2776e7457b5aeecb52b461907593763240b1dcd3d6c015307d6d6a9501161cfdac5b314fb912aa47d08f4f3acf0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230125f9c1024546cf180f19d0a184c4ccb6b4a5184fe34a8f5807e372e63f32922937bd1016e3032373fabcc8f98c17ace023100aa0decdd4ebd67718013cd5048700db310611c0461e30375903b822674751991c0ef4dfc234878d010c7f248925843e10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230619148f9c07da3a1edfcb9c2c72676935e38656d432b0aaca685471b62c1c80baf50170d8e8b077efe25880d72a413e0023100e311654dc22be723c9142c0bc812e4c6d710e80f021d4deedf2738537e398f953681bc4c470acb0bea2d8e35220c4ffe0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502307aa4627474404691ed078a94fdf0d0fc3ef17916c9f4766b5875f083dfd29acde9a8ef4615de99da5e8b11bae6c51cb7023100870564e6e310b852dc182bce6ce7d56a66fbb8ac1cf457750acac55193a284d901c4db2c8d2798c01bd0dca943a64a9a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c2743ac6eb15ba5135d88bd04fcb8d57efc8eb43c2785bbebe68cc6601049abd76d60de9e3258e6dd34af0baf0ab48f402303c1a168329f0510385be52294808c648362a7ec2176930d61cb97126b304b2d24280e2cd45f7defdf4ab48328c70ed390302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100ac7b126caf7bf458d9aa93055cc7c3c9d8203c32dc38ca9a9e7a211e727b627a0d07f666795a4bdd0853977eae2fcb3002310085d4a65f31decfef480a9b5a8d625f9a1d5967ec479f4df78b42f18ed78e11170d27250bf39cec19f7ed0f086ff820730302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231008655cdef39539008548e2a4ea67bb6724dc3e7fe6e0be5c7e81baac573eda22a5f0594d4728ee38655bd12788edd8eb502300ae81ded3cabe3aa650eb776fb1a38dec822939c0ba1d5f44a195328a61d119c55ee24976244ca250d973c59de9d50f60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023047316f08c4a3586145f69bcce0a25a7185fd8c3053167b055a84c116c66103ca6f2bf1b40c218211ded47b806c2486f5023026d4937dc245945ba86bdefc3d5d0f78105f37ad34ebf3f7198ffc7160cfbf6f0e47ce733a5fb03e81732fc4c43c4f9e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009ce1d58ed2fa0ddb24e5f233b8fdfd0910c05399ae78882501f27b2b90d397f91ec8bc1847db76d9d17b8ed61811d3800230270eef328d9c3f705fe9bc197e2018df14db29e6a564f9c82b9ae73a8fe95308df5d0e3cdc0cbc4f3db2b0072ebe39010302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e75e6a96bf099fba7cba73fd88020e07c8141c45fca6ea513faabe1849ef80880ebf463f52751474613227a04ef8b6f1023100f2e79d7fb029cc0ae07cf08d4968c4d42eb5e59fe79077a5b1f192c3a1966d20012ddb1bdaa8f86a3677308008e443250302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023069bbf432aec0d8c03e370dff4bb17eadd3dfa7de3deebce924aaaf7fc103e140418a959ee94dd8644567f7c304ccf924023100adebe9ff8c606b8e078bc12f318861f10f0161f5f12da90862c0254f28c75b4a52f6ad66eb63b954e051a51b1801e4560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b8483ff237d71393fe4a3e2e97cedd9911acbddd51ffd1e3b0d1158d191b644ae70ec86735884b9c5c1f5d385ed556040230290c7ed54b091f6ff64448cdc1c9b307aaec37efe7b5fccb2d0346bdadca33ef84369168f7c5ca072507f721e063621e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023053be8f05b8602484a8f0b127d08489673a7b2ea39641e3b388dfe39a014832963f591001b8a8caad535169f7f8dfa72d02301448245afda196c0057a6928f6a49a8226b82e4c116bd6f2a8c42b0559996e09df20752f5a7f6bdffbb78cd71e7281180302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303d7e22003fb782bb0700cfe0441753c9ab23e2edc67ca799a532e9efd9f93e377c93c7941f6022366b2bc3259c4f965102310084d3747ff345f704edb8d9ef6a6914e8fed7853c891428c2391c9404f16214e88b195317a5a484de70f0967a46a1f5ef0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230476f8156cffc612415b8185dbca9ae2e0d3df080b12c6b92256f2403bb50f62f29d19a34ab3241d6fdf4d8a7b73725da023100f176bca5278b80010d3b9e69d6c697c6561341cf69da2dd93c666d72480fb6ee16c19dc705f40f37505bfbc433eb29e60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310084869d6b1100c020deca8d9811fbe6e587de88cd12ba58f8c587873f54691408911c6ae8ea8273d40f8861d682147d22023100f3b5ecf423ff63fcffd5c7fe9b49cceac22faf0cdb188cf11eb33169e1fdc7d131a91e989b3f87c624175ac37ca977e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100d291e64903cc48992edd0d00d0e35365c5ea5fd2ec77e65b1189e801f4f2af01bbddabb867aaac6e4d163aebfc27bb68023065e68312e0b2138dc7d2e17163cda97e3e1ad3c110b78555f9ebcecb828b9b337bf42197f19b846b38b8e37ab0203b4f0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100baf67abc57ee7043677455c53410d7cde2bdb43c1afdc86b9970616054a83678d2301306ae1bbd423a70e169863c5def023100bd5ad893f2c99b1129bb6587ebc005a25b7c25c56a9265d59fb7151c07b85eb3c822fb021bb1bbe68d992a8b5135a9c30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502305cd4f0ed4329ce6eb45c74299d095b8b143e21e1a0346a6fccbd621491371b65e04b8b02aa61390778523b885838577c02310083d133120aeeb6f059d1035be5a43e75e303fb1d124a212980046c4780f6b93db0420016b517d5259e938c622fffd8c00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023045b7bdaaf42d569b5a3b9c7eca10acdba5e3a5b72a52fcce03b511c312268ec268fadc20ff11d88ff95a7443e7a5f915023005b54c92dc7b48a19738a3e17760498bbab8f49a355ff8b9f4482a21ef14558cb77bb938946f1c623897614a93fa96030302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303e70ec873ba1bd52c9a6015f41f2b2892c7776e29534ccb85a7bfe17d5e45742ece8185baf3c5aef7f90026dfc797e110230528438709003a82ebf8ff054418ec8e0c8b74b20301a8f3fd029ebc63535c87abc26ef8af1e57db2527f0d5fa189bf2d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502310088365e7b2c5a9b2ae8fa47bfe6cc2cabd42604194cfa816f85a30c6df5be98983a0d365e544026687ef722c432c8e904023007c07b192534cdc17515466fb7be18178956263ae1bee89b8866361ad5048f85d58673a9232ebf83f543b5e89190dfd90302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e4b6869bd73400e3ba4cf2964d1dbac5334ca7d1fd1b97755aca42013c6c1f9757b7bc7cbb66d13a15cce612b9da798b023100f8208964541dce69f7dd1f72b5d0a5b8a3cb4e257fce444060e13b091ca6a89eccf6cbfd3f4a740cd66f4f171278744d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f3efbe9531b1025bfbcb3e6569a5e3ddc33d2602f402f1ce61be122037e49c19c4589245a5e63d98650e8d7f3f8e6996023100ebb31f19c09cf72dd6ab9fab12933f79f4e8f013acf017f9e0cc494f35b5755092dfd0407d01830397ec35e7acbfac800302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402304b178923291a22927b2e43b00c327f011b69e79670c40987a80481aa3d79b2596d3fe54f7a708c53f9965220cb1bb30d0230543b7a2e6cf55843c85a936e3024d5e2b184ec712cabd32cd5595a58dfdae47f917dc0258f10427ae2b37e47d32b0f1c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100a92573bad8d4d1541a7db48a24c342b5772194723f407648b2e5eb68c0e158dc5c2b7a38d4c1253f6db069ceaef078c5023100b3c51eace3a0184f7ab7c4e30cc0ce2d09dfe3705e6c49dcc3fc98f818013d0018843b8557f761ac79dfd903d20f645e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402303ee5dd39bfca24a84b5a38e38374fcb2aacf067882e7ce8e03840dc7b51c9e050cb4da9239323fa9b00409ec15c2a8c602307b07c6b10fc8372416ff632c132e971081f404ca2e57d86eaaf7eb5bb4971b7520cd5e0bc4215fea7e884ed5eca8c5b20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009a63ee6b49d334792f144e58195e308c46560573a6a103aa61b8167a45cc632ac37993d72969bcb08a4e3295aa9e934d023039a8fe57c286e1a7ebf9a06787a9d5e50b6b8cbb36b8ef7d185e95291cf1d36386361691585c1c785f11193f8b09d3680302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006630640230170e45ccbb33d55a8af57e07f2189cb3152d37591c5e17bed4852b4c82e462ba6029405ce939970895cf110b44cb950202304803ee1bd96c00b95a27334199849b477d7599ea69a6abc3772c579064a8fa3f4e28d163439f02684942581d9a0d89ff0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ba1158183211fa7ab683696d407f819c94c1fb7f07c1aa8015d9efb7ae68519c27f3c5e00f65271ed56ef690cf19c81902306e71d8c6d37a2958394adc667d73b95811292a76b5ff196402ee7cf309b6ebac9005022ab3ac2092ac788f24b49be5140302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c795754f6b669a3ee15673c62821df78e9656b3faa244c1e9c3d76b50fd61a43c5708d951bea411c3e1be728c1e608e9023100aaf070506f95af09beb17bc5fac97f2086d2d3cfc40db1293eb335e33332075498b2f42cfe746f3a4133819bcb1de0070302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023066a0d771301553caa1363a4aa49516ad2923eedab7b198cc130ceb7fdd531e86078879cccf17516b18079202ad2a5fcf023100a024470fa1d4511c3a493317d64ac71d2d50b893963da07c7b4e160de96a7eb543c049edcbc96cdc64491e981082566d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023073054967b6f4d59a0a6af6ccdde364d5d3887ffc3855857f925ba0842565c6e60f1a18365dba662e27f6c3951d568a2c023100eabe593eebf3c6112b3c380b3f31a6b4fc465302cdf4830d7fd77a0660d6f5ca42ea925c01667d7891b3ef2cad5cefc20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bf690a25f4646123149938f48a58486217b3630115cd1e5fc685af52394d3dc5f2c134cc8d78e80564a75e4c49006b5102304f01251c735b49cb31ee10728f43984762a107c279a2671dc0a2dd0f5230429b038950b58e6ed0ed6056b36015e510e50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100bd31bafb323a417bcfd9965038f2280e355c4cb9d02034bfe0a99a0bdb76a509fc8692f2e240b6e6227eac637a51f54402301a597b3ef69d447984cd8fc9843a462e9292a8e2710101b6686bd02ae282e9389ceda77511fb0f29bc4bd178abad6e2d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502303ecda45c29dd24809516668c14387a25f8345f3073148837f671eae2c222b166e6266280f81e95a31ea67fa689dc76c702310096906904ffb2ad1a84c751ce0d1e90a9e80230305bb846bc3ece99407afc4c61cde26ebdcf11e3e6f0e8e6ba30918eb80302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300a6f4e03e63b067a3715b9e04f0f4e0976ff7d4048c891107d26eb75d56208d06ea99bec4b3a3c95aa3fb86f0ccd32d0023100c6c4b9423ae721b7ae57e1c6dbc2c9100bd3227e1f4f1cfc1cef094e13ac5e0b719f95fe28989b3819e459f147e6aa560302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023066e89f2891900751d633465cf47aec61e6cdded0feb9f69183cbfb322053867c8611b877072e07aa67cc67643d6d3b17023077e54bcfe9029b635d852ef4285222ba581d377f64db280be01a6d663649ad5463cca24dc950fab49d131b6a08fbd5040302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100db4e2339e6916fd6973380d07b2b30244d14fcd80e92fe8c88942e06701f0808c8e2a0bea3be29a0d9718ab3e557936d023100e4309bf57c18ef5e6b05d8616681789165e325fdaff92caf213551d61edb632ebd6c5ceb2ba937e8ff1ec6ccd9a44c770302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100e2caff28267fae8289b732a060a204250e3e274d48f390521c4dda98eaf8f67d61570a0f4e2071509486b653c960b9a1023100bb7e8c020dfcd28efa5549d639c06cea26470e2504fbbc2bd6648636a78d105f054de05bfb9e70a26d1a44fbaaf0fde30302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100e3e6ae640fee738c9a233fe05d7dd9ad3a49434e422e45c8b8049219e37fb4a3c8c508fbf3d702ba9e1aa87e2c11e841023079367923cd37ac8f6d6c30a5cf0bf901d64b72ed8e9e96307eaf956116d5e7ec2f2bfde0751f3eb40269f0a641f85f2a0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023027a87dbcbc8ba09eb08321657648c0270379a2f20d96f6bef95c53e1903c14bc47bbb8c19181b5a60d5c932b7fdf9a9b02304d627889129b694de6e4c1c9b5cbd1798e4d74ebc24558c29eba6a38ceb3703dfb837e5526e52c79c7963f526f9a02b00302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310093f27853767ce43fa905705bb530518cef2042fe7261d3fe30a0870d5697e86735a6aa3e61e5b4e810955cbdbb515708023100fc38ecd13c84eed2e88a64af2d3aab92790140673887e79a139403b1343137392fb84e8efbac547c0ef066854ed2f0d50302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023075f608ceb8c333367e7cb4caf1b53d8b5a427e6df7b3059aea4428580bce1d9d317c536182bbfbf85f1206e75e0a22d402303ff137af8860bdf077512f34b4f2334e21c117c4ec4c0dc0297391b07da80baf3aaf06e201b35a6a689dddb60e12c3320302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023048d056d15d78846adfb7f703fa8c2b9b6be2157642db0eb5d072dc23f55826bebcf3f8db4893181dcac44ce29b1dd1850230184439f34fbdd6a827f3284daebe274add827a1bfe2be91529c02e64ea8ad1abc576089480a9d018fd0b353ecd492f8e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230061ff89f52a333bb2ff77e409da7918f78d7923cd21407ce266600d674794652a475082cf71730bbb827bd0d0f16e9fe023100d3c2bee808311d26da262f1ac6c90ac2dd2b9e9e7f2549eccb45c686fa0473324e338a058ed068a001f1a3ce6251fc740302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502300ab1514749d7a697c54c1f73ab26f4e5de6bed1dbbc2db93ec6733bdfddec256a2184d579eba28fdada93ef51c53b796023100c429b02245509aea710569f452fca73c8cf9d65520e7530b33a6a0012824a9fc4f97fcfbcdd85f3244f9df8ff419d5230302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023055d8ecf6ed5e9fe55d1f37849142d8a88a6e637c175ac9d1ecbdc556856338b07dd1bdca33f0923614018b110c32ba88023048ceddc94ecc5e206d720226da1bf47b9590f6ccfd34e3f6e22861436b1dd412595c21256416c3dfe1b58b2517a92e170302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100f1b60d088c317ab5bb1378ecfa6de18828066229c212fba9ac06862fa583b2b6ccc67346f1ebf94a0aa20653b2b04c07023100aea0098eb48b84b5fdf231aa1e7180df570e658f27c928a2381662bdfdb809cde0f503ad153d32a09b6fb1173e4d06410302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306405b64932608996d385d4273077e76aec87fbcc873d46d98c4962798c547c237a65283126525f19d3ce782aef1fdc48023069c3ea7d6eb3a1ad8230b1132abadb0803136aea255508cdca8b8657594d066f0e752478b7a989e4fa9e1f42eea368820302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100c4a42f24eda2d47d523b703ca3c1991e59900796931f04dd2fc72416da89a69ac932c2df32b33f2c4aa225d9776dfa4f02306441cdf04b342c2e30caf29450593720f17134e977e6e15bfe64a4d5533176d6d3ac716913159604e82db134d6296fc10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023078434521ad76588e52d498dc444a5935ebd02592050da0843f8c0311944e9793918c08bab3c359a285f527670fa0f03d02302f60017b82359a1f669defc9fb7288baea2cb39eded3f047e316c6f26bc22e6eea66c4f6d8aa1fa5d5df2ae0c92c371c0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100f057256ef984320fcdcf26d773d3688a7a63513a2db8edbdfb3c1a19abbeceb52ce16eb362737304d3ec8dbfa42c22020230043a4fa481fcf1a15e0b7f47d9d5c744970f9b4fe13442afa9a8ed689a67f95989b4a13d6532ffbacd1c0864f0340d420302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b0dfe26de0dda45a2a09c08900055d834624175fd749a88a3a5b413ad52022b03d33ac9f27909f361dd2e9c143efe692023003c821f059e182fe437c4e030de07427f593f8146f1ca098fe5feea908146e6ea0931ddbf7041123233b50dbe588be450302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100bab7ecd199874d00ff5be81b92ac65f0fdc4e62390d3cda1225dcacf3e7a4c2c23c1b53e29a76f2ad38809e86a241c94023100e6a88e078bfc388c1608779349dd4e0ea41ab267a373276fd1a426145f9591d9e3e8714a5af5c62b545929040a0f20520302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230598770cb313c2e0435f5c8ec70c85b832ebdd94829bff70de2a43d44657bd8c829cc47f309ee4d493e42c1fe388034c30231009fb587c27b509fc8bdd7fe6327548efbdfe0c22709fac9f32a7ef4b76851ccd2ec4095599317dc482a5ebb8a7a4d13280302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100addb483b73fef5030ea5948a63359e289066d0d23b0342cdbc9fb3ab3eafc66c0c6885021a2d54c0b9f7d7badf13b583023067511d521c128baebd3c0412eade462af159146d8029a8e312d5ee71bcaea5f6cec183a945093fd7f420305c589233df0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100ba026601836a975444877e8f6bc37903d962e8a983445123ba04c935d332c05ac891bc1a7625dcb051f3d5e61db4e791023016feb550c21b5e655ca2b1f83a04eb3d1fb73cfeeb69a7d27e80faf6dc6feaa4cf99a1658f6908b9ea9da21f845cfd700302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50067306502306ca952db4098c557778918d7a6cf42afeed3124086f98a158e5cd64b49b3be6d287b537af668fd5fed065a11efc5ddb3023100e57eac09aa997d254b63a8aa39236534796fdec58e2e5d2b4b7f431a7815e8b7a65b54cfb3ec627bc5b6f391f9fe70360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023051f50af64962b751218487ac39dd3807b5f332034764c4c459d539c69593c7c3b0af4a95280b6bcfabbb5d2848f361ec023100854afeba1eaf6bea37250b4218583a32d7c18e0c841a8e805c16fa15c7558923d8223749de43f4a91cfcf4eb7bbd62340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023038a42d2d806ff5eaef66f400de11be0a94ab785c0c49cc21e758b6965c819f275e267e3d43703c4e0371d81813205bfb02302216c27273e31459f9b5fb06579985bead582aa17b268805f9efe8a344888f4b830e0dd6a074c892061ba983bc3627340302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100d3061dc02e1611897a6b968ba77b097f8b124bb4fd687e801580411bcccba994db735c8c7532e4fc79d45e9a501a669c023100ff34e5f557e3e1a09201e024b8d8b7398d3cf5f24d4bcdee8b1e9b6d796d3c99e9ddd0afc5b857a4a74350a6d153f14e0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100c031a12ca436e169b8bdb2cfa7c7214ea3b3808f6bfb4bc8acc523bbac9436c4e73d493ce1fc4f591ad5266220d1240e023100958f700aa9a1a149a806ae275b219b5832ea35fc5c669cdea5d39f73c034185ddb13ee99b8e62557cf655dd1f489bb300302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650231009e64dc3733eb7d0d933623e9c9dca861b9c789735a4962304f7d08b92b917408ce7e1010f9a2aa906e326985155ea08c023006960be0deca32192f3c8de78a2af04e2a505f97fd50c3fbb46375f2f6cf009a490be14fedf08dee008656e9d0c878e70302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50068306602310080fbcd5ab67b76f0357e4dddf28c5319df004423f3fe7ba40d375177e661c0072befb930e3b57c24ccc1a760743fe88502310081ca261c22ecf7103efa35a67147e9378a2489a501fb24f6e54608a5540c888f17a13a41f3390d8a6beef2d859e55b7d0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402305439f4268a67a8592f02c71c171b4db9b924afbef749ceb138ba72ac2e5b83ff3bfa89a19c1eb08e997b71404af6111d0230695a30ad9a1bb96e4d58c9e9552579697ff8b69078fa340efff34d7bdb0a20e21acdbc67c78bda6f83528efe58d2f9240302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023021f41ab66dcfd83b14fb7d5df9bd88302e8100540f0a46ec3c8a971422ba95d28fc08c941c8a959d7068def765542bc5023071fb09f19dbd9b6517998fd84f5243cdc0db10da70ef2f89ad93a88800859c6d75cdc4f633512f37308667c017c98cc10302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402307ac18a52d28907c40991e971f27361afac0ebc3a33e49621895f405f61afd186f605ddb5cf201b50c3199f0e47d62f720230661b77470dc902455e74406e9b67c782dcf7bc452b3eb62c26107978045e8df722c006a7f7c6a070fc4222a81064a2830302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb5006730650230329e987b09f1e83b8489afa9cc2b70ea77c4a86a4432ed7846a65539144a1302fe5f245eca6294e492d5b37cf74d73ee023100ec8c1dae64fa6a82ded871912c1007f8faf0364592d612aadfcc618f36e116805a410c70f988fbeeccdafc425dc52c360302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023044ed7cc9bb2baf602a4b1f805c3f89f064e9ff11f3139c09c68c035addf0f2a5af03d919992cb0ca7cbb185f4d6f299b0230556d16f97fc0f2f245eea3acca259c495269444c36b9df102dcdb3a254297a08ef50a02bbe7184c4f94eb214c97bd0260302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb50066306402306d082320bc9e794ddcfe909b37c32dfc2343204c532228e675d7e3829bb5a351d367065917a416053407194d4d0812c902307577c181e05ed4bd261e05caf0c3d8643dfda199fc44ab248dd79dcc0f250c728213a989abc26bca5ee76e4f678de5a60302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500683066023100afdf5b18e770c5ffd6708703938e6b85f176c8e34429523f9421e5879f84695445fde2f3f86b5530e22ef381c137df18023100c0e806858560fe9ec5617eaeab70c7003a7929b053e2f7851b7dc23f3643423c00695548e668b1787f0d126873e415270302047c435bb500663064023057a9ec6b0cd56bbed8572a469668d1af1a10bd68a3f2655a396b6bf3c62919220bfc6189b47dfae929ad22e900a17d66023068cee91f9de979080768d283150cb4de6565bb10d4815124c2c3b9ff4f0d25d4b95322e8f289914193af4b4602658b750302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500673065023100b30c249a8920520dd3c1ab59a1e1bea0204f1020569a54d41a09771c22f4b50d3e90ba636fbe99c9419d92765f990d2902306f8220aa3dcfb04c81a2148f3df1f5bc8dbb191835452650c5d1c28111adc3e763186c746cb9a91422820e4de145e1e20302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023053462f9c31a81b84503d3969e2e56f69fc65bbfbbe2bbde1d88d7796d97df5e59bef27f2a9d4caf3d7c96af662988f510230740896b5afb4e7ae576eabbe33d084baca81c9b72d946ab9489e5e3fe08f3dbaa05266b346d6ae485d63a9708c23b1270302047c435bb500673065023040691d9555c8d93e876e1f5ce04c3d7fa5c1c615adf2744305c89f77e99ddb54b39564aba6e18faa79818983dfec5b02023100d8135a8f5cd992854694ba2837ad7e6dacec7696e5b0e8bad049fb7bd7440ab3457eec1228fa31456f6c4149b6eba5ec0302047c435bb500673065023100abf091aa514d1a9bfbc6182d2f43d8923958b42de8b70a8e79ab4c95cb0359352500ee0e341d5afe20e9820002a9e2f802304c9293d03090bb4440a54046b91fb83fe49cc01397b8cbe69e7c91584c301f08772f143bad86bc136e0169f20c96b8e70302047c435bb500663064023037a4ee1a3a9ba6e67c02effd45301fc1a557c8076e2190246b6cae6d295952528b34b67fb1bd823fd8abc66d126fc29e02305ef74f85240d050de7030c970a14cd81bacf938460d272064d476ed90deb0f22e44517f695ffa03473a691a7fec663bc0302047c435bb500673065023100d48fe8b526ce65f9a20c7984efd6ff7fde6e232df2f70a386271e348ee70b8675c4c69b5d065a5160edbf0f431eaa7a1023016fe0a3d8f49c33e5c42d0b10efde29618c1648ce7a891c28c962add42a0d20f50fb6f31bdf41016ca35d35b225bea760302047c435bb500683066023100cbabd2583966de46f388523fa4578a6396e2fe9065da1fb873096430376ab481f2a49463dd9487a18b530740b6df30560231009cb2fe3d4aa18d1f6c0d3c0c9f3fc0d73f78875241259f5723dafb1bc2745f72f91886a136c1f11a6b059dc099d7f5390302047c435bb500683066023100f0da85978f8b345e5fc71fc9a6fe9dd6fe4b2f15236a4a57fbe27b0b0a32037cf4db80bdfde93f82735da0723f8e88fc023100d1ca975cab6645d44d1adae6941e000d701b05017f327a4e1452ed0d21a01fc1b8489aad726644bef52b39d76727fa73~ΐfv U]E˒㏚Í.>}er97I`vXTãTkYsd53`C #J2U&SwfSU $=1w`@DlW^|&3߰ZmoM1Z6);/B/_w ħ@8vʔ0Ǿxq ̴iiS$oSEd25 wAS-i#DݻԊpyU:5&\OT.tbp>e?ed ) mC VpN>dN 2N zN N N |N"NN77HNrsTstt(t$8t,~9~$~:~>B GBNH}NILNX4YH\N]DHN^ bۏdefltNuNvT<*eeePeXepeveCkernel-rt-devel4.18.0552.rt7.341.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.fVx86-04.stream.rdu2.redhat.comN!CentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxx86_64if [ -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.rt7.341.el8.x86_64 && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiXM CB<Ucn<y92%# (j4 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&.<KJ Y7 R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS=14j OiCJ<&^n?u$|f?<i.,l 9E-- #- )! [E2 Byd. ( /B$|\,>  S/ DH  &c,  90}%x\}7Y  zJ K@WA99Px MQJ : /D.` 9 1 A  :_u F^U!6 . / ] ;v'Q0 5'k,h<5J h % A` X: O+Ehk c"C WI2 B B cXo_#$ &t _ F+qM53e # I| Gp` ;.9P Bqd4 ( 8$KK1OLE $ $R 9IY l f]Udx h{C $-<C4 9%T#) 9('#&' 3( +{$d@#"jARK  <E e-i{aEj^" & ! ;&<"!E =/x[X[52u,5'%`%T'%<!gqYws h42 *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\uk0J?&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[J5& : 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 8.P_^gd%q/Vq^! o\2VO L0Yj4NIt =L6>Kp4 6 2/P1HbPI)"./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?(?PL^4b    [!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/_ ~B &q O( XH^ p(X a 6,G)B )u< A'&>@ /%$) 1˒# k+*K6s$ xS@'m*1AWN d:tP,S ?nc>.]}^T];fO`  UF23#z + zI0!8 7Aj0 i=i;v5 I72Z  's)=+%U.lL yP ?  iRA(5H@[itZn& `| + e f .!&2J:`-< Z 42}?@ b?Y f!29~  6Ez1 ;-#feJn-q+$CR7?ea=a+)Q [oa!PjXv8Y[ 8 PM 1~^= < 31[| { "6KQ K*3]cW- r C!/3 !' _ I/  K %= K&v.m$s }i)3#$Ug.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.7h@ 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 f?l8 v<IFS Y b042 Rx , VQx$D R$^<G  Lyd;Wx M c'uvF n"PK ?Xpq  %51S4a "/&D< $8 %\*>ao );&_ B8[ j_ ,D-CSH9(,W{I,"s- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QORY7FS 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$C,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 w6i4  LYEz: ` Jp+)m$]sfk 6^;}AaAb 0s zIo<ez%/Tf/~ 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/ %!  ypZ ]&;Z 6-%d) u#|NHV(=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}96x=d/4. e_&'=h/]BAIkAA =' =`(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 [>Kp( 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큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤AA큤AAA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤AA큤A큤AAA큤A큤AAA큤AAA큤A큤AAA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AAA큤A큤AAAA큤AAA큤AA큤A큤AA큤AA큤AAA큤A큤AAA큤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큤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큤AA큤AAA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤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큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤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큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤AAA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤AAAA큤A큤AAAA큤A큤AA큤AAA큤A큤A큤AA큤AA큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤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큤AA큤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큤A큤A큤AAA큤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큤AAA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤AA큤AAAA큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤A큤A큤A큤A큤AAA큤A큤AAAA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤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큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤AAA큤A큤AA큤AA큤AA큤AA큤A큤A큤AA큤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큤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큤AAA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AA큤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큤AA큤A큤AA큤A큤A큤AAA큤A큤AAA큤A큤A큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤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큤AA큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AAAA큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤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큤ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff$ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff$ffffffffffff$fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff#fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff#fff#ff#fff#ffff#ffff#ffffffff#ff#f#ffff#ffffffff#ffff#fff#f#fffff#ff#fff#fffff#f#ffff#ff#f#f#ff#fff#ffffff#fff#ff#ff#f#ff#fff#ff#fff#fffffff#ff#ff#ff#ff#fff#ff#ff#ffff#ff#f#ff#fff#f#f#ff#f#ff#fff#f#ff#f#f#ff#ff#f#ff#ff#ff#ff#f#ff#ff#ff#ff#f#ff#ff#f#ff#fff#ff#ff#f#ff#f#f#fff#ff#fff#f#fff#ff#f#ff#ff#f#f#ff#ff#fff#f#ff#ff#f#f#ff#fff#f#f#ff#f#f#ff#fff#f#f#ffff#f#ffff#ff#f#fff#f#ff#ffff#ff#ff#fff#ff#ff#ffff#ff#f#ff#ff#ff#fff#f#f#ff#ff#f#f#f#ff#f#f#ff#f#ff#ff#f#ff#f#ff#f#f#ff#ff#f#f#fff#ff#ff#fff#f#ff#f#ff#ffff#fff#fff#fffffff#ff#ff#fffff#ffffff#fff#ff#ffffffffffffff#fffff#ff#ffffff#ff#ff#ff#ff#ff#fff#fff#fff#f#ff#ff#ff#ff#f#ffff#f#fffff#fffff#f#ff#ff#ff#ffff#f#fff#f#ff#f#ff#ffff#ff#ffff#ffff#fff#ff#ff#ffff#ffff#ffffffff#fffff#ff#fff#ffff#fff#fff#fffff#f#ff#f#f#fff#ff#f#f#ff#f#fff#fff#ff#ff#ff#fff#fff#f#fff#f#ff#fff#fffff#ffff#ff#f#fffffffffff#ffffffff#ffff#fff#ff#ff#ff#ff#f#fff#ffff#ff#ff#fffffffff#ffffff#ffffffffff#ffff#ffffff#ff#f#ff#ff#f#fff#ff#fff#f#ffff#ff#ffff#fff#fff#ffff#ffff#fff#fffffff#fff#ff#ff#ff#f#ff#f#ff#ff#f#ff#fff#ff#f#ff#ff#f#ff#ff#fff#ff#ff#f#ff#ff#ff#ff#f#ff#ff#ff#ff#f#ff#f#f#ff#ff#ffffff#fffffffff#ff#ff#ff#f#ff#fffff#ff#f#ffff#ff#ff#f#fff#fff#fff#f#fff#fff#ff#ff#ff#f#f#fff#f#fff#ff#f#fff#fff#ff#fff#ff#ff#f#ff#ff#fff#f#ffff#f#fff#fff#f#f#f#fff#fff#f#ff#f#ff#f#ffffffffff#ff#ff#ff#ffffff#ffff#fff#fff#fff#ff#ffff#fffff#f#ff#fffff#ff#ff#ffffff#fffffff#fff#ff#ff#f#f#ff#f#ff#ff#ff#ff#f#ff#ff#f#fffff#ff#ffff#fff#fff#ffffffff#f#f#ff#f#fffff#fff#ffff#fffffffff#ffff#fffffffffff#fffff#ff#f#ff#f#ff#ffffffffff#fffffffff#ffffff#ff#ffffff#ffffffff#ff#f#ff#f#ff#f#ff#fff#ffff#fffffff#ff#f#fff#f#fff#ff#fffffffffffff#ff#ffffff#ff#ffff#f#ffff#ff#f#ffff#fffffff#fff#fffffff#ff#fff#f#ff#f#ff#f#ff#ff#ff#ff#f#f#ff#ffff#ffff#ffffff#f#ff#ff#ffff#fffff#fff#fff#f#fff#fffffffff#ffff#ffffff#fffff#ffffff#ff#ff#ffff#ff#fff#fff#ff#f#f#f#ffffff#fff#ff#ff#ff#ff#ff#fff#ff#ff#fff#fffffff#ff#f#ff#ff#fff#f#ff#f#ff#fff#f#fff#fff#ff#ff#ff#ff#ff#fff#ff#f#ff#f#fff#ff#ff#ff#fff#ff#f#fff#ff#f#ff#ff#ff#ff#fff#fff#fff#ffff#fffff#ffff#ff#ff#ff#ffff#fffff#ffff#ffff#f#ffffff#ffffffffffffffffffffffffffff#ff#fff#fff#fffffffffffffffffff#fffffffffffffffffffffffffffffffffffffffffffffffffffffff#ffff#fffff#fff#ffffffffff#fffff#fffffffffffff#f#fffff#fff#ffffffffff#f#ffff#ff#ff#ff#f#fff#ff#ffff#fff#f#ffff#fff#fff#ff#fffffffffffffff#ffffffff#fff#ffff#ff#f#ff#f#fffff#ff#fff#fff#ff#ff#ff#ff#fff#ff#f#ff#ff#ff#ffffff#ff#fff#ff#ff#f#fff#ff#ff#f#ff#fff#ff#f#ff#ff#fff#f#ff#ff#ff#f#ffff#ff#ff#f#ff#fffff#ffff#fffffff#ff#fff#ff#ff#f#ff#fffff#ff#f#ff#fff#ffff#ff#ff#f#ff#ff#fffff#ffff#ff#ffff#ff#fff#ffff#f#ff#ffff#fff#fff#ffff#fff#f#ff#ff#ff#fff#ff#fff#ff#ff#ff#ff#ff#fff#ff#ff#ffff#ff#f#fffff#f#f#fff#ffff#fff#ff#f#fff#ff#ff#fff#f#ff#f#ff#ff#fff#f#fff#f#ff#ff#ffffff#fffffff#ff#fff#ff#fff#ff#ff#f#fff#f#ff#f#ff#fff#fff#ff#f#ff#f#f#fff#f#ff#ff#f#ff#ff#fffff#f#ff#ff#f#ff#ff#ff#f#fff#f#fff#ff#ff#f#ff#f#ff#ff#fff#fff#ff#f#ff#ff#ff#f#ff#f#fff#ff#f#ff#ff#fff#f#ff#f#ff#fff#ff#ff#f#ff#f#ff#fff#ff#ff#f#f#f#ff#ff#fffffff#ff#fff#ff#f#ff#fff#ffffff#fff#fff#ff#f#ff#ff#f#ff#fff#fffff#ff#f#ffff#f#ff#f#f#f#ff#ff#f#f#f#ff#fff#f#ff#f#f#ff#fff#fff#f#ff#f#ff#f#f#ff#ffffff#ff#ff#ff#fff#fffffffff#fff#ffffffffffffffffffffffffffff#fffffffffffffffffffffff#f#fff#ff#ff#ffff#fff#ff#fffffffffffffffffffffff#f#fff#f#fff#f#ff#ffff#fff#ffff#ffff#ff#fffff#fffff#ffffff#ff#ff#ff#ff#ff#ffffff#ffffff#ff#ffff#f#ff#f#fff#ff#fff#ff#ff#ffffffff#ff#fff#fff#ff#fff#fff#ffff#fffffff#ffff#ff#ff#ffffffff#fff#fff#fff#ffffffff#fffff#ffff#ff#fff#ff#fff#fff#ffff#ff#ff#f#ff#ff#ffffffff#ffffff#fff#f#ff#fff#fff#f#ff#ff#ffff#ff#f#ffff#ff#f#ff#ff#f#f#f#ff#ff#ff#ff#fff#fff#fffff#ff#ff#ff#fff#ff#ff#ff#ffffff#ff#ff#f#fff#fffff#fffffff#f#ff#ffffff#fffff#ff#ff#f#f#ff#ff#ff#fff#ff#ffff#fff#f#ffff#fffff#ff#fffffffffff#ff#ff#ff#fff#fff#ff#ff#ff#ffff#fffffff#ff#ff#ffff#ff#ff#fffff#ff#ff#ffffff#fffff#f#f#ff#f#ff#ff#ffffffff#f#fff#f#ffff#ff#ff#ff#f#ff#ffffff#ff#fff#ffffff#ff#ff#f#ff#f#ff#fff#fff#ff#f#fffffff#ffffffff#ffffffff#fff#fffff#ff#ffff#fffffffffffff#fff#fffffffff#ff#fffff#ff#f#fffffffff#ff#ff#ffff#f#ffff#fffffffffffff#fffff#ff#f#ff#fff#fff#ffffff#ff#ffff#ff#ff#ff#ff#ff#ff#ff#ff#fffffff#ffff#ffff#ff#ff#f#fff#fff#ff#fff#ff#ffff#ffff#ff#f#ff#fff#ff#fffff#f#ff#f#ff#fff#ffff#fff#fff#fffff#f#ffffffffff#fff#ffff#ff#ff#ff#f#fffff#ffff#ff#ffffff#fffff#ff#fff#ff#ff#ffff#ff#f#ffffff#ff#fff#ff#ff#ffff#ff#fff#fff#ff#fff#fff#f#ff#f#f#fffffff#ffffff#f#fff#f#ff#ff#f#fff#ff#fffffff#fffff#ffff#fffffffff#f#ffffff#f#ff#ff#ffff#f#ffff#f#fff#f#ff#f#f#f#fff#f#ff#ff#fff#ff#ff#f#ff#f#f#ff#ff#ff#ff#ff#fff#f#ff#ff#f#ff#fff#ff#ff#fff#fff#fff#ffff#f#ffff#f#f#fff#ff#fffff#f#ff#ffff#ff#f#ff#f#fff#f#ff#fff#ffffffffff#ff#ffffff#fff#f#ff#f#fff#ff#ff#ff#f#ff#ff#ff#fff#fffffffffffffffffffffffffffffffffffff#ff#ff#ff#f#fff#ffff#f#ff#ff#fffffff#ff#fff#fff#ff#f#ff#ff#f#ffff#fffff#f#ff#ff#fff#ff#ff#ffff#ffff#ff#ff#ffff#ffffffffffffff#fff#fff#ffff#ff#ff#ff#ffff#fffffffff#fff#ff#fff#ffff#fff#f#fffffff#fffff#ff#fffff#fff#ff#fffff#fff#fff#ff#ff#f#ff#f#ff#fff#f#ff#f#ff#fffffff#fff#ff#ff#f#fff#ffff#f#ffff#fffff#ffffffff#ffffff#fffff#ffff#fff#ff#f#ffff#fff#fff#ff#f#ffffff#ff#ffff#fff#fff#ffff#fff#f#f#ffff#ff#ff#ff#ff#ff#ff#f#f#fff#f#f#ff#fffff#ff#fff#ffff#ff#fffff#f#f#ff#ff#f#f#f#ff#f#ff#f#ff#ff#ffffffffffffff#fff#fffffffffffffffff#fff#fffffffffff#fff#ff#ffffff#fff#f#ff#ffff#fff#ff#fff#fffffffffff#ffffffff#fffffffffffffff#fff#f#ff#ff#ffffff#ff#ffffffffffffffffffffffffffff#fff#f#f#ffff#ffff#ffff#ff#fffff#fff#fffffffffffffffffffffffffffffffffffffffffffff#fffffffffffffffffffffffffff#fff#ff#fff#ff#ff#f#ffffffffff#ffffffffffff#f#ffff#fffff#fff#ffff#f#fffff#fffff#fffffffffff#ffff#fff#fff#fffffffff#fff#ff#f#fff#f#ffffff#f#ff#fff#ff#ff#f#fff#ff#ffff#ff#fff#ff#ff#f#ffffff#ffff#ffffff#ff#ffffffffffff#ffffffff#ffff#fff#ffffffffffffffffffffffff#fffffffffffff#fff#fffffffffffff#f#ffff#ff#ff#f#ffff#f#fff#fff#ffffffffff#fff#ff#ff#ffff#ffffff#ffffffff#ffff#fff#ff#ff#fffff#f#ff#fff#ff#ff#ff#ff#ffff#fffffff#ff#ff#f#f#ffff#ffff#fff#fff#ffff#ffff#fffffff#fff#ff#fff#fffff#f#ffffff#fff#fffff#ff#ff#f#ff#ffff#ffff#ff#ffff#f#f#ff#fff#fff#fffffffffffffffffff#f#fff#ff#ffff#f#fff#ffff#fff#ff#ff#ff#ff#ffff#f#f#f#ff#ffff#fffff#ffffffff#fffff#ff#fffff#fffffff#f#ff#ff#f#fff#fff#f#f#fff#ff#ff#fffff#ff#fff#f#ff#ff#fff#f#f#fff#ff#ff#ff#fff#f#ffff#f#f#fffff#fff#fffff#f#ff#fffffffffff#fff#fff#ff#ff#ff#fff#ffff#fff#ff#f#fff#f#ff#ff#ff#fff#ff#ff#ff#f#ffffff#f#fff#f#ff#ff#ff#ff#fffffff#fff#fff#f#ffff#ffff#ffffff#ff#ff#f#ffff#ffff#ff#ff#f#fff#f#fff#ffffffffffff#fff#f#ffff#ff#f#fff#ffffff#ffffffff#ff#fffffffff#ff#ffffffffffff#fffffff#fffffffffffffffffff#fff#f#ff#ffff#ff#ff#fff#fff#fff#fffffff#fffffff#ffff#ffffffff#ffffff#f#ff#f#f#ff#f#f#fff#fff#f#ffff#f#fff#f#fff#f#ff#ffffff#fff#f#fffff#fff#ff#ff#fff#fff#ffff#fffff#fff#fffffff#ff#ff#ff#fff#ff#fff#fff#fff#fff#ff#fff#f#f#fff#f#f#ff#ff#fff#f#f#ff#fff#ffff#ff#fff#ffff#f#ff#f#ff#ffff#f#ff#fff#ffffffffffffffffffff#ffffffffff#ffffffffff#ffffffff#fffffffffff#ffffffffffffffffffffffffffffffffffff#fff#ffffffff#fffffffffffffff#fffffffffffffff#f#fffffffff#fff#fffff#ff#ff#ff#ff#fffff#fff#ff#ff#ffffff#ff#ff#ffff#ff#fffffff#ff#ff#fffff#fff#f#ffff#f#f#ff#ff#f#ffff#fffff#fff#fff#f#ff#fff#ff#ff#ff#ff#ff#f#ffffff#f#fff#fffffffffff#ff#ff#ff#f#fffffff#ffff#fff#ffffff#fffff#fffffffff#ff#fff#ffffffffffffff#f#ff#ff#ff#fffff#f#ffff#ff#f#ff#fff#f#fffffffffffffff#f#fff#fffff#ff#fffffff#fff#fffff#ffff#f#fffff#ffff#ffffff#ffffff#fff#ff#fffff#fff#ff#ff#ff#fff#fff#ff#fff#fffff#ffffffffff#fff#f#ff#fff#f#ff#ff#ff#f#f#fff#ff#f#f#ff#ff#ff#ff#f#ff#ffff#f#f#f#ff#ff#ff#ff#ff#ff#f#fff#f#ff#f#ff#ff#f#ff#f#ff#ff#f#ff#ff#f#ff#ff#ff#f#ff#f#fff#ff#f#f#ff#f#ff#ff#ff#ffff#ff#f#ff#f#f#ff#f#ff#ff#ff#ff#ff#ff#ff#f#ff#ff#f#ff#fff#f#f#fffff#ffffffffff#ffffffff#fff#ff#ffff#fffffffff#fff#fffff#fff#ff#fff#f#f#fff#ff#fff#ff#ff#ffff#ffffffffffff#ffff#ff#fff#ffffff#ff#f#ffff#f#fffff#ff#ffffffff#fff#f#ffffff#ff#fff#f#ff#ff#fff#f#f#f#fff#ffff#ffff#ffffffffffff#ff#fffffff#ffff#f#ff#ff#ff#ff#f#ff#fff#ff#ff#f#fff#ffff#fff#ff#ff#ffff#fff#ff#ffff#fff#f#ff#ff#f#ff#ff#f#fffffff#ff#ffff#f#ff#fff#fffff#fff#ff#ff#ffff#fff#ff#ff#ff#ff#f#ff#ff#fffff#ff#ffffff#ff#ff#ff#ffff#ff#ff#ff#fff#f#f#fff#ff#fff#ffff#f#ff#ffffff#ff#f#ff#fff#f#fff#ff#fff#fffff#fff#ffff#ffff#fffff#f#ffffffffffffffffff#f#fff#ff#fff#ffff#fffff#ff#f#f#ff#f#f#ff#f#ff#ff#ff#ffff#ff#f#ff#ff#ffff#f#f#ff#ff#fff#fff#f#ffff#ff#ffff#fff#fff#ff#fff#ff#ff#f#ff#fff#fff#ff#f#ffff#f#fff#ffff#ffff#ff#ffff#ff#ffff#ffffffff#ff#ff#ff#f#fffff#ffff#ff#fff#ffff#ff#ff#ff#fff#ffff#fff#f#fff#f#ffff#fffff#fff#ff#fff#f#ff#fffff#ff#f#fff#ffffffffffffff#fffffffffffffffffffffffffffff#fffff#fff#fffffffffff#ff#f#fffffff#f#fff#ffff#fffff#fffff#f#fffffff#ff#fffff#f#fff#fffff#ff#ff#ff#ff#ff#f#fffff#fffffffff#fff#ff#fffff#ffffffff#ffff#ff#ff#ffffffffffffff#fffffffffffff#fff#fffff#fff#fff#ffffffffffffffff#ffff#f#ff#ffff#fff#fffffff#ffff#f#f#f#ff#ff#ff#fff#ff#fff#ff#fffff#ff#fffff#ff#ff#ff#ffff#fffff#f#ff#ffff#ffffffff#ff#f#fffffff#fff#ffffffff#fffffff#fffff#fff#ffffff#ffffffff#fffff#ffffff#ffffffffffffff#f#ffff#ff#ffffff#f#f#ffff#ff#ffffffffff#fffff#ffff#ff#f#ffff#f#ff#ffff#fff#ffff#ff#fffff#ff#fff#f#fff#ff#ff#fff#f#ff#fff#f#ff#fff#ffff#ff#fffffffff#ff#f#ff#ffff#ff#fff#f#fff#f#ff#ff#ff#ff#f#ffff#ffff#ff#fff#ff#ff#f#ff#ff#f#fff#f#fff#f#ff#ff#f#ff#ff#ffffff#ff#ff#f#ffff#ff#fff#f#ff#ff#ff#ff#f#fff#ff#f#f#f#ff#ffff#ff#f#ff#ffff#f#ff#fff#ff#f#fff#fffffffff#fff#ff#fff#ff#fff#f#fffffffff#ff#ffffffff#fff#fffff#fff#ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff$ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff]fffffffffffffffffffffff*ff*ff*fff*ffffffffffffff]ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff*ffffffff]fffffffffffffffffffffffffffffffffffffffffffffffffffffff*fffffffffffffoffffffffffffffffffoffffffffffffff*ff*ffffffffffffffffff*ff]ff*fffffffffffffofffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff*ffffffffff*ff*ffffffffffffffffff*ffff*fffffff*ff*ffff*fff*ffffff*ff*fffffffffff*fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff*ff*fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8ea2e6dfa54f1c12996afda43950e28e29e97bcd53a8fdc5ea55c56de7dfea3743aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d49cd6a76451280fc4dec123fe648873122f737821c02ccb165684f3dea7752c13366b6aacd13047e6e2970816d557011c3184b1c92e0a5e03f02d2b974cc8d55837597076b460a163bd2ade7eae5772aa2e70667b358ae7d8b2981803897dea1b996f58b1cd5f2becf3ba6bf523049c2304c46f5088a4e9713e8ecde5adba2ac61d7f202d0948b1913a86b3590358a83f2b9d0be5732bc5e558a4c9ebaa928fe0a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803f595d70fe2e7583ae1226ccb345db07a5a68cabecc7088d65d1bea25b3d75e7cf1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e3202547b9970e4a6d79e80d0995c11dcbf78d13fc032879a7417a6b5e8b0676a6ed2a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7bb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f29961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0c09679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c1d829e57cd5e5bfd4dea82b87c78857d585fcf53da9123e2905e1afb95bf9d90156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0867e0050b0495d9f3ed09721a3859efe4c26a1717cac734474cc560a418a26951ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2d19e3f1e2e48289d746d6035a00cd11f2fdb3d0d33a45a3365cc697a379d5093291437e78269fa16df5b668b653972bc690e67f2b31836d1b181b8785f5a95e543c055330bc622e8cd3ed40657691d5ee314d00e9c625fa2274786f33d133c49aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5ebb081784d3dda750f1c2dd089fd64383151ae52476f2406f3aaf1a55b7ef8806ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a007cde8ebbea98b3122cd1d3ff43bbcdbb55131f5769185a63ef66045c6d6c9ee174dc569725506584b797445d7c61effd040c55d62b03bc8f3b2de41eb5eee11286cea4202bdc67fcf77fec051e444dce29a9e23fd34c267c780a4552f50b7c3656b666dd0e1683dc772eae1cf29df5d1c3a06c8ffbce51faf4e7dc83fe366f1d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0ef85bfc7cabcdb82753f3c796197f4a54fd7cc1b11af90b7abdd771ef7632b4dafba24f8fc00edddaf55ada60dfdda17e34da8b355d2d5351523d0ee6ff23c46b548d63b3f829897b66ca32cee54dcfea94a043369ebab4cf9309629ed3aceb0b4a487f44fb8e42e229fbce62336f641746c7647b591dc401e000b83f8d641e3fa31cb21bada1afce9aea71d61196022bf263575d1ea41074360924c1620afdc0f876a723d7aff7652b5fbb1c69075610f251e98f9e862b0734a66e7b77b00fb36231440f694c76ca6d7fcf9dec9b0162e41a16d67464bd351e386583bb9a093968873a1bcd09209c3c2c3d754b68492c8a02c5ecfe449b9842cba2159d5cc7dd7558ce74ae77b9265ff825ed2c5d4c3a982888343e6cf7e7939481be40ca9619a270129b0558cef3a1c558b47da022392cc06d3564d1dcbc86bcb2d5bd725f4eb9043a427c09fcdbcc00792e2b92bea676940e6cd410e7cf52343497c2d2b42b623b44ed8ed5066158d89aabfbe48b9e6d4380df4fdebcb4a383f69e1776481c4f8f3f5845848a04a95a1c6c7c4dc344de63d91afada0f55f3ecb7e931c28527054bce4b9191592450b6f0c4b2c4f8c5bd0e9ee67136e070789f3a783833244d672ddb5efbb6abe052e9f86de9e46da08bca110cba75b084d7243abd462eac27677448ecdac6fa26e1fd4999368a08c0165cb725824b932f80847bf8a37349409234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4da6d3f77cdabebb35aa82a8fa0cb0b4c48fa7eac287735b60735ddc9537fd213fec13e1ac3b2d4d9ec2889979758902d8394261aad42f2d572479ea4cbb3039c81e3aaa9781ea5680c1f3a56ce2101512e6e98864042e0741143730a6935b4988059cef1583e4bca560ef2c6306a245f36d8e28f2aff8b2f83b1f8b2cfd6218c637880785e133fc146ac8919d8cb900ab5cd05cdbe04ca13b9e6b1be5d22eaa5e12af1dcec0a42bf7d221213a14cbf7544fcf29156adcfa6d31ad5456d8dc1ce36c50cd103ab630f08e275c2a2c16ee7731c564a33e9df36d60b7624d34c5db440772ce8d25823580425aa9641fe7fcb9492f3d88d60b6e80a66d5ca20f7551fc92502938ae2af6af68b9278efc4ebffb4c2ab466ad077ef7105a1cc8c22db927c9edb588580874cbcafbdb6ad99cf7a2107c3e5caafa29359633c16017e644b4ae9b6726360f3ce2a25a529e201ae7997ccc5a1c6e4b03ccedcade543ffd1ad159d6718ccaf4bb74251ffb879a61d150e5d9d294923e95dfe5331f7af75f07ba0f451e8d20c3e7f26ba250115fcc0d773e3b9276c1c2fa9f41a40f4a824529989bc86e5a222c49ad5b491abcf90503aaf182ba7a0f1468d8650f669758e34d74445297d7486e43fef64e2e771df99f46037b16af34f84b62d5d9bc2629e088156ac0de1ccec72c8617212e415b36314cab9c498380eaec9bf058d90ccf46ae31bf313a8cf2b4d9f7aacb7e3dee0f66f9fae50ecbf0db1c6b6992a64a21f20621c882c3060a462ca97a1ec3bc37c98842ff5231fcaa8651ca81f14f5db164fe1e20740c54b1d46729f622e1ef14918dd679e639f9b7216a0b8c6a84f796f63ddfd564ef9c5b33bba3f736569bf8ad9559350b17e204508e3ddaccf03a549e79afd0b945a97a5b2d01f98b2220e826040bb59fa5114bbe73ee62b1499b68e657d5261bc7735aab0262c83a14caed2f8e3bb4b58887edb40ea947d79e49cc787fc1dca75eeae1c7d2ac13a5c2868f79c6f9506fccb67bc19242adf4b469ad40b30d1abccda0002ee98fc2c111b66ae27a9caf05eca4b31c2a129206bbe45848f6e37f4f41e4e3f3123e3f0a0c01c3dbb96e759f1f4e5298271d45aaf51232059942cce319ea5012b957dacaef8ac4aad37d13a540180b39845c9f14762b2de71bc8f56c52bcd7ef638bd262be89ee6540039631bffb126099a2f2f0d556aa065978240a88b86b21aaf7fc09dfab3e428546c6025bddd1534c335bb3e7803a2b094fd2a2d80d3026c4447805ecc4fc9e7ad0b7bfe16a03914b1fb40a6d23bc82bb6ace998e8836df210af28fead64f1c42a9c6d07a2cbdcb6cc855ddd85665575a07b4a15663b1012500c64ed34b1e6a1d56b78d03be9e6d3eb4dffb8eaf2cbd50fe628609769c9d4f5d3309096c26065960edae6c6d72eb22876db27efbca6669a5b99975ce361329e31d3ee5ebc7667e5a2566db0fe4fe3b38573d0c49b5b0bab5e5e735ede86a597fda49377f8212820454e6e152443ebfba5b4dc2fe227ea5819ab0bd538767db0d40e6da6b1bdbef5be614e5d504f232f6001a9a8567dd1728c9cf2dcbe42d836afbabd7b4f79a964e418130a52442366d766ee44145d293befdfd897d46ccdb42a79dde32383258c1ffa1230763c5f5ffd7413caca5ffceb18143d9a831ba9d600a91114d459c0eeb97f1f1b1da191998d656013f4e8c6d438dad69717e8ca0e48405848fd6e87b74ecc91fa474be2a5731b363e0aacf8096e2e0268963b645f2afedc5501bfabb71108aa1544bf3c3ca73efe476df3d20a742bb82d9f5fa5b7033b19d4197b958f6d853be13530c2bced20329af46adc1906da1b1c43323b59d153b001ae3f647d3028634d9ee086f38aee0eab7ef210eb7968af61adb7d3091ed206efbca5ca4810a3222637faae3b54d757f8777ecda7f70097607468ec855cda3cc254d97b0b4f74a99bad64519984d3f2f3919094377552f93e1b77a0c2e5f6bd697a0de1523df4c1aa5234d469137e7e90c6b769f9c9f331d057a892a5196087efe850adf84d978a79c1f5d320e48384440d1a5b946490dfe6591256c2417c791271d2b755872731887f77a7778e16be8a564fcf41122b45058714342bce4c1f1118c42923b50b0c1237da27fae7177f3b6682a955c9dced93f9f310a481dfc04471e557a29b2812f68cbf79cfb67ca5f555181997b95cedf55368fc034d8b7af761c63666e247bfb84849cfaad3ae70cf243efad2676a48e2ed4b4a46ca4d6fd4698621249d7a7663652612bbc24ae471bfc36176d55a7e47ce84af196cf2bda867dc1ae8da41391265f6b77fccab696736da4f0f7b30d358dbe49e4d5c29c0b0d0d7d317ae43013b749f7faac15291fb80d91f345d852856b87922f3930b4f885c68efd2be618fa99a104080871949d208db04bc32297abae2e3647ac395790e9e032ff3cd3015aefdfd3bcf8a3d8674215da59302ef97c0fa32ff124446f27d0461c9704a858e3edfd2c00bed9d52bd08a80bc2393ed4ad5ebdd366550453d35a3cbce531b46394686bc531db56353626cea2e2f0b1b4b6acdd505ab42bfa3ba031853dcbfe048c8d023c1833039554688f83c08fa7961887220e7cf7a29c069c8693f7f22344581fe6c7dac89ecce000cc24d5fe64590e968072f0d9a028d0175b57813f8825949f391b3c3e89148f2bd43c8faf6eeaec3ab5c292363830bd00d8a861492f4c92d9f6a134c7720ccbe97e978652406889ae86172522b12c07f8bbb9257697579cb38b926237b765ba3a6e14a5798ab3d2f47cb7949c9f647fd0b2e702e0e3783bfba609bda5731916f936d6bd7df71727ddc35b5cfb904b22a1f94bfa7d9b784dea39c7a48da184d94274d2a948777bda57e4fad4031e31943f3645330cd38add75282f1843083c6b860de0448e65656582dd6fc38bdce8c828d38a55da2d40aac04237c5075322f39a6aeaeb1693a64465459087efb74347944ae420488c0d92e141e0cf36d5c75c5b6aefe4b05da61daea25387894552ec6f256e8dde345b3d8ad68f1aafd848f62f5ebefb094209fd034c8407bc28dd04e8219f792eb3cc132c9fc4a0e0d7cea1ce29a668d2d4d5413d61326cce97b5ef8713cd709c5935f2e39d69d25b93a47fecf2f4671cb7af4c152d5f172b5bc2c544bacad778fc6fe1e6b8e6832999cdc453fe67d7d9637d1394d4afe508d77d3753e0708e7a880a5d1ab54eb65f41593c529f3d206e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f94cb9e7a46077d83f96b74e21127a95a0c254a128b87ce3cd152a1a4a45105df651fee436e45726bd9a413f6f36262517c7a9e10ca75a5d1fb2258108c6976ad3cc08f20e15be69ae9d445ca1ea91c8ccfb5d610e9be4656d919e7a08edc50d423525d388150b0dc086c1cae9a98966d7cb56b6aff3d79746ef8acccd7c4b59742cdf9af8c07531f400bfd679aef16e63988716708557b550e8423989cf7885b3fdf6085941b6325e44084dc85ebadda8ebff742c060f66667471930ff520b4269ede2286cf585d46567d0ffe7ff67422f95432d72af6204fd9e41a8e0d5efdf32445e1e4be72a3c086bae2806d8d7018cacb0408f42e89f822590807e50be5f97879475c8679c5787c21bd6628b062964d78c48a32a7d8631d839ca84cdff1cc5c829e9d104b577d091a9d77b3749742aafc4b071091a68cc5fc08dcb7ac9d76459ff35162dfbf3eb6fe11a089d0661ad1f6e084000395aa37b715986c1aee4d755d0fd4dbcdfde5c732df23adde96c10750b868134e40c1ff5cf820ccc705a655103fff1497c84b99450db54ab3cf285f8c832910629ecb97e8f9ef9dcfb859f73340065b4cca494334ce5c6044182ad3ec30b639fc15c54fc30358559efa817aaf6a2d6eba19b3632b0a333e8a23515261a2e927ed26e175a52abd437d9517d2bdc1f66f3de2190fc5bc4472cb097db7325cdd85e7f436af653b1c08f8fa554da24893614eae65dc3c95f8873e2c991f0878c653510b9e77eccc324bba37a8edc55b71ca7fabf01a4a9b4750f67831b3302e17fa1388992a58c3fea6720cc501af46daf974b71522080209cdccd0e3dcac662c748d7826f442d0e4c3574a0d2c615525fbca83bb99b0a9cd96be96d1b61242084495d7d300e868fe44914b8f101ace5fe025897ff28e296bb83363bf0230a0ca5833d4bf5a3b809413abd627a0cd1b918b4b8f93166a98f96306867a6539abc816ee06db90c50b0460baf869803bab8c68219eb93d366a063158cce6a1cc56f46c5c2dd4b973ed5e0d981978aaae513f35ce5c622aec9ea6393a81ec72bb25feccfeefd290e36a865acc9fe2943c29c026f4e29fc543128cf1571a8e3834f0c94d0047eb8be5364906436652ab4c5fde70e08ed0a67feb27ea29b2419224d640aa918d075bf6e70c30d665ce5bbf303543d74c7eb2c40364e3c3f03fad3698f6dadd673c25cc6dc07b4a7ee1346fed302e5fb73a10545f4efc3de551e999189e2a49fbf6e9f701e1ae69d0dd980ad2f8f3b0d17b7b51cfb1bd06fea5b1e17ca9ad8ed048c5d3d66c19a2f7fb7e169454173417df306b925d19f023cdbaefa608989d528b4cec8416fe31784429b1e3e346daf7bcd6119fb29ce7ae1043d022444be3fdd1a007d191313c575ed31e8b01f998508388c2127825b7fb152450e8763fc69996c1d3d6edf10bfae33c5dc02d631a8cfd0ecb0766c3d0aa722b778df3c0d9f47b020f14f983756f44deef307ff7990b12a9d0303ad46b9032537392d430ee7d54c93459908ac481e08ccc6dd61ee60c61fcb089b65351c64328e0fc6b15dba38056a078d9c740b089f2beb89d11ada801578a17f0278b6f77c9cf5004fc19723381da1d48bb001367fefce7d171d85267c081e194636c9a53aaf1ea52fcd42a0706a114181fcb01273be766154a36d6ae31fa665c9511b2651bcaa78252b2c842ac0fab37d57cb3174b86ae1d1b12c39d0fddb1fa9b4de2d18d4ebfd7d38f839206243673b15be2df63ce38656dd2eab951cd02238e1815763fe6d0bcc0890f71ee930f7e91d9c29e5fc8ae0b29964c93ccfc6a8b33934f4a9d758c02b93254893b88eec97cdd3f105ba9a8bf8233ad6a5e4d57c3a8bcbd43eb1ee7daad8500587d60b756748682afa7d5080264f9d778677f04548f0ebed7ca92de1d745912c3a7170836b8ffe9f7f3c7b31c05ca039aae8a80e8ad8270cc99dca264f0292d4ff4dbc9c905837fb1b497dc7e86dca745dd40be76c204b011d4261957dd85f17032431aacd7182fc629603a318700618a009c95022f838aa21659648cad8e2fb4edcf16772abec90473d75fe45373251d0b012ce4c1cf06b5ed3d8ff865ec08a076ddbdd8da4aba7aa725836ea953c74eb5552908f0fb0960b9a0b96480d0489e08568625b75583a18a278e72b05fc2b1da1788c408cf9d4a4ed6febb9c1f5ceeab1e81075c7b4db208dea06f2ed1df3cc8a3fa27adfff32b1eb4b9c7f9c6e173fc4f6e2cf80ac7c8b1a276fa724dc6716cca89ce7e46dc29df9135b43fb059203c29fb5445457cf1a1ca5beeb305909dfeae22dccc2561005b68e207c0dab94c376086995674e535cc603f2a4b638ea4831dc58affa03be410d2d21b97118ccfa7572fdd982103f858fba7ffb9292310410b8005a23f0ec9b9804316cdd53fe8a306a9a5aaeab7f917c0a4232d3aab1635891e9a7029dae5b60465b7d8f0070274757a2e145e65d3b9c64632cb5f2e642bb34f3f89d94195f7ea30e995237aafa8be2453cd5e5ec3be172b453f21f51e05cd052d388fe22467a6c46c8a14b8527256ad6d1eff0365142f5a359bbf8cbdf04932a2f9a1adb7eac5b1f3d1e0fc698d296625630efad368eda5f7a90c51901b3438d5deb59a52467bd0380821055967e3d935026b62fdd340850d2a84c6ee394d3e48648149929dd1f3a9691a334b2052e443fa645a137642d1e6bb4f4fb25160f68ba90e8395cb8eccf6f988db92b9196e10ccef16feac6f2e4f94484ee437d50076fd155a044a099ccf42a0d53f55458dd81bb7563ac81b2580b9412103b27bee9bf069971b9fb23857aa1f3878ee7fb21a8e7fc373922cd0c00b925b12d4f6b59414cc54420a6610419a1e280b55e18c90132aedb2c0a6ff9b5db9ba7c60a27e954fbb2423c4b2a8580226a5f739fc934e5fa285872397cbdb033ef0083fc58fcd86fa50f5fca0c1d5bad7f669abee0cc86041ed1e9f11df7a5f1cafe7d7de1593727ed56f89e7e706a2333f58cd34c9aa80594cb93d906d7420b66ed867ff8725df71cb0d3099bcbe39947ecc96798e89e73f13a35c80fef4b1af51d45ca86530565c26ef721eceab2a6ea7481b4f2527e2202049443c959a91cd092b67319995e949fe00f167e17ea6b02e291df82ff15f1ddbd8e593563a18034bd0dac53ab1b93bd31d0453fa17d92656f9a94ddd7d45ba8c000dc3d6905d2a96fc52ec72b601a83758e590ba45340daaa095a2ac19e9183da15bbe914cb35b3ff4cb301c39a0705c8b784ec3226ed6e1a5a50ec953ee2fa296c4ab893c01549f73337d78bb7efe694462dbe7d9bf5c0031902dd081694215453f5766ec1c8700ec2f9c6658dc40d63d2609fb1ccd05bd8ba35aa83458740b750bd9169914ea23883864d076368d062fbebf156c74bb8932712bc67b84c71760fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5ed6a08f90008fe6345857bd4ce723cb7a0bba229506c5dc7e923c8fc4f23a01d8b3a4be0981cc17527f3b7004b5b2f1b7717d2aea8b084cbb2c5fb1ee815dd4312fd986c79f8541bcb34ce4c710ce30795216be25ce86d90acdd53f2bb37eceb60411b117f70414fb93af757c50d3ecc74719f69c684e7fa11c60605da1b81faaacddd7f7611605747e65de92929d5651abba664e1b21dbd32becd56f2f3b27f12bab57c0f2f5e9f9a61c81e5b6cf1ff65008fa4a9f0cdbf6f63dacca23a7236cb6d139dc1cabadfad377f255da5fbb3c32eb47f526e975cdf7ac238ac520039b32c9222f9151ab0d67d4333d50ab38a5f0cbee480f12af63d4f02f324ce704369262d7b0b06549c3dd4c7677b0ad19ad1e289db22ba86fbe642cc3cfd6f1b3165b059b532bc50f97fd0a5a5f8082f71c680838ad9829e10b020661566c70b342b746d49bcade621297535781e6807960df36b220917f4e81cc74e75cc9a66ce0c6da602860c40905c959a0e0ae3c19d84df76c6b752e5f14daf474f91548959e32bf89bbea6918c9bb4499b638c2e29fc4ef9faf973bf183ad2dc700dd70549186c961e7bb6ac5e68a5dd1d1f1beaed7fb7140a64f68e0841d1085e7b6632ade7289e0d706540cb39e46c3c28b7b4cbaeb70d1d46a228ba33b8efe2c3bd9b192cd3ad8bc67f1d9f656212e401ec4343f679a93913acdf5e9cf66a2479937c6fb85cb69513cdb02f849e3bd5f047c5e8faef19c1af6d1dfa30f615a52f387e3c3fa9ae1ee1f90d6283129ea84d1671671d6c90640860a213b0c50579dec037b45e5ce37baa5114f99f2166ce02a334092fa47256deb3e38375352461b158d27a3fcfba85d0a8f85c69fb1e3c3c8a29c1670666684d64c1d56658848179c65e998dab51bcbad5468842d554b4aeef07f725b541b67d0c3f0d6a433c7d4bbb2c9123da13ee0cd47e029be9405171b60075a730e84916817dc881c8c8f90cfd4a6ea4fdb9f95f3b1f73643284eee09271f7983a04069537ad0ef49f81caa4f4196c1e28cf481ca21ece9c388cfd19dabdab16c18c6b462cc0de3d8060f7758ff21844281dddd3fb13b5770ae100e32fb7dfa4e17746cb41162b6bad12bf828e2850d530bef9fdc0409bf3ffa62f289dec0228053fedc6bfc21db7296f4bc925e4efa8f0b6915ea435ddb78480cc49729f340b9c953160109defcf138b09d063193323913b362db3a0b4eee2bd31b88f4a1111240b6fa6f6b48d9bb5d109e93eaa925e702ae3d8f6feaa069ac10e52c556f5dac4be4c7b631fca5fe932411bdc70020c9e311a1cc9747dfdb409bd0527b257d0a5b41c3574e40c4958265c98ecf4cd7595eccf2c2c9522b87b37235c0d89ab9736ce9980568bf20427988457c3439b22d1a96be2c45ddb04c01c4db677c890d6b0d1e978550e9b7fb19bc7020048951e022bb9ba2f07fb74523c3d5bcdd26cff48587f883e87b66b09039bf678bc9a6d8f649d787b10eb59f7186dafa3e6e4ffdc9ab777954305c6d3eb1d2f8fd7ec9182713dd77d5d3570be3fd8674e316f5f0ff2d92fbfccde2ef14ee67854217fa2b59ee4dbcd22a37d70243818b82ca373fb93ea322945b4881dce3e2c5e3beb9b5dc6e3db8056d41da92244b7249bceb40abf9f35ebb2146f4cfb61c84eea976188394f6764a11381d72bc0e052dbeae330c4db04bb0ee984a3e751c561094ddeb6d0596840d08d5d04f0c20ea333ffc7ef973b2a9eb5888c5e38c32fe593a42b2e04a1400d7dc77c6255c2c70a131cfe8c5c618fb3e29bcd1e111a9990585d83e474338d34d842c0bb121d1ad36a129c649c64c2fb57cfcd41d953f1028dc59997ed610ba7c0d907a60907cbc460fa2d78317c30ee0bf2d5809f88ca0b0d5b778fc9d1d8dcdae9e62bd85962ea721a718ba755ad0bb961eb796d8c34bf98285381f550c53d4c3607acd4c806de0bc016eba9afe6748d34a887bdd32ab18f2777ad3ebc2169a3c7b33cfb770fe9a5db33b4d1f9ffa0ceb0f0c1a5a3bbda94d5b43cfaf9edce5eb87f0b27094aab1337336192568e16b110f43424061b166238cdc6c911ad5b022462a456330ea527a9d360e7d7a24fdc057fadc84e9331b73a0d9d5feb019fa092f423d44f763e3fed7d7c85b9c39327ba5ec653dfabcba2386c388f8cdec4d87a672d49078c840dcad1e938aa61bd68da6cdf0ab45033c1f6ff27e8ceee8003d17f81a137eb947e769be31f1a6d5e7fdaa1ded63f3160cd59bd03c77ea5835b96dd3b44b115dcd4c5fda0ea9cc34eafb9955248e7bb4897e7ffab6ea9590e20a5f58abfc933a32ed7a877a7000e6b8948e7f5a9e0b2d3703e45ba8036166a48d0c409536d9c58f623f3c53087f6714ab2f2140368af5cd15d8ee3dfd7802b16c9838c207bfb3d002f8304a5970a4cc2f11c4b45e3330c9e9df554e3fa7cba85135ee579db7825db2304d8f91a2201fcfc570606c506aa27dea6a6a2ff056e28cf946cab8db96c48745653c20f64bc8f84ade9f31aa0955e23208031c08e0082678fc43febd319892ea5f2526244f15368749c1e5b694e101b43ce20a678b27f1f4cc39b310a9d727c7e889f7d47224783591cb887a650ccd482dbdcd1030deaed2d7f173bec6a4ec8d44b503f361154ec4d836961e4d450990e9ab8339d86df38bfa4fe70e9709474e230551c751c5a711047ed1b17483a037e17bc9eb8da3259cc984b18fa9f2e9d8d86c4c06b7ee186733608b96bdfb3223f0066e65b2d2f219e9e23e7657d6028ca7e48ed672a2eafb80d633797b18bd5782ba93de36f5f1ac929b657baebbc3e1ff67ceca96d07bfd721536a9702c9ab1207c0066b522014384179af17d648019b424ac2d01d7923fbfc265de2f7d118b5f4c177b8ac825e92031844e963796782c472670c51c2ed3a04dd02706bc54f16f1a58fdac06331da3e337c054ea268ad1f7589fb5cfef82435df1652eca9df79081f2ac578268631a841ab33e77a67e91f5cb969ca1bfe5f0798229c66b0c4edde18e71909340c6966adb641cc1c43424edd490721bde9dbbeb6b17a2a690e43716d50d1d304a01f7bd20109d8f399525aae25748d15482e4d856addad2d92866158f1c0649205b733d29f14572adcaac7d866af17214d65b40168a8fccb43897134671fbd7bce1b9e80e3656b65e1b0cb2eac0a5e1b333ebfafdcc991d62e53e4cd7c1821df7e1bff6f310f70f610aef1b325e6860ba203f6907bf7a3bf23c30d231f3f355e4a1405f06d845aeb8c0c11adde447690c72e80ecf518ac95d365c70e243d5db31d3e2310b22d3cfd5d507cd9ccc243703d918c9b2768fa8580835863125b1c2c4cd848d166fb83f91b0be522bb2f9625fc7163487e8ea21bb53164faac20bfb4165f3c2267c199b75ad78a39f249597e2db015e9a564d7609a1c07e0ee8d24159b28cc398f87ff2ea5d9d1ba7e3b669d8d7d7551ac93620cf1f3a5b493a62a5cfda579a3602dbb0891fed8e46534cf4c7e7eed8b7360b79b4990de24555382bd4a22fc2ea4aac72ed4c2aedb89f195fee0243ffe6db71a19cbb626fb267fe104af843eb742f2b2998689b12c71f29ded714970570c1d28552efd3136a6bfb03d79ff5ac94695140856cbc31425074f02d1030523992dbc9b8baadc14af27e2d2ae86aa11bd27c5870a3488565dcad8acca171beb340b104d0d3eaf7ebecc69280304155877e020dfd75bee40bc0360960507cb0c0360b608290654a53d55302f995f205685b587e99af8b5d3b78a8a5ccabeb8b50c3bd91842ed05dd96defac0612aeb6b98f1bffc0a71342f84122dddc8b6807d108a696856f7ecbf0cd5ba55922075b8e61650602b53c09a04e45205184df8c35faa886b6d551fef82919dd981eaaaca747597c4b44a3ce1138d264ecec9ce1f5bc2f388e8e7447a59883cd4a3095ff616bec658ce286e0ab165279843cbe9942d43732fc97a6302a5d60a2235646d725e186be8c6df407edcacfbfbf4d06545dd1ce13478afd230a223bd71d7f4b520f97d2c9f55b345d0957a3dcd07d62de9789ce31106ad37e646ac3c8eb185e10ad99de4112857d142ef6ee019b365c6338a6466cc241fb68a91080e6d5db2f84dc25cbb61d418948844f03d77c46bdad49a5d069e5f6de17871e9b754d959f4e0421c9538d5b3f1142fd2f30256213a7d8769a0df7be537a716450d3154ba2fec5e76af71707f23d636f5dcb7d21689b9a44017c59fa5a23b3357d9540a8943e675ef1e879bea225e0785aba75f4367213e6d10f868d3bf4d583ddb2abfa330d9737ca027e08516573c72ff41e7318d2480cb22820666f2ff26f9071bc1df8d28fd6c6e494c81403a85bcd935e618af9dc148bd271915fabfd1247f3e37b3da8ffa1fb829f72b66cf723db4af71540c4caf23ba4b15f68895ba60f9f7bec920ab92f3c8a25a84eaa8ed5e085c8996a8ea5c42ec325a60765d2c5ce113917e1ed91b7a16d9c36fadfc0c4521b6b636fa574aee8f470e77123cf271e77f307b6891e5ad66a940c8d09cee478a6c9952a51472b3e581697a352406036c4a4c5b3eb419e7ac8439e09fb28f0ad919069adf15452467d73d90cecef6c93ae466a624d16573bfc07350ba5c8f3565b609098e10a9f031194b4c922afecc867793a64d8b8a588cf45e75c88fd19de63a199a89b20763c24d1043ceb259233246417d69b4c538b4a259a8d9c28790801d09baf24c1e14b40126b7f1a45551cb136814dfd820655ed430021f10ae5a85ade06ed3aacf644d8a7ff52f88f21173503a3724690fe46afaba1eef901e6e0e81e7b56210bf81b18f8589acf29e1b084a403306b1907603964fda8083cfcf52d348ea2ce47dfe92d1147b89d057082369dad64e0bccd5a0d9c4461863ba2b44ca686f00b55daf32bf6a5986c1f3aca8355495b3221e2598a26be67a9273d159c1d79c9daa6df100b6b711c59905e3796d7ae977b5ebc34828b1fdddbee77ece804139cf71fd7a5a3e8f5b996b88e5f366f443ddaebd695e67aef42e90d50610cbdbb1345b0edce39c85b217ca536c7a9c7aad2982b0da2edb05b00e986dc25b46d646e1f3ca84e482002219a44bb9d1915ab7ad8d7eb6869a75b83b7127f0adc8ce2c0aebfdddafc2ad1a5dc6cbc93be6c9eabda74a4c1f916294bf3c450449d508ae15ab7fce96a0543b3220bfa7a5bba5f6d90e2413bf06d2438c49f6b46b6631690fcd8d5c73e3226407c7f72d7fefba608a58c764184a1b01732a27cddf124c5592ff508183fc04ec95311aa5f327e8cd42b67161de49127b292cb5adf23df025190acc6f205c227059c1c39936c281cf1d7819c3bb1c57e3c745869a8907e5b7a2cd0f9f78cf6cd66ae7203e36180691a87726dfde0f7cb99facf71aeca3f7864abf1182d7682f57a52a462fd50ddd57384ec0af9da56ac4bdcc7e465c066bb037a06fd2744b71fc0b8c013c6f405756cf417f3261e33de8ba5e5b8e3c330ddbf98d966e7903ae0d945d4b9fe798b004b26258912457bfd69bc54b44553cd9c7f05f8e2afc9ebe6e7288956807db9612943c060e3e073d2f7e439f54b3fa282cd3221917745c08cc39f4ca4caf37cd00f0d564daac9554970140d9fafc2086e70d74e65f57d603c839a3bc3bedf1db9c079f4bed420d5828546ad9d17b03070c01063f94f8a4b61c08505f73a7d43eaba65fcc22101211ed1de3839fc999869246de291f4d7c40f1fb9e561df407b9a84ac2c17b953fddf28b6b0754b93626b29297cba5acd20949ad590bfbc1c4eb039f48f84d613da6426c2b229eb1a9426aec24d1221c6b1c52cfab38c1d05ca58774cfaaa530bb3c5e7ae0c91717f1a579da2f36648d41794f11bb509ecfba7194e3f1c2e2f4caf21f548eec2f0838f8a93d8fa966ded380ee3b4471235ef136d04395ec6815400c65f911c693eda76667495f0a7f1a972dd44172df506055c87882fe981cfe56314b23c626fe218aaff1917ca80e6ff8f8455c9100feed559867701cb8e74c9014e7bc960b17120c5fe9dbddb00e31a476c05b1da3a62baecfebf328fc4cb32d587052d384e597ca02c36798d74d46290e63c21efde241b555e74e07867db8fb7624489a66ff531f3a1ce458fd501ea05f2db053c81837c50843118cd4c02038687fd7d8573d0ef973abedbc7c3ca6e69209e31a73a87d6f480f69a075f062201e43b0965c00b9fb081b8df19518c3a0b7b799204615f675cd52ddd4c4f9710545cb0b1166f3beb8cd7746cb12e3b7dc29848d81a056f42f626c7ec5e2c1fd1ae1d8ab092153dd7119861cef13c8ca772b39f05411583cbdca49c355d8a082ffa9a17369d5ffd0c04b1de7f1989ff2a96675c88582e0a4c8313f9c0e770c4be609008393ab2cc107885adbd15c6be53b8a7edf5ca22cfbdfd27170b817434ffb6b7df9a0b36101667d38c711dc08d565e98f80eae436ba3ec7cb0fe9ffc9879402249c49c0df40981751fd46817aa2f01f72168207aef5430a1d421952b45d813127381ddef6f6a0dce519d471fcc5fe29236f3510c7b5df451c2149489740e093d79d945be2ced7686541cabe5fd9e0cd18b934c6407a4607f9233d7d1b6516e9be0b1b9c6aba02444ba12b06a299e337d0242d17c8443c8d211cce41483cb77caad7da0691eaf4e4c1d6916e45bb23dced4b13e75b6d14f4aa3384fcfada45c98de27b74b819df63df2367fdab1957dc659ee59870b3ee54e23467facab14d281547dc7ce75507577b0c4bbc4c2edea4f0084d38b1a696c2a4365a258b773b9d3b964c8efff29f68a3236fc52c1b9469ea855f4edbdec3b994e72ab81a153911439d9055367f4a304ccff0f9b879e788b817aa7d64aa18fd5edec4bf943fd8050eb3f56b2d60cb49bb8dbc0e4df922ccbfb93a9f91a09b473a8beca7ee763675903a22fc74383dbc2084256da490f7e9c48c340c9715b0dac11802a8fda058998fadcc47ffb2f4c0e2f8507f42729cda56ced9741da8d32c11756984503ec683f77e1154d03fadce304a081431541843e64de6135470bed9b4dba38699309db890b6c660af2886b4c086bba8a8140810960aacf2ded971a471d8456416567ec813b7b3e46652a7ddb5e71903e152c9e88f36fc46aefbfa8de0e8ad0b5808f1b61c454d3bf5b06836617d0ff3b67ccc22696be836d451e4b1d2c7539667a0102ccae8e1f2b00fa9cb96249f2c9e9b67b425bf0e26430dc09c72caa68f5236d766a942e6c0f82f427ddeb1920a93ffb30c9a260b3f0aa0e6a5b4f6f6ee97b9f0edc412503c1df01bb21baef23f720e10e44ac5c48be9fc23a0370105dc1ffacf2435be178b6eee4e4359de9b5a9ddbe859f5c983c8dd1c01b0af669b769ec9a70c4cec3e10e95724f2099ba6cae4be54021b80ea3892fc6e1db16fd9ab5f54e446699f40079ce33e890a944271d818ab5a7b56d0c4b3d22d534267dd78c660b64c90fac480e3602bf320cc2dee19d5c50f83e1e8b7355682c9eb4cc87fd754a701cdcbb3a51956fd243efff5b25ffe77109efe470a6b4a0e899a9beaf14cc5338709bcfca37fbc617cd24eb397f50d7ddfed83ae5d48cf6bf7e93c37e57761853b8d501b7713422830b097a86e872593e0aad8a5bee4fce0376231c4ceddc30afb2cb7a21d35cab751f0d6561d1620b8373a028f14c67d76b9596f9ad286fd75a011d7e10bd66d3483368483990715094b6bc7139d441bb808dff052552c22b22f8ac81aa9736e4d54f79dd6ccb59166abe4c162411d10b06122293ca702074d27ef43cc7603cbe17504efaa8a755910521f955536051463017f0d484797a3d7ed00af355b44b1dbfa44a702ec359744da2cc58e10aec81cf75a69c3584b8383d7e797a862c0acb32c852db993ac17e6bc649af1b65e29d6846059111c6ef652a3e343884bcade4c786976329c2796d21a7ccb1af90ea7560137c548ce7e37766dbf0e747e2d8e25efcf98c1b341b9d0edf3d9d5e389ad0f6f39ae8c3cf63c741a8f4ae57533ddd536c5c8136b3d1e970137ba6c1687ce6c74834362ce4613511ae38ba0859e3756e1ccd5a669c719a4d766f324e0cd4de9ce66f1fc09ef15532555f1dccf7ede91a06150e0288dec9f7cdee731be25eb2edaf43c13a005685e2af419b532e6ea3e07e930b557d2caf9e449c61d5861396d158d9674be5b8ac93e24d83f55747f84d8e6660e944ed97f9d1b05d61986a480e22f5abd271b4b144e37fc61c60893d1c0553a068a56bf4ba3f226db3de5e1b4dc31f60332e465fead778cbe3664f7a17db8f9ae2c11e59fc9479de4718e9abd9ef668c56e95aa83e34e3e02f9d75a34d2cc5baa1ced604a5096bb54ee7e0e045ee1973b92f090583f3b6f8f13de6ed04a1d9e85422c373e53b32b0982304b93728bfd2b9a49c4a23dc7a1a95bb73f8d07502cf1a6f66c630ffe37938b39c88576a9b1bf7c96416c3cd32d4c0ae2ac2646eb0e3f23a82969d87220f543156f50627f780738bba74dc2c2467ea8619ec908029de3783cd5423d2ee084608b36f04ecf65cadb4397a079a63801599c447c36de542c639faa76c052ec1d7196e7b42dacb7f06b6c5eb5a9d1e576cfb979ed5e8d83367cd132b39901a272952520ea2a625cda47c0f74fa30f11879924b5dc8fd9490b157b7ecfc8d6a3141bc88e458f7c8fdb81f1fe21a6d47a6ecb9059b999fdcc436a76ba5f32e96f9267eb0658e5fac2392e0f311fcf3a2754c9931e0b82ae86048c55d4e450ce4dc3fc43ae80e1f7c6b2b9bb835b0c503f31327d17b4371dcf3dd0144bad623347f07f4970e41c421774755c89e523fd41f611c7b077d1992b0eb2a4fbae602c917a6390b5835a5a745abe4df9ee51f2fca9e950fc41259fe9043e9772b2ed1abce0a979b46bcf3eab43464c25492659c8c2e5d67982660c67eccc9313807e16e7eda03199eba65e0c179c28026a6c4e4a2cdeedd67a7e92608a7458d6948e0bb37c4e1414b1e14c4c0af75b7bb14b2570aa407028236710d54cfd094509a98ad1dc4dfe8065a4cff014c7e0d2f9450437ce19c4f2520e37759451551fa49f4f4bf8a664a84cd6f0dab8976786f78ea34510127b692edb224ad1f2c41c6a464318068f7959875355364e320abd70208196c7581f5f32acd8b48490a6212420f7ad4853e6184a4730e4cfd18a1ba68b0464ffbab9ac4458076a3c2eb38fb82e5f811d147771a12e40b132cd2961109b81ed591d17f8503fd184a1cadd2f0dace6c8c8509d5162dfc96150928f48bd573b55b1b8f46d24120e87e4347d2644fc68fe61f53baae4e833d065fbaf832a4b7dafe3ae407921a9e12353494226832e7bb184ea508a98f8f9d06966ddb1ab05f5626e3641af9e2e533abef564f02fb7ef6be703595c1f47da9a9e84683439ccfecac21d748f46d1e1f940aeab95238de89e49ea64614bb8d5a7447692d4bc132dd9525a708ffa9616363b8d5f840d1ebcc75da44a4a484ce38cccd3224c68b5ddd478481b78bdbef5a280fc1af09ecc5eec7db19247ce2672932007988fae0a70d60c0f43b05959c9f1cd7eb93fd1081a1eab98f766175197fcca9585742b0ffdaf596f0d939a033121442ec525e24e944ecabcc48168410d54b4f6895acaf763dca32a13c08afbcb6c5d67d61cab8f3382a38ed9ab5db0996ed5017f1baf1d20fe83067079a56d48f2dd811dcbeb7904b3f4e581880695ae3774ca34276158f5814fadb0e529920647f0eb35dc82e490d96461abd23bbf2da522822948455413a345f9ef8ac7a7f81c6126584b3c964b1a54c24a12ce2c0f283661121974436cdb09ae91822497458072f5f97447c5d7245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395eedd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a990782ce66804d000472b3c601978fa9bd98dcf3b2750d608c684dc52dd1aa0eb7e562185c822e79d362de4f9f76a1a7016e1529a01d88a7da9552140f666c6a94772459b97034550179063bb5d020d3211a2547a14bb7a20e47f753d3cad416b6746928388cd2fdaded61933655a00df5386de39856a98bb68854f8e47888091ec7c661b060f00f5cb1c92cfe832faf91da739e447745937b543eb5b504a61877aca5223fbf8f03613a6b000e20eb275d9b8081c8059bc540481a303ce722d42f3bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d0b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea48e0940e8a6e8861eaaaf90853a685fa803c4e039166060a3c921c8d79001e3ce58256300b4972317a540dfde857553323ac54b01af491a20b7745debc9624e513d8e60ff8a83f42bba7c1cfb2825e4dda8092c764f5dc6c42ace857d512c86205c765ff735641e7eede7f06ed9b7358e945774926614dc42712071def1fcd6c510d64c70323025dfde469539ca3b925c5707e72d0d1ce2fe020bd18184009934bf845389fc4ea3871dc8007e7b0fdbc0b8fc539564d884222d1e5bd1323c59271911003fec304b13b51777a55d150c05207989785c6b14bcdd043f135e810cce8a38c2afdda6dd245653ed2876c5c142cb78a402ae1a225c88cd6785c40c52b8ef5efeb3f25ae47ce03ba892f5caf77631b1257715fc12de72c21e61db17e4399dea777f6bac2a71aeb642ad0e6e7f3538dd74827269287339369eeb92a5f00f03b08d1faa1cf3d1a37ffc87924e8007431040bee05caba1f5c39d7a5ee4a4a0d8878c49953810b178449937e995710cd85e3be17089ef45a6c5331657a2c24f6bb1e8ce1d1c9e0f5dac9cbee55e72ccaf796a4710f33bb525e7406c87b44aad21d83498c3a7c87735049490ba02f2daaa6c9d80cc8c9c9b9b6164656397a704ee384515a4325315992e61dd957f0fa91f3858fe7c079de59f56edded51de86716ef40c102b1701970c7b0c34e6633d8a0ea1c89e7527252fcb07e63074221d7a5a95272343633b138abb330736b59ed95690c05ebec8aa80e6b9c293a4e3decd5f2ca4aec1cf71a49c5754c716dae18f9f02aa8e7c74f726f5f87c587e24139c6ca9e365296a6b66747cbebdcf76972b8cce7aab91e55bf4ab1f3581df9c2a857d11a8415a18e7a6ccf23640cf9bddf245a5f90c43b3014d08d3ae19faf9527d7b26fc15cfa914dc6e03d976570242ea37377491f3619ab287e6169025df66471e4defa1966d41eff6295259cd5212293d921af029329a5a3d15f4fe15db8ef98c260c8865603a742eae2e2a07336a2adba6380f582f2b3ecb1e70afb20cf42aecbc2617e2da3450034bf5c04e5b48d767ba7ad12498f7440c885afbcd58fd114a3e888c88970515d73484f51551fc664d163f156d7279186ecbf6b18bf870fe0335d9a95e12a332cd257a65d6d3435aaba4dc51bb698aeabef06bc7db0bd99cc27ce3a2873b39493bb7073642828b86af0aec0cf2706952a394d3da37fe8f57538678630bc09544e71e07777ae97831dbfd42a6b84035bf719f80cd3f625b7c30c0f72fef406b449596e61b95b58677d4f606f86b28aa4b3a52bd8fbf3f94710dfc6f122a6fb9e57005567bfb3490094fd57e49774d2c3f484820d3b8de50e075a8efe067cb8280ac5226624a0fd334bbb36c5353b53ee5ef4a9aa699d8d76bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b88f848ed2cb9d4d9691684ce27333f4632fd897469b5ef12622fb48b243d80810c7273fd75b14e5e029619af15bf176f5c676bf3ac0cf71ec7de9e1b3586acd196b4651b81b4b3becf80f762bbf3d34a8a2d48c10b0987af13dafcdedebc22afd5cdabc01dac0a3e9731ac16353210a615ca44e85b6ec9eafd2e79206e0b26c768814d01cabe26b9b2c8ee27feb00b21af889aef6e66098033fd1ea388da642aa7386347afe4eae6830df7e33e700a3e78e26825535c87a86ce4c3cac6a98ed48b0376234b056fde83883d0e9730951be202c3644e4d5075b83b2fec4b8517a6f761b6f5075ea4a9b8d487ae0819a0850b858687ba242ae7f74afe0731eb76a55f6cd9410cbf61fd6c5103e8685f65afa20270cdf9cd067c908036ee722e77aae6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d97f337bb07156b16607394e8caa771764ca5cbd2ce06e0fffe9622c0ee7d16b81cccc5e8a9a7ad608a04f242530345694bd7150bd73315513284142b6a39ba4b789cbb406d7438e4c8e90e1e0f03d4c9a199faaa1a0939a7c9b59b2674d892d57ff4f1e1fae2bd5c63f32b23cd028bca626a869479163db363a4cd7a1aebe88fb7651cd173c294dacf2ab7fd1e8937c098d34cbd08d3d6adb3f654b4255f289c086a1e0d967fd7c4963a25b81975857d7fca812c24c6cd0f49f9dcc839e842aa09bdbf34cba5d10fd6fed612d6d7d8096f38e2e1d2993af5f25ee4423c1db1ea69a53e8edded83a6934f34882f0461f05b96f2bef663db1f3a355cbc181c9bac1ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e5cca0ba1e1a55cfa1e853e326eaf4a69f48c1d0caf2d3724ee41917fff042ca6c4e7415dc58cd4e35581fcf3874ae0f50b0f9dbbbb2f7ea3044ce2e1bca741a6a855bd45ebf0fcf8d8346716fc61a2503dea599da6d2b59ca835c56258a950be88df04139500a43e68fe9c469af5f6c672e50531951bba2a5952ee2d833b80b2cba6faa5749f84248b3e73894fb6731dc558af01f8f5a626d8f44ba6fad469770c0899ba44a3545c5e137ead0f121480c1d6d3851c8d481f1d6822e39a4cc60d515267e0d66e7e1bf222dd2f6316d93cecb7161a58e89b821fa0e88d027d2b66a1dd18c4e5c39422b86ffe6b588960921c2b166bd80e9f629f282f1e3e384be07c068e57721f18ef78dd4bbaacceb0ed18cf4f44ba873d4e262b741316b1e98b5e9860dad1bc2406b372de5c6bbc56b110eee9089581a19d01b884adb0d166991fa849426c181037576ff149e88ec0d710ce34beb7f3c53393244fede07fbfce816a4246c742f43898720cd9a1c2827450770fb4820558148b77d4a184367667a5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f667e110d199ef9ad638599e61570f03d237fa741fc3cdfa60ab451d4f0bdf8fafc22ef66cd909942225b5b5a726d42515a8b147db902d522cd8eae37375f806d7284152c5d3991d6810ff44dc8110d5914386cd087f53f79d2b9f38e71eb382d1e4c96bda2aae72db4c84de67cccece3b757e3b6855a1cc533412db184f19ab5103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dcdc729a828215896a1d88d0353de8c4689c54f12f4cc92baadea19c1010f21fcb382ae7f736726620c0f4969ba9476488f65951492ff08050254dbe4ee4149112ae8b4ffcfe0367bb457a73b9a9534bf2ec495e2f7d99e23b1257b0009d69368088e45459755585c934a9e24ebb9f6b71fd27f8d10c2fa9cc4a4d51fe3719166ba49f30d39b362c29bdd27f19cadffdcfefefe5ad35511dd4b8f00d002a1cf08f116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c819795105a48ed440746846b7c45aa42fdf7f8117f45ca6ab4b02ca2b9c2e56319cd15cc781243f332ba8ac4f2288eca4353af9c529d45d8068cf6ef2d9d6e92de847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3ded5e9bb9d0cd9619ca9659445558295b59c017b1481bfb1b7899580b384148aa12e5a60425f4998c02aa0a7c2ef5d85ee1289556d8cd86694dd9298b26f39d040f7cc469922e233ebd6abc7eac863946e6fe7d66c4b3b3364a54e9758768f8c2f51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa6946595ac7b9e40319d9d9d718db4c187c6782775d9a054a4d042cc5a1adcc779a40bc70343056bb250d50e357fa2f56ae37aea578d5eec47bf1ad458b669eb9aeb48c5714af7a8067dd71489fdadc66c81690efed6600e832ad5a138dc53f7d5881bb98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a63110a95c821edef343673a6e01f428e40416e3d68753ca99db69dd0b26cfe8af220e63490ea5e056751a9968efa99d1fb0f7c4a9e290c2bcbefe385b3f04866c32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f01541ec0cf78ab96f5efb851428cebbed3aff631a044b9af96b4c8c2213e82e76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa89d88dfd12a232904e5989bba5b71eb0526cdc34eb58ed009a9f46d12e4041387779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1df904ce3659fcb20977a62fac57ae645507fb1224fabd1124544eed9fa22bcfe919450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f81948425e513a4244d30c1d2602383a3481c40f0a8372a54bc869c8bc61ed3a7898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade3360183132d86dc5ccf71efe92f720ebd10842db80b3468e8be5db5f37ffb73cdd5623badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa46e133f7d855f83c84aa063fd85e0907b41e4dafa221f7cfaaaeeddb35c84bd295f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc8216e12ec7341871fa51040d3512ff5f3700f8ee6a9c08f1e22a1b42d97345583daedf51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c0ecf79ce154a75e6404d91e88a5ec0162114e02587ea7a63195d738ee1bda1142453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123761e24cc68b306ca8338b7f3b524ee528e4f907ee272732dfa1ba83b048bc7903b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c8ec04ec8782e0a4203b191d970f27b82fe301ebb21489b97d97d73671f6f036dccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f847c05a5e56071a3ef62134dce4b51cacb03675a1e76022387dc5c598839eb5daf6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fab7e87bfc702737e8e78c9d8384b10347d63a2e5305852dc7796b9bbc7311fd03783f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a4808e0fd24b5e7779c9c5ae7592b2b9ec457bb94c5c0baa398ceb8ea1fc37724eb0196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd0f992e1a310f1f414fa77d3170f1208e81ee0d9dde0e9c5a4000b8159ffded7b0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a22b4629e7730fc418c1d2be81f2fc4171ee7a6e7b6b57ffa5486b6642a45b4a6606b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d81c72161388ed76a51113b35d47888767b7d8a7da8070438bc35d4c75e69c466973d4e7e01526dee0c4827e6e12215caa242f42041ff0d57b82309a3ffd9df44071dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e3593a47459d207f537070f5c107c5d53b71d793a28c46542fbf6d97287b4d0bbef47ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa34b0ec1ab576d074a638d45f0581d4a96be6045a1ef135a656a74f9b1798239904476507766a7212a243316a76f2df89b9ac8b7df4a68f0232dac3b38238b2715ffdacad0bb028a42588357e3fae10fe5b1541579ee42df588b38de71333264b81e24e387e1ce18afddc00ecfd8720ee145a48c61130c224300c8d2f0361b19bc541eb4e8896f7278f666083ae589456c9efa3b55b964f53c43e91a1a5d5e73887dd6fc4af066e5b5f65effe7d94d4ef607351e64e1f0e42099f1f51c425b4ad0e2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae5e4909d91b75d30afa3c00ea047779f487f1a0e4ab2017bee29fd657f5e3da75cfd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0ed2df772c1b495e65bbd97e993be010a0a68148efa1d7c238cac0d3139b81554da5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f474a501aefdddb47a4aa72afff6d4fe8cc84dc7ee7752d73bd09883eb6a07e3b5d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80bee22e47a6d6beeb7a58bc8cf1d265120dd984311a2fd965a9611f6f5541f89d4d0dbd9a9e86f867fde7879cf801302beab20f447427126f4420ef7310bfb6c82d045b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b91c203cdec9aa4513dd68d16704bd8e403317f838cf951f40923bb110ecd350339d46cdb5bda5d7de02ce3093925a0687a84a1d909bf0ea61a7fc33d376973db5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2bb62025e51a0560da519e9a76320793a36c1907921a1ebb40ec4c3c95f45f3822f4be28a8422ef70cf1e711cbb14de0e8e338258cadeba061581bed9e67734e2b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b509dffdb56041182f7604f79eb2afd49630b70193558ba8151a18321c4d71b141faf1400937282ff975799cef6df1c38b415c0a73d0281f4e5f49caadcead482e8fc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e4b7e80803443ba934fc76620f629567cc7ff31fad9f19acf06c197713894fc08ff24d59493ee733510ed8035ee361363e3c4bb8d45c35cae3e6231a177a24286b8273eb06e246777347a16f58a9390c7c072d27baace1ba51593d1d38c405a03d6402ecac6e646d23e137a69e46df7bca3cca889f5d26d70d2d908db1e42f0b02a9124279addc9abb1c60e925615f8950f27f61351d32a381d3782c3c385b3b62fba36a2c07e01c80d8670aef9452dc9898adba4f5c5f151392f2e59ca5d658cc46b013604e24b328af307378f683622d4d29b9882a94ddeda8392322a276ed35c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d739141e23e0278437e5665365bc9eaab51e689542932605736dae32a89fc05d76a177996838a093c7e5942f84df58c52360eb36a7a48f6aa8ea3eed9fd3660d3955c74c6f310ee400d1d30b3aea49835a53738ee27ced4232c2d952a5b61ca7393146448319627811329c327506d383a95c089579f6f8e635a045a581ecb4d7450ddfc844a6b96c64fa002239ad670b6f913517b69dffa07627dc468c4a9725e5785a1b3361d97c86838bf197ea2b64ed29af82671d0c938e75f02105949abb75e8fe80faeee5370358c8446372dcd9fc6d30208173bae5bf6dda898da8eb84b909f1f9a8c8852c7c6ec43ceeccf08cf947d2a85e72c99b69f8134ecd9f64607087a577cc1bf76d2ae7b74aab73332308f43dfb6ff2468d4b2f32e84de31559431d7d954f260dcfee0d4bcc480484cd20e8429316d4508dea754a63cc0bb0f58136b903be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf540851ea2cba33d93b412cb65a649dc5f3b0e16538d68d754b9e3ecb3e79d1c39673f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b7260b14ea36ddd9dbb40932f3280655f3ec2818117ce342481f55be27e6ec84195db870822780a89462bf56bf3893b8d22c588527477e127ee6dfbc0af651dc957d92dbaa4145ac9388d35136be66c191d2221ffa23db7ea11156aa92925830e89f7ad4553be528ed7012deb39ea3051078e8e4a6cfa9a9fe8dd9832dd326d94120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af4c497ed6e8b4dfc2b8cb18b6211fd34871dd27a42daa84f438af55607650d883e7451e6b0a5362242ce2e6ddde2ffae71dd342c3c54b71104a3fa854c6be1310b86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c006af4250299fc92ebbf4b5105c4fb53f9284750dc45106b28e5d9a81bd30c64b9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08026297c37f7957e21b7c1838f1c11fb67cf0e954a1da4dc8c6636f77f8a0d25e37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a347bb1b38a6dffc764f6592858d7f2f6f4e236db42161cb37506dd58109a7b6c35e364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f69cc7159de2b9e2ac09afb414fdf60242be9250718809129e45ffa78905b11eb4ce5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5efa9c5dc57ab8735b71d7f8825586ae3b9718698ecf6a1c30f15e602dad5aa908550a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82b857de81edf53951f3539b08a572b8da124faab968de18116a4ae7a81f63293a53461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558ea2e6dfa54f1c12996afda43950e28e29e97bcd53a8fdc5ea55c56de7dfea376d8a0a29ec1e72e5cf395a2eb8dc69da39704b392b02aa74809b543edb55fbb8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85555672c365e3d2098626061c4881322fa4cb8de0805088bc460a5f685597b865be3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855b10a47ecb769faff54ba790cd3264c0416030b24ab0f3c622f5632d0bf6e146be3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab970820f149cf8373cb3529f8270e640a1d6db9984dfc9969c07ed9d9ab99b714e88da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7aa1c19987d40a640b6784f76562ab4f3693f08521b6cc064935bb498316f44f34d7b351b05359e581bf5389510cb10bfd3bcc901345d5cdef234592ffa631b4becb7baa72cc1d7f28733a2e221448bbb3bfbd70f7eb83454b86bab8d184951d8214665749ac46c93b125f72b796a7250fd9b8b89a18eed9383075546c85fcd433da0ba6765f2969482bf8eaf21249552557fe4d6831749d9cfe4c25f4661f8726f84a19b465c8dd8b38407b47475888cd48b4277ac6a03975dca5a37db45cf586621ffdd5fe49a9f6cea381ee3fcde23ff006ad0fa4de19105f4bcfc8636cdabb5bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8654f6d6a1d39c3c6af0be2ccd384451de8fbbfd436f3e337bf581f80ecac50d9b71da3e2b6754b1fe16527484bd1187dba3b05823dabe43bac7a40e6af3ba741debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e316712ca10f6cc37264eafa1abd88bf63b8fed29fc82590ff5d518aea7cda630aac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3cede7ddcdbe853f4ab9125ee84ab072fb1ca16a3c00baf961b532ee46a4eabec438fc0177cdd9ef205f2136200f1b0021252a29603a0ff68460047658a57f8706451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e43bbfb6b3f57b0542db92a7deca128b48f1b28b7e7ee62b01b955dcbc7153b13679c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46f25997469d734216ba882440d0ccb61ece35999a18e087f3c0afd7f4616cd4b38a04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f99055cca4ced779708ab825b44ed27ca88ae83aa29775125b80f8edcb1cb36538c078a30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bd348bcfe68f50e56f1008836b1906f895d4df7bd0b4fc26073c041e7c77ed9cb77964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5204cbfd06e4ad2f47a311a1d9532a081bd3ec899e95f50112889857fadecc09ee359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e156c84fc860df0f904b54929c7b5f65a149b47501db3c245258846029f2e6f51d055c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457dfb46580ff0b885921c6af041f293cb4dd1cd51b5d51ce02ae04975893eea02303fc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544252b9c6b2c29e752e8c5f3927d94559ddbdd19abf6ff807c3954801f0c560d195e5976935d197dff9b232d4f106a955d8d39bdebd3b3ae6f48920593606c069c6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd046004ab25d54550344b03f39344cc13d448216e45d95119adb78415ef988a926dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383d22a8be20e77ff00005c018c905a9b59456ac019cf46453fe8370e7cf07154eeebcf3acccf3fe6982e77699272b727dc592186bad71fad57dfe043c73e37e975284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf845492863848d630e5d04a6e35f6179b1ee34fbe8cc2ac38d35f6fba33b451c54e444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583ebeafab7333f3e8ba47084f626ac0706af3ba2291f263c4f5255efefb193e35f2ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cfa2ddc0a76cd5be325b4c4c5cb8bfaae8e19826a36b37ced6a05ec9cf4de425767856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e6745691534261b986a79d20ab4fba5c4c3a2d92e50bde59e66defef5d8b9d645c56868168803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a2173d395feb9458ff0d7b8d69579a16cd0502baddf17236139c2fdb13a0b9b8189c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e499f75f4995a5f48a83ce7b938796c2556ee0cd864ab598677017833a76a7368a2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f23ed0ac00ee8286557799a9922518021f0f15cefa8d1f5fac39f05807ed63d6188ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bf814e16fa6a3c9bc5d611c84417ef8cd38aae00e5cc2fc70178e2b87da88f97f857027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db9243ea16d533587748391cfc049d0139d04a9420b5eb3a8b6489d74d246e535fb36dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e9451c8efba81360c8971f148e1ee8f1b7e3fa4886a97fa76ee7307eef614f4717e388cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f1549a6f256331dab5d16b53993499b36fc49039629211ec63b9373e7436ffd06b9eec12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d5f9fe0956268f1de883a72dab668c43afa984de82e3b5bf76552b72f8a62a59224f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda5456d8df1209d90e4736c0d2ab23348385b0ab4c0518125756accb1b808cc06400411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401b04936bb97cec33e68d0b8e90230b264a236a6413ab9253568149b7a6e1d12b06dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e9044468745aeac5900b532da79a3a906b852b42d73e0d751ff59dc896c6c07f7cdafdfdb5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c6a0274169a372a6168c86fef32f283b19a402ca4f54ae876af82422d166163ac3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b569c0251168d2a0a49fc4e07bb40cefaa6acdc8b5a690e30303447bd7fe4a70ad748af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42ca6ca861ec91aff427b99815bd57c5695c72d010a203cd467cb1ec39a2407e84d313d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5393dbbc04e2a7d18586ed65d8db15c1094034aec60bade9c8607973e04a711a494659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5d684fb37aa674bc47bbb80bf8df5517c41052ed80120d25f9e8b2dd177644299e986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2be45856a539df8b2a0027b6d4154ea6e700d11b0d75120f880328a5830025c0902d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d52017622458fe712985fe670cf24a95e82b466ae95d3e72e94e92e8fbcbeb12ddab29e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe5395c058cbb882881dab308f35372ddf0b755ec659ee8dd2e86cf1172e0e2a65079246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa32baa1c61fc2ee17dc3bb5e2f66ac74d525a67af34e479f00fca03c27752873f065aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3d8f14457ce60687793562bd4092f09f475e700b092d22b4e78cf325716f2159a767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2b52f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987b93697f52fe967b7e446a4e364ac4cc14587dde55c981d46ffddf999775a1a8f80d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c6e53b7902ed8583902d199a84800492d9d86007c97fbadc63300326cf6e91449e5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f2ff33fd6a5198d161d9cc8ae90d0c5829e97a5421d0cb976a8764f9687d820b144481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db8579f7da95bfca08b602331bd6a54a27684cf0dd3c7bb02c64c8be3d5adcecee2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c67067a9c1e9b3a1d8a5d59dbdd437fc38dc076ee3771c53ea395222b65f83e31cfdcacbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c53b7573cd78924df7248d8a9ffce02e9357ee951e8214553cbc54ff9ea084e86c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df56dd35a225c6b97381c34d0e1155298c836ea6d304ea25d38471f7d903b7c1b069d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83c55b81d18fd0baaa139858f350d02216c689f6846e5332730874e11ba5dd252aed2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c566a3e62e8e0b55bd0e984455d7eebb320414e172cf366d408a6c4cf4af940efca4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a9c6e8bb427dc1c7a6b164c10ffbefa83eee634cea635323149925f3ded96364e72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21cc16094834f0f5305d1104363e5e1d524aafc53cca1fba0aa994a6c2fb04c4d22985a9b9467124f36dea843021fcd084e5e7207f326ba7e5c690b47186b2f9b6d502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567b19ad85c70a1801d6f85cb8ec4ff9b158c859ad6745ee1af480a5c92c0051a6d1d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c84260446eda5204f370ecb4f90a946ed6c1cdf114bf8f73f9b998f02489610396a4dff288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7abdbaccc715eafdae9c96cb74f5001b641c07f0c5667badaafacf032678c20bf7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43dfa4dbd8ae17fb5c9a4d7c3f4fd3ee2bf6b363fb1614d721d4c900a2af7e61963341608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec8482a919ba2d35103664f1b37677592cfcbad566a7410275caa0b63ba86f0e9825ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c747bbc7b089d608a6912e831d240d7d715d49a8facd055a7eaba49c806eb9dc36180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302efb9373d6ed75ff484346cbf26fe347584502703972b728cac8d7d48b1577d0e26f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fec0307537f735d2456c7c0b132cb93872690ba5533f7c95afdc25fc1809e991058c6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e93e500c44dd257692d23977de8bd9af5375f930642698a78612648c3dbff59c18937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28acecee2e313bfa7d7d38c092adf6a1e363780b1e2ac980ca3639cefb2cd61c24bb9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a0b5da9cfc53dc9e228d19904172c48ce2c1b1753126a8573a78782739c683ffd1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c386f6f0f318577d867bace7fb9282e5977bd415cc533e327e663cfd7159d9c54e38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f0cd12e798a6aa9dee8058075bb97765f311a4d2deebb566dad1bd701dfb09610830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd10cfd712c4717d149421049f1577508cfcc488532bd9856f04539ddb8a428bc49c96ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e26526270269bd21fa46241cbaf6fb6d1f55b1449eab8f8a9c92fa9b51e084db3ac92679fb30b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c97cbef889fd513acc9311a7ce9b34228a46642dd22bb930fd1223e64bda715f2c4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9efa986db183b107c3493d6b920130ec6c59914460a1336db423de09e8ca49a8ca0f3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e847456a6da63f9b52e1101060ed3ebb2953fc05679c7f8dd9968fa877200f1179a66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e53fd3cabd114537d1b74282148a7e9327edf93f9238115a498ac49c1b862fd52035f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad25ee539d9c8a355bef9c2ff409203f0220acca549201a9607fccd1a028acc8ccef1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd3446b8b15b4e245cb747680aae9e3ba7da7a2154ff52583acbf3a4b625d38670818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c1de0ff3f23aea4aa0fc77b40218fd74be3275557411c98ff8bf93425a74d2115ff21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee613839044eb3ed85ad53039b16c479b058fb5e6ba75a823b99504090b909e4ce90cf91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bdbbdce9587dde615f49446ede895fc30efecdb4a22363a7d90609c596bcf36c65e2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c827f3acb57f9800ad3a3b2e035ce4852e34840263b7c3b9ef5d647ba94a6284b175e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d55a5098c031dd6f62c7139f08b0da1e4c4b7cb0a2ec95ed60489a9781c24b0d1cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19debb217370ee54d0f57a47431b22071ce2c43ffa0e52ed113cb2c68c8d38aef758d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5bef26529e1f5df02df609e4b34bd548087de5daf329c304f7d5a8ea5ed09c4d673b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97de4c8c9d4ea9ab6a6816a3eb68be965bc62a81b97ae97a37ea1514fc11cf16d0ac3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94cf863242c00a4687108668db0354f11e3dcf6b0a44b77eb655f511c3d8be0418b6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb3359432618fc9cb7eaf41182ad9a075e51af580a96aa7def8c527498cccfb2baf3d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753dbf6fd3764ddf83f2bf9e31fbbdc9e5e669fedc1aef68d29401f74fe30aa63bebbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b365d107d3019ee7728f31c1aacb639caf86ca6dc91935076f375faf409e62050a379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d741930e7be45eff19143c3ebae8908d426ea0842615d078810cf38afa516907d25effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47df46c48965816c4333fd26e87cd350c56d3fb016d15c4a23d962757879872ff07431a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39d6964171ed4cdc2445b2075eacedc5fb2a7848394c07d7ab97737b691b82d49ff5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725bbfa4db7cf5c0014d2327f696c29252ea88648b03e95e6c674b40578cb4cbb5ff699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2decc585a33cefaafa7f9740c99a3955abe97d29f0cc1c994483ce14312d29546478a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22cd7e168bd2def20538192db40792ca286a9ed5308179c40315abee64cf0849f88247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d2f9e52e04297deffd6d4f0e38813135c9fe94d97dc226a8b467e2187f0b05218c58eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6bba3a2c22b5dd7d7641736126d43ac0627a9815216703b7730888fb5eab87124ecc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa92af912661b6c97149fd65cdc161d6f5be0fca947cba7205493877dfc2cc4d7eb1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd9819aa740e0f574bc671434fd53c3679da19255cad0befde0fc922b04c87b85da4d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a99335e118d9d097633f83c2104ace94a12bddab9d5c0f363e6fcc90ee40e89236b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c7626c1687da9cd389c6d38c0220c8b5ab9d711479d76ae6887c2ef44f7863f157ed8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdffe79609a87d54b62ab3fc421a102780e655debee7df234543df6f334ae8d45f93b2265d619efef75a02e183250c5ba4fbe9ad28223e59b1b50e5d7fdd89bcd3bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e451c0e785d94bb808b64ccd6b52ddc52a319e2a5a366c7f5b7378eaac32dd77d847971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf0607b97bfd6306e30fee0907fc528a9ad9d5f4780bec95b4dc33aed16a6ece1c4645462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976859817b92cd3acaa1d48ef613365a0895a4f8aef45b1e06f5fd7b1108c9d5dfc9e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c723323422c5a17f3141c18a07f7bd119f00fe1e7520ca58217597d6744dc925b6f1619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f846eb771d8d74e72e5c08b04de2ba0a30e1c861df91eb6482a97667df893411f090572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dca3c530b115e97cc6576dda887fedd10d813c9dab8d3434e1dd97a714cd27ad3a3824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2e955d4521509e408c7be37ce2f937b9cb1a969ec43c98da45fac913d41e74e2749fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ee47f3d86718b5f374c0da5aab2b8f918e179bd8f03f7e8d80f1e52698c932ec2749de385c0bb2e193dfc9f76f7b416133f40e530952fb279c3463904ee17c119be303d7848f67b968844aa0bf598dc402e9eaa4f6894e98420f7b4baa3f94b5eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143f142d479917039036e2e32762374bc6459c8873f8cd7e1ca858fdc9ec0a08327f64727521d2a86239303ee6898f9acdf9734fe42c9538e1cc3827716d32981c9a757204327137dfa219f40cd7a482ad105b590b2313bf89125600383e5529030f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90f0256e3d3b2755dee088632f8476bd342810a0c3fad7ebf09365aa2ef8377389668db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5e11a1d175c97bda7d770ce0aca4fe2b45ba87c74e0ffeb0fa9936f066cffa769af5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda4010c9b60dcf32445d21de4daf194cd1687827fbd4a6e949837d135c66c058afef942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96ef63e3dd1d96c6c2a85ccd02ed48ab381e4a77f822212f96864a4890b49ce81d74cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae5427d30bc3ec2ed93b632f0b0b075e64a89a1a92ad45d9054f2d37408dd3ceecb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f0e961cc2dde40e383652465c7a68e29fecefe1e74fe6aac30593c1d44dac658f529a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be636f2a7e2ad2e17a4be153a675755afec6efca95e1af47f80afbec9969ee84536a83121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759e37474e36e181f8bf5aac04cf4681c22f153ff6dfcc63a6ea15b856785494f01eebd5a297a9a3b282745059cf74ddddf82df41a2fef816c89e1eee5979cd5e96882d455330b713bdf7e17fb8d0dc9257a501e9803e1e79484ffaa7abe3d62c54b2b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853f450535a26acc69afa22054c9e86e865007d14e80a0e5e244bd456bd6991de252e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d1c05e90c2485d6443a4f1ef000d84cac4f60cbeee90cec382ea6ba57673338fb25c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7d433808fcd79edc3ea017b6d6a2cf1ac850709832d27cb50dc6eb78ea26f5d83e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fb94dad7f2ca3adc1567396b0a8f69ae0683ee98f3404bea81c70dc6f34847335e86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319896d001c026b7400252e4d897755bf5620ec58885f443eabdd9d3e3a0032fd33d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf2d5bc5775d93331e6b8a734146280f79436545d75555c826163cb46731e95d5d5f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5dab0d97c6c0638b2b584493e487ed0a1f0daf7e8d704a12b2491ad926ce1bc5a27e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3af1165e944e9f1da0f55ad2dd4848324684cdd9908490a36b06b2dccf37bc017f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf526b923d82102002b3218ddd3ad49ea53567dbb4672ced8cc3c691dc6236318269f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0d5e82a88787320f1aa713439bee0614ff78faa7781217d3982dac17f1cc76c77df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a8652780841d69bb638361ee7564d9361b8ca893e02fbbc98f1488e44e698429170bed9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad4810e6bc334329838df86e1983d2a9053045faed9cf8638e399d435e6088a1b251938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f6e7d9a527cafa1b49ab33e5d83ceb79393a56c8bf018f73bdb458fd15268d8707e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0f52c78252f7f50689683cd2b4ef06956cf4aacf472d9af620a0e8a1d4619cc8fe55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c474c66a914e9bd8195f5b9cdf9383132c485ce15ec34a1bac7744b0722035aad0cc1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e33825fd0c61ca02e33825d669ef77abbf4f5503af22298d66cf31a02032652ece102381c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb00b7a08bc4a5beda49cde349e6d07cd185b44e872e560ff5b65056353c5ad94fd4a4339d822fc8b7c68c5180a45388ec96a6c7fb568c97d2aa495f88c917e221071cff2b5cf4b113285dff0ea2bfdeeb8953a213f2d9e7ef640a81dd33f70486295e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c35fe619401ebd67bb7eec714fc03656319364c79d574cd0268e3049eb20104d4c35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ebfb46ba4125e44bcb22661cc95374b861924cd7f07c9646f110e9fd6e170f5453eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f5468c48acb0bf28d5c3032f5709f88aac17058eecfb5459c57867785197c69c6de4dba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadcf6c49c2523bcf6acf607973d8705d4e224dda2193105eae9a6c7f82edd4a9aa63f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdddb524d4e99ca72b674afb00477bf232e80047564cf21afff760cb178579f9b170c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b68f5c742c7a2f4366f34faec8ed26f339b29147ee92bff60b1767810d6498ad57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc791d9cbb9d6e74b9338b5a00cb4c7e99ac9a749f2730ad4208adf54947cc566551db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbf51d303cafdcda4b25b5253daf655a836576880cd156f43232c87e6f5ea0b91192b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d34919983ac96517a2187e476fae716554a1e6ba83bd86ee6e79642217b6774b4fde4691935b2e46833b91e92a544c869581a283aba6565d2d05d997cc1e8f84c140ae28ec6482e54ba62fa1df4fb65605f05575826235eda64e210ef6138cd6ede0024e26ba13680476f751bf4f7d79281c128667885ed7c0e7e9ba7204ebe026b7cc265234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa6230caa5c86113a6bfe1f5b3da541b354bea1d13b0e6f2e3f2f6fd6876b74af81c0fedcec093121d08fc6230852300b579e89e0a2a4e794dbe434f56311e0fd02571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df9e589dfa23c80bb669548d54884cc4f2338e1d4371d975f660ea357a5beb7214bec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cf1f5fa9e60628014eb7cd074e6812559ed0fde72fb426a7fed8fb019cd4ec3425be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b40981e645b1d4abeb18c4a5ffe6185c95a48e708fa2bf7a4a7e1d6f292bbc2e5c8c340c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe8ca1edbaa66c3816606267ded3cd47a727cbf9e9960d80307eaa1bb7ea420ca31728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d6760fe9cafb8be6e6122b705c6c6018bbac079584fe546b62e45bf44efdc62a98c99cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e27829420785987b8276810da25444b9ed7c9f7f734359f14a70a3595b509529708f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdb867644cd4a20815b7d8be14902b594bb6e30a81ea159aa5c67f24212c92cbab6c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddffcf0ed929933cfa373d3e71ba42796b5b48ab461dac30f7afb53285903a8b6fadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95fa3ce8db58b46478c878e81172e6087a61af5668ae23684056eb127548b122eb408c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc00719badcd291d152446a6f16d0e35884409ba8eae577b37b01e091a92122395cc4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb8123b4d734b760e06aa8c98f1b2d87bc84af08ff6954f93fcf72ba6fb8b66add6d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c61465b3640ae4952d3d0aaaea51a5248395e5288a29dae87d825943ffa2ec9691479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c515fd6fc2ea2a5288f804ed6b8ba0dc8e60b4063bcf404e6c6c295d497dc2b10c1cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98be3704d68750623cc843a9537f7aa3207952f2f1be229e5952a4bf21af2a0cc7d0cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb853b2c59533fec261785b3d6aa038b0c25232b5e760607b837caa1e5371e8b6ee4b3954a837004806dc6db5cb28d0e7ebd36e55b828fd5db2d040bc08ee7186ed85a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340a4c61aa65772b7a9e43b30777a62f53dc2f6400a315cae85169276ec4b618f67333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c193e6e706326898a878ce70f32dd6854e3cdfa39bbc1bf483f23d416e1b7f1b98a13c5707902bf2ed4d3ae4ddd634ad0f93f4b5cdb45d3a59b0c15654b9b757da00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e190464039206c8a511fad9db282599bcc362823807b24d2b211914b2440f939ea53c1401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9dad162b1ab9c15fca64ccd50918a10749c3e41ac2c6e4c04c5096ec359b6b7c9bd9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e49180d62b39ae08903ffae8ce361474d67131c95f5bb8133443f1fb1699c8914b6950373b9fde281bcfde1d40c1d1c32fa3e4143b4b821e64e3ddb19b3f694e91606eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdc56b0ed63b07d6c031aadcd37702d93dc6e654ddeacae9a3d962398246de0ad04149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b81080a382daf8092689f5f459f662c423fed3f20722d927ad7ad70f5e3da82733cb4f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec076fa3508e22f243679ab61757f5bc8586191d1dc7544f4473f00caecfa2672bbbad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f54f3d1298287a47dba2ad8e94d0a1238185f394f244a9f1c139b77c41899b691e0ec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3daca2b627f05abf61b69cb36b81f316cd306929d8db5ad05d6fe2fa3b05e33ab0374fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670617ad2450052295c81d43d22868f8f02cf66d05ebc9c8aed79404a9248f1cfaa9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd93674fa4a102c39ae0751a5e042865102e217dadc4dd48c32c38f2cc4e6a58e5d824284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fde4cb1d25f54681f5da40ad71b5c44822475cf5da5393b30da3038fb8c7b0bb066005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855202db54f16547080330e56a05a1cd674e8506b604980c8f50eae1d65039dc6460d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2e7803604652b5992439d0cf1e5dff1d70e09ead746d4822de15722d91f36877973ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e44fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a788138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73e774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c55570bc06d387abd7a1c4c6b1a37cefe587f9b68c7a624d8d61989fee62b89159cc323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b98a4a3cfc75e3816483d564caf4477aac3766310df4d67faf99172f98f335f07638a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7cc45bcc6b79b1841650e91ad800c3ad7b41a7569cf5fa48f6f659cb3ecea0c90e83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f2812ca338e84f39ca14a2d886c98d25d28af6b6bba7a76d059cb54646b214fcd8e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa65690fd779a8b3f07b3fbe92b63c48129cea6ecc7de7f8aad9d90951c432a962fd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13c509047c6875b52b399778acfe3933a0fa03ac427f4b988c23aa5a73d3d89398aad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3ec38f27dd9167ace1a6c21cdd55476a3f98935b3333690bba2571d2d06c4c4ce16cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35ce24e91c115047500930382b05a9a83cbbc3433de50e48bf1f76e6bb9c62afdab2a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac5bbbcd72faeb53972b4ff82965f365e650d55c63d4cfb1dca67d63c6068e5aa7f68e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7e182f73cf6cef36dfd4a48967dc77da0a3db98911a68040eef1272025013170e0373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37bbb8d9a3be62dbdf5c069f6ffe09f541cf97d13777442c023badd1ec71d4758d2d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2e5b8dc983b5d2f3e24e65cc6792ae49d27e2c14c7afd58f7e246683346ab8c4a17203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a334382a7a5464e30ec9052edfab00ef667fbfda596164bd629e049df46e0cbe5c0af1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef467d9fc4d66cf97876382b25bd8a9274b7a2bf601692fdef6b48efcd0f7bbce101b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b24484d911574e73d0522b50f1c701cdab47e8bd6ad758846c4d7174102bb5107ee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c129454eea100e42813a6f2c983a3f4a54e2b02061251dcb04142f3ea6c77c065c1e744fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b43579a1a81287749357f4e71fccec5dee31b6dfdcd84b81076cd0e4ba6495ee2ee595a523ab4af9b318a7771751fef91bcaf9a480dfb44c57570e671d9a2fa6452d85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1adf2ddc61e18f136c9d0c4969997c55f1e97c9959448de5ff37e836319c24d8553d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1174863fc9203f6d3b51edcf61553d497f9243db48a7a814c18faa0ad977e90833e0371ddc25767e2d35cf364d0081d08d69d0bd3628b53974a9624a4eea4c54d583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa3f1b738627e4bb17cc4fc1b3e1b5c84297e7906f2cecbc666e9b03bdedf5b951785ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056f4015f8fb0eeacc5f2636f54d9ff54cb24f28454dd81f545de5c77db77b13dc6edab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98755870b651587339ad15209fb3b5c9b47faca217497f974cd5194b6d112cb69e7b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c5f734b04007e028bd11f14e25d4c1bedb2d34fb46f47a9755d5e00f4c8e2bb4a33ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249a9b81962058b0284fc6a678abd5aae733df2a9fff9d9f7b345303b1c6a071e798b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12139c0b32a25ad0eebcdde074b0a29c3ae9829d8371e1b71c0838379db4d5081af2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f6107e27e9b34f21583f095e62c009d170457ee0f91b8fa54f90326f1b20122028204366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bcba323a34cb7ad0b3cf44c2ab458dca3e3581e1fbe58d7e3ce8943a1f1f87f8dbf51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005e4db9da88ebf5f691695276ce7fc1166adefb4b10f8737ae97497993c7b1d897162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a0578447538efa81dff39f824ad53bf0881575ed4f9914eb08728358b28827fac262cbe2f4f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab3b66d0b25016c5d2237cbe0591a430e7777592d1b8f09b07d647b14c02d0620127a1c6299661e054bef87d27fea78591de238750d580048fd505ff55a658e48f../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-rt-4.18.0-552.rt7.341.el8.src.rpminstallonlypkg(kernel)kernel-rt-develkernel-rt-devel(x86-64)kernel-rt-devel-uname-rkernel-rt-devel-x86_64    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3fff P@f[fg@ee8@e@e؈eeBeN@ee@e6@eee@e@ee(e}@eu@epb@ehy@e_>eYeV@eReKx@eJ&e@@e;@e9@e/e&@eev@e ddddܺ@d@dϋ@d˖díd ds@d~d@d[@dr@d@dC@dddqdldf@d\dX@dJcdFo@d>@d9@@d3@d.@d.@d-bd-bd-bd%yd%yddxdcU@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.rt7.341.el8]Denys Vlasenko [4.18.0-551.rt7.340.el8]Denys Vlasenko [4.18.0-550.rt7.339.el8]Denys Vlasenko [4.18.0-549.rt7.338.el8]Denys Vlasenko [4.18.0-548.rt7.337.el8]Denys Vlasenko [4.18.0-547.rt7.336.el8]Denys Vlasenko [4.18.0-546.rt7.335.el8]Denys Vlasenko [4.18.0-545.rt7.334.el8]Denys Vlasenko [4.18.0-544.rt7.333.el8]Denys Vlasenko [4.18.0-543.rt7.332.el8]Denys Vlasenko [4.18.0-542.rt7.331.el8]Denys Vlasenko [4.18.0-541.rt7.330.el8]Denys Vlasenko [4.18.0-540.rt7.329.el8]Denys Vlasenko [4.18.0-539.rt7.328.el8]Denys Vlasenko [4.18.0-538.rt7.327.el8]Denys Vlasenko [4.18.0-537.rt7.326.el8]Denys Vlasenko [4.18.0-536.rt7.325.el8]Denys Vlasenko [4.18.0-535.rt7.324.el8]Denys Vlasenko [4.18.0-534.rt7.323.el8]Denys Vlasenko [4.18.0-533.rt7.322.el8]Denys Vlasenko [4.18.0-532.rt7.321.el8]Denys Vlasenko [4.18.0-531.rt7.320.el8]Denys Vlasenko [4.18.0-530.rt7.319.el8]Denys Vlasenko [4.18.0-529.rt7.318.el8]Denys Vlasenko [4.18.0-528.rt7.317.el8]Denys Vlasenko [4.18.0-527.rt7.316.el8]Denys Vlasenko [4.18.0-526.rt7.315.el8]Denys Vlasenko [4.18.0-525.rt7.314.el8]Denys Vlasenko [4.18.0-524.rt7.313.el8]Denys Vlasenko [4.18.0-523.rt7.312.el8]Denys Vlasenko [4.18.0-522.rt7.311.el8]Denys Vlasenko [4.18.0-521.rt7.310.el8]Denys Vlasenko [4.18.0-520.rt7.309.el8]Denys Vlasenko [4.18.0-519.rt7.308.el8]Denys Vlasenko [4.18.0-518.rt7.307.el8]Denys Vlasenko [4.18.0-517.rt7.306.el8]Denys Vlasenko [4.18.0-516.rt7.305.el8]Denys Vlasenko [4.18.0-515.rt7.304.el8]Denys Vlasenko [4.18.0-514.rt7.303.el8]Denys Vlasenko [4.18.0-513.rt7.302.el8]Denys Vlasenko [4.18.0-512.rt7.301.el8]Denys Vlasenko [4.18.0-511.rt7.300.el8]Denys Vlasenko [4.18.0-510.rt7.299.el8]Denys Vlasenko [4.18.0-509.rt7.298.el8]Denys Vlasenko [4.18.0-508.rt7.297.el8]Denys Vlasenko [4.18.0-507.rt7.296.el8]Denys Vlasenko [4.18.0-506.rt7.295.el8]Denys Vlasenko [4.18.0-505.rt7.294.el8]Denys Vlasenko [4.18.0-504.rt7.293.el8]Denys Vlasenko [4.18.0-503.rt7.292.el8]Denys Vlasenko [4.18.0-502.rt7.291.el8]Denys Vlasenko [4.18.0-501.rt7.290.el8]Denys Vlasenko [4.18.0-500.rt7.289.el8]Denys Vlasenko [4.18.0-499.rt7.288.el8]Denys Vlasenko [4.18.0-498.rt7.287.el8]Denys Vlasenko [4.18.0-497.rt7.286.el8]Denys Vlasenko [4.18.0-496.rt7.285.el8]Denys Vlasenko [4.18.0-495.rt7.284.el8]Denys Vlasenko [4.18.0-494.rt7.283.el8]Denys Vlasenko [4.18.0-493.rt7.282.el8]Denys Vlasenko [4.18.0-492.rt7.281.el8]Denys Vlasenko [4.18.0-491.rt7.280.el8]Derek Barbosa [4.18.0-489.rt7.278.el8]Derek Barbosa [4.18.0-488.rt7.277.el8]John B. Wyatt IV [4.18.0-487.rt7.276.el8]Derek Barbosa [4.18.0-486.rt7.275.el8]John B. Wyatt IV [4.18.0-485.rt7.274.el8]John B. Wyatt IV [4.18.0-484.rt7.273.el8]John B. Wyatt IV [4.18.0-483.rt7.272.el8]John B. Wyatt IV [4.18.0-482.rt7.271.el8]John B. Wyatt IV [4.18.0-481.rt7.270.el8]Luis Claudio R. Goncalves [4.18.0-480.rt7.269.el8]Luis Claudio R. Goncalves [4.18.0-479.rt7.268.el8]Luis Claudio R. Goncalves [4.18.0-478.rt7.267.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]- [rt] build kernel-rt-4.18.0-552.rt7.341.el8 [RHEL-5332] - i40e: Enforce software interrupt during busy-poll exit (Ivan Vecera) [RHEL-26248] - i40e: Remove _t suffix from enum type names (Ivan Vecera) [RHEL-26248]- [rt] build kernel-rt-4.18.0-551.rt7.340.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-550.rt7.339.el8 [RHEL-5332] - 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}- [rt] build kernel-rt-4.18.0-549.rt7.338.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-548.rt7.337.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-547.rt7.336.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-546.rt7.335.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-545.rt7.334.el8 [RHEL-5332] - 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] - x86/boot: Ignore NMIs during very early boot (Valentin Schneider) [RHEL-22749]- [rt] build kernel-rt-4.18.0-544.rt7.333.el8 [RHEL-5332] - 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)- [rt] build kernel-rt-4.18.0-543.rt7.332.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-542.rt7.331.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-541.rt7.330.el8 [RHEL-5332] - 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}- [rt] build kernel-rt-4.18.0-540.rt7.329.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-539.rt7.328.el8 [RHEL-5332] - 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-6535 CVE-2023-6356 CVE-2023-6536} - nvmet-tcp: remove boilerplate code (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6535 CVE-2023-6356 CVE-2023-6536} - nvmet-tcp: fix a crash in nvmet_req_complete() (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6535 CVE-2023-6356 CVE-2023-6536} - nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6535 CVE-2023-6356 CVE-2023-6536} - 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]- [rt] build kernel-rt-4.18.0-538.rt7.327.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-537.rt7.326.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-536.rt7.325.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-535.rt7.324.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-534.rt7.323.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-533.rt7.322.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-532.rt7.321.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-531.rt7.320.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-530.rt7.319.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-529.rt7.318.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-528.rt7.317.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-527.rt7.316.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-526.rt7.315.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-525.rt7.314.el8 [RHEL-5332] - net: xfrm: Fix xfrm_address_filter OOB read (Wander Lairson Costa) [2227302] {CVE-2023-39194} - drm/qxl: fix UAF on handle creation (Wander Lairson Costa) [2218335] {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]- [rt] build kernel-rt-4.18.0-524.rt7.313.el8 [RHEL-5332] - 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) [2221468] {CVE-2023-3567} - vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF (Ricardo Robaina) [2221468] {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]- [rt] build kernel-rt-4.18.0-523.rt7.312.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-522.rt7.311.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-521.rt7.310.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-520.rt7.309.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-519.rt7.308.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-518.rt7.307.el8 [RHEL-5332] - 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] - locking: revert comment from KRTS JiraReadiness exercise (Eirik Fuller) [RHEL-11976]- [rt] build kernel-rt-4.18.0-517.rt7.306.el8 [RHEL-5332] - Bluetooth: L2CAP: Fix u8 overflow (Wander Lairson Costa) [2152857] {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]- [rt] build kernel-rt-4.18.0-516.rt7.305.el8 [RHEL-5332] - 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] - drm/i915: Do not disable preemption for resets (John B. Wyatt IV) [2212309 2213314] - drm/i915: Drop the irqs_disabled() check (John B. Wyatt IV) [2212309 2213314] - drm/i915/gt: Use spin_lock_irq() instead of local_irq_disable() + spin_lock() (John B. Wyatt IV) [2212309 2213314] - drm/i915/gt: Queue and wait for the irq_work item. (John B. Wyatt IV) [2212309 2213314] - drm/i915: Don't check for atomic context on PREEMPT_RT (John B. Wyatt IV) [2212309 2213314] - drm/i915: Don't disable interrupts on PREEMPT_RT during atomic updates (John B. Wyatt IV) [2212309 2213314] - drm/i915: Use preempt_disable/enable_rt() where recommended (John B. Wyatt IV) [2212309 2213314]- [rt] build kernel-rt-4.18.0-515.rt7.304.el8 [RHEL-5332] - 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]- [rt] build kernel-rt-4.18.0-514.rt7.303.el8 [2180997] - 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) [2179898] {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)- [rt] build kernel-rt-4.18.0-513.rt7.302.el8 [2180997] - 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) [2190255] {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]- [rt] build kernel-rt-4.18.0-512.rt7.301.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-511.rt7.300.el8 [2180997] - xfrm: add NULL check in xfrm_update_ae_params (Daniel Mendes) [2224007] {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) [2213805] {CVE-2023-4155} - KVM: SEV: snapshot the GHCB before accessing it (Vitaly Kuznetsov) [2213805] {CVE-2023-4155} - Documentation/x86: Fix backwards on/off logic about YMM support (Waiman Long) [2229889] {CVE-2022-40982} - KVM: Add GDS_NO support to KVM (Waiman Long) [2229889] {CVE-2022-40982} - x86/speculation: Add Kconfig option for GDS (Waiman Long) [2229889] {CVE-2022-40982} - x86/speculation: Add force option to GDS mitigation (Waiman Long) [2229889] {CVE-2022-40982} - x86/speculation: Add Gather Data Sampling mitigation (Waiman Long) [2229889] {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]- [rt] build kernel-rt-4.18.0-510.rt7.299.el8 [2180997] - locking: 8.9 KRTS JiraReadiness exercise (John B. Wyatt IV) [RHEL-982] - 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) [2216152] {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) [2165932] {CVE-2023-0597} - x86/mm: Randomize per-cpu entry area (Rafael Aquini) [2165932] {CVE-2023-0597} - x86/kasan: Map shadow for percpu pages on demand (Rafael Aquini) [2165932] {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) [2165932] {CVE-2023-0597}- [rt] build kernel-rt-4.18.0-509.rt7.298.el8 [2180997] - 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) [2176120] {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) [2215511] {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) [2212207] {CVE-2023-28772} - seq_buf: Fix overflow in seq_buf_putmem_hex() (Ricardo Robaina) [2212207] {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) [2216140] {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]- [rt] build kernel-rt-4.18.0-508.rt7.297.el8 [2180997] - HID: betop: check shape of output reports (Desnes Nunes) [2212166] {CVE-2023-1073} - media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb() (Desnes Nunes) [2153577] {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) [2216148] {CVE-2023-35824} - media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*() (Dean Nelson) [2213141] {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) [2226837] {CVE-2023-20593} - x86/cpu/amd: Move the errata checking functionality up (Waiman Long) [2226837] {CVE-2023-20593} - x86/amd: Cache debug register values in percpu variables (Waiman Long) [2226837] {CVE-2023-20593} - x86/cpu: Restore AMD's DE_CFG MSR after resume (Waiman Long) [2226837] {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]- [rt] build kernel-rt-4.18.0-507.rt7.296.el8 [2180997] - 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) [2179931] {CVE-2022-45869} - x86/speculation: Allow enabling STIBP with legacy IBRS (Ricardo Robaina) [2187266] {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] - 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]- [rt] build kernel-rt-4.18.0-506.rt7.295.el8 [2180997] - kernel-rt: config: adjust CONFIG_LOCKDEP_CHAINS_BITS (John B. Wyatt IV) [2193452] - 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) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: Fix build errors in some archs (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del() (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_chan_put (Ricardo Robaina) [2139618] {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] - 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] - [rt] Revert "Split IRQ-off and zone->lock while freeing pages from PCP list #1" (Chris White) [2225324] - [rt] Revert " Split IRQ-off and zone->lock while freeing pages from PCP list #2" (Chris White) [2225324]- [rt] build kernel-rt-4.18.0-505.rt7.294.el8 [2180997] - gfs2: Don't deref jdesc in evict (Bob Peterson) [2214357] {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) [2214964] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214964] {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] - softirq: Wake ktimers thread also in softirq. (Eder Zulian) [2219530] - netfilter: nf_tables: unbind non-anonymous set if rule construction fails (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214964] {CVE-2023-3390}- [rt] build kernel-rt-4.18.0-504.rt7.293.el8 [2180997] - 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) [2213206] {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) [2181907] {CVE-2023-1637} - x86/pm: Fix false positive kmemleak report in msr_build_context() (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/speculation: Restore speculation related MSRs during S3 resume (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: remove leftover comment for filechk utility (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/rdrand: Sanity-check RDRAND output (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: change filechk to surround the given command with { } (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - firmware: refactor firmware/Makefile (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: remove redundant 'set -e' from filechk_offsets (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: do not redirect the first prerequisite for filechk (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: move bin2c back to scripts/ from scripts/basic/ (Chris von Recklinghausen) [2181907] {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] - x86/microcode: avoid unused variable warning (John B. Wyatt IV) [2222817]- [rt] build kernel-rt-4.18.0-503.rt7.292.el8 [2180997] - 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) [2213491] {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]- [rt] build kernel-rt-4.18.0-502.rt7.291.el8 [2180997] - x86/microcode: avoid unused variable warning (John B. Wyatt IV) [2222369] - 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) [2212178] {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]- [rt] build kernel-rt-4.18.0-501.rt7.290.el8 [2180997] - 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) [2216997] {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]- [rt] build kernel-rt-4.18.0-500.rt7.289.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-499.rt7.288.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-498.rt7.287.el8 [2180997] - Revert "softirq: Let ksoftirqd do its job" (Oleg Nesterov) [2196767] - perf: Fix check before add_event_to_groups() in perf_group_detach() (Michael Petlan) [2209647] {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) [2156579] {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) [2192300] {CVE-2023-1829} - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition (Ricardo Robaina) [2185962] {CVE-2023-1989} - net: qcom/emac: Fix use after free bug in emac_remove due to race condition (Ricardo Robaina) [2192672] {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]- [rt] build kernel-rt-4.18.0-497.rt7.286.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-496.rt7.285.el8 [2180997] - 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) [2196359] {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]- [rt] build kernel-rt-4.18.0-495.rt7.284.el8 [2180997] - 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) [2186285] {CVE-2023-1079} - HID: asus: use spinlock to protect concurrent accesses (Ricardo Robaina) [2186285] {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) [2196155] {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) [2187464] {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) [2188406] {CVE-2023-2194} - prlimit: do_prlimit needs to have a speculation check (Alex Gladkov) [2196315] {CVE-2023-0458} - vmxnet3: use gro callback when UPT is enabled (Izabela Bakollari) [2183057] - r8152: Rate limit overflow messages (Jose Ignacio Tornos Martinez) [2153574] {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]- [rt] build kernel-rt-4.18.0-494.rt7.283.el8 [2180997] - 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) [2192681] {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) [2193103] {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]- [rt] build kernel-rt-4.18.0-493.rt7.282.el8 [2180997] - Revert "drm/i915: Depend on !PREEMPT_RT." (John B. Wyatt IV) [2149799] - 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) [2177375] {CVE-2023-1382} - tipc: set con sock in tipc_conn_alloc (Xin Long) [2177375] {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) [2181880] {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) [2174410] {CVE-2023-1118}- [rt] build kernel-rt-4.18.0-492.rt7.281.el8 [2180997] - 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] - Remove unused ZRTBZ variable (Lucas Zampieri)- [rt] build kernel-rt-4.18.0-491.rt7.280.el8 [2180997] - 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] - [rt] build kernel-rt-4.18.0-490.rt7.279.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-489.rt7.278.el8 [2180997] - 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) [2184957] {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]- [rt] build kernel-rt-4.18.0-488.rt7.277.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-487.rt7.276.el8 [2180997] - kernel/fork: Restore vfree_atomic in free_thread_stack() (Crystal Wood) [2159514] - 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) [2176160] {CVE-2023-1252}- [rt] build kernel-rt-4.18.0-486.rt7.275.el8 [2180997] - 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) [2165351] {CVE-2023-0386}- [rt] build kernel-rt-4.18.0-485.rt7.274.el8 [2180997] - 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) [2179825] {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) [2148405] {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) [2148409] {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)- [rt] build kernel-rt-4.18.0-484.rt7.273.el8 [2180997] - 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) [2176962] {CVE-2023-0461} - net/ulp: prevent ULP without clone op from entering the LISTEN status (Sabrina Dubroca) [2176962] {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) [2160030] {CVE-2022-2196}- [rt] build kernel-rt-4.18.0-483.rt7.272.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-482.rt7.271.el8 [2180997] - 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) [2168337] {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) [2124801] {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]- [rt] build kernel-rt-4.18.0-481.rt7.270.el8 [2180997] - 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]- [rt] build kernel-rt-4.18.0-480.rt7.269.el8 [2180997] - redhat: fix the signing failure on ppc64el on centos (Denys Vlasenko) [2179095]- [rt] build kernel-rt-4.18.0-479.rt7.268.el8 [2180997] - 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)- [rt] build kernel-rt-4.18.0-478.rt7.267.el8 [2180997] - 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/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~HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIII I I I I IIIIIIIIIIIIIIIIIII I!I"I#I$I%I&I'I(I)I*I+I,I-I.I/I0I1I2I3I4I5I6I7I8I9I:I;I<I=I>I?I@IAIBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI[I\I]I^I_I`IaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI{I|I}I~IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJ J J J J JJJJJJJJJJJJJJJJJJJ J!J"J#J$J%J&J'J(J)J*J+J,J-J.J/J0J1J2J3J4J5J6J7J8J9J:J;J<J=J>J?J@JAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ[J\J]J^J_J`JaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJ{J|J}J~JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKK K K K K KKKKKKKKKKKKKKKKKKK K!K"K#K$K%K&K'K(K)K*K+K,K-K.K/K0K1K2K3K4K5K6K7K8K9K:K;K<K=K>K?K@KAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK[K\K]K^K_K`KaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzK{K|K}K~KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLL L L L L LLLLLLLLLLLLLLLLLLL L!L"L#L$L%L&L'L(L)L*L+L,L-L.L/L0L1L2L3L4L5L6L7L8L9L:L;L<L=L>L?L@LALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL[L\L]L^L_L`LaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzL{L|L}L~LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMM M M M M MMMMMMMMMMMMMMMMMMM M!M"M#M$M%M&M'M(M)M*M+M,M-M.M/M0M1M2M3M4M5M6M7M8M9M:M;M<M=M>M?M@MAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM[M\M]M^M_M`MaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzM{M|M}M~MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNN N N N N NNNNNNNNNNNNNNNNNNN N!N"N#N$N%N&N'N(N)N*N+N,N-N.N/N0N1N2N3N4N5N6N7N8N9N:N;N<N=N>N?N@NANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN[N\N]N^N_N`NaNbNcNdNeNfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzN{N|N}N~NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN4.18.0-552.rt7.341.el84.18.0-552.rt7.341.el84.18.0-552.rt7.341.el8.x86_644.18.0-552.rt7.341.el8          !!""#$%%%&&''(())**+++,,---..//0001122233445566667788999:::;;;<<<==>>>??@@AABBCCDDEEFFGGHHHIIJJKKLLLMMNNOOPPQQRRRSSTTUUVVWWWXXYYZZZ[[\\]]^^___``aabbccddeeffggghhhiiijjkkllmnopqqrssttuuvvwvxyz{|}}}}}~~}}}}}}}}}          !!!"!#$$$%&'''(')'*+++,,-+.+/+01234555657589::;<<<=<>??@@AABACDEEFGHHIJJJKJLJMJNOPPPQPRPSPTPUVWWXWYWZ[[[[\\][^^_[`[abbbbccdbebfbgbhhiiijkiliminooooppqorosotouovwwwwwxwywzz{z|z}z~wwwwwwwwwww                                                                   !!!!!!             ""               ########                                                                                                            $$                                                                        %%%                                           &&&&&&                   ''''''  ((((            ))))))))))))    *++++++++++*,------.///////////////////////////////////////////////////////////00102033435363738090:;;<=>>?@ABCCDCECFCGCHCCIIJCKLCMCNCOCPCQCRSTTTTTUVVWXXXXXXYYYZY[\]]^^^^__`_a_b_c^d^e^f^g^hihjhkllllmmnnoooppoqqrrrssstruuuvuwwuxxuyyuzzu{{u||r}}r~~rrrrrrrrrrrrrrrrrrrrrrr       r  rrrrrrrr  r!!"""#$$#%%#&&#'''('))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H'IJ'KLKMKNKOKP#QQRQSSTSUQVVWVXVY"ZZ"[["\\"]]"^^"___``_aa_bb_cc_dd"ee"ff"gg"hh"ii"jj"kkkllkmm"n"oo"ppppppq"rr"ss"tt"uu"vv"ww"xx"yy"z"{{{||{}}"~~"""""""""""""""""""""""""""!!!rrrrrrrrrrrrrrr  r                rrrrrr  r!!!""!###$$#%%#&&#''#((!))!***++*,,!--!.../.00.11.22.3.44.55!66677!888998::8;;8<<8==8>>8??8@@8AA8BB8CCDD8EE8FF8GG8HH8II8JJ8KK8LL8MM8NN8OO8PP8QQ8RR8SS8TT8UU8VV!WWWXXWYYWZZW[W\W]]W^W__W``WaWbWcWdWeWffWgWhihjWkkWlmWnWoWpWqWrWssWtutvvtwtxtyWzW{W|W}}W~~WW!!!!!!rrrrrrrrr              ! " # $%%%&%'%(%)%***+*,%-..///0011223334455666778899:::;;:<<:==>>???@AAABACCDCEFFGGGHHIIJJJKJLLMMMNMOMPMQMRMSMTMUMVMWMXMYZZZ[\\]]]^^]_```a`b`ccd`e`f`g`h`i`j]kk]ll]mmnnoopppqrrsstttuvvwwwxyyyzz{z|z}}~z     r  !!""##$$%%&&''r((()))**)++),,)--)..(//r0r11r22233244r55r6667r88r99r::r;;;<<<==;>>>??;@@;AA;BBrCCrDDDErFFFGGFHHFIIFJJFKKFLLFMMFNNFOOFPPFQQFRRFSSFTTFUUFVVrWWWXXWYYWZZW[[W\\W]]W^^W__W``WaaWbbWccWddWeeWfWggWhhWiiWjjWkkWllWmmWnnWoorpppqqprrpsspttpupvvvwwwxxvyvzzz{{z||z}}z~~zrrrrrrrrrrrrrrrrrrrrrrrrrrrr            !!""###$$#%%#&&#''#((#))#**++,,--..//0012233445566778899::;;;<<===>??@@AAABACDDEEFFGGHHHIIHJJHKKLLMMMNNMOOPPQQRRSSTTUUVVrWWWXXXYYWZZW[[W\\r]r^^^__r```aa`bbbcc`dd`ee`ff`gg`hhriirjjjkkjljmmjnoonnnpnqjrrssrtttuutvtwwtxxtyytzzt{{t||t}t~~~~~tttttttttttttttrrrrrrrrrrrrrr           !!""#$$%%&&''(()**++,,--.//////////////////////////////0000000///.1111111111111111122222222222222222222211111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111311111.444444.55555657585559999:::;:999999<9=>999?9999999@@@9A99BC9999D9E999FFF9GH999I9JKL9M999N9995O55P5Q5RS5T55UUUVUWUUUUUUXUUYZ5[5\55]5^^_^55`5abacaadefaghgiigjkalmnlolpqlrlsltluvlwlxlylz{l|l}~llllllllllllllllllaaaaaaaaaaaaaaaaa5555555555555555555555555555555555555555555555555 5                                           55 555 55     55  5             555 ! " ! # $ % & '55 ( )55 * * + + * *55 ,555 - . / . . . . . . . . . . . 0 . . . . . . 1 1 . - 2 - - 3 - 45 55 6 6 7 7 855 9 9 9 9 : ; : < 9 9 9 9 9 9 9 9 9 = = = = 9 9 > > > 9 9 9 9 9 9 9 ? 9 9 9 @ 95555 A B C5 D5 E F555 G H G G I I J J G K G G L G G M M G N G G O O G G P P P G Q G G G R G G G G5 S55 T5 U U V5 W X W Y Z Y [ Y \ ] Y ^ Y Y _ Y ` a W b W c d55 e e f5 g g h5 i i j k j l i i m n o55 p q p r p s t p u v w5 x5 y y y y y y z z y y y y y55 {5 |5 }5 ~  ~ ~ ~ ~ ~ 5 5 55 5 55 5 5 5 5 5 5 55 55 55 5 55 5 5 55 55 55 555 5 5 555 555 55 555 55 5 55 55  555 5             5 5        5   5             5  5 5 5555 5555 !55 "5 # $ # # # % # # # # # # # & & # # # ' ' ' ' # ( # # # # ) # # # #5 * * + * * , * * - * .55 /555 0 1 2 3 4 05555 555 65 75 85 95 :5 ;555 < = = = > < < ? < < < < < @ < A B A C A D A < E F < G H < I I < J K < < L L < < M N M O M P M Q M M R M S M T U M V V W M X M Y M Z M [ M < \ < ] ] ^ < _ < ` a < < b c < d < < e < < f f g < < < h < < < i < < < j < < < k5 l55 m m n n5 o o o o o o p p o o q q o r r s s o o o o t t t t o o o o o o o o o o o o o o o o o o o o o o o u o v o o o w o x o o o o o o o o o o o o o o o o o o y o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o z z o o { { { { o o | | | } | | | | | | | | ~ | | | |   | | | | | | | | | | | | | | | | | | | | o o o o o5 5 5 555 5 55 55 5 55 5 5 55 5 5 5 5 55555 5 555 5 555 5 5 5 55 55 5 55 5 5 55 5 5 55 5 5 5 55 5 5 5 555 55 555 5 5 5 55 55 5 5 55 5         55 5    55      55   5 5 55 5 5   5  5     5    5 !5 " # # $ " % & " ' ' ( ) ' * ' ' + ' ' ' , - - . ' / 0 ' 1 ' 2 ' 3 4 ' ' 5 5 6 ' 7 ' 8 ' 9 : " ; < " = " " > " ? ? " @ " A B " C " D " E E F G H G " I " J K " L " M " " N O " P Q P R P " S " T " U V " W X " Y " " Z " [ " \ ] ^ _ \ ` " a a a a a a " " b c " " " d e f d g d d h h d d d d i d d j " " k " l m " n " o p " q q " r " " " " s " t t u t t v w " x y z { " | " } ~  " " " " " " " " " " " 55 55 5 5 555 55 55 5 5 5 5 5 55 5 5 5 5 55 5 5 55 5 55 55 55 55 55 55 5 55 55 555 5 5 5 5 55 5555 5555 55 55 55 5  55                            5   5 5 55                                 5 5 55       !5 " " # " $ " " " " % % % " " " " & ' & ( & " " ) " * " " + + " " , " - " . . . " " " " / " " " 0 1 2 " 3 4 " 5 " " 6 6 6 6 6 6 " 7 8 " " 9 : " " " ; " <5 =5 > ? ? @ @ @ @55 A A B A A C A A A55 D5 E5 F G F H I F F J J K F F L F M N M M M M M M O O O O M M M M P P P P P P P F Q Q F R R R F F F S T T T S U U U U U U U U U U U U S V S F F W W W W W W W W W X Y W W W W Z W [ [ \ [ [ [ [ W W W W ] ^ W _ W W5 ` a a a a b b b b b b b b b a a a a c c c c5 d5 e f e g e e h h e i e e e e5 j55 k k k k l m k n k o k p k q k r k s k k t k k555 u u u u u v v u w u x u y z u u { u u | u } u u ~ u u  u u u u u 5 5 5 55 555 5 5 5 5555 55 55 5555 5 55 555 5 55 5 55 5555 55 55 5 5 5 5 55555 55 55 555 55 55 5 5 5 5 55 5 5 5 55 55 5 5 5 5 55 55 5 5555 55 5 5 5 5 555 55         5                                                        5 5 5  555  5  5 5     555        5  5 ! ! " " # # ! ! $ ! !5 % % & '5 ( (5 ) ) *55 + +5 ,555 -5 . . . / /55 0 0 0 0 0 0 0 0 0 0 0 05 1 15 2 2 2 2 3 25 4 4 5 4 4 6 6 7 6 4 8 8 8 8 4 4 4 4 4 4 9 4 : 4 ; ; 4 4 <55 = =5 > > ? ? > > > > > @ > >55 A A B A A A C C A D A A E E E A F A A G A5 H55 I J K J L M J N I5 O P5 Q R Q Q S S S S S Q T Q55 U V U W X55 Y Y Y Y Z Z [ [ Y Y \ \ \ \ \ ] \ \ \ \ \ \ \ ^ \ \ Y Y _ _ Y555 ` `55 a a b5 c d d55 e e5 f f5 g5 h i h h h55 j5 k k55 l55 m555 n n n o o n p q r r r n n s t s u55 v v w x w y z {55 | } ~55   5 55 5 55 5 5 55 55 5 5555 55 55 5 5 5 55 5 55 5 5 5555 5 5 5 5 55 55 55 5 5 5 555 55 5 55 55555555555 5 5     55555555555555555555   !!!5"5#555$%&5''5(555))))))))))))))))55*+55,55---../--00-155253544546555789:77;75<<5555=======>55555?@@@55AAAAA55BC5D5EF555GGHIJG5K5LLMLLLLNLOLLPQLLRS55TUV555WX55YYZY[[\Y5]^^__555```aa`5bc55dddddd5555e555f5g5h55iji55k55ll5m5nno5pq5rrrst555uv5w5xyxxxx5zz{z|}z~zz5555555555555555555555555555555555555555555555555555555555555555555555555555555555            55 5555555555555555555  !55"##$$%""""&'"""(""""""""")""*+",-,"""""."""/"""0"""""11"""2222"""""34444544444444433367383933:333;;<33=3>?3@33AABB""""""""""""CDCCE"""""FG"""""""H"I"""""J""KKL""""M"""NN"""O"""""PPPQPPRRP""S""TTUVTWWWWXWYWZTTT[[[T\\TTTTTTTT]]T^_T```abac`d`efggeh`ijkjljmjn`opoq```rstusvswsx`yyyz{|``}~`````````````````TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT""""""""""""""""555555555555555555555555555555555    5 55 5   55555555555555555555 !""55##5$%$&&&&55'5()(*(5++,+-+.55//////00111002/5333354555555555555555545675585999:9955;;;55<=>?<@AB<CDCECFCG<<<H5IIJKJLJI5MNO5P5QQ55R5STS55U55VVVWW55X55YZY5[5\5]^5___``5aabcb55ded55ff5gg55h5i5555jkjjjljjjjjj5m5n5o5ppq5555rrrsrtr55uu5v5w5x5y555zzz{zz|}zz~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz5555555555555555555555555555555555555555555555555555555555          !"#$$$$%&'()*+,--./00123456789:;<=>5?5@@A55BBBBBBBBCB5DDED5F5G55HHIIIIIII55JKJJJJ555LL5MMM555N55O5.PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQPPPPPPPPPPPPPPPPPPPPPPPPPP..RRSTTUUUUTVVVVVVVVVVVVTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTWWWTTTTTTTTTTXXXXXXXXXX.YZY[Y\Y]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]Y^Y_____Y```````````YaYbcbbYddddYeeeeeYfffffYgYhhhhhYiiiiiiiiYjjjjjjjjjjjYkYlYmmmmmYnnnYoooooooooooooooooooooooYpppppppppppppppppppppppppppppppppppppYqYrYssssssssssssssssssssssssssssssssssssssssssssssssssssssssYttttYuuuuuuuuuuuuuYvYwwwwwYx.yyyyyyz{y.|||||||||||||.}}}}}.~~~~~~...........        ....  !!!!!!!!"#$$%%&'())))((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((**+++++++++++++++++,,,,,,,,,-------------....//01233333333333333333334444455555555555556777888889999::99999999999999999999999;;<<<<;;;;===========>?=====@@@@==AAABBBB.CCCCCCCCCCCCCC.DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD.EEFFFFFEEEEEEEGGGGGGHHHHHGIIIIIIIIIIIIIIIIGGGGGGGGGGEEEEEEEEEJJKLLLLLLMMMNNNOLPLQQRLSSLTLUULVVLWLXXLYLZZL[L\\\L]L^^L__`a````````b`c`dd`ee`f`g`h`ii`j`k`llm`n`oo`pp`q`r`s`tuuuuvvuwxyyxzzx{{x||xxx}x~~xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx                     !!!""##$$%%&&&''&((())(*(++(,,,-&..&//&000102223&444546474849&:::;:<:=:>:?:@:A:B&CCCD&EEF&GGGHGIGJGKGLGMGNGOGPGQGR&SS&TUU&VV&WWWXWYWZW[W\W]W^W_W`WaWbWccWdWeWfWgWhWiWjWkWlWmWnWoWp&qqqrqs&tt&uu&vvvwwvxxxyyxzx{x|x}x~xvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&&&&&&&        !"#$%&%'()*+,-../0123456789:;<=>?@ABBCBDEFGGHGIGJGKGLGMGNGOGPGQGRRSRTGUGVGWGXGYGZG[G\]^_`abbcddefghijklmmnopqrstuvwxyz{|}~4.18.0-552.rt7.341.el8.x86_64.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.postlinkbootMakefilecryptoMakefilekernelMakefileptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.cpubootMakefilecompressedMakefilectype.hstring.cstring.hcocoMakefiletdxMakefilecryptoMakefileentryMakefilesyscallsMakefilesyscall_32.tblsyscall_64.tblsyscallhdr.shsyscalltbl.shvdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefileincludeasmKbuilda.out-core.hacenv.hacpi.hagp.halternative.hamd-ibs.hamd_hsmp.hamd_nb.hapb_timer.hapic.hapic_flat_64.hapicdef.hapm.harch_hweight.harchrandom.hasm-offsets.hasm-prototypes.hasm.hatomic.hatomic64_32.hatomic64_64.haudit.hbarrier.hbios_ebda.hbitops.hboot.hbootparam_utils.hbug.hbugs.hcache.hcacheflush.hcacheinfo.hcalgary.hce4100.hchecksum.hchecksum_32.hchecksum_64.hclocksource.hcmdline.hcmpxchg.hcmpxchg_32.hcmpxchg_64.hcoco.hcompat.hcpu.hcpu_device_id.hcpu_entry_area.hcpufeature.hcpufeatures.hcpuid.hcpuidle_haltpoll.hcpumask.hcrash.hcryptoaes.hcamellia.hglue_helper.hserpent-avx.hserpent-sse2.htwofish.hcurrent.hdebugreg.hdelay.hdesc.hdesc_defs.hdevice.hdisabled-features.hdiv64.hdma-mapping.hdma.hdmi.hdwarf2.he820api.htypes.hedac.hefi.helf.hemergency-restart.hemulate_prefix.henclu.hentry_arch.hespfix.hexec.hexport.hextable.hfb.hfixmap.hfloppy.hfpuapi.hinternal.hregset.hsched.hsignal.htypes.hxcr.hxstate.hframe.hfsgsbase.hftrace.hfutex.hgart.hgenapic.hgeode.hhardirq.hhighmem.hhpet.hhugetlb.hhw_breakpoint.hhw_irq.hhyperv-tlfs.hhypervisor.hi8259.hia32.hia32_unistd.himr.hinat.hinat_types.hinit.hinsn-eval.hinsn.hinst.hintel-family.hintel-mid.hintel_ds.hintel_mid_vrtc.hintel_pconfig.hintel_pmc_ipc.hintel_pt.hintel_punit_ipc.hintel_scu_ipc.hintel_telemetry.hinvpcid.hio.hio_apic.hiomap.hiommu.hiosf_mbi.hipi.hirq.hirq_regs.hirq_remapping.hirq_vectors.hirq_work.hirqdomain.hirqflags.hist.hjailhouse_para.hjump_label.hkasan.hkaslr.hkbdleds.hkdebug.hkexec-bzimage64.hkexec.hkgdb.hkprobes.hkvm-x86-ops.hkvm_host.hkvm_page_track.hkvm_para.hkvm_types.hkvm_vcpu_regs.hkvmclock.hlinkage.hlivepatch.hlocal.hlocal64.hmach_timer.hmach_traps.hmath_emu.hmc146818rtc.hmce.hmcsafe_test.hmem_encrypt.hmemtype.hmicrocode.hmicrocode_amd.hmicrocode_intel.hmisc.hmmconfig.hmmu.hmmu_context.hmmx.hmmzone.hmmzone_32.hmmzone_64.hmodule.hmpspec.hmpspec_def.hmpx.hmshyperv.hmsi.hmsidef.hmsr-index.hmsr-trace.hmsr.hmtrr.hmwait.hnmi.hnops.hnospec-branch.hnuma.hnuma_32.hnumachipnumachip.hnumachip_csr.holpc.holpc_ofw.horc_lookup.horc_types.hpage.hpage_32.hpage_32_types.hpage_64.hpage_64_types.hpage_types.hparavirt.hparavirt_types.hparport.hpci-direct.hpci-functions.hpci.hpci_64.hpci_x86.hpercpu.hperf_event.hperf_event_p4.hpgalloc.hpgtable-2level.hpgtable-2level_types.hpgtable-3level.hpgtable-3level_types.hpgtable-invert.hpgtable.hpgtable_32.hpgtable_32_types.hpgtable_64.hpgtable_64_types.hpgtable_types.hpkeys.hpkru.hplatform_sst_audio.hpm-trace.hposix_types.hpreempt.hprobe_roms.hprocessor-cyrix.hprocessor-flags.hprocessor.hprom.hproto.hpti.hptrace.hpurgatory.hpvclock-abi.hpvclock.hqrwlock.hqspinlock.hqspinlock_paravirt.hrealmode.hreboot.hreboot_fixups.hrefcount.hrequired-features.hresctrl.hrio.hrmwcc.hseccomp.hsections.hsegment.hserial.hset_memory.hsetup.hsetup_arch.hsev-common.hsev.hsgx.hsharedio.hmsr.htdx.hshmparam.hsigcontext.hsigframe.hsighandling.hsignal.hsimd.hsmap.hsmp.hsparsemem.hspec-ctrl.hspecial_insns.hspinlock.hspinlock_types.hsta2x11.hstackprotector.hstacktrace.hstring.hstring_32.hstring_64.hsuspend.hsuspend_32.hsuspend_64.hsvm.hswitch_to.hsync_bitops.hsync_core.hsyscall.hsyscall_wrapper.hsyscalls.hsysfb.htce.htdx.htext-patching.hthermal.hthread_info.htime.htimer.htimex.htlb.htlbbatch.htlbflush.htopology.htracecommon.hexceptions.hfpu.hhyperv.hirq_vectors.hmpx.htrace_clock.htrap_pf.htrapnr.htraps.htsc.huaccess.huaccess_32.huaccess_64.humip.hunaligned.hunistd.hunwind.hunwind_hints.huprobes.huser.huser32.huser_32.huser_64.huvbios.huv.huv_geo.huv_hub.huv_irq.huv_mmrs.hvdsovdso.hclocksource.hgettimeofday.hprocessor.hvsyscall.hvga.hvgtod.hvirtext.hvm86.hvmware.hvmx.hvmxfeatures.hvsyscall.hvvar.hword-at-a-time.hx86_init.hxencpuid.hevents.hhypercall.hhypervisor.hinterface.hinterface_32.hinterface_64.hpage-coherent.hpage.hpci.hswiotlb-xen.htrace_types.hxor.hxor_32.hxor_64.hxor_avx.hgeneratedasmdma-contiguous.hearly_ioremap.hkmap_size.hmcs_spinlock.hmm-arch-hooks.hmmiowb.hsyscalls_32.hsyscalls_64.hunistd_32_ia32.hunistd_64_x32.huapiasmbpf_perf_event.hpoll.hsocket.hunistd_32.hunistd_64.hunistd_x32.huapiasmKbuilda.out.hamd_hsmp.hauxvec.hbitsperlong.hboot.hbootparam.hbyteorder.hdebugreg.he820.herrno.hfcntl.hhw_breakpoint.hhwcap2.hioctl.hioctls.hipcbuf.hist.hkvm.hkvm_para.hkvm_perf.hldt.hmce.hmman.hmsgbuf.hmsr.hmtrr.hparam.hperf_regs.hposix_types.hposix_types_32.hposix_types_64.hposix_types_x32.hprctl.hprocessor-flags.hptrace-abi.hptrace.hresource.hsembuf.hsetup.hsgx.hshmbuf.hsigcontext.hsigcontext32.hsiginfo.hsignal.hsockios.hstat.hstatfs.hsvm.hswab.htermbits.htermios.htypes.hucontext.hunistd.hvm86.hvmx.hvsyscall.hkernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilepatMakefilenetMakefileoprofileMakefilepciMakefileplatformMakefileatomMakefilece4100MakefileefiMakefilegeodeMakefilegoldfishMakefileintelintel-midMakefiledevice_libsMakefileintel-quarkMakefileMakefileirisMakefileolpcMakefilescx200MakefilesfiMakefilets5500MakefileuvMakefilepowerMakefilepurgatoryMakefileentry64.Spurgatory.csetup-x86_64.Sstack.SrasKconfigrealmodeMakefilermMakefiletoolsMakefilerelocs.crelocs.hrelocs_32.crelocs_64.crelocs_common.cumKconfigMakefileos-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.hac97bus.hacerwmi.hacerhdf.hacpiacpi.hac.hadxl.hapeiapei.heinj.hghes.hmemoryfailure.hpcieaer.hbattery.hbgrt.hbutton.hcmpc.hcontainer.hcppclib.hcpufreqpss.hdock.hdptf.hecdebugfs.hextlog.hfan.hffh.hfpdt.hhed.hhmat.hhotplugcpu.hioapic.hmemory.hi2copregion.hipmi.hlegacytableslookup.hlpit.hnfit.hnuma.hpcislot.hplatformprofile.hprmt.hprocessorprocessor.haggregator.hcstate.hidle.hrevoverridepossible.hsbs.hsleep.hspcrtable.hsystempowerstatessupport.htableupgrade.htad.hthermalthermal.hrel.hvideo.hwatchdog.hwmi.hadvisesyscalls.haio.halim1535wdt.halim7101wdt.hallowdevcoredump.halterastapl.halx.hamdhsmp.hiommuiommu.hv2.hmemencrypt.hnb.hnuma.hphy.hpmc.hptdma.hsfhhid.hxgbexgbe.hhaveecc.hamigapartition.hamilorfkill.hapds9802als.haperturehelpers.happlegmux.hmfifastcharge.hproperties.haqtion.haquantiaphy.harchclocksourceinit.hcpuidlehaltpoll.hdefconfig.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hsplitpmdptlock.hhasacpitableupgrade.haddpages.hcachelinesize.hccplatform.hcpurelax.hdebugvirtual.hdevmemisallowed.helfrandomize.hfastmultiplier.hfilterpgprot.hforcedmaunencrypted.hfortifysource.hgcovprofileall.hgiganticpage.hkcov.hkexecpurgatory.hmemencrypt.hmembarriersynccore.hnonoverlappingaddressspace.hpkeys.hpmemapi.hptespecial.hrefcount.hsetdirectmap.hmemory.hsgchain.hstrictkernelrwx.hmodulerwx.hsynccorebeforeusermode.hsyscallwrapper.huaccessflushcache.hmcsafe.hubsansanitizeall.hzonedevice.hhavenmisafecmpxchg.hhibernationheader.hpossible.hmayhavepcfdc.hmighthaveacpipdc.hpcparport.hserio.hmmaprndbitsbits.hmax.hmin.hcompatbitsbits.hmax.hmin.hnrgpio.hprockcoretext.hrandom.hselectmemorymodel.hsparsememdefault.henable.hstackwalk.hsupportsacpi.hatomicrmw.hdebugpagealloc.hint128.hmemoryfailure.hnumabalancing.hoptimizedinlining.hrt.huprobes.hsuspendpossible.husebuiltinbswap.hcmpxchglockref.hmemremapprot.hqueuedrwlocks.hspinlocks.huseshighvmaflags.hpguncached.hwantbatchedunmaptlbflush.hcompatipcparseversion.hdefaultbpfjit.hgeneralhugetlb.hhugepmdshare.holdcompatipc.hwantsdynamictaskstruct.hthpswap.harmgicmaxnr.hasn1.hassociativearray.hasuslaptop.hnbwmi.hwmi.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hacpi.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hathcommon.hath10kath10k.hce.hdebugfs.hpci.hath11kath11k.hdebug.hdebugfs.hpci.htracing.hath9kath9k.hahb.hbtcoexsupport.hcommoncommon.hdebug.hdebugfs.hhtc.hhw.hpci.hpcoem.hrfkill.hwow.hatl1.hatl1c.hatl1e.hatl2.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harch.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightapple.hclassdevice.hlcdsupport.hlp855x.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.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblockblock.hcompat.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootprintkdelay.hbootparamhardlockuppanicpanic.hvalue.hhotplugcpu0.hhungtaskpanicvalue.hsoftlockuppanicvalue.hbounce.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hkprobeoverride.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbrcmfmacbrcmfmac.hpcie.hprotobcdc.hmsgbuf.hsdio.husb.hbrcmsmacbrcmsmac.hleds.hbrcmutil.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.hreturnthunk.hsancovtracepc.hsanestackprotector.hsls.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hceccore.hplatformdrivers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.husednsresolver.hcfg80211cfg80211.hcrdasupport.hdefaultps.hrequiresignedregdb.husekernelregdbkeys.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.hclkdevlookup.hclkevti8253.hclocksourcevalidatelastcycle.hwatchdog.hclsu32mark.hperf.hclztab.hcmdlinekunittest.hcnic.hcommonclk.hcompaction.hcompallaptop.hcompatcompat.h32.h32bittime.hbinfmtelf.hforu64alignment.holdsigaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcounter.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hibpbentry.hibrsentry.hidleidle.hgovhaltpoll.hmenu.hisolation.hrmap.hsrso.hsupamd.hcentaur.hintel.hunretentry.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.hacomp2.haead.haead2.haesaes.hniintel.hx8664.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hx8664.hcamelliacamellia.haesniavxx8664.havx2x8664.hx8664.hcastcommon.hcast5cast5.havxx8664.hcast6cast6.havxx8664.hcbc.hccm.hcfb.hchacha20chacha20.hx8664.hchacha20poly1305.hcmac.hcrc32crc32.hpclmul.hcrc32ccrc32c.hintel.hcrct10difcrct10dif.hpclmul.hcryptd.hctr.hcts.hdeflate.hdes.hdes3edex8664.hdevccpccp.hcrypto.hdd.hchelsio.hnitroxnitrox.hcnn55xx.hpadlockpadlock.haes.hsha.hqatqat.h4xxx.hc3xxx.hc3xxxvf.hc62x.hc62xvf.hdh895xcc.hdh895xccvf.hspccp.hpsp.hdh.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hecdh.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghashghash.hclmulniintel.hgluehelperx86.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305poly1305.hx8664.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpentserpent.havxx8664.havx2x8664.hsse2x8664.hsha1sha1.hssse3.hsha256sha256.hssse3.hsha3.hsha512sha512.hssse3.hsimd.htea.htest.htgr192.htwofishtwofish.havxx8664.hcommon.hx866464.h3way.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcyclades.hcypressfirmware.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdca.hdcachewordaccess.hdcb.hdcdbas.hdeaoc.hdebugbootparams.hbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hpreempt.hsectionmismatch.hshirq.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hiodelaytype.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdeferredstructpageinit.hdelllaptop.hrbtn.hrbu.hsmbiossmbios.hwmi.hsmo8800.hwmiwmi.haio.hdescriptor.hled.hsysman.hdetecthungtask.hdevcoredump.hdeviceprivate.hdevmem.hdevport.hdevtmpfsdevtmpfs.hmount.hdimlib.hdl2k.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaacpi.hcoherentpool.hengineengine.hraid.hops.hsharedbuffer.hvirtualchannels.hdmadevices.hdmartable.hdmatest.hdmidmi.hscanmachinenonefifallback.hsysfs.hdmiid.hdnet.hdnotify.hdnsresolver.hdoublefault.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdptfpower.hdql.hdrmdrm.hamdacp.hdcdc.hdcn.hamdgpuamdgpu.huserptr.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hgma500.hi2cch7006.hsil164.hi915i915.hcaptureerror.hcompresserror.hfencetimeout.hforceprobe.hgvtgvt.hkvmgt.hheartbeatinterval.hmaxrequestbusywait.hpreempttimeouttimeout.hcompute.hrequesttimeout.hstoptimeout.htimesliceduration.huserfaultautosuspend.huserptr.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200mgag200.hioburstworkaround.hmipidsi.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvboxvideo.hvirtiogpu.hvkms.hvmwgfx.hvramhelper.hdstcache.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.hpci.hdwmacintel.hdynamicdebug.hftraceftrace.hwithdirectcalls.hregs.hmemorylayout.hphysicalmask.hsigframe.he1000.he1000ee1000e.hhwts.hearlyprintkprintk.hdbgp.hefi.husbusb.hxdbc.hedacedac.hamd64.hatomicscrub.hdecodemce.he752x.hghes.hi10nm.hi3000.hi3200.hi5000.hi5100.hi5400.hi7300.hi7core.hi82975x.hie31200.higen6.hlegacysysfs.hpnd2.hsbridge.hskx.hsupport.hx38.hedd.heeepclaptop.hwmi.heeprom93cx6.hlegacy.hmax6875.hefiefi.hdevpathparser.hdxememattributes.hesrt.hmixed.hpartition.hrci2table.hruntimemap.hwrappers.hsoftreserve.hstub.hvarsvars.hpstorepstore.hdefaultdisable.hefivarfs.helfcore.helfcore.henaethernet.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.henic.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hevmevm.hattrfsuuid.hexclusivesystemram.hexpert.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.hf71808ewdt.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbootvesasupport.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hefi.hnotify.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hvesa.hfcappid.hfcoefnic.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfirewirefirewire.hnet.hohci.hsbp2.hfirmwarememmap.hfixearlyconmem.hfixedphy.hfm10k.hfont8x16.h8x8.hsupport.hfortifysource.hframewarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdax.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfujitsues.hlaptop.htablet.hfunctionerrorinjection.hgraphtracer.hprofiler.htracer.hfusedax.hfs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwattrclass.hcfgsysfs.hcsdsp.hloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.hbugbug.hrelativepointers.hcalibratedelay.hclockeventsclockevents.hbroadcast.hminadjust.hcmosupdate.hcpucpu.hautoprobe.hvulnerabilities.hearlyioremap.hfindfirstbit.hgettimeofday.hhweight.hiomap.hirqeffectiveaffmask.hinjection.hmatrixallocator.hmigration.hprobe.hreservationmode.hshow.hisadma.hmsiirqirq.hdomain.hnetutils.hpciiomap.hpendingirq.hpinconf.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hvdsotimens.hgeneve.hgfs2fsfs.hlockingdlm.hgigasetbase.hcapi.hm101.hm105.hglob.hgpioacpi.hamdpt.hgeneric.hich.hsysfs.hviperboard.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hgve.hhaltpollcpuidle.hhangchecktimer.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhardlockupchecktimestamp.hdetectordetector.hperf.hhasdma.hiomem.hioportmap.hhashkunittest.hhaveacpiapeiapei.hnmi.halignedstructpage.harchauditsyscall.hcompatmmapbases.hhugevmap.hkasankasan.hvmalloc.hkcsan.hkgdb.hmmaprndbits.hcompatbits.hnodedevgroup.hseccompfilter.hsoftdirty.hthreadstructwhitelist.htracehook.htransparenthugepagehugepage.hpud.huserfaultfdwp.hvmapstack.hwithinstackframes.hbootmeminfonode.hcrecordmcount.hclkclk.hprepare.hcmpxchgdouble.hlocal.hcontexttracking.hcopythreadtls.hdebugkmemleak.hdmacontiguous.hdynamicftraceftrace.hwithdirectcalls.hregs.hebpfjit.hefficientunalignedaccess.hexitthread.hfastgup.hfentry.hftracemcountrecord.hfunctionerrorinjection.hgraphtracer.htracer.hgccplugins.hgenericvdso.hhardenedusercopyallocator.hhardlockupdetectorperf.hhwbreakpoint.hide.hinteltxt.hioremapprot.hirqexitonirqstack.htimeaccounting.hkernelbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hkprobeskprobes.honftrace.hkretprobes.hkvmkvm.hcpurelaxintercept.hdirtyring.heventfd.hirqbypass.hrouting.hirqchip.hirqfd.hmsi.hnopoll.hpfncache.hpmnotifier.hlivepatch.hmemorypresent.hmixedbreakpointsregs.hmmiotracesupport.hmodarchspecific.hmovepmd.hpud.hnetdsa.hnmi.hoprofile.hoptprobes.hpcspkrplatform.hperfeventsevents.hnmi.hregs.huserstackdump.hposixcputimerstaskwork.hpreemptlazy.hregsandstackaccessapi.hreliablestacktrace.hrseq.hschedavgirq.hsetuppercpuarea.hstackvalidation.hstackprotector.hsyscalltracepoints.huid16.hunstableschedclock.huserreturnnotifier.hvirtcpuaccountinggen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmihdmi.hlpeaudio.hheaderscheck.hhibernatecallbacks.hhibernation.hhidhid.ha4tech.hacrux.halps.happle.happleir.hasus.haureal.hbatterystrength.hbelkin.hbetopff.hcherry.hchicony.hcmedia.hcorsair.hcypress.hdragonrise.helan.helecom.helo.hezkey.hgembird.hgeneric.hgfrm.hgreenasia.hgt683r.hgyration.hholtek.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlenovo.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpenmount.hpetalynx.hpicolcd.hpid.hplantronics.hprimax.hprodikeys.hrmi.hroccat.hsaitek.hsamsung.hsensoraccel3d.hals.hcustomsensor.hdevicerotation.hgyro3d.hhub.hhumidity.hiiocommon.htrigger.hinclinometer3d.hmagnetometer3d.hpress.hprox.htemp.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hxinmo.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhinic.hhisax163.h1tr6.havma1pcmcia.hbkma4t.hdiehldiva.helsa.henternowpci.heuro.hfritzpcipnp.hfritzpci.hgazel.hhfcpci.hsx.hhfc4s8s.hmaxcards.hnetjetnetjet.hu.hni1.hniccy.hnokeypad.hllc.hsendcomplete.hs0box.hsctquadro.hsedlbauer.hst5481.htelespci.hw6692.hhisttriggers.hhmemreporting.hhmmmirror.hhotplugcpu.hpcipci.hacpiacpi.hibm.hpcie.hshpc.hsmt.hhpaccel.hilo.hwatchdog.hwireless.hwmi.hhpethpet.hemulatertc.hmmap.htimer.hhpwdtnmidecoding.hhsaamdamd.hsvm.hhsudma.hhugetlbpage.hhugetlbfs.hhvcdriver.hhwconsole.hrandomrandom.hamd.hintel.htimeriomem.htpm.hvia.hvirtio.hhwlattracer.hhwmonhwmon.hvid.hhwpoisoninject.hhwspinlock.hhypervisorguest.hhysdnhysdn.hcapi.hhzhz.h1000.hi2ci2c.halgobit.halgopca.hamd756amd756.hs4882.hamd8111.hboardinfo.hchardev.hcompat.hdesignwarebaytrail.hcore.hplatform.hdiolanu2c.hhelperauto.hhidhid.hacpi.hcore.hi801.hisch.hismt.hmlxcpld.hmuxmux.hmlxcpld.hnforce2nforce2.hs4985.hparportparport.hlight.hpcaplatform.hpiix4.hscmi.hsimtec.hsis96x.hsmbus.hstub.htinyusb.hvia.hviapro.hviperboard.hi40ei40e.hdcb.hi40evf.hi6300esbwdt.hi8253lock.hi8k.hia32emulation.hfeatctl.hiavf.hib700wdt.hibmasr.hiceice.hhwts.hswitchdev.hicplusphy.hideapadlaptop.hidlepagetracking.hie6xxwdt.hieee802154ieee802154.h6lowpan.hdrivers.hfakelb.hsocket.hifb.hifcvf.higbigb.hdca.hhwmon.higbvf.higc.hiioiio.hbuffer.hconsumerspertrigger.hkfifobuf.htrigger.htriggeredbuffer.hikheaders.hillegalpointervalue.himaima.happraiseappraise.hbootparam.hmodsig.harchpolicy.hdefaulthashhash.hsha256.htemplate.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.hefa.hhfi1.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hopavnic.hqedr.hrdmavt.hsrp.hsrpt.huseraccess.hmad.hmem.husnic.hvirtdma.hvmwarepvrdma.hinitenvarglimit.hinitramfssource.hinotifyuser.hinputinput.hapanel.hatiremote2.hatlasbtns.hcm109.hevdev.hffmemless.hgp2a.hgpiorotaryencoder.hjoydev.hkeyboard.hkeyspanremote.hleds.hmisc.hmouse.hmousedevmousedev.hscreenx.hy.hpcspkr.hpolldev.hpowermate.hsparsekmap.htablet.htouchscreen.huinput.hyealink.hinstructiondecoder.hint340xthermal.hintegrityintegrity.hasymmetrickeys.haudit.hplatformkeyring.hsignature.htrustedkeyring.hintelgtt.hhfithermal.hhidevent.hidle.hidma64.hidxdidxd.hbus.hperfmon.hsvm.hifs.hioatdma.hiommuiommu.hfloppywa.hperfevents.hsvm.hips.hishhid.hishtpeclite.hmeimei.hme.hwdt.hoaktrail.hpchthermal.hpmccore.hpmtclass.hcrashlog.htelemetry.hpowerclamp.hqep.hraplrapl.hcore.hrst.hsdsi.hsocdtsiosfcore.hspeedselectinterface.htdxguest.hthth.hacpi.hgth.hmsu.hpci.hpti.hsth.hturbomax3.htxt.huncorefreqcontrol.hvbtn.hvsec.hwmithunderbolt.hxwayphy.hintervaltree.hiodelay0x80.htype0x80.h0xed.hnone.hudelay.hioasid.hiommuapi.hdefaultpassthrough.hdma.hiopgtable.hiova.hsupport.hsva.hionic.hioschedbfq.hiosfmbi.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.hdmidecode.hhandler.hpanicevent.hstring.hplatdata.hpoweroff.hsi.hssif.hwatchdog.hipppfilter.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirene.hfintek.higuana.himonimon.hdecoder.hraw.hitecir.hjvcdecoder.hmcekbddecoder.hmceusb.hnecdecoder.hnuvoton.hrc5decoder.hrc6decoder.hredrat3.hsanyodecoder.hserialserial.htransmitter.hsir.hsonydecoder.hstreamzap.httusbir.hwinbondcir.hirqbypassmanager.hdomaindomain.hhierarchy.hforcedthreading.hmsiiommu.hpoll.hremap.hwork.hisadmaapi.hiscsibootsysfs.hibftibft.hfind.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.hit87wdt.hit8712fwdt.hitcovendorsupport.hwdt.hiwldvm.hiwlmvm.hiwlwifiiwlwifi.hdebugfs.hleds.hopmodemodular.hixgbeixgbe.hdca.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hkallsymskallsyms.habsolutepercpu.hall.hbaserelative.hkarmapartition.hkernelkernel.releasegzip.hkernfs.hkexeckexec.hbzimageverifysig.hcore.hfile.hjump.hsig.hkeyboardatkbd.hkeyskeys.hcompat.hkprobeevents.hkprobeskprobes.honftrace.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.hamdamd.hsev.hasyncpf.hcompat.hexternalwritetracking.hgenericdirtylogreadprotect.hguest.hintel.hmmio.hvfio.hwerror.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclass.hclevomail.hintelss4200.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxcpld.hmlxreg.htriggeraudio.hbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlegacyvsyscallemulate.hlibcrc32c.hlibfc.hlibfcoe.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlirc.hlistkunittest.hlivepatch.hllc.hloaduefikeys.hlocalversion.hlockdebuggingsupport.hdowninefisecureboot.hkernel.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlpcich.hsch.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacemumousebtn.hpartition.hmac80211mac80211.hdebugfs.hhasrc.hhwsim.hleds.hrcdefaultdefault.hminstrel.hminstrel.hstahashmaxsize.hmac802154.hmachzwdt.hmacintoshdrivers.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmailbox.hmantiscore.hmappingdirtyhelpers.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmaxsmp.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hmsccmiim.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.hmellanoxplatform.hmemsoftdirty.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.hrealtekpci.husb.htifmms.hmessagelogleveldefault.hmfdcore.hintellpsslpss.hacpi.hpci.hsm501sm501.hgpio.hviperboard.hvx855.hmhibusbus.hpcigeneric.hmicrelks8995ma.hphy.hmicrochipphy.ht1phy.hmicrocodemicrocode.hamd.hintel.hmicrosemiphy.hmigration.hmii.hminixsubpartition.hmiscfilesystems.hrtsxrtsx.hpci.husb.hmisdnmisdn.havmfritz.hdsp.hhfcmulti.hhfcpci.hhfcusb.hinfineon.hipac.hisar.hl1oip.hnetjet.hspeedfax.hw6692.hmlxplatform.hwdt.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.hmlxreghotplug.hio.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.hblockblock.hminors.hcb710.hcqhci.hrealtekpci.husb.hricohmmc.hsdhcisdhci.hacpi.hpci.hpltfm.htifmsd.hushc.hviasdmmc.hvub300.hmmconffam10h.hmmummu.hgathermergevmas.hrcutablefree.htablefree.hnotifier.hmodifyldtsyscall.hmoduleforceload.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.hlifebook.hlogips2pp.hsentelic.hsmbus.hsynapticssynaptics.hsmbus.htrackpoint.hvmmouse.hserial.hsynapticsi2c.husb.hvsxxxaa.hmpilib.hmplsmpls.hiptunnel.hrouting.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsilaptop.hwmi.hmsproblock.hmt76connaclib.hcore.hleds.husb.hmt7601u.hmt76x0common.hmt76x02lib.husb.hmt76x0u.hmt76x2common.hmt76x2u.hmt7921common.hmt7921e.hmtdmtd.hblkdevs.hblock.hcfii1.hi2.hmapbankwidth1.h2.h4.hubiubi.hbeblimit.hwlthreshold.hmtrrmtrr.hsanitizersanitizer.henabledefault.hspareregnrdefault.hmultiuser.hmutexspinonowner.hmwifiexmwifiex.hpcie.hsdio.husb.hmxmwmi.hmyri10gemyri10ge.hdca.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hpfn.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hpagefirstchunk.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.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.hamd.haquantia.hatheros.hbroadcom.hbrocade.hcavium.hchelsio.hcisco.hdec.hdlink.hemulex.hgoogle.hhuawei.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hrealtek.hrocker.hsolarflare.hstmicro.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.hnitroenclaves.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnohzhz.hcommon.hfull.hnodesshift.hnoptracer.hnouveaudebugdebug.hdefault.hnozomi.hnrcpuscpus.hdefault.hrangebegin.hend.hntbntb.hamd.hintel.hmsi.hnetdev.hperf.hpingpong.htool.htransport.hnumanuma.hemu.hkeepmeminfo.hnvtco.hnvdimmdax.hkeys.hpfn.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hnvram.hnvswsn2201.hobjagg.hoidregistry.holdsigsuspend3.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hoprofilenmitimer.hoptimizeinlining.hoptprobes.hosfpartition.hosnoisetracer.houtputformat.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.howner.hpoisoning.hpool.hreporting.htableisolation.hpanasoniclaptop.hpaniconoopsoops.hvalue.htimeout.hparavirtparavirt.hclock.hspinlocks.htimeaccounting.hparman.hparportparport.h1284.hnotpc.hpc.hserial.hpartitionadvanced.hpcc.hpccard.hpcipci.hats.hdirect.hdomains.hiov.hlabel.hlocklessconfig.hmmconfig.hmsimsi.hirqdomain.hpasid.hpfstub.hpri.hquirks.hstub.hpciebusdefault.hdpc.hecrc.hedr.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcsxpcs.hpcspkrplatform.hperfeventsevents.hamdbrs.hpower.huncore.hintelcstate.hrapl.huncore.hpersistentkeyrings.hpgtablelevels.hphylib.hphylink.hphysaddrt64bit.hphysicalalign.hstart.hpidns.hpinconf.hpinctrlpinctrl.halderlake.hamd.hbaytrail.hbroxton.hcannonlake.hcedarfork.hdenverton.helkhartlake.hemmitsburg.hgeminilake.hicelake.hintel.hlewisburg.hmeteorlake.hsunrisepoint.htigerlake.hpinmux.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hclk.hdebug.hgenericdomainsdomains.hsleep.hsleepsleep.hdebug.hsmp.hstdpartition.hpmbus.hpmcatom.hpmicopregion.hpnfsblock.hfilelayout.hflexfilelayout.hpnp.hpnpacpi.hposixcputimerstaskwork.hmqueuemqueue.hsysctl.htimers.hpowerreset.hsupply.hpowercap.hppdev.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hparport.hpptp.hpreemptcount.hlazy.hnotifiers.hrcu.hrt.hpreemption.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hcpuresctrl.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hthermalmmiorapl.hvmcorevmcore.hdevicedump.hprofiling.hprovideohci1394dmainit.hpsample.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clockclock.hkvm.hvmw.hpvpanic.hpwmpwm.hdwc.hlpsslpss.hpci.hplatform.hsysfs.hqcomqmihelpers.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqla3xxx.hqrtrqrtr.hmhi.hqsemiphy.hqueuedspinlocks.hquotaquota.hnetlinkinterface.htree.hquotactlquotactl.hcompat.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hrandomizebase.hmemorymemory.hphysicalpadding.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hmap.hrcuboostboost.hdelay.hcpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hregmapregmap.hi2c.hirq.hsoundwiresoundwire.hmbq.hspi.hrelay.hrelocatable.hrenesasphy.hresetcontroller.hresourcekunittest.hrethunk.hretpoline.hrfkillrfkill.hinput.hleds.hrfsaccel.hrheldifferences.hringbufferbuffer.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hspi.hrockchipphy.hrocker.hrpcsecgsskrb5.hrps.hrseq.hrtmutexes.hrt2800liblib.hmmio.hrt2800pcirt2800pci.hrt3290.hrt33xx.hrt35xx.hrt53xx.hrt2800usbrt2800usb.hrt33xx.hrt3573.hrt35xx.hrt53xx.hrt55xx.hunknown.hrt2x00rt2x00.hliblib.hcrypto.hdebugfs.hfirmware.hleds.hmmio.hpci.husb.hrtcclass.hdrvbq32k.hbq4802.hcmos.hds1286.hds1307.hds1374.hds1511.hds1553.hds1672.hds1742.hds2404.hds3232ds3232.hhwmon.hem3027.hfm3130.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm48t35.hm48t59.hmax6900.hmsm6242.hpcf8523.hpcf8563.hpcf8583.hrp5c01.hrs5c372.hrv3029c2.hrx4581.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hmc146818lib.hnvmem.hsystohcsystohc.hdevice.hrtlcards.hrtl8188ee.hrtl8192ccommon.hrtl8192ce.hrtl8192cu.hrtl8192de.hrtl8192ee.hrtl8192se.hrtl8723common.hrtl8723ae.hrtl8723be.hrtl8821ae.hrtl8xxxu.hrtlbtcoexist.hrtlwifirtlwifi.hpci.husb.hrtw88rtw88.h8822b.h8822be.h8822c.h8822ce.hcore.hpci.hrtw89rtw89.h8852a.h8852ae.hcore.hpci.hruntimetestingmenu.hrwsemspinonowner.hsamplevfiomdevmtty.hsamples.hsamsunglaptop.hq10.hsataahciahci.hplatform.hhost.hmobilelpmpolicy.hpmp.hsbcfitpc2watchdog.hsbitmap.hscftorturetest.hschedautogroup.hcluster.hdebug.hhrtick.hinfo.hmcmc.hprio.homitframepointer.hsmt.htracer.hschedstats.hscsiscsi.haacraid.hbnx2iscsi.hbnx2xfcoe.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhpsa.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.hsensorsabituguru.habituguru3.hacpipower.had7414.had7418.hadm1021.hadm1025.hadm1026.hadm1029.hadm1031.hadm1275.hadm9240.hads1015.hads7828.hadt7410.hadt7411.hadt7462.hadt7470.hadt7475.hadt7x10.hamc6821.hamdenergy.hapds990x.happlesmc.hasb100.hasc7621.hatk0110.hatxp1.hbh1770.hcoretemp.hdellsmm.hdme1737.hds1621.hds620.hemc1403.hemc6w201.hf71805f.hf71882fg.hf75375s.hfam15hpower.hfschmd.hg760a.hgl518sm.hgl520sm.hhdaps.hi5500.hi5kamb.hibmaem.hibmpex.hina209.hina2xx.hit87.hjc42.hk10temp.hk8temp.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.hmlxregfan.hnct6775.hntcthermistor.hpc87360.hpc87427.hpcf8591.hpmbus.hsch5627.hsch5636.hsch56xxcommon.hsht15.hsht21.hsis5595.hsmsc47b397.hsmsc47m1.hsmsc47m192.hthmc50.htmp102.htmp401.htmp421.htsl2550.hucd9000.hucd9200.hviacputemp.hvia686a.hvt1211.hvt8231.hw83627ehf.hw83627hf.hw83781d.hw83791d.hw83792d.hw83793.hw83795.hw83l785ts.hw83l786ng.hzl6100.hserial82508250.hconsole.hdma.hdw.hdwlib.hexar.hextended.hlpss.hmanyports.hmid.hnruarts.hpci.hpnp.hrsa.hruntimeuarts.hshareirq.harcarc.hnrports.hcorecore.hconsole.hearlycon.hjsm.hmultiinstantiate.hnonstandard.hserioserio.halteraps2.harcps2.hi8042.hlibps2.hraw.hserport.hsevguest.hsfcsfc.hmcdilogging.hmon.hmtd.hsienasiena.hmcdilogging.hmon.hmtd.hsriov.hsriov.hsfi.hsgpool.hsgetmasksyscall.hsgigru.hioc4.hpartition.hxp.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignature.hsignedpefileverification.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hsls.hslubslub.hdebug.hkunittest.hsmp.hsmssdiodrv.hsianomdtv.hrc.husbdrv.hsmscphy.hsch311xwdt.hsndsnd.hac97codec.hpowersavesave.hdefault.had1889.hali5451.haloop.hamdacpconfig.hasihpi.hatiixpatiixp.hmodem.hau8810.hau8820.hau8830.hbcd2000.hbebob.hbt87x.hca0106.hcmipci.hcompressoffload.hcs46xxcs46xx.hnewdsp.hctlfastlookup.hled.hctxfi.hdarla20.hdarla24.hdice.hdmasgbuf.hdrivers.hdummy.hdynamicminors.hecho3g.hemu10k1emu10k1.hseq.hemu10k1x.hens1370.hens1371.hes1968es1968.hinput.hradio.hfireface.hfirewirefirewire.hdigi00x.hlib.hmotu.htascam.hfireworks.hgina20.hgina24.hhdahda.hcodecanalog.hca0110.hca0132ca0132.hdsp.hcirrus.hcmedia.hconexant.hcs8409.hhdmi.hrealtek.hsi3054.hsigmatel.hvia.hcomponent.hcore.hcsdspcontrols.hdsploader.hextcore.hgenericgeneric.hleds.hhwdep.hi915.hinputbeepbeep.hmode.hintel.hpatchloader.hpowersavedefault.hpreallocsize.hreconfig.hscodeccs35l41cs35l41.hi2c.hspi.hhdsp.hhdspm.hhrtimer.hhwdep.hice1712.hice1724.hindigo.hindigodj.hindigodjx.hindigoio.hindigoiox.hinteldspconfig.hnhlt.hsoundwireacpi.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.held.htimer.hpcsp.hpcxhr.hprocfs.hrawmidi.hrme32.hrme96.hrme9652.hseqdevice.hdummy.hhrtimerdefault.hmidimidi.hemul.hevent.hvirmidi.hsequencersequencer.hoss.hsocsoc.hacpiacpi.hintelmatch.hamdacp5x.hacp6x.hrenoirrenoir.hmach.hvangoghmach.hycmach.hcompress.hcs35l41cs35l41.hi2c.hlib.hspi.hcs42l42core.hsdw.hcx2072x.hda7213.hda7219.hdmic.hes8316.hes8326.hhda.hhdachda.hhdmi.hi2candspi.hintelapl.havs.hbdwrt5650mach.hrt5677mach.hbroadwellmach.hbxtda7219max98357acommon.hmach.hrt298mach.hbytchtcx2072xmach.hda7213mach.hes8316mach.hnocodecmach.hbytcrrt5640mach.hrt5651mach.hcatpt.hcfl.hchtbswmax98090timach.hnau8824mach.hrt5645mach.hrt5672mach.hcmlh.hlplp.hda7219max98357amach.hcnl.hda7219max98357ageneric.hehlrt5660mach.hglkglk.hda7219max98357amach.hrt5682max98357amach.hhaswellmach.hhdadspcommon.hkblkbl.hda7219max98357amach.hmax98927mach.hrt5660mach.hrt5663max98927mach.hrt5514max98927mach.hmach.hsklskl.hhdadspgenericmach.hnau88l25max98357amach.hssm4567mach.hrt286mach.hskylakeskylake.hcommon.hfamily.hsspclk.hsofcirruscommon.hcmlrt1011rt5682mach.hda7219max98373mach.hes8336mach.hmaximcommon.hnau8825mach.hpcm512xmach.hrealtekcommon.hrt5682mach.hsspampmach.hwm8804mach.hsoundwiresofmach.hsstsst.htoplevel.huserfriendlylongnames.hmax98090.hmax98357a.hmax98363.hmax98373max98373.hi2c.hsdw.hmax98390.hmax98927.hnau8315.hnau8821.hnau8824.hnau8825.hpcm512xpcm512x.hi2c.hrl6231.hrl6347a.hrt1011.hrt1015.hrt1015p.hrt1308rt1308.hsdw.hrt1316sdw.hrt1318sdw.hrt286.hrt298.hrt5514rt5514.hspi.hrt5640.hrt5645.hrt5651.hrt5660.hrt5663.hrt5670.hrt5677rt5677.hspi.hrt5682rt5682.hi2c.hsdw.hrt5682s.hrt700rt700.hsdw.hrt711rt711.hsdcasdw.hsdw.hrt712sdcadmicsdw.hsdw.hrt715rt715.hsdcasdw.hsdw.hsdwmockup.hsofsof.hacpiacpi.hdev.halderlake.hamdcommon.hrembrandt.hrenoir.htoplevel.hapollolake.hbaytrail.hbroadwell.hcannonlake.hclient.hcoffeelake.hcometlake.hdebugprobes.helkhartlake.hgeminilake.hhdahda.haudiocodec.hcommon.hlinklink.hbaseline.hmlink.hprobes.hicelake.hintelapl.hatomhifiep.hcnl.hcommon.hhifiepipc.hicl.hipc4.hmtl.hsoundwiresoundwire.hlinkbaseline.htgl.htoplevel.hipc3.hjasperlake.hmerrifield.hmeteorlake.hpcipci.hdev.hprobeworkqueue.htigerlake.htoplevel.hxtensa.hssm4567.htopologytopology.hkunittest.hts3a227e.hutilskunittest.hwmadsp.hwm8804wm8804.hi2c.hsstatomhifi2platformplatform.hacpi.hsynthemux.htimer.htrident.husbusb.h6fire.haudio.hcaiaqcaiaq.hinput.hhiface.hline6.hpod.hpodhd.htoneport.hua101.hus122l.husx2y.hvariax.hverboseprocfs.hvia82xxvia82xx.hmodem.hvirmidi.hvirtio.hvirtuoso.hvmaster.hvxlib.hvx222.hx86.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsolarisx86partition.hsonyff.hlaptop.hsonypicompat.hsoundsound.hosscorecore.hpreclaim.hsoundwiresoundwire.hamd.hcadence.hgenericallocation.hintel.hsp5100tco.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hspeculationmitigations.hspispi.hamd.hmaster.hpxa2xxpxa2xx.hpci.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hvalidation.hstackdepot.hstackinitkunittest.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstmstm.hdummy.hprotobasic.hsyst.hsourceconsole.hftrace.hheartbeat.hstmmaceth.hstp.hstreamparser.hstrictdevmem.hkernelrwx.hmodulerwx.hstripasmsyms.hsunpartition.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinksynclink.hgt.hsynclinkmp.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemblacklisthashlist.hkeyring.hdataverification.htrustedkeyring.hkeys.hsysvipcsysvipc.hcompat.hsysctl.htabletserialwacom4.husbacecad.haiptek.hgtco.hkbtab.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcurcu.hgeneric.hrudercu.htracercu.htaskstats.htcgatmel.hcrb.hinfineon.hnsc.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.htdxguestdriver.htelclock.hteraneticsphy.htestbpf.hkstrtox.hlistsort.hlivepatch.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovbangbang.hfairshare.hstepwise.huserspace.hhwmon.hnetlink.hwritabletrips.hthinkpadacpiacpi.halsasupport.hhotkeypoll.hvideo.hlmi.hthreadinfointask.htickoneshot.htifm7xx1.hcore.htigon3tigon3.hhwmon.htimekunittest.hns.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htopstarlaptop.htorturetest.htoshibabtrfkill.htouchscreenelo.hproperties.hwacomi2c.hw8001.htraceclock.hirqflagsnmisupport.hsupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htreercu.hsrcu.htristate.conftrustedkeys.httpcieeprom.htty.htun.htypectypec.hdpaltmode.hfusb302.hhd3ss3220.hmuxpi3usb30532.hrt1711h.hstusb160x.htcpci.htcpm.htps6598x.hucsi.hucs2string.hucsiacpi.hudffs.hueficpercper.hx86.huhid.huid16.huiouio.haec.hcif.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunixwaredisklabel.hunwinderorc.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hcommon.hconngpio.hcxacru.hdefaultpersist.hehcihcd.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hfewinitretries.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.hledtrig.hledstriggerusbport.hlegotower.hm5602.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hhuaweicdcncm.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hzaurus.hohcihcdhcd.hpci.hlittleendian.hpci.hpegasus.hprinter.hpulse8cec.hpwcpwc.hinputevdev.hrainshadowcec.hroleswitch.hrolesintelxhci.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.hisd200.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hstv06xx.hsupport.htmc.huas.hueagleatm.huhcihcd.husbnet.huss720.hvideoclassclass.hinputevdev.hvl600.hwdm.hwusbwusb.hcbaf.hxhcidbgcap.hhcd.hpci.hplatform.hxusbatm.hzr364xx.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.hreturnnotifier.hstacktracesupport.huserfaultfd.hutsns.huvmmtimer.hsysfs.huvccommon.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvfatfs.hvfiovfio.hiommutype1.hmdevmdev.hdevice.hnoiommu.hpcipci.hintx.hmmap.hvirqfd.hvgaarbarb.hmaxgpus.hconsole.hswitcheroo.hvhostvhost.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hviawdt.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.htobus.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmem.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvmappfn.hstack.hvmd.hvmwareballoon.hpvscsi.hvmcivmci.hvsockets.hvmxnet3.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hw83627hfwdt.hw83877fwdt.hw83977fwdt.hwan.hwantdevcoredump.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hsysfs.hwdatwdt.hwdtpci.hwireless.hwlanwlan.hvendorath.hbroadcom.hintel.hmarvell.hmediatek.hquantenna.hralink.hrealtek.hwmibmof.hx509certificateparser.hx86x86.h16bit.h5level.h6464.hacpinuma.hsmp.hacpicpufreqcpufreq.hcpb.hamdfreqsensitivity.hplatformdevice.hpstatepstate.hdefaultmode.hcheckbioscorruption.hcmov.hcmpxchg64.hcpuresctrl.hcpuid.hdebugctlmsr.hdecoderselftest.hdirectgbpages.hespfix64.hextendedplatform.hfeaturenames.hhvcallbackvector.hintellpss.hmemoryprotectionkeys.hpstate.htsxmodeoff.humip.hinternodecacheshift.hioapic.hl1cacheshift.hlocalapic.hmcemce.hamd.hinject.hintel.hthreshold.hmceloglegacy.hmemencrypt.hminimumcpufamily.hmpparse.hmsr.hneedrelocs.hp4clockmod.hpat.hpkgtempthermal.hplatformdevices.hdriversintel.hpmtimer.hpmemlegacylegacy.hdevice.hpowernowk8.hrerouteforbrokenbootirqs.hsgxsgx.hkvm.hsmap.hspeedsteplib.hsupportsmemoryfailure.hthermalvector.htsc.huv.hvmxfeaturenames.hvsyscallemulation.hx2apic.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxilinxgmii2rgmii.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_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.hnet_seq_lock.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_configdtc-lexer.ldtc-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.csrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.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-kernelrecordmcountrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefileobjtoolpciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.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.rt7.341.el8.x86_64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/alpha/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/plat-eznps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/plat-sim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/boot/bootp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-actions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-alpine//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-artpec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-at91//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-axxia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-berlin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-davinci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-dove//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-efm32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-exynos//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-gemini//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-highbank//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-hisi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-integrator//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-keystone//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-mmp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-moxart//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-mxs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-netx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-npcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-nspire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-omap1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-omap2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-prima2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-pxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-realview//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-rpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-spear//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-sti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-stm32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-tango//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-u300//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-ux500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-versatile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-zx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mach-zynq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/nwfpe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/plat-iop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/plat-omap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/plat-orion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/plat-pxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/plat-samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/plat-versatile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/probes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/vfp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/hyperv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/arm64/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/c6x/platforms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/h8300/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/hexagon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/hexagon/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/hexagon/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/hexagon/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/dig//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/hp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/hp/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/hp/sim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/sn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/sn/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/uv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/68000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/amiga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/apollo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/atari//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/bvme6000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/coldfire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/fpsp040//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/hp300//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/mac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/mvme147//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/mvme16x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/q40//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/sun3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/sun3x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/microblaze/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/alchemy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/alchemy/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/ar7//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/ath25//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/ath79//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/bcm47xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/bcm63xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/bmips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/boot/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/cobalt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/dec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/dec/prom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/emma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/emma/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/emma/markeins//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/fw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/fw/arc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/fw/cfe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/fw/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/fw/sni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/jazz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/jz4740//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/lantiq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/lasat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/lasat/image//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson32/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson64/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/mti-malta//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/netlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/netlogic/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/paravirt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pic32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pic32/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pistachio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pnx833x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/ralink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/rb532//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sibyte//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sibyte/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/sni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/txx9//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/txx9/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/vr41xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nds32/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/nios2/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/openrisc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/openrisc/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/openrisc/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/openrisc/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/openrisc/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/parisc/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/purgatory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/sysdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/powerpc/xmon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/riscv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/riscv/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/riscv/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/riscv/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/appldata//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/hypfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/numa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/purgatory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/scripts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/s390/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/boot/romimage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/cchips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/drivers/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/drivers/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/lib64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sh/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/prom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/sparc/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/kernel/skas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/os-Linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/um/scripts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/unicore32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/unicore32/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/unicore32/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/unicore32/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/unicore32/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/boot/compressed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/coco//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/coco/tdx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/entry//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/entry/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/events/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/events/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/hyperv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/ia32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/e820//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/fpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/numachip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/shared//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/uv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/asm/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/generated//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/generated/asm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/generated/uapi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/generated/uapi/asm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/uapi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/include/uapi/asm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/apic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/mm/pat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/atom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/efi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/geode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/iris//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/olpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/scx200//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/sfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/platform/uv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/purgatory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/ras//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/realmode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/realmode/rm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/um//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/um/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/x86/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/platforms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/block//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/block/partitions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/certs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/crypto/asymmetric_keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/crypto/async_tx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/accessibility//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/accessibility/braille//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/acpica//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/apei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/arm64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/dptf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/nfit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/numa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/acpi/pmic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/amba//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/android//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ata//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/atm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/auxdisplay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/base//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/base/firmware_loader//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/base/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/base/regmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/base/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bcma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/aoe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/drbd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/mtip32xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/paride//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/rsxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/xen-blkback//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/block/zram//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bluetooth//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bus/mhi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/bus/mhi/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/cdrom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/agp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/hw_random//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/ipmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/mwave//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/pcmcia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/tpm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/char/xillybus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/actions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/at91//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/axis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/axs10x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/berlin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/davinci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/h8300//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/imgtec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/ingenic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/keystone//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/loongson1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/microchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/mmp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/mvebu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/mxs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/nxp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/pistachio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/pxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/sirf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/socfpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/spear//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/sprd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/st//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/sunxi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/uniphier//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/ux500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/versatile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/zte//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clk/zynq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/clocksource//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/connector//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/counter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/cpufreq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/cpuidle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/cpuidle/governors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/amcc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/axis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/caam//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/cavium//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/ccp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/ccree//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/chelsio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/marvell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/nx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/qce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/stm32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/ux500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/crypto/vmx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dax/hmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dax/pmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/devfreq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/devfreq/event//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma-buf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/bestcomm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/dw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/hsu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/idxd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/ioat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/ipu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/ptdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/dma/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/edac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/eisa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/extcon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firewire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/cirrus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/efi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/efi/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/google//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/psci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/smccc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/firmware/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/fmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/fpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/fsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/display//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/host1x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/gpu/vga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hid/surface-hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hid/usbhid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hsi/clients//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hsi/controllers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwmon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwspinlock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwtracing//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/hwtracing/stm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/i2c/algos//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/i2c/busses//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/i2c/muxes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ide//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/idle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/accel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/adc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/afe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/amplifiers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/buffer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/chemical//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/counter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/dac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/dummy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/frequency//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/gyro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/health//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/humidity//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/imu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/light//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/magnetometer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/multiplexer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/orientation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/potentiometer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/potentiostat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/pressure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/proximity//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/resolver//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/temperature//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iio/trigger//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/sw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/gameport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/joystick//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/keyboard//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/mouse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/rmi4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/serio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/tablet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/input/touchscreen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iommu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iommu/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iommu/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/iommu/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ipack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ipack/carriers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ipack/devices//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/irqchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/capi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/divert//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/gigaset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/hardware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/hisax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/hysdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/i4l//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/isdn/mISDN//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/leds//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/leds/trigger//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/lightnvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/macintosh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/macintosh/ams//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mailbox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mcb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/md//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/md/bcache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/md/persistent-data//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/common/b2c2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/common/saa7146//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/common/siano//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/dvb-core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/firewire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/mmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/mmc/siano//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/cx18//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/cx88//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/mantis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/meye//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/ngene//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/pt1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/pt3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/tw68//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/am437x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/atmel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/cadence//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/coda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/davinci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/omap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/sti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/stm32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/vimc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/vivid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/radio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/radio/si470x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/radio/si4713//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/rc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/tuners//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/airspy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/as102//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/au0828//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/go7007//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/gspca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/pwc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/s2255//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/siano//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/uvc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/media/v4l2-core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/memory/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/memory/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/memstick//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/memstick/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/memstick/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/message//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/message/fusion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/c2port//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/cardreader//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/cb710//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/cxl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/echo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/eeprom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/genwqe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/ibmasm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/lkdtm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/bus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/card//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/scif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/mic/vop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/ocxl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/ti-st//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mmc/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mmc/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/chips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/devices//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/lpddr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/maps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/parsers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mtd/ubi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/mux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/appletalk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/arcnet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/bonding//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/caif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/c_can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/cc770//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/m_can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/mscan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/rcar//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/sja1000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/softing//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/dsa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/dsa/b53//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/google//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/via//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/fddi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/fjes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/hamradio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/hippi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/hyperv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ieee802154//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ipvlan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/netdevsim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/pcs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/phy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/plip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/ppp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/slip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/team//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/thunderbolt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/vmxnet3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wan/lmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wimax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/st//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/net/xen-netback//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/fdp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/microread//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/pn533//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/pn544//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/st-nci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nfc/st95hf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ntb/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nubus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nvdimm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nvme//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nvme/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nvme/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/nvmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/of//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/of/unittest-data//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/opp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/parisc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/parport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/controller//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/endpoint//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/hotplug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/pcie//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pci/switch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pcmcia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/perf/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/allwinner//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/amlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/lantiq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/marvell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/motorola//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/qualcomm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/ralink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/st//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/phy/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/actions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/spear//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pinctrl/zte//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/chrome//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/goldfish//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/mellanox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/mips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/olpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/amd/pmf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pnp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pnp/isapnp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/power/avs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/power/reset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/power/supply//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/powercap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pps/clients//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pps/generators//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ps3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ptp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/pwm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/rapidio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/rapidio/devices//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/rapidio/switches//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ras//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/regulator//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/remoteproc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/reset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/reset/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/reset/sti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/reset/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/rpmsg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/rtc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/block//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/char//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/cio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/scsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/s390/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sbus/char//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/aacraid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/bfa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/csiostor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/device_handler//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/esas2r//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/fcoe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/fnic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/isci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/libfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/libsas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/lpfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/megaraid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/mvsas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/pm8001//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/qedf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/qedi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/snic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/scsi/ufs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sh/clk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sh/intc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sh/maple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sh/superhyway//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/siox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/slimbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/sn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/actions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/amlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/atmel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/dove//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/fsl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/fujitsu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/gemini//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/lantiq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/sunxi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/ux500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/versatile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soc/zte//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/spmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/ssb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/android//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/android/ion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/board//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/comedi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/dgnc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fbtft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/fwserial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/gdm724x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/goldfish//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/greybus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/accel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/adc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/addac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/meter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/ks7010//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/imx074//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/media/zoran//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/cdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/dim2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/sound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/most/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/netlogic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/nvec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/octeon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/pi433//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8712//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/rts5208//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/skein//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/sm750fb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/speakup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/unisys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vc04_services//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vme//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vme/devices//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vt6655//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/vt6656//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/wilc1000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/staging/xgifb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/target/iscsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/target/loopback//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/target/sbp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/target/tcm_fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tee//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tee/optee//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/st//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/thunderbolt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/hvc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/ipwireless//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/serdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/serial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/serial/8250//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/tty/vt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/uio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/atm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/c67x00//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/chipidea//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/class//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/dwc2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/dwc3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/early//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/gadget//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/gadget/function//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/host/whci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/image//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/isp1760//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/mon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/mtu3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/musb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/phy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/roles//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/serial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/storage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/typec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/typec/mux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/usbip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/usb/wusbcore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/uwb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/uwb/i1480//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vdpa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vfio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vfio/mdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vfio/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vfio/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vhost//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/backlight//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/console//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/fbdev/via//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/video/logo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virt/coco//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virt/vboxguest//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/visorbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vlynq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vme//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vme/boards//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/vme/bridges//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/w1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/w1/masters//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/w1/slaves//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/watchdog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/xen/events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/xen/xenbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/xen/xenfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/drivers/zorro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/9p//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/adfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/affs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/afs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/autofs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/befs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/bfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/btrfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/cachefiles//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ceph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/cifs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/coda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/configfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/cramfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/debugfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/devpts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/dlm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ecryptfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/efivarfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/efs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/exportfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ext2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ext4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/f2fs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/fat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/freevxfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/fscache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/fuse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/gfs2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/hfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/hfsplus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/hostfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/hpfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/hugetlbfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/iomap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/isofs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/jbd2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/jffs2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/jfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/kernfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/lockd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/minix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nfs/blocklayout//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nfs/filelayout//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nfs_common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nfsd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nilfs2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/nls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/notify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/notify/dnotify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/notify/fanotify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/notify/inotify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ntfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ocfs2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ocfs2/cluster//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ocfs2/dlm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/omfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/openpromfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/orangefs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/overlayfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/proc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/pstore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/qnx4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/qnx6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/quota//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ramfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/reiserfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/romfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/squashfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/sysfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/sysv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/tracefs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ubifs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/udf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/ufs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/fs/xfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/acpi/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/asm-generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/asm-generic/bitops//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/asm-generic/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/clocksource//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/8139too//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ac97//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/apei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/apei/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/cppc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/cpu/freq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/ec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/hotplug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/legacy/tables//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/processor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/rev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/rev/override//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/spcr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/system//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/system/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/system/power/states//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/table//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/acpi/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/advise//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/alim1535//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/alim7101//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/allow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/allow/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/altera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amd/iommu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amd/mem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amd/sfh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amd/xgbe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amd/xgbe/have//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amiga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/amilo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/aperture//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/apple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/apple/mfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/aquantia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/clocksource//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/cpuidle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/dma/addr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/enable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/enable/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/enable/split//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/acpi/table//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/add//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/cache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/cache/line//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/cc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/devmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/elf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/fast//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/filter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/force//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/fortify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/gcov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/kexec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/mem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/membarrier/sync//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/non//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/pmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/pte//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/set//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/set/direct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/sg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/strict//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/strict/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/strict/module//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/sync//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/sync/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/sync/core/before//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/syscall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/has/zone//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/have//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/have/nmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/hibernation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/may//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/may/have//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/might//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/might/have//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/might/have/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/mmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/nr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/proc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/proc/kcore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/select//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/select/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/sparsemem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/supports//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/supports/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/supports/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/supports/numa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/supports/optimized//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/suspend//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/use/builtin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/use/memremap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/use/queued//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/uses//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/uses/high//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/uses/pg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/batched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/batched/unmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/batched/unmap/tlb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/compat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/default/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/general//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/huge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/huge/pmd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/old//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/wants//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/wants/dynamic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/wants/dynamic/task//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arch/wants/thp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arm/gic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/arm/gic/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/associative//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/asus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/asus/nb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/asymmetric//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/asymmetric/key//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/asymmetric/public//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/async//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/async/raid6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/async/tx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ata//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ata/verbose//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ath//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ath10k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ath11k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ath9k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ath9k/btcoex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ath9k/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/atm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/atomic64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/audit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/autofs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/autofs4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/auxiliary//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/backlight//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/backlight/class//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/backlight/lcd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/balloon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/base//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcm/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcm7xxx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcm87xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcma/driver//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcma/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bcma/host/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/be2net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bfq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bfq/group//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/big//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/binary//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/binfmt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bitfield//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bitfield/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bits//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bits/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/cgroup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/dm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/loop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/null//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/dev/ram//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/mq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/scsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/blk/wbt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/block//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bnx2x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bnxt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bnxt/flower//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/boot/printk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/hotplug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/hung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/jit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/jit/always//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/jit/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/kprobe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/stream//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/unpriv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/branch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/branch/profile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/brcmfmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/brcmfmac/proto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/brcmsmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/ebt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/igmp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/nf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bridge/vlan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/broadcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bsd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bsd/process//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bsd/process/acct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/bnep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/hciuart//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/mrvl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bt/rfcomm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bug/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/bug/on/data//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/build//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/buildtime//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/buildtime/extable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/8dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/c/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/calc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/cc770//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/ems//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/esd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/kvaser//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/peak//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/plx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/can/sja1000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/capi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cavium//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cb710//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cb710/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/kasan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/return//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/sancov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/sane//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/working//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/is//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/optimize//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cc/optimize/for//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cdrom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cec/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph/fs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph/fs/security//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph/lib/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/crda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/require//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/require/signed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/use/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfg80211/use/kernel/regdb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cgroup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cgroup/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/charger//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/check//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/checkpoint//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/chelsio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/chelsio/inline//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/chelsio/tls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/chr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/chr/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cicada//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs/allow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs/dfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs/smb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs/weak//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clang//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clkbld//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clkdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clkevt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clocksource//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clocksource/validate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clocksource/validate/last//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cls/u32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/clz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cmdline//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cmdline/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compat/32bit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compat/binfmt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compat/for//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compat/for/u64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/compat/old//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/configfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/console//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/console/loglevel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/context//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/context/switch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/contig//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/core/dump//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/core/dump/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cortina//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/freq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/freq/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/ibpb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/ibrs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/idle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/sup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cpu/unret//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cramfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crc/itu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crc32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cross//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cross/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/aes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/aes/ni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/aes/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/ansi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/blowfish//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/blowfish/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia/aesni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia/aesni/avx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia/aesni/avx/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia/aesni/avx2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia/aesni/avx2/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/camellia/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast5/avx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast5/avx/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast6/avx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/cast6/avx/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/chacha20//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/chacha20/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/crc32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/crc32c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/crct10dif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/des3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/des3/ede//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/des3/ede/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/dev/ccp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/dev/padlock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/dev/qat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/dev/sp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/drbg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/fips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/ghash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/ghash/clmul//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/ghash/clmul/ni//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/glue//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/glue/helper//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/michael//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/poly1305//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/poly1305/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/rng//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent/avx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent/avx/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent/avx2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent/avx2/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent/sse2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/serpent/sse2/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/sha1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/sha256//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/sha512//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/twofish//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/twofish/avx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/twofish/avx/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/twofish/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/twofish/x86/64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/crypto/user/api//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/cypress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/damon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/davicom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dcache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dcache/word//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/de//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/debug/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/debug/info//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/debug/section//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/decompress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/fq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/hung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/hung/task//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/io/delay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/mmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/mmap/min//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/security//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/default/tcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/deferred//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/deferred/struct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/deferred/struct/page//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dell/smbios//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dell/wmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/detect//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/detect/hung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/device//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/devtmpfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dlci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dlm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm/bio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm/cache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm/log//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm/multipath//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm/persistent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dm/thin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dma/coherent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dma/engine//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dma/shared//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dma/virtual//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dmar//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dmi/scan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dmi/scan/machine//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dmi/scan/machine/non//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dmi/scan/machine/non/efi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dns//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dp83640//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dp83822//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dp83848//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dp83867//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dp83tc811//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dptf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/amd/dc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/amdgpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/cirrus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/display//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/display/dp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/dp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/dp/aux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/export//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/export/for//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/fbdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/gem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/capture//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/compress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/fence//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/force//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/gvt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/heartbeat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/max/request//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/preempt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/preempt/timeout//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/request//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/stop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/timeslice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/i915/userfault//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/kms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/kunit/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/load//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/load/edid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/mgag200//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/mgag200/ioburst//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/mipi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/nouveau//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/panel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/radeon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/ttm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/drm/vram//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dst//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dummy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dummy/console//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/au8522//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/av7110//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/b2c2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/budget//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/dummy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/dynamic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/firedtv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/ttusb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/tuner//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dw/dmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dwmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dynamic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dynamic/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/dynamic/physical//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/e1000e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/early//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/early/printk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/early/printk/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/edac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/edac/atomic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/edac/decode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/edac/legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/eeepc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/eeprom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/dev/path//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/dxe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/dxe/mem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/rci2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/runtime//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/soft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/vars//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/vars/pstore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efi/vars/pstore/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/efivar//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/elf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ena//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/enable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/enable/must//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/enclosure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/encrypted//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/energy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ethtool//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/event//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/evm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/evm/attr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/exclusive//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/exclusive/system//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/exportfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/exportfs/block//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ext4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ext4/fs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ext4/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ext4/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ext4/use/for//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/extra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/f71808e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fair//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fair/group//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fanotify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fanotify/access//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fat/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fat/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fb/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fb/boot/vesa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fb/cfb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fb/deferred//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fb/sys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fcoe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/file//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fips/signature//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/firewire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fix/earlycon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fixed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/font//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fortify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/frame//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/framebuffer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/framebuffer/console//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fs/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fscache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ftrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ftrace/mcount//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fujitsu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/function//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/function/error//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/function/graph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fuse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fusion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fusion/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/futex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fw/attr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fw/cfg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fw/cs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fw/loader//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/fw/loader/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gact//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gcc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/bug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/bug/relative//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/calibrate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/clockevents//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/clockevents/min//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/cmos//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/early//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/find//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/find/first//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/irq/effective//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/irq/effective/aff//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/irq/matrix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/irq/reservation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/isa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/msi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/msi/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/pending//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/smp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/smp/idle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/strncpy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/strnlen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/time//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/generic/vdso/time//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gfs2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gfs2/fs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gigaset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gpiolib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/grace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/gro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/haltpoll//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hangcheck//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardened//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardened/usercopy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardirqs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardirqs/sw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardlockup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardlockup/check//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hardlockup/detector//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/has//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/has/ioport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hash/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/acpi/apei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/aligned//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/aligned/struct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/compat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/compat/mmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/huge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/kasan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/mmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/node//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/node/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/soft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/thread//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/thread/struct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/transparent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/transparent/hugepage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/userfaultfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/vmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/within//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/arch/within/stack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/bootmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/bootmem/info//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/clk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/cmpxchg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/context//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/copy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/copy/thread//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/dynamic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/ebpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/efficient//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/exit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/fast//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/ftrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/function//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/function/error//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/function/graph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/gcc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/hardened//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/hardlockup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/ioremap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/irq/exit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/irq/exit/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/irq/exit/on/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/irq/time//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kprobes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kprobes/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm/cpu/relax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm/dirty//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm/no//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/kvm/pm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/mixed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/mixed/breakpoints//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/mmiotrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/mod//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/mod/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/move//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/pcspkr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/perf/events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/perf/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/posix/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/posix/cpu/timers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/posix/cpu/timers/task//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/preempt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/regs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/regs/and//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/reliable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/sched/avg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/setup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/setup/per//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/stack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/syscall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/unstable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/unstable/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/user/return//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/virt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/virt/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hdlc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hdmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hdmi/lpe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/headers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hibernate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/battery//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/betop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/logitech//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/accel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/custom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/device//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/gyro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/inclinometer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hid/sensor/magnetometer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/high//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/high/res//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/16//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/avm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/bkm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/enternow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/fritz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/hfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/netjet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/no//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hisax/sct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hist//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hmm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hotplug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hotplug/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hotplug/pci/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hpet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hpet/emulate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hpwdt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hpwdt/nmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hsa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hsa/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hsu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hugetlb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hvc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hw/random//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hwlat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hwmon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hwpoison//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hypervisor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hysdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/hz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/amd756//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/designware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/diolan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/helper//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/mux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/nforce2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/parport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/pca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i2c/tiny//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i40e//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i6300esb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/i8253//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ia32//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ia32/feat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ib700//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/icplus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ideapad//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/idle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/idle/page//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ie6xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ieee802154//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/igb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iio/consumers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iio/consumers/per//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iio/kfifo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iio/triggered//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/illegal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/illegal/pointer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/appraise//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/default/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/lsm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/measure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/read//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/secure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/secure/and//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/sig//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/trusted//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ima/write//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/diag//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/esp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/mptcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/raw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/sctp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/tcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/udp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet/xfrm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet6/esp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inet6/xfrm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/addr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/opa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/virt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/infiniband/vmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/init//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/init/env//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/init/env/arg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/initramfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/inotify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/ati//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/atlas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/ff//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/keyspan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/mousedev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/instruction//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/int340x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/integrity//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/integrity/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/integrity/trusted//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/hfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/hid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/idxd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/iommu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/iommu/floppy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/iommu/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/ish//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/ishtp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/mei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/pch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/pmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/pmt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/rapl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/soc/dts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/soc/dts/iosf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/speed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/speed/select//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/tdx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/th//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/turbo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/turbo/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/uncore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/uncore/freq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/wmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/intel/xway//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/interval//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/io/delay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/io/delay/type//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iommu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iommu/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iommu/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iosched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iosf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/advanced//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/fib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/fib/trie//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/mroute//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/multiple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/nf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/nf/arp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/nf/match//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/nf/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/pimsm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/route//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/set//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/set/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/set/list//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/mh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/pe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/proto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip/vs/tab//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip6/nf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip6/nf/match//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ip6/nf/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipmi/device//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipmi/dmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipmi/panic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipmi/plat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ippp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/mroute//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/multiple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/route//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/router//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ipv6/sit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/imon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/ite//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/jvc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/mce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/nec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/rc5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/rc6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/sanyo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/serial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/sony//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ir/winbond//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/irq/bypass//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/irq/domain//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/irq/forced//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/irq/msi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isa/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iscsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iscsi/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iscsi/ibft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iscsi/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn/capi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn/drv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn/ppp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/isdn/tty//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iso9660//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/it87//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/it8712f//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/itco//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/itco/vendor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iwlwifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/iwlwifi/opmode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ixgbe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ixgbevf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kallsyms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kallsyms/absolute//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kallsyms/base//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/karma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kexec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kexec/bzimage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kexec/bzimage/verify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/keyboard//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kprobe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kprobes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kprobes/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kunit/all//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kunit/example//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/async//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/external//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/external/write//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/generic/dirtylog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/kvm/generic/dirtylog/read//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/l2tp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lcd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lcd/class//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/led//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/led/trigger//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/brightness//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/clevo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/lp55xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/trigger//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/leds/trigger/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/legacy/vsyscall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/linear//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/linear/ranges//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/liquidio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/list//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/list/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/load//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/load/uefi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/debugging//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/down//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/down/in//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/down/in/efi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/down/in/efi/secure//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/spin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/spin/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lock/torture//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lockd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lockdep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lockup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/log//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/log/buf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/log/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/log/cpu/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/logitech//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/logo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/logo/linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/loopback//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lsi/et1011c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lsm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lsm/mmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lwtunnel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lxt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lz4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/lzo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211/has//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211/rc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211/rc/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211/sta//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211/sta/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mac80211/sta/hash/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/machz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/macintosh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/magic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/magic/sysrq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mantis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mapping//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mapping/dirty//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/marvell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/marvell/10g//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/max/raw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/maxlinear//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/md//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mdio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mdio/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mdio/mscc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/altera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/analog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/analog/tv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/camera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/cec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/digital//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/digital/tv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/radio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/subdrv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/tuner//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/media/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/megaraid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mellanox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mem/soft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memcg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memcpy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memcpy/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memstick//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memstick/jmicron//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memstick/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/memstick/tifm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/message//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/message/loglevel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mfd/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mfd/intel/lpss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mfd/sm501//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mhi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mhi/bus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/micrel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/microchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/microchip/t1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/microcode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/microsemi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/minix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/misc/rtsx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/misdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx4/en//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/cls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/core/en//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/en//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/sf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/sw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/tc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlxreg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlxsw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlxsw/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc/block//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc/ricoh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc/sdhci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc/tifm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmc/via//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmconf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmu/gather//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mmu/gather/table//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/modify//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/modify/ldt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/module//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/module/force//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/module/sig//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/module/srcversion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/modules//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/modules/tree//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/modules/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/modules/use/elf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse/elan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse/ps2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mouse/synaptics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mpls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mptcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mptcp/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mq/iosched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/msdos//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/msi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mspro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mt76//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mt76/connac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mt76x0//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mt76x02//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mt76x2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mt7921//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/cfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/map//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/map/bank//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/ubi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtrr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtrr/sanitizer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtrr/sanitizer/enable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtrr/sanitizer/spare//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtrr/sanitizer/spare/reg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mtrr/sanitizer/spare/reg/nr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mutex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mutex/spin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mutex/spin/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mwifiex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/mxm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/myri10ge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/n//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/national//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/dma/map//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/multiple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/per//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/per/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/per/cpu/page//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/per/cpu/page/first//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/sg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/need/sg/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/act//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/act/tunnel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/cls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/drop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/ematch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/flow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/ip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/ipgre//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/key//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/l3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/l3/master//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/mpls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/packet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/poll//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/ptp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/sch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/sch/fq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/sock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/tc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/tc/skb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/team//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/team/mode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/udp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/net/vendor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netconsole//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netdev/addr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netdev/addr/list//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter/family//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter/netlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter/xt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/network//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/network/phy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/netxen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/new//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/conntrack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/ct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/ct/proto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/defrag//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/dup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/flow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/flow/table//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/log//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/nat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/reject//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/socket//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/tables//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nf/tproxy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfp/app//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfp/app/abm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/acl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/v3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/v4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/v4/1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfs/v4/security//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfsd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfsd/v2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfsd/v3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfsd/v4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft/bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft/dup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft/fib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft/flow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft/fwd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nft/reject//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nitro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nls/codepage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nls/iso8859//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nls/koi8//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nls/mac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/no//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/no/hz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nodes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nouveau//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nouveau/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nr/cpus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nr/cpus/range//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ntb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/numa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/numa/keep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nvdimm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nvme//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nvme/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nvme/verbose//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/nvsw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/oid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/old//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/openvswitch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/oprofile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/oprofile/nmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/optimize//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/osf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/osnoise//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/output//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/overlay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/packet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/page//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/page/table//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/panasonic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/panic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/panic/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/panic/on/oops//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/paravirt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/paravirt/time//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/parport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/parport/not//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/partition//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pci/lockless//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pci/msi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pci/msi/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pci/pf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pcie//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pcie/bus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pcieaer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pcieaspm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pcs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pcspkr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/perf/events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/perf/events/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/perf/events/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/persistent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pgtable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/phys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/phys/addr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/phys/addr/t//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/physical//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pinctrl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pkcs7//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pkcs7/message//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/plugin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pm/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pm/generic/domains//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pm/sleep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pm/std//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pmic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pnfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pnfs/file//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/posix/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/posix/cpu/timers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/posix/cpu/timers/task//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/posix/mqueue//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ppp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ppp/sync//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pps/client//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/preempt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/prevent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/prevent/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/prime//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/print//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/print/quota//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/printk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/printk/safe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/printk/safe/log//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/probe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/page//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/pid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/thermal/mmio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/vmcore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/provide//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/provide/ohci1394//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/provide/ohci1394/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/psi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/psi/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pstore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pstore/compress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pstore/deflate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ptp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ptp/1588//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ptp/1588/clock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pwm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/pwm/lpss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/qcom/qmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/qed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/qfmt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/qrtr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/qsemi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/queued//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/quota//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/quota/netlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/quotactl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/radio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/raid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/raid6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/raid6/pq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/random//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/random/trust//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/randomize//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/randomize/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/randomize/memory/physical//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rational//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rational/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/raw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rc/ati//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu/boost//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu/need//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu/nocb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rcu/stall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/reed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/reed/solomon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/regmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/regmap/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/reset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/resource//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/resource/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rfkill//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rhel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ring//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ring/buffer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rmi4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rmi4/2d//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rmi4/f03//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rpcsec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rpcsec/gss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt2800//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt2800/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt2800pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt2800usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt2x00//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rt2x00/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/drv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/hctosys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/intf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/mc146818//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtc/systohc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtl8192c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtl8723//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtlwifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtw88//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rtw89//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/runtime//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/runtime/testing//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rwsem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rwsem/spin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sample//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sample/vfio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sample/vfio/mdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sata//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sata/ahci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sata/mobile//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sbc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sbc/fitpc2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scf/torture//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sched/mc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sched/omit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sched/omit/frame//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/bnx2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/chelsio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/dh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/iscsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/proc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/qla//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/sas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/sas/host//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/scan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/scsi/srp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sctp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sctp/cookie//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sctp/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sdio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/seccomp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/section//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/section/mismatch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/network//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux/avc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/security/writable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/select//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/select/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/dell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/fam15h//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/i5k//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/lis3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/mlxreg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/ntc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/sch56xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sensors/via//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/8250//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/8250/many//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/8250/nr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/8250/share//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/arc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/arc/nr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serial/multi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serio/altera//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/serio/arc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sfc/mcdi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sfc/siena//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sgetmask//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sgi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sgl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/shuffle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/shuffle/page//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/signed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/signed/pe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/signed/pe/file//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/skb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/slab//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/slab/freelist//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/slip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/slub//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/slub/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sms/sdio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sms/siano//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sms/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/smsc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/smsc/sch311x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/ac97//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/ac97/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/amd/acp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/atiixp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/compress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/cs46xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/ctl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/dynamic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/emu10k1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/es1968//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/firewire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/codec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/codec/ca0132//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/cs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/cs/dsp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/dsp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/ext//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/input/beep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/patch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/power/save//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/scodec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/hda/scodec/cs35l41//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/intel/dsp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/intel/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/jack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/jack/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/maestro3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/mpu401//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/opl3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/oxygen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/pcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/proc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/seq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/seq/midi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/sequencer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/acpi/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/amd/renoir//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/amd/vangogh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/amd/yc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/cs35l41//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/cs42l42//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/hdac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/i2c/and//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bdw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bdw/rt5650//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bdw/rt5677//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/broadwell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bxt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bxt/da7219//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bxt/da7219/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bxt/rt298//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/byt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/byt/cht//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/byt/cht/cx2072x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/byt/cht/da7213//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/byt/cht/es8316//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/byt/cht/nocodec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bytcr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bytcr/rt5640//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/bytcr/rt5651//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht/bsw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht/bsw/max98090//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht/bsw/max98090/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht/bsw/nau8824//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht/bsw/rt5645//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cht/bsw/rt5672//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cml//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cml/lp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cml/lp/da7219//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/cml/lp/da7219/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/da7219//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/da7219/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/ehl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/ehl/rt5660//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/glk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/glk/da7219//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/glk/da7219/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/glk/rt5682//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/glk/rt5682/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/haswell//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/hda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/hda/dsp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/da7219//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/da7219/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/da7219/max98927//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/rt5660//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/max98927//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/rt5514//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/kbl/rt5663/rt5514/max98927//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/hda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/hda/dsp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/hda/dsp/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25/max98357a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/nau88l25/ssm4567//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skl/rt286//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skylake//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/skylake/ssp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/cirrus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/cml//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/cml/rt1011//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/cml/rt1011/rt5682//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/da7219//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/da7219/max98373//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/es8336//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/maxim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/nau8825//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/pcm512x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/realtek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/rt5682//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/ssp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/ssp/amp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sof/wm8804//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/soundwire/sof//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/sst//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/user/friendly//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/intel/user/friendly/long//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/max98373//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/pcm512x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt1308//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt1316//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt1318//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt5514//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt5677//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt5682//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt700//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt711//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt711/sdca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt712//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt712/sdca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt712/sdca/dmic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt715//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/rt715/sdca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sdw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/hda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/hda/audio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/hda/link//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel/atom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel/atom/hifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel/hifi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel/hifi/ep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/intel/soundwire/link//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/probe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/sof/probe/work//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/topology//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/topology/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/utils//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/utils/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/wm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/soc/wm8804//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/sst//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/sst/atom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/sst/atom/hifi2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/sst/atom/hifi2/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/synth//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/verbose//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/via82xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/snd/vx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sock/cgroup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sock/validate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/soft//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/softlockup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/solaris//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/solaris/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sony//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sonypi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sound/oss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sound/oss/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/soundwire/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sp5100//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sparse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sparsemem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/speculation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/spi/pxa2xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/split//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/split/ptlock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/squashfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/squashfs/decomp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/squashfs/file//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/squashfs/fragment//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ssb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stackinit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stackinit/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stackprotector//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stacktrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stm/proto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stm/proto/sys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stm/source//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stmmac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/stream//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/strict//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/strict/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/strict/module//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/strip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/strip/asm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sun//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sunrpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/suspend//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/symbolic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/syn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sync//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/synclink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sysctl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sysctl/exception//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sysctl/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sysfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/system//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/system/blacklist//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/system/data//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/system/trusted//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/sysvipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tablet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tablet/serial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tablet/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/task//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/task/delay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/task/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tasks//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tasks/rcu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tasks/rude//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tasks/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcg/tis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tcp/cong//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tdx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tdx/guest//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/teranetics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/test/list//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/textsearch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/default/gov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/emergency//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/gov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/gov/bang//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/gov/step//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/gov/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thermal/writable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thinkpad//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thinkpad/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thinkpad/acpi/alsa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thinkpad/acpi/hotkey//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thread//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thread/info//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/thread/info/in//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tick//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tifm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tigon3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/time//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/time/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/timerlat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tipc/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tmpfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tmpfs/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/topstar//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/torture//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/toshiba//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/toshiba/bt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/touchscreen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/trace/irqflags//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/trace/irqflags/nmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tracer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tracer/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tracing//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/tree//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/trusted//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ttpci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/typec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/typec/dp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/typec/mux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ucs2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/ucsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/udf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uefi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uefi/cper//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uio/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uio/pdrv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/unix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/unix98//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/unixware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/unwinder//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uprobe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ali//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/announce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/announce/new//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/arch/has//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/autosuspend//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/conn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ehci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ehci/root//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ezusb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/few//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/few/init//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/gspca//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/hsic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/hwa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/led//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/leds//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/cdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/huawei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/huawei/cdc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/qmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/net/rndis//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ohci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/ohci/little//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/pulse8//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/pwc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/pwc/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/rainshadow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/role//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/roles//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/roles/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/digi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/mct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/safe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/sierra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/storage//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/storage/ene//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/uhci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/video/class//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/video/class/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/wusb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb/xhci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/usb4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/use//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/use/percpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/use/percpu/numa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/user/return//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/user/stacktrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uvc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/uwb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vdpa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vdpa/sim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vfat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vfio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vfio/iommu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vfio/mdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vfio/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vga/arb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vga/arb/max//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vhost//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/via//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/au0828//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/cx18//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/cx231xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/cx88//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/em28xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/fb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/ir//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/pvrusb2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/saa7134//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/saa7146//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/video/tm6000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/videobuf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/videobuf/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/videobuf2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/videobuf2/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virt/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virt/to//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virtio/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/virtio/vsockets//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vitesse//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vlan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vlan/8021q//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vm/event//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vmap//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vmware/vmci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vsockets//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vt/console//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vt/hw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/vt/hw/console//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/w83627hf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/w83877f//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/w83977f//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/want//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/want/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/watchdog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/watchdog/handle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/watchdog/open//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/wdat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/wlan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/wlan/vendor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/wmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x509//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x509/certificate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/64/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/acpi/cpufreq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/amd/freq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/amd/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/amd/pstate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/amd/pstate/default//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/check//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/check/bios//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/decoder//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/direct//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/extended//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/feature//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/hv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/hv/callback//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/intel/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/intel/memory/protection//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/intel/tsx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/intel/tsx/mode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/internode//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/internode/cache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/l1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/l1/cache//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/local//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/mce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/mcelog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/mem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/minimum//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/minimum/cpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/need//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/p4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/pkg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/pkg/temp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/platform/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/pm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/pmem//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/pmem/legacy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/powernow//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/reroute//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/reroute/for//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/reroute/for/broken//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/reroute/for/broken/boot//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/sgx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/speedstep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/supports//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/supports/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/vmx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/vmx/feature//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/x86/vsyscall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xarray//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xdp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xdp/sockets//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xfrm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xfrm/sub//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xfs/posix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/xz/dec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/yenta//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/yenta/ene//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/zlib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/zone//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/zram//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/config/zsmalloc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/crypto/internal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm-backport//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm-backport/linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm/bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm/display//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/drm/ttm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/bus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/clk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/clock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/display//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/leds//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/mfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/mips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/mux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/phy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/pwm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/regulator//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/reset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/sound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/spmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/dt-bindings/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/generated//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/generated/uapi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/generated/uapi/linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/amba//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/avf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/bcma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/byteorder//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/can/dev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/can/platform//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/ceph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/clk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/crush//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/decompress//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/dsa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/extcon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/firmware/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/firmware/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/fpga//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/fsl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/hsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/accel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/adc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/dac//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/frequency//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/gyro//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/imu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/iio/timer//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/input//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/irqchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/isdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/lockd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mailbox//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/abx500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/arizona//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/da9052//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/da9055//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/da9062//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/da9063//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/da9150//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/syscon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mlx4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mlx5//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mtd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/mux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/net/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/netfilter_arp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/pcs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/phy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/phy/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/pinctrl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/platform_data//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/platform_data/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/platform_data/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/qed//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/raid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/regulator//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/remoteproc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/reset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/rpmsg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/rtc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/actions//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/dove//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/renesas//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/sunxi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soc/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/soundwire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/ssb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/sunrpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/ulpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/unaligned//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/uwb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/linux/wimax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/math-emu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/media//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/media/davinci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/media/drv-intf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/media/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/media/tpg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/memory//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/9p//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/bluetooth//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/caif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/iucv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/mana//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/netns//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/nfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/phonet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/sctp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/net/tc_act//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/pcmcia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/ras//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/rdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/scsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/scsi/fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/arc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/at91//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/bcm2835//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/brcmstb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/fsl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/fsl/qe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/nps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/sa1100//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/soc/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/sound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/sound/ac97//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/sound/sof//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/sound/sof/ipc4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/target//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/target/iscsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/trace/events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/asm-generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/drm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/android//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/caif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/cifs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/dvb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/hsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/isdn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/mmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/raid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/linux/wimax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/mtd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/rdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/scsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/scsi/fc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/sound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/sound/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/sound/sof//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/uapi/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/video//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/xen/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/xen/interface//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/xen/interface/hvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/include/xen/interface/io//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/init//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/ipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/bpf/preload//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/cgroup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/debug/kdb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/dma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/gcov//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/irq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/kcsan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/livepatch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/locking//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/printk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/rcu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/time//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/kernel/trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/842//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/crypto//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/dim//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/fonts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/kunit//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/livepatch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/lz4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/lzo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/math//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/mpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/pldmfw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/raid6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/raid6/test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/reed_solomon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/vdso//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/xz//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/zlib_deflate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/zlib_dfltcc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/zlib_inflate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/lib/zstd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/mm/damon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/mm/kasan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/6lowpan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/802//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/8021q//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/9p//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/appletalk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/atm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ax25//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/batman-adv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bluetooth//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bluetooth/bnep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bluetooth/cmtp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bluetooth/hidp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bpfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bridge//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/bridge/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/caif//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/can//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ceph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/dcb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/dccp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/dccp/ccids//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/decnet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/decnet/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/dns_resolver//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/dsa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ethernet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ethtool//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/hsr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ieee802154//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ife//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ipv4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ipv4/bpfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ipv4/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ipv6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ipv6/ila//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ipv6/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/iucv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/kcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/key//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/l2tp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/l3mdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/lapb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/llc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/mac80211//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/mac802154//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/mpls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/mptcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/ncsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/netfilter/ipset//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/netfilter/ipvs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/netlabel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/netlink//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/netrom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/nfc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/nfc/hci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/nfc/nci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/nsh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/openvswitch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/packet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/phonet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/psample//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/qrtr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/rds//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/rfkill//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/rose//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/rxrpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/sched//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/sctp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/smc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/strparser//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/sunrpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/switchdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/tipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/tls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/unix//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/vmw_vsock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/wimax//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/wireless//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/x25//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/xdp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/net/xfrm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/auxdisplay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/configfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/connector//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/hidraw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/hw_breakpoint//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/kdb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/kfifo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/kobject//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/kprobes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/livepatch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/mei//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/mic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/mic/mpssd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/nitro_enclaves//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/qmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/rpmsg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/seccomp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/timers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/trace_events//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/trace_printk//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/uhid//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/v4l//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/vfio-mdev//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/vfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/samples/watchdog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/basic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/clang-tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/api//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/free//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/locks//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/null//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/coccinelle/tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/dtc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/dtc/libfdt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/gcc-plugins//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/gdb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/gdb/linux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/genksyms//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/ksymoops//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/mod//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/package//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/selinux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/selinux/genheaders//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/scripts/selinux/mdp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/apparmor//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/integrity//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/integrity/evm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/integrity/ima//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/keys/encrypted-keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/keys/trusted-keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/loadpin//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/selinux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/selinux/include//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/smack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/tomoyo//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/security/yama//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/ac97//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/aoa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/aoa/codecs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/aoa/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/aoa/fabrics//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/aoa/soundbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/atmel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/core/oss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/core/seq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/core/seq/oss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/drivers/mpu401//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/drivers/opl3//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/drivers/opl4//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/drivers/pcsp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/drivers/vx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/bebob//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/dice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/digi00x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/fireface//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/fireworks//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/motu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/oxfw//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/firewire/tascam//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/hda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/hda/ext//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/i2c//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/i2c/other//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/ad1816a//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/ad1848//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/cs423x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/es1688//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/galaxy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/gus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/msnd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/opti9xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/sb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/wavefront//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/isa/wss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/mips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/oss//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/oss/dmasound//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/parisc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/ac97//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/ali5451//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/asihpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/au88x0//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/aw2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/ca0106//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/cs46xx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/cs5535audio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/ctxfi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/echoaudio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/emu10k1//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/hda//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/ice1712//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/korg1212//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/lola//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/lx6464es//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/mixart//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/nm256//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/oxygen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/pcxhr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/riptide//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/rme9652//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/trident//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/vx222//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pci/ymfpci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pcmcia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/pcmcia/vx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/ppc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/adi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/acp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/ps//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/raven//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/renoir//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/rpl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/amd/yc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/atmel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/au1x//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/bcm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/cirrus//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/codecs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/dwc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/fsl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/generic//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/hisilicon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/img//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/atom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/avs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/boards//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/catpt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/keembay//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/intel/skylake//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/jz4740//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/kirkwood//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mediatek/common//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/meson//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/mxs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/pxa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/qcom//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/rockchip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/samsung//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sh/rcar//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/amd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/imx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/intel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/spear//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sprd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/stm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/sunxi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/tegra//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/ti//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/txx9//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/uniphier//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/ux500//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/xilinx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/soc/xtensa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/sparc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/synth//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/synth/emux//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/6fire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/bcd2000//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/caiaq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/hiface//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/line6//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/misc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/usb/usx2y//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/sound/xen//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/accounting//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/arch/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/bpf/bpftool//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/bpf/runqslower//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/build//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/build/feature//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/build/tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/build/tests/ex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/cgroup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/firewire//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/hv//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/iio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/include//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/include/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/io_uring//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/laptop//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/laptop/dslm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/laptop/freefall//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/leds//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/api//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/lockdep//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/subcmd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/traceevent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/objtool//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/pci//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/pcmcia//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/Documentation//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/arm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/arm64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/csky//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/mips//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/s390//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/sh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/sparc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/scripts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/scripts/perl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/acpi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/acpi/tools//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/cpupower//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/cpupower/bench//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/cpupower/debug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/pm-graph//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/x86/turbostat//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/scripts//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/spi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/nvdimm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/radix-tree//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/scatterlist//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/android//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/core//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/damon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/exec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/futex//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/lib//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/locking//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/mount//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/net//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/proc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/size//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/splice//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/sync//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/timens//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/timers//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/user//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/x86//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/selftests/zram//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/testing/vsock//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/thermal//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/thermal/tmon//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/usbip//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/usb/usbip/src//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/virtio//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/virtio/ringtest//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/virtio/vhost_test//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/vm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/tools/wmi//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/usr//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/virt//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/virt/kvm//usr/src/kernels/4.18.0-552.rt7.341.el8.x86_64/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 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz3Tx86_64-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 textPOSIX shell script, ASCII text executableC source, UTF-8 Unicode textassembler source, ASCII textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textISO-8859 textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=ac4bd3b08350d7f7e6149dcea49b2e6055a55718, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=d0992f339c047b0910d487cc4f20c2a72c5a3fcd, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=23126f4bb7bf99e6bf6752c47743ab1fdd36889b, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=050a589e2ecf4761d9849a3c52c5743362607941, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=ede966107f77ddbb813fb598621d74c003165596, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=8263990f4599a3543d7d655f6aa9327b919823f7, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=8a6a39a4b67ea90aafd9e40856f2c170a5b2f377, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=d0686d3bc5424cbc3ce98bb061f61e85d0e24f14, strippedXML 1.0 document, ASCII textawk script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=13088b82ff1d02cfade88e851f11b4cfb42969b5, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=9fac5fe26bfcd9edcf7c567445a46543f3ed7a44, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=663b0dada20797bc04cdac1173a475e40a3056cb, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=2c294a7b37ff0d51ef851eb94dbf45b3b9f9acda, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=088073155dcbf53144e07e5cdc6bc346a2dd6871, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=5a4cb555c891363cd398588a7714689215bf72bb, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=b5534dcbd8c75e7f57cf6c4e32ea3ef3247fa997, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=51a261a8652011a5d54b563848c370b399348a90, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=437eb96ac9a1879892da8f1e64ff0ffaed9b3e23, strippedASCII text, with very long linesELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=4b17ca4a833c30e0e3e4ea4d465e6bb8a32c1af9, strippedautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-80bdff5a0f99faf6056cab15a6831609e029a81db07f11e35ec9a7255d32e3977? 7zXZ !Ǽ*ړ] b2u jӫ`(y0%PyJMFS.'%S>̍d3D5Dza~4Z`?*n,[S>9{ƃmk@&eWULFY&j h-'?h ֢W$`&/qCuvӣNΕ29:[xQحVC+SL^QnTQUi%裙RkoG1߂%WjP|TG%Re*oN Ώ:xO{Bļ(YS !B'Vg(ojJ]d0DO FhE ^̍5l ]ҭ^??C?u$Wƙe{k뭝Y;6)foW=BsvvCzi DX Tؿ8hfN.Z('gs*W@W[JlS3_)I``'oNp★{.*ar;0iOQ=o")Iqg^FHY>oaIB\լ]~^m4ծDž%o}|q#J.'Ʉ{nM\@c׏U̖X7eJy֏梍}xp'zH GFQ~taՙ3(6ZucZ0{,NϸNDMJjn ~S/5R68Nßs6meAȺΓvŗ?}`DsAͮ1P3 } 0^EI}<:x]ao}mHQ,,|yZpBuy+-hx}>`u]/6W[)pRvd7v-QxcdT+ւ)-CAj^{S hFWpidlձx8ߔRSzNa)`!,v`TP$as5 $UtzS!11CDv\"syJwPQ#5O۲RT4=, #V5xjƪdx2Qh7$rL7ڂ+-E*X)Xo!EU7E=7sN-M iC-SF 6v0֬ߟCUP<@Lk)%>;7e{z^o@f >wk j` JAͯh1SK^,N#P8- GTjoj mVлp?)\nM/-g| 2jFG e a9rQ;G7$tV~b$4$QGFbvosA#.E0}$1YMΏתm|¥O*g J4H/{Ftɼ"ɡ0_$iP.7!]w;|W)l[)BI5=% -܊4 XMlp(ˤiS'|pie~KNg0OpNaH$֋] Kؠ޶VKo%ݴV=k~U$NlzuVͯTec:%u ))CQőfF>gX/7X_ h_45$ Æ$S娂 ?@jڵ|uT*$RT+k.,8'1 ef^8ւ!]q0UMP^E0= w PJ7G _8zX @BhsG˫WYfNIqeRhC lu#ajofS%ƭCuM*-0ޜ',:j2 +H8#\K$LΑYlncz<h}J=U=;p?O S1/c^lŠxiuuC~ڢm򠅠D{7"x4kVr39cZ೚պ䔍=LXƮY Sljh$,UCuz O^d6\r1-^}m٥K.JEd֛LeFv!pZd+&#ɒF-I䚬B}$YWplR)0 3{Oz]h"nb\ep<2}H&M{yA$xJZ;+d,|`MR}.z~l+fBq@srZT8`#ݫ33_ ,5?K 6F^j{`4`vmnn7 /t5t?YR)Xq:ۆ?'V[r]Zf>_X%;Dy3oW+P1::jȵ&]s8Iٮx'I [7Z]]=:ݤTi\%˭OH6]E֙wWt^V`߲1mbC P8,c'j\aAbaudstznIߤDWQn[$&*MTkj!2U,nJQ6u!uB`[= fm<@E.v(C(x55nw^Q s/C &7˺>0`# }9UyS*FN28fs('ڻsHM0ȌV: nePmk&_%S۱|x"L瓚PՋ Dȉa_e!Fa X*ޢPɧuw^ 3TY9%\,G  Z>`V~FDxu4u~?we.1Hb H4!b?a2Ȓ9u-n)Ɋi[^3SCKSًi"(:7^jWJV'<#A#UY3,@ ]A83~fq)jPo}R)0Q%&Q05=i32svn./xk9&p;wRbv󾪅V"Kh^t:r_0!:QfCC-hN48 L\ރ}jLQ~WyCQqz#ڂF=߈=[.,F7kQK F{/X㿼[)_kD<^:i,s~>R _z3 E9I":[1dY1ѱa ъ)nzݠG#e]SyAGAva^NWLM¡YLjMضTV"huG:G׿(ID~uy"并T*kٛATS0, ҈!Kcs;' >O;LXhA)^k {0 f+Qe~f苪 9f]ЃFAg`#43BM阮OT;&mZ}EFU19 pSrd8cȓݜ+% YLwgPV 3$' LGЅE`qu՗W~ΣV8T[ho ٱYmr"BTxjsdA<*Hma 6GĂ @/rSe3iGXVDEl s_b8=y٬u+x` ^-].:|^ 5DuNvo yLmo[oiI?/7]ʭ_yPXN־hr>{مQ㍇&w_N)_:Xo&jDzӃX"T.y"Vxyaif0U\CA: G6R<c穀% x@@pJ^&^7Ǜqށz8Q!<#9|"V"TC@9RY&L38: m^>}Q a;F[ٷٓRI/=wV",8/ x.ޱkά\UP*ƃ3^i^ V ;-Ui*|GDӎ\D> v#ZmuBFjOy~zJ~|k ].G|̩ iLͰ3 X J>nd%9tg%mwg2|8/DD+(͝i"Z86f1k|-rGdț?TO(s64]0< +u %2ȣHw%̈́Zj#' uDYLYPJxTFB#mEȂWe$R"fzU>n<&G6'`}ºcWJbҾR!$$y.4AD ##@%:&` !5 t.CƴfMc2n^piĆg2#ݎߪV 37oe&(f){p ܨQyum)D49L3z',"l?ÓLf#]<}P. $O dk.rDm_|#;BM td٠M>R|385 ٻY0w( 0󕨭(,d;MXJE {!} Rf]yzxjr܆1mH([ =q|}ܧ4Hi:KM\kQqXn 9 o㎧'> N{M;qz)}h)U賠9_W|sl/Yբ: eds2 j;Ɏ1*c_yW TNj +t> t;)ᅅ≋WPm BY>r j$DL^E7q䤦(`U)hƬE +7{ٓYݒ TgO!œtլ4Q/+ iYUloV⥥9\Vb|gVRv%vuяIr4eYrY U{I%~gvYk6Y]cs(eh'$Ӈ,8;w^w> el`JѱIz +`ۋ0b3ꤐ-M]Do7Km"vaQ(*yڬ{s\zK᷉(nYf9TL|8A\U\$:#1ң ڲ7TϹ'=bD.d RdANCyS_`4XV;\I2ëKeMyi6Fp.5p 8ч5mojMR8XrjcY]ǭ)o$]-c%ސ`x~ hlDȩ!r&3*;A$I|^͒PmyWja #p]rм.,+@K/6 k: n7nGCʘB8^9/mCNOܢxd&c2Fh7oH mDGehdZ%ì_2Fé={Y]>5lƞf:")+ÎLS {v6B@fX ~=³ Kp/o9,f Vd!n|"J Y v>L*ӮF5)\u0up~`>Mg"[ʵ8QKڟ꜎jכF_ }n-^s;eCZ#vr#XSC7*Bz/_+ DT3[=:ƶ[ݽN5w*JW|c a.|vso<\v1̇b/@嚸qwGRmyWIS3nȑAAU`G-v p]:oNլfN5!bd2`wO<_NUj-xZGBǯ^X*:?m"wO%LY/ςBXoY88.zAD}n:o}l--xox> @"u䦋q1z)\l8=F >jr]u2hnvhV_ >28d0\޹ecmC=P wXm4M–޲g|) ǭ[w^G(K8I 9>|-5+Vo=W ( ϫH_.+N)lR@iˠаpfn4T%K^gY+]-qJ W$ԮPcWu1[T1S$;O˙̟єv THyYp 0Ƈs AzD%zՑFqz/ɾSraN`)$^'H=>vx|j&SK? 8U2Cd?\NB;4dWӴrߊdxae%c(r[iMBYG=գ0 u21'{!7wbEu}`/c4Io1B}гp;;>.mdQLS}v(E6<٥7  a`] &^6Ͳz:Re#Z۬[]KiuaexwRo>8<x@q)[aoV s7ފ*Dƃ_; 7X'bl=yz1t8 UM]KCI"kp]$?UM: ~:<`cA={9̒TGw^gi ҀEc ?s%l43M&9y{~iYA&#W{FG;h`TfʙךUI1څj憅v^y +?jgG}u{p.,^ZnɀZ""$ djR[7_ ;Y`݇㏡Z̑IՕ\U!9 -CfzMV wb6[MS0c3d} n IL(.1AS9%H"N0Tͳ:*tE2U!`CϰC>R[yscǀ$AR (y7! 0]8M;EDBd;Zi'tt?*-=?FF;T'a?$1[:Qn#vjvT~\/ꪨM! 7ІnNI{89oټ q7Iuc1} UX0TJab {6Vz^1{ 5𾂆?kc94fA!sh[6@!:*JW3O4'PxҵZFP 6ewyp|-OLXxgeLw=1h)0hvi?7;~Y}m7s1)j&]qY׈]Ay32l8Uᾼc¢a)le `l,w9|("*3d,*MpwPީ ~&y7ہS ma8L1lPl|R=eC@g[DGhie '>kqmChH>ל.A;| PeJOUhN1;yg Q'n~d\;!*p!E@' xz[fU5Y`oeb#N 9p:edC Y,2<Èi6䉞PhE А m'( jd J3&A1'F\SjLc?q}Ňy5-avVy NU:cghE>KJzENw܉`4360M-b!a<͒;64 P 􇧜&&T\#+~ \"'S1.ǕZn0~ ::DS'sjgI%r0e pf M![uǫt_B`j)\`G$#]I.Y NÿٳmnhӰKx/@b$q);L2p#Ϊ\1+{&l?]''R!WK,t)TU/k!'Sc>.܉F3=NP4[8*f19o\3!& yQN7FG:@7e{H!0r 8~w䪃jR%>-ջ*>YO@$6zћ_՜OAX:ƺIeY"y ;L|u}Qb3Q}ũ?0>~̷5 i񾙂;CR.uRkBڟO-±=zPTgYf ^$BTOb˂,x 8S !>tGbeXXoΥ/E (z~cdVڳ~/6CFfz;o#Ft unCDP qcʬ}MNy]<;[4 p s"uLQF9 ~ea 6RfR!YXr$\dZ?n,(WDSRbt"h֠I]-zwvD爸 aWaFCufiN7bRI3RQVq,ÛˠD!ٸSxr.`26q{~(s[kx,P2/j/I:ьc3%h+;I; n~^l{麵\+rr괰ġ2ul fGY$qraI,"t#`~#Az TDW6UF@/m_0pksIX 2%Y98lj-vz''Mj-biX=;|bJatKkrtܡF2O]X#^m]^592VOλ*eB [wΞd9''ߑ3kCЋʦW- z d`oe]/J[K' z_[E*MCEáPAFb0bE6߃A1 (G}nH}\6!*IįJE={O]dtI'ӶRG 1%X3奢30ʽ|{t{,*|#HfkS/nޔvt_B!^j-C[_'DlS]lWJ} U$rZ!dQ٩ӈ!1E A%0 ր-yn鰳3Xn0CErSO{@У߄NП82Pט䘕ZGbϓ*j>$ͪ_deK,Y{ݪiwN"t׫>p)V (!EZD`efǎ^ '%Fs&\#cilnCqy{$9\vb,:|wiBG.3+;$!6 2f9k*(5K\B wfos0cQV@y+IO6"}~'H1 o0Ĺ۾<\{U $n$<-eX gԏBk0Y3D%#^g#]h2vM>OߋSU3 U` "GXD}z̳'#=M$ܑi%`Յ~@*7u`& vzĆA S0km-5/U2L&ֳګB:h_Qjw9b[D cRR/AZU ̇u0ۢ# iY@WjhaDl7._涻H=Lt֪ykV4;cBdl*i T^~1Y> aZ]jc]FGV7_!NynMry2v<DZ |_hs슕V!Fftf zQJ./&.y.@Y.CjT_ȑBcǚTk6 *S- aPB?GyΚM&߮=&̭g={7KQryETLy(dTaGX֮6E'QiL@9{tA `ML$|%ɉB."_/ߞ͠[lҥHݷCg磒IMZ' e0hR{P1FDI'!3EC:!x][ d93 g1HM26t3T{p/zC3fJsw8 u&Zd83`\aBo.fvٯg1Jc Rm&率p?N.1NH=#bIHY 6IrG/1pR( X8:M45VұJdn8G̸61|5N5?P(%)Tp޹tRFBqN^4J.k2%hmJ7`+{"/xoS>9[aݰ GweL/d"ӑ@tӤpAĮ-8ݔNϵJHuy=e7n Lii?w^]>dU򷾕h a" -bRҕMX9OF68LF)WIT1 gȗtLV1I2tv!suJaNL ȽAM6i"78K` ¢c@T)U`47w2>gqlz&JɌĕ*9!qHKZBqfגAyo,!^A<ʘjzxN |WW73OcKgeմ$'yn=D! VǣTw-rv}W(Rh kgJ G :,A:RJCƺ?#ghE8kb!v Kʁg]r-VXp=ySW/,PǿDOُV G3&`c2?FRȢ6y9: 5-e#ua!P=̙TYL 'U J#6<$_`i;Sbj7I1\U ,|Qe^m{xaBjvӨi>%*Q(Tkqˤwʽ=4 zV$s&QnG_O)Jr $qzkM= AZԮ⪪{&!iA)iY ވ*qڬՒB*8,$5{ll[F#xA}%I>(($!("II_֧DZ|PR,1[3b<TZ{E2$eeΆ}| EuoPr@DKF|۫(cSyk(N:u!V{;`62]Xosfx>kUtˎ^jIr&u h>I-;Wԧeh9|OA!YZ6L ͞NʳZ ^Wy׺60dmIon> kf82=7;=&Er8Y3f;y+@԰*2&g:] k`KvLT>'>udl|V_Z2Y[ҶnOc!w:kر ߉z^AodEE:-o!eT{4bf8,xg,`]o`~vGU>V$ g6! c-,V}ۛM(߶ })w`w<=fŤ^fڥQ"K=W#Ƣ=~bUhr۹Pu˸pՌMuVDhi%Ɯ}x{$q2aOّeM¬GoVf5]O/V5=NcxUNrhP?|P$VWDp m_vG62vl}C1VOuR$üc~B5h+\aAYg}e\ Ҥ viƤ/Y9oP KO :ݚ+D7lm$ixd1vYgR mm܀<Ջ۪XN ç)~j0JhH^'!za.MayJ23QDyx.=Ŋjt=d]})twGJ&ywDઠD3ڱfJ:?;Wo@dvm֕eW'CbFeT\vb*MSK-_QH- S u[pVAٟ69ȱ>wO&[zU$d+kw5{yVlSD?m".1xݔZNRJv׆vJ -6ЂNU?þ\΄/>Z-8Sd"`t}Tr;7.Cnr 5ODo5k P& 4ęne^%vk`HƤ0MWNNc-\k Mp ðhbQD& ^eb y`ۓmM89EaBTѶ5~1ű܏fZ%; - |`i2lc-Be3vҜ)2HCdyc9 B?eâĤ̴ly+hºFWe2}ODJȮe_/ُ ыւq!]h>)O#i}m{ܕPX2O _j ؼZ$yɪrKVOau `@d=hI`*%8zvGyRk CrGoL/:u% _! +ٵީN{kJ`mXp}/wao{7-]#ЃCan[)=5:mb>LuZ./x)ed?| ɇ5Bm rTJDhPm 3`VN3T."so&V!aLt{]GAxkWD2N-*}_l74%bC9l輜\a]Eۓoտ>w63_"8Y+J p9Mn#a}}i^aF(dY6G͞)U?6G:֋sg -5=kֳ:ȫדrnd2-w;44Hpa .<`C嵼mLML1l{<:Ni/-|OZy#z7h9ZVK7dN,H. /L&qAണa,n[W!|~JNUr,uZ $@VKP: 7㩒f@`d`&hKU-kIxc3܉!hunhG|\ 폢[sAIl<+DD"t ;X6nFl܏hs`XG"L8,J0,I _!G{9aQ%\LdqJh^ Y(yJ0ke5o&{C#*W>! 9RM$NXp1K 킸MsP2K'ZMNE\x3 UmH5 oDB lC  V!Bl>P'y\@SM@ASa_,la,(܄юa\_u O$.4 E$|M)Glh"衎 ˧鏼zyPX) $DƆKa&@^]vmL{{11۸ QHdRFE6 O=4i"%tҠƗDΗFLL^2O3c}Tݧ{AqvǔXdҥ/mfD>َ(xcQ<5mf>Dt6cC2f+l`k^0į>Sij7%0P|EˏR͗džTsuﱹlSh&@K[8ר4Hq45pd{XJW5u5׮#<޸lJ0# --5f+h c;  ՙ[ڑ4zT[BO>t%Je@-񢻳׻rC~mPn.ٌ:wu:^O:;|$f)H_H{&ԑ_>$J~oreCbFwُϗ F>pE7턼R;`Mǫ3dc;%q6 QV uŹܣy  4ݸGgWP)/JZBnLò[63'-WO5Nvjz$A׉ 9_FN{9u{LtLKd576Yes~6; i[ IyEJ@fPƔ,&>dˍ^埌kM_0Jum-k !A -8c2uJO'AJ{]MSVXt Qb,U~Ty& haTؠ(u_KgSڎCv$Z,Z0`~UἸVژlq.wDK3l7sm)2AIif% &[-W '<:XAȀW?NIkI2b*$^r(x/jxW?bI&\Bi\ļ%ÿyIKYh 0c/^#Avx@ mn,AԨݯԬi=Z+Ԧ)w8Ee,f_7n;.l4#Z`EfKK)| `02N䓳ur!R`b $ɗ/細1p1F2$|w!si.?)<,C5gBFgзBu-ϻӟ~}PKk|T4rX?ޡҕ QY7eWnM,_xM)F"$ŘC ڮg8DëR2z0“X(˶?wĆ:fGw(|sE\ffϘsPx\icE.@X>T|Dđ0ۈXڹp #@ʱéU~/:VgY+>Mj{g|gROS\5Os=!dN7[Lɬ9z>ZPm9hm hԎ $iC-nʗm?Ty%&!y/6I{˒6|/{6~ͷ{_vxF]r::b5>_xQZ[h42襩.w% 1zlMQ! 1˷f8w52H၏N^65F_|_IlyHނO1m#PQxRJ|U%38>kׇervKT[#_dLG:UXr>:ϭA d A{ bp?PxOoƍH yјc%D#ƶZa@;qtiFvAkR.Њ˛%FVW|2ڐ_Kl16I^^ Sɑ.U 㞅v]o(u&Bime'$R )^O#9plȘ~AqVJk d0~5[X[om6up'e7g }R JR%r:WJ֥4cuX?9Hf6Jj2 pFj?C&2kw^|7Mdʐ ppԁ*@o7WYoơܼI/7]M13틒5-p /+ ކ\U|\ 4V-aImYۇ|~cBX.˭=a1~Q5uRi)O‘E+Au^f"BK>Jze0 Eε*fX7?o˲P°}K K:UScrK皗iYBGxH1?{iNB(iSHqt˗1gznc$-b>@J^؋P"$VqFI5C{ZPx^tA ç,|<7.]Cl* +oRܝ}zд~bj>q Xo"4G8ڜDH2P1w_I8ގlH w[@ɟ Ovyj9QH1ezGkh&`Y˱WCSSGVOv$NcF7J+@qs0aFK6?4v⦳#*Д}O마sJ>G'>8Onc( 4!޻z!0||R}PlC%b-uu<%Nnkn#4!޶qؖ$۫Caj]gjm/ce6,Gx8 ”\MkcxAEcdg,l2't,Ή=Y6;j՘2Bi76$SH_$*[2բF#utö0%GWΩs9/83gӇΝa~.' 'o<-Cv`}2-ݖDl{Hx0od$;z0N ihWoϵ_UU9̖V@B8@1>ފhW<1EO8AnN9)]L_XErxQ.Y#gd'lxC䥯xD !Zu=UENyfDNjWAzzׇs#P?*iJs9(tؒrq;Yd;`@ !3Ǿ t@|Kz=Nmf΍0DngNDG\0$48%nB36_XK܉'tP(l-^M.(a1h@ԗۗc"~Vo&k4®ƐV$HuWPM#CRN9OHU~k?JSNEy:P=(ƹSm ZԛV"6Z:!:cx7$u.u>p-w&c@vS.U5L(˭RaU@@U'az}t4 +lEI\Lsu4:ƍs"VӔӬ&R}S.ᶮ6y0Xɘ]WD=M NE|m%#EY"a R5(tk+X4hʔV ~e{3~ݔN3xcH4Χ:?u7ڴuVG  uվą!`J[DA1h2؍[G@tV,JU HȽ}C~y[580i>h#"f zK:XbXHؗϭ !YQH/Sf=Ԑw+;^cjH*N2h0шi+,Xm=]ϋ&g Wg|ODML\ b2]ؠ-~(rD"N,Lph*6p t!tڙ?o[IȂBObsN3(#_nf椚+8\ AY9,3*}EF{mY+0qH7"薜ЖRڱ»-]a&,BbHk#k\އ~uDQ"T_h&J͜g|C E_%VZb$]`qO';P\{WWZ+WFsy̻~ygKɜ-X 2$'lng ,bErǶԃ!O*X3zi={xr_VS@TQpC]ޥߤ<9_5.o+O!YΟ L3 >QA,PM:8x_+P> Hdicl[Ƒ>$7L;xh 3<іTlyK.y*373ZE$Rj@Q>0"]K s51j 8]ǔh`u5Ŀ_=s 8+ YXFrhriN-95t^RYt^0Uj> ^~Q-hqKW#yJ}ӂu~+{YlS G?,k~|31ms?Jؑ2őe K5v ߾Zx^pQ#\ׅ>$ќ[:a|[!*u` ggwA7'M!`tu[*3#VSaK+ٗ5EA,j~PM׭=4xd(qH}U6O&/B$|rs Oaǰ-_\hmt4)L=NKWq 7MMT\EGfl_Tƞ "q?2IO5D.O,whQ/Y-Y[3r#$F;H7`bϦwx&)7=I9I<5>/1F= T_b;>dҚLMw.+9eyS~]=n6&bg 4(p^lr< O#kKpo6o$]`r+"AioZ}sVdRx! _t`'Hn6KߊSfI9oi'Uǯ= iA∻:Oѷ fnd:ozs{sSݾrFؾie$Nc,, pj`؎+ L xKga ΅}uQ[ G7H %6]fŸ7H銌ìӔ;"8x+MB"B&dίiR~+:T䩺g"O(8h7a`H1Dط2*K*Q.A}=RxaUYJ)oP;3@YCa;Zw]Yq 9;{IW}<M٦ +S) ~mT X}%boTO]>j?T0GgS%>MER0uh3uXM?Uuu8Zt#ݷY33/VbU4Z: [clmgĭAM8$o~p|~WFr;>xb] a0BXr?|>Dn9nFʴ48(I%X<ŎmV,)+@{q6Ck` ġXj{9ąѐA! z*zHͱ >̯_ZSFGEk2# O)jB?e—v [aE/AreZ5A0 .a"~e=K6*ib uJwRFr$T!cH)hoK7`?& *sY}uS/~ywLE]!}P_7.&9.G%k^tvA0@]u>NHePy'h4|jva)ȢutЯW~[D9wuCw-U,%,6.i297qTH&0|sGѕ!|ȧKo*=e&:ayaˋa<ź1 c>o*w)c*G1d}CV4; ȁH'cAtSπuϗd[6#kɕ{t*(FIdnXa"i߇f<mLMNSC̓`(\ām0ʣ6J:{b/>SdZ9 )DEPxBJXF‚>nV'VŰ.5}M}+Z"W(»X;)ɪ-*XSV#(!\hߥzDյmb7Ka"q9%3Z/wc,=daMYrg%k1,ŸٳAhxIaldu0x~dǶ";]EU^XMKH`\ɐ+uv"@}#JT넞Tqo h͆X&&J ;{|6 <Mw:w E|lE*@{γ;9 "zQTo`uyύ})\do F=?b4 OnStGɸ*HhSx{N}9 k#h3X3Osz B4A'9YXM”]0XZ%mr!E QTMzeÄ{y(fwK`c$9Ep*k>mNN_Ovm4Z9^#$:8+&$ӇWґf`-$FaV2HCJoO\"u|؝rkG`L*&G9֝)1prj]vѶdQw?ɾ2֪:ʔ~j5;MYRRoVH06"dj?C 6cUM2= :%5LbdnI]G=l;h`NЛM`IwPMe *7i5q`vPaB32pfZ h-L3'd4AiW]nv.} HqPM3jC9Nv3k7c%Pypf6!dy]uw3a05(djYE؝nE!%-+ ~>#͈%@e#ㆌ8z%Œ&(ϜٸۧAMExC|ӓRHid'jQ >F;LΗSe\*k?,} JuoX9|d--/x D?"~u2QA@L 7s'*=m8lC*3؊upNE"ګϮprrH=4S!c&>>]LGP4Dh ([ B!4ˤA۱º2!eCE-bm~^evhfY ÿ?`GX)ZusOw,shTl> lN% /%Lt X,y oz\|\ښ?/S ``P-Aqs(Hw%=s<:&dF}K͔Jt+227Yݺ )~\S^v•`.٪RRue_'dzeC+@!!Ύv]anv2㔉@5+ŻuگEG vK="?]Q e{EJ0OW+dt<;& r_A)O+Qs|tBcs%mՖ(U3{^\'L=H\%!o  Gwy*8$,OOe0P}KzC@{&[%vNC)JJ'K +C;id-\ &f&ɓYaö7K}{NBˋO5W41Tᅞfj>pc><|ۻ3y9; RM|k0#mc( 5ަ|B%WǓ6 Na zk)֢= BAQt.5\+Iikˋv+^ ,@kE݄ONsIc}}"0 J <%Q@[h QuJ7Ɋ)P.T$RL`C2mXdIZN[v:H ՌE ~32ɐtys 8$;hZM11-%YoSImI8i@&״E6UYŭ'O(\T^y@{Af}`_oZH`B{⾛~.VBW2Z䑱 ":ˁu0¹u@$CDOR]CE !,V6s'뭻 *eꓘ)z\GDQ,J] D[L5`E{uu0m2 Z֣~zqٴ==c4&\~v?ф񹹚H⃪39R u EmJC ޓ( ?.lnU,-UWrS̀i,7Z`X5(I@7WXY3{8!44vF}FXmc{2U&Zҗ=A؀Eˮ6=BYS 22e%͘ZÍ*Rֻ%vzSwفV)ӳ.6:k+oU ܹ'e"cq=WHƻ#nC0[TJ"q5*]|ph*Ci}ՖV5؝ܚCY1`,w>U!zS1ԧ0d?Dq},)45_FMgP4ǿhUCO9Q @0RBsV7g2&—5^ًzD.TDTky]QaFU.|E|{5詺O`H^ac!iJAEh;ՇԠ2WҖɑEbf*.s􏆆BqZh+f=ɀoj^wX\:fe< VO[(zTE6|ݺ4P&sqE>4Qrw#j)w|]w^;֓!víT5ٽM05"y(H1Ԩ ho&Q*~+k'qh6rRKDe79B}Cv& &=+J'W\Nn ]4'M>|E?1MzR7Q~S=R[Nu>.m)x9}#|Bzmyq j\i NR^@_b IqaH# #42ͥNls0R? _*DC ֧kSx/$L%PWR ;G~g;%u1x 9z.Dgg <]B R≅t)O9vS1# .jm07=|gf ''wS' Q݉ ǣ{=CZƎ; @Pm޾jޝҠ-i%czey0?R&,NEo`lH㠡(-L/GΞ;"L)]e'ПسxyOgwc6ƳWѣbSNKWc58#!rWיEMOqO!xA%J$ц9S^ R"BߣM~ D1@rֽӝЉG6Ol!ѤbނTGe^ɴURU)-"$9"4b~..{-qkNUFeg؜f*b8&LE jC\=}b0`وE6KbYG rpX+OʱG?s0N_Quc8nk:7[#Bl(B*xb?cLZp`<ZϣR'@k:4NN̈́`oM7إ;+;/ݶ5_gJ;O]ֵ +lan9TH|Zr#x&(!#o}[>+*G,M). *w]ѷ)?OolHNG`pGVlrCD2<+(xZqm*7b vss|GS6Hi*~CIxAy+vH1d%Yd7fbJ͌ 0ƠP{&Xۨ B1$>Iatc>%R\U!;V~&IܞfNDu9eO.) "dуQ/,qElg˾⠎(MAT(!A (c2ȯc#[l%,vO|<ω09 no6jj3I>i͟_͹;4!m@,߶c;3S+9mAq"l'^͢`@ӺV7ijpA<`bed!`Dж}a;ğ"ii mE!~_~%e+ ~EΘ|T`z 屵 zp|yd!JdfCnx>]{9;[ ~֏D̤[ _UiyErP#fѴX_UOK-IBcnQB)3$jbݙJ;@JWر֋KUApt#PזQM=7,IK ]k?'Q>1{fkr0HG b\ؕirR+0 QO.>l M+>r+BI\tF[{詛 Y\FW L1/{ VY@b[t~Nz (_Up}>IDz6ߚ!ECBܰc qf%}]8d~}yF AP}!K*礝:~I&:{ @gA6Bt>R[Ku%tGJ{"M=V̶dmDu1xv0|P-:3fvQ]?zF;o./ۛ5\AO\E_{P:tXʢg=dYHE&YiՃLpe-?8бJNT D]'K7LGlh; ݅"> ڒ R#A{.^Vx(' 'VE1ft-*(1.iE0@S lGŲƞR0悔XYA˥&NZ6Ή#\]JtNy;pll@?o!4<%KbB5%q*csm +U T1+EA܋=Cɹ(?[a{`b{g{^g[J1ɡY0?<'An;J^vf%e*d{ݣ/+s?oWhdF)g8& OvW0:OovV.J&mgi^)Mqײ(hO{?>K2D5` Zk& s. (s%E7sn P w .`v~#ZRxTZׄLh~-[prn=UrDե>|%nH,//C,龥^ yK~ ^SqsOFW0vXuE'J 6j pڮ LD VcN>6X)7vT%=u ų:Mb~o%veؿ&#\sÍ..+KfZ 94Grg1NXU1Pس QB?)"Ri~3LY&6Kaz(JE2x= W}8'tk(+Tl ?K¸TlkZնRUg1d_frG "E ZZӋ,;n՚yuն6K/f(`r^:q"tI(>~k.{b{vx.1N}tf94&gö/Z'n l aDeDHlAXSYg$ x.C|sZV.06ɋT t5(wc鑡v'0Fzȍ:g[]V(`e| t7" pFVXÕ5kl;6ZB?~ ӱ'=͏[~uQf;Jr4q: 5I HG{R-ABF i{T)q~OͶ.4aݾjfW+tQ T-'6+}=ēB0aZ톢$ME`yտlKXہ<5tOHN#e<`)U;=MA`掊NH1 ZHUPM [A;^3|ByH蓽Q#gϽ6ѨW)/B,JMcS/{H<,-J<.8J Nl/g ibg|ȫe -2h Jdf!g2vn3uQFF{)+DQrM) M&+0zsjL<)=\{:x ,na+ZDF@"h>Q5]奃'x^6XXH!ѥSMsu;bvN. 92֌\M=MPyZ&p19;@磑[IZP3τ.0Gm!}7Fhv\ Ick]:'V礲q Ti\@ ̧tjWاċߗI1){،&m͋+<XǤ$@f3BD(t ᣞ˂.^{ A(nc7kٙ/׮&+C"Ae;L%PCI)2)d8 Q\[w򮋜J]zR\>ٴt=1z xADo[>ޛ:r'',ԈG"$N z]du9 !N1|M_! %?gjfy_UGgCݒbuy`! &UۑD&HNj?SpAR'Gue\]FzDleE:<Z?jDe Y^Pu.gBlw TwԹG(mCL cVٰ:$ץT+Yr7`I.{/ܛ <*? "jC@3wd:oYTH v2]ٕF$8M ? +G jlj\uY81P/-+^ZF{' T+H90jyx\:6zbhupM;Ypt{BSiv:tR~usvȡ=4-&n5(8K3nW7y꼒q\M.1e Zr!2&>/H,~.ιo޲FލA sn]S CET2e~WCFvU‰4pC<[I^{J'nPA&~P1L?Y9-*2sمل|8]6^@g0:Q0|EXwS',O,#g৺>H.䴨uAowQZr9\Ea_MFb[}ZbɗxM?ys7Ld6}}BuI"Pܜ#]xHi#Yc=Hڵ\+OjC_Лt{ XYD (E7ihu\=YqƘ35ixMWX}M$kшK|(5Xnޭe!_wW$seh!ρΖOE-yr/ٴJFᮧ7ƋAye݈W7+py2\#C#J.U\-/d$*Tn};%n*mVܓӒ LcpZ/b.ߋp0V^l.Ki 39l%mDtZdШ"uc,#2R412 ebWce~,Ajl0r5G7,'q=# Iwy)e˃2+vGVJgf,"%TzJyEoDk8 }x299@20Te^` xPuJ$Licn^ nnm"f:=Y7V@;M*Cpw&.L]t+Nw8\5z2p"VZKī)fHL~kcYjor%aޤăƎm9 u5BqP:M]õžض0!-:RG/^J$_cǗBWՠWje֠e*`k7$UIs"VLc흫\JW3+cX@R_Z|CHc񁇔Qw^\z)IMAw!eOvJ`O턴#+{0Ŵ9dG5߽R&^@M'6(ZnX(xXp D-c×ޔOS!!pJ n\?K$P#7qɍYYf~KldIceKD^_ ^ I!Y|kjqay ᑴQۤV [o/TlEdtM,[B7weUբ+e^c[m߻v-PXޚP7]l9z(3uXb-Ғ|GHppXx5֦҉ .s]hyWZu[_/ai%٤d+7|>Sa*+ 1_x~ւ⟀K7z8 J0Vx+8s͸2ɝCEγx3Z 9,Y.9d2Ug2PS tu˽ XQ[Z !A"B{gUy<٘͒ X UK!=_;]J:'èۮD<_)2*B:m3!H`I-j/dP/SQ'nV5WD67khDhvT>λ$zʑX=4#pur\+1û V`{uytiWkٿXm@ !bL#TIYu곌&6G+b5M/Z ۏJ6da+dLzҶ~A>E-;{;OA隉.*\{%۠]X{j$˽k咭/XAwsgk I2qv/IX0Bĝ)k5l) ETmN [.̎p^Җvǔ+,hFj#IAp%m@AS+Lg7T!vo:!8:u`hٗg߻Ġ [&?R )T7v{(d["2qذpV?$9^X55 kE%G6m:kNoqs\&^WNf!+Ů=):r08v%k]a`54h0.2ۃcs|7KX"O;f~fH^ ~RJPhݥqC^=߱I+eC EV h\O֯5:+ 2:ckޝAŎ&H9c;ܠ.>ZpEx:ZјN P_nSlaEPQ5x>]28|I/2 <[[*4CCf!% U GmSsϼG_^[>Gd4iv R:S ^k8{{,J_V:)|ZkA@x2ҶŐ~a`x)F+*0~<MI`#"(ávmDG,G_~'~tΩEO={|fZYVMs/0ARf [+тv= y7KjHzvrUlrg6%!b4AcWjZzl:[CЩqj&%ď2gH dy>m:JE~Ǚ!#dor&\OWM%Ee!1a8oZ~4f#jI>1ֿڭ_ǜw$.RxgI,{h`P=FA_Ǭ7ŽX'eS'u+~7.rJUb#)/FbAo|6ČZ2lyOӵ!7(~ʝ6zWEi!id,o<8^\D/mhk>?FnE NƙF]If|I'3=<ϽmQ;67KC9.~NOiDs+ u \8 kX[nTF^ M܀b gpf~K>gD^^a=bU& I͔^ĻGFRW~L[I`E^kod1ϝ [bF%El $B:%+Jhs|ԗga|YMIrE6 u|S'R0+~\r]Md H򬄪YO}eqDLCkUJ0)}F@)BtNЛg&|a<3Hx3lg{S RG\%7P "KIgB'^9٠ <}:jAsn_ϙ uXZYr蛦r|zC*w)}k6o,MO s?FgERWAp"2Ǔ1,HVzhTi$v؜5%. 8~⠻^h{}՞_! yEk>TUw_[Jض\ Kءw"%j NoD8+#,( #$.8+4fL#!SbšV SN_敂,q&?i\Uq{u .aGAoN#}8]di ,[sa@eORBĦ$6Ek{Ⱦ\&qB}c|ճkqGCwc)X^q j}sVAL̷ 48;I'VdGI)5@=,۴QI-J)Ҵo}h*+˸ .E!oe/Ȍ QUbU*FnRe9YAi)_SJmS~OJDwV:D>#A5)E̘6MC.IýOq+8<q)5 ALQ%[P,g7;i7&*̇?/D'ܩih ;7,j b|%0 bVPA(/־M ~$=zZ?Qݹڌk5$|?qS+vSTln\\%"g/qnC+C)X8zϹ=ykdKYj_yҠJw0ǡ|kG>-)>x(ٌ h,)Y>J */]M#L_cA[Far;eh;K-*+Yܬ.I(V-JWiz!l8N$ÅI]^-6(d{e^lUe`e݁og;1 %A0HFUZu'7l8G*3´;,#jo=bq€9PjLq7T2NRVj XV$TYcN*jq1PPJ<ُ/K1 /sԨэck?D[9Wmn 3x$q14L{9q3(n# q^ϼql u> NwhR7@SƝK<6I}{  5< Toq7} ]zǸɞ>:r dWdg UZL>5ۼ⎉0d& s|Ę|h6^3PT>Ԯɹ06¹wg!s4b2.`)U"ǟS*5VѫDA|y=;:wDT2}Iڨc3D w߶7[-b2TG5:˞ ݃kZkyux F.f aMPZK_:/ֹ Dū~]-*]el噞| [SsPÙR{ܸ<^xpQOQHe#O wMk8z:hP pfа]*/_oHMXb(M lEGh&!NRX(cEWo,}vuL(Gg~*rN_N`k?jx/H9auE/1N3y+|ڂ"'"Dھ-֥Õrc8/_DDu`rO~={ebV %"鏴\vURZ+H<p4iю ԫP^ϜjAc?Ȋ@vIdy16ϡ=君mk|p6ݱ|6$& 2)dV@ 苛S:j!} kM$Xd b^7oȼ9L"/WTE#xȢl(<{w=ݧyLH Hro٧.}u۶GPjA+$nYWzDnSZ:aH\QW]jFYG-=\Nʥ7ft"|2_u\GKU͊:ڲbYJҀ {gy얤tʩ eO9+=e4Pj=gLO\nl\2eZh'U%P #/?}m>[J%]I-ЋFJ~Ί,wOϛZZ=ߙsL#E: vR܍Dz wN2D#^b|G'ao~D#똧FdS˔#gVQ`_$78p1wl"еd,E_يsfsViW|kvrZ';Rn؛LPP3D$.?$?騗&;r+XkO8 9>hAZȩآt;˜Cݰ9I4 NBANی4ghӽt vUfo2uN?l%$'w|p瀗kt^IėiEL Ⱥb[^:6{.3RV0Dܷ}^X|\qh$|-M*y2:,j{.ο* ᔔ{ɔ%0 2;*Lem37cE11bLA+;̻ULX*aJkX6Z# K&,I^\}8Y3)~+va_V{!6KdPc+lٻ2 A״'A9ސfAU< \>o~ ?-I=r c@%?DsGFU. r$muC6~|Hf`IPɾ (Jsc~X%΁\ 2/HR!@W'f2%ڳ]xg P*NRi4/5/7Z3m 3ZL7ZzuyO}ua]H:\/q(C /_ehj^B]è}iXk]ꍍ(#g-Jk3?-v4LEUB4mju+?,ȃϚ2UVWG 3c#DW%e|h&n2$᷃q62 X ךpԺbC{YMGH7[K[$TYűTtS<:KƐy9f$<5B--5 (HR|gMw` bMpuda_>pCc6>뼒ut~cH=F8nO;:^Kh=U%P"_(-CO"e2XC{ D  BIKu}됼8 eS^̄pxL^;PDK7N*7cѲrJNl s=ꚡd[zz)#݄"/]֥wE'˨Rl*k֐J:(kKš;b8Wt jԐi9zvfY$r}iOltpGۛ9(IlĄ,D5m |#4'%1`Z)%/Igvo&w 3/ 얙gRJ4mܣe/L˾ULjMVAʫ2vjj}Ś"C n9qOC)$] b{ -X ԅ>Ø#p?MG>}xwG`ԟzÕYf}GbmlB2=dA9^@,{ҪL3#eU/#^* ]{ @}u_!r 6s#B rNcVaN/vڎ@qԫͥVH3ćj\t&{s'XEf<@z2P19qʟ!5Jl KGgY탱ʟJx4lxrW˫yԘQkrBNʉ:{쒈R/3 |z4s?2)Sf$t`$:,Lג*mo?Lxh)C0_`(tSu"ΎR 6UOoULXD$?Td7| 1[Q@Y[a|?}Ӧ<frioJ,#Tii}buɭ:EBp- +y6#*GD &Ƀqz"x Jw6aO fjgˠr.J0tE ?Q*?Ye|&CG%P:m=#&xe/PnNXēXҶW+D;l>15 T,ecT2o^kOJIp׳^ @.!,Un\L,5v#T bERAU} }ғ0 4״+3 ?|R]G33[r?؈Zs2,VKQ?7/B46K(y(' Ã]y\ե,|׉w&g FHr]qK-OƛI=g>#@EHiZ&߻kD(}ZZfNmo P-- xaJef(9Tlmvbi N=VeQ (uN~ eψ |+m‡/dz^et40NwxRYvIibfr~b $<÷宧l>8ٽsl4"'b]߿΋wE[N̑^$ [jÁ{-Q"B ;bgŊvVvӃXul j\zbځɦD C,#;'WaD8nal QBƈl6wevf]散jbg}=faN^ &Y5e`GF0V&?JEy]L@D3A$bNM\O Yvs#=w`nV:6ڱB$=9@mFArk5yXy;q V ]@' .>A2Mw0e8RǤwU4˸ڦ;f.]{@6jvc&mHA onO OœTJK2V&'yqLfP(SՃv1fiO<@9!' ^?ENx D̓DI1_N6"dq]rD Y&*3#KZ%U2>ohRD0t6;F-G4FpH9t%~fMp@ "ߕ#4J5W}!tW4U5 :yw ~tD+\Y[?]DG֚\KC'8 ݲ\^(Fde?>PY CTU^UfG,;7_1ڱCn1sckߙrozΉFb6K*]CpΜdajn73),*Ok[B:v]~U)3$-NB=L\Pi$`czgPi>$d*+aN}o)o6,}Md)yC|\10f9gZBypz>Bc n^Et/1ݏ< R)H%@O?ﮘA)~=dƫscnA@/J٦+fNA*Y<,TfJ6 ;:+ȵ j!Lu80־˫;Or>4Humh|w&N}cwEŠz??r{0=ŕj`)\Z_r6se͌[ِ4$ؠ1qSrSA<7 >.1O< 7 ]x/ZhJЃvh'ݱ^r(oPƞh^L;P ~hQ$b%`z1*]O֨8WPtOM!*ÊbAx:\JP( `g wo&]<6V\ibO 4'ˇ O{Hv(IQ[&j/S ZELjIwjBQxY5\m:cՄs5i|CL.o|tUKo%yTWҜ"󯦳fHbs<v3FPȢHZ9FND7u;%h9 =J#QxYauB*WsW`/$E4~UqoS .; +NJ[Uzj> S SATf+E5}t:x-.yR]\yلUD}L?ߚT8n1OK{sܲ$u4UBD;? 2?m αhڟ(8, ] ~y%}Ԃ|QbB 5uLt7WmX>Q!l{5 q:5-o H) b= y^:NjQdb*&i}+4Du?Y7mÑdmWI8i܄Wݖk\6:jljԸe/gg9O^w5W&~imgZ鐕SHG 3{&iD!AO Hq_H+ ݬ9SKTj\EeT²~J>/羳xbr}[lFN6LY`ro(pϲ9~;*35{q ku1hUXy[3隙T7|>Tgl&0g9*tc0yJ/g %ul5 j| > ΋دPs3|< QW5sʽ׎?%r%9eygz5rPrOL2AgU./Z&9KLuS;݈;=\e.i":}^i saz ܇نI,r& &fFnXμLc#f Q̽ Hu[,313C]zR >F!`)更EÝq~:vG@jǀT 1O$xX;]*)S';?4,6p!w9$x}Ñ7.tBVW^F~ 8Q@63%%C\Fȏ-8q^s*?=Շ+iPc[9eo֩,<*@dۆ8&2Qu\.3[`F`[B}]q$? w!XVu0_Ol_G"n w+n^b lWmy@m1E(g\ ]pm>8|S3Cml$X. A,Y:G08pw<+u}0FR*NX@"^Z*$p? Nص 59-Yy84.-JZiIoI2ujO;md>2\<j T_vQӕPZIar) 2Lk<>u~[nmA`];xIho92.US4 ja|W͍IS+`Gkf༩ uT9-``)1ɏXd7F{z{y g} mTumǓ 8_}ƞ4VQQvXWhnhr[!jP[־7WI.<4(F>*-t[K+LUѾҧZOˏ 9/RS%?Q峄c;[+?SJ٩hj uC@7PEipdxVuLUp{K,&.!~guӅԹIe9u_J@ݚE/|ߺg#02#G;C9r=+7UV Bwg maV, rQW > @zO9[Mr:\ 2_ȷU" -&76%̧XiZ rBy9a#WV5P(hc&xJG2z2 72 4(j+q`: 3ybj?*#Mj=nG%C+DU><;qu&k3W2Ĺ-AIwlmjN *#Ae'Fwo,͂LzAeH~F"~fõu Js9UXrsh3@tUP"ojpH֧(ЖwbٕEAFHxR/=ȢkN=:M@ݧ=($~z&Vr< aE_\O;d N& k{0( g$dF!hڈnxh3XgI4$ ~Y;6',Rd e ^Voa!X?NNJ\aL+b@1z{|K1&pt&9 +MJVxݲ|J {+S_Q YGR͕ 1!6DL\mQ=[_mMe e)*49`([;aiGsM3-3"C|KjOa},fpV$m&$ ؕ㦧iLvjcn/9_/yٙ}-^l  NI8٠6hU'Mz "sRIYt^qҙ8*Q uW_m~dT(%<#Lj/(PxM=zhKe05a@},2^)!M@ܩ֯?YOFG(GX)39XӿXuT-{'cS w-F2w(?2w'6KPkYI7E3+|/y# Lq65;,$xғ% ʾjǷ{ҶX!.Q Î*3) jrS_GqOqU'Rז$^݅0*v%5۽ W^ޟ'9+uxiU: :ӎ V_!wUb4WtW?4 [Vߏ6LGW}RYʤu/AxtЊ=&ulg_uA#N*dȜDm0 1[3=ڎND8oWhn7%[GG81_,~ߍSO^; ̎=DTw-5e[gMPę_[6}?$Hik| zaHj0 F6oP#㶟 pjĂ?xE@*l+:pO5;L$)'v4LX4W6B+J0gjWsIN=g̤2wE?B(?>猎 H v)o,oQj&;* Cl/iqC'7:>4['R]뼓{V)=K"~T ep,: [*D fX4&J0͠3MLxU5p.ْnFt j ;7NfX( bX#`Ϋ2<hۯAL\re t_%&~^L~b-\R7|YA#\xm?pY&-jxwH%hOQF(UIz_@/Ԑ鎼p%oWSp - 1oI5h#;џ=`$*^lr3褭G$aF#+?n^uIӲ1w=MN¾PePSpGv4BBzOTd2 ]IvPnFhLՅ<)=\v;q[zBNR AKS<+EK%%T&U`_ɀ'~a}_V)ó$P138*ewk0ZZ Fh AULհpEIߘp\T) e/(hk8zE˛G2xnݮ 41M<<8P9Mُ۟m>|` щ'mrr:4yFJ.a-;1p#Տ'gfv4b"ا]>U|&R.Z$`D}[SHC|z ?"GcFh 089X|OhK䇿pU[|)]g|jS" ̸䘅CW"]:!We5/reujzOD\":UйQ[&?$&5`P:p4*Ĭu^@jx7rzOi8 '/ v!̽vyT#>? 乁m]YZ͉NnEa;v'9j F&Ik0 "}LAeOtGnuRz"z`-*Wd%b4In~@Syl0%TE1|$z%io7_GfAbYe+Ac=56~DA\fvc&Qd{3uEpF.杝9/]4Ar*n "-DM첸̞FwGoL2'=M_a2Nq-)3pwÛ@(p%8DP ++_/W;zs|(Hhc  NUE=EVVPxAFѸ=g *Qq!0[/(ŬE }c83ӃiWRDUL@Sh+m ǐeGD(wWы[\cE4r"U*s߆@PRo bWHi(R:!qXH Uw0(!eG>|-<{iJn3JYP߶ދ'[3=9zp+nU_c:>y>)AT^ҁpxxմP9B]NyQh9)JFG.' 4ѻ-_iәGX ~WBH]hĨy5r+ (r>IY7~*Vt~S'}CX`@g&j$+Q{s* ڙr?K-n:;i2eXbm/pH`Z YatbԳw~T1/bނURc[lΨ׾蛿N؏;v)>2pmU^7!tco30HS\5&+PԨq@(~H^"b'"Al[ mN{>O wI砺U$#D=dMYHl\{ny/lﮦT2$<'wZ6y71/^3*ʁvS=@+?1ewp.$*Ť BCߌ.wWZ*ҧ{ ׅjK'zTq9yEO/"Smy0CWR !ެbBFK Jeȉ&?s=;t)q9yT?(+ˆoqa?vޕB=iRyM6eݽ[Kǂ–f;Ν5~<(q${KdhׄA%pd4\BAq3ې(bwP_Q/.PmD(;#RE#ly'H#ԯnvM\@hb+غi73uҰI+FHAj^ }rSG[ʸET3_"܀-i^V9TFϱ߳è n'& UWkY[9rjzg8wQRU~ IҜ@US();*2GfNxåoSlJ1.܊JX]8QJ dHɽ#bdMϔO}lOEy"[`U8/fo7׃63  ,zK7K2Oj4@^^LW̯ezӟqc:?CS_QFW%mK-VLeƻȴ~ K2,ٟ2b?'^<7QZ%垤9 E}"]sgSK~Ikd*5Pיރ]k:װ>J7R%Bn3)њfK3zAY*%t+e fGrI1/j  ϟ1MMyv(B]륑8łT>!|70vY?}G5V_X5{7{k+_KHǑt"pW49clfk6,[|ɺ}q3B#QV*s$e#$vYa}= '2w!o[) mjPe-- ? h+RT5oϋMÈit}g[?sSOǝh82CHa+}8sT1E]HPX)AlIvUK."4Eo|9Lx}XåHbv xlw溩8Yae0'K̰.f'3 ~Ref`} t*v4wY&StI$y &&R[nYI2%]Sxn /Y1̔- %{M&?' J}3 SWDI#9( '᳈Ms6uf]\ڿ4Vz-y 'mKH[۔da0D;T.50SyrF9 Hĵ*'HXUDv W,۠S¢GY~cV0ڌ:V} [x-4vGL]SDɵJ,_oew)A/dߞhB NvTю#c2+G|뿫*%Fboq+Q.(w0 {}r6PȁW2sxKÐ+' gV'c:?" RᐽISCǓ΂L0aT :9<:wS+1i}Dws+ʪ}Pk Ț+ZhP2cQN$ rw胍a9Ri1v̫3Uڦ- 1s80.frQM4 IŞ 5ߟm _m[X ) #EI7ʶRZbu#,̍Ӻkb=p*SVdJJ+8^tƗ-:c=GV<wv3(a眾jt. 2顸PfEEDga@?=| vI_<T#2 ={\>kf&9K2KS$G)rZk _[4:_hDFGZX>iVUS1kȶՆ~%馮$aPJ|7.׹#|3\U] e9wQ6Wȋ֯h%wyėUﶦhjM1l:6bO^c:@t\Ez$":)U@S"*L /l E]?RA?w ţTp{`65Χ˰S0ԠdE1LtݪQۣs mu5 ە  ':“8eoV8Z-4fV NHzܟLL#Jb 1JGF+Tn*YxYxE‹618֕ k:vctu)'&jeCF[ k%D4n (q;  P`KڣVo.jPbE{0ɭn4ώTocf-֧x_kпLsv&ZI^*6 OɘyCtL W+U[10hf/c F,\8ѥ(Rx:grb\a`+xR9acݸt2|irPqo`u`@XY6""So*xtyafCJ-C :D:aM"$j/^ޜUZ-|qW{piEhDF=jt|RҠ|1p6a v[+|YFIJx]DR퉞[Y{K9Ur4kw>,垻R H.Y 30-|h,RU=t7sl(43֙ϬsaJuBT9S8p[tz@nxQ-/Z/| izf&/I8 9ְPȠ2x*ض)m$)z 5Co mJ @4s)+ 4-f$k'Z5D`ۉ+C[V{]QRʙ2!+w?0cL -y>*CɶSV򎿶SL.k1pwip<ǵ=+K N.ajn?đFxiFAǮLY-$= ((I>{p',1돫Ҳcls& }/ɾ",,-VWO$a?|Xn0< f!Mj5䰻I$#4Ղw=8`OOסm̨l924a!McOױQ"ȎY눩x~;+൐Ƨzs ٵ1WS*tmVHi:LFFEV~+5ݐN~PG. OOez]54zy*Y/#捔`@BʄdwjTS3RCjc.}`g;L!|)a{)]\XaQw+>dy/xDa_pqWHYd£`̲ (`˴/;cXR9ppj*CLN:.̓'R,iAdE&0] oGe.Qc`f1/y*H|_u(>z)#pMD_fQ19v1J ۯ&&NjCUѿdɿi3AX̱Ҡys6?BQTPk:BEƌP)upTt=5?4Ŏ~?#`n'*51T&5jqccg-dQ&w|s '$a}"SzFU If5,>\B.k8'`h?u\`JNX&XpQP 1BRkLJ|'QB/ɶM:n2"`8JJL#Qb)[^۽kN8Ew99qg+ }xڵ&pYq#K}X S&!34Uhd(23R*VUAvB>jzvXC 6#7uOT] )+G[5j]- ]l#oT;f23%!et+  '¼#+-R 1 kWE*Jiе 14=__Ą^4bmF~s{B}z5 >?N}=9/:87fI"Q㍍ b{ZO^1^v؞:BF mZ0?>WU7'cDE=mӓ>сM}3'm\\J蜊 pY*L]-VKnb/ 3 RpiGi#혼Ѐ}H`gwb5BInGhoo;+3o@tl_s01!amKNėH0A7RFgX iYXHesG 8j}s} wU.[{ki_١~gu5܎h]Yrr7+LƊa[! Dۜb Aʍ@i;CKP|vI rNQM*ZUt>Rr O(kzF19&299g t1K<0 $' 2j}:54]*/-e B-DtPPZJϮOe|o-Zl\xdǝ9Tj5t6 oyΞZ1}I/KK..S-n,GhG"EnzKyϠji]A`$ôAr.@iMbd&:kL(#3zmy-.H]$4E.g50~Z74'Pnbw{wGP_vއ0#9lh[Wc2[kqdmiҨ(Xì:[2[o1!$lnS>i~G_7tKֽ݌QMW0 o%"BGcӤ{}%Hn~L+bk cRMc~ޏWIi_C$#F[8*_D!`A$at}U@,!w-Q.RZsj&,~OOh)1}z dv5{S]63 Y iU+j`"uSx:p8~4m#s/%BMYǛd ǟ 6XNҍ?ADڌe+r_}&$<ºmqNu5~ #;4eK]}5P Dq`~M6[RAY!|r0?[7ڤ( cswZvL*<66IeI9V3ԯF"|kOPSӡ!s~yKlV):z{)PMr mkG+KҺm)58/q1YHkNy)E&s*0 ~>$)|U+R{ @{۟$=FٕQT!@zGI]-p&|卑ypa'Z5R̕#.2Q7U\p F%Q]%ePw;s!Йs+j){WfJjj4G ȯI%OxϦxnilF\ ~i짂`)P|A-!B"#Pdn( B{#U>L5kTR())w35}A ~G:{U$OkDc62KS }3:Lӵ`KeL0ǜZmR/VL>;4<'=NT)Dz/'Kχ I,MHq^ G>ۮGxѝmP ^^APm{G?_un¤mMPЧGǫ5a, 6x#lB9O1FOzd(ҬXU +VL$DT:LY^$ȡ`'1NGuқY8j2t7SLV YMM)aY>LڅjZ(jRUax2ﲜ1&؈(cY?3i詣sK)T4 ̭>"1}E)dIvf?<+0s}{/`jw`.!Dرo4hx?L7!^?z ā\뙜=4[pDu7WpvFi ײ 8쳉iCE݇2T4zf.¹ { +q%OD]Z)q=pޠOIX' gGϢL^| > K]=+MEe[}Cp-#-k=KWLE#4%8z"PȽ+|^ ט)Q{kYdmتz}0W!~@m_;wrsܮQ xq -qE9= #ag|%LDOPYwad5ɒ8LA9|%!2+::kG%h-p,LW/wwPu'BGRR5YZ`ɛ-D.?zcq6R &8 U\ޓ߸ςBK1q.X/ T_|"f2#qٵSCYgw" ΩrI. 3q+X 9aS8:n^=!\+xș` [AHlI?M]fj|hNeeO3kz/Z`'BbPXnӣ#<rq_.ewA }WRxW[lGs=Z5Ɨ0A(ueTV,MDy3J !e%3@;9RI:Ƣ-[qJ.Y\Q5xPJx1wFM[fz?Rތ vT>QrBd@*4m&w8KzQ$q^j.'ʩgS >f7lkv;T=sHdJTёnqOSdE*!PCny|uB:F9nP."/ _`;O1گG{.&Ӡ5kg* QҐɑ=f66f`b') 6a8 1:kM|go傍@jWdɣF&?y/e⌇q CtHQRs&qIޫoŹo@&sƋd]0 `Uqx@o|iWN\~l_93y,V,k #͘9Bͬ7c/J c1\ĦWv? [ly3:p:~\׾E4 dRxαιaG]Z'h, &/74EJ-HYjNAB)SD9땮}ilT\]|3,-a5:&nGw:cP]},cP"ϊtzNJ_K"pb|&S^iqICNyn5HaU=44rn}=lM^yC[TuN!Cq?mvpK\>ֻY?hhg8|0jNUq(ҘP_zV vZҍ.֏zU@@gMN j{ \s8fs؀8dUqK(-eX5z:6` L}ؒj`D>8p|"Svl};->~U!aI~2b|BL\y5xD6 ,)JAX9,2dΤ!h tXM,>x/!r&hlhgD4: 2=ިVG_:+NOնHяw*FA 0֞mlgQPk`qP,Lb~+z'@;A`}~0yiIL7_3Q**xu Iƶuc}+E+4!UW[u [Z*jk\ɚNװʂ7+ G89ZN%=t6-ݐune8B!}H^ P`"Oe{OY*т0|DH3~ov(_=뙔 -2k+ f#.#dDƏ~d/ 6: QZb 1r7l ,P;adCI8牪}DI>iVal$֞ijWۓ V Az6G݁ZxE?/AݑGko*Mi+%Y) el0BшVR|#@Gxayhq#h1.W,2GޖTDW D#UX[R,i[Q4h^O2PPӍz^o <_4Hx g+($t<@S- NgJ8)!δ'81AC9NM'P!)>m2JK/R__tծȄ|4 ɑi2]W˹Y@p+PV98\|Ț΀V,#>-8k*/uWrl%Y/*c]G7-cIG:6 ph6L6k IeY=߲&;~(V(T@l) dziE7HVPۻ5 DA k^0SEUev_vV#"dz~iiSYΦm=*l$i`5Rљ־F*o犓K gy9I#;%-Pk?TQ,xq>F q =VGwsE+:c7m ud ., &I=tQմ3|;,.Zr8:~8ͨO $ =oN%`:NRyBD9EYb_whҗB Af^QCW7f=]xUnnb(L:3 lp3I`?ҚM=$eGT fiA6|^ʄ.iX@)ʡZc>54ZƯO2$Jպ S_I <ߗY] DsêOE3$vrcW7)MѪ~|Bðˠ–nAUhe 4!~uEg^y ˾?_^M** `WRt_sR@>iJKӡX<{WfCZBn=ܶ:V^nTڵ!'K`I"e% yW(TL1[4ΙIX& ZuQ,uivltkw]dEs+L3yW^(*Irsb@͝H_&Xv։hO#ڲ%P#ij7dx1c1ߡ;ag@uv w#vE)`^ U\zLa C-sEI!PC4lLՆJ Dʹa,_GaXk4'uq~lGha6hhahdA*DĒ7\ϛ=}}N.p[s $Ql&k ySdd/֎qt.Y 2Qt>.|'Ż~A8 G&b/ U\uZ r5NVѢFyZrD 欖Lͅ7ؠ2,0B&##sP2: Qƥ!Ii1%WGS:)r]x$+ ?얤bte$VVw@:~lxf>[s֝bovR`|=D5lBr_P^^NY{yXDgS>P, #*Af0-}*c峝alrҿ1ˮxlg(=zCkGs$>ҕT%<h8gCtju?YPX]{+-66h_9$R5Vqv5L34$}KmO\6&ydC5АP\/#ͷ Cݐ3BMӻqyiT\ȊS 2]m \ VVڷ=Z7F [?HO(NRr[ߠ}0БLF*sQ,Pt1 !};т]1&]7bEܞS҇ Y%Wg:WgQ73[ǜ^`W35eo٘gaKybBvXg4S䤷k^q% '|{@OPb8YN9w|9kfń;*4 UNET-!~D>WS%c[) EyR_Kn^9hZ8µzިj*R)2lir,]lN,# Gv؄qd‡r:3,q`o vόdia-`?N "IxZ%x-uNׂA|36hLnk6&~c r(’_;3>[7m08h"^n'i"CL %znY>a\QqXTz.WjũGo{PA#+Za6׳ǹq|#,AdOtW yٞ*0ar ?3'r\2i<"68ʪ_,#q }r[[_ʀXG/Tf-tRN1 qU3u#faBb;GkLF T^#mӟ7H"V,:) z1eJ,Ig|jQk;BY3PV6 oGI*D;p4c69sg$}Ei >e1ﮋmu=y:r3aܻ j;$XJm 1eȋo|D5HCX,d~p~㫇"g[u+h@2I| с0'}Ob}p~R%e])U@>VC;|[HHlϱk,7$zT`pNK6b/kp,JPI)6ofQ:&MMч'PhsGJ^`>+EX(֘s~xd)y!Π`K3w.~C qCO2dTQ (>a[_xvy1A&%{oU}sB:lWCOiqg6WgBɞKF$*e_ZtՆ% &7a}^+n^W,9,4!e9 DK&AEn|ozݢK)@!<}X2B1 7^VkCt?h~Q L1-`gՃLA# 5/t~F{zNnź7{5QS=Y@U֪[=WR!E~ [N+{dۭrU,`_ j%>@ޕ@.eFad}Z2??#ʐҗWi0ٻhJAbgk!~5S3)-H=oXʲoc]-F-wZd.DH9Yq\/M u<3G'|>i]Tû7SX[%QMyV3@S J2Ϫ']YТ)>D5]m7\c1 րV,~\ B1U."uUw+.HhHad4K_DmgG-t'S}ȯ%-s-[~=7<3rj`Rp۪%|̗:j0NɉJ0i~eqWD@ so'*Su-@jUr_U)o_Dqi"/}aD5 kzY:Ns0Ddתj+kubn>s~Q [k *[ZE0Yq1O.AŹf`[d{WÙ! \~g2&pxEp"gg$oeL7~t8AAe+ GPvkV8![#&TZn$7<RiXg8CTgvKW%=%@t)MN]I}йvOgxM*ex /|+/T~3VWS$afBOt^+>ʛ3ӊQJ8\G`x?# lROSVuSQe ƖAG1 J=ܫ׸<;0(S(VYO`b~N~mO?dN?'_ӋuR無.8fAX Q,.^h @SmSl!6I~$s?WƀpxBXo r>C8x% oXpfژ,w~_62ڙ6 3{ڴQLl0=SdQ*y4 0Y !n,,W`h >;ƯQ"g1eutuX)MV00 )ʹH=#sXԔv[N5oMo|Ń#|g;dCVE (|ZaEsšRi{6`YQ@N?Ǩ.gϖJo`dgWPY+j 54:?wt=-sK/|Yċ/w=J|qajR1$]6cQs nʟ6t3Q ZϾ~Yz E]AȵCDo?!W9V'"uf} 0 > \ *f *}en$7"XMk}jcUݔ(SĆnDw湂VTr7s0)\!kK ۈ7: ʑUц5QdnОO^&Nv&;-6(GUbXhVqX9 &FW$x3?.gno I/pb> LnKM |-ow!bʽRs?zw9wd[v9u})ƃE똍UxW0" ]<+9zYs ,}Λ5Is02{l:δd*4N  C19[|렌#ԙD}^6t%2{ \.0M[@4Tmk3d /v \I;#7)2I%oYVSxCc˳G9ZŔ6[!<Sܼ-_u:LMHn=bcr(7/F̓GY7"hRc9+2hʁ49/u!#po*2-PZmU #&IJ 5j\ /@a4dJ^eԑeO?Jd N g&*KSd@&Le͵ΧSN+l7#ړ(0T BEf)l8s #Q %10^޳p~y *q(6~*5YG. Fv| b~ 2S±{ Xfg'QA'\$#2L6<rd{ZڷR"Lf7!Kf),KW˖W qsMU`+\qYSMe4 'Ԧ7ut };Vʁq[Pu젟BlnB;^nIbQiLo\˪ge E08'@\R;bglۦ' j4 #ϲDv(Z N=ڪ}}-hl0GJii_8Zq웚e])aQ|,ʕ^w 'Ҽ xx3sa֍oYmk*J\ÝL-5C+\!M̳2#)\C))`kCi`*V\ }CG0L< Ҕ vn彳r- eU߽!'/bY f1Zlώ)2f> Hi}.ŭ5J(>MLFK?w+uѡ~`#*2+cQRjO8梸j$s|}ꮩ$n~dba~nE$qXL!7˸Dv X&J(ץ[A-LE\V33U(6 u~E5JxH2:'5%Qt2snzƼVn:!fwv M+z8ibF%,!Py.6vR1v+yD܋7Pf̡y-{wkIps.vYcg֘`$` C=$-(dj48ֿ014&y|wuBc9 INŬa] ;~/l}wJP9Cjp8;aq5htKmZ hʺ֐2r]0ЌZ2:-s0@K ?(c8q动/ʲ:4[ 4N$"I{*?]&QGS9sM Ҕ[+|e:AV'?9.:mq0GOٴ@P%biS@mhvLj漪)%A{J]Oq +\_V(ol:7"2f,!m#%O.2HuhtaN,"TN,hky%w#fl>aI4.*v$dT R⮞UQ kHRoSH0o}8gPKHX|6խ6in|T:G^ "C|x3"mBƑ>I/S +(qmOx_JdJZ3^I΁S/䭟|Vlo落 Tpx'bI-:J3HS@kH*3OD\D/HhAy@4Tֺ5 iFH6bocHA\< l &蠟k3UevfH }85ݢ$gXoAEauBH{4@GL7̄Q"mWq!/y "Vh*6VSX\-<ZMq|3ER:Ѣ7UΧCU"ght¥ {IXp{y\!> CpլvMwq2* kLmJ@2t)]Zl윊{_h+DO ePx^sr1{qz.fkf/5`Xi`^b R).?o10L>פKJ%,#7;:c/T;̙$MSsDJLLF> ,{3 <ҟ&D!j┏/M>>;vho)hh!Qk$bDx zM܎U;w6 fZt(".Z-0l߼V$xFuFes%OV KD9뼲fN|9քcxl= Au.y ҞR_1ow2[zw 3b] DjGq8b>Z|D.fT5Msqj°Ѓ/g#ܓ}5G*)㐨K:{Կ_`;RJqR/P@ SwJ+eBx= T+_N{b_M Dڇ[)-|,$qyP^\f(rY"&;7%5]7N~ǝ_A -;zV/I Tc/8d=ë17U<|ғy}fPBrǭ`1l f=:r=h?Oٯn_za YJcI bBޓ̍,C~Cqב*B~*z߅'SaѨ4۸/=^ܕ :Lpd3/`|6F]7O'Q_&aE[YACz2-cn)I*-\!~' F氟ؘ 7dΩQmҏdbd:yE{F3LGu0kJ vE_"@9{ R%-@v"҆^z-cTwc>E \$+P;1HF~+ٴE?ZTscr0eŔF'6Vz{ҩפ&exV.'o2D*Jqxe;Ҭj@)6M0h1;(9cPtTzV5kPJ{!g߯+WR-}`%hkjຐc1yhRź}1ԏROSiңxA~qo˴Y&;nR6p{q;M'>,͋_iFWrfu\2uZ^Vd;G0eT2`*n'E0 $uFBE(tট0"*GZǬA bSRFXW5+:C !c:ϿGb@lY'AV?. J:^vuu@t>%9+{zgN=}'3 vv; Q)xL+@ىG/=zn֑Fy+zCNkP*\XX7.1C) 樨I Z0ҒS1~|?L5?ku5X1*MCP 2#֫źҭx_=)ܧxxk69_=Q$}#Eв//J(>͎Y=u)|]v[؉vnk;!?Rw'|YbNNZ=˿#~ G A?n=6R7pVu@ֽ%Q$7< B[z| zM?OOPcECZ˺@Z, <7*Ryum|Md]^urӓy$s'wd{,6f3Şs8m-H (=7rF 3_v,ےXBI:O2+񮢸&f&L':\y*Cb^4ZվD CGVszit g0]6XiJZL܄R.:P DYM=2 ,>֧w_hP2[>npN+OCڴ5ldQeWHv:npd92-(-`&J?}UY?J\B J67 /Z.ԳQNnpb]J|Ib%z= 91IdlXUϋ\>W{`66SVjbs~YroWn VJ$˪rq5cslX6 (TuL,sрS)5zѯϳN~ϡ:yÃǟSo(Zq~iz~񓧥qUwdִ~|l91x̔rI6aҞ,eǣWёŭJ\jռۙ՝^B ?oQj 3j$ͳaP*[6#9ѕ Odhr"v8DxB۩eIq0]p߭'9MdO!wPf6yetZH^tr%m&j\Y]ca+bhE;A-G s(Z t$ vmf%b"4lZ^:[Ήz?+lޑ)yS<ԣyF`y}RAp&jztge11rn, 1 n]ѵvK{cX4őo?Oۺ5KaL 2,"d%11]5^G:Z`͎c$&%I4w}k@D. Tv{kq<lFEY* &LD/obN9+I P1jKw~ 1rrXټcKm)Ƅ-m_탸٩W.j]S':(//Bط3h~mD[r|`cŝ2$__mm{Tց4`gy~^Vqd[<-&$`@qK?wlecCy)Ir8ѻk7;^][+g)z`;)|oiUNCU9aLGԃ}句y~Yn|]3ǹL,aOj}O^/|=!iQy[$ a̕`,Y:N d+L dCkf۞)';fOvaZ./COd@pHN6Ɯ.%F;|KiZ*pi+z!?bRP=9a_31E>37݇^६?tV$Sٍab>ODprκE'M,6 L`"6OMou= 9 _z͓FA /Hny`DH1gS$m0!T#Eؐ Elf T/;VNuTiFQk1Vʢ!\aȄ1yqaOf R!>Si $?2)#^2*^FG1{Մ;ң /.w@D {6mɳu3 s9`%SXiIAX^sMyFQο}^'~͘쩁 V|)ɥI{])Is8#f?`)U8XeJ'ly &3"N5w_+v1p"(_s޻N=vQXᮈ/$Oڅ|[|lЋZ/ uB`e 2 ?ahi"oE۫cк:R'BU#)\uyfcWyEߵ40sRp2(^ɕ\= pYPF:Xn]RegFΧ!hmm8P#ՋKxQb@] {vd-7lssκYKkFIK:0KDU͏v[0zfsd 04&j•)єھ҅##@0SH\:n!)J~( Y#0 #q39[{DS.iGx1YǝG|2$sN /ۮE!n/#1RgL\Br8,!N]n \#tӫT7ufz{qH }~;(Tɢ)"hf\ +Ix*'z6NG"h_UԂ2p3aAP(^.Qf{9;;EbJL(P@ K#>{EnЅi{:n8I|R'՝2$:.u|_crCR6k~1VH#tTM2ilkct5nbtP1Jqlϵ{' Ւ>ل/hAfC2^6=q< =G7$;øM )ؤAWJ՚ z|,1m%.'E۪6w+ȀtEploSR{$S+.̨۔ƽn݋V/Bҿ_ >>vK@]^T ldmm1p1i*8a)(!Q\PfH}_5󆲳_{rglUDH^/jj$}-+?.euj% q2']3V7jzQ@M?),&oPZq3!j-}nEC(akKi9S9H(ٹ|I>! S-9OּH[£2iƛ~-HPM!k+lG!AM( dMBs-4=щ9l `(s[,XZhgHF|ƭYF)-ayϘ/7ܸ_gK҉EN?57L4:.v=QMnɕV86_?k+H>.W^Kc>FW`/|<[4#Klwԓ%ga*%5#|>Jv2}&VtCLq% |&Aad>?tHrWМ%r-LJ̋ir=EzܭDaɐ$!}&Ǵ=s&6t&GB>1OU?%VLa~>|f fh<dx#P)&Cb7,0ݳIN\>krOn*ڣՑYN&:cA!?6N>,tN-$'`7pK1ȀWj>#o sJ񾏰kh4.-}&XΎ o1WyhsdZ=6ڥǙEMV>Ҵ4vpptΐd<# ذGXK]AD?m5jkm^'L]gN,xY#'@(fd \¥2ׂ :R/aLg]7u-`onQ#֘x&Ciz)a^X8YgS˰hH#?UA3lg(N5\w?݀$[nՎ>pf[?B'6=7DH3 Mlr>a4ns:fDX{j8ۭ Q.1)5 xҧ(g͆¨iIu+6]M`iQ suwr=c-V[Bsfk' ]@gEfx&OIs7np'F'R\Bʄf5v2B`Ja-9PT](wmp<{\ ̏$Ut=t" V_HTIHf,P[S"1F^g$~,z23k$2 :N@0. fn*3 tȨj_oe%eAŕ*@M[S7=_,3; ,)4);2ʞ }bA`璫q\+D,6Dzisx-Ze4yx {rygG'ܙ/ըLO?'kξϗN#E߿=I%A!ߜoͰ`HMVWRI U[o5.wmF3cw~ $)$x=]Լ 1R73nҩ%}g(5#u"n^ؔH/FRm Gj&캸iҊ". zIхh h؉( Y@&O8R&H+A.] $Cl]4C< \N۝)Qt= =ȟsB[NF d s?MJɨLLovyR-GmV;=%8Ł(> I\%̓IzOp(3YT(o|׬ v"{@$*#)1]ąf)c_`sU ao\FGC (kYuuUt o8~nÑd/ٽkxA:=I~2P_y->C:sZ!U YIt2Fz+'#R2#>l?v gwe=GxvD8R;"G*DIs[B&Ơ-F^Z[݁R7Ok+ 󯴾n~i ;D{\T(CRpsh6(voM`v8?05 gr]]rU[.B^X. wvKߠNS'0{d=?pD] 1Gb G{NVki%c#3-Y\z<[cWx"NJDm-2;2d%,k DxZ_sX XAl;]9$1ߣiC ~s kl;Jجc\(m9VOmx/ʖpT .뫚wRO'O7$-݋)|>$ʍVe=ZG ="qǯE^ԵG+zZNnPګNz .3ʃp5(s3 B~ٵ_ @6c6?p#0:Մy K:yMnX۪+_WoGzb Ig!WZs-WM-`d| ܔWb7zLL+0WADX G]y&TjaT–^gr֧Hϝ֎䞿K0Ii~//SKqvhɇ H0WƑ~㟙**gKupe,<1/tJ2q˗Ur!g qx3d'S".AD]\p P8L.'>,bHV@1'pVv28Ϋ"d̚9t3ЅqHd^&~g$wZCH4uC™;YۙN&ɕjRױ:%ɨweW(b:avoy- J"ϸ1W2]WV)UXCՕ+s?ɳw < &f֒5oϰcL}t4'H&c',7κC[d͗ڐ~1ߐ;5f;+Hˆ陗٩:q?q 0M T!%m hJ,Z1xqrz`3k˨0_3?⅕>ڮf>_3 u[ՀI*`Yp:/ȕk RU3H PuWYsdX;3E7!xQeewL!f-P +5+0C~ F~bCU 3#wYd>"8'qù~} 0꿊 mC 3e_K~~D"ecn[=XVe-ΟQ9P>Ol~kh2vYK{oS\"jdfxX q Ğ< t0a)т_,cf诬EOnMTCL5힏֟њ @P*%8[{$WbOyc_{KYQsBZLWE֠\4uto ^dtwcwlלF90)@v}K"AΧkFO#: 5[4@ϣv:a>gnzMRs@F:g,d,"gO/ÌM_NfX{S 'KN04IVR?N@遳R+.;YPm[wNN_k1c~ph]Fȏ?6^fn Ow{>R( W]{%9 .dn{Z C=<dhz&ŷ1!.T[[(Qߌ\=:H~m yGdzjgYV.ܤ귁>g2El/^?RT~5i-Ɍ̧lzɾ \²PUA 6I+|Dm&[ d rϣ >Kŭ)5~'0F(^rwx#8Q )[fm48y#S21q% "wi7+xj'VQ ^|x *w "뿰kdZ:32J7T>N -Gp.a]$ xtņQfa|n:V.rAͳCg8|ޙ͙]vJr}'-5u xK!(&=(  EE4t%bK !> 8gZK?4ït\ŰWVFij=\#])"Zt &kp*qaGkXHR2.[oJܷlIիR!'"ṁ1SG|WGic !: "qQҭfȗ֛!:p{BƪcuDV}wW ?yZU D865Uynbj6->A@r:,VI5h v#"Bca"Ӟ軆"Nߢ Q|<е|Yɮ&ThP9Eaы46Gqi ?BPAy&=P|i ![|jwv$+we;r!shsC!&!#nׇʛMlem& (}&  .8m#Ic2a r5; |VYlVpth}@4ۘ'ktZ%IP)Rbv(5m_+&d͋Ě37*[QvE5Y <9ۺNdE=n< Jp2怰v2~K.*hYP0[EGB(]hU]|ڜ[F$-ۤ.ߍB~.-q2rӃ9Ys3Jpؠߗn!o1LXfwW$np_2]5.l+1;zN:CkejՍi .m4 /DG773E@>HqiGp;<'`ӱ*TF~k3H5 ܴ %%~-93D>Wm!x32d>j$"X[th{67x.fa f@c!20$p q^4mNo uC_F*NuKտ腆lx 7df'Kac 3/~D}zx@ u&sn~ݲ=*MqA(-tgFŪF=sB' \ 0z{d;`މ}"ά<Ǖ n֘y&\9| ǡN@5jV2]6CI8$A ޢ Li;c]sgUQRRㅖ6%zԢguq-gb*<2&MMrȬAL,ƔcIוN)܉7i 5uJt7vFc c^"x5 B45iQviGQ2E)SK{sA`F..OU;oz{ekb?/ߣuh7yꪁI%N!xPXQK r[#Z1qVl14˗ Wr+Ŀ'լ{0[W!ͪf5^9ko0C~^v8oXwd1Ȭz?ߡm? bW`ҫ a0DUMւO3U2Q c{'(Zo<@%cG&ԒֻmhMI b -.]"b<;#xp29& Bl':S (3-d )Qe~R_Q#Z0~gsl!XH2\Ku*= 1p`,Z8goIWXiā6_{MDo2sѧcc\[x:d'*sf~ n! 1Cpm4[9 _&IVVyLIz}G7E%~v%5NFN;Cv)KJ$$ij }+C֠̑W"Zˊ4 HOffq:kHKźTiY Y8Ċ&%=%lceҰ⿈BKع^>yuwCtȎB'UN |~I"KubV"a8<úG(ǎo@*.Wdh9%j;ʰ;}I\25(J-Ktkqhkڕ_k-l7Qy(sBϦU@=Ss溍?8pdC$k$bߴvdw~O:_.Ɓ[7EӤ~VMטȆ"F]w!՗86 W5ʻI rVuެ!VxG.2%pg&mϨoV,T:`g)'ǛaL[ $8.I;}NeO>.OS.{q^ sS$2Ο5_na3&>n3%h6М fڎ5V;#ɶ;=f\R4k:'HOe̗m;'MfZJY+epz]B Le.ω]`Zx(:%"c?*|s5MKdaԞΞ!5ݓ}PQ[A(I캱k| Q1Q= Egш̇Q]>O)6/5'czsq%}gʒ6AzXB5(fv`Wiy|<.`5!]=fN*Ũj\HZMدn_T鋰, Pd]ٰG@hj$Ϊ^MӠ 2<6^t'YjVAxᩗV\ D:RPOvּD]6yBKig\vuT-f¯.'geU PofUdJyApRYZSR<(Ѐ! x3\{f?.)~z/<`]3僪}M4!_&٪I$e?q4[u:o#!ct?R[CV6W2I(=G\_2D=Idme,m_ܚ5R9Jpg*8R_z?;oie{0/Ɖh@Ls1}\#a$ 2rxL]Om~`x֑n1h"pixG=PѱT%ކ{ʶw[.T 큥$^tDoO6iXea/q6 [XJRXx&` E}B\bs-5\up*$7F. xOM";: 0[Fk[tykNEd[Nq%v{GV \IFdo:@6ŵ2jn{!0,p,h=@Cl s""&*v4juaDdczn"9H =B~K,ɢvKe.Hּ4.ŷbve~+%r ¡_H5u,+RpU{LJ_;I;]:YNN!,3 6 Tt@F Yu@^l!MH[ZhKHDh淚K:Ĉ-#gl#bIAfHzV:d8To3zAC'Vnd>8-] پ[C͜ ,zxO\ +|TqYćn|,>fYaV;y n3?S ,^UODwɱ7JÞtZ#ȺRi OXI{jn}7H:`%|ͳ@5ɰ$o , H$ʁT]CXX]F )`S(v~ \'w@ A%53hQXNo"VK[Ak]aO`>[$+lb0[/KwKyҴ% >Tc@/N|[1[_;s[ԦPAR׌ݚ3vz앑;Z=1EyZ2\-PUP? `nHՔq>Yy \4k_|Fz0fʨFrNѲ}VCI`;Lvcr" L΢ѽzy+eY$FUgtBRˀmQZ%k4I:%>CU+1Sˡ} (#}+ha?풥O/6Dtଞ̲˭w݌4L`@vIT"?MI`Vݖ$c$mCl,hkieӫV ֞kvwx;i./KK\O6֏}DGTҞ%AuvGqo5E\xs֊oGU'bpпVp8\z>U1vo4-mpdz 2 7[AR2-s1L<0a>fZrĻ#$` q{*'9ji<$s.4];R|5ijo>%;ܽ|γn@M>ʀ⒓BZ4UgYܔY[pJ0j֦hn^93s s#sBy%E~XƯc R u_ͬN")YLC 3_{c 'y< jĭNH7~_6ԔfVM'` ;'4R+:om7VNFZ?ޡ=߹acjOYI;XMKC(QL4݌\x"g9^v4Rkewߏ,qkB;]RM@R >`HY@+gUwJyla4@ V:x׾ءBKEűV(zMܫ|˨ЅnK~ihg:vl \cT5ӡvyTd{Z1%IBXV MVՑp^ՙ>} ;Qp$GP"moXܜab%I{a9炙K=)..6J{]>ٺ(:QّiuQ!<{ARox'JU=䡶jF gb *` aDQFlq$аH^:QXEcZ[IlZ~|t 3w{V)#x' a[57X B#~n}NG5f6|P/y4#ɊP L0<ߊJ..+`J!emis-@{X@-d-IW!]\$0Navm[>f_51 u[)P7 >ئz?~d T <2XnmօQIy!qBjY 7 wX1C+ J"'Dc0ybd)&oO?kow0H)HPfeH;Ñ+]R t#'L?}Ì-{kTC}+#.B-7I# V e<ܙ8ݍCHWkzqo0iHZ#>԰@^-R Un'qʨ 9{<ҕ4eA 8_Q8X.Ցx.QpR Ci+ 냟@\@v埿lk@o]&lǔ#lUɉޏZLS` ɫE*Ol5)Lyfr]@9\m~Hؗÿb|F=@|o8S#`*!C'xc$;dX݊Tf$NWUY I?uw\ǧLbmN%֗F'9RrzHӹ_̽z‰|gתބ!YsX7IuAKQi%הMsPn 'H[/Aau&+nM9̵=0<2GrM=sVhZ Nb+vi ^rn(ԥEpoi%wg~ߨ ƙ-AdM<\`ieE9"æJ2rk5N] E>@>oFt%:qyYm=YZx[f)V;urOe^Aֽl1bO(361}tD>5B+m-Tq&vނ9[߼&x;<(c|-҆-=+>$nV#L:uc9g2 aTV=JW1WKe)Lr(WAoi$̥ܵ6䆎m;˳n>G1*3*lnjijw:mB5\"Oj\'k;O-uT5]ũ Lcp2]~u=j듟^0r>\[D 2]`, zX$Dhbsڢ.?85ǵ \S}7=5wp&(GՁ\ݗYž⋳zz/WzrQAq})J|E_dY0 '9#%ztg<p`Vi7Cve'[@ "+0# A jR~LK?/۲cLIL]y4{uiX^wW>@)VbW`YΤ]=ˊW[Έ} $߄X.z^ǹpni(1Rki+DwEi;a8tM^ Isv^7wk*lj /]n 85 /,:3ʿ'oLQUML[xЋ0C(>:ݬ9鯺'å۝@Ά}^WƯso sbDxfV83k#] mEY13G\LԸdƓL7@tB b?`[C4gz[}]iDxћ7f֘YɚE|hGKS]b,en uXjISR.ӝINhkLӻY BUͰ>mM_f~n;@i.Du3)*{?/."bS ZqISJuwO$/c2SrzQ"%XYiJ«/mdVwT|". a0֘J}bST!f0HOWXgo @gbOmŮk |`=u҃0 J$" +8EŶGr- JHҀ?H4ߌތO7ӅcH)a$Cz ]-=P$|wXGR l 1UϐlfP4R E$x%&glx f]!okj%& ׋A9ŘU7liN~B_-QKB ϳrDspfP 7'E(ã=r@dM{D⒑; ŁK3]K~MK;}'3q,_MNA0UΨ Tbn}c#wg 6 & +il%ʒzkN (髑gSaJ2x1g:ٚ40!)]q)1gw/O ?!&*y0lAd:#Ŀ'-<҄Yf8(хhl7l#8o޵tγ>`z]e@n>WDR˜wnx5 ~Awwb 63,+H^7@30I.ܹhv8I78ob:-cJ¾#OME_W(ȄN\a'azZr|~̬BLCQ7}"sO3jvwrYԀҧ(h[=Ԩ+j(Š󸢪}&[B݁UK fXAqN+=ڀ\0a$yFOKI2?+OjB)" "^loNI>ATT1AG ([چ2H5)ѷU@ZfL{g})?oz0F%bԡ0W'rE$Rܔ&^ϸ2Cgw z6^˘)2SljJ).W%W~*Πny7h5 6ݰv9nrМx\DVI%uk_p1rCՉ7s5 M`^Cdsr  E Ȥ!EM[樒,;L3d~x#lìFwm*ȣ[G -sPMP#\0']hEr#o{>3q gÄWqMaW2\P.*L:T %n]@Sug<,ml J 5ij&UEqbQB+ "D!/sMg|,|z/yI$&vvo\%J6zC{n%lNfC ^J.y[ \Q&HU^pEk_rKz;_}3X=Ue-=F_%( |g >H:v42N֏l$ŵS67JLq:S2q\PD&e@=Ȣ|6 ZOjMr8ޱIĤcod)ɜB`Z>m4ib_k´b8P0>_/ry6\>BOLxzqg8푐'> aPv^$ ǖ2(K~UKc$3S 3̴Xd螨MZr3۬ GDɖrx{{I@u~k-e[j*[VLCK Ms@V)Z"f㣏&({aO)`ExW(ӣmK0^=;TTʪb4X%vh8R8г[b.MS'jC~3zG6_ܯǞՈ^ M< Fw\&Qd-3RbΉeV9?#l;FA[_, P6 Z!$gQ. `D)NK1!ŷ$+eI Ok#<,!%c"S_q>Fo 9G~{Ї@߳i^>4~Gu9H"tNE kj?RMźW3SI,{xp晞xyo۳@pIA wG2K%?GN:"ZELMŌ,7M^Bgm:-tѣ=^^y8N_s}t@%#[bY`_v7E̛P 3?\2 +7![rv#~Xa%yJf?$S=7OW ı Hmg5O>&uzun{ӣ6|kK G_W7#F\)U< qOJ%/ (Rr˾%:QTXnŇ]/-ί,zuK Ld 긴!%O6L{$H"ORআX _CUQm< V痄hțQt(z u-0\]1`mPpca0{ꩇ $m 33B-/OG)So,+i_ȓ-_6XccG &}xs3dP[j+>\8BuZOs2p!O , A<#Fd#_"~i1-gбഊ=bNsȊZt9_DŎ^= 0ڗ~ Fe +Cd7?",O[*4K$WHt D&&罒잂Y%`%?5-VNfŗZkh*_.^VB\I2Qi7Vm*+ y@GlF Kd 3>wYRi@*k`5$Xbแ37^ 9I  6u.&LMTkͿ%ѓly⽐|Rf ~a־|/pBw,m`~jz+XvyOY`DގӜp95i%g^mN[a愛 LmjI}Bm8<F+D6Lt,HpZxLo;(X:/`=>&/8B2[CxU5&:%sZg>FU UV_1n't6d$ 8Rp1t@GP@5ux!7&<0GuvJRW*;Sx9&B{)A'_ZvP,}&Em1,(5nAYS3%K\/bqʐxp4̐ƬǃW(*J޺H|58Ll@o>`Y6Y1RnŬ$@~-r ޔ?bF>b$E/Њ&qjڣ"8&by@!$._g+//Q};Im[$!uڒo B8熊' J -ݤ]ӛj}G 4ǭ褐FlޭmH2t?Z_8Ĥy[Z\2{-ԞH@pΰ}ԌT-aREެN]T#[w,\(JL,qHyزc!̭qBLA@9wR~lt:[}ю0ΖvW.W1Emzo_boFH@ hurR`w7PXty^4 гWQH{#>B-M6*i@{/,Q ցpccH&xFMLfp֊ n593ۼ=k -OХmj[C9-㢊 y-U/:iI&(jfsPҢuȥrݤ\&`8q8dyX! "KV^^ph#DšƠuC/5ahSYQW&FpWt+6jNnݼgWoS62p"' ;2,fTIಠ 65)dnC Ƹ ۲,Kf! 9)s[ s8o(MA-kB- 680}#A/ZwJcti-,-{%8E ʋ-ruYh1;{0ox4)yw"3y@N9aM,ѧĚ{s3EoQrA)BKd`#-6gH';mzWNֈ1mvDF&A/A->d.IiGv g J)skKltd. %cn(GIB&`$/=] C?I|:9SG/"yF\1rSFhPH= T=Ѐw?s5(pZ*5LF.K./qi+dl5/PhyW1f jɭa͎d,`8dЭ+%H~ ?) WՉع*TsDC əl0Vx\7j#?_/tJ _v `3UcZWr1.k$@0U8n^7ae;@B E)Tq 7 paPWy @FڹZ4\N6>gm58t T; r{hKTH_ٷ[1*MD7SNYp:4mY o4M+Ri|C=d.&^1RCͽr&| (",f Q Uԗ KӔ6X\/>->@~ij`32x,_Yg2yR =+QMr- (oܭq2aw J u l*2TfLDDR 8h/Izr,X2TVn6*] Pө ?@=!1u=%V-r}njLA!r^T|҆?hof"5ː3Bz[,"S+<ֱGIՕ<DT&T0@[q$#71/uF짡\}S"Y0zF/x7ή3 XX5z Z,Zc ir1ֲc:Ij}(jua]m#tYRQrZZ¥6pP=\E >sdXt[lѸ3jP$^L3Uk@iQG1ԇZsk,M_/IJ=d6BJAx&'sa=]ʖ s\պFa3{ 8 ?J9샮!C=+ C[?A࡟1I*| >K$T/jz#fSd&3xxqk=LU|RYSiHǑ U"MEv8I;6J8:B>O8/_ZT`J@Unqwa6)_`yIxӟI^]4i([;|{щYv /KE1alDM "Vmp+d!gAh u6Z$!t L,=^ jSw LM1D9 d(͚;1 G)Z JOi^H=z1p6_L`m%lD)_2B $cS75Kajy $|>-oP|U{A?,IMؗ_;榢D-+ڡ/W0A m!.o}ű(y-!6GyUιuΚ^DxjW[R\j#F·&m~\D?rëtXu:+|I ikgfUrݰl:@~X~AJY"$Q1 ?ie0O߀vX};MQwT?(K}2j͸uİxIPVpK(bUda +;ڞ{aYI )'d \ڋ,0`jj0Ю*!R!׮N[j`|s3s FO_'q=~Ǖ܂_PwkιD't=gCQTmn |<Ѐ.{`}u.MjsίwѬm%&z*l}w&Gd5ҠuiڊbE4|bv :z6pAJ50y,zH{wEjBj:S=#l͓ %p>lQNI̼O,iI?)=pձt%(5Ha^?ɏ2ZZ @yWLtC11XƉ1@(!Z馭[ vg m7$f:/o%Ž%$CE/vK;q*u4p+-45t`2;, on-N# +TRgǛpO>Z$'jYIϷ9Na%°L ttWD"%зcI0Qؙ4hڃңh-U)?h v3\HQ7B32!{SR<~/I\lC7 I_rqSXGubM ^O}M *K޷FLl.[uR㜍.cu/g\zKߔڈs<`*j=RAB+(^ɟmj<ze5S fQ ƤFK]lr}[, PvOMH푟nh*! (فU(zӬ[Fҽ:)Хl[;` v2`f:];UŮNyiڇ!*`$WM"a?+?mq)1D[9ow^_-I=W +/S$@azvB̥0!9|1B@a{x8ԕ~,GB(Vo'< > Z c%yW#t\qYS\BZ #]Ab&x{%!tWlm:p?dts/p3oWD َܲnE >!8v1ԓCa|(+dF Iљ1pL9t^˭<׼>ru&\5<7qbYH4s(þ:Fn.,Z&e=ϣs6D?[[7͖ƇtG>j[M5Dfz]{b{Aq{rlԜ`#Vn\M]-q։ Agau2$9aE= ^!PRfZ.[PCZѫD'bNQ-oF+3[nEiEb[sYo2uZ:oJ0p } 27vjp j. RNݣ`~hmCCw 'U7׵ fQC(Ѵ.P rW۲4͂! FBRqFc ~/{_о4| FOiȪ~Uyq _9 3KHjr`̴Ჹw}[l6#4#`pUeM 6u+WC($aUhĆXi/1G܁T./cf}Z3./J7PL ?Q 4fSҒ[h'Mo) *tKo{gli=@h`{: X@RmwbUnafq*&0|CXl饆$w2W5ym`6׃ UI êIVbs O,;G.Jh5.N pul2{/@E3v=ʷ* O>U e jXEf٬qt.:y { (*."\oB|cPĞ)0hCQj:$#Sv %5+ܐ] ?qULĈTeJj-L U5)YsRD$#xLݟ{2q@pcS~+HtEkKNzjy&J;#ja<% Pl}>V NAE30: $C0u"Ó*OlH87>GE3~VԆw57tlV;{;jY[OP.QiвFƂf6i WVa(@<ڞEt|Huf4#c֩Ӊd׽F4q)ŝ(x/~tӬI~v > Ls.f6 SZ:B M%gLPo/au X͐`aNܘ&Ga*_kAV%eB龍M mڥN2'g魭4/e\>D?P[ Ykzs`bum4r5; ~#`![(nL=UYmxTu`uldžz{AîVb\ӣe^ft2:/QN)YyEeԌ+M*9iq57ߕVߠݻӥ=s5m'ZQ] t(071;gV XEvf0.+iLáV0oΘ#[[xX&p4:^d<q!-a?Kc1~ew(%Z-"k.+NVr ܸA`t; ݴS "ޥ e bF611b%n5<@y糟ysn=tb ]vC N)z w.҈& >dӕqk{w\(2#At׉,#P zoj.LqbrEa#N x|G)_@ ][ڱ^ۚ V D[D"ba_ߚ?p|0R9ڬp rVC_i1k4KT$q]겫Xe|V9NF6 516^dөe2U~t EvuE_fR8#Z!aTxR-?'NױÀG)MB,c'D4\C,bmS =D>elҬzp7ѠIaG8va Jo=q+4BOHΪ:hAJF}dzwĩNc )8\MsV' }=ϐcFh\)PX 7t+?Q)][2<"?!xdw k.ZLP!$7˴ u%B:qΒڢH}[! Cؑ?v o>MNh,G "?ܵȇ:}kBh#H°( _ph?FTaE bGWNCFʸ }C摙P0 #%g\:]`M9妃[+B;[L༴ӆa}vqŶG(;7Mdt5&[Av׆2[sC^}҂dlU̒+cѓϙi2 |z=o0c.\[M|ls+ȱ|jE\y'T+kC{JO7T}z)$xz2- @$$ u9IlnI6a;b!Y:,{ƦC>5y.,I%vIm!姅QILn~9r2yB%p̆kmľoj+JO D?l5G dO<(>GrZ(5QYP~- Xs%;H 4WJ ~b ;B9nB);Ǧd=1L*k4NKa*UL@hExy9`I I>GL4$Z8cD\ep4Fɏ>&i94è},Y=lfBhҼ>-OVkcB)O6kd'"VJ;zlX^]جӮ㩊$g54RJ+ʷO62ڲg#7eR+ b,a!/੦["N:KPNՎeBV;VjU:FT*fFsT$l!ZSyu7.k2r9µ NR^BI/u>Mt{|$8cgR ҆qD0@3I3/% tn r#ᕈ 0J/ U=9u %={9nXYG-qc OHm^Bf^ܨ(;j_m5*FJ6}<9$uaIcbaD9b2N<PXhŚcVB K[-%]1Gctl>K \NUX7j =@6@.!g71gV[V|6 " ~tFmٯՐʾL5W}F0R1*ĨV"YgIf X=q#?rs48 y8g-@!@2~G0[/z"@`SorB-#n(Z!s,KL^&N;GS& ,Y`cj%wվ5 Z~r?~&qQgu-;3Ǽ"37FQ *mKo/G|Djrդ+ /krZȁcd[ݎӠ4ĥsBSUȿ3J`oPsgl{g u9OEz8$>^9"ۯ]CwWr>hObu/tmvo14, g3 nmts0El#n\o\wt[y1P ƤяM)"$"m@]M!2gC UDhx;{DC{8ihD^JtWnԷżgawֈ=noI>3NbRhoq]qE RU&Thl'#횡.悀gb}]7h#$ر%2p2: dJ`,V,6& W|lc@1J*RFQWaҦ͟s[Ezz 6bg$d^\i~Kqt?ygl(M,OhM94zhܢ7 $1ս}>R^Ev1:h#߽`%]As kF:=z%5h=_ݕAᯕX&!686Y0 ?M6Dat[jִL }nOF3=ќm"<=UZ*V(Ț^`efR,{ 7sP KaaxJ ֐m|> 6)S֩|E Y_ҙSWű(9Vpj8a1k Έ-< Ƥ6(j7PPsL[X0¢& _ˮlS;*5&¾ehZЭp~GM|ld[)b$-¿Ok*aC, .6 ~MW '?2|c#˻1cc[8>2V=L&h{] ׏XGOdݷ^cacy*Hpk+ l~Sp8VuN>DD~/3&wlrFauKևlT/JaP z kr_ef)vgMLe膌J@'I94&(n5tOVȷOq%̉Qcd1Ho?V Vg8jꨵ*8\k∸UFÓ@v 5e_#|kNT`KAE Qys$`GX^ [s Gԟj:@4BW#Kl )tb+; yGh(1o<*RѦ}^nIZaTǂ#'9Ϳ{MJfnvνԥWv ɘ{"fg8rإeZIJVb8{0:kl ,~\x22pYO҇To"[6W `4ɷ g펃qsg-H#p3%i|;A]yG]@Bz4K ֕@r,Q;`IbEi˴LSsX4fzs\´(Par|JbM-mo*KR(J7tF7)\x&[$ǶjVސw+fz/5#/0R 6Mxx YSo<@{gLۈIlAY`c~ ok.x>R20betU;$ Ћ֑ME13v ~y*$p\wX|+NAḍBW*e/ -P 3Iͫʢ#M>(ͲQk`QRVa F߈w 2 3;f|5:Idwu@@jj;Y)J.s}@p~"х{At$]a.*!:%h"F9o6JPYIMd~A>ȱJJ{[A+H^#{c/eX22&BD:WGλ`t՟l@H?3Ę *v*5OM !Lg,9 f)mzRt.k hByHzAkO2zuۋ4'ZbL1k~x|;,ƤZă(5sߨ1|S6aj (@HZ$X8C_ЪKF+_ SM=gXU29Q?)eCTӀzYnGޑjzя%n3ƹeѯVI?_ީ.\m\x4W 2Wֈ?_w`qE uku\z .rc+M p7Ik+m9R!Hf43c4c8x35-)mga{dV/ nJX!~$"?.z5& ixq 0^@wq/Uا:AǡALQ%N2UE~Hg5`r WF?H6o,7\v>A'e|B_h'ϓ1O (ڏL {g#'qֿ =E dwqN%1zPS RF:ǂɝeswD)c;/KߵB6AJ T7Y{892_v(#mwGX_7pej"0yQvҗ+%O9w>F.nciFLTi?J akkx9GT*^X-G S22Qi*ymh(0:WȠX͊ [ @RڨOt9 M]Inc.W( wByj[g0n ob^R*8mw8^u.F%p]ƗH nyU`#0+IgP+~渁:̯SǷL?Ve{mR/`` N2Yެ$# ! d/ȤdIwIa[^xKz͹u-,FlrwRyrEC믗?nk{SC{JFvL~:y`nuGxʄJG :.BI,FmEDYiICSvl ;w)Vکp =@] >$,W ô/aEV{ LW^D5MO1kr#Ҿ2V% Yۊ'DRLod+I/LᐢJ1> 6 ct^rǞ@<8yLE%Be,\"xtZ[_Yo@ 3.B ݾ)~"[p4 1,XWyJD-I4啽%BBn٨B! #RunRf)I>T-*9l#Tuxm~}i46r0G@ 6-i`h;839?ȉiS\la'=E+qp1 wÓ;@1t[SePҰnN)2ʏ]C |~% d̓OK|VhM~pNZB0kk!{o h@Ρ[v# 'qr&]5Ma 6`49dw r0J ?P_ MշVҜ'/NjTx;~h\Æj'`r4hC \E k`2GKošRG%hm-ﶍC9V}BJW2$kٝc3_]4ecyΥSM|IQ&>K4d <$x/e̎DFeSX:*o =ЛlotVmT",!Ti_<qn0 Lc!s"Ognmф/g~be:o9 ?PbD+qro-vq& FBL4JhH<To= ͒<=vWG#Ҩ^p6ax,XJ [wřj*_aZ4d4 g{dX8[9Y~+ oգ #TűpV#z( LCJ(ˡjx 9LXŹIc;Ŭ(x&L;j U\`wCAm]4br}k%]qNh >/K7b5o,(#򐄛)zȾygcd_&M)?P:f 15^gC[˾zBBGB9'7yyߙ?X?Q)_iA*[_Px@ p`5'%wpn>f υR`xJ Y'#o ۢ10y!ec=|J;#ٝI=WiWh (|$T+T1%=vx }0/@I4Zi[]y+S71j^4/hjҔB~M O5A8$N\u#CݭB!78ߖ/dR6?@ 63~ 5fu*qD-xy sU0 b+*.^ge-| Ӂ0.%+v &TLqo%'('^>wS#Qі-wÛj.̓R/[ﶧX|+V_p==jW?xh!pՒ4;}uX$]ɀ! DP]a`߿EVIB~e1S^Q8)VZr-q^ W{O|Ԗ8N)/Ă =@&KfTxv0u-1WKQ6*7&s$tf~e/B,By8sHe>ՆQ*(U&y7QjQѴ7BĀ8m '_@HJG}PtE_!-_$6_dA^d|H&@ vU:{8LX$58]B|Ͳ_^Wh|kNC~ \v>2FekͳWkO|4FAyE֌p'#`0uVViIܜ'ݔ'(l]V!@ 7/Wwc;lՋcgi<>f2/ja &7YVhnPlU, mr"M!\څꦨYDJ[~K [C6voʰ|[skPA3֞vmB#i{XOULojJ10TD\|Osk&ۙ ,:Lxq3 &4#1P9ˊiۨcYH% aT]Kj,A 0A} xn~H!ѥuר[dW@E4IZovU)7/2g3M/IJ1n"b:j@, Ī) p )vG2=ˢ 4ڄJH:S)Ót`2inӐ0KbRrQ3I6wOs_荢>OxMܼɽſԟn#qWg:K{0n؀C_*.ɽ a)(Teh0-SX1ߪfMߗV8d)pk*N@ fZZLSN:6sI_f[Hvږ2u]F4g`A#V .R@ӷ.2*~x|3w<( ;5})xdXӁdc9g c7=NTF;oD^ExZF]տU}$͒< :9EfKT3(xQ+ ,ƻݰoqܭwM\CL;"*s@ArI1Pm>Giy#LQ!ՐwHKAc/ {fC} (Q3cVT $4 4Kg nףbdCU!=i|נiK{j^$Ck)p*Uy;N:w-]r\?oU{֔dX)ҟ!EՑ>}8P4BONTU16SXV;J=mNQx_h=ݖj?ה8yG- 1tU| ΀5CJ#Kk4ɥ/%<p6Ttp&v4Xk1fy:?\2DBqG׳Sn3m`X sM"nL:-T٧rɷhOWkI7rZr˓A+QFj }O?ؔQ8W1Deīao H]G$;][9e.l TFŖhTr.ՃOQyF:[\u`7l4P1B؁+?y8+J$foD((avfI< Cw=EFQN\;m>⪀_%Zo X#Y&hdIٵO()ݲ[VH><_/z>[[*,~zr"'O#!;#}mhh@uKLG/9_(W; u12bj {i!m&os<<5qERVs :&8l'ќɗ/ī( hS9dR!0~a2mxto4Qr|֍wM̈́rbAWᘵL(ez+L[dۚbf.LNINd(73ݕTr&Ra1CS(U25b5 JeWV]4;뛳ҙN=Oc7*"wH ҝLc.j=&c6_qb9MZwQRKiU4Št_"̭瞄0ϱo+6~c:e`9 Bt' -V_ʴZrn쏕y[8G MuG2u`r /7os 3 l3ߨv !qX8\~1_o4"t6W԰y5,l>WZ嫬[2],_[^h=JjY~A~*DȊ1J΍䚝x>]DgreR(]Pv3h׫.VR."v2ak-I#(Cxmp5>m=C)aVH0x2^#Eky EuҩuIt(GXCP _έֵB~Sy6\{'>Ft"'½KρU)#-Jx&]- ˜cs]Hߞv(F2l7$1o'tTq@!q_?OGn|g/K=]·b K췵M?_MNy=A~8!R^Id3F[FzԝdInʒՄ=<'Z֒q$t!\++fYх2z创 J& -6%MыE~:غaj>btFWP/CN ?u )pI&' GI֫PF %l`jvuFf6T|$t=PhLv0-IۈDs9!rç]w 8X%$DbF3O#W.xo#㨫;Rcaj9Ϙ9Ԣ3f 6+d3;yj _}N}ePNSS\Fob*8y3K` 7}RI-3?#`O&}Bckӷ5Jiw Im s_=Q+_\gfB1'a$9ѩl@brj~8!{h?L*7k$K=M[Y۠iQH3djL,0ѾeJ MM`e"X-^ (gȪ\iqNJ?$*3eNBt%}n35{o]NXKZ!-,@V$ߘ ~~_K5:_|I Gm] !O uwHi_kl8s7w{H v1֣`A?VjaB3VlHl\b"T(IRX&/hYI>cTdMD16*̚GI0Ճ3yL(A2CԡqPfTw 9)I0=C$a&L*6qeMbw.x'"}:8 M!G,Tcf11*XgiHK6=rNo=g\=Px‚Dޟf >O ȍgM35<U#dD '`j-*1ِJ4=WX}TQ/T`bWmݛhI5I_:C:zʭvjк^qIT9b6僚Ge]c4;[U kwGdr==*l{ }Ҳ\@ۍEMl~%ÔT_W% ι :_0L1V7٦|M8>]5r}ܦ-Ea99[~34:eyD3hr4ra^ֶ; 24dk;R7]-_ÆM,C`"35TN{80_,¤e}Q_/˞Ԡbl.tL5G/ȡe6-vpߺN{IW}QeRҹ6be74׵^<@5ǥqV]&,7RKLyR q?^dr^'OL|q} sد.5SFqI*vɓ RmdЊn2_:+C0T7A:Ka uץH'( YXUzx"XUm& LS& r!]EnA2m_pR3EUv{Ur X[W;pqgA~i=6X"fNOCSjJFhˇw˂#o2}=߶eEM|yu;_Y-#nN1e&{7q(` vPNOgA`Anniwϗ(*®r,B7Ñ\ ccPdj!TAU@kG/E(ZɌ/EՌY7XX 2+luN:.%n{~Ro,+$-"X! }M]%t~GiXFl^E#sє2=0 z yi?6mfYaBD4>X3ܫQ{6lY;2(BVƽɩO$$EU4"lHYmA⭢lߤ\YUy:>&y3ū:#c=U'7vzLu>*~5,HJu&^oܱ|'5+C`5)J:X;1ձ/fফV2&"RD8$rؓJNgM]G'P$nEc!< }~Á<\qSw1/Yt0K.xxE [8;7C;!}$`M? MKE$^38Z1(J[y1 wh'[Z;9i'zT1ˇF eMֶGe%k'Z  ]oċڌAO*6m$=SAụ@Mw Ƴ@ʘks3u/6ϲ|'nQ4~Vajn jpe,?O4,CPlk= ܭSaD3bU0RèD|bJ,'0KHN*lI0u-7s\'m=T M Ϊh]|g*PJ%`q8`s~ݵOK fmkiEQc;f=vt=bdU=D kɍ&`z1(T3) nubL|Y-IߧzspקXoON/h/s ti=߳_jnS s~}R~pٟR郪t!ep3_,d܃!7R!ab1ň*^a/ͲX&ۊn.>z6Hy\O3n<'i9kʟ6!Х0ILWeNLny#@QT+2,{a'9lKG:} |]lmGʘat+kLB (8PDDש}(ݙ v1P3%I(%"nMq|6.y<~*c("uyXX2` Rk`#e%0wb9_D-{jS":\I^ Pof= l0x͊vY5t+1Mbr]S.SY_],NR1J O4R$P^rvOnKMEki̕3DI K9 >Lep (Ԙfyh3jcV Q{P]xlN\ogg9-;Ta3jfvx!qߊEҜfE$+< WƊZQg"' k>Ğ `=QhȤbd79(=6vLˡTI&.𐞅4R l?6w5b+9Y1$^IJ¾_pf2Ձm<$e~j&QD`_~ !̽_SGH[vX4$*$U{V0_}f߷6MJ5zF8/VFcn)Z eZ \͵fh[r_y|0OZcUxQ߷Xc"!nވ;]ӣNSמdnAD MW&Q¼z^Q@#{Be^ O4]hLG5=hq(CtUMl4CASpڒA]-PŒ~p$NKzV (OՊpa /xw$E=Z{eݦe N9g3o4-0EpRs3l§FR4X!X#sIkNu|Yn#ss/a]eJ;[W~79(Eb eT5`{cIX)T}=9UwMvϹjy>ȥ^ʜ$l ͜>J`"f YL3o2#j`8x ])U1?eZbAk9QX /q4#_)饌lNaHKN[eQ;iz1D4\=(/CQlT~8-ŤX8#Drnd\|k7n߳`S~m]k4PCmdY\dlZԞ<~H10dMU9?2HE zH,C U^D tST"秓%N.: c&[Pq) in$vC$rc[Z5"Ύ 9#ACcj^->nW$K.`.G<#̖\·=Fy֩K \McY|:-nϣgǰB{x չNS"OstȔ9,#Lgm0,7 ;mu#/(UZO"%ΖM;cmd7 % b[2+>óD'^y]|B&r &E VI…b(FD; [g$̑%D0Lp@д=i|(S/FpM}>`fم@-!_ bЋrpa+#{U% 5a/9/ヵ6ZWݗ"^-Mm O\5\RJ7=xf!=-?J<_!_t"aPh|RmUP b*9f:UgqA4djÍN7 B< 1/V\׼ VfEK> @/",6.-xA ]8L!@b $Sޗ2/&7IݜzcǨW|w 3^660#8o3dP ,`zd#A!G8oDBFm8oמK]UL#}a_l-`q~5[I 4Cd߳[e PA-5eor{^S(zj]=L07dF * U&vculyNl{*a>0t oAX4JBCĩrݫ&h ̷5F3.q8TZ<-SydSցK MbKCT-Wd:sĿKq4^' 0i&T|ȧwzC>s-08)/yٍ֡:뇓3Ǹ";2vHYAS7ϊ® t{s0;Bp^}/k,fN]8MN3w&LfuWwJNQnAOJ3[N>О 1PS Y4CNV_5?~ xRgUe 5|BD``-őCl8+Nd5@_tPVi:.V0fߙ=TTpNbdstge>O 7.ƕzvViYXbn+P= YfY1x'߲[WoiwuS&fw޼b萁vKhwg|z6q}l@X HY ǰ(%֜qZ,i=>Pb6~#9pC/e%TWJGwAh5SohDAcudLLkD#btWb |ڐRqJ~w(&"wzG1q3 ʑTu9P&"@F!$ӌfQZURr'5z&# |,.8rӒkfŤ2Cȭ(*ajO7G,B ٱDH_N6I<3;.( tt0f `~iPpg[=YVd8`ƌPD?KAFsC;E&(n,{#2X6Cc:,rvӃ5l+%|fƐVظ֝ZYŀl?󋥦Y%GO(We(>FnUe.gdmJ6 hX} X]7[V$R˥dFaan5'iHBuGM݀.V"!rFG,"`CzD:CrERGp4uf-(VNCV$m &(d[_o?o<`ة12AF]ēnC^oo~EC˭tnܺ9)|*F%$ H= )%`g KnFL$*X鬮j兿TUC#'$8Pi.k}y|* 7K> v}+Ɖ60 51F"*Ѕe8kҸjDt0؝%0-[LM~oNS* ;} L2~R b44^cb.Gf I{Ad "Fdҟ{I=;0'1L>ұ(zSTP^=u xK⽟lbҕx'928mcR%pwx lP.71vQtqZUv juC|ieܣLd勁$4gcRӦB?\ \ln>Pj<4󇾽-w0?Wd5\hHrOx/ )w{"v]AD]CEq`$Hj5D-,Oh h?U0[R؂\ĝ/hzՇ,[$F{P~)pϙ335'o a_4%Z p&"e$Au;!p:O8})hbcI]D"αџc5(¤BW~bY^t9]?75GO$a׮{'6}48fLNH(YrȮ $ĥ}4ppJD`M{(NKMA(D^+=rNGGRd 8h,w2u87hYyFQ*?#2?y9jR{G,(^~צNEi0bJ9.&,koQ;sifHGnyYp|*4QB>Gr [{hχn›pT$;&TQ&5%yc1UH߉+ˈ@COKC6|`o>6f;<ye׆̏ԕ}lSySK|#ZUI_e[@u3"Q1I8ިD(Յ譚cz#r3*2`ԗPg ytF:>ƙ{-Bb.|ƢcB Q@WwTP~pۂ&cª4{axU*B(9-b?:Sm mGS]UHбJXveHO!hC5/U&4AY wq^f # ai/RPtCu&B3jPɱ;Q?x5MV#o7;e+CsyBHaDٯuTv!;ēJEDo%aX" T+֦OF''1}klÞ}; `]]!;ff P/!=˵M|\dU6z",~+X*a>zT;w5Su.O?YƜPjB-]. 8@mɪz}/f_DY7lNugn^1vpl^DjӈnxAbW@9/0j WD=N';܇Us]t(Z*-l"&_V^|Ϲ\81˨# -@\s4m=le:ۓ܄x6 _!M0ިyAHρLF6ļ4ow '=^ʰd)Xr\ tzvvR1 .zU( tp F(E+LPΎA? S"X\gAQ}*fp>Nmã9&X;y+'0k:-drh66iNfgy\Rgj(ay\"ِr+~ȷ\M|iux&$0lƭьeSVoO"FS; +,$jV/9@w,ZP֐:JL@ip(\ 4`~n =~?۠}iј@אwi{=ofUkF J{(x2"by}RkƿnC9 ${`m*r.?`7 {Ͱ +!,Fx%(ٿy[y5l+ h|썧*:[1 Z3RYy5 qK!E*a_&V-znN! RpiI_{o!]u͵L-1rY.(}mB#Ny8ҹ Bg|KVh8eo6aaN9l36ι(Qkgr$#lڴTv9ud TWs[eB_`Q;SGӋW2CLbIFwq4l- jp-[1Ktxk šz֮9J/wԄugJL60wuTGd0.}F+ʟBUZ|Bȑ4A?J"MaQHs_]1Dz;w FAp A3cHת\ʊxUCA}##q4%~l"YLJXdX=<' yj,ʌ[6??>,]V{PkdELF"lj7].@.^-p5C"kfe<4*?$:}ճefeؘOkzD]Ǫ%&^cYv'?8${tQ6+60EvH04eln A۞/S`#ʇ^1s,p<ۣ Z @{]%P:U`+J2g RURz5L7 y23o›HO)"e9~+>`q9^̜5!;xIyDC Fj Ԙ̙,֙-F!W%u"U|1,#zF4La=}/]¥H9,.lޚuh̍e;[CGO8ei94F@~zYzA(1^ =e^xI auXiA$lZLI+tw{?0kX>%Cj5qrZ;i\y$AZϠ1wjf8j͵n6TQ%fd*k6;xO1ŐAw. 0xuR~8Wgns;ƿ:PW):8$hb{OV*KL58BOU4`omӤ\jx ʃT o9TyuC2r:(:s*Ւ+i6PS![TҟΧ|]ZvDzɵzU8n]lg4O}V!H@(BlPFZH܊jBBȏ~rgm1)m=xcr7Ø lJ!4FΝ6^p`LjX6]zgS9^U'~LrD`}j/謙(҅7WǚB#msa@Է(awv@JzsT@&!@in0]XF]u0;ylV"K }ގ [A䴇谻YͷU"],e3#֭cmsVg1H~>9}"=Fs(ggє) j K*) 8 m{ f@9h 9+/0vV"wØTp3u? I\׷&l~).SBzR%C)~I‚xq'ìJNrE2{*a>x7ƣ?mBL?+tKsTf꟰V47'쩭tv#װa?zysi8Ċϔ1%R<,N=]t|A  J-K^&Sݬjyҏ]6XH;0fk"qkw64:ߞ)\ct Wh579&w'orUXnϘ2-< 1~${1Z뻿#Z4Kլ-KZڡRk1u4g𼫵x VL9W6ifݹ=n^-u:_TR/͑Rn~,x þ~r˪jzQ*KY=+FKKq6[`[shV|v#>$\YFƼ28`m_%a.* FwPObBĨS<${2b?w7P5 % awVvG,)Fd/Ċ%-?{) gd,0f4:Ѣ ɬm",O>@(tx=[s["Rvj)|,*JxRXYUo>j,pً%q+I  5LLиN|}\*\@&`ɰ! dN۷^lȯQp)t<|J=,cXD=+::)- &V!pS,"zx>u̔}j/[.aBZPZy.)5!+ꇝC/š`1^ <xT˜ҊC'YZք?+siwm 'xoy Yɢfpzl̬u0gnMPV7%k}`k=M)ebeR6L,d!-<[aʶ{uI. ]jl[_/kRSa92tPxٟ%R[6N{|C;ݮۘuc0(-c}t;zhRF,c$r:!tJ!y9Jrv6 _j!xI bmfaWf=Bqʎ"5>9iZ偓-Zw=yy):^*["{2T_AZgGUy[V@񹍗D'̈́(~U/ QuwNǡ'/5MTZVKd]=os4K[͑#8"nS]bNqzϲs+2v\c4Dr@2cR9n@AT7<?Y3k&|B:{%6/mc^Y;giQέW<Ӿ2o1W^AvN˓BchOJG^pfh*XPo q78 Rʐ2 @wkTTBktI_̮Pզ\Mk+3x ,XRW֢k "quJʰ!Q$l!(.ruW3XHi~6/`g_is=^g\;sp ك}?s??|,Gޘ YOmZ,RMv&'=tZI6n1!$v^}id[N|u uY@C^m4N"/W~,7 ɖeQRG}!g/[-UUĺgd1d FzJefQ@/;4ے NPB`/Ttkhm,m!H凎Z- W9.*0SdS AhO,Lѐ MrO{6Ԟo\T-O99suүˊ𖞏;ռrov(N=/3Geb lix;Q91r'Z@hw Un3iP=ЌL7i%+BړפKY'A'drR\YxAepI s"n1:տ$TW$za++R:JjaÙxciMCgo4JStVF8K1(.FE`.Ħ ƊaFVH5c `{i (BIȎL0-v\,3t~^-xR'okqfգp`WNB#x?ߡ;ە;OpfIҒpxvMRS|. kv1Y%` ޘsp}s_]v%g8!bѩZ_7(ZDŽ=Ͱqk+<ėl2 2+a|{wS5XWKUV$R ΐ]@7 aDRwF:ϠSyY=jܣMv sM24$]R|h6eLt$_{¿-4'!aѻvh+IXRA8{ hy`u^ 2ݹM(kD> .cMﮌǠt}E*l9ywCB %֟ ]X)j#uuv T5s* 5,Y/y~sM8 3%f ` NMEuЗwaCŪkCZ| %."o%[bӨWO'$<{a Re"ģ)e '\RTU |ەg&wȘ,.̂F޵N;[pwp%8wt2v\y?}"Ay!-r2KD[d) QNʫx}UP8D4<aHطmuMf Њ%U#>JjM3%5~*7JdK*bIYNNGOHb?eaa,'}êʩ0k )|P<ֵܼ4`[OIרz8ѴEbcHU  fR4Ysy?4z9MS hCE}0Sp)вĿrFE6hmqԽ\FBS4ىgbƕS['= %9G_/k􆹷+v` X.퐩qayY݄' 85gZ%@q0|Ac ưxÝnwI#9 lji FFf8k!ixI S{+#?T[l$Yf4- e4m}f&ə]F.p?2,Kk1x=-?5&~T0E $=e6*(چZ)p[K|dx:`+uoʄȍجfS& ׳V"`pA8[pMd_л7[-!?TG&sT`_us3} \h0#No+C6D CK+3 a*zAaT ^ }+1k B4-8dw0a(v0B3Rt_\#fߊ6".6Y<.FS8Z#ByGѤz\P!ҋv,VJE*ͭ,M+Ǧ' ŌYj#gGs;NvI9z$]_ƀ#Ps8P~֭%8A )"*[mC &7= Q0hH1\( Qk0ɈlZ*ǥ}Ѱ@idX[QS|G'M?0\msCiSts}e)!ڳ@3Gm6>~aO'XW$`.~I`Ui%\ @#E[0unsN۩~_ ()W Cfj5YPvuhp[2a:1DQbPnt 8K[Qﯲ&':^*_'5fAxd'Z 5gyD!3eu6E@,uDFv\-(WFd1ex6(,)jkwDznSp=E^1yQg3jj׶w "K2\v?Ȕݠy˼fxD3 ϙڀ&8\_%q7bOi]ts 0?1 ]ֽ:}1cĴB37QZB~Xn=d,i+aU=:}/8T6Tބ9.9ʲĺQ©eĒ)j7GbO1rjqy!5tKR;=xtPNMMqZ@|6(qLݒ^ {=X)u.% CQl̨$cѾa OEeDv墖?L=\Fl{LjcN[gPAEXC,5 9 /vx\D0oԩ*`B!{Sᗨ%M泎eM<=hxNQAfAix'TdHM4+{lɭ^|qoqΪ"0"YxL%N2 f*|j3W;?$@ OظR|g/~8dkλfrXy¤+.hUr0@3M az:g{uj!®`ƥ)pkTz0ݶE4bHa+ʍmIo !:m`:x=4DŽDRi϶<0f0L1H &42ubA&s-1$Cz54uƀ6dHnh rQF݅Ϩ9\#Ӓ9Ž2Dd3 |5_.౼ XD0``+D\i^Hɳ 188hשwz? Q0"mv>Ee83la|yG9cq3Zt'I}X)"._nǐ:q$^*LZ dKAc$gƳCoq=8磦8b><!K30$ǰڴf[uqVeުRS.FRqvGGtqt\`ڪw虯<_gUJz5"jg|m,~ ⎈.UBcod_\F=4 %"Bv+ BP4ZGORniC[JŴslTo}@w)s5{wrnCU>Ž{UXM-/CO{M|8iJ_= ~Y2c7R!(oȔgqQX 3ug]-3;; F}CbDg <ӡ eӈ<<-vu5cv"mDiWӥIuos1MYg x|Bpx@0h xq=bpz&>nOநm*VlcR {utIk^0n ־4Lp^&}J7A2Q:8J r'+ھ`k ~m_>PsZ"\/]JJChR~!cc;.7s/#ҍ?XX;DlqÊ44jy{,"M]Rp82 )X(\Ʊ_>CGg*] p*?eC{{lr 38^ tXB>֬T%_kw3D֨<@G)4<leir;ɄT=$l,ZKl_m R~B>D5m@.["mv|cmo/eNfHVss&U %=`3R<xv#+p/4:Yb<6TW `n|8W3A 2p)aN7l7h+H=)\Z*J5>ֲ7 HiKj]-Ruu Sduͽ0ھE6^Wzq֑Clwf_!<Y6MAlVw `0&ˍel衴Q|dYR]\OsXC6|Iif=DAbȽ; Gq1w= eT,MoOB6B/d_frH%]LEF=ፎ }Ls̢k u[nA8in,capHVJnCGة5`PHx4u֧5`_chDpjn9Y1q{F%_ǝt']%}Vݙt{ vە+1HAp T'Ў9?UϦxCLM#?nwgC! p䤽8yS]ںs=] @9 K(dnHYKYY9OlZʃn4a#Me+X?/ATGUg1JZ lJvŨ+A/;_L !%'t޳{6%k:+fjpFK#$0yQѳ#>aL~hzmB"P:8Y;v-x\\cQ .Źѻ|FO ˔4Qu<"@3)M9Tn9否p L`ψFu'pxpPSjBy&Hj*aB/xq(I&@zh]f] j>y M)~7xmn0utky2^ybmH܇ ,~[#tAL>]gOB)w*0DBGv'7^M^6R_е'eWiEdufQe>$L_UOyX+g.-A5_u87qW_ND RϏ(}֚ XRG|0wߟKkz3!hiYA$ PuBdhk+Lll:bF[`.蓢|F+uKΩ@{fIHK,oY2`dM\ѪPƷ'h4 5yíB.3:|0/{)mٱ3XMCkL\AWO`E ĥBVO᪆WdyFiX?0P2/o06y8,iKSp|$:zr&}jŽ)"-Qo||&GqHf@FvK cƙv9:" AZ1xn1IBQ+ؕ/k 2ݍc`'|,qE#'IwfW"&1!Yﲩ!Vk9dT96x=^_77Gm %0A<"M#w.fwN_ْ].pvhZ2/ Y1{b--g\gp!$jfdZxp.,Wkn|dqqx0r*.NNQ)3lm:u|I(k.]=퍥0$FDM?j\""h$z2v 2c]UL O3qS`B!}Ly :k Ujgрօ{T]$ջgS$LMZ[<'G #i#a<|v\XTu.Tuk w\|0,暘/m)pN OD^R!FIWE~[O$~3hyw[ jcp9Q է5)8>萁LjX;[Y'{J1٠SQy`IZ~uELp",՘13,]h Yzddք!`磟I [6EE^Pߡ%mRH |0*35F|>(W DPj'=M@ y^  "jh$1E xܽ?htt8>&wJ.%Xҗ@4QjkJbq !ŝnN"Ʀ$)_'*hEl??*XA0`hKE]Z利@CsTw(;D%|ROG4Q=v?t`R=-M=Ʃl-p2c7&1($j؂ 3U}I3YzaH8k.eᑋdOaA NY1^ EB.3ϞgcLįFxnwC0L{n@qm\W=).h9r͊%y'wou/a ܃ /L!PйS]ɐ6܊K=T cuUaBN&|eWBEޱFN 3̲"ı kڵRhڎ9A<͝T2)PΐkDC#ôɂT01mE%Je /qRkڦ~}-$Ydt˻vxy][`AsB}W}In5,oP*FgxGcfڒG$0q/{XCC5EjhT$ƹSu /7S yVn4!|S;IQ32^jOꨠf!ۇp  ^{r`qp;݌jz;[%<%c :<^wft]MN-Cy_Bd$9͋i9sgrJ_ZsG9uVڐiA3|ɡV·eFV{ abmʘ9׹6Kmw={["J;גL|q]\39sca z[ s7>s"R>žX/_m3Rme}h1XpV~#mOJՈ.~^LYjg邪LI˯7+\[Bw2a(,[q+,*b:g~%ш|!xm3_󵱕9]:<_hXNN`q^LSl8_-y}ͱغQ\K[a 7&&z՟܉q}G?ج5GNO!9*Dȱ|Ϡlӊú-I{*9wNMY:cS$OH- E{!BAw!>/D( w0E9FW`4N> #Nn&>YQSj?"o=2̓qUjlg3tϭ?A-~-!sU,M"3w_9S Gj$:DWn" 0hn铕W@;3_m%G9cYJn 8!0(jb bq7j$HJ Tkbo|*/d݋gZ/O(F0ZlwIi EA"$ l'wnm*G@JӾ୲)pK7VeD.y=%-cͿF/7|ܙqpiKŕ;Y2T˜Bw#j/49<8ç e+ ҔKW W\:d!sE%̷b='7]؇0 16< 6n.(J% "%_QRY"V 'gh=%e+)5"}`=c2/|)ۚ%߸K-T2-Pbh"Һ%X-l\Su6o곚֯O MAO[&' 9~0}ɒ/<'߾fvrO(v._QCU٤2I/ p?Oϸw/mȷ^v#Ͼ1<'nu⭬2s-bE$Nĸ4_n7%K%%ng%rտ+rW(5Hjm~G+,&jxĹ~_Bva T7|juxaWTl%q%$26@g͜0ޢYJd .gG3#ΚcYqKgEMFl7;LU0J~:q-77u 3sf*Shsޖ\r-rzD4>* ͳ݊INe\& -mQ^MSCPȵ(#!qy=hN}uzt>]~AK^#Ǜo%H/|vtO&Z]m%V蘕/˽ñۂ ;B7c!8 =`cNJFF/,2^#Qگ[L(ҧ-|XSy= 2^ xn#-ϡyMjk0ãChhNڊN(rf b#|Aݣ9&(cd؟b" a12hu' {ͮ)\)4`JDP25ˉd u))Osiëc@%V"(O-- ɸ-o">816q*-#mr`(fAehM=uXCo{Ej%,tX .J_=Y_} 1͆I ZdK źϒ5m.[ Qw#9#:<)#3CTK.rUk f;}nhbPj]@RsZ]E{+&9]`C)ޝNܮ ~c qA{:`v?+qa,C!iK$5NXnW]XMg.QPo'1s}˗S.P :_m쾓 T^ևwgRuGE6/V^>G l|Boº6$iY^G}k!s$"J#ϕ4|5ƚ/`Q 0~ȝbxI.$^v"DQJi#ЂUkϦGS.񛋲0d% ?ԜUefW&`b^hb azHV #6vdCk EUד-~;n-߃w{a0(3R^\ChڤΠ[љQ\a@؂4"uЦ)kZSID*XCR3Qս</FatmloE2/4J>U5- (緢c% 3Cf4l)W p _[bz)l~lT{+^*\i0NfZV"(D55~mEKB3"*t ;Pd#$u0`3TߊNez㏗mQ :G1TMH*_` CLWڿb=>OOYz67yH /Ut8=; kbFF,Z"SF*iGD(f2wQp#Lh8of#4ն;^7kQ3cHj"TW܀Z[n3^P2ѤP.-:ɭj*E9G1a(͔,9KK>&u@ώ[^+x`@cM=:; ld'1DpޗDfF DNF+6+@A I]a5/%.Y;'X&^϶NiK_+MRFXVGsQ[Z.Li架fQtvuFg!:˽I V)JFeί]W tʞGS{b*%}nKm`{tGX鄊Уad(X_n8(@mX媂O#oc /No'ɡWSW@7Ĕ劊Y;ŖI.RwZEjA?!,BFC {arn͔je*U8y+ժ=:3"&I az"`k_X02T G4L̫Ȃ{" =r2Sz&1յc#::[;fHV|Q={y髌,&apmRH~4ҾܖUӏ=z;"XGS%Yl=+!b`qa̮@1l6F[?&pZΜ#ۼ.hBC $f.%$Ɯ?>F V?05D5H= |#j׳ߙ:I+2]׺"q..(X } אǫCnH`C}A!FۀIY򉫈`er"r*bvǫPA9|?+Ե*=+r:SO2c)~OG$%xq8>y\O,(C8,+tQ@FamVR, "<1)XGϴ̭vÓ0(ET*~tvj1iM&˿F3:}[̝UmѪB*±xG\% D7z4{T= ϼ{|3_#\E)x0e5xl5ɭ]A=̌e"Rf c}P>MwtvcEەqOz40͒kMŮF4= |\,#+[8֌7ad[6 N>HXlC4U׵4m `1KSm'~FZ_,3RP> ,(c"@7%Eڇ;R P>$w%˂]Eh\\:ڂeu|LQ٧GpbVԬMzeFew0y{ KuvjeUTq4x2#5LܫS>Xsk9s6\PpK=ʝItVH Fj;s$$r8Dvȃ'k 2Dcv}dC~nϦ5&={U+f_Ȍi+Y~\+HXU8A!w/]A*"+$ڜzB.*"v Btg. <\z+.LCGƆ6 `5my,o76I_cҎ(ˍ"iT7sV(stj]ڪ%(g:el'ϼ&U.H Hh3)I+r@]JIV& /o2P6QJﷻ uLI+GNn+~G Pr /yng"Е>@@>rU.1\kN}l>Ƞ2Kub2 ( OD(1G,U)iG(V1ie6r kv8.^r ?K3&\4`#U~'Gj-*\:(~th#zӠG7?;XIܲ|l|֚'vmx?ґ39r,n;^^/9l]شzv%]iʽ8RAg#5,k \ƁHH=mc"#6%sL9bf0LjWj[&avE}՗V֧pHL^;6} m5Ғ%FFia!xΐ n&ȷ:r4ڮꅙ(eY7}$jB#o7)QY8e-s~m_(]OQ{kGmD1Lgw4ÿ>b_Μ:c>=BԴ77)BWo+_ts=.Ϥ__j/. [+%8v=Ey?'`@BskU1uZDYӱ-~|oSעxLXͳίvM Al7 }6ߨd&뤹czV\7ݚ]lpNTzO/]\}~]NPT3`f/|#1yDI d?syg,2b>XüxN$ETPOY'QRd܁VK|_:^횠V^2l`t?TM+ C߳I4IʒLU̢UT&DxRg#E;nOgMS11qN=aB Wb/-738EH AhK>κQ! 9fڣFj3Z+UD":Y.nͱ I?~'WSG~Ȑ1R5{, %p5Ճ]JʃSQ *c3Qub%չ|<71cIи欍myX'|Hf ^;ap~~+UOf)'VRg_ry?a+%n&Fdp]Fa`ͨ{3?Qmd%ł~ax5sKodyƖSW_NK|0Efjb3Zt6\(ǨE,)J$ %T]絏g8 MWOټɟ˻[~NٳM>KV_K#+ϔr > ٲuZ%w(aCk#{?C2@aVG L_x\ Fţ`Zvίup=poؿBnғ^?) =B,am}@o2knOAPO%Xo =ݖʓEZ]q%y e3?RU)QD)A T Z?~蜒5Լ9"܏Ufˌb?`R7W%)488!TtNk͘4y+`tNL*ze[oqT|{7M?9^0NLuZ|׏$u ő,hI,BHdQc@x㝡Aʊ^xlUZq^74%wJBSѶz7#a}s>W߯N$G-vCP!ke LO>2'(Q+ =G۲_k/HT߻Ig~pM)B ǻ] K eP0r[ +م:>=}(DN֤J 8R7[͂i NjMY|{kZ =ѴrjpY/sA΂N .r'lgZdr V $ĒK ['Akn ,4-|7E vhDbrb ms6ApKrOv6&e 8R8K-Ǥ^-g|+7YPm~bݧwZ WdssL@F̘LeVK2@q/~%XLAFoB4{!HӺZ$eX"\oB H :&>4NifRį:Ye{caWMO݊}Ӛ J J^4"^:lE'8cŷypT!5Z+^$fu[Ŀ,I*)\@&#."ŋ9~'j𪂮W=rܷ EwतcM-(z#Þ嵨ntsA;9 p MVa=6U27\VL63렔%vA9{z+ %jRD!Jà-#HKzd(%5L/]$a}e]شx_V7mBODZv;Ti_g 8AYQc9S$!8[hGDa-_~Z|?jLď ^|Z$q˺m/!ԋ;j|~Ddq/FF볞rKuK dCet?Au=9=qeMd-׵2֊G =8K? PjwՂg^xjǭ.W.|bk%W3PaY_5[Ÿh$d?b&&l&+svId:"_:aDtjLjZ VA?1! bw"׎l !-I U4h-^s>ޅ/:>3YE9n1,HLs3pd3g'^bH0B_OF)=^QE^=mS)>K¨0L`l'՗{T Z[@zjƙFK~"'}c:A čn95C5[݀ZNviMp^0bϒo|$Q@`ծ?,~FDp)8SQ"']&uBjFUnZ/;EZ iyAƃ4}YI`|~f=Bޞuvg҅(2R #Q9 O\[>cNIm9ȺPQ%]8>`V5*{P(>ؕ|EZj26E4KFoGKn] }tBrUP lQCHֲaj7?*zHB%BX9k!\FC>!x-7 K $@/;a#-N_ܾ^݅ jx* lN2ȹo;ex&D;U >CkMʽJ2jDBŧaO#FJPaj8PWhzx-&ր*@`8(UoBS0_pq15̾-m8#IZd1^E$x5-R0#;V!h1n:cGHhԃ-4ZWHt($Lps-hllt %/zgp5ҘO`W~D|;IP ]K,Lmn~К6c4s][ ˔JAխ˘,QKEhu@VQHK@3G"~by*ψb7X5MRݯf"7sGdb1)ł$$"d7/ݞ{T8peX{h;Q[8 .XHeTbqp,E_]w3]'HEa8y {拶,7$;DSA&pB,S.pnmrވؠtb(Sb'6" HEUSmKm6YnOuPru{7|Oܻ;~{)/o^WP A١/^ l%/́9vbbg[jӴ/M"ÒkS0wD|V6ps!X$a?j95)l6eP׃*i#^v3wbtyU.ɺ05fkq^T&9J b-; ^R7a#Dפ4crRZv COs6vkbI84B9ԴhM$(JB*-qv- 黈`d‘&;yNX}(>({YOwCKT偢gh -H^\>*NIۨz?;{ᘉy4E70Qu ,'\Ղ4׋QvV 3(!smS5wVk_(qbR( zW6b,zK4J]nNoh(?זչ@M^x C ^TvsSf}r?+b:XS?v!7P-AVd3I[M-+(byHu/|(vSa s}mc:Kk:dʤֵhYg%pZjuA\Vr Ԉw54b 085R#ޕshޘ(52fSE/_vauNur"*stq%{ Bp*FfY9N"8|/3!"nOr$;8?+dbFi4EDV_6yyn=V9 !aDu̱D()3oT{RFr3sk1h}(Lp3pg P0Wh \/Č0!0G8|^n]GIp:TzK5w}q 4ũt ,^iW~?--]u: =fऔ}w"m^5g>BeegD:. tyv|(Lw]˻4_ !vhj]pHKMFd8o"3. @uDÐ} i, T4b H v] UwFAuc[ Sw6hV/z3OPoV?GR֊ܢv <[5ʯ0E­ 8)tA_.̔P3s!obS$UȪ-$nCPyNvؙ[qJR4%tXQ@?Gۆt5N#A%K3hw;T9]O:Áz xj`Q|o~\!JpX~_c~0Xqa8'>5kr]b\TK/ّ?ylWZRRK;ו@{yCǑN*h ]3ҎIuڼ-i ˭L&s:YņsqQ]\+O՘տWTvOX{o1Qhl/3y+`O Qa,xV{EyuRͮzmgzԴ2Wn;Iyc 8-XgZ-Ε-m}4We/BVNV `5>ONVMˉ7Suҭ Чq-ƪZk3T/;rH'uyOvbwLA`M=-v fEKu厬`zSXC%+ҰYU[QtikzHup$^*gG .d{XGlS%`gzB!qVs%wgr5ybr\M*ǿȢb΃7c\\}0t6endmb/Ϊܘl~N-wo[EYxw\#؋sJY3wuh*ήuf{݆Ub F <=! '2 0j7vO`:aRĴ\&glwQl1ON"RߦmDZ,YYK(7_t:鈲IRQ׍2xpupv?EFSGLʑeq0%F[6I18:b91m-sޠrO%%{9j\Or%\)մv[WlG_* (,uLrmnem |r9ՙ#e:d6^6@B(MȏI_#>AZ>xDc3)(fkQrr6R ,pFX 05mL?\gfZ TS?a@.v"~pIZiE^,F/Cɍ^wX,QrG!+!'EҚ+qά&ؚ|7ч㊔?'gcvaѰLM,$%~ 9#&|/NZ%o31$`1/5[Ǿn~0³YeAfPf< ">W )3E 1ڍY@j;w:hGaH^ryŔTngX*75#ceũfLQqwq@e쀸Pu>Mm Dt8[[h.hmU$7._SY=$7 F_MlZP{14nbsĨh9Loyoj dAuX.\g|hH`4SE$?tGq6ĐƳO/Y[ـ7l݊ߛp.*y5L9mir,*Rual TfrFygStFV)-7]"StmMTe,J:Uߨ &SDŽa\}e.-G)Z裿k sH|-O[חdàzOTI֫#%EWޯjrQʏu'٠Ըz3Sw@E D"I&@ s%pǔ]YU[]݆ )Jf7{h\@~e9mO#T M28JhK>dCo9|eUSlP%b" 5HLZuq(g컅^D(Jx*{l]*[ b> \L#(nN{,VQN'-#ZBϟyyt' ^^/.PX>ˑ_]jM0lMKtZk3B5?^u3ȳ)s%#yK I|L6c̬sQXҳEu@}py~^-ȬM6c)DY @n<ON(!,NAb2'A<ԓ%uk(ΚNk1Zau=?Ru4PpcMf>461`M#3@dIq1k1:[x#@㵹/l;S6t1)|>3(rYMa6eWHj7iU@Ǻc(0 ʩFIu=33EWC ,if% "S1L,S?6O[_SK!L֛}јy-M26ͲdOMuzBmvY7U&ws0r9>S|u8]1:(& ]hM,~n;U?f#~7SH]➦?>;ғ+ˬj.#ߤz'8c&nXZNkOTi燄'Q$bԲ*<'Sk%H;&-̩ OM80\ɸ* *ŪvH8xМf@5CCvc;Yb[t9Nԍ&\q" y^Dfgm'!Zԯ_5Q3wfB4_t9ɊķQ0y%S߄)2=U#A\DH/JuDf6DLc穬D'ɲ&RY؜U{s4)t u=`rIWef" Rz'+_7 Kle_T"&@M#(G\.7݄!32{1`' dU]")]WBBk8BGUܟ$_%nM'*e^" f0 fƒ$Vw]|I+D6<5*>#Qo:r &>lE? ]ޙԽ0@*wtuW*5m!Bޏi׋9&mbX(@K6 #0$}󱿲eN3j.j8u+ml钇EMAbK qHIvSX^Zu&MC;1>t$Ǽ;[ͩēIt녖f<9P1ujҝ)t!}Nh>nHkgx-ׅDFs(eP =]O*` \HD(Vbۑe kt,rdzx6o"}/R|Bz6퇘5c5>G^KmZRg?RS kxG8{3lRJ{=OرfSԽ_Vr@.w 7B Vu-7H@'5D4 |&G iž(?)ݘb̲VŞݱ˘kS4je54 8J׭+|%Ds0eLy.8mOsZu{g:ojN9[RP%y/݄`XKD#9YFy=C;|)A] \̂-R2XZ4ؠ~V2" $?'1qunwq҅|X0WU=^Z_k5;xв[L%va'DPkQ!4lD..:#0VCoٿwʨAwUǺLjX 44YB$ߎ)mn;H/=l؂$޹'fS/,yzӅf+qtho0{ǿ@؞WLs!Otk!+dAj< kl=!uTy y2R~Q! `"kSWÛ>v^Va/Z >o_(9۾(u*j` П5|'v$%m*KFZ,V Pc(^s{6-hGT@ɵ}mSq6~cJ{U!|f2(mtݿ\Rô~L:D>pm9Y;őZ:SQɉ>wPBi] 7.T0Ey]q/]t;"`^_1>Fe"otRM=$L1RۮணTviȭvv0Yν]IAƼMQbҪ9Ppe kpD[`}'{sT`m">5 ^x2E3Aԩh(,J[@ƛZ.Є-3>/?b􌬡)EFG3on<*pf}lҝƵ[Q; ܁⩚hggB\oJ#|!͓Q[݂,T?zfC م;$]KtWv9|=3O`N \u3*ȝPhgnDŽ1 6L<#h|LWc"0~y>Y". 1ퟍu pB-m.;h0u {ZVx%4 !T/¿w7sk%ݮKᴋ+ @ yl7)H<>)9smU)6{v k~Rmd=b[p`\˕^!_w" S2oOziEyBAG|MImB2n_~ \3= n/:.L~_^uP1N pѰ_J erV3`፬fu`&8xάS=JPhc6/ң;*}55Y#%-zxE U|{% ="sQ(Bl\w'4T5358($~YG h v!8)h9gDO뵩 \Rf6'j$<)Ŧ o\T_.)ZAM3|@ix,g>].w2T{cHk?}sG^1(67k+v W$%!;:K;E L91.dR1Tg\fna}\=JBcҹDžߛP?ufL]/]{P*Ɠh8)/" S1 ,)H{B@-)|5 Lˏf5hV)D1Lj2{v @قZ/#ehfG@;`+,_RU:r[azi}wxK-s4Y6s&foMÁ.OxCɱHe'B~auJ8(#j7o3ٛɘm&9NP%EIqxLP*6A$)S9Na3\5i!HX0Q; x&Y9xjiap6jx,K_:NK79E7#mQZug &D0Y ?'gj-$@sCzԖck|=w>Go Dh~7dipy,!u6oAرrz\e!b-id/*{.J靸A&~8 R>ˈQl@[  --$'@=t~`R 75~EM"V:l{óȹm|Q)r{hlNluuZh߼ea+X՚1@捤Ml#F _&3X9l⍉臕{ٜY뽷h(=ЦrVϛ2wjhRuL||X0@;*M_mlA=pV'SJ,3x4$kcPqkRR-5vHRvkKA!P+\h]YӐҕ[hqfċKvj~bP4:31fˡy@%Op5aSXN$MmԋlpD"7QIX$ҁI{WOʥ QDZ?fFS"^I:a5Fy  mVD-q>k>)ekZv2ƶqJfhaƭ0qS̛KԷ ZNs3-$"n¯v]d h"oHY}鋵{s/' e[60Y|%JM]$>SF_ :b{^cF5,95e6\*y9نzq5~һvSޑ'te ?4{mu9l{#T^fJ%M,ai \Q6:ˀX.-2v%]'\<`LViWwT ʩacN2j ssԣT!6% DfܒAopA[t̅JM?sG0Vzx@0cLLCC}8˶|& A7Om= u@M |PST"Jew¢vk"t =e>+maՎ t2Ԇ^k{ 7by{Ӣ_$.G&-%6=nk TZl Mxfn,ܩ| $ǽ]LR!CS,iodl$'~ ɲ\ B@T>7.4p‘MieJNC%nH ؑz~j6|>>aR|Ũ%`Y5M'UAz!&J @NB{]r ?+߮wnв1*fC xF4OSYtШ8S0h 8(c7o3 ʳ4S;22ks턳 X2zi%VQnEA*qwS^A}Ju<69rI*b˂NµD뾅uOh<7mUɁ~lkk+2ߥVGK,!%%xJ&q?<ϧ8uV>aDI{+<P0m~fk . K-CȽ%@+Xo%kSν[ _Io˦.1pu y\TEd2ۑ .\0, H`5*=9 l4u-kCٳ*z-Nj-6A2|AYƑhN{{q:Ds@tyDZ'!ZFGw 4w[fHw i` tb$N}>VmxTNL'<O^IV^kJfIe$0L³%&1JD%a|-PdLe*6D](X༤cPMyMDRj^Ijbly8ZoTN~NU٧IęhQs=g n {{|!&W{C xOU3S\ԗ&Q2H_!X٬\I .8pAN'W P{`vwlxU Uh/0p3Lb/D4Ú0tHq/|G,~ "LK8$ #ou^H#U5!گq("{酝p/(($. 33(ʩrE0 K`mJ |ys"UN_ Ju6YI{Ȑ%gkq !P^ _BS;oB&07f[x" Wԥ"0۽a\dV\U Xv:.?قxM0A ]Y7#HhYRctEtF(Lkiḳ풌} hK%w]Y$pW 2fXHco9:feX]z3["eˬ%A>{n(LMB2mʫ0%;s͐WqcēԄ,PnVPvmJ4=v7p:On$ EXo|3/ [ QϥlܒϝLE O`1IEU#GTd ͻs4(v8@k"|!er4 χV[ʠkqL2B{֬XEHdI*A] [ԚȸHfLzLQyj^^ 3[ڰxڎF8<6݁ƴZ*ȫ _'"Kt{6 .e| 1񨴘'`(}w'"5heY Z4ƨ5$Pݹ,$쀃2ռ`@~6&[މ ikTJd Y$nz+Nę)'Ga衒Pލ pL7Dm~ߪ9@[1u\-C!yӡYg%TAqe2rgȋ{-L;c74fVfCD^g+{ve3)IxyCq:2քRQBYC}A;Yy5ti*_ tDoE RPфzȻU7+|iCGQ3r{5M o.t@lA=/#]t㜎">G{!!TDp%n7u ŭ g=R ɴSAyYuuC̓lopͧ?C_.NjB54q񮍒!_(bM wpiVISŜ p+<8`1qL|n#ͬ[Fpb#T-"T 9Ū;jI_T#$"_ea.*MNu[Hb2ũ29 FjmS=8"7v #-aFY/$>>eDہ{tQhƴl<%#cVML!|0nz6Y1u1԰)nkd/[W6ݷFPؔxs`sBб|&(2m8 vhO~95:5+PoՅpO4UAJg8M=Ղǘ> `E dWDof1A?t\9gUf='Z/+ch9U3;X0j$b/_oJ&QFd611sQmtj1e5tJ$y"VtmեmV @'/h*A%l2 vR<(cof(QWzXIC%BH.BVIV7[mFyY ׿fۙ&~;?\(+q|Hz)}F-;E_h ~ u73x.pWbg攸ߋ$B8Ddž[8ֵH-{tqk[:o,ցh(:+˙)Z/{asaH\Nr+dķ}T:d|CYtk-V, "ӗDkb(_ukeF C %ӴUrߵJs-D b;oUډ3"9b$d+<φgl]Q yprdbԗwOĺix2glHՋvc(XψHpG?[]~ Fwn,9:"ƤR 1W.7lE8I3V_٭Nd&UP7 R?Ut:§enfs@$ t5= z>U_$'0} 3 62Sa" ]%i61/ӭ`ikXeU <]U-xЏ:1|ƚ5$Γ/9aq˙v? E+TGRlCzɊ쌯=~lkP@4ܲwC^m}%GݫP-/& TKK0D[m*c[Dͽv+}p=v@B ;ǐ gLHyDP#JSgz.aX7k<7#}p+r*'B)y#|Nwtnh bwV?·RXQd_E;~;ihNlEՅq5/ڭrN m!f":^=8!1 InƸ"e&8_YԂcY3 :÷X`wv:_  Fՙ{3kQ/&&K2]k䜀ه5칚FxAt&s7s)̔9]mJ14|48%0M%73 TV$rU$#~ZQ̂'7+&cUsTulѳ/'Vb*YA4IBG>ںZ& "e(&+D()zi*vNFc;' f<`ΏDZ9X77n+k&B^+߮>(5jbη.Rgҽ+QGnŀ;U_N*E_xCg3,+nƙUnPu/<r $O7LoPɑ[&LtŲP)뻧T~0S'OUd&f;y|AmIU_Tv\.'#^%oKNj!_^Y2`3YpaE$G&jMcLc3E<]4zc8> p kw uYLvQofPGV~$\u/'AGJ)և7.ུ^9T2tF0Ml>R#2KƗHyq1:~MԩΒ*Dy#%D<Ɉg?+җ\.n9w~k Op|@$)FK%R'Ų"ϥZU+Nl/vS)IyaC^6tSp"0{'S5tG#Ϥ~b_n|ҽoW[L+g+rswlTVGpC40HCj܈qGj/8@n$L䅄ճ x#a?}drkb)p&,? T (AGIu H45)ۓ'MT&b56!aq+= L'$n=vǼF!߉X8k|E53׳[>u^FTAi2B Zz{rJtƉ XqƘv<.-eM 8=zζ0Rl&n|şu7BePL0J&Zێmr H:ߵ9NoE[?zBUw k#Ybx`I U&b]~)0H?>&gJƍEp"4:\m`]Ww!xG2tM*MJAT_gnzó"ڟX,%xo9kKEӨGЇ. z˱ ]ܽA /2*VK&/Gl ܆-9ҙѪbP-՟bM˒l%˲aͮ nS 2d-Z= amu˂PPEl;Ż a%%6u_ O?O?7.e.!+4Uj}Bv)EBR)W^ _(!X`jm]]<8v^ݶ|$A4MxN|10r e% /0L֚87X._@OTYI[&6n\!#xc{قl^V0/1ES"b+/FX5: ^E壝#/HƖ P5BT?FAq~¸G?~FzU FĺO)_&X[#_~=*$MĪ&v1^ CNJUPM|9k;LIʱ8zxjsy$дDKBffct@,jqp{-BP +] [FD\Z(O_& L(ViJCu,eAԘH9p\z M%>Q$*x Žza[QcԳO|;p`rpϼ\1MdsCmWQhpe/gNtf_YH.8I j8d1:=Xu˛mԠF474||_<醥^Au3Xm^* W &y+*R(lJs3=+v1ti3RI@= 8$k |B3#4>ppd2cn똰NOQ[x9տ624cLJl72?B2pUfGθ7n Eʜ+^|}vkkg֢48Ox@dSP#7aD`V 52DI8F\/N uWpRbe'6|_ $zH/7a~ݔc{j=(]i3K^I#X h_/ :k8@ f\4*q <&u.&zrp)&Բ݇fwGq& ]E>iU.J=m{mxx\5: 'Iusȝ ̘-c!m[_PvxC)FtԒ:(t򊏕m`ふˈzRkm8?=)'V#?*JJU!4 \š5L$鐌!FurG3ʞtErF6W:W]*eC6q})Kt#bشn*dK L8}c,{t}{0:fS}+_:F2{Y -p;©'ft{_K:BMIsx\ԛbIs?$ف㰇 ~QB{@CiWdd@/Z[a[Ěיj+E&2߱Cdztkш@w|9_tQ $uں橿A tLy&yQͦD`uhlp.~slIP0G^9Ve쎵UUAv}KPY `r? k/ůl3CULJFPH\ X-NPFR)O9T!厽+ИXz#Fʘ QD/DrR|ܓ𿁤mOLwuadhJ' ҳ%eC kؼOQ{QHD2N3W/a똹7\gR$nȂy _rts.y-mIҎI7l!?yi[I(AU%sjϷgKrDY˟}} d|r lVMe/+'R $+1ҼU؟!h䢤=Oal LF $&5U$M?҂[1°9@zAA/fXeJm/¼am q@VmԆ<~(07z*|k taWI!vдe.0Wxp¿ + sTY! ?)Ov̄eFcil6+ ;.XVmV<>倮*y(A:pۇaۺT坲ִ?´>߾4?ɄApUuzupkR~!?{ȄDžfVF 68TJcV 4%ՊkjV% : $@q1#}I`,m5?qwz(vɌ1aHkˬ@8Հ&^m ͠DS5_8F` X/Gi+ mx,wx% U6XFs닒:|J1gg h"8dVLp_*YDtz'-ixq_y HWF3EԃXWҳBNYB ;dgx5SwqV\ofU&|(HbÐL*{#65rimw+/Sx`=':IGw,!CjZL<pz^Uv(+p)^XɡU{۫v}[kLcBr<1ŸѫE^oJD5h9 wCJ=}$XX`VQc=ؐw*VRl}>~ܖqz|+7d,1.: /,FI@lI[3(`Up(c1[jH5y3Yn_]wwKk ?(/ad} IƵ˰gɵ;yei&"x1%zm|CÂ!mЎJr޷LHG)Nu hᛳ Wu$/Gرf򹨷qVs3CF!rp_|fx@Pz^AV|yjda|Co'#ދRޮYSf1 9@E)Zv>G=w392N2WnT;q!WυuOaRJ/+MV TT=P"ȎgI3&T,/VWxzձr&R\s9?9WQG:qi a4Ót3>ۧK hwΝ+3­.\74܅ShFt`=GG Dj ˂ #|$Lo%) XW*c%U-ńfa HV&9&Lè"]lÕb_xBrTeSU0!ouE B\I[Hr[]wO]s!m)Z 9Kd&'nڛt N,i01Ffߨr>6et|LM -͈dj׌BzRHVWn#(4ݨ-ƆOldWK,X%UyjSh2rN65ĴPY#38r*mϙCan;ՙXSK|sd!7JZPhj%3ޯ!#v,Og>0J]hw%ntI?a!|GX/-qp=+/@Rʼ󗘼D.w GxVkF?~qXD3Ď^,'.w^YA(&^T%^F?6͞@6kw-r9m 5tG Boe!o؀URGlg xG 5D;/X|mGR0;.o3#.|~S&:ȡ#ӌyy="'~ɉK{ q2vuu`fIw>HH-?a@K. BpD4";+c"ÙW-9%? :}]$u1 xN<逞4R\4!-V2F$S< H&$6r'IAhtlϜLt`#|dscNL`>y%Z^KBMά<ϿQ8b\˄qZ6QZ0Rliڼ 3|4W9;Ӡd+%`v dZWƄMojFnkCXڧ$&p MiYlog< "D Fn>+YO!+:XT  [`k"e2O˨^5 SU9GBYaտy Ψ !q):7B,<= <_uӃ>B2"#n:ŕUb?um*^G!3u>02Ay@W|Sȧ.U8FWCBEvnsrYTbnf~:j,wIǜgIS s0ѭ3c <J8MAo"BnZ[T?Vc-+Xh>1I$  !mg/e`?ۚ4k `&]ZY)xϔ BE|.z&t2$`%C=ClvЈqM.Ldg]04XPAlm1%˿/}*ix}rNc643b.Bγ(pi) b{aH ىkXMkp_-_6JSWI'Q؞I]}>w̅OIbo-U%-2YDJgRJ27*)yvϻtVp&, KHЬ4k#^|@%T~OS^ʁDqEM2=OGĽ<k5yjЮa,::-| G*tjW>u/7HFoz-֞+bAނwdm܊!pڲK½mDfCĵ_i?e,lɚT.A E%p-u,a$(y09Wjh&ExPcu.'~)++18&cj ItFWb1>QYJ8"V=4^.+Ii&dh\>THm dCRϠ(܋ uΔD?nY:,KԳMn eT ߨrSѝGi'[@E,h5&i{CS+vfMݲ:)1. v209G9bsW-ȫu< ji="o[=n^*iB8ІNL~,.Be>gNcR2ͦQ[LQ1J8n}^Hȱ}Y^r/'$DdLpT<;5I]8A޿DlY;R' _g9S dtLJHç) -Z `0}d9{L3w@܃G.5&:x0s; {}a/M}Kb^/ipͲ|NF WE`UJضs4nu 46 kg,DlBG`gJq 'f"n#LAx?!oClG~^x"0Xk>A!Gn-{I,#43Gވ*\ |pSt>o%B'T}fU],WȌDK2EK*MfDa<%4u}&'nS0NZT0?D;O@&A44@HyC;EPd8)O-9r~DGįIѤ ZF,p~&Us̆paT}2jmaQ j> Hl|D2.cy셊] ȕ&B8R||FTIF<׍(npqw;H7ߒ(ξ3|%Z 'c:0Ȭ*Ҍעz53 a2UXYl}md(1}cxB-a:]utnQ5\9Ly|/`s,"xBF`80B&I-rrY09N=5?`~tԦPeĪS< |#Ahvfѩtk8L 7!!%z:Beц0]먐+^%]ޅrڙVgInm0#0ɳ"09B}*5rťu:> 'fZG-֛7IVU[m{O ߀MEʗu0BcΓYՂ~DP lZh_ uzI~F;qmcj Sx.$ L20O[X o?1^t >oxcDå]cFxNޢCLzwTZWbdE }8W?}So*6cnӒvY;=q ĹS2rlαÓ 窺g|qnAԭGEsitJ1*J> #]jT7$&݉;p1;F)Yr]nĔAZμV1l ^!j5I^}4zo l5*iϱ5T{Iw= nXj$r+Nzb$7_ְAҪm>fh!Ă"*l*HN/r8Yy&w?[Ui\Ya4$ֳikdc^ [)>c$)aR(:5 gۊAK)1pU.{j0KiO407 k )EQxt& !ACk,I|k׮q`!6TŹ{vnUrx ɵȇXi{S~YoS^8L=ql&Ų?w9:+Lo>ȸ lGJnaɚ.`Oϟ)ja *h (!"Rs\ 6F\t[wc۩ [ڳeқNV'Z[#< qٛa4 o4k0sp#Y mjnW$W\)H̟5)UzQ x"]sکBfj&'~1UM,w{2`g~"~+nx`̏N8WE' Gi[8LںlEZ5 r'^`jBi}6STS|R&Q]ִ ]g&~ qb @H}je+ Zz<7wpҹ"P ׹gk̩ηsE[\Ӭ[*T> 0W3a4E*ъ*":8j^YFh-tEӎ:_V8[BnɘG)3oQ |K?w_xMh" t}x #(/KJN>tMpc8CS#Gɼ=7+&5ߍMۺ5 *R?_|sdvwe G.7Ꞽ_nW\wp44MGg`Rƚ&^mƬ.j4gi+ vָYl2wCQ6 ]zXH rn] #{t+ңK!3d81bpq*咄ev-wCYZmvkL6NU}` p4b%Aިfwep( ǿp5GWf`(ߧ\QA&)J: \pY%^ݞp3[ 8H|Fڟt'Tw,X39B) 1hJ# "D`,&8 Gk4^c7&f:վr]!g86=blJ*ۂNS"7 &R ~!{ 2낦Qo<=`r1qG齄 tUXkeȳdh@>:7rh+әMYk*յތ\ѳȰWHdv^.9sޘe~Ɇ@u9)N"x[lEİ[#垯4uFXp-%T T7l#.a+'Q:[WM񒪢=yakࢶ~89JҌQߌv~E 0Nݥ0zN2h~>'9l-9/^nȖ /oS92xf.6 &,$X 'ž/daNns6aغ%5Es5QBj j$0 I馏Q HuI!Ze=BiPx0 ҁ[:8*L::Z#|1](GL83ڽ~~g3[@`yL)Oa2#|PEֵ!оh4P Yr@Gٛ-&2til0U 6is$>:{#.&a'#9Le<¼MIciI N]4Okz HӤ^Ӽ{08,Vo?cN*Մ5S*hcl`j!Wa:i!*li>#Ԕ@̡4Vด'V,mR& lhKX 樛,@h=BIwwr%BsfchJBb?]J&$)r#MW )m^0w .?; gC?Z!8VBFP9&|zU.hx=UP?[ޜ>Hm$ P}>J/1Qd!X=K[܄D C+4]LjB:!X0 BocZ4{  U(#- sR7>iL5CAM1r@oBDE<tEJ Ulo)GKde=0( 6DpMH7VhXp7 $f5;Bn{õ|+.&h-9/ut4t';PAljV{xuHr7m2l+J#z*smןÓjp[$g)]687yUr#C)Az%ж67Inw3LR8Q m=ƃӛ:S2Tᅸ겐YYeP `NR*,V4(xZ]s [ < ˺+QTU;`$(gw8Cc9uꐥ'Tcf:7`;6FK+}Ged%b#8_"C.A*GT՞eʭi{ʹaZYJ̿S~G2KlPe3eZ+nҿq"䴔# &GbjYv2oz=ޜb"mٝX^^wi## ) fPOk 3铢jFv$&gt nLJ;C8kV4Q:ҙnT4G;PߧǙTws {mUFoPT\&U(Rl,w׶蹩A0TD"m6'oWZ(mQM fr0Z{n7 ,`D60ٸ1F^Wsn`umN}YQܭN^|>0 xօkߵ0l.2sE x]Q ; @6ې HM2N,,]xdOx94):aÖl;ȝ0 aZw雙 gJ>wѨ3-f l`EĈq۷Lg뒬l ]#D7~@E`@,pL~r $/5&Ɓv+2&lqua Oeb$I) nsOn. -4X ARoI={-ԾctsFwd1+j=TQag1{Pֿdm`HXyLŠeS5Ks.3g+0Hq7}{9 Ʉ}! RiڋO:A >e嘜n0`@։Tؖ%5of^r}ݿ?_8/(Ju TBg@mIu3CODqQ$,LQҕ]ݬ:, fʰ[~B]d)ID1KAq1 6"NU>{t[A {C fu7=ȮMDwskg俰wBNw v&,Uڧ䤋fgWmSeYbҘN 0 _<}\k㬞h7'b҇ $BE5o:- :3dNj`zLta`ۣXۼ2 $%GC<h5 nv}KjNP T-S-TCoY]II׿,&q1\mpX_N?ѹV8gzc:݅z/Zm$(] FP\7]]Kv{wZF:HK}Ks EBU!笑m_.lފv;Qb#Ƀ5b57!79}.VuW%s'#H8 Ƀ)vzU l4UJCK=2g._.aN"a1_[WJȱG}GpdA0M8C\rM/;Vojȍ[E,K>D!Ǣ!&B48/NӃ Jœ 92K,`@!#{Ψ[j--gQ5/Db |f`Ԟ<)@e,`k"(~*9\N0nXVY.?4Ψ vلڍ@󏦩%esj/iQb |KgF6 Yc!Xgׂ:XqC(NMqۅĴ6#beR/0lOi2v B8^ӻ緁>0^J<rR[S$faU1<2\3++7{c0CIhsxAo6ՋySCqm9;.W(ѩHxxN "0CC۸L.(K𰧈%f݇$;}jA qɳqB7(uxl%WHMhp B)hs!)UJ#"v"*\6cŀV9%1ޥ͖aLr^V< ^SLi[bhiőϿ.3r)jS8G,LkhZY@`4'<=tܾ48 :Ok0|+:_!ixS,cfj@)S/\X ĒE׹fUon=H_ p<Sh~e{/u0Ϭ@='ȩdnۏdYx<2DD@cDKxtD^.\[a s(Y9֍8\pS0m?̛;옾Lj8#_a*t˔"V}(bHh)v 6tm[wecC (RFNܙmM 'k ڰ!Jtײ$ww!sU& ϜTPKi6'(y CZ5.ԁ>M"x(pnR2nb)TIJ#C-n;V|jC6jykFGlQA^l" kdZQ T@$|L&0Zemun;<`Ib?:,Nj T Z8JǴwrny8&uޚ`Ꝓ_K ]A*0ھ1G7eTEc ߷vrv / GeMQyiAD;Uy&j,xǁ8H\mx'_a*n Cݹ{ Ѳ :a7s{fJi2%TyDsfbF\%N7z:hlMM$ NW8aj뼉 ]~?2z tU˓@8ʾeߓIttJ&g%w|S @Er_'uu|ϗQ9:TኒAz@J GQʙX|^dC|<+tl'9ܷ}!C]vv߼{H]:ԧ% "!Hp-Գx_}/|uB;4  -U|`X63и(!Q*q{*4-r%X+ xƛ/{QmeJZIa9GSLW"^RKTY'+{%K5Q K'I<}V8[ZQB*HpVCɤASy;laja?F&k+ڔ |aaڱto^vkpc#@jDAqEpiT]8JG-$L-KN|Q7Xq޸BҪwWd'r ߯+j#m|)5fs-}c۔5uϣqgZ9 K6O a^ KJ|SА  pj7M-tX@6CuU&vH-PnPIBsuO!dT+f3˛<-\Eka3mc}{>V@ t0(OLnΦE$/ZB؂ =.[%^۝cams7R~EM.GFNnM`\y#bHQrEC meK]q*]@2J,}e#-ds ѵ򩫍J՘)TdfolQTb(>ÑPp,ah7#Tz3n!~ {Bӧ9~)b.4\yA*7rW6ĒNpRU@sfSgˌ{4( a3Ө)CtlimRM_C`)Δ@ڽtsU~֡:Vز5.4|Tܗ]4@-BoQceH>?Ɠ)kn.gf.tE8D)*>~Pt쭞p|I^ Dޖ9)ZP?kޤ)DM\0ܰQ C1m/g˵^h0Bkǧ.h,՝u& Wk`!#5?g wI@RH[m5*ڼ;Pmu}|醛fběIT2V,[Ux Ǧ?!Kc{A2of(j,rje k펔{g?iL1 }pCEA6Rd"ȔZE+ഢ+oP-Ҿ @6&$Jnи; Qty5fAm )Pĵ'̪}3,p Mvt^^cTr"!gh1:՞Q{$hVVsY7rvϘ mϩfE]jNX+iZ6{=ư<0MUBF8TrZVרn#z֥~T\Ix"x4;_ghMйFމ7"Y!;VG iK 6˖˔nVպ1g,y->W }G܎F/l$ UNJ9=rak@EogSG+1>5;&ݦslk/0N`Ggrt[@6S՟"Ѓ7aLq۞BO]FH2I'0Dc_c7l_ˤ(QjC7Mtyۧ-5at GݵN}F,FP;J`Z76KԱ̑_Ⴧ)'Ǖ*,C\/!<9@ЦCx!l4g&3d* j#% 2A w Yk!4'|)(=޼}9Mr}"6 BsOQq,E2qRL Wdu Eq"hSnI8e~]xXٖY}٫Bui?&YJ@run&˼[JYbVHU~t{>GQr<%W}}$Wcg -Oο"De`ȑq`ȸC:7c tv'T+Š;Ȑ#k&aI ƖEVфB"RʔA9q96}LX'Б&J :ѷzTL2>ƦLT|bP K`Mg>˛$M",&(;?8מSh pm?4HVVJ=F`{wv*F# 8#@_u}τb_Oحɮ<豉F{;~5^ICи] ES aӚmtCBl*=Ȓҹ*Ѷa9„M_v!S]f}lNYzЯ}?eg]ojy$+9Dֶ9Ѧ]DʗJ!HX}DE=b6Qҹ* ܀%PMRvZs$h$ZHfhC !p~ s +^[AMȀJc/(LI^U 4ۈan@n hgi!d&&S &ŐCY=&ַ'Nˠ+8 S*mH/6H {ygI{4lj+ǀa:AG/Y0(:so/p6i|3ew 7-Su4ꆓll&U:t- LmXB{F DKdw]y鵜dQ BژLNЗxYz YrM[ GuEV+/KT?7]',y8lŻ#'d؛Qz*2CZ^?._"z-qSdem:5q.Z ?to5%Gl q 1ٞl"5oꬷU2nL"mo2 BhJI&gD@U@sԍ: Ÿj3P;\d7OZ<;P9gT>V:q%8ߤb'tA^wo1W043UT@ ǎG>5& >MX 6NY(jtOpr{ṭ~1z8uxRt UC}lq'w #*.!S5N,ۈ4guuCfCkR$A.';'SQ8-5++ p W,2"qvۙ\H6$m , ]4ޥWRbX(@(lQP019!!"zq7?DhnZx;ATGG[?eȷ]>NMWX.5 (٥]>1:.>U}w1=_ϋAs$%!5BkS1[5::i mtz'*ە ;(Hȩ>7F%hv"aso6;_Ů_AVX"[y~eSl),5r+8=? 2)c$ܶaṯaK,x?D@ŲW-Se;2|"GUSZ f˽O> V6FY)V-$6q uYdZy䫁Ώ]mm]"'bhl[UO΄Y)BWhl m;;ݛ4! w5@l>GL!fi;LE(9ЊrDysL|:=XoNaԦ8(6r|upNA3-º/T+Sfn%Y͵f@_[boxdu=(skpwǾ.wDh\VYMvaOi.|}Hdɤ3H uTM.r߷pǦ>&<7 9p4HX !s<ϧ>Ar0yK ڍ *£@\C([ ⴑ!%x T-֠T*=+X?hMNӊ?"r VψT$DlE_1($'gjgF\ -N?Mĕ .@N-?7l3ޱ={9Or5WpĜYd(}qw0?}j%hO%aY` &@p6rΟ:c""}Ơ$J=? nH{\im@[5;?qFY!=uJ*se D]pX+B\(!lPy,С6_*i4!%w2ay  4W܊oxJ?[bE~'WbD}9ZnM% wzAi _`~tnUR403Z=DR6MjO$uEYgM nYHIx/BPJ"}펤*H1+4ݡJNJOqg"H`j^ zzHB"Zuʈj~/d4#rIN9+G;m[nrC4T.cR0HgO cB&ݜ"q׾BxsLU] 38RSπpUVeMNMlcAᚢ.]D)& _pVpbӽkS\ojxñ>wGbV/Y@H 26r`9w1au%PҮb(kOg sEky3ǚU[Pn^TkI1ZaGm#SA5HeaV +lVF [DK$~]:,6hΊ&ͯ⢫W>i,{"]C 8h0-^!QBd=A ZirIf:tb:y+lJ_e=.gaQ/TkvƏ@9e;^ɨ,1l22bjJ~zu0EKeA &釥?dHͼ rgYD3SX|08BCH~m WOyWt:,݊tlv[ L,2أ.>pڏ v_o*,)T嵩>kUҜ™ bX:;$5-}4 e K3@z7?)^_#a#ͨ|effi3^FK/S3U#_x@cx4'w8q,0=Vb{9G{tL]o?Mua3G % BaQ25OoϏ<ܝ|LzpnS]Y Q^ͺ 1lq5ό$F4^T[z8O<٧kG-J/ʈ4SeIf{3Y2'GiTșE%RB:T.%j1~ݺ fTTyLߪ/f:d~Ƭié~8A6]wZH(Qe`;/VɅ{΅9.FfsqD\d0: ㈯-S[ Q/`٥Ds e/ ~qe\^YW8Z<9RXȇtm$KskvRN-<)wX7to|C[kx*R3׸tוj{:?Ҏ@vcϜ )*`$\I}#=1q‡?cN24.r/6=.Mڹë-\8l34űr&%!i2MWo '7JYf< {8q@#6֣ G5ոf6!oV>vOU%QY-2@'NmEO=^A,+JA Cj#5'Nrc .o LgU°r*脉$:)%2؛X·3V41){KKŜ5ăӒOyzv?LXlj9dŶ􃇡~*e4rOyr=,hj S i"ո}eX)ji+z,ą SR x0ECO`/4,1P*u_#Ai ,Vm8͆ dWufDZ)@"&J7 %!Ж1scLYq:-G]B^+(q JF;Oԩ#AðjAqfV>趙Ҙ_)*sul Q˻ᓯvѷJ_v/3%a<^"gHsJ i\*C]^Q*>q#DN|ea eSN ]QIC5I۝зRfd}C"3p%INiǴρ$O=cOA _ MbxAw_QQ&cIJzYk)~{0uB.I6╳? ǡAB7uF<, %BL^RׄW\,&<ത ӬUqҏV8y6?u,+k`Jf06Hڿ;1E&٥RQ#$4֥XǍ_ݺfmLzU@-8'dze7jgg_Nd\X{D&@e'Z/,hhr}XɅ2,;yosnhU5BC{AπlͪK۱g>1堒l4Ls~7)`2`ek{nA؇S*Olk;齈V-oWAAdXt*vJʝ;XT$5rf(#`Oi}hN2^JCj<Մun;@VINL؀ڋV5 nDһ>S-OcY}0TW2gvd]:}t9eck=@{8`" uTHֹwaTg[BԿ8ha݇ U !0&GG-@zMjT~+G=RwC5R08&_pQPӣ)2V؁r5d{kA`Y=eÑu"jiJ bf\A_|% SyDJ C+@5UQWԑ_w )4 ;N#?!pN w,`=GN?@Wwq2$*Av+#7<0߼q a푸|u hp駋X*U&xҵ<̹ƎՉav ?cx>7epW%-;:w1g~A Hfn'ʤv80V %v2t @<<}?u"`ᩏ%*Bs ,Ĭy{w3 ?r YFN#IR7& Sϕq?+!Bq0K#06Gw;smUÿ :FmLfAHZqB [ f(d)e]f2^9H5 (tBp|(C 꾙PF9T9G{dL#NNTl"4 mx^ִshj&aAQiKenHlost6t&֓x}>%Xl^æB$MsEZtӮypfY CXnb>nD@au jI,BMu[#䤾/6ZOiO FG  :1iaŏ*Вbem8+W]5 ?!JP')Ic*IT:,%RbW?.oʮ̓sGi @ǩSYvc{N]+LД1bfV_0ц2=%eV#Itf¬LCXf'ۄ:nVfbD|(C+z~Hԛ7|F9)57;^{qoDu( L(1U,)'0)~?'"GZ' 4)shh=تt,`@+e WQ?CL='$=-'@;L`N^ )?&6HHY뭫)Ax ]բӳֺpqZJg5/Nk@ejyb b,<' b;MlZ(fyi; ԣ|t@, ~gnjAv@I纮e2O4 @Cxz 08JB*|qzqBR(7m.Vd]0%)zHmpq`2ԏN? fߛr'FVyAI$$'_Rk{ZDzD,`K1I}egmS:Or=V{Ô!^amHg8jcpJh> m—}&>.O?L /!_iR~ʪߺb.a +IiL.p*ށ T;v]Z( ь0pO-,Y\a[nec;uHϹM™蓀뇏{rMDw>冸]XJ͂ ,13Dts6ju~UfSnztmOPx||i{9ƚ ̩ɮMp6d)]rvn_}(k[P e9``Ӹ|ʴh/Q*+{9NUuDD|,\|.s3Z;a54o7r@֒KlI{J9/KAAG:GϨ=$Uk}#KϾY߸b.g3uwG ^=ãu$Z l|&=AkGTa*--8T@j`V9S(x큠]n EU=vm]iԆ=q1Y_ ``zs?r-߀oN{9> ᯆrrS`Q9ZG=|= Ł>"*93QQ DkՈ6HU3҅P/k }9D+W:Vmn]Pl#%h]Kڲ"Je~6z֖7^50|:H弶saW?dkeyHS8{; W^h~A; 3&O&VGţDjɯEx Ao>h {$&aoH2~g)±B: SV>k3i |꥔\@KN6̇cYԟC?,LT@Xw2[XL-0O4+U{EKEzŢʹ%ped|I-s5Dj+|z+@}A3įCL{EPqՖӐNT>.a'j1 :1DŽQ}ΞmҺdϦgJb C9Sc#A,O٣u^Hr"$p?`P ,R_qo!785frp2D` >hJ.s`q4y} (yijN(}(; Ep.B՚}ͱ#|{@R e\?`5$Ti.HJ=sG  ["l|"&68B+6Uҵs&QS3# 2G,lxN%l­H@oUB诜 @CeFX'POC\. &:ReC>Q6yI--[S2x!fErMeV'\*0HUcGj}EfntcB=F_%қxȋMs1gj9NM&+nMHU=͏!He_ETʠ":ҷNCuX94GaI׌PQv颕' 8 va~X˜:A"8g%E?SW] s )SKJ$|iZ8*Ҋ7yVDa\RBm}z~u3R1΃ԭ_{g55K?}V"XG.H쐴#RG&s(&uN֔6Wtp=&`*Gd8ٜ+nK-t{ufV"g}[=Gч8 n^mV2C[Hpɰ]ZeC?'o*j D}gVvlKI"M(T4VC@MM=3F1}s  9I neb[V؆yrij1ETkrplǒ+= `"Wo8%d{z/Trx3Sg;76;[ڃ24OW Ԃ+-KK#jAMե B$#H&u)Ϛ ^dVY2N3Ơ6жnpHsu8\(Jd^Q6uS;uf*;@ |O Pͩl6%tN /}+mBo2dܟ\ WF7B pu$P`ZݓI`4-JF+n^Zʿ! Ҍl]IGTyJ/l` m2 *˯RhX S ME GfrA hg)3)l_Zрkqd[75:!!\&~;4徵]BL,*[p:&Z X]OX9Ǘ!`ZZ5=l(Fr1fsK:[Š˫[Tu,L_@O> !s=x-!t,־# [hEŤgH`EKzw ٮW-"@?^%xZRqekn1påb ]@J=A1";I oؾRlakrW/ŷgkʿ[ם9lx[)p؎6 +$J+#r|%&PR5⵱)e( $c\6z_ lk~ڲ3d1G0%] sUuWqI:H2ga$ba~`fJUy^.%&ЅHw3C]CSٲO+qT-j:%fM_bO#.W0 OӅ"UF0In  }>o$h]05Y[T sX|S^!4su6< ț?ns9RS"=;rr_ _&Yn)&#yB zDjPc -׮a\T=o{Z "!lhx7 0'SIQQVtyzWHΩjUh ! Eۆs1hD @ cbBke( q] `u`qWګ'E~WY m@,x譹0w!1Cm=p;ce &àڼ3ns75l5߈xgIu/-BȦ*W͵Ǎ2#YFiR#mĻEYd nهڿtD!=`opV!#ιT:otQ Lj*k^feqK.I\M#O40qkT^٧, NJ8n_ 2D8@XҗL="mFf;f:턝h.yZYx-7Vt)Hyj, k[34Omwf`lkr%&c2c8x&pdOH'|| 44]17Ljp8^Ʊov`pa%l&2'MDd]geK4vWL4WFu3uL٠TOaBerzu.4Q/( .>5t:ÁΜlzmq |!onZ hB _qfF>'0Z)U;4tozAFi-ݢ-Ϝ~ӻe)0Ԅ9m,b@Pک9h#E{^,Z(^JZԴ㚜2S:{U4Ux#Q+'hH, k/(y~c]kӗ~D}Mtdgָ[zەM0ˬ6A؛N~ -&"n d62:uq [6,54c$*^ L%2|ğ>U wtgwHY'wj7L?< 4%4# 1^Ⱦ+ U.Po!4D p.@z$=IR$J~$fO`F zW k=.>j !1T3wEnH 4pgf(=0w6^O`m{D.NTnj釡႙7E;FKW8v:쭺(+wa""OwsLbvCa&4NOlj `/tDiI/]9ED>'z/4/vxDE燃m 6t;w*ɊO ciOдvB"<"3N P kA*msDr<-f(&eϭ>` `E"6dp&oN_ maiW!#;C`wNA&lIiԉصQ|Ѯx9<GZ/HgJu/A~~,&4 1m*@ /P`y3%57^Ӕ;{T_ID؋+0*LO]bcd-ofUBZ={bW&OK䴺P\AISE֧D$ 7ΡUb/5̊9Hp|ぃji܄Sc: {^y۱RRzE&e8$}ڒ΋4xI'}s}onL$ۧ& XWVH Bq+3T;*~ DAo! $":b0g+>V!: VFlY6=oD_g7e)T@p"^^y(nS s zQJnҠh6[) g8AqlzN^Nk>P-NtG׹=,ʛϥ9x<J>`/yLW5HO۬:#o"BtEWTN6d ^dܺc$30:r\[4B]mGW=TjsCrrLFILjgpa`kV/|UVrH.OyWy,9= G~U|xP/Q;Б |Zejs†gsuʸ`؀UQ&FR݄?O8G*B(̜5o ! ՛%RB/ǒ 5`--Ht0P96ꖃ/#T+13jWǨN3BaSNSPV]V8o@I&oyp2Ӝ8]n)If@9Rk÷Fo3^\uْLIzHJw/oWsr)^iJPEARTDQ3ulhH[j ͫ%^uLw`]P]\ktkϊ3gJǵd zS7AUiȽu =cʛ~9V)d޺R Ac(O5sbnĂ셍v72hܓZ[9?%_O%rذykt3ȭn3zdU1=|*8w͎dB;< _0 _Cf^\\Cr@G,$Lgg-Cp^\zBsYAjc b$S"D8^ H7['`L&l{s6sYUR;;[62x0ggH:;c9#Yk0 METwчP3ɇ7ɪ+8c ƫU՚U6T9>x{Lcc1R㢌d ƎM;`f4c%Zz!hohP#73,V͂P=}:8Fұ89 fu;jZ~~<7n{ɈV'0ckMyaILb%"ad}9:-8~V,˔Y9Dt?oc-ȣ&Ȑ+M/ V\1}p PxaXo\6ڍxG) /ӔlU{arBt5TCenM_yZ2$XuF_XԌڔ?cDӐ[WSE22|ƀS5^r]4djbDp/kt#䥣 C+AzRS;~_PbwBٹ%(XvE?<LNR3H}Fb%3tU @uXzA0?IV/TuIJĿrhm̓f:7|>qxT/{wNRuC]_c)c!%镨?Cq2h:.TV`y*)rI1^#GҨ"*6ȧ D1W^TqMhrl%o>\j[{ʩe ,?,g :΀v6 :k,zJX\4SRX0r8/+2/֪-ywɛżn^8y1$ KԨUR] Q}r/8UHf?5]OD v&pG49 r x4vH/el*U׭t eY c„5iJjkIgQ%Y9=o,7[D nh:Yy@꽕Tt?5ǭQxQ8aRjU<SimN;e<\~CԮ[@ױn bˉwȧpFؗTm4/~?:l |F+zZDžjAjٞ8 s~!$]}pm~34:LwJ}R!xm*b ^'Gпא)8,R bo((,Y9LQk4Oͺs#rq(P@5Yd.ஃ.cɹO\#t`Js+YMx/H pF&r^vRmHN$ D*rcGu]R)rmXVdFh0S%`:?WFJ I{ F{iw۸Y=1"ʵS*6,-kQSTk@wp~\~;;;g*[ux4<`cU1 @o0 `)AP7).a 9P5"YaD[Gd!0{ez@+o%`%ٴ?l<]a3C$?0T#ZOv2B"%?_aas|?>H}0F ^F­6nK!ʮFۦTq#(ꬣ87^\^am)e٥8 X;d~ECjQ›!0) ` @ Ec,7A07Q; ]+/]~0`Op"jEsnM7mTu7D㪐N{ b?ZM1B5n^ekM5yf>p`%վ" 5F3p&^Ls^r^cF2|LYFcR4F޺X1uMsTMF̔HnR(̀k}Gn()֛İnw0&b z><?bXͳQJPr)kǙf9`:}1&KŇvH " J]O5$U? Y +(-_)AY8-<|z|t4ll߬2vlj59$n,E (5:(Qd9aE VG,FT!cDmOYNrAy )x5"Dz5/I~Nv8}LE{c.D%A*2Cd2p%"hM2d5 ؁WD#p]U%g\at(ͻ@GE]];F"n(dW`YH) (톕1I)_2o~ݾV$;1͹0.jRw𽳙SM* ~RTK]@t "U_4t??;͓e%zE1c`yGRlB^- 0,8~'Fq]%s}輲"03^.{] rZűz[r[*\}iwZe]¸)a3h=߈^ޘ`OԌ)~?g^԰Z O!f83zAK;Fe{r^y%fW!GL:ڹ+ɫUβ"pU3J9|MH]f*k۝ z`%|݄YYD;@GmzU&nh.-$'ҍX$e#O浹0<·O ]`d5sA4l&Гp?܅ Oz3ua᾵SyrKb7Z+` *|]7̩ep<&ի 8my&CLՆ]'zJ{d &JOb2IXDzU>6. SXHlQE}Ӱ&YFrʇ# !a\-IldR 8B#핵أNqqHN5BJ .Yi'Z6x*(5Ae C[8ƼǤ+y/wiSE9V[l"uGϷW ./)(VO&Ψl+U/XVl ϯ6qz,*C1yρ+热  L=o OgSubI0p)!/T\fK[8)0 %x7!n[Qk-Z( 3$;I tŶ\?Xi/ !‹CXJS/&UhOApjsjv"z׺Ft ѳVJU93:u[F-Pf0$"wnQn"o=o8v!ONDW7dXJ3+{B) >Cl q.|_'xLg6!_y}AH!Rs*"\c]1z.kp*ͧ)ޮ-GrUa(~(b *)k~Z+[H&A)fr @3+dICO(T7rzXI %p3}DNw~"UV L}KWhδ#, !ֹ QG) 4V o8ئQNRJPEvl3<8iR|R4e{vNcc3a*,?A/,&Dw Zr6XkvBoI Upsul(RGc;TF޺{Y9f܃~{C`]PF k{,U؝i 6I obC xYc ~O)'K~~r%3UGN{TRގ oF%s66m# dH*% =] ?$17`9#mbߏ+FL^#؆-\f;!~^j,eL zgQJ/cM jϦ["n5B\ Xyo>UAx(j0I1@ӑ%:0qЛ IaZw CrT>Z jTrWH,r3|gƸ%RZN#Z+wJXU0L4(~1 K/Z;/nFc~{qtO]a6Zm\^XAC\X<?չțǤ6/lqdŮps9@5ϡR[ wKf.Qg&Us\~eJq]ol)B(WʧT)=R.eɬ(VxJ<94+"|EE<\io(z>\|à (OM@*hB .5{%R@3BW1x :S2(fVTV/Yu:]<,;x‹ jQF(,g Tc$LʙA9 Xa tqItr6Acm 8MmDk"׭)G2?O}!:$>͕P["̊RP_%a灬ͣ^M=V4N:6^1yN ljz ʻ" by7ګcmt'\C]Ĥ|V~Q l8n>y$2]SM1c(׿*fM˥yJQ)ίq8/UE)3XƠJkhb 9)-=#RP"mhɷR᝟t]WCxg3r ?(݆-tԞz&( {%Ss^hαw`}:׍HPf'@Iqj}F)Ul2 o|5?k>fh: p|Kh nAy3E3DnҌ;Biǃ.W3;qxJ@Hɸ.+il{5,Qq˗)\;ԋj\]޺s~»ehU\?JS^*c1 'Y(L/{MUD̗ \^ņN">n@?=[au(lbP *Fs\lLufZۺQ&ts.HgOv:$cP7{?2砺Km%e0JQ>-%ܪqǘ(^֢ TXl˥2W=3ܲ:ɑ|X{ڂ.g4 2 fiL=] ty>Ӱ\R p0& {5r̹<^8-+QDVFq~ń<6SM]4IG8BGÚ5 }0?$RuUfՁQ}X]r~Rd+O%Ι" !r%hVc1D+aneZ0FPT~_ $-(% ?qkq3>O^\ாu"'Mj {e0~('c t]⛡=>&:>Var<%"r% !2 e잇tG0k;YaU6 =xu ԆreQ7ݧc`MKm r44){"1n'E\r.Gj/!M M%LR/ rKhMW2 eCM6Wy-fT~%ecUcT,Q}IouzŇ/bSX`9!ߦA#QTZMz$>&%k3s; 2ȡ S|~dour5-Fcpe(q"hvvs˫/.B4 23x"4!z3",LP'Zhg>}֑\%rGI_o歝!ENjyϔ )vD0/ d6vTO[@AJ+`bokgKN@N f~H*dEof9\U ="-N,')B@tΘnUEh4TkMtj7>A6 Nɗ^M_{!; &jQnIď(I{a)PQrW_Ƈv(gJp{6$ 6YeIq*_-o(Qܳ%Ao A `+\ iuH6>u0{Iuݍ8mY9t1HM.'*; N: v'رU2]@3 \ջ?e:HfeQ2Za+SMGlWJ#xLbLVf#!3%Z۽` fpf[_y(eDE(*L[KL~#i͆(Oc}gxI *0("GU/IX}l}CUkNj`f'1wى[w:+~Go#|_ /.m Z#|8`"r FAB489qHYD}Y/weq} ,m=2fru r' VN珢1F-1 Sc?,_#IΪ 0ɇ֠tu}Ғxh!M^s0McK{X.'mEf5>YXVáᐬc,ڀXחpxNjfjϠΫ%k"2gp?Dek(nf̞=J4M mʕ!s`} NRU+E+S>-]^2 `k]Vzzy(c;8PXTPw87^|HүpӍ`&_!Lȗ"G*1*I~a- r9~km@(#qO*IFsВpɒqmI@eP2UeAf]ܯޕH<c?ːr Z f'\'Ծ$%Yf\Ht"h}pwꗋ_j`^ Ồ6Fcb~fRqX OE3B͸4, Ilz}?k."Dܪiאb!vvQ gࡏ$ВVzȘ["r:{-M,NwH2N#.3x gQhJR 8n&[ n cFi{ h􏚯r llN[n.L1Y'R,GUiʏGLB>IpγgJ^RxWQR J0>(d#mNx@ZB\)2|#UšyT{}f*z'lr\3D>YX&UÊ̲[>u2P͎DpR@R9 *۾<܅'C~ 0es%%0^boQC?Iy~ bXX$,5rF:<,@*I"d|Xi.qi"ޚL ړR[vv42 mtژrx]֧*'ੜ)`@!iZ~2>6RBTՏVHj=i[)g㸶"&۞v;\xJyUvi*K'o ѬfK{drZ:=uC񨕽M:bPDwFaCO8A=Y5:hbN^p&;?QsxV-eLkᆱ+J+Ik^p2~r:. 'G)78,bf!F~O.zS-_ #YMLIp^,֊"zpGJ Ӵ{&MBK3Ajz4OHx厤0eZWMtn=]dXXwe9,U-5;LJ1?5vP`W촅CSswbZhc"GІRS[k)Dobģ+"c4̙ur_1]E RP+wZ h ikj:>o4c#ۄW5 H$BXkur*lހf2տmp7oti)} V-=42k`P(o~ E+ J6ȌG6Ny/cI%^v?L:rQ0@(?g,bpwDu3lo0]t63Ai(bb |f&F@ipyZc7 ۵_j8ru=OkBɍL8E)=(q7]hUjk 4NսRKA嵄J]^A:"+o>pe[^g>ak8 bAr_ё 'UEٝeQb"L۝w`2@^>bz ӹX룈0z%- [zNlR߲榘-Y̓wNYFPO:ޕ +&E$XևTwq(xk(ٸ&>@}m:kݾ-zyn9BX|{Y1=F@X3.m?Om˔Q&[8f#iϗ : xk*pkiHG>sUW-;gyt 8ܸ۰a1:x~ضP ~DWeo}Wpx6pB;̺F=IWRl9ޙR|{p /)F2DKjx h*AҸikcҜ WDeeֹ#DD- ClWGo^f1;YN l= D.iDbmld[%',TaiRغXܨ -IOp.C{h/η@ \![9X&otC0X #}jF(Uzvb=v.^c8#oB9 x3-mY.84?,ZNf踤[gj&5 g ۢNhF+V߻ACrHu9i&I4YJ2 p%]L8xT„^X,KK N>̺a6N_zzBf'&!AmWEbOeL"M:xM=nO66t𛪇W "XG0c ӱshO= P&x Ɩ 1IFF|4TZI}ۧ.Ps!Ԝo16[8/3ocd 9#-Y FNDJHu[%]SCj7O(O$)@ЁVJw-:A}=gnA@Ow9ª@|J P&F3R#-9%_]_h1 eCJq lđu Sv"+܄jV_%v'7&ub,p["EGc@ |TjQ`Xi='ܤTGOë1Jjg3Tu9>!dpɼEC1#NLIGUnF0q}Ţ|"]DpTRuU. UT&OtڈË7?0~Ag#3|ob;wj iUT>8SQ(*,pnoZFBqˍqУ W@q%PY>Y#/j- 6҄Lx'GJ^{3|s`R`ߝuC3œ#b79 *gh{T++r@Ȃ׸ekߡ*к%D Y;HiوԿ*DKo{o;Ge$2E-oRO~Cl:KǺ0;%2#}F| YN]Kbb+mYX+9G d;LPgQ 5 '΀;:˶;0K:Tff׺Φv-qt$=̬%\]j )`&a%V,.( r6 ~J>tWQd|2S5+T<]  vr4_7lH2kx(S<N]=3l;H탣R-q[ XSe{U3 W+x) p|( $k>S;UmW9M,Gl$b %iQo]rUv 2!LN6([υq,Wx"kZoQs1(cJB'OoF /dhzk$'Ŵ:ө}q ᅬ*#Pv+d} Ln5=l]_ֿ" à?A*mYf~n2*hc1S7$֩DCo7jmL20! ;9JTT|X/ߥz9+ЭIPr6+}+?afOD9w9r3 pst}@6 J{akjӀwۋUzaMDk{ myBYζ^ cv̧XŚUgٶZ:亞GɈaK-ΐWRMU"s 7Yo4*l5w"TGPhJRd`W"(kN1҆X;$IwNkD%_0djRxGJ/ܘTS FβV m;qF#>cPZan(.T5'㑈{' ?j\P;fOwM`WS>w0]\A=l`b53Ufȑ^wQPICQ#yg]ڐ ]7.n')o .yh$Z`è![` wIz;|Fk}}M1U'N?daX`ƽcC[P33[]B2ȐhU_L&X&w sX}E!G/؇t'I(SW2O=N>tqG6 ,ҭƄpHP,PUO3%;)\:ȑOΝkXEA&K%EsM RFBq5↥Xm߶?iƭ$է4!{놐B Be`DIzŋI:WtJ{ (85/?-L3qG|)eGzk̭1Eȟ{! 7Qǎq̘&Ԕl`$"Aw-Bꮢ£Q,b7m3!1Jif`)<@9FD'lAfVfj:z2!x;6Irk`23wԇUf>p8\7vf\u=;$af4\))40aZIh[;XVJO ވC;ǐ )rV'f} vn/Y΄lTYx%&.1cܧ{Fmp<oHߔ! R xNly3;<ۆAc'#XCC_B-#l}u]Q+uE[TM֧P@2F47P[9WlJ)9e$>?Q  ?0]u UeT"\݀ S]- AQ/rӎdp@SI)Crf; ƽDIH\Nb Hmyx'\4x8ϫ}OQҰN.q@ )_/Рs*R䏮.~v%j[ .PhOB+ԕ.ӎᇷ\ԫP",-oX`CTukZ2mo4Z)-jf7S[Т3vloJԦNXo[.x%bڶs5~(DM^5/&^3t?vo6kٓgYVxy4pSf>+?BSڡt ET'W UI\FUKl{'ȃ`zUN.Ri֕xav|ySujUEV!p&$ <|"$LiW}2ܿSI +Dz/ "ަhxk4u>Kդ-0GG,7@`*4@ b) /I2=H OvWc6 DʮqHҔ1 laY "zܕ„WM8RV8"vpЌXd9 CAۼ 6FM =!zG0&:f={nM3BzەK]c+v]U"fӖ);2#1S󧸹_5Z0< BErodm[bcJHS>p/4 & Aj:p[ / ϐ#,A+?Q D*,;S[8J%>?Q@C~i画'I_٪OqG^'nXvBm6Az;]w&XJCj{g+_#ɋڞ^f0|h |?P'v5}yaǃ_"HlYդv 7aDT}iv մdDF5 iBTgLXVhW/VRTt/Ov?S u׭_& )V]'_E6gPe҂]6}Y(e]#5\-3uS!پ t F=I_W}Ms(0mYJ YR|G,Ͳc\VvAWxxq*>772*0 W xdb9K15;~(9PxۅjvA; ?{¬C(!ȭzLY:pe0z.BzD6BXa0yh X&^)3w#t+₀Ixv50MYkdBpG}$- Y% e|tzQC1[9EiPPJnڛ(_nx%]Qn[,(hg wǥ٬ByR{kǶ0jxK wXIi|G)粤PE\L3"VYZ7 ߹G'01ð:Rdِ~וyh=!;0*8D2o |dS3bYˡ KWUU?Ե A1lR 0 6 TgWX3ܶX0G>;wmɝ#kd 6B֍߁fS.}+X]F/&RP} )cdC(֯(ݝXcesxqc%54b/9K)WȋABQ92<Tt0-rŸuͻ­ㄦ@T*j}Ffٛ]hY T̶P(2Z`9Ω4]ĮtϗUWs%݇m%07g4wg?LxPȤ [&{Q3K >"l ( [Qfx rTyESД5LLCzPm"Qى-=\~#B4Rɥ'_c;4&qKh} ׷Յ\"qù1ƶƈR pf qK㥀xaʙF$=$&NhhIA%D59zx7 >[l-{-\o3G(%lY֮0XUR\x#i('4\7߶uBX,R :(D6xM?Xfa'b4ۙTˮ> WV^18`GxgevLNaeUu]ޝyBK,m>I\,IP.%4l]^?nFTVY;7McrKĶ/Yc2n=fBf K[-S|㱌k4t>pߨvQ>#Ң͚_-|WNM#Y.g%uqd=4w Uu:w)!c|zvW6L{P%kG6k"-HwЂ>ݍg4 *qئ{#UKjA+hS517(dWh$ eU~<"ƭr3xvU9$>'a~Z5tbQB26)WkHDtQ11 E\hw|A[yy+guJC $5 /k_I!K~Ģ!S.)f9ڏ?;A~ȣuZaZ!jxwU6B5 gsk7Y=cwLMuCX\"X1L!;8g #!;XɥfsHw8(<; gQ5_8;2Lb4rPçݩ祖EH>A-L K;rZ9m|80I63,[bAg\ƥ>$ 'M :X]9o\'zo6ñp rkWoFuV1zCҶT -T 4j Mv3ƻmm4>>U#&<`ߢ@] (@h,,D.|w$6`hSD`^GOC*0@(p˛(b@$'\W%.z&w=[l?kuȷz/j?lMRkhoM@bVk\xc,p$t Uz%WcܡYҥ}@%rMuƹfRޮT$Q"풟m!{_<=ORc@"TTKhlMO٫$Ϡh{&[&8M.R[3aFk?n],bLؼJR|=CR VJAo?Ap_|*<9]밥zqA|eb]10#KŚ4n*[G$A$ݍQ~ʷLjqwp# 8 kZh_,6d(]@ũjՉIv KnWB:iԏq; gQNrJ'7=:@Bc0CzJM'AC fM3L@%ˁE/t RW$4NLg,I1<#򠫰'HPm5þƕQ0OԞF+Q[93v8(ק: UobP":UT%?p췹Hx-$ 5]`Q ]?xIN>SIBiT3% `Qq947CWOd$'` j{jOv= ɗvhቚkovBS"2ԩRU >C:xDj(Zyv,WBSb#y቟ &#T!$vXڑ&WfyW{IҔܥT `$roWRZ:.;+.`xk{I܌>9Q 1h>5Pea 5f:ݑ:*<̶olYm(IXTj9D]=vMA+a/\gk:y mU@aB-sY{c$I8"auAVvf:j2*;q$? D&$A!Ϫ0*nSۉ^O8A[`T  '|уF˧&(uŴA4d/'s 5Z.Epg#Q5|\͕}TR15?{F.~fPmtI6c?s&%|yu@-PFge OSq2CWI]h|I 3s Vb4in%VkQ3ymk ;NeQ"TMlw}.Qi\~+NWIdsErOʹviȻo:XO1K1cGW ֭c+xA:/c+l6ѴacQ0Hxպ6)~|@KP È% yϬ $ 3(ϸcwa90n[[>(#=<Sl'>cC^>bR'ا SCbW+H$Z@Fu0IY#>-( TחRBLMkHcx>MwAAdܛQ0?o>izZ.iwxSKno2MaCga.cݜVDj^&Kb<5o-p`aY 71i3`va$ȡ[2Q-/ Hq%J%=DQ1~ed9RD-sJ3Ï -7LSB)mPgZNX}ar9nӦw!n_U"D٪k32e-Pϥ s, Ms |KDA7io*E'=3[xoyPQpSظp. ⽶Xb z!.4j#-Bg "!'xPEuJRqaH)CY*2(@Ȥk~V' hh"Re-wjRMRˤ1ב ] "O&$]R0 ×tޚ)K2'̶nbŸH`$a)`hĞσ[ $kV}iVIX^ E<*rAuVULW,;}s%=A 7:jxh@^Gʜ՘.+bƣ rnrjB&*$hKQhLWncň&&c[ z׾{(y9H%s3|.g0*hswH j1mCDD(Ӷ8a(*Mt+"z~h00H\kN^Eɴ7]]+5o P2w M=)#4.Pn")pd.YAb5U*PԀ ٝlb5Zěp@иƬe\IUJNM3\+3'WwFԄ}́?(0l#0BT$فB3ÓM*ĝF¶E M=tT\L/>_r{zye{څOPWe̲ב2/C}5!{oV/WXUulH3W2@V {G;b< _yYGR4\2$ 60|F5:ez'z0||,$o(%!h(E:osE[{1Y?X |"ݿe'<[OA{{:>> hzd#lYxB.*K^tFb"9TG]2Vt.w'WOAXx]IQvÒ8djgx8?OUVظv&F&Ki)09t~(BuiٮM^pբj ?85 =~ u6jb 9?aEazBC'VTgOS"x%3:?6ᕢO9y&qتB&HKՍƕm/y^b!d!G}؇Z+Cqgeze!PT:JWǎsO^za7-MtV RwBo(<75ud^։/ yIk?z#78|f+Bdw@OB`}|͆^A@j9XSŢ&o9ctiќWy&=ݴ~,/pgg#ە-4;KwKt-'kq361g@G$FɑTz6y'K&Wqt$ItJ$f^8ԁ&B#Z)9_=E5jr'`@nń+E=B U䳐֐² X>f(-k90< md]7hj9G { Dj w 1Fq9Y7H0γn\ $:>p[Ʌ>E=v[e8Iq̇3;< ͵v71RIDU6Ӭ^;ȒNKaxe{$ pې%!.zs~篡m4A\H`G͡):s5^Г,I^~0E'.VVX, 9Ԩyl#WsyZ]ü ׿mcPib'b"=LauQ!#Wo(YK&Zrp'BO>tАpѿ0^8T.iѥ"}63UF!Wk 4ǺSmr< y#qnۉpijSCĆDZ([fHWru/mlKOt֩%* d,)vDOIF2HVamX4@D4FsýXp`ba#NcЉJ_@3G^)&Gwu*.m=내J41qt=3o I Ĝ9UgoIWs%ͥ+Ά&6k ( OxbYASyN!sIZ{J*&繩B]tݣqqd0~U)lrRUEU{V2ЂH.@ZlE]TZ XO .09`ASj+$+\Ssk&v2C5|2=~Me᥺ZiT_GiPxr:wQTƥ\i=r@\vr@0O'l€(ot`CF$ 4Ko{Ut=gÑ}3w}z (΀}9fQ R14Wbtg86kz]ϖ,9p҉z#hE P T>#(.8ٷP`)JG|3 a"|Xٛ7QctH8.%D&ށːF!2J?98t Wl] ZjwtT.9D35h+. s8ƱQmȴjIa]y\5THY5׈mT20+.F_~ӒDf=?2#~ ̵AIv@_^(q'9a;ώPTK{fM\+.BͿA2P?e MA~{7{>;5=$ۨLNSuc^cspڻǙF~T/H@a$cfo-{?,꺘(ja$r 6QRonsS~a$.rϕ$ܓ9ZbtB]HK"^CΦjweIڃc4'vO!R8e8x(6nA<;+BLWr D=Zx5|{dȔng+څ!Q5p>(+J5]&ze֜¢[JVbK>jiծ,ׁ4qn&hJF1,dDwYC7@[C"YtJ`ؕ4e%JðW.$|y[MB=2qesʍO-6B ^pH>0% ݐ 's p/ [8A#n0}=\i @yyxl_Ԏy#T-*̦.?\ZjcƃtJXvʗL&+QeW-6Խ5]`Hg~"8L܃MyQSAEԨS:zPr#-M_|s!P@挽侻#E;@R>y>=z}#YLHAc7^]{ruϼה5`ɾQ%{8Yb8x 1ͩv *Pꙝ? Izƃ=%XjU_I yHo'XU;_=n/O&-ѾoeۤX66w( ]4!YMj9띐IGr+ܹg+7U+Z(4%;Gޟ_H,⌑,')w_)ݯ~WbӉ !~?6r7sy:0mu4+\&3gWYJMbVTUvf"$/[d3_h(vWGdU`gߐ7V*"frDG6;B1c=Zp q՛q s16B^ϔa s$Z9{9Q UE`rņ72x4"BR  S3d:y?i4>5IB<+3$G9x -4ĭXLQQzKm:J̚q Б7U|=UÍ 4 ?? ʥ9.RBˇaJڦ!òI?*,_9c .] 5UEV9)q-]2üSt݄~dJYʢCz~ؾ Ç{$G~cM`ӝu'ø ;/Gub6?]4d<K6|c@ĵ biƼU#SM(uoܑNeğ2lPki2 -8_)n[M OK[v["4V)H=fkrr9zUܦd}ur Nl4݈'mḮ$P#\QylCQN;Ph%úOqrIth9v"a:.f$iUBX !z]%xr.GT> !mP-ĪdLY l/|{-\c \8}x2㈎\G Nt my?E`eybE>(AC|NKa6RIŞl>@FW (faXh l6_W4sC,v!"?++ۉQku"}8`gFOV}B$6@p,oR+`Aq8??}ƅn-ʩ®A)ԵNyZ|E8!J?@eT#ΫiGs-$%EV!2NFl|GͶaɊW D`+h"Iwhg츒p6 ! }njQb{-=O=j56K*ο6ls2$KI16zɣu9>KI,N ?lLO_DO oyy{r;<`̷Nh<!+~HpCAΧ A;aPLdyɒ_%i|Nʾ^1g7/q lAni!BvQDpֿR, Yk]%(22u8͐U6{j"L "enrVy8A~䠴MlƎ0~!+#)wUK#ܸJIbie*EydD}I JG(4x[<(ϙqUI0H/sV~R~f,98f3Eg&+UTUxU i"жy9RLO3 RkIJEvds shxsg=*954/jtXŚ]7w%byyYI@b_oeUD9~@)E$sΊ-x6nZBZG!稛7{֩ˬ|j^PX!&O0Ne֎#R=&uVi9i{7܄PPrԟD48$Sh:A/[1.]|k' 6TP#S(IN"g,b6$]8[Z:RQ]{ ^qw{RǕqf.R<7?WQSXm+n;"r\:VgPn`{΁&Qro{`u5HI} y@DV48cA/# c(7*!+!$躣?tЧ3ТhQR!kB{x#==ׯw?MjV\1mTpp ֢},;{Ml6Q3nQTQT-b8%0]<ސ%K?jj kRP,ODJ F+Ф {^CJ;*N͖9`ag'{NŃk#Xu;V)JG% YD[Q?pA=Qp/@2;mLኽui[UfYA-*'A"Oj-6{oQr*t4EFB*uduX&>Y̘>K2~|abSN˄:=t9xɛ&*G>$N.Z̯ܜ%4 "BĚZ[|uOŁ&ZO.NKyp}J=%HZq! 8qa>;eՔ,ٻzwzqw1w2'3bKM))L*l-IY[rsT^@dWc9{fL.QfWo#z QQq1x)KL!&͉@xѧQVBN +'ͱGN3`^ 5j#o&<ޙF)^w4L哣;DQ7(.{++Y#dyh og(FugGU_хD3>tƋKַRZbHGKډV~> /*%G(!S([Fr?k[-FD&_/:*LGkAxq evܴoRq@{h \)DXGysZS|6GIڬdyXʰDMG%Hw0R)ț8&cR%[o> n _In5BCv60s}S81YO{67B`uOu4(0O}ƃ9zi:,P%#CNjdvh%$HY+aUcܥuz$$dpQg[{ϸxjotWz+xߩNJznجvZVA?-lEӡq V"6" [Sn{;Cx|.^ \T}x<211x 8PkGlXԕt{ ȓuteI Hz,Be@7 eƨz鍚 W^;M3Ugq Ilx>>U}ibCvͽQa@vBK'~o#`G-Rxu lV|#dyԠhNRXԍx D Td *W Zz*Cj2_8k7,ij؊/]E&8Սg~'`Dαmy5r_" PnX6EQM_%㣳s!%p[7 qda\lIKNn"\lWuy~5mq2W*$hs x0XljHZ"h-^.%oFt:\`/ zרmyO񤎴:SGQ [0P5R٪56o0ElԾC[G[%kD_ĦnMuhԒ M~Jp7ߴNS}v(ad&sT/]YJ['WkH(.&+F#(q'@?vJt(,3:]Lw.i6͎Ej:COxƋl*,ѥ$,L;TG/*3_8t_va5O;dsRO+ 5jokd{|e [>0#יmTYͮ M4}|Tn[Sv:Ng[Ra2c= dwNl|Z>O\NpS7{%Rܶ/M n[jRxJs}O&جh8 B'M$ά E"-Z#YLՔ!Epj[\#Nh.A]/upߡJ \䃻П-K5*To(ܭ2sTNŵND^z?."{o*$0}J-G{jfpITB)NbwPn}*7HD\拈o79p`ld@p^#|M~i3!VR fS}=%=X{Y\]UY$,?"F4v tz@V~,ܰE޳ ?Ŀ#lq $L %nT_ʔaS%]NAC[DyεVn5g!IL m[\ ,!803ַ3^OW ޳N>8{o"`~( ɮ"Q I Ap0[n>Gs3ͼ_CDC;{XE&, Pճ^jyҹ}K$\S@cI.[VUoWHwX$|+5r<'>Ȭ%`¿u!rnY[U Fkh:m?] HIVZg7s?k18JJƠ,ڶ"?%ե+hD -=C;&#zˤ!Pm3*W Ux[~ LUe>=e aE\E\/̶5>0С3'$ۼ&vQ*/e]4.hU~ΌC;xIp- \ZP|+@E]w݆FuTkF-ٌvXe6M6x=؜A@FNl1QyjSz{-8o$Ps/0)C!MZG_]b^&tN>?CR/Š U ' Q'[F4GUh|3e=79]-@;uNg: !7GK@ \dPg]-pyNMhx3E2ggj{A|"#+6FʰkF-!'"z9=9#PLfxMpn3t9}V%wD* M?KP2H" 98OiY$|}6cހG7{"Fѿ X)b&+DpIEx.!ZpJ)Vf63jsnFbφ@@8?$ҏ_E|𺝞7>.6b z)sQ0Kp-{S3 9C8 dfoȔ2SJNJ}(wZm;4N}z~ l "{ v-sCa{X`ޤT KƁ@^#,u a ʃ4 *6z[\('j75 RCZxѨ`&IF {C/r)dQK9:C+UQB,H.~ݽAlY/ȬEaue׍|ѱȈs,}@epi1 ꍩQn7+c4!7]1fsnU2FUL^iqPz¢~Ll57W׋F( C~;69_4P2/v [He%c;ZU қ}Dq#^Z6=3ё㧉I]EJBsŕS;v q= 0,f>sum܄늝Qr͌A1Ȁ:m20Qp]|JU1 \x]l t(@a){d 㿀ܙˑ*˅{zI,<: dڂ ;Qn+i[d`dbXيؽOZ&pb"F l]} L:<Q#E=m>\w7~߯)EC}}/حiMqՉ)UK-TRuR\${r("HZ$K"tԣn;?CB!P.Ag_[D ݧuO&gF'+ɺ p[~3yF0 P 6ơyacfkI2\=L\yS +0Lc (#+m  #S.RvbOlk7荕AԁI&UeT )ԡDcV6tuFP=?]އGJ='peE!҃ %X:ЙTt!Hlt%QL4J$?JOoQ %kY-z~i&PC)Hdk%r_5!I9Y,Dvճ٠-IWEI̫Fd2yfaLf4!d(b`C˕K=g>tX?" j>^ :AB 1 +[!Y"_)8ub*G_KMQ*0l%|qw,qy>Q̽|~U$+g+L+M i mvxf~0Οd@8#xuՌֱ[ +$a;,:~B,]N'>~|ٻ0sd! N?F8Lϲ)Gfl]hDȟs5"m#Ok̉yހ3iZlB&44<(x *ENwr~;UBb [%D0a>j^2b+UiJTҳV jm J''npF@;(8LKi@R,3|`XpͬT-lkNM}vC)2Ir1g,W9o% 3!q GG~- :P%eQQ+ #Eɥw^F]0D} 23BgGQw7-?f={T7a_7-P^q%'U|P -Zh+wiꬳ 9MTA\CFb\N^_\&OWPS/̼Z1|z8{TEFztKRd[V*>y 9h\9 mZi@GC%6)pKSl ނ%1=rpYQ`CQ⧩bWO:} 䴔h@Si7A )"[Rs7W{[)~tNEgear'TAyh{s5Prj(v>_~~_ e`№`f*gׁ4s:1-1HmcDD[v 9D=%Ʈ@e w َc)_\v\jgoy;cZ\>jL ݽX z,\M26bA2<'24¹"'B73n:w݁-\>ZV^h4sEȔL!Ůt6ܑ<+ԁ^~JOuZ=EX=Š&4"(mHO=b3GmM}30t պ;r NX2ʹ撛VF%8rzV @񔩅JE] 6:9 Fr]1s- M s%,zJ1߄$/*hHȗP%וݑw5L5 @WI_es[<>,ʃ}~3FZ=s#_HbggL1iKU:Ռ猴ҵ]ֿ@?Iq6|3[={J[![*$sW:/Ft¤Kшu#g$9g8{TI"wdd-`傮!RAۖt8kfz< ; PҭV;^] FI@RQ0} nZndPM0,kXڭ6%6mjStn#8@[C!=hQ xj"w9B0 5!\r҉tZ>@U}&З(E씰uGʟ |S?+-۽J&\1qգ n4$j>TFMLjd3r_#GI7_ zCrNGeɏ%W %`Y=n'k r*T utZQ2 t7[X:\7GD.r B XBKB#Ii8rZkt/!C) #EʕSoq+.k!'JW_L<]1|`C`;FɄ)(6(=yFYE,$.r:P@Njf7yK-(C>EG_u6\zA:JmpI͔&STx氽=@rn'Z)i_K>V-3c26m!!Geu^Eޅ}Cƈ"S3Y*Y;DM'd<~όK l?DcG1"Y=.%Y=l8#b"jH+<ƞc"a0c\&݁Gxl\DUrʔ獅JkE*_\Hӝ+eвA5Dam:9T }Huf(l'GAƏbk?[TaO|糈F<0A}S6CAh!SV\΄P^+6_6r1tB7 KG[ہnx5$78(p?{x[5\;X°G 7:sv5?Kl"S=W6\+#Ngۉ820wBv~_5Fm ^1OHMWF|M""JPӲ]Jf72nf;?1~y9]#M:10Wvz_c}և:8/@oUZ&Qɦa5ң|(㿬]%E kG,!uq#ЖbgqC*deR/ OAx8jh|Uc7PP?ͮF0 Yܶ;ԭ#O!T%N­{r'ԝϑ9X )B3;!Р]E S\[RO;ȣIB{!wI(219y "bܵrf;E?}9$j CȂ\u)k"+{AftSoW2h[xDThDGyNf_QfSz - B wX^DRZo_8uۉ0w)`1%EiUmyP-U a|U!SI x˘=S -C޷ǚ8))oO_HrtvW4ܜ7ꀧs|J"9A>i3GB}5k`q¬Ko h}AYjs1t;Fk"'$}IRHjYYNv$+XnG(g G7G*֦q! C&?ǡJЋ!ݟni;v&vXGNU\+Cnld 8r8+>5G&zguV_M-{97mbW.fuSwD7hڔؘ _cˇw] )J9c~" 20Y 8 ^pG hq G)ɗVNGށ~A QLp !]K&ܖC 7hTi9+õ%[;5-`OK3&.M꒹G4gQ.h#_ŒAh[$bWK•;㇝9?}1EcȎ ^L xoE]2#N3JXB(Y9H_GPmpc+;?WETh}}BImdyU~zOFT'c%Q{\o u4YKux& Ógk6%^Y -4 ,Ў'~&F}{\2UALX6#!J}HR $ fʙUoޅ`}w oҸ<CW%1Anq@}g5'MA$#_&ؕ&dhyNĤuN'e~Y\Fc%NxCMt,Ή `n0r)V8M^P&_ nXq<מi2a60"j#qLaϳ;ܼ 2wDȳ/ZP3/9-8Ureܽxd֎*N#%]ԥ#{FG.T O_bT۫B5E b ~g*nЧӒ MmKǸ-%SΈAyZpiXF6ʨ. s F(AWы\n֘COo7'ʩn2}D]g $M䣌JHTrOg؅#-=JN]_%4PRDC+,}Lf;D!CQ~-bИyr7܂ah<| Kj։y.]FcF~ 8#瀭]}26-$5Kx !O6p9HiijM; Ȕ-봺J~q4ց.ۆiQjTTK5m^m<74T@9"~Mٲ9 zP~q*홓:(RHna'l(Xp]H0v8{fnK`{$NipS<; OhPE`ԗDm!pՇىMh;GNwJsr Ve6rL<7Q|1%C}bˋFXRF9O摠 x7sI<R |eO,h:݌W{Y)f ]Q#sn!CKHs :@ir@K(iN737+S#Ljn~+ tgfTLz'@2t~RrDۥM0+"5,o:bs XA%zF6udp3t`%Rnf9}%uv&}m>ײQzMQdO$"t .6wC!;~.a/z89 L$/Z9TRJ㑗0/PϓvEWXEos(ï$BDjKiXt _-Mn`D=m+E^Xna±hY'ǯIPڬ/wm1S7X0<Gh~-DJMyVflR  kٟϷ7#jIT!N>ฟ6p9T.6 *'j!9_DdAhirx[>,NX316(_/zˋ"teN5χQt ]sH TL__B}$Ub~]hNϠ 59݄!0]L.}3[Z=[230t+gPHQ]iДQgˉ+?~Mˏ,V(GnV!6{f ❶EU&\;a 7IwM),&Y> Zå9`O&0qnJRسy Xh>NBK.\d?cD,2?C)խgU4} + :h(I\ٮb<ӊc]IJgHY"0)ľ`YO " oc3W)J{97D%E:/R8zbt gN)|Qgk!-aӠP&0t.6DzHw>F9eSZ ]"xIm\ ] 8,qX%Z@۲eӹ~Eϡ*Ԩ) >۳?RȰS՘an%q \ap]C]\ g`XMn9σ!)qɈ['~ξ#*\%9'M 3PXmXۥl}}Q8o5.R{oa$`LY) 2IߏDR7:a-vIda2@%, }וexeku&r߭v (0plk NHuCc*eEx:k11@tK]hiOȹ^}嵈W+SUj -}:ˊo`g sI56IX״&9ݲ%\R`dOX)n!$#9藸ȻӺ,C <~Ա5C1ӿn1} s$\F$ '7 ~%0Gţmsś`-o|l1BbĚS,xQ=;6de*8r'>?}r[c*bH) ?Ҡ'iYIe.uɧT6(3-ҏ/dςtQhdY9fcaS:So su,c9,5+UnN_d `׮\ ۩mȕܿ- %E`ŻnƙcN- L Kx)I»0[K3jbe8]J.ͻ:V(G [Wn@5ۙܛ@Q7&K_sIyK_z7:RxÜ,2=7Dd1cԱZ1̚&TD83ˤHG24.ikN-+;vsΟ( x*TO 1G(91Ziwrohve]Ce<2D)fxjunK]E}9J| *$ d{ז-sk X66Wc2tcYc  DH-Sg[cClijӍL#^)0Kh1vKDpK_kQqUʄv5ԢPwaa3mS?7crR-?R> j_d߃ Q1t,z/sxTMh<3/:x~9N1Eqn!C蚶]Q]=+G6RxSDcׅ50y549dpii1*j@M*?pwrbL ߇Z.BuYai<ڞ oBL`G1曝93;ixqMգg~;HrNB7Y.z$(eTrnhV;ml.^vżIx _B [0yw00mt0:y fѶJ+<|v.fHB408&;Ds׺`ek|J)jxyOUԱ>JʔHZq*gho@3ǐ |? qL< vNq܊ٶ| VV!!]Ni2 9Y5/ut7*A2֐a2' airGuG r]|eދ59pc1숣|Cl,.+d}mfaݨ懁sԱI\ݮbJk" ]ac8hl7F1,P06dV)Id~ߛ q8hHU:SL!xڨi 9=s ܽiڔ W2e\mQ7Y i1;1 AknU(ZzHըJC( ll;b~MH 7S_řg/𢲾هmplĖ $u`FUzʯA`a}ނ,Z\7~k,6w#Jiǵwץ}]F˲G6vg0w(=C޶ǂL]E{d› `a6b'Y<P]BGԒƤlD6m\Pܠݩ_}ؼ9?1yT=Q}|&悕dTumtt̹du!R$JzMS0`yC%×#D2d[y#oE޷`l4HhfLMc̼g$C芤tvѣ̓z0ڼ\Tz:i󟑵Q<, 8#Rac@Zhkq~_9N}NFbɀn`,5X/;rR3mxTݷ~;&_[1_p%:EL`'Ge4/畏ZkyanT$C>u Y~R)X1J 9{2<JW2g4L{ nAzm[VM K{eW3OtRo8T+QF $!y̳%IqL#G7?R4$V:DwzD;m[!5BA(2/LQ\){ p `YN4)~Q+Hs=Gx/Fh "9Nu{1fHWIJo% 4dmHFl(ϋ9)!ֶ̄ѭ,Iny<$CQ!OTvE8*fëYZǷWW>ShdnQU9y`x!kr|*B{"ffw== ?cm,^`>W$)#&(frK`5OVᖣS !z)%KSd{:hV,Ze='3:=SܽM!Wz"-ldV՜*Ǔz|=p~p"9+ Ni3~q`rgmLz)Hŧ]:*izuW/Bo$yRR =[5||B|T>Ye{!5,<:c4۟ĝ.$[;gB}B(jauTJ[=,%٠hakARNLo8DL$t܁kcMwL=K>d3qݞ>KEW#QEgT&TJCbdSҠgc.Mu'ڍqRvvh|BdH6=f,9a[[t\FɶkX%3Eg!;kM@tA* T/rNx61Ԁf^~g7v.׭Ӿp0ˤaدSJ߾4MsVb1]sKYYg4Qh4 n{ʇ Tכp$I2I.!WWRz WL.k\\ r\P76S-z0^$e6@3\N tgF`Q/"}ڒDQ[-1u:Xή56sҷ(|$%?8|4 Zt4(uP{'ZGD ֊;{%xdɕ` |7oP^8&>Agŗ+x -&goh2r'{^"aB;|fxj+Y;k(mkrǢ{~$:s2x9F <$0R$^Yz`J01,*W% K:$2ɂhW,&պȸZ}wTW|xEmqqPާ?on f _ o@%QĊQ.W@#SvYd/s6+ ޤ(If۝\Dr'>4*2g gJiuy &KP) ihp@]p\$6M4~%-F.Fq XX 0̜ڜNvR41gY^j\˾yɚ~-'pJ8jTgtU+ٽPb$uܤϪ,a\AkNcy|?TŸik|գ#!5zfKj<ۚ=wJ8ؤ_:aEG?$TwxQ_PGi-6ULJRDMH-V&$zֿ1<ꢬfD6|Þ{['Zdrg.]VAPPv+)9M>=<;~3iv7tfT|~yD/b9{lju\7MF -2ź=V(iG:>솜Ijz❉byu bo邖 0[ R6V\g^Ԕ3.GХS*ֵwxń}1oROMfnc0)+A*L2?U>laY=îx8q5ٖ noHdpi]ީXVg52D/~N]K(` 8AJZ;X_I8N7 e!jr _iōYIY =VO!d`~"3_?:xj"Gi=hn?^#†'?eS8sɰvɳ1j~l)+DkS%`+CFJIܞ'&o|;]C9I7ئtGt{4ph^I TU8srM[k ?z5 sYDk<}0I/yXrJ+7NΥLv5偩/^7%B)!aM UˍHRt,~Oz*6|lpƥP&!XWTpf9SjU0tN㝈hLB , wب+8Ut3=GlZ^%XH$oܓ,~r\ao4x1a׀y O_P?,}:ߪkFrt 0OU޳^-b^'B9Jv Ųkpw+  Rהw5N,J*ly\S֫t_\0"tyM)YF@n8_/v's-*g8Pu/t爾P%ťīRfm)*5QӨ±4e 0]Z%Ak{(gm0cs$.Ȇ̉?:|%1=4[Ki;.?|r0D[)T¡Eع}&:%\ 1"%^uuDjj]EwA`PZ{pIU}~jl@hlmUi@tȲ.6|@8|XqN?DEܹk:! ]]7D?pw ZHY ^!#rXᖼBS{RQ$*FFy\w5{˄!8ڕ jxVD&UعW /oc3GZy49 pˆ"Hv" {qma9~aYƃS9\.w׊.jSΧpXX!Rs#9?L R0oy~eG,B_sJK: 'y'b<3,*{DZ`$;$;bz-,\ۋQ!3qjN0)Sb.8/gYC7'_"~RȆ4|כ5$FJ~A}` "%kVXxUO""NC}e ?S$rߘew[Ф|z3RBfmT}G"KÓ=f.+s&ʴzɹ& o>?q/;U݌0x+Hv\"H=ڴM.KxtUL`=~x'M\Fƛ'2d:xZ{N6Й]:}g>MpG=ش1V6bv_7QQkaSϝ_?H *MEXcZ);QeȇŅprizNB=RI-KQN7J. w&C9ׁQ3c`7詭!(h"pSܻ4g}铍r5Eh6xK(4JĎ4G(r6 ++u?Wu 'Va꫉i4*g1T-^B>L5d`6gH-/@¸6.U?~ s5}E]=L"Ygt5}6%w=*Jׁ `];+Bu{ݎ@is-HbPnڄ.!H)cⓏ+9kȉ|;3 S9u~FFyuLС-XMOav!R~twH4VƕR1^^\JE7BmƈɈS Ox<8cgH Sxv8OV~iM uw l/.*C'u[9U't* Ǎvo<9odV(4en^Qg7$m2QBFBm[98$/Gps_VL/&SfNK;wI0+K"k%xSh^GZC>_SoO0ӿ9x /֙@lW;\Н2t1.:> )Y/O.qsقLA3{. C7iYțB1fsyp!"軲ĮDJ[C ]Mhks]k?2y,PQUu9{ۻ< ς]F.ׁc@ʠk:[YRز;t\!oÅ%[,rSzzd A-5!H9^SȁJL>N%eI ټ|*z% MF|pk@CPeXF9y6ƩektV}Jm Պ %Qu{eHsaw/o{f?P_ ZIQ89P-<bM#`mWr;cĜӇZ]aXMTH2FQ<%\=hԪO;AS*W[j 5tɰn@,Vq@/Ԃ|6u.'?oV@i!kJp͊9\=RO^TVuO-Tϧ;X* v /ř˟Y n aix0Fhp/Oʈ13ɳ'R)lc$b]_ .Q ۋ]"w qS3J0'iqn5K: ;MP”.:N!s^]^m(30~GN5NFö d@γ@\L-QWiN##c)*x-؋ nIH竞?o6e{ft 2,;mXgl!]' cl5@i(~!y)xL H%`g&s'없<.qrv )-ylT!-z|b,Ҋ,txR'A8z%^ioP2#%=0Xoԉ {#lpE'3mwgC?وĮ%v3I}dljofU"UCGV6e%G*GysM|,Wj)g?%/N$+qdFSZj|8kq/hlo: q2i]Rgȫ?Һj+f 1z! 6ŝs[4@/1G3z$bo]v!M;M9ɷ{Zjs6>= fOQ*S(VE(7p^Fhq9037E'4+~B U=k$K hn^[YkMĻ- CIt`3[YÎRmv FLd fc҄Zyo]`6 S-N!ǧ쀦%dq0"4(8EڢaBCn5%>;0^ bO~Hp«'WX9 ho!/zc1Dt0 rH_PUpk8O~AecCD$X#,0!ۛ~_RbnV/.ȇyOFFQY &iHͫ5pIݧ*Pw/39dZ['V esTIJcAIijYքy<86nl%qb5KrX$;!iZ?7KY厥 !n4_s %>d{\D prna\ $K_@^=l釄ʨϱBU^?4E?2NF Ĵ [6%ÛT>0m1g݃r ~DćB\S&&}PQȄMv8sRJ[k~>50Զv'IJʂ8~uJ6 }fJ\%?lFR7$r6>zrq$Uu@_Watw6]d_)XZT93Q~z!@;VqLb+t"&KZr #nՉ-pA~Rxl(]^2bmI"Ԇ,`ՠU~jGy#+Ab^mRڒΑXW!p=]E=*yAdOWWͮA0uU STK+t)8YJd !]K'L5?2<Wym7KiiHPے >2+uw6#W 1 „N Q+*Uy*x3ݹ%a!_P41Py Q.hs};R児6 xvw5Znk3pи,yy/Uu5NLχû KZ: o"$eF>fQ "c86D4ke;Kt oĄ#D86Okp r,mG|l]!g)͐Y} ҂tB-ԨQt 9}E,mIre]~/sO{NC>X*Ȓ 5<%{p*FOl1YGECK +0A.f-J6CL"tEF', nޜ4ZY6 5aIQ1of/')ب`ɱ޷A")<r)_`~OE $Yw6eMNIjhJ+fbC݄;?( u /n&ɔ|u[VpwPztPvr10U0TM=8,dQ7Y׽`tT3T>*)c6})ۨH_1_Giƌ_SP8ȶ̹{OgWc9m뤌UUSPeJ8q#vKf7GSə5CѤ.%9SӰYWs,tgBd . t޺jB $nUi#ޱ'&n7_#x1vȣoZ|bD_*\S_NyD Ө(ފ=!:5~Ir]︄KfV[7rϥV+n?or~Guq}M5~,'&>9H4rĠt,Ga8x(Ů,gURέ(-mVB6Im@ܤ@U,{D x~P7~!V:h$/> ):ulk֭Gv!yI[s:S=O=J2IvvxU^&G˟oL ;ZA4X\rwwMrf(9'>񰚉۷TtNYɢ rz(Z2)WO_lRn+* Y&L\BǬD=$54osi^}`{?t F ޤamޓ82qUM5/X Nu&De-/5>] !1L.w\FW Ž)cz&ptn%_В՛g3b{ o d&C;/Dmkg*X?n7z DĕWuBUK`cR m=!M=ٓo&!xz׽Utze. 'y]}on!bY TسUF+"YLR4斬| x_eIqJslNvև q tl g&Nm|}1S]"i(ࡰD s5p/a; |BM4s=kIbSDVCrom ±zEExΎ=U.^5{2.D wgeT-J.0J#, ) ( +WӺ>\j?ǁ ( :F^HK?:ҽg8o(?c@j$"_ᑷ_ [Qr~7|.2^$MթkL' \r%PM)?i?I*^V[TB$/^mjԒ8k^$,dM93LZ&2O>KL>{Wf͓8PP}eH1Me2*S?= rkӶ@]1ƌ ջ~9(jz=BDqeRKmFL_%prk9 g,+ig\c0۔f=TqN$ZfUFci0 C+rh{ӻlb7hGR+3?}d,ڈÙRl Om*\+4+pyMa-`=r8Ir62k)"n_-/ǭ8M WI]x O2e; ]̺pN|DMFR}y i ҿgv!e Ϣ7x՚tZfB.օ?2l"zlr],K_CKEr!zMfbJKh6Tٹr^1mb e}Th! ̛UC3qDs MY "э3ˤH嚘24AS_B&$=g W# 00&mg/-? C;GL8?eQH'I{tpG@C:/$~q nKIHMNŷ]1h9aRN]#,-Ku o:~4ŽWvx;UD4Fl ^Ewu[Jq7տNN:[\Pߌ-DL*ӣn]ֆ޵{85}7/b8TwtRA?>H5/nG6ssHmnOV@Jr1r+W5xzX2.`9CԞ^n2OaH`#W=*>l/~ݓDet$ց;I+$?s0 j&m1Y w%]c?N\M ZG0[4!F͛―1Qe{ a6!˫>Ka0ĵسtp}4sz~Pp^K|GH<9OoՖGuT =Gi:y,%Gs2)1y?KJ}(H%X"XeH2uF(eL&#\Ȟd.b͏TN2`u+_<ń fB%3FkX4=!3b%HxpAZ-E@r)^om(~.μTbPk'vwo6W#G4ma3'3V^* |1 ܫo~~,tMMVOepkR@/2j?D%p3.6CA{/cĠ6#뉗äpeV8ul'Ȕt5Poh&&]j*C]T\(*+WܴRҶBz,:‡/.Mm/%f^5~o',T*w\3 h1{ƙJ\qtFD*ĸl3?7`)QO鍈gcr89" 4U_@Xq\v,_w_MTyIyp[_%\Z cKCG KVLF;9@x13'b[9n,|39~=fqN\]7K=WY;EP1F~顧y8(Ycj.tKEXjb~J87td˘ۜ^31Kb0@~A#'^k]{irK) ;_*'cpF73c5lODUid\fpMOmEb 3ڲof7$eBdV Oq>^au>=l?" 1n|}{8>FZ$tWUR!7AQv◟߶Ffl 恘 JdcxUzQS=[^X*ElbLi{Bb%)³K3&W1|n}(Fht1bƬMK !F @j[_rhf*=1f)u jCc*3I1&L[aj?pIx;j '~t1"͟™P{~|9F-\F*}Zn^AHmbIP(MޒG?txZ:'3RQ (y5mIf_TpLM V!Ȣrчc+\Frbo-kρ?u; 5^=S{S ˪ VnwPM_ס.FDfdQBu [4p%yQ^(}ˏ(_SVc|aqxnoJ1ӊgPP $s;cS;Ǵ=ӑ|%˖"X) \|e:&qBi?}Բ.="L4(NnsTbΫޜL卙zLw2=?xg&d?v2B!MJcD#ȅʟ}ɬ9dB+ZrQ^|Or8a>hSw_@8t{>C}gzTk &qB5Ϲl= 5A5K7RSjs۱tCu%0WAcQǃDZ Ԅ؀MjifmGhms$qȆ&kK&^IʛC 2<ޔ)#)h^ϓ:hNu:QoD@Jk5WP, vI"P&dɛd32'#F!f׋dSRlw&+&ṣqF_{CU|»8A)aoU hlv߶|4vVYl0He C%}+ LWn|=bӣARma]jګ~؝TvV}HB<'"=cjeӶD2N6Vɠ׬//oDSR%D\d:~vt vvem^MagA4ƷZ;^WR4-Wl0'~zѴzl|ޖe-w؉Nv]WZm%\Db߲=a40K.A%kC<ldN.rw.|/y6nNK))ͨ D]ltof҈ʣxeZ};_zcz:k%4q<6_a8OqE@폽w)ֆnc++.#Ɉjz,L ] |$?c$z_y;P+LS}sMXTtH.S SK)W/VM2l蔮\!& Hmh &!-e"o!zK^Wwˊr )y=BR+#F<Гa DPPKy`&ݻ)!p dK`ZRYL6x S !PjRÝ@8)\/E& )ke!>}L$˭`l_p9K)!k6SGz+Zn hb|ze\&z^o,hRt=}F @ˇag)!fYb?rljT px̒eC!'<0 NpAf9I~%ݑp294ʲ:hA([4Bk w׈<ڊĐjpإYL[5K!|cCѱD"-BpcF\D> .3-==X씂 ^f,66v҅'ʲ(}WrSp]%&$<ŃuV$Ur>e=Lf0C.&^w&wH69z=L __FhOudn2A2E8!ew@U>wC]@[a@?f!;U#FXة_ug2 38MM2Xn= cyGv_ O`K=ݎgk)߱ yglF63W14 7oxRE)*_JZ1JOF@ B9qÐΰH6,pz/1!/]Wm1.=nGYUq*7NX.PΧ m?O6i汴݊ɧ)s]`*3ėpC| 0pZARuy"B"?|-h,rZߒgMĖJosg>wQ?L}T ^Ȁ{l1D؅ VnHnhKzI ́E->_7pG4= ΘDc]k#=˃ 68c]F]uA YDĘwL#v?"\<ua2 p)!$9Z8{ϨO͘g1%,Er%)h#`N(Ҷ/K1MӲBXu@ɥʑSff^ O뵍C2uU/L04^RTϱ>#?Rd?lgI+Y+\,rG4ݰZ>ʆo8/4BbUFXЁf7xx9$"߭/Z"!X\+ .~8\y94sh-#uA3F(ڊbM^IbpnJ i۲!fm}D7 1t_VKٛ( >n.jD5^\M*zNF7"uI iY}yQ܉ `/GC}I[^/=Ծb˴axBQI:dA߮'4_Bh49-y?𐓦D M5QElY[tр>Tظd_gN7غOnz.!40w\CLpUdsE(d4y3[ uԘmk3|\f] Ñ[F۪b/(g8Bv%+q2\[p=+B`) d)MS QGᩪ:HY$1pUR}ͦ$=I#a~fu3{z6I;}<63̏~ 2WҪHpiAOF?$lKWA搙H6SfT P1_"e2]@<.i[b`*ƂSCʉ`=X܃͟S+Npxh-))sіg&Dj 8™h4@5nZ9*ʢv6P;]܌K4>-ѿIL;z0<)]چMSQX3 o]&`@ۯƾ诉/tvJ SNq!Y0֭7&a7V}z$GLx!q_}h?pi9&''iP /atovHw'@ ׸=q&jQE0mpu zJu>֜Z9"ʜR|YbnΌ#ToؑŢk-(.3IG?zfgbsq1'ݨ YӀ5s1`NT@-T1},( mJB+NYt/<9j^Lys(y<0b5ڢc{q|9,ܒ KcYA߇.3yVrNtX݌#O~/p34ay𺌡y-ܺ2,f3G{9x9ӯE+Y O,HT.־ǁwWU)%iŭ`sr=,jhJвT9}TI)o [GeehY0tD{uWO"[E[r^]'2t11QMłȮȱ0z{Ш}2i%-UUˎd(`{+|-} {6@B/S5:NfK?s8-\bj(]jcRu2PdP-A`<5uYwBG#^"dkKТ.vH#]}7}h9|ĸAm_>>[ӭ{x8 DɌ ktJ`1|鎙&Z ]Zr!t[>,̆ȁ\| ǡ41Fi n莒Q1DLFPxϖdT"~KtG6+ 7D3^Vw|ik #+'W` E-aTUwg'}yF;qń^-ٸ-7m,ӂP6\4ۇ_9,WaYt YbLhFb#8l/` " ˥ԹN2Jr|5/Nah$6-VN5~c>DV|T 4 wr2_Չi3Q-Iha@`͛=Վo8)"։h$Ad ept'{K3.҃)5q ɥwGZi6:*V,1].3ɑj *hv#=s'NAE֪kѸa=[ `AI%Otًs~CI@:E?@cKk↧Y{ rHbѡWap<hTB;1 "MsosK0'sほmgPJZ QLI10ѝ] ۮ n-ݛG)Hpd% 0'_.n ў8CO*uLv sY༌-w"),Tg]ƊČc*3LZ7@!䈛:w/B!jVyWAC4v0L&t<::5+A_)"O2}&U^TH=PјbM՘ f! FS`,/ٯ sDW9r9e8Q!9cE[gut7OCA5 VwLBoYTm墪mj=|]DsExQ}8b 6gbFP et1#hĈtؽ~X+1YYS4v=%2؄:vBBतx#$dNX)ګiHΩ1<$YeEvYs٦{͙fB^^Җ`)\MJE&NnPWშWUu1 VhfYw=0Y"Z |aKfBi\Ka%ƧcG˅:d[TDqx@G ogta_eS8FH[P lKPL1R<ܸ![gv^ '7"̤/DS{C> ,bUXB8oh"{d>ΧW VIfv()٫u8atl XZt+!2B/@M6@p83voy!]E8ŞVY4U@!}XoxH Û%Iwᗐh8_oNW`nEs,WjS&`g&'Nj=67rkV 5h\R D6-o=`06j@$fitpvȌ^dUD #Chv#s!ȱ7z;uj»2D -=9Mz}DFS]t\ #AD]m>]Z@}X 7ܳ16*U 1 Zғ[g2v:,'g#<;&t쵝q \r;aۑw./3GUsV& %k[?>3|r#&"> 48 p[fڻ{n8\lWld:T>>ws\'5o ϰ ɰ }5 ?NF~kbJmHՖwD<<|;LƞiJJ꛷V&+_e,J)2H12U\no}fj\?(h weg6RCJJ-l~ I &U|+˥G԰Yک4'>U 6̼axMХ>`_!%(idxBQg?W癋<T֩Q@ #j?JΌxU KƏf5؅MӣvG>Nn%հ4zz(6И.1 UhHg+ǔɨJ>VA&GLǣD)^dXpygS~shI܄ LH*ʃNhe ÕQ C.ɤrz_#w~:etb.$ɋHFsx,FJ$?CTu}H=|>a(}pm, Z\RE`j-I݌҇k}d܅4@D&"*d=hmhO#eV[sX,aS5=u 6 NհGdD B @_!Z>F.ЛR|k :] GQ?G7U؟ zK|ًxݑ-.|.⼕"{jGDkx1abtxQ f6~* !<'qGᐚPME3tP@S9^%%Or=PHS ,I5yƩfh՚ ӦkHӑsyP9ff[l9G%ꡄIޙQ=[md˨OZy6m]68ڀ3W5)1'ҟ-L4yZ@6'?63Eni'`|BRt-BYM-ޔ YY`I$/LVxp(+HmNľW?J?HQZSPæQE%y < |VƥxP)m`MUE&Ǟг܂ jnZa*Rɑ7<< >Qeud񬑽݀=N|;v5' i’k :w:sŕ`C 2aB+}=^G%5kHm4Rg Iٰ rк:DƄ0Mлcyc29!YxQk^}ztgeȑ |?uK3!_3{n$ $,_g !Z.ؑL^FETOȔB!dO@ NwL0Uǁqcظ-d*=]:JH,"DNۡ&,P|Kx9929xh+S N[W}ʗ}w#`ͷߜ`#ϹbWY_(Msy`I2|C^uϠV x^BY%Af!b+(t>ؗSRt{ccli?`(%z3q[l]:U~gF za=I3:~[q/nQBUuak"N%b1JTZ3|I#,)*% PM?Kߊgn4dƮɲbM xQ$>?&ro򪖲X=61gͻ~-HJOS\xU~vt%u`ĊF0yuFPz\vCJ:r8KPps7;%}p]6mw8 Su0_ )+4p Hy7Mf Rî&QMeNm^Hu܍N%6=8:a8-k#ΥʿBkC "/k&;%VoG* a,ӋM% ^닾=܊+KdIWTG, KJxm[{wi@e2' #l4\qw:[! ~{D/pj S@O+nY4 5jH:S["fUE\õXgdJ9>l)!S `{AӲo3odxDq4p6cd! !` U0.Kav (Qf& pib^ M}X78"^~vX5$RcF:-QA Ut돒ي|u Q˾̪+n `[H^M`TVvGsRrd+"`Q&A&$GҮE:VC~w*[+;F2nr>"_%[߹ NWSz8uXB+(MסW`&6^@_])m6FiG 8uPΖOnSM"yʚgz|HΔvYRe$cgxaBӫ)`Dfc ^hz}a@J{kYkۆ;*|h ,4!!+x K(C*ۮ>(5qW > ~[iIo<5NXGYmal@&3,vv$hn.[K8g zły=n< pֺUy^ۖ>GX.q| [:5 \nFG\vyWQrP(fJKL>09?20 x+kto GP#.7ݑUW]|1>ټF0-(hUOV BAqwn|6\z]ㄗh6cE*vO<1-Px{L0F"qR"n qSWQSZy@,̌E$p1< e'#ǧ1s:Q2J D Woe&$5dA }3wt ؔQaq>IbAjGLӷX<\e$-4 HpDELN~p~iؙ:ƖKb8| *3OZrlscv'N?U0QFq/jCTa&{sMī{~OY&2gkJOf6l+:pYR (5D|E0$DzhVҟa)m}<|W ȋ80ڦXH1E׾UOuN`,u&})? o%ɽߩ4Fǚciy@|A 9ȋVP1͊F2+y|scݜ?ͨIFt=kt>fTc#5AHL R]^Jef:}yٔfB<R~6{QU}z@hKx0>-y i3bi,f1ikҪʌ:'|-fA~e,U`F=?oR:!<#S0BxFB|m?00d;BK z!1uaΣBQl[ld] iK*7[]>i:%kpP[=2[% =$)B?ߧUUc`*fs;0ġ9odٕuGcEi|9E(p/oH8l'4;Ɠ13F2y֫1Z'Y:Qo\,#đ,/oqq>daπрN^W V]B/,m-?yPS({屝^u,0(AZibjxHB`7Ž[k>orD{+q\V-*+%l<*2d{5Ź?5џ@:~ZnP{vӄ 0zM 3ydqMB`$!V2bGU|=-rP놦ЎBh>Cl5TPm^OԊE{ЦK >O5NvA2Ob_8r9P]_ht~,eNʤp!'S(mݬ0E im,ǜ>%M,jV.Y"pJW pB:E|B[~К:Ak^\&PbY!B3NclcE%e,ڍ:z=ȻW|zِK҅+NK l(` ;gXMƊXw@"@Õu5"neZ^YhGhOȜ4; cbPT_*kdؙ"Z ׯ>n1ȍCm*FiDb/Xsʌ4:[2%Ŀ /m ٯfD;F6s|j]N҄FX 9cP\iEel,Vn0כ;~ n h2n×lfqj >7*ciGCkNF_7{NIaB؊2IAS\n!Z1e+@G-Nۘ'm2辈[e޶cVN.d~]qTBHoBdEhIψiP!~-U!/1h\yJz8I=ACbQu9l;GD6 W!NmrUy7˼0%CXb֍e=^Pˠ JӞ?=Y )' !``o!z?i.EAJ8ȭ~B;Ź(D&lHԦ}oKШZ!6@UW.wlYýyǘpqYUK )FdOz͔~?N'A -]b}$lJT=')?EIvҵ f[)teDcj-L߲Ieʎ1?4/KL!6>,=Eov3zwTz[g^;ÎnA̎BASLAý2t ĸHO  q%mMt+$Ž̭d: Ň) S_ʻY.iÝD>N'@)1Sr PǟA-cNG纇}3MrӰ0>vspS|/(YZxCz1DW>[({AKIjϑTb1{}]XAfð\9+&G]za|. oc:@?dp;v|y6^Зh@XʼnSlJyw(\Tn$Qj 6Kzwޓm?A~ #vXj"fY|0ͬғl& _ѷCX|ԨI;nXVVCׁ䌏+Lmj Tu ECqK?0Q*]Jh)NEQ̒hڄpW{2Ug@U{5Ǿ9e?ɶF_$`_ hkiUؒ, H'I5*`c0p")c6V*y NcjؾqS 7߾:E?E,-vqJX^Y1uۿ$i;Ÿ e9Dz]S+5}I4ݘ0egb])`5m7#C(}ai*δ{⬎RŘ } p,FSKfH;BeVNMMn!~l0<(H\rx}'$"2w0=CȪhQE+%rՄ /JpYb4z^J<,*'K4k4Of Ma8sq43áPcoH(bQg9'kptZ7f)CIqLP̫@^f#TN fY0T a`gs`jI+:wD'w=K@+cR_ y޵"_NuA:`Z;vw2gՀf1. 噭 ث{߾НOZ{ViDkUPaoa\Yה-#Z2JIV~7tB[5?\Rc]: "}* % 7=%ΎV$@\"/ϯ|h6FIEњI~XOEn5&SL`#v_l|wGd-4aWP$V%̕tcxtLҠc۾lo4zG=il#S}rf =TN .K9$ 岰tH"M@ ^."&ޑOa}6 xDk˔ ĕ kօ> B*⊬ߊF!\ܷ2?7V*DGY:ARPxu9Ӗyd KO!r:d2̐g)+#MLb1 B &*b\,Fù֖T $4,Y(yEB%l@ CEBAeH7d~^A6՝VLo5Z])dЋ>{W$v)X|֚a&U:}QL q8p΢&ep5FDƲZZԧ7F:Y)rIP^ݟepmpF4FJx{0/~ak',d:`8c&NmTF#_N+ǽ=PJ^˦`OѶb΅㗾aX> K)$LNa zpukj4Êy1ٳBmv>qVȬ%?, D۸aQILjyy@k;I/(d+^0_c|XJ Yb9^!oT89$h'UC6Ul +@\@;# 3VEvf!J_zCN]D|L,Sfv_۝j#?E+w=Z[ 7.ߒh)4,NS`f#x`ksI-K:W%%`{0S#0ZhGa۾9ML_VDQ>k l.I,?uxv4[Oc/]FkYmJ?ԒlLs D=kֱ8IgXі((ږ"C;)Lw 8p`ܭ ~/(-Un8G7r[@ %$ߘQzsg( =8&^5{n{3qE KvaaBbYT1p1by'%X6d0)(/JՉչ=֚mGُ)=-Y+kĿqQн)? N;R<"gś 2ŠqGőNxȷ|:[fgÊ@7(G)LѼ=f `߉HI#h]QEgQtQ/@щIz/m!} Wydny/Q}dcU'2 z+􅁏c;pK?UܨG +y\#}%b@D9P*`3p8'־ӱi Hpsִ C[N\Pu.wz}Xѯ1xmSԣ9zxEn<+#A+]Kiz,]И:RxC6),7a\v{{V/_e-߂_WV(CC_ uDxA0BׅN q^=آns1YU(SN{ DN¶T '+q,CDR ޓE@S/jCvc .)xb-?-©y DžzyJvk^ƛ?eݵI') /%5>Bf sʐڮPA\zMh{~)W} =@l3Ɠ\nMHK.9OxXy;;t\Dkie\\1_+cyvX{5~aC"To.])*#=I4ij{>mբgLO 1 `I>!%DL_$jyQ,&#y.~Y eU+`NŪvd/87e[xAN+Q?XY [ ߶豮aHC.{E:p¹O 1O#kʒ/@]b$8R,<##Σ޻H3L+ Ea 3DA(s$w1۔ƛhZv:;Tk QJT[=((d9>7 @~12D>F ¶ښGӅYފOaEz$BL=.Ge8?GfgLOñx,x[y K0O _ac*s\a]aG]{BeHv*Ұ4yuteI@+YyfT;K~)cT+G1N.?SEzWbS[6I,Hxsܑޤd(ް1xrά\#k= uM Ե4 8Β|f9Pƀt+vcwAnc@t%8/&fqv0Kje0gtc ٓ( sJKFm Z[^tI6nkY|OՃ!/5 {a[@Buꢖt_jSoedfޕf֒-dz[e8;}&"cvMkU]ta|acT b=;fG ,c`|:ıNcGJqOz0 >dA#=0;_;5ߩjŷ X#xvc6Yspmc2r¶w(^Ja?x-$0B8YY[oX)KI4pʦ-Fr +dвl*|Ah 2rE/ZVE.[&anmAy!ҏDmpp i&l2Wa قԷAw58Mg:r&6h؉eSI el8~P@?u:yQzv(\?n!f) + 4}zu[,w~Yu/wcPl1!—^2ܲU"B3TRp\$j_ =\ ɊdQ^% [@V [8˪auf̋`:lCq̯<7PbjloGv7͕ߗt|K`J&VM%e ןkfwIHS_I]z+׺ԯk5[4wFW4`JN35=S@ޑ!8W)-}@\jۇ IpRЖ<zFb(:{+ {-jX$$WuBU86a?jAPL^rB-\?s= jug f cgt %DRR)a#J-}:KK@iOp { 4љHv\G[ +Ģ 1R J4Śjal %u^Y2 )͕k-0L:СfCt/ȅ4oc>,(7~tfPk8N-MдTC%h1=C7,/ b|r6P8_!a-)e鍰r8c^斪]9ʕZZD~BKI5=rӕAgl C}ma 39#])#yt\QVJ^p2u %FKMNR(9\$,.0tcOyvl3 ٤: Gg=x-T% 6yxZ kNߘ!ѡ4y!vGOa}B|B#llp[_X`y Ik7ԢOw' "ܦ}}E`~f5waQ]{뮥M8*䊎(6~5 2/-Aux. 뉸E'9uWȿ2Gxfk_<{ZwRVFe TړC!Y[Ϙ ~mFK3WwskE?cPrn23 w1'[(/!@P0t FwRFnx!}=MOۖKrL ~`a($W$#U/V%@ksA` 79boDJa&Z&'s뭑XxIz:<瘲K k~TqLXUiŝ1J6bΔ­py93ϥ 'c;+~ J+n ϩu5}psm>j<ԋۢKı\Tڹ4՚L5@R:򁴀dv5 gie7QV~7]=(zt}q^s>]rq?\Vv~x_͑DZ2'uQv9p"3Lgy1}yc|D7epkCSMX/p Tg͌:HNwP,{ߕ2±Yw # v : + םG?>{J`иBj.FӋ%ҏDm F "B/J`{<5#8]n}b m!CDy}hb{ģ{$9 c-qGѻ"p>~KHuƄgn|Z^ʥU ,t+^ 4i(!'.iM˜pͩb^>%p!2tr)7gKªx0j(ɘA@@ҾR>1ÛebNwz2)پ#i!. (MÚ<.U :bRW&I=SxX%4,7md_z^ϳ;h4&!&o4Eq}kH%7Ǧ=~kf{ ?ش!U܀V!9$Wp@npՖSJOufgzƮ&gv>IS^k3od7?Ry(7%$#'/FAR7p˰> bU> jY:I)>KD od lx^&:͟.RN }6R_.^H"`mahq\*%?Ze~s#9 7\62$]"S<N$ϭ]x;wSb{B fKI: P,gUU45N>G=Zʮs,bla`]|uJJuΙkvq-PR 1>A_%L*ݰhsaYgzn59v̳%w@sW PbYa?0I Ya 0ڠJR>"͒"PZ`A@a㥑u\HB⧞ j5BI7v{Bwx, hɚD@9a#ߘ%:$Ko$}! VHvUɀ%lJmK )柅ؼW0Tu|O䡐]--_܎xvn[;+Qc V|s(yJMc/ٚ[X8eR=%]334sۛ#AߨU'_6B617/vH*'A7Zq&ΥdW/Sẘեh"N"7Ʈ*⺏u£9t(hHc"Bc Aѻ[b؎!GX\t+þ a8OwSyNbļBW&r%Qk$`QJ;s:%y>{sȋB@ f_2~>Gt^Dw{f͹W0 \oN |3AgO-&+*Kn6 0T邠^BbbfGhXˌ+P2kU)抑H}>j /KW턆CSW .z?גMnK@N5 Q6N*'|Q jWyOc$M(!?ߚ)*Һ(:H7Lk+PdY_DE%'""ң'[[X(plB<7qbM:kJ L2%T1'vHgt~YL_1#Ε<0 Q>e[[p3aAz3Xނ1hפS5:Wvha5pC"lZ7+$ n7Q I{_uM>[#]FUp!Ae4X,;^wThA2epb;f4.0]v&}W>MS<[]B_KĿ.0%uIWڻ _)mg4, ZJq&(Iʧ_kV4Fb$T~jsKQoBD*@9-L|&p3| 嵦4#ϡ=1Uf)<e\0$U%cL$[PL7PlO{(iKp',yt"mgd+@+IW $kҷƎ 7Yt'Ik#Mg9P&]c&E gFEM|xCh^EԨDZƹg!5cqيΔ% 9~@q!ѝbk K,34Liki"ڗ]o$rV6X0SgKOOE::W;-$RzMPΫb<0F&"›5#/qXA#;΄ hKΗG;p F Jf]S[4[߱%EӮ _6ztiG҅R7hvSj&0D.ᣊ9>Um};}ۤiwC+KwnoтU`iZ)8&j_3Jaxn,#w+h8OX8@tp,îˆևgGfD2aRȐ5ZמqN0#p&|aOvѥY!8a4S1A_,)h ϰ\|RaA}HY☡/~j6}%YtҹIqpaj*{ebwG#֣z4 :-erK%?k# ^A>5F:'ꈹ1JQK*gja hz,XXӆ>Zx̦*~^`CN?)8 E)R/\ by>dN } QUJ4y?vwLdYX֢q3}1oj)#` Fv'tozA$KïftZX5ё[;򊠄R޻.4(Y1!qho)a 8J.C`\ւr< Ov=!kOGmD9 gO{ Ed_Ft,P{O.S ,m <\;XYۖj hJ'dN)"56g Er8PV΢$* ]mn¶3v,+B0G8v3AUdY_9:5B e1.Y?>3h{߳J@ZdGoz3 wVӆWW]qui@8Uhoّ:LfYX #wKW INBm7|#;?W 7߆@$)ϐĊ3Ja#;BǍӁ<1eE! Bz4f!⶿rCKS8+:2"QT+] !O ̺2|OPie?,?<{,/!) qod 5OX2W WVcmFY ]]] Uɫ]1R>$ {<yxlضt١ߛ--bLt{b]T>Qs#I d6,7N-EG`9λ1jr glY}Os [ y;fc>Fci^TAo >ؓD[ tak[f|@\(,u8J{mO 2 /z xY`hE ([hJ³v <'/wؤ[AO9Yen8H@qP!#1P< g(]DR} !Ĭ (:^su`_,-k%=.jfo$>TkVֹ4ZH`\PjDū~B0p` M23G V~W$#(AU(s˷$v#Vо}IXnzsϘ![oT&CsicK,x1$HIa| RiGTxi<$q EѢ]tPÿ wao ׍QuZoK=eD)m#Xz[qb*LY_ փꑰ` Ƿ-oRŸ7UY/K6yt8>a *P݃:nFͯPq232FZXMWʦ+l[kֶ#v S*~kIVA-FG~y0+VH7b7&"ZSnzBL;EV@ѧCzrdWiu5z"}[OCxݤM!]h/R9{yݝ)ؼysc-Ĩ6t=:e ɹN'c_%-EjvhCi"[{w=|2 @Z;zS 4a{Ӳeket2,zH;2m0p0cu Vھ 1T[b[W_g9HLzN>A.ؚ6R#V1'RJFvT5!.hNZ)ys:be%J^ilw.Z:$SK&֩ |P+&<9,0X@1d ;5 AL˩06N~Fo LhE و{`] &-Ez52$@t9D;%!)q/Dи]I}n,<0 @ @/JtG3#>PTg@Dxl#Ø~آws@rDlg{g?9TA-" PBY9ȍJ#,qW@w}3UQ9|v#7E\_:SDLةDk,5oF":r1sXA zsJp@CUYv #Jhb`^@To8֞=HZ3qy^R QW6cxG,6SHlvr3 B3Kug~Ҏ=^HLh׈Wm[q!.Z[~4!qIk"ߑžEB elYkhJEC7CfBA92T-nQt27]UPc}m-_i{Qa,'*tLݐ8{љ4O$Zjug(YlhtQ M cCݵgm%@,Qxn8HIU0LSp&xW}WgQZ9vTqXDsΆtoihMXA \׶nT9 -TΑK2d+3!;?9uyl-ڍEБ̚e~ׄG aWwUΣa~8zjLmt e29Ũ6gjd"khzS"Ec,EF|ݞU BjXmݫL{KRP² Y͛ou>Ql!&}$o0Zi .ֻc):"S]iAJGA^D8c*aJ*+-#>Z9~:YPD(;llC0`NTvIwWTø&V H+CNm}1@qMϢg) Z5BPF/DpKGPBztY_V{/A4GBJCtGq]׈Lq~/e}&G`!CS}Evlx {5k,.U_B%j7m.3ɪK/rB}Waҋ'H@E2*{m 0S[Q@=ɵ"G\ru4qs$-T'}g6ތ_ Oj,aR2z=U_q91vz) NkeV4,,o\3p9K֯@#`|e  0vXU$U!頓 gtx1 ]̎߬,t#o}ve˧aصk<<&r *p˒Wqqrh~:w>0:<~R*E$VA p=2\4bePA:zW6Yj_Zlj/lC2g!q\Ӆq"gaW.,x7GV&z+'k"%g^isVD?V8G䃳8sdC+ǖߙ=TRÝdEyCfteDOBg\׹b?j:e֦yjJ:.f۟DQL6cΘ yc<<&)l F^1z`l)PG;Uspb:jSVeC [.T"KQ䚸FRPj1c$$YbnxZ@#3ѥ([.8L抾9bra w̵_/t<%fG4O]GS ڏsX|gF)CѕE;k{O:zmm\<]lCt]`qʼC<}zK+ mhP$=`Zpk۳hVAEO {?c-EC?7nS2E`V.GSHӵ\1Xqp,MIul+**IvUCE[]3޺72yh]3ZaD+k{c0x$:썹{:jd &f, zZ^?}o9^>iI[)q9抒6?hv&Z0_ m [$V~zrAaR؇ -'`5'.s+jzH&T9#{WGjVR?_R=e@嚲t864q-854$cv鸱Dl7Ex.m¬@RnzYM`b+Q)mz,E<66 aؾ} mnRRηޥ$5"|I ,VKU67o8Z n1JD2{A-Dz ?p2jfw2)z49p$BnM~3, р1 xXOUnW7vꕒ W"MI\Ki 5|=fks<^]ͭiV`t_:M_q91?bTݗ{Ե}ԡrr:\hMy uqps]< gD?؎(D`WtPOt[`MtʉSF.n#p9r@mFTC,w@?ELqţ]~® G= XQEFf˧|EXor:Sប׈1Fy0h,hYs%Xt1LG%.$n&d\e|Mky񧾷ϫ6d0狸Fsk;G'|+Ӎ ]S9Eܒ& dZ<''@@B!>KFYV ~_҈nVoҫ`' Bi}J0|N;!31=J!+F+:I"zu){M3ђ>G\'usf5f95&(G)> Ţ k$F6.rDaՄELdWm Ib+QxKcp'wgy^M#y|-,'b|kˏ>MQEF7(H* '.RG CzB } i湈DF+6| ýiQ| Tυ W@>ۉPzIѧxe2c脿 ;T P-nxV}P)Ÿw Odliβ3>_m8" /K8㧮[1 { aGX̕71%̺)`":vz̎xeP%i>VaXF_E-Ch8JFuj 5,*[SY ڦZ+pqcŞA )49`'MC3+64%c&Cb;ö!N ])mE߷'D=q+Y.z;#O);<{u)i6\-jfB +ڥODv71@+)UxFكfMl6?eRO<rNc̔n}|\ۨy$x;|18aT&.Q,,^+E:CjeHc1AXPV™ rq$|]I ɫTƢ5U:G۾A;?fWq)e'=HM_{Į"!\-6lZ- Z BOt[ç`:M( غ+Uɠ#7@Tr?ƷjXdf 3^V[߹4kGpLImlt79G]""R/=KQ" ZskA׻}MDR{v/[81`)*н9x~|٦Z9xpsmu!ٲㄪ"Ȱ+y6zP==F=rf`M8j16FH<-eumi.I=:F㺙m^%jDH t+8ޠ(n8ß#tpRHͯcPb4E h(ɴ]&#a,gZ1}lvI^ݼih ‹R= 8PA ȉY:[ҴTqS#6!vʶEv)dH#C'Pڱ~+RXϊ-,ăl^&W.r*%99:?b֙p@0( cNGJ;A3l`0U>Jj68:Rȯ 26k>$E(y^r$:X\(k=?lWr6a岎[<`=7pcm}k _VxSr-{DOe0;tmѨ%;Is $?J"v.Ӥq$-0E r\3ؾY:IUq}D|ej;}4Fc?p^2rfƆ{.U_cv]#&-HIꜼhs<'o#dڏ!D۟Eb~jCO[b8 Vv +ov`>_߅b^Vz%w6wpSl_mg #;+eSЏ;~\/7eٌ drؚYi0`8-F>[sB$yQΏf}T?QN>+6 g}#r>z@.J2yqD|&FzOt\s5ϴ9M'Q0֖%}6iLebG~n^|wSgG1e G@C€GSv~_p4CUU 4fvJ[(ݚB]:#q B -*Ox {A^P4-\RȘ .T~OߋUC* >HձVxuUV%dQHxyGxz JSn PTۨ"q݀/{vEt8IzJ_9>dTK%"CpV8?/BgNH4cʋZ"*f(̳q}>c5~}eNXu Q_ M09sq6.P<םslVtGEg o}*E;@Z7-X br,չ_?֙G|L U@60M(6 O~(,(AǪlƆX]4b q%ApnPUM;y ~$v(/xAEX^\Õ|>bQjygTk:}\%)Z"iod Wc/y>h ;:0AiŲ}xK2EϿ~p54UfQmrP3N{jVͱP,C@#ƌoםJ|۰=oK}0-QJ~|" x2I7iǯns +DNҤG9hn4CLi>i ۶Ya\ܖœa&~I<nn`Є0q#ig]@J"aPW%kc乇ՕcWi1-H˜WnReMs)zMPEypmCЃR PJ=Qr^N>Zmv Xhr|9.<:+B[,Xb78\(7,)wAU27cq΅y!!K~3w@p.(<iQ \h[)N P" O`Y'hS7wr0)~ Œê+@N3+Ww*6/{u,ܘ1o|1^ôo'"*/,FoY!)Q C~ԳSϖQQ.TLE]|YV=KD0)FbQ…Duq抌_`Hgms1 >㠦sFx\\v+p& -BcA￙Kr: rQyC{d<tAcdM=|Csl_ RRZ: ʫe }1O"j[$DyC20ۨ7j}ݒJZX$i5pR nm4Tl'*(U_L;|ͤ蚜_sH=p&em\G;\J7&NX״)l3{oItquS[XR(f~YH4[ey#댞Is}+"t^.e'koCԴ{BΆ$fg&Cl_-)SX? U]T]4[&n; {W#^d!z.޽^ʜ&:11`a]Ӏqw4NC )*U|-piqPFOݚ $8a}+R72fjR6i/'{߉o,()p Inm8a3=v%H ]ߓ"WLd+#L^@ege'nheO2` vIz OД&`|7B-. p4@xqa]}Dxm@V8%jG?hpf RiMro+׆$D@S jy\̅Q6e'~p}GEazixOkfhv FzC>G < ~TE~m8,ţ A '#"!BWх;3 0[kK?C+gF+/@l\6(8i(^$-wT䯶q$E=n^wҷzo|] "+ kA,h;QlPopO]='ˣZXxugpJdzPv`nP=jZй/z}}Ak~l|f7v6أ5ZUwaga"7K45"cɕe"sqj!B<<`灐# /+V':<=ZvS`sΙ_5o)"K9>>a\iJ˩R=D6.q@jǞ9YFO{g+tN00ظpx z&۾1ꌝg\Tf4`)$4%n<ޑY'#A8Pq2e#]vVLv!-0Ttk8N[v-0f"C*& R (ZSLQǧ`)YJ-vOo[yXQQ}t%3\y1yl4[]+g Ŵnxai$~|= i> S _D5z=;Ur&i>-VOY}f p RlA LZG9^ű9] (\qI8$'灖,K>14.PLJh2wv@s5qG&AֱǺHS oh_M81J5bQɿ7՚5.K_-s{f4>󚁫@7VW:_?@!vTc0RN_âd&ĵD Cx;EKwh#;< slm6v+hH^&Z ٓV`1N;h3$-IRCe7]GK^003#NsM\ݘ)ebc\ѮEwg-FɔCtu:tQ7a%놱FiU0Y]ؚcxY)jԩgDb}WK9B(s13vy%6=vքf!UjKLm nP}4*|;a+ m֝6>2[$3/J9N}2-u{oafd]U1SQGtEdYWǁ)`_qyIa,Ǡ!v@2 !Rci3xVyHѕsVMhZB4D?yP+kP1{7Vx'rc3=4CWK>R-`~i%,CFW!Jr 5vVbH%{/fKg?TY\NIPBgef.ʣTv_R@RX\0!b%x2_;>BiF+~óB +ŨdOuq`/Qy&cp^B8Qe@!ޛVtd }3BlEP:whΝQ@#U+8\ Cg{%O=)q_얫ލ,[V ,! Iq$Jh:3LJpߋ:lEBO%?y'k3#82֨nҧ|?ʗޅ$ӧat | FJd?b C$9\^*c >Pݻ#`?*_G?:!z|`6NFepUEWPUbv a$c\P]5'3mr| L CD.ta1Uetk)3kˣT*;37Vqfn,dkmArF$)k?lm '^ dhMUf+\COo>a Ӣ>#5_EbCs7Zw~RB\0+k1n˧ݨHz_ EY;<ܠSUWw'ddsB!YPQvzz'b;Qڂm4SF_ t{Xmq4PynU5_ "xƛ &Fd1) C :UGfm[\6\#@ǃmwܸ+sEen&9 oQ11ƃc+#KK(DGb+\ӆ|ug 5A}霻=ϫ' @]g6E~Eӄ+X_]5J%L_,)=\/4?̈`8H7F!Ui龝G0>.@qǞ}(2 RlE^In՘bNaQdUvJkz}hLgtu>["#9o խ҄ze rܱ"`r$9ͅEsyuV{,3_~YǴa>6u)H@{ j4w+9 B0-x3ͶWf1Κ,-Tl&h'%. 3\f۴ʤ&DZ|DrbQy3$b~e:V[t/H8TbV~-A, 菄 ^IywuXQhX0[ _EInu|Q4M_Qn^ @^e Y^(48j%@ٔdg|}"Zr8c0DPbK 3 [pDmcrSm3FEܬ-$i77N%JB9)uይYZOo)9kݏ& :tPQ l@F-e+;!hgG-SWYS $8rz NO #Dc̲@{J?#:vOi-bW>d)<>0(@Z~_ I[ FFkO8KZ43TI6yOxKskZJTنIrďz;YI7@4hlR ?UΒsݩP /AK#| B^Gй=)[m\Gw9QHA M<ε􌴹5\ãD.X[D{k 6'du70\b9%$ >G|ﮍ& ,nIl "J[.Jx<$.Έi5t %1Amh6\ȵvʆXNZ6@ݕ '=+0-(IL|[g8ȵPh(}NxwU^t񨞍ʿey5g3LO֟(f/*wK)1B2w;^č:uZm ϊDr;np+}Iꣲy\e\oSPC?T,2252#`sbi:_wM'Uk)A҇ MQUPhev{,UENx>Bϟ2Y&14ۍX~4"Bm5G9ǝ#~gv1ŏҍB0,s;4*<[&9ú^HZCvͼH񇵀P\S5C“/4ՠaxNJ.NJpckN6={PPlB&yXqcAsmF'$[8$O@"Çu"5M')bT>ɆbQNɏKg^Oe [r\: ~wM8Kgެh3>kPks(?}X`Y./c":ޥ $¸RH_-%\FгU+`-{=Ez]m$.1qe8 ';23Y^$ E^8-QeZOrF}J=i:;\(*m. OgogeDe=}EVhؾ PX|Fnӎٌ"p-и 9H<'AF{WLbB!]$1d *ݕ;6w(DTO4+ [eP"U a!Z:=ܖ>`s70*;uCZіK)ҀN. c 2Vl*ȗO¨˺A;-h*CSK`Ip b` ȱ+V9UHaLn%ZQU:DFBLjeWZ'F){S}D/ۗ DF`[[GNS * 86FlelQZe76=TaK'-z0uW L*k]Lg&3`Ɖ uM{hYC]#@v_S{Drl)| +NQŪͦX̕vҘ 4vtxu Ѱtɒ #!N5dDp S01p暿v?l LoL`oU}IZŷURT+,WPwոrYrjZ帜ԏf7F\n & gx8;hdA\"+U,UÚ{]흌ahRBk w6.H8Hp^f|ci<)i #vNWht/;.e?6t^}O xLVH .dリd&@=%ua)PƏ2 }yi YАk%41@(jRo$Te0[(!-.B C&:˽ Ö|SlNe9:F`/^,og b6`3S- Ÿґ4NOmm$_NAa sw>ЉP!/B/%cMi9K螚F: 5FZ{B_m Xgx߂ ݶ0lWq}~)Zc>rĹ[WQB]}< Kp#welBʼny(/0[ǀxdFAsN3vfgw2pؓʔ'F{+jKrJKh mKlU ޛD8nH FѠJPOɂSg">oY_V_(AAuNfT{7-N:3Ok=~فWʜ :n?Cկ^X ߱Q Ͻq"'xg V_"3=>6X9˥I T-pfn4^uO[fve>Em>%7 j9b2+3t10bd)I%쵨Qk7 8R#A΃Lҟ Ufo}ޚ#Ʈ%:D:`:",zv6bGG ?klo| Pr*"FKM9j6%?}Kg5/^ogmT|_ե6Hr@˳!>\k+|%﷒aiQ,%wK>2rfu5-9 ą+ h kmQ':Զ].@f~DڟL$z#SEn&g@U:*A|Rʥ%]烼f)Q>Jyo42gФ)̞s&[ZNbm<],83nRmՒq ;%FpMd XN#OkB:L*EDn+2p{ :Z-Ƈ0LmX?̗_ȨcdEL܇[ͱ3%loN_'7c)=b{7kj !mTB&hw+hnٛ^˅vzQ8_ϛo`)FáUX΁r^Fο1JD5߈*PB {ol !d}i=Ǻ3a+dX #"st6?dޠgaR'`9eED,JUV+tNf_f,/xdUX]refwow SGUct41T0dMhU#\fid82/lJ&boEC) [M2Ad>XOpux£(@0E!,RO'%7[?8~WhW[rI6=zqP^$d,6>AW[,U;SJᚵ5Cz2*o b8nĮ}4]S)sԲ`o[qb$':b/E ׅ7-pr$tzm^u`¢:٨N=f! 3ÛN/j=J,coBYyӹ/lg1Z@#6rARFbl`oMLyR^pޝrXX_9*zUKlg&2}z<--WCA0/_ U =zO^+.-^۽^M^Mm _~(ZYr|G^wt/=_ ݱ?QC-z*c%#bV#OClMARű7LYZ7 ` >Cͼfkd$qM)J#RR& U v̄P6; UD[%7-^φJk \*s^W8\W`NJ.7ADFPf@y,W&}aM^i>1}Ou_Sq[ scqa4RJܧcQQc7H"U~tݨtuZ%#zTP3B35/8ԳhćσH]QPJ\w;Rc?z:6qΚg0-//'g\Yd MG~˸JK;Y88")xo =Qb͍@mEXAaQo=VGHs;S d3\9$eu tG{jF*WpK=-ԞcS=}IPI}˯Ox03 3/4]S,vM۰YyGV 5s#.ŧ{C]%ȱؽIV Hm@SM@E~ٗ\LDTku7y-0G+!ʜUT+D 6Ey9}kѭ ^y#@"Զ=9]M`+.Fw$h!D. 2ThjQ c&\>i4`-`5,S6a35|,֦zڭ<1w{tЉbUe'vo°&*Ơz2̵5Dw2 :'S Ghg{S[4xe(c0:!Uf׉Lh( +{&V!BEAe㊛M2iȿ?misFOq^4SUhv9rlKik&RO(2E|:Axz7f J|Ղt=Ϥ[gkw:y2F=IlCC*$Kz|*=B+A;!7N9kI㣄' ]q7p^ bMf+b*ٻ\fJCr ?KHG$>IG(D'te4Z>q]kQ|*u.9$hc%tp)LGڽB3Oo[%5owAG%*7Ֆ1. ym?8 &UZ&SdI($29H ')Ц8Dì"ۅr6U+VhynR]D XCnoc#2{E mE TO, z|R"5ӼaORdY5An {?!gp\H䠖Y.P>ܙMc8P'[!;CK{kJLOAGz}zQ>\4pk4T,jh՚Jy ցgb2ӓѤY5v3߾q)6B@~dn0x{akݫ+Damk55 Kwz؃U<-M*jF/ۉ!3UH`!m[y4|=p#GBO n7ċ^EP!߸ND)<"CI~?;-;Պ{?3AH>Ac_wMPvm$,"l&Ab1+bemh5$C_ w .i ] 8([b, YsP0Bg'$=9R'* gr4jPn2z{w9Tw+ ^νE19:|Y Ttwde@~̹ Fߖd _Y$OۄwT.F8C[Iȟb$LM!=R` ,vp!ĥi^L5]}@oIJm7nvfr{QX [ 5DU~껟SL ؑ#Tnnm#R{D;Ҷ jLι8ߙ&> IU$ zߴbPz3ڪAJ۟v;RAC%;׻pH8׻;hQaCQFi1U ̄i)HJAohs񂽷¹a9׊r=TL-?ͭi)׀N2\QL3/) ~ZoKSڬ'*[bi`!lJvE;hH,;$=C\㏷T ?XDde Am(ST7kG)E8=π9ǰ"ew^@-j"tmMcKaUfOdbU&+J\Ԏ/K:l'L휎*gjfؼ4|CwaT֝0E7H;Vg!faC/0ʉ{[[^(!WTy8=}7Y!ۂg*YIsȊ$|ѣ仔k *=6ޔڸ` CbWM^34mz  Y(#3붱~d#AmN"ikn2qj.Lok%R'clƹ:J׬AHt`[?#5sqMu5?TUE|E8"-]_߷f8`rU R#3mZ#5ObëВŘ|>jF _CLRTJ8( zq LS? Sh!}v؀9󎪤?lCӡzK?١{3p D' A24;/YusP9ݶ2isbDpse)[ke {@ۨ&@;!~ެ KYٺߙɾ /ըmﴫߐR NBU&ha}ۋ^`Lz~|} ,__i,+K kt۸mk;,X~^&%zBPqwbцoDd;LNi0w#}cGR-"rܕ9g ȿr!@6CgۚwNOc̛K; c&ok]:=K!A J'e-Gau2Q=1ؒȞe}!$bH- nΉ9 zRkq_kVL" ؝CM>o߼m'Q+?d.cB%Þ W pZ؉EK_G`uD:n~dJ@)W2ʜLT*bZg|yru⻁)lZg`|>O{Аn'RRj0g*>X=Ӷ/x'Q嬬]=áybW?, i1!M2L5)qsh/r<ЙN}bEde/" YmrI{ŻiGȩ{7 9|+V6O48d/l|MQ-۔\PNyˏ]ؼP]2wr ' KXO5=IJ8W,>,"0"FO纱S>v': ,(9u>>G |oFe }ebO %VHBtp"k[t*ΕMR1>4#{ⶕ$!Ȩ n~ hN!G^ K>`Vp%k!AӷJOkalfXI2Wd^3'iz73%tZ}(^㶼Rj:p|l%-tG% XcP9t&Ú0^+N,V}_L198OsXI!]B-ۢvI]sXjkb ʫ*vb́AtYƤA?/ DvSGX2aZ<*ey$'gDkY`p9Ǘu~Q D$;Ci˺ ~iymf /u%F$m/Amni\X!~)F9{íooB'2ȇ&BEϖm re7` Tv7LސT-enJq$.W ʠ(BD}CI8xXYK~E)JJf>n%mRކkj \arMP2:;SDVjg 0ҹ}]D\**D݅0ntK9d;O(R6`G.@0hxv[zN1pW̕/#LS;@ս` c:=Ug Ve$) APW$jf`%>=?#O=:#ϱP{##x c ^L}x5g=QY|$s"摒~ EҗPqЈ[={u}R,Ytؕe6*GmB!/I:"| _suhK]%u싗Ύ^3`I( ҕ>^%&hä+6XCn̐ Svꎐ4ݛag~{?4 ~1[`\eCw2ρBpwa5`t;nɚVVYt*/mlHo)4Ύg0Nq`bZ?wm~&_k:X`ek7wEMt3U.n/^ 'X{ƚ(ʗ3hb)kB9УJO -+䟷cgG",UiRq~c{e,i9h bLLfS'55’X~,yUIBl%MR~azﵙbILmgsjppU7 `#IҺ-8)OfgRA%9kjYmB,??E ,6qDB|4ؒK¦U=g% ɗrݥJ[T[%?㎼vL9x5/ 'ӍqM4(0S9w森ԕkǒV[(eC&e0ePWQ fݬˬ!evO~fMZb%HlK!.{;@IĨxQ{.?__Wߜg%X>+-X.Rge152ITT@0fHl! |*#e # j r&)^X{jaKn7 G;p*cs*L7not3^-pIߜU^i|hL'WOwxXHƄ8cV-oҟ$74qcE4m۰06X|= v%c2uŬ)ujZΠ7gF#&ƞ5Pa1w0 c^SNخܪ 2In@@ޛ~T6ji/()Vg"-`fXx>H1+L ! }}0m~]oTD4GO5v׭&y6PYx⅒,a"*3 hk.X5 /t+S<^9EBuJ,ɧExy.ϱ2P e4+X3U PRZRگγ@Ize{.&+@{_-$9jm|uin{Y/*3XW~k6xzk&kI@++#QPS.[.8Ij\`&3R)0ZJj6'ǵM ,U4 5 ݑBRp2c[=GY=f:Z1CX˛ -R GOmnDUgDΉ+brΧ'704jngNSӸ>¾}w?'`V9I69>t<T3rnӁ|4_ NJLP6,Zʠ=~mG5r:$b&Ul ^Q=3Pdaer]^Wž&[x?Xw#^'fB/XHFZC/*˼|_GQg{JƮвYog3o7yG-9|-Ypjj_J|F(bc"@$tR*8M(]Tٰ Fh㮊 !7K,V0o2B4]@i0IrוLس?7UYO0|j  W:#{z y#8stTy۱ҕw_ ;A$v<_d/懊 qX;9Qxm*42vNؠ׼|ve%:C0tij1UImRN-O6k#+0 +ߤ`z!ڟa?D`OxqXJوCn~k3]ꁴ;{ޏIYW#W9h7L֛9yʖ ܣ'…>ϯu0X WKbjX-8jg4e~r͉ع6aoV4n"sVeǺίĚZ]Me{tGnTΡj7, C~ȯE`CGt3KjG͜7(ls.6;ܲ7G(}f'u~?4I줦IzBwL'iVL6xO3:Y{~Ib"`y@Yu:3n=ev\`ۏ7Q21t\`o%)! FwSޓNhq(Cӽ˿2‡6;^! %,l8pDX[t4J|=6D1ذ$npo5k" w'kxILq4,H'XS·1[~3u$;+[+.?n!xR9teƵocE5kI)|K%,#+TΒLH6SLf~a3[Y!%/Nr# nVј2Sw~]fI"1r1=,*ħL=qI@\ ['JTs^Cu߻J4M"a-p63C2nrC.lN'Bfc`F~򛵷C*g=&,1#:c .8mR4ҏCZznmb|7썋z|&F(5dׄ^3Q=̡ʫ}1>WՙοfrT8f"TӸsq%*;g 1J4^$wl+JÎAY`8+gLKLQ>G)_a$=7jW$eY#rXқҸ} ҵ(]"+ExoR(t{C*󮩇ۣYP@*REJY]H C_3 `7 ϞE9m2Mh=y1)t@{|6*xإҶ%F È g|$(i8vqeRZőtN*HJgǡ9iNI#UP&z!kw3\;]*>.1#wQ٠][Uƿ#MNwcױQD9 APm+oILAnl!upK_"ܲ⣥ݒH޽3t˺P騽e{Q|@8iya-}0#b@izD) : iq]|Vm W3K 2*ĠE cd5ȦlCo.r.TǩMmt S=?ej!Rrg.}߸KB5?x0^S<Xr$Pղj_=:#du(HD9129 Q˵fx^dH>jR"SuP~Q <"J5`ԟ"k->nb롼6qB콆1Ve~N/º`=T^``q kK,y(eK$)]\CXWQ7?}آ%U:]qQA7 s7M. muI-2>n>SFx,DްxJ8ω6>>L2?k0KgM#=79/ELjIdDYTn؉Y;̛c?])!tT^m|^s#U .AlڽٟS@3<>ف Ui@-d,Ut-4b@ R-?thVUk{ہ^ Xj1CNoɖ==$O@5F5G _A;LS ȁ٩~)8 |njV [LkRLQ!עl|1T'Dh(˩ycW}661" ֕5a-iˎX0(@RKg"L[PF9O |L$戫= ǡ2~][C8S~r|ޜF$oA QFq]u[lK;hwn]Po%hojW-iV!h6PMBJ~;gyAK+UɝPB$/xu@&9ݯ=H] 1kFDu[i^ j=vTݍ_V:El{h.B^r~BabG֚GS;1㐕ہVsZ+%HnPzUG;и~6'-F5#d8(gIy۟z5^T)dNm 533`W&o7jhgQQ>ヲhvm0g D;KԿp5YȦjDҡ,–ER6t5_/`nX0)8;2V RWX00dAy a2e hg}d0:Z R.Z*~Iz(#?ՑHG[E2oڿjj$뺚7Ú=¤=T~cF:&J8K$R堙=}. MbY߽s`k=z$2Rxr"&2O=kCvv뤃`$ż̳يG1M:)H8Z5@ uQokVK4W\FXLN>4nm?*MԹJEobUrWj\ 1y_)|`mA+*dLh ziVFd_6RN0Y?2RH=ʍ,bkHjoOIt[`au7oGP~l0vG&Eѧ{m=^'Df d(!בE5 }-ɐDp8ў+r"DĮc2\L_mg{̎Wq$)~[,Av\P?S(&cӴQQy~ l<;<5H&D62-H1eQ)KRh /bm߯/+\$lD{ZnS~_̶JI]3*UQ,@/qI\<lL8𔔠Spqm`SufdjG2EA(N_L!8g+9chpO8RUo@|:úC$cidT-j%'#((Al|Ź2@c \[34aJo4P: &T}P)cxMgORKms- >Z;||愱A؃F~2z[|3Hz'7wi-G/Ceb+"! "e@#;( $SeC >|((R펵D]h]:8u_Mu~["v! s9Cl ȣbF:ޗQgjv4s9c\h| c 1 Z8Cxr(/"PL)b,z <4 R^=:n!{Pn3##:VĮ`,{f?vK2"B CSfhԋǾ3g-q^g|7B> gNU(OꁻH?qmb? R [ZqW=ssP`{eMaA@ā@` ͗Dv|"2 l#Yi&xdRBt{H-Va33F$R^NX Hl n]Xխ)S%{?M|~MJ,P{݌H@PD487%-.D$CqvЈ\6JO }|O].OCf'ߢvd`sflnĆ8+rm^T?Oom˟S^ 6sR M9WrKMnz`c -PUl3η^ D[=Wȕ,_B-U8]MwD<.?~iGY*? 4gr0QsQ*3QP]h.?IT"lA:IՏC w呴_J•dGzchC?iy9v6ZB;rs܇՞GL=3^1 "K0aT3(sxMy%)L5;>(Ͱ eB FN\3zTv@֨RTγeYƖ `"< `xL\v{IS`_g0Wb0J'f

y}CmL1v$x$)YϙKI2o>#GaՅufP$\r2&x`5@^}dbJkZ"Hf*X278e}q~S}E0m\HT_ӀwA;E3ϒ,t;J{EH^wOUL,~@R%bF67Q@[GbB|z ) |.gr;eo#Ş (Ggn%ZC& G`m3J-u5&# 1D ?!<+8M 3J(~<ʿ`F.SpB6WLf˞U>ݽ T`)g 𻗃$ό5JФ:nrd nLb{߮Lsxb4l>9k0CpYcžy_0#G[:Oz[=1'^AZUn+4sTL"ވQ~{ C?L= .O7߭@s=gz4{YElӉ>ŷv?Hqҿ/χkiWIk^x`Hd1-CW׫_~t4lޝaU 8_[h~v"ܪe_杄^^9p o§KZ0@ٸQ.ӤX.H|]!~Dƿ\j$}y'GBAkk{cZ l&sU /Z/ pɪ)y3Qv=ٰ̿mNZGT a,f`YHn 85,Y 0}ӼpsN , -jVM3`) @CQLBӒ2l9`b A+G= Gڣ- nP9$zV(U.8f-zO$kF7W(-N:(yUSLr"jק/@&aIKkDFr_u+zU/XP}BsY4H]<VݐS; }|w9;LâZ ~U( |IPŃdDLG5M5C"sZ_43:&U0B *@v$H%"K=UCW}(sVζ;FX,RuLKUXwְYWRle_b\ O(;"aI H_IRnƿ/"X J{΅;P72GH&@ C۔8{1ca{&Hcб{K&Q}d^^և۫AuBkU{1JȫZU{ѝb"سАw_BS-ńBps;쒆_J?^!O4nިGl8g̢нՆ3[=y51y}wƊKkYgkm'.F5( A}޷F` ̈́nn~:DDOCnS!rEe>3e{)/uH Mت@P~"ؕ$եܳC R*# lpk8D`#0+pCp"͸θ0<,ej!"e88q^Pmg_|+_zpEm'_;Ywg~0ԘxC^EI4M#;fg|}P?2ângIt{ďئSJ㦵+!qK[2쏴6ϴaIaD+P1Mg.t)M2M&9eݴa(~m$o1j>1aylsp$QW ~"[q\ۛw0ZeXꑊ:r](IP6F"xpR2p'&b "L/yO<0HGaufa؋.fzT"n٠=60/f⭟R1bPng.ߎ5Mal* ]+E`Xj|_"ެ5~t --&<!z[VU|:u (H?ee nBX]=YWt#i\􁲨?+%_!saGytL (rrK? otlb?erW^4+QֈJ{<=Z=@`Es'&K#k^zgλV]m5 Z  N=IȤڌ#NӒlOPsڲf)DC{c zs㡝_N+qK#Os}jxAѥ|ɔ& sO7^UQ%ӷ K&Gۄ녠ŤoSR7wH\!bLsh`gc ;G ~Wyv$C8" /@̲5kf%[IQ #Ioz". ~P!jp&C" ȋ.e(ʶ3 X&$=6|5eB:C06%|0(/lW;|C4*uRYFiZlac,WbR# i D+I!sKIjO}/Ì10&V8[GA=^@k/տǽ@^k Qb =A@h|M󵹨|CDo4O"T"cu^ީc[-A;ñ嚃m_Vޑ:{מmդKO{.շiuK~I#y* @\x^sUb`N|j}˛,_òsҚHx9s׆9rU5yP*yJHԪ"m:/FCU2ԖN4,Sý:Ҁ=x5B0cJa[\<pb ZI γ3z?2/ɽ2`R}e„ 8-VtJ?\(,ُEI-`K ӔwhM)*:)sDݡ~/bfUq*@3Z%fTu N2NOC9b[5˲ӨB:kmp3D;!GdXȔR ]xaȊеsMq3=p|Ђ4)HLƼ*fԨJ]сޱGv$*5>N(~?TQFaXzS2:ծ8vh5j]4:RJ^X(x*ucl(N{=_6W^BL]-Ȧڑy+aAJW*P A'in&0pBh_G {iݒ~ d{0s} ͼ^[ugQyEV)aYҶ:Q*vfIp5Mg]\2ZAGWh ֫υ8vH~T;I*`d]+ͻpT4B.OZLVjd4cj$ݝfqFLR{ZPέ{!Y@ۉ S[ɭX+֞4`9&U6krkN|!g*)Dz9m VP2K,j>lmu,ʯ(/TA9y;]6Y*</hD* F SlY?~%VW.~+88BDc ϥR2qdӻ-h8_, ]SrRbilm6,7鳓"%E4`gUg 6/p?O*ڄÓg{K6G|fFUy0[B ܑL|+ڕJj /&G})KV+< :LD@4iJ $[Hs0@#%znriReAN3jeA6Cr"J('5'daA*"3%FzyjvjeCǻ‰>]w\x ?BH+V8`eF|"SrEX -s;[w[ZuAɌ+кB|fHL-Olgyq4}OdKA[1|X~>dN eaYD9*?j/ EM#JLafjΥ/t I&[^ޣ/!d8 B4/wnNbҺ[~gl&ie%j +kk )1(EQ<7z2#!gOd5j̋٤;{DGJ e[Z "\[ghz& .uVyV[?a Uuu#m2 *nAݯ3nmx-"QQ[ar8nX䪻JG4#} UxEhQ.. }2}.K<(b)rȏ7xΑL_T٩hI݄i?Џ,+* A^II+Mk6D"*~{ }bV _C>4P6YukzXU! ιTHi^@h$DgB^L[jY;4/ۋ& {y$#A gqYbHFZ٢N ?)(S`}M F1ȸ@l]ಌ-g9Y<֯?Ej]Nɥ"< UMDZgciZwEJ"Oۉ+,:1?z`3J+K=闢$ 46=F՞◭,w@U;fǁc c745.lzљy;nuLr~Z,.HXqF^YTH\wKyt7v񭽂,JCUI"%"yntG%)C3Juc=#Xmcr . RPwg$.tjx-U(km(]3b"$5RnL-Nd0 ^I`nO 0'Fx|v ),@9q߬I2 7I1s߱bF< @8K!8J<]M Qb޹E1E9áŘ^ÝL[ Bv:JcVRZ-#w+MzLuO$-}BUt{`i ȁxK`f> k^!_PSERm K uHF8G<8IvS[sFH>=Xryâ\񇪢eV}")p6o-"x`ù\HUW-B?5VBbo k++Peѱ#5lTCfj{eg+!Ȑ@cz8a]n+2/ Wj*(.p1oVc(Yu $*^L֓^U9H""]<64[P E|"C0vqǍ1]+ӮUfVp(CȽy]Ȅ+'x WdX@pR8rX'~y[f+ɡzM $^T׊,#Wv{mvCi(&ZuDu0 4KiQPf/8mFS|v'g_jSqI y=c kn!5HUkhGx`}l6-:IIZhYg ޭx>IQmL”ؖ| u%x Ndz.iol@CyF JINbT(PИ }OzYdl;LV)䪯H0KPW(g x,Р͈>|U3h'^2ׁUbcϣ}օ ӠB74VM+zwK0d34txDj à*T%0Dd\|JջZ'9ɳ 60] Vς]ǻNI#e8j}ȫYtbPܭIK^ @ i8Zp:f1@UzbY(<̥f ZQECpt8bٺ֭owzw9==D]ջ|٬)5lx 6~ rFz'#6 ܌'Ya쎐D=j I51AmM]?ӿ7oEқ嗟S_\q<,6_bjO pZё"(Zcx?2ۥ3t.$}JpSՐ1s *:4:ʳ&θe @a,I.b^XPO IjrC WȦe(n$?K@=#_X,p$EQoqp XouvPW|Vz9B2u4ƦR7a?;)k;PT83]Df%|$Ӊ||Hrö(Vay\=rfZF?i߈as_| *PmD'=t%cMRys>Qt1!p@]a}a6C.4ٹQ'CĴߣOd_SbeBl#MN~RmU8Sk%#wO{ְB>T$37E;F5%np.s[D<{bF.}S|NEchsa>f 6䶍=]7=s}]D$iE7庋ŃAp9TM-Ɂş, Nu}Åd^LFdzb+nm(}I(<%`G\GPAdط$~%ASm4}/nndV= [tv6v7b50;R ǐuMs%tvRPRWI;rQ=/a#m:Z!YG҄t:d߭M5C*+`|j^Zra [ΥU~Xpn1E|uR^FrV|JQ'eJ f7;qaCoL=9k$jy.g=Vg)\wTr͍y |'D\PL{CiO膧 WX'[0;GhZ5]Kpq3WIBD\1s(tDv'$!u0j6!& gZВM[ 8).ΆJ|C6jH%nT) =ɬw[|PMlأt5O^shw@O-Ks!J2hHvݺc9x?b RS=(R2qD=IWsQtx ؐRJv(@sc&~EҢ- -2pV5>V~]iϚDž9@*vN\N4c+ gA'S]Dp[衐x$WHBaM/t~Vl}F @_G׳zVP,TwF|0VI:uçN6p,v]&K |>2ݶ#t.Xp щ܆u$?g(*q4Kx40>'5쥚mc'&ϰyofĉXpz4$;Z5 ?-ŽkY/uk<I|ȋ_{b6 WX !axAqV 3bpALT-5uV{* e9? F"W-tY %R{(؏y99m^6Wtc4XtDWɕ._ |D@DM^*(_]I1dӾ\-L * כ.v1!9 ⴲAUӛ1Z_CsߵrTmf(҄kWۡPDd ę[|=* 3×4ViNX֓W]E]eX+sxFSq<5Icwp2vY1w7!%ΘJBTTiOց_NKgB́df s@&Ebkjt(Eota:1QSV^[.%Mv=' CuֆmVA)M 7PvM,M$}2Jo<&h('t˻z/%.P4[5gǧO^4)L'2ml2%+_?-vnEъM-QdqBwǐ."$lnV<馗`Ū'M1+\[$ժ![[1.a?Q~ͫʶ&D(&;lQ4w &M >>gdc|8%S>Xɭ ZŊB Q V7V_h0p~Į/WW8/lVn[Vաڐ!Cm(uGv[S%J]GtRStr|u[P'0wNґ]<i$r"v`H}4;3t0- S1I= 6pگf4>ys,"e{w!4o?rISٍ-$nd7o|e%Ўmǰ=>z&?e ޤ!)ٙX)۴ av%o#_Vg!;@kE_r8oسt)OҸ[X[OF-7U)s #VNQz$g!az .+\ctf A}sP4bwcU )aLķƓuHLw`E~x%hkN5a He新q\;,`v eĻ3 w ^o/~6=iGGMkmp.Ep>Y=(vg-BxtO+IӼ˓EV9n̉-_OXνw0_<,raGz%<֯Ofp|s-{?vclW_[H*طU޶U[a#i:$xmEN=r޶OɷmBj5G e[ ;KtmUWEO8bjͶwZ) ]|;+,&C,snś0fe͕f̂&V Xv ۢ(HCԅ\ XnZaND/b'._H#MZO$*Q'7"X)1"Ć(4Np GFl߰m9A,{E*)>u`ԧ-p```_\?OrY?UfeV1⼠(SP-R@w;ew{mk^F`SEӴ-:5!J++/Lśš 2dQS{^!^T,E=]kaB\PB:'ʸeb5O<>1ʰ&iɤh3#+gLYdcWQx9J""UAF\?LkƂ~J)CJU%w!no5s"d]':(p+\ 9撁A5ۂ^AczXEwjT }n \}!>Ә@ pjrWE)VmlxXo,?K1~(BKD}+rg8ayy7j.+99ķFNحς\lZ N7!M0{lPzFɌZ@x#7M`+o ۮa %=cK'[T,%c#{7x@ X#ٮb3Aa"$ Eɻt<< QIfeщ jVYƳmoA`1d"VpnUv͡ي(Y QgzIus( gK/C˥I]YڅA14? ~3nR;-I/EGlQ zS!oBa^| ys b 2J1Og.-LJ[fnApv>k/CHM` &W |',=S/bYso!xxZ Xrd1шʧYh󞁡l:Q҂_w){~ 8JJJoܙ(K, ?87IJb-T'(uT>}Dx~Sˬyks6[ UGF3otՂ Z)p \ V{PtZ&;( ^B]{Z:wfdoS_p'^>S`Irmo0H%\~˷tkg`ի5w C%{Jv6# XUٯ!wxq%s]z(Fg^}zktpxu^B9נzr@p8%ƦjZ`dFo)0춃>ԤQ'qD=0#<2힠n)֫kݓw ީ<"]PP QѿPKfQ[Tgx6=-M LV2Q\Gs`R?_ж޵F3xSe!p#W>z~G"-G Ƞ)_W跭J%Z1І< }cWc5\/ѻs2.9n~XTYG ~H| ֎ i.Ȕ.8/f?a5St%1v]rcR:%` esDEmCXkd H68QQdɆ[InYICK9_$\,2]BԽcʪ}ebN3 㤘6 ޭQ-qQ4`mCNW(Rd¤Kl^ɆV"0n4\{I&EjH"1C7„A }-ʚ=?yml)3w%f$;Eh % ЄYۢnj XXf;%*WEa~E6yTfJAqVneFz8Mo\.Qº'&AU89|5 6{h*e5̸)JW Û.It.aa1TOCIVzq&-*6yGOATLyͿ5c} e)0_.+{ z4*U}KeʬdMh8k\%끔vvYNgeB>CSb(Fp#Iv?=d4噑Y_w)ŀ`hVz7gmI]"RIxzfkU{OKCřa"wտ"q5e=sOeq;XHGݙZxCd?&; :H1Џt0S> ,H-/x(@^Ais3ɱveSqr(oKV"[䰅=y*@)f_gx{>gpO<,Փv |,>)oH ~[U^Z$dvNŀʗyw,H&g\PADɼi_e[n89ݴYwRuWuH:f Ɗ.ӳM,h nyk;xL2}g16pA2l"Y;܍aV3&3lF_ϥc[L~j>mPvu'Pj}!@'.o@T`=iMpmaOA;HLW5K{6ļ\e-5)) )WDYi= 骺ūJ"Nc󵑐E8xX`yjL!6#ZқlY>K{њ4\z%||njsFtsdCI狊#<2g JL%Kym쾰CS%4~IoRӺDawM`7腪mP=iƹ 7\_Ah8MX H0-qMlz~+܉?Ue /ncvԍ;ep9h"$~V(ͷ}73-){ۏoqtҖvQAR9`ނ?_!h˚Md3 - cGϤ2 ]!>ANI"T$V<Ղuu=B$b - p~Qk|s;37bqIG) qQ8ˎpB XpqofÑI={Ϝ$?Ņ ^x'=+ 3d$Dsyf-0B{!50l| a (D =xM<p~, HS4b>⣁nvG}Vv?>I?bRP$sA-@CKC^W>{>4hxa/#D$k3BGJqD;  IaGRqϿ>F_E[(|15{R chQp. !ΰ;WO_Y,w-i\|c{)RL@Kr:ғR<Z:$v6̓㤼r\K~:E(!钜F;²Z1K B7k2x?Đ$֐tv e U&ɝzhK o`v>ٗŅeD#we;ssPVfOL܏/)OuCϺ⾔@H‘`e}߉k*?%RN9e;[c[@`cl9VEʘ6Μk"!X+qŕnmh1I7Fl6?eVMrPYnۃeۑnٮ7Q6RAJvF#O 3I@Ýkq-T#!OT+\t^cPw^ijdYkOcdF9%Ua`dCI#M⎐[Mh/6tTP\!mk_5ۋX`$ܰP-"g6Rs 5\۸OR7gB8d⧥ ?^,lvhn/)jFЬ'@恻1ƙQ(䈽\g)ETw^|qcy~ #..AnlԀ+]x5ȅdQ^ *뺇#NiDX*գfJgoX #~=jg <:*/ &=v T3 LLcwEO>M7}L2sL^*kHWz"jeU+dBp}prM/#w  urX,5hHC~g rdV~BL7699.Dp o*(o[ PoI=GpW76CljaM-ɡmxCF. z0R9C Bk fz-83h[݈Tթ^ Iuٺ4%" ׹"K-csVs&4Gp:P Hi5‹4/K& ց6@  'L2A[bgdE]צ$W6|((GvқT@=,=j,3A"ei2'ݱ 2} T"t9)#}}o`Oİ3҅|4|\ Jf"/~ja LSepbZɔ# ~HDP9Al_'` 9k':X_%`5'=c8 qA9: )u0>*(Ll(TWb,sR)i'Ba*7#X ZhlFa-ZCAEf a7Ѱ'OX `kvU3T(3wø o$5xZE&j&+se:e}TQuKYhTqC') (PضnϖFc;8Q1=R5}}^=+XM2Jq,C. 2Q} }@X7?kA6v2}srm׺w{y&f'9Ԥqz`NJw>(%»D&--Q/1drY@-k}3/&ӫg r k`X7m>VQwtti>nrA.7X=Yp,U!tc4Sr0窒َ|hb5G7(ډdw-}"u3Iz>{4O_G-fE-mW0 V 31l1LTP?[Kwk2ܓ5:ɐ'f^cqlofSOY`RRg1!4+$ #>J] }lZs3\I%;~/dA&8,P?>GF>b֖6ֺVykKߗ¼޼a3WxQ١0\MQY99Rcjz|/ #<$W:8Jx78bw}ZRB$I?k H 5RG;wublS1w@v)i xs ɮNK sDa{PawpYA- \ ؀i,3?k\p l_\ >S᯴T;t9RsĵI@xcE q <5SH?ˣ!_6.l'J`*7B x&ru?qC'Kd06&~N>z 9bX3Pkr|x \NOnc98/!+_3VhajM)cA6hLI,eE (sul!L1KЀ7s8Ei`'k篺%o1Nm>tUVkoI QF -S/l\m-r@ dV*h{HRU #WJM+}_L:OFaA3VR{JLƩ*{.eAU0\h~!cU}Gl,鯦 MߩGјD㩭?r56Q`?Ur/Ւ+FѦ]Pu~%ːJ4l[/"@<%^n_U2%0KIԡz/ R8)1%aW'~  ՠ?|}9BxL͆k0weX{X?|CQ|P"^Vf` `L$~HB|ە:l]*`;_2@׸7r_?ͽ۰}XOJj\ƃ:t{=V8Xuq+3 {TAxqۂ d^A&Iw?*[l s9kΜ9AU !s}^3njHT>[d 9^Ar-߿R5O-vA1C<&{:hЭ7K&0!m~0\RBZ \Rk, ]ÌHl$G{e{UXZ I J(gu?X$T|2@-yk7BOU;yzE\|#3nKM6F]@ a#Rd\ a%dںM\bޙ{顣hMŲq>$aۍ\}Fݗ`Q8|v὇f`!eUE]ЍWD /׆w`!,e!捬y{DQػ*DCM+!5#{S;Spr:$\2JX`c9QK .9K_Hq7xfwlQ$XGue]w#5'mE=)IV9n#ݪΨdIjx腢߃Ii2&Y f7!f1Yܰ d b 7G/I|Ji~Ct'w3ߎPQ7;OW/ƣ)q]7^@,/9?!>K~F$Z"bMjFD 2\+;Rf(ÎRۂ+۲J@v(ꊷ-U %~ (RjYw2D=J`a߶؜!WěW{D t?mѳFp㲛N\x@<@OQ"}:/r(Xt?\BSxr7 +M\G-u׻Fpdب6)3΀1^4|A?Vʺ OjxDž}:rT^ 5R)88)|(z;̓*l=5ԙEՋgZ}y#,`(#UHFljI{K*s=k(А,oG]B俈B>[z8*Jnk;xMLɨ>Z)DDSmI|>hTYY!Tη٫dGfk]<|PA|nz{f{_*MQ\bbqrRlцx(WoO:M3偸dar>"*3{ONm=Xz;tQf27SxvW83K.B!D)35W獖WiZ#\Uc;*lmx:-c>^^c:KJ}1'z;6"(5—H&ߧF5"wTCr& VF'um-HaY9 l8kͽ3"!PL(*ԚiXa<ېl99PKKˀZkEy5a,ִ!:K(>p930`!nn9KcecdCh01YTmmnJԧ‘tѴu Ku')(zFlgv,d/|0 }!4s:h4G=_"U Y)ˑSDZZVm<+zABlF4VBz l4cw(!- zHvp2GS#҄My.졝ʩ*{Y ʯ aBm74Iso(几_ew/ǃQT8IO~~R)Uk#1:Ppfo\ Nt|o8fr׊*FbU=,[_u~Iu@h =u+^O )\ k|߄[y-srKH1\F8uEԊF|~]ho4ꮔ3J8[k|Vi_pSaLx@}z[}5̺{w\T5!"<ؗEgev9}08nD"Lܼ֔]O3(E:?&Y0}o.urNEz8Cv4pq&Q 8nz< `p:|}UbQX+vsbSٖQMo*r(D"Ɓ~&o!6qq8Wia!Dж WL|gjH\xmrQ!]W}g}=g-H, #qN'Kiȣ=c7r$c.]j%ѩ`ʌkɀ/ӭP L]%+@纣蘂]22OIn.n9k}:v56#bCKBo;$%m9} ݄!_6cЮԿeu%EKtDsh5Nhظ /<̫ U-ܺaɩjyRgC:ӧ/$U:fՂT˕7~tkc +(D.ZGSQOu.VOBs9>̶sf8!ޅtَ f٧ߗÃȼp5L .P?de$ʡio72owJ99m,7)":jBBH)1>D yCh'Ӏ5>6 $)5rF0'| ./_|22 6lM ?Hƞ, =Z.+: YmmwK(rHT|6mS54#!:0uQLlrN"WW2ıڶ;; ef D1 Z PIʧkvL9jqO@A:-TNJA_PH׬Xmb5і d ̓B+S<6p:iq:, lK'qc=}|#h9:n e/7:Q`Nd.j><\lF*̢ϵ>(B.q:+ҠgNL]0;nB8g5H<ڝMѥY]|jѠ9[T5p6 9\[lmټRϥhy9j ~Crx,;JStJ8(jC!d\8[-GWnͬ@&DY1㶦 H+zD0:()xӋ2 +2I wRГ6?o6͵V+㾎hm^wWJ%/7ێX64r>8~mbgiJL-|l*hj(BRR>* N.rċ uR_v+ Y'%feNLTЂ4{o0mАiTN>g]&8+z/?CXW%1isJ }9|96>{q f*?˫ q'sKe!-R-nyܪwo0V&Ab7t9[0k5e? R6jd%r[RـXr;26vCEU j-D`L+1wpVR0jgm{cKe #h?HYuJNPZcO:YdR6>S!^ ? jNK&FM,=V2h)0ƿ;;偻'igp#`Ė|d%nrHrILN~RTuת^·v|O|cTgC6ȅ4byWcI;Y$`yk&a̓3ClujX 4ܜSnxCYy`u1z)zޭ ^1Y}-TI(dik)K+jK.FRq/g=[hV`Gpj]o뙊yϹĶNM.,O+,79Mҟ/0q>Hzdmn u*$ehqJfal q>}#jr9q8C2uw 3~yEevS31nC3܂z_dÇT M)1aeA m DicNSX;XKp @&1"(?Q tem;8N3E;e<v(8޷ҁ]lL@9MfIg{IXWp[CO&-=sBg DFIG`.Į L6Ȱte˫܏Wq/!4Vgxmx7’Wcmu Kӣ"KӴxE*dFfLPMF.+*]O?Tk<4͓RT6vmb:7bo$fJ3#tez E$rB(8IJpņ;K1襁 JsUʹemzaiMdvoP֥@AVmq*$=PVl,&,:'-BQPse|sRBSlDnxc/_jH+)f4VsTǕ!ߐDΡ劫@Ws+nWBFJ`2;(-FG0HrN,VT.1 HgYI̾0˰R~z4̺CTjq Τ''Gw^ۨ#8$v JlGy]@?nnw9PIt緽Q6E+"tx@`Rj,y6r_9 #D<ң9 6>S&zW-C,%[Z)v:jqy^p`%(C *d1S4q"53z4jԥ_x t3GtyIj.ɡ>n X;o:'q:~pxYZ>]4gА .}L ߕ'/Ybs1N"3)&z`<4i 6e%H9U-nv] #*#^}CF<9ju #<4ǙmZPe=4f1o(lPmָ}GGkPԦJCWu~+*jL~*ѠNyd  {f-9MGq61иs4|k6eH oo8v~7yuI€PX:Ơ-ĸjBRxgߢR㱇FKRë`nSBOB{әާgqU-<@#E\cP垝U懆 gV\ِa$TA˃ށMT.>GPᵲ-OyI,̰#KͲ,)4nL[ mNUVaDjh"_\k쟸zAt(P66BF~3g=,X ׭MS{}bPe>;{dC: VCHfT厱 ~kqygi)ž:F84_:Aܛa;OS߁j׎2ׅ>mzԗ,,VtGouX[*@:21\tI-EdbPAڦxe[rly{Eb w&@e)mWl8 $l, 5&H?Ku?%>nez3XE{bkG%5wM\L;f@!7YiVNMZTxZJ A$VLbnVR`V V9]?0vZOEmHXɎ ޴ E@LEHeqvcD,׮@_,ce2mєi4,Lx}5zmН.?ző߽,reK1#-);`'*<  a p[òQwZ@R42ߋT'Sk;mtΌ.RN 垹fP8B8p |[_d񦚂8._7Grа/Dɸ[Sc~\8:]dS>hvvS_o[CGj_H=7d@S{ltsg)e(sǀ+r\F35|avdB",$"uvXN'eS4k%lT㺊3 ߨUg*Z*⏁JxrEIx]R,yP@N^%uK1ӦzFԔNh st$,ro25h&EbFi?W1 OPHǡj蝎 `hTh_xw%< ƽfz)an{N? v.4aXvHJ202. 2i&!ă/` ;B} 4b`U%L%eXq^yUZ'\/REa6^aB#/Oo姴 `:?7OZmj6~Ų+t~L)}A4P(a2ϭ(ؖwhV8o ~q ߑ)`'xoe:Uzz/ [Au488/Tmyr aU{];rzdItewWN6}fsh\`hF)x]IaFKɔ`Vl>XU{_ ]\l Uu ,A4Btn/k{oXrDL@3H,4l$ ʹ*n:\#!abgAg:F-%ԥZM=f :;kq:dP2Z%IafWC|Q|$.X' ۶.lv0Wjs?- .΢ެVAJM)([|az Q"{2o ;EeLνXOmmE03'J8B"4 !N7;2oU4 @P9J=pX 8vSCD],#WL-`r!}jJݳu]߄bvs( Y B۲ )J K-Pj#`!H~-S#͞V;~ne=EՋh;GpVxt=8LlUeF8}KTXi/} u69`UQ_<2"-Vk8cr  Eۃ%X:F8ފBJ,:s?P>(bF!2D#,z~.Nm64[e i `d./8을PgKaRW no䀘 lUXU Z>m'z5$p4![z*sye5 '$SVՈfI1}sQ7ӊyB`Rx8,^:"0SɜAw,0ic%wH+4=Ooϯy(>1엻y|bca:ޕ)YOF ӊ1<,q ߬0r[!zqZK{Z'@?_4imZU_o0vY$Fi V"7W*W؃i0mR@zg0?59V0jawPR\V{%A ߯s/;N%Cwg x=^9u9 ?*8|/PtT!JSbK/9R5eսiW}+RZ DEKR!~eHlcڸuWD7"u=C)a7/V(&::`@ROX_ˌƮS«Fpn# P0E ifnx#NSgE!0ZNxQJKzF2nc f콏uG}@u%my ۙ *3['_'dv'I.:0 Vh*(2TU.0Ma2^S!4{&b| .I+JX. h @Z tăI1].L-ҴxT '3]$ϟn\+Ajwfe˫?Xq7*9=Ih1 ڹ]L#O/hԏ Կ55 Qji|`mz* wӝXSPPˌ V\% k^j2 )LԹ96^tA쩿y+9K(\}"W8 <.O|軂,/0ePյ{5.B瞝+3g L2zwlo(X0TH}HV,,&,]oX]mIX~F Cڴ[usI 9,ۿsSp3w8˯r@w]aŌHT<yRw ](-zX s+P=GJ@zIC3[ &~?f`3DW¡,'᭲_٠<HU_Z6=^Zt{}?"2 H|;8qkmhGHN%+xnKϢ} ~YKh (~`sx4ὝrYG=Fd#b薏h8L8m }6UNX' ]xt$Ťױd0#H锝ᬙy3opˍ#ڝvyJ eV=/C87iw'] V)::s(ߨg7.5i/v<ڒ7' I$%X1-= "'bn(uL?B4Pmkf:RL?D^5…P'(g, AJȯIWLGmtT{ b"2،R~o`\EI$EPhf(Vx2S{*0q%YόuY?t iM؀ Z3_0h=310-R9IFPf c:uF rz /~H-^z!toD822zH,ß B[*_IgҪt@%TVYYKFkʘNLhhgqIYJx )LOK1b.bPg_~U4mfmRcEz8j\Z'`I<ܹ7¿W:z#XP$haO.2ɏ_'}u`j)(f>%pC-EoMsg翤LrEs)=iln*yKի䉑zW"Us1C8\e AjniBqѫqaªx++B3k`YmE>;\!=tj~X(B7dP֖9`v)B(1~&ʼn_Cn9!F#d0HicY|0n5]*&PB}+{ٵuN 3FdeJ'rf+[`ׯޫtbFjl": x4X6cZkVÎYg䩡QJnJ;5vύԵY`iQPc(}&eЏUM̦H%>bAי{[;Y/S=-bg$L,̓sDd4%RX#瞿}2\ҋf%}ipʩoK`wѡ̸Id4X?3/(ЛU.KA_ IPQfzϢC 5Mt=y\3!$ȥ&@z2T69{{}(GCxcho6J*N)"Daˍif?;'k=x I/.jua*Q{!xL7!kDzV yׂ3ubc##Qd?l_ |i"74Սs?w#AT`G Ab{'،ԆcwO||5)[b𰊨4^OE1+DPs^2uٱ$׫',A'Sjw'Q_'4-3"(mbP$h1PsGC6DMF߁\A Ҿ9]Ydab¬@EUYbprMzAHWyߌj#GnEDb RbJΙ[x90`gF~?m-[J$\o=@]': e|'lb S ".lU(#:}fݬ ReF:n~(TGX0<,o!%x%t&q7wEwܑGdU,`2W;!KwBnu M i,1R:ʨf $|w #knBc |o/1GVM/ M%Qa?͇>a W]Jhyt2|;IŅ>#DE!UKm$ɣ}]DW$|87ߖNm2q𙣂 G=A`n ̦L ?[>;)oEħ'&iǓ2=!t/Ӑ e֒.]6.j:&4bGI Q81!,8{+yW{ceb9 Iz7S2n4k?"8;xRn' , "huNeYA P3`(kF T/Pd{ R\,UMbAgގ|ut?8 ZPhe@kH'=^5(K'Z`4ua) S4NUS^faj%r$D)I.fqḰG|ij _|MϻYUHG/]KZz£g Eq,|aPޝ,/Lgt VB/zxxd$a3>OX"Z.ߪXZazq:*w!q;.Ca?@F)Ofڬ 9Zԁ?̸y*-@ P9q0Gkt"•4nPۣ8'1+o dPZ)t;U=,IaCfj3Oj 2?N)fO m{˘=!ux꘶Eنwqwݶz2/ VW|P"ZA#Yڟ~=#f3\kՀU"WWKT%#%t%N)Gxg]s Fgv2Bn(hn{.%O g D4´B} hȼ){Y/̔E"$4ɽةF'8ѵP%@}(Νvjf $oޠ!T[yMZG{z &G\W-k Oe,sF^.smYW羚IJ.lzlNϴPΌEh\|Z:">h@XNǟ7h" 3zi, YJ lqqr;}}rXmҀAv0iGdङ9GdrGX5q̀?𮶿ߩ6BGP@[*+18ɠo]]nFymo,Uۼ_=̝6& }gx2ͷaCБ%,ƂG|X*HV.ENjZڎxq[ d؟E+w`y}|N20q|Se@qeqԲ<]bf]$5 !T )O&ԏ?%l[Y<%~-mN<jb;̫IHJ\hHXC8v#fjJ?S[3c:3ى}n6]}rdֆ_:8U;ދ㑻 6==מ81 \«“?9 G0Lʪ"'tRd$b̦no罀[&; 42K>QրFGQg5#ZfA0@EqL.kmX{ zI‘@2;vv4 p,WgnYCJ@ݓ5"I-jHG!LLy.]`,yDwj_HemMy8rkHNn+ y 2-] f,U[>yiU<&L֟^`Ku)1Ù$-$? JR6Swޯ15f-$ PM`[L005l>s@Y# 6j7efЬ޾ϴݶ~)\V+“QՖ,+Gr"$8.Jǖ65l]mz5똲7L'U^h\z$fgJ8Dp2O=Rܡ ^_E`S;sZNa_9"KPSHw-dӖ38Әɔ=ѷnɪǻA`VkLt4n.%n\,,sX6zjGB3ɥ:w!-Ld?f}Nj(;[C/]6%pwlzLMcIfc7`/Ĭe-;Fڑ 0#))-ȝmhإ0狑KoFS1|C6к.lYZȹ#`R Џc/-CSꨋb"2|V&+8#:{ez; ƐSDWF t}@<gpÞP9f$UeK5VezpgS]WįO0;O#(Ei@3>b8 Zsnm/ E#=DZ:ĦȰe_Քxz$*)9oֿ ^DR~Q8x@y3o3HIslul,< ǚ ͩDtŖoXdm|ӳ^5a D(IM!PLa άŪmڠ6s?`9DJN ̅m@ GRIN?syaЇ!g_V4O/pW?\tv @lQx#bTO*Ǵa@o4ǧZU G3 Fak~_Jo٪ Ǯj vP7pƙ;gF2W}8oW*ěoh(MZm4wT p}7tNcNEH۾8PAZ8,13GpdLXa4cu7h=6?dvsK< [R%~:b F6JV'O>R0բݝ'{A}Q|Wjo3ctے/n+ qr~+TޚQhD.9>ww|t7E?ggꋓ#Y=3;(2I~PXVFV|ĩ8Fdekj=GTDY)mX:< iT܍qȯ1~h'#U7QG2}9 wu|`5$5..ƃ*(2ԛL1m]B/NQ,땿xmѣ2H!>V1* 7, 5x-aj233ܾsJKnRWBD%fv44N:Zn 3A3Ż=1"l;=9 ub*\=2_X~^!hH8c>@H;D83 Zi~2 ~&.,-9hk%pA:+?q$Br\I e[G}4|8$hI*&|\fӄiET n5dY%Ilm)iM0ZIYufY- }89i*>9η.1gכ &LZ)&>ICjg#՘AF\%pcJ&?whaLmDo"RU\p,pUD k Q4uPwF3)꺕>x~E5P`!>5Z@4 Գ dVY8c&9k?cmrvXBL=;+Wn?%,:N"9K5VkX%nw[ڔGVYTs8Tz8cjiv;&gdkV,qu',H2?/1?y5"nr \ˣߡv9xkjD"6νm1T ){fv> ` DRcE?8y|3X21''u&V< b݃ "epX&Oe%MGBSB= f¢׸Nq] >dtC8rIrb_"w"x:5g"mebxXّQQ+}+?Dht]Rs$GEڕ%qt.gU'f̲5#7Vƥmr'i?o\lLȇRZ5ERB;3u$ate+3].IoڄXߡ w`[U (" ޏk)s$b '?"MtBjގR:1l=tgՊ9R?f}\b*XIX;{lvXmsßW ȑNC#0UYZH!d O15%pݖ5ݗ 4%9ER0*&ϔ\vOCf=D(/S%@憎?E:ԅCД6P9k*TK񆈧Mr?#| 2j:RRC^oP9@|QoWiiw =\ s}~QwI'1w;=aVVm݊tǃj$VKwi>< 5G'p1x),ES ᣲҢ(qշ/2d[YN f./тޘPi 0E½`F}i)NN"I\̭QNĨ)|2U v"! b)(LF0Km1v2M_l~C5pA$I{ 61D:MWm;2YYE"D3}n$-uHS[sBe <[Hz TPmBR} V9k wN^}?byq\q2jHd` T&XAqj*R,Bn'݈麗Tc6zTSǨI ?WU_Z* +>A Ku{~}zvc6;wo]Nhrx}<ctuv`E)N{I0&)G(gB/nbLXVNZ8)8Vǀ\7N놦a=g3աo&bH"u&̗\7S\"i peGnx#R% 8Z|GN.sԬp5"ͽLpB@?-QDTK©pnpȚ"eCOGnE>:fpqzK2Fm+/THkL5N઎0|\h>6u㻵I0BP2M?3gC´DX~u]FYbzLH!D5sFfei9;0 j'[^.Ϫa׍ؒ *\%QA=5^EWtD`q?POJlQ;x~1x-XB{y}ҍjrɠڶKvKJ;v Vjf'$d@ѿ[j,K0U 34e̘=s% sZ?M-43Yt|W䮕*0va5@Sòz>57& s6? ܢYq4I O'Hz#L/ Ơt# =ޟhG05zQOD6٩t,@Zȫ.g1 .]M*2܎9ߨ*/JwZ63f sL١Mmxc@Zb=.qaO;q魛j8)YQw6⪙ZZ-.DU'IT>ܒ@*ub u=j`7lS& GF oU}rkY.7--l-Φ A Z^_ᤵo%AW fPխCJv)OȽ"%T! 6Yk ?{ MT2ӈ)ygS 7ƣm.::SNgrnYɽH9'"Ο^gZ49Rֵ\ʂpf߹_܈a PV:I8ʈ%jVa%A%!2잢H˓îapv4̆{fzVK%8RtQ_S$qJj6Ӽ>d"(6u⸛Uߜ@%c@5XRb[(ٮyfWds[sf+BA ߀ ҳ-%# Y*=B1HE6U^49KpffVXUdW I{@nc Iiz#Oq;NJqF\VR]C<H3Q6A)Z] MtӍ(U TOU>eg O /Q5NNs1ﮩ63KYSE}pchV#HF ,̕vBGŸG(ODdOkhn u̘NDz~i2Yq@gd:QjN+ru}xG7azQ~@m.~TDZVЗa9B"$Z\`!Vf[DgbS;°4vs90YWƻe[__{=#?`hw:> /RG4~b&"ʒ'Puh2p9%i?L6&GKdIUM%p rHgr%/ f袰7d%Zs*ϫQjayay$rmJ6h8TF-I! ǽ X젫r$iDғke] tk=T.@8D^c*).8+r6Jǧ#TrጕLeh_5:@aLl}@ԧA25 đ!+"q6Az4xjFAlwYs#߹9LkQ/\] w1ѻ8j0Ibċf6 p鄱ڿ` 8ѬF`j&ހNV>$o.u`¹=3`5emm#pTnph,l_mr2G ǩx7P+\&'U!~S)6N+LsBdeD:%( wF5LruɁ`%puc[[|}}]D-︣gJX@}^H$8WSS5)9FVUAK]gKIƮWIs"v\,MPe H}/LV2bZvֲhÏfy[4@f$OZsP Sjq^"ʏuV;@6Ro4 {:t_GinlS2'Do j`{uxyV Paw쯛@(k"5dN7( 9C<ղxvMˣP7ěRިL+m*L@\'!tm=+No/vĵ`x[y_9*Qù} B110v]EP9[)cF 1<)Ǿ u2~F_GjmOuVB%IX@^ʧ=:=;ӺζB~_6"y@~ߓ->5\JsJȬ|m[pEs4e = fEZr'SiZ;&B?L*3^C0wgD3ZẄC:XSM~ mqNfk /?llq$~\BtcgwFnzˬؓU1Vj8p8d%_1Ȳ2-`t#&e`ڔY3E]w p-AqkE CӺڡf45yc DF{2MG\Ñf0v+"4y> |7H:О4h AEfan<%d? s9`9P֛*lU ZʁJ;*CX侖iEpGyyAi>{KW6̒(Lضfhv?&FǞ Ӆ_&ٮ!eX}Tհ<uYV歝[Q(oxT9[iĸJ)? γb51X.e^BQ`ogAa5Na_"K(4{^ܲ`U7JFT1 7/Jhk@0Ԇᘷ+7}oyRT+qW; [Kݎ%h[3鬥BQBo{ >Ag7G❹9CH&#u/K浴9缋90.oe40PBDw5XU$˙Bx}e/?z25fu]Ͼ.aPF娑ь(akD}zѴ TRJ yʁmXAP#>UvfVQ qIP8ŏ56Іx 2h"~0dh$T8x:N];z3WYco6\DE;`}\vF#O.saA(hJIFSv:&l:kUIe ^ S*+D\^*;gxϨ!,GشR|uMt$a`F8kF+ kDD^@*C3yLA; L&+5*SKiLtE))?,+sGkLjԪ'=μcFlUXprl( $\: x x"5!ўb);-Rj4}.I޳Wv a$qb ?̜a].Y%߻ݼi Y7ᤒ)B %,]^%RUlVG<zw!ߨ \uG 69 Eldy(t8 @@>5J銹~?CFJv6wɻ&%} ;sPiDd\PnT K%{V7kJ 6\ ,2qwJS 瑈#ʹjOExh͠- v8s )(2ևȽZHG}DF_H ZL+{]J RPv#NLMנ~OFA/ ?5w}0ĩC؂ '\u9r.F(+;J*NDHh.(mUq#D|fXwV-q#8!AyFD` tB~ϝPQE6Ѣo;O[e y3sl}IiK☮5s!4w 08a7ݚ=Q))yZjP3l#XX6~ ,΄\7 E>_Cy=ɨaNf.G[,f-OK5| 5tFR͂Ů~>?ЬTDzhӭщHZt_DcF2lCa;?|}3yⷌ+ \{aL8!~Wv[k}jmDD=N6 {G2$31\3ƶ?V$e5_R9_ߡ2*' =b&TWe@dw-i8*V8#*]<^J&Ax,}6ֿhje~VJ$y:ݐCx Gѳ>вhWuߵrQd8ۗOV..H/EPM7zP)-,;Ȅ]ip(7ZFOa#S)erL } Dt3:u[a@qez@b‘k>I@DBr^]SHgxW/{=,C7[4M 4\`7kϪ8 E]qp(Yms|K{pI9w ZM*872QI߀ N0rZ6>4k zH IʓW : y63RM//z"? I)V1P^3磨5~Z}65>||e=/jv2%5_:`.]؍mQje0~v,6IFPf1I2i#vLߍ{{2*Sl-[QEbp\'Tt-vҏ18tME$/!W%pVf[xEY'Iqp^S#:gܞ>Oy8+͑(+Gw<4+h!Κ4=Js_OaU; "]Jq iJ(lhb`p_!18%, 0 \sf?H'~7JI-+){mh#t_ѕk1# 3U^[ ,MK;"uœ;&Zg:ʋM{ B}0 luR)n'$ fœF#77I#õdճo@K*B҂MP Զ++i{В[>.}%C\Uslp.RKzK)/н`)⪾'2C{ֵq!Hz0Hesb t=ef-Jlӱs6l}+F`یFE"t4}iv#x]$" s´,оnԳ=a)h]Glգ~4x {c+d8苆qŽCs T grE$Fm0zsRG_=Uj<2OCE |7!i,qxd.-PSH+&zjz)|# NFڍ8uf@S3huCb]`,]<8Tӗftf*Iހ%\e2H=N|l2@ƴM}(܁?%X*TtraU{MOi=x5hm(Ca>^t;@$;#?҆aܢnhax;wG?aYmn7^//]Fn YR.`ʽ}9Tw bagmq1y3#$Hku8-Iu,Bmg_+a /#a~Ĭ+.EANuIOph9U+AD!NUƻ~ $yy}R"\%ʬU̡ "m!qz V3eìD{=f˃w͍F;-9v.Ԯ]b5^4v3cuŰg_f2Ҵ ASZZ^z:0!rN2ꂹ+'moe 6oH+58ĽM*_,m]HҢvx̎W'u)g? VPW X5OJ6{5=/.a O0%>۪70+ a,vwBeR*3GpI0tllpŃgH5;9 Ey _#xY+X>ΘJ|$&TXPMǐe+|2mz$n-fsOW`ՀE˓U|s^ܮhDp[1@ N%Ž ӣe];aCG2,7Ov93&0zf%yqP,D6IГr2Y0/q)U!RŨdQG)#ڿ@#y M ޝuid9p*YÖtI2 ҃Tq12dA!Es$vm6r5IqX 4yIȇuD (ZR.(CD4)VP|hg]g Q,G*k)5G4Lnc*3̙2#9e]}/,蕯FٌEvRh; !Ptݨu" !-g[#5%X~}_IaE$[h2lmKquom6dAÌCd;-٫mмXq lцbs2w/ λꮰҨe_RKk_.FHAx5㛴=&0{kyEGnU Y2gdDYXHh*S lK栫Zک.K5B9bUf4INr}3$No0ȯomOM4%lz\[In$#ÜzwdQN?J'OU/4( Nim }GQUXc%2ޕ"Wq͋>wv mon#SqdcE`1Y⾤^ttk;0drsiFTN$voĪ9F9[0ӆ 2M^F2cd e3P4![bHb T9Lk3|:FɃxt~¨i;EUc"Az:gAs*7dHs|&˯N@"yx2'<_e TA)o͐UbeGfK@(5ҿ@@$ǩшCRxGQ$;)J# iZyh%%V`f1y.1薟d BQ hR]ү28ZM4eF8·NRsTiE%R"[*N>h6,9=veLJL2>vv4$DcR('nMjO&=US֥U]+dQ|W|-M.qj~)䣴IK/Y94kRЃٳ,QFU玭qL-e0°D[ +7>KjΈ"G)9DANq_v 1xUm99mjQHt$ȁ1$`T?t`٠n Wp)?0ABI|K%;k 81-"2邘ʪI 9*{"X,-J Jȷ2PjKqI@`UI3@*'//z=TEc?{FXvfkDrE++vh"ח) BdiJ΋?70w!""ǚ FZ0iwS*u ՄE6de̕s+L5+?HWMkJ2O;@oӱD|i9((lGg~>gV-ءzXLXz/tw_U8І=Jk,H۳E SA&'H+̕P[YwU9J)@/f0[k(03'?žqw$+I ZDZLz*Ԯ7b<P}F a_FqѹLsϸv8%4}m7OQݙyAi4Z9صD I^f^$N\%:1?M].]*C|W0XT)KaRE ;1aG>8*\qk6b9g/XQ.p7soؔH) ugLd\^یyAΩm82a/gaZgV{ w^2r:vtG)BJs?g!bTVˢ=82K< ^ [Ოʉ"* ]P,k#}ק W'A!P25|/`œ ) ڵ[?u&UDUe"Ķ+JJODXVl :9MQzkF>ɀP!Dzb. E|@ӅpԂbTrQX?/t%,LJDY=CBeD:L&%2HQѦԃA;IiBNSW K*P rHKۻdB1J"QÌ{s\۞]]vCx^o};q͐pMwE- C#B[SO~.OIOMwdm)_I `b{եG-?շ, |WNQ3l|lh QtvM8Yfxfdp__NXk-R 7qLS=Ou@a=^ jϹ\Z7bb(AhھB_PT[pO?7 wY.G?[=>xE_ {D!'tO/@ s+J3D[@& 4"eRHh%c4IQQPԾT U"{K9 UM?~n饎JAy Q͔  iVOq3 nsUW^{7'PE'w%Mr|qˈ6&Rf`)AXn6$֒UU^ O*ړXTwjogojeDO֗Pԝ 2ĪcM?X(aN54>/v\ l{OCer##Q? n; n'7͹XN\L 10%Qu Yӷ-QJs d8WD*wك uc%Z~Δ9vM%BhYvJQ'<7YTʞUnz!E,IPV'4\K~8Ѿa[=1BOx̳ KH%cƠkeqީ;T J}|}+c|:9SWfKT 5-OM&09s,Id񵂘MN[c5$)o]܊Z/d\VK;^[4; /Lo[{*8H-)5-gR(Ms}bKt uR#&*P>ީ]vWH u9t67}$E$mI_,W-Ul]ǜJk N:Q{4Zp4L<:sD&@%Cs1|!\^4Aӟ_j`.f>cho[c B_ J_a+p҅8LT]ʏj s A=VxOMǟp3&J/,xL{>4%MCaUŵtqp%7,ͦ bFG H*fjp]1"@5u^$!jO[:7( T&qXDp|Gv(D0Ob\v78\ո@+Xa1iEH ^B;I~Y%UMot|l.[1eCCy䞠?VQSB~p.c wm2YQ&;D@{ aukAm6JG! ͡亳jeB(2Xfїa#8g&꩕s@(r@pr6ףDtckRN=W"A/4n"nf1nMZ>J{KnQ$ś31sw14@$]#qCS=3K >.Ѝq[Ýge̵b4DD^a MfơZ:a*׋yҰPCج7a:?𼻂j'jeq&adEH䰄VxɭrɡI-<-3I}ʠ5<("K<_"AEU@vp9s|/_ו{=C)`cw2>vCL-?OψLB,W?br7{kh}_AGd"o}ie_jfŘlG0kv;}\'莭j&1xǑ~)Nіo΋QGyu+~p2 mU0|(qjٷ)ɤ1~ { MշNXɇf]l cص`ʐp-d2G;If7>}A02{.Τ@p 0 l1ϟ;fV3d!4s*xCa0H%'H(u5ܱ1SgB.M-"ņLfyh g>5[}i(Ć X<+:;AC?Q~.Bۀ )8OQZ!_B~" GJXSOLMl(ʼnxp-pS7Vh/j:[cbUw@r_1c&閉zS=Ixfݚi#,}^D7 H BV0eƌJc\%SlݭP{b,)Wڟ`0&3 D3?F,o >TpvgsPnt4ūhh- i̪JKƓNuE%-|xPdG:7Zq >^m"?[^D&խisb@_6qvtZRQTJCi+`KLOs Lzo吴F9JW_* [aTzBdУ3v8}]H]})0YSՓ\Qm0|Ť^m# ZüC~)R^8f}~N4 V|Fh3Rbb!5x~Oh0I̦S58b]przࣾ(Ą' x#Is6%6%Z'L~mpUvFR&g>"ޥ"a fǟ7*.G߽VjD "Q]lm~&쥄QfB9hwi B;rIrkHAP\hA\3F~ Cmm%*rm({aՃVQ@l1`߃p}䝳F5n# (%D+xliQc.$_L1h"MXgxw?JJ!S-s ~汤֔{C`e=2cu0n^P9)ܷ߷VNx(ԤV=;[+ װ\Dl"7`łp^ap1KR= $#97QpkE "qU0fQLHK}1?v}ڷmܟ,-"s'.O෤e?wZn'Dg .=J, 5VE>^Y& gSj*; 0G/|om34Vfu3hvn::UԎLs'iKu1E[w 9xR/H vz[ l͸KjX>xǭ0m#Z-LxxWCQ캊v@1{ fyS֗{]e'NKWYoptOg/I`Uq Gǟ7f?#;濝/3{`؄qnK⛵D==(B|/ʡ 2%,:`e@^:]? >ִ~Fieplm?*7jAȒST}[HUJn+]vaf\˯IOڔszP3˱IQb17`Ky|,sIΖh_x1ҟa_QnN8>ceM^=e8EAZGYoxDz7Vԧ}X-؜Iu\!kUC _e*>E1Џ[#Tyo3nRn!DoZUIA{i~RSq!sp(pgom"`j Yp&W X!P%S3lRN;m|&& B 3X& c[*nL.RKs\(zBlr.m9>4}޲Dz*0V iFa)]oorχkbKVܕf+"{}oDZ瑊-E% (ux<*Ls0.8-^ {=̃2G 묔 $ݚ<ڨ03o'`%cm~AíUU"mzwPL8DYA&أ3xo)w4YG H itQr\wΛqPDITL*F*i5Knn>IڞR@߄|H;Dн9k/3H8epN0c sf>Uc;X 94Fh|N9WJG %?Rfi֟tOꦘKŔ`J6[UqNTUܸ@B5BTT#wң@|VX^(;֣c|wXs]U58cKD |@: .h!F!< {. #o$I<-gW2FB6ĶVtny{ѐHجj.\  L_n/ @PBsu]a_m$ e^.rG2摗]dEUS"5aUsjegjX)n}!~Ir_D.׉6ͣw#|R1/XJ.kvQRk5NuL,<8đ?_>YK T^BBqzà6JOM7lݔu:8A$n߳7E`3UF.I;Ugj&X{25{ƦnD0:A~-7ʡk* z919ST;Y旋joڌB0?VZʃnK6獚ʠ>?`Zfi92" D:ap_@s*V#rμH2 kh/<\y7I"vfȢ},凁#ո>4WRy b )!Pdmq:(1gnZA|#.̞ (:\NS=!RjWZB}@ XM؁WI6G I&K킦'(#25>ˆ-۸ެIa=m+30ʁ7:Op=*N[a]S5$]u A!^=aBzǹTMs`p0EŐr'WwnD/ 6AG=牲,Nb9O3'ouVk+PlwHa&d][s<(SEoTOenzqe(Ȉ/޴v EN$eP̻Z tzAv<^@l$SOC 7iv3^!V,>BlYCqϜ yԲRuRfJaTJ4IJ¶5ki&(ڧS ژ]E:O?oSB߸ЎR-3eW@ nP/JBz4%Y'DC cBK午c<<九sP~Q~j0^jjäҲ4"kQ4=`@<,$D=VTlԅ<-,"WNry ` lQ㢿-mkc\_-}6%7'MI ipcr]un(YΗAl"C o0׽{[|?Qqͬ} PkGF64儋A@:;G6%n)JNNH?"k3Zf!-7td+r=OoG<(~iDr^_t(ǛpdfdR~:/-z*8e5*tiA%,"0@o|6\uJM)$ȵ{y%>+/b|i7ie@nE8k3ޏet)@Fu vKY X|Xܫ + P 3IqMtT㌐XqS( % Xr9v,79Qz謬xT^%cL:Lg\1G^\YY2&qߠ`ijF޿Χ k/omʶJ+zZfsGUO0qě⫖)w\ ~_<MXDReD̄$}DϦ97VW6ؚeX`֨AI^:YlU 5vp-JP$;8un'v TCx@OZܑmD9|3/gm`OSMR?ܪjw>1 ςO>H44e6qT8 oޢk41<=߶e&OH1 2,؅D ޵ƉGlg\1Gq129&V6%LaBdvmIjL(?ұ̯MuY覷ER'//ͫIȖ5h{ԉ#"eN=G1e\b0S_2Mv3P/ڟPrs^JdKYϒM#D](n"#r3bVsLIxoBs*1AMڑspqež(9LUh$VJMMs9p1O\)FR x&\$@:JFnڭh?:[UPpG|Cy^_Sm~~g(}&%Bl8%T%ݫA-d38fKMt^I;YdC*.]`KN(xP^0F_s~U؛Vr S #~$1be[R _ixyU禲Cqúl SenW0& F+idrow6XW͡A-}q*Kz#ϴDQ3Ie'~߳>*%Je9aށ1}/mU)'βvXOA>. ]Z.oj&Ϩ1*l Ґ@|G:KY-()i[l2n?~<~np5%kbNUhuXi;mh\+f$r Dpeu,cTM|q9ox@bэЄ[_? аub#(/_ZtR3 DN̉,XuJY|HNOL; @CL V3o&gs\'f3MQyg~^j 1Syx>3nbڱ) <#.:6*/! D.\ Ts1ľ nAP򿳚u[.?BUsatWC5ԉjGs5R2ŗ:pٟZ <7/<E]^޼or!r݊.7Nn}'Q='?J4ݙ(yad5p2 2n" py$¹'Y7YO7,پ"0Q`lZp3rT+ݺXm58YF~"MײӲj׹h^+qc!+|T1 ȇ^꽷!> &<ȄFtwo2Yq<q$LAD+.t ,$݌AT`\}:[kfszAm]aiPtfċV#"şaIzJJGQ @]c> B_ݺ9A'.Mu9rq,s-pH jÄ%ug@dw^,*%/9`4m٢KiiANW gG/geq6V୴@q3WofhaM,fۧg c-"p5_W'ung핽wef eά?wƃ< J٪-De[R`MR#EKǺa@4gy17YiH!9l'`*) /ɈF%x 0ߛeZ҂ *ΎF9 NAZĘn)S=FqvD.8HPrݍƩ`Sq4Z\?.@ /yUUQ%}J !i %K@[4`z 1KNQ0þ \6ïH*uE%^V"+_xf{mw>u&^3V gK@F/\ SGq?2%lsg)l4* j@.KHJ!,HGrCe;s2~g8%АkP_m^=<:OV&:YDjdkcY<8xL?x_m"i79D<^,3W{G#@O@Jq A>~tY=\;ո%Ӱ T/d~MggښH Ay+g 3,,^C6؛52(j+'cYϠAʞ' ٷ| $'/)) :V= n mӤp*/0'A0"YS6~E27n,ALfՔ?ʼnߤwٲfOJ4LyOx@{qX?mtUЩe)d:oh3:4\Gd0{>Q{U8ܥzɵ d&7v*Huh{se-b8?⵪lԷQHUB˫tú>j 6Iˆ6GXSvD&dʶL!ihؔ Ҙ >M;t-'#,[Pa:c~̇"X$\W(j|B6L8fw͎MVÍ>EyWd l2nnY~BrJfm3􅹂E27`,o. \vs}_KͪdEvǺV7mʼnJ :7BhUìt#1Ҷ\#+U?X 8ż:#I\*,MW߀koKv\nʁ?t,fUY Tz``G)$xIrpƟ"&1juɮ.0}܏H.=Mq$!.lk4Yk3Ld<^叙@v%rWB|K0ZaQRn? %{1uHD$dYL vt"ObAL g̢%i֗`1>I\A T43tٽRԱ>q 9e[5Qª]~e fʨ=i Nn&:7Й#|+Y2H)'i.߿$e5gB %ެ1~šIHHݔa&R ^I0,YPxCK&ZP.1 ۨc/@ >mtx7,Tag˙a~';lފ57@ g6n#sp9PlM o]f7HUG^IVn,\p'_8FmE)j ڿb qu\X#CܞK) >~YKYF:8lб M!D_ Ro`…lLIV+%B,hHmPm5\cz3^>g_>t.w3\T%n]Z"}6AR٭]؝UM0:Ae0eJA*<j1 e@kSU]{ ڎƦTɔOT뀔<9i.h4cE{{:%/=.y&XX).]K_VE9Sl9!m(}| 0kM;d5T _ èfIʜxd9M.!hP/u}THVQё1rHIWʞ 15}$_aG7 C06eԭd%Rh[axyu-~"ΝRt }FJ#vZ ˰7M>/4U6 #:CT9AYZI3*M{S߂V6\Ή3pVxU[}%^2lb!D a}l|=?D'sЉ]kZEg!]Vb{Yԯ 5rÝo9 n + !1';J+Xvin ;[?uNvķL=dd-ുc)F n,K h#1ᯟaXRK=Q5^32T0f:7rbʊ F|em6~DG^GF\.s¨am17]DqNCT߆-S^CS8Ca,`E)IrGULien">1^U+Ϳ!o *ZǮ@@F0%rkM,"py`a_޷$c77m۩^B{veְ4m3vrjIr?g[F=UQJ]J/bJ7w#$t}8J(Du'cd KջT? кii z -q 1E xSBמ } Mk5:#WL"?1y^Fp./470o9!(yE3gorc􅎬APn b]E>@ Axf0IE8fOPj|x +P\ FFkWb^Jt53]*tt#aYzÄ΅y t )yqJv Ĺ1àkŒj3-J91gBZJnK+X|ߍ``ZGI7d1*n4HG磯%_;x\$sKe.;#^k-`!_ 7ĩ,0Zo;纨!p Ehb~ ygWrҀ|<7a$pfʕ?,.c?5/>pmD{:CXeͫTDjG>GbXD^ã4IcL++o7ef5#4.%!Ab"oM[ $(u `k)aqsڏW&>{_X4Px2W>[J6 h -%sAvo%m'd3E@\:Hjwek\nHMi><-p!j`%+MGzȦ/4X[le˕W~eP|2d هIRaΰ`njG˜DnSmOX=N; ZjBlnjh7x_쀓 msSzec9_%^HBw8qEJu)hm'Ҟa_a,lB d K-;~D4R]n gCb-Ap# l]BFܿP复RZ0617[&` =n)Xd|:'XƉ k~eR)r:#>m}!㲵-R.LVQe$)Wcz˷?y=lΧ.ђLBt@ bV#]˗ 9SzmS{ Y4L-S*Շi~K=;aNg)kzKD^vbHE䇔ü9d)/̪| 2iҏ UQhq5|O27rdC@ tGŵ\+9 00MpE.*GZ%ri켉z_h^E%n7՗W(1 :sT--c*}NѪ}L.!aM 4 ?Hs5Գi }!󄱒 ^ 1,GYXۼ'9ϸ=0V,*f3r(WK-@L;`gg?#[ؠs%y 6Wѓm")6ĂP6i 6\Ym Ifĥ'pp9\D)C=5]zKYT=%Dz!F<kD6 ]MGv+#GmŲ5Z ״"0ĢC;d|FaExˋ29[mքQkX.-|-b4}@QK7H꿗O`dJhcz|% r>! )ΠH .6u8ȭ_܌[$:B6{|)L'a{AMUscMQ˥sVҵpsi7 Vؠ2EƪYт|@s;加pv}Fplj| $zA*s>y4ZvqJ1ߌQ@4 (DHbbW*xɳiᵛX;"HGV/[R=bD~L7[6v5l . Pقeؑ6iCu}c?@wxĐtǒvG$"ǐ^wX`BiS֢GRx6DgvK]IMytew*PXUm}':A5/6S(aΔM"}t)d 2CBӛsԦ&՞;bc IQ'2GO7dg5.Äۦ!Qr2O]Xf,@/on} p-{ju=S0YtO&kwσ2dGJ=0MzI4wD8|+_ImOfIНp=L_4w>yMYBkVV+OUFEf/&Ť}gNFyTVtю*6[`e KD~ܮfKlڂi;Z%VoOCye-IW]ͤ9dYpJ9$pt;:+ŌΨ癲wS|Ca҃V_uu3 O~F p8ͦBJsJQLR$#ᰊXњꃑQRCg@ MsaHҕ[[V/Dbyj98hR1q@ E%3m{tXO Y89ux9v:$J78TUm,6-zlQ⑴`bƉԼ7S Bs6Z*Y AA+ Q#?CC"+%rǦ&s+ct&hut0Bqd`G(*V!ӴQ3kJ0Lh%QXb[Ġ'R-s(Ss2<`x0)dbDSF[Uia8m jrIe96pamuL,,x :ҢfhaF%}]͕Cj1w{+q<Œ-P%U . m@ua0s ?eC}{#.hxET }5# hWiH-_z-CИ$dE4м Q4o (,kP+n@us֩8ϸS$7<7A^>3uPرIJ?ՉRbAE?RQET(-or2xl4"ҫqbΫ沫2U^FL%04<Ґ0_rJ̴(hRuD+X<#">D55[])K!a&eSLuh鍚Q5)n9grk@bOL_s+zUN̥)*xg&9ʁd.9HP۶t0*X5',?쐈Xࡰҥ=bρF?B|ݥxO(7m$}됂dh'Uw=`-멓L5ZY̔ ^M<{]Uc;>ɍy3[ dB|oŻT6 `֎ َ钜X𠓔&oz.G-cCRj}oo=⽹l0c-<߭6JJ8jzegYnf~`{r nK2b&RidS:̜&AP#}>5,gbGYoH4&o2ѥ@(?ݐ bt|'w3pV1*"v8a*JbL+MJ=6HAx 7Ќ/p%Njg(\)ȡiCs("R{FCY}]{cq9am4H—J-8S `.AS06bBFRh%.O OUiQ:TE' Y`w:Np ((O]()OhZ G %I6ʁ6A{D{Lt$kSXT~aMj'0ݰ*@롔D$M[3 $\ QI&']߀~ݭqAk$vi(hp]ڣKI#bЬj=L/Diʝ$dhp`2oN3Tï|Hjq}gI@Bo0 \P?dIUH2xsdj/DV_(t50$ &F VޓSZkP{{b@1P7m< 9{ Sƺ\=2$uw k?,ƅ8,E|%N{u8W#Bmir͹V˯:&pÂ>_iw 8\4+ !xPKRf$$e0HU: 8l`l.L},! R5]~F9v# u7DC(cA/cYUr%LHh@< I*DW ER'\w,Q3U&Le]q3YLݧ &_JV@=/駰t0#v,C/YE@]Sj*:pIlϵ:/0/'I`p{hD;OiV:5 /c &WQ(:k('*z< Oz>0sRm5ov8L{j, MouVzȗcC!gcpzǬ]>7^ !/QŌG_&$g/ د ́ȹK|*s㞸<+I!j dRd< [tq>rfc-UZ`l\%$66oԍ8R7)<=G7\&`?öpOh^Ӫ M.^Tm"r)/Wz"C]ۃK_ 1?nQ^5L=#̺vXkOi0~Ͳ-%2PUZcIq&-1&Cl4sh pL= |tEkz8p#<Sb'}6;KsGSDYc{2/ń\J̇:)\^/#rU2yg)uX5x:w}`L<<㛯S̤\x3v`͟=t׆[fوR^#yP9>ݼk9ɤWrx ETJm)_ lH͂I4|-Zn/@pEakzg#f)3X?B"o/ y64.VlQ0hyݨ2`A32eh}nY QqYlOG@L)}s?eB>X\9m$jkZq/TQ# ^Op;>n&ї'-i'g}`Ѽn@ =6@A)3}ޏ[M(KVrW}~s'+^ʡ/o\kO P>I$ Y@.tǔp|2} 0NĜȵԇ)?IxȂ =>1xm=J .9b@fᄼ=Ug]UK/2  20 n/6;هDQC6z3dj{}YWU pKtzae`y73 n`5+k9x~Ad9r: g.]iĜ% 0A6ǚ) (m+-|K\7eۈS&Q2aO ~ƧטJAkB~M[;XΊ. F\ ^@0CM'_l]V0F5 3Lsc:#mA䨻#jT_WYƘ ~U,#'$˝xryM\,c~R+D%`|H~`B͵>NEvyĦXD@$ySztcM}}(|}1dX w;g,+%,؞<CL~+=7E]v۞/@aN;s g&@T';fy}~#NnU(e`W?H$ mj><743R Qrka0 ryyQ BrX si+4N#D<k16L1M٧GP冰I^27l*Q7 Lcm4~ +sVV 1ο5lHQfAn 7aN~iw`K{7UT4=$lUcU:|-t?E'J-0KI= gp vi ݄'f3h\m:T'8ǸWyjmj k "v@ $|la_u^#LF۽}ekËn,~';C̬ 9%:YIدl%p 2 #i( !ﵢ ʞq Ӕ6/:W,Э`P.m\}}}z1L Xjrιy70 6f;[t7 y(I?:B|c|DM8Wƹf6:>S$h8~"%)lc CX9ZOeB .Ȑ\!zf1wP:s[4ؐ3OF #;E&Ia0|Q2݇XJ|S9ff~BrB ms|&Z~ć-g[=;+W|~=ڋD\R@K0 7 uO VT=ADa}'N/Z㇐|ƈS851}XIET-( -UB@4*-aiZcDud{ Ä͸Ux0Ra(Z HCxExc'F^H"?[*( 'sNP q1o\KT.ӄĀNnZ Hx{.`^dM' l" D7 2)Y::w2A? p,ڎ.DRC蟟I9:=VQDya,s//ɱ$u= )^>vu#:0;e7l2{1;Tpj&8Yo N^(\+*)QkI,1{id_@PTj(~.@90@Ε9VgoGUr\Q^,&ԟOe%=3|U=-mX&Pe|&ovpqRˆ)FPg%@PQ>- bZ6g?- '%hZvTZ 77ft~>f!+&Ŀ2TDꡦᑞgww|5E~2z.I5(w l"AqEz▗i. 3G*MB7[I׉#4rҶIܳSaͰ#,>Lݒ9e||,IFDcz笶v#`͌8D[氚8SF_I,feDC%xCtJӏvZUXsHIS2Wb+3Vu^ ,ZUNA(ۿjqQNtL&JL$b캕m6tLx=FcT.{G6:|\|?8>eH |Zhbf4#: |=6Z+udy_ DE/yxF +X@8WEüC=nZHlEg* VȈ\(Mtqfw6?Ds0$hHt ^XեDY̢AMx n2)% ZkJWfKJFNʊ{ǽD=U<9mGMVe^ v g(~HPM|ډįFm5YKv+(w*1:Vn/F?F|[)m+u7@K\dm¿i>/$':]v>-8nJ+=0 1/OwQD$a8vØ*L_eco{nWp"tϿyyf#3g{1{<0xm-+~5EA<6]OVH5Zyc8H~ٜ(O' hm?/-͸>dٮ90^Z˟.-P0ϙ#wY ^,xr;u%[58_Sh:r QOH&h7f1R":0㋟U(T5LBG!N%ĕ}}5}c"% r9oA^i RGp^1!M]>o~ȅ?dodEq"eْ'\4Ӌv^u$)6<bo^su%T:g1 TЄʈ GbSmg5"w,^-xQܒJ,R J+߰4VܔC*O4Lsor۩0Mwxhc pXo~cmt,v&&C Fr=IWv#A.J e >P$qZ#{`F\P +W)*%zx"ex_ߴy 5IK n/9VĔV"y($:Q#x"I*è:`ovJI\"gҥ/WUWn0ґx@QoGVbL3Q}+]J$Z#t|DjdѶU9t6=$RMs? J C<^nv`h]feuLm2#ɶ9C;Oah$CӀ%]nt: =Kk`"{0CtܚE9{P0 P#;TtF'7x|.]M}DJȄ DڊGӏhK‰ uu}7! G,GOW w&pj]APPi`^,+$aW) Rٕh(crK+;Gd R[*B#Ey؃ ŷ)!d@Z ?钩uvfDnH]\E5!8ɘ6M.*/~"[Љ9\Ơ%1bq6X$QQOZƯ?о͎7\] y4eMťRc0Eؔ.i0nyFm=q9uګ6'@Uaީ=3YI[>>_͕:]pȖ&D:RGnB6 ٻe 5O[(,AvSX rC /̆} kh,0vA B̂X:oM+ z\fg&$iEXZ3EwIue`0.r '6lJGWbln:DoD.ȍP5k5qESg<=q4x }[uԖB."ePS73tCGp0uIbi~k՛'u#kj(MI<(J ?8Z9,ɧSD_70OZ1/iQB:SCKW߯")ẄkY=9M>ِQ '( .d.`ۻUql4>gqrJ)7BǯFfvSn>u]g9Hty|vP f)1;Lle_'Jn]e${ h]ς20{&fLXQ$2%=vaM YY(3 A& <' [u3Y~K?6nqYI)c$mTMv¶#Ҵ}>,ǭ-I]-w91JOuC7paeG/[rL -W- ʢ`S1uWD,2gKAi! P6:<i`SIⅬ06n7CuF|E6zӝ{nV[2|I7ڇ ek{.Gё2 zK!͙x&]Uc%AH,)&X[xq@ǝ?,EY7o"$b.M2yp 7Q-&]A!0vϹ VS ц>VmA6Yyhi8{hYndY;qά=W3t0vgI!`숀طcL"-QRclT)6Vv9(XWMDJˇ`~ḷyKkoRuhӡ[f%6c/'@V+e8ܿZHo:C]?T՘J~3:sɹ;ܯY$>{"j,32gؐy-znD) ($"9yd§YtiZ߹t>2ƛ~sTvv78C"ܪՕU7!֚ސX|ݒ]3ʓ_itMO&x6a},5zqSSt ndDd]&Ha(m 4bsVG8?&3O9\{{uDi(Vfb}L/*[ͳ#x8x sTI`%PIۛ|W%뒋&Q]w+U5qVyJn/nS:Tn&,ˤ%6nlu7`}lA_ 5@h$c1bxxtln3G.1X*7'V-jO?A)Wu)[>>dMp🅤*[9V![xgӰ- H?(B6wYKGYY^3 xxd 'Ez#R}<OvxAd1Ly^OGvJtA$sԚs=SF rIlzgH?(+מ70b";b 3&g3r$t+c>o>.O!r$3\XX_OzGw'1 (U*q2H=`¨G-GYX_6@Nߌ>MbQGj>ӆkp 5mm~Sj6 @;+A+~^kz&r`>wbMgCHW:CZB~ [1$nߠw`݉Npz}YȔE0Aª=e?+ytoV*D@DK%!ا_\l\JSBCoZkjBu{[4B-7Tx`Kew'y C {+M6oQ;[-ڿyoG^!~.FMS`6 &fK0hU&[k|b?~}6s ! KI֚d|nמrC]{Z2{Rj?4®qk4T: ^Y4n&Z(e^?ڭG0^M bM~ϙDdAp?'zBY})c6|VR0 dWLތl8[M\E @hRl/ј^|g2EXԘuvi:5Ӊ;NXԞyuN7ȧ&A1<3:E].܈ǒk]Ldˑc䵔|z ִcn4*ȴ$VXt@@Yz 65;hl"?t+Q? +vr(ץ{WK=&_i7T2v|ڥy<$|v^K|9H2y6jF6Qn{h'Sˡ Oy_P`i  hvY}[Dl)6 G⼸ρ }cL> Muywƫ[8nQ}JoUFu4I]jzQo㯮|n&"# nwCۤL:IF5ot1YJDPBR3I(IW R&Tqʖ5qB2(n7Ig0nrt!2nh|gNҖy=ݨk5[UEq9Sܕ3 JOt2@\AHF+qw('!&bԪ鉡tD4No6ՙ9Qs%^J"q}oC^^p_zr‰gb!b ǙWBjZ\F"FDT P2mȤ B:6ϕ_o8KVg,x8e0cR !띩5߷!c q_Z:fnuR\~ =w?YWUwPi1z~G')W;-ӴQщu%H ;cֶ|,xW)Stт9 %oBX (R/g*W~r5 ^E  dݫdgRYW?".1'VI:tə-ɚBjt%XTј,im ?eɇlSbݒhm2.S[ :i=)H'6hE z>, ۵ 9-T|p\$GG2^z3n M\)F3樓+M8~jQVF?3_@B:*;l"w^Pk/[!,;usrQ7=>DWse\MLj=vg1gw5Qpyo1k ȷ fi$iQg=J}Dt`Ys$:"Y fp hŜ9A EsX74^S S6NZcT 6F֞$ 2 Dx*$ՄDhl.9Dq%I,^!p)+SR_CTg?7y1C** x+>p`PbN HxJyTBoH"I땮[7#̐P22x_+"Scp}:#sXTl;&bWx䗳KF+_)$28URۣ`c?/- 4ڈU|O+ZS Wp&w㝋"l !'Aݵ&гGQ!PɯN;/Mzp `jGqkxGX`2 UMXphkX")|5YVi<zbߺYyzq>N]Nψ "akrSF={{|cir,c4}ivS_/Vr1mo*+FK >RFU*K|VO|-O-5OHP%DӭVZԎp'u0s`r{7]$|b%F=w O`J`Ro<+Lf.BϏ$G o<(A\Y/26ݽwt&>Wʜo:j^tFW$ƿ' 9m1B t\٥ ѣonw0L[>E~-zkW03y6G6 ;^{?TZcL!DC{|"*>Kj`+*!S>P;|R%+ЂEX~}7)}QG"Yd}Td:A|;u8|!I#<,5F^Vu*EW'X mVq p4^f\XCJj'ݚKmWj}CRa}%PjYfx9ˉ+FOUּ^ݭ tj8 BUͨuΣcٚtOҗRe=%^Dcyk.ߨ􍫊~r8wT\99Gul9Cʐ@$h,i'FE>[=Q]!jgrFRjN/m7!c^;ulљ~,+\#o"&Co1X0w4b,?RO~=.x]qU!i=!vrNۣ3{a\Hcά+nj~j\aLqhF - ‚Ezl!C256Y߾7=Cw:VT), 친E2v7p&iD1 NKPiejkXG-bɺm8}~c<%|\˭s"w-Gnv v=at8̍c&a'lgi\뜔\j-ZsiTCZIqގ<΂^{b _&9gJ˭9TNܖ#zvdZ~XFdqϺzv~)P!D"vQe$ 8l!F^M5= ^O3R=l (Wp湱XO@lhȹo"K(m>w] 7A@e%?OŜv2BQt]x-|Otax޲'$lB4>m!'5:n~&L9 %@s4&.}# "-:`~39187݌.ơ4qiZrdz'g$01e$Td{7yСav>+-+>a6XpM-&dDCqslP}[lzs,Tb,MZa^&6-,r@~2?0AnD'ۤ{wiG!0fgl5q~IG{<׌zwĆe0 w(#p@Ҳc Qgm¾K퀏:0s(CqXW#{WNܗ" |+ӳtb|HFჱME:Q|[LU#&Tau2JT]=W8hOQ.$ oSC&9hq^al8JNhP<{ v@/ Z\8T4<_`+nOJ0R;R7A*.lɪ? t῿# \-JSdoXݟa8=vbMT'ǃ nFBhPcWѭ T?$,6,X=É(.pd#486l'_ ga_QL"f([`}aC.BhD& "52jkaj_SyQ;fZbKu]"%yv_V?䄺h{׷V/DڊރlDs/&~/ Z ~̶_pP4Ob7|CzQ%1/ =̮!ᏻ16I>Ll^7ks'H&DÓG+W#i 9׎xS7]F]9Hw{9~ =䟏xB$'EW%M2'ts4䆲[=H>a\4-6K70j>בJd/k1<ԏ6Q5w>hBK,o֎ 5#$l{:"nELhĮ 714.&x}WT3'0X9 $PELҀ[.wZ #S0;|srs/rxpe<(1trcqf yoڮE7/3 {U-AD)f !t UFkubTGJA1stv_^%ƪF_6tmpX R&3@+4J] j5Ԙ xmdX#ױit ++ǩiՔ_Uإv#xE תzS< u'# \"焊[iҾhiTv8̎A˚?ԏLF=lJj5]}^%):싨x=zӫEZCۣx]6SX]`fZhEUu ` ixǓ yG5QK*!eRg@g#/\\C 4XzDۤ„oq1{ڮ!Fư[ Rٟq_D+n{+BӸ\[O8+M됉!'kC=qW̨:G;H`tt&%M%ZFq}(XlzEYM&⮳ Exqf N-y414G3$crb78%ZeK"~l:Nz[쯨wM@$pD?pɉY77n'V_l nɒ:?'63:[PԥEzd o{Cռ@i75mG[U2̒u5YuL9I1Wp0Kp"wc3pҿ֠߆mNXu^1s%cWޒ0SuF0إ!6td2g=PF2^ӛ*7ɹ'Ri[cbScF-޷PdL>JYhC~N]oиD]ܑ!L2rIC.UɄU̧qK0"=1T9PZ}EB1$5ow=jޤ8tSF!^D ι4WÜ)bT?ֹfXH7wI^Lsv!᪁.V;SpA&i [V| Gl5s(/HkbMx&?Ҧj=dWsZˇk%JYK;%=ET[A?[ =Aj:O%"I}ԖTcރn}"j˶56u~q:Y896i\v!(J:e)͎Oo#9آ@_r-),Pmw:OɶiuO!fj{Mk{-pFsڃY MEz~ag>|;eekt9.Fgɲn̰Bq3`ͽ P`vG;!_N.=7(YTv YpU6ITH)mui Lf +~\!\a]GTCH0"liF9"q0=2ލy j1Y hT] kHn]$AXV?Rʂ$fA|%?`b߿yU9qJNށa0 ҉gerIq)pWUCAv ~\9aZuɅ b\4!I'<+OP4 +l+$j䄺XzP\G0E>S)YdV/e+SB68$M&SC"U'e@|>F 'e}wBe}昐Co2Z]cgxx'g̱zh67y9b|}0ʟS.Gn>W5N]MhVG*Oߏ].$ 3;E7o yƀCv1"IzfK{rA&,諲i?Ћ @@V>|'{8mUJHYB ?\:>΋)}9sֱ6lиht0e;E vn!$8[Vj rl>#Q4, =rh]/ MyqqmR#:U ǘ+X#8i6A@4_5Uer' Qt/ O1{$y 8(ɛ%W 0Z KWO"ؙ-VW`TJV"YL%=]v,/PC-fmHcCM8$4"jOWk3E !D'hn3I M#Ā_0W s^B%coԯu1bNd^ݖ(P]Pr\3ΧlzcZ_G4S~ʪ9lnZ6q Ж䡽}KtaE)jc_Tqt(I޶e"7pfڮf}QTK ?A_p|+J #ng"[|N4@QASk gyBs0AZmNbAea/Q͝~9xρ* {EUAB;OH1r8? YYrp*TOuSe?¡2OOJ}}ĦfToӔwǺUp@pg]6$]mV96sc5;`¨õ&cZa {rzn ).*X+яj~ 鱝D~Z[L1kں`;+ /oۘ6J6盨:ĎNqe$)jHVй3Z 6#h-;<ɩ*3ǂƃ:<\dbV PZT-j.1Q,ې̱ >b(x| Kh2wrP{kaCٻ2VPi1qRX RBgt 5EĿnwuj^v\j/~LM̑:уgi> _}PpⱻYFr˼4Tx[7fR"|82h ^K< g,J=?ޚ'&{#!0\O(֢Q[?Udd/v|sJ\ )#13 yd]$mj[:ԳR9r<ؐI@xV vs9o O8%c=Y7r4_{#ehN" ^Nm/]K!R Ʀ;O` 2QdSI\o;[4$blW3sB5=]kIx`# 嶭^KoohBП+[_þx7:8AZ?Lr4fa|J896R+a}?%?jmqPCϓ!FLU{O횰+ j71*RިM3YO.8Ne,AxW]hE ijRk흈b Ꝡ8M֪;t \kIa. /LK`Fq0iT/]2Sz˘F@BE?%=dIKׂ(YʘCVRE ɱa&%G{-ntWT9=Ṉ|&xr*y{BdobZاQ;)4@CJLFѶ"S5 J ;hd!piMK%J`zd[Yr:^Uj1إb78a)]惶KSx\lLbjϙCǴ`h0|FDyL9PgBˮIvWa2zsʯ4Nq?6'C<\9͢7B|&vC!L˴qM_YNVSQS9u辵bWc9uW$nVL‹8zYB؇)E{p2"/HYBv zV$ 19ėRN<(>2aSEo;<)"&V$ԷpKm4!XtMWh\Sd?7`Fj%y3L LZcw Ջm`ܚ\x01T.?'q{ꌨc g4UISY~݂d:W.#˵{S8~ɝ-m 6i 9Rc{škIf`96:ݣ7zr=s^]ug*Mm/!VFh~s;`A;;kDZU1ZKX^ J YASEfZ7gRu)M6gLR~wyf3KLQH]FMaU&s$jft.MZloURO ȇ;i 魗q2`bnI;c6^ Km7)Df3I;ZTR/8i-ZҎ+>G1[4ڃ=[ w>{!a'# C0Us?w|':UaOũ' qB!A|L#F|){_}oߠQ11wv:YDʍtx\׾Hʮ*L*99VE)TN(t~ᩲ cگ+*% ip*gF+R)8mL9VxMQp3w7jn ekɝ֒Uq3Y͟g*TinAjͲS7^NW҄f`n̅V+f &\h-iZޯg77hNv4!Q IA:$vE#90LUfr=J!zrEE$ڲqk"DKώ?W[ W7=w p,i![tW6B@#X7QQd?^)l0o ӆӀ-i4@xƑ"%)br23,#WNTZn g n ne8`bXVqB tU'utg2; ,wc@%>0D`uCSmLQ,2.ЕU vfxf0_: Ȥ0+E|H1/>TR,Ϙ8vY̹.Gzz(SS'f\9@/6 ~0T)1_/u&eOvia2H;Ր%cTbpuBp .u FO}NG+8͠' AFd2pb!_Xw?2L<^4Bq9^ Je3*=kE^ۿ wdb?VL w?& ͪ*wxԩ^$A)1C+"_G$-'j:04%5-MGf!:~8#`Z۱0x&*2j|lprP;$0 2`X o36=%y0{h)Y64jJbGbj@»8o1KEEU $_^{li|j]W? g fQx]GT\d6"`VA fVjU|9~J7l̕͞A󚨐?g Kz2>r1hڥA [l# =!vjBI^,jCZvilj,#*7E8{ԚwC@9XloT4" QěF {_W@ZbĩWU-)'fK*8 p'4\O>#|C' DM+F05je {ٟ\w>H WH$Ĵ$ﱳ/`?ĥZ.Ǽpqw< ;P+PɆ@8C{l("1lw@5Y_Wg~U9!/i(~mBBgMSo(Qj T\"Xn>¾;x. IGA5^–4eo_v0+8x6Rגݟ]W.Թ/p̵)}lyM\mf ňe׊Yaߌ/,`=`p t`/L<:x10zT\,aJy nV# IJA"KP//;|+nێ#炨L6jCX/gI9UY%`[8Ӣ ]dĆtn.Dxrĸˍ0rhs~FfU*lqSDe29i~tXGu0 #k~;_;3S3o PKxXթ_: ۀe&9߉H[5p`-MK{ 7:mj,J-zgX/g;gD%z Öh<3Q)ևֿA}ִYcR4ӅΌG߁"\JyС ?įH,S_ VMdHv:n DG[+0/Z>-l3,Ӈ IPn`}Ws`D  uX:Mm奏q1d;'u69WbOx #{E߰^@d S`&(7dnVqwSy 1T T &Wl~ VVTD)^[ ӣdGyjGڹJm+\ê1iy3˰? ]9S6J',Kha6pq/۵kZJ"ydžcPS֌\ T28sY|B?['.`lv &Jɐi@$X/Lv/mʌ#;g[!@gE ֲEliܗTy՚H^HLfKiІ!K2$tFnZڞђ?ZסT=7s29qޕCM5Z6Akckx⡺wԴ G-&@Ѫ(q*ikTQj?X/.RBY"i{J7h [P3Sz܋b_-d;:@d-S^{,5}kDURO}Cݒ-dcCuPiܗ|D[pG7ӕh/G9(+K*OO !qqw1Q=A ]&']*u=JsԱA6 +Z*QCbfA>i_3"jΖ祚^PjAd˒73-NT.~YQUW,Gkݽ4sU `^Tyka.4 e}_pF!+PYG˞&q5-r9Bizҽc !^*]d!n~+^i?N-h56WK.T"VsJ6WGY4W,nG;b +7L^Sq]j+@zoI+|Rݘjxz[>C iq-#R&;B6Y[DR+k"1CĞA.2`UvAaEbAMӨ#&8TCڈBx8/[ sz84@zd,󡒞U\b K:;o5Gm@!xjFAL"!43LF]9|ܢ0:SagL:=LiphNq0q *7%!ƟOKKr3ߣ)H,jW@PeApHR#0@8`sd5G 6Eo' cS\Kx"Z Ew]ܨh?L(S.lԒr37]Jm$wQ zf"p<MfAl9ŧQں\,oꤳ7AHmRX;k9+&M:$CxlDW/B%F;.ovb3E>,_6R=a;Ch+[b awRv=8dkad ƍ;5wy3c$H-ҐErz{}Xm8Kǜx TIg)?>zX#=2r;3< LG)*K'vd0R2{) r\Vf'{tOܤB3}~8[|Pj5q!n4o[jY4Tpv"|EaӼ߫q]FB б~@J4-a~RIjx<NXZVubKcP#a@s^TɍҰaP}o̵ {Dn:S{~]ū+&!--2 rS"6s惫>NS3n#444 2y .rCw 6 E Ki;`{i͐n瀿km_qm9W ({`,3$QrF57WNa>b_Ox<~psCXg#M6u.< 6na Ef%ړl[+^X!*<[RSEUƖ८72Jrgm0V?  J]0]),:]0S=1:(ķuQvUa&Şҳko/2ܔ5*sΉ^O|1m(Jhm*1P\YF^&rX_K$#—p}76Ë;w;EQ@gyf8KaxkdZ+RqViw1"̨ ;UHY2H-~ Dg:{x @XnN|9C~n cx8'# _=8\x,H8,cߊ?crʨ[_ mk-#l*j>I ?y ;AɎ,M QPdA#Np1^s6쾜RO,CSra_L뉫#}hCӀWy>m~:; "^Ⱥ:dh'03M8e7v~EE\N,܇/,q'n"4Qm|As~ȉ.~@cSQ;"fBIa|[V,pů[VJ pyHN/D0}*a\k=jgrhgO *G2̅]_d'`ϝS?ɊmpWyF HYb*$%ڝ+(wLn :[=?eQ^2 Sb`!D*~bfh߾J5zdG/ڋϗoPrcD*=p'+v.C )iߢDC=0lW*5@q@˂rdQT0ltȗ9';pzT,3N`ȶ*?[ʪr\1-D 6T§0Lf(g@SQI?_<:D ;zbyqݢB q +Okɽhhx30ӂJ޿Ȅ7Ɩhٚ~{;ٷ!Rq7㜴>g% <$JDD"6 얩9z}cӨ:b:P&S"W.qF C=Gfei;Ȭ9Cc^-oxKEob7  -q<X8es睆xW\,H2<̒3XphHǎ<I4U6JoWwK} }/O 8JűsmZ7#̚{aCcW7_:!JlqbKS/z59IWf0za 'ҟN TV1& [|Sf^@oi",~ÃԣE+II"G[ AP^/] l46#7f^!aF>KbK 5'P nda-PSr0o/F֖kH!9BzͻvH,0.6ơK(crW}N'i/+vW=P{Zo2\ze1U7n)*bufs.zG*5/+˙D5 :tIOfկTY0~ϞVUYw%9H"yU nK7. umh&w&4 gn؛{3v dm]KL&؛&Bhȗ%MvT aYܕ;:OYgbB<efCۈg1$3AiA>EDĐ^{!>h4i/aG+XS=xMZI9!^⃗Is{@PmKD v/<d+d2"=ex{ 7Bm%騗 A_9g}QV\IϜ,U:g: m%=t58HW6 urL*?@ز-d'" ]ުq0a2D{}Q'_y5>(q\ h}6-2"(GuGg0eAly.%sf|ޓJ Tz6*#h^,&~5"EBUYJN+U{sSF^mOR3*^)Aob+6l*r!>cYV\Ow `6&7r6,asNŅxAn9# ElGQg8 yrڹ2?:ŗA~J6]*? Գ9(JFqj;CX cLb2G|d" eo4rJЇ/Jʑ!NkkuUQ h#%(nٵ.|X8e.r6nZu!~_Kc1i:OINYs[Cq?)d]5qT/@Tw̽'"];o#@E""n+lܞ' V,)[ve5(G|X@n-:pn {b&o۩pa^ˍRuYŗKd+Lyx2fr N{׎P{ftLɗ!v޲LT( FA,ZY̧rXi`FIa $|A[ \w_"ulU &B[whāAaFQӬ3, Y#SNmf3gܻT0mSu2$<"Ves~Ӏsg;xocOGלy6-H,cCu%EBsF|OPŰ9\W9ψ9@PHIRY5y -)u@]*)k&I EIe 5W ߕ!0J1{sZFrs{gn ({nʁ;1D/";yisGcW]I+-Y6^_I!M3(7 NO`]*qSA}Rh5qp92JfFA7a\l3up8 3[{hLpԫxLzK 4\4hKs26]^ܘvha ?W! _^ltIR Rh/8~b 4X $suj<7C!CxRuk {*Kt r|lBMip z/~"DV]I|>A Kpmg3D%$$y+{Z0 Td1D3 !6[P~\9-w{5L#A LÂ6uԯ֪ 2StId?3ߎQdYD}Bɐ܄)*y{bz k Q54'^jj0(zyb⯆'ɂIE@ e'~Un#aO=#f)4Wך0p\PRE.-ڂUM.>pQΊD=NIDl*fF]q3ȰDuIU4v)|0J 1wlXof6'3G#% %;$R>moulm9$n>`Vمh!4v 0)_㗸׌gz]™^I9 *"XaHo~VQ U}EKUECy, c<$ɺ_C+ډ+Ir^svB2 |X@o. Mя^JTd>Ok3!\hQo#^JqTy{r7!m =rf0aM6A JIHDX+\ֱA> \ǵm#0sKNHs6~aXx}xnx*WX6ܝL~+c-b]n5T΍|fiXX3b_(^t-^ np`Քm8 hRSmtIq/_z^UhlsŮ@X~.5T !ϕe"k #:4k[CD+Uo!Vޒq,7̳oY+7S~uaz̏]_Lkv57-޷4*IN:W"7H}j>Gu6f)SQv[L짏)ۖ|z\N䲱1_=܈iK^)GI $U_БF| b)}9eڂs =ڣL"&/(XGq zşS*Gv]H^zJ;s Ulo g ߅%$ϓKէ}Ar2eȅl_A')7nZ2opzJ!o×yIc[@O.!R٤cG6Asn H ʠa<" tݵlW>,ώ}bUOso zDb΀Sjc6( V#V52VQ&I ԠI/._K4'ZѷAjj袩FY1aKrO,dCFR hEZqWzw5f]^T>*zi^_^w'eC //#JH4}y6Kuz"Ao%[B k@o2$JczPgmDW52s SD3I:*2C# waKA )2 - v1 HxB&7OGLHf)CGʑzvc+rYu:Y1ۿزL ֒u`n9mnx)jvD!XMDvb9dM[cY#kdܨkbG(m9 E)g~e"$lQSRO)ԌZFi?<$ʗ0 \\Zǃ Xu!FTYj/z_:v!/ii J_Ԍ^r(#~ ~R=$`N(b;wQ T^fꩴ38Ğ5b.Jx4E}C1 ̴c(nZmIu/F8+ܢ,an!>sbQߣ|EVrtVHwjQ:+^s 8_}28[+Dz iÐ02G#K7K@6?ЮXvAJWgn{q7l [4`$6\ޕh }T50+ |DdƵ-hT/];]SB/*sAMCNy #.'(4A:#/׶=>Ffyvc?I 9>_'i Y/2D|H9WtaMmN?ni .eh)]OA$8Zv.܍ܐ5}=|L"_Nj$ѶrJ%\iIh$)# ~뼣ꂰ7A7^D̼';;drCZuaOB{" F wBh2~6A{wJ]Q)*ƌV:#F}w2cefoUdSBh]6堙 [_QVHljdxۀ /s1X" )-;bQezn'1L瘊q2$iZ.޾l= =7{ @+TQ/Fj tlU\WKP>hp;iXD& wh k1\iJ&/W}Tm #|+Tlgn﹂oɼ&wBd3'[XjziVO yވ-]QxW|,5p*I|PkP.xmhѻa,c@F(y^O8%FC7eTz 1Z R ](GH-wH<@ e:1O[`jNi:v2g&/lND hmCw 򫍐U3Qsx{N;|zU7P]ә[||&x˴SNq ѻkb0J yκ3MzlnE~"O:, ep&V%z?uwm[qFĄ%>+ZQ A*P::WFxta/L< I'k=uqs3/.% VpARa`j8-&uAϩS,2kxN3~0id޿˴!DqA.Jĉ7g\d8PÚ.peR^=%KC4T\}X^·Gp,)&+y"Gy ~n6j])F>b":TMI>vB`H `e_2/R %@n4wZ-UHBgGd5UOx/ "uBeg=UcR yk';Fv`M~U}yOp栐 2IJC>.NI;s kc> _߷1-ꀃ2PWjhZW7k+6ItvkSWkU`'il5e=}&༌d:ÙN=XKyĠ?XǺv6jB5ɖQ'e ]yEt+G8QdMYM>z\?Nw%eY\'uЍ|=M7lFEG"e(>|a XH&wA9(lbd*$M?G[滏mu ѐg<~{y}&7qC Rޞx᠉rO+r秶s[LC>„B˒56Xn%`qZxI+XB6 m֏/>=Aj>ktp%+:JM$KO66EƬPh6WW J3غG֒I͙ExW@z[)26φlvb +.̚T^ѵcSf! c-SR`|;'h1ՆO0p@>,S=Fl>rQ^b&,v&f"cN5&N$r<TQ]K\EX+H 9 +WP)sSk`\CyrY6OWG rzzg8Lo`^sÙ4xy:^8:׽Ѣi-xHlmuͤ?ȥ得ۦ%8EH'J}$ #S}In&oj͏z5k2B5R7u.orAzb &r,IstFEdP ޯN(޴WދFE}9x_Qͻ9p*~ڤhG+a,MIXŤ^0Hװ-dF'o;[?o!0h.vtGN_pm[Ae;44UL_ަE& % r4y7̙LC.:|J}ՠJMO>zZC*@ ~!GԽ}6[ҀU~aDžQ-@%~;9=-qah P2tQ0s>eZLb REJ}8osT}tyRgO3$Wctx5&w:YNw5uޗ? /"Brk^xdr Hq2K)<}0 b6\!:炆SƓ Xb&:B84<`%{*5r21qLgJ"*crJ6kfb,D!ʳC}@d~yFQyV/.&xp:hO%ّ^N4yc@3KB#Pgv4P%0I͐-A%}Uk-pe06zy7njf vdzwW~aT#3]llt&Nέ-Bq!+E`H0U8Q:\&z!;1GJ)> =Q!kSf%R\naY$ Z-;?CFY`Her ǘQ3SKvWrB>nQo+=Vp"!. A[zoi-uc>7y8bhޢ6h}LHj{ IEQrԦ*ZAÝk*Y q͔S 8}Mf"s"e5\.E|Agw3xG= Vk^?OWGlhν2rzxY.4/*7{߿J9Q\;х? (.ժQ͗{w*O]Q Ų+皷пUj@ >\6P{P[MY'+RU=L>1ͬ D 2xLLxm#;Dq Dræ_JwDpcBw%2o}|Ԭt*s=l3g2l_cv<0=2:l{G0N?+^yg}BvdfvKF5 @?8E"2 + iO|!N;Ӱ9M1cצτ1.r+;.T {cB0$[ILrթOj8XPl޿?X7#YK)n4~Ɏq GcA6r'Q)_- +dԌ/#EA49 z{*ChSE@>΄03͎EuaԴQ // BnyM;( s#29KOkYf[ e+fX=m'“{3'&J$YH6P{)C>T Xs}R CP_M@Ga$|1@h| 3r8(j.fjTEG3QL[OUD:Uvf//t*TU'uu3ol|ǖГ Ǖ Hd{@фs+c 8?e.ZR:VW_Vz2W>!A+n!NȔ: Ŷy>Ys3Rz@#NZu~-a : 5;S/2]hB nObq"5X׼Vܻ/斸Ȝ{ݘ4`s!@ɟ@ XzeG6"gRb!4`8~8r:UA` RyӞtb02NM_֡Ae8>~E? (#(#\l]7(Rf9n' Juֱ:)+8 8T>l5J]rzRsݹ1c?PrKZ =O @>f3}5q?Am%ASUxcVt7MGͼAu`]08G85 I|MgX8m(#$~Zz_ċwD krr&^Z:} WMC!*NpP}'IsceCm[9b&θR?+' в촑QV),>A\yÀdBGAR&$vS(d+*NHˡ0b\/*FW{Q:5CS!+yEkAX%l;c("~6Ƀ!P:sMN;Wrz]͎xjfV-P{?.R٪hq6 =-'4uvsZnV xS=ϲI7Hule~;tM(m3:[5P;퐋FɘF;^.ö #ctn)F> XKS×$N;^cxOcb}겘]Ub ƀ5 *UQ6Ts FlY`o>kR*,>PPP_)kVggEuۺWw]`=7g?r m$SnʹA5xbd,NG:#=)i,oEl9z>$짐1n$$p.voi쉳J/4ZE&BPAwF^с| 0DN30[lTN+Tg 硊vӷģœ&VąŢs"ks|Baa$^lo=g!p`inMvKZP ENF|)X՞ғ&XUko'"OGKY|'?_jH(fJ3:z\ ND?d/ bҫ %Yd%BI+- ˪2Ԛ_F= .u*ĥ : /.p>VpH~}%돃byVS6ޑx :'pgZͽʙO|)OFjk'!T~{Vi䭠/Ԙ+Y]z,':1{T(l rU#!Ƨ0҈l}; th;eC 9FщzGyTflNuI 4ZꝉBQȸy.m|>Be۵qU-5C$ji)A4M΃7U'$Dz(;!M֋kɀڳx?t7M-ع6>9_M~eG3U/NyԋU/ىXxEL~! R6 fl}_ˀ&JYI- Q[p2i+e(0أ}d4G. \m/yPƌ2{h6ز2mqdYZ,OJ aҚ4tר-,R*R!m{`ԴG=+lx]P 0iӍ͉٤Qd!Zڭ~`)(^ zC}]Zv!NoW5 ¯SZ4y1,d>Na:).ɵ%'T8L&kk5ǚi^o{]RWQ>Ťg?7W+?|!o'`ۇSe:|^PˉZZzGujX{ͳb nKAhhѣrse[A؋Ŭg1GݡeB eTU]d~wF6soԊ6?)fk7so/g`wHEZҰ֊b飷R@n*wӆk  1ίC?5!&B%ܷaN0T rp)qC={ٙ^5呋¾<( @MmX?CLk0 `hxK2tgwetum9EfO/#r]vBؐN٫gGyܴ?:%}^ 4צa:fG +&naX%; O3EFR ib9O]{JEQw֬B)]BO[xCr72mw#H9pIϦh߆VLJ#eއ6Uu'ZC߀Dmߞ%;@@-0odtGLȜQ 2l:A׳Kj)xlj6|F#  MzڽS(׷Or5&iHx=m텇,EtGdoK׸ e]ɱV}s7t٣R-``#- G6cl7wf#uP׸ Us=5 XEZF]g6bڈflrԡ7o^ق{ohVO{ɞEy0 c9f8vO웄07ftPQ!sD=yey"x]ShE:)]~ıbM.PSբP0@!7}wI̤&N`V̭smH])?y)Vr> ]$sW(S.rE>G.!Bpٛ;V6AiF37'h'ذKb2}َ|H_RslU#_Lp uE>5$Pzzkn@`fA 53j ϫUWt,)#U;D/(i#҂ne=^_D~i:D>4qs6}+b=\˜?ys/t|X4w/8# t"Ohk-v#1'r(u~^Y]"2w"R?1IoL],40鹪e.-yT'ഔ=9!`H*㾥9ī4}‚RI#D*~|b2τS+bгNL-Cﳻ*JF}66/f `IBgwr"(paQfwHB׏' HBO 20Do #wqBh ܩAUGl+4 1N *$SD0  2Bg{w<_^|+/xҲ{Ӎ/'s]'zdCˑ 4CE~iSPSf;Mh rLȑ%ʼn8WT>6#W4ԤuOJnaٓ2'ى@Nֳ#sP+-(^.=3Wi#g)h%2e}Ry7!{̀{ Ӝ0;tԇi5 ւ4। "%k#}IN0bPot i(I*ϩb֢]Zn)r4Jc|o[)/R错Bn*OWmz&RGJ7:fZ;~'lgп!twmqkkg~~\j24eW#ՓQ4ueFZrX,XS(Aj2& u9')05 9lkVTtE ꄑ N*qK8ZS 2;|J&h#NxDQ;ŸE:3>5d^'f$9i:ܝAv3_T`gu Ft]S/Zkl{T>͗8$VOWg{XvGtԨ,d꙾%媦.`{$H)L/`c1QVصd+J9XX̚.#w )h)byjKYFzqi׃k4iO!|U,|5;H3/=W]܎@-sPam9_JQOЁzQm*e ɺŒb.dS=n\,m⎬|M o^N7g*M!mQ \*;Dߕ/o,Mg1*Fvu4^'KQOeoxoˠjd{`tgR#O ;WA2.$X4Re1lP)VT6p{DO,p%6ϗ/YzvDS3WEd@fJ0fLyGaH|W6%_Ejj/.T|33,O9vX{Y]-/4d ] F3n W<„'PEt-N9f] ¾'h\D'ov!ESͮ (ċg,R-J>ɩp[0 TcbY䣅 ,]1&AwKd`e$ƪQ5~yeE0!_`ۈ 0c ѕl'@4&E/cEє66ǝKӡ_AE,1]䵭WuIƧqpB*g(671\Zn5EdRĎD˞! Ic m,BӤ$1ư؄XGg0\aYJRM-x WϹ":ʶN[}]\婗*N ,PaY;QL"c b\Xo1"%Bu}+62{zEO{*D"쳘vw*y9 2]eDi[HoOԂJUWCYA7+v۴5;l26-A4mʢ,fhq%/|㳪ewdTUnlG]D;0 wG^վOhTs8c͉Nt J{}RegSVheiSquij1Ic"-{-uaO/v~'ȝyUؔ,F<*DhNsqѬ|^sYQ-YFm"nL$3⬠>e'h"R&tMH3.~7$j̫uy<غ,'8/Q6Gv[P1P*J P4ˎɒ'j0gR( 4tը&"p;KR zUm(mrH*+[ VFGĹduRA1 rp!ƻTϒlGLWP]k[%R W %xBEx>QIcZ!RRɻ8.\vtٴJ°e'5TamYfC.E$J /̭nCфqL'Zͤ`$ۙX!d ݩ~5a~#d=X(]fԳIu񿢁W&:/¥{JW_ti_WMG7ubjm^ VXvC{t_2@O҅CױBsbU4Ң}CEx1(c  .,'yMqOe%DB 5i~ #zhyZeE6lh Ѱ_M68h Е⻰ޖإ2-зmP'^,#@p[a BK*?d%+ m2=d:lDfˈʭ'Ͻ{9 Mj-ȐtmWSs}1r+U8<[S_%42s"4Vv/;p/cDc4!rÒ<"yį$M=+PU<^aCθtZ&/e'ٶa!p7 =o=!qF*^Rܴ3Blu ULU W=5 Kp.?| .F2$}Wjyp] 0WǠV%'fgVH)| R 1G"D%Г>WaX"za%Tm&r p0J(Mc? |uwnn5$Fg`d9mBCMSB%b2[s{bda ezg'L߶ţ!m_bѪj(wÂЫ?>^rs~3gvRDH?Λa(d1V1 ~bS_^|'CZ -_e@f^18˩f@ ++}~v$N\DaOеx BL'bU0*D:Zv\q!j1 Tܜj'5|WîGzn46[zLǨ΃j7mА@gm{ldW[q]kr;Z[^ Ecq| pw*ȕ2Wk1V>՚K qm+H`yN06c^.Ɠ'GeۥLBX[{8Gs՜!qV؂,w6gKuNH[-<w:  t L1F']duiI<!Gh mv0h|L-`1~#Shur`vb6&kIaDuDEiY4؍qXjL^voz0\f[K\s(W@f:ay|A$'w[]LMa*)-"u@{碎;-ˎIdk s"?@0]%liH.; 'UxQz"oXep+c6TutPRkJC[ 2|5yETvn6HO4Z 9 ʍ!C Yv*KjuX8++c6=3kmQXPal9K*ag_Ҍd fGlCہOث L%95K:i: lNHn$זڕazDhHX۳0zy, bn}ޢVG0'>#E>dr_= U b68#TaLs7Cd ;w4; 'AXt!d[hz'|K̮2)+w?+qT!"?0ߑ{mZ$^CwMШ-=4D.x"Mɀ)Ufej+fQnpҰS :2g0"4rs G 5Z,F%)l;8M Rrˌ7隩L $m]GmI'y;QL-Bޙ!(Aȶ(qq Mw}|AVM9ytRU:[zضs7=NAȖQaN'_&&mRz.U/.!0GmΦƇ8)(0*ǬyہC,{&GBO!zPr"W:E'ڛMkݡfx/ ^ت!$3|6)R825EϸW 6.nqI:4IOqg=D_-El/?|hӾ[z <igrdkKQP-VΠpszFe>4S5K?CfѣKPٝ8!" (:FY4Õp6Mn0qƋrOdae`8x,KS6jW%ΪXw򬻖(v n, *wYߎUʩ3~) w zh\ZRUWDDA٢HVDN%r11*fTHcſ,ƴ$v%L@,0,jWC `Sء)ST:GVa1 ߍsg6 d#,o?{Mx5 sgVP@P$P0U@8Y:Ch ,t%2Cd؄f&# xHAx?@ krO+dGk}{ GOuc+_q9n%[;SvQn( 0;7.9:N͘n)^F/ZV)Nalgd&¡AFG)<@Km)Mc?)UGv++~ t}]-Okee2 Uk ]g櫖tbH4gBftEڴuo^͒[{_i+W{@:|"w H~3U {\H>YG (XTCЦcH4`<-AGO.Do94s?p_'oLG@2-u*-Q&oAh*K Hj1Kod.՛m԰ cQSF+wXr,]wvf )$u2BVaMAO id-Z[bϵ+B,=;\.,|_B! L*J8ǜc?eO#O(ӫ˥W҈n%/ _QoȆd/{l*@!|fdFwWub"rN{x:"W v 凳q_ y' Tb9+4qA]t@E9Ǘ=wF8PF5/^KvUBw"[l0[skAHo!Y:j'<`81<ów:gR%\ڠ(P 얏xtO c;od,n N$S1ߒ*b]3ʪJ"͎UEd!ދTrԻ 9s|.>gӨS{zڸi -*+ kGeτJUY 8Z$ 4rWN"J^â ŷ}00L .Y4+U(rLr1 4\'*`HUb)GfI9 &@͖m++xG˻"{{6D m/odCpW{XpPMj?w.;#`3[m c4|D:!1/`4mA{ f%8C~CA&@IY婍}l4u<꾁<5RP2temq&6gߡRX/u;ZvlH!B |OP'B{ W"1-cJMd͢UIMzF30_eK> #W@5Lr!PV{o]#U&i7G& -Gf>.O? zx)M+NJʽp%;{4V,yޙ{BMk:~u8$PiK_]')TDžM3,ߙA+)r  Cg^Ϊ0H4Rg-ևiM+?X@01 ]m%Cn"sFe.{aXO~&p8p%#IِmMdIopXJF/kЬ{0@?,r ց*WL'W bx=ar?r l /xMi7P6y:>G(=(mZsrnsфj ~ &Pw֘ :-0!,업l8 &06# g_Jf~?M$NV͋Q]JybE&K5Cs=m(Vc"].I #eIDUdD]!w!UK|PjEw;]bC ;&ґYnˢv[. |p)HږR1ؠ@C[4b&Vm郞Rj[-KCҼoe佦sǝ5_ ^F}9 ]ԕL`xkTaψ 6W@=p#(ef-HjEH2CnQSqp=0%o'I,-I\QlvuJ"6`܆5o^Y{ E.hhpvpKYg~zЛw i(o⦗Hu^z\y۹'ȯM)  %4%hHI, 6RH-[Zx'$DŽ_蹺8nOؙѣ%F 2ɃLx4HoF=y߉i3q!'+DMȓyhT| ()/po8#+z!d8F(kChX6Tϼ16jpթ7Cm 19.c'p)."7%ț͐g}Nx2.K~59"1jt UPUvO:qǟ&ZNn`" >ν׳ "x:WBJ92N'vGg';0-䈛b_ eG&N'P#{pkF}k5|({b_;@JU(@`4f@#-v9L5/ߐ6 9qx(kUtӷ7>qw:VJ n/)d0"+3Q#Y^E؏CBݹ]POtL|&XVM,=Lּ̖ 'o-z59*j&`!tN[*403tFW/Qsݚp"u%2|Hs>BN1lJ+zp&k=]tߣc0NtE$G9RCBl_0;Z T1k I,y*@D R9iUf7n. r ,imYg}OԵAEw^ Eps䒖<8??RUDcu6fh*uߐWwL@-GE6Uz6]_@A[7X`w 2- j}'27@\Br5Q@P3LhG}̳-,Eo0N-/VLYv?eVWk$Hׅ)'Sjo!MЫw,Gi7 s_>gc$]'dI8ȢF9z{HDlUeܾѼO)<@ )GMʑ#i.j셥\ Q`9A0ZVol6̹rMeV?wū:w ǥ lhǫV2v}쾨Sa;Ėwv $RY0~f?U|C_}p6k'P ĵ-Ac)8RsK]yQ, @jQ~.VZ#Ӆ68d_"[|1dmUb|efFa(ՇHJoZ3uIE܃ѩ Q0GQE¶y؋j_N?vB0}GaU$Ϣm"6CRhj#1"NjxixzH?GqL 0܅5QM5N6A2&aß57c20]XY0b~8?=obd٩XF#6@HK )ģ?ݱ4)BzE]lkf`0\\BiJqR7+%g04Sc#%a|u, +(zy5 sk^?eQ#yl_8GK_5Ii/ #o )Ok:[(*8-dja6_N( $˖YALzKY~_,Pe3s;U' ^ KEB]Ts,PX l9|8|mXZ%Tt2R#vXt3P??*L!BLaZz<{Vi8k3um>Ci5U{8)#Äk//;.pMGx5CSH(feq<"㈖.dq$>T P΃%O &JZ %q+Q\F({vBztĆU b,&r?XS"mUDn_X>1iAlS5384FI&1_ 5B6oGP➪1^G/~Z5u҆F`5֫ERL *F`,P3MGTu^&D{o`ۨbzSlczv,]3iWVoߏc:VT. R <ŪjJ kO{(tDsh!E55.fCO#;l=-Ĵ C>oCtAd2??6ՕG <<&Pޡ*^oC)e2lc)rzN2.ur w\ˎKz<;0mYh0A5;lĸxeWbB,hZSCf=vNJ *`\"c1k; ƹ+X ]#R?ya'wf^&2ewrRwt㜓.Ga֒k9~:g:q3l8%;Hk-Q³f|r궚I\l"|\$զ#1APFYHla^+xí1QN68Q[P)te޶arqxcQf݃wi,=[7m+EώVItQDFk|l.k^3a}39AaAt,7Q "b!&/0<}n "f}c.&!c@Y%6ک5BqFUg_ٙND:,?dWSq pL2Sr񰏎4K2囗ސu"U V =1q X=a?T w:pTSdq0dM(Ѥ AF ea$svZyWyܣ?%z q+ssJ|*Cv#g^o - F,l*1sqfyęZAAkӒ@AX  K5O 괿.^(sJ!=A8+ l[2M5;@U% \qcTf5k]Elֽ:}t7dvb)hCGLn& _Ɨs5W tN DϏ៕9F0rUrsh 1?F\еP7uyφP'.cfU%a'= 0IE_/]הּB(Hdٚs 2򩡲cu֤,&Լ!QvNClR;c ԩHSb:T[ZJ]wE?A)% EK'%X@W"b^2qiTIگG,-G$lU-_NQ޽ίEH$7bz]=I]l8-*CQ:DO-KrmeځwVp?Ol0!Լ8\5;rAq֊Y4轢Z y!uHF1.[ O1*RqAx+M~VKFdaO@8aAyے+ݴ?S Mȼg{ .V='Sq UxGߗk??Uݜ-պ>AWJʹsH};|[u%2VY+=΅7VW1m sfX \TTjkn9jv6%]#8'IoyWtɲ.M ΰWUIW#K #ٙyEbC4-bF) (gLMn͢&W0홊Ga;`6_r#豛[7_1l۳˛<ƃl\_4(q 'eiWYhbb-j J~OS厸oiIm6+؅ftk~}]šr "E\w;b5dgB~XottI0%MʗqⲰLfWx|wëXtsT É29y&VRZFCqr$\,9ʨ8SJm ƽ0~S4ɹKݯOĕgts9X;YbŢ_ RF6C . z'a5J |11X!Ԅ-XF1OhKlEir]CӦ߇" cX Jn)!Iջ:q7a罡en cD6zm" ĜOʹJ2+O=F[+\RH\-Xݱ q]+e_Kx>Vu;];xoԶT8pa+9kW A{zff>! y> s`/=1j?wxi#2s)^#ڈaYDJGv/'51{e.\DݷABB/KtHO=ֳ+b-э?|jt(wSGQ;^zɠ>PCTlS&YKԋZ xՙwiebm)]@"(H=6.\Wԅisʢklmz(2&˯?@_ o"B%x !䧕BV/];RIs&I_LL]fq0cy} yz%CR`QTpbo5Ruݶф-qwń6 wɩƾeHIŒgLoB4KI=5@C A$з ԛggHN{ |K jYoB;3VM72 RŮg*,H] d),wl8޻6? zp UEu<4TD M.Ņ]9Y|bi?;Uz܂. g/]%#A 9[ nnwɏ;:;`p.~<e]]?'m&E;L7cq ig Loh!Kl~OMu=!x%[zm 4wV˶Vr2[;,wtHd*B 8QN' ,~ 2dn?g w*i2*@[Y`\=#Tȹ|fՒ؇)=m))"`#\HʾqGI^dŰ<f"K Lmi0ٴVXM(馱/~'z:RՊ{ALSqE pڗDk,BP)ܵeWm/MbsiRխR,tzB En v7H\ڮsgYaq\u/:S OՐ#Lcjƽ8?f!ʸ}Ǜ~O:ˮ+T7xWrF=O|#|z!p! _?ڰЛg}ZS|6M')]Kg >KERrysN`=T"YIDžv%_eś])bTe%Ty5l(e$An!V([60>Mӈk- kv15N\haE]j u9\˜NeCO Ԡ{{õݪ5חV JoWçƉ3׸F4wQ@M ==i]Sg<\ LaMVrTjAN@\uy"$b~* S{8jVR jx<`&)vu0wwu@B1Q"^=O@gXK;rſ9nzyI`Q&47ۑ( :%$IZǠl6}*Z! ^Wto= $h36DƔD7ΡJ9cq#Dybg[lΦiEjFhӭcb;C'sLb6>Yx x :%nٲ}G1Eɇ֭yɺ /cO FT%$A}H B;Ldd2.Iq2nH01Sq^- WEpe(쎽%4>**[n:nOMć ʆ]s]ִK39#0VϜ2o؃a`\TR;ݽ@v}QɱGEdLmhy;K3nU{ƍss1۱3yZGB*[ UFݴ%t+*=pgヤ 6,}{ʼbZAճ"BãQI.$h_U l"%9kkdEeJ0x7{GT!?-w,X6˙~6 _ o#)뤬4O򞝐^ywq Sv~v66jlÜGC=vL% up_'akѾRt{7<\NL;0 ܠn/iEqכh`(cLUdr",MmU0D6O#;prx'wڻR\cR'Dnp:@8I rY4"4I/Od=D=qB}^={$?v$z[ruОq;+t7D"6 „m _B,UzBFa 6=%d¨Ʈ6S-,pP/&p;vqKӌ5zE)3kV= ¹0sLC(F VѠu)+OvxD=ҕ3q?k{lM7jyg@^I+3-^]>&?K-a :$TzvPFyMokFZ岿#z'X(kvwAar*_e% Yq M)pI>>+_,~Dvbt$4_nwHDރNΜ fq:>Cs]xⶣwTB )kkJSs|;æMClK+gpH_$y~KxK$ V5gjЉVZX,vN: M^!U}f&euGe³D<RŚEYhbp+lWnObplUR,K[Cj|?dgء&ss4vKT?*'9K`*-F_&wu7TQ{ Dcw_oh%$7Zp2tnµb~b }dݜ6l̓O ܻ? I>9͘tdq$&K a_,R7hy RDX{hvOhv҈ 9Xr,Xq@u^aO Pu ";a*5Zpov2ψ(<\{}lW}C)d<4D &Y"9CK6mw5G, I;78hm!ƈd)'z7LyК==,ǭ[M'ռ"k&<4P>@:so7KJ<QRXd~Y:ޤ#m^ @|*A>W?#l˄iO`\̯YhAAbio)fg$ׁGhR6x <lk19 O&AkA! i,0A+g$\DP(Hu.8h;^xq8C&4V֘[0utBYCBu{ ^ ~i F,1ecg2^,4;M};FvHi*]Qڞn'lJ6VNLw/k$REug+,aF|A@KBrJP| Jq=6"x]y@HMw|jFFv3J1kι_.csⱉpέ[S_yr^yʐ% !AqmWb9O$^L/`r8 {.t&sS8=.(n:4<sJȳ[:vZ bȏfC tU/m.:a??u]EwC)pA! őӺƴy"/}׭={#eFP@13է>j5sX>,Qfo$&ѤzjEo!V-D9 oY ?9RO[]+rT x||n LTwp~7@  #|l*߮Чm0DKe dp5P;qOV\8=U؉T%=6$|Ƈ;*nsR:V|?;7M'* ف -W[Όh0%{6LԈHr|!Dp`{1C{>40WǼ$H6A},TE4jaڔ"෾;08FrJdgff#BZLqg k]7~d3PFh$iʂ$]v"o zAgaFs $D ~8It9%)'NH[#)W2lx8p?R怌m2-;9V t2u~_Cgz}<՝2aia7'wyR8>-F As;hR* :5eWG{uT=vkXl(Z^)=Ҥ6y2`zz~_J!]b_j[.<=6Ca >ZYu/g?y^ Nj6V'-hvz8Z$ O˗=.iLpUT&`ϧ{?b $=v٠>EEN$;.] Hk]T;^kBE@\輠Mp덌)GŚ;8v_v`蠸 (m&0x"GľhU)TB:.tBf8$.KrKPS`+RojCm8`|כ"=jmI4?޺G.?Ge/6k@N%wEy/~QϨD2 Jn:~GO"(rA%\ku&ɶZ@ 'l˕W}>/cF/#]XoX3bcTq\B6ogpfhl7DR *%vBJ I˳9p//? _j- (, Ų g@"2ٷ'@ Ҫ˘!<#0!c:MKIQç"baVvxdzS=0?UnO;} hCB4D|<'[%_AL*&C at fUFK}2Ss&i0i׶q_H[ҿӽH_д:}(~~*K~ \J*`}/>xg)2VE4tgjI [ܶ{Z@=G#8-LܩGh=5!ꜾդXgFyՑxŻ 3,JC\^'$B_}Xָb*7&6J9%V-2 zy}IAܫ,-X-xTܪ!VaBIA '֧JkfПŌERP-9-Z,̑t9TݟٞNrx 7(pv?0:1@4%ĭ{_h[]_OF!Ur[j@GQv:ކ׋uSń`0~;v7,5z,<| ϵ|J:*y rRr[ z[y^B5DsQ5YKd S\>ZBaoTdfBb6 m| M&>50nrk,pcC$d$opxVa9.^l %RF׿naɗ`( ǰT@mS>^0[EM) /pO{qnʡYD&R {oZ0Z~'<(?z vnbkr "E#f!_>ItiA)ܚe”\R]E] V>l#IV [C BFi2_T7\hmv @`w&|Tmr"LRۤ*Ywmo+,B1L ҟ#!jѷ<X_4@[gYbuw`qߖCBg G ji[*e\Y썶9.%|? K o7gX+$s&FmYY([Mk[0VaIalnAA)Z:ەd Ďؘ}tXfW ;JuUtP- ;={f%nDr' / K1U;% c3h?{aN"?nQɿo-l(˚} ~? $Ј͠g@!UVEK`~Ѐ=D<4/ѿ<,YSa4c?gpz&bJ1ȋͺJEժ~VO]'zlVHk`@UI|(Gfe$C{ҳ/.D[DZвA1Sȏ_M[W8qd @}^V͘wPz"'|RM+NP "S]mD$qm+c]Zy߲bÝ9o dYB˽1d))>~e?%|ExzO'Z\f9ڸ NGdyLDrEQfWPo&O;|pXI+ɏeR7&d@ť!}ITgXoMM8q%?:,?D'査`Aa_ QE%Ev_Vnh³߀O9q ܘ mab%Ng)/5`|Dg7G[8Ƨ Q3v?dqS}o0@i<$U?LC}Đzj¯*N"+|hZ26@e2QyKX/]V9~-P1=mk ZΆˊvI'jB㵷œW!ihM w#\mP6߹NITO;U9YiՇZ=&:\YcZ9&xa6%b>ۥ1YΎ{*ɤDm4ذ @}$iMGTdQa-gA$Ţr%8M7ͫE.lcI SQQ5YT0x`"AXK4J]@ =L,(lȇȲЖV&U_l.JHu:kiĐؿ m[3_(?٪u#?|EMӸ3&*SBऔ ȣz/z_f}u[ JDZaRJ8ù:Lzs$@эAsa;oY=Hxo 39w1xg$Q`Av,3l#nR`!sQ(GU:*ZSS1?̴s tYL~il1D{x⒔MDëqqģVg&w }P`\"* FoUS &s`k 3@A PTOUE( =\-=#A>8; eڠoxvoG_;eeje?sbd5{ IM>aJM\#Q.hy!=/kNc+ ]:*P;"mDz1Xf=ӗ kw 7VclPK>… ~2) -?n5:+ǑkJVm}2`pc_N(HzFs`yf)i/U3eA*ԯ> b}Ǝk5_:m氬etl* p)ZSB}u+{ѱ~*~?VcaSIO1`~἖'sfr=JѢ<)`o/,9 -.(6ql.ց<39."0.#7xl[,Y_ 'Z aGRRL:9tK*moZwM?KZãv,m٨ƫ O/ٝ\p3T"qʟiڴ ;A1Լ !FlpAۉ5|RK wֈ0D cR 8>!\RVȫ+8596YxRԔU3EW(I;Xia(iJL<6`O@RQ>0Q 3p TԻ'e7[ =eL"a$qLO\Ko "qb[̈6 pC.F7D-utrzdCxJ`&0:>l*CsތJ%Qdoi0V2B|=Ϡxdc L _ՙΊ;x6E=s)JQy?)gX[ǘϛת١h7Ea6wYAS;>l6X2TM˾ Eq5PƜhǸYg'`)3oI-d36.*E;;:uDܭ0ț\Rg/;!@2PQBs`[=)t)+cf8H,RڥjȩUץ@ 73Vޡw1NYFWUs<f;2ku ÆvК\5 5T {yqsA/LEѐ{2dU{*Y|icAc2 (8\2 ~Dy= ovQE*=Ζ$:(֥khl\~ȄjhAB X_"kYt;kiMP!w c读`kf._oUݾɮS ,2ӺЃp7m%U v \:*Ku֓dlOҾܾ ;Qo/ tGx{EIƶ;2"HO]ڹ-w;{O %D m,^׎SN>P-n>~C}~QX&M[4d7rF2D]k lǏcfVW2NkhS|;'MxIO] Ԩ)]:kBJqL/UnnGC?y7 7L_=`ۈ`ؼ EjTDCED;۪~qpòCC~ƷK;YzϷ(e.c:0 ./2(a;GDA Cz#^Hut ].5ʉZ8<,/W26kA0˘.rV!BbNiAUwbr9$˜e `a3dׇwn=cz#Et-s:!N ,*ɒ#WrL7ޚ=hBfaYnft]!f"Yn0𸭚ΆD]C0s fSLy"8w;b16r.$e/gE " +^UH6Y:iƕ0zƥk+&#{'19 d |qg;F,,#%B,Qo]$ϡ;1E.ܢ nJyu ӪΫx,rwb-6glȑ eT$R67-H5|kngS+&;&j[x}]jmd?AOo\BdP:j?lTX";,MZ獴i #,l}"5*xTW1DaU*1 zK9Ú5&i >-naZEuqis! BъsfW}Uث4 PDDVL'ŇI%Spy#+tmi,quewl\5(Fj%e%T}{ ]P9$+*GF&ڳL"kmpRd+jGŠ JL'A$`Ry@wGwKHXYj>uYh G5v)hWn]h4ʬ"Wo$::FC fwq#KGܦ%@y9܉#żyLs-,<X;hFݘ8%^CFomy2@QD7 N&7lv>PeoC'brda)RcnԾX7! V3LR%?$~VѽI( ߛG]mPwP>0Gx:]<vm`jaYV{ jƥeU=?GͨLkFV}oC&ד=Mim;rA/bĮu+Y$L#c,YGTE@]4Xcb AmxST߁}6rz}wsAN#;ycs ϴcP Ӫr ޶RJ)/3y"[ r5>!ҚʁB?-jos,W-ܹ`x3!lK/yаW* Ȏ e,a^axO~%#(ׂ j-yxTyZZ2lw DV3sҧci`fτp~}Pt፜g`DٮNʯ0N!hߥTb!*jV<2iF;/'"$ J{l=hY AX0'`G>Ջ,r,\}VkU$eNc*žmP[7SCAyRʲ%QQ…mdedQlA>=p: #_,إ7!8 H 'zהzeYzх+Kkwh/¸O8?B+h󘉰O`2h8<% 9<#obe;\b?ܞ.kqT p@"[];`jh8]31* "_B~;yAmyť@NgZ D:W8V;}|J"gOO׆ Ec%YS-uR#ƅrH}D?DPY/yndT ;;{8~I„!ήfrw+X]C2\}E6\( K'ܷΉC1Slq?[֦^#2۾cϢ,v7JFOx ^v5bhٱgcy/تD{=1B6UU1ZqcX{TF6ΪP+SYq% 4B0 *k+f^JÚW'([MÄ$IGx-KMQ-rӧ)wKq9l[h5!xۨtf}MC/Ԝ:;x}qhO]+⨇F{[xAdL5MA]-HMm.i·zeB%9Ќ;c /Y[HG98IgT)7PmcߋfGUƍXVgiv Sr7cKS;&(`lD;bxYt݃Jŀƃɣ9\-n>6?4|΁99a3 `p#co)ǡF{X9q7QtVPPy2]u"|Qks_#.Re idꏟƼ2*,ڒ/@!| ~B. 9Fdy @^ݱF5&7|xyenE%¸(3 ȼ 02[pKV(+d_db63i Zz%OiλKX%2TJ`J>hN:+~_<\,Z6~*É74CJ>FQHkn\}:e R|Ĉ̔2/VN8hI=\ZYY+Kyjͩ$i֙ja(VXBT.Լ[sW8ܢshڦNn E0gUPRLa )}BLTء2PnU+}ۚH-s0|fz.d1vJBՍB^\o`&AP\5. /D'Dxtp >x4؞ QU0OB1>.lOb`S]L2w~:+ 尔sՆprOx̸Y#l \LI[( {{pX/6rCdsitb\|){ߨ\[pa0Y^ G4Ua $2PN+р6à>p,(s>toPjyC@~H T Z'JroMlJ8UDU ~VbV,K<ATTl|],mTHKN(Gnq\Ϝ _ vbU\ʰTAB&:\KOk[/ʠh$xkDW/5}+2 [Ę2en{) 0MW5jg=٭ܛzRE$f)n]o?a)yp u!` Enuj .65%f?6O=y-,gu@IbufS=>UIܘF u rli6a&q0=7MQu+N}گ%tt9751%+F tGI-Hl#[|_ƀ=-8*n(IБZ:-quuBaYRl{~U썝<3gm 6]rn ~PI-$Zh܋i؄+}`4zh<%nBǸ\)\J8Ӡk kL8%̶T^?kvf˜R6?hv;nY0_D[ߟ7qPЏS~ZgXF[\RAjεh OG {F}kGQd @̆ho(#vE^ׯx(y8k=۵+P ,s28,dvq_"mE+"+uzt qct3f 6קm96UgYYYK^Z QBg!)fVVCD d#6WN.jr vnay=^&kdGHOZAp% ,nL?z6>~ [u^B&Ϡ[yLasc%m G~Hּ횝}uUkxr*yP) _,֑jֱ`$f<,,nD{ C~WA8A^\.wY(r}w>`<``9cQWMYNÜlEҐQ{>pA:N0{3B?'S2U?(T6.Dw @E}(!M3*9DR/g: = n0֝vӽ4`<8#5/)2!C?$Bh{d 2Lrl78!$5n?_ו*_Fqa, fҺ!',$poJaS"GrK§$dVTp[ TqR H%#9QqP9&!P &a%HS}Sf-%sn[޶Cnl.{axko z1eLYtcƮ &,jU= yچaEn7 89BHrwJf"(fij<:SW1L) E+'|, :aF#۷VS*6lgCh8s.=dGT͎-6nThkt.gJRmiF=Է6TjM9Dׁu"*>ctO"F ឳ<kJɓE/GXl^֙mQa!&!)' 3bE̻ d Vw}ӜiW8F"KD@5BR>qv=4f$kֈ.q@R%Do$gث7U!/H$8C $IJvࣁ:s41T`@!y÷N) q2t/b~YM&Ў.۾D୻zlX.qv0u6!^bRf`!#零2E{pĩ@,O=8;FUŜ47605~kE$^KƤWQ*CSxfI,9z|SC'`6w霺'cO@cFa^917LꪹÎq;D%D5I7vfCOx-}>:j6*T8׼uMo/q}Z.w'P%7|aG:Ӧ؍ԐS{wVVQWZNs&2,aC[KdyHR'•~ACt~""e[WSQNu jy=5 \K&aE#=խx#ٻ"mV,=~LV?]tbØK5;2$,InӃd:yázßLBCi"KTH 5r@grka缋qQ!> C` K^)9&0鋌 !|O`"a>2Qao|CIEU񀏔4= @mlx^ת•q=7Wʈ7]|tC(=zfK;zhyd!472#\k=NeǴ#3Azac=[-IZLk1=bx~] &\svʛ :xx|/ҶHOÁ#;L#I ULIޠ67ce[ݒUX%_ mCY~D ൤Lw,&ط~}k}x#6/_;gdOSש$wۉ8VvACG1@, v /Br,%4>vʨ)hA">Ț%3u޾g^91q&۽umտ="=(-nE ;|^~ɷDL:m瀲' /)>XN4|b\(9=].A7)J͛Q#AJRޅ0Vg@L㠉[ip|o>]L QT`m.G)""Bk* mY,*<񗖈R/fFA [S+aZ Hi|fǤ.܈rSd klcO+: 8L'6s|˫yy ?)YI.E'hIn_/#&Ҟ2?q{2=$w3'I&˷!);@J#3P;@1jyJbASQ3N 9Fx tF*9^zݕ1eT,%.6 @wK˼ Gd;`;7r"C! -SpF:ù4^;{lBBrD5c=X t)}}EZ'n?aq {ڼb`#0 xش]%_%I /hlx0;R콳  mMD}_t9JpncɣN\KL"B{cҬXˁ9fo YW[ޛS5vbm.A{ a{HOJ#'ex:]9 !S,s]CQtuzc,6)Xݓ'N o8~B#2gS7L VP{w 1AnhӶ W@TF pA|QHl⻙Uu@铂2w?M# /hQ>-4qf!cԔ7v}/,ElU%ǻg9?OoJ쵘▃V?OdA>136.*TWf;ǂ ~/lNF}eW(*m^d1kwxS|ij:Ƈ# 2*vG/~KCc$| aDϖm(HM=$:GeoȐ܊@65fuEa vXؒ/lߵi^Sy[}Êx y|oWhi% Jc&_>\8<1-Z z ySCm'T] ;>y]gVav7/yPP~܍݂x7 QǭN Upm&Pz|qiq.kRDhĩ9N^Qa픏dB iweo)QC&'%v[a-) Coc- Wz0Yv>hh ߺ}T`bjD)4u63d;|ǃQAT@ !^тO!sKeK2!kW` 3upIBmV|ݏO6OEH,${|<7G}M$Ǜ02MwJ Sy5e r^ƫF[؞Sm8H94 ]WT-il(]UjdDc}rj[Sܗ#A}=d\Ԭ2|ǪE-&U|?ʲ2-1p1 Tɂ1T]:{]'~/o,gx:E5G\vH̫K{:RoP+>DG?GfqWE `F`jiL)}w92Whu>yl47]k)/Lq_1gՃ/F.ׇ霠}'3%y'F((*薋"(?d >M"NekAb2@m3ԁ/Ҿ*I( k;F7*}Ho -,F\ذ*{>%>bzINK7^·rf"!F︷{؇ eT@tEi@YdVKFY"J"pV\w&v-inr<؄P: Ëfd?P(&SU&NͬWE+5'TzY|Syr̢pUX 6&9z!8 u yf|x{a\rDAG%H?./ KJmna>@Q,U?M=N焛FԶI`|iˊ"i;:ax,wNՀ?l&*pmؚTH8x4J %^9Lp1$tl~ ( U蠵<ɏO\KkC4B2SWs+Vʀza\~_rqԵ< Yd -G*1 tQY]_k|_bn-$)kWژK O5ț&)3H.yiV0&^D~œWG CJmbUWc2h>"TH4u w9;zt ffbfjN>UD'wOܪ՚>[v j~!Í jw1`֝E{z !%bٰ,BE?ș" `/knXml6ϼOkLN :;8bQ.KG'O@#"cי#mj쌪YD7- yi6_1QS"M ⍲uQ%zՒ0u#X&TJW}CEװЧuL7]_T/HԻ"o"-/Y z!_=yӓ bL`]B v&(z3J$Wu.l2ÁN;F%6Kb={{9ⱔ=حSfxҟ'+e%ߓdG=8v*v# VfF0w>5\G".FىRTv!4b QN] Ghlj;>1ʋ0 s;dMC| PФ4!׍/1(bU&)⪸uDlrVwR{%ؘ%!{|>  n\$l$qc0ƋsJq_Y!3㈨pV&96MӃbYLդsO{ ^gɶl׸cN2-HYl!L3^kCAHd$鱓vE6jAW!&zo4!  Mbʊ:.7OrYn/!&FsTÑ厤 Lf!_s=ZmlTBIBKCX \zhqpg'XY?k#,u$P$S{dpr# S4 %Lrx \N4$gjq*@!}t >¸|,p\B -gU: R;_1h>eN~Cq":?p)!CBG[:XmƦPwi3מGw^J/E4Q&kEKWmr.;Қh/;!w" Q?S*f ɨn"$/UNM)],O"-  OP & ¼nCKJθ=?Ȕ9)f*(/JqFij7`mgRS{]kf":H ]D gegzư"HTVxN& lԉOUW$|;Vz&oj5">f>$4[n PsDD"R褨"tkCH&)'DRY[0ٛ)1Glkqٰ*=я)-GQ./JJW$+vC1ΦtP7U˨~.ppH@$f[ܢ_xК-a3BAsI9 cs_e;g̴eC_6{ }I=@kHJ*kRI %AwW˓!j=.j*CBQ(_8s7~r: h:,g@My[9e.%<Ŧ eqbcN u sA /mW,[ڂ7dp&Q|4Q8ܬ։0CwGeHeI6]EMip"aףմ9P$ v3}_o"SXy<"jծ] fB}I^#: G>'FP~;5?3RN!yAWg '%~׆QLYGxoT\JǠ 5aR8-1|a{1EWZb^]&0Wʴh΢U"\=AE7+ S7/i'1Ir<>s'+mlbkw*},)ITF,Σ84d V\43a;=0?Fj[N0ó"uiXW``a{Y_]Xr1U6*o.&(?Fz俑4ᯇSxk*@j˥4-0φ/EߢPu}\EhrWixq%z1}nLwJɤϦߐXcl#]Zb{%-rFمR@W>ug|3Z/a6ƶ6 O+0F>o3lSHsV`(]ICY0n+o暟1%{TãZhDtgϐ#Sk,;S;YLO9;t}j-6HH(xN%*`{Zq\"7F*`14)R?C$sBAv2q]JQr( s,E=@_'S^Vۂ䤺0*7:]pFE/̞9F]I*24ؒv6@dف-巆؜ۓ*g{i.$mP;Or)Ièp>HH[[u^u) SW-Isd'뭬6F?R_-vy%q yDu)|YT dJӓA'\&D57z³ppbm 7~5|Z{M?fE+AjV 鷵ӃRKaS;MEEA+E{5b`2 D^֏R4]U5_W?RԞ`6=$y՜jK;EKg)[(lN!6 9̠g:0P'`C @8 hK3QA47}6ϳ/j݊n3|^HjoiFbFц7C pAyFѱA z5PQfi;v `sюh>*imI_mORPTil\i^OFωO4P;-MwpC=үQ3 MG.)C-~^c^q){b[a:HfJvM6wբS* lOoXB؏Aeu \i+P Ixcl'`6`]{I}ͨN/:`*)m*;/n~sY'ѹs잮 1k]7wUێ\[p+±oNO2JWd _XRis KhNeɗ~+5Tb3-yq~ $!놸i~wGvqe+-b)- AY-/cGPE872kTcubjmB1wLNzb)5F#7@Rn>@ͻC\^9 w ,V6ۂtnf#Qw 'ӞoeǼx< 7"]֦ ^yۑ7e|kYM΢٣E+2ަ9LG S* KT. p4Qj*щ .eoD$8 )#[Gl5 O|S]ל\t]m t?R%a$.f1%SZ }(ńKr߰E_Gw:V/u9~%_1U 0#.$7~*^> ND0 X1(y]I#YPE\7gtr{Up( - E_v'_26܂M)0)οk/ lB9KY DEH7r&.M7n ʝk>ǰ!OVs&M0li cSY wqL XIZMz=:xK"_yyR J`M;eF#;}8y6!8RP =#V@[O{x^Jp\\c6HofGSFnHs[xb< 4[$[Y; V g2߽tD%G$Lc[vjfTc %<uqd/3NA\ʻ~,IRpJ["ui{z>nJ<{U6gADobJ0I`F ')>0 ưJcwuNP'4k~e㼴(F*nf_ ,?G8b'+ nN~0奲ҪXSY F|C[B%\' 2_fp9=ڼGnU|b;w&PY `E[Len{^8Z&~E[hDe'F!2ЉA]֣m~- ޚ) )#766r|[G0)Yi0,mɀ] pF 5,ۭٱf.X$1AtYd˩u-kFPOo'+a9ąۊ+]H^x|9730;N Ũa8h&6ol8S*xFCL R GZ/Q7|æbI+Q'PF1 c?wu#P$ŇI#/]dn_dBG2WcB/)puO ؤn>WbE/N&qR$p.#dԘ vtqFfƆ;iQ 7>HY)f-~w̐ճn"4{" >FrR;SE&ϵ^B@‹gފk*=*{zc.$,1yDoN3bn9' j^*d78#RDŽ.}$}ΎEb\6Mag3-_V+\c\>$U{XU_lCР \odp(r0XT3P rm(B' i4'ɒ-IE~>k Q'VYNz}`}X~,/Λ&lαr0ރ xp?Uہ}=V8i4>(G7?6ŗ,@o!ਸQ@u`Yi|qؠ*fV;9WRi}/TeQQ̣3vaRG0}TBaiO_hNق.kH_~RJ߶Qlo0Jh~y4P?"nndߨb ϿB^>slҊ> +E6nz3?WLAʅG |/z%(Ե?.H9듻rtd|a*m:=G1gx8Z;TXL0<=pj쭐🅑6jx'wbh[U,pDLJ[x^d:I` i#h1ٴ-dqJVT; ߍ_ !z9 ؋a~&.@ \fΤ-΋ 0?(5fX%xsWR.*?qӇ6A9r'fdھ^- ]8(C+2Op~l M@itHc;u>c@эeEA<0ZCʪ!4IdkNǟfژ8qݖ G^-J % bb">:G,_pRh ؼG$dʕºC{4p.1` K$x\S.h!р 60ݚQDǀ DG]r )mh**lh N=-#H&$5֎-..J^lڔF¼d1]!רAjp@D;b~Jnm1Z\庀Am@ZOS!?ꕝy=ɛZ}ߒ,xf/~x?ܟd9E kb:A:וl1駩ssrg}qga13y_'H?kvؤ.iI~`X9>hjm &VE3}[r͓ˏ5gyr{Q~w2x" [I-1^6 H05mdl댱:x>89?lY ^5Pp][ yjY`+5hz!~}%(5`F9z)_B=2wBJGߌ#sHwC5,Ǽ36J*6#5 v6 O<^DLE}r] 8_N3)*ҩbzТpY,.2줞Ù:{8qTDB[0+;0?$vf4Wh| Ӣ) Sd}StCןR{Bj%I>6xGNМ`tF%?v4u$xy!O/9Q nȜΎڦ8~?©3?94O@GĚ8\dXyKr>)`G'EǵǍ|JFV1 y7ppMi<1,A_XM[:}qh76d{d)N}QE_c", ϱ/q3 , Ziд#rXYdE񧎿ݦ:F_<]wJ|1K=H;"\Ǩ 72f5y4%# uCwCmoaE$RPuwoU+1^?H!OhH9Uz\oeMHZDN0@ O-H7'TwAGEpٯR Fg\*B( Ah܉]iL +*kb.| uyGi5b]OvybWb6Oj1aB*5PjhrT3őgLQs||}wwP%i B0$=B#%;fW?_VNnO*ҬPcC#vg3|>RUɣ [5QwQԧwc_ZYSǭE Y)GNU7lqZi-?k*87;jϒЬVth&{xtVgj-Mt29(!j?++k >I qT~~l1ܜme^xr~L۝6^E.!6j6d+?EJA>x(2voo[Sȯ71s))曟ٖ!cQXFMMcl QI6,EGP?ݰ)z.`A/F!kdI)(2ᴒ8Z0ͰF5>e_y~zw^$֒'=)+zak&NU gOf ܂pob#Kɕ16<ړS; {ˮ{|A$6p<}x(@ieaLb|&bG̞܇" _̘`Yz>e+}G!K"|CIzËwVRٗs^*Sί:ϠnNu!CT@h]|$TҿMtLdP,v-5Odk\{90?2L:jd,lCpEpL!,̣V]Oqx.EYduLxĥwĖ؉Π=vI`y_ vp%w˫U[/sfM\sI?YO!t xbO%GLG_>4d/n]$LJ:|B"r}*o|̬xہS¹O{Av6۩ɵj3yhKq7j~}O .~R^ӣ(Ƅ5 |eA]m=*1ȧi$ϝ,Cg +uѫ$fFd{c?SPq{:mZr:@qiX˨&`F 3oLt Q4߂|o*-mE:HfS.Mfoc7ct&30tJff8OM@%WQ?0$tܝ"( b}]JV4†B &nRZN)xe^izu!gP:%27OGN < }# _' 6JB}LK}-1 auv#38/ CZfEG`:أ%)puGP[BɢhGz}L:@ ,|wxM&Rst-9vKP/'b {W.4_z_LEO*X~vr4VʩFVg݄cnK>&Z2Z*` p{a֨*TP̄2),O W F_/͓Kf-ul,&ntSeIM@Dٚƶr|0: MK\(,?<#h6ȡ?pԙm.$ N7>HH5ܵ>tfX$2{Qa6'gB57nHxuR ("Y[>/iYT|ao%'chNuwİ˯[멑GD0gI#xTO/fb0pA!zN !n(kfHW֬߇`f-$)(0ߋͮe\Lgy)FSk`3bL7}ubt|,or&=:|O,%rZi(DYx> 7Mg6~PKcV+ GI Ŋ y9ͳٶW,s'h?|! vW9!|?`=pbAM_|f-ޞ'Vݿd^!űa(;#|:fH՚{Nd)mzc2~OoKb2{mB~"RlD9C,,R<5y #F MN {־+< 8 Đ=|ЫoGp3hF.(~.t 9SU ]ԇ\ַj{fT"=+-yZQi8﷪afm?mJ؟G&y/ݮ]gi?O8'jg' ,@C*kXiǸ){ݓwPζqrS7Kp8߂G~0N A[R'|l#br2ʡƖqgQD^qe`z) o◳c`>^AO<`gLsFՂKjf5c˽;>bɡp}'"*_ƛ`M?*Hrd3lMFO+M&m!t271-?)묄ȗ~\N V(F Z+1b!\W"S,7!vP ,EmG>+;Ʒj)D彾 H+C6 pA{gm,踼6?F)'I6bADZTh!Vɋ~d4v!6})@ku *_M6!=Y&\p$"^N׿4QiwhuUX6XtSr9HX9a' 1W6vД\WI^/+̤|=Rh֞e6S!'Ihwˉ1`O ǜ"d28ߟ'Oϖ㾡l{TAucGn]y ţ{9y?vzQ!IJozYhGL-ꃯ'G3zz`bMoKZBOLB#&1(9>gaezeDrxdfqEb3AC ?L #G4`A ',KuH/1žs$oI~aawiouYQ;NNW=}hT }y`<|kËHP҄^-JW񲵀 ǚG~ p}f;}=~w 3=[~4x2+ssZȃ^uq+_|AR}贚wloCuJ;6uU>TqlS/ߤLMh*9-0 ź5xuȵa =g#93ep9"iz8Q&Um*–'I# ۈXq贜+hymE(J_m=Er'/< Sr2 AXY\Yd#tK!ap @xYcKf:'?zHD2D E4LR%mO";&b :/'i21bĮ2r!Uѹ6Ƿi(u?)/y]tt.3܅Q%۹FgO@ \Zo)PYxf|<n&WNқզ n'* (AKRpIWd_i#Y0fE{𦃱:01fR"bz:7}ޑ_5gi i!<6QpR}>x8)[b% >U9.G]M([l܈Va:dL߳DM_VO u&OW5T4t:!c#=gŝ'" )ln^RWXxBBCP%IZMz>/zz%H?ψ<E/;RDi@}fHaޏr > . \]4~C135XTڬ@*j EW^qeɀ&liX+7fh53{J]r/&9d͢늛MZhw`*_zPJpW߭ymTV ?jɸ<4#MzmCKUG@OQ"j(y2E49h}8g!l5]"u ,|~uF[ Ջ@e,?czb{'{3׻ `'!둑:%'>IQyD׳ =7;ۡóLygP`zz8 zNne^29hnXxmŬkL?2 )퐋R X VD T6R\ڶ'=Fi8%q'"M:ec$39ւ]}OZ[ՉPPFǖM]*zfbjMHNօZIhril1򘄼8QxnV˦cGq%b.]E0G.Z ΄n$/ҵtYL2^u/=D9#~lG$OkƱ3aѡ._T ``ӗz &-i_abw='Y򼍦 =>=ŋ0 ڝVg2$p@f.\P LE[$XgɣY2,c"ʲ#[LK@Ij Nrg!Pc#V}bc?=|s]H/.B\ccFJ@R߆dfVÃr  A^Ɖz hP( ]nM!ZJhzо6VevFp:xy ¤Rpb"2(l >9RU-lnpRVQxvcȃSP08)!6O$(8{Iz&U{:EyoX!E2tu5犼`1k5&Q!\d~}Ҵ`$ڕkYLM:iTxUV.;Ak[ _8[#\(/.Ւ",pO 2t%]Xm,x&MϥI7ѽEg#6J;QDxsS )WGNyy$4?5VӇD>d22U Pe+GeE' s-u:Lv P04h#)/X{3fgs0 KR}w.GQmB:ѠR"Z<р$qv@ ,d {]˂oM@ff\Xӹ%fܔ\D'6FDk],dbGzwY}i%XLhB9+HyG5970^CyU 1e_ˍg!D7G)9 [U;JqMk:γ8`MCżfp uk޲Xu~z 8塕זHۂCdwG0'<>T5JRLAfd>"׭EՉV;e_:mPU("oxJWUmҿwV 8$y qncgՎ!oAN~2Tg^5Uz.r=@[!wL2T gZQR/mF~ۨ 0o"`ե҃5?GMH(ٞ}sԂ `OkϜ8kOyE`LEggM9U _s%B9M4n2wZ+qՒzxI2~b>JDOlR ;9`MW1 gG,yaY]JH4'JG!/lڅ* h<ШL$_WxxgMb^X +WJa9ǘ:>.\0~J~}"loKdmUF5~{rA`D}4+;(oYQqVP'$ѥ*uo>pJNc Uhyg L%x_IJ .#6h{ 61~ Un|{lyIjsA! ORnblL2Iu~T>(X(\JKA c:5zSpZgc1C *nN:j0$¨&] tV0e.lk\Y*Z: RM.Ģ}SRZĺm'~^ҟބR={9sK<A'I詂;u6(SeS?T #V:雺EL'BԒu0C29ÕrğD^Kige^)HW8@eGJ%8Vc2M"x )L8'jtf5R5M1^hVQ\pK(u11l5$VB]_>erdQң5֑K9d z9x}EaډO%JJ$秌 IW F2ޟ3 ğ~~qY(:2FZN`ݍz@兪ƬI-Gdqsij p"Gs2|MrSBs'I`9I5 o}G'sƕ=MS1c/ 4RPC4EHe=ז4uJ.ܶSD0M;虞3 5[*vOb,OU ~sp=` 0َ^ykQ]d;]4.~(zySTz!;bZ#aLS"RDFHUg?'])28gIf G 1|a:07;K⢯5hN!C9*ڀ"k^'qY*,by,n i}{prDlL zn|LDE$>h8o Fw'ow;9$9zbT6Lk%Oހ9}QCuFjJBFہS"ϡyk.ZX`S?+7h|Ԧ1w #*, z5r" ݶũ~'>m$, !"(+Rf=HH8,’'60GNEEwx(춹JV*W0,k_U(Xt`Jw:6 t|S= TPFC| t"DIz~* L˵*!׽¨A1Ij )w=-+(>ā\0RF| 5v4%JJn Q9iCGƑ*=&HlԨASA-4K{j#*춻 I.q3'"e:}(f*d)" rds XlTb;o EY@V=͍mh[д4 ω~%JL-K׶Aا[t=\%+4CkB 0H#rǍ|-5@;S"<AoBp <KET7(䙄<.XP1< )OL{;iҺ͔Nap=FtVM01ZR]sFE0Ȁ[QAk1}I Z)_UCb8S*]-hs b=vS8m) G?pXn4ͅuz@MZ"Z?A +)>b! uO#U ݞSxu!ǥ琅J0T ^Q0mvkx ː)DVoIt . Yؐgg=ݞoK˫l𨦬$t HD牪6 ?8P\3u<ݾDFSe)' W^IeYqXZgpD8B=_qRzv}ׁ\Q~v⎇L it?kVЩ>ew r, ZSb4OͳF>{s@yFp⟬~ǣw¡k%]fفT$+Fѿe2.}8'_z/ $;AG(3Ur{{͑iYLhN+0A04AjM77*]E 3^q؋6Ȧ*QI;7$%E<43D 'Q-7 ub)䴼5u5$vs21Yl x1h?,FB*L:ܩuVvߙmRhXDbA=۵q&}d5q>N̈ʼCik~Fйyz[&Psq.q7˟p2![B#a7|cx9NMHBTBFÇ^M[T=Ѱ AU!*.F n;_0wzwaF|шٿ^c*HEqJ Ztlh(&" :5mWRZr +QfS'R-| _aӯpBDkȩxAU@#a `go&eiI;M/!D#E_KH@ڵ_vE߇c Ќ fK\yZGFI8},㰻o9ݺ6HLq.'-[wgS~f7:B~Y\3_=dP'FbPm$w\dzѱDY00w g8f( ע "@06|M)Aς1r B#]aQID/ ]D%H|z2Zћ;eB'+3A{ ͏w zEsw /UE†aN)rd_l^R];4 ˶/ÿgQ5idEږF̋Pz*KxV+kt fݱ~._PK#lsZ!vqϰuW,ZUi1,7<8%k`v$3QW3Cb`X>3N;'e"Q0jhZ3TN9@ 5LH'њ;u~b(lz|z2DI6y%@ t=sa[O'+p>2ԚJoYE8U|DЎǥia՛ E %8CX7' j y߫ S%ԞoD.a곑۰J;_'JdS؁ܸ|mO i>K #\|1 o@uݰEyS6ËpZf/nMnUcKgrۅHIN0W1gIgF7~ `[tLĚu62V즦|Zjs\Tp˲hdGh-'iU)73q9xov5FCEVfŷwh[;`JgE7l翠˷됺ںdZmѼfyUu$ܳs:2uNXw-cZl?F=)i,k(;r#rzba tUÆUAIn{>Ba'Ki;W4( ?rl%!g${p $Ri냮)jmx6:K]u]D=`uK=3ڨt.Wf.J/@Ob9(>q-+:vIR](StXŌ3'/g23{YYBA3_F>i ٯ`W#B ì̗a>S@;=|k%1@lzBg{yWԀ`z:G_ M(JkWOhz%rh@ IN O=mI 3w ӹ!?׶Ȳ|w ?1+FH4l?{s_P)]`М,"kvT5z+)u#AoR׋ի!;5cKv^?qkn7)8ae4Ue1ϯ΄}ӓ8` y<FM'м!%8+=E:^mg͛33jmmiFPnVZ<F$ 8\~}WE;f3=3u=)]]2le@x_(K֕**Ru{W.Jڬ73RأL70iq }.uhl 7 lz{2{ k뭒#I`Z6^b..~N7$SioVʈ*7$1loo]hkrFi[>%>ffyS1[Yh cҍcx@T;mh2Gzm: {dHa Ygt%ٜ̃h%}ς Z AUНp! t:zo4} V*kAW ^z0E1ZށUVvrq u6sXgyHysq`e̬Qlj0rml7Y8DSNvI䗄3K^aՎ@{uZS}xzy͆!5De74Vn5Jtwc v!Oʮj97VQ3tg?hq{+2d aMrVJPƩ`AQp+pf\RTVHƈt"."12)T/cUq.ʘ#|I8t DFN2AXmIxq˪:X2EʐUv._MrA\Ի֠E<8: v@τJVDט  ˑ)+ sT2<7'RM]w7cs0e$.瘢3#EX.:˗ڽ"l{]0b2Tj|wNͦNK]Vw<-{M3A`z6 KwwJ UQ-ry=4^+~ճ5TJsͷDž9IDZ a.274vq >Dfޮm r Um+;#% rL*Egj_8%+ hplRB#^ͫPqvYڏg-^L3>&0H'sE%_j%\A~؁jd uah+]d./zӕuW`\SǢj /~@JcՁ`m$P^^o7@X['Pqu,cOD#Z;XvPZO岐V.;|WSNf0F.fKr,ܴrLw_ZK/ P(؊ީ ke,6K,BV‰{0-AzYOF qG_K4Z6~&j68^ND߳ #'2yA=z7eٶ4۵~~s+Eu@ڌy1>Fc"dXP@D_*x]8/|Z,R_ޓ w. 2Ǣn@F=nudU=_whT7D5Ƞ g ʤ"U;R.IߥW }@L\-Ɯ^PM6K#s݃4D`n ׮1^}Hkh9~ :TV =K)MB-q3$IB5)l7mԂA>[m`Fص |9 O'ltƌvϕz$!87@+P˄$@yK`2pW\]FKm.<_f $,IT[GjryfK]N.bD1!7:Cl=-e/Nطl{<2XdwcӪ\e%^:q!.SoLf #d IƋ〙(<ꃍ'{ȶ Q BZQ˼(Ւ?YgAzr/[->E{ї h%L|S@?}t/f+C?slS,h>1,*$d~$vG}n>*N/`ح~d W=ڛ7@)y.@%/y6*eSʊ0=%6׆\|?n7KI` >[#"a|Na(ɗ_̷1L==pH~g;6TEK9qô7~e,avb r e-v` Iƞ׋ _eЇ\Y)󓪗̉**< j\_[{\tokj8^"+zRTUnDSβ彪gLl hNYGm?+.׶q>,d-TBePi s<|HX{@ 0;؋/'9Kp8fE߃[9Nggnغߏw Uar6wj$puNXf\BT >#FY "J&  &ѳ)=K_  4Eeh#ui*r\Qň&ƉrM8X*ۻ].[Co-תQTPbV[N[#z@EKbSl2ckBlq3o Vj0=5 ZEƃ\d(z0Hb9X^R\*W1XN!`ԹGz3hapMTNTuE'= A'~ ݧk]d"%-j?tI7./eNEN 5y)tvñsߙp.5OCn{lt=GzȞRRv$7A9iL>` MAжX뭶S,XD0 ?ҹ:ͭI_R)E5 hf ȷVz@ퟤly[n\ёf]!yI#=lյl,QF@0aUqR=Gv<>?k(ߌ|0g03x4E5<;:]н7_ LHxo٪ŴWq#fBɖ*p 77e5tN4gGTV6۟]'&Z\?+`/D+^ICAnthZCXq3fPO EO)"&48`DŽ!vFrEYw ʇRm ]}nT7C!r TAT;5Kcܷ"iFhj`<&o[o$mu#4G-GQ/@7U(QvN}q7*_n63Kҏ1)|kjȸe_|ZC'K̎ʜ@I)@tMP )b@vS~H$Y%B^DGâ (H$1bS}䅶Tg=k i}GɊG)节AT&5CK,RQW\/TyD3@Kcf=mDM!WaΡ 3JJrVe`뉊u XZ,B(js^fX{HDɷu=lV"Su@s*J]Q^)M41̇5ڹ5nE?Y׫Ez,H:~fɘMwvpA>팼_jHGb6@Mv#  %^4bDAZ gi3m+ب^}XCSC'}pz}Mv9^xuZ̥uN{njGk\Z'&BD!؛z\eQE=os y˷;%W s$X[ɺ{w_#E;7F\qX91)([#]Y'_}[9_jC~? UP,f2YmQ7cYh'#7V $=&Ks5FRչ%Ƣ4)<~uymSV3\.J/\ưId*GAG9'0^&k٪v"8s1rQ/|G**1qvZK +|g\ȠCn{۳" *o xO}?V#(MOsW G|=1fğt`-:e8?jnaEMh Q/H "ҡ@ m*/xf7G(|)ztK-Hfu4Rޭlw}NG  A-a6&>޺`nDk#e ]ҕP'DWZ.wn)ͦ itJ$KѶ[ЮLdt+3_F^THMkklj54v*dQ¬GBY$@rR1Ñk%(( P Ao~iݭZg]xzg'_$KDuR 7{ }gLzT:Rj.: XP_p8<vk|0r@ϛd|,\KT7kONZ;Sh|O%7ɷu8w^cR32&SoU+zg45!+D Xi@GzKK,[mzfL >|"%{㾢ÎP?>nMƛUHgS{} >p(qQyR\Bvl t&jHЗ?YvX?6Zs{h#7:DծQKIc^yl%\>˙LvK Q/@QlMŪgCZ@EͫOo)!8{5jy Ketߖ375 .:j V?tW)Tu\LG A솫HW~=0oq;@v R 4>!vu€s;3 +Ӱ?!r`{L .7V)?4qt0mzwޔG$4 \^e|''/cu_c0b\ÝM~JYKʗ~dZ缉j7YN/̷4 x}_<%$/*pɬ|)It?Igb4ٕ]G<ꠑxd:WMdJ,K$X%!04Fm kdo'Czf8ۉ ٍTlvv4Uޥi:]ILg. 1m0 @ng'uX~R~I*yd豹j텘D)U}W(v<@%"2|}/T G8=F^aNQxޭchpDB|βyD~7|Rn jZu*OCV@`c-Ф4GNuLR3.$ȥˈJhy2~YZv7 \I7ێا:34H.+?"r%TغHd)}EC'Z}P&=SR:fHR//3S6Z8u5S[K9|4WpmL "=U_;y 74ǟ?}s$ŘK䲸1_F Q !rHڨ7',OG̑j,.?ЏIBbcX+F^ ƽV"7&ϑz$=fB8Jncq!ZL(.1G9{h-+>E"<IiqA!(  RVOf 8?vψu~Gۃ0 gǁ`Ua~P@`KsmWĞ k CzAX;!ttijb *||!=t`J܂NwnYy{ZMCVz>x%]5 Jӎ6ZdVKKxKf r$r4>Naw.ꎜDw=tG'r pWw2N1,neD4LRJqZ[}ZrWуN'O(&F 3k:>$L+oy}Rxի#:Ů&wzu@n]"خh!]j!D6;ղb5Y[T~ơ-尷>4*j2J0EA_ 0N,Mg{:m?BĒ'ck_eZ?ajy OHީ؅ЧRFʻķHN)zn6|pEj,XBbYXb,Ч$Xyjcc 2 1'4 nqf t< ,G)48ms˃=!rm ͢D?tdAV2ӣxBbQə-"}/?3ӁtA906}5~]m.ˍLPrD^κM->JĝI{f/(5;mG@:B|g{tM:h4F:m$׺V$ܼ=Ŗ#PXTzXߘ ,I\g8FIO aB*< KSH -ف c{k#frkm4l>b\3|6,8W3 ^ӗd[rB,zk*m kܜL.[v4D')Z[HƂW%6[7{?¿>4;G  }?1CM }k50 pdݙxٯOw aa[l){SHu_"pnT_/[hr79>XXG^=.OI I @r!9Ӽ o\g Q?(:Zͺ*HvDprAN V(->\{Wzڳqk6IH2fT?5]$)c96  1in4ښ'9oV\Ų5YoC _6~|=_+! #lmE{/jLoDlw̳kF ٝd\Z ̋g-Oq,hg~85!HW#!iP>W_B:e`VҐHޠX,Ri n@2I聘vLfz}}CA'ByzgpHLa~=\lyNo U< ɑ{,WوN-` Lnys^G ndE&K)\_#X1۩TGn[C 4ϓa"y,M-EC$}zQ s?1!t{U[o+-vd  Ȼ9.1KzwP:,+rnܨ"2/K+mB/uWm!khP(ow4Υ:QEQcG|zBZzRwKjybVZ8L'9$kcIX/W;\G6tyq'knl.oWԞ<[u? `O\r}.q+kZhLE,$9. !͙o`f .|(KOL Ym*H8` 1|HK19_lI2𵶟o7!{aJX:^DV<;@$JT-%^3m\$&I0X}~MRoު9\`8dGЩ :{ԾQa-(UWcjt^ &Ilp~ۦ؜uD9j<<٧Jkja/ȔnAn ԏ gU*Ӕؖ]C0ړY53^#sG"މ7}'6;3$ )DgVV:nzpˉ ?%4`&$uc,w=y*aZ&'6aFKS-vIru;^zQ+XLhVZXqOX^i'hꭤA&Th ptg{Czqu蘃W8!A"J3aIIn̾{}>)bo@m]l4R>ܕm*ǥ (j|^-4~TU)u@%Pqw/C0[yyׇ$?N[m_L^:04}#~DžxZN>b.<ǒ׽HhW\rGXv]5bS_'(Jk'[?ǰ}f]":=i_ ǵsn+gRPvH6a<tgdȰke0]D\uhEL.e{jpE+DgOڙhAN9<.lo>hNbgxKvOfCuۅ,:5Mk ν2*67~ 1To@B~_Id,P$(|Q p$g HED `Hz DO<tv@>\,k#ĕ]b-`%[ƭ>"L c&9m G^%m!Mљ'y=4!pֺJZwgFI Yy5Oa#7cFI5w_Cgu7 @<ۃ; Ũ=䘍 }4_Jא oCA-@4ƀT万sqg; TօL4W W/C JDq9pLo)FѹeE0B0pJq4O#`8Eu^KrJ v@ubzO{xKR-Z_YSUͩj6ofc1NŁ kR_͵;=!- Bddȓ+"/^*3AiT U.QEI@Pyt5Uk* l&,Y,kE1ܕ78f8lR0 1BJ$%l_6b(`֒8eo,93ݲ<% @/' , ,! Aөlbl\?(}4M_s>z͖by#-JP0DjCKbMJ/1Ns Oɢ9&X~ GB פ HG PQ0cJvL)@\#NKr?6McÀ NAr^8b<_,{|je/vME|A LѴ8xϔA2ZQ+!s_(3!U lvsž[q:\fF=?=`Ђa?LA%N~`W,u`q3]X+ev-{$B0!gP&]oR4nwZڈBbt[ucT=jOL5)& [t]5[AQJ|9kqycG]]0Ctؒɲ tůYEJ06QLc.Ft2/a|/8剅 Vlyn(I>3ٳ@P_"X3yT䝫F X8'd" =F+8BF Q,m<ahE߈Xڠmbwwnd>w=OBr ᥻ >pe_D~[GSmξ*hG-MkP!%RNepeV=En3@Nc굍8ݗz!RZ7oE \S.~K>:}{>F0b~Cb#m4T&! $gt;M@x ]SWWJq4uDeeW0.ӏ$5?zR+C{4.bv]: M & N'u:OAA4A;u1RQx' \IA+\٫o7'xvepzQg|֓A`-49y(s ⱋ :+}ғZęzKjAǒͺ,wR?U dSr61Ia=^jz[BOu:a KhRlJwp/ݬ-i}Q]9hHY!Ԕ 2Q0 oZ*skT/ѹ$01cNZ#^/ S+iJjCaڻy%hhmrg׫z?xn-3(lɃǟZL |0ν[viKہStPTdӣʎn>|/(WRd 둦T&L ^ GVFNAmYRM|hk.>N#.O*axRQM^0ezncSpb(^jk 5/cwoJizx@Yn 63+QO+"לbt33Jh\/&Ҫ` Q{)$R}V33ۥXbI:q&::|dy%ZHq39_!)> s+B6{&jvè SRT*>TzH.ŅIڻ5!^0ՠ_)m<Đgǃ.O>ݧϒd5Aj5XxKK=q8_!{^P3v/MAڐrw)zT_h鏋wQE8XMPAx㊉*v`GE6"fS{Mq~v|bP$pxm<^> m@ns9?)6/KȪmSX_IAMZ0F#tsC=Gu)&DwlaYi9$шY:vY(z*x[$cE#vw̠;(7BnqY,BgaU)'钸2wKpێSIKbx-k%oޙB.Yq% e^!gMxizAd8@3PMs2XmEo!%p& ^$2|<(=AS"BFBŎem6#Dsil +pSBo~|Y<]d1zf 6$/ywޏ[.LȤTMiHbFKE#"C* ];T[_ݯ8sjH**{x`._:Ń4*~l'8($her sZj$>^#5:(̴$`|J琎b0\Ԇ ?ɆTݝ˱zٹ/[^}naj2;-w,QoSGz_{_gҢtN)i+p[4E%g~WLR!ȎWO֞V "+%ok'k=sɳvlOdg?J }1 u=xx5/ON}"nDڗQѷLtBב~w6Ƞ{{v?,/F\AC 8 sֹD7fTRr0XZ?fDVI*8 2 8c}Q\`hQ̀l!߄~q%+Etm)=)\WXCrgO zf$jbEU ':ob1E]^Z3gk<7Y: kPڄX<@3ӊj;q{=wp{6|rq'8PTSD|$鷤100vae%H~HYCF4֓lhAb^[~r~!5mԼb;n;:{*Uڍ LviIBGj Z1[l# c VֈFpb㭌ׁGW}FnNjgdh%ij|/DhH^S"M^' m&:(ԊbnB$*uKQtfӕ#* KDIpBs7"Z&{a-IvAd;{%H3_v %(?O~ u"^$xǰB#B"H67md2﮶V|c^l*s'o2฽)!"6OBVvWIۦJ2A$;f΂k ՙ>{Npjws v7My/ +]LDn:ѿ}GI(ߦ㲄x-gSkGt0FDt# ^Z r56Ԩg#dW8GÕ,9pȉbk%9c/4sr$t6L/.iAtEU*DPIĺ؆?sER/͒Z< b9{ےUnkצ.,:L3Imf0I8d-j<,n{o\Ӥ\IEr['Юztz|ͥkM"mǤ^8ʂ:͒u#IzrUPCl0 )tՋDK*YSAP`"7w9W~^W[d{<3LHhO$`5V,(;_iڎϪZQISDvx;r1KZ]hQ&BL5W6r-^URW֞.2SS\-NO=(0O%&y#q" d>~@{hQ#ϐ7>h4Qw%IjY⦝eEo%r:Nb]&窙"q­` ȅ*Fg沀CZۢ¼1׮B[hsp_кQaiA=T`E-w]ȅ|Tǧ1OxI\7A ⾵Ck~KHüA`i!@R+Y%ߴK\o Ol)ثU\({愬Nsa}:bZIJUlɠ绠CNtlasy=X`0g6qvP:}db1S@CW^QR+e_3)XhP$'{ό4^[R҂ϥ!NwvZhC,a>Z@{n%X;+%l]I>g`ZeK@zhlM_@{ f>~L\Q#5U -ѨH[DNYL3_vQC/duX`Em"ۆq0\С`s>_FdJJb{GUzT*<#UgqK0cm훻;\`svp%> lPo4JC.8senNcyuЧBp91aa'IgދwnlJmhGr@2C9t$P(W_%-Idif Y]5xXz$UC[eoS]3 MYڍH4t ˪pc2ke]oѠ 06WY1m1ՀTB~E΅lMg[.OA\S0:Sji$Ո%'r#Zny n:3剅Hq*mƆ/4S 8Ld*Ж#٢Z.-ݵ~uP'<J 5E.?W.1C"ʟ`ucSOmbM˚޸5s[*VL_Z}YVȔAkV&iU4n|A!NsKh~Zts ZbiYUL/2땮L f2,٫u-XA'}̮g •|v(IHv0QzwnvezycEV cXzI$ٲYk!'$7Ch~|-4!n:dqtYw0Q>2jq,acX353 ɡIi y]Г )+K$ͣTBӑvABZO$%*0-:ܴ/7XQa{+,ϸkW)L?!G @w5- =t'"?`(ۯ4$Z]4L;aׄØwoV^G7/dV zreawF8a/$T`W~pBfѴ1! oKMƌIb 텂y(RYBq'?U=+l~X:%)7U|O^8mˌgPYHTuϒLheŢ'7୚R\}"Ė$ڛ9Bܴq7#ZƼ~w{^?% {$gVTT*0P'dz ՋHbA%_/[H${Ymy-=PRnΛz=ׯ'Ɓ-j@FU~վt7m|/Q+켷JکgVQ2cٞ wt߂\Nxv4a4fL<$o 8_H|rm#4Zucۧk="NDf*LdWZ(Li%a}E"Ra ثӼZjj‰r!wPWbMFO8cUclI}X2[x3e޺m_ۋM‰\8*?ɥ $\T4yb_|qUS^ p7i7y)=[C +ceЂTK9àn}v2+sj!B;5) Ώ;B k-Ta >$6ҡx˫^G>c~x|ıOE#gRr6/ !DTk*-߮Qڻ hcrD6cX%4FyJ>bO$Pgtv(B@° y<9F0)߉yq]7xJßGOЫxr7Z,"cdnA)F$Lt絾%Z8!0=sͫ9;כ )=ty V#PN/?;O|"FG6 !g#x1KGHKMk:=eeGxeHI ^0Hbb,' -i~Yst}@e`jw-nyӠĕg8e ݊CX!Cj*M۞4i[8e2f+,+m}KZںuAz&3J}Y>mE?B%KO Un:e|*Ʃè`<Rh7[3-W(x+ёV>Nk:98/ T/'f1/ Kdd{S嚲xsʿbOP:ʼnQ|eN>-El(ar7l6mZ6. 襁 yM3 VOrj#rmJ:zK Hg+\bUMS~5tg/Ί޸jk|nJr0m"6 N˲tZ(!Z T"7N$CWfR,pR+EꑐTqu:ѡ/<}rE-_]xSS'%!CǬxDA-lVT¡t޴^qͨ08[soP~Z%+)́X3F CȀNoS9iQ嘵#'m Aȃl[+bN3 aON*҈K h̟G&]5MrJ@5 ѯrwBG\vWԨ;؍})K@/]RPU?ϸv7\ޖk\b#C{xFd;L“AA~sNw-zHc_"E&Y]7}0+*ͤSPh@^J4Kٲ=$q"8̻wyQ"O߬XcqՓ3T`oa3Pu>Љ鴩p_0Y":cv @pvkM֝?Dgﳩ&};ω`l'{PWG1k d ] Ȕ]3tFε'e9m.3ALP ,#9 ss OьaK lzڛ Q~7>; HM>ܫ UrUsDsq/z1( $Z U*_2FStCo\ d1]/~Ou\j6KI;M,$W9A Gt%[xxt:kdrQ5Vk!*ĠyJ ,frdsv&qEruCB$H`*”x$ΫF|RHcyNmNčJ,3Ͱ$Ҥ34ɹ|pC0ǥU3z$k!!x{+p1d ]ޒ2)qDW|C&Nr iwu2!z.z x~Y?_U$o%w އs1;ҋ iJ/cP ’5&ܤ,Ft zеjYqkvײ \.!9|}L Klm7Sl6xU4hp$ D{ݾk-lp"G,l$m>"?~͠pN%>Gawloz~qW>3Uj "Ŏe$L"6ikCoQ1UdJ="8DoWc0Ll KDAK-kH7KKÄBXfw[B A3-- B/#mDL Q *_>[*#ay3̼Kq<3ӌhg$w*q$ ,>QĔ^,|2rPЊr5rrnv)Vbx6zW-DžE~8c)2``18K/{V\w%=P [ 6fpn5J͟ ʨK cafxWغo88Z~&l62|8t)JbkK,G%}mf@(ūXɓHL"emꚼx7<cSCL1$O3t?m8TKTa9 '(mBD !/Aq2Dikh[!+r@呭hǠïd9"toA.,cdcN.6PE0+.{>zg߂݂ kz@y4S_Yx r%iY"ՅmQqBL;͙t|n)[t~@y[թ!'!gib -BjUD7^10}x+5S1ehc\@~N%bq vCxC)J$!M,0$S,$Sor+~W?A=̈ZH+?MV?PzO(j+$ױ^؉& Xh_O%D + QhX(G6K̨l}l{:m5J7!\e>]h_ŮVkq Ts1T}+3Τ A9k: gzݲ\E|ߴcꈔgY{[h%j;k))%.d&$&'YnuZg QQ!r@ܜ.k=ڢEy0_V䎇"k%8y94Jۨ=g;vV "w:>"@LK -gaM5C-mgU6(`7Aź|uxאzbƢ BJLK!`cD#?CH0ԭ ?_x%}U.(մwbA'\m=bVGM$H7 a~vNH w'5X{"2;9|g:}\6 `Iߝy7iNϰjll|^t('f }5@x#V/%y !X}f'3 K;}\IH哕 fRuDq$iL7| QyZnoAhJ2\_Xjô )MW}vR< J ݨN5ȖJM@G`JCcN!-4`b+zIO>j` "^y󟕣"&3x pᬓvc?q%P IP)/pèUa"ot㘚/#wߢ#Ly;B]iqDّt; ٺ+Bo>osO"DW\9yX]Z`奱$&R[hoܝ_;L*NyA̴-j?KQG@~|F㗀LlN48&*DGsjqs: DjS,hk]„OCX}MO| gQ6`OmL1-+VF?pk?,%n0m[Ko$͓XҪಥ.I ʽi({)X U.N0hT FL•űĤ `2:э;eh^Ƥ(p  $kٹ$eV Fi>;rJņ=onZ׮َ:@=W ]uS@mtI;y("!D]yik8Igtտq>M*r?[CC6e}>{r:VR=tśՂ^ir۵u5 X ]\f+@~V#:a|_ʔr4ySahV7/1_==m_]Hc!? 7*F=fZdGMtϷ*EH[~ꁈFn \WŹ*ІIr SÒ"}fv'[) |XB/OnyPűRrD}gp4* k7ØǙJϐ W'M7#"؀^juO),DOegZx}/]V4\#LPo6b '; #䎨?mUn%Q#z҅'J߆j*+ux#]2U\s SqSn)c] S~AfDmiqYOXv :X buo=j1!^OW }lD/n,wDXĎYecd'쭯%Nx%($5K x0U](U@0ғF[y3 ߇|i7U/O7[0JZHb'] ֻz!&꟰HcT@x =yq'f5ڽ&L^Q "_ǻt<;0 ץs(T gk/xkݼ[B啈SYӾyZ@Cg#H}p} v) -ܦ~($spK{9$i7|?'~AT;Į[E<mqGmʽ.&`{͙փJ"XF ZGM"|SMQ'֣*zZLrkP3 81#{6 XKHnQe|\ӒJj~Ecf9_?۷joŅf) D\C% ?Y܂hS?H#hE^Fw/?-Q$/"_ !#TL0Ezэ>lغf >t`¤CbqӟEWٺ*mH76{ sEUh1Gю<p\eCXj+8iOMvɗH{5!MGE~O6'ń͒sk]Ab 6=*ZHl )ؿYY=}ĆwBɠXjh,ڎ:H_r/maG,[]MzǷ*!A'JNncizpؙu|ɐ9}bZ|ZIl3 RDn~d$R\/->I (w[. bހzܫ$٨@>B+%ʈO?JpcCvE.S=b0 G\Hvqa>T(|(xiW)7g.}gb6:,=lUVEI#gh/?m$r.y/@Rk&sfǻ/`Z2oM( lmv]uL-Ӆw#yct96&}'e8v3-;E Ua3"ȠCs3os`L?x.FߧoCKsε9([R׬m) }mj+Ot9&\IH&cqB6!t%Þz{};?JoltzXiDε$HLެɄteVc,ͧ `ew+,5'Q2NxzW364o\%t 9ZQiUJ8&6\hR+8;8 !ccjĦӘѸ=əg;M:Q5ބWzK.n"mD̝wWKDJjˑ-Qomǿ3 ?\[rnN L^&OH4nYB?6#Vo@{nx Ѡ"! =zɌHEdWL hc2 %ʛ K+`& cJT8#;z΀dT-j}jXjmT[neyVS!Ťa?Xpֻr є_2s r>^"bE:;o0EZUy%{-ڇ}jm&hʺd-`&@- CtLֿ+!:E{OᄀQ2:c  K~ؽkNZ F<&)Y'[e؁9o(E]U[wO+(mu=KjK4X%?,ҢBdVC&GņL 9 >}d~jTU=9ҥ#)C;ۮ{I6A~`qhMo-e! ㍓z}"J'5V<čiw5E!Ӡ3⒈?9#-i)~L1OMm09 AE>qvwt7\~_>L(hm>]2Us-^׃xċ`h9PK=?L7%<v+)M(EB.PXTSͼ1;08T3ۙph+WD92E;& a貉fc $yf < fNu ףP B%'pg&MhBE˟&zD;ko ‰,s48,%DZ>u&M~oS4@ qlB{_l)3"5W|jAS2 S?F9{r%.}NC H"UI݀!y);Pʪ^GPLG|LX vO-= ]@z8ià"_zPG8@ הlq7J2l*ˣ[!ǿTZa7詉H`[cC%7GyjYv.)OᲞ}0vV.db% ]8)iǘ4wbx:k{9 E<('sٮ W4 rBct',vrA7σŸ* 1f)n OM5SVMJYؼ0a0![Ʊw¹PZ\fN5Ʃ3W\,q҆fjVi`oN -  ,yMT5" >݌\ōpg@13J_w@g]' 8'ĸ#a~R^)N8`;/ ;FJ!Ʉ`7. 0L緥|߅F1Um'$j,AC.9SL ՇaՁ3!Ԇ\5y^˻ׇ5KOIϳ~5 -}@j6/O&H FgQTh\e J'qO`m7H['Ѵ6mʛ0\@9mbPZCDmJ ՟1=*9}f òB4w)r)uvdFji_>iZ  O'v(X0H鏆@6P@xLI`I FV.;pu66uqTC*B'lkF鯧6'prfW';ãNO(W%oDdfuT.H2+!{2Nc7jհXn[^{b}p2hnM =\Zk7D"kiV1}ͱI}q7.^̾6ǎY O3EBe\dTBcTv+/v-8f8& o`Q ql ~V Ko|E/\TY܌|EWYc<%.MBWS|C!t{DL9՘XItW1f;# =4cccO,%/ǪrZO.1׌i3+/cĻZ?}K:)s(٣?ƬF5)$:aR1+LJKzXO.}~=QaWR~4_ ss5D~F?߮?G{Jdw( (*Ӱ7iI=p(f1<[BeݢZ߂wyop#hFHevbo9Q.!nG-em.):/''4!Ld>b?<Ĩ*Hшdr0ƤnbX?lK֒ͯ))?,7%l&//&Z^fj5Eb Ui^Ē[QӋпٍ `LwfOK'I͟^[]83z*[_a5]H\lβElG &XDB_{bpMAP]wq,8~"+[WH+AZ&f 751 />Gr-Lʿ`0̭ᄘEbHr>$`FdRߝ,M-dG ⫻-'EJ`C{8<䙋k$ݢ$og[=̍o?1);{) 53c&1K,ޖ*[%sɭ)%zvzXMhf-^5ctHW7F6:s@NO@.׮.#0RQ~LY=|ƗUr雕f{s +6M*乎C |cBHIf1UY3ASgڐ88a)P ):K -s=x~ T8d; ۻcx.i~o$/xp3X6ݾ:**Y`WH`6CP?&ˠ?]oD| "8pL[Wض$([ *J/[[S"ׂZx~r;;\!%j;PD,Jlf kpzQŧ33p>^Ƃ "@ɬcZ6u`Em|sn4;ύ;NWDrXzX|<%4Li @,}UT7a-_)oR_쬭, x\)NS62l_m*g%xV(q> _F>5BqE/m}bA~p^8\%eOa3[ d 8#0=s5V( ?|'{ <%51|\Rp8IB?y4˓:K5Mv:Ax.;GdYu , :;0~g"ŵ!k _VS[Fvw$ޏtmZ6*%A346K36&#DS&e)uģ, F3T;+MHsKc'ɖN ɟ6&3s6 [y_#+|VmoCaVCsz5}f ټ'$ +^j/A_U=*ը=&(ɼľk77ș,#&4)n.k0®M,Ʋ(jҳ kG_?+՝&E)$xarU}DpD JkMN7Q+˭2Ɩ%k cQ!12C}> ;E(CQ j= K|xcHr]ClԊ+!-Sc/HQj)_1G~oҚ7lF.pg 0v~Ea >tcW%.r0U3RjZG>Z+rptziFEya~ljx㊳cpHj^V^쇅=?b-/zے VCIJ޸j)3sQ|og+$ WPGSFZsCp_Ζmr@LƚuTǛW Q <ǴNu-Bfա` Ki5ՆD |.b"i@jfF;L7%`.W)8bk|nnV9Nyhvx@KM?g%/ L5NtZ玖t4^pPA\9QihU$wEj޶/a~PЇ%~~ X.}y7m1F>qȄp10ly=矧~gd|aiݺUFTٰTÿs#!+ԭ9Av!9Я:r0dކh `Dh{~ eC֕|ަE=y]Ll/DS=߁x"^Sx1r~۽UR_\,hKJ6~_??+DgkTs# ~ A:]|ِN0B <&%dBiG*1s((c+JIX^zSP_J u76O:LOQ\\Xm׶'1b"-\hn_8 6C\ebn_%ʳp$6ɐ|#,i_\g@쉾nnk:JUM<;6 f*[KNeC=9b.@bf64LIAtj߮uIG'FǴlI Um@m(3d#EYy\?A_s,J7|_$&d&˩j3ZRܣzakεsYzw \\Px>_] .s~f0vEG YCu5^m,S_GOс/@aB1;Ԕ/,Lb K+h/WUـ #(vT@H1y\5qNe"OFx0!"-7+\˘` Sŕmh^="Sl^a_#Nhs22Rt7lfT<Ü ʺbA̺]ش{ kJdi]?čvX/ P :硙!PJrpݫݒ(88f[`]b {lsڧ$ &48!eF)ܞQ-zC.(q,c_W.78񽠜Il̔V!'^[9H28?@j7뱞HW-?V|(0y 0U0*2D].!ےpZO(aNB G+/ùԁw,A/+r?vͭƝ'#(7ED*ļ~4<g/re)/ͷ.mi8j,b3ѭI<>K…\=D}"QX,4zk0R6ܘV#K=C7 lC!u3Ko_hio C-u2@35e)S[|YΚYX ]}YC*/Q]|zI kR Hb mI0* '&RUQC?J}}*VbeE /^b*Hl>\[")b&IUj=L3T o[ *ع1aH3+xA/%ٲ&K<;=žor2si ʚGՄrOXkk4( {x`=۶HI#,+!8{pd5Dž.ݑSX~ zMSP]m^F|Ď?uNM8L:Cr*o]6H#3 ;MtRքoYQ˰3cT%&f=y9VTj|UGm}P)}Y$j4щ:-HҸ0W34ݼpЯAjvºMfϑFnt<,o6 ^c]Cj:nBFއ[Ť [!̭3<5U %)̞>mʻ:20aoV}RO*h3 2x%*j8Tg_/:kOVac A؇NQ`eYnP扪}o,<-(gXpn9M!P6m>]߭* jjOoɢ,&vhô-k/djS  /5<~b8V'T[B:K 0?ip2Sb/s")z"5-$Od4΂G/̵Da _u 0, ST$Dh}^"0i\H;~#d& _st:וFesT?2}bsHn2=Zk[v h^T`ښ*}ZjزS0Ыtk- Ԟ&?D mv )61sc,гltq#Aljxd=hEr-X bsZm]!Y#9\1ɳ1i*bT+Oix5'Fan'Q"h!ݪ uC@F8Ҳb4 fYAX.GO,1  ꥀg/gM{vWFXF 2~CmtM*c%V;:T=_e۶'n9,OWބ=E uNWAGKIY?l@[:,k B ݒP.OIZ,9e p'LsfIXt=h[MNw1fΒDfsx!#2b{F>?d_^i&:'!{Sw]4t5<ߟ֔7*zm7]K0f`E]⻵Zd P kuС. ^&Ta#;|>9G7_ ch5G?w@(F!B[1nkV͵[>=IJ1F8pVeEB+/%`kBODLgҋ2_JhAXD̘`oh.]>_wX%I򘲻𭞴$JL v"zK-,),. %'RD4y&? .7EzAJ! +o>cenFK6nrDca6Bybx1 nzm rG*"=Ѩ;Y:B(},%aT CVA 嗖|n>y=D. $z'$sZ=,sjdr{;+YOW^\j{u|ޕZU5tY}tfG Ɗ)iEc^S };5Hqb $wӟ3hEդ%!Vhv \2+O4-p4ݗ_[k82AP\\v3pԘsGOP֮rPvd\Cd%sC[hMMVv Ŗiڥ|2/ Iه%nvp9si!ˡof<8Ϡ=taLI`[UP0?~I#iwh;S]O㑺U9+:g=:h㌢+LHj涪 HxrSĐ#$M~׵lbi\W2mP,:s[CznhO;. ".b=o*رU_Ԥ|iW]”W|haǃACTM6}hP_1Vn{]%HB~bE b*W <ΪE#ÿ2869m.Su\p3:#t218 kdϪ#>uZ{mzvԱѓN=k(vM!7Gm4TFS`[*Atw4 v)\V7T2խ8>8v U9M>!ޅ}p@lL?cRXtlbjO52~&=$>yVl0j]2ы6~u'$B[HddBptIZBƍcLF%  )FÕ Շ!MW#9ic!o??lBBsIz ~6;/b!E?C^prgxGi۽ m\l>Ts/GӜCރ氘A[" Md/5epTcL:VF6iAI݀-1|b5%.LSsM/ FTFˢ皨"g)JbjD3Rj0Ђx4`yVr>B] DL>V͘3K#_RC LWy e%=iz;( ]!!SL~6Tj&K;$%38.b>LԼ34* l`;Q ٵf4IqҨDR$@}moȻQr9" A䜓-m%P "q"U(@D"s< i-uYK/NI'׵J ?Y rNck?!±ַ z R ݥpOM)} LT܁g@'1ur^32fee!{ ~j$?ҸZhZp|\y-"Z5MG (ܯ;o*SMh[? .ض8P t M/댷;W,_\:£.IIBr`]zl,9B8Zhka&V 7_8̪[W٧US82hܩD {usp,ٮ.(q\Tj$os|l6%Dk Ny8lòkPfv7W?P%^p:GqjSl@ Ͼ R=B9xKdAݻy6{;,η'̿ й7~?PNU "x{jmTB4!Qǃ/9o$?[H$GS^ T&y+)Q7 gc:01e*aY<ȶѱӵIn 2i PtAD 9}5nr֮('~Vu29c4T;ӴLP.< څR'( 1FJi--z>U?#aje(|@'Uv* G1?=*"%z*"CMYB4 s6W|I/Pd \XD+tV_d=K}zYӁXD}JHYl*F ">iE}˥%ݨu ȩ!t@18BDž'!RK{[ф7 MRӠqS7Bm-$a-iHދ. Jq{G?%S#$/eI%qoe&ao8d38MWF=|a#5{rFL(55͏I+ \H )7Ep ^'w-O hkWrTg.UVJT:|_e|Ai֝s<ޮ cS%k?Czٲ]%:1U]'h-rez wz,Xߎ`~s` Sg*Y"GG^*(9ujղ %^X^LCK`{8}ޚT]+lRF<-hCfk&~PS=t,_5AsԈfɾ@NW%=kuq-[+Vv#nſ7=_$mtlXrFO kڷpuj&x }>~0Y>|) 2Q>&ȁ#/NZ,60 ,^WJkF;IΏn%ouG$w2ਾ KVj#No3*,7swZ<ܩK%?_qnWg {\}3 ˿@'n1#:"pԘiM[D''^!zD%v>( XiRq!ݳQēn5J,pA٫ܯ%W?O41QR (aYIs' *F c3 < ZPbهزaV;dAj8O..$6u+cGe~ kUcV^gxD~UG)-G(& ]).88wlo3d&7D؞G盟1f4:%m,#f́w5'miծf|\q Ut[Ʋ/hQ)YԡdKۉ熊+N]s06O G5ܕK{òЗ|MT7PR8i8[frC?R84qzjaBf9rjj8Re%!`j R %f'^ujD 9;Wrk8ȦI,YK X+#Y!c5xsc #)Lv!g 6Yi}l;vDW!k]d,`;}+`.՗*bA 9{Md77ݤa,[r>C쟍yMzJus]*zEvַF4a !mi>صٱRq%/XCLŹN#^MBU#gI(D#qi0>MX39*%3t#Wd-13@z1jQ0-.H/B? {yI?ƃ?\[)RA~*tY:43k*]hMZm{UM"Z>O`lӌ4{Q Ʈmadw|Xŀ`/kƓDB}rHP /7Jh?w5cB̊S߂;\2h0;Jxy#)&b}8!HPڋ\! {Ǧٲ7D`D,1caQOV* 6l0Ԍ#8& j[tmhˎKlBe'O; ৩ { jnLz T5O#FOZ/Sb =IWEW@\JSEK0R{r.Yu9;DDZV<cGn]߮3cH#pOSCUbqOm&\ GS^O0V(trn7Vz: @b -Oc0ٽGTG8Fn򗔺‡ơ"ѱSZ:cӂfE`mg:@KdNVW2n,=װ>Hô{ 8Zn qFsVw.喜iR˔3o"@KJZ"T6P%4q'ڲZnDMvPI#qtr:wSdtK{*Fs)Ǿ8Dkz7G8P.,.XE?U3X񾴿 !i{4J"׏CZ[:O eW%6B?'gy;AXr\70jj ޲׀1 j齸~| ¯QGfK,I hd^x# ,|1z X0RאjtIJFh&υj"AsC+# {I!w\'6!MBxW'LL+ygkJ”nQq`}wapv b1|~vÆDuM(* IOȜڸ[YR;E/bҵE^ *Y`͂$EWM|:6=١/lQg&골 YriI2i0ChJŗVN|cu߀k!njh[bLn/PL8-vVYrލDBψ9TOTFWzQFV "u gqQV*a<&7s! ېzF62wtƄ7쳵 ]*7O'MD\T   C˹j%ެU,!6RS?.ɏu܊d$OV\(& ޮ R6;V>9}~*\Ju̅( lp=1IK>o HY+K!:*"^s^G?ifHr-=Qs)xޯ1')N2*Yƫ)ӫWum,7sZǹ $6qt`)^ fiu9I36v(.= ~Aܞ _7ɡ'")d5ԭzrw"8%L*,RD?fGLa:{"v׵]Ղj e!5S Q`=-<2vpP >}>e&9-s j 5Hc.z0Qy֚xEgOv+=b,ej `Գ_Wjqgd5M0f~hKpk;UE۴ 3Hyx%;dMRҎ(Yd+5'"OU|Í}vI>{\mdX_̃{EO6 ]/aٌ!VGLNz.%ц< +ҋ:nA^OjJs .9վ;.xȈYellkn٪c}GLXU{##]x ^h&/uHU*O F.h(Aت 5nrJ ~3}S&ʬR[1(&JJ}I#R^Z c0<8`LPOewt8*7S# OM^a! <0U㘓wljШ-eU17x Tf8Fٻg}6yvixL6#w = A_tl8"SdNTf]\Y'McYqR8MCyꔣb?4 xʣ-8"`IIҖu_ʗHk R9OxGP%m sTOY=OMe "DlG#" Xw*TD'|\RZصUszCbd0(0\W(=<j0zU UQYHaƞjh;0JH^;5,5Gҵ_fCRmLjXFEz:(`l o\4GUw4x1|t^ QaC]_}!ǘ17n6Aouӣ}Sd^%:qBÍKkᛎI ԗP +@vC(M!j*vLQЕ0Muة ۼ]P[!]W. xx)bZB‡E>oY,t=;Sp"! D|`^Wqa/8/1d<}'4cQ۞JӺ<^e"y}bI/%瑛+Tö7703[P+l40z؟hgڜi Fi0>nIui@gfqI8lG5! ~(why%O+>PlVaaoiB?ӌFRn$\$20*5Z|y]$]ӝZ_y"\] _ujk~ >KRC* Rd9!N@zLšO(Jg[8 F>JՂLA錬 {+\S]Wᶢi#G t)|Z+%:a@Vm/l$k r$ IK&j1X9.=SaqcR6v0`o( Q;axK'D@A< ZbiTaZ`i*Z %S39GD4X1sceI7s׹d'51A_Wg98k܋ۦ7@s/:M}kZb?0J1O2`9T٢h3 *0D*ֺ:LW,Ŷ)ՓTPDPՠ>ޱ:xƑ^\u5MZ3c8T 89ӘSwʷAV]Ӹ3E!Af£֠/QE>R^LA!7KH8SS3gw1) uht(=Ijt+̲=s{nݷGKGZ*/ι<#v8e:pL9G XC|L9"~ * Ly|sq$A\?̈́W~榾klk $fi4哱 s$%#hJUKJnr+Q+\>xxꚤaRPxT#Z9@;ŖQgCwYɬ$%J=Ԇ򓊔3B@**]etW ur)oo12#{VU rL0o¼#FӴ Xx|N(kAHjZ{ (rF`&x/Ʉςakvϵjm8; >4D+gBEq=Y q}c+_\EFJ;Oe}g^:%RG)^M5+q tV ,'dV7LZN){r w~UUGB#왓ȊAM;$( p!ZFI$S(BtS9(-#e7-| uC>z[Tȁ\*a_WK>œhSfva)X7X79+$F5|hs<"( }AHaY E涮?%Ə)m Ϩ |vt+j'sY*- Ϟ$H5A3-ZbL݋Bo=ٜvrQRXPHJTwRt|bwU}ʗA"y翮=?Y{2%#T^Ssѓ<_\1_hmB 珸_bpw:ƶ&_q f!r1G婷?z$&GVk5Q1"dH+*YiRJz3 #^c9'1Aa=, \thVϳ;dm>'ە:1t]W$M0' f'^^$sl9}`rŗJgx_0SljQqxF3HרJbA0:M<↋1V7}ǫ嶚2Hfd~=[q;,(_޿v-5}\}Eöy\|le4^bdo@Γt[tz>\zwD~1ŻPv+Ҋ̇vB( pƖ9KJ|ު/e<.^ޤŷ2 Q|N0G禎R4>/E y#4oemij-v^N5lWvgM!_9iv2xUKvtlLp4)fXqVP]U)j~h+|Q£4{`hzoRD*"ݮr6d>MqTK\ N[hwXQU#++~ō\3]*[7bBm<">WR_h .qE@o֍*iUKxKy uepW~_+27_W?ٿ̄-] X zH U~0lt1Xp~]* !.E^:' Pd)YC“nrv8ŖU^?q um) dLG`݁pTuV_RU 9gȏV`ѷ]RSpvYko-5CB0R.A1`Ρr=EPxzC="|E]BmiEtkVct9;d2Wd7 n0٥j^mT6npOI"ic2$yԀ;rxgKQ>)ۜ܄l }YK_F>`T~-܇쩝e_8nkb:92rw=LR j⒈?(!o#P"gV:$1;E V3.r'J4]zM(V2Zp7K|~i4I2‰r.^4&ͫ 9Vuڜ?>ʫ7$M4 Rgg::}8:)91)w0& Xy9Sbϥ#tV{VI(?S%./OF7}Ⱥ-ZgwxY+&`S/WMYm.v`׭t?$# l!= EKT[hLcǣlu$7/9qnF]$ tW4ς*3(#)}c\,( J~|6kmp c¦%OHp2ϻ}©QsfRLͲ=#2k֔3bru0ҷ.\-l [ٻDK "/?~'?vi C/D#Э *G]=2\ &|/>RaU{P$[6!|[d{Xl_3+*w) $|@p`~uv_ nuewTuOw`-ά^L"-ROJ)W?9[S]V/aow?4抬ᾕ<$c7@Ü~^7a.JD[i+$^mflys\Di-** i׳ԛ;<;"=J% dz4̐,2r,fr5n`Vp %E#Uv/pt!)ûye~V>E7:B#2Buh0>Y\PlqnQ1ppG|x-+݁B01b@![`[+xV \m9.ncTuimUتQC Fp3%9K:ukSJQAa[-qѪy/đxeis:;Ļ\nZ=ķn!a )JԚGCbW<@@Ux _N-ы5F l3"1ehu N l2'KmAx7) ܣՠ V 'G/̏o]p*z=h#DRyR6QO¯\+(N,A i^ v F%.&U9qz䦭$QKU +h5/No3A1T/EZү 1~?VJ޼\HEj~>nmHHV 0;ƯbFW5s%Ct;2LPQv֋9G]xV#53c1+c˻f>LٲB`=}v{rǛ?DzhJ# Fwa-( ta2(YUTl$[#*X0- Ed X v mD:]gNBa#Gd,g+kd>u!(-l,SetN37xζ=؀67iL`~R5' 0qy/v' ,rP iZK `Bl*㵹Aa>LˮړnYxu]B%Gh}dZ_jK앚NW >tGu"Ƨ $;:,?a0.]:F}dwFoS!fiC!]moLqkԼ]&d@| d-ȇK7B1M?v ӧ*i=&] b~>vY͢;UnT Y^h`Lw}4U[@êɌ3 =q㯕Z˩f 3_'Q11fZi8|N,\/ԫ^<?Co_\f'f'==)y zVPzw ؀.,[, >Qc^IuLx|?Q$g)4iL4lxQT:,gVWYd7! Dў E&ϾR~ߘ{b5~ȨNe:G"ptw@f-_DZ'P*=2;+w-&NJ?@v&e?oDhP4դz\=;(3H'+7gepLX6F .i9YVc 2o#U(H nZhh jEfGBgʧ-iwnw:|+b3aE4]lzrQJ,РyhNTK:O{Ԭj2oaR.՚WWG-xU~h|`Uc^2hC<1`Z_cԻ:t X% CzQ)`* pZ*liH黗N} P1@.O,8?WD}yK@,8Lm+`Gn[IVb|v-,6 ,nΗ%R QeE3H9W].YGPc3(Yd(Yyf<Aܰ#Xb Wz`ZJe#h(cԐMJ$d̴}WWa$ mlFc?uX2ٖ)ݧAҡUSwV Wq!+>h%nw)(y!/ VE+ *f# D36\ *W C+ %<'-| `ݙ˻=͏ G9RTbF=c8FH~%P Ͽ[c 1#jmpD ;2z2UWbEuJ"` ֳc0 D`.gY .VF|ϕ]@/tJ)o*>'9k/`92)џ$*)dZ`8Fw*-ND޲U@a=P4iL5V|慘Hoej>Y;$^aEX>qO%vbs|H3hm! T B@HHz5Ѯu>|^LcL_eH8ß ΄3 sKX"Fd4cGCeWV2"F*OSi³3#-24$("Ϗ0Fg \=:)JPa?v)|ᴩ8 T8džąYc6'Q:qޠ '+R~q_tgLo<j-MT75m=7)a&‰ ֔AV$[=fP )D>~z$_@^Qw&wQ櫙;ʾ15N(u 4._#2uV=rG(] S1FTYN[nڗ,l+b }.'z/c6BęnG䶏_U7R 3%eخވ-""Q oE8d6pL[L) ȸϩ6. w?"tToc/rCn˙&sڰLGfVՕ,Nb |J,'estԥπ 8'?th>YKC.QWbyUӝ0x\T_{%g&x2fR~eIw0?JsrH=b+`3N_4[ 7y +q2S%ˢy\{Pz\##r.9#|`q %mah ; wHE2|&zt7lN㲁wԬ\gk PF8T pQe/Y=#C }eƇrdfQ4ۿoi1zhyn*end1 B BдFIߠͧt8,Cz[q.~7C@'c;'q #3A=h&fo:ұ KBAy*pBU$Ǹe9yl 7Qj.+^VLJ6S_(xGoHd[ch!" lG AmsC:BP,?YQ5N)G,9e7zG<.}i˳6t. r?N=\'t5ʅ0[lފw=ī 0P . K=QTTC>z?Mpj{NЇGf.ǽV̛;os" |,Ni2秎G<"td`*ہLy6UM:\G]H> ~TS8s_"G!!!g;Nd,}gN^5 H}@M?lB荋QnnqADa r3U&݊N3Gmy)^.l^n:I7%2~jxkXW'h&|\+$9fNiu?eayj6 lg\+CtG6:dQ^7j)5,Im}cmo)ȭm&3kJT#yIm>w }(R$ߦ^VՒ8M"zrzV: vo[ʁ樿朖aVo~^,[XϢopYN/QOM @cR'&.Piz02 99XF#[`'p~W/4?T23tD+YjTA 4c)U{XŭnFeJaqT Pf<2\h( cn)on&ی/y~>rpXG=siIҏ>!-Mͭ*4 h(@J]*.R^u3ɓ\3NQrP&Jl.eLAB[y^}CfJ: B .NO\S\SՍ)0_?[Hgfb# o%d%0==~vŒ "T/]P})0I@DFjzy6}iat# fb˻C9dڅpA RcאI[%ױHnJ %{7 ?}E.˻uHdڠ-M҉Q7𘱓 ü=aG~aciI*$h@ՓmD?p@yzS~f~Ю;! EG{DkZW$mI ߠ#1"8M *C~Cx*w܎oΆRAtKN3t+*!YvSl$7Q>Y"2</ &dM6oD)8ˁ:kktF2I{CIY%I1dXJ 0':II׮&?reC0&F@-%ŋbIdO%͋RNʸ *8@X|'4"!S6RP +N47*&S-ӟhWNIɘY&jD#ZX|4qU8t-Wr1zi >UC=H NOgC튄Q" Pz_){4ǎ(1z)jDX%ξ-H߬- 'M]Љ[~U'-/)u)vN9>̊Q!곻e Hf @<&-qlkOy;q?nu'{\Ka}tE4yR'"|b> 4bgp'\ J'K!(_ cxITrYl' .UPM3̊JkhtkF~((x8MV䩬TJċ[@GlI'$w֞J8LM27NNXb$۾KTFIij-TKR% \z<\G@/qsCU?iaBt.ixi1˰%|H{O AZx5m% :_܆"b~+ZQv/ o3zwPVy1Eɺ,M\9wdhsAhb J awSCo ;3:hh{n1H1/]C{Nw2xFa2Px7}O$W\ w^JN`ؓ w;ުxYسc;"{Q@D= 7?~#- C}m[\Ol By=re)VD|nllӸ+sG"Cb)6qy)SІ4"x_HB$ҽMN'"9%ZV'o?${}f 'ݏ-Me2d9ź4+밆Rfz.JـSwCeEӎ ǝl_giC ^$<9L L:2B-xz4Sn a7)3Y<3"b^kzɦ˖`kgx(3bsptcdm!~ɲfƫр1W)ze;lytv֬j[gژ*: bs/. {tǽ {Ύ9[;0$2(<9fr|Ⱦzxg'|C82Ki,MJ|6A*ljasv/)@K-߀9 V,Bj&#;fՓ,`T A龸U}lq%5!HM Xz"vC66. 4mp/=Ί~ >j*--6ұD49z/H(,= }ES' P2$gn5~%ܭt wh,feUuM5T}Sȟxqz=6[t1x;:0ps*$l9Tv@%B/Uߩِ D2͡l,84ᅴޭ`BG&Rq8>S}tak\I..J>"_f#+9yցwpr1rlj\1bǀz{X 6~J6'^lu-o ScBC]kK%s$i$^! Jt7#xiw3M9][ܱuF`"԰xޡb/sh^$.S7$"]_2qZӽtQ<@62]yW~z˩Gi z_.8ߠL@.U9KϩiCO"<{t kCQީ}Dv|B3Hz6'À)\{ ]`óȰ1LX]o5`j Gdk驈~8<`*c-{A )3Jd[L{hN&J @aAX<ÌV iJK+jd@PKܟ*xn<X-Qsi `Fäe^TsmqFU8DWi}38k 7kp@fdSz-H {_0W/ '0hlfr^ˆu"蠷uCb͇| %=>r[Mtwҁ龑Rۭ-Qy\@uZk+!dVy$b=uacrzNe}iO̕'+x?y(+`% {-!qzŶ"O‘^yV\J`T>TA 2d 4)TFV2 V΃h?u^kn>ٷj>u~l"E{z,4bJ^20t :5? L%91;r SM\o'FĒ됳(Ҍ" vzm nFc=G>lny(7(t쒄 AnL4BudBq4Q0Yj1Wuw{(-Jd` E^Ӻ:5(KMM1XXWWfE*Rs,q`2}?Q^A; N2ѲQC'#d;h n=GOI 4=;BƎ',[A RJEaF_'-H24>ܘt)(p{ICWc7ًRHNcTS((*9S:?ŴebK"(x?Lm㏊z@5߬oQXos|[N5nۑ 99W #fTl/cU=vݍzdž.<A[Y)@@3Ig62CA@ړ}91ޔEmK$RZC-Ie-ڹ5M}c@,X7HN+\J:] ܥ egE} Lf<)4t[=zEĹ,lr(\cX`H/cL+@p0曽L [ _CDV,f|’neğ>>&[174`B6j(:z/=_-n֏e ѫP^~"2WKnz5ءB=L)z9dҼ6:+,׻ɨ]/1RX]T;\50JPTw N!L,.Hs/h$z ׁ܂VAXqhIylӉ2dM/I'# t2Doƞ7y];C;?<$SE" D;N0꡸=ڝe Uo6[Ѐ^6K>ađ?l7򧅥_+Bte"}G)d.s3C{:*-a,)5/׫QW $hcαG4~9 6s}G"貏#-g7آN9y"+CTw!ůkkݪ~HM_&9+#L/3ᚇք;T複R(d'+% 蘪 zbаICZW 483em WwBe\޳=We]tWwށEbW%[@,sbg"'̌4ϤDj (JH/$(Aŏn^k4g\"2'3Kt9_r`YmRQ3EZȜI5Oe*ZG: lIlI,*{<.ki\LV|-A fAKG‘/x' h WR[Ey1G۪1T*X5y-zm~o6zs*^F\\n'"U9`/j0_`4#9ԥDxZث.5@M8hRfQ:}&d.F:*~AE\`,e w: ^RLh#AhiZ ,'?2ݵX ,sa: ejvZVO噥qQQySMx{'`T?hGU 34hqWu,ڊJ0@ƳD+c${mP|Ăao:tb eQ׵KSHwBi)T͔O'>]_'$:E+D6`{HkQ-}S?v5+Ʀxv L.$7bBwTG.;IwG/另U1V3nb@eB-<Kb-74kHUMϴey$y D~% Hp(T|^`Ա]fL~r:p3L]zΚaHpqńT*A|xUn &Su),3y Q"30"65}ĞԧszN*0ɻ j4),8ʒfσB$35sB%u wkY@1X[VVPOKo)mg*fIo<~+qCZS_1>2,e6@ETYږR))51r]{-pdڐ ƴΥMrb4:}JjnIu8j^_``1,O_ɷjhQk{q>>IF5ţN.*`pkNFe 7Op- .r|WvWM6X;ts^+ϓ0i_LJh5zYF~3џ\!tG+r*N:)+%h6΅Om4=cQ6YƤ'= ?s۬J"8ms¢/v)(ޠ^{ ǟchfvdB_{ *C=Gxi;mwNݦ@x;|W<zY2PgXaRIxdKsUF"R-ફHБJL#E+y_8ruQRFF|5)YCζBr0~#\r[wDt!f*r3}<_8n@r 45{|ߝ = )F`^5uZ,:{kc8"zmP漍{Pq,y 90V%\PT-|4_$_6L!DAo?gFc]N^N ؘ= ],I%:I9@礼a7ŚƧ vM->Piw? <zu) U-_*sA-x̳ٙohfEKe`Ό:vg]-Is .BwWtֻ.l?&%4tzm_N}C2CDN(H04#w-STG㝬hV(t 9Jyތ3B΁g윳iN$Y2+~~ǽƒH3ߗFFY!tyevԳ2vuݮM̳.WINʨPu  vl|YWkK0"(K!FC ܤkuM pGv%JbGXѶΠN>=G@֠7QAF$6{k"S4TђyTߔ~]R@,n5[.5@Tr98Ӫ6ՈT|xn'Bqsm샴u\Z+aj0-"f*4D_!8g$L}j2I|z69r3 kj'T@'>+ɰI'On`I  6Iû\lIhqNԐ&kW (/@b .yEfhFNdT5_tJ* ?H\olVk?|zDd HFq̴g/rRL8qOQ3Iz䒲։mz8tH Qu E"a5)o{_"8MeѼzy t"bsˉS_v.85؅g<2n9+Z?/nKE3+&Ma`Cڳ9F3 wif9oaWkWUو8hSW0U-BUWk=P"Z@ݯ_RQRY`Ev F =cjٸ#/H5.>_Bs,^^YysJgZ8$R'r1(H/`g'RE!dܽ"\b2&H}\~.^{8,%*_jt4"%Sl RMN/0>3R3R  v3YK'An_E=֬R_.<>#zd ӺRV{UK:(b]?'\h Cqj@jǿ7"%g5<#(3)IpFү@P,w{"EGMwjgȀ׋): eklg<Ku|9{k({rMQH㤪}Q_M}П`T+k2 mIxSO#DMHO.˒Մ.%z`7\^Л]Z*`*mu#s~r p^zAByu|JX[=6x]K"ҽnHL/@hej+{<,7}1F\e+ A -Y",(툔GʹrYh; P^ di)񤛓||s^Si-=ߎVfQlh[ -W˽ĉ%wi4jL}wR4q2:K C4| )I9`e`~b>%)I=h(c?y}l 1uCtAexmUꊦ3PFjUZ5-"Rs*t"H'w#DrnZ"jp,?HO8r+ {N f~<6V0hN_/办$sF@J`dۆmq@o49öUm4jtֆf%LmBVUi] .lpuduB1jIڥB v-@ Q Ւ <{\7a,d-A7Z֖Yi" dA8 r&tj m@vnoX>D8ܮRJUsl!r;Dv /(Lƣx:0:)=dD@B'}@^bDSҜcCN5I*5ίNӣ \7.P\6X}|Tww$m #5tne%7pIQ~;#^].'a ;qQ3V/cl1[p?b#-]' 2T|~{UM>݃񷝹yC`y/`0ܣW/e;_K  /(mL BXMS<]$tl9tѹ)J/{G@qe c8jA +O,[k D?3%.B N0DZD!Ubwۇ膚‹(eݴP#b , >="9Z5 T|P_HUѣ$)c %ҵk4U75Bg#B !d4H?^iVƫ@y6{M_0)CxnICZM2Y_nhaSjv_˽ iyte 8._J!ZvgT\y'ܚf=p2#rI27q`Y@Cu%V/q%nSJuyqG8;]¾7n\[niόv`~νHX1zݥUUKVxWeOUu2mAuv9Wrṋn/!yeJBȮau.ŽjrL&8HP[nP9j}@YnxStN=ՌKE2'B2A p%b˖Ʌ/ <o3Xb`5\obX3^ 1*q E84-*3/]dePUp S(NF?:qܖ9p@ Ǵ^xjSXբjM"Wd?q_vSyHxg" wR=j}l,?C[N/Cid{0^&ֹ6в qԷwM|ɦ5%q5ngitm-KUkoVLbjIC%{c5D݊ X~f^ٞ._';tv+ҍ/ _1B`[]=׫C,1̶r4IgiPrdt>cGԝ'*&gB9ym;}F aNxLAU T_V~ٵr^#bs,:yuF?X3&"=X=zv,\Bsbnv|-z֝lh|'}i=ѧ%]b#.x%@/&R݁(sgڞtW!7_þDv k Psp3c;-d4ǀal4AԊ0Fִ` Yڗp 0yHggX6V~Y`UXNSƔPf~TΪ zz;M*ezoZJ}A=+,Ջӊ\И5LAp m&VnCp#X&ѰPHm38#(z0ҍzWTu>V÷A)k߭@Zv lr֖|C0w` ,AFVqދ~Epɕ wƿ}T{hU2 \/AiP\:E 0?YMmK,h_Y'f"Bsg?5jfg[,ws"t`TuswUɑ _Fe-Iէo_o\B1yo'6 -;5PU.xCπr(}[X?'8ExuBZ$+ IwWF7 x8uyTPA&pwqI6[azTICB\鼓r%ntDL.gPOP 5toopmw%dhVەx\4G R#5ȷu؊trpƽmx}[wUsa{HƱ+ivRtŷ,5}2ô`ْ[)bW ^*D;tup;BǸ@ɗݻJrtFuٮ\TW\cYR,HΈ0~:5uOL͛W*L6w%ȝ6W/qASersϻǭi ,N_ % cwy#r4B|ĥOًAz@#Vú7vu4Cc2G ID7a脭6G93BBh6lJF $R y tD&f!3!ϏɪPx/ FY"yXbWPkT2pA%bg %;[FULjp+e~Kf%D kKw/rfL/4X.ћJ AQ?.&#^!SyΚw_`L6K23.(j[qbiv 2wv)f}s9Z"M1^YTwp8;䋦5A!LSd7oIxO+ݬ+uȴp痖7dHlutS<ݏ9CYsKY@5b[&voH/ P]'[>0 pw?FuLBo\|Ȅ]Xy狀𨼊xI.St%c Һ,DBFJcK<7}9 owOZG q Ҥ]@S*[R2:)<T¬X 4^Ξl0;; 朴å֓u~\jD,UԻ<[:o"FTOa?4"fN0c%+K͜Lx؄ݪy$&^K|$Rc @?^d;S+87ctI^%i_/. 7Xe`l=B] /ϋQ+z*oZs\ A^}QMd 4ʹoi*1`I7)?So9F%l`Evʣ\ѯH.x.'^2)ŋN\96 4A1t2Eǃ7sbF@n_-E٧޷X掋 *6D =՗DLTP$x=H"B'c',#"2\q5<""hiѮM- F>Gx[p2~>hѫc]KU%t0~cx^ոfA'8߭ )8ؐLc 9_U)5 Zc}*nD;4o,J~s;K"i2NIgijvu­ QrY*X iNn{r]`5YtB`FF&^YM5hv76gBleHe|,\(6ClBh]NE㰺nz&t'&C1ՃRA2h.LNH \+V=d(d@y#h(ےKIHOC39rNK.kn!鰆R)J$oR"NEQoQ?dFS

IX)](Ѣ9s4ɄtX.=E ( Hvp5=F؋ܳV%HA4}“z(i LWش( N#8R B:=}PaumfXM.lD)2y4/] J/,܀҇yXAa/`^~`S% Κ: iIXmg8A9!N ^1>(D}2v:Phr?ꐙ%]?GĆ@oxOfFN$Kq*Joc(yWPaGުEOF.ł)˰ g=y @6dDBjpV;18cf͏xm7>~Q5i)1I^.g}vW f}Z{/qqgX?ۏJ ,<5xyIXxMȐV$"m<ь$/9,G7x-IuzH@%F!bm,ɌtAxz8^;Fkjvi'? ?w.i-SIG0dθu3ү_TTe_'ISHt ^6ncV3 Y4RK7,nNvGPVM߀p^Pse-֥V"Qr`jo7eKf <ƿ"ƚZ%C1܍dמˆ>UIQΚ2Bh) QVI3"c29j v ]7ptzs'(t^Ú!ABNCVoX$?9'9Z!o2$l,nEC&߱H7BtR+T)`GOSkz;r$`HX,`O9ӮJ*6nvB#2{Q$)0FT'TacURpga(.>XÙ%31Qѷv=x?GS`)|`(̓P-+M@ͦUfӵ^<$O *bD Qɽ~" 9$|wg'K:ʰ r2v)J|-@gA5 ;di)sTN\.yY ?-g':Ɯ\|תE8=4|;ьF*JJL2"XR`TOj#,,bOnP`,m_sC7D жL#( 7T:i#&N m<V xgj^Co`lG*ȺKx [S$O>i"<mPL"o~8jP>Rz)h#!ĒGQyK Q3i񁧬ht,d-_<;M^b䗅T/!w+1kSG={'9ܔOX3de1,<LE?3F5YψD׼* -S5sṤ"(bmG1Pk)CE3/RbV9,2PNVT_C@ 8vML `@b`^EBrrp`m䘎9YӀ"In &,3DIO^<҃AtF^ocLFd0:gqu홾h Zu4#Ew,CgLƢk$脧}R[ |«^!:oJق;u>-;=NW#7TPcd;I5=8ߟi0".n;Mb8Ҋrx|a@ELXt%qRCsyg n!yTJ:Qše*$p]<Ȑ]'[$ѣ.a >DazI/)6N+7R 1-ؾ:dqw=_5lK5ih& C[hYeA߯$b 2͓b Dus\$~Tc 7Vo-.${T8d~-܌&Uq1$_-RA08x.齬PʰBPdg(%`,1&Uhvttޟbη賓D3+a~%N˹հHvTEu=̎]jV%. fx( O9K@v:fhî<xǻ?4™0rAרAon `L OcWg`8)݉R*F QS)- d96Jؠ=V' Zno4ИѢxjC(*8T:yN"*R"&.isVٲvÙ~[:W z  bLꡛ3͟N/q@ Yv(<ҟ jBe+\0m#nLePb\QM~ukc;!][8]z|GO|`'6р%hZ`[=_G+SvMY}Y [ ")|ߤHhn.ۏ&RC腟S^,Go^1ULT5M ]F8TV+~_tkyʀVw )ga.TL$'iJR#],ĕBL~%(їT+;Ak^ B.?uwtoq/9$arsY܍LRY͂9Ƨ}UP-_2u(1:-.<֦ Y_Un?α u91fH Qq6l{7u9y.ބ8H-ZdhVW0 z<%jw3E#!'ZjK&X"ap=тNn$ ^uWFOy%sPpr4Էw:*)f~|:%e,7Q~7WGb:L'jz%2np8q ^{>aqH *,}u];65ܜT=I`){=[wb3b|ˣ]m+$!J(I'h9`0'[tiUx)g{bzfס=KqS QyRnf ,YT.3*s Z:Ipmȣ ?}uYONF9;8y?$ӪCEǹg3]mVsgMZ? ub%J5F|'3鳤jӞ ȀN>c XXn=Bm [9 Ռ^A'/=x'd?_Ԝo7N`reS|NqI|룴t#PIc:'ܷȀHtKnu0.ĥ҈.KՎhxJ/;0$G <7PԹDkJWds /aoHkQ):69 .9n)]um1٬~%tSؤ2{St^A)N KOg |9%g깭ؘ RQ(I_@Ku?b1󽋬p2`K u=uXlJ8WADSh"Ҹձ!1pRGxjY-UQg]]o662rޥ!kkg{4 N_4t-r h`r:NnvKYu|$IDv 6eG>Ž"4ۯ[$2rO%nCtJ'[tm#NS͈#8&L͉SSt?ӾSh ڝjzh!AD[)J;OS߅ T/< `9]q;:X_\`%{sv]82ObeCcDLLFO\^]Z| 2cmletBuB@[yY;.c''z8VSC(Gku:ƶ7zR oK͏akn8n:a9+%AxU!Y`~d|  (Wvi|' SYb4>Ư*dq]:0- 0#ƣ7\WV;=.ޘ&',liޠJ›>V mGiAsNC%=IҎ wZ:-ug%Ny@L[Gwk7x3 \BFYmSKy_j'jH<oh!n8,X>UZEHZ"@`IxCzFbMs; to#,QoU 8+k}~jܭ*Ԃlā(#93b՘B͈z8L4IKŀ϶G]yѰAȡW" FW^1H{¶ؠ~y'*1K-.R4-2/1]1 i̷A ,H6 )oaGڇ/$˾􁠳N{<őݼvۧy=[Ft4@ZRfMGWwC1-|&S)@]cc% z"Rĉ׎%Oy݂ : /~d|N8-#٦~g{y2 [y(}99,# iolʼn?w';T?R(f=T`.~0SG:)v͜@nSY_XcPGK5[h-.\sE ռr"byC'?ŋ69O gmaH!~:#qYCj.Ŀ˘s8O?`_6ulpg>MӀ(d@ Nlݐ PNFp>kWyR0X],wd>.ݧ6^2gU0i[E@8S"p#Йs_&!-wy{wMWZ߁un)L K5Gڮ; y2\BQRnJw1-Q[b5 uXӪ9R*45&8Sn"8|Rt{#@CT\ aU':%p:45/f2 TZKl}56yW K.tlWuW@ vU?]6˕2 :%z3HԸ(/:٫ d\kv }NUE7g|dliZX0r0?A2) sO)q3K"и9rQn( 6QS ȷqV_ݷ9]Y"vS\J}X,̀M.a\wll44d-7!f(TKX|01m30~k@Zp!=G V.oD!6%l{"$p# _q4P\>M!H׵m\hL5)F޶i ؂-a^迒q̈́V:i!܍ށʑb)[C秴sMSs."7g'J\Tur!ovХ='yDY@Ӥ*Rm.kV$ QiK7Td-YQ\e[WA[(${#VI¡cҷnlRv$&V6{?k cGc6Jd $hRMpb>p>3gl[m1U ګ0C<|q,tɣ "Gʳ N =(>+6~4+$dW|34R`r}ZCVt ݐ'նo&K?He*g?YgPm)>P 7O5>_|$Ag$vꕈ.6Ys.МL A:jJڮ#PQ{Op0 oȦ-,<¼>l"I=0NCcnܕ%8Ak/l) #>jKM{\v<; XRDZn}jov <Δ{*X_Szi~t'x ]ɅAYD܁`+=eĐ߭h0^oCif%X:>#ϼyN~XTff5"ΗO=A4nhMpP騏 II-'ajq|T6QvόCRִ%%*bI ]! ɗzyd@gUM;v{& ^tH:l鱂qJOYʙ}׽2O;SMxB?PC}Gf wdB3ոNr/V?5abPU]I5LC♓j ?<$KM(D-\LG|JrԾh`'Ƅ lf,@'/h wU+TIҸl$r`RZIdՅ=;."Wǀ-4Hx žnܖ^2|a1G,kL;UKy |'XƩŗjm}> Hr&\?}&RX`΂kJزgAYMàYM$ejvM4[GR{En חNon+oh5|‚!@ȑV^$A\f$Ԭ?wx{]~YnT":zQ^ 7 ¢җ6J7XF$pk݌ _ 4&L4HBz&Zuj9ABjlʈ×woK=iQ7{C9r#@4D{ *%XC]?$C;BQW_Uǖ_tv~H %^1zLT׹B5s|\E44\*'^iؑ 6A\]1souxotkҢ]H`h\ p@ 72KJQ|a@5]$ݜ7;u.AhkSZۑX{vtGK[ ^B~vGq `_q_|V(zcK&e0z]IsYcti w!c ?/%1Ľ ׈r(cH-XA{ek`.oK9c@ c_g#<ʤ ٦CgIz6/Hagikz- aZuTk8z6 pӒY|ԇ!Λqi/l4iNaξ\f}]CݱǡKLqhzP8B"/>MrgGru; R3'-&}\f7_N=|9kY7_ķ}qOӽ ⛙q<^գ C/ 1dktߪo6#Mp-{e !JJB 6Ð٬}cKڃ0gI񯒁Miߧvum8ߛӍpA 9BVe0)`6oٌZv4!g*﮼|hf&lnMͽWy:$ȃK[ع( q0[ ݍMxE1y|`;*-?bMDS5rxV菸4u~2H͸K a_-&A0yl-WsA?O].:vd/^`͸BƇ}J@ф;eQp,ah-Shwo*+[h-͜ 3kZ\p J3?FCL)!SN0@ b&8s5M%@09;7Q5b%dˑVo@K5/:]HBy=Bep`x]%cYh2+aWAg[ty ufhչ'Y@ `cH–{J1ZCNVN6@c0XFdW29AoDż2N 1ojVIXVbq秚}_ńiM]`es 6 je$ nB OdϨLF<ǵ"I2 ZoqIZDO2%y1s^-RF2kut,9Ø')3X1dI31Jdd-2hCO=h=%?AI#1͝ ղJnIxK u_|LvIZ"k5>(?!lD7]k-a~/~ D"3iOץq/p!`1" GQNt`"zZ!~x !A)RmUŗv38zjXCA^)cs8p׉Rt53lsw wp!cNOyYdr/7_!xJ0=Yl"}Z s ɀKg1NC, @SCeB}}`hWUu RG5@'^1$3"i1H{f)5o~}Zw?9nм _sB/' \JheQׯjΎʄy^YN+ݱ!6,?Hp#lS}㽛F 5RE2Q,^0AB┫ŷq㱘#G%`MhQŦ 8tf/{Nw5̽K^VzOPcF^wȾ mSgG#j"ᢷid\[YЏsҒU $ҨX͘<bZo U3{W"UD=^N [v (Gx#''5H-x.=40 88Ф`z1{HB(}6qlߋ|i@1$)]t+X >E8lhɞ-{p6Qyt,_1uP^.NN/THX *`M**s(dXS}]Y syv(ƴDa$š'&v& <.fo3ovıIԋ)cR I\0{!#ZsJ`. %($Y%V8[FC{Y9jnö}3`J E Jdcd ᏾ 6ɩl) KZ}gJ4EQݛnEd`2ySu$ { *a=(W2K~2n" 2JbOJ@-H4@ɇ]P&ϊ: Իam02s8m>p=}wc8~xJ_dMshGT1prw%m5OrKDwB:G}yd߶܊d7VK<eS{xq['J)IMxZFXZ]_cC‚sLXlTXSiqm&ߛݩXI+W.yŐSS~2!٪e5w1wk84C_Bd6g%VTZ nܐȍFxyd{%U֧~㐿Y.^F+Bgg >Pqj?w:ۦ3V0c& ^y;wlީOF uMw } %eUk ,T蚃iW~fFAvyA)jYPO9_(A$:hx,^]dJTm*Uď1%؟h$\<{H)i10H&꺛_{f@ V>k_Y\%,j#|}w*̄=4KN ¨Y J>L* Wcdo 3^ŸY6MfbK z- _j2 ;J~j|B!w5B;Yy`d/Pnd\E@jS}?[M~|4XvliUa7lH5a0P4}qt:F4Eyu>e_l2ZXZ,nXq8vunU*HWw?wNw@`;A )6E?˽gȬ_t2s1&vtKlCԓJ. Y\7pEvpz.xP]$,rOA՘E?j+oLf D}0eT"`Xܨ}e:q\շ'#MPʔKMY5vʻ3|݉gz=>ux2-k60`Hڊ\h&l7; q|Pjh O oR36ڣ;YLj2NX5L" {.]6>.P/NtKIXt^% 9}8 xRXuiFmDrTU2XaoW BJ&FB6)jbr8ȤgHk-nRkWn)R}T<{M~FR9C_XQ3^s< 3!i]d7S.âWl/{V.o#WKTǟ%3Ut^$OczqI{,b1}C\DzB%~]{fvT' xW GS՞A`{JO9<gʖj%@0&er,j+rIV̎55?=gc,J}\!CGc# W iWKZUjv?836ŋ*[; 5g3NP\ߞ]cɘ@'>E“Lx|ʯFl;I5,?n[\Ԩ<]ўXg/۔nz F'@b=NY,"!ƼjG9InolcI.v2^LcA2Ņ(H󰦭qqS1_ژ Z'Y¤l /l2,eIZ,upX)> 9Z' |[4~Ǐ<FsoޱVDNya 8{_ZJFt3f9WJ7UDYL 5h,RZWTSBЄT5uXv YMk8,>?3N9MƒV;_ڎ1vpP=ɨwI1QrqTe# iIYjJtӕQ6\1*f2vA4l6JXL-9 [c`gNg0wΗ,*xQ} m* GTm:['<&}g$ȨѶ}{>>iA&KDR6зxZѦ^\~ׄP-۸q]ڄ$>jQq PiY.w4fzgxOlMK/BsQ(uQӪf$_  3nEjʳupX /oK6}ez~-̓9qny]8 Rw2 Kə߲#|vMtթÌtkYqlDaS؃M93SK'r٪K8`YA{OA% S{%-(%Î+/y_6>!M[S*"LDIGi(Q4H<FFEoҝ(٢T#.̞,ncb uy~ $4ωJ?Lf2I B[dwm ҁt TY8Z%3s?ֈy%'et+GS -Qmʿ}* ]%HH1>=PA. D`P7b 4(̬$= &LXk% =Y5~x@fūtbV"׌aBD?>Jt?Cp ;^dRb` _Ot؁b% IT;J &YudYk#@?1άf}5ZxM0?BVDv>E,^Kyf=xNlTШwjsw񣜵fOVie#WZy=&ޠ԰ð[ P5A vSZu5;Hw(yZ2LB&SҮJM0!OuOz^f[Q$z*4! <5Xh⣥sc\:Λx{v0*UJhs^\L˔,I I3- e. ZKVGVX4lch@ LUYN*ބ}'AaJ<2fQPI;4bް%J#ص:too0P`ܕÁ.[9l}R`RwwWG8m ġ:¤`Ājΰ|6EciP\ ?Cm>H_|l$m#pj6VB %[ Aoæ|Un)2;;>M \=}@Ww՛ZF!Z|: ui Ѣ}b4>fO,.餄ʷ8=:%i縳甃'0T@x V|"6? &U; onYoK q OgaDoAxP:xĞeΧ<\ ncdSXM^15$أ^XT.Vn2.%տ@iiN%@]=U fV~m"GtZōqhOFu<P;i+)b|7](џrx[‹[ō4T|)zaQFXյ%G6> zHJYτN0H%.N_BHm)WvG.9DwޥSty^t`tk7[z]:TtGg>E( wY35"rA!.Ie'2,k)ٕX)4j?x=-p mB7 v֔pb[˔leF1 U,nn}ySI 7zðӰnԞdk[Fm$68_tN?pUP`e{/S(TtI.ŎR KZ-s&.?!U <NEhaƺf+Å;/(0W|Q5(X!2iO+#N)I+8o=x:~)詝KE&P¢gS:X!A_mvʠ n@ym(T sA"|vɥ\7S@[q5ZOy^n|D.w;Or֥;7X;JJ QS7$r7E^jH‘"e4RYAF|͛m7: hQղ紽3?u>tIF<:PTCÉ;BCꕬQ')7IaBKMJgsBEo/N.,Gg_dQyDf Kh| iXz yxez*1"&:H5cgAp _`dFGJ(nBض Ǩ<+ѮCZTf')YɿCN@ _ ?cTȁOO0)ը1Uۄ|,yi+TTdʯo=\x5CG9 W&Jhy=_ ;(جBak=~ƾ=v<;c18j'.mBz !xnTmY\XVdD{&BWcM@ebmҌ Risܨބ6+x_.>/qI}hO*#IUZO)N' z[zz HEoV! }ҤȑE+)v{D$8M*h:oKgi:E#vr?RRzsA2lO+uW;B=dR $ |LFfPWTŻ<{|fx n !PӢQK)3G:(?*Š6y.a-KJ;vLk 8VC^@~Pd@8g';l@+]L)g#Xi jIh3G1I="[曭ݩDI07l?*[.x'yN|e`?m7ħ1|(H*saP[!@ƔcZR4&OZԋ1HckL0检qR/,>=k`O 'uT'T$cw(N]t*ISxĭDՖ').r\=;jeBSnheN.v3#[iK~𚠉;( t _ ,0ҧ:' Re$rR%a7M#~9.]"˻^'L = .sm)ߣ'e`.i;~\nn@ ,^ VY`!pG;u/ȱNBCc JGt˄0Ǣ&7z3;*sXn5@^TvJeX6_VWe aR+o2*ΧwX^cG*ik )Մ0T,TA݁]Q)ʌ֝afӉM< LZD#|lM!}jaEY"ߡkIaK^;g:a ZMlnw& pDYdNh/9LOAðTYGj?&SN~͘N)kb$ت<{AÝ^- XǃedY@Z;q JTqL#X " [ήQEU}nHs V}5*  }s4sॕ({Il$Y~AuZ﹙x6BԅdX\>/ed-jc0z4Ȫg-..zb;y'*=Q@]N~)L)" ߳ !%Kޒ[JA)f$w"|R|ݙjDLNۋ0FTGM .gX;ж+YWيt@fa4zZ }3[&eo<6DK5 =3)tQT ʝwX4_.dQa2@%'4WB )b/?eKZ^\K0 `Q*:g7=Ք4(~$r(as s 0õMȀ.q]k37URtUH򟢶 2\)M\*}׌flT!V0\{i"Y› GL$qQ;j?fDˬIb?2n C/y tՍVV%R xVU΋;p<$٪Lq"صDƤ >ҶÃb&Iz`)4xJ7(,WpmH%/Zrb|^jaT2Փ_&Ȗ7,oܢNj}]hK0Dx;`%zi;Uu":TiGK);,n!H31.>Pr|n%:JDgj{j{ id6/Gͪ>JQ|-@RBd1qʐS2Fy눾J3ol2qjV98a='dę.*&}#7oi]"qDn-ӲbE(va/@޺k䅮nȾPO)S^f NJ 4d~ieiE'ߧuuKkï'D͠Th:а] Kbfcй}]$rP5# [1 'ByW:q%;9۞ݯ6\XkU!G$}ק^xj])FbGq^^Ĥv3b''ĹL7un"/Pjt$s@T\iFZ E D'\q|Ys*金̃aZՕBV0AoS#z]% *1uVj½+~+n7u~όx6 Rw+ffy\iWc NyDY_|c1E]-uSmn4vK.E 6-?Shexn9&xGQLQ2L E=9PX4j9Yk{37L؛ *f(趚{ z ;p[T-]2 3E)yig ` $G$oĜ1}KToM% k R{Yw+cYBiDVܝ mΜZ{bAT{+YIsnu ѠfZ&5>o~BWЏ[7 ;N._d"v`Ǭ|OVzm[өd`܊I2]EA4:TzNUTs|ky{Wp= ق*l?#ೇb!< eURL-:եXܟg4m?Pem˽11Itݘ |88,=u-@ẸUyhFSv1&[qpsgM~Md=q{ہ}t~]; qݒ0#X6=ٽ3,Lfmq_ Փjb\?pH"̱ #=!,$u:ċw_FEZ8eTXQ<dh&TG'B7;` b㉝DZt+,+Mp+kEy_99qPiT60^BN&+wNn$ c+1%nA\q[9y$ b{\:=_\D?L -D?K3)?s:BiMBW#Rp&ډ W͓¾̸ ھ9VY5ɚ!(z!WT}4ӟr^V2]l-r5 Z SiMt96vװD[n.MD^<.=EdњC\kBT1ӖǪ4KJ`-.|Ȝ̸%xV5a+6Y>dP>̰>WK{[QE6MW0`I#5bx>麜nJM$ej9rAe XoclST8[ t~g#!\b4j 3d.~Ywo# ꊄ&,͇oN'a!/Jj90E}͵|:)6r-MO6R'TX!$ۥ;'mI\4]xjlq90׾",f_);~CQfE9h>W5B3 #Yr{e-r^Ɓ?'OH'=ѭpTiAb@/"ߟRZ P ^epgW =3~DPC34% <9"5PѶ.깓(A!+~` X_o#(m@hiIeQ4CO)uڳ _Vp.eŀ> KuoSrĠ/Uu=ڧ1gr0}X@|oMWdL"֖Qq?(ص\#CNM O=*5*L!i UPI? T t5?)xK\[w xA]>0!ONݠ3$crEa328wt.k`b>:fTx5R pl|WPK5j4> !0s` pY@ӇU<]`Z W9 67؁ޅ bvoq+z̖ ąRa )nE>y 9 0,-+ wđ.GԾ:+ Ҵ1>߫㠓bHEURNOAujĒСb%CU",ck ^ SQ.ER >C7p!QȼZJw$7ᵊ$ENoKƳ @4; NC2W0KNJv1Mv F77DʚI&3gke7X;^[ksyƐ l%Iܖ4;/{خQ vOp*li,X*/&Wx hM) nus\+|HN')0Ϊ+>;=-Bx c+׽, 絡Y"023+ VF{, nM(]Af3e< j|1&PM#e<3!cV>wFgYp̗Uyw}mj|!fjr{b )l9A$xu8r"  2 +?ƅ9gKy|gMG>*.u *(ncUgޅPJ-cp]b&Q{;z=V)*q9y_jB0%ͣ_L%/:JVa4w6Ar-4!`[ϯp7kVOPקb&sRɌFICmϤVdZZ$EHfk3٭謯E㘐eZ~8iIdQfp 2 է5IH:Veh˕}=`2UTp@'~"k$ uJS/ |;b)f>%j>yoIJ,OVmҀ ;K:È7m;Z3@N{U5qyԝm8Oⶦ` YnS!1u /;ۘON\2At7WtC(å xQy7} CnJ dFY+)ONT&ӯD?>Ǩp|KuKF YE$t7On<FDGܹ棏d >v8A^DFbJWNRভF%aDNn1;WoF u4 r |Q`[.̋_+hGWb21#K,8 9NImɄKxG>6<`V)r w懑b$m0$ߢʼg}^RQ~#JApzt;'In.eT=ϣJd^tMi*HO}MA[h#\&"x;#qK! @/5GG;2HӜtd!c jDB!āQx[R҉hyV\Ѭ؅=`ѾRY\/ɮ!*o$VmRnVd m~5W _f4ƂKɣE$l%.AFԾ2_K͐b- V|+J}  2'SoJDU[]VѕyT/X6@:~XRQޤkLQ,(MZc2?{9h7,ͫX6K50o`1QdGUǭg+#*У"C7lREbCN~Z,CJSؒl@K ^@ <=2neWI0>^ltO\rpf&g|l:S#C86/ʀ_; qTC<PR4|-riܥo0J&onSO&@٩R҃rV:졓/g/cԺTcB&UYl挺3Q s5VQ29b:޸+Ah_ NQ9wsm<=C-2rQU o>oVfx65:\;L_*NM[$z kW !SgB%,.]óTJ8Rz%eH(A,7)Kf.EzA7"h+/F&ʂ_Y 7~Jlr2]>73JD5:= W#7Bvu~ʤ^;`}׫P)zT뢵kG?o8_MCY[=@3p)AR`kO#@d"q@̍C.^r~yKHZ!k&OjHM9gUrI]8d&ZrմF`0=qiqsm#yX4NT0޷9l}/y.1ΈCE9;# t_㜏} 2<^Vxn\LA(dTU@aܗkbvSdzTSun/JA{BB29m=>G]s3 Կnٔz1LQOEQ g'2xM_DjWdCOoɽP~P].S)R-JVoىLJ[cJK>ɘV. ބz[;AŅ}l|f!)c ;*ծkD[n"q7Z)3tR f+Y* c){@j7LoR"B`;}%>;x^OOr@ D8od^.[tEwkŀ^u<߼~{$S8~M@s_ |è@un/dFĥnlS(R51}D:L.Ξc@/M+W[M6)%PE WUC h0:@f9#+qH ʏz&sQƻfVg1Q Gy䌓϶Z`ɂdY"S%Ei:ԉ9R+1= \0J=up@eCB—-Y+Md-]8GԎeb`Z\& {lFѻ~XIy<_?P Z^X!\f6 48++71خt" n8%9fKHY $t\-l}J|kx/6z)Us:(r`0/>5p 4?4gLd>}gsz)ɳkQoe%[6QY:..HvDZ#S)ڬT߿>oO0w P;NWCͷe guxՄUei:#s'ô=QEfz&9ܫ\BI*8"0p h?qsU_m~Tٽ$Yq'Y1F p۸h/#Wہ ܅aG 9%‘2\%cgd|%P%`qLdk\ Op @%Wy;[M9<75Bm LI\Fw`4aRE&[>5 3!DLǛ7X쳶exKuOЋbeas/P; ZQ6`L8EIs6QOw'9`'X%TUjldU݀ p!{ Rs L2ӣ <ΎM7FU (+T 2BҢ19&֭˧hNo!4A#/ܐXݜw, ^0{ϕaqԗDʑ=\)+lYoFCDbqwEsr#gIs#J̮Iխr J?f>nb`4%MB_f5WD>nIHb8ԅ3HMh#)Sh8p✕X(mhe( DaB%a;IE5U3,ЇڎF=_: 80TN V>o$w%՜?SۦK@ ORA-xIZ22kyYSlr8BoxVV!I3Is JW5x[R H=5C <<of^<ۤe͞$oȕ@(' } VġTH qY>ϑؓQJRca,oZ/MODʱ8`6h.ҊY5HZT;xc;1T&0y-&-vsZ횓DJJ![1cơyi9׻I [PoÙK܌>Y1=;3R_=6Zs[T/ïzB 2YNz[c,KFw"u'CFh,g"_}m u^G,cW:c5,#7/R>"+ߴр׌m#ĭ*P{PKG{XX`n+V`{b ^9ʬ4^G{0%3v.iԉjH-24T)IUP]>CU Xb<+Os)^fLѽ$]VyjZs[y̡?Eq//Qf~TxCT]τ:}8۳`2aQW GX   ֛_ B_C䩃.F⹂ &+HG?8Gjsw Y:{}u2CFǏAaԎ^_f'`3^p5mE*Ȏo2fiK@ IttʹV&^e-8%w4'*VnbDvEC]B){!% T=(ەp]6j~,.ύҘ!M'kBS*uՈK +,(mJ`Ԛ #D7Xԛ u/#$TV9=gˈ;? 'Ta̸JfB׷"<0+kթ^Aga9ui}߇{5M IO}yHx"^:^y4qyzxXkͪ\ Q=q.~5b焨е0cȒmJl\5+k;Qo`csf!^|op;W*-M@zb]fXCѓwi|Da̅X5ɶlPDs6%lV@'YקO-BVohƙ$/Ȥ04O:Y>D-8]Z24ߜC =APNb/FG1v +pojfxI KRdS[%HBN?> :f?AtCnE"|$9zq $qRs?2Y=fs7y%v";/LIJ6oeA>~qW^_!1_:V<# w).X &Rf=0{y5vt/Ȃ($ЌCE(R S7BG &0%&xF|{5ur^飘k72}9 x*d~iݵq@Zp]ZlK Ym?FJ0nNrkQ]U]y{%~96%|b^SN25r(ìHQcj4yP?}}UɭGr#>) rDZZo 9 B[)/˂cq- [+^]WuzLC$3_C >⎴^'|GOj;T#jNl*MPua6c8Bwb m&(AG2% s4CI~ ["M*<{bd0YTo Yn3'%V f+z _8Yt ~N ̜Q#jIElp~%-_j)uG3RG1љH@6 H%<}UGlJ:>Ӗ)r@s`ə8dXe;AAgVcבB%s`fp]@ln˔Zg\y=w5T@a &++R`+QWI5(6*PS2ɂ Zоu\8n{N wx;۟AA%r lU@px7r)A԰;k%*{>(pA@<)-5RmmmJy2Siwy`|$TDkBT*F{\D(tO!bBf?mEEڔLXLxfsH,mzO\$΀h-KE%ץc7wZEEUy^`*w}|rX9D>LvDQNa5-r+c?7AǨwM GwsW5)V ,UD]n s)Լ4wPhlF#ZV;U!Lb9ڲ,SdT ,sf CTRh9a.UD]'iauD>L;۪qDcͣRq`xLA KBv<(*(߰<2%ִvIUo+gb qraɭ&AUÑ|[Ԛ ^)d_:`&^_/_i,9~۔xڪht.2S'QmiUvZon|o:XـNM7Zz#bOA1jb7Kq,+?DZ_N~;{Pqq[ͭyNe[UL ۉpf<2%0!*gdLX!M~!^fd)~^1?"* Ieh<,siRbY$o W5Y^X1c!Z545.pW~@ڊ[-oig6{%mþǒ$0M]@Gi&tĬ1MArSuitYuBJ9Lp l 1P[(KZSJUb(Fu<~' Q[.Z"uLQ ;R|d:FfO^&9|p -aRC(+4OTE(hp`՘gy 2vDˈkm  D+] Tumo [[@jr0_"ˆk^ Đkۿd ~$$I5(IS@q4f7rI0x8 aIaOsЍZH uEEDV7}VIkT3M!pGN9~]VV4o_CL\ oB]r,)t܇'UcGjr 1hУ9@Tjv$RV,Ngt1׼2{C%n&gLտLMSE?6Mn s׮8$,)dy# I 7#akN\C*{Ub THh\_)>t*_@PuH{N{QCEb|1b_ȫ;;[jKJ%;LS’hi/n11$ @{z.sH;}0!sija^P̣k as}a'boJ@eK]⍚I3u:9ԏW5 =]JAg3Wh\p{ΫOSYG@k?g$i?¦avSTG"PC>ɘLh=%n+4Z̨ܝ8PU3$n?/!*X9j] J(W/DJ~=l{%B/ɻCE1q5z<Xy'㩅Pu 1 A#`[@{\6^ VXo"OV4[:hN!QhoL(Y,HQe4T*9Ҹ?EM芆3N)m{kV3fh2OXá2 DUP dOAO+)NP%%\xhwQ-NJ>Hpj6jj7T0==Av,;Ze7-l>9Ng-f&ұ/i O_ vJݫ-<^uY0Uty%xkV3{[YɚpZXxT1ڡvH8@d}^H-꘸uHEJna D"XJc!w{МCRFG؋%(.c oQ-+#$^P`g,t0$DVYkKG$KR{ uK;2 d[xu]apn:27svȈnmXmQtUHoړM>Np;rtx)bFƼXm;XW<)OVnAYyﻴ!R'g=C um,=Orp9av! =EpGfblt Z*p=ggkH91 iuuKݿ iWlN;E]Ey+ϑ3VBǖCm8MH 5^Cs7_/'7 a$~S넞D'wz,Xl9]gh>At6kfSnP%/ fb5(\C[IwzebΛz{&.qϷ*+k_rs" $Uuե4r{ԇ}pIޛLQOl}I%#FuI{G6t/tI" YR1 U+vL_/ȍՎyXHȪ&g92z1~ (s.AQ 1|%(:D]=ǗDGX31-V&JxzT)^oܜis#W5ɿ;RAPطo_ Lfקn!h}شK&'8 ǵ~kلù}۷Χw-ٹ6OdpyG4]do\`+ACG 'w"ybH+Μ;BqT !f?+~G$(H UyݙKvCԇ6JZh!nUu: + <4`[!e` KPtlEKM߄_b^s5Tioהsla ߁CՊd[rؾEubf`c2uŽ+twм;A*^]S[[-`e_䁣^Y"uNUSWoMnő;r).`嘣`1zBиmkCEHp6JB]r$cP!zp7fd(: C-`4S.惙Nϊ8rSXKH? )DyLHHGNj!L;Pi|kڔý{u\Q_FwhD a/3"]J@9u$Eb58/K3,ߥWǜz+9p'Iulս F#RT<ʛƨ;r~7|tg<#n]z7:gж Íx;+>vGZ+J(>JH3[PcQ<i&|&8 ft^J6g)w)%( &㍒0Wȝ}b/bG.1z36.f 쪆j5 E75ރ ; i]}FZ Dzߕ>b]-䪥Qٛuc^DҲ!ԃ:~b9#dVs XiǠXȰ>lE|LcfJv&8fzԍT:Vi_&8$H#K¼'xoӶ)/EjPhW(Ǚgۦ3%uW1]|htqISW&ޡ[%j6!hBws-hY۝4N  ߒnj8I0>`9sDG?KRM#Rx6"heo)F,_XiEZEz:(Mjc̋.q(%qZxiKȠTD lkNA `@zt8_0;U"U+hDP $1:A:C,M=WJRis:2l? eMSiTTTf;)1|Yݮp_̖x a= y}ttz`\U։m0q+sT` YfLxoM؀ Uz{u;b[Lc(O7-bcG;<`hXǛZG2 ڂ _5 R7ti+$LPL(>+<:yKpK @6<10ɠQkaw3nW#lZrzʹR{53(jH=.*?q}^*<,/-pF%Dz. 4T} ~'_G^+xk.0 gw?^Y!*a?cl?\¡MmuX 4mF Iɒ!cgoInz\3}b_7[ CF ^ /P]ɱWQ/߫p`fW~tD,ɸ9څMa*k:N$ <%:ZxMtR†K)ILPb=ennvo\B37z_~їP nպ<^,$0T:BSd|ߕ"4@6Pk%1kUrνGlJ]U hy-(cj|Y!(f6 x No"Cێy`FXgL*LXChyEIk5Ley ӫ\ yp~8V!ÐΘ8)[dY'_yrTx_CUD\؍jկ!VY%% iphO oV}w%Mwn04p@IVZ^xS^+Y@InjUY9愦AMb8@kJDD$>%sXEM~St1)N ECw~_T83livRrhI7cFP̶ ?zc}q ).d[ƕ0T6ILvִmܹ\QoE=PmrϷ>Naʡ-,ZC9WR$#a8.9e{ͲpkJEMTon$wZ.uU)HCYYsV.a3 ت'ëߍȞ\e"G52Ja>?%7g0ZF$ +>}л  uSM|&mեϻ3ږƃ;C@T5ަςk&ދ5S_fߟ9+JcϾZFg-RY1Od=Ϗzzcrg<6aސny,_š U7 kC]6^7Rx#zvYl+ގnmNWj]u*AB9!i"c$4|\/*#Qz +TC~ ? Ã?>B$ $&ȥ]*0 G2|5~+Nl8hXwc~T5jm`kxbBjИ4ց7xm=zr@4L(M,TvPq4;0`K-/sF%;xZXvYxE8B@Uvs=4>_cN U͝so1Bf~:0øtYd}rq8wd>Eޖz;u 7<%)Ky氯gH"^>Ts1`fzBDo73:CeE|,Px㓨%[2cI ƥVS  fJ6Ru9h/ZA|3%{ɂc!WI*agAds:25A$O>[ yu0s~ꠅ8NA0(y/o v\65$sro>?ڦ\j`7=H50h'BXM4&eILNK FqgH)G 0oS.1ݿ }xZzD03tq=hp=<8uy t$cNm¤~08͍2`A-—c*ILw M LlesrHu_ծz>S^lh~m㻿pC־ [Q< 4lC_Z̈́oW/# XD/TW/qآeg0d!rMܨM`q +ZL WhQA;+ y}㸖l@ e%*M1SdYnmxwL 6J oyI*t#}:A[̦3~ԝ;+w:3vq,ev)]ѸKk#Q7VM B C k5 *s[vDCjVj$ve4nnwkdmWz2X{G2OzɟHk ,'~JMCK@))$n)㖝L%i^DUB#)CkUd5B0D>`:] labb6r.lC^6lI ΢hJOA ^?^? (F\kU3od6 Ϸh4U3K5!o<غzUY), UL6D ,֓ݏc hxqЉ6kk+vϪ#)u=mW59|,>ǯXۙ[]7 Wc=Q}l_Mq<4FRPMc0@z>@0iVgv[s:8 YNt=BK%bK(Pc x!)WPv^+uj3F(JZݛwH'#]aOju \-'9ibӬK$9L(=zhL~ {N!}6LsuOןeS9_ni\Ns<2^'C؎D{M^x"L8|`?C# rb=Ui[<< V@7y~U:wjҢ.߱%H(t@<~cq5\}I.9rһW/ 莨 cEr&1 /7Y7dm?<7nd;#Z< |^lgd4;^91o Q~\ܬ: USϖ;ذ5e$zp85?{8>|Pm}p-Ńeprv 2.{(2'ئ7[^ٽtt1&d[5|r[4 oE (DUpM!2< b+#SVe]qv!]uY܃了xI"lEmSIFD٫d#:Ȳ۹e 4t[މz_Ij Oaa+ Ќd (kfs*QN]^:&6C𵂏lΩ)c[ tfQz5ҹEb5E9j3d[1$:Ār 삥:BW_6ʙmzԙU5N@PfsBvfKL#sO1UjCܾTe>@=7=<&AjnµDgbTN5%ie9Ci/9=K_NN~x 8SǞ+eތkCx8{egܤEH ~ʽ`.q I?@N9<˂uF,J"G]Ȉ$.2)͹F$)\HU`E"X}q>?5 ZXZ%6zN߼ ԲV}";Z::J/W>t: y6 DOclAr / acvdƘI0ԝZ,ccž D' xIeH $n퇜j))A!NR)T\M45T4M pSt . zwM.$.+z٧Ԗ%,#uddUz\+Zr8u'i۷|oqyknZ{gg0m| /5 b)cVQ$icӡH!}SYS!~ d@dcjtCz9.vz*R⭷:`I^7r O 47gᷪ/|LNXcF2*FE msBcSo)3y-=+uCVr}7</Z]Vu|,/;슈w(0 LFh_SK(("herJztd&K.؉Z$cRB:;D#2xv~2Yu҃yc+Hbga.=iz̥rYQ$@i|r$bØ4[WncޑMh2l *GáuBgKrO2hP֬^ƙ4C²9 Z?bQavBL21D*KӖ!`m0-cbmc}M) #j}wve@+w% LXL<:C.B`B{ |B/4%]҉]+Р>0C!1;BY8+ 5ˮ?WB'AL2X F VPcQ WEDL4J%c4ni>'bBG! `?, `8g % 梗:{c/#YP k·ɁiŘA SNhȧZީ+KwW[@3Vk?v^~%CP nr6sq:\3aI$rO%4o8 [p(qM~(*$$jC`wW&zP/.Sn/\.9Үh(e族Z!|yMWK\65C;oDh*6Dݨݲܳ$8b@G} %Lr?{~8kXo,9Udz9p_VR9*YYK‍ڰ[4',wF^T,;>9aH;(%/G7ѢBFM}p}$9{#Pk (Yzz?l,jK"&2± 4{-ˏY+K"'UvujXT^bj'T{%lJ|ݝٶƢo=FYT BZna 24:^MG.zmZPŞOTqΊmx/3:WdYm]祉$A!MWl6Du+'Բ,۔Ѝ4a_ڏw^۰7"ᔣh&FLinq:+r'˜`R5M͒"K}d.sd`al>X/9'Q!Z:" ^gi3 m)5coP0P8u Ok9 [Мܓ}tg8: \hvf_B~)6KÍ.*&ܨໄ#"4-RP`8`nkc"49jO y>⽰i OR즷3iIidVĶi##SlHHQ.lb`=cۂlI_'$4;?:o( k+t"kBId(T|푘F,VPBOL&|mMi׋>mAAO9a!V\'UbpPzQԽ20k\#owcl(vTxDB>˲wr@=V#rYR:ǹ+|wf ǧ#l9aH괺}iZbO 0m/N2ԑ( 2)(QQe#b7H[l>6Ħz-ū¸Fj@o׮a"]}ѯb"~_'E;ֈ˺WN,{]PB7WD>vŜIL"Jp&@#أ0:]b;n&}/5#LZOYߤ #0-$Mlᩫ1[tR; v$t Bi <_^!Nj2n"kl!z+Jtҷ:Y||ҵ}_.Y&dM5tT0vݪ1d/ܚh:K/%ǸGPca%n,XLqg_0UujfsQGRK+l© /DvʼOcKZNY]0Q-SڷX氂'ZiKW?aql <e,^c+MN^جW>CƔȈkUKˉU Ր#%[ U=>U(sՒsb鋹R1 ..xY'd`5M2e=O0ǁojUۀ Y"Gf޶#bHJrqr%@(gihSl ȳ;kN% G[^4rcभ1K0=*aI<0: ~M" P"uO` ϱ8J]|U-cѿ+N ;?y % x/3'Sɮ۞Ċ F!nK3׶7H!ERx`h?NaeX8akOVҴ1X-VAi*b!w 9}O0 ]pP!ތJO+*Fٙ7A1 fÌRT{13|RXB34c~H5B O=3*tZ#UDqz$Q/hPe+Z5̅i"L_?:mk\De%OI DGJw97mˑ;U P"Mf`{lV0T Ncz}&@*'{DL4'I^6t1˖AptS_kԁI|1 `.v*82m#i4]逬:! e64unyE]b-!lan(C!LnE퇻tS9*n'>8+_TW,P ě.&ځx_5sgc\IA sK7WyV2mFڑ=-LRl=nXJ S^t7?ļzOg6$y*klg9rya9 z~8+J>A,[N-Ҥɫx=F=/pOr  -X C"' Lw%1yq$›<&$gn}ZJ+^Quikg!$Ve ں';E`wk,x.K)V\,05bu@u׈2ŏōgVU-lz)PI2`(h.zHanv `UQ^_|ǰ5yXh0ugrI'Gtb>fҡ9PJ56VvVUJ{J9{_Dfvwv_~0m_$*=D )%UN,(z(@GQС|=-ˁuy(9ar\3OƵ4NMUDB^V' L$n IhL!tfRpklVNxA[a囲ai?Iic$} p/k d7fd2mt/xY%D6oKť#x|'EJGi]xU 3YIMCO5ʔ>7 UZ닎qJcbk?CVSzLk70o}sH+F`!.onDy1iAm&- Օ9?+~l$ƹ :^t7Ee=( w9IRШ< tw\Bu~ ƌS<1Ρi|%;d{572|HH?A OdUܼ)ޒ"2vǶm2aʤ 9K?h.i\tcOo:d9yuyI3|}G(69Π1ʵw !`}߫~F;ϼ~ :X:;b;=βĿwߟCs:i:OQB}wߨ ==9mźƋt+ũWy/(w j83f`)%)z{!A8aE[v[kUQVӴbV.ѵ0_Gr:L+f.TG4em |sLkSXXc. /p&%]E2/!hP;h\}ϱvȩ[,K>CqoVi[_}ͱ-9\ 5K+x54~2Ve \?,f+f*NBo D+ N++hVZ-8Όއ|>,Ny{R Ng:j(N@H뵶J(UK;V{U'ܣAEg΢ԛG F57dvG^I"*x!NP'|X*!Jn]9"+ a[ &P>rn4($% +,wB&قO@\*kYz00vv#&ΠPېl*o>V?/(r^U_K]޶s*@~Jq7=yZ@HȾ/FDB!KK,+FW峮OϱOi5:̀Q3="l"Ho*k7Hp[Ϲ^'nD24[OPsL3 BėxiR ܁Lc!'Վ0Gx,Kw Ce wĠęcg,1@%Zѻ#Dcư? LIz6Sq!K#WE*+s]׳X{᠙e͑,sY%S‘Za=@6V +3 cxmO:?]k!ivoUrJKJG5($cZ%5X qUw\q5"9 !zz"W燻70BSLdz!R k={(xN`Bƶhm,ۂݚ<`{T?ż֚f>[P;!V>lmD%/9F!ȁ3[XT.|9pѭN j Ppf8u-Fph&<эoGͧYe\ M>ǑӌXyPpD;g#sUsBcފYJ6b%cSϭOq#fܺ򑡪/=I_ѭҪ2M?r{#U$L^w'k9 *n8ܾ$W!WLmQ'ZO L~v敮A"'Us];[O8ϢƏPέo˓ W960[Lħ"Nݍ\ߑa>0,&r5̼q#CDDc& hgH0VѸH B.*5@loXM2>sZj7(1ԆEP,[5-B *^e! 8;:|VB{S<ť`vU)?Kf!U z 7S!^{=z@Oj}**OA0f/c GֆB>4L#ZH" CreXBYϋ,Ġ9 {#&뼔Fb PnPaqqW^~IЌ7Kx4/ %H<]BmVQU5(;aptaf7I*:`$5B3x6֧R[iQt8b{N,o1ĮΔ hxurh#Ov0zY5g7u]z"EȧnJ+8oI 9hR78 ׭͂0˙ `(ӎ 8mSɜg9Sp:%WN無)ͶR@S:9NtfUcBZ0$u;v$Db ] JvԗM"ƒKXqQR!a6n!|P" 7j!jb%q|{% y.X&s(:;`WrȬ׳BTҠݓ@WO|ivhqUrƼx¨kU/@ԍooI-`$}2g[G?G`]q>%>ڀP@;g"9x^A30*|@怶"Ռԓ6}(RJpUkYI]T ~,0q>GBz;ȺكVGQ[984(f۶Wu,x% G%b<:;uV v+XSAz p>@R"W$kz;P(Ne)S<fZ6m/DsWoq fm"4v+S^h ORVcqqB(pS`\!Gcq)چ=ZFVQm|nphs TDkSХ!^N0zz` y/'$t\δI3/+]+u9-i.;uFzulHҽ#m)P+Ng<{}'D;Z&8ԃkM*=ZL=3rV0 z_O280/=( Ngty_ tk!&uN>}Oݴbt,@Cɋia[% @Yad E Is3ZĽ-gj:\{hZG\a(O3ƫ+5] 4Z+aYrZ`>!.)}oQ x#p5L~BJiVD6^*b;DFM#%e1j_;CɆ;d2@aňu}aVׯF6.RJ7_Y]B̨=RO;(Piϳ)xtӮ+ Kh}-[oY{*\wFmvh۶@C'cqqOI2tβ|5:fa`@ͻB7лWD,Mî]{N,l/˞ȩ!1ZP{5`5*LP3b+cgev3""GӲ$P3||@<(#> Ӗ@y5D T7NKfSv@jh9&w-y{.6N!^qy;`rf Hs'%sS=gT𤁛!٤ۮ r⽗|oDx x,1)nޑyb|\cy_pcɊQGhY2Jngfݥ[?=/N+ՙgIzt[}pcnNc~tXvjW&l[-cW.@uXlhƣ&U9/ Ň;H)a(jEN2 skpv>3 $c*I`~kM/Qv:首OweT+41LJ=3#G\p]Za ˾zfT M糖10.l"\ \dgVLpqZfֹ0> J/Y9E_Fjyj[<71*:t1!g,y+*{ơ߹F2<7)ґA O+Zşc 2ƹd:fj!չdqp7E[}=ėH$p ÅI?uYVctЪ <r41؀/o*K{b,SjIr_.%1ˤE 6+9Xd(t @bǡ4/*$s4%Yrv!i4`6V;K`rs2qQr0!n <'\4DJ ⿪L˦xVu⧺fpdđ}naCH|V*`q@+h F`Z&xIoCB8#Cja i1ZC"9âB=.(N!sIIij6i(ց"ÙON;f{7D?hM/U/;j%;=f-l3ȑJ%;{+䫗 *06󽅌ק >:fWZ21_`?麫wnHmX擾8A7׭Ya7Ŭ~3^J^Nbh#meJ7nnfVȇ{E|yݠhqY_Ⰺ@o\ZlkXtLw 1!pɟR4POP(  YCGԓrWQ<c{RG[CDG[Eh[Af.JŪ#-%}ρgb^OߖS k'97Pt_E!xn|F~yGC9;EM5e+'1%ۀ5,ҧf0-R7e7 k$9j5U02Z3PdsQRǔ7Y+\3hE "(ZYM)TRGk_ %* g7c˸0z:v+D5.򖷶Z4adʼn?u)\Me}H=P 9iA 67X}YRn$-(uW}ٌ]XFU]NPհ<ݵZ6.U^Y\Z ;`wE')ހE(6FNA*0U ANi[]:77ܨ{ \=gMWeOEFHn](6d':ۏgnN 3VQ(|_=M ̱z A3i)m0iu V}|U;Aۚ wP` ^klX]Wk b/GazaKW?%BmYvFB+)`G;tIuY W`%rWb0˩%c-UxR\E}V 0p ߎ+@`Դ#0_.+k@/yy%Β0A -Tĕ 47e_ɉ}1̟!)AQ ~Kx2T(2<-0hLo FM+xAڕPM*ٲR' DΞBQOh|ij'h^FMJ4 ^`mгBp30,½~Hzz^upه>7@=hX_eL9npGIlv0'JXAd<*;*≲ Ԭ+`Jmgb &*&(6j).*9@_Ҍ✻ςwCSGE{oF#Дps)]b'I|NIy*D3D?Mv>\GROXKd` YL=$a>Nu7 ̙% }e%Ra֩%zqxx:I=t]&{0>hk.r'4} rWfi-lbx}Mz Rtʻs{UQAM.0:9FrfJkAe5 :ZPT)`HbVT<].v@46ej0"n,5ܘI݅0vnc\/D qłg9:twP,*ÒK/y6(Fߎ?J4 1}-w=6k{M5$ʫ#vTI%fN-&#}^t!(n6v:hIX~orX9C!,zs=c h9olٱ0@qywuhp0˜1G F{C_1WߧCαd$#7eWi}rjk 5CLḅ(1%IJ7+KWD1h2iBWp^060PGW!䒳}L"=Lc$wXL+ Rp!3C ƭ&_(1\ҫIH9^Y꧋G=zc7 : b;]**uDbtBW"6N> 9W"/ [7N-="mu9\ǣ+ udGOyQ-WKfTB8fQˇBF~mg;AC!'p1O ;K,15-C[*npwIwQ{ qq,[+^RN~v)AںpaB&3WwgضBA oG[9b~W+ם8xuvoŕWh= S}hMu]fX7矌KŮ >TkH|^\u6hULKQ'jl&3~V=GAУ59R˵nK H~@̈#.^p\qv:;M?7,Y%,D `$.sHvIU ojCq-fd٦)8=E.G;_,chS"|g FNÌbf2!/n!bZX#˧eaW#Y6ɖRq)ۃs$.doNzp2u;bs>~F*PCz'(3`JIWgY(4V$G\7&Oe˓ze| EVeX0"RPW`cy80E.$%mý,++XSU"-ROAk@v[ H<֙7Վ3 &_wgAt'ԩy,WXuH-MAG{WgQ:C`x䗭i3Md}\ dgq Z`_Kv50}#P`ۭr/PVdhCDyč!_luA?J uoELmRI⣵cUWO*qԖjraXPOV`.=h,2Wd˵Nē^¯mgK6]i'o9Iၤ~$- |΅TeD|Y!8e$ BR^F%bP*gSon»?>Dg >&yXN|(}/n$wydC%z\DpQ7Bҕ:y>Rjed}mAoȨ[׻EtШKt߉- ܧD2978$Sk`k)2ǻeH]Pt_0~;$fX8o6۬E-dj/Wak $})uBYJceA au# NjSD'ƣ@_8<´S]T1ϺXɜ?LBힺ$BAq;qUL/S7yDPˁGe?;)`Jbc"<(\T:NXn`p&°N8.ϭp%8W%Xu;-GcW4 SdyIJZ="+NGvpcSvq%o3 X'%?ܗ/k(r~ߐf%Uzf&!;ՀE_T\#2-{jA1K9,;@#6Jk`Xl!eŸ5 ̩120wnE |̅ąv]iXgazz zyX曀 S= _K@P8vv?K!4b>97H@WFI-|`SS"jM:HK[pZi/+D&R"T/ۤMp]-7Xzc&DQqUGhxf^OU3Sspyt&h9& ^Ir9k!f l";vgp藎FDs.J3{]aP6G%SYD s#yXYJPvvTű)"j$;vCU~qRfCcQN"ǿfE&e6EWyk F"|M&GFZ?"VxZ,x(1$ٛ({GM'hU( [b"9sШ+[Y(ުփ cuW 6sֻp=Cdmw I:f|th cw4XVS_܏7n "*gQJ$zd @:),`%ۣr'O ?4\\6yCqMRjRJA(qa@y&4pFS!\FrfG%sLnS/ϢhY@͕ >Τxg̴={+5K(.FлsMͫnceIN"Z>@dQ\q6hڍkJs0kt v`gEg/#0*d, 70q.vVyM! ir@]h|5*\S#c.)WKhGP$ћ4r5ˆvTz!ãk;ٙ$[kP7k"2™GxܡvqWo54Er"3ZM~3Bl r}ЍV`o׿[`1|M 1w!sO{ ]ktj/&Í/7 OG `"Ykr\,rν_uY{(bft3EpS)>R}~!}5>zKsuA Oqs4Qt?|DLHEr=#lDkv69|[(<KR8z "ʜTi5p3BXJ!peeH=JX$ 4 \9fʘk<!wZE.3LF ?͞#wG,v*)ZF%sH՟4zx&96a/D:AV~؀/^G/{ye#,Ȯsu韮-EU"i5gM@MSlPsZ8pԫփڍqpq~5vv[Lky} ւ\(+ޫD@PԘ:NIB .Ec&霔Uu}AboZ^6zw1wFz"̐)bRi 6)ynߡva32շhzޯId粈L芳ߔ޸ѳs%d` q#v;C/q=:-IuhxH2r bN1r40;#Nwm*rWWZCai*1b_Y̼08tEt^y.IʴǠeoĶgeh!,c Pƒ_ĦԱ\8rv,=#ffpwI4MdtMrJPXE_'%;Tw[wsFNe<ۍ'g2mޒ Zj%j|M=3>(4=Owѓ,j~ta>?IVGfV– M~p]4!DhW/b۩pS6|\y zlFyG&5u3:z@ Ҋ}4d+dG1]_Z ߕ|lZ2cݽ`Are]ʫCPċ:zѣZK<9ѢکWMOa,lWNM@+;?6U.H O,I/0w~OgQcV ;S,e?*XnFt(U1t;>XDm/!"?‰<3̦}?hA9ܐSw'Bu 2=]8A~:1}cpMc'Xe[8ܚf&۰hF[kY\oFALDcYj#q jpy FQؽeK4PvasoxPڝ9bnO&ǣR7?CTp<#: |f 6=q(M?du-j\U{?N7p\ȜN(Ԯ $U;B)+ V=D/('5$9ϕfKۯ,7[4|;+DH/$(NGXGSͤ%Lk8y˒|E?z5 -c駩6:[l 4EɄcV^[N8>癗- v ٽ^}o\ RvP(xHl^9sPb"bUI98P%h)iJ}>g@6 7 >q@gP ;Rۢ !(.,!I:Wn-O4]k=bx<2{c\qc*>(ݣT:Cg@~ {Ly1Ǹ¬Œ;|Jg.w ›Ź7")<,i0 ŀðfe U$ !,&~:y^::Q[*]$#?㎦tab.෱r.jo`8Ae]'%b>4xaa-m 5뇾I'?)Gp|QCRۜ+BC%aIŃB RiFqBq!D{ -'EX y׉ 5hP'ngí(,3 "GøkUH<|( {%%n?(}"_q {)-%1ܹcfih]\HV/w1>O5nYqYY1aqDwsQ*xKo.C9Jnj 7gID,Au/O|J@T$I#$t$RY+W6dy0YgC*j~ߪcvҲRl>vAP S8ˉ!2ESБx؛e.):w, ;,k߿?lA3]7R*Q_uۙ\Y/ j`<;Sӈ$_C$pք=c_>n,HRe}G+'1n,`LN)od&|$V$ MG{TUT{JY 0^ +ׁ Ć9c rb Ȗn?,I#a?Vޕkκ%!J"xLÀTh[KuohJM%/eR=4ډelG$bTr].I' ]j?S&#wo۲WX^jZ 7D+ѽhɍ(5؊jb.#Pzq8P5栕y>~z MdZ3*ň/, 8{I;֒6`Rd[E"aFͭǗ: |ݱGI]v2)P:y⌾B1>lj.^LN0핛Z?4?_8ɳBT}°kT*8 //pyU{\۴WkI\u'A%P^oPް,{S$h;$Bz*H&DN0 #F]3؈N3/bb:ևɻG{꾍vL@ܗ2ڥŧ!޴= j wu%"R_Vhd[?׋,E- h F:>m"q8ssT_I$xd/# Ȑ~{QR^?/<,oZ)#q^(J^!K?O>~d.ߑK_{աYb%;k^lh{U(\5oo_}ePByvhi~52|rG#_t*$QnȔ0`ns6 RE%֮(!/HPT&g-k0X*ǔW6,MҐ :PS Vzxl۱jw/o>+>pc8D/E UPH=̄s^P+|?Ɣ7Sz?doc>Oc#ocwpM9ް+:#%v7gknd 3uϔ{|@y&iɅxgߺ=UҙΉ)H3@x>"S8QG_vݸǯ a8́&쭏wL4=9/Fg=.If*"pa~4Uwli-N d \4f~d~'N$?f ~+K9m{g"b/oP)WOI*bm έ`!0|x.n &oΥlpq8>ZðK++^n"}'$ _֜ }/VHGmhq{iԪHQnE@'` 8q ҸaJ͐b )L)sG'tǟ鵔V+FZWq4y |x_L !VjlNAGd1w.(bbMઐo{L y'6~p0_ĶJ/2>:6eJYΐ7{/>з8\#yR|߆jToJC+H+WۅեkV-4@Ǡ3ls`d} IZͤٿҷ \B$.y 5t#TC\烃3BoXE̠ÂRyIJ: 7/(خAK-a_$~(}qz8"N99j^c,c $DDua,3j1|G9A']/XQ먗CdM1BbS,0):X,Xױ4WhPhP$DOplE7O@Zt(~2+}~6,3fr9Nўxkt&_8mŭaV V6Nte pAz8d1zϞPZ}sUbn_ZHppzE+G>0%+T_}e~1ЪEOYVk}RQxjo+{ǭ$$#*{G,ϑZpc@ͦRU(3p]/2Z|'Jᇱs b7OCK!D;N%#*d\8|qA9nlN  El^#ٻTK8|ozg-M`ž{.ьP䦠j3g1CŵRf* T6AL3p] {43 qr$4 v AjF̼Iq(RzӉa\)'ܕ::'a=Lgv@sF&5Iɞ<{MupqT +v_$%8!%|usSY~.Um b TA kՙʋj Ďa1:R}"\(c>7@QBgL4ϓ^ eFH;Xs$LY\hq9xV?o5jOg i-\~OE &2_@ 6;hMex H8 հ@-Ogr#D@?_ns1nѠt]u΅sڙP.\.7`H4> W7(cSph4ޓΛ%= Bf^=yWr&!g|m̈́ÿBfN~ xl6]yOF.,rMܤwI9˩@uH?focaq * Yd "G1?P0# Fj=,oFFZB>QKUgl&JG AEoI3<ڒѬTQ}XVV9{-l~sI K5 P-򟧺}FG ]{,E9G[u VRE0sЂ R\ڝ?t(ۆcfn 3z,Z|֙IEKoߡUITGg<*GL ZH@/\OjN!1 qh;a%i3$蔁-fEOީV d0uJFuQa_E * =spauZ:*8պJMlSIvZctMA`!`&B#x2eHy|aKC>=9!SD6kC%EfyA䧏"})TUsͦ<%I:gRp/`z%0C5 gH7eE,wO e<5 %q~F{aDqՆu-S~\=By06{JJ_I h GV3n3:gegMenYs! c%0 H%!b{xŹx=} l)em (o?-3{T'u-Yno{/.䯟o\[|HD@FaӾUE l7pKSPtW)@;b;u ǐj5T/ yQ7Arྊ !gna+3`\b멃qM?k`7_x0˼Xh=-\p|? 0vٽ33R0J%xHl5" ?*ebNr=JQoY|8hQ v=ѢgyRs~A\6[} ˩kExFL>k}]gHKIq3_j9s_5Z6* 1!vf7}#Q-5ke ?_m42 H8Z:j틴V0@B ɰN{)_\.fsN|Ckw|CDIKR뫮X`4.+NP\Zn~pZd,~8iUAJ>/C!РB)ߖcGY W6̜P6%mWU2d} A-?('xQQɲF(niG0$S,=r$Gflh)H1̡'ˏߟ%%uWI{ ^ =R[mR < :(DPؿ_z\ӒLR Q-y| *̩@`->?3#/wsOľKeȴmFo!,,fuր9&(r uWMc6p)э(u]֪ċ2o`6lgdo|5lhZ>yzC9Ęǭ&Q%(Η;At'x_02kMg"љ^T-GXk#`7h2b݇眹5*MQ~}h٫i_iW>CI,F lF =RؗJxE@P.7iP`~-di{fv$+}?EV41T?2H883E$s=Q'࿱BS!tGk yp[{.~>~ֻ@~7MuY@X~`d m|dv;E(L4<`=jZN0NZ*My|RֻL&)ZܣU'OspBz|UK8(}3Bd er7 D gppr .:;_h` Aw N1gpEЁ/}NE0c PF r!1`A@5?q*ۣfudG#=ߍ?iZoXb.t<]Ԃ$)i0PIߝ-Ԑ+~~DHFiS;aE1GH~B"s-XYMF40:Ϛ G(KNR7l_RX(^L*wU:|NKE/YR!hgԮq]0?S].z%PW|Y87.dCxЛo߿Rr|srCuTďM2\+oU:Yyic7KV6iMҠ˘֤ޜRYJW U6٪697D3f.rT'kQa O/R}Ɉi_D 5RȂ{L0h: *R1q@U r?\c˴b%YafQLfc&}'*hOÝXfƘo(+F#M.a/o u~(|G!! gTYSÞtOT>5;R*t7q\0:&m7r=z@0e2h}(7O͒/v-7 M_Wg-?o$#h;'sĈ}1!qQrO3cثwPV^(%АNg˼en/4YmAo!l)"M2 %t''j Z'mjl`N?!&@J@$`19?W{b^řL"ѡD!QaebsiD:7Q#ZLɄ1s*,ahk b~׾#φ h:Ю㝯 = Ax]y\ne"о1wMtؖ6ζѰwZy8G vvEK+ 7 ͏ UT꼍wR/WʔcɥWS<fj?bT SfdhBRez<ǓkuDVp`_2@b/v>"'_)ЀČ$l /TjZVF.H8 Q,^U97Uw\ڀnq<YR>jJ:0;DU[w0[ݐCQ1ܤH2gɩK\՚RH|mg!]VC9vSX vrPɝԡy0U &T*|zo?`[cD\=i#a^pe:dCC^x~r}O$(cg3SR#9o <{NE#{$56: 6ր[~ *4.j! eJ MEӒ깰^):ׅ? ^bI N*:O PE= 05lZ ,RB$C5:YhQӽM x1 ?6{n=3μCXf[wo%X;N<~z!'sgCb߈ "8>?\40ye>9g2mScۚĮûQi>g&JEu``NJŃt5{wLKd* 3P-K B@c mHʓK<~TM4-bOh8Ÿ̸"Ͻy`2-!SÅEG91ƶvq-%QLc?hiWpT}n$.:Q\,KnCh2F;rַFrXXQ׵WvE3lQyvluJlS#(JR I\{# EW? 5 ={T>u1Ƈ&O*`. -nר,x0`z-z;ifJҝzq X-lTe.ڐQH F4U8ǻ(g t?€$_Iд$oΦ}IlCC(gfTLcŽ*7:UOҞĿ]iؤ܂#3pߋ N{Oٞ AVxQ66Z̪3i"J5(Gz ?kH=!%YSS hPp#dVŝ] )5&"9fX7D+u/7)s0?R - )LGoQSjWI/J% ~Nz[b<{Á4 iMBO/SR0'3#|I7tL m lŌNE"S'ګxeC՛> *o,@ӳlמ -"4F[yY%~#}Q)>ys`|s$> rd'Ki.nkX@9(m9ZQJ 4~{!}*\Ng4U8 2'GQpoR9\Ǧ7Zm-Rl;y#wn>,:։]~l}8XpUAPƷO6=*Ɇ\<֕AJ[$3{ٙ{[NTeM}^koSA9}~Ly>0qB6DNgO6,훚fXdl7e2N!iMeap## 67Wͳ0ůdh\*|_u$Aϭ4#,$ׂ eTWPV9^C#ﶏ5%/[ucm| ׫K%yPn~:wcg+y?k]S1 7.r3ذQOCeX%^ #9fZ2]ܧ;d(RߧΎ uX:O٭F@Ώisq@EnPO|U6<潬wW76Pn#O m84U]ׇiƻ㊒WPg S/v<=%%fat}HlcԄQqR.OOF4 VRVy zŒ#UuqyS0F2* -[[`bZ|AU$ꂒ _y/%}3]PTm[W^s[G^|y{~&C #FjBv6QVM;ۉURn~MdžrnrHWQNB~9F#T uU} ZJG1rΓarV#^Zy2FNʙU$#c-Y~%EQQcv/QJz8sndIO-Gw?uD/PcVW勯+gG cgba@[OdYRcz(w.e~sFb^ Ƣ MrX*J6Q.PMj|st-Ӣ;pOUDvgM`HVx@*VTa,;Nv}g? ®uѐn1ny5} M~-&xN`Sx!qFD, s 0@es5s;N6ss˶x(#̸q1Ij ,ԶXDk'bKںV n 6b X51 NMKU餹(64ϒ\ Ub@s>s[)JwzeFVfl&_i' 8nQ-O$wF]or9:BT@ d _NMy{%өbc=bq?|t+}ewc_tou h@~"mni Hۄ‡]*$rgTMuF7AV?Ǿr@3zHXͤyw[$\ 9&ui}䠺WZxG6RP ]]:6O#{?(Ll:F"0S@=K>,%HӪM!x?/' n3`^kZ'ӥ9훘pe=wYә6W_&堮mi, Kt@mu7^ ?BeУYaX=~<ߋnEG+4E43*> nI<' kR{"Y~Rꓬ϶Լ$B볂joi:i)iޝw4B1< C/y?S? #$O)5ǣ9ḙc+k׌N̓|<ӉnnɐsRD8閊@6Ztk.-wQ؉ }ۣ "BZ0(Ji"+N@$P\°(v| lgQ{aCQa+k9L[5a)ٟMhwf\p Cd1sx^*d"*"Ebp!@3[v.Ԧҫcn:H?H^qqxdZGXUH$x԰ikLk榪uTX~N:\hV><E(Je ⴱ''FB"<"CT0 $AyLzɚMvdaV㣥EFhUQ [hhSl -H.f7-2*+1} e{y/2p!|6E|Ibd3}߲\3D_T>#U{uT [%j==-īsGD1[3\aC7q ,5RC,3!g;mgt{n`Hc>hZ}>jCvCfP̈́P1?@\!HҾi:]Z2{5y̎"6mߝE2j<!EG㎒ JøiYYGU:ߘ'(o2 $Ll!W26Tv'PC%A(ێ/,-4V@*缢N `^ L׼G6/A=j$8}=G7fuٙkU:ḿcPqDІCώ+V6º gx/#'YhnjRb[9h0_)Ǥs˿Wqrgx}$Ru4o2&]@~S݅d޽u,0Ecgri,U)&0E(8*Mώ M."`/wLڨ%, :~q;>hb)2_z>{P ̎yND,73fkKArT"c³U`GuU2NO^F饲{0`݄ (ܕXmi}(SC ߎ: S65$`fwU?#GYiӀ/2*/SV#[zDU~n.xj>##b>$u|vzd#7|$ZvQj23VhBVVb+ %MvVs͡M6$WY\zD˩̹SWTNy!kI4hj)O8PԽ$GpNڛzU<̒*`s-ND.jMkj"8QX+f* S0;ǨnjfOFB? dQ(zHpl HXBP}QT Ɔ6xx~8VEr):Od%N1"q@c]Fa(T 6|[$;b8]Q\h'鷂Os!jNC5K^"AF:A!SU%$7x"N!,=pg`& 4bRc"ZұLCq<3TRuCȉT~iD-RC>mPF*gKa1g)"2*inF~c8 A[Rq줨H0vp! v$:Ƀβ c4X=Uվӆ{=C~mZ'e,dv.l}M0qԥrHqaiFZJ 7ءl<"h¹Q⇰.gH8[m}VjQmes+T »&Gȳ|)4Zz:N֎?`&qG3*SdQ6@t3IvnM4"IՒ0(+񓚔oώSԵtF gԵ{mLn3U1\6,EI%q$8ƔLQ*uSj4БJ9`@QijSTP"/ 3);_]Hܖgdx}V9<'~\ cɭR~ϠqA>㨞apWy m(PCmL.#I8fTOg});Ga3'~U$Ey@p5zlᶶ3n~ j58AH:鬗4N4/k^~̶U_6SD8cyNɝOeq)U14S唣J2jc6}B:D~ 5ZI1 0Gs%|")*IFdO c+,'`haMіƀ.ޙ^qXŧ8l Zu$Q i@wD>>.~#ƖǴ k$v]_SYO?(Ƹ!)v5y;#ƨVFgzj\x=eL-f>7M"/̍')[}M!ި*;li25 hgJL_&={Kzva :XP;3[b7B=1s'ђi2U׊g퉉 f_|# :Ix$:Ũ#"UfTgC T噸pNതӟC+*@bnhM㒴P!QtdKR*,!}:?NL!w^{6 cش:-P'dTn^;!"6[5+F;. uIAL5j9(ʲ~~ҳlʡ"Y;dCjs#߬;Z)Ԕ8ht=Tˡ3u0k³&7 yKw=磝bw,i{xmO"!U|G0)z$^k'xy33P_ld TtR\at>h KU9ۼ(SD؍X5p :RmI_2yq@ݞ3 nsN=Xav'}@B`iJ:Q6O=SЊ~ +Ȁ&Gt1O [U)լǗ,6y|‹5HS!GN=d9 iY"v#`5Bp:huKG7n AMLzKBښmإ<) :|+ tE9Gc X&%r]vk)>Sdy>W0/&qfN^k$9ŏbCe|:^y|iSAZE1L9<lӢdiƕUgA}NY5HV@?&c%' BxH-D!F$߇>GHX(Dxg#07R]]~ %Ek`/do{L{~fKYZ'3c>ϳ3 : J;PޭBn$s r)c$sMhtUk[eI %b;!yʢA }}D?:.'M*p?XaٽAT@n C׋m})?;hew>~(aiX~{;\
K/=GqAx־;B2~7?X4&!mFr\JrYZ2a<_dDdtylۚ\۾!欞ggCrc-N˯c6U]/5lH]k#ܞaqW˟0:⡴DI ՞Kk4&8fغ@Ak ALFO`ewm..p"!d]_r),R`2D=vxz[?)?+ŢY " 7UԩpkfK"X&ɥ#U䌂d::dNj(^Ǘ T Q OٰOT$WBgt yKBmtlbՏSZ|d>Cg|YP3cvBޔE1jM0G۾{[98woC=SU! Hw`P;y5+ʅ*pID[Ǝy!Qlj~GYi.C`7 o>k5)׵/:VDjv7k:5P}-y[-OAyZvT OlN<{ ޴zR`dU;:wKx-LI~K#;u(=Z_@C >haٳ@{-sVUlW:Gtd=1׎vz]DDAopi"l7LOUDr-h躅ب}}y%5XʤHt"Ġ{E7?Zd?d"{QN!_CvslgޒO}Ԥka-`}f:>_ PIy^4٪dΙD˝iHM澼X( ],3WF1soHy7$~}'Gyɔ诤tاØ5MF,6TC-sȭ&]5SpA&]_1|< ֜[>pcFx]t̟{L ^wCG\6IVY't[eYfޣj0_!{夿^[>YM |Oؐ<-G:>˰ Pc_j3ݸ/Ts4kU7)!]f!Ym0ü"/6\ں5K{](6L5 dr' ^í*O"75_LyN>LUu Յ,IY"wb+w\O~x=' i:9w )@w rKJ⶚\B ,L/~z?N@)~֤cl&W@?Rv#3o3SqamsI x%)à]¯faYw4e(CBY2BvԂQT4gJBgԊrܾ،%=VUP}Fd[Y-θ MN>zy|jeՄ! 3>͌N>bM&MyF/Zc/|_kZ$6sORtNY8/R0QZEMDF>Co &)k{Q6q#[糷H.'T+ &K]ŬL"d.3O1-w/ИgoQ3jso|֟Zo̽_cؘ*P_Aw{Ex+Ј6gd}V@Ȟ1>Ua Vv!}*oyS-Q.?@:wqmN9.?S֜b.`m>\V|Jn˟v5݉35<YUB|K^^.Dvc?]GwTY9?Ԭ}tMѸ?0l^. /+Ƶi4a##_dd.qG=ZpR-d(c&1́Q8PDq(>-\jIon2MRO)B`g~~E]_ؑi %jy_g1z2 vPYq/&=;;o EJ`%Q`rm:t#e=g J~EP$ J&tBV}7IHf)\HZ~aT͋" &8|gq`H9GZ}cM&z P% H.{Mт!O],ӕQ89`-؂Jp( , KźZϦ֕p.@ f⪢s QW2 ˉ)m,8G NA>fWy[R&yr%qo m`sw2{%>,]oT{=THlϴ=d5~PA8)#L*DG~gpmEr^l@;x`6bZS˄c@C`Icm> kACuo\n nd+*B e>[c\ZSLx d e(6=OYF= ȝH [1|xz/g0ȀLC>7k}7UT!ls+wPLDÃ@GlCMps p̡[b]r'z>mR>JpLXuR,xF!az{;Ry@\Nr)i眧W,4mg-r_fOf~X``䝜@ |KHVW3Thh!gMD>n q;F0ǴFÆ _Q =XD$}aHrY̴|.5g+ NvG&.YY_4I%!.ɹGq{-N,~0PH .k&5iX$yZ=ؾ.C\5ʟ[ՠRF$Y֚?6hA3`PҾ,l=?GwɽRRy`.>ب,FX&g* JF$k+Ç;*K޽ ׼$.2^ ȵߚ iZ,4v16eNFaGUubmAfȼ;& ;P`rխ@`aK+.ϢJe!?aG,M@uwm (kxȞ3J/UIw[uuɝFfmM4 ˈ㓄 Jr(7J;oGW+zB8M(}X)o~sn }*Me᝱PKٌPV {~kvwVUX89RP=x!q9% U[`mxUd(U}*WP{r@# LcS}$9ZhUH/,<g/CԨr8U"J>)I0xD0k|"d9Dxnn @Th%rrܤWXT9~JS|yx"ۣ3^Zs*lki԰B1]e`m~Dq4j[9.T؏iz$jCnS.nlܝٔG!C;B|H0=\džAM = +Bz=~ *C)"dU/ UIR014*FO R|R;ڦ+:TL{Mjk5)O_*ff:7.-͋ **P>4Hm+~iWC-ɊssҼ~#" yG|gCwl(} ǼxbO{X~|C:ց~l>lDpyK냦2&6nbE"p0VaR{j&-ATA`2Y"mm >o,Oi)F#f=|~+[S65mf/7lά vg{n#dWR zD{8q"ӋYHZu@d-wѓܱ7)dVy,Wfv(*@6#(bR1)Sr\JU]- +PLawD&{ Oy R"D@FRAdl6uKuB F;՛5Ai7ѩՅyb`r:bY/ m V]7^N֕Dj$͝Bqv^Ur>MjUŰTsuzyY" IR[,ȧt̯Uj9)B$k~n95o&zTѵ 5_Xe 78ٓc8K4G_g%h$OYhX{^) wjvX4 sp;Sq\t,}Scx6nB6Cp8v,EYYP%2d uc;gLrl[=w&hӜ!Cj(0^Yv㣹0fzv%[K|\نy H~9zDѐ[~F;s/{(Cs\tHA <_;Z՘qSixd :쥋4]$!`oD5X1<QēS' xPPP;G5(KZvO!\ތl75,X]o3]4j͈Q\@Lp>U8;Ǝbh,i @9?dJELzruI҇2 M0%0G;o9ZpC||<D tr.ZʴiTUl[7a &m&Ũ5z71!ȜZC_w+?{Ģ~-k>z9It9 7 Z<6Uۍ(c54h i o[tj.YE#,&T%!Y$-qV;hww&7^_v<)z0]뙂~rh*I JiNSeNIȐ&o8އ6~R;kC".>ng;fPV_W*4ٟ$<6ŵ ,Yh $1l&ѡ)ılP)%g8L"3`|l]"E0ȧ.nR#V![N E uG}O &{C_utsvUh K舌 /P0,qOl\weA.,ջgcaMjRb03P! }w9qzL '\ g㢱K78o1]Wr1&cr)w %/nQ^03;;i \*vQye&U9B`q4~=M{/t=Q:9IzS L~<$9xh=BU@ʁ5SnLzD`-qp 8=b2X dQ(6>"z :E6RNiЍc}>'! 0P14C G15+hgQҏ[\s 1)|eo1@1*mej,(RN2M~NX<ں_38'.(Xz damևo {:f(0]r8Pz[[HCYYާܤց n:v2xot~i(21 _TaMǮVF- gEViYY̟bBanx\\K_ޮ7ˮNs^NG/c0 <" sQXjP%njt9taXߋ5.12n#2ͻpiO [\U1$"Xl{{KY{E:c2GQކcGO穕D,ǪEˑ Dy[B|RݫͭK)Dcau `-"PФ{ @ HkiDu*UNl; P*2l-.c*qE0{n(gqC4H}֛$T-YbrbX>8*2.-剐U\It\VT.!;nz 2v{.fΖ4;yʵ6xL -Ϫi^ $}{pƽ~z qt3pKzG1nk--'{p|Io1݉.܄cL3H؏Bx\DCH2X=u!FéM Gw =+;$W!TvwC\,p4[\ޚPD,;U'%45~lF{$|{bhyCڜ1RZ3FD4X~Ql1Himmw;w[opaX'ؒgTm hf=RF&Q9gGa\d VGgܥlZ4ddw*{t5?+cܛ㺓(y$pfd0)ؓ+}3Y;<3tBWXrTo V'1p H?O8o ehoWSѿBuqj9 q|9$/>ojsёa<ͫ}|Pu! ůTe2zK3j$=)v~\‎HD|?AdoI,6@G(`57%1A3g/ܑЄ:@{& HF0_ b,?'Z蛺B*( 8F4tk$(i1F'̨71RHݝ4` hZA d &zy"<$?cPaqra62O\wax6oo>g8WkxTdn,*XNg'9 [@i$*ni NDbΏz-Dd`D}E؎%[b%J6A_^z6>"Z=8z5'V;!>jӎ/w zas ÈM2hK 9ύ 4IJ3U^Gc{]7`,F n+ϐH8fEA1B짯Gl\vHmB#@q}T==XWL6;WL93saz:_`$(x;S_M,Wx8"HC 00 ؟XI]3Xfjs4#u%0IA]%$z6!7G8ۏi0OcY|yLפ p)z+o3yK(3BC%gn%4]5HЙZ)=#7@-ւUDg5!7ZwJmי! " k@5y41U/튄ƘPr>uqt;A=2[\&ø:O3tF3c*bO&~w9)URRY[͗|Z8c5ӉyIs0HU6 *rMށFo5 WJu;0䀑FE7gL@y *V 1вAcv]tMI׺H=huxq[E_#̰^/'% ?8cGU,rKRN79MF wu81M8o,/ Bۜ ׯ s o3#gn8kp8 M8F#PPs3yZm #*S;l~I;0PĂ;lEnx8Eɶ{4dڇϗ+?\AOwq2zhIJ)렝Tm9مCTvD<=@SI$˕=M*u(}}D׻smE&wELZ؞ M@3B "<Ԑ oHEA[LI{ç]q#V[~6cIɤiކ|5$XP~(?KL$WwbMOup|Xo{ybc΃Bݫ#^oȖ`X$:#ӣB:epO9AIYXZEzp߁$,m,*dٲWk,%ƃ]mŪţC⼢x"ݻ)b]Ec<]/5)Ԟjn2_&msrKI?,(=M5l㊧J)7R}g觸uhڬdk%X=Zq_ a<E&]V?[ˍEt0UzzĜbaܜ4ZHM1#tTt6ǡ%;LH6spavfנp2ԃ74guTjKO  t`p>@4hZ5q08\\ﱚ<.-"= G}6:nNYưt smvF1j~/+:Fct TjǏ__z*Q z!+"45tʙ &zW PN Z_iF<.XwA_9F[SЄ IS':-z3WL4 sIIR7.W2)Vz lYfuUV37"fmtñpAm%lxiĺqoeܫ?Pl( hGbaT6Q,z/b?jR q 1q3kw>U1H[l-S]uxVJ\/zewb0XiÜPp6,yI 4Izθ-ITXv=zg27܊i)1rw3'0G=yhFZ'#^]bH=#ܮ#{s7;7 ~3Xp%8*?ImM$ѮYVu}hގg _;b^>=h|]#6{Քghڮ._`V/((kgeR0iRH㖳jjl QPh4kG`\N^9lyF}wUś!B%hU:3ɆO(岸y4PS~įl8v'n DC cr)w5|{x'li۞ϪdkȭUsЇecxWN=fy45b_ CtNJ~{+{i y9Bjz0qANɎG0TR"^yU-7=kDzHGx/׺|KOYI"fƥh˜V|ɉ Hudk7N_J3wMv j@Sq-ӹm*\Z> FFَ26G̱1T'==/,hw~Q6rd)DճDOk[Ty]?6# ;D2Mwf亹 L]BHsn 6&a!6VZu{mh>&*;l̸qŹjde-LKg+cdn7<h5AN.k>V;$䂿UI | |.)V;CzLNr6]]"rE֎]&c*3ԙ tfB}l:'Ghb4׵Hdq_0t [-YJdacEQk{|ċv/T'NEfbubi1(Us=;QM@AYzydόM2:6 քd^C "=Mčx'`2GQaT ky U ոjT<CrUWʵvs{͂qjūBUIx)^(9F/3ߗnp] ,:5 m6~|gdlXYt_Wi7$ U/"ԒYǭBw5V(1(#ӡrMgɤ#7Ï bvRQs!|U4#YB|*{ J PʔFF B R1_ᕑ4yqFXj[r=d!UL")i'(Wl:&G/*NFrSA8<ݽsUb XoȮ&=f*/7k{['\ +o#RBSP 2!~p &U2/~IBB5>g~F]gDdρZ0hmk br2FBmYu~0^楦s=7VJ]fF+`hݓ<2YEpw7d!eVϝ51%r$ rϽ̂퐴/'HmAvqf?śwYvسDߜ $.|4 ~|p $rcZl!8<PdGAWU7:~@yVfQ! n:P}؍-`Dɗz},ghVff0t~fv}ȇwyg$a}铂z*-b%d>Fmhpn(Sjv@J*ӥYK}" dzQR U9PYȑ $U 7@ QXz@Ҁ`fY&)uIa"Unb+1u+;X(bTUk\$fӦL <:?p ;3XO}nܡr&Я F6tUZԷhK :@.˧XDcG 8@]VͅtQ \RR'Ii~(no-yJ˜intau"xSJĕ7PP(5;t9D~A,?K}Y;J(G޵CXm tbcv#&̏Oy<,2"T)i`S\-/Jԥ;q G6 % W$ IZ71WyFiy{`i-qK:IT :CwnٸX-n%U*]CtX$ #(v/Dx͚ޫ3) km7vU >kUnV/"J<7ûj˕X][^-&3w[f"|ܞ_ٗb(Ӊ~:`B1K` Yr.2S{7Ŝ ӷE'q8cyauľR7wɃEBBMFl+I1:bFP]?[wy]f5P|F2c+`xaWt:nqZO%}tbpώ]9g9"e}Aia}3#T'xL^-Am-p| YTL͇G _B*\IZʃ-meNFGIʁRG[GG.kSoS qN$5;&6\/> ر *iRy+DXc9Gp=ݚz).WK|fcU}Xd $#6p{^Y nڇكqjGen(룻Dډea-(IV`*H51)QbPμ>nRS ߜԸ/By|$Se8GνEiVGM9?mqC_.{^Pm:m7j!ܧ`cԭE+uDxI81B2(3kE'6r9LTRHaH ?z"TƋ֦l0D+w@fCiEŊk* EIخ l ::xe%.n Hй-kᆖ1#N "aLŘCK(ϖ,Q+ q.iLnm#*=s?*$R$ρ@Zk_`y8W{ '[ -KlqWqwTíLb2pv2U17 047!V*M c/C!+}TkA)qT|.6snk}׌w>c5 E!rQu}d2(iazmM IKq/F zi`5'G܋+~0[(Qy|=䅛I^zB_ݖ~5P R/Y{)Õj6~FT{nA[>G!Tʼm7ӈeqL+h+!%ytoXNw28 ;ĜS08I3ʣ>턏Ć}:6롆"ȑW <.!93Є=.[KJbdUClNL'BI[򈩁ϕUFfL@wt1Qݛ7.vl{ht Kke.y w],2qA5 mOz#-Z~ r YR-@7 L;d9Ƕ &U0TJoT"5 _1O.̓(S>1yXA5s3e]xxŻ&M5X$ںd'XJXk2(O6U;BE6M!?on:z1YK|.ɝa=˴}!EfѬ,.]h l?emw$t5eҞ[?J/c]  f5АJ 27@a!'/_'8B^8 J[֨&1ʊ a8 >b9@2Ҕ.E>`&_ 5zQ4̃=ri̶lJv~Gqp˱G%Ĕa;`^TAo Ǖ;%5.lTQ=RTD3k1k2,ADe?P~«||?no_ߑgT43He (FSz+ ªA^[[/Jw'"PRd 8H Ș}rn?Q\qtkV퍝`] mUo_15Cgj3AȪIM\trز`Erxw߾(m2ʶ6v7XGo}cdp{ݘކQȇ#k(QHyh=ȱ&u(S\jC N!j%h>{K-! ]eIsnuNˠٳYVm óB'2MœQ^Ϗg hz K'L7U҈Ld\Tv9;>A-HcLc-tɼeA5וB1d_eL_3]&.B*w#Z|SQ6;tg>4ꯘB.QNih2lJ@ts˶HsqU5$ cݶDpr9&9bwveutf1zvpy%[‡76\fdg>>\8)"Ƴug:_0-;nY>5E)g8m۾^!&v3[2P 9SpT/N NE?}G_1hOim.fPTF7INBs)$mT3Rȝ(֫$^Qߨ 7w9jɤ}.eYߍDrlz!fAHp` EDوߖv!bE + 2v8keK)D:fV)p}2 umO{u۽Þ/B{ST'}M,JޫtYV1&'"tt {W])d r1 yPk7bPg;t\\Y 1t m)q)q6 , lhc`^j̩~'}20@՜,{HLQ-|\.Dhc" ^h8cY_)*Bd14!Kuo8-{\_wO NW- LB/Z~c`\jmzJ&,{WS5+aGRƐ  h}a8w%PC\ _fY_wPEὄ mSnJNjٱlEh&M: =סe#P'o.Nێ?;0+hWpUpQb^ڤ;bKBدS0]PH:'")'NIp>p,o#>kQ,ՙ,siEe'J,,#~ RhGA6 !/tA`NYpKㅦ4j7)KP΋,8J:xX $8?ҳ`]uoF0 M= d|;{kJ( Bd^@B妔l%0f<>G4tunB7m;, ƘHuؕ%sqsC]^-{䶩y}B: 6 U@'T/[2p'Y8o>|ŭhN߁$zC|t` eaku̩7)c4JABend5c]n2=5 2w\DJhժC^+ŶEƽ5ߡ?~s2%GdQ_V1ObGͽwB6WS;X裂 Wsv{G o*itgHu D;?ok/N?RWmkױBlpB[rcX|VA(%ΏS lJ6#hUXQe8o F;kYA r3v Y!8VIOX(;,Obhw,}Ξ  YÚ~d) B74Y<;]( E nup.9!')  !Fm[܌|eZW )M>|^EDJRI?bLB^OXq(0;s.K=~?Ƥ΀5` KNgۀu@jI;SP'شvc|7=cZ "S ܅jpNt+dRC% ҵ˜JWapӐFy%vǰ lx0:.ctK't{²Um!؁1a Sz |;7f+n (m"R ..!JA15; ;2D 7![hDZl7_hjt'w*j>_%}ZZ8n4?D^,g]e 8S{6.4Nt<K6OnXD y*ϒġ1a.wWN C+3JC+6l@_ѐd؟y/Qψ0;p6\c- ?I/)\D< r3cI&=T #ۍ>?%~ʣӥ{X +jWyC8xF7ɟJS2w0 &t<Ya-hSܠoyBm;#u>eNeYk[AAeeG%:};u^b& Dk[でSRe-VT͐>?S.F'w݇n;kd 2EGDop?B8 "$Ix9%iٕxoű^ QYev_^qN| Xm'U/tWJֺQ;ý?mQ,]|ɵ.ud%e0㋔u*Gtl.r׿< "!q1d\d$9]WrCE2' #IM %fC""SՔ%9Z5\]C@…ѸۂU+9hfzrp4ҏV'οIׇ;q= ES!aIRV( ~sw"JMVENy~k0r?ib-2'/J /P ]@LJ5e}zsbX%3a>U^66KNVgq_#8t[ ̒i̩5[3kcDِ)uT-.GD\'l{I /FPRML$4_IƎ9;y5JJq/ zHuXmQS1s̿{?ek?e*>SS>5W-2{{99hdh׫%hU3R):i 0Tܖ ]Y@^&pҽ]D˻#Bޭ4'4&EҟyJ/1~W9C]83'>츪\;^~Ι;KTPCW+2ۿ>\vur!h;qv"u%v1Zv=zKnKk{\w^][uf%m:nLU(Qը:RǕTi•L4u3 Ue{R4bӒ+Lep}Cs~GtZNu I b%7^8ѹ=zJ?g,=:]l~ R^VK?]?ɣzU/Xz5/ zAĿN(iǩVS@1}T>_5JΏFE q b_7{L2w$KMTOtRц9N  a^vG鈹` O1]L9;a,)\p:7ܧՇ'DyAA|`F?o8idGslR~oLdjNt ;&R6L;ydOuҚ~r+'pc$4L#*U[CbW>K ;Q(* 9BP9Z1e B^fɷhy jѳ]lޜ03g{C h _.(Z_$BO[&&:C t^us kyړSfo҉kf;}^ŃVz es\_f=tGx(o/&vNv*\ɺP$"ފ3L f<-QZ0Z[ F}sܺ,nS@>n) aU%Hi3DM@o!ydZ`w%㩂)ŕ= լxPOVk][>3ƅ1,Z] ;+;f%f]?^}ըnl-&2q|my8kz;w|48CVB=yb`4 mA !&FlQq:KוI:R3~m"H96 O ʵFQKne"Ga xLO$Wn,F*y`i&āQw8Wz%,8bii>+틓6~B^ <1ں9c"z٧0M2|iưHrm)&\]{H_gd1Y1|A0Yna7Pre <̜dH;mXA6_))\۪L.Hp[B!}h݁6ga%Vz!B8d[ADĆ˓b̮\UM1d@BF- q=t0O؍Б@W~GT"aV~1bARrs`>5T)D 4_;G[m&FY4g+BY?Ԣ^aV%=U֣C-)?! U $qTq.[gc=CG9Xݢ "nbSWVۑMyNwcOfuj)AA@,ox1&ᐓ`FFج/RT1uFo8H~d( RqA.X̖ 8K>z}aE12ڬhKҨP>wh/tݠB4A^d`|NƓoz6`@uCJcIRE7MF8($RoOc7K%4X5SI9ϱ.Ӓ.]wE6 lx+uOU1݈qZt#oJbh.yVR*eR^0~&.50(V~cը|ŏz?U(ܙɗ:OґuDr!WIܬJ$ᠰl ӓo7Jg8ߊ|tpHe}3j815zzbx,}DpKetfQI4I0!~) Nj5F˱ZT` (@2k5Z >6RԦBCNVTs# ɇ撻K*8. {"?L Dd_M%vZ-ٮ=B"Vpa ,[N7(q B0Nj,ŮdN%iсM[DT945 {&o"$6YZ@d3Xo*eG_Kv_j_~|@#H(g Ve~YP K>AP@|fbJr 1Ӄaz0#vwcK}eĿtc~ O=&LRjoNwe25`-}w> RxF]PMo>Үra׭J Z堁e oVSd+IЮy#c&ř@k_GblcYW`H5Q.XsC<)Wj=3z2ꮲ ANO9MvZrR b%֙AǛF\I :9 -lsekgnϹ'/gW}J~h?$W)=H\.5 OCqM7x=:#tjLJ]Dl6:a8$+~\D[F/Ꚅ4 $#\kSg=:g;{wsJp$hR\|J5Zla僬=mʛ+7N,b |Γ 6s@ ,@20!i @ͷD{(>IKS \q퐐?#$;d4%\fRm\Z )tygb¡jOEoF{H7n`r&Sֵ;]MȒIN6Y11Ƴ[QVJZf8al$@6}[Şp]UXG\戒J'O@>&GIJC9S(~ewp\P?QN$ﶛLݺؠ+5]AF;2Y5㪑`C#օnHQv/40uW]:Uyc4 Do[vl 3}H rh!k >+lО9QxFq*GO #ez13dqH0$e B Ĕj2BFxǾ9vAV@yTTCNsdooMcHkG&W9u),l)?t9OXK+wQJI ,e_X oBogT$уQշ`okBɝ[jh J ~?P-#Zd 2_?Uj"U7*M&V+1ivrcP՜$7[RÏ,s ;\\ ̮y(ۣ9"`s(1zݧ_Կ 4'7}ʘ)ǜ{Y_~?]CM}G`l_L%XYqa9@(5}3c q!uS%t`qM #Eˏ{p&pN<K.;[ 6?˽b9y/&2+|q啴,rm@Via6:ehD%8>|̃`uJn8&.-$Pc##TiiU cgZ;uW^B19b\F-DV3sPbjkj)OI&Yzngy$e.\l@ ?Q%8ՓpmP]J2~Wr^W(~XJcTHž*G2ziR a]e.C۞OJI\9:@Gz2u{ZPs]Ml}C6=tq#,cV)fYc "QY- }^x!)=|$ؙ}TxI^U0pq p#K:" -NQV"/.0r-JՆ=:)0vsBުD,LcGְ w.U+OUTB 7X}G?!nܗ}WW;?vsG,ABm(=pf8'As3AL*y]1! ,Zۍ+>nXK1pS@X]̸&#$}z)4ֻtөȹF)lVlfID_P#^K Osd/#E){\VӉwWz˾b2w"-E2 z,ÝRWD£{RObl2c8R ~7$LN2˿AkRA{N+Q{)%.XCM|2g*q#k~(7Jа0* [oR?Rls惱s!,<>uXc^3Ӱq"$3.v+N^/҉xIDxW !$ńԼ\# I]V%[Ӫ`x'7(cq;ɟm+!&MQ7#l (Μ]p<YzJ볦-dU L> 4M.n4u&q?7!3iP^Q2GQDN%Ǜ [MKږ [.E/sƌ?!-wC&\S%0˥ C~e90~z> [}@ Nyc aK+╸c `!- w!'v- C`> fD[9*TyYֻB!wߌn t@N’U)W#ݻ+AgU5}<`~ny4 Aell82d|uV&00/g^9Ʊ$2/8WgeIӀX ²;+{hs wFZ'6"ώwZa#Y&n?_hsOwR9p#碞7|gц{ >r,Yb5o|BawHFMcƻArW.o+>✝˛6 WZ2S;q wR)U-e2[1,O>MAn{ՊɓwTrKg-&0l{g1oDaTS$dEV)QXѼ= GXh>YK\efݦ;73RN_#' RJ6gwb>,LB2=z /Eb]xI? -u] Tgx=,H 1sTRn?b Z2ScDg H;󱙻s ]Yu\*TqH޹TJS [DzzkS#-LzAz~yT\1m*m;١)TkP2=K}7BF ԘWTZތ;1s#eI qҖFmD*mLU8(ԇ@ G[ȃ;ײa]s~eyG R׈N6"El5ֺ΢n_sc/9MIǝ>Pu<Ѹk[H%`ybm^LĂo+|VI)(ykM8UE Dy^ZJMDz>޼4F݆l 79m`P̯f&3ton`|491(͑trӇÙU?3Aڋn{B] pp +j$J E|r}+jiqtAQ[-5?K;|J޶C@VC$QJtJ4g_ptHU@w9z+[@ K0(,i|e߭4n4x/MчK/ł̦48٫˜NJJ.n*d\DX%(IYA姓S i4`ԙySl+ld8a!(l0ݶXΠ-űwHdC a|nFgQ7ܟaHPlEeԐL=gyMcɁyu8&3<? NȖljE`_ihVc 5&b-~=,dmfVk TR'i슓ʵ'y2PP00e$@aDbgAJ@dF%ok%UCc+chIԾc,űE:orr8lIP  p"$I̲{-pȕixh^ 9B!mP"G(lbax.ĘpS})0UլbFAn/$nK -̏Kp 5}{^eSDjƫ[uj ?f8{ /v`-DVuEaS/TZЬߜMg}~8iXqg$J}W3=qW2FX`T^SKϳ^|ףM s87پ,Ϋr~>QVILmw:%?"_$//],S>hOʥXm#)pX'wT|"F<$% AՔsHb\pٳXcGD`&2XHZGdQ8$0]솠51Jcs2u|8Zy 3|N!AfTF~V 2GJ *J"i=5pͩR6̀y4nL /[1M$q W`Y@Vgkv RJQ*ɵ`|'XL~>|)"q$D3fĠ̽"%|glл|nb0ωF=}̂Glgą(;pYTBh)#ԶīML¿9kPGL#P7ߪ5v~ǜAGc nz#sF}z49{-2~ }^Ƶ["W&Usig9@' ez k*DǢk1 =tNʔSe]9}6i5ϹwM{.l]Rԉ,db-J'_\nn4qzݺ-r]=G&GXZ"C$69TJ^0ߑ TޟzqPɑ5OdcVzbht;х@~#0Q%]z 7#{X>es%%F lQ)5)}{ܴ{`q!No1 i ?3V;"ak*gP]R*S~˝eC>{+P#Skl$͔K5䘒 8|WP+ԋh/m{Bl?G`Z. .՚|_-*pU Dx:E cSuHVnѥl#+Vj7`-gml;st|$إ79j2+?]} <{uFG/,PD|[8u@AΒ\hwD<^ZÊ'3NYS$LBJ"pR N3tQUz$PyzX_٣k#A %LX:ab?%ٯ*uq&tmZ; c/r*cGT izš:9e2?l@`R&*{pQ~B6qKTC&ϪL6:^"6$ܘ:| u'.mxɓ)?FOdWJ:pl4}~/ޝ"c vxϴB\zc;`@e#-!Ч(8sbXaqQ bP#dsifԷ8,,5r6aY'3,ʸ)iͺn:'4jb\ uf*hH8dѷ¯j65(Sv2nO82PKq~ pWƯ%8ғ ~Ljk;\X=uWWTR` @U{a_u[k-kIq9}gm)>뻣dGb* in2 ke7\qAXW.ޥPl~[z-fƶ՗]Ƭ[qS UbIBԵަNbsk yW>Kx\=C.Ty,0RH]zNޥ/09[ƶ_)@PyavS<;]ƬᙶSNz+JC }pV}ERY-yzЏrL(=Z`|UV_"5m(>5J[ '|X,"s;0&!lR屒۷wEDep_IƪorcpiKT!ŕ/,t_!PI%cg܋e.gI%,m2 rՙWNZcɂ 5c[t]TQ*. 96gI,2&oLyc\æYe zA:JԪ3y-ɭ 5+xXYyT#q@WJe@k=ՇEZ"> I9CI)"uZF3r92 ϔٹ'ƔgVN}8R ؍6oG öu@]6(rn-Vε?@(cɖť$)-% Ѳp]6„5˪x(BVXR2 Ik7QnU9D"*\~S*λo"`ΧݢHD& ،a/5<oS[qeEc:D@ i`Kx!_GKtp'Pj?..F&?Rg+VՔ¬S)2h'TݶկU2gBQJu5rIQtD-ʼ#QJ[+nJ #Ka%xńue-+; U=X/^G 9Ȃ3_SK K,_&o~I ?ҁ59K dBTۭZxV#!-,X/@t>7Z;пΎ-p:1~opo<4e!`w5U~}a𶭮{Ž|ꔴK|%]Uv;Xcmbl)>/^|r)сAqk &_e `HttJofLxfFEÔ1mNm켔rb"#Ӕ`iRPxM*+ŵjELL H^!-llZ7z5\so2-'_ّ1]Z֗qHnhy5؟;"Uy}Thwg>n;A&GK>ps|PОtOBζZ`8|Zw*pݨWzA 7#݇J: s836E> z@0]'q;̡{lЃK#R(/꽛%r@klАǽ Uw- - E'qJO ޞ>ͬPh^gljZAEA8o(:EuwY Edseiªs"7{ M529y"@?Q״<)\.,ҖB߹Aháӌohӣ@a') JkhY.:`7Wѡ9S#RjWctZj;*"Nr6[O:;Jvb8dg])h7PfIm`4k MI]Nebǔa_G'2Gq1aA}\:*2[QOWxIK1yoyiTV q|VِGY9Epm&ALɤuhm\+7Uul>-uhboȢr vhB%p +4PnNV\ۡ,IDzDJ&k Jg<60$AǛ"I9X- 3aݖ Eckk-nio#.BHgw(cLt G*d8Y QA#v^~?wr/*P'F`( O%IPW88YOR[w'NZ(0yO9M=p nZJv|߹pw#XDƁWk~ bZ~BoEw7L'hmUyzueSG?WR`\cQطP2+@/WP:HF6a:ۚ[>FQxx3°LGhS5[UHz)W{ 5H /7 AQCcp$0v/5qŞx~4ù\JUwOQ87?Z9`FTTK9tUwŜZ@Mn`o_>%Ҩ;PP9e|VK_"ĪÝ^q*2 DUrh d`VR%4#$x5 F!6?ZG.E& _|m7{;T']IꌽTI'79 xℨ3K͑tJs=`aͺ],|+*3h䆇Ɉ D1,g.+-dt>봨0 2/d U?sQu-zne2_x(QĪy26~ߧ`' вOx'_1h u I283[mP=;$G'XOݗm|q41E.>2\>AXN{Sq8QFRfG:{n[%/@&u6[OnNg ~ _K=W@`nJ8vU˱ o~e^pX#k$J]bͽKk]wQCP$0^6Ȭi]*O+sKB3HEݵzq<{2|E\5:,r-tE,*J,DdPR4{NRn{Zk`h'YX!BT9GKWS,B+V)"̝Ñ uI-W 0[ȍ4_Bo`j6p\,j怮#}iط~{`=~ES'[]]4 B.đǃ d;gWnjqޘGp>,n(.t|c\데o=dC?1jV ;Drre]`g_&ڔBn7!#$\9{wIO0V+bCF5T~\zG;dlUI Nf؂t l<. 7?Pɿ>J291Kdvֱ,-\m+w b 2h\{lS #ӘROFpұƖ 3l8ϧɿB (+w'zpN/LP%d40Z10YV[͟XƮJ6( Kr7CCC&]JAHM0" )0#)+@(]NQ[HBAAKG]I5呍'R|%аp6ePnh[1?jXk`Ԃ}f1Knh'ۼ$:Z0~Έe$7S 7=HőPUK29%u!?R-Hu0Xhm{X# Te,X=CYe928wTt"ÅU{S;GŅDŽSj4MQT3lGwoq7!EtG`kH5y@+Џ$"wZk2G]A6AuFg|XE3,{.sٸKVjIOLAMh(2%-sΛ%$;k .eWJ28pApwa%\}/4v07"u@?ݎCCp7vH.&!>-br0 K1U,Λ8gfGZ@:"¢n>fJJ.ƄbE-| '>^" m{ hkS f`C`_+3J^? l.&1&Hj97kiU\+2GK&kAVtMĞo)CBRxrrB* 29/uJ(koo-8*Yi0( ~"uah ˳@|j4k?mCv;J'l] H})ͼd3*Yњuڢ$pXP *9O5󟼅4`+TUNnZƶjL49րæc;P ufd}Qb>ɍDtb8,l @LZX닌 xgl9 H '[ XѩřV:&IPҙ(fMvvIljcJ!t=)iYkd54M(J!.z`N MM(?H"PGҺP5jrX56wi$\3L?tvwD.)39V(A]hK2ed׌frZhu?r2QᒠUc| Xe#lj)6GuvЊ!&i|#jOKhcK: A,WH~-`5f-1?5xY!GQpȽ^ X@$ ElY+/D>MvonPyk.4 Hp5I1pN5҉u|K/~#LCi\.+^Ѳ.Hl"aTײFP@ktM;'nji".an]6_r,OxFјV+>L͠9ԡ@QU9k踆>_jEPX,IC/>M2_@g#5)fcGy#.)NƑW0(m #KUG&=n Zg`D Czn1j:vXy=GE"UDȶ.Eyp::|KrqN9R˸9  ifZKK+jΠJ9`bQP+<8IS.on3e,C!QR#1 B:[ 2Ǒ ?FشuX5!E4y.`}.&X@T|k  14f^^*V.۷<&R\Ց]ze_>o"J>Ά{. m1ȴՁTx_(FBtcdBU1E`~dÔ{+TQ bX*z(e x{WMDNo47$CYء^{bC5bp? kϭۧ69f;x.zi۶a'wSF*"Ó1폱zdl9? !+6rw,5*AhV)~bRBS)U; V8ѱQ"͛_sA#;:0pƙ+:t?  rq~~nO.Z 0tUSH)A_:#M1oHɖ&0A7Ϥ4 eL/ zÆO5C+ L{٢nP?FW(X>8Ǿ (*0_LibeX}cɞwbڌ0/q( V;:Lm_Hy ӱ>=aU>A.h7 S[AS1.^k,`/m3CƝ Vqlf{q4Ђ;eYؔ~$@k[B>'!z1~P۵ʬG",MNۧnϲS߶NZ(E)v0jXߞcz(;?GZVsx븚f1,'vY?F73D^M9Φ+<n{R1c1z#۾Nև tesMWW#;Z״VM`X9ހ=5MeQQ;VϚ$ֽf`f)5y]/U컪I5yQ;˥:$pAAB=`_Qk &'[%l&<H=r EP|2}ݡpT`HT}2=Z$\&О 5#E eqVmw=\ ]PL}1.WaCisONUWȶx%75ogjmȠcwLD+Zahc FfkC(t~/Xu:І̆M0|է)E ݴ/Vco4KװGW'ۈPcKz akȹ"SDIyg0Blj]}Y)83}x*{eE-ظJQ8ecN 4 pдc v 0V'F)ˋ RPMtlig .Li]AQ*ݥ3#RP,{FٳtDJ4VIp1pvϤ4rx߁f R:cEP(^z-:!b4B]=a)S=XXV 2.*g:8 O DET|V[b*vuC7d ~Bh ZclJt۸WɗpWWZx&viQ(9J3t:kX&T_"|!mrRk#o((Dw{fg9$ˤ(ݦo@r(e< |z sb2A7hڔ/_~7ڽ }DbD5 WZS0~,/L"e1%/4V"*HW= }H!_pve\=jy~'buwY޾`нRi1F b(amV-C6_5$1BHՆ jJ2Z_aA\-Tcyg;\ؠȎb ~M1Ӗy$=[Xr* AQ *wGQ ~'uц8}jn.𰧽=|Ɛ]Y vBOc_5n'd|iWO従2dqjŪ6d:•;H4>'v[3[՛Qcih(GQ_mI?iʻ W:w!4Dɧs9O'njWS5u9; uGfHA!) 'wԟ.&egKllS;Ef?bkX2`(ʣTK@ġ?JG!WRLW醢 ͇)ae~lкxcH)颜`; 0"ntVgqx_Bu} @ΌTَ:^sʇ( |/לBS4Q:HSZHaW9'6(@sUl#Oc? S;}a&w0~D~ŹK|\Oo=D `&zYC ݘC ], ҢY~C)ޒ$(X^ g{L2/-$Βcʃ e|4lɍF.Aip%MT _65 jd}ȚtBic.3%1M:؏ZQni`1ym⍅ i@|mn-gIo%I+s6ڿV,!!wYGzJ .A˲=Uf7>v-0ao. ['/FI+헥͕ 1]V6>;Wퟍu`/]JgԤX]p`cz}72q{R<\e,j awVpsi*Mj#@-997?c~c sɔ2op,i4ٌZSŲN'HC猍}RbuAW0>&x9[Ώ CqE!SGYM3x4s(--Uv$^IGIWΏ޲cK{d/s;Q܁oߩ]",˝<F\Q-ZmF? F.tW|[2WH#8T~v9[(nLx&Pp-/ңnadk%Reg)&ɁfYۨ> >ԏ0bJol@LG!e_սV \bh쩃~w DGFǬ==UwO+vZ}|%X>mS'zZe??o [QGE̥wQgmC^阊npQ?![m Y@H毉 ;>o}W0@B0SƓni%V7E.X?=(N|y~p> @w!E-:}DD̫:`j]yɄ<3­\,݄IF8}ܾVÕԛu13ZyT՗"[@}r$i~x?*#LR`{y[#Mrx>1;7v)G7 v-I㨒[mאu9~L+0dFRM%EKtӮ}2 =r&*5^.c}-Sl-f@nRwg#ju5~lYhwg >>k7Wxb;];AHl>^H 2gS$iR ؇wJWUM,qjF{DCy͡\&A,9ѧt.F2ݦExꦛRcVkňwG$b'h}NChFfE Ǟyoc nbŭVɁ1Dե񳥛arrg cRM[îjAO2 {Tf&k]}Gt B]/?s7lm*j3i,&ɒ1#F, 4ŲGF F2,0xC,Е+fs:yz!k~nC9`3 .&:NB[VR=jn/%<,)UgP*RQuG=bg15 k=tXR}0,dv* MX;|ǒv~BGnd'6@a)x*w$yRJd!BFmYebwͬ 0?LE ##;a|'P)85\qNBU?crײɄ h^~7WF#GWiD(R<~uT(`pX*숈v12`RQ+,1QJ+?Undr=Dvd6]^L c/~&s}rUϊT3j!.+5Y-|GmI"5cwr7)?DJ^p!hyą%Lr|koCQ՞˔W?+i._ԃ>p_S@خ3f1_*H-QTĎV86W=5€CP{\~ώp& fbAo*ipokApkUH/]N,Y.W *\m<٫Q,BY'ACF빺MÑC#ӱiBZdsA-lP=puPvRRQkC —SE!g oB}⤻/9Բ8P :BǢuO'9$Os[D-nĭ6tZ䘄% R':KtK7y͇wGy-fU0EF7|+A G w!_}4ǭ?{?L~c]Y;+d۪"KE!:F$M/dDL aarxrZaEb@}b_̅WzƬQO Db"qѭT^xj&z<@$E-:Fϻ/N)c >ȉ ^c`sЭ{^3A6sd iA5=,l0lN$;N{K)}"kc-Yk/% (r,;|_0tPH(4/Vy MaW61u-T/h7K)FD k*9|J$\"7Nq\[HmvEq#i_)V=s"Dڽ=i}e`}%I!+k"FjP5_aT rV =WdPRԾ=hkҺNnc#ս6xC RudvVR&C bbӍ,7 ӗY=3DRtFE*p9i!H.,ws'Ȣ:wh-/!kH\CE3MSȁG⃏:v]Fbp.y[hV|`']",d*uFu[Qٳ r 5VsD\xK-fZpO .#&C ҵVL}@r=\WpeɻW~qh_"g)-Y"5Gsa &*o2BF O3z0L0~|=t'ڛXᒨAGvVT*-_)趄awC{c3ݤ颅iJfc1Q,7٘pl+u/?#ZÔ@s7[餝HF9!iqס a O 6UxE0T i"yg#OFi|y^OmVYVyD2Y 5Y%snO ۄB6FFeZ3 FUik"PHXNar[#hӄguߢ]>,ZHh{V%@R -罛DL8;$[rmfuUo(i$߁sT%&{|!cux~L )|EA<1 #LT߄hRNRF]mtҊH+JzCIJd55yO3 2ȇq/)ŸY ei y9?#ΆA>evHưz(nE7|3:<+1\ -͗S갱rFaw[sbb3@h=[\`~b" C]I(o:-h?$\jM\O*W܉<*P2O2Rڇ`U}>>jR/NZL^ܚ,`US04+F-MU`fڌ?U`ɛq)ޖ0_PO D{6] T#^TQ@іCaVGJQH:pP/.S; @h$` (rԌ(<׹! }B #cNGwl+tXA> O\KiJd7r !ԄsYժkǠyw~rոҊpke,|#VȍY=_=wxefi܎[)BmeG T,<'Zd2> ֝*֘M<kH -]8z;4Tбco"ȂryH_WL6!#91, ϶ NpVȮϊ-GbYgci|;1oz(O/vь+%oP/kY^lQ$yTa0Ԫ{炕<-ZXDsNI_끃o;e'GA~% V-ջCDje4v٬8Ҩs=1ldUwWhty*vv8 Ga1yDl|}# Ðt(OĎ4Ы Q0-_ޔOkuKt<%0Hٮ55m0Vb17Š+jNZ]e@(>&w 1 Mz23hLsxd/ F!$qE:%e}>ϊ` -y].5>-^N>al׽Ҙ)&/ 3·|&ߨcY#ܴ&_ڣ<iGiQTKhR 77xc}!Dž N-^ X WaK] O~gLp0_tp;Ÿ^@'<Jzw>V;h_~伮µ2Oq4MI[uCav:7w/p3]̴w{F+ ⽎y_r~U+p/ G+rA`ۇ1rr岡Ddsǣ致Cł N_ mx0  tvig0=`Xrsd7{^>?O4]3cKmL%Dn9@1@cYj~ !)%FgjBTQ; VBNC0͗n&1f^Ѯ#3𪨃Z S۵$cF;e>.[N1zhay:B:iC9VH#90Pt]'N$V&**d0~YRT7-m@DCQ*)-^Rנ$|Z=d(2ꁸ ;k+M#!{ ˛I3ddY3zG@I~pXIrr1w2#h{'u>(ə~-$ /HV,X7@ވAkUbfmC .~KG)-Q R-[+0(vec:!1誵Yz9Ul} ĥX$+/Xjb|BT{:v6K_ Ǐ]%qe q*$Ԫ/]Kw&UP0hr\g!/+ NX #;gGoN2ڐ TykKZ>qu9v5!0_lI5TyJIpFt'xl}ӥ\\y(Ep},Pw -ZyXt0G(Ƌ<ސ_ ܹ gt^Xք`fOoh6ӏhGwEv(>W.\=5Y099{aA\l׶SlqNVgNjovZ1DzLʃsSI@%|'Il"Dfpl?ieWaPB]SAZWp̲(;SQ+|ޒ^fAPW^?A[႗3Fv8Ùoh"n! f&NκiW,"σjP E* DE+uvXTm~[ߔd4ܬi+ l0]1xa`g@pe-E^Ú !{o2#tA і )H[u)}퟼ɺi_C2f'tI_Cf"&C5{2YgD֖}cέ2Ka==`K[B+R{6%b_J`Or U6eWOojoCEc&Z~{߭7hV2튇i1*X>`L%qHęzx;ydsrH!m);04x3̒V5`|e{ ޏ<Ѭ9U[1 ) h!y,m5nZz{zkuB7aK @UEI&)JI#rB{=ܒP]0gQide3Hq8xL𨄱zVF TTW|GBL.!L@K}8Fp;9*gOW1Blܩx-·bkI6ch1.}c B`>n=2@ܱy4C$`&>OGS_q/s q7uBL"o/ ysJ1ݢQn1PtJ0UB0=~SC<x<ayH,;JfiG9Q=UZ_,Z Ko)hzWպrnP(]0PѲ-gh$u&z|`De5B"#иV3K3ng1 [I==w :V5ԗ_ˉʷLŒ*BO\uIb580`Q!wL SKZP0}Eϗ9 QF*;ڴU{rU7qA/$ m?Nh.&֝DIG٩;txEjo ,Ie8%zQ$AI,%8BRݎPE ֝ʽ-lM4)>@!.8cO H.jynrz 6 .Mz;*d`nu>Oh [NF7&9@,TrӲɡ,h <?ˠ=`7.:C̾T7\0s^/ eHf+ZH}y}2KHu''h7:y;c 붶 #^1J>FhHGt;}/޴n&\2+oK7$!:ʍe七<0B>]Iv XUʾWΥ ՅRӳty  9Qȴ/gO=S@ږCi"W~^n«SrjAܢAh)ƮdWZgqYWu;{U3LSt0]ä!e\@ik .U:\kbԇD K<c ,԰8UߺoU^4%E;3ubnmS {Cdq Av0֘\B N,~%-o6jU6wd㰫i ~(i.X0-\ rJ]ؚx 񩽳U g<:^Lo3goUVBkq} 4`wgc\Jt >iH&CTp̎aAxHPkOf7;zpT==$vL{QOB*QinYA3خ{-io3>@r* ջm_>o&yY2㠤J&6C%ݯL8?)%ýb$FœʘT^õ_0 ]vmhmcCd%NG) VsihK;-~ `aϽ g2=G֭6ޞ&[K4!٣ѻe>y1W00n#Y%KW8Ve^Td=̭i"6o]e6sB}hJtVv5۩n&ѯOԾN}7PH :z֭lPA*<;ɇd-inZimq/`eNa X"%ٌ/dKsXB1[*)I[ j,%8M˨Tr*݉ j$=;Đ˥SAڱy)JWix>1>Q43D[Pi)w nL$%'Bd_ Hkq0a M/tM wav/pe>tDd&פ6ߤn1!Өd :8h7S]2>$3uj.(j ߋu|dt 5W<˟#W>/HqvrW?jOtל7l"쎨[v׌H\kZ :?$W;03|iw!iOꀻ]3<$ndF'p{Ԙhp_cNAJ/tэZG†*b(>S`9[!Ñ@Pdz9@V32}DCfu<7_+4%xL`]JB|g_M kS4aOz[8F#:&'FxGb r!X&bE4  }%O,aԃ: ~|U+6+|crU }at2P0yo6%4'ݯ8/0 zMwnl""F_iwR,)?gA!c{HftE\2DOx)_ Ge,%*ӫ} Y )%TC R7Іd;OzlH2$yxbC؅piYoO+%4#%5dIIcV;_[W'{^Ώj#s;8ѥp,-[S6Gw PYѺ)9%m31b!]^#p0Z4~ڛa| ٬LOz"OT8[9Tո~lwt߾}yhHR5 ކuT[Џ_:E^ Zs`VHwg[M||B Ûqd:XE(-7\Oo4!w)9!Pr^H4#/y}>4yPȿ}r⪝y(AyQNaMP,㎶3osfZ#ꅷpRP֖ lpaCp7*oԛ%ZdE3NFne~įj u1D졓7ӌR?Gnɡ+ 7Kv0 e z,uTPGQ /?%G! XiE<`̊Fp{qNLbrv._,rfl7x{C,3ӽA "!ei9q2_]BئIMA9憱=Pv#*B™դRlO41<گoH::`7uHt8à 6OSJT4"S-?J3=`lSyiVrw<q SkɝdvFYHWEv0<6WF0gk@Fe:I` (#y " fDӝSj_T.DU Rˆ19bWl5]{.l:S?Bb F`7uZ"@`fDNܣ/ȞAsF-HbGQM{HTi|po9zW/YP~Ű)d6y0 Z S MǍ*a%g=Wo(ND7L|j3te1nIئ-cC]o,#s,fе'U,pu2`hܘj[SëcurdCLe Q24-s/) TD^zl戝3~[1L쁶yk.k$!b`_4p1e?7䍿 =K@EW-|&jy)sJS }wI_(n(P"No S\PV+)ic}e;_Ah5V>_!9᪞3W" O )wy {Xc[ʹ=tzml冼qpL2J$e}iE,;bՁXn-asmtF"O|LjOf+Eʮݢ& eN|/xpLkCbnr,5XC!T9x);{]M1SwƎ>b`өiTZt?N Z>uB.Ic4kX0^R3*cj[A-#=_dv]9YBۻ.{'|Az@cW\|p];(^Y5hSv8cHQ/;؜RvP̧SmIc& QǍW~q8GWKZcĹt|ˁ~!dpRu)iϞi}եٻp5U?%,/ݲ.Ʃտ;.'vP3uIa(G3?VB,<9`k&cK%R"w.ĆT`詉%p[7N"`YԎo&2VI@˂%W`;&((/xE=6B̕A?g RpµMԙ&$NL&ohkAݞRS|m8B&t%٤znPJ&ka= (<1H-E4}#nĒ[sXϮԲ5dy2jVCK}pX[ ,`&@\G+%jPx4t\`ZVY 6E0- ڄP >v'.Ma٘T{?/#=g9b%+`:C*%}JQ{.H?$$1Cav-s 8oLE2Hhob~QßѻX\IքKl- Dx}0;MM81),Ž q/t]5Z\a?3%0!IO-øѱN#qS>PIx2ڪl mj93dx}LJ@IQ9o:s|LՃulWH_]]jaPw =" /SqjNI<+oU-UAM]+MSV!'n!>1c1b?ys I_(p)ʆ78g.H:*#=֓u Fyw֘\oMdp*.KcRKgXrݘe 2P\T縬Vl:k8U`|Ao0sPbr = 5vwݏcMMv3qq ]D\G?bG}TeeA~?bPf[/5iohN|%*#0~ /t:|RHbJuȯ@Z&'v 0ir3$尴fF-Vr҅qZsX[8 kg,x!fNJؤ@qwAx/|'>c|!=ƭl#Ko_,Ϻ;S]g+D CddzpEEWM h,pE_u#ۆkEYdY(dc:y`[sAZ.C){4y Ob<]56,q}a8+iz_x!3r$q/3U/f>jhF q`Fey:j;sz#k.ijY&'UT 5Y1'e3E+Gv-XBN!W ¶ǻ|A'5մ`'9s˅XNcY1u~GRJI,)v I\h=c>In &*2۫XֵzWxId:r?P+/ݫvJ{X{5LXl[, Y K/G%H{S74w'+,S:Q XD1DEExjF")"Z$bh?)¬?M[kH4B=ی9$sVXk9WQfY%X?y^sooJ EI,:,:zjl~S]P^hsO_iqA!'c͠-k8+lD=SKV~+8QuxKʽ4X$2x4;/ZH8 N-E,يNi ;7p}z82j "=5ܗ>iKTH#|%`nf{"\Dlb2NG6MjWIWPg7rC`|vL2kʶ[~{m/Jf %_k#sZA8M:r ;.yø:JGN?Re<)iz"AO.ohN{ :+G$\~IG\aFNxo<)q E@?:5]f'NO##k'*no@x5وLTKo@ﮮE8CG/֗d_Q+[- Λ,Zwc' hQS;gUʒ)~zoJ_.H,!DmqE &=?wl}iCYɹ6\Y1 Ö^ X<MVv0b^N Y WLL1^=;dWAV'8yALh6[T$Q+H-UD{B:ϩvY= cxG(4HH+y\wrpq? bx_aG{ D+W FqpaSFvh&8Qq^]MgpSk!b^m?\=uyv,_i L_{KFYh_/\xيo:sv8]Ⱦ1.$3MIc^O\4G$#[n2`[{+Ş]=r R٢lofn}tt9qI 7^ïr.+~Kfg bu\I:,eܦCzbA):QG n\&h[, *_nxd4 ~wO5[ǿrsUI7[+ ]@l_ߨX%zj@ԶB<b:2٫K#0sso_A0i&XT&~PM/fŴ9SϹ<:E{vF6mV--v< g !Z~!m mȿ["ݸp!Sx {hLT5&3Zrܕn{5 , W舾6m;xPPi^\f%cvޕ0DUZ Gr(M6pH:;S MqդPD g0:jqxFE-dR-@wQ=IEJ ^KP9)z7=w@reeTŞ3ZZqiO;Pi|k=VW*qڤQIt9S wv s˅TS#82j^(:eƻgxQ\Qv ^Ҍ1J]s_b򺒎u::I֝*V$$22?Tk$W_)N0'iQz+䴼}gN]LJ`t v)qZ6dH(d;박$C ?* *}e<ӕV ><:Jkás[sŖ-QYv%3 `ux4w y6x{H[:PphY\ޣF|UR[q?n5u7a8 +9XIS!Z n"7$-ec}ҴwيO ~LYvNdQ9}FWlrw\>\5Fa嚅)ﮯT|mط%Cr 8檄LVsB!O+ѥYS%WUFu ~A[dGݞlL OǩKw7E'\G ٴ]%?ݔߵ]5=V]iswܕK t8X6sίi;7?"G֣G$`-ܭဂ04*Ѻ+NTFەia-+_0rU,K|k[MћbHup7yD`"ƒSoSkhapCPF y^(f?rTR%, 2;nn-(A2,)|jq;aPk=/\W␑5CʜT?e;n#sOƬC ^!$x'Sm1veAn'`ltV7/R$G;l19D8ˊF(xMJ+ˆ&B) nR"gS쨚 f[E/>a*[AueH0BIKJ+ޥ@֤v&ax9íΩ2uWPDajmpZRz,6;On,ĥjK¦#c>\?8֞I-# B%/Vt6d^I{ ) N[ThSw2TW*/]8]&1l5L]j{PҾfQ{`ֻiOoKvx$YAipOs%ɀK+~2; DzoѢI$3nXκW34Nݖ?'biNyٻx3˃yRo,bٷiUjIu$sٻ@1g 8&moM& ~Zz lZbz+ CIcxx;KBpv,ShT ȴ>ɤ]nz@!>4veZ} /95˙Y\&‡51aM ?$GI#[Vv6/n6g>-Hbcd6ﶇMXR%"3̹3yyZLlunv(,1u ö=e:U`IѦ= P(2vI}i]!/ɻFx) ʾ@R>I^ěo8|~Ⱦ%01HdabE.\g&K.aoJ]L3P?]&JfSnO(+znϓrѿFc70N8K]!-0Y.kh-Adg5XgvGHm %۔<|ٗKҮ|-rf8w甩Jw$>jRz\X<{KXeYM_ϋBV^\)S]8[𘊫-ՁgbÍvkN{3Y7S ro9\0&"sGά$MMH=ɠ#.}I.vau(Яj>!r"8=0X: ^q~"m~׮r$ۭrr<I9GΟo0ݘj L3THZ.x^d1lr Y6!77JKjK<ᓍ7[!F$z\Z̕,ȠcWNj5P^jIM^K+ٌ봠۲zX\&,miq(ØQ NVꂴ;lVʹ&dg@$ePW>$\l*LrJS^kC':lHc 8:"סIV_:zx'@DYdkz tyo{h& 42:\m+#]Y9 y+ϔqBlר ׶"bx-Oq#tVٕ Ƭ: ufE8kq;fk:ʔ-+L%Iq|?QrI?|S;~j1S5?fI =*'لQK;Eޥ(wQL ?5f)%լ!,hd?3*FX`n'*^dEu E#a>OhDR^H*أ4RI?tCSr|k^Y3^|bQJ7Z]k2 QMc<3^0 kjQkI#|˼0;c3C}j/O?Cx=yI^:JHo^0Dbd*ZonF͛ ;a]o# U5Bt^ed܆hNż3%5ɰ#ӄr:6҂hǯBy,~x >M{03"-ͷ1JYx"106ςy!gś*]}dNq|Kl&~kf*CuzH1 Z!FU=1b^,[M-C샚y`NWC;_ TN˂ne% P݄9.9/PvƷWFb&;lt$K0ka60L>6nhu0v7HMWCJ6+ aCpIW*q].aWT~#gU;N2 OrG^ 5M\o6@5\X-@ V&F)q<MHԩ`GpiŮ8:ӈ?Jn6og _*c8pO6fHseuЌܒ3[%el7$KuW0BމV^k5n64T1Om;0rrZjk/\9o.;4|WkKo48>8[0wˈq& fm5DŽZa $ V[f}4Uhx,}p&yX*m˪;z㙖iMT6$dNfQ~F%)oK s79e+k8G񐑱6UyW5%Vq z1^(@pN5/~kbP3g&V_ROhPx?_-=YqOxŁb'BrHޅgå+l=3Cp(ٵ:l7$rtƷqYXZ^{U n@ 7{h**Gk;4F`Ϡ(o)L'FP Yv; 庚)-/4(j(;Jz<i kVkx2]~kʙ>Cu'>5m&C%{'٩[ ϓ"/y׻t jfw)Jt~6 ?躚07#&T^>slX|GZJ6'e^|8mz&,D(^0ϸmJNҟI͸$X8JLΐĄ큍];1N% < !Ҟ=*gE|< R*-hj\LL30DND̷س.%t0ʲND6۰DMv}2E] lS=N4GI/.$N2U2jhPi+!M4S>؅ICf)ņ86a`c96CnZs5q̂n>`H8Y9m%C#=ҎE UcW_/h:)Qo1?e$yslϙ" 𑟇\"Ri/f HR3OD~hۆqyLAoAɉשǜ.1ڃϖD)jgqd"6rHc2Sf1YȤj 6(s*AP0,wڒ[bǂ)  q4S͞Q?ÿȃ\FQ+&??9n]+w9j8R3i\>GMy?0yr;ml_lEfjd=(1tF>3T< {Ccg1bjhnEn6H1G6á3'["]IL5!;DS+/mtL'9(j&48L-'1n!c`xL8A'3܋YUwkeN\іdn8~$ft]jgDhyϫӰx)##,$4u җASiRE'ŋ ryoͳ@dg:Ea7N3:NN"C4yPz дd=Nk5gNvæ+@5:>3@{$2 F~8,狫փ~Tg(Xy^fM}mNq3R+S,āmJ/*AvTkyM}8` <\L,i]~[ ErcӞa3C7tjƋR 㢘LRu2w)tDn#%E'T}89݁}E,K4(wr4 F;ZM2W|90#KW`5- oBdKwn IRC$ĚiPZ7Wy.?3G[gU^kҼ*]VGھg6k23Ҵ[+ * ky٭]E?(iG!!mX fbx-?IJ}T/pΑ+^>=U;x9u'}*'3(+NXP{KW|Xu2l!nT឵gWR 7z#g}v7ލ UdU}il1݋_OK@BDjѰ%涃n"ls 2yDU^˜?k4`#ԝM ֌.s3\LU2;68!0|Kre[)L RUb2(PJ,u'@5bJ˙1d K:\Q':q#?'s>-Mb6@,Ӛ$`uU'5`Ө y̍$!:5u8Ua *zZg5e3۫ˉ v_8ch\ y-FcVOZkO&j(;)G1놜lM#鞮F(^>8`)3F2D:]0:˒`ǹewHl{ᴱt8i-IO-MbJf+:dR^ϭ%\m1.M$Dǐ4\#<(#ǰP/e󉲨˘2\HuwVp}!(44($ =NW[ %6NЊ"|M+IJpj)x^1ua 4ŰGD3#98Y'zsnڴBxlB&cQ 7-7!MV/%r G "W+Ȁ> {Ux+`m#([ zDy!.w4!gŭyh˾`ɚ 03HP %!_XZٍ CXcKH 9©]s1f6MGG8>NJjFxi~:S2l[5051(ʮk#zm1n}j,t$.%[8P1/' q+&Cb>jP26v@P1nkpS6HnM$qG*qE<ޗqD Н&Hx=+d򯝠S9e%~UFpׇEQ?[eciN}8/9ObWvLdv_Z!WsCOtֲu?|TgM׸)S9#F +tiKc?Vq EY~«ZdBA#WN$"˕8~ET=lS0Ǵo1&a(w}ԿoTc$[ ATV.'g3w ?_UfBY6C;RƟm> 23m%1Ub'?|nFR_8| e~Y^ _4W6x>X"f;"HOe 3s\\<~YV~U2Zjrse IRa-S?!٢"XЖ LdrC Y{S5yxlSrNey{Ĝ)@ 4Z-fY~EG}BC3/\)&;$}d [Y1,1;.ٔ+nX@qͣ_FBz~eOSYljo:W=<8 r/Ț-Ûppu[3@@$H*dE$7~ 9?39v%NT$Ug+396S>|~#qbfǍZW#;cpim{(I>KΉDPBkAn1s,>MK(NP̆TA>jRUGl16ٖ^H+p(d] i NثE5-1D'4@ ⅳ#w,#W#xٺ>6r42UF%8 Ls]S w[cӊѻlwr[prͿ2T|}jdMk&+8Y%UZdc? M%H;c@yƋ8wV9@ mrl),M[p@Qdž3J!)r5gncr1U 3jq:\ړs?#(k\#29C*]r% ^,`@ܛOt VpY88v&_ y+<ƒа$`\~;)p)b {wҡBSR[̊2:k v GCo SG3Vh@t.BBFǻ^ {ԅ"32 zw+RIom]M WcH-q_ =0-BLs~R*@|d*L9n5djffvRG-ޗOͺ Pߍ' Y{pzq%^a.[4$ٙI#|h5/$~T"-&4grNOn&g C& Fkd uC$ט_E, C#C{–F/8M,H 50>d`9d'\ *xj5&ֆ9hsOշ1? 'd*)`_ ÃӇ_l.FFvHP>ٹ8 Y٥kP]%o]l^Ƒ1{D=|שPFgi롤~@_!ë/m$i>@ "B1{-Þ }K蟄H6Ax.."e_!u+bp>T!S(#%L5RRNM)W#R_4X1o{9R0si -w6&RYmISu584:Sb^UڶI 6{6,38z{vEƄ h^jypԳqIPuh'J3pp'sp-`Fh`h/OHpC͠ {DVO?^-rTGBhO<q .Ju~\܄R͙'Mꝛ}阃Я>_# n?I5_ZgT:jT#a;noK~D(a*0uKX$Dx9B,WZSI%xbj&iyRx|G]4Mĺ H6 Q)Ʋ9a`]9LSv<Iq U-skCT>8ys8e.y G1/T ﰩB5t0Cf/SͷG )f$nkDMR(]ګ۳bG ɣ=ޕYwլu^ώYS\G" nkf5]/!K^Üӳ ee&1Ivj+a [ T12VOUFdpRP@-v 倫Ѯ'^G 0=z}j~E;Dj+C_GNQ Ё| }#W~` `:?n›,bM[uIpyt{^Tf@Uku=7MIhTtXb<㝸A6ٶp䖌o/ltvQ [it|9:|4aNy q"[2"F_DJ3„{smHP鿣9]D Z/-o!O| ɻaH>ZQ.[)cW/ZLO*f?Dl9 "O(Bq]۹>D i"$^STaĿ0 VpuDV~.:g7AM茪j"Re|@ZݢED0NFfF o g-x-GenT?Qz/HuP /hC?k9ǡ%Є%Uj+qO#6h,6 pabGM&qR|ΐ J^r$`NTIpn!S1 1qtpH֏3YOJMq[&׷K(G}bUe-Qfobnt?Ј`}ՒrG=pmչm,3? G`fXP' !5/wj]d0^J[`A!teo%KͻNrCwJ2\F=*oCu3,!ySqatACZgifj()5#c+vj7FߔW=mwlFAt=G5$BNI%DC~6ڛVažtaU HgD2Q\AU?4lK_:iF_D)t;8"xySD !o SOcEBR6R\_2@ >QiIz}a\ /e. Ybgy4@^ }O`ȢqLKOOoB)J&`bt~4>}˥E?F%EU6߲V#2fX1oiUOz}Q"OmVX%QħVe–w3^USTf{$>)l ?lM)M̙0mb{碀'{Dad \Ku; EaEU *hc jJ@n+1ըoC8CrzvdYVcsw}nANTQf癜FNqi26*ӻ($^bz~tf)ǶpZBަ\ ]ݴ2 Gk_'VJߤ2 vy9N):Gh2Xh{LdzNc۾{@٫p{q]AnE-'(&\0l( /- +G{JncEB@ J[?,# s}<_i{ kN'gfM,xSs}.jt>;-!lht:T^u/%@\('Vh7}ly ~F{Is;?H)1ǽѸTvXI_#um u[>3{#c\6ΧpӮTⵓA\u AKTS4sڈ=YXLu;gy ;% 4G W~{ZlZ|=SxWGšzD ?yf8'uwobDd\Xɀ7ɡZ[P8iq{|R]? |v'& e6:-z9^Ov>P>qK;;ϤÝ, 7_kH`{+B| \㗲֕gdqjw>0f;NZD1FdfaR 9¨ԿN(uF8Z"=r0g 4#k AJd|W>J!_S4[aXX?% m,pXTŏ; C+VW|y=/-j|&,TWlv貞Gn+`/s R((։ $߬[G #Mf zhK[>`i"RRZ9ʻRVFJrP̧Z6_͗}e̓aIJE TE#gC!jKCBL[_v֑(!9a$Dgjǩ'.1L"#v*PpZLNݾ[C3>:O[Od:ltV<ɸ֦ TKB^^! Dv!|"aBr$"vpYT 32<42/0K.'ҁm9Kqkneh[ssv*ZѴ4XÞ%-e*pO:L#˿URuT-AIe&Zn%X |鍲Be!y䞆6ê8vŖQSKL?y漫Db)s:COVFSJ'g%Z,阣m۰ 9|uysuK:< S_(^ވBx4OvmA$T!#*§/[VAc.wg7>e>}?h>2[saVNT2tpȡ^>;lGk:NгgF ^FB0<"9z9b%TH$n)3hQQ?AާY5?  g5bN~ *Ugiťf\ ٯC|x:,۠w(Z8z @ oq~ *0r:!-/oXړxIn4R=;pȩ+{n:ߎVTu8S7_{PJ ֓ [M )ppBfGK>IgST[!^TGz]ȭHZC4#J'~J0ktGwkåCI":U$yr'[xQ\P{Nx߸cf~Gvj=]S\d0—9>@x;zɇ,W]NP8USܟEhBTT} #@ML34d7Sh6_\vE2M㟦^N$^h!Նmؖ6mF52[*㤺Մ7qngV~p/1InⴜmNR-*CI[YP!kMjo YwIEc# 6N:V-81q,^$; y  v(P5l:t=DW{5=3&؂ϠA!L@ZED1ܭ6b&kʲq܍f ֩3AFӔۺ N@ysXa6Q@uCrܡ^0u?nUPuIbcN/QYCiI3^N8NyG4 1|o(π &oYps3$O?p(7#?C?f}vq b]sm+;1V(&/IRX"brR'0;{ 1CDGΡvNpHrMugEx/ u}ސ4Xf|gBK9CYw9g&S^(19]LaҚGw쵔W$|ﯮD, ܼkGXG0~{mml#!Y5$/ ~t'6!t"N#7V]g'/=> JBqgõu=Glۅ5$0[EcT-[/`D9%:x{Uz.f(?/.fr4Ab45Ix,ZEa|\~?T[+;j  *L>Tڑ),(m;)> AE"OvU>uhdؕCr: JSD۝[O3Fhϝ@t\j | E@x{ŧ:ݞy)^4ݪ ;V'b2/eth0yƃ^٪rAL.t'LgQ0LlVG67 1!zti"?pt%aXӁln}%ë G5^.eCL1zH@L|5 ɫOX鱈[U0}Fr{Pش:43SmbhC߈j !\׺Od~󊻮O(,~vcݐJłui RYRn>XU+_o_|׊/n5ƣc)zi$Ľ$OP uCZ5&45v^j^Q>HvKIfi נBg5{I,3hP=X\6%y.FOM̕lNr rFvEZ瘂~҉6RO"°wŦx )F 3 ?+=riM_#QWχ­F8 Ti[ xB2rS'Q )ޜdec\h0٬V0'N CF}NAt8:6{^SAX>/nTӱc}x`qR>M 8JR|X%{o10߬aڢMW`Q' iǛVޚѼV Kt0~^H;>Me&G@Ny`\ ֐*$4c@9{v ghUiUܡ=T5W Qw}FKs27tݚ "o ϖ2ZNKcG^rE>vIc 7(r&HH@P+` )>%ηp1IDEhh\3ϋ bw7,F9?Nbac^ýbz[!a:Ձ Kk fHY"Hߠ"ѱ(&#Fo&02#ٿ\c$->eYbK.[Uɯ"/gւQp ʴS @4uz:I)4g oRg tI4E}9M:L!C rȚcؚ]mާ(P W\qMz'ծɲjxKZ1>A}6]_›12igE᜕_/o O]4xNlwc2ۥ3ϢWP"**s_;ax' Kj=(S$ lـߎCY9'=Ӧk̨ cNFmƞrXU[F|_9=Y*_hߩVdѧ@.WcQgO: \Հ$Zh-(C-s XsG+{ \z, R۝;ܮ sjqvg dK=䁍($]TqJt": Wԓn<ɇGrxu زND2A`y]wd\T7ɻ#c=I qѾQpyC)0ד)ޝTGT7$bvc{T6:Y~~4ɗ _X6Oά5>?gS8O,=GFV1׫M[G@S0t2zC}23E;GsCg$Bl8<\.ATcHUHĞ脍)xyd&,o.l\h-ׂHg?Cb[þrʒQovc *`C Ӧ\~5u5|LɑzTZJPsCi& 8A@^, Rqrv/鰆=W8|0<\㲚X_X,/6lEEݗr4|3|Gm%ZfT­UpV֪Y zL)vߺ$D۶x0.=]g漋9 cԬcM鲯[ԼA/Aꇬvlts HaXXa޽=bӀzX7E_LA_ xD4^czG!0GT"qOIz  ˃&}r@[ ;4IM|+JY;yDQ՝;I8yu\AVw({''92D,.bXaPB ;z)$L3P:duA0U=% o.dPֻxE# < 6F& )'y(Hנ~#I;L>q߇ĵ+]^@e<{ j: PhW؍k4ZfF10L6[{*o'$ƥL: | HĤ }V/Z/,4o8WdLBX '[\nLUmQ{8qdik `EMG9qrJsv?GTձ6[[g.$a' ӌzP&`M@( wVϨ/n*mX|}H4GC;H:k``җ@G:ù'uӂ98f&o51]h,ԃXrU~occǍ \;Z#\~GijYHW:erG߹ /]o\_~Ӎu)LRe#;Nl>L jT&'8+aAROw'5Yދ<\JӘ[QZ^kr <1/V5cWe!XtKz:3num@Z`ގFא<ytWdfmk,/n)Zd_-4n #Ӻ V0S6ܗ%z;tR궀:[|jnΤV/\l#|QeA|B,!ʖ!0q/CǖA>ÃL@ސiX͡MwO/cdnXLOՀ\,Z!`)(.ο|u?oX4XE !OCh1βze|j>FJv*glo<=5mY%'/O XQLcMz`DxMJF*^zgvK*jzr%B~6Ui줷PsY؍5$IwW}{:K@{ԾB \*qV|E nDO.vR1 X卪e֋T%҆0zxsn0MSeB*ؾXb3P*ڍ ^. -4܉rG3 qUyxy!poh*N+瘿/=M0aQrZB8?ˆ(ZJ8eJ|܎õ]5> 7zrE7<%FsD1(qs0} cW=cw#osA\ߛԫ0RM0H>GsL=o~ߓ֙_-M*/jn.bj?loD;$l#.~GЪ{^2X#SLa=z(ka"b#S FMmfΛGp72@j>TU y!(Ȭ&b{^iA|ƀq:!\F=QzvX)KۋڇyGyJ ք$Dc#L;DYnך1 b&LM$47fg5dB;A .b/V9إc <2 &HX%5q+mڟ^'R"ٺ6zc%)=M6z)fD{U ujԊI"B;[݊veR=?9()2CV8\h3vKXɨ(cVxUDnTO]Ne~;%<})>kw(xAT^6_!LHٽ %6*t%pBr_uK[_+ꪳlvPxS"nnPGI꽭2|̝N*?K% ߬aI;k~I'vO"/F#@uUToB_[C{ D1J[%K)fc$Uxsy~0n/T JF zQPF"D3Td|~e6j+K]߱$@ǘ'2Q 7 T7nh[FE=iNo zNjt距. Jd |Ԅ,rhb9__hYieBȣQVAq RKTts$Djp,ip Z]}U4KXh\D?eDL Z h1׃:"ؠKٵ2f7^ښm&1Qmp7FhN.?& _&hsh?R<}ϰ|w{bYo y 鍌 teS1ٌ=]&fIT ) d سªE47100#}!ew/!7"Pq~&0?{]uXCgN%elUAzM/!bk7%N JЮ)0O4V;T$0O9׈멒!H~[1`Q6~^JA^ Y#qnp^`;%8ݭs_Pك 6ָm%?X;❪a}՝"`ݎx׃h]j%zB)xI[o쑘TQ5I7ph;jv3w5lgy$YH$҅O¸:PpₒNjx7jU_| '&gGz߸ͨK lʛ)TF$η\ç(cp:i^8߁]2 + *j@=V}Zyٛb9sZAGr/ x31X} 5J+W M?DR,h߯x"dǝʺjmcsR 72mXq.3 GT>鱬^.By1./zv*QABb2c}VĜүqϤy$2W#4󕼢'=Up!j?b=!~hwգ^UnV Ⱥ +ej3<ق4_ a&Um.QwŸ2>9^ڰkjIհ%7Cγ޵TtO1 kB:C*65(9'֍P^9cx]Z ?<4]h>`iܘi,7AF\^SN E{ Do4-llZ$~ՀL_m;\U\Lb9j]Z w&[rJ槡 .E:Zq/<皞y, zn'E.1:rE1+4L%|`̛b :3@+q:qYVD:Jy 'G\%w#}x" Yq ai"W`7 !4zy0 E'LכuHk(%ZŁ=[pJL)neYs٦HSzhh Q<֣~74 pFBLD敯 -$=o/^S T)KgUn4_鱗Qu];( F&*݀k$g= ^v\ɼO)kQ2x4q (0L}bu X"m̨Rbuݓ酏{ ܏_3B6"P >B㐗E38|emVp﮶IPITMK'sOfI9*[.%l]E͐)u'S=KjG 2ȶADsKD  Fg{ʂ1=G!%$4sAiu$MT'1'1lI.;FΊb^o^{,Pd zi+{S"SAjcKu3ˢ\9 6XTIk4+! ~K*2{\(҃НpCLU(Ig1(>i[(y@=nsB./-Nl3b]JcP;0 bb,j-}{H\q_CDlݼdcQe _`BsAZyGLL9f;Ҹn 嶌QpO;qIk oR{飖7 &lx )sU&A>!GqƎsQs#ހ *ը@7pxc~(58/ K8 AڛwSZd],k] +//y'u sd$!/`GF73 +J (5TmOԹ߳y!TI 2zx3LV%r+F tDlŷxd&ywAޭG٢c`]WU? mzMK+GYϼ+$e`6K YQ:ˏQkVi^;q|B&BNL<N\kO<6S n+OH:T:Wt gDr ~rzJ^aD#UkA5&1v+ǃw`Wƙ ߈vI`F.)^W+m5vd˜̆jK&e iy󜐡w3uL5 ;)$&}3J2]Kt6"µW]["᫝i(V3.TIٺ1(©U$GpS{*psy\C"F?.P&zIvJz{Yĺ*^ *NB;5)TtM 7q!K)ݵM#a VkWmd@uLs̨ Kx_z<YQ*B5hG-[y.t n0" `ܽa{Ep$&dč 2YG>knî"?Bdh׷OEx IyPNh",VGvS 5-E{;Gl {FT !+J/ H&9vb*lG_|wV,_e7uk`65`p3Nɽ2tYPɻS& Փ)U }>#rڎ>uI{ VyeuX?N"E$G4ɫ?gN\v>9l&RfQg( 1T8aog O/-FyYEPaSY@}-%_ޢ[Kzi #8Ϯee+ )봎]Zd+Y m,Q{c%_P?3RP]B_9y ]ECؐ{)#9ɭKdqYŸKHMrg!gPe&,:- f9hmAiuA0ZK`8ɔ\ /bJWЩ;}+_Z|\oT ɺVn>oovVٻtRI-aVSjRX}͎Ԇt006(X> "^7 <A!PIA\0P7ʏ3:1Te(4O56c[ ЏtF Jv+F@\/#kmY̢X- bI-$njdJl^^y|! 2ʫ#9d u 2'c-1.F,ı*{H#2J'վGy|`Z796=L׊13CU[5,0Uflmϙ7OyDc8nT:J9JiAf`RܗB⢇ܓ' ޡ2B2[)pF4cިB۱N8jVKh"i)Չ; EpoٲFDž$Iljm@.MmDTѳƋ_[W>Ux=Ŧ%~qW7Sn{B*ZKH0*0lⴲĐc<|+tU`kĢuzY{*?&#`k+LT{'w4{zAWkp8d'gub˙+"$|+QG/sҢJ O\xN^'׺n_vE[|@t,B!xOh ̀+<4@A4HX 8-Y!ƺ ۉ:9>m XN8)MQY*#gdKف~vljYnKBfb3YM6P'ICfڌ-2c1CF‰(!\_v4NJa4|l_榍4],ǪAF^U#+2 %dٹ#s1mN3e ?gX HƲJڋAA3Y2ꚥ{ZQ4 "}g B%o=Bޔ[Ub2IQж)eLӋ2AT.*G~?y(%$^P0 u"h!? j3Sd%#" v/ocCGl*E0;Y"ݜa C/22GTgDhLO>6]\^`JEyRqw8 D0j~xs%g5yQĈyXs=f ɹB:Qyeh}r^R8Y"uqX(O2M WBJ!$#nTos* /6Q8/k$&?Xpb\ S}byi=(QVU; Y^ʎq(l&mУAohտJpN:5XbM(Ӧ-f~Ƚ;5WZPX 1D-\{/Q !^{aw{^5uQ TC< T}/Rt-5u溇J2J=%#B m=`qʸɐ,e"_˯?[$k.ts<]@xn/Sdro&K'kv$3稓j|dJPC#bI[9o v^OVAIzܐ0/3L9s[KʛxM+:a5W[f!=W1M_;"*j6xhmR' {%\͊w{6~-1ײ 7 ]fOf^_NĹ[PvQ]:Sx&cvwSA(nXӟJw' .3kzd{ ;d70_ܯ*Q2k>h c4htHf $oHd|lwO5k +2nf7Iԅ=F>U9y|0O`.kpB;D2(}Vz)tߺؽ0{g:^}`h4MO{^ ryκ/X8MvUV:»$"Ey|HO0/)3g@q#US;%aōd" TnqZeֲYeNl*2uD:'TS\6NmrC\KUx5JB#VȰڈ⽏7'60MWJ.XS>bsۍqtq[MSou^PR|;͢F D K[w!uzm,nr+|Ν0o(eH:\Ff|mș |z~^BǮPo? 8 1÷Qb4͆GMOUr PnW7ZpNj[kM-vqL] kor+Cu˥xA׎i6uU?4 <%=%u2a;PdyEk\OmV77(@Rrd.vFFَuhgeAߝwuPLrf\ 0P4q*z9igQGmtmE(KoP/+J]S)h?zMUGM4 VEɘjX[{RN)oo<#rٛYL?V蔗礓 "0PwYWz,{zBN{}kT+i65tߵ7}zB4_wpn:5[1h%Er A-Ъ5 @I/7B:X KiܼY-/c j[a[t_RJ5!º/ }U)+x3 [~%S)QuA.babs Ӌf7P;@.>q͆^Dge&['n<|FjʇnLۍ^y"\9G꾖5ApjZ9iF[ b0)0LN]ӻ̬ | R ] J!9sxTߗU}EhhwmbPͧ\ oqZ! 7-$aL6ۖ5?$)ȔɇQD.T~d_ ꆍ-V|HIj6܊YkV`gw}l^RJ*?*KtrelKqMEDw7Qevv݋ =k  6x K:ҵmqnX IX$S :܍#fdJ >3P;/uI<>,$Xd{ Pi3xd;yz;^fONp8( _#h7Q MkKA:ϸ}Ny yds" 솒x|NT˚{ǖuYkgw2+C&C 77_F)o_tV"$P6ʒ7U4gl B9v{QJ%aT_?0_.Ӥe |w=$X *lL< ֛P_R6%Hܗ]$4^ƪ6DV>&M.PYGJ0JȄBxtUOT姚UW˝"9@r]RѽJPŒ#T jŮ !5Y˫q=| Vu@P~Yl(jhQ@)FYZǽ#iƨ $ϗc_:te]?6#+jYǖ|se0x-.igvGqisZ:'PħXG=YԹIC\]!eEyrIU\r=E<\ ^+\O:|kצ @RFee#X:]-RI {RK 9`Ml=R5^>[hg*=1XMnhjAcoS\p1+Opm8n!\Xu}Vv7|;IX7t\#)v[x?hsSrv(\|:݆W4E{:PnOPQnF݌l(@{=e#eWOP?&b|ޫ7xDɊ|4TY9 !^7 [7 VeCi>N޻Cl߭QtB{j99d[b@sR#$L"&xeͿ b8p=ub.Kt6,aɸ?z7nf uFwQmL1 @=]Ky~~z2ңBbMGygRi`/ncTUVp kb 8p펄dgA3#-ۦ[DGhx֩B//DAR9hoқD#9$F.vM^Ti;5R|%+arRfu/U'82kA S6{}Ů-/7?TP79*l@b4O%a{mqemٷ{rVpQFNNpt)Fd03|Ks!nZA 6c.wW{? $sb,ݐX=0{s e4EŇeگ`R9QxV=:UGY= ͊YrB_vPj9 kj1;d4yLc ?l^Qvunb`AS6J=mه:[֡WL/]8CkJ#6h&$ˡV ,3aFb:rfwi]o;&?JhVa _Ee!<C%SHRNr'G;`*FC4 $˺65ADžRbNRYndQe"gsh/ZBcdN>^@G!I/ 2D^pK f x5/p2o@%[fj}j4xXY R`kK#Jp!7>4QEƽ7Љ&:nJQ_k$ƩONjI%49&sֽ+LPԒh^ [~oѭ> Bc2p']4x%0yUut辱\fu Q.gbׁir@+JތpgcʹkI׳ȕPzTN7'-i}մpv:;1/DxE=pYz!5Hs[[Wx1bok]m"- O.;s$,W/GRJN/M`Qү45@YwJ䠽`9&Ks5Xy~ Z,4T[N@T ,iA(z˽bH}m56Ztr2>ywoX[NsG2!j E_` =YΠ *GܦT$consm9ՠ,?5(A~KGC =B%CQdzd ۬ȃWIy: ǺB W/ ]G?KH<kRd TXM`"yIϪ<%-zjv-! Qt01n[{Zx͍KV{I`3qe^&?ֹ@).W $9;e r- r,,Wj #A^BH z&~)OVpj@я_1"s}#U yAr\pU05׺SPߋol^3(c qk"1sl)E MM6FTZtqz$.m^o؞LjYW 2~> @QpT} 1{0MŢ`އ Bp rIRzq9qm)(7xPuiMu8WNE u "PV<ݎiʥg`U7I}JML&D$t~E1'xt=qdOEj8Ϯ\$ @7[#i*as ;l1q[jݰAroI7;`]G"8xW Z} JV!YخAO'%? .;O_YqLShlCպ\,]73I/ ؖ*@f4fl8mz=u0_ K ҇O.ZARF 2LK\%y4&!*R> xLŎYurZ溜mSVgJzEgeËV/*0B Tz|R4,&l{ѥ7,RbcHa}1*t A#YnWoLF&+/{hg3zGDl_BS$'SP6@4]3u-Cz{ Dm^]zX_ %k*gO<|VPM֣-w ZN1й(Nqkf`+Pt uB*r3:g[bp(@q#?E;Fז {E(q=s@?ҌU.ol vs{$B.hUӿ~Vz /ϾXLŤ}bQlΕMK&GexP^zWu^U̷ WZ\M1 u)K9;71>P'&L rIZLh8X/5^pxʣܷD C#c+} ƋPv+ğ|5W2>u}f@MmyxzWVOrm׆]J+xnD#Y]J6$#}o9cEe\= :4|8cR1YTJ^?sI83 DkbZQe:2ln[mJb(+QHx3[J͕j֑OYǭLQqVW񷼐F=L\JiFu;[DEHċ, 8!yLx>4">ù'u3,b%x5k-2_yJT8 ?DֿN(!- .5HDę|K{ܾGeb/TreՍ5Tc'deqK)̇[o6gֺg,/Fԍ5_'թ+v6H9 "b;{u*;al7Vr )9*,Z\5JVO45\b5OQ^D#WRu5 ]9t{GѳoY%RD6ID~OjsESPߪf o}=O:εX!ah 7eZsbTUrRh֮g<};R_fq\43 C~'UƎ+]zpoDkY?~#g ݦpf v!HklW%Y,PQPC;.*FP󲽐dm *t2댱Z|t`!ȾnTĊٛn}\[8%VW+UE?AYtXH.1X&nc]M!+ >aLP_hEYS 49DWsjDz_9J*VJW\^6K1Y͓2YpaVC^ n̚,X;UE=.H ?[`׳e0.[ʯDVȢQB[l.mp j}xÔ7^{Ҥ3wUGʦ0GK9?4:sCo/XgrsL3 ,/-7 p@,Ud$xbY)D߽H%Ui)Z5ݪۨ™~" %)W^}/[,M7pI̦Plf Żئnm\8^;5FtCTr7 ULgg4f :5mo(UJ/cdX@L;K7+&t:|{@^ً/˨"HF9C"@ao1z`HrU],? s(N>94;'/8  ^(EV+~"pv J9a0V;ZhKīffƝb*vzo{=;_>(fDf;=@D߬"x-Y2G!U *w ث*әC i!0Po:vr^khӞ;ÕX-m@WX˯q>ʖNČUJf#> _yh [ 6O#to$6:g[xSxAI׽xȒ!FB~p״W 0K=o. J^cQ%]WW$pU$0zPo~.#$#`q.{,Tsj\<O. = .&1t٨xEk&&Lp8T ]k{bG#RZ;~AȚ W< N\6 7@ٸ4HF`O|`9b h|pMb_(~#jP;r`QvI^V>&wy(PF 3OY5QܲPعsumKVHGU*.c` $x g1᧓fnn0ix*-ePTݞj`qV%X$;Nį?r#BEX|vw<|~#djc?߮숣J\4-8PD7gd66G|06!ST;p&aE53Ȉp{QCsMF.\i.^v}wO0t/Ih+kאLR!is#{PS誳N=P-/ӋJk98}|dg @Ecu 2^D؄_De zgѕ;"ru{YXô_̄G:`e,. a՚E?AoS/5& '#z)9&1@-gnVkE]MV3$pVc1q/㡘 -|wtTO7qFV9p 䧶,d. >1=D=N|- xo޻O8f&%dާ{H w !OG4 '$o3 N}3+:&x@Wrvk!R;92_sbKD?i~v=_CKD}FQmr wllXw_0vX"Ց+cp<(:F12?wcڞ|`CoÆ~g0[f"SV;3ܬ,/ܴͲxj鶪1v8-6A- CYrZшMBK4aUT"H&ge{0Ik-ׇ`AO4BɡD 4R{dg# >$TyU gCȈq~/ҏTZa"sbAN@+*='#B9eTx3:F*he%|4c"K__,",ݹ=:ޓ^Y܆C+vr-6ڦ ñ;<;z0#үV(̓Vz9ٽyVȺն#8?+t0>B_ACx" q96gt)D[z tQp%ɊJHnǷVn]1ZtQ2i}K g+VaFzA7(v)/CD[`!*Iޜk7Y`~(6XKn (-Ӊag=gT}`%H7*l %9k#k|Z LY]-+fwPcv5fK<,&"5u|MLcE&@oV/B'Ŭ=IR0;Nshfxͻ"l.3!Y>CP8qc{RS4q[l'PF'U4)H,eJ|e(m-QV+uS[|CI :A2OLPltiPͪf. i( Me *m$TFy$lsi(9T=X}TadV"2aJ-9VctG}'g<\-G4mK5% %yY(]m ;:F OHf }D MkVS&U[jYB V,G$E247 w MVvdWń_~%:W8FXl.lw0 5y+aBp%<4^No,%=O ׏pEW}Wl.*&Ig~~PVXKHqC@QD x"ID(f =\kWH 6DZعλ ?sϰ<eCJXgsQI(\MJj20CeS2`W]}lR9LÚ[ɤ:븖3S>s6oDΘOl%#V>W 9I)֩mbp# !$|ز0ADJ0K(yesl}y-CTǦ%+.1Ń˒v"k`0rx5K"-xL[1%]Ռw@͂X 5sI $g3Uzw+A\)뒁tYg8Kѭ߷FPǐ0<g]}WL]FB8f7B$Xc SR'6>eH)p]P*k3zvm5{^8 7 .REx4 ^ix߇KH Ъ̽<(3 Y!a0'?3[b옞GAgT2N˲I"nnͦ؅kZ2'}'4'$)bАǣgCD:vǹz+:Nwo'A]caZ);t#OŒo 2UV$c2 3k@R }?C 1mz+ ?z(}:JO&` 5xr ^峩:\1}Tw־D)A/AqrdCI^hP9fh薍%h `{ js_|CWTn.RA=,+ECRȋJe,M^kl{t̯D#+9@쒞GT˙?-/ah2.|2ØGmjt\$M0NrfQ6˨6Ek[V9\2AXt:, 4%y-֧ȡ2 sB2c<$ =!q ݄_|^I晵-8DBQV|zW Sز5gPq{i~Ea YfJ*qEq\ 'y?^~P.7Z`ăm +na =jT'WY, zA#@tDis 876|w jñ5VVX( Vb=:x͋C=Ϳ{4neIz\SJ8:;G 8?h 1Aٜ_t!N m_!z:[yXqUYd4(ݴ\xyaNo6&~+ ݠWt]/¿чOQAɉwuYq;Yjd=;@sfV^VՀ9)(\ktCo*6 Kc,IqȵZUP9|1d^6degpy$V"Ǽtޗ@ s6U>uyW槐\ԚadH Pކ1EFߕU>D =2[8֎?BY50-=qTq"ɾ~4KΑ&ľ|V+,kxc+o5>t %Hu)B;ΑoSfçzQxø9tc?BcԂeZA2',lR܍kAvu947b8DӎNsxd;ը.$+;>ig~tl}DAC%E%90䆤/WYBM-↢Le\ ¤r͢alLEB𺌉7F6[Rt1ɶa' ؼo/!h8; ƈͧ|ɍK[Rأ<貶Q+DE2Ô%}i6|b䕊dFu*Q4LH7MYVeQ\k*GR{tz +KƖ?E%S' 팕HƥĴ .ȓ͌9{mnBRZ𓊌~,P`-AZ:+E9LNnn=*j=Zeqv~" ߇G]r@m\GQLCKnRt[*i{R1hӠ@%CHMDRP4asz, VhȃlؓS,'7"Ǧ!18R#{lM:q mP{~C͠\~bF̑nEOdI)YnoP@ 3gJ)_F*#DqPon 3LXU"Rٗ.؂7tc=#e]t6ʝ7=UwV7T !^L_cZz_FE@q-+N?7{G373uo!mRo)lp$ίyQ`c`iTFy)H:#;yzpKWt]om{}=* X4iEz-F:|y 6hZpLȭp:b W |ܩB&wV)SNym\U6C;)1]Ei7[Qgc3P>)dk8mC?X~]W1a~-k}+!6ʶ \e֩SIm w#2d}lu+!Dfn(;nzjhZ|>ӰRc :8]#9\3|'XPy((iP%HtLly4c") [DWڍi'pԃb,LG$RE < E:ip%6>DE(ZѨˇi |lKff.B}7a%D<+=x B/K:?lwl>VM,lSg[!8S.NNj2,o/i1O|1m<"E*՗'h<oq\Vxj(t-jr.x)ᙚ%oIAYζaD Zs_s%-h^T]5]Q, a Z! $BGƍ,?"{I6;x\H4ϵsOu0Uhv :͚;8;ŹܢR$΀hӛ+.%Hbi>,TWHu L@ $ܹ9$q9:MV.Gx))w%xh|UkS3) '4a,@"F,<:i5J/:. :.`g .pe.g)Md3g’)L^ ܳ{¥f9F, 4TQcoڪnjue0'-9.VA@~hr1'()6a˱ Qa"렐).| 1~gPCBT„ AnhMzuEApTv{wt)Ap}}n)t<9"RFƲPR-:D/~5 k6U?=;Ǘ [<-VDҋ>p`sY/KWex=_:'ޢf;[`l~ƹ\\`q6oӆy fA_fB8lܬ)c5[#ZZūz`cc_z7y"KY-f~fUY¢-yEl HuD=p@ICv)/c*OōE}XWݮ^N[M#n/܌^[ 5I"_8hh?ѽ]1 T;XxLfA=fry%"0scYCfMvg.I-_|Pu3NPRUOr @L4FsV 09fc<0v:.My-CICvQ')ISҩ {!S -lZ?èE2ZTp) >"x1b-ʠy>'6zȹJ 1h^o G|G7/u n%J~?^S#.R<GE.8^#IR,-˸</NBe6a:9"0mN  {yr /u[UHig-ءffhp1OZj.Jw oFRɥLibvƪ/}9YBͧXsעy)טb#Nd$o [dS5+xӗmB+?wd8<7!1 ui5sr^ Ըy5M'A;K ɵk:qZwnbWۭ I7?GqB1Hu& qYn#{yo?&$HkL&`EXK9}ܜW勿Xߠ]Vbcz'k1lvCZƦwє mS5tAtiyp1 C۟u["}& 7.5 58 ԚEȁL M5mnmH˕ʓB3߇icmT*O\ACffΫs>j3pSJ Fys _$3r_c6~aƫ̧:t֭7?*/ H颐Jd}g8\%u [ d,1?_m^F ^$s9 j?{ibSb=Obظ|ǰЗ$wLtt^e"|S_veEew0MCsSv[HnS _zֳ^VcMagôN싱.E:QA[]cuĖ8^@g.Gb]om3D&Oׁ *ElBo/ {*p,US}r1SAKj U7 38ʙDa2 K9I*C^ۭT[qd`ȓmD^"d L:R'1E&f <.XG# A* דgNX§N'^p68{zިapdVu9I~: `qPgjNA؂+mֽ%<93]!^tS#.LYfejk"K6T4d<7ǛDF{TvVIo=8j|qOTu>]5LT)Q x!ݭ\pO} i,t3| ]є}.+3UL;~ftTXĎGOA[R)Ly^-GzNYĪFأ=L;QS{naEY5dKndN9JL!Qpz䚧43J]\`f$3n6Ȯg6 !ƽ HP&0 ݥN/H5@5Kt1j~Ű@&p 1hMafVy?nԡg/ L箕w@_^~.AqҾyRpQgkU`Jn*OSV/ºtVX|snsLy&muΣz[H(Wnh\2ndWGM熞ų lAd2NV.SMGW{e}b-I{)qYT)kE*zM.sceN@IxiE\fe\Gƺ^ ǔ1)pl))"Z`y.Ds VBz_HjIl ײg1G @-Dt\n5s0&jHv OL0Vs&vRn?kϕ)>3a2jxf @>C2ߕS1Eiwݜc<(9Р˛WR$qv vp _7,/ITwO 8%̋1ͽ) /"YqX@]:r:Ka7Tv2ˤIW&lEApSܰvG:L17M;{ F^L~&|Ai5p-: -Ws#p(4O{/NI{bu/Σ_ɜwvE.8ȓ>N@;xOKK> s>R^?Kx2vbwʛPqv(õT|7*biⰇs4mTQ*m.e;[h4 qWة3 *Cwnߵ?aYdLAXJ>.pQ-Cu`J'6%2tuudU,B iN:K?cNN͋9%q=I.RN2d"\ gO P&=g8P- W-4%FH؉T[} $IIZn1LI9+x֬! 462@Ld\5ãɗՍl#~cV t\% ӸBE4oU>T+D[:̈́(+nhоbgݓxZ' ] P"-5#qN+a7Mk^+#ٔs"ٷ70L CW+JDʑxeGU]]m4ܐre=<ҵ973m?[Mad{/<3TUAꉇvFV L'O(8D yU9˞T GHFeI#J Y |0p 2x>Sf`8ưOas1Ot:T<Ϧ雩 nB4$\GqM6TO%~aMIqҋy kӚp OpոWǃ{3m0WY~f.Ox׻e4ٴvͥcfŖsbL JbPl%c2/4yujsЂ ,-c;Iiu;5J" o@=]݄zxDwh)HLJz'NEuJion~㐗QrQ+Y櫛q=GA0!IhP/{ tug'X:.5y>[xF{q~aԪJT"!+A)LEJjQ/Z&VZRo ۟'NM dKMe0vc%4:rw(*x;4 hhE*rx,HID1TzG81&auWv1 ;J)1w Q#y+.O % 3enZ}m]=4 uxWg2#x !+k.?_JK! q]HEOAwΌd:6-: 3% enh0't@栧yn24!= #q~M#9Uš,GqaeK`: qnF6f@}_FR[au4ғ+ߓCp; r5?Tت/itql/=ustZ([i,و5]0\~C 7f|dz X⩄p_)KT^]ȊkD~GD')2xw)<ص8~ ljhfTyV|CHa0?8ok ݁6|̺]]q{gDE O"O&Ǩ -bYz_grP,`-o*1ctFIƔ?:fR;g|dW~3;v(&BahTƍ5u)6:YV Q{I#ZM#dwP\hp2Z,؏&IJ򈄷R%h[ $Tet +(ۂ+?dCfDRnjwBZE]*9FK3 jP&f/wX $g@`eT\&U"Whm:L/Ǔ5YGO]Hn|gMbd Oи*E$ycmTd`{q1H wRލ`N4:%:}v#'*7ēPa$^#4,7 pybyRdWLQmwԸx\ Ѿ?:e<_&Ov0s-GR at5h?Je4M`]G! ᙅ#΢( T>MFq|0{yPRtMZ_ues;Ћ @,p_f6V U$iU=xuXӄUOVyv'9iZae8_}%vkqBii-օy\ ^HDŽŞ!(Ps9c"َ2ִnUpx,43KF^Gh8|ǏM8V@ʿK?6`Q*f,lBA[}BJ~I'i$;b*+?r3M5ТiV/fbbRYGUoכ_Fq~R i,Mi+~b\/=%S'Gb^m`Hl:aSmZd{+9~))2$Y'Fi/iEA"w >mu&t)ӗn5uw> H% T15!@ ܈1STrSa %9Hj= L dww43Z7Q2_CNRЂ;vɳ5 lr'щ)Z gJlF\_䆮#Y`0zTWD]t0b E?Sj3' ޺UwznL)6Ȟi1`,UfN{`j]6tpq* ()4~k:bHE!l k?O+*Mv3ggM'%Oup[ZrNc$@/C%To8 N m ih!6W2P}v=ףyxK3jGY-Y=؉o8 |lnh6m$ږE惰;8vaZַ l;Øf}SeT偿,OP s*|м}{oaG5>UJ!|' Y*'Xk"}،%i^vajC'i^(UGvFd;4O֔dBҒ wX)m i|ZKXQ.#]M}ߢĒ~*c6ԘQS#ϭȦܯ'^QA79v̓ᒶo-"^ P0L5/( rZ_V,Cx5z>#+ZfO rW=++zܩGe.Ԋ[!YpEMV*.1דȧى/CDtS+D4VI]; ,ۀfk#'z^KETLm|HZeR,³H| 6נHk̰AG*or;V%T*Q_Kz,v;hH NFFsA>Tw%m7<2? lw3^od^ZHJ;gGW8 ۦY2ow i_ $΃ׅIY?1@'BT.R=g䫉Cj>8p_ \RLuR"89ly+WqT6 *u3qWn K:#@\}z6X&R!?1"yJ~|?CB!gN$ yT[0IpJOɑ]HYN4P.E`A:sqTمlLl!^CDC8C!NYHt[F$I*ƕ0T|x.G%t!brA 'W<(>/"+|]91aڎkb YUC4Cc#s (bn0 |zĢn2{&b]2Z3hs<yYZ{@ Zdց([zNJq Ra5-F泹Һ͟u GjVJXPfT0͊9ӧ}w(w"%QX'1hɶVpBP T 't;,1Nاխߒ8@I _FT+9/n۩YZluf<0sJcmaCIMw}U)@j!p DMJ6 A-ji ӾQA.A/$'s!/{窿gj),8LS ,_IL4R,Dus1"veK˖1_m=_A6qݮA(odxT^E! h;T$'F" !r)B$ܪ I$gjv~a1@+Ÿ"xktg=`>GpOM9>?f=X$.sĺ$O阕fwhEI=,М卬op814U:I .n$bIc|;|i(OʲFLF/b}jMO}sGIڽl>bqoz3VXsRġAk-n20? z?HK op4\e>&n1Jv ?cZjǀQ1LFyqwbΘ2A1f}Fˬw|1R[8UFqvh{l8JHqU3VFBX{ۺЇ:ʏy1G/m,vSrjvm:f̤)1bIRgXN3Y;@NBɥWqQHI|iKPYٳ5P:`$ZHWGuۺS.zQ-zИ};T^LFUO?,dT]}xk ď> 26pB87=Qg B- C>1U;b.{DSQtl=v60)H%H۹Lm*d0I:i!t#PqL!5++GXT!zwOlo+&Si49TΠA %fQr 5f5krx/Ku;Nsj"R&nktH޲K%:ٌTQ-Fެ)|QJ1Mh{1-a "%GLlV0$;#v,ւ7cPoI="6tkn[҅ (EުѿC|]>Ga%Byc]M͸~+(sbSPzVo1Wx l"pbE aPhd cU(OmV CֱPa'l׌=VÞK(|5D?76nZ2˜ GԖ*h.&y2ڷdX\Ta^g8o֯ZMOOn@k: Pb[PK[>f'j%̰Q<5@a]N y7v{d>S79|iq][FhhN&{҉3.3Y.UOOnMZj}rحc#_Ը$/ݲXPvG8&p?> #rwL<1 TT?)gtfc"ԯ%A {A,k,ݢA2;iZo#8MKV{E'cRDm@C\+Tb@x |!PtV0K]W$|=nN¨a">E;_mhD<٩Q"=zQ2UxJ޿.v o,?d(bJNU5w\T"__lb+oZ *ՃV8S^W^}j_ u59pc )%K{[/h.У 9HԚ [DTy%pLVbQ%NkX*BX@#?T}]LoJBt$o&pqoM&e$7[fTPv﭅3>B  Π\ΔAaB3YWlpBQF#wlLR^[9 γn\?S.ӄ#{d +~)٪-qW>y982YE]sOr̕Cӳ~҉8Ia+v7,.WR`PUi cGeT S ~J-ԩɘǙPzG1ȕ^ oU.'طJ"b>2ꝺVU=sY`9bJVVWW ?rYC,|uho9oitd@1av%(Al9P:;{RiOXg' "p\/&m MwQb˶&2/wc7R7 |2!/CXR s:mMiy!/ $K۱)58&$C<.ʁ҉4%A7d|UwUEdj[뭳~~S}TtPK?_]Q..jsA!l GBQHzWk9"o=t.ޗPbNDK$wQt95 6j2S+=Nb"Z YL#o?S)7Q.ߋ %0}p e')YO"9F,nB8"t/*3[}ND(!)R"5ZLR[$L8LhOm'CR~iRfP=ۿ]2o4"L^[ZtXx$i`.ɳxxu S#>檒#I%ǰ|^R^c$0zc`G hб&ğ&0ZUmn bo*7mxqGى)bISC8r ,~('M|9?$"[Ai&ىHSxM0%-_Xq7If'2-U}}X.tC>ؠwn?_TDJQ #RNIPF2WdEgS2/;xT wT^O3UW{GR1DygMqb8b 4چmww!2 ?k[!+AWT_sgbN#m+Xε7=tt%cdg-rd/0{ 9U3;dCrU+'/nO9O&vԞLN$xͅ"M6=1ݱ''11؂_ZǞi^R/rg U=S#OU/¶[3Z@;QF( 8Z"֤:3rD1c\){t5#Fͅ)FKGVx\qN'sx,#`X10NV0{&_"& >;d(fLz`Ox]\t[|ZK'>\vV+ q5U'x,`z$߱>][JIv)Z ʷ c\y;:U4$fj[x}>  DS Me4[گ)|Hr`?d{3ns$Fl,x:^بqۤ8Dm3me-]: q BQ$Sn["v7%2St dBkx\A{y2>57aԜ"xP!/kT$0#kNihq5B^|=z'wn0?[U npK5(pv,}k#UQ ZOⱘV o!e,ߣ4CSL7 $N.v>WܮZ;c,^"V@w7]q"^'t';mrz%mPx:$s6Y#dS(;Gj88~ riI$"Ѕ@`ժ[ϫLA!>\̕Ne][#zX (@\kxŪĶ)̻#XpJ>+~r|B"U`E%, l ڇ<`̬rhM'lZԏTEu]^f2.:'JZDܢ%iзqdX%%1z0oV.˵[""B6QN>;p50etf>41`r -?S/P>÷}PmoMILm|] F1enJ-ɛH;Xd=5T>eMm\©ߢel[@mbLKp6݉xR@+i$r@EƭU-bѮo*Pqf`yn ~+կW# ͛>ɑ =;SdM5J_Co]'?r뜻l77Aq5nBhF 9f]G8aB;~~soT"Z}U-,t 1]Lߕ%gbrrV{ j yTDN_arOSF3LtC&JF|o!k&gM(bO9:ʗJ0!s@jDX]Εz_k6-ʱڦ0‹M/:Sl:p{UA@8V5|jwَPUa)i^+Dn$3n>#Hn~ ; KۅA_Ӕ*Е#S{ْ9SP25vE?%ㆤ Y ^'sE0@`S~^×70~xϝX]*~L[p5>RZ>)x k14;m[s8 #kh8D)̜ ]2!fvVOT,hݨk%ˏat͆,HBvy`K}Z"C~{WA&h)L0kdMH!YuOlNzWZA\O=kmTnZƫBUu$(L&eB(WYᶑ̱@n~yT3LA_vPu!?I'VkdS~(%T+u\kb !&|zJZ*꼎1>v\< DF%uimu;*^޺'Hp!ۤnC.΁ UJ;DNwIB+zߖpko;e*RR߸2~=EUj[D5'T\s2 `].kPpɣI<5k(MTjioN kҵMz G$8 4=* S%c޻DY:ŪP#0"J(W%fKnUx?yP'd 2wRlip 7oy76h`1tCvYG|o\'jc[笵AV쉳A%MzɊmUX#vـ®SN,]i lk=1) Ղ }?Ygxd-1s ^xs*RMg=$0=L ʄl]­U)aAڱ|1ŅͲg– 6mS3 PQgdi:Zܷ-;:6EibBHBiUܥ'{kAr5DO\x5[b'cۜ]e 0}MWAm.?bq0}[?oGi)'C(E [u]];W?z"8B'z0n0^?.ȸ m|qBڰ٣d>\/uh:yPb'z"^9a`Tvd`Fpr"S.*lgҏ9B'` ҈ZbX,0j{PZ,)zOM~$CGdm:tr-՘aEdZB 'tzx s\Lrf<z::fvO?*`o*hc(a}X;ҕP4ֈD"R{4ϟ 0O8݋e'9,Svzt s?3n͞o#+F= 5jS5[>PJLðDcЗ漢Ɔ:g?(WM|C|% o`@vǡ)kx i$=|4?ؼށ3Y= N[.7 %g0f \V];o8b mLʱL]tdTK;f֬[ #HNQTP!kSū檍P[׬lמBf{8zCg.wK!g`MHD.hֹUrͰ$Z 5g8$4bH1-;N@s!{Uϑ֍|Ur֦rP4ىj35C_ Wx}ё]$Kk Q; u d~ U Mӟr Yޔ~]}1h~kPȪJ6bЛhyb]~ ddxMbqL mh6L ^JX72`IokA䡳v6 VO5;IKayǁBOw65ܗɨnHyW !Rurd(/sЭ -¶[h{Xv 7\,=n脱T$I\MM0sVﯟ. A ɌVHviz>0y]|3~LYE7rsM ,I ?y[>ƏcC`oq,5'"ߥdoY0'D}Hn#TmFpI_٘I_zcEyNoqyPPx%k٢ߊ0\a"G5vڈZYM)T8bIy5ashHiCrU7A8Lg:df ,=@+5jN*B+|HBpS]2[p>:'A/G`߼ഡd6Nb aY<-Ds|ER ԭk6q;U4)ycT*^144vN4 Vi< ž*=OE8 @y!ksM+WW#1qٝse"Y?JrFov(Ep骯L-Υ~_=ĘA !,߀zI俥*p Ek"8j^ q;V < u/\ ([k{+Xn0ȅJkP:AGl"4J@UjI'THΏ}yηsD`{s@\=+J%lBCɯ%տVKuZya+ rxe/"|VPe rB%#Gq>KBQ". crB3 b*]L$!3\DЇWn,g|{kpj%Y*Q@;RsNZD; PO">xZ[+#)eB 0S(rW,3duh( >X6\UpF@S5V-w"|V7ӠV d{SO~Gy 5NxwdjdɈmͷ͐ht|_o Brΐ `'2-sزoAUNhK`)Z5 q<+15c R7A"&r5"fԈo9@ #Pz B>ROT8F%Á.! ohGn[iB.r`;Y̹+5&&ǹ Ȓ*|DhRy%.wfH5dM+]ʴj|#EFY:bξ-Ε 69d0yzVDGH qO{VIMuR#H=fw&s׹}uW2QrBo2 Zd]zgF5ljT=C& nwbGxmzHA0M._) ehȔ?O pdYdܼsEW{;`mp JiΉZ7om4 &<d:: `UI5qyH`7SC Mo?+M- 49 x3O5y1mgJ(Y_#avO<ODm͠V8% 7%a<e1^%{#?W0cO&+S/kGVYQq-*L h /`R標>3' zg>-:nhkǜNf)`֡4v˨m8Hq>vrNÓޏΓb Sf"Y'is(4@#=w!`*Gy S?md?\]\ 6o^E(&-@ң+5o|0$̉\^PF]ߡs'llr{ku -] ,tcRbCZ*?SX@5}_v<.cgKV.z}}w1a ˌ1~JRRl P\ v_u38 WS>p?SWCO,!1ۘF,0=CvZ`ڦ@m1?%Xwm\# MqД tKSB=/ *CE:oQBjEDM`܅ Tm| z]-e`֓;peZ2jae]Rc^Cx{(?L*zqʺʦ;:dai˗eA2e0vZUAJ=sc^v\/f +'᛼H"iP&jq #V_,Y [^+tFۗڊ{ E@PRWe'oĤC|-(`BP >kҤ(+nWt+-2[ z_+6y<%c}Ycy@FhBtM/IQ BENSW)Lw5?5<$ӝ Lf۹'Y Mmd:xDWK%#R4&vBohf\KY) O6.uB*{fX$_L{iXp<c?u7\ֿ:(D>RJj %.;cp<#NGjߣ`R:`dQ g I_#jF GF.ˇء}E<>R@Q#k } ^cs:Z X|d)6ͬOO.- 39>)FXE( >[] ^=w M{[NBжѢ)0 /fCc@^0|:1s ee.p>.:L1"bz㲜!n lyq[hЌ}C8l&H32HsU*;)'x-ѷ:~Aboz`Qd$f--yӨ i"|/]RSPZ=x?_Yɹ*4QT .]  e#2,xL9obcP^G LX? "u6#TW~TGпym&xM 4(Qڭ#) X0()[H"|0kcw.$QA1y.U+UUW!-&RǗ$;P۷\VZ6XW/"u #P4xvm8\a8ωp`;NbC_Y VzhUp- sTJcJUp$j ϡ`[Knj@XW v&des@]ܝI*/2=yWĊ`pl| Ѥ>J'28 "]vQ'% uoֵ:.WƁ?Tzl &mC&lj@H3_{aPMu|NVGRӔLgdz Z览wm_+{\jsMk>t0Za?$јLBo]@B|”`a~HP[ -{kz ES1VaJȦ`[z_94K ;U '~+O[6[QW=<. |"oNRuViRP3ao\hܭk}4#eX<#V$sUʲ7q[Z{`]DS7ym;pI !6Z\R`_T!]?& i}/YIymSx&|r)0 -_+ Q'okķ{c|(1/O[~phtO%^~"^oH=̦Xr>½ b +Wݷ ss6 ߖN+na7LJ7sz2'kǤnQv<,i9k_һ4t_![ڟ$j(EGR.=blk k! m6:De $'? F97dVPGyJ$:F טT?ʖgqb6|%]>.rָ )"D-ܿVҺYa8&`2"<LW.4‚,橞ύ@÷KԽ'% WʫD|yYE$^+ {,EjcͲ2 CQS:wgܦWᕧ9^L+uw/"9fj%H ԑa; v*r+߱f)PH⯆ Fd= ޳uY~ЎHX>5V0ǩQm ME 2{ܚWcC@o۽s@q3ÕغMw-'J֮Jt-pj5É90R#M5CvhSe{ǙǤd!+P{=Vs]=Be R$w"6\W`dnI(@c`ȃ,Zy- CZ4Ϗ0(d[`kJn]`z: {ZzM!LrhrV4H1t|O`ғx6a~VCMi nU$p#",Ys6N5/Isڢe@۱!Oxj-OiA,`sDҶ, ݔPfd:b3ɷ:ŹW<ԧ I.cBGXx W^ޤLE4FQ_oBX`X$ п&І6wrqN/~#_=RH(0Xi &ͦn T,]J3Y-OxRYjdX5vXmj ÷N* Lȷߣ]>q;_ѮݡR43)P*?bX8NY-A>R;6~g Y|']J}Zf*cowk8jĚb~&/Kuwg=Ր5iA +g%؊2pP *;uF(r骤+јm i }UO^_ uZ{+O{r?{=ҹѥ}XlI[TpǬ+6k?E GJ bM#mf+a~P1AmI0hÎ~]ͷǺh(F18#VpqLW 9y:nFj'%擣\rH1)=!w'a~a/ L +'srIA;_27:hbX#\Q_&eI|O_;Gt}\y3c\AگD"˭ JfRWi$D>D!jeV>F$ k nȍC UWGlk<2se E>d`>}>@م%ԷC?o9V(ӓf2! PkX_Ǿ.m`mu3ZYouùi:5J},|[78Ǜ&r¬ gC{egi,$16Duo%PH}~Ku3X[a~P_ )c 9k[UlAAf};(x 76,ǾdH xȳKMmM.剄KgLUT}6ZqւTm=K= Ky9c?{MugI:<QN\fRLJٚ"E(F`%Aes{ VSz+)HyJPq`^eJ󜤛mxw?C-~$h=_fbxu^NN\`4; )gxNͣ9Nkп^}n9)sœ0&Tk;+I*8>8Jn4PqÄHOI )O 1մ#qb"b(%EV9Sc6<+23qmwቧWuO^S,\-bТyjE5֟m4/Iл7>dI U+Ƞ)1; L({2)8VJ /}ĥW1YM箮,kJ;H8U7Z DŽOܢz@s!R~@SAgxޭCZJwtg6AۚļK I79ȇɰ?k"v$V !(C YP\'fcS7NK[LSCwѝ$2ZD#- -ө0T '4?Ohe/a-R5c K'ufQInyp.}bxɒ!H*U*ޒQ_ad(+p(71dΉbǩ&CY\Vl !.f-iL kk:xC2ƥ%-7ʧ6 xвl0I +x /v洅,3<j,nڒi]=Y=IHy!] ]򮮷~L3Q=x]Ȁ1A?W&=\@hJˁL[;Kžsl1D'MIH@ 1Ǥq:ŕdq`͞q!P|BG}*Y[#`ӨHwߦsH*$j2v]`)F`H.߮QɠW^"y#F^ǀƣ-IǬYY;FN[$r8Ȅ:1fBͿ 1;fBn&ckj2'QJzh޵8 !pSKڶ?-ȳmá۲o:+,ӦapTy ޶iI D8A)X@i6FCshK Â-kSE.Ϯwi۩5v;2vYٱgx[ 7|DY.ڎGܙ gސV~,!=H#'_ε)X&|qpILc*%+bcSιS@ ʺ呋Q\ i1q.Qݢ[>RlXhy84 b1QDyrzi/YҰ-Oze/#靤F ppwG9tNl,2YՑ$GQ0^W1MR;-^~s߄kze9#ЙT'x+|C^FS./S\w0F4'<1ޥ4xxG:Q[{oA8NRKV^&b}:$Q^@c'|pMLds&ǟ\!Ltb~'}*!̡щW\{agwA HRh\F?%L? e0a<|TUDETMk"G8/ w?6.$+-LJ8cޙ -6҆!cIQ^~in)jQ}c4FN(JsAu[Dr80@eǨFբLnc:[ Ϧ[95iקFFxEҍ?a,<}E("{ :ds3sPG&yZk {\Ӹ,q,M+yC*Zdd#fྫ";2t'bB !vم)zEZ^7 Xg̶(*9U~@-#t_Y}db ^09pQ+"Cq}kVCa3sf{)Sןa+5#cr2{|#a/ o^u8{˺g1e!XnZf)/TC zASQpBhc 91X~%<-VZ~ޫ E4.Gt0X;Mn-b)j8x g gZ])J7gTgZXH/)]8R-9Rv>cѻW67w[4GLl Nwa&U a??xQsA"y4oL q1J5"2Hf,إZ̔ώ]Oϔrs&FUX/O(oV & qrXDZr4d8?[ cjRuHǘ+#yk Ђ~99ƲU2eCrtŰr3q~&IA-h>%v$y`epi)#yc*7N9J]%ͬǞrGKlOt,,l^R q!n9JMPz3lv V>nvzPt}[߲sj#-T%TjݵUGޒ$w "9q K<ZU|] <w}xHX؉Vf׮xQil֓~f-KZ<֣*dZfbt>FFj6){EIg5K#>7V=y4Mdy"'Krǭv-s4xWws8ZF2bdq3+FPlbXxOō k[J*H!$t)`P<g p_2hfIJȔ2|,ZBtv͓*l3Yِ;O^,e c;rP_~dpәuLԼRV^"X[・|`8qqJh*-R he^b~Ðb%Qnz'%~~ߢRHȆϝ?+{KDI|?8}Ur*i3Wԇ#=?eR >* ]1`&D:XlH IhSnUV+ 3 g#JKi  װڋ\}8- sːeOO]/R6\ؿz#2 =[I|wW?]W0ǦVhϑ:gzڰ$G!G2РVG,@}iQ&5>0cJ(o46;M6={hFYZa- o6K#(FM@`E$!-PIn/Gk1jx\ؓ?Puc;#dd= ).;28A4tJ/KIx/E\UItYQrRo5_*"SHSϦF >$U}n&b/{pwR^]Ky+t(YFz#ف)h6Mbu@Dtʟm $zM~a:BKs;tJnԈϾ+`,1ڥD'n{xF d+zG_J_/pl& ?ܳ`oFnl8 &y8*snՈ|SMΘ82F 5]:tjj I- ƈ@y ieᆏ!(}&Esg۠4 MsG.3 )R찾 6>*@Y*()0I h @dv񰪊4 %㛱0*L:9=StVU7tl]MSLwS%OV&m伏5"n&ǙzƏ#҄ m}qɟImvJP9*ԤTWWt0?^u 1d2d:x[$q'- p|I{%JF֧YFgx2.vP UX4MZ'T5?X 6X>MB%Ʃe{$Ԑ]6f0,YJ|lI-"[4IۭqBRa\S7 Ks}u/sHm,,G6k, szzÐhiɠTe@o:g g=Cz҂#=mLr90x!+V%(Sׁkm Hiđ/RtԸpElyԀ .O}[z F+DhWmyl[4A7u8 J| # J>*N;aXCi{Uű 'ɾ֩FqH3 viZ R(< ݤf3]XqD@H⚴>"\֬KU(c<߾ haBʓDoSU0[ϻF8h$齝W*A'p]^w2t&cC'&w[8\Hr9LBҿ۴osoHDCDN֏Kg2 M[l: (,ޝ86ΨH|KlD nKVޗV! zUcM6?ФMUU3딶2 y)b!OO>Cs<#@Kp?6UkqI?54 ğ `ru#㮑ZͿ QplF Hr25.6 čno:%+zzx0b 3??  Axf-*A DknQ4ʚYɊ͚ `v#_Qt=f }ECMGo3S]ӫ 01L~ĭemVL^ACƧԪZ4 o+oN0,GaѠ Ğ>CZڔW kT"HZNig䉬~ 5#Uwݕ}Qhiy2-S%3+Ixn>ī53ƅ8^QJ"6D9t[EV{$D];Ɗ28:,jeu&mҊ oϛwL~U5z !~ӏ!pZHgXf[d1Af.Bmz%3[a,q'lhί)B]e`CnlEڄ'FCb XƇ~`k:|Ѣi7(g sHg1{ͦa:nmNY!jks?j%>x SЬ烐1*Z+wOjfvly˚Z }P. @cs pM?.8fqżh}t/:AB7Guη᥌rfghNԽ_Yzo8*,hH}F<G8:HGnrٝ!iT?5<#(W4mQًU$18I1d8NWP-q7V9&-} * 2J__B+ڼGG bu8Rkq)1 0#FK)jIf 1Xvj[9Y`|g ݆-Y'SV7.1f1jv!5|fG5ɶ} ۉ9 rxE|B(!4x45 7u 2`.O`P]bٱ.c )冗&iEnBǿYɏ҆U4ٙ'w hWݧI2EK>0Ƈ./ev?j qY;"B1x}YX2,^S0;T9;ȭxKlcԻlJj|sCaj)MӅU@K&G{PWB){~+ h0A5?3VzQ74kv &<38Z\TRy<$;!ٟC].N>Pνu%vfE L5tVioNt{%P ڹ2lfiS[SUdߋPFytK G*jde:;@$N?ScXylr?u,PĮ|3Dʕpy`Y;G07-S%[^{l L`h ɾ/UY;OT"D^j1J'#4)[Is@zwy<bW1o@X\ȩFyd }>937ԝsUڒR--5U{dDWoEW/2w وm뷂Rj޶gqvd`ḛ?t-R-sYj`Ҙӈni ]ƗsxɁKch!Œjq%a)'Zh`i Sl>[O41 <7Z onՉ6B1]k%7MA0l Wʎ[g2{=La CS츰Djy>>Ybǵ|Q"2|cf1"nߩ^[CBy%VFK3cv7H ް%}k>wi J-aVsնˉ.>0p/cE>cktX/oO3 M8~dգ5ڜȏW;Fiu?hiZ#ll@㓃\NղFJ s4.GФ@.1P,)#_̀Y^1$]\[л%>~EEqi숴>x\ @XaY!sWI:j8WŅ B+OC$|S"gvq*Gm'OHG!x\/L2F#F"OOqEJѐ(<: z0$3?64G=ҹױ>~SҪ5?<:~_x`[cw`٘~ҬT2ZfBűLh.DJʵ. for7=N8f+ ,ۀPn)"qlr[) P }|ATRDO GEBcK Q11Se&CPIa ;̀z>R=ZSֱ<~uB\XpI  y!)8 *k[(V  D'%ULl~ݩ5E]UE6!DjjVԮij@}%6i^dYd%+LDնlv],CurK*R>}sP.k +UyTȥC ҇Kbf_,}8 ehF0a=uC8@񔓳E۠#T殣!fl`N n)q<(w?b9)U8}+^$1;5otifK" Lu8d*sua s h̨nMo̱fB}=؂K#?N~홣#04j?.fAgtm񊮚".+Tyվjm3guHV7oS] C.#&ji_8,+up.*VqL6By姺h[Rb-dߊF2*P\J'kրYd`8GkxOW{R8OK:֝! ZO$<~덡df]k7UrG =huQvn.< _p$vH]Li(%PE9>6e!=2Hj͛ C-Wqǣ3[~ و@% ^8wTlf oI!5S/ Ls#ow0bUbSf-U3Ҍm.}}60"zBr=|c=,+m^d )a~Lz{۾,bЮժȜ֬X%&q8.'.[{@Vg[zаjŭViSnTs鹀&z; St_-SBN]֥mM\$,d3 +y6,* e,'@8_0 W&C׉)6[TdMq'  H3Pso_*;WiRČE2r_;e=YPʢۄ$-_L5g7WJ&3ؑzm5E=wE.R?삙 '#)Qp7c`,_=NLh#705^CT}'ȮqjΈsc  f]I `.#-ȳtKR6,95}KHŃml龶a#eXYѼ%E|[^$$_5>79x%@ Tǚ` 5"BJ66y" j43.ůh+Q%5 ;Y&Mm7FP$체C+:l4h̪/7BC$R0#҃4$EuVqLqXIw.u]]/Lݶ{kŽ;^zwH&Ǧ\x0 6,/]/qhzZKh_U@L+1<8CwȞ_ mXvrLm2/idS }$ڗgY7h( Ms??TN( 7z@W< CgjTTɴQ4?`.\UgHߗX)\U䓸Q![X]{XU!2oG3! RZyWǨӛA:]"O~e-E%r=0 >01Mv(2Mhp8^-@1å˜Xv{g01D7Gޫ5$"FrUs7twHaj`ìWB'i&G&{P aB8V%`NkQekUɎe|Nl t5OPyMX_xmr~2"_kV>RsW1{x7FپWjXvA,OO;AQQ~K̇⩃:ٖdVa{-!j+Վ\a=O/Qec > v`{8j(^AP( } rJat c%+m5qvaj kKJJ E8َ8) 6WsdoOo cB~83QnβXNIhrcɁfDy$i08igx0OɤfkW9yž RvLm':grnls55>β0?YλݯwBK wc%Zw0A@_?5]Jvtx4ʿd!PfU}&+N([o4.)TDd>8D⛫3?įPv,vg8_LRDyP B$_[Н:cX"avf,WAp2ĀxiYpTO8ňx:,\ >6򝣪fq%UcO1u8k/j^tyG*tOtRx:F孨Ԃo/+Z~ڰ.䠨8, l˷ձqNvNyym){wwd .D '#$:ÏjΞ#d8Nnvͱm!=(_NĚ2u_\ 53cP*# "(xzq#A֢]N\̍ot[ҍLso ]"@is0wMx!F "/8Ckly> 2 ʖT *퀟Q+D8v ?9 f@zMBe[`z,*PMBI-v'))`0noR$yEBg[Ї!GjZ့uƕu*zǦb0=B8_"i#tt4A^,@b{? 7<f$%Ӟ 襟UF$߁0`5rڂml((RY9dejD6Q*FIW{T1f0y)@5pN`6ʍx5P1X,5u yx#3t@X$5>rB>11D?Ȣo+pSPs͝JN^72i\BJTEл|JLzjbb fߖ9 j8 ۼ@i^aFCD=3݋ɻk :qJsk37@ڿ>\G41~6p-M *BYnޙKIM+6O4`9Ѝ6Zz P`Ù$ɉ2Y@+*12`$}@[hb>2;{"Xw~pu,Ja_#Ԥb/m$ҏ{YMT~B I~yVU TSz⁘jUXqrMv-e3KㆼK_ߴ|.Ezߠ]k@WgY3 }+"c Ocڄ_g{3nPq k0*C4.=DWtH[Hz3PMɅMn`MPT =xw[DAFFcaʉOL !h^(u(SEV~}/&b ,1Rd9Ořo?/kX ,K6&O? xIkdGM [/kE0[2V4-3GcO3GenB^/ g@'n?+goȑB.oG ( ͓yjNX3~k'e÷ͷ Pq5 ZF^ 2W*z[ID;Bp?o~aR1c c4s,OJV15Ε1`XTfT,5Ct%d ' 6T3#sꆰ'I$=wQ47(.l(R`$DɆ-ZA?08 pa~R E~7,586./9LW- &w%2]H忮j"ZQxU=-ȴ Qucۨ:e~ltȽzϨUm4:$r*"+j,\s.fu߽sq `s`!~vT^3JV^2ѪJl[QgЅqу{8B w|:Hbr$CD CIt!*ƌaid[w*\}mn*^Vm'2&ءĖ6>l Ҫ"0aދcW o76,ieKI-dbntdfY% "؁YG1~&A'Y%11;H0\눒S-򩰧X bN0F p~:~?!*qqiE^c5y#z;TE3qG#E ӈ_8,'d6&nvܯd@"@c 0NdpzUEZΆ>0)7q+W# KE /ѣNt Bpt<"gmL㳉W8 '׀S?SktL ?l1tN5 m|Y=6kN(Ũݥ*=|Y=, XuxA- wD؀BH8xM9X1'HDjTƥdL+ݜt+ |v8B{\hpTu, jB;*i|9l5T8:eR?6ݹ9 \7$M_{gZ,̙@1 |PKj3c.9VɂYTP|c%stW)U`=m}c~މ;([ʁ}%ceXR'l}4U;{!֑ 9lvb@ 0G>'rغr<4iZQ/ljh]|/'ֳ`J!<+r*#s7Y $-I#+S)]$|(gi%H}Z6w #%#χ'>av_ =3,JT`$WU? +ۚo[wћ5xeSE,o E@Na c1>0Ǔ*KWqhзs(Q'Tp*]aw"Dq#WAR%&>HϬ$WI`[x4Ӷ4drU?AbIv {>b qQjw+[Oؓ+pԅfQTM8+r ׆'ZAD^SCl@p߬U# =" Qm< SnLtX/ AnѺN]%ˏDŗ;)yhZ'ڰ;QRDzGʽfj3'ΠgR5gxrvAC}J!^j]zx[ۥ5.@o9/A pC5bHn˹dMDTR٧RVh]}i>(`>mRa~Z ל ܶ ?Yc},}k#+.ц9N!\%V2?2/\VXT!CÁC7yN ,kZk_OC|ػ\ L2s0xLKTSPI(>*},\ΥNu[mHcؚ. J^kk;RaF H#P:8 sl {ةqXMtp؞=-X P-:VD &wz#SP"vLЮH*&P?E|dډ FBd=^/ins[Jzn։6r7?"y%6@d,t$)% un78O>O#jL#KMt65*(g2 4W*'ipen^Fl_1 ,OB<QtaT2kp իXbjB͵foZ6wl6ÿiP0^!bR9/[3wE ~rO#N]j pf׍GM"g[<..M36.{?)R)oڥL^A C<rwzm ATIĴ.ςz{Kax!|M?CĪ)JI\Оktᬀ-J܍ءKԑIsn `Zטƙ 7Q)N. ! apkv|7AkEr| "O.ꦋQK /Y1RP5G{5?)0sVe2nH]w]F˺>,ak i_ċԤhEoDt֝2a_\YݾܾmLY)&@!]^E)h_ZȦ1ߌNRyZ# U"ƃN]&4qs}8'C8Iy9fv:U6c%9WaAeFTe=)͔՟Cqdq% |#P߾*WPo8`Yh= m_)ja =V$fFyɁ#4SVDsC(^(*W|K~}}ՉtB0XL3"СR{^x2P27JGײ NOsT9>T6J;7 %&hS[et d N ^R(> ˍțB]`:dBn #D,koƇ)CbUo8w躅0`v֧w+:ƺ N%\%nNyY"Rܶsn>f 75]YWǠm"),MRmFm!q \O LyxL䳳ٷ?"˽5 Ps zUR강|2Ė},8/4ڦeWcQ pZI9k8C2];5a,Y ~PL+8K?K-Ad(uUL zL}oq"A 4PXu[hSD6_ap#F> QۧD1S%z #U+$bf r,W]e.SEG:%M#V:EIWI|7'?nzwSp] OT@wӐdy{P;1u#~RL|}b5$qSCLOb[?Ntؠeݢct+0`&0GF@;9'SyNjsY.+1%sHXUL1\ԊHWw|m|rdgkw#-V6'asbH-qv885BRfl.ILy;/w$Pnu:h" Sj" s.CWsD}-4%@- cAYg)=c l#U! "uXf8äzI\LJ|=GF|&BFOR1<ΔV%~e炪_eg h_Wf_>MjP X" %ӊUpEYS;VD]/v5E镚;y,9Rv# le@bJM_{$U(Yd̰TY-AqRsoLӿ/祟.p$<ЅM3`pA@<ה`xluM|LTf}5A pwgB_D3r=Bz4VM0&&>^!@]☯KieD#XxʉیaPjDvSU5*:FI7/ǖ1 nF@e~6K{֕a  أGV6F,[l_6pT) $UX"wr51ƇCsW@E1pm\YXfHqe%Ô!Qx:3nC?z~@4ߢϱ 5$X1A|G/ojؔ$) gICPjR8Ր{_f&'3 |\`i8l9 1M?ir8" ۽o )t<ܲ)uioI_'|OʹXZRl0Fa΅ ;"%P k`|"0LnFe!f)wWYf&\":h1U[s]drŤuF`ˆu1CE` uYdFe.ћņAǺ,Fu~1u x6SL!{(RGe/p܋ӂywpAen 2$Qh[EXk[t=HܵQ[ĀÀso"(vF׿?i4{gs_88JqXJHj5/p3a_Z^}CH#̢ l3u ۇ빞4Qmԋ#r {izp MꬢU@>J}x=f˜)'\Aն7ڤn(;Dh3stC>u^0j ؃>ퟋJ<=jKnoGBvXR! w?P_~PڈFv3C(|392@[Ù2y.EԡxՀQ: a}b;I3dz->7!I$z9Wc.mQc WU1D_!; 7{ 2F,EHz``,t@`^r8ކ4vdˉLp*t+o+/P3O;&^)1IlF+\zL,QKLHJJ$O $Q:1oGhѩЯcPeNx5 +ɧg'Uz֧HlzfFj@hd]_;O~&JCP->Hmoޡ`{JH#ȥOjp}pDM1Yˌ vw܌IIMA 8AgEc\WwdYvM˸5ƞVF :yxFzԺ=-3ײ,M?n>' nx:x {x3EQxB[kK5@l9F(]<0,QX!5f%v.l:}G^]Tnl2=T]|1&p Rb(do30Ě:5+<3D4&'lIC60knܳ#дP`+4 Ica'lq!Ug-rJx'$6]KLUxc4AG: Z&C,UfPmyD eb IN6*eч(PXځ*N_+j_$ aҪ+ybDf 7'M"$#SxlK>Scn4;@! ف|:Oq('vGi$ [QP1 zO,֦m,}"[_0P>]S'K {N*~zK=oҚ-юcY;miۧ>aJLyk$ܓ$~17{ ly@eL:؉.n"Xx9\ oѯ*^.Ui,#kzeoo KwWJ\X. {]H۳0ZHƃ7p+JYџI;E3A*+6Rg)_7 ?፣ԏ ݁#Z& pgw7{; C-CD,ڧ9ߴƗ#N{V}2Vb7Uqb¯SiTzNfﳛ P>}=yKɵJw[Z5BX(|yeo^ͦAE[Xڜ?6t\.332/U8]ʹBꤖ3 v,62ڋ %L,2OY#hj.0][o (Wqέ _!+Tۂwjz7awL= >wW}GAp`.!^Kysx,o[~I|H[;h^LiK/#sF[⹇ _Z†M筁>ͷp18W^eHDQc 1´ ǣPp=)M#Ad3P6>=mnlxm)EC D/QQ>?msydy@iS6MYQF=>a4 'd/V)3iL+J0n} L+Cip rBA!ɿ;k@v<#>A ,9 զ}][$Vl!BXM^lYd-O6V{_!= 6trrk}揜%Z=Ӌ㈋ФEL?%#3,іYvǽ2|EU:18:o=6Cje"⍤d!w*q.)P^dn n؉LDbr\?L/ TAVޝ4;toYBClg@MU,XMk}~*5h!s#U Syc;bq<YzM`+XXO` !ld S˵W-9:wKoQo@zeݑKx:OL˟/ke'sBXOdia@|P2!\.MBPIYNo$y"%R2;q*fKRe$8vJy2=e@Iv?gNe1-K$}?T:CPv  35VA e/".C&]Z _lj\ `iMuԖ]sY q}3߭sۤG{YEj:q&4AxJf_$ 1ESʻ4ǻjImަ5ۇL C@ )$߹H_#r^ I@?n:f!ZhZK"h$3q9#F~c^￁;w!&ںo s/\_.K~ 8 e A=qʧ([>)=!š ϏWU_FHRzc0Z.Y)RVWjyN("SwzYY;..4B#G y37tX8W{Y& vŬī>J&)y<Ǿ\ }Hl(@ шUR FMs_w60-BvUUN( [^7!k.4Y=꛱  !`Zʯ$2۷fN`X3+;[:pp'(ӷAcH Ƌ o)NS[)!.494iFZ8  3U*V<*wXx3d۵ZQ(EV'ښ29?oz?mܟ_&B\J!=.Ҩߓq!4o#֮(J <F'vO ˯FҖZI)yf S,'oe,D&mH$5mgBU#_I?ԩNuN$q+ZCdR\qY0@Ы+`]}K5V7c)6M?I׺Hj%h_W9jBe"s_1z~2f˟!j&!@?GPy w9_s13I S`I(y_4峐){F9$+$֋j J8*qۯΞ&T/G=H+{T =t$S46a&:t%t?`SDa!Oe F&̻hiܗ7 95rրJ)w,gO1> ٲcnv6^(㈃{^3 Uïjb[ "1v("hGKqbiw'D ɋ8"mstЅ:|>~HN_8 j;~vskt@1^[;aţjO2(ڄ |r RV}H|?VɊ͇ Y2#ѽGCrTGBȋ#WLJbrMu6F GwF|2cA(08йjoY͆,u񗏱=GWr#g筹LBbK? s,js]n},99: )Xhb {Cº΋p%$K1862}4wT0*y?B*>Z%00@ooY87XDWXZ_,b\gU cKN!3ռ q!@Nm u7]\N-^ܷ}GPIcf$LQa)p}|}~G"SvL՞Xx/c4篼*גVVncM0<.OvIG"D\)\Y8wt(1*Y eUBǧpDv hF{"Z<ŀZ,zLu/lixzw"{7 z )`9ɶVO?N:`JXFk+@IR+!!neXFK/Q5Km-ʓЋՐ!)(Q?C~#Bxe28N0Skl#ߓIE9*`Yfʇ0FwuD>><*>k4Tk)R#l*а_7c NZFl&DT׼`{ '_Nʡ صw#FJZC]}\.#l SD6dwC^.&)tkKg^И;ӑqo^zb P ޭڣ8;:FYS9IRQ@Ǚ\,JߍFsd2>1c9L-X 7P Z bصO em6ۗ7Ug^nī?lMc/$^AK5XR&e̘Kʨ<D<߉ܑ?w /uuǗ*RZjs~"&)QB=F4o kZv:I/Td~FyG\!=b=Ć8CBxǛ!;}xvV7.AJ+e[ҟIʋMlP_w$ WfZ?FiDߪ-́3`0P4~y[ikUsGҍⒼgRrØ+s/1J'< .^rc%1Gr1fq|.ۅ% 0ʹB&lbGf"t>{@/yk0Rze-W‚pK=OY؆Q_-'PN\ڋM, 4h`~5FWEsA/*:茓\E]_cx\t NPV_z-DUs:=I F{F(S^&{#.U# -WM,^+>ѝR2,fN%WԲ{x,3ij[~-~Ѕ|K!.K\ 9;lDb]+`{Nv%7t;bzG 1|cbN<`_>rF)$CB*deWŽ|T<2L,טx-؊b D&znb`ު_EXQ&M4mˋIM{UE߆?lt"B۪؈'+7P$oi%Ū r{pQ6zVJPt|fG)N>P,cM/Bsn6\T8U#Ռ6|w;&+܋sKiCr r};ipY8Xz{d0dxr_XnpH,A4 Om|~̐ӧkX~v}VwtΰJBn_ZM7Az6" ј48qiY*T@}]/0 ctN%Itep|6@ҧިF加qF[iT1kqZ T#aIt _!?3u}.N׳yCwnr=o8NqmH.۾q`"ŭ __C,XSj$TV/}R4k(vw|`h^t˖(&\ fpzLj'сZÕH![4X?<{1"4tm3p= -:oDQx_1;v(t>;BQ~8jeY 3#Kje)#4*'۩\: $ Lgx$쟲Gr_*ؼd"튅>eMk93ӃOJl諩YXnGngƧ'1fufx3 8"=zVROG!Uv='@D7 W&(eNN1@> OTЕh^.f%ڥXA\ˬgX=Z!A@/N_a5z?$Q ls3 "-?*6rYSQϧ0g5hΏ9c^M8B1yų|7!!ba?[@ޛ?01uk-)T‹CYc_)6w9nqW>\,Cfqϓ]rמ?*pݹ#;e.Y˪j(5S.݊ͻ0w!<ҏwܖ,F:Ou+ZE"׽dڎe_} } mB!кMװLzq$W}&'eɋGZvahgNzpo%c=46uAyFBqh[&␝N Iy:gC"#K upɞ[-7N8$ m:6 P%DVYٻߔzI"9i-fo ~QBB}Q"R,`i|qzؙ)ü+ 8 &ԌLqr*mk:VM7B|bK#*f9Ɉ9Ipjݜ}$ Cxsb& f^M ͩ|MXҊ@D 3wz;HG[,Hd**6C?L9uWy}rk"'>,gi 'TB~z)Vrq,(gCv ;W ͝`YM?k4Y+ CT!%Y7 t gtDvx1NLMjI)=' CHȫ;fB1n<趇)g6 ZQrL)>rDV8l[+i #+ ]oh<5z. $qX9f@P#J)*VdF imXUYY-9 U7 lKMӨ.kioBIⒹ{K0ߴ[Y.QtKmV,.=oik`4-bO%%rW3t"Z:lpA^"B&<[` el낋^4MlglŸ_6s=mAjFTܚ)ʤ1t1}a6MBcsfM޻Wҋĵ 㴑 Ŭ {%|xϐmD((J|3IτcSrKe +81-)<ODIyJ! d5Ei68J|8ޤysGdc=-'^R]^ؑvfMWv ($C!h"jy~P<*QL-hi^o4;)cA SK$3/S66Gӆ;_㐛_-E;@;]îj _N}Ԯ>+ ִTJSР4@s20 W ՞L@Cl=‚*US0=*%haGw!a?%4y> 6N0eed˖@BuTjߙS_#qQjGO\0[naBS٪+_ŹIQaYHCE7؆u x@)'o^JYu81Ab'HeFB EP?7CTI4YU{s ߻ P "n\}IwN~j3y2zZ9cHʬ+mcJӦxCxl :}Pd^Ah fAgwa%ZѽoΪ Aufff=J 5#xs!4)5^ 4}.mQǞDf7s+ `$}ѱW>v]XԹAp&oϿ-mG^('W~6KqbT=Ǖ(AЂ_]K \_K63H13N 1+LΧDŽмRvAۊ rIs ux h换LX'[tR/0+¹R.v =TvAƁ%YN.,}lt)H_W\&W L̶>H`IOM*kwD`H=e U}N920tk^A@top< N¨p>;fT~H7bCv1ɏxKp\#]]k?[l~GPg) KoW+]#ښr# JH5&G$ /DLuSi92B (۰V떋LY*D=׉)#(CL3eI;XR[ ѤaXMXL RΒ'NΏDQt6T)Lt?ӭq5|9lICwl"Ӄק+Ί)& <'/{_ [l!.t#JI$$0oص}mixY,|F^۹sK trskx5X`gw7)6u+8("K{T : !aCSbҙj9<0~PFcO [ \};M€8ilK\׉5rp޹,½g`FyxTk흷,ݙAhM$hR\:Z]]#]/he_Qd}"u t#d^0YX ?-/)Het=U@$+Ōuh"`N^La$UD()̹qp$]C[9ȓâ?R1^8Bojp< s/E[CĒkq&#P9lwQV)Lf[g!wL_ae75ʾ}) vR' 7q0_cwN^Vc7:rB.F X#Q鶺0u3 m7 Ԓܽ 0OKڭX  R tc<5S%#kMVQzeYRe5煔C`Zs\jhMWh9b1F 7 BNVE2/rSGә9`Sh/pe\'P{Ji"kG#=N wKw2 YҭCo g}rh3]xf++x| Od3xp`f fl(TSr[_~mŒ#3I9wU@CA,,|3c2FRwcҪj$ #:BBs)oM(0|(tF8ܚ>i‼7NS̈$!gТ^ؕ 4qN.`F?k .*bc$NZ< gtQvhEu_g힜'0°-r=JsH;!~ZQClZ "=j-:춖")JwFBV豘XwFy~WgQ[P<ئSabm,6*p/glSY6/==X˻ǀͳ-qb UgcfaGef&LEvv޴흇 S@Ƅ`ncp-,uy@A<5̻iܑǙ @ z$pЪm,~͚{b!Fm|.a CnAX%VHzC2ʶ)uX!'cS VAfD]r3,)xnxN.G9|WubﲅѫV$v}[@kA%.9clKڮLgenÕLU{3WRk6/fc 035CLo]u d@dz n0ۉIUY?3ū٦u>Wj\1&I>b {u0`l2~'gJW>GZqiK %KH.h`> zTw:$11 d=1l\fST5g}sB&܋ $AH9t AS n#?qzn#FA6+Ձ:L&vӓ-*QQmn0it&,0B!Esb]W$ 6Z4 BS3H75Y ^ T$`v⨺0UfH?h=^K+^7@#`Ic[T1j#˷80'0|ͼšTJx~mz#^>5|Q psߙLkcnb{o;L2"&!z& Mc{aNV:qE*mBCCUǛ[׽F'Lppg,3PËÅ1jn#mDYi<&\ )v7xq<`id4ۮ#vF:f R =1#tjQa 孈q˨7F3zCxV %Bdv smXv"mWLHr#|;bˮxv9BFj.J^h RPMgok+uG%M Ȗ% =6oψS|K@OrC?jY^FJހGI7nӵdޕ( o€I!3M nL!׬%ˏ]KElcEU8wa_/X7D-KV0tҕo~"s&TxUkF 1bRS7]^T>TkL R$-Od7ʚk(v602tø&tꁂWx.cּk|&EpxᶣߜfK /Xqn4]Ts9h|+ڬ:-/3`Q:Ǘ#p#dmd`L utIupw\#IgO;zaKI+ʭ/Zp')k>ymGk39@GyR$_ e a2́.zC9#2,w\k990i %j*[ JN]'.&1+h`=((w%8 %#6-`g9慺X'^PAnG1d;It륉fo&MEe&Xx`/"òj%0Sh~Jm[fN#9< &P0M@!^=Bz(.z9n -6ds֨>f*ã5ha_ zh~!dS):Hhv?QoX8X)du"ЛBp5Lغ+]`sW #jXY'AT v٨Kk^^h&$ۖsئ)q=ˤE؜$4; 䀱3_練6/ǡHۯ)~T"LMscuQ.hk(ԢĀ*Aqxn|4(i[e!_р)~T<3f9k 0rzU}V$jo5pd5cL$l!>.lb(O;Id C tAiQgP2*#f1 o>f-C |%ĨHmH|By !?XNk >4ܡ@Z?wWs͹-3T o|zĔmA>Ӊ믔 ܑY n,LךjK^l0(X]5J-YSN~N5..O8*%'7Ջg9uOXKn~iRG2Dτjmp?U&xfWlԈvP 7*dXw:4'j"uwn S}:(gTt/ mXIܾc TklBdDφwƋ!!ڠ ֽ^\ r=g]_3k#(8 HcVi6Zuv< ԭah#1bzt@(P-K 4 Ri#ǡ)~z((~ ]6g4$?x8Es̽,Wi1 ǝ[)v n#`g%ުYMMUo>>nwПcu=K!f|%%:R(!Y:juLskDkzAxŻ3K7YG&Zz|T>Dؽϝ\_n?! 0ǓҺ1W7mU^#̩YS|}? ذNS?01ΣY6/)~TO*e /k 4gЃVepd"&oȅOLpdlj-Fc"kքZ.F^|b0?'+̭Q1V% ('IT갦Us6<`p-rP9JtR:g^qun7l1z`7C}f.Hr.f|tLq9JS=[=PvSV#[ J!F(Rũ@^ZH>97[I)|R zz{"tذKEw⁩5ԋr 5g]IFaN^̒Xš,d#uʚ `MSѱ /l`ȕ8N#]Ǫ/+go 0+Y@&W Ip d-I$#su0a$)8%铻MT'8e671q%^خi4D@ % ̏xV*08YDlp>9W㫹yT x}hE}NmY{/h%0~73''j937#d͔tvbKhЃe;,!MK{O$M|خfWPA|fb]%NJ[V@1E5Q]pXO~zOUH2JMLx_ϐ%J,,,jb(E8G󕪑:0g˸ T '2I^F1Cs $G @RsJmS/ϊf! gAM}n$$ SKkl鸤)FycpCjaCԷچS2*NMM~%Lcavz+;nVٵDdWJlKuvHz񢹙 d Si{սfsY;4 *>ly 0w4( ΏЭc0[\>˲U? Hl Wi$Ue@;/o P&F%<-`G/gA.\/%长xhzakMco`&ɾ%rdSks՛$pI_-!$;0nT+ǣ!<Ic\N94xJ w `.7X!7(:+S*V7FsݖPNET|7nxJ/Y(FL qh&l5q \|ZIPI If֘&Z14C?w'U B(d7OQ%c=b(yJJeMשm2RJ:Eyq0Q 8%_QpWqa |:1ju$W}>|741cXP& DTK~YWy= &$!HL 1cNޯ+iQ(b*ks@dK='(hR0j0<ն#6&UVf [P{SSLxI8(y-X@Cņhm`HD1W*ٞwKJ@cA.3kZ fB3PBJ~mɛđE |)UE "墮ےAŧANk|slFq B Vi-Gx 4(yւ,7;ůkQEo0!x'!KUn6VN}εA5up T91`0sh1./ K< DJ^MAkϸGp\{F1f>v/Vm8Pl.?a~KN; /-% %'ǖwElˌbxSu+^Tm nI{Q#F'uFzX`_`_YZ[ m?^(i\g5dpKun">Ҡ R蝫^>ɐ!&m+6`P:Ht>KR$|(9Km"!bO{TVYe'AiN{ٖ  jGMF7X+dȑ3nn "~_ċ6k&0z6%ɷf" 0R #;jgLS;V{8E֞ jwi ĝݱ'a^g3 1g-)@d濍`zuC @.> >ڟvQf(){훪 j^E0]QtzGL(Xˤ^_(1SY{d$Mp oʦ9=8 ۆ?˔i+__Nz-kweBWܺny崸p.OK`aT%_<#Ah&46ĉ rs h8A_Qxt>(iL$a8,j)@+, Lޛ;*B$(TvQP~ q;4>e,A /bUB@ڿ#< tz 86Ά,NOU&iS:\acBM+- 'l3YLI'-%YBrvr9(, HFvW{=5s[Yw%'(W S[ ǘx&Bפ cA^W'A-59u2Պ׳1t:S=g& lN܊jpzkD+JotOw&g Vf)x Z̽`L0tlSaJ~E2*si@2\jp޻]X( );?OB8cV'gc됱n9>>7 ٩w/ oWm,fu3]Zh; ZpxXjsJnt)GU-!!~NůZe/Hla++h@dԘ)Ǣ%LFQ/ 2<.LsJ`"3/>ʝFsg8piGgLB*ir>1wW`xckGwY/JGh,ɗI/dF U+'h}FɇnpF^!;ith}a4Oւ ig57ːӎnl/0Zj O],Vg#E&p=rG%+*oM03y"}ԁ(_E$[fih X ct +BWі1LqSɒq*ytZfM e^ݿ'r}jU`2sK}0\>1[=h|HBcJ ZBٴ䟋 [=-nem.g~@vؓ('xrS d=;pE[ų.IS(*4xI\[*/U'cw 02 û: Xq*WCS"%8m.SѶ6f[ݵ-8~j}sj^;DD(E 2R't2  ͑F@CRKib2yU&IBgN@Z7;ƫ L ZŢpiK.X۳?.k+roܫ TldA\vUڜ \ok`xdQ|]inEK}hvoĦ"*g B42#2+RtTEf݃w(9k:Cհ,3^ukAaX^U"K]aMBRߐDoy4Zީ82o+D`L0?@ ի6i,eMȓx`> kƸ8)Xô ,$%yM*.s]9КIW:o$L6ӽ ꃤM U\z$s{?+ie^Kה~n}?#A{YtbFPӑ9ТwbgAU36QR ȈfVӹ֊y_ǩ:߹]TZ~ԑا"F'Vm֔k/ lI΋B' ,O糧= 0V]tv<9BJPVn2/JHҗ>"4^TžmsyߐV9UWF! 6\\4܇ 5c3$y?j`KQ*{)!8(.}N 1sOlBGD$U3A] q }EpU+D'.lPþ)9 "5, up0TGOa+]fWy6}t7[HڵV/~9ҍXgLL}sJWokc˽ fW+I;Ң*Q^mOgQZtWzZ\â% ݵa_z^GV5v6j&@7r j3X ԂӐ+cpkwcBneE@H{.@Jۏ#d@xf`4|>.94in=gkAglmAV'gL/;[Sm傇GEΡVEZL〪|ݝO™g>HÙN>`^]?yۀ3d85WmRPo]h;,6dinEtke 8XU.`&Ml4 )5f!i #Z9,,}[}qrv\tfmY!n>Uo1U/?j 0JOU9 u6W)slyQ ,c 3Wn[KW w3@}X۹s ]'v^ܩiT4g`5 7mέmGwD @v1,bjW)DI&v ISy4g8OJiOp0F/e." |v^gY(*r[)' .Z Ʌlp:{n,(BK'dh?y44R)LvMe٭x#=3'*^faKCζ &ygR$#hJ7-9]F=P6ALF=Ih9f9"D3(f!-HO= $fY obeGjt0C7Qq3t`oQ~,aۈ4kB/Ji17 _c 뻚V8@_ )?7i8bsMLEj`׀4vKxMB[L 2N@R8<7vu*n>Ja"l 4FJC'D/Q[gسAN2. j݌Dw%6Av%VM(ni`;vIqw(" M⅑`VWndC$d?M@ QÎ~S9=V$1&2_ b<]K$ b5|pMW"eqMF(ohADT`7͘16%X:I-PZ.^&*'^ZŪ~뫶8[P1(B5{AkG-|Og?BxpCUtQ/@R)]M?H}}ޘxP&2jH +I+0#x7{ [)\=I#x4H``2jYx%JO8B1ڇ7}#k1ɸ(SKsL5Sۤ2"iT[Ժ:hIAj KJe'2V%nT`_A!3BS<>1;dl_hhLI!ILj$̛6='th# h/-s/3'^L,E_Х1B2j2ݔ=|wf ZI8qLbl}`?ŵGl:[[y.ncv :6nIDpn{{ Tq: \3f0"5\sH]s_=a b 6V)cKL\#їpX%7  1N› ?F+?>!HG) Pk85%q |`t1/7k Ʀя֎ɳ+Y(}c.p64ݾu>7eMݖv>ZBFMٯZ= 4)8x-5W@9_VԙHf#=~VI>K~ZV߶K'Itx=5 ΚAuv/.8?.u tE3uPvY|WGVqܹL2*XN4<۬|oU6eMhGrO.zjpu0Y2}Q@ӻsW~zC4ys@p^;4&srLw,J87?4,l\UPb2rp$h-cjD=jf˨f! uC> Y,x af_qoFm;puWߓ3+`}Q,[!Q:C8VVg&FkZI9U+XY#ճII'hͼAV"o>ږX=u#|"8qA5E(?Wo6@ X?-OT0%'wE?xXP/QǍ[Z;`D>*sx26Y2nԿ78ї3UgaM?Qz2̽FhSbsz,\WBޛO`'Պ˕anֵie*时V)z鈥A&0aL.\'!)(f_KnTA!%вeq,n'84>`x 1hZbFXlqļs4w^{8lE)@nxB2w`h80kc&89 zXLʳvGif}k{$1H3uWn^t[wW{ͼR͊+ PneL:UhNen[kMY]5Om޻R9A^|qIꄨ5XKM>i5/M~Ygw~kv5֌7@4_? T i{OZBiHn؜!s 0enJEfU#{c҅Ju~n14]xNbѬW~BntÁA{Y.E;Ƈrn[襍x0ljJ˅gHr5! ,e~#D #Tp2}U/eH2kfaT`Hl3R9a Gz}N=EF"_yzr{1?>6d]aKn#,TFHw9 }IL2q"ޠ`Γ&s'dtAD"Y ZV5W_9ZϜ @jk̈_4Zv iJ\A7b]ջ8Z0Dtqڀ_ѴPwZ?W7KKdb?);"卺@6 Y_鳚{[rϼNw}> B ȉ [?P3B^)§v>=`jqb?n/nSaA&V^">=-I~B;eE0("#ڲ4ƺ;:4 m f1m_F?Oy#1(-%~ax{?w!v# Nϛc@ZQGO` /xu'!9M,Tz:C0'nky?G0ӏ/^L+Qe +9Vc--3 vp0iR]m ֋bw&%7g#^zI=Liyg=N6wSfK:*䱗7zb'kznn0Nr9 rk.`?>W$w9~/pl([+Iŭt2]iwp\G#guwm*Ck_b#bC@neyIt8ƜdB'q M6_)W xIׄΈoG԰1 HDd ={фlu89)Tbꥌ[`O;^oPՇD/d 5jzObȦ!$0YJj7} ,l L[iTKznoeklG֖Kn,qFyV[M&:q>f]x߃WPd3E/> 8Fr/!Em_h~XM72x^XupM]JwҼs`{l#wb!hÚelK&!3?BK`f5wb<+w1\SۨB,WZ)61 /NQ9 _7jF0$/ 7S Vw"}Sqd3t? ʵ.AR Z[@XZQ4OcItAPiSm;vq3fI{uCά=j N3H◗c$cl( (^%v5 RsAI!ybel=ȔVcxv[X*BLק!P\A|b ܷ#uk>߫G!Pyk~ZĆy Y0lBW ֡W{5˭$Uõm~m3CAUB) ʛjɩ_ĭpM N#sSz7tY6MgxF;g߁ Z 5U!>=!n1$k➬jpd~Fp$qM5鄀pgщ⨣zY)fA!/XniXNһ%lưtYOp^7l:aߛ( SLByJ<3ot,%eX!E\)s)OM!qSirֹGFkr<?r_3G[1@w ߤ-~ΜAa\Sf~ A(GX,Lܕtt^vFskH_(H3͎ȮMLfR%f20urI_{ ."n44v::r>| CLcfiԲS@-[]6gAF1U oc@ʃxÕ:0e W/2kYR72?A'$pU\?dUɠԥkUcl.S=,`Ɛ 9Ҭ%1BNscKYu'/o]#FIbsr*#e@.p,2zuȴIpʊFTK[?Ϊ}6] _:CvXKގšFj0(wRc[rײ)+vzGNSb/W=]8H?W~&>P< c1@3seahYKnQd*LI%nwTx}U dX@I# O4<+?U;aohRKਟ>lਨL5M5 Jb {@ªp0j#)w/#r*Hb##3RH-g/8)bt>|:EE=b< oRfimk۫9Z|a$a$%bm h)ʌOʿ\.n3 yqKnGt-(XA_ %O0_L7R5qR:Ro]`{jc>?fWX+ 7,Y:KM\~4AX3ʄd/нU@7##`+*N<(j.=fN3%7JC zg/av!;YWkcvV ֲ=ZMBje=IwıW"ג/w pJxZkV|BE]L]ŧYT޷ {Co;fw` Be[pYgvNGx9/J^%.K:J{ ivsİA4?ty*1&ĤS0wU8/AV,4YIP{ṷK^kB(^D^y"Ў wCl&!/t4?Q2МlFˆ5vڌLMeJ! cs"O/kkCy w$hxKbȉMgKeZV 8)Ommhn`ey(ŸN #Vdq(3{~ Uz:^enu[."fcl Ԉ]> 8@ў~5O3H | (ZC pcogwGL"3;Ϙ5J]_yV~hs"đd[w̳sBG;#/21 ^|3Jyj\K_BGځwYZS0D/y|f0Eg`@^黼6-QL ʃOFE;qvCqS=ހ jW*CoyB2=H|@wAJA`t梯 Nie\Xj^ '¥uګk,"wdglYEk':n5pS+yF4(]+ 8o&pȶ_,"hM"Q0BggĦ-2|@c,VJ,"4)ƞ$5I]1'惚-eny$imv}EŬ 3o^yLT|/d]d?+ad3AЈ3// k47;utsm & _q/.g}EfP`F)5AoA e'J(q*dgdC% ˂<\|5\'c>npl̨Rp*C.hm݂ $SW V}3ǥ6Tԣ~.b4x`Tz1Nw CuIa3~1cLFdQd\j#U ZϪL= _&VqD0Y5Ѥ8Bp9׃6eߊH6\qՄ5[$DK- |_ɽ¬]S' xrjϋ M %$z!o<H}_ɝƹ6iMMpǒ\ӳC2El ٨. Z}ŅoyA~ l~g[!&oBTg(IȄDT߼T nٻm~̖s+uU|7;r[)嵻g dVcЮ| 0TheROdޓk>۝1{a ŋj1ySD@CG@o%wNr:!tOE1@%N\2wT`w'/C»b2T?Jf Zq쩰н׽ T%W ݅kpV\)SHɟqzu~'B2_SQ1i?=HMVjR.[!v<8]>P}#|=ǥTm+&RU$Hnx+V`P9k"S@C T.eL@csC1;9C߲x vl,8Pl3nJwGEWimClF7!Ɠ>LXP3͓)o7d ʚPо'NVA7 vM b/T؝"uhJYv():g}Q_{ * o.eƞ2h>%r{UH@vIQ rď2$d[,3(*Ux+r/ 'Ct̿yQ%x_C!!aIۊ{ :Z1O$ׂjHK/%C&6Cdz=ްCwbH냘Ag {-}}1%%g+ˎ5xaә~-S^1%X(:ڭptȀ(Ƅ7͗$QŝIN8ڦ\7?'M2HA iKtfNwڞv %߰x{kSpd9P{o^ []HQ0)/9XRm_Nǒaԝ1 /h_\5UcJ[`v&[ʭ*"ddƻ fǮIhYa<(IuîzX-`9NN}9&(!CK;0 fz=-c+7oluq5]˓Q`Tucэ|_r a7`='Ou%ҟA:p $e=vS?;W~l8c3̨k LvlZJgϳB 0A@  啧r@>[;CM8xpזT+a'Cv(0dž1@rS;yd y=!ܨͭN bRU.`q :ʕ!~PqW0 g|H5Į 3BӚHsq#OZڶf:ށ$H`|6Z,)yMi*.Jp`>T9i(|,پ.V&Lt+uҦĨ+]CSi}8TZ/@8%|zG&0KH)kP,sFR咫Պ 6NWQ3;BSj% ga'x{MdQ^p;a_s;+_hrxl+u`먝\lLjYW>맆D$u$,b/!3Lsb{<%YR,+Ei1׈O_oǪw y{Xm 5"D>mиX#u.2)ߨv٢1I^HKVb+x@tz$ԲߩsʯEB :QlG#6lOw99=dBf.-6S&=-dnO|rfXTZDcÌcFag( "$ X,2*T9zFa)6T#]*-9b+}[bSv'J4-Ip {XOZZ+ۘ 1KV8[Z>i܎gc_ c}{#Z yT7gS>jk)\rV:wa=2l[;Mip^F<%`:d< 8w%] |K8d 'TݾXHmVK׻ĸJ߬JՄ?:`hV6eō:lofEU8H\@Q> &I_t,b(5L'V8N#gԣǤR"#3<]z }A7mƒp C74\@}BzOGO=gAM~+Qdž ؃UĘីgh #oA?a>kW8IIdK= :UCr~BPy'~)-F9i%Ng*F!%+桎- sAdDslۂPi% =c9^^i1+4+ǩlB ν j(uyǥpe{-kծ hQkWN(fv"z} w';/G`24nzɇ9Z0PU;ǹFM]۝*y8>9Ӕͻvcs*3SVϖ.i v zBC!VOpg (^6W*c oͧ H=a1h9Xv-IZ0,,5|K'wpд9ub1ԠYFؠc{ӎ(ȫWKhJ[`t|5x~3[a9v ͓^2b}q^"4M*hQ:U~^HG1Wv*o j׏CɾW QnP(@DEBRP ZrIY[Fwn<( !]7QAߖ DhXi zSz#]5^~!wp!^Dh#|~J*G/ ;I hbJ8}IXj^ض j41qtw~&vAh?hE;iT>{mIwyY2|{BAÚ7{zk+nJ䖎PP'Z{ILt}#QWj^{*=F(@/IJ,Edձ\|'D&{;';(14 /6:Ƅ `79&}k_tQ3$| lʎn(߼Qvit p ʺ&sלyNU:LI:SX~>7F&Cvx3"O$6P8i {FR`XҢ2lwZTnTT]XQ ]=!9q79d\ԧ g&B8Kfb4r×8ƳK t/ŻԒz U1Q`+'˧iWޥvFˁj]n1)Rf0_m*Utw{ xjD<Ͱ:^!/ĎgAGO,$0WD$yUȢO '(#Ao<t`w8L8` _2vw~bK]:Gԣ m7rL?8=2^0cGfuj1i qdZ-X;*&JXXX S{LЍdA !$(O?F;`W<Rݺ( m]U =S/x e:γhAe>`n*.MJиZã^y >Sq Ƭ Rn%.aBʚ8i2 *8Wعk*O̰*&%hჲQ\?RS%>LjܲP_JzOէmhd+tT/7Q?!) +bvw(Z(p?nN&\J ŪFʰ*_HtK/ڔ8͏0>MFxÈD_~ p]/Thr+F[j@yÂͭveFL">r' 58Ʊ\N?BH0j*"Pn~Ll+s ֚$Sdݨ^^(YBq,$r&k QhZH‡ZhX6<nx}gL|SgqD i`I7= 2t)~gxd<(:L^| [J?A0)堀쩱2 {İ'HrN28/!r/EQ1 :#b>NM]%*g L)+Dq(::Mfs,};I!R Q4׽=hqZn*UԸ0f${R\uiR$LM}i󮳆Xa:ש LY8+BR|0>ӊhݒ /{ |n X -M JVM(M@ 9P)ߞFhM'j[֍W1Bޒҩp kstύ;K: ֻ`.IוvP!6(f4I}pѢk0?Ԫ<~'q֢&Ec,I#Ȋ9ٲ]z%M5G9",:ި/I~Fiq@!zN AMn~Rɽtմ]"b*ݫm߻CAf⌗?0NP)c  ~eq ;*2x! +e.5 oN_d # a:WȣBt+H23F zDڬHD"t8vJ[%mAƔ2SeHb_%ؚW3>y>RUإl !Ma` % h%^BKo]64RִvY-eh|SLj g z&RmVGb[٠_q9=GJ`4 / Iڵb8 Mx?#W1si |eX c VհOh".}L@C)rZ3M*@sh39šs|$G4Zl9m7/Cs;5l!cbiT?]>8C}=".K$kL<:l`zyDW!+Ǔ5|5AYטK0Ht*ҺL3ςuXh$v1Z)0+a ˢh S W,ǓvOuE]"? i- ^z"w2s6׋ G /zAB&ma~A,&C;jw*<&{-ikd^OnRkB / _#IJm?뒲OG?Ӎ8 _!2r"nk ;w=WFd}ֿzqzr3tSѫ@eզ2`5#lE6=OgSa& :A >^|'E#Qէ^~H+؞ƕʥ)g#=Ha=#C4̝9/ղX9q}@Momy'F1x7^jJT&ܮM#ƊY 9|#7IH+30[>cke<߻d}*,{O=t,R%Gh0ނo kEV4OnMՋ\c:A%8SPK $nёm":욀)g@ 2M,x5Uc-`BT$+1GkŌQCگ9@\]Q+ amV[ņ]sBoxSK)R6O631C6j1v5Yq,ŨVq%k6ʬd4,RzrsS_F@9"$-:iQt@`X#+PnNÑx0X-SNV㲇$Ur 9g0vzKO+:^Uw؀TrS#F仔ޭxaqln5&Ap?Fwyh?e+uO_Mt˜P}4ad{Y܃(\BĦu^suD rnvjZcd!-s8:s5U)os& +;{KVJjN,EGlI/qM"je"tFݵP؏c+f!dڤh#N8- Ž7qнj:e,n |_ƽs駽T-{DC*. P-6RGKȹqh԰p o Y?dF/E!a֑*7\hk6Od'8lAߨ`@~'Dj辌^CNPS fJ#"Yv0޷#I^80>tDvwatxB$k񧨨#1VfӤ$1(\ W.M txHg"`|$#{Ae>z(B/?ZthGv:CF6. (b/ӕ'L )`b 0PDշD(u%PT[Jj84PBLd4ѭO+*+|*h'N$)?OrS@_Tn*쉧)fm:#`? u^Az WɃzWnDIʵtFd`w'wP թ_Sx|UoPiS!V%-˟Ox]ÍMQ;)ܯgPf:.e2.|Кn /h˚M!a(R,7<};CH7}UqGr;`^T^A.j9P]<wy,#J~wl9YP5LdcO!{XыX~qwtFl¬;wz_ X1ȨC9 JMg!),tv_SlB0߭Fr.vIvBq y0c4j~U\̢ U ƚ}&Ly]kt$wwhQqxV{X^ r()fNI2^FekMHR+V 8NQ{{f!I8$1lw5}ϜlF+8l%sK|&!<ٲ% ~=5P}<^r!!"mHS ^u"ޚHX įEc9U?%N1@hwV1>W-VQY'䥎$MprEh ؽêyBNfTy thztb?(A@FQYn) z`]fm!b'J䞷.X )h- j4owFmax^v!} .9he+#h#x")kGUo~s[*1Gg[C.@}(A^nC3]d̤;EppzX[^&a ߄EwΦp+u1.?N*Zɠ.EbiΝ8h*!f)B 0ԷB6fIQ,_A9d_^#|pb炣|c"=`GW23 ~w'SfuTnmϧ2S87 D#qo}Y6 L:-@B]cQ-  w k)ɾF`trр;xҁ<̶'A{Sp*⻮r@zR7v4nh5=]RSϯS2h%UƮzm[plU &P^|Rm5 D&J,™6XFL_y}DC=,W3Z~N JS*@;ݶ! lES3-e8o,cGc?)ʹöu A%Oi!s:!>[Nfz5lNSHeřDlV0zRk떅b~ H>sqUˇՃ1KalJx\vf\KM>RAS3F>$08QeёF#Vve%wF BiqN f<eAy>^$Hya§Nv8Jb)]M- cQ(= s1 fA1 㕻ÚHg'lRQ}q?\k(/rne<jmn,|hqd?M"ꛚk%%T$ Itt)'DclBуn&}p.G/KMD8-LE@0ї+|)[aW)g L۞(F$bG_WfzƽE+ cW5U?ne"J\)0NTKn-B30A_2[ەZ4KMuMm nXs֧n;[q% /%=.?M<ȱy&}t 9fmglMǙ*z?:{b?:9BCľςXdR-]4p!tu*P BC(IiH)"^ӽ".GO'ߘѴD>ט1'lq o8ꋥv+Yidͺ].Q)& a69bIu) h/0wZ w#/vy9RR\G|/u8.4P%sPpW84݈m2<%:=yµXȎڙHFqxGk IHےbI,%+k'g@ ^UlRݞW#?:ӎ|9Bu/6ci׹~xk!TerPᓼOvҸtz_Ja㶆R0$U[ #1+ẀT}1d΄SM'5)G1%61h(Ys M9Uٿ\Fr%c9g.<[\z> <05U/IJf"{I_Z w1>[.O=djL:ԅ!]D$RB(h"?3bJHla}$, 6ey/81u%&9=./Or4 & G'A\"?alSgT @A:y6l?/ w^Gzl゚r=klT!iGirzYЋA>ߴx;"v۩,ͩ~)j*ɢ jޖkW.peӚwq٘6JjA|1s`5iZգ|L{ή:}J _zmp|!W\ͫ-uE ^gK} XA¼K`*6!z 甸T^MkDANu^$^(/! S6f]ϛT'eh\Є^ d#i^|ЏKǽ:#=0{u 56~Fk 7uwrm\$* 1tفSa-hm^@#oƝnƴ.'9O{)G ҖI'HA质0V'1m>!"vW{Bzr]}T涙K$Ө,f~5` q~0DbI\u4=at$=vL!q kϚ2 虬uo .ٚcLC/WvԃT<+~ #7*^U^v!}sAs`3yҾ)!4֤X+݈u)3{]$ 4)$⧈.Zo̦862h\۟[gB)#?%0!xn'(ͽn ivL5uݰ-n:=Z]:m!FuoJ4j+cnAiG/z6NpzX\ƹz/VRH N.Meivj_iO l{ζHw GYѐٯo乽sڶ,,g"K-d#d=$VEJuB~Pʛ6E{ġysф%F4ujt$B2k|*F'--TZO[*U9l.1x+O~Dz,~>u(KkoE7TEL^\ZAWS Z]KouI:R0`j4w*1hۘم7 ,;Jʤ86^rtUP->  7OY٪#",jc*2_0`֧칄/ۚ,'J%kiBR( _VjsLׁF|+О78X63U|]56Gͣk7d%N%_ !#J޶H!2{'_V!1>1DWia@fF qi; OMAC6K%EV)@)L=w kx9GՅLH GuMv"5p𐔃AkT]*ۇ{6OȍlXHqag>)qnSSUc0]Grqc}<{B++5PK ֳZ+ZŃ`qQ+@\}h>Y VMr尫g 0~7.n@ n` .8w!R4:Pm}A1堐w\oZ$Q~Xab{~{~1QN|݊|JOE0xM޻xB:` ^~y(xgs\k5sN؊[\N].me}p[(ѡAdh;?|D; <8X񼾕;12ɅzF%2+/6O.*-Ame{0U}~Ѡ2HȠۀG\NvzMz]O ѓ$krH(ƢiCoE^EB'Mͷ_TYww%01-]y ̲⋰ 8Ě'1 b6ߕdI.#\44* n&e%L/ܭJIkaͪ&Y *PRX\tn1^K, <7a/Ic,3biBl($(RHNرف[nke&5wAID ⏦Ջךf}a AeKTV!L~AZb`7"894=A9te.flCP ?{BvDg`S?/ Xyki\VCC.i7~\2ddfEOh*&0&U/C~yb@ G;BFdā0Kya{̂8oz@a٨yTlb4ěp&`NS\BJCxް񎆑<. ؒh`d4b<i'(D`cICIkӷk[񐵽,P;\Cx=cbM.[<dXUr<ȷ/SU@2  HZ{;4t6mFghW^ fl%IMN! eI vz tz);H*iLoK>9*6.y8<54+4P(4$@q8ȭ7a?B=:&(cĘLKσ*m2ʕ%)13iYQTuD;-Re? c1溽W/8$\$\ *SS !1@[?˔s=2ܝ0j֔eE'%! b)Ss2(avM?y|FB`F<C%Vȉo\tye_܏ST/:V5 m()]6H>$FNM^t=3&Z6]"ZNiBpbFɭ.\kgvKD$ۦX4!]=4Jq M!!h+.z2dpW5 5(S֡nS3a@s(QёGq vW"xVTYOK5}u;F-KI_8֤S)*rٖȃaq"[RZUX ѕ}Ї p!iϱ➹k/!% 8\/]ECLF/oKŒ8|hKn8zfAwv'!gSvH ު`!A4Bɜ/&|( L8?ڵa=OOk2Ꮷ)NzIu@L^ ꈡ=R>k9wUM@!Psy>bΊz2Ƒ7sm_>Jpu$e 4jvǛf߆QVE;9Ĉ>:HtOԇ]->[NtU`tΒn:=k?doA#l {^[ 9lG =9P-O\+ %rv}hE'٪&2? ̫iz2OQb ;b \4D3zUF(pTn1QQwUqp-"s5-N 3}/pU؀A-U{q3F'IOne,pٟxPIޱu0Q phѾ.7 q1SvHP7:=(C~+t~V#LM*+Wf{hvnE] l2Q*4O|TwQ*N-M9VGEAmc(̑@y>[Sٟ+[8jxA27YM$zǶ1B#adAlȇ*UZ; )u@ 5Za\ZUeiU7 i'ŞM̋ń*m[E6I(ݜ1(Nc$:0K(gD"Ds+LM$VQo\A6Ğ*w PijJ-p_Mws%ʺ îY$c-mb?2=K_Zz5Vk MQ wG^Cb(o6lky+RqY-O:bd kǧZmp]7х5`ZE1P/>$2;>5Y6ME_)x۽iɒ:r*ݯRuOqVo"#lJȁJ~zy6O`kvg:c4MZ ]D;^W\GS=+sRBm#|HA=m=+V7[ kՀ8@֐p^ZQSq t#,%r&*Y`fA`, ),lf8н]rZ!-Qc(kz}V+3p>Ѥqm8;=lWd_CBi %1X־|гRI<Y2Է1aK6/BOvd)wBPn Kt&ÿD J C2UA#o,5 ͹Ic\~QeàzZH5jRDwNDX,v?\=F]'3^Rw!Ԇ)-37)k]L2AX6|[&ۊX*@Sb֞Ŵ@ɴ06'K"6NqEP q[bާDt%ui$p3,̲rn[Lìh1{ &Q9Y31A0k%3 (E%d0ZNZM0$o)'viZ3t:v)ADv.J*s5X St~;"DT*,0AG<_O5 >)ݣWJ(q%/"`pÌ4A[E=.xh&Y1n.1k$e WtLr7M|061QG!OME[海t( MaQw`'n,. < f'k]J=~2, BSz]lt[su2>:KXɻc:OHK%%Ń/YG8[Zu$_s'tYU+bKw'Na>X>eW/"^qI/2ΖMT%d9HR07 ZiIF0KP:uVz?.EXAkx ;,W+QUQKW+?6/Y"}~av~!>7jH|x2S{^cS,cK4`_ sgh9]BJ a 0YCc4EB34Dv?GxmճT5Q^6ELE^߼c0\)Q+yR8(JG)[Yi}4,l鰥4w8`e>_U#/ic^KU_QqlpoTn!UT¨y\$lDV*F0yĄEFU*|nNΠ+FAYrWdƒ^[ J&v@Q.T2L(ACxsTnig}MaEkSœ'  ZvBv=W2gc&^d; Ir[965Z6XnG[m-mFYl$rt"sq*PWM_xI  *f0>o}ܒpCx672mDȽ{>e] O9b!NЪvD\SƋ :ż]4jc$]Ika}x9i3}Y]Np:+|Z%}|^EtҗNDL⸓pUyQǡ3pvk}(Q7xgndJ%!^M S͒%_· ;K"͗iDZ,Xk܆HP8[=t;N+3!|bmpOk6yh3TR9Ľ:j#ծ12.5K}$ga{ӾtKcm]dI-kiUx)(ktAo{`@ }+.رHߜ(c^X9l+w~{eP I>Nv~-k%)Eď&8}j߈#ppde5P.M 'wyZR[5 ǎ[&8-f5\|Ρ RU_C=ZEQPH6̯uspҵr~E%esj)GO$ 67,^>#PDN?RzG^+>t}zj :X" >[`ʄgKpkx'e%@*=!~nsx8`m#SDI 0PEaԝ!2V A#7jĐ}ooB_8C-p C 8ϊc۾$熻.96`AK3l͐Q]EBr+Tq)D{ҒAS.u֒u˧%O$8Z`֠r;ǐ4ۻ?R:Y*gUI26!ӐxU+ &zW򗌄(T3u1rT䳇*P†ݚx&f2\Yj(φl?w*uԢcJsoD`Qj IJ˘ =홫֓6 OwBsW胾ϴ5 QRA(l[(FALz9~l(n}%7))xgvf ǾcYB$=Qʨo_Y^i({IlK&!߻ӝj4K:1u]dV3e ܶ\*(m:̸aځۤ4LΚ:q+SP};s¥/W#棪-L8qr"+^s -\5(UwT.dbv1SG53 d^eQ8bҞnc`&`Y\\ħcco GꁱGp0ƀS GV\dGmACXf:>@`--Py']F@ԵkEʡ'|re7te^?9[b8eRq҃KG :um..@3q%άp@}5z9$H ΄_V͡@FF4<]Uơ&t I6^>0B 5 fj^"92^;TAviWЗI-yikZiLsUf_P|"FoqYVW&:nsk~Nr8-XpDo(VW[9<A'|M Z1'a&[s˭/(p2FD6,R.9_ {̤qh(w{?rXnqzq @{mijz}~f6L{qu(|Hv^]HLZ`n G vsOV͎˺}i۰zHfrtbnYQrEHu 3e<38_ϋT[c/v'rǢ]׈WDnuaUT 8>(p3+z)~1 6Q@pQ?Lc0ao='}*c)C}C] #*!n)ڋ%D6qZ+KиNC 7.&Zb\o$ w>y> 1+Fq!U__ɲPeZ%2DGR: >vD-NmԦY LI u8ЫXiFOʠ ӎ T60Tk_Gȕ7^rk#Sq»y'э; {W3_z<ř+QDxj9zTĈ OVkގ|!]-yEUN@ .h- aDRh =wNv!˛tyKY""R6㚮 F=͋'-U|86P:ٱgS"s{KJӤ<^h˒cu/תg9 )|u07.] Q&43CÉ3.,z5LI_N B c|:"|U[-욫#nnEn<4Dr Tȡp@\!%vi=n  M,Ll T 6&?/zPbޅ 'O"UuM[x!ٙŕ/i‘6+4ySkQc2ؕ3G'WkYzrVB{Ƣٮ%NfX5/҃{j,uuS ]N['m"@ @}{o߈P;lMq"KV.(Ȣ 0B0U ;}Of;.\浶!k (EP_ G/w9:a)1…nGhv|`(TV!3,eAp^/’2Z@~̻!\020⬵jDeqkWo̙wih@(:aA-ů׋9Śg6< )KEF=(Â@kjP  ~jxH0H*o/C(~}]TğNMuDAϹ.-.IL 1%/~ oeԒ}߽C9\)v0tƥ|1/ބ[9h=\3Ya5;Cj" p.si? ULQy% ޻#L:`mUC1u$Ql8?'W!x4?bAJݑt(D}}^P7Q&fCHdOwbnn^<(F]WNO aQ%WOD|\j,Z4W1I$!gXSXKPҒM^=:f0 {$1Ȍe8u_eJ'8r i0N9v҄R/bUJ~D#bi@v/1_Abh2]ec7]*d"y2.pn}4m b?x?,I7o<aEG$`~RgGR)?ccx]0~ ]1Fz \ Uh@fW hFv'vaiV`KXd̫oD)SҰ 7E^oRMKFup\VcyK1/|ηYRKl.wg4R3Y<1_2ZҎ~*z+vbШN*v %_hIO"hf d:OlQ 8M\^Ȥd<ؖRSf"C0jzHk',ϭ.cS> ZW59(W;q%UT#•y`U Z>m]{ˮk|0H蝰0_oX+0㌤` b1&pIWMe}*7T9v逭?¹ᙥMCw^̭>] :T3x]b5- „XgŨomae*qsnI6 %`./]mbT:W+i<]@9wasQsOk`,lD\s* D_619Ob)!| UA!~9zײnۗaH*9LhBZS_QPE"(LCl ր78]X14E y$DnܥH )Ť&Fm<-Ǔ/XO&=u^ 40}AV۾ʅ%qg%4'QEЄ`ꥋ1k c  ޢN"?E_org=oSMeύؖP3v_H}q{_إݕ~??VџN. Zf sbj @`f&/ƢsyHBF,WNg!bH5g*G}zqrc DP|nŦrQDH_Ja1_"Y|@<aΣd&}Mk"Nn& K]`$rPSBP&9j|aۚ. 5r$ mαГ҇oǟe{0lA|+eJBBQXfٓ !m(&vH'ÊNV&iI޴0OxH٘2^?LNWl 9F\{Jpyg*13d:⢢Q=rnGGBkQu)e?& q,6d7h]u),Eu|$p[|~*^縵:P'ùrԘw҇<^o/~0c+ݿ³ U~&ԊK/;4+T05"}n6s$Y n:>FھG6K{iGmTG)U:Exvh-Y8, P| XHn'KM0VX#1^u˖r`r:URI;Mऍ*'2WXNa[;V\#G3 )"Gh1ғ8l$Ȁj($;/d"v} Kx&OJ15^ ".9)yW*GSRyj.s}} g#xd!] %$PRy_v )FQE8>WDNC._:ǧ9;Nq5^$)BVc"mUZk+ƂKl騂Z奰^-RY.I YY)7 ՄSt/+ЉZ یagȾr~`j ѿ+H}71W3Qe_כj+W`Y/j6~c26?ګ 0_ݥmD`h0/sibyڳFaF>O7{ܖL8fǮ2n` duWG\^NnOy&&*B*z`~]o`3&t/fi U!sY^pVjvRӘ!`-C@‰i=lh6i[9 $U3Ox/ғo6aۆ/[IUz@ ѐAJv6xqBau[Ȧ̵D^&MCDu#,@_$yjoW9H,kw$_(PSt X :-ԓOI#jH"ӗ7O]ˢʺH@@f-l KHI`is :0ocւf{L[Zo AoUnsVJC{#Sİw E&AR,&g$<>mReиU_OxrFEJM>mӠS'Sx귻2)˛Y'0) ޔ^1_?j^K 'wG *؄)H@Z'bod2=`oVҸ^tRuWVOsaH:8o޳ Pu? C#/:{%N|єx3/4O ;Y?^)Ŧ'mcmY\( 6@a%3?7-w::$? dve|L7V@x$&sY\J`PuHi>6I\Xp%Dg'Or&ɮy9Y&;b\^ ׏ndרbO,0lɸmQ?\"+Z6 Ҿ3k zr11G*vmEW4~b#L{j|&U '*q J \@>D2_a`2&pte _(B579HlR/Wq_t$R?A 0PL7ghi):?Xc39{f3#q;fEy<%$٩ݝjYbgx'Ul0K~50 4WmۡL0IdJw{C_XTg uJ( 㒤}::q|f+6DY;CQ֠;Wk0ڑy"y7ʛ,|gYneHUNe&?%IM7;@fsy{F-OOd8vڒ[Sk*َu] 'mۤwwi6]DxE]jw&aa"HG=o) g 8OMdt:{[zA !)8Ȉueu:7dyDᎷהcb#eo>lxh)ZC0+.-|PKo45@wvNiO{GSLwy1A)4*U]|[Օgaja>ާHyP ދ;ܙn[u(?WF`pֵY!;Aa@dk)Ei*1d/Xͧxuh66s_ct,#,5P/Y#'U- pĸz]#:E?H -1*tT><;#C4.-MrFa}}‰2B/ ⪒rf(hN<ϝ}jZ9o*?3+rkHfv`U/QAW'vz >d8#thu(YH'/;ViՈm>rj}׺A^,֌m ֢2s~^VC h`_9n="HZyTΤ'I;%;Rߑk(eRWQu$tMK( *Sۜ7/=(eި?5mLJ쿃BR[6LM/ЪQ!$%AB}MAc EWRBzS&0s=UTV\'oDD@í|D)DgC~8LjZ69ٔ7fASjyڣ?:~^KrUz(* 7 el @\,E'i6gPOm.?Yl`niXvL D/򧈹!HgV³'xӨ$_)m~xߔkIXFwH}{bA5˳֙<&3sTj|HKAʣIUbA]Wn)Nx//u&ۆ=}p}O P!X \*O@ /; n|Ѽ2~h;ܢU6tjNj;!iAl`0ܻm3rk+`ثr\ R8k:A%M)K JvIF+UOgT# ZуSb|4FH|RNS fũƅaxVSq! >u5S^-I0`S9+ԣ?ͯE-hyjƬԿ Svv3ХDu}y1B#vԲ2h Qqn'^!0_TL+[ )!t`;Wk"3ZбHkⰨkt\y3B}zxVmkkdx!q)գpX?fI֓K2x<'dTa[_ Y-liޓcT=D@8s]-o;-{|)4tm7ؤ|CFsg6߶ 4"w(~![h~)dcB Su+a 7F^kq۹k/1n[q! 8JS.gT3@4Ve2|Iz&Ml1SyEgR(NSNJcqˏ c 8D/뺣m. +q3 ]|ջ D K| 4 Ege ~WJC! $ ]ŖP45ιS=dBͫΟ8*=;"nD0,Y5GMX? Aw8y←֦fcSOV <{m.6hL7Il \VrWR4ڋYM/?HY 5P$%~k#6T<6+OpxF &95BCbiA,x (6}8KR?їdNJ@f5`߆S0u줪0Cͣ5}i*8PP /+ɆZԸvz؉t;{02!f%y9wdvE6V_ 4un|\y3r]ZrR/2C+T>[sJ yk5dH@d5bla>zΐPi1'as_2˟±BEҬ+MOmdƳbkȢӡ˧6C&FOGH5fİ22^ rRB~<㸴? R;)KK/c/V( D'[溿Wk TYۭ -g.& dM)y4VwgJ?% U"âRpq®pb?z!4v( jM^2*"+n@N= Bk,.]׭N.>>dhn$7mFJ;xlga<@ fb߉?7B>)k#!(8+!y.2~[|b"lcb. n+\Жퟙg E n `b^ :s,lcƵFlFrt@V[Ed`Z@A˰^*E+~ukьSa.^`lRzuM@vSgu vY7.nӐy{Nk庼NބSj62[tI hCÉ `+q=A60y ᄞ$:ƷP#KwZ"OŮzs?2XVnY^5;FC,JaogUloxQ]l :K/԰ Е߅4dU4ĩVq\P1җ~5UHcbU -[VSVpY ?I!h5wF_ܕ`fkLz1Pc,}8V  f!hNYCJvw+8Bj'CEe橗ȱ PDf"*v=3Rܝav:?ndΞ$JO-lgRmٲS=I2nF 4' ݍ|dI&t7q[Kj63PK"@kޛ5d<_-&QtnN1JW@X m-H@׌ǖu}ܭq71GY 'r{5@\H.L hDIT6C{G@,#pui""%e"KmH^ⲇp[ܤkWu ;w{@r,dyt!˄=4>6"?^iVAZӈwivF"`-I`p9-<%2qcHrIL)?AVh}2K Zs6B 8 ʅ_oݡۅdKR@£O("=!3dJG.9?ոѬ>g]+w,>+H\{Lp^ k{ұs)@ =ߌ1[$|=ާtG2p]Q#TL@cBÖۅuqkdgm8I SE"ßA@7f!4 *UbP8|uwp7/bq^l}UI9?Eb $H).dSBm˛*r[yàPߠ4Ҟ鰆?_'?2MFZ]N"Ktw/50Jih(KQ9=@t-!Nʿ/W{Ɠ~Y\Ww kGѹ.>[ ff5t) F DX: .fF3dX~GN h\hJby;N\T&gLXK)^OPP Cd Ϙ~`*AJ=]!ZC?\l D d>)YSmF˨\Vcn_ފOۚ6_:rruf%n5尹me&2z@.ީ 4~0M0g=3iE_B}n$!c;Jul(bny!8C+խ81?ZZ+4HX,-&(YU!#~KGnSN1Ǫji݄d5!SE"f|"'_(v6+Tp #G%X jgA{pY$).Gxưֳ(:{GR;ҤHjce~Ց= FZ@qp[ᅘ<\j)u.W>{̾AB[ uǣ= e Vn}U0Hl Eif+ҩ&:~ef( }_o= gc[((:eg؈8f@"*G$ ̏~"S "ҲD>r+ tQ1"OތLWLS=G ܊32̛"TŠDA"a":(#Ȫ3SAA['Ù 9em.@@_o#S ES@8A!&6eݘ9S\fS-6tgޓDeAdeQVܠ+ "Q'yž )n.jcqP9oO3AorU{mVfO>d~WvN#ΈGfkވ8r98dQc"$aP/nSq2ʘVm;mw- PF|{lЌj)4;'W 9%){qͫ.A٭:>eKDeĎ܀>Xdoc֬rF{ڟ^W]j=,/bZ9<5*n= u}KOR h&E^ j:u(఑`TdR-P*`S|3u}ƪOF4ʑ42hE\bӧLEyɴ.HGq(f 0"۷\XT vv0eד$ar(4vLR4wmoSGmy.ppls]`b5FSA8M}{8pjh UTGk̙[Uo"3Ŝ[Y@jezso>1c+#ċ31t<6RQc"]tn%43)X@# r6d' vRVU:,`b^7wiuD8GY#[k9/$0¿'Z~ ' "@omEG^. 405es1=W,/7Sc)k u#) SDЮ _qbIAa/_aci3G-4m:zIbPӥ7uf<ø8^x̌ k~Yˍga|ZҢa@8]""0&򵘞6Z,K؞aVߨTC 9V^oweX瓈cjgjLW'1VH9f.,[ANSs!Wy͒g}po,hkC{cS#Sr/0l=:[p#ea726/QarTIOBlh5d$]0!'Jff;r9%V:H37Ա#Fjy2>r3E7C$j+l-ۙ=Z.NZ3ZR;M`1;[pDѢb׽ 7ݙNZi-*{Q4Th=szeFτ BҶp-;}jJv(AOa"[ZGF}ն;S}d5z\J9ؿ̍6CFv(l<Fm <"NJb:lG67]st4lZ!512Q* n{XX'oB…r|1/ ɒ7[j+`/ @{m?hf@"v۾>"p_Cc-Xkm>Kw+"vjfԳ")ںO3vRn?*}KܠJDZ]jVǤpw'J 9:J;R]NeJ2!N0Ff,w7ރfgcbEYdV8zIPcס>AlM,~DJkQg5$ ˲;IBNF3OFi$pl)$ƖJ1$0mD'-Jg|<xYͨáyҴMC36RԵS cn<4:WݘNVbxZB,}onH*9 70Jd_S5}rӒɡ5w5Ebjz:5+Dy;K=^[VS3i6rn; -i25d@VW9;33)Uԙ4@9X~6m63G9}9nP I(tƜ_R]Z$S sKˁ ,oFS/8\,YXֽ\O }ag\HhJN>lCjΔ< \'+y@T&U`:/(fttNN2616Inlm[Vl{ C0 $^߶Rjt5;,{H8uI"eH%224EfQ&p,$$Vxssf[ n-Y3DnA2Q~3s i.~n<5~i9s_kt{ǥW[p7p7fAf:@t?E_ֵEKs ˕!vِ] aQOTh`78#|ʞV%rh7S<ʛO7AXt0órY bz6m;; H{:Id&`wUo*yLs;!t2#vG\5'A:/=Dև*Na?!gt|+ :i p``VYOĞ=QÀoz:"5gBUBv(NuC,EO8d(7keK,g9>Dc44VCX x)R j`0[#ȄG< I9/adHS+Lk,_ Hkrp|Cےv!cpw:V,Ρ@ja4E7v >ն9>| {X߄lQaDH*SV-z/C g"Ϫ`L׌ŲԣUe\$}]9]W3]dZvn8MowcIɢs8H LLE+[ J5{ gyZ $Lfvh,F$)$v#QA_.}pr zP.+UA4g̛,9:)c :)& D7MH?ckfՑ-yPz8-ٿCN;JWIC#7S\Gx9*0HrlqOZd]0˥^$iڅFu^p{^1NsnJ6>- )[Kr"_Saʇ+%4ׂRmXp6&;pXW!Ҟ4#0oGba]C}w3uU3Ֆ芲#>iЬTe [is(C[Jh{)G⡣7E4cz 5X+ag=%XbrySzZB+agHݓL#" <܌񈧄[5$g236t/CZ"mgF΁ԂBWGȱ -&i /FܙQt@ZtK/h/vou\OD(sӔاz%BbvlH047z0GW'/96`B3;Q5t|y-P' Xbp?"?Sj3'vB1Mlt;#.hDO`|F~J ~l9 rk(<$U}SIt5 =EN_(P-㣟#&"'p!!PUۛq`= 3qMj';tt:&O "ɚ2x !΄afЦA|y~n`}}8Sfrp֦eIT 1gGPI:2!@2'Z,U-u;uvpl8,GE[$wp[i]Ihk#zt'q!ED<8 C;f= c#D+܈XNž3){C&Aۿ){XvXQWj\Γe\a[۩t|⪃CulGo&drR89~%dy)@T7vkAҕ%DkD}1p bɯC+ ;DEDݲ%3,<:,Z~-8Hj14i R MG OڰW`C^~|ug5O8!4J*U揑`EЍ'GŦ0+1!n8!8Ә!%~<>(ÂzD;^~㱤d^on}|7vOr4nSjGvluT+O)E%h^'ٵy[5HtsS8;zi_eT@I&fFgEΣbVN$' E*d>1|[KQWj*%Nn@a> Nm#n? 3}OIb09'H3ģA"S0U,?[SⰘoxeE!~ -{;tH{h Xxjynl;.7 Uݦ{kFꞸI5d= .B, /Xю\x|limyֳVowZ+Pk`ba]eѧ{SuXz?C2g ˸de#ď4;ӥoQtx(j2bO[BXJ=*N-0RJ.ljsMB9 ]vDA}: I59Che` S Q7-ޣH G=zwcgpa!Yl9fS34){Oh0Sd]eΰ-AB6V'clay j\ʶ D  sّhtkAdwف֜^]EI1q&I1Fw'j+ey&Vq߉I6]H`/}ePKcb] ng(?[HPL#]8y7CC;ȏ C{y*ds@d'0' c id޹Q )E(ބ@!,J;(+8b)dF[!T:3 uQؕSF}=ƦiAygGVI4z mfvΉ#4kJctTDlӆoM).y< 2a\5v-4#3H\~J+CjD@Yk3.%v{HMK 诛$׋((:k}XV7GWylC <GVޞmIw]nw;jK|=aHvV= Q37 SAة(dMR(6\mxϵ_cbiͶ|O"߳UD$PS|5f0ؼɾ U -#;ae9k*?^jAf>##$r*Hn@+ņ SyŲJ.nhÑ&- 0륽=),[OI6J lR7q8gV2+I詣EX }1%H/}hT8lg5YE θ\oqR79%s:=\ XF{ndx.PDLbPvƎ^&,dPQ/eaG ^=^,(ٗYdmD#t*qINFoU"L}=3euӂP&r0(b2(m\Kg}N󌬼Y%٫˅4{ U{ G1Qj#2u([dX*˫B\$v3FőZBcułG/[tY5c 6ĕ JUgMw!I%qwx#A0P (i Ac4+2]k`^0$ 9vo>ţ@ѫA VA.hy ym]xuSfn+$K|;u$soF B*b1<ϝ{ |*p_^>!Og{6? t_KdZTu WX,č6MdatK_HC[J{o0$v!= QTM6Ps⹮Tи.6wzN@1RV P[uo-o"L*08SPpׇ OGX`0UJZ{4N2PGyٰDC%mw+%'LI:kvQV^Vrמ< I'r+l Q]LװIˤpM81}.3ƑCAVکâ %$p~-Ɨo^*x+ *teWO-ۂŏi`6 âu"{k7؅ϛRA0Ry<6&`6`v; .DSq67-\i*N8KY_Zo~uYW1`FcBB-%a@['ë]9{邎Dn2R^D~ NTGcu0v6ep:G|<;bd6w!{H\^yzIĸcb#dZ8a\xC (7F"QMg(1tKͰ 7%Fd5SuG'@4ERxid454ʼnި]ZAtIFOjр,n3C#i鎵胵;)3]v2L~xwBHݵs$߈vc>"6 UJ SECRB@nZWaF=YJμqZ$&_ `Ƨx3sXR@ 4f KCFLZ۹.#Y*>!`S8 = LKv?V?)$ShWWQ!@;Q Nsbw9 L%hE f빘2ug[+Ɇ'6[ ec1op}QKwKWך+۔}Cs!ks 2\_KqQ 0LjQ1'#=RM;T=bF ЉFhK[Iū n[5$HowN"H^fFGR ['7M rfO{,c"->Fmkq$`7 YpYM!͈>`Vmlk|Lmw2zKQ$3D gb[]ɐŒMΦU:<ܦ*,a;u;pJ)kMJ|JSv:놭_"{Cb4rI;<ܓ^C4hׁbItm-aYcG, { WF).S7_EJ/չ>7ھzf\&&n'v0uػK[)x[SZglXi$Kkt"Pў::ևlV_k]A$_s rU XPJ6{E=ȗ?N^L(u*z};%9)mGT7m͙$9hg*6vpj|(l_D톐ѕ?d!#Ը7 9 )BmkoyXsPgWl>٢񹀙bJPO3xj \q΅]I^%I9<\f5"}:) M\Lo"GGs#l'qcVvb[d['ZNTd\5Sv}an[31:-+TB p[5QJDϜDˏiƏqzxl<9Ed=&49'mW^;HhSLX{͕78EK֢F>hOLt(YTG;0m2xJ.? fLtj䨰+ KaC覎5Z|, Zڐ(KRjhx/SR$e3M^@HD󡳤vͲ\,/yI>'S4tIA{-~YL9&nƳȁDH ',=?Y>hD|Xyӛ< e"ҺI2- (4_kq6ؗ)/* n-]PE(1 {~ht_ǩ!ya6"̳+1d7s5ާRV$A>-e %!f&ho!ޕ3+G|Ga0]j%p8'9AL$-eg&(.c&A "?ИS4k$G‚['F}O[% Y}{w`"f220\븠Tu_7 ="vڱ.5Z D ͖\@[O\Hf({(]{U 9B1NjkH%3XXm8SӦuFveΤ0Ymf d.oqQRog Wg:~L. "ΜU~^ʝA 2{FYNlDVJ.} ~|bO4yjh4|I'nOs Y˦z8ymDHr%.18SfhPciWC)2w~ -n(>"k*9}sHe~aDPqL&2WըSOBPi&>pPw&B#Z`esu )%=3=t&OF@θG=i8Ti UXb@]e^utA}y @enVЀ5?Ld1r-Lj'1<Ӆϒ,|܇- <$g{Bƃ=ɌsɤkmkyN|FųV4CBuii50m;L{^֪g$ ~G)@׺~O jcB2&Bܣ%Xa )`̸@ LYxHnoGgF6$ڸgm+nF WQJtN9)ril"懊꒕vKv V#{y/RCg,+gC'din~a- Q8EjrEբUXyjz)o݉ jDC|ns2l',/9 [,6$$f9\NȊɊ J eth@  '-}N0(4<pAmD0LҧCS(Mzb*SXF9JW ."+ LvTgt5 ڕAq4XG|WP/cēcho5&op UhՃt308ܨH] A̲֗: }VLL[a$I#kp,!d0|uf l%ћϩ &@k4gӥƀ풩K $z:zάs#_b9@qLƈэwfDW"]n o}ѩ9/ qT!R1Nh9鶥/E3/3!t^>|[ٜ KPMߚli:3 `HK|wnFTԁD>yg07Iz~I֛wln& ^'^/<; g)}eGnF(Yh}$hn5mK(r^DKl{$ef,DKM\P[,;7iHV m_ R/ϮYnb*Gv5`4Ѻ_hRZ5f$SEfۙUE[LEximMpy r\#& &V9gE8Ӂ18lܮ&GQ0 h%*4c)47p7;ֽa'o* q_2ΠBr#A4kǀ+tEQVc\Sj10:o"f Ur;~HڥS |ݐB97*@"GwH f Ի2S"¨Y"J:x vjʯ{ETg_ѐ1ы;f/q s_Ί`^Yґ"+<J*&-yBJRJs:ۥ|UV!0D;4mCd>*@ aa " 'qk,%U<݀19{ {V 211X2hgL ~Q!#C%[t]f-|Ҝl+=6dL C!2dwZrj49R~CT]Z^j/Z6 6RԄM%aSk8ۊ,&#$Q}/uyuJeXmX4( ;!]rnYrm.PG2;ձY] ꨍv +A&~t[C߯`n)D ynrޠ!D_10ITXɁD0aWi絒*|xYMTpƜ*;^ϩH͢%n1<ۢPD:QG¿nuB_XP<o">qBitES!,y , :Q+Oi|pSmHMb/L%JFW襷ݫ#X0|uھ .?=ܯis"֚</˚*8.Ic`EB~ l}# Q)ΰ#E!ie3o oX⹉PT5h&q!=6vJioCbO Fz 4Hv)D@pS?uT!OO>]Lw hPH53 2+e=|lKBzBaTZu@PSUb܉VܣGiE1j6M%$M䀀*WpNNaN捲)X-\uAs{~'55;`ֱ'DΝYUʛD{n$ / (|&XF)lcEa4Y{Dg;SC]&۲{*ʦbAɑ_(4u[p\TtOT".$k l0 W|< &ꠉK4O1|Az+v(v>kQǟhMmKqPvky VZ]Bk*ɓ$6@؜Ɨ=E˝ )l'! y:j4eC)mwvJ[9 Yr}IRkN5s&$n~r `w {R@xjmۀs* c,QW}LU&݄tTnF`3s%滚&LAo;{5ꮿ\-J"SK:&ߺrl>ɜ  Wf]:W_O1*t ;OG5Od%[B579_$BtUAC2yɋ}yfЊI:`l-W5f!5)Y  "`]@h+!VoEZ9ewlC+,a^ SmDc{~2^U20 әɮO}|EQ/yr3 k3"Lh _#)nU6e& vVg]m'.a)́jXa6Lk:!l*f~m=HPDDמ̋橹/H]Kw!WkRin>Yeb}t*x6nE_o{[(=ZQHb}4V7:4`'iQ77w'ZBT(ʱMiI-B&D-#᤺odg@JoJs/CO~;8P=iG!56Ow!߬nqW$T7E^A+aÉ/aœtxZ꘺](I&pNl[3rP?F%8Aq \ӏ9Ð%eJ?6NYt'(XY$mCOO*?;C6QJ.p;drsW<#}'@"@v]N-w_viBSُac̛^s-L/ |& ((q*:S,a2RI-cˑKɘFedMzDwAM+H&5,b\hX=(}^d}% ֢cK[k 0! q/ZÔRp40Ao%otjn Z[.J( r@3f66a zsZT6g8' NܑEs.Qhٖdkl (4.ڜI妚Q<Zb\"ygVÀyP-}:Zi~eUj1F|@L`~8;GQ924<CiQK{}H?8: pmU9ÿ"?L٥ƺ'QׅnDdP~E̝[yهzΙj.wU#՛0RA͠AÃ}z)L𚅤jhuL2b'Xq)=\Fe1\@m7Fif^>ff儴c5s 8xr,٥zzc§Y<gߘW4*;aQ LD}[u4ix7@/VΧ_d*.i0>cQTslq}&~j5"szJ>~,D؁kU J}ɓ iJܴrY_'aZo`5bYaV7./ga@}tzTCdžtL4\Pg:90PŒxًoɍj bj"ܣq>H  ̔ QuT10$zω१b7\_M-״Vy-elM`hL%^ MOpeC=j# Z5?-%vȖWlŧ44톞u/}M]<mx&֗A>\SUUƵ k +ʲVExۤfVZ)H,@fmȢhoS<0pbR¡_ߠźӅP*{w*vTEb!Xu^KOޱ#B N*複rh"hU2uTS@f/U$-{tʖ';Q<ۉA^g̀G*Covs-~ ncK 2mlW<4>JZ/Q~O5H\2:}*OAP[W,."_ Sy?<_z'EZG9 PoLbZh̽us;M7L]ztdz(%?<4⫄_m,{0Sk lX*E̼*i5wWs[5|uE# إ)EoYi>$8@p},Km^?87vHﹳt9WQ8\E`rԽ Kp#E1tgR\d=zqbKq_wksM  ΰk/j@eL=ѥ\vI,Nu`_uL݆v'YCX՚xXg%akodCst5D˵c R:2BH|%>iRs]Ody'(q =K3-L2= B9hbZuB)KYmQL`j_c+c#8Xei׷-*Q !R`׬Dp4tW^#u̎ԇإtK6ٜqA0%HQ ܐlN М{=vvcpf3fjmo$I 6\EXuv mH^j~'rYTMSkՑ*9\!VW~"0`#| h+!Ak*!n`N0HO!M{r>^+s|\L54Jןͳ,\ y] 8E|[دh#Hkx) ˏ1&5ov]Iv`s Bo`vN]L=i p7$#ˡ%Y-_Sv0-5RB޴ϭ4.jFj[nMh蛦l|tZ&݀53SۊikYA:׺Te‹D ~5i%~{tJW͠Bq)K Y CΡD/6qG04Ȏ|bcCDNc+ǵD-~ifɇ-Cp?` ~M ~Ԯ}2%ռ_)lXe|H."^ UJ]ic0L%&AƝeQKAp?;k5`f+8Ծ3|l ?Ҩ掉WH=I˰s^`|@~;!`YFCz”c74!Ig5 ЛfjAb X8emo\Fj$͠u0c9$JrkY'5PM2C1:[I2`&==v-$G{-έ!Qh7kHQޥih6!p)Y}d ΆsC  hqG7۔KS1 ,+*Mw.Cl(bݜn9?@--e迎pì{Ň}?j X@~lלC`FlIP&'9\)z8#E"uzԥ#^ViꂀO'CСbxTQݰ}][%p#9F4UT]U5V_'=Kkj8 M Z~|5m6ÌpS[!us2$甮݂kZ)󧎥ڧ}aܾק 9Fn}Te` M0);#K0*5)ւjȬӖ}qn|BӞ+0 `5>K'hA ۣ%_w U xa>jprM^I#<-4xc=| Q|ZOkƬÄmDYV~&m{`T*ʳY1gggi/o) Ϗ=lq̬t@B@Q/^)ތ5gJ k @@ Q)eE#L2\0TBi:._P.%Kw>,n$вjWDhQ-ŞvuW׃?y["s/ _[u F'+S@d ӏ8wKpAqj+>/t@DΏ Fp0u{r"Wji@Tpc NI8<AT%_r =5d7E<-JO0. L7w CJS!._]>-~Q3Sayi;34E ôT,[`HQKzωcR9Acv6mŐN;fdEP5 8B8r ,X8+mg=boBxڭ[|7&[ E>+OwoEZ;a$?x0% FRǾS',m'q!gPe)=uEiA{(Tc 2^D:fte w' FDZc J8Wz]-V=`l ~sm#얶NqI'4>&q4U2~%ܞXdZ 9(Q2 քAfjǏCws;C5qp2*3̮. ;n 'V:3:ġ9RåX8b"*$Htfr9yIb# SҧBktc^QfVx+x0݌Dr"jv?H0m 2u%%* ScS# R]ǣ2 p*/n@s †g;RB %_ 倚Jenb^nv1G=uOjwu2}/Q I'ԳM|#K$,d"i_-x@$YcHV Ս0Na`a2K-(&&?%hoۊɋamfUl}I~zLbTŲDF5<40F2^~΅_VȻ#*i;A`#LVY"b`>.WhFTSɪ >j<ۀ~*sTonqld\H[2Q[ !)U)/mR5B,IRۅ QyCmJiO$zGp,v&$ TX8 7 $BiE8eU<6h:ş}1*UE|K&㙋n@dόrBj.=Ч6߅!؛P`1|VIѣVUshi$άfƠl1SWLͨ7*)?{XE/vORݩ>A#5d(t۴Q; C"8BRg[7\UIgzʜC!(қ$o⭌^<誘l{*Z\Ľ~@)O1pH+dQ}YjD,I[ {j[JK|7"(>$~p:TH η2DmŪ2RAy3bb!|Ko/?ؐn֣ߛ&f P:qȖOR(kZ6o`"SCPn)b>{[jn_eI\)c7Gǩ&@, hMZ*8`Zy1y]uXczp~Uh1Lһ{mhJjTe{<㐭 E+er?Q ^¾jUYp'mͤ4^ZzL&z(`?Ӯ˵>gS;>6)5T ҮoFf^l,ao0qY!^*9qhr3wlKփ@&C*S/ jt z.ir@7>p&:Uoms2h] ֳ({S3b!+ɯW)1w׿_\lI7a3~|Ryk4GUk:t7' uw|vGaۊ vl߃ b譩.п +9TIu5:|Cbv <״,LYy΄ qɏrTNN"-KFO Hi@>cp,|t#rՙD͜uM$1Ȋ#}(cos~A hV ؠdSo/O`M)$tpJ'߿`yL*y$ $<؝ %!ail@!s!>4ٍwtb٠fAMc½tn)?ݯnZDJ-Kd`IZ۳#M_ 5=X3@v8a^Hc{uZ')/Ti/ ֭iOcWWҭI~k{تm !~r mߕM"ZSFDƚо8{t-d9C ,k$ W>R;u^W8{^d1uc r3`:ڛ$S.𻤤7 A6IDj=NWU:B@-XQIStgC%a6HZ㞒Ar^¶S],-ڗ,@&`r8d`zl 3 CqARq%ùQMu].T0 e\[VK]PqC΂[u2Yӳ=$n2 V]r9ΚҺ_A j C!rSh7S mv,`E'W9 ᱕Huw3PHDIyq DQtx6#77"VnƒMP$9P9 1hJ+=1cW"f ,öTªLnj0o#WQឪkl{Q`C\dJcK12Dţ5gG =͙Eo9/+Pko"fB)N q~%׬ #)| W%o̳yPgc|~.B\|S`I$>PIK;%m$o~Q̟;6cyZEGMF֪;9MK˷|u^gQ!HQ۶@G nU( oNljDriaJa<_yikjȹɽjX6_?Dz׭RI>QZչS e`& ߟMƺEl34nx?5߃*.鋒#ӟo>M5/&){ ]ll!Lkq{ArL+:L7j } >-2Bo*<`#egɢOkOkNJ %g&m)~dֵ=lo}`Cwt~ouK~&xDŽ? ](iVnF( r@,_7-M\lK/$+`핤EʓzDm|$7by^JVv: U kH] Hɉx6 )k/zl [j^f6 ^ߴ]uI1czkQ#E7Q-M34K<mS*qD.b =YV@~4#tK\+>ˀ?Ε+.*f%t 3Z'xў16+&-G>'J<5bO*ƴn_!XՋd#r)|(c&]_N `b{VlbrYZgNp}9y6h 2Gp`{>-_3vn =9 \L А@yvTHnsF6+yD#l)͗ \̱L5DaMAG\|Q?Y-$MH]-̅2H aښN"vu͌XzAC5P5 XAguu0l=0S-mg {~5a,ԼD7HM5լ Vut-OI?V=;3ds廏~jWp #Yi"1=\ҜDoz<\$*h^wgۨM)`#A;"N%!Jy?yڝ?q$F0Yf9SiVgC {f3۹C D{m46s ޟHfw40Q<ʾ^X\{>`i.˧Sa*P8fx\q>]V[9Fx&|Ih}' &ٹ D-c77I#fݔT XWnQ}u:(b8_Gp BVAT2G]}PeCMsE@'+nlǓ߿ qK<}.k&km`^'HtsebxL Z.tAc=h*D.J *>8yKJ^]݅}Vn= (طպJr a!?2Մ ';B~nKȠ?&**#'%kCd#3e:M~.ߌ5c3Ͻ&.Eɿ4;%K PW#[0vk\i$adj ,7uXDVaA~P4ׁwvٓ^Rb="# k Iئ(TSk?nM*"Ax~.#<$4Vv>]o)]|_F9 ^:UP-ƽR?c[>eH}? w(ֻԏ)=hd9Љ/bu~exΈK= g臿Sn4$\z$?X["׀G.|mdxY,h85Ço9Tq"f_)NFw5b+ih;H >)_TЅh"o a6ߍ6#[M Ѹ"pbJ$W%_j?˚ :=ݟ$=4SJmАnR0Ic !h, kS9lpKL2Vp?]uSE/Mh#HzxR`!:He<Ca UG~`󣤸;9MVFuri{5ظx4/!XqZتxvvE}-,r UL&f=p 7Ӕ!J3['Z 1/P&3{+MDUJQ:TeU.mǶW䚢 y>(U힮|%ZKtj#*%ՊQ~ʝ#;YǑehGU] ż2!-<꺺<@5 >V"Wؕ2Đl:M.{}N*Žջ}8|*Hh\K3]yƒ2CD#  X[y\t?HjYR#1$hqRBU>kX9歒㫼9g\)hƞndoߢVS&8U诼 'C<̓40IaTM17@P'%1q!;)dfzQ$e@_'6rq#:`<ᮌ@Nl]i:,W㼞*U5w#i{ ʹ^8'# ~"'`R` }/'9AT1ڎ< T2PaI'<:5^ {^*ҷS)&+-6:!0jpW.@qr2.Cuw.1wn_'5( !O"]zadPYdUeR-<oŐO!ȩC?q0 lΘ$5r2RfX)4U!46NDNS$&֯NriqBZUw#X`SKzo*+։ϧ1E3=Zbt ive|/pzT,1OZR@Z1,Gh`BgOa>R\o" Ew|b4F>ܭ4"wn(yrzy0;ˈI. "8҄XYIZ';H2!84[x7ksNJՕ+@p %cIXv5X!dx! *9S/kB oBC+v`֣S]ꡟ ۸X<,7(q҆LW} #A4$G.pY7\ΚKW>h{ Yx^$珘5!=: I==UT,8Ri x]xrr{6MQQ/w(6Hp {[P]4m oU=b߸l}v)MѪݑauZEI:uo^XF *I2[r)YACUd[m@%zd^#MV3 "-?]'x=d;Bդ r*]ulnĩq™ɷ>!wO[N_zKe K|Ԙ*[Eg?SgD@M8n.I@Qqc `g2,/Cr~lZ8hV(}G44 Y4HaUՆx9 >57(IpMFP%ckB(]~S#ØĶt #鶹r- A ƒ }kof6fm"DR.b>`^L{]yHw%չ7vwA ,M3TX)oqokA=`| +CLMzG eb3XT¦/.E),TJ-Iz>)&CdsRR=i75}2R~Z[Vg,1YYWVĎrB49I @b'j Q2<怎QaHEs2Se_hBt$)n(; VU8$T*ú-%U(>4ى@Opټ N 9sV%yܺ/]I϶qzV[Bz4F%p_C5mF]g<8!S'4;NH. X ٶnw¹?;3Q8`+i8vPgœhٍЧR/~Q5ˡI-9!`S[[Αw')~T /Mx¦$Zzɭ(\e+RoDB٤hGpSkue XWwaj+ &`u2 c|{RW^>|^>CHB165x"(T$n( W$ LҐlM9BL`G}+\DCHy:*ABjI0-?Nٚe]lù>Gu~Lpg5T`Ny&`sk 5^oM,u1rwz#7ءI'N-+ 'YZɭ9X.-V~(Wdn~q\xaQ*|?Dͭخ}?%Z0Jՠ ,sٟ]H)=Υ^E8M߲:i3\`o s]^pQLIǃ,jۗw=3-i9~[L BAy%GR ;+TAλNpꟕǪ{/m̏{=4?}9RґΧ)B@XTHK@M.1~_=]]t׫sY*@@9N#墺ZK7=)3 PDi+{%'}l؉^k-oDLfNqHUn}M{QT.$*L.őq%0qCGdŒN4csP ǟ}:>+Be-oA'IhRh<,( L |o_[j9)=<>5|\7O3$- Õ.%WV+bCRJ{h%LpM)bg|mr(70xpSA3܃^2Uq˚/6S+'Uڻn-&nXtT)I~bd+f|ΖgMj ItgN3M(y̑8ia6̨9WmcuMPbV )qbO'm;ֽA0Q3[?C=ǺKWޝ2D"FQ[Ga+ӫ=܆X.I+qƫ4K>OV= {WЩQhy֒ :!f\0xѬvڋr9#,J&mqF iUKAYD HF&^ jV)K6[ ѫ\ς^ta&{.v]AF݋]'ẁY ўu8v] ȘW" S!o +z5WqlYC^epyA  aЈn%P0PS2 z͒G@BNڢ'Wv)tvbߓa (=y TcqEa6\{g|SP?WYcC9sp^y/MpWU6u*u@, ;0Wb&+cOB\ǝGt. OZXmDe~'29ݷGb-Obp;ol9 z*pK jYԑ;l1 2Y"8%SXU&eժLǕIKȦ4eQNH Ar$nAZTի{r୆-Jpǵ.rR&I5*! {ڨu?=60Pʻ{!JQUdf˽rJozZN RNB(Sp'~m^+[d T5aW:޽xEIf5|(wy]*3Ip;h[ G fK[ߘ/c֮y#,T9‹B EϝSQjPJW0)gxwE7:J`648F忞(?'[.K*1%Ji9ZRhVH}}碂hěq_LmѽZZڊdf~`M*yb/lsY0f0^̲tK9@"ژ 㚪 UF6Au`ȆS.aDtA/$Gj )%NWz~^]bV1WL >(zCw7"whYpVV*JI?e=)I!2Mc^Tg v+]a}%w7DT+oB·VNzҍ(y0  5s[9`ii 9H`p:ޕ/\KxXu8s7)5A=-A6BȺv !TQJd$L=,F?q*lbh\{=wցPpGk(52P`;l^^v.7PQ]PI ,96\z\$w8$ 4ô}lC'T*g .$Nߊ1&4gVq2 J3rQ~D~:H?ot߼.k['v4qG62آ6J&΀%hPEW 5s?ηh0j\2d&C@`"2o۷$.356:ѼWg|15^ X NoSPY L;kL K][6)Vu71wV@mގH]Q4ى0dQ>kZ|=Eu\ @}(ፉWĪv$3{S=1 w ivL8eɻA&_"dm_OLYw L詍G ,R9-)jrl~J~⩎[dWotCf1 I N@<"$K1K^_S ƥ}g' ʳKw] ; Q5IFz&Z\JFd+Y !Nzt/eXYSΘYٱO1Uϋk?վ-(،6@Ze]#.IOWpHOrtfI^5иsC $~0=.&Gk©R#ǤfF8PpFaidlǪ=FzQ CTA8p,%>OAIb-cPMD}5ekxd3ucQ#ն7 ùyb}$2Ո9 '৒FxF r@*dcmiCl8\Dfpi?k ]6}h0]֪ASdȠ6h%uEݻ?$ُ^w B~# $x`u#'WJS7NMڴQ *xp^G*Ϸ~JZ_9\Iβ|9sA*6rax^ i3B, ?@X><&˒7[WWYM0Sjzw}AZc1Rp,+G q% +y ΄O[Ab:]_e)>A^P/@Z|h݇S!F`fqb_Nh]5CwP3:X7vEDH*qkY0,++6Dn .eevG%@7nN>M2R[(Kg)iɡPZ쒇I][cfW oCIK$@&^18][[J/fbM+X`C7KW(Eze_+(@Ɨ ]=§Z?TGY`Ö7 ĸ !&օ^WqR থDP+ W0(E4:Xm '24kP;[g}67J1(Zi!}-WemVޱ,TDqr/wy(ˑyb|ű֖]^7F<2݅d۟i۳?:U˗y>f{۪9#K潬Ub+M`{^%:ӱ@P*4|!`o2TE>$ujN󈟹VgdMv]$O3XWaLt)K=@kGhAoyRD[ިruy05 l!擮09("9 &VVҤ'U ηΘ+;` 7atbʣYͰӊ_n_;`W,q@`K (8y{{XF老%Mϣ^ц4b8MdڜA!|JC˫ v>!{AjٝBA󂘝x >mO1]\•&?Ѵ1]fjEz`c-jwZ&d۴,̕x?vWqP!6>DtXō s1c)_^nрrk5o1slD៕\·CV=cݟrn1īeSF?_e۹qlu%8j-nF2o'|oy$1 _ ȥ.&b<%z椧ap=anɏ\}=\0i[1>kc-U\pL x2-.ys8:DS8Dt(Aߎ_; jn]: 㦵S{V(q+ B7.wOP0Lih6'BUDyW&m: G?#&-'d F&VI6GS:M|4WZ% nk89Q};HEO "CYhaujfЬ(^*g^mFKͬ"\ BmG?;1 G9ſ!$\奶AH=XT+b6Dυ2Fʯ.vo/ 7g&Yhb0"C v3q5dzs1(W2ju9 Ք"[j3s=./bf?a@aSn م1d r@Lo;+~-%,/u7sm:"5fanЬuXe-iYV+g/S \(^[&y>qʄ74²1|ޢȤ@)+U?k&+*#xֱzJ{uW) OmNX #hq-אJZBf]cot6$IB[xW{^e;c4y=>ȕY[5rf,ۻ3$݆HȨi. ܦ 9E[a::ۧqۦpE KLjۓΠB=2\loBeֈK ~CDZ2U 5 #Wak\D͈3bCԊF^zY^>6\hJpl:Je7Wk0cUIJ弤98cݷ57[ fӨbԱT*庴)60Kebx.PpcՅq+w3 L5 尌7`fRa9Ôw7j9SHti۹ sF 1"`ȯj hh93Ұ){_ ddU*9Iqg4Z@X95v('i,6>oMOPVfN,A߀f>3)fئZl y$\}"lNsi[$X!DkT2T+3.f9))MZZq2Ew.JlH&~.1[S1\{fb UȒ2]=f;wRhA Ӥv- v!AC\<QD ?/͈&-ѱ`vH$УwY_}NU}]ڔ'td*RgB{ \rH}+Jl LR ]kB*3'aIbV3 :wjBPݶ>m%S!rc[uX5 ~3E{Dw=dTG1nB#]m@I(%{W氃9b7 |!!{Ք1c$Zb5brzۗBT=ΎNa!U&,EO!bZC4.y(g!aOM&C [xd؞r =$]diX؀aoso/\腺RACJ,,EMӛ%®7qa1VFV:AB%^#p}wM%Cx=F\-,(yr=@`L1M.3}#kGz 6$/i[jCVK^f wO,ci^G\;1CZmJ2Pomf$,8}ɽ܊tȳM1 ^ZQaeB+^dԇ\z\A.i;)x.I%2wFOD)E/N]*璽YЬ"؏egQFp(і65^ns3*i;1&k[F';?U|iɴ~'8ԈIbpyv M? d"1.U`՗éH{3 جnB~xFIm˄v=O9UIC0V`ܚ${ TGU8+H vXgIƽfH< u3↎voϊv|`$St)o~~,ءơu n<Ӎڧ5IFXh>s@)+) ( 2~qMz$h/Y߃$0aO^V`Ȁadg<~]hQ251B}Ї,7D>H<MRX | E;o(/ Fț]PX\%;"n\ךA@jۛȑ+Mi`{SAYkc E?UQa曟l:2S^]k;HKm^kE?nT3!JC8*ny9uqi:-q^*Κ\Ď0ْ Z'@):D|r9:ti dQ9(v[/^fVZT%\|vxH"K%w&T_i[NI O}scynE%c(VF~&KddPvNz+osJ4 ZE%,V0~;~/?׾`c&e0/.zy047(aK~d':a5R'`z|-!uwc\:#9vf$bOGO#شYF-k#C }N.۸DOƭ,|RI %^&ĭߥ+f2-Of , {],AA!?/> [pI9B{(;-1I7W8N c \rqyPS] ( e27{XAxCSڃV2Jru_XPMX@"p|.!-b8l뻁tY;nO(U'n֑Cl7 rmУ lAU+~z/aݗ&iWr$aQg7"S=piEsHOͿh-a %?vD㔗T:7|dCb%DD=٪] : =+(y ]\a^\H㼇otxb"ѵxw(1\" kIKtΛd~ ,ZRE׿8AzިlP@K}KXe spq'34Iyk1fMȘX?mQ/UK.>C\XL^ynz1̵mjkL -KO-/ \C=OMQۤ`1|ܖ9jo1Ngl]l3N3>*|< *ZZ,[\1@9,3`ɭuJzU*_M$F՟SBvġPBޞ盽h;x9ʞRදB%ǽO)/W*uD#14}ZJ5{;4;X#hը OzK Ȍ{&Yi噒H逿[5]0IcPsGgP@rʊ!Ay5T~n>$cS}M VsO iWe-+江fAxlsү|1KS˯56s4s4*l:"2ƻޅxX*^.p:",w\H.Eo=$G&0~ ķ_HYWKQ>-ZL1g 0G,$g2d8cGߠHuC`'Yxw$6{7 &|hxТ_KH[vKxPi`766ma13ɭ:5I[@LẋRhwsЦ8}+theGLdj1H=} Qƿ?5 "w+:rpsZm}BkػlI&gI@bzCH P 8rC2TA`6-awg6DRV='<^7=P+,d$4/㸬X?l8f4/@eCk]:_/IrZg{pw\NsA]l-p|c}Y8ez_}qEHe+WlrC J/"vuKͯ-\[Ó?0"j.* ~ AMjڙ/ҙm(}v9f 8~?Dk+#Y鼰GG[:\INO:(%ԄXja(Uh=]8.Cc]gphAd\D?$և=\ZG-{5l:'^6vr(m)B Thh«C""QXo_}H ձ qh5O|:C+)n٧gc" f,S"%7l=p?2HcknR4|# īitIh0$1>*LR,7q\X *q[+OxmbyʙkB|z-D˲{)JE 'b'ʒRd#PD$Xu2Y&{{NWa5il2,[Ju_/2>#ݘ 7zBIyfe,Lk ڵ0 H"ln 7Ddw;sUQN?] B56-"kOzՠ?hþӱnQ!YX r2{Iv~טlٿ5.{UBKCPOz?+ }L&ms%k~\u5hap0jimus@*7Q%A8PILJQӠ% xFHȋ{IEݤT~W}y(hAs,y¿iR 7!u7i3.3ȃwadNyE鳷-UiNc{ZAmq*͸p=b)Α_ 1ٳ1hj͛HH VfYc&isOKx w._t^[tTWUi2YT:oa%mmS,T<ENsʄ;#AKHv%Epy/Hc…[)Z S}rk,&W-Ü ,&t8dsH*Gq;4*_ɷ04>"X>q%r0ehP ,@rj%-[ښCY}J56I:f[rc;|@"_*~Cq/B]shxbBT<["VK27xY= HOp'YH *E=-; Ł&L>6Z6>:Pr-W@>d%ls^ڍ yǻ"La6< *gŁ=3bζ=9uwÛJbB.оhnZ48C۾[q_+pEV< rvzNNRÈ (952i26eŷH޾ PZ}a"8zUMaЏ.UptA ~'W\ [9պK&#d1[ wtXROx_8=tf KKg.csR%MA9?jUlCh`7wbFWKۻG/?2 D{]YI6]3p/`{[Y3 ]0f _I,Ӟȕ CexUI*&a ;{Z.LUp^?ZxxD38Qz)dA XX%[(F#?n}!C>L5&}u$ $E'F-S3Rr(Ƌ6*6 TécX劸(iZSt$1HƘMk_b()%:G ]Zz7(/3]#lf􈅊s7f̺Ⱥ{Dެ]Ϻ -&|񢃨'hKrA$Ng*se@J=ii4=!Uj:,6}Y8Q^@fZNޯ>(86j6Ons f)zZ2=Jρ}j>ԸO~{ᛱs%[(˒:p$j펯u A};Ǡ`xb$+Q51ֈ? Jzch2*C9J$@u*Bj ;V5^ծ~vݛfW5J•( 5}xVd-Hvtgńݛ@dEwνA$f)9BA4rͽ4EdDK*=F[LR͠ [gs#v4OF^Ij?Z-9ǨJr<"ʁ 3J&HYﵣu( n!cETFa˶70 )hU `O{3X#* q-)R~7PAT?ڑce hk9Wպ,!|Hɾ-݆w#:3bK#؉7h U^2RNi@Pm5 *䏝Ejz^vAMݝį>N@hG fӳ G/T%#2'2+mitBH~#xe8kr'@[GxjzPY_/$fՆl?/(2?"1H*qa}Ղ b=tfH3 ;ywuRY"K@%Mjgf} s]L/-ZybjvQͷ1Uyҍhh(PS<_(D+הײGށr{v=( ^e#ϑC9* $>fT ^ TSN0rEy헹Cer[ %Bt'dg˾ݽvz 돹GQtO}"r*=R1>* +D)O)l# ]02 9hsHkSkI5sWY|:P9QyjSti޴ftZKi6 &qNlК_=z |]oe7}CB ;wVa0WSUktsmc Cvȫ!p 4ڞ`+XO?^cW/(D I $'?MiWOnP:n6(dz%jJ*?`')E&+K-2jfR51($Ou;tC࢒8 2b=.(me&i)w{jʎv8QWÞh<Ć1ն-O#{ڱGLkbgEpMR̖]p==2 F3xdb0%t7ȇXP[DoVu0E\! $ۤD%/uc@j}:!2H@|GQOKoژwǃ94{Ʌp4=$1n"ITђX^$(͍i0Ҳb+ߏ ;U:21XTdVfy=R3|upn銵B Trf84D~(RCySiO96]'4<5k ǧBUGq hwj%ܨ J7M[;.۫UyU^';uq7Qڢ=NCS]Ex˃]Š3hBǿ =>qo(Ql` >utEY ~,^ciTxTw9EP-spIE[ pLT{jE2X{D):19)ƬhD0 rb/gj?l+MɴNݓEpֹѲjqδfRA|ӠkUml-HkTJp݄fHR\Xc K4ouX/#pʚO܋ކ~tEđp׸&%+RHpE|YlOG`Yrcu;˸08yQ2N$jߝ^{$o.Y>"y[Px4Vе&WUB9Sa*Q^`!'_dk0Ac fM<&u<4Rf58ymSiFu=on" ~VZ'W$iVV D jLGpǑD)} .%6壅éMG/N[@8vw6M ҫ"zj\亸<aZ7̠;.ѝW $쮛  nA_s1 JXխY|'1\3=hPlgϠYֲ wc/xÏf}* QC+n_X@oU-R<:v,AI22={}3  RuC1|qG:'!r:DWY{yYizp'\REQL[_fVL<ߜ2Yu٦UapV9<V"JiW1ltmN)]QN4Wcׄ׊ D ß% '`KwVc,W&y 7yK|}URM͇U߳1Le]z3-" .K Kg , ؚWףKC+NK1<|I.OR8ꢤ]ءم}Vw?Sn&]q5V̎>;{Aj1ġ9'@m;{d1n;E yybihM(!C"Fig} -Ĺ'DN͝LTƨeJNN'@1-=L+aWzFAB]%]BPQUy98J_2Psnycs )()fs1ovy-x:.[M71rkKTljt.`{ȖE =F(}F8#+G$y+M\ ` +oM}^& P:+lbOFfܧz@F]4vZ/cՕPsBIћܮۋ،%]x =.Iٴ7/WU#cXh އ-it!,jUYhL;{bW۟B i3x>RRQvmLSEGhPY+GvpNtn(ϟ2Q9.O6%~":ۘ5._^L(r5%75pS +u| %}pEO>U) SU3KO)&)`"39O:mbMh-$;ka ^f9ML.:;o W0SE3JfP`5ian.2?: s 8&w>1̤{Ћ{9OgR~PzZkzJH@E]6ZV1kOFY cr^rX(Y/vHau"A(>Ha)U}nDJs[05XE `üͧH-Yy柰)DryG9Hsjy:uz[ap+(Kņ <U?Mė3CƷxAütXKV70_Mc(GJD6 v]+bu݄TD*/Û6`9#VF_ށC\xxu1,T[O/w6Z.AǣaWMe%%8ؿ ?Q} +oq↬`0=tB[ R96pACol/OT7 sx@͇:~(_HQpA2(HDT_96у|QU#[/88oMx!..hz1 +;KN5^L{WL sbtS4;=*A_O~RU(lVk[ݎc>'j"ZA[9ц[hPbc>mև}#RA{Ul`j?yhD43uaSj8BgQ*}۹"uкF M\#"A˵}E naj}7%J5-xIl)q텙Gx$l\ :Ct7<%@)%|Hf+Ai;t+TV F?2C_@y]A 쀱?l90q/<9S&*^c(1IYfr» J fګg:À;EXbuw1 Tlt!kĵvh6<eS3K,>4Wa ~g"-iG~4GU,M6,M^9aMz#x5|> wGJIo;LyQ"v XXmߵ00Gc`Ouz#0̿NkB )~%E}k<;aj?~t xAGN6Mk^C(l8%lKA߷a( ܿI}v,8v 8ߵM*~2>YeU.0RFW^^c焾Q0~Ne9eH:sfZ~ؔ59Nz3|Ƿ =&T5ZL I:Ћf.dOr(PcHz`Ws2oLoq^؁15&l<v`Yt+>$2b3󚞐Ai`|c[jjn"U[T66Jpi՝G>_D)da{s7򄎽S8SV: xsq>-,ԬV V="q61cx f8^RXy]žAp*DŽ-q=J"vGAv^ʈV~k5wʠIyn;QR?߯^aCħwJ:vH*ei{];Pq0MVKf yaJ4[ǽ!FݯVm,~#8T^ ޔH_eOZ"ҤDFlκrP{P˶(Ⱦ%W2܇Hf^N$0a8v IHv;:ARcD la!_Ӯ mQݪ\fCȹ}en ,I 0D(K+Ro㫳ĉȲUN?.!vj!^,N+/||6SNa91T6 ϝDAWDB}t=hGN-,fo΀b¿:*eB"%60g娕MWQ+?8OjŶgfCū>n E2BNxz%.e&;~'7i HV>~y;8i/8lta@cL'[:F8SWi<({Si[ 7~#asw=^F Dfk}VvΝ`&rR98E6z[[\k=v7ŝT4I# CG2&%d{x@l@?Gj-BV+|$d&ɞ6)uDH'PYh; 4-75gA 1ʅ*.UAN_̯jD6~*KTp>@lVL::HǎzZ 4t?R`# +RAhpew7*_x_斱oG 6Gsw3N,G*}FƌoU&Q'P/-\.̊<5wJݭ`Ŕ*B< Ze~$RMǧF?u/=>_q҉+D,-Ѷ a9}~jDCrzsBʼn+ JFGq6_mΙ~A+L|nq?9_nnUdj}1Sm7Y䱪.qoEgؓ` ie"a{$%$IU>سS2pf7@ޑ~R՝C5Xf]IosyFċK!h3˥=D^53uā3>+}U:V"<~x.rډsx-u*!աgrEy+NSKiV׈^4 ơ#iknӘ8xSMc©ʖ$ c&@AW()]h Q k^^Yɯ)%p5̫@Ve6jŎ88h' d٧[XcR1x~l yS ٙEѐQCdo~EQw鋚Qu_YҶ[}=Mz A{J>?b 5ʐ8pB2:h.ّ-91u{ ="4I/Zva)YaAdm]>8ޢ`FmZh[Ɓä"\.c ta~N.osck}'؜T@1(҂K6C"ljWѓ0YeY)Ay0h^;o 1q{;^,2&Cʵl2n'ұ2Ry f ƝaW) clB;)O9`vZ82@P6WOio(|g|kQɡmRnjZn{xF q|y ipm>]\.h"Fҿj>TJ]vPdzZj+'4 ^4e f2B>S ɏ$)xD@__$5LLS^1 Hww +񾴫 qd7H% Dɪ\= :>Fџϲ [QkXnO=H倕pp!mvd\#]q &=zm3lqvYBqT$~3:ϖ^ H+/SYga2B-&gExx6ƫ_ HFO\/x ee Yݞ7YASH)@ #ȇ*J }oB)j3ߊݓ)?;5_=vdS>\,WI{Bun}Qk&=T,XLVtwiKzn_z>rDwiʖ_%b FBz{DzP mȰpU(2~`MQFOP0a=HJ4s }zic,EՒs"n\6oNr ha-EwM5w:ݻk}2.[ cV:p1KT_SkU`-NiUE'`x)HjwJ"V6;߹лgڱ_ O#᠕ZJ'AW=4SnvE&ar:7Y$y5-CE3{r{ٝZWNV\3ݼ?j΃xImNnzFQ~pĊ-btma%u=߰X - 3"o}ɿ1هwP0t1G0 v/|vVt*P4lPwd} KX3m5vzlYuWʎkJA~Ry[mMh5ڞx^6i4$09;v p8QoάܷTFL Ҙ&\нt]e Il`[6 ?Ƈ1%P'1p!'<|C_d ׯ@" gʒH3o, 'N}wwB&]wЊxW;1ՠ>:+HDUŗKlNV-R%Tّ @:< 9c_ \˦>^J<=u0F#YvAg7a/t7/#pN׹4#&j3:`ʄG{R-'zњex6$DNޓ@t֘,?]@aa7 [ Qbi,GTB3:p517[),gHatC3D39^mwAgQt6PpZ>-n5$L)y8Dh0PdЈ53 ; ֠F=-_`"Puor!XUSz\s=5՘~B[bii&IzX9^`V*o]_MG55u`~-}k.4Bgm,]ø'^<#6=‹9%c|47np6rc0PIxda#Y=kÑVp~UGQi,DfVb}y]1FKZ5c7@8(& C#8JNYhR5Pv`*"_'zmUСSg?Zgsj =rn?~#w+N}AP.#}dPqZ9Oz/Nu+EP?0\9{k4J%Etg݃m];Ȏ{?b u[eDNLrR0mŎlbnXfSvi#][eZV euCyHo9O1>g!' 뻱/;T8mޔœґXZj5؋zBCa+~>/n+|ktr g^#9`DDlWn3ÄB#}7`x&L@5ym)g=sU/elS[<.W zATsHDz_ྨ;øݨgQEl);g݂t$A^*6-f]b{6"=np&%3͵Rk 2͸?[-0jo56)aYcՑYw@mM`B)6jj EԬq1bria|Cn ҄BnR V)pE{GilfpGY1:qiB]wBwd/]-B݃kbQYuNH+xbXR1 Bu>GkqFsɨ ]f4b ]>Cj2yb"8g?,gҞʢ?p쵈r?K~p"˘ZR-O$;kwb9qNfJԗ޻{=Ax I3 N%e?)d(mYSǤ=+T:]ƨF/琂$=w23NU5(+Z;KoXj7pe$JUobo.=85qIf,|IJ[r?}ols̖#5O^]*1+?V֯ȨٵTYl8U L{<>~`6Jqt>Q0NL31v'EE`p[`XzQR\>${";kyaB;N#F`ZAjǐFtګ+BRIJ[1Z @ Ke"ǓqHAzc¹ KCO]z*SzD=v?&xs\ü1WJVǕH9^l;%.)&XPٟpP^YRO"c Ӆ[RZ,a>@M! }T\݁\f|Ә1eC!9|+ ׇ k„w9v0GE^_ kmvQ@h{-+#$5zaJE?YĪ\9JpS/!nƫg‡B&8S?_h )L"ЃYXX8H퓂"}]b'8泒S&4V=0f\$GĮjfo@9"~fY쐚C&\ۀA,h[׾~>jbtqVDMC ,Th}K (|z%4Z#RA6So$9Ėp f";=z">v*K@fⷂ9LRBe=s-9To#MTj,y͇cV9@d.XnbrTf\Fo'|r^^";2톈d5VDKF&>egy{vEzmF`E`Jdc"2>)x9B"10.K˘{T&~OgW9v{3N;1~* CVwan"LViO]3XNN5. r7 @M8<"T%c"  pՀ_)5Kr]_a&3DAfءSDd[E4tgfNn&-y. Bݎ1<$n}Rp쁝ΰCL/C?=^ncVҳ`|";(1˅^k3Z- TLJ[u`3.tJj֚+2S5ɞA5ctQk2f@< NFS K2-c+'D 6 b\ۭkϽ"" jN()/n4d~7.hߥ\.xX|395/0 }?rʛlD ",# ۙ~wfqU2y!Lזd7p ٰbO ;K _Pj4ϔ0,ĐX5_ybqPYtjMUN:c8=O7{prc=M`rut RqP AfI6k4V1FXGT ipJKS~X4KU=٣qJb^.A%Q耚IU+uJ0ꄈR/Qc})MEtd3nj :AhDž6rۛ\i(-7ʒAțJ_w9gE^.1 UcVyZG.ȠG__3_CW޴~tX47DNhjW3biX98Ye#QC7mL|@ OÍSZIڤ!9c(Liu'S~[֏RPi>m`kpKPxLhhm egnT;VOčzL[d%m$]x[|'W>BLHkwh_ˉ,d!|]qFy 63˨݄zȟQA\CAҿ7MCJ=FN){K?oWʮkݑ^hUՐD|6-ˏOowQy'ݮ/%ߐCDx2ߖ~8 .o&9IG-+ql Oа"1a @RU2-Np$ 4#ohS澓1@1 OJE7Qk^Kh'uLQW9Kքj{aC".M[) _ M#q4@E5qLދ`wG2&dK+P|y0:= dk$UL6¥p/b1V$0ho]K[7IĊ,o-"-|:i; E3V/&c9q[gLQT,| {zp[/]̉b!Y`[=K PNCZ(THS7*{1zV9fve__B?=we`{QХ?h_a .>$sB[=*MO*._ʲ6QXhƭqXhY61Cpľ =&wox]-SGhwE&ցa, MGG$0T2 fX⍿|ah؃y֜yaH*:QI}j1 -;&1"Q2hZֵ2>"B^Ҟo*B0$+U?cֽne9q9Լ8H-op<۳TQ)-b~O#8%$F_cAWcUUʎ #B:b`,_Z~H4!6ew#L U7f4?VIWU 6b#u ќ\p׳ 5> AGzzGw`f>8/y -͠0uE zk(GxN T>"z1sXs9N| Rw=tY!8I0UQDo<28xRsig7kygaFRtUz)5P4W IPѬ^a ń-`1PZS:G%GH佋N`K}֢ߤ bŨ.<]K, ,m$"8KP,tp"REEL(2 ~ggCpJSWcTv1K'(9'b)m?:(Y 6Gn4@O͡ l*L-Wc5@q (`a h6ްA]2jhtsVG*E7%ZN Np3ހCW1%#"ID mn>=hIXe|HcIK1S*[ꕚDPbb511VLNhS}&7ѺsOz@"H\ù{, o;$c 9Fe֙F[篨F'igBde1VƓw{srt':oЎiWQGj 3dIL0GRڢ;Ǣhh}$S3Qa) $f̔g효~.p},_95h|Lx0GI[5A6\ڶlՎ?V[ j6I1+N~C7O]^ћ/M6^j"3,VԻ`l`H9SNt2B>!WWvRh:m9eB櫴ZF2ţZmy%?{h)Q,{UGDwSCAUOߞ30ъlVrE:RȖb[âEռG LSbDjG_YoKhܹRLr^RP.ZB=^{@,0H@]slZݬU|Cl IkD6[DS2/z6ai@ypdrİ'A~ʾqہDǔe}AgHW #ɉ]~x}žS;p 4Dqe.Λ5&9#dщD\ O-)e@7U'!n'ԇB2jJAR ekaղxsTo~bʐMKBP\aO."FRܽʫ=r n<ɜlZ.#7 Eײ;p=evgw)9wKɚ3U4A99i>-А&!fQ}uX4_L~}޿X#d[ 48/'abTcA/@PS򿙒ߥ+n)oTwsܧvOoV,3ˌЂ UeAo֭KD25{W@ӛCAI/n YutG Sꑆv1\v (Ge(9w]ׄdgX&V=[CM;M r14EhswD3Yet Ȭ cUo<"ԀG#L|F:V9@ {?e:u[*8P*|f%8uWCZN&Z=ֳ4$a1ɂ?Iz>}=c6)#֧ g+eq \uqIy;1k'0y,K5wjѿ L FAsy9&jE+Ț1mQgzE?[/CXOȔ.v!k+1xvbKc0i렌4 yו&, Ȁۿ#ĸnd8R~ ҕr;>[=zKwb qc6ۅ~^ 2b.?sM/R \maOvpAǚi<: e~pT.l7Jk}LP n Nt=c?d^`hܸ߿r W.zo⊿g[`m -Es&^)_םdֱ&ɏL~LoU KM雺'-J=Vz$P@T7KcEi0ț__ݷkW%*d/[mq/.r :b=AD}Pz텣;+죪{.&[%ɥ6bM@4k_g>eNΝ/e]@E:k#ubڱFLxUL pwƧdvJn 3~ ްt .+;’&=I&@Iљ{|i=7\581"~7#6o\7jiFտr^O2uPX Q8A%3qj~%T=pgC,_ZOƝ5ɤf^w-H5 * sbj*58λ.biMk@(jWC+[*o:JFM獁%1XֳU?HK 7(G7q4hOGF*`{PvW?WQ9/vtU[H.4۔O1W ?zK<4jo ڤQWR}p̼"q nQ-)!ާWRt[?bd]N@G'm{B 2UE@1u38Y!;0BZT@jjxV+ffIbl)-!ӷ5kZv @T+Gd}^puA"*|!( |@XقѾ9p.*;J>qB'bsjH='{68'ǁ[&Wئ(4FdNjG++-h?y.k f nX[aS tMb[Vw!4A_Zc4hYYDWrH>̊/ TwrfQ/nKLw_"B˓+} Yjcw!or k8fN`V;yȬORIp;ܐ>.R:4 E6; q25"Wv/\s%bItR:pio<q*9#dU ^r['o9Zq#jݣ:cUi {)- wG\,;Xp ?po6Rrx+, #zN & zy*]$-6D7ڢ,_e:$)Iyt xG Xc?}w}NJ,;e< HF&v׋1 14+CP׾aݽ<ՀW')˨I`D:K-/qqՙӾQ9Hw fh}=C&eXIgXxOT9^YMT` MՍtszq`8FneॊI>̓:&{-sspχd坆V=MXQ{m90(Ύ'^`]0q%RP:ƽU)t\6r!2 vi >3ҹǿ&FMuql$l:-()'8w]WHW~wR([),$/G3TKm8d@*Wp!,ILS2;is)FR! `b giOKQՆ,-43W T<&k%]5X-=0y |68]}޴x@ 1mu({mgîA,oN:/mQ!*K?cX?#=c1p UM* >lQ%7&>ixYo:Ss1L#/+چTÄU:6fS@Tn3DDoep/)ncx0=V3Rz792*۫E`2X*Uu&֋a () j-fJu #hչRwG;.SՁ@H;[,fBÇ h\]4 =Zn!w9Px  Df4q^6"q1M">+jei0XGΨFWWwr_PZ_ًGWS ?1;\ًz=^* rere-;>`r]yD yOʐo&Ax1G]1LUIu0Q:havU9J0-8>)NbƑrV@msoS\}М; zE^`ao^.FMRqyCSAVЯ"Ǥ/7yƴ6+FFR'G-=@]w#I-}y25V&~*t <HgDܠuUɻ|x=^*p^LA/,G +=>LYvM"vT H(цጰŇ\sQ,p`Z 8pM KqGY؁R.; b rFե](?kEƜ_'Ckrbcg9GoHuQ6 Ցٹ6 % Ϙ#~F^ND@rͮgӇr";ySk-'SEwX}ũ(B kla^vW9r~$+uffw=dcyD#ڵ_/v#i< <P H Q3n>BǢk]}^*PkR >rgOE~J3DR @4Dيpt(T6 08txCؕ>Wh|*h*.;# Aӎ6Ai_r/J-B7F -,1ui_6:ȑj) -,k}]2aJ%š4—Zx^=dAuPp͐ Dz6Bp[tfXbr(J0#iƐ$6TT˿7vX'78[8äҶOpBc%>SS(,vZ V[@9 ?D(}.=mrIDW=Qd"8wV@ӻ!E ;D/q[u*N;R(o[b5)ҟ> Z؄+3D4aMOKxgyG妔֊567 ^@Ñ MgU?Gΰ<2w`g8,j\Iut>ܶI+L9I#Q  .s׏0On\P!]ŸC[ݽNuXՠj9Hq1Y <-X$t]lB;&@/H_vA.M/ '0usn/\lY^Dqr=mh-F@d!jKI_*xֈ~e=>=+nmۭ^I&OCoQ|Phb}1cDYGg$5{#ј [a|p2v'qj+14>3j=A7WPm3h p=7?wag!=+uCa[p#[L'E=( =_ju8f%#(G,'fþchEiկA"YZt?MU"tw9Q^ Czn\C˔^T̹i]x˫mkZ|Lvif^q ah5efuK9ºf)<9REEs5UK ͳ~Zz=&>=Ih}=̋y1Β5  NXG̔ݴ>Tp wi[cKۃbHC]tа`|K ?x(XAHx&hnaTmgUaO/z Kd0 ł%〡&d y͖Fzk^NV5 0ԇnR R3=Y" xjA)C"\tv',IC.<~_ͦb4!.Z U_o^E1$6!\ҚQHL P8e*Kkĕ9^f.zUl>^x7\J g I%pZ5= *U 6hPkfȍ=o8g'}7` AM0ɄQ=kU:GUlWV/ИAJS'Lww8z!2B=jSϼ74SgX&7\;[_[@N"_Wza.EHCkLOgapp>eRgL㻡cMx=u#}cWx\bt8!wmiN_M5v:lKf٬#^NɱT]oYĺ tcy ]tߋl&2"nȊC(u9>ɨcFe{ZX(gjQ.w6K{zr8ڄv`墹kߗJ{/"%*<"HǨp_GQ.Ӎ:)n)gMtӥssL oJϡ\:$**yYlG۬AX 7N=5G`Ja ܇ ZޚMoԛFnDl<ۘ0|wAQ#s ҡ! VіA%5fX ҫ/hXkX5`(@t3_}'hs9B&6B=eJC{g U׀}Nf7Ϥ{`Ahq"nw nw]$uAР! MD6ؽb\IoM/Wa1.)|j&N4R3Qj }Cb1:| @=APۜ$ H=BzxdזPQoʾ>?ެeOO[ ៵qI ђ7p2a dM#:NEgt8,LiCe,kt>M4lD]L~qAɅLD;S7ɲ0gr-1aah̨Q2~Z4iE6|;_& ?R [e$ ꆷz;PBsOoo? %3ڔQG+2{x0-XΏiX5`P <ȉwc1GL8J0-N ?kťEqnN^^pE??W$$;xĹiMnHĎ䛺 0dt PMtntZ~U6 E˜q-?CjOcKyhj@Y[~BVT@io-ʙ\T 5,C~VU=)3U&P+מ2^75VJ`Lx>U?"_'EW59/JX9>SH]Zf o!K`-ߋe.;[*W)v9fEtY6Š_kpEƬ/ q '5}p#5 [^htFGc{-88-ؚނPFwҡI XIWYOA0R6ϰm7Q}tHO1YҽvJV Ǜ126@駹<-aD;ԩH8s}gܷ ɂ4/;+ Q!J (cEWA~AlN]lFLI"@ RTC"ݵ]{W~L¢/W.qL!a:oVbLi^lBI t5X,p-Z#JwQ;gY_ErS]Q:a9?4=0OêF/g/>BaLXhZ,FMGƷQDyކ@ ԁH,rצ'Fϗx|/~[9==Vowi$)hPj{ 1Dy[sOWlШ֚1.MBs{S]uWywTMٙ\(}'dYPxep7nkz.|P@x˭J[hyUҽYXh4z*2dY٧!+K y^rqtf7S*H M,>ۢ7>uzMnvBڑ?#7Th >J3n{xϟ̰%3sMfS`'!磽~"T˰GZ"%%'"8/Y{)t{ *r_S,kV\UG˷Pkt&{:M  [PWOoz y}?:}CPfTdoM.˚%\!hCQn}5)LuV5+77E`R9+WNO *(7/v,1}lwڤ,—SQcۛdKT3^ݒ T3D.ę."Vߴ)D0΂W'$ WV"X8c$_yM0jcsTa)7h+Zc >)(q8ҝ`K kXdl7?S'>3kFRs.+vz! Raɛ9+FaCEǸW)F ;mMDI7-GJqZႻTNnfX+c^Bwcq(yFVpF)-|wϭD(`wPMm1xkToxޞq:5`qbyoIp2VH񥌘eH [ HG[h .xry8f-TCN)kT57=k<ə[)S,b ܋o%SQⅪ<.yo[ .?]ğN(v%E?mϏfQ a$Yfl݂'j ba7y%sʞ"/N(/'hcK@e @KpS8/>~O5ϱe瑆dI%k!RKD9Jkc^mXy NFuɩtN(j˜ 흯Xe{xl͔x?P*?/w{Ү:>8.5n;d¨K 㚮 8OHC^$|K\_գ(Ԇ=ߟr) ![0UJ{5i֮SڈTъs涗j[4a#4 hŜGGP L߭.mw)lT4ܓ+A{p E"YvV8m|;8r Cu Ub"Z\CW|(}Vo>^4EUruBc/xErڳBpH֏UNMgVW^8Zæ,VqZ F .R)R̳Z]e!S'7{ Z%p`7)ikֻ HhmV/ UF@?Sn X匾wyZ"z5 G# fqjh5_~ iv)&tz)9G7aq P_\'>낗Yq>0#~nP=P{h=V~\4-sᗵ츘lGj0?F`֥x (^-3cXZL}$݃A=(oȈڟqjTˎDn<`(',|F1ʸާďVJeUia:gIXM\"-Lx΃fz,oemb* r5 U$l5'{;O#Xb,ȤsE/k6J)^ J9EM}R 1'fi Q M vx&n:yןn1GL̡H\xf-;:qB%B vה t5Qu>DB//OjEm]4|lP2t=0RtZ.(D=Ə԰Bx7  Zc?dzAT>7@FbKTxK'EUZ]f)K͝RRz~|뫣,Yi5G~gfT(b )Dgv btU"ڃ~^b+se`;!gm쏔gcY%k/'a`E$z}E'^mSXzK@W K'ǹSu JiNC_vkR&bEt{lc?}hIjʔ[:"D4 DWH2h`R ;(aʧhS^jt|g8둋!fpaޜKK38 jڳNj"$}¢>5h˓EB|LzUdJ'"cwSCa#<߭VSm]X3A=`~!~k ཷt|妧D)mHMX3* !in qoqT䈃p>-GU8'6Xߝhbh2$pK"/fe/ESo,q">]_7-9򆒑Fx,5huc7˛P;Ϣh?$.ATfdZlLYWt%.M5eYR1[]T;yE*R̸[.qu(h]mNjTb%i @7=$Oe#0;D y5oGBV=cne)=+ e]{S.K1h}]zǯ¿߂EUp.vE~F`YaBAl++8 [~b7ۻ7{( IYKs^wzUeOJV"G[#[փS{n>[Q{& D%͚h~9@Uu$Tz Qv ik{?0X Dh[a#q:_0jҦїGMSc$\ASbOFPCa.:@ AoNwU63BL^E݈/U/rd Rw#8ZKJtB>Cюկ(*cmEpXul'U(+(VF[-D`~WwJ_T$[Sg~`Zb bQ>%4CM/qH\I4Mȸ7D`V::8Лi$]nSm!sh< JïZY#\ǫpyՀH]Gh8e {+W=3˅S?aV:f{}ukg٦?бr ̬aW_=5UEO(m0Z [k-`3*x/͜ M\b;Z!œ͜*,$ w:_u;S~mJ HeXO0Q7*B]*+~ Krh\-Dm!NxN!'$CrI^|1o . \qR&`Ռڝ#k$~."#G!(g|5d4Og?H0D!\7.K5ǿH^n$E!<"r.ߙv#͹M(.ikeͿҌzREQ *QMwN.Wiu$u ڝв!`wɖ$T!>T1/G~'K סx?|o#S3lPG] ?nӹ5B.8.rϪ)ԁtz&$Zf j3z >i l8kzbǼSEU~ ɐġC)Y c<`#Qm P`Or3c@3Kb ;J{i|Rnԯ Z=H`vjpt*?FŠ\;NQH컨qxm=y/X5) aKFǬ _L5s2-V5?RBth\.\~:4΁]+׆V}qS C(idzB<6:֯:JnxL-$.Ӑ[)֍] õe6۹"Xv&+=ޒQeDU.2SSgT8miM܏~X5v ɵ."TXL8!F nIjQb";UW'<ؔ=̯*&Ջc S6"\")ڣu$ 2 > -X3g\Z/|@ ^racn#+@d Y8; ,/;T@\==Xr2봜 qM7Ӻ'+K˯>N7o 32Z(E:5 i8V;iȥNYfK!k9Kܾ쐡 djrCTJSPziNw+(A]N=,$m19ȕm=+8ZR,H&)vir(&ӚM7?yi19=F2|99+d'B0,hu-8Rrʤ0LCɜau;+2;I1·f6Me8Ȩ|E ۇ!VCtHM4>ᡪkq &5R Јcv!ݭ~(~a/i_P_s, L~ֆI!PI*KTYY<1)id}BD%Y4"Td<5:, h^`F9%:5Z{7M]B0t*Xuѷk7msOX,p㍦|`O<,{ϒR4˸qmZJ=1N^tFPcp@={x_9z`N=/$ upJrhKSF˒R覅TRU5T9#b3!)[N!"C䭃 s YN"'W\MAS7/ De 1]A5+B8pC_b(y/E2~Nj%ʇb!}%>lᯮ"P.ed}OInRSMg-upWEpDwUlqinݼCz:u*ЅĤZfY{|u2J'!Ѵ\{NA%dUښ-U{(K1g 0, T)X# L \YրJFa0-BF_Ģ+ea,ʹk8!-L*+2PzPB$<6n߹"&[^ W>8bɰ8mlұ'hݐBn8\xk>A76i{e穫==1No/Quc@4l4" 07Ժ DvQDTfDٓzuwUeJEo(e?"P.@/g2U@jd.O|HgݞQʜ wt|! cPFWDet5ƋhNl'qKDU!ɣ8\Qt4Pmo4h'zI8[zXCCDv'T#:R+vwᥓhxr44i xKpɃBnz_8f%)+N!VK]œ:'%ᢉ$L{^M@u?F)R ([3ͩ=fŸI߯xdn'tI@pQ|7Mhـ gfc7ZN0MO "_=.8*|pucੂvpRY更NM0 伙Z"^Wia%t>InRHqc8V qV+sxD"/,~HDRSfbV6hߦ})cTa.jU9܁!Ǻ e*5:޽jzMI]^ˏ -g=ZqMTI2BO[T:%}`Nǹ [31M3 [R`z!Ișe@ܙIr&>^0d&<_JF  7ڲNwE:h-Q13vO+ ]wELVsxih6&AZg_I*$ԠS\]}ٌ{>rE<2XVEt鉧C7Q4'0"$sW |T5.} .sjW8Ēι]9mrM 5x NibBj'*Ƹ%Dg6)7vWY {&͏=y$eRR(10ssu e0PΑG- !U\gdгvlҽ >٬?.Zi&V-:֊G-p6[*MmwoB \_cy5Nu l+\g9]ź1 )**jfLpFѢʅIŬh-wb!Twv`>'H{At(neн{i;3>/TVܯCr,E]4L_z3펾Oq2aʡjDrwQ ֞c>}6 C ~Z1pc*υZ+潿 UZkI!Öw="˨16o{}8o.#XSVo* ш)@ s;3̲ʧU!-]T$ai֤E &6 C/#2#GF($ѕ;E6LGYlAn>rNAϩ$ABF)M˾ώ>p遈$"ҙhѢ=6߭3WD|Ȇrܰ֬doQrTQوi?Ǐ U6^27[ =%R(pP1DkoO0#"r#1oR6Z[{e~JZd86~vP=@iX^ DY iC.ȁNCņ/@uPGwSaR9聋>q%bTଃfuao6:Bռ)RkFkuժ掿UvD.E@$c>Xd nJ EMx$oʼn+}4}۳! ̣oazɏlD4{ɦf`S/fU!OooY/!U,TNNf>u ^vp HsvQ1]564yT0^F*fR|>${=Y߽J\ӷbfsQAoLV&UI>$bjf7!TevfdVB&]y̌pkxM Zwk3@gZ.GOlmfsdm4~AMnxt^Ve-t-4raH9p\B zg +7$2kݶևG`x@Hl|߉vH[뿗S*yۚ u}n6jTSN-d]\ҟ~G\pévSY])3ƩGtaBl;4fzh:EE:ev\D7hԳy\}\K6:L#{h?pH4h@{U.sNF4.FǙkWfc -'Z=M@'b H|zzu?TP.âGqxtvH۶lGMa ؞݂:d=)534:Vi"wy6$dpY͸?_S $ ~T>:nGl̬9c7hYSDAuPD@:`(3.nz7ܪ9C3sIfpg4c@oDeA $էς_y(.ױc3ͯMpBrx? az= O 4hЀ{H $Ä:7◷ `BF~f eb7(|zb52m$TW/Q)@^>:ޒs^n83m@0DFVF4F/q?vdOmcD !WSc8:z5A|.7~:)f,Ѿ2-.Ho05Mz,o;aļP;u@et†Y$%Dı6`\ .bcfukHrE$lF)eKc:%BKXpbq䚐,۠m]ՠU;_,H2sd11potk|ǔl+l6hѰ6t\3lc͏OH*g /C5[NVKCm4GmؕsOt@rR|a_YmG (OGOT ^Ed]V᪘M 3]^ h,%k[e~"βn^2OX;eƚ3Ͽk??#ٟ<$@X;Ӂ W̐Q$&ޑN\AɔO`TWs~9[.B/D~z&Mb]jI b\,_(lspx$AL0X{PcׂD]S8_p\+z9Rg^("&\b9\z\-Adg1rYՕV"/+D>ΰޜW#*K7ѱPA(4EPTo`6ƹfi~F`ĉ9x1١Ft\^??BJ OBSp ZnǢo獺+9P2>i-L/KeNQ [ _ V }0co[Pmr@8N>w^U\ŠN?1!]š: d&!"uy'y=QYaɄWl/xN|;ܮ4&ܖ7oF6LUEANs.IXܫ2h~# iWzuQP&@m*z 3(U` ` 4npz!BVSQX-\ !| yQcNGOl:J!UКo'h%|Ua ܖ1E$/(1-}TT d<7e {~dQl.DAzx$$chK~\il/q/9'ܛ * gmϱoATrGɰ| |A `6P֬ !7Nex]}0i;3_zMyMn98Ӑ*Һcӑp_ڀ.)R* Bg\h z0|Ç;LaXvq$:o=ɯ^<)ʼnPgTY&G?% .-WVr(cftvVSi64q6@Bdns1IB3׆β5mj1S[2m68NH5 Vdt8ͱR]j:`qk% pr_7/NfK4*{Tum,A,gySBs YtAP'FtU7) Ȗ i4|cnr bZxLFL_W C ,輲s];C5 G͔^QT/iǑuɵზeȀ=H ۩/(vL.g/@$ef{&A2vmps| T:I\#OiyOIׁwn{Qqn\o]`Y ZORR2mtVީ?$ݶ ɼkY :ymJqE/@Ɉ~ s&C+ ǁ"[0ђoy3C/;B(e{q Z?X+~)tlTW ]CO: WofjN_9Gu@ڨ\-?BPgǯ ; 3cͣ 3˒! KMކKԿN.<@`‘)wV1ط*f;t,]b[d>nwcyC]څբ#YcFWٳw˕e$k~/YŦc<<>p}Hl/KHƒ@wt3)(.d D5f}* )GjiAx%L  145a,鍂-݊ޓ.]\ҽQj~?]5rؼ eS!Q:g2.#!_uG8xҨ)P5(!NLs*smP *gSyr0&=[͖(v*׽Sq`~s eTRd[$np#gE's`3 DQ .cb&0APR,bނWI0Ԡnb7}4O[?j#)\ƺxo W c WJԔzV:w;/O u-v7_}xEu^zįbhd}9.49SRo֊Uv4@Mfw)5\rbf훯Ս ug)(K%*bφ&æ?^ZS32攲҃a:T{%>LXj 4P?fOcɶ@t&Ρ [ǶٰSOA y-(Km8d8^HQz S\]/_-0foh5vP|r?T-=0nY#׍y>M}Ԇr.ID/ٵщKva|{gmlCʘ:&hL6!ffG1}O4Ewi_;5҅478w,e]r0ңZZ4|H"j ^X;{#I]k 4E_;)V Hr8YMHtpݽ?m_Ce1$:#X!QWJn9-(&6y)L:y?Wi ;\l3|.? 8Hz^3V@;6 t2AEsYT ד ]0 ](tT0p#qUyϰu3"a-N&OZgfbel$S& jh z-N;.c+ q-J7GcurctoR/obPo:вQA33²K[Wu!$f-h,?{V">Rtt>I~Ds;.F0SGX҅hv-QTZ 2h11TjDox3)'0^ؓRrz۟X4]eԈ-r`R K9h{XjHOƱ$5RȔj{mU a2[M!=!{RvB 2h,pF%XT2Բ3Fh2SZ2Z\;ITVJ l`[d6Qǂ>vVJ l&ST]`~z7#Vp,a^i&ޭ2#l>$ 6{qqPRUi؇ ̜ww {OvxIt%RMb ~6ӍxjFT ҩGj}m)}P&^\ͪ@'E_Ua2+{PfmIr}<9*b3a>:jtΔO6JKz#>]9NM뎍pm.* I0:#GWxa-iiL L(!xeؿ(q6 vo8 oh(d1w4֚;N^֣O@E4IcC`[NQt]&[WȠa oBv&vT7/bS 34-!Z@Pց; \piaVG&$dcSw>5F *K޽-'Y"T gۊxApp7W*#r]Bꊐ<(,Etq\5ÊGN$*T4n$o^i0^32粴`V?ax+iXcm#[;tI[5G}-o1w0DؑȬQ$ L7UjBqNiƐΪeMlťi|rsGT-h$f}:O.r ֋'1&T${JDy OTp:TĮP (=IoH.oYMnV7MW*V>29%§kI4|'4b?bCb:iY^zU`o|CY<F GW  GΟnxS/{T v࠳FFܖ`߰^ُLC^ۥXO{B gt8c4̭A923k3󩰙0w6)U#Hu^U1r6]Ui#z~Lڎ[;y1WIl:Rjnl%g,ٸ$ frj3B:i,( agvvT|d1jE=24@aaa_ Pi$.[g F?;L}yz$5()xvEҗftd2TNXEL b-_Z|g2>p]y }SY j\m0neԤɡg¦%t={7hW }{ߗ1`R{$Z'd4y<AUks./]fHy9gtʵ]L/~QNԔWE~]3}&PŶ Gyw-Er-2CvkG"OtxERO5&."Pc a)V7=tũÄpj@ΐ_'=%"TӍpOO$jzKAjc@u ϕ9HGR4BUxF4i&߲.M\ZełBy)?0aiʁuer7g-܉ "dοWlL-h7:9֕; 2*Q`׀\aca#smZ#|ǘ+W4s7uAcwmfjV֮ }Ǣ1OxS@q/u Rŋ㳺?voh%W ZTf%i6/> H([4*qMx9!! RUwldzh*jdJ&SA09"F ZH C6:#א%Ik,>bS`f?d wa0%R-yU>Ƃq#^ 0FobN3tUrŻjT?!v=M6Wmb9ILwvVJI1y1D7̯̘w;I=tءTݗ(i=ؾ*Sdڑ$<8A'àLR=æ#wP^b[̑or5NDXY6T!tFƚh`zaeƀ Cd&̆svBrsfISgٻxM+:Vaސƀń95d?Ee0Mw )1"MZ%pc7l%ک=?x ;&WB=jhxMykncSPZG=)mnVA$ѼMGu*%h)Ʊ׽N{Fqw .^jv~ z^ xDza?k _A$ڌ *>:"º YBoZL@V5@1å >}i@&=_yh2[9Lme3{@J)W\i&󰝏"3&Q|9e qO{[z,/̽ҢG9JAxBRX7>Hj N PJ7n"oЎ-rJ] .A C`cz A]='glr\VG]ר(3@nLӐ-jEڋrLk [ud9'ڢ H5?vtBfӇC:/]?#@t-YLh{Ak*U >a~vZΉ$͘o,gJ$%!DJDmnh߽*jӔHa[C@>jޔ92YfW`EHj˅/;ؖycy]uz{UKD̨ʇ$4Q5*|j+m5;ĝh'8g3Xh«$Ґ}-W%Ҏ %߅iKԷ8}9(Qˉz(TFEo-9{W\U+ȇ2`n-D֪gM:PfQF7TD Pi\rzw<K]!Qs< p:Z/y G~<H߈3﷖w!nKхBl-ӓF56$>R3t~MOL0XCHqs8\C2Ƹ}?[OlI:AoB5zwIsS n qI)0%q;G'ImHaltƑPXztqfDaM4(Ӊ .ᬱ6C$eS6fV05p R՚\,qL )ȩ'+9ذ R5O܎vj&l5G,yzn$q>dB`Blh{@0`&}6^n`JJA?I&hjM.1Z%ma̖s<[]( -$7ok N&`uCiSw]YXtꨙX4Wst G*w`lȱ\.#}Cn؈1 ,Eh.3^:n+Vas yk`9_ ?Iq궍ư828[;ihc7!p?¸g9KXOA TEf"#*p X1DNL~3\)8K3ԝ]]\*g^Ln-4  T8պTMkso#**UO>`|b+jI=w?=Beii.4KSp(ʛ!O>TZxR(HhA=='(*_SǷ\pFdPjQW(Ei,Jʾjtwͨ3CR;I.uR?E+y V])6E7mۙHڡbH1Q5<>%a'H1' &~f,Z ˌ -w3Oy%æ12&xd(fhV 9wZ|3$x+rv6~U-[.mHX.k" $|P'=8æ2 y?(_I[El{| 'l|F hT ]VGґ2n-]-u-L,y+K݁ =#FɲQ\? N4C ~ؒNX*U5$"y}=դ ~m؂({ىpx2Y$BUɚhohzǤO^1zwvhD"91V*p"B,رU՘{DRQנvg'(1`.Q~ ٜ6kYYfĭ1{ \K׬k|Ne۔^aWu[黦tV㱺|eSI m5QBp[5>gm Mpz\=@VŕFl0w8Exq0RDH똘Y:Z YGe hc5rQx)67ZSb1?jĹ}1xt7Y$ع`\l(h3n%ϪZD:(GU;Krg{UESJÓ_Q]Mޣ&CάG%ieT/- lp"t-'\Мd4A$zq !6x P"iL`h|=hAI﮹q׏tnPQ?(fSg>!۹OQ|Vךt{4 v~(Y(ZK̲nmHVLjbIZ*8DH#+'\ͥ0b"qK{rnfqƿY< ,BS WX+^,nt69Ls5l5{vh$  3aߑ3I1yDKՄ?䲒s?qD`+j;{ٲkHL_FӠ, cd+a`ݶ;QrJONzC$l0LZv߇տ$ر^2s*.ȝ=SJFwItKc)< GGҔQO$ٔg%E }:٧rAܥJsbVR](RQt-*S߄L3-bu(3S66/Z'[3O "s6NXwxᓺD,LWh\DͶ&r?Q+E.T=}or`PYe2ƫ>}D#UpvzY2F/nlx#hBy,-} `șIctOzÄPeYWj(/kNE[t ^91 `U`< R irtp#Uha 25jJ}of$m[wyb-f<˶Z .1>4/HUJ2d4M 1>iwNLf0l"hOP?j+G;4oaU b9c')mC/"եFSD2={M_Q~3E1VEmgZ)iFgJ@TAaT7tlA88}6Vը$ɜe98X|YcXq}ӷFPmɷwA.>GX |_IN|/T>V%D JΪ)4U{_x75 ޽-HMǗipw1 /w#5pg+]WuYnЌ7f` ^ގ>-˧61#U-_EB`sTжu3_J=nGjyygy4.)t1ʃ6XP DD7ͩP;Z0i_F#pվǴW0x֦4 I$.p| "J5-oDxt&6s}ZZG#lE*Z8[ާ4_/u8}b$d@,OrOS/,4 & s@4=%X~'<` 2זUY/ކE$e' I-j ӡ$(jƅ 8sL|\;K 7៴ȅ`PZ\ D@~ O.3F &! 2+ {g $x>LHy}JKDYyݍˠ6g?R8yF2 oPu詬;]8g?WudmqxK9aZٹX}۠ _M^k #`-3Rwu"1Xfu =_Z-ft0TYgn M`y4 מt1;o?Q+Z;r 8cpk9rG9"@j864Ėž~1Sbbގkqou_ $Leu>ŇE#`ڼ &t&n2_#.!jwI#_MVh1s^!Ρê F*qN x7c+fD8>:qSrq,hfŰz`{_.цh4U"'Kxjb9cqs~曯5,T☵|bK8v~!;|K)͝] $wWku!nK,:g,~;Ѐ@Y`,.\U1(ml^ū '2rbtِD;J$lvpÂu{h.^_"I6"ۨߢ #Ʈ8lN RfR~Zl;ZA|2NcxY[{5*loR9?=GJmY.V/ I8L8[϶N/? ,vXQ%#RGė<6vq]Y-@sନtG9J+^by.q}FepMIE_<FS~rX6Hً}a4tvVt8:{rQG4LTI^Z0*%@5;꫘1?ڶwp݉SD@i-,um)yas6KwANST/Ma޺zzg¶b) ~2Ne^|\4?x y3qc Xz!0r ~o P2kˈ$r ヸR.y5S7` %M~Ji 9\kScǜjm`nneENS14}!X= *aB:-;t[x_h:Ũ"B2Tl?b2xҀHG\436 T̐"LhK4)~{w[7r+YڀH { UHpѡ-hivȤW,c6<ޅ4dC:#8^p8^=vcto0W^i3(Bst:)P/aa ;}םLkt6ƲEApUoPY-[\~'\֝ъ6"SuD~X|HL.\PLĩ3 #+tKlN, E IPYpf@>U2nޒ+026(R<`v ״쨏DކXb[7$[悾Tؙ"S鉗2="@:O+Mc2좬U9dVz`n"0 γvŅrbfװ8O0=\jT.U|#wjILJraqÙlv Rs,P_i bYRK,0}eއ̉!Klglu6hYbc|}-f^FJ_u?/cn*"ѿbX?$CΘdVOJ;},G, /{l[ t\Kyd/(\F &X ׅ2G7F$m 2 {:3Eޙ@ۭ j$$z@k3Xj*!r)q̴6!^YFA^g)LoE.~'BCaIm>pmX!k;~@r`7fOQji`| S<4jOppF?A> h2Ϭp*p>xLsS܋9?^i -0VTqt*f|/;ys7l4{;{)?;p,WEf?܍ DKR<.ٹhLYA.Oxp0VM YHFZ:>A̶^CQ=}ZG`Ƨ=Ṙ>s l=ַn/1`9dO$ϣ8 L Bt"\|Y6Qh!a[By nlݲD|DbQ †!Gn{yxH%YǕ D I|vpZ-xZmc;#"6'i43|&xud8Қ@ jwED\QP#V0 G]51c2Rځ23;L+CW\̫$rVfsu%t|<l*ߗc2^cf0:AtDFJ)*ĻtnS' -xH7 ]p^wQtFi*M^t S;77P?ʔ Z Xwx&BS 'ƌݹ #lv 1dyjpXɱ:sAL] w7VI#N>y~S>;%'%7;S:kAVP]3TʗSy؛hA( É菰*l,YQΏ`??Bܛ9BUz:^]"lãVZH;q&VP]/=4}iQ`>[~4~XyN-J=|]KA\gT)eU&o)C2[G0gȫ:~r,Ivzހ2"J:s7-\DpLS3X7*o"W: E 6!r:[jV+4b>gt-2 ~ t@`8ܗ v98P9 rL]&gCfTDMaN5 AʑNf8ךesb^Zg'S0(2̒.е%_?n߹'Ԁ}puZ q_UIT\:$y{X7@됓8 x;;l,iyfp̠a(@&v+ 7CwCst&Y|GD2&f@7!P'd0Ӱ&t ;B!Z h x-őӘ$82SeBlIeJv@n)8 oW%nsbKdmb):2[l8Jȷ۲ A5 aՙ F3:0Qeyz;ox~s@!/M!&Fյb=asqwǴsgn^f1{-)OxI.话筀ghu/6M't^<O`٫9 tA ۾[d{XėFF& Q%.HJ Z.ԡ{yD&CHYFa(Quu}DQ6oH/ɰqO,"R,]ln??1kV62eO'{9D"HtW}{495WL;0e9*}/+I ,&E >y9s6?)ڟV̤ 8?ª N&T C},nn:16y05&9CA<]mwUc|W Ӗ#l?Q2{ݥ޻CVX(-` ^;*53FQ.Ծ~\>FHNWA'>ͧ:`Llp:uY O(k.XgѼ7¤*wo%0T( !Fz9 ~ݣ0X~SWN7|+ލ|1Vۤn YU{T{ $昒i<ʾ* Al$pA_`3f**IyddM;l%'mDSM Jrm gެhi 0,bn"Qy4W$<=wǀ,V^[7 #L1g@(ԿdQ\ ')oşen`dR$B;_X6bgjq!9 :^tYx]e^)Sk5=;F5|ulQe jyv RQ HY̬lc2?/bm(F+-9@TMkB6V2F/5 Yl#J T$V)r1fGWݔ6uf?!쀶=]W3Rs)=tutwjBah[bNh'tzpsq>C9~힄g֠gL8;.y=80J#x$GQ}n.0U/ewzjQ휶%#[(a1}OUBN32_✄Y(yۘ# YgJ&+|~ ٿMn}Y䰹kEk8pSJ{NCM7re)n-[aW6']h怂v9 0EXwEd`)/ (ܾ ٫LiQbL¿ V*kAɑ9aڶkv(ÛR}dJ@5tΨ0ifY;g IIVU: +zWJ[DP,͂Ve`@6(bJrJlzH( EJK,qxwe|Ͽ)nDӾx0)3ag}M K<~Ԋ8#NLYí_A2B:\C ۜs ɤFDBYM#, ݺtwEsJJ[YW>8D5=6s3PZȰz/BAڒS8W Qs&#@w|l "v,pŋ'gH"cݯ8h u5B Ψ4ҋ@ fK]mql#yKLm0FK `cʪ`9j1&[vƽbr(!٘SB-]QsvZ2i&s6mkrɇW+$k;Eb?Z X7s!92a&{!t&^q-ʍ세9^()-iY.%GgYT: Sm()QoJbX}:Us0^E@rʕfЪ}kݰ+W _JP.-v։: >&L TZtM"Ta# ľYڨ,_ eI Lc Q0 ; OÑJWg7^ޜx;'58J-#`.YPdRDTAo;MND`٫]dΣuƐGQvԡ|aD><U0[S]|e|NDh% %.zWeNtqSZ8m)놜WmZ-5.7-!w!<b|D<  HxOo>lzLC21b$8՞= HfyZ L7.ܒ\T8o)aڵ1z D6gL=7[p=EѓχĂ7P~r]h8Bs9keG|6?oΰ|n(pnFSO9C`m/g]M)ikSɗXçh9d:\M |q|<(CjkU~lgD9O)v$wE14,6 >pu҆ ;?k)'5,EƟ^vDkAyN+j'dЍ(ðfH _6emF+F+ Ҵ%5iGխ tyg~jBPwGazz!3>h*58MX={>й4ҀjQ.I<j\&#>Gʕ!J<n;6%_x7m*;*1x7s=g7io~ WPޑKbTgboK2Gx.C-I4P5;zZe1bN +1[:?z]a<>,Zy̴?Nأa쐱+RW9+ֵn oTqW'QpzU\+D-9ѩn8AfK %}Lc(2Βf)©%M)z"] !&q%)x98[ԞK`MXVbob[a8a _,ul<⃨M .oC[ PuxCBYwJ}~x͘ $_{ z &Ѡȯi07m엉RF.zx1 .mo`X8RcԉDys.[ȫpƚncA )v؇hW3>YjzwxiDdĽ/u#rW0l!V.t&afErLjVP=-Tl@<'TpmtZZNDq7̥M~{OGwR (q2ҧ@8.tavp?1$ёEEܑk0\bC_)2I:6*QE*B9aoVJe5Jg(8N$ہ>'%M?!E /Eㆈa:]OMEo-i+_'KT[OpYYB^Xݸǭ!:U3_iU+WW76I4tNz˗d4sSUMg.9S ._hx!/5UQ OzO+ŋA;_(M s *ȒS3dڧE6a>?e> $VqʌOB~+vE]}u`6q:$2:Zpy6k֨ mj Fj&ox1>|܀ZNU"qxj{鎁٘.`@t+;;O੤4)8RNr$Ae{u;VH'J:01-gܕ.ݥ~#ݡ,sNmi+, ФَE#S^{%E\ x^5K{e&6-uNPH/ V |eηX2+=_Y"a>*> %jO|kC€yDJsLikLHqrBֿ1M Œĵ̥52MV'+և͗;@ȣ46nO(ve끻zP_ք1PlbO|ket&Ee[jV=mU=1 QQB^޺Z!vXPcm1ѥnjwSd`g$s}]"-{ET|Mk55|?$k2ݤbk.8r#ӸoI/'u6~iӸ;<&nwpxU$K*ryT,Z͙5ś_L>pnl&o1oC̹3W F..=*<:.'(JgX`YSsX1q 6 HXZe6NڙհrRf0=+EEN|wUzqxU-xBp8ϫNF[Xo{"/U<‹ɯi]6e@ ]qٸ0rG]$=>Ma@'"cZk9bh.h#-Īx{o x#Cb'A2dEt8e`b(EUPNY=#9N5; \Ɲ(}O*xc3 yPen9zNeL`)PocQH+8 YD*]cMڴ?i/nїρ9eu=Hh U-a[,NAM䟘DI,a "}UU <vauQb*1 ;ًZK@G!qޥ-MHJ̍j2WNn'LWssg5gԿG,I\Cz\Uѳ-Ӗ-~7LϲqlC+q'<\klEccDLWVˌ.`:BFףbnP87CzW-pO;@^7 W8 ͤPL5=}pf5#nʡLrjg㊦3xIG>䑴 u=!;K #W22>#Vz`9lC`ć"r fcxm5(C2b KF00c3{Ȇ=rHr|na޷ !]VV>/ޒCPubf]ǭP^SY-*"@H(jYLQl ީB:pEґhO N׊ky* ҽP V@e q91Ԥ4V%3p=,{nTR N[)<7Ns_]9-U 5OF~\ L3^p/Z]?ɀk=Z m&-)YI߈[Re+zWyz˳i_X \ZM1Zd+]K?fJ2AOa˪ʄj:,D8&Tݺ 䡒:-eP71%̍Tͺ120C/)( K"+ĮY*U WKF|)T&\*D)k( iRA*tZX+&ZH/5PmQoȂ]yUitԝ\l@<mzZN)GVq:_ Q.17D筨 nCi/~ ~pݍ xXZr0g8Iq(ab/@[CpsGi=ic.y@*^J)ʙ- O"nV8܈{1 dԪm<Ѩ`:](W$? dvǔ) 5mtzqN(]Af񇫾60)CuoMz[0ẒMI7)uR^W2ȳq ^QrBv_RpZ2*9pAlI,Mk_ p2@.,u R[mlY2W{O f֯+-yGo+!puoP7~.s&j2sM%OL)璶0mJFY|r LuǛkE.>FgԒeBV#>@iyJKli(;Ч g2WC;[gM;ڣt^f0t4 ٵ:!<7q[A7v^+8JOTAerM FfGg&U;oQ?tAL [5[@Fsj$hұ:Y1WWތ}__@O!M1=%6y㭏n ꜹ 6u:{iuw({_EzoD/юcc][w,tZ[hh0Ɩ,W±A{ީ[v o&6H]>)H1 ,[K/ǽ.G$lX4nJcq"ӈn&a-.y |hW}6 9ח`Ԅkٸ${͸SZjƝ"2'j/P xr/GΕDldʿj5 agJ|{_ FLm==G)ځOqHgQA3Ff.`0-jfwbwp#o_ 7/ o0;$͏gFJ7\TwmT-M*]"yy|(t{%#J!YVU[jk߆]Mw!V{B^Ky2@0Oesaa [yT !&}Epߎm@]N[]zCH)k oB->eR$,f%$ď 7j>eBjڏxB$Wq:$KLPJԉVc4#1JdXs,4dH|FvawH?Q%5_EK#='aqx9l68j*WO]B{_V Z|z,]:`0NרmA .yD?ǩ0.e)%7@-K棲"R2\VTKFxeo;t&X꾞=dlr o~fLWLTد8._QԵk ?Ōv"\4zno"Er7|xw,+&%GFǂ2m^M$]x UT$052Noql6}&O>Elq~&:A&ޫ kםWv,^V2:/}9hEex=փǔ#lύnRI0i}P M"~kPq%Z6~y.uxMfw2QfgJiOTd k̅.pnnLDIi`\q:&Y 9(\bk+X@m߮U>c&$Sj,pV498d&z<+.ͱ%l 6Lô #J2ؑV8q[o}Go1gs]UZ;Y$ t?co%Lgn&;xԅp:Q6DDut)V=>>kĥs}ۆ ܉}AW߀ ޜU56P,s{U)Vސ~<;f$dr&( >TW0{ݐ-d,arϯwabj=Nspk"oRf:顬D1sYeύ 8jUؔ2 ?BU ~j/3rzzM~6WROh~dMtM wx">'8DŽ5:3h*)ًqUHߕ'$\І0aFMܸͥd$\7 [6fQUI2.Ђ WY\ |6Pӫ;J%@?`Zh\?m[O qB뛨-켛Ǒ6*uz]͑LkuUѩ29CG^g<-9|t>JN4.Rx&v[8Z-VK ixtTi>{XYE!xgXʻ$GIvk&cD=M+0cѮc˳/ 1̀NRv穽1^Hj!}@g[\a%'<5m2.F. 77ڥgǯIgC)afˎx8~Z KlźOS@&|Oxȉ^w\=m*7<,Au 75fSRwAl"r6Cπۚ`ʈ۹eH NbX"LY}NۮBZs c~R޺DYS2 6 yR63,Ԥ*WB7} q T `vtYD42Λ^F)xXx,vWd=j1GG+0aS-dLV]R9}?&#!+Uj_&_1L{Tk+9ylQ1BwUغ :6V#!P-]-u-Fium*1VV a|_0fR73lUƨɲg~` *f$ڷ*"*E3@!}YOS(PK6)~V*T =yVj_nDȥ}(EI^{d edg-!C+\܎-l[./E.hKa4TʵpXHzСWQbSƅ<ܓLd! 9_<] LFSŻU pK/EY寡Mٔo5m»"3ν ־cʷ-7?1b[:/˟2D3c$]X$q)T;հ k,zCjXa~`?LjTwa5"b/`JS4;r_azT hSu~&қ(Y/`$*Mz~JAP 돷<90⣦xpw5*|:;Iޮ |@^,5r 0"{mڱp 'DAxu&%)36.re:z}' pX1(P# jsV D^;r"8FJCm ٻX{"KO-ѥrbe+Beyس+jڿ,݋ **4t%8{D:P1uBwalɡ;Xd z/7#Dy549G_֘HGIwx[чb\AYpFnk|#Wv<=fhftSLhp-l3 C&# ovn{^`g7P<DCd>b$~!g9qӢ8GxNϻ4ޛB/p1XeV"0eQܮXݘ#mb/xt"f10BكZݕ\[ &F0wUH,YƥyA Xb*P*/ʔ׬jzr6$! J+Qo7s_qtgÕ{'X3ppelRH昁8]L)ws^ty.KRqQK7jiCzFgPZ/Bɦu@Vʵ]aĴ Zw[D3>xN`]$Eň E ][h+Yu-ȀZitw iZK祛9Z9<& m dzRց'noQL.,oLcCv>cR}[ڦ]p3k&K6$A]*mCLG/Z*2wRr/FT XNn]h?r'﷔86< l @g` Z='Ni49a&Fr!?01HKV|HolKn2|U['/dt<<1Kદ@`2`3E 1+!R%C,e!.D&C7 Q#Y_fa0,Qf_g:_s[E.43?>~k}L*)fziQ X5vUPi 03`?\Yf5,TD6hl&Zc=)6av8+7.Ζ^\U둓 *BÔAeYjӒep^wz$=nKzaE%YTu|]1#Kp4?ɯ4*m6<q&r~T;h' # ݯ ̋9Fx|C/9 @l*[?#6S|ɋ֊S7x(0g d RsL0AÙQ^ I1{Yqp~b,'DClڌB(2όd}?.nBK&!_dY*˫;7Q\@ѬqRmjp"t)Qo- y30"iO 5eY8y$iT`c;u GOʾWH>yT驉%Ϝ?m!([<:A|#Ҽ#>(NqGمc|(P~.z#|rgZxN|J`Y`vӘwbny`E$gqO0Dt,.'uP.]3 A<z)?h k0vq `"W7R/ihfrNXD%ACvp#M3Vk?i3#R3Ew.Bm)?Jw5meu G -Of95>:M`Z`,gբs~-qtDWxWLQrV|N#9!n}Xel1v`O7qy¼H u/H|h}S35. oj{#R ʶM' NBoIhX>Z]1^cH̏NF= W-wjC I XbY5ʚ4lzZwx%_MgDQZ٭igomMQ :K8 h0W],NRnY)TˮTX CI.Z兔 rto<]Z8u;VuV)+멀Lkq$ͳ9 "5`esf H/osb͹_ɩ^7˳ "v6l^{o@lK:Z wh#hk%a*JJ \Q|0D#Gg 'R+x|zBH" )\ĺp}4.Tg: 0awX )K0|@ȗIRSp&MUS?+gLFogvD1i_~|d`1j#P]DyQ4.Y䎹LL4!Za·kimMA)e{!EûXn$l豃H!ZA" ^]G6:K;zZ~l9?p"Aʖk|~Yr\!o[@*"iM >H)1'^7e^嵌oc{l*G^źO$%Fi}~|#׍ #lA'e>>կƿs+G:6-?I)'!I_+JYjdiK{l~/)ĬZ#IΫnb:pw{^v `y}vР&MrX2W\Ju~@Täq(Kstr'Lƚ$`C|WHR>Ex%%_p% ;JG-k@}$%(A&)dƚd,$ pl,oEt3鯶@qϤI6SM;,wR)#tfX 8o{7[b~nl|.//&|ِNU>-%]tbDc- #ՀBCɌ״gjt=LtBH|yJ}NY>*ݪݩ],@wn;oݷ)HLÿ<tPc_~7)97ӔYf@a3f12@*sc҂!bKi2ЫHļ-׮mypqL/DˊY``[J2Rl~bFZBAdyL+BiF8V_O;n3&"b+;q?KA#]ѲCGO.cc *Yk3{/E?%B9B g 23!a1ϪdOeOTּdrs<ֽ:A"l>eUttcquҫ֜{΋ قT*EL. "#D ƽ;`pNxϋ6,>'12NoT3|vhY"hy]/= 77pLgb]4;n7Jhy_tq#h[[Pe!oG)ߓR[0ڣ}jK뉫$Ƈ'2MᏜ) ›ȕJ\%Ty7 ;-O|ܕ9 HFG*텙,\A2ia0wl%acW6@'4ިs/fȀMؾd ^D$MUL7ƾX3C+sIJ?^9<ﻇ/,~c;.4mMj^.]䞚P]H$t ^%$!YkQ_'8ix.%' d(V8|9@NUFa{RRI|3ͦOQ'^@`C0j}s_aLrR+nq`4W(4< OZE:Z>y#UuHF!n=}#g'y'R*2d#@W%YW 1bzci+X ѩX;.`_U3qH#l6uQQKk&d)hI/DcDOzj xқ .t-+BUpW9Kkfk#(.3@x"(TJ Ȓ( gvti%gT7JQ>;gCFV;qLlE_S'xVV.g~XIjRsU Wv6Ui[c"Qe$ING%ʌr`j7N]|Bv+`,9^t!%b upfW6 &7UVd}kL~p9LPxMCUS=xx$o,,T-{,RʿY.#*.#c&SQQ, Ax8O^j8E>d;uv&M״9-%ߍj\Z͟=d t氝\*HMIb<-1;*ߦVK%gg|>h+n>-'s'ڟ'GNY/=+˶`\I%{ڙBYCɚ<"`)qNG^` i{o.XTHvtP83#s.𿯚!b!r@nfA]nfs; $2{$W5tg3bkc ^5B'Uv]~&0DWox!Ɇ f;2SBCMX6 y_B+| Ӽ [@> [}`q\:0L×<qL?@KK4*m`$&hN IUO|=ZFs,uu±{qO/qjtFpnCN: 95LgH#-5%Ae&S.!j3 !`gf1|˜SqͻH?Yς 80@ R 2@@+o4_lڸ. 9/qȵ$(^2!I:a@9iaͶ0jΝ|dn_>-n^jԗumrlvwoHHw7gEi엤7\N:R^2c<mw,$?r/nIR42y}uUM#hPVmkZq~J,r$ىc.㬨0"uƖm֔K ~c[H1DPғrM}%ڲS|һ.w(gG<ׄ=gFZ˳IDBf6sgW@~1pTqz"-uwZVUb4No?FZzyFg*L;u+h;7cH.A򆩕a( л,7Fy $*^4lkL8Cp].G ,'`hVx-ѴS.fl"YLdP-՛0LqB ]8?Q|(Zɢ̝<%KzeW##ŠHigN٠i:;2Ɏf[}92G A \`bg= ӛXeohiVتGT/.N "%Lթqӵ;5}U*H8'dlvru /_d~L#gv(1w-P0[}Lp8K⿫`]!x4+#(SQC8Kq .Xqq̻*%@x]1RCH4W6έHDT?5FUI8X (u "rt|$^pR%vuŏ<;mA"-+3殰:˛=Ew`|w@p뮄nPv+N ;E}}qy|&ձ_hsj% ʋ_ʼyœYHh X3lj/ќwm-@b  5L !:lCM }Б吘7(`QO)h~}M\dڰ_iI! CER!A]c4_Eq"T΍'’x[!dky;_ɉgPj?ڋ$)JSQͩh1B[ ny0qKDI : 7sib%9 Ք6vBĕ'>7H;S}R(ޅ wdΑi~P2guk+Dဦ]БhuX_]syZqW(^jzC,!)E eiNOgy{iHλYvь9ɂD}ԹU[H@_OzsB~m& i1w -)ҕ2-(˫$c,~9GrNGv}m E4םk~;ʥxϮ$:"B·ӛ!xqe-X퉨+Wt4;WǁN01.Qeeu):^v2CP|_X#G?mf RNo5y. MjK͖ξ{ߕ>q-#҅>'gMPpf?&R=9E4^/O"O_8-WzMTl/A)v P軯N"cZ)KX0W.},%ambWx^*tzx_s 3H bZUx<1K <~|M=߷F)j+c+RM%Jy)K!3RiSzX/M+ȖɁEJ8PXe&fFy,;[ptX׬"`w76.G0phi$|WrMcI6O{GCKxHLElQ WkM|V#p!",=z))e#f##'A˸tKxƃ裍uMbYĶ?lIe0PܦiJ} JJ]ԮVoՎz Z L9hƈlSz#U{c q a4~xܳʦQسg5"ih?cbfz`Yn.xMkɈeQ}\1T<.釹Vv3"*{ & iiV G̵j8|nw7`gP”Ù`9W=еjDsҪ}ˬcv f+Ifel Ysކ /uEf{.xz TEF9JZ<'!0201qţ.7vlP. ·Nnr0⥄SaT.p3RA;B|dδz .*gJ(FhN$ ZxCvv&?g\hcO7'Ȅ3swy74>)D% K?I*F9hoEζ!R/ wp.L#.(mYurY'wNk~dpw[N0&B +H- F<)%ufН(+FsFUexyWIGF} pYPh~2_T X13F4paQjޏk\wyJ7 !-e< pwN:F&3ƍ쾝ۥd nM@"3iA)eoC펮r[+ZUu{{u! ʄ"/q ()kI>k7uT:nfSA<*x.Ol5r2hkĻgҘ9·!T9VZ?o;\q*/X&NKUlJrjHM}*GxI. ʻ^Fv^ҐNhA0d@`˳/>T%#ίCdYT^"2S0<ӛ=1Ήkj}E'Š_ù)HA,%]ge& V7^ W#0M }fP@̏(^ $0B+w_\KjJoӺ݋q l5<6۵CՍI>faz &girXXtf,V5nLףSó`_e \qF+EiGQ:)dᷰ7y [湘$vi-LQkdAYv_aUZ6hqrBLX \pvl=̝7%?I&84?UE[fJ)+ B/Xi1*&' ߈Gv8'%}IX G++i[{‘ASv/WT0>om?e0wXg kzo9|vP~,K#a%zqhxh02%NB ԢÑH0mow&0c󞤌q#ߥ-:\ڕT`yA/* Rf4WO˻BH긒.Zfb6>p2jYH i2ڦ]{y2EAJ\*tD@-m%$G3=c˽e}]/nal1u͸Hα[kp%x[uţGI\K/_JV1<WW+]XCbt],,]FυM D/@w} )R5]!fxT@롟#*î$׾ۺQ3K< dǤV].Wi91@̑#gv yM&5UvݝCkt5C{ 9^cT.?oTMnpdٳÚܩgu~nd !PN_ >0m!.4A4(vi?Z¡}K9$sY-aԝ@{5 kMg;OSv A#Tio4  녘eW[rwd66]ǹ ۛjDl+O A&:+=5”ZHZvpӐpb )a?EPKrB9PڕpdTv`  "IK%DZ(U67(Rqgַf눲+2vr'z#!RU(}3E?T5mGh-؊ T6aw&@[Yoܵf >}:th:V,7]ȽӶ+Kk}eU*6;2? UL P1USroN(=owK,]XnTaP/GXhޓ+W^op`4=Cݎ[B $~j *9J"! \qme/,0&0N~;v~Â^FIqf.5~8sllg\'/! H~MqoRg͡hgJBM3jz ~ |-,1"rFpKcgG7"1zD bn`; :94댃AHHP ؒȘJ4q"}l w*;wJhȠLܞr6xAΐ'.e(Pqr_vZ 2'_R8h6V- öpnkVBN]I I6r4Ry( u޲5ruL{\t8S3Y*1bnLvNGG#_}-~&B )?eĕ["L6@U/z bp-Ѻ[)X!oW4)/uY{xCCB6<WQoы筊ơ{gurK:Yg O 0 h ^He:Vrњ-f$P8  IsSTq/bMƵ+-v]89K0{(&ªD/4%UfT emQ. V_1Ųteqq Q{~uǎT% T$+,>)͞'khHaq{To nt 1qcfsO&wJqOixdzT/*)7|>*("AwI6qfv,c5F 2/J1n\m3 NLNsuCPEo;gWxebq(5ǩ"n/iI7h-G+]mU/h]dj+Ii~e`o"LUmR*{4pi@+X g)Ս,x`}} 3T! ,R0Y7EU.u fD mutU>Haȱ '(Xp _,8nC,o@Bv5aeIhV[ e|pnAҬk3ᱟؚ9y\&]#f5WE[BtHRgNd$2GNK&ʏv4l٧0y- HokLșE/+&vk'MrY'/.;\ +.5C!n_eq}G iMr&_O =ĝz-%:6'z^Dq7p- i)[R0X($:-=aqK>y*9;ԻgacjUB~oyEDRXpgG լ\o*Zx˥<^a=J\+6L.e%rst40j+e++@UE(GۧSi;xSU9輒h0S[=ɒ ϱhE)eK3kT>$;glm(?*SD{YgZ ֿL;pFS%2{+߉q< 6#|91v.IU8b;f҄ ڻuO jWΒjY˓RF>C]^BAh"O{DccrN.FY*@)Zt/L2 Mﳗõ}_RfZﳡ7mVoB* UcĢƄ,SqΟkYw<:Bs,A*G(`UF̠4ߜlvK"qv5Cw *q|e_VS"WӸa6 ~rýeƉG爿T9$MѳT5 9?ȑ,sP[W4(_k"qr:|$3af$ɿM _Pz!u06Sus{򶰁 FUS<ʁ%\[5{f$HX^fAnԤ3#4آ=Z?,“L8[ģ.O-Uonnu-]\,/_u>'7s'_'% ,^r)ʧ<O4'Ҿ}5}W$WA eWRN|87Y+w' >X;:%@ɓ}Q50w\ [q|9T~Ʃ`; 0;#WZ=[BM2ndǷSvyqydl@/ʃh !ǞDADqmB܌J *ZBUTewibTm=uoLbA :rҦi>I Ndx\qk`8һMb{f sHHt)]RfvɄ*W?$Sp +a}oЪ|@p$!%aĶy]@> qAk)ʰrpnFѬմ8r/͸szj3si!+Axbނ]̝|u(\5ND3ttU6 OU=/t16rĪ7[*X(2gSʩw YMKiQ3GN㮝yXRWt5-vqAF@~b,nU !v@-vuHLFՊra;c.‹~y -PjRp<Ԯ[uo[g5~AlFY+>te"n_|C^HCghQW<9,M\@4(wI32n0/s[z,_xɧS>'3RH_::K!<f9YVKX`¾Qҵ*y:/@2em1dT}NT90+ƚ>wWC{aS#`M:7se`0UDƹq2 K~+Q菴P р9UYѓ "c)Ri0BQ?[WVG{IU}+ :.N&'ŕJp*@iXx ͆EU^|QHCps^,A)~ѫC$YUe.[Z@ l(<&j -9q'xɇ-zFf@U$KC"8řYUd}$JgGjF"^*ޝ{pl*fmcID(][<9%?ғ LJݨq\lU-E5ctܵ\5u%?+ɮgH9.^wo-gq!cq~4e=^tcq^)F9)y<(rm*8wn5&:'HkS z!<b*{ǹGȻEԫi)n@jE0ͻ8>V}>yŧ/:6Z19nCGPCy9)Z7ʊDүnN]:Q}<{1;ehbWN1VqAI% #+> U!R ='Z蘪t#6s_AI$NGEiE';RE_VrB7%~^sQ0T6X,RSF՛SHқtFJ[r̝a[Cn0NU|U-зs7mCb8/Yv5 +bO$q(Lbu.IE.#>(Nq1D^vFĤ:@UnyΧ;aK/,H:j/~ϝu.]JÕw f?UeTP&`),xOUe#b;A:!KeY\CS#ؕ)%N6cu 9"0oK7}e KaYRktB9VTESŷ  Yь0rwu*`<@T1mJ E}XW9U=sn ܱ~+ #K)> P7<aL0Y2TߛPb˜HfC`޾@l=h M>'ApOYV^<`b8Y6fvS^g,}\ cƹ]gT*ŷL-ׂvT')^E:Jl|.A0VmNԇlS;C̬'F.4& 4=_T):c6{Qt#=+)_G^z9[ 32+ٺ/屫DЛIxZ¶ΝNiWVǗeS.y|n`3AK9 _sNq[o\V|AډN#&V;DEދ[$mR}oFE]Vy+ժbPRC>{Q=F@x3 E+RWbV|e92#Cċ@nƿtq"P81Ւ &2Es*M!]R J!Y | qzw624Cw&Z׀VԁtuĕLGx&[Qe#JV+`){nPk@z{hoRhzqoί3LmTO)ǤC86-~  Oo,Acc>SgŐ=r&,=5/N:@dSViC}KZᑓOBC{V4gL2R  YlcT`\uVU}qE,@ 䕓G:9L&>KfEG=ET+|&Pe>:z vaQ4O"{LSM"fMmCW)yd'a $Dೌ U Vj!kT.Q"r3ɁNQb:j_EV2MF=O9%N?;]f%U5i2Fi7QL DUJ%G'?)w0Z rD" 4aZT#.G-/hDq솵|{? dIShI1ǣc>QhE@|Hm͊΁,z>2+~.AK4}4'R o[]8_q4#BBK: |ߐBVyi S46fzopDGx&J`S>1F9TXwaT뱽+>W1jo^_v`H o$ZUVBRF5ܟ!L+:Hmcth([RGYJK~kp $~PϟDGsm*U*tBR(t Ԏ4|TvٻZ̴#w:w rX,9RKO蜜BէWYH{Ÿ ?SU|Fj8 S.M K'Nd{`,fsXf9wk<(͆Ft3BqP1~˾kH@D+yۼ5=G)}DCRQ=)I,e-)bcd(=-nQ9З%?dgftdVll+"#6.DKQrz?:L?. #'3KG-Yo% dxH_Bb8&s)L@#jrb \$TbaK;Yĝ wbc!LOJMYy׼XDT.V†J>㜓}%5? S&(t4_l\U@3&`ފv!1,OxFrP —4#5ӳlZ9Z#Zf***M|.l g-]|&Dn,syX|pF{8~tn*Ci[3IŇ+gXt]'k-I)L ZSGtlVqKwX*dnS+2PL<D8ԻQΝ<} mdq*9;&ըOPU@vQQE9IݲMxzrV]Fy|3<hi'w Q'0-b]r}g) k1l@|oYKt۩7,-@닏n#19 /"dfU]r~rQ*I6&[7IjWxy\S t^"<z15ʊ%$&SoACXH2=' AhKH2;wvs7r/`A+҇UM qR7E"Cv0U㜅Sr!Z4>gv4֤3dVSu +$('``8{g :q9#Re'Mf vfs~壏QGf)NQo 9-IFs Zʃ2L͑NN'/GpKT_IieHZ" q)).E2<EȄR"Wa  '(Եg?=jXNʼH%˴=<)Yekvfn6et?}O6]_䙀C#دe0@LY3"dlݴ[9=llr$ ^0V\Mxoz!6v "ݬw9RXeRŐɓox$F`?6O9kB8ZUa5a +/oϮnH_oJEp뵼3b‚23N9 "9إKڅrF9H_؛W6:=xȄ A /(pqR B-!$Mn-'yReRtfD&YoY gƟ*(X[3ono3&0Y!.ZdEmu~ I4^;OǬ8AzRC~CqOwDNHKXk%meIsݽpLhf)5o._Y& Kهl<+hEN6-WX: ^wcUuQ e3Dre_m+]iw$>\euTWԣZɗZ],Ġ| A+p^ $ٵI, -U1π`Bg-uMMҩɼD=6hG6$:\A,>) e)#Ng4T]80ÞcyOYwƇ LL% nnǟȆK[65W=o7E7rYs.3$p{d!KG8PvT ډeQTNEoЇ˞5"1ęss&>{MH:.`%yѝ pHӴ?ݦY{-M~³ə]}qTmEu #zlP@d_fHٌIZdhIʊpDDl<~l_3H{I"{1G/*om<ڰVrm\'~% ҹX?{R$_Eɩ> :tKf&+>98]I;? -9:P vC'.ρy&?~ - T9`9-NF CTWΊ ;tͭܺ%obڋcB [ҝQI%x Ȕz0߃XEU 4Br GfmN? 1t#ÓZ:YY H}`xPc\lU5P o!hy;8efA "1XT>g!L:N-Mz*/z\ItPXUAVzdEY+3ea-0<]hQN]?r5ࣷ. (\yO;@9m V7T:iuCH741i4Y=Ӡf\'L_vq'[VI]0e7҉NRss60xR I6|i¦Am]Q>Ԝ1s'yn.0얽wr;TDJzЗ 3EUߐ\` [d'_՛2nsS ,ȼּ`JrJUmzT::\L>3 xW_qG~00pb́@}YIAƯ\=A #/23&d$zA?*3Abls9z;V^_~a:[u4Gry`6|yFx <]Rybk&?*ki>Z"w03Ʌm0B+ZLX`3l ~RL0<(K}R-6g?=Qd33x<},C7 !SYWD(L|{ϑS4ٸZPK{{ܗ.1i9>^ ߚ̓W Ssi"0mPk/[8hqAǠ݀糎˥Iz5:AZETL~]k'C#P2΃|y/zr( ҄޳'8EK!*x%f{ӉC.b_6 PBNg<ٕѲK`F*0CaT)^kr2ZcNnVӴaN&;q2lжPSя.QL8N e$hЖ1W<_NYt{ &(N =:DC1J5,|{TyPkjU!FWZ|1o~lwɬY׎08 ȸοَ6n%(oˈ-1,\]pzS_tMt@[䳴 =V FPnΌ=څx59c+ Er$l>jZ4c*:&$X8M$##׃[ej6W2"U=jg}7o^dW\#'bDXtKx e $5Iaq;\D2 B\PGȪAPs}ζRˠbQt쭕r?*j?g@|XZ[5dݛpD!Ϣ[,709 9 9&SIoRe}|?vXuN)fŐY^86[͝VAIi`H$J ѐg-Ge*? &W(A<+mJ\dBp1?E[L.CMZLMز/mKAHgj AlX@ \Sqr}ij'Avu^>N|I=`Ȓ͞p\l͛y\R$졶1 KRFBcUǫL#&+-0{..VawLqć\!ôӄ%/& qF06لO5 0?WOm:3J ^8s}^8k[$4mAkUkIjI*_au3((9@",% YJAy ZkpT,g\`985(̹5ǀ)@  Xm_|0WQ6g0UyqnhP@|ghyk A!pkKfN3;7!3+pplYZ2no%e&߶!)Zy[ݔgVID:9#$w, kǴCy s͆&|>ͱYN8ňf A &#a#< '~87 0^s=x ) g!ktrMƑU10A)Y쉢 ΥPx^jv J\ d@ Κ{uzZ܌c94se Utm$qnX.'h :a^©RPC{c޺dcF$*Toi20RX[B‰Cj?fq/Zy3Љ ݦi؛>ٽ h+u0hSӏ6{Vl6ft8XX}d$=M>@At,¶/kO >:hTzt:.:bH2 ՝g[ZHIBy2F7%q i`=*ҁ^ ET?"-5T,ò9sP"J>GC>=cϱKZJ2vvLQ5w8H+\Xup9b֋paJ2-^v1!4< TCbA< m!tO >R)]O84,.d%\cLoo L6vųSn/YԎ47&g|Rn "9ցx f3( g Y"-5?(! Q!ݫ*i{NuW4>]K ,' ^IgFm>^@yFk  I Ix=NJZ&g;'_lǞ'gXhHeG~69'^X%o (*v[s1񎋂󮬁^2g3к,RjMk{pBscg;k.v>,_S }7:;Xļu1AsĐRNo߿wZ 5ӵneȗ`DRFċ4}hBAe%8Ҧ) E/V#?Wwa־` pwQ.@lT-+# &Sg qa6+l d3wrX*A2!+tqcn*}ً{+g۠O">< xqC$!;z'Cb3jGl~kcy HN)P'fhl w|A62Ae I$, t]px)1?y[[o3ӕo Պj[=$:|7r%`FF锰T֧x'-hF¯MY vd]϶(wǮOZ%Ä$u:j h}F˲x#7t uB 9,6\jPza4ۗiCK"v 4IۚN# f~qP) e;.V9*. ?E;yG}6aLcZ5-L]űX]d)0=RZ/Ua|*H> ݾ`># x,T{@%:`zt;HpG[n'0_'zoXr  2%:`H8|W7uU PP0y^X$ (-̒Ag:;-cp( FÐ=Uqib f $ 8[׏7MwtwO< ].ULDD"}[e6,PUY2; %rāEWI#wwEZYTol,F:*ƅQ}%@ JSZm4bH(iNV.n"WeKpC.6~MB !awe` W͏lH30UEZCZP.(ɩyo4}ⅼw 2>m\$6+&in,fNŵ *_zļXNvr [x)Oo5KVK$ AfSQ-hEۚ<~4(5wok|D^*Qjs"t/Gfy99żvpoQc՟2־b7"T/6\0WN8;bIO|XF1]7WF#VCbto' .ҩuљIrzt* +3óLuׯO廻77 v9:_b` .WK_ԺZ2{H--KN h&dt԰]!dkT*ۤH U, arб$HK4vtI9@x`WLxWϪD>cY=}' JJG>#D_FC*pⲨԿbo͑VvYm_lx)},% ɿ/.(jX\laMKO?8}T) 1kL[t (dCO>.q5P~4Giq/T;9g,E uYwg@gҠ.M&'\7\2aRh2lAYPmEQ} WCH*2E4o5MN߿1:< d: GR"ΒJ  ގFk4H}lm򸍬 |KxnzXA5UTt\ƻޣn 5NwH.}Qj:)ۅ @}0ym8I&m1LJz67~OSb>`giʘ (yms$#"w<)i)OFO\8M!W*IA-{Dx^'tbp!n/y <2s}#¸#;,xc9:ry"&h~Jbs.$K~h?{)83^׸ -Q\l_ogsCV.7_d85ò 6luQV ˣXn^/N?u؈A22LG[?.u;f}||/s5Oۑi,xN5:'(ñYP \< A_'$PKt`IHl3 KqN_lHuu|`.B7K3^1LhC*g4>&RwxOW7'-O5]Dʭjf@&ΌGrEgkvaA7 o~VpE`fP b)汪(5͐qla489ײ<;۹wxѡ9`DZjuWq{,3ޯļʌHA_P2st6>Sh'8T`MDE+hi i]*Sc!/+VEFZ8͢5t(<{N;k>"}JeOKRH;-CpVC ^n6U 770=AbpV!?bVe"qW.Kl:KN}e}k[x@N,qꢆ!n6ƹDO>pN9 4Սx;T P-C*mF3&`NAFi&Vt\r qt ̵7#N),\ո zӵ f ",^\t|-_@L kq ;lǚQbۍclF  fיj$9B#&2I̟+EOB0XE8 y}4ȏAߥFnΏ O?5BC ^OtH!(Բ )8-_Y9 j{V6INJG[_bT>û4Za;];P s:qAK&U땊"RcyIR:Y8va.)8KQ:[qb^x@ H02밣S{ztvhyhآ-%܎WѸ8ZsفX "5VQP3csOIx>χvO0Y8t&|K6;q 9BS4v2yjj-GљWFiڡo  v?u2tɅ8@1 7zn`,9$p{|J+3ƙ yu:G"1[uZƊ'&9۔W_]0ٞ֒GhbR#BG5cj6 WY}pe-J{aꄰ.mEW%`?:"jHz[li mqC .\?N`C@XZ Gj+`V4;\i=k/WWZ=am Y)UƠ\8/u.9bb&j>JAk q]31x.L GĖCJHNƥ]ܞ\d_՛ .>1N5H>/lb $Γa #L:%Cjá˙AA'by˙;B |LXaR)IL`"HBҚ/W@2ңq )ӷ1 EQr!MD9ihzq1<rj}"[w,[`.r\84bCG4 諀Qa4M)hӡZKY \F2a`Pa9( E=Y{ ²S ̯J­|2::>Í4äx!աBuSML."c[f@D?\㥥hx@^]-}=&¢%<@x@#JbkZN@7/XNm 6XaƄQH 0zc]Vؓ+x R}<"3EhE"XL@;YAҒúJw`  s fgzf4DdQXg[ͱP#Į-Kwv) vQ~nO~uƋKKMj#W(>N˽vt2gO:WeoЊ LCxރB9@JNQ2IZ E'&xz~v~Әwppr9#Ćy'v"q2YBwZ\Xbw֯ p|M G(Ow'O]{,Y""5A|M.FK,G΢(TSBvd8B.85V8'Zu5}bC:pFTOŹ{4h{sT&Dz B,Xٖ&ܭGܱ!5;ppyߚ7hG北iW>ʁ^gڽlf<c*B)?}I?=m&}4G{r ~ۺ{l꙰R?_423p]zxhNPV4s'mTFKG bfBGXH̉H(~tg,-$a~`|<=ݹ/~ ihxv8=NXAdօvz\6 $+92!>,4t ^7L Jd$!^ڻvc!)Bۇ 1@q[Ze Ct4X%AY='._#GCAbkθ̚ ϵeuF~o9f!I4'ZTo8kmQӧu!7R5"\=]coBF{Qd_2fܶuY`yMq%Q8GCVF,lCDhY[r': ] "=sƾwr_ܞli 8ܯR8zC \pCe֎$Ejܯ o T~)g2r 6E]}㹍I:brI%t~l];Ҋ //@^?ξS5l`Qj{*}lե "9{҃$~Iғpu;E\vHzU%!EƗ~SOZd ,"%l.I}Ge KGXno]LM:ar,UoxK Xr̙p/ zq:5iWF0Z g|B'Sn2SL(eȉl~Lq;9Y<^+!NCA&w}vǵY:sl|*oD,uRczxW) sf7r8By3_P/$Y_m@A.u_X $tI$1U,jK)~55E(/V8Zj⺄W,>, "0힃]d&ʳR{`(+%"\ذ QK=U㶶t<&o۽6Jiȱ^I^nXz>o|GS@NQ"L@ fdRc V\֍\ulƋ%θ5]KdL{̲O'<,+i~HSBqÖ s;=<&o֢6.jf@emnDz3;ntNQ ~嫁E}ᦾA꩷ߡC΂ABV.[;P|rhoUBdWmy Og0}ѤEE N1F k9pL< vTv'1nͦhtE&Pc*.d$ <8S$Jm`0>AѲJ2h;-E8=:0D5*s3ēys@u2k^M%F_bWohXeAn.Ngάxꍿƒϑ^ؘ9?Kū(0tCQ!hj=Y KG^>/f?_4(}\Ծ,#x^>^FAsY<2gyĪp.m .BCY ϿZ!}B}ٗ2pF7tPiH>Qv!gEZs&{bޕ}a^Ӷӵq= 8.i) YI!҈Il`^|(\fǶW}r%/1~ü׉YoB6]PXm/w.L]=HJ+BYQR)\!R(o9ZcGqyj_Ń-^[fm< c!Az OtbInRm#C@8,4O (K^= WM9M-aJb1`A T àʊb"c .Aޚ4jɌ[Lhlbdo~?9ʭP/݄[*D)˾_8nfR/2z:P$m 9BSx.1oA BSQ.G[Ћ27 vwZDQwgnH = SPV;| y2Fk{jQ*,rF܅zEurO"zߨ40e!is{?ʹ}2<܂k# ~i>As,$EN`7n$<ĦPeb_'D4$*qnf꤂Kbȧ_'XCfXxb>D˱z;o/S? sr/[>rMNnk%m۬Gc6XL3oɲ@L3h/S9|^[ |=ٿDL00Pb(HaGEB8;M;!,Rtl8:rW v'%|ET{5- o7^PUR2N.@0w#Q]z*&>BK[=Fvx#Jvu8Ror@]K| NVxn&:~[/y85W vQ g N1s@"5ɁR @Ika/g;ƞ34v4͇fƒ!&6Pf( >tZn17~>m %l {l"I&슅~ F'BM=BD{ KW4NdQ"GZTQ9cW46i^DxǛ3`쭢A,DXFy)= ,GdF!lj]^A6HO,"s;'}w1yν1Y`ggo=%fCm`r-ֱb`rJF"p[4WSr`{B{l҈_KNI(A]IX>ejnŽ"bH^Vt‡{؃fiJoXk`eX4O'͆Z/mKK;KDleQ;A} .Y@r@X&$~"<8 |x[! /* erri[%?ӷsLYQXOH%h`(JŭG{Ա9Hg.0 نGjwYEoO}G JAL+};4!K'' ͑! Kq8+P~s\"DxZ[̠ƵKVo7Y}ދ|J:x@&R ;3N&e-*:8 ڑRqb#bك o.>w@uY@'34+, LO-NZ"="L+\"t[mŨ>< &e [J%Iu :4Md[a >ke+ztS"rNɷu,9o>8 A h<& gpg!+ɴr2hb%3vї9.@iϭ?m'bD^:@6h0W÷@1)P+ ?~C1PZj:hϫpG802K?uiH Ghms Č 2\}9 i^!y2< H؀&J'^1#DՀf}sMx+YsO]Pzz;'t+Nǁa\ vMưrH<=W]8gŚ peBa]snm~9*&c,rX.eP1=ˤGI<_49`R{5z-E%a11?T ʣ\}0R~լGNMeU`<3?lkPB;v aSț(XkNk`%*  wE GN) PstfټM<{U -ol|Խ)=#(uY3УլW[i/ dQa-&\K-۹[lRZj锐7&S5.d$9!BmyO(#vtZ+e ;p-$_dTKJlJ#aL#K|qX5dm1!ڠE1-/%BBݥ:ca#05AA,g j IDRuJqsfi⣸u@&\&Fgf.6˄pa +c H ??O8Qj lOcƞ'"ܠ{gx~b5߉jZ.Ҟt>+*oO:k߇@{>x蚚QmEYP+{_C忬@H KX_~ma)>AN⻆Q](~Ce,J5+A gOD҇-/S׾T7cQKdl: Y1W`su&A b+MTiڊvXŸV^ѺuN`V%hӓk>~K\ 6r"@OWg@G:{+Ae>h.rm.5^2)qDesgjCQm5qЂ8i9?'eړוb|ܦ$kMS/*\5+fgL΁ q0 à|фB(g tڏ'GiHoXn<@Aek.K2`0#aoBz5ƲCkLȱ+\ BX2`_ uP)f?=R?你ὕk#[M|byC&fM>1iwQL86{qHpq;t9DCG8j3+eGEzQ`Abap Gh)jlg\"* }Aw(W7Z Wؿ0~\w"%!\XW/'XTܯy('V:^%8fW HCeə^^ >Oz`0'e,{+QrA"l 5&W.=TO$E;-P:y%@/鉝eHz&xۃ {:GF0215s_=j#wy03 *oЅ<*|mξ&ǠFvlK9_h&=mZD^#qkYYh b`A|N9`>QU9?$K ?Zm$j V *ĔOL1m*9abmg%K>%ˎJfѷR$yXһޯNvYߒ ϗ 1+iWdyQMAw1/'5'څi$GxQT4!{i9-6-p: ƪENfs'wGDղV6s4|xl4| ʋFAx)v-K%!^74ױoӿ]Uvd~6a5Q!wp k.~8g/ +^_xP:eǿ^ɚ794s΅op_!ܵm R^_YE1VhB3ۅZlByQ.6 3"SJurŌ 4.!8F.^=M 6WpBvƮbiBlj#Pl Ts8T%SQ0aYc #J)'e=1O䠫?T@ S9~j@Q,c/:| o> ރ=, xJ'fׅ.  I$uÞ>4J kHyaЗ)Khr9flr8:+*~ Ԉ~9{kyǺۑPm:٬ lz x^,)s$ryG$KtlBӂjvf͡XHCL:m>M1mW=-7줘0仙_Hz%u!GYy/dv00<|]fqd3d{D" ) By5«1l| d;'3g=8󶕇y+ԒɢR ?Zg-hSlC̒܊4_^P&.I/clݸr|i,whrMX4aTGD$^lZm ;uEh:id^o}`⇊h]+Be]- 7:0܊v0cc1ߎ2ќQfZ2lxrrjj%HGaWY tm&M"oLP/P=WUǏ[4 oE&,hB((~sg(`R7sc&#HX5eV?|R;]޿wEӇ.D"zADE4V*AfKcy}:cU&ٙ2: jQ (c& V00tŵ\7Gg_ǥ*-B0.gLu{xi#DJ6¹a7^%gSGYʲ .YaSݕݑI-KƘaJ$땥$[AB̗c-x4KT:Nw,+]2J@ueJqH%s:(0(nΗ⓷۰oF b;Uk ٫F7x$*?1wD';w;;KjK>/tx@Op{\lTtÙuqaAX.rޙl.I1PX@S;{-CD;'c0*Д6@S ؏s~\@MV8%(oVSա j ć k"R :bT|9'yl YjJC&OxGI3{A\f6UzakDe(*Jdj ίYUo\+VS9)׼eIR޻GoP;#ep+qp bz)l9أ$tRi 5T^k_cZjw/4QAOEԏU,Hױ*@wB\IJ ~A/rر;IGvHe,zhؑw s cbVϘ<{b_<"}ţKř +=2I $AeUp~?EI(4/ gr7w +=(ۯ&د3O+K0'FUF6ӧ{[akwϟ- &4\q! n0Pbm&їb@$=?.ET8R;{m-Z1a-3ڑEN9"\F3ydĒN9;3'K_ꛘJ9xs(R(G"YҭbA$iEe ſVx·"̏8NyN?c`1jFTyM:t|dkÞxͲ9 Ds6d9\G1 is0.Gh'fnyt^u;̘%uk ] r7nidZɵ7\-+ de%͋9qWLKf=? tv2$Hsn xqor ,AtqsSA "wq EB0ШE|o'ps0RBwԩ-4g/fd h}~RL{R*?l~}C˘aCoqF<+;-݆49(đ 7M_B!F=D(l- #Ã*&0-22a8Uq.L!é4"xt7yUW SBB }n$wldԦ#&i&A 19- ;oƝZ|Yg(jwZo hR#Qjn#PoRR.w !uhoG!0xaER M{/7;1波2VRb}%Q_Ƒhܼq3[u$1A\ '% ꆤY6g^|r`)hEKP|Q C%U k4H,-pA]t^͒vjF4.X'6o$Yf%b+ڻ<_%{߂8ǣ^ /{`aNi?:lڃ6p]Ԍ2+BTA8KYi;C!%'yD#׷i{EI 1X:KfMƊ)3js}}!-92ѳ/Wz@T;p3szz)sW^ʋڧ+`L y,_]O8vZҐE` 縳N5z5  @ L)DeF9?ƱU9 bYJ]5nQmݙ{mr9ry".$lz{͈㯎n W~U1:vDŽ. ]:lLHjUn.am_џ%X~+^Fh%9vJh!)01"OC@wj1RyjiVQF\o)xwR؂'Z Hb۠^N 92j^U-Q{ [/,- OmaG`"Em(Kdh-.@O|s],5c%$#LIACJxsa};lz~ ʝۭ MH=~&-I.KKuwH ת" 4NeT^!59~e}48ңXZZ$U N |¬c[ŝk](mETdAȹTݧC Z"][4:hqKXNA{}]H:O9Rb]4dNpLoBk^'g'J [ l윟ϩzLgRi3BϺ6n]1en0CأuD8Utc:t`-dJ//b'p~ \hnP;'z@+B ]oelR`rgh,/rF-[E0twHBn-:|U6 T/{Z|2O^ @'3F0Fv>M !y} dАv 8~Ak%hEoz $1S˃,z|OO~ (u_4/^;>tKh-~9EZI-(JQ' @jV&toPd 3ݢ(wh^~Up?k.m ;[1u1ԁR4UFی/D&Wڝԇ4R+0M"ߛ籲̐eRk1~4[B6چ5V*;T> ؏ ܈ƃ1%TlAY A2+L)=bkVw6@HwJv!˽ٽ%#h4B6lB-M6<OZp9U-2@{_4x- }Y(JiWd/jy Y1@`q ~F"I{kP^@Ku?`/:0R)S=A2%ժb$35Tnri(GW銄^m9%hYP 7Bf6`m9wT18&W4 ?b>B5D@Ec5P;v&%z{Wy:˰@zx mZA[@s̞dm'BoB !WZk ۮ)sr=0>΋Qo:&)ՙ[53?R.'N6=Ҡ̻)1E#]G3֨mxF \;),~g C3w inw3s)h?t19 \M-q+@2l^$ R@\2sA@gǞe(Cy 8sOUtPi.'naLXH ]gR)Gܨ}8'@gu3(oZr斃 ҧs+a'Nr [B#n +s4٨J^%ex$g!z,=+JaBq.J8^*Wכ$Y&6J &h]/}zɜO ),o͞2!gOY r&ޭuK-ӢU\5X{'. QiD9o)x4>U! j@Z{QV<'Y [ |Ķ(ϯ C0\<p.&xHCi',]9aF)?$s^VoOpr4s)W+6cRO%~WA=(YH˱uL 7 ؐ̎C:Nί!rj cF=Oģq (LYWF4~pVT$iQP+|*ƔCiFFi,~Q;uwy@/&ptQib?es} <6R ] gS\~%G]QK'{}NUX8ftx趕v< '{+H0} .Hy|CH!Y祃*~[1ORbcٛ!+v1e+ק tB "ruLJ #sDi"Ix^x6T+I+8a즂օrl)nlbJ(`a2!!.P1Ytrطjh0# 0K'y< [-us0P-.U[InOv(4TW; iٻްފx'htw|~TsJK6[.eG˒UOߠnW6\=aw'?`  ;s"OD dB KuCLĪM5ب%ܮBQ͌1d+`/D>O=x]ъReds6U}4vU&AJEؿ$Ճ{鯤Y=̎&>0in8_IX*#xQJ:4^9aE. |YrNCcǵZc٭NsOS<@ /)Ͱ/PKYtVr;& ن{k4!2 s&&>hv7x[rHGO.' I[q:%mrsUVa}h6P# GeGpa޾cy_@0* $-a7Wx-&)E8\lE>)\ϽέŬu+|4ٌ=sۈu?XϻI>Eu^K2L?,N,HsæٞIz. 㹗?kJF54xb8_s5"Vez<Ĕ@[W':,أbWV=r5olBO<(dwCxe$m@8@jLOQت:__4+-UHrJ1|_O u vK)saǎU8~^!zҏXA&C)4n=Uynuy]C>:}ӝؗÎz4I2v %F ۧM|[5f4.):l6 z z\T}EpEDkA)/.8Zh_BvL OgN}hX|8U{5 14% *)= ZFK rmxg[cY?Mhui_H:ghUc;G\y8j%^fΈIEHJ [#1hyݚ=НK Xڎj S/:}V#Y,Rnu#Q帴S/݈ɥ1Ә6LF2WXGݰ-ưo#0W4xAg}UR)P :SRY-""VEf3F͵r@6:qpL!~ʡk?܄\9@טd2e]_-,YC,߇]؛LB›B7.?_jc}/J1VqIBv<#)n]%FY^_@:X4KI_YΖT>.yӋmf+jGL]oz|CT7GvΫ km0)z"L'$)efHy!Q^rC=bF4#H{9ح$Ou,GXգeoH,t˪M⸙LyiS57HrX+q אsѺF7z@i[؁ -Mc`+pN-]Q4l/juޮ'Hj=>l pqOâ7|vďi5~A4"$r"9tT:G[y9N:?v08&8`UqN n[4mيrLR &"-F>XG W<=._6~?f447k8(I!ʗz5m:cOv Mh}*NB7z$MW%hކۿ;&=-P];"ōtJ# QƢ(0h=bp HG rs*JyI>r3R:NPI%8=J? jzHI;T|wOB*~g4Zcbу0Gs;:*力8=x0!п}a b^!"@ħs3urkKP/"O>cY7j`[ 5}pk*AVNFk_G'%lL7*ejVo_c(ef Q%I@"{U( u\I7y:?Dj!oչS4YquU:)Ļr]!Iҽ|kDC3m@ 3)Kɭ"L>_L:w_uS>^-a-å ol!_:h ,seRX#AvFvG2vOX߭q6<5+<^Waذsia sW +q]-CzgEY##F̟x 8dnAYf:E}WoNmS4/hǙ%|`-L'mJN O \IL )PīBY"eR>b6_K0BXrW6sR#htQRݟ<Se?PO<BV6AQa$*?`(W6/A A;~ ׅEEa*j)ov30@N&jw/hr8}7ZZcMUSV0iVJ*ٌiz 􈽠̽J^{Ƣda9?H=ga bi̎ '[Qo:Da Qmq?G_4~[az c+ tyg&[6]ͧ6"%Jbzig41UO['sV0t:Q7}reue6SC+PJcP sɓm%E[`[M='ҳEJ܎FQF*1^jlſn)2XK% K/hd[Nb3i7N <;UX%dZ"~xjR`VN2A]'U_y@2KM7)Ͽ 0LCcVl=%P<;n0smcvd&q*&ֹsY*/_ٱ3ҩGLS2$@E%2W{3X}ӤMBkt%*in}ĘhSQ}b4aӎo!; PF@L`~? rܰ0%eouQǞM2^{zf lZ5̈>s>u_L jN<̋^:xW]NT{3)Rڞ G],(~D!!Pgm3Ӕ,ISU=QO3α6+("zJj$AXK5Z`dQTG{?vYLuʰH*e3'G巋U+"3mx}E-y4n}Hj(=qU+M6MVe]9|x@~Vj 6[*4 ::~7#,`fٛ=-D_V?;__e6dɓe}Uxىn^h2mQwm:KCh_vN9?%DEFf}+ r}( sUNQne; p$*v Η 54|pqQUb&W4YuK/!LHHK.o"γ0áxk az/WbiI .䁱_a%fOzڟ=uup@."/ a6GwS ̈́$0̣Qee]OsJiuo9k(`vEY_*yjyvg1i/9/ߚO%GB+rr.SxesM  R|gBբ^I[,0{ d6F]ABֽ fYod$Mt[,p %\RnspXtӟ+t ` RjX6%hFfGlNxz°joN|;][F:IdF,GQU2E*QZ p7PaT5]M<2J Q̏E/g GN@bĂDG wM ûy4F];s ΙENy%gRĜ|%LI"v"Ԧ, djnZSd>%F6fJ[i@0`# M`٫7 :O%sΣU]hv.$\P`Rt,~8!0S2>v||7jux` ڎԬQkOpM;tMMQ08R %tf(\)sU3l ـ1-Tq}MgN^"ꕣW+'DsE}'4ɭBhYjg~aW1xL& "G, 2߾^QU%!%} }PNy'mlsvg3A%i?H[TCCG:M A%Y?^7D]yꊞr )'~&޸O_`m.u;T8dUiACBh~ |?"Skr4sb,Я- u& ^/Nz` `9c!|\s *3~s({vA\FT{řrp5RO+2\)I+ٰphlDlLk؇3udӼD<^e;tv.Ai*%凩ؽOd"qi| ^VHZ敇Aܮ8s'&|j [qkӮfmf 0 (bQsH$jlM_X;\c8iT3eM_ݭcqpx{<H:auE0s"  E؁(1"uD%k *nKȮ< [r}ޡ ӿ𽂡'᨞즳5 |xYtL7؏6!/r$Q!RƔ^rkd4Oc|p s>svzݷ@V$RqZ ŸrF`mC.zUӏEJ2քJ[ZwM"5jV-V3ߐU-ßzc:sBD=ibh4%jkK:!=9Y%cZ6/(uH55,ۑAn msX4,vjǍ+Geu>brڱLg2vnX Yteh r?\$^'ĪDŅ\.)"hbl,c**.|ֆ89zA4k̈ņ<,O *v&ctZ[ǘ k)>Y-\`Eca,k0jA{}_eR~)E&mqhLkLvY97ZQ&9q4᳤Q{JG(Xa0u{;@s-V"'FQC̨|ByK5#Asu/B]K`a;:B08ʀdT3:^M%R<2\P8gP𚔩UdW1aHgR Zq%Ķ7-N?mxD4},SN 4LYHr&( &M-bDDtpd\41+7 k T?MJB Ji&m"!H&ggoZ#殫5|%@H!G.oS2#ɧ{t]I6YWQ>} Nbc1> @tGHN2%V+f?cPRCآ]z?A~U ik}uDBgOT,3AACHs"/ӥْ?!fAy?ssiںD4Q8UWqFvNx4e5?myU:dQ x= = 9P3)Rw f4HPCAǍGw{r{&_5㿏'"SoȏVL dYDVqwA,d^/e*t:)D2ڞNd^K -n6U ؒm4Vewl1(Jz=gd10MSka44qVS$vȥM"}WD ]W'0z>X D5W/$u Il`f8&ѐ)L_lpa|y=!I'FxB0=I|b4בҒp؄2n9/*l\Or{5K#S[U7sA(:dZr<;k T=aGM mWAK)~*cJҒB1PES22҂wOWRYcݕI  Mъj&?GƅhvV=Bqm(D]uu =(j{JgVIz['oE4|FpUS, ~ML @tLİΜںU^}^mvm bpw-BmuʄEͦ. jPB'(3,珓47Sx$^? %';t*mՓd|S2h"ӽ!EUuN(lOA 0F8'DcOen !#=ȵչpYV5oH "o=tyyUDOt "zouER(U,2ML[)B@=l)E:`W(e)ѽj#Ŋ."ܑ>Hr(tA^15i~\M+~p$včLdP$|]ZlG3Nolthkаx>nȆd[tjþn 2rdkg/EַwgJ=AW0Dyj1C< jhJB~dLC#SjA5}RHU_Ϣj4[}p1 7-ٻq3Xw`K-/PC PRa(=<9<*7ŸϾ e9Zb@(̆eQn\Rƒyu ]9P٩ *,,]' 05/nU4.꿨|dO[f#={7W?1,yz!V#zɄ-SۇuLj[P=?$uQՇoHܠ@ى|{$:Wܫ*/0f84UQ|P6!8ڐkDÞ0qUk(1nGUn${~{xU>d} $J"\d[{k/kGϖ llaIJhx) p"}!~2=[R#pbqe̲R ƴbN -s5d&8(eoEq]zNKNx0/edtv{!_)![AJnX(zTBoy'/Q+;;XX˖f<h  Rt@fh5hzG8F\|ʒnvt!|WJǒ}Ҟ`J=]/VG}CC|sۛl7PoED7CPl9$M:WGԈ%`*b]ch XEq k9(3 c>ƞO:4%&xzE͜y$ ȂLfi+嬪n͒]7Rd\/0~eH_&zV?POHq8dMK#!ɱbxRH@M,KG mV M@&42;B%G3K>!!لǙ,! V/HV NƤHϥ$ӯI fcY]Evo4$%@r2+ bZ D6R͖c'^Mq7#SA ={BJ H'GD{y]DQ'Z@'QJ(.w~K3k}nJ4G&a`<ݜ!x H<2ob ?i {Ӓfܸ͎}e9{͒.?ET{%켣"Vr-Dםܑ'P%.ڜ`H WJ QuAk#кN{9<ĥxJ L.ywZY. \ Օ|xq\q 83OĖi.x"+ӗi(Cl=-8w|7,nϨH@'$s_;oN@m:5]eƫsĽ^ei}}/p#B9EM[̒B-k{"*>pg HWI*|_\$r.{; AQ OTډRf$t5c‡^vP|Jz[F#dUJ:TN7NF7-4 S. <0W ZU3yYrx=T8$&_vʋVmߺ>&R bJUhy(il $ֻ6dRJuJq>}49㋋mQ@c$5ۻC"ɽlK&[!mp7oiU08kA9rjS 5 gը{D;l*bKs0ICUވMdW>;wDm{VD/K&j ˓c+4j|}gWOlDCcyƯ]Y){L]ЏԱimoK$' Q03nH~d"NDdJm$*NnU)|nC;Ϗ# 8"i`s6@_ͪFC Ԋ_a"Eٯ!)Q0Z:JA_`\s+G,(9iJMs=M"띅EZKPOLW<5MXWG'"U\f/~ CKPSgQבn^C)W1n GPnG23!6s1ONHGQH[ӎ+w1fq5ɇ+gjI hC'-\g;Ɔ?VUX$&C >w~ghs~Fpa]A'4=g΃нVG;8B :$v߭DώK<!aܵ˱ uu0jIЇt^Nt+dycVkEƶ { ёB{O{9.f>Ԧz;>7`n$$\xT9tQȽȫILUNxv0PbϬ|1Fq/@i}z?F̽V*^ER15B8s]Ga"Q,d Yv尣m7Q:>C4׉.W7M6뀧zZLjU-Eib\zI:"($pSFkZ VB1@zMmQM|#MEtgc3g5/N|a5>`&NE,@ۅBnQDEN]\:AS"<.cԢc\ a{&3p&go; !_d/D4?A;z֦+i8ɮ.o&y$'Zo5۰"yKz<&#qaC<FIMxr4DVӷjq_mḐ-`](HB Xl/8x8f9UN틣؏Z3\mCd#QdqD7kn>6KoËN ےD}󯵰vxY u/rQ}` P9G%6s{Mc6S6W!ɋKKp:U"NK=BKMJQh@عʔ=5v!fc5^auwB0=EZ|MInӸ*:K%S #깊1 ^߲ WJ^čhe?ꊇU gB)L+B1-s&xٝƋ40 *-kH\.+   .[nΔ@~hGYÒ'\YAİ ÛO7axϷp GilC`NՒG&ULGTס>yIx%<'zoÃ֦eOLֲT/ UsE'C(TGF>oֽٗG%yyM8ϴ|0Ou7g6BaOIrI:QiZ(Xa~ 5sB桟.;noM@~n5-oFr)B;Ϥ{}zN ~ k#B8#zHvi|SXwY;7Ecv%T,I.vYDU Ý9 F=]8dz4(h,S5N>#yOlg\!$}؝#Ʋ%./>-{?AX*?> C  *XWTzrwQqon=aZn "j>C *w[UZO$wGNُr)XZ;b3,{vEMɒ>N:5hOtM:j9.Fw6k0RAQXNh:˅YLYmI``7ҝ%$nvwRN3`g<;PP-528*;å#Oh_"K<@9,^[0y^HHMBcx%A|i2I(BmnPL/kJgBm|Qۂa/5+mIٓgyb?) \VtnCfP#҈YاIh8" lah; WVby9ToDD/{-y[ m[h6p( ߈@u L'U,k1\Ğ7tRoF*qLBMS5cDkK9M?~Z;&F{#m5|9Y]lMfsw(G2N@Mҡ[aƟ-B]!d%ۤ"e?Mm {= ,r@F yN-p8=šGo%0Ż'oܛEVEГ4codI YqMPK>ΆNDqh)y$H 3nhABӵUCr4sQ r@{Lvۂ LbCznD(s~Z5 y>摌뙧,5\)]X")M6m? <59]f-tzî =Z$4ݬu{% chJr[.E6%iYD.Zb>usmҲEn`McB Я@ҜKNB72禡Q쯳PҒl1lIn~75¯XyHL#*>gJfr\jpXT}[̽+Cm4\9{{k\$Lpz\eF% wX]vN[8iU^ u!foBn̾}']TY+5uFڒ+z0XazDYTlh he?WpC~Wڍ u[J9]fc̏h:hf}yl=TYUE*"z[=mll6:զTm 7$Y/$jgBZ6g.qvڃ-w&KIǪ~md>LZvUKwisD߽-Ȟϑ/5Gil,foMXm~U/^s r;Hyfk[+}^U&!'c51#w J)kU%wqX2۪vӁٗGxy`JsP~x:ir6)%lssy./ g"E E.w`Mt&fѷXm(Ca!;*8+ ,Zۓ#?z(4rz$X3͹SUk F{{yنo+A&gpUܘ- 'U-+F|AE~zԱ Rnzr=`4`Bv!A/K\vtC砰< g"<=RmM|[ᾔD-ՠM~f*ivv}n(-8mʨF+s0j*趭5EO RkC5n2*# gf)ŸJ缒8W=:eYn ;PM攪̣ *}V} ]2H:{=rmqS4%QM kFpc ogFSG¹ &#qBmp~r3RK1W @gՎ)c@ׄmCs,|0 G\ '7;ps]DLUD=˾RfG;7WC%J"1?~,j]yڼ朶>lJ„-.1-yic(H9XyψEI㈉h'&|=M'w(J8 1#w1aWSJT'&jQ_0'NAܔ]~YϢ$/9Fw]A߰^GbEu*SG%GvV <S΂Db+CXQir$&N4 EJhmm\nkPY4LCmq;GS{v _0.bqLu0yQԐLm!OZÑ|Ύ:2߼dSV{ˑBVNQkX݌q@.mc19EH,~UU=|<3۪{?;.wqIu>I4"=݂FTunBEcnYd(3BVމ l:Y+Z. r߮`j>9 DQ])g0ǍKgt@Rkj\l}<G;#K" 1)ުH¶EqRJ/‰Y Ep99Pd7}vgg&XpIc,t~1H[́FND8 RBq X@:пU?IaL;`0pa8|1oCno=00rFR]TOBvÈe-u;OA&v}A%$9551 &td5Wr|FD6` 濎] wyVrˡ=}M7D h{AFtwo# ߎ7e0õ֧[&WQ8,}G IwM!i!Ig? oO_Miء2tZX&uG_V. rm\:tk.J_lf? agcA7PY^cmxַhHd%&*옾3'*퟊5;0Ʊ[ɎORa {qD(=Ua} fA1Gɼk6D WwAsGZ@6ʐMCþFm_H3YgRT<Ҳ :.CU^x|]DUhcǹ!*%f+)1uXpht63( y}^IJ*f9 b-K5mO_ >yN!<0xj(E60y[-|eZN/5֕x@б$m"^K rN6o3ELEoaD|sWDKfERm}gI"~C A}Ig;!?y ",}DM3%] Iũ0 ?1+J%ہ^45V[I@vgMzhh=lUEvhϪ< \,wxx1Ŗa^YDrڟJBtn4oLFQZ7&3|[0tPjө.+"-XQ{mWqH&ހe>ӯ[G g˛ ޕہ(tb}%"pxQxmS9k9ku "\E+ҬgZ }׭8gI5'ED14@ě #-](diߥMMպZUa׽|,(:dm|o'oNb3=,J4ݽa̘Q7:W0U[8 :FB Q+ڊɡDzy'۝EPcg2{礭FLC.+Y;u+Y^n$v!T {iG7ڭrÎr痯/HArk~잿XZژzgO꾴6}5lq 2I 5J;9B+gC2Q:O"q)ѭ _0vM9e쮾e0 UT.uʼ Ί` LnYWEB ?2R #vӸFB$b2E7K&Ws{c1| dzMa 1lR7!âٍF0pPTk3Z'svՉ1kB9'E9`W-B)3e}2ӏ됯W }cm?f$wwR \A/&|uU&n'E7$EATvRLo;;ePR{߷ND.5fտYL v LRb[Ae>pho=7۟>98"Qk^46Sw{|wlGPYI%G%7'Z|F`ZnO?H[K4BrJZ ꌱDZ8&s>*|K? mG䅡AMФߘe,۳BTؔ_HRYzk^ΐ#qK{'y/ۍݻej_=vxd*_؟.!01HMf,K..f0ס -EIsZ*C7p *mJg6=蒅 JyKTRuCjm)mʦ"}#A)cרf/N9hW͟M-\g0rl t„8N6%i,9UOm&ěWTZ>x*{nZ ¡:kub:!:Ü}+tڈ͵]/9P].S%[u-p^F^*D Ӽ&D[Fp`Rq= m)K0<bYMćܐ}z$s$5Wuj '/lSęaVnwN~<$yK4bK`~C>%3s5Ok[d IM+Esh qoz<{`ɊsJ.&L׊X:!Pƻ2!UlbkW<ﯣKhW Nl)br"5j%=] $ױk}hڬc f;FLJH3U8v5rg{G6aËbM_=*)._ < a>m =BRp:♚|$l(@)q 6ɨ)<{`,.\zv #EG˴m=A)akQ~ IzNHd@Mg"شL-odMwB Ͳ@ui,ҀzF}tW&lᅞ:E߬xPi4To />h\A'ۖ7G*^-K)Vz~qx(AUFF`[09xM@JQ_w=ʇ$܂|D ܟ3&ߓBm̷*g鯫\Yl@ʐ$!=slJr@J9F85΁n2bj_66j#d^U*,Z2ʺfO}DZKgxu)?6#'|' HUeTB&0FW0^_&~X3Dey@Go )B ^\k#xzԔ ҡL|~8X wd er_ADٗ\ ';nhН9K7|3}xj>F#?Yq'&Rɖmh >o{m4Z"7tӀ5`;g2lUqL;ct=W=y_ֈ2 I2Ӯ0d3=SB)nAAe:. :=#rZ*~WΠrQubS"k}dKan?l zڄNGھr9 O60CvJ[^hp_B-ȧp7 l`l6Qja*cM(Za-CftK4P*:{J []. F/RN|;O1OADjƫ8XB#j$){Xwȯ@&Qeؙ a*޼:+0e*a)n?W^Y pHKj!&A"D8k2#i(pʥ2RB!RV˧f% ZM.p@-a8N6zTP/S5Z`] .{Ssp ,,g":Yu~Bg&:Բ  X%7k)lU窅tbbO团8R xiWbv?΅YT-ݝD;rgpO/*<8T d1B,%wKAplwouyvz=1冾B&ƈٖJ!< ;K܀FU2f/߳7`3u8u,z"~K!پM5Gb WR1>t7zNMz2N%@bppa޿c U{F3@{7$¦Xv.t4`rSӇUK0f52jrScቼFK%&/L)LimE -&ƝFR4,ns8`'sh(z.I1ت])Q _`2.Cf{4`BԐL #:6VH-edðQ+ˌ񲙟Ul@T%B1(RE,x/n·٩n[ޡ*+ڌsBi,PE1_y_ 0V@@`{?M$11򧀀y؜lfdA<3Ez^4RVwWiks|0;Q&ӫmH_<3+ٗ~xqرuEHs׆IaHV)h(6UO4nN:-530ZyGE^oS+15p}+ V@1MJG$}4[)]؃K;LN]6n3rqJBǵa#S-t~EtI-K%F&DM,K3#+V|G!F{矩47ڦCiXOC+AD;/\F3S&Ȥ<BO}{\R|v>j[>>HmzG(+tL l8Л)zP nEfX0R]>;(YX=X${>* l?V3dޗ6Ku]]H{uo\N3+|r|m휖o@:trDZt[=찠[3hI0:/2w*DzP .^I|:"i1F)Asؗ.zDDVe5]2]]--\4UpǾN.IEzɫ;ϯ0ܦYΜi AfHKj{>"*ٍIJHVs\tq76Nn6,URTcu }#8\)C_9\lR3fgJF%rhF(*=ؿd$PaOF'k-{Uz>̩} (値ҕjqXFGtcec)N_ )gԯa(v4s;7r?qO!9I10 <"șIzH,<'Ղ Vq6 * na8][`RNB-v'ګ:ܫ:^gc{34_R|btY]\ *wM)׿)MՋ&XF7h"cW8.qd0VI/{֡iU~ b=)c*Tqj埂+BVy `c΁R3$i|n4q?]Ç49g!qzE# >jmA#Uן 1_L4u@ZM`g |^Uug3nNhJy $xB?G}1N^Yw>_ZN찊A RhD0M\zýbn m -+v;i$?m*-~gf^+s舯&|"'sߙc:℘2_T]m'$qtqpa ڎObd55}m$7fu dqXJ؆PsO|:coY|Uh*ܚiqNzUM99.30GE( οhn*Geꊱux+!Hm J5Z7ѰyfzX.Tň7VZX)0z69m62plh<5pqio|ZS,) z$53GN´31Jr-e"YEzeՔ^/M:@zCPukEeneSG:j/ktHcuvqbe+(d~hTХסj~bFay.=< |Z!-gEkk|QZ)đP(4wϖfup]yU]M 9] W$>qA'^NG;)NPZ܋qLru|K+om"O_%r 7ҠY?y.50hR򉅖`sS{ܭh'"8eiJgRGmsgɠ^Mܑubl,i%ɓ\m&_MZ|EQr)1[ W<ᐆf38d"ԩ| &PSpTǜ )嗇8h&R1,c* iaiMu z.`‚!#og[Fj2dN%YUx36EZtnB}څEmȨٔmpXJ>8KPJUTyd2 !$Y_3-3+dIJs ʭBpw|6 xe ơKgNJIzQV&`*ZQ^pE#t zxiy*-J`Phaz6y= Tޚ5́uK,a~ukqޏqW;}.#x`(..<(D\ }M,雛䊧>bHa) T`%{!\%e%ڸC&AF ONkj*wr7B0qvNZ%hcDdzeTUs͉( B/uH}:AU" >T{Q1R;ouч5kٖ>}J;qKH)MejˋFfA?΂`*`[bZe"3k+cŧ#LۙZ=fǀj``Y4cg+B{_bp*fCS/dO=>%9 gBμzW}{_p92nqy\FA IjuS.ʯn.V4YxK7U Cڴ]+MY}l=;ZX!.iɟ3.oxq my Hotwh./tE7h9S-ݧhwߍvhAu?:Q~OweY_ؼ̎%6﹠*#2ԓS$"`[z`̮b>F/;s|7rIL6FLqoьq}A YtA[NHTm PlYo{w7+#whsTkpbݜSÚtCWP2MAơb_&R 0lK $]BS߅:` ?6PX:6h+gg<8aMI)_<:( {bVRD[gջ8Gua33D-If5 DtGo:]q?&/+Ⅸa>ZWtVzF_DF!D8n0,B*mZ$((y?◰ /"$J ϒ=lZlJ 5LB. )<3>0oeŌqFVCz7 XmPGTX# Ip<>kt pՃM*fJq+Rq>5kq ľˇga  '\J=kAզJ8OS5+y2X<}5Gr_Ecgƿ8c!@'$m7 ьM5aZ#e$ YoXL*$!X*-fՄ;;΅*x#pt?//0a=Oi3AGsE΍3cɑ)|OltmʣmmBҨ׳kh}0c(Μa$O2Pܩ6ڲ4 $P@ٖkHg)ڄd J<:_JԱ8rl"ޟo#S ~ϋj7%f.ݼǩx4\OmgͲ7ŭS15 Cpy!9a۵JGg'ғI_MB>GH+NC(0"Y \Û Dc!jKJQ%`92|c#9K@oVQءjA?Klw #AZbյ5i$ɣM ~ ])VOh^-ORAkc \A/`T8eRGy,+VBQ<ޘ#13BT\lf%'u=|g&""{DOTܠ;%,Lv<m$u/kQBv?_PPƼ^z \N'i@u| {V41?P5V0D{Vpap\ʄ=@Yȣ@Vt%Mp̛A< MտآJɕjϨ3G6'qgPJ{E* G.mcX{86 qVzţoq"c^Qk2 0[ȧQ©'Eb5x*FpL<%_Lљ~p<&@+#z앇6BsE+p^~Pj|RBmL[͇DCW/ݓ/ME@ZZƸ֞-(=# TQÙꗋ;MӲ/إؐWB=A&{@j SNs$ ~(/>+gV_󄝞W! i]ݾ?9^!Tem$>|f D8[;?b$brZ>g;N_oT(8Ucb1JwhG7~j4.YhwRA\,:{42v9ϓpyQͮ4~ZHpO?Xƒ4= G1ٰ"ժcc6^}bfw.s56e+1]C85bC`8H]~⹥ΥCÔh&!laՍ>ɻ)vNȘ]GGU~qxGw\Q+L{hvcܣmUJԜ`pf1M~scDc+C;9^>Zp^Qd-ntLG:i(+{Aunޓɦq;=ZfDjYw/Ӟk ul%WU+f8SPE0xmY@< Q cE!Фa3{gwP AތiG6łUƔFu9M&mRzyb}cj@P%AM18:_@J |KY-0μgل0$ p=)/ΑWЊ!(#KOtP!6Țգ/ނ=`a_wtZI*&SOXBqPd}7YVy&wGy>`(PKR>|Sr8?0oߐ]uТ%}2$_Pl&{s{wExnHj,e=$?E?Z|H #ϊL|t\ ]Wqn4JMt܄#mqdsNp}^΂:.!R-T[< Ch׋1:LF;„yA[",< buz1ꩡX#SpzM -oĈ8)OC rsA^/fz+mm~.$zOo d* i1x;0JIs%~ TԑꢥTy~1e {)Ϭ%FM 0f![o[=!H&#v!-jiP&]F4PQEfԥ|7Ϥ/WZd&v"MSt@ܼ]X5˾ 0M?s8X3itsHsf{Ր{E'tᗹ0;]}p&9kH ChD_zq8Z;Uo*r5MoK(t$>TeȠ(8Z9fVRަܘJeBc-6#'64,u㘛j$!VQ ?.͡nJ|ȶ<;- ={'{?j}:s"  E?F2pF&}L?]+He\ J%_]7XdˉT焃DYFW@+Ek.TLzr9 NwȺp} N*t. ұYf5C}bc}>$o[5jmW2ԑRCɵa*7R\Ƿ,u 5E 7ăP>γeY۵r3~lewƮokwܴѴIJxa>[91Mr stwFaL0njWiWȋ;qkiiQ|hC⑵u2`H\_I9& Gv_dalҴR~r"[PGSoEbY?"v. vٝU^Lh6ylV W dO~Y%(*o_VvrD <;NRqPn܉Rǽs2Bh'Alm'ˡ ?u< |g7:q=䛔AsTdQ,@zЏۀ8StͰ X^ΜXrG ]:Kڅ* <\Yȿ#$&,F' jthFĉe=o~W pxA%d'bܿ22 QNπiBa.uFM焰h͐%)BnK|7ö8bHGoEhdf]!3پa}%=!n孹\cD]+UAO P L^7Y r{Kb; ^pjkЊ/B 3Aw.3OL {ɵ{Q&ERQQml"zl d33r˾$ԵYr1x)]ʊ-6-,w*`(9=i#_.W@,;ꋅ,tA4ک eƎ46Q:o*)fzBaW]BlPe b]]V_ٌ@Ukvˁ~5rlL+Gu _^. ynC[{jX5 O,moZHĠguq#"s65ÞY"0WJ*? J+w T6` Kq6{ ʎݙ~#䖿־Q 3}(U=^t!IO rAOW(y^-B ~ϮWwE 9EƆrR[D6{Kk.O?eS1~} mZWj`m)LV[ Jlݜ +9[K8WOؙSYA^`ޡ>+#"?3.W}G0+4T*/w?Ь{U: J,&!XyN,$D@c1[N]evAX;"♏# cK5 s9O]tR`&NzފLR/-h\HeNFQe f|qlos(Inqޯ[=_C2nHЉAy}Z);  Uܤ8[|Ϟbc@jW&LEP2n-8gǬ4Ϧ^kJB$2mmpk^mxu}x}0 W *~wK(aEdqUf).p6Fsۘm(WbMEf>B$>QB1K_x1[femZc_\cȰ?hP:ݼ2DD?σ-g['ObI(YK*ߠ}00cl4;2y#\~W%? {λjdVÜwF9lƵ2f>% xzE{̬;,-*}K!g{!{^Hv[h}:J7Ô5 @%t.#ͪJ䚕;N-^&blB&(<)bh]C}x7AA=k>TXto\9ݟh|V\QYm9RFiƵ"^.[ vlf\r;b4tT=_-5;2,'|M6˩~HT%Dv=&*A8OjH[ n\+wc+]-?qd$.7#WWM-: ¿s_ʘBnl$K\ml}fe! ]0"Z͆PJ4\V$zSoh`東 WL9>Y}|Ƹ:K-?aB+$f= iOvW 蛜q7;#uÜԘ1:tgg8#c%$w \8յ2y u4R+" ڌG R ;"|ru֕!Ũq[5癘3SGR*F妩.dq$kH;JcS0$ K[-J[e10Q&e^D`i2' ^/?E5KB[ir"ES mQ@?<3F`B!=19 K |wl9Ӆe?x6]H.Ao44䟋Glĝt)0UTX@"j'tNtԂ;#5ˌPq>wVʏlx)SU_hViZ1j=Jsg6"4;p; ̩;rf}",2  SZuSX4k#hGXSjӃh>=foa]/`pJ+Vb:#mF"gUC%p}}joՓ(ل>CM- f1)jtQi|Xۘl610 _G+R$ 4(N&mIBEDeB\xU[7)hS,*uV. *-p{#p~/0+C4ʖf̱1ASI3xS qegAmmGs(NHhBr;F 1BJi21|.%ۑ6攜.́ Z蚊{VehEgF~Gf_sdof3p^I3lmX$ Ex+|TKt{ԗrΖTgis^jK_ B{授CNj-ZR-+2SY[L!ʖ=ܙ `E.f[%?URY2/nc9n_@U*#^i 3_F722ćikd xB4p3~)B0gԞn۰CG5]!p؁b6mj Y:Mp-JIrITAltUBc8i7Qnz͡iQUV*mixH1ۃF?9\Sj:#<ԾSJܒz'cbZ'H א#^)!{xY70[4v%xxDflqXѲf2 Yd̜$ ][Qr`DszՇRָr#mXL УR[jʷ'MPS[JcN! 6QAz|k:B@֪yLѯ6j+>dAnk"<ִ+{ !# 6Цh'hgmA67L/pokE|J(-V5ŵ)fͭq8/Xo-?>iG4R6wB}9%eۥ(D:&bk;:%Gjqp3ntN$_+KO 6L%1@w"â#LGLa|qh ٕy](sp\%:ٍ{2| j2g~|Ylͧ9-6nJպ).Mšy.vDgsAs .(`NڦL6U {<j&mdy>o?@I2lxKG8+ײCôݾۅ4衖0)==A.U%HpN`)тM\A&cD'&`ahrϨ;Ǟ> LVfy2!ɽOjIf(h=A83D헱%ӕ qX3kl4@)dU)n2Z}*>d-]M;<2a2GR7߬O.鼑ۃ)141 qjvC ?B8B)O#'+IA}  za^RV|#z؀Td eX16E\jݛvKI7ardW$z%ubc^yZ(fhȒUbQ.6]Ovrչm̜􎘀SW.QuFC~t94crZǷ}!_AB^* S!?tx@َ Q2䪢рG{suTt4 h0xx`_ ު*Z."aU[E.?`P_ eAn45[7T۲RyuNe^,SHHHŕ{Oxf.$[cp æ?!Lw\CW"|5H{IZ˪3z"J}!P#;rgu;F"#_[۞i3dD-E"ܦsa{Qh[1)d }Q8Y.aESRHPPWR9Kp4PfPYRWTāΊ<W̎͢"+{/ 銴SȈlV7!SyO%:qV@|noqlJܢ=D͜hRa'SA뒢LHe[k-l`~_NlYvy'_R׵PnXY Oz'鹿QuEy;au?;auNG(zt߄d3is*q`/bnZA5̨lu[jK3ӜH⩳L|Lͯy<6B&Q/-R<(6jC}qH2ݓh"=ul3Yr :i_BR˳Tҵ#W|A~*]p{S/ z6Uǐ#%IN56{A.#{2Fkأ;?fJjaە ڶK54 yx}WzyLK6V^wkrt,X7tBãI"nl1RpfE.V6ld5sa'cR<q*#7+؎ EMۜ6 %At6]_$f]K^3hBE0T oVX綫2PEC'h>u}, 1 u=2oh;:f%zz ^g铳?W=uE,J^"kF6X8q8L5\+p.7?!ggk6\ݴ}mr7pq@e>oyѷ<}23=:i_/q[ӌkmV;.sN@Kk;'4)YX#茱w0בQ\imA$`Koț&q/!269-P"IluY61 }#E+4 H(ߐjgs] *D[M%/nZ aAZ: #NbD/,W-yh_ FOdKy 0/hܕlEcS:jbDŸ)-7KG <"wSRծM*p*llnB Z;ySs-'. 얣,)\QcSFFvz@u ȹ_}ٖ+η9"%i0pt(p ,$` j\ w˘UGH4>dVyAē9Bb&2Gʌza{;{2"cF(yN9 PwzοAkN΄g-Mhެ=.3q¥ v&pVa, 0A>"5[+&n:.¿PFa(K{fzGGR\We2O#_V]ՃЮD%U:(wvd<LG/odK1JnQ`T/_~8:ߴMȈuQuUN c,Y!P*Apr_ޓχ W[kDֽq{q߅U981z"7koq8#>v2y,'YB8$H{Є4 3s@S4b};ӾE;kY/)K9y$0ܝ7Q$??9Ҏk5Ay/y `i #f.٬ͦ0_/GF^-޲yƗPtFtwu97OLSmJ(3a0P27*AJ[rD,π9r5)OLxK\ˢmP]xʦ"\[}~UT (Kw׌)ZIffDX%'ٕqPVs!&!T/_is@i H}c,3%!J{]^۶$kfVuFMо6Uz.3ߙc+S/?5!%k`yw˽ܷ&KdڿOה#w'2˱  -A+^zK-&83` n-w~ ׻ Ba῝%H/-ӳV[6y}E0`\aɴtCm6J.YQ𫋬#Cv^F)-(mqHq TZBY%!Ί\|ޗ2d-WCqNNQ=\/O3`tYD3pXF^ufZyO`,i4| v7qE}W") }<2*q1c!2[%]AzRF_ :E~1hrh I&ۘxxzd76a{/_]EI7*dn?f z|ʯŶTD7wPc|ݖV|wm<] #H˶XQ# wBn[U3b^rjVdg7>IAP5?C`ϤiRS0+__SqYը6M?"~Z1b֐j뻺|E\Ām~C= G {Pf A#6}"[aw%R( $)S[ kޓHi}q*p R+8@z n';`_ł "ɋ=AJe-ӎx_N+ x gZY|n( 1,vXn؝,i/-,ccv*Hx*Gu]&[vN--xUjec+tkh'EwF :$m (}BnHΕIԀv؄'tXܼd*TYj17ӟ"[ -P DU(]YsGjɵ$J\Zԉ8puj'AcC}@i'M~՝ab0;7f"PaixJ!| hP"Ef֣}aNRÌ ́T0`l?ΰFV9 ~djb֊ VCbEƻ.gdnG]a?|հQO3 kD8(C<$[dIݾlPvS :] u)h &# Q #橇ToF÷IȌO1ɔ`ҹQHeol<7ilrą1TW:ܨLI1mjLR76g;4݇7_G'LW`mk17y3bYZm2hvH. y -XOm߃?aEaII3$ӟZSIs.bİIA$2lw\ ʳ|! <=%u y[i#8ۿ(qB)"y+}ڼj ql\}n<~Ls)MBR$Lxbr@ybtiW% >$̍3נ.k/׍-t+.q5#H?}H[u"]2@ߠو (lA &m\\Wmk$AibHstH6% hNҴA*HBȵ$t*י:!6Yrv%,.t*}˫9M VGʜlwE0ksĀ lFS--8S[w9v`T/QVb%uƚz52~cT41%L0$xvo®б/[6`ͦzS}S,"\w"~9g2w\X9`5ɍ/G^,<5q!a.o ~Մ~jdd |v>*$Tĝzo0q YۥOo`Лe G]ƊޠQK=[`(t`qSaSv}Iby3[nЎm҄{n⮱rx}F.KJmɨ>;UӜqǩw@aُv"Cq=F, ZR+CҾ8A^ #tkNS&,=.5KʰLwb9UO ~!jk6uo8x#6o {:'RDN%Ղ p=#XlZ DݒlOm@zԽH Xֱvn. |w ~ZIylJfm<6Fhb`e/9z0]*'qHnkN WG/U,HzqFҙ|yx#c<4S fo`i4u?Kgcˈ ɔ&N!g.3=~bqh*U _.r*z\?)<*avu4_δORVn ~}4 kW>'2cIOR h(ҡlD̓|9*r (ᒅy6J"Y L=z9pYRp,5f:"* e= J~@j>ixޫ½\)0̭^A^HoXd#w~]^ 6 \P@k(7%gB%' 1r:zX\z,Ї`ΤݡQnŬK B w$/1YV0TEVȰ( `F012ܮ 7*{⾹ۣԜfYl2mP<HYƳ$OI,H)g}\0Stt/C ~O"9*, n| ˬ6!x$O9ʇ 9VАq0e-*N%[CuD^EǸ3Zk:Rʹn38{k<+ f+ n:kث2|Eݾ̓ ռtOh'xװ0A6N PD,A [.M)Ehn7=isLi}m\dSj80|T…A 6Lgi-ɟ-չ6g%>ɮ"P1X20qx..k3p 6ӁrNI$}!tECG9>^ϛiLPUr0U=닚I^]o?) E7V/>d4sqDHNQȯTkͽp#!oI[}=R# 壟uD5UܔR댴=&k&qcUf$MpŔ`{ė odִf8A0GGUWqlC|q+xeOM =vǐ~f(_vxi-yVGyP^a d>uCTg Sa./,ppK )N;#_cQADl2ǕE$OQ×fHv)LSxn*dDɵ$'CYL3's鼌JPfݨeLg ߱(N~;>ƙTҝC~_Q NLnl02J27"/UY^~!v ȱC&8gV[ J>7rFj2xρ+ XH{pobQ.r)őqFE."R̎UDg$݂fgcUߊb#5_I`9[ikI@T%lWrD~֗IZC__hJ)@X{ I OF+pîuCvORT.YsҢݤ0~凸CYU7=2{Yk֎z="N1T=՟v:9{`WU`]kIV{Ec{̒`Tz%ɑ*{XeoL1&%ڠJQ"kEUY>bj*= ADSdvR#WIz(S c*qmwB||퉦3)M\ 5k|=t( gۭܷO̸b\7 /$(k=}hg*|]~h܆6f^Yo;$Xv؅cy'tL"Veߊ#(z)#B0f"vjVp[ Rߊ%Uii;t 1/AC/ ѐ~, NJzG)YĊ6l&Y}з PTZ2ې2P`Zvٕ$D?Ez!.ZVZ88eQR $L F~{85ET < ;Q5DǚYɓΏzQ۔gbGN゘S-AFcXliKRD|[alRHi/H%^Vk/-Ɏy z@U^e39E:51i83aWsƅc} c >|0 ,wI1'X6jYgȨȔ0i=r2mVh&obdo?{ovSZXB@GTLAn#x)[3ڶeFFM\'rqd-NKT%u .`)ѡB} |J2g4J4%{@<ڣ W]IDgԞ}\0[!9[bJ]ݖǾ@; $G%En?M:or['zkn{v̻ M)aK_~^ TU)߮TE!?,+}=q*sR>*ah/U<(ovH0=4@YS/0Q1١+9VJW(+̀ΞqQloτ6ڃi9;G;3\>ws{n6s1Ԃ#y,Y Y?JC^p*0>q~Ah~EֶUR]vkKMfk6۳oFIʣQHkVjf  ӽhTג0J̤N;Y&*5vEeuȦ^˂x&tL+wzs2뭒q.cl|/ ^ BǰP B ~ŽxdIu40(4ֽ6z ڱ1Tپs (͕ux`K66y<<>)QJx-ODKփw҉}lXE%{{7=HӿҺf|bWC~=[n mk)}\8f ݐsV3.BMlr"/%4tEhrCesܸ%N^{N_x1m1_0N:TocW菦XАδmWM L'{Ϻ~3^bXrͬFx0p+g+*]9$cSjθu axrۂtKfB=E< 0`h D Cnn/f)#(C&O¦Q&'VNJA}nt:"o\rM/+}D7 EwO~it(]Jyή*Kٛ:7GO2U܈K̲ۯVz=x|:f{D$p`#P ׉}N@;!p Qn\M/Ϧ$8BÑgzk&T2P˷q8\y|'W5aoȭ^5r{`ӵ,]Φt9T kq+bsaxPi?(mN,|: т`Qטίq"? @%?(9b6*t1t}nWPZT &S/Arnٍ2Fww nۭ f%!khCO9fns`o C1dI)ӝ%I@9v uN%vVdXCLstνL aє/^vy[-uyn]L{(AVcp뺛@MWO:9 3^N /cyg}۫K(Jv1c أ@{U0g9 Eɭk6O|7((}L욬z9%5"QǤ pIWbgFt(hKV߾upKxDݱs]`a2rJ] >=eC^<[lr60NJ]2$mgR}bQi蔶Tˮ֣} z'w!=|ƺ<mt*#RӀj]w*]b1! ^/2MZc"Y]0棔wJ<:,sߖ1+PxR5k憮üPFUG9UȀ 5#\9qR*H&P&Z+UNYCHm(U ˪`?9:H #&˖ǟ%FFَJ4hq]Dݽ ]3wI zN7Gg}!ik>ƒTG~1eʟ$!:y]Ϫoi4>^r/urޅI.#g 2s܁t  D+zFUw9q JF/q2o]pi~@7=Bm\c?*Ƚu4,_#9 e^]i3y`?nmxK#e2oPH/0l){҄X#LG@ׇ#N;ˋmn0>9'ڔU.@r_v1 >7Cv4y8_2ԃ\;P\%q*|Z`j"1$d,QDZVHªh8Î-_viqBiύE[S:U9U!aR”~Ͽ#E 71wX:C {3 >2YH&Jedf/ fnmVSM)|<~HyxG|&Mj:j$QYݿ:0FMKF(Is|y1.y#%$ %ihk䆋X _:͆v'.!\wE cDȩ =&ЇSO $!雂EҽZN;\NV9'y+8Hʉ[ْ94Y+1$FUĝ`RmO;amm29$"E->0 4`mGs wԘi<¥V$(fk"żѐ3vˌ^C$PsFH APx?>t0r ,HNLVFpIey}M0 ~ER |7CͫDب9͋Z\6k|kHi[ D7LRƒeok 6i1DAfNlԄ(=k3.9lx ZOy6e7Yy U$:H9}WSF:R 6jszr9=SI}, mnepF XuQ3(9E<$h\ߪ4<:ȝTDtrYyaz4}ͼ݈X`͋-G_B:㋦C1X1"'z+~aAkme䤢c^U|HbsL]$s|0j1c\?/fthchͰ]DTrG(q Hu]~π$R̖lBBrq qD^Qp˟,VtHum/= -L63p zQ %ux+8-;#YCV3DߢiYR\Ŀ!*g4f,#="hrWe` :8W<[Ldmfg?zZ_͟E1ᄐQ J bD(I Ny}\ |p'RWb9xhsB\dMγ7}!v^ƭl-ȲXQ4b r$EO4]yeN[9npP2S`lhC-Ka77e-h&pb&y-jt0 SstPx$,[ZcZݳãd vK X3g ΰm=LX&&(!'Ɂ4l E yʘH^ fuskʐTA:b@/ntU.Z߱ڀM̗<9&vIn;$Ul(Ld`ޏGDm 0~%Zb{V-XҌ$B8prX:7^2ןK_RU5P_!\ɞ/ϵ#jb0Am~F& _{\ь*NjA&0IyXOBֻ:ZzE˱磚ۚgH~ky*4jIIgw܇|eF=+ B{ V7IKštƆ,.8SH-[`*\EjX00[섓ݿɡF1͢dhUpQJD= )/ |ᗬ~э, {;e hVtup[L٭P1z@njA횅 )=+>E>Y]mcǯqmB Mt˱o8M>/mWD_Zm_Nf"*'F`7޾s((R;7{V-˖jAW9[\ ƀjQea@8˒ڪ޹{kN΍HmVfA5)r:9g~Ąe4zq:fN3}3!mX;Py8X[nwfx{16hB%M({NK\]a{ kH>Nǝ8ȶ A)4sSSÌ=$N`!w<9S)]VOD(cm0EE&K$J\hT-*5K9`onxwv/-clnls ,b% Aҭ6PΐU`6ή80Uos ,U EݜL_5BH+.ۅ؀S&&q~ƛcCAf qÜBlHrGư3^j̉3_MU>L)K($_3rw]vbyY[˻z%z`gpGxC 8=wEE'V[HI);ԉ\JowַUOϴ׮ę,r<pd|sVC_Vp{lj%9C}`1%Ȫ7hR8tZ`U|=eqw_KsKT+^_,g2:V1fݿ P7’C9t_Zϧg#3E2gp#OyZ}M En,_R&M2-|xɑmKO]Z"o Qn ɴH>Ye{Qs".҆8~+jfcO'~ r d ̅Ѓ1Mo48o ju=KHQQD:Q픏}#13js†63EnDAѡF^칵%ٿ| Of̻^ņAuQZEs1f^bYXZ\iΟ)}9mN{@P򢣲kyc1:"^6.1rDC*[$$*:US\IL]j *HBN)K݌҉˕ScZQm&YYzKs #÷<aAJt+-ЍV_QtQ~%5as2IeJGښiIe0%nQ\f7#=2V7CYu_uS)" 9X.s2]p`]K4'6@`>?Ti%%l;S@C5|ݟ{b?̕#jܙ3n}Oo&MxgVyg/jGAVHܕc8PL[-dc<-q|YfjeH~rtkJ%O(lB//Fuɛ"#,oN(Z -r%ھ+Z:xO|627Ak/FMZ$<,pIUG:C;wwW\%~{Bo̙^KS1|mxY~ӋŠXR7K& Z- 7 fət%9,]$Xv#[c縿&UcȨY/} I4׏a iTMcUcdY6rY)D7]'SG7ib%jsG|D Htf+y$9rIQg] }ʫhy\nwQ.%jmEJ|1orRI5.}_F\&Bq^]CTCgTWd["E֨'eCYiښw*V_,g24G qD5|=-Ҧ Z |bn@XNa&%%G&O<.zC0mV$x @VbU[)߷'1BdțlYQ0XeR~'a̠rܡIn|6EC\nXwFSA 3أ,WWԒAv)1ǎX,2 'GB~r7%e"֞\ORtp`r`d33T^FNSkDnIQVd[^RXfZ~TG: hKxV!]WHUYJA|'[,:[ ;9<y]ܿ3:]ݥT+3"pA=/v,OI͞GI@㘹?عMfyw\qSr.i*Q4 -|O3(|3b>ssė[)UѠN&B=h3k! :5d~{I]g~#fӲMb]Ɣ<Ͻ`%Ծޛȩ3@s ˗6 rGI?qƑ5Jfw: f5~&]b䤊FCt$Xi]q'ssID(o -We!l͉x$c"b5x*Q 0z>Z5mg簨ďqkB{- a\$tPUek *^J @ƷE \Sלx:uM%-칖h>Yײu(m9!`䞜HĤ麠Kf}* wV]nEax;cx2 t.FSHޗ\KqgeWpe kETy~GA슨wPx U W^)M3Ojʴ N%87'Ԕ=hJ}{ʍP%'xV%? \ #oɣbOęP7v&r>sJd =Xg}W+74a黓FWh9ٞuCFia !L*=:du=IN(hˮJB6<+ͶX&{~`pȯYI H\=VbKr s%n\9?$D#Jr6_$w~))ޖ.~6I8UfpD1ljsr0#3o3[q[ŦNUd.?\J&q˦$#a푸u*jw4}5֐|Τ&OgX Bؿ-# QtN8O 8;L3:LOMkO觕6@S驧b)棢\Ȳ@ܬ/ڑ(U܁|,X+{03D ]oD K7}",2_2hj$-ڑ{v}XX=)H0b(tW=jP(7N6uMFi{&{Exϑ,`iȏ^3I;Fr{_uF %ǷsgM=$P\?Lz@ l>4?\U'+ f .{ -w»Fs(ZN󰤪J Ģ-Bͤy:I<]f}dU,ĖlSd/LxZ6ؑ!AIJyҭY3m1!.ν-1 ؿhf=㋶a,Wuc. I 2WV );-= ^eIÜR)'xg)w_4v9De)`nGn} cuC\~C S<: .ft\T7b]7Ÿbh[kL-[%3݂C2͖NYig<| v{:'DN/`'"&jTDs&iwVU*s.]heEuvf}.9NHe;6;o:c4\Eiuww>Xt7bQMZ a>67~wt,#kZ%~d: Aa}p7A7QYpM ii2ݼV>S+qldN90DY ]]\zf8j]:_h͵ĺ70yqVI/[r 9j#` P)c-NmZ1 4: I&P n1\k`xGSyw=AөA{~sP|rcr75᎞} {yM5C 2g ɅA h!mg%* ,Ǖ7 ui,m#k SgboЉT[ZaPӹm&h[_8C 2J& z?08](H V06w0&Y!yESoqDe]Bwԑ31vvڣ~Ws=ΧĶG_D.G ˡIxMrםM8p{\&]\"7yg^9j+yº痻QSҡb<&;օ.+.EO͊wF;+â$bڝIe&&lꝣuoys4Fٸ(9k:?=I5V1v3Auq??r*[ۉ%>sKvPu޹U?N d=?E*!,.Z ypVDsBT-n<* 6@ =c#kKΏ?~i8 o(ⲁSps!Tyj j2<؝3@ 4+:~Y^OȺa>Xn4ά|^q=1pc(ȈuهìRCؓ0IL^ P[X0lbSE}L!l z5F$ck/~)Z; #Qdd#A_pu&2ڨEp< 6u))ԌW^8C'ZW<4mv#]ʕCSzIs,&αIa,4C'QLGڐR*`9Xš;/ =@TpQIkPMXV\S3Jf$P>KH\=h:jAeX3r Q (}ƈ˒k,pH+Z}>}{RsvBX4Z?CeDi! >18?_ f1֑~ _*|ynk{DsS'KP^7BjBobkn,Z!JȰ:[VQ=}U+K snUJ~ńG un:8Lsl"=x{_ٛ| n}=KvE-0bS:v>OZl8Wv $:wGn wy5_%~07U5w&+/sP-<m++Ͱ\:xǰ0˛O9Sc{^8lwH'u51( {~u;?R:! IF ·-@•WK2QkQ.3eU57 ji̪#|"AՎ!0 RqVܾb*.f L0vIA69hoM/gηT _s=ش'_K 18E (p!>:[C^a)UN]vbZhSm^#(g]J0?%pfD7yqjZi|d҉2|##e[;)'G)g*3eKupM\EM 'RׁP/v9ᾮ6cj)-]YzslH4@Rl^jTw~_+į6w(psthW n6 UU-o&G#ӌΎ=sE<X {}DLU$0h=s7N [_WTWϝb 23nJ0ܭG !ŪbFC %6LK/ 3&Ԙ{ ぺ';r.> "ke')fIf"u"&#*Gy6x`3 VT. 9T>pmU8yj/\L`3=oYTDg)'} Ь@}엿G۷>z@xZ~( ĬkBrb,I o򳳥1ltȽwnOĊ.8*=4sszW@=s;g#6ҭ:1N~Vn"^- c:8_}KJOԌ᫜Paeۿ¿K?^o"8>Pj7hdG[ kFLC[IQ•ݖW\'Z)[ {UҹcinÍRY$g[u3ůGZ$x: -;C5͢ڤ萡Q/KQ7=M^Z I~I0ZE[e o'^ˮr9q\%WP~UL$ƴKA Ї,=5/޵>D%竅x$_R ӆ#|d?9etq9qo^<~hpL@WopхC> ŝ^+'t%qRK?}/ )dG菞IVs])ˮ\;iq bfgpKk*(F)gO jI6&7NҔP?jzR-ܚ"Vp*е%1:Zo7ye$ۼ07,%iݎv^7LB Ҟ>о _VFR dCrv(lAb>\a͝{ WQ0Vvb@w&i%6ɟG|Ƨ&2ʕ?rP"+j1[(&UwYHCANy,'vIbE4QWТä1=o-PG,qe{@[F9mƤcW/x+X=ZgN(zeޟ c.ڣTHUc$~;c<#NRjjN9 )%Ank(az'Q>Bž9nO\ 9yc/qu"[LvUⲏ3r ҈t^8Ke*sBm SCiD`J%@YS+NpNﰍ@氜u8o-qYܡTl-q3Zt b`4ح:MN8c_/Tp*)/-q ߴ$Yho >NrW!%j,4;;x_dܦ e|K1z]N{EzpFMrRŮ3e(H)d[M i#}:G E6-arI gsR ԯjv޿T)R삗h @JGvjg ~aqb W^pZ- tx#3?;Ky^viYd'a&e/Wr[\WB h e^e㞦CV~lj>}wṔnG3V/抙dA ɬ%i^ <4iP<\yFW:[:>\(qX[ɔ8ȻKNy$;_ƃb~b%X#S.T}EPׯέT巳Y8X ̵ʲ=yT{O[Ë*|QAa#NR[I 7Mx.%KךRDa ie*U[pwR !oM7_QUum5c;5Fe~Ȑ\V1ʹpbUK4kDuvMZ0KX* M#z`,݁7ҁ|"Wis< Myf|vSv*=2q8f9|&Rgd0j^eë!$Qo~@"JȂf;=ZF3"iM !8inЛ1UBs" JE*%30k(m)QL:hQb%lG I+ВmT}3$ܕIF-Sఽv]Վ* EFY"D bQm[PZ%XnK^S! Y> A3ѢwlFS\{>Vj-p]j4Ca ?6gx_p>];$K^+_vi1*=饤$GWoCf^b)Ɍq^b"*%6dgvf`'=+lS ?= 4s|meFr-flb*RIBȥ'H[X؁d,(!'}fߣo$RQ:MP3D\ mPxoܚZq1/h)WJz8M;ɫ'<^ _u%ĵvB/ B^,Z "jΦ^]1%1o3y 1LN9oXUmNBP>Z?,NRA/o' *ìiidjn">lmhJ܍Յj';-48Bjt ta}kaqmZSⱌW;9nUVF2n;4UuS~ j@nBNޠ-|8qP,$*Jx$SSs\%5rΦ诶Xh#6N을U?ެR+k)UM_־tW[+< SJr,Pj erSgO+kobEG=ǘɉhm&bNz -Md2縸 iϴT:4ѕ-d 0϶ 7c9CrhsRb%װ _z"2ʶV;HjhڭDPS]F0.5r`% N6Q_JO$DˬG.5Ƙr)LoX4ZA4DP;2 USˑ'6Ñ5-G ω/#6YQ9a9UؾTUoyP _R+Gχ'P*zk<+5~vڮpZ)0%m}qz^].DƂp{asVR*Xʛ9crȒ7C7C貨X9M%* $|s5jfGv SE=_ {~M,}5l Spj`")"A-AGAܕ /E4v]-o0*b5E-ڴS@BR˫ {@y7%7' !̰`U=T1X#دV`Yvd3f;f$#cp:9N9Wk!Z,]C`@ J<Sr &h#!sN{@ 9w W2Vq] oPo<ƺTfȎ>K7}^woHYc7 ]9jD^\K )^vǤԥ$E_a0X5$qwƏ84XA* -l&A&?xt!1E3FmUBɔ#2VR#;$D7:JydLzڡHʂ2\Y.b) k߀ö dغr&eTe{/nzGB=:|y&N(,NcTiL)9Pw\mߠ e1a6~k\wˎkǜ>b띝>VE|j_Θ?0UW{ >(Z0Ǟbul fo&IV:b A4˩D*oxe2Τ1X~ =OSϓӖ(o80U-Jy -^ Dyݲ@|1DVPX:Y,&SIhaL<ӣH:iy8QR r4Z0X입/K+?=h`2ٴ$l6…=gl45YYIFu)Mxt8~1_!O#ZOoa)-%#,R^zݡ wYY3Յ7Q0?3b:i(e{vHj"e!=}$Ò*gA?zeO,r4nBj]/ꌻ`6:פ}vVU\,-+l&yqPzWTMKzk^~j(e9?ӚJ,.J{-5u@*NT(moƱ@$U?@oC߄v[6Aw<ٿo&a1Rl ҭ-C}/փES2M?To=:2 G=mTr\g>G}y A81vzA)5w4<\F+) %-^)`J=NmldV KZɶ9cXZ{JsC])OAa7TLSCSd}%ul]PDfN gL ~qŵ{Z̾w@ش_}aיʻBt0`ڷS!ދDܺZdb׍ىJwh:EF K?P?FRZ \\/ɪZ1QmW)W8z{&x+ᘯS g_AB?uJ:sنr5w=qby 5 Tutb@;;CnITJ_ @|ڳU12 j s$*4"_Ӳ"77տg)RW":p/bd8JC$1W&keFYլmoeK2` GVXbӲvlm&i>q#|:FBf]2J.zQOy4b騌 S\T2+?%:lq5:Un`ZͬlݢH05!B s nOO2o#E2\opra:HS ifl.FwseʪFQ|5D7ޱ$Iwb`U# `@vň,Uhk~SkW = [PNj 7,zǠwչThpT3/Иy\/}xn5zwf;W<8_FduEȂR!b: ܚr_r/UT(zpܪb&IDAV'^$bG{F-XRM%ޯNr:n6Jn#5gQ VjN {l&Cdw ޣ1L)p^Kz'CuhW߈^;ða !J/}6!OĦeԸ$b>cybm#+ S*̵̻Vq(U^dClUjiIO*zbXϭ8?, 2eYQh8I :&&_{ehWhn.pҕ@L4|ԱZy#'P ab`F\ٷ@+3fUcx OY|yȻbh 4&U#c'ϑ\yPQHQ*3]\si6^^0Ȟlň~ (̨2+ɪNPCo ,z&IQJnxĭu{<(y8,&1Ѱ' v X'ʥ`Rw-&Iupo$]VOnҤB(y l %O .>Hnp͋o5)ڀVv ++e(R+0sI)2*'?//$t!XZ4[,^yKkWݣ3*wGSW↣LyeU`dbI+‚ ]+JI6nWԆk?|q( EJ\ L@VʄTyi]< /- PtɈGa=Qp4#^&XT#dqZ"!!&pB3QR"ǰgB ,֊$Q_̗XT9vrZ@9],~ K͌εV4=$Q&G3'-k/ߡܭF4i14J7m!aze o#D)3gАXt9$vhؿsxD+}7moûs,~+!aUS`?@[SW/oySġ4ÒoBHΚ-nRaZg0;7zlxj'0wAȎ0RRcOMcʌšF">'|!XꭑegP/ǔpCE/?7vSH+7-oηή+3uƘ>{֜5j/,@q⦚w5eV77@դwfwV7+ztU`u5QJMWrab+7 iw(hMzo烙{\\bK/ 6C3];qI1-HѴ$Z4KGFIe*|\tYa YwRXQG!a$g7M{r  W?v&>x OSBf?͛AΞ%p*ĝw[fW~XESV $`\<@5A!T:3`H̉a`:̱ZӼ쳘 -K\IH#?dUcuX{^%š@|s l>x1~UN(qXg))8xtG;mLo1,r I=#r{-̮0Ԅxop9PCG۬d wa'p!6B(Vt2wBB!R ]]1mp4ު FΟ2dӜVժ2kDq<8~Ld>}{*:c-ުlAmtG>wT-sR4g.}J\]cEdl-xZӭ_8/Y*sdL6dKf`q.9ՁGؓ @Gny~پ!$ͨXVMΔD- <6e^?E]gX b[l."{^Qw.٘D_05!yHdgŸEl4a<(4)Z+@v" τ?Va@D>[fXÔLo9H,dd&Ә+ysx'!t7,]Y$B_űv”PuN#䠖[q mVWnd3H:2,*Hk#ќ d0c(ֶ.$y!ӏIrڛJ=, -qN瀼1(1RQ ょ̔?[RjvVՍcNiE@'9H 7Zz eAVRUS鶞 ^}|NJ NNc\e;[ǝL#!s8Dsd'oTx%ɳze~l$2^U&< Ps 4&;! ^+ӚXMO% eM] csifx&.̷^jEyvl:M7>ݐyYz]9Y-3(X${yMKm@#HkdQ5B~B^N:sZ07 Jy޻ЎSW+ogGkϵQ}{ӓ,ajڔ2Pщ>^Ȭ)nx|^rM^jeLڥ`j{iKbCPHA0sI)=V3x" ZeoyHFCT5TZ; ޕ7 Taİ eQ |9d/v2X[eƛ݊/<_2a;07fhN16Cy @ŸWCe,#"tB E~nO 9+&|b̴wYz]71wxL^F5M-rw= <.t0\T:|i'1yjQhR LȒT3&HcHڠ! 6I3![m|ޒs"BϾZ#C!M,Aj_ɠ|ԛ8^jKf(d~n-%NJښ>B\6*xQ>sSp FpM$ _ĠݨՎ DŽ*6iuU3k,(9EHYP2okv)79<"tn;HWs<7JH_Kh/oU퓁Ӎ) Pq sH0e}HgolU,,Jac ~ x'T+WPe.G}K?qɑT_cv#xr^$wd̮! j%`h 4UsBfFb;<4N2INwX~]?7hfBAĝUlAE|`&!)*wy%/1ԪFx܈%sjof n,AfH[M;2;mZHAw N]DHծS7.$hq s)Dr̈́_{2uu͹pFeD xymW`i[՚}wY!R\kQjdaCe{zL* ϩsfE1E$6ڮ_W3#0 /^v6\(>BEa&ha6ޛ$L5 FPfM ter^ھ'@mgY L es;ݎ6ݬNvޞcCv aw6 h& ĺ7C^[, ͉dQm#?mG φ(G8% T^0vw9n2d 8UCg HV~?`ZERq^#.^jAQoWА5ڐ©(s[[tVC;Md*$3p#a^dpď6Ol̄fK˜w^E 7X4c >ea [叿bHq8,!wi,d7q~5g(n=8M4F땳3VN(df=U}ULTI;FXa10 2,Jm&(v\laĊ ZRut,)<ȭu5c 3ѫ_:^L~R8Bȅ>9`0C J?=gjhzErĥש|!mbP Gَ$?h} ۄ |}PBm] j-'CJ(+7+wdFN9 rЈc/0G5# J? ϒkUQMϐ Fk0d8lK&~l X& &[ YYwu&9%1?e$| UraaKcrm^XpHÂ=ƣe` ɰhRP[ QrِU`~xuaʉVjiClx| BzI)gxYWy ;h哦V5Hki*5a 8 ujzdr?RşN !20쏏i]n}:?؉~f-͞}IaPm~y$Z;MdWTG_ȄaP'mh# jפ\X6a>75ø-֠S?(o6)+#2Up l" W0Javu ~|^7?1XWɦ.51PdժXҠ Pc~,M=I)l$ n{y?цc#+CCR#n hq*{|Fډ<8re/OLʵ=}P0+d \@NCs%SB*vC;bT. 9bȈzuA| )| 1oH+秧nI| _;X&q&5tU=k5~oEl!{6< fEZa0HXA/H-^ڪ='*/w2b!1b^'-!'6`Yu)HE, (X[&U$.,)i/ ת.ȾRvAGhN)6B_8i}{H|9fn\ې U'͛]|nlc7tΉAEc% Ц;XsXO#]K75%2˄}̙-/ʔ%mt~ᣲ 6殳Ne *32}}C0\P0ցW A7i;ChxA5@؟6Iº\I0\asӛCylOe/ #'ᛅnVvV|t *kdA/),O'f:]]W 5vi6!=_zVKL)M&ˤ( \Lz mBp  PESȗ.)dqy>q={ֈNb/ sO?AԤoOZF2$>Is$q+}JXK!c U Vr WkN5ME[ۯgs )(wxe{F5qѴzpUa(a > j#fْFexɹjP(3ڷ\Gk )n5 JwXFJ3˯H[sݜs @Ow+o B( ]̬  ҊydXnיMSqtZE_?sIΊ߮+³ qCbjɌ8M`3M?S<2nr~KJ-=U|D?t:[|ݳk0H' .]ȺXpΩrKN̟UZ˰'NA& 0`92F o9n鄘_8ŋ-6lO8W%Z'~ 殙.//P$o!%7Ը%C7]34<9)V4B)ٶZT&}A4'bEqI=A>lTKvNZ+'4*nǤl(FW=s{5ndħy hUNL"n)L mŎ,^AhI_L5̬s1#z\By%Ҋ iv>ۺ6T֥T=ƭ`R]JXv#lo9 JO0d/$ _A5C-!_!3PrTvH~\I;l?Eq Ag*lS ab7+L@BP9EoMlg$m\S85 k<čEUBB IF6ex u|$XV@*r1H);=ȞinGG;JV0NA ?Ъ(;pmlBψqjNjfrЎ9b'8.|WN^Npo-Ce (fM3{Nqώn*5DvVv(sy.wWyZAzV8Oj=V ҾjNF-4vu>|tDOR;;CІTTB|㇎F0"xKVFbN-\$7y9~q$ɚjA7t NzVX -|'6 bƦ_3>׽g_f҆01淑chhKؒ[u-!܏p'=.Y7\N7gZ*ӝҁ(%12a}dej\ lou"-U lydՔ'Bύg-{S:~P59JX60 q izIQ;eY@ ʖmEg⨛ؚ^p!Aыž(E_go pIͽ_ƬoK(`8{D$C / >4:9% -8Q!C:'ka%dSȳ%k`PzO ih oHNQFiSi:򨓓 EL =0ӟ_jR $wiA!%mtyMO/;9's|j+LDBrE0 saTKwq` ׆^w1Uo_AO{)r΁_m#' d-iYQNJU v"&x 0ng| _0G)•aάmYi_+}</Joɪmpg(cq^(We$@2nD4ӓm!Qvc7\" SxFE/%>z.# 2Ɨ%,ET· ܹA|ZF>U0AY2h \nB[F[J@ &iZH-= }95׊'v9|glg1YBX^J~p;$n&T48 Xp~3{O z@h;@*b*;DJHJ.+MQ`ah{gl?BIrێ(By u. Lui.Ah$59F4qgzMqpy}dMCu>OSZʸ~F:b~#0#lPۚ~rmSavu6Nɠ_ak\-ǝ% EɎC(XmG RWīLe9)QEg !,壈+΍P0cKdpF0";<|:.nZ?gK t6ih5et3O/A8unFS8Ėhfʊbh3Yh $46.X|; d7o"]dě%ɴ#*>F%HR.|Y6'h&ՙ +djD?{myG]*; қBn[-+Uk?kD`qqo$* _; fJ/__[2*#z2sTC5KvR Y&GQc&Pƀ __؄zY >R|FyGReݵu$s: -O`¤߰,WF.Kf~,_hI lIM~|(? Qb8ϭK/ 4Eqψ% Wn8>Ј&1F3 w%m̊ܢ]#Ԫt)|=H5?Y}}vPB{-6O!+LƏT|8W5X }y= % FD.AzK֜ҫ[ yzcD?$>SިU/X"~}MKOoFnslӋQę|nEg~ y #_s@bDDAK՞7[kֆ{c*A"TDqhy},SLoo5&~y<_X@ǛF_Mm f5$b!eQ:YS7gͩ.Wxǔ8uipIPJJ1j?"5Qw*dBn}݀ l}!]E4 QK z:}!$%L ɣ7# 3xo袄LBH` lxG}៹qf|gkQwH1>+,/)<- 1>g4 'uN`7A+zc(nxށR|'G&S3dk.a!.[~Cx27r'E4OO\;V~ǭo70msWG *F׿H8-)u1G Ys|ZEoQCA艍R}Q4=M:a3>(Zj֘0(m W_l"=/67\[hRW}> Kl"T t !Զp]D3kerOySzIk熘ᵝm>:"+B/Bd<:rI+롗'S8VOr\8m|+TmZvegMSu#un8hn /P&HP-cG,A?ZX\W9.8zd7ߋM {7W+DycBwp)cU/0Pެ-dQ043"jA2X?I1W;]$?6\aOVЙٮÁz."SYƨ$=Y¢" [\DPwT腹њ0N(dA3ܥb 1%h^PZӺ%,|05;aax=;' :N&}|͔ c(jJS9%'jIL{Ѱ>9Y LdV!^쥂$R"_ؖZT"%!O"x2ޜ+@&vR a)W"˯л9s+@ISDN.qMVꗡ2rhJr . "+.+ADpsѥZO*h|Rb#dPOQ- S5'^wzT;+-G|2LX?$ˋN4J P/}WZx=gAI?=iP[+̃gm0ܚ)%^M~EƓg! l:=NcI{ڌPے mڑ/rhne 1*vE`^qvt]%l N]-"aHQ* '{^so.uk T=}e. il|Y*D V,+__:Z$I@= ?s}"fBt.cr\RSk Yd8a'T@WJ{dHfŒ0}6/0`}5jHVN~w1Y$ØģIE6#"(.72{x(S 1o# q~.}aCUP׎7`6:[vk5M)aM? i$1"]o3."\k)Qִui扆puYɺrS^6 fO-:/wQi.E[~[7_(Ò0YzaQ4x-`F= Db}dIi"vR$/O~aYF'ƪ'bXd_xyAp\ހF~(~O9=d}ݩ!tɣ+.([(bum*qav@HIeV7VD(ޝ+@/^>)vȠC*J:41) IA@O3+@:P28L9}3!-_1Hf91pdq'C 4[>2x[ 35Q{zm010X bV96=gЖ/7+ ږ lWpKa}Mդl˰x4ed"+u l <\;9Q7#@d*iKH|~OޚVAo]PϿpQ-6 ;_rwŢqeoJE~ԗȎjn^ĉϵA1CȄ{u'v2vQ> [L_:i ;RcӫrXNY1*Ĭ~WBJ+z]L2N; ́׺'XXegyj>êg($^&N7No րԆN[(vy &R=H]~)i)OvnFql -W>0/"$pg|d. pۓa*㹏 vQv' 8y{oNbTUVjXNu1 'k( ;UK=*τ"׏b⏨?*> sHݪH9_p҅jC Mw~RB1͸əYH>qvSJs>'w 6;  ?1V ݽ{ѕZxr C4+XkL>R`VN'^oeoY5+F5;.PE@ѵc߯oL}]xL76N `]{[VLVfT.Rl{~~yYGЃvSi$@c )$<'<TS0] s t#!ԤƿJD:6k& ƮhUvƘSk{SsA#nnFgx4@؆{ ؕI3FŮIL/r \/'|*]_7i,Zk,%\Yv琖NyRQ\^ZК'Xx=k=kv@wz=Yv,2*=]<4o2uvs_0a",/'f=4 D!c=E9r ;ՏfdSɐ_Kcnp}~:g܉ϧ^=o³Ȱ4Q [$h ͵%xV O%`{ o^=qMCds\#[H'(`4̓m+$up{R R9fi/3{BO/S7 d6^X΁&l >aV!-ؗגaܞ#KPS7/jrH Om̬Mth2+|5d0yXVG%nT8fhi?U_dϏe'Dy[3aFՕ0w8{ތMsvA~aCj+N(*b.8yKD 1<P?#q7!ӆvRg `ʁ3%+|+5|PGeHH3Nw f[iÃ-o E-EJUZu(?`^e+N!z;\fj(DGŐ+m2euj[B] k&jwu dkF #Dh?~l. JsNIdʇw01=dWfAO˟.W.MF׭Ʉc=h e͛@`@_;(o(:+/M_FsA{hס};i`'sB٤A2T\"ѡ7cn ~@[t_߂<z{&M'?3(m\yD.:=qްmiUvYT/6fRWfJ"{(T趵A|'yğk(.4y[xi+^gd=+f]/\V|%iD`DoTv v'1[ݝMNA3{:DIWXr1MxtXk&FC"8hwvgHm5  #m=,@ W@o93cpsfK󽑫 Qסy1~{c4p>QaRTnYZ*y`7Vg T:(8(Q239ȘpIbd_ڜ͢IK)z6:t`aĘ~Q(}G3d.'i%ZL=u%n7DTh;T]Ռ=hjv*2Ve%|rD-. 8aZɝK=?'ǰ1TLqJ-vunȃi~jzǫI.]!+˴DW])H( (ի0&a'J?e=SJH"B[.DÉJdzd#"֤!D^y!܃ms_ݭbg0sE)-b>*L fyǧӼbddWi9~fQu{WNZHH amCӄy@\9Z|kZ 9CVhg ެZ 4" }F9uJs3ÀJN_-_'~8<VSB-QYXSYU 5D] mf9a;=RBIty|!@(!OӨt mw0_!ݶ;Rwb֐}<}uqGK8o&ZS_CZA7۠to#l#gir&kC𗊗 z [^FX_E,^D.w*1z N {zgRd)Z3svun_={~ Hyg2z,k&Ϯ/ r9ѷo9)mQ`*E=RHrPmls-8b g0͔xDSkU\>pZvJܦ@(Ѽ$J"^`s*!+gqE;q_ E&듚Wd;"}f[X>ѳn*w)V/t>4ti9aKngdj|co mP@yҼ/'Eވ lv{ӄn~Lέ9 %wt3POA%3L#tkCe#zK1 <}~ r`Z[1Tx.!sDvM#pe8"+w ;&wCN,WH0rXQr &Iyd_fO(L&3! #;H4DI.)ZCdQrAŷ〙JA1=k-aMbtoo41lhSc>gju!!m;p>5y+vLMSdH"P|3[>mHFX0;%W6W@w+бT|XA|N1R-[X ՃG⮘>* qƐ4Cjd ՀAhӪ&,+ snwXDWTyl/d@ѿ1$-͠|L\HjSxup]]J)G#ZnpPX[,::#Svwȇi$˳s`np#40xX* +lJT8hL_n Y` {CV ڼY"Q7W5|i2Qo4}nL032Nu[-F[[*TX#O^p/f6|k FR{SXVZ>|2] z<5+ȧA$@0|@%ՑykT !gz'gg8w^?G2M,RbeB,iyg$\  lpB4q7\Jb؛ gbnܢ 2̽3ƨ#k >Ba|Y3[z #&?vMef 2燠>L(5@u8񋠛Qt]nbx&Dٝ p&90x/gR$Mc&ѯGj9"p\7Ly *-oVך4DO"z B($QwOW {Vh6T8FynP}[*0l?uZ VRt dVTJ&aзm\ґ2ɦD/Ťmߐ?5x ώRONeBh{F<4QrCu025=Z>LL,xRP(YZkѲN >.7@FPT= ̰,$0@ %<"¢}qSz֙:}H>ijVaGt#O^ߺJzu"<>It>bCtSӌ!5,.ʹM),~cHv2"M <ʎܛGe}ъYJj&ji)Y]3S_"\$M7 pE}"CYde4!\Ħ+W::6D۾^쑂Cd*O C`_:݄NsfƯ"evt乭ZL WᣊḴ_Ԝ#iΘB'4N`"Ѓ{Y,.;m)Yt̫V ΊOH?ŷQmafM:bBKjsw:eFD|g18(2Zyѐ%UCSݲ͝;6`$s,:W K^>?(ՆO:Pn@-4TDsD`o/Z+ް3AԹMz'+^jyAQCKl=#ZoD q#øKKYi;piTŞH?c,q}X_'"\GSvns ,(EBZ_cZIěh"Uw,Elg"爀 0Nj/Z=LD֜ $#1䄉&*i^Ɲne 6l# m4( M!h1mָuoh;l2>#,h{{ 鍙(O8.\7yјfE?.5S_KB4nx=RnB5@ȸ`'rwH\>ȘGgErVs7x5!s4~xVaדhcZ}*'DȞ/tM#j):.1_d"q9r0R"&ozzOP1z  hJi"U+ة$p:  @@ځ- w% wV݋r?t=R}*P68X4aK:eEIt^ۓ4SuTQPҍ@7F"u:Vևtx fw)QnY%UNmn=`d<UDR4j3֌̛|ay *IJՃ~|i`c˓}3QU-!+ =pa:9Ȩ -j|?x+0B Iؑ1ՙcDn qgk9`sOMB'+:f}1% gмдitQ`9@fcu%dUDB2,3y2S@bT8+zQ7nav]jQ⼻k^8ƴ1=Xъ}vw""r+c~H 8jA= &FP(E% `KRV.3A@=? ɕ6_5_{uWan4JPp ϐ,~YͶCU|RzT>;)?ar.k~=)dFH+a=4vOWJm ¯4mWȥTKXV6"N>d$ ^0ꢐe&QNؼ0 829YWȆEŒte#IC D/ (4fj^iMaSL u#ET&UtwUO;'B+nj}cQ񲽏{>8Q& @|Tܥ]FٰC@bm6$(nCkB*o@TփnNShÌ{4Fiz`,Sc}+&2~NfHI *.sOH5tnt.TO!Fl|U՗˹k?Β&;[Rm 0 J*ZA"aev=gj8e*A1݇<8h3ggmRL^3|2ENJVpcFS-<1tznK09Al6ڢr5aĨ܋Aa :fN;S`2l2j GG a'5HY{]X@"T#4f3Ow8y=i64 !ϯs[6/Myx"u&ZCVaή>DsDKq*m(6:oخVΦQgٮ֦H?omQ ͕ ဌA`.jsab,ٿwnn7/K3n:n$+xV(p֗L0ϐ@@]%sOg0M+y㌋6}?4bE%8Ww<ֆ#]۰u qjedw3LfEF*..ȼ7CV: ?VxwGvF|O]tScE'H4MF_׬^[S;mGYJɒet04}B{lU Ā}c"Mg>> v?4ay>EAzØ.%X-H_?>-v26S9m|*Ù:tvLA Wn?aLx4~uhhO95G$AnYό2.a6rEWLKt"_[SD} iynA-bl z7[ꇱWd#))Nֻ`%)&7xYHa5bj]`:ִcL%Cѯ5/zs瑐w"~vR19بFd^;t!?j2+S ᦇ'FЧ 8xlcht?|wy ,LOf,CݩN$PMRȣ㋵b;]C .k|K!.IF4|ϸᩗD?>}-`L@rZE Đx5Zl3 ״N`ʐ< tdzX3ˋh^rd>obiǶ)|}b-ZOt4ܽ'PzDVwZi~\\^7㌀cIܕ.!,E2ZM.xz&~snjfD?a-;`tTBp/fj̦K {bVhoƟ q8p@T ֯pP3|_K Ue亣yUCJh/M$663@^t<($Ʀ" w k_h uXW%-cfA _Rܒ i5_h͈. ^d? Ppn-R0"Җ `!q葫C]bh¨n+4읮&q8f>PpqDL\#㒥󶺅e8o\ qzcBML?C2aTalE 3&h\-Q{Wlg΅$T6L':q#.xж~JtFq XgyIFx "g3[` Zx vϧ*_3AcTs_t)K2 !Y7ԌSsg_r8Rz? JL|M<:wKH=С❫sR*7Z*0UC]M[&t"g-XףI2[}KPZӚ7$zLvx64!ĕʗ$ŁלLH-?P-@G oƝ;#.wţ\u?D7EЄ3)$&~e s!+ Ht,ww;zjKP]X[rD@3Ƅ17siYWu>h(QNSrX)1it5m"2um7cNZTM/Xlʬ1%YN4vYrњ_\NբՑʫiĹ{@v]'^9+_wE1}:;Zl)r4U}v::lW)\⣷|>NL).98sMƏS&ǽZ(!q\{BZOS)-gZ4ڊ{w=Idjː7v8I`nLm1A*m@olZJQIg=&zaܑBtX^Ih6M,,h_!b1Oq<~HqwMΪy@1(@Y_ (L;q"Z8m}!FV-S!t"['{{uGdYA*ydLJDn0Eurog̤g h\Ek ϝd Vp0x1~!]v‚ߢ ccVt^Ick0<)yvJ⥪3( L, I7Q=\'U^]$\4 |S1,D⹧ )QfE V -SS!nml~([DSYs/?pb|ܯk`H}?@ac|m?aRr}^5g9p*ސϷ>ھT ǴUD*>M1}+Bn/;XCˉNv h^N:v:q*&pBFp+T*9Q{:ۧ0L*ZE`&"EIz'JcDcPϣ{ôϷ^]gy/ĿVrUa>RP_ WO׻%Ef] {1a*G;{=яT,T־x'V3E n˹'Jڟѽ INN 0̮EZ>9:K\%$:*!1\ƒZULqJ D[Y.j0 D+ruxn4Ƣa:&waD5%KVa+!Lk͉@O3x 2'G?;W?%!f'cE8,[ 5犸Q0܁fM)-rK  p;uwWAYIBVe3kX@X~?pǶ\[a,D:( L4f{3e/)C=R=Qb}Cc_'O 0JӠӻ4 )Z::2h{{=7+CU_$[^0|qCˁ:+J%[K8/#l"V6g WP (t+Q)tg#dǗdA&i2ʤγz#" @GlLfƩ'wĜ9ܲ)\FstcRe4yTx @ܠPfWםn@ȃpZ'.#cٽF [F389:j&fJHKC.1oE5CCV4 tDjKk%gͬo`36T/K×ӢrIec}R0a7L",ÆȮ-KQ-eip0$msɇ^O5"x(l`{Om2-l"ZWғ 0ݜa}ο%_ J!$ sԊe`nWQ%_ޑĕo z!L!~uaZ\7pQ*T8d@"z*E% [ $۫Xӄg{P7i89\n.ij! HGu$3@+of XhnA3E evʻCfkAZFtUG.uuIQJ4?'-/%ʐ_quc?򚝦=FIŭ6j`+0. 8`;0cF*3Bl`EB9A 25G^1 kTCI"t!r髎qSZNox_ݞR0E@߉KPUF Pgh2yՑg[m)a]xY [E@0E!ڮs!t6MEUiXˉtN =WS˒TH>U+\l%\ݓ_ŊUv,v;Z k$ydvR-5ï Z M.±BF 8v_ܿQ|f-wQ)|(>$q$Md^K>n #_≯%wlt^1ӕMyCH 򹩮j{%,KKj6.9_@FT#'V}U:eݵ):Mt׷E4M~8֘$± >QgBL_,F ǿr6LEaH:?mPYTVǖ,= c!2D&{l;gc x\v_]t7dwt7:=wT;-*|ŌBt N2$fU^*O#egDn({gl#{*KNg]̮ARC%Yc Z<RnM?c3dfu6kfB7Aˀ  Hmd6GMㄗk{^ysAXafC@!(3GfΜUu(s]Gxjw]|w|uxr7ߞYSWn2tEp$HXAҩ% <`[7{ I6»k* Pҵ'lpDJe^`ѳ?"Si-`Ԫ4PM6ʇҏ} D>-\fiU{KP YϘǻEJU߻lf,݇m b˥-m0mSBuM 0j}4Zōux0/:bF]P:a7 Њh'r,o]\syfdSn5`!NE~|6{>b23&>o@mkL=ikHۃM\JV8 2ؓK9@z!G} 3W7l6Xu|9c )\!Q"i?%tgI@c1†P @~̯Vo?W3 \Υ_w룟92 HK(oLFV+~8Q-^U&kЪԪ>\}= }y k%zf{8Hk8J+9d31bhЋLӢVz&g ougޞr%Z Ug^gs1R57nI8posHlkm4׋i ]Xq"׼skbqF\\{ghN9d&ɐcAi_[R}4,c|Cj9\.@ڀo fO M3@8I7)f!s3I? `ZM?&ywzGuSCf&ܸPsRlEu2_=ErC<5C!rhs'Ep(ؽ͌^i08XK1:YAYINXԝ˽n_2,2ETM`p K}5`ݍ5āö,c:9`riUL)`)/D2 arS_G9e$̯Ub+'{>L4r}tw#͊=V{4=WAQU]P "Í >fgSԉxهuF^qz)I y+K^wqЙBtfI\#eniqʺ. J7bNAUC:rfüfĦ Z@5 Qrj;We L1Qv J/U*d\og+)O ,g􅋳yy0Z=O+EnF# tZ}@87Qnvʿ/[( nŽv}N̑HZJǤ]as DOE72O3(wdLS%Ο8N_n xM#SOt17y@('RY yhJKhF_tjHVcɩc)~decHi١wpи plBeqSۛ"&^{X[W6OVsޖ'1 1?PBX#U:l `}?eyF*w72Z_P]2۲u +OOr7,VrP"d]meڅ/H Յtl- .^~ `ϼ`gYw<8kP$nʿ!BEAoCK8װ4h$(^yLHLőV瘟Hc_2N -R?e|^Hj~}ث.$_j("8_~%]gclAJ^d1-:mrwGC0ےWvU5d5q: WcThZQi̪&w##K?QR"߄E@wrJS,ePQ]|wwpGgKe i'oX̺($DdTdD't^F"iQ0=h?[X&1*p2ImPһ3Bь<\EZAI[BC1x .ZȋOލm)@ yB r1亃 ޗdi,rB$be||{ g4i/Ǐؾ|`Ryzǽn7©#(Yd7MĥlG_V%3@7UiVJq{.qu@5T_!xQ`/;jO`1M.FlZTztK ngt5G=zIm'pxY@Hm # V0|_'ȣ"`PQ`Ԫ)> DX AecCs!=K;\t< a5r [xI +;5<2w-W;ݲ Y+\)-E6{4c'r.RjuZ]Wިiɞ] 1U;n+\s5:ޕ(i%?24.oBl-lԒk ="5zb- $_+Hp{iIhyT\=[Y{Hfnue A;D4wV071oXPQ1v k?p /~y,[R{XC!'&m4.q 4]Fq KhIįǡVL=_ xm}q$8TxT u#谚NEq,\ɮ,1{''y"6Uê&LNS{>/Ƈ{uV}|H.Z AA}!ۥϪ0Suj`զ[CFsh w9<>1:S6ֶ6k!ꔨʗh|f%S(E3FTZa{|S%7~WᶁVNZٗ?foPcm-A0yͺ!0X+kUyS_i"[äZQ1n.d::3 u|}϶+l+&ݪr}J"9oo5΂/ugS@!u^{R  q֟$v*gf.l=Jyߔ$exUs*Is<+]b 澀txN;I6zX=8 bOWaRE437YHd1_hbk,MíR< 9Aci1/|׬UJIud` ?v$RxQa<>1%R g*| p6iw*F44Io$ԬH?2Wn)}ry'kQ"KC oV}4UR<݉j7# zXK K WZ` vVp⫗fE9v&f LG[õ62e+nosMf"CUB˨3- zCOrɆA۬g"LP?+ qŴi+z-kJ6MnpB*uk(ԃa#5u#Xbk` _ˬ;j2J-1BY m%p =Bґ/N_;No&I,0D]aă[X` $}ņƣwJ&ؖQ\\&" D5Ҡ{o[ `,I3 l_ U^0A&sX|EA~(!UƁ?0-XPkQc&_&j@~!ޮXB*m:wH5  V;ȭ! Xfo}4xvG8rGz2$W.1!q&dj-P^LDz{&ʅʮXPmbKtr%L;Q\wm Iq1ֵ[`h9f+zCauy*3߅T(7&P߹rCOϚ y5=;ZmG"08ؿj B™v[|%y$'sXXE?ǂq+dVBXzu D( C v͹D3&?e {:B=M*/Z݃NA_gxn5&ٖcA=<^KX?^q ^Sʭ[A+l땉H2Bteކ>6گMvoEcyb݄C kECS_\ S ZD ~n[Y_1(6+HY &2_*f$o[ JWiaL+'Ť$@ly"Ã,6'=|^;wpckY0X_.j^)K{7?hĶ́S[! vpm /\|nmL݋t0T8Qzɀ{Ų<pN|N'kFL3b،肆~y ̻e8z55&$j}1u)R XO:m\Ȭ~r!t;Uz\)"gn=?Sb@aF BF^NVĆ"U dH*P V v-qfyO8їǞ=\j!{k]kU8ȫ#"kºXDXX'0wNLwISz^4y)A6>jATz[>-EdCkuRLݒk}\%Nh,P'h7qvmV  N Kem:?K.JhDbY2%o\#QE* OAC]hacLJK W;oܪ}XJA=/#!Yw{,QGY_V:GXʨ,ݦ~VFϘ}Pƥ؟ B 5T܁VHB&y*g)/ڕ*V:gZnFd1X0?5&L}ۥ(4mt1X۟+ۊxۂy ,t~,>^s zj}HH}H蝢l̼hte(Lb8)\ECn^(k{L:x8EUQxcұ!c@P\@")B,,6+V4bրu?YKHV}Ss)' {URj aQ'jOf8mY(; oX4~P?SډA_7d`=@ƫh' ^m$y/~k,GGO?T%uۆ2bCRLb@AU9vg#ܪ9qUHF4A}>Tvc9G]ݷa/躕d28kI/T!/7K3ۋ*W,낡͸Ch LG:+K~m9"9qϵNY5m#h26$63᲏s9IlSl} \4,lZc:~⃰ܔߕ8RWBgv$}&ue~&yrix}4~ >5TcTISG!V'Tʙ|?Th}Jc|ɗ=<tt;Z &wS\vDT,4Ra5p5843]aȰp])m2Wf B3nŮ$2BL )>CrO.3wԐR4wi >Վ#Iwu,+J!:T@PʰLgb pa0/&A-BDZp[^Cw#OEY ?^ F2 xQDV-QFa%JPJZ(*!-÷DˬGiنٓI"J:n)(`Hkm0M:!G_&m) ;28Dv:}4Bp{AA}lzn-gӁ庖E~ `hP)9wG/wJE2 ⴷAR>`]bn!!h}˭+-2jӾ#{;5#?FK} {{P i!Uaΰo0$beE/ߪ_gLtƲ-?C!{05  T^R=޶+2Aw,M'u/:d/ܒe2Ƚ-$k\! 喯(`—#SP(&뵯'|&D]['\:F󌒬hא}]n'ۜO&pZŹ/ouU?ZRf0bq8bԪ'`)\ \wx(u RB=D!/h7vb] nӊd|UT,VN^%{jǙ@1kCjd)~!-B Hd3=q88VAk}3>guE=@_\]q.i&kr\>gLl>=xX7gba-to:RjM+k_D,D=$L0)Ot\ r=b0BU_bS٬!횡*tMv,cؓ퉧|#T( XoVi0^ޟPX2ŃӞR ʙPGRV";u*xAz+1>ޮPX.^;JT I` 3جH5ϣ lɶUGآ%+Db[>%TM4? P>g9ccJ(ò9n/z?2<"C xұe(Qo`*n\\qΦ&~.L5J╅*޻fϿok$7Vn{nvR)e+YT$IF泂rg”ba|J Dh]jzI?$! ?w1A"rsI/w|]qے }5>āȕBKm` jnSuNSEOj>ej7LXl0ކCf5iFn^ :1e5!0y%vlp_'f2# `nH2l6Il҄>qex,GyY>@ !J19HIjtY[DSzǷ#›!+ P<ʇXkaH:Wr 1WTJƧ٩jWTuC!෎qMn%t /h!_v:tx_u zcDr(~Wz]l%ҍ..>:QN ˥qTZ.ǒs  1 D3+7 FXZG%D+5 Brw1$.!"أ3 qʧ-=lPLEKe;Y_Up泈706T4s}fi@6+ͳ-Z6[G#vyˋI }] &y€|_`ɱ]2ջqO-L{? ŵ+T}\*M g cZF2(}%5jEӯ8ɝnK9>v }3X0EFfP]0\$#Eo3x*Lߌ„-:=hGt&SLzVc,ną8qE ;':'Kk'E)5&ѡhUTsRR DFP ;@lϿ#/+s/@L3XAhϒ%ٺ&Ӭ~֧3MwX૔PTB$@pīAMzH $u`Prܒü!٩'Е #qi2+721gu E8  QIL^5JK]#*fƄFx46GĀd=Ɓ&8f,8')pi"Xi.EGзj/6}?Gx Dslm"Pq>r@R\ iqLDFlXkf8& ,R?F|~ј/"W_"0;z{M9hqyvY/vō" K F@ǯḡ4|fYtO6OA I6Eod̬I21qp\`i#AK~ sQj2CiUr(Ou2* ,P,- iL8۠k[ TÈIxk$2҈zX14;[+ VUyqJ _JUIe j_S}HRv } 5Fo`vSĮc4C:͎S&g 6M*wqt+15mWȴʆu0~Y2^!?&쪹 *!Q?:h(7bVrO!"[z{wǟ 7-;QUĆMZHCrvw~ T@&0BP,w)lO 9.mB4Lvʖb=U2zwtU|^9ؠe6-?崲 9Ur IYJ )p&?*X"Xn,5)uYUծ[3r2qaY-j2`IACb>(b )> !AडRGYhUA5 W)" ,G"͙XH>(Rk1^6̈ql~W_*.vNdԦ'ŏ f̤|"GȈb1V4Y1PeHdhoq.l],i|l+wƒFx~8XSɚ֢"b(')*f?:W\>}6GA6*aˬT:=ʭ'K!)G7Dsc~zb6nn}oKEFN67%C'ǬfJiYȧމ]Gs&6nu큥Bl( _|W#naৌގ&Y,0s) }ٮ}!)Nh6,稀6vQz%[kAߦ#(u#h*U|eXiNȃո0FfcL ԄyJY֍zEa`ݟRn{jaF]AW15'ǥsDktSҦX$qS.1sˌu4Kg1߼ \3Ɯ q>zOĸWNee\̑]Њ*o`RƢo2'T ЛqI:z uo~RSke֣3+Ip0Oaκέlw`3ڻV6%$flz솃t_1$Ivdn)S_Enj1;ROfXtnGsl˩W{iSm4@[HSb]-qM7W`rzO^6'㈫qM000R+E"/ƄsCR;fa /vfpz/8Myh'i(,I}r~)qB͋3!q@ZhR6Y5,ވX 42t$S+&uAt7G^&Z_v10jڔd~t; z,vNQ jĚ\nMl4R# r-G&rKkߏW?d7Xy%h+N6xlFA;umEfyW|펵ze8bc "ͨ1ό45ێz{*D%>8d5/`Wg[u & ,,9<9;|syN:}&P{c@][uHba(PrcԱ_f903 |JRmАh욎K?h5(2' v.=bГ3:?L;f_ `6 sE̔КMg&꫻O1m>#*9w7,QOYp<'PyVXDv2n!uI/JeFqNKKDF0=*S-pCz tAr7 \yR73oLȒ'7*ʾCpj l[k+ ?[wNO D|VgٓC6ϨƏPSnj.7'0qHE#J5RgF?ɚh)\Pj`ғ(*d$k}Ȍ]BZEsm4ҟA]ʥPM Mݷk+Y䎿߭.Ip ?_ŭ>^j"x*x5tۙt(E'~[aLțd?J.3D3cȘlW/nB8cD@M}|OTP+SeD;E*u ԷW2X,,9i$cp䱳\X |J][0 {bfwXs M:.b)\V Op8:7I: `rfv^aVE%f YU-I 0 $̪!x8k9 jďo<4K=t--l<Іs 󮝨kF%sȦm'@P-0o,$ǁr|~Jsd$ad/0zN0U\W_ ɜ܋d~L5lYZd#|00"z|Rx\H8|c^a3v훙kBLerK[e;#aiu r=|Mv:VeZmt%qUVTsvh\NR@a.[fTЄ&մIf5N+qTj LL8@沅Izx~W,UXЪʠȢ#>w$W,dbPw@|dr/%* 6FAc4DhG6L#q3+u^yZybLQۑj"aw&i ø:2Ա@3Pwp'L3\x||44*OJMO r8Z'XS։q6Zۛi}rG}M:̛oȦ&uJ[v l\ħ]f n)~)&JBM}1&UK:?Һ}D$/9"R^#HkY%~[ Z@bwG|Ui!0P,{j-};P"S(l屍;jiO$ gInhLb~Ć󏡩zBDaIJ@%YIý$r҃u<ܯ͹hY>/c]MCX ZDݗǮ"͠&xJ/5`] d9m M ]{3>7*⠧BgS`3 ppmeC8Pl4? g(|t&5A}E \'m#~ C9 IDvZ :u c,s(Auc΁t￧X}6X4+I(mqVJ!:t$qҼM=S?%k2v~ Hi+$zL#ugjs]?RX]gCK DCt UgY | :&8ƹxUVqu؃ b& y:|vTZfL*Q,>XIqD*r[mX'2 ;sy]P>e.L؂?=A7ֶCj%svJ4nŁ#(Ta'/QwmvuJU.FC-Ca_dB^2eiV:ծ(7 dgXR3X@Eܢ|e7̵C}-x3$suԃA[ _ڄAs`g<ʙ1ܡfR0 m^}@~ʧ̢2qgRuFWaW.^/C_(Y{H6I%Z2 $Jٱz=!Onxgsb-$pFh,lӤ`™(CJIPXWcO/~F"]q!uxe4(x#dc%Rccf f kWs)B՜EJJX_(Gz?qIѰVKM`9D60z# 8xL6T|n\I#t0u&;ػyCy'uxm*Q"U ,yB&}ntϦS(ݯ"ׅ/{*.qS.)}=5x&i"<ȢeMmlq]?l<ۣ/JU$6x@+T,dkwq ]FRHGggv&r'ؚgt&yQ5ŹㆪqϡFhŵROF-q֪Oc^& fV#a?Ƒ n7&=cIu^O;VN7u_ I?jw4U6SSm g~w+B\~58c_W R/3,=}Ao|58(C|ܞa_F4/0;(DYJ1Joy1a;%+4]/pwg@>Ň GOex%lH/=DGՔM+3;I/SkY*zCWjr\ʐadvϏ_xbPo(_ sA-@w6ZSA<xқufb9J<FKagmLo -Xצf_?Eh*z_ܪSK-VH=gE\L-* dd= }∼U;D#1@+H~ e01}wXm7 mOf)YgpV.7rǧHܹ,"Iͣ:)\ڸrW`1C/rneL ϨV +> EQLvN c:\ݟ)v62X^J_1EGE(8)px ct&3^̔&h k;ڑM5䪀9+y)՗VWR`Zzc}ZJ 3 hASoOhb <2GxI|AѫN1nkojfޕ6ztYyd-,T@k&OmAx.mИ rՓk`W eڋA{rk(`gb-C!}EiSqQ[˄fH>ĭS[ʚߋXhyS7\4qHcf>"vV}R_Ĝ-s]XCQf.x+C>*SMZrZ0|`S]˛E-!楧YIz5H:OpX<70d9 ף/+(keJvIi1.DL@yw$sˡ<-/`>UĸB_ /;"QơBG%L Z$tfN/_LۨVy,P#gsw (DXLup o:"-Z28DAq*[/P8'#ڑy"z>)ODb4敘>yo5 1FL|]ƹb~Ͻ:Y%#0>zVV`"MwJ9 r[E"%wa%/H`Uq* Z,Qȗ-:a.ߩid[,8U#m45w؈h_@^q讎XH >ΐN0:kPR{Tz*!.DL@p@cdD77MK1em|WGM,%%zY2LH@׶x](-X3HQh OA8^L[ı/]:<ѱԭS#95q"Uv[~Jm)/ ţ3 ^\Y ٓ@c(5! ٫bYSF,݇< m{ YA}IDj4{2۽=.;w]Q3}WۗS!vqko›K]OU#>a|eqzNEAܹmscS3OwW[5xۂuQsٳ;ߤ6}QgqD)L% ~0nKC<|kiO` ,֌z ɭkodNN_)w/ϗC:9'^QZt?72X^+yF7v ;@,Ti` p̰ؿ XQZi~7jU2N{Esy~y}+Qă{fu2{HДq͸պz³Hsª "O=Q8DJ x5% EF& E2 *@E:av~8Nج~~C\{lno$L/=iZ>i7YӒ7We>~|J8L h(ߑcy'̈́z|<cPoh6Hin- Ep".^p F&0[W?Uڵ=p+=r{ B/8WG 1]qH}8&1$" 3IbcX} ph/ۺٱ*2k\VjN^k2hưyn24xvNp "2}lDh?E7cQUwsNN~5뢄cRͫH;)龩8@L*5[./Rwg \7b q-} Ɵ\o>[~~2D{,rX'A˔kxR͛Tu\R\:1s>E"y#5tjQ⺓0 C~3H{MЀFmC; `mX:+V+!Yן$ "]`]<Q&5.|9 y_߱N ֜O^]YsAz~Nx0'H4caHTc4" Œ/Ӱ.Y@Ơ^0C7PE ȑsh !FWr>:6@,Ѽ J|PH",?JyX)AN^;]!_CI oS|GL_W[ Ҕ%&|-bд%:3F魌ۃ"2=cDy̑62ciXaJ1 b0a-8_٭mo,BۀZ7 *>]9uEp,o[1;YvWZdb*0om|cvM ƒ(δ.CcAfa yfb[prSmXWv' \FtWxVh8 ]~V2# K&W`g vK(# n[o>UCy7v͑hyhv.dfܠës ]HԼ Fft4N> 0 ϵ[E"y,}0%BS(-TCG(m/faQ1܎>lX%bw5`P$ a/VvBsv35 ?syoPѷ3< R^xt*iY!2*ݖVqy69"I73]fƌb0'> yXS1d\ 68cy V|0 1& *fMT3|u8Ǚf;V}*>˙lx` {J0chs ;ӕE҄GDHiXTt)k߽Յ%Ih᠋A½}20Z@I/c󭻫j:n {'>faJ ʨc_ ܞklUs<@h~US-Q889֡dMdCGS  S:8K: rJ0. xkXbOr1}~~r[]:R#5]i{򗹂qTQ3;]YOBf A,MZ?q g/_u^Sj_|sa[Qʗ }'m&+r見ޑ)G=rH"^~!! kQq_떭T׳K\@򜛊{ %] 81+|'cI-/~=62F^֢X\) 8tx9:۞b~5M$o?o-z\zx\ 'e]c< y2C" (f4/WHVx!s}%:'mM!hK :ZQ# 5[(09'cik\WUAzD{se7e.DTuEY a)-]Ͼ(փ9kǖ2h<~wGi [nxnD2ңwUiY_)ohC\(-EƒT?"ǐ''%"_j8vu,潬$ٕ5b vdv3R߇*LЃ9=[+=Z,eV\7.LZŘ+q0l΍eN+)enuen22l?k >݄SҞ VC`rV($e}g3i!2Έ)8jp -;viI@ qztl js!V_|{4ph]4T"SzI[9wYΤ  J[#_IR"Y'=L{ېbjO[W6,FQ@BY{եuCm:wN+l%U9['MHUYh5G᥋@d L/}fk1wよYR|s-}33Zh*I&~2׍OWkfG! U |׃ڿҤEؿjVR`4ܓ੐ǻ"1+ G ߭ʔ#ݥnXy,Gb.Lz1!*Hg:yFq''z'r`pFSoĺEu*EVTcFr@@2}[@, cU I F5vǍ5úѨ\Frh5U.d:2 k%␖_GrjOwlϟUjH˭iLe4Ԇǰ% Di81q}#7+H"j kob~@lwVyyt& !z$v8r^ UR䩙Z> ;:_gټ{;!Ri 'X≓;F(~$WIB T{`r%]8HSlI_Ȏ*OQ@]^ Xb|,lAUǓ$#^;л+`vaVR6q'4L.ʂi)_λ%h&"L};+ Ɣڂّ*}xC |V/*pcj6!{D¾?1Ql.L9rpFޘQ[rKʏB&/j |2l}9~ >ljZP}vLΨQHgE]>?r͌ӎW}(;!ܻJ.i#MD-ľ|1?ܤ!P.8L.Y!3,;s V'C.y&:9J#70Gh"SjIM5}>zn$Q?vI 2Q*hP"y4tL,  c<LoavcӍ;vjʅ#d>b:0}b(Ida:$ lu9ib=P׈HODm%Xm'`ʬcA"* OIܼٲ"SY(2\"_d/#ۦ#-$t[_3#r[6S&\Q8~Y4^}3,SC5d#یduH845\^mf|wR\Q5xHЋc#0WrNhHxHgb\;#L /kM~`؍Fmmw]jY^): ׂۨN)}ϗR[3(QP(+Q܏ <;2eʥ}B-C%8n$ $:UKo]c *$UKE4j)-7Lz/لs'V#mI?8Dq_`{c4:X$y>JXQ$a?/t=G]PEG\Kh^v)- (. u1 #c1߲_oe.J/%.Ui|jp Aқ"s! "P#mn>PA eF G`AA .c󥕥G-Pι& mnF`"l?}/b^3 r>VY}\D zWߵ0^U(">C$h 5"9>t@%:\S_|tJQhek2.oQ lU wjj jj"rVt$io_Y_i;ExtPHY;U qrgoLA/U֑d'ֵ{o2Kog|Nsܣ2J}:HHX:q&gI6KmD;YA{+ =gesn0F8,}G!%!6I(/z <6׶J,;_`Q/k^H۬B}9@lŤզ OԤdb+zb0~d/irVVToO2EΎȬE5wX"0@?OMW}}o@#t8PB!< >=/f.dTX b%CaK,,3F,XTZ"9!|/*Hp^/1a^Aùh}hL9NҬ %`US;X{jt/Ʃy6Q nO"` +4C.Q&=娌qPQT|2!# Dג }])Q\Z>N5LWћzz(bw#eD㏸BDy]Q` TaA~,LbXJ02kD}*Sr˨9:&6P&"Q}񂭈{qvk#38[2 Jy(6($5?)fV8T]y:6}Tis'5vy"qFɱC).i⩒|i._$(6m"0pNӕէRdb-a[GwÐr U9/Y2ͥg L1;~# xh[U8Ck ֥lhꢬQѬuWEws/K5l7mJzV!Jt>7F{@9ʢ%q@D8B߹SA4=TeUHZ3FKPu]Z+tUfm(yC~4 Ҥ:zXDz(-d A-"e"ݧ'`VW ' p׋SFͦ oX/ck3tr˫KP$b-8g{.@Ցa 6>nTD;j1Tiiת hM)F :_ZfQFs /OZߩʷ1nܑ׳ pQ(ԗ-8Z.C@|!kC~%2`ē %npy#OOªGh CgՁpdԴLٳ+DMeMV94eb'G(aUwܸZ:"ͣ)Y[^5b',RXTꬬڋjeҲ?5f2.3qK~(YfU!`TNqwdłunB_#.#U8kMC|^*|`i$ltMcӊ*#[ZdӘzi|RQ @jQ(6&03X9$F!>uc"Qg@cu4MԶ*\::'G+]ލMF{0/yAjYחS?;pTFp˦Kh4e@h*T.׷7JHgݚ?EcS61+M`Z>ykSaP%q\Z\I{B%ͿĈlh9+nx+Ik?$ Ce=$AYŚ0JivO!e!k`qO¬p1u>`\PtI4"f^WV}WbNK3IF2lwe'mU7Ծ& K'"#7UO޵#߸&cQ4kluXGz^!Z\z"1sh۬CӢxASY?ֳ׵4FbQˌ@< >bIU s*l41_eIߩdFl堚7 !j@gɄV2 &]ܥw.<"go3Kc+RKVtsMzy 1 QxD_S2&O&w0{Ci1]c;i$.Ls1rzb f@.\,S:f=~h;I(դ!o1_#lDO[Q[75E Ւ>0_ן#PmQlӽ'"ğR2r0u]qdp̦ۉ97/~/cfvf'4,rzdT^߶-FI@alId}=r6'a֗Y` 5і&Jc09‹P#gN|DtߡOۖgL$G veR{ᩞ!M"+[I>  wPRE Y\_y!"&4ux秲yn)ofO_M:!B?R 4֡L}a3I6  ŞJ[v:P/clWƬבk oH$g%umHΖ\TP؛'^S;6niH!YcWs@O )<:k30.ʢqhlIΣj9Trt<;0.Ԕ<} /_0+r aTyl. ~#Wʨ־1~t{0뙯 )u p.Aˢ/7䋴enw jԘzwB *+N72bTnk-ؕ>νp/2`# VPJFN w3U4M 8p]sIJ@01RͼqOnr! '9Pe$fŶ>7"3cUS"vn(1;W& y 9 LiegK 04FRND5_+~qND,z #=7*|_\;9 !niK%n}:--S;}3z[F-o gC&/K 2Nf!8:Cj:&GBJ%}7[;Z\%ܭsѰtS{R קʟ|[`Z(# 4F ʽc^:d5e(R,3(7q-p&FC['Q\2pu ~/>H,1OzCkC-YJ6fhthU1s8 [}|tPDt*k$E;jNf[p?Yc&1~@a (aatZ~A]E#^*e/4_K b^-:t)=7_̴zPHYʧ __Qeܰ,do9%6QjGQ`VñRIRL2T0 F!#6FwU\ 1Z!AG,* #ceجܮ0]0.UJ>l2:Rm𐬳hOe|Km3vy((A~UQ6oxovfC֚6mJ6< ixΞ'4IrK˿ԡŹA#_f_( o_2B:.\m2GǨV4Għ9QFIǏC01xyyb!Z)1/c.K'l=zJ^E@dA[4қ^* sŹ=n1p?]"X{X0W%`NJL@Sw&4Qxh> A"wO@t1,-' H6]0t^$HnVR^Z|ᩎXXQ'UՃR z΋M!Y5\KwǼJ{6{SbGdW}3Mt'FՋČ b7WX"˂dnWkgJ/T0{<+Za%lSŃԍ8>w¿?}.GW}|8>] 9}5v^2f5h~U/L̒Bês\T^ыZ%ts$)Di| |O@uMx@WsZ">5jz/6XWά $qY"qI\1`؄Vzz@$^]4`q9k&ؓk^9i5cmxN,TAylݣh=HCp`8@aClEǃ*@I;5v *>`Q\QNot'Ds xJ:6eҘՒ͇*-[bI/w*98W;UHخ͇`ir JC|W7OC]f| WXVڿ϶ Ups2iy{ovAdŊC;MW PmHBCŻtaL =[+oU8i[I,,ILLo2 ne"x1џ'Mor¸ON9+ܞbik%gl7ƝRrO,F:]; u#@4VXtC*}É--b;f3皢[`:]˓IX!}YIFCZ, ZA*ɿXb57AUw#T?bv Bl@+=nv9F>PUĬ$$٠Ct| *W8i{KPbTev0sPpyK]{C%˝ΖS@*B^TAL5y؆5WZ_Fƃk enAO/iaV_X$]F,mv"XGr N5MFڂJgo bw\!j"W<GFx\k.ȧTNB Jڢqz蕨~jqoAXZjdli ;W76ԏIeK{i,e?ȉ18K\z8:W@?֋FMz OGfkN"4_,$@#`Jwpݩ^( S!I35fSC/l8dQk_~r9R^)M[+-{ 4LNuPǐ.;jpY_vޔ!$i0= ,cJ1y*y 􌚴2㈠ItĢlA٩u;AI65b* R 2 :|^| vy=</xDQӆQ͑{.Z/GXyA_e/xӳLuQuEƷ'R21y-u%w` ,ouė6bwes>" JLLZ1S%SNИsaA-fKd-tc'+M6\)ꋸI5^X&7.0u6=9G q'T*}y3K!4.sh܍c=d8 Wu:ddaz! ՔKXoHSs̽I?bAǼOjxlRkQ;D8\)AcmcVQuvrT_c_@xmB0ѫ ?WĦb.%툿==˫}%ƜPXBKt 'QYy.QT ^AX hI#~Hre OZHa⹐ IK%%w(>Dy99CF=ڲeD- ÞӔ/z:Y1/~z%ǜǶ^Se]?;ffpE%!}ɔ Q>mSDՠnoN#|2 ,#)`jZ验U{7LƦ/^ZXق8=7}JG9B-TJycz^UV2MN{x$ V\@^V|."'ވ^~#K~j=rǿ @rUe|i"@3g44$w%/ 4c2[WRӈgyg߾<3>Bl+XKIn# !k..A 42%nDuT%;JJOAZo3?Ϭ%̊˰J6 x,gKM6t^X~RaPKe" l¶d]\ϊEojt:\\ЅxG߈A7wڂœr iT(6b)z(UN79]!|@L%7 x;"6þ|~,@B Zw] <4SXXC R;QqLuK 8Fʬ0j 'S=:k}xNgPY$jK(Rɢ|eAxQ[rDnO֍Znb/̫Z+[8l3rspy^qt&Uz,4ļ9 LWX]4O9AI RtpYPVفb4kyˉPr-%~IR(p~G cOʤ!UTկke1<~F`*ɓ_ا*?*Pΰq"&ibxê!L7t1)ܐTHw,걔۩,"=բNo]]oebօeu=O1dP§: 4xyВLܧbY 3Y$9h4\tH ^X 5OB{qWJCy#줧isyٟNފAҜ%z~a!Qߦ0af`}@YK#C͋Q*Eb݌dG܌$#xZʩe*Fm/mZQ7 C_ٗlA\ZCfήe 2bBvگ1Kq8Ys~:=p픲 ^S/jL臛okg4נ(9Uۢg2 zͷeŻN-Ү&~2RBjy Fp͚\D .AĎ\JreL \A[wRzKWvhk]ǖUJk:E@їܥj5 P50un`rbMq0۝lw26qiί;}Q@\ Y"{of`,4yX0L!- { (5)(8==} 2yM]D\{'^׹<;/ʕNPzKߺEkPPKƜr[.(IdrJk^hWUy15jw] I-Tֱ;DX)~lb $wA 'sͥndה.ĩs(R_bG/CyB("Qu9b9'b3mv{Tdc 4P 0k+*aTj>*"R|HxSu@ـJف>qzAp O=c{>dLlw,GC w\d@k!2$3*ϫlk2+uV>*&RbC d`Z$"t?Y~,^HS%~g05M[ , k d>7^).bzX\36abG蟏dê()@2+`MH $h/m} A ®ja?APNLy+7Ouu7T:DIB 8!PYW#e_P8[@F;PtYNwmvE#UY,wpἮK!>^jC"!t#uk.EW[ fIbz/yʊ4!JEpZ\=ˀ%,&a7- $_ }cH-kB"]lwQEl4,DrGi/mP3̏Ryv2wRs,*B^Sj^h(F"kѸׂ:t,͂~\WNjV@S߫z٣JN2 ٕ4ȫ$QJx|DaCsL ޚHH1ؔUHP ZQhKA\3x.TО/kE~qeK1޵қ6#Aӿ\Bm`d\"]y"4c_i˜}w.νS\3C fV8BMKwuo>ۑy8ק{*vuڥ044lC$N2{.gMKj:)12M2.D!'ђ(ɮM=Y,i,:D[,'YVhŋyBwu9+IVe^ Ob^i9AKp~ѨϱkTIzN膑E/i1Ya<ලP#CmA81UKO׆x !0q79,d@2$XLS U/#J6~vړO2WҴsf|w謲hBz9}MiSO,1`A"b=: 2SJ-8I-Qr%9ND: J%w2o-*Jeo`Fm~9LRnmi10V#WQp&Ҹ9Л ?O(N&>bYjN4TAn*^."g,5lz y2+`ޕ6<93%*'hAk6w!SZHc86to12D!`LuY)1>:Sa/)?̅*AφT<,tXv3C3*r(?C%dDp< -H1BFl{)5g+7X0=^9"Od HqN_%atҠ| 8;>> S^ OE3P{y6D{bh ޟ: :U׷ δ,Q~<`5hKK̋B۪څaX8 q$>=+W %0Gi`>1F/ #\oW:vdB3VD ! P _K68 X*dWR}\|&foahDʈNwAy-0ܔg>cZ%aKm/5'n3 s&<)",o*?ٔ( ƂèU$^-]˴+t4{VCmf]pH xn+Yfvu{0 vD(;huD*k!6Jngho "TQ_z&j|5f"zF0#J,zAJArLJ^U$* |g4yo_׉o<#kM ]X2oCo/h$[>'Q+1<inƤY33UqA&MWj^JK UbsU&~aaժw m1M^fiٓX~urmL2|ہwї"!$X/|ڼr'LBnFcM.yTqF}bzr^'g:ΖO~" :ڢS{u"0 k6sQ9˟Ԁ^Z].{x_BIM(O(2*P#,?4/&ہ֕Jv`$ ^/SFR\ i,1DŬ. ʌ t:^0>"_D(4SOk†/\յmmn8ܦ24:O2Ү VjA}wm#Sʭ_ qR׾j #A~q!kr -ķq1/-뗑9Kؤ@ָ:/@W>qMDO]UJ IڄT7r(^*-]Š2u,TIޑܨcw*7Aea%N7!nd͖*d\+Ǭ5XM;$vD Hy3  hQ`hwDA4_ON➰bwA|fu|7ɘ3#T>% Gs)Kr[uB OuYƞUfR BU2zp@G{\Q72VBWeH*sm>%UJv-~ʜ(+ 6 lO{𮦝TخrDbr=;E_#)ZP?@9((ޡ'ywMcsi$ i3aDz">Fm m=l PZJ8zW<`ƐÙJʟLķJF4JRP֟5pwY|#b$ 1˖H%~ƙEl3T_D8 4j~{JT07<3+CO>{j\/'nGZ/ [Ě OfvJ,ԯ}+RC>>kgUd&Ne{>\x0QTNC}N8/_>*f%DZږæȦܻ!r?N徯mAfӞws؀6 [g)k"JlN yxH@9 2] ں y_ofOShb~^Ev3ޭC?c(yw* FU lM.*8j߷Ͽ8l]~ékNY^8ٞA7_E Aʚؓe.K~aLrYH#: h0*eR8(˗'Xc8Mh<ǟk}Y6>O5-dVduHo?Q<r2p^:X )\i)ٺ.Y 2Y}^>v  MT-l~&>s癨 `ZJ?co7߮7/JLMUSħFzt.%w|724Pȹ[3n(tN6v CZi>0gY\^3Зѝ1~4C#OQ -KCRظ icEo}j䖦^k#4hT'[KZc7xEdVE O=:g]hnn.SQxa[?lWI-Ij(KwS%(Ew[NqKp~YTĐ<`lj3H kP"kG@MKVqc4`OHntApe6ZcHvMAB cm#j M/g_+·[z+Z~>qGw+ɨnYLt{L_~wBAXZ!ŀ]OeWiy"cK,ΰ"Z" _;Fj8ܷaU-^$}Q~[盔Mw?vYO2]o7UK`ULOYNRx-YCQSe b$ sA%6%IlUQ}c 8 t\7 z&wnmX4m *fE;eMx);#Efbe=Un҄/A:%ǻ1M H_?sW:0}t@4PkDX"a#A'U2KRޒ`g ə & 5ӑQ1eҠ: iR9!K,1*HKӀq=sJk+AہfD-P4]3SNF=$$~sbqT5ebe#nܔ#npa#9-TKy*˂2UDСDH XDTx@]q\ryBuLi}kZ`>(Z ?*9\5|2羘 4LocO1) z0_b,Z]ja [Ĭ C zDW?W̥Du':鐇%4R֭DΚLAxtN聗[.NZesA4zXI)C΋e-!OgLO91sioӁv*%ث0aSYuq+c8L^(,ˡN(^.$kRY4K' .d'Y&rqޭ@0({-*p- !EtQEIEUVdר?s@pJ߅ϗA߶pX9lrBH ʮ(׎M9CaTyRJ[|g:0uLFD 3cc%o8; wcvgθi'1#̒<G? /Hzn zރZRYOTnïBcm, #a|: haHy(o);L|;KCĘϫL<\ވ5]@Ok8Q;7bԆtU ֵ6>,s$?ẌpF`B*:WM{2Y)qHd)rR%o Pqm@vxB㠤`EbvN4C }Hv]ewBՀ;cΗ֡Kj6l#4UϢ 9" ɸ.oD(RAU 4 zLompK-+i%$r Dʼ!d.WUa'=UIAou ˊj)L61vKp$DELo->E/(CvZ0wK)z~2o?"K:4amcK:=y;/<-j[a6Oݣ}kԲnB|Rw[(E)$܄"l>RO`LtK5jiw9FQcQbK1:']dvpTOyڑ IMf2G~$](J;I̬,3lvHy3r(X+Ph8/}r*l߂tѐXo[+6ͶF>JA BTG7h *{v?~*l'$}Xi_+jP΀=6( OKT?eJo5c~AzMY)ON). AC R2na̺zlYZkhٚޅ_1!|U[WPk{tKo`GXN[5WhYwR2Q931W;QJ3׻"($)DP?fp竘 o[cnCqVm$#'@xAFQ 52p B,}CUWN!4+CA9T?K=4]*\7>G^ w!IpB[RWͬkt)ߴE[Z陣`EKc(؈c  ]o78|{|&rZ*.ĭ91W|Ilq8O<R_ *ǚvwRojM@q{wiHp L&մ}A}c!#SR>Br%'>PBu'O*t-}qN|+`fʜOȖea6J%z{~1K /؀ їI(#.1Y&0/Z]P+GSCX/oqi](zM!'g41n\4=*gSYu%3~nPtYG+ H۵ -%{mk ҋ#S`G۝K,C6vC#RQ:DG^ZےUu38)㔆9Brbظ^ZaL1ͨ8E#i|&{rcxFF+F 'ސ ?&>yωQI s}US5JR/K:nDj *؀vCFΕ\0㞭]V#?M*̭3o*>M Om(.xջ9xTtdvs4!}i~}ѳhDUO6To}5K ڈ`9hQcLf魺}rupN#9H;U"/3uk&7M# NQܭL5Mļ}..3(LlyԾ}"AJƠ ޫ e$7COm!f>)`oFgGG01*j 6tɿK"Ke8x@ey:l:8RA+CgݗZfh0Uu::Ff"ֶqX_ݎc7p!K"OLd OHR4$P>>A쎓7z;0iwҪjMh}dBQp%ja{mE951iM;Ӣ1fڗڪ@C`=2 %j-[E([k7O10-?9|c/v:Z(]3̊-9|ۗV&G҅6nKu,k`F,(JzMMZvu>.:h$R0$ @7s꿣6?|GzMcmZ"2l1I߮ɑmx炠%%=oO줤iml&T}}pڸL}b ’uN>mL+&F{js"-uFRTu& \/~μ^tȠsr¦M*cMlyѳ[aO=O)ݾ GPXJj7TR"a WlYxގ zjH$AD^}s?^O7R/8XQ8⶯)!&Ax"N,j dB$Hi=?7Z|H/.a/B77BbJW|ֵOeNSb{ 3B,"V}iv zye%ޚe#:D4ǃN=U VЄxDb dl$Q4N6U~>`\pп+& +/]b }.s . &Ӻ]8oZ欗YE|7{oˠ INXpnͱ]mVw.0w׻& =jd.8\80z H(G Ҳ9#e<]喲EѬU3XwZ.hrͱh#SO{?OWf!n{:BRؑ^EBu#q5).  BFeWӞf*wBL{3vKW&b)yꤶ'XK7 Yi2jENw*N&$p˶[{uίr ޣR oU5<~㻅:EI43t%䴒x:f_*^݉-|iwiSwqYfs^pS*pђn0Dr0'F7/m^ZJFQXN^ xSb|^ T]@hȴ4TRl?# B2(ZXsp ί#h3\T) s-˥i2 (7bÇH'A4|evt&{9~(5b4 vM TG$[K&%n;듘 $#y)5BrU{ \&J X;SGyj 4KiIu^~g1QƙƽoDM%L-pfHʤVʳH;M\˷vL3G?2Nͼ&'>ąI;rd5uo-rB Xv_Q >~xڪ]Ed[z[~sV<h$- c%},P6bSĞ5*`՘r1D7#vpU:;Aۏt9cl{Gxh#ƾg,>߀ ȅΔ=iz'kUWe I6[\݇Vr`%ĮpӓXki;yk~RV0HgG_qUMz`9*pa͒P. g٢ M2O2˴rRf~>m3hPh=,b)WM'CmdL)\;6u_&vq/Mx-vQ{(|zMT\ԇ!9UCV0[3(4(<"O܅\?FY]ְꂖ؈$ܻJ)y.b4*˶r _e2;T|qws%$YzBM100X37s;)mz>Zb1usr9)ˮzX_f( 3I=@o>%떘`,5zZW`޹ fVuNretSnRAׂ0qNhKER)RpO9-VGk}ҞkmlR .+QN= (M'Y~ouT_jIwkγL\:2 puƒ_bȭE&Cq>K4 3m=>X ZP!L7Z쨽M 1̳.Erd=tC%eQvz {WV 4M}R$]-mZR䴙x6iFIo/.}UAQv$mm!pqȖoYpbS`'ك:!7l2/[g~ 8%O &YFHb7s0r2׊j`-a[ΐ.L>IT~n[a*SRN/%LDU& NL_>coS9w&r5Gf?&W9`Yf*@A ^&!EͷATip{0YcZI uXgTi^ukP񹲐geޙ=xbQ/Ej6˯Fi 1)fF 7>E6x>H#@%3o˒`]F[i53+ƚ1@puh[Ʋ$R@We2N?hM'#V(JIn|p>u/fazg iUPچ:ƐctѺj?qXT]8 H'UvhUheї++dSk1'ebvd.[ t| ɇDu8](@z脁N4ewGJł4X$|kOe$Kٚʅ]({q!0ʍe=.7p^\51qGYDyp|~mpU'c[%<CGH 6%ђU3Ǽsĕ})-=ThnY2pKfp\ںljp%%)=U_0KЀ"^pk|j>ݹݮ.+A*8sE{/N~m#*ַl8_/R/= 7 f眭]Lʧql-FeL$TGzsHU;VqA!6ݕ&5#}6=Um81o] $5Pi7W0F8`9R>D D|Hd+VXҘASPu>d@8pűs B ;R 2Jj=؝y;b#@o [OX {,F$s> @wRbZ!=gT|robUL}er(c'i9@_4x+wkH\1=MF_9rHě?3& ,5Y3_]b6sơffZi,.Ρқw.u~0pT5Q$ o`B]QԊ#AX׫Wc@|k̭m\2]1p<-sR_{й,W>ڿ_۰|D<~)N1$ | K;Lڄs3eINjC>U`?YKrXΑm)4,@G p? Z[rs4gzvXo<|nM\ag*<ӒH+ioa,(36* Qx[VV $^ZF&% GJ 脷QE;+'XL\^ urCl-ocVt*F&DBS*F,tK) ҠR{lĭ[y=Or0|`5X݋ [?NH{w2b$-ذFBkOC2 +;~ʶv}5n+ژGfxLuqOē4GI0KJ'j%Bk|"b|S)pK[&@:▫CSݓ9WZ6糴W&\OIoR\P6;Dox9ggd~ow"V뿑?M͢'jwOL':a5:eY=cOв6>#_C{磾`] `cnKj>ݒj&1rH{%9Z^P'tXձ7_z{'b_ f_/N@GYٝ8 VVi~% bx .kur#< Ơ|( >=^r@&@wK"jxN"jo }~XOS!{3BK&(6-|\$ ^jICYsdMG7Mio+JYn wT8gW߻MkRejHAg 5]*5{ER<<$ ;A8y !G!/ܙM aշ}Co}ù{_M/üT$\=0='5-&~š_%_H'~ UJYT+0ҽ`瀰/M pK Xrݱ2'F9N-eE)FtRmH>P_U/g o\ 9:j~v75Lj|mη8]ANI! 4t_'=$&[zk:4lS*C\$y@^k7M?r9u"EƬ2B6vDeIwMhꁗ{ l)&-уw;%,01D l\S`k.NʍԋA`dnb4T{oaϽnR:V0cf뭷һB>MUmryap--1 %;[q~jn/&aΚ'Tr.!1%9M|qŊ,w>8'|+nvO.G\j{R }aB;i]uI0e:se̋#O Jw.Თ켍^$ZFc3P OJ} 8loK*WhOiFO-{))qlbw H$]!Ѿg9LUD#7O"F*1G Spdcerg\RCW=_l~wMfbR#e_{2cfw_fL]")1^PlEk^+m)f<"skS5cD "Rˈwu^3-ѩ6n4qx ~'eLKU'Joo1Qpx潫);8؏,3U i?[b~[psYŸ"TgE%f$H,>d|_&[<=4sD5;g 6e:㲯}t12}"p`k[ߕtN`jODT%Ȏ_G6 'P;]%Iq_V pM@]+?Bg~fW@(a%-+̈qiƊŪH>Mڷ:7I "@Gc0V0 =2/NGd0 UE[H.^XZҧ`$I~Ꭿ_ ak6 01MdvʻOvo z~oR?oRӼ ė݅zşrIbfX0?8lCVS) &JO~DؠjTv K9h=Ыol[6E^߇ ş.x&ۮsWʅHnr =:F`Mj :ymݟ"qB9V頀fu#&r a9Lݬ1ghg 0a.ꁝi^ @Ƅ9yeDP1 Dۉ;(tp^N՜o95T.7؀wƃ!rb'.Kmo gpU `|ryMOLyUL )Ke4I=xϠ2{r ff>RMtmdeqWOA'J-|t%j!dS;9gD+.CD\VB/qVDfwra&UkZ@ ΄##04ˡ}1? W )RR2xۃ"II ^nTV8g%L%;:Gp<;3(D|zHYo!섟NU@5ҁVI-vmHrjDiJcx'@}?D̄} >y]I[s (z3~}z\XS@qLӂgZrc[#1V it8m>盠K0ӭ +$9Y6Qas*} dߵC'ǨkۀKU0/XKrDcݥ1_x0`pߨٗlE\E[2]^H!1zK#"L݄y ;w|Y(MhU OCD%a'O>G2 'GcjQxyN8)Î`k&eue%k֌2+)n5&<0aWqxGįIFU OI*n1EFZ! #4FrIFZ;ˋf؃1sp&nq@Xڗ!`'oKc#Ny -Z!f*N+ 7G VOr ƹ|vj~Rt=/h4 A1MMoAb#684w(^֞mS -3Oqz#4Y8[, '%S6#YoM8p$J2T4deW)?@wdc{o|F)? jq _v"SZd|R%oNF{ɄQݾi]E4d&@jy(su60@ucs3[*:賩  ]9'=uRFôR\UM02nPd®`wa9dh@ S$ Hl "6jejݾœAGk2\,sEW܂(晷ny C<אP'Qv c=e3A5}e(ZoA9Q1MoQwQ_ow&3qv~5NtqGezi1e"L_ǂ&HQG۴ _ M*v@#܂)WJ։Rq| o1RCQJlVĞ=>=Xw*w#G|yתu,n tװ6RQynx@^-@uCoVsTz`q^A7;3>a$h6[$h,7jtPܲ<k?ACj /e'j$IKsҋ TDl 60܃OeU`r#?6;.x/RęjӝbjۻfeSyĈDZakT{n\#j>5D+[b`rf4dn**: |o. .ۿ=ah]Yu|M9N=B @L>RLfy9qXA\+)Da&"̔5֞ZYm! dՑyf?E>+ܽUJI|?'sycSy/7|x^X>8l=es2sz>>/|lG6l[l"Ћ47>!SL7eǚMtRčN {^!bk&q` r{B(hd1͞>*EWwihw$U[n ;,@hi_UR3 Sǟ'\'Q!ssme$Tuӿ]+]&Vp6*$M@$ԛ. (Y;UQ-8GMU3`@5/nc;M@!anbT,7lAl1 S;wTN}< :;O6Iޑ:n-33NhslI0iICߦ#VԎ+$[&?#dįS:]1`z~3?GV+ӱM22hV%szzq5rG9,Yh}'.̓$;[8An\~dnG+)qQբHx'Qp*֒OI偖^5?μeUw\ALѐdL$6!Q%c<+m 1ԉ7H6 %aBI#[ D)3[dW]zEy@݆f_zަlevpzR_]1g@,L|yљ^k U)"]IV).`Z#Zv)d LQc3R/iSc(6SA7LZaЪ ]݅kz$0vlIXjzALk>-[4pq 7~o4L5Gjp_\ %) b7By>~܁*ݽRtBh~  7#'W5 ck/,6`CQj LTOMbu3KU +זj1v(eo瀆SL h VZ]}XLSץƎ@q`UC(fABUa#7,qsZ`!,1lyל;|&Z"P=C!crݾ3~_塳f[bcF{M \f9aytlP3cŭ(G/:Ol'*SW+iP=CS^|Zf if%3T o0 O_=-\}^d@X9SFq{ѣc Ə+YLj7̨e%<4^Ri@~c@-w,?c" ,/2w- .mTj ]bՕZ~DغQӚ 1]Ut!N,8Q.QhߐhwF):oV7 >f*N{3o ӂՈFH1fdꚃ]a5B"ӴZV(w5Hqm45myі+M b4^(lER,VeΫ汾;\"ƬCTHc'n=SfOZ+SX*̑4I\ʲkQ:/J`L` m 2XoQS6*׭hA)r[ݡGB^IPlD]JpU.2/ b[t^"ZH= j:R'o%-)l8Qr|ΥfPӸX/֗/XDM [7?Nߚ{aJdNZDH?UJ*h$ =~^2ڢQVxZ\ZEg7L!CT_j?k%ꐱ#cƛ ԩ6mJ@mXV^.zBP62EJ*tq+bnsli4oi)H)Vºש+ l'SGIE?a쯽3O_5xߝnG6%y7Mr^Hօ7wn ʨ Qp[ ESP/K6:LJ5榑 ɟڰPmUQblo 56iF4^TxH`G9pxHVwH1ID9yKnYcp)/Em8:Pg' #i%>fϿ6!F &˫Q?6x?("&B+q|7TO]oҏFR3LoUZ}إ"nI]tMcc[fpQYِ@i7PjPBYBXJJqfS@ifbCh'g361Hb@-õh7Ր'-ܔ 3/ B u >P *W  -xX#YR(YD\?lQS*' n6C m_ϣe* U:%ݍ^' hd DK t]w`4d\@Q~"a~en}A.1e@JUR>!tOq0أ 2YHx|3iѻ0Hx. ҍ? yӯ;)h0u+/4" P.#mVL\e駵Nzr5 } >:$ Xgd> 5# )N`U4lkPKO{F չ6Jhvv.z弝v/Aߪ#A|oKi ѕ"IH;ջx%UX1Ts9|HM7O% ?f\TË$dp>F`-*-nTZT/(!fstue)jR 18'{fc!αRp&LhFI&<~V"K`NE&Zhї,񛁺}M&b yTȵU$JZWB. q1;zUUFRtYT:Bz0^熔;1ֽOiFM{XcV[nCʧ:liNu)Jޅ1Cٶ J%X!fwVR;M {Š-8hwn d3•2z 6Wrto;wG죙&eOb}V#1СNZ.XhGHULAH%(H`җ}*$Abj˥+|~j|1jJX{:(Yno4Fs.JDUfo%DޟtW|V%1FjKIRyyT30XN7`a,1Ьw$V#qVԴeVk_;A4Xj1=q ZoTXkO'lpFaB0'pQ}[&ݣ(ێ}-Ņ:ho j4ۚQ4|?^7:J93}7k32x+U b< Ul]l_{yhq̑^!';c4;Q)P#ԏ`f vڰ{H~aӤ/\/\cmr±B%ol$4D\Xt57eg-STy ?;]2j+Ca5^eBU>M! )g>xٚ_"e&WoX!8}>V蟣!=?VYe~o={'uw lc׷3LN֢W󼮜C{zpx>i4RF 1rM}*;^RCf LϬon/M0)v`["ivϸ2ֶ4`\H!tib;?g%n>f+lci\YY\Ѓ 3?z>xzcKI#)wv55QG̚HϛfJcMbmq7"Ds3,_edb@kw2`:2C[]ƙ\pMpԍGb3pni͏5q@.WiIś3C$)@&uĂ@;Txx4|#p/0mHd’st2oop,Zpq7RFm:c~łSs0Ҟ$bHREXAh0nѵɈnv+Ug䓟qhMi%3h -OHFn,}|k=v (MٳNVrE''sr[ɓD}#ϵGǖ\hZ řơp+gUTMgL # w?E5 |> V`8V-|^h`[5ڀEP}(T?}p0h,1VF7? 4[y]5{uŔ +@LP\1QMvjB"X I'_(W˹Cn m7UWJɄ6U5$CitVG7q^IQRy= 6oì"r^uuJ`ԕA Ot)M4%Jg tߐnG.e3s'aS[4n*RW>zku͕xJ*.NL"IhRBoBYLCBVS2Pon*6t9Iuv~iED+GxX7%R}Xr)Z+֔5=$.4)_aϝޣpk(hlWҨAkx ˺p֨1n^ *j7˜IԹRhȘeYhH1:E"5Ւ4s{z>#u 0O+/G14OD_&@>,Ҝ +`Ii2Y$@Lae|%e|<^}$7x.,(Џ-?A}M>C=ZU.sH;ʘCiJ0܌N^k=W(F=PBG#,nj mӿ߀sBZ0h,J 8<?$)OEUSv?Y- Y\ -]$ HcOT+&$Imo(9Jd˓)Q3d5](&9y-؇4?6eTCdKE EGu 'Xѻz>_ FjaO6?mΡ%Z CL hbNK. &l ( =>5b2XOx3-nr&>EoRzrsW2dWxG\ХrHǣN(9QQZm.@=MX#wԖ|i|O[(=DZ&fH-X+S2x (lTxnߡ> =vH#TݿA%μbuXT):|_t&l/~zPsq||9.4Fs"91aƶ 't Ne;a+Ywwɡw1s16~T"qb8pSJiKN1T=I*d&F >;.Ar*J}V'7gXvE|IۈMIeQFeqA|{su˱)\hE00:v X[<=`XJ0d_[)LRJ쬼t|pӅS/O+e/Mk!2="Yzz=7R5 Pt? c֯flL0h^E z xB]"oʔ YOsL!rs:\cr&+熳@HPqٗj߆db$ЗJ3E:uO]$3y:}Qs'CHɏP"]v!*@i@)SrNryKTݠC₇XD!㥬I؆֞wxfCxo ?ٺw'Sdo4"H"v =~15yC;\ AYj!5~d~.fq!c&WbL+#ʒH|̖(37B͌h70ai$ҍ ;s.@7R3[=mt{ӎvQBUIqpQ͐ cw"@T5jTCN9/w1yS4NI[< -I'hV/ΖD0k. ^菔Mfhu'TTh=~x5ýbN`-*g]IVְt67!k44Y:?ӐS⁓/|uR~PC/_y?=>c`s|ZI"ӴߡhsGeW*Et?NBFiXhovʅmޅ/|,X+4F \N80A@2d7|jnX๰r+XOPRōi=]֛@OXIk%;L:67Ro2PG~T&_PoyO5uqD~@Lnxrv7#|kV ޓQ-͕ThwlV{Ay*鰎싖_!ituu(ʃ J㊔PK͏xT)g!Jq?,'ƺ#YP .49_!WN)qt?h>ehɀ&5{oc/K HH.s(y;k){o 3%XZd9a2GYWzV>鎢w$WofS%ET88nSɮY;V2i~,2@_i1ن/Ym5H*IiPYY0B+$ /w)2>厬' L/GM"9\5θ*p`;M=db:zJ3G-޺ 8r?Yk\}~U{nmk? ;2WI˫\O3a0-IaHqO/EkyƽȒ xsտ{.7. uqͫdJz%ЧB8'SWmerE`!5NtVp=<֟Ŀ'޸+-&?o+u{3>m7'~F%!E+n M@U(etV$%γ(\ "v{[*LLı$DMn{l^ZsZ7`vTX""`o-rB*|v%oz˲} b4kU^kjoqd jG&̄ 5r*=~Z_k6gW?3Q]NJQVҳLYD"CzԊ6)=8u*?Z~#e?YɈq)=XcdfyRt>"SE1٬ #!T(i%r]I7vRjfw+RŮE~G 'n#æ"dX w4a-). +{ GU&5>% {^Y9/y"~rdM̆lס=!ZH}JYK%b71 1@3'+GE9x&;qK;lQb~P18y(W"5X<|ӷE^%t̒>*愕Q'OjZEG7. %ɻ1:C En]K#|3vOD t$qD^&ޚþm_{(DzxױX樒6VՒzW?EjD&aKJ`(. b *¨"4ljǡ+#3V4+#6a[8TZ dRl?2>UiMbq5*Ym.`+aFZ TCNp*uTkޏ@ E(k);LYy4r:f6񳿬3F~bpBLZquAG>Cl)e,\++hV3D-VU_3E"() -؄l?=FԵ qB_5<x(% :gUbiPJnJk-pXa v*~bֺwYܪp=u{pvecSh|0 `<Q_sro]/]Qa5n9g[retR;@GBxWq{a-rL#$x*8EOkS8/#+s\$5./-Kbwn>s[PN^uJJ#bS:GMSxmG {Rvlb/h1W `SCd}5&]8^1XQ]^z$q":9{)Bvܸ8:nmTK"c@D{eܽAhHJNsי8|( @6FW>'&/w]-|KPt s>`=M(4+Cֿ5PU!j GHikΞV}7شb?湷j.0al\t[4f)p-U4۫86]Іx\pI?k\L54q}RuEF&+-gݍEΟȴͤpt! Pxs5K`7ۃti 9k坳 7֧zbӵn-%bc)/pPr^ÍcrT%PXlQTKgPd$Vɪ>v%x>wȕ$wW:,dm1AB-(U 2مGBȭf Ⱦum*[vȊ oB&Tjn&gzWb9CX~>_+`C!*Ӊqzӝy(W| uWs[;o~.?B8P,hc*9f5͉0 l6t\@8ua(_7 Mn /Kzj \)j*۷O)PrIuI{̜[%ArEÌu~ WHv7\j ̡=WiV ‡V\w5$ 'i!*pa }P6w`\G8F79#Cz? /iɗ'k11M{(N#ȏxjLc9 LUhwE5OY4r}hLhŜ%ĺg<)'2:fCn aXc-2no$lM&o)V0G4~wrJy>)]Yεz'9z5}+>6riPVw o]=cN`5'"μ2NM0J{$2;db dw KYx#xwYZq&?p1I+!Hd@GV-Kd!Z-&Fh5c17R{s-q0?RI0#ᓞa}2\H`KV;V62l~=Jg zk=#ruk7kLnÈDtKIKo~WЇ[ y";>t:!8ɞJg[ʩzjdzTJJ tV*:eGNJ1@^BH t-3Ew!>KZgiMĢ)-o,(*eEM ©7[?9p6Gj&+yw`T:' jC(o8%,$ghHP# LVT+Xckp+E/Q7tjmH)Z7٠.XI^MBjZȚ>7@R-CoIb87$:Ѫ7E":``ƫZ;#t06o?IVA xsN ylsӯ9J"$sYZ9ÔK/662~Mcj# EW FfEa6R@ŵ9K'!@H*A uvBTJ 㢱ʍA8.l8qѻ I6Tzf|斡;-Ԩ2ȻR {e ߅*TiNy$ $hdexî;lNz1OGAǴ0 c'}j8)wQN(xH_YXQ~<zQ[t6ٷA LUߨe'އ8#A, ^HCت79Ut9*O@bM ɘBh6mX=S?r {oL|

}\;ywn^VN(|aWL6-$Jܨ-uqw .n)fFKuaNw(YzgZ}:0/z0y9%+N}JN,Id]lLIA t^2)30 @_ V88!3p ~q-"Τh3D1v7v  r Ѿճ|Ty 4MmOkՐ4]KR`=q`9ǛɅ%!1Gi$R4nI) gPX4B6:!9]㔢;ljx BTYuQk.SʑV+DR~,+?VC +g ts8jB~$zպz-xq3!Us"gmS ֒562w Q4(>25.⎝B%۞AvU"ۻ Yy1ǚ)W Cjψ Q 9eUvD b 9Z@K;Uc}8]ccǖYu8|KlPq94ckIq,7j/#3jvn Vf k`iM^O>20O@ Kmwd/ʾ89V-m:nz[صʣRs_<w ]wQ`z k p ߣill6~d*D.NPCϾi_ۏ؁ @ SRُ? +}R'>]Z0n?-"3,=Cĭfi1.ܘ7diWuڻRv;YݐhF{E>y?\5\]w-οB(;ΰq n/wilh0q=$"S=L#SwbBϕu^ а䭉NQ7隡eVB2Y%za0gQ06i+ߴXH%T{?Q,qx *^"c YAeICBN&%U(kä&pn b#iv#'5/J(Ux"uy$x<$qhg~ =I'yͩkyI}x.NN=p A3u`N}| II̒vɑ/7YGx(Ò :|2 ~6lk K,UʤUNrx҆Ñ]WQܜJf%+ U( 9*R^ƛ#nSWl4L[,6\pW [A62KHZ`-ܷwHfD_HV&kezhu#ts9rl#M S+G!}E99컑nlK*=Zlޒb@3Y7" ݺR|)> [fQw W*ٽwrʴBEqDw)!+?[M ~;P 13QS#iWgdnhRR@N( ,/r/*pd4Das@ ޒ_7\RZqցQ{Ꙟ> Y5|GOy|}M6~j8W!F5i?P3 VTA@ogj&ax:us4 A ;19`Y޼ϴ[`/5 j2V"@O`s2/.?q0`_SEL>0Z@ P\>ږIϱqj֝>MpǼU$$1JֆB8W[OM/瘑w@&QFkv`D>N=j#re (u>H%H;mL+jŞc:,J4޸΢^`wMr(016j_L&A66=@j/ kQO,x0"Ļo,9TOsrHXB&.q;qgNPsQ)!VZ‹8;!&yJD)mifnRw6v'BƂNaАt ~ysچҵe؟0~>CYPaVb}ߎMmF`I8iu{Ϧf.~nH_?ckZ'bH#ޗSz ^ xbDڟe_C{BMa#.e4Zq~ߎ 55K=Q*z)cEc$r۫,E }lK }EW4/ W_ؗPgN  , hȍF\>;.$JqH̘jxdE%,X JJR||\ݵa"dIJ%A((A=#~ $Nook>Q{$.V뚲5rpUr2#(A2A/ ='=)t@-i$%d"U5-ݙlnF?orʫ]kĹؗ*Q[ h:6..~2ayގa>UHm}e"u8RUKEƄf2Kƭkdo*1ci17r}܁M 7C#]AuC8r OlQ}iF|'#p {;<%#8ZTu,ȄK|"(@p"ozQ-0N^]\b +BJgC1,,iz*;zsFP2mc(%`tˌy|D!T+Nō+41N~`=<+akKX6q@֙S覮LhO!L&vfFU^{P 9gJ1#_jsWiqUg& 㶗lr\X}yp9FBw!ϭ ~z oV 5j󃩢 ^QK(^__,WEJ_ Kv몟Gv󚧙p?ˆկw6)AcNdf˨B+Mo}_8]%:h«*%SzJ)t ?6@ o%\b] 6GAs3h Õ}zٛ%g0o S 2źC?;遬O6؍^@:<>yu#cIHHUA͎s/dXIRo15X1{-sնuDQ. 4sLO۾Epze-r֔zmI5SP7PĖf^YE 7(XA)3Ԫ qg}j7@? kӡɛFhEUavl|¸45nœLG̳Gjǐ|A=\狎/凑3EP\i_@;j, {d6=enday%kEYz>CVAirRz5Yb)n:sMO:Qf}nE.evqϖYHT"ҞĉnnvPcxN4b4N@T%1>;t+qiG3Jr̥nb:U6k*3'k @x.h pi-\X]n܅4ĩ4kaZe-3=mM>ca{N <+ 7;]?Sp+f"$Cs{-B+6,QӗPAa_Y<%'>2NvՎW0*̶'Ѱ+BӦD fehR!.|j !lloԭ!V$hM(nsUɞhz\۳?n3ŏf2B~| g]$JCMtL/3‰ީ)ywlai :#jB6G~^&Vh#v:\!H# \a \IpFN5Gd;]wѯrͻ+[Av&\NS#hW ORI(ɏ!*N;<j4/Aq 5C xAȶQ+!|p 䅈cne O4"nOt6 bguPoPʑ/+C˃(uU ں JXw.3P@A0 Ἲ!vt*˻@_jP[ 2=ͲJ.'ċ2JM[St><a*I+צ?šFgeqtϲuna䡇z8^^B6Gz9RHwX}ѕܥa͑_@ޥS%eI66Rٽ j5@I3jVYH'F#s'0yFnD"NNua [3\wʱ^Э/sf?)\ՀI6MdY{F!&GIU:岨pIGEUxC2v l!v5rή՚oԑk۽}[bUvPMWQl"HU+_' #+' :IfR2>n@t!';̬6[ZǬ&ϾO|_NzDl^ng6L2O0861MrlSSR]5R<)9F0u'B׻TnJi═UWN|f) eSvE8Hu&s!6B(M x5er)oqC@$&&$t6$㧒(=1;V|exL٪L⼃!+{?F!1WUsCC>|qLyk ʺo̞[ H .O&d[ HCU-8,ꩣtc"Gz^:SJk@(=Ё7 HD9) lOd?[^ G8Z$7:Mb=>׵ΕY.Z-tLr?VIP;L>!\MGC IFxZ~ʱ–Q#vv}+,gm ']"'RKN&<`(Z0>\lȐM}e@=fR2qY*~ՐMj@q'8Ƥ/?o3&Auh}*t* `J5x9P1w ?h,6,FHǢa^ѿb@ɔBO8N诎}=tlwOGf& Ch7KQTӃgWȃ$=o-t>zcf{783w %rl{iS,m/3׾q2 ]Y6wPSRlJ#\-.xV8A48F_3[)rbxeϜ̻K㖝eE|Rlue[;8z,ã?^EʢcǜˢY=Hvx +U`X;l֤WV3YXg^BE[o03.T!n)H"YMpleJ2߫ 6({OQtqjYI0˥ p9'xʤ?y_B-_bcA=a(b*҆le>230W =ɝ!Efn"2zX_NNcB ZqS5~Szi8:g=/HKI,ɤoG%Cډ%MNP.QnVUGΚ6Zh'qV2wb΃-̀6-n`z-H Pl+y9ShK-l7x_~YQk.݋S3r!y^-{kr) c9Rp)7/)gN'?2Hݷ̗Xt0nKҐh%}2438]HLџ\]Βꉣ_Q +UǝyOԱz mwyci>8b.b\i#*z‰68wAY3.FXv1['BDC&/38*F@Rh`(/_ 9NMx}0 b IΓQ_X̷N{ce>?%e_M-VrT`eq]H ڌ/ziv`e#O~4`BO|Bn`dt#(g-ЅK֨1< yJC?dqBѻJeˉy FV=J4zZMb& A[*J.-jx`þ<>KDlN;_N[G~ۓK҇#s{ϙ?-Í\ }f/0nXP'n#Gx;70Td:SFcWUa("C:xY䇽N%wK1{@^L3}Ӥ7ᖀ {G~!&Xu$edf77H>`"d哣J)Θ/Z, QųQ*Bcc+ўKgĺS]. o`vk`FTcyKG_vV ?~Ge`T$DOzpD7YMJmC: +? KmI#m52Z%^0w'lYnڙюgxTA+a ʕqoNOE|`9:N{pyJɠJl]n| L+=$MaL>j5ήkjPLe(ݞ=<^D5MYS|袭@oQlQZ<3iZ("ml(x{x<gGN,؋拭ea&eJNl<3>p2\۫xYO$4VY^yrV|@/lwe\C}{Iܚy|*Nw̢~`k$V< |\n>->˺)\O:K@l6܋nJ'<_ кFS8xL䀽geLawC} U2D3[J~ KǁvYo% ;R<4\V-HEu{D",3[ Lm{R1.( 4oF~uiH&E^\|j^$=m୩b,.~{vHo8s@; gt-Q%,2| `NL& zڶns৻aSz=cжg+<dVafS0YsD%IL)z:sq(Fv<lp@LXCTGIxSp*D XUuKJ9@G F,7rM·YJB۪*wI:Du'09bzXk\A4j3Q娰!@.5rÛ&_@%hhWi8k1l3 P4b6ArW${t0ҟ1x@̂Ш&>wTfPjx&#6M[bv vt E˥;.pXBea4[T.R%JdjKS9o]8$dqZ!7,NɐtdYAL][Fe \҉yPz&K޹YiHgWMz!i~L@C66AAd"V& J#ɳqy 1im7NX<܅G wTvLJL((~M769;Jݕ?ˢ^`Mzžx.}K j|:WOT9wIYnpY0)bC5|ejR??( |%U32:[ [jN>3!CHV.#sT'w/Ǔ(><XvՂ2қ ' =l5or*p֍GH$EF9fS֓{zssѺēgPL'[uq٨=v3ڣyD(sa!wrS46USŲ*،)Rc!kZv\t&){r*"izc(;n :)chfƅ'CSќ1S 3rv1S*J!8X%Gj/#ʸ^Ň#~̧͑~0`G q B- ɌWYNw:6z0["/Ţ79_9|E[u WRۼ9?u^='4 > f $?V.>C ٢ѡYIg>b,l}+3j4ki8]ϩ WWؒ-]ok@ke clY+i'Z ݋vHhi-.cdĞڟɣ8@T=ޣPhSX d0^~꼂-aЗ󥥤H攽IeHO5Ax9MHC]72-do%$ʧ:ȦeJW 06g.>(Y&FuUfhQ `$F˙0-&X] Ϲ71=]t pb6]%p-:;MU[jl5T|%^3˴0o d&sP5%dFǸy d2)GIK15gbZǤqܾ6bfn%d?lerȾn3ޞwO7tu ViXFX8)bVLH>YƯ8P.vWc;-{!C9{*HS V@豵ٵ{3Nf;5).*/Nfi\eq2( J2#cZ[p=C !g9-RQaYMz( ڧDU.k)዁4A])8u_<8lJStj ޽Qm.M+C6+עA&mb%IMj.Ê s b܂R[oASmtվyͷI$~ H7w${`ԻB%0c;v)Ҵ?0@OhJ̭)RMC}[q3$@Rf'E]13Ŝ4ZE((NJvxҗۗ=$^o<j@<9sL]^jkADpA1GgN| ̴C!WF˻]).n[|䌩|i=DĆAƏ$E>@G6sivޗhɂUI+"N25/'qz;楞>vNi{(ƨ ynFtF쑎wym[[{?Ȁ+Go"a|c}o>#%t)Pt"gB|` wv|t3il1*+p`GLwFpaN ^ ͍8EjrvNX{>aRޠƿj:[FӔ.bc?o+<}DRݬo0=YJmx|H\PcE8B lhdZ5WZW9R A$r-s}z_uz* GsUis}V/6݉nH50 _` +|C8J\.iB1^Z'"kPSyiaZx~XW ѯ,:WN5qx,0JfM6ع~5`][ *5g򶈴j Byh);5Hö#A^ijܞiŷ,kK9$lW'eJ.@/B'hieO6 - p'3eD#kݿm*W^]$W࿀9XۣÙ>%)pNs6fHU,2KeE-w ֕s 6n ~eev<(7>(~8 Eg~Z3B/뀫T$҃ uO cm ã/6DCϓ!"Blƙ -l7WUC cfDy6rN1$4:0wkV Wniv6% ٣4$ @n$%mpf7Tm]?\rlr9ډ:/VQ̻ί!D_)x۽ Y8dn2Є;a]!2YǑz[?W/;`*^;/( Rch};`H>Yͥ_ŠTrDBcl?/ GY$PUqJEs # ^tZ9/pByY2._:۾әXחKO9}:XY՝t{'{[/.#IWU{Dy^0@jT:GCE#@d)a? aɺ#s_ ./:ɻ'tei&#Tv$_;(+G#u?p{ 9tWP*:ߛ(ב'AL5:Pi^j߭rw}N EF-nm >܆[8vqNp4ܱG~iwd0mKt4$Se2{BjNML%*hR)agc\oH1n907 h!rG%0bVY{A+<dz?!]1~;g"'>K5Vׯө]WXc Jc1& /F~_KZ'4餄gNREl (DF" 8`1'Ոg*'#v|?YBƅIGˑsU$-r*wg=^~ͽ/O@yAw o-&p3U*~6lBoc&*rqRї>ΥַLk GkH#n}Ke5hc` Ϫ3bmݾ~tbm l"9moS=Pu/[Z*A-pWX3%RoSɼsh͑7f=N-'Qe/ uߜCr\3Me@10L׉Lu?uV:A"Hq$4&Bz4b\>ȍ]jcօ]4NNlrтk2Z(ґtr>Y֋N+z3@ TQW_>27D*>&Ksfm4p8{ !k%265pݞ~df3N(σxlτf8iz.I(794 γ5v"ҫ4<\@}ZxI+DVFIϵ;yӱuY~ee@Ċ:9?ڎd}׾nDc즻jV,|b-~=i03ۋ8Mת[X ^0 F~"ǂqH9P.FϓpD,qRWH/aJmVkm!Yn[MR o?j4~qV%5, => w;mٍʨȨoE"6Sd6ЗL;+{3+Lg_l. >3 J67"3G4Tզt*%༠#{ LqR5~w=x\DWe%r*LۈOn{&_0&ySe ͚*c|H42ͩ909j>`dO?V.7r(yE5a/we:KA۠ъkbX­.V'X]=b꯾N.(O{Vn#j{5esCBb~wTx :zolP ! +pύBjQ'xϰ7=0Gow8ݼXl)Sea;O}I|b[|ZlY RgcDoq\z(Ѳu+ B\hC} %!UZ(Y 0%6Ɣ]NQQNelO1+MŒ,Ȉ@Ɠ1x:F,YΩ7NkF^V?7-$ʣ_㨳aj4Йu2ҍ~L@4;__f38xXrP 4*٠2 FHglW(w/pVkL?elD|.bcwaxK/~Ij>܂aKoiJ\ dw[߰pYqA]ދV}[dkpɴ3b`Q>\~> ppϦ`}ӷc)+ϗ+INs=H/vPͱo%L`hxsF}sf * ']^F yjo`eF\>ޙʍ4\zε$90QȤC{bk+38}\D{oF2ͣz ۊuVG7;AZ7ʺUΡi?p~t楞*V@pev" k.H9{k~_B|& .aå(`[Q~)cZO"LdZHZ<>.R: n/fP<ҡϙqx=×Pv݉ v*grB25Oj-[n`L6RܹBgAuB%{ɣ8&3}XVo1\jո~'.Vu^skl[`EQ}$^ .mPF8N],e P\Wvߤ&hv큡򴺶|}PYL&e>v8v_i"e@XavR]][ni!Roח֤8[|)iM쉤azc sN^Ju/[OphEۛq=%E,+v.!s9Wo@|uSȃ`PTk1THMy3;a?gO=PLƾA#%Z.4"ͯ74Lvt"Ew$C]MBܬ]C##> Ӱ>Niąa(ud߁xؼu~G8Tߨ>?/Hu#(Te)5hD"co-r1k/wBRH6@2gKp-CjO[&dqRlҼ!ш[v %Z](<ш4~MLԛƑ*Liui'ջ3%UӖj6!ˈl}Yg'SA2$jwH#` Kyg2g7Lۮ"VW uuop HO+W7Wr>}~&~ ۧx57'*5 Tp0cVOtH842IG@\JMKϽDZ]$ݐ%SPk;Re| nV6y\*aG_.HW[*Vd+4 'Z}ƒcWauYnq4lgk1XÈ;oQl3Z#ݍuc @yBNk-^ q:2 w0D?P;TL%-}/ %>6y71e{@;ZR'P}+WwئL3i%?(޾d.4Uah&}ٿk&C-vNSgg{t'Íֈv(y.HLRj 騨e f.Y o/_ :)U$v:Fڗ[XO 4 l {hv?rWFK狕-&D0I62ko*ۋ{9si{<*MQ"9H);PZ.Yޫ=W.ka:O hUk <{; U [ i=!C9p;qz^iM#}Z<6 H)mnOG<(~T2j:DZF`'g'Ywf1٥~qLFi4}IpPtJn /9lN>락(0CmCJ2l*%3+b?v~h釨3ELRpӇ6lywr[LRTAr XGH{5an¢ ؑ՘pOŵc3ƁU'ZN<0-2͝ hN,J`.&qdu1Iyk}Wan+Xn4|MTVP5n{!JjrBXV7֧Ü=TIyQW. kdaӜI[Пs-]t?ԏY@ςrU j#[Kj!ndV^vN #B69)9Z,ru{&`-~(z+x !ȴN,6 I.ثMDƌ()|njA'zGYpszW(%_ymMYBQUaM4k<1lx ̈́XɱNrh9>@nў:\ޟ]Xu}O&>f[ bݥLˋOQ؎8"IkƐG|ʃ'#XbH-kQ9fa@4x,8EhJUDi8WnW`IȠ-ze\+b%q%1w2sʹ74;JػpF-O3i]{16)U`[0ȗr,J\%2\hv] spRwܵ[:;\8ٌ ,Q5(9 liq_L´n 1:ÙW%˖L:K-is%eQﰌ!5 ֕!U"8k>7J> bD*uV!uѨ09~195OsF~-o!o*lCCf75@Hc!^ɍToA&g1ް,L/Z#Եg" ÃB%4 {.)"Ds`T4W|[ OdFkk D5e4kL7-ewjꠞYHuX595i/$nq1DnВ@$kwgJXD0yWu |)12޲]> pm6R\ƫ8(_rRp.\C](J}oBx Ltv':ϰcpVvO=[ޒdYj {J ({F)gZ7nr,dejGg~+P?eWZ *'i5K :,w:3\ݘ2~McsC+l\ ;E2%]Hv;Mq4 n^>ˏw쟎)ΎRGDH>U4=r1_mmH )d8QՆ"廧' 7 翱O/ߵD$;x䯪}`wO[GB`<6h6r q])e`Y ֒vz Sw$fhE\vݹۤA/'ӽgK^e0AMw'B zqYxm  fhxj'IRqpMiS ix #8d]-#@B+єQz>ߌL4G“rA?U" (H3IΚV#B-/+OT,uzJEd(@5'_:7(۪yZTUIN %,=Dw@Kox1 1ըTUZ;]2%󋂺B7U,-jHF'y|ܤbE JT3Maκ={KK>g6N ݝ@Ud\C#Ici;EoN8ʳpըvX :=dH=tEU>)"h ac5;TH'Or{mNϖub ݿ䁜-C^Uz:zų(KCt2k4JϴdiL%*Y +XcOz`( LܷaƼg Қo=T>J3 0\b_9vӧ`r (2IXvԗߵcjm;;>Qn:NTZvx "ŇO$n{Y]NA +," &Res܂ԁg:݋a aXQJbmT WKwfFni=V7t!Mg6fPR 6=c{Vߚnqj<Z1n 'Lm2ײȁWkT2R'5V1!rdyvBv<pFEm,vY.ح 0>Άn8;9WșA~L@%0x/fCb6^׹KSOtd}?_֫ņjTvQ] 7-4RU'ps<{6;SKEeҏc9pYO0(V7ƌ6T3w۽FIY]qӧ'[#k~=YL٘3 _r%OT RK 5C3=gX7Աm>040EDD p g\JXsay#y>0^hi(ؑO =KwSs rJӊXCq;|2 ,ʨ! zOށ5ɄyeHDX3CS?s njϯ l=Ɠ%% a&u7:NR^b UovCFI6A&Ey c E?%9̜Np.; 6:JzYͪ2F|m52@RBgXx꼱K|˭ 16+DMWX*'h{r29A&6TJd3rR6 =}6dGU$e$n%8 T=_%$L\^Jn#ftҹ(yڵDoCeIKG%׈&}hJ4vdlM޺0>}$V7d&33{=:I}b ]kɳwMF72X>t'i Xk~̐#P4T̺)׼s,`}%Bj0ٍ^[E&y'EyR]Q ho1^s`zgP}]rc T] "1oa7`H`^DeVD]o 'Px[=Ҏx8[D>ճΙg}= O[ ?0L[/< XDZ>/pL څy!YEz0ÛGe#܍=+R=vdEv;7kJɂLݬpxQ:#Q C*T4H7~v24/§Pƾ+(R1Q,W-yВLpN,5-LJ7bm7rT#b"u mLjb}K=z*?{"%kÞ#ٍklv 7?谈IK)zj[&Rz|ǜi%O=q}c6kEQBt:oo@SCL̅ MVYݐ^ (e+{qxMiܐK%'K_]]2?NMX Q_-%} fWҕY_ :o^3:Z^(2+pĻ%>ʄ"|c'֘B!W)hI~߭~Z;wnFSԜ JnM$0)@Q)5d)حȍ|xOUF.,:T,G;ٕOA[~ʠA+ ġ H03T{-$lC|"-ĬY8f:+؛xNM_8rf)iN\^WۜNSzy}B{=wDr,ޟe")虀=dpLf!67!BF,NВYEb,'mډ ^ l}_I]ufB ]A{;B ʴL |=juyܜc3EJ-Rlp!fRaq%QfG9,|:vrE| &eh6"y-zs :-Th4,KC$cAYՉ֜^s*" /WwE G4E܂)7wh ]tl~84񕔪hã7}<:.]Ύ PAw/-g_{_*a?#Hw]R87#@;xQ+I%d&OH 7'fD}Dj0s k ^<υjK0aSы-& Ki^Sd#P Ci]I1 ]*kZ*)>y/)L5(ZwrNтd CVbΙР*Ld|̨9 Q043'OZ 5W¡Ȍ4v; /NQ ;2+ GǢ` wZ6ZC]B%IK xsS~:}L?8o 7cX#x_P?ms9/$H"uZxS 9%y31y%;\NOlsU""cWۉbܙghPb$ĺgGE\O |wBrO\wrh)Lk޹NdϏ}6?1$e m(eBXE2i1hxf$ph6<ӠA1цt5Չg~,pV|V] t-fTy%# V0z&đOպ"{p5$L3F0JE,(b4sI٩Jߗuhx _Eu"L`3_\-w'AY/ϲTg<5N- 7"QyAF[1iCdn(=Bm CЂ7~X[f>;;SŦڕ%X3xo ^>IX*x&J.2E]#Blh-n"Cf]# Vߢh"u.Iwv i|b >rH]ABvUvrֱp>B SA[0rEf$NQAŷP<c~t8bw[npu[F8rZӰ݇ _j@(3֚Gz\lV"{v~C0&hrVjb ڝT@n񹿇W9Ag!w}Ĺkrf/!!c*5!![NQQq+|dseifycetf›k}Y$MׅƐ`,̋Ǻ⸂*Q1I;+i0>=+ep&Eas lAQǯj|-%N O3*BȲe'DW+@R)tjQh6kwM( eE0.>r~Ӷr+`P~& M}K((۵5\gH5H_c݄0x㣳lK3яоVxݖhaȶ-s&zsp{QN 0Y#U}eu\52ޝ^ްD=Aڹ3ݯGB@}V7tz+TpS^G\`,^4K֕u_Yrg+b0,?HXX@ ~ 21QFsJQ;jN*(o݌Dy ;͘, CCǑz*ʝrusκzx$'C)5إG1(`b~zߧ"ȯi %w̦wU9΢Wu+E%YJbĘObp$Z٪x@[|"mV< 8Dcq9-;h"ee6 xj3ETnP; GVf9 :}u{D_wK/yVK$9UfUÄM5_/ӜZKrUˎ{I/!؄~]G,axc4.RZ(p#&ScQH ζQ'd7u1}Η)ݪhYlAA`ڝ-KPO:/ +9PLi8#\QtxzY!R9}31. My7䈮I[=Л]sUw/|J|_)gjy$/}]jTx7 (wܵyvJAdzXݟ3'`@AтXVdF{B>4$nM?Z,/By TK? ZCI~?I^`M+/xzΉ6]"1n@?ŔB4,Ō;-2 PTa1Q#J/$p?HwƭoNVV#!?è'<>ή3ʉ2KR{hCrc,,* Y#AR&;R BQ43-t(cb vɹxiw1v g H<(ΧBjnh2k,[!ζ.!bOkS5*%'d@%KQፓqtyV9 ֛ЎK|亗REX dkmO'>s #LCKTD=9z^kh`dmL|8,{z|T,$v“8YU}{ta~txƽLS143fUN)Yq_}E 4 !cih Ѿb.VJ+F>(ߙKJJ*"Ȑ\3gۮKC xl}֧c#߅YܣyEZ:( J\5zSz9ܞ$}` kجT) pg!-K ّZS-B$R}(z)lcV/_M,֩"SƍH= x\ZL3e$_C5P6c:ſh6<~{VeoB8Ht Ie񙘅m zPS6PbH#.I6ʲ2wAw(0u Z47ht K-rCj$%khu} [dK] ~OI'KZjXiSCd"?!8"Kg{7ȶ-LըX AܴRd$ptB4{ lMs@i311p"US0RUL@V{h)UJeث_wxrf-/#P\ I:5^N,XWj;s~tXGM>K2r;^L|;MBi 'sX՝l&_wUǎ⿻s},YUAMxU/MlY>SI#/+:#OF‰\ܜ֓ɔp$qi-b7 *U}pHYRzpr,™@< DؒBAD6Ŧ `̉ ]Y_ 2,N{NzC, uY۳40 :MP-ҪܓJ\yxNc&E#nT8bTktXc /s^LaYyi¨G8ʋ /)\U0>QMI~FTىdޙʖJ–? a#DA"^^He&/ta&Bы<ͯW[:ٸ}JTܖuF +() 3Ce=dppL7=lt0` SKa?P6lK)Ơgw:x`n /uLdDPQB3LSpa =GĦtOm&'QrqEWPHV|L*M6յ*F H>/!x#-շ05۹Ԁ/}ާ%z};5gZϢ0P̾vcBrdP 1htVhIdv;qePjtkM$%LhQ S-o?"tt[үF#YT`=NͭS/%l"*r=8; 3˥F#Lv 'ؠ쁓Eg!+L4;xq PE*).!Hԏum䊢B X|"`qLbg%ƇbF>65BB$OBmc-#@',H2 ~)?(Xq. Q. zެ \2C(T_|9t597:'|Az@wϹR@R/WASM=dOlJߏ ~*wU'z<(%R9/ ray!#Jdn#M٧V7Nh+wyn6,쌞i qVmOpXkJY.zqCT*oeNI>)k5kQG@zq #J,^q7o?Arߒ8O1ܻarZk{O'_}2" TK1_ ӌNnĮ͖ͭ!z̉>˹ { {8Vڒs`Ԋ-]Bs,hXda**LagO -V$w'L"+亻l?QZrs0FUN.UG8>ФTcr8m3ε% oV#!$76M~,\IahҸzɑ=EWp )3o_/i({:^ee*xts_+PWE&!yn n^8Z7};KePF.q TawO%<㧫"qs' =#0A-aV+a2(Z0p cdGO^Dw4?R\ RIF8 ,g(F]f:#cr.?Aauɩo`Cw?CE#'A&{[4–u&eNOYf"}4\,N ި%BYaԫ%a3g^<ĥz%՛Uq6b|e QqZ75[0!p-C$_OI ÞQ=Rbn,Y|\L;.fˉ[jR$hN}K! Ut=ǟ qt"(б9c-=TK%svO,))xfxOۮ;W;LK}wVO>)&dGYSQ%6ibr;:JC*%隮tMRV?S)De%b8OCznǿN7Αe١tݷ +YplUC.֑սu/ݪU˃[3ggTMM:FB #7S&Wg,;u`+'@uIY&CpeRKM*8z<nۦ`%C6P$jV>`Ƅ;WqDȔJ@#ԨƉ2Λ<>Zk)`LYPRγf˙n>qp2IkڬD5l_m쵘uˢ1⦫ƃw1iAqf@FaaO/q$]2ݾ] +8&֜17nr^+h;c@QV #ț9808˳nִ\WG璵SI$dFȒ-.>k~E:V tMLVQȸGItX.YB#8x|©dΥz݈ Βڭ+s1kg"Bjy% H²n\6,k!STA[# a%I}u8f?LD̜+C9t N.K6>E[zN/hZ$U ~ :9EMH,ۜVZ~ bHna@i̾n'qv{DClwŦI3 >ݬlE|bIh1=kbvX"Ӕd{\pAԦ'{KixSCDZwj9P`f*' HXb/g\.c׳RMho =5k{㨺}]IEK>!I3c=FQ՛Hsvd cKJ?n߲=Hpu=(rcu(/%?옯s_'Ip&;WO'fъf2Gu<ݱu%[ڍgtct͞La*ȫu/uWR[M=zX6|>Q8}۱NFNLPzvsXpKe.9D(NJAkKĀ!2ۃ-8]LYjd_Ψ]TXtt3:P:M^e hNOwS8…{{T2¤w w.<2͹c9Ta~2Hūûȶ@8,^pF]Qd/9Jtrez tϵ Ȓu09iMTE"0eO◅Fq9t\9ht R )0E A.A7D3G~ps* '&KY)OjchNB9hFVp!x_IB-lT,at VH:b.pQ'WegF}b Jp"3LFMJ/m2?%ZaOбw:!JWz`;VI4|";ѥ1RrfH.+IEI[#OkJ3p`V!B_y2#hmuC7ꓘr]14L=:Z X H0& s5N53cxg42J-/nW ,seM'Իɿ-@ 7~ѲzdSF۸,IA~d̜g/؝̡ԙCsi%լҚ\b" g7lNU!YF{[|͘Hl<|yᷟ0w e,S}効g./'̯0P02~}4a󏗡ks 4C>`'t[[^" Sbha~|JC%<|?`!"Fm5 αR(.z`T+hY,0N)abU@FG؍:VEm&24ĕ&J4 %tgp4 T:[ef *4F 0 qQzy:2Q,SK.G ׺{\KJj)1n>o٭l MU-5 2n8=9_qdkΞM@CbކXb@7Qbu@U-EuŽłpbwUXbט,SUrD4B6ߛ(#ZGcKk1>[=`b4fc19Q .2)@ۘ϶d|BƂ؀RQ$+% Rɢ%MnjpgBM߈?jUa9+Z+1cݡ/. B+dПݗ{glTkpLz~Sȟ>٘--m@ioF֤P*bzm.)WV;QԦ(Wdm/r[:3"wS،(Y)iM갦2?Vs)*TvŅ`FGsH* yNHҎT_Zq1bܷ0W&HC$Va} ž(d.J #rXB°Tļ4q{9U|;u #Nu/IJi#(kjypA?FI2ohmճy@-@휄ĭ8E.Lذ˜Jˀ;n\ǘOH ye(4$ۙqm4竝Q3I_>ׄrt{Ka ij_e:C\$ dn4!fٱܬO]ROC6zz[6ۜ"ybб8[w7,T6}ZSl6i5PǏ 7V)52'm6^ڨX1 /%|׃%|PwoP~+G(H˜ZM":1 &)i=S :|\qUX>_LEcOKlngKg2)-1ԴNw>.5|l(yM):TUf}&Lp><6k-=|$hHMy~dbhrfa066j(H a]޻&b| u=np :Y<~ h)yY\\9_b(cE4ɥc6*v3|X䤡*L8R)$Q&3cvЗݥ+fu8 x>1->TduW?1A2hGT}==/ 9W<3~dP'q2,?KO+L?KvC$]rOlD yhHG1 t_P=~2LjJ*عqOWM lEaʎZlaEރE} &-D述o!Ln“0webоna;y; I'Xlp`X5~ DN2Me /.&pf;_oJU1=c9(2$Eڞ;PG3h&(C_E.qDh)55;1 Zu:)STlg\H·ze&3bK '5B#}dW=2NY|]Q$ ~Y2kQW2oxr)=hZ Fw3F$uӀFPeЈ*_6LދAgpRK] 2{UՓ'BP(teqD0!#r Q<90'vFBʟ =)LN?_q2Y#ɰx9W7OQIs&AĉͽJ _]@}b @UFS{6Jt*8nAtg/} ) U3Pl F'7tRc c `(<{-cwS(Hyz< Gޟ"m Y+(nsxqb3 W%:;&'K弃DT'Ooa^0e4-ɪ;Vcʁx9WFO'*ЕQѫ-4ñڙzLܛ5 |Kl#W)Uԅ3 :0 gGrs(dc"GN0;b]%d ]bRc5q3j2$Ua_ٟ:7K]JP}"L%\꼝h'Rm rw,#w(@g3'XM iW-ed́]vn/[aȋo{ rQK kҏt];Ψ o&e_՗[]Zq%UJeմf]_ʞՉ V+2Cʰ}w/P(?rHR_V0}m8 (F# Bvb_! Uõ4O`Ґ͹~ @eh\%˯r9' }f?’&̹M`R^r$9<=a9L5dhqG4?-B =p/M ZsU2-73ؾ'"t"7.AB]:dy:ֆ`sl\ҧ{nQ|hün<r9Sr[Ԩ:9-H<7=θuDC+g2H,緣Va( !dV1ׄ1AI>^Uoo}7}Bk#gV{(}v0F 5~9_=j2$YE+H94F,J4 82F*_Rȷ)/=4"@ M7*oJ{K|16so|[*%͍ۛAcu|Cˠ?C/0t -$\m$Oen#k %zB^&s"r^P_M&`!ZwXP58;[V|uvpjS*V-:$aɹ/t>p6=1dkFQ{%@У6mGw;ˎjg-3Yw~i@t9V7ƴ Xyuwt=^Ly qSxÈq":0ϧodg!MNek®汇ۄ3%@_9C6d6yYxuKpTF0 tS9TOiQ⸤ϫYL׌fC w _QGz9cU.6jϾ-B 4 6 Bu ; EDoU"I"-iBc6a: QR%@M8uivaiΪjn?4'pJm]CKP0\eD`}fR磂BEmLe:դwNpj&ɨ~!{"0l`$6[jՃ;Q]0aF!笲&'^zuZ5Karj~= tÊ=zxŭ^g#>}8$1$. #+IڃSYRؑ׻/ynjmV269"Tl2aHut\¡Y,BmM|CN6! Ol 2꧷n9IGKh|Lck@CtqneO LcFaC'rY.9Xx= q/52uEl}iӠW2ԏ4JWgm'#a‚ RT$h,PRo [4"B}F!2m C|"F.ߒFζMN=LdgyZ$Թ,ApP&ى+04y6O(vVW=s"9B;~g6n.UX.u$Dvx4H/XzB csEm\!ī{2. DSVK-sC'vk.OuO5*>ȤG[Wk^@H$]3lVG#ƚÝ72Y1CCHo%O8Xשl!6"9anV8}552aTILT^^߉ٲ& "}C>(̸; dDM`e%uʊ啥PrpLSI}ϣY@ Xp21}J%*/Ԁ sM&ݏvߴ6ލ8ݬ)8^"ϕY_f cIgغ٧<4R,5z(p[@ic/O\Wݒ': `i+$DJRA١M}ԓr)*CON?ÉY$U+I>(:%7вunz_ ,`zx9km<m.s!eO`< #@~S"H 2exld>~nl,)| _E*sƉm从;HmF!0$`cp<* VaPi%cd]Z~S1>6!7q]O/]u[baashfZ"\j8 k_0g5bƝ2`; rv;,o<ɞ$iQsL?j%ҊT#BӐ@V?)ohsv(62XM?Ĺ;Jf)X6# 2)(u"!/)0Yքrw2tw7>9TGgOn!;ȰO7{/fbdVӚWB΃ |P@M9(?c%X_ʘW.!҈gV&G+srA77E k Th mS .{B->H">CPn8bq i1 mU ՄJns>*e[XM\Z'QI9.{r?OĊf ,o[0oc~SE]&jz"A睋N-k %1/܂C6딜95`j!ɧ7|04\RIi?"VzGX23k TV06 MG} 5WST5V5ǸuN)"6d6ߛY3&Sț;p2w|^Zӵ&9,a>uf& G)\;B3F a긫aK;Y1j x+Dr̤ Uu^ա㦎@k:!5^|&zS0t Xٛm-*{fV,` UxRa&$0ʁ.l+'l-F МgU{~o+*<'B҆0|(\֋.{n-mGI1dzF#Gޠim:a{q7gSEͪst58^WBXYPv݄z7'v8As>zS"9@?\b(dwQEWʠ~ij$,YUF nȻDo6=* a>zX9-OpxR{Sd*}?rc:j*AWY$)SC߽|maV)8\:28,ȹLEFzA >񣻱EoEVrwJJIӠ3OkWi,HFZw3+ t3Ym~MV`lXye[G8%pI`, e*3ļ|U%{+~S;Q1L*d|2i{P>?ĠoY 2:=]P MFyseƤ#Q s.ڋJͷ䇚%WX3*).YT*<ʲ6̴֥,ARpgiP=u3}je'8~_LZkDF̍S:adR4҉E1/;GcnFCIk Qǥlf 3/}(᩷AA@)'Lғ$B!6߰%@ʏ ޻P 8Ȳ@Z7J qa8Ʉa^MiHMG[#F=6|GqmZi% 6Ϣ ԅaej^M- j%֗jRAVT~8 rCcc$ui gEmi/SH'.\0Z uC81UOc -kAd0GV!u/ӵeJIq{3w %oMx0 /|4[Q[ޭ/c{]a$xxPS|KEE\Sm1U?R]wC{,e3EcmY=[{'^Aisb)  ڸ /ɺ0j~3+b:Z^j3/Ur0)زmi ݄Xj>ybK ]ヨ Y6ABR ?yAf:tnŝ^чt̊]h]oQʳckz'/ EC_sEɮ8qitViXȆIFgb߸plioB1$O21;WC-~#{}5Wޖ Ǥ-|hJT]FE ՒBmGq1=F;&yh -ۺnn$4hV!GB_a,FK;r]hƥ",/k;qc%9\j cOBWx^.'NcRٺ$nAnB ok]SE=(2 g9kW>(|@ n^~_s>+/Ϟf$, @8g} 4 wcD%98-*N]6τuDh$h9gܓP&ֵsM,9v:Ev(H aM݃*8: ^TnlQK&V eb0feRWQms2 (u2sLjZ%΅׳sB1VMyTzrF$wsZ}+)n?,ydqkUcGv2 jUM4rqkU0ju!Q) Ќ^qG ԟÖ۫w~R LBXdkBEPnFmOxOLk"若H,~ӎєKEp2]1t?u:MU鍵$}}MFXI"ʾW)j?OKT_HnP8*IS1 - xhéS5kDhuhf&E::?5Y#`&3/ԥ:? I29Eip}(u"dCb-wS⃕a]w{ 𔉛ohˉT씯(KTI5t{gӥ 8ڒb:yxq,1[T{1Bvcc՝J%V7>TSbIM6O^ uȑ?tKiC6[^U <ځICVioU}+Md$D`8'HSivԼ9h<ŕ<z[^CMpT. 믮tK+)ȣ&2D/MZbs^n-IZ%?#vJ7磄n.4KRmX}]^/.HDʚ) h,s:s},LHY,Ejo+wRj;P㭬]N_Bp~O,O$QnFcIZIXs!ʶ a\C!M@Re,RS+u!pgF/Qmbpg6N#w-~u ,0>pveC&^^brEX ]+Fe=oK7cU_"%(=lAq) ;nI99r\k;FvA!1eC=^k%Z닌Kjm:qw(ݓrg+n{Xw䓈HlT=V&V_bj6k? (D>J=! 3  ntq,Sgub[3>݈b}h:Q0Myef0]^EvuŴ\1]AY#>B/#ewGYievk8s_\;afdѡ*Q,e XfdÁA =g;6(Rmh8EVcu פC,/<<ɖ#'͏ Љ\DmKFd!\}xYX6*\vB+΄T!.(jkiz<űN f16xơ v _ ݛ*i%:::{iTmH3bbvot!Ip;T'|`2%_'y=qqz~:7a8񍕠 ۬ta*ez;ķb'Cr+o0&Sls=;f'F k} De L_`s%5_]#R,y_p-72Y)ú8ZOr!tD+)=Eо(}>0/6Y OiD&/MX|3~\LۗBMt3eȦ>|'q93'0SnHӭ>yveoɾkc y-Qjg-X8mh\/{$u NTM\9Mv~jr}m LIA4~= lBH۪aM䘵J@:@Oz`@'* jnM-".)9WC ˮ{QG&g?>WI#Ar+yq7G||%|Gz)0^eg&%~r!liQlJi ,TlW ~Ңo BL<;a%!:\H-?+R8|"gaSQ)/3&Q!:)_qO6u~9zX7 }wMDEvyHx`K_2K_St,ԇF7KViY863>LAMB [vꌡ^6|vlM]\׏SZiDFGFWb[ՂM^g/ 3°ʅ׹UU3e2e% Bp8yZ`˭L)B==*n†Ud+ϛz'Jă6 )lKA j9缭3aҡz5pMp$X3v#@0A(+4-ƌ\ODΉᑻ2d;bt/O/DhdRYyO00nŏxZtpNaf\dtS> J$Oʛ/idp}͵(`B=>^$(,Z$I TpL'kd, YQ;G /gn0hws66(Fc/_& Rg:J\J)~_N#!όB`5u^|]d_K ݱH3T9Lq1>3gB@/%e7!hgKUaK-XJ/|>HucksG 20n+ùS}!dhdE`fxNhtG@ {&0JCЅ:lpj57h+klp6ܾFYj X'~_?= aN9IQDʲM؅ګ}`'yp\Kk-$>wudIgVOƆ{nU%Ynr8dvPb/T ʢØ)'E~ hߥdx"b+'y6He!s5mگF?b2\Ǒ,ZkoJ6ߴ"N0>&Rbj ^hhI}'wSL'PK>Z#^)/[hWvrC0ì~qZZR@N̎oa駫\=2 H>i\l3 N;pxtaKڢgƏw|v-lSXvêGxP*Aae)9 WGf-\;xhy2h*n!I.K<0$0z࠯)sS,{:Nk2O'Ay$6)XeBnE=_[yí]>,AW) 3%jcFy w=E760:]bD~.|TJ!2伩\X^W0QU8<ӛ7 /b[TA"_<ǝ4)meff`K_H"j0l\&G|1rl/@}H$~d1f;H_]EuW8ˏHY”Ee0&tlf״Y1܅C-p A!QVGr֙9 /Kچ`x3<s?~up8B6uu.p&@dŶuR3 IP;X؎!-?-/eKIb&Wl@w؋2\Dݎ+eB@>B5ũ3{οnvm%'ꥤ=OE.r%!@@h)U /$/ u>n) #4!0]?J]Zqj{k 3_g2F-]SHvti6b}nv,;CLY2Ve}mq y)K#Ν=5QDFP· i,h҆i ,>R-t59E17f;t@vMZfBzB%)vCIQpJy⦄ engY?O,M(ro;/{A ,kiH 1בw),a UJS2)Ń4& |6IҪ5גـ@`헓 ׬0nk ,tGl95hfkW&{?aT^ $J!SA̽Y31Y;u@r֣t8MH!*K6^P[Mޒ:;4u^a`/PBJT ؃3!x8̶9gC ]M9$R ⷋ$ aŖ @%,?Fs1qMe @hM؏>9.峲Q&ھ5F{ZzbPV>0082<3V4h7wOC• r1Q4.:$XYOK3O a{U1g* WzjEz{"v|%A¾є*E 2l5a,RG/ C4Z?1#?e=gd:M>y:(QNgĥa>!A8}WhQzPb,aqJ7BS([_gIT Jڲ Nn"sޖ>+5ҷQ\K +gzc׾ SY< WM)b 9v\L"-b;\VPN@( mFGH=hx:+`nRB-︚J8[LZ̹x)9<&k'9>t/P g=sLNDclm`ĉE2-9³]&4'҇Oi8d-WH` W\&gxK~T+lǍ$_?q }t`Q8  'm%.c߅}(YRi3m-&hJ ˉq:PpTFQ󮔎҇ӿMdPAR[h uLXKq?5>W.!DC a6S|ē{Mu{ySx0~x+8og NhmCdg saó+,4ڝ d1:;T& v-͂r=S}\I!τ86ђ~Zu\p>הkҥkVeʓ~;iRԌ֯#K1n=˷$NW,vZtN2l 5^q&#QҒe\.GA8+hVҨ+6NB vZ'[3pQvy# ЪE@)Yۖ`sV,}֪iEO)""EEprPRڸ{G1=I>=jꬂzKCUyrA<4%_5vP|זʼn.{s-y;UߠW(`^uNorHӋ&2 9AБB¿ uVpS $t0s {Q#@WNz7SVuΦeb(8M&T^9ޑLe1i!tH['Gh= 'Ӫ\J *tQ R` 9ݝ<)5@tT{^^Zc}ci+(z8:*"\B >5SP_ϖ#膒HG" 7-.t_4 ׶cc[7vmIù2h=3&2v)U(p A0{rq_$[&͗X Oh`'}ӄ0S7}# ߹>~)?O<{ǜnj-@l1BD@7g%\*)]BHJ_0K UV(K{/*`$LǏNJ9̩7\yjVPTuxc -镡Hve7aE.ʲ7AISƩ_Op^N$S WyeeĖO1Gh9ܕ]E:id7*YM#80=ݧ|Wͩ= Isx.  ȁHwU7UIoց}F:Sc<]@{a_q:Nf/\ P_U30}4 Q/v-2Е^HyuX[g>||DMAB>x/\!Q ȱLf憷m]5UMBӪW1M/<$šMҳ LU۱ie̴{g Xn@roFI4`k Gysmw-jIv*hb!á{3M{]]7 ^^&DOyBDxT>7$Gl(8#_,* :H[&!g/6BS&ř~DĠi:v4^N._4d-=gΞ v]0N !*:9bNɢjq +D,fU5i XFٵ{J5K>2 zxo Iǰ;qz'ž:ڎ@ 7ŸkoAv/*{V'f=&ic8(p~CiIsoUaDM A/d|1iuBm𯱃epQ@;MUJ,Sn~^cc_ 01yglޫt_rԇFyK?2BAۻbŚ43'fi(y8KM2&gd WE2S,?V1eK=%/8+rn.F &MFgu87HKy+ZmdLۉ#Wde p|X ({]!C~مc8y<!$6` ms:˅Sȿw!@aj_>` O %RSѢ\HqN0 ", TBiS{r]J:x&z>/Ll9D)3=9{̓OB"^:W1H ynQ"ItA[$ߝ3_FS¬43zؑ_u`yGp4ݳ0-&y[i9oBtz/& :*gGJ:?TPS] S%l$?;eZ%JhB!|K&s;ǣ T._iP ΙjC`&W& .‘E6s,QFn|o-7(qiK-Vt$9,qun<<$g( BDM$o~4P4_u?'roNz zD٪¡1Rhn!Dj(zc<`e%>E mgVIOr#[LҐ?xԮNn* luwPvw܅}QLˈʣ"Eg gXi8]mQ$$E;t D, L5Õe?Dhx0AR^;8b!<|(k[P5Gsrk(YLxrE¨Np;ȧȁQT{D>Z7 5kV6*&lKwH5[fKKr5pt.e -!4yIˬ1^'Bh r%j=8ixyϞ "Ȓ}(miQh-\+»\ESH.$}>pS5;}i336w TG3!"5ܛn+ss|"ZN@WOwb4e EkT V{FKeu ʅ9:LD ?O:#;@IiBEvS\Zکkk}jvhF#jNVCq @%VK[K?V> CRnYkp1st+'nC.Yt/F+4c7g?Oi\ʻQO q41b?3m2WW1_𩿟S!eA"uK 8{%S)8UUE^@ڨSlo{XP?rN1hl'bXhP+:|Țx8bQ_2U1g~|iP#;fi鵷Y={:aPP\A;>MVIc9td8%0sut W۫쪮9 2: '-BD8 8 \UI!%J(pBȰƯjzi:'NAGhz&|;~i D4YXЛ_/ ! A|._ I0 <OMO]Zm($mmJw~R>KT2Qa+s@=s7jQ$Cp8J`/ӺCYAd1O Գu'l 8-ۦ<ɪ_,dI Po&TcJ##5kd $bcnvԿɡ7/8,Gt*/~k 4y$]3ޝbFk@p/.|o[vHZ3ۼU0hռŠ֬nl$V(`_ځJ u'GV[zB:@(Eȷ.8;q+;4BZ*)HN_v?h8t(l1!Bi1;f2" 픀Rҟ~З)K[-tN =e ? K> T B5(--՛5점;|VTuC6QqmuʗSN7%ۢɂ"+]O8^Cz0ÂΚՄX%>@읾șԨ(A0a p΁8 n]NPD8RN|j2Eǚ%13S#+Q`Nk;x$tܝ`e?S GtXI$x2ΠVYm(\{~+נ},`< ^g|Oy'mCt-J\Yq MsdBz.Zf:l +5qpY+m[,5ugɄ֔ ~._oM5S&NF)e7_ ץώ,+xZ ?D-2߬x?9h9Uz/8W ^3d<1VJNH75n̒Jɦ 1wu]biX $SdG ^*6\(( '*CU\c4{' ap]t ~_>ÅU^Rtl Wj\xNj4=M5JV(NAF\5"N#JX" 2ʖ\ 8ӹ*;3+hBWj7ٰ8Ba|ڦrd_WRKPP;cnޡC/Jw|؀`}gVi,} rJ#HOqY`)jm:a8#F@"Qe+9=oFUBd@Nm?kuCkq~I&"b4xg<` f\IVRij4rq5$\8C!<*ACHE@ 1-~ce823YRkpT\uS3/7n8v*V5rmBu\ḩ}虭 r]Hi9!t jy9eh쨆G Jr z(moer;8"Q^di=-? JLOMT?{t;Y@ I'i=MT]qa*Uy_C~;dMs0#m"֔ ;/WN+'.)@0nS'{^d-h$(1k9/ps(wQ`kfrٴ847Z^x ˽ gZݍk,Skq$>}na9ϳE`ɔHZnZ؋NVZJU< ]GW1h% 4~TnS^H 1LGW,.7$_ ^L9ƴ ܈!Lw w.ڭTPW.1cD'}}wxL\7<ջ*p Qs{awč+c-LF7m[QG@,-E"Y2y$إKEVW͒>ic}O!Cnp4.x7uWnoBJ'egQl-h2\<> U;F 5K:b5Xa) Ei6/+[)%>\0<C,~y4LDW7]q2]Tsm!q;p9lkyN>8jXqK/1ojضE"ϝ Fl/v@x%0p,=6O'/pO;b ei0fهw`L]W26tԗ.zGnmʣlſIw|Dۋ:"$"4T{E3GCw[N/|eP"//KE#dDG Ku˕ OI.4 >h9;ɟ1g.1iǤGN@|Kt+)#qh >p"?LܳoI.d7p&5m(*MfQ9J>JdٺqLc>+Ez4_<@cg{KmDnuٮ̵[x ڬp∰ "ԉ~;S ;3cmb<@@-Smvo[}T9jvtwY'pe2Ϋ у.Zap2vih{]^HF TtEٖyʜab<+sZPHwV3}ss{H[;J9̓+jf7K2"#tHgKT/Uke`mWKxA<]D~j Y9~.-a.gq_r3ey00yg7uPG#Ma܉HHr!B+"X+NIjpoI=Zn){Fx"E\~fB8O} fqPlɧYOi-L9k[>WwިXƋjs"IaΓ"=]CY)H6x( jȎzB$gŰh56۲=r4 2X$%:0Ueh'CV #@9_e-UDK/Jlf"ˡ_~[ VFhY%ܡjdn|uS+bMjK&YDNjb)>./XFB}6&E(ʸ}?Fn hI$s\n:8wf^m6rO {XO6A,BS/TIˤȾlH\S]!\꛾Q Ks F˺{lÃT<%]%av4K[>`!|@}aIu^z4cAMt,sf\u,Q0VA5S8[u5lDv a&TMԗa)i3˓"oE;j6fpƋFїe^Z.ʗ\a+,#ˊ/H=EaTlN3PH_ (z(6E,Clh>0BsPF&~E]gK`R$utS>X1dG,R[`HR{GvwH=K)\D ":/; W+V43Fa=JsJ ~yXv[C%1j%$n8'DNJRpDNPFf .MԿPC$?4zœ/L;Tk)r9Czh[8t({n:lQO a^"Su`_SLfPv9b1~uX\"(L]) NAaK#Z08n*Y]ddwGmo KK\մAҜD%7m]@P[/^x|24<ቍQ&߹zx* `BNGrm_Qv Dud7T~ (ăx7kC-TAJ騺Oπ-QV5,k/& `H+i8)coEz,s]Yb*ιFEl>UHCzLcw>.NS//N…;[+;'\(#6Bh()g*ܴM=L9փ!dhPqz?)Oy\OJm7bgEٍ$ZϚ;Hxs> JLg2})ըOSs؀oJs6Aǵc05P \8(Yt5|wF OXi0s(R9G `pk;o~3YZ7qי~9pR3M ykJV`\7b )gs90{,`(b,#$Nd#E<ޯԠd7{}YM{N߬P\z xK@8QBּO_~16O hɣYcAJМ]quR5tՙyJ}ƕp@z3%]d5MD_th0 ^5o6P~ e%=Lȸ$CnHnWiIy i|2>t_V!tdi-8p{kt P184֨+;g _ ?V"FQ%]jg mMğ}V)W*+ v*#:3].fDWZ"Dq,Nnا'd`Rg΍F`NvzlzrDN[c9̅_gr=dtUOt E?SB`1R総6.>ukfVնx0-3Ic}+,O2(oJ0'brM7# `ᴥ~ڳ |'nebUŞǎNx_r|锭峼TQ2E!gSEn2 =S -<؈]HQNfZ%2ʐC5<2G\G媣sG z]َzf4\ iŐJZJ8.#l)^&*Ԏ*4^M38ƕV`।lz N%ϧ4Al}X9K(v-\^'IN1-U{d3 ч0AVu~P=shȿ]4VrBi 0]-OqF&0Q[b%YRnf]ƌ0j+@Ӆ3yR*Hc/c^[a e'?ۅR],l La'Bye'60Il? d żp\qOz(ıkM6!!.eE˓ I)LZmp|HIReyЦP%iJW4y&FD#(;IYE^v$&XdP 3*8j@2SQnIV n^ml{| ?oFrծ՜XP'SPM:ݸʆkgBLn{a^}R0E|DbY rU:(!T0a{ ʚUj8s(c@9jP;BvAn0m1]mh>*svQiĹN4 5vnOtjK:2r%Dw y"Њ#$Glr{;@:@+&k?܁.Nާ/=jFnN'כ5Y0L_;#q lS{ yvR/C|c=FbݰFU`c}1A9A:c:\s(D!Ѐ4g |w4gB{4Nn_j=*  MekIΧ_"˧j ;c}l%J|nUXk- ]#MܭkЦ 6TXcI=$p~W.h?z: eʥW8$vt׋~`v=YE#AN"#9Xb Gy;91Է:w4A}9*b ;K~}>Sn5y;r8ە`q¯f'/}z!R2R5vZsE|OĻȕ`Nn#j1ODRw7ʪ}ߓAD1hM)zrخ;\])%*0~RHF-!_au*܋3HIaM{+?-@NMt~ZjsZ)0 rgk*C?9((0l/6fj^nh 4E ?끐9rJ&%Bć _{~!~s3'Dk63'AIPK% ECGlɻrA~#'_j߿ !D1wHǺPsy36fʨI)Q ?3csdl7o7ơ"^u?|\L HJvF:5(,.37F7,.YX_ Tb{f-vXw;ֳPg4}mǁ 3i#=ߒ&c`O_Ԫ|47n0Wr^V%svK+kC g{K+zgM  xAh.S TVru(4.Wcl|]-tSp48_ K,_ pÅxp%e5\;@0;F4BL@X Y8$t` KЁuZ,^{҉G 7ZĈ 9Qh?$'Zji(VL0rTBq4 Vd5!Lw,7B:2wt@q&2irѭτɎ[G ű'qSly % $ <.K?A}I0gOc;mrn#-4Q#)&U!<mYrM [:c-ųjƹ|Z 9r-g&U(k41 ہ+lzZV$!z5,k+BKfzk\5K@w7{ <r4W@/2$Jc2Ɲ,1]y HDߨxg~:m~\ǎ\i5_. @m]%D̓ƢdKO?lSgΣԔ!4),gH9,kѿ&`oZ\P`ˬe2~I׈D単E@si 9֭FpC{ExBi*20!O&Ki8):"U o{+ج*V/7d&RCG-TWZO#J\ =~srJ# Hfa)-lW.D̓=&6"+^7tK!XdM/{OsdQZp$nf]wKC |_Scx;2)$Aٸ497n3K=HoЏ7[5ƨz n ÂO{9D=ۀºpaDM!SkC?ײ13LM}zMm k8Fg71aHٴ1ŧG}d54.02ꆽ мf.esSGen|rFƝ*D ,"t\y}L](+yS^F)Y1V闙fb`]?X_sgY *|C?2vdF 0)Hr[ ĮN*WTgԎa-yOgDED &;RZ ڏaBSg٥HńE `HOT{<)-spk !rcq-("G. qJRYtE6@1CB@Ʋ~i;YAC{dT_(dͳ,x1qaeNQˣE#INuR?4˖S7SgM3֪تiS.55w> zXՕc|FIVb! 퇂] 4;د3~&\}*>n$ F>_"KV DT8ް h lB91Rv=6}61U@M2i{n2}&G >% a5;8<,i[VyBt+ 0pIЪW SjqH5|P<8sp4ة`xwwo=ior@8&[ I| d,pDBAFe EȌ}N8"A0a!O9Ž8NGag ehg:<ܜw^KV<)sqgUu1c)*ζHxIqH|OU5y==QoX0}5_Q>&`Rxے aXwn;2ft$lKl^'zaE9`[F}S~2}EVv 6fmT# i-vS")5og`^6P1B7wq宄S_T aPbһ|qm|XyR6O wDrZ %Է13eߘݚk1wJ"YEܘrD6`ґ +vf!oZbDN PO˱ ScS#%^~b[wލkAÄ́(ן| u0;~w`LakzIͫo))lZkMy%[Bhw}6RO̩╪stر{k+?cnxe%>&(;yϜ(ЦI" x*^s4lK2V¢w')3J3=cybCqα ~j<,p!p)`A=yi^;Jpre:V2ʹ-QKk*;8P}C,tL|Rbɏ\. dςZO " MWC-גx5^"p:Z>2>є."v{9i-Cr @z (᨞WL/ n $jo.` "_jm}M6W@op3P5`b{nU '˜1-.X|zn29Lk^Tb nH^ARq|FN89[/7]|{Ac@#ZHE%Pc/\A]巨N9S`}[hb ofsЩgD2MO;!ThM[cLغ hQ] vǻ^!9]9zX]:2ɾ0e҃(dRQze[zTF>SzMG[ [ q„& )D#oO374C*PAX&V-r&҅B#rJ7y{Οf b,0 pݕ=`+P"ӿ_EN|l.W;)77)Q:k!\4Wkd5Q]C VŁ)e φ]m!9E$ !Wݓ!|Fi̓(>L;KOV*+GMl>\x,L ⎜)0=:ueХ&IftK ~ߢa MciEI-igҫ܅Ai Y-]&E8Am] g>l$Tg|VOWOT-w' BiZ. }-CPt]\czK ٕ ʫ#"O^}z0#.M#==Ԉk­Ek7|ߠ48fk wۛ)w`HR<9;[*[(OO*eՠ yUfi9sh^a]E,5~C~TVOx(t;XpJ Kb7;[ K^"[ OWH.ˊA>r`.eMw O Affr#ۋ֎[/R[A"locv'pG^4nv$1/ਸJ2 S/'eVdkaK%LjX ɕaO;qw慎neb <@.2o̰`$s*>w=c,O9Yef>*Tp]͟-x9Ty)pYQM$P(ӿn@h+̤#mObm\28Z ;ҕiaL7\?4=c,{'% xY ؆)3^Rх$F4**BnסYYekj;H4HUnXt?W$'1_|Ƽ=^{Yj0U*. @~f"i3)8FةS1%C<,mκ~&W3b"8.p/nS-M!E'L&q̲†:m\BNA#ݻVR[m&;N aeKj£e5r}0g|f<0`@ @sMY ]aX T{Luek0Nvy 8p&홨+ZŮ*vG9r^xuƆ:$ &stSD(i4w}šA,"B<+UQМeJ8uUᝩk#m zϐBj_Ġawp `Ʀt܆h_]԰o#t"+s<[ Gfjw zSdGӢ( ^~4'th0F/-S2m$No+-iכNJ$ZCIj0eh1ϽH2͌> 㦣ɤiH$ fS.oSQ$[8X=dwbɸ"Z!p%_.V;Lb9{ E/֕Fp)]AHW+r2331ꪅj~g:Tӷ묍ďO^9ޜ_ %q: 7Vʎ'P2x = szfZ Rd#Sv$9-<.PԷIODÆӳJIqg~oMl>(]wZ5A@ l%Y@gsTQ EXSFu d_@9`E4!3&,$CeY{aS/n+"KP'U*US( b~G͞@3ţ;=5Fz$"BMԖO*q*!oƪvmc{4* Bă/mͥ' hCɷڗGwb_[ʷy/uibnwcѤG54ePa0Z[3#x3Oi=&iuqoݾ|Qr t^r|KQ*oP1 \>ߞR\+^"}'[H !jR~J:J1LZ,ܯZ8)O&A+@{ˀVƉ9JL>5ah+s[H"5:h4&cvKoUdQ)tUkS-RcȻRYOƂ:B4 w0f)YiaӗN 1Lخ j!`(6 6m Bю//+X!#pRٴ*gW2|_2}J0k}>pnnqVJ,XgҎw)HU=&2/DRۇڟW %*q}3@}+V[kX)h I29vzi:oY`nޙFuU]ahTG 5øTZn|RxH0lc/MmA=@Ucا"JQDmNhy+E+8Cn'`u\ crSFx^-U76fu#U  ;JGTlmcKSmlrm@$F٘~Y::62 %=#jvH~HNwѳTH^*Q6 \"5RLI|*90GjPvQ|5䝛X VHam!spؤm_-\I\-{3 qiUQ-)1ARs$LT?|۽i҄)?# VĦb61,ÈW?CNie/ګcwm)#4$NH8dz h~Áhr z'4Ph&bmJ#.N$2û&S\դYuδtR FAٸ vj oAlykFϰI= 0akn&! +r5 lߦ{)8'Ʌrd;@RP:1^t0EUwY)5#"j$NME,qJZF^Y }avm]rȜ, $?c{ػ$ef<7Ƚµy48'2VՙJcz$}WAY> #W \ UX=;\y ^`:[就^_%Vݺ`ыW V ]K`sCq^dO)ߔtܯ ȯ}PNTwnm9oż[ѐ Gͅ1Y8ig]=ٷHU2aN-[ =<\8XCeIyD!pcыCq7>@(,(fqJy4RoKkF9̣9gZ;!+=rcj廞d czh1d9t69hMA;LÏBQ"R3j jg(2J\Bf5z^Qj77zl?3g_rM%ڰ|/*UB6|Ҩ $;ټVW|6XOJr?eH'z͠kv ryA6BX4\ʾh ^.sQOEfCr{ Bƿ$DUMߑN븞, I?9Ħ"U!Ώ`EYJ@^.owJt@5!G^MȘx+f. 5G8.&SlGJ,g`Ia3pLk =nw(L}]^7 xfeJHD ȵaǠ?+Wtbu1`c{泃94C=ls_F5ѩ(`P!~dI !۳387% nj8--H>5os-Γor%c-GjAmw8 'zp,<`A9='1i=oz;A ?f4F[U^ۏ`T%. gQ^ŗ$뭐Yb:v:0fO 7 +fw9~EvUv{!rqСPp 1_}~K"ͯ_s!ˠwuͬ+) 2yn)\e/VhdK hOV(+y *ނʹ Ѭw{{~!Rf/{k] 8D RiPW0aGc 0%K=%|aV篵e-Zu ZKҨUGA%^QUBfrp = ]$3TXYYZԶ#OEٱvpigSLkγ)X@">CO5c|4sUH{w9G2'F-ո Bxv c{Oop8V֨_Dʳ' G\-+V/z,lz mBH]ؾ#> _ST%ۏtA&lNr) !RnpȰ?.n7{-'HF|r^JCW&r ; LOBJT֨\`$ 7-L1x=%=OSViجboSU*PD$$97-tm\tjQi AGj$J%iɉb$]٦-n T^שa&Yz~FhKb2gW AFzaSǭ<.Y4xɡ] 5AĢ\f0{ɯFkC5&?( Y= 4sݽun[01v;ʬVy)ޭ`jmyK2'PT-CEaLU\sFF6}?vf+^ԛx3Q`;P[+ V9SF[$f)38D'0 $nn٤8 "7׈ٔ * ^#Uc2e4w2}[B&v}bAgFs9hح7%S܉L1v{ 3 6MM65x+A"|$?I5kZz7g,w.7 OZi-OCQKz~ 'Ϭh)AX#AE>{:h*X¾SbGnF^ҌJZ^0iWaoVnaq/73WB 3a7B'їX \hPjʭVWieRm;w(8Z 5χ*'o`,O$Rtb~ÅezA MI׈>ϝihb ,j !ה=wh:TN(& o$5QD3*&}(Oq(׻}X:vJQ-m\^o|nUkm/R;s:@ YdDNC]O\Uvi,&Q槵kP)ɵ趦JoD9 UT eNf pZet{kd7+Mgw^K:@+#9Y2*e^6]Hlk kf}L;,N-\^ PgEg7J\q@LHe`pS A=z>'+ =ԊmwN(*`'Z4}FUZ>07SلIRU) !քB _|Rz߼h@l-"K oPz901Y32vQVYZQo5W05,&+IhͿ \݅[- 2_b6(Hd VQG?zj Fݱ%×ϳL57azTTb8EX"qG`G#NԢyPǴ2 $aQ+oٽΡ 5MI=ЈЫ~{lXo%:3P7d8jۅ=dWW DCGfu 5"9&)r-d +y?i"9l+Rd7 /=B LQ@Ll)jNfF]u3 GQwq.zҷFS?8$nFI)X/S5;O@&! }uG_#VlBʐmCs7[r Us -ʍԠ`bl%p$ZҔ0qrpf]ISws{{jFw^<:ZTt4  N`q[= 1_j@noBq^7:V(t7 SE0I*>*$+`ĉ`/\DcJ`ם=`Pc\{Z,!֮!|4iw/)? zU-..2X ȍ&KɁdV3c΅ 5£Ol{9a@O/sL{诔UM^(\L*,14qBo^%TJkIJV+,uh1LꑕAZ;"Q.{2]ލ-h]H6S"w upDu]N)Y) Ukm[̨#x9# F[IaJ6:lS6q)y 7WYP8+J%o4R$<+=đC !=#cjw!??K⥾IE8 5&f F-/xX#MGsoHp2Y85_i@y_B pW xLNЪ?@$ѳME UHG _?/w]5N9}8w2P=¨zFd3j98`5@B0a%DƑR}#YɲT7 lx` ;^/R0;4RzjM#4WZ7d8aȐ[äV/$q1?oVԃc=4P|>}|Ӓ/ŞYгܰe>k =2$Ⱦo*88rPN\ۆ߫ЉqyR/W# F<+S@æD~sO*JЉAϋ2$N#_MYY ݮnrþ 2zk@e)%ҁ~]o3&k®CZCqxn~K1$r\xԷ$a"Lf,ײ6M/@(q.+ *n#q҇d*|~xW#^䝤L>x18fo6`6Gf5 BizVhvgX[>&^>7,wFQ7fV c5Zm}iz#BNh/JF\8]u0(6iAXc),f0YE-~#+^P:7?J '\fo=US0Xbv zxBQ/NUmRF-NX6xA0Z. $*vCX70um!zI#XȮQtjf1/䎕TjvB Z4c@}"\h)&=IG2V-rVE#5X ?TuG@gH]=o-0" jȵk\vf~4:ǸPl'B9>`Wb5svH`nU,[;ԞT{|3R1UD COeo`HZnL( ܇lsrY ~)mL ܤ9֍j ,\OӋ)u6UYC9DL2I>da&3ӭ![_&7'sdOt0?w !"OM6j?LtX2'8SӺz_,C=Q%pk!$ 8gtZY %4p-J[}5@9sfZ=!4]T͠FEI:HUHБ8Ex?[G$A>k8:cwk( iBA IG|xW#< d|( o>hM \`wFїSo05Y!.]oWXxɰ.8PErUPqߟ8ۑAтY[EaR r&8B;(l?O>ScoN;xJU2NQ`󚲏 -Nz 5x[ü ,/ .^<5Ĝv[!d8|~/cbE8~1{vՀ˯%{y3qC/ܐlK5GXIEqp.i0^ VI<!U9\kl̙z2{f?T.*-5EFߪڶ)M~L o P|`n ](§j-]j3qRO'ȉ.An slPqY[i& y~} P*zxR/_{z 6OfeKEUH[,FҾ"(IfjΘ<P.Z{dYg=Xhgg A'`yX#k V(;yZF}Q!miēofA'~谧}+8QJ&@zˇBT5y,.^, KL sUR %Ф <v9 o`>b@wd[. F̂tC,GNWiR! l6R7Je=fy} ,Hd8ʀ* 5Go*9X,g8 .k(iN3)Hś} e7itئ~bd!>< %\rn_f ̃N]_`egh9ehbu mtBϫ=AYJJTHϹZV*H닩ԣA͊',+Rk^PA'(}T_̗V$Cq,sDvYӑӬ>Cof Z|>Rl˜p"'R>lz znEFQ?#oIE١jPYett S4~ Mwf\.:NSˏ_)Њ5oT#eNX2#ՏVbS% sWt3eRǎy>k~qJh0#i%pFp{-86 P֍9ji E+ĝL4/pc.'&~#a, D&=$_i0ݗ2 j,*hІ:2oG0v]ɶ'NВՙAZw+k(^r RH P6P)zjK$%4|sb[ Z!TCnU=G-J}e7ka Y隗w6jwVBb 2dW@eWbd Q'(EJ$^\p@@V zQ?%x׃c!,61 D0(}ˉ1qL6vјC`hHH@KGž->POSQ;=(QC $Qemć+`kɍp7- rQ2"H}5\2f>t #iaMteNw4$ZtyB\D.ݴMj{XEGkiDfɆ"|.D9'%Q6@Qx ]Osт%ZVuv-],~.O)Kz_4f$%uQ}YqH-q N( sG*O_Blnʌ O收fto8K.Ae:W-MAJsXՕӢU#ã0!1?P[uO|l@,qhygO]$-pטcUl!s_ϝ ڲ"W{? t  VR5kHAS/ GSiזvA'q yVO{Vy livXEHe"^9U \WcI( 4/dW]R3"EP!1T!2|OP`G$x"7%GR%qFx*O>vx.ڑ? 趉uXƋ¡Gn?`9{VSqq?W0$]Zp}='x{1,D?P[MᡂR"s{%}x% C.6|xx˂JXPB0I؋sshR:v_tܦMnRbrރ߻D]E!AZ"̈+&,q\1iGC Q)+2A  ꤁ӄu@M*]T"Nr&OF(Ļ <$h مc bGK^iť{U_ZX tT7.~k3jJ LxGʫs)¬=wy5YU͢ 6֮BɦD|ƿ9):}krŷwΪ>? "xr#edWӊ:BC."Xi{0" lVmt% 0[lRa5 ,ӏ 6M[wn.r5>6lYa0`?mtJMkg‹E+Oz38SR.^o_% D# ,lLp0xieo&?zS ^k8v]|<\i:уuTB.QlalM`27z?q%];@W!ML[Z:0Apn۪ g5@?;#$41`( aӸR'>W T%kC S*JS漹)ip fفM<Ѩp0N}oi@ >Pj f5 _G'*9o:(-7͎3DdqS:]}a?S㑤dG4>,kΧ{5T[|2V$B|CL5]nܣ熒?/4t]cPEUHj,OtvŒW\ʺ@|_33): 8\7Ԡ`ǻPaɆ2b$N KPKu:y-OVӡmC9ݪOԲT ֕|5> HleUZz>][\QaD ;Z(g^e)2`[}`(xpWx̵`D<B,XZAJ FrFRb]~wyqљ\† ^WYiW&u"hl}j4ԐSl Q|_b p,'e5 K)XCB-Hf&&:ZJ8!I>ɻYlq._yB\^v=D2Iig9GBJyZZsR VS0"\yUlX=ܢ72 %B=V[-# qlf"^GW?re\qK(xY v 2jbOɺgǟphE3褄kcP-|AYőª^YAo}IdQ@?c&Vnvhnyhp]io@i=`~rtk,vYLESM ZUpz=.WQLEJ'm,mcm}JUX@%0KM`GV%u+z+;jP(\xtўtC)>sߚAD́/(6v7$-ĴF> gUa.eVټ8vv5CF6}l$NdlFt"*}>SOc*`j1 qS$3X}fWQc_#q_m͢N?GWm"V4|9`J *uf HR龢  5lRꕶ-Kc$Ab(@IV/~!2#r|hӔ YR= \ޟUb5CJwCUMP(g\^-U)l,TZPԂ%Cݞt8,LJZ 5 LǺ Liʢ@5Q ==Д=DAFQ7Mݾ}`I10f'<=h8 rJ[I`Z [Iߕ7h} \0 ڇAe}i\JkJWjnά-с&.uux)iR  !>ȄF~8EEW Mę\1Og/dy}'a #ԝ-dF`;bT;x洉VʯZIG2 l%7\@PoXY[ɋF;m|=̗:(&rqj,O"8+vjS7@/Ԣ 4 , ї9&XP~z@R C=#t&؄QꖛZ&>"/G= eʨ$8}~Xo{V'11Zs0( M )^_;r\8:%r -Ļ(CMZb|q1X:>6 7(ӛ&kHFj+轃O.zĤ/?AвY);z)#:@>R6w}zk0vaX4~YMz^xGh:#ocw ag(RԻ B#;){m5 lSpt5 %Owr`1Q3`/t풡1E "}r*Wd#XeZ~̶CTJ0JdyUbϦ"PXUZ?A٢ɶWMQ?ҽyt`bPYQfRրȂx{Pi釲bJ3%fmlȮM%ߞC.LvEMT,ei lc4;Y_bgz\ gAӼ޼oo90XKz\܊NHZ! >*rȪ‹2=|QjQL!E qwB2]l@( VSlYY ;],5_c}97VTzPH6& <%.dDŽ̉;b,J'')^\{BV1RgKrN=gtC*&Tpσ ~{D̉~w6#ň0si伖b$eG!t3O_$/0D6A) Oh("ٸ$ \sj0%aOqfrɢ ],ٟquv_ͤVUNl7M?)6"jœZ[E@&D"r uF{\1+ Ӓgh8@o 67b#Bl3Vn3սY-UmiYz_:6>8І%AR,5Q !|q7w坵G3=|B{ܷ(aj.-ZsON똡Y¡ E^pO Voš.~f?CaZٛţձSBRk49/jMetcMQ=LseYiLi\U-W.wI) m%~\IZ͌!Ch'#2}S $Ol ʥT%}:& ӅxE.fCq.Vd dѹlU5l8q6hUg'|~K| R6sOaǪVe><"_P֔39RZ O1nT%:ю%^Gϩ #ݮ9OS9b2Em Y͘fWn6|͵VoĀsP(<]ӎy{'&EUzSVj*k&W語7uR#B66dP Xw$ȟq$Q7,#%%g,S<0(o+DPVb!h]ܳ<*4.(` _xM;OI6 ҤKk.ut {VGό%gEJ'E)d=F&l6+;]ǗOv"fk+uտU&"`_EKH*{)F[[Ծ> tc_WXCPQc CX:U4 S;Z,|J2|;޽>3`R4 Bn:X?pQfn|t&CW)+)4U>W `u/ sd Џ.d۠b[PEyBLЪ[;bu{c:!6"sә۔<ЪR\HDA֢#y ɕ[8W\<9CMӀ%-ɒ]ۭ*LUi>>Hi|'@ߴ-㦬Uֆ VzTR\cl}@ߦ.Dj."2y+ )FҚ&s#Ί gz9m2(bR`"o(nazKTY߶Ρ=2䮥K|P]플ʱ@qОVL<>:R%h03v$Fhl=P#ޜѿ*ٓ[Y.BVr0}T/٦#Y(*Go{mO/ߋynZoA;FR;peĸp@om1H8u A{3Dxn>_έ&Կfnf74xmM|G4%;ĒY{8I DԹl-;y^DMIxV{6{oE9X>?KQՋ5y Clw @(A<]]ʴ-82/D5.8[2)7(LG a ]! 3</|+.o,)/uG4,8;0~Ј B«QLJtW$?0M,lQ+ZavQdNduŐҡD|p{),R)=B8S^qL֏tb޶-d#T=w͢!0c̋*e0Z w}JYb(Ɖ_.Vvg` ,EB x{PöyuuFpN{xL?jcp qGQB0>UykuI1R+V=Ӣsd\iP@mYVUb  6*7v!Qu!ʒJ78C.u88I~߫$LE +I!'s-=-홋䃐J4#a$Gm|W8y(#rDi}vP˥*2G/$\NK/% 0*&_oL4lC1J3 N -{$luD yesi%N-++i/z(ox7%o jy[SE:l\/5aUM$gh}-E(V5jG{h"XvmwuəK3QԕcE3ήDOɹ-CG3. j9@nG;{q s>a S=M( !4m\.0j%QN=$;]>Tjc$e$[tZ3eB-l.=cw㍖/| zP`H zDj Ci><k/'0yI)u){Tj8MʎcI8rZ1)m?mćCgϲЂ[mPP7א8}bj^l"mw`!M;D-L\,7#ʝDv.r&CݫF`(;lP8(mJp\&ƚ {Ļ}з-7ҳf^w#hx$!ET*_n=ڙ|-xP7T;g9Twf")Y/]_75`eCRlxKq-~׺4xjC/Kj+o?YQb$͛;H beQhԧlܐ..e>K3"(y5uPNΠ}kQbDo]0[<LCK\AQ& $őhhv~<4yKpPF*HlsY+&`) I閭AC E?bTSj &8O(=̒.cg1myu$ Ns#ۙ*jGXKwyS̉5kCpN5Ppۡl-D }#WZq#8X+6/]ihq80dA8XkO 9I lHK4t'£cX x&w5"Ɠh!s:3&s`M 9P0Xc=,A8IdU Қ3PUTi LQ@['w<% ^r:lUA/j45tLjf"9T7%W(n.;Ej4wCf!U>`dwox z0s 4^,G!x[1w=<]juDCŬ=iwЙTc`2½.ƝFJ]7:+Koi\I"Ӽa9Cw C iRYZs5V/+Msxvy%ͭ#w;'SyS'%crb8rFD݅T3į&FXdz'UDy\gA0^@l]viGONGTlE1-Ex%HǨ(H} vbpS&+LJDLF襄OI4v0וgb tۆ} f sz?_D)輓09#o aDJUHTsM-3WJ_#w!1JɌ_3ELl@]ҭӂxmF}Ê料#Q"7|.kV(q_Co˨^ 9Jqf{TAw1#c 6Y9xqP|F%'=;l :L`R`_0;f֑6`aRPy4Y#cnC AǴD,lVC:k`!_ǰtN.X@.%^DhM|,/0Q)P*̗sF\c L*<Ƕ3~&0vxBe\sZSsn5[[}dcZe["duҒ#hw, F;*/yB^V][86ԚW|4q.|ƣYR4xvvZA2>p1'bo1:$~mCb<񎨢z RɸjW/; 9_5&v)mPsM>z ;vl*(r6<_B὏%bg2a'*xݶ@OhLQlOo;ȜLW=%oH⬅M+P\8[1[&rq,8GO\,0h6(aPtfm:4О:V"8} UG0!Vr(ޝ JC &"nbNn|IY:#m7~"*u eMv>V(܀`7XA횇hCwx8E.W tfL&@H#c ̨qYh<V qynys8^ØGze39~K%7=˗.,8~K~O):-b3(,?;מp iW6Lk [nt  B59r]|W~e\qQ=\'*ٲy5e4[hУcg]ocU$1j=$YX@3r iCs9Κd^B߸,I@x \ψ}a3)2\*r|GZNWZSXB$oagVe]8I~*j a!)vWŃkcGX+K(Xal;|2:j{Iz}r6m̈!>ޑ$q*:zКLwoUAxR!!tS\T+^>7:7<ܳѶǪSikavj9q$X> Nqɶ-ЃQ1O¥{T}%rCeyDLF19!^ u6[xY*Veh ΢bQ|ʼ4SCg HC]/FFAvi|6E_T6 *O4Ǎqn&1mv рuVA^i$)ɕ @7溺A?9;14cnu"i|Uָ/ʈYiPf]ݮIW f g` GL܊ #vX"B*ݍw=V4"q[zf'Q!@h/R~?=Yvϊmب":RnOCض–Bgĵ5)Pj9J"g9r ڗպ ёx N74hX$VVoJ$5t! ^dI1'"ć=Z- :1r^o$(G iD4!\jiFG${qcJlfG*cFl=b;X^Z^* QάX~u5Lfiݿ;(SħɳGUaDr޵ȷvm-\ݾ'g' "f"kw^Vb1(n_2Ʀ NKhu;Ʃ(N$F`LUた;DӈqڷtO [fs.Kǧu  tϩGvQtK=Fݻ8HT$ǹd쫄'L5QP,x%% D/O 4U/Hp=?z~[*H ; RXiNqcf.KKk;%歙 #CUDII{L@ajd(jo=|WS],iHT=m!%A|q$`\G]-7DR%J̳ЄADlAK"(Vs(3C'sAg|!.|8PB,ʵ̀h#iAcč>N {bCDBS&XBI;G4GdSd,:ěpog҅+bagK,aY5 wn'sl~Q¥=nIpU0ɹJ:Û:wzűk[)TBJ_/=x8r)Mm'snnG&ec[FPw+M,"sF[x0-ϋ*^;9ӐH?U+ۊTS,`)D4ypqۻY}OXD}.&K<϶X飷K=]j#P 'nM"v|t٫+\<yP奜{GՐR * gHt̒Au {'R44F<E7`ReZord!m֥MOyS8JXs# _CU*bpKѱ"$l~lCCʏo0IN{'K[s[z3#z57Y8xV< RG=)36Ky9-ʍF)lpv3@'xeP&9,TAk īWq̅SObP}D{M0K vvכ]SxK^U hTH&{O̸yoV{zD{ $2ZuWȒc3g+_5OӊB7-n6¹.U ]& 'OZ53k)8-ڊSq˝|.K+F  $vy%_DU5N0i 6ZYwQ #&r[E' u2!Oo8#\} hNһzؠqEWN.Ռm@cR> {A+" Ox~)FxNI<.t;  +L]Y;TD0Iի6/:,8icK f>?/J u39~Y%&ئ:dve䣱0|O[Ddz8*ckY]OxD$q 7hxfAJ L~Ud<%]BOy6pcY^(qܿB%)5p:XZia ? 2b6wǿ<'sHA TP^F^9b~b!E\^[h.kVo5vcCcLdׂl{s<0UtI]:z Ɏ3*(Gϥ7[@xK?GܪR ImjՁ)՗2w3Q8B7' )*3IY]a}QjZ!26]a8YЩ4U>2 ! 0Rz- +n?Kb|Iѫt}o#{Gk5 O'[פ )3Wh 3# 6 :` P7ib)XxRcjRTa{$V.rڍ+Ҿ#x⌆ 5{X*gU{bSvFmb+h1IXBI4 IN=fu2!~ed"g3(&!͐!P?L4f7[4S^}}`~MZϔnmԕ0+b9>K)_UyOFT&X$i3Uᬭ1VTfRt2cנGEC]"sa1 \sgA P$N{F\'/!"bd((=ɪL+):$t0>%S 4Ge3 f/E_c^p)D4)&RQQKCMvfKƂB3ʄ>2!uyzj{ ۗ,gW6 7m t$Hճ \1+t/J:Bb)4iCXr}O y,KT0a`&jq37|UsV#쨎YE{/:ܮzlf~)tyd$.g0wRIu<ͣ잫o)k̇=.nCN5$Ցn;Pic)f%H6ZSo9PũFkj^$/6[X[iOFKxYI[5>}v{_6$ԪQ;Шe^r4jXw? gj_.RvԎ|Y,j&ѿL)t_<0.HԮgFKi?_0>ހ9wQ"5.#6ot'MԽe'"/ԓN`R|T3Wo6(SU\30U|sDh@c~i 5pNsЉ @n/rGcpoc"Ʒw!d pźR%+Gu\/؟]=P&ib%/KBk6%H/?FP7c?z`;m*:aͯ1X0u~4PTJ& ԯiwVC_SP nR*$A@Hp3LƧ g{`jO2Hx)J IuBJ_gsJڳWOGNYnuKBNkP@hЦ͑5{ʰ؀F*/3**͸,W;}65z3r~; !2ca*{c!Vyܗg{9Xz2z#AsQlO8 f ]U-z2! #j sQP[~cBѩ*Pq (@S ^ xZ~{FTdLsb dF5abSydZ Ltr@5?MTtrԗRl3lnɊP*^U!勝Z#3Ulώ\9{S-WS_O> gN X6BD1>9{Vj@'?<IМLeEO @SiXkhj|5 hsjd;X`2c'@3 z/␽QuMDxMa_=%WFARd q]x0*89C7Y$Gcr(YCvxGA'(.fzBȂi}-ѹ&~{$Kïqй:{;r蛭Ip&p8gQ G;6F9p%$VK 2D2"J)=튩=|gFSc,8GdlC~L7%T`iw}ԁAS$dg$+0er>>hLsҘI YӴcS 0lDGۄIwXhk S#H[BUbE~7v8PJ( zձMA4L9LAjm@A= Mf=I_^3G;v%?Q<8V Mp/^z 7(Dt޳V ]PRXj6MڰvUwaH7u_rJ77`ʝ8!H){Y"*q=#,p<9/TbwtVJ,,.|EFWP7*\~[^}zZIjK utΗ > =@άLvj,&̦lVJ@[~4ǧ Pj3~2M]+,{nԠ̢|і̧2Ӯih Йۤ\7|KP?5N =M9_ u9Mvc;_V(V* ;&gҗ x1G [H+|DŽ#nT֘hւּf5Ҿqخ?qL-m$KX*רnў}ӫzgIܷ^"폎pB :l̆"Az g=t2lnd8{|pTxy`yXNz*bmڌ1fy ~k㠋4U8 ۧtr%. -N`)su<"!G/OUGc7jy  #9C&҂rW1Ouj_HTU^j̎ dݩpyb9_'uat02fQMfeFR|JYO$| -%ZVY0ADw4&s1&1ibғf ?UGߑ :D QPq.w:mk_)<"\uOr^ϊ/(|l*6aA-Իm!]$-y(AC ]X3t!w:t&,츱`+aa]Stncjz4T#܎[U%^;QNӧm(5DԢyT%Suä=6,vu5ևm?]!fԁ kV!X S %]i Xًdo|ڹ [ujpa/z1tl,ߨRu&`#!KU"A5P6:vcTkB|ɖ[Y /)=rsj[ Zuִ͙ JY] Ie}Lz),OLy]k*Y~BIY1/ٝU!k0[{D Hr(3+2@ZɹP_l@0}Y27롵B^vأ;*bNo 'x.HЮ*5CC~|Z#a VB GX|=5vxg^·5{yx;}AiHC>f!1;` ށ۟AdЗk'F̗?AԋqX3X xݖD{ Ԅ3 Rɛcl4ඡ^q Fۿ%B㞚2[%̼TtʫvoV^^zp5Mq,m#%{{-~oޡyQCE?|E<~<(|2̗Iks2Wjkt3-;s$ [YAb <4p\,Kⴙl̉]6j//,#+P w5;WFx` T#)+WRb\4ń7"Ω5 vAj8.*F5h4q-vjX#{lυdAwaz%.09Q`lZ};n}sPZ|/RJ n-=ʸtB*B> pQ ;tΘ,["U盅bJGMluh8A1r7Slf||xQbS=UM/mȨA$i"F`R0N _ #~J$ X(94R>aGhioGEKrID` lCƞsN fv# ?>"y\V:%K<u"c"rjD CIK=n~oh A)`*O.=|$, UŗmÉR"!OP!TB4eaE~'zcnDUcEGJvFFWsrܶ#k}/y[9)>|nj 2^{ `jY [>5)m6ũ]? {dS 7LD6S) H>p437{G5˹ 0BSKq<;~b%-,ݲ9&2.jiG*!욪J;S[Z 7$%ڀVqf M6׆w*_c5OlL)6(_kp3uW\v5vQ>ڄ~ga^.NU dɶ_pRgGY4VVtk-V3bzѣ,mܐ铻h\no❤ 鮼۩RXZx1[kdsX\hp>UB/W¼jòOϱٟ=$nDcu]Ju }f/?|;շQ̉)^Nr,3̔tlP3NZ.Q9Jbܙk+m/ܓUDp.HbGwaXhU>Q ‹Q711d0l UC+^"cfw %i&j9K| a nZU Kw?@!H^ÓObU1K֝s(y"_'@b̽,m)Z|kʆm3unYh Lri^Xm)_D_r\4-Š6Ooa+źğ<䵾 XgFGѐ?v<%@Ey\cF/ _J?_V S5jZkVPLMȖM$(㘃4ڂ<c#r;L Bacf!J(R+h}9;lFferT(n.Pk❗O*3ib 2wK/ֿ\c#R:`p(,%XF<a̐OE`McB2ˏ(꺓5(o3#%N(NRɮ]2lṮZԋkMK%w*4mW8j^@82Wp!La4 ɭ$FcHo=@ 6(nR:,, [ۿ@YwVw"t)3MR #z qa[D׶]-%}u[0yMqɊxL'b)m.ISr۔B`P'_ q{gp _xrgiC.y8Ӷ'peTg>gޭ<#4;~oR00(I  31 h~eYt}E$A܍?fXb K65t5G | 2x*\[,&AF^iT#ZG(LT`0S\WIzQ*PIQ)ؔU /*inwyl@涺›ڿg_>`>W.ْD2/+k!s@f|SfHwl~E|* jCy}mud.ܘMGڡF}蔫+\k4!Yfv7XgaM3e .% H^eOdLtEß`r˴l2y5i|?܃'q\iu٭yDչHCԛ|s7H*ᜳ/ܾ`{{-w~ EIy yO f 2 ۝1;մwA.,ث_mc%O<@K`}V0J"wW@w5QMD Z8g5a!Q, ]]3 p4E?Ze`)N#n;elܻVg@| vvwJ7LE}ǝFvhup/\re~Hךjp7Y[f,dYv:##.mdq\;&²M~$atn?i^IqY(0N"`v-~ pañ;]a9l2dæ:+N±;L#DV_̉=ۈ]w+Q}P,l1!;N;~?~M/:z^+/|H!SAlw.J%KzѦ[8v-1i Uů͝mj;"|٨a֬ P4:~kƒ.G:Ь.*@M{OH?Ɲ)%3bq(7C#[l+l9UF6O~9&J)˃S:Pnqp_[0 obW^ *eE?ЁdoK{&+TQt4rrr fgu5+DE`*]]zМ13RVp@2ZpFC3CqQmzY-'B/IIvb v@@]j:V:ԃZz HU꼠Ǟ:فqb,,*OE 4+(UWIF7tm+ֳuX!?`lQ\;DTԤF %Sl(M^/#fFOZjڦtN769VF= MF:,҉$-%=Y%=dS^ޥZR%7񘎉2HFKl~ϙlo2aEVϕ;LU2:S;_J1ҥK(QOK}1DJsQ{os_k Re̷ocioޜ'+M9z0Z^&D,j.ن?iB*rqЊ: @YNC?tW*~6m@)#ߕijI犌=3>8Ӫd n ¦no*+v/}+@eyJ'd 0Qϐ™c&n ^I{%^>+ ϗ5J/}i;–;_DBևoՒ2z V8%ۗלB[.F8$~ߢ`IK6PC+_k^FC~P dZ] ԗxqH1%*k~yn*ۘzԭr+b~2wvT4iX傟+ί$D:'\,YG9d5i1S~s 7ɓ['cC,+K\0a9 7.`e]y7{U7KG0#$?+-z׍+^qNN9DFhvky7h!'_XX zt>h,]u[=[]K4O}Q?tPptD9®죦TL邔cT87ACCհu#U9C5hwGU;nPbW p"JKRc𞏩>"& 4/Wʨzux7$C+{\ -PmH~޵P͈Fى\<3Ao1k|-fv_@a"9Ӵ\H39CFP2$T@%AFh=MEdiǤk!zGЩQ 2SτLj+TP &!uFȚA𗢉=~Fp;?\r$ of=61i %7.hYqݾ:aO]{jzUWH j3QbPȜdWRZd 2eЃEf*@6mXNPΏDVx~̙M6riXŽ/w,mU*Pn^#e 3OJOq~0LֵCO`Z M~а7b\ {$vtFBQ./3׺h|g9p "4v~npmA LЪ7,)C kP=N=*f[#c>Dp/)כ/ C0w,|-kJgF47G6\D:ew'z=bPw^\|c}}Cw`۸&u')T5ya-me8p:E%/q+}0&+f[MMKb3Sv(A.j=0V#hM˜3ߏqVl>%&+Nxb.u$}?0GG|`@.RF/%,OYZJ8Iȫ] " jFXP͜m{ĢN 1ߣe(֘xc r_ٙhłϧvFO: ŒFk֧%QO7 Ռ[V&wTقWꯥnc](q2zМ ɸ# uy1NA| kl>#_^;l?_~X`7S ˕ MYGJVD4\C)\ZB2[(yo!cR}iғ1d+qT'W{^Ӣg"u-{VjCU%=8U4zk. L|򓕹k#+)ٯٞ~25qX eȰ'L|EDfpL8=\}.)B,;y<X K1g!ڄ-tZeL⧚q9bؠkLWX R4dX8'6/\u11H8>IhqTS @>q(Q#eҪhHy'([c8MЈL^t)i*%bl[Wy%35w.o9l]AexkVUI_0 ፌN'D#,(`"aC S˽x෨Y3 )%nZ\&-}xӶ^ld~Hn+uMQ?.'dmW届_#q}(#mQ6:oO0ТgOJA}k>&XosYZ 9SDeh,iZbVG^}|HaJ;QD{՛M1U‰w暭s~Px3s2_Y0n3FNu6m~-̱J"v퀜%NL 2Ij~qq/͠ A@Ġ6GmR|jA> 2JJ*[OZBG@jz|e&NT[WU@d!_iFAY k!fq^nZp\R{izM@.tc'nv.+PJe&@y]nAjVk6 ѩ!ʤZ;²91n"#9Vk &lxPJO5}4,:6hO?Q\~>?[`rԔs, wAg$#"yD~#j ;$`ijƭdb1;Ct5eV1 ñvhq;6p/12_::#6]n= v C&a;<:hw/}<&UNNPShUYn j [اr_1ڌ7n)*[hny m9'[4II@WNS xeSdTS:kaZj$R3[t_ϣ!x:FgG1`@|:N+ڄcZ2hZaT𶯄<)xPQ{<^zY #I5ґ ifl]hf!'$D[@ sP4e41q0]#GN%ig6!'{N ^ XpFwf8G%Zd]0^,KoNd46R Ɓ3 a9 |2yhTG=0͗/M ,rF5o/!iRx_ 侶28PI5(VΓ-oڝ skb98FVƞhX t)-!_oes-)oix`BS&ךPy$WExnNtjGݡ-PMuJ"I޹ﯪn{noZ)(X6Dk}W>L<+$sfk2X`[gMOP&F'8JLXsΐ~ԡ{#:-eĭHJ/qVI;Dz׵Qr<:DL>)gWZ_`,A~."P#EA/j[32iS"(Fǥ٩Ќ^e+1-zs\u'WWD?P#)JX xʘ$vx^d!ѠFTS5΢CF|+3SjSokjѮ *.zH))Lޚ'sMDuRO62iF!V>N >6 ʙ15Ii֎`tBX`d^}x3*ot&[l?"DO0E*׊ u[NuW 1*qns?Gћٝ?PJ$ R9;aͺ0_xsisժG 7\@ \;c^ 7f &>WT+Of2@|~y|GC']2?BG~Q*|M 9WTu1դ=e sI 0}c*nqFCUNTZu:'/F=*3aHp8TW,ٮ]σ u>X$Ė\Cuf8X+(r 8LMnw' :܆FġLR#6yFOa"۬ 2yVU^vҴHS-!dɍ=?B1L ޖ ǶLluK:YsֿҸ]%U) nQXr/ |I5@HN4NvTPs̝,Lf>ُ3Mmr~SB"=|p!Ē"֕ <@X+Vf/ׅpjյjy0hOI>[h89N}Iw8kMTwq5Sп*_E rUDjD[O}k\WmK# }mQ]e_֜bj$j~e{7Bš{`8zji6 \ b()mY4he_*ǔiJ f%ׯftԐeT6 džrxsV PD-1%-v⹃Ň$SGiUN@nu'݊CQY>!"Â^f? rY_-C9+_?`?$W6%XLrcrcazϡ7Jt [DA5`UNi;zV_ m dL 7Y.ud7G^PyV1-|깊%L5G*o[w?k Kg\&Μ*?no{ sQP<U>rli :X G!A:HW6ZyϘsS1W|_~lm4gB_6U rUPe+v lfWf6. 3?]" EW ׬?52M'l"e@k85Ca2'ȣ8`Y1}:}5cPĻ )i[־ƃ&OHߢY҅A(PNu2Ui0Ļ68^_ sm& Sϋ0I6 ϸ6mAB IԙpJx C;c ήun۶A1eFԴJBC9'EoOwN2ӷ-%TfrpB'p!B,'1i{8 W !y&lzb]S]QF/d$"']Eqs.+8fIAB@BONf ߓ^VySl q2"w8V5}s2BAyjoE& N/ې ROx4 a p#̣|@P EgU-.HU.64^4`^Pc4xc @Z09B^q 8M^ۣڨ"JÌ+.݄^uo;4y`%'Bk.R4LzH$ &] \fG~l ]9R*Q!4X-k'#z)VU:ni| <}ѳ:M! RN3"}[i>wd7{Qxu`$n9YҼRD7*s{&êqC] ES3/4zޓW7ErNQW[Td "c CDDw,7{[o+H}:9'k+d{9/K@;5e8$EY y9F&~]n"C{eVuA܂\zh_}'9AsƺOqF@Q(Gb֯X8(H&@0ia*0^P?\6@+9I7s?N|^$IBQ}jt.Ȑ!;K_xaƪ:N[,1YLksUԜD doz8#lK FP= AB5E3ܱn|XB ߬%%g+M&\ v[?*F6XI<H k?~'7*Zv$ : VjD4E!zȐ@L'BBBh;b*> ^Ъ!py@3 T/%g0 3s.<ƼQ=o=`ǻJCc=XF)%(gwo@? LHam>dW {Mn81f| ԮW4t.%^zcUǽʣ6S>og_6ōi[ǶI_:[9X=C(a>.O8)^jC~?ts$gـN'z I+BE!^(OYh;} #kmI?2IнߞehxДviSe Ķ wQe &͡Z`=A$֔LJ}:)qU ò2P Lqc#{-NX ȂRWF3⚘ʍ&jauN 9kb` 9dŀshR{gߐ5(!UŹ97(.lbGsM.Wn ~{z>o/,ϋg]$ W LoKFdx^-m n0QdxI>7m7BᢎEvub Asio;LPbflT&. ǃH g@P`"jvp#M`fde!4Za|Ćxop㍣X)/d,SYwFrx?v,}xWGlKوG( 3hn+3\1qEo2E떆So?+Èw4 U{lhVԇK@sVa/z k0LZ5[V* ]4Fq$<>pPpW Sr$D/6ecaU!TRFD2Qv-ikO\|x"}aJ&vZm5DvCW1НC0e礑1walZ[u1`tBr ˋ?Zv2Je O؎EW%)DtK(ROjRmGm3ΏO~EƧn`6% Ai^w]7@PP,,eloi(։(f0:/Dm4 %.l@_-KzFC=}`KqO F4 X2;q H֞Cq!HhwdKϓ[.ݏhFjIi?ũSb_ u Gӊ B0E{q%qfhfW߾v1 .rFZ>i!'m8bVXh7_pA0O(N"/B5-\̂ÕCOv \3&6` [>L#8Bbxb#FO9)# n.3Y]RRM~,>B!qVaRw΋jq5el hK %ZhH|MZūtctߎ NeI4A"< yX9mFO$8tf}#J`,kRa SG.A̚yiw5F*ܑ^{2om4]!jǻC?+7r"0j?P*J`l\9h(=afL8mmsQ%KaZx)`\,ǚ,ƾ&jߓlHO(V9φ^z/&"TJp-XFmg}0uoUϭQ1MXE?oMaZПWQ $/vLJQ~Դk ~",x 8I]umwA_SmKGߧmsN 5dQnP>=S i:0ԓ "گIB4wuF/Su >_s(p=XrqDhߔ Kn d bd oY PƯ1PLhUۘZ]e%':U1F~͠k#xNM3ćk)>~Q`Z49,G2AcLxeiHeblJ(6{h1d/>N\#0v}$nQ'qÁY/j-~ &Jft[ڮ4w]w@/,y롡&Q؏ldsw[t }D|ј+ÓtB'_%5L΄&qDzg71$"q㊍[WyWq0&$m]Yq멄D98+Dƽ 1,\z۪Bt3V}*֗U>$ XaES=f.KּYB(CڦypEll$?>HS|yL&{%{v5h ,M}6]q˩_m//Kwq*0iE)$QfMI[l6Z1]x9.SmNмeuFT5181bc\5Al_'YfXm"&{쪡X& [H,VD7f*o\[kz6J״)yBp;.>²$3i:̥4GaIcZ R /@6_t(;c?z |2Ֆ%,iK9q+Z$SaȰrMūŋ`nupJ@4~P Dy Y0X|4BRl驼6*b}E/zz`n:HX@..rL:P&zL67R x' PLٺ2{7@aKGD^/\.gf4ʹpraj4*I/D %C`Z:>dBu%]&[sAEg(zAdu %aJQME3OkꥅqPz7(r@K?b. `'mݛcn,n 02 坨r8/ĉ\\ZZg[RD|@Z0UOh8/dHIPp'aAU!v $(2WÂlڊak-W2) ~:LygTfR2TQSQlt#6ӟ3tzk6W1{Z++\hvT#Ywԓ{dԳ=)o 'J)TGYN/,ȥSS=ɺT9v†u9$cX^,z_UbzaF~ uc*Brw+tGHnɠdQCȢ]S)GFGҰN^prn!ݻԲG9BTu0BgSq8qvC%5~K/NBN@SietCYR܁7AFm{?Rp؇ rt)-> mDss4mjo455Gר gsh݈%:<:}6KpAIL3uGWmjƯ8)>s!N$iO8}!pm)adiTֶ]b -jecT2Mt $sgHhb io1eQ $=vnQr_(uHfrY,4.  ؿ1  K!Ya2;>\ $;pB.KE8e8*ridx)U{O/:6tާี#C:5]wm)]'蔻c^̹<a wpmxxCk ^qHU6[%Q;RF>/3-%B=fsI>:a|pУ]'GӖVP)>N3C4Mt=lstf k&{yc1} PDbl(ޱY[Eis$-C㏧hKՁ4.Z6h8b0m7|ɉpGinܠYˬ{dߣ\nsJz<;: "5!{:<Jk̗ Qۉi٤Kr6{}W;LK|/xc/PoLVpmBEhX}OɄdcS67;iW4}*3aJ#K [s^D !Q林y~aS8bcMK> RԱ!F Q3v" /`26KalX-,&x `xw~xr1w/zZq-އ^*&x{g5*uLv6Inu뿝ۆ ˡvnn'<vo2za)ײL'U f7(2d 2fv^ܬ |ľ7Bk1GV[xϨ8ёlk@ZuR+*{A3G4XU4[we'g v43կ e GN{>1?P5\9''ʾyhsun/#vJ|E/Qb88= wiuS`mZLUvx?(&ie8چero6B@g]vvB; (UgC6 p/5<{@&\9 ,/4812!>z)93Ok8Z^fP/'qew G -#XndRfqK{DGs'ҔR=" ]C1;>J]NmpY~TPRƯM5vz =iH._Qi1x-ebڡ[ll:ŸUo2cc> ; έa#(;8'Fׄw "HE>p|!4PՖ9DUԏ ttvk*0sƺPs.]dBA7h~O_֨-!%:z^:hFB]12zt^%VBgecʹ fHړ*9G+x=Mt}y,YeZ5K΃Cό`;)O% 06ŤOY]|研]NU{/et<[԰#e.#6F˖𯯄 D#a@Cu-g*Ue5OSbآlv, ~DNʛuVe}[H9*xJ(lefsmZmA%oރ`[JU|"?փj`>Keߠ6FCk~/ԊuLidPK#8o' E|EMwlѬdV\1cQ\IYW0& 4Tݒ&+/AXiPl- X͓Y0BkL"{*igg(R٢]Ro΃KV>K~Sk. Ege,`\/Mд<1(Fz8\ ߟy6YL#ʨFGţ6{Z/!?>/;DA kPo1OHf=@m 5?3%Wx{3e`H THb͊]uɅx):1<Ơ.:ز|QU_[ w' +-K,Y3"s4,/}NT5eL !.c:5f!#|'wJ^SlHn{KTηSzq*e! 1 6H!fh3Og ㎲ |әCTϺurqC8`u^%׈"clakvyѓ<{?xxW .zwBh))BePlj 73 KC+2(Bm*nܐPH.ao7.i[45A>p\"Jx;磔u)!pc&: %Pua{ M0< ásoԅ|T5sfH8I[%́ Z Z)Oy{i6=Sՙ3qCVxIH|E4v,X[\6gf6b%^O>Kxo/:Mb ]yV$"I sOoΚh_#`gPFi \z[=UAE@]dzAW.:=uJ,VZ_Knis4Sl5=(0L B"wy46;CAc*9[Uɷpw>zW \Q-zrU hI2> /)AÝtfӛ2[Ks/VcZnK]bzUm _%no#xר|Vvjlί߲,=͵ z\IN=up_"NA g {S%}x)哸5A*ŽKpob+ܭңQPcW|bU@d1ie&A6j(UJt|A$/VJxxy>FyڽϖMʹ 6ʁ-TaR r²֟O#N!*u@&;z Km2m/gΠB RQ骩r:4f`VVd_WO%h㶞5W"`2pjԯ2 "lrW̯N^#^ ++뾂tA%m|Atem#rS[{ mB同l{X2w<:P)#g|@ KOzJ[400l-(|u$]YS h@XujDT=@Nt+a~v5wkE 65P9+}Jm2ɏf;6%Kzۻ;- pQ3SL&ǧ0ut'l~V!,l 7@ @hoĊ[LTeM]Y[\*+45< )0gg! x;ۓ L0X3T5 d+ٯqVIr~J7'^Bdk' 4߿,W.[#7Q-# $yu迹$3$PdNX46ځ2d[rav"ڬ'p^SЛX(_y!wn]ӈ/CȮU$aulgBfĻzWsFo8sm/<(3y=42VU\Qr%oR|^WŸgV"&j 7&A,,K}tyAzos_NzΞFp7!_>}TqYїtak{FSQ=+,d)M9D"sz" ubFH?hJҁ#c} FscLսXNۡ>l \7ܾÆdlq@e!oK+xW3Z$lL8&l,NH~cS˔յ9qJY`Đ[4pB ٶgcgh馛KLBh5f1.޴ & $ 9[MSHYw-j/1nEQl@u:bVf54GvB~ǘoNBQ{YVt鏬R&6OHeaDM7O47н17zc03E[#vӅXiqi 6цC(xr;PhwdlL H(ƍ7ثuɄ 3.3Y{3Ɠ*;2|ͥ kI%& e]DW/טߤ*%pJfܒ$+FR8 SDJx}\Ύc)ݲ+9z'$s?{L$ `vPfS*Nm5f[x0&0'#ES5&.ozP@AXUch&D)@=}2PRcc{^a Kg[k%X]JgRl]r?2ͱ&~ 7cjbvN3͟}MʙIfRU.%PʶoWsu_=Vk̍9e#T! Qsƕ>Ȟįf _0} Y=Ra`z# ylCi{-fO&1W')F7(r45Ɩ5fTD?  z!DF@^wY|U)4y/Mv+ 8? 3†j"w۝PsL7@bL<һ@N)iٖiȚ ,p*fqe4+dY[[U;#`vIENWA;}N_/AզBZX؞ [:y>xpy$9uxr%As*ϧaT(7nX3ZGUYR+k4,/NneCL\ 8 .TVk`;{%?؞i 1ܺٶjgi\#Z/"t!ut.gcH۩H\uAҌpXDf#*2޲]n잳YXy[~g@xJX#x5")QHQ} k' jamxu`>XRcS#ԺmNלu6\7ah$O T&"$'<ƞlMXØ'ൕw/*Unl[?5{~?[|l$U܆ ^B>xRs- lqnlj0PڍhDMgU$wt\ ^@8i +tp- 6KOyF.Ԃs A^K4@4i .oaBK[%ʟkP=)TƏ p#^6WZ:eeoMe܏q]ÅWH'hsc2GXLu2{(Wo# pKk!-"u˵sV/fU׺J9qYipLC2E*K@&8[.O3M' arQ{m^JJp[IC< ,J8{?Y(d]QR>s)Zqw>녳Gߡ>JytaҳO)XSk>8xM V!H}]uRq8j)x)@۫%]Be[1tbJEc&ع iH߳F4h5j#[@Ac%E"Z-Dys ~& q$-Fd5RG4]/^ߩn[@ *[EBVSK; y/$>RzKT#AS.zC ~·V/IQcwyahb!9J.6H q\hRpu]GC&o9v·|H8B*?+st(=UTh\w"jJM.?<̘O:IqtƖ8+ 2`3bV[FC|+F/pR/lOm5 E+E߸[AҴ"2rl^ WG?&@BP.V"Up~ mf۵ z T2f7nӫNLK+ze_6qEGF98vr/|P̵%[[3Pumwo&g.HX= !YNNlےEA_dDx _\WξxV Ku+6@/5`]rsx wrP"/өs)68Vo_/Y@+Gn" :Wa>p0LIG~pk0TI'¶惎SB }ow cRNM.4 ܱ:`\k"B8GYNdlX$ΤAݻV: .u׼F{tBNϿaPeH;zQ]v?Vۼ>#Rb TN3%Wj{ 9OGBpѾ-Kv5 BzB:&b/:M%/͞AVx:ཕўLڐt&θ h-Ӫ6ଡ\8 4Rpq,nat 1 iE aNcԊ҂ec^^Y gfaD]lEKӝhYҙc%]?P ǹ6 hĚX4X반M~ZK%D(  pwLcnrO7B C7R:PY?Ҁ<,_׸LQYZsj֨{Q;.nfYtC"Bx$CXQve8XXdS{z2C2mo\!Xf|_Fׯ(|mÕҡ5.hLtak3mP陭e [?|և6D4*x`{Whb-ɨlKt QGUHhjL/gK[2lZpaVa@ jS}6 JW .)Zn0\[5ߏ8 /jCRC8~ sK)-d=Ă#:7tLj"+SZ8*9~'Zs|iڴT\^xi^а 8EL%騤# Ǚ-Z;q - Ig[G㞁a#`x7r+|{\Ȃ8o9M!3+?{ ][e-3p֌yzzIDn)% 2z'i9:W%{gۺ!Qnb~I (6 a,-> R@_7JZܗ<3SKSyݕ%Mmɵ(À.ypc[1_Pߒt#o\y$M>7}v3(.\њ/=s!9;f?}]n;w/O8 Fbtuul@Q;}{mz'gs28;jвK~!Oa3y#TZ(66a5qb p؛Z:`=4W Qn~Y]в8EH{ch15I!x6&r vfRo!BC!f;M, Ms5.h"Q#?! {g-U'st WA GKrOcJx"5ᐓFpBr>]P͑#})u? Zwt/ż1a7x=T!,9kaJ9{P' BsHIg=$9Cu6Ȣ }Yp䨍㢉Eypo? (qvNCByTXa=>dIgtW5" tn2 Eo.̭1^nAOpKNx bn\^OMYؑRr'7~sa?i u"[/(⢸Xd5k6M(G/xCS6f6>>)Z-0g2{{s\֡78o4^Ί%:j/|[dê^.|/A30X z.;۟u;#V-"(}EUZ_K^;ls_b%c|<@n <5yël2jo|we萁gFAh |`I+x&1Ck p8smJ˽ ׃,(,%?EVgҕ-)`a ~bBd{%1^XЀOXA14i=^'De`١ Ȟ()`*q:ʩs`xpU j#`wѓ[_@,s>%}XIF"/.̪V& :4stHх{. z6ܬWrEŒƑ@Hi=b"hԟP\)!5^[Ԭh)g屆OxIKTrd*OJ y~.|X2Zo:'K0 ]}}KADJ&܁?xnз >z2oU tt|֒g־@6D ^Ip^,dֺE⩴Eh*\{+nċ|k_iLj< j?KM #Q1(PeۼBg<$GH#Ӆ7{U#Ȼz{8|Ҁ}QVTH)0i"+d2)qq>^I@ HzVAh6 G,RRF McH %#KJTZFn*?Fd0Gltyr]GSE1tb&ێ (=`K>9crE:ytᒹBcEJ̫R|&i-+,P}MG6ޡ"vW=?2S;D0YO}-m܂kȅráPcŚI-fp$b_ד\ _E_hBu(nx8o0xE2joZDl) ([e˖CzQ7=XkY!LE֒Pzg콓7Dy (2k~yͽW])oK԰5?F:YΊ&IIl )O\ ~B-Z&RA'-vr"]Θ(s@rcVQ*୰ Pd0IkIÀgj _3| C6M~۷)浧=eUVCZÇ >'< N(R.Fd ‡a ӝ"Ӡ2Xmnz3 d`D8OXn﯎L+I'H̘Ñ`4[j~1<!S֋/$413 Iv*KNy2dX=fZ0(W-&Hf*:g洯J"J3-lLQV}=׎!z? gP:~G1WJd d718S 11rٔ IzKjI3?~u (*}Sa7]Q2_ړ[pmajkr=mɮ|FFBE捑i )7alӡ 'NTv8Y x(`7yqnZQxl)84,8ީoxYG *X)(Ss6w-8=;y&___I@ٜ@-k^E*uBT5Րw ,Sl8RNi*Xrͱl3-@-JTWO'5~"ӄznw@/8;Kvk׌?w=oTŴiʶ&(Sf.ȸ ȔAg;C'SCxiYa3uJ7$ۻ7M*wks9)u|Ї囡|jt#R>u6qsD)6g, ˔25$cVҨwU֝˪XWh@&clKb8^jCwh$DHW #o[c(4td)crv2(pjj(ed&U񯾎6ׁ7Hٔx?#CcoIץQ'ۊc|yZz"Z Yx)<;Uj^elfJedxvr73jW-v✇Ts/z x.Eg,'.N& Jhy)x`]X:L2[Lz̀ s0_3 g*w8}md]fngukcf D)ƍ8qDLo]ml X:[_ `iy1^J+a\1Pln >;Vq^3jo~QLe:-=;OɰxeWOp߻ rM mJ˭t!79 Ö[L6SNL.TKf_ƙ'YQ<+^8@|AU~e|N'~\п>1hf#6 +3x5:b-uSC6= f7ٽcuOZ?ex=H4<#!8qSqutRvP7W.t."C$54׷&4n?[@-v.]y'ikh$xp'$[zMkNOLO4zmj!lWVa#&ehG &MXxVfo Lm ۇ&&j3s#1IQ=$R(tʐr2Xt8Nj%s-29唍k4^xߩJhcy9R\0KIFmٮr]_x1t8Ǽk45_x2$Y`1~Kmqp.=jJdN'1b\P_!q2"hx-t3bӲ`CV(杳@xO xמI|,֏xe$G(9>9 FS6n)m̺L2v𲆘oE)gA.7L< m{lz4l'+ Wu` vit)c?z)PԻoԂwph}nW`^dhs5iJpǐ=`wAvfu#AG4[[s-r Q7AsʤzB/gS٥_oϿu&9)U>}bvtT ʗ>ϯr60ӹ,>^e>&PRTl^ˉCg8GQsG2Kv >*CDվ!BFmso]iL g 5tmz9[ek*B_H d<0sg%0qTdÞ`f %{t#&+ Bq!tlXO!M5la16L+nKE1 :R"e㗊I::Bn^IM`ôǰ $BtlW tݴKFtBZ.84R`nW:6*_aKm=xX"]f:t(&CȴՁ Kq *hr >?BgJi]' 9rEq4 C+z,lrLܒ -gw\2k1y1k|;&;x_&/RD8 :2OO`ZC#Ao*dRSe8[x]X+=7*~4 ؉EA՚п XTycKHYx ?_ -ArOyc`M\QBvÕIw_NB.3!ZbzE1t5rQI^lS+; J,^z)O~,%?A_3u%yT1̐?_w lW[b2댠^2GOzKe9P.ܸ493at9hI9zDu<699<[x]Y^nv׾uA.Gx]=ع_T뗊Nx?[Ұ:VYU}~49w%gu9n7F+(j+y)/$(GoILs:woCsC,#;L^1 |q,(@m萗jpc(BGx%td)_iPso!oĝ&lG,gΪBk~h6~], es1L_a۳w/v)?"F;y{RQ0W*H&#SWɚD]O}GA +0x"e ԩ6X@;sd~2O g>hjGZZM]z˵ =$[ hx2BˤӢX<([mW0o:z{SeW9IZl7iYONmfSu-6 ϰ0b5Q( [-./K`*uOF4 חCsKwۼ<\m 2 QDְ6F3=nu, a8q۔-_,U0ej1䎶8Ş%2QUԂq 4+2%.OzK.!Kh|r=ߒ_(LnڇbQ䟱JODS"cd<r6iRGhr{Y ˡ´ m$!VTap9!/N@#%+^=d%]T5O / ԊK8p4&n)ٶ~䁏biA?BpU3D`#ِ 2Y,.ps1mf%c;-#uYGJ}4ԻKM(A}biU51oFWE8{дEa›#Fh0ȁe'U:lwi^EI,6I7>l(i'W֣\a%W.qu,Bb`X4_`X{mq?9h#PkB]hq!Qk,hEwuQ挂Xn{lܛOLl|E a|fS`ݶ .'ٍrRɐ1]\$o$;_j|ߦ/ <5$-Q~@Rpߵ,s aS_J*Q O+ >i=bş%[8l . A*Jn`xfvB{L 76ńP+_Q]u\$Q)&m{k+}$%hj]蛶?}GfO癛Cr arcrOBe̿ F=9/kx|°.]Yd {cB'0s4hr{䱄f(ո͖1pug 1S]61ť!ziΣu# xTej*ݍtܑ?nXY4$pFԺa6&-&O 8Y}Nty/ZԼqQI9} H?uKJ`H `zNuDx23( 0. xGO#/t_&tvSZ; X+7Q1Bqr-VI/R~0g@T1<§ jxIjvڮSsDRF:PXZ;yaD/MKLb ;m|$O=켞@3Ǩ댗kNڌX :/UO >ۅbT:~l2`&/t gٲܟyƮR:>l cE Ogb X7nI#UȠ:zu7lA<'WlCmB+񊑆\?UmkXd戣 45!2P2U}/ѓ_d)wQe% PMp.&1uiV7oi2S_k&ZH%8-wM!E[j$mxWQrTr3 e$ wjЮS9_3`Z[Γ|D4zua\& F5*K2xDVrVó8ziQvV3k\S;jBFS(& Ý]K<rD_ |D4 M߸=N_ l)BƎQ衪5Mq$4^w*ܟ JDBfOp"Aw y^Ao,J`*8i`Ω鶭@F8C*W7/ N_;3^'mҙi>~!xX==E<ڿ 7u"am9{JWp@K!(c$-.z3M#ɎMnIW˂q%v/紐GĢ_ބ8+H9D(ERd`An"kݵ$bgk^d/vlyEĉ23CUeRpvC [KJD %ћ1|Zxpy2_1s6%2ʞYcvA1+MwNwLͤV^5,k r{!THG&֫mV'<+ꪰsmƂQ^除-=*svOh b+f?UMBDž]{3[zUz4&rظV H w::'Y  kY1G}235B#3P|=.R6@ m2ٜ-b*qͦ7& 6ϳ8yTWh˜DtQlԖy:!ˌtAd_loN-")HP+$:^lD ʊOVt1t8x*WZZ0:@.f[22oZ'R С"!@+vWqI0hq*f&/uVNXsHQTu`_pH"qn<窨ndZp/:ףׄgAB7"j8gQ$2r? \Ԙ0[}p1UV4TNnf}E1OqDD1IiCYG*( /><?}Rao;G_^'~tu'4K}vr3^:G|"t͏d@䅢l~~vv#M3(ԙW!JM{ iVH2GM ̈ˀ~_~xb0~$)x:)Ib2b .fm=ůLW@ s1g5'bNS9Q3Ynb9LV-ܘ@؜HlYɪԹŢHy%^ PJak,#bPcv_'';;R{wCN>(HX ;{p99Ř B2?T[yVu\iW :릩 yD5S3K%ТyF]E؃[mTBͷLlC_*G1 8NŢi'^:"QI՝,28cc=3Yxx8m9w+.c;Mb /U4nN9Ѧ9s594)FwV\eO#xy 5}m"[~T,.oro3.N.q*u> ys>:~e>Qj$CXGؤ€/*FAVXjC]dXerk\x Q9Qc 2Ku uEﰨhw9ڲZ->8- +g)]`ܜC#cdMI5qZ#lR/\!٣v~wv'9KNx,܌/e>C1m(+-xq3؟y;2aJ~R>'϶T*R%1ơ sʶ:,POE, CO"y#X_`ѭKc;n&JQz0 c\me HNsEY.#ݷDf;j0`-&E"Ŏԋ3:؛/1 mV@ro2~𞮴[prpYQ hI#&iX޶+'"Ԗpm+Inl{%mYh7Lc$u_l Y}ki57e}bFCW+%ԗȫlÏ 5fWK<h#*"^G0(<g BH1$]yGZJǐy$7,{ ڽ D g ;.˾_;z駺oʕ>MxWLQu㷞C҉ ,W8;"QH N¹8~+}c+ 9:^ 93%^L]G-DZ Cn<(-'?!%_]]Yw_e8^(yٙ+ l,~8YV !ҙX~]sc `h\ޙuP{apUBdeWOGPEpeA7=YF,vvb|sbHZa/v E34r|\^/9^]+,фuB1K^C4V2J%|~Хsww۳&K7v}AdmP&`ٻvF`SʘҎŰ4|A (yoE0]KRjĝQbi݂vvr#CG| ֎0ƤX6D-% :3tbLJ`(F&*vt05($9aA Nޕ1rk L=V߻>4!(:[F!R35-tplJ~GmS$Oo&,mL'-{4ܧRK*LXiC#ՠo<6E|}! M8-)[G;wEt- BH25nG}NN=^ȷs)&α ^p,K~b"V)F'nХ>jZ"Ufa ct@8IjZ$eWNOwgIݗ$4嵑Sf1G6~7"dRsP%l9B Rg/={.K;δ:`'{eLNBd۳7U/mSdz(tz~l} AmYnV[;B4`-2 Lͩ O##@5*w)^PE~Uʶd9%-x9ad܅N0 [EͧH~BEUВ4X:Aǯ0 |~7`U }Y7#v_ G0n\ǿF́el5."Q ZЍH2ةK9e9~ g+"Ys Lkrě^wX5nM*JiJ Nj_CV9Y|/ ѓ{ynQ.Am:(,d4(j?NF4JJWC&5n=(p*>QA@hls?Sn$$D }ڙEJtx0ō1rТY|$-d vMd|zϢ3(~]%GAJ#ytcuImK 6 v`):&4xMN99GM(N{-?rߤg5M\$#y ! KvƒuY*VnS9{Rx h;H=*.VA%c_Y#U|jʛɧ6p:Pa ыh`t9́N36W7j16MJ A=z&2#*'*X1hz\^7}T*>@1!&+8Bţ۴ djbCwܵ{Qű腎 Ҹ.57w!Z|"JF!Ζxf\mU+M%hIs^u'@E$(Esz"\2HH-ġ%nwaweD~QaJcq٤ѾF0KQLjDi,=a4cr- R Xs@' @3kZ<࠼%9N/#o ubC?0:ݳUCtX(Sc|*aƢ\ \ezhxFS x`QCXll KO )G6zlDxC)mJ1 Vcx-RR+B!vfR*+8IP{~^5*srrC7^+c8/hH &z< ng0l΅wm&*ea|t#t@ӗBmϟb g!20),4Z' cw .r3c%?=dQacav  *KR{7h^I'+n11lqVIb֏RM&۩ArFMoM :&jK* S>OTDjģ@lN;`B$)L'5/{jV%3u/ {hڪXbKnspnIE2{;>`1lmۏ L;4iYBF9QLFZwZF[/T}'}< ȸ=yRL 2|ug(6h ޱd1՞F/ӮƘ5+n w!9KQAdr#r52[YtowT-Ggۅ<8`aʑX t:t$Xѿu0N;g$<3%S{&eGt"(#2I/ͻv(n[9@J ]"X.ςYz,1?ǩ"cሮ\ ]-jc a#(~7A;AJ^.`@r4mWC9Cy>BZa|enqA&5(0R2(fBUJ Zڏw&eɽ{+.,D((\#=[sX~Ρt ~s9'\5 _¿.[GEl?!t'Tw7-H$hǖ my#T\0'8DMQ ;C;jKE/nX/BaM1e؋Vlp&LjW|{/'éAK<]4Ox/[@ {Tm20l֐;d%0 C$D"8W{|BfD Y \Zd qiJ+#y|?:ĉ(G쭼(מgBV pqVrm*k$kT*C=>:¹8煕^VʓBmA I5%vM&29Q0;NMϕ("f{;Wzs}xV?Owߑ@7Gq?]Y%St%GL^znK40M(-xmJt^ҹ?%ťئjL(KE\8->Y#΄Vm 4A堛0Df9EQGGh^x-\X>>$"lydz k62ӑ(˼|@|){(g#vҔC_{`<$k8E0 猣xő(~dX9e9g} @f C@m@>9_e΅nڜQ< r ‰=?^ ZȄD@8΢e4J_47S8b2% ^f$Z-A%B}ΰLGLggƪ:TFt/h#l Q+*ԉ}pPm"̚1/{ $_( \gfm, "Rdx|',`~dwO13#H?A6J/{A.l/"oW۬n=Q,!W QUׇzt[F0owˬUԭ2`!X<(zh`X^%DÛ\@͊P3`q-%zsjش \SwL땞@8qrJ00Ez\C߼PSym~(4ؚgï±BlRD^Wql_ff)Z4ϟ.b(;%yUc,uFf9j''UU@nZ8z~λ~ݻv)@z!Z8,B=|0}a[ϱVpm*X?YS9Lj_.hn &3x Dpԥ\RL鷫w,ð6.jQLF^;4TaFՇ*æ$+E`[*ebFZoP@0n ߄`;]\ _ H\|o-xae6>^}›UZ~9@jvTY.~UY-?(%sb*VC :Hr"[ @ ]^>Q/mB͕̓aN^^}[o&/ JF(Aye.痮9fw3?ſ% yl)5qչUUgmn/pr^xIN' Hv"לR[Ξ,'P oq25j>ŐP|>OGEQh"aqȰ'qbL'z=V úY5ji74W $?aM˗߮(N`Pr<*%YjYeVD[8jsod 35Am4ooP&7E-I\1nn&Y BB^QSr eFd*yp;{ kj Ƞ/'d 2_^vl݄=[T\R+gz4*[etK"Zw1 'Q7`oRHKmSSG2iLDRpqGhnxs5ktܛ no3aGLS3s;ѬiшÁތHoٹ)%(֗.Z[ɟD |.-}QәXd"` oTs%ٺdQ#>Wo,5e$~GӟKHQSi21mnuO N":2D'cEpbigPJ kmgo5u' !.`Z/_v-=i!镗B H&KMma6;PqWO+>3v⠁mh[2 /DgZhNn-2!,bV"Vsps)DRxb[6"?W<-uhklB<' <))ȖrpP%pOiK4™c_+J31 eUμ/LC}zA^F_{UsXFl һng+KuRf `+w[IkzcsxH鋍a>U1ZiD` o4X<ʈD%a]|͘םā/`hvY yFW6c5*J*ȏRTD9#[֣H{N>-TAܟOHQ;ۯ,Npyk-:]WU> M(DPÎ='.ЋL7w!xJyIFRa{Qz`]$?p.ĎBj+I%.Yoʈy0}eot3l-ڊOvD!շz/% /|&&K36iNkq{&]Jrp9(  Ea%W:VL\7NwlWR4{S}1GJR&d,>m]:pÐφݟѧڗ9P"yaS0Ù ֥UDX9L9ʓfSkOI9)xmF N ̭坒زBMf L.VIӿI+QMH'^v7&yQY"SEL`iOH<(; M*/?y7(q _14 R}`@uXܢzxgpeNP W?J ;`kcF[s%39+y^8D&=-_%A\ϋLy "ZA or,]h-inIy?0]_0 \+ٹ<<>vIUMY0%9HNRJ"n S?9B( ߢ:7@( ѸA=r#?-⬪x/BSZ@ِ+X6\z؁ ]*Bj {jU DJ߽nD_q2nyn.n ]r[DDf|DRƒCy {r;f2_; i5%@ RK'\ c$@Uq 9ޕ[gpNpnρ +p~}|*م0"BA yF|o 4d:jw{y9zfQM m1!ԟ<8J@mPx"MPfg'6Dw64vE 5 -޶.#]LŲ( C)$#ciWg􌜲z C cX??+.E9ta_& R.,zZ3E@`. =oL8P:91qsMHѶrv%S9-<8Q<.ld\nPA6;cKՋ&OHQ4IE|RHK TI+~hXXc *.kRR .x94\&*g+|+g(IoMLzҁfyy!XOj(H] m Uzoa͎4( u/l5/[b-|2e ,Q\C٘!M@;sLX$lj{<2X¡_LVcX1$d2"ă"Vn!q|vECXAy; F"W93pi@+ۯk/hPyމXm\HG8,\2k뜡!y`*-2!  U ^ʘAS£&k@x)0Vg95c\:m{H/a, ͙ܿ Ay XS ?<Խz^2@R^/cG'pèf[zG\Ry&a1oxI`aNǃ9?ŠGvnįDAdVx-ê#)j5 7op=S٢:Pj2l]zlMSʸkC[L210-9Y1WQuىu=hK-:L&yS ]c(, 1U%rqQahKym\HS)},fz% v~Vkfہ|e/tۋ5^kԱI 3{YuCw5luqpBvlC^Patre۱JP$' nqCnh()^bB'-qhV[t~|( ś-? 9ļϢ(9gY̒egfK xh Q,?WbT&8եGssrr~OM/Qr~en%#0F_ ,jUn<OX1M5{M.w9QY&:Ʊ;ĭi\s#s}YСhKˌa7TRhf΂2#TnԢ:t@x-|߷6H2TcvZOk!nNkNb%p,V!e9,C<`sB$͖%ZRRn0_MJUZ@ ~J=`nOHjIlϲɎ )EG$?9;Oq{ $QgaF㕊BL>a*`ǵoUQ<@llM eLFL}9U: ʩT4}1fϽZm(n Ak8UN8" Y `nĖgbz)@2D[&%91O⹣;lcSՉdoX˻"awT+u=r5D,JnJeo'>F| ;m Z+/P3ΤY3/-OlT| ՛iJ!M$ k~3"=_9X\7o-PN`ښҫCu>s Ćܟ@8?FIә_8l TWhhS }i*F8΍D~*M]`ebbf vZEeKz%<^f1z ej3XXЛK+[sir'[#"\ciLv|! o6w Z569bDz\z8zyd̵8y# 8o ,= 6U`ne#%!cs~sFMwmeaz.Ywk { n*܌9VU]1i\N#NszP ޥ`UeDǦ q7yqѦUq3H5  ?([E1[oKo(eg ,n$ŏg1W).  ˴9!哽S!o`0ŏ1ʚ( U*[#\vs]R(Qd#2GG*SJUSҵd^,k*3oYU6K^eu[bHw\4؀Ϡ*D4ϻS.:{}' vnJ&_;m\Y1\ҿA}4)_4| IL)U rB}'Ai\y7'YlBKi<qĐZ5]Q{^BeBAwʧRQl_KUZܱ#8%]KO&nj >y߀y>o ͟Ȣ DRX]jzr}wH)KLnI~}Ek䛉PO03-\h!g\!w@_+:S Yy^}r]2uvvoVFojQq.<}1үSa9c]#c='߄GzbE(9!^1<$jv Cȯ@|]}7~]MhVVʥ'f,AhJM:9elwp7 5yS5kPU;'u 6RSѕM+Rk`(q6I)NÉRn(`?D%0.~HFT9xM-F#*!cfvZ̑I>aF*,܉wɦʴkK[7˸&}[tG54? fl.^:[ ?_0xqȻ0Xj2$L0Pgq@eW8I'_V$ dl\) H2.cwi}@>JEɬqڕ@tXOǩ wsSCQl`^tM\TG Jj|QIaE qPKuu 8-Lȧ{=#4w *qqQ 'w=#YŴZp'/Wpo!`k|ձ)dҜ}/ۍݕrL9@()cֲ\iHqvЦ?bRZC$P{NK>Dv=rʹl 1Ta,U%oNhnv'IL~\[26۷%+C=7qXT0dR~K^ hW%3lՏ:GiwWYLȖiSRQ(S$}G2\<95Qt$zUˢXHm=/fP/5))A~R^$)Nm'ZUr5זo;]@~gR$&t|cލMxD?ȑ'bDKsf+2.>"uS|<3d^[G$˹N@>gP+ 7*)/>2Ow>&To҉ ZJ8&rr&^/)#6wrA 5 f=vi$QC3}N ?ꬺ?B6b dq*mN F?!~YUژKa9 EPKW.YSEoz2vpiR~rzl_ Fz{KBWF!?LQ.GY,ߵJpc8n\ ~N$;aJP6+!,TEao0rM閰./X +lkN>&ԛg>vD oRj0'Jz)"31ORJv!U(G.gYú',$\1]?c6wd<˙fY"ɢM6}de.0fg%ڍ3!Ϥ [}4KK6j=lsk็ -c_P~[О^U>p,ì0Y` B}v8`{o ow qc=vuQ~"(Ter)f`c rq%]3ľKKW_Zy#bD=g O& G]z^2b!TEm+7%v+KGbjޤoۯinqo!*.kŀY!_ћw(Y˻Wj# LbBڈq`Ak;3:\,˺<>8Iz ?!2'}$~w\,~vNa\Nڝ^sr7sRM04N 'xo"Lr%9|b!RGA].h!LGNb(óq?@{7Q njd _W,Ga4Gu^!uZ0dpG=Зa_He#ڙCE19%*)ʳ\X@-x//Z\B:guPsm=Ğ,&Ж*Д#@BG`d(\-PE5cΔ[/8RK}'Gg *+t%c%cFS⭎EY/?6k~ְxOQATOu{D r(m|HfO)rX<]q_S)n3#&Z vSZ;:Xu޷]Ut8W/gJp;cnZ{l ɇ:j*k wu=R1E,"Fm0^leRFVT= ӧ0@Ժ!q5ѢA\?9aZDR XF1Jև2S ѴHp5PE|ȕco-oRF' e)MQFpnp,a)׺S1ɛ 쐮& .!>d*lcS$M}KB04D2͡b pdLCc tr-:z=CɍzynfY*X\cIm]w֩Isl.?' MT :FPُ1tW>4s} 4Zֶ±/{8J(߇}7V2>8MRI Hdf~ܴxpALrP̹p"@ȭPA0'`ΒwO, Q]1U=LWi߄X,l8b:;}uI`U?Ǥߵq6%mS&-y" <<#kҌAvȾvO]7JL|X; %!4 /+xD$4)Gmw\0ZɳoƼBfMh|i~զo=u b~W+J5Q"0"Ei'numY!χG(%ffB8p1fRv5oFX㈦OCO.}MN#Nrx"՟WTbF3i'ZU۸!m~p-[Q \{zE<"ruwtBT"h 5x*R824_;dRtL+|-zXqW-sru%YPcIFY`JMbAY* fqݻzb?8,5o зM]Ԗڣs'<{3 z)ьKdB 4L(Oe8S c3y,rd ,w-np6ΜVϗ4  /hZJ"J>2xbOrxEw?6BSh'6>Lj`΄=e('w)Y{GfQks W i䴃QY6]~ >q+A2f;mY }RrăأP]y]xզq`2Q*W?jS)/Pyl7Z&ە9ZiF' W΁YIUN2%{b*1d3vIbCFpɾWܷ#h ŘD\T@&*p"1 7b}ZKbpu(j1֗l_;,eH 쑷7kJ;h}XN^cKi3ӀSR UU,%*u"a]ܭAk$ך Ħ5%JX60 Ka'ԕm\A>z/?׊0)ŞL(;OnV=e=E}ll#I~E3?ZWkYS, ;:V._+бAOV8l#S@U2Ct/4Nx$o)`#R*kΞlj4ċQ2~{rc4:{GJ." w ݪilt6)Cj ҖH[SGLrg_HIXKwi'kAU[u@ p C)쌁#5ATsqon+N)> 'o.ے~f G螇fC kNTHCL}@`XJQ< gnNL+'S;`ˁꊑ~¾ػq[wU@KM6!L' Ѩ.҆zUGp1p"("~N#hapse -i-x PK iiNIl="؈haAHI(OL۴UӲ饪DbNe객NBpPpDYsyXATP?C"zqʹCI@}^o?ՕN^&-ٰ>Ocgv,~xk+Č$  <\bݴ :mC\AǨ'kP<\Nu:Yt W+:GWB; OX^thtg: ӆ! @ Pf!/([[Ȋ>Ul56зK%vfPD?^C rIf[ܽAFVs6 N%zBdC̰B;C:bf~K =, tOwB«GzbRrh_TUt1":˽ͱ^-zJM& 2 _1+E |PD A׀c#7<+)NV~qV<#ki+TxQԹ 4M12-9;&d~,ͬ n˚pX> HtW&|,Pt}KeDxZI 9Iae_ý>qQls5@$oa9؉<~ƺ ٓv+hFMT!xsGZOiq1&ʉ+D5& b;7(ؕFN gw7 rˮV҆]0p.1xKOVZaOـh?L.6t;9j H򑉙*$<#:vQdTs )0IAJ>8`am/ nNy+ (GǸ"Fw\mHEqOFJAZV ґ΀f_0zxKM, NCw]"aPՊԅReyL-*Ӈimΰ#"P?՚8͑xK5dpt6)z^DKJ382"3K f !Z6O7 (ޯA){a ּj|oMߔX,ve!s{9ŅE\\U$qn[U6UŹ^w:a/y׷_\ylӦOc/9]t]8}<ɡ'́:E 7تGEPU/Ȯ, ?sG'iCip 8EH{7'}F%Fog&ICVf2>_ 5k {ྑ_;;+W1̡4X#Yr1A.jKF @DODttLq2Q O0NB0g#q:UpQI398aӁ}J-w|<:*7q݌yPf둈Vqw%#^-\$VՐn[,-5Ӈq/OfpSdP=%}6D1ۑWM a `gGQ[9~.$}i1K ם?9gG ' ŏ "O7bnfm‹9pAt y`{?,yho1s3aG<fǝq ^z 3Ge> `cu`4p%VyA|}+`7]~rTaߋ"Tsù).#AQm;FJ!l򉏒at w"5 Os)X))^dQHKl-kؗΐ"$q/`//\+ wkڥd M~;&(' 3;ƷA4'OqS ] {J-s ؁ *{_s |  %*JmL-ʹ9s\X bv21Xɣ'lr$bVckq,ga*V:4=\LŊ4E-SVjSI *?s(5J'RB+ҏ,w2F%2J} }ߡ bER8V!W2brŔD(EBՈ!7&zim~CK{,`N^X}KM|41K5e`?H&HZGf 28L c($T:9б _X#+5[r+ԭ8 f(Bd_^܉ rqpW+eҩTBޖ<)%5'k쀢BԵNhGb.Μ & 8ck 8{B5xw0iE(xC?w~PŎ?OT # .ɳ jQ6PK^.4b&cc4\C I%&Jk7_"y{A(^N [9|f%= O)[ ЗA"Á#w VhC1!Y+K@ q";VD϶|8D8!dMym"BA) M)h(&XIQcqⴈX 6ЇtЙ""4h Ϗbpxei@iBdި]葿]@1C^ԇč+1\pGRǣ05j0$<{ )ƝdR ͋]a#A*6*C1#SS{7g(r+NQeL)1T}hBDXAAξwIЩ=9bwֹ2n# ~9euDA;6/Faw~]%D.0d6胪3[aS. Cd@x$$n2i =}8)LiqWCOUT0-:uXlqE0Tr Q}Hj̨a؉yص2bWƱ7[;_La!R㸟!FaڛW ]fj̈́Q']Ю|CqsZR"o"mѤCiVV MsGP%3YGQEQwzÊk~bqn;|КCTzLPjT9&|d/-۰d2vq΀~ZJ B40N ҳh:Mp[Ĭ"]s\$oy~^u+`uV탆`;({ZdIG1^f{>n"aDr(N1y1:i2Z%Q*9W"-߄$cE~h bv/bv̬ݴ jkq$EN3o@fD=!hǠuRi9z˺$R3wm$Tf D Tݹ Lȵe'Ӵў#bo۔H⬳WA]Q?vJ]N C֫//Qn{1⿠"R48re9Zn.Hw%2̰/wS ʓ8HQ?=14p+Ҫ+NұZs K~+jK Xe?C_: =ij<.u sȅ/WCð^#Dٲ_ۏ8U|翏&m<a$! Akq.tL]S׏C\K4m0W+!xm#Q=#+am-b;ŎBqxO5QE cs6\{8n$h|AwJhұW[Z4[UW`m^ 1m 0;1Kr lUMkN3gvtr`˷S tK/ RY/!1,YGDSN~RԞIh(`Ebi>L7ZɗƼq6dkx<~>/ĈLz/V7HElergsK>S$D:}=<>lDDb\.1m!x'+SMm]X\Y'$mɎÃz Wx緟j<7,vBO;!?uWZ|ȸuD}8CoDh8$Uns;yojl RmαD%o2~VI`*Ɋ[KƖ$Ⱥ g _&%|ct1{?|hΡXJP"9Pպ*E#D D˅CsDkm;]cܤػO: ¨yWUf}Կo<'Xm)uEbF H:ѯcCaW(0&%h.IIU@V~RӫwE|nS"MTT|W՛swz6nSPo&ՕQ0 UpDhH( ՙ7^M^2 7@6ȦKi)&= p19L>dqd3^kqNٌvwܝcYsuw/MZ{W<ϓgMF#o|/'msocKc'Ђ{]^+r,)xܯȊ)O@i;JQ P39+=xiV.co\OA՚|Q}w+SΔhYXYjG9;餚G(7/杦;JJl vuMF;xUteO4%<Lo}rd#6R)Տnpo[I=;v}eV@ҙ]q?`Z{k)А"]{lThҝ1qrtÐK-3]C3( TXeL7n}giKHggqӝIH*/((2lg(l,p鸉a=J=NNH.Dg\or|~K6"R}>}L9Kn_Wf {$Ԙ&,Fz)V o;é0=U:cM(o>i)8G^횛O8g}[uтƒxk 7yeAtiHE*/[K~3G۵W*ώgu v۫: څ2|i;|k # i)ub\T?=لwGD (Vzo"/ n׻26A=.K8XyCl#RJ ΪcS֜l9#)Lm'1( Ms%!;GJ:CɃeܨDNei^'N[wDLz$أW̕ #H5y,#_y/c&<%>LÁM9+O'#ȎQqgMy=髞OP Lvs_q>Z DIݔȉX H٩("/͓Z虀CHh\? TOym7u*}SfrjG\ S}zϮ~bf89Qԃ-e?dJ5Gg&@] }bV 碝izaZ:ףrD='o )V- ?FՈ׏_$}{fRnNN_r=Yzo)Z)pK-\ C RiʀRR8c>>W6/yUP$%>y 3Mwm4,Om=Q= Ъ#pP2/S,Iј2xM JWHu&rRvBSy Q#.]nKkC5=NfzQ;42iˠg.aeHUVh  Z۹6!#ޚ5q1G_t|:t5AD}ԁe J %`pc4y=w5 ov m_okFæLsti1G12}<耮ڏ8_pUꑵg.:0Y2KPG-將*UsZgC7l^)z\~1>WMQ(q<Jod"ix1ΘVkdޜAi}\߭9,]uuM@Ծd:g>~qzI}$@'NMmCo0*ں!E[;ۿZK}Dǽ+VxzB@* M(Y2h0b1o\Zm_}A{wVy9T0c-P][PT-mfG·;PJ,%hhO m1eH(a @ , mz z"ɱ:8_E&2z!Z y槼Q7H:hON ??+sy33 j] hi0fygá}QUks1*~AfIջoht2QGmū#^r R)aefi Ckoך Q[j;GC.M`~.BtҺ%B/w %MHP_/_1 Dg e'-^:Z/D71"5Yf}UMۊDYtה nWYl \ws#k"smʅϳ%Y,%?lq Q"_dW(gT/ K|e)Df٦On@f%bBţ۪9֟a ȵ; ~1]7[tgD4.O8~sۥ0Žk؄lTmx$Ϟ!vYE 5A/˺QP))pcJӰ͛%8 }A8G9Bbc:ԣ 1myhmد^o/\ 7o߰=59Z& a׹eP7>\Rr`M<֩8h %UBs9E }~5ǧOj"D~!f3l7cӊ$*LuW6UzՊV½3E53#clK2^~ǩV?B尅3;)¹1FRu)\D_Yd?@Ƞ% ҠgMZ%Ruڣ\kՔch 9I~ (鄊ufnrCoUjN5,\Z?enuû]QcgV;3h`kɘG{YL!Cd>FGM-ƨ]v?0©0-n%jApn]a߅?'b8$1oN|!k{mOB?Żc, >ߛ [@H|fhpi3~W>|1sdFI%F%\/zPY3 ^ x)<>ɪROgtk@w;$uC lvu3%ĩATow;n)>}@K)92~q @VNhL(¥R[ 8?3TZS[h/QTU#gb`Lmlq~BYʼKaṵD$1S_AZr}%y)}jlgҬ@Ldbn0@$2oM5lPG`u_'6@*G=񆺢)O~bPfirnG+̘j{<1d\{agZ=3jr"!߁ ?2r9Y/`ƃBK*hJ*7[Ƚϊbat9V>TVXShf6ΦSߦ$9u4;7M)GPOzaUu@dEsJ~8YVv HCZ|χ? cE8%DbM5~9@8}/ضiokR] x?%=XvrPϝm>L%Rzy{[/g5e*8}Y=Qu#iOt$Yn1c@MP_ ޛA-܍9 R8,h7ٽDyV[ ?w`$!$|T{v? fn{YpX&O2/ %_ȉxSMЂ=dN r~8c@@&pMa רk96cǛj7LΪS$T@D=Q8-}4nj<@@,V()R÷7>EVbMIq.gO{lkz#™i-hUU͉7@f^ِ*I&iT@k#Vsi3NǾU1_&SYtj88͍&1KP4rKDwUuP2ݏ o&xCkL_V3PaJDzì6v=:J/U+5?|k͕gЎ0b BCeDrKDFW ]X-tsu\C9=|wˤu&4Ϭ!kZ{$1@f.\9(,6U 9/TknYSþ+.#f:k8jozʠx{_)8Y+R)j?TZٕycLRE+%ia(ZcL.ˎ/qnI`=nShx0sits'T%ak %Q1x 2$q};kJ8Vi.46\̈́WE`Oy*'h.LN@ŲAHd ʗ,#RїܶʧfqТ//ۣ,nے>VT (w:Ї:od*0tz?wi9e rNWXLH^6/"5j^OtΤx,Ħ! MK$wa`: <(s'ʀ K.7e20yHUO50giPP}'Pm"Bn_gShw!hBh%Jdm*bQ Yy"n.l`f71{ ͚ۗ^AQ'QדV(?%[~}Y@]cP6Gk0)K(3OҘ.`TыǨ%p[<"wO.#Ϫa`qWQ~~ܛ7Ǎ|ZHp$qJ3(,%̓4p/!ե"2_ty HVq'k_xN~ݣ" ʳtT*Ȥ@oYP/7pI?>nj! ~WhaR_kuz}Ĥ:ϐ&X3p5?Te?߀Ӿe"jz\f IwCc,SQQ'ۗ@Ep3."|NnpbYft[&"ή9e#sHφ;Bɻ&*Hm/pY|ځb}pc6&y9+cEo)ӰNů6ڏWw χF3mĨ}|a7?w.o_~۾&` 1~WdM#hzE Շ#b]ulsA.S6n 0hMo'Yp?3Ң\]8M8y$1[؊*Nt8?$FؾQ%J!H*=&䄢ҏ\Q6m%S0` 4."2y6Ɣ81m7KƄ 8,G48.?>(ǗdP[eީf5埩IB.d|Fm0ɧsؿLck+W l W968zo# 8ot4LXYxo cq9ݠvK~Xu:0RKZ N_Dq!fE ᶳi>f%B.G$vv4eQ\');+.?LB‹KLy!{ڟ7);}b"tg<<9u*ӝ] -D(}ܩ :晀 I(Nێ_I1c֥9[!to8W e ;>\qɾ3G隷=5Q&H|iTdgqMH%"T:AD9xiǏED\K[q-W܊O*= |؝qX2vYJ;}}M>%G41n&ʉܿvr huu).>ck(,<&Cuy!DW>Y7yoҙ|)=t|9{-)ٖ!8#P%y'/čO@V^dޅ޽GrI+4v19VS&JVhP~~Ki*H; e:O*XZNn bA߭AEl7kh:# fh=vW_AQ`k/]7֧Ή{jn?\8 S^ ݺw[c* ذ~SZ%*`CFYl׳Z+G3)g2=' S|tzRBȎzxQ3`I#0 y1QrպϠ1rs0}v tkJDK>RtJ{J[I=ãz5,7o6GM/)#GO!9ooI{>wj?)9;quڒb9iʺ-쑠|U4Sc1&#6¯!{\磼;H$Ui3GYx7X&Onw-^lMa!t즳y}Ϊ*PY'ʵG~tŷdUX7Er;\6=1mjmU)hA3nS#7f(mk/!'WEӧ"ک:.7 '~JJHKuLyk?kml8\\Q C) ǣ8+s9(t#7Hp4ݿKN;qaIWfAU O7&c:ĥ-h6>CiR ~ <0;CJd|6xؾuF.r>n)UsL=BP"~:)uxs$.R4Lƻ屲tf lz bڮ!Xfط&Q" m?"`aEeFó d1S+%Uigѯ mghr`r5 zHؐ!~o/NYG;)P¤iMkد}R.W~|Ё3|W|zhHu"Հro#/)v 3IAabf?Q 2X*T`}FO-kQz6nw`Zi - 8b 0}TU1Q}ɹbC}t$|A"޽&D͵1ȷNq <{5271}KVA6L oQ#_0=BW7M:<3\= a$ *|V[q.Q:8d{#LOas}_r@h)%J !ΓA1(ڀ'GhZE[~ ?Yq6FvsHxM|I|@^Ipo jޛdZiHk${Dl盵ܘQªH%[wO4_kG鲹$Ij7T܎`FX?@w moEfD |0٥6xe|,KLj o{ŷ#Hq2g:E,`4SG+%-h(1SRGѧt:>8fhJ?JObGЦriI%PQN1rQv;,^2Gl僙 sȈzQ A_ !{ Ѧ ;Q6i5&cjp$dCbE&iDRi=BSȈHw3X4;]VV.H! "#Xڹ$f$`쇣ⰆTB_() dI;5>(Pl|h\!|'OQǍrk5 OxFU $_WB"k52q)F}r P;Έ}2l`* zuθ]=lnKO#xF dUqխW:`iTfj5[dL&;m(u7mODjbd\v_6"JPY$䴡N8E9ST#t⨎ږ-6 ecq/v{[0*pިbAŀ䙙k2yӞAS7>1Ѩ'ϧAN c |?W" )ˍk\o g` `e,V,80ڙj@b?z`XkR0J>y9O끪D q ;5FsMj(hC/P?y2[Yx$m13^5 uRښy-,0otSG{Q_[ӛHnc??#!w$}H,2{P vci^[=85``5H29O"$a$G`([qp_^~dsN"i(ss%U0-Z'+˟yΤ6i!8С[oڿժ)ӵ,F5@G">;v\FwhS-J07 B*uXЫ׺p2PH:S;$el%Jiݫ>Kc;U7aѐ^ie?:^$:/߈QW'c) 抡@*?>q׬+BҢBhlLd'?se/ط8 y{Ϙ[G[mH"R*(Ypy=5@PgvCvær\ȽW)("85#W]dG~^OCxW:h֣߮]"$mNhFY^޽fĠ3lurl %I:E *-Vq 2ww9#f=:46ljrY윮]8a5%FNV8D .f5j8{EIg{v%nqA'Y_csq!l ,9L?8K4pPh?|̵ޥG].9'S\h1T(3nlEWV\!YlfqBҊ0M%(ģdяe2P~; B}:@9 DI8\U3@cN&Fn:+jYX1tv'1#=E#, MS=aV$EV.Z8~^L*LD] fQp>7Ġhs?F7 6"N`HPO]M6Cx\q{l[5 c1 "ʩ@cx[؈@L}1?Ϻ(* El3^}v&>{Əu7&:q( %]Fʌ(S|^>L3 -~zĀ-nHYDlcAZ#1¬Uڼ}_0vy5 guKhO}|cȏcܲMmQFV#'8(O/fƧ5 ե3='M0D#I)>Bf+ f_,jRgjZIL@zwCAhoim|\s;QxXTo5'1BRD&KC 'AQ>PN돷^-78dcF0.C0,]`R) 䃽 iU5a_H;yPj7qqkN7 FͿ`mL@`pB°ZF4Բ1<8IZ;e$jK6v扗b~Od::8H뫰ٳWɸikk?jg9X{ my]oju2o( |Cg‰y&F<-HX_&e<LR(L`~v:t:#} K+L;RE]j|`;Al!̚:/+Ӊ|)UP@Z:v޿A*Yp }EeC9VYXfڌ5d$bXL.X jאn,2Vi||$˓[PRxJ N$;Ž+m95l7N <_hX-ba;O&sTtyhn K3٢NZZ~]vEAKd3x&$L*#S=QC=fxk%֩8A ]LD]rxg_P6\P_7>,,&2C0`R`gsZ6 цam-p^ zHEjv%CC&/>lgehRnV4!z輦rU(8jt>NyTdC 4q0 i8,6] \7 Nf!igzʠ|.aٚg :_лv#g3\4\=rb7jKdFhUB~kC* ,$ EA~܍ϑkM|@`nΦ|wY0 BYӈrDV.!&ߏ˥Hu8aNcB䵷7D*XNl}U6Fٵ-h@SQ7wg\&NGO^(ѪTف-ouP?H܏0읾rE}$Ҽ݇70 f~-;ؖ e)_b}j"aΪ3}|^JD@)*'s,O%  bbh#l9HDRv8?ԘnU5v,٥/*ĝ\ȇTٞkD?䯿QٔԳ2YOi42PNJ R"IznJ\cЇbz G#BG#@jy獷W)@3H pu ZQQ} LJFB5V4/2C.E mP Khs4۱5%F n:FuFN ɑ8_'8lDQwhj .*aHj**1ށ-A~.36FL8.~(6Eс"<ۑ(8G2 L,Sjvgl@+wNL1 jH O3K#v ȗ=73؅?{RXƧ=gQM[[f6VLey*whCU1u?'ά_?[3srM5cEN>iVnHq.xQlzR3dH5 V17x{vτ}f*sy·pl- gԫZ+kU.R$Jךz2mTMUq\w-VAȭ nnk@ RÞxOQ ԡb|Ɛg[n7={sM4:T5 _O06Y* uY7^\`,닇)93$0ݯam֮=;rG{%?h`UL4AL=CF#"ll m[-Eq9K{11-E?<׆H!U_Ÿɷq( | S.Y7cKݘ? c8J0*E/PEv:[瀙eC_|UqL"]]r EQ9x|\_z0s&TMX|}֤O^ |:4:ByզfG#ݠ2'EZ޷ IfsO1D1Y+ D?'55 4kX ~*|Yy$ ZIͩv}eEq)VN5m2o;l2"h!Q[Xq [%Ԋާ%%YMLh6'\(3⊘XBXA̾"@*#}hNd`̟M}狒n>3eA`O5[rGt+)\Q%f@$D73w:j㼆:f2u&ZJ~n!+w.&]@ ~ IKNb·WҮ4K$:Fo7i[D] L'P?"1i"yp)-ɺ~{د@K20b!*b=vqJ&:hTZ7~Mv}w$/U,4mϋ (Or?6i*T,e[&0f*}l}׃Vm=rfJr&JP.|MTWA&2rkC-'V9 L. (sZ՗F^<(|gX>|I L9ژn UˈCRGM}qz7["I\oIʈ #|ki:xa膞x6R|@6伣wЮ35+;>H tpCVw_~QR9xP|lZa4*)Ɔ-M/Tv^ Z[%SӷtJ 1v짔IE!m1贪Q mnŪ^Pp7p@LԠ/- B+D vzf:N%K[#?d׏BQff\ys1Vɏ7H^KIS7ѪmYFS4vw;ţGhRTO:X+hJdHfsf֙ѴǏɾAɂt-p]pk;t+{h{@,xFTM\`:Ǖ2u#ٔ#IXnA#: X-#>{c'BJ dl+C7 VuIfg7%W5=89+=*#Dxj|Wy;%lo<-j(j:6ad{W,ZtWY0"u@|e8~} (_o;_-AU5ܙNPTF+@gFxSuz}_bbM C Z' h߼FPEx0㚰oT&oʹ$ґ5yؐWE0#/iȌᷘ9-*l?&^JO q^BZ]@۸L(q{ys񐃕ʋo`1O=G G8|s_a?8H0LLm9)JAnpfZ)ab>\ S_*uM0}y'fR@e=SPrm87~rEBy,f/ y9DB': ճX4O'c$'Pm%="Xx{;)nxu PqU-ݬuW,aoY)R]åodOR6s_$l/x *MJ\Fl2V&Ozm^0ܹf)SIβLtJ~tԘΝx`Rx]g|ծ*m!<8F̥ L:Lm^Μ\>(~B voX7B dra=;gGIt;(\S3RLc\Aj X:j}4c& Z40>|c.\z(WX,\Dx.7S ,ۛ4# p% GUT4\n3pz=M) A~15FBy/!m۹ qZLGM@ '61xskBȬ+)inώZ*&zvX6,bJ^FY0z+Ҥd1Ȣh[;:/ߎb~oeЛ[ {b48!d6Ƒ{a(U|, P8ɏo3:>)tm8Kۉav4BD҅JK"$Z:ʇ}ޔoN[yk3oTlqz+NJR"'{o,6Du q]UeD@i.GbUڟi|u Զ?nPoUcOș({ }m[}${߳YXUԳfj Q~&/BEon(T=Uf&N]je2ʶ1ʸ'b'3r/qNŤ3J,T8v~i"_MSwl L[\6+RA3C8r4Hre@?ÕBͫM@vKBe* Q"QCZ֒ͅez<60pSbfVn}6 {(L]FA ~NV@$\vR`āeQ/uDք[^{ox\tbi`RNy2ѝīLQ#JWf([ $t|> J|Ӝą{C;u( eWDP߶Y/pj1l(M2t#\1&A5#F 3Ow|V dzTF=f%DhY(RE*νd_gb`}tPwNj,c*tiΜT  %#T[tb.ˏeτu%kPܿb`n 3!7F<Ԭ>F,XߜVnḱKaȂt8b=%ӋB4j=0 Mέ{Rb/畇nl1xu0TCz"m?yÜ={H@+#/EQ?ҭڶ{xYFfbJv ~E[K78BJA*ߥ y߿Y )D\>Pɚ%2'%BOyb4MsjҠ͒Js 8H]QnSR=҈()N Ya=j; U}aRq:@<(Q0j"Ω0" '-|Jߣb{1bT`6# =5sf 5DJc1Ъ|"Ѳ}>b:;0A+;MuI+]oljC-yhD!=D@7_T Q(d>gIȻ^EA_慑 +hVģ"h E.-l|Eim]?G |D2[Aanɾn)v AKuW=U3A6s )ڠ1ξmeHK ۖ+ kDžhgR Efꯞw~W.i/{kIҖR>Y< : NcMsݯf@w8_TS!WK J/#5e,>'U"9 j"0$u :LXHȖB:p~UtJdiN~uQW\n:BSRB d Bf%Pf#4WavW$}rNCquh_Wm 14ڛ`z+pS;v]=صwy¨+ºrnc3Tc,(6͗vu~2O$⃗X )Y/S6+|R6x? J\_̺*18q 5`@ QןBQD|TE} fSɎ c&TWs4B4rz Afa`twOf;&d NwBfݷi|:=ee7# R"Dy:솾_7N;Rj>1(Τ |SjYr\ j%vA;| vxCvb:ט7Zz% *ohp$}Mw-3ofQkcOףQ:H'?j-R}Q^)" fY~|AYe&iK`*T5𛐍QrJq`WJJ7h+/!Ijke<6^U.cuIZ-8z)Gɶ xi'&+?WGLz]yP7Η %yJ19Lכ(PwR0XO7#:{}:dF\hj80%s T';A G%P' )lD]݃_~[Vͫl<Ÿ^ "*2l3A"'GS?% fmc Q7!+4%)3sw+OnQXk nhk Z++VFN/Ib>'n;W_QbZlU/m?np<{ ;Ok4wD` >d߹6Zkg-󿜔Ea+DF}|&|@R~z}-$u%<;VpH, => pFE,"3MS8k5CyVDNC١PvW& _,2Lc{Td^tm]ui'nwQA[Lc|Oǎ|PƵ`:,⧡,~dwZ:oI <ښf?[5" Г#R*`\o 74DBټ ҡBCI#X_J@nJ]EDkdc#_lFXd8&)NT,a4^;F5&;źT-4/QĜe/2 F[HKק|L,@aSt:;{*J7q}6 iӭ8́8 Qʄ$bjW_>%JֳQp':i`Ӓ?@3+5ypGzҨs/E{s ?&<1}ܞ+Q ?wm't7| Q}2:ur71y|?J0M'ݯ+48ZlYj7t }/^f MtJ)0)aB}2Ex=Ǫ@Y'Fs34X1QkEuB8?tIu[5~No^1}X)_Mڝ[!h!nhTJ!Rn K{-l0 #s_Sf^hM6' *􏺬sDpdvdHTXdžfD"Yx*v}:h{k{CZC(9;j%l5tUF& B*`mVM"4'Jا]O?a7>"&YDsJ[{JMg6XKFBxڄN鰾 <0I ל$!\zJ;Moax~ؑXhg޲VԪBaz{ m?e>\>Dnsr7w}8 %Eƽ[(Kg 6^}y)h7^z8F'10ˆ0;1H7pIZvG pW"y#&-dFH@B]%BmD*L2@Omx}~ hJ;#"- >,f8UDb`z/1iL ضx`ڗ9)Mr۽`eR<9n‚ mWoqo'?7=7 ٖznƃ7klbj$S/R Rn*R^ St>b_GQ0Τ[2$ ilo@g&l:.ۈY1C0Vݽ iSPE'IڐxŜjGl(`:e~VWm!1/vu ]( \X _13DSo)8Fag*1@-E9+PR阑;=[ /N9.N@>j?/J!GC4`? PAu y#7r_l"P +DS'\f]U7cW0w‡:XC]y?IH$q~$b{Ibx-pd)Ѭ55%umPvs5 PQtlΣgCC[m+~C<R#teM{B7SR:'x.;z⑀g}+=} 2s4ڛJ3뜟ֈhчMZlGX.( JϷ?d;{Eiٽ$ JK jVW.gOQ?S˘4E5ITt~8rc8g͹R"?Y5Q%TcO9}d5=@"(l|AZj(4bv%HZފ)䎰}JM}.e4mt˫70"&OE"kǿt݂๻ec_M}dw:+@@m*>'OJ\241a-kmCq.L3 ls=KSf⩑>nnjDpTԭdŗt7J;^l _ b rpRbX}Keԝ^k#G |v$`l-*~XNޑT$).POokυОjc zҸR(  gk.>,)5(,eXcO潯sKeH*W%o7Bc9QKXzV| } ew6jI)NߧM~t| !=jh>o>f#'v$P<},=G )\ӡHC=q: [qCZ=lmk3hyC! *3ܶ\̳ZIWSy˺zi6qH%ȭwJAhUV](~GS-U8~05/K?/ AfM[eY'gZq>ȠЏcd"{i$t8Ġ *&S Xsy`0u[Vxj$ؔ<\>bo}OJQgBKsl Dh.6nՓj,LwWg'[MOa4.=Xil BoDӉ# Oм$iAH\l?&Nix +U69= *H}/#ܾ*獅*ꁘ})JDtO윘Ԍ`?uS%Vj lzҝI Kd#b0}U1`)1:QT<~F4IaC*Oːį&++0]2Z} bPgMސ@z2w hxقpF]Ө9I !4*%zhK!KH$5O5Z"*X^[@rtQ5yu[ kj Tu@ Ә7fP GPIEzMҠAa- ){-_ 6&C߽ 8rSO.֏{A%`d1N\a:j\)d@:"Mbod\ O}B%BA#mFGvt {E9z>!pa"hټY郹+ux^,n|U[3&0:iR@iMeXfaÜO?mX%8)yeH86D; <ŏo[Z Uze؈CxZHʘrL1'!G|xbኀ#`~]y8)iw`"?ar/BADϻ[j9`~IwJ[Z C )٥R( 4x3ރ> F򼫧y?.Ì#atJ9VفB Inר7Z U&*'{@"k۩ 7!5T8QWf Յe~V)W03B݋88fh{*% MGq9K-_PfbޞXRG.FB`|&)Nnf}{?lx†`Xƺ%)g@Wi>#d(4T ݪgjûAKq!t(\ݤ*27{+oav2/Q,ꋽA|K*敞[$2({XGҪ O |p}8-QF6*R$+l x)R~"X-<='c9,7 bX(f6u ?*Q+HOLKy90FHAOgns-,ᱽ!Wq}>XG8h |OLA3 ZUdd\A0BRyX#;!EU! EYskh_iv$o$m"H\K, L6$331`cӁ܂GGA 3ʻKP6'Χk{m n{X8Yl .\yt(\bpiP\ B4tnE^H]3ހgae70!lBWj>1%wީx-qCR蠥 ywd"~XUMdn%g.74.gd0jL+LWv>V )3 + 82}|82%aoO>;ZSGL45/tx#etMg/>вi.wqX?MyծpXp(=0RET21\nT2,98#e}0ۆʃc n<}/'`^ `$+Q6(ғE=J6LnDs)Qd~M>^<@ɥYS𿈾!R ^_ n2#/ 畀}&_a֯\uΉbywiDWs[!}v1ӈ3sX*.)1]Rb01yp5 aʃ:P?KM&T,e 1cR1h-*O%A+AS؝ٖ ÃEg亭%.YQt5#0%?C&?mԴIʛiMd4=4n*8=~ p}:Dt8*1jXD^k$2/%;sH7t3[&B#JY6@˰rGtm>=.H9S% B0 L5?믒cě:!-01Rm!VaFfhsFu;@?,u%Nҕ^ $R"SGVuV x9JaK)030A>1Օxt.j_~A W }t%iť,,gy1zf)Z UTOw98!SN9jc`9YT뜙CmQQHE];-詩d6pO =w&0,N,+ӭp.'`KnE Fs,Sj`Bs#[! fnD0 MŘN@9h3Ez-Tst7%ݎ}~&7xBMܩxJ.52,{k=Qpñ?`'6fb@!^+I }F&reļn- QɎV:2֣.$#{Q؞HҍXUB+jS[EՒ$DJ"f菔 zzCTq@xJ J/)1jhL<>E0 vFvV](r%_3.+tZ&4 Q$q6PI 7n;fE%$( Ԃ]+b2Tc1o:lvcX[Л |."Gz̓kKT q]Ƌ }x VNs :n,>B70[p6({`hqsI>eĥ Zi ֑v$DCol8AkW7C6ύj=Y%0f$kh31YdjsE /.g-`j͟ی&p/": )ZJ>/mr`˽>h6L,IJ(ea(&5enaZ]2L}`8~5 9&AΘ\-v:PWI"Nl_^l#H}4J ?!"eGkk}A .mNd)(bt4-xW2,hLU/j}^AX*~gz<ˣqIHI4&( oUa%!I6"=)vаWYKQ#[«c5!`|.Y6ʊʅo k~p0>?! ۣ8r/^:UNrWK6E..` 4 ش]<3ߘ}^u@!= ?/+/4=BLæ.Ux%|  vJ+Nlq$.Qii&on!^ 0qPIR`P a!UxYNE즿qsf.c]8dl?},y_]Ybj!H&tլ@`yx\Wo]Y~Yp` [&62 b9RCl-쒅SXEf $XZ5yr"ylU.Il5zb($y>hV{#1(Φ/ǝy4?o\=4i3@ S*)'u!0W5$8zMW ۯؙ66w3{:EQ/,GHXqC_q5)쓭9Vqp?"_V &#̱ `ȦuKprXG)^9:gmWeNчJH.Lk|C)"B#|O(y7K&04z(=՘Xo; 8 7쩣7=;Pp]~ŢG0yk]!bϼLM)vJCfT)M ;{!+ʍtS*.%mÒ?^b_uOq Tm+wwHK-|F8mt!Go2/A:SqG<J~EK Y\D,.xP&pR^#;{_ѷL7Q+]Lu)F_BjdM`T`d腁ȸ]҇DWDENe=tcb3&d`{HtQMGtPѐd!ћAFNI4Ϙ\mdt AQ~V4rChu@ݞJ\̫ t}(2XVAB fG|hW'w#oYCGQr׀cOv+#Ѻi tLʳyJĮyeiBbќqOqhHۦ63@*58>ho[MMə-y^j^(Êc,ZJֲIo~\;^Z4GsorSXзߓoR3""ӘA]adGdEđ)J>Y8(hm$όgbdX4CM!F'< Xh9rf=MQ}OUrv*̱]DuxأXؤcҡ*EHQTn2%tƬ8žmd#r%Z!f=ED1<9ڝhu7RcԄ ՙ\Fwi 'Fg-9}=K` Cjd~-9QYQ9kk AIZ.%fg);^:a=g*ΛĺP<> IUv-xd^ M?1:u*j*ycWZ0YL9M>Λ{d:+ӎ:14nJ- BKFx ,T/4Z!Yf~U oM>h`S >|ԇMJ{]"CR}B.MoO|dO$gb3qA#B:zȖ@CCm?R~Tf5̷^10l5bȨ:8,=,lS0YE+ V:6 Еs@vHQOrs]VY^ զㆮA݈TP*(q ngԳݷ&e;GHA XA$;o$%Q_EI/&TFv3_HЯoAk<=MuǻT@{3`1I\)u]r"ao.\9<#c =S53MRdT؛z,dC~1`z98В`,Z0z3s^>2 D&hΉo._&q>]yUl7sȓdє|~3L#lp;OAŮf=0 ǁ8AD&LH##!LlŊ2N7S]ftr]eNG}rEa rx:f%w6aI;[]kّHA3YWmuzd(m0]U]q4Z|t Hq.T:lG\ ?s>uͻuiB.nrNHJ~ ػLy[KF y*CY&Z3b,ֲg(7HMIHKRw? S/NU5^_n΃–¾k4U֥<%{3xӄdžgqWyEٻmWv"Mvc_7£Ct گ!g +%#b۱1C?Ҁx2*}#1ƩKVjk 18T?xfS!n>藷H'桍OtX[ΡY#3 dz`42ܶ)}ǔ`SMj6^  Y̜zh!SMA*BٞV3`3Bp- E,}N04`8xf4Tk|O.M]TK Rߜrn#툤% R7D(f< as>+²©e~p8%.]xXM-wP͛>j8ČQN@(E%)A r?"6`g' * zb3xxZKʉ5\ hP&+I/ju%ݪ:E!"2QdJpA c2[-^Ĉps3Lms IC޲҂#ޓ jF#zcy ~~7[y,`8?},"kY[Qn"J4 f?_Q D\bГu9\+l?mg*}Cgeլ$ r4\U xM+ }.ַesy+8!g.ےF[x+DCi`%xd j7,K4m;ȔԕHaLK; 9Oޥxuhy{p4Vˀ0]zçpmh`G6wvX50fWbc-/}#fUkmANr#m5sKK_BDy <SD0Ka.-N!AU0ݥ7iQ4'o$(}]:!& !BQp4&ڕC۴U^!e5+5teqPNqgcn86QU#u.r`Cqtr*8E`tYk|%쿰@t.8=c"Дj $<@=uԉW_+mW@{S "2*2K!N5&wߖnd cQBJk4mhKy*~-?8xve 5+{{%2h%wK#4쨁2oCfC3 Q*.Eusa. hE! 4[F~KY"_|NŽi.)\iNjYkYқSb=Lt@g!})ibR.q~|#{,=9Pp|ƩxyFJf T'wQ([Lq6ڗF^\3#wѮY{n1N'nsmA VZGJMS@YOY_x;ka9}+nk!(Ѓbq>K Q!yz97JY* 6ٖyX9&͌DSr<tnRW)ҕ`#(FMkTW)iDݼq](uuBiT&8WI.n]oS%uZ:o=-n(p, 5 r/y#UR="6hb@~*]-s!ZH# ^;1sH)ȫdPV2X hZқ"*l7B_]7(j2_fa6>:]?H*\=zӇa2=pR^ȶձpb11A콺ɗ캬'-IYvgM_8&E?L9kh5ߋH)(yԊI*0IER=^-DM&%8S~(Cy>8jjY /ۑ:[nZlsЈxJk5rg2I,d0axY+PU3!v4"7ZwVZ$5ʯju z%U4YYc/:71u~0FρީJ7t=Tz!Lڞ3jcG}*h}e'ZO]^'Ŕb*X|􀺹EsZRk:mDuf{rA5rΠc鬊Em=1uI|m{Vo셕)w"pBJ1m \\: 1sM >mQa`ƩU#_~+"35p^,UVTWlz:ɉʓd;+P:~UD"VI޲7 fx$!u\tm&.QaU|SV2^$P*ID]i3b2C9#Yf7Ժ h֖hË{HP ZM_h:]7$0TבeO@?o&tUk.(sj=ց 4N>s L̎Sr8G%#A}NJ0#y%&ߙp.U|HCiVMbvh|,{G2H:F+B^ T,s \Ku4cNСYo"T45]^O?*Pyv,Ԧ4#Ҩ-sR;"§١[WcF 0kOS#FHR)#*q?MDsNlW]dSͶ|KEa c5xUSYoa(j%$/ Oٳ>hgn"ɔ+V59 XO錑fOp 8DJk RJ`^~ƥ)m^@: ,ݞlvC6 ʺ*zh98toPlb]˚*ɣ!vu hcۚvs!cc2*āl t8}A>B3.l^{l >8C.+܏뾽 ? 6{Xc="@W%qTvMǫ61IdG EiK <&S[#DtT?deؿ ޯX0!5rɿ myUY;݆RW8ʥҀ촟oJ9k"8 *0O`*bo zDsm M!5%u*G٩#HP?%.6.6fQ+vp"qQ]i7E#4㜌TwNz; IԒ3$r4'޷Aq9o\JcYfaQ)0V3`d5g A:+ vȺ1ng5P]q?)%6(IM,)iI4>y>JL*CSJHШO,j|]_Qlb.eOTC/ͷŇѸCp343?T@%%Yqi p0 P;c͈;^'/͔!(c}qdvG|ehsxkV_(*pav/y}*6#G0UB9͓2Ѣמ;BjIX9oc<^/τeaq/D" ճj ,og/OЋ 28~T,W ?E Z$Kt'})yϢ,hnbky ܞT0 QOZZ%1 9IS.[ei3iCkd=R29Cf4x>ep⮀v2Ot/i7xBP` I*ABv3̢z܊n+杘v3oJAʩ0Z#GQa8Xw/erd] k诬#ż|aZ_I4jKHBWvY&jk<*ݍ7g"fәuq vuN{ug&)۔џH(XP^_ޙEE.]*qb.кY7DRxMstEllW=6Mu6VڥfZy1=ԭt1inO/ɩs!u4fP/:JD4P=z1Ծ^RheWuD(R}=lrRR^Sh;~MkٗFbqpMk6_¯P pi{Q}6ͩΕxrQׄ?%ƍ^G)zIT2aYǁQcp{0Ey{PsDlC&ћFt u_`KH{JذDm1'oSslx$Чdvheډ$F,x(G@.ķPؽ8+`gLlw6ݾ;m2VgEVfr!v5$ nDAVCAgJhbm:0KwگpxFU"T-I2bz L74y*z]Em?Wu-%mtGrZ_TLa}}`K8gȭ;p7M |§QoLZ;}%첎/K 0-\T]Wٿ&K0s,]J{k#|J hm pD ]?H`IP\8bC61 "rYyk$/87û g g@SV,{ soqaPgC0ַRhiMkbRl+ڡӭ%:Xs5fn8]:B9eK⵻9OWMݡ]8 Nrt&L62j͏yL19E6>Uc VOI IܵyQuNS-6_º8Z?62u{Z E#n)[ ^^`X) ^.,|X5$ FWx'Ǐ4Ҧ8̈́ R4),)2 GvkDX,;\ϕ(0^NwV{-W:<9B4hxG2GӘC Ǽ ĺΤvD}bkk`±MFk`R2Ē3K QV̢{l@tU6;05gp7~_d#PP/nhÕxou>kh>pWQg|8qƱNXM_d'1R֓)vnN|=mv~F-f:`^/ARM5}0oB,^b*ql@@eUɫv*uKNbm`Be("Bڹ$?}{ wlw|.t,0{_ޜ};%N!nGAlv]%{!Ո3sy=k>"`Rr%K?,Lf҉Mh=4ۅWPVP_n%Q叱TdhsI<pWՖ!56 :hEƿ@ _;4 ur~)RaV« 3x̨+w0<$([ !Üi J-[g3aLiTښB,O57E?!FǫQ161uTMHukUd y CBUSUhԡ)wq֨y|jj.̹u{rktSP݉_^dL^o30"ђHuX5`HWb%wIu!*%MMzC!Ґ3SG&lMcs &>V}N[;x/-F8o$@zqwTKRyie,,3Iw6}*ԧ0@"n6B:ӡk}r,眾V4.jUoW RX/"*G~v0ߑE 0,/I;3R¾ʷxuCn_E?;HtA̍jwhla-V=džQ.rpk?G@3 _ɍ*)4>EBKJNdK"-3Ao|^㌙:C5G x,8 Q!8q5TTԖfT3%łt$;[E:,Vǡ̽Y HⱢ~/iV x9L%*%_6Bx PBZkMC3ˠ,g#Arj·_Fqbnq0W6ȧv.^/M ,#~u wK?m6 elHPn-k7<-_6h6[cm1d֟( U'; O=hm on\.L׎hf%0t y[UQ^g=,6Y3t^"r4k1t]j%37tluq L>~ͱ5GB=CI@ ňȽN#:xh;x/4;MJVn_SH?Z"{:ܟs/wl.HlNUn71;@mjC6tp돰&k^v[w /ͧ* b@g,tp a C1Q3E!߯1>Pd[tfÆn9{Z7rAH;U?"&JIQ2VK8. { =dv*OѮZV Pw0f"[Ah/Ϭ\ޒui8ٕǚ{T[p99:OாMz}5q5N yB_&n؉U*w'XO6bjYkL=|,Xɤ[6iXvUnE]CJHnJF`ݐ'AeXYnPA#ZFWu?)40;?g?e\Z-fAfTl Aa Z&ڐ2턐 ѤQ$pV]eᒁp]SS F#hۯg]5}rX.64Pe@+ b aH^,I8a\ ̅?Rr]CnRCM6.GV^l뗇rIW<J\Y6Őq}s΄QƯ0]D0uW{9i3_} *7]V6X0VJ+JN;R:KN^KEuŽŽjr'QrQEAcKYZdAjԒ9\=~\ʥ^Cl{|_ձb!aB^b:/tnJ>O0P!BU[)^Slqb=ީBBT=7nS$m@j*QYwR(26S=m F4><}eT"ǻ| %a8ήްڶ̸^XeߕGoyDoT=XF× > 8Qa#,͕(?k#9b{$20"*ga_zƐ^YQ=cFKCWT"(Ԇ5qsԆ bR1 Gxtkq;ĴvppP p?~_"E5w<"7q^SR\m}6*EAi?=<aK?ІbQJ#bUkɞ7S9rrל6auQpC;BN.,*HV0o\m&l {jO$8S]ƫ-! *]2K6hB`k?ynF҉6)~ou%Kį%T^#&[g@E+w4]he4 }(hJI$GPe<ݧ4sx֦\X0"J<41r) ФQ]NpDVr NY%gŌCHLm[`47Vm MwYJ |Ao)&BAk R i)v@-Ո2]2 /|CHgR׮tdU˟)Q]i;} IeFْ3E('٦/5fjPЯ=:yi z=cy%Y~wpge*r՞Qn|zQԊ`\c?!R aE`S-Cޅv+v'`6zxO“ ;? QF`^I@PP-u13llYnxLcF4M ?;{1اU_~G LV3br ȱW2ls_I{Q]l}do8s˜ ^oC+:ԞJK_nRuf> *5υ x]jivi,HCRg `n]Vw]Ro8|Kfy]og&/8[1ɳp4]wpq?KK@Oc̎w] =Pn|( 5S[s ۘӢ*Ԗ?@lDg|vͰ)^Kt,vҚm\E7ť+Y&.*D#,Or !GBRü˥@Unf-7LglOHШɣ'ypmɫ,_SH?J5l|AEȧTA{,"U$;n_0-N!!7HbaaO& :-so7LpT{ 9+|)&b"g~! kK+tþqN0m}UW@e^RS3#4ܑUVjR-V pvߴ?!I <_㓽NK34yɋHhWw6SrLnZ`U}վ|5eȁU,oBE#&%e-T,ŤB՜e ԠĎG(qU:i>[`ƒlUpA>AXn޽4ϭ_~GO2> :94O K\ԙG@(-GT/ a(Ϭ2yΣIܦ90!f%pc-rS1kG9)-y¦kU23Wh]7;-H@D~Xx.dN,c)Hl=cM+|$<{ؗNhXhVmkMAg3 '7qx9 НޢuĆ֬I{"]WBFZɠ=L,ʕcP!M%B )cί[acɟCoy, i 7l ?diߋ\+:֬,gy%"K|ҿ6V_cIҖy_'q}̙qs~P (u~#"hɤQ{LTLoojBBӠԜBxO}Hk$AaRAC $"75| ]0%<~PxJɫ#JRmF0Cnu2ZU\f;?l0C($#^'6~JE (ڜUQb6 (6bdӁHMƝY!#YG}0p0 _bd?ZOt:\ 'kkt;Hb$q(I ٠`&EK)3,k#ac>ch:g4"Y^Hq<"ix5RNM (VfKV62/ubozd}h`t@.F9R$$4(M(ƞ@cM-DpfئxfVɽL0֦*xDǎ4{ҮMG.|)kf4 `'5o .,vwQt\~Wxc9+%͌{JXn t/€܉*ԾT\euGVZL&[#_fqA6+p.9 "[Ԩik D0ĉ\eN”㦰-0SO9t/E>Ņn=lH$lUѥ^'f9"QFtv.$۽q_zr1+&riRkfYįQSY U--YEʙyzZ3FjjtB(|1-f@>]5i[.:H[#u[u(ͨYӂ><d=s{<ė6(odzo:VE~ST3i0|UN:fa}j^hHqmmz=0 :`75-HG(:YO,5񅥠},T#8ҘSZۊ"%Pϖ̒:  K&ՋM 0ک:r4M4L!dRn`\6_DU 8=էRa-gDNǢ+8\P#O@͇ { Ya΁IVIjPul~xJ./ 2;;χE 4hgK3a\~o,:r]R^NcLh(kF:cRe(L>04{/:`xۊ6I^OWYKе):F(E.J@7gaE^N=F7L}FvTn3@;l|+o:U4r>`ngSZA9xXqJ >yuYO4Tz@2Ȇ>ܹdrt.=5D6Nj-Liš+XLл jNH^lI$8$EwʦYkł;TSfƚiI}U7-+O!vyNBYRE d%{;m KL9]t_>ZaCc?Tez ފ=̃ oog܆!-\M@Vg؂;X:Rد;BH_Mw;#k^FY'w}po+1r[$\b}+|^Hb-b|ţBvibTOr蛈ҤnwGA\n4Pzg ל o2ma`"%, R h**#ч Pq!@_,usJn-哳+̬ܗVc; ~BNݖ(DP c4J޳w.pLËǸG8WfDzu_' Ň֩kDf 7H?1HDc1'{)\4LYQFW7ÜU?:Үo,y}g4YR'Mi-H^E'~$2T#'mk]+5qT6I" CB*xvFw{#،V Զ 0l'HQ\*HڽSo}G}* a1sc2} K(bmȱvFk:DTH[bgrN2.׊sr`59`bPzzN5t(y5Y9yZhsLrX ޘ5,3wCv]ۀX?<ŋֱE0'C]2xVZ\WQ{U/Z9z1f9Sݼ"AU?2"Ey1Ϡ>'R˞6IPQ|KpՓ0q˻y:(1S#9A$Є )t2H_v #+ډ+_MŲQ#5d3^Z-?x sѺA \xGnm:HcK b Wew/+Σw͸QE_)Ĵ@%~H`ʋdSu6NpZsPsP1Jn`B)fpXh\W+1LCzB~<9:-~tgnDQ6Lu:og q_Q)^։'xbsbaO.2Nu,=iz;ϗU:criWslU:]V܋Y05f=/ UJw#09Z_7(29*$=I νE[{ ڏպ(|{ p'f+@N:{OWTa>| _n|4_1+g,I2m)OyQmP<3QqFlMIoJ*)"3"?X/@Q#J3Mp%r8flܠ9qH (%7/"¸ǯޙT2Ί{ֿb  )"bhqbSmI<('F]$d}ꇩ.]p}ℿΊy?m4~GQ5mx\=є?w [X~1f7:Mz;AŁ(n(*sF!41 t XvN} D v=-KĿjKKit4 GV6{">B>8eà"-F1G {9?e`3Dl= t/y*OV&9]!#bLP!= t$3vb~6cOcL`STP$ɀ/.<"`女2'1q-'d|GWgO@}Fu.&)ʉĤBg%-lC*nУP̰t+ųըjm-a=/yyq:Hۘ.!n꘺$5E19y_#rk]3WgfqB)Nݏ9cmeH36@^5z̽٥ 䫡Ĉ;})8œX b%A\Ɂs&'ܢ2P ༿(J<`G59h:taΓ^7w=~1aÐ[Xz-%.1G6Ҳl( ;6baNkĦa@*s0nq~h݆MG푼 ӚrN~4zdrr;7 (2"y˙05~aV'*u\TF~w=a'?˓\ۆ.հ^!SS\ MzkHPV8y͎rYJk(˹sn`V]Ӝ ~w`8 J_xx{4 iB"xf>PMFP!Wzn= O*Si91 ͽb,P)OT{ږ EPti$st+Zg~i =ђ~ohm %Ow@P㓻@tҸ%-"sHJ֕ɁXN}D򞴁 /w 8 P2H{d:iJrS5LU?-ol-ҞJRc'{τW=:qnFT Up+IyNg@kKW/k.I nDdmlTf84$o0 /\#Oy"dԻh=RGl{o9^UW nɹ-(_ =cLn:6Q빺yWmHP/yT|EC`X* o 4Ee"Pvg$=sj+ҫJ5ê"]lL,q "XQf0ōuJ0c ڙ7a$dZל|Np{60y}G'e9JByy,gD<<94~_z|͊e  * 'Mo?A |S֟6g<7Va6NIkhb6$ng+A,cU mTW6G/+8 mxFW~yhԏ)hivq\an"ҕZ=IPj Cઔd{kJK#N=;AUטT>όO1tmT YO8P[3q5V^02))PpVxD:$a^( U]_+7HO&PVޱЪ ʾ\-!Rz潗5aOnߨΧ%#"xl^+3K5w@ Kٸn vs.,W c,v,W_?sOáV=3<?Cicp"c&. WN|x<) >mjb{ zqj-4AAwֵFV6[&tkfZ'TG')٦j,BpRm58 p268S0sP|N!D6^L$ bcF<Lp%k`jC˫:]"Zjݠ2h*l|~J /#C-3#s Ii;JI (hHBxJJ:8=aюP+7(۴# gqW[-|1CI95NzBhkQr%~r9oL#f[Jc~FVbucfS;&fTuNA+:oZyU,BQ4 Z{M濧jƥVt:XIdʭ%_e🾒CGZ)_38CMo9hM.n9`1kR%|67N/" [i=֋;Xz8АC<*8߆ Ewg(#T=3快0|/ڻnwםEjG>ypwa\ٞU =;h&ʲ" #.J0xSVYLN]9+FjbgIPby䬇og28JG;}#`w1ԋS$͡;/ $)HbI5,0<$Ǵ[Ofc#^R:wK"(kn) -?8ِr^mE!AC?4g#g9 %C^hCPɊ`L| 2QhJ0蒜fÏ+ 7}dψ_7 ;-۽ 9l!ozE.e2He'ڝryeߚXt(Ae}Ѱu݉JX A*j 5}; ƒ|;kcW4OdbX~y;ZMkX$v iX֣68۽ۗzZCbܷfp@:`Ħ;~n{[h}4K-Ĺ$| G0NttSJo9zNb\V#K ~C6ىYߒ ]RAERg5)e|Ӿv\xm[ b?҂0Z 4}(Rt+}H;:vRbw}S) œ"'\  uѐsf1-Oyw*DFL\@RD{KtB;yoh&#J~Lb W'pvjDI r\tH@|=>aCH$@O`6)F)y0f?z||^zkzn{<R_)',g䩹]E,%MZ y&M0|)kŚՓlސ:I[=^-^>5Jxݡ̕(86Z Ip|Jr9=.Cd@.%[26ᲇ$uܔ`ڱE^[bY cή-U@>C[@hz`]A)6oo"#uc輭& DPp, y]#ߛZ0P/rXXt6&bT KBM(epN.t/DYk&C%VDcOb\tr:yYD!8NFb0tD%*j2yer(n?}X||N<ɛ#Te?63d9I^n=CiE*PWHji) BŅ_-1%jbǔϟ' Dp0{d3plfw̞?:=zvLQE:n;3)}SU7ɋ`E嶇c<Z\g<XNZh\/CڷG`O|LWVJ9j g ȏ{Mg!Gzf e_  MЗD]PЀ;mwE2O`Q(H=v5Mr]yFj ^ZyҪ)L@HUB-+`rYY#Fd<'<pS11ɩM2jGB) GKl: 7fl=Vޯ]ŝ%ļh^F3`¹؃̳Av[?"T .I'ot*XiZP%-̃$Ⱦ"!ؚ~[H:R=h)Uz9KUUtOІRe( G(s'ãMd[\>I}=`NېtMg{)Ga ՕĺW} ѕƎl ReyW&͖>變&p0=Ľ4k븎^Ɍ k®$.Uɵb U; ܡ%OlYBo~hH ,V4H(2!PloZcE42um)guk_;qod|=g.&#_QKʈ٩~qCKOؾe$gsh9<ڐ$qO9E"/jm^;o9%/%PTI!4U"xEkE2kأɃ(t;d/wL"D^hB7OU]&EJw2k}/ۂPHwh~}b>Jeg;_ٓP!6$ 'Y(B04|Ʋw8֝+I]0fB]λNK0e XLgÀp6vjJR_٣@G[̴ (ٜ^ܟ6y-]^9hMbXsiVc!-iQQ#(!8aP`~CD[ 1`Tn0UGW_DSd%ցjqU~a+* 1b6z NPEY;OTbw;ԯSaq_`YmKXj:Dm2wNXiE|7& {eFM/!z.- +WKѴ.wO!~wJ7J=>> zB R.cMi7u@@ED" }V=1ˈlUOf{poBd^{E(B&ypi+}]oG˘FGUF.u$FqkMHlWl&nޅ, o]򱜚߱Pٲ洃7o/:St(/ PPvd"%3ǫ9E\D2sݱ×t^Yyrfj edx1Ik)h|YAo8%O&;TtωX4d :|vd$0B N9!;l@@4͏ޓ+=+_*=BltXU2am$<#䀘]1\39b[ w@jSa vɰsɐy*GoVN=$Z(XC^k Tݍ\d ^PLT~YՓ=0e8= ]5"c2ݛl'+ٕğ<2悫X]8O0۳j) LK$>5I&1_u$lqts<:{!0JH@Z nrx?? ޾NCԋ"p dPhTsR@dGz B<80Pn[v}Jh%J>*_p& LGs Osu5ං^.C/i:Ot!31ؤ&4#:/h:@x(<6’/Dш +3FaL2Vָ\Ykpq%W/]^<,|67` U~帍52`CU<~*8T jJ8x\+iP0 ^RĿl3j ߲8r q99/hO?F`qKr] `I_vbJJ v) b^Je]zhYtK3޼xJƏۚ˔\aNljŽlTKlݘV6>'=5D~X]AQṶ~ng{ls Ǡ`B'I_Yb/ftZu rVFʦ(D˅ 6-W{ 1"aFҜ-"4v~MZ^{y!p+TsTRso5o3{¬AG %jKr݃Җܵ?lC_9˨kլ~KV'nJ 0 qm|9Vx˿](`Zق hd= >s3qGXlTߧ5:*ISۢHϒB{SR݇CC s0-`--X0/سi"̹$^%#KknVߣ i-$ǖ(L G` !4@$KbqK`Ң\czu V#>֜z<#\_*^= IxZ:Uz9l7jF%> *]!ɨ0 b A<:eU)dÅ5fb~y|&,g5WST. g,:1$:UBjE2$Yy=_x}n2b_]ᄋ^6Sr_v: ]"C1ۘ O0|SsB edz⸸ 8H<JceV}~(ܾ[~vxSpխ<܃SP[)tE:#6u,8"4oQGIJ۩K-e]=,IHYJ4jGjGjY999bGSJ1xAV\kiQ}LNye(AVJC6)hvIi|P=풌N~(t/U?2Ưf汱c{"TNTq' :U~OaՎu>^rb~QSAwU/A`WD na[Iy 1FW0t+LjbW=ڧE "ވm2?V;#V_n΁ڂJvufxO#'$G-!t]jNZfI^e>m{d+엹5+Y|ŧ"imIIKQen/$&(kn,!s{UJtE y)3a<,?\:T L:*G!" %10 @O"Y^oaLFܿ4i}s[t4:Wj߼P8-PTm*A<#Zq1G0=Kh =?m*.^?2:  J7̩kzC8Eǹ++.1J?32Yoy2g,߶"ԃX/ ,EPpET9 cO42,Km@S _AF!&d e"s9vHVMi4Rgz=o}r?遯H9ө/EA~Yς;ntjRqVfCEQ xTJ9q<^Y;mg? Da,g2m%!7dL >Ma_DљҊ#9v襉Z0+ժ"M#:ޅHev]ȠHyN\18FAt j_l[l#N,R[ID/DޠMx|L yaIYfz TƾDOb \q` eԾQA*jϥ!75̋Z fPQ>c7uu3&IjxY>2bx,!1%ޑ] K^c2 Rb7@bTjqCO/%" ^m~[+%w-YK?$S^ae t\hAYRpL6Z%QmO=5LE guujcv)@~&%qGZ.֒k(9VvF q$xfR`gͧ)-h#qR+$4sJypm&XSҢqзU[Nz H) 8_j [0/DZ &H7TZ&3^P[UIA}Uۘo Eo%Ål9R`'{J2cE~̝5U訧|aEa **9+'>P[anG"NB+Dxh}8k'hQOqU Pټ=ouH*7$ /Y؆iV#0bErq+A4o9,u)yx(;؃5[=D 3nDoAݤ]wmRil-gĩ]6*58E%zo-a &*oVXy|`&(9Q QAQu:5Gԥў,r ІRSF[ngGm6c} ֽr |x0?3W@ طњeIJwk舽*jن^:D$zDPn}Ύ|z̕pMF\NJA~8$G&Ugh8oXx@5Di|~ނ 𡞜ǥ8C2Pnj}QKJ8=7lj%H]OY\-b!BfRq#sKJ/̅ghRt+.xHy Ry?/%Z_dkɆw۾Q߼ v_V8rFBl]VWłb]vIHP ^ hו.28G?v!*JEM&ڳ}[zkvՓSLѡ\%z=vVGC{: Lknk Uc6 >" #PzH5ؐF\ܘ(ɳnM;a0M;132)uXO Ÿ ^oJZZ`Fc!]Ӌ(ڍ察Ϋ-?CO5wӘ`sxMØWHq^®79lG8{u{e*3H"?KN0p=eyR,k17]ڸRInwӋץBc Ϯ 'NjS)$$g˽f [PO.]Pf[䏱͸r*睹C#H6/ Gy<֡նJO#.N7ŧ-ҁ{K+&e<j՜lbgL؀lfg{ylg69 R$`R,f] g2 g!/5֟16CPf;Z.B@j6~P1qa9]mE9M*9 1w%Ԫ̘hG*".w0=Em ]RN:/vE}`tbۺ\5MWX;K!Vocfy2W9O:g JUORE" [)*/p`B}+ @XƂ9e@kEn1݂InsAu;_'ުɭ84bL.5MpHp9r ׁ-vu/Țh%NGheĩmNxPmQQ`{hRbltDRĘȗyCQY᭨ 3g٢[`5FGM6|<’ _eh4MJ)N<PF϶Fj/~{4j^:2(tOj(/Ԓ5is5C }L? t"c+Com/e f{V4)`Oܫ1XA{k Z'@ gcfŁG8pTrKt JR'ŕIf-rF`j!bA iz{#^2,\f/UfAMI2KGθT"Xr!ۯe@*Խ0Җِd[8t*Cۻ~ϦJDiIT&$Jx *zwbn *(q5Bz&F$1XnĮWnY8~@: zpJN6_t(*\ |FQA_wY*?ﮈvD$oefz;@_\Ti=b-G<ϫS5B#_HW'ĮB/?ȧszmS8n~Ok@*[R(피΅{ZI)dgY#ӫfqy0yqE!E:kzX>5i9&A+cWХ?0^ X10YӍN]³gfp7mF׬rJE2^b@Gknڿ=X1V*@J}GbN'; "I| pfvUoM-M A,մ٢*i @{ 9yl/nϛv ey," /=uHMGAWoy+cZfAB,gd<,jPݞz@ܽLl&E.0/o;bg4FEl՟e۾BPGA2V 3-,z=X"^pWѝ[!7u[(C%zm8K Iތᷛ-*%=Kd$qWIEb u5.EX(&CsH`~@](MnP8ѣWL.5 Qkѐ^ zLjwS5Sam #!EPmG"#3 n7{$xqѡfyXm4qE>#(6 *P&j1H?~^ K.5.g_wvM܉Σ7ge?c"_A=bEWx-P*.} >î2=>kgqkWmBԗg$6>k3DA3H-;Kʱ8|QRui1-t v#s+tcEWhlf*"ҷ'B/0B!Yed&Aw%7GS?@?\nz``dq{#rXHaF_-jqfzd}Te~QBQj繡#^MK=N<J{Ye|b`TgB5#l@ޱù5ÊѯKԥV̖u {pfmN Agxv*%wG1̢c,?(gwIr[tI`^ `" d). P4$X5 ˄TjE@>aՐS8-*5F`[h6wtmrS&G6%u7C`w`@{~&}}*Z{Ru}Ōy c0rұ.%ur j J*R$p?.Bm*>Z97>Fj~NYW4?KvH%goJ20SdʓV[͙kLK.?A a(7 ʦM`UR azT?퐐pȬCԿ()MPx|+ ]SVԀC6>{K7fWșϒe{ =BZ>^k^S:C> 62]9ejG_.?j0…|]L 46ȨԨŒ؍K20[H ;0an]WsmJ6ZP3b b,4):K!ڝMxjumUTlmiMH퇂?"9 In1 /}_O7K^6u- 0ѯ5\#`ihpk8Џ|N*'܏y!x!PAĒ!WCv%p ifse&]dn̤w;t f>1G{8@UW)MULV|\2QEÊw.1Qb?2v= G#?O,xD< gGfORP'^߾*6X8'F2j>E+¿Z.͘|TT#$g`B!r$Y͵ m$l -NA=Ӄ-h̸, ~%/CztM~PbLJ02M I0<ߪCI|\KEtU7'u lDo6|1ei_ZY/xKW-3(sIS&X㫸w]vP2z.x0ISH`c F@8 rkv$.6N•/*UT_2|t )ϼrV |(1)G7sH PzeW| Lc=d Hwt` ""yɠC?*-nZpPlՕ)pq&;TWSBFBcf;h.͉?޳5; /A"5?Dc e>, B,GDk|Iɹ 1tba-Y^lY\/rh'{))Bp ޳ KD ك*\6 @2 `rx^}K>V#:l@=@rfgKoV<!LWt;s|I{%ǚK}V4ę7j&Ygt= #6} 6tڂduIS4,Oa ߊ4e3P_RRsNm!,0Z!MX!9#$0vi`)G59 uYwטcfcwX KЀHr$T0nfg(XtԶ,O5=jIC7No~ `súN6 +n@ONR2)e7G(8[bg^YMʃDZ,A<:}dfw.-CnYAXXpӒP1I@Ԯ\!{͌ȺH]OW }SD<gcrm|dz蟍+@;R,I[6-TB{u<(7MUu)Bh>(&GQrwh3`^b}>j!"ne)"sҊL, !MGg\ɣSl`o%I{f)BB8N6$IҌX_=̞Hmɰ:",$&B'94.%oIa-ya}Zە"$06.CSbkf 'läJ{t4ׇSuEo!{[Tt4f8^$RBsS5l,+FHa|gCp>wk4Oau څZ2vC ӻ RYEպjъ6Gzq4ɉVҽ !o$Zl֏] 2Z6#0r98~de6kelM?(Vư( -vp"i T2^4u&PԶ+"WB_nqnYԕeݲ Ne׃Z";R3}Ia-xsQJHLehzi'1W&#i&U~X/i*CxJjx}' *lLF,pF!8FM7\/3f#DVrof\g7UE;:&2*w^P`ϸ|MRGf*y]arFIS-B^oMM/㓁\+O7WGũ?Y#m+;J# O+wugԎcgG#`Aah0gK(:bm æL P c`_ܡlebaGpo mJYrYuÜT! 9uF9zՌ?j+2*z~8-|qA'#/\o׽VbMRx/g{bЮz;JS쬍cS`Tލ- @oXs L<0s8u(cĹByw0\l/܅7Z;t~p F:ʍC8<6I*v攞SlֶثZ@ŵȓJ%R/5.rm`a cUq)zkVAq2Xa5(#D b1L*#BXLD ,\G@t9+>[l=ZD?7 U) I fj,3r FjJT+Yvnbt3 N>qD#V4,L\೴["]{U'G? + {BrL;Qos_'e({DHɯ:c "H@ȯ|هb9%c%*/6$Mh;mJWB Dyh&M2޼3rʰJ`P նg2E0nBl%Hz3"[tN+v`c/n e1|m|ʙ&Hi |N~~! $ʽ=n:Eh1sjj9ū:8(H :<&rEĿLg߻vj+s f4Xf?0E#`W 1)n1hg aݚÛ=C]9D=_(iwPy%BúxӁt˳TѓѮ@`9RdTR^x>GmtW~Q ! (uHYU6HbdRtdOZN<k$cH2 M=W <ڀ&<&y<ga%?\Z·2ug ˷9IOͤ]`)#tUCeq;΃#TN=Pn5 *y%=wޝ{;ps۹=bۼt&uoëfM)v2385;"ӄ]9X!b}!D ͫ"W>X!n1%(9Aqcjݭ)v+6m7 hc P*! =U~/n!`"Gr)S_R@#3u6ӗ zQ{cBfs.y:ͦtĺ䐭|7(ס="QJmx=—2/$U HXE=U\ٙjK*g}rXqc@xyfEtKnqU +}\a#v5X\!3ms?:`#hS4gLٴ]h21kTF0o/ F%KIv٣t*RBKukY#əW2rw_&ֺ́sYN? vv~!z+iXS*+i’ yCQQk~oIG{بmHIjIY4J.j#1n~%p3G$*#,.;zNt)%Fr2V&ʧ5n}܌V["G7'XؒXbTZU٭u-<4j4߄" __$DQyKt@I ǧ2a>/KI..pr&3^6OobTFH[mC>Ul8 /'W ;(M5f)ӊINIia.yh24 -p@bIqE iŒHK&bfC[]Qk fma,\DckU hKI{a.q*Z3j"+7bjl!R3\\ @D8ҳ!e* jqvEo W>z\',䗹{gxd\Rb!oi&;8[^|̬nC3 Czd1EOwMO{ eo5)ڶICx:T;R*fHnd/+NW;EwP,5iȷvK wpw:.Q%E AAA)kORf#,Mx@+4Pr0dd'tFB:YVX75 3ѠC ifǡ`{Nuа/gKߨq)pS&(1v' zno쬢Ca@: 6?)<@t}4hz}jQYDxp&` %Ö*8-*;K2sNPXlXxh0P"M| {<^x+;&IF9x|Bq1Z1 !<ܜnՏx!י)لנE#1 ^+ DO7 |ȮwcPD})m_(*AL7bpCwoCè}ă͛f3Tԃ[ojj%3@krĈo(f>-EnY?HnȤ"WyDW@q;=4]fۂ)&i5z1oDELȢ l,]V˹DPC~#"g}~Gm6O%x'fI>b|DbL,uCx(wW[lkn7$ua;ιZS?:Є?)-K]I,饾92{ji6j- \͢I^lH5W;o.s/ĪF̾MPSGm7~E?+{*HN[M.BQ*R&]0OC_ot*B"g0*#W=[*dϋy'2 nƇڣmh8?H 23-~f< Luma-1 #t [#}=!ybلY\o@еS=qȇT \VʹT/'ˇHpUFYoѣfM+~S>CX bJܪaSH8TF#l>Eֽދ<\3 41#Ú GsWv(.),Њ!C߁CJu?F_6Ɵ ڽ8\5'D</|+ož0B=%QdX>*>MR),h:qmɫ:%-n(:ƱQu; |7A׮w/&w D+ p$Lml) SB39ݩ!cٵZG*{ äLdMjC)j K6=dZ^ڻ–,C=j# jLS]Q`.yg*޵a TtCǨQ O2FV1dKhI>ާ ݙMB]` >?3l^>D~gB87/Jҥ] :9H+_j F+\ЫOͪZWg$%@ꡍ<|Dד+\0o1Hb2cCûBWf+DNjnƅZ=B̴;{{̐ym/ʠ6 -og\}?y q7Wj8y d<p|#Kti_Qwm,{6Q12& 9,T C50bV3G/9ף@f䎻1iF1I{gB*T KN>[?LYx\7fcWtD2TC%-HٴwI| 勣4^ }|Վ^%l3]=2'^D>e|zо֦;1pHf@cDÒֵz?kQĆ~A^ rau?]7OW_;#x53?MkgFHQ 1e__x/ePD_٢xNtA%QGg&nKIc4A2cB)oD0Zj{w,:9lCF8_rR^pdOf ,^,YoVԁa~j̔ ? c(cu @t%^7TbI)! #,d;GLlT€xrB=E6zyilKKvbf)¬|`ǎ$d*7HE6 fBMe& &$hZZ2g\!,n?٧gx}`5e6Ztba1\zSj9g|:nr&Q)Cys!Y0\Ip Wr!oèmXpZm4r[n¼jI@^KF5+O]x.{x Z *%X¼K*ciJe&%jĥ;8O1CIDMZyɍ:I@% Ck]:T m9pSٛeGQRYt˂,t\K>;Feā 4S ZzD,⧚9/ %=UuD69܀iW8)YcJWj9u;Fj6sj!/gWxcG)A M4;Zt9{JsL=!#̮%%3MӚa~_TM⍄dghdG<4}Z\g$JI gy ˠS(1~+k7a>-w<ᤅ;z?\~V7{ˠjꖉИ5=ĵm boٮuz5m]vX'*3 =Z'sAhel13<֜ؑ1Qx<AL[>qb"39>42+}Fms>](b(3 =Zf)s{$ѥM9uQkHi8o+U\Z/L:|pO0 ]G}щ T`ϣ9 z{[_$]Z]40kxlqn{D.`ݰ]jC4SX~eV^+8mcF҃P^KNs- sp:W# -7Q$vk\vRWW2Jܟhԛ?zIAJOd}ݍ󨘢"EZ4IStT`U =-;֋~[ZFBZ=ԯ kȟzPȤ!DX/)Hp9BĴ1~ڥaK2SRb⑜5r=?gRt|_Ѐ؞yc+F>k wlf{<\+eQC5QM\f^ :x)<6~:A Tw"I9vTK3H 9CQ[ڔHNF~}&Z$*l6@&Yo!3(ٍ11 @^jJJ[&)VXOOt$ua&1[p&0ZaT݃ۘ]50HM9bqpC>Ȧ+NOMrÖIJOX ɸm#LN-R#N~R[zމ4?LUl EY+y}܀E7OqïI:OA\{|q`,Jx<.ďʊt܄8ZخEW֜Th;}gCAGF0RZç2BxX]+*/( \Yw.btc=4Tk r8dVe_ۀNӾ{iXl*l^ vYi{`PxN@zsB鏩.1DMxm8+\q(^RWS[~3+ YِfA͍_ҽӊz&fHq8(d H06/d07cr{-Xgwe>iqNJH^媜/9$ՒP2+> MDܧ:g 4/lfq NΛISAv=?YúwCMt:/{mC#Hcˤ򊊂D5*#ԙuBP0Ӄ# hL!f+A)'pnѶ/@< iՍ9{Z ')GøUN޴Q$'":)NT8#VMr+ A^W$/vtX5&m. πf|ڎO4 Dh٫|~)'Ӄ;@L֗@>xis3¶x_*'tjcX%G2cθtÅM}\}g~aR4O0ܿi e ysc{xNzE.`5 5frGG'Ƶ rcftFjK2ߔ5jv^IrAIT93o!Jڡh9=5O3T^V 9JnÖ, `|݆O 4BL3Vcy"{7M[>MP $%49= fENco+X l G.בu ͰFĵQ)!w>w `MeTQu*~t&d" nZފzic~c!$ז8NmFv +[$'z%Qd^) IJ|a#޻R] DO ێʢEQFuXONY,X4L%x5Őp{tNuCъ gpԱJ0t[C  Ɏdv6hhr: 6M=g(ȓvl|N̫S0[;r?Y 7J @LF<0[Ɍ׻#'H dv#[Z /؁RiUA3K[[b+(t2+HAR;許G{V~W pu/2f6u`\#ONmwE47J,&в3y775rVQ׉.%2@6 zH Aj~̩o8u9+{X ~˽Qf\9pH'B^:6q)K-L(ŵ Tw~&~"qU鑪!.QWnx 4vIx?p%UcᓇMH6PsV2Ӣ`KH+bOO$}Q9%O'?:`NhDPøhM9֠7b7=ۼ4h-?J <#kyXqBgI_UutZo9~| BZO0Sir|B5P92UƎ.hJ%v]Vv]D;A HYݏ?:dٙ @zL]n#ho~ $-${L#/t) Ns/*93DB /O؝ Bqh'w_i\'[0m<6>ss%W3I{Jkahft#~ M9}no"(0 8@K-{%Ð!^f_2#lj%YLY`&=%p1H)ou-3$gvo2~ʩ3]E慬YOL۠ f'M E䴕 mAsk!M(nkDqK/_YD>NrjPOSL̨Yp`bbrX-V~,_Bqo iD0>aVWGo]@/g;@S(ݨ[Ta7c_7C$ ZܛXw}R$٪]s0YGh|)qv.~À4ƕن"03VyDkj} E}x`<n p+Y9˲y]P<*+[<iF xH#9cGQ,INdc+î-N8 p8\eT7oy3?mؙ8Z醔kaw8*e7Fep Fq,P\}ijլIy0+00pn?*y Ru$#.W7r, cݡ> V`pqzk xڕ EBݍ]0 pw>o[*;B;hMЊ?r87 y6=ƛoR'iS16=I*?{.x&ݳ[`縋t; 7l'@LoU j\K8aS4E\BA2?,i>a'PQ<h7#iJV5#@vnum?}1ﶓ:t᝖wEs @-"]MֺٓgRRXatFȒҧ]}*QS im lNaz_ɀpٛ`P E33/_KOaرiYIip=_kR[GjPSiOxO?߇bJ+ڴa, FK.\S6!9(-/j7N0fYeV_?N0OĖ~-m?7M6`' f tTsWQk 2mC{߶TM-ё:\r~5ېy[Pݑۿ" E_ H DbIEòЅX)kL@VnߪNjuI} YZ>ҐÅt%GFlo|cC=ηh>gf#y: lZ`:iNXJDÎS{?|}H, 銺|p<}}U2u$6V$o؀0||K~lV!LOX6TwWh]~ˆiRA\y,oa45=˥bWM˥^#|%F)`]6A2U% J2h6j,*2&J|Er@:5#ْr= D?-Z<}3rֺ@!0OP_S;z>&!*^̾^3@'Y9K9Rv8jXkȆ{2e6' n~j2B4`]z΂F~$c=WMXQqy 'Mg7nnRn Ti=QJj;S~0͚r ,Px{SC~!}z9mC}d("b82}x8) }C>( @\|<^-1mCF+mrT{Yj=3L p݆SuQ0rbNppۇi },6䯌J\ްuP-/Ym,rHol>7C Cp Loy;[\ KCq5wrC_[^\L]" IWwaV=zhcBEph;wMncT17mڳesÌ}&>򘟫 a6o>$W:\PӫƬlAQ;V}HO>y}Oy~CSǃCf$lV荛E?Y.NCo++LPDv9tF#L0`kw"(DP'XL_"#XU ? uSQ!dSxXo/c-{%F"Og5-bF"VkL%Uz!| jF"W ~sdtf.Ubtxcoџv1د?QqthKS&1BxαLgx#o{P;q7֍ُo!)vYXpKTpYs_ G j};7pC\[ 4.*+Q dey \x[&Ti+&/[%'/y()w5KUK{OjM?& p nȜ+3p@d/*@X@S=5_Y? J|>#=ED )%$,$pvl&;`%b9UJh@q"p=BFGeuHٗձSlPAʼn ~!afP.-6SZP \%DZ%xwchd֮RQ5% :}Ӯ}6>'.'qZiЈ"v=0}I'B,,V_/?S 9&7ʤy[XȜBTO[LAA ;@VJIx,Fg@(B;_[76^\+񑣶܎_k0\>ۆ/ck _)kUioA<33v6Čoyʮr R7bFq297 *Rx]Y]Y'0-`*<}$aN1{jЧbsaȆW87H(Μ( B/.LDzoڟ1P)zk*#OlJ^$\{h$*u| m3'n,MFzyNQ2nߚQڶs0iK>Kfk3MF +\D7A1B_M9EDOl#ryуPXT*RI3эzdh d8 VقljCd׾,Oی)WB'JDn )Nd۷Dwb95LT,U(TAaŤl-*\s*/c`iiYfC:c1U (X8ՔC;NZU4B?}ݽ(Vam:qG+5P)-RW2B[/vqIzUq@ eI';yQ ̻j(;椤5 Gv|=R woR|w҃ͅÓ=̠%bғ u?l-(/I{"B9wupx̂u>._=6:=>TGuz>ejD#W*Rg_O]wΎCJam [i6m4:2 .ť%y=Gz&+nsS ib.wV"G }dO;-::ÃsSo R.mp<=(Jv.+@Dgfމt&Jʋp٤\yS)R-ZՂT疘 kQ%Q]eNG՗&ex^+քLK) WG#|gv IZbx T1qvגy{ VbKc c zJވ=ڝS,Ru^=i=8uсG]:FU}@uֶhh;VHDcR䮓ZWA->Csoc=o_DS?K:6z9+-/iUχҴM}ہTnGyHSU6ȕKC}^.&x[$$FF vhS&&~$w0k>DjbؒO˧pΟqf6 o=/h/21A7B߆W+ :}!A`X}X&[z!cC|] H,d ZCuJ5ɱO$ؘ rxX4 d9ߝ8,ClJk\8W{45u̎&s93GH?* 騟o4G oۃXX،XTR.̈́nQJv^tjԃT9v?W j*;Yо!` X^ x#,ܢj|9֮Tw.$BɱC#bLw77h4QR糭܍@ph?e:۸y)dc_mx)h"Q33ˠsʰCYп>sB\bh}{t3]S⁨et쁏.!1Ze !߈xJf j/*|Gnbq WΏ^V #r}-R.9{E9, ltܧ8nHIm<>ojԩ;BYǒUvlweE nڷ\K_cCTgIs9>[SmeJl$<PQ|xr Ϲ7Ms9ͶUn;BG]8\/cq8 5:= 6d#4vS!IJ`eyYΡGOπm]_߹?g8W( ̪H1@#?劰Uhh=`Pߕ"I&VA(dU Ix1Z2J63rLZw'5BaF'8 ZJ,|g PrLf^BUuFR!ML SVҭBftpԐ`+O"i:he/<>u#C!09RSpdb4M3< +f7e+# t'ɟDy6%!}T{:&KGaMX~/O?QbڮoYJb oÎwWͬ]t7LEQc>eOU.ز(;߁O GUY'݊ƃ:mGR'c&Uj;G;uu 7ʌqt'!B3|g *wy|>~FyecnL}P@~7ͯw~)0hHf @!MAP_Q.M)ʴREѓNM28IkXG>mWga@- |\\f(mJK>ͫxXjb.%醜y k99/ w?wׅۅp(Xo|+?M[?%2pP`hzYC`wLZ7x<:0EmcV{Gl ;T Y'#zlaRax -C"8$W|LdQԹ+xJ0hd2瞝p;prCI)4 J 2Nhغ;շYu %|Ng/OH`h' 6tSX}58*xsixNC*M)0'1(0 垄%gc^<5VQXE/ӽY.<nL^3F}YtJ#[Ƭ;j)yrk^"s$gY<+LWH+ dW)\O7T`Uq(OewHO/*i꿉FVS2 xaYG xcGѨ&Ijvemqt_gL_cH&an- H=n۾$!%TWZ vaB4`<=Jt~*^q9fvccD(ӛUGUf#4^J5&63 #Yl]Off۴ =qN4ػj$uRs?Y܏#f4%/JST&Δm~TZzNdW-aPm܉ ho` hۮxsn*U%h^kŲ{Gg*+UGR L]G@%G]w~>yy~S%cS 9Qp/_X2),0UļC-txCU6-3{&hְ.'N.lc5MW^ c<@.h[H -|~S>lLxS|)W-*_u?*Meg/ W\ktұz'UQ:' b43@Pws[OOܫ5T˦6<{ бkljS:rI2J[X(8p1*wdz6ujx9s_ZG 0By .&F74CBcfD" J%8P$nq6 ]f:;dE{TIpԯqN,KZAN U~X=-EO("`P l9cuoTN {F lkd-5&Q >lTxM0 m9Zv/>(* ¿j/T,XEzS(hZ?Pnf kE~o!`rlWq(H~u:j!N#e(5G(NV@ 0 l.RAMnε@Q;uNCJXQo (`w@Q^C֛ۃw|$ݙh$F,IalE]2w w; Tbl=ս=.ogN$0ߣn锺}u6ܕ~b(4\ ~yc~bq'I '^![#Ó/+օ20S&wt[& @\li7:bRpTqR爨M/\IBb9 ne. ia0L}EQ?kL-`M r,}(1Һ.@SA*1dHűc]KWO3OnB9._`sy9Ғ]W~@pŅAbzFkMd!qתf[)EĸFHзHxιZ4-QMfsQd3\)+S FŨc|nx뱪wN۶MtjIv:/cQͫҳtnD@4לξ8L%^*XFb?x)bsW)~hш W^[A"=5bKSnf'yqo=5jE/A ^9FN-VswNz :r^N!V`wB8p]ׂZ7qzK([}stuPe-6狽(׫k3OiwIР0`t6-j,/߶-Hղ9je-}K"b3wܸ.MsRAE55KyR@/r諮Pk{7N2QI{`ilYӽ,yhD _Dꫵnv pja j쾧LQz}7זu `F")_ō Xn$3gPmMRw%΢]?_&ք65@?P}l+}lmކ9zﰈԡ޹z\_[qTvVv@}e@b=]z>!y-5D<-?I$fF&;MNE<>\楌bOC>g R%K>@ mwi  hkVaAm╪hk?<[mkIZE}8'28Ux6Xb{|ū}uHT4T sMB[~g^4OEC>?xݐQveӖ&"o##1 >K.9&)'H;J1³D\w쟙TKCZnS `oS-@dȣG L=8V_;cZ 4VI0˼'P$-2qLdFF@VNZD4FGHz4]x! {TL0 ) E6jDr%{>ζ+GO! lD"$]VIK v'sd=#I3=nn| M^Yٌp⡶AѤQbٿ,,s[׽3}9 yV7B)"0Fmt[LaP7%xxdᣙ`v1y3A9]oMZ+5k%삍IځlNG DѪ Ît}B'#|OSmgѹ$pZYY')ֿ?}5 =y(Ď~4SHrâ@v.hh)uY~iRۮY ̸@ kcb|x`9M|?+"wD}/VU(QW1o)[w'k85 WN[mIO%hԂNQKA3JJsRhx}Gt]˶%M3q[灉ŌExn](V4wJ -e6?טڍoeGX$"핖F" gNmRnJkʧ5i*wSbRv--ot1c'EeC: !e)._ cH̫/ iE͒V6R4^%1/5!u.Bқ((ܞ &XmVpbHsVKs>(X~gm BHa6z⸏W h'!% eyL[L_9 r#\Θ7)8o>+Ds>ĕ>Uztcn*2bZdCީ*f;ʾ&⮲Y֓dJ@ $GGj 6X[\ KV̈ A8$f;L,kNk;x8L/K{#n 9{k=Έ TQ"-Y\vaƛC ?9^Ę|AZtʌ<4RL79MqȰ|)ǏsND*HMšً,#,\˶=x6;Clt3X3b̈`vD)Aq$y%6C>*fϵG7KKm}ishdoo.y'u)UCyz䎇Q1XkЇ˗G~6}>hE9 teD0+-zv@dUZy

K]0|D ;Hl4E3Ax$=6syhv5u|vpč; 5 'YzRCUBa[n`~shՌn\;mچL* ɮ;$پ,9z> Ԣ)ɹo~_8}hm[j˃?Bޔ J t-Y+mC9V.m>]qdeɚ_L1;zZ be&IRaf IU8F Ҙ^쌬eqV7K-% 477pw$-zp&5QMMɴK~Ŝ#&9>*h^KWh4'NJqV(%c:5 UM_b@ ء%1,KYe~BsR`EAtc3Q2oo>?EQEC/Gw |RF$xeg)GantfMJ^SEP $tY(A׿..0c&;Kte&RjE*ADsj_V@Eh Zr_>:\܍.w@جHqEPmOղl_E?{%\glR`#<1TjFs|~+}"EQ%aCFw6/ Imi@)/d 뮚Yuv[aEE`:4_ȴFmjTgx;K{xDg6*]ݶ'ǘvPAcy EW˰K8yuQ5@\`Y<}]'-P-^ޡJZVIB|(J*߀uOÇ8/?^i}_j$O[#NV"flP8zC+*V=3aapwOX̓S̶Ls,|0œqrٹR=Qqʣu\ 2(G=/d~~Z;#>;B]BjEg::_$^ΦqQDGxjX{L\\MCX^:fQ]QnL  bc7ogJ&`"Vzb潉2X@ *< Xurֻw I'=.2Kr]_Ѝ֨lXM|GX^PN #'c82u?%,p+>vϖ))WtjXlޏA5u-aOK,3;=m^zSЄ>.5&̗>>ה=[%RE{Jxx0=de $h0q{= X$`Y_A[ . [Y ͐(GǏ12A]osiTwCzᲪNMn$%:gҕl Q@]-2N墜E}!__~!^ U]X=4Y::] }a…0}sp0 :n=.)6jR8v u% =vޠ>n 0en ofYId,+TK|#!]`KV?D'8 ߖL4+6@h!n/'Yȫ>5)H΢y(ts&JRT,p>F]ݍwP  ZZ-ޯSJ]^k[|- rw̨cJc`L7샐T7ePH3dpӎs8wOm E'w;u@KoH=X[-F&.S!Mܲkݵnx~ŸqH͡|ܥ"M\gpB+B~@w?€GG5_:mAg{v+ZI.dîٟpUެcG? M^FQf?4şCbUv"+Z_,`X{h$8BS/7`m9`@v2:s~UD&4*h.Ox `X.5vKe%Ո VS=ȃ l5|fxWMB[t3FHvVN vÖ6^ ZSGٓtm -JO|5OU Kq?uF3đLU`zoL<˥Ar?$4Vy@xq'{ޫ'S9q 75pύ찣mPzV#~>4oM&Em" m`/A >:-;z7J]dbY01 9Q .gqꎬܱ">͠JCNIi 5nnQ|;T=n&ПE3=- 8]?QH;M'F)7A:倷M4'o.5$;F\?C obS{nz0*Im"0‰Pt56 Q[Kǁ~@B,: #E $os!EyH|C> `[^ls#۾0Y˙]l?;ۮF&'pX9Q ^C3omizўtBG*w.h܂MUdq :Ou<"dx&e3NJn&a* 1y2SCl5LMݹ֨MʹX.MLbr`7JJ|RvK2қ!%1>ƔGw!~9IQ-USY`r3vܹ z4Ƨ7b  ~j;滒01<,\GGVokw†KW%A8#0s {WP [i٠gg)7P`T]"εUGv`e%%dt;KuJ I O|;I~mwUU P@6d,<TBō 9zM$cA(Q1c0;ms\"gc^ԖI ЄpΕxr5ӢFU7vf9_H ;\ /.y?}sc8(X&3ufPYѿ̉a塀ԝM7]D!ˠ=FDEh}aٰ֬ J%٩"y#[}x}BD6IqOC2q ޾ n6vb%m㖕&~b=7D{=+/8mNl!+ Y'_- P|!bfZ8g?.C rn<3uFFx0c,Y{ܤ;"Dcy ^yr,jS'4emmZC(lw&MLW  \@OЂweWo\K{ӏ%D9}3nnڵ5yR\qHnCV:8 (mU]ݐؙB`c,wH6d2(eyחcVƠ_\+v$;l`#jKe/?ST`ݧطGʥa/MrVPgBAU!Et Od|H1w_ltk-E dCE%65\Ӷl kW{`\S֮ 7H*SUVfzզraet'S;OgbJRR]/v^>h=!klHUKxi[}54נbͯϴBS֨ˡG_#W&krl7MF5,A4= F\°&mIQyWu 2%OjYHvZ4[Q|krie!.߮k9ahlMwAEeS7j3ij[>I^X¶;7Ұz_W {/ ɚk 6[=9ȍ\bUK{]?^ݷR1i\j*$]Y7@rEypa¡OOpstDؤ#P_2z~-2[zI{WK먭k Ψ<@Fݕa[&cIPՊ jS3 sd0^׊c#]|nԇs,'T%gQ 4WT iFv|^H֍vPlF$Qʓ&@?Wt#~3 ݽDc%owU>-{M _5ʋ ~Ols'qFe%P%Z$ݵl Zd1Z$.UVbM[XvHt *^@qaA 2(=f+2sjK?ů~}j|CY@MS^#NjwzDm j!a~X&c GWg 2 rkQYX^wf˜e  4ayik/詾7iҏS֫Xc7-!J+Y獞ȖZCt8brllAlYp:%29k{ y ,۪IA8]k .IZ}ԴfGk$ӿ}F_"xWf_ʗx4G6=а'̈i.sS`5YmV%t U _Ub7P&7, CSRSiY#i/v,TH=ԣw/|u!(Q̌kuϮ!+tWPT_b !Uz,*WKji(њ}/ 40@TdWmϪ6^tˆ_0xy9e` +K+2b%#tF,L0RUY7cJyíhgE ڜܩ(,Ej[&9`Rx` ~kn: ;#XKSX;⟜[%fڱ^E2VdmMr ptA:=#䅸[G) wi@vSLi%F3җV)7ֻAy" :t փt`Y񸘸2X OBvaT]%5A "d%tiՆqhk ϕ5Sw -V}=i]ssMǘv")ړ}ӎx呫c?\Щ1nܙsr+IJVV!ˊfؤU=G\C pF: gnp_JnongbNVط\0\@G }hծ*7>tO<`OriGzwZ8n7zybΏ,y3K_$6 V/@~R&y-0(T8--T{P '{@#~nT9l'jUȳsvӾ/⚽؇Q|րm6F51g9c'ad 䵏jMW-2--ÿ AmP|Vr8^B~,B!ڡ=Q\cT#U[KuRU[KB9OX$c>c3~T}fqqfGqΨqé!WuENVl^ ]y=M^HC1=~)D{c*IxcGmt)n~{8 H@E͋H.F6/ )'JOM3gʈt<(bC@`MXT#auzp8}åηm"p@h\Yn$nHL;ayρ6'E:BeS94x5;zm26 ~~;Ϊ^m":ZNjfRpS-,m$Md/u,Q- ILcN?M~C}LڸDg$,LNKN"i5V^{Ìjb$ƎVt˪a 6>N@%nxFx@>avT%II "]H0|p~$ܥCLA`8d]Hs!_G. YcZ")Q+3a ⓓ =l?j`/ңΦ@Kmq4=+wh93H8y3  Qd!;4]w؅l iǦHJ Ǭ- y~:?(41 Ēc5K1N'lDVƹA;cw"CgE|n݅c&I`,syI l*U͂0I Xfгٌr^W1Dn]eS`i|rO=5&D b~*~t_չ0a-oBڪPHw#% X!.u.㷐kWGĕ#-,2R;Xjۡ22 m0 =濣7N~E(t?%( -Jd5IEjw/c0 "}6*:$0Z>O<%ju|ggy&}kO$5M3:KRH5X_%F&#TQrbQ8q4J?23pQog.LHM^[?ts u n$!]Qij#P+F/oZ_ Z\zӏ塸FD*{|#~ [#=6ӘoV.V:zD~?.d٥QEvFF6nO+Wa۟9rIO@Sf` nW'HUzS*C\mф1+OzN3y]߸حޡwDօ/HADiALTffPݾR1mE6gncU4(j1jMai: k!b}9'7N*P83_9naJ#`(V =9ѭv5i 5>8"{!ucHFA XFv/'aMQKP Ocoֵؔ6wIEr٘<br =QYßdI};oྉ#L$Pjk)*ʉJ=wH@u1zWE(&6iB %JDvQ( ww yaQ#dᗭm=vIɰUXW02EpEm6+8ޙa e|,fz?@h[5/1%Ӗ1U#wkg$nw?Q:-{s:/ܞB~F fmd7EO/qr=ûLinFӶާ-ۮLJ6ٔb 7 lpKrRv&"~{闧խU?ת8cb_=PO\qC -M6^#ģ,|.a!?>56AaCسgFZ=AE>" n@x1<,lI$cq-_~V"fm`f$Z2St}9d9jtM)E+j؍23?r$z qRW4M#lOjg6sJW᫣wѡ%`&/HS &N׾Y)w8S. Fs\v.PW :\l9٩b;A:F7jf<- ~}5!Xԍzϳ/&&OOQvm]n%;W.X`5vWvAяdIWQ \%`Z&#=u/`nKio$LDO+WF}իa?VzoƦLU5xGZ5rC}3G_aMiАc~ -bK$+J-3}u; Ͼ4R=ĸ;R$ L:.ڢcaƯPy7Ϊ C+vv˺\z;JS\OEJhu:Pp 6= xoK3KT*X97li*y]\em{3nߍ,hc25 T9Op"-Pn L34%ijg̀]l |F6;0 QYxp$9Yu?(@D\wqrojyFO ohO<JWSjF"ld]O 8-& &z`sKu p2ma\W8~SW@ |_KQ&rKH꬀e/>ue@ ~^ُU ??,zX. ⼋z8xƀ8Cp8ZϚJՓ#E0P^Ld!m SECde]4z og{C-u+?:4[n>otl]PZ $0]9Qt^  BR*ݔ콖XT(jnpV-+k1\Dִdx5w"{dPT)3^\@X  ?e$PPmja΂\.b .?,)r:^)cL@MӥY'F2`LGtbLp8)ɤy@{(*f:Z~L4A$pB ^W @EaY-1cbj!b<ѮLY45?vOͿ8XL78'R<:/@QL@Nl/)i.#Gͥ Z-sYL$̵ŏ8aGwK&CBk 2"r>Zʻ@:2e:}R"Hj1g*BVOrOMRP3`*7] l0U@da@LllM_}v#>d&Df!̋`f;{yN3G c4 -;х8mukM$ *GQRAN^V3uw`Or<>2G#m1/@B87LCk !8 +lon $ПkG#e 'O|ueKrEQj€e;%Y,6XW]yvt>+ARֽΫus*DU8 U2a-:_YJ;UW,W^-@#6ap^]у/ElBf[Vgb8)-@-:Ȍ>' ̖b15klb h֎K ,$#f{sT:oF\58EVà3019,3cZ\Hִ -ݓ{T8ǟ_q%%R]<ܳyڝASƑSH_=b2o} 3c/:GUi^".-\u2d Zr4aafiԃ,U򢄣_O:E,˲]ë۱Wl tE >RE'"ULlP} VE߫Y|ZEigz?b7_p{sKO{H}=̲5QM6 -ϖeV/y VO Qˉ8ESv=ܣmf!˵=Y>كUBdRAX3^oDIrA\)E"Z|TW.\oGNn<ĹQ- t~YC ZE@dbcU+K;Wߕa?žVIx_Ѐ"rnc=9dN9 nn%Af?o礬9&U3(! gtTp M~R!pɻ;_@6&xg<ЧsGaO QlK:;24p\u{D'z0tstq,]VxkY6Yj{L:j !l{.o'󣩻 ^>C@!Dz loʯ[Po7bj Y5wTJI.xCC%j;VqL/ڔ=K! *sap]q0^NյMMTSȆdW/d^HDi]F73 M'RU 1p{td@̃'G"ɡ9i61xsRMup*MEQ%LbX6Izuuw^ B#,SVH[Ĩ.Gu8ҽ= {m/a2LV*xtOR;u4Φyyi,"ȭ\rt@v>Rpg&. IeL[;&$+"C S9/(<]xг{%-6s"%ybש=yޓ-P\n1BѬec=, (}C"ϑ${ٶhz0<2$#+ޝ F߻1f[$ Qx,Anx |^׹:4%acֻr_XRPѕ(rA dUQe5A%QTBB1$G +aRG;JǢrAB8DNλ7S)QD"n sW3NofQX@xH`;.ҿDy͌>~a-~cg"~.RTQ'Ar`ځD }lָ-_N/8ag8!h}ZQq_%!ڜ!㖿 _]dWiY#fϼ9mWgP8c ^!c>Aׂn7[ )Do~73܀L!!Xp#Dgm͵ 'ct۲4ŏΫ|}:-L!yC&/ CԮuOfkB0bO)^q8UG"Wv9B]J|)[0ES4N\$\a\0s]]E׈Uw$WȂl_ 17b'#%f\14` -*7G$[!Y(Fա#r]d{Lwey<֯dP| NLc`sQD,{ޮUICɔB`x`~6++<ԭ˽`KN"0+D(cv;c!;J_̼[ ;(Y(|ny[Q],c$ cRW:Kƈo]P"p{J]ك^#P{Zcwuɬ>=eW,F 5z^Zm^n]7W^1. [frdN|ўJ՛9H(sĨ&,kYsJE%ʵ`)j^a–$.p$Zªnnb j÷gΣe'RTO_@?C59|2+׎;K@4e}N EE/v:SG~r]6b|~$ӿj] Rf f=RcȬME~[n?CаPo3@JYه>FVCy;8iI &n`/16]B 0MEbnS-^ec#@_\ٟ6bO ~kM k3cqPX@L5yډlo0r=]Ԣ gRqHHs 1bljhTGdvrR`?*> pct[U&G?<@2ǤML%D͗E".ƶwOikןR~0LʂФzPtk,rAmǶ Yp _Ʒ^=!k'X&У oF 2DĉXq.31.՛{_J@IpVχCn4f]} )I4ED`3ќңFoqkV!b{9#զH)IρrbRc :myw;W@%IGpzY9eQFMš6qōcx¿]|JH^ Sf|[HP>@ߡ/x@[+g *=%YttJj=f#d ^dlQ%Ӥa:\)!sb; f?>kE>w0R,[-\&#2mR9beң&CA= $;ҒɊ| >r"! pSTJp E?KJ9OBM -#v۠EYP:Qm&=iȩTzHev!es̑FX4DO7q )k}rUYFw[<QS6*%~Қ,fW**K1r_7?wH7GC y2sۑpG*=Eq)|۟z2TfZ"@.$A'@`ʠCV.`ZOyv,<KGY)+M.y`FEKMW*AQ21õ߳ jm8y\ ["Q 4Tp(ɏ9~pyi޾KuTt.^A*+:z+פqkryFE4ny%A=sg`w=v__:t@ki93P:R$+ViEyG}Mf@"\FI@C"uh|,2D2< q?/nڞ0~shtx; FETJEVSnm6M,2yѼq#~V2FW,GZ.9|TESېpbt!^Tg39S!j蹫͵ m ;U)@_$bXG"8w6C* dz0Q\Ě " iB([ƩŴ鞁nW/;u=Ս{ X20F"sx7TW1koj΀ȵQ\N&0%)).Z`d<*wCx ֫|5 q@|gDxʸM/ ܭYpj+0pv3~aFNGCko8LNċpᐙ xO$#v3Hջ=Jb@>t9ݡ- uɻCrEl:¸sQr%?n`^[ CV8Dͳf3ߞdƵeƑ{ITqb@6zb.u2zH%~}yx6qJYy.ꃣ^)uF9ހ9j&<(<b6@sUʚ^{#5H>gy)yV(z!u.VeƄ;9sҵA2# [b*s3|% "w*{ Ak-H>[[U fm5pb L,ݯQ irU-eݚ@r$ .PzERQ:_ d$L}_  bꥱdRxZ]䊥/|!WQ}Dz";YQ 18˺&Ž>B$d 2{ܨ"` dA_~<آ4j%X};"GX TG7 yy8yݧ5Uql4a, o'h!´| GWc²\0 ^t/-bf \ˉQ!( ,G2J7dI)Y]g9:&܀K!U(v,.G򄢉ԥ!rjD6b3''4}$SPI-^KL? .e it.`Y槑P(",BtA t?R\;<N(~YF ИMk:y>H˥u`޽Ê/ÜGԘ#qc<)tM({2]7(B-*3_}w׿-O{oB-mƱi1?T/$TIS)ꪔyݯ[&E~_f:z{|J+R_{?fis缃IL7ۄ"b_/4d}~0C`@昐/5F?N`x)wMJa/r2|%TVc/ZyCh'bxaby%hn@X$7j:(@g0˃!8V4׊~y3cD,Y-ή:{XAƎ9!1GO0M930 D+2Odn+bWUSdr?{ONхiGp|D=r|Hm =pXzm Jv@Sq':ԘWW,v[4OE[i]N/g1k)/z 1V{gS)N:KO23Fu }Gw6 G5LcÕa 'S-M,d FZQYz~n@󄉈z'3!ޘf WwY\ˏU"cUnytZ;~]O:-qbU,o-J oE'"{W|}ȟ ləŀ Zok0Fr*U(a$aêd}I#<֕O=# \^VJ4^%<.Hi'E|Qɝ=L+բo}XUCHCXXBg}=m\*=zY.Ej rJRQN,,X4J1`Y=%YU$Z?7YY#۴T"8N #!(3\=k8 tMDN?jvZ;s QbCQgp녏̷</i+| U#, +:UmƬ:505Pn_$>i"Jc²-LVƧ?^yzaT;ANb ?;xw2WBA 8児M,ηroe*RcOYV8H*vyBKuq|(V? [xƯz Y/4iYƍ,'G̅ҊWI=@ ړpy~fk#<ɑ[ܽ|7a3 'kN)Q0Uu#N.4`WB0̮'k}M٬'^VnǿPނ]oD ~T~IWk\͛ٽNoUܝaU 3쳾]+1$-S2:&sc_0s=N|Є.͟7L9Zn# 5"[*`@[zyk@\-9ѸR$Ku_wR8O>B6z21i_].?x.6'b[\KK3~xBWl!< y~l&/,Fݥŧ?/:)c>?=rY( ڄTFov]&r@}n%SqS|GrN^&пER 6n~m.S]ғ8!7"*ΞIXc%;a|h`Qݬ._oLKڽxoO껴#@)?l+9 ESl7:zƎVhbY@}VBF* iؿ TZY:HnNI<̘dL.c7ϔcLZ+ҝfB<ڬS mF8 8{j[.lZ>!S{FFev ٣ܰ@L.y*& B#;D |Al9r"w#:`&AX LMrż~ qw8eے`mAvI/*FrNe/q 3ʏp! ;Lk5X|*K 7blndO9/e: e}S3cl,Al""pI7#e=Kj6&/(wݚ {%&6![F*u 3y>/@J |چSE/,P `cnØVM"Ƙژm|Yml)R JnՐ8 -rf60~oU%8ч&EZqMدfZ?TFj{ fQ.%sE ͽpVz&[m0Op(?upq3U>>#fޔ;,=*SKST;"pE <2N73m4+V|Q H $;WF^/>,'vD Sj4EHy9LF6(JC,G<{+?sz~{|H j_hgd|+}G2o;NILcأIYMo+C׾Ǫ0b )C3VU`(,'W^"fC,,T0!rM H:->̼T*.2# Q;k""|U}pA"""^Mϕf u>VbV|s߭\NSU JE4Ԑaw!q؅qۊbOvǚrJ'VޜXD)=ƬLt⤃`SXN1ѰTQ~ޣ<dIblY?5n/~;zs];C+ 6{-J߶^|vB?\|#`wsZeLQ+_ C.- " (ꩉycӰ" bU(`RSr7G{]SU}RυDNT@58)o?9~=ꙢU =YxLME|6l ڲp ȆQv@3TA՞g'ڞRD |@ jr`nzg.2|Щn^g vq& I^}:U1 Df ƽW g]$~)?P>S9 ;y'rW pxH{wY5êDjިݡƼsNZ-'TD81NkWϓM“ WI$ぱF[ا>n/ Kh+뵦{<x{bDmtFGBdP?P .RK@n kyxqٷ=pr1CҼқO xo?yxgO]CABjYkM1H긝 mʯ}l"[_3jb߭ n eAY/5&>y+ޭKMx7x\NIbҟ\'Jˣi78{^ 4Wk8r% Jc~`ӽ#4 6K3qb}(*4aC'v~{)NjFΉĖB ]$i)Pu.` BfW.io[1hK мgG~G%>$0h.Ԩ猋!cg8oiUj;sh=F2N8xYCS*ZPeP?bg-D:uWdN;@e6>˺8Qp'p U&ٟ$i+_^QlA6poa,d7~p0 ~&G[?jC^`> [3qW(嵰fjڜp<8v 0ynv ʑ]<\2Fsҁ+0n4Mc,=z}C*6K(` )f BtgT?k|:d=U#Ȼ)F9NJ1mӕD7` < (>熷Cp>YjIte`E(S 8 zQWI܃^mx`P!^) O> QjFWj_MR?ۄn)s$ᓃ@DWclֲ .QNzzj FQ.μ(LPXoI5OV]\s#lKe8Yv kł%]Ho<5(՛/ @XjzeP`$BHgG#] R[h2wEn 4Z̝>R)^>9GU߾R#!f|6Vq廙>A#DVm*3*lcxPlzYZKö)ǵ:ga3X+An`A=f*[r"̋4L/-rS8eD$i%>vÎ0DR@Sď5$D8 'VS߲(rMbc5!*gi]Ȓo0Fq%VBtw>Amy\~ˡ F,@\)Wp [ʐfsG-:(Dh=A= 6 궖B^!6w _L7RediZl]MÏD+ YJY7{M׏t܄ZP9d@@l#٦2 *m9F/%'{ԝ?xBs( zYrEl^Uukf ?d"e!M`08XxGQ2d 7)vfARgo=6xr1X@68j;}Ƒ&miY?,H)wJ4C' E /O +QVQa٦poLF1koX4(: 5Z'dUpH*}-㛣P=UjfU:PdniQx(_/댺u+0dki&DY0tF4V m/ 'NXi9,Ź'ETd!2i'W@ XxNqCU|&6jxn X}3 ȿ󋉴KKa SLS HD+VϽ\ɦ3Zw:chwpc[x+5 &;~An_F6}JD)Qd04rLv`V&ꍲ䆾s~mlw\雵>72VN& xOx|'hn䫭w]뤧Èe"7kyO82o5 @~?Ε44֛ͥ,ùrƉd՟|5~gD u܀2d>dp_99Fw*>.@'4 6Q}I0L/9'U"E\dƑ̉N%Li[)$Ta]HR /0/BiWqF$ 'EXĎIbd<|QqpE~8L:f24]S*qC-XLkA a"`mmL =x{T(pJP^vĠoC㐣!0~G2]Tֺ6oD͂DHo7dx'H/CO2 ,Mw p ^"! dP$ Ti-`ZerD'R yǮ%]O`DIDoyã="Id/"\[d5?aqTS=oZb]Uٖw*w%8 s9h0<{]4?Q$?.j4!Y gҁh6`.fހZCkSɶi>$g1Z_mvjmۂjҢ~BQ++=8a-+ 1 yU~q<}Z%{б4~Ѭsr p˧G_SP,j79TjJ`'Uwو5mCN)}dzٱ(V"]>03_Hjz{U+wp?q:kR 'I\%z?]ΒǹQ E]%AJeלŨκQ 4&Jl F ƅƏc]JɪQw1AOʆP|E34012R3ʫ7촘>hL8vqqs:n(>ᓧ~&X, ,$ؽRt"H\Mkmӣf*|* pɿx֐WrUq><|qEKkU>W⅝}Q19 f]7-j,wz{Ӎ5\N(Nt(а,p5XVR3 |ڢNT5A|2y6"z췃.Zp d{aQ@)Y" -1C /ⴾCeX NVi@zBL06źų ud35(Rd2cѨF/:-oU۷Wcv)= Ġ @\wKM!{@5 ֩Hj~B[֌?c`03P7ZW oe$$9H,I,AHg]V9:ӽV0~:vO7a-$|ZU;НIǜ+x&3Td&%VErP?$hB%c4*f/mTki8~ߚyZf0񕍖1"k>vdC48.Dd@gòd]Ὲ}'o{pw"*pL"'ڈ顉j#3לlD"l(l;dVoh"؍VSެ*_K2 r1z~%/@QX'xǶ4०2w0rQqs$&c[mW;ipK]k\՚X9V=Hx5#"G>0ER4顓R 64f;v[݊?͞Ers_*@̟,͹M¹]:*.]@pL~DzAwhBSFs":gI#rx `V 쿀/9YFY' ^EЀfUޣ $?n#݊ܞ~u&JoCq;X[:v0K tb3T.ͳ=)(vgiˀ3h^Uhν^ g'%U_q)|.?b֊ 0"W|%0M({⹄GN)%Mۜ 4.mܑ5%#TLRwE/0UʐsjS%^7"k g.n9dIh^=U 폕Gwy2(ՌxJSUI_j=-zd}c;wL7s31]iP}wN`uqn5ΫqR;s9Nȗh w`Ms9osb2 *zb&M=Q$͹]ਦ]NAQ~$!z5"ۇC-#{58F^i< P ]bG baWL;Ӽ-L});Q\^sƐva4> o^̫{c.߄L qlsT1T=LzuDG;w=>WG܅͐)SA_r0,)s|M+nk>z*DkāSPQ-Kx]?tq\ŚL.#e2SkS|t1pnuؑb\P%bӽF)CfE5W۝G9(E~Z z'хSԴt,!  €8bڟڬ0<m2c@T&QCzAVD $ :'I{UwU dVVbD2+IP `0|<|it4zP$X il+^+WkNXk'>WFYr&ͦ֏`䓙'KU+v9*E:ޥcOĤƟ,e ʧxxKψP[1zT@J[ߎObq_4ArFiзxJbppֽ {Y?ϵ|.: YA9:D5hSo x7)19!#7hOz5M/u1υ(Vv$2R:Iր< Ĕ*,pQӪ|H]iB5EJurv<20MIRBqn42r^>5>cw BG/yVp:1/MoM^ Vi@eT Z٭d2ǁ :3!槡)7AdKI>RO ؍_W)V X]jnGS*&u:W`!K(PYP+4Ch d<-Y݉40XD% "Pۀy{gTȘv#ھUJWtYBw~E -B8s~qO$!bn # C!C$"IY+0("\vO_!N޵/%?p iVWe}ȁO*K[J0%mLGΝ17 䘃37/WR9yO׉ϛD.|uIB⧶N_mB#e}0~郥?߀7;JUYVPk\JzWd]*hDƔh]L4[돊Z|OՒAx2{ _Qcno  Rc}}UDYk v~{ DFjc+-s%2Ԭը|\(d :ܠz' !Vvzi0M}H/FI|i'H>D:f!>=Užˆ=VW >6pw޿HiEU4q>MSQroVdָKރe ]К'T!?2NDjp +apd`KmaF4(䐥M;ڒv6#;K_+7C{:U+͋V{\xsc#$wOvzZWDM>ՋE–>kM?o?-|2;Mچ~}؄_Щ~.Ru|]GDtz8Nt**hBD3unP2U(VME+a| `,u#%n(2>$K2АQD81t|Ϡ~$H`ayTzF&!֭&"fN1P7j(==x9Gvxc5 @#񯂂jb$W9naR<ļRa <.!z!Ugi.юŵLW5G7$p+uHs4(- )=հ_j'xea׊\5k̯en!RUK}MCpSdd՚CϿ*hNdR||(}Tkc ͨc>$6SzVgĬ ["CM>a:!]s!x+c_JD\̧43ÿJ& s*CEks+x=f@)nii֯rkkb9f$[k],yx?jnAKzI STUyPs90Yl>f5*iCZh@qG$|rrI'aV3Y2LL?H^sb2"u޷% oI9xYrQ34H]~,8| >}uG $7^zOS'dcdMvehbT/IU;Z©{'wk,XDF[Inu ys _|}+601=K d\ji̬/b4†]Rܗq\ ^Q_FQ*н &ڣr lfDh\5Y YO?d"^FLT]=#{_D$?e6RN^@qx+*3@Zl9^O9j{gΛŋpW`S1' ^XXKKwM#XˡPGHT4')?φYͪF[7s׉ȎM@%'; x:Ahe35m*W>*΍I(34Vl3ܛ̴kӏ~fVu&]iftm)v0i.s~E78Qu\iDB v9zh:"rTRL$]ϵ6 Pػ^o^y߷<8QSMhGD\( :KsE&Mt4pZ,v=&O˽:Nc{p>oPlrUMX>ko(S-}j&/k Zs^ OF/e}g@Em>`MHǩ,Sr-3RfF ϻBfwœe}3Һ s.6rg`&+ʌ%4Ch~ ]vXm+YG-9ύyCԀ \RdD&E.6 KS|]pښEҦmEp"Hn?^ue _r|$c o_(NBR>!3 gYc7{әAZNA@#٭'[}<7^Dq#l!ޫ;;e83_+Đ-v32l#<&RS=P.Li:mU@&$c{K$"19>{z2f+ "? 2XP ΀Ҍ`YNe]/"tٜ> QˡI敖ŀh*^:6G.+ܦZ^D Co'#p\7zEHL<#M:v8PH[)гIgW~W.ZUf.f|\n/ XN%/LBa)ޓbf/P#c+}Z@Uc#׸WfBbn&uPeWH_)?~yq3hЌ]u ñ"8%c֠BUˑ"L`\7T:~7J>R3W =ߚ7U&:#9="kJ+EKG0,gd@pҤ `D]jxP( . Ԃ?mSR x1` Ә[[oIqM _/ؖ{^\Py+lj_QBDoʃ{ѳ|Hjq+w|,%:>0!"@|U|VÞWu(.KT"} ?:2r1l)Ɋt:lDS=&AXͩ@dzd,]EBy`&ՄR5Cۏ!rx;!@1n[7?r{7}Eh0Jh~"1$pJp5~pijCMK-f7H ~5' Ο7/ҔCL^14+j^[$ I#}qg./O6|2Zsy4A)*Z> aC)S~^r'˅S-#U({Co @piyٝkLEnZ1}6(z6Q3?6~E!]*pPf1%4%H{NIP :OA=ei6bDk~QA_>m\\ܷob^VTiy0J*{YEdʺ `3|YH$j5.{vsۨ',@ٍY$Ǫt0NK1 kRTBE7X'P:.|L˿%]aJ?)ռh:ߪ ekqF'XI~o=3I 󘂜Ic)MyKB"[2F;#M4iu.5sҐo}ImibURM3 %Ш0O̪{ayqr$i4X$VZRp 7ẘGXA<v$-U4`LܱR=~igw>\wP>TqVGj,cw6+pTNҳ?NNӍbEZф{;J+= stJt=a$ S;)0Kg ϭd @#|^e$ '!\bAč.V<Yteڬ+s̴wɤʯق!cν026uߙvA O~%BeE~h1Ӿ?Ȥ =:}М6)L)QFdM !%+{Ȕz#l7+ v4׏2N5y#2*rB}RQ'_`#T D[ܓlTķrpj [Y'[لARC7a"~}36D  ܼ?L#DW:;PEp }8'*/̊7XX4p5Rg. uӜok1 R%铺9[~k- |] ag" 3sfkG |)+}3ucadطN {q)8ۤY+|r8j~kdL Zm9,j/ Qh0$2߼]?kɐ/@Q/d#r>&b*N9Z[7ﭶT"ǿ$'ә@{5}0\wvz<ŶPzz|LikFˑ(G=-'V(„KQVv+|Way3H0]BR.D  q*DK:[C瀺o\ [S,KVKWg;}T*jUIw| e[r&fs(ʣc}&+(*Lx;=5VL:D)Z8=l CIֿGno4Wbh{2"p/i_tET_(0g+|:y3KK:]aPb K>2iuOPi}5ߖwIUHYi*뙹ȨP8ĪKC _wm,/%;I>hb55TvwlߝuR8bb71!,d<z2l4=,#-riiYL6f9Hl/Q+ǏC̜'gktln<)qerxIzK⢛#ө F>;E޽JХYlD_]wB1r$:طqy a`Qϑ68m1 Z:fXLZR^ĊPYj#Xu^밍|ɉ񆠨t$ @WЩMOй> ;A?^]\>|I'_h˼p9.Fe8Cq;ߝ7AK$'L2F{J`R܃^,mUgc!'^#Ih;!W1A3b/3~G b2GrޒYa큁d\aP>GG}u.+VḀǃC4fHrϝ?hv&Ԛ_&iu:Z)յtSv T|wώ_gfnUEr~7\y(. ,M>k6 ⹧пiШأ՞ސO`un]l&77O6ض4_7S̈h-VScVWBf;33qHtE10tQ;Uq]_j^f}W׽X`"Tt4s.@ Jp"q\ksK~ ;\ߨWZ˿z\͘@ ]O9qXiY;1e#J ?3=Sx jgx6aU M9U$^悖cѕ4 :8X[ɞ0b֖PHOGW"XZ/%'%vluIp Gv_20ӎ"B CJ>>-HVaW&tECkP|-Ĉ agЈyqg\ȓ*" hw{~*ڨ.oR:|:c Rhk(ah'57DgȘ2 0$u5eNk[O }97%n!-?UBӘ@c HTkg$|^DնgId5#1#bjN^WܶRF0B{]v姽&x!2oi] ^JQ7ÁV7dFt3BZW)-:_UH[.łvnM "Mb<.@nd֮ͽBX6Vm]Lf%ѺG^*!rOSoVr A-4&7.0}M*ūXV.N?8Z@M Q\ku@GzKSHH9L-aDğZlV9J}bXR|nO`@)e=d/>45%sʹ?GF<`Hπ9DK%pOk&Hҗ@}o7Sh[hn+Sީ0LV`¾SpRh!IqAz}ŒQW'kjr\h䰯\QPp]D,Ms[lv}Id7* z7̞>N.~][J|5V֭N{t1mѳYqx[ģqDoIk@[K L.D-ɐ"Fd D_yYC) g9^^( 47ƀWyc!Kݖv0c~aB]Ŋ ["R Akh`Y{.pksB sfRyƽz>-2='{ZiWA #}{6h>"f.m%"-ڭ~yLxȵVP5%7`8`"VjƆq%9L\{xhz}r&< q}9#;oA͢¸NT"Ȫ 'CNi_(^{* ӛrc-m^b꒪bV/Â3>I QW+Bbk#1fo̒ S:~0]= w)lK[#%2=uf&P(j}!SR:HGL Ɲ7ވ""BJJ4i%{qHЩe GZھ X`x8_`zhk$3n,fYFټX&:P;;𷘋;ȓ4U^4^5uA >)X!3Pc̈^w˿N21Rhj*fRnuj2'_t/Θ%(A"SO}.|dNxt4]0dg_g[!s9Ao@*6TGN:v[B Կ{ii${xAU4y)rZ={ߟ|>[RafXD̦B7q2sfDaOn+<b P+knM/J|o-zV;IT-Qvl~(6Z'%-g󮇭>W^eѿ!WW'@7ܘfIUt-Y(afX90{'6"Q+BOUfE(餑$%62E%U+l?CvU ]KŒ&>Uas0aT{D"q' )U+m^h|ۮ0?E֪xT4UasZ( d| r_|SG MvsW{v,sgf Qt1*X)2U?A8χ]eȎ"ĎFdBNho{W*vixljAy8]FonX+^Z0[zjx,@b'vP*^wAOp7m0l2/_P{;S@8W˹eWv+@6V!t U@q{gC 7R"^RmY۠P 7kI!7:Nc8H>F$X4+QO?)XP+E uVD,(Q?ٰyh [B< ~YPY$`aLloaio2ehن)Ƣސ4$ڑ aF [>_\ץǫiaDvza'$'&Q_e( ybxLX>u%Ay/j>\.r0m;;)bW嫱^;=B *h̅X1R͛jvWeeAͯB;oNOO1K +z~ 0Z`=&hj"R7~U@ Es&^bL \bk} x/330NT e-旜K !#9|3 Zt_)u!^:ge2'߅! u;-k .::Gٶ9Ql5 u{w} J=:ZA _K+=4O-%цP6KaG$v[I9=HG{r9W\sCa*/9?y3H6*Fu 3m(d{:OPFXӔԥ=b/KBN=lR#q]BƕO*X(o$ش4%b7`L녜(0jzhHSYIG_̘sԷ['6}FA"J1yOkņ%4$"Vr0mp$e愕No6ќ0X{a TM,z<De9}gnUT $+. }K V9放*|ں·|fVqW}f--MGW> ,]W.dOԌZ;FA04n ?F"Ґ 7յ!*'xS'%(d(wTrD8-`T5 k: y㖢{##򶕢W<_5TOomBphZPOk:[hR7f5~pCn1/4G˔..{#m[bDRvpiJjSSd~$QJ7Z@tG(1X0~uߟY$6d rs5'Mnh5iR@//>0VWQ@P(doZ$, =#?s]7ي&eg֏PbHj EY굦 j)҆{y1Δ'Z%ndUu.UA6thjY~?s{|җk`v4x(taCR?ɗ^Bc΂slks' ӡwh}TjmH1xjeҳ=Ao 1/7Lt "0etkg\߄9QK?ߊRBDF۩J n "Vڪ$VKv!|ZCm)[U^?׮kЃTx`8OƘR'e||Jg r@G%/i:wD;_Ik? ,"q|N[ z|3}lS4҂Kd3팤ɚs~ ڊњeڈ܉V.muv%iVE}XY!V"|O5Xg%|7n R Bi8V<3-TauY9 q TI|~%z `+H5&nu{;"K|\M}{c'O-b&QU <2Βܞl  {:ﰿ '<"~z)L恉FY~~)iFAWX -2rۧ?T$Ŗ\M=p21YcFA ܓތn*{A:y%L.ed|F eKHUg=NOEh?::ʸa`e 1ƺ@fמ(DOqѿ.U[޷?w,V[oMǾ?5>GOW0\*{dGm~Xy]&#zІܱ^OeSڳ 9Ko+JfoN]2G\Nl?w%M0|e%b;5( cª&ߟ=G"vmq?e hB3"P瘂}?Mߍڃ@7vEPz95y"vP LjY?vfevB_6oղBN 4')i3 NX __EfPhKBΙ4gk}?BÅ.f@ Li8#MF&2~P|Asl_юUa Ok.4}sZU'mY>0]P-i4Pӟi \!Sp`.RKS2xk=%|$i2%L5};|' F>~ˏ^'sE%݁ˢ6^}9@LɟwU)Gnh\Wnjm7۞%p BdzC(%؛d5^],BU(]Mrt"ѱZ|E*'_Ǘ@7^ir,^*Qs^6?+tv@[_dk&_1жܐ }T&{ 1"'|gJ!R%8e m^C5k`*lc=ݮRF n`gټ.gC)Q]?iݻ-܀zX͖gB7_m}6F_[IS*4)6)ޑ8NqPmxYݘ{P%北NX j)( .  >4 Xe5n}1SHoo)ZET{%Aq$SNrmIt0mȺէ— OՂ+7?P0Gx6b6Q9%+'"CR zTկmZm_]UEC.+PDZ p5UUt5 )¹S,b$eׂ_2^E_rA6SAQHPu:ꭃR7+Y[} 1kA*q`VC !ǔg=?jb)ǽ-~@2xy$1[}58^ʄnp͜뉪]%u ^[:tCݷ{tcr9kŎʫu52s@rBEBuHEjڞIѡ9՛TlܛbsD \\DҌ-VyFr0죫Zoxޡ$GJyH4Y}%3NG Sc}Yȡ3uz31|,}}{Gb͕sٓ.^އ'8K`w $pWRfN"o(Uw2DAҬx CHB.Ɩ;p~hT,UwH=8֝vT"6W.wW(視i_RDBk!eʬnhAa 9E,970n+ٰ\Fg<,J1'Q2VV Zh@( :$^^,g6 -miqzBJ?Oq;>J?W[43)Gr\wYh`+&6:{#Iz=c(tx&xhvZW&B߿Ri{4G~4XGiU`Xa 0T+)E>#Bp7'?&\BX!c,&#eMJK_'e>4H.kN-݌:|=qiۋl9oߍt/tRۍu  M:ab~K3蘎1J*OB(MG PBc"df>A>= {%b6-ä!a$eQ-ʀyBACJ'N o>p8J4MӲ/%OIq#}ȏzdBucb\lBz1cu, ]LK:.< ' Ftw*QVf̉'+JX b~hF[ AI-Y{!^G[Ѓ Od ϰ-S0đ;qQ</,!c/$| "=)J~;zT.#_3S2=3bx3?Mt/qX)0S@7´\!|g̗L0i(#(ˉ#]MWPEx"<̵.FQQ#^,3J֗6uN0䤅ƾ1lv.Lux#66v6Aw:y0:.!6vr4;;pqԥwZ?B01&Y96gIg-]Pz7Ou;Uho2gC4,\jx<]gy +í#7X:%gqONd݇N}I,aD>YZbm_{VO7v[ n++N8&P0Lj\T9>ѬHowT65e qo,6X'{6'?E+焦ɲ0h?|8vpeT8j!:_߷x}Xy˴T׈f&2/&_ $WŴo/m^ w ;t/!7ˋ\:R:kְ& n ]l'f7Ttqbza ` sTr| y̒[)*Z-ieele[eodZ`'h))p9[d2;̞{j.k-Ԩr5hg hOSqq92.%g+6*̶ G8NkInOn"h9B6.cvrzz *x ɲ}d{$Ǩu`'&1Cl">#憩}+J'(C.j!4QMo5{ya[:I9$iFT7r 3F^h -VqjtXA%D)> 丶"ulaVZ ʳ-rb3-Ĺ \=. vK[1ÝN,;$Y `=xox8;sL8GeIqx'{j{χ?=s/_}0i3|΁IAjƯ' [_Tn{Mр܀e@8o0? ɎGvR E`f+s֟5B} dl 2;4Z8iTsw՛z67ޝ9450(@[ h=hj 58AUh&C,XkW9}qYɭ+Ñvȋ[oguzeQX&qᬍ@ttYwHf+i #"2j|=? |a+*/2(|e/k GZ!\b!}7<4p^MrO!QEzts803jdc\Ju|V! W`QWِg=oT`Fډ!PBɔc)pʁDV M* , ^?D%59D, oI B܋V5F6TAZኃ.d,^k'sf&%*>+9&kfWbCx-$M+`1(]yW^y>#NJZ,{Y=yřʝ!L(Se7&\N|K-=QR^&HZBDN2i/X(3MuL} ۑQa:OIXu]NC!])j4=`;> 2_a͜BrQ1ٹm'ZU&}Z J\3QX ~@j$d^Mp[9} IVFȦ`31Gdt$ٌZ̝nGn8řy>GqǤffy\Y}xno|&MPm6G ǖ=O?97m5|h&ꗍ)?߷ 6}9^lOYۡ< R] suyg@<$Puq[El:x Zj-}?ܩ qNea(חS紝T/xU+8J7dh ql|2]uL?ELpHYbQ&XB[R/ײYpwْ\SYi1ϧiWѼuAb+9IBD;[08qcoZ)٬]} XxӕM.CuQf&_|`Hab_hfz?k)|W).N/i@_:k@"StL ;ܟqq6W,g8$TJPV]+Y\xRM*nȯO :7P tVnU] ZzjaJaPh I\B]w_<r'pݕ51ri[/9v?~ȤD9nRsoYgx*KVW'Dε+7Kw6#0ļ lK@Nvmd8͠U@9>=79G4hO:o!׀P{P"LTV~_%dpw[z2? cF%*Z0%S~o)ʘ$ %^c!#YڃP_ɞVŔ#(`ƴi&7A뾯 <.ef'\ B`+:_.CJ'\=s܆N6;+(ǽװJ m`Ne E4ZDf ʠz1S vQVܥL =ZPZ [owmΏF3"z7оoɭ[)F\qa}  @oB:*3C;1qP( S*XzACYntnʄ 6:"sk>.l[˰~6,3+c0DH?Hj'-e7TX]*Z]":@(4znPpxU = $X{f b6݀Id<n3ΛP+6,cSޡYf@zI3Jh`.\wXE՟v*R"f2>LFW*#KCYE ʗd&HQԾά/#lRUXˤPxbC!{Tg讑<"c+\ 5-iWS~_g-[עܜn^SV9F ^Hrb+[1@m, BpԨFF(3xsyn:o6yE6$IYۿnZڙ*uV,Q ^p`'F(Cң/qw3vU|RgG6apJ&"@cfU+Q@YAD j P Zm(5 unkoRo2W²16TR,-G miG.Պ64qBv%"1$} !9"' Jl3U|0/Dp~q kYEF_ݦHY "\œپo0uӤS*l-3G `h/M-[M̥m7b @ oi'ta| xka›p` <ïc{$9->ಊ֒b?Z=i{a"7)A,Q蓬reN,?3^'qlw˭y$򽮞gU8>l6\v[N Ŋ j-O9Nh0xoA Z3WԦ-_U=gmݿ4 ī3K֒Q֏6*C(y4#Kf !{w}eؿ}]lj2 NgL'҄:ک*+onu6BP+8똫-fsUxNU b/.WG:; X  g"XLjYHT+%_XGC'.Xoiٱ-p50IШ'TU\ӵGq \FY# hWW,_d{jI1}(tY5gU~jrx7%N+]k+bj}?Ϲq@bG5 2sQ=0>֬Z4(ɡ43 lH׸+IfZ}81YvgRyyݔf#)XQ vzL|P ;U: +"XQn^`Ho[v|cT`Lw[à+[$w=\@ v6!TX\póexY NasrwtF90(+0Y:[/\& I<O$E"\,l&`^A):"[hS2p̙Dƞbyx A6$M;L\jvGG'&Է"Me=U'!qSXoD"|%cJ.%g ݚ DJԔLzhy].]*;#:D&;YIbTLiG=8;sM:| wZǗm@DS2eXeq~\ Ir?+ jC rrE.Ʈ?"w/V+O ExұA /r"'"RݺoB~~Wo=,|_dEU(U$=_=ΞI7;ejx#GM9~oB?щ>k|a;JCZ}P5FH-qG\߂vG\$!,i֛!LeLupM8<^5:p&bo<04G;?.*<ǟ+ 72ՂxR/|L;<_TbdmixW`, ~yĒp^n٩T[֞)1Dʹ}= B%K &XG; ݏa2'Qp%BJ]z,kt|&n!YZ\]ˈ342^-7alPK~|`{\.ך%~A}%AUF]v>>V):g?eHKxPhPW=s&cV~.QJD#5iͶuπ?85t׊l ϧ-?f'ؑi34 u/(ÊA*˽sl$f`,^az~6R(b=I)Ε81kĉOMRYs-pw|^Q$&;>a`9 Z"_Lᔺ|]O/IzܞTqj j~HGˬ[ }™5̓P6ϩH< HȒt^˄9tq:abgdAW\h7UrOGBlɛ:&K(.9\TyE~1O3Dn?TyYSGX7lQeGZtn yj%xFɨ)fyU'Y&%'<4 5Ζ36ČO诊qTz-d`TKgj˨@>]E@ďf~+@9åNZ&X;(ox9 ;b^D80/+؈OWa)L%p"2YTJ4~,Aia$QX$2;yR'=,vM:MI%is ̂YW%&s Lj?o!o޿C"NX mANi._M\cjXBU"L[qXzį-Ik5$v36c;%֞ۮ|l,Ê/ݰ1,pJ͚qQ1cbw;w2>'_ ߳q"nwj{D E+O &.`/_NԈUJTϜ)n=Zt:V#؜5SݐU?P5ӟt>MmU(5cqō QE8f N3g0`H%μT˲nW9_'{ gϵx|#7h{ڽR*m1%֋($4rO)ډ;?pB9w;vac֯i _~fOǣ 2h{9"/NU[r 7P] Vt[cYy6*P`} T'y:<ZM6,Cuʸ;Kʘ\UpgdV0!\SV!3:n1 L'%z]ߙh @|trl%e Œqf JaUW1+~0kK ,PUQfT'L U&dʱ) r#:&Yao=5M/Ҳ9c1Gԡ)L6﷼-IOm;w-f4Q1'xJIf屝 Q 6k/*T{9 1CAKLf_T~Xs! L _<;3Ğ҈Ӥlq6Ü\Ԟa` LLSTE\d a''g70vb< {|ܒsЕ~&jJ8FXХ3)WE3^5GvϦ[{XCm%V*vJÈ%NY |+ν$b"duIru_\K_j369y0+@8{R?aa%=+>[}n "ƕ)ʬd%D wMTFGN_-mvtFV-jU/(ˠJ7k끔=;x~2 5’59@PuǑ~̛cgG_!f(j@G-ʆy5ǒm-޾>;wԊv6';6M,3'/ dA-0仧ҐwWcY:.@a03N 6cs)57QѓP1\=e:9<%:۫rE|TuͮQT,uխDx/gEڷd9 &Ȱa:iG 4T 뗋g,++^)8+1[kx8o>(.eV5B)4.]Q҃jbd딫v,=Wc+%JWX<$>a/L5{"D0'Nw;m#>MVoiO%)Ǭ:%S_܅G&t6FH)Ng}3~W{QXTG\ˏ7>-| bܼQl㘳Uy(g(+i/{@YN Gr.~C76aXWCpY~mnB CLXҺdEuZdүnssU!.+򤏔Q3e ډ_u"d$ۈ0RģP` Ld(?SYKMwXED-}:ixkg5Lw5HY(p#;II$'Ǩ{,sF擱i=H]$Ub֏3s@b7F߀ϵristY Pac+".́8mYkpP,F+ÃyGו4\CթfN"c,d1%c+nXDc6Il'pa[G繘L]g{AD, "Ǝ(D"/9 b zq2|5;~S!s-Ij2#v2iZԂXLMV:x0%{*o qQW4?WXz{,Usj%Uspa皪9,[ÿJovKvt寱T'yR 3_)" E2<ǝ,ﲴm; x4wY ^;j$NlnnF^Uwի4Azs\!Dmovr-x>^sN< ŒbgR>C@֬LV҈5_% {ݘF&Ff>+:N̎$jgKSغ#TC`erWf 7 73n*4؈R-,@_--D]{58]wՒ :5ZGpx>k\;+T|;ST,\+"Z< vg=x,VC|Aٯ>q.gjز?]ҙ8ioxx!>=KKP;pDcܦ/S+wP0,oH ?pEwQ{?^)tK=SkhՕ9cw;zw۱IU鹚 TSqq>m;D-3TԚ#K{-(,'Hzxw>D|Oӝvztdj/͒۟fơ`8%?]`x17WRbσZVSX)?:7,g+8oVwmv;Yb[ ח>ӆdls8 KMM{'{^R|IoEzzي\17^Gax6>ïf.|B3(H,N$I4Q!qA5?|j, xѡnpjb4Us_޼ð' Qzu֣b?RJKw,ay=D'yLVS{u~IjhEܺ/w9ftk(n^AbbW.HGd"Er-8bAR3fu~uzp,kO`\N ׶ȗe({:t[2 cٖAdqt,G{Lh4-&P4mu]#}R<ܼ̉od*Q=Q܊M8 "̃v sY'uB@nxhZ+DR[mtL|le9*xRwv'!R 4$CcC]ɓZ*X -׶ v'œm& "0n@R3jl+S*Ͷ׶h:-ZXD%b_{!c}{=_3p"U %za`6#wzPDŜ`%V}tZgIBZj/PˀT59ӈ7KuLT˲n"9Q81":v2n0,ū p!X36RTo/spl~~k|&f&WdFޓgp\гC98ƒ$RAd|M`@6fx Am<(a{Lk `$V"Xx|Fo5OQZ`]ۯw+moZEbs<[& F/gzXG'kW5BʕVDW9OQ@Đ_[;P).<8r2\DCa,q;i I+" |egݲuq~“6SP 1cm@5Wؖ?ȳҐ'^W_0u^ O%'WEbnt~=XMU}q ؉*!ʷ?2+%ޔ5\{UL*cn)OtĂRG8$'R-%:&F߈;~&w?I**OT ΍4P[17rѵy##;Wsی}DkhVs=} lNLT/[>őd;XESk>7 2SmQ'B{>C_jUcvC}Q vPFT0> % gXAɿ\ $}ڍ$rb 'Ifq6rZ%H.M[3Ȧ*NkP[3(pN\9ޛwt!hGmj6nuTe<|~!?Fu֏8DJ쏊+y M1:|#שWB%a6k7 [5|%>4t1 0xG?E(5Z! /!eEF^$blqnSE0$_lmOgbOo)h1Ē2,~gӤ +r rG.muP盀PMn0-igq|KIc,zWHF*/#l"j?d7~+y UQY7|B3oźf.r[~քK|gq=c^oWoiB{rj0t4 V Y[fJ}MԶߜۻ= .pM"R3x3! 4hJuVlOfS*Md/7ЋA]،#[QNϖ K=Z| (i>V#:}P@P[VΘꊿ)Hh|xF/|Ԥ&gZ|LE>Ox=6<rzCC,Q=34ѨOȍ˔P3QX_{Qg T ,ga߈ɉ3Mŋ)¦B.U{X~3bC/ [,u.LOڋ ^`H6ZllSC#`ch\ GtWhsb>D6V&>5uy.yа%2U\S]M@lpZinw$#go::PcP+n*b(e/0,^[ ?cH 1s1g0į WԵ7x,EXګ9Ϥ7 GK+QZ`]_Xғ_:9rGHI eg_ .[$0 #I-{뭸, oD|VjrdΥxݣͶ;)xҴ$#3ƺ0uiՐuF~}DEB^y'zaVMRCآ+*9+Z){z q`lM4#6߷zH4$5e/P#:_ }exI`E F&J O誯]5J| su_ۻX;:vIS\JŽ:~!3ۼȤ?񞱅c&RA~.^.'hW)9f/9pj,ο`OyK_Bg9~Nzrƙ/*df.-mKgWqM `M9QKp0Cn D:|Y%3KijCE:n~dqEsN"Z!X5Pbifs+zJc (#Uvo=kFx-# f9~Z]O(Y/ol\نgdvOW:+Bq"RR}ljm.yz+8J}BƂԢVR<ʻߺ؆_-Br7ָ,W,=`^ρA",OHP8<%Y^ 2SI > a FG>YjTu Kt KLQڮfS:Z/=_AIr1ec@?M@4OQkJ79q랠BuIXڤ cK'X>?M$joZPN"_*%5J5Pr/!Э?M`L]v [yErB]'ʧ|R^p<$* o.gl.3yGoIt[S弣gMI=XEKIL']E mxTNxy /̃i4{TӆLVsES^ dSsFb_Efj5 aC7o_dvhZ-Բѿ8e9B6jv"M:!];e*F i6hE`qbwmgǛ{+27vyc:*߯L?ehN"CQvXMo#o)GӬRZcK#Jxz*9!F"[[mC Mrr\-\;5 `Vvgt :'3g@Z#GIq{=]"MϡRJ.K8N{B-ZC9Ce[N , kNc'&űZ[ IlC)9>A66}#PH6'W-rPVBAJyŊ(Lkh9>^/[XՔFׁ|om249+ SܹH(EƄ\{uzl&%xYPJ=)*Hl,d졧U0K`o#`#󖅰{x/1E'%L\Mowm7ajі=w*Y>9MmAvE8jX phpȄzflIjP`#z& RbыGB}2 ȘZɓUIlkY؁7K gK("[#3񍰼R wdtD,ӠsS̘5F x7eGؕGD&1Bs=O=K%wt!'K'8nn2BĖ9.:q$-!/[FMf+WzlW;Oz449O6AF;n~܀zuk BKsq[яy "Ah?;8oو"lU;sI& w6ZEßDpA0a C5OoC/^M'Wu5Ԙ"{ԫ~ }12M)ʚcm3r?z8kv[4 7ޱ7/=c<$d2 r!  j%}L2J|_4w#N~Gpx2C&?I栃^7EK 3k),iQڶ JurʳCnLb"u`(A(ŹFW&"\ɯLF{ k+6 1 h'Q"P jFt!-R -pejt0{ oo|oy/&m`-b|[9hi}_ҩDzYJJ F.SE4uz$2€EWTJJfGH+Psb i{ ^H,Kkh)j/psW֦fQ n m>Re0" jlɓ)^P ah@b?iXZ y/Ah;iUǓci:!@ :y^3@/c}wQȭ E(Y5leP3K#\:#o -Nڟ >s3A*g '_A`CkSCÀ21RJm(gThRUş ԩX$qTuJ5.`ѷIٱd: 9 =v!Q yu3vqaXV|X0+|*ن7$BCFw2WhjF3'^WI2=\ZʙZsz7v\X:bBqݠ\ܻ7I7e\g*P5(j2/Ex@():%>iѯ}؊? d[gr6s|EC( <¸iõ#AleéM @{Gb6|8h]p{3Tt"Pe)lX`ݜ1_ ; > BL#C&DžzVP/jĤz N.80f_ h#,(Qb铟GV\l˟dE \94y"t5r N= BMD[U!P 7Kt{Їp ²qsaWjIJ$MJ"6}S5yE8>3{>Yrpy&ה7͵oLwװNDweD9䎞b-uCAҗU7';ZX3o85 @ύt+ c Z%8K> m"CPo$tv}VT!|urڷe@x2M`Ry")b#\Ke n^ܕS$=H0ZuGذU^T߱^:y->zCPd[*~%YrWwaW(.0mhI#&7D퉵NLTzE='T;!X6O6J)5Ǡ*Q, )&TC5fSbhWdƫ#!la j'2Ζ[rQ1OorKlCn3)ҼyUĎb5i1(,$3aGz~͐q<2 ^ N D;_:K=ub u]Q%/W g FbqPuF)5>n80̘<~D[W]+ l%BT1&GZkw7CЮQGYs8g7_w96՗6ᕩ*_pcK񾦃'lU/*!/M(I} iV^mo2`7Pr\Uo6v3 L>yng'ksáENpiL{J{\GT2\+FF]Հ;E!F#]!fF1ڑHЭIC,_{5VXmO v dpT<&װhU\8ϨM\kz^.ff;TSN5ܜMP[ ܠ\8lIb̗*w̟J[˦Ly_O >1ıWa1~avg`ҁɏɝ` DDWaW6F8\a_q,u'#bT \?OءAWw@:,|oJJԻWltNRIL.!o 29/<o[f4{IIvY$skoq$ k6YcM79[$?8yk椐f4IyvyY9,z5Klg {kzֲorꍱQCgJm׏fۿA1oK׀%f>qj#Seb[vPomDCW4?څVJ-[)BTx v)y 5Nx}PQƍB?p fm$0?<~-ۡ\|T{f"G~l4hP%LEJa2 $)oa8D+ 9qGP\\p/ڶLĎ<0=Iޫ .3@I@_7QYF6w_J]ڕ({4(hZgGSjlk3vʂXqޅ?S˾ψ` /i4i58q.a湁jpø_Gx7?~绪X )E>zo(RJB|ɠ~ﻅf O.th#g)HT`WD _ZcnBǗA@!6F8\(?{}jMٱcoώ3_y ~}78UafZܸb1͌҅R`}#"GIt/E~ARZYh75%jGIqaqu#I&jAn^7}#DLI|Ė DLPpw{4@a(?< ۡnj\X2)E y=-ٺ0SQ\؆~",@a!OX67hr󥡄/%#F U(;=3.]<xS['GT\3Uт@z 7COѷF^ 0.4~-=%+)ڟJ5q;wKp[?87̠s.z@=f@4] mxJ]Y0ia`˨e ,xhWD/Gr#EMIA@:J'e]}d6}dSvw~T4)!a-^e3J:Uvӑ-K Xt>zo?ʡ™3]pMDH[/\c P]#31}% O(⑙R58w*m8=['e>l_ =3n0IMfC%~ TE.bSL2A;;L(KrڃhަHY4Jpg̊`źsRd)t )yʤq§X*X2Vfe@KMx&_>FꦄNUw(8qc3lJ9I~C,c(2_f#-{gMiᢗ4 Sk"TIrh?{al"Q}sɬ[RD1ܒHl"W7n NuVg&=Y*U< s\F4.&d@m`̎P+Z)x3f:H:<<)GP&ZUN-$_o")oЬ!:@:$텸 A 3Ō/sƏYQzvP"Sn0EOvP6 {Nb{>@.z}azz>pϴW参c3خ-xϦ/-m4!q:Q?feWu5lBA T$$03_NTи4&<okʌxKO vg:i"D1ʏ-g tl gQ/s1"8cgLȔZ ;Is6dqkuTҹ ~mmqf߼ʿ !K!ʜÍy*kyYH$wrbT` 6Ax? lmP*JZƓ AQqa t}l H%yt6,Z-VOϛ]K&.sq2-?f%n6Nx5)/?Ϗ_gL58%Ev ԁ_ˢg>_WYReyg#ۮ5I겦:2)ʤdg:J\M֠/cpd`H+4Ә#|!IVރc02m+doO-}c`E4ɦr3uq_\yaR+{>u+?ΰG2P8$kHŰԱ襘x]Nط2͕PZ+`$DH}; 0c:}=1 ;[ 6b6CSse"Ե騋k2~`qRbس6 &>s +V9b2Fbv P_, t3 c}&NͦQ"ГƭzW}9~`.Vw=||ٟD\팟a\$ 7l!cPr?&y\0!Rmo1=miC ;E&c$NBVE]>&Qi)`o}۫HS2VnGyc!"B(CwSCz}hbF6nN8*^K/%0^ލIdphwe^cPg3˃mއZݮ\*N9°8-MNyj%i_co%t;uxY);Wz\X:^3fׯjd]E g9>$`m kݲE0.-םr-Hr[e$ * Gz0bNzU]cUǵG4!ZME1i=QxjK5@DYzs %eYier%{-X:h,˸.$daOZp+*r'X`+e:䪍Hۑuқ3td|,+fKM,r`Y #E,}Pg0iYZB 2;Y|Dޒȝfy?qsrEp݋p6+(IZ8KƮD%RGZ*9w߭؈> nX۬S@VH'wkE=`=Np9KInLgklxrar8 TO. י /1=,>YM$T>ҎSɮpQ%`v.mmڹ]`"S,"L!儠"1lq vܥ,rBVf\dsJخ)hE^~v5dIRSs= q6Q8B$16\'ݩUD,\R`,r (HȵJT/ˤ/^a`TB.sަP:u;san4+x0Ƴ)z9$=)#%Of i%qYp Ri8p-=n;=mdOx|X&{IZhn_ AS8v'Q5Yo1L\I(܄ɘ !46zGulg1l\ׯ01,Z*w]Øܰxf66 Kљ (݁̿q:3%J?>ӁYz  4L>rм q 7l`O憛} ԤmTHGRoD7Ԧ՘PZ'e{Cu|sMrwQq|{F9 _$a\n>:36K`5dؼCAh#6[DCi-i^xmiCyY7UdX>7iԹ-GbUa')w ͖ȣ|Pp2KbH~;}V<11n/>Eu14j^_ ,j러V;S"&vv ۼG]X,qA慥L2Ɨ(\Z" U]#.:%Y -Cej8uE;Vi: N`?cEKKδ;s!]J9yM&W6ur.M,$$~O/Tsõ^MoZ?99oOw{#y\BoYQRIzrDV%em _RJ*o6 ؗ=)@G9̇,1w'eCh&#]%UV;uXṋ9--u\O^qmYJq!kRLg(׵!:0_qxE_i] Z]š#"PuNpZ%'ZoW϶jX]c5MpdeVpJ``Kg>wմ 4& 7 R]y(-!8|yɖ>IX1>&^ G >x{e]U'V Z¥qoja D mţ];Rp\Cw2#'CMf>[$j@ADkE#;srYf't9>n-hXb ,7p!M!`#,5I!4IbϰDQYHJ!,+-&6 ]ߣr(8bWB\L,}s0k:A1:sm6ZKIdRkt*I')R?G=Tooq [I\!6R122f?< ՟gkYM?{ͮCV2_/`mN~\KZNƪ'7FxTn"!lߞh>#󞋸rS1Y3&,Q}.L^ |wEy\HQ(ő B7^hvs&Ɨ(@3B4حvM8d=z>U†Α owVh';(v4i. ecSQ,լ^if_x?|&ʵ8 'L%#.@<j/CEn:m31vP| ?SmKfW.myVWgNWJ*rgeG ӹ%Uu"ZF0l]KoXթWIʻĐ#/b5*#!@5&c{")@"L#Mwr yH=6qM>/f} I:qApSenIB@wT;o-hOE57&ΪV#[)5l+(D(mQp2@M ѸE>HN>J\hҞگ4H3UQ ˧#d''lעO(87-O@El+rϕ{ޫЍ)5n0QOpe]]3*~\|AɭxIm!A^e=dlTVީ YΉc3"J*jc '.%b rU_UQ2{&+#rÆAxL @*^{M D/ u;d9p7BAhuʼt7z+_ U~# 6*#頿ƾ8ili)}~kjxcts_Y<-V~/"s6Nfj"v0F(jc⡏eꔙOBGdgi25bV*lTGQ- Ly 02 u]ugkKW(!HУƇ;5?kf+qf\-myk 6MmH۪epI3{l= H_*p$7AfQ)?dNHe㑙-WEyo)gʞݵɉ6to Y4Α? 'ޛC;\9yKjVГ(Դ-g~MJJgV$'jQştDZW Jd9x?A tnO+J%+$TINf_K*5t :@-GF.*quQbƌf&<`v/Sx8N+ԧjsC}Kŏ2SQ'GB[FεvT/!X٥_鲮^U} WcYK(-`Tjz0n!'ꤿL#7ϰyT()cDN 鋍\{1 U>Z(_nhB|G#h; @3=B^mI>ɬߊA} Q54LQ`۩ _Ȥ!Nz-S8f\V\[5-L~yr303yX$'lCC/ 띾NA9u"wz)H0M=[ث k+ gu4]o6CkVi1^1# i-/L?"'`SL&RS@U4& ~ʼnI/ا36s6WQ`!qWV^<;ehNh`+U:w8P:g5 e)y6nƶ*gmӁ/i=$t鹐k3ڑK{F7XϹZ75e!zM(*[XZ:$6i[B3+TԢ3vNV~8/ P~0>DA3[,R*R5chqMLƓlOro%ȇOySQZUfJ]dEW. )|YClOvI)@R՘:o8H%ZM#zz( C/$  hJpG?cb}d0mZVR(H޳ə|+w{[Gz Vk D}z'Uu:iih e1@Ȗ6y7uʠ-a "QS鯥Zו'=<(`- x&bmG'fSa?i+]X8h71?+F\F8 cĎZgG5~Y+[Ou&73.~FJGl`6<r~KEO^O>!t2.IKyu#Vy`V$(rŻS&?0=1ƅ |׾M&5 ^tϢesŠS] *uaHk{([U{wEvIܭg@{/*v d 2NpltnD O`\[ {_s2/z鵕`.NZpA;Eˌ3_&Gs^m!^[þ/ǁ Y/CbdPb>9J>v =cnTbu(vcHؓ<~VH;i{Tnd^UG*`ڤqC <2iRU[ž+S_lO&2`/}eXz$k ?dE\ m-!03Nh~]Ecb: h#᝴WoGw֕׫o9+OJ%CkU. SWģUb/_H_j@n+7˺[|Rkv\eVI计 Κ۱ǎh'G{$4ԅpPp\آF.e,c^bK]"Y91Sh 6ޣ85e3d(r!Իee}%H$XS3ItƕZ Kؚ N5;Ї}έN{jO2VjmwlT]auFe\KkE׎my#_;V"A䒪TBZD猬C r{?̹#ŋ{bTtB;?+ǁA >GqR<+z37`P_{bqAך9A!㚟DCr WVO Z?p 7;nSZ?j*mG >ldVw(,Das ښY50`3E^˩)1$y?"5r2kCQ!;Mi}f0z p x* q,ܣ_L%{ Э;Qv/ "5Di#j{e-xxr9L,5i{MRP٫SN1A=39ݾ '.wLQ̢WKv\`\dR A*ݔD@= &9Xapy SQX;-h"~a&K9vPcz|^ShGY;?9L2ƺa05YSV9uIGӖDPs~^QQ#I!k"*.cXWELկcJ=᭒lrN@"J߲lHt03E!smn*5ד( RQe7UNC c'pm²'[ )E0\RP0]Wr>{r|}⢡l웥]jd:]ɗ\&8XGhcT%7QNhjgëOׁ*zf*c\~&dʛfWL hᄐk%Ї7l_c` ;{X]gYD+PT>h˽J}`Y1 ߇!gPZUs g>Npm.يsBʺ~1#=C^eH| m/Q$GL5&:g9\Kf>JU=cSPAq#$/ha1vi1N DY'k36$+@W4&I>R;GPӓҕѵVVV%b'zP^BfR K:>NpG%-,}~TsS6u*&y1:&(݇sc86$@YwW*d84aJtISv7 gsB|;+`RSjZ$.7ˣO1HaV)Zp{.?Ar^𥞐gv)eZw[` x| {Xu%a(F ($U3BE4žbWgW$iBٰE$0 &YhѳG:қOh.9,bA֪75LibBև}gNЈuO~9)C]K)H7]= ^!DQϠ%24O"BRwʸr ]VJr zPuDaku?81 Ȕ%nw=[?L c3u{7n*a /a~xD5GRoͧ4Fe*FC mDӗ8/O4{F鞆ݧJC.Th[fs O6ߙ'2/nNRlvvWiдpRMЦew$O2ІkkӯRX_2[&Atf_]恳>])vބ#qF 㢲y:* u2Zb"vx<[ { zŨ S*{P1 Ŗ)S&Р }0C'OmL,ЦCF"h!{N'zydmKG3ko)w3LpE@o:>,GU*oI18Leu0d̳* N!((t1QaҎ' IlU8áj,Ω}?{iɖ52EժŮVa )i2pU&QSY9E0FY FETe=ڶ+gLyK0⑮rq9׎!d8$PA=UPʪ 5+T_- 3+p<ߒlݚ5Ⱥm_hŒb6Q<&W2_~/Oh~/pO R>¨]\0$bYGZ_ji@cN# ׵ncS!?h%>Ok^_xWL"PH:a 4h vوؖ?uaXxpO #ZmzAM6R.Ma*QqV4|Y<;l i &ٜ65>pU:Ɵ2\.y⾐tDeG#ٖl%Y@J|WD);,~fCˮ"qdOHg/B« ?< 1YV{JS7Y +0l#U#arjE\gE'cyT $lq x"#L! (WԵgT/SipL6{K{L۬UDEs ԤVhS^ͦ&K!?11p߁[6Yr c҄1)KOgZ}o HF9= XyGoQpV6?#gsʼn C~:ĖW!֥[}1BB? 2k@2X@˗q@/ǵZUbcO Ձ\#GnA_(  ?' =v`1*o":2% I(G'aT wEzw8d]T۴*XV,F}lt ?#&&=0:x2c>.@F*@a\Sy_0*m#& fdahsRS-q R«FQ ~70vgʑ{ЧuYB__YіaӨR3⾼'yAgZ#%|k8|gxbX> `•CQ@ m`M$[{.YR-BD;U(  qZu.+fő8{ N ;6};H(R2W_9ߏ6wx PfP4@ f<^sS`[Cn2M1{}p<庝,(< @%zc"p#º :g/aN^η֣!Bf`T!^ῲ1l6HRDv^Qpie[r?K`@uKuHNJUra=2z@n֋Tjb@=M,[͌O<@9 Gd6KaHTX8dR}&tV~[]*x2PҜX6*.#~0OԺN1m#sRZL -axVhy_:şTBi:ݎa}P"e87!_{щ"Ѵ7D‚q#XN} y5غ~, @mmgҼc r{k5}ҞfbxdƤJ *`qz(pd`HTwR;E :~ֵ~҅ oE9sHkI뱝5ظ{Ͱa5w?JZkS9h)mF/BX$ G3KِH-2?G+/ g7$bcDسAԨX C36bo(ntsG E_Ogdg$#Xg|D-cKo34FVP J;&=Gē5[|F\4'|TZGL7ðL7]/~w|=dFWcwj9ql g*U2Ktһ)@.B׾5!a}a!TߏJL| cMRKN)v]rn_bpWiw~/݈2=tD,cOiU#vuu9t uR9[S]|x rXf(j#\ d06%b0;)gϪg;RJQ"b*]aػ,|-O;/(gBiZ]UwvI7#B+:>NH&c*8Sz}f{tԺ[LEkƮ0AKi16 KZ9f؍!>5hB8'Z^bh{ATYZ״sc803}s;a=[<1M텍+g#O_qV!-^at~X2I0oC&bqɿyo3fSZ*jWbO~VΏ, AVT mIodvX_⏨.!WDQ{h]$ :G֎MSʯ>jh5L6H/ Xg6V(I%pmE(#e4j=Ƅ$w؀ s.@RNyh+pk ,O^km<,&uYp c i対v ;'͙2{r1`fAՇ`?os^Yn+Tq=r+l \XMx.J7OHqjU#XnHtpƸdnu@ Qه]/)d1ʰ΃tXk8Oǵ]@щVPYzhy {f2~0ՂmB fWh6p(͟KgePyC -BWڙ2crCDȄݫxWF ݑV6e z:M5nEף )rU"9ɩ,_׮zCXB :2}Dj+Wcqxd:b$8fcߓ>J\Oí^龰cM)h`0{i|W}1LtApO][%{Kr0O9]~g2o8e"W0{h<{e!o8d/:%=GJgx)[Л5N |*?m&V Q]X2i(ͳ'ԆzQok_,`v#:v Wܭ't_?2i҉#J=:sڸsnD6H|lNRUTa}%6zz(q"|L=HDv"0Rye_a@܊mYKY hsϺZH X:I'TwJ(rG[m/L.[d/L&X $cѿŵny?| m>%QmTٓC bђ3N4Wú!GObptVp|Jz,+5)u&WŏU7lV-Y̗!XkJ}zK#̶.jHqކX5j Vs]ߗVHPLygB0ѯ=)j l.!mm<\RMt$P xcvLw~''uK}5xw=]XUoSKEa)'-wM0?'M=Քc(ۃU.=dv^=Uh:ƙe.%v!mVAlAWҪ|tdj;crI̞O_gq:(1<ƥD9vd* )} 4rR̗~d7>L#EiI뢤<*A^6-r' qTm(K_dn%!<|; P9|M ZҫT"yvvIyCңX|B4@!XrUEpBlL=_W>F6XY#\}]hJD_7@3APC<IK(m=0_l1`1:,U@B?Z2b@23`敝z?]ۗ aX~N/O,F`uAE\!h`{p`R'#)V @ ?~l1?6*w#fҸZ?3 7%m9*v[a%f&MG^z櫡|*JL}mRmU棴颗E&$Ѧ8[>iWcV&Pۙ1XOco-L'DK>gq.;ZԙzU=7TaA9`;:pǢs֓Sl^BBs譾GuN<ٓH)ydyjg/jG\L6f['ktާjï.w  _4eÝQ2_FR'Ѳ6ó^ g2MDȫTtp?e[qUda3_LFh TL/)//=s ܰƖ.SM*ך[rg5TmQ|)Ø:Z-Gđ50F xEA,8p`Q_v]"kT(&X'g!M2Ǖ,]i[ð瘻@m8h^GZ"Hl6)%%Wٓ šD&Uj:8ZLGr vJKh1Oƫ v 4Ũ DZIBLIa!k"VM*Y2Wkz>Vuwڲ}B.L>m\]voBKWt*I`a ˻ܣs ~aA' 7b^:.~tڇue7lPq1i[pq~-ט,G˷~v!nF$ci՝/yEr^͌mzN^-R0a\LqKK%W*}lx~XXr5͕oϲëm14A Xqk#$?O!/t_(ۅ{Z,"Y㬰 3E1k`=%`6e2Lj1P)?~D55.'t'.ۂ(H9PvqTIp7l4hApYʭ Wq:#CG{ꩋ{y^ɹAIo RO~_b)T0뺉 <3lebQ\=Uo"((Tcxh]Y~q vM$rT|^'OvGZTSGnlvvV3O"B¨n9a*G~legX"A$m^-vO1>zIws|- I@LV 餑"у>Pͥhz3e`K G7 φx?@AP+ -/EjZElc߁LCfZxqQ2ҡ>@]YViyאK(de&V6?+o 8g9 \ Sg]u!l( .EQʫc B;FUfށ^6w1rW/kt*dz|Ct srP%R(KZd/&jBuR4/*άCe nκ^Wc} B@hiÖ̸Rw5j ]wc@eh\!L n3(_ђl4ْ>d)6Lַk)S`g TWP+̻yz~@1ҞFX猅zݼٮ0 ׹ ƹbaq]m4DHk/8ydn[p D吵M5FLL *°jkJ:'fIzYqiYH|hHP2A~yؐVᓴCd+ppH.'81IOOj"LlU0]Sg083UZm+:@&֪<21Bu(`UvNZ+-7^" *D,L7W477:}꽏}`8AuHQ{zlWyyA`W aB@Oj 3o}]gPHU"lX 41RT)swqnXpElJl?fXiCe|XAcÏ5jzd9`*㯗ùnY?#x;Sx?p*B[)eWth4j1%=}8*CkتXPL VF2φiДv^$6  6;4~ vGvG'%7=h`"D_onUA \m`(CnČ%gpHƟknW|C`YH3fP`"7RV0wxw >oۅYiMl0tGrcIpoi%R(zJ>] #N&kUH\kGY R`N^1ج!35 >N' @,a߫2-y4v%8Oxܶh 20 ߤ_G4iƽ5~R)BSVѦ_6X>rQPۛ XM޳hP烷NoXq0r|kZ*P@B+7xq>KĤڶkE|-yHV#rô$;ag}a)1FN[&f95p)dwxnbbwJq'?@1:__O,:páeHpBv<%zNu+̂ 6v;4%KW0S [zrT6#îWP>Լ-0J"RHWq `T®WepX"Y/#1m@,9-mྱv#rE֋/ȒQƪ^F"NhyDd\~#Kb)jwG즗?'Pa[rI|!r:&JWg[7HC Iwn?f8UܽH`]F}e|(},8vR sX}DxM6 c,ƌ̃8^U6j@⤦]JJ"@F hl`7pkP#hM;p\bz }  }J>Ɣs\#aT]v'6\yܤװj/J/~%cg˷mm_{kY$ Ů~%zf^DqXLK=[\].^I{plj ìil*AS`;N~Ob)1e#ɟtIё&=ur~={?lAmN \2%q5DS1 E*ߝ7D񴬚TCbx7Pa|`ѷm&O:Ke#G5qkbqHq|'0:bqG?jVʴX<Q$M5=l1kki<9uإ5攉O"O9Eݏ(9&+375%/Ү9|<5l^p6k6 BEU{n#H~%IG.;{5Sg=g:^$ZToyP~WDB,l~Z1,k{=}g\#zAr'8#! ֒Z|gi,bd+'yrHZz4K-gqGoEpy~T~`mU}l!p֭?$#Ya J2 eբcQ* K_hqP`I6oia,_u7Yd 6hr*̿ T7s6m+k2<]ՑZ-ӸZtQ=oNQW,a2u櫱b3yiח!qxYOܢr ; KpA~;eȻXBqlҢYorEKݝELz! !h}T4|ɟ9R` #Oh vUHx1҂_f’D c?|lo[6\&D/Պ1y(KA멃cd H}~9g 4ؠ-aA) 9&ĵǘ5: #D,S]tj#A׻q|\Džt`ՑIhBey?[|UYPc3x8wΏ[_p%_of _&($`+p4g ]zx6-\; 1aġEULjmK#!ۨ5gI4¦+8wyjTu>6 ˍP'Ddqz0MmVH >:Ւzݛ>h5WGwJXqrfB_IVg=R5tNK`UfaOzd](! H[Wa Of Z޹J7Ze|6V~WB3ďDs87^_${PoعᡅDcxd GiPqUOv)jֆ6'r>20Į!˴#7zC,';%̻tugڟAUǍ&ߋ>#Hrvоv9)exbvb ?ɁI[.JrhLz°KH[ R"d>@5s (ڎ Z݌ \r!?RSq_~0չv1. bTc4:)BD[&!M\uKmiOSeXZ\z=,|/^̲_-@]eY*&ͺR}pKf}QK2ëvu"dAEwBWD6Cдp!." te.|,^. DP6sBK82dt ' @n"#bŋlSFӉNvozB}!s\GBp]cO-+v[[3k:!Rgl`X,]ZԬWF`$TwVG=zCQY:#o`ɰc\y%>3fC)v@"$vMlBVHÍʷ3` NEqɬaӏM5ԧČNH #Ѓ (WĠŅm#lj{),Y\^w1 {$^l0!nGAF78y͘2ǫ2A_TkH yRm#ٲ$ßg7h6RKu}DC=6@aw)=N&hwFY$cQ ev8q.n1GlTApr9Y%U*6ԜC壎\y~fUd(X%Bǒ]V^<^!n/yIq cs ע򰞁r󷼥l1ӊ;N=l QibeAZr'@/I9?g6ÙWoH>"YsNR !Z+IxSFNzS8?IbS5X/~y6;7Z72ؾ;0Wtܨn$ 4TR6 ,*݂ ~ZZj; 5: FyYOj >8.e_@'!lQͿ^7=ZPўw&4vwf[L($iw6bqqV) ]q KA:w=v<[݊O ͙ %(;m& #gctZ\)"qYo7zz[a~71P!P/mJ.Qn/+$NT^Y[Bc YXUdMYڕ Bp#ږ W&`aQ1Jk e3+do;FƤ{d[yE{.G\Paig9hI'[  O+:M^~Z%ט8`- 튺WO-"`ZI@ՂPU+h6׈Es~P|A ᛩTix\96  ~:S [bftt 㫤+Xd*>p'\a6[aVN(#`p 7SsJ .bb KfN[Kݙr\'P9=Ezye3{n~V~_`a܄mγf5${alJ/m[_Db3tc m|99tZH24=1bGӳPenKU-V8 K [xnn ~@?Lʊ^r;@!#ⵍfn]7d itU6a{xevFEc.'z 2_2Q޺כ%Qף1]p"J0 ͻ;+[w!4NzƯD[3^>EiE ?9itX/TNoSuf?ݾgNOY\ }d,*oTތpR詂;R{i|SOg#2iKKSN| ,aKv9#~Gq{& P/.AYx`qBJ{ix.VG%xC6t1m;g?EML!µ< Jk;U֩T$Tؙp>STD_g,amwOe }/g1Vu7֫Z}g{ a7}mh% @jskY~*Tt][qSI~yt *~ءkR 1 ~B2ͱZHfT6j<tܯHQg_VSSDO>[V@3z[XS( y[ЃgȯLH<9!>,S(QjiZ=KQI72v@& rB4=eNo, N'(ÛRJ<+f$UߩFowDj͂a NHZ`"?)SUej8&se9F;b L%5wbLMq qe?B/>ܑy&u([Cʷw>`ȈtHs1Yii6Mt3?q FW܏en)gt^;8 3Tu*GrZ]{%$V(%.)W Iv$-ǕE5 IfG :<7J^n4ᗙ56fef@o7OG#Ar e9Vk} xE.Y 41ywHf'tf v95ɱ;KdLfwEfW ߦL2m\i"R}JRN>k^,{FAޚ7@J29H]_ЍM2aFi g|N7bS$0)4{X _҃w TՔ歳3g操Ю""`jF{{_˝<YF? aߤ)<{ٟRw A^hz+9m'Of/\p~';˫T MLt 0o~~oS .& /Kg<N50W,NaxEZ8 Gnlvk) [ɱ贰|mz:vUs2iuhobOGRvk/m |2xvLA?CQ߁Vw؜[ۙ /N6x=ҩҿklS Aڡ;iR-ֽ@/ I J Tw΃[6l*kMuE{i<ck4B*tp]ѳfd؀F܀2A&IاjV;y  EBF%/9UYBv vvð,H$^t7^m7WīߩQFCFZ5GR5Q6if [20[X/N6; 7=a\.tNƨhKbc D}kҌ!M\VnXj],SAj}ȫyg- 鏊5YֆAs -/kx/!Sup\%@`6\x7&ԿA%JPrmD #yhh?%vW>屁m& "CuC)ݞY0U,9I%'od0/?fWk䦕vf5(ßbA 9-% =B  sjHRZ!qx/fO88%?S"{ϥOyA'/JzkGvFi7 1Vȯ7W7R;J~c00F~gjN*9V9L NwӷqYku`Q)P)auHj)B/2"ϸٶg=-JDy@jn*gRJ_!eIȥ霝7*kU b+70n<>q ܪ'IyPG)1;}ۘ*4V:4oӑY3X- 㦡vUvYOp?f~vGKZl^}0;ozpC8wO{ru``qA- ӐQB֐,CK3wM#-n?ɲ`ln4𮪒j59<a(C=jP?@ 4BwvC#2t{f(4RGhdԕI?qL>˼lٴM7_D 5A|ަ!58_qʩV?탇񳉬Z?z+b [Ax;Sz^|ɢ"1VX)NNUD&|PU?SXQE =n kg` /Ld Wݪ >Z'KrZThsizsaҔO^>?j+ng=]L*]KoO_eS8`p!Eҿ/;FF!gх'wGQ;]Wܭ~t[\:PzGLtPSPRKdiƩʟ8>%L%]c;4>qʰx f(-Y{aSabZL̒)&}bhg`D$'RE|kB)-Ϻ^%TunhN.3ldYLm)373KH!:~HN*jstO*I"'3*MriˁX >K 3{QX wMU?9=N=nY!KZtW Oq߿\,DuS\zyqt (&jz8NsCIюSUFA @r{a w8wk72_M p,tl#~5);< VWN&L½~/ x\4sX{\"δ3Rj1>e}04Xlx^|=>V DŽVf4k]Mn^ۂHV`zOBDĢW# k:JJyf22 O:b$Ħȝ5G۪^UyO1$a!ZxyqCivȜE /P? EQ6P>~Tj.`8|gj+T uy8 ,KAtcٮ;58ӜL,'LLuZT IFPȧAƽ4V}*v+R"9qO9ʪф5JǦف>gyܗ+DQk`?A BzhQ^:1uۅ#5a1FYb\v+zf :ڎHm6բ25̯k+ pl/W>KM--V?@-Qgkli`[2+A!vٙ_Z0 wM Z [ޮ,w.:UغNH 3+w 8y(IJ\nӹecs÷+)dT?x4N*ITR4!1Eq賲90M Q8J|C/ Uc4^wsG;c8V^l\YXܤ7$J9epVӋL/;0C?T{ yG2jƂ,{t&eHÈxcJz^t v(Z'o?Pr$-M!_\P_Y^dHf"yGQ=P43K׈9VߎKe# s¢eS{=rŵ~ҰFl; MYj¥(#;Ęy+Ի%PkG{\|vY$0:W!h{ª襲dqVryu@8 j_Sb`PrfPmnʙT ~{ \d.ͪuXML7_اmvNRX }KJح6oxR+)n{`! y$ 2HC|iȟ:0h*DK sAh;ԭjNI6Z(;`kj,j9n+[@3 ׏l]L$ X77 Dm K=ɤZ}(=~ 1֊ވt6D:x<(ko6/- .ǽg(8F[Ǐ|<a ԩs?mĖ^ln_n[bv^'W`SL@)mH "Kڔa8 ]tMLY~/br/thr*e=hS0aFU{eA٪7MD҉ &^13> O$n3m4x LԣDYNFvހRcy{1TL(}1+1d$ĵ@# ?țu*;`FǦTpr3(ZMtXZm@dPuU%=p&1?v1:k3ougѪz#ߛ'Eژӂ*(3n DG'jqa\xJhgY텑QÛ![dA\߶ z~*{ &"3gsn)FkJ'J.^-$~cU:AC44(aV:{v1D͢rfΆr'͘Pa;#%y/*MB[8;\UcDϸy+o Ln1HㄋL>QՄ@yl} Xu.x5u|d?I.25ye/ic4q6B8"}oeL VD%P,suıɗ3%M%dnZ|2=`I;kȑtI(!:e"&N*WݰHL$Ee( vk4{gF%WZhPx=K|="f͹xSa3$fa;2/n:ϓ+wH6x^grhE !_i'˖՟L_)9v͜l?TJKwۓ qNVi}u- f~@=& ڼQoF`9>;n?/$GzdjrnfK1[TD1ft·05&[t6ȜWsYZ+6\s}B*J BF,mԤHa#/3 cݶ/zx6&KS ;ޙKH]J}M%%$1f0[,:XFt.!@/kϠ݁6MpY?ZOlB  'ǫyE5/T Dcu{Ze,'> /b Xl"2p3Vқ=m!|X1U27:<-SFmSӭf>ZzCb}k.# JdŷZS]Ms57!*_p9ߒ|*$4# lt!;#ڬW~ D #ڇ+BEKt[cLL {N. !:Z=+ydC0ϫ<u@=Vp whջr&B/zEʑi1t &5㷶 )S]'t&=Pc: IOc0Ğ,48ZT-5KJkx"[:V ;\*b^}0i?V0~#oq0:Px^N43xaM0ڂ̨T¼%UE9s\^e(f|Ms_Elު3dp3u60"J׺EQF%3 @޶k.J#Φ2,vR}xf.oMtY~qv3ۖQ$?W Cs8>x;?>U Ub]B*[ OOl qdp^qHe؞Sz2R|u(?|R|+&^N<"'۫sg1O+EaG/v-*MVAپ,JNvpJV4/Ý 5^O RL?"3Z^U0Z,p\.my5R:!qU@I0kĭw| '[{Xg{ye{z1dm dV@D4k]٘>5<4WxOu`8h+ZDcdX"qS@]ع`S@=+Tw,J_Hz*yj(?L &8JkmjȘln#2f MF˵@G4T 7ByȈnI9m-%GaGg&&8Z4R unBk@"#]굟+ H6ȡB\ T0K"u๔#?Ӳ=+b _G;RUrn4W9氟6s~ O_ b^@Eό+{K'5KG!I! V ihك@))}R|iFtz5- IQ0&v-9mZam͝T $!rz]d9:^ia7˫/eP ,Ĺ@\A?bnl ה X R jye|HL߽p%GZ >Y:ѧ9FMmI#"dNg%*;cJ-WjhbHYiq۟5d^n59CHO')300[;ҋ_hIdi6&j2߷0yͤFTx#J!șq"xa`SxM]Խ먿S%Di\)dgeDk~ÐA=1 ˨(5;*H98=כ5uhW1su\m$khK*!A.iJbK8,I/ddΡ D[{_b&]Wףm&xZ55K.WE)֦gVŰ=m$^M#K-tWO'hF"RV21vIP}OJjTܧ7#Ijɮ79O۸X+V `-a^ (|![ $, jr,b?@d%G~fwuW&Tl)5Ô^WA38ݎ!l tjt]jqyZ*3<^ע4B*n #M4HȞܢ2S[/8-t6`_9zx܁ۗT) ("bҹ; 4>I EK 6j 6Ĝ ,U+3-wnj7(X6o$=IzRqᾮT5:[&|}IL.I!`1".`e_XoRnE~sUϲxoSG*ne{~׽78ҎzC`_*IdiGjn}XLd.3ϖei;xotVMm۞e S<[R(+q:8ji=wļd[QS~?!f3YpNAJ9+֦5 1AKXhq,1aBt(y@ w pLh}U`]b*?Fn4U= }٪YbXZ/CG!f2Hn%LNXE r7 {O7x!q` IbqS2ʔj^i  U%¥SC\'ibB^UՄ;^ N*@={AK8cw..zڧ>`-it-eX3m"N4+ 7%夻oo72Lѩ2[s~8@ՅXj}OMAdKEI$B: ֨I+?IW7be :<1b~UYgx\MS"4%AyFPl(mxq6y \!֌'SrQW 9US\[ -RoA%]hscP 59QSwPD׵~*z]XX~(q.m !ϝ-iKtJM6aH?Y#7SS-_28IR³} 3Imιez=/;CIWa^̶oV䣌+Z<쾇pK)zeyϼ$փ$A>%umPo I¦zhf$1SKYsz;aVރlP"K&fWήǯHLBs^`½O{|U{zw߃N|l47<9 7%W^U>F ]/З=xP> QY~4nowƃlpd}_ܵ* :SOCo!\ CW \{˪ҩ]xZgjm)-h8[z!?⬴E(NAHgcqy :gUuˡD捓x֨hrlWp̾lqǹ]ELJ8'ZZH]h;7'7ZS{OZ^!̧uI797- ̴ZeaT.88.^I>Y-)A/aU\ ՟v3^O^[ ɍs$h5;6l?I;2 2SmTSv\ }5ZMeѾ 1u3速T nLeС툑uazw!rM路"[}!KH@*@I*[3 8^Z\>s5.yXribG<~ۢePKlVaKNr>AИ3tIc۵\C`nV V5E)Lah2ô6a$bݕ.'Ue>nr힫 =F T# =]!Un"Gz7bН v^ٰ sN> `܈W({RG6zh sl{P>UɁT"'XEwW{z\'(KyU{OR!/:^)u((ù>k | 3nJRжU(/팘0Z\]|PVdQle#'L͡z0DDX/Gv>b J^µҥp5_4[0)6 K\^*FBоDYt)Zt콐&xb I%OmEcyRˌS<Ւ20h*;>&NlC8 $nf4f&=;Z}+aC#gF _iQF7$ ['4J! _qFo:+)G,U}=QeBQ QYV1:W 1[^A]pKزkH.?X_jۓm%0twG$K?# !zG;}ΦCAv7ֹ1oġgM,o[I 5n?Ü3]| BՇb1U>1Wj\s}!cP1\W C ƧWϜ ۋkwu Y>.gHNcjJϣ">^Jz^Fo*4I*sXWIdL@c5Oַu)ZIG~y;EN.A"fXʅa%'gvWY/)Ha\HFRtzaGCDcz5]zL2ݲ'q47x1/:P7>oHSXBUO_ñ?L*"p]f1n\x @$@Ά[rԣ)f֔tͰk0BTFwvu |ij)븳F;m#ĩ̃nW/|j MUmeA @ao,,+&VWH0B(NqgVUP=0yl E6`ތۊ[njM 6dS3?l5FI%Abe`t4\"G]*ׇ;,|zsL3θ4]i>ٟ-k<=yEnn(tEaSkf՛vBRp?](HJuWScf-]K̋L/`2>4m8:Bl'BDi ӀCqYp;RW>A`6Q Nb7"q럡1vCnLm姒dkT.?5>Z[`0hy}I% jy$h-hm)4;\a}U][QN 5F_i#d"F=յ\=t^̹'oth;ހ(t:C4D M@rl#Ô4*GBufG_\>C2g{=Nft ~uaH&E%Y HxK-}Ic<$pX}4Xie)/T S|Vw̿l`]ʗyz-B{(JDj='6uC |\'E9 g:_ۻZL˂ʠuWgDeK1T:; 2 !F)=DjfOʏƆ]s } SiRWK椵r6.sfǞ(L;;ӵ0ޓM;z[Yze eOvwu9j@ҏF26BT .4W~oC; 8f^7nN줗2 /'4T%ƊɉP3RBW,~Wc&ȓv֭Hӭ4|fHK G=odhS_\2x^fGʐ_]f"hbY@^^;H6U課s{SN,`A_YӐ/[pU$EM{6mSbF}g!o%nc\Ϣi8 'q]ݳI UvQ!v_&iJj{CVpm#o$Tvn8Y;'9Iϯ![!{:7lzXoຮ0]Q" 2難F/7AqHY/zy8kZ&$w+CJ؂:qY..i@gٮ񢽓4 gGnuMoB_7&c 8=CГ0"8%.Fp:FU=*Nf~H;,HyP&>AE$ur󥻏Y1˒fHELM,Z ; վHe ͚9!rKa LJ )L?L Xv(ΰ㎴tC?^)΃^٬9O_ZiͳVf^n ǵ%7~%qد$faPVsXxСF>E];MQY4ej. ߕјf #vWILe@2يBTCdTb!(/>7Ք>OaR+*h ^e lԒ}W9_`4g:rw$q-{Ccx{.<#EA{T913"sz>ԩ cAkcC -mVskG] `.\MDG3]V$^t'wתAvGdH)&XrXZ̩(VmZ}nl+t&},?<'E~Xn5~{9訓tnƸ8,VaTw;dtG^~Af01lyPqhs8 -}c`[<[ęGX!wS}fɫ1'GN2>J;>HX*;=^`iaA>Sq=VŅ6w`e%+*ڽ4- <|BLUKqk.y =B4T"gv%hL/B8YR\SI`d&i/cS\=bq3(ؾup!~o3z1?9xcA%.w|BB8bY x'j⾳:G3)y]FzOBldzTq(fzKլɭ@ݤ% ~9ZIx84E*ojKi-\bnJCjoC{*;M4ZܛP_\}P)ޣyիrn {$FVO'[rrͰ6$37Ƴ,١}7b! ,ؽjqثqzDkvxSy!#[~@!L\@$B3M[=RR O:o"|BHZ<֊Mٝ̇ZnyNQV|{Rp|ߡ,IbB$J;mЇ!'k{:UHrE$OsMy那[F egu448IӇw$<ҨpsUb|יh,Gپ'J_"IO[~X=o?n)brfO0wf&2V2e_6H4 FEh~>70hCnMn~%l+Xa$893 !y:5ƒ[z.kEJӇ>jˢH\my*qlMIr$9n}F^@36L԰W1^RǞclT9։>VaH%`L@-4O&ݺHJܦU=#|5+2,1?DgIL` :ofv|ª5] ;H=p' !4vEyKhsWLQW<ԅUT%<\PBٞ#u>I[:Ox3ؑ- gwc-ntr>ǣ^hYlxWncp^',gZmHǝƶEjk(ji[R/Uh *db5HRx/n12ۥxOI"j5JhӔ*L5hCo^/*ƛVtU o|: riq3u=r|_.J))Ux Dz .M_r`$/zxjլ(;NJiE2QE]@w'fodDBo"hPr=7jkyӤߔL|Ɠ+ï>1:@: =9ެuD$unHQ\SJk0kJҙTі+<%9i@̸Kw@Yǔ/i=_z^GA`aT׽,b?K#_^M%ҿJ]wUֶY: 2_N2"#U4sl}ɶglL/2%gdz,bگ6R 9xԡG4{PT9ͣңQ] fl+C`_ఽ'h物I~d_IR?)h'4iڬn!9NQ(e۴;=p9J` =T qa=7!U{r]%e`ϟ>g<KnkȑG-X4{AN4a$8V 8C}]nʭ?Iʄ!,DéC;`B&4_k|H_$/1C@IL }Iu$ )}n{mIϯtaa.:P~VANpH\h<%%\XvQ5Âg`J#"㶭a'gkb~ ;Kx/3dS>gG:VM˪*ZW!iˊt K˶NRk Kiܚ>n 2W?Is_>?4J6߰Μgp<_C /S2NHG;6:|.\ѬjÃ-G&kF郪88Lf${)h^Ha=&ijisdEeC+c`Ӏ CѻK [ Ҳğf _.7c P?S}6Za#(b!SmbWx۞'\}{@u#r,C*Ƥ~+>N CL@f{Ow&_$z)TkZwK9 \BbůW:\fw\D1|9ϼwzgGUï01a+)1UCg(7E.u qǎEfTl$쌝qExyW{Tq!Yڧ3K~po𛗑4em.") Ȑt8UoG+=F0TyeV"8 @o; .Vx+GL%.Q ?.w\,gvd.ش$u@=psgĊsW[GXx#;@Ldں݆tP|NOH?5?Zs#+gaC,? Ʈ:ʘ<\v箵ZJIf`Sn{=v龈^;l3 M.)'9nс52P]R?vR.#]LufP{۷."r'ewX!L_( qk|Sօq#a,Nճg3SY!A]V ދ`Sq)*:%LJW܂ 1hhͬ9>QLOI F4*g7¥$"(!X ׺ZV5;޻U2V&@k x1>pqY o,U5dL%שV>tb ȐY_3Btr]QYfw2m>,o[mB p])uzR؟4-\ &9j>*Z gD' ="PU aH>}Dxpd[ny600ڭcqxvF+8Ho^jW޳de!~+=f}OEqr  q, |kĊc/$P- i6(EWIYMc5嶫ч% gaΠgq_e#y!$Jk;ZZi4{ s{0ZſxyoS}ls|ޅ5 [8e 9wb,/x+׶Q2|w[YG`_}ef d;$ڐĮ]*~IY|`qqҳBc?@Q-`T|\ HW,87͟8(A}n(}_[aHVm\Q2?,+1X{9Y9 +5Mc;]^zсWN,Z RSE-S%d |8عn26tmI=fvD(cɗ٘jqՋ~eU#0?Jg8K< vc 3B:p&^n`F{/#JB$Zs)>[ \9mC$D+zV->w;*sΓ`mL#l$H[yrU7K%9@0VWy+,<,p S&5"܈McO$Rx?oMi߈aUlF! Bjxj;%Nƪػ+x^K\e-".WL+ÌAwF9@TqP>L*A'Ч{m<9E ✼a6 $ SN8? c3_X}[%kxKPc9x#&,qnn*v;Q_!(){C{&M9:L 1`t&UNᗯ4*F6ovOI^Te)'5yvc00"G&yh2d >%&Y%Ϛkw3ôiĨ@[qL1]pêETQd#Ew,Cʭ&lh(UM*\Ϝ)wkSCyln>wDʫBUoFZ|xr<̈qjv!aU HX=RNdTtmi^3! G!3nO|Oe4NJ5+ w;BXd?ev6{韶MfhH>#`yL|nh6o_fW Ѩl`[I5g>5rH&H8Zҋ@f2 ߞ0&Ⅻ/5uҹ3nv8ݮ[ T( G4Ax5XEy *yKQ@x=̑}["G*1/0ۛc b6FiW]Ƶ[Qo7녣CGѐw^/Ӭ Tz2A:w+RwYw08,S*^V8GƼ(- 4媎 ^dہ8<hbZ Rt}WwzrZh|(C75USةyKQQPV5Ӷh/'<`F_v0:qoڅb걗rHcaxV95'~=,4`H S֔dkUKGLs@]<&^3*8)n,<"ʘZT]ȒHbr"9&lf?,ۨWěe2ud`JZ m k^zwiVc[B*`*Ȝ'uFg+ #I /#Hl@ ĚOEWi K* x&a?::95QH4MNPcHJ'ML1צ9iT :9N,CI e=t+7GAڿ++epUxӣ{>C {Zl{ ZAOSJ"/{a,1DrLloQIJ4gC{bh5Œ^8Rm/ˏ&}an(F /&Zcx tgۄR3~o$! 5dz@`igZU^N[[kg;,\OQY?\K OwAI2GT"KÂ0%*~wt7wp^ЄM.((dHZה,Kgɲ^Ȅ8Xo) #@㖔PDR S'JL(֞"b+~%x9$Ǫ~({U# v\ze\K{x<ɳb,IS[//kaBCUf }goZ͘#Ҕl #9m}ud[GoIeF^`\lEIX>Q6S%XJhhg.|$aHo{J8dӥ{~A7 v] ›/c[{Z8;MWoODe{VV d~~Q7qZ&-;ǯnuP"Ls!.$|\e/PuR棿V$G%6wA?-sI 1U|iw凼Rct4d~xwq` F:d+@˛>%t 'KO.l"ŧ볊abG>-ڍ=5/5nGg`F-`Cehbc9#;f y/6ԙBԐ$ S1wA)\9-'wY@Px=׿u#CHs2_TPUR2ۤbH* Xf6:jqg7h& IcK*ʱ0F"'ǝݙzdY~䧤7%93IQm=x'&̆I9`xքcĔ](;ЭJ5`k\ti L;23S>Z; o^vm9{_Ahei3/'ؔY`.`* d\3ZTt*c,gA:i+|e TlڣEYԅ ){-"L r6g҉LSqRÝ(&tZ`NhUEs?Gqo)CؠI-ORPk _\@2`.oTrťJ*K`l#*"KN ‚eͳ漛BE}/mьӗMp, ^~41|چVeF,y-g [ƌWd3,+VƐPP0{ 9Du {+tX -)5E<8N'\xx|pbjo~ B/j0~F#y…x[T:S2=I6VW#_* o,@[h;bkIU 6o$dn$[.s'Q>PX&:v`V1Hݯ)́ـx$_ _4˥7gSC%NBzxTY!3q~<Z%nZ$Jf)zQ~L=pQ1ԛcйetgr!W3^˵>,Y4lL̹ "2O~Dp~^l2:6_^4yD}d#ގJN`3p6nǍ.TT Ǵl_uUPBd|,%wՃ>'&Gg Q C/.0G̦!yl9cǽ }<$hQfgnguըQOOB@ʺ⮄*{(&Ώ4?W):S=JJab|1 )NGڱd f fyb!SF`cX X.RKr dϽGl o@"(`')Iє&E<9N֋3ThrAفO{vZkw@BmgA6 4ǺaxC LdkZ6O O)H44LiUuxd0װxշl]~mvMӃct+%'|Oep {򽒃0l4u(ŒaHd=ƈQh}[!kCiGmIm򢰝aCߒN!ic\z`:sR;{!nX*~Ԝ& 0'o8{|oO#mu ^L_x+eOևjh`omNOS=̌Uq )-^jO0+QCۯi4-ؤ.#ʎ)=C6xNkjQ@35◻]׊?fS!ZrLbآ߬R7Ns QꮄD!zEi*3Z^eUgBevN%?9aVjt.k# 1H8SdhAҟI Fܒ2R眤f&u(jĕ%qg1򖕂N\H&NiBpa"ijh$UF jzpZ@p Ay wN&b|0pㅫo0Oاю)=YC9"!oVQWj>Rt+[g 3w[Ap w94,pz_`ZS^9}`$k`\zY8-#ޯ56[}Ij1i8XLkY7oPk\sB]ߣht%G(mv7fE(' +ǾV' X i%fKɽcؠhM)ybyFFݺ#)Gqq>5"2z=ts$qqӇ""A2aڕKh҄pƫwڹϰ'[3"l*@MӥWHi^**B%EGň&x8 wU#̯cc$& `I"gD%J[rl}OO7u{Sm|l]Ypb>,OSƿe:r o`/`:w_ETF!dNM?j>H)_u`K+ebV <ɬrVu6EȐALjOX T5 "!{za6OeП¨F<[޺pky#HjK PСeB*:)SolbZ|z.Y:DA{ƤBp&rT?%+諀nAڅE{GJ'{v~'0@Z(Sp˲`g qk!q䑩8e"ݢuS(S,Q"M qF=f4AUO"%o2gATH0`Pa _da091?hm(el ?֙7M6VS=!jn,md6^,|@!&Ljs9n:p34v0V>rljNmÊhe3+yW2cY.Rl_H1H-IslM0gV~-~K]sD|^8Kpo37V꘯(!P+~Wݰ:H@YenD(#=CVM42q:?-Hdr$hAjALZLcCsfV+C G{1mB nV/"EG׏u l 2"qD_*4D 3߯a={n\4jKn@-we۴;!_Ίȝ'h} ?٣[*?m|4wjvSDqegϿ9nd/IMIyo6ZZ -  FDՆWwn͗}cPq7^v Mfj qb_ )]6Tf6.}F@m߯ob8URqfN^aluuݒI[)^*Ꙫ < m<6g>.4.' 1]@d쭣fx^ӀUtY_`BOOass(X8:}K{oQmx\L5xҀq렋Ee]^o#Mѯ 1{-g˕:BހbIPی.)f8i262/1x b7LxwF0HrY :fU'Ҝ^;0b)"<{W>;Z/9*9v7MA,8QÎ'a@(βP q'PrtQ, W")j{`mG@كwt᤬͠, EmBhv}!=~ks2{k"Ge8/)Ba`إvah@x>a|ݱ,a\/ BV(ES,B MbiCvk5yEC/.дB.v폱|F:l 4 ӂ P%,scPetBf F`?H cۅFE.3 $0CE2<`-VRzU."frlx!: 4)_Kop>mB}͵%eqi<7󮘢6cR3@d]N]E}&*v>֐n$F6愸Al{J8Jxd? U '4&_LґzD߾Sx6O6ˬI<i :?l*z,.##TWצs%Y?7 ENECW h (7pQ5~CɺIiVYhe#T)m|4ϚH%ͭ_罛p@E?H_)L'ؒ. >ִàB֙t.#~TBˁ)E=iwJB,* lAsr{{rnn\S5u  мi~ Լ 3GsH {g-7$)w1 vh"K r0gnm$mr/EC.=Tb޶N&e1-{fwcF|J=n\mY0-`K:&UŁAe~ 1Y5=;M!(#Ֆ1\ZM(q87|뒝O27&{[PG)!Ɵ7m:Wւo`zVn遇_fZ Ǯ(j*$|?Q|5bVXyT7y|Ʒwvf֍ɠH5D~9}il_+ü/Ա_-~%D %j/Z;s4)U*[`km#w,#Ɇ1 ZΎy|Aׄ ]ʔ9Ohzm)a̶K^e"輨ǀim} SR6Bwޢ oǻs bi45h2Ц"ޱKnMq*l7~)Eڂ>[ WYXB%^},*x'*J+uETA~Qa#lZBoܒ\)6ư$lEΧ!pYQlY0 g 𬉗#dPơ~6 I[yAJnWhm!@t@D҄KZfz렊kncM顡@{%q-HQ~eVUկ6V'-|ϰhv[b>np1둏ޔ(iMѭ!MWOKTY $| ݒ ͈Dh,-5>kSt[j$ w6u` aR=**ntJ8Ot\Ȝc=oݾ7e<<ΈGUXM/(n?c?g~-sʃ W dI0"''mxe"Uu&:VF~;lGNgiyӢ,r6ہL1G*8^D;- iŰi0'Xh=X0'r~#Tj˟uKqk:D34`}B0#:Z[@CY  VP/O2 *ҀZ,S弭˅褋~-knYvzїA[䋦@ڍE]5mW#)ҽ( 5A^Ц ҫ;3| <>ĥc_CۄDZ?Y:ۜl)LDQz?颡}ѫasYSXǾ$/(ǀM#X)Hn¨k%S .k'TlMpJ`!IMfp.VUoy_w RFm n).KRrSb>Gdq<-_Q7V³VU.bH "ɔU WQ" YȬR'Vm*A%G(~Of0Nbx߭nۆJGjkr9Eϥh%c6([-Z$/qAMJrJ?_s0T8"ڢnwH=ܫ`i}86I,JJ7-LjM :145>.Ӻ+!躠Ը#|#)'sJ`/+6}LP")H!C(jvg-Mf?z#|":KGx}y턲,LyP 0 lE*l>x~0;ٗ8Ph.XK%Z⧓^9EN4m pY"oޭ#d5((vCrΑPI[^(@gְacN݇ J ?Bvڶ`.Z<ն8~,n4HȰ)1e$ӸZ\=In-Mv5l/dτFIϲv\'}2zy&|j|h i?,|s/f"# |7D1?} 5p<h(HrUSk =-'Ā,#˃bs%SWe̥C^ȉ+0B06!g+x|0+nkN}>6zdȠdm 4to3n1ɛ: j*[&'p_]dT)0Sɯ(ßԳ 9H+hbj&^%g>jG jLbHEQz k-B'Lgu\"l^C0SxxiZ/p` >TDG/x - ˱ƮSlsⲩzP谓ɇ9ۦg &]\ak>0nfO-E.dLv@ x)r ؄Vp=961vj uaYƊ̯K"&Ik- ^Th,ccjfS8" 3:ٯQB791 D58?ZL#5y9r* YR9ӃC߉tN(n_ͷIմwah"V]ӧ=6%lVu3#:WqL\}MZ`kЗ6Z9Z`;8mmm9zf!V:m^"SH W?@TcY ;*^ ]M'GŊ(TT);bcQOu%$#NXS)c 1;.j'*х謖,kHmڳfidS3RCVAΤv$YΠt~Ĝ;EOlRnJU,ɾXc*CLeɀ}$nj[d3oQic='P,^ ;Mgϼ.fdd1!OX f)S&^I/J 4x;dW?8<88ڞq"pb7134G*! Nt|1X{Ԟ/$ŕ%þgI&G1^U1K`gZ}t8b@a[<@\QOz`pϫ5lZM%W C+[|ⵘ]\A硏 1\*XP͏Kz c@m_+PVA)ʈzpw_MX s\ ďuZIm_(P=|"KPI6Z}CT>*"#: ebT!}+`#AD_.c NA7W/:;WDhdg.d] ,K7e[0pSHb*RNDžEK?:C\~bxͰjF38̣~Y%'=h]9NNg 0S_sj'h2M*ZG3>QʖNBqgnM_?K=] \u8Յ^Fe/QZAӅLmt#aN)mx2xyg(yؼԮS:Q"bu}k_N˵b| UE%V"ճ;8U[bX~>c Q"W4\ J$CwIq@)&].rCߜpc՚~$+jmikba;t@8,L8}ʐw *p/c Yu ౧pxٟkBרjD$ X3炪l *_{~H!s2<#14frC.ڳ!R+ -|@dO=#y?+njk>q"ն.g̈U! 34W訽C8=T3 1FKLUD?yX*xmq vN3ɤbqlBV{sO͛E=WL8JԚGZ 쵦Mgg"%3|_m#h&)| yS_$vdZ}DWWtWl:XFw Ünj +z)3ʪ-1^u C2Eu>q!؍~,crϰ1:Iy٢TuZI)I\;_,~|8 (pԙ| Lo]m!Spkx!dngF/T I?@l`Us*?g->Cm pCͬ|&19%\P;l]6 yOߪx zU?4RI=VZNoa̝ :z `(5TfM4$S wkg=R'bMh'ŹOcT{*(=cKͱ%Hc >VS^ 479ղ!/:9҄r/`̶׏=.X3 8ZCQ=kۊO_X gU*E?חcMGΥAkj#MTH EqegZ5=5 o#b%*^# 5: {Br Y셓0rnf@uS%󳈐CxMoϛki 0:aǘrI^ng86t_UfAhTP)XtAX=3*8)Px=O芨<5l]C I2%&i4v)U_yǜ*r|fq%z(b5r1$Sgb?Գp /TU $_ BBí;*/ӍASVJFV.sT\yS7ښ&z!#P^p;B9^u#.<9^.1v/ޜe#mGD5MUhTEST1z *:ofO.BDcUՂ&NbIjB*X9=;|[XpԻtz֋$/5f5\Ծ*!IYD s<%\4K۰W!H;Z[ŕnIfKflR]Ƙq^MV  ` eK9d5$(8peߪ*'S򑶝+eD6{5`켈];7!ncD u^ƨ+ }Ӵ䪰q`/ǢMȅ~ ],+Qb0Sɭ®q9>|r!Ÿ?bfZp& qZH/uմ4.ߥ}&`MF LFY{5Ot0Z;*F[)\<S eWajGB kۙdԬf tjB}pك ͽ[3J}l Y>,>A*ZirůBˢv-~MҶӅTd։w2%R\yȇrFY[x;FAOՄV{_tThg|QBzVDž @긫֟ "C?RwyX X BFh'kf.ʠ j%ΚRx#eG(%+J#Ƌ" iI+%̸{GF132*켋\4jq+]297)2Sa_&v}!6(> +:؇f~\aE 1z=qDž/*[mTdnC2U ` Bz_X\di?H`AK6 h[9 M%cbI8TL2?EҜϯDQz!c5P9ZRJKj.fĨZ)6B4h7` @ `u+ a |^e&,yiZ% ] qxzskjgBQ\"c~>d[\-EFQ(?bsڶm@UN]wȌeᷯTch5i7_Srv^P( W(+~ԩQ΋bJZ.qC 4hFB7}/>EA2mB$}3p~o!(*PHK62SGK_0<` 8bd V=Vnjy]jU%g̓g "uv& J,7HoE|kyƪEqD/FjQȓy`W+6Iڒ,/5>1l-%PJP}'g)Lcie&6*L2؈wt?S .JPO[(h'V*)^\R+c)p1ÃM)4aF~<^>r]n Cʼ|)&/KIF^a A@o '|߲٫r CwOa&tVf|>'qD l&rj͵4m'R\]$^ L#=2JFBSaS(M-K$畵.ίJ*mǃX~_)6{]ٛ9Ю~D/zUֻbRf{fٓ NFS Yf)Y (W 잾g>d+Ө *hjL EghJvI4%njP~;4bUu&;,(k'>ڜoPEɾw]xLz`#C󳗳Q[?PѫՊv|:Ep{*]2΍nsSxt!NAvO0V M\c8֓ Bh#x+ J-h^P*n5JqL 9++JRFkףB^|Z8nfC  } 3AnnѪU2x( ~u32Ƥ7Z<s%Xؑvo%NqN.-a"+e\>I'W/*v|>~,<2%x ߞ&m@_DTiH- D/^+&*\Q4^IaUY ݾ^*5_:xW?o1p5mgbn\I>Џzϲ|u\~fm *U)7CJդLd*.%{N鏄bui?[x}ּ) \uT7`SEuzbj۴ynkGWĻ2WFxt`e.i(ig}t52|`:4%B(3{gwn'Y#tw0`/q㤡Xj{t6ܮaiGNVj;@F`B(| lRKh58 lio'–`tWςO`ڐ'3>jƣCr>hLB=c7]}3xpjT| gt Dˏ穖pu2_+F'-Ļ@( N V$$<.zJ!U!2|Ӻ5wyɖ DbEy#|BVS*'0:FE#~DZy`NSxla*<{(~\ PQ} !=Jl8¸[09ְ$aW,]G1 ,.-={vJLI|$߲W0dVQ\[P n5ayY  yyU֥R۹~d*"?']ޥ*kyyAX\p}<mȌ6HŢh4ɫbWsu+fD;Rό6ʺ:q h"doE+l`D ^ sx@.(9\CE₩Q[ 4]и AEkU|X+8S6n {ٔ՘l3Q6+جtD4}9i.83*gkӳ c`pmɨ{E: MtP@{/GJ6:d{lG$hP !]0h+ 9gz7;K[DhuͲBo,#oQHz4g̺˂Кw>!]mv ju/3]NõSgÑrNޅDWC[ЮTq(}TKMWfN絾VDa)R |~n/Bϋ.D㐽{Rdٹ*N&ĘrB$ob\gB&ھ'6(]7#ONzwM]0)Vb*ьwi9@Cp-zRt]'K3(PZ}i)_Qp1κ7m7nRy =J>塩yX$Zc0"DbJ-, ůɘԅtMTSVc *Rʖjz8p,; E6 XݸMifJH u=6*nÁ)&1y%l8lGE,ǁSB}8(o3@v&|7hԌK>[-&wfkO;vؗ5hڑn pR}A3] y4QaZCLNqszZ Zˢ@RX,öCj}ZLSBlzDFYXcL]jY{R[~[As/~3N+ޑĄR"tehNzW^Qtg'*O:/M2"Dۭ!#@L&@Fu#^q6fu'6VW+YٌQG0=Hlna#5ʫR#@d78} ژ]-` xR?A6N_"5 8s.0c 37@pR|=͹1@%UAF2F4%DvH!Ҋ# rVWl<5I#fȏ '|*%΃L~lcr;GouJӍDM )LIaF2!/ \jgC:[a|\Ƹ/~L f"gl1<9HAslf`t!3qӵ>Bw˔6[p``ULbv-FW/-^pX7Nȟ_,8/r ^TM;Е N a4R+tTʣ N&0*Hw,Q%FU[@ ̍*&sr4.('n7`,VV;dPnJ?%'1͊uJŞt 6 vX@ EuehO$j(YP;$ qwS;V'h$ ky'GJ]Tq2>ksΜhI%3D ~VP·oE㶣߁>L,S:"L̓-=2,“Ku7w^ps4cmph`IhV!1| X$^;{  T i8aj5y`?L2^<ˣs 0%uQ\_ 2}Eo]9dBR22 c}=GN]`=S.B@۩C`٥5 \F!IuJ A P)C;䃷da#4$Y?++;6)<\QdEhpR{^B2bG1z!nf3a ui=_A cwcӒ\ɤFRF.EΦEp>Sxputj wMm:6'۶p*kߗ <\o# r߳LfV{O  /^zCy]qI幅#դ]>5$W5zn,ݨL1㔐FWTD˩+TV\ZAe']S&L]PpF݌5nؤL^3^~3̓BO|޿^=|eɊ=c #74ݏtm?u'<ڡnsz0&\܈2C84S-#U*OɄ3,rdW`P%iOo zbw5$J{"UW=>4JRs'*!?_fWTP[Ù< ٱo )#C u{ы[ՀZHHv oX5{ɹ>oZH=pxVZ9[2!jpdF!%yƧeD/q/gg p+G$TEOq~;7஘R&tå1t71Nc컩n{@ܻ$&ǪSYg(!z)kKoW㻗:)")*X o 4uKa.һyS&5|ۆڐ;EmE5&\0T7@,txOpϑa3PV`HM>}O,Q0t\WoՆu#iC8C eBb4IT ,}K1T[lRݓb ܴM)>_MK?EWF?ĭQJE_;TTz,J&^iV npRv CGXCrr6-X߉}.}n+\쾛AIþ3γΠts)e ΉG#+t9dOJvNG>m`ue)(Vᴬssc:h5Q_EcuXpF;YFzmz;N0w\U h;_WϛhVw+xtO\/XD(.cR$=)p&;h!`098o+y"k+`U͊We]"ȃ'+MP1wXOALj[|anklLS^ς %irer]аEk Ժʓ&Ý Gu3 [jU7~g^ՄQ Uܷ 툅7l] XQ"{n~c~zBv>)`ZK !ð NF50r5`z<ەC 7ERa ӎX%xZ)ǻnx{,Ui(x%:5X~_%u?`ԪƈVC<_SGީ9s$V%~<Lڥh{ 7MƊAHH:1pmEvAhAZc T|/܆lglF҈p[( C(T| 7Z>Xths|0+\,\F,}' 1tP\X㩽+rGPg%a[( gQn#+߶K[2V&`H*NqkS5YƟKK ( ]e0OD6\>wDeƞQ$ٔ靵scE*v.T A9.bF9x Xu.ֆ@W m|UYVr-~.A}-Q M;($s邍-sّj edm;2cNfq&<3) [( B{9H~/*8%':DPѫ5G=d CoE. {;-Q=igNj)Լ4]}"HH Lͬw0$͟jI]v".}QH\Uq$络o6Is7m_mCV40W:>"9Y÷\50 M;vi&&r|bUgwڲp`)n2OE%*.;BJa7rsZ;Ngh(XGz}V |3}qPOL% AV>u<6wқQ;7;.z{.($q/ȳ!|; ^ 4uW*Uv0'~`}љ"A$‚@쁄(ZdVYkKߨT=AQR]څtXH^ga@Uc(Y;c5W/[XR07d<7چ.g3=I"aI Fu"?h0`&EE% UEcYQM1eP3gE 'h:ݠʜ#i@]?(R,:6tÁV='.O@O-,iU2yV#P]RXCJ傗#2&HȃaiU7j̹ӻB5C5-O=/W=f ūȵ`;^%>QoWB_\%8WsZxiמِ&[\ijJCyU;8K4dW3AUd"ew u,ƛN%lLƞȾDFRcv bЅFZqɡ5;NE`ݖ cvŲrBM(7+Fq4cŊKLB.+xǖkq>1Zym2p%cͨ,xYI@bFE 1l~Љ2>46SXAR|S:_M25IA[\W3Emf^ ?.uw#3^Ŵr\]õ!oĝi.*y#tևQl%1@VEZ:m8r-8(c~tbIGgͺ'EsC'@DegG]>@ %+6xd,Zzl4?oP情 TJ&àF,- xIfjqr3hդ=fha>bĂr=W:dz)N"j%[yK5'5ٓf Xb>v[)WU{m=wBsyOZ ^A]ˢf`ʖأEn|˨}[RfQ0=NvZ]o(ޒ$4td?Lp{EZήAŧݶYT/+bE`j muNwսp gԻ[er娨1&+Z8 kܠp<27F;sod,U ݇W+p|<]פrH yUV(m!|}mqQ=~W-c0Nj3nN ׫V\{q-%(ǖj[YVT4۫OBjjs"}X"v3DGJ]MzwcV䟊 qCW]5 BEod1=g'-IFں-Coo՞gҁ+|dvv7QCY{=W Jq|I]9&j ^DBtw(P{-J)$ C:0UeqC9k^uq,p\`-V8r P`X$'le1[cp^mC]3*; |ɣk/h5R (״7pu;(A: IYN&<ImsJ0}A]@cyF&H,R9FKӐsى HH׸l a:52xt{46=iNIdݭS:73Vk e+`z`u&2 ֭U#G%a& @aӃ;2P3q<6.6sNӄ|knUA ܔUk yT 諼ͳpЪȈֺ V+R 1tT'^O893e?{!e#)}Ι&ó'PƳ#;d_Np?'L,Q C @u2 vĜ^*{Cpޭ2J78uro50Gww%W>y(>i2zۦ9qC qF[ w%"Aѯ{0}1iNٿ{ +X1Bpg@ WU]Ѥ{װ5+C4+:v{qc:9cN5q-ٸƓVkcF ^Aܖ^Ye8V[QV7p.M /b- ߒ"6) &ITJxYTM杵 ;/[89nq#rRX;) >! `mV7;,q,l-z#[jǎ֋ECruUrnZk`= DcݣS;3[6nUC?YYn9l\b?Fl}IDs}RmF3B9 eu/ 7-ت1˒1Mm}|eusZqtvoqJFK7:unNSFDbd:8'SaWOO/4}?m$Y~2@]sXUі̴Hu :dfp^ Ř:oGiIqWtrՃ0/4@j1Ҏ=P<% B|(N9!uUq S"v bhhݪB|NFKpbZQPv5Uwȼ/!! Rȳ`1/a_zBX9VNLcwVO?N˄4A˪hH+{%9#khS9irC|mL\RIBl3I1s6!g&`5sn؛-]#kk^٤_^W}UsHD#\kiX8o(c(s=" W3ɉ|7] 6.T3gNC`9Ͼ]I {U{&̰q!VA G;y6iH 4!uN:pmbV`B"JFgh@d hrn5ĈLڿ<ʿ2Yp T6NĹ|-j?e@L'f7<a>ۀiܾa-!ܯN #D*ɡү;ݚmIX3L]0$fiya AX)* ϵr1:av*Ӕ z*+Ev+VޒT33EqCאYN+9  Ԅ ^Ό0X@ k1Rܠ7.c7f9Gt4<*e[!6/eV O)A j>U2"W-O4Bu&oFXUh.[0#/ıkO;g" 8*c`BHsH#9!d8 &ZU54MJ =<+{ 1klKFeGkF#)PS}<24NhŘzB5)Q]'rjU<ꃾ QB| V~5py0;\B^gbS==oqdc0ɗc'lAfT(UD/uzԷ]C2hė:ke tC))m2F?HwMn}UY{Za %}psB߈z9M[وQ Ud~Em F^ #ϒk.O.qX&`dzZWL5(f3'^LxG8gȼR&owX.i;-TSdG&C~Z6أZrNc#QP!J'׺qͯМ$zkYfd~ Q=G 8%L(qXt^A;yYda%hsr&x}8 "k9E@băG'H NzI1#D{\u|¼ 1Ew ?  oGS.u ]N2%)[A֏G[7^jg{t3SMyEH+'!w4Nod T6 ANnzxLr&/T7XP(׎LGL`*2".+BnGYBEjհMP) +/}Zw*@ 0 䡀pdG½k@<ƍXku|Q =fօ{)WX`x$Go bL")qh_%JFQ~^i8D+DVI,M*|'BS}uCe'Qz-!ŽG4z|'Y#Msc?ghTPҚ\?ã"X>@'Փ|t@B($!V2;kDO>-cֶ2q D4&',.sqC Cz-صF\\q$$gDncex.k wJteDgUԸc[΋n ]}܌M%,EnPݠKbAh!9Z }zA̷ONyLS#?}!Xi1_qi%$a+/z`ЬDĵ-ڻ)!rC}|=a*6+3']C֐,֙32%t\l܎%xkbLZ2饨KWFgi?DGBYsOrt (.Ⱦ2atGg(ǡhjF0) dzo){ [41y)p4\ ꑥD^Z%.sN.W=}q[4И:a=[LNI1UF=cK+5x7s`${'3Ԩ-ˡ.N/W@bW6#3S_3 'pqM6Fn. QFR bFb-\[kIf"Fzx˱vFW7T7oVP\c_?T.=;O 2{fK~-4Y  -Tk+TnQ8(HRW' ?+G#/7n2ICU{t2+fSݩ0R 6##oqsl=vo_xJߡF+=1 wE6޻kHjbQ*uP2V5Q-xrO<15=f&&}g}qsnf9ged=nkR*X"pQI9[ԕWG7|ğ5?2QgXY$)θ*tjX C"۸[C6`.ȲB|Npx\%[|ꭳa =$Jxw #$!bаӇ̀c3LB9#",Bc*AyԣσY=n(wNcw X$C=$y1&'owdH7^+LF(`|.˛eP4)ؔRU`C[th1ʜs&8^zWGH"iqB 0_L-`5 {8-noLj!R"-qFQ&ESc[ækkk^Ogvx8~&5W5euνЍEJXj-0x./5$PVY>6!)N0"_! FNiTE+jSyex=LHc@ zh%v?o Y/QlKf jݏQjWz0!=CC+GA Ta}6/ArAН%pkZT跰}gfP(OЏKBI:C;Îo@1VDα`NP vi(9Z ,W nP1k#/Q) %4؝GҢZߝB`졩j{94L}.(: ې$YLɈ)҆҃U@âzc׏pl2U6B<ϡqtaެ~EW.'DgeW[xGMM}xywΔa5$+lj(JM4-;j~#Sc?c{3L.28m%~dC}Eh{:Lٵt+G~.~s.n75 25{̛ADiԥMU gx{^)CuϬh;,,q% 4 D9Fuu삢 *]ԑ0%JJ7ϊT`4诡'e"l6_Mr+}"v8X 0Q$|pY` $l(My=xBhuS[(+}͂igb=s"EMha7.#H8G#j/U9p^mr@P3#_qlr-i*y Uܗ;+Mg ɚ:f*/zX !} A?;$73 d$b1 vZ ɹ@o^܋si/zS_B n%bpX GKb&%ωn򩚙BTCU԰]C6 eD}?R>B扳㋈sןB>QK8vYތŋ7ERnr:}X^`,?np[|m =_+8Ix|8Nw؏hݓ֑``Rl 0}~okQHHX>d4!_%/ʶBZ̨d1㌓z`'G,):ɂ;+Y᳖<U-w9g:wV[f}dtPm(X6fTgax`I؃L(EL$:ŴFlζixz@)uH;x˹ :.}gDN(ӜrUnx9^<, hh9c(PK(q\i$5([<@pۥra&RE#l~קēc Lش <ݑR$Ik_- MXoSt-ǭp#3NpxB!A ^f䋱^i`^& u nHFl0HQ\/{%ɹm=IJˢ32Ly|Hs=m-7-Knjjbz*t7(z>j I6V/,:,|V61 2/wd>L#tG<Ҩ< R7H/d<ǘ<É^J)9;f2kK P+V] b ,n;T7ٙ*4n.DcH-~-}J9D"3͕ͤrJq,AXD3»'FzޏaoJ(bhU9K苴`b'#AtT._H$TuR nmu\NKwRsy#b 5y2(D0 X]+%Je0d?,ɖt;iJћ-v&8TP`sܑmfBJ!Bɤ+g8Kj;Y'aqfKU3)V:iк:*P.+3+m\o^%sw4ĩ#O0eW ^G.sDO1l \HC j[+MrE nA(#25p|[XLæ= ``5J }K(e XΗˆ4 _tA4>4rI4a;"MV|=>@Ntr/2n'PjKUN\yqF3 |2GFT*L;÷gyM) m.jX~._ex/HcՁH"w} w"r)ibxa?hH+(~#DĔ "CE;8>Xs@H8^u >YXFmtm9+QґD__][$nN- YzDZ S$?zbږ~dq$rŻb|Ӿ?؋}&qLTv\3W?F<]. Tfβ M){7Ʉ Cw)6.8SGŨIAJ"ѥ9*`!ս>KȺ KuP "&c۫'L ʆ0Gyn >wF2JJ=SYѭDhĢzEF&7<>d-1 ,q%xGXfnlIqTR'CSSj:i(HZ|Y5ċSuA2xA~7+ )Tz\tB7cEJJA&OqZt%cnCGejKe9=.0B@ZaZL`t";kl"lC'a*TaRgxeQ"_{Bc5ϤDPn=@lYX.>[|zX"sl9.yǮMiQ9#$DvF"`\fz9SHQyrFC($.rHZ`/o-ͪq" TQ d(Q DuquHB\G>yjxqMm[^r&dY^1fp91+JlkF_g ܜ'm`nD<˶7M5Bfk&9D \9 $ȆW>[{`|9|+5MARqs-4[Šx9P!tYbal1aB Zn[PIlZn#E8WIT#e6 5;;zRQ'LP9kvOG>ƚxo9W7PBM- ZRH߁T(1 8}IeO nn]*EYxm ZHlEK_::~\O򷚽cNE3%_`au2Pdf ?ɵZo$hd sX;ob(nEg[ 6EEO0GX̲ `T2ppinJ&B3 ; ϋMh6]O\reH8W9%-M d5 -﷤O"T೤]Эˈ.ɍc{Pvt`}rk-sbOt+r^ʿ}#O粲v '#s QɐQβ{9lDEGjϧ#^~plY31وP-gt>قfMwD# - N4C_IІQo_aG0\֡!B~圆PddZѱ[,8 H>SLa`,_p#3nwdD $כ1!ꃄACҀsS2'IBć/nҵ`쇟 _$5mc4tY ʽڻGYyН ?3cӷq8bbM(5exɀi/+Q 6*Q0կmq݈io1e'_?2[lVWpmL{_{8F1.XmfTlq4Ti|iK}Y2rIlӊH'kf s}wuV 3<ЗEM4^!g!,Zә_LU^mά(4qQ"V]N(VU(K1q؞>Ю*)HnPp.wjIʇ/鯖&N vbzk[h މ~= .^Z%LZj4:.:ky`@C Ni69q)9FS>^('\C}akTNi hwk)/DMR }z1vc #GaG'WB6).bCԄ9u_YM'TjXɷ""6rЎ?ZӪRFzav">{z%whB` =?"0'whS{5EϤc͕80kF(kuT6-@Q`\J.㵤wΟė;i!R&YZ^Y80Xq86`QrUX>̢^Y a˺U1[% P0e%w[s71"P㸀&Y64k/ZOף̫w_p7lMNæ{޸!Vۀ ~SF]ޕȧL L QH~v (dK_tgEuYkafV^ pER9fhI0?vaJ=kUA9Ra0I-oR Bg':aȋrR~ Yօ#p*'^.Ua*ͯDpjbOD^9{ ^7&u\Vp baH]: M{(09DI/vK$MOu5J4,Ζ2X0*ɵ'I(0Z&K^*7/\e7r~}#*G +)gfAęKqcNg 3UVJR3 Sa"͉ē_feӽ+'`Lz=l?N{N.e)ytK;e,ȗֆ"H 689Yx:ќ.y^6tΞ@ aR$#nݝa2ds? c!I 7 -_dE5n"UnP;?D*N"2ЈY/O,IǛW3KjH ud+mOSkZZh3aF`z5T,~S!; 5o]7;ۢ]R*Rb>Uz^:{<Jf$3s:B_V aD#SgdL -b?)X.?T5ϒl^Mp-L/J * 웟e3K-wFfWO~awL(]*C?ΰH1un{>?6I*lIp : ][?fyWΈJL`dq]a[ E6ovт3T9Qkgr8Pky_'!U[]bS !L>,OUd[i_kSMP6]8 9CHx`Us?ru2A(:hB9!@n@ÕerrvdD :AyNYjDp2ÃAJ4Ȭc j5id$9òjMsk3ľ5U,gj6LGFpNv(/֭&T=}iۧ"ZRO+-P, 1AC)d~ͫ>EVK\%eJǽHJ朹z#2v3 >h:B`ǛLo :XQ¥5|5ۿ9܇YLoh1l mty |9S$\*h-G7˯ Br2PHg63%+z͠4R%U yQĕBf?]i7LI%Z谺aP߹ނPrwÀy83kb0w+ԣ2vB8"rIK%aoѥI\,AX/8@ 3 `/& h~m1Xs(?T^8?dEz:p-ǽ6Ѳgq&&j&Ƀ/Jdv "TwKHxN*$aDQ@s#"|ybsJA>\j_VqBǰґعi_)^pddRBSA-!Vc;R1Q^mm2> ^aiKMbfd_?5Th?ppWCDsvvvUeZrf$x8Dž:}=%qcZ>'Z|p\ʱ+ΖXxh&!)!#r3(=֬.?\6 G3Ɯ1e3'AUӛf2c$fՕ 缘d7}K$Z_c8O{9ŭ ք"Y験4sPl>O<-{ѯ71}M0 FoFݡ:,v?CnM+^VyDyҀK)(҆V2b0~pb z>|wQT~X+HѨM#yphĭ5VP֡*[aaE[4{~ @~̙tb6=>6\ n$PΨ#̩>[Srؿ8.@\!w a *5MUrfm*3r7SzV$hn\Jj$tiDS׼Zgup5$[&1'T~cZK4I l(/ +k(o'767,`n+cC> p`Jw68c9( k:lg`9|s*uSDŠOfVso7zGkGiB${@^ eSlI~裼JGDuIC"Ձ-$QN1Ǣ7R U;Bߎڲ'@lWi(7E\bC{HN1پ*ppznq˰vFN$(e` $`pmvwkuTkȘl~>_-/j/CAX则l1]\%4T+Qߞ2/<}Bvp6@5c!ޓݗ>oB?=z`) HcĔ%?{էp#u йRxY%9xJe>t(}|+G|!GoUV ?ПګKgF*eIj^AR&+p g 673"UM"Gz,YTȰ$N8%-'ƦCU k^Կ? ђ ui(ڃ?*n!`v$ =5~!}TJP[z@g㑷(>,WAUG"39tNHzu 1L]YsJP~֨5{.nˏa{v'Ֆ?ޭax֎IJ-eˬ,\ aǁ]ZF:D* h,~U28*H\H Gc?i 'AΩZ~u`*IpHIut'ưR*((-*-+kJ?YWtjETph!TJ՞&}h=xP@M͜Je0Sg 쏟Ju7 7=A"\ЍTDg.1MV kBuX\44#lI/e 4\Da< Q cEt79 F,0ܶ>AcHN֟זIJD}(zXbÁzP*{t~[t?SF䓨̿CDD0%%<.`=0EUa\ZFVX5m$#|{tK葒&Y"c߫oc9#9EfdR*6S{ort}>/7]6C eyp1g}Z =HZ8bA!\r 2TS-EjrfM]~']ge>[^ZIvoMZ̖Xe9~@]XGt}av0x%Eʡ%fʧRiI޼-Gc 8gE \dyX3*>5jC<6E U"#rS՜ ÕD_bi kMPuc|ZS':m}h +B^Svv bEY!*H:bcY$#@U_qmuWl0j11u K7)qo^5`iN/8*WT'q-P<*^q?>b\O~!F^SxGQY4 PV#L[Bub*6*!ph0 ^~QX,exrr9'<)AlDdB3*O8/92m7zg4s^X=or z]_0 {h844E-Vq±qe xq;%p7Ԟ >r!𔬝pДkA<{¼  w Z"V%Id~^5SWG ta#4<h`i ԠVKugNjO^S'":-K_.+cfuڃPWE^fh\Jr*=?!х ٥. 9,zF~7Tfp,Ib#KǛ6wA=W Z-;Z$8Q0dcp{m R.RӋܣ+q\܌w{൚-w9I4zeEݙjLMZˠw3103v?zQ(&ٯL`˕P<( 2%ksW?qh@T=pi~,Q>̹ *j,FҡZv9%Ya ^il1U?F FET`=p-Rbt+mBZΥ!kcjz'߄d}+k,t^{ 74!JJ M+sntzi@唫"zb/{GeL>Y%NNi jʜ2 =7a^ֵZ0R5Z+]W8 Zb<:_=̊ʠVT3PNrȩy' ؐh<@'h%n/,Nn*}8:nմMX1`o0Et*DXC&'sF,[KG%DSn,}%%.R@d(#5FLvtb*$Ʈ"gc%M b y܅c0u{4t0,NqH~ĭwgUsC_C Ke)ɇ-8'<'r['U࿻w,Co9Z %)\QP$xe:rCgmC*"^_k1sN)cV$Gt^XF<~u k>9HP@b Fr_,_A 4̐+-+.Cv0NgIF H"ox-L 0 7`jMGPˉ2C9"uɋBQ(N53}|={[zWr̚]W 0F3v*z>V_&.3mWC jc)*7 gٛ9bA cf<=F}] r=3^Tɋgը;6lU}F?+$>kLs%+={!qΥ-ƈܱϭTcJ9_qJ!k@8Rt`,sx46F6 |2Mcg{0=%v{Q,t$lH0 pԯ-qzLU&]]w'C4/N7 "[%)1j %JayEAki{띐^1]{L5I~HHfiRO>lP q/uRbUHOBzċ1JRYۿ#l7U瑼+bpF90*]$y8'7<{b bx Ϲ# rxyH="1cF.! .2!pϋuCl6Yt`P R+#׆DJRbib@Z?Y@5u~Mr@ _?s #=ba3ZɰtN]qm,;TX6}+p $EȊ̵u$u3XL9LhN]vyw8e_-O/k~=Ps=<PH)·$ʆ͢`#5IbfPyKSKtxjUF'hu/7A"0_|drڪE(,{)@^EcՅ@6h )ᖚ9D8(gmZW(߇4Ȫh{(6X%j>Tڨ z]}[\ʒ!=a)Ր>dolF^bo옸DŞvV` G.WJ] S&3W|]W?P'O11}BCJTvz_Iϧ$}G%tר#hc&=(E!|Yu!śk^6)Z}`ϮoBgK#fM-G )&xƳm6P"&nyawRoމ!%1%f}f/J%OB0"D0jkhabz05BN#x1XsT^NTRۏq8چ|K_ϫ 忨 ?PsO+"RJ^2h8O՟4\_qՏmZ<_1GrՙwF}z8UQW/"6uQ4Ns1:(SmV#V81,ϗ #9rm8KĒ;qke抶mT6\!x%23;LfjƩ\{ Tss|#6D6m .0,g+e W|⤱i5Th/nI6oR*u؋2fom$MNl-92"sN9\;UBgp_@,pTF9-kRV|; "mxTu쾨vF)+d5woT"Q  yH~8Ҿ?i'6V]|-&mbsiܣuդlz]iYcUaM^mzH2to:l#H-`Q-7(`9ō["k\e=zMJR0m@4}AڴS.43-mՁ"G莻y:1&wSsbDŽ#@ϣǙE(تpxrO?u. o3 `Ez>Y&̭=1g Zh&ph)|>)D0[Ui"O-d'hv߯ԖjlUa3 T.o䨞uG**GiC}(͊ l 55Rt{KoW[mf} oS!贅QN?4S@6S~q]e]k[$\O(`8@gK4/%/!쀭tA,UC/F'5@'sדP9eC ;|ꎩ: q8+s. q@͡{=B,kYrɫhezǻStJާu<yL{7^5lpY_ TMx%2{?.QY "w[9{I07'G 8T׃)SjbAiy8~B( FW}`:08_9Sn8Q5Ů"f Jӣ\K.OۂwEHd:oW:+||4mJ=$Kta4}"źnkV8`nVr1J\\.AUrtW^G@\:XoOTuC*Yhtc2S ȭ-Wg յe >k-0_D8J& kRXB*F13)N"ʣ#] 4s}gsҾ(RL_V;_T{ׄAD?! ,SR]s't6gFQZ< `g(xHji ?ũVS=v: PgL8p 3!o5PY|+mz'jDgX2+n1%[%SX\ k*'%1s~v޶Mirk7Y2ǐ>I t7q='6^QY[0b`ZҜdE}ɹω+Bί ny,?U/,[,*q0t9w?!𠚑dYd?pmjdDKo;:Ͷ8/m#qHJ _j ]Tjc,\/ٖ_6 $-Af(8Fƥ,^32ANj4:ں %Q(4%5?$,mLfyS9[G5툳MJѓf"y}m*E/8;4eEXk% YqXHbxng[=ڈIGS'F#c߾ ')t>Pv (~`|[.ѱD9/eL&u$0)W2p">UиwOvճƴP]^dsI8AK>P%T*J XHd9X!y_Vti{re;sP{wB>_@ H#󘜐= pXg;$UۿѤ6^yvD. NY!irnzGe XC磴udInj` Sb^AL׊ IYdgZ F>wHix}LK'Mw89Y<3Em,fg^v!w] .|Z!=I0Ea$9Cw{6Du/J8}mknLh\washYHu;3`0qp7s& Ӡzh2$Q0<{Q/gO:2cͪ`} 2 bewr݋@ܛ3FcCqu 8/ A{{`; #V{Eʈ^NZ ;-z2P:)Ј^oc N9Z}RRvj sB[П۴/7͈ړ]Ō6cPa&~(^gPQ`ؚ# QmIw&e'=7}yh Nާ&u"!+-Z엷vc=wv\&S&dn@)ow8&7Dj<sMf?c*e\WY4aÓA ԣrQr%;RMWUŽ65AT@j!(?Kz(K=m* h&bWrw2&qS y(^<0 RwŒ{ZNyaŕ./7\Yt4gܲ5zrE6$C lJ'pr!%w_I@?q֢ SCjd8xdVɩV̆p26ߓBZG"U>50wzߓm4_3✪ 杈}M_Ï1pR-j燂ym0FF3 qՋaIEoM)C=. ߐ^T|[ʼnF˥yɃDכH7z/k R &iq-3[n·WdwC%%(RY慜o_Emž%wykXYӒ!S"]-ŧt++Y(,1nţT'8:%b~YeMݑ ,Qs?.^(UO*pĦ"^7ķb [`6y@UgB6N B{ds:K!_DE}o7c] yH΀.q<}8sUl 9(1LH8)ȅgƂP?T6>>Ǎr6B첄nY kIl#@n#nK->htmTJa S$4.30)ƣ]_2T;bh!;掾 2R ZjEeC¿`{d@cf6 q틧|>9 %C/#$o];D=Vi].Rd~BT -g} t,)jdNdc\2? eqH#DNhkf<;mx5-|2EyjL55uŖxɯsa-_0"S|/q*s6ČNO23uƼ$m3/>5s6aL |R'@[B1`T%9u4ҶP(-VDĝZm4$!95^4d?lv& ^yB߸s9HOjHBnw܎Y<ƞZ#_sq?}jU&XM|C+E  > 0 %Nk[Yy%ZiOc@0H{jdb +Wns@Nq1rՁ t$'Wrg@{`C؋nWQSk۽nUOL*3>XYܐf*ɂm‹22}a\jNHZuXQN &,>Uv$O*^i@FQ2|/G?l }=N=g:›* AbZXvլL?3edua|5-/k8Gο䭌]pۡ00cjZW?9NV WY, dIӚUg^Jo#u]Y#wQ@څ6րx`'x<ӘF,u<J:M(VxhĽ6k*b$`kfͪVgXnM)yӔl/7G}ĂՆ ow ~ѯᇭqmƻaha}vB'Q [okUNl.kw ;4uûd3@sXL d^_- ~@sYtn̍ڹ!@m ⭜< r֤1Ǝ;1 YkJLM֬,~rh&}|߿KZ)*bRWI [Ĩx$)pЮB֣53Lyc\@#bQR3u![ѣs!\ =cm/}^+Zq_@ŏ0,[9ᤫ u2jdPwnC2(%Մ} y SW| w! )6T:P;G)vy4X4pګT&4ښ4=4"(e섍U 8ƫ3m_Gmʃ0|<*PPXYL]SfT|X68o'.Rebb(VEk lIu?r>=o Եuaxj-͒ K2mzv GǼDPCuˠ"֝L 㪻2)QXhٷ dK)U42H_(]yI$?òԨJo`}X_6 PѴ-e>Oj73HC7GtklR9I@MZe0~1Qp\inCSMѱU3q#S3&Ϭџt局>rצxdo-7ßg=8#d0q@!/C1<; uo 0R,\zp>yU..R<ŜAzC7 - -kG֔Ǎ^Zi£i玖Gf4`&/EnK6HeIsYXnIڄC0Kd)~0OQ*\=AY9Xyi Eվw6!եxL$~n+"ݚs?L[ $!R=ՔkL@wz,.:|}ɏVO5.]th;V MZ;p}(lP΃p ]݊N6Xg qo>\|8)G)XzFEqFiK|mFg ʥkW\~x6Yoj Y(Zgɯ 5N)iVw@3O4@cZdӽn!ղǤ >32 BxdnD}Ptt$ LhJ oKLjU"+id7jĖצgmM#۩X=O: FF" g\8o"6{% gܐuX DŽDWӂhZݙTqf5ɦh|!J8&Z$+ѠQ%LQ,FJR?뭠 %}+^?¥NF^^3zYlEk;TwEw'wO{|7X7_ܡV T- hB j-Y a4F#gDR\ ܥjۢZN.t1+'gZ*UYA,p;c[$5u֘!5ٜR7 >=[y\VH>yiɸ8jpT58 熜s*j{/cp[4bQl垃r|dMF;|"ƠVE\,-ϯd`)͖P(߰\繌 M* $ #@[I߬`a`e?o2+C u,%S]{R#Jb%g=sO4/mTI95YGmJ+AL2V#ZWq?p=6/y.Spm])J㯲 j{rB@yś(&|&O'ZLѭeeXGCېp  y){t5e0sĸ'7JSw{v}4JUPJ^zt~KexbYK 6LoǤn(Ɣk͎vS9Ko+f =F&GKaP1Zu^3!z[w꧌iF;gR)1 )1;83czyόzvWOoCI,lHs nW.G2n~gW U Yb(K2};֯* o3CM5tucD߫@-1'6bh@B> FVr)L:0 YWiP-7glXNܬ8F7pV6 #\NI'n =k djy(o۞A9C[m @ ]"iW$xfNHvP!qOaJ7ᗸZtƏwXc|uUe^uOR3qܪr^<>Ą#N[v69>|Xkj6+ H8: 04Ixt B`j_lo9{R˻X`.2HU084>u CgRf1l+50/ƣ@Nzܡ9GC*ĥqUq;RuӁQft1yu="[wXO?痗n$ ~@kKs/1"Jjug? 2Jub3g02Zk}K#rI g+T_澛c}=܇ccG,xrBH$ruik̥tMMHiz!|hִĜȜu0dNlFZ.N,etQW Fg%Na1+ yi[}9o<'shcÉd:PH +]gwQo"Eqry\JsrNv"\lf(Hv8{ ^G7_e@FJ!pܗ[ m0{(8EX`5~˫Ě1MIrWsb6 RxSM%iu "xjmpoXaB•K!;;(ñCm M *"d|t_v#'ԎcHM 0R ]Q+b?=xo_&r"ܴ+ړOq z#yquNPfv=TZ50s©3ݥ ߯eb@|͠5֡lX#aSDxӲnZ}6Ҳ t^`j[|i1IY;5NV{8л] X[}h/7:c878Uo+:T dÆ1 OȏqQ7X~z_@Z"|h~݂^T8Ɓ}Z+ kTd~Rk b8(`kЅeVcIvAn+x2v%}n!fc^9&{5W^/bX`7Y%Fs d08!Fy @3 ؞]p!r"+`$f:| {[xa]M7W菔y'($޿Q#I) rZ@Oڛd|Poѫ"n7j\_, ]2oH#xP ^nn١~B c{^,NM&F&嬯oғ%ItK aILnF+Yn*-esw #Slq\ W,ʝY|tmD !vFޔ٭w_1G_ yK0!4/;LrjzOZ0+.Wh5EȌPslU;Öp݊µ"e; hFOj?fP)kvPޅ?Bo ^cRr4[%.HuREjf݂/#`7z5M" 7}SH>>b?G;ANM|Bi^טO2D̮{V9rv!|9ʜ1 w,& ,֋Z`P_~{_I]rvr4$w(xteXb> ~8/BEeuЛqI *+F5gUr*5`QDˆIsg?ɯWj1`T,|viWސ'mǠ܃?B[*vқGlқhH*# l76 $>nDFkȐao@RBۇerst$%k Sݕ*60Iǫ[M8Ih t'Þ %nz9ā̫Obr>ޖ1+%jO HAQߜI9_w/:xT)k@H~| Lm}Zǁ`jUaY縔;$ES? ]-q"wI 2xˮjeeTutPR?2£~MjN$ ]t&"lG OZvƢO[ucG)IE_n;RUZXlCJdhHmIxe+(K%UE]Nf bxwj1j6P|b6qv%NYw?G#O A|gf9D\x {UBkHC9ޯuE]M2Z|ЪM†bY}]^ho p峎ئ sKbNn,Ӆqh2yCGiO #dj;8JNGH- 2#m6zy& XO= g#M!mvu 婆}llPՑ3&adֿÜ7p6a ~XR0$'zſ kS{O^* 6S7 o)?u 4wPEse*b-l{{|#LtB{_GpPѪ˨Nhgѝz?F< ~З o<*jRIBl$S Wq4$&IlPEΣJbA5|%v@A/h$74]΀|#J[9`b/CD1| *Ǻd/@6lt?Ē䥿:ލh4y݂MV:"ۙMJ&;\xP@.!;Ozʬz [ _؞ЋBtaJr f||0qSB`0VM,lGElyHfdKb>|Vu25C^W|3]M}D>6}4LGS&k7n f!:a (S}1I3rQ쒨{u.́6 Kfu KN}pt]B[hIX^9jCb6͕T ĒrwN^qi>c 7sUy5 k7KےPlMOnAgmsт;_9`/IEJ!n ` %:VۋރؽaKγxwCA&R>?fIr˞hk0\KLa]P;v2VE>|{I,@B&iA޸pG3bk"Ó09Q8ǟ['qQnsGk5.sȀC3DB G,.1cBS*p1c؊XTx8G@Z~Yw^^ 5iC1X7,pS |0lP:-O.9`Y)E~~Y)p$U\@_u~%k:57$=h%j$*73l`׀`W{ ]Iv ^D$٨lyg(g3찪ҵ(_TLo!96?E=g!&ٙzG| ފu߳CBwJL ܞֵ1@nmhzŅ%Hf"s Z9' tf`H\[cV`u;0fBcYm8̅R`m)'M%G(x]9ۆ##դ@}k%Q4Cm~0Z2~}n(NFcuT*,Z?ژ Gv&nq;l,jz7s@#PԱ1JOė* > iRBt0uA԰T߰(Vz5CuWj6|o)5,@ݮj~˲R@2ܗ%z XV)ts%lD4R=,mögCU*Ͼ_p@EL_σ `w7XGcصVrҭ?IJG̫SQ [1,HN&rinN~* gȫ{R|[xc@%JP1N;jZV m'f8}[bI\t 0>ޏ+q4LodWXqK{{'yUS`i¤"N{e_M3fsVM)|F`פTSVn> v٪%HS. sL!HֽG |ѺșrQeNx"d /DMTRaѝT(wn6AHR]fƦ@N8i͠ѿhm aT,͠Z KXdmRjozS@_DzT,%d=#>pQM=tb`s4oуq4#\ `cL7$0.8G)`h9aSDћHѫOmeҩ:'l1S4:hMV"caw3ZS /٨y_67vVw< ŵd Vٱkb=[Un`BY8Ӛp|j8 G zUZ;Xfz'}q7i$Xb^(p؟sHXߪg>87W$E4Lƀsm\FwcI96Sj)$ו9WC)bu'2*7 nU5g4`TO3U5#_@cYrcDsBq)Lv| J0keFkݰZ ^^[%wd^/z烘.>Y.ofyr4JzQBHE21ǘoIF>Fa/m?ԉd':΁p`~`VPTWܣC˱#L*pL`kM,BR,bm?yV;vsLy")?4ǖx.It9P'G{WNi"?|CV6Qc⺟@e4P6M'\̍leT$8[MšNS%`}<{mpt"P1W;˕ L0ݩnX#5]ɣqVNb/oFVs4DG = q:NG]&pgꘒ> {!Fb.+`X0!kt^X~kSƒ+اM\RUӯmMXҿWe?=>AH X2i^XfL3ٶ]jcABVH㤄$n m^`+ylSw@Ce 0hxnbjJ_~JGb$}@28Wcl@"5Y=[6ݼ׈&3#߂nu&Z]w,ye kM;8tր`K-#Z6m'j tI$ꢴR(/2V(AU]P-p |I޸Z>:)cyP9vBMnQۜ<̇oEMIi٧m'3y=a Gb:{Tۈ7KbIz"de~g?˟0}f&i1bL3ĒL#XsդWD[oQ)s@Wڻ Z^Clo\q!yT4gjwkcf=&& ߹Fn٦'*Ǎ< fKY^ OУ?o[eT|C9;/ĩ10 Sl+m{;`kDGar/0 KMaUq+Rnv~컘=&$._YJnOv+&U Tg"a 9Kq Af'rØ7QPd8!|4zs+| cTdVC;736A0ZY*`$Ǜefq1ߊ4CͩG7-ewVӰ9 -FMj([O7/7)C;131Ha߻8ƌ,c+)`J54oͰ*Ja5>7nY3 ElWtiExK+ _Pn`N8${P_ݗ(;(ڹѵLpqe%=6ns\_C45/Vs ˌ;( zxΫ+)*2+!KTln c̔1BX{xj&#;Iž $!3x/NoΩäW ˷@[!,j{ZxL3v ѵ,VW۽j{"d9@{|si5ω w )Td؁?rt=}j3 =SL qEd (`.o$JuL-c9ջETW4 4g,\̱B!]wmYZL.TuWZm˃R \p%&>Z*UWxB*!z~S'(3 2߷U#Oezx4e$7Q~~#(g!DES~)=q'1W?fr?%|VܻFcۿNd7p(ivvD(&}HAf2|tG |Q3W#>4KEeU>De9 8Sw,h9\i&BB\% أ6z6QRN)G)*|+0a8 sQƪb-UMc\oӒ^zWphc`ǧkR>%3w{QEI2nozٸIk3S :A;xXW|*B&(+]jiv 44Q~ijqZpDHk s"C KF *pk83%E$3lW@潜ͅXc;dscR9@AIi)/ v,QőRĘQ-?tSXE5M2V%3(ok/-dggF8em2.#ya̖h`A%g5$Wڛ\'vncBC hmAd)ܖg;OOK?.E[~gMZ┝ysr Gsz>^AhB!p2IkU`ԧNR~ *F="V:'c6A%` XH  NBo*|V9 Y#eKfGj7KKХI彅ՙe?->w< =ϭ.V EYev+wRpIJd7x6jzh$N9j'h_!枣tfx1w^Tpv@i03lGQIu3#(y g r{d:X× 2oU?mvٕeFM杄q˺eqzDj<JҘ=j.}F o?`_W"_P Ύ&du+A5ZLH3nLgZW29O HQ oiljC40SOA$sڻ3OY+QSáĥغ5 CƷ+U,XDk iܱU"5ar HH0]{CV? ݓ%|ׯwDj,fsLISɥexS҅9z-gN^• tVl[DqWB`z:/AG2s6w:;s:!.p5ά5@ m8bW|t~ {1O4ÔYˊ7Mj!R7ń؟* qwGXXJYdezn3;'eϐ3^(iFH(ceF qSYh ޑ) Ci64P5x/ى|l8L<:mdEqC/řoɰDiO>Q$žJ1ISv{i?LCDDx5=X|׉k019PHUGDY~$i05-r>HL>?ef#ߤv.`}huVv]'Bl`IP Z_9A$R4k[<ggX.T2-уcvi/1 O{/ dQ9Q#1D ޮBW,B#Z"ONˆ;AIB#: 4#~p% sӍD4$!u@<W3TU9< mCuܴ!'$Uw#7>8 7?GHڏ1|{?0[֣&<O#$ YCЄ݂rJ CUcs+jys0ƑczSIڧ҆2^QN.獑uj AJT_Z X{+'4^ AT]倶±S:)YTd(5\$/߶v׭hȋ-6GƗL5¸&=:Q#u"̎?9m#qm=e'SX<~(q9Yx!1 TM R23T՟ 6R'9{D;VdÝz p X~ S_ݖg~aTŊl. t㑎 l1l# V$4fGcoeMw#j HIN?a1`:^_;=7w6-[ 7o-9c~eBQ-WCN5d)y߂OnA{xz۟Jw_x+WAY)i߾2\*d4-!ۧ SCDSk66R VVɽ/qƒ2Àګ%<5W;isg :ub1D(!]O^(ۆ)DϹݩ܌ؠtNy}H5d4 ϼ`Cݱn:1m$I\}EH]A_*9^\bBz'I)H^ Ybti>p-TKAaQT8u!3X<bwmI҂҄Ky`]q01V;"ϧgG3nt'j[gc.XJ - bK߯eV f}'\PD;޲JF ϯzGw*Y6.]dB pٷ|Ad|7s32$ ?q ~q:<VЕL{Ce\x>)#Kjܼ; óm:% T0l.vn;@F7>b8]"n9H/zy2kw0Nү@3` # #Ffq@sQ:0X}v܋^FKQhH'XN';9:J&ju6XB^&t+=-}aK2|^p>8c`~ȠL':5(1q$~녎3s&gZ(Z9/,soOdSŜN1,u]8׭@PH}8>zsxq>V{3R yַf`2@AtՄRXL$ A\_9ؠW"^鑋PƢ1)l[Fa /tzh U0~P uc5bXiQY1 v~XmSOkC1;d;b JfX;h!?xVv K?dz<+-29F7nԣ=JM{׎Orj%iŠږ;ul>}Qߦ9B! Xd*(nE #8K3u d'W1=#sL^3jА+ yeg+o~WS=Cj/ 0VHLqtdFXpz#{trpd0 FAxЎ書`"$ II [S"^H')RF>~2$x\< PEAP=2!j϶ :_c \q1nNT؞εD$Lg2A1j92E7A_a\d %aYQwũ9="9g3* pH92$l_b˨d~Of# `b$W0S+ooE2꫻eHD!0,b(İ<@#DvKcFkc!^gug0V 7׃\^zd8b*2c? qi)J+^FQZ]mT HMx]NcjxnzYq@IS]^d"`x( 4igsZ"O7;*?*$Gݐ-v4줒M`nKC7VKe/"sEC'@կP |Wtq~Wxl0hW;pcT'G8~ݽo/0yԋP?~e,Q`?YsxXyV%Zj3KPf^ OB" -yx[pJ\ ֺ-$yn?ftR`к~e>h{6DQ!u}Pib+ ۔JrOH߈UDwx\/JTe8iqNǥҜ\^E(W#V%WD~N~̆uHDݐTAZPR8mXݛW$k"֏]1ju!#VJs} 2ø6 /kO3ď:d?ƛ7"4(˯H~xYg,W`ypb\C2N Oa9ºaT0U{%jv;[ "@j^n7]8Bu~jH6gK4x }D|#rBTC56Z+CkлZv3ZYE3|"S;3 o(a{OKS6d>ag0, k=S9@bl_JT8iH7+u>d}zs H{xzD'Ñ#.$s\TkT`9`YeNH: VKy{RIP%B_ܻ&AkSqЩ$?Q)Uz[,p h/,*`;:xi~, !% úWakX h\\3mZgogT%y {Aajʈ1: 7lV˞\;QJL 6O2_\Ft; K潵>GM2OP#zR Wj]dr͍-LTeXH}!it(">N%v,)n"qdژU x8Un]k >~:k[hVXQk2lRZ+:} $~z(X*d _r#733B o*EY]X>~_ BXҀ݅TclZ@GNjz8t+`e{{uR[C mo &w6Q:{3 M 9pND{L\jҙ>DY[M&CWz{_S;_pRuuG jLBĮYJ.?_0 t0۾ [u](¾J,J-[sGo( MZ"\B(qߙ]gSP\n("*ߧNjKgy)jXBvtw@M41 d^@It'댝!c:.y3ޛQ z{D&U.oF!P#5BuÉl}PiĿIءM9#x)/hnqDgW0_"(y<(>[ !`o؜08!38F-\O+YA"ǁg 96(_<4SvXAIX ܂UXXF39?MhN˧nbLtd`Gfk Ƥh9\t2p)ꎎWrx]ߒ;sî}goCO:= ^['yú +7Ȼ uz>ОD9~edjn1)b Kyo 5-{B~k}\jÌ=+QTĆE=2R%>]bV" Ryk_+_K#\Qk%zGGŶUQ',m15 R^Cd[J``c_\c}>SJezrE&B{&'{,*JRzŸTP<=Q LAOZ8EˎmjiskO Yu9k%^ = &7sלRN>3# Ujc"8v lǑgv.kY a1|'He?E'_[1(兇{.f$śxbe/sΟ JL81gjȢR/EDF6e+_- 9ܮs "6%*ivwmW1Cuaa}BPVO&ЕV %wG!I*89;vaSD|+1YM5BF r6ګwbD89fn;G΋=@g˝2B7BkxB1wPr´"XQ`z((g)yͼrY~q%VYNOI,X $ &6ȷ3`#awnfy7i0-pziV:mxzdlZ+V3\sLؕD_.a3Y#o~(w*L3 {x]~OuDaX)>5,6L$!gw73iߢ~Vϵ '/KN{\kjy!+Q(z"ƂYԥZw|{ E/Ny|9b~#2P~>hBgLQXe--Y̫5lf>)rp t_r%WJa2:PDjѻKZ YN;Ś a ~7MB%0*W *ީ.aޝ$8PܱۓA9-qsm*0b"{xۂWFx9{T57 ěD;@.x!*vvc"̶XcWrw[ZUTMpZԔ~>(g_DmH1+<7ѸW ߎeO+y5 oDvUvΔA[W6A1jE%WQ['5x^b^f3?Z6G3ßV^~C%O6nڐjZ|o)sRvVޔ@04ag1ĪQ_vSw%*`_MݛN̞9͘ YeL Y\mt5ԉjiufʏg8rqCo3$s&AQu@#8j7θI+/© +G֞o5LtPe=!A(]/nzssFGx* ceQp, bh&WgcwG-LCpT4vF$ڢd=iuD6=RKlo5cNDwPXS9n)hrR t[bxrPsI.ƞZ&>S!w?wO8WzS';ٷg!6F 12/QW6 Gf UԅhٽNIT?7*spJ ֍Xj<tuc4DCڥ>*嶵8du`h6CJM@+؈뜄kJuiOoM g2zE&ƍ氟hsV"?nJN-ܬ8!ѯCŷrl(#Et m8Ao,?F:bh!&zؔ%n ?U;Yc*J `R+nB 6lW/HZ [bӽ6_c7t=#@ 7Ѐc0g_)v(ILVd˂nfrtfw bWF/%o4[h-.s?(xxDԿ).N8SH$C!~YCGZN:'>WP1k\Q]DƌfIRYe)/$ߢ}B*]%/s/ao}LQY%T);HZYתKi/2VDFHHvj.fb'HZI(1r|,0PCvDߍIj=+a wꌪJuv͍߭-e|gσ'%[YK8!l-cڔ<ϘFqpl7uܯ [**"?VyBl ]e0k0eFhQnCL ob?JJNˌ 4i{IZI'WcH2ƕu=xnO " u u+,̃B8LH܍#6gr+Rf${LcFv| h؉N*q9َ$ baZ?nJ cǁ0G?g)zH{?` ڣ-yINh1iSa n"r*ҁ P(==lHyn{#KXgMyIaJ#2:= Q7`s-}}gj?tB7K6$5;]ȹIE+ZBd_Yl4QS!σ:g'wfU3~pqà Ҧ8/t'4  8U(: EQm3&n{z:I `x>E#؛{ៃ7Qۉ8RQiJ阢t-ĸ4SfH݆;1VbtQc;m&!^*z Ǝ|lJߩƒXq}ħ!4{do`yxԉށ=TpI8VSQӰQ7AH: g]a8w2ʣXFev m0d$Hc"6F`>,=z2 NAҵi+d('VӸ ɸ=7&貶)'ܨzm+iqVo4^a糆*sʸA W`M75[cbCb󦤔LӤuyxB<."`4<)%D+go67ȪZI|0 ϊ,;l?5mY (AK%:DgMM]oz%=<LB"^n1O;FP2?\"ao_n?%W轊&_9?jw'N}oMyYWpKKvxir4)y&oܶb1]`_i)Mld [>v|ϋm$?ꏍ_쫃UtLF#6K>ORyo };J]Ǘ wwP5R|Is!!lη@v5ujkwYȢޭ%J'Se"2l \*{b-T~es0FS=ͷN)mRw1Qo!*|̘d=Hʯ=tu껸& 9׸PHHǺGAr:m 4-v|FjT^^7>/22D]M.X{G_a>pk9Cs"$|+HX"$LA'>0nAzcۚx63s=墫I[Z@tD֔qR*F彿&* 9iOFR2SqW^(_tM}:!W[rF!"mpW2 %v0*E231b<^gz=!NiSbFzp['7ڱ.egQ ln3^n%#"8h?WH2xa_pS\ Hn|2R-eT[ղ{ƊA  2rvp6XhFcXwޡW\NA.*Iυ24 @:CIցDHiMg>*j -G`yJlc=M8e\O|f!TgIz=2n r 琰@_Bq?lOຬ:Yc\{x:\hѧnMI"fiI ZG?YjKeO4JԦӒ˞ V;F_-^-N=t˼dk!7x*\A8衮oc #!;h\klgĠO ]IE9Sءm邨k@衋>e:e+w]/QNVa%PzB:`vLލ??r9G}h%'TSmX)Ҕ+h{ͦکBZ/xl(_+Z l +ɉN|B di;o% 8@-.NH{$J/KfڨdCÆ>v bό [J++_ǯu5ǜItNsu/7-;79*B-@a A`8f]a'.CZHr% t6K)^ᇘOe k|a .ɢ`#_l()wr7㔼3󭵒11nt&TI\CHՁFPNqm#]XBh5eḍrV|iީ*E6`KhrY5#;Tp+զaZǶOuFє"2UB o Yoͤiix_Ku/]DBԼ48Y _f;"ʑ%0gv5|P `v*e@.7 C 9cD1"Hڋ<4MG5Ul5/Y_ gHAd+ :WeߍiOw H㲋I}& 8Gt:,lµp32M5!Αw=Jj5x<컦?T5Z yfrnWw:sMK_4,!c&leu~kVJQˉO^^T)ЅWA͸ǫ(# ݢWKgQ ;Cy:8G{P5# #2 T"mwqiF\1$5Db4sf*3݅+?7J?}mS3NS!U_9q%w#ĂP D̥я$|g"+TYPr[;Xd."P |{jUSD,7UNMM;,UH7!6Jh]-+,T [8.f^as)g(ۮ]R+C}!UU t|`qnO4"*h?d7ӰD@av0aݥ71/ER%{؍CN];׎$CYhݚa75Lr]Γ>yy1/\^h,T[ .*%7^q} n߈4Xt_b8aPvOC;]k!|8$` 8S_}z81,4 4Sp'4" m޿$ڧeb;iu!$[.jM >~/TCֺػ;r m bh^A։Kzk!w>G4? OHl͏ e2{S+%oy#w#S3@V$K+qFŊv'5gfJcVZoP22<BD}xa-W-R1d \Uuw$mMVIT2 !hP׽rq,D yAğ~w݂nO[xwpWTA^K)M|#a0æ9~TsSUmHj69xiZe'܍% cwq7~>J-BhG9g\/qrjTUӯFRɒZcd*X-@r;DM0Y0Pn=<9]~ i.ѨF&݊.@s0-Ppj_IQ˟D5GMӍhd\#ocT h"Mx蟐Wgdz:X4Ol.A ܥU+a7M3@=s>YnpF1MG MM s€/e)R $_Օ9m۠]SqX:C8v` ϒz];~M.KB2_SEV.>s@=9dѬ2:pfMR8L&°.lιYQr!l󋓈 y/ ݚ30 ̸y:%Yv7,b Pm NWrŲd#Qފy'[ h9qF7ϓa+ د켦@J *k`u 44QaYxHȸ//_=f-Fg0yHuB ZŊk^Q?[pYwwY4%Wݑ -s"`էU8uƍ[z"$Ri7;(OZ?V[_f u*ecQŴC4!>$/ǀȟK;)`&vyD Z}XuFaCG״![,y_ ~Aqx<^<:qq+zZW",Eu#Éx1-%׳٥K<w޿p^ў2L [P<-||GT9#K 2:QmhNc/ҝ &2(NX6)M*ILV6H I͞}toɉX9UfP%h3BتCC0dA'n^ ;Ǡd2.lvhFqޟ!!g#?x0UJC:QfG&@AdWQޭ*eA-IQ@-Ŗag(f,5oa_ݹv|NY1_7D}qa>H$R;b&{kAf#_ P-~CWdʦw~X%{xi8#L@fKK`!Cl倫)ҬZ#XDzRA/kwȑYiͧ,{k4qm+P. 5%yIi,3E}99#]G(}uSU xq@8Ho4]#N›^~DU;pIOQyΜLb s;"Acx#,R m{.AS}||*zn**f*z*g7S菋b5>[?-PKOAI,q:FBW!3v^I'iHϖR?S nj?.$͈27Ԁ?"xH)E:g\ ev"$ xMh$7ry5IMQ|=Fk Ssd[S8Y;HA4?#ZV0]ӄ:4/. g)uTol|#”oSji_JIIӞs=dѼ!iE!j]pT8*qY]`tX ޝ>I16ncřp æҨ*M5yb{,+YƟ7(4s!qmN̅Hr/0A%|#d+cUڕeKC]{±(jE0M.#~otCa^};7N˓̳|(n.\Ѳo ppQsQכ_y̸r2s[ 4;̭dL.R }- }.˟D6Dgc{%D4YF̑K¢rMw \odk^MTt!iFM޵CVCT8x-G9qbpÂc5$AYRԃ]X`;x;ʁ8"5|_F0'4 ^)օO68;"aF-$./a08d~J CCz})!s⏛:E?pĽv%D;yE3 ΢hAѨm_}FI]vi 5-ټiK[WbIkvdH_ڢzLGm*n ׸1lCxfzvRDKmϟ{J 'ͩW¿<ΓlvgZkWqo@^cMU΃L|I֋lB#{bs1(G uj$ )"tIeba3lTC<7KN^y' XmIFҫ?,waѽ^U+_^ TBۦHLS9%bpiOȊe{?:P챽jb[ڢVSc rUae*_qoZ_ˀxFgS/ xi(yUޛf(j@&t$2)`ie7Ҵz!U6co90Z8d?Lm_iG= ӻi&D{xuSEoxw?^1&=ػ@Sb1tť2F @W{8\kFN?G'l{ndD״A&87 ^->~E^+`'_pym"֚a~}KK@ድJmZf# V's+ttbx_S6oPms݄43s~E(&W&LCF`8{{DPkH#ܓ *=x`v呶$EW:A7D-X@۝59Bi*¦NMT6]M*0=W =J{uL/ޜ5Ǵ4(??[Νz/Qv2;C7ZiVB.2eFMcIJRmgDhUobz_[# )@vˍC-#`##s]?^HbI×+;d49'!EFc^D)dkգpU&|_ie*Hp]?ɤ[пPB)}bqI?mP&Boƨ s팥AVHBg=uQ&Iy+KeU>ؐ*devpk |2CMA GvLep3aQ` KVVxo`4ͧ޴`rp,NTiҩ@BC T<*dn 65EN~ZWbFVpEy,}@_ra!uyİkmqNn@F}~ܚ~_i7wdab@Ę2n2ew#$_9@kxH1['f]]bb%lQ +8e}V%^;RJoX|sv)x /ɓ"⁈G=vN( *l.'S9XUO A9R#ݑ"ͳ ^o .T#&}ل ;!oAx q( X \q 2Ke)0+we?1dT396.g8=`Y6"-ȩ S bഗR<8xGr=I ϛ[=|.P dN0pOh-E)z"3B6L^%zTMxXRB{TlK;-7鵕4u4X0O#Ys?}SdRz^فH&C'j8~t7LMXqg ؆*'C&9gT}LQa!J"$u13awdsnl~\mz :4$4?ҽ MVM5o;/&y:KA?#.xJ*+|X62 !ʙZjzf3&?o}nc# A꯶ CNA.P.ĉ3FumUT-9CEqĺ"i+i&&WQO𡎠H<_-=ʚVs[ܗrU }(e؃L6㹘gCz  ,q+{n{I'iJJdaD52ƍRHedp,ek{*v}$ 1mqU0ێIS8IvɃi^d9y1(}n:9~>̆Rr\;$N+cõ9@ -:~\fDTZ&3$`ޖ*X[Hlu_MT N#)XҨ 2;'a˲qW;wcaPiwK=wՔapɉֺ Ǎ9;}o,*~C> y% l|N!b }~k (r@eÆɛpk%.o9W2S (>93l0cpЙTѣF/\q,q;ODaEqSsb/{P#?-z7%J!S+"*\'?vN?g0_b%ʉF @J> FWAM[ yppU+l_d8ѴuTjͧhaF n1TW`O,DQ N$ѷ/רnFhPu7 ؼ$E R8+5a ! m/G#: ^#d\e4n4oZ 5Lɳ\l6-рΡeζ?"5)zRDQWVuF #!Rswi:i`e-4bW7d-zgDojw'#fCx `.QXi<8gA2dahllu*?M '(y.Dnvp{=/㇒0 R'|[ʵRk OF0iʴ9jĹ+aTiUAKaG߃! \Irսe:>O*E68d7UwI['s1B-V-͹HHg&>qeo3q}~^%e=ֳ&jwMiZ|!@(aYcF#‰b[I͈KY1@9J̛rjAg7 cP6CŒF:]{NAZ*e&w!3mzw'sEvͰU#Z-ڵ8u髁َ"?Zmv .1C_~.3r2:9b)`Ȇȭ7Jd8u]mt@\:?~af3GeVֲݭpB'b "+<ƤBJ4K5C qep{HCM}".~|y,4upNMz3Y=Û$&#>26r8gT_&M4'0%PzkG;Cd#nnxR:@z hSx>+*j P襡*:AޫQu=J孥 /쬷3ZPAr&M0_E"(wIa[p|,L߆Qw2ir OwpeMLQ({M1벾5o;`, ǥ$DL7QI3 fIh<&%xq9_L$4ȅ3+l!r19.*ɂ]V-sk{{szPc2ejv7w? JwA.o:si6 Ũ93Չ;S!G[XvklE׾ $X9.׃?{iCZ={j4*B'ҝa¿8eƗ9 Sh@7'hHtdi^-ƾx3XYbs K AXf&,i>S Њoy~1!An mLQL9|.L> 9ym{)< .nZKbxC5$[piyVLH$m'kY.Bǯ"+i켏E_î;D6RrN8lOjjAXт[$ M=Qz`2}ܙQC/=Z9F&_$!9Ѩk`m />j lN?wwQ1vFEǽozݭ>lgvtiF䁒ˎj#B.p]ziC, ݤWetM1X5H@P|:Z[=`2^dmk.z9*-s%qƁԇ`|.=7ԼfbC^|+u4pT'wbR;;R%/J^=--qvDCaVl< dm q5@# r*:U(:kHd'D-*JÝ<;*Q?Lס1h:u_% su)"afJƞ݁}QjZڭLʫ 渵 Tib'H_[#\%8F B 1b7)#-C'l]i5 -)%v'Kvh} rkVwpS^r>z% DM`}e~UOzj 0t(-Fzsl<F9!nVOWq[u*;˾T.y\?Hrgb[m3u$5RQE*XE0>T+G7x~*w]<׺'?R"mPw}hw *VN:0Hz6Ѽސ~p$Y7_3Sp+C -+XTR=>AfZRGZiCjH!+`=S ^7{zs3lZ/;pM(VKE i"JOq÷jzB<#x_oyjDSdχ'@T2mLT7ZJ_5K[+A&NB&>dʧx+VUEBⳋ[]+u>/*tnZgV!zI$C^]Ա4Qkl -h]Z,Au)sZIG#o(NJ;X,.|z `7rkC*3|XB<Y.&xa<|5 }Q 6L Vuʏ䚱)K?g#- kE~?q,hk#hU+E@C =І{* AzjFv|s# )PC_mΎx`(f<k H+Zf"˧&6),U/^:Operľ8Jj'tEy}B\JWgMŧQRa k'/?JWt6Q|Q5=uZZtOrH0,T1r xѥ<]{$aMJ) d^cCjqw bj=) oJPG%Bk+%cl>DRf֨}b">-{ G.>X~n싯BLhlW4v,ϽsK?WJ6;,;ydO\Qt)ORIg,#/rj~NбhDKǏ!@ie WxhD `Ĥ<"=Gx $  &KNZ.(ˆmf[XFpv%&IseBrH+dP"w74&:LDz,GoOƟ{q5i7^F#N"8+?Q!!G(;>6#jlh)jKc<>%Š'as~lQUr|Ur0T-6㎋e mgf)F_w,. *VYgD| xlh1bO~sC(SUpYo-ii QVF52!,]z/gRб<Hn(4گ;=@bp()bv"us~Iԥj$Ϲe}AqVx9D*8唂_I9B=l.#N%Qxɬ<9 +`bZ҇vU/6j^Zt31VNw9c fs#a̯=m v˟] u2f7X!2[OJl'h1\z{qo6/:H ,[׺|zXa -\[!慴mK &YvZbQċ8YYˇ:YA8_`3VbI/*,f FV'ZA{(CŌ}boo[h2udI␹ՠ@k-,؆᭻mAwD˒vh &)PtDoQ?G(ki$՟wdJq:x܅׳ RM-p5VVΙ.Ѫ*y-^L cAl7`r_FgdNP$ϣ IeO ój~adբbm)-RwՖ>_vSÙ xZ("nD# j9HPO|9KNyY5>٬)*jAh Ox@F:A=뤶'r=$0YcGUr=/=]KqLNaMKx@Hd'пWޓ½k·3WzIx. GQ΄%T:9.$z'k͙'Mn R`ߣH|-  Sc>-V>!SO$顒@y7Z#\ g8ZtV"X3~~;RK%N#-7W^dv͜K܊̰M8G^r@ecҹQXܴkJ8-mx)6s3MtM`p 'p* ×Ejjtt6XM}mTXya>V4`вq\po]u)BXA:VНe(bfGCG7OC½@+@0`[-Gk+ݤʝ$k7P u-[ъMQɒrIC={:D a wh8$!~\3̼N᠕w"WT&k~Oc0k <HbN]rrg4 Zh94{`鞙Rq^݄N Dp(6i'cBVtп?}>55P$xP5OPƕ ڸb@mG~W'R}~d^djRK-M8{B ,]ar(I@&[~*ܸf\; MakL\La`qmj5;DaO5е\lp V=j?3rFb1?vL?TAyDUm=PwqoE!$6(CdD$&f/7%}A#<F_Rx4qjC ps\=! 1HSx=Ot|EzeTI`-zJ^ka1ҍJsF5'THmP pZxEP{Pp_4|+!T'X?բ;GG+t>g^_l2t5:mp Yư<;`y@Z}ko:[bKzIm`(Wey-_6a `\+>R mg[ֻ /{)@G\ei͊E3p 5H@*%|M!<O9JvkTl=`כ҄H`'E F .ԑN reCymBaClEG:./ZPd]k@G;ԣ_} So@#X$ELiC0l;AcXoGJ)>Dd]U9RƩ􌡮*H'Y7Τ& Јsq nqዼ`;=!^QƸi&N/L!bm%>ҋPM$|% Mci&ksˣ/n0neY;@c۸4Mk^lсұE;>,4Z<\" EQ/ore/f6k}֎Fleo9u`G# 6 bِ &>F\8=6J@n?)$lTpJ6$]ͣS2z-@NY7j!| HP9geH&~؟~ii_HFfU88mT.Q4x%&Дg>e-%]z70l&hgi 89Hѓw\L7Y'1 ќS7K$OtcwpM&č&jITT~No*{UH͂3Pt(&įo%Ql)̀Vb"Z&"d[< MնA5ѝVh9->V25Ya`+u6v_Otk GE69X{{Kv-F/ XevB;#lP: o^L#~dF$c$@mjw*-KMX<" Έ4-1Gnjg(@'VpiPL9;}̑s+z|J>,3VHn^u& At7?%$зqHts{ #4x}B9VU{d;Y*<.w`Deyu2;w$ RysӞ,:s` sFP\wEs7ȺWDHP$z[55n3{4 XBbl~`&$d(lVp|u V&VN[ n/@*-?wKC%QjII^wF~}iL;iFN~}0&x'e0'u \36S*iK^;mmz{HSj~0lUM`,(Q*ʟNZ j4|vB\lsQWf~vwͣ`)\qMױe,#; x kNKsAG2ic٥b9"xZКQ矺!y[|mrB2f\G]3B&CN-mr^,SsO|v\Ǥ4DJGxyD5&UnH"h~SXsdD~qX~M@Q|>ō@ e~vEU(I}*X"ZFw;&ȵiJ55cz: mk&?5m첱%lRr YxλdgXBW2DGdc<9 9OOӇHBП|!=])D3N͈IuWڪ:fngm .:v*Nh!M!40V \ʭZS  |rp"f.ua:z0>173-C]V0۽ 2`2_%$c)|y /1T42_wҒ+ͪa=3d) WR5RHkspJQ';YD]D/CP)O5n/r8`l #0J-mC坋G{FmUGy pl?o2 PwN `ǫÑd#}FK8"ڭ}bnb#bfF*4s2c9+LR4Oz,׌LyPphWue$(W@tPoNT:6>k| nIg5yEn4SD,n&0`}454#;$jSJqA[a.|qr(\<ŏL-Г jt>0mt\= Xc(IBtߨߑHM%3;k;7gV6畢O=b0!ΫC>^'a~~(B,Ń/$C$Hjfܻyx#3Uc؊׺{z8ŨzFGƺkQe 'c$Pv=bCqʚzRt%dVwuS'xKEYKRLU$bǥcJJqɍ;2',CX Aɯ75Np4t0} VgmO ]Vb< ĺFEXr@ 9 *\Vߜk*NԪ\W:0WqKYUeE;T F bѤTY?59iM8,/%W5RR,j a$P1-~T&s&ԛ8HT*;OkOKk>g`^!y$`0u"54 ^?hv%[m)!B@dm(ʕ''*cl;]Dmk!=VU .ä]$;$3e~vЏN\>2c-;GE r4[0a4&wZMs jdꔰ)mHw3*IL+z#V K87.HGG3~{Kx}u|C;RAfun^Wcǧi!w&zZ޴8~=5Ư׊)Alߣ_O_yPDjž˞&v@-1'$ר HsF mƃ-P޶,I0سzU1vg- 7O=I5bMfba:- Ps#T8,u;gӉCS/Kg󷮥AԹN$fL^PeË򺪥:S׾Ns1,3q^i%6(VʒfaͲ/uizg֎VBEAM)'V 4V.BsWk:4-0sՓ9 "?禾Y|ጫh+qPW[rO/15HOWdn`95ta^9[cm:y)oM-xfka|jH0FIޚ% RgIp:DAZX\ bsMHS$Nb@kL zk7FZ2zŗԋ 8zJA @;c8UmF$^k G)W.|Xw꿄:B*ɏ8;fxh8jGŸ$ Y"0yUQ1~-ElAEU[.x(V 1@HWj3rC_=Y\LX<&u-k,~Г0IUDc}븝X0  eg IɣG+)R #>I5

b ^RV SZ&4z[)ŧ̲ # bNSAIvhOR0Xb9WCa!r/i1!tB3J#*wvsw'jHO Ϥ2P%B(^:l, ,z2h | Ec幯#ʚC=^R<ʐQ Az/rxLq/3sYUm``Ѥ (@xՏWxH^M_ĒJ ^ ZbtS^rY)G=z019nWFf[\bmhOX!I 3j"J!f )5ޝIMG֙0"*xoTdtPXENzBR_/ȭW1m#^< kZ8I揰Q)) h<%4k~A/mz- 6:d8%R4f ܴD>([m+i:&Ew7=x"wtdC1-M{a02]~R2FQv<i$hE>ț]BiB.&|.6s)}2ip/PqH_D,=jkZ C[b#vw!2#m~S^08s q}ꝧD۪e Y/: 6v֔BC`bJ f? VK{e1V]@)X-qوcDz[\O(`m; DNJ#-̭tFPşSyah,w:r܉ZfNcm+ Ϳ|ޛ6I`z!2n똿Wݚ+Mɚg5J@=9N M./P-E#0禕 ocnX9ppʳ 0buë:%c0> [)"h30DWvd>fWjv3lYY8W. o {D3ԨTP Ё 7AY'ɹ1(SńN# j5fJם.*qĠx0Vfa?lՌ E1lT3M[̭%~RDmQݎ$KcPiэ A4X@%@&nRSP쓽(,L0]{ ,~bŕG*#AGRiR/<˵%,M30}J炵J%xcvJp;lφv"IU <~?^);؀rV-F\5D(~DmrK7_ XaP*o"v6YTmWVdr-Y0sgZiL>hk2. QYE5O;tNN cb"fDNmӇu &:û${> ǝ :&b^fzY5/l\[xH=NJ4 ze+BkAGiV"j|P띒ʌ0^ ~>N3MZ$sL@jaW 8lIN#"wNwIZGXcI)9 z R R/ SF I|Ҽf-0>Ž8tG/X wrY9?9i -< $g8:1[r4.Aøb<6œ 0[݁hSԙ4هO}&R]z|FΦ1y&KE~ r:;WۨY@*:DB%-EXJ )y$fPYFw→La6x)L~y\U4|Q`;+Vcocn40R4yTTuv'IϤ> UE<>1yۢcC7Pi ]ܻԤO3'2 Z1Zz23~]k袅(n8,!ʒJ`NJ_LlJieĥ|qv:6@w?|1>:Jd֯IU .Є>SbVGFNMMl =轿"EE0+ 'vV#\Qn˙̹2ɤ6,镭U25RW>!W[#$2 4c'}:ZJpWTwA=Edhe~OT8s0T:i=qqJiL˙cVio]4IU6ӭ$R$uop&ʯTIBڤBpЗ}aퟴ'Ŷ&] {;[  >Q吽iʠ} fY1T6+ƹy7Z۰KATƃZ駄TJV@xI|t6(,Ccjm:g яZ8wbRh(>;Ŗ֪WlK)b+@"!"nݪV-8["~_GUƥ[CPߣT07S^AZ@]pGΔa} ާB\d fuK^Ng[ \ ]e۳jy1ML19;Zw#VF): }þaYoDʧ}{O9q$ 8O,) BI83<Îy0zSZ{KZaۯ4sAhKbflբc)&Fŷo yt6Ŏ~GW* ĮwnK(oL8(]'g/8YlXk: 8#B !P)Of^QNUwD%| Akvϲ(ӲP)]XպH|S᪇@2\JڒJ*ߚVTZ=BzTzDtH*27`y߬~JO_0;yA!@AO>HI| qx E \xtGKg*=@Z* ^`x;G}ZlxtB=gcpDv0O~qYZc^OdC&)]T#i˛{ |Ҽ{jb~*g+V04%cER%8'MٔާT.k4tIхCdBgHW$z!-oXHMYuG3U0\f7 wߠVS# O=o:Vا;rilf1\x#ݾ.5OR3 uvTU@9ACj VyLћ4v(Yk4#q$*&1d”vgKx!k|v]E|نpIxeTiGSB9Zu~--Ƴ6Beѩ}h!U]f1)/ o4HR VE|6gJ ]sS#)Nb^љ]@{0ǎy6KpFC=oILsۧ:Vz(*gSc\_6vʚ%1^x9Aeٞ(Zjsj&y2C O82y_F4 SErMtE60jǏ(+9 m+8.,̾`?$iH ֛Z<`hw>\2o9?^V0>78-+(ꐗ/ %O:c""б3ݶh( 1efy-z''sW*)C<@+IEx*3HuI_:tΘ\kU ^D"5pe{y oK=5u,l4ۥBФVq\c9ohu[SC/NE_9]T +B`IR[*y!mO)LdQMz辏xU 56}&hhmJ  pb1'nAW%3 R~n Ih;G#;nv?AZUR$҂C"d2&3Ufnęs7 |T/Fe/ѳ) x iILڎPV8k+QW[c8%8NI6|eM~ox[Tv/މRTNRFCYZ'w Y{[nʋ`e#Aɗ!l8|zr/n)5>ҩ)ёZQazyR,k.0n9\6?`ǻ51jqvIA9}OR?s\}q*;:2nm˵ Om2Rr(ĨK缉Uo7V؈PVf%UGW*{z 35#h Ҽy瘙?bM6b vn?办Ih)*7﮶19@~<&V.`6@+P=1+r܄,geaX)V %o"b; 6 3`AlvazC9Ga\4. vY'`av w-w×r9= _EYsZM<ڑǟ sn0 sxF&Yh|.'w.٣lԸfXaG{l5/|OMw]!ո>)3W > ۅmj:/jcOQXFb?)/sH!tC$6?E 6;t%dlkJΑ"TnX(sp,%:VGB{ʃJ[1(3W^SۥN+S5|H*D@qAKҼɱ(e2{|0J> |d"V?Maei3!*]WqX]ɼES[S?omS>)M Nޜ +_g(8E )4ޮaRwl+(Xm C#X$,(ohGY֜LWSdFq2xJή60jyV4YB͊i^a]>VW!ѽ R?*9j\ooSwv=W`F pV =?ۀGݤeq( kʲK3SQJ.3c;[˺?ǁ)Lp\N8|k6]heTH;H/ξ4̻t(8@"%tU30-$`bi,~ AUs+9Zhդ O0xjB^ڂKf/3WjѹDD#V"HMejd>R2G&62"-JRgEz'Qݼ\hFkN[Gđu7BqJ0p* >~eoGģ 6;k<v?P5OZoH&|C7xπ$!tɈaVC;L0q ̳ ̡8Igퟏ@Փ=d?J r &;,e͗y# U6 *k&-k zcyme`,$:lkBܳE)yvko2JGDʛ}ԕ# ZλjI_aJpp>&St7Cf^ I7itģGd{1c9T FZ{ f{*M(A0F+SO7`}j QasiRy~9T7<!# `ЎWH#kSDLt-A6_mC#YPB@8:E ;;C+M:7S‘Js\QYJ XE\1@^b ?HQ/vH~ m(iI$s`V҆RN^'V|B13xZ4 Ku}j׺}6yfj-z>K0_lykoߐ@c,/8,bWڈXJu&N8rs%t{SST2H#h{&IC,uΙnH~{ Hҡrϴy:>UYGQqvV?0wvZX6,o*ƲXA?"seC3>U^ytl n 4xD 9NV1%е8UɂxnG"``I0P6.LM :zjhEȌSA1';B脍؝nڝFi #t*Ckˣ]`*pCM||t k/(T ,;M7qXSJ;3m9QsUH{P˷kB,3'^Mo LG \=8Gz`7E2F$$+,s.S}HkugW#ӯboIgHp+2zWTT^&O|E7YXJQ^kUu*UvdĒVf`Y\䴠=Dc@T,9)JgWd gT'~LM)U<8 fnja+MAP> UGfF]HK ܳmxu=߰C Wʇ|H rbOꮻ sd%s8ӅM<΄@d:-b7jMKWSktbf&V﫺^DJ!B =0Ƈl4a4>7ڑ;7xCV.wOѦ*.6n\WaA~ózX- "QEYEh"U90Hy ~O@_ZT/To@f1j~b/ 䩑&"C-8Hm]@~K- )jQ ᑹ?Y~ȮSkR=[H»5O 뚲^$t@fߟl𺦴E5w_Ӌ=' me:&,!I׫ȑѪ߰1HBHmy0~laL*E^UR#6zP4Mf\W)n<ޭ*|$H9#n3K+-z,cK`/W,t$rgV̢zua.y-e =:j"sJP-`GfiW? ~XH.0p* ^@O4G% zd:wW R;^qRp@`KVRuX0;ddrHb73 ^3 yzo>),]2Ԃ|:6n*cxJSyBElÔ Ől Mzf$E)p1hrkJpD,[4gs»?~ii]ȕd=&2՝G +ZcC{.q|;lsq:޶.w/{IMlҸ7Ĺj.Y}T;kΘfUS@ 9i)rAHA%A$/`mt^<7ߏ$Y4kb6i 4q9Je>3CɋxM TjYq;ՠm-CGXԣ?XT|`s}Ti_rθP=V8oseBG*3iZt!I׃\n p| ݮހ ^g{M"J̇/*t]CLaPn%V1Ӱ UȁLirVT%/+Ѳ}c s,$ڵK-yWoi~m%>KV @W\OP;)TznJxr) gq@,fԒ'ꭠ(:+hxD - |vB$2vtp͘Ix vynr!q'LB'nJ (3.ik4Y=e'" j]sŸ ;ʦV=qKfiEDZEo-͎do 3z`McapGxi Ld1釰گ`՜Rv|a ctp r1Y|޷Vʜ ?S( ʮu 襰}#흷(e JY[e-v| %/;_ԩkd.@h#gyHѮ*O#Ԣi|dИ|{!e_Op`d ݉>(sL+s[ӭsZD47" qUr:"$_&RH9 ύq1Y 1wa'o8`T]Db:'eRKfG.K9SXX |3z7& k(=}Qg%v {*L,|O&wO34`iG ӦKcYpư!Q<Vg* :^!c;V'W3` Im˷fcF1sVRj:ELQ[Us\(כ2Ŀ!cȝS>TrM-6yY܏F>@(dvSLI5%71sF:ݓMc&Im&&S!Y 9ܵqQq,`@;Mޘr3膍%&q˯x^3t/ in) / ^&>plGUѴK4I #ט̒NKJ=(F5}gާMdX哄//?#@ Y}khRc̱q<8<]wX(~*o)Me+LU$` U%1(u% ؗ_; R6[WSMR2 LlaLh7Ŵ//{3 y! ^}{Eeꊦ/DǓH|z1q*Gej+QG?J kSF 9M4]k78k^ lhD' 1 # [k:JmCWWj7h `}zVޓb-D2ܢsں|cvg@i\ D__m| :I-iAiE^۪vzg-UL,P%b24E{&Tۄ/XYuΉ9gҕ6wti}Br9ΐŝW8/҂$"{a*z[\r. :y3.&W x_̫.RΞp^OhL{ .m #:8!tφGDS2_Ԡ\k ЖxAc>B-Om fKgM6N%"op}d:95p񗍄]?-||"bI6ߚsfaSFZdދPsɿo #א_5ZV&;(=eqBep q bBbV$ i%:r(qm=eO:`)UFf&rN?]s5YxuD%-1u4nI EY9~<:~p ^3'hƤpw~:x) b0*#{1=pn}¶C} qaJ~Ӆy+Mz}ۙF`#%-+-&Iѩ= \ERlEOo1dO]gk6x<:ku1c@f]nTNgG@m3h"~D.ZHxBX.d#•0M=s-"cTjz :pz *#RM?6س:x̽ [,`y t4ogȲxZHFkJ {ivLhA,g<5H({)ճΡ;Q>zxyrׇ|( +\U`I<=DWNO UVҵe+&bY1EK9 ( tqd͚.O+>}kLbqa(Qzϛ-_E7P?{T. i$L{X3bO`s9JT`yԐc;M!PDAR0-=մ€Ry_W'98,Ikfc08Wg,18i,xl+',;?q`>B\-=y㊙$s|}5;\B7AEGXLS\-(~ (|?7r)4x=(5Hb5Y-&ak0=zߌbpa}}C 둚!/09Xhh5yp.a#WukGU}"9ŷSoh1m)v,=q]#_՞Zh>=N]L>;ih@!.HQ~GHظos1'06I(΢3MwQj]ubyjéW bx mLr6h_ Ɲ=`D%O&cSMqIʍvu 3G@.л2@~3ugí*ڼָD *=݊Q3?O-W"|E{j17ALao|g](S3Rb"("HfSLIh#wUSr;RmC}\g~~˜56򍏈=h -4|fMAIC~)5>Q LR# ?ߌrH&<86x95@rֻSFj /[OK # #X6 CuCX7T*tt|مF$n>DF3#AhF2ie,?Q 쀩ja"ޡ tmcaXKpK{^[qW^\-su!tzgy  F2ǯ.*3uバLCcO{DM!R1voqD 2 u''ɍH EȊw0&.B1B{gp04gi !MU&fY"얣s(s)q&~9Εpj@C\R:( /ZwÌ8 Gk~JT/UyO;WZ$)q}YyxP8qbt#u^oǢ(kcJt q0TN6ⷀr.@r^Z;mՆq̌obtP?/rZ7]~n *(?MwUrTS|в[?ny~RۙOzFʄ8" F""$6'Z\]BcujZL}962;Ikbqrx I"91h @L+EKP 4A^M2XU%?h&ck1astlhݔ:_>?ߙ6 /5-SW?&!9@2j; ඛCs.sGWzD.4PpSziA%k/MπR]oA&ԫeH~_|s(k{zr̉ѮDr: Uj7/9JSi麜 ֪RAR$b!cл|aُNk/)咜$=R$"_;s`MIj/&2nXg ){#+D[}'ZUfK=f@y0эƅ?/ )ņAU"'0hbhl8T'vBUD֔WD܎xnxgѴ.i5~c\ SxSu ͣ '&:qtz(#Q v}mjcNr{ .+&ZLX0=j3qv:b[x]izƢVvA59dPv9u{/im`mĄ1 Z6LT.a_X7^K~6OqMKlmpݘz![?* 'G (ThSj9JVC'CW~9e&7%8#д`ͨy3w$W=) +]J̦aaW,̫aHc͐ۇ}ʐ[_[&"&ʾVgE  ZL<9LL#Qw?* Vo$FHPνU(]_e$LDnԭ h7oK[ `vX@y2ӫԛj1)a8PuL!WvKK}̶ MI%YSkgQr1e^2Iy>:ֽTťh,M :F?RN||T0 ?8^JvWn] _UQsu@hZ:Bwr JL1HTv`3 *>\̸F︞3cp2 Bgo]2hu@sCzm'S.;ϑƦ6em콇O'%+K\X I4CZj'@MG^L3qΛƙnLnnh!B”d0od7y!MY!?ay?QGg0'۝JJ븐*Q=&+ 9HVS"!3[opOM'M2wgwE`*)s| =yL )E>ʉZyJY [4͆ & 6#w{f($3k=Q<4?j5/gɣ[rSl̩yu@_[dC-uR,Ecl!W=dG;C@P9*TJw\?o9b !ҫC#:}sB2=g؏m&( x(;*44JE>J'"TAzAuF[n+ؙ-'"P{}G=/A h #p+],h5R0}`c|EQ5~EO} $G軶Cy`NŢN>HIs4:AݚI?86PKT-F|&TAvx`1m"?ɸ<"TzK!)16Or}{XO=Nvԏ xL ezoW} {1NCؗskw%CSl1Q/?RnP.oa!gbogq٬(o$zbFvh=;\QPeT+%!L c)8(|l9@+ҡ"bf[U㟼OlU(}B1ugǺ13Q_0AK,~`:)dPPy\l _)7Ͼ(p^cE])'^vS}3x ;6<(^Y+&WŅVED>^ ~'P%Mw2c0DfXV% xE 3cOw7+i ¨}:-2[&llSPK4fIu$m?? H0f`'f[CDobx@6+SnwfZݚl5!鿧/'h?`k4sX9"&uE u:\S.Rم Bfƪ nj{vIXt]ceWԨުE5|>'c9v9N8;s8^g_'[3es@mO+A΍Nt,ן%FekI+Kڐ<-0l=in]û). uLbq9]e Ql/*PPRۢ5-S@l{ڝ_8k7`hςnAH2kz2Ʒ9b"Lw3=K~`-_hƅڋ%Vx+S= @ћcݿTc 1zòů.cUսenHL}Ķt٨.0jxL#T^<1F%MM!;0 2yH9 򃭺%" 6xr[)Y:Zߪ:NM{I ?`DJ;LՂRzΆw3SdYTA*9.Td @McwcX~A0U~0ul&ɾ70o퀎 .Ame(RG? +4d㨖RvWEC;}lN(iYy뭪9ӵ@vSHMj4X .7NvT@x_>q@ufiɱkɎD / Du6`K9=-m~0?v(s7y3.Pk^D˲!wohM&? #mUV#x3`pJv9pz%YKŴ0Ŷ ى1 &NK[e0DpY =g~b ܶe@죽*f(8KDC,|׵%>p4Ɣr vy4}&xI/-R^+Nןa Ue_$ӟɜ|ӧI=]ۚfSc+rP~F\ܠTGɥ-L[eӓ-搄vQۂ9bl^[@/Α$:p* ĞwQ+~x[F8tU5jݭ#%q_BR籐z8s߅J.a, ) 1Kfo>F|ˏ0܈gr˸Ք`,)aվ (AXSY hq"ʴӃgo ˦( 28dܵ-A.RRVNu$L+bP>: eM:eivj`kLTUq#[C-_"6м꯵4=nPL2\L%R) Nea{bahdgH_񠮥7;/zHC{ qgx5C!f~hb:mQS8KΌ79^7٦9Ec#3R'evZBgwSp$,E%zp볤du oO0=oB7|:>m9t9thƱB /zRK4K]l:VH o;jRRl<ѱum8i<)g[]&5*+27zJ`蘸颃.^A O[$c݉{)ych*e4<@& <;7kZaOxRȨyV(+;hP9!dTtIӺ\cCI2OJ9ՓJK:溝ԞqDGwBm&z߁!ɕtkHJԚoaֻR]^xmjyI?Y ĦR/)o,^LF.gG3 @R GZ|Uǜ<4t5fLGXa\Wp6"<6+%8Tvlۯ|}6T4Cl #v iB_Xn3Ls3dqBv -2Nm3"5MZv⩍e,R*Q$pxf1T+Do#̆80-O-qK-ZltՊLd>!juf70CZTѝJkH/,h3r B(A\f#9"ftNI?ʞzvd1*Jz YK`ŀDQ6kDF%8(<27F%;Yz Wu1%6s'ۦG}qB /c0WOoW]%sie=,;ŝc>cE 4M糠+ X+e6}rCr~*HZLfrkk9܈ٷgPw~I69xA!{$nW\Ewp~a9%_AT-ۅoZЪEdL/Atվ@ݙG*5! (("mWnAuSH;{9ϟߍ>~TanLbb8gzdGH|U.eaav?-ɮԲ R6V2t篧5 #@mQ6< mC؃LRQ&]_n Ac9 3_Wx3'! Dq”NMNV&h]&b7-VؑZ2}E5+9&rJS Tut ]68A 8C=}Cw,RjWnn'@XdP<~V䲠G]@[CJj_~'WF؝33S?ENI>dTGIi;)ע1&t VOhgDHb <o+EÐVdlJsO.Xg{E}@@ _Tz[] =[@ p8ƪ.Lv%R&B :ne32|%*t_^nT[xr"iYQ.ZhT,#V,_];\ހG¾ N4[١rSK o%qR@ ա+{)0 Wͫd*t! CC_@~(wҭ=dUE7?e{ Nb[2ڏWU9(_?v4`X`{& R Z͸v^@v7x UL,/=>&3Һ*I&1NoW(ڐ۠,SF[]K eS7VCE^$X8PܷXPi0f6x$%¤ ޲i-(.fD]bcbvk>>]= 4埭&7Gz"[2^8TuV^k%J3Zb/\~7Ur,z& RCe ea{\Bz:.3::t@BOb<XtXK!* 6~FYE$ެj_)|Sg)u-5zÖKp?KО!p@~K\;͞4#=E1c"B~#!k gi26sup ZS+QX 8,LŠ-][=K͕,'h6A<.G +9HiJs%vqLf Kl4n [ K^Y^ Zs(3dי'!#XHUY-9dFm1%O8)yV,rggpY1w⇅ji:瀰qnaGnWHmQkj5lacz2PvElD1y0TDyЅл-w m s( gMaaآSPbYq KC hqZތt͹ 8 "~,(5oܨS'\-HB MޖkR;SFά򃬸W31qGG ."D8jfÑ}HK RW-4>(PC!N7qA2(s!Nd=YtyN[jA wXR ^og],bӖ5J) 74!Jֲ|vhۅ Q("R$򯐊XB/V9%'?ކĕIw*F1a١F ٱ(9%(a p*jr4)㱗hKwVXv,VCZm`* "nR …h8lN ͜#AFM4J&ZlL-Zm=TH *gйњX`-(3Dk(Sri1.mg>aq1e5#G }$^C93åȏQ^˶=^Լ.mAQ+1nN;jHPOXama}ߴ ּS`Svqhw)-mO$c9i"Ա;n4c c|O'$8c]R 9彦 ~~<)ZkOQpQShF?{M崦ØJLq2Y'C(V,MX |qjA:W+0^ !#) cί}E[š^)Jwx99\{N\x"CHδJ<؋#RaD0{Fz"u :a[YGp<}g¦M=2G9K[ zSl8*'{"Y.Ys2C-GH+uJb3-xShyY?AT'h*aY˒CLKL0ߪ{IXRjJ0&W j#Ix җXKLK+O9…ٿ4!?Tya32ՋYX]4{7؈^q,Ѯ2_>TolI/dh)$k@ 5 ɉ Apئn/ Y4KJ+DTYjތd՛N#F#o׃YttftTyWU%S}rh&WCe;دKPCHC1I93e|{$f/L8,L_6\+ˈqEw1yۜ+f3QS?9vkWxIZ`ȖFSG͓@ g]H!v8g6ҡa凳IuGk 9>.쬂exs5Y5$hGbNX!zBDfta^raU%Jn\!VDhpn+"QgZu)_\G-ɐp\%A5?MF:;=s#cogȠDX0|~.-t"=K^@2SE=ēmD"6z[syBa}o{6ڿ[Lڧje҈%6\B&6& eo0j٬ٌVVhU*lM%$:ș2Nh96gUT&ǚ:Āmu0U`-S&'p^~nP9NjdCA,&+ʒ/q0 s42v9px#cD͏sL_,HbqAc.}(WvlS`],خ|"lpRA:TtD*lݏYIۡmZoWB\k1l8:Ry {W "<`g:ï|ߠSE#s _W$\|TԖigdp;w47 ԁBOƆ0ȟ.jդ$0>>TJfFvӫQf|{}eЪ?jC㒺eVzWbѼM'`%4[0 H7 66=mlRr'kݯxtAB l g:u[!k*Ji&k 2qYQ gDF4aThFA* B8LkI7iNSfw-gݒ&Ssk$G(@;jKbShFL?w_g90630H΀<ύ҆Xj_Ί6 zAQ7[w(dQV-(J:'j;w#XG1ǒ٭ [v(fܠ' Џ{'vTn-A$Ҥ잞O/,TNkwFQcš?;(V8˜$8Г$pyYf"&=\w y!6u0mY &uH윰54ZP0y18,F'~igsXX_cK|%ML%h 4M#A:GoT7"R!o-@GָU-0mOaPmT=ʸF3W-,=$ٓ.TN[~N*iZ3P+5H7ii-@Ozt+?HВw$8MW;B&,H3b3tN޾ks UK= n{{>b ._*hzz_]`Vk8: +r-ࣧx!-|BʂӱT//+kPɡLh!;.q'_G5wߊr| `kE љ&U#O`;5 ɑ{Lj (Ƚ4SGe7<+21l3Sr7!Q*b:pVR0zjjLn|ǥgA8U #woz'(cKehV?i2ikDTWiNy!ӤqlT?(oϹɼpsk ܎#iA܁7`n)O@a8&WG}sUD|vճd؆σ'MڢǖacWum]>o(\bmXQȅX~vs9$A"o<@>2r\}PF\3r( p74R{jy8SqF,˙‘t̀<Tmҧ{ջm1Ǎ~F*S CƛGs/%'MahZ r N)_3tbg<ㆆ ~xe`iԅJs7И YBR*? M 挫Jp 씅_*~t*PEt =t~oLt;@kٙ|4[tN(*ýnH8b״}mvMSDN.CtILr a1i.BtƆS^B˸O F""`;.pmxPԦi3 F 7-f;`2yELT{}~МR!IRZbc*;h$\`e5xX;W L5PPxL\Tm|U]ZgaJ]MM` Ï͝`,/{jƝyQZT.gL/usxxgI[,UV `|?Vp#- kjDd Aҥb]fֺ]2eh5ȶ'q4aKɓ|Gx6t9W\~CALB te|[d%;0v)pA!;'~*O^] aGoRS3j2ON+1lgE;O?NSE?3(8t0J E.,ڲbl/,|#D:RCiã[{{" P[ňOzXh=?:%x3?ݪ RGfETfd'Y1Q:ҧޱ8 2%{f`9x6z<Urh2txV&&9(W/(ܫv:O[ϝI40{tU74SI[=pTHzP Zu0 ݽE]9 VؓAcY[uRjpN#b A*a4¥ޛ[)\C׽W GnU!,< Y} N_YC"|39\$1|__Vk!b=̍[5UNoCNſ7U*T-r>Y>k%_Xa8s wJ\Ҏ:"lQgB\P%O9 `Jppx;03J[}h# 8oҔ ڡy7Ғz2oQE_Fpoʨ V< LL.- W2+#ǫXIRa6A 4vvguZL4ˆn=H97fgY "0+/>n<_l%У~oNiKk_h `th/ջʻd׵ {#+lӥ'7ȵSWՎ1zx( X&6ju,LՉv'7~&lVa. 0~7o7-MZ ѹ~ovI/rRhڢa&("bQFn0h' cP,RV42TNk6knP<%kDLmx**ñYE0`Gp\DWӦ:G>=?8 0s IhBM7fؽ~ }+`bXa@umlF$r3;$JE1ډzdР|a͝+0@3N)pܾ ʺ,s“XF `  U Rkr/mgV6%QYs* [u=ᑧ4uQ64Y ux9mF{ @w쐻kccںldW`V ANu:1)6Y-0DyX6&KhvGj `k vV&k|R5KʧM|WW7$f5Ic)=_(a nn&[vɋe~bN4>dtm 7& xBQ|O۹Dza`m!:o(Ҍs٘7X&>rHn3qwJzPC,(u xFK{6VĤy&F2v2\-ob'0[:W(,ՠJ!NqHt21vF~#@"KmD Z,~۪TUkϠ.s9| yk C v>Z@MZja[} N.s zw-G%N@@^v(y;awLЈ"l 7 œO`I臀P2f`~ wG~[#fx= \ZlV g*5cLFAԲWi^f\=L:29"!m5BQ5fֳ68^ZGSBl+u+=Wo\hB*lDk78;iY f)5TQ4R\,E룧E2ȼz2l3ʛބY]pB@1nI&Agb9Y4e5E^loXe{S]?0k0VskHZ<3"Fµ7(sz߰CX˯5>NnW撿Ƀpaog4?W !'v~f#:9@YzG-yD/FT <b=O*H Dz|.}rˣױLaq? X$XV0:&wHngJ}٢Kf 0&R_Sل )HM jJITS,#u{zVIegZ1ʾ ^u3iz qqޖ!SVa{V)RΗmHU{D? (u9?cm0/I.Ntʬ MEؖ7s m`§Qm3T>I%i]'_+wII 'ʪ͢:ߓV&\]xM&"+%u'ǘ:gěyQw0QHlqQ{0cV4aެ@q{I\t,!lr-A0>Hi_{CC*$}GhD˕0z4|ᖊ hmD/8d3l ?>x*6!l5Ix'ǛQRK֛R d\mfkpt5TbC>tC;n҈ZtsN:(Ly$:"<, D~lOLj]^t&apow-.VDVJT  A.qwsİTr2%JZN+'9X,k.Hax.xJb&jhbuZB"9'S%ePjRr=jHH0QhVӷ^M-vHS,͔lùH m*_/FfFA6$ w?2TN!1=vQɌhZ>3<z+ bݻr^usΫ?Ndʥ8 wzbO< OɈrK~v  uZ²CB5A4'UNh 45WZB ޱ-&UoޕEUfeQ@W{(Ҍ=~K fR˶:%ކz!?jx=hH i|ʛ~z>_KsNVQh5AZq5&{4- -Y}KPqS%>ʹeQb)ܳMq`;\}J˝rw#-zcBj*LRVLVߛorBwWp{ʗ _oUHc\h6O ;>6Ӧ2fBZa3*`*p=[̝t'DD)#D`5` ԄG#&;ntq 2C?@>_ӱSB-n820@"F% ݊EV6ʨ+F3ŠnWXP W2(]m&Xb!8@4ݞ*Iw?6Q5?:CB5ju`6Rv~bhgX-J6P?ρ[ZBPwUyO E5bQjb1L+N@G}/Nh . ?8Il\eKH2Lxo3f˛63{)5 2;FLC[EGZ>93ɀdG5ZH~0)bҗda1Ysjg("J1ga^I~W'B!phבOxipR@/hjeґcpd_|X2C+ fF6٪no6IͩD"A )HMt 갵)0 D=JʊHYN/hʳq+r~tZZ֮WC14J$\h 4J!~*'cO'PJqe~<dBbcU\5kdj \ tU!jUR$mjہg /0')[5鷑ګBzrJp B%TR:IQs`D}z%RtYWw#4<.sÏ*'53;W83e2fLLqO({M]j٧+`1f zM+a+Q-mΝ/u/qa?#[RK̂J}:Jx:dGzA' G5yE<'C,Si<_3Q:4J9:}:b^bNCKyj”0V z4c::(=TneThĴZ<Rd|IX&LF\V(H7њ-T8?~Ķ$f!V91&ު` /D "@ԮtSTcI&I.ۛ/YtYu">jǗ )B*eOI̜ ] 3+kbF4@+N u$XvS1"U*_6慸njzEFYy:ynjںQmA&QmLvR%Q\GڃYk=i͏WD8o A鎍ڦDENXI=#>秚v|} ?ۖ!=>5Y+2Q9|U3*持l 9Vf}˂3-JBvq 5T{JdJ#a^kcn5i?jivQ,jZFS 効'ypoWLѬUy+ҧ<1{R:e+|SOKކgՐ![%BD2L$>-cU<uAqHd {֕mӟETmF\E@d5V:^5&R 7c-mV' ֲ-5 D_r"pF񉀫Zsy*t9r݅D)|6Tlz&e G`[=SY.!!u P`E5Od8X'PZTp OHU|)jAH;"!aw+ZkQ+=Wc=Gj*v|tn,ˮwzD\p=&)UF]:Gȯ%]u'V,qm#FDh> Sd:03}[d[T )a1S'0pEWo ѽu,9NWMsWjLLfWҺҏr^]^[*i/2RR[[p0iEvI˺Rه7K eKy6Љz݋!8bz@q>/N3!kr{itw G2K-ͪdߗ 6Ԉ u$҄#CEj<2D7tn/zh~Ƶ[xӻFv$)!¾q>1)Tf\ 7)J=˺-Q0ư\T(\ѕŶǪ)ydN2Vסey͙z8w4( D90XtH7\ӡ ;% nB L- x#]2QrmsϘmU R'0H&9ԈgT:Ӵ(N< _\~@Ep @ ׀h^Ъ[(W.f@ᚱc 3FO]|@'A ݓUIc y2(kDh <,TXuz`PӐ}\VxH:C#"ph|]~a++“QiSLDRY|+TvmrD*bč;sۤYyW̮}kxOP? }~}$mR#6\$D\VFU;=2DYd% ҎeE'1[Ԏ*XH%h?۞ I63q(΀ ]pNY޼$`d/̽6G&ª%[|V}iXuOв]KrvqU.Ywf(JJO]6 7`R[ GCAK'nLSЏI>JZOCi6{]t]X g,SIXp:T9TÎ::!=VjBw4Fp1L+fu u13D)acYiSz[ vܟ[\x?1N\FK0j, *Ç^SQүR&Ǥ]n6Y29CoH\O` " h /l^<ɝ}WZyI_0{xoɅ]|7vXܺ xA]: ܡ 63kFIb`i"D'3f=3V54W.M3nƏX Kva0SVk~! ">1OE/6$^`DAi(|9ǜBg2[T 5_ v+&W@+&n&zN+dAӧ)Y|qxEi>0tc߉ +՞Ztj2x"`$l^ $IߡHCe,&T{~Mŧ>-bkn468cuH 2BC07]+ª4>-E~[#UiH($"ycu`"|ʎq~)cG1 it5EqB, I|v%I4X>J\O7, 9wzOb[,8:nq,9L CH\^ dz-a_]h'5"}̦E?lxw^m#tv#,!۩yVΦ~ioª? 8 ױapYNuWQh#2SI'o,-#qcJG0YWy#bAe>/Y60O;@4o_jK'+Elw~C;Vh~IޕGZYGo3 #WO.@(&.+e-vBDd&cvkMԺieg$-CސdNEL_(^dR.@UL(%p;\9u7XD+V0E$ +[;Ԓԕjs I3;?+!*AHS̘b˵V<W!<^ͫܕ2rN!ʯؐ؄EQBdoQ!t&v&%3+?+߮NNͱq ]:1Gp(@$%$UL4Gy !"DnE,No ]פV(eV0-}=BA չŃJi  la(IbYE~CJ">6vIףG|=9&[}lBL`5QZ|,)=Fi 2(nޓx$ Aq_x-MʓpmF@?k'+ ~*f|G̓ W36FP)&j;䔀OOB-7Bf1%ϩzNڤ+2E>yO=ihN}B/w csOk>Q쿴`w"|zjChf"WWc]TCzvHb` }28.KrJL|Wp%Õ:uHBfӈCng)> oi}5|I/"QN;2';˵'2bp *x8sSз?p&1&V_m)inI ɓ;-4~X^`| v)%z P87]⍕ >/9w5`u-jW,*hG(㉛*%#|z yb2QB**lF!X$J:g<^9Ÿ To}C><1yw5+s<<@E`xGru`԰.jeB 6i"xot`Xq ,KTh1y]كgb̤4Gf{h SfJcV8HPk*mXR|p7)> O0<&"> |:밃0p d'LTVYܵeIV kijljG Ο+v`X\]FT]+LXHNP 7sk?Ɋ Xh n[ΨhWEBЧ`/}gʜ2C!J%ifWw]=6zz. $7e$zn+t˶GWQX+ce<="f0d3wP^܊֩hGFw'U |E_yw j!Th~PCxE^fpě~ L,|nt .$@ן# :y(`6şCp ܡ: :"D.HT^n '[!cRĞ$_dMoY8^qd#D%WK.Cv3 څMnfT@r! ڜDds&0:P, MMLf  eZ>+Ӣ0Sܤ&ܝJOgtA~g\8DEF>+pL{ok fpΚ'/!F`YIo~ޠ <d=h"U_.޳vʇ wS<})^c2}{ & 5w=H:ږDX UJ6SucM}adhu Q/\8C x"ˮ84=磢.gmxA&h0S7 Or{NUV۷-R[Q0A&Y|;͵~I@Y;Fd/1Hv۝,E/.9œ%nΛUkcyfI4r*K\+,Icu L5F Jun2R"\ł׻k>r;JF|I7 5s&mWqj)(Ǻ̱i]LtV,Ri꣙>F{M$]c4ԮNsJ  >t9Mq$$gW~s ag:jeYSg_@\;ex~a ު qX6:-gaCwhgm)w^z$cZ%&ge"K6Z8gl&@<@X@{MʳIagx&;AW5bY8єN*-63bo;B=*(LRK>x|YeK:Jn*(BvR8] 4-`D¯۷K,ҡ 哮u|[M::a.=e_._A.岭M 7 ^|AgYg-$A3;mӈ>Wߌt)S= .v4w;CF^L(C!톜ckfiOʂh)Jέ~ i˭~V8OxF&Ϝ/[)?1T S'iY$NQh%,!i,8bߴ[+`j 1h+Q)s+xبu #h7yF'Bg| ,'"=L^D2y2CL'?){{Զλ%@ }X ;YXpjnTSػr+{![AQFxPrɈl}U`e~ΠXLP}n]jڶ2 3UL̠wmhgcadV(hҦ,Z"o<աrGl^Msju=~PtL1n΋b8*c|AMO~捥BJa;Mg&7F5S=m+"=M$57fX~hĶ!m${=òe3'o 9e^vGOQ`ӻb䂩TQ$b%}O$*]dX(ˉ@Bɓ{3}wEUA-vHXH AQ_d9n:ܣoK41a"0!AŨ#\<B >?]|m%dT2iPBt齳?&ΰ(5Ɗ$ޘ2j~˪?̗+J33X#[F䡛,p^iIMle,9iֳL;X,T@x/,M eP/9μ+K8䤸MS adnR䯎|:BB~?N ▸>f] d$>y v#څm7UY+9uM?w ]LV|]̛S{Ţ8T'9qWt}aQZNgzt!ES#Y x (0!kU$`vɷd%s W}OsAZmx)%iaUࣟג[Ͷ@r_s+y]IT/5`o(Ḫ >7o A:SK\-eV$` rF˪"n#^bK/V::6 7A )2mq2$H9qhz%tWwmX3P& $Ij$kLmh3ϖp\ߗm=4e`gK2VYTz:ǩnVMtá55m‰5%w3@2ioe !,/3$sRcҥvtm˫ʎM K8rqRJ$Ǽ`ݼ-UcHƞ@&>kY;0CD6큝dg zT9t]В DvD/!3q7R{56_`C_L00’(KϠ΀8%6C_m+젞8iRɚNNZ =Kl/#+4)ʈͲdZ'h[[LPNڡ3VͧLu) q5!-+#t AJ6KO`gw.r&<(]IHL#[pZBK>gIŲq}NܚC[PGT/Tƃ3|\ჳf"*X6(G+"[N0jNkǛeC'n=b$FEue1Уro_lA&JVO'KUX+An*eJȶa~]078"Ht 1X(jTnC>&onz{|0w8xq.>QF)I 0ۼ}SZ*{$&dEߧg:bEAҼ#{|Aij1z(X)am050z/)!*PJo: =5c֒<;{w8{-CD̒…r4mn0 T^=_XDå4Rb*½lH,mYFk [|@^nCVD"X(CvmvZ,a>a jA=1y}')鱅@?VϤca_7 㨣kՙV5N?])nulDshV5|U֫!H1zL87sB-Xv2y-*+UVp,e;tN$FRƁ<`<`eA\)VDDD8IXF d֩'4RV1Th]iYG%6KEcl!tg0%Ȯ1A^A:NEA;ٲ 3qyD {?AZu *Su`mA5狺_"4O2tfw]<ҘCHf?|P@:H/1\;T ыGE;=067QE5Ec6&+ q ]SPin@xZJURՇ/QvTxqE NKE\tA_`Z3&Cp- dX4JAyؼP^{L'Wc#q9.wlj zybA#?(@6wmΈyE.SRfJbo `HgP#jFGyEB[-aZ nJvl+i% l+3z4ڸ5C 84n=-"8jp(ѽq(&U*1v?c<)=*uG j֪"DlrfnC<#",m~&|2^ċa6 4'eX=xĢ<^"hpHHP@kPSH#f@!_wwyՊ$.^Mlwu ]Bt@uBs.VT;`l<6kަV8a7VkӀ(1(;;HyQd)iz/zu8lפ rPT3I."+}#(m>>8- \T)XGVx@E5T1`Zhkvj@l_ۖ`ġOu~[L}lL}+L/mtoD^Z[_VZhVL(d?K$L^,o\$l)btT6tm;qlCnͅ=kIY&#MTS[%=H$<ږAD?S ]̦E%?'ԭµ3̇zB`V lNk r&}F]9hVg`WHyEG R귾*~5p8HLN˙z}y;ݿAvʬ~.ZF.r;{d@*c~"ZQ6/$H0}eL]LtBgƖN0k̻WșZIW{j2\NIdžiXxH~y+ǀS3ڂ)]1ğI_.&8kgk31z2~![i)$ >1RC˒3qESȌȟu\L{E[M9<022^]"_0N]iހe<%ԧE}:`b&+~Zsk݊\\Z$lrFoi5*lS3j0.龢`Ax3 {n!yY<ㄌPM16"Feu}ŀUN֫fWxUڔM@Г<IqdUel£*RP`q'8%g YOÌae9Cp,@jfL eHYLjX^k`tGaY_a8zi|Ӛ|8g+7=\vt{@6`gp)mT ad))[,l"E+^<T0c4(A IArVM4>v}gE\ E³t{} ? |!mc*SZn)`,~ y[/K1>}U?9' ]nƭ N!4}AձaG]3>}3cbaWiRo qCId~'f؟ 7(xͳ}sǐY8JIیb5\X4?, `Xh MwE ӥXV* 4r4%iӖyPTRg'tT,^矗n69}[ɮy8gHHAWQwR6 ]Z0 (b1 # JbQlӺjg3c%Io-MɢT/|]:BQ>@fKI[#>I T,@єNOO2һ<;uϵpVd/ _hM+ !1 bӹۯnIx][N|K}=&gR :)#v <070qx6 pr'Ow^ y{5(}S~EEObLRɩl*yobkZ:n7nOtHit.? cEX=d>_U&]`~|׹!pX0QF78nZK-69*T{ֈrMf} My m)'lZtS% 8gț\=muzH/td6bIm6罕/[7n*ͽf`#wLj0veɔ[ }O&[`(Ի|@ck{K`g[ qVS9 DN3 lTKek*]D[{o7H` LZ` bo^2bR1@u`]xy^\>*/:yI.P~7aQsvдnM',}^% BP~{&a5'n'<%|a.\M5ƴ`NzCC-Y.o,Ne!Fh꒝6OkqQ}OYQ#tb߷ %ЍؖH#0?ymYjC@][ ,|bUpFӕ_Q<kIFQrN>.DP፾MEpo^O_1rfY|sx]M7"ڣ괃S+rҕ "DIJW3&*E): VX0;كaUofpNP'Jgq E"v"C/f?UY6J@י Xi;ä7OCj,3"{8HI\6]d\*}䍮.6RP, dAs E.@Ro'}C{HK3=? 3]3Ù*2Bm4ጟWj~U(y=v,Fܕw.Ulk6fߖ@I=NcҜso< hMYǕ9xΩ#J?0 ]/Jc43+/:3Bư:aG[QHK#1ݴݝ &:^#]E<\PXtFCQ .[pV*@JmdL-l^Ӯ]aX^:~aGtV ?\RWI&EwT b"\E>F)ӚߠC6'*90G:ՔgKfI,\/3=WX-fղS8G';`шg8nM"! uECn&"#VO3.jH/!2DP8*%4qq<=%ug3gq&8Tc-vlIފZugq0w,YZ+44zUb3j2Iv5lEwjʊ7gU_,U /mG{~jBnT'kjOY H`{ [EX+D\-rL ? ks]^ӽxhZ@;[u7G p$xOH)if2!9R`[ZMW` AEB¡zz ]z"*i Vulk{ur,G\_OʆU"i!؝l}RFln`,/o63|+hKf7t%xFCa|[=|b1^tP8jqBNuɎ|r8mc -Gc_~j:M6 d80+ucwzld)RܼQA3O#|+jȋ&bޑ0ܹN.l-ŅWgCiX8Y-1UԞn9(̠V? U.q%0dWa:Gdɸ338 NgRxw{. a1I RFSb=@Fo.dRJ~ukŹ 5bq!,\!cMaTVZu W 7uر/b0T>uH迆!`ti~zC mvlpE2ix*-] l:_t#l PVCMgtNI{Sj}D:w:/bSf F4Z‚-s'RT(Po665ˌW[9l=ަ\QF@eҗ#][1GS-&ŀiGua5 vw9X uZ,2P> Z`c k, .Ң>342eJzU2퐭v+dE|3d-sFi6ˑK.)~6o Q侗;N3VG~ަ$Y1\Pn"TEuSU"9Ic:,d>ms3֣.B$\ M @ZW:(\&Cr/b+Bn .QTA^{ɪGFZ64*xNl 4{V:(:Ƴ;4_n]>+sѦ)SdOkٸk0 Q,mQƈ5%V?c%S!"]]A0'EF3 ~9Ŏ(8y(Z6il?X!_Khߚ{;oϹ4{C`dv.IIEev!=qP9q\`{Oo07G@b "vQ..kpG935,l.-œըd*.K#R%]K(+6E7vFEJ$kr,e C\K^</i[cf`(!5K,qYt饬 $`b$l"4 8b v) ~E[Ϥn'3L .wР 4*DФ(NTRrc=WuK5DsdT LMrM/}p\K4\Qk4amY&mWMqQYM9?ךejHІuQޖn1 7{ (<=tA"$1Zl*!<&@Bd\zMV_u*H-L4`aK;?sk~K&acR2dZ h7/?DG/x,N0J~-t1}T##:LIiԚJx)RBMу3a̿ism^K;>S8W2|#/Z!dD=>^hJ(S}K?Dޘ^`-9ޤ{1K^ő0 6 t.&&lJ1F(j%m'-K( 0(ݢ,8U'VY|I}NT 6rj I嫰\uṦCM{Q EmSd2ōa2=D\_MZݍVFfQ1bre m 'z 7<yqkug1LသU16To5$&y}kx0~RG\jɭϞ\wQ=a]σ ~P(HA* B}G\x+)CkȤd+#eՎ0Km ü+Do0gN:|QC:TS.hs۹ME  |f#5^- zt`3v!:H`rRC_ 0}? nG;춉":0qApMgZ(p#nx JgSJjzjU֖\A=] ޒlדZoW3!;ȷ|_yTwF'C8)h"wMSC2m@Z/̗,o;A5u(髐L~<؉6/e#-"g6'2ϛXv*sXV.lHpKc# %&5'S!~F B #N {t,-K]CzT|xSq4͎ RVC7k70p0=]i0(Ir  LĀkl2o81;ڬ5HIdy\ʉtE)5r*Jqhv qN 24;ى(+$FrRѷs2 D( 3 =xK o-M^l}E ,hFf^mٕ+>]0 (pWL/0h ]FW:o=ArksKK-ߚ ?$E$?bz{=Jv\ sCx['Naq,Qٳ /M"^@#=u@loGeos5l"7k$;\pAm1ؿqT7x눭}yAO sU HFr/YPrV zGPv-\(!d8ltGǮkpC}WCQJvlpg^aF0st9z)ƣ\z>0UgAѰ$`k'ͭT &VvÉ|p]šWփq΃#ŏwM7~zCת."}P=,oQB;q|քvy.-QG[Du^AuY\sVٶXÖa|[_zF!?!`&eӮ[:tuG:Z*^~:^-:|5Qls|U%_,z[o_\Z>sxR).J\U@}_~V&,Gar5jIo Rǰs17͒Nب_W]8b9>xzX|rR%M73skqpd*xAX  vHl"- W߷1Fz{w-U%,xڽ`۱ rCゆ.9`C ?;)iῚ~H7RCSOzï"ѣDsHR)zoH"t3ŌK{NueOI\)2[E생חoN^8?0|Z_v=0:m{c-NIjYA$Y.E!B @E2 _sԝ pK}4؀l3 2"uV!QOK)#P5 $G9 7%$g#+`jԒ]IOwZ[UƸ1kb_0Q1IWCL&S, ރqtYYgʤQwxI*Z-@ *h eƤZ6y NTmySM$ioT*{MZ)D?  7"oCw0b{Żmo_􃫖e#2BOSΐRDKyK. ;FԼߜ|.J B* 5'_ᶊľ*ٛ^2V5*㍴@߳t_lġ.$ٹIDܣȫ u["-Ϋr~Dt'sB+vpݞHu.sC1`@(*?1l"gmJ)M%&Qx V63t1.:hmt(5.vެCiP)'8JyzkHzcz,yE]m7P659އxxGܯa8NIF*!.(rvf?h8]$[^n@dܕ:%);>'GT(WHB3TKG9J 2h]<0[g.MGf|fs #q;QOQHzBؑMq! % 4݀6޿"B~]I8IYI3^am>KkW.*ص~uR L*) )O8րS^j[;ŋx:_4o'sw'!L~♗#du٦Za>q`iMcpr2K).;n|r=]MƲﻃidi_ښ_(}f-i=k^ [Yr5#`>2a)WUF=VAR>ZxTj_j0vу..|bA7wCM\uNbʲ&jA΁5ױ6m8F,.#<vz(9iE# \mJL'XҦ[U&L&shɬ:h-v5cC2Ay8nm!o6\;B́|,fQ>[lsL'ݱq[JC{Dc{8N65Km 0tB%ǚZLfCa%Ṷhc'{xҟ;T)l.a|t+`O=I' qp,޾opf.!l;l/X$«1rNrP\K%@V&K[$8ԟvʏWAť֯K{ :Z~No; qWO}|%:׿x^fRL\zrװuF0۳i -^bicqFONPD~`忴"ENݒ|jWi/<OCW/C;\3" |s,WZ.·|x`X-koglOv讖WU{5,a Sǀ]\޵q~43Aj*0FJH A4x nڏ_Rxa4g̟lW f(a»暅Y)9WʌQˢ*j|B S~$=oMp|0'ŃW%|bok7D@%CC#tVb"- *9r)h08q" \x 2[{;08#c,Lkn9+@bJ}O=uBZV|@daˇ?YN~] Ren2\o*%s?ƈh-bj&\W$Z q4f8eflOwG£?7. Nk3?lj>i |Zc!g5l'b-p_ݘt (O=Ρ),iRԶ-a!͗g7&&US\aM0UL}'W dIDе'ip/f}zN/GaXPXf9 Ag&`x[g<tOΗ<1o3nt,I1B"eDNJ"IP8kF?mEh;y%ziwA U v˾2M=wqGVB͝|r#{L Y_Rp`|L}kB}j=O^T*M!=9]rنw6 ؞Ϛ!rPBMG`v)VFŖG3p¶8-`x=B׳=7ޗv\PZK+E 4Mn93q[֩r{SFѽ@.wqrB/FЈky;ӽlI|>6KotXKE#n9$ ?)l2W-L*PP)1d&<3y0ʻxYoCesS`]S6ф٤ ;Cާ6={< Pq3P^<55-~ f}:IIz7.;N~.tZ͠a߉p-C#x^9O?jһC_%hJQɇ<ځC?Č{Cqġ:3|禍|gFv 9m/NV?ܠzHi4o`s8>J4d"`[Ԁ7㛥Qիr>o)OJN W#&Kzq[VP%84Dϩ 9S0D餐-T>";}SBsCo5L،&Y3Hm@9>bAb?WJ㇅rB6~BYx\x#/mZ ;qӄ?iq 5xڔze9ԝvhB9+'/%'0f/rb?<)s'HSn~E R풳CAa tCf&Q/LN8\YhSSh,ieWRr<џ -FCHbW--bBC_r s D?@uoova I$?G.' QG+상2ΪENYI*l:"^St/`eY9 4=STq6@STNGwɆuQύi74[~ӫZ##El/oCx~ݨo ~I9& sIA֫~\Eolkֲ8ވ(%[nW3\Dn3ߔg"dϘ:0!{pF4ox9|A\*) j0!r{Hns} "0Wu{Pauu&; yqc ˦6fjohsܪ#}2xҰp~D:7"I;2g/MmkkqR LC?NxrJ Up]\,-WCЂt^e<.nުaSnLw" $ASZ7Uh`4NYb׵-&}ʑFѿ RvAw!$+n/0tmtU jA!}3Ì$eSQ(`[W&$ (XJ@rmC M #꯮N@]͔K&'WwDG6ɒn9-*߄qA=,^m_Y:Cȝ~j3)"Jٚ xK9K  : 1Q[>wkDrte搾@+j ߇ț2w{c~SV2DtMRÚ="IG8qt{WNww8'앏 i2Сcn44K}9w]faJm'Փq qu{kk>}!LdHeYBq{YG#=Cϕ-r 5jq\L@4HfT IJogv5Rr =,9m'|\W;4dEbGJA-޾B;\1*oU%,񾺶W\c"FP)w oxCɥ;\pYbL /!AepԼAbqGmՇ, kCfVa~zgGZ~9vEqE3|nFC@6 B8'hG̈́lzSHS~diL?2ʫ/`4 oqTR}MLNm~Ow*:V P ($$0R^d ViXpu93њ,Jz֞vC҂v4XY}I?ӭpH^(;V.C'alMd HZg_4sV)>)Ib0`ހ!`D(RE%X9?eTFj"]ϫ[\f^~ģH f2ZUTirO#ON_^Ȱ.o֕X5Y,r.k}`,/@ŽY\&"&P>N%66Xհs}͋]K)"3ese3U fe ɷмE=K-e?I7E=B+i:U\ώb; 5 T4fˊ9ks'Do⻪x}2Kez9Nl:kjol~dݰB kC;0qx1/'$Q3h*9zzF5`Kcx&".3 ZP9i(r=B2qv9B p2\.n3A\I/ pEwFsLdbܒvB}v;NUH#Jwss򴟮q/"'=Vq}VBA0qX{$sf{ Kwϡp9x_?f`^zͧŏ҅c@QFRO *?}!y{o3lpsWHMh+g ^&U@Kt QDpu(VdʼI&z}57HH rD6`Hi;u0m>x*8J1a}\p=2oz@u׈]T;tn59Qk(a0'Yѧ]LAf~ p`5?MףXm(lZ_w%jC]vuK$*}VP ,`o${_Kj}'_+z>ӾFd)KH!GN>b2s@tjI̩͟4yf4}Kf^akZ4$; $bS&ogs6鞞o1D6t@m73E|GR2th*!s ʳfטjFuoᝣoZ&Ν%[[ˊoD #2/C5/`rq&j\5KbރT|`ab4Q2VFiљdr1W"(pKn?F 3'c*{Kc~ױ3Xd$9=qpx.\^Xr4YͰR)畮vz+s[ϸ@ c5lgVK-)ϝ =.p Vg7<)2X259]CCr)@fz➕M7M40Atzc&Dj Il~N{USݽ?L> 01(ޗ;SݽdanLF7%ŕLRgwey7N =grg[)#Ga2.]Pvy)E^td>VXV0{1قϫjg( N-qm *y0*P3#{gv/ q*C "m,:\psrIq8ߟ@q2M?s`CwOZnװC փ2Y—+msVGU RO28وSP{p5Ȳ|m[:N#EHY2Eܟ!{l5׀WCJ]hSh&W0rZnPJ$9۳Րy/)ͣ gL 8U5ڌLDH (g!5vmB蹄x'PKRR+[t2,ܵh642KsVECyKot>绌;IyO, $=Rd.w(iwN x~5Uʌ2#%]+\tUKɱ<_|ߘ eD01!`{ִȁxܳ. U(b?sI)_g#_)l2d-*@W4G`ğӢŅL9QYE^$D6DatԆ~[or|0(yYV͸rqmz *y%H 쌩w;1j[Mޏ|`G{ı ژIA2r#gAc!ޗ1)?}wNt=@(ܶQ3MfuJZݪXeykvZt|s(OĔ/d/+vS+Ahr綛fhS<Y}/j S<) b{j;W۷s Vv~VǠwH $=jt1qsPޗ"E`r":.Gx @?J pvFզ !V$O!ULo6jM}2 *Az寮^]~e,T#n tB:aaDfҨ&^H,ڠpT]l||4ISw,֖) R CR%w67F%~y{I %P,aebnxU&nHWQHDBA%re 7ka2M辔emmBJkV".zG|z~QXtw›P]̺飛YTGvm[  G\X|PGgPxM}Q!> v_BP 物l[,16Te"t譮炄!}4#Q-fq xܙ%SlQ A|y%>Y,d}l:=UBAt 6c ؔ MquﱽKȑ$W*𬕗 {h݅XV>B]E;",QTeeTtzR*^p>+iPN8fK t[7Fŗ`֊bKh~v5mtjA^qF Lӽ ŠdO) ]Rg^䐿sh^z%2U@{oxz<-wgspQ891!pCwTߐII|alv9pRJ-ٞK2[;4WGܯ(:}RӋ( .du\7m''#U P EIS[1f :Xs{y%{{P2gBEXJ <3S/XeFw( "D@8'82z#t@0<A6 ڋB)i,\i,F{t1M^d_XFv <>~UZ7W.YFLʞд#wi:rÅFm D!}:^&` 5i. ZI3tzd dZR^B#ΟN pǘK~jk?A%[MO@],y1d՛c (1䖩4%"#zlB)yju4MEޝH?pk/fXa0& fy5ۣY/chEx2|N+{':=xP}siNbJa[;|wR6LΙ0`PCGd{O.,IԱtҚM= h!j-d);_ȡ L.,Dּ=@ Hl}'R {W̓U1S_(D^𢻾ynp]mA?5j#P^W]$} T8qäet7šw)(JrFow-8 Een1yԱ m hTB{?ڹ oA8 ,OWG숻iMԯҾԧMA1mr?,V%Hs뙤\28$a$|m╇TYr ~^DCU1 wyJ`摙f1iZbMj4;0s2ɒvwݰX4@Vs F) u_%ęScmr3QJPbˀvUN)|’v?2pGq Nm2(t5\XCͲR=HΗKDLm؈'$K E%NHzEO5tH 简S$P|=WMȽU'Ƶ:Ol uzH"i oi%Byl8(v08IۗG#rkG8r:4d*~Q`twxgۀib+`D0eśBT ۀO#H6y繶~Ԃpeۜ0ɭ4(8qaPV$IOݦP A9[)-7{V$Q ubZ#RiVbZLQ=!dq:QvٍX y-/ DD,Z׃f7I=|z =90XM2C^~z18ɾ;A: t`&9SbM+Ub`ėN;I9jֿչCs"1:^!Hdg sgZxV5(Q/G$HXdv_[!Kzp%F?1: FzEu\Z}NGoUd_Y6yrM}6_r[H)!1o=GBp2J*=E=n.duRc^:烈]߶0p'&n3p6}>x|I?+;ZOH(Z ̜• #cL5۫kGݤ@|EUiG 2 bF*hSz>"O~~TY :ɘ/;SE g1!3xMl*vWVu&~"m&X'.Lq9׫^,/={+Ȓ>^(zvR-9Ed?[ Q+{zlXP_ TvkHKi&eÖ!%$Yem}鉜o鼌+|ԥvU}cd2Q۽MF?宆ϳPKOX2&bw` gnfB-q>=3g% Z=$ ǪF ` 9<&&Vۻebҕ@B ':q օb!_ ȥnZJfx0-~C"ɛHbk EdE_L/&*B SiB.U3G&cÖ <F6$Wwy$W◞V:"DckLN 7ۗ/5nR*r\@cBoU ͭ(BKtYg |.X9YٺD՗߈qXmDJj*'`܉B?XϴрZ?lႚR L":ʾM Y_YC{>}_ |w_ )-FҪKw6q"_i̭1Uiߩr~:*KBD^+ןTH^ni+;$uޱl˒CQt#y?HI)|>-;UMfJ4u?}{R!P-|Iv9f9D_k*wRk\ e˚s&_#XۄC9?xAGZrw.:?yLnV=i} S3shDc3BͬUoNhӨ N7rGƲ*dEB}h&# ˴Jv泮G_{'%$Uåk/Dd6P=x\7őX폝X})(+T:>_֎C{X?ߤwSf; ~ ÜD4 b7H ɵ[DŽ鑜_wQDCͮש=wnW<_YR\2QmrNimVop_e# $(~S!3ie23ۯpsi{ڀT˼^lTGQ; Ph4 3D r3/Tje16Q/w0Al!#tYW?MeA\f8+ Y9[ Yr6KXnD9#(HrH~P?l¡AD/{kie}]Cs7tUF[!83Dd>BytKOmKGճPX_?jS}.g[,jZkPϱ$8!dxksjR}%23ԵE %ݓg9Ru q:DpEt̚B/M&E- OANCĶYCK癙Jm#kZmw\7] pUFt'>Ml*=Ch["7H p3 dOTGƸ!XRi#.gĔL!Z 8+,AM>c&ʖ䏃K>BMƠf70:N7|A~EN-J*P-凌f"'>_ApN0S"6}<'w.0|}Ȃ=2 *peOoV _[ @JW iB!O}kWUFҽ}B.ޱV$x_yJ1CazJlE*C/@e]*kJ!l8AG$YR~oiB~N$TW]RUOI?~U􇑓ǒ%-fQfh,f)*f Hmb!vIJjz H守|dr"LlW5- Z@ù;H1[蝗kϗc\X^kJĤyk| Si:ųe0pU4b-{k9GVf_ c_I /J[ExTu6vi 7W2DEhCH$Trcn$ C4lH ̣ t^=mNd-dUěFChĒ VREzzu纉}}SJi,~E 9 AZ׍QS(k',!WQ_,;*?O.JC,vͲzc;%VRW=y 2=dk/$%P4:CK,x['v05)rBÒa{3^>JaENyGU<ӄ$硒mH=  H5O%,]W^@LrdÊ*-8w26;! J#tX0;DJx Yŷ,6ak沘o \iDYV#kwx Om?4 ?vXXޞOMlE&Hi.iy`{FGr]S8)ed&xAO:\$VjiKlA CVm-)lPIzV{_k1*;s}[2$Ӊ9HW7]1 Ȥp,G/_GIX÷hx'eNԼէl iD4budj{2ڢ{PBѧ3uزuSV+=%yjlq0>O:Yw-ݟZVP+]M:-/imAP4^`ZQ̸x|#<,Atvqxdi'P-s>]fؓvv|9_ W3*8r*@kg^sbt Z8R~sIՁ' ~-mǮ:p<$Bk&'o / &Bc"3̌]R$V~7U+oDYGJDZ|Qj!$vcw#!J$:2AՁI`SMbvք/8pF+`P l =,!+ڋq)G-f-ӄ4I9>%.SO`S P(y )ޣo?be8i.Z98i-0OwG3B|UZ/Gf4CWZ:.pE`^PFmzDm(!Ufd^%֯A_ԶHxVXyЮ\ A JC0]'f:GMʌtN=@Փ};pػO2.[LCLo\U?Vy$pDN`UqX;i0m36 8|fﭚ3(˜.yh"<5ͅsyNp[!aǦH-F1"ūc Febi a&onuZ7 4LA$-Wu1 C2TIxB9pn ,Q©ˆ(!ΒGHLGZN>ǥ}E2-]<7 a씉˕I?yDr~TD#I;q; TI9ae7Vou#c~uxW4J˂&&R64_:eƴ{}t#fmFCgp P= 2{w6ߌ"oyߓ{H f4S- ദ yʻaxߜjA}i . L&9VRK<[tW$&Ll_#;9#g<@jp`̷h~U?(Eee)Mȋg9܉ncQGGD)Ju^lΗ)8~a=gqLЉ'xDw+eȽu\e7Z 4):lIEwQaLeM涢x8L]PH(Y-S1xf$ ;!(Ilh]?h;q݅eAD ϕ">C^qP/JEV9Ug7:+L9/Yj"71'UFp_o:.Ҽ"F/xŸי0g 3;`fxqB(]>.K$[+&bJF^IFgƟQJQ:1fE`E w;MY]NI{KzRDuX~uS}X+V>:2[}"jޡwطCjp 4DXWG2fDoL,]+2 dԞ d,w}lw,+*aE +qwcHR|P DtcZ~8AfϦhie>xmyHO?!A_A0p)"B d>ӷp`cI6p{?9V_.` b0AZ4o"G^mI-viE3@mP #\:I8BHtTgB٢=B_WG!<ڍIDcQ[_#XntR@wy7*uwCPʉP8feKWvnm;V\n!m&(jt_EzϦUuaKN6mVFP,TVi5Ⱦ/\БF.0r{9FC6Jj V7B;H wm/őRVuhs0גrJ mݽʯlW!JmxU6ss2[)9+uH"0m13@9M6ymlfJ$Z3/*܁]80xVvݗxPαCЌ:z4>JPUI>"`j ;G8)F:c1RUMLe7!oָ:ncLՕzeN:-lb,Ը/55yj jfr3ȑ$_.NDT)Aօr|U!sI64Rʹʏ3z#pDDѢ᭿/o*Sz3 ĶyGzQT{iɅ_p?j+yf3C?cKϣuDP[ 3%62A ;G+QKMY:ƨusid2'/Aq{8Y4C(Ԑ5X>j0RIC͊L(E2Cu]UUAf<3AؙLwO"%O5`߃u(7W=?Z⊳RIOsfSq[*&M IKU&½i8a7$T'<̄J="ypS`'mc Yl*oWsxQ `%S8kxq [J%HVXgFܽBɑyBc#f~!GiOoQhӭWj&o}#nΣ~0#dnONzL/P!v{m[Ffnk]%2uaOux_L 2(}p`44.Pk˿{S-6ǴdMT1Ϊfg/Ĩ(]/`&c&rc'O ~0I9A_K>YF8qLldqr̢L~E#^1x/=rbU$Nw? >$CFs@G˃ SÌfLV̒M׶{³T9Uxt_<'0UTp:ct¸^gnp9Ҋ@Ʊ:[)tPSeu!p| )ȄluONh㌲QYmˡc *oEr$"RZjeN9++6^dr}N@*3Chv@ k8HFî!|`xЌ1Us8,~J>>#ٙ\V= bF F!*>Ael2ȘeōϚ}ON|XCЬ ę鵨^ b҉/XxA|d#B26 ꗏ^\ݖ"SioW4Pχv| = ^AmThWKV?A7-wN42 ~xPb 7Iz`l7H+W۟Q$^kT`%3M6;y+g@F ͪ4y' #-`=y'0ks"?שtԂ7 Ϭ2,<8s̜=d. 93\"%y e] t:̸;YѝNJ9P/٠] C\7-#4ʛuXkRIrSMדJzBuֽ(>եo9KQq]ciu|Zv>kG& uz buHE8vbKpF0N 켊@.,CI<2IEb}#li&ŷA̞>LF. nG9Sbvcyj+b{KZJV:=Ml9u?3NJL: Ǵ'f@qэתdH!N(i_h4JdlD?0XMU8oREj ƴG` ,nΞ,.<օ,?\I{X ڽ(-Mf^c83j*&8=*IEoQ˶|&olDply3y8 rYչSy{$˿4śrp}mݡ,edgǦ$F<+^Em0 aL^PU;x&~M%萉zp ŗ[5Rݱ)h灺ED)QIWQR@ :Q.%3V~zР72*U5?EbIVo&ߝ',ׅ$mi0IABjV֎] i+ H첊–mQMuD8,@'%Sj 6LUٞ\_5s_M }RN)WjZ;wk'ݪԒ{[mӮf@T[HmP$8=W.g6Sֹ.6Ygf]w/@ҭ~MHo[uG7ۡCPkHygc(u/46[?`ʐ^ wg;V@ =iqAvСތ!VɄ#A#%%ACS:ny8PݱVDy$V\/f< Nj* *_E S]EAm,dԯrxSxRB!iCpYq³{.%j([QVd26ǩ6 .ȶNF.tAOE @YڤUh}60tPxɕ;f. MwW JEJ#d8:*RԀX$+U1i@S.;V@ȿB=*-O@\!9"?`i)=*nժϿ0ϳ;MXf.RS3CB^ wb5lq)vt&!-@QMϡ_;\rJ|]~A$3Y` _+R- Щɢ|1-qalA)N׭*q7*JxhWu:ԯ@YO[랗%T% ͢|(H8TH8,hfCJ\$#Km_,ns@(Q`9UҒ=(c -IJq@$.G-f ^e8QVncxqh*k-ͻUH)k,.`;A#}b(*JCxX[ apJΧ4ߝ sEjH;1c eu9,AK[8K[\E>{Mt,(rXU0 SQ1 bʸzL7`2U/Cڶ<,vm?p&7q,Mr1w"PIX6@e7XhfiЖoJdf,K%oJKSϔ`(^p.4AJ1Si2;▱ ÛFѿ#pų' ̺WPc{DB/6?\vՂ?=r."a>EC=tS;op0 $G i3p+㼉ҍ0F%k6pno1佦!U f O:si<|'ڡ'qw5ħN^=XlS'JDjQֳIJa?jA$'>cz"+ضUՃ)|4]vNKe- p2qCgJ[oF -YI#LsԈ4Le5Z Pw䲏 hbg̦[ZzQ9Ozq"\' [WX#?\ xp(7c^,8ׇ`L{z1NSc'w]`"%лfP$r &y睜QLcjWV]d.:ge2rB#X 0s9B@opaY '(a'E-Ϛ5ޕG7Vm fz}2egXv!u<@ N6W̳x.V (M#{JJ0g~O2xl{"&?lVը@YLWQCk.40r\),˫pb՝ܤ!5{" D{Ti{>+׆B+#omQzibxy7iMP;RcqTAބBN:ف}: t/Z{<,mu'g8{zgw('D o琌e {Ke4 L9џo>=;57Q?gw@v}? KKPB5,J͟0cTȣ5hZwb[j{ʑ6Ļ, Lgd X:TO 82R\ r;쵅ÿ%3EEb9H61U4SpqS5- 81N[өUe 5:_pg36?DezsxA)(g5G|R+BruWԯ0F3^LO 2tTA~>ܦzS~(9[53XKRH콈lW^sP=Km55N0Y.6YjN8Jj^l yy2Ks띆q{{tV$r*AGRm748y3F|]ZQ¯Bֱ蟑=i+J`/0%j//dPHA9P wӆ:BtFF֯2B@sS7h3vGUYGv_X듩Ui r>6SW6Ț_},'\Zvx`rXcZ+]r}v`Z.>u#`[)!HoX^6][mK >IwL"϶~VT&;;* .\_b_( xd=/.L],z|$_7C$B92P͸A5%Z*pTI$H6O Pf16PGn[x"a_fUK>e@\$ nrbs"#h%e9v Q0'N,;4R4+C7+;_[mgȶ6k.l.V f#Vu$:U1MkI6*傊 +TB uhMJV󳦟p$)AB" A4H d: sFhqev0"s-*{<#3a#Nki\vi2$1)ke3+~]/4jzf=J;Uv"En]P{-"J`1~@5XVgbwx5f/N(6R!> @Y,gib2@{}]}Kƺ_f@b}uyzW=ȫ cԚ>ϖRb]fɏНPqpUtWw X4諈\&y$鞎<;Γo0+,^oJX*jj'~=C) 奥5`;+'Ȧxnͭ> ?Z_$`jqQ0M}26>:O{38-D ',9DRŗv$w+rTwu1)~eJ BHp6nTrT\zY=E^"] &&I]$R%.|?_i G@ 4B^xpLF|[nzחg* ma& l{1}݅gKu!`4e3D+FEa-?Eʘ4Xv2' CL8 BÂ)GvU7'4g91 yK1,aZD*OBĕ{CK_rʊ+$uiNy1Zc0:e@Ոe :1b92w`'Lѝ"mcձ&IKԮ"5^=iq[}͝"@ 6"n~.K^UHSb$e;T=`R驼nGZ|!YD G҅yp`\9% gd2G. 6ro2-5?Y} v <IC?+ec-@;F(w`7=ƔCSV ;i:6:+Hs^eA8Т{|)\YNreB}]X#oY<UB%t-vTV/A0]1hs~4%"ŽgPd:. Ψ5aMSQHK70`r~L?<ykAV4dh`Lqʡ}Ϥ-@\Q_7!7y0TUϝԶ2 Ñ%eKd9-—2K}zضc*`I*tPȔ.oF5!9X|3#ַW+߳ýp4-߉S8/CO r> HNk7(9i#b{Įlv/:)BG`4T&lr^1^D^3 ݊\ TۼHI9S.%E"r2uT./C }$oDxZh)BSb(WRjۣ+E)ۙHHأ ?to0 OdUdLvL/V^ns ~MLϊ㑮ԏ&l,xf\`SP:t+EO&j<P /}Z!4' qwYiP)77[ZPN6[J;q2_c2<]oRpĉR,;,DFi5G-pE_)6ekw7sX7u cw;^j6Ԃ eyH]osL̡%}k'[-Ik_NpgN:^VAcjJB&˳eܡQۢ"N* z.ciZ ^oK R^7(ZRM^F$!I50W=N7tpO0+'/5 Ɔ Bvy3:OZr;R|)>)) QR Km% fV%lƾhWhnGCW0k 8˫`64vr 4FGUЯȱ>B,\t:"dXӟ%^/UZ'xHS+I&d'? v[usƜ@d~,cŴDQSl)TkTā%e"9 ? vl|jl]A18nm=y +cUo:=f ԻE 1D K>p)>o4ȞOjTg5=XQLQќwCލ4Dx\M9ɂG^DL;}FgK8Ρ$j]Xp`+U¯ s\ isGxJ6nftTJdFTHL[g(Ii/m]Q0a?`yzIKy-X_pT%'$~.)׊9.⬪^kf?^֪~K}.$ ܀էݒʑ m~|U}uQ^yr рOC2AFf4pyvnI {`tib`cho0%d+Q'oS<@/VҢ4UbǵE'[;7K+C^AF'G:Hͬr rbR$e\W)-,Tצ"b,`7t )LE֩2V8q%?!i[fcM$p)#v':V1GW=?a=GjՎs4{D)>mo :n쐀.noǂ<r.u{sRCgCk]u Ш|qTsA ctTVPu Tt}Z'$,>rZ*M#´$ @6tsn~`obtǵ(S~)VLǨ4dv58gs(|,@3Ii4D|Wj= s =4'Fi_Q8MI(J =[2MS_<BjU+/i _qX sxrƦryЋm9[ 6ȟ(E3r}IJ 5vg,Hbgyo/ :!4b @daKq0|񴮋@İ>0JUl+bB/]?^4\o($٠B)lVQ @\M$s9Q&pfͿ@zW"XoX*JgQj#衣5ѣoydV!l+'0MSQhYyfhpG~z8> ' s:㰈tTpNv)ՂnڛօzM& Pe T@Ze85/MsLs2V 'ًof8rV̡5B"S,[)uwoSlN^I<曓Ӹl޳9)GOVP. kE5s2`A6!d*鉯ɈZ$NN'_x0D(Г5Y" [X,c}Fo3'9E iQtSq>v#<=84kl:_\%nȪbMuS;^l A Ll>+s{Z2gӣM9<>x1ȠO2"_K;,EjW`&AdTI Sn$<B*}'@ Z5V1Jk5doLdtTq!(kJAk .餓c!j޵t}̥;P #?𜕈3B/y}x$L.pzgU5 N՘[ rjEI)]b QU]O (8SI|![W,=1S%HńrcaIP#Npn%}լl`oiH ܅W',|ˀ?* zD`x+ K e̜̅wyA1zO=2Fq xei18}*q ʢՕ^x$,c56d SRBB@9|?7(dŒl# VBx_b?A>K-S實V=}m~ziP"=~`R)F8DKRz\+n'zl<pvkBOħUw,恰I0ЬK$lkOm?Y`7.infm/kFߴr:+)=3,&| 8ݨoe`iq_nl%?ov&HtL#ϖ ϨCJחWܿf0m6DlkPd<]pm:H-2^eiy1}] p8w{~7Pl3.M63q=f.z%̿мp ;jLz!k:;.)/g> 4]LǼYӞLSz*#E1 {=Tۀ8NLԄEC%Eǥ"gCN?R,%[k4,72t-p(qZ=|>dM?M<\e[Z. ':*9m~!`8sֶU~q/Ɓr 5C0\r`d #a"wE~Z(hBٰ.<LjүL413e a}ǽ6wr; #"g\{6|/ Go_sBai68AΥY{xFFvu;G2IBnM,+LI;Ƭ):_ߑZcZ!Ԟm%էp? @cZjl@3Ecʦ5FY?p݁DwE va@ 4-] ~FB1+,mM  "2-%d+mP0)ҩ*,v Xj'3,VKKT2p*X<wI&jB]͙?.e! y i~5l=,.weֶ=C&s6HaRk 3_J`FG}<>ư2i{eQ؋]Xеu mx*lRk踿F4Ij,it9.2'O^X-zy$eBQjMB+#؜q3MJjjt=7XlTK悓qE8ҞrV8 ݵyJ )(ѐ/ҩK+2!vT=8IćM@i}:`~QG< 4HgпX| X 4Y<8DQ[n6LJdnnRt Ҥ"jr9CHy6 ؋ @|# 9ʁ#OyˈP$ĎZ'g}q#-:y}'ڳxķg1ACH>}}5GxȮUS5Q)/tKlΑ?~/}e3敺?u $c=鸞% կW54^Hb{5 =xГah{C?~H?e}SZ5R&n-žmB!snm0̌,ZD[\yn}Vl3lVdғV۬R#8vPk7T7/N+_#mHe2Bv@VfY~)j} .ΈmhŴ_FG|xa32x-|}K"hed2!W9^ţ }nU݆ZU ظO* b)!Ҁv+hOJp=\W7Esa K[`Ӗ"U`D\Dsf쁷$آ+!JL"=Z; [DS.+dn5f\o*j bCxLeq&2J:97~,̶%~=VHѐݢL/ŋSH_yC灅zsN|$sԡ. p$CUT,(T G)&Dm%s]pbduEFo @RFdI{;V D5}7b P[OQ]?! :f"bwKlwM@L! &s u@ᶽV8mNʹ//5[D#tQvjкjn*'χo(ƞ0T~2z$^Dܫo`z*ü}"2v"#ӠeygC6'qo&YٛˡMjL>ŋu,SAu} )%<дmsŦL69eS:);(-@b)1%W8lVqulmw n0|!޸y+Ο\\ۤǵ|;@~nI .ᬰHg^{Z#rM1Xb8E;K`yKQ^OB(ś'D}IO;w i7Ǭf3eP`r#v%6t t&?~4 Saq-T a}~"˃yG;B)!}d;' ZATsg9C3\D(a}N@ym+tW?EUHR:1'&Dl(мp Z5}_Ƿkږz`ߨt_}4>opT] .$e ?0,Z=t: yB/λƜrW9W^P(뫋Y(,"bˢ=%w@}DD $w$xA+a_ᶮ )@ LtJG} n -!·ҴwƔ0$O4\iT)]:X2M W,L_J08OBiҖ]. eC r_x:n=jxb<3eᆇ@SAXd &B SpX.ugf&Xvzshs 'DZ)%66LkeטD42?nr)ܖ@0vϗ- @x`;I6 54q"vDlyRg,*|t33d{u@E ^]S[*>^_©4uQLIH6GqDhXv8ݪQx%#9H?X+ob˄!saAJOǮݭeUkEEkuXZq3.i.D hsG*&h7%M$R_PWV i`3ւW.QL:Xsk: :oIKNtF~d N#uaѨ%EJy䩾~>²Nw6TBPuZ(t"@G&ObTV g uBC*Γp© bp9]bLsB)UN4b HCwV$xd݈s MW2#1S0k_SŚgk[4a=)vQ:WDmnr"N "4&."V;VS-c;ln*|{JZ \|v4wvtjg;݃\&:{Z=`!T N[R ੱ=(Dd /WehsS)~-/ժQ)Vtf]rQ)z_*n aA0-,hP7%vHYU+`f A-\W9ht^ b:G2-v.IXab冇Xd@8¿G{$a[G #=x?k#P4$!" R12ҔWB1%b{$Db[O;ɎP/ۺrj-ְg?,z8p#T7M5]O NpK \H1{:QGʹΛD3dQwHm" Z @?;tD[ch0J˔ *E6M! ' ^Al.|(]8_uA8T<(.Ȩ%?; cH׫Ƚ'PX dO?yoMͫ{D@Pz_ݗ<$v[7Fk$ݺ%XU&KÛ4hb4P[$\+A./$P%48 W>zjXG|\y"! 8j6O2FlmKfv?Z)PMZܼFP~\z3KR]s2g4m'A @pd ޠY}II~R#&<^Ө3WR017{{7F n{;v؃c[Fݚ(S>Eǃ1|HIk/qVKXdi+`-:tt~ rfKc+ƴg9&^ $QLG%CqVk=OTq֖-( 0Utw+~m订X <==8 馵v`|6-MsCl,V>"=*0Mdnw'ݦJI拓"s \%-ƻG0N"G WuD`_y,2qblky|B!5_r ,D7&jnXI_`{߳m`UZVVBstI?E޲*BZ^'bNÜw$?ɡ*%kZXfpv1kֹ/&f#:WY<*b5BHR,izrj!eހwSmBC+'toJ }0WpWP8uݔ C&gFdyGϲ7o' Mk+V)@_EI1mY,k0)$ Gqv57/ R0c{à+õ?,ͻ6~;=u5ߜ_993w1$jO+>W՗|:4vcB{2Sqg o #,CpcΑ9(^z07y?FjNo|/PQ>̝&>yV9ޛ9^eRW?wX$@iLJ+PθRK]#m.5fՙ b~B:;nl|8O i;._A>/(}M'`' . i]u'^k)puP;ԧf Y\G_,'Gp⛮.6RI 0|چk@ucr-OTEpMӄbOIWpJ,Gň7A? QuN"տ3V>mϏk 'YSI/e.\P+u\:4I,q\٪@a8 Գ9 K.;>CKX Gx7or@=}@6DG9`>h%,9Ƨo¦ WJȅ-~bQBU@}7%ly)`$)ڎz9δ+pC #~4⥪t-'eŎi 2vc"oY࠹ݾfۖNyKҷvgxhte_plc6PK%EmѺ>rM\CJƺ屘S2^XD .r:IӰ#%Hӥu4t!ƘVڦu_RçG4 G33= eUo`%>Z򱩞‹|e0=wj ) mk@1oCG~0votYf,X 4рm;`c!,7=UO^'A8,s Adh`Nq OǪl,(z!uF)^9P G%7Fbԝ: Kâ@ Q@VITpBy`뼇2)ٹ4}7J_t` ˍߎ%qs'R괹fqvs5F@2,{5,1"Z,;٭lqMHNPĒNk)xsmN VL ߃w6@"39ceR )q"!r3qߣǁ d,fчqCVF~adbdڕE!'e|hў~bCQqay--ƒ[^=VT=saPaR}S=1Lls =v2cFLOi}V뽄jI,bleR$ b_PŚ{&.^PkZLňe1w[ȃƼ6mIfN708;|WU1{5.,F6a&Uǖlg@N=!' ccEZ|]kit,%\LC f4VUa3FœX0~ŸY<6v}i7rp6f8GH889A[cVy9b.T~I0ʇ1#T}kֶ֫+J3c z5B֠ z1.%YGƯ i9dw6{CYv|FqgPj5pc a}9="&\уx[3xX~G&JUQXDsHcpE_c׽QBT.sd ~"}h\RȄF+Wkw1WA6rۍ8g*pkޤtdEHq`p YfFDŽX/$Et:Vv[X̰u`W:s?Q}^N>x{f@h}睇y7_x9 ߑ1k 8Г4.&ճ? x<z{ ;w S5f˩l1n8pR|vw?D4gpf"VOgEwB{4MQded)vڈg*S1AzKCL`wHϸe 7oS^viׅՄ_DL{{P+D/gU(ݹ1Swi%Fxηb0zn%ǐ z(`}"1uہMiLP9ԧI RB JB}]-{Dّ15:2gnM愫Ü_RmcqܯeI-Ȑ׾ySګ8U(PlF1aHVdh35BJJ7yw;y}l?O#`Ef'id$tF8؏Wkj5o ފtc4UWǬM3l- `; t_d GzÅժY,.QlTQYJO#s3?q]3Zݩ[jҷla/&'v*o P ,1ohaˆĖx`(# X&C sx-'P'H2NB(b-56XMkfPQ> ' O"w3-y cW$fiI$=Acچºpi) 9*!b4# Nd^:Bg(3f^ܢ&!]n}H+jsW̎~"/|!2RD_iU]dy+# k`%A)iHGos;ϣwȗ~ aǗ1&h@J7U(/xهU.6LCOuRVK Sx?ע*/ez/蒈 JU|yeBqLj?&B&ϥT_ʠ",g—CNd"2%PECl;7.\B#̨QhCYdl6pQE~rw(.0C$<ӿG|W > NtuQ= 2”JPd'1+!=u.|b<(hs̩ot_HꐖU^2BRTUؙJk@ -ƩCp_=Mj4CH/JK]38sݵS\q,kpvXvI Ad!EENC: 6_Kx}8 @vS7xeWЦ%HYtO$p6}L$~wtysEsg7RJSWɯr fE7/v!J? V{ ^K N28n^Y  -\'[VErzº߂)Qѱ- ǖh"pBzww) '$}]ݖF}'`P"v'SS,ͽ‡IG͚ţ1PJCuQ5i#hPv"~`]dT<4VMQ91aL܌OSh'XX,V7J=Sh?=^;_AlR%vlCKz72 +u1*iңXN!iK'ZW]rwoZ>ۭm`Rir @%q/V՚X5p-m^n;+$4n[RW3au P[6wmpgvn;ffeM{+3E\|B f WVIRТ 3K瞈_QV;V*]g_ΟZOېP[X-^iV0G}|amh7&#OWo ̵B}m s^=ʚk|4=ʾ@hȟr I$oatԼ?#/G"ГM52S2;@-FH0lHE21Z4Wݔ`($%tq^TkQUILpO{@-)f>e9QfjJ2ΥmPikdZ}XޟIAbh }E W)7>R_ 3^,,%hc5nO._E bV{X0R1a_Dg~%1.Ño&I !ԃ@ 'qA#|ITԾ;|2r iiL2(g:v|Ce?Hu"H&_ZSB*1XXZ\QlHԒp}`|(ncK@YTv 1P$V wYs- F*GF-aPʆz3aU?NiYQPVi,?I{hv+w AVg=L8=ơ3 A[-?p.SE`ltFIgYYk Χ牢:sVUFhpi/`\ړt^ݖ?:Mc(f\{n\-*[5]󿡞J w1'%|kg -h[`T"Iѥ|yZXWW};eUhr8!)5/3Ed_ʙ@@_ܳ.I{LPru9c#(E]`ɲpeՏR)hu ,̂S!d@/j8mG<*_fD&<*@E ]#A`M }bjv|V`7P~W}vQ>BHEd'nj{ЂGˍl fT =Q]#z ,s0 &ٽ,2f[S*=aM-ɮ-d`J^6&T!}`z3U6@ڗKD}#}Q4% 'oG,{x~lC*qJǥoO̵my0.jxfSIHRW-I*NáqnQ,s@8yڳx>?s, Ψ4x{?+*ʭ9ϧZ|.PI { o?(S_QԿ5t^Ĵۂ\T)(b . roiA|*0=cy'I}-,:O"uo 'GE+"*fTKЙr|Lh5#GqR!GR×0|J8`-.x}wC5Mb },UakPS;GP.] ̲zLD6ݔMQ_ nIIb: /=:`DE3(0yQE"$ 4UZ&zUmVi*9e03Btr>$X%~G%e9R8 @^*̍J/e(U5(of=[Vւo̽LNR9Bg6@6r<6Usv*?~I2M8Lr,ut8*$Dkxoa}KYQ)/A &^5 D5*{%_rdrޫQZ`d(9LcIy$*eCHвO3}Ch[@ % yy;rpGHvkuԱy٦[1R:,W94!{$ tVKӈsٙ[~D98ڴ:yM],ߠtVA]1\ @T*lǤcŻYUh-Tn_#\dr/POX⪴`ԡm$pGQC^k_fev@^4"/5PoV#I^܉ktd8͞yܻD̢WSSԮ4͞厧&`h@(KQIb-~}F#Z-Ϗm\yqOFE1Sn ҏ5WzÖqBHKK|w~ǩT= YZ mbrI/Ѝ&X>N sM@x%Gd> z\?W/LÊΧ o $*鹻M[y󣒝KVUS)S<`#Xy/ /=i8@9|l+^57|*!AH~d|#WѶ +K[:ft|lɱj"?RGXS^Bt R%NgQuw\뭭hw!sv->Ghk eO%9jf*/ςfVDcVh#yf%,:Ll]xא ,u8h/Pƺէ{E`*\~>F3R=l :IBi 9ů?kXly˙/ [&"b 6)p[6r6G cm2mld27̧yYyޜ`E26;8^mqQwy"x}Xz3 Kڈw!oxHl4*1;ݹ8"mގO?I9:JkwO44fy4H6 _njo iq $~ rǘi$!(.eHA;ltˏYRI8Ыzv ay2UYeans=6IwJN1eWd﷕YeB9Ls9CٗxxysšUZن:L &oHǤu1O};2MտHhQߩ5QYdaU%$^T shtr7]T}OoJ$Қ]F> A(qKz"G) UwBLC\حwnm4P؄9H }P^FSeJ*uC!p&Ԉ Pmկ^.o 9p(oǔ4B`{:]_ƒPie@^$s3Q=N2@O Ex8O[wANbio$~{z~dj\ʝ:R6C4Du5g:\k4ŧT#4#u5.}JN+K#2CW ĥrWy3"\6cbKz]9"

xɦ_P橈sSG#.\ j g'` 1c'ce`9~@4Z]"0&+ڀ/9%,Xjc 0~Zw7)@c.2م!XJߊ=E\%hݡ/ZcL4YpYN)0S- Px$ElM;&O+n^w|Ĥ&!bLLv|Tt$p|o+楩Bzr!rhn] [q!Sؖ}jv:|IPk0M*v6{.zGw2_ `c[sffwbO4`Jŭ.L PrPe-ŗ\ zE/4^ n7|BG~x_.*dEtrɍRMw\aS" KEV ȾաRa ,,T_/nO&t$NꇤE%cr %xx] CiPvrN>1F? tg<H??! +i"iTw#^ b@= O diyI]Pyݥk+,MvƃB19 ja`NY"T(|i$^bo$<8م|37^DKyZaq>ӭt^Ν<ھ~L89hy̱Vz=˫OY?rK?\);SVQ H0?aiƚ1:TaH8\x@ÞsuxKf8fRWNExZL($WK~~r>$݅m\9K3`&N'tRj.%Hݱ]J+&?IQ<:DR&ZC`;>m]CKW5dR1ܚ ixR>gjG{?1ABK`\Gk݌  boV=gts>bpZv.cBoHN0v72GwZѥDL8`HItO@%{kI30yxp;d}Vwsύ珱DO᎜ӿѴ1?dF>hD0JIRNn^Ͽ[OW*_LL2)> +sʃIiOrāG zȫhɣ^1A[ϳq$`ZJE =ZTh*ǸC].a?NRMWdDmV=[sUl<*ͣ]܇NGU\]gO,$©rK˧P*.dR}4ukoJ)afDށ o~O`bPzz4[+͸cqڈ@zfzJ' ꠏb_I䝔R&<ap`ŗQYIJL (HmwNKb5U+ .|1ˏ,1m>젾Ά+,}9m! 3@;2Z\pyTnqbW=X&IX+E+timڵ6Wgtk4C?v?[ $C<mggkD}#'칩D=(ӻi`#mPXw}N CUu7,g!j"Jwӕ$Ck &H~P~Y YU>B '=plU QRh^jŒCV. 9 qy:5.<=^gjlel0`S盓Id_0j6%1gA#^`Cgܿc2;냓&݀N6¶F&χmN Z'p19 A_\ 2iޒm\(pbB1D~|Xl٤ #,g`p@=^ddR;bDU[n[^{*SdRH^-ͤ];!^?;C(6VTʓU8@n{g# xz+tQRB  ,C2%(gu|g{+u[sg-/$/ud*-d< |uXgzf[9gpkm:P`wר9;R~>.VTܮ">Kݩỏl*L(5+W a^[k"g2~2ʻ}aDq5clʴAN5A{A3:@QTI d=ZD‟?& t Ƴms&|HmA20qH a] 醄mA&S 6DGhrM.{W}O3>[~R|TLC,Lpn$|~Bٿh;}v"[wҹ>@bV4##ݢs\f]B`nd!=hWoWqy;lj0{C2Xrݵ#,(1%l~) 䭴_a2XE 9H&x ~ ^CO< *Ve(~mxx={OJE7:$>h=W2`,BIfnޖK$MDўA׺qpV+%l b}^PlX^Ǧ_7dF  mӖNWN bl_[\c6l@CĄ,G<@C_&S6F6C(D1'e;4m ,( cǩ3|߸Q#h:{n-ڏ<  ~{[RRCfBtxWF LIkLg|=teɫC\q9,Q؁:T謁7 ^RDٶ? z-'T)P^,~[JRn]TvslhW`3\ ^aW4,(}t rE4fx'ud'*: D;WY874ؤB BWjZb+%INzQZ)3)i?~A2AZ3́kfB:+եV-Rj*<KhҍW|] %gh ZT!ߠ1RO۟Lz[zjVwcKtPP2=Հ D'eyb4d=1:zP '|p_U= i֊L5:^T 0+?6$b'qo PZ,O:RƒKMdס}٣O~7d 7\DVqHQ>K%Jgd |6ct5\ NC (kd_.u.i6 $DCRY YK; D[jOxsjnLZU8 uG, [^C0W,g+7 lNbˋ9b!"Ԩ"jaFLPމeJ_W5vX``j#F)'H6Yc}P58h[t{q4ELmi"QkYeSR^?B)T(xl7MlO/ֿbcH5aCFkpE&1YaJ-ղ;[>!肎taեY:!=롓 *'[9OqZaoT#$iv|XOv-{jfXa߯ S^G ")wfVs$Dy "vϕ_ۊ0pŖ?vk,ɥNT1) 3.^C ®1[v?qȽ$ ~yeݸMu@EM֫]B'o+\kro)L >jc4SWm+*)%gVF9Ag0)JͶ%gX9ͥU>u;{4SupEWCE݃O>*yI0bO`Mum!1h))yT' JN<ᖋf_IX|:xQ)4byoJ`Ѻ<+co ZJ wѪIw,TA~zB,qt)/W<=d0rm}/Ï +Ӱ?\ʸu:i'#̍A{pNWml-2tM&eSz6.Mī][YkG&Ӯm z+ /Iؽ5"~7)#b-.`,nmPE!д փIM^yg&춬N 5a;)΍f] ih;,5ZJeS[lB":L]u ApB,XZE|쬁iٟƷ` (v!# EXsz?s#മ6DwC ڋ C?$_&oG"<>-XZeҊmCU UT y![uyȑ cO.(@ o O97>rMQҚ[![αl>E.Ϫp(x˃^m@<8B0SumrWKMũM/"FluƮ?&_dIF]#בo2JqLz/.(3U/y.N`i8Ryf`K}7vYlb@Nt\4ycWᨲBϤ.7x@g[q6(0>c "Vq`u[WYuROs` rkVK!|pAIRUwg\k FRN벬uwP}*i;̤.,ٞ^iWR?.? ))j9!!̹;% A+{D oXT8)dÕbk1|,@f$'t|]4҃ v܏ xMVzrWQRl}AS>%h֋ѯ%(4fQd;M,pq$aQ0'\]b>INߩ+q0,"zo-{ !9S];"[TwLM]<^к5Qm/˙A^:R [=h[;dp L)>tUmbݫ'! b< .vzxh(R@6-hatطB'2F,E8S1U.^=) "yw|X0fa,>Yֺ9C¯ /}~&k ˆ: dlR`Q{<O[|@峈+AC I[yBL #W,߁~#dRH5CRm3m{k v0)ZY%koil}Gjk ! NKϞ7c=_҇BՈ.R߀)lhV EdQAi<( Q@`^jdx?W8z\k6Hʱ~G2̢c ⿹}bX4ď>\q@fi~BNEAGC = ^gH/q4#^k@p?TӍJK{%=V^lJɇBR(IBgH ɐ`;|uo0?uYY0kʜyU&ߖt^=NkBfW#j`hCGN[* y0g0a5c%n5~$[tFb0t뷗SJ'(vdx2:I0-]C8P푺B82tG!6l$|{)tַqnDh=_vJ5LgF,ֲAl|)Q޴BmQ0sMZFXg668TB( ['ճ$veJsق4Oh?YPoV$Ob/,+^ߎ$h>V0A!] h h,KBFޔ7oi;\#O^_% $@aJmt~ew |ztluy M-e7FBB3+{uާ&z#TY /gwΚ:A&.N&rG[ I >$::@P2^#@CtVI exFהrHG{W|jH|OAxzOJ|:>.- 0o7krB(13^}x9{'F}D*k,|7u]Gôږ ^~ט;Iƺ.-*. ~%+?LLIDUzzw.þك/oH\ʳ2$].[aLiRqg+.za_;kfbEApF u0vHY xRtOZ׹}}"DYF<µWL'6Rf=Ԍ4w.,;dHʥVF;ڢ: H*Hxa~u<7ݮ㦗IO*y@&u9t6)0K dR`"&z\b_Ș%D \&ˠW)yO_AGhf̉GԨPϤXsXmRU()Ů8""ɰ`n Uj0ai]؊Tk;6AMTQtW 8`Ĉp&ΧRnudPѠHk-ɭWrqyl<{bW,[<_4arn!U~Ðtd# i'z~uih4\0ܵ_<]%yfphguzBl),ͭ\w=Pv1H[wxAhCi.rG3w@J+6Dlt5t[@vܔغ5L˜\IS//t9L(=@^T")caGTNM:M1Zq!$ +Fm#ԿfWB*B++#00Ŝjay> cWeC.6sM$ć0T.|ׯw*I=+Fmۛ'@6Ѥ >*ՠp@ox3|~_!A ܗdxC\Hf:_s|Z3Zcb|i,TLPa#yeA_|P^z Mk%+nINu6x[NS"U.PEB/^+.clٮG[T$mo韴 s֏4$̔tin<}*b{/2|xONGF.dNFqXC [ Gbb,ݬr1-fqV)`FtYkːőhi* ?4mI>tAEK|#Yc8/Fq`e}@&n4nPHϗD 1|6@CgAʽHv_ʓ뱼>ϑ!ӘjQK`(,Ew<8}~/%pNw btLQKw5 fbrG~ţMQ( /dLrvjݽ;0U1q|:(XRD'1TJ >Ɏ8ـp49.^VHMeҏRLboe;D im=%˸֋cѯ~:s,&fbfolחb#} UMiJ [&J+@;_iug97Ȱ6$LLzl3rtS4t@Սyq.f\E@xKɘRviDPDBJ&;5<=Cnƭ/FZ\?`C!0j&WآoCE2;6XI sVc7΄> V^=⁓w$ uT>h5phR0 0Vb(B}&K+P 32}Ck; UPzs&*e!u],tҏ[ C{N3_y>GsQyQx 9P"%\ci oo~sQ(̕퉝̂—0]UۜW9My,Պys?3Ԝ"֕-q/$y0n lIτT?+{+˃0Z}w,#S"dYBזPM{^1Xʅ fS0jnQ {(퐯1`Jm7[.L}?=wR?!er_I"A|O  t{e0> oq+t $%޹+;2)PP!/ MMUh|5z@D +\5 =?j@Utɰ `B 'oVhKٻL4@ ,=-z_L \>YAN8wX6iDW7c"=a]1lBՙ@2>ZUJ U^DoBEO(^]홑0'&Q"PIid\1L2Fq=בԈD}q̺ Pw?؁&(>v`z )*2OQ.o4N^ߴhL֋]'p/V׆>75rll"|W抡"x%ia@ Fĸ ?7Ti|kgkZ-5qV[:32k9{wQS:k&Z}KҌ`ܧz|il ܂G=|v?Kذuk rc^tR!yjʖh & gBlgIڋ._`0rQ\WcYc0Ckmw6#zD 2aq"~x=)(RgEwN?=? N]($'~ #.OHS1d%ⴍZcAGӶ>^~ T׶,-@UVF߾W^9g5514Uey46fʨ\Ъ`3l.}c̝^2iaGڂ8{mIT942>yf٦!pA(ұ*0>Maɉi"~Н C!¢z{1܇B{| l]`XKvz[f'W G|GtzWnepNY3庩饠bAy8I"Fg= 0ijt &GkLCD,^\W$- >pDQy+Y4 RPŪ:]AdH9i-S~r=^ve8ld|B3תΏiMfoѤPJP#i.?׬a̱Ƥ[l2JjwC?Ld\d&1BLD-Z >љSɍ6ӷA͌-Vu;.a3|? ]QoT8˸/U4O4U Fmx%b CH({_&{ *'fkj`cOs m vQwv4#YΦ׀~}Vy|T4\Uc>U._@JfC5 FB3*$n?0-~i(IwьL/V?ܼy.aϭH WEb:&> eo81wSwM kjj[N+(U%y[/)tVg͚~aԌ0+GGKei2v%5#a6\DdU9 Ebss/z_o:"e>"cW S OD %sã K/rQqK'beCz:D؎8k R)oWpxB&~ĊM,A5"~iTy4w'dV;IK{UwkNF)$x. IK#{ZT*m Bkۣñd: gJ3fx0+/j8pG .:Sj ކB K-8J#YwكED\c k*v6Մ ƋzJ0HB-oj2^bi`E容窽ǯJifUŲqfNy\2SŽP=@^u?\It{?2iUb:lsY[w] Y'cB`9=ׂ7ѳEtKќ.kĤCʩ|˝Aʵ5LlI͔3|f;ƂDD}/U7h3QtQFL\etPAov@ne0L@#y3s|hUpenT ,ꭇP4^DcxtD?Qӳ4mTzevNx{2,zngFXXS"C1]2ebKyVU[([[P.g [3t HMAf,jFt֭a rKeĝ_ea>.P)y5-/b4³pRؒNdz\q xtR~Km]g~s@?>6|#e&[#ʑsDW϶;%c/;Uo8Op*BQXWT_=FOIU.kɧʼ`YP.$4YްxR%)vF&DM * :lr]e_bT 6i,U]9poB!nRk_bԧ5]3 E=Fվ?-'gC\,DETBRBd|`?_rrxSjQ X+D@$ "̆U AgUo,FA_}n%F\Ƒ#QTp)'&4@ӲO˺a[&$g. aNW#R1&k;~zLcbz@3eA pÎQ%pq:ScSWni so6N&DM;f$Y< B]ґl[zl b;gilWF8,Ls*rL`{GsHЎɏZ>_#"J}B(k+%0997օ:J.Y+b! )I!KPL;,+g v- je>3oV״M @nR\}ī] ɯ+q?D8=U< u+Ҁ]օ bxCÿO%=ioԊUn}Mc0kq;<B9`%aTyNos3KGpո0//FdnTwGlXBiT"j\hz)C|k,1@h4GTM`=znS \yW.g nHK80q1ӐjE߮? ܚ!$u؍(Uȫ;9Y 9Wxk~(x@<h% `yǙltWᬟc!Gkjjqz\HU{\#D5(W` B$7n.*,2MRus۶EP)#LYZjr"F.vԂ zdtqOۅXtGFFVCwtP65TǷ]~/$le!׵ti3 Ƚl jT'OZ arYԂ_RrW o&RԮj?Quc6wq-Ԡ$ΚObL>rLh !1₥Zv^Lݤ~"S"ml`bdBDZzXFWf~C%jvh)߰/ADG4411~#əb%R׮ϊ5mb!cIXYjRbS7z<&m7g JpZ ̓e̜ M_ b?idW?Yƒ;@dYםͱ \.8n]T|,v"i?zS\oX['+logd8}8oi8R ˶vՖSVpQy! 5DQ לrLr##hVp3S*n~T}>%3)C#҇I5{*=Px*wMZw9{y(`_g8jqI%Ŏfe}kaV`^ *1Baj )&bAd4MxAvדV>";K$~Ԡ%lxG5 ӺM sH*8Vn܈y"r"# EI3Y7vޟJe5Juh0~gWbPE]00``'fHC**n[zjn Y#D\\3?~!,F\ouǔ8nc[#TY =+8o6jp"ݿ%kO܀=UJD/, !^)p9\s|% ';^kn;Fκۂ[!m]-,$~! ]f?Wonyz2!R`*%1f *>ťHƟ Br*I_ÅSכ77eMp9a$x }"uDJD؝oC7T"q<;x/W IG?<.bV+>ǙqJ .Hqf9mjOd_~,,E1!!6]`P80vgt*c.y5MVK 5"6\AeOz ae zC~50y&ϓ[@x?FؤrsMO>{`0i56xXa }yΖ}I?uua ~l&W>j`%2Pқ .It C}P쬜ǍZXb" Tĕ7(R p#ȭE+?zǀp9?Ae;./GasQr(jIĎHRj .G*js |>qiWzgd%>爓eyދH9.aU| lQcEנthm1j X,/N.:SYPK-mopʭQmR=^mθЛn[C(n 0B4;-Qa2yZaO ݑ_C[\'Kly{[ KxECnyv-_ sɴ_/DwI*3q!sTxj>ZJWFR@iǖ3<-xh/08(E&|b_Jΰ sxf.s҂XGY`̌d;!Ǒ#iRB\ƿ@w0޽ƣS__F8r)32ٷ=qp]v/xE޿3&袨չ yE;;x" {VKϾ׏>V[1`f2#p6sV)ZwvKqwΕvq6T 2W4E'q3#=\]NO(/ucs|"C96 E !\hbLJbuTbw&$-H C >Qӯ2<ʞ#* jW$7 _# vUUyt[V1v0+`plاӱDB ԗlUa&ܛY6۵817PҠo'ʛYΏr8#:ҎME:RP^a}"}/JĐg-aZeF!YH.RLI1)!FQS$U suln(l 4ϡ !="<$2{JinY EG+9vpInD &@rr"!Rޏ pe>q@nHxWU{9yAv\Quaze2eϜx6x]fNe,D.lH`^ pͧz .TtU6˸`(xY;O&'0fσs%/M|]OUڅh=RW|/# moӉiQk/a2x" vV=nR՛YpdA\:3JL)_V (ªshݢ}cW|Yzn.1P.rHPw?V Q W:|@[m@6wӂLMS]oHo+ 2v+%*$yM"adRpz\W ~c69[:lj.VDɰ> {+|#؀ ?XE]2a & i!CBW5afC-KS䗤u47rl=7t}; eâkͯu3C% ~"k,TDowҶ_t4_=̆fY҈?m =Q0 /T,Ϫ`k ]}++ɂ%O#;m5#|OWUp~|/,w 1cyY1b5K\9oş;iz2-x' m-rhDX}P c p-V#bZgF>_UwkL:1g4\i6tE+%>8^Xfzu`p(t~1eړ MIF1d .ؓ>yk'7"Yx*/o]Jaۂ(唫rpAqܶ|$fO~7m@ ohTaaXV9G'x70ܫJ 1kU묫{"y6mLC\*̭d)<&ZǷ0ɱ6V*%&hx`O ]G"oXRQDk FiTRfЃ~ "r&^ 4*t_Ems!]?u 8?3(t6fЩkNg/kzEux埩L]3Gg(^4=Ԉ~cl-q.&w<5`czxmMeBKqGYi$a-[<4͛z9l|.ᘤHf 1ErM1 ?TS_4Oݓk[N(r;S ӀnwhY)W?  C+2|Sjc"u.F̤nb7ݤ ꯫m<|u u,E5O9^{g횎o&'G6Y/89B#!TziYa8>tB_Jhe,sKO,|,aDWJyф۹9 `\8rP0ܨϰvgmQKaa$yk2M4  a?R&d^z}!"N.+\tHyY P<]NpAV@c%jQ7KJM6Jn/@qrA}f7c8mxs>H7a0wdߟ^%G~ q4릟}xLJ[OUɍrxuyٛ Vqb4*^+) aR)_Iܟ+~ F{̑;g(Gecu+'v6M-78~[>.e,IoٿWOըu k]fy&[Dž ( MOS/ ڦlyhp[[%|MߕbI:t>np e骙ٸ8a{ՐJM0'ꄛVJN2ʜ РuYMQ#e4#]G{{tC$X69Z+lŞw@}& 2O&tk>`xy ϔp`g:頁f V5CUX(#lgruGƷ6L޺.HH*o7vӭNq6~dq,͏a VKrŜ.^(m m 4Y)v|QDlVͰtҩ'G3)cCJ1QA@2?r9Gq0 efB4 g [MN&foQnJYӞNϏ- VWS #R^`PE[Q O H[^_O/۲RfOt%7ʕR~M31-Őҙ(5)/}^Y+r !-L K5@K}Ze^d7'}m4\n IWCΣA#ݺoQEM$IؖUidVu ( X`9EfhX(֚lCRí-K 0cY-RB+̲_yə L}XG00ekwY)!9^CqX< t\\ܞ4>*ug=ܵZLv{%-ͿjɲSJ?&{He,b}$7'^PL&::l[un]F y5{ (WE0&2/Bw xg2Plڍ,:K낔ޞX^} IGqҢ86Um@ 쀜5ܳM۬hIw7Dr_nëu0˽srRJ]%Q HÙXdj>7&pI`fxDZ,!&2Hˆi?|=uW>nOCҚJHAޗ{!>q0.1tM?^$"rK S |BmAs@$}+v*;fM <Æx~V =pcxW"-Zrl#r82N&ݫIh8OWTR^Ks kK.wUkQHV7.qqg2ļ Ic&ԑ(<b4Fe,79Bw?y]8s{[>ã|'aBV!GP3w,W޶LՎ;nU,L<6Te+(}s70ײ%Ou}:h-vuX9xjޅw*%{kg*IҬc hz7NJyaǿ\:]iGjL=xiqz N۵:v`M3PFo̴&o6Ф\Z)} Cx5RD&-}>VŬBd/i"#Zd'E~aސsHztsĨHyܱDx?Rw8n%% %koA?~1*?=wGč ]ŖtQրo{dYo B<R#n-ۇ[>PB7W[m7yϷ*ҎL~׫r0m1"Xrώ_/d^xB}^(os"W3נd$|Qd.ҕz'|0yhl!x셔O,DUwxP9\Wq'}],ʅN9,V=$;[Z$v#Lƣ@YhgC2bҊ^q0_=H4ۮ92Ď L(EݔG GPAه(H@MUa߄W٠GՂ<t9e(wseIxAZ)U*f/0&XWrޓ!=OGQ[*=uXP k _쓔Cҷ[l5 @ʲp^[p r)M2>/9UuZ~H_k\ V1aaŧT MbPMc递_tFh9 t ɪC(>=ġ5ALFDciu_>|u\@1` :b..HIW]HC_TS35 eA8EEkqS-X b>yH?9L\'Gi7X>E4"6ab|Å ,E(]QY^%?T@vLu(]L29[ sY*SZ:sxZRnEuoYtT|^Bư]1KgnN.LrCfԩXŅ"i.p@zqaS7 ʃn鸢pğ ?gExq4@OrqkO|CB†%[V=fG.>ej*thW@U+ {!ڬN{JhtG; jJ ?.eF/Е`̈́cO%|)'Q!ua8='# ,Wj S*-1)b1Qga5;N PRFfӸQĊae ?*v,"8iVBZd|"2FDv68ӛdK[Kucn~d qJR ,( s*d/ؐBix:to3kOtG( UK"ȩ?]`pm{MAMfqIMU2f8i 8h!fmTB[gR_m 2>:_YE,5 wi4/0!;|Om XY|SZ{6q=R#5`󃤨*!cL? HiXǫ%Q)UwqdShS @'ܗ-#$d&}EZ@7X=LIr]܄4;V`" `1Qi1!;gޥ|]]Hx.#rG-ҒHH"eBxޠ3@4PDo&~p&!QdBuňa˾]d Ph0S6lS*iZwd7#㘇6u=407c:' QL /{;$ |KrLzk֏8E]FD+ו٬EP-L(swC0DH51I%Ivn+Kh'n`~u-Iw[@ЌHct9RW/ksL)ޗS?$\$x-WߝvJOQA"X`05۵V;rXdʀ)rmy=$=*k\U>/mfCL<~l Cs,US'jE$~lrgz R8\mynňnȔPyM֨ӼPlDZN+oIBkD5ґ}st rUU`Yd֡3ٛ6{g"IpIu䵡r`ht9= ~ACsSaԣА%gTe.3mRd!RY+f:-OVF4.V\Z͋u\4?Q"([v&GkV"AP6[:}葎ׇ˦L˧]-bOL5Fa!(D ,E`|cw 6]'>HFVhz\EǚPP[l[~NK6m[iNgp!|)LTʕovdqOE#g"y%ӲE*,nR.]yL)aV 6G7`.UYALۿR( B!݄eOzUq_Ns2P@/;-YBw2/CygEH-j"UWqo;}Aݳ'^Y:GGj^Rf@DK'N|8Rc4^ MŰ .sWbFu[ 97zZZr`t|$mIJҿR X}GUA"iTF)T.$hKApXmzڡc]a&|]pti(5(j\[1Ӏ+uFQ>SNv%T \p/q3BM<| E[ZSN$cǓUr(_(R{}j$yjĵ4*~Ѝ6vU4P@4_< 2,Y B;uSxWL:Ӕgn o#Jv-ٹY^QN@{}eN2h-GvGmg˃0iX)qS\cq/]7 n~H&J>tҸC#cqj'ުK ~{ϐM'XPSGBq.tpnÐH;:8-> +urag#&GtyHՃ 'Jd+P̼rj/ *ao j^+T NY^Ky z5Hߊ :JCި2u8Cˁs|'aN+ӐoFp; A4mpPr+ \16lNIЍMl8$b":V߁Qx2.Ge&#elV5ГX߶9T!¾ZG;xJ( `zN 1]@11Po$ vR2#0MHэ,=kHtUݺ R2=pL'hB/U`uLoZc+``K貫0C U"AM yT"+8-6>䝹q{Y(i SQeP ڈ3"h7H8&бuGơA^uFr!V(b:BC#p2T2-oEc?To_;iDڭnWaCpI&< k0BdJoPKe MyLJ*C1 (+~W !uBڍf8kӾ)\R`}PD29aP΄|v$c6uȧaFH DBui;GA>&>o6i4)_Qwb]&j* xB]CǓ{xP[a"gBz԰IK!¼HBȄhqõ¢CKKهIbTf1A݃bʱVoWUA0D35 q[&ד 1XV'g 2c IM_z?Jơ~+H@>dئ8\w0VIDJ3~u0"U. B3nB""jFJ9Oi dIj'?ͯW4 God镶H&- Fgu|f)jr{pQ25gC_9+|դ9@ZX%737l*dMpa._=Ɯ5Gr/wnp=~0R5W^zX[=4ci>a+>79E*q8ےr}cGMRv'8WM^{ 1_ˇwgZ))8b$:ZՏfdH7fn@i'G{|g|[({݇h𠚒NR)m24[heL@}(xѵ?B;XӢ=7.N叝W"+<bOԛ@ `I|X b4t>ʞdY!]oyC,:?8TاZz0, |vr欍n+ .|tD25fƗ'Rw]>w5gϪv"œ/0RBk-D(TY赍4q̑t6-#;`Jb%E&qW8܌7Q,X\~&[%G2[wk>&?1Y#[ˁ*&hMZ@˭WJ;\tq P{$kv}6Qi; /JK͛_9fE= `BX R~Zr%5,pRtYǻ驘fO:|d}P*Du`ê~48NUe! z!+iw_ؼӂ,1Y$6zQ5@MҠʐ'B1Xæ:{@g?Y(9Z'ӮQmzcudwDa;<~Gb/no@b_,UAJvH`!?g[jJ?jKEV=Dn; dGY 6[`""ԚTJL6Rxo'!N[oC|Un#zїmQ`|-;9&dBͪ :X\aHA.uDDxߞ}:>/};aƫ`xyjTkїěqOJl=Zf%g1rmI1vŦѵ*ndhq//~2ܡu{اlU@$懖D$`[is܃D#l,q4y1B: '+{F:H(5T5}\*w':4{'rHd&Z%@K@T_#agP磲~@=QTF}@8Q8]=Uuk&7:j~)"-#jfo:͊dEe.zM¾:kA0Ɖ膲 oPulSdT<훱XaQg%|](m(W+ڴ:7xf #6p+ 1Z? 5$dэ,&m,妸|+3ަڎk#&lLsFLJ ;xBVZ[~@l0ڂC?qU`x?F(X{t sei ~[n$1e"Rs7[a*lro[Eg=Î%gfwMPxְ+9)iMɐo۾L](ypJzO-=W9CU[E7q#j@q{.ƇXћGWeKmq *OI&23 sb2~enkEvSYWU Kpa]\Rι3o< znssc4J3FjS]hNf8U,6NnH*Pe{vt X4bVAߢtdrcVEULK[[<( ş縛tF>{mzfgKM\>R:Z!˵=-t{҅z aAm$AR1GX)TyG6n#DFWQvvqx(hmʨ? $?Azdz -igUVv"A]!@ VLhZiiU Κ.QBqqXD{Ql./ih 5{(=itRhݍw,R7 z+oN5r '4,]*jiTa`fnj"޻V3s'gТ1/tW`hZT`Q8w.uE'9'!SvVS'1ty光sBF7u #ӧHEgdk+R)/1[5N椓5AF*^L$+ʁf/0]0-8>T1[*;5LT!'P>%Ml*]!8a ^ͶH"eķW$a|3ڄ&<lv6at͌dxIT9q}P2iW*fE,I,ViGub8_NPAAxToM r$dW] z;qerowɢ2k#%*Hq!LGt_y,К\6+`r/XFGYhl׳y.SOAZf78.j&,G=F75d_SY~n?* /y(Vͤ}҄@7v݂>vyONgK8Rɬ )){T:(jiR*֑-hI"fTX'Jn猌rF&]#F=c< w<-ϑKH<1M^$;}a$OkUiPpΞD{׶ҪQقݯJiq;asx,~m_D^R^&jŨSyE86hXФ$k05?߿V@_V{)pM\}Gy2N4#x =e^c[N'BJ:5X&2L:5 Ƨ&>yc72&nsR *C,@:rÙ+@ktS jo7 ć¶7=ZסsQ;LO a"d{sV`?^M"ޚc#@ZNg[ \ZH5XԻ"M<:+P,/B':f \44G&sJTsϜ+շuKlQBj_DO:8z X8Y;HrwocSJY'(6s行k+z5d[P;S-zjQ䏧,;ǃ ǡ:". %ۻĕ ؗ0o`@DxtP-&+kHhR+Qru0}HD-KƔ1z(QדAEm}wow)D{PK(œoPLj u v z(T YQ[_- 4$m1]usS[%wٷn?I?a͎رvr1~ x%4csH)#_F҆ṆxNs7[-`h'{2e4`0nW,6zzC`Fhs|Ͷ$콷 W(FLu_wEs&/tezjMA!'IMu @iW֡2F-g// 9߄|flqm@ACXx5 R.z:ϓQOQ#!+~&^r4L"m>6uM3,We=OEDĻPO(-{`(If<T3 ĬHB#[idzntjG ; G԰;CʒL,o\2caV$=RI .gxi:Dz/`?KD_'O"Zsk?qC1\m*+. u8讙t>߂@- RI^a<$CxӊρVAjDkM^"6|;c g@X[C C0w温&kr؏&yp]EMq~N0('ȸ3z՝RkK2pSA-yj<]U6*GtEIumGh c)F ܑf @Y!nJ\C9$pb!ٙC m3;HЦԣtnK; ȿSg+3G8;PBIw`h3Ty rC͈,J:hi/S/.+b)rbPC2*i9:О2e زpp*#< +'o>C=)u4PѪ Fr5Fd$;4 ŝi"wx>[C8Y\zNF-셀rlpV3 R>͒,?9>WIf_I+P5U]~e|t~u~)sɢ[ 15 @~]9󦀄 ]0;#vR#Ú=>"S%"zScCNG[MWZ,3?:c'0vSΗ-] e3 e~9vYm5hVE{q_4NN6񮬷Gd-x0ͧ"ݮNx`8j7A p7⭓n멆-P\6Eĵ Dױ[:'Lx4%}|:* j"M)BI~@oKw 8]/?c)EH9IRO%@` RQ*<~rngY{۔sxbt_IV ~{Q;2NF &ABq|W8s!yߣ16kqemC0c_-K)ƫXGXsz^qߑvp!SS&*D#Z; )4RS>۷ i`l`n!xdH f0,R ZdX3rA `;6՘f]ARk3ydd֔c%oz=5Cs/A>|ݹD 0@MQV%^bcl5qs%RLɽHB,(Um$$Q%Eمᩲhh[_$:ϞEx\6&n^{3 sepGP%q%&ֲxa -&l.Am$Sp&u;f6)5/ujj Gh-e <ӢZYw!*+m%YYi.;($LT@'ttAėnX2bH7?LŇ,sk ̲ׯIl*9_ Ibr~R,NWPRTw'o7G_qaT$ ؅I=s&)h\? C'"FY' d=U#G2dƷz6hc/+- (YfqAz~O-Զ;XTXB4F ][:tcjfxN֪]Ep O{=4kkHr,Cʚ%iL3e!|Ѕ1VX Wh_ŀ쳀xBf$qRӞ"ApXbKp 5:J?*sZ168l+tz1ɹ߇#3z5ekZ6Dz$Z_@`+Q(P͡yW" `oχ(R_lZtҩÑr*]*(}Xs%ryaVKZbg]ʚ n -$P/=K /X#͌e7';0 Em,' a'Z_buM? }G4]/S5 _>v ߎSR#e R'!?Ǻ;/gFy<oA*+4Z0ݬ\U#!J_|ArX4O> jZ"x=*I˶S|gMW8ҍ؊Q*O~w^rtʰ]EH^MIFJId, B{2 D ޕ\@P,ӹ|Pl/sf\Q~L)JTKmj*Ϋ]˲y6jh)1OR&'8PG0n?ە5_.YW}@؟',o5=fB0&ܑv®"bm RkA^RQm-sg-ߧմoc'mlL*f:c>ݨ7tNnT9Ҽ/V@;igz2/F3llworE  rUZ·iZqll1bfפ̎c>;1wqNavy\g8# jLBƛҨ An#){pϰ̮7zC%L%ldy9f70Y*&/-!pPŴQ_˘dlpq]x0pt,uS_"|KH^t3Jr8O/ 949لC4kme"_(;|Hjl}¹(ޕy m_H#\LfV߅T|MA^`$U'd,(;5i݌FxL?VKhVqo9sڿMEgq[a''\, ߪx 7s F p*6=>Dx5QVD_Wܰ9c` ZSr_"Ixa;Otu:9AM40|~'wG l"cٳefK`H4$4s*kxbee"RJQ) bwy1߄VK/ȏ˵ƵWwk9j6;y+Iw#>IƠ5]ಞm}DM X:d"}A_dJ8Pc#MKRS'NfT\ |EF_mH a庋c~j#t(I JŁtV@㫦7i'1D1#Mhee68N LpOˍLY`;wu('6p8P\OypIί|M o[b Kk8q 9k}_;{#f>Zӳ/1tSUQen@2.g|*hZ}!u8*!6TpNL+5ː)wq (jvw/ ">({Tu?%:zuVZFeiKb-SH[TKx.Aӿ@ ^k>>Y xm~N]V'g ۸٤獱M,egXEV2T;8bn85F5q*@P?@]_9xbm#JCm- gf A-i'd$H`dޚqV QNG7ǿk wD\݅ ZHz=Z}N8z (LVW 6SzgI^]Jɗ,H?bV伾*@bGxn.=(mCδc[{T:JS:f-o!aśv,je2U`Ee)"w= ətW`/:ؤFu ZVoS[݅#G I/3 ȘLKQG俲k\`tK}R !G՟[A$x'6韒uv}I{:C Bέ]BKܯTuD qfLfZb8X&F} D!cxE&1 n1M}CMd0O cMO~XUKz2BZ{M, Gɍ-l(=׆hJµזh|V,XrpWǧA;x1֤ACA ] D0 4,ub)@Ѐ)38gl.kcGwn:XnO'=#NE).ܯ`bzs\{s^Ϲ8~W&ZLUQ);Lv ZPˁ>5qEXIrh Cf7kg#Y{"%Q7Mo5X ܬ_m=fZhwTKs-AvłO02B]Y$U]4v/ YN/j d `tS2~U1Z93kAZ5˦aN UĢYuf0r#uTbp K.?ZjA3gU~+}D,mnwY`[)9^_EVhuFa^Z,Ʊdd^Kjd@G)e K Z-&#l2Zb6-H4S˥Ifޣ?\{Ʋ+JͭH؋7 *>;/`+cHjYqjkEj{`r}*0OEl' ܋-jS0Ȱiz_1?o/).'b7-i}~I0ul+9k-$yZܯl]|6aD \y (h>_(>eu1Ӎz)l4ȯtTI6ȤC-(, [:Zc=j>#vL3lм5mk :鏛o0svX~Rͧ9nx \ji,82Dui6w,Lξeok heᖃb>ݛP=kcNC8hj)~%@Ͼ+slB?:lfU_'nU0c=t*X(wllW aZ$lJf<лJ1ARYA'EFg{rI5S\0M [e8iv\8ڧfq;O4]Ӏ,&b~f9\M+-cїYnv:*7_=}@f+*l'XH0+`n:}~p$˵봿_2Ư;B((i%jq' = c`E-X*eg;_捖 36CЊa.FbYfVY:I) ^|B_жTġ8Uyşϔw 5(' TTJF#طPS_O's6j Isބ(5cGLg,O)u?w[UZZy:cVqecg_. V@t!Hq|$I0ҥúK}P,P%>섻"~.k6E4:*חU|dclZlF>4AZK:CQfd 藫b@xBZ!L%m-ljB{$F|2@:7\.E 5ZV)@VG1@=/YR9D9y_X\!MOʋ&VJ 5Q[.|Syel8tn5bmz*\iswP {*S1w`+o\?o4&> ɘܴ*8̕? ^7U,\x|EY&؍,kgO2oLJBh#R1lRHGvu/O螮zM1^U4'^}|00>dN$ 'GsYIY4 ECyBr;8s-U;瞶y cCmfW;CXg S/nDi#I ivr*VgaH"炸䀙T eY2MoRQ%?VXwV|FtajiU#+6wZn=2oBw{O=xYvfvl5`/[}Ҽ~4h =2XRǓ]땷D"P!)4Q-R>q ou5$k-/^Dg7Oȟ,L#[*_irYe-)þ2d!R Vn,;BX@,9M fذ{JЕR>nEU^Qf1g& (__e@J p4"3ԍLd^H§3Y: kp|kH?xZKVPr+hjsyUzyM7cq2 q2 4s&|"b6uyVIo]%Xs:q/o!\B", pm,'y2_A^JQvQd\{ye2\qFm/B։/Oö[}\-Xؑ,]Apx|DrVo bKORgǝYaLfϥpvwrd7J@t|/!")~Њ1Z\Ȩ͘BcMxX3@zn>̢!Iao6"ipX>3@¦W9“C_l{GldiW[) 4˩@2. _|`'5TQW U\,Q(KS8Hh,R?jv#n_MJ$kp+v#ja_7FQMm8qrhƪfRBHOQ}k~-;CԹ pɳ_5xB4bU@3v&oB6lf]쓿ݻe89H ԾSOy()=5y%?[~ӃU+fQL)%3 v=4F(^1"Y#g O5U至&@FhCs>;Fr+? I)]wI)yZ}<e}'rWGDDCO`nqiDst Fo_PpЖSlsdӮCsQoOh:rBGx٣/RxueCBʶ'xe]rRUIxA0 5l,]c(BmY3@})Ifp2L 7?9j" @ Mg?4ry?[S}z-xpHȻ|?ʀnJ\lIHVVV䓊<| <9`Eg&\p$ۀnӫjtdÈX|oTPu*&ڡUfC<pdӜomϏ2ެ+ {+S0&[q[+:sBUM-(.݄tU8yQK-#(ґ~^dȑ3wPK38)?ۤz^H+G&%24X&,eN#!0,FMSbB?Kbkzh{ء6P±#.jd,e!8yftнC&ae Gh )|;nn玿R~,|W%*( Vf%C7֣DOIHP n>L]vmpL&Tsupz^.J=N#S"/wl#R7JOɜ'wHmz:id^iH9;D{Ph& TN1Z܅H KgHE}{~Y? >Hmj&}һg"T&Oz2 T[pe)Z\;V"^Cp+'ͺ@vim6G N,FU!ճsC)\8Nx Úv3qNe돀h .9,sQ ˬYTM?۫Hzl5Ydo@6`1wAt!҄pFt1P. [X߉dwP+T~6_WVX]" %,f;6gPTY tɧǖw,1&JF~! D?w!\ t찵C}ĩM"S4w<\[ k 4\L ]M3GÚD>^8CM!A(l7_QLM lG@B mSŔVyсv٢F-c,_{ɼzdH?wԞj&<8Ů0#JW )‹+pNQSP̈́" ljQ;U^ؿT\|RR !F!V>:n3'2Â\EBvR0FAES㇏M@ܙ 죭-B{=R ?(.wWG>G]FIv9zr vYM;9H| fc J"%lNL? ]S$r>Tas +/#) GL

şxn#<.ȵ(I`Oa؝Za2=۩l^%MXvЧ^6mL@iY9 pgG^օffxk4_ ?R3^Sm? 7;z^/ogiY)tξ6}^bCLf4 ZZn(8 Is/ݻ>)J<Υ(u$zs;/a˫V{{xHDzUSuD2\F ja#-p߭6 6,I2(Āދяx_cLo/E6tz1LfSO7,ƻp/}pUbמH v8:@fu}՛U"nawe,t䳞~5Hb!#ftޞ#He!!Bg_qBMPA~MFsQM,EoEg̳d Gb(DۯQi:kᾏ(ƦdXwQ+e$E݃ k*lc5E/]qPTQХ&}eeNbM(SUHBBn `7q;L]% eUL! d~6VT. SFӥ*@vejkC(Fhi69-( R=5^QKl. 'BݠPv3]"{n 9ԠZ*+Nz>pvp&Sv*p*yPcìvMNv?7'~c91[kw $F|IݒH3ό`ej,=# ZmDpqy@LC;|dlMc"RѪD}oI )$ա%g6U[Ѕċ! {O.!c'Uȶ}c }:E2Sٛa!@! %+R王R蜘("9H/#CчJPwϪ'LuP# gF%7gO5oN˭~u1)l+261yf^mT| }Zݬ":OpE*yzZAh9 \b> Z>Rʊ<?48HD}@7HiT}͛)&4:3YJvwupP T.<Ӊ ~ҽbMT8Ua Wm68 64jօe\H|.Z{{N#pyc΃ -V΀#$8d_Jx+z DAҏ5'Lz|̄$mb9/1{~Fwuྴ oPD+ 1j%LW˒PZGݜ\>riԔ}?mBM 9V| m &/[M{ jh'GS#~N[^VNTMtey(~H6HRP۶Y`~ !s/F]j]B؄;Kwve;5I?jEu@ i؉jRG .ЯˉWByH'ap-XZKhS:wJ59C16̜z%S7 @FA9kޕnx)Z :-4cKwHf+ۂzވX86JYj#%bE-(>CTopV;e<2?~.(+&#U٠uD7iJ_Ox ]"0"=Y`y+u 9C` aƁPB& Dac3e{:2q .ZMa) x*>;ji+p0sC.['G[=MF {Fa̰qk/-^uT2[Z{"mOYq7Blu{sd".Q_%{O؆nVE&[-c=Vjߓl)l$R:CH^]DJ" I! &WDiW+:%#Qqӂ9P/ p;W&_Gդy&Cn! zF?.'؞mbhN5ECbN4%mb1Edű =M-e"/r_#S VŜ~,ѧE˜<&l:VdƲ@ F9e+CMC,UW%GSЎ'1[[Mf;fqFF?4ΒN*Qfܠ:bwWEMf3Yhc}ո͈fe*}Ji"eatN1͌_u)!qlX)v*b|mOb K,Z Kh=Чs:!%6'G:P N1,ۘ/q;QƇ@t/7h-H\6څLaLg'(tznȨw ;!6h@V#WgIz7j,^r frF`Lo2cl mTǻV+i|,nK ~+o{WþWAi:Kwa:\&) 1oᗂJdLQ@(A#pF>)m<'Յ鸌ؿTWZ毁/꧊BzK E}"|9ڒ{0 l8 Wu($d"4 h ͒W4s7ҩyϪ.2}VPqX>۲?@ٰ{ZYD uF3[I8K 5OLj4Fz"ֵIsK[1vPеN\u"[Q < G<ɋ P >,=L4;#n8GJ" N ӷʰfjo΀_.Wn8aG7Ao>|RGzz Q/D|@lY>0Oyc[Ձ9g fR0Q?|,uɺ_U&̨;tF/Y6$S໨k {+?P̗R-pvf-::un%؊״Wn80)UM:cU:B"b< Eށ!-̘BVO6}Wbe/㢡 &ǩփ[O`/'}}.4; U :<5cG64u 6+&t T։+.K-u ]vN[TY$p2!>|RlV<_u]Eyؕ~owY=C:Wطi*oBlq5)/h y)xv (Am2no.X_ȿ`)EI/Ĭ]MHѼqEh-$-(]k)@] lc~X+*i"ؑaL,6yrs^D2$ҟXLVo!|*pM{Pؖ [8e y&LXqIuV/;/ ?_F 1'>DZiФh@!Qo.ޖM{`lp5b uG9 B< ~Oo͢UgiQHY N}:&K N\ [sfoyz{+m| D%'fX>r%]F]Ľ Xd++H97TC Utҋz_\-gb-=[Gf}.;<$"o!q0yeN/ǿLKw"M<|ph! uʫ]]T55ws4Ğt񶌤g"`5F9eፎ6;\g+$dt;t^=Wfmdވ+$MZL ugik6woZxqSavYh0=bC.óϥqp3w緁:!aZ C7aZv0oD NԲ58F/ەk>0RxvRo;UQKt0ʳ~M+gMrS.h E-u h׵g }!{m=fDg9C )L/dM6]"=L9M*cNih)Ϟv'x~o>}T@|%T(UɚHq^(!ֱd.&@0 WC-nj\KkBT#7@GN,8PXԍ~ܲ#ܒ_(p?lًZwO'I…Iz ~JPꂣS~0㬈s(c8Fr?8LO\#ηF2e, Hdݒ#t{pr𹗥/n^#r#f00,BV5񂒠3ې:axi˜@Q[hcfA Z }ŏ,z(B/֗/n(?=Pf%>ڕ11١AyỄpWtIRX4NG 銨pWL z| ҵ;XY%)c\gC-'R@ -`|S^~mr@OyϙcbU%vDDrB+Cm<'zzL6ϏpP#khri犻5ma 0?1~j*3)GY!@p:%ViG^ˑSNN_Xc}%kKժM!Ge񒗺_b"+yt)1My -PU\ }=+IQ5ZVe^j50q- bWЛ{Eӭ%gW_ @9Ar!Qh%d?suVS׏ k-2r;EHܗ}.e@4SdSӗǤ4"JPIM&ZڳZVg}y7\gdlͤhNJ rH0Uq ?QSX&z+rgK֠ `1Ǟ a^/S"Dic R \Zzf1} ^JsdQ ˣp=aY^'._Ս0_L>b ՚gOtw[W*/(W&s_L 9ovEf->ij6a|WSӜ1C`T_x˲OHUu}Q,o!-cy38Gã v+csL<+Br"%@OTp/P5:za5hqn6qi:;Y)p1 &{PF Uc{6:T8 '"_"4rx7@$X㕲+@I{_YYrYQÕKns=9*hEПd}RRI Xk|%syM@9ODG]yrU*t ah:Lf ;˃,g"%lh0W$.3c+KCkp(q_⮒uWsv\苆_f*T7C pI*wZe14hvXWp!K}};B3(&sb#de +("BW.< E=Z ӧr[}j9NtZʾM1Ro.Z-A`qGyaɮ3)w)ozm*(ڧB#XUk@u%1<lVtq; #;⪣4Uf"*ݦPS ?{xꇆ>H֎,q89Q3kLH/T|dYꙏf[S8}|8ƆHha s-yUB.s,&& hgWIGh;ӅZ-Tw#uL`w9XWPMJͣnR6U4lJqo򥩯3sI@RS!V5I&@G@f׋ڨ ón@N_dY)a]"/+6)k}xk;*$YmdS$$ %DX}(dw~<Yc. "ѷިm׋x5F6DcmArJd.iw銎2k[ 0$ |>2LHBQ̾rde}b#1zk)VVh;WH?qI~ﯓ 5 [B?%x .%΋~8`%aWLaʐ淤9 8"6 S<{Y+%B Ɔh" s)ƻ*:w#WVQ%z7w+M^t3} /d0QCiV_9gaBP_HMͫU+'e4*UT A  ]J[ނ+ƋHq`<7R mQq.E,$l-PG$4ag_B~zZv7iϖSV4OqY0wsR lB_\o=|mDP \9URLyy~nkV-8{L <D5ca<POY L]_3 k4(J|"9\y{Os/:[Ҟ M0(T78QU: F蜦Opyr!iuTRni7z3]8?N B{!G rȷɬqm1g?-u>қ Qۂs[(?4 Il;]lz_>Q AϗJ3GD"ݬ~ћ\[lr.Jz5?g]`VPyܺdAvHЦ~4Kh J#BVѰR:HqV ] $la`YSםAYFZf_$d+O*AsP8RKD֘Q74s-Eݪd%aݽjeaQwysO+2k/S;CVՠ)r|ݧ'(ݍf%:PHNgI:o" STWCp[FÏx wT֠e`d̺J69b Y&G+?tQ[; HOT hJix5ܿg Zzj0&cZ,m%ku6T`-VaK 6SO@Z+0vj {.ę1_8Hu&uIsZ쇯 E:We]QɌK!5$%ϐK'K-@1XxlS-}H-~I:FŤǔޑ VV)ȓ%"cj;uLǺ{Ouy`ƽ!F#7qnf}ūVV9yNJ, G;34lj9n^' {Rqܘi"e.JOom[ѤFjV ,p=◦Ԋ&`7,&+|?spJ:.+ҼXiS0W;&t@sWPAѼ[F\w|qVW;>kNe>f&d\2ں`ҝ\c$H`j+֣ 7;;g*}rBy=o!f*d\T+痞u1lX5l?'6 P͕Ln$01%>S'wt hdG" }`1'0׺Oz1UEBKW *!(#2p@/14>YN߹'ߺf'_ė*>_g(.(j ?i뢫c#~BQGg}H\OG!5WنV;%w mW.N}0$31 ZAn9ҫ7J؀WIF[wx ny,ukd"cVbn iʱ`*ˎx!twC8)B)P.G$ yk/oڭ*{mF]|I=Bn@ΒhB&iaFoO~XFU~!AaR]w+h3]f활D S.q wc 81y)*)s<7@ēƍ{dkZoJQ>:p{K9vC cy,Iz.Ĭ)\6fH@5Un|棩/t jNP aQvc@FI Q\>stC2<`R}>߶{Q9Ad&nhM~5ߑ(@ͼm@.OTDbB0|e*e0(!}5DOðeP`&r4N:]r9=c_ZBpdCjqDzaSQ+UHMl0u_EC +{9٦gq랚Zy(-7Iz3'ɳ'ejHNe}Jqq ٮ)m5DZ'(TU >rOo!Q h$S2H>%Yћ L]o|7{yW7iV#iiڬ]hg`sb⹽6W}NH y44ֻt!b]0=bOV w,%sdueO(.9njF<*7rtFGRi1fkx $v]R$,/3vg ~OoŦ$)WYHm]SXD<7.!;kJx$#9BBzr.ϚX'oDad?ft9Ii< `$xSh>7`Mg4D6\ax4'B6޺ؠnޗ\] \5a nvv/ 9i@?*QKIRIW4|ݨ .O_0n/~+G8'e&ǭc4]Q@ӝ0rHu,@g~,qktstN^z#nԢFk5x =EAE} n"Titݶػ3+ٳAȟ(i1zKԫp-~_h0GȔ Q08r.~bEt/JYðFl;|AE̎Q٥jjD%ɕGuqxľ W~*\۳i1G0gLcVXJي)&i&@|aشԐD?M8*Y_5Lo@{.TŕlL/<e# D85<'jO 6Iar( 8UYw]ɼ"/ލzْ107Ov߷(]3P-wjTVUg4+ьpkő؜q>,Wd"a"y4s\zFv9z1F듂zlafuzV0reY4?VFD8qI|$ӐI\j(>ˊs*w?]5(OyVVݕ>"-sh!8faS()Y,>mOpVZjHr*mȇ6{;u(ʘӳ:)6Ccqs[7v z1&f/TLpG>vj&z2m~E} ]-lڴu”8@m\_Db]wFWmJDQռ>;wi%B/m*MHaθU V,rzni `AjMC2+XŢ'Vu}?U.ȝ)tXFo-mFܔ%llFH<.=_x;sDfnۏ/37 mAqz!>]g+3'9XS*9F dldfgfnb : h"LμKB0}t0ԡ!1hk"hQ5$34(SkXzEgjY2}Ԧ7Xl4z(E~%ifrUoq:LX*Ewu=R aiKEe1❩rYUCAj 373b\"9dFWi)"5%tjHƓR [i:rFwes> /Jͨvw/t[X)dϲmyD{XfFKa(9}nW׿fwV%n;GZNc/ϕ4ko;Y(jGi; IEtj2[z@(cgAUixBiCeb% LtB~̤!tzVlvPf~wp wfZ+,#.JLϧ&}sP7|㦵.~"PҸe ȺRCۦn~c ҰlbL_u]ᩛA!<±>3ڭJH55-"SБq0¯'C?yxq}>.RKYjL?et BijlY i.z\I}(vHA|"d82i@C }i*u.2H_ؔL;YrxxJ(*!~ Na{Zf+$wG#a6k&0dY-/o$`LqI̠=s/ǭC%,m1n!{0`zW r֓1:M. @r0E~3.e)l,nѕ~Z_Ȇdsō=OrG&0,ɺ`:bB~06a@Ɏ* ut[IT飳@ c(]\2}AKl[~,c.0?E0I"7tn+eTAMkE̗`y{I0v !(}t5d H[= t/NwƸ1 |-qm2ӑWY,)Brʞ7F9M ]:Y DmKg"rܬᡖl:wt4a&$<@aqm1Ѳ3Wo'r}S.@vUj9m/6+-Qvw@ ~Y{ :gsC@Ad_p˒0P/(w^ .9ur ]vY/.q |mf|,_ū폁 .BJrPAuGj#Nk8&<$jM bxr@;T[SpRH*Z%)ԗzu dv:6PD`sz{ʙFhO ;X'ۿj`j'G8!hj$!#1q ]"~J3FW<'#;?+3Y w Liw8h+*cօ$*= 8QP'.Ý %.&.)V8ib⣫`I}K'i1z(9+)QiS-w_v(/|KnGhP%!whz- nQ1.qPYc_0COt,Pad(&,A i. v.AEF5dd#~D ]IhU4byt*=*EzqLwcbnce+-O$+`tN!#(2BaPN <sߧ9$ ڴ }$ż ,Ya'q3,IU'}kFm@Jo(uct:$Љ7oQ-<u~WEˡU&WK$ LVJ)gX_5.oO>(Np9N4CYԣ86 \lx Tbȁs_)tׇI /WܺoXIQul I wi5LM'~۞k-*5`V*2N)M翚:ߔyˆQPM4 lC]dp4 E~p yL{ 7ҽ.s:cn'E1Q]RDTBzB$o*!T_t*^_k`޹pLy/oĜ^C~VBNN*`tuQiĮ ~kRpGԠ;((ƭ|&L_ A^U^wT O0=rQn}C7Cm.t]bFTіfXbeDHB7cAn /[`P %2Hc=l¬inTg/< XkC갮 m6*'%S^&V1(^^]_Vn8cCIG.Қ ,g~Ñ9gj-}?*0w5uCo&(sn_ vt<Ѵ(Z_qf\Tnt}Hi9SΫd[IJ`Gv6P(J`E,ڣ;c:q̙w}{h={&:*%/6rh,vLb<`{]"i8?(d}v>k9/h~#a3v5>G[.YSLݕ,3 :j4ciFH_1h ffC_xlV eDಘR"9dp +95ͪnh\q"Zg0>xL#-W " QMINV&n"#L\m|rW=q]&cTj2F 7I1d޶`&u53 h,R˔M[5?]8K{XM'c[WfO~ǷO1aΐ' ]%Ɍ^*Ll$Wuxw%ҠVE8l|,G-.ziM'vyL$2([ +?1~$t{׉_{zkVsӼFn.Gceܫn`@:5@MAZ Knp9pZKhOWOx+A$F.|ۚ9Oς!#*L.KVZ3 ܀g(UW_lT6)* ;qtsNN'@u"m Jĺ-iܕ| [,^_-8Q <|]!=)Gi}#G\)}y9`}:,~jK:kGh(>JR\@m'Ӻ{`vݮ)bc YWa~x(Ztl}4tnB*ʣBTP yAR}%rX$BD-ш)0'\arPJTRce:Ce.'Wv>œoA4(R#tb+R4I>-A/e_0|yA;G=D*g>Y~C6{pj*P=[ IīWpbi\2RDVbը\rH:P̣%0+A)\ =;Y4 ĞnM@^!4M4]I0[3QuN'X"^/W+G|d#4^P"ye`oKi.աГewUW-_ %")o~iNi/@ajp@zJ« 3&9wCИCXPjQ$ R{Sw87&ٍ FZ6?L.=lޱH|SK.W\pᢕIjO籁<.Z Yiue×vb`8z\hʺ26{= 8dGѨqL."8=z!_'G%+J W?m*J~~_-c6պK1bi1 &h8hVH1T~-B\P)}L7xS0ooaYr ?Y6fpMiRT»T&b$0KY 0yx'J }y6Dt:l$%?8(EƑ0YrQ]|S"R{(~wzm`Ǘ5 t M  k0Cӫ n?VF KBosW{,Jꩣ |mЎ6l>؊;@ޘ%CV ֣/nL^Pڱr.ru?xg@64DD*+< S`zA[\u5~iD^$+HmѼFe6:}|DvROgZ[p@.﹉ex#O>F.42>ϒn}n|?RKctxʺ[Lt/]M osd wF>1!VCNJSr ud 'pb/ٌxxQHMuj)$KV_i֍O{4e2$^pjSԴΕ7%A|ewn9)+Nر2q.@Y`NԳ@ݺN ј9²AC 36t197#a$݊o/n<5.p\y1YZǣ/57*fNd0`29 a(bOr|3_-TC#o_.)HLNU74xf6#9ðZ=3ӃF˘Sc= QN>]OJYݙm^rvKl,_%BV@9a,ɉk;޿;0#'UHy_ޒg\.kjEmvsRqlIGVߑqM!Ќtq\ b您%9 mxv))_GcؕWE"(5z,ޣXy Z%Мʝ*X]4[kNKGF쵥M/i3nG<[rُ';":R@1oI֝XV'ʣ Tl;2th©,}vӜCaԉ}׹P'^B}6텀(; $vT\E]St8k.L|@ͽCVh ſ5I\sL =؎X/_nR;>T֏hO͗bV+pm:QPγ1Ȼ\XǑ j>auy⇈hv{dP{UU ua!EO;?H 5}&5jd.N8OJ}!˲F #uOڐ?kVkU5Q6phS2jG7$I .؏iy6~#jCPQ1DU(<[(z =5,b߅=VSRhKz}5IلM"ōdc:ux\G=Aۣ98vaJUI/H>g޺ByXwVQp7Nyу$o%Xf3[#'L7qzrnul\G2!̇!] +%cf,eׁ|va 2pm˿j>/i͝FX_Oz)YjTЁVG| N-A-pո.}&nEGpPJ vLl\98:ml٣?@(İmf8{( ڷ]0/;)_Qcd"ió)"/ <Cv_fL O%~Q.>Mt$޹lo9?Cm+ǜQJ|TKku x.h(c5Cw*6\Ͷ?Ƨ.mxH Wziȉ%V|;oHAWBC=kses[AnDy /@p,GN\qe˞XW̽Nb|]b(BG'*35m^g5^t\ɾ?%7+&4tYWp<:r OԐ)l\mWKIb%>mhkt:M=4<1׉ i2݀ l+_sL//'K@! GCGvIo{jx+d;Ƃ[ת%Ä޽:77 =ODCy7d)h9E4UQs\y6u YSա4FC6P'k5ƒ*d:NzixqՈD5&GIW9$?PDW *GtߚS*9#tgNtmư*FIt38nѶH*E[Ct7%,~ lgznPm3l|̳T@9tA(@C#:O@E)GlSϧ;5`q"ئlE/X{mvԋhQp_{;^P&K# 4b AuD(g'Y 6$ȞfHm*lj<3nCikiB Zî~-L`41͇Y[#BLa+H+; e'AHR,MD05C4QYrdH)_T#/-V>S˷W#\~AԴ>. ll*> OeWJ:"Fp%2š(}^掤D` ٙ{2`c҅LM0NG )&rеlw?Z&Qº@\n:D`8S"2A(jtu7uEc*յvD9)NjHlhӂ=)3U=rs烱>h ēCn e$/RNҥq[}}5#OުxƋ1f^-&m< NXz3B6NÍm~"D8b1v ղ_gWl$}VXNԩOtE9(DjTlebPvhK  Ե^zAW+(1X0[n2샡f1T@2|lt9 'O|21"fLC jU8`*l3oੲ$.E 3ƽ)wC=g >e5ޟ]z[vhi4ئtG|hB8oPTx+s+חa#-ފ/RTeh6җo_tB~$Oˉk`D, :s΀o~FJSf䀝Ryrc< |P:%J+E5*:$7xZ ;d<%'nAsrрhW2%% ΟR{ r'wߢr[ R-k0DqrE]سVt~8Uȩ&I VF6N4.| x?bk44~e 7ǐw{ȹ9b\nO ]ĆʯlCE@OڲmܛT  Qo)6{^P Zt (}}l+[Ct}qT^_ũYjRE.lZ9Grӂi†XjGw`K.eJvFٴN#;8NIxzxvTI/ ~խJTqmG~=a" ߡZ;;([*Vv;`/*OU2S." @) :zy#JQUNna ˏ45 ÎjCd.++B㼭-(ܵh w.a"S}Kθ@ Te5c~r-g-`XCvD](CT䋝Fx?˪/ "QvJ>V_uo-yu(-ve8X7)(!'&}H0oWĂb&6ƺ BS MmFuiD6oݎ`ٓعtr2q4]R {ms1._sL"ČOZϓjiu, ~0UOXƙlʖC%,3]Vy B]>ݞ% ZUE#sd `Č2s(x7kIf}k M)ϮѶ ѓ_/+4~!ܼ#em!4@ig=O˼"6:mû0+A৏Cl7mObHQ  }}>H,6b"(E 9M#]bofq{B? kIwUc@🌾ow!yǖV|M?R@ T4qzk-2rPORUF2 Zh&)- uG_o1ϚԨLw^Jys&V|d&Qi䕁Ż]k w }悾wJ)V/:~ygIx?!tIV(.@O\> w`,&?F<5SQ>LC6@9#͎/)[|W{c]oG]zb^0Z~ld-Jt\l2Ť}'i% "sR4J7\ޭ(ݢy4 z#a+"w@Q'U=h1 2d)?DS 'XU#O{MViGgYT>0 @tgY(K5A1o9Tn3rB寧9 o|mY3>Hit0`}P;3yz@l2N(kp%qUCסAO}݇p70S7v0y-,K%E/^ AIe%{`SWuaDa0@ -u&{ ‘u*Mܠ~_桨4alD&A'o$B4K5ׅ,59!8#4")Re6; (C**ϣ9 $Ή[|[Vwm4 7`!y;*q oǡe86Q1GV48EAnJĖ(Ӛs3y:c[x;ܻqY{\+y_^ =yjlU~\C9J=O ePzxO_q@q.(\HX6#ȗ_/啡*y5M%;랲cwtSɒQƄrC]I+9({W0z 2_Fx 6WqAGj3BlW</Eњ}w8);w]&,٪|[WǬ=9""}ŏ{S)z9#/XZн {=z:q7ڱMWBk\:N@pqm.V=fR3p.yؑ<.3,րmnf!`ޏfKˈvDvCX \;4yҜ cDٳZ0 Q1 bbPnk)U`Z-a)mU􅓯 Jnlkdxdah9yN8O~q2{ֈrfuyF?'|uǓ?!=]K}]Xv2^aܱ:k*\$5OE㢻V> 1ݒF b_;5Ij6.3;Wh8&o_‡;Bme9WmZCXK\Myؑ}wr! BwWQj.ݙYoIA+aMvӿ|RܚƮ9_-[q (.0,6 PCI }ݍx@ f v/鐑A΋U0;;(jA/" Q8lv Ӓۧ[?2*8|y/wN$3hi(ցJClgFE7Ӵ2wbĪCy-|^T?ϖJL Jz1{!LqͿi吘^\L33\M39?@9~lV&Sm~ʲd(kMЄ'Q &tŒX7}@IRmA(&O=z mo ćx7} `Qu0&6DmųJ)AipD/[ %.&KYhLnpɭBCl7ȆmZA=a~-`:NȚFq,0G5elS(PɜVS3Q!'N`bXRKM!L?N1[ qU'9(iZ% ERO~--70Ԓ -@Ă l>DTeyxc89J],uvU\QAy:.!=ЍfX_$L 'edbW_Ccޡ_ {Dt^J!+d冻ZA\U:Tt&,T:~5m\oi MP^ݩ5VAJVvS&xS6]پM [ȢΝNtD8 _+ v %Xl?^"ۇi He6Tc&O8uH4FsDU2)k*UOb .p VƤ_\10͖0Uq MXKK, [\`T%iĸ6z޵"=!:q du~D;r BH_&sYة@_;xU+|;ׁD70B!!|Լl %nU5b{vYۛ G|E*R! eDNlU8 qαqE^Hʼnyzru `$\ϿP%@ -o|hͫVzpQbLrjj4g|a>xoiUǛiΛ `_BWS%}G _q5|cD9Ҥ{ghDHdZ(G0 ДmRXpk W˧{b(O2E|<=3&@?/=+^"u %wܟƥEč)0qݠ/$,ɐ5[62lSG(*#7lc-Q\V ;u5pN8*r<1K+#0#Q34Ȝ}8h Khq<jI꺻 ܈x%<@DA/G=rlBZqǛ1qR:AcBTxmȸVԬ!Qi 6>Ȭw}=85&p-<ۥtY|Z"CL"x($PcPh4虪 @YOI[mͦ똵#б70:6;$M&I* NnPh` wY"p+v#gl`:جi=_ P WCz[F HAֵC|"]-s$x!As;L:Kק 3@$`iS~_,s{!,[0K ;+Ÿ,شrC*'O|dEx¼[5L)IEx;fW-Gn$_ji; zMyO<8~%F8Bl.,})b[f;u>,',lkyF1:lu3,%*_.\zqPRZB I{~}g]{e4PkOAalEb4Vae?Ǣl?P|ۿD64_c*f>\?⟘Ue-|2feT灩,2UʪCZf^g„pM1v>WUďFA+QV/~L/ fs*՜:P ה= W`K̘vPGfR7qb>&ԢWe0볝8(^S9JWN[:b wj@gRLnVJ!p1秸I[}!mpcC' ɒ]M\?q=}]ye͡4tv}oC3A*KD?{]goL~7wLX ydzY*fN-6?0@~WGm{5RVG?Z v$7ʻ@r)I&CjNճ+mB ߇Xiք,ةH:SP9Jc uZ)zdDc4ݳ^_2N4ad*!Af 'iW-b ELBi$;! ug"M֞?Nr#l#VZ3*`2uPQˮU>2)_wq#tDtnrߣb״ff^ xoՐl/_U5M5/T&/ g&[:)낂}UYgxvV]v Vj{.dԼ0 #[ZRDG]_D2U 쐐ܪQ?M3 n{AD&2%]NVI割R"k_¡gsDO>H TS,UZYw҃Psh@[kbk?ʮliru09 ֻ\hw9"z0Sp,֮%0O/Q&UT3ƈE Ur!R=c;Rʙ,t% {bc[9[F䫮ʲ2Tԟ;ˆ[߂ыo /Pc(~SͤE ĽVGw./8m,l'ĝvO1/P5ā+;Si `)mu(%z șkRʧκZrTYrPIj Ŋ־jlqqGd 3ާ4HBS ;I2Tst :ENc MC 3sY~:w˃2{Ѱ԰N1s[Y?ǿ/"i+f8 iЖa&<:=i]d2=\s 6E0q W1w$/AlMwB ,شo(Vp7VPjJ`ZQ|,ߥPD_7M66nWeͨ-joJaIBT~{Dn.*WFXf2T6D?@3pƌ;"|/6A)~3lW(1SR$(K^W&Gbp;8>h)7kIoa') Ff?cj8<1Od;dC)mhXKQYG"wR.0+xB}srQm^=n)ѡ0EF<%򐅦}eM<9 Iai[V-%kh5hr,jq>I6U<&c!iM[zS깛lBGr_W)-czb N#L6°*kųmjmgdqYgj,DƋ<'X$9lc9j5uS* uaIPtk[T]^ }jM̝5QY?D qX[_4x-ojX!5Os[[Z__{lrFqrI~gˉؼ ak㓫OJaiBc*:2d|Z"؏ ҘZ3Ik;G_pcկ v? ,RQcߦl<+9s?&s :ZOܼuP :LIqj(J5>kdo<)\A\@N6 .Sc|Wp07|!IBA&1|` K9p^!L3q/`_/YOG͹ߍH8Jyx U!fVPaiсGڍvWחiԑ r`뗹  Cbѥgs;ʋ$a@ %;Rr9e6ϱeEB"=b#͎.l#! #+2U/v5vu26S09gRՇJ{&DͭI+JYfYMvЭv>:!?aZ-_x6u_ulaEYaϏ( ;z?F o,0t :BNYB%{]rIԩ•pޑ25GÄ'z=_{2Yd?B")]7HЏuxlĎ;# t07Kʯ9fkSkiRT,kYyX_0C7Q!E9 M 0I9l UXlQޯf;duh)G>[1!A\0?]'4svA k Pu=2P_HOOhqC:)vm }nz H2dxb :"Y ͇B\^Cl:\+_vVn6mݹUޗs/βE;5d>`T@pXfǓm8M\N~M`PK5Bq# ln {^ր>>&DW{6(^XoKxq Ͽpi7.S[3(G;CGGl+ٴ7q+ZG9!Yŀ"Kr6l!INSgrG\FLg{4q2 EHXö J9QSxYhU׽4B,]3|lҺ≼y!2+XM@h:Rg{-JezFYFeȳYbޏ/m1Y2UBfֆGh|YbR C.*JfBdk(-\lF_I))f,k\DH`Zb?]2H\=P⧂y> ǞI>Hys M?|.x/Cv5k9DZߞ {X à2+.'f>DBݥB$ɬ[Y;*WmG-iNK&q0a:M!LN]N@@ F`!z7 0xǰ{N`,ۅbڶF>;/v LK̕%w5tϝTuv.F0⺢.Y}<z^lh~wv"'֒G8zi#tx\/p,,`헐f9WIބ)Ї`n sUnbRK`4xldJc϶ @.PL%6NG쐹2⓶C#6'+{'לlo+J>o钞ӌt-Oosl|zK4Gc=լ S_'y|l EB~ZOY/ I ~_-:çQ ,ӛyѴlt8D;Ex)z燘#jC+<:Jp֏Kq{GYhUG(BRM37N~rN.G([cQ,cbe^lbO.M,>*(ړIhղ@he?ٖ )6]Oy`+{$`BoR< TRܒDy 2Y|3ꓮR$L=S4\ʔlvƶ}3ِ.pŸB:A=X^/r9~(5[2 FVwi?)l;=C ˉ oVVcZ%o&p""fK7ڋJ,ݢP[rU^I:c}}:!P 3OQ5tgه6e_H3B"־~o]¾ѴI#R5wy+ OZҜrJ k&3<v#w:Ƚ6d`]6*9= D Қm2m¡.,%^8"Ln,Rvtż wz84B@^)0'OVMce3+9Օ,4a}Zh̲#le(0=hNN8tm vv'FE#1_ئvs;S[{{aFtVL֙4% Zu^JYi"NݓnN(i8Oc @%=6]Y9kInήލbOI\:{'d'9W:G^vp loaQdP^uoi*}_R Fn![i3Ve쮮ȗnz3FU9ēmv <z2o@O b;HMuq|9daWp@xbHPY9~6x!1$<:GKj֯m(O6\r=@;A|j:tq/YG7 ~.sG#U䧎6D{Ze` ?d Ud&)g!'sJ-1S!r/ʀcm>ߒDXذ(nƣI2itCLU;wa*~r@STԪ\Pwyv& )H85I,)׻fLGs'pu̔|󠘃}4Q؉WƇ*h1b9$_(03Щ*-Ge-j.(4ʷŗn/R860[r$rOZEt "EK\,>RZO] 9߈؃!B^wͷָq 5)jRCcBi>C#6RH--鮩FWF%?奋{# Z?qsѸq?r)%`-]}k F^3AoIOQΛ`[xfDŇy}|.XSS%MFz?Zך36@q e5 LOP1m)- V2ttH|˯'$.g=Jny#.7D|ɑܽX%sC*J b!R;Y)-IHӾB9 `Bnzi?.  &vMel iiH6 Ļx<*I'Sg~/<{2dOOILy' S3,*yY^VW13`i>+)ZU~oQWLɖEUU{~Y%ZUK !YPٛC➐=Cye6W WlKJ"ud*TWo֏ܓ;GĔ~s}7!2ǔh2a>#EݼEl~ uJq1t XujTP.;'/+Cj7.%rX\S,snHjrOoc9*B{qbjwJjf̌Wh 6Zl3Ci~uu U޺4#VOה;p=?vn kX]'T#mҲ=>2.H{TYdNRSYr@#y@yo_(@5_F,"f~QQcbO4 Q`dRnBm[ 5(kB4} #M#[{qeSdb!J/j!-J'GF_9>uA ,zk;5[C mF535[ ow a'Z6 J!>;ڮP(KKMu:􍲩RKh8۶D]5QB\Y<^[ҁUkO :{:fWVcomZhS$[9YTz+5P@kR]v>S!N'x3P96$ g2Y2T$J1#ÇG)$?ڋ!Dz&nqX<.2z1趰/˞E$0*QU bEa 9(@_Ha#T&qm*r^$}Ħ01z/GlONMn@+s -R}Xj Ƕv|M)wJI=^C`-<}֗, JwcQ WWK$͗+QРF]Ω̵%n.S6*LC3WoA&j CmMuk c\X+r8UuisPjaq3eߝQ8'[NwA;=X ]$pKhS(94;0OS]Z!m&xXD8H@zIw1v!qi#>מ)?9uZPmxJs~Nc>溹יMu:۬aWJg\.3pYG~_*Z֢,)N.bpU(GRUe[t)] xƿ|C o~,rcEs!@׍b+;ݼ1] j,|phsݷЎE+`-!ǤVxD %D)d51n/V8ko ٝA' xnĠbCd祿EUD> +!ao9 ;t4'4qsŲpBJG&%ӼNgbo}׿؃9^ba.§qx伲n(r*&J,H6[ 1_/WJXKbue-.4~&z()Cud+-#K_[\HKN {Uvt+@!, 4gHĎkc>G,_@: -zح'9/BXn1>kmզ:`oř7[OY}_'bQ/>ΜQW9 #P/HUբ׌ ܽ5 sl5]~'z HNtCyvA39\|Td\Y8wh<-CD< 5lw (&bկĕ30a'[c3(l\aOg)DiV3-Pc yA3L?^!-7 Xkj2CZd'Α0?R^4Ò(d2e*9%Hxgd}d|cdP8'2Û6;$_v?x?E)vEM!_h y @]/g.|Ž(YR(2NKq!zx:u'Iln#99V;@l<n&aB^oo.9xWzeȧUfh}i[EWx[c fwbfon?0 wf4zh:up*Ϭ—8ӿ`pFO1OruX9I9 t{lN-u!u_ƐY#}d+ $^Bz`@ئ7 Cs,#J\ŵ/Ĺ-[5̽`rKڐ{ǀF,#>Oz{HjǕmZCU6׃bp!' # ծB)JcYP~0dfdO7WE^~' eR+gA (E)Mjdi怒b1dSC 9e'3bĪ}f!-vǵo7x#lz~D#hsA~C_TCT@ħN-ɢFv_rILۼG83F ǡ7) R-2g^K>A"GzWl#)k(V9`£(vm0D;/٫1l{Sk=&wzҲoee<{u*bokPf2?7'iC5u|xVqT }Z;4<}/a9ncV([$GO& 2`s#"F6b:nX_ȝtedڨxOz鞋%rػr?3+"΀yXDqی%q=#]#痈Wp9n+W<;@sl%yhYI`M3sr7l2{aj#7;@[T+ctf(,Z05`Yi>BkZ]g9BP)*C=@UKZaq""9P~@(q!Kr32mxt(Nw祛z(Õ%N}A| -)ʄrKcp—w4!SR)kH Db+7*6*ꐅ?V.9.)1 28*:f!sSC?SuDűPP6JdAy/!O6 JgX8*qAv"È-%YQgq66r\m!^| rEb`!@oC$>+&4uMvRkFGNlԽ85qūM 9G1` WQ 0 M*;1m3'"-]rThF̐twbbdй3 lָ4O^Y)ɓ3 ~x͒R,J ̕Cad^bzZFќwvYDk1\l):ҴJM,yRwⲐ=f2X#T5ٔd#u/FqGY{Y}9[ӊ~?< LyV8c}aKyu(2RP$l$^cq|/hNu:l/Z^W"yquk;u~ó*LkoTH,CRƷy,F | [/$#ȼ_}}(:r CRGILg'E25~`mힰ ܸNQe/rמ4 fYޯuҎJ3*h~'FTBF"gM>SxoJ.)L?6.@n&O3qUU n #:XMe-ZMf gyߞxШe#aaӴ4v%lN3m'&צX$e .lJc2#l\{˚aB̝WAZm \ڙy2$N.Ny|Lĩ3wuhGs<[CX0+yM\*-$6txH;ѳ :M喙O3\(A%'^b_3^㢣?)S% '#]S>6m%7qΉ\ rX lwbA˪FM9)_=u$s :;};pww( SAvkJ` m7 C[#t:ʦQBN'kv7YQ84;|b(^ġЇwm,ʽ}Ub< ӻIe1Dž m>Ŧ0e;v(ndUDlH)\]5"KC%Ff^&;?x@=3mDp  ;u 1`-v|jlaSd8̳` (lbHm.Qq;f~%uCz}UU% 5{'}*SA_^ݜkr/4 ƫ4ƒ 53_XLAC1,u+sa`C]Qi?wMGnwϺ pe!f4z0 b-Xh hg\vLc#zEi[>(OT71j[s;Cnv*-2cP((g!Ԫ縟 q>h:-nŴ9zWE*D2Hjʴ,6(IVBƭTX Kw3V%#J{2yvj]3"d=.zXS֗`]P넧ja=;%kh^v'0z8Z1~57w&23tmNG_Fiu`YT^SZO .[L&cXI{!& H;duʑkNĀ|L@ø1K碄vΐLm2$";~`Kwl qϬnem%߉B-^Ad</g&./wYg4u5MwA^Pt/Cމh6b9|E,:&A{\kQcMXZl,M<ʧT NNjE<uVel "+CQ"`e|=710"J +--WkX;j ܥvqŵvbwb+W"+w :~\~+8tL7lZc;7{[*뱉՚O(_Q k kl #h]_/&r_7ucEb\)  :bE0Mࢊw)|Erw>X\}>}YGW\-&_ 0a/^G;ByڋF¸&@f)Zrv_P}K9 x&Rv~ Nԋ(ULs_v }&W[DkoVH/~badd{@.ԟXX X㝚f0gc6?\~iE0P08vR_J1ms!#:v`6!ݑ&=@!Zp*~J#Prz5iNj19KQˋ_N('P5:#1ȉv֒)ytqJ4-xy$tvM{R`nwO⟰`D+.} 9:ֺa1cAcn39aZZ/fdO@64?&X y5E~_ Q@ BYsE0m΀#k;)jafH4$o2V 垻^`U7dLech>ai83I=Q޼)ն_`xp]+,HΗ k싮f=Ro FCC^A/Rq!uw Y J_34br uB5= 2B6ZEvԑbTCt ,"k4^uV.U]H%(a8 tTgb7_g&H>Р㨏*Ӕ o9wO;h->D߸Q"PAdQ3?l4HAU,/i8N f8/a7{3*]?ES̼6g.|uoȊgg - pfd4pXJd1&A5 _cTжͽϽW{1^$l?+J1߸Y~?=#s(W;0g6x`­$n>Y-J"4%G.u)trL%{. -cժD8'8jnK>_!6f;yӧBnqGƛF:>wϼZ ԝ[ul@xbSb/jHX^(?ъ*8+O!@2lGV>sbd6)v v\/*9  ^"qƐ7ރs{eVȨ?DrVu~'K$tAh%jD])07SYPe}䤚%H2rݷ6EaMrt5>BE.׾hz^@I:|im9]$A^(AaQt79ɿ2vh[q7e-Sn0ie*D:'(wj|Ebw9 6&re}usay;B)B.ӄ<I+RRoBg tX;n8d򹭠@,i? DA.Pʹz.~pp~w4⭬S)|4?OL6UY9}=iGooLz R8uh$%c5TY_ԗA lޕ?"])b}\P_"iٳW ("F #d c޻¬ce(FmarFİrϋ  T8.$5)OqW44喙RA 0Dp~81 2Ä@ήn|zȊZ ?ŚhI*ںC.Qd}mӱc'Hj`\T'VUa?A3楾Pib?ŰgV5,5m2:i0=,ÏbzVVmI#RF)o]7{+4]M6u΂^+,4g0je '~c3 }~ g=dr,C`lJ>{6N9pH&|JW.E@:8sN>IH0CmSbo2^K*:gRd>aPDvlUBc7S^R?>QJj]3kXAF3-QcDРեR NcƕN9SX4|z|>Max,vSR—B2-l=n{_lLu>/`ǐ.lk?8P̲ƦdPOfZ`dpƅ=w-˖}E Aſ#\ 2 Ǽpk. fjCVcJм\c4Y#g |U<3T4s\%8'8a%BI`VmK@<$֨bflIw~%nD f]ˎZ^ )dwnle{t,lBKCӄ }'r2[y>yc9<RClI[qbd筄8l[Ętw2҄:c'ZTWȦRg-? ~ UrM{;c9QPA0sR\WKgrۣ}PSCHu(u^#\e @v쑺Atuیˇ:pH("[[tK:p}^5\Տ,\]hF BYy0UvC+.PkҒ+c-JE9WR=g8I?rup3K̠}RDPjgS<ӥiQK<|dc~|pgp?#!X-י%5uD٘sT^T?/9$ZGuL?OmPL0ɐ;MSt=ys><Օ[/=GyB~ 2'O_Gt3s^ճH--7"U~H)oB=/g$#|1'O̖ *f;Nin)v̀Fn)Z@xj" ǩaڿ N#Te V 3f4&7;m ]ίjYU2`܎^(&U97vj@`!2\į?}P5{p ?n ;c,Wb9G8K8+0l BIwz7dË*-VNJ2!_H.΃qN?H]S7) IW8 w>ŸHT@mnUNeT~q`2)DP0M ̢J![_Fl#T ]6Fno2" :ket0)/$c 2J=\;0^d*^GeOvR>q7O*ƪۚ>HnTV25S[Q0uO|"PJAϺ,#@]y|бGB1RX)oK utlO>\0հ]iZDKC9U'x㑷bj'{-GlKl7' BM|FdpWȤ:.kOLCEIx-}&tBt* ǩj6+44!ʚDBa ?lņ#B^ })TXb Q~C$iX["]. }okȊG} {(0E*8XuXH?rO[?8T[$m<[0"uT)<;4pBE_&w{dʙvۈ5zϑ@g*Y>qz>xϾ}7ü6/{\BzrI/u :Ƹl̍3o#OuA 5UCj.ސ8ܲW?TQ&{Go|- F9E*=ui D+c^ kAڅ_OrjD)Ƶ RK`` LxKbfZҊiKLcXlx1p IHL;acw'6Wޙ?YՃ)\Xlr<氄[1B S!!`P ̏uUAs7R|ACz`{ }N=SP>~$cάA"-s>NAR"dz5{ D֖: xpM-v%(5%O4-EE*repaU mo` g($# RIn[TbeN] rR/dhpSx_0N üXUF)E'Js kiA X퍠Nj!M |QTj,@ӫ–UH&X؁eŨoP(!ӧx V,PhB¥knK\A(4XB |gRuǹ bp۸IV @l%oewUޔ^.]%E#ڄsm-t<6]6vSoSx[}x(Z-*?] Ū/S^[7t `INsa#<(*SwX[KrMr9&R"|VweÂok.m ҺkOYYb6Pdϡ3ٝ#c`r/Oݟӝ-qTfp! Y:kAt![9w{u-!p/'^emcͣEGЄIG>aHd@ /rB=PF.`gޅy#? @7PN6&8j%nJ@E漇;D;^Z,oyӅg3GSi|kxD!"3sV91*^ơ7! x:kw$߻[."8@5)&b=mz^>KYUq̜!dHt4I#ƗϜA~a &7t֐J0 Dq"AE Q>Ʉ q^7@Go^~A\.+,^r$\[sEq/(2eח.ddģ1Nc/NۧI!W 3=r8cNIKo% \$FN#u:y/G'R+4j܄؏lqSG <5g2Mz)X6OKҺF7xiӾrtgjܹq1U9Qyb66YDxrI$B+R@!.^{|QF3)XZMq "F|HCKXw9 d(EkY_5c0g5pJg^nE1h+?yEKYsm|1;]s 65KKIA{%"qPfY~0abdDSܧD@`“*~{: ٧Xsfu % "CIB;:EXGoD2oqT&]cb5TsB;^356y 3&t|i9Ͷp}yIZbף`ng#RU39 0]/R6KMq rw{$АÛEu  (֖VJ0*rInK[<{F@V5/'cf8~s|F6\}.li"]e|/)Ԗ~_cO [2U`qS[})fŋ-qU**5wX=RApygr%i>5%@xbD7Zֱд^ZDcH}Z݄+Lοk*Aeű 1*L+<4)+iIkD2@"?JF!=m͈t+;v> Š}jx!&VgS1UIb<|W,N\bL뷯Ik%*:ɻK#G HָQ44A'd/93Gkj\^ 5M1)!lIڨ^OTyQ6JaZ1X5ӵ*ðϿi ѫ(Y\Fl/:OSSBM[92 .vh 俬#=M2qתBG}iY׎Ct_LFpqaWz=ͻ>;@j^$|K.8%濍 Jᜒ&9`0&;ݍS$R&pOߎ4ToT 0 Xh̀{MRy]%1A!Cɤ Ks7жs(h^ы^"8H$יՆi S5#ÜėxNR  *AsĩP kc+cǍ3@z&'2{LV.I3[zo`9!p_Z ͯBrm͐"5OI( tO ;ݔo'v; Sbjؓ*Ke2Y?+%\7~eK/9w fp$GLJH_"gudY-E@ݐDCݰN3ٯϠ=X=Qg~CFݰ M\ ܠ*RIte&ڊ jN%1 @EN%p׉ DႧ#ZS7E.Vh5 X[=bܲYlrv,9۾ޛ(82n $rBGf~:4ӻp:543kUoʿ:'AAE]ƕpWV:!O6"9l,?OZCpW*k)3Й8ҿ ަZ/¸V`ک4xs'66Of*2\,Eaa0!l@2JMQ#Yq*7͵bPTw%|^`n$*uDtNZ mZtRPEi]9ŏ\oJ(믩>A7pwqlS$:gGLM'ړ}0 2RM&Eg{aTiһ\uV4!@( uj tԊvaiG_`x8׬b4XE(w1^$_E124[k9#~Z('jqlq=fI-V־ Z}3H4/7?Cq#%kQKVs]<蘑ӞЏ"*Fxd܎4ƬnxUN2^ Sv6S &qx^\~,`l@/7I2Cw]s^/!Ѕ;K.=!^($;=Nvz[ϪU\%ILs vOܥ ÔUY@109d1p:SaCs &ܰ9x#DTTS<M>5'ZoSi'+= ͛h_o*촾Xc?4oĤ}aC^gH[if-gސLJ_,o`_bݰ\ˢՠEG Tq.HXIMyCL;YA Jz+'9cя]Ɇ7٤_5>k_n] >nv"[SojAro EvgġGK XuiiZ:;T VgʆS#HփX`}. 4?Ys[=e+kch꽘/f+S*1ݿ$GٍuEaİw6jfy0>ھ9Sy!(2ol9vy5tyBlՂ–àS "Ir( kL'M8T9 b&(t-~n}+2㶺F TU0Yۼ ] v`@7CNddM3^2nLd yYYS6'7 :qDvEBfN֚a3ŐG([uGL&,KPI9Ru0 2*( *m <  9zW ÂYY x,Ee#y{rbKǥ{HîGAƂlUsWCem*zi#U.R4 ^T+UO&`LG0IU`[uN^ߗM[+ʾj 'TXvF63@wag\D`^2y<~%0b_3"88 bj);ۗ1Ḵ/,RLJ\*'8i@asP%9xAc'[a'aOw&qՃ%ҭuqBGm-cfSBްn0~dpkxk&G`Tw#-7R&|)KY)xzZu2g;7)p<=m3ֽD2_*/v)0"p>jKvz0zY4A{ƆԼނ/+fd%m96 ITW DGٶťi= x#9&a/6f@vC9@Kf:Mk9P'\ }-M>5W}/v+W:.TgD&=Ëeil^}"2]Ho}\<ꏋi7˖/(>|(@Dcma`2:br[{3k(SH*q_d0݄H P <5+#q熅U3L4*"k;^6ϰͲ)";Q)Q V̽/vZPY8[<F8۹* 7T"MOF6GU 0SJFTՍlvoK>~edJ>bb3E:nwz m@V$`R]oTD<2re>M%-yԥwtQ/zFd^>L[,?/.ܗB#ajVɽ7OuNh$Ree+;ZDco;!%^66nUzrXl@fC=^?8R\o]Vf%0b:[$ tWue|h)W-a30lx2CrYѡn[.Q#%4 _IW8q G[D(XJ7'`2=]f^pche]8ʇ΍2 +@;e_$/vj‘Vz҈BCflns!M&.ۍΕ}uX{Qߛj.0m5 +"ȚiZp׍iMDTpP;O~&i~P5J9/ IfO47Iq),8;'Kc5pk޺ew1P%}Sȸ&Gi _$D+A+#0tщ}Y}͡'~G1?h/+\eۃ,G;d!_$@]#OGC!וd W؏ :n_iQԙ,f/>.S#M]¯S9}o'QqcS@Uv*BT\,pibF=}R | WtGp3XIH%rs52_L ő$[^| {Q|`?qp"R BwI$Pܱ i$Tʧ R P32!E;;) H,F =C׹꥙3M$tۄL|)m;?%5}giԭ.dP[PbT.F$m7/s;zoN4]RJœ$06NL)QV_AvpZzRLo""\50S/w6۹JqV?|.41P4 }9m"B0(o}+fe+*Q'֦1,]&QQȶ×bwK>l~cYdyO_{vSUt>EөZ(sblIzׄ3[cFsR-CL0Ux)#-}Jv*3OQq%D7q 7qȾ)$TbBaz2D\ *>,!o<+vkXQS_T"G:g `<~ 7(h~\ȍ kF+H-nO[JG7f[d)M*[j։SsiQ.Ԉi߈.4+R`=_,i*&7=J\4l4:q5[fE%w~6G$]IZզ%x\2Yvd B_ 8}'}>;@nCe ᆱ,-?5ZB c%. s7yA,P fe_MF,M+6^LE>itUVU`<3[v&}#5[@-Dq^VT'Ӭ5WUmH*]v`9ӷ 'td:Z B4S:Ph{u]dUq;lRչvVrg +u/\> )}cAw |<GHs/]:қJaL/iaζ <极I0yMK9΅@YŪ ḯby&Bg}ёw@ H>W=PO1)[}Ld]eUW `׋h/\Gc{?NjR \a"*n~^XW6?wkH&ɼ -GV,!-p=~7ឣ<}QI4Za A#Mb +7#% ,D o/\іCkt^wڼMm7yalkrtڛ/i' :CݍSȭ(N~ؐN*EcIf+ItrWXFͧЪܝͅ|'kKA/QU?g]?.r'9ikJLw $kEXݗL 8QZܢF/q>+XKbyAMu.p?Nɻ)j_*.^DNC.knE 62ɧL f7qu3ώصȩ={:}YS kWW]TI:YvX>HUgΟ*>7Uu x2;jT7BFݙGA|Z'eIC/W3G';~# *w Rg_ GZ2~~H_栙[ ѩ[/kJkjבsHоtUoviLѺc6L>b8PyTE!THI^}S*2*ӯİCt`*߮l\4ʮaG+Viw^|鴙 hㅮA-L~ G-L4c6Zᒑd 24[ p-'N'=5D|mHDWeBm|GQ},D;R\bvO^O`$$bMtneH^>"^\%ό$@~\քAN@D˫ܜp,d-;u߹$-8>=?L+$!׭&cƴ71m_AxޏZ5jQ?.=``qnaCs'MR!YV*ވgC;Bfz|ϢVY7Q{=Wm$Ȝ\5kb-Z n.EZ'C9!7{ςF"vRDnI8S9;vgZ.m`e,TS ''Fc mz%ZW)j+z4r`>&} J44u ]njgU4k$QGL0,%F svQ nӖȴhG^m=F+?ЀEő+9SWoZVn(C)V+CtKHT'O,@wU"_W[vU.ݷ4w23"ewIJC K8 "% '9'~U]"WҜ.jv u꾒$IJf&9"!] :a&Дտq=2_u%9| 18780<}t|*ZO_ :maâ͕OtYU\2# 9IЫ йwk?x=HڞC8m!2w[z\Sذ`& Z{@H1[ެ7<Եha2|ܓW/h zrsz%HbNG#EjG$eh8 W: 4-b}[xډ- qp*t&([0phq{;^P'^JfY-&dH`B*á);6l]$ME?Yo}V;E} 0olO*@ T EЇXPbP#Yt Ir9nC>p.#W u?l>5$yGRs@E{,1I62ͭ4q) :Fo'u^ ö 9R6 : )ILxg+ aqykkm1L8v<5 M縃]Yd.?wV'%'BٳOɢ=AbD8ā}- 8:rmDqeDv|"4R0 Dy)B!o{2ae+OAW03/%ܛGQ 3_~7cyc=膃ka^]Yө~0)T0A;rjf8og?1khbO-?՜W&θ`q N;b)_❾ )kN5o젆/L/ԠmsFJfK,M7 <-KK'ߐV37&jIO3aꂵu݊m+`*EJ;^d;̺9,r,%V ^J 5 [cx0+4 Š7V Vb> tD p8g.)Ǟ8 *:$G;%-&;fx\̅eL MTY/xUY/Tfذ1bfΠ U˯qO MMSi҉ڪ|ssd!JaY<5O+|UаjE\[/i!CHPVAͼF|o~Ι9רUdL|c `B:)|\ ܯʂhtoޤ)bfRiJV~$>pOÊ" @1qp7,ORP̷-ZC^zZAg.sT85b_t&3!F0$- T/qiKeyBhJΖeD7x]q:n>:ao`qRQQqkA.{7+S!+zntmm4BnyFLhAiU &ͧq9^9\+ cVseJZ$jo#gZ,la \`&Uݗr2Ap4mEl,7\[Ss^hZi!:9@ s__S)X|ue,[N Ch;^C܈ՁɜɤO>?^7}8_\ɁtNc\HCԃ٬`g^wK%KH=И.w. C }[7V([t99]P.ag]R:xܒ2<߈>mڪ"0aゥl i6RG:DzSAzf ަaEVHIbxm(Zx HƢY:Qa=C"'\!=l9`"9qe Ex/=ckw:f!*TxRb/6@exɋgtzB>jC.ɋJ'"5vyMpv"c^izP良+ob0ru͘L9 X  ^3ӹژza2C@=ĸ|.O7dzi^j@ݖ0%T4TةƄi3VeV~7,]*WQ橤$%A('iFu$n~Ytr]ߘ}3ܧ0͌NL@.9SNz;,wx$42btqrmg"*@jOr@2óZ*%ۣ?zK=ڣn/Q‹ȿhڊgɝ"ԋB8$Hf:`.glWB_Ŷn*N[.#)/G&>,J][Iڎ: [\;l"~x+tcq&EFXt%D캴bȯu"ge{,3fԾ~SLZQ9 k4j<::.?( #+0ik>;"$X@Sͨd|Ur+BJ{qIxU0Ә,@@^O0::̳L8ЎW6LT$EXGw>w C]K/ٚ$].,΂Af+8̴@ee{ "MQך0Nob tVA@aˍ O1\eE:߶\mn/7Zq][W}sBWm޹yxIDUFz O4 +Z)wV `n-WQݛ{܋m_p-:&O8@֤'1C?E-)kS#`!4 Q Nشdl7xN)+Qտ_='iHP!ɉOblU[{#ɵlۣ]+m]o(t#ULoѿ(HŜUCaM{4?PrGS/.^ P~;|#3Q*\ʀqQDVA:K(4賸u2 Ň+;do[^6BB+t`QZLrhŮC<1"ekȤsI`mU^GVƓDM %;1 e&_@S;oX١y+MSAMphrxͫ=e,ϝy/Ɇ |M#>]o[Мv| H/L~9lo*9՛.K0?酽j$D׀=suĿ0UM_I#j͒,jRK9ޞ.VrE>7>r7ؽJ?K}Xve;NtW4"?30ѷ xvƵ)8-d *"0= #({-D${p=ΥWB SXKC}n'^g̙ * {wi75b n|2E!QkXM&Gzp?}g6լDx(D8 ׬86>LC a}Q%F`ƶVZ}L]9P4љ+c{]A_0ʾQoa<ٺe(tT|F 1˿l~BOim2ddOl|?Nx&omLIS4{ oޟ Y`Tg4% Up <)UܔY:#:GXlc y:rp$].Blm!{C_'߿Hf)D/ٿZtz޹}R\PSWL^x<iC/:$DʼkpO'F5魹:ºF#o;@kӮr{騟Pyw`p;lk _uVf)}O+ ߼%Wk‚рͧ%jlU/q/oeV߽&oA>/Sj,'@; -q氷0l `eʥe ݓ]mkEz;ۋ9\Œ{Hh:G̰aIĹRo~X1q^7ot佀Iʒ@pXX&j"%Hr!XKB#ؖ`tDŽ&\4/\D 9v6.upSDf"i:Z@ͫ'P=fʖs\LZA4RF: Nuyxr'I<~tfmC췀6]&>[Zyyu@eP{૩/Ao2t _שvɒ`/m4D3J˪r~@W\0z=Ě~EGZ*~G;?n4;%JbgJ TmkF/&!eKFE8K|a5&I `wɏ JP=;)Vc+*7KMiK~bZ\;Md.UL8V|xןƓi7dWR\k] ?>9Yө*?5cj7r6L5߶áOv) @6+.Տ#mSjzջ+U~B%O>k,iU"moXh|TiP, )ͼ(,=:4/J(Ka:>zl,8sz,B9h.rjWVRnv8ʻ͢&ӯ\R(.:<ӊRcABԛH sa-ax'{L&,kܶ)ųzx`˞.n7\{3E`i!|dQ;ROdfҚrd!9ZܜÇh@C`+ 96C4'QI qo U i 6Vx\v8Q/Q;*s#VT!\wܹR;N|Ry!wcs|ְMᜃi'zAd@]|j^a UAcoT (N`DGV6"BN]$Aq"0ӝFg  PT԰G ]>;$N|s/>ZJ9g6@KadIOxۇ^YڵX*j1z{E W3ن20Hk8GL-Ubۄn>Wl \.(b/4rO?OQMqؼU#Ւҹt͌$>Q1qI:* u&tW1cVT;ih#0҂@ W_O*vz siƂPID $&SS\aq'Э,Ѯ@H\RגZ35rXɆF=NV23RI,IA^$kC TA pT룳O'^}DWP8ITm20 n>y9H@z3ĺ h)x5^RNctk :QYqM/'3aak!\P•e{t%b|s8DZKk>N{"oql9:G9Հ{k"b.d7 K8#ip_Z*'V0Unw$:2w1b] /Un:UrSfn*h rӶe\Ù<[&Q9cITFo)p\tY7 -e||:GwƂs6c.:eF]YW~{kI{1 dJ1u2&zKBϙ9C0}C8Pt3b*Z MwK B$egy|k'G"b"pӔ2K.$Y)yafO)l)hSyobpQ£u*P`;gΫ?˙=N;Gu`as=p5sTb0St5Og29Uv}Oڅ2[vuH؊E4^"1TZtۄZ ˇ&gήA9;ORG8"a@mC [RJ=BV\w~lk \n :{iДHQnEJ׈5,dƈyLHtkm'itvV^\\9rdN0^nnł`slR.U+Q뵆G[qMjPÛ1̱Q2a/[J}ޅLv7ax kɢH` 8D?q=;k-9Ibtʀ{L/6>h{Cx+rQ"CT ܞr0퉰ZIQu>.)>bǷY+ZK OY }z؇iAnw:q6R_OYMM4b׎W / ;rƤ8\__~R[e} ݚ?kͿg愎Y't }`6=&^fPFiʏ;UJ"["uEވ$ba`3dg%#_TU}srOpkKm؇= A]H[q ~Rniw| Ԫ {8,/)Z-gUzq$n`~ EB'0X\KJ>X]u0,}#RDOکu_?N/8C/͍{R> l:ɴ^Z 1h˞n5Lni]dWl%W4ä( Q/m 6@x͏ܐPm'~>X|9X{W1X]8IV|$fgmXPL*q:Y *7ٝOsz7~1Ğ[^O-(R5p~P?TTn bCq57ںՙ Dq]f߷3gO'Ɣ~=8QO)HC񍋗񡝢UZ1ΎOɕSP| }?a}}n`+ROnl Joι?c@pYYK5[F>Ȇ`ݢZD*D kiU^#LdQinʕ*,;6-e^Y SDbf{@3"W~*P":1dV:O@ӉCrvu],8%u* j:%;EòEӫۛYR3 lEPr~p(H%3~͇NWo)Nj t`pkmh!2Y\l 05;wwG!qϦasRqސ, HI >j%*_馬hSJ4> k,+*yEj5"68 Q=ErO8 uNN]!~êJzjo~Yi&W#iF&K Kr7HH\8?P7U_JO"f' Me/pG &θIq7 6kp,ὓ5KObP JA;JgAffBݹ9]0$lބ'u, g>ߜ:؃rK&L%dt2kQGyU\m)z $`x(#]_ˈ&yvkc(^L)޶1J\%l0.t%G˧abmFM>f92Pl \v _`p󝫲jy7hRCȽY6d0=~-*sjd|\&\JA[J- W h~[4g-4/bk{:$l!M91FR5 6h4 z_O3.z+(DqTT eӖ`x~1pw۶%k6-؇q!Cw PmOy;#8(`+nΝ4IΩziyXtc$Q5ܜ+}pڿq-ϫt=FuI~ˠM bгvtGZqZdh5(-$نs8 "2[%;ģ2-x(WVӠ2smj%u8RxrzFmPRv5uf7..]REO;OlcW!2!yJ;1O8RRΘC#!kKCeK6De/$0N[{4& 'B`rSrq3r-:`b 4  5@kZl,$B׷n/1"R,Xa!yjK NoU:W(;Ieߣe N烙X-R ƺ(gs6Q>o)]O$Ŵe4hWmU+ N1WDQqo@G0'taJuEw׺aZNU5QKwf(k|ef[CRx~ (w㣵587ւ: #~ϔ2LbrD!Hzc9[t/`4bQ$9 Z鶝9*?]qo LzC7SGQLACO¦ûm2!_鞄R*qľ[7K],dJBZOLP}̣ | ]s'>v;zσs53gsIgÙvov:;4T? 3WljzG 6{vt!|WV hwf)%B5+Y <e/@ :6j}'A볫8BTO`b֕ų㩼6F4Z`)/yeT"ćI֗.enxHRK19P'[H,LC.tjt{9TѲpB0B0_%8BBdE -6Vnv sg E>d˜ U#!V}5F2jPOH+00oc?;jP& 4kuh i.Sɣ(ސYlB;TF*"W\yr-+\?S͸䛋"4)'V}eJ mk,p9 5%f(J_W ;"&f.:lf!.SS2)Ykx2YA ŁŽ/%#ǜmw0,[>20H.ZaA͇LVp*"~xQB`a:`?(xlU3XXt]Zεz? 6YgbxmO%:`Nt-epb͔B&e/?B:{]_Oͽ?LzI@l5bxD \oX$W~8r?'~l5SbάWk;l&>\fhlL,nx9͜75i6=@^Q\1ZWűe9;P >n7jB})3sm.X@iJBiԻ :!" F,3i~zŚY<SaSVrdĜm7! ҽ)eM(`.Huѱ2r5* G4q󸪘9옂,ni X*"yC amG->CuD1jJ3 k K|wkVHB3t) #kCGxM^{(p ?hxjFinԯ,CX\68j`  WV I:lblRE`t Oe0$z t¨*ǁb2o!(gI=OM;h{j`M_g@RSGJJl bͫw0w*P*CKtzn8!SծC$N۸ltz Q,sOE:;Grx<Zwxr{ɸۣ[ybKEen/~kVmMfPp3bpvC%1I `Yy!_!%ڄ|5mCpynKmd@H>G ¿͙ -/t_8d pRlXf:*7GkUN/.=7g-"^.΂ $S?qS7F$oUze2]q| ae @ 1 LG\d*9r &"\.pR4H~61hvL_߂|&:gxf8^.r龡IXPY&b@@o`~i]dy/K,8_&!8:c[KP d&$1+=흐=ui(@2'jx1 bpD:[2X,T7GXrAW on^%?gJk  /߳vo=rsI& 9{ǰ CWǞ '>e%ՠyƒw>%(90+ |=%aji~4ؐKBdcY܌JF$aBU K"eolՃ6֥Ҵj'Eey&r]pCdv:zJ8=eYÖWb /6“;.7,Yq pdJ;E⠋8EMU@l8Q7p5;WR'n$J=Ñ3''ˢw.fN=s^rlOx1Y `~`wg:B4z-\ 0˲S )kช ՜X%htvﯰL7E-]؂kOa,$q| گ|Ljr`RQ!^{)B7o&EX(oM\ VATV4qv>t>j6)f:n3y-Ս>XWzʻJΒ3b+SFNm<[Bb?{ql64̓/2hWR`(b20#=6@%[\hgЙOoNR2+|y_AN"v 8G/jLC:vj;}fH>PTu {qߡes78 hK3 l'ZeݯB[*8/XCA"mVOl93~SG5Pw 9KuאSWSWx\ظ%~&t7&=lWWsNV0n̟ZxVKh4Sbd=\[{#Î [`ڝkQjGr7$N3I K0:;tƠ7݌Zhhn#Ps0o7]5iyg My< ͍an(s ڟ†<<8CIsw4Ǭ> V=M3ET$iW%ڢGCN2g)BS!f0TE:+Jc\Z~@ PMDN{E62B*Jm5jZmn1 熚=B`PtW11" P=\\'ĕ:>#Ô Pga|ٰ(BjL6jp6'/2j(Ce.QVMP q2hĐ]yץ\ w4Dް VDƵGOV(XPiQ#V>ډ^Cֱ݁Mr7wцXq5`_H7TMi;?3ET:Ӆ&T.Bcvh Buri<3/,Sau G4 *>1`|,1kn#f*2ᷔPLI\>dg]0L~=sіl8R~t=/Kpu&;}䍎>9XxS|ttZ4F6.fmMCifbBXuAv?[c%{eż;o?X[I뢋Aaǐu*qT$Y}qi4@϶ẈZ9թMAu6L;:ܫ;FԠ3šٺ⋵0Vw156; F= Pz}5&XLkOV~׫k֭V8OHۆH瀧 ku&A2rG)n!4?Q췾#iZmݦRD#/uӈ2lv^6s{;/g]Ň, Mw)`sUeQwyW &,q ɪcuuo H"Ble" yȲ֜YӢ5[DՄCXgq_ufgNkwNT\K÷9A:"ȃ&f2"bDԴbT{RymʼnK>wN[q!-r^F)9 FpxִJL}xW>WPR^ tꏿ 3]bzݲO;erU}k[ۗKIzXv_(8vup1I,_Zho4hZ_oY.h0K 6MJw@^MP~m>{ !3Zux(sY(6Q%A=m8&/ZE$P !Av"5=}Bxbʣq{*XCH.7݆E*ٟ#z{L[Sq#࢛Bpbc~X.q  VYn̓>XGr%6ǀlICضzdDg@vg8Z"JP_!1xYddᨲ4TmTPV7A1NQӿ uI!,GGjEd?Ңq6%v3hؾ⚿{J1ߗ n "E ёEQW|}^z=ՎZ˥[1tcCJט3g@-&1ԲХVR };'rK/!Jvֆ xEÂj]rbXoIMsIRJ7y-^KΛ.xu(^LT NG bO20)9݃ICcP657B؋=ǷaQNzD!u O3aw!V٧yX[|7 }#U mJSGYR~ zϟ_THo(̋`?sT7ܯ}٘!{A!Z=M){w_C|-jD獪ܩ"m[xTA,'}:ֹ5*̼zA+=59܄<e Ж5,7c 8Ǵb.BWI3P x)Q3ˊx;S9'F~]'n $G+ۑm؍>g>{/JO1gv 1=FQ ~4}_i@0ʠW2 lX\0J_OlSgӯT@,wX$0Xed8熷p!2 "竊",[Zt^ЙEPUV> %HqF_ujzDkCotC ')|΋ ubU5+▭C%,d3yҋ\zf%32{QUq Q$I ~z!`-$|L%L0٤<8lXޙ¦Oķ8WDݛn61Hl Sps5׃xo2Ƿ s/6I6nMjSK`.gV{ /q\bg!ٜ'-lZrйg6 #7T7lUA;}_U8a:U=g /dVk}QHRg^/?xiz>L' pVd$ًe$ /7ùiLR]}$j}ܔDTêP|Y^Eq!"%1HO ex$ ۑS u_}0EJ43@!B<W$Db>LJkWB `5< @lٖ)aFʶ [S`hrgYqñ9b iϨf:u2I ;i|K-xe{nby0x¥0nAMKwZmsh-F2PEbم$cLNI"3dQF+y~po -yA˚WWԛ.P*T|.*$ 2hP}8J O!^P7@MooE6Q:R 6nBI$!y?#<ÃT)6|.Yf>K2^mVn|~tƂHp551oz?H݇5r\rU-gؒ QKwP닜r~95w'OK[7'L1&AunJR}$d!!p#U,2tO: Z /֭F'[vtrI!8C{u.'2pu򘢄g$ tLbW:fj,P2 i~f=sa-+juOHs| gnGa99L{3q)esi|1Lǘ,7R-*éoȐPXk+.jɕD)TWV7r-p]8K D> 若_gk}x6Yc(ە`h!X|ߙGO?I4bəUQC4 ֱI&N}qXd˿ߴLoJMLufnN jjMʍTD :̹dtϖgF21\AE/rWе)CzGF}ȷ땐$oQ'^ĀaulLNd(Ҷ *䃞DkY>ሣ,,CWFUR0TxooQ98n#~Q5]h(ѡ˻D/X1\ ]< N}g5IY`( H:N&Ô0 qm:(t9e|NNP$>:خA$` ~ \\ mpPa[%rFU4''|"*rX(e@#t-XC3Y#ɔA4#Baػ`}_lYSJn})D~@q5),0p/p7vu>??}U\X)8ޔxܦ"!x?1 pe4%ܱRomBIgV3YAY< ࣋_ۗ d{Sltq{FB^a瞴-k,ĬeP 齸.ѕ+nOYM_tTz@S`{NS9;nj|8q\ҩe^!M齊((]j_u؂"$HoR 1moHq*xG]sʱātM#/ary5֡lXf PZI˸6`ˆYD|&ԕC\AsZ3?.lw<<`TFߠp; ^v,ڋ޷taD9oSWǤEsͶ~F(=$ɎpMdOޥf/^6sq>V'Wk׸@S/x\aCE?/A=r}p1MMa-P%d<6!aܮS'NG $W\ٷq*5cە4'VQ[4-e?<<3aꭉ5+HX*C)l~gl/ODǝҚ[l= Z0#ϋDT<͇@ zG܀8%|G*NG: L;3F>ϓ#Ա+]ku@mKB׌ yx 5MwGSd,Ml8ɲv`t^*3SE7Ai캷LUf*5Lbz)plJ\]]񺜫;Ÿž~(M8I9^%˱LlM!4$ ,0u:v10N*PF qMVJy1䶥F\&<ZE®\i4.6qxqcqO.[ 7gp u?iZPwlNZs>dh޶ c4APz?@;J&ڂlTWgβ5(*Zh83S9 ս7lqAkJ$\lC^t`kǕ o^i_oO&s&[!q\E`P J3uy b o`)6*kj fy#dm{YqǷc~>THLP ?LEmjO%~SBg:#EHPbf pkO%vAj5bا=|ol€򗷏ݬ{MW@\AܲE㥨m2<뫑.WZdV%,:۞8]x#;+By ?i-|o+ /UǏ 4}  Xq9s!E-5E;>%'(,kCSre`=99?hVT*Z ?+T}|=ffgVcoBI7Ձϼ̓b*PSR/n!讕7CQ*zG~%/m$ez+FԸP2Y՛†K.(U !'UBX]?]2]|UY2gp*$ o `˂T]'ڃ c*x$`jVZdxm9^P8M)S&XPU^2 g@G-YaDNOp 볨` Arg?yNFwUqn;__ϓ#h(nshՔ|66M P_4>Fط%Bb~3[E 5ȍ+nDSe[\Tc]If:Tr*ӦK|H>JR(7ƜIYO դ2JxkDO/_B? O`H:0bnO_G(&qX"WY]o+Mx+* C8Jm iQ}BC8 JaLs;fM;.pj' w5|.|-Z0 F2$ۀ@}<&N= -R i6V8DX| _@ca!Or::0]$ "sZRP9wa̙ !пNAZg @"*|I0K/p.<~4q$%F, {GPG n![Ef9B;4J8}7zxp7 i@Skٔt6`o<^"oԣGsE"FC$+/74'fs^Q.p|Gbd;ZE^,T\'De/O8#6@zVc7bGSVvnƕm`+g[#l7 <7I#f >? Ϗ#?iaް|${MmG37"}§c40fjTa.N?JgnL&5-'l@ӥYuWuu&n=`8z!{2S'$3*1`;lVq| j.y(sym_\j8(sѦRfZ5$J_An 6rwYEI]$ @&2v\t^Zcot enKR~0EIeEW"}7CxsEno0A#Lp^X/khX*2f%`csyL:ra!xQ=Buο@|[dFH%FrL vASd<}֯׊L9c%^@X,T:F5qs 9>g]h*RU;p$֤N%$ &TR.R㟸0̉JڛӴawgJ4i7a4ܓc1<XG2X6 cȾJК&TbH9\J !a8FHo c8ٍ*nЅJ))-)&G  76TLמmiPj,Ba"yr> dkowGor_Gs;Ơlw{d`5o̪)Iblk[0NwK:ye"gy8Q=5Qwuenbׅyf cU5EgYBdǝ{of`Uc"g@%hiV+pY6,tXgz5^Ȇ~1i%nuס\WHjO'YY '{tMQ@*C[60蘥Xܒ(dMQ`8Tuy"R|{#tVxttz(/"P}e/~Q$Tޗpw%jn#_ѭ,*.A(rUE׻85nA8s#|VgVnOgW=l ^kAS+eObMk7ANsi撩6& N Il:8I cSCx|xpUyjإ)ȅσj_ߡRX&zcCc)( ZV-r_/h|Yv`Oi>/5+dϱVfԡpiJ6030=-o2)d&*@ 8٥{Mn qV9"͠{k X3ѪumӾH-WA isN7$G+(}uILr[:s qco1(uQ9`Cptg򵂏ˋP>`&>,2=&k[ι*(㥛(vMaQb79btIFFuܸyރ0n4 `=U8د1POV~@*B"y#?4|<`7M@3aߕ$nxGO*=mYRsK=Mѳ aΕ. 4$~ٰ;J~9&ŏeG: \i*?n a**Nh48ҿ KĐþpǰi}~X5aeH/; HEWO0c 1}otWL=":ApǼJˢo4v{ઑ~5TqBSh(:+' -4}a 40yZ˨(%a(8izSgZoLO+:r('eoZZL{F śwz1ޑGOBb{ d7ϯWf?#ͪHU>JV!WQz7'BгM}wbvp(JmmL5GvU4i/M {Q_V O&c5| pt)Yh#CYvzs}#DL}.4_Zj(SXHk_^VDSHՄNrDy:,?7،5"QV9>lﲫ}KQI [w]a6巹9Dx_YG(]fW?PΚUDD # U(iNV}&(gcJ{ttXVq,t9Z*|x0 (,юP7OЈds p0;RЉ(۲&+B{vzvyN;)3]kmӑ;͒W5/eװ K?z#LP(JenhD_9x^sP\~%&+x3Msev2D00~e{BKTVVdMIh2ix rNK|IF@"Bct&we>b:J\ &,kh+lS+E| ,!9"0 /2@$%0#NCJm_:gP.e ZOY8bs,cX$iG#p/8ÊBFjEVj[+QOɏ$G_mˇ+KxMvCq OcS6u 쏶~IC:teid. JmĚt7[. ã]| ~N-:I+ khjB\3np' ,RJj i`QٜSVrPaWjhu]Y|j*hZAk nQ`~ʁ m{z$+){5J$ 'Wq{5@d0PS; ds@{}c-ۥKE㈐uV MiW6ȅAVv٪dN[}wj U!`fr iƾ6Oz-Zx;G|5}RCab^RL0(ssE=۔PP*l5WS:aXz^)y*;L [ً srP3qj ]Wa:.] nl$râ"Jv5_A0SJ6,oi\JLj v4׷{9|p[s)_ɕ/a\j% Wp3xkoB1G? I\^ P)q\ ($%.{HmGֈRL煚DȉP+QX[:_9g&vg gGtVB]ϨRݏgL ; ud:f|p;>-3|a>7z|3aK\5\U* ȳjtr0+͑HtTp{w0V,Qjp)za$v'Ӭf8<jp4k [CxG)1oNX~rJa˙r >R:;Bk9s;ITz'9tkq_=($+&{CAu|@5i؟ᬜY]aGoՓR'y΂ HsP2xvPE7os!*M'|"( 򻏲r9QU l_:0Dd-l__/_l4Mi3X . .ct8}nԋ2evzՎ3沴E PMĘT%ج(8BTLQOɜAU5#H8zB D$а0w'x|`}- +HUƶGv?k9rW]_#RK x]%8Zb\r#]+޽W'q:ML Lqc uB YB P2A| Ccg 4Y :kıI1p-.jB6[e!oB+pv_3a ;NYT$24)>$pc]m; +@bbig+/`/9z6v!oʠ8]BNCXS,A#OP)]n&{Ȳ2K?'%ƽiF J<] M#yM/H! 쏈Yuec( ō Md% vK 930KLXLr!dKU5OCH^U)k#u> ou'_R7ɁUXUv*j4+}z?%ݚ֟!8/^] oI^%,e7& 5ݟտLE'*2 ~ʦkv [Y>i"~g`G:Y%l9ʝFM!S/?$3N5u W Ew1fiA>)/ *ԤuI}[3\KB⪉tII;uAO9)`bB!;1[h4tAo!ra4h1hO`rqU,1C~ Hso%hܕ*tu9͌ -gtM*{0+L[Aywoĵ@/Яr孹hN3*qy/)uWR\9AˠT YQsPɕ_Qu&-C~~kKp/Ozvg* U1V'#dT:t2T Mfkm[^4Jj%_n`#;Ƌjc rKfX~Fx#sՄnRH˹k[;$s'S?x&%cƅϹ?:N(./?C)偄YtZ0rI׬7.R\Дxo4V%O[@NkZY \sYyYFFؒC;D3?T2 ]@nGri{V GRV""xNY,BNsBл$F$K9X3<;޼+r⛤,Dl9wl#R[eY{m׵8E]ajq؃HX83&\pgMf1hnɾW^7%ČNЛft4@y9R.2.d?o:X?K;uMxA+NIC7Sf +(vje4!ey8`ח~ wVRpGy -S^ 8m3B"ܴ'f&Ը³`֓˿;e,*bChk/!4K/U]]Rp ˩;+x[Q5D/C3ַiҵji; V:ܛ;[ ^Bne:P蹨b{j:?FhE0sRIX;ŖkV\ f3n`tʞΗ99ㆋcU[g'7^? ^G7}9!p^5{6¶U1W$)IJHt/5_(*s(t`=5Rdo9hChթaUuzyDDD'婛u|Qp)! ̗Sr\}7UF.8n9ƺ'E<ְGIP)3tTW2X\v6{OQVCA5+5$RsJ0b@^Je sp1(t-:dC(o7۰ "03e*"_3" kDoo0i~:d/VQvΓc-S:i%77yo-$ :DØl#iwdbg%w}긊ț^zϼ.0yU){0^=jH&/IJfG y埙7\UA! P=|"C'wV3R#8hǒn$68{k]^䭷 t#BziC3Y'a/}Wk" )S}*ҀsL*w?Z.eL! E;n\6DY'aǏ%-W׻y&O}B<дtFU1g:9e&x[9pb=WixݨG)Nw3 BWWB,o4.fc GxiS% |]JMqO|P!>F˯M\X(ziwPT#ZK옃n9nˊ#EiۛU ꉪy9BZq B7&:{]$qtv̂Fa+wNCT{Zl8}& (泐UX[v`cHSĮ ]hnluWļp-*fA3oňv~L*E) cxHl҄/3Xzw͏G8M[BL'Qi:7,`ƾ9a]}#ђ}9a5 |jL)sdVt̊G! hd;Iı`uL_DM>*v 3MMa42_jՃejBrT@ |\S t= 4~6Ki N3KOIɔG /XX}~MAgSdX M^rܻQN{`=;NIR%pq6-gV09p><.eFX2]aJզu^<6Vյ<7 q;}g8atMdӽeo剳]>2"s# wo%#k=Ju=i71Pmr4X];ںcla{+>#tljZ0.e:2XS"(yc(Ώ%XR!)4Wn"Qn0]&1}Sc#UG4zN"#mOas)ݞP1AgrO l Y|/g[|\8 wWW|" Ҟ|:,1h"qsɲ6NY@2>Ԩf+ 6bZ6AhDcQf/"e\;8`')V9o|YC5X5i}RJ1έh%/9{# /@IBgRr>ŌϢ# ,DR xmS3'$;E}>G;H*$p۽,Au`y׎|<}8^ Wc3Ok3f#+(F]uF!1V:<4=kڳa[q!߯v sLy6΄ųto`RnժzL E'I//[VKq (9j0# 䶗# ZAFbS8#(hu 6]XREp4Bsl4~:RXC6= XaAt-;sFͿ om+ E/P~EXNVX/C8ߛcϨ!_úo/2_IPR yO)DBN]ɞt6 CGcE$aS Á+9("gX S޶( }gACl9 vZ&lK7~sA3QPo ε=BJlGNUsmI**'Vuf?pxLyΓʨCy%$PE˥'%zw5}> ٭q~u6c}D6Za-췓6tŌ[`V*sFJ:HMtCK$Sn:U V6#07(&eF@![ #4b< 6^6V*ԝEmn7KrLlooËNd5 8q+0ˍa؈ BЛ+tM^:j%UVGEqi3=#<0i܍a&dKrirqI/DoNMǎO6 G֠࠻|XQ,:19oAU 'L[Kw_ n eTA l6 i-ZS:d+ǔ)vMpۮxKjd.p?M7{ $kZs}T*t,Qch*fhC(-?O{L g 0 C":tqOPA_- k$4qKK_aXRb,B LbUE)Eס +Y贶A .DQDwqMxDq.>#&?Hsh UVlɀ |3G+&0$E z`iػŚm'ۍeVꌛo_sX';%Oa. t&PK%\Ap7QUed"zln"QmfrV}BxIenrLOޜ"uTD\jQe+B9O&(l ^ Szjhjol'Z(שĸ;x!8|R=\ܽ(YԡF~:p/#;ei<@F(B6>4 tfLg@F=td nTN6K 3R!z<# ${f۲=l6fh\zp39'-#7*; ~}U$fO-(&T\Pi~S"иzAqjեUs Ѝ,ʅLE,قCW"v7ȹ혇w*)ҔR֪])I, z)f=*$i%~/Y3dj!'߷̱~VFHOW#vJ]0d.o6&4:y=_[$.K#l_?5̷#a #aG' ]sw%vz[l0mߨK [B0x2ú PL]e%cD듺X#:c~u&ejB6螕0CzNֶ5k$ *yE.z %7JMqOT!=49220U1&77 X+Xϟ_ hu1`$nC˚ʔDӅ[e8lj~o\|]DoEy8ޕ&K.y>SE= Zd7dj(c#g F=7d4$9&gW?`ހzȐ_74r6mh.W.%+qtUxs,D F%|{j .3{~;>\X *}-7 m\.5Eؑ@ (y>6U },xXG&_$M^#? E!Q!i`YXwruol^-*7REK%~?cj4Q9s1(\Y@YepK UT )F3Ɯ̧9P j'4~W~ 8]{Fx؇ um("A=X.Vlf=>Zea>J^Ϙk$$%LLARt壄 0wOnpX1QxiSHQ|:?a;tT,C6}[R5 MLjQ;Ӈƀ.YBѶ 8nMy.nx ݑz D-+?URKa|dA&.OoK\moFKgTct#,>B9[V1H ᮽGsAtȞgY]-/ 6zeaKRG ]*%K`w:ʡ@0љ]6'BL545ӓJ`' 2&4 \mU aޕ)̞V`R`Jeͣ!'U]HZKg^|Y軙2S -{LI/TN5Hyܰ3r$S~*nxdY ִy*8#*wX)GcM5Nt>NN&rX-]M;#U3K=3GH?pKG6DtUMwW;PQMES(CmcxQKZl6rVA u gRˋqӐw&/&:ؖHOs*ă^TLiv+ 7;.ݒCWUC4 %qe,H AݎB)AXGD_1Bg@LŭPa)sO 4dT^txNC2ҺtOMTZVBut)mzj n|].f:wnV[lp,qvਵds\6L54K!t.堃&Y8G[ lh(XPt8R5~`Si[(WVƺ@eDOZ4neXw{vvw&^1@>2V:ݸzP*Y!s'4J{c7.$Pߵ |cj!\a޹(O뎊iԥ`E88Ɯ?cfGM(!`gkYfpykFAX焱boOyuD@c2+y˕-iV]HÀ'ymѽ@84ӆ|HQy 62Yj6ReN꿯''sE&_*[pD!WNΪԌoa4n:Ԕ6^ pzLV˜{@ ;[Jk\Ϡ^%٘cTz{l9Z|笙չG7!F>zpd㝥WƏǮ9>?d鍸`^,bHq3-q}nIv>p@鮃gWH7G/]ţī.t+ qL?AǬ7( _vBs?}: ) ْgdkh;aS^uY ,x-M_151d{AКǯ)*I7|4?6ptӋ2`TU56f^&Ƴi,0˔x@o b]J<2`94QK/[as4./  'u!HewGCXwHifzv5CvnQ{b߀l@>~s35{1!$ɧoK3l},ԍQ2 ]:g<6C$ dre!P\-]7t6*X.qPpa\DP(t-/:o xIoõЫVY' bbԣ.;W]6& rkpe n;E!4P)'D)T/ʎY7e"nwdbK3Yi8<6Tz[̐Gn8`9#F=Q:rw M(0@6."W"Aשp;;rؠsdU˜^j%b1= }XbI.@{Gbk`'sTg7OhvY)LG$~fpOu` iNgi@Ml ,0s( $`,79 H9p $BHC Q h[%lY ۝@0覰M|:3d寮a,ŴCaa u/H_LaMĻܠa u(LEF-Nw`,TxoaؙfAp|ZAwf+&P.cyan]4D7YJLW) lqd.hc*^X \zY%q`P8ĸ^ϒ.+L'D+hhhy+X1uO~/ 7?H^+ %jm_Jkm4TJ>x>J:b쟠\"L~FRw2z\sxDF ^bu* =MSYѻ Q#:*I5搨Gz =~ektJ"3D *XgNZ^$9W4|:Lƥj|P@R-Z4{JsyE{~%)UuՏP*S rی`yo,A5ee]i{-_e7?&IJb}T}N%=AA_-edpٹ,V39 .`8` ۄO6rU ˩hE>CN|A{`[\4wSREl6?3.ӿo"8Mk3)%zwc>?@ ϵOEU;$%5)8;q /11L/=4+l- xRѧrd,|-eq$zGx0]TK8}Wz2BH; :^2d&*|6QH04a9m`8:Ǡ=T0DW ž6,^A8ZiPhj@ pZ g- T}gV9}6n4H@f> % %dWtrAkJP:/ '`vс#7]FEjBmLd$*wȌŘt)KJlM =ֿg|d ŖWvdVRX1ݣ׫Kp andAf[kʤ߆#gD͊AݼmaoS{uf6X w>Op)Vȓm}愼m/AX;~;1AJhӹ;v{Zѐd;{ 1!暭+NV[ [A#!#ܪX7Y 4g^o2 KwAbDMR V.h2TFutu6:~3Ivj/rv"+;θЧvg4&ľ-NVXEN 7:w lğzD{ֳx#JFꏋܔGZ{X=(k6" LBb,_؏)1G~dII|ޭq9]fɢ6Lq/~_V4Ը7hZz8uU ҒMoQ`郚G@4B\[O¤SMIGE&LՋ:ß8Ż-q>݌?a۳a֎ZRk}cU=c7?W9)K%Đ+G8v}D;ī11(3Յ3"d ¼&F yOb& k^٫u}(X@f-_sQlmEԹj%{^qsM&I,M̯$X Q~26Ԍ[v_z4/ |7Á7WIx۞ii`y 0f~HĆCjLҚ٭iW8(}H5;rWŋkyܣaym8@8,;NP]$t{d@/&q7At)n`io3UK8Z|2?3+Wqnpdk> fW&~fe!0wlu5)QSs[`(<(I= 8Jl7zUOp_D>j-FʞRPF/|w|Qu@6Z I`*efT lf4@ʺ.p,ebW+#N(>P ^u/|Dubu9ǟ_p0ܕvz{ʳYl')!/xXIo[3Wy_Ά=V>ǁA׹ S(!ՆMy6@% aԵF€Mr8OIeʗ7LqB}e/7Ͳ>9hwZ)8&(]xZkx#! :&joˌÔ[]MgCn[IZr[ z#q*D70{`Ad2ZZ4d ]EѮQ/CWt)/N5BGԯs]DF 7?Y\mcY~Qzҩ$|$#Mup'oCuZGSqJ{jvBu`%BPGPz_  }%s؞lsM˅d%c?>~ۢ0WQ[E`u#Q[,ԣӰ\Am]mi->g]j:#(#qJW:6`WgzNTep*Ӛ¦5>Pf4 Vk- kGMQ@"GT$:1 mno$۞\~ 闰6@bE޼xޠ{b*6j'w9GD@xҘaW; ҭ FŸMu Iͮ?MmA/hT;uឤw@Ϫ8ex3TJ7NTv(L]g6}݇3Ih)'DqA[Jמ`2"XHOVKTT˜K^+ (Kʒ O&P1уu$8}tú"dyݲw{3hvCڈCڼ̞^R83k> ө7_N7FjyLw^RȘcZQ =9}fj( &7H.q'w,0fJQf_&5N$j A *y=ޠ'L,LԗU7J~'|4O%TyXW`;|xNEamd"<~'k_5{sƦ%^ FM \P%`s-Y%1@:"&-Crǡi̹1lRcNlk@iw6'hz{&o N._KN/h'rͥQ\y)z3]C-nrXbCq$W0ZoK2-M½_)=r~Bgc#i#_`y~7}`#>{!wpXWJZ8YpU,MƩ1# Cf\o4^J3 (dof5m &ϳ*dhH3 n{ACrm?6rD)>Lz$&"(Kv$ ORaJ53PG1W$nbTȪƔԖ ގ7b 1> sn(ygpWc2蠎 nуSyī͝JcZPZ04@}v?5r`/Q{͑t-[/D.*Ϸt=KkEbm޵mUZ75/#"1)m6>#:qNv}C,P "ف¹,4.c`^}m[@UK։fߕ3[~ZFI?bW֗so:v^!]w[ H !bҡOs{|?mjP#kl'mRdta;h,No*INx}Xn'|فl%c;D}9 &Vͯl-7) iIݟ ('#Wvv5ެ;yo!vPU=8#|oJꮝt 3zn_|=4jM+ 2ܰBQF{I~)]:"k KeTȀ(S0X@dm:_=eh(?jhLY6CC1$dHx1js,\ TAВFKCz$@ēCAܩ'Hr6<5l|x =ғ\:bPJXda@1!>"IP{IK6Eb^Ȼgz/I T`2.X=m%GX'򢒚K3%:;qj'6w^72Ĩ'vb|X8#7 A1Q._ <1YshĭŨue%;$ܖu m`wbE<-)á&UEqlOp6  UeO*gS35vjpu!xnz٩tq-h! T Niv}m\@<0뿘\涞|45̊_8@ 0r$%Lոy?pF9]=tj}N!B..&\hcadR +#)'eB/(. @I; ;hwlQ. ;>~_E#]fYiby O4F[әc-c Eyj"1!.c&AHyf@7b}|qkIDYLQ3qVe:Ke~1ZP7cՀ-m;2 kq܋$HI/)p. 8X#>6 0.@30j?TOR5 N ,ƀ:*F&"" 1!zә9] X˦Gǹ4u2a#՟"*NT*d!M'X/s t~;1޶ Y,k;r/~Zud9bOwEd&Gw^s43g}ʘ& Ht?T#^kˬ@VuIPRdBSJzvBa߃S&8(qτ" ztg8Yp?_>S{7 cV4<ҜegerRpkKy ,I%zK2!v8Ŧ3֩Q4(LK1^h#_0j 7OB/Ԥuk1y:=סR/?TVw0H ^#xM'w<򢽟h"V(z.v}~*b}7%pL t_-`M'2&86\F^g65+1 7o^;P0j8Fn(:Iprb ѯrdFkQ! *)= 4 ]"/ ]Y^U uCvgY OsvJs$[xA~'L\wԹ_lb";{HH!n.`cw7no|bo<E/onh!zh>Fl5FV_a3T4!#U,+nff=f:23.vhبy-x^p=goJ7&` {vQKJ/v7MXgD+h`A@/v'Uo_g}"3dTo9?K. n)y𹄦 5(6VsMn\c˿~Ǝ֎" ѥMPһcR'0ƿe@d wvhj*YW0 QATUoȽ彙H:Qs8<Ҭ_dA G\2[}O KY =Z˞uӀҐf:_P}ߩ؀Q' lYϬgk<ƼcH5{&}IḮ0$C/!N79J%6M}( o9% |ݵS%1[Z*Q}I߲sIwHesgVL;=Rc~"D!C2jg"]iko5lM-3@Noe/胝(Ejmd2H8m$qҞ*ḬO)#ص+3eN쑑su _y2G^քx}֪=cl#Z6#wcE!ץ#uYj`=D"_Hн9iF voL:cI<]u1~(m#Ŏu {yT!(Mrf S,2{neb?П!liy]QF=UT##/31G ViV}#__/Y3eP c:Z*1oMd ^.;3#wrKI =8^b#k-L=+#oKDgZS@z,z g,Xi%+[Z7Poup8s *EES\+"PQ[sK QKX@ԖqN&:[ܟ*"#苯o1p}:{KT͜& poLi$ϻ5S>A8Ǡ@.-5@ѕ>)60<"7uQzNlԏ!NJR "Kú\+ *U;2 @+,D0S2>oho˛oyvs(8E2HТpt0dR`K ˥ +3L77t~#B9qDp?^$G("F~43^A2=Rk6:83~(dZ8Iw#RM.+LMtus\@'1zo׽QN4%| n<4;hc=* Yl͛&Y=I8zJHLjd~ (2)]"~CQӸDU!F~8+2u "3=y(c&<^O*L>lI]B]"~ٳ ({Ӻ7dN/β*}TdGΉB[Г1yj)}/K1ťxOh4[ӑ6nQr541АԒSGכ.nAkbĹ?\fW?#ju/%ȿ\4ypS T3@ zM63 i{TX 2Z41P~nƈ/fe>S 7ErIjPlu„JL_d =<5I?)6_m>Fͩ ?gۛ :KOӈ] 3sԒWBc7*[Aprz㑣lpǙȶ]! /FTK2EG#喨$.t} yeo odq5>5S} Br`?HE Wܫ{ߣ.["2QyY>0V~BJ{sV)A*Kf KKa%doXneՍvAScKZkoKqY˸y4J 5P{ c3cjUV/"~mQd㜅+QjA^H*,ڄV_Hm 1$Z쬱:>W*9<돩˩gC0Y^9ɒ2H @~4po,S7]BE\)u.-\&u?Pt[\& >)4TY0{n141pNyXͪYDadH@*s|h![Qozdž%#hOAT'=wӎW5 ZUFk8L YfOg=˹-+a86LHh8]ɮPcss }~e_*OܴT@|EH4g˖U-=-*Q(Z ,rG3PmW(E<}1}9=د_1 g2vM"c_ )A3 .L^! fn|d.,纛I9F3 s:p2m(L1bΈaLaϲ/QSRl;gn˒ owKH_x*"e7/YDƚ cc=gל u!q>Kjgok )Cȥf͸2OeioLk):_! 7MN,*8/ZeV:,6b) (u`g07[H!ƙ~iyk9V5kVfaZö%,5GoƄ*uWŪ񈖟eiNIwNgmʮǞ*oPS {>q^\'<.aW݋xD0Г^0nIdUN,fq$6$ƭڷtE-4߂)fk=2yPPdS5G.-X:)tp2Zvw!ڟ։$Ź:fF]nwTR__`z&aȱNZ/zt5Aytr}1H.&KbXY}<1y%U jomո3r5ewPL1x~D Z9X&ڱ Bv?-u-?A2[{rC$hmk3 HSW'h[7D]+qn5OtË]𹉪a=2 v@I$(JXj1@_+*)Y0)bG Z|j~_ LတTD `[uz&!Ӛ"6 'hL☍Z|k!7%u\v޴Rq_3|Ӥh4}g87KNjXu,ܤ1sA^+YgI-WzwdZMe=Lo[YD=Hc+ ,-nx-%"r{ql!N 3*4 PBmWJ!0쐺E[){!X ߼q |=Oj7*9@{C e#aVZhn9R런y{Θ-=!6.ԡ) W\ԍ8V6& zmH=ŭgBR 墉 ;YV.xƒH߄(ҩ|(=veJ}ѝSHNKc ՌBy^_Wj gpS%e?6Zj,/PjM )R?`&ňm'NH;9Tp=FQ 6锫)-fNGm> Q%/`43%2desME&t9X-sFo:vɾN4:^i9L}r +^P@\뀮tcIgbIzw>(S c&D۶{='2 NY[Y ʯ{.UOMw)KUtݔr' I ?3eSX~XC$҅NB햊K a0ة;Bޏ8n>$UZAuc'@&l!@R{Ч(S9leŒ簁jO˓šYo{.z-4:OB`/Z'FE}]Kף̬i70 h8ة  ï|57F (fі% kUW-٭3Au&R_ 4ԿS'\2}a]z QEL$},$dGĭeuāxum Q.f i$f{k**D SsFejlVF_^CM,hXrz~# h`: Ob+"MϞjՉbNäJ'~rR>C]C4AD;{ze+n*nd:D Z-s# -xb4.˴쏇vr'eYÜB. y΅j^_ۥB@8g3fMekപi8b HB{FUr< D7^U~ɦ 'v0$~7_-uL| mF 8UDƑu;bzn`q oC%E.Ԧn+MCxXt i<]NBSj̒m+Z#kSc~F>G 0B=@ 4?ɫ=:☗H'>a$7_n7 u4@Q*{bжnJIQi4N{Ÿ]V}HS򀻺 ]6!^*#˃!>䙄j{b)OV7D鲴~n@9K|C2B.N3N:b&neߠ_H#|~;;X]d xG3A2;LM*g~TjxP6+ Z&H)'Бs Ya@ VG*8/= 6< F?-M o-~FBQ@ry.(RIXZp \QI#x? ~ RnY!( le}";SXX oQt8\m0\ztX ^Qr扣vf,9CB.Wr&{2.d]F6#i<7"#;E$+c+aßyvLc>R"X5Jy3' r7O3b%C,0PŵR͌/&)`%Lg~'jh׸-E|bT]ʏ}=,[[b,Ө]{~ƠdӠwN\mRO-kN*74p-r >VF|δ&je 1 " ̚&W]iw%\L^,UOP6mGYp.} {/!t_hcG$?nr,Oa rYiբoMN18Yڛ`RD shcIO Ү&MF,/UZzٷ뻚0o^vV<.<;ϏsciͶtOⲜb)H*(ܴNtURC~3jژhp*9V{mʼ}fKu4!ml+7Jv-yZ֫pْygs#c.i e%**OG(FEڧyҭ_8Ԥ9m:qߥ잟eeƅDpsLk} {FWHdG+9:lU[(hThy,)> BcLN B4zI3ZD2Qe,8}.L㖈ƧJ#8%E9[G#TR2ħQ"͙JFWfQ!M2m3yv+#8fBڹɕ 2"5a6wX%ݽm.m[m !ְD;$Fp#f˗=+uVN'Aksj'YKp1HF"tt)gqs_JnܫФplU n&4i@VsI7 %_$/<哟HGhFs-u=hlI)ByA?=: S=s}1GsTҭQLыuSi맥[Qd^)ֿvLb{ OÅ f(nQRXX- f5b=ŌuɎdEە^.tЌ- +m~8F*3izD3 a8G} qwox ՛ILʄ^?{>hmA51X`vd19{s~Bg@j %#AԭS^l8ker|ԏwto6L6 =t<%] |u/, cJՖvff>u!4Kp5>=>̌6E׆7>62Z"dc= #eFRʈEzqwIe2ɔXgmxB'_8 @tӶɞbyҖك# Ԡ.j=qY!CDB!(9G< SPga-;Rq:}Q|]JWoKg<=[Ӯb&I|8z2Ĝhƽ|Ss 3_k 9TDZaڢqd=$ 0]U@[z5F!OpWYY>7*E]$n ~ȓbօ.Y9}̽}0DiXU5/^n^ N:r@Q MK.頣{vpYfk"^)A7YT;Lqa}cvv0^Lw~-'5r ȏcc'H Zz=ʶHUn\f(MN 3 2R>H4yd:$ 2@K,3?L!PnFgA+`JpG}}϶KaIm/=YKɞ|LƆFƩ{cG8hr-5֌w7 4JP?'ǭqvu $q`A<%5֌Ɔ.l֝M,dZM` *]KxpԔa$Uwq@1n3]M޻>svЃ 3{`7!%פ,uH$h)89Q! J)q 6eЌ rτ! pylR[ži[0eO*i.KBH[^TlXYطK̲97E:A\AË'KQÄ[!U(r(N9V`{;Ԭ8-0sȫi<0VU1s%( ?pQ3}fk7_,\Ẏ%Q0H?Ut>  -~}, .5M3}=VA;OЈ ζu05~G4tAˈ6\MA8H=͵?{s"Ύ3dY9?ƸA>+d/ |hzQZ1k$Y=ɐC"ۣ)kqP$j16`_~[Jǐs2(ZH8-{zb cgDs'ݸ!t'Kl*X݀j` oGܑ}g˧K܋a5:]kql$%uiӛ cÔq$U!ⴻ Sȓڋwl ;:_0W"=Jkzp"< h`v'pK[QO:qP0T ʻZ;fQ4!B]tCߺ抯QyHɴq7?JO\uSX,0$n<&VQΑFήY˟^SN~w7XProbvg񜡿~cEF!ͲQ *.y1s 9!ZԺ` KܯUe4UΗD.ڒ|cH8yUQYfs{(6QmSD#T5-x ì1`yn>%B1coqc܌Ɯ)ۧHQ^I zfk[A-Ut|l|ʃhW99|#lOmBCýge]6Ev3$LS|f/0*3u N8ٍu"Q{{FϦt.iY:xh_iXhѹ&N^ A!|mx-Qr8l 1 WhrJT)ǹRp!y/A~h״H#YQ̟r7=C!Qp;Hr(U|$ڗ!{|t@4H=ԗaZ8yIp% 4Cv*LqX!+<e:5-!OS?Ok꾌e!ryo{} n+ KWrj(rq44oG4忎'5midZG-;Aʲ.{qfeIyx_W˒Ά!vh\gڔ|>Bp<4pJylG<\R37u:rS 'mnU4Vϡxe螧`>܉tڍ9OC9[/= ƂW'LS-O." A $/SPLB O ʻ6n6tY?>nyRRAr@;huPo*|c Y_7p(BoI񈘊hQ/\qu;lua}9P3^?=cŏJIFT(&<6Jx߰^[ZIAk,*G F6?*iOkq-0c¼Wߖ^ G,Bἀ VO51qG/:Xe Ecs]ЌwDyA'd|p0E~objڅR>+Zj"u5jWQLs$`B]IEE-$4Y 1|lM=[\vR(|+fͱMrs-P~_DUe1vg5ẏuTllnLG5DWqL_3. YVFOɁ%T:P"=>(J)2Ppt5(Bډem Wtg\Z5ַ9^~{k`bHЧH&4aֺ?Mԥ{,x014,rm+d%}N RI!Ƣpjeܑ0te3zUt7cѣ&`|B '"hዝ1oݑPWB*ʩZЍה[d^'ؓTe@;Eo`X\תGHȰmRMGM2 N^OW՛x."@+Çem]4RSYj=i5vԒ"8f7 }яoՈAN*ޜFprMYKŏt,5e[TGn ]O64p}`-{9ĿB1v6>Qtm@/߫`+W'3U%`㭅V?*z,˔C$y‰>+ESrn@[ ms]k&l ,B +G fhZ#gfH?CٗDc3WZ$,, XA3mO<,)|~Z.BDIpc~PKnT˕~M-kQ*00fbP9p;@UpP;TN9g@jnޅ 1&r>YcZ&]Ru_'{.zGs$ѸQ?.,:ϵC=rfgwDYS'ZF#+M~9s#PtBQ[=UDSH*}KT/_]|g4ScO =^.C[xNlۇX>XgIfP6X:a9b)=W{\}cu=&|wbct"+rm nsuy-V$/\%YEP+mU+`0B!EFZ_Jg [ǺE::R.S0mD%4@Ko#›ai!l`9QnQ,J~zh!%ϧ8c2cG(`ΞCmwZ8E.NDo!Ԗȴk87S )3!XE{@uabyC#2$:He;D!NNAS e秋[?jd>~&{ɥIn,4!(A.Bɨs2dzU4Drf=ǀ ܵqdTR4NW+-%EyyI՗8Q]i~j3f%F͙YVuHNԡ0lTkcǙ״dݣH/ a3Qmws,t*3Re2`ev]UwV^휵ㅓФebbӷ-NƋOK]Yw9 h~M\J2a窍{7*:K7G7"1B]A7 \KQG =({_N"9EB= FCPթMլ[ign@&gD * {`Fn%135ST*?2-aB¥%Q(8=Ȗ3p_mtam]$_'rEe0uo_S98KZt_`?记ȽOjΣL cɠ  A3II JL ] 7d(0r1QM(F5Lc3 뮳Sd}zA[C+PQ p["ZtP ߴ~?`yd;Ӯ6H JQ ӳYC뙄s*KoA)X.)hI5+Ot1ehIjw5Hl9Y7|G`dz>2lʂ̑S&n<"RR;GZ"LdCԀ>]8OE<:5f\Gr4e&;oؤ=Aj 9dwzfx]AM|{ga,r@WQ`ZZw  F`h?,aMM{7nϞ N^Ri%^sZ56DLES[VO0KK($Yc wޑew"TGi=Zp \Q#Ho?qz'4́/58; [ƽXW_;`(A7|L$dɬYUA Ղ(1F*Mh :~9E04KBAG\"@mcN0NxYî;Wŀ1SNJ.DƬ2Ct~yX'糒 D||uܟ-n-J IBuLi?,Ml&g<lXIx̕,ҹܐmN |@\XDY"#4Noyf\2[0YS%{ 191K6g8:>-{G!SuȩJϿ [.}#̰*qwx7)2+TZ r-D[ $뗪}@}O }Yn:| ByB^Xm;#S)=<3WkpߡB ~uZ CBNh"؀V80GE? A{=P ;{Bpm:\Ub;W(O 0ڵwMl?/ e>xR>-tPsVm%\@Ѻ}-ݹ\V+2 ZV%cc 1TJȱ(cSKUKSU|A!7(ǖ`Akұ^O])(%4ε> yCW2?[:uyCws 1Li&`Z,l okθܫjM:5v!Cn%N.i,񓦹sF#k y Y jewIۙDz(_D.xPiVw7^9aFW popwŖC/BbO4[ \y;zrr7>Iʪ*@W`$#(yw\, V861»Rn9 v|WtӇ, a Us_ǛvM]kk?]='!m\Nl/WY}wW *{tdq֪ YH Kj`8d׮tpae>Y_3&TVHIA#:)nJ}akP|Hx{#L@!Gɋ3Bȳ|ÄATQsyT?.~tBl +qNŎJ5U$hbZ"tG:_ Z|ϗ zAXu\kX C $\0is(%tI [~0[PCTsE.Gޣ:~J;>GdOb[ q<&wNs/HW_fL@TwDxYz"4 {3CUQ+\q5^$# Rdz!RXT>{צ ̟avԪSB^ڽ9LA_ͨ]kif?XIzk&oc|ǟLFiQOQdE+ARЮ0%!cU@柇zƴສ9Xc_!Zأ?0ta_LU4Q'< j@61fȁ3݇=z>c~Y52#E8(ka!Ȑ^^13 /R7ɵLQ9bHk=s9J ke, &aw qwr'Y{Fju~ݯd$b.3}m"z CUHµBM=Od^@_34qJ)=cӮsDN{v2 Tبq2yTd@@%/=/ 0c.e (uxc=AhՑ SDCP'֥>܃^NwUas,tIXHkXJĨ2NƬZ61 AkL3)} ]pfv??Ŧr5ˑԫwz2EQ}3?"I# {{u$G d9BrQ. -NꞱ~'+g85k-i) Wt5R61{ɁHژU!ѥWG9Á3ZމU]RG9n' 1CA?|n_gSeϸeFvg9[S\G\-N0{edf{|y6<''{ȶ4{ףG-ME\n~؝/$Q{yh y0ư{TRޜn#|{}2'7ki;?/8Ac,u+ėDx17)g.3U` XLbsNFLˍUKBL59W'5o YJ / wgDFZ-!4]à7{""D0;ï Gߏ旗]\M,kզ."ű:Z;Ƒ)".GHN;.TYc"Wl#ag э7g\#< u{]1wX*crZd4k6z.ESk7ؠdžӟ=mRuo >@P7($!M:#?K?r3v0lUL.m~k 7;.u( NAL!~@. %=D1CHy[E=* l۞^D7hn4 ?$8LncCU=/K/U %k̑sK;p:y9#⚮ys0;1fe;$Dd^>FO=ҊѮx/^zwΚH7a_ \mp&潛;K}lDЙV@j@AAiU7$&nUY /XuNJt3pr1uRiUh|Mi͞NBSZ_1)Lȍ>F~WkUjfЋ~MX:rAگj %Z}.gag{ 3OLSWB&Fí p"fl/l8wtPƨ k+sĽVb5?pS)}Τ6ֱTJ{C3ߎNh)qR3vE[i+c+ob K5!>,Mpӊa8.dh47BUq[4,nU *}O [Vd HVƷȘ\NRߔթ(3Xai_};ش9iOrRNv4 >7,.º,yU\A3a=YC9y|")Q ֺ1kh'+Ħ4'ԂK1)@ϻxH}wg_f%,ܸn,9IQ+cRf VSƧ NޥH8@ R lMCh?7Dw;9{WW~C@lI$xFuf1s{{*k}`*~2WpteڱW%UDSHI^D,_GC>A*"N Q(5^IIv|5⨝e7 07ch-53q6fDcoé|\i)zۍ=^ GLݳpsK#rNL E2 e p_btf0Bْ)SoE]aNs4 E,2QSf~6HDv7L Pa\ErOjeʞ2aQY 5qIUzJlhm"oEwF~RI?y+\wV*?Iw{wVb T([hMs?B 2PmYC_-a' 0s23#nX2"C)vp~83.ޭ>BRpʭP= Gн51l~\ΣC@Z"pEX{-.ױ@5zG#쐽 yj> [If;晗Sײ3y-O8mz?0 LM joD| GIѐw'VC,XS+OyqJudPѹ @f%VqB`Fw2U]樀'u3y̰2' ?iY=8^@bnny歊|f!včK ~i4I 3}@e|j ?\o5 MƋBe~eF'?Ȍ;G] h]/hGɾ#L{]~gTmC (hJޒ]Z^cabcs\ЉpTJeH]%+>2;|$lKZr/8O IF9OĠk2@FHoJ1Ei(O? Y s8-b ψhŅ* Pgoʺ|9gVA'$^Ak-y;;̿/ :1 @CWx`30HPmƶǍs6*Bx3;-O7ٶ!(D=NnGHT3+ gWc Zq/ ơRT%H5j|ɕE`(]g 3$Eks:$F cy_c|0]_&za84o_  (b)$-\_Laηi7#_M.R'0ۓİ]LYiTe=K 3tߔ7uof6>͚cZduEx:W{lw=v[I:0eAer_fH!x:8*A< @J=1+ʮnuUEv(wv'!myO^ic'Wf4Cō?ei0 'SѦY)r'RI+l2s0F^)bȃX>4a&{:8{mDxHY}Ez;?[a4*߿|#rV6/x] >@Ĩx+W{DJtz-^ne:¦-.70>^{ǔ.h)Ç>@x@Pd{jy-„Eb姣51 5s s/-f\GT6qݧ' ӍᵼD y( 7);*97O6t$]B`٦B>H:صZ<'d9]:WEL ;ld.>Т7JRo?tH̰ 6A̤ ,%b5Jd$Bsh F#'[M9J}?q:N^pF(iDO^(ց1WF_nywt`J4J!Z-u2N׆V]+ӏ?)ҧs%*Q6uM}1s_K 0^JT֛B祷h5Gg:@ou huXN{M.g Y]mFC_se<3^Ӳ#W:#IM+qw tu`ĉ`͙}HQ`/}Gy!F|2ʅv-)QvH ŃSR6 T.Epf?e7 %*-U/_g"h6Q+=bcNMG^_Jʅ~_,o`tXѥL<0Y~G… (1yth nU$iul=J{?H&D*` Sb]ל[+t1c}4SuRkhBz|u+ q hJ㈐~7GvhZ'=K +aӇ>6Q[\NyZ籹ލ7: Ex@;UŌX}'f35KEihcv_ƋNѶ3O-XcBT y.@W7Z&MCpdfC['Edz!_ϯJzq#MR~t8c->vW mz M*u_o,yP!a)B29PPbyTHsP#tÌeCHJ$pDJFLRAe˧Q0m$Z/ ~;#|ڍ:N!Rs2sw_y_5pgo+/1Dg!zqZƂOM#\3OrW . ^ 8Up.#l -jґXG7eH۹̑F#źb(^G]OLGrKw/0y8r+1T1 -h:*iQ+BMx3QM/Ϗm7WV$amN7r0@bICsP[ç5#dGe=Tz A8hRvg5Я~B(7{p +? UTbtj˝0M OHO?>]wڷO6YNYhVdSo`2DO27@潸Vk[ͣziU0;Pd1)| VؚTveW,Nj^0XTl_. zUݜ z߈c[FK`[ Iy&*h^%tF =?xR! :VIQOPsNKNU!enouOIh*IΕ~aeĩ_@}h {>I{ψ^ a|@PiDjJ^~.BDopŗ{K.jՋ)=|+gamyY }qbKSm!MAi\/5O%"r8f#&m!ᱸXo$&{|hs/VJ.FrS![yYq-z;Ơƾ%mCtwCsŬ\~kRICؔOGsC~ߺ[Oji)14fsxʯ;GD+G(] #^ jSeH(hӿkzTP7[ey1X]2ݹʓCnaTg.x0tuI?z,M/LiJz(S2}xٍaˎK986n?40+,h˚yn?FhS-_.F-*?:CQ'FqAܘc5ؕg `S U'}*fk> #en8WRO-]'0d=L.U>IvLgՐQ$Q NvE+uHsobkF@<١r#<$RP \.JtIQJwLtu2bRmR-Y#,>Aݙ*j[bcmV>P河 {ϒѓؙb&7 m\"]̡dzr  :.61tUg-IA%pQ:aRvR.CMw҇ Ep-}g'.R/\e p#Ganðb68N:ݾ|*da 6VhfS'麳$e΂jB.fE+yƽ֛|[Q{ce0@Au_9gj yD]Gfo<voCr"ڋO'ik%6 k.x[&bZw|&?Z<7qw)T ?A箄DRٝY?X}E1S@0fM9_zQENY:\(^Z^"@UÇ=]Gr8yk3$Y?uKΟOF!T"V40 8X뢙L3 .὿lIji(OHF°Zn4VߵhH,dkf X0e<' k~\Ts+[M yH*ޞENưHpm NI#į ($N Op+)aM4E?s݋&NQWTTMMFqXx*-Y?i:m{AKgW!Bm0 ps%  9хlX9VqٱSUIEe Ri[[%[ԹLZ;Gj? –_+(͌^ju&y]V:D%tT杋zt66LQJ /VKcW҄)k;Fzf%Fxݜ\鹼:J+a(=l&p-t o*AΎ' o+XdW+$friDŽN~_ϋϡZ3ԟ|18}WA|n˕O}?qJix_顯*D5]Ts}Oyؖ$:3(Q1XI-:/)q !|h_).GJZU62v~H`BkhR\w%dD6( hL6s NX l6Ln|RS&W7m!+h'#_P5:NV쬃x2f=ߒ=mKH?Ixy))=~n8[ !P}[h y=J0yms(E#mop- k1V&PȨ*gccDVzj&Yr^Y{_aovW{,wN10ΰt>{8̹MKƉ$3jP`Lzl)Ƕ_M/x6s i>BFCy-myy˾S7S\p7[Pv7CQ'v]1CTuy\еɟFllwYPMܩ -2;P JGJxخXLMp-X}C+xcq-%ZD"!ZKVȇw- П7Y0to'y=1.5\7bH gL~) g7b|2~d#5_} `9(DR N@!<6zIrk9eAz׀`h E %d VaN0pВ[(:\G[!ۡ2n(m] `;& MNx7;*X70T0Ƅ)V@]S*UŅ?mIy4س\y^Os᥀">`/-]0O|g_O>NUIHq9bX}y+kZ+4S/兓,{~f#WC'34m4@`$\Ƽvwۉüʦ?GIvl:? i[*UQm;Rd~#_rIBҖA4nPzm[Kiz%ݠ=d8G:ߑheBf[9oVN&3~.( {mw)!zRpTeG59\壻/ ̝ 7!:T%N }Meb26YնMQ[= f|ԉVKO}#A:莾{m Z!c*<. Vxl:;exbypmGsCYF 5BUԗ0zd6H*?I\#rQae(RrŠjy~ ߠYi[y YA}Ed `a{%vBRW[kzoGH,C*t73WH%n|c>{C~F7yi]Ww0FbMI@s XKӝhdwdՈ9P|8*VD5McU)E!.;lޜ`}pL"+8ǥI'ۃ*-mЍ)jP sFX1!s$5UM3I!ccZBaA~爧?`UB!vwz(TQWX@[oqrL3(- $-hүЄ08B$Iph*i&lGժsCUl U,*6v,ZʄbЖuVJ"G'>2 UvѡцA!_Z~}{{r5c X_ol!iI<Fֱ~ClAk*cz XHa.fPbu̕BX ߍ(8V2H& z4M.)cki^K66슃Ъ {|ғ# .$k Á\А\8"hڬp͛MɊf 訵 ڦ-7wv>/l2]7YyGOXJrye8H3gZl`AC@ #׌?\VQ2q;L+7K7EXMRTl٧i_b~X˨ 4_G7_[sKq%9M7x s{X]xy&{pHJGizPT!Eiw^E~=BIyQ7j00u]}i #U%MX rH"@P@ ɰb`j2(^/j yi 7Dnf-R;гKBGEiO?4Nj oڇ<*1ZF&Ap%ѣʠ.E[?0fax+c}WBwj֬Z Ǭ뮣 1GX hn z#,5^n6݈۸ux8 &'{ixa ҽX6g;\Bt@[9?Wh]AoNLP{NɒnA6e;^/Wp9+$͘vbYKsEx\WS#:$t]1ۣ#ĭ헺\B''HsqsQ/T=17 @j@̣A55͋$_o4k{~c=ݔ1Gd`Q_K"`{LZ(~nW(mP`l U[lWBK%n{w#ߎ2]VQWE;߭k !0ET{1 '>=CREf{N /a Q?[]Q]ހ)w4\_erZP"23RhHƧq}ᩞcy/,G{VR- !(3:" (~@bh@<9ڜtZCp\>.%p`F+Z?\s0/ 9t r!B̨." f:;-23_R\ AJD+nPjV:S H]ɋR}qC g%d92Z *^"qjlV_ץ>R~ZчdZVd"ߵ1#f-SN[@̚~ž j3ֈr3pTїXT> uMMk2j(9΢Tő}~{`q:-K͵_6yW$ʩR\m#̻.s(b% Huc ﰎ* a3 nCLF 4U3)aZ2~,xy4 KmkWpS@oz>y9*vu/2FSgRyqD`e|(W?9ؕh0HRjѹ+ )*2uWi:d!UVێ;g_QW   tuW"V~0'4{ dž\eETt_JKrz঒-HCdW ]!4^_:/z$9mjfah@C>nލ T!:kZpL"-ي։Co&໌ v}鎒C/i?!_(ʂcrd4jm"pn >kyҫ[M Gh'LjÔ 7$DD ԛsU+QkN.`+ug`ɚT$~Q+q E3AOhߣW98ď̴z30:3f3ln;Yӡ 46d))!X\BTZI>Ws:Q=悝9{M2]hW=' : ,攬Jw_g|K㻦{0dFClW۝:=(BMbgDC Z959B@2FQsY'+1yM) 5)).- GJ ܎>\b`pYvID,/GHBq|D{~"5FtW"ILEY:d}o77*lĀh3]ڵEw'e32.JKJu$p=FpJukB tICFg[O U`g+b< pܫvxKe}xA  ۳lM18x®aaGYf=ۯhI_UWlXgWʡqg-sD," K4z+Fz$r-[*M^!g=C{/SLƸRu=&ĈH{hF G N_|v?,awj@֔ߣQ}Ч‘XAz:s|zr{k϶og5!+SXEG[tܦCWC1 L ~=ոCFX8"AXvzs}3fds pgg$ugRA;;#GܿӾ|2 ˅]k9<,IOڧzo)+w#Y+Až󍃧?gǯ:aJPI0Tw@ Os3qʌ{D"elGWVj֊r !VN$ n0l"FM,t놱.N@(5j {pf;.sN|NzB^ɲ1;^pVh(BcfQ0Պ,xI]YzMQ'EgOy\J{;S-#_KJ5a햜g{h^^#lUr|@^]I# uGaՙ *褢oA 0@2s5 *|f#̶2Mm޹8ZҌ1nNH !ʂZ$Ёg*$޼**I*JWk3xoj@-v%.e¿Z8} e|r5X=@P1p@0wfCT.D 1Pũ]F ,BLEGܔI1Us'/%=yfhaB_E{Lg(AFAkc\ظ W%(,I)e.~ T*v&Nh)Qﱿ4lXX0逖2fѩft\aTWVfQCB"HP~H  b͍ec^L l+t|e¸0$2zڤ3'l׀fW([9VXI5&_K2>ݟA|/+8iwv#Wc)0>}w 2VLdDcQսb|r2|Jɟa --9WOۼ ~ ^ݪNokI]TbgVF(KgH*oWΞTףZa g=6QI3N>?4.r9$Ui<=Yxd_Yɽծ"kbp0N0n{hΎCidKT\[e!zt!f`į~]=ZY* xuA)D0sh|?f.f}ӡ B7qȟcIptd45*Ke2.@,`B'1$aKkK>F5 3[f#n+t]_ íۢiHdҵBu~]9S2ͱY^{瓃ЖBE%@˵[24`]B f_ k8S:ÄuV!T+4dd4,򟳌S[}"z Yx;11+wXLψe Tk "pK;0i]I fח7y +߀Gy[:ep*8j]Bj[5ڷDzZ9dH9eJ?tapcK"ԥ 4sV`܅ڸk. pa_E{D+tgŭV6ZYBK Z:͟,F{Y/lH<V)s4eT NzF%K@|W|tf`C-0'@GPr$~ ꩓+dkj83<{_hf$PRzBU{(Xg9a+etK@4,rhnuNz  MY|a&}?-癈ҕXަJrHYnS;1P]N'r5n%+/ڒrEmo-$u2ϣqċJ_gHa&i#д ',G T;ª8iLL`g/tA2*ilڐX u $&m } m~)Dm#=5d,]&@vijtlOeQԻ 4(|'Qz{%VXH p&1Rpzr yq;~bnMa/z^o2=%i>3.sWHm㝿ˎWlcApY,QDsKi{,-ar%sSv.@vrc?@N)O.g=aEbL٦J/e*rYfe3%9fM ۄp _FCWO׼hPkѣׄ$l1m9u|!BIprNE \"PK~J߇Ntdfkr}5p|߼A)?ʉo.K٦)#|N7>8L5aHiIis&oW{x\`CŨ@Uc46ƴ xf͝ x|u *9o1n (kA\c>M-LP&su?KGeҗdtJ&⍥'6m #ϷcT6C)#;)z_S~mE$ʗo@RLO|pd?ҩ-W Nn (AHѨDy! w%G?7p Lkִ0 00vD3]ZF%{sǡnnUwQ\Ԫ'[c͔P :-_%i)<ߌ"Y9 CAIeIl?viW/:FOꋴhf7nW2ZM9ԢGLBtX֧OuOyOF75/X da|t1o|\ }& }ۯ[kw{A^YݟB 6 d pIAZ}($|P+Syz$`X>\ޒ)c"Qo\3 y#y2:Gy @Z|WDrO# ,a} ?'gkHdYa!) 4kvI[-96ޟ7Qu!ShRV%'_%paQ(.W z-Q F(dV\u½hgSÿv4Y} oN)Rlz>ć8l ؂GpDav;b Տ sj_JXy /`J 2>Օ]&LL%.l Q!v@y.E05[Fҗs[rV2k_`}6sS-pp];7ʇ15#{N-$;ߗM n h1*n¶}|ݭUr׫m27_+9]4-B \,PkkBDDžni^Lc*1 }MߕVIo<4R\8p56RsԤ,ë 1S7I؃؆\/=3MrC ,YJK3$BcRn=#gF7FEv!;3UedGQh(lfuNxE.8Q)9c|Ver(a0UxXR("m{4T g cAŭf<[# (_-~]䰣ߨ_L{3#Vgq-rɧ{:ju)b mdZpKI*&ބbQ) +VEI xL?\WWs5.Rx#Xeͧ,t==:7ʉB1wvX|60,44FkkC}/b#~0(y]bggVMVQ*CN[WEaі挃x*g!O+I7sEbgVIg1옡C0,ٿƲ5$3c@% iC*\zR3C)dn7=gqU]3 42Ƙ` 89~}p/zL}22hG::qπ[NGQwۆ3/%U[CumvQظJ tMߡ/_U.yڒ뤬:Kx?\ 5q+ٟ4`bI#dSu >)9 ONCy7^6ԧz?ݟ6u_{ܓ󵼿p}(G"/?N E'Y-s4Un*Bbϫvq/&af6DYi_[MF/&$c{ C4 z0rsfFĉb֚ %OPsc a@OfOn!Ue2G!Ul˨}CAJ9CUp* f1?rv @9%$9W<:PlQF2CH2~_)&ϑlx2 OġQO9Qr7nHVe#wb>1m/ 9lr7x6Y?i >&NC|<XYU8/LjXX{=/=2(|-yHM~].4s[ ],Г1R-ٵ!5u#,q@Duݳѣ 㽋4o 8za$RJKy.kZbH\ Jtynik?(QZ<@]ȗXv\aEaͭ=L9vA(f'~X8&b'rA5I9$N L &9Dω/?x{΅*B8ވ㬢({/3-/QIwOSQ7D-XL$-ְ=xc8TmۊMV_ <r'ʶjO▽QsH,-˿5>#06 sΤg3_tUϽ0(XTcǀ[(H?`Oٌ(vXe$&Ô;R'9&Ŧ^.' hxzuu _ 7U{ LG;ު:Ӕv~A~ ]~d кIOZ7P~hsP1*4eW-~4jv * /|K):>6x,A?#ssv}d=O.nu:SpƧF˒Sv?a$b^:jnq Q7En*c田<^;OFl;PI=5-=͊$-:LژQ(%V+DmUZ3$عy0u&>~iɪdRenOq4y:dt5L|6LEciдƹFDiZyqR wCęP^y,yEUAZ~c^Yc wHͨ*}ZcGHp ,~P\윸yZ=e# ]b?SKy =:LU Wo`"[N&oO},vL`(]d*@Sfl3.]ё\WX# ,IKHbXTIhTq& NgAgjGu2,>V(4/n($cY-\yO_LɻLA\ cj88[8BoGV˂9\*SRH)x҆brD%^y:y >qJqlC;Q>X |f~99 {u&ӡF }~wwt(BSUHs:9ͽpq}ipLdzkf^7*a;0YWW(HjR1Nu, 5mST¼rCJ(*:F?bȻlk3<:.kKd Ý-XNP|5TuzVh齞4d 氣z*f5 4^#G ģy Z% #%H eovn#'ޔ: CO [@B\/'SҶBH a#mk[LN{Y qWi\Oϭg _i/T^"480 S=gf9NM]?5lo`e r Lv@:FbGLYJn%(o+GΚ5WT␧Z\t;א1V @InX9Z׃%ִ7 .IYh2w=h?Ks0kxVY=Ģ_vXa4sw4Tv-#Ț[#靎<@9F vl3 Vp*:Yx8ol0|QhL̔T ^ǜTpAʩ8275 l/=M--?῍Rv&h^sgG=ɗZQWE "E$$gO)lr¸ OR*313X#io9503Vε{I{dsәLg@>0DgDQG .4 ,7? -Onuh&Da/;QĴN 5As>pT7nԌ3ob L%5ic8Yh %I*wB)vMwZx@~V^nEujv9΂BpMG_>NbѬmPT/yK!(iѵ3JC 'WCD#%Z/ <}dC$Q#Ϋ9%`3@3RB#7ܞ ?|lѓgxeܠ7>\fy ,lSGҁ ؄brĸPng|\vgw%Fw,rJiL 7}) Xdh֋.͆*Vчq1 " U=?"*"`.{2\{8`>wL+XֶcM `7"몈{rMC% D"7{rswaNO@Y0BF7i"6Gu^]kDofwyhOR+*_ h`\w`Q^l!:€XD΅RJsKQ0U:PW9ZX%,~7(uRpafH`oDȐ=R8ӈ4$`Ӝ;Q!sP)+(j̽4"PڀYM,}G*D˫wlozF-ڄHr4H]`0pAP .%eRG(o*Q% v|3 MbW^&5e=gIUru wffkwPDTP|S=!ualtfK]Xp#e9PK&7V*^.S!Y\7\!yt!:\G٩LUtHae,O:!,!C~6mHȃtV?b쐨# uB*Sϳr/ ?y2۸{z$Rms˦ӴwKf1Ѣal.N6_=÷⚽yqS9[Qk:x=M2E\ &9-w՛Pw3@1?nӊwO$oHy J[O= yhbKjc)l+Sƻ+oXv~?*eQ֤Fnv\iAcPYi5/8~.l-{.,|?k3M )p]{-"=c|OvrkIЩg0>4uӦK&=u59 ߮lx#Sz<$Cr*`ؤ4{ >Ϫ՞%|η%gYD DhJүW. YҡuPceݯxO~Ӑ댴gyS)vUBS1F烸E!N*sCN# c>3@:[aGv> N1L!H\T ۢ~)ܨvS/cҏi&Qy\T> lr0:o26|Fűf= ȏAj j%V'blY37H3xj,xȟgkN5-#8w"◮x78qOd,?G5LR|d*d'P@Yrly5QfXd)v%!vk)b@n|~eH*" ;1MO'uE7D‹%D!a)`Yx9BPq>T@ T:E#H"@*]>6*!Q7ouLܛ3$֐ub.RdOq:Wʳ>#4fVˁ8ԝ6b3Zxn7mPδ} VWˍ|͵0h|i_$%ѹQ J!)t䯦֭PNW JKom\(ΣQ-(]bràCW^ֱ 'q[dWr.$nhUz}>҂ftM^t) qceartĞ&D0I#o|Bݜiɴס f d*pffB8}\6&hr_QL8٢̜2M͓0"^έnޱ2@`kӫG# RZ yդ2P>= q/.A+ŏV{3îeom/RS/G2 ~`~lX@OshLas-] Dn[85}Jf椘PU!Vש#\N.dT$ }UT߯Qk v Vr3+f̬kƺx<2;o٣w%]Ց6JTƂR0K r9gLDЛځ9*։:KÎy RWSvgN4xNRE̦ځ)f?rlT;THSIR?[1O@ܡs"b F@jJk̮Gϛ6Wa*4n>?M=GAk+ 50sHg-+]_W{un&?8 l{zN0T D D )ݖATNH,ai=qegǩs$4K F猩3Z&V·0>}8p]ӵ Q~׿^/*"Jeǧ ΄7W;{ڡ0ؘ(lܴh^_%Ul(y&*Lop& 1Lcꌻ y΂Lc5 k%$=LaS, Oĕuf. ;LTu<Ň8`)iҶ]טhQOo@vͫ@ځ iX1}P[s&j3sl&6\T=^b7Wo9AGX  SF|MU!ȭd{5lJ$LlX;%TTGw( Ip&9ȩJ?_7[XC$\sG4lltI.\Mûb3'֒0繊_&\9puV,U?z0,xL#Z-Fm.#iPN X?h催j@R{|C6t`{AJ\\%T|yVS/D)}`"/>HQʐj7F忉c89,-L#y"͚D*fXJ^7Z9YHCG4K0S4cɳͼ\ʿ}&9 K TxD1I3tcW}`S>󽐚Zb(4J>iN2A'V8P!Mqa$ ?zUZ4!8FOk#ul;H-2!Cv(B+%Ud<27&&%W)G KĎѤ0Fz*X>̹Q"TFlѝ/#{V|4/!5~s$"6bt[ !;ցihi%G%2x (k܂ܚx PY HXed;RӚGxdP >b̦:,fu2Rӻ!*.[ra-;Zz{Do>}|+LԔZ.ZPChlz|Z4WTO}H,xVN`!ʚP>ZU-+z#`t;ߍ3IP&Mٶn/P+OsDj)5&tWUhJ8g b+PMK>F0Оkz^MujW-8A(nhgutaVW#7XIiM|GO㕸C{4e|D[WU IZ DsW},C;yO^W'bD%mÒx%r8{y8A6[8_Ǡgf;sa}|(vCwl3-M2Zp.Kqz{TpZGK2ڋ_WV8#@<,5Ԩy]v**kc)E "7V qCvB~x5~?rK%y&URҌ@@Հ嗮Z? yfwQUǁڳSEX+!J0- ~puv[2cY qL><[~60Hx=݂*-U[l63dC:/IąeANSjċ>MO&:r\wj3&-H_N< `X32-sH xsD|%m|A'P}O5wQ>c3j$}#2O45.2~n'S!t,{L#vl],1Zֈ9Fd]oܳҳ'Zӣ`_sX.ZgcÖH, pLR0nV^LyCW1cԵY-:JNK&8}LJ8z<%OY+&B$WX[63cNJqKk][4ܐJ302m9&A(p,sj7ǮֺԲsk_U\h.%"X%ǨSdp#d|e/iU>F<{,pg?%]M#?t5>As`7~≎@^5`zV8ʚ/1i5phOwZrt|rocebmDh͕X6䒔z9.OY fT@%'7 t@Fe%;h ދ|"\q3-] 6ɫҸY$:06%&~\ na7I؟aف)4pZũp_@]`ߔXb2j9Q} *BGt80 jl$p5㯞RRY5jm.ɈEj+ZCz#BU50YrƯӌ;C)ZD7l%8AY5`ΎJHl 2qYKoQCYTmЮpF!l:acaa09ROWD퓈]+aP>Y -.td1~N@VK%(^,۰oKIPW$=lʰ蠑M'fQf37`R{x,ow%<,oYT$ j_ZG2'>@ [\{\: 4ͯzJ YR~51~gG`S!s4|upNOlbk%̈ cqENN≭2 i2mfA(jձw#z[;:rM u\K^O|5ma ҶF&ۿy6ŢfF^0B[}$hx {aD&pH\d"ˀ6M˺q㗎FƺT^$K hPiWz 7k|ݳV[.^fYPU:wɄ냼&wKt]`:t#F$=xe쫒~qղnz8Xi.oBiJ\m.fqa_TەM(BFRѕ"O'$FtiYʩzf^aPSbv M"ad>*<5,Ah|CN<>TZ+B^8/F\Sa'`e2PvЀŠV'ߌJkrΖS_b,7^9>gSY_OXJx9 L[KQjL9 7A31w(k\ȺKϏ={M9#"M:&]14j rq) 6ZB(P_:Ms1K| a, ;zb+GGf?oS9bh dB'iۆ(%:uȩk#'26wv:nHa!<xv@4OQ5FM U>Q'7mn1Fd%{vXѭM4 bk̘wI%Jhg3QA7/Rأa7xEIv_lV`$ ǭ;AF-q A$ke8\+z-Mlz)# mz@ޥzU^ѐnZ:G% :Pp/٧hM3*R/W<~,@ي]d@vy {aFzCOF;rdgQag68&DA{(ZSň'zFk:UT=jQ8,ѻf-Rо\ǽ`d ĂIp-hRBLa9 '-"ii*},LͶ`?ACn .7 c =KSZ)[|tg8CwxŲvin׉'kRiM4"CfOONM*T0/pжf!L "= XRk;$8APYi d4fVҘ}v4po.Qبw!mdvV &ߨ$wmOFPۮH +$#Z]CFIh mAթaxa.`vhԌec¨rRDL>ך Xɠёga='Wv3* 0PE [K7֯@FWZp*tE.ΈrkLG,xTi~4YG|U L΀+{ԫ Ⴓ$)e:R5M[ TȞwQ4֍_ ,!U?v,FKSzdsEyW)Z%YRz+|9Csj}lAP1vvJz&i+};Oޕw嬀E[\Ud:Gl >Ŝu??A@I5ŹC#&wa03;(Cγj* wuXC3ppAWq?×&=ZhZb'[`SLT19#trXO@r"@7+O-c5Mݿk2Y)bDc򖜵LEcV?/䲹yʈKpq҉DD,AwBYSd7;*yÂTK?J{o-Odn)Wf5X"חBt -Up Y9="-Vz 7W1݁Bf (f?~{2% Jfv1Ǹa(F(kԿЎLUrxӹ}=O?W۱5#N/tMŕ$1Tm4`x 5̞u"DdôkA3RMqc2p7ޣ:9b/D%>~kRP)&Nn.ڇ=қ5ዺ}Gw&_&El¤YH6ăo?vs#ЂWhMD \?s|BHgA>vbp|6wO=x:4= حfH؛9쓇MgF3Ue=/NvȎ(G~l' l^a0#M .rQ &̘Us6wbW7#| SuW!U΂ɒg޺bO船@=FdOD@=fU^`"껖aUON Dq PחymU!M:KBSTlI~DD%!CpQת`C, o41?Us)[B]²bfS~Ce]j=AF0=Ϲ u(+XzH7o{ *A41~&6`cvξ`w_wb(!yԞdŽ=&X]`*.֍ _ƢAյt *%10g|}bo~; yDDW50q{86$1?kab zӢM nMI`!\=C"J;g*](?:Kۼ[).m4MfKHJD-QT5ĩ]9K.Z =d//__)ϷZa(dA {kWD$Uޥ5Z[t4V0O条' Hnn@NU㑞IB֟ |Y=VOSdr"OʻFˑ~F ݹfڨ.NCo,[ʗm,k$ynaTxq =KmN- t\]) o_z Ęa_t e\˜Z] [~*aeZ4*Ӿfwb8;q{á#?36/B<6^&ȲFK:zBb塃xc*7lGFzdEQY Dov|*N&q =sZht;J"|y"ڐ?`#aB1xQDj `Kd5ZɡT#e/aTSRYk9M\ i' 8+JV_dFU邀HW,N3O{2Μ Px6g8=)|FT=Hߦ8jEQӽ!N^ sz.ؔ9(waoVeStI2@SKzId}N-,'عǬev n8$s |,򲩂L fNCdN7 6*>G.Ԣ۩VFMn0tTk_{L_>!GbFbG(]Ş >%|lF$6 b1Tk}f:am}`Gf^Tӆ5FgV7Fa} lhc= gٚ4WGF] Xd>`!LcQLf[L~LI.'˫- #tgw::( +0.4r9cO ,v0Ff E kM%$噳ru NuJ8<֎H>dIC z >L18l`^qcÓ}u0*5eZtku:rR+/4Ѐ݈g>x>iGL2I^ݎbr7qѼ&$P6+s\TYX%=eು9} HfBRgA4#YUIr=+ -V {Sy]sg@C&[ixC:E}F}MJkR+J}^ZWyurF1x|M@ϚtPr418{a!^ѻXu06r ~ϳƒ" A6Nbb0U|c|dЕtT Sv `P eɒ"cmr._=E.Esd%מnn$@[WP]SU܊+soka+<*xlw0D;$vgIwWZˣRb, H=CO͡>ۺ*ʥ~ᨯ7J-S+/W5%UN;HQyϗTWyF^PQHկ,.mP*$DK/al Ǜۓ~,8t]zJ'֟4k ?H4G\?V DwTĈC~H'Ll+p?inO ^TD3[&bVTHZ7GC=n.1 \s3HimdlȨH{^?Rp}ԗ,6AE虸6JT˵=uحbCSƏ&K~?%=rl~t'4:%1| ܒÐ[hp`lQݴ^0j$cxk>+&H֑RP~&Kǰ7OcJ< 2+-q;ռ'Ŕİʇ1 л嵹#>뜗ye\u^7B^.vxR{ {AR.v12àOQzol me5a-IΊ !gF3Rj(0mI/ɉ[ pwyyK_H ؾriiRr EN9kV3Aèݴ|RJ4y\VoDZw17Ijl!@Q#5d'&_ ,aKX> QKfT~"ʼnK"Rn5^OfǪ+*,C[Xxx[uaxP{3Fl0`6% aMl{vftVCݹSC9F亂e{nXdc:J/r"{voB=5""ex7Q\DIEwZX*^8tѥ|8 wAB-l,W]CӏGQڮĻ]nJjfP~4|th?kn_N| x۪pE3*2&Gi, IBRvЧDf ֜0S})Cע{RfaR'1ZuBlz) =Ձ}-?L0V=ƦFNI5ɤכ[mP(_8iy+c$`_oͮ %ܩ-5Zj:̓`s-|{5/vP_s#h\j9r~ v;R'4J /EJ &I;aL,(5CvJ;ӣޯ7஍%8S ]bPY7&xQQM A+A-Lת lUE&h#5NT+ XY{˳/ x/dz !eh=M]Ls s8>qv`*ԖDwMHZGӆpzF⠘5AډolXn+*YUq5 >yX:wz/Uxv5xB=3VbLrI=tЫEm_1v?Z*/qAMTi&9ϴUyz],#Iڪ'l{il}9I_L aD,|fC[ meRI{3#w/o(ĭњQ a1O~`%i=0/=ImZc1cϳƙz¡7oe絕#<㑚]zeǖVu7aEmq}{ǎYP8_7d gNZj%M2]`_HD$-{~U$ci0EHl Z+L8RWo|m2++S M4{)IL3n˽ae )B SA^ҝBuI֋lFe|hсw')QT0/QH&dۋrH]O@F6eԩ;;anoU^M4= 4F:,9!,Rqkf'C⌽",-O=TUK&D??V!ET%Bhy5~=zQ8H*]Y'X&+&wpWE?F USCx*fYfTS*D'{7>Cvڀ OWCWs/Ϸz#V d9)t.:_J -~Zw%ܮ 4KUKL*:)1yw$+*֏Ul#R '|+tX 6`AᷟpWEbh%C=Qu;pogcOüY&pcXPt" X[oe} f.>2Y<[GGC(UI6qƝ w8`5NVINǎj_Bm̎B5wEڙhB ߱*coL]'YA 9/g@d>wlEL6C]ecz8}uShc`- aҡʙeJś}ߔ3d[%m;FI*RUЇ\6Xb =K5ڣ6hD$P$x)N ,kzA. XmGp<:.LfZ7=e;oM? *c+9agC{X v'U!F ǪRi,͹ Ềeê@j0묺W<hv牁GwSm4mYoyUͥׯϜ-@9XCτ[v>L zr(j!ǐߎA6`uZONơ_PVJb|ywy+p zc^s+i&`#{@a3a[)|^T'LJtMSVO&~RJ}QSBQw^dÐ1XQ=Eٍ,mU,{qM>#wI H1m:"y"p7qZrLv Q B6VWoZ?:N^>OBd?ú{1mK_7.DhqwIa=S LK -o+`){nЀsb$uj̕GP|Ԙ2a&&^! |F"0Lpا Ou\O{*^ \"lfS\h@KrYafJٵb TOhsn>gZ{D47wO-YE }2j@K}6#z+'WŽ%zTmER;=.:&~k4io5!XF4x3*c'ۣ sfsiCZaJ[؞U#sj'bpeQ)кp؀  c`dIO\l`%o!MI-\KaT:ڸ쑾i*?wQ 6}vOكםFY{5ZaFIY\iŽ& 4+jaEGC%ڨN5S~vC,z@;MF`KW[Dڋ\,vv lyop{ F[1 .2 =ȿ'.NBy$) vv1$SJ1o%0JR尖[=`RPqg; "Gs㬮xwHbKdS;&c5,a"C'8qUNRys1*Gߜ9ܬa!+%.%|z_J.6 QDNJ'/5= Lu$B0-[. Z=:JmqB%p^tQ9eLs(  K~ev~RCSkT4:ۨZ ?J/n q$@? k:H?ĺf29x5+cIyj}OysiH*H YR#LcTG{_]QiK*Qot'>ΡOHyg5FP>YXޛ"Ħ>8bMouWsk]ݺ8b_9e=@@5)^OS&79.wVf(P(QI:po<NL)ppnCfwܷx8.}МKAS@ޮ'E(!KiL qaјOq:Q[œk)iLOF0 nIJȴpʻ]YⓆ,ב)$ >ǥPvʧtg9k8SyF<0Lj}֢G~zW_,&OĮ̢MQQێZ5fdF$' #ǹ0̨8ʨG6^b2)KgsuOŋ@l-k&7۽4ᑒCso('+ <\X~A]6,7{~1<9HU1>& [E'h^VyE'&XuA~j:U͜y3869,iءT4J3)*Tj-wZkB9/#\O!#BʏHm]c[%i#P@h.uB>. }ۊg"6;7#6ƴ1; îV71$.fQGHdPfZ( h[ۯL7m"=EM۟e ·EHZ]*χVA=(>_ÞIUrmN +͞f'ݔS+4&xUE7y/$&2Dؿf{ψP#wY{YWUes\ l ENq6T|EŲάH+*'vJp-đb 4G˩EnC(Ц%:tmMN >h s|{30tyYp3A;a =e$r+T4nQUEۄmM92xsvZ`@R^S,{=~\XJP1Qfmj߯D_]b7n|p{kl%0;Ub>BŃ#cuԀ:j%p]9N!%f!ևY |(b%D}S u^x֊#0祹6 g|a.Yw;F w? ,") oG; 8Ĩ_JTRoX<#g:UtKڃGMOd$)}K0 N,ߴ:m/@v:yorA3R3EswX52a[8qVoo7oI2b'y{BdO`[[Ym`SgXUk* a')-ؼL  r}ùlmƋ*ԡ=(:Dk:< )c:p[fLLhoU'}T>kZ|ve5 `21 lkpDĚNj/|9x[54k?tK j;jWGx2r`XSC.5}#qm|DmiD_HOx%qbFaݒ9F<s VEU0 Q909J9k@i]-欠yf-TFg ?G6E vݨVX9q\yGY^0 8K9xoğ _F|J58~wrA&gYtԑ#мu7鳻d.W܆CK!hWh+񋟹-]q1;jgUN]-ou^ok  09Hǎx*bA"}W`UQ߸n [OT>mFU~c7vբm=[O< uF5{X~3@Q(rx7 ra (V5egf+2\<G|uFGLMoX uLAy ̌(:8lut=K^)'-/YZ\KƾQH?f {)6gXw4ml8tԁ_}Kbt${duGW%ܱP4g/OIV u俉'Ƀp1|a7swsV:6u!{OYb4c.|a/Ǝٖ(~o{u%Pɰ!25jgU;DP.uN7č>d(|Ki3ȋs;һ! DIr28 lq X8 ^9| 3uEV.Jm(ZVx/r[$lSRXVg*tZ(6}xzp*nasP0Ix#puLF2Nrx:m^yo-_Dx䒅d^p1'e$DvYk!/|yɉ> Yи:e>ޝлo%ZL.8,R=^OWK#o|fS !*I/-DGR: u?.YvcKrN/xai(Ci(YBD|;Y6*% :%.2z xNᗿĔrt`kk7=@o}xB ;guy,]pAαAb1?s2DLbdYd0.?͊~ս+I41} 2iwQM E33*#=V&\v>Q$m aI}~TIO@FEW$+tF@:Ipp 43ߢmgK(pH(~ㄻ`2;*eׅ*.i z&d!m@ܑ);|' +tvxYk y @.ͦ` l~T<},2\aփjN,j yo3vœ.K7Q:,[Ma,O,..H-*ʥ:3k&Nbk >(/!|:,҃a@yԆVaL}oC U7Bg @"))_oƾ.Ox?w_G,\ o$}L09L^9j !5{hOwj 8%']B g.5pHGVm)SIBLp-'9Gi~ ||/娸w'~'.(I9Q֢IKwq٦:VIK.Rݨ.<τ/COio}F)SIWPa9v >z6EEVo+VoEl|=b9t3.4>*"ݔ:*~\-?csC10%R@kUܜwZI1C#qk6,/f;|FD<=2C-N'ЖHdnQ+ |P!qNo5aߦJbbV'%3`ٱIU-$+0n=oi(UdP/%1L4B&ÌnVCKA:-/zSU1J軕y=hN W5dTy)S.gkQ6#6 meLpzi*,w|L)&ܿ;x+BD$lhkw:7ۢRb%{&{縟>4#FV^oG^q? 1F! ^ vtPCјkAB rMC4t+έiFшs?溫&;^AJܯOP;"IM"F+hr߁Dz{L.+|޴p>kvea̙lb$HQ:}h*(8.aR3c;]?OCKB"bts2Ȧ]9CvA55Es"7#*\TK8wH-N?I<G9Sl9#h$"Tt`|!\}նC, 8#F$ rq oQJ(AE&.Ir $ +8 Q5n䒶Hn~Db(tL(,.yYĖ"ɜҽ ް d&|b ଄iQr$C,{~yțWI"9x uJ\K-8s39|0X7!0RNhf%/vZ(~ 34"i L29iJQTU@HULr!RNZPQg|5bSD_.=y)^l'G)3뤧Bj)L7^;BHİ]TNL'p+mSE×NU<>׻Z2hj.މ:(-o^,[ݒDŽu7W :μ xBp!$&+J,P4S |(T؋qm,$f' ~^~S{, O".AgKeԊ=.I*F/<(gYIygj$kfWTJ\垥+ *w  xHF\+/f/C(&|!`0$D ^.GL0]yZXRJ4Ս"#BYeM%H {zyڞ >J?"~kQmG7]>{RA|_ObUf]^jTتT8{g諸)nD -봃83@v"ܢ0DdR}hֿ މ򁎦 2N)TcrWG^{ePZۈE+[SRL;ITj8S.ܥ)"OR,/1dkP/Z1řPηFj19r0%BIZ<@!;aR R~s<-ĕVu>V;I=d` h5,z{$xN8s<Di^M9ns̵Ŋa*`h`J?^Dl|~g,:ƑهNy]6k"-48Sik(˸G!=U:[r.~ 賩y ^%q7ٶ­W0QM)Gt ~xX/;Yxu2f)f@]zb&ۭhS@z۷F6ZaL6L Zc;xVkQZ>vWYsEe8;pS?dc##Lj+tyy%b2-JA3yT] 76m޲ Vkus?48MM^I] 4_,0xMnX"RXY2ҠVN{ю# $[hKLz3nnɮwP>,P 䩛&bۣmmh"xy~ueYz!=jBFyҹmLzsNb\҉y]M~IQgr.C 3sbn4wco̱:uGN-f\q<ǛY?0X.ˮ$txij^-#7kdw~Sq6Xؗ0t% -c3qcIx_,muhGEhv[X#?H_t'Z4?2)R/L uu*!z~(#G3Er): 3hm,RB<Nj}D[ّso؇ }WL4:6i5YJ 8`zBw'sى=s3Sg#69;1/?Z$f+Dw.Un׮7|5#'c 6áysvi}ysDN9Nb%OR$km6MuEl'ɺbH7@tݥ>D-qhGAF:WZGnJ<ʰ3C ,5odC#m-9Ɇ;T Q$i[Nn%jT3BQА: ,Lp1PMmFٰcy[v0,obЭQs܁:y~,mRxG_j]<4D In,nRez<OSߵWJ/G-Ûd~Jt;'Xᆳf_帤rNr$Sjrs;T.wWKsΚ4<:tq~֒/7f! m<)_Ax>&S-S6j\E >yˋJ e{!w ^GP'wٷ^b+q7 ZL?> / `38]ZKw1@5GxMZ!7Յ=HrH!XE)ӈ ]yJ|p(/78$Y_ސfaGWd'%݉4#ϟzr8#£q'ƚ3K% [:nui &M!`3%e 3יPц(F([bBW +2$S`CL $EB @.ԄT)^n;p3 r)z_4U_"V tA5+&(x8ů#>=? MnnWfHίdX&7PȦUKe%!1pR3OUC~l|(M~DO1JUӦϡZKCScZS Z{+:k#IV A 2@_}}.B _mMN.F1bS.mH1bNb>4a{f:&폭xmYBGh/]9G,ۋH7p=L:_,+ !"*8ceB,Vma *6̙ӄ+U^R˞/֊:c50Y Ĥ Fe К;8Ԭ5 tm(Myty\Q=EI{Y0휕Ga!  EXbKw!W8$&^i"\5bKFU2/D`ٕ烮%X]J>*:>MƬF!@\ۛ~`C׵(y`lZp'F5[t}8IrhxscqG"ia]'_p@WqkeHn\2RY)F2N_jφÌIWݼ~5S T8vg{?H:H[ztP-w-cT7vM ?.zMK }:0*"qSwEgCS!yږe>lCwzEji@g\X58mDxΘuMh7> ӣ09p@ړ) v{eY% *\.76>h:{Yz+mK8ʀ9 ~,=5]%r>kbǿ릉?T{[{4'aNfҭZ\,gS3 S.OE03 $.Ϝ4Rc@>B/(8Cgp%l cm/F\UΩxOZUٚIEmUI$Dž+|$[Vv$B ܸTGN.h!ʎ4 grL5*N?^^('R*m'&Wf/euJÓYw>G'N^HŪ-zK~0at,.& jN.'Vk|QX*.HIYY#AiQArZ˨%wѨļ|[#qS0{0W.cuխF^/s2*X-EV8;Z``hP7o}L Dpv]z&tKT_&[.NyfPGZg˖\WrIL އ -L/&w{]Vb?`C*!0N\|+7`GfƉnf\JgE,`8!9+k (yq4/sXcp0!8kE"-URᢷͪ{ط譏lZ?j=.&p#NwU}9ȓ<7M7N:԰/>| 擄H,7rxocIWԿsI fxV1i`ON9UX:Ҍnz-斬`cYI8x#R-a;MC}DxR@wM^{[M<q].+r{\_U Y*bpp]fqb-AmjeKN ^Fܾ\@K98,{ & ƹ֙K|EEI.o~tDb&AHaWRQF)0d<ݯTG8F8j11{^U^Y_Ka sZk+~+6([1^jz#0EkZ\sQڂٵ?d1YHӗsjqduFЛG$E൦μ9><4Jf]>ƈfPWZ}:&,K55Vo~@/j0=c-nn(Q: ;:GZ`"^2?rJ?8U 2r.1w|95f g` :]>˿ q2;_ hޫS;o=H  }\:my@#xsYZ-ͳ@ÀP[Jonz[h!6y]I讉5Uը;/+m9ly(7Wn|s;;pw#dGTVQp"#0y&8!`w';2dưޢY(,룟юH>wթuyvaMZaDÀ m鄖Kd|79>(S,Nr_+kn3b*Z?6~23ਹk&"N2MbDU!(jf >ѓC8Ia17b  pEFHO rʌ$*`jL o# 9ۆA`-ckƮaD>r:2υ(y DU8t6q/ePC=:dt+D#.{ r JMXZhe\gq.U!/BĽÁIXtkX40f.oFiB. [).^{Hl#s*c=rIpتb\UJpԸΩDѵxf"#P62 ` ρa#ykj cR-H$/z ?`H=Qz2wNlWǏ"or#ʒinU:! O5z2+39i>_WS-i*JO*LQ0 LD-@JXFdR.8>fsU@ i3VCw w, |dk;}evo̪ 8`asm[kJNɠ%~/VKM['?ϋKP@A5''O1(32u{#>^%}t1Kz@ .*;Eu!3JIjT/5J&52܊OU(?NN%>mXF||۴!7GŦ?&{gRhf!X!/+&\mJ=l{Fx\lx)LB!O㚡 shX僢>,-~r 'UM8s`+5)ݘZK K'&pSC#1t+m05?'rK'XX8VFtd2g%Bb#*_ZVf)r[s)7F.)K~UpTܑ]F&3B"f?fH4s8~ KFd*3/GboQ8 9DA4;,]ڂQ)ۗ;~8U%BWPkI a,S95 ɭA#EqnBeyɫVϰnPb ֥ʨ?hėɢD=Ak2V_#{+߅ijv @=wb0oV?E^<% LطmwͦE_fj;f"{`uc~QЧpRO773>[#pWQ8P)+V"iҙFBA{}.6c*jf ɺ+a%ޔ8M'`hUzE(W<16O#"P_@?R+ Q ;dmZQʔqf`h_0DM TTSUndCX$M5eu"Em|#^g:5i+ؚIx+&L%}7.[Wds,R9Ɏ4M@gɌ5ɄyYث $ѯ/~7c)EUR Ukb32:BQSeAVi8 X%,²1Oc Rlv&.GDЇ$٫-ъgw%D-k*LB2L O JT +'8(:ŵtWSؿR@ⶥO)$fDHI*%87C &GёG p"V1~-*1ʩڂ쌝l5*JӼ nzT? * @Ѽ9Zh .}]z/gUGa$ѾYO?.,>ft9, xArY Bj%" 0KL6ڥR'bE|z^kqtWүGV p!ݣY> $>M%Tis5]r* 5VjU'TbIe"vX09G~;K26V˒ek;L~j?L4S'=Nk.Rw@\ e4\#jkZ0+o8NgjjPf`?DGbaue=hc'h}_GR:#jTghO᢯b;:aiSz¸ V[0S.IM`4ivw9EQWro{B\dx-(.̋orLD`XhX)vwM+^|yT/ܖ H+£V/6ZkӉ剴_YZgim:>jC@!/o>\b9CY1r:Hd 8ʬr0͐.[53xދ7)#7Xj5HFã7WdJn~7Y*z͉5BpB[}/xs 7C{ZjE]ۙ /D[M}Y3vdzUwQʁR?<*|V $t"fG`"d8 Aczg3kGRB"{6 "۩a"{Ye*|jn[8ڏuACjUrt򁴢|e;8AQTΒI)e-a9*$sS6昺”we:-5֟1f|i J@Ћ/WZKx,}ipǴͥ4 /@febwS&g{R7(Zk3+z'GXOE)?;yܠXsd,1Q0h͝08~#< LFs4lY[i(}/3g!B,JgIGvcV&SEcjP3$NۚrqhF2f|nCGz rtYyV&0; ]2|&T 2\؈oY9bSD%L9ANkkAY"0{H-L̞u[JTF2W~.-6R/rI4=Ht>}BXo@8]b?D&L֪eJC -c̛GZzP"X*6T9!J`ꇚC2*H(+uDv9kڹ ZU;=*R=kvy}0l+Q#PJʋ^G&٣K,-:@L;!MOظZF`B2*Y\jyM L!6ɢk%|z$Wp7դskYu,5!C Df^Pq> )pZbկYZH~v&I]4i@cN$xcDIݛc0 Cg 4sY/ _2\yZR.oa ^YE#M 9~H 5 3؅PSfS1&|yt 78 UW+kakYd-:bU`5 <h̨]pk2uj~A*0ɇ4R#;8ZzőQq-) 3kXgbR槞[f(4ORjM>Dc+!ёt >T@-lU)i_bZW.bmz[m5TT %J|a{$H:`)^>Nsv̉"٥4/ se!wh>WUXk5+=!g(7 gw0I>npjv],,~^:쐘|51ODw b8}l:擖 .Z\C_CHçVd^kILQPu-i NDFMJeN2TWWv]j_brq>g vY= y;"= FGPi`gX5ߪ- oUtY£5Jwpc؍!.!jsܕkxn7{U~嶽'Drs¼Hv\sq01 ^m,6%8$ɚ 6Ay|iSf41e< $Kӄ?A-(]P-~b)bӃ=M⺠*f+Cw~~Lmr%#dv+<0*9_+;Ȕ{E?}L8JoC Vc ‘7 robBStߊlw+FcMX*G1σ3cyhK";pS0 Xn_YW#j:e<)PzZr4RRsMidcW>FiR9.˦bӨ \C|tDGFG#h5QU ȯrR9>oU*fS"W2J`b4.$Pc I`A"8 YM CUbzlUxF+Er5k sZ$}$[0y Y ͮ( ë'X_Ã=a02d|wRf6EfpNQP1e;{M@$̓c]>t"K,>-GKlE*BDEu@$nML2e'Mj 7wq0?IHAbȏWYY \'27+⒆ж@]g||`UY00/+Ov\PN#Ŗ.^^Nd0CpѲ)hn((u?hQusaUXFSt/FKl5>} Ϲðlc$UH`aW}^e?ɴ] QfM +Q+dwn l|riW$_Qå!=ޭDcBL`VxwNxC`I3S8(X̿cK/p3Zc&nR1:R# Vv#KߓV9.NJD3me~ͳ8V}˦Os뽎pQ[c9R @3+Q_!sposU"3bڔDYi6v<՟lخAsYiܱkR 6*;V!#xŏ"+ O:"i?:x 4L[udKRS֗f~pIJNJC<#y3CW1BೝC)IWm{XlJaCd'4<,7 #PW!Ms +g 㫶iР$z%YX;rp(]"@qZ u&6{$#,l(ncj\j #X$QIvAPFFNϴ$8@IX'E=I dq@c̙!QN8rWZ|nʈC᪌ʓ|zԐp -Ϧ edI*22_2N@@?dɆ8}<{vYf|7{PmJ8QG^_Sm?L)|IUU(bQk`mla}X<W=;cysW Imj98N A*y ¹ޅ@:v"oґAax}!a^jUwAҜ䭏s#g(^'pK=9LtB_{+0Qc!ȌD?8͌F̰'UGgw5wqzF?^aqrZjtUSuoac?7pu6Q5_nc5ְVؖʹ-+!zkTMѷ |{ wQ18vҿ |jHA ?gWs AdR߭:F(џ勴5:_DH{~<Щ9 #m#8s@I5'ik CuNʊ^$piPC& >X3,x.k˥y9]H:<8,($XP_LG>Sa sgI6;3>[?5ħRT٥_N |NS!I ו"/őbtnz;Z&"+V8g+69M?k]OuH, ~}V)8$B˃R[}(2\Z_;OhV^aqeGLXS1$!eW| .1^SDԝw&Ja#ux-Nx8s͂ۊ lV'2Q p{f!VڥIcbBR#hgM >%s$/oFGL@gm9Gvfg[>qaFꃊ\3: zYdGCv8s0.IdPT߾P^y{M lW;,`aju,,De <= b<&%1,g4 Ic6RjOtBUf ւT+(rʤJye~7U>T!؂0(ٕʇCrZ֤ *f(ZK9 cv ݧj'Kߞ*:k(HYCFo$hOGc`?6,|;]}7*V~g/uv\?88yɁP+vQ2W!0bV Ja { =]`y#)h->B}ez+C؎1HA4(Vx"Y@QНƅd (ނF._D T5 *T,`݇&"7o%4\?|Q$8 ?_5m|=O'{1#ն(:ԫi7g% |ŵE3E<7図ir,W0NbvpT"3!]nJz ͘Nfbcq/E8&ӯ_^ XuѥĨwjfUǀQ>A=muC{B.#Z%/h?8sprE79rGًX@"G{ǿY7K#+z] {avPS g{!Pr/E.(E^|}2[K0W_Q4$2.~{>虚n(BВT]} J:2Rڽ|@M9gP0eh5Uov~YgKΫ-`iX L K*c->£cxhQt"O$S=#7M9Znj.Ů&ڟ*1WS`X6CEM&On%e1Sb<գ6^zZ\`r٣*Asm0@IW2A5ӭdG [>Z$ -u*LN2W?ޞi YQ_y7HB'ʏze0:;G+ȥߙlV&XjD̘/ߥE};$ O5%.1/) oJGĤ1cehZjqܩ[P6G5^8&}|.(Xwo5{EXtT` $kP!CmqE: $ A?A[Dm.e::Y[̛&M"fYbpA-i|' ǫl@a,75/jO5m5bAM8o+POMK?g[ǼGhuR)O)1!hשnj7! ؕo}RPR`&9]:\mU5X@ mqnF|?nu|Es(rZM燈N SEӘvQpk 'Nx<6 G+ZX.#&T: 0o6s{v3RqXt6]]wp+dB.[G,ؒ7nLt0Y96,0|)cg->- pX`I*k_34\|Xnf9eS4Q]@L d,ct΁/B/g"T7YGdfB2JvB6Z*Ƞ;qX!FZO *(i I*,43x= E)HUXjn>cWx:L{h*`6x%i\%9t^$ܨW6_J*A7èp*SlxSvQfcLNbCPUF\ kq-31 7x#+(m6Ylo 5-'.R_1$nSekO@% ֦Cs ֻEk%͝dyYf)3 d EU![u$r e|{R@ n1APnTc5)LѡUPWG@h.V =[FEiQL$l=^vi;ܲ U4{!Nvp,G8=(7u4`WݠBO=sH>mfnco>_"t2:5!Ɯd@c(sy,a"GVٰSi(sQa}m`M_ECM?ApWfe{j* F@&T/u%;tӻ KH2.|+EգŚ:u;.rAb&t4Kj?֙H-(h1GlYs[ φqCLJ㫴7 礹geܒ/Jz`1fZm1>xPM6 DD[K*;K0*ex `!{Ŕ'~'QTo*a0X@gMqΟ Wz*?N{y,nKg)(,>"fi6% i@WUDFd2NBeN3U ,JITPwd+[ꑼˮ B72-J2)q8I%gj]-96c*g1剭۟|D" v)!n R .4~~{YLTH<)f_1."erRtcՏ bW6uDVփj!dU0`N%QU3`v`eIawqҐt@4o&z|I p=\%9l!ƶߛ_`v^MWvݮ%F^2%[XcvA*%Y(#&YEJ}P/V>J}V 81sX ,i 4!jaa358qE~}ڽc ۭԖ,,޶G`lni&Ľ̥ Xײ1%J;I lĬ|?SEߴCj jL0 s $h!mnH;r&rة w:AcM[qCU`ٹMU"Nx81+)fN /;!0ʊ+Ogm9Mg[:8WVꇂk'\Oޥ\A6ݞeno8!;EATGңII5q7"{{֦}җ܀gFH ~בjA&Xϰh Ћ|"*51+`NNĢ >ط(eFv kXMݨPm'W׏}=GpOl@oõQt :0nܟM5:675ő&!6v{ Sc4 =xÒ^tMт{NM~b+^[ x:O\zžWaOp) JL?hŐN4NHQV5i-Lwe&$:{l&fb^EBuFP+V5O ≤a%M] Tǂ%K9C+e'W -}1ZdHSH @`&?EHDGcն=x+E Blh<Wt t qÀ\ 3D")Qّ{a(^QfX/m!;umuk;T0ao_]r-bبjK0/jߺ yqPr(Ka+'v޽r uZF)Wxy54S4WAA&f扫o'3Bh`N"^*<[tZx7(T-Is);ç~zFG4N,D ig: .طMH\)󽎟Bc;i= u+㬸d>" =^ z>(g\vɅyUs ŽOSiQpQ* {9skЧ9 *2@Dzc:o7~R1J>N^T%ߒxaWTW#@)8E6N˂uk'޿}qd2.)n(53$T־NO1+K2lєz*DbZC22>ChCZB*wdYHa:`P}_G(u mQlwi}q M͢% $Aw-xoFR#\IC9<ȚE*q}05';Kbq3k8[M´e2ehf&P Cb-vh'ISx|XPY~̝Pk_QzTh tvBI;BJg~>N[]vkw5BSgMgGc*Vp1+C}37 Y]0d{DDB1fHq!Bp~3;3FyXzoA2 6(r<\Ez9'dW eq~-`cVvVLH$ncV֕hgQ䝧e KC & RuF帮v %1Fȁ|&uգu s 2py4: oD;G}T1T(l jۭr)Y{:BW<\yI?vB͋ʑՑ>u⧺7[N^ZZr4k<j"Tbo= }V͋eDmBV8GK*2R-o,.QltyS4A0AYٟx~k)و {d3@06[Z\set%YB Md˙%Zr HHZ|!Ks68.^b$t>`S$`~YiO}f{= 7yM= uKC*+]J8))ܸNu NOhݞy'x2 عb4&,a/+'ʚ+h󣱿1 ^gZCdt lC(V"ѕъ R*~/uB󬉃 ~o{3Ԓ/ jӞi &E%?S>"*TS \h[v7C3.臉afrc<c<A$ 3遛l xfOB]ը!N[ŗb.Ҁ}P\v>{׀Yt A'μ!_lw6+HO&vy|=O޸b'tbOqFR^Usjܟ!PD ?3}lV1#8ȕ,ߖJYq/TU%2ZsryLbJԃOY<\.$g@H\=[/~,A Z'8G(Y`LB(ИFړoL[+hՏftVV<È pofv8b<FN!T50(н} $zz @cJ:8MZfEĮ LYtYtb'xs0_exO CoXOZTw9*I]|S?=81dfGk`$h,{6'09 ~?G[ÍTח5%,3+_|վp@J"uu~N^Oy_\=YJEv˭h_cZ K*4;LD=𰬷8 -Oc5'ݖlC`~*OjaTx Ku%<-fݓcƱ\F3) )d(jp+o!q]7oW{?bLvs·}n6q3햫bO /cR-26e|syZI^fy뷩8J!z dEhFil{W(R']FcNOUmG0z#2r0{Fh|^W-֍B[*{銔tU vc_)kSE<7@omBWt"*FO~@Dw VÁ}\ Յj/n%% RR &*-gI_Jǣm&Bհy _g4DQCL'W&"BbqUXLk-vfޔϒ%V|(z{$)"vM7&ށ%Ll0Ȥ,?X̜CuI{k~ Kʪ=c#{7v*rg */>Aqh}{|>O2m Ѩ2ex7׌VRqzz:"G4Yif͎`T=Ӧ@{[_uލ cI'r5h].~`P̅ƢrpL dX5+ qx^7J ϫ8CmK֭9cCc4 (A!ΑLx[pxbz 71LRjgG!T\i, h¨U<4tgVѐ!T?*@uJ_ >^+T&1Ҹωk!AB|(a#m㰂; 0ٔhjvEk4{Fr>A(_F 5jDqHϾ&||&5%`&4\[ûQC X܍CyFB k! eׂR'Q^]zѝO+cʄyU ?ZÀ;8LIeќѢbfQ:Fj3ޠw?9&{M'1I%ɩ:c^$FoBVȄorF* &\B\ɻ4ۜ!+~tS'{_'vIBGcƾx!$Y柨=E3Ht/2V_!U-kс"M~|w,ﬦ D\j3^6b+αT2ǺrCɪ,.;+5ӏZc{>]pMEY@~̲6cok>a~ KouܙGV0oاO9} $& -Zd2 Y\;wO4(1YA4S]0wLLE.A*H|ZًOIA܋N56hҬ/bSJ @t<őJtePَ˺F)/)b_VfZj@["2(f~*NRPMzp5߶U X/rpهi>bz7P0)L H;a@6{FRc+~$Dsf{EGHߪ=.;S&PYO3źUX4EEKIJ:אH׫tXW:CƔ!PM:҄ wQ4S 2meN*I=6dZwLY{+^cL,0ˆqpZ~MPvhbuQ|E"O)V͸u齂[הD$_( 1}n3u}k kԦ !tl Ñ_w~?W2.lUKG}xp5P{+XH=^-Wj-@,X?,Huvg&S3zΤ;QxH:"O(sG57h"7p ^Pɒhmל0w$X0z}8WM+8\Hx^$Ί-OI׭_Ds$ېnMyv0eo{Ym*S_|pYhC )N|adM[khI+Gft)B0o' r6dLfnEOƌMKb0Χ9W/4"~u\˴ fI&B=}Z |$(x*M h1p:U \pw  ]Konb$6_3Qs' az:cܕ?uDTA8$in|(9U 8uY#@]pY!E#hY0˭r'SWsBq;^9Q[ND(A홖O?X/ 8 [vaƶÅ -5ݠ$ &wq4L}mzOM6ATFg&)-^9%5;T<<l%{A%ctDfC$.Hɏ[G 9ƅOX?Ӵi.@<Ҝ!mjDU}teXVn{{"< 1H R$ڣUS`n&;=|wǿ/]uJ'! ekPʊt;A@H"{.#y#_=C :ɑIF͆'m NٕZQ:qѮO ff1nߥ]dJt S3\5M3Qas2N 1\!t"'RUυ6 aT/-2dsOZcεUJ fU5<[.N&"n B 5.;K RBZi[[" 2wsQfJ lWh38-vpbD}dQFa9Vdjx8=TYȲǀw5Wua&P{+2g(BT/2A)k4eq]-/L; 0:~]mM9Ѓ]} .*&,`MY>ԕ1sckusg`HS5-c( 6-og֙R,?H+C;ljG奞q=Z䐈<Ģe؍~Tj0s ݩ{e+~G^6Wr1eώh9՜Cu䂝*ts: y~QO=G \g}X@lյns+[ >ѯWԅk: pv :iJWވDԹ{i (nHD +=aNZiAP43x˟,d[Gٯ %C9Yթ-@N&h^I>}Q10A*Jkھ>B4kfgX/9p.hZOJ): *@m{'t+o dAm/Lh(Y(s*(8fL!+ٽȨQ>];6PI}$b RvtY(rD"^N)hB<aiLI y|-$ /.ol1A)hu<6ZN$=MH?cCpq 򽬹`s\*T^r*@̖(3T|T$!sٓ?HV_o᩸,pylՈgM8ֻY\[Qi0IDEa/%_1, +Z"._c Ӽdg|@tGh n|`L|Zb0 .( -eaC( ̪2W!LW#/oZ3—1AҔhcLxJoΰ ]:Iw[ .̈́)p`D ZBY7mCJ&$ڇ6eB݃eFDdrBp2Q /v$1QFDz @WTOS 3؅}hmg(5H| FZ5Q9'lVFܧfPԁp3UAMbvz-AGAɢ7)Y%~1wr";^P+is7s32<>t.-7d53V֭֯&iw=HI S:֣fQ )U:*VtXcfm2ie+% :2矞?roWiYXp ~zڥw YbefDH7V+Hm=#_L*wzWqkX4DeDڢ$7YGa;XW9:\u\9ne&4KbM7Wy0 D%.1ꛜ䏭j})UCS{7Қ˖*$/c0QgA{W;H2ɘ\I##pkTd"j4K{Q8U9: r@ԇMM!?/ `.*pԑrT~X,}>[”'9U_+c:V@qԧ%xXJ=ӌqG]}ql?N{c!` gr'e,ZwpWkȴ 1u4x`bGD;0$^R'><QR\')Ys7E-y;ԩB mTD[GVnۘTy` gB~%-Ə?lk o7Ur|O"}3F1@ãLK:CgRͨUIgO@n VRqRz%[K}-$ @*Fk@4Oq ,s5Me K6@T oǦ{Ilf=4[el ,$M>[8|Yr_( >_&<"_µ~oXQ'ohFJ=#c;Yz>tL_MaOi7y,Ꞌ7D^p%čV=0 YVz^.ƍ¨WgӦ*nXLwQKLts^d$Ah؇ Uk8Ҫ}]AD JA#u2Ap 0Rk䯻 WqMG~]^qh9΋bW h)ҷ//X{boLI ک[aת~x0Em+;:hj08SR;XQ*~ l;w>EIQ uw%sL~]j}le1}j{q8i5s+Y-'듿3t oS a%-R74Hdo0i6Q J 5v<7%XsfyزO<S|Qys/MʔMPհf alT7$R J2_c*w.*dy\ZrWE5@{j"8 KkbTat`X4͊ؤ$1fjњ qDpo.tdy@wL~á]cN692%~EF$ bٝ <XZ1LMb|yTx`* ])HdIBH;c{ YP=P;YЊle053 ׉d_Iu惖7vD&@*8';ԓ\şE G3HvA( Ad!IqզQ-g-|˧pA@ycո2J;6@0N? p]U89<[&Ԩ꤁9hk\upHף!5gQǻսDǑhMQ,nwL0^yY1JޚzBKؚ1qng ymMzlƓaݡf;LT+7/E#Z/N5k dЏ@=ZU<(a3V>| kͩm\ :YɁD}:8~d@K]# 8f`q,&PJ$ HXC(p"EGzzTۛ >1 rFo>%97tx"SeIáChq7E8,H lGjٕ-xa1MǍR,-Tۗ^`Et?>9F[2iŲNc7 7cl'c)w qұ6.'s<;lHm$'1j%rGigҤ`rD,۵{pG;2}CKy,4  j (7,Vu6Cʚ \v3ȝdGf'$Z`4p`S;M _w%0q,1zʉBL)5݅IS"RjUg]":kܲL%[l?'q 8*3 )hM 0V\ 8iېjS#7`!= BG5g LHl?ֆϣL~}Aˌʜ ۔)?Y*':j{ya' &SD@'%܃\qWnV<&%D0na2'uSVǢݒR?S)zOy͙\TeΝo+M jn~6˧yI~PWV^^]իÅCb4`-ayxmbsZY]@ZRG{ѯ;`( & 81#@ΐ8$V_ytXMOO|6A`r޳T>'ly0: $"Qol:H~&4|ФjByo%qn;O$Mds-:IM[>ڃh)q5UP-Ε&Y}&{hÎBK ߩ-sSFb~aUI6#E'}Gɐ>Oc ~/C;tD;5Y w v˲=P?;+Biה\zDRQlyxROÚ=}_ 2%kN"%ʛ)Σ$iY(/<͍N7]cSmp_gJDzڳ Y}HzD! YS ~!I9ǚ%Ug~(8C7i| LlٓH'9& ~b7Bd[Ass{hn,; !\%2AhFr8qZzU|XvZ{e˳]S{"DoJʼn#`e۞#Fo^9w ϑ7mIrw.cpvM_' d+rS 'ڗ}~`?~phL@-6- Aɋx#%zMvl["d"Q:7ZەM`y y>~@E B lhG+sGce2grW9V`2ӥ hZ=ݴsɴ<_O'{o8Mvn"3MaAԯU>5Cڒ ;4L.Bwf͠INjk0&sǹ$[5l/}VQ{ DLhR붟y=A 1l J,^>Sd>l${ #>hU۷6NoM#aJMmD];S&\EP:W}Qo2ڭ9v# @kk50emiiht5_o%%C6:zǟƉ^KiV؈`<a[A)Q"Sݮ[_j \=EF"kJW>Wd)*-@5}e>ѐ^ 9k8M=i<(?Gzۉ6L ^2O2k˶ΌS'0Ju} ߠ}wJ>I6IIZZ+~H{_X??:lqzDgE O9V$0_ve0`^T)RB[e^adC42`c1pz`̺,j͇n璑6.Q bBRe q 7fLJ ӜnQ_ މKj:a`"OY͏'63SxCfE.ڡaaYpyIb*_,&ceON ~}(V+ NV XXObogw,al N,>co??aJ52$5AuEUIY4)dE4*=[APFQOu{ΰn9!,|#.EIb_}j5pq7c xɀSFe)]:@G=T3dolwBjG'O׌x˽rյ=[In׵U]iE60_,f1k%s[647Y4 طK?!:~Q4Hj:o^ "*U#y'B{ӏEB"*; hsJ3-Dӑ.Wa+lfz>!z օymRԂrNZl'F">ڣB?7m]8M?6AQ%YFk.!bg>tj\#S t! oz$g%Mz|CmAMV"9|&3m`]r,^ h·Y$giR3mӈ#c$X9" 5  Mp .ݸXs_y1-ZPnއ߽aݭM?sd XU0&zIZN2?1V Z$;I>wXt Zi v SS TSw>,rfAހ {kV V`H.~7cC^W7gYk{6Uhl{Zi~p0e ʿޮr^< <+mLBWzu { #Ym=89,d9 !j sWզ*ߌ#sάc'rvp*n(2Y7@H[U A\)@7O]X! lx1Lx`9B?A%ӗ!&H)sA(-OMT [Fre.$L5A-dupo~ 6{d&guMYIdp )7hӵ@wو@̿ xId²Oݞ o*N W9rhPһfH}qaț{[J izRɶRxtBYTSI]Tz2'զGD7SU-.!X7)=l:kY.[;G]v:be^&XzJwo8"u֓ tR'8'BBo>X6TQs iH&菀A'* b;UP qņ8zJW!=ka_K*ux%e-8a6dyM`jr[/֐ |H,0&}yyYӤE?Bi؆ə't_i\a@$Ӂdt"o܎QB'cdK Cȇ\M 0Mi;ʐ\̛p+Rt&Hs&!j؁w(})hͱpg.Zn[N2NcV iPSj2V" ʣ;4ZΕ9ZY 5}VW^iuKNWƅ{}R4a'OQO v;+ǻT~[D !ڴi0Ҥ?F*;_4 *G26ULR Ve lOu cl~˻?8HyX?(;9+`b'};yR%Fi夹I%yF$xLBjW&Ce-s5$ygztܞկÈh-(+E:07N 2ө#uwSvpXOԣLWZoqu5,!ʯb2=YxSC*Lr2^ԗaՁ5ů!ǫXt޽4uh0^( $l}e+@%̦4:e ʿ#?wD;Y8TuM$˼,wq&~|':4I H`: wETqVhkm>ScnXˡ,Ed}ptBV [M_GQ䒇?{D`gο:a`m6QI\#Yل0epڒLݭS4@x6BVsVrK"(͚ >XԯJ9c=1suSiFPE Կ^egޓ9J@]0G A8~Wʝ-q@z9[",d!+d ,qBOd"I&I)@]@v=h>5yDmu<'n>Դ$uE|+iM$栄hNmV0X;/'"@5Ё |0S^g@#k $ RDd.P QT|JAI@ .v|Yhi̖ RZt8 ƔǃaĽ+1IR%.L|R橏*1'z(06*mƑ$q?ШӞ^ Ŀ,4'u )ܐ-gƎ~+>K$M&N;"uXg智&Q NdM^qXb1NGiF\g|&J JH⒖,Ź'2:Kp@wQE20B$"s|]dB)C[ }AM<.\7yK!/eomۮ.RceTS\AQߕXd؃՟~OTۀ!%*GeVtfwWVx L9~og MuAP%, hd/1HO WWl:xC!}A#b,3V8[* 6ڵYpߦ'w/:P }Y!ڋD|Y"(AJFJ S:${~Pv~3nȞF`S4o0\%}]c69l}u*`Nəu VLf@s- Hj$[mn%)QzRԱHAG=n|dяdb j﾿.!%:jFjJZ&yBכxAH o 7Z aWM?E! ^C?e§ڕYLݢfM󯯋NE5 mY/QkdEUr6^6-'RMMJGˣjN s`cyZ#j?W D.EsD-߇Ϻ~L?tscѭ5uFP x?/w0`/.+T +GEJi'W-„oKRo.cێmzܵX\&y!To iB"u0'hT\aGp}jvcQGAg¢=`=BUlr,b~װ?W \۷r!5.:b.F)#:Z3i1}q9d0?c@YS v<7>|(=hbj;062f3+)ϲF&r/u1ꝇ:N7&"ZämZ#D[7Sk$*HZhZrTqd5ņD|c Ye&HV3ɥ1qtO ,,ϷnjYd>oep_H_vᄍ_@`$4c NǼ ,fa>'[]!Ucv*J84iEqB$,0ţt&F `zf{jyjm/,YMSȲ&7Aryg^Ќ =Nl0KÅ`A2*-AE Μ&:-U e~.݂0+371Q$b > O!9iJF`ưy f1nqýr v1՛5ĮsVKp Eku\+A7BGnШTplk&ÝO8J FH%qrI։gѭ#!oޞf'9pQEwaUyٚ4 ԃ>=9}-&N,kS]B?9GيnVf2d?#", v{nI,7wDʞC`K_Ħa٪ݪ@̋:!ZmYXֵq Z y[ 3i )`8u7{fT-`B!º'bF!0bL_iVEތDAιOg1SXA'͍AmRpOHh~0ͦ+%ܛÒ4kftLVڅsفI&\nA25p mw "N>Vʎb(p^@thTzZ`zfHa-'W)LX+i zK㖗2BaAe#~A+ge7}8cpDq4ՕL$!@7񗚆xtizTkΥ䃈WQx˻A:ϼiETu7v,Gq;e}qF<˛ܱc䵵,f)pTt֎6F@n TW`$nmcxX7,@y6$a)tq~Jl:KѲdh=+ QJ!" ɚWDƚ5XpUrUnGp1 Aez!kp2X v)pbDtMLك jv 8`B('sZ 01LPhu#^LUh<(2A[sM-NG` BE.vS9TZM'ybKXgaIe >)tzyUcȒcY-$=hmMذ];|{\VUw]^)θ !m*doc_⫊. ȗGz;"!:3;wC(S!& N])\a֡)#ߌGⱾ.n1 P>`n3vLJ!;D"qHx XDH{GUЎ{SβO)&IJ#( Ɲ7@?X`M!}o5]3>6 XԹhE ƣ%vVH׎r^c^VLcEģ0M˻n F:;7qtũ)Fa4"ߣyJ=^oo4&GF>j^{WBOY;>9s7 d~֫󧒠4ҵ"NǦRXHᛍ3կc\?!S ߟa.9jV^:a >\Nǩ"S6T (tP\I~dz$'v,줷Yr]lb<gj]7L }OLYE}ŚQLDi{~]C/x2΃ 1#<{H |i]''6V$/'oTe'Z9XjrmGE&^L 8$R>#{+ L@naͧ#7aP-6Q6Ȓ/3t68,)m8Uf\h64\GU];yTwfSUG{`ռrXK\;$qV&oB7{¼FZ)83a@'6|pYK[ ԗ\xLJ)6b(j5]ssBLTf8}Clc1y-Wh"h?}>{.H)ɡ I*Hr^4Ap323DX{-몏U?<#ENv 54 i'_Ez+@YU:D5܂W,jGT^8T"s$ L٢xڨ؁/caĐhݳOW B:@PR-_'BB{C\wsU E(IL!7|,d7=' .F$wqvů_hOg4_Sb?WʇuAn[kG5R_߳Z2"T׷i5I2$߻>z=]g 3h z28hc1$T5bђZ3o2/?U'Vep1qTH>T0?6Ls|:9{CujnҤ1P^%kRh\ʳ3)kE?rUh`aKh0YE: W`y@Q~LL^:~]MhhE'>ؘ3)FX1-7&ž/|s,HgЁ ᦼ1 rܺܚ";m$,'AI~l&+'q&ZߣSr!?4@zFS3 (iz h7q7Y$5X<"N>#wSM6:u"Eԙ2Hsnc :d92Q` xq? 0xq6N 5A"qS'3izΕbBZ'qa]tv|smS~kdS$ڿ.鷅0`-P7ݝy`56nkغ9sW6aYN]NRXD rC(`/w&:~SS%b+5Wd5qr\k{(_"5" YUf tӡ'G dO~>LĻl 91^DO8l ٸ-:l2_[^z`)׳5Cs$ZEW1LzG߀>])]JK%u'ܕ ?мVV_b= 42>CȒCîB6꣢'ѕ2$KS~PIL^x"y7Ȼ4DJn謥pJC7M-{ RO Z"5.$^wSJQEp"_%l@j8P kzKē'Kf~ϫMvr`R72C^d7uuآk quF l;{ +ˇF[ +ZFbV e2[UsYAxkդW8^>W4ͽ)K*x$ԏ !Cъs^x?QvJ\J$率\(!Q輲>T(ą㮸$rs-Pj$d1CzŞĉBǩޜw~{@%o*M-LbEvǰ07@{xD眳wu̖q&[MVfGDe ' -o7+aM›pS2ynTkoFwj4CxrGq1_~(*zr~ JPKٸI2:F~z h}P4$=,nQ9u9}8~/vmIԉd{N$!`JIrֳ̃ƫ"̘N"" ~0ewfcK(+Wޝ-s-.lū{=i<5;">gxiGm$qr9Q̛|R:*1+6 bdtы#L63"BkdX058ڸ۴a)>.#h.BR7ཪP;] Md2 cEA/ac-0],i:gR CELU BU O҂h#q<l*䏄#~KU[r7C SCSP8eH_)+GLZu  lWAO郠3Ljm@sj50wzߢ{~*pqBPJ Z3³/ fɲFO:ڿgEEm3H|OJ_`HvmJI<ѸpUg<̒}W}7|%l(0/Rp~r Z2`T#@w.9)]SWab7f_m|^4O y]2Kkc[na53 :pÞPyL7u}IZ"yqa;~}箷_׮sZz^{AU )p$J 'ΟTW^ bɤ` ۣtlQI<"$(CW-8uݲ~,XnsQU󟺤0y+˔t;-*rDYr> &v(_~M!N氃@ 6(ymL" Gwi_]Hj@^o[n3evDcs:̠&\9J )A ww t9vz +Y[ѰK0zPb{y &/ oqy%I#// 1]nG=Ƌ){fR,y"32kHv]kn=i=CwV)6܌ @s豖sMg'7HA}j\CIp8C Gh <߬fxVIB֓L%kjqDߑU[k??ZsexUiQ>sz=%jr73R5!좠Vz)>Z)er)o B3-ua"+WZBJ ֮hZH|<6 [:M`rƲMmGm >pGG񫬲 oVٶG{&zf{G]d\4NInI}"0l1Z @cJ5*=:wuH1,QIRTU$-QAdɻfGJ]ŠD'mDrq pC}Ŷ/d–U 29 [14Y~+ q~;$([)FB9G-iK1`b"NaM|Añ*.0c{WE g Z cs#JlɆ.e~_Ы`*_È9v vG*;Bw p%Zf\$Te%Im7@+ 6qj%K(Bߐ98Q @il 'B oR VtKrb;ਣk!&rՅYE=S9]Vp]p7)L>,S!_r)OLAXɯ:N5b)A9j'4/R`*M5*+6BڞW]K˪~~?:яHC}",iguS3Zrr=PGg'E}iL~r(u"赒[]ЗdZ9[B! P#Kf_X>Q$(:/";SJ#,<#NIg;vtϳ'YYѴ\4*:'N[p Q|LӚl.̾6j׬&/354BgpCM2( d4kK[mTcYa@4b<}zc{@9GJmTS)#^33M:ɕ"xt.zFLlCMj<*cI /z~H>㝚GN 3,ZN[i܁ Hpv[܌TB<:uIG!SI7xht8ӣK>bdcyj]J`za\\.AU|3Vl/Jޛl2ɯy9Zmyк($[j:f;g7#I9wp o׷$!V # g!ՙzQA]Nkjռ42U;%3okf(BQ9[~~=8]^?I*5%VŔfO7 9h~N |r$66 (])z5 G8>-> uB=v  CÉ<;>'FYGM4߅`mח8J] d}X.̸F9 ?5K v $:ӈjm?=kRgWB;Z.$8u=LM_gsAn+(]p3Ed=%:ZNG$-}ϓᶿ,܇Zr'QFސP؄ 1ݲk&nFڛW7бXL^׭QTT` kάҍ<>~R:NzCxա}{2;M 7s&y}-|K?imLLo3 sK1Ȱ/bD11c&˘IVգ@e㪻gBrSIR8AB̙ظy=<7H(g<\=4EbyJ rs-yx0`qp~^+%Ųؘ̏. Jw#D9Ҿ9;5 y2"JCv@k Iڬ0ǘۥi⣘uqub `G崘ٰ} v*+N=2{nq/ }r-DnyM{s-fO=k$V?`Ŵ~w*v&ŢP` HQy\ xiUM2'V,ҡk(7 y9 |> _`wr>e:"%WwM2 xbrV+ui xN> 7m ]Q9Z~dfݬDLD+%?ǔSp "&V8Ѱ Q.vGӹT,oC5I gnXGwR֨ro \S%dw2\XRakMw3%F ;ԗ[ytO7[K[xL(,B>%%MYC/>kV=-`=`3Wlqn4D&is@ OQ-ABq\͒ɉʯe״/"VK5rh}R1ygje74 fds5sm97(׮>evj݂srԭj=i7y^Zy"QP58N%N: JM6XDS:UJ'jhO${ n3f9D% ,D嵣I&Kt@p(bI! sskK; v Wn:WTot۶ Ydg @I!jjalaaBZ*hՔl؟Ep X.;JO&=YTܯwys' Cb+Nh1+ilmv} \".{v:.9 Ν1`ijޟ@`rM蘒#7 ~xbͲ'"F>DL |_n(L|lX GB=2صM31u?( 0sOB05<lyoJ8äyۣ@yF)V6?s,K&I~s2ڝxDA:7䀸uhq+HI "yt!xce7"@S4S!XNړJ6UތJjlE<WEi_d"Evr{Np7w *4R{k 4%lдh>@xhpL-iRd\гu@h;\6njᗊj:GC.9-+(Vԣf\6ŭ\إW3# 1U51M~t%y7xF+<(U)q"ԥڕ1quKRފA>̤/p-=&{ Tm`.j,¤P/Ⱦ9O%Ҳqi+0tMNH1^pHu˥VqO[ƈ㾣8Xw|=s&MS|C rA+Mi(OV@B%٬sl̆Ǩ3~$r p"g~@G.9@Z}?TIgEf#uyL^vXa\&[&ȲwwY̾nhS\ʯVzBY-hdo4#5eM/QSWWTYjK`r`w&P$1]7CGJOai5w3+*^#|א1{ESis#o N]h?%Hwm"U-KEuF1{X~{fws\ }#1fr5vE6fd˳a0n,ֱdC l=XR8DhUScnDiEz("Pc=t76|EVyH_@wW 6"z ZCFn$|Pf Fp|{dKlVHT%ɿK2[zCvLT R?zEl_>+o/bGKc}TgV`J4su;j!Z¡OT?sSR='؄4e~.ƽѤCִדk8چ|O}&dşymmN(ْfa]5xJKK 2Saff/ # V:p6 ވdՖTszGWI]oR. )A|muUleOjƲ&~i 8cдDz|.zl)_%% -p28]L[h]tG$e7`1 hžhhq]ʢN+8.x"ofƈ$~4mY-h=Z x_JHhݮos{D[OE$(بA _JQ-Lu]3@1dL3X[?ɼM";֦V4W-:0͘#R)<Rf񿔓6z(dpkx踅`g/bYZʟE9G>yPv6c|DՍ^҄'\RE.+&YЬg.a$]exG57$+e mƱġh|ҭ A*iP)/՗l d1?tclޏKI؍p6,_SU2@}Y]y5qW. #gul  q+!% {ho+ ~Z ѣ!&DŽD1 31JO[ow*w<:8@7[@`yrHT ]QN8ˌI66-CEe2݆ꨢal ijjHJ%W"GOenIɡKJiHi9A4wk>fmGq" U@JP\&`'vs|*9p%STHTp!X\Ds[=yLi+&[qȏ>2k A.ەW(]D}*Ү}?.<:=[F^l6 [H=q@mO&Q9T a8U@c4%)my..˵݇*/T&k iˉa\g s.HǺÍp5'CLD&]2 x'KEY?pռ['ОN_vֺHF eUTծn POыU!u.f(N iʃ;^̩=2WܮT $Xz @S9>)v@ 2FOS\تF6?6K%c`w~HzRg@]TS"4wG区{cȌq`E.WĔTyҔӲ'%G9@)헖ԟ Y2 ?o!2SSܧ7yʞ5bLCcHk)}wG핵'{|݄eZjH uL.n'q*Ti(R aQ͡$^^Qi2ւ*ܯ%19RUßDoziXhN)ϭ՘^u'hZ YZգ w|ׇ ѮU9,5W&;,-.fs'Oɞ߇E68i"0fȰTHjZ90xTc̣)hWcjF3B:$cc^_)a\(nf[ۧT0mUx_PjRJgä}þ252=m6 p =o[v"IZs}^L0X 'Yf_{LAmNyk(MrJ(UC%mfP<d?P9&- y^l)j x>͕݃ bHcIQdcGA*ڜ Q&EpY8B 6³h=a+v2 'JTxIo! ?dM6dт2XZ7{}i(ǽlFʦ[LzM5b$g; fwgd o R@g/+#U.EBmsLp48IfN䱨xb7;RUTb>qjasQHP+i['o%g}+GӾ:8Dd #2u+;?j0q%n |eΏ@j@lNGlL^-R҂I>ȷQ'\gu]LV(؜1Q&EN(#ZR W~O7qL3Ja)?z1U q(QRkY|.$ዝSn3SLw}r"5@ٮֆ(k@2, d`ܒEBFdkDA?^'Es S'jau)rk폐FZVR<3|zK۹jZP&Ɠ,#a>?,B X뙄3ɾ,dABXYyS˺qfD :c&B-ťv63w;SD {X$dә0)RjhCJ<ɮ\NvA3C|pEyl#Xv߄5c#u}$`Ma/ ,Vԋ+ts(l vA#f2ǑVCe}zIgR.Gv묐IVCscI ^ɓ8:ՅkuG1Y`e&?5;ƍ aԳe)?R>}ѸWUoQ&-Dԉl\v#~c\{5 CIo qx|#U, k]T9}xCPw;˪gאĴh{~ˢ`xyĐFֺ6X4]F9(|~hvǟ81pY奡㎐t/݉G=g:ʽ{kY KvE8 Tx[6ZsBA<;yp-@q;AI:Ƣf Ξ_RٯmA<g -rԥF9@Sb41w(jqsL24*!,s~k ٵyIYf zUA0Fvk'"ƑW! ٗ2 "i5iBFu3=hs*(ӈ%hG ?57M >H ̰і/O$uLL`LT@A|M`xvdi&p:΃gK!hCTn_<='fL`٫J} R*l$e X#rݭzԇ#9lO^OX+7_.Gz ?MG55ש4_ q-PS:l$ D4kăԗi&Q3Csn7U ^`C͆C'5`b_ !\'7SUXJ"j TV{70nuoȅL:Ht1%X =vZ;Mk;A{,(i@eޗ et +sCd~ѵ^HS:g^.%4)]VD(ʩ[$p(ew˖pH;ءZ4k fu_ksEojpN@~%nD^^{X^L^aif$hK4 _D6.Z!gD#kCь;+-*.]t3-/2f4q-ȤP`8PtZѾjuO _z.qkgçpyDͺЩ!ʇe? 0僱sR|ThWGl ~F&\h?CE=N`ɗ+TC[¹CУ~JRMvBo*z4ſsfgJ //>>ЫA\]tq'dWA)[bR,yMaZ2UH=_.aFClP /רҖZ|RCZp:HIQm#C-T #6-tqR  ͵74s]30X\lJ>shm*=G&6l&qmc԰ZcT< ѧ- hlý꣼]o8+[h/}'.;?kiS`~y{qû=6 δ2P{¿J2d5sM0OX4EqsM&B4s%)#dh:q'R/3*} #YG+6pw5.t6ȹIVz=ip==6 h4ŵfv[.0_??AgNp+WnkIs6 .lja.6Xcl]ez@{KL@_tS9`׹?w2,5cRdn䡈BD_ †0z208Ne]@pG[fb$"(&ZB癞Zst'#qjVʽh&9N^ߏ2vߋ+^IjoZ:F&=;?P49s&5:%lDi^dSҸ"[!Bv}Y~` K =|:3ݕvkBDקRKIjS-/_(@qadOhF0A++X̼3e}h@B~> `ˆ =hnY7̑ÒKx8YQbct$45F;YkCJWaYk44~ ?# rt'gR%O]&ߛhkǕbWSjB^J0_ K =vU{|&%.ܗGP 4ѧ13߲u440 xBr,B׀z>AV$AuM_N*|חwAOlnOj.g &gzaoY|eqQ jF 7xx@=a([)YGi)?(K!27Dg6.V,܎oǦT#^X BAZS1"4pʨRv9y xh M}yP-_e@A@&mI0pw"F_tl3NW΢`yzuܗKw{(e/}2KOp-^@@ BbRϐmd}tߦ:1F]jhؠԿ.)ho[|o(s AQT E~JF ǯ{-W ^>{i]V1W4g9.TaP}kdaI!YӹC}tȒyxG&,k;){c%pVqy4V=\NeƊ:` "kLM Gqgi6}>mQnT$uAwAP6:@ YGny)eUuNM>ӭ,Ӡ,Hs/(:=iG+p3G.$^Q\12~G0 u%.H%lzuT~s|8-QYwDMo^8= bFC8 ԕ4oyrEfY•Td6p(UsYtg&.;Ʌ;T걇!J(w..U Rl.(vig[a~&"&ޓd,k&9#HW~F檑z"6\}n"`?0FSHJWAkJ-п2es~_?Mek8/&:w,kd]ƒIt ktФ8>S>hL[TFbmG,?W vc3䑯n C  g"+ 7#Aٯ,υ]E͊6+hdXQ/";7h|!]a}RSϧ/e Ĕvir/{𝰼3q9Bspt؀&s9\҉M<=`퉚S~߮]aOxOGsh_H); A%d"fNe}x*0TmT6霫2L۩7b:cAcPxnV),PNOageiQ%〲ߔ#U~e,%*1x =Vb*};I0C:m*xd9WuAܽk`ĺjgڿh~gC's7wǶ aC9ɳf`%2{3zz3;XNSK¾Cd(:8<0?e&ǽL5mѬpQt OE|CJq0-F_,ZԈ0;.Yj&E=mW-HyizAι_H<d=NZ(viƼO8#FH7ciqB{>rZ9 sT4.N( mOqgTI/=ʢ>4 G|J$k4Gp(T`_d0Jdk tXFp`(RV:"#Xj}޵(5igՌ^cM@d0Y}}} ` %\Lߋ8łO)(ب'5"y  A zX ?Z?J68`ys3Gai۶I*Aз^5P~k: [D?:츎5÷Uimxɋr~ s%0>- uP*ꯝYV膮R8P8=/[{b =C ,\5nj4s/5RM :I*qQ6n͌u*Abþ~qðSW]3)fyNdw<`vy}1H'#k G4Ph(Mefe83ږ9ʦ_y谯mA; ι p~N ,C%QF'#[y2p3ͣUCeb9{xS 6 jH|ZiǬUq)n5h_fPɜ1Xn0Ӑ;M9@A 9?Cۿ/貐|&r}x/SR򒠘u?qOƸI"}%> '*:@3R jt%Q?.y! DV|.AV[UV3ahȡDiF,wkId@q5 ehL&2Z!9Ѵjgڭ/H XI0'`|j;@tѤADJC"0Wz\¥CbU.י:ӄւF?_ H=!w-' L)J$5Q^nug2{,ted7cM"R46@W-Iފ1z2x:CkZ^'a/"޵=HX gw׸Gfkz;Iը"zj`.\Fg Ba*~q{O9V4gj}cZY|.#&, LEV55u`:]S,j7Pȝd-jvISy٬qTWSʧ"g[4OaS:O/+ g XӾUdk5"Ֆ u BD)CRr?FaEmfH 6e9'z|EjS$,&eT좀o 4ik4vؕU_a]LLFz:S_!O+ܮ3u_TqGj>o#'2:NAҤi>b q/33B?DOМ⿑`1f:^9VO=&tX9v N#oCXn6.&9.l]lF`64g bIPLELkd>X!RRmj II y=rj8B?Ois 9quZMǷ49$N;>dn&{T}'+ %ͨ$s,c9֮, `Kܐ=<3(=.7q2OM; (|w.+78uy)t\3n*}bzlW}]ֲbɏ!I#z|9?uaqZ; }Q2[aAX/1s΋0I^8Ycr_m0b+72qXEǙ){A'l bT?F'|%Ҋi^ˆOMAr,N@N0r)䞪84s? 5;-A/jn[Gk@tizQ+Yv1> 674[&} f<Wvkb0K犂9k؜ C8:B®dDbO5FO8ĿH )Ԓ7'v`#)ujϏFOA bN_bZKKh# {Քz1y$r$ R*gq&M9?+z[sFu2?M0(\ 7!m H(L.BH WΊLST~o2+\a y 퓤 pdZjC쿔T{ұ^Rбm5.V.}[Dokg Ϳi7AZ+֊ H'f@* )IwD N! eg;{] xFJY:jJWJ5>ZBRkwQ˱67&ED,HXR"4)GZNx>ئy@̮褍%c(67dE|S;2bT-N)'^d'["yG8XЬ3P[#lDRW)RHmG"F'^@L$̢8C&*K$X3/s3efJ4|=Q .D4]SZ ?oC)ԧNW@7^7ӟƤPȾaP,Y(b̨ĥݰYΛhpS"/(Ukvnu_cEݫ֛1BIs?C_:8ˮ;gc:rWԜhvKGQ~T t8sO*]Z od>(' CFR-VԶ=c_mEnp:O>y)QjMf/k٫~/A&xrzg;ua#b.W8!Q|,XXIimzj 4 \9KIf9GRSQ?980 Yf#ij588*VƤS.R c3oN(ASI:ʵש0՞p [%ZV+8Ilr ݺKT?6:ӱ0j%r{G) -j&hMk}%J)іVy]X/3Wc fqYp2H1k~X 䆇tY5ˣC;K61_#)W/Q@un8uIM6w{ r0XbGϱL1Qtbyck4 _K=.cJWA⇢9~)(hB0#.ScS}r!ZChz]tv'c4B S_O󑬇FG /1^ao.O\sTb̦^u%pț;wϓ}-ZǙքpZ,YoS *x=_>O)ϫiU n5rDeX(=Kx YUA.96k61֪JS݂FNeo) 4P:bi̍ 2 ;[X\ǻx Hv\ꊔ6Tpi6,ۭ ^S8]|ZZ)NP4UYҎ<;0ޭ3|DedenN‹йvl6d@ LmJ#g^u-2 tR1 O0B-nKT.7t^)otuONʍ.h%6ѷ">LJ8/DĆW MFoĕ׬ prB GOnXCS%%ǩvfI%j!~~}Ȩb^- 4֮m jN sQgt:j6 p"7I1$sU*# W:٫+:||>(C\*q]`,2_ btl٥hws\Ela4q);ݮó[B\yIqև5ydU~ulEZ/nct# c[uȣA%MVh7qmTi{,A'ٱiXh '27LNJzOHSNV3 㞏TK6p $x @WOHP?R`:2ر͘|pvswBVCcCzYB,Zf8}qAMwo9 ^0 tu!>NUhɭaR<|4$OÂ) aJK[ћ #):ƴdDdA.{BJLY:xû 0.e\e@ 3>(+{#R J\}IaWgXJ6K zr5h m=/l co lAWs9 ¹KvkpDz172)%JkKc~{&wt,p嶴dɦ~)䮗 E8-zs|1Ba,wxtwJ@)tnԍ]!W̓4./N8@[\F8P{w,Qr=pHXBo?1ldvD&; {_uT̒-\<]NJ7=S9䔛&ci}8q(ALng9bt0'0!kT^^+ մ5!!mw;/1CHo=]uwt&5OZ{ POZlJVA$-Nhc|Ne'jIoC B2oPJW>WiZA>2bVz8lG k tAtnhPFD&IVqKU4i~h ѱK|}WaSV);sesd^iQވXw:y_'T)>uK 1$P*R,N@ƤR HFT/$aEĭIny4 (as}L} @:̼F/goA$ J 9|Y:Ld0[ }  ٗ8!YB`>ϿQSFl?*GV"0#iR5=rGX-P *$,!k2?.3ޏ\֛HUy?Ǧ~4xW W_<,Cr OJPo[f&~粡ȗD2K=h4Ѽ?W0B v1ძDda8ҷ>6u] _3U@?#< x:}5ыu0<3 \2 \].B΀㫴#u JOɮn }fv4α-GG?,PDGB3'~]Wd(tCJ 'z ~iZl#rnBS3s(M24kҔO *]tI^힝a] Gf4MVY\B$9uUHQ h#!ӗtOߢ"#ROHΌObgg=^}qap;+єm9hEIm)zվ*|tQgfj#,ۃPߛA}X&r1 j R 0+h&d(ۋbnBjѤn_ (s#dؗ-]A @`~PE]Ȓۨtو|6F4o>tCZb}BV@H,<"t'kKS|,^+~7,D"Ӑ3kLBg.ΟH f,uYF!x82s8V4=T9)b.ps5f^ƈ@:8l?a{6QPTČB;w AqlK3JEꏏט<7wfq ҩr6$!!@J{I pmz K}w;,D=*SAүZ}̍/VHyP"m.S;_J2F1l  z||^eg}t| ?Ʒ˱s1%!CGJ ׺Z|JWЇ|n6J, !gJ!Í``d m,.J"ρQ{ၹt4v(&N/v.UrF* YSBθZp%c)yzM|KњLwZOgRrZhL(vak(R^7?TAoECTKf#ˉC}Ox_ tN:gZ4}o*u X_[Pyd8}bt*M»~[kxp$~u!!rqCC ,6V,$OT,-+ d(c2דdڬWVRρ\׮B$ c#r}pd~#楂DYCtq?\h,XJXưtHC ̭h&:$"fv_2y+^=m]zϹP+}Z+0pDv@H ƹ,^}S;EÕQ.'F %X>TwN[tVRpq?HzZ)WD[N*oZ=G_XX>Bt]$$GӟH8em~R4h-,L9=za! N l4@-{YP(pk`pVlrF^꿁w(8)q=NmCYjf0Γ+m6^p!"& ƨL#vQJN)vX1#Fk.Y}2D̍s])m\T]QgNYWyEեi.FB֝{R(Z1yƯ>qD5'h6) OwnB]"ver))_4FĿp֬`QCo#?i.m%O9 pRP~:d6%g+7n# ~ aW$BF_$2rk:IQ<;5hnr)Aˣսź=X/S 9rW+%9D*\%`A@ p?O/tH{O!|2Gx59+4`(_d]y= %sC /*zlUw"3DZHIy;AK;Z0VOٲZVE T(82GQ"Fԡ\ρ,Pl(TE/X롄'f:G=YX߶Zd(3+Tcrs&ӦHބTag7,!fX~-5A:vdܲ' d tR+ص\5;Nڐ~:WKM`=omo䅚ү2@"oҴ=Ž@|uxRi]N\n 1fV5:em qSyeD qOcg<ͅ؛qRNy Bd5gk׀Q׮u'Hf K"cl.X+"]m+f1 ޴.~ZO+&fs Y|w@2[IQ%p]2&1#H#!g+ ֙gst{j]TYT<6#g^F7_<==j2Sc6{ Qg!Fï }4_ժٛK̚ ݐ7YB^~kLB$Ӓ!20cuZɒo ?bׁUhUmUs},l]ܱ pUfCE"siT<ޡpӷPғs#1F r0.崌ǽdQG!ݧ=#4m*zrDUHuIaRa;ʫgM )W<`$%6M PZ<-U)XWs6N(b44Mn73LmCNO2'lƔebCSZ}tQj2t<4k.G݆iE~2fEP|{^q:P ^wcAĀFPl=p0JЪZOi ?݆y`;B@QJa"@ܓc7exoRыO5xXmƌȦvq/;xox5!+y>|0Or1a~{;mԉ6f(fgsO_bѯ%U1}"?߬b5$C닀5<,n 4;.쳓:cm 23lC~w]FE/HbȚ bWc Ǐgkٰ4_f`mr5^%|gvY[ &UNPrffojͶx!țDթf5/O^Q.s#=?kWU7g8׈;1eQ&)1^3Tbg@Vy=Fm7:tzns{}wUO`kzKNWvێPύB9ĸ_S ' U%_#QGJ5ꩤŐqT=Ar^-v@_pl9šɚ%P?RO4NvB~S^ hR_hb[_.Z®xO5&Zc,8fzQ΅Mi eb|8e7TnN-(j͙քiIcL?o^ ;[WDmw5$%PiEލi)zp4t"i,V6|SubTw f $D _(82eZk`}-1.1QB=qуfs̰=&P._'/5,ʼYՅ?\c“ssz2q6Ș q W9cJU +p|iI(nmQ! \;ÖSD\)o{nro~߾H2iVP_5ܝHvxz,kzLBKˣ`MWV>Ņί KQ|͔ Wb$|$Ę:<=iWz"PRaIȷԔ K6QbŠ_Grv@lYd蟛im%i.'H:>Y<RBU~Mf;X,лE hL|X w_홏Z]$L!YB0 $|RxH`Ҋ3Ez^ $iUTud)-qs;3+6Je?}pҺ}8xM1;ez(Rcu\Eѫ'5uF؛z7TeBCZk_YGwb{ \Y/yppGZ4A?l}XV3ع7vO!jڴ&,h>W6p9QD{^a>/\EúR5zZngJ&iC|s߀T D8 }bՑ,uUk2P9rcڌq,3 7P~wfz!_,LW8Ӌe[s ؈{:%lrsӗ2 xš;70w:MDU[#>"ie) (Vӛ&i_|J8~ φ4㠫%u\Vx]ň9Y$ٚ"v!'}x<*LΜx|h$NK_oPMs{0iG_ñ>}\cz^^]|iJexGⱶv:1 ><7Xo3U!ӿ˯NݱV0.Yrm04KQ ]fr^˥ᴕc:2ݿ˦i'#?ϡۓ,ދs5NR2] 0o *sr~;y6ᵲI_h Fu AE1*e\u&!f?D~Path}߀#6M,&[Ee 4Kq~1$qeL3Vtxڬ=9'5A{V#z/7&%#fmuh,-XP[@ |O,f[(Cl$/&9y1]2aZ$5Db6+o u% _i1%MJ/\F#QpÒǪ4QG æ2R2Ta&`_4:$ڊ1^19#I&(Y.f< q|'%홵dHk8"*Νt= }I4~05}Cb0*8 ay0yt9ТU<%lKGipPRRiզt%|'Is?$fih3[--Jvr,A|&ݑ-v$Й<N3W\qPƳ ~Ox6<y¶42o<6{CN %|Op;Oň)Ip>G%xc|O4y)Ǥ%e΅C,0ԼZEWUgD )7eqa[xbK۪^_xH %nh8NTqoK7nU_ѩ:lM>by`6sI6$ Gi|zT||I!Zzrq]VsYDb웱Vܰ"%Nva2=71bZ)[뜱;sҺ2re9߇Jke zlGan3aG L̐m}G>8K Cʝ}8)-cuR<\.z&Igْ<&?7Wp jk rI<mayHRmւyoqee6rd7Ҕ'Rdu:W ʰ" BdjVhžalɍQ~QdNo\aK:}Np^IKVvdΩ\{^p?h> ,Tf u6m%򅪨xFaUV(AjHH !9T1FB2v!9gW4sav$WUe ۺ/\4g&`Ƿ*L$u~zȐ.n㜽B`@ 9ݟTNc fyګXT'1%^O[KS:{<}(Oh!ϻ1ƒt84&ǫrI dJy='Xn*.ꚼ(ÁY,ganZϾ}iDstoGSCH랅7|vW1;-YΒ^`ЀL9'#B5K9npo9NMVmgm-xu><֑J#k d Angٵ)WfGY rv)>+<;5@ x:E4KsrYLv3m{:Rqf&Ii-f@KA>)NZ&{<WGR@տ{A,w4/  [jL S? fy/O5dԇ&Pd5(ƹ{bSp8"iH.j\! hGKvt(*7^Jq]CAwsS imeqV m)q`&^_@.'݅$96Fr}5u$Ʊ(w}FCɣ+ x F)>HVو 5 vT* 3Lb\$l_ψ8fKCB\NŚWnŐAB1'zv$=wzt.ؖr;aw\MG{#%PxG P}D#;}xﬓk;.c-. d/(/ Qa=AF)_Rs'E! n_P(BJNBmH^ny!I'4/J}(}rl]5^ zAXߥbI]7.$!R4l#IjK7]>Ff#ZpGאkVډЫTm 0Csw=_T 7ĐS!"$7A΋#O# ~rbWǸȓ=U~b$q$$Aց٪Yu^Y}jNũn; PQS'lz}QLxJ'DdhWGbI?]&'|8KH2Vx6nzZn XlGXߚzء~,ԻLgEL٘@u˲'"Qt;]Gn%P/nc80?v*2W_$^n8?«c,8 5?l#nnU\D*C4J)N'Mc=<1ᅚ6]CzpـEv%^z^_m_V@Aԁᚊ D7jN XN~'k1,^<Ni!.YXssHq:qfںx#Kr@2BEp`bcD&V r 7t=.wOu~50xt$ !pN|S1SriWNzߡ=`k4{L4vid7B#|73_1ЕmS[eZ^i%=ԂLxpLeݩv=h v/r9TVLmn;&Գ{];`^FI` FHta%xP9z* yd c(_A lUynrRL\a·ztbt>qӰ!pߛA^\>ƃnDl}I W ,b^AkAS<ӖS-ug*l-6օ\Iߘ~g`/A?8sBQc˨R/ BD_ '('I"ώ!EjyLT;DA(y6A7=1O-@Sstx]o%U iJ#%/=G)}jcb9ܹ7Z;$`tU }BKUEQҋPVisf74D'|*Hq r5vdt +.윀u9ǻ[dHIly}߰`%4&~O/#*;w C핰 T>PA%=Gk۹nhT6 L38RkUY9/ o6KDӴM% K8@gzTgm( F!SU(0Sm^7iqCy9ӥgxqWC ;U4W魜h3qʚ MrY/% qq ͟CZ ZsJ֩&8*KOjfb'0PF"-" `#3N0,֬Z!MV-2Akʎq(rI_žkN} :z yH֨/(!''Ta.ȿGwԾojL)=%cur.Qn'dzP a}tqO_8R6øƝ7icў%qr/k t!V:.޽.%\I!NU a"%BN )ű%<1[Jd8K[6-Љ羵Sǿhmւ8CR ].8 A |`=eLx 0`.#x&䕘HrZ.~VSʮV+:c`*;" mo @ʞAC@u(.(sJ1~>S83o@^f굄aI S23R0rtWz ѸS :m,\$dU@g cٝ/1Q)g`q $I|= 5XnU.g*pgN5&CH- VQ|_t;8EiL[Ns qI(;_N`x+vi$l{s47ȸWrX~k)=n D3}ɳ'% po4*sürZHFUy+[O66ฑ'p<1O/d&6ѶMtjWV|NW3A\b($yT|KHDΰ__*s^5C' -BV*4, oʺ>׈:% F?- 3J9məu7j*yW;u"/O8DɄZxHeIM :Ukǎ3+_zm36zµGrxs,.qtK+(ET|y :{h [&Um3tJo\BM63oOΪ3;(x^|lzD=%QӅb+R=Iqf!wV،EV08v7jںctsl}\qe&uʟ&`3}#t,ݵlA#VtSa:SpuaD]aC3_3[ݝ u$g%H!7tEh?U wAiޠg(+h62?iD8F7sI}B_:U#@5ـSpT*?$pL= ~/^Anƫܓ~H͒ #=~Vf߫=Tюf̢lx%w(%sBݗHB_Re;$ bq.F۔1|~x;ש)HЅJ'гՅ7mvQbW)b6! _7ԅj2P]J}6ȉ`n?cDUack8-!YBYЋjo aiYBЎ LLy8:KFKA5"~{Gx1j" g5w5;с7 @^+OK_b;w0]<%o<2nmKyr sE}?5z}2w>RS1pj1?Եasnj#9`6Gߚ~. %O#v|ծt _~ d~'B$ !.U}:b0Կm>A %#[LXa  ֟zȝ! pCY$ d[P8'y(2EF!VMͅl̖Ѵ$s΀@FlAsP 7I7"Rz"}5gEit"B4:_C;ۍ mzA|SH\fd-%|NKWVj~PwV3Y`bdڡU|Auw;W #8uMu c@O`S1qk O VgM RiysRkCu6fpJ^q?.^Be-L#J7 >&fn0 9ڤ-D`E::gT9,{ }arl%#tSh9㖄X go7hh #=Μ$hܽW:}@Ͻ/⦖{(O=hdt%>2]MNW.踎J>F S2Dci23D2@̄=Yw&r|P*f]zb |d'?l>`(:UK69/~_ z}W1 w2GO各23QvKqtPHy`zH7ZL{pn{'qΦɶUcDJ\V~%]B4:ܕȣTjHns)0g2 [OJ FLIH2>q'B/kz]6gxp0*[=xFB,ΈLϥbRo=oV8n7i.E6~zj@Gd,-nKe+ $~}{_I(ݟ5^8V#,X'ij$jknQ'y8!b&m _oBӏp.W ?# ¬A>G.ãK^t#JWӘ|ֹުo;`b^a)BZ*7t-Q[gZx>4M VCxHbA yP4O.IEH',^;^Wb@9ub_80&޵uiBKr+~R"xAYG㻜3cZ*%MZA20!.p>xR;i)b.\67KIʚ,FT%ɢ;!\|!u0;YfNP2[@n^:7:Zwh+B%֋2 эpk[Ue?fWtB咅6)v%V]hY2 4Us${*3|xu-իgĠ wTX#0ZP_(Ogwa.8ߍևɕm*ҥОJv%;$һo\V'cY}l3gmW=#e^DZ_@3o=!##!Vy2jC`BS{Myx?9*)a,2v,[mʢTZ<gO'Ɯ2ɼqU ^t^|aڗ戴$)={ wr*i"sJFqzlyYaC4bh_ښD+_NQ*j^pͫmTS ءNZ5@yä+q{sW[}w55->mg1~LM[W$5+B=8fxp|!ðl] BK~ ` _Ӏi.G߆Fv&fP90. ?W^MB ^wIGc93,*-{\pq|x=z5oFwvb&}оߜ:uv`fYY&ƿ.sb߮8e:3,0i͆Ma"{V=;|h[Drw*D6gOE 04/xգ?AMxV>}1+*g lՔ m6(rO/k<"磕 c I *W( m&9{|"6=o ^Uq\фBGՐ^兀r 멞~Z/gB(oV}C|/ʻ'V+XD7}[)d[G m=1 ^J؄h[h3F /eo"Ѥ!#83radY$WҜM}J,:4+Wش laR 3\W*W܆&\-n1_vhS]`.9r}|^OBQT5$`nI{:0Y5Iˈ1K> qz [O7ᇇQ1fƇge țJ)b*H }d|JgR㧪i2p{GD^ ߥ]Y9x6|6bMEG#ܟ#;\Av{tu? co7T ys;&"Xa*u0Z@6^rlHA(p1& LZH614/P:{ڽW[f 6V|]i&h]Ԉ33 !2ڝb<(*ܼ=4dYuΉ~͟q>"br1u<&Qux8[Ro<uCͤ鴕 sU q%HQN-buf19vݤ [|.qy<0U5a-qحI|/ JfW^Ō^ A HITrm1]N?됍~K䊯!D|W=z!(\#'YSTg1c;hP8C<c(wfNֲg^%bO]]hC!& .4a\3*ߤ39 5M/_J#E3B `T ݙ"7a< ('ޅxw#^fB'B_ wM8]fCЈYӀ(݉FGv&$5\H6D>FCLӹ'w}=z kAa߽D~pnU.4t!`s<F2QZYVNBV_XN;N}3 gƎ 03M}vum1ЀE2#;7"|ZA ̑NAR( . ^ j\Ov&1p37 d'jᕏHBk1JQ!+ꇴ,PY.fZE5_ps hNnqcLç])ՅPSăų~ogNzo@qM)׉}MȨVdsw;aoMBk{tU8ffHm2V k|Ou>78V=GsZ^3J73F7iQNE ge^Tx h~_KpX04|UVlhL 5u͔XDjdv?TL\o+՚zo<*+𳠡綻]!ɳt dIӌ!@&;T$THbn9,Q=+aI #ZA9<5D֯=q"~@U F5G .e7LqK w^BRևU_%n5(8(INjܽ[8OE٩W𐍦=<ˋCWE ۜRN*D-!Vvڢ3$ ]}Py<>:'fID!Nϣ!CWd]v>C'< rv%6yEs*ʆg-hHAf [锏f|5^fSBA1 |>zL5c"ѐg<5e<WUW&ܓg%)l4k~A8}'o\Uhw8XCFKT}UIB; 4XeLMKQ?Ձ]vget]`6t^D]nA>D_R4h1/| P_{dUY'nV72Z]ChJN\]BМߜ>=;5J+MHz:ձ,so\t~ Gcpk)ʖ" U}~lge _>cJlVVS}Cc#!ၱ"IL$kSQkg3W?}WJr-L.{mӋh7mPQxNh3}-93} Zr^5-sjZ| /I/듂,{n0kаyΓmĤJ ׁFhXS~șg%,=Nr4P6隫n` &EPP?!\rw%Qz:T3^E#) >!v*X4+n `?m&VUw~.);La|A/.|,gf[t0pm׺*P7p߫wf|+֌/^7|&Co0l-jK3][J8+^+:'Rz$^6cvqW? 7UgAPN oD56u;9jF}r+$t|Ժ>ʒ?ԌH`ʞt-׳IlK#LN}D[N>}e :EML6Q fˋ<% h=0j>(!286,&z^U+sn%+ $ a?z]M4V^5`*ϫL i/A9zkk)CF_& UEr*8 !i:+C%$g̥L\ozZSD=_%80f)ˢOtoLtwJxn{@⬿H%T5$ mck7# 8w{Qzoha]|îaX7YNtרkbc"=8?ӕL4 xECR?tXyڌ᳋h܏,|m ҽkltӾJ+?J{3綦nSGF,:[.u?V5$pUACUTZC#[wql{WCaR"ֺ Ǽq FWKPSx N6]8"I^_'=8,n8+='14}Yt34; `_fI R}S{5dzqf٠`!^d\$h5aO3Ķ.,RMOK8 3lX^U~U9цۣ)ȋb6dsw/ !K1NZo"`r,q%.RO 0O3ZhXot;ʕfSajr?u)헢00džooBwH4y, Q?GQ)8[ &0GW//3ϼ/O^lHJzzMˬuC_OaGɯ6V ~A?nXn`E xxo8wIP֫FEm*?/6f% iqnK9;t.B=W$ |6N#`4!Ҽwg Fdf&{Iҡ<(É@llr-N̉u)MUEA<1Ǽ ‰iYvo]sݝ o@=F0Z^g쁃\guB1nxˢqU*q qtuwryB{tALHL˹Dq0h,V(ij]b1X :\ƹK'܁Œm](2w6il-M$Ie@=`gIw(l冯*a%r++b:ךlU̪e(@B^`T^8#W|N5Q p HN}ޘDvQ1c^8ey.U[ y/RS% d ٨Y|;2d>fz0}k;q c 4#G%סr *C&F V$ExH9"=5Ї3L>44iKRTX]'udfa ♱YydN3X'M<]ۤ$ Fo'JOcqm(ϊI"p$2r3t|E;C^.^ `l],XּbHaS1#:RI2;Pٵ.A jIxpzANyz}3?η?O*9_ TC̓? RLuCiQ3NRwh沔ojj9M δr>P۩~kKwG Y>ؾH4I!o,6+O}\hC& AZgz}fzFEP:Vب<`&JB݊q=Q>A sD~;@lB߳0DM|/"&F?9D`ƚbM`l=Yf^N> KtFbF+-fbCþzǖ-ן4i")!:K$t'Ѫ\.uYH#mG6Z^?inƦ j^$i-=H.>eeGc] @wXYȺv V殑w I %U-6}2#;#DBk ŋ.tCs8U;؉6q!oJzDt9L`ǁ6##ac?vu'zL#=pz5al/ž^B ?B!򰮭qܓ.pܴz7Ba4v*,i. M3ӇOjͻ\~zI}?1};9:T"7NN%[\7g*E7!V8kkj2M+ Wo*XeLSb(Z8O9=f0n8Mpf3ɮ%p] 0gt2ިy5./3a&5$? ٫+3E7lG |D)I憯&~ l6q4ypȿ@MO yX #,w6^Ƚɻ_$,O-Ĺ%egab0\0 {H YnJBh@Bsx<"OYbUnY$lw':aB񇮜uw/twJ]CljLӊJ6lœ]}JMƚ~M9_N&[B;U@1%4cl4ȲoVVC97 S%h2qФl>R?E׉\o"_eD9ۜf\cO(XDT KOr3$V|v r.6DM7&y-&iujźDw갭e:Q;t:-M HVF-r"Ohwxy2)+8Tb+7o\ȱ07kJ$ą鑴}5~?JRa35 h<$v#>ƚ2SgwtD|ybaWK__2NdCLdhJ G/O8jBLr U<3`>./0,-–WHMPH8w¯IC׹^U^Q1nM d $cC'&hdl!Z4@Kw)xUpbi34SʡlJvqv=@uUʫ}jl"n'"Σ>Ž2aqf 5,B ;wRs#b, Y }iy|bhI;:f]( X͉YFwW>[nt =!Yq6o.IeAJ+rBeR ,irGҧp)l.AREo|w#s1["ך+rΖ{k4Jq1LMHX֋N2*V]ԏ+?TV-B3Dr*0^W\ ͸F̭G NoXx.{{*?" Rgqiƿ>:kQ|)QPt 5M!Sa[˂ۘ>@p{Mbc> <.2اohY5ڰQDs WS7a~6*_R&#ۯ6idQ!&D>$,gp+ 羦5Z(\.a%omw`κ mp6#Om(jd8Al7?vJ׶IL 3^O]㕢a nݾ !HC}=.^9 d7ki0K)A:æYU,ǖ #iP˽}nIoncylE9E v!èz}I(0{ QM >Atu4(5z]a~ *'\% ׮N8;s/lVU%s%"3Do(åQD֙I,Ꙋդ]MVs6]{@S9*M0%p:FμjMuҜU6F'xY@ZeTR\̶8=2*3:,Nzu`6Ij7_wd%~Aܒb`9~)l3 _[7GG§h4Y:y,]2QvʍގObgdg٠R_k3T"}t){lSaS9@Y \O8?.Iv!|B͍]"3VvcE|wvԝ2[,3,j袄d 5$r~[*K$ςC|bBl ۝5P(3/t:LBҥf/NW]e. xKyJO {/i`\m8zoFy;Y!MKY IOv Cus86}/xږ;au;sk7>P/ ri'7;8a۟9d7t =_`!9x&МEA#J[h$ 2YpVTcg&_GUUwM0R!_8+\]zdϐMMD٘Ar /Ĉ՘P3.q;*G'IֻT}(oB١YH_ifqR$XRVw^dx &gHvCwcx}c=k`kIk5ɷ3`d6  tr 5gNF==ȅ oc_1"-Mcd*@iS4 Hžb4:ˊv7A!e ~X𾘎'Rmnv7 y!j;Bޡ*֨Y8}\U[H16v]`g¿GCӶ[lwc#]`B0P|^U* WL<3]Dz[,#;c܃H՚dcinoKw#)eQ>vs`$S`71pyC p߿͌G. :r4%0򩈴LB,T&Ӷ=[?$n,Ǿy6~~|dɎ\7}:ӾLG==tSK\Ic3F1ᵡ2%9{]tkqO[Q#ao4=E:cSS$wuh)]o] < 9pj>ɮ; HKB0F#=уX~&[=@Q~ T{%yP/dw;pTvg3s!%F;?mYSXk5]6sFjg !#$_U1PdIw)dd'ʴgg|e]6p.vH5v"Q?=\_CC}ɜ0HXrܽͬX/ I1>hmL$ftWm>0J fgV䳬&B׵_o_ \V3Ft͙1Nu('Y[w6u&FzXw$C9+)w0,c+ifn= G $#jX礉%jUMLͽ-Xz0S3|?7,d?58<0} v/ d$XBy![937^G*fv`fwd^$ϋv_k$| ђqfߢg^.uo_qOb尙}rE}AmԞuGKp|*H+覅tTp;::ؕCqaw/N64S=gl G[0(͜2)H*kh;h;%!<5P>^VY$rrL㢰 zEU((w 92|$V,k`3O hⱺ3FOA5WXntHQÓI[\*xNOa5f"1x;SvPqܫ {l5gji#qf5ߙV@evm4>/T}SCD_l^>Kԙ5478$ &-8] a3AP;ĕ ]Xn <%`F((1s19}#G+19!,Zٷ[Bv65[tH% =:M.d!80q|](q42G!t֩%wZ:fވX7{?ј7nb1[. 7ٍ${㓰|}L殝\3s!2Q 2-Oè8$3* `LFQE +;pq/ ߎjY{ \@1˃ //S'OikJ^b!u<69x}l;&hP͌^"/3JĝoFSovLHF_3q2ʶ׉wy d W_`lmp}Eig_I>2Tk<;p,E@xWq8v~Tc՟h+0čwN=E\٨6,d^&rR NcLGR4l1}Fs2Zf{M>pe^KegdjUW`O钫xEn'* {בùףz.T[@霌^N +"1I';*]u_6\4SC(n&='j !4Q+bVUi'ۛ % N(~E9^ِ1:sZ}n>ů Kg%YlNGcM}Xyy3IZe^;B0փG ~~TD>@Flc\1$Zl݁篧erYzz͹:-BOk4"1D?kw4L 1w` N@=ƔLՖT eHo.Էn^VI^PAĺ H&;A6+-k] hK{VyE=v5R".s 3E F泳P| u+^|K#U+fMѹ+WSZrA~C n (VD:D` QU\oG5psW WڒayԾ2ڏ$׈nyR>2U :- %<%|>nQ; a:[r.L,;KX)cH瓑)5ąړ 9F~ސ"w_8+Yοz?ӣy+H>" O2ǩthJ8upn`fޤ7|Q tہ{DEF0j% hh{}ut@RF*;6D DpҤ +[ϓ yP!_t8#wA@s(DA\q ?k;Q=m|N9\DF3ʰgX>^Dgɸ¢8R#OӆZљb/Q#]xpA0HؗE,\~h7‸ fQaR/z6(u!jVXJ&; >/,a@^w#\, +[FteyECگhH127|Z-`}FGQI塛4JqWP[O|})ϤU << +le "b4 XiN*niD E߉ 7|fK3'^:vXnJ<֡KF4BX}p-AxO4'>bK"*V0'ʤgnruChʷx=E_ې0n )jTͥ>wod˂s8tx?("4ٛ(Vdq]C)4s“ZdRUBTsP5/_}aq=mE*6`XV:ok6v:%#L]"%*[ &'xV~hh ӎ,66|%Y;*6vsvJKUsl2ё:JPJzMbZͳ6%$UO,ӄ/We< - .Qyдw<>b7ϴT"i1n6 hlx׳z)h r\OzZ<ہjv@#04H'(aQߨ>»rcdGwpdެb ЯDJw"YJU6%XdE$$4̐^`T(c7Ce H넔Fw| Y1[pLoMZO5Ժ!<0^(^&Bq/OCkt6WDsbIxC}hp2]B'j$;E5H:PQiz}yDQ ُT"Ft2(Ĵ -祉*"iq@uWbޮq-h!䕮=7,7~Jv1.zp3$.|O61 DAh+sI k$,ӟn/(!mJJ0 ;͞nz݌pU^$_M1& 4ZlӚ㏤b XLe1T`ԿY"b5x|  Q觓y:b앲5pucݒLB~\1|ExQ'Iͻ?89;N!4T@zl ù"Q ''O*~cE 9]@@VY]C#&)՝{jy3hQn\p%DrBtש[/7 UX8Ql{O"̉/hU؜> HV]Iʳ]xma?mƣB F' /@Wc{xa~X`quJVϟ H1xwB}VޒhanX|j5apas]+@4Suzz<_RwAZyYX5Tc5X(7o5իe}n6J.Ԝ %Ue렇Sd[w ɳV ܒuVRJ]1$ Qld%ӳR2^NRnЫvJ[;/Q W7.V".N|ɆgTdO.ڢB&uQ,%a H]ģ_o3/Z_ }L2^_א@\i}&1*KU TG-QONfaqFiD+l"sPVjEKZk5!fnnmu⨗~$.ISWѐ g^+FMK '֖ dy۴8R=Q+xAzi7{ہ/h/\.0'э 鰛w<|`x͆0٧'14ֶ'?8JhB5 Vws73pt/] YT4F\a Rc_ kBrlvPdPµosVuƈ{S @nQ[tƦSN4r(C Qǡ O:eRTޓb̔2k@"l^[q%l 2zx#柺 ˾~竌EX5"S$xݧ>A^#¦/ɳʎ::ӿ+ 깨o.;[{M?$NQK 4@1>iMs3]V9u jTeUn`׃b?"Pƅ[Hl=w/o3S)E[%3To+ZBiIɉAqd}`+T/] Qm&' +;Q-/ o}dyUxJN1UorSW>`I6l!&"a?߭1LM[m\$FB~N0djAM xd~arBG1 vB7Eobp. ϙ0KJD1ߨy]$+˓2!$R|涚vԋ2Ey%J@OԼYݔ"5;9V) N2+٢'.YU2:Q6<JQ].Lp!˜:^ ~TTd2 x .5n,yBjI?{)5,-^n?ԆH~X،zA3WE1GDe?@mKz|i[yMEÃR\]d'2avG2 :Wwi_)c6:7W|.'GsD2.9G>2(Yjd\HTPNȮo 縎ʒX%OӤDJ|o~|ֳX$eMGE8ֿ+RpKvs? kkYhd L+U\KRxDT^$+k |֍-U,P*D"/3T>3NEFpW~/iuץJqћg 2$[4JԲf)"Zz,H/Lf9'؜$whm䞓*(}URD%m5NLˍYDu6ȕT,}+GNrBLn<Ͽ50YH^=R9Ն3Hu6_Eqѩ(Z)Zo >."PBtl'nehc!ǟ1=}i'5 Yy~Q/byxP2uFCMg[nB'IA߲W UUhpҜߍa /3'z~L'g_W<&S3CNxn#9hC4kS${xv]!gԶE_Gur؍ʩ$ 6~?-.9qCJ2 ;5G֩ùv1fٴnRf*Oeӷ{yF>oDo&:30a|khLw ytg3C?/7 GW9- Ɍ-qD[7C{pPl1q5lYE@uԀL l*yOOK>ޠ*o-8 s8c *j\&nGwq oAd_"#õ*iZYFqcҗ>2fKR]7BՖ#}9teg׭hkGllWM4W+4RDohw^i %O87RzР?:ȥ03V. lu 0(%AĐbq"!"bnbKCp]X\j2s/k n[.-K*dX`` sg4 "m/H :9@I3 M^1k؎"F2Vwm|нLf鐗=Njsq_QZ?SiODsCX.^EOF=,7X$wWC1N5{Iĭy*k?kH~(3MY wFP6JÞBkFBwvbh{\[\.ȍ7⾶[O_pU82a@J69~3=մ OunXX_oWҵ70 ;/JV.$-̇%﬿ݳRO 4#)ok(,])C?Y>73l35\)\H+1a" ńu[v׹v!PЮ<. 14u[==䟬v O6úURhЈ4Y+YG5p 4m0p{Νv<BOZkfYO\Q9p6m{=&72@rgvӳ„S]4![$u0VvyzD͑I*ڮ A2bBob( Kq1Z$94kz~ Q zOf,=I^wh@ܴF@9W[tRxf,m2_δ\/m>ᆍtŒHX@NbJx08?h<n)y:L~) 0p Mx,խQ24&))V!"͌w@sZ ~ͱ/%6&KD@DkeHElw!ˆ1ߘ+''pجfdNa$k~Q/vszlȤc#myE0:J >}4Bw[d<]I۫/) SdBl"Bؖ!"Z,gEUmM]xTA.>CHAW|cedXnl< c$rec|!Ӎ 5=\YEv/}OnUVe6#bGPQZvS7c$ ~j_= Z]X7Iٞ4 IBA#컄>: r8SrsV̡0Gy57îl}a)0nq̇TG鵐l5:l gS ?W$6r;T4R帔=<2~O+jfw0H;o~p, `A2󥖖1nb@ 1TX n}`{LݪP q)|zl@%jÞ1O2©'}WJJ؛n,4e{1\BA(W|.P^q8p&9nHѵ>jɚ!KI֮߯䔚-%unW[o 5fLYЕ$SʻxWQށ|y<45 0`pK;< )8BxW1k0 nxNe5({w854Ҙm.i~ $*EF(ɴ:q ̜n͂Ɲ+=).C`ZM.fHb{-YD-h]pDQ#KM`[g*<8BJC,g@/pj -)F Ĭ"ҺKΆ҅W8e.Jb_2Z}lU6ࡦL-q1Z@AM0L ,đ.􊩌)u 'A\6C<3L1>TiO3WƳ'ـ3mw~ "~s 8U#,|vެ#ʲsZySdM+=au#$Kf E,0ֻ w_>dAMTIrSd&RQYؠ͠4/N? _ DQ.mT%l˯{,GItd>CLxſ$GY qszs9f!{@Pח2%wh(okܡpQ( /TT]g3r[TXFT̫3?S:c;+E%纺Xx45];AOj0ħPƜU'jj4SQpr .Xwq37 bmq&&WmR6`Yh!0VIš +DKNvW{[>+Йcy.jǴeU_da{"EAB&d[`rPed]Dk 3oA5." kSv ׶*ۮ( A#.lܿo5dHct[0iw͝/RA1b( &H~fY7ZQ.3j*c8Jw=͘)$,Q< ڰj&sxy =w(ʾԸr٤Aa@=Wf&ȼga.fm2Zs+buWM2 cUL  o9aBH./rI3[y; .P>%5$kRv1!#tNH WHj*T#}C$\M¶Yښ@y%%_O\su hʱ,Uvu)~[Y+` zw*sU+{qj?U,T*] و^Gnv&᳢No#='mq^;f2 ϡL}> yRʕap 3[jX޼+*^I6vXҐ $Hb W~w5R"R%~ %'9&k2-Mb RxGbɠg#UdT-Ig pMd).넆>H iͧ*403y3nę-jM$NMA!_F QIH m.՛ʢ N'iG!)20c/J%<V>暩Vrq5+#$䩣,>S o:gd։`z(Hu9W;zGq1Rϑ-*mwFlH}qC-V(VB~.0,N2Ql+Iqnァ}e[ZSSˮ{f}:>BٖV@, t0mӜخh,'T/4!ubaogږ.%;`\'jUkq*/uJdϟLp5Rl@NV̢onJ? ń([ڂؐ_6Ao'?ocϮ7LJY_ybH>?-5?cOUkRbWR E-oIթ;? 'ɲ-AQȼ V#F+!Idذ6FL>i`gvdv#%H+ޚlPkw,k"Y`E|uonj*TA妰M`9w5oOݝRQI"I MCu!P%TRٛxQ= y}vSVM*W3 qc@f<(|Y9AǍ~U9*Ήo!`]q޶ſǕɇϿŗ[1`K{ D+xF= Lh*Zfܜ٪/7ψHSC~Yc+~zݾ<E&!ۚQ)T7&I }ܹEz"Hw^XLS,NTFK"|;OiE>&zE٨#tD#U(fvQE/JƕҠ҂ I,|ghO FbjiRlلә1Lb^ƥD^MFXarNJ{Hk8u؂d\EAM>?'ZuE@F/ $sC 6S p&B #j)hU'c*gѸP> 8 &svfAd. ln!R28aZ"=h)~^QrG 6_rhe#Co!*R o v"41̪? *͙]BlR|(ˤ6m6{-vD>k8[NSjm~%d!Qcq.v%VTDycBA2s%,?Dg~ յiXʾ bL=+ ߠAvC!iIfpsfgʌ.jI\H^gm|;4«F|i(BqdCrB3aSҩXH6/SXt\-&2q;h!Ԅ-bi0v!])O!Wˤn`4p^u ()bc޺Fu wer6 գ+" ]ԛo"`4NV,o l~ (4jYT`sn3ƻ˯Ƴ_HɷK oeZc]䫣K2< TcwkZܥOWnj{Ha-ޗ Lxm ]̤D4mxB':Ok7<C Sǂb۝-xZ.vY`ճx";? RMF #1P8+k4yȠczTijjѡ}!#(,%VQ. h$OD]Op{դ׈\QW@'t.nO8q3}f)?2~FR:| J!''U'T6c9~<1y*J9Q! o)3t<[9d9`9cjoTF0:2fesF R329;Vg>]=Gk[7ÀE ȁ|=^Ǔ8G | |[tan*mXk<8pJGSHDkLӇnc1Vΐ)ُ1:7]Z ʨn4)]xG*荭P5j?D{z9v}4=qA]5LlP#HUndPhA.02$c=R٫t7q0vSτi }/_~eo}ñ4~Vh5qd&u)cOS1ެrw)sG}O#LUHOB# )3(EtK:) A+\NV+|[P#VM#tUχi{6kf0 Hj@"Y@ Sm{ JG' y`LV[xzgMЗNAQN%zOxaA1Rf.DO~Y]_No@x/\( ~}#Y7M N+jek? ? %sDr= OJpks<P#0a  9D OnΆ/gވ57\^dV@ 8"ɌcyPP:.ﳘX:ľc02*S dXvrf),욦 jttuL}- *w[̲k4<^|];Β;,؏i7){CJBvkpU^ }ɨ\M( G~=؃][zu2!+b%o.ky ]2ckgHvеZCɟyTC> }삌&V\^6;@$sC;P^uXt^Idb͞m## "+eEK8*%2#~9fRLBW^krx{q;8HYD*Ynijge28r,/7xTV>ʔkO[ApsNû-ԺaM~yR08l"`NJo.9rmNJa[< 2g?vܛT߉t#[B49[Y&sF1 l ?ɩwZX5Z+v x3}k$)ns݈]=p8un.x$F՛}kdDkRXi`Q؀:>˩ 胲S#{ 0'c]L\5\- Zѐ*@H mtf`C{*G`BaǥXӏFx<}_ `{[y=uauhTk)ONRAw >A ~Y lfT񮢭T/-]6̉ϸdU*>qdpԾkjKBG[}~@O^Bni]!.jOM\쁜Uzx%ͦޟp+O,N4"1cB_ 2WqPbf"3oY=O)%bH|r^?DYbERPAJzw_׋ӒGiH47/e=Ui0<je3WQ0Q{o{esFYOahEŊ3'԰ݪ[UCZJ6 ItN> ` }uy՟nYRS Af1C8TeL/X cňoxEYw9C \;%ւY@ Q^#.gy`6o@NÚÒc) +V%-+c%H/?w2smw@s»$O~ߨ-*|1κP<0^ShE[pP0&͕ ½lNV©^ yq_:, ȓ+J-fy䷠a8k(̫i-T_:gJLY'"6!a')[sLsU Pwy$<@}~΁:f\H359/vbOwn}€!}[ "#E*=ɓuYR_bUm(| +isHWz ^=~ϓ_GzؾkCnGZN@faoIpJ)c! ʝhD˦pAbAx)'mW{W;!>J BOk|O%tG5DbeC@AwMB-D0/.ڔ+?6D 1{Cjbc#VqUmd7މۜ5J V~']]y: ]{J ic?Ϙi@EʂZ\m|Kv >:b<F63LfŠ%`B4(tXωm_gu21ZQ!_X ]30eu1^g?"L?*6guߪ-76Vrق%VL*Q(PUNowbU6i#\Lc]8*|uf<8N3&ivؕ =+%ձx7շ.ﳽdVpobIyxbnBnp:G|Sy>od?ZQV(]*P>R `Bxn}ow̼TV2kA-n80o w|r:99˳6XN3@j3Ж<TV?S>ҭ )?VMA']zl`>bqCB(DtQ*$YiE3k;ŵE9f6-.xxQ{]p +ʕ ,S:dM2y4H'NUxc<Ʃ'*B7yO5Ka\00;{)c#xW&Y-b[O޸YUv#ɥQ"dQ/01j;*J~XGEbrNZz`)A..aw^RNCȓݒ?{M`o{,]F4a?-'i#fERmIb׽ oY&!za [%E١{W0= KGH(zPuR?!⋙%ze-/5.Z Bcw6.F#^#P^ v@YZ,&@~笪0+ɶ7k~V;26ffm3ʳ3p2@oy?UuXjYd8:kfʔ(pu~9#jIa %cHMsuhH}}F9.q|AeXa^;3>3(RYF3xcv}(!])ZRr='wq^& kv j)\쨣k$.nNE8KQ~6>_hZs2.F!Dcγ5 Hᢩv+lv4kp^jOޘ|Ra 3 75%]:f["Op*"۳ӊP~u}| A{/vu͹f/I'5ڃU%x{ـ-&0--λXߙ{3UN8W5پ!Ӳ]#`~h\gqJ$G dH$C`%^I1RaNǷ.RhhFY-lPw<{ =K<,{5Frnِw1G?u ZV6>nJXVW$dn7J"" ,2{ZN֕Zo!?Eby< 荡->ȏ=5$=HF:`=ay)Zke~8&O%rACkch7⮼pT֪ژY.ޤIhY1(g+u~5^<5q?\p?#SY?!H XUB*Bkd֯pA%_!=KRDIh9'F D1UEҀ7E*]Bcw3;aL;$Ln:4=EVD#do"=@&g<ޟnX]o]TV,2r\hX\tyI䉞4G4'ob;I1+x*3L&s)ov >A*)siQXhՍq6{au랤 PjM&yk|qz^p?#\kOcLR I|7|o8u Ic@LRBx=F_|+4SuhyPd#:t_ da|w>N6"1طW8X]{?|H`LXPO~W:I=Mvc6%Ws ;P;%I{~HY5 3߸ˤ1g6zhmvn?m|++z(^ˡ,*IAY҈ϗpu+ՁhoSM&#ĩ!Uڳ32y.seXi]1%=zۗ;. ks| { z%żu-6ٹD`$h;[MRۙ; Ԩk,^+oS1*GEi ōOYwL ՙ(:C]զ1d1'Gf~`xZe"cjW$ondSr3?+ølG#&(Ue/5lD6JɖcLrOH4시0H?Z] Ho6 % Yn aMʳ0fKr=}׀/0=?BɄ|'LoZ{rgU'Z)PfBe1&@DνrDMv{W <5Xzʆ/'r j7mDw HɋjJF2 stO2)NĪzMgweO#"}!wW>"ƀa7NQ!UCQӴ*oq |VrBvhPn `Iz7@uJxTɉLf:)Zn0 3.g*gpO:;ՆɾB 'E'N.'SHų7.Q7g}ԫ:2~LM3ƳpƩU>zLխ )L` dLXjs)Ջ=3O k!猊=6~tEʒ@J3T Oz#-A|5!s9k»V@gOVSUu' '[8Uw&! )z5Y3`U:Sgk='Bt}Zǚu H]H(&۲h>6y}d苀N`S{x[T(NJ2+ה1piOMoV˝0 L$ʝA{eřx=&{XԱ +5LnT##{yc_% o 2k3λgM\RLuPůZ _iu2lԂuG[e|-cRf7\"**v(mqH[?7TrٰAt۹:q7ZlPzy>,Pj 0:c6[!<4F@hy>h=Sr:5W\0X?oY&f@|m?DzLqdxa0W]AgKnܐ˥@ ?WyUcv*PC\=<,q*G3*ҪD &?g]@,ʬ7 3⹡Bp"Ha=F#& ӇC/'^W XAj[Eٴ  1Z':) |/T,LrT)}ٺm6p7.UzQ[MZE9w=zobniNz=^l?_y$0L5/`Ӷt]6T3N?#"/xvPJvչ1WSjZ]?,CZiA8Jx;xI>%l ^H')9!: X[ #\i>'a麲O_(xrsbڭ\+[s 8j.ۭĪ{!Z!v^xtg8< 3~3A" ޖA>nh779C\KcUg `$$O&9NXp32ۭBR c(Xy;v+k804qz8\ƹ ݋V>SZlKq5_*A2Apĕ@5UV8ej5?vǪ@t!>R7 eE?uPi%6z4 7N\  ]+ai͡XOdͻLqh<.hÏ ê7yȦ?Jܝ*4a4F7-&)$Ni|Ma]^2{0<o?J#16 }:n[A%922ۈ,3%,F8V醀9=7Z0)U_ߎK ٬/ +"$vxvy'[ a%%.jL#&%9.aS&K5‹ٍR&Qg2*;҅'Z<;v猈vBubx8 gfoxFsGT13\~1@,jMV,Ljǃx\.Ĭhsu="ve'y"z8s/:,d'#I8bhk?/M9y>+ȸ8vFm>*M^_4w/a>A!ZEd%UN_I-BT l6.ni hh7m3mw,Ṑ^gZߝ2-?Ԃ& ۮDC9Tc:Iɝ>4WXsTźB ;vMXFH8 Y2<w!K 5g+ y\,ا-Ea_WsMCAA*RFv"߲ʰUPZ0b)B\Vf)Jpsc1i *SZ)Vj/)[BٗnVDF2n/?%r'>8\O:\2):the-!k57ei  j&:1z(`rDGV7{MRN&ŇE$cEt̐&/mYMb-Lؘ~:vjM#| 6W!_qcTQC@\-ZɝO35u -fq㷿zG7iFTE:jL_'?- $ukd Ehd%97g<@0zEFl*{6 _)?M1¥(F_}zŵ^2P_a&7q ԎxjLqxA^:sY4 ccy=v K` _)+YF< s=K`A40dH͑ ߝZtq8(=>MXVc:@$ZP6I @/D DVy]cn}Y2?;eIJ*vբ)7W2H%JhcEA ӺS=އ&20Vl0A3.<^Wcz 9r/4 q9 72_CR{S8oT$Cm]> R*F6<hW[y*ܵZ=%*Ǭ?n-b> Iњ ddr Oۤ<{vP{eh- trg^! fQb1g<+萵_k)aW;+5wWA j.Rtj`Ar ĥ' M=& mC CiD鶧F~@h47h@bb&չ,'H@v/!]6BnATa( Jx-!]4\πӛ@]V'1le`ÞʱƦIA5Xҍ[a\;I^DL.ݺ+F-$Or]?PӚp+Ţ`JJѱ.a-5B~Jkĝ<Ǩ🍭>SPzm xt9$NU+%xݫ4l bqbCV9|Z)OA;|\!°-n79[ l.N4_OCi5uϘ_r^B״#xɖI]A3o bVX7KȀqq&8K@'W_U8[Fm-bJO8Q=n&ˋd_l:qD/ Hhq.3%{z<rm1HN[Q L4HmH 'fXpG? }8GۯׂOBn[j?q%Sx 8뇯5ЛZwE"rGgKz:-(0^&%m l{T{q˭ r#Fj C5MAL?*"'u+panS*`ƫWRM6sj !)#Р(7/ ;[5P\K,=(,n ~X^M\j֟ߊ@MXous5M3؟D=4Ox8|[SM~l-u{4ٵ=(־<+#7*e+`7p男),У$T-Mfy=I e)*ZʄP;A@^NRXU ٭^27H\6@C s͛ ~=_6c+?k7]];ۣ͹$wzB PȅSndֵ  PQQr3nB"JL:4$Aʋ.tDgS6Кe[m˭BE\ncI7zχ3GpJx7ןxx>׮@.-;k;D* }.Cb4Z9T1WSծsd2?0aɒ@q6S@HioOY| { C&+9uB5@7[-dfKdUbpΝ8i]Ҍ'K(*t"3=Өk:! &Ϝ HI@֐Vn܄T!J,m>سՀAENIUWr*\ L8^+RǛ<"wG(SєuE |hYp>[`TԸJ\Vz/ ,*_\tA[Z5n,2;r~x͕CTkx-$ DV0'd.@8qdYKKF YqrľQS7 WW0`,r{YjJm3ZDpIo%Lmj5Tm={Հu2RIrvf'¼w^@O @/hIV &N rb] pJDȺU*&n6sm]S@{NRN132TéXӥ^K_[ys\cˠSEajZ$uOčjK2kʧm!>$/n>䗶Tv;&<ݲR?UU0җj)77f;ǕH4 _ցuݕDa6V1/u~}*bt[dܱS\w9eaF782FgEBų%t( .M2Nl\2S2y _:r& }H׬P!؟w30enLo.ƺ^G-X,ȹ&J(EeX -/L&Nf2sI}hTc7oe9HqkVoYTu,݌O,?'"m#I1s26${d|Zӡjy>F= F w\!#沓:PተTu$<MX~đՃL[z)@Jlʒlap0i]uև+vϢq0 )ـL7T6XBb9uL~HI< E{{yq>š#)0 4Y;طI[&a[@asF4C)b+j:ϋՃ 8әR0$\@dAEӳml%`8ϕĿxL/ 3b]Μ#Pc!ٮY>(|H{ IJWDjVz:էߺ8}:`A9wADZƬVU˧cvxBXU'@9Aܭ$#v[rAա͓OQω'9Yme_G#Arf*+vPG\9ݬiGg6P&91,]t|{R ޝЈNn[ǯ~fh]dj[0^ Snc" c΢|;gcR^]!g^R"$In~E=)"YA3} I[9\L;tQ$ %Ÿ"m+` J&%nZKH ፕtKu3,)g+YTY!%\ڮwWV؜˯uæXK5I }'Q !U›O mH=߰PR; 5dM#t>-:Co6‡PջT昼]Qa-KĐ'`Ţ}DWPK*%9T=$!VLydω]FLm4Lj0}^uĉl$A3SO1*1|'U|/[L[PdE؋ W CPc,ձ6bzM͹R-lrn%OP$*wȇ *N/; 70ImWFkFUf6[9~҇6[&X%jud+lwk}Q{Hۓ F;h~@q:mZEfIy@(rge J<b\𷀦 [݅y.}<ϰkhY>xŢkBB2񧝣;v &=ՔXw˦+w!?4EVxh2N&Yuuar3_*( / lHѨOKszcBoȡv#w3w.O?΀nt?j@QhpkeJ';1ƶe]Bk^@Bt_# 6fHYZUp!=q0/eR'UKgKJ{-=X@-ΩQPcPRJ)wƵ 1 B"*u7D^ +, ӻj8=3C+TKUs6.4]N B?Sv ࡚vLwз7 3n*7X$[`;㵽]5cH!#j}PG)\_3ZdKKЪZPc-S,2 XB?UI4ܡZ& %2+antDL]ץ&' fh5X(2`|u9m"YeYOU~Ťp@yNi;͢hd>BWσ-M?)[v91NBw @#9]lzz71LD.ؤ4_iB"Y\]EE.Uo; `l5UU j}]y^GE$,"WxZK6 ň x(c KW36jk ̵q+rIbxn ~$),XAZ5; 6MtGBcfɎs/;Wex":)$O&A`9t$ëRδ۪wͻ/12`PIkPp0}ci<t v z0➚ ǜOl^Kr@'BaoUDdjpZnU! o3D^o }KgD#;zh{ 16ױ@ gz&O&Wz&J`LuLq6WJ`侀Z'zwlwZ0/^b+3!HRo$Sg$&vd)[[F3]zNfY]QjYl]ȴMQOlt) jr;*!'#[Aɯ]/7'uibr;WYn.ɕ5PX4܂Ǚҁqؽ^XCKXE$x:MszN4Y@$19KaREg BOb{%C~nlsmB7>=x1m1$YS82vc7n١5A3WM8nn(QmK_"ZGeDAƤdGL4(m]+ E@օ;~ye 8QW`쁚QwFػzЛ hGtgֲַ\J#(+Pu Ͳ˖ﭭ;K!QSo˪vr/UKnba{Uߴ&/6s|Wj߸M.IܺU%C@)J9#<Kf&|Q䝣48JS˥ʫXom niǖsd-Hrv1훿R?oW^үg@~!BwvzRYBPs$Z5Nk,.[܎}YNm'cxmUI4EIdGK\Ym6F)&[Tc;סLJ\9' YMc}sQ Rv@{^DiM,,U(*Ȝ";w|j,ϲꃲnهT@ "zg㦁BDF3Fl|*)7Ո%#fFd_ݍ oXk}Sq^vMw_T X0p7v%=&t,C_\4OR+Zdh!$fp$V?6COc\L+LgQqԳ'ޗ/b@¤J,({ z( 0 wf;h LZtkq?FnR*Z'GlT2G ֭ :2BB; v Wz WՖivNBfKl[y}F(djA2W*%aZ4rjrhɮ+CEwbTŌߍ" ?Xw{IGD;M7ȇh#TgӐ0*; 5ӻV ^`A8]/`Pd޽kc[tqԔ-HF&=r[F1"r} ͗i_ݺi˧vJ#lծc>GpF>tR-htUOQ}"0 w jJ$ Ǽ%~TƆu45پriNHlc(p:h7PҴJI!ĵ)_;6?'<$v;!V<ʦ@Z#9%RyfKՊ,P2mB=M8*~HKf$Jg[ SM@AM( Npu~v?ү2|f pPsFCN9 }?VnBtgM~)AsyWIQY4;{f su~V' Ѩ8lMخժ%<lq=n=soG$iR *-}X»P؇~LH(<7%Jѥr 4@qR$̉4lR2;QwE;R?de>Kh<|D]jRX`ޫ-dx*l4_v~!:T[҆<XL,ǏVd|!+h +7n3eQ `,0 s/M%W8x ܝgR@נF3By𾱉2T=e`f2{Gf93e;Щ*rSC]g#:Zb"Ѡ-%v5$(\ưs#}*. ҋwlQxܛ ~]0CM d/X=|9gs)C( x 7Ÿ0߆|.̰)Y/v6cV&l{Kfا8Y .9ȑI@x(oEJȾ3 V&8Y59Th_Bg̰ATj#ƪUWX Oۛ_/͕ҫa\, ']v%$`0rߑ˱PƘF̺*0SFz|dz\P#me}p_eB_ľ&v3%WsMک20&QQUcdB-ҞI$c&rpd7#&c skcuv3J-iw04Q_hGBUL'[yl4櫞giD};z[J0`d:ٽr(hO<3u "$(Ì oo%bL m?+s`LF-0F#SԖ;G ƅm"K8-(y,G.G xLV/ݚ.J,aQߓNR~I=VX hڷ;RD}Os@0f?Hq?SQ.]ZSA?~Z5vbpżebϥu>*0cǏ<ֲVڹx [*YX7rN8[i b= :%8Tdg]eDž^͝dţbH~b->a2M%p"N{-0~Y ɳ3l0hR$dn?\NpްXUy V :0jkrat! m,(77P̒3#wn3i's2&P??;Þ.#ָ*ۋ;o&]\|H bKV\ چV"$H0czR#rfFte'.;ٝ 6IjR3+&`V&)Ԟ*Wxu @P2UB[d\1CR:OS"IlXLH.j0?E\?b;uE_Q%3Qkp}n,0``Qhz$n8-' AdC.RwX^:mmR۟& Ϝzz ɂ"=ԩ*8jvV[_A)&rhD*?+*ԡnuhHWY HK_&JϽqqMwYƲo?й;([©S\~Yin=-ei#[" ]x`$3V>Sd_nQ9~[b6فb+}yQc[sQ5yWWƪo5O$`FCWodGF2X,E)Rgq*ޱtx8Ryr'!3p{[5O?f[_b8'm{|­j1: R?A69=}E wXW͈Zr0UwQ' 2a|΋ɗ% "^ f.mץD"?X$2@Ta~.Ҳn0mH w`}4,9t@ki}ўJt;iqg6ZϤA̍n3mkrr1 qCOX Usz=8qk[dff8pWPsqr6s)Ȥw43 s>(GPO{V[؆\:z ;x!r6O϶| kLLمp*tQdOg )9G,Ih,GQT؜^ׂ$o8mtp,Ъds2jV|!BYf8(uuDſ>zjܺj/̚"ѹ ;ESΡѷxjMC@={k]WCf붕IcH/z^(w;YɄ Yk ( @`?2,F~*7jRj$L1T5#EG1C}L*~i@~e{ex0"b P K|1+ P$wxKq_Pѷ?!*gn#M@)[DĤVP\1N]p x/0v;F(lm iǞK"ɿhhO4W5pmS[2f @[Y#4V06G'qѲ5Y6 g<_,0LD4ó-{@AȿC$ ӰwCelL9SX8bOְĽzdwF᜔}˛Dc71 ^#w6@[ӿpOg1P;)ZlGEWv-?gvVw^#f^ oOIDlA͵خG?ǟ}J55}&F%sb:Ԛ?S^10gxEOJnP~?=]A"Nh+f6a8aXo KcqBc 6+tD؅-*㴵W|Zk0@胩. X/xe=u0*AD7_|c8:i3u+`3 & BOH4νM*'5yٔkDk~ t7xd!5Dl7)tL\m0Cf]a|Y$*ɆkV3VU䞩+nKq_#lEocB.2-觱;GH^!ytG5qG&m(LR4򜩫V.>>^_|+щv+̴X6_ݚ A;&QCb2Iم3eD6P^ 5NBkǁt'3,|ub1mJ&S4yXY,[ǒ<e& a>P{ĊB Έ2+RPEU')KDVFyU;ט# M\wA9ow2: xD{6/a ۾;MMo@&KKQϑ#,$UNajӟ4zM> 9 *=Ic_l;6x9c oj0j7Z= jIǡD}Iq%xM2D݁Vmكis@xnUmf#Wz(r\l';?# D8a :2(9[>-@Vo\mݰmw }ljZхw=wtuG^n}?4_b=RLDOV'U?`z,Q'ӳ:9-?)aqk*߻`uk_S}F+$fln,#s8fhRI:A@G# ]I9t+hX.v t$Ģx~g6o ,xpĬP!9Tp[fAI;s{|Qu%YbXԾ?zT_~XIO Jq[,tU[tAb G򎢻ޏ r{Kr{ӫ8oJƔ=>{Up[jY\=Gjz_&UBęe<{ki4R[ Io?yr[-kBFѤFڙZUSGs LQ/o(wrI B? 4v[\ZӠ#O!}7pk /'ѽ(7S"##G V_nX+oxeyϥ,](7 I2zw)sjߓ N Xx!tb}W]D(: g_hdGOy 5`[T-%x8XHyLVNO=ōng͟h{;.qN`pY#MB? svP0B % &'۵7)-zoXx/zʩD@r.yٕ4o68PHQ%ViR˔#AW!nEw( L?@l 1fsz $**t.|r/x ❣xCޓʮNմVVxs YI"25?dgݢݿjJ_lmm%'dPTOt{/&tA P."?>W{dv#$.dp׼sK0}VoϿGr:| h]( D~jkԺ/ys_؆0^> "w>8tI o𵍦Ds` &uW*ly5D[,HDqAYwX} m*Gy]#O\$U(q(_SM*kIʃ]F%?ag Q GށM)#f涏f&9 Ǎ)~b4Uƀ8RkХS(̗W)I.r+"(#B %P]lB-UF&}{7p\jwnF<Φ%TUn,H o/mN@Y.JND~dRJIŗBgQDyGZZ;L 'aXqAtg$ *WwOK\YbrnqB.,R6lɊ[L,4Gf- f7|57F*]?9H[;$cJL~+Բ=z(c0[\uaN [pHЮAusF<|!A#r\L}EE;_`| ; Φ Љ}7f'֬['Ug=iO<\VA+ZfӚʝS^k_2qŖzܗ2F:(1O1Q էeJ~v2t_EHm0. /t.5COy|g vUiv)nH#ji/y*- 7e1]qn+-l=e5q^zyR[c>{4PFOX^%%ԇ J["1L7[__)6-&3vFhdA|4)J*hP;bZFtd#)mkY7ɘeUc L/&c  , U`c@~xXk.T@:Kas.ܣ&xjg" s; N/yGS1z^`r$ՈR{ƖA|cM q.f6IX$2 v]L|o4/ovL%VlUOw#ξGxIi;+ r]J>˵}X IxZIӒcLj?t[ wmdX';~ 5P!m Pf7]`_s^n<[&>1߭PX#5wU^rY+.&KQzjCpNM_1)wg/;Q#VKx*6WgI4_Y`m)R܉{UuGHS%LJC2|n[tᙰq@ˇיѲ03&gJI%}>Ata;u,<8Řr?k!=6%?{#Z~L bC_;W¹rb+US~GHʫfL*ZFe?{ 1yza+Z*P.wmW FEژ^WeS>p5-0D@9l*rxodOadtDH="f-柒7Q.f#`il{Vnk6Rhg+\[b o9KJ;ETp?}n'7S@7Ӛ&iB㠣נw;n_%FJ-Eu]QƊd8& LM0fs\ʚ ' 73oyAI™Gi O6s<%V`dt]Zs+$!(n {\naX5[n²\" J/,wa\R;r5,4ZQ!d>~O4q$ (eKl.V5*T!>z҉NE0j,_sn:jq l~>3/ohdJ n4 1!M&%^þ?޴[8Ug%tnh:|;Ѧ+œN;PH߁n㹻z0`J3 O0 BJ4@e1dbKØ'͚Wd9m/zp-v4[K2Fckr}"xKNdm*ADc\ܺUCZ7|H\E(렾D(Etc B=-jPD8jaDgckKxl G¦ͦM/J$nWal%'t:YS 0  St{FU"ii^Vf{"pyH<H3!Ҫv$na#;ںvuOda0!Y<=.lTOOtCJP?C^_rSx*4EDW? l՛IlGمU2r(P-v2! S|e=y7rܓ-Rbݵ ,I$c1RJTQQlʽ0K&rrh+C!ĂALIDȏRhȿ^2aCSJ|3`e!ЍӶ0 ߳98x3JQ!6F0mK]c{hQyZ\8+}咀yB!`Fi0u<`Up=Fn2e^)HcTὛA_O*LJrs Qo*k!R#\H ЁRuq҈'tA!%*PrGVc5IjhHdxkgLNCi eT2 ]tl++^*U1 TNNͬ}j6ڥ:@`O yiүk'}1WE`o~Wtw+Qf|1k΍h%iw_4 cYt5dĽadp^8+o*D`,op ;*$R0K?rM)EZՆ8sՖˆ~Up҆&! m Ul ^ 更ѓ{WX`֛04$\|b]8.:у& }256>-Rf9P3{3B4,x1o+Za`Sa2Hm7.ui|7M $irLƒ;%+>>Ш+zPŒ(w gäLoopt--s;aip1<ݻi&Kc'R(6R#+c9}E~rcWJٟӈ?2(G\]ȋ:GtІ).Dnqމ2 X6'mVס} ڵ;l$!_OΦNrXٯ!oVd@&)| {ǒ ?]?lvw# FsUu ;;J8-y%5~z+p8ͬ?3Qa ̮62UMRs\+KFW)ukr.ԘE %bJeuPQ #pKF$Qoly9\- vˇC{o97ƕwR,{M;1ӜLuN;qpMhCU"q@t?HZa"G`mR뒐3ԑha_K;g~I{]?Z5["iC%q1I7Erj6+ON sjۂInnD `p BF8#1tv}aޛèPwMe3ݼQCx o@L[Yy?>'o攥P扗d9(KƄIXV9`$bc4C; *5$/uO m8,iD#^@u4 ?xX㟗wt:_|˯E9 \}\LW8*qgQRdi.ze.t+I?9 Z#{ؼo@`<"FF"j{_7v1FGqdX:g°ڴ,(҄Rw uƖt0Z诲Ck]ZRytOԹI[k6s̙x`ԡwx8p!NH-\Kel>jVCTĒ Wi,p_vd~Μ]̋L僠'`ٰz4R "n`GQ`Jc)l24hX'y@Q57}R)C?'xhȞ_'p Њh/vlEaq*T bˏ:hПdy|Q!Q_0Z.hX;}# f#4 aP 4 5}JLzUgyY#!{M3m7@Ad}z-N\2v+"8 \8QP;R{bO5nya?*|fpȿԶnI)'~g5A|0k7\q=,T*w=Ҩz!I J}%*Ԡ;z_Kl?  V -5uPps.'KD16p%@_}E)ul,DŽhϳ\7ntrT2& m篈WeYeFPI j6(ǨO,8CAz7&OHmf*sohx~Wb/PU}sm<޴6SzT6bTGsFΝӴ0}Sf-N=oLf5 COؚj}:COa'ڝ"CP] ҐЯ K-/t{zFc{tՇIJ-|+|2-4o_Ky*.Lj=a>~My h x Az)l_Q|8:P,4mm0'(TF[8Yxj< ßoF.qh-,o!pma#) A@: \8DFUg*9~ҔD'vh5iz!K05sbԴ}ྗ,C"xׁ]tKD@/@,^E,7&Fg qy( ߩeew'L *XMŠ^tqFlBYdLZjl̜_0S.ODW*g2kC K[^w[gԸx@h!`ie4=H$pZ-Eڿ}T?8 ?w۾ZG%k|FPFc#Qona"wH+oJ[tFY34Qf/ ?OJI7H3a[ylx﨧^7 FYes25$k|5AKh e>H5aPWߞvY̪CޝgxlHf,&B($5ۘL-*nRL?Rċ"A4h>kC2`j%@zH"+T9--,̗SZ*]&]䕸|*#U΄C2 -UrސK :jeŤ.d`lg"ӵ`6w4`З=EGH:C1>"U!R'mHQ/z wF _>Y%Db A7|6SmzCJCyY#ٔ]vG2%qg`(LӒi᳂US_@jcaEhA>Y|ճCPƦx9Hkbp1,haJnIK ,PFPoK.& fӟk!iDDw=A\#JבoA$Wrdg.០A9, 4HkI$?H "YUQn Y*J|7;]Y 3pJ,fՕX 9QΕ9y2%l'"|E› x OzӿSpOF%yE *R:&ۦ@sG{AŦHMqUx?p̞'Sxv46%kM3I2qwPiBQ{vDst0 %~a:dE'Dxv݈氎|Ep{Wե0mGyEiV(L5LԌI*0H4r-*fhjH.MlSH7,_uK ]c$=&R'^$4`CiFtkB orY*Tu|å u_KSMi/!ڑZҒ~58"(|˓N州J=:-ʈSV픲GVLHֱޝ[ΗЋk-[ÂdB3>Zu@[2uBr}bAt[ EtBǃ>)JlJ+l_jTձ!y ˔m#z\]06(vGO$ 6;]β}er(xQV;Y?6.TYqmYɟ>m2B^iup1kWٙG(N:k2.+aU5#z8{Cn[썆 Tom׻K?dSsjC_ffխ ;pH wlad Ĺ}ӆ Po&v9BbA U^_gt:?30k?vV,4~ķ؆p5 S/R墹ܞWW'~0cN^@]<'Ά2 (֑}qvC}8}=xg2;RCʷoVSQ ͋X!*Hqy)mJH-O@/ :NCEBџbh:63y*{Q`W!<\y2Z%i-ݢHlmGwjъ k ]j3cy(#,g)h{p[ޞE,:籹\Q#Q[r'1:NhI =twe_<~+l0o4ٗyf|6 .ClHNNڼyS341vuA19](19Jsa$)3&ݦK %.*w 0(+xYZϛ5)bG!v%6,h {8B\OtY)?:̋]"Zf B?DKl Wӂ&UVnArtVv䦎zY_U8;~,>)yu{XdT}@!=N[;-A꿻J]N(dsؙoBf2$.^`;:Bi&~eԺ̣[uxXuqm&bvSLCқ4EO?d/H7Jc+/P !}g؟3H92Mt +lL(`/"U"qJ=g}=]jEp 82/kSCb֫N.]/U xOjyDa/ý-^aQn":OU8fܵ&h{+OsT-(TΎ_itA-Ʒc%LiHI32Ca* kHgg(Q/d(vژ)R;8)JML<&d b*ӝ[NHf/*wA n_|Y@`Pk7qb߅UGk!E^>UIytz.j-`pYz 5nWuh]x<:> +6'# p\5}'.}4>P4tA4+})7psGB&>S[= ]ߑWzbşp,@Y)j&nIk9AgfR18K ?$jzyJ|M!+(;<Р/&tM)FF:@,%n~ȢJG%zrw)%]W2-ĺn78^Ul!Q\ȇ#`/#x#AO/B] O2GZZB!@1|Q"uЙݐQ tJ۲e7=?&º`(4t>#ALʖ\%dlx"3:GB8'kfRqGx95z!b7ms{bq{A/ut#f@ub"-N,nGf'0 v<rb_]tx2Yd}Kд~Z2:=d:n@kG0#<:s])Wi문xDM#]PLfAJ ? \i7O&9XMuA[:a< DA6>{A˭q73)p.-i]q?OPZ pg9{ގH`yǃ>ggS,* ߿pGrS sJ kK+L?*ڻ}/H".ٴ? =h/ja}NɴOP'{5k3afmH]cRB{ +;pHg&aeM5iqO6/[o/On?es©GNΑQ@WG8BuLuA={n94O%mӽ$~dUV}37%&Q}, 0DX7W{*~'Xn#[ԯrGXI\:v@f$Uu,Bf(!h p~;{i;~ N|\e<7(:7e!XeMmlJ)Ƌ 2>goaTx|A;oc!4)VЧ@V21W;J0<6,9I?Wd|Eg"T$8kHCr+Z>Cs?v(cI1ilVwMØВH j[=kQk9xJ=n׭ J!3T{]*CeD^gMqQ2K@?zY^0EaBGӄL:16]筂 OVT"":O݆UG>s^mMQ6G'xTqR. z(rog_bMdV&ls]'oLY x_޴cVa6izԬذ,$ejyLa& D\iYn>Q =;4y9Lh΢\Nqn@ }hꉵo=\Ѩچc.;mS9fOneQ.UIT@tO={_jA&ܬrڒwȆEzpvAdWB*.Li)b)}Oey@}. *)rM[Aƍf{3ݭ\WR6 a PQpq)G9\nufƏ[m6Oaz8pdǘAG6sJ+F\ȔP;7.OA ch8!)AQUҁh0Uu[bZk*%oB#aB/&F≠ b$3lO넦H$3=KFw3i갦n#Wql1\ mz( v ~pĶ- $_mP{k.t4>'3|OL/KюZgkW@J^Bߢ3G_MvHjQ7=TPLt ;ށg [ߋ";| Ot}7tG,AauUuⶼYQiq)e99ʂt@s}P  %M7j8Tu'3WpϰNx}מ1֧≔IOB| GeW=~kǪB_wj- >|Jw]k [ތ!dJ0SM-#:ȇСz"h'=N:?D*,g'uBp@zBv4Z#pg6f4U+qaC5s0͡bÛ#C@`m:TH^&Ťitb{8qJ->;Р\1ct K%d>8zs 3ѹJ_{z ۃϟǃi*c, &ݟ~aBC =+_ `$Q<4Q " *ɐ YY~c;f{v iW~74E gR_ix/Үn S:T?$q%ZY;5g-Uk4&htB꠺^f2~N KoHCEHB4f+1Z"ʟ|G8~*]͘+#[I+2MV0$OÁq7("[Ts`) m9ew91i1R^@GRps]|" h,~@ѾY\)'GFX(=boAnvLJ'mp^wǂO9+,&?Y)&̗٣ZQEl:ep7n^/xZ \.tP+6ܿt%B4~/^fБ#G6-] h|[I6"\ws V=:1%X̽3(?u3XǷ W4Ьv53T'eR?!!߰gQ]t5z5!/7%_L/bLgO$K,1WDbv DGGT4[\ң)|9.KUefbT3yV8WND5iZ2`(a Ʉ'1K%rht*[Ӝx~rƼH~=>[9)c-o!hPIKaL>=NOOH$z#dʥs- %udKۥ(|}9On3ԼއTM1 0}<} Q]v4gL!Xe:f%ֆ|: 0!FtJ&ѫ{Xr\Z6o x+1/Vp[; -]QE8<G &-|˸|ePS 4;.̸#!.gGnoqj~2je*AÓ ڑcƈ=T XR%Yb1z [ʟmv٭@@>+—[du eZT,RsS$ԙE1ִThmnՍIk7w!0% [h;``7.`;6(}'cq#=4Z_|pP.2vŅ;:n" ՆZ}(IAaSYމf ^ƹ:? U=);AbX3Yd|:&iF#ȵ,bעHs`%<˱d8@p'cU7'`%[" BFi~3øU|6RyZ5'&7cl<@]=bbD/*Յc5/y֕<|@pq RI;4'VY^+U7g9]vnI$F,@ehμ5ZԪuYЮƸ%bpM+ǎ?6lH2Zs-ovGA@Vά/NeTQԟʊ1ϏR rZwD(Q#YIh;؝ttGl4* GZo ثOpJau6:(|I/{D]y2BPeJ,%nFcn tw佖$[k;7жB-b9 x KY`uV.de&==y޽8=TZ̛}e$ f#Qu 3*⚅q>q4!s :ͪ2`3h- ZЅmkomNU?$nPOc(B&ubUVY aԚοzT,sIk`Ǥ#O (J5_ zi_!NGs&4Y}cZ)WNek K4 ?n"*ǘz/U# )<:[b D@t$ sR*RB.ג\o]n -r0 ;I L9zĿR:%8ؒBSlvF&Iד2R\5y4vAغB?dtEcޝ. kV P :rю`j!J{UX:h+x0A*L5zj+=`/y12v8k%gY\C~L :;SDdA|6v}?Xmyהq3 &yu`ŎrߓK[C/b*Hx/5ݜ1ɒ+KnKMm;X G5^HZw#w YH[Y'`;Jv+pܺUi#1 ?^0t+(薁i64e߉LF["'ݩV. ?n4:=]܇8;=mݕoTZJX?]k;rxk>匃33]i܏>O%;@vͷMPAϸ!ݎD/((q gR_A|~c# 8f"YKAB<_ECT98|/湑C/= CMvRinoSTrP!dabh%=Ӡ8DŽ^iݱTx!yRd2%}p{G?iwpD 陀15{ֱ$:\KTg/1{ \+(hIv>phKENA?|K:1.]`ZɓHL".q>Wfh>EGHNP ]`־@- 8)DX˗,(?s]8k.4^S?J2;Ɍ*5LX6A/L-a{+~~` ̣ưP]R&3e@6K/QJz՞j;JVQĽ7a mQ%F~9[s).2'1ƤgC؊oڣ nt:l}`Y_Y$%tRh&f3 xWWM c)NAv~e^chTYT{%B}NF|3=%IV)KDzl-iVFU"Ua~`WOMkG wxfzv:_ɬ#³^nnR" 95N|;l:HvQ^d CJg?@}eYoBxu]+M aݡM6assʯm-~&>6PsQC?/&>̚XDzFvl=XNuC&;-" YܰjYTye Q($;^ /+݊szcJmw^X>/0ABVAH#Nyib8~md#,8z:BnNjE랷6c7$VݟuX S겁A|qi*Ad|Ϋތ i+Q|>@ՏiU<;XV#zN8 =Lʐ( +!IQA[ ,ū ksw=evv5lw0KH[k@WEA/VJj6߂{d=*~"Klm <&{ 'L ^i}dpi6M.8b@iQܣ$&ۿ( {$n3}0*߽wRo?Ma.9M=nEʸ?Qu:ɟMbF!6g4= ̺~ZԦI{"evr[J@eUlc%~G;u.h0\C+CoXtբ?@9 lFۯh8?@QO"ƷBVEg0vI6sN A q';ԑdX쏊0T&yu3 qu=לF@vPIA+Jߦ,Mmt|د1[Sg@5wאX 2oo?{ ܌Քrl钄J6(A%Rxܦ1bWjqafB!*=;Q%ʊvßd_J( Ji*( -`Uc!jʓf:U9?t Q[a5lLk_!Nz,F_g !2 QCf· qPVQ3V:C<1\GrV l$LxP/ӦI07 RS۬ٲҳ @\VuK&by 6!8}YL57~c df"'VሎSpG"-ףrQ}M0e,*nKU5ĚW;AxX&v-[åUЀM"`m}hsKLJGS7J`{l~>Wiˀ)A.+,SD]zL1f`xN!9~ q{&ĻO*]d7:u"@հOKf4 kL:1||~ ERa3)dCV{eͦ)Zvm3#iM4<$~}Vh ]ڰۙ1S٣nq%U xlP^ /Sc--R)4ifC&i4$l-c('VZs>tؿJ'$.\ ehD՜U:¼5NΕuձ w6~ןY;_]Bk/\Ǟ|mLŠ/#MzҘZ7!J! GRSqEIC^\~qD^dK0Q+0́LDe}{ A>HZ}w 9',ӤX3]~o8`^]ϼyQ%4m:mknINkcR\U)Ep?~ǀUC=)3v{%VL)~ϹZ{%Ju^q5fӀ8؟:DdUa8ټ[l֫N=Oy) W˧h(~77WM< @/+Y&wKtq+O >:neW{TiGɬ5i^BI,NWқO% >j-ј'N۶Wfr.}MSHdùj7'`;B:^D>=t0Ӥ$֩c\;C,vEFտ"!Hp,uѕFZ|x3pYaҽ}P $]T%fi!Ga!e0+e9 r;f_ цⷴ3Di@*+FD deħDywSz")t;֚m l z@W~k}(rU!F^y;_յU$2O$i_[%Zn~;HHޮKPNZOŗ#([* 5`e!Bx Pۣ [MǪ؞#pru7Z9(F Vqr3b{@ѳZoPa*=7P)!ǔ#3itܔ}A^ `]ZsSx)3e`'5 ^{FXb-X*^F9F]ې綾h8XQZM-]qG͸4C0xegS]c_AH`8`oLMBG>/QimPΰAˇ!ki'L:UHAyUq @S6l0w?E|{:-xfX7ԓГr; zB hYS]7MK8m%!)5~iR!L¥kE,Bu p@Qw6OZlm$,ҋ5i&)ljDM{(RK:הǾ&XD[bN@xDӑ;qjQ<Js8G )l0r Rqφe(n:ԲA~gog6A^:vmwݏyQAuɱ=Mn@*D;0W9ܕF>;Gz$w;:W̠] /+< 6bud(x(7YτFLUBKD3|c: ;Q~t 59MIʄn:jIg HMD "c7~Cl?;p5 Jwr3.!z./b&B6__:y$FD*1mS v]?<-f(b};GtGtˣs+1蠘@/Q!u&S*#&^rĎ0zAki>5췌?X$0Vk%v=qLw[ 6aE &wpk3J:Ŗu|p,hPSN4]hmaEFExx[`)EC GYnZ p׿ qX]J`MRܶKUܪCIw JHJ9v6~;nȀQ-SmG@(^'({5_g0{T9 lW"QGcB,;bUr̷E!Rdj[419 8ꚓhi bs4fz,Oګ>9K)2 hT .6N(>w~QHQ^;hk'NfÓ^68)svPzŔFN(QM Y,"dZn )fASi׶Rİ`_؝ױ{U9 ݑM 5վTꫡ,z?C\j[YBjpX2*]RO;8}b_ͧgc`LmDOBaqi^EYRԂ}q5Y:G%ukd[qMe1rA0h&L48+YjC݃emQs Rd-~niWՃ:Z4)o]Yہ@k UsnjҔo$6*ZF'D1,fXJ bQ)#sT휱LtR2gGڒs i|bo{爻s B)TP5lt3%7љ?KjBJ"I6$fgecweY)쓧S+ }>P+h( "?t9 P!e%KK#$BhAug>~LVKl&)hYYZ 0sզ*@.*HwSo`GE5R5ҜĖ+vT=F;Is?@q"-/Uf6IZUN)ozs/]dbjzIf FٽlOv̗E'i=C:V %"lAWYF LOXޭzf:GdUcAiukuǰ u|?[Bn8wA\ WE>%Р؉A@ 밲{v`Ls3`tdIN (]|MKsn`9gUMmpWٻ a4`a@ tzTZavU*lpGy/p!I0E _w oZ:K}{\29eHćo8&!gFsrCh Y/_DǦ3iI\o L\p\ԍQ%nrJJOG$]vCofu"mѶ`~D̵\qF듑'@ pDab}ƒbrV:a؊c}t:vt↪} –܇ 8'D_lkX\lZ] G M!|醙D'^-  G2-nLNSم3 '&P FJQ+J\ir5 S@-qG3"X8 |n]I FjEL:nmmQUPUDGvGvc~:j@z4ŵjoMLm̟Oğa {@_ !Z Hp06ɽ>ɺeqZ;BkH@s Y̅oe:E9\c"P@Qan4ʻWM_qjJ~Rm2e:sK1v'uFkqы_$ MGI <ಳܗeD@i_?=t ֕MDfO2-H޶AFai[}9G %ʒᨣ|ga%FAWDqE*EuF1 ,C08ca!SH֯ m̴P_r".@?= _ p(*MqT0;V׾7`>-z\D<\ JhWp&U;_!Jm)$^V*vIjqQ#TOՎgt^knʘy 3NUEsN_/|w=M?03KVet|.kE}4R̶{th.nui{&5´#EqA>K}*rn 1?c߾`#rI-йg(6anJMpe "Uprg[̤j>w=y|8C' DOIpGbN a, mS E&Iu]3P֮1XHM7r ӳlԫ))0Ǥ[YO%|G]F҈v^DKqG LW84vsC&|@qx(u쐪5`N/hḼ \ɤfG#jjGl[^9mnicfƒF 9PH/>Iz$|aw鯵cG- C~t%8v?Alx͑;,kKtt O/Ȟ~avƞx'乁\t!"UFh6Ϳ#Wx*#ᙋl cgޛ `ZxbfTy !շqϘDY Rdf຅[#&Ę+WWH0P3RE$%1/ψR9nߖ9'(-tSMo@)Q'4Мn:EvC2>pO(z}Mn0 n!PȰ  6g|jR.…%^ r *7%)."8Rfn|5<1CF~OY$\OXz'K>,E^bڌ<ռ!`8(.|v1{QY碵tSx2p~FJ>IS¿t1>e⺝yWX&l@6]k]z╋G\}tECjDL\-dhBY<;1vahXLq/l+i4t%\b|ٞo<>6˙o\zc(Ex uD~)2P W: 碏Vn}VMPWY#NU7!^˸LүK<_/s '"*L&S,>NK3ͭkVyOjuݴV wUz5} #Rj6MΓi +W5e5UFTbzۨ_uI E '%+VKcUͧYIA,Ftx&"c B o&]f_IJ)ΨC_jx\6ӣZvzXgb/n (P2PRM`|I\o7Q!HH<"}'݃I|8By߄](g(ZryͦEpUCYCH lOE|>L}?߳- tKB|S //݃$5H7P%`!2%;/'AmtBkVYO]FI?kz`*}{e?I<4õ!У0Ԫ4qQ2G5(npTa@ţ?b~;TT< ! 7(N&>߇  ;!<DZ[ @ӎ)hm8QsD-C+;ʜ49#;O NN0ɌKZ4sJVWdm⦝>5kfNa0'Rn5UiM9HWD;Α+5*Yշ:E{HV4h܂Ǻ,$%iuxgZ 6KJX}…蹞]~ m`?|q;>f_N2*lC/)&&rp!!3( ΑKGY)5$ogL$Ǔvz Wy{4}*pPg{Z]/2i֙X&PǝhŢ:sD|)PNe]GDʖJoRpUzn4FR. p=1ɻjtzzE'5H4\.I q$ɳC'XZcOyTLB{rf]^8jɲr("7ɲޯ+HREnլV#cmaN4b4_hfzdTg0xB~1,bL`@nJ:0;&PBVDv 4}M ;Ƽ k/.i n2RTfȩ 3mԣ̇,t{r:?Kvz9yo'D̕t˱\eM|k)DˈGOg8m0{=@654s1jha.c]mtw9'jү !ŕp!Wzr ٲnd؈4jDvfm @c rEE01ZH_(hFhN9796!Y@kox~I7mćQPK.-N :bvsThQEūO@#߅=IӇ7r05Υ$YOk^ȷ`۬U378Ë% zJ;. (+4mrOFRCׂ3)gaP/7anP>(M͞g6&PYBPwG(51Y.#΋2$ئ?I4!u|t\AC#zW`_C`1sq옶DŽ**EKH0U2@ ,{$_5g$;k/z#Ҧ>9}3mro4YХSCYd~g,Z14\+0}Br #G?!!ꬦVreSvOS}`j[oߣ:YsInQ^B%=1-\b(7ݑo-ρ@PX 6o(E$R{S p0jJnuPѷUfr n&tV2F1IPH>jN %вV$E%~YS+ <({0wQ|mYrYdC Ԗoѣ ?$V| Xp``zXEϤÏl&֯_v͟7et{7ѯE4+ңRvz jq1iN6w,jV9T/=ˎI&hfVYVI&rA uSԞ#D ;6ѡjЊ^=^*\WaY{S&8${Tpi|WԒ?CM}a3O6me敛+1|!xg6p|unK_K藬1E!,.<%ewEG@E?[y"Z+ALCaEZ{A Px$12wik(ߗ"4bd'S"Q#s0@ZhgBUyuCS;@ߣcy?4`@RVOeYa @M)^Ξrs:KY켊akii R})#o jy$`wB[7X13k)UƭS.`y¨TaSQKBU0Tv92d03!"kkn6>gYw$ 1 HNɇF|4VyxeU]m(II|V* ?:Yvt ?()lv2E0հ2 ^Z=NozkDڶoKF_f_aX nWx1j27UE!SIȵ ضh甹 Toq9UP[R鶳1adIr+ڹ8c02"d,[ }VD%T}mgܣ:KO<9h9 `GIu~+aBMzyWK0D6zB$ҽH(4rm PMPGxF13MprAɪ؏S/)|vP32E#XF)'x!UsKV}7OUa a9sŔ_v:r;K$t6UlxC!ֲ905+1W$~jp C2jr*ذݴ+l' \0?V#g1J,pCx`nõ^yΐ]r<<^eA[̐_1-á2 lYanx9(kJRmJy28EېGz ct#jŮaWOxހilsx1n%:uz|4IبJ@mɲSP\]l!1ׅ4^ FWHa,vv ^ocbNP _0'lT;dKإN!Ș  #x鹐\Y}L)5&|,N~yu=2HHedHsi̝>FP\ üZQcmY8t{4H%Dz'ao"x u„:_9?I^k˽rA΋FL\ɻ; O(Wތ7c.f \,u0Dfbn.`:J%f3N5  K?H&+`Hp-{-Sr GfX w!oѴ9zHXijw`QqnSWCEmxsX-.;L)@X?uwPIjRޅT+e+zt$y)u&/fDi,裼]lX,N?g0e%:pj@3`PzBLE 'O@?wr ቌl?<r{dQa5Zk 2$lQ"Ah4[]'ޘ[H-8fkv$a g ,s0& ,G )"uR-Eÿ>>-rӣa9=N~F["h`hJ؎$m"4eo!9peedDI0.j҃>R6V-0ԤpJҏIg{ Mo)d ÈLLpEUL $h`dC\fziULvk*_ñAXMŽ@'Β9 :L\N`+^#3\cW|N/RDjdI0.F:)bCԱM\Nk W^]+ H-4+ōU{$(H),Z6pA.y1&į_R{2A0gƯSS=CƮ~H x?8hoU}YSegկ\g&(vdD5f8_J[ZNjg|G㾣/ߚ&di 0=.c_h;3h~$?΍eQIN;.If(p5z}Vq.F\;l^Z_rٷj9/l.Ek:?i^` *?U/ :C;4"J~,^_2~Aʖ߸R)$V :Y |o VEZڡx<,ganaϠ5}-X :0,ݬ[ h]qNsE 1WAr̀%/vXh9,T+9]KwpfXȭr~ Wb _Uw,35),=.:!wZM^͝ߗ~Un̛.e&zo7P_xԻ^#aVkpʥ*?QoԱ}A]PA#zFhx `){&k*,:Gh"2Lv>A.0*]TzPPL|DzE宒>Ƹr>iʍ8X0^[CeH`MED/6j+ \GA lZd TvX\ķqd6'_V#[=?-mepjTNc|R&6= n_>FM(P(xR/xt{r7zei1mNQBhg"PoFlkw%r_R{/Egݟ^;;mIiK"Oݮ,a. sWqʱ@xǴny) sFK"l,/MuKΡD~ArJoD c=\!ROg goq+iWv偡P8 &]\$½=w6 >TT)zM%{n[1켸_&y7ٸ`~,wIY'G9ɒ_l&9^ "PI/K7<{p009ſJ*䙖oDbήE,1B)N_`j|Ė 4vCf'fC [o v~}8Ov,/&cjxJ= ~D#ИSQe=JS0B-֤dV{o,@ѕdf";S֟ڵ 녈#)z= qC 㤅-D(OwʣqoWȺ>SYS{=pՆLxs ?SU:(M6֩p|Z`u/~vɯM.rTz8+FlNA{uT^P|l&=ˆ(Z">7KTu;/E{KQaH"ӭ3*BjRf',Uw|+Ƥ!DnZ F qR}_8®,ݙe Tbc[:͉pwFIȁ׽ynQN=k!<4"Ǽ>. r+ DŚr5I. mMeNy,d|!"$1o|@z0ޫ?jH[#?tkesTuec Ŕ $Xu7nN<34|8"N#j ?62JYW_s<58Ba&mp6gnB6TaY¦S0DQbqjÓbVڼucb_xav /Xg$ LD2Kr(jBա6whҹC]͸*TaT}O̕k?fMIx(i}r}ZDnl:<.d FʵUccUWfR,ƥwZFѠ(>u5}T2:958}v.$Υd)מ.,m霧o#L̃p ZI!m0D?SyTĒVs'VY+ts ZaQ|s u^2S> tJ‹~,_p+sJ#%)*ÒM.feFzu`}. Tϳ|L(ປQ^b hI1^i)p> ]"@*8aW\tЫ#:nh4b7r }RtCzNv0|YyO#V9' D07 \7L-sEaK`sy:lb @7х!Q_%sbS_Qa+{ae{u6M)Yjʺ/=gֲ`\].[o`J[Z:`㋿8e7fE ? ƍ#U p&ģl? CR+!fA}h*18{Zd$ y#ȔnQdduX%u;ݧ"#%gYeYY!ҁ]'^ 52F(~S'gVl. Hk=p?%PG[L _g)[6mFo:2J vJֹܷD}D:rH\6wXG߻;J {Bz4cS9Jvmb\yex ,2+ߠsU]:<уW\5Cnd*C^~ˡ<&)w(ai-P4#L%6e1Oh7Ә@=Yh@|?] bV<áHJ 5*cq\FWd5%?qk0)=>l2Z>0MyПR쫫3sx'uxR-lh==舏QHx!lwC ]0c=+<=Wγkk'tKN2+ݴ;+iqSB^#n;"a =eҭ<N >T/^2^ W՘X.(m1`]uvfPeUl"9:y,L̹F5 d7Q7X;륂$5򏟔VxY!g5dq^+YO ۝MX.rb○Ƚ DPэW**W\%=j^c _iê> xn`^ffC3Ȁ|22;& '_b_C/MdAlw%v};0 {?^mioM*LQ`fB龋 *rC=#7O=ku6L }%u@`i4Eb6trQ}I|W&6섾eoc><+v>)BF~W0H&kb6IgUQTm@U},1Ҧ" 𠬋 ?pk~ދyl88綖d.? s[c?tW,^=|2;NÊBsNMH^*un,$'Z PCFeӋf8y xS' h q8m8ҶHE|n 8u*yT$: |J ܈>X Xԥף,_,ԝ9ZIsd-g~0f30!D +z>o#T"Hן2;^@<)DXV6&q.x]6U < k Kjeo_HOlOxm,(zI̶7b9mc/=AʔCPRĴu Š~Ivi,!nňb<0ɼ*29-o/^'J|#Xu )Ac 2x'4ӗח>\e}[X OK߱C:9BaVvANJ {de{GG6閩 QK줔ZLyGeJk&Q:i㺶?*b"og'!oX+Ph:qt_W @bBV%zfLyc06@u I'F[JYoX0]+6BdU+'WYt h[2\W2H/'NMf e-p^+jK KpGuW5J+V}ruc9 sgD+;@ {mb2t/ qF۩FeKzv<'XݫqƯ0~dִ5<ƞ:zӶ(Cv@ٕ%cA"p:l~̋pN1͎֋߬ 2-:om>FViO.7-6K& 葆ZGY`ZI.t2+ IkhPK{y;Cx]PI#l Heb) |rbїC|~=E: PjȻ2dBVo+ح-mHF0W z1zVQUU⏭OdZQO*ESk LxiXC,.f:19%d 1!!t*%K7nOÉK27: } Wp1f ][x},y9OeHOQBh Fh9F鋿ri҆{xzFTZKh*8z#PAin!&TץLH\)ccqb'=~cȴbZȗF{2v7> 4_ZHf[_N5mvED&&q }:d,{(hI5ѯln옍9aU[p!4 H Lլ F?t*/nd.V}",eGr;Jfu!8ƨކ䖔ũEVX fkeш _if(hT4D&lR&%+Kd::N1[pI@&rJ _74lA^8*>cq, cbϤ zMG{%؄)^Q|t(5-_ .i^[$ԅͭg-ĺhAL E഼2Eu@I/PW7"z|qG.<$ٟ{Q:n֐}"Fr}b)6s^daڵ}YdMr.-BѧX9.㘷g8 &`͞ڈ',"'O‘XcgB @)Fn Z[pWyKD{>-H\@ ]Rn#b#W5?ATLK]At] *jiv.LQyQ W.-t[A&N8ޯoWՒ:zN9=HQN:1U_+LIK/P}&$ ݵ{,8"ICrݞ MV,6msEGokm;}:ȇZ6h0MDg=z@ *+¶ԳKΗYϓooYöÜ<C5_.B ŒQ*,RI˵:]k1Ϫbڃ>ƞm5RSj\AB8?(nG^ÈmZcz[VyeZq4e}Y.h'q&B~1(\sGu8/A+Ik[c_k 온 Pֆ(/e'~ȿZ0? )^Y$Paޞ }KWNЮ\ ,%#A[T_Lȣ][裉 HI}g64H~2 Qk֤wSRrv}_hMh~xĖrA8e&VpmT,gF,"9"mj<(%έўGR0<0YYeR7P>x??O@JpYJu!b?4փET@9%bfNƚ*%`) lqZTۨݚVǭT KMOٻsp:>տOv.wȗ LAT}֟7.&-`6hK4e 2Z'A`8oqEf SY;q GH5Jad* O]jXdi9c|>}/=ͽ=ђra7Nv0-@u;1\/Ol5"@·V˝;s)X).R19Wm:9uK^u!!%?U =:moC vb4^H*d>"F}3Mc/NWUfH^`p틙3 kj8n~CqWrY}0j>ga{ܳZ TsTOLd~)ìbCW N9_X.|ZF &te[iU nPt#孭LaQm7_)ЋܚHl,̖-412c(ٴ7-ĕ(*JZRJG 8y¢OyA2{NH\ޠmq aF<6EI4:Zב6JIqY E%1 4Χa:x۩8pD=<3b^NZ*[[ar{%56vCC({ؠw;"E /1ú*.޹7phrĤ/DMh4EZhIFEvdlZuO{mhW桿Fx])$D]/{sQu:@Q ev`׊>), fQ'/nїl'ڶ; !5p`fk16*e.SYɆ%]:IՓCH]@Ĉ;%/{$F@"$#Y ]0|!lj;ETWS2H<@bzQ1dΟSa5Α}>hƽ՗Y/dbVP~G#0e'ᆢ ޕGWS\_xEa北`|vT'-`l;S{my:8R!'.nuhmĄ8VÜZ:֢aBxC^);Pvss2uICcuk%J2M@㭚S<aR;68GSWOr˙sp[9qtχʹǹO1S3ZcB[*)jo2s5#WǙ0eMfzɹHil=߃#ރo' R0G^Ӆԓ}{9!k!8B}EWIiT6떮m+$Q~*GS%,i =]ye 7b) (@Ya)~#)C1~ 2K˥$gwG7Im[ClбQA(j'+I*yV7!r:gmXl͖=̏pĐ]^jx\'+{Bœm-V *eE}Eiy2c>HNԡ6-vI1G.P=ox[Ozݾ~#ZT _ ;@$l6d;$~1,ท%V'P[BE?HZ&+xs]tmo;CRdb %q KZ@g${Md֘_J+ jZ6?З]gSk 4_U>V9 ajU L^0.K!A %PLǹ'ӭ_b(Qm]hl&My(\lbdDEzPX7#)8v lN$f"+}[̒I e&u?n$VYw{ZUQT&ej^UjnJKS^ @2Ɍ t~Ö8wa|@~>GgiVt⺉CIڢHH9MltK;p-31;&$v,VOlIꐳS T֝;BbU[>}e76~{1 C-\Ҹa{;ԸA"kI I$Q*,?ЇC4BpYqh\YKuBwTkʉA&/3~eileׄ:Qٶ4}EzYh,1}DP-˃''>Uu!+5sz%6 +A0+E`9?B5y/:v7v G ܎MEOkzqwuKv<~𕨱 OާTBJ*zRo Cؽ mr{%Kqc.\(q2س N5ˈq~Khz0M6ڸ 4(C_Apdb Jyq$~|rT=ߩ3 *l֟>ugZҗrJlF1,:كNaNx"{N;)ݘ=d2r(G>kcbzTx?X'%)Xܔʌصݹ'ѳI;5?xOl9U4pLEC%H~*_I=ٱX!.e{U@3NGAgOWSNxo&]'ipgH{l&륚]O yǜO |RŶAPTPwAt!;wwv}tĩ= n;Ezt/[Ǣc{?Q0.Xވ4X_Js {b$ZP ֭i*!VYdC rwL ɿ~ء]JIpx6xGo[1y\~@;,.gI*e8ekй=W]ym}i Ys\Yb[{x=rBڍ?o;La#ssV¯o0~@k/(oy ֑%Sv"ޅ]s%륯Ue{֘f^Z Q]3'A[TYa |3,ֆFL1ro{Ÿ=GE[x4.ZOyfZIyF(VR ;IXJhF@y\[vm]1,ĔG;( oWPE&,;Z o,x?u%Sn9 +*ϵ"Yd//hcJcRKHD(6n)VR LNẏdoKFjw#yNtm`PnkGS|f˾?`؛Q)݅^-eJR{VIt+,yw q+_3 RK(msO?! vg⑗&% O":ՓV°f#!gF-Fo,0%ups4$ uY֖r$UWD|pBeRM.NQSQK ~1=2Gpëw8J/Er!gz퐭J70Qeb\v;+aTu#m 2෯El; |B`0Y7q]n<"#[0nh̢u /=No5 <*~iyJj,HQ AazA1J \S'(HEIp U:(aۍ<_hetB !:HpC,S!<kϋ;!f?5sQHϚQ, RlkV8fR$~}kKjOꐚׂ/ +[ ":1FJ 5)Zr|jTX!}u߾>/hi61HX`;>%S| e_ +wIҝ|!^Ut6D^޵F[ݣ~sX&)lYdP!/]j+jx+0`ZSxh}L82rb!pEGrK-ߢe.À ie#_W/9bZߪr`62& ӮY[ڏ6j0J}&|Eq+$W` qnK)9i;0lVñzM> qUFx1O 0r-!"H ! kbŊjlg%4(K2>YmD-~ ?ҝ0t^MwD{%;/R7ڬ6O#ei.+AJI#Fϴn]],$~hwaT~[7>_؍ad|P4כTzqw/Hzn/t:؇@XU~E9(vlԔNq"sy<ѤN1ABB@XtͱgU.o++lzALwdR Zzm1xc@y>O)PoHHf8Zc䱟9ͣYxs@ kLHu2xE=nEX QQb|hSh@06Ommd4D[o^BƞNdJ׎Og1|ȁ,naNG:ODVG,f*4T<ұg'"RCG[> 8PNU$uU]m`M*˔s!nϗ^߯]t~5 kR2*# $A>\/5Cu;]Hs(}ۚ0Nx &/؉c;J0i M\'ꦝS#޳yHj)\@t%5!j/CPR j63#˄k0TO$.U w<ż =Pm#n]dD_*PVHz͗S&1wyYt<1*}:6Οwv&HZ|@ʏ(_~*cFN[ Gpn a"=}:I)! N`Yo; J-_0L ޙN<O?_y3wÖ́ ~mq͂օHoFGXj5qrG0#i8!XV= Q`oi;wnX5h6ZrHXX8|~JZ&)mc5 0{iEWv֖M XdDH3;Wb4]a:BjxPfZq,MJ. k@1j2q9ch)@xџd-T"e a9]R퓇'"yкH}ҭ?ө NpFo[2UGβTAx=/ i^/ow>q=V>^rdt V?'*Z.>V;䌿6g`(Aʴki<ˊxd*LH䄹LZm2yK8 jOhw>-lөA*h'ͷP֘!4\#UL$JZ9l G;ĔMDr:; $h H"N<$A]|NS5i&OC-Z/S0 u#PA~#MӓA*aQ^Sj ,+1cU[oGLY%e2]^l|YV <u Lq!;ɲM3Vc:,:$lCn6|6)D^[rpR]Qa`/xU,#NQ_^u3V0 HzrŔ2SQrgܹ;5QL`g8]93zwA-@߷1DfEr{v`GDo#KȤugqR& &+,Jow;l0Em;; Kn˚UNǦ!= @QmKw?6/f"N+(FGS#fr%ȒMaQ4Y=^Cz͊JiTb}5+k xz<R񝴎YP`Èmi!mДP}, mi>B^gXFM$EHX/ - oX;'𪛖fY@/?A6CފHrOor)MMWƾ eF.Uԍ|&0O@'tf=Qzo'^se^/5O`+qwl[)G!sD)MT^9+ϗ玣ڱ1)ģz$YPs6Iqdw} p"%G: pWn}eaE NlP96WD> JEă[j6z`ÌO􊐘J/|u^f&5F^"6o]S3*j+h .<E> nZ(Ary>P Y ձm hl݈r>Z ȮO3f=1ۓ;' nL쎷y?Ljl&[秉.=kXy?lkLSˀ._+^O>qls7_7 TUu1[O8IˉMbGڑI^HB s &f6`MQ4bl\K;UXv;]Aѱ}&b! ֜>ĻUa-WIߴȬDnHv Mg%ρ|!qw={/(86ҘfXnWxSĄ/+']`' >4[=:>(AFu /kpf6~۬bB9Zk5fֿ0.#24:t[ʁڃIn@"+5*' \SτjŧW+5+cџh8|} %m|sB@X~'9yncZU84{U[yJWJ(+J7gyY :3S l螄bR[Q 7@c^V`] {YWR.MBӕ cG̾KڡSJ Kϥ'Kx4-Ry~ ͜Gᭌ ^ 1M|%=l1( Ф*w"8AqqYA̧~&Za:) Dm.nlɡ]Χ۳D%|RxU5DŽEl/}%ttaW5ԋA|?.sZ .DjH)0[; F1#p}pW3P.JhB'LzhɜŃ8 c. 'hoh2kx/FI@CХ+TN MgZʘb=VC|ˢ!?nLN:re¯'?JQf LZ_ٕ$k0Hx3D VЎ}׀:G+o[;,S0:@HVP^#WfZ ̑/]D1h;-@7Qô5?Glx( 8iߧ)T$簻-L#+,r"fU/zJ^ =yl'Y9}TA`oT7 Ys'{g.鞖Yzm"zNVx>)X 'VLcϫK¸!9GZhR&;3_`WfMBFVWz/]>\W%dmJn*5vU^c5ogzl}2()JtM ɣ ֞lfcDaqTPBGm!#-ن?~,WfdaV`A=]4NeQur@9ޠ @nMu/R@_v'(ʺPgsV\'6j.g?*$C@? "$-m'M2δ]NׁSY~'3!wc=3u7m8STSx7qF`Lr(|@]vow$D4$" @ca:Ul9 **?%IH4j7\ALf34a$MЧ! ФXRPp<2RR1j 6cN7CݼTP&RABoq;l l3,XL0.zPb@VGN*к1=J]5 Ptm f|bwp=n~N2|ĿCzv;R fCsWt|_=O1Q :~ 2_pQ .M^ ZUK5]K$jH| 6aG{Ouo+#lv9=߰D$\I_>P t%˔}iH ~zR1dM\ ߷xٜdp'eR_JB: X-KƄZI*8c#r+`X3Kp)S nd_m }*ϩ~$F{kyn Gr:xYD.YưG&4v"+iWwy;ޖ> ;2샓]s| %y_<^~X7\t)N(ˮcQO<uMxYçsDe@=ω')\( `NALYe=R)V|īXC٭zDYuEt?:MtJ@%A26sDm5d}V\T3'&yX*߷Aezʩ|`@~Or68Ix /wG.`;! wyYIﻏvQm_it2P@y"%|m5 ➐Ln FxF-,E2盗U "c +[<\>\#݋Vf k\%U0m \i𣐭 tY<2ʹCE\$L2>޹,nІsI$ Yd]NU-\Nwn)CE˫mqAQ^9&7~CIW19:SvnmG2;dI2~~/`;^y%@/ 3x,(%is/j]r"8|[N-1 Io,R@BMZisiH21'Gvz9[Q(Ö֣{:>su]L65e&f6& Vٗqq' lVɬ &(y$hG%F@ }IU]p>nop7`#eHS>,?gq3#4hj˟>ل PϰAqp<+s~Y9̑l#5))dF*5 jM cG(4 W}_װHkQf+J?(А?xFdF]$A S65Զ _:x@:4h\$_elQVȅR?#Ak `N3N!ge d</Ԇ7h}`SIj:#509{k:,"؉w<&v*B݋^|Oq۔/4E8b=֢ Dy%98$|p;Xo\'{ɄzX"q5k$lK4wlpmo7uʊZZ'-Kײxq ܓW9>mpND3P0l$q\Ϻ_j "ӽ65v~XMDAFS']Z>Zn9r~K1W?'SMVg(<~hdB<'mPaEQwtɋMpfG@9 ~˥X>m`fdO=rޭdaL{,<ܶ-)s R nC8j KaXЄC헂Ntp+ch,$4B{k Dg/)"Ձ4DLė;dw=)dÖ]?zZE$2/˙ýއBeQI<(Jc㎒%}\e3]}=~/yN{CH;EIDzⴟ&ɸSNcH>43{je Q~仨개QEzg SQšvttoopa[9r Αʏy3|j~dchZ2S.M1=(FrLMG'p-Mn8טԃGh4gmsf= =OMSroL+% 66w(1]k]k;`YN}jGdأ/gN3ФY~Y1p' ӎ`2`SC^҉զ0+zύ|%RՉ-?VM}Iz}ިPkJ̐2>a%`>3P1뺍c4D)OMP^ǬouWtt Rο{ )56$d0r@t0=Sݲzxh]*ŵ)F 6c)s3իiᙽrunhDlʣh_A<KòHc 4.[ÿNl[>g5]\jhr)3Q鮈x"CW_Lb#cH02m7DKj:՗ʱS= $*.wPL:W -6;}7oLO_0: PaER١yvj2U-'/YTr0R.~s2xE|kyK$S *ڷ1oo'Qq%hC9!"|P@9B W8*W%ՃX1PX4P$Hx =8; $AUXuz"=eA/L| c!IC/z=/EfL}U{hbR[m-bH 4J\{?M4. Ow#p'C?˖B5N7> u`9S`x(F3[ho7QU}8 tqc`N싛s##B}P&ؙ  ^)2HׯQV _\!buD;ܷ v6+MC?R8m~ Er)Okϸrse>Cxw8@xo?4 Wz:R^sA`%1֌D#oZl&AgWs^+ԄL _(m-Ha|*Ӳds#-kWj`JQM~h-p 8@ԉW\$K]w}8zU|Ժˎ$gm0ccMBlOVM>qb+-]ѩu@+$KsMfi `ԓ( i!E1TEGgHJ{^/Z'h~9i gv #aF\,R lx[ݹGM3fn*klELנWH |a>>/FH,3w~%TBx*̜bZ BɆۨY* N~%U!ZRbcFcy[~T~q̡ _N.v3Oz~9>YK^ k1ƑxB}#ѧ]i]hp^p-ZO|$% v͈ޘ.7$)hch!e5r|.EWp!SXo12Y=r&Rs[,z&;H$k, aȯp=$UP͓$2=nj:[j;u'09;, H#(tv Eo \tjd:\ '얄ݳS͐^qZ3t3s8GRM 3D~.}ݱJZ*[Y rG$| q=F)f v#( c{Jp4b/vuU3^. }4\;aC Rn2N0$ WHXM\ۂ?Fτ+kMֵ%tUz˱A8zvhbxU)}z# jw"S"U?L4Ըqq332@Gs*;pF,S2 &G !nm&xSFq46$woa{,Dsa.|tÃNu3QXrݾpk`8eH>7=Jo~;hzş݋: gQiN)Hx ևP'[-)MyjVUXĤ[/ BBC'-k >Z)x6,'Xo85Me$\Rh%c?͜银kNIw뀎NM58L*wlPg#3f^t|c΄A1>5aO9vi2gܢHpi g|azv$*OSpB$E*xX C TI-o͖dh ??16Rܴ`,+=1X%u6(o6>J~qd0gّ9æ43 $ҭcv `q0DԦ,:nvV!DF W tzKa[޷i((ϘڠeD1iͭTVh7Oho ώ/"Eg[̎/;GR1Fs*RU4RC=%6•بOFEz/a= |͇ ޅjG0 }ÝgoR]kG$9DKSP|GdpT:snw$kVpڗj l*a:X2]E1CI)lƱlC@aQ_\޾$6ܥyRx2 _g[w{F=G-úV1rw$MskjړD ҋL R. :I~vVdV+*|o^ w#vc|P0)diD;Bs7Rk%CoL xH=T!4EH^QKIdžKgKd7O&w&VxA' *[B\8Tk|:SsN\_*J &&)#hp)Q~nI?Q> -ݫ6ŧ =N4YmO$+=D+N _:)*?=J>u]Yh5yMm5O5pt!l`U>5{/ r nnZ׺:T*-Jʝ۷[!Z]dXM]39 Ogd`QWUv4. ͷyBM!/ocXF A9M D'bp\‰g>'󻯟.dO$u(U(J}90^i`m?wc^X+sTcLL#`ᨣ*W>rwa2ػЀRI N Gy30 )k;A a~}Bmu"RP 4}7Ejߢ~$Jo/X?S{D3*'%ee2 q>4q9J1RW X7% `ekH9$Lis!y ~"ZޣOjT=^>qnbg]"RRKV)@> ׶K^U=+v{ Tnx2~gPt)_=^w9(Ŀ𱑿 JY7&zf-4k+Vfӆm1l.& '<ÿ"W>oljW;xڳ]Ε#oaXYcfS4C⤸Djrn!l>j֬q:ўpgn*,Q:d e 1}|0m]jBEܕ'R8y{Yn|Q7}dȑ݄'!(H8c Ń< L''"C^E㦡 9B\,KM#N?CsgȓiΞdpgBeA(~u|v}wyg7'eF[ǻO2)m, J8NSL"pxQGv,7۳vR=摣dH54& tsvG3(G+ߕ Ge7j̩ik ƹi͜cI9QXMYN;wDrZP7}̨_X4"&~&/YRo!Ur^&jx/㻊g}׆'IDĹ"COSqǢ8C iWpq{y Qf_.`&.]⺅6lys/SewÚu>f"a#[ȦU:KZPΊ;*gFD5+?AyrC;7, ʿ^ORʆt$4I/ҒN)+ tՏ"CAPr w#9#6AjZzYbDË+lF{.8%r@Ok Wqt߂ar7?k<X,}?b_,UIc^@%  *rv@ssw'HLw ($j^)W:Ftr{/MתGԬc[5N乸"=/„Sl!Ua 퍑i} Ȍ= LݘWQ[ oQ*DHi{ҙ(\R1iQ:,3gNɆ(8(ŜjSE-;#C+c2ΟB \;}riSA=Y@C˯I'{Yzyzc46dJr8d\˷V1q zχl[4,="h~>_;%h _|QiʲS,R#3JL/oO=vRᘅA aX|K4q1a¶0~DwS̰HV 鷣O#&93w4M1U*b:F?>N߳04̡1ҥxoΓW@D Ga"|#?j^:S; #C0st+wp+~ǹ8CO8RߣƐ cU;zhkiI5oV6\n[zL&#)km('R_F׈`292g 0V*#%ӯ{iJ8@rNjCw _ThU-Y@ PzFz+ls&eLn0fV3&A˜j 8CkE0(IZgH/mqڀ1m!O(&JYr9Z{tnUfU< L4zӕ{{[k۠Űzj4W)i{ ij_EBB[N ׽f)+$*jPFQڿ ܷh~7dL/R 9q5_NV8o7-tn68Hە0a&ZN`8rZGɦ]knиJ`RWI.Ӹ֝SG*n| :\u91C;#xLduod E{&.R΁^Sdcľg3u*e_RfVBh#MP}3<gE~\j׭n)p|3$b-`cTv80,Wn]6$/ًdqձY4ʭ2K?~0H8WAFn老8.e8'~J^h1h`:d[Tg/cn LݿTq4.BSĬ^3 Zi9eK]^hNQyd ݱ(릒2w ҳ] 2"=%BHv# 9N㋘ۄQ<Cc8de7SKvR=~N~K;ik0 ]"vo0F`FDBCY$H9꟎\~w8n2L0Y/?v<eTgc}>rF ȒoV")0V㕇oSJ5>ΐH&/GwrXy['r[%F&|ºrt\ȃ1%iߨض)㘙;/w,5cSSve"xP*.a<&+MІ 9.̞fS(6\9W`+Eo^L曡Q 8U< |jYҋ 4 ݶn9㩶/['8Bd+Sodlv'|[P-ѢV񋳳UKJg"G_K\Ghn:R=s UMC$&anIXXX& !du ,ASq0 E jX j#f?d/+>Y.!ic4Ԑۗ}u{r M`qq{6 QNѧWA4Q.[յ:qO6x)!猝a<{42:jK3#~G4>,MiA%A+$u)Fh m!cKO^=h l[zjIgw_+ !$Ca0+&1u`Kkv43#6yAXTӆ&& qgit̩ [mʟ{n+@q'+0ñ;g ~g@!GzW{ k 4ဒEzbax$H*Qȸdz$iO|QF])oQe齋H0H$B 1*v &#_Vڞ@3 0޵H q pv~jD7skyS'S ;`UJYڶy}>l. a cT3\,`ˑ)xV+VPMd^Ӕ t$EzFe^U.3J*<^Ͽ6vv=C?o^pUrz[8@K_:m3B>$Vw~Xe*kmŸY(h% qN(V"X2ROf4"ڌwY/U9O%u/.@h׵GqĊ[7_I2m13m <׶_].x<#صK2AJ"(S.B9ȉFq3_<^Ai/UJnLb|=`>S.=sbQa/,GDL26LJD MN-D>IL̲ֆWIԭ `*Xup BC՟$O` iZ>p);/[MObSG /iUU m{~Zg¬Z4?P ׿az)Mny^y[ $M3W3F1li̙@kf%s;[gXHL.mTrcujXjBnh y1-X7{Ww,cdxÐדrFL !i`"u@)5Ļv@*6M\5T[A7+4 Ûo7#me΢Zt4:F'Ixlævwy ຜw4. C+#2޹չQ#!mcC(޴%G|4oP '%u*ԷasVwl s|n55e0oރ0ŝZί.K7@Qfjsgyb}*eeVx@(xv (s0 U?aڸմvA0 GHO}qӑ^ 麼"V%uHtƠ/gUp&9$)Ĕ8;xdjnvۗσ*zs=2Oz49W.^Ha `ʙHocT5vm!' FK%` X)'vD\u&_ 蛝NJ`E lՅM2/K/!nsʂ=G[W}GL tۚGԼ6X⏮@*bWJmH(x$9 o ,9SN)I lf5F69)px; OZhU?o @|}Q55xO okpTGFbyRfpEF~(+ A9DT%OnUu.tg(`2& C7RhSpl2'!#G2lvcc(v(Yu:IN&#@5E':SfDCq ] -@T,hvSxXOeTO[8YK`:I%@=K/dsd1q HKR+ia I]弃s)F$yǼ߆K^x\}5Ԏh%DW[8zqv[,|):HEX:xFtRw6_b uE_Qi1E;{ťRAMFE6>,_~V";aT˷qOF8^F>Z:ND7>'ʹxp*~7#j_,TkyZ.cCBbMLS \S{*;QwWþ~lxS1)Hn?DZ}/s3!^R' q9Hqj`HBkR7H7ƛ3&Z+J#Z H]V+tf/(Ri{ey6$HNvЧ+]׉ czǂdYD w]V=*ߵS xEYhGWGՔϜfX6sSHV]j9"6eF>*Eij5r S}@QI8KOFϿ3hU]BۛUxAP}P^w5$(EI8GPq8);}GH%y6 +\Ąl J7v,#ܮ k/3/EΔ W* {crMA!O`&IQ&l&>􈟍Ʒ}JL'GP|rȶ~anY ve\'g" =c\['i1\C+(;FRǶ<D-o t(mh}%~YvSD&ofEQdr{ 2 ATb~3P mpX-۟ݙ&j_jW,\p֏q`u:zg!;5Y2j}(|k.h1$lH hΒ!7-{]h_ӲaIܑ{YX E8{ɃjHîߧHYf &{¡24Eނ+|HMAr,J)э>L Jz' aL>#sy,Oݨ. h=C«Q :z k{݂b+J? d` @K׀߲(}ߌac=Pզw,vJA&w!G⇋ϩw԰* 4*jҏhyqs Tz'T(#M958X2O/: LH#5E }nV)@??e~]ӦrSP~Zi'+-|Ÿ BIavX.SSI&_ 9`nNgii'QTs9tt2u䀘})W&Zu~̑F ?Od"\,ٰ`S1C)˕M |q:FSVlWePퟟ n/%ҁIޅ6̠Xdty:|TB3ҥKiZӵNbTiiּ k1oک Bg ^pG.I m2!4b;&Zoa}JkLE}ZSN90:+ ϸ!QHXh[a\vry=GfIk*GD$sv独㐷r9^PC;l$4dz~.t(m 08 Sj)WHo>$øزG*9#;KŽ|>ݣNOQuJFh6@V*8XHq u͋*FR;?1+2a'ۦ"W>t: Q`XN/Diz7h7C&C`V( ![5CF[Vy Hj~/i+7}ud#ff|DsލYwԴ(>1h03 \0%ph;9+Eǀ%r3HZQ*hqjAC|jV_  I/lY6Ϙ^9LtŲ*}*F!^^۬mok3UI:M ]Y}F£Nu%K@~`/)[3t:,ur1f ;H9|3h'1xV߮8j^19oҩ&zC6}Nƒ\YʶA0a_}B6ǿ-@WT_%E}u\QܽOJRVL>hFR 7}6K^ˆOߢ^Q'6n7Ȯ; klYQ Iw,[9klT/)1zeU l0;u $JneѪ!nnW  rũ'˪UsfCn4"h~GqY霡qdʿ>C@9uG آQIȖUF{V-?ܚy[ nIw[K[ÄdcuKͷr_X,zn[rX0:yb =Oh@z,:b($ar1i%uu';}J$]&3=(xƏ!į2|0cuFHȮ\ ]US䗿ޗQ)7RI%'0sqWK'D$JDvm: RE}IxiȒ&wwo9f2 + $xx43ӧEtn4DC3Vo^0 T2b /gic-nb+1z('2֍J_.ѶX7էr_L,m휙FOy-)dAN ~k#Vy'xF\<Ap&=v~`>ܯo/qU \~@2ysuԶ}4D`@R;H>mYZxUk#6>YM葥rrB/%0t;I)ؚL4#rYN-Qw>"f}[?sӠWƞjॷڸ=VAd'cu%",Ihh)1URupa%c+$:*z\Ʌ=φ8*T[9(ec|P]gk  $HkfR=C&.~Ao3EZF2汙paUз jBG}FBpE Gu~Pӑs^rr:xM,2!eAܚ2&hg]2v``(SH|WbC~a&0t>+C3sBL2q@cYUR.l,y]~2VCXHNObL<dbPEӷ-r 0F9H5,þK魧QmKll O!͡ ?|hPaҫTu0q"ƎJ 1pQF`7j3}7 V_%v| ~rԩ֟v.MMO ?ױ&զ3 \3{ 7jt|uɠʺ]2Zxbj'UU+Pϊ[N.xksB_)h_ 0%bԊ-|Ǯg0>p iY>dFZvXPgY,GΦ$/~2}1^_Ɩo.q92GC'T5.Pի02_|%T;7ȧ:uÓ;/WYK1 -ltr70hċ_b<1;k)b.%.yiuF= /P2M0rހeW^>.\+ ~XpEM:ۓ$煿~s2\yL C\s?j+˞(Qs1z)>&e3=T 8kN6W r$JY\z+͂I&ܤeJczR\}[[dG7q sPFmRr.&`gY1xe6{po=+6VqМr4L1ՑV*rS`4 րA4uުPz |D"oT~uYeqjBOgm"p0>흉sL-1OMϬH$O bŭ~Ls.K8Aq7|H8B(؇jl?8̔˭mA 2rʳ;4 .`^̖wK^c z+!iWy05jp3\ݫǐ8hAN!L(#89V d7T)?6+d5{njp:xxKc ΚׂS z>tP7_JJ@Q~0 |TU ^UeL}$޾f{O+dO%!W˔Iw{"+rI.FJ7{B}W~f OCb\DH5C"g~T;̔ofcLn-[ZbIN6,MiTEǤ~d1@Ǫ 8璚{c÷[bRaB?]1xeKǦ0V Sr;qL^0?O_]"*2#uW.@&AZ-ZЫq=Crѝ-weu>+d5,ZͼZwL. FS& -ty[?#8$'tmʪ|3#[]'+Jh7v1GqDq\Oя`Ƭu8yZJdF9(0X]9EKoE dz}C?W7Rўu+NNL0O-CV1t1u&nߐ˴nn.] /oSFcalDo&$J40Ilo z!*mY{QD-6pkک9xIZטVTTȑ՟+(}b3ŀl  x F=w*>!i LH7}|VGN+n`d:3)%^YuVXdAsݮ 3p:y2mߟ~QBJn"45ʼnToQ=ݳzvw`ُ d" uhNmN?loNB`j1V*w?hcq1ۣ,S{#VXzeY񦕬1;fIqŭQ;si]eCoБkg7)|$@oᠴ60]b"\N>GitTX?2_U 7 :} " ~kFS+ ]2 Y\7oo$I C h 7v١Xl/٭/T/7@5׳\ʞ$)Cg0&jC:2xw y3:Qf3AIaDT+we" ys dCQJ @sp7 x:EtUbw_>vXV p(_m1}{v Ɋ3hX5K44pK!)zF{nED<2d 09Oe9MDGw 2k=)ݸ\o>,3Gk*ʔ' sCu}81KP4#ǀ]c6p'mN&1^+uV}-]0G%\¼Te(͞B* mJYRcG'r&E1ZђRwmR@ԸVIr}^vV23ʱHN5/I+{{l5_d?R=f/Hj(HE/*8 δO 3{8MOS5TH4lD( TL2/<9]=2%iBNJνc]4\,N8+H"߅P-4e}+Eo}jn8 $O/πvk+ I ;I&dMW ,faCy7֦ۥFV]4 q7ZV:dߙxCxQYPg(> q/6Pg(OZ:[B!dRTW[uR$TW*48_t(ŤJ|xIip.T|6t2ݩ8X)#hʼZǒ֫vASmen}l-=q24Ƒ;j&辈~ 2)bj#6՞nڱe$Ά,D6*$$0u0qQwR`2ڟ:j~3tg~=F%왪тiU;Sx\0Y"퇺X5ۈƎ}72Ƕ=!<zۭv-n[Cp`hWBw0g ')+h_/nF4nAOAyN,0:.웻@tl8dnaF.nm C/axV>:dپk"TYJ/A>͊ ˠ2/a6'X0b'ylm"4IڇZ5Jv&2r1gGk񋼛bF>-[Y")k[ >Ÿuwx Es;39ai5͵ 5U(8GLJz92HH0T [/ߤkz }b)>rGDqeZzki t?F 9_zUt֏%)WOÖ}*_'= $$P?\fNؿIց,jcc3?yb"Ǐ Ѱԏ# S CZqpg͉ 8OImކ`?:%`Ojyo<huݷ0J?%@v싆V{SS:I/Ip.Kem:0;(bFpQ!]>=佖\KŞ 3W>Y],)OJ8%: 6DO>}&6 H~ke+0Q[W]9,b | #s+V[fK[i gxdbYfJ>[v؆)b;4HNk^tڶ;9pqW ?첼q1Ξ9iAV &u Y*OV|uhL+*AD]J?1ă1w5Ձ} +ܦ+וhsKY\_ƚm?_J*RrctZq=Z=ϻ=?ɩcI.C9XRWļl^l{NRU/~%9O% 8ʮa3 DuuQ,N(˓*q3t i[k.H<>>(S0'^<HXfAP&QJ0W6T5 ^+Rl(B)_]uWP|qy A'hiHr7ܳ[4( tۦTU`S170CHAAi[ӳ5UsU/  8 9(HteI" ;/&NҗvOv[u'Ӧe )7ijc5O\L;ZCB\0K #WYNWk -:Rℱ o@PlN |RRB}gʵ q61_MN#mz;~,)hM݊Ts-Qo7+ŦFw5/ۉy˞OKg"2GѴ-E.9Q[r=0)1]+9p]o0u خ> KԟC5^Ё^- 7Tx~Z5$ Fo t)O)!>:adڀlgmh5 R: '-}(;w9#:B|c7S*UVd,E 7B>},{y_B mŦ_Vo*j/|.`N> WLja֓kt_HrU! inz| m ;O%^&@eߤ6@Yk&dgǵ.U4'D!&i-^"OWd$)3uhXgu9Q2e 3[qO#QΨ8@pnP7/]l?wgnWԄ-<ߪVT4φ\Ŵo2~l]yG~*5E"i@zӫc]XO_mGf/<b;Lea_RSOqB(8Z]9CLw_;|.rM[u]\6CWPKZ8ӱ؅azDsۀObyyՎ@fyMǜy?7ug9 feO|mc6^ 4i߬W|d.oU<;a˴F9gVA peXp4Jold{;3hD' JDYCcDr$7|C=jm'Oq_ C6rqx~l{4(IP)-ԾcoafZ%6`&)]i]b.0›:W !tRd{x~XS'',;ۏ@D:>Sw{|(X'˛;G+>)k/ˆ43ݟPKp|5khZ=6 ;!m#;KS0gGnAmq=ҝFP(##RcΔńكu;)*>9,gx).Wd5H2i'bkxs_5NmVHhDy@ ^lr6,_KﺿlM- U 3YFV-L<#~'XZ*DF6ꚤ;Is?^Z\˶D|,]V>7Z@4 O&x&i#3c I)S!R5.IA*VvbG͌R}<{0+}Kbg gM?ç ]d ;^p+Y/i l?"VނϟsȏS2*CŗDYG w?>Q;r7ithy q.ÖGZCu'{ jAr9` 0<)+̺U+jΕzo<ť|BHA\UGT[ʸ θu/g)mbp &U7nT~"|\]hiz9-ĻOGf^ܺPWjm p黏65*&6j3l^G3&V驪{a* D2J7TIbKayυ#bֽZ>DG*5e8h_{hd{#Mb 땲T.ʋ#|=W⢤g:@:~}.;COH Pq?X>1 ;ow~17 9 qJ2n,DJW6ﴩJ`-zqR-n|q/ xKG.·^N84&{@R[1rhqJ^i̺|ҚvHBתdle(x$sc]îUtnUE{Lzp'~:Ǥq#"D 9krFc|.?ڐS6S'+8d~F+OЊXa4 \R|n'n@q')s#{L}Qarp\Ɠj>pB _Wցan, 4$pÂ̍]>5! {H}e<4_r`1 /ȁo)AA6!dH>- k)">RF24喿h:>KSd1_@dnV vd kB;E*mG=^X6/ wi;L3-\<5b8-y2t4*@s4./ -kGNb(VAhB1zx-MHml#Mm>QO4C`Qͫ;$E,c7߻ӱ(סg(yBv+lZz6|FDJ4OlKZ{.vp&"mp5Cv}D͜ W2SQzGbY){ͫ_'/4ǖod N?`Sapaa݆5?@OYE *Շ6pW py,{;ڌt-bɉKn`JkY45 ~MW)iÍd gZ >>EOW=vo>0Z6PpO'2(*v?qI ̻ȹP A9-y42Õ?y6@|Ϲg??&0 Hۍ+oXZݞ ⩵ h:>]oti r1V @!kQʌA33:y줕z1/CTTTL3JBNbTR`2=uT{ :0&o|)JIa)B!jЌ<6 \&Oz˜%fE;”IǫD7()3%,1/xBnY[@̺0I;T5`PDӸ`x${ }il-apw'r/HN@Q a^,-jsZڀ oo;D+L-1*SM &(t@ܮ)Ei;JE;Bc!6LS/gA3qprO#CwR0Αj"m2ig7`.>[u ZG3VOAጃ aZӵDV.0l KԵE]c1!\{=c|ӛiLCE(ZU& *X^YvT"V?H֎Jy5_YAtOi>ҧ {Ln1)3 JVr|xtuX ^ t183uvC7 oK|Otl|yʵf-`C(sTRo 4ߘ-f܎h99brK&) Oj.ma[ lzm}sQR)A{~ЁȍpJcr Ce&)I5;aKt7}(w2z׬cڞuُ=Jh]WzL>1~ڍ%n;_>I^r0ᧇ+wu^' #+lދπ}]($GcOhWӞb[3'2P sM bDž78^*Ny}/J@r0De +[i1VEG1 P+Mh.>>T=$9.Ҫj h͔j[&''r$h7H!v ` YKC :8 /lٸf^zWH~`rhJ)k@oY !l~۵/AY1q~r|$`{ eDDhUHVA; c?VDx&Fa ;zKt@>!X:ه@3z*s>3BB {gp ?;[ڸhw%t$f/ } p-}[56e}Ƭz=ԕ>uCs_ͿBUX㖌PU}r 6˖'-8{TIhg(Y:['Zq=:C^oQS$hEs8%U%}Z:B@?˟;[՘d$Pn1|H0Sfo|܏]AMEԽ -l) 3G˺jG+f~&nYh'iKi'$u55~AS{Z)mR Lh&4cno{N#Be20fK=?/жV>-{3[h}Ib):^uLh<1Bл8DO]Xv^e&_N(w[s̗͘^es t*ԥs藘ckm_+iEŴ!gi|Hܐrh74bw o2R'<1h匾`y)F򊟳iM)gH]DzzaS?ymU `'CڊF{K@F4 -t,ᑔZdj^?+et3DjcvBVB%68#N[kܨ݀F3+降KM#8{2K!r"r1ziS 'o4;8iVOr"_J~QNA>cc=}%u]h%ѧz-Fyܳ3fZ/󠝯<KIwiuڈ)AXgcRA0 mP)WB1ds;EUP^4(xaX.Rg`V՝VFTr8܈B#zfWqϟ".1DR$tR ?V8?bvNW\OpxAEp!]jGBqD㯃hMsOg86e#!=vջ $y)zʅԴ41/Ρv9quG1ΦN5JE<$['V7m$/hX*"7PYT0` 1#d7~kIaդӝf6`x+njI۾.F݄\j(TÓӡh9#CBhz~iĖ_2} #qJW2q=X] oǑ02ѫ&56,sE9" 14r&%z>}7ex9e+$Ů9rKD1{g 92}֧ń+ǩ:YPyaCY?I 6Tc6\]'(,Ed63Hb5!/XAРG9+UH9)#nyQ* H⿑Yg#s7Fv#Js7Ufl}>5l˵5$y 9yT t~S{\ ns1 eS7TVYj=Q?-L'/#;پ rXw@3懯Qh``,h_Kvo dr弗* .R) }er. ia._K-m;q'lXL ^?\Տ7BC5Rv(I6J9]Ps\̑\ҢVHph@)V&L@L@5v~~=Wwo]P" 3|>)+:(tL%_ù+yS*HϘZg)S1t^\@TJI$1:-u~b%+]nw*/!ZgwmsL'"(^߽YR}Q,~O* VdKP :T -ކc_7y.rA^>&cɍ="MIÄo$0)>]q|̡熬 ip̹Y8 (Utl7Np{MmRH,MwK KBz<)W1ZQ){zBbY)<zy @=C+a6҅76 ԯEO>E>ؑm3KP_C: €}3t9ZF\pR3Wqys>@Tj{7D'Lr^!a*e#(+yGޢvRH[aOoV?"Y##Qh*@[ %.xFt\l!AenPI"K9DU8 uS(DO'~"Pf?"F=I>(۴!\viXI7m!FIJX=Swk "ijrcŀ ǭo;w1 Ki[o| DP"x9{ 0VS6E(JW "JЬ;EBV6c#N`V+\-a=˵'ZQk_$f<[td(W?/5+:6g=t5L~Z,nM4Й"@Ô6~ۏNģ C-E&T-G8POYYDs?]>f_Kt3˫ܢ`uB?f'JnysE =܄\{!bA9 S)FLP"g0%&D tmFpweT;pd\)0SOXmhϭPUz& KF6r `fm|Ǵ^]r[jvǂH,̐o3-f75zPY)S%YMַ "|!+4;ɰIGXuC*p:DG֚.I>ZLބ-x>`E-ƪg` 0mɔKP2Ys#8B%7i /?±JbfkxO^+MI n}Qcr\ tm4:d bX>?k_Q,l*>߄uE8,Qv8u$3iw$N7pSS(3WCDKN] rU/MyI2`a#,:=]_: Q}$5jUh'Fފ,ʁ}^4b)8?b' &C Q( '@\W.)7zroF°4kG)oj9錦SkPRP-1ۋvr аEI1wz@%tcB0c$8BS&2PNkqȹ(Z,IS$7o#K&-nث`G)* _6R345LRs2`i[8~Y,jkInȉ%_̃qD\.GHPSXKzN^6&֎ܛv4J1-]9Xgn&Hb?<_tڻ_ 1O҈Еl͏$mxab9 і%B!X l_гmi^bQE:DI+}S %بu-P;@nw6q( ÷/]7W/ƻ1w\İ,ęZRlz,%z*IG?#\CP9t-9 ?:oK-iqnsP帷 κ|1Ie5^uK“>=-6I8JB,xbؗ]#ݕnsxb+YK嚉 geeG"jGkK AElUt!FAVgdJ.,v쳂j_t =aV=|L7X٥HkT1 GZϑ+~ YM߽LRJ)Z37H}+E)6!4ߝ? 1<&\yA0z.V:WнU>G0V9uV.,pevN#3<ߣ]zqN}Ӛw5.L:U4ʑ|:X24ǵG9D yx @\r PbA~!M?M R MaT"46:ZJl X3:,y߾*_L D>lٙg@I+бhLi{N|xωS5i|xݻ_|sNRtxZ)c>ӹ;`Q3!]톛^8b 6DR%;0ex +|ѯҩYl눊;mK:V#Z#w馺-t i.\uwN/BU0Ktf1:]x ͗sف4|at8.tLg`xeL yxl)7NE$-BukpNᣋ228a'pvrkLAfmt" A_H#GBVe;kueh|`@?+,-3+%L9 U5uׯ h&0I æn (]jag_b45S_ n/Yh9X: Ӫk̀X7])iڽ}0#Wh" ND˔=x2f%g9pi!I֥Hu}X4ʡrАvLC͢nu?T\1!;2^I]x<`[~9&+ۢmг|2APN]2p2:_]o\+dEryIbуݵ oAփWj|Eiyuo >`R@luG#* E#H1pWihA'I[A֗`Ѹ|RBG,BEQ |MVCC}@!U$#TCʒȹbʍ hPүZz$} byYlc1#^VIIT#{zjʪpn'iGAק,W[ƌF ^f1ڏ4`n-< !`ak4U%=QP|\9n0B)Hm4P%=u|Ԕ;I%ճmDKIeW@cK +T$0s};zQ2.7ϗUK]rkڇCiyҧ̻;!??LI)%U~hIScm_ sMUU[/oEjIתPc[\}O>9 ?gn䴻;s@PU}~܋D~[φ}O]LyB׊Pg4v0\K,,(e۪gihDU6u욇x 2ƭz|#_G2YXܛ\;=;:J/Yb*`QVmF,Ŷu#%qgo1PVK$;mDFP ou o]m)?8vW+%]lrX54# ڡX 'r8/2dAXjǫ5QP^S3+ (DohbR}O%̺R᪣c>ah N:LcbRNsӈXS$n@2%ֶ(rM{nXb/3J~#uFs Vtq0&:_"і}~f2ZYrRPڔdT8qLvJN:fCOo-W: 5O*E} 3}_u袸ӭ1]UbEXlL ̦>ui15p"]t>+fH9R2mȌ]{QX×o+#]ddW1%T+Z~Zi<$\bZQCl'`J}wtķv]kq*Az=b[ z(KrQJ aEu~2P޸M~H}]1U ӆN /p`T 7Bs}p:ɶ+qDfJ`%R-^/11F n6~|Eht@oG:cO? {ۀG<5He6R"-_&c@9iGP0gA,î&h`!5ލ!hґزNXGQD}@{X@כ.Lehйyefvśdí`e{$))TW=Pӯh %Ϭ?`pWNmGMvS\\Cb&nL3J8vvd$(o=`I_\nbƹ')J>L^lȺTT2$'Hc]7Tܮ[r+hfhO +ޅ+eƺHi>ĢzQzIawz<_:_;^^ Q:Sm|bn 62vԯcr!Ohpvm׸x4ѭ7#c=n6UO6"h ;mTOL9DVJ\CbM;qsۣР6@ 8O+U|ql@g_c'-PPJ_T,Z{_44$f(CB {+wsJnQB_[z|UG5"J.Y<#JdkISELkObR;ی='#ïC`?߰qTSWR ro摚ٕǀOBy أ]yFOuNzs ¦w%~3 V2մeH:Nנʖ!G}"%shi?DNW~fZ3 x цi'(F#u2&QV /- QW+U,`WFk#-6VXъ'nm{0tU{u*JRC}tϡDF7UHi2 {GexYgj,i2Qj)=UEQ8g@NT:QռbgmwKϮVe?A*02E NPVYgx7~X0Bז 5*K{$yvp7_ij9?j3J٤k(J@ik>چvyܪTvi0XNj0p% .2?"ih?27GLn-o3'Qq~tۓe8y(DqK3r- N *af+[դ\p Tʝ[ ,3zBu_hOrCa `;Go_҈OZ:wJ{nHjߞ˂ h@C dž˩[!GLMQK+VE a:.y)t2 +!/|ﺖxrcQYl3I[9Beiw Gn8a8[5UZ6@fr9hX,nB.́\Ci}8W/UR\=ӷ4n53e'lTҹBi{e j )2vd 5O#p(ܦv/f4xvgUBnvMaA+\_yC5m%<؛ui̠4EFÊ5gə-ؘ=4;sҽyua6yA<TuJJYx7/ւD$E1\~T ʕ0_};u~Ub2*C=66JX+q>mzXa;Nqe0BmD64&ߐkw$g]-sGd.rgKQI/PIn"O/D[%? .evF7 Tofbz# ak|SMw, Wm4 ߜ<Aa-yn#P>sE\&h(8?O.s׶Քkfq66hH )+A7[Hs,lf^wcb:CԸWt_s-ip7.\oΚ@Hx 952oĩY^\uJ^Lrp"wy9ds+!/ֺ[=}H23Kej-Z1جoG _#N_lאn1 W{-c#H~[F[UB8e ;Kn1W (ƊI |lR3x%Z)tFcgMZ^7DGB]8@CQe][Mwg1rMwg rdܴ|>YaǢg᝔]e xNc7fe:4Q%/n/~:( ,"F'+R^YgJda?S`bRi8 ΅tHd{y䔄IdABYI r'JQ5|NC6/WW)$"wՁyNf41%sc?.Fb/vz+G`U!R!k]ՍbwvMJLF.ϯe L ksufU]f6oc/F#ІyBCQ.|g 1Gycz#ej::Z9Do$Xׯ e^`caBj=~hAg*+ίFZvMoo5W(?˂©?R*ܳ= EK2y' aϕYp*PӭK :)ҷ50nAhŽ%}Uǀ K\{qw@ybc Qhu5) [読'd?6w`/{ݐO ~d.+rci(7Xp0_8|҄$o_ ӕVsp~ȿ}#V0-,|3VKL衑1 OTkЗAWtz,%?d$<3%5M=cCPCJƌ+S x)=xalRQғ N_v*xrjMNLL 'zJddM )wV5%ǦcFOg=ǫϧY_mH/1>|CUјC"'9XEAf\ӌ QR*]9 }Cky#$ Vە¯WKV+J4w2mZL!@6I>rnFHak-W^Wsh!w0<}׾U:⌾TIPm߷*DiD.YҢMav]Jh2%W4/heq< 55 1(y~"B ([_2؃tUG7{-mK[pEǝw#z!T>N<\_&=# 0W(jRb{GYb5 Jn:ej-KE 'jE l1>g؃(wL#TKA6haTD\Ԓ˒Ki.u"p=.˥mjϪOeô; opH( KpWjػRHr%E-FX= gdf<ۍ0kTS˃T*|iEڗ`H mWdBsگUЏ$sA.aIpޠGIxU6A&YX#@}.(,Z2vXz@"ת@I`٫8xNfq&HTzF> 49ꁝըjGFrXp7WY (u36|q72Y쀉ckrYҌL, *4<oRG}PỴ.Ty+~ !1w! ۏ35$O59"'B9,J 7[~!4ɑL5#M[0V@ \&z.ÚЊ1Ke@'O0ljQ+^Z;/Dl$Nϲmj} [Q_iRR> -0kpdAaQ7BiHw〧;I x=Ϟ.!$BVy*sn#UE¹pU2'K_»n>>Lr6jVVbma@]wy'_I}xS>Lw=ye*[~E!hv(eYo].'sD_\*4i~~Kyk3om/+Z[I= 8M'L;U":g" csQLr gU߾c_ #\Of$Bڼ,$r7;ɒ!Gt5Eڱʍ\ҟaXM=mdWj',| GI3<7n6&+U )\ kd5:R˳MZȓ04tDe<_/X 3[>o 3heHJ d7F[8yWணP~yNP5pXǤ1^i*]xZl^YĺxMNWE&KH1T0 ybz-p$\<uA}%6DcK  kɚ=r1$Rv^oT 3\ [M2R"pC=BԘI=3Y^ 'NꞤ=o2dzGdWWwN͹dm'[= .>zFmW!QO1}#QHFP9 r 2ƽ"˳蛴㞚ms|'b?N6ėd:~E=;ofm]S4$%N(TŵqO_G ;ds^F Q w?~w .È V, yLR`;e;CBOi}P].ćQSZMK/[MHGpFvrE`^~u*wP/'!4 |*hнc@_Vj9lY_udl SjgS(@QvG"jN!'u첮}.oЂؽ9ܮdù )(Dq{~ȆH 3C1g$TpVa,Y5>!]ҬW\Lg?~SW2}+P]vM "6 WpFx5rD7M? ZA# 3wy]9xm ӌYXR]Q;#W;HL`UXD&k'w>l*| \ pc$KȖ2 4 ZD``mqX_"" J~÷2߈4R Wcy )Cmq͎٥f_Q?̉y њ^;Jb.0VX||пfj R\욎+h_9HXpn4]ֈ(V"B+S@NDOڥ@e灑Fwp#,`50SA7i\(DL{ mf.Ws*{vxAAC:'6^6 G=/+SgӔASun2$ś)dz&O'ƹ/>f!УV.`*O*v\OZxx|pdNzR~V'~UFe;`ܳqGԳv>7(bP}l2ľ 0N T, 20(W'QiO!oX^y&ar`uCjᅫ-~] N27D_JXxA S=6͹o<}&lFdDThW66-Kf`:>ihQ4nfz7Tn*QP3\9N,B@j~,廟k[t3r0eniR︟^g} OZƺVriYV$t ]Dy.걻r8.E8J\: =04㶸v蜚6{_\S=Yq/.݆]*4pFOӚe߽#d^bo@lUf#:2=Mmi>X}X-Y,BiIǚW F= [9P6OBdo^̓;o #ZI'МVevYL 8O0l%VSƸs5^kD@v!SY>S(+lh6)NM8XcWYV^o)|U-<#thW|^ V5a# oۮ6%][6T}Sp./_Ai^yli-B-aeץ@֥]m@@v !LM' x!|'c_b' +C7x-I?H̬05 pS˺^"* ,S/`ϮKmcK"HOʧUS'(. $tֽ&˳i+΢Q v!We_ڕ88/8<;Ly9hsr".;W|0T.*=s=Db:i÷iDwX,GB^&p/92BR92*]S~Q!t4>pgpכaq໎O])yzӱC7l^e v}RXρ*_R_z8RLa[Fj9Ěr+v(#s! j#&W7GMORuAWG6pjڠʘXUI֤wҖBwQ/G 6&7cLF1!w݃BMwsc7Q 1zZQ9$ FauDY}5}N` ~ĔpGKt;bk陈ua? + [C$ILt*, 54T4YXή.ZNC)ɒ ioBKHlsQ0Xq6Ktc&1ddv9BerIg|^cj6{츛L)cH3TK[Ja{^'X`X_h%r5ę%SRwd/Ojq!1ZQ0TUUN޻p"sIE,!my XE?g-B}Pkg-}#~BðdU7-Xc=o[c  ɡgP"W6z,>׳b&J>=T7h FT@; $Qc{*#jo0%&!pVkѿ0#@[`n,RjU#JD^z'o-bCkk$jy6PY`.yd8JTuOIß*|6'ڠUgSe (cO/'L9D{Kö\s| hf8c0[YLDsp~ ]o~\B:r+Q/>qG6J祢mo7wR^_tT IrI\/+ ^*)XY)_*)xZ4=rX#ӳ> )ǚcaȎ jL6|\G2d.7Ѓ2 9k(3+gC0 EԾ:*h:-HvQ]3yv~O],:/|?|[>l"J`O'xUl+zZXMlX$32XstFY~ڇ |lrWt-w<ưZ9{-Dj&1VjE9^܄G^x*gP#`H :̝]#E꬐,gIiĦH$!ZVRaUN,mM0׾n "ի3m\9[s ^ϿU0Đ #~p&[ͬUVOɣi ^ZB{mcgy`I#OC6s"ͺP=L j"~G^iɥ>(u#ᗿRg+QxBOlFmߝw_'Ybx1P{Tfz;!]?6a+7C$aw 52ڨ'ZDzplyq㗜25hP 1i sAUk^Hz8?9RDo;OtAOncKeh5:yYrq"=^9U^6},vw4w(g[Eenԧ+?~Rz> sC`ʒge]an1[`q"&JFiR y%U<#8pȔs4( -2 r/2og)Uo&${`roOkHkbp r%<,z,?k<*)\)d8tsѽ1w`s"J@ wde-$wҵ+H "C]&E``Ru7 ^~%W2.MMǒ&%!?BoOZ/+$֭7 (HʐVhVX؀*N&AVm> "iGy)҃%sTgv ^KBj=k>E/X-| ${jX,oTj+ufkWIs4na oJYJ ]:R ȓbx4V{>cWL {ym$S]*/jل!uHO@Ȕu .(toNx"*L@򜥠 fT0F^+l|wb≚~޶r7?Ԥ+V]k{EL5[  qMjXY~rk{ǜ#z^D> G2sBT,KSISIgl{2tt @aN Xv䪃cʰ&3UP(U@)R-(+OQ)p6ڜU^dz:H]Q[ vxv%s`: UГ7CZv7I]e-jۥzn6/8TYdY LȬďB>Cl!C%kSI"!@ņ:yfٽ"`'!Er8Z& av Pb8CLe@/JaJ8F]}E< B@S>QV툻ڟ>|D Ǽ7"R8])fݶ r[# `<Il*=Pyf0°q©;銇d$ޮ$|A)bc!92)m-G`y<ݓ`EKp曛?:g>#C[Ib\r?Z zkWU>3[~ ,0%ܲYf"5n2Pv4_x`-A*ٞ`J3|m%rr:z^e۝M)e> H׾{fNף>- ASnֹY _|RZk M ^cDL.o4CýX4/y'_&{,*[Wޠ2+<(k\2.".Ydzn&9xzlN:ir齋Ђb'䡮d1W`R}_xTճ4 %0ͣ"ɅVƧF^|zlt"0o^me7w' xm;l%XxaVB^wr\$7K^a|SR[Z5"{[~5xCiCN9 x|ug_fl8$bYLC aib_Qs\%8vA>$&M-f[`UEc] yZ-T"u31٬B'mEqB6,SuOf^ (9T@vq z3N1<$qӷJn}rR|sG)p}Y|" P{zHCmkӹ+ Ƈ %g9Rv־$0r4%%X~4K'f_{\$\]q#'Ԓ+' ox.]iHUܧFV"e[`ӹ]]:}o" HnBהbG" J^Ʈ.Kd支sIN|*nu{9?yxsPC%֡:`-w]""RʨLG3" y FB)mi0Sa ;4Cмa{{JǜF_fV_N-o;Uz?!w8qdMgf_!9;s+kC/PkOt%*v~\u$,Y!r6MV5Vteʰ\< /Q~XEcDptG\чRS_2ZnT&US WzL04įX%k\&&6Կ 8`N_r`<'~O!yryk_-m/3mo%0Qې7zzD$6m/fӜBJ`gN%瘟T!O+Ote Lҝ 1xUa9 K*{F꺳#g K%s@pʻ3W#Qf<ܪ(l5$[S*@F:ekZ;/l}pɏ͎(`-FaBmE>-EV)eD4W_΢"ؙ5xbuڔ`a˨!rHס=)0Gʖ4\@I0Kl;}pp1񶂢J`AmROv5ؼ0C(S/A|g8ߕ90T*y팍2v^Y& X!(E* {k7P]۬^C?8լsO긍 ^D-~gvrsPhN0G|k[|ٽ$`"W5gkNlu8]&$%ƂK<Q6ȢC$ 63'9sg4y  zQ]/ևU L\+)ZsęۄqqG `GssÐZj>zyTM9+mQtXAHMFs*|qZITv#1]zYЯ>>-9rwi{)CL% Ǒy\hFSDQ!WњEt<;+ 4+S's+W tCo $?.GEA4Qbz_r޸2gyτ`fn63!ɷ5)mZwY9JQ yQA` 17K^&K`df g91+^ 2>LmeFNjV)n2a).c> 4P+~ ͣqx(5&Sƣq m 7 xL>@l'ց=ՏjB"2,,x/cvg VY%Ǹ=Sk2ZteIg-#9 gF<(>˧FNv pַUkq]tb|5|p&G]%֎.#F7"8׺34ka1H:=* {ʱI5au77;$E&tZŚ@bGfPw$c>;k)ү<|ehdW DyY,al19^gglhl2PtEHP4][jdr "xtx4UVD^k58,?J]O'h(Iy^y2hwdh-f<')],sOc >XDG_zJmI~a6xTh6K@e}^ \+|"f~qwãhjYr/yd6hϩ12@bimIaIՅ^oӷUj;AiEo'<0 z *1>9,q 0K }u3gNG%r,6Ffx=C 'uMNKdQMgy@[JQ|eOs?=2wU`6l(-Hz'e dN45B4R0-C~jԼj -gR3O,Dn@RG`+Ly0fő t(jr1 "j*@ٮ5&'%CȌӖԆfM*ObfIÊUjEU]6>Z-𤝱ſ;riH\eG178c䙄Z&uH#T4WAJIZ~S0}Fվ  ~)W}3W&}w ,KV0쭍 7WÿS[DhUi">#+t=)%Nge?˹-p^_.Pj^lBLB9k,sDAA %嘱!PovUۣA'餃8fB.w v ) 6j7r f1j2!@Bb* hBK N(p5pR 뼔!#BM(S?h@0A{O X4ōC" `ִ=ޝTo:DyzRYC1罂mʿ`cpW9ankR p~1%6"]ӲL+ dб˞#Qo?|rt\~PQKo؞zsTlړ66c("4rV ޮ &+{FlOLmeNƮh7`}*a>=B+6 Ƣل2 U* Co~1va4<&Kd݈ ?wC%(1YQ%2G}#{Fھo1oz|J6P ǔ"GSCbuVy -Tv*oB[nBH +uoN`ۊ-ZnR$IB7+$"ۼ>3AXxf\˕̀aλW(P)Ӏ6YeB!Ns)?SxaiGvw[9S1JJ:yY< 05zoB^ށ7 x04].!ueW$MUرtgN>5/?7]cDgZvȻ6rUTw\N T퓢N35Umn4$(hdV2ќ6ro1 JN-IPZf}!F"_ťm]e;髐(tk,Џ[1wk94]C }~?pmeMw5^N'>yRRqF\b5W]zc/5­0@O ބ a]tkOH^kzQQԓӴ<#;0\5PP Y`!7;pǽZ ۪/;-e<31m 䣸K˦xI>rzWO{3:UODd=:9#|7?~x7 T3l>>u*X`xyTR.s+XP g*(QxBg'o*@*91x:sr-5pTH#FJT 2ݡgiܷ54l a @5?+t[ٺl? ,$o!752Un\vnCHm-;u 3Plg@!uaϤW$rbUBڏy7ܘXm9:نOs{PPdw4ڕI'!XP\Z x1.Tȵ GPfk T >K$c^xrl1V tLu &cIL }:#&%v"A>%r[}ô]VyI 6++4TˮÏe #ϊ>x4l(ZG`\U,tHa,g3ǛbRE+f(=⯗"O3\v&X`Iw |01j-Dthѐ҄pa(JQbNTv~<ݞe!Z9p>< K'dI`юD50 *#[VT2`д}fNܚ֏j_A8LՅm*nq5-$v)0cW7JM~e{Qi~v7P=FA[Th.֮*ʶ3Vz@qT»vaW֌ky[1 Hr6æ}_39lQNܕ2DO?t0NYA%,R-J9#$*2ؾi@.Aw6MRsc {- 4EA6ZWF5eK hK[P]JܵHGu_zh^JůyDN$!] O#IrL; F(8J95cfMGl1 Ert`D H a-&ǥ9A`jOj-tݓi/ jAXڙ,x̓UgY y > ݉gO bZn휽[_5G7. uEJR^ DlW㟲@` _4ksռ r {j1TAHK Gփ'>b@dv@w[mӄaW#c;NUŋ nl4ȡm}+>[fʢkJ=\4bl6H0ǩf{01Xӛ^_ît,zP f.._%\>hvSR#[z6M}Eތp ?1켆2ID[~ŀhW^љSZsXYβӎ\b $jۅUkr'Es{MW7G͕_a;|zM{l*FD!heistzTg $w9̻af{wGTeR620K{9 h#4Me|-hZdoz*=?5qdnRP?+hKub`*Yku$d h6ع&7-C-\"(ʔf*y/,K_z`x*OTڕnk}^/J [3m~{FRStWx*V_0 ^'!i I&rpRM_ v6h[HԼNJ7u8J?[LB*$-"/XxࠁRX2`\6TnP=7]^4mZ+|?"Evyq8d;.;}4T<9alG#j}dMw턉x|GI瞟7ry$΁qi=VI1`ۇ.!&?%W",#zq:E&GmWF3mq\VD6}ztDEsZzYHQSS3!;2EQB"g{ǵ֭&-Ӣkm'Ja]Pd,? Ov"_{1jrGvU:[  [ObJYMw| V4e9gL9MWjTpr3]5&b(HMZ?Δlɇa3^{gJlkY`*7chI6BgHJu3HcFA~Csd+Jہ/x{5%osP$b<zZN<ÜYl_P|e: 蹧a _=! ~D}m]d~^n2d }CxQ < Q@W2;5VDU}Px̅As0qèG` Vyֺ&Jtsi';\O&2F*y˯.6LW,,е8x܄|P}7ՙPyJ'q 3+oڤL /}O@Ϭh_ʓߐyM:쇵Uư ,Ah.A)-~mI@ғxVTSo9nuI$\mU!:ohqKiN/]@.xlRcDvW!u!rciv3ymsƳL)X;Ҿ.pU$&BUmkַCV!y8A\I< UDt/2:#!l3Px웝$H(1E+J@z-c:H{BcR8BC|-PUXWނF(XmZVgp:)CZX4,.߸E>%sk}6 NL:n{,W(DJ"EP*|c }ybG`1Vogɸ]J2vw6T*^~!&27@ï9/fc@B#nmbS(s/yar@-&׎ϕ@P@]V|'w!!0[Zƫ@k_;GR$UxOpH$1C'?< 0)B?-v&]xb)UU4k|Q݆ķ TxiF"zn$6J$\ v(Y`002Swބ5U P2<Bxv{%@'f벖Z.= Zwh2іڕ9:Wɖ6ߧo 0ńy9Sk<)sv5@:ܕ#*C$"{ ۪o29o?{KitXKr7|ݨ8­y`=5v'oygGiqg~?~O-,j]oL!^o_?m/0>H@L []WiJh)Q͙ V03@7kJ(0dg zCuA=Jk_Ӊ3 R߈id8HWxrCf)N=nxr^(m(hЪ:w.T'eطMXe+#ľ\O9Qa  z!;XrlyKTŇ#էS4۷׉7xSvl:}~B5F !K,Me5I¦=znFKZ"^|4iv]p'G5T58G24!ŒmHf73 q+ @˧ }^~zǰRg 6gg;|揅i'Ɏk7+}o{"+}|CQ<KI^+"c/sZm"yҏmFBscy(3tq1/%'hJSFBNp2uR+\xy~3ir y©FǢ02GVwaMSZEk?_l#uU8/HI:xOvZލvqۗ޼áB|:ٝ,3Gɮ53[hҠSX_ ;.6{]fF `Ц{IЯ9ZG{k/ ȓ^aa^0,P V^&,s=.]{|spnlFbI`oOQAPg3E) =%lm!(`Pi\]CM0[B b8Y`49*nXM׮EU|>)9WؓY]@62ϜupyK9iLz/}+mp 6aR:t.MW-*Spc%~DϯQ5r\~L:*[4)e[0?|,䶟* "A WMNXK|Lq+wdB/n^م;~{BxhseZ@ܙMRُS lS9>~|ـ˜oKF^H$-NA]K\j9Nr.X TF/l'o= EEΦݏ\Liymrtkk&h88D>c֡P*ڤ |&unhڗ2j +܌'Yյû &D}յu pXPUḿslU4:{&IFNf\n݆@IK"*zc\"Vlkk:QF 0x 3K%;L#!b|tg],ɭ*4r08(MD ie=ر.lÿDΠs.x<]3'^C s06ƊpB%dւ3w~θm> &~.sHbOуZa; n;xɟ ew;4$0Ψ nf|͔>1rb,91(B ;*!HJΘL_AI79`t=-h-V}35K|͠g( )&"ܗInGM2cYww d7cnvWͷK?WtvpˢB'0f$xUɠ 9IgٱXȻ{Cp oϗlL&E\:cG0gi[WE&z RUaXV/{,I엛2S"i0ȪMrNɍP}3% }?џJ$ݷamR ʿoOP(~ɻHVh>d"3f=L3+~GΘDKkT8E*]^;ذj ﹽ)}GzvQ #F27"|[ڱ7Ga茹~g 'ٹ}:!:]4 ~Oa'[K\f ڼRO>,`_}<?Jezc2#:-o3ՏSӆC:OZ R)s;GOojv`nʺ5Y7`׵՟h9uל7ɋ87fE %RH!.ׄe؁,jSO'1&> |ra"7LF([íS)Dڪ 9keL "޶8F?qDMH; Hk1thi8>%= ܠxtmGw52tp}*=Z̚RfU^^u UÙ_K宀 F-X gG7Ə sG~SoF2o/-{6ۗSO~?B@t8ٙ o)\487)usۚJkr0;RU5SBxM\]ZF ^y7 N{*5eaE``~/ݡm'1^IK"RbȬɁ+RSZ=y&}Sg Qs#TeÆQُ=n:ˠtP_1_M&Lb>{gɝ0A#zWdŧm#_iɻ+f9Yx֩1/K/}q p <1_ŎOwưtMMpvr2Q8uQpu 2Ʋ0aꕻ gTzZ54e3;e#tY90=JcS'zwi\[}*&\E܎ˎQb4{8'~)gAqΔpV{EHzL~uI(I vQ,ftP)NI_W8Oqut.!ՅF|{mT@4-@\BS݃A)Ώ!J%qE\85j۶(| R݈'H&C^uBm?Mytz }W/6:} r.6Fⶻ&42SmaU '.VT,'VUr$^Hit}A~]%mI *r#X&o;UJ%1~Ҡ&%Mjoqxkr,- ^* JWeR* us*L/ߥ$By/]C 5ePP$^196@$`2oAkQuBC\Y2B1 = !p[К8ļR]_x d؛ɋ>r {+< 4=ؗ3~U~h 9?=8.k͛@u4bGRYBj9;m.#{'DU߸kG^ AكO_$XoZ~܄u UIeT}W`BUOz1kɖٙUE =BiM QRG fʖ=)S'WξW_@D=Im6_Ӳ l *v4CC&@55Ь*K+5DYVYTF4ԀE~ѕd`#q*%;L[zQ~؆E"%HMI?4:3P12rʼnnw͈lEg s֙<5s )Cofm+HrɮR&OM*5m ioܯi`iw%z{W'ƱGBl?bLm/׉D!* X߱9ADZ<'?/~6'86dULLfG1ׁ+-<"|Q Wʝ!{]N 漖}| f /DM?I;> m'"iyN0vjڨ7n ڛ_2K]Jd֟5 42m@L2wK ?|P|B %ɏ0GP|7%bcܳ锼VsE>([`G/h10Mx3zl "{4ןtUNM`f*m ؅ V#N_}{"ܣ 2VxY}A OFK"ԏݖjME|KҠcE{ANycɧ՗ [ 8AsY47@W)i ѡ^˓Lcnl1M28j- o7kuO?e7GM'fzG5:Ȭ;M@GTBa nL*݃IesLcXq4 5C44VyX)8 .hwfG3`yvi2$RfrMEVdD]fbZmG]iu4ܙ2IF9j2TrCCHRtC,Rs&*˯ߢߥ{>02ߘe9; T㔊"ù3P H%$ ?Zc^YWg g۴D.R*Bf[0tY͓UE_^քB+3dbO0)d>ׅ_N 8=ěALG3&dcXgJu=q>):e5BrQNhyr]&k%,lc=z)Ao hcjZ?7H R?sYML/?!-KP> }mL"?=E}VVIhWVq~o(c/玦ꋻU<Ya4js8Rl{"  K8Q/P3ZZh;'*A޸"{BB?R;)ph3OvSDjb^c;0hU4_sDM1&N1|(!bRx EKdڨ*M'"$xKL/b\3\,ģ~@!r᱖\A:;o"H/?E=l?L#0\1k:Yg_,eȏDu(R~?h=i-rM=8a;,^ͪΫ$oo¡vԥItu|R x͔)yʧRwf ɋՎRb;$^'1>R ?2gՔo7$(pbx!j׵u[쎺4Na"0Y%h7g.@ޙJCO O^n`u^b8K+S5 t <1NId4פ<.8^yy 1RpӛL7f'1daa4rܒm '`zEW |Ol“v%0WC@FX;cy$|Y}ϵQݬ_/Rb9nlpN{ MB]*TYDP5UeuPFQ5 ΏsfT}$z윟moQ&" :H4hbV1u WMV50Z,qѳ}mdnALmڹVm,{*y5}|>Au't=2U*ԉIcjє E}_Ma<܊,ѴĐ, ۥoΎ&.#6N݂SݚsÇ+ O9Ɇ1;O6QD88Ҕ|l/'xg\"fMN fEC=?5;bcND3F/o4´S#C[H~ {AQz ^R /T`L"bӉ̭/2<zB>ݒ5Zad2wGaFo\E%H%]JYg,×zp&]Ag7tCX0pEqD_tB Nz8$1, ڄT\k3XKeYVNW^ysjlĵhQaLx&FBRޤ~ h뎉eCV )8 .FP &YM[zi(v͘xX^lI7ѩ:)WVba7g.3ЌmAU&oIE|䶥Sq&Z'~3Dm`G+d[J-KcoC6r^!NM4pdHn Qe 'r!@`SX\ī+CSIRT-!s0MC$pO "cCiTL_dϲbx~2#ΐ$z-7C'3lJҞ  e X^-GSBl\eC|`$U|)'bЖɁ/ FCgi7\?v+ω B@{D%VbP>Jx0RΪ[0oC8)ު.m<`t'I-rhsrD B{<و/ /܄ߺl^tc/Sr=Rꬸ4jFM*8(i"GFQ2a*~:e >;I< z)XMYiB C:G$/hU=(h"$Ϫ!mRX20&F,0C^GԹb5>}n>?j|~ A;fRgtRaD`c* _E¨k3{! QpJbvgm۠]@rI%x6gD+1DNl9vqRȽ&&? YpwxN#SF'no+&E,AL"cAI[kݶ|a#eps196#L0Y$n!t;_M?>W]s]4s=da2/J,e߿-Ɔ09@ {^Z[/E efLQOa1U\V۳$~7 -UPVڨz&/񙖄 꾜6NUAgg8 ]cz|F`¼s`Ιo~tX ;ΜNUZZu|'IPP! %R7 3~o =uW P@KwDP#gVIC`hGdC|<ϖ\ :L,0hijU feU E-B9(nU887瀎e;ewSsƹ5k,l h*oS0B55t8È긌o@/I.l 洗y%/J_;t.^vXuw/g9{W[#‘8C=soH~Vb#czDnsBƛep*< U*_G}t\zBTG4y.wdoKp}̍ͤAIEpѫYW4/ "*5{%?f3|.BP(.Sq& f uAq,Ջ]R<_: gWl*%[hv~8F;"Q7G,pY* `9V8hYiLoIR{dfSUs_gĐw_AZZ6b9p5P:^ )P?f/V6,4@&%?26r5ZGx+h3QƅoriX =|l>4 ħ{[C Q L08 N)]洴hYB"5h֦P*SϝrG,!GO1%:MIssaoNÏnLQUv2;MY(_5BsZnPNX Y\iWćAn^_,u]nZhV4f߯|"%4\8O=N@o ]a[?DM(QBx4y|Wkpݳ{dBתJW.AeۢĶrb?f(i^=J",@E 60J}-^<a[XvMM8%$X2J<ϏQxЗ"h7v ,nj#K@y0.-u|vqFaB: C8{\mnT+Oxss' ,E1.ZeߴoӲ\|k[ k%ýI:D TK1jښ$ 9*n SjÈ7o.a_|wU1BdlBע͵Y_# x`"F)>!ĕ0"We6M_.9XoR NYIϙ8 e{a1MH_yEOXio;j;365;]R#kMR8I"k0EmKa]Ŀd)b%JAǘ0 { aMOu(ͯ蓳hOO@reMS_9r[ n-s8/5Tn4!6 )kx-MRRMiS3LI|cVVGQZMOw&>,P3A'P{w[27;͕NB,>iV?Cj44/<<Űrq 7K0s;侷VCXu & s m?( m9;޻[ƞw~XF'f 2;[4)+>yF5eZ,u'u0S',Zͧio fOR=[N4fD^ &FbA^o$o⮉2^,U&~PSi0hh^$/EÜ%(ՃaH[N^ )$gZյ[lG",owzO^3{i .ʕ꣑W=sV]΢?3>D)]_9 bⅷ}d2ILs%j|(8nb ˲L㉨0eMT{M-uld=͎\IC]P2(vFԋd |aHy}=o|/::{tXIjq"iwv~߃"ךaʚS!s5O| 8N"wd ݨыf|:6Vi]E(jX/JHHFtdgj5}4 Y㴦 SN*,^6FD{#]^ f@>#mrѠ¼(c<GϿoGnp/mynjHg:QZbE]8a# 0Ps exk\}#7 }[8;y\LMv3䰙 oX⽧Ed0QC_ENf2^]A;ֆ5sEi@eiHt{nu2㏖*gAy#?_z lqr4IrX@ٵΎCEIrVʢhI٦8g(/)}V:a'QPו[?k=mdevx}Eȃ4>QWzDEW{2``)8&$)_|>`mD>uyZpS%}TlU[{'Q@I *)]O8 =u` 7=v^}O~T`! ˫kƦq8Vs,I#, Kc@as}/6N#qHBRK(UYǺK1SfU8l/\ :"8VE;>Ep42w]A߾Hi9- o`oUCTm\ΤTp8пiIp;\gdX3.|fe/1p=wD8E`@ V$Svٌ#{5Bjkj /4/R x>GnMιQAjӄBCÕT?5QsIϫ;ƝAy{{Fur!Pp<'PۻD;gܱ4&#~R ;);<0I`*Ul-X j\<|_yo\dMZc`w;YT;@Rٓtv`(8XGLfuNo$ym}< t^r]]1Src8Z <⇠WK>ieL8t,阤^+5OݣT#XC󍟂mxfJC X a ǟ5Db]IAnlys~/n ]TYsj%9)1ܡ oT~ZU/(kKַ,V\)L  0NC kY0}?j FH7[[yU.+Y QHB? @i A3-A Bs4:0J0 b#!NT}f\na2U; j* 2G." x̑P8,8Z cQ6^X=R^8G70}f`ć[QRoI;wU\G=g-;(d:+zr&D -|~g&x7$%%#EvSbcqI%g%˜)d dvM^+.ϠQBb_܇'ߘִt9"2SF4 hTߤl-.LcmrbBvh#Z ?23pⱇhA!G@ d0{ Ka_mGB^];'6 K8BKS]qТuf^/5tI?tK%u"G} C{df%}t?L͙+[Iz#N!1?-h+jFhf5vI+ykY|F/\flc#&ʇ.."Bj"c怌6A,nWfnys$<(qyVՐr^q`">d9Y$g>S[ݻ_{( պ?υdu{} @}2 T˝D`Īn#ԍاe t$Ry'Ѧ xe]{$ |$Wc#n.DQf ` [4E⢷ /cgaDžZ{zuMXqZa8_qmGsCJ%e[vv˴,BdC/]3B1׸je ת3cwjDHTO KGqRJ:+2k8ddƬvfS3c@; 6KyOT-e5[ً9waI-zW8E<^wjs!-fUyN7*[5 }^1>IEP]7Y}6bsVJdSc J3C.eLLnAE7>ʈM4 f+$NʣXtBض]{wQX4tIx%v+2%'312ILM='?sfaTL~=1L &a幯I#1ܥ+xo>Ŝ, m*Xt#:6)a-; >~u*J̛8V }2a\n(5'L_:Ƌ|6IDQhL =k}_ʥn8q\a 9]V•%5xŞPMem3Xhma+K0C6N mX .SJ{j T?d+"؞kG?egSV=_VڼAwD9XMճ}FەR7fRXݢX2~R>c衘vT$`etڭgνt6HBGASpQa%hbşf.|ZtڬĪ*hRF}~KwF"[vmPE&-\ߞoG*ͤFEHqb/SM58j殚)뱄dX>dk`~W{Bp"!JOp3A˦.Gv4B%섄w i(*&ݻB#Z=K@sEό@3yt#j4Q8 4|{_~:iq[ES2FsC|B=Aݳr=v2 'ց5 ܹ:AXOɴOfuƩeq*ӊb'/~ }m[qIS}؂TRY~ Q5@n z@#CȊ6F-+v@8ⵣa5H @Y]@9neZr{:F>6U--.f&T/&kVIT0Lp?@@j2YE :N Pr ͤA~=bF .~NntT#|?Ë Aw|vdّFw-DUgp<|fs BF6#(ЪE+i*Rq jLm_jqgmeԽ+.7X z^ g'nTV0rJKZh`,6YxMyqK ^IoںAZgsC^Uպ}%u:MUKTa-[y5>OiBj} 1W?How\c\M1$MeZ{#)bVDYr.K їOug4$ ))cBc#Z2߭Īp|jxAj9 9l<̩K:] Zcb5tXybC^ VUq Oj` !1ZOv<&[>\>h`}YшTScZ汱Uegld=ly>1#! ? ⎍ {nbcT(DW{#(mW?`7QmtݕLٓ{k6UV&35&M&&(-YKי /jQg721MRCyyX SPl1mM8溺 ";ZF|8cH&DZ -fT,@M PMO"&l  Rj]g4ںI50BPH}ryv(ytkgj& GP7v 85voC74ZT@biG nzo\+ی^ܸS9x,O>0J"s=/8B +\G!jK~*"FѸQڤErZl'~~ȻxFA!.&q$$hu|G̃8r1MuԬ5 ǭ9>!)S@ZEyW5}oݠ˂U1>||Q3&qM0n8dN箊3ﶀw/ΰ闘F y˼ʜK-M[cGz=KXaVk (-hv 2ESZ1q dv|zјtbD[M&Ӹߺ dz:ȳkU3 G8 *]="m]d8#)#o2×u$M%j ~:O+,!~q}m?y\.*@&N}nxfD=YԸ-f %D6j)CX앚}̫D-TXxCA dOѸfD*ϻ;|='}fQMCħȝKFwʅ*dˮLKj~qT di` 3қ8I Y[Si`T@KIBX"bʖmxQx4_Ȱwk} <ll!Z9R2SptGZ2wslrǝ| <"ƹ`vH~8qƽ׽calMcEv DrC]l*#K$z(W{Πgvb䝿qD:Ի>ɼSh0I+1s{C񿨳*iSWxp5 xK`ϫrKR&[4kM;٘"lhy?I\",Bk&0jf@%2(#dHE)9(6 JЯWf("1}rxspt  >?'}i乡 Lњ;EĤ72º}W\qg^]AB#Eh )# uPøRGQ Fq LLrW4T+wA+Pv(/8sZY9ĻLKYRи kg9z3İ<"B!B"+:U߯1~"ll&Z\y4@9 tŠX{"DoJ(xNѡs'NP4^P)h>.'9@ѳ?2AKeK:n!q-"rZ:c&t2)^1:VLh'%=< O->!PU OP A$n* ·⣂4Ա2Ǯ:(pm5&+vPђN]4TeK%TBoKi^X$7{b8_"l{aYOqi`jU }eYnQbf%ƸpbvEif|,^Yq FA-CJN6j1x",bf1B"O}d$6Q]s$ʟ |3Ձ?n~xhA^{esCF6].!|U޶ 7{w%^m\Sc+eGSyp 8Gb|~/)J:KFcӹՍ8l=81?+_wvTqWcO"=&.f/ "PZS}Qk~X^~nI,n<z^xa.[ 0umwL!\Z=ѫ5ma%-rSY"m4fcj0(im*܍#tvxl@11> 'B(79dtp[@Ͻ` )siP]B9tο4kٵD̛]CErL.e,8V$wnYtE?. %2Vc>2fVn*FeO@jI" QnnzJ`Q?$؋š~f,v 0qq0/µ6v`ti,rjQVt -V0$p0(Zmlh";ډ>7"dzۊa X ƾNsowmBΰAkbWA_Fh.C!W€Kg{\9\Eg8ݫbJ\.% Ƅv(V7W`Su8 WUCd]YR 8tYbY)'$f[ qnc8 T_`sc=*;\?F0+thN%Iqqİ}MfjD-jah;lɀto :kõFew>9Ό _R_|Mxm,RiXU~f"I!F+Cei ü?V b(-i7 zm@W~14MyQ,KPrC՝ui h~o/9t'#<~> R5)ٖ8C>|}J%iŜe҂MAo336=l<~2xiԉ5{MFfkwa8|͓8-ms/-ΗJfx bfKHDu| OY? 7 fް 8*SKP}@ł.>'F\>?{dW x!=,I?PUJf1zWƈWNɏВ+} \!9T2Ff J8Ǡ`،o;g.?E ?zup#pKeiqmvSP:{tVuzPU T6no)|ٲm$5lyC:2jpFu Qs_d;g +LCVB waꝈd'ʄM˭=C@;⁙wJFU>Eh֣kߺ63kjeQ3XSSRF{MrDH{'ؓ%>0>meU0+P`3v z٨V2\1\gIJ'*DR1Px9ƽX־9.#8pƂX[-g }dUCf#+sEΉhM/ 2brlZQ@!~;~4 o!0ޝ֤-濃66_\myR83DMIWX\Pwc2'ײl{lqlVd}$#]n俋@&AZD F~7I&>jS8P[CEb+iyjPTn7pԆ05 d)>:T^J<,s ?܈‘ fNpeK>Ƌ$KIN#7 8@ Zߔ-ڞ>S'џG@,ͰATӛ'x[(_Q:"G7g`3bC ƕξa9l#5.et¡O':jLSR?QLZ{,#)b* 9dڧbXB߲=`w#H+sbLd`E*Ixjcw>fȲL8C`piDV~ef; -3Q{/ [K1 :8hJ zȂ&pN1 RbE;=HBHyO۠\[-f15cBٳZBMAsY%? t_֓\܎&5ɆkApS^3^f x~/(DiYE5<Âzw3ج hHr{k}lSEZ^8ȫ1ЯJQ$[Q=R=oG0Pbe{ gIhK0I3ע1Fuޖf{Jſ`ZA?|RdDž/Wv:i_tw,utc j YG̎p(r@6q%=:x4}8s%.T .Vpasj_lW227_((O|zѤMzPc4(5Xq$ "@vbUx#Ţ.2oQ۳ 3\ҝ/d}O 4͟)c Itmrq/ClF2[ hu~&bÁ#WDk{k-=wBodGvT{zH&Ig\R.r(yp\o||K, >@kqEN舲gENQ9LI3#be^w[m_` 4%1&yxS"s0g6~ZS^@:]mac> %+UIsaCd+)Ip'"~j◲[4HdQ߰9i'7v&nG3) Hyy[GrC,圈#1f+[(ū!קHizDu !/L̀90LM%x A)`ɱҒ"߻]an[>=ѐ+7wz=8F;mVt™9mB2GvdBXsBv|vk&N pi:*7Ge{ܠv|U~] H!ZD!wʌ, C7r)Y9@yn{(K+8q|gxn*T/l{Ӭ _3 Ӊ(>YpuJ7'&7) NF&oSupbUR,HOFf.7|exIn)FFRK uT|LS$bߏ _38gaUJ|Fzk$At݀ WG6va`@]~o "ѻ LD9%0:Ird̀Fag$.곴#9:X vt^#WaOMi`'4! ^s>͋^#ca]NTH\:$E^VɮX)-wNˤfV/~V]jH`?Vq<G,^ HV-Z߈6_ "eŃH[i52}j2xMagIIIx@ tE'#HNc[NbfA[;Q>a.B9ÈUqyBT"rQ5f!6$KR};ή-tmp ?E.>S0FgVcxȸAT硊/76׾ٍV^_W[H&z /d72punB2 +;7'52vr$ɋRQpWxx!Ys5ED `]ĄF+gh֣`BL=vyRhUl~YZ5WOۀP/fޠf]ƽջV Hԓq̤Й#[e+H] g-sL)0Hizp0BBWH4,1疓ǧBt >"(F9nƃ?Μ?l7Yr[L-:\t*HQ ɺVF(f##QT/7u.Nu,7S c^ao^RL'z{D-nf\]r'"--gJf܊jwgl`~.N%\Oj* ]lxǤp4hƁX7rpˇA}񯜶c`x'ZB>ESAk, (Ś _`b1IW\\![`G4C7~cgBOߙ`xRIK93im]D@fZc"]"`@ܘ5PYѡ%jƘg W u;&PFIJ bJyЀwʏĪ4glTJcf'lK뷃Se*3HZ x;-_]D1.,ğ`3c_l6& qGPN>~Z>a1Gz ȗ%{mJ5_p ^ {G=~۱4᛽'谇XSS Vt*;<[Ѩ3r4FΞ$*uL< ^KH + R sȄWvQXM :(/^^Pq!3xZC[Y|v*/ס;陸OԲcg2.ixӅ}o;{|r 1 RE qrK(N>KB{5n~쇴Pې1ѷ?rlԇo}j+(VᘃЙ!|+>{WHK>CemQY[$]Z4ATɤOٚ%~y>RW'pJª,yVaW Rh]Pe) =1?䚋E`-Yb,R. aҳ j9Y!|vUOFK. w$ +?=K+?HS1] 5h%ze!h (ͅf%OU B*zh On~K8U"0OOed JK2R[ Ai~/\noi4`I `Q`"D:Gj2,|?0+sei m dmVpDS8~t%G/X "~$)RLcl&0cQ@lk])#ήѹtطOK I=6laư~Ѿ H/æyg;ImaRUpZOWȑXY-ȽXT(}jOL )WDqO9Xq(p/ć?ĩO׌B 9ږi ǧ=z}Ek;uC.n0SrpGj:Uۊk?IzAs=gF&9!O$=ÔК!\ (k( sū. :̸mPI)F95E֭g'v [ڹw<Ƈ okV*:"ma _ig42K#̶ VX|+3OFcq݆yh[c tp(i,u Lt8S5u6;/ L"}# mX&9<ьJUc+Nt| Ԭt(+R$AIAj e8:RU 7o" ZRBt=')CT )9-n>AHrfhLA|*R2Od=k^:z0rW3{r?l[eBC V{;uG JgNqrЂ%}jft^v.EoHPhHJeupܝ ~sGn6C[ʄ^Rj2QڱSXAs=shFxŒ:q4#@sb5oAuvZ(9rS77=\a6{WEl򍗅t5OJHa! {jV|<+[S/CwDaOW#caeIm%CG@h$8Zh /h`jj[}=* d8P Å`ZpLl50Lf\Q7%p&/*ǹҩΉb2~D_$%CiSgmтw8&g*0b"X~k>L 7A_^YX~ /U `'  CBphYJ]XEEI,uIUlwږM͚+xAj'Q[\9do^DxG_'ZUWmVr(ٿ3RIJnh )h)f$B&R* Dpy?͹V2h6>iaCf î //s %0k9j)4K(eG!߀+s.C0B?_8TtHa$5Sn4&7gD j̇k,[ʲXDhS ucm 4da0&yWU9:e Y)Ԕz.aWB MT]h&@]쉴rvaKHOSDstd'P4qD%j_<`,;Z]b?"▇1bŽ%8^Ǖfr)B}rn_,yrNh,(|<\W'\hFӟvk7=Nl^Yn:aD;8sƗVtN ޝ%h9!Tt*ɭ`HKr`f= dY1'Ka V빅Bux CUg3&"qNsI9emj2s׌Pca&YmP -Xב o׏6GLv~Ho?9ԐMZDòF;sB/ T,.-|lpUjx/,e˟Q5z,u(\jl!MXMy#EhL,8RVq`Py^U',|xfEZhFbif?DMt:M .^|qݥ{|..Į$0ܭO;~|!D -&UfF>`ܤCPfXCe"#Puݠ;6|s9 7!_JW تީomh>u=~a?abޔ+ ҈'빓\el0)Nxv@ N&ٙ k Vn[fU ր -:DauW,EAm @HMu=:qlt +7f( ,Amq) w&z.K9Փ-nhEȫ (Vy1ol܁ez5AO .ixM=| ^~}Ƿ"4n0'*Z%aRpEiv[Xk%CR{X^3bLeV48GaSƚV%G.@T݁ l[!ph<%^ޢG>rz9D濇)I(^- ɜ}9nnz;{nb,դ3Vl6sQA7lGuz#ظi:l%Tΰ#B6u:qFz1fRv_Ad г+G½r b/7_"i=Hb̉q+:l0ClYd:wS8+*Ҫ7 '$:@_O#?%QCvUn) A)Эy)hw&Zi1α 1!%dtc=y}PXO'ĩT^&?CT&{߼i|m0oPLj兗jo[s~ў}Mm|,au[ ~A_1RUϕ|nj,0%G^M(/v~[#cZJ1veH;A C,o'- Cլ0oE8'~\i-\ Ub#IE+c,KX`[NJ3ӛnLboFOh)g;*Hc}Sk\Ko0oѬ &d@AE?}94}{&'I†Hs'Ӡ?J3QM;KWw|J"]ʻf%'bJs=۫1s)r[jLu6kGxU6 BMh%HJh6\w}@ѿ/=O{W@2 ؂OETc aPt:4y\ՐEd~D 4/44"Hm:0Mφ; IfR ,= K|U\XVdQϠ43ү͏ ,1iL;tPMWS}! _a@JyhYږ24נX`DZ[K֙kmd 5)~P M $Ի]V*r' - ݑAVkCM ?:Am3ܸHL/[l5DaR>ϊLѮ9[߲ 4mz`T%wsY%S]?ZrjEl8n[DH])EJ`I]@,KQҦҡv4)*VQ$8O,szI_`QĞEc3=0Ny=O ܞp !8lF*'~f/O< wHWqـ鉘%uiyI9iؙO oBZ'ss)D~dózG$INVo&H Yܡd84;y \V|UR*3Z3[RmV9q+4:u%tNw&V1g-sV'e=1IK? :'øf5Ce|`9kAzʇGYQ)l_.G,=DDE8p޻__Tj #6m _J2o%2*] iԴs}i-2Pol]*x .&h:}?ռ:,ۗ: OO!ҡ#D5)[lA9?u$TsRr!.dxPhǼhVQa~%"#vVWX'Fp|f$h;Sw}Dz M9 k Ei,E'Xs2t~f=S8WEL-:UpPMs燕WoY8 '%%yy8v $-<ԶnSTw7DkeM,G#q3XD H|dٔk2_ EA7bX'ʥHf~r=.1 #&C56w>eMh3up~!XwoaF$vZv NUc,ze0z*c ך`!hB.^ڗS_ҵAm٪v* vm8)z{lwGWe~ +s- eufwOT!J@&(NQ9סlar4Nb p@{l߾\{W_}c / ֫:/ppbp2aVxDYFC]{XornO >9&L {PEOT<s*[:؞4<'7DBƽ0z޳) 7# w.Hw~CMNU{`Vd*,EUP>\O%H=鬧< 53Ȥ'9G9AB,W2/I$p`-_a1 vh{ʑ4u_9j@X =@ŬЗ0["W' w*q'ybGGS?Q_~>WMs;3LwDRa]{]Qj5P PP.,<Sz@s9?Ѣ܋F \q{;urVF sJ"-?B,Cvna!d Hζ#x^$pߒJRvB^:1`XmiH8|̏lk[,^ ɉ+H 2ο]:z#) AjN'%k"'4GqrK f!>X3;$N˸[ۯJ)s剧^aie$Z?]h=K"ӕe0[7v6|gWPY/}Y-r.[PsoH D1+h}ri0Æ;o^*f=GND1ߧ.M0zg0,Ι&񆊢w)oxOV\"EO3C"Ro ak?T`B京,wlo6nm`IKҕ[en@zbܶ0) Gd 9hF[yQN,]OQuu<=nT Kn'aw: F?&ʟ'7v#ǮOA|#w\u]#v5V;@ޖbG'ĹXxּ^$@m#_-b8z仮" 4Ni-xGEA_V^w,.>ԬQPB%]HUҰ}#IU2~hRGt⡏-Fyk.:K{qb* قRx({8xm * 4>€(#ÊUcBS0ZNkLp @!uX6c%\b ;{^_p&]G77m # "›SRfƫՅ1fpqOQװfxv|Lwh*ք3[Dim;=yD%!VIqYE<"V DxnR!~˟MZ,#λC=x& z1YWxzD8mVy6G#7 70}G77B4C%ؘG!<^Ecj"t3F GP elCjod:fΉU(ڤ-nf%uA|4Խ4U"bv/.! `?(l;ù^ʨn_}W,Sl&`Dž D^onWDa T_'mcZ*_: hAIqRi0l|7 R d`qICxfS -1~Љ;^aĵc.&KjB[1/y'ħLBG:P|y?XfkCJ9;D`*t8 Ob ~i urov[%N.3Bi5E㝪F,I,oz&:\ 8zC|,*?^pæ8fư0ONؠSZḱԹvcRNv{?3-Ew̍S P8qpRQ>Mā:q,4Z#PL }*q^.qQf$vV]7g_}%ڔ@ Y{RTP 80jJkB1')&"O 3h j 4[I1dEq \~wY{VLSWg3g'kk ?X3 f,i6VoG=pݗZ#Ώ̚ICh[kԜwJPodU:yu6sꕦi1k;I5˦[avT>1iHz /֮򵟻kMM7޴$u_ ְ)sHƹ/sD0Z}} `B2O?*RY^&GG|=7+-yXcƈ0TKg6_T=+{iC2.; ȧxQ$u> +AU1Rkldؤ*q 0@m(Z@ :U.fЭUl#-\3T,.- :\Em/ؖ"ܪ8ٍd"Eu%3҇bJ8@9lce S V~~EHŋI B3  +H!5$tdhA%`㔯GmdҲ,'!""/ no%6綻?KW8ܬ 0uf'?|GLC%C L@>7,eCçůR+Ymtire@ܸD` R\=eLvXOQx'~_״Jv.fHg,hl޽orQ kL> -#AU?T1aG7(7ejߝ5jC}EgoYDr%L34HPKA̡oCnbNݸ1߹EĨgKK!wVHNC1t`0ix|h*u B\Oۙ#Ho tUQfQ2?P-Խ9֌p^9S`gfClR\0*`u B[ T7xS|`6E vφD҉-L$~MMY,TH4mUTE SBpg/jizk?\(Yp`L$W n8{b'E,=]FD:G*N0Ӵ0*>tnnk]a C2 bQbO|D(BX5LD/"W'752vh5_(Aoz ?*V.Fi=4r@yok~7U ͝XY:VA;ף&s,ㆦz!i=FVe+j^ }`f+<[6/I]܌Ũspcu*לo4U.BøuT ҮyHv+ezk\@Kd<:'QJ,uH۴v|6D[X%<q`~aI}TeHD'OnRQ*ޞ9-yڃ}<0 y /9ϧ; %}>giؔkw(M:Wn~ <'an?Rz8 ] W[ A{9\uHNෂt9z Go?Yo9 o~ZrMnmڽX&!O'_2~|9`&N /+8DXd| Vt:/4UvN;aXN'\'p4dEjqwjdϖ[:"JfRz JBmZ'{~ŇhݿwSK߼/7Ml+SSlX[0΅[c*Sƅ\WL,dyf S L1_;^Qw oTPn Rd7Jx]4Xb4HV`r} l0-8~tHqJ.aT{VhQQG,Ójλ~$ K?aQF+WGBkR{i*I;Nط,Oe^,Ïl9 ;7KQ6 YjN%EΖR)ӻP oRhڈ4+9 BߖFݚn1|.go4ߵz4ox9#QDUA5r"XS`)v!;ܢEbЅ Z͜La_@砆+#RdP bi^Vv⬖SuE P,fASS%8(%v8$sv3W {zZiI ljW II';V[]ܢ=%_ 9ܴ]Y"na-#M=>V}bKsncGR>i~衲kT"䳭cmgNK݅! : ȣ.,ɇḅAF"iE s›{8Ў9wʮX{^;]vWb@ 2X{sUf4 {Cq2Gn|0 :F~\;qW>QiM+\ ?W:NP辰O؃J7D,(}q[}CW-I9۲"a׺3R{6w)r}쩹ˋ(M3NG;ё1 k4r\yS^9iHZKxq(O$J9YC)B~C(0ֈUx`H_qh7e`]],o$oA~5q1%'XI ~+H bkFxCeYUFQҭN@2t!V;*nuI@@!^"eu A z3[x՞|b''FL,Zz' :Ky-ZčoNyqe &.4 AT=ڃWl/0ӏ ,1~DD2mʺưuߝԆQ=e,5n:s~}u&uPA:uVE}Eƭuһ۴FkwL%CyN!)7qV \uPpgڇyIwAvBJDY!n`2lp߀)cfn`Z3:6z{hIuShݖ(,~ԓx<xO>`~44d&%Q*~IE]>{M?:^YGR6ςVb}(pfD(-]0@"+K99K8kw<7P*bO\R`W(U}CFQZtj#r" cưH9⨫. Pv "٨i-¿>DD &85 {H45צvNM=ؾ?1*}T#^fo[=oXk8SA({ZQ}!\+Q :WGB9!ޔP+,P$jbVY/?$k'FOi|4nؼWG;qMD-UcW8۱N'{J!  s&& ԐK-$e/p][:rj!LAc#Q?qW# |/a+Ӳ,DV8pV7$ 9#e;sT*t^ T̂Z%R(n[H '0J{$E.& vz.r]ԓk&Lz}#:eg K_xɆŐO [}ǐ]Ј eͰ,5tS%v o}=ƌmEr],YQ(V\Nψev4Y kbGMh8zY㾟QTQ6|Լf84Bnw@R6 ^}=),Eh14) '.? ;,kgWr)v~"*濿žQ $44WXŠ)O G?_'w.=i0V)n`Oe DXk6W#ĒwhDewJCa /p b;B_>12A !4iR"ʫxAQ)#:?xp&P;w4`:3hy:ۭO dn#-؊!Q:9pydo?0,N}mH{tZ>=STDEҀ8u6kݭn"gѭy?,8p &Naf5$5n4Y$r5&T\ eu{̊ ~MD"{2弝Pb G8`BQTi=;7]3pQh?`y\5[W:As 3K_C=O[ɠr8%yp&9l[A:^7K8/c^}~mh頻b3n00)|([ý4)7?}I$1+XUIAJݙUADe 9mhxs3~8lEuS** シ?ch$.c]=d2.ҽV/DpQRv'ԗpaIZ-"656`y&fuk-f)]WnM5D_*"k"Lѷh ƺcnSO^vxYM#]jl>31"txr 㾤(,+¾g+@z*US^#ËB!roF֓?~Ey֎#+ ߖ_f&t-Ťlk2PJ29r&۞\)ۡe|5=Qb(,K4~ *-OH$#~8Ƚm9_7U—8QNQ_a"keB%r#Qbf& UkD^6s c}@٫xCx8=G\nH&l{5(IK}{$ZFkp3[ %>;V'm-[gw.;t2qP@ V#dnS3CTz՝VGqt*sv(B[X(Z0e/ԍV.TeA ow4*QDW5:,WMZ/XLm[w!M/p ,,mt% F>vn ɮI __]MڻHu}@׸盺z,]*[눩~F[a mjDx "X濦4礯6FY?=T+FcRd8G5G!$;ت]`v4;Hi$/{o( m8x.<ւJ |+LhCH>-,9r+SvQ$- 2u[g q ;!)c=YQɲ )-}#Rq6Y?|i*rho>羊SVx>M^#2byG2ވ(‘(!Oh7T7XNEO~}M1R"1w<=hsgE6(&V¦ DSn6aySǂ (hxB?םr$z)wX?7۞#M@ Au?@VZ_ B%E.[L!kmJ6 w*-r8o5d3i‡LGG*^>ԩ4Y%Nkb:SkB5WE>Žcqjm 1bԲg 攘O6)uV*ܣ NP5"µsAz&O<ݔx݅vJ{ GCtl5 &qYJz R=Te'd־%+9] <{c #,"BSe0~>u:z'|ܵZβ!:<2ZlA跏㔵BSE>՞VU܏7y[.!1$8yn{~ ߍeY^G}z#ZŦlz[=$$=] \ gr+`]'plv>׍Qrp@㘯hٮw9?,c&9pyV z/M}#24,$D "GE3"{5?7O fLLFp.@C Ť=߱I\ؔ95'frv.+59J~A 0i'_ۃɉ!*FV`좮L=x{^'܆ګf {TLuDG#W3(گ,VGJ:)]XX,\G{R"k\Ò)R3 fl? SftTe1p yp페}ZFgSu5`Cq۵DEhd6=X*Ӛ.A$f9/h~MF<N(b%9ozjgrH`/ۋXW|TT ȴl\jq&Bb?ɕUoR-juv]p\|y7ƢXOw},'>n5( uoNRo7ںF#% .L*V+U `㶊>[\2ָe8mtUCh,b`u @ۿ˦W0jy\"7qHJ3d]=f @:jfVB`ZrFȏLų di"Ҥ SG&! .O8 $N|PQm+$M=4Wi|Ǜdy4Dj'mwJriy3Y~*K~D)7(]wD3c,߬ϤL $U -'LZ/?r{1sjǎc\x/(un5:_q%חOa|<+͈O@XcskfmXHt l>X<"O]Fj!u׷9bz9 (rJYtĀ̎}k +-gA9@Śkà4\lur\Sq-0ǍɁr4~v1z8)-:GB ǔMڀXvO`Ye<=HisPZΐgۖpWIqt`h,Z|ϕY,Y Y9Wr]ԿGx{gtutU4Fݙ3l*-$ҳ:Pd*'i$g5dzHgcF@s䗣ErhTAܨ\ݽy@~86E!Br! r)Q<\$YlqKeU XdEL6K\ZAHh9IoA@=#> Piȇ!xdveo^i@>`6ϴ1Ή\>PD[e=—f桱gB3Gs5ᖨDfCr x+#-(É_? M#c1I{,qg{w'd阵b"@jaM|!;^ yD]HS#Ңɽ\+ڎ_QԖTqgc-fJo2`8!RA)nXC ͖%YƏ)EHLHRktvD^b G<ǖʍ*Jx&ujpbֵIB28yx0P4ݚ]WqДL][S~1JkmnyC v5Ƃbњ8oX80s̴G)8Z7.S秕cɨ[51Ҁ )p'* nqܞXt~p'6 ^pdXHw?H=j𘰺`f偦ji}Erщ?Q_oYu `i'-"YE3jc7 aEiޖOV=GڃW-n]"Kn6NϬ 9F'#).&x[.`?C.3Tu1'X17qh:佔wYRF+۝ZlvSCYQ%[LjoV)֩5U7 Y0'7eMԟhy%+̴ wQ2-;Y~& Ů5)}Jύ.OPy~ !ד^F H47Y vK:4 9e/N}ѫP(PB=iD*i i,{~f"r|fw*R̼cgYP_Y/}Sw,O1yU&"ڭ )HGrV+-Y/3lyQ.y$+F%.Sd8$iV9 M_7t5,L9ˊ']'!Wꟶ PN / p7 kesgXRS>/BAY/vE1=ϹCóҢX61BeUWI lڑjM//0U-(%-q9,lާU1Gg*<7C EW}[mʽ|ڀƉr/y}h7զiJLa$P9U<7i@NBoi޷0E־G'\-,0Њ.LtKS-"d(}b|˱uK|5BOW9ong@g8,с#ҘNiy"U!E:[*d<5H >uWYnJv&ǎy0=Un@t>2 ǤLf̋E;3nׅF>#; 'X!CK$] @z[ DggNeiLrC1+q&.#۞G퐦vC`=xQpz2ȅq4 &e2gXRV RI;(j!$͘itܜ/F:65ET#,Ȧjwxy$-?5Gfuͮ^E{#,OC^|uA90uANO{W^s4gr͚uR1B&"ZB Q;ZJTK77g&i U,==%_ˋW< {t*k"7U d!K 4Hmw|LcnϚ DO?-]r9ZXDs$ Q3-o3XB綝u> ,g n(VѦѱNVx]El[&})&_0گJY:]]aeF ʠR-鎞%uUu#'')8E|\}C=A㗛)48 m Bm!_-K=6 P5cNjRYsNe#U o*=!1L5U-p,2sV^F9ql`b l牘 m:>z/iԅ2O)zZr(wΤkWNRa]VdžKePqQQo*xT  )Iժ2:=KCٽ]a.ϻi%^8cy}(|9N( a{Esv,ThI#l1&íglVM/(5i|BT10&cuHP1TCbZ;E$3\YX1Knb 6O;k }=} 4BM@:]hwOJya9T++yctQbV8=fǻm3mvy^;1} [ 6A`#C}wJ; #nL|pA#2T+] m .\LXn`nBVX;}]ȇ! 54 %&c^mEVjl/Ggf#^~ #Xok(IC&T0~}熵9fx cn F5 4'9b'ڴ/K-&::ݺ>6E-v4I= \zٙQEzH|9a~nYmݿnKd1 ߪewCK^BWG:8YTAhi^ ̦7%B 7{O$5XEV hцKB-HMK n)FG[s_R7Hc{ LV@UҺ|*B. ~ٝPjcSD4W2˪=Ǐw ֝U%Zrk"#] ̯=B]o,wK$ fRT<tj#"$[^I|{>,/`ޑM. Z4udϑ#[m[&TgmAt@f~d|(tqϽ) |u?ܽ6:'E-1pl& FxD FԵJٞJ?MZI j̳2 ]6tr7EȺ_UHTެ8$rOZr' T֢rh:/VեzC})W5(S+jk"beT$=+ӔhV[V;X|.176=;3\g(wض[D7hDU+وc.g|{7ƉR.g(Kq n0$pwPUo;0#xaoI7OApzzӫ2dlZb`6pvC5NiΕ6$RB n }œF5xЃOҜp&ȥ ;i5ٸdqZ`[9=%mm^<_H.؜b$W<cMČ0VdoA-DEo -:(Y,8]*t%4:m2[.BZZWNNR,qtGEhL%zCn; cE5*.fl4(wÆ?|7b^AXuؿiktݒ26kzhb+ -qE!wT:&/RLȇ:H`bDӄR$A;j$w[ ՕcK6I+]IJl'B Hf EW(K>sqҚN,S$XxPY[{;f1)/h9;2= Msh嗁.r@ʯk/y!x!n z=ģx-Ԗl$d~(oj]0po~+qTDlW !0"E?JiNBɮ) @WS? OtO X@\˗ qx]$*$aytVDF jY C_qi˕?_H0%kE?il԰{e@?pdͳL@KI\#L-XyuXp~[~r)ٻ9aY(+VIW}Vpűtfa͆&:LܤpǞR;hvHRv7iR b 3Rۧ\0+xNP.nF>@qx|@>:>FD}@";ڏ#ؠ­UYyn#Oj/1T+LWΫ[ 3n͝KrH{G߉נKtI3?/SZOr%bgڟwW7|3p9aVS'{YOHG&s9[(u[GJnkqh%HQ7<˨h2Jy xc#+Յ%uz` .y7)J4L,9Uc{0١&ӂS%WX4Ib9dȼ,MD'Zk,g rHBQ;.s3L5â4-.VT+XV'E%S|yR'6m3nGM`I2& #A)'!{7+Pk-^$ Qy }~9o3"ۧUI_!mF}[K`64L8yZv5`UbVvZԢ2#:-Y, C,8)Ucĸ(Ej oF$v+dT2ZdqexىaQtrfQA/eWت8<~^}8€YkogJEti?]P ˍ L~.$sRԺ -*Ш@b>fڎ%WK(#Z_q@DK#+w$N eڛ@E)snHrutDk !~74&FᒥH!f䁕%Xb_~vd@ux0hl)c/)vi}.sd\Ĉ _la,v<ٱ{al3gPBr8QfCY39W舉t_:Ϳ@ cJ jDYApB\=d }&$^T0iDAbE 4<XVj':Q;!l 5}mhDq鼈?E.5UܘЄcBRF[BrqfeGU  Dgȹ>(YVxo2e t&a|d*k{U-]9oX <1AVB$5 {fAN-Qqrw 3^4KAU8d`[ 5EQAӰjg !i0^Ū{"u-Tj&Ѥiς{h;b%#u(-CK8wX ^`h9ΐW> > Z"'\UwOk\8#R9TP@Or}$ <{9|yݿ` Fe9LL==|Y8UX۠גB9f1f=0!EP Wїsҭ4 5/JrT$FNrB',9K`QK42d}wLWҔ\5~b䳬96Ԣ<+Jm^l]v G$STn\Jam7F0f# A>`'tg V5)3H k`t-]4x+G!"ۃS|%|H+ܩ^oV(IH0 *ֲ`ھqJu1z |[cGA h-2?Kd#28䞳,L*h7%Nc N݄;݃)JC#†Nmvl)!=.<*KNBL _اa_{Fnx?2{,9kkɝPoS[%{Eι!D.ZY`-Wf@'2K|;ŏDž`Waˏy IA{ DDxt0=>"ojUKFI$֤|x[wL}u敜NaX.NU-q~a@ye?E 1} _O@޳R5iM3߯9]Bb-Y[]i*CV'g6RlDc38u6px#41 ijhKS;aRd7f*M*/@Z ͱ`%GF;z+n*{pf8+|lc91`ok WI-.J~T"a6 ,@[zfz44yJ$wC7,{OYFgD8>&!vK^׿ ںع~'#4C Sށy{kh>ԔCSGΎb˽q;E28c gg >7u"S…r^g#8 ~ =R+3@ɎU^qHJcJmY%\gK/sb%-a0RUB*6@5,gޘ𨣞(ijM. 9 ͤ"1y:g7GddQ%xE1qހJ.[G#yt9 f"+O8a~6%=L.|egTD%8ԣ(ќ%,2i㺥kEGC~-hwB _W-`*J\MKnz_F'u0!O?Y? F(vg,T=)ma( QaɬIY~\џl~Um>aUX}}5b`i*B!Dpڸp>C_MIc/}_E pC %D%ݙw/$eMj܉4cJ6[˓ªjC\;4)/$ {tE ־[0g$AkCcsqz]kWqb5+![㟨'FE)QR|jI`awQEǖ7M@C3I/2F ;&iП]~m[%Qv}lIPt 7{-ʐQl*|g_n=0Rsc6%ZU/)fpͧD 4?ʦlWoeY@U.gJƵ.Љ{z Op˸ey1vQ  rdiY3LN"8@4,3Ȋ='CE;: ~.Lة5tc|J~R|5Vn s#oAF<^ PeQĪK%n(+v3D94 K4)-쨶֐RL)*9;MhmEFhnD8B6mڝ-$kvi ^w>댫b Nkkm#|H>n:~Hx~2Z '}'r]lA e9̌00dkvF_)8w+ _eZ=#|j1 -u3)l'}$OGP h4] ixϰB"q>^W".ك!us^~qqOH5H[Bui'OL@r'9.1FqZ^Y*k[Ż02Q+:)!KWrwI:h\)껮a=0OQIIm#-i{˃k'1P[\MEZCeTZengˣ=o/LKw]1qʮXXϓs}QuLg [{M/@hP/^a0i轮w'j7^ %P3Zmޣb'qnqW8g7ױuU&@*H]%|*r>ɵ Ѓ bvց!Z?*ӊ*{?ժI ^H1AD(0Jt \תI{Iϻ:SXJElxBonJSP=뾚mRE! ܨFIi-ҩ"o<0![^h|kN:iv)sùڽ*⤶05(\TnVqC.t[JH"w)3eJw @,ƅϟdgJIڣطZ%ޏ 3BAdaЬzuYLMP* \ шzT`6P,{йFHeπ}r G? g&[ CJ|ҪE+\ tB`tſ(_D7<Ʒzy f_ [ظUgG8X,ޡ_av1UEчn(Ϙ?gc>RMtn5@oͦ<yX[,-IWr]FЯA< x&3.J j,,P@PϬtײa24nag]'o*\K8wXN-e-/=Ț^=IIwDym fPٌIU "G)R>95('SaI(%\oܙ`A`lpS ֱj:/:A lՔ=K"2M7+#U}4IKxTp,Uhą!=1=e7}5jEmFTjH{_Ot[2J| mM7PThx5|`Z821]ͮOܒwc!j0etMR}Y48vT"\$I>2/SKnq(Dl'9 B*r}JG*ɻ{ʫkҙʔPh]`DƝ1Zv'Y'4H91nс">WO19/BRz]Gbi7ՈaAIBr4 GY"v"\8@÷b4$iu8歕jRK8`1D $;VReį| S]dXgu9y*n=*6=A{wU23lJ(XI\WH«bTLk :¦B"k&PႇuTwm ;,=H[f?J$x&'n d vwTK[䧥\5^(ӜxMU]Bwex=MA$MBBIt j2[7,@H#:9eYqJIWJX[ IJ,Nn2(‰2-'3%G/Sϰ[51+<,3SeqV* =cvE[/] &X[{\3F|VQƭSO7SJF R%4{L"AI<i ͻi zB#2"$`۽]Z3{9z<:N /IWp#1P ~yY'g(!4ͩZM;'l%ŌTJȧr- It` q,8e8I $Ƞzk EtJ #%+-pKH"\Q٦a!d}Q-#"(6|2G_]z[gMk?#챚?}QsQALL?#$+">O8ޜQVfU2%tܵq+eN*F*0jD k}>kZ9LN۴m"Ӈr*Q {L݉ojLDI%_S^\Qb=钫 ~{SK!9t6wK21`n,ej_7SPű\˕9kT|@(wc:M@GAT<PmSڽ# <}HH`qkje+bbuն 'Iu UǡRo y({?Ec@EWZ@5zM& ݤ\Û;,jnۅP5Qj8?1 V@mዀ矣+q;GI3'}_fy>@ }t} c+ft )E*CUk76 O&(Bprs(~RJ811QLEh%2 }R$ZkU=hڞaI _O&LSPf XNgf64 8V+1%J險7!/+ª86evvZw S1f "{mN+ xC>Q򡎸ht!(gger] cYgQqXf)3SjQ>?. A3a. %ǡtcj^yc,D? 𤚜j_AD M_2Wy&:d{zFADXVGjANPj/Fy9` X QQrGGa7s;;+a 966ChAō4.`k= b:݇xTaorjF(tR^/eġm r p_읠Rw#MfHc<JJ- v}҄R@!)b\٭K\r~rjmzR/@Rp&$ΡIͥ9y蜸Ӯ1}/irKn|"w5 J,G1U%^ ]iS)t'gs|>^ cG%>؉A8 ,u*t?uJ&oKSlǔtǥ2ZBMG gS 5ӈh*x^O<вߩ5첺V0={0_*5dHBiSH8rʧ$+zqS^TxXQ |UG5ȚjδǬ_TW{YKs9g@VYBcE- 0}WU5joHmK/:UC=ϭ)M?C~J`v$ NeK0Q+ׅ靖~זX3:[f5ψK0U pX-Ym>W5ٸO!Ty.yv8́JRDr^Xkc=p\zfHjk&@Q  rCn͚r="f,T=+̮WbD >Q(iPW2e4#"yqx\; e%varDtQD"6_JgKzs) < UP U`~g4bzG>:+K#*Hy6q`́Hba)}nnlsC>D!xسڇʨ7vA^^a?>UeJlvsc;XV}x}xkIJ w88*ã) @Ec1Vن]Ǝk)7YrʹZmΣ}.(#S=,KRq!kړ~lޟWx\TDPq5.1eQDŗѿwh 9MM, VdSb&#%w[TU`ۺ{i1@P$ F<sF־N@`7k-͵IXc@^׫( _|\icO }f]W<&H!+Q+6 . .KSrW|o!\o`:<kR o %]Į⨟kV뢵yd8 ˄g>^jHR-CB*.Y->5d %D^"0@U^ߥdP j%ЙT}jīq/$EHa{cSLң?,vzU, z3iג.^DKϩ#mQ&! ZND5ڕQ~O&~̸VjO IN*ޥv9i{FdsO5yWm ;U ՄwSܐ(ğ -YL~Nװ"/oo~L1 H< ;y9XYC5IK\H;Qr:.]%R"*k>=S!"ws>]SޘDMGe82χDX71X U6,;a a4,}#G"*h%"LDN|vd("rb8L')(?y}-'+VOŬv5IΪh>ReF0MEr@I6C} >'غ0Վ>X8YlP;l"~;8ԇ7 yijƅ#^G(Bpz@׼>8Sʖ=B*~B5 #6,p{{`|GkZg6s"ESj^u_gOr`d&md(S@!J'x_HzBs 6YHt[ORKO `).:pgC˙`i1pZFY@.eb ΍8?Bp:J, !]YRxL&6i uHE2.}D)öwr6~W#4t؉8qW\lW pY:-ˆWUžMbezǗr,W@8i1*IKCzI+t $G9cr ZׁԮoN_8{" N ꍛYq3Qk2dåjK:73x9=`fbJpЙー! ^Y%UyxmfVgME!EV Dq_,tAkQ. : '&6Q1T\PєN@+ LEDg< kV-/yY]#[p qAr4]i k%PgO{J$ʮf5VV@v XJ&udnpΌ߲MsĔ^xbM~9 =l-4Vsq.P&xASW/rNYF*(]/Gɂ["&v@(m5}gST%orT=GrS^bcT- W#ikۋxOoRH~LK3ܶOAkm];:|TU5Ie۠OHӸ)bF;L11쐲'el.}#.%9 ;]a0xYt[}"gsWڌ4xo~@r S]J'<7@a올KhIEAd;ҽE.I;Q >zp(ɟ]XigLeLPLƙ6`=.aCkh1.,#)F:T 4.C<A@.I6㱜K7kQcu@u}/,'gGvOŽϟx2 B|Sq<l\.W/z)N|ڴAιubͻ6FBa>̃/$k"%Q_=']s5,v}s"rQքBm ,- zzo,:`9lOS:פ/gV*;ZzfX&V4qya/;]qv{8ՙWh Ĝ3mI㹱%k5<XEiL'x҉qZpyu%YY¥i҈?@󟠪=z. M4g9MM)kIY$Me ?e ~k^IB-Ɯ |J48u=TCnB$W5A۹V Nwb/|b_XR oeqIaBٵߠ^xxrD|#:nզQU͙}g\(8,:"HAR4J gFgou9Z"\ב@N?8kse;ٱ;li~tm+Ink&w)rRwHL+Y IE=X\PQ-MFԔ{q1d]8}(G]Omk79XeT8RN E6 Kܸ߁Vw}D봃/>NY_J]~W!͇ibEH:ڰMG%&,l0]@Ȱ q₝^ P>NDD&[k]ѷMwVysݓW\b-'!Tvo.FnWr[YpWh@Řd(PG0q+"9T6pʺ_#C?O`J:GYbX< [Nȹ cw} IlEž{O0->''3ıwEiq/ ttqF'uxbuL&,oyMF'* ĦBյ@R+PP'QrOF:bܧ'Z~x[JB5-:K9AeGSr|B{O/w^/nTl2=ۺ9v CPTďq5 [ S/w•Im^[q4x2ZeGBHSaslu`0L\RXJȂMد3U. zdӶrl5 d?O%/{-iJ u+E6dN2{G"j YiLV+ .˝vC1 S+%X I>;ocߦa|}&YsINQGX$W㓴^In Sх4-(xrY^./ 1-Y&'<U{"zxSwuv V~g譟 Mv44X t|>4, 1Db]+;Mf|-,.R5ƫ bѾE&aZLi\Psh;PU!5 Id B_PTN/FǛlELWsS,7ѲAoɤWn~,z 8*eQ6?3ÈRqm.i/=!&&ߩ4.܊{ GehKdL*h[Z U(aMZA=VqDvx? 'i9: %%`Elvn.qUW\f^H,G1 c󇉃kEk4yz~;)gN:=9 ©̨&bF6ǗinC␉QĊY"}nj˛?IyɆѡɇ n& Ii8K$ln[7%rvuu:R{DŽ[o!-7rLoQ? QGG8֒LZʥ=d!P'>|_&]+-06vW,C;bK3Y=A} ?d@$$'ZRčQ{S+ CAPX[ X&a9}uaT/Q T%8_iKyV# ~]m0 ?E7izpktA^gVqprݲAq$KMsϣZ{Ȥa]O01m~y޵-;r|Ƙ!"'2t=E?(C(7G qlRXd}kiz O] +gq?|Ao쌵N(EiWK>i~6f5-j{VQ= cq"v[M]Y4@?Ud7:|]*#5bd90zg!f}8pI͇FَXyiU+6ZY)#; !GռXgx x)*L80näfE2k;kTl˧lo (gIDA.gVzL^J֘viӅ@݉kT jJo@U\$(7-h˖4;Ļ9xD/_XyhCIC.Ja纽p 4>ǭ.̥8:Q>@tc5j{c[eW5YUC{>łf:61*8%jFo3HN@Ϟ(=J()Oѩ579bBxR+߶+x"8~"t晕xq-z},PEp5c= )0wh $F.#d54Q C'QIJp TF6x`\m{3 KEBV47:z[f"Q=曬krFvbE__>Z[ئeʖ1A½ Zsux/Lx\y;KhRTNA=P3滷luU?{mږKrrJswMG NPk/G{RTRVDlD|~0^Z)Jni\gQ ]-3zZ1rdmW5Ml. @ŀɩh9 ]̃Kn;*+CX7Ơ5"622S"l e&+7|%ڏ܈U&ɺǬXHC+[+D6JWc zG{yʛSLcP車(&xvfBRh`Z +h>Gݰ[,5V,Js{bFm]xT,.t(w*jq]?:VM@hVzIL0H`L.&|!4"\_ 6[.Fb&CULhY߀_i5 1 g8M'RD2t1xEv bLrh0$q-E͸5&pԷ揦V\$pq`2:[왺Z>J^0j/Ig -rg:d tLM@yJjQ 8tyz6J#)!&woGb2)TnJLL;.":`i"n1;pAFiY ),q8^Ӂ}b]GDd8iN_iy[V{=XEvHk5h)wKn^;]!\\ x-Ai3;%q-rZ9'PS?bϒTIAi}!TuLApG.,#MQ1 ˗ieؤK!o!I406ZۜL2HطxK,1OB̒WU6펯CĴ=kmO/MQn_eلң* 6 ёITd`mnT@˜3$ާ"0 eٟCI]gQ1ߌDN])#7*eb+F=qǎL=UbZ̋>Py[cʆ\5#@."Є 'S jmZIa +q\vVٮOC*gլZN߷$cGX{IS[lV[N9P5#̨* ^X,-C΄MOYm vJL%]OYN^Cx[,DӆO&;7…H5!;*ZuJ2YS{qjoT/U+Nc3f0tt3.p#ax0wm%/;p;Jߒ %[ASMަYfA+#}Mغq/AAERc$դ:LQR }v,z`q4{}@Z$ߦGM`\#`_ԛkiWl4|͋0*kx{[ l\1?vӏ+VFcƊ4xb" 1~x-J ظm:BfJ૔߅zr)k>T/YuHEnvD(/w$͓2CLJO^3'rW$@audB>TG01pH*Yԗ lީE|RQ9u(f$59@T6Y9TW tr~V=NqRd3%Ye~'v;7xO97NTlaehaQ8f2$}{grNVZݻ/ٕcƵHy_$ZN"~`r.1+%=DQf蓊}1}vBfKqK G^;z$'7Gc|*`Vn Vͥ?a z_TʩK_7LORB:+aM Ďz*`7(Y ]-2baE@l_WܪdӥN+ j1wTH@r:W4T#x C(jæw[ V;h«z2(Xe@'͏D:*:q~ꑔڈ#m`j}!#UӡV ` [2㜮רvI!G0,#J9+d݂JQ[Zu9;jG2{^㒘'T7&me[[;}g_}՚{?POXLq5TE|-t/) ?>Dzq>@D1VMRwUXDmjW }G߬*Ӊ cj$5) /k@ȨɉTVSr]@Tb xih ݶ7˫*7p=74$`ys8٫/&b*i@$!F"tpGZ4kV@Md4?vV$\)˂CIiƊDPw\v$l!xߴsUlJ3x;_&+ *['g2I8z٪1$bw}(+BNuT>2%7l؊{*GNTgQfü+v (F0cO#Qm.Ձtܿnz+  jIWLR>)v)m27&}aݺ@#z("H%x, ö4&_otÕ27S, <Sa[~WoAKpff{0ORhL%9%Y*lj2Dy ꅎ&I&qL'4h{YEq3H&A*y%a sG/0l?|#_d/]xibPǔc˂^q%ُx~IID+^Y2O-d03״ s0 egHsh l)x2^ I{&!Aߞ|5ǖbUh6fn'I7n 0ޖ^ͥ-ۼYqȰs'ʞZRKC* 5pE dv>Tnz_WVF+I%uA>/\s1]HsbAa/VF봞>k ș]2q-Cؤ*j8laoΦŋrX n턫 HMNs00pN3GG:BpDWQݡ]74S]nhHd_WjU.aEc/A9ڒ`2C3iG2|LNyCm<Ս ?sG8M"mG,ze:V\SB(6i`^慺Mm)|:Z҂j3-DaцI!,pio'z˃yn>֭ Cy%T _%Sk "|d-)tFPzVj㞖<j*>fR_hN56`OkNQ^b9[,M"s8Oo4pʪ\a:;I[b2x>בxP@eB G*rNq =gJWܳTA1vX#ٸ*@4 [iw k401h3^C 96(ܿ_*72_@UvRMc." Q}f7`ZN*Y-*h5¥/ڡu2$aFYBёp~u޹ R֙..ԣ*,aQϦ(< L~;1⽥o7"M3Y6q`_SEk+Dͅ^]A[ z뒪Cv$x8dZh*v)Qюg)+JDR`ރ/U#)LYBP!BSD;,|3I) 7>5 mpeD3뮬v;Df4?Ʀxi ˠN1$mk}.INK'*)8Z&Ng982>m%oX:G)MVzfX e V=bfkM]g2%̀6*#g,z 0 8)l3:+=ұЈF evD<{Yˎ֠^hAc6B_“ o[P r=* ѷ0 04C7/FԈ3 P '_;?4 ;Cm91|.IK_h<-`UhV Ӷ*ʞQ- G.S qG8 .aoDQ ƟpA0ݮ7wy4RPv3L_5zHO4#J%2|A u$5ܥgDqLFMpKNíz7V6`\Se, Pz =|롯Yr˕ uвm{p#:1jiYǻ^^h;ӎN^NƬe҉bjh׻I(p{#*w|doIhoT@nBna@*wH5~D44AhWV@PjX;MK?H,$MBO\YE@4%1xBE E T%gH?9 ;b${vx'$jL.ap_~2Sz2HfzN:&AP}4*b5mGqXz/~v Pc9!mzjz`6̔ՄUY?t[U KM|0E~`h)xt1@]S2YyXMVխq?ܦ7 ",9M!T(zPZXJC"b4yݝ63F%< 8e75pv`[@Osbj9?Y_}j BùY=QruWv '2|&(YZ,X\yP@yݪҩoN68Fm?P Ro3g!Ī=cnWGlY~NH;2_O[ ΁ˆN!]y\=Wpb".A20xe*Aۈ&l: L81DxyN܍@ٴkOLs祦!UvҠ8lnNSvniP4n /=aoia x J>iB R{R*ƫ{EPֈEh4uװ|p7ہ*@Ȅ$_NdyA?ǘ, Ns!.Bh9]aUw؇*Ze9Ҧ,XJ =hCPf=My`h9[piа:ɂYO:Yce4(Pga6EIsK)*Oc/&L"0yMY.~"A0:\,d)kkN3f2ޥ7},9AUZl "' 뺻D-hx^ޒb}7ϘųmpA5Ԧlֻ/zCh-ŧ~mZc&ʃq*IUErc5vM"1*cBÀx^(!INOhՀeNb[ᶓExN~ _{)zQI` ^xfi ESƖ#xJ5q=ܶm`"\=XT5c_NJv:qņ3nzVZdIgKw^t'ʒZ>l"v<%VR<,lQU\[g xx]x#Me2 *){@ 0^EH8 V"1v9yYfxaFuc hq#cvVQQt[oQ/#PpͽAy;4X w y44\k5kʨܳRy'|@2+ۻ_i+ D6g?<7`hwC ^wǁ ZjF8M˩!(Pe?m;}zs6'%kŷU&;)JVZ TH&SH,)}G ^4 w@SEC`M5Q*sHB("xQgͬm"8TK8F`:Kg,.]5e f#XғY;#w:u{|Or|<ߌ4%Aο/ScCg5Lڷr}D0PVF[, VoY TF:Vj-1 bF]h#cHVD?bc@պ{Z-.&޴j:uY0tH JwvÞ䟱=kq9z!{ )G.~Ԑ>))QMF45RRwU<|nOq20>L~3t3\vRȥIk8`&ͻ]/:UC̳_Rܻ: ʢWj9u[y٩Svׁ+e*UʆA=7%+yCE} V {<1ӄ5AQ<,)k2J+@XەAi)saM0GeM\6" Ar?u |xԼlQQ!C?R#b?)*-trq+fQ|7:!j+[=9je5`N盥LbyDd/;ޛS 59|͘ dۄSB/͗* K8|^tYOiR4+m:dmx%xtYtv034=.CMt&0Iw'Z8 hِ)v^IRmi?b9D`e - ȝmc+xYbz3Rs^v2QQvL&v5e<"zqޫ8aj8sb)VA)JS뼭+&뭨Л)yosWE#ht~a@y.^m;u!A/VM}@KjDzA /ob'u+uG0Bg`'+哏P7%eJBb6/RrbZP8,6bV/|fLkj,]<)!&ckxw=Yex;zP~ O5 fOqQzj`YFy۵ѻ51 %}je8rgBNCqnQu(ő]6R$|F!)KAZV]Eӎ!"*мIeT(# b-uba^ҭq+5:O-/^qRݑbX7Wʘ7 %!Ok)H6+`/J jV8- + ("q,wқ1p«3QX'!"]_b!6+EZg|ϗxs^cZb ʌ>_a^:>2~&,.Ue(}_x#Fk)?g,we%Lҷ) 57^?,zJ5C`k˼h@Q^bW e/7lVToӺ~hg{Y 'yt oאS!%,BR[/|cb6'7囲Xg\!(B#-a|!VLvO&x5I%Y`)!Oc΁1$Rɾd'*it3& zH&썖A$eoi ՒbVZZXTm7)"0eʘXD D X cŹܞv]݆?[pO-сQš5!M<*P ib#|E48>,:mbdHo;؊.|5qƌG`4mjmdkxG@Zʇ=ۚ4_Ӂ@g+m3x01%%%.6>\)8Gq X?憐Pe$ jJLɷ)# }#ތTP9/œ/h_!t>M q:txrD 8A]Ewf=i .Ѥ! {UIjs&L}1$iK(^ fڬtS8ZrJR)< 0 >J pY-눠_ve\7 nq<]zCBUdV[!nhݘ4To[x~/J>\AHbdR~H&FV ~ѯkJ,׶Li'ͣT,'}{ )x0`c /u 7%lD5Eetu!H= lWW'p+"?.!6.9%=f (J }>]eY8#S 9y܄{^$\b#LDK(0aaTqbL;,ts̻]‹*e_2Z1}oq?4&BK[,>FLil_b0D>se11ٯL|@O S;!w x . s2)UΔ֧y,}p+T[(3qFeA9}[G~?$W.8Й.\Ĉu)t ˚@Hdh=KGg>hDNi P H`Eh)wR&{Ъ5 ~ܟ6 }ԣa,`aZq!:%ZP& y)kӹ7Jxu(ug{Axe|m}*K?" J%+g60)CXϣk_pP捃b/YPB+*BQ"9T{VUy6jljnۣsb7:r.gnm ,! AmyhiMlxWzj Z &h+ňwfm8vh%b0`(λ(,׆)POTJP [ib~,ׂg&?`0a2+/`{Zq?G5f)C69SlJ |™ߚJuNk?:8d+!*<[nk\S3-$̆ L$? ?bl}lW٩~#gH2GCGE:^9!nguXR !8;A|d걿o.{CeO$<׃ gTA oXϨ}VZ*ƯZsN q!QSfmp|nLzrMn969Z)>&+ gġF&|3B#iKE^ze@J/w3rYrۓ#kwug HIcQ"Ş0a&v *+eRvR" (\8coqӸ, I>ǙjWkw{A6?{꧶+V۵({ N\9% nHe*>4z"ҡPEEBn湮y6 =/giGvI*)wLw3W| 8lq}OoiST /bA/2K5QY]ި{&ѭ}[ HxaGZ\.zZ@{ĢdEE6:{tfTlsu6*33\[)y}RCu!i%sQE0#<7&%%+LGN>(9f5ۮ RJʞA}7SzoayVV}[ ޯ=LɭXumä7bpl5猄V#r8 /!bHREՆMLBۯc%rƞj U~`E`M#>,*zp6n(=C,‡/c"2iO6y4h7A<{<`,9*_Js*Q쵼uAOp&(?fV0ݔpU<1(7Jr< tl+', f)~EƖ.}`P"!LϹHCUؽ: Rh~` J8ܖXAug^i/ˑ5? 4peH[:2=X3s aʜ5ׯ#MϩS\Hdm8 -sՊb+$`]n %)vpgX>Z'&d;-vA ʈK0Όna"e"5^r4߁gwSN,U)u@6Wk%!JNfnuHPC(R&?Bꬨ L#S^{MU/Jf¿Xa XH1;Ӫwe_pJ~% #)R[dX EQ/]yޗz \SĞ.HboBIIT`/_? ?>YD;+yUG!&Lo&30yLM<,`J}שP x7aLs"=nH.־%bƉVn 0Y|@-r/cWyT@@n@jlR~u]=RM Ͷ]m+NwE$=b.w-[d lg3v>A&WOI|X4&FLER}Bi>d0 1T6af @BqSm8א3~'|q޾x"ހKgyt{'x 2b]b#R Na, LԕFcS<`5on QY8=fP!N}w7ij+ހ'DSnPo<ФoI{4Gtrݗx}c%WEQ_"o0Ӡ/]=Qt*=qQݏ>e9)SŲ/\w"ZRak3 FerVQ=E51;$,6%iXAVMYw-7L'oGE8T'[l%c|X!37e-|HePEJM.!H}uNA )œ%Q¨4wWXʕ"L66zN-F( CE3[[8|gqqcUF}yدG/l8NI6VS/@]1XSSz/;&Dz<c9N`?k6 7SsE$*@zSNὒHzd\zEm'7CIsÐ (3E,twU6Jq{5"ӘP&i'*/jmSNLo8bk0epM3s.aꣶaIe*m/!κaѰJ 1[IU͵Y(xik\ $'g4Mfy'hbT?,w01Ҷ:6斥L`GICN3.AOHe͑b .ܣX oG&\l=]4C\(%@Fx `nPhɎOP^0_zP&UD^L98.Fԇ@[(54ݐ&9'A<461z uz9&d{-+ HZk$ɩ.At,A BB hۣ#1>Clp3'nMïc0(FڏshmW5'.UxM S.ւ1*>"g.C!;l ='Co9\eO )3Xͤ4;o`E4t̺ƚg*x #;_&oiP3! n:\չ"ൺg֤Uʾ<Rv8{XGtb gYKofl@D8~1 bl$Ц~J\ ڶؠvna!ҕJؖwh<=:;8}7BM^biOv" >4Z~^H|o{'}4Vx7Cmn=D,cd/c()'gLrmw ڀ Z `N2 U!tvBS((*N2Uq_L/+lcz4Iccs*$5Yb!$I^O0LzV чR\XZTΐ=5SJ  f)@uiQu4~J0Dz̞#P-fy ;1FC&WധU2lApr@Pu@Ni014,ΰ')wcp"u0INнS2`uduxߏe(LC)٠ n a/m*~&}s_9m"+r9hP(-SpG<F` K]"Sf_GeU$ dJ~&6*~SќgZ1=)kHcU$&#^ڢ,j[i.Ύn6oBq:7,V]rnCRҤ `Fj5X9nd].)a^!֒ZVSDOC vXYbML(ӔUS2WԿ ~QY׉ݶ),) P[EdH ROΥ~n;]:%<\N 6z.7|1Kc ;pSS,a vnɆ|کLEhhz*Pp?BQǍ{فFVtbujFqݽ*%Z%g8An}+3pEx}8B&w}Vx؆*02>\ea.*plUvzxt.uAz[4b$h Cy&D|afL6;Ń',o2]ũP㚊.i68~=CzXj*%L2Z)aa?`8S_˓QHGZ R: *!%ϳsả(-')k8&u}MKM"r >@X(SG0Noa.[sX OD\ w8W`|f<iKx+SfzHQëα"eD _pYtZxS7OUԵDߣK:huLFc{)}uB$SJ NBgL&)! І݊ΑݡmDےV]`'U*=ÕhDٍ9NP>׫yt;K(` `R^Z1t ׺5)?6,)1z4sӈ07OFPҺQQ|ѧ!X9pV2بcJ}ec w0<}{>r킏X'|'{@ǒմ]'#,SQ)V\_@̫n`@}օsp'=!g*s=,J2knYV=ju(bXr?βL"az$ߍa -5\V"F&O}$6SqgXA$aI=:Ys`` .>1:a(IB,PJoN f`Eu eJ?;\f8Sbq`w*UTB5I{2kGC<+{0)Eu\1Dn(yz.]hG7$^rIݘ' :[NjێZ'E2$dϮuN#, wzym4>H/CВK\gRhup{v/{*㼊bs U.%`ʞBҢ4,E7R9}{ 0Ɨ}Wtkm~s/mLxym=$.KC&ѧFXW=tӒE7M39Pvs-6gr m`ԇZ "Br#\~Qv9BtX8cڦ_KQDSnߍ!l<cAەgV6`$+~NAH>sPVy) o'v`G4N04B~1$QɂwyV;~7]g38R>z22)i2薫f cOϠ^;S !'!{|ѥ>^qP0u+2/{z9a]oӳ}wz3 /-O{cVv,Vto^Mjqmvd\az`v.-‹T0_X͏ElX5@{t ѐ>`av( f ʛ2D\QazX]@%8Aiul5ڍNҩā :!|kS$5ajF.o4yK{ʇW. kPxN l!"?,5Rn2 {q<03̟$QK:D( 5n'3:ӸYec;n 3uʘ!!.Oc7Qs>2y;͹cS3d% B#ZխQtl`ɤa|rT9MycJ $5,n,{Dr5YFns71#BHfSG\c4PBl{~ǹsIܽE7.DiJƶ!sO`NHc;x!7ʽ LJw v7_n,8tsQ}0Y`ܒ$Lc%'nSq]'C":h:, k(✡][c^$5ojƙ{ZUR0gQif)mG N8s5; _<2`\ OcQU(Y ?pt)7BT)I'4X4{]Wպ*^,,&KyiZAdȴJݦŷt LogzԲUwӳ]/w.ï$)85NI.V3[&L[h^I?šƽ7-iF%"P~f`c؊X|P.7&b3Xa23eo1E=| MJy~roev}Vyj:o0 sǃnsp9߹wrx /aO0͛.g`@#s;0>z]VZ^a*kRPt+rwgt Ro++f\@F׭( cKZAf7Wo3goBIUowWk¦,/]lcFU,o\&i30{R ͍7&3,w$1X{qAΊ}|ܣ޼iZbh_HwzZJk{~; ,^'6nC?p32l`{YOE>ӗt޼59!SZG&ҩȂA=e0P`PVx瑭DM9N(MĐv&_&!fsˊ / Bb؃Fa[/JmEVԔE_ב6W}* [Wrnݽ'A쳛%[DӬ%yϕ_yob҉ǠWm~0}I0(*B7Զu+NR aԾ7xɼ F|#Т|}g#>qBS;OthV)PF+U[`jneWKc }+M`GƂ]mCb7CBj9j%oxWm+ WLcH8La&E9>q"0gs- G'ȃ_oVޠ؃c@s$G%2.䙊 ):[Y8QC4ޙљĎksdd)^* Q˒;<$yO֗IU?SD lS QFឩ"C]mps`tL >XM-Ej D]WɗȨ:)x?($Rƫ/z*?6̇C=YUy77,X# U5_8%RZ]SkAzL("oC[dN[瓪rr~2nCI /]>J&ŌFM'SK&FURnXԠغn'S^e ˛[Q0P) 5NwvwY1M`-Cɮ,wb? {CPH {i _IC* Fz/j'>w@#Id\ ophmQ{# an#2;H~8i+r|,/s=T%oQɪ@E<,H[AۚӢf\0Z+4|Ղ̸ 4;yy7\ cBj7Yn#%c?P8OH5Eb`'Wd6L2sǖPGaRl.Ll !W{:dujډ`/*yjfcwj7x`6RO歠*WG;BfBߞFK'ʭVƨ"!I($d}trw@o+ <\{Cy| 2`Z-b׆闋 L6 t4:H3xV:|-]MU!Yj[%bu#\ȲX;ЭgfUCA6L5Sn sWwlM6r,Q ea5&L{|~,銋*>V[=Є9gй;u?X1Ʋ_^;WV[ nRNqʪ'\-r  \V)5´DTJe$d)݌R][IU0E KC,iIov*쇎/5 w1S< q`L˂@4m`=|S> bjf:&y cI[XI,-IJ(UVs:& k+9ѳפ {LDhD18Ҡ/ɒ)r\% loa˃5 >ןsU V20geGl&l@E?12T%_V"0s%/H*dJ(.UEX~CqE+VȨxŠ*HějN݊q3g"|dsʵoIė5ĹO@W5t]ޤk0"Z-Չ$"kOwNl= 8zs=IDSP&`Nš^3 NC-X8}͸ +DFzOd]=U);KgEu'zF@U|ØME:b}L2ud߿hrZ:1y|6ڹRąOwVTj<^'! )v_))VA"wK~?) +µ@Bպtd{Z= &2 ji1pNTN<8Ό 'VMTrY&/;kݕORxOVhw:jgGr/f_9ȬvR424'lu9˸_\t^ ~d[Xc@UfO5[t_g "I)8΋L'u|y6fX8ΣYeUp] H]ʮؤ=x,[ R7;/v7Ğ #Nkdnڕl^TKE'O|)k{{xSL'Y{bIb9b ш4=o6vFtReHV-t( xJrfB*MӎtCagx zcMs$l kL5oi[ Ѕ?}|C'ǿC#ql[D~&9ԭRj5g=zJT;I2bd׾?y=C Hq>[Gj/~BO Zp`{Ay?]@W@(UHOuOJ-Zg.&E[A qDhFx'qB&Y6]`>*$x> 2K2u)(I~T&&Gܾ2y5%P͏2WQ>9饷- uf%2&$[gJgQ}: ]}30TϔIe):}L}]䱹R V/dUTDY 31)z≷:ε:a'04yMU}i&ɋ{;'$ @UG4wT"iuҚxTIIM>ve2n`cyl.!p[&o"hL$ k_LBSRlF|ImK"ҷîi!TGRKF,ޢݚ`HJyT_<->܌}GOɂ)?dݮO+#: &2w~*1ݨUؑc*Y7 >a]mQP 3k z;bJ_@8i f,h~"w6mPF>3'\L}}j#eeZ0,2eDE m8U]x!. 0*G=pWJAG/ʌF0"jOyQj_0;hFs`⾆>ZqB/r5IMu##\4&LYlvPB:KWB: u'GA tIWj!ی<{+p[-E=OZkxʄv86ZfŘacr-U`T!OCkMLn[ÌnXzEnd\YIK:ҁGrRy݆_3oDWveU7@7=yupf8<=+QU,HP.$?LS20؏1x682N;8i@)IY])8bN-p?/6y}>ž! IY9#@rTJeNF'm0}u}EWZye5< NLzvnzd͓;pd]5A-L]>0$#*VsPxf1!Ýr~N۞ܙj%1ޙG'MmAL/(0v1^mUB$mPVHu #P Vy1|,9/-^:J4(8C("b]u_y;PkS޴5 @|1jk^F;װк?up>12p V?1l?@}\xar}h(B//Tm#{e]8؇puG*,8 I[V4gIRD"/`kŸ/ޕg+)u6z[˼I0*uc/i?ى/>Jy$U|%<0b%݈v6YA_OKb% {E4J^#xewJSbfiBzi4lƽ ZPhz #YU>t074Cȳ_QZǧ.$ۘp|ZVڀnasD*E={DYmW2 cH%;`im3ɤ\`d~ %P%F8YFȥ)eET**]|w0ek՟-,SBY H[mFqEAZIWY=Բ>5%IKY[kw;M[5dǴzy;*0vS1XtsLvU `Xʸ|tf"LIG΋C M5Ew==A{V aU>~%P/M%b_3lfVe`E}'maGBܷՔ 8QdsvѧOf_yMS_F~2`@&T-cbO~t]`S_1at6dV-{X!&J۔h^Krbl]2gיjn:hĈRwB~@=4 V{I35c"I MWbE/)S7M摎 G gqNv/bpp>dP@z4N>hŁVTZ3U*s_)㱶f=5+p]Īx}>zy)r00#Ey܀R{!2c~ 9)Yx䶭0R':^5SF٠:TƎձo˟lQF3 [+2Sn%#\ Gu76ϡɛ:?!鰅gBCx(:]la⒫>?zmt;;"=U1+`<].L9ײGZ&]"Ϛh@ t_iO`{&.y(+.2L{#64h h$w_d-ݪ6ɦ6Mq׎UyjY= b:Ǟ,We~x(ˮI5ʚ\$pIP}8Og˘JL*HP$}q])d{E41o9zwa;[E\jv\AmVbWfC/.r/dr2\Ya$=??h%zUh^r2Awb{r=m46| nu"430ßɬuא1k#YzHE_saYԋRkMraZTFESsNJόc]pAU0SPefwuʵ9̬xH9NUP1yq#ywH^G tT`)^{Ku1+Xh!u~̧R*U: <E,1'flu٪^F%` kq➫ 4$zO V> W#A k%weRx!T>:lǜz ʅ91L+Iwwlz3,5[13;MtM F"bnW@9A()>5_q?^eksߚn]xO'J*鑰 .MSx|"#m'\˿%os#+R.J&?F95mGyuY蓉 PaCVB>cs5UkI r#M?%mŵVC_+?_?;{Ճ\m]0'O\2jFu^qme(;7ȕ Bk R

1JNENj,KctЁE2D2]0زxN_&^ Ï,>b(c uvKY`yBV-u5s4w`*\BDQXHn@qJRnhdhL6u܊\!Dt"b'}Vad5箋X~[;/yy;Jc9ȳ=M]",*D"TsN P9 lgN[G.MDS09Ŷn&8]!**I`,v2Dڇ+;Z.m\&.ܖ3kxr0hC;QGcg .]@tw%_CɱįjRWvM;SEᇀ߱GHGF+t(W !#_A,r> +3̕lL&OH0CT^$ϗJOgyTU2'RmHT\gth*Fzc:Wlb Q9v1w .*0׻&^~C.H[5oqg'bA5u0.Ndѱ3Sn ֜;\(V[A{#Kݳ_a }(>!Rɗ xCb2FעR\dg)Eb䦿v=rHv[6{Lpfz&-fCۻ-HTt19iu&=K@%FNb]7O%__Rx,Z8oP75FNx/v{;dqQ' ò"R-̉\UmSS,J9/BRkSiyO],1рǫIVSͶ^*{g'WI.ۢGF½2eLx?sD*ͧT$Fvue䆦ccF伹}w֡Ev"= [`pе$5V؇&iCH)~"ÑY.ZLhufg4xn\*aV%6i<1+Cfל຦zc&*ۙxȗޤpE+cmF}vf|ͨstG}' ږHY13:|fQqJCj)tol(X_Cƌ=ƯH3 !lyʷiI =כ+@Wݎ[ 'E6#s8X e!؜@;%9_lRU19@\(v{ؒ['ycW'5"JB A˖8EG>蔋wcOvMKz3K|b\l4x-xчn U&&?l4צSޗg֋OTa6CTya9 z?|M 9>f$SYKȔoc$.K)ϤV 7G]_X8J)/l3՚:* 8 dd\^m)"h H|2k6~-BT};$יULϙ>$^yڇ0jRZKO#ar:#Z^tW;b ;XOLyZi(pI* k *(:^54-gnLc n:~03Z$.ʊS.\]qMĶY-NcIcz}G"F4POKd$b $W(vh^\0tZj\dKX&I D\(J~;Sqߘ] A!O~^-*.]QO~3` Ѱf$ŀm\3f"r91v]P:z$ΟHpz HED5M21ckQ,A5-)^: ?ceGum$#IZ:s<3MU-}: !$'i ˍˢ^}ӮJu~1͢Z,FXL['_~wly|wϜ8oB1M<8< Go2AեG왕庐:n)E,ނXd|΂u(%)kcia!^`(|(l7"( 8g02;j }~mma 1)5v?oWz/1֥o?ߗ}' pjpv_IlLU)Г+}#rY5_Rvny7gq~1Ψe2wE?$/'gi]&Z 67>,Z+;iPBԝ#QQ$`9G||qZQl>0:Pf#ǘdQZ7>+խJ90p% Loglq7t .[1Gl grŷ5i+6µ61I"~wwRI=\ث@$4IKVp}|&k0+Ј*-k n쀰6|`JP{dSI3O$ M:K6ќo@YЈ\R#IyKOd]NbxYs$Cp<:Y6ۉL^m amۿ?X&vWk={ɨK&y}?=Ðv.mu 8g>Z( ;Ki5]vuBrcEUlͷkwC|PI<+6Gfec_Ul*Q :l X " RT2MI̟G1=&a D(su;X umCyuvs q"nӦCtg,fj*;˱+vu4[ bQMu= +l MFR/aGC-Y\O ĞME]weFL ZllV moGo@T' f:戸MvC28+cS\iWM Zgx@SE9/ O|0wR @sّy>B>\oi~!NY7SrN8 j2C3ȉ }{BSщj\{}_o/3T/AĶ77yТVHw/XAF8EHo( +T_$a(SumxK*5di}Ζc.7n\%"ciEX'0G 2U5B!Z) e m1} R;CLIW5)|/pٍb{)* AmCyIl Z(" 3i2/[Uya9}XD}mu ٬1o'8*\~uHW֪8M‰IUl`GU 'vz9bR Rq7ѳr*Hٯ 9wZ!n7D.ۇE(&Dk U_L%>zf+7|Iٹue*T =Cȿv>SUV& 1{ ;XꃣNh&q#:4ZCa-6p6}YWI@gD$k&RiT (^wځչRnOH`M'XHeNrٿ\8[&봔S( Ɋ.*oMbX0:{*?p?@z˯;!\hNc9xK({Gmvt9 bm$΋|@u2=(I} \CPsa0cT*8Z$gQ5*Ěiᕑ IaV{Q%h|8ҝG,' ~)U_ʥ)eʦD\&`rbɻbЍ05O1$q;7!ՠ.FtoCX ƥE_=+}H~vfCa.>=2ι1rLˑG-"9 3eGJ Yr"]|t}TV^ T2F ;Ɜ?FL"0nssObMT 4$?qidq~Io S=_"`WSaŢK[ ڵq0 &@?1wՃ-#[OVJ) z'A)ȡEg3uX%ÅjHJcv'ܓ< zC&=j']gTMewY6vB&]%M;i\9h{,l3"o`Yi5 n45;:c% c|4 뉋bXY7%(mE3lQ'u D)opηqCV"3V^lSBxr z7,uRɣVNsay!}(|!MUWv/nrD@x^coH?OڨVC|`qI^y@pzL-{|Jk|5סd (u0}葲&F{3z+St8:_bPfI_HsZǻyBV*1W+J1 ұVLD̃WFaHZ$t`'j?Sdi2l L,$l rm@O+gu3`gf@~!!wٛdX9 u mRy4Hـ*L3}Йe d?3^]^ϞP<| ~LdaAeGMJ(>{Ou+j(*:2@JYȶ3,`Q0i$ִ;&J?9VDgZbGw->oR@;]+=W%;#W(s DxlKnc8v }GJE["9 .>oWMb ;g7{.#D$Y\ʺeUւnM #_P&h-J#i{AS㤇_23pAp^܃´\Qz$I}4:!I "lv%BT2#AfI+d<˿ن~{9u>L/jP+-z?)6ـ#Ӡ$aeM`_㏐1xݬ]*nк먰UzdśsK͐WSUtm?tz57U#@^jxk8`8Xa 89`я%8F  ͤNw2 u`]M V>=CXOBϾ|ML_UsY!_ƲR`wE%F 4q]I˰|K'L=chx/4-e:Kc8nTF\}0׷szw e۰~p/25 tVMJxW h-/%A2ua$NEr8E@hk$N.>fgĉ}bpqz*_C7Wa 0Lr̯0 maŧW4c@kWdX9&W L ]~.J5K竩(\ON|nAo|+i+CѶJ/O>rm:(F;$VQA~-E78ڽ6W5%ɿmEQc{lq=HHif6iD+:Ӝ#FFѡ)l7E #JB֜4}tGĆ4Dw"pM]c JHHRW ~)?ߛXM(#Fh$5[|kp>,|0-gن'4d- I,Ӿ1H60?NrD"U WNMXjMG-*Qk 539X={|_1S:Ux\,+T P5?yʪq8o[>-tP2.R ++T-:ܡxpHT9WTd}&ABױZwR<͟ dQlϿ$? ;:~ [|0=ݺ0=qmS%?]ceuZ%,Sz*}ݤ3Ӫ4yk;BV0U{Oy\=isS;fQCV*kѲۧYYDҨse5$/YzY(pYZD!3DV]İE>`aUaӦ\ fr1a`juŸ?LotA 3Wu㸥( W }$Gɢ2HXDqzS`QVosO$0w^x@EQ 8ff3AjAbi0ތԢتި3ܙpaP_aP'V}"9㩐BAL혦7Z?!5%zISxp Jm>B_8GAr,xsȔ+^w'RC`[;A1VXS kխY>7w<E^Y\k3ȧVg RE_$25mW\LXRH(|X l3R>0&t:$qLJ* 1cm8G2J5VJb!jdǹbOdFO'ˏV?ш.QI?ܻ1C=u˗X iT(qٔ~h%/"Q}X6e` Û.cX+Od n搈6G8C&ǵj\DI7!_2U[V.)nDk. 8寽u5Z<:ߴ}PE^ta}9wrU4 o[ H9Fv-u@kdwtՁZ~U<+NPٹR&{W›ș~cT~qrFx\+8(@}3EHƬbƉDd6 "00?~$?R"{lfR5:YÉ̛e1L zgxȞrƳGU۠04Y& Rezzqк<ջ ڀ(<:ፇɘ_[r\\kj鴈l܊SOY|?iXbe Q D]m2R@,[ԏa!aB)U^@@%lkfCq-wq1uo{Xz$Cbʚɍ"! O:sNA౭d$ᕐAoi{Qsp#)G›N x sĶ~ZH}*mW9ncz0t'$8m2Wp7ߗ /oI>/bRDu>ezǾF> ~n;;w:?q `$]t&F3&*C~;?yāq3}*<ԼzmfYuW q٦D "1M4G 2zwkÆ ہFIU{I'^c N_ea  6EE(kYkhh`EݰxiDAhLv7$7Ѐ']d+^Z`ȣdlD/n{Y )RMgLZlվ%NζD  =ЕmQDe8"K:h¶lplE a:EhʃDLQ1ф]S27n%sH!&Tz!‡6>މ{lGH>;Vf-Ħ;8/ ܚQnOCѬ!O6e ̩vqO<:, 7t:?6@?*JI[ii7KtW^DzYemvL{=&:o|M %E|A3 MT,5$ <㜱C(铆`Ї"T4=#%~zOeyJ`0-$),bò.HNVQ%B'389w g7y'LewuOVTmP^6֧Ç?skʥd*X/㛤+*p=~KXQ[;wYHy04x'I3 BH(oU< JV/dWɼiG:]?Y:7(zFfWJ/QXY3{j{6r F  cBE/XLLqG1 "H#q l2d3Es?[lj:V7m,m uRv mB%Q@ f,$\+JRriij}C+`%8CԏêcX3 b7Gꭻ+0!0A h|O{C4Fo4?~dd-2SYN=0!E$[E7Uf:iq֫1.)!Fr/booBX-kv h2Y^vZfQ8 ,0$եb)G,5N; F>y/(&/0ue3On׳!("t يS|2jj|}Й0AzCR gDXfObgفF1G v3x=vj K*~M Y: *!dY Z_cҚ"C%XD3bs?JROC8Ymj@qOP{BA~'k=$ smz̺$ޑBrҋQ)G~.,ֺR}P0{xGx)F|[1RlH$ :%`=If2P/2ks!ItWb dziJǑRzT=䟊b;;,SLG*$&u.jQ5e!>`a0PdW>%>?} F}-z"A&[w 7?$)(I'yᕜfaaq\ڪr`̆lB?^1Q> U>]Zo'wX>P|5o}[@`rO4pKf=Ҕj$7:@*t&gE D Gdt =.t۟9Z$^6n70d 6EQ:0i݈O 삌1\O'\ U򽎹)g_X1үj0=7:“3Qe5%~Z& *V Uccѯ4cBa^n.R:L 2gS K_4V*TQY}E;S|\sCO˷Ϊʈzg(gQmb9|ڌq?kW 摂xLHA!b@eT]%6Jzc)-9]G[[YwOK0$Qqa"98_o f3L:uP8;Kcmn\~G?-xp<|,Nә mՌLAB݅) V(ߐ NP} \ZsyW*&qtT̆v!B? [f6҂`b#t0ѽGJ%9kQ3rwZ_L_ b w&g7#Zr$fxA57 K'$5iQ~\VԊ7߭~WB ܣcv~<cwClV` ; 83=;<,JNV5Ed[-1/3V.žw x8ܮ@uO/ŏ#x iha]i%@ 2$ym>պ 撼RPvrvZkG_gp=|Ð[1N 9-0K-zƜ1}rJ>ܟf#!vČD0`pj`Ík kܹ͏t,' ̺[߉uPul{gPa&X>و6ԨF?55M- NnqD#cʂWSoNyE^c@<"O??|x\2j`]p)ɴR0񯠾?6LLEg paҏ=x\iJUF-ɮ? <31H A "-J#KDk(Ty]E$ۑ};s YUElQT`rʴD_>CYb:BNcҬЧJkآ%Oq }w/0z0'=idtLI0~J~`=\?x_E;i)4\PR\.vjk]!Q*gr vUf筚Mr^05#;ZͨD~|'K@ɧ7Vc*5˕D)ў[*r@_@A\o,硺&5rNH}yĕ\ׅV[;4Ws ce?::"g 5aQfRwPՍC : sMX*1X%K N8Oͥ7/4Bes.iMύz@~F w ZcϬ$d fBIw"sR07y }@Ǚ#CurʋZDp[ ~XqTʿUtoDAKaD&obA94U7&W|UmW~HlUNGf5 +s9Xj8-W ’r5ɥ-;`Ao\$Q[+PzsXW'fme9 1Lc61g$q3 ȗߚ8_elYGf +eAlL*ϫ1_L)%1X]%-Xһ25r9~||~l 6}{(ԙĹ(W&3fUŤˬ`(F˾Є 4txݷ2x86h`Ve1t$O.=CF6wp`kE%ؚg9P/Ywư>.e/vO.*W.9ʛTM@I Zc֢?1 9s ?fνw:FeJP>K kv,i+Y[deS@$px#p>rٻN0]V*JzK\"R ͜f w)RF mvQAzB 7jZ?z݊K9YbPs84[c[! N6dB1TTAQN~ڝxudNR%d [wDʓ7Ny. 7D,a8,D3˵[!S,ȥ޽V(v=D]FzzM㜨\&Ю%Too=|yj{O*toA B|;b~֋=${=WzC7_Ty|MFJ-aُ*SaJb )8a)*oh)YoIS;wGY}pYJzOB<5GvOR_b0 V5ӮW{Hʐ! '2(52j_ju7~j=u_^N[DGλ{/C=D( v;LAG< ; J?@^$UÒDa.hCAo1Fs( jtcBZhHArRn7zSB[j̑F^ƿsTXÅUE"6{˹˛ʁ4A_g57nh"h;NS!gU:*8 ҂e1ɿrA|YDvc um҆OVi:ə_ n rQ7U#c986/ZHz,Ju[w{m(a:I`<`79H5%{MR~ZF PHXpKpz/|K08xp@`vN\z7mIZV %[?+t"9O:]_ _ܶ!ir17$Ҵq|KɍuGQe:qTye4Tmcx#D$y^=2ꡚ1jwX~#<+C iZ,V-qlT\-v^ٜ9T@/p]0Z6iG .%[lvr&V7n['>2 CM0P*o PaVuv͗*uIi;w:$M#P/0&VOn`)S6q~Ē`=1@X O5Uwְ&t\7"@t \-uxGn"b,v,7~@k[YwG>Gt\",\KSDuV UYŭ@l,7 : j`4l)75pS=DwVg=n֍ݝG]q9wǧt혢/ߗ6w7]7kܲh9}ĝ-~!dT>J?s}7"fANe+1"_yi|%X'bsWj%OAۦ u#^_7%h<~lN`hy=| ?+.hJЍI8%#o^\8^7fey&C,]UvƙHɔv\ |o728o*ÔGzYZz7m7db ^GzG#.RfԜ%.Kr#%M+D=P~TI&VVӜN<eIzW9&୛ 7ZTKϠ'A?J.lڲu`>aLIBW~ D<B:S=WƜeh~IjF-#8Hb B,^?m/$XT1#QB7lyTfqVE${k۩G\y\ϙL.hW|Z5pp֞l ruk {Jȓ?rϰFfښ}֫ Qn*SfS濄]L-kSċKQHASK9,ή$ke>|HMFp"?W6}UynB,!Y,Wk~^FXI1M^w{IJ$8(0d ϑd|r!z쒏ΙM&8j5%>4QHCQdFRj0 [댦ZȸH\sg1GNqݚ*h?_<';!^onP.bcKBajfԝH6dJ695Үs]E f,:!c RSŒ?YX3E䡛B& @b /E'vYH *c*Q|[ /HL&–7ĔWs8[ B7DFDsu&8"8UUfXBp'9ijSܳTpMU8{X/2ɒU\SNRvK3W 'L?"&fJ"pn;98\ys6AmO Xd{oPy~sKs\|dH/?s<0g6Ajq_).nz'MZ5ΌWGy;w+eO]\>k,aD @XrQXWl  f^x*+IT|Lqe^fup侑H<`WtQugaկpVtZZ&x35b+}@X~k6ݳ"=cٸ "y{ڑ A88F|+ԝ [u1A?E1M9k/JBMՂ aޭ7È /cSceXSI##񂽭M&e ATj^D]hI.D<ÖK,\?/~ WA+outPmN6`A{`v\[uw9sRоnB[s#?FD8xf*֠nby2l$ 걔Xtƪ¡4\ăۡ0:6q;\V $MvgK'#<#=<]gh2ͣ:F܅C?G/4c`5ƭqnnL,ܐPuAs̫Zß™tY,a,%hegz'X˼ dTХg1SY4Tg\-p&763ktqSmc,֥}^jn,Yr(NVTq$muALI,F<!fS@?CVM L S$[W\;ZuNpq_Gmd.Kt 6|kQȻ;?ޘ^6C%Yh* =ڱࣖ0hhBT;clv]",{lja4hi=s'pNEWTkb;$c Vdɞsv5zH5r.&=%rN:M[ ΂0D98QK j>GkJv AY\ #$?3`b1 mQ=vE{;MgHŨ7HF$ PL} >` ۦTm\Jt^E&RVdn{meZ_XfꌸԃtxsrФl_E.]= 1lvS"EPQS))"y7-JhCNsyMhy{!r*qz;#pFXڐޫw *V'G9o#u yTk)yzn]^oYe0_ĥPmgy: kBЗ,㤻Zjc|ǚp H8l[Ldqi㸰ݐ7>,kkSA8E.˃:%uIY ni{K$P3?HevClkIo,Y!Wbf5]MiyQPviK+_u>XSM _k:@B8dt Hs󳭫VPI!#`M;cjF>fZ8Asqۯh x~5}m䔉 ]e:Z ~T X2 H/7GȨx Ɇ"nBKPSmӹUlFD΀V g@ÿՀLrB~HJ2Fw'1h~;GvfbգF?L~1srQlR: 1q*"&>?r ^.T0ἈߟrW8 5Z]qzT4Xr2 2,Ru'F]+OoZ:\J'؅Y uH;+[ܛl0"[6"1?32(ybrg^CC.Ow:_iQy"\%o$| a=ovO4rS 2*[g~5ȞB6]Nd.t4:)4!l ۻ(u&GL3o*B3˦l!D0_r|Vr?.ڤGq[Մ> G<-7f!dz٥f,[GYQ-蔽17H҆4sk}`J `qJ4ནWVNL[10I猎~LؚPbǩV JRڬb­wv4TFW$LK ObUaP]ByB7]^{V>I_sXd=2lQlLR*<,*j.=ƬG?⳻4Vnui՛%ƨ^!2ԓxhx&t7xwv{&VK f[{H{0kZ? !?'YzFIc77⢷"oLӣ[ܷ=u}Bގl265q;4EX$I 0{I82 \R&Hv/O }Q*,WP^ v*/n7w&4>JĦpGxv'Iy#HFn}'{7\GxΛTnhj{fl@W[Z<;]C`EŋfeNhE$ёb{c/;OϢ]^VOq-Њ[ 7`ME$n8o =9ʚ-T` ɫHus:U:P۶RdG.?F@JAJVKވhK# jE4='r8@+.Izv<:O wK*0O'Rb@ b_K#5K-TR-I{2\b:Y;CLDv{|D5|Bj:|cʁS<4d`.|t""dٕ)v8XϺ]Qe:g}mư61@n\%o`F̧.ٛ2}Uqf-meޚM2֎A 洺e!('AY@4hD|fȷV YЧ+B\TўiJC_Bii yeb^iDBmg/TG~ j~ #u%A[p{Đ GV,[JUlܛ`!#bc=56hsE}@@IYdAU_0ss;^|PE3j tOAʎ*#50FA-p&&(@oc} ӎZ/o*l:of|06nl {曖"fYUYi 7d;HO 0{=quZ& ␤u]M wA5Z/جiLH(asS "&=rW\Wwp昐ya|l0aVX,T2<; i-.O$+LZw/׆\ !K.AV%J/d&d "t ce!Ȉ0i0;/ӻC`#q18%69<١ͥ jKgDO7i鿗" q@*m؀zf9 C=2Xk+xQbz\ҌJKYe8jߌOc>vjljc/K@Xݙ=j,6 ӽ; 2']zd=1jX(emsLa֭@6;tNtت͓qnp]/QL!ȷɃiť 9e9O_< iml88.edpr)=# g(ꆺWWI~4b7݂:c2$?|Z%tth m4ɌezXYDsN'y1.dڃ(b|~&n Z 'o+{@FAѡ*ssGgZ0w$R 6Xf@ݤ4[Zf0g\jO-]_,Q8zְfdh1!:enge٧~:,PL i}2RWrXl+5ޞvhh}^VՀNL+Ox;Γ٘p^@)~ usv$m=,3~4d̨MBԘfd~<="݅ вѲh Yٶ40󿪘;[2̤tf\i y{QP€͏-ĎƉw%Wz %!Sr[\_oz<;0jɖiR&2@]Iݓlt.-U6mif5w)ZP`wn>{% ~NtTؖ%dđpQɴFRrVvMeTĊC|kͨde2l ǙL<$u[W6{_}c`xG]¼z'S8,鸔4QH8VF:2E1WLdcxq2ӆ3(fWg0VrQ4LGg8_4rՄԗd6K@ Bκޜ9adnhN݃of x8-m` & ʢX1by@8{Z|T[!%ymu8s9M pXmٷ%;G}6OxcJRD3$Mc_Lt[d|s f0$}{\u 8W+pEzRJN`KI]ü+%99?iMxG=wbZ]K+ < sr-9|NuܜK`-䤴kpC @5+% 0ArHvg&/p-WBON;!в߃Rd0yy ީ,OF} |7:%xnky*7N^ՆS%gYI\ߡO-A%lTdW<G>^xorXJ7&uqalR1(0Id5XYM9o*. nhۼ ~4ΩIg "xsKk| 랗8N=w^',|m]\_ǟ$)/n88 "{D8ы{!…<)_45/Ԑlv=揦d'-`歀>hPXJO/kQ 3tby蟲 A1rT-2gLI/.V#Au\9U-4 $? sJMV6k%lrV"췟4l] K;{8<&szAESo@JePahj+Йp[xs(5($]kJ}Wz] s?TgK jK(pUv/ТCʣf.Ƭr5^軷W|JzE8vWQEE-s2&+Fʤͮqp lꉿs[.r|bj4,nTzr;ǰDj1 Y:nce'v)3hN2ʲxUa ,ֱO+c0q?s[,͞!ؽX_4?MZjx{#Cϧk2~Oy;µ:d3RB7lǫ݂ΜP鉁QBOX uI,};*> 2a@o.r1ܤVL_Mu#YN6D] ;-ύ$J;DBisF_99`92^ZP/T!>3f*M~^ZpVjs6Q{%s8)iw7hi`tbQ8fnf.ՔFn S" ~aO`X@bpZW܅ h$!ٕ7NT% 4Jd增/Ee-$x[ &U> D_uHјVT*@q;F }so9(9.UV 2!r6t*fQ~p|Y&Ag5iIapR$]n ^3\3DzQX0uh&)E\vOncB(l"{{Z,Rpظ:Qׯ/J7E°hoQzy\GA[ ( pлVUDmk ť%u˒, Z=#X2>b"$٫MBL.T!:"qF_vR`l._gIp$FE{e^D 0.%Ɔo@!e5=`f i 9ك${*w<8} #ڷZ\CJ*·#9cr?F=xmk]KxnqmD(`ƙV>):[@SU?G\9kgX_>Bg-x'ޠ&F|XzQI8R9 j>/n-s`(! ˹Vo Ðu1 sʖǿ626[gҠ+`u\K,XSY!_7Rfy2(}i~`"/ӀN@Vв C9GB؉u.ud\a)7x)k' \3;4V =\DBpK[ǐA@ 8c*x|VqQ >9聽#;%*k(6glv͓UxroEBH (ՠۼ<.oZ7Zpw%f+F?<.HZB=ThQK$TĊrͦr:$.;Ҭ ݕm%_HZԄs5 K!:tvp4%5 PΎ/ vf0ʃer.fu=T I].aK7IZv-e]-$*A_1]8p/4?TI;=i"w74'l7 h<k43am Aڎ%L2.Hvf]>%O^##xuMsL4&r0 KY `g8E#Ö.9Df5<&F6y"H?{֣Bd%.;$É˼+NhǓ024ڬo9a>1"bzlQņr\f.nc!dN[]Җ[^QT &Yp-)̥bV!V_l9}78LjefCBTBL# ҡ@9G3eNֈӐJNSˠa[c__)EW^ /8\P#UgL- Vg~^_ÜY;1UW.uaKh9jO .- _PT4뼞͝$@( oU@=b#l"ɧQe)~<-c8PlS\#taD5o~62t{R_sl(y^{8Z( %W_סBүw$LNwq-]CH$VF=;!$TlVZWz:*19UP?[{8&T'T='=!' !4@|@ C} >LT2vec^ԦJ4g,g= -]&tY6%93=YyeGp_-T9Ό_VF r' EP>04\olj{gډb~y2o+ }UbJ3+EY]_86J)g5(KA4r (Q#Z_rDUuO(yBz_ީwdb{g7iYX8}ƯK:C;7uۨ|߻}_#ŭ"vLovdV[+iKۤXeΉ^1iP0VPgO?h_b']Q-Q(/kP Og⹭H'rY_wT6kh3C_x"KlNl 'CD9}[j~Ǡ5+"J 6:hTݵkV.0b;-S<'쥝Jev(7XzD6RZ87os\pJ=$(aqd OT3cKlA‚x˳fm-LY|FtNfL.V*aKɑ*pm\41pܗLR, ICz}/= P|*-o31*>DU4s3>${R7sjy'@:+8#/{{ &ЗƉˬiܔPjU !lDq4,}(]ZG] { t>):?ٖ9FvC4KԒ07qmSk(uʍd9փD)fpZkT4pQ?COҮB*wRVrǨ &"תĒ^7{^` bNSWiKReG&.,hOKItӧbc¥.pTivax\M VŎP]_+ˈ1C"V ,_{d4Pz=Tšq|@\r&sT1{fI.AE?.@EIxܞ[.@!?/bwR{2~2`++a(XՅcy1T{4*Dx|xh٠`.Ol2+WFl$ǛNJ\\RzOFt[ j@Ħ#MCCxoh>?Z;A. w:-֟&ߊv.{;0 ֙JO!GJ W J!R0rB(degxĖiZ'a[>p niFf>b WM9+3ɟ[2B$L{_ AP@hHf;IЗ 'V}k!h0 #؇S.`ɩzӵ[W__J0PVeG$,r*/\s40)duE\܃džjܻbϟ)`Eh>\iEKt=Hj%ˀ \>E :9|%_x&\@-z]&?3Շ;cu~Y\ hk5.Kp7nr OGWG~,e05bnd;h?a]iOP3vժp9*Y(lhev'Z*׭YE ^ K0##wS֗g{x L} iR^LܕʭJ3¢:N,6=5Rp,!ZLOǶçθRhH®*;@F`%n/p5~:hHz黧W3"|6}sC%u7q8Yܞ= D_L=s5q(-Bv$`:K mV7ިX*$isWrh*RO?RFbpW%*k@YQ+2(r7^U92E ?V۩89qroҖn#,et2S~D%+ )}quQE?ְqɋEJCYDL/u>O&e *Pfi X=HJՠN WnɑO3Ԣk#!txH#& j!lR٪GAmNՕ^,INsYCWGP} (vE:ǜW3.ݵ.PX$Y ڨ^rE?hbN@($+ /Djތ$ȯ@ssqҺkF_Raꎨ&ib3jCbY}YRd=1"-:L.Mҭ1+C[1ZnDR!<* DI {tJ%: ۝qHxhG/-Y-[^~_uQX)yȎ%"lmvsZ mHaD2P- ,;N^#<ʈ&aq#!&|=ɟwB2DeMem;d{آӷTE 6?nIP]_x'[R9=`bb>%w]ԺPnNdFwVhx^`-jF3]`xpYT݀:%}IԪ۸ڢ6ʘ׌&K'xr_x5ןyGY&Qe faak*"2L뾉qȜ9Ѕa.|E7!D~4> qJVBk .?ˏMtbW,M0D|wkN̷ԏ(4O>5 z$ZruX-Xg7Hlg7$Gl Xo C^3f,)j F'*a/.CU4Qn!-]Pd['8E ~!O(3{`}yK0ZB˝dXqſN bW]*j+`C-V,QL`Yai2 Ӝ2=$d؝Kb0Uh4ÍvGm.cj a ma8g`B~'͌s=3snpʃG{.3Z &kO]mHS,|rP:5^"MIWQq衻Khj;jr],Hr?;E`C,TC#~ Ff)k6xvz<яsf@=h_Ĝŧ%@M cy'|Č%.VB۴B*8mM9'a;J=s#ȊnϴXүHq;$pU 15R<ce@'uHTKJ`L4s:(ǚ.7 Z?R+Eڗ 4؄K}Od_ȺQ *6T#hQܭauAٿTV? i)R4^h#ȳ>e>xƎl Ɖ_m}MI&Rcݳ!IySkrTWؖub0s$Ϡ{1Eg7ۇ%O?#=4 7JȄ4xJLoMΙP-ʆcsr&Z5=vf'!m\zH[aB AE9sFajꝹm!"oGɋxպ^a) 83㱳K鋳,2I\WºgvCdr/;֘&*RVl8N"Y'M,Am{$ə_}u롑'bJ{B,=Wp%2 պ1R=04Tvjp||^s* Y)B2T| ȗ(,zG[g"򬘔 !7r1t(4 |Dj$f~3-+9hliU\ !_fDbp`\UQB_mTXE`@@Oc=*XA}H{ĶU`u$aц26ڗ-\G#F.la *W#m1_ Gq&~3S`}L9~զ|x8R ׮>pl1vnԈSq@૮<bh/ٯxյh%|᪓~z;nXRۉd["fԾ}3$mZ5תMPoc/"VnuIΗ\1'z2 ͛*A,ds{޲Nyjv-+[-'T!Ծx9)ۺ`7677)WwTHPV)8LGd*;cB>儺5's p/n+}(rq/Vd7&LO :ƥ*MB\ B9Lt5ŗ>'Jc1|# vjLؖLwtoPߪ@l7TЛJZwE(|oV4@ @LAl}wVڹ'E= L5`gwkyM*`\ma]\?\'{9WĖtۦ{= p4*? dȢnlnm!7"s4YLl}yGjlD)dK 6fswS>1A8Zx^75MmDw.>"TfqT-ѐЊEWx){?.4?vA S = XT@SBK-,ƁH6};~  5B70ʰ3^hOYZ6)ogșJ;!*xx}Z3SF:χ%PkU P0t;kMQ:LcFDUF G3N@>\z)ȾȠJ" 3=@`ipl; QX8*qCH`r_}б c|Վt۠Og =@P>xOj/0P;CZt+ =Nlr#Bb1Ao[xثo"{Pw,{ܱ!Tx6i2#UY` OLbP{&8P}l+ Z){P@+_xEŔLM<&6W+hh Y.ǩו5x 2(в lk~t" z9(jر+tԒZH@l6y#!ˠ lщmUn"E0:C lݤIz PI^rQWym$f0Kn`S^ɦ:Tlwr%7p305 ?WHF'aa :[nP:˷[o!N\ad@H;^-^O9W̴2KRVKK:lVY>4M_&_UIJt3S@)0~q\Ѧ,G:xK,\w$!Hq0>CnwFЬ"}2p>2|ng oQHIS.'p4OzLLZ6`~EBFZ %<,.(;(iA~=opxCL${)4VKl+܅Wm9 y!MLjt9s ȵw Uo)q I.Q>K6>{ 5$%rPSQ PH?41+W?nn ʼn#Uʩm8&6,~/iaP/ד V 3)xYMsN-X$`=:B;\r8k|nh13$0IQj>irP93 a!c%Yž.07o8:بUډqBsJ̵RXnSGQ͵y@Mn0/@ud3R nh6<?^쵘Qp֕f5I DܬֵSpД)kL*g훿o ?-nsG\B(#pZ;@^(%64kKWmI:Mt3UiW3vj:a({Nߢ2D=pd8\i#tH(zus%o1sZ':H²YɩӇ%h5ڈCVQ4WR?Nn^7QLe -g#qDdJO\ X{}veӫ܈{ rDAYޭV=0zy *b~,&/*yt`a {5!Vbw*O/i:x 7ឞ7?sw_$c_ɥh*tAkvRg~_uR~ E)P{W]ib!w)1R`ѦQ6,+ kvGolC˗=w+?czm׏eؔ/bCZ:1VP`_iۥ <ݴxqL(`^+7xx-.NfHd }t$f4?~_ tY ܘxOɺV$*kƐP[sSə:칾߆Kph02Oʘbݱ,Pp׷>[6=onT2dU?< !1Tj•4g'${7/0K^yɓG &bMZz_ϏWpy*Izxd2X}4֙mQbh k\E:vTFMeE x:yl#́v[o ~x6MӼC/tI!CvFPh-,}9>Lʼ=L#d`j(`@ߞe6 $*(ē[.`xDRK3ZY\p,1ʝh\@QDz-n&{9ψʯGLy\ȧݧ'=&gav|)s/o$Q[DTgĈݓݳ51(ւ1޾m8FH,USvi `DR6֓pJ}:vckc/`.D(CST^-&. ֌gv#EK?\pg{,[G&k_>[NΜl^ ľ }V{xo*E<[SKhCfe-Aa;{`Zhx-LJB*',y!Dp7aş*.LQziȘ nw/˪l|`˳PE,`P>~@흝w)xb@Z—`~f}c DF<,Ԉ's _ (;pgY(T5s$))|R8Q~em4flz6,aBDZ2LF1 a%N~GԪJk$MITJK{B}Lyi{&IyXn 7XWx[}ᓄF'Β'ڲ]6eZsd7`q9JFa$ESLR'[& ` hU63r@xy*4|]K*ȠI^.mGNAQ|qfhIÒc}%JĤ`Qs ]0'Mw9RM`&{ J0E2|\~2/^z5"PptJSb /pC(o". hL۰'egJl{%@ExHk{\/Dfoކ l0dK2;j0/E6*^C]Yw 毹\Yhg-f}QK SyezM-bxР" e鱚3n:‘lda Q-yDu:/@R߄7^.>Q:v˪mg|JPm9{LWLfle# nz$p=6kTڋ,Ptm\uf }k1 !XoI<(H' pDʆC=X?+ъ.#8%5 &VgoBs}%>x}$UzE4-c`5~jlM^bϢ ˹Gl%5Kޜ#5JH&Ӕ2q /drp݇rt|->q~DHYj={/?5vˆ#PP)zc6KKΒDjA[/u`$;xߢThCn҅ɖB5%ZE x2n&.)dVx,B۝a/%6nh|8t@O&&2d7, md̊,؉W;0,AL!B)h`DUn/AFx%D-pP*HrSK %eL7U3tzE L7H4͵WwN0?V^-r4/=񍓶\ jBœd$vgYfULL]*\r& kyUy Jk#˧&N ɠ44t̷|gpL Ld/fVJBQFtb̘)ԪG X|37*ЃY%NSMD`8|6 ٠\;@A uLHY ˜F^NJ 85VDY;D@TkT5ws*ֿU`ID] wIq ʧ 4'{zt uP>"tHgQPw1η;)Ej)|5d )@}U a9zgͷrՄN940zdJv4 .[؂4Ƙt!@6ӇSy_)o0>%5yPpsD{2GY)*Kc!]msTֽ,"^:#mO4ԙRkL𪅕yt׻mߒlO_I$KtQ aHk<<(:"QOT MI_at"w9|?@GɱL/ [ד6* +\M_;$\0s,y!O6y~pB4~H:ܰozԤ#aLiѯoÓ r w?I!!9d)^q63d\(,$vGiNFO 6.:-NXv ]cأ94zPDVvDm(c9E_KA(gۈvZn{pW[Xa*߭Υr z5^ O vwkbP'M`i-+*pHp9mepZ\u2${ӦTdv< UȡwomQCyTr)ȕ yUp|ZA_Ʊ޸ X1>u;GJO.R? Ѵcu6!Fڛk@y s%h俞gP"eЊ5A u>LJP;+PKF 5yX\ew-^"Fq5ʁрkp\a#l\ख़W磓~ KAz{Zhf2H #1.}G-1ip`?DOjNFY|+zE8P[\JFlhfX:"Xc^nŇO,LT11;ړ}ŽI+u9_#3cL$HO+QIKR!"J u("лI}ȜVn^p 0pgs`_tQ딗TH| ?]sf7z}s=L>:Sש;JB#F gp/0+~>֧Tk=zlK*Z&=f .`k}-Ę\fԑ#0nYaCnY1%6@IE߁ЧtD%ZMS-vr+ױN\jy{ktdjP̩%vWE(Qp~ ,p.Y 1gՋu UK54TԆ4Z:oߕH{%}Ez! _]Z |FE-=9T]>`-MTބ+mApӭ21l2ZAV&OBEj(%oG'"!?? dzwW@awMow_ߕ4 jUh/E/FCq35' @]MǞxBUB3>\X+7ЙY>)] ML=װ9g+\a#S524vX4YDHխ5<"&#?0wuPS>'RHV=r{.#DL(ܺl<9kl̓;gSB!+wA>f]c43_{Sb $5sXFٳFOa*7:rfM.R`{:wLd.C N4f^9)LFmUWBu_ /wDԃDԤ;zJA*f3:r\04Cs3RV[0&蕖4à*>YGL5&N(>/pRRcp׼gy;k$+C%U;YBOYH*~b̕E*ȨO%^*ZG.ûu_h* EmzJbBm^~NEavK|K ޲-'w;oxXX,J (9 )WP#2fbb۴z9lcW1 UrUQC`챤 θ"Yd5{B3j1xLjJO bϹ9C jstɲBaO"ӆ Fbk >wY7@Tz*{<r+IJf_|} g+5Ot;1L=/"An-yVYiK\uނHׅS3ϰ.:cAX8?jWTd8i/6ڙcvOg#cEgS |i(L FB4Gˑ%7aQA7f[|^)X]+'l6iufua)yĖ-J( Q 0[uGO#<O\6̈́m0=VA"T慝 h{=>~BKٍ(ynI.з ыzn< kUy?*O;5_Oj)>bv$q%ʮk_U?OJZ>q_YΛ1@6."t'9Ch±Oxc}otB9~GԙqFtmuF [R(=]j:zvaWH 5ԏoE 9Gӵ2l׵'DP7T\%%^2Pus!h' Dg|ۑ@(Y$ ˪"xlyf5o7a)3Jfv+.b6vF)`]2864د<;Tb2s?D\`Rt82~\F$:TwO4gF2)NEvo,f}xa76=5%\cFOϠmC]`WáaFwb,c!叟ȝV\۟2k&4 uI )y3$5Y*z]/|g.>G҈h+E]@;jIͷc[I=o% h^uⰕ3'Q}ƌїxSkVDM=1"w8 $aK@,2ܦmx Eo: #^aӕA(uI_8' P~a7AQ2Rw>fNe 6W.6X{]m*aĀȚismF99|ψ@:w]#2$i)F٠|=.OW!~zez6ƃ}!WqUJp G6 0nJ8b1MGoDp1΋=.CrQ[d(nu&ԙcѧ,_l$mjVTBcݫM:Qnbg(!-mnnRfLPJwZ@N,=I8|VO go``*ZR|i5ܯ[;V w:1}!rb_;\n_@OVm|,eAFyIɜZBIkVڋ_Xk{b?RlyZa[7Ũ,Xc6i;N X?p2T-"ԬLg{Ei^ 5"ag>;4FInZή865I-1'idUcY`d.STȨ qQ?F~guj7^'9{Bc}u^/+(fe:[MFܜI _v@bx8Z"/Ewv^ 1)1yj`TRLV+ČFǸڽ2 mJ]l4\`hY+ EQ {\lE_ݤ{O,Ll 1P b* HaԔk D"?Ld&$VѻPCn40"WI<~1Yʯ\ns ~bHN095G.3_nw-) QJLzvD:' k9r<-bH;]G?*r'cZ֍'cA|]hMA($yCxZՓP2|U2x=4P v(fv^疶 uN)8}]ͳ\ Opzk$S]]yz fO߫,=}F=Bó<,R2%H_UTμm 1N? (26@\|N.|܊88iN=# ˪bf8ݹJR,1HY@,16oĕلf[w*l8꒼mܮܥ.28 bMȎ!}̪nlӶPO6i=͒V ; d夆9Ar恟U-T&oj @deIBI=~ ?rY' kG&Y\Pms<,Uk}bt v_ĴOD1;Ke,y9(787OiQ%wcyXTT@=ъ-1ad/+T)VYJ=\CU'_4[wi,ga8B؋ l}ݵbf㢁+.\/莞4SŘPsCeSyIC9^>hjc~\W\.ɋ(hNz+K5ұ&3p "2-t؋l/K1$GzC>9A- +j78iO[YѤ95-E¥%\50v$ :JY/yVxs_o,>u9~q"2A/d+r.- ;XZ|2wI(viG쉕$1r/c3SqK͠usP2[@{88_SU]NŅgLyߑ߽']7>O\E|*L;bSWͭvyFs:mRl<r2 q2&3^oX Sv=QhLo>~aӭ]HϤ X+@t_ JeáquG;'ݙThQh/i~yf2abQmxX?NscIVF[s1LjԺ4^g4~z,*ă&NlW&Mhb7`hZ5 Ԝa&6 wmpH nn'(y.Ky-hgMK'MkL^ 9rCoZD2.fa=ZۋiZX$Oe.4= Kp̼^zQBsݴc˭q#dka~AʃE?{@E0- +nVk-dzK48@tC&Id+\*\D&r2M] S'6ĵ س7m4)2q:+NqV=pWy"FkӍAioS=`S#c% @wXpYVn߈iV| v8wԤ<ӓ$ #)\N^~ i,pOOCDa3b?l+}  \uR`Q)u\k V>6G =Vީ*"RBEqxlqo< yWUe?Xڅu9=&f#k֦٬dZv'dzA𤽦%z椏 c6ڴMpçqHCڦx-SfsszGke}5CŸd]ƍv)ԭLh~Ե}86EDX_Gi&"廩YL c hĹyɈt ;XJ7Ȑ>=3 à]f=N=c=X'}mO;9p |ɱtwPEPt:5+/^3D/ȢvNq;?j8H3ͩ >y}:?õ2q*h96,i [CJq/tAe:~a{B[)xmJάSPeA7b˒ lJGg逡*t@* ]OsAIFVڐԞR =I+1Dzr)1Ta~/G]g%9y.?NO33"5_XNSGN"7fLz#v^0.-agbjiդ&s4\d<E.»Pv:Mɖ ᭈޕ8on5[`xn.[IX_E>nК$&Ӭ4e5.F B}̬4LBXO@F<6} ~+wC !ű d{@ϋ&zzC0k vϦBO14<8E+Ӵ!=,b4NE$Wf)UͱDʔڂRĴ dVau.k + cwEhFNfoi.n^j,lک2",һtrWE1Di-.,LeM( efa8 2N3Ċf/V^:{HelC%r)m$pA1ɘ:-+S[^oldazL}pSCq>* f{elu 1lA+:s h`OA-N[4:\[y&vrVÄ[ʚA3iYcdGT\n4jTIv=<DLRG,ExJi|ͻِV'H ܗl;gt_)/xM P7jk7-uavZOCty"n>]u tk*.8&GaiX ^f2?v㧣r˸, jN3\B |.2=`-iwpSC Sjo؅U8/o& IQ>h3ꋜoGtlM*.O?,X*OWZ5U*8VUdǩ ZBr`_;xt}r®TTfJ2lV\4NnDhp)4b 1wpp4 /ye:fb7󩳪"1wZoUC,$;mt5dJu`\F!J;Y93Nw "ֺT5x&8''WިQ/ $댋~S`,ݚk;jJkp\A!ౝrNkOCX U S*(s+%HS qR *N.ybl6gm:);~|b#?/ J-DMAO;#.hH>'HXԥHnEߴ|{#( ܪ[PvSV-\GQ[aDKYܸ֚y}+o?g\߲Zqۗ>]$X*;n?À)}M XҺ?Dj\F0~ !5მm[[0TeyH3&A_͖"RF-Q# nrL'ryMAH4\U(IذDyE,j_U:NJ'jPkgoe sO%jڷƯ6=-y#ºВ[="ο<}/9t<9#x7: /@\}| vistԕ!:}@ˋS3A8?:%%%g#(u6%S`kοtGDyDއ?A-wd [5Y5wTb9SMX) &Q+@57~нk/C F'})4,Rxx=2:^~$xf`GYݼE^etMPQÍ)UoG/nF>t]ܮse94j-QRx8C5@ *<>)WiLD\HRFH^|{ڣ@r{ko7~jyǠ7O$|~Te&f}u!a]""5@dq.BL%ux ]"P1::}tRumUiUF'v҉Isnuga(JY]7No .L 5=糕bk`aT>|HbF*HsfV D bKKFt۬` r{ƫAU3%AL$(qH`Z}ov.N>{JfK-UFoTu_؉{x=qg s'5W t~d۔ T0AH麁em0G|N E[`hE{ ؾ:5BxZs՚|q͢PXSqwc: Q$6. ]Hl ªR Kϻ޷ݴgC'3I l-K.eDpcI`ubhW8R=cSjxa (M?c0qg0@yRd(:!_%˲ ]Yޖr ؠ)oz7u?B l?EohR.4>>'oYrdM/ p(<C2Ɏ6N5ƆiIS+t]=mVAKm%an= 8 vk5]"0DoXoiʃ MV!L%y\3V(NkG~dj'\:.*, 26VlYȞ jY=}ko ؛\ aՀ'E"n7<Ͽq̰UMQQ2Q1XB\v0:zC%dLxÙjϽ(ݦM9Y6nBNLPSBQNVIS1/ WEk 5q\~$9Ộ?`GG(%zҙ2|Ia \ o|C8I)b dn}8q6-hGqIxUbg8z2A5`@ uYKjGጂJMqlQ}`G!-9<9[c)$1 Uեv^_y#ϖPB pƯcsB"֏txloI  ,h@ ni bct-v_(ܤm.*G @¢V`xo9`)d$MEMIj*VEՑ*){ {` `Kdg0CRLņ6qM|M_=ӜF Z">Fsͪf11Yx2Q% +LR s eHʑvx#n}n0~]!H3c6cAC`o)hȸƦ{&D3`,,pl H?T͑WW#.$b+ Q`/{ z+xIF=µ@2-vci&3nV =&55qK3S{Ln'\F{/|5bY2?Ԉk@bp'?_w7ݐ1lǃ^vF 1ٍť4p-xE}*2~ؕ#xp5$qzF2-:e\8[l xC&26~ЫrUa)Ni}}'">Px;]TG8(fepE C^_=A>G٣ X-~~EcX6zy0}%ۉ6Ih|Sᢥ\/& וGWG\RB#vc\L W%;Vi1}lLD]ǩ$dλI9>T{tOr;ՏwE#|iBeE1b8ZW<[6c~D'8 r`NWy]+>-0"m] i()_kgt|t@:1&]dvDy\%$a$^Lq5ANt( cڣ+C$1U"J3^LS+ZG^"o&|&!`W0%G؊ܣ ~h:aTn=CE)ʣbѷ/?+f- eu' g~Ҽw@fO$d X<2:߳B3o(k\CykP5 U}{y3_ \713,D@<&d%vh7U14B)S#,3Q*[Vf T9"E“V6UtSq2/dUgaB&Bv{{4VwbC0'z&.= 6s#&|g➰`9Vz5*Gs1v-/3 QOސAip{#St8<;[T $T\WuWX,qiue ★i>V]$K_A9ǢF-؎IyMFI&pr{)y\jb8pI۬pUwƫCWy[om.XO>iLsZt2R)N :K&xZ?b c9 }G^BZ}9/Qx(_K ?G:0+"~Bs^ `۰, EC?U܄>Apj$D~5Iӆ[AH^O_dzf_iCw? .T,5D9`Ѧ eOd-!-yBz-o'mZ34 W^`e9P 4}[osE)%+{)grT9R)e_BcXQRNۦ9 < N)HM%.#z9v^a$AyhK*,pLIl,h4K_^e':ˎ哥4*~! w0h}Pk>FUYVK ~c8DgIчy$^m6Ȁ߾aeQ>⨐{Jzj ;d3?Q!e"蓨Qv%̵VABFٌd-럨R2xp H5D\٭ՇK `?{S֝_&&>O#0\3ʌfL9D[z/`u O4l;&Hah ;\ :6w3"pLeWdh{d;!ٮw,0tr)4 }˒ 0 rT?sq0omm!sлJ/IGq0i?P-/_џjyHnڢ69ubvqM_fZ!BQs}xp>#{'QUKTqKyz3"tf&,Zf?h4'aF+ $ |$4k8%&@~J9nx$rWbqL DQ6+db7jdU#~a+ٞc:tJc1]PxuuMtm+3HF-b0'O.]`&y&yGj.i)Ic^cr G~G#u`~KN7tvbTOëFt2+S2V#> ghdfx7VrΝj -e]SZ)Ό!C4̺Yq;㌩4!Ɂ9-'sB~ǻ9Fnɛ^d 7`aF vCn\CոK?SME j-W-- 1h[R0B$]ld {wv|)->űk!a݄><]u7BP=qQaH`}2FjxIsטjՆOz7>O*2Z91;Ԥ%5u@s]h9anA@lylk)y"MJy,a'E{817%.PEmKG~͟n jhp]W ~wy3HThK+EáKmf}r'an'9bBѲ9M8S_cއw𫗍,of㩄QCb״zcc| y>4J&Va8KMI-VI2nmT~7MZQ{Ј]B!l͒_ I7g{ ;M?\8k^=d"2^A K$oC,4!k>[]uWWk8z`FE*o4hֽ_O, xlyCTu&GBb-B-Ն괺,ИD]NXʪHQmGٵdъR#3~ea?4O}`-U`wz$є+s,2wOج8.,3_P3KQ4{#eV}{Gh3fy臄9'mb=uak$ 6<pab[ #6 z=t3؜׉b nGQJv 3b+VCD^P?<ލJAtL_uJISNAcL|ufů `p(Ƒ?;^qܮ1aeY94חϟrkkS@} K7}EO9SyN5g,\}i@s.o3 |t,쐰rW?KF8T1SnhɸL*qrKͅg궰Ic%hԑt2,XRU$WrjxΓQۑA+B}Bm7yJe "TLA ~jc[2A淵"LM$#ӷ]wmfWRtGe{Ͻ&j#狼712|rGSǙXF.\ TJ:M~qlDG %{kaaR:L G U\nx<pB.b8ܸ5YT$1Mp}dP0.[쬐>+mWj(ZS)̫ D*ft\6ŗn{{Kr>|Nhm~4YBA,Nd ܜ |Ot>4F" W)A81h_-WI~F. ϲkeMfBҐcynbyoHDIL2ʼ_yG,Q|9lt Xw],o7 !pYlEi }YQ#_=P6*+ʢ>ja -@ h$$=J3ᨥ3 r;!\MY o q3=rT?D)~gCƂ1 lMli52GGms$p+xǫvaTϊM(]"Y=gMnwc7^1 a"WZL4bc(-CJ lCN3YWK$;QxzMAׂh!:T49/˜J|TN\$C_8$DY~#/)X˃4UHDT mm1((4M>Iޚ9RgJEaY,'F,]Q#egBLE? L&ɸX6"jdކS|˰I|]%` S|;ڐ<0jE+)-+~ ;b0-o\dvq<[NBݟ|JgR߫ dS[!Co'lY7lѬ7h4._MNbq)R/K8yBYvk.ɮʦc.3`F1Qt+v3iY5 X੅4W.?ZYY)5+(=;eg8sq3~ОeJ EEeI6:Fx˿:1C^_\KHRUb4+Ond z[ &BUIޑ4ٵmj6 c?NA>sXhϝd|-(u$"q"M4u>0-z?N& }{Cp l Ve |B޽^rl}:|G񸛨>Em EcIדyYČFr}6 CY#=Dz.)'ˆg}ЭUxv l1|Iu*a}BXTԜ\oTpz59 M9.1/ۣ)Eh#Lg[ ڀXyRT 3Vz^ÚΪiAklolw)Sdc:R|ZT]KB^Ify!@}*,z~{2w(x7 <;TےܝtB=bx\akTjTxXuJPAG :ʿ2x,h^c>*U!0|vD-q>A '" a5V_{;X9zrsq/\^t1M䓇 }ٚ,o]`oٓb'.ȗo w#N]!o{mȧkB}!,J tPHOҳg#@~MJ_Y`@u(:˷h`" R٢JD?6NmE! TJ5B* {U~X9cӄMzW+4l/sa0YG-R*l]5<575dYcIprԎȕ3-eay9m+P@J5I5B!.qC"B 9/ ]DS6N$s݊>0n8 U?7yY8ۄVX [& 2)>F2%w2v^ߺPq tz1.cB98Gcw17.mX-Yh- gKڨ3 5J]!g Gɒ$Fe~٤.BQ~{ˢ! ɡ3JDȄT;(+zIծE~@x5S4Џ)7 qw\Z ̀/zL솚I-]~@01"`6dZ>8WLp$ј 4{GǗeOH9~~xlo(ѩ8Z ro: /rz>25.sW&!㳲oؤܸpT&R zjew= Cxv,ÙY P|Ej2 Eض'1s9ub)}5t UL߅85o_EGȰu=~9_Dj'FKYO7xbk&yRÉjAټ ǪNN/F ;X/,+n=ipnBfUDñ(#$FnS651gUJ TKn7jQs5tJAh?Ԋي,9ߌvPX!;f/ݮ} `|t5,wqyRD$!AnABd ?yQ~]`HVʪϷ=X(;#]{Q}EAB2 t$U 6*Mj2Qvȓ-dcE7ů:L[t^MM(y*W8<Ȫ|Qy"=X;zѵs2iP*'aGRw7~d,Q RT?3+=gd$b.>Z[\*  3&Z 9F;1 &-!` V[oib7rY*!\(lYʋ̦)!2b- ۛ QiC.^l~ALZɸ}glSv8J||:^a}鏄Dko^LS^1jц qI%!sI,LQfg]#ׁH Zax`supH&y|꙼=>j0Pp<=\(ry7;ɒ >]gӫDŔWmtW݅2GCQU$+񊂂T S"~$kwHEG%@ƕz}0B`&5<95aD%G,Tzp""&';Y؎2UvVRlj$nJ4Dk0&dzV-cOZ( G= G-=5BqR|XŋVhS+U^mVSU_G,9řW#ec\ __p6Xhg=u:j|eIEIj5,6Q&|.x)5$Po=<ǵX| I-prh8ỄUXVZ?Nm3.Bu_Z-HŐ4 ^bf,Huҁ{Sxڅ`HUc?YQWRfO!-B 5,j/Jĥ^zJ7wp1E!n\wF`3yL2perB8X3묺 Otf{~ ܼ8/)[0!%AZ&+@Yd4Uuq,\D$q*K/y:m/消 4'ڹ(aIY# e~?ϫ˛DŇ`2*˚4"/ށVJ¸Ea4ټw&` Dm7CRn:MĬm侶*W#WC̙mb5Vc"}q)i閽Pe8#tzO7'_B-¾\hoqqL!OaTHkdMۉːFٱ[kI%gd[?,ƶ_fTYFD<_GN2,\uYT+8?@S8f"eCNuN͞xJbLm?C@0A/e Ն *~uMQͅb';o0Ȋ}>vi)R%qmCox[FҊYpyg|Ϋ bt5Gk-+̼NplMnHN싧߶@]%ڤP@\wZ$Iye>Hÿ7Uyn!n.5 u.7l~fּ7qdbFe=g`aA3U"B=iԚˎRI6ko6w|>(т^r`A:SJ=2Y>Nr?մf(롲#A5mʆt{Q>0l)v?GI\V  &5X8gӲtomlv .v.ƇhaylׯU{bNϺ|k {7S 8^R$=&~˃*hhqkZ !z8: ,\'/ưS _S F(!̑d ~Yr*)EFԩ+PDoKR$#z'^2@$‡` z9<*Ñ93īhvjU:WqZ6k5% 粮_7mcy皽 o[LBύzIFVQ+` aAfXȵqLB 5pqjh%:Km@u`&@*;N(aʎװ=ѐk?ЦrmF} :YR0{UUޣV{ڐW$'q 6k Y| 2YsOKYni;Fݍu{ pup%!B$|L;e'Z?c:YDn[&)U*3 7bp +K}>ؽJ*W:0MP.D]UI&m2@޸`deȉ0*FKs0 &3cCq+;P3.ioľr^$+~:Hy-NLf}i hAԷ麌}%KT]u Ic"ѷn꿳Nu,+OC=(E5LX MzU#lF1qgz3D!awwrI;DA;W Jʦ{`})myϙ,hfw)ZCڱ0M-5+MZG r=v݉LgM׋*Y2'xK>]X;t$8$rdMk=}Sz-ߕQ?ln _MTRBA `$^o֧?:=K*Xsnx>* U5j9tgh̭<(Y`BߛӸT 'b Μ/3%ω"vAb8_ʑ6!9H AkN̞o:jXo*sqMIk7 e;gq B$LA3岦<)Lh^ p0uShe2[7d"8x$F)n۫.S&]$9!U+hҝ-+POyg+|'5 }gb.qA7wxn cW⏑ذ+C{f%%64ߘO8XifJ-- ٮГ%i%exL b᠁KF3M~bPx'HUNt)^ɮ2,Ne{qNmm6)Zh7cjQ7ShL)U7f"ImwQ,B*qjNrSx2Wkn.4erÁ~\wn_ E$\ :كޣxϝOTVSȿVi.M:n&؛oxN"V ?9nJ-4~TʉGJRd?o7Y? ϓQ<*ɑ13S.iOaaH+YX#VP0b(Æ Qf\ 2@wQV7 &臥 XG ױpЦNJ_*ڹuA]LL.8=!v33ۙKOC Hrf$Ϲ^D~2JVݢN{v*ʧh r{P“Yn5A`}OzGq\,`b.,Kp\{[kwL&)'&M;CI rK,y N6o'aǖ]e9?ݔCZIby#™X;l`Qht07ɠ S;F Tm?[a<\z+Ɲzvi'IgXWAkGt.}e_wa{) aPF+JZ&ea*`U4h{Yν ˙+D2,;_+,[P}TVΩ4BJ@bY]VL-"T`,5[d t_`='^SMPk3!Er>YgYd6 wq*䱂'R u";{n!)Ps+_MƮi7BNwӇ+\(fkOEC Lo$+{d>%K.SHt5-F䇳P}-U~ΚĚx_}I~*J>լw}z?p7s5K-ԁ9?sF߇fTpQ9]7X\l7Wlo0=i|a!NPAql\|Kn cBqk:qm3S Sp Ue;u+$wПJ[(G'+SOfN,MV AmNxQ0J!fp4Eu6zBV Dc/'#T?(ڟr'i@:=TcO1 H+':%2` IrGfc>lIDy<0sY+lKFmKK3Aft3>TXe@xSePcXc* (1bWG)BڝM e#*N*}N'8.cwb"cҌ zgngXe.ɲuc(b"Fj4$e8AXLQjM6] ]C` -!Kg)!{v,+>uXE^oLvo֬ AܪQ%O (0J"~I&֕r♩Y 3b=rh@pHC. r֮]XbȤJZ0Mʾ!)?`v?s5le?tVH.='{ܱkj]@VuN(].Iޯ`ML~CavaQ>V،p;ߓpmJo:PY]M#0u0/1K\^ RԥӰ՞ky~+Y!=+{.p۸Țxhu5'&3*-%t IL ⍪3RgW2\/VCBUYƼEE+du%j,Tl)0(=<_~bp>"jI$ztۣ0$!:@D >ab~2nF ]#j}rk~jA'u=):=8bF|ۖ4^ۇ[x l\^/4=$,&p\uGZsCqӅ% ZT,h6%FGv`]+~}wBj)7*wOkOW29EQדHkzʯD(٣…cu=čXx%z0mY:?c:Rb?8AdagPdHF %X|>4N<#ׅ+-wM|hX $FK>^fYʁ:Bvs9 @O glR[x+*w5@/!"H|Jmq#+(/Hr+ ʎL8.Tvampj% ]BD$~2^.PDcZ5k}:R-)9F~_U64) L:ܚso}A0bO;-뗠4z$2N6kUn5ݸW~&K'}C9mMBEs7/TL9Jj0DA0By;vv'ܵݦKT$6j7%w1+AOvXGPmN 諫,Uh'6EBqK8DO&p)$H$xeR` e[jݛH^?w4ok-^1pRJ2@\-Pο\qL?8yzD"R'xG<3=<@ eEt7:+w|혯\X$Jݝ%Y8x)l5v1]9 neN/-5k, >;shj5C-:7ݲIM6(y(MDi^Ԗ\xaHO5 ``sG/@ᷦ%'U9;Jqr"e3}sk,9fP͞h/p'CLS.ь}{/|8]q_{cty kb(Au>m{a^ޜO۴7hܤׅF&v!<Q=FFM=:19dq/s=ah,5WO 1?W%:8I@[(Et5G"fFݰl6!&awY5tT^ w@L'N?0˘~FBxuCdO 7d i 8 ne3]|GVJ {lUKXJRPurO4lNYZQRr\šũK2 ?7zz3~ׄz]GqYdU%,TUJE h VwpCbu~@B>T"v<dž!˄!{ږNrjQF_w6ک@$0IOpb1Qѡ_1fc6^ }JSIτ{Eܼ_ ah@PT Hvǧ~k6H "|lgKGD3ҷ [ ӖUcW}a~N Q%Wa {fxvR?^S̹#wpFvQL3_hugk5e@'D JM˯񍟓%ӭk!^s=Qz]6ȴrݬzRdJ-nnSVmh6h񿶓'PknFT(M7 hQ+Xg\# ͚Ew/1 ΂ѿ4J5^Iơᮚ;waX}|ߵODjNeӷB.U'{{{-.{#I3ť~g7w("Z5 oolP}B6X(E5d Q YKcbf?@j' |*tiŪxJTBsM!*ZwR9h|BEU %9^[X겤2D~tJ աnRsc 84NF\v1^Z 7JFif4pݯ_AmB<vsPZqGzD1-2V TTa_8X =;TB\<,JI%6`ڽFxO?Nz]S#r5RrڗKj|_(LY1ٟpЅ<+]gih[U<*xk&OItMlWm~e_S~(n!dQ^ >d$H#ٰt25NHV&M˔&p /#&k,Uӄr[fGbQ&k->-ݽ~YmBI]Z\FT5kz\ ɛF2Y#EZ1u,->2\M,~bP3rZ;B,]95֖BzIJ5> /+3TvpӒΐIz 3p7O\gjS^!E- ̍RL;uv4|\ %V!3[ao3\6&UBҸILREw-EwߛVEܠip fcNyh^+Q'xrܫ8H#Т=/o,yO\Ѿb@+t xg%UW3ǂ]ަA5]&^ng9 m VI΂x G]E>"oQڄX$4cUV[ox̚S†#&߂6,VFx=~̨=d؏?˸Jf7{,$9I`rTTy¨-89ksb74L S Sxs PfkE`M8t䗰#y彀Wf%]!5;zðhX&#P5JuIpzk%OuUÙ2& ǵE,c(nnے@0k-#b^Kߋݞ@6b՛v:$߻(xSOB@FfiuiÌxsMUyjqjXIKDC@A:MyJx0dGCvѫ8A9Ts5WD^6`ڂ,F&H. Xv"f _R\ C|WKB 3 !RS2RU/4}܂8Os~ 8/I~Qq 9|2h@q'Яu=y#q=oӿZKtW# ރr2Z~ "r˃Ou%pE ԑ phп+\4KĐ}Bz.jb>ÏG*:78$ZɨQ*%YZX_Y0m8 Ӎ℉h8/f/{Nõ=L&L-vO廁EF4ϫby}NP"bL/~LS^DZʲE~ rNǔvʁ|.ءJ[&7b"ZIbM{|PLhD-t؟FcITJ)#NYP5 Y*)rM%?P)޿VA-c7׆K( B^˒]|wũU[&)@ (<={YZݢ0P|w)2 L'BX.."l̎Jpv{>6K5hVM!^RYʌfr v_>U?Ӏ MY~Ow iemJd3X/zԒߴ%A xGT s{UfsD_x5 MRBf4Z9ʼiRu%7rmCWGO\1+ѽkcfVX5MWdH嚪a=V^p9;aHcĸ>IBn}t&So ͔cq!<)Ee>jR@B;Sa!M'dх:c5>K#% GH[炕%z);QN.#NmjJv]aC\!T@ONE K@ؘVR]w0=y|yAeʡb\?mg55oi0 X3Ah j~KwV+Ȥ*?THMNb,J@V$Ƿ4˅h4W3[猫{=Itp'E4Z:cߔRlԨp+t2m4{349|U6iͮhdbG#I%Y0q46JsYE2ve=.ʑ +hްt@ (^.#;9_Q! ʆ]/$ 7d;w7)o[7$t4_rLX& ΎK?zH0e0 ja6뱬^X}d غƄMטvC$\<`?Eο0E%*]l:XKPisb_wii\Dr솩v' +Y ߨS"jLD#!ɃLH R-KN(g؟=ҏnv(  4Ue^0X lv>lD=jOtXGY}B(HUw]@^+?3SrJp? E᧔X‹ozH&"x W'%O%rɱjK)K.+] ~Y#0UB;ĔU:]ژٻ]\T37#v}cNVȁXyE~wȒLryA{5 ͖%W<" W#)ڨKC!"!f%$4AhjMEIh:3{ݴ^Y-ƙ*t#UJhƨAB 0qj\2{Ρɷ˶hB?iC-o )M\Dߗßd#5)+%8Ro.[iKbI]U-ozdhg?aA['hgB ɒ$e7";5gW5[f]=~iBq|.s?N_k9 !]q>ʔgj} Urn5hS2/z\tU "i[Kx`N;.o qΩQ~dCtxrHMzIL!r3ǐB\b_Y^wݱ?l0N1XsЪ3e[LFw8Xܠ(i@ ;PX=N~39T3'=5o6FueDv5 } #.9{33Ai])z7e![pV  s( ^p59xi: $œ&59 GxK*`Y@9,&6vTRW ½$Al';o/̢$/fW<˴i%r\lfP|aQ75nBr1_@ H)ׇy+ls HĄƗ5M-K>46\AIrmaV=W bӬˢ抩) QNTҸp5#VdI',ŏdY)VLPr{G3fu{ v*?ުԕъW$E%D9Ihbc_CA q3ڶn|ޛΠ̕_ssӌx|> ELhSQ)Tk T _blycf1jS:- 2݄3Ffj7Y5* rg3sY:$5xUb$?U6|u Ry琱bc:u8fMTIF`-)r6Ej#̶pueˆPpK/ůRTי6:ys¨b~;toGH+C>*n/.Aiz&-MM R3߫x! "KqRU:'$MA-#ΦUe)4[e}FҀ{cI{ K)GA≅LbaH,_Dנp7r /şIr߳۵t^bOGQ.7l0R;$Q7;5l}xd#@8X% Ym'g5V&W.j#jNkѡ_=_u6;(*gGGrv']P,b 6= )=_M гO#_JK,ue7Mw=9B*I[YOGN9-/Us&$ h6 ]X6nՃ>G{٥s*/ &Uz߁; y`hw!Sc%ά iX#Qr?+Ijڄ}8j=%u H(X"jMƔyHqh]S*oAa{j.3|RfaJzGo$%U#H 002qGU`uI|^_Ł%;,$ /^}BsN;HLXR?2мX6LdΆ%W>H)ZV쎪Eǻg4ϊ:P0 >}9̥Ky*5lmx.yBE2e+)8iwDq$@KQ ceu|AwJLO*s$φ>f'//fS38}Ie@kWXH^^zˇ^39m\wR{kຜm=* :,m$ej?*HwZ L]K̄q: M2}*'nѥ`z N+ߥP֏H&ƪEamY,Jon"ZJ1tb\u bSʩcC(@6."dEPƠL0hĬa YdLs(E49Hd`iNh ?\_ N& >Ԑ}R(qY}h22o``ORt㾷?Z ~0f~Ol':X|>+'sfntk;*V2m)lZ2퓃HN?QZXx9m'F7~?g'>%vK_=\ ?+ d&D}J 4D(oodD7a.D# 3;#3PI۳<0[I"0qH DA^K޵$aBz7⧛uգɾ͕ ˂,xid\0ME]b\*y{&"!pF-FVw' .9\.z|Hrn?GCŠ[vc;ɠ>B,re2yMۛ6sCF4U3McBsˮaO֭? 7ͰN9k<+QGjce@P"\JGBN#fJKVMk31ߓzb{` ޥQ, K?DSg3vyj.@cÆ;4Bl{z- Q vª b4ޕQ:|f(飁ڗPO<'_1Bmxγ Cəh˂*` Lz+y'^$ |z4S ܓQ]ެٓa"ޤ?o[hB9~t;$Bcr$*x`ej&EML9Q**tbzZy$ɔ{ȷ#ꐲ9$ápkPԨV&1f o)_f?a`ާKW>m,G $#=֊R-"H6* @3'p$ h>T=pBث| n{pI,%`hO>*4Q18WB")&ķ4M1Geʌ$֥@*^P ۉ>mJ~)'lt4Օ`Q>>IPDK– mnx{+Ċ1D-c}71Kzȥ '=E㋖;&/r^{C_`66_\!K6d?L ?[=[̠KBW~xK);;*Yj5{G&P22b<%}ssUÆm"ܭ%wĂ}.[g dpZٍPtScM6q?G3o OgD)` ӝᴋ:i@5Ğ }I53>q5ݢZVR>zyS{gܢ&]aM6fVDY쳦CKdy %+]#̒v2 3´dфvQ&aqw݀ғ5ξ5+V̏' %<A}}k "vH /yuS+{rd !6ʆl@?CVa"w;Ƀ)(ø=mY\+m7(P@H\OhKUA-*+OcWI눐N㑐/_;cւ2L+j@BM#燻Mtc<0F2ߒ@SgB7Jq]AZeh[/UZجx{;Plf糁/,?.w-.7+*B-8LGp>HkNJJZ(0.idk5#UB}MLhg^Yʧ+1:x+ʖ xM?T( ͒~f j!^&Ɉ p< ^oI?`.WB+]|>4 Xͷ`_LB1^v=q œp8o*:f3lϓL?@XaCBeӂQP1yx8U.tRXmiqk fC l eA-CRN֗P8oFHbW^þ'.'brb,>՛Vm`FYFVz@ekBHuhu{Xp^L <1]b%@yz2Ttw\K6JBLCͶ),g\ao6#+i'.k뤙nRtH7y&s]i:#4f*cV.T|R0Xݒ)RfS?뿬F!NP25L{-4?Ȉ V3݊_˲#z1ϋhuɲ0"j^!y~ȋr x"BwEN-QpSZ-A> Ӫz 6dUe偾̣~6rVO/yxg_ dhMpEj+#l1ZviyWDkVl;uk2_)vيX]lKYDcw)n_€#/4j#Z볌m`jQ*uӜD;"TP7\&S71`' fښҭ堪¾O5c̋yjrRUW{ר@sgS|^ZTdFag0 {t-82OH7Bs7`,L^RcFoH{` )֦~WNlu!r_5өFZnggfhV?ŷa"Z=73*`Uvȃa*M3:~K@d,EA]Sq ̝r0fK@sdY=ooZmoLwwceTp_ d53** :eIe8i-u70T׈$UzFLg$lJMT]#LZ=ȓQ;;&^]Fmx;{WAL\PŷmAvGlEySx;^PjaN)+Ա^L<,hodI2s>{ -N'Ϸd") ǭrk(2X%v~1qޅ,"C/-r\M í(lB| k(Ϳmem>TX(\Bk#4{Ś{9/<ƅ8,nz9B4-(H w&8c/)G+x]פFB@ u7C4LEOgߎ"a%#İ}=mkrr9vqU4q ʼ ]I$w4r.[Nf fW͐hhE$%zqw{`a*z!hUO* U`Ke> $kyf#cfZYZX~ Ncu ī~틴'zB~%ǒ@ԷL:U"MWR ND2iA@ yh86 3yS[dq蓩inr@.dS08R p:6~\x'G9{_ z#&II&[uv[FNwÒ{ѻTuü_`c(Ec1QC/.^&(+M2yIxԄ+ gF]c}?aa$߷mk!H"I<됨.p6p|_?+9.+7Pҍ4p ks2'Y8AYא3B*Rl~[őb"鬺r]r~aj`1DKf6#v[&z0E'qIu80%~]KO U̼peU*H-q›n SR]9;3uE#eÂ~GaDMksEA~"igݎ ϨDّ2`kA\ D`R ^'-jQai*L^A]zPw $‰-4Bm_<̝RH Ep'~Tm-TpZ65sЎz:=o.\DݦB=鉿i|^ A5&_ JN-{j cra $v}>y ʘVVn:H%yݳ^ĭAO# :Aޏ,qU Nw;=<ȩo/5g\@oƫ~|vEiǯ[!0B@]q"ݰ~j_/tsDżF^3Li|B\mMԬąmَ.lK+3ܗnsc ϗ@#kKs1Ciݲlq!X L?>ǿ+1n-9Ap4yo~=2AV҃i;m4Ox3tEe$,'RFf7Ugr E.;9eF=?4 >EXzڡ6A"`&L ; c;+rn/S;!.k[(KMPNJfѢ9 O,yN7>swH3g'3̦Nd`,vzPDj"P.(Y6.O' i\JcIa}.ʫ^ Ia$e,0 ä8ت=J iMM F:aw|q":֯v>JnIvWQ%^ rH ;Uؔi'v6hU{fV^dk#O?ٮe}=46HiaҚw0ڥlܳJߡ7hAۗ'?drXɓ?{kcZh#^NwbwßkBjys_H\xjk3JHIӈs2%)4z.r,8~^-*AёPTΗa!^XvTl+=sH'/欛hPy8 hB~3\CkzzE2nO[Td,1/@7JP~5 V5ajkM?4.]\n+;p eF鱷aucOR%iIt_WgFc/Yfb^~C'q#J*̔`ULwD_ۈ{rH=ape+&TṂ we:l}>z}Rji%oH7Zw7nlJ_.Ȯ%"055RӞr m]qxuPs%+F1k: klZRV-ko0W?hHfkDUjeUMN\>cE фf[kޏ7r:P*%q6=gHdDW= kAK_a7, yD*EoIPuX )<ZQ܋.с`e) /:@JzX1}aAZ{%chr5X,?!BxSY}r&oڨT03I##+'v`[xlfH93Z``۪vJX %؍ƚ|MeƬш]YccÓhϫK +:!ʮ%m9JHpgEU#d}ˢb똊 A"izOQԹЅCf02T7gqJa,z1Φ4mVOs*!J_.g {PϞZo*Bz_a&א/[kP*N! ko@4@TOx듁(vp]&yn8f)2S]i!L`|ԁuŴwUa_{Ck;s"#b_LaF05I'\Ï.ceJW-0N}m7'.2tm=8'I*چllU!y^m;!2>&0$.7+ Xm48?FF yf&yBܑ\";"n2s 7bc>:Ŀk!L\I}P7~zz>9XaPA">DC=菶PZdFnkUk/Jba0Sby`7#F&z\Ym,e٪ s0;[lQbbZ쩜;@r7 @v"A[chMJV1IVg:yF^!¯rV X%}3硠P8yRsZzOݨ,K+!#$61U_BAt +l[+x 3p֡A,#BK,zG BV۔,8U&w682Ϝm( 8 Y~;gB{S~}{)W9lQ52}漜rU<33 x ZVyd3m4LgzȀv-B qM؇.4* }zNo~Po4A<#PCZ17 K1N>xA}o?p)CW/JxjԖ=Zqٟj7@c<[up^P3}+&r ݻgۼ+D>#awww" ַ2}tІShN4Ld%eP0϶JO %Oa𪼫eɋ7EgX#忠 Ƀ=WW>D@'T|n.ӢO0R/"̍8;A: huo0BS]^% 7b.4?rcrIM>Y#uvz QKgTd;Q4arIV8x"׻ȕm tOW`W~`g\ݑzq6ͥ P.(OE%*ѼODeP;GІ>K1}ţY%Rʈi(+5w ɮ& _[>BnկC% 5z &F8$]&`6w}(n:r٧*g!G7>LyqN$ WH&0cN2ԇ?W(J?Kia灡v:*}/O""GFJvjU 2E2\98:f z +*W7oT\dFdҴQp#4LS-ĆaR-)7S IJp@FVh9v+ [+X8NlsVH:UxXi]u-B< ReV=XGdR* v w6C߆.GJ崙g4a"Uc>rKxQNr-G3bK>| -@ qUZ+<#mF%B_7kX#gh|3QC`Y,ę,w@̯~3ɂU7) ;LhWdwF%E9Wc8U?.YPWBx>'|$ɻx7I=0-GXB.ㅐ\|y@mS~u/f)n(^+ٚqb"YBgEza={%MuH*H5bh>%LhR,ݨ -j:R7z.< ,xͿMVp] H8j,rr4Z?0n*V1Dg20MX׿Xdg A!PPI\ nS{"P!(h X kZn:haXm rK`oLx=0qȓ 0b)_s EI*`lBpN`hb27jpg=s'b6ŀ|_QoFwYʢf}1OE^ڧJtOd8%JX3\YBnfW :7(xBd]#2ţ,@|aM;X[)4؊{m(vUBmhtL]ϥm:&;Hj O서=LH MKIuPY*":JLzi 8[$.<՜oH'iB vnYj8 b' sTʕ[F D:_:Z&6 K%N0HS f?ܣQ\f,wOiN%*KJ?ԣe/3Rnȃ~CǕCϕF>v(\nݔ>(qɫ&KQ-+ TFl9K,1-0_3m*=LE|V ёJ0~Cb`wVPT =@V*dt̰EigR&=xB)Zer\;%D,WC;~Oˀ Bi |[wtG.|e^v=gc[yPkyE4Rdpu{57ZP=-̼zYdcr\3ˋNуŐ|Ǎ hv-C:SfNM[^`RVS*hw*Z.ye/oH\Y(OQ[$#WԿbc}r+ǺbhG^^U?)չTT3NvDhU{ns*+' K:WTieۃJbK0V|Xm$왮I$y7`6}'.h kt6U *"“5#ϿZR6 L(}Oa5VSKjL栯R`.1 ~#< U'8/N\֜涥N ObW6?A$A>Ph7~JMp58ۀ"eY8;F sf4#C#ճC%S0Y/_IRP2RzC4Z̍($Ul" nMviuȱ;gk!ۙ8ŀ0$7U+.@5\_W\Tz=ed鷩J!ڳ]쬧$7=c5}XpG oSՅ9IA| {9{26>nDL6߆Nmڥ&.`>=#e)vyAa1}j0>9m|g e8Ŋ"z]2vE̹x&(X/:{.ҳgBɷP yߠ% J6rңJg˔7tѱ/hEU|cksX}+|Rc\6z)@w|$f-zck o'j%g./M.|DUuշKs1r0Z\X]ڵ$R-Ąf3(D#e| `,n?a"N4I,?+U@%@ |ij9 ˄ypꇛLmEjôZL>a:B;ǵ:Ɗum8܃Z,x d56y;1HIg(bP ďC܇iH$+Ƙ~ڟ|%iwJ#Ka'v{# fK.A7ӝ7cȰՀ[&WB @9$ΣMpܵ%׍%?S␈]51,$ 9ioYx-̾kY#$ +Oל 'pbuD vde)MUz+sm3(bM:<%I *="{6Y)-=N]QeR,ktyD9&"2.(p[.ص @ĸ{ 4\C,r~,8!S.|)]G#k\)LlÑX ÚqoHن>5]65-fkRhL14/ֲPRr!`O;9&bY.}+P)dLWM3GU|"ܻ6ѮFBY1 yrY\ĵ](D ֵVװ|.ڳ֊˃pHo/Rj:Y`)HAưΘ~)o >sPHX{CH5Yyj{Q~Nė3(Y"eo\إ|-eٖ84}`_ /9 t 5O_C,75yٳ&`Ak5_TxGH!L1#ܟ^\O *#asyEtgp4ׅ!>Xt6l)qd'}("[WpJ0D0;0H&a|N4 @H.#FVF%D:g2>裖=[ٲA$i\`>}3aeK=pV1x:٤yDOlI\7|F)`}m.9L8ֻO0Ҽ,P6 23掍c:\uM=Z}K~l7DTd6쬰huK_Zu2iJ03+es$7,&{״:cIvD2qO[W[Iu:7 4KM@@o`&p i" eSbȍ\0P!E;)X?7⯮AjtZڕ_$SĄt%#c =:EHv/=}܋0pӅ/H#@3,7R\4@EiADZ)r_k!8T^s'H\;NW<#~w$B 6tFH{`xO YZ#`qhۆE^Kدͩ+ˑå8$@H=0135:N2e E lC!Cxt)8yOs# N-芞 ]vXBy a 5֋dٻslU\V(]sT|2A`U)v$j(J,kv{P#jؿ*i,C(ìGlq,YxqӮ Ě;ޗ+/W58agi-5p!p\93,_$yq:`jRac,Й~Քg= y5`"0UN.4+Va4dJoOM1T9UYԓjq%\P5~pM Kvx U|T'ʧ9m$ZuFT0ae 2 aLMNZ jEר X`^ja N).@zfR5Q,Nta JQ'SZq  ZE&-}Y>UgOP5bL,KFi> t u8˲NJ%g.,r:tV~玎}f. WѵAP3[Fj~X?&z}xג q=H! (L 9I٦`'YPyJ>?s*(SC o? S,[.(9[Oצh`d?D\A]%5jO͞8z 0,n9VSLXt aOcUA+Cjd>sipzyN<e>cc{(bt~  ?΃lFa*JY0(>$<>7ggYg,SGsBvdIRZ'#f. r:DoޒGlAwdg%.u)ބW\J /~x x68$md#؊ ޒ?ZQU.ta )]0>_fjj&SђQ*Њ?^"*V=˟FsesKko8,ך4Z 9X[u,PS%78i:s䫨лIM`dVo_@٥o w-ȕ9yj]_&e7;ʼ5ҏ?KtY"~m!pndEjvtA}64TDH503E6ӡI}`!e"]诿-j>vCF\t.Z蟍w $[;62HY5F<'frF;-lKk˃Pn5ѻQ!n5CI#9鳏~w" ]db˘g cxP57KH*8VeY&k>-J28&_2Lк)K(AF0T5$JXVNNR*;Gr&X/pAZsi3rRμ&Xaz[3߾9p1.w  )n2-w*2~LhT)yꁒ,v!UEFBLeۭlA|h*Y 7ʾi3 BwU+TB؊qQƈ#G"xUpP|&~!P;v AFD{K%T#q86 ^$*w㐣1~NF37oWнj a< vORΪZNJW*;Z#:K҆VM𖝂A+wWBX o@tQ,|d!+_TW_ 4Y?tzr`Bw=<Ni(T" ѯVm%J[Ճ!v.*6T#^`jG:2@zwnƇX8jE{`q]Oc&sڔj[zCNx窑g84($%/i| )|}ǧIIex=` fy y̼`νm,|qfR`+ b>*QQy꒛e]IOzD*k`c +)xajBgXҳx"79,%uD?ScC+"yh$[#_rY-%gRO%ToKTĪ;qݾlBd| /xWK2ذ㍾IGHV> uRǫh_B*vaնQ x/]Z5̜G>n:rڨ5 > ~`0zi/;A_*<ĉ>Yg,2(l|iJo袿?V^ȧț,tl\Au/j ~o=BpBb;\fb=f\$HKuS2` }X} %߼#W 'QKs YU=Ej -ukCd7 ̱\&h#ZIj>4EێHv-R~0m*1#G.+!+@S!u$;|2Jd ->t{TuuJgH&gz#I۩DUÒj)7|EけD= W263{HxzC!< 1`I8U8^(Z Fæ'F0˱qĎS Dcz Wu~} Ԙo\E `!@F1"ӎM28Veg8y\xXRIY@O38A;{vn; a7Gba$l^AP}6:-I9e/5Е| 2QKUd:uxd.d1^¤t.jYw)GڀI#U$kˉn^r0 < N!R]ԐnEu3mTҿ+Z^ް6(e)`s6M,}qxaoK[5#pٰqxnp !Bx2 sV)X>آ 14CiV:P,GMkbM G]n5&"ڕدº#]5@3UUSR[Gi=Fr}kv~ >yktl'=Ks$KWuUL DjUEb4EɼBB0U (Յ` uކd^ ^-ˡʙ6.Ȱv Q.'ETj1>~PD:Juht=XMwf܉g  Hw-P(^w|`aWDhGLA~[EMy>{dYʄ$-M>tP 7xN#J Kh{V9I(Ai.M/tst) e0ձ1UC z Dtvܙ@Cazv 9o iCRh!j$ ZRYwTr}{M0Ԡy-w7̰1(wb>w|ћ0/IlAH>S_ŏSzGV'+koī5P=(/H)Nd"9#:YH͍{yrT7>7;sx: et-l'ܩZPiؠy=CHdtf[!/ia]ނlFO{?dCUUNEo6 {IȊNjNu"j?G͏[tmu݁}KD (T?I|ݠ3;2!$zM /PŰ>[7aкҺތV #jS#͜5'" :7Ri MgGzvY깙u `k<::P*8FmLMr9YrJ̆OU$0jV$˝D>А0&?V79V`R lq0V(*{!!b~|I 1QEs98P]VaW]C?Dݢj֏v*WZHn x0t?+a]M_| +/l ت1~pq{%yCLx2hDW(XjOged.&~uX*ͷoB92x>V&a8^'4mio>NI1v. IIw*TYs8j9\0FIǨŋiHGhj'w-j`jf2TƏJ:ב|>G~zR,uMN۹Zgxl,pa Iz2U;p8rYQSb4T҃8;E.IޑOi4?A2#O8`o#%mͅfm,_y5Kbynbhu r^709 i׻}|">O,|^RuEJtwZKqc6vv^ݿ%rH5]pibt\ML-͖p9dzEACt!xP1c:m[ƪ\~5c<%4c$t9[*'nUh[f Uty t0?6x`v 5"o:h3$qȅzWKW:gA踒Da|&T]Z0Nqf⽶Qi"pC}{,ςei@pnWʈoI^ ? &NEivV/S;ˁ8˒F.VhQjf.Shh[HݎjSb5},\Lqݧ#U eatSH|},|{D(@MV&q 6NQ/}Z{<+uL4sOxQ6`TlCSjڨ6 Zӑ}1OEżqN.;q)o%"e ?H!?iQ!oL{x\ȓ0LW`>Ӣ]rsSK&.CBc3N?s KbbxP& rk[Mƈ@pTJ*qWO!\ud_>uRX6K%lOݨQN/^t*jEbp[n[KdD+^ ~G YwwGBVJG3ԚRѾݵr`.CyZ1st;{a^M3moh?+=Y;Z+Dj q!.e>%OŤ+7ShX.K)(6a*<SX(5toYoLFzvf[&*\{X򎉀ԕ-{slQj2;18^NK- 6@<ԃ-*7N z32 vqDo&smxKdkkOBj4.| )Rdߘb܎=imAhF3 T)tmՐdZygS?>z-UD" w'fsտx3T*,\Up4x!Q5hNˡH;N.me 9 U1QO<^P<{a 5= A>[3]1^.h~"AyФɏ\trݬ݈*8ܢ1FZ2Ya~X2ic9Fs3Щ/p-4 Z}UFVn3J1x2@<P4ڒfV:NsCOY]oq+]XO$,WiL˻VBՃi`i3fp8tۓ|ph;-L4!62NanoIJ7חl1i8+BQ Z<ڳ'"yxc gRX̻\ӬHrT}xpFZM}"g\/4%.`p;='cDowώm6x~h %Ҋ$&wmw mV@0ɓKv±1c9>%v> G֒jP6L|{l<"4! 8%]wxۘs$i! |e0nu~pgwJ3.{?tU5 3歹"^F\1`{Y(XD H6y5a-Ud6ȗHz̑{+niGn L;ԁצ+j %4AAtm-eh1phj2isEgC1TdؖR]tlҘ. agMPxHII5M8(@d~.a?#zWd}*EB2ڗ(?]P{-% ȃDz ŗҀgnkRb( 3"jVf)ָu:jUx5d.cxIPP[e>r3\}̊w{ג N h.Цd|CC𐜋7bdTC"~DBH{Q8Mc6W=4S$_?T;FxxGIP.- '1XF)j'@a·bb;uo<MIX>牰TL' ¢AF _x w$*EPsU@xl)CXL*۽#K0G1k¦u#/6 !7>avVܒԯ miWIdmi[ EJ sH1ᯯ_ =7`'>x.s2 ;%jlc/rZQ߿pOX(@JZ^9|NY-V8 s%=$}~f?Z0([`RvAM21~I9W;f _vq a PQ;r;*\,'JRMT٪2/Oqا!r%FPlhBc4l6oB!~7si>ao+KEyƹ-FHEJW@0`=@n*$FRY;q̸ȪMuS"DG|S ;s_EGru'r 4H:P=]#vB 끥0.'TjYA|u^SbTC m73RO-Q oPNH{G8Y#<]j%ޤ_dySބ[xiX%|e6CW;َ XsTYR+T^lqs'*]kCJOaHN!S۽`5.wrUJUY9*Ů*}+L 7hȚ -y0TY+։Մsܛ$bt?JHCszGs̘sU!W`t anw(ѓNVUÑlJm͓a''8L$lIsdm2AӜbA]i.3 p5LdESbԼrzp,LW#D89| x9+b7'd*[(CRl;=D ̟`d| 5n嫫n(c 4(2RY$__"^P`fq/p32D ᠫYQW-;եbfdl9ϓ׌b@Jr/- |ԍ 0̽lF鑵 /Kcdo6anK4[*X8hcp3mb*7.~Gki PMcFnӤk R511f1-Oɦx"߹Ea5s, U-|,x-H~ 8S%c [j_z_)- =/dF~leHp- qoBPU]4~Q?G]b4ZYJYK(5cNr (g 񏝀fh1Q50`22qjc%: Em$}Q *Z#jrp-d"0ZㄹжSXMQRl@/:~' v Xƍ3CrN :*x[ ^֗}WmăaԼ56yS"912 1=A͏ y{+;c91"Ky$>*K,ux&T +W5||d9yACĿ{\ {_sc ;Up=fh N構fe Y6<S5d-,}@3Y_nw s ;z<8(O6ɜ01n"c(O6Up?XCGh.>P2B7ŧ`]:tXw F}X"W9cP*JMĔ .)2`vӍ $̈=^ACBJ259Tp4"e ZڽY= ESu}{+L5SsCfѶ\+(.5gI/'grܟ:}ezg$^v3 ͭX̎{!kMIۙs0ֵz !x#ȹ3"Bl[avRYD~4p/Z~`<^`|l }t;+,G{c! CXv-DԶȟڒ,Ŋ Q:>"z1oi>`rH%]m RK#"9`qBs 9Qry=jwc|2 :җ2z><\~(YaL` u:!HH,`Õ5 ܬRZAkS4Z>:%ָ"e]|Š0xw|2Q9r-z9.+$L!Up࣮vEU ?(:i, p^j=Q`>'9C%8qвN9̤yvYwDK=9Ki'(=l~EG#TnrA-_Ba buN!{E羋Ty* En~iUsOl4cCj]V`"Y+_B<Nfy.[1;f/ǹ802ߤMv3~[lb8Z;?áIp=-΋m91ݮh"; -0CūX?zɸX6 ~JLw|'Chi?.F&+sHxMߴ?)>U$w㱑+[zӝ ˔© G |,7 c37r?cRJI_O!k~TZ)P51/z5 k#']@P9޾6Gk4s%01izF[L Z8U bÙݾi_P2M<)ZX tq͔Ă r g_k ,F~pYcjf7,A=LwVM_nKH#=YLr?1 T Y*[ $#, fqzBF`hy0TCy H2p 1ڏ#WJ^V".!3Ήsӎ:XN(xqzvخ (G#G#[ 2IV70Sf_*IF^}*K/i Gԧ1fUvq "Nd*V Fw#Y<1y+adox՗fF#c(%S$aKHA+~rR>EC+X~zO4)O=]|[Ear#9SWs#\[r׻2ہgS|Juq1ÏX2w5>C]l@c!>{<zQ~ } nPYtf1I\hzOkg*;g3_P`G{WXB%˳ @'Q[Z%-df/Ἢ{:ǖ>`HaI' ;zCAd<* %io׷A8QS;j/T_ی Chŧ7RQluJ;@$/|jCu9~/U,PD^ o'ڳZ;`R$I*q;(= \e2/"3D_LK'Z-ɩ6""z8nTB3l)!ۡ?FK d +Kҁ iiˤ;n{eܠ: V;X!d^~݀Z;EB59;1**(&ƽ[C1aBVxvjV6Y"gFiRST]~;mېRKzd\ D)R\Q*iõim;RKðQQǰ㊝ )sO 3j:[SsbД_Lxk*(̨ݨrwF9l$gi$[R4ZrqžL=,}% F"Zj`kDmtH,UѺ +{ZA!p1J>URts`S~ wI- /rdbWAO)pU,MmAu|u>U0>>Wqy*v^r[(Sp6<Svd[,w9W*Ǻ=*J#o6,bߞC{;<FB=\ȫeZ$n̤8~od}4{2{(Eamx#0ت= KrzG-QpJds :#@n*i$߃Ӆ 88*ʣ$J[ܚ:8!$_AQǔ]EEO$N e+ɪEng⅟c iis6¿-o7'00ɄB;_h:gpGYm[=,JI,8_Qqu:D|a,K꘳5_ @?㸆W5Hؖ`%5#T3陗pK/TƲ6T\0fB˘g^y.id_Qzy─Uԗ4" `|{YO倞Mm1N8SJL?{ UO8.F9 ]?l=(.Y¥| Hv6Et@WCSwj6r{ آ4Y^YMrB/HXaE CVKĀB<|rn8jFȒI\;&tjJz~籕H{'-ϩС48 & ͝Ϻ"#^2B<\?.~\z4/W0Tڅ #ØWhߪrOO4iPf U]U5Փé&={wSk*U!Q΂6ru^lm}-ψ*/Fڗ:$@FͬLbCЬ-y X26b; / P LYYUzXa[#yt E#;>Ϗ-jO(t#j֤j/q!OhviUyC0fn77[ݟSdD)~;*àwk ̳% ,saH^(g7Cq_]gwghnԁ^<^83<"lzV+bPq .\ 2NZ;k䌠jpi+SGU& &IF e(a [WM:Z N\39%6Tn@>+,;H[ṽD2/ x%zBqe԰,_-Vc? t )ES^¨9ȟ}]S_|.Ktl,h"n8[Yn%gm2X뭴=IiCXa B:n{ * S#Ί m]`^Z382R.w]/.%XqŒy@5*X.N |O=fUd˰xVn6I':cz]Wqbl']UVsxöO3SiW7v]'Ԡ+Qy뭂X%`Q?#'S#NAvW\f&>+QW!]?$utޖ4UhS.K{P QUx{ }Cw4QʹBd:@Vh:J44gOO.6N8BLV;ac=d6U6Y"}jEɄ&w' ^6> ][ۨE q0g2pAXIL<(_Ҏ }Ld\0S—8(_g(cӌDYwjS*L#5h i @=k}9aYVl3̊R-=bͲeH4.T,xdQmʨitpfp6GH(V@f3>  0t?B1g Վ ~س"ح-T?rK'D!nN2̦73κa{_H,>ƑQAb{gi m&Rlݹ!Wn/ٜ餅f/ ꯱A?JN.F1l]9s+#|IgiPńiQܟ"B9E|d.XWLJE=gy% \N;꫐ 3/kUq{hJyAj.ER?|x>CI6.b;( IP.!j'eKUG\|eG1T1Z)}Eme'{戬Ң7uq ];:z }U)aZ8?LabS:.tN5鹥6`7k34at6)<-C{lO[-BMl( aZ׉S+K}+emi!4G-"s/{ }-)2GAŀLm]CZ,08$rBSHC,U{𰣔bX<]ΆpP\hQz᫃F|}"k}o%u Ua41gѫ _d*C-~qpU,gfdPF>(tICM/(Ч= %})l ,ʁCLQD7B;^<&ekmC:3By+KG>qK)KS-ߌ{Qj4>yKC ^&`>>G7qJ3*|qS(Ot *r  Ft<4je)ZcF?GX4OE49AӕIYn[#a?ފV74kfhC@tMdkorC2 &-12G#$ M M&i*<%t?? aD$XDIrhsJ;93u;jUWPk_td|2G1W. _]*߫F+2̝ѵ .9~:9«Gl/٪x~;X |xJ,[Ȃ6h^XE\IgΧ8 OXrYy?% en+B^L65$kyyb:8H7Ò'!]X\'m$xOT r.' ؆ʵLpy"F}VQ|vб ?<4PbJA_zG\H-bP, è^9!)' aDoXiMd%=;K ]6ZCf !6rdkz"^ G.ߪaըGތf (r >l h0*t,* %6o!R"'mqKGF1Eծ=s$9ki$r瑎Iw*Kdj/?L"9]ʿ*?7twB݅xQEK䵹Wk`Iznwy ׅ6kPq! Fm56`˜ʑsHtGEFg:& 2Z(5UاOjMTԋgO[uIa~/H*j kmr7E1CA p~}ʳLڲ^Ź!}.U/D}&z u.1Ӄ\s{>AhM4-CCb+&zEHlNlޘ0V.L.eódqBU*qzf!7I[=q͓U$rgaEԅbMEЗk Sw5?XY90TBOpôI{Fr^EHb!|yGk:h*r6 Ùt$I_adM="gjvblh턲w7+u}Z=6+$ h-!@3p 3cۙ5JvT̉ UN)dʁic':_p&wϞb2GY @{.UqۋCպ"P6_${2cZ 0 X3@.  l|<Elm EMzq~3zz GF}]n>{dۼɵt.`ygN 4jFM7øˇ6=n,`tHҚ¡;~Q q3#?#QJ*1g  )9Ee7d3E$0Xz{l;/rG#O+Amu{E)m̗3gT3=8b[y/Ȯ!÷í֏`wGefHEڼ>E 1=* K>B7ߒxAVDhڨ# ;[+RQ%+*uYelK"(pd͊THSRXɷ] 1v4 9z;[P @!v$0{R*7--l0%QYyJv[aS,{o>1^זWl]JAXe?Փ6~L>U~6f7$&l,AØh!&uñ|C@oĘ6=a{X;&!$= }ip2tE`OXRlLtDzhk[Sԧ+Tt0P\Y {fmd{I;wvh6O eHb{f7iSs[˰>6g-87oW3A m<= XktO4eܺIjrօBx,2-NkJR e_Y>iL C`:*ڄyp) Bv"| Pk6~Q(}^L%h4NVIZ,uw<4xǦq_q GSX5Cx; '1Ro68УяjIdC;0&Ν4 %*DY^JcFGDP2}xMl@(V-|H%%Dq\ \qWI"h]o{\7V_6T*3~pH$#P7F}.?#Wz> (Kc{(*hg?ƺ4 :LB#|8CMk=teɵ)Y]Z\xtcfi7R;U "$̲jQo!ȓZDFP]Us aZwL-g*פ2DRujba+[M=?R D_`ER^k︲&%ЃsAVrALCgyhԏ͠81ҌnUh ҟE,Q9GuಔnSâ$ǡMRSs a1cGSFP0D&;DB0# +ԇn5ڮBkX|ڢtyf,9AgDmGc zKUރ@vD2~ytO[pˮpfs25J$oU?e#,=o4wfXIQQҁS:bt܆l8n}\7:1ۣeeR)/ "Fd DQ{SwnTy7㟣AnbnKfZ;>b'h=q1t4!?eK`'Tp^XI`A|Hү}Xd,LOƼqRa K\tݜ#ᴏ_#0H-l|QpڻȺ$Imܛ0*g.k+u.']9"XpCZl/ r(#bo\kpjhs^rciĦ3$*bPT/R"c!5@B0tŬOmBk yar?r (.?{^<Ɇ(1 $S[+Cl 1bfI^~pHS|Рdk^K}]yձj6m)u+Xiٖb]iz:cŹ:QnGFU Q*l qBv!|kݤJ#MrѲ ]ޑ@;IP}>xګ4!e~ډ o/bNq1z]ΤygL柜>_- lnL#=^9;C G;:,;L]6pZi~;SKT|"xꍁ]@1->W"٭{Q#r 5->2ؿ8k`3$*e{}И&B>#1ճ$gu}o} B`e;)zOOitB$"6 r1cۥ܁ȅ1( [0.y==)Vn`PiVN؎GXg\ VYPL! w[2QIV".82-<2*M89Q0{5AP?P` g>cIGŨ9h2h%"Ҙ Gqy[z]<q4/ï9NyUF@S1͕~&/oĎr W$1 b 3})ﱱkKj%^' \*+S8U-7W=#V#k}UD3'"G6:b y襘'5y,n& FVGt!}֋Oqi3B"z܊1e:LRbYx7B͕ \yUS/L 3[42QJrUáC/|(ve*0_Qݖ΃]#rڀK@B1EȋQ~J&1?-:C::ngkĴhQ5$b9VOKգZp xo o^z$%| nZ2w3‡x'"@C 2`u}g*?:`OiBYm̉ͽ7{Ii7r$mٌ"VBYN&W_L%J",ov4{ aC[< @.׊ 0 C$شB~ٓc l&,v 0EIR1"$JLY0xSt5V ּdG@}a!MBJ Ԉsc9Xn%yK @2CjF1/A%vt*= Nc!&9/3*pUFX4X2v2.'y2ɎOD,YRAvIԸ;c:UHEuay0<$_Q;Z 'q/nr."hΔ&dz?ZyLTiDB  v{@r-bTRʜ͜CZt)UO}@Ot2 zIIiCfylU9KAkSy}qfIo:9)gh_x`ې=x[mC u%d9z j&C`Z~vvFCLv\F{twU-3Ȟ/{W)6*AY ]!{HCyF!zy{٥7"m)7{!'BR4>Տ)oNx9}}aAoCa#6f弄`7ZA1"#hd7 jfꬹT;IeF;@Ag1#Ӓ=USTv_Fg ]$f·.n#ns~/b W,ި(hx( 1[eGYaSgS(;g*iv >IY྿#\r=V8!z2A1Wв >"ț_Ùאe&^}gx@0G6ea^V#)B_?E1/o+l*齼klD}rXԁȪ,bn|:M\lC Ap0wXl˧8lב\^h{iy͒Gٌ4GɢX*Nle^H6OsdljBmBrw4լM~Ng!M yW%_CwlDp;6u8i!ŤΈ8JBQyc&Ɋ%Ϛ*](q")[Hd#fNlR{!$4Ր,WBŇv]/NẀjB\ .Ҷ&Z`QE)ta "Ct#D`x1T?/sA3B6Lp9wpp%3Ω`=kK]tl2vvCWr6y=FtB␬:oۦ=d޴ cV&kpnb`vIR n)H5+؏"tF^'ۼ~㠚_mHqR'2NĔID*Z;m{_U/u;AKwG7|$G\@ 8xł{}*w(J$UYZ )!'6VWZ &" #!~ jWSlc|M+eH%Yyv[M)pj m< xr,؇?Lg Lږk·S  ޙ0mu;̅yIɔLXrp4OnrKq9 5zk_fkbGn(;k<7Gq%+Z P!;2ft{?!߬hFvCg~B0d7QF'nٿVdy)nu* pw5z҇T_tK'kJf}t#!e0/ƾ hܭceFW&&oҜkª27-?,C7CC"Vx5>*. k7e]c$QM02$+ԈWwjH`ϸ1B{lkhtֈ0&htՇ m=$b,/-\J,zbDB~)lj7HU8(X G5OeEC1a`ʅQxC0@/oAmJ t^=,Ķ XAeu ]1=8JT(xU, [{KzL +%%7D\ڎ"PS((I*gɩ3Vbh?um۟}CǠe\a`Ơj_wuOD?8*]@HYdڷqB ^H؞Dr-0nK/hx@|I7Q ST7I3G4]J}$x䅌nG\\vi7lqW:Ô^ϩxaaųKWW>תAbjEo󅤒J RD=ML!sHn*3/ؙi mΌڬ(G;HIG5+:#F)ODLf㲌?TQU5H;i0/4XdOՄ*Io^qUYxֹ guq @NK:6I$_(~J*׵/6&˓s%q[s|51M;hx"|At#B\[іu^J* QK2[Q撒rȲ:=*zĞWC_Qr枘X>fPy8@7]9-h2yJG?j?%CC?pOznNve2难KKg_ K.jS~>bs||;#SyvPdbX^PGkap32$WLT'Zz]U";2,r[&ۼB/  }IcY*2Uܮv^1GLC8.6n;.7 :t$A-Y׫]榵H%N )|~8!&Ʌ&]}P9 mZ*x鄵X D> :_!nvBq4 kBp~.TL*|]rLBd E ͎t* xJ'F}}Mz"W^3w[5}'Çob#'ᘶؒY9Cc b_.׋̱/"HX3@G'短}&م\ /BK我l>|XcEt|f{ Vˣc1>dCyW!}Lm s)(V&zH|b+m%>rSf},2&;JtkhR1@bt ŸqӸ̼X&F_+ygV^C">yt9^{k/ 0?٨m31%F!qw9G.X'pr~4Uf)'3ۣZZ}MP.vjTz̎S?zOsegOO4"G3a}P^XLipx%V\B3:[Zy}I~"?/P"̊(,HdM^xo~ !KHD6cޢrƯ7c6ήPc!p:ŧiA0FZp^J?g9)G88^_-?yT{Tl ?B^9#5 NQmµO,p ֈGO, UN>ϱnNJ-3cOA \]+vFh;(/cdC #nz5߇s]Ya vð7[+em1`oYzSEG Pޞ^릻ҳ}5K)ٲ2"TBF(@M??"Ȍ 5tJ9b[R_e/CO|]ZzO7 \V(Yzd>hKqímϯ6^Y2Bdc"[ro_7v$]%C/[-+onU3Sx5\ kz"*Cx0Sj#YI8v@ߺ YRF臋b꣢}~gg}“a4%ifxd72\Tpwu7LZ7#̷~>ҧΥ,^_+5YB_+u9fg2l>$,4tdJ7ð!pOEjcyIԋA QlS7i@gBt)^!4zns& 4w%2CF=ȮXUVU8(k7+aYceq$7ʡA_u.tYv08vBK#u:f}NcPŔM^YdY8KH{u$fpJ3(=׮(5oz;L`OUSCʉ AC*P̉/lt?M:ˑ_3'ݖ=1iU&~>7_<Tk.=ؚ8dh'fVB1^u:[*64H ]E|}9ln=_s'X 9os`0I|VsEV:$Nw6ŒI+Bu v|,7}b;3ɡR+] '[$݉baj@QJ̖qdDO:j J4-[{m>كߟ0/ .1IfjWڻbDq d'; *&  V h@u0U!W =GׂmsR V!d3S_y7Up!=r)NdNwG>@uzex(~>u(*5nO_H(Bwu_@ VnEFm ЈxO}4-MbU@F1VC2"+hvJ긝8Fe_[FM\̿L*vsMxf}p4ngXw-`fyr[W cq.&-1;na3~hf̠QWXMG:8 ըTO|#oKKG>{ h~EPB׾ &^%&J_ l9JGa2M kZ4G]N]KqYKhJ|ivQH/q# c;ƀ89 pa:'욁Ν;VK}zUi40,ӛ].sq||TL')ڣNG-|C;0rI.CF=K ~H%WÚ!MLqզ@J3S227ٷ\(r?'5Mq v/o$:n%鑁/cQd# ˗A(P\ =e~yjV=3%P˼eAn' ?w]^p1s(.}u1*}{9k'rqq1̞wfC56R2I$; 8,jIJϩ6u4d|\ /mG/94:Dw_<؛)W`m5(A,q Rh/M*9K p9gv&DDm*@x#8۵м[1>3HJQ%@ڮ)ƩlrQh#jS;(5s #)zBeyҗߕۚ zi'TAL]ڼʾ+h?`7D:ZpR)efO,ߏ chnUZ\֗ h['>ޕWpL00 ^xF2O@6<Ajkew/C0,Q2D-h+6Fgs0}*3phm}k9H ,0V\6__U hox峰;,mD@f &Dl(#Dy0/@궋^$*? ?bͅv}#G Η /~J7Jm+ʷM6NĿ BhS[:1EOҁ)V-4l($IkZ%k@}`Ҿ8.փ_du(NZY?4)/Oh85eˣpţ~hG[4 ^(HXԿbqHĠe .5n/<1N(X1՚\,w⬆SАuyvM;Oǐ[F F=Յ\U-0@q|z%üu֭=0 z#ĈU騏6T4Xq 1C!I|~, tG~=Id LI1vAa7y`*uK8p^ő#svĄMPћb!rp;Q$ 8A)Eg/2I ~}R P]^1%N6/%R|u\5O \Br9)  Uӄ`P GVt:b:  7ƉYRo趒*rdxi8 C'[.61ζۂtTB'+#Yoo`(хt{ o4\@[X_<-a\ }R8;_&>3봛sHgO.S$(paʶa04!X$وmN>YgyRn t1&$/`{WuZMUu",:E[+ T,US0iɽ,gS:$ `.m~U}.7jq_7l ]|(l#!֧\L8@uO^EhI2ZZR^e}t:ڗy2Jx)`O4Zm I# 7?w~?='4uC;MZ{=UОP'3gг` z 0){tg|w-n]Ss#0(zGm[bslz]2+1!o dvYT8Oo2qRV%y\mao"OoX56:EVol3ђZ?+wd7iۜϭq;`чP]'{6ҩ cmc&WW1Ǻ(EMѱT*j JP{v-ٞsU-z ;}|T3G:fP mz}EvYn~0>pHN@FJO=+(z7KGJ@R Vrؖh%~ Jd P3P +$Z7VN{gwQ=/]|Y!p[VSY2T 3-+uAl; nf5[(%'߿9od*khNj9I-,U!˽dGϼO,(¸mN{O8BE\01}:`9T+Ki"_l6 65 Wx\61b~^b/O, C*N Kw Y1¢*1 ;GPlS?X+dU'AtpNGrE\nb^7ï`,HւFߑkMD@QUĕ0/-.A|sgT 5~Q>lmn](CÁX?3C uk}`*.@qZʧ 洵_ hSþwH>Ol{i>v;v2A@C!ā,,kzVjX|b\_P -.O`ꗃ4mCuI<>qӬOʹPgE W򒃚.8V\6|ϳw񚔕􁷙?pKsvC.C1FGE9\a$m9"Ka 6R)hI<d6&V[ZQ|Lcҍv_IǢa9:2ivR]P/*X-M[Ϲ@NR^:'&t k.M.Zd`E&$8 ,5I搋a khf&V,;\|3.J;wfM鮀!P: T2w+I(>*fB9+),3pCf"L90;vyr6ˋŦ84m\vÇ[[f!E?kjFHm=vv*#[9&_JSS~[Vt6'0ze58"!Qa";S/pҔ c#jg[ayV=0Re8Q`D5>N%{\Y oC $/zbyo*_UOs$$f .PzsQj$^"xȓ3ӀlcVʊ3 su%8UZ«qGk^䂏,?d0հ\ļLuqc f/+t.J1^zYe{i.n_z*y5S-&޹'fN1 :u%k&H )/_̪@oARn\?#uAUWyONR9>#}h98+ %ۯ, >t KpHK~|8F^mwJSZm> chFBEtW6pYÜ 6ƋfY2CF}}; :9dLysS,B.ϐ.ĊѴ0RQ2;A Qr8]DN-󜗩?z|ECLJaN\^s!.˞8{|NHMM:FC5K+O&S?6s?On 7}yr5w K͸2hP8,ˢ8SSyS} I>=*{,Ax4!yv׋Z9m#W/A6]!.:=y$MtUԊjm]&vp ~p[nksiˮtyNHpL#I iLǪ8ҘcT?2334o*ALH ųZ cJ5zkU/].֞᠀ϗuY侃b!>ClHte_'E;¤͢Rs6U+TR gUY1׬ C`sKiIEu;4ͥ5qUDwq@In6\]wHq [$;68bFk],T [t [U&[Rq!vzpx#!~[ɦpMkTqk?_/m'@Zz>ιOQ91yC:N1~jj$l[ s:E.OFPoTT @cYK3rpS&8@vOwt&& wt(+x0sc~yYzIw<ʬ,h`˪"'t)d;D/0< e!Hy,ݸSdS:E<rm˽IbEx`m_**p޽Lͱ YqCY\B\]W*!"hB@SR~l%+;K%-/eѽ :6m5k-WF͐rIεxJpTT<\ǧ Fqt8"^ⴆd=X)u #X;ʈ4SȩE$ eF>Ip_fh ^87nBbp9W~ea׋AD۬ߋyg?tT$C YH$qd51η'E7L.SO MWߗ-Lm_}Qy:>ggV?˵9ȸtq.QvΎ({1BbG-nN:#-[j&_H95sH=!t7ގ ;toG3:$zb4mtPe(h =}aU|8%XX 7ZT%WW+(oW' ^\񘞷! n-gD:ʱ/ \e5g߸(x̥xZ(Tt&j`/9u㕟?(|q8w6}QCm7Kr;}ܤjT[;H&=KjZ1g>tpޢw8܌BIY5q roX(^H6u)=J!V{SaTX׆)>#);F}83T;RN-؟#ūq㿤)ܛRqߣdhd{ؼ}<%n2"$?uk5WT|yN 8-[sh|wZ `~Hen}IYt3(Cʉ^HG~)s&uV ~^fP6N/J(2];{fOM%W9ţG8(QSp |J{/< O_߱ot5aɏAt1%I`7:wb|]nٗW?=įnXeЩKa RiK?_?f|+>Ecj6YyAj+)[YZ n:UfȌ+NwBh3ճh*E[v]`|f7ys-^rƁGEfB`g%.a3`D2Ѿ 9n^Y$"E,ݽU訇uV0c{qh_+;5'd!.gF$j:sgL!b$Cp7ߕ  q~{MH<04Gb傝Ts('m<]:?OW 1׼$D1BVL:ys7gg=](}%@t|,wղ1Đ֌!j#; ,2⭗bEg?YirM"OK@5< eV"Gr ecJG1M02U&lڲ,M6ܨ,+A w_ر?b$| CWM|OM= 6M2Xp4rj;#s<5v9]eDD70:rkbxυ6(bN$/'I|?[f]s\\<.irKbo hT '-L+:(bI#_Ў X<\мtmm8"MgO,8ܟd%[dU%Njct)gU`rB VnrlK cTdbpnz̿np',Z(eoffgFlN0dsbJ8e#tC0U=46Px+Ygf{E0Vuv-{f3Nj jԕӈ[>w 6qM4JrNRs|B/^1.Q=(qǣ"ҒWdkoE9ĥӿH$'e]1CNq&ŝFKN^2A*"RRJ\ 01)<6p6yq?8F'LR't"〣,f|SJ-V gEdNuOQ]>~͛3DyH/EO6;f(~YDVzC/ ECلw2)o#Hm O͚I#f'rMbYi{*~d1`™ė>i] M!/Vg$vɵ0 [V_nڢ pbC m.Uclq **Vc[LYtO0trO$ݔO\:4 5׿?9Zfw{m} SGMJGڽ^GtzEQ5c#kH}_$bpI 0零p`7Ǽe:BjύВ_s5sA,FfςXϺV2לNOlh}i<ؗ|F*_&CW^Rd_taR/T1n Ei w|5,CF_N¬,dw4&;> f/[Y<}eX<ÂnNpV8+]`U< 17w07Ezihʵ)q!v WCIWoVvOܧOVzQ bQQʮ֦=SDىUfbP.y;꾛}Ih& 9P*rtׂ9Z0M~z;jvZ0WVs('0Hl)ӧ 7j1yI%*;to޸0.`Hs(8ls+Y3{6F' R}H^z,o 8{%[q:d!MW^c Ob9qX+x?|n.P0,C!σv<eAҊ܆/4オX)BCb v5 p9-d'mobz/>ZOewQb**7?[x0/tg֧=*pVIv%¢~$QƂ*:nas]6G,Z:z麷Hd~ni jeies6tu!N(g`2x :u6-XPܠb߀JuNcmlt5a-Xye5s3\;1_qBC2XQ7P/7E<{ X#\R ~ Xُ0}_ײr̘Y'r`$)zk![&,Y>x^^\92D(X/tF#:F wZkm%]wUhv1-49˅Øg |LGYNotƫQP/,E{_ `TMJp0ܔ } fVm/e`u1\oll\PL{Q胑;]P0+Tӷ,#!6U&chF;:zZ/&~RKxVY Ʋ9V*"Lup9uBNF=p8(2FCX:Φ}vk6K[Uc*$<+' ֎KNJ} Bf`!Mﻀb8کe%_.xDu$ŜK=Z3_.8| 5m` {>뾿)6y{\ٷp6x(M$SJbXG0?ܽc=:7 x"žٴ{Zlw5Mba̹].zݏ홱3C7 <-!9`][R# x %`An'۸5]9mHcG@B"bj1Q"ĤŶD5u g7]yyF\I#KYk8k*0GJxDE76O C=c~}d哰$.o2aNn._Jqآ;`W,z>߲1_L'>'muMmŽvu6aΧ&Lt6Sc _D;܁y rT*L RkE+mqHV7OU.2lW׬HhP~ 8*=)udV_r&;|F?h]v x[@7HmԆ&Qm.˛!ؾuث4m vY@KYg Mqo,O039X &eCn!|Ykәٹ:4jMl\ۦH| H1)9dâDT\ZW>.acə4OUi2y){CQ|UKa5WFFϣ%eTgXlG]M,H^D.'w/`>*"#@nv4^a X9Y~?(i3[Z ԋmܧ..pT9ս~`H{kDMF%;pXQl^o_/R2H_XPevqM!*in9}^"0kK9 @yH[vL6\%YCrUo(bS۶w*4qyfr }G@"v2a$ +$ݢv  Z'(3.{ {q!&rISܑۅS}zdt;&p e:~(!3F72;/Ch"6T%},Ath_`1ʝxӀg-r5RT5w]R(qv~z:Ћ ̧ kaszs,W[I"UniYo=fLtd^qt; ìPBtv@e)) ~+(w5c,9tYb[R[g#d'*ӓ{~y|Y|ญ$%hA B7o+aLFIuYeL[} JGs !6ozH UVniDt\&@cҖah #![~S7uf1`$C Z=ػqqvvo0x1)A +p9x9+DѭI~Bo쪡{{W4 6 n80/ Av}Xs jjSnc[5D5n6mۡP+?\2\6hx i2>f23@ ˈY& N@Jp1ҙG.ؽ8!Lܷe Rm_n֕ lk$H鞻uUEj fHUM[p 2=%7$V.XEJC\- lx=$rmBs=%!)M,vЫb=T<6:YWeJI.AM߫bzKH `~) 5Y4 t8SB lpIWYfxj%۠bv9]h5Ƽx%[!;@ڸb:T/Gx^0.B^zflQ`ۉdݰ X}IV/xbiw9{Kt;[.HZB;+jM g:kwL|%fjr) i#{ж+Iu>9k0 antV{p6~ wwZu mopŀ x 3\eq3`k-LLў`Xb ?M{m",~Y'Қz%03ɾ6xZ4/enMy D !_?s̿C8ϕU <>ފWZ,E7v 5ٵz@|fyiS}51r4!@mFrXor;Ľz{R2``/oJ.u>"cB,Mf8Ftba"FR`mϢU=nɬ'K@QKl>\ՅHb>&w_ƽ/GnMؕφ\G%v CXJP0Б"L*낷B禅D!L~)ChWK#μ6sT ׵LIWٿ,NUXB&1Gm®oVftPtRtIl׋ 3%UA=į^IiSWyx h4*k>R뾼2V=b/NQ!({ ԊDhd? F 3FeNNIN*O mDG[$dloE2y,s 3͸ZNj>t휩Ҝp oǭ;7aG%_e`OǨ{?f_-RٹKK z,8yZxV1k]\Wa'c1Jp !_aw\phJ;EIհGg]a6?dDO E 6U^4Ż 4o&Iy~$ V `uY͇օ@e*<}y`NE9\@(%B7Q!M73N=O&GKh@Z.ZA޵/ /E=6/D╅r7RP&Nc $ [JփӚʲHÚo ,6FMOZ]a" %QwHSڴ G0]E;ez:) sV8&DqDM~;^>D0hm;%GЋ ݪLYNVV1c4H,G#אfTqQ+bٵX v``ԯͩtEk z:եrZmMG`(矎(O-!y!gw/1k];yMVk$V3y.SO~(Ⱦ!h4z9Ln5b+Y(1`ܘ[JB{\(~Rlh4=T tchsn#F47exau>ͭ'8ƨ뤀 w=0^f=D\m%kubC\S:9QTX1boKVM:]R,8oK,ӢFtۙ;9V-$i8&*}9b?0vq*i0}Fhê9>/\VQIqՄrC[%wX+ܨ+kGzjEIu N'1u(p˕y!Y` n Kݱ?yAiB ?薚b uRd~ wP7ֵa3nP1qBS>糧}-~NoLs yp^%0\#43ӽ@^)kIPGB-"pO%cF6*2{-L(LR( ΨXb>:0VxBo ]'M}8-ŕA~TA~u#^~Y:l⡉A?.7>z>ƣŕk?<vЄ:QNcۑk ^D"Ġ t[`~c|eO=Vu<#%z- 3Tx o!D?tD*2 uO`}Puy;A~7s%qVOE{{xk7z"jm{,Dj.:^;DWPحsy~*0ITjGN@UnpϺXb]΅Y,F5pԽPMi !x`##[ntRpAH5($CiIat mF hL9N:Ǻ/!VjKū9Wk`/!$J%Wӳo2>Mh"Y.1vcɖO l)hFaY?n JsjѷA+^/\BnBSFyd cInXWퟒ+*P"#Ur}ģRy<ުfqiSZO)Jqh-y\a Uܞdjpɼ PR& yӐc6ͼMMK'Qz^Ĕm1}L{U)'j^"MGn!A)] tR/nkZn؋Tj*ՠjMOWi ҂dBww?)V ްϥr(΄3?Įuoܹ0Jʻїc& G'j`٦6\ 0H1@}=r륾dV[ؖ1y/E[71Jc+ߟ!T7 MTع^Ө `jc2Z>lsoBKcDS^J1C?#vMOQNV&_S%:@\`AK&f6.׹atyܛhyd5 eTi 5^0a߰Q 2ŭ#з#O' e6?70Cz8N*sWibo *V8Gtxr,A%*-"ᾡfy6X" bb9J՘^ƥkU]]q|N-B4!:%.h3@^g,3< (%CjGyGૠ 2 V.¢k5uFhK'YC `EeOsV]*OU֙?ܪucca%9MiYQD< 'g:k=#OէDy7DJid)g#Oljvd||[B%6 J9+@E`LOjU}d(Z6x0cXlMJd PcW>U f%^ţ ^b/T (hbFƘ*Rhkw'渏/s;Z-e-&QJ*U@ 0kU`ȝNOw P3{'S?2e (AˍT]WC+c8hLiXKwȞO9K5%g$e֗f,l=DzzjmV-g$Fu!+wg%ӕj◦OLW}p&WwYk7sgtiH: MTc }\X d|d3sF[n% CX o3Ah?jf7Q ژ |bȀ?AǤG" ̕OL1 iKmrbFv#Vyk|`)RT$[&I+LQ:kQ , úH#8ԆpKKuA\+vp*C97t _\RU lһX%Ć0䉇DŽA#”\4"hc3k;+'9GqY}xv  `!ANSV&Ґ}W«fQR"1 IU B׃%y\6aݲ2G<̂E0E]Qw)FPޭwAR=Y&E Vj wbBEb wmOwT1c; G BsBbDXzщ]pM7ZLj3ǟ# \Y=G(ϪKmLճ!In\(|*!!.aa]mGUJ;0R6N9d|ah5#!$Q>< 'uNjsâJ ߂*GL Zrj%`/:>8wF3ʷE@Adq_&)(q7Y%OӞ3OD,Ss{-/;#ڟ@s({Z'&D~핛yb6>E_l%X! PQ,l!$x=q'BLE}:P-K*4p؈@œ w'@lEzpzs3.D!=3YهuʮB@DA,ѪTA4? sӽr1U:Ȏypړ8j) ֠?|Qq~NTu}@N=2&a У2 jL8؈mnjy}cdC vsM`6P ?ƈEa0{W{Li{aH dMrbmJ7t+J6(*sKb}@8S/+ꪛx}#N=iG]Z s,*>|ɅW\I,dACF|lc5ǜ(ܬ w-Eq{}n]HbnWbD%F+O_c~ /|K-*,zCgpHYo(J)ҳf@Xy,TU 7瑿rWt77ԖX@[4"ªWXdNϳtR# '&|y״ID^J`~@1SS=I}ywch=,}JN˱>56}6@Nk}CY &B|Gpc*%zbנ(Yu-5O=|UN 8uQx1ځ}>pz.9z.b~X(qz:ì=kǘ y m0d"@Kg*шMe у) S0=UNyگT,M{up?,D̚vLX~hΣ9LQkƔq==@֭:;T>JYD;3\ `r LԿt| z2iP ,Dǃo7LT6ϗFphy`A2i0dOeKuo7O'dNZFt[@[|vgt{֡A$B>qsB/~o=0%D8}2ߖ>NαK_rEjxOfi/_-hA,?;k Z4ދ:I7Gk,+]7_|E;^`'F"vm>,S}_S!ǭ5O0Xd5k`TO2Arh'; .y?*U1 J=vFmJjڠX9|IQsZ}ٗA._O 〨6:~.|jˮtM2-GVcDV\}sXnF1? z~&fߞG%f] ]9,9 ӖBT5k?Pەe@\JEFjK鱚V3AU`[%?mI0liД"S6 Rqw΢A )UòIt.dXʊTb@ϒ;{O ~Ƒ?~R>-1#XE` V^&5:Ղ0zwSjl F@ӈmW!J+CgLyE3/:HÛnSWoRĄ>_/Lmdh'74n4$.DY* TOVϐ͏˵W}$ڠ8+TZ]1%JD7ݴOfF̠#Іؐ!o⊸2m{eÛǣ~K>t!/F{g:%HBˈNcL 0ُX{k~."RLο"i?`{iOGy4٬jR|-,&|Z+-Z͉LcnIjnCF<OkhecepXdvHXeN8>I ,tm ew_V R?3ɥyLWk$)zEe&RwP\٪ڵ&SjZVd4Z3U4|́!@fn㹒ę(b\~1o׿ r0?'Pkd;?uT,?Ê6unUF$Yy {W.tpfbGXt'~}~bU?5NzבONn~hy:9iG_#:3KǘY!;)uX"A=ܠ89jԋ1jZ԰ 繝;v8Űͅ3& H˂eKݭO8Q8Pb@ֶs|-x5i[ ݓh6uK­M~}n]]"ƿJvx7cml}0K/$z֗ftgg3$4LnS?  7͵Skꟷ@8CavN+۶!#_q{u H ܂d D8⸞P$eLÏ -4pvĐd\Bxt(2H,\ʋק$i$}=󁺵F!! nFe>d$Y1!U ?ɓ5춽w|"^qwxGp]@yɮI/-nLqҧ?9v3n*/@5Qĭd84#%h]hb¥3 5Ays t#diR=ɲ>; ˘1Bi*%EOnp6+ՙz grn'vM"pw= o XTfr>YGEeҭAfVsD-W>\q;$>[6϶1y:ׇȆ-hY1hPhF?MaO ukNyQ ߧNV,mIvP-bqCUsPW:>ޞȱA>`Tܜ7&ɴ&8+*2/ZH0[x%ELj,ZmU%G[,7UbA[O+"W@Bm"y\g, mZM#H5̲,xM3u}9!B2Hkf$yaJPЙs9-CA"yEԍ y-|E*Dr; ~T]4o0Jmw] [JdsT7NdꧪEˍ@iW bw2SR@)ুY5?>܊wB=J5^z?sPhZ}cg:E҈ͺXRU]B0 4g_\xNAkYp)ԨN&w6~ qzƁ_SRuQ#d}EvPIV"h.@y cp _])k+#ظ qX ,24xA{wW8s)Wi܉[7RK"ʼnpSeHtKr#tFCtZ^jZuRc/rtB犹Q?ZwѶ0 4R !q7ʙCCU?%ź(+K8^l&Ud/6-ŗF'pN,P0{BȾ2a  I"{sϻ9=Tڬ=Hi]eaVEGSޢgWsz_ <Ϊf8'D)!>C{>8\9p 2u@i\fIg3|S~>*g6"7U.y[^,c+Cv(642V8b!tt g0EH w w5O^Bf\ePI2PF1s4\> J%{B2c14s1–4]}*iSQ)maqc)t8%NҼNY(:ҏ ;%?R(@Q. Tż͏Y(+#zokipmjC3Nr%l߈-Lsadĭv4.잠)#mɱH,롒`]|Rr^$]o8MՂ$BcVhRI9hI{qȒc.课$ `> ;pUN'pX_ٜ J+~Oa^łxfπT> QPV4Fa][̭J]U/N=3-Ƙp$Of@YQ?\ ;Z%%ͷ*Ͱזc/J#ǁvC}SU͊REs9*Uԗ_槽{L߶z"kL\{oL̐4Pڼ)pBS- JL4 3L7O4Y6IBs_O/ݓ)Qb3'~>@D&&٤Ow.>RYB}SdH>ḻgRz /"9DxɵaPbO_kϓoK}7:3hVGFag\l=QPtS ĆȆL%a7J\ "_G_/ۂ'ג F|1]v<ڬ>NLX$&ԟ Dz3푶lN1YǦψrsoǒ9*5|i<V8Eѭ "nˈ%f܄z̛ǧ&E#SWHCc?#>{rҥ:{D茕 K 62ˬ9bƩwJ&0;lTJdsT՞lpPǰ\qKiRq=-D&m9="evLvYLBkl%e=o/E%oxL.CLGt#Wy"QW![`EWLy _:pNjErgBx/{:=/Q@Gr Uh,#?\Y[H^K`Nb&ZkE{%QhiJ iэK"xGHGsa> Z@,-4sg[F[PA $X>]+D%>1}_0[¬׋-u< IWLOB"+@nz^A p>Q%FwW]R8#T"\^+aa93t@ڦ_H>b?v2/rQ_~K[nNxcbs|[{z)x0uzIʋ{6 siJc^[)o3S-yu=T#Y(~aD9Ϫ5jN4n3z'J:^vA78߄RM ' nY]:av;FaR@SlHah=?Xs{Gg҇;f*p$"\(x'+}c@/WSzw=@rr@0dL~5gcXx93pmzGWIѰA4~˓=R|gg Oߦ90O25 5y>Xţ;]cQz* ^D b^ݬV0LF s B 4FRXLuZzr+֭ʊZ:SrXܾi$KṘ ~i NOM TY/q"WUfڦ<3 _c̨Aa^`9̣АQsI<^Bjmhcܢ1h^xn#ex9Xu а_*5GoRCF*P LuF hRC="<,䪘Ku3>zG䔀jE4X:«]V J|Թ6GHHMԳ#Ts)d@ %R3aP,ޅ\GjM@PC ނF8ѝQ͈bZKTHŵcRhs((ldvB,&Tr(O)C\0h4ϗ$w/O2*SusFK^riRn0jr&[C>1OmVZ?yҒqV V.f&v&R|sǷHR@nz k܍|7t&ESpj ORpU]S {}j0ImVF!hHx&͜|/.gjEaWl\N+jQ_|l1`WBӌpTy2$n||-6d 1k[퍞bը "/Ӽg3l m]x[riuOR FNEeaD7ҡowo3Sч֣+ev7y-!$ۅ8ͲAd\~ȵUXx5k7rʧɫM!\ <1'C+˅ Gz8tC(q-cY.׆GO4m Crqڄp޹%}m =$gV4<굼Cy>?Bcu%v JcVw!!팉md4qًi-U"KL̥ZNb GF]se}vb5ox`q)x.xB7NR{^n%8k L?vxH%~pz&D&UB|O0XG&KL} jNsQ#)@;;@9{ uq<ʹ6vvi,q(

{[J 5 B\ hyqK%>u=x;yI6/Ja8]l^Xxܩ&6[Ѵ+xB+_?ėZ d_H )7k6(P,!c8H iPݯ .uO%yTq}1={QPu  5qf!#Օ5WY~&0l5s}SC= d0+VvnJf]cA ~+mDE,-yƯ!,} h?9am\1Nh|]R< ():sRluPVE.9C`!8~Z>[kgLc(R)1G'27oB!,C4~DJ[bfG|Cj*  ?a.ѴJ_W4ضHn^!!d19e pDkYXr$XR.<J}"U`|سf){UIC!3GgF;jo`S4 r/"8{Օ;$I~Z*dWT=["!dшScZj FǺAď\eX3Bˌ_{_&YMCY5pL ; hjӶ3QkU'KbqYoiQ_<` y`vV{J_xK{x!g< P=|HeY *.mSd|+AXƯU9u,sduJ أVU۪%L"j/Օ XQ(Dcw[r .W o,53BӏVI~)E!N&9Sd}TY*.ժoJut@Wӏef*cGtIw׸fA )uRx0땙 ˉ8)V@Mt`Uх&7PbD8)F])%?{^O(0r?21hnJSi_<0,x_a4gh,´yT @Wq53+ j\EexV'*umX&N)؂ bu\>yTne;-" 0{Zs|(.=5F`81*c^ZЁNdu62qrFP̪6M}҆a8戦 t':e .hō-ZH'_kx4Ch!q}g'EhpFAq[jit GfcG.`v+u%4By=VHP9fcIoo>لua~a/dǶ;2bPid.-^ᘨޞCnM1v0,gSދ| vY[:fL(j`{/RD}Ժ?ǿ~ĄTT><ʧOmHR/_IlmZʤ@tshfmUV+lQ+3F/nԗCʧ bs_i $K|- Tc1ŰjnQosw*gR&*ī{ y5F>UWYcvmS_ڛ ^FUAT!y2u%h0CY&ҺL{稷' NfޛٛWO1Dk3٦X%ٟ.> 䩺 $5؈B(xm3)(][_Na c~ }тJib3vBļ-NIm0N ewCQd+egPuj+v٫1G反^/p g\IH,Tmߚq#֫F)L[AfܾM'~(w}n6[O-!7-!\'%pRq9Ϗ#?/c,F('׏6$.Jen$ˇ͐C]l3a"% j@3yRJf:C߿<{B"5O^٢8PJ5==5:-:UiJ Ό{ ^PMM̲:i;lB,;}4n!5ʹ;G ~wdᢴ@+4Y]t5F4Gl\AwB =p}KDSP_9ԐbFKNVCx(]Lr&`ȩTd5-!\9&!FQjRe A+s/ WaIpu0aͤƑ4JU^ #ُYKwNp^{B0^y§Kw s_)`]}Z}k}h`邏OS_s]d!MPn lv=w[Ai[vB@ai\*"U!ۻ؃y+=iāӠWZimɆac,-(ւ$h`.DX5H(6 NDsT=T7OHzŌ6aWU:QÐ&k& j#{,Z.4/VOIb' 'tV| WOEI^"cf ~ݠk`?^Oyg6!i Xyv&W"9HBLg; _bQbN6ӵA;KNDifҙ;hk RqR\T;9lpV3m2Y!xJ1J U`Vٱ1b?36\&$!K&N(j 8[ihˠ^Bm6}A-)J&= *^UuҪS.n,Z_0mH 3ܽӿ@b !YC~pjMbZ)_8xf4AWaJA _bP=c™@Un` j0.G19^ SF2MԶDkWuC]Pe4J5nTe r~zJZsIpFHY2;vb{baHILY9c~^<,9ɖx0k*5dR&{U5 -RT3f= m>L*ؠ^ݚ%'t{7_JaM2˯H]5vCM!-'Y7(vK4P5|(<ݔv:%v&/~M0c}xs̻ӗ/DڧyovLtEDg)K .&qT-N\\2؀QCt n"'PG>; u(Ն~N!Q0ܷX5u2n^F#w~Gl׽I}Pfܨ}; E`8y5Et~ xyf-9S\fM %^MRLD] Mgx= ^c-͸`e|Π;TT;RLJn;.ypkU$ ;nٖ !bt[@a Fe񸞯be-E54PEYU2J$ Gѹ-u@={CNr`Z=rv󿋚u-d# Օ+|A3ɔ_Qu٥įXCA{ T'@Ik29K@^}i~g]Rw//2d/7@ bIVi>~$jl,RzgsdO"{l`yy6FLLX̔ia1zŔ6?@TUAGoh*U07/T+ ?&^:Ѝ *  `{PLHjP,rn%-]M’fW1:HأWL)lڃ \Nk_(AYԢ5!퉏9e712xY# 6CN(u%U!8_pYYB&/B=Eey&[z@#f6;3lzXd #I[O@^`VΛ9/~%*iu"a6 Ej=l@w+ZX၂QX-NJma6MlwA%ǝg{*6$VDUHf{C:ٲ7]o ^rRY6Xi壊Y@ {WfU/ 3Dg aARYL8lS;$g I$UDv b83S4F{ꨦw9ֱ}Q@}HOwKp˼0jr@;{hppM0iT7ӻA* ?h{q.<.'H1(aޫ;U}L{,E3[/t!v}~_2^4KvOI{ }xx(TF?5)y:Q5اHA&1!F6c<E̓x'jzs@WQ3Y#61{YJ$3sp}L.Ku3d)CWл*!-d8+$P`aI@ ~XB},.˜P9$9Krj?j/ثaDd&DY6bx 1b`PJ>hQ}ʮ 4`ef5/i*؟:w߽E*- )#3{Ƣ UH?{㦧ؕq.@>+O; ?/d~wP[C_B HS7ZE|B9NWHfbd PuΆ ^'5 BN0Pեz,CN:۟PPXꣾ}fLzCpTD<32'tD'_dx(FsiYqw_ s֨b>ɜpiT0 ?Lc´1F9o_/gTM.^@wIVADYi/OmVCŽR,+S֝Ȉhbz"y7IwG_NBszmiԳSQ}gJ[Ï'|Wj-TY?Gfp ΃6?\,M 4l#}+SsIc=q ŇL=S@Q{'d:{B:_HfqJSLdDdiIMF<3[֮#.3O cmr ťjԦl- 8¨{g92G$=0t#G)fB?#Ә|f{To]--7Щ; 1+ WOj{S|#1B`jT1+9xnx%u&oOVCm.4F)xUjSs t;@V5ܚTB1_$c#yЙ­w!fYү>4ɋW7Oe ~D@F2RP.Boxc3&UZǪĒ`׾x|}jkALwý+Ɂ̟AϮxWL\w?}˄pmKqseB FբBL6>=W8UȘk7dRfJg?U ;Rm>hZ4|E+_n juUA(~K/* ۅoUsR\K6Y&atWx'䊬o@_V/J>3QAM \Of/cWvؠ M>6̖?݆.ДV98|(vFNѭi+CoBݖty̦־q[y: lU O_Z]#% vnIMĺB{܈AZ*nܦpʔfEf:ث YB5psJ~E5/8$`a9N¿9BhZ_[i,P,̌$ZЏK9R Z% \?|` vZEt$%yW|P(Vc2ENK PCEncN<2`m6:#mcyکYxε*^_+PB &B -hNXU1xgboD0N ÞϜASF? (<9_l,|\(&y{^;2/zWQ2#{j@qMc6C!4DwVɨ-&_G *r4U2@|/WLnwa]6ėbWa8쭕cuRRxv9S6(`c"M{voqԮv+;6oBkqog6UXs 3?\[4( 3d 98 b@jA\I ;Mnv\ ܥ{yVfB:g.uC* uLQ$-m%edZؠBFUT.OؚAO4q b`A 4d܃gB])\u5U"-U .ۢtR=Ы1RLl8ZঽI1r/* g]1e(%삈C1=\{ $J׌dKN#ؔR6 ;sP7,̽ 8zRD^cO[F.fq9pqB^ڂ7zus6llٝ0!gdEVcMN m<.:L[-\U|<ĚBpDiLj_$IHU>U>#:s‘ERd% $.܂d9xu ZNP+ӔAX=o1C 6G2>67ih!R=Po$}rLGB[cF0xaN{{㠌毼!XUYD RC4%e^!Ǡ鱇 lQ0JΠ)w~অ1 `d))٘hYj"Dn cO9Ux sK6jq94 =Tk,~ ӟDBR[FZ|!S9"E@:ꝚA@&&#%VÙQ$.K9wCØaa pkj'u.`UGYb^BsS4+%6I?хQIϗr-vn8;~o0VɨҒUd=WrST ɵ!q^jSF*P}s$5Z6%`sֆeWAFt@:Q:&S& %[ o-?{X|sDSP'֘nv\"_N!L6IqrS՛eI,)Lw}+}%#僬/ !GvܙfVYMJEm_mU9Y(|#9NO&*5//ΥnDA <;69sl<ǓC`uH)A0LFh$ <>p $OPa$d=庂dRӁ`@GwQr7- EWwa։LУ>K]9T!Q$; }P(N|q`/-`B0+l\-,Ofn<m則C&J5OX = :^&XI}%DT[;w!6!>\(e"(V/H@ LOhxyo; /37HS'S^ "$X|4_q B/$5c8!G@c;bBĵj  Zăʗv#[~Gp'`RfGEOdfY6}z61ѰJsqoV6AmKdHc:^y7A"y)-ټB"qB} (]K00BJTTdrh+5_ D qr낢@,7$xK +q1̅_,WN_jGS$/ߎ Uv(_YeM5鎛RҏI] DlS4VF4D8:G=8+--L)HT@q4bf&)a;0t*:Өco$gno&"ۗ~X>rS&y'S6t'Rm6.6NOV bJ' E qLHyҬʖdЀ1/.g 89F;_wSJ1Tau&ɔI[#+]B?~(|v^7A 7_C"278!:X 4h&)z=GJ3mH%ݳm'a(>I݉AHzMK +yT x=sppcIv˜Ǔbħybbtϓ4("/`:ZϐrM>,rcMedY۔Pa9+i՞IuϪC"+q='՛,D[_c^Pլɬs,io)Y&2,t0j4CzVyhg=guS/ Qlhhɾao$QSEbm\$nS]f(ԁxJQ[նt"`iU0GM_uoѼ]%i@K}:/; ,0 {*.vi6 (X*%xHh0c_|9\а3,}yIxl>A+Pз'+ y8(n$iWyvYCZ8E_$\,箈6ZK{ 5<|%HBr#FęC}~2K|a 1Fo^|f.$21QɢEJ-~^IIQS^\:3ɹx[TEviDo$dtKq1/Y3,c0Fcy8$gcs8=˓N 0Qք()ӲsSZv.+7jq6O0^(=S4TZѝImi @D٩?V`c=85KǙbV 0xKzϳ 87t ZtU6xTw 0#`l 18W+ d75i0쿢=@B\wwi"^{,ŤJx%r4$5ɣ#󔃋yYN!~ 81={d2"D3B`RbcLpFܗˆ-X4"M6<˛ӑVk{Ff{fv1SzE9:8$7`p et,}u:,A,0.:~94JW[/"HP>:!U4MKk29$~:9Ͼ`u5EBB[-D'zѠOuD'"W/.U&H>jfAI$|#p9:Y@z?T5n`0IL ʞF,{ _ {|d% PgPAǨdo7MA5/=D/jM 3g B{ ::2-5W1h4/&P~2Gm&R(DflzTQُ 1aPWRmPdf?gU@?OV]>*g(4g@|cȊ!%#Scr IĄeJbl ~/Vz(AU{/H)\/X&$`<"~9Y5}qe%ii?}lrOTω-|AP S1cBn3#"X9l9Pd>zց1;ka sIw+ t{ &r2wIqSXj98/o]>q653d+LΨj_Cnꁺs25BU1RVtԃPeQX?ƣϧ b> aoĆ3j|W,O | P 2q~Ƹ}{gZRnn;gůq '`vy9tOx~|6 U=v?6D|%ԆjUttT?-ABܩ?emAk9 rh?jZFQݚ1}N3N_ucKə6j/G: smƎ @D(CX`Y[DKrJ Bg֎͕0p9)Uc4<*g}!L;qcF_KX Xػ)l71VTr fIp!?KT0?̓_բ^8 cw"۹C"AiqZ5]rw,_ 6y_}XV}ČJ߸.+Dr!yՊ`Rz :$f!/~FUpvyӴH| t~)#N*5+ +v_cKz _&, +z~bEyx)6y,ѭib#L&o*6)V Ox҅E?lϜ'qM[2Ԅv%9KIjli=WDڏg{Oi"«:Ҡo2tRR`N(S7sBS=h=`)SX/ٓy[o= 8p՝uNS[c7RHFu~WfJ'R*vu+,ū Ӡ[Q51Z B 8m⹢X6&^@1\]M SΧS)R!<"@+j[Vh$r1GS8̒_GϦjN} G&n덷ʀź8%!,v4]̾u,tP_ 'yt5EM(sCү5\F{? |#Y.'g J+ҡ™$"{<=( CU왭QeRG T-bhT3F>J '3P:Q@kj8zFN2[c{Qgj(U͹+C4ZQݑ` ]-i!QU~l-ǁ,3zKdoT;i/RՈK;.]T"cxr x؎C;NJ3e1A*7X7a8W'ȸt~doe{]ɒuHWڗq3MWyl>)kt`H;Q0]}gJًMb5?^JGa~׺oMh^i`(w}yIOkI& T6t'>a0"ѳ/cL/f?N zqqNm0R<%_Fb(Nd{xclKPz; …;݇3 9v6]Zh::\fG5l $)3Ie5 *)vFwKf[bU>"I=f{D᠟x}͍7jc3<R1K@q1LD]~>.9.s(9;L|%xDvK SJ;颐+1F҂SÛ#ɭeH:Crg)!fN2^ G2"ݧ-ª~éc=q%_4 zb:ZjJہK{Ava^;́De}N`_ 3mP4,AKR|cY:9nX У`u&r@Ts+SJ9 Si]cFHiwȁnNG]0;':sreQĭ%5sHHFKy51z4L{#;!jcT1qGtʯ959?n[Ϩ + B*cF<%ؘ*DU3G.[O\^b>#r"k12?K l{>%16}KBy6ގ>}X7:~?|\y0 {Ft3g!Ƴ p&)33 19ZbUdlO]O=I5Sҿ}䑕`Bīq/ KS.yCqތ L{1\[p!(fo?͆쟟,^-g]n{[ Uk-g9m(_R{QX$CN_ȶ4z22zRPA6&Go略q ߅_d !JKn)ߛpS13BΰWssIL/;6yήBt:ׇpt/P TԮ4/vOx1).A* ʲ< u4["j(-a'PߙJ? ˳UʄY7PgNu\l8MCWAb EZpFOx|8/a*毺; aZW}54nǢޫZ}?c&28nZ9{}I E~ߝ!@p5߲) ~Pر{}z۳Vs{d )(u[ %ܶ/ 7sa_G2ѭcs卬 G3Mߕ^Wom|?p gXGn8F/DX8ebgKGqGg3ʛ1f]9_D8r֨n E66YO9{BϨ0!L @_7xxl[Ds@B+< 1u)@4&4*7#a`6g N E^)A˛YtAtz($X4"GpS\@O'۔fySr-YW Y4Ǔ[%vK#`p'vGxCT0od5էbVGiU[KP ۤ8>P^ YX q)(֟ޡ.#$4ݣ@v_Ó!"QTWU9/u".;ιU~y)*X8'*c@U(;^Zlfy* 7.>+yטGjՒK>:Np@żYNZ]lcl@] a| ugt] 6k|'#gni6`dhsIw;q5lxx]"R4X&Ŋd8gA?ϑzh~~6=Rdq XSl 4` KWPWT>щd]Jn:**Qb|\& cw{|ʩ<{jJqgk,ZGս\0Gq"L`LX}6:Y=YU^t{vq|HA֓eH=?kLwjGQɚzJ$\=T1wu"yIe̮m,+[p]]8ȱ dtμB]俰5Lphc (YXNN_,ux*Þo%Knu!ElP«âwȹ7*7NntkNwmQb}NZG픣u DrEm|#^\4fCda6y}vx Z?|;L ]"U%vVrrMtoy)jz!LAWzsBDwO wHչ䪦+9ѧ<[KE'8-1yo vNM |-qM/f҉*S_k3)՚YS}ɴܔM#-XkIjDzF'N[lo+J3y.KadVByay&.'+W'ג+g[h ꓪ21BCֱGQȯQKek1 ztP[rBЀ s𲵔7[zloVWaGqIcVpK0Suy zJ:4SFj~ih; f{egy1nXvHP aI[a!G66vop"-|~b~NFu\gK2(L.nJ.^"0jYuS/ sKWrҲoB.V+ЊYuVCgf# 6 +8O':h/XR^ 0Igd̖~wQ[PI@[~~Iyr-FKS'Fc aw&o1SM%) - y6$<qD%fTXU'YLFwA42[q|!Uơ*ߍZlIspqUqih =.=7knE_=W̴rwJyJ7 C#&ƝdJ7/b o^ NӜʖgCߪ2-7R1[KZ_khU?}Z=gۜ@*d q +1RM#6iӲ-*۟6K ""{PRkA,6hi~C/жg6 c^.1iB >{/f[#  ?z,eu:a=Z71ȱ܀`E4.E?s i %9pA?UvH/5n+Z5vsu7ӢvDTZGHlB(v¹Tn聋V}ꪫ g(p1WP}\Җ=A>"}Di1p}mr?i=Q "k@!q] 2-THa)ohq UΙttNSY|$p.} D#]M y5eJm3o2ȬQ+<>Yߐi*SyEp v淚EڝqΑ>*lcAg. =(}YwS 4z̭y$b)B?}0NOo*ۛqJ HW! @c[u%p r1f] 0 XYSn2Msgnk߫1ln_rpuK eb O96'G'RX[KW_5!*; ]L;xX9nߙs`z`$iz#v-( 7 B02ݓAa,ب C2YgJhD=q}#̓pcpF`6 m/j7cփPOiѪH*2א}`^>w}nHI >AP!"b>N GVpe^1,0xGVhh>*AB&M xꚁ_f{7,+1EUHCE\*(^e쭠s(2?+B;,T(UzQnM7ueoj Y=j͙`9w@ܜC4R&޺G= CNKW~!ֱr16Zo oROQkh@=v"21rX⦻:F݉kyУl/Jl~u66%ٵRf˥K&-D+^Tw|Cqx?ꔉ\ٴ4TR2񣫪^ m7Bőin/G: F,'y+Zp -Xܬv=2MA}Utj+3so['i``^uygyq-"0l%xF\+kd'i$!W-;Zk̚,t<=bbpK\bj\cӨ6G-#d )]#Э+59pG_\J™8Is*@ ެlfhV-!Ԣ=F kJ#HQE/b;7_ q]F0wgKY"&[ҐCMQng:HkCු+(Պl| }?- Sa1UNv|V6y>[ C_^\D\j1~*nxu |J媒gSw#ȄO8W/Y֦rJ/{2%IW"c%A+x*Bl)?8+J@i<8(dF=N]2e̻کf{$:]H93)WIJHH)M mv DlSǨ,gkF<%@㤓9w bIEXaTd}w^k<]+f$o/^ 2#dȘ)S*:IK?A(|`q+%TL}(($=eQtj²TZV%3z+M'fj;(ӓԣuM2˸:veY: \j=t;F=e~ ~,q$Ȣ odn<\xs<]2A iAz&%Jt.jd /!X.Ƿyl ړdZ7VȚRI"f?wRq 2س'ȟ'#;Q"GCSSJwő41( sQ QpMOWS-FVȊ@N0A6Eg2~_YRvG Xڇ,aadZa-i;<}0!Py%+^`"c']3sQ?WGdS W,VSk[z)ʷexQX}Di s`Aٳ5u] fYxa|?_,lfLTN5MEji{HMeu@Liu.O2_s~}%|3c㗖g zxZ: \P{UxSo'ІL(1.Nl8 k WW[ʀ3I`)Іm#Z*Ө}t!DD ez!6G zƵ.S{ LY4Б+g{p:#טR RV{Սn549>/$(c6nT #pDld3g ZO:FYrl F+P>yW~{L# P!\L PZN4GNM%;GzU"a1 DO_Ӛ9fmFg.\h Bk'!,zJvb4߉}ix2z$EX V>hFQn4V$XQճ}VT "8.b^gKpi#+mZ,<9נ0bbu"~r7T%V>fb"Wtn\\Pȼ]17{&ySk#ã"A?!ۖ_>lCKE$EG5/,Kغ ] Bt'߿y^][K-}'QjɄV2V{S!xt;K_a3g_&7{euhؒj٢kf).W cfi&ϸD1)7<1!v.R!^3 \ddNyX**+j8l1g|5Q&^=%3 ANd*-š \|U4YC}i+ C}=Ύ?ηg; bA՝Qk"+l 1 /\R E\;:35kdӾj-q*/GkHq#ˎWS(3x|܂ۏb|)\MAw7p{Pߎ-I{vBNOļ3/ytPhGNG^<$;eۜ $V$}YD_Tc$I8s;'hCtuǐ0{VɅD-PhjTXp]$mc*GBQ(9"Mj_w& ̩+Tg1]0|m*!3SjXA JZѩGC _Wrڍ§^^MEAa bS̒@aK^h[iKOOT3pI`!xwAs3ʨ7QF(8Ҥpr'V1\iW;>(ƆL]`L:r—D(=h}Ӄ>-wi|$AAdj8Ï!%]b FJ D6r'R 緕-Oť19{[[%b e"U~M~3cJ@kHmlYJ5|'Ua#'1= {ѿ=S6^&Y44f@3.ΔI? fr z@FeʋoIkQS*iaQf ϧU`i.C[*T'jd`&C@/HL\9㦊 1 ʋE%cz.S<͛HFC6sĖ!اF1A<'@,\(߫.*ÝYO=T}#=r=b[`Ip$#"gcfz5v 8ey,fm|M?3ri ]i%& HZrc[!Vy_dS)䖻`g5#!$ve|n-)1(LDe!Zx bE+0d&p|ڊ߶<{gTS <y2x田>x(0BjV/YW&bmwCpl st]©h̚e>1-j‹-k9jBuM-xh[No-f=dr"w7y6xv[u'Cm$zT8D!p_qAza7-JnPUpg(6 p c*[9ڼXVc$rI8 }^]mAA' F_i㹂!~y:gs/LWh2T.1(WN `D ^ 3xB^ Xc4&2ޫSpQɪxgT.+.KY_߯2`{ک^&J$?kFoȗN颵1i},!u| b ]OOIطӗC]ixzE;7j զ1AuMo1WS'Pٱ )w>'i޸c!5?BdE1/Ql淪%.MUU)h /Rp~GHMwɛ߶cyv<4Gc[z'J8Ϙ[bdCEyƊQ*g@Mo1ezzD?H]P5FeFX dD>bL׮M(,{cm4E9Ư!O[f\BFD~N4Bΰ@ۗH#o&J%; i2~ʦM\]XD7-_D/WV\zH(LYVDS~ՅScU{mZKw>J0#mH3.FN7\"'>e_b%|mN@f@5dvu`jE}z/]MɰCo Ң={^N#]$hw igu̬]:ED(zOC7ƎtoTOh֡'b ]uô$G6a˞<1!FQ90V餄rIqk{A3kl:8SmO9y2F*H%Cx;:U]pͧ# 3As!K MXXW]q6>7 _x:q :rh/oOaĹsȡNM>bv<*+,!p҉UOܦ=L˞3U){.R0R9n]㓭,ud{!J Tc9u6Pc}\|!ؾ HlD4v&UG=`BAkX רZS(U=ϫnmyI1p|k7H >lX5ARc hYPkT [;';{C`嵽d L+g%9d9c_`O(; bx|SbV{P"!F@/d!i/-+(eU*R_cNHE?e'PI+YA?lզM fy׋˕PW ߬́Z-a _ I+E(L$)}; 'pNp Aq(R ~Eulds6Ǜ(i1J/#ܼ>tU~.2@=m@3hh9_؁Gqϵ};?JGƬR_C }s?{_`"\{hɩ/oʜ9Y♕Coх1.<(~Rhi@ $/W"LQNׁ^2!SV=*a 4esY'M[xX<$L%$ 8ֆFY#22Qţv|;V)MZDa}Vm8I:'j/iz^ZUqy1X^8v*G]9l~mQ)ØvVլ8۳J~X0z\nDyPM^K͗RJ -oFv?&*Odԉ1'>'br,* eJa0GNF˧* pnZ ¥%&9t ;miGTPe|9e|zft|q=ΰMda }6jt<+H "(.xE*po*^ꗩxRqDN?[iG,-ڻI.|^$湈aR1liTldі,dL+zfBvPT^`ˮFQ!?d)LU0Ǫ'@1rw?%bMⷕy"UZzc]FJ#xHQIw0!%Y'"M@D)PihmHH IG+x!,OU]'rb[Yumb~D(+-q%|Էi*r$lsќwxTG2Kr2Iv.*<ٿ=Q#/Eأa@u:+q&m!3u۩gܻ>9X GܿXzt t}-'a^zB2T!31r_5=DZr+Keӂ697i8+t>Wz F>F4(Aгl,و=RV'uՇYI@&ߛZAvԣTO>H@ǶGў ka:句i2䪓 XF~0dJK'& ?F=׹K Rd/-h4>aw;/oIJdhq OEkYaf<ɫ[b#v9 1UlWb }SӔ9*V{',۴^ZjyOؘ#tDp*>F ΝJ a6TXI ESo M 0~"N "@Ʊ= σi{ Y7)⮧xx>S򮑇UdJWxVw*uWbo7􁕦 }y:*GҲ\:ک5UZEp#9h>}5ٝL7 RoNǧfaSӍp͠(gʲ}Ƥxn- Y A+2CJ!-p/:O7l)J8B`5Ϧ6<-6}xF.^Eri3'MyH80׿ 9RL4- 5 )\#K Tjј, ѕޡ$lS|,?"Ӝ !ѤOU0{΁ĻO*^g&砧Ay)qo B $ yk\A2~2Qh{>q r3;Tj#*,vݗިeb% 4W9|>zlPg@:!k}E%ǫ^O*kvnntL9˗~{Gѥ@-k(FY0-(6DK1[?*l0T2k2+ދNae!/|LiҍO ĉO2gno-h.UZM#ǖO̚jIz*Z\FV P׺XTK Idc<,F1[~Z4'2((q ?=7L BU`qT%G;>ut/VNYɖfKȮ=HXhG1HxZbϨ+0woUwhو۪j;eY#k{aݖKfO4Wr\E'@~nC+>Pk?Km j7aM*p g*AzfRVQ!* idR_ [*qN7?3`NUo͚\(5J4 &ʐK"*(%UDmK>1 cNECD,7Xx J:k,-zZAg\/Z.ɼ`VioKHbeWɛHIRPTw,SΡ-S;gхdžަ8M":?hN WQe'MbjadzJvI#Źa+\u⑵/ë$Uwm8. "k;6OuCLg}|%ȣxr)+}-zYlB*t}rׄCw+KW].5ףMMx6ÃQs6a-GWL ]oEYL]f}tb(/3J]HT,gqŻq.DL*0ID8f m[mMXwpMO~ ݷ.և, `qRg1kg2~Fǀ Q;ckily!\p.$8O^Xhi'Ϥ: Frfゾ8OFJ6= .t\@t,?ںG d!ܝAHw{>&g/@oZe 1;ҡ[BG>j(qq%AҙC).6G˕L.W@PW~wv8H^V9p 0'}[S%`Ѱ(Qrp>I m2-CDvҮۑrI(2!#5RJp0HJ?."z||oU\d=Z6rA יb%̧Sxr¼UGq8z2@f|w^~$sߟ{ tt̎UbqZ3t@8C4kfKh"/~Ma4ukx$1ƌ.Nrv=IA} BηBR߅f_ܧ!~Khxn|~!% ~J~jkh(@o_ qhSdŸL7(mji`?'s&&mgKK7-Xb+S՝ 䞌c@u5dc3lBݚŕ,Wdj9o頺 a{]:9ALҗ6n$ó]!W'B{dkPXI/t,Jzq81GBla\( M4:BLp,%kg>_xȣ2\ Z7Yj E%/$bm PyO$Go076lQas z`x'Ozq;̪å J.CgOC"&5aKpm9(Ti#y\,,:၎H,%DR_O+ U ~I.vr +쟌<(*BD#ﰫÉtD`[B c-,gQz7~GS[<YR%f@[%LXVuZXZrnk8"‚x a-qo~-,,C2e< 6!0P@N//6uX+!9Qv]ZcdĭVp癮QVڂRO@*SY.ϺP 0YgM?b f Oʵᄃ&3aE^wFe-r (la|"kgy$|a/Hn?cHoc 6o='D$ #;9}9CE=-lf5ClCFrbv<$؟Bn1=ߟ͆(`@DPJbfzRڔa4^ 7N):Ic{黑lo:^' 2=6\w?uI *6KT!h" MT>kUkܧ&)fpOhzÝ >/G^ٛy߂LȤr V4g ۑ hR7jg*1) 7khH׋myͩ@;|j\eERKͱzbؾrMDWLsI!~Աc1U0lZKȣVWL+?GL "hY2mUO*BF[HZ_}}ٳ5Ҵ9:(zc# %@%{qD+^L]f;]F{ Zk[Kz{\y#^l/ 9JK+9<`mtݮrw u!=qNYk)_SU'2H[lV\(Ba1YW $tDlX7a:3kC>$IJP(q1 \^?AҞNrtA.Q3jo8߹*/VZ/Wf0}vd"%|`(9 `dS"4NNS\L3 y/(ĈljxSfP?T9g?C mad uTp=އ!*BT"{M> g zb#ؔEL*O ц Dqa͒i"HTh֐̘x1jEbs4v`@6O")N\ L2kɞz`M-G;!2]A%wʩM5e3 vA}!^?] q޹60U7H^knaa͡lhnzvqWk#_$<+X(̞Llnh;܅AAZsD?8R֗*(|a%a,KXbw3P'L) ~~ cB{^VQ[vAnݥzj߂dbR>+.+QI? ۱Fb,8b 8Q:- f7Sfeu]I˸ g)*sO}v!ĉs*> ֜av*JF M7OuGz)N{smJRI/TbeƲ} Z\<0/|P@)hz+ЦKKZX}{Sp ԽzcJM.W3JQSuXy{IYTJ]!hQ &W$'Q)j7x[4'^>k3 DU]_±PȜӬ#Ζ:3~? nmDs& eø=T0{CӛQ +j8i}ʔq@eϐr RHi ]EQi0t˱iXDQ7[I^ѧ_ǼpP8xl|E|y恆)60gx&7{]PQ^Z Ssߴ&~wE2N@J`@}d8Q*Q$DFPNv pOFe- 1`f-h:h(fC M@44c~퉨a%(M(>`\NdR2FNLӭ+gi~ER0@j=?7]a5!Q iׄm ײvRv4$[gU ' cAg5U1g{u8ѢQ߃c4g*p9#-P/kB#%Bq&?a:R䁾T֛Ku|?|0659:yz{nLJfr{x4z?1C 2vaLEs,^=tH*^9n ney%xc2.t<̄[_kh(8Qqْj8`p| .hy T \\!;,VX<&#:􀕞6#/A?)a'yF6gf:p %?p 5 [a\]gTwJ4;\xX9z9^=Lxψ]xO4/U׎$\OLwuf/!Q}nbD)p5EZK3Ti,S'f&BJц:b1+.7 ^cf G4[LRX=iӋ\eUww-@2C79#7Dڰ6,X& ,gĚ@ Y Cm-7&;~cJ29K{kUDuiop7[Xv.(RdOJʣ5SǑU&+xiX ZB&vN%;wk^c!udâY#+0JOB/ m9xh1B}X#xwk;M&>1ޥ]dK{`/kS=f])p!yPѯih}o{P #)uZGD+3sQZ6w2tŸg;-X/I>:: qLD%ޑlEŦ(_Drv&_O oB)C{W33⾙Oi2%7e /3\7 /9V*Q=r6q]9-}AzL(w/C! $)/I' W*E80 U1Mg&~4 ۘ`8q,̛;yަ)"V[?L <ʭٕtQv*ĉT3;ܗddS6(s!w <1j ~(p tefZQuЂCS_v|. *NAj3 eG%~PrPrQD+vɎS_^J0@kl\-sT ^ ܶěWLZ ؖ+m_!X 7UNMm,,[M*[GYZyq#]\>#U*ih d&N j9oo0\F(DhQH"qn!v<y+=?0uZ]]`Ж@\$R9/uH3[8dV+邢-.LKKmt`HmԀ'V_R"Zvrm|mѧOi&F4HG%}cmZt*J cXsױits5z %4 م;'cŢ+TJ\^Z6Ln#ui4`-\. Rk^bUSUfꏭ>~Yi[ ֟KٿW pD-3-R0|`7*KÁH&-[zyBM_bԇ5ZWNCڒH9^vj9+U"tqaJewlaJs@ipQ^ |}|..=Aۺp~Jj؊4eVMs7+PM E`h 3?bIO罳҆<v}fƎ@oY2T (m($x@9^ (oZ|CK"E]p@H(At`Sg8(|N z]_8Al .JE2:3:Pp9#vC +ax:а` ,Sn-0)U؇V .qjS3RUUvT+7=E HogV95i{yG>ink>. ]q{+1qYCuOi.u~n[@gEjNkvRqynxPM첎d%hKE.sv뻶i pZ#ۓ2cmjZfIJ65 :ǦVZ"7/)Z)UT=8 "뽬VƁs+D 0V#{'i1'7Y@ˮaKg(&dRƫ@1!6dLRMX bETou|DB5JWUnV7z`=7_E-E مC9[w2*@đs@5Ss+Aj4h$췑tm{ ,|#j#T.efCP!񁨄c( 0)<|\ t5W;:V;"?{-xigfG4In0g>#2ꄭh fgMU+D deYdֲ%)13_C7t><4þ#^NcKHGyfyՅBYѽ4Tuft ׫L0 Z]NhBim*t Ly3ԸPOE8-R?(ZOZ9$9{ͣer;,X)Xe im}2Z"VSH& *SCRNItu. w8%vTdD{hh +‌-Ѳw:9j!b' fl7_rK DgP!5em'{}D.`'uP`}' hM]9ˇOFR70@"VZD.jiwo!9~Du$ o9p Ld2H2~>wDlɻP>1y:Yjm6y S;&/jJ+K^Wf-]7`.m5jD[r>,*6HlnN HLta”p;ԣ u#֕fBJe[7|=EO8{řv>U;teY>[(ch){]6h IQHW-ݟydԬt' o9o)F)agaQph4ŠXFhT({ l}Jލx{w/I-|i_6 ,)g}YD_cJNId~юuOU+Tߪ.*U{.njwGV! Md!B ^dZY!9~9g_b[E^޸ tȂʫCB6sgMYoh+Ƅ9pjϧ`-`qfţV]#h)d mP bͱ2IT (dZ?69kQʣ;hjNo"vHuo&Ax:r/xiC[4Yt5kǞuSdy88ѥqx:DxHǐo#>GzWglN ml"5-bfcS=g H3sO41ck\d4?; WmgAB4]Qݍ"bu9z-mj)xS69ijѠ@Á1Pj -{Qm1},}}x_pYӠ􏝏?t/AÖ?~*Ee#OEl}0EԪKDv "fjV|~,ۥ(̎IM~B*  UGڱ>\ޯ1!"v{0ӯ?|k5%il$ ci͕ϡtpc^ `pr_aó&"^Fp KُmDcE.߭'B/͍. HXvi&'Bֻ뜸zjʖgvփO.ApRƮ-ȉ ZÂ6Bh`f%~1Gdo=]~ d,`2u`+Fz^vRYB)/pRq+I h;/y  ߞq?6O~oEL>k-YUqz07Ra|f_B3m0;zrFLܯܥL=u>pMJB=ti(2 Y X"CK{t!U 9/;M Vi.dԖFDhGSR( kwQ gAFtWɉGF(J ryS m p"}Ǚxʠ1hl Vc\h ./]$OU3c߱9B_>a~r=roQܲݝj,P3)JdaRd{a_:BĊ`lo7aQ#Sk><ÜtG谋i&E[I!HznɂVzN Mp/55ŀo3N[HEC~ͯGP `; %)c{[9l+&䠼 n!~KC:Pt,E$u I^)]1=̇jz\S+/ÏF}8A=_j{$qwu;V1[7J]{ n23~A <(?\'h 8X >TPm3n! F9habmWٳgN5mϰ: CJuؽSr5V*K(4вvQo,ʾ}~Xםd]q9<]~-%~ã9*EDc3 nmo"~_z_3uz5eEI;CTT2X涕Ξ,,Jz#7j f湣kV= Cu>X%>t0΄^Ě@c kk 1{?8Bpa&#Fa9KRx4DrteLjd@*!=p1T^{焱ȪprE`wR:ޕ%AzVI ]C9d=t 35P_^!h#zTvxS'?" DR~, gtb߯S"@@X֊&_>o"ԣ3vDGԑIA"窩s!Z~dD :e`dHΖֿ˳/ `>ƶdr[֚HDIrN.& \@U%? Fo6~ryAlCwƢ?"pHQ'T\R2;LO*;WIAﰵ:><.%qC'5`? bm4$bׁ#n=wAv#}zЦ׊=Ϩ͆@++AE%wdO: N =xmi=]%AYKas`e lw_ٙq or'"<YBK\b 3Ma&BSÃ*W+W8 #MN85G2B"o˯&ZG9297mp8L;S6zA0FD#Qqe7i++*pqCԺCd.j-$) - +.LmEbhP+YipKcGBKxX[--.Zж%ԓ^UNII0o5yYʊ*񜢇b`ҟvl <4`!^8N_n #gPnKn_15<%Hݼb:Aa #¤`L^d1>3B&'w01X`_9DzlN|_b>'7zrqA"&WR٧ݽ|԰3o*k`(sZz"1V8P9 +*rGqyR#Pt)˨j#WUIh]I ~3Z iHcW×;l_)+m@ V /ݶr=D1i &EzXD;t[I# Uߩ/mf '!朵-K l2Tkcvy,Vu{q4mE蘣~ ԓ'Wržo(Pt|9C_@@a(ws;ŦgF=5ͬ )[)ȩR:"'b uBv"w[Ià3p3~#eM ZjFLCt8Dp Ӹ-$L\.>hJR)to9TU)Tv T EMٴ 8]~k$5$>C݇+ aKf-Y@&"K槄 M#޿n.*q")\L}M )6G<p [镹T|GMlɣu9_jt.*E-npQtC[wP#eUgYw"+q<^=]2ভV\5ׯb1<"ΦdPrf8|,6O7YV}{@0&<zV 9viJ uegqc pt#*EKDP!Эи1J}qEs>!-(-?Dg:ym1O;mZrU{Fk4zP٥֎F)_vv4s(PC{ $j\s1ĪتCh_&YT)҂؅N oMQx탳{:dS5v,jtDtۆ8 \c匙v1|`/vjBkYp.sC,Ц\v!ky8Cտ{ymH./7K `>*jo_pn)Pf_ DHzu@*Uc4 i* :"^m1/⇺Edq!C-`h4*Olȧxkt?$J½b\]r`[vwFY$x$xy$r5]V9eykVdk~?b lR xhVc #z:uC[O1C[m/l'kܘ:D-j 5f  Z bkw> wيkS@>Sd^){.d.tym{Yz%qWє#IUb9D'ywNӋT@y2`)\E*[w.ٍ)Ek֩]AVSE^< 5ƾBU˟B»#ߐh566Q/,W}] 0G{b2 <ϥXѣ-ĝu2=j &> X oK'Q[qNZ=$qZ;ɖtHaOϪ sAL89Me6җMHcI6;(ԫT.)9(ZpD< 0IECtﭧޗ7t|SʛDm<|Z86&v- ;@Mz5PQZH#U%ʁ{sn;5o’?!N|b"we3稗P3-=5%-ڪUUl .A vyI6 ;R_` C}˯\g;DMw !Hޣ[fIRIh`{zf 53_O^L<"uqN! 6h#:Mi`K3U#nL,ңsi\8h`Ł}]ZSدkGˬ <r3E}wqE5e{iBnK]_Tf(bE>` _!ܷ{*h%4٭uj Vr״q;IEU֠B/S,H&!zd,I,fW6S[IAzA1DΞg*oc6gYz}1O=,0Y\xΣ$zHhg oH%dPz qݱ'P̗h 2C+l_:pR]?e%&'Q\D0oQB+p Y5\Fe01o{s $]Χ|&e0֢ѧَPTB ȧM&RDjq֨d/L4GR^[YTk%UnJiݔUgy '>3S c>%JuugFW }ߗ;boU|+17(E*[~f`YɋTEa(*+`:ؘc:N.lbr>L"[w7!@QW)M6:CIb9Ώ~5g Y>'}Yg0|^2A f^wC#YGDVK>|[ Wc3Y~tmTw g&mPWm L:Ɣ{?b*m?YaFGԕs:C [*/URbVk*C~;E6抡hu0^9pŗع$3 7%s!WcT7h0<Ⱦ\ ƫ^=.,5xFic5=B ZiojJ֣]4|>(DHdVuI<6UO"u}⋢/x`9=>87"%غXV/ }'Q"-84M܉-ވoig Jr483)MPÏyN-g4hTNŔ&6Q?뜘j~YEtwRSa DJ,Dx_ ~il& fRf"*H޶q`fWs?GdM GPL7x VI}5v_*PHi7*ӛab O}K@|DqF7>8~b(jl@y M5TODe{dUT [DW>wz|Z*!tt8/sCMp>vM ('T~Zx9$t\Cy^ "OoFͷMG 4YȲ{ a^3LިAxVe _v2DQKTr.-3p4Wp{fuH8 {eŔ6(zrнz¯X 谱&b)Vȿ0}0 Zr G),;{{*d[ž}e/v{sD? +'קG)_$GQĥaz_k{o I;Uwp#M#0}-׿i@q _^ɶ](;v% V>Su2Ͳg4FŌE`mbζ*V>edq2,w"rmYEghRE|ٲ7Orcljgm|! c'\qؿ; C5, K"kcG(sW?`)y"Vq MуUvFcNT`Ktl_P+Rj|c+g/3Q<1ZaaOmUT;bp\ }*vk*)gM܎MS@N,뷚f wNPKX:sN-E V~X zSENtR~IW״D4v}Vd !Yt^d9GJfuQ>}9_v:FK!ezRQZ#1up.h\̭o-:Åi&59>HwWVQLI~ pC"#Q3 *G*:}Zs343CS+zcujFWσ^k&a|  ?{q%{yf^sV8!rnww"~Hcõu+tY@ xeX(ˉ@t&&c%‹> NLP/Iݮ'=yX.ad5cT #g:ˌ۸Όˍid9;!=N&VbV*G\i1_' c5JeP U#ءʣzn}n܊0(3a!vQ6z{ Ԉ޽ضσ1m{N+ˈmN˴[LQ3lYr/QLȎt5Gc@rӘd3ս{ XllJ(cM֞o|_ǒGKsJ hdp_ )Mm1ܤF.)bl\ drձy [fO~ g 4Pjt|^AkbVk^zCnpO930 nrAQS;M 9 СR#Q[N|kDPn趄CerLon:x'g kd 7mT㌵G4:&/xuǫ/ WȐ-xo2_MuL)Әn'+cPL-6#WF%G9 mʚ0|oj+U24\gsúkS} up"a+wҴ=n{ipgtM' Yj̥62F4J]ƽ 3N43SdEI,G:O%qX?h$4Mez:g"Pj\ c6Эq>&_ؽV*u^'Yn 'VIѼE̖3{![̓cozo9\W*@ W;"WJϊC[#4F/rM=c \6u9bk*YҚ VI|O`PO=vΩ^˳'). I*5dmw}Q~F6S]aE_xF?,1WmE]*SL__o؎uP3zJe|K^Dz|V(i4:\ǼwS-6e!n??yl {:XBB%.#I:ryJDMEV!z \@qčp_ }xM5A!pfϼ.=z ۑxp#uz@z$.Ek™PUJzŬƇD lbd#ARm}2}J8FG,?rJJcE=#vS/7CX1 6N07Chkh?W/1~ZnT-dII\qzAC݃"JrLP[+dYql2zj-ҹ 4`VɴTZ-9_. 6uՋ@ Lɳyb."Ԡ!LKKXp+0;S`2O sH?tYJ_ ǍvG*X:OhMǜz| m8`Hl?Xq2IKGLP DSYX6ѣ vmOeRqrwq^>)numa3bBMtƠZ\X:x% >'Fulm>ԫo73 ܣN8$.&:xXP7`*4dU ?Ah>"Ŋ#Bd]cQBGw8>+fF͎ţ˻ sg/sg"#ZU(~Bl4آL,B(z-.QI>35=p{ie͹mDo1cʴ3:e[(e0y8 L3nR[G7Нn~2XBdl6qQ%>`^0-LfvG:pe1t(ʁiSt`);ZG5Q?ϫZM"gV GʅFPK"~R2D󙻤p-a"gp)J[j(#`(w̎Bw˱ñ>NgOwc‚l8:1_Hz$=eKmi ]ԃde;f$i-A>ΫCMfGݓ:6*,T!_Sk9FM;-yP=UfR81řECR|ϑ  yK`j)cNWON @`niS~BL/ne niGH G 7% =!DGWm/n_=ވ P9^@\5 uV:hg#jY[LOg㴕;(M 8鍻me/yIUu h6׳<]8o } J]=L+aui2~<ᯔKr~5=lt:;VS&:K,db#T.;[>zJ5BdfJA@|T?]W$G Ga\D,4KqaKX;AXp8l4~I g"b𤎛fRMJ+>f\8%I3B(g[ľ_J1lڐkh't>Q(i%\Fm}S!C#$Y&U[E[s'0 k9&A13>N5txSúx.!/or[ /=aR?l"1Rd۽d*o/k&ex1R; ~5Ѭ МU·PjK >.k D_,ֶ^\8O5N6OHAfJRcjKgĦc9l>.U.ܡS oo;if fʓ<=>čde##jC1kNԜKIJ;>֢i ZG1K8 Z.P|Re^$g 7fL#0)(ѥq;!-`{>|N.d𦳷S@km5[K k};{| kܗz,uo^540RAtPjVωxU2@x3Zd%:SKkf) >vH 1]9prΰyYL(%3\^Rξe \?S!nh `کsZx Q?vlx=zKE=4~tnƯoUA5Fx3KYwV|*_v7B\T)>6ru ᢔih\[L$*+ܰ T|+EW5?fT>֦k!<Q"n:G $ϔd%#KSUN?#Xܤ,8^^g ?vl@o| 0Y.nZfx[!=DX)9,JjJ\G&{A1Ss$lq+U;?EyeYX/.o{%hOn4\nt>-X>,gyizBBrRxyna ܾ$3~SNNϰO @ Z#ɿe,CVWs%-H[lB&929hQT>-,?kMhp_v?|]BLPZFy(wdWΠpEMRb"a6 mi.rPI*RY7Z|b"nJ~' :hFbUW—خ4eɑz/`(GF @|Z_/ppL0<[[\}͸*eYڏ z.ϗlp-6etؽaWBoe^2؂>$x'_ HJI"ҖtqqQSE7seU=xLxsO};/RJ\rD1d{}V"kt{-_fNz5NRrQY#Bt0L&x _(rc߂fЇK=KX8ϯ`֠@jJ9~{5NeCІ'μ^39]I痆ƶ6@sj۷FaC[Cooi7p S8C|oTV2AEL@N9K_Y[) 't;8( D~M荡bX$̭p32qpI-E]ML'2iһ# ;NM\(1O p{iƞlCB;=^cԒp~$k/زD>$]Vw<.6޼\ܓ HVITVNީd+@K$1B6LKn4e=oD -oG%*TltX_@3@ 4 ْ}Lז)!6._oU|w[VorDD6ޣ:tNf[’W5J>iڮRKuld9`g{}A6vmoL80hԄQ7Zoh'ON,cnriAWalƖAv}0lp;,0?^߆8Ny!l6uU~w:(*Is$LgjWD$QQ=kҐԱ b=?L6\u%u@MUIX4dXɩKȵTkI GT>ѓ o{ql]16e˹y,iDy+5~CZO]YɋcSCv~V]ʙ #z${D+lȐ|.]5P8M Y%?wΩ(6p]64LE3mꞹk_/{Sm裺̷1*?o ѴP%) 7 XТ1sX*E8\m9i%/cgo㈞R|nC`xq'GKE=tD(-#)vwZ$,`d@_kjie?(KRCK+QEK NಲԺJlaxR*|+mHfr^b!E 1UPa<к,M iaaIKm24q Xj]6?Ky⠛F֪}örI.ԃCN'o sܴqu#.} W[۹)~q&ſ9n)Bw)P+v+ L܅S'۹.ow{ϋa5bp][ tX&%/S ޜ|QA*Ռf/9Rqfܛ ٽ.^z]hKYs!\y]_qzw9Z!\tUTdem2|Jx0^ϬJ|@a X7g>5ȍoc}qCg5vķO V eeFjJFpgsfnfIס<&e,tg.0Ѓ 1O/2ɟrг Y̶Ai(ʾ sNN7L7_댊 ف7 0ID\L[+cvHuз/iN iNY NWʼ8{j,fDƪy]$z b;۲cS:zv_; 5/9"56kxn¶ Kp2qn"_FUSr E$etn -NStN`6ZAb3"֗RSKcjS%6%t DaY=CEMaW`ራ|)ܣ*-$֊Nݜ[Iz{3sd*t3.2x`Y61pnK(c"X磀&%%;T(L[Gs| N^y{mРȞ(W;.K`ϓÚ]\lϩu!j TlFXQ5[_6Wi~)."lֿ!7!oNK-n+43Ѱ9L7ȽITwJ!h2љ1wmHI\P yۣQr&4ͤ9mሣ8ͮRGc:tsRf*=xeC3aՊJZ\P($9hI`0>KkT_Xj}f9E% AOʑ|E\P5HhbHq/S;9FpA(GA?.M;P7%8^]}[s߭LgRG&B7Mk&N?%9.XaՏP<P< tj$DgWz`̧s  wl^s\d).aGY6T 4D?ϛɕ1|IJ`6`',˫!GU4}[rǬuHεԄnG0|4l<^W6>sHtBp@TE;  b8` N_o x'5mXJ\j_$_.ctJ{ZH1e~E]f!K[&n4l,6/+W9𠲭 v#EƃJ+iR% %^N]Y o#ؙt7{NTmlKK{QqJ#T H2]%h 贐GSN@–75 `PF9piHre} 0zq[|9ƹ$b9T%d|gI;烧=,}5u\hq#m3EKI_BM~{Cfdį!ԏ%M@g7,kuYLjRUd pC>P6S"nYzQO2ZΎ sK/jJS}@ceX'MybȻC+">ĶCHǸZSPGwIԀf4'Z hXpe rQi V;dG!]lߌ > e;h/ k:V>O## |$wg3K0&!*] ?$3ή6=8{l z?M_T;"yG9_008LMş֪6) y[7H x4sFQ< (:ΖSFqAHt"6զrDZ:4W&9Oa #_RpD覠Xs|) L0oOL w+~A'! Yy'RejIz"/>7wӤŧaRRƀ`610wS yk9TxBN˷?ph׭,@غYN?5& D'A)-6tJ7MD jݟ6wFEciYnSM:ObCa#^_P.d)ޙPEU)-fjx$,B$SCsl|њ) &0](W_`|dKObzHtn,{YDQ&,, /p7 7VO Nvd5kNI9\bDb4&D;WacZ&O\(JWg,/}8ԍ # k炄ysOjÄJ\ծNt峔4W+G N8%0WYv*eg}MXFXHVbŝ $^"+ ĕ=3!75juuUh0]ow!l_ideIL4$rgyHԆΎnYQ*?8+,GMSy8M1q, %JGc#fĴ<~2i "p,Mu47V`$.1< QxI!ϺVuץ-s6T:s6B6&3?Jτww@LGoc>b.{3=ΕX0tzUNh7g%s/ lɌ&[52[L A*stܠT];F}ӱFƗ7ݚ^(IDa sgxFs:;k*@P 73l$̝[h\D"(]Qi8ڿX-8*&(Y` Ff/2|h@=VQZ2`)y/=6P/;.$~]^z085"Báe,Բ4YrL?7C*7gDV ܾ ̼b N[F7єI54-7N_KimF?& p#\ hR`?͇u }%MV;M"1 y URZ^y g ^TK7o~@.]Evfn[[EpSd g/D_lH';X`I] }8-|3GrM+`֔=w 6߰nC+ZdkԤ#˻_8,Z9?4a#yP/&\sfq':'caRv)ByܞGxҒ6^@A0tFxl;H ֆ =quXXDkDpݓU pY{d'mq)֥zz~+9K/2|xۅ?1##/>ċûT:UZL[M;|ﮎ?XpZcP pj|Qm6_]Jecz@HtP|ayFRn~BUs^2 &03FK:"ى2<hhќ3C)Yl~W\&/B2@ C\ySsF+]KQ07*K@1 "Z+pAt7hd-DZ$m[- ܨk§>Ʀ8S-*x!},{z+^ vI#d<4}u9g乍{~Hh !2uxx$llx3$ZZSY9XZCD(/ca[-Ji ;tځDO2yv4`FiC^EDV0 S0+;9> uǫhoVCtWݮ4%,v 1GXi&fYVsA>+XI&´Xщ5P ?.J69G,dMN@d) pLoOHVg>eXI 7RϢ9ΕނA{}Cˑ@ϵ?Lw8X1=xվ%5ɾ]Z=4m3̴VjlX!N =-#p4jhio~sdO {-d˒n1YSqpu2O^7,cEl1[/RK()0:Cclpsr P pBZ=ז(gv=) JE :"`BT y0UT@jOn+/wL8͊U5;BJwEfC>Q,E^6Wauk9.&ߩIGGMk3y/"Υt8>e!S}y~*$pR5"<Y#V*i8/Z6c `i,(گRtURNVcTB" VЁ 1q>s ok ՗~^d'Y jw 7FxD 6!:|8EB=n E#_Š?feJpݘjlt{_ zc/L*֋CDh\:mhv'~"SelU |'_MH . LAbY|(~s1=/Pa L,4B`,>s,7`(gS#!~NA@/j.9s{ =X)Y7i8m1G.gY Fz]sP'91ST HqeY֮#/L{Sy'ɞ^ eӵ]-sn -LzFИyUU0j#|!<:D)T^};PgUeQBw,TQ6xCƹ)uimsF(ǁW_Kow-K'֧(ŝw|MI- Cy4mƫjRcz‡9}9_Wp g-bE (J~6bbznER*'̉f$zOޱZr"\_9gtGyscpqM=j TAHz!!9-ϋS{iO@آ5]f񚽅&gB2&q42vim_ X'&߫)6Q}=4&U"dh %6R2\FS]eLmr :D xQ?F+.(7@e]PU<~ʠ$ŷ+BCWRaTYۮM1Z$#o_do=.^cUC>RP=F veA0Te-gB0kq[2GJIY~X\i,1%оٜHAHO_iS)N'b6C 9 3(2NP{:>:H8oH)U'ɅH4i:8{t59h#/jb"u@Ix#`*=y vjwΏ/In݊V3 IQo2O?&RyJ G.8]aXw sMVPw ])l+kDzUT8ٚK[uFe:R&,]_]8 Q7؉4yLSk5w^)F:RrN Cg0LFoSԠ9k5CW}۵}}iƐV6Il͊C9xN[Ia#FkX#M39vc}Z4s}f/)o6:yh#~ԣi["0Zh-nZM Կ@Cp>OZ-9sy h,BFCc-I(3J+)ոnqm s"]^P}$Yc[0/^UiǨÏfhW[ЅՒ*aL,a],Vs͕vZOkE;`@.ovx.ؕx25 TkQ9;y FEj̴>/Ar]ЃKGGgԦ5bJe2_##P@[A{U[nʞbm~U_E~; eHndH!dJTt/O`_NѲ3mZD'fE$}x,^k}R薮QgPK@T p]>sI#M:qA"|O8H٭+v7>Wåɜ(#T(b kF? {[S'P2IYL Ay ~b6BWLjǕo:ϾNĚ˹UG}aQnqv8B 2R;9)CDM x"ؕ]mXB,Pv!Ivah|OATl(vy9Ұ=Tvb : Dumm W?o"Irz@)oFZ+2ay)hZ>M8O%]XF|+9$U PII3| |v  UVKÈ/su6ayࠧF(hVD+3M#+S|I(pd:SۙN'r\kVpvIh MIF|d%cjJEq.Hs( 9KZɩql|I);*q2q F:BE@q +/HL_ m3Bpuj%ig b6?CpqHp*&@KF-.c.SveY6F~iٸ(fmxSYȜ4n$$Ͼ/%SZ5ELk{ m:xL9"wtz|"8\o:D@9? ]_uSՂt| we!R98t:; mDgV˾ Ekh(7/@+ks4C \ 3nH}bχ"SX Цk=0+7#rќ4^)t!Wk+SMPap5)XGI 59u,/I#;/i&Vk^@,`>O]oYM8*k𔆳a0>Ǝ7[)1\ALBr̢Y753V\<,tQ`Y+'(|7: A'tE!TΤih#!M{(5#^"u&x #[Myԛ1ٓ]ϐ"WW x}o?ZNNk끖8Hj- m(mskgS76חx$Ҝ8u96`ys>8, Eo5 7m7p0@paU-T`wWCX'Prom'/k_y~B=&=DV/h6YO4y;K$޿a:xyG|K'`Zqi!hcVd0>l@"4dzr[#E }Oٻ,qwd>Qs?.$vG$ah$~T[xxH(GblrŻ$1@kD.xCqDs! (/ vܾl5`?;w{FIUzݹQiJ&ϱ-WWL+ѤMc\GĤ6DLԚvXaEb$;+lz'^ry{Ie I nTxI5Ljl25tOÞfڽJwξWMFLR})ї"]WC=w Hp~kO[ށ40q6Qp4>)ꎐz,g=Rυ7=/˄FEjrY{ {nG"^mK=dTQ[:Eu0E#V*isCO_>e2èN~e*цN).ĈUqƾBTK^=K+SKGJLI$4Ĺ܊/Gqmt_rۂ0&sE&ԅ R2L8@ )X,yB<\#Ԉ vr:k>nh[Jcg,łoRsҞ ]\c6;i&u2*e1+vŁ}}5YBȐVP)ZB3gEuG jVӃ9ugMł-Dj/_fonAhUȾfwV Ua-+my-S!ǤPbn%3 `zs]DL#<*UZ\oC)ȮI\V!Z[w3 s bOR!7Ӎ=-Pu`q|wMKx;;/XcI6M3?ŏ̺^PuDC.kZH۩;W2ߚԧT6Jzye5E]BXImgx,衜bf.>vJSu WD*(aEN{@%mΊM-[Xt#yrMATvki>^uQF/TϏvCpv"Ӫl,pSR?&ptM'=Wt@6HB}T{~*6A[ŕ,rfĠSȎY^/6%Lh7.=G}B{o#F\B.27(9Mhy:6ji)c.{B䐎an|YC9w" UQP=j3p|Iz;-`BЎ:+k?n^5<2"=UQZ+ ,_w뾋QUl;6sC[| qYT7ңLsn=Mam5?wm,N4Vv~>*eQ?wУ|z}nHuYK+4տDɋfF`Pլ!i-6 ΢Ufȶ2]8 ߰.toto*c(ab1;|(e}*v?[IKYZ *8krkǁ zf.ւ|]ƙnIVB3^j ^3f!"U>ԬV8n܃wPigX"Nd5즈O7^*V1AguG5PQyc4(%L22J;S3AXVƙ[ 2qsk@>As=1^#:ަV  SȿXN:]Q/ͩĢWeE$hnx`B'oQR3Wjahu<JYvӏzwVOWܑg.0/AuٕK+@r07UE[BG;ˣPG}A'Y+)Z;{xr47fӽ˟R0$F'"o5s} X%D1eOؙ_ j4R*2:qzQz5! 2-RQhl鯔ᎅøNܺD굗| M<[Ռ& c)_:i裳r'Jj 2$^zCeFB! *͇Kq:v;5d/d#5t^.bBSpHD- &^0+*TM}ڪ! j__+e{^>8k/Q}n{r"H(.dBBg6X+R=<(/%ʜPƴKk滁E\ ?It F5z}7y \*QՀ ˦ ޡ&*ڙꇸ- Q*mlejS:%m`{>~

dh5uicVMuBl'viG@^c e$4z%ž< r'x7TK\?QUܴb*%>DDd5>I<)zT/2+A`31W0v$l/="J%Iio ga*6/ D.M/,1$L^LYK*)tb́#}{/t³z_J`A^H brcArFP l3 &uԣp~jl터?WJH,lS&* qmJTQjğ57/BQbK_dnQ#I@O+wq"jQf<;tt-M`g3oq#='ZbTvRzܭ/fC*t11}hhROo4j tyeE#ڷLQotO$MݥN8ѯ<]+pO .2`@vnJ8bkmll!ua0gܶ8y }l nK&E;&밀3kDDjM1V(>V-*;N6G bXoP ~:n6%݃} V~+=K+z_"KQTWE=La%vݣLwkSvn tuWUp!+25[h5xj!vv7BHS sx 7T+2V`Q'qVtZzr͋4x9o12 rA>+n{9g(sQ+) ~ M-ϞzrQʽ=S\MG'Dw>Im>wu [R|,[5N>!esdB[W=ʊb8}ܢ]?q9ߧ- 'M 1D(YOd0EwΚ" z*!!oDf(> ڸ PC'Y$Ί\VT`2۲!NxXȳ,M1ȇ;:Y NICzw#,;)_ΩYi]a~KGaL${{롔MkiÁ61[rb&E;IaCyˀғyo֟g/Xx-wk[6cnJ_[t;fz{Sx}y"4bրQo [AvLQEjy$H:|1&py@'WtpFg;[ D Ij3#JТAVs$gҏ ^]X#Ido=QソkT=FzIa)qɚD:|Jo1-)$\g29 I|EqWupV-'? :صZ~(ן3צM ^phՍ'Z)2^PjWk'4A˗0GF7q ZKU"%mD*0ìK33}Iz+FBnѯynژ<̙}#dW>m;ڰS|9]+rKGI@_WE|Gэ7 j+ĸtB<ᮾG'D*?pwXz)P>_{k9 蒘1Ϭk fwTKSĞ hOi|gjV nЋ3%ϱR,jI="t Ư>'+Uh(F԰HD&#uq"g^l+JV&h5<څOBփ8`AQ|X_j5pݗMF$;h, \Cu+T0-̿Ջ61zYCZ[Z]|S#uЎ 1]6 Fp$ÇrUA.!nsXՇJZVeщ5(K/H OKVY M903z 0?? 3ƂU|TK"I흺`Q'C uн튄Jg\-GJObxڜfVi=?O_ TJCף[nѵGp)JtqGWĵ@72ˆlt9k޲ml $Ujg~Zvidm] o _hRA`hT+ Fl@2u )UoQur9,|-LsȤ >&)Mz@RѰiI Dg?&q [424x x{%t7p {x~&,LUU$w5_,8,'HFoI џ?if1ڐ *tdHmGM--U c*,DzN: vuŚTAW\#wlB+eR=y-G g*rC T2%Y#XB B(!$3|MB8&Ń%ucM4 5x њ+}ve}vn7ӷU`j2P?a&J^syq&2| ODBiNP֐m솅y#`̟-_x-sh $l4Y_-Xs7{ Vg&~ū$ Dt%CR|fS(J@n~5 U>V Ol0(jGBX? w7~jےsG;TvHoڍ*;b93jQ$TbL`5$Ov_ XY K idn򢢶ěH&2.Xd[%є tco /U‡UOrHMe>kgmP2}GCSf΅uNDڬY&4R~xC٬fz9k,gEP.}ϺqAU% ?K`AATco{Xac3˻-,1PKoMw 0TO;(qkQKt\1C2nĻjk}e!M3xn6=ǂ`c'qۙc0x#Pq:״'!i;o=@A;""'O_Uz^D&L(7*Xp"hUlJjWgN)A<*&7Kȷ\78a{G0ETG'/@mR0ݳj`ּQP=԰QD@>A DkcWCvgU'wa{y LDh :@ir~q s(X_[L.e107Eށ9:OJ p`CDK@!դ$f61CO0DTDB,a彪zdNu7Y%C1ۆLF%G&~Ql g2Cȫ1IWx6pľolԍ>^BxZ֬ pz8#%Ai+ 8l@5ä́ 8`n}D41ksk=d;+RBm沯ę}juF>8i3e/3oGMNڜ4 :)LZ*zZe7 Isη3 w2(=PrrR~V.&8Urx*{A|„NМq*NinX}s'{2dKۈbʋm

h>՝|'|&U`| .Ǡt'T돺D`|F`\^l~0HHRMqTpjsuVg&{-'QX&f-ȇ(Ur(@DTxФJ(*)ʦѫ=SG?$\̤> tPam5%a|.ٍxrz0b哝yދHmb`bI[ṫhػ7WF&{UKaKÏӝLJ\}Eea50M*AAf75%!(5İGۛp&0i?RC+Ehõު ޟ>sN^Zi9ª&nSgz_ti{Be0( z&/k!'b4[(X5-d|?KqSw1wU1˖xȱ^3 cl`׎hL1)^Q4=P] `^P듯6(oL3}C:/'^RU0~ PxB6# imZ`M y;Ԋ =%Z(5CX+4 ,|]߃lXiؿnw;|^ւ@:Lw$t_3-tdQђam[<7:,?S jF,B]jc*s|@Y,RtwUid,A,\جCt7/s 3Qi@u6kzpt+]O`s@J$Pw"}s0O0@ɦ:uBQ48zo6&(C A3*"5mVs&U -@7mu@x bfJ~(8߆-o)D;a:NLjQ\w/ Í]m;ň AL [z[Qf é.Od/*4=F/=I"YMexΫ8bvj?f6Ku>FLp9~w$=Y>uG]㷆{]B;;_dveua}y79-nL_cpvH$}ZG ~I'P:濑 <0.Űs3*/fRoI68Ő^?pc*d`"QD&7Ddg2:$JSHܲl&50ݛLI ޾YaS#\; L+~`d_{!WOfD/oYrIa9dŠ?l<y8O) 9p* ߧ*ipV]Ѫ iRF Dj@ПEśGI{E"EJMp̛<>걠Xp:(rDy(RE,1Cs,'s{ 0#u>e:-2QYV)C$;޴k/ q'sXym2Z=Ʌ|NNHó#=5+ۧG$z킒h0Q\YRa >il^;Krf eWw=kES(.7/ ?]:ĖK+Q} *PKkc_1#,}*Xo+ -t¤ ZY\r0{$)-} øZ= gY0l٘f4jOlP]Pt9_ECe kZF fP|BX`AKu}npC^ȹy%,춲BuR,OfskVl(]sMiU43U}D{ rmҼj͗n+|ǓҮfr‸p~HCTM/ZIƍa >C˽*-Y7lIexlP+ D"#EeC /_+/ ש*WD؆)k;FVrP4hH9jH,4\A*?fC2'\v)3co F ]NA&} `blràyE%Ě1eDNU!$Q, <&`z;NV]$L]a\6`OuѡGXfMj5àj_Z \,>'@6$^Lk %JᜫK ('&GFz߻Ăi^1Ȟu$V-|;~U!#5`5(-NzN!ץۥ'FA24 *(QVC*5ܢ hj'nVCx;LCLjzSQ*CW䴳.XD+ܤ5-CfjV4. "$i"`l/21A:T)zinTίE' $`6=l'؇\yg yGEPкJ4@ސN5!^g<ܣ!%G X yfQ$2a@M[`᳔̩ h ݩ' i2M2ϝ!0vz`"n0n+PV,6Pɪg8Zte oq` y8IOw3j*g't#+_Qz5Xj&7a9\Xeiv)5ވ T (cÌKd)ȨuC| !:ƭLtHu}174*c}s?^!osb|TGHI9Z'DJs`),əqYV)ey(bĎec _i$#_EӨȺc%i;e fW EWapjjo yf"Ș;\_5JсƖ(]+Ci\ KӹӐE-z^q;DGmf*^Go6Š2!1%a #uۓ R.3s,b7dF;ҷsrP@]̵H=ҳNnI.3xl&mɐm(D]6EJ2 o5<]-֗u]Qٛ:Q N|xYs- zx PD*xɪXܤaw3Ba@iRJe tL/hx\SWDWUmCL2Z`q &):d2?=*aP%nD Yr.{5h`~$~.,c|Ho^A^nkfTAFp~:лrU iњoEő\Yv phSח#; S5il3Jˎt#H;6ת )iߌް+k̅ x!}`؃3<2V&f&qm*v2[Ix8JC iKYky]ܴlNko' n 5 }ы/׊L?NScgUAMP?; 8YYG3kIrؠV =]ăhgr`&{tm'!H,JD^/"-ӾcK5bunG웓ȭԂm߾cVE {`~RW$PPouIo\ǡJ}Z˂X7kn<tzLI0*$<=wFꦏC FBȃH}޲vsfd) ʺpݬWEG2Fj0[SM%l +faDd$*0#w4^=l3:i WFmDf<}L!Ұ07+js.Ա#:[/ Rt)W獈I~Zϼ, 'nW*g#u&Kg̶\ժ+ܸȴ!yvbpuDg5 Z:0iWsd'4*U%nٽZ].'gOo5vgCM(N! Z9̏s>uҫ$6d5oyis'>IMd7 L#Mr!K˪)gcbP3ZHJz@-X y#R@#/\jBI ";6VbF3 ?+\tmsdJ.SX]{>qyȎ^*V{DerSgǬZnyAV4*a:i0jT# 7^/AC$7+KAΥHp Y.GWܭIMv6=] ,$a}5*>.&G1,Z!9-cʛ1z^x}^stW ')YU[ KeA0ȶnqs46 7Tv孔ںgTMki@yϏclA5L0HZhMtB %6]o)8 4Aͮ A=H-[N,WKe Ip R i/;U6_yl= >G JuUtɗaj'QLҥ{Or/+yyT&eXbcZMVB@'3ֳ>=h8fj1J]gDu5uCm~OPF7U35,"G/%}lG ?kB4Z*؛dg ^;biؑbۖ%6,A.Qr0.`{pӒ{R%" /ץ"GYEWGBxHc}W< R"¹E[*Liav53MH=He쮿xhݝcN* VgRi`=Tiy1Pd1ag>~rAYT=e Anz71YX5*Z2?I/6*Мkp{2!MG76:Q9#qI[⿁hW_z,$MP:mlqp'{H<8qiOCsv.GwNO!f3T8|eInC)gC Ql=ᇳ#Rr85^i߫W9C#K5w}XxGˑ}M#?AiL ~F{-E DGR@S 7S]G jS:SXL{kaR&0 I[>︼&w^ h^8:k!,M$ U=OQ+x'-`L9p^N{܈3-|fT%>KK7k$(X8 3p\8$q6\)I8 zq z?[yoja: `aoGؖv2"Բ sQ ?՟yYR(ƶ1/ѝ(~=bqUNu3y_xE2Nh]ُqi+t$JZYv?ƒ<*ϴe-?1#$4r2747oT@B(@f A}^7Uo+bUH|ZG]%`3O/Q~!Sq(Q _Ѵ#ʪhB߫?jMh GuC }M]z7ЭDUK?Lzu|?co땦SiiqZa(ĆAXMެuE6Zae7am㩾ECFm F\zd䋳Kp'hpS.1S>9)d<EGYS7w$#<vXN_lSSjӹcVog_pUU`S0Ƌ!O2 ϴuh18ipKKN:#{~0Ȗ:6~ Kf 6?W%S\ZI.ߏoD󹻐UCv 1"?AՠmJBb\ɞ7cPVk; k*ka8ϫ6kv(nKJЅ$`3Aj] vKSI{H.U)s)=qbDb,^.S?NL k?Jc#P^OQ?iN &,XrDr 86p5>69xJ<à֫wSdiz2_Pb'E8@}9 (u Cy>p\ G:XҠG Csv^LȝlZ<^Y~/:vg7Pc Ԣm sY;6UnM#w 2е}ەb0:xrdC> w,,HI1MThkL >202)9TO +yf*h0B 3YbHe@Q%9W+7u2ɜp=N?_$"\Bϸ6N5-7#C z[2DE:Em\_zw$|A]gH6z>(kyLW *@`Xanp hhh%pa׼' /],*K[_t ir~=[$i4N2|WWw LE}뽒`֨?־o@$d9HrZd54\Z#bA!e;M]?:8"h/HnWeīk|ғDWiL-pu-nUDN 9g&l4HI!ɂki`_( 2Ww80[$“A_zsNj}#p^(nysư F g022w`!~C  Jڔ=# *Q%.~fON2]Wv^"S%H!G~ٙIg$P/Pa1x,Lt*k?,!o+靏zgW50AK |MtZ!5Uш+fuPe3䨸}<gXK14"ozRA<06M ~@\WkNʼns%3CcF tμBEJ* 2%̜.b+Cj0ȕBnh "RAe^}*2 [CuIkx7Иd߷5qNY=@|T\iz#ں*FKYr^9=;<# ơLEՠM:*$yg5Fv9qQ@FllfҀ$9VU"/}ܡmz|]w$(e%f G1^~Fƽ햣+ x%)d5z5lS +u!J OI58wkQ*UWN(c:n{`ÃmJV]7-ur-EX_2D\w_*0٤%ZSZ*|o^UK=?P[ \h?roW\\;(37Cl[ZI!HF] <3<`qMWFo:Gx zl#uhv*2HuXSό𩮕CS  \$>~$#HPz<7&}RxmgdppfiQ͵ɬTЂ7Ez%H&xN3xy:G4\Õ2X sv.3xųU! ?T l{f:ʭ0<@Rn3\jњ%W! (mF +\-7WtHj'#ANJ29Sƍl|ߟU;1奈`)7TliB59ݽ4]UbPƽ⊇Њv \lql["#bՆ}Nץ1)̊$(" I)6й{FQU4{V! }+Y3I}ȻL wF#1w=u;OyE<3m6f_iJ*wi`/*?XJa x9n3X@3k<;SmEQG)YH!4}L J*'{G`@Kes؉ .=_RsToh0sSA)qtH礌˹ 鞮vmH=ĊH\ zSpTPKɑ=Kɳ{RyIdKAH7q {eM㎺oiQ$k]2 6)Zol j@6[\|ҜEOMIL;Q-%B'憥KZl>IXh A/fmj9T/0l䊲6AA3ɼTGB4Fk3˒Hh$N/޳(ѧ; Qk3?˘>j'MtNQ}3Zp12LkRr}d>2 s (=,XD5O>\> !4&> (afBj ^>iHgm^/,o&2 *-yd,) [kgoEO_1gèbsY쯝ǧt9ޛ7wC<4r0٭sj9Iw(&29|%>ٸX}YEiQ v\ɍ s yD"k7+ڶUƟCdฝkE6g0?ӧ:MKۓB>9&\}5ĶM-V_mi.YoZV|S/G>dZYC'P6kBǍddFdYf| |a.h>P@O%#Yc{qcfU.GEl vX-D3#JyxCf%8."I}iLsRTOPr PtHdvrݬ>6/a!; ~ dC$ZQl[ms[ i*j0 Яy<{@bQ#6nUU ǣD(dž`SԴ9w$uZbh$-"״u&G P>YUB`-+D-)@'xX{B' -`'xS5f?XR8޶K0c@vrZLN;4wb DwhJx8ʊ!BgVZs3KQTl6!|9+̺gԻ ٽ; /U"'I0*fXu8jǠF7K]Ŗ3X`6. E9$ r"/V6^<7 Յ!2A"vy9}ҢK^jz=) 먡-M4dqyjSIȦGU*fO#F4g>ju٣T5T14BmaFG``\i|Ӵ 6w Obz:Oao&ߺσUjhhU#FPP.qU@=~>Y37SA2b }N=q`a?fУ=icz1*hiEbl_h;5*es4+hU|oE>@15[7c8qYEz(kڱHOF#?(:GeRʻy 3Y^+b-4ڽLF;l6><,PTvńv3ŽΓSH¡.k )~g2o`$$Ǎ2ĒH,ACs|1UQtoO q58(D"Gو-! y*w"غ,#bwV]r~\/š\7qXbJLz:h|" IReϱ|Ʒ~]uµ!w?Qa)}Y &s0RR9,ia;/wu!͋)!3{Pwq г2Zs]s@ȿck3~Lm+3*l8hmp(Y[iӾ$L"KBhs+o9ȘC(zB_&1a o8Pj _'gf|,t: ~lC8VA?Łnj}\4ʌH -WJ5,'~_f(49R+ ҁ#"yOus:;J_-zVbX'[!~ݛU橌D7A\All(Ty6r|I\^OqGulGog+j6Z:GJ, >L{[1& (YZ=/io1f.mo͙C=#M"v߀uhܳB؉f1[x='Cdڏ{E {9}qs}aό`Wt' ^kPlR;O;{ {*9бsl-Þm `pm =b^~KD,ɺ#ЍKC'C92 d s]>Q֬wM 7k_ yE+͟`]Ohn.mA++VhNFXL\}b-+ 9g@e 8YWbi?@˝R_fnL>8 0M2 )_[ ,!)In_ImLnUua.64ЮJr@7ΛDd$O8L;j!Q'ͩL?*.[gC8uLg8+9sqdaPd-"*af;TF,}' JfdJlbS}(Z& )Ϥ~ а&w∵;ili7 ur'0ni+~I4*fF1Xޝ(wl,V8z$l?Uvx|o=p]ÔK4eRîm7>YurU3,=qd_d"wR_xv"ɢ 6Ku(J(PZ@~JSUAE*Ai#; MgTި4ozI0h5}ρlTͧ:]v#+!DE!:e)Z%{/%b{&X]UAgN{5ӷo栦_T@:Q j’j9owɽdD*NVF|H's{-bdy\9WhH}5B9vvpsfAheFjK&S.iXǶo=`;s7riKtB CS&Q.vn`Z4TYpn uvIj#@pVs0M#;>- kޮ>x0F|DE-G%O+B##PQƬ}S4 G`OV4t+@ۉ%"Z< iLZ=F4g˛ x/-%'d~;+rNy痡ltCk"*@, ׅ _kMCfצ%WH+CR=vcIH_U_H{j#")i/R-L ^KT2 %Z ^ܣ*-})W3 tb'E]J KKx*KB$iʏ,ekC/AlP=< 6Y6RRs4T ~xlj才 ~o]#>DTvFݖzԸP BF |~j+ C\@¯KTMݴb5|+4/*k3E>^u򖽏VE I"0T4@ߙٲ? uquEg҄DiٮvdYnw[ҎtT%PNoBSy 8<cklU|ϲdV[r )͝zG8+m3T x0oo]KI;(=w@0WP~J=!"9|OO(*R;0oPZk.Y#(eKx1+Rb9IxQg;Cף_E+Ƭ6"٭&  /TNNw%wJמwyus|[V|#zՂ9j6۽+p}0/qGr*t<z.l|w0:lK~b-0&}Ys?~AfH'{~[bLyv\jO6q[-^C-RZł;B>_f t?%eO7-ۉy,+OrG|e̴<%{%_%7}ж$6Hp2G3 UZP0c6-@+ C!e_SașFbƝD[ڿCC1 ղ{!A>DdfP' 8P5b(Я $vcᅺw+tȭ/q"56t9s0{wr=j]j`sE@R >HIR7MIUɒY5ƝжfԀ2,ğ+Jص$c(XjwJT8U&B6qUr' Ek/~obN!%tm+P42sN}z׭NhY_ a?\Kb#~Y,jkYHQ!h$HF^[B+54˚ =%ldwk[I^=j/0rUXe4zHT~d1g:Dk*4+owpx1&ɲmHuLf>[,ƒW-ql*l_z-L+ݗf7h㻠0>8mAa\ \bYsHFehh9cJR2`dǤ6/^z }sE7/'t,BOS2T#V2KrҞ> .yWΒeRJq}ħfU!moľ]K^-k7nOf=[S''UFX䘻ӷIUAVKHvY: !ĨCbV`3VɬT`Ǒg d9涃痉 T >Ҍ~UW.I oß]8`PwWeo꒡xՎn{N?֗K=FCrnw_?D7M}Ⱪ ɳ. ^g[<"v*P;JNؕ3#Ά8RE:i]L9pQ[l^,|lY= uB9GSc+NAT9o1 di:yLؗ[s.A܆bBpL<&dF ӀI:d9\$yAkL"/0QvZ>b$gM;|͊] cz5{rJ[bKZ<ƆdgU{q<,:8O"S-/"/\!1kzl_ӂr0*C}2YqCZ\㽋⦴3*b*U5n"E&͝=s(1U)g] lmXN Aɱ.}`2@*Ħ Aں>f鷣:yro$hQT'M\yYP&0"J :n|_\WV#eun`i?_dc;+p 4e^Z )OՁ ̀窪^ yD?FQgjeLslYiQOiQ>3'#$켒}hR >s\@*E̛9MNeTa`:qGQ'OZmZ3;UUR2˰9V--"\EzRG'&)6#\k)QylW;=A8xmgF:68l)0nR*|y%Z' eibi)B{9wu }~@ܐ1o9*#O%XyVV}+Y` \Ad¾n[Cq4z.!m)c:][Biy:Ud\snXKUUae<*0kMOQD#R [)ӌV!KI_JRhLSx/ِ4JG̑ɧ$`@~eR9Z:0]/'T]h!7Pu)~tE9 /G 8sklؘ0Sn_v|N\chyAuˌbւ&]X5r[LaJƋ ._Wj^Id7 >y +ktB!^[KMdfChfX~t4v#,%cr1iKJ*7rIR!AvH-TndzaMwb ʪ>f'q_{jKG9i%Qr׮I<>q$`R#B;RVkkr=+1 G)Z+e'F'P#vBBpid8J *G+M"=dDIfJLQ ripGyj5CSL>U]b/m­-b긚יQ+ hBWۙY֧8H9EIį_$<⺹%<e&srv25:hs6퐐Hۄ^mR9=֙6sB͓A 趘hO~ovHNB8\[}$LW rܙE'GGJ9B6{!Oӭ!o-O/;- ~]?l0`Ͻoz/ YV)9X8_<_q{Av^5)v,s@֙4PmȻtZ HLR:6+W8nE;-F.! T[ˏKd3KC~a1v rҮo)FTG%q6ݢ?#+qҭ?NңCnPs@+`+$/ìd!,7؁l,e%n4N"8K&)mVs8 :o>g&][ % qD:ժC4^A:5NRujT4MkmE o-Rar5 cBf2+i ޮx+ǝ*U5*V[T/-c$V?JXG+ XXjoDm΅@\=,'nL0MGT#=-1/p>oi~2ӥK:IBb50p i@mRʆ:vyeB&j[_gsFqsp _铗YʞɬuVOuTpCuU7|.r%XIq3#ǂ%[U3X&c϶KµO)4ݎ/PlBo0" 6fUdY58N)AW>&st:y r.6Wi=YGf|OFz3j8ثO%3)lhaT4RK֔闖 NhcB>cY,[RK 'Gq>o 0kBsXӈVm(G 5o9ۦÈ[wCPCGPdF`A{67Y[6T6_(FA|E'Ӓbxqq\wLdp9ֻRF"=3qk={d~SHF%:Se+ejuYqEOW~9$grRyڝHC M(J=@ j6TNW.U-PK={K]xw a^v>uzQ. %Cp &NÊ_s+cH[FSiO\s*iT-V.4Z],"j(o@(IUsԈROD1QѰ3p%UV^De,ULAC?U'=* %͛m~c}nȎƉڤ Pf$1 `cp$nЧ:pn'?-MkQ:&<Ƕ9:/fTL W"s>O+~WtSI:M%# x[O'S\vϰܝ%jT,MK9ؼa=ŽN[ ~ yZxH@r)0"q:Sk{}}`O 8@T+dguxڐSZW)UǣMH9 H`OfgFqQ',&y"JaZ\l-xOY30V^lD: 8@>! gBɋ_{KUSKPͫ$,)S/O! h;zZe\xLe~cZBLȥ:7OWQ̖ bkGUVJdCFWsu:f ~鏥f]B r(qAyْ>dUSv's W<1?bIaNq/;2Zѩ"$EOqœqTa~4{eNv43nwӍVisj<Ɲo*=-Ym{dWؑ|V\[n=tǂm [A x\'#b<.6v=y|mX,cxaQDžIbHRK>?<6ejWi{ *teck ר{}"(<<׉R63DEQCqآ8(#7/tfp2}zg\v;@T`2a|=۽糤E1U^rJ. w0H<}VIh(qt:N"^iWploN :^X#\zbʦYBex5\,.a5jq̖&xj8ⵗIfZ#ym pkbغ*RH/K^4-oޏS]VBRDo1"1Rݙ{:1oPz*dxǶ! I-P!ȖAxN)A}2Aڗ2U1zLm33VACF3c},kf*!~ߤ>RVШѶo5/ T_OHFfӖجGӖn{eԗR ԗS0mE,ا *Rp%UdGIM#5biavһa<RE#֦vOZ8~Sqg m@#zs`ŏ632zlǻ e5η) •E|AWl;<Vg ֆ2`ɡ|o\Vo)^x1ű(I!KA?CcsYƕL^,Zuôke3<6ل »j0 `{eui?3u5̎ $W\C[cݗǟO(3xbIjz,[a/}̀!Ts\D-]/F8Xh \!k":`.t~.n^ָ|FD;9q -+$'B׉5Zʸ Bfܺ@ beG|wG`)usQ  +lJ- WI!Y΁D~t/L\vYSG j[JELd?o sW *Zm!Z>,bXÐZ<-V|nvŒ|*lό%%I*E:rΡ|ЄwnL̴tQL ^dHDA]7M+71׾=?$7cq قh$|S 5t}E"|VN^na[㭳g#^VmS9Jr?9Xp]*ԏ VmM*JID/JGDaSLҜ|MbtS`SZōkZ5ұݥjl)Tٕ*aiB /CHp #b:ȴrkPq8vƇ[`F៎묄u-çwrRUYyBYRGeowl,D V*cE=n/Lo"c ."K}A{_}MEeVίa?6X$Bۃ@ BiPɥ< H$⦸46M?e3OꄈJ:NaX悸H7\%"|z߀[ PZ)b'ՙG~pe&suOP| jmn@-4JC܏oT -D'XI>$^\Xm=$DCh-xk>e+RC9#\:)0R$<yg1)L2":˗-SO&5F)hnZrwN*HzC#"k`\BuCɗ}30+LUWjWfv Tv|C{%UD߃(ɋ x*T/nOx&[fBFTjHMv, \! sNO90x-qk0]=|CE[2HW NkѺI32Vt`|oz[3-jަyzTV ^v9pJU5S[px,a@&/zUzʮ5aj[PJ%Hj9hnU^?}UD{Px&,"pGGP[GK]>&敢VYCĬLAan+6l&kM&a* &I0ngN3@oZck#R1IY{YzH\E3>A)xFԀk"l1Jߓdd>i0 _hKx\Jmߑ 詔P _v^e\.ہ Ȑ~Q!QӢF\JQWoi; 8h7L[МVp{ ȹݞ >Ҟ-$nИLGiћ֟N&~h9lW(zze-lڏ_J+*z] !&Qw٧=W\^r(%(yl% וxNܾRc)Wmb6s+z8x\> ?y wlvUbJ==pv\;}XE"Pu@k)gxx&3t[ah?wz5Ȝ]cҖ|ټ dܥ Oyh 7><̢*k@֔vUFy]Ǫi框-؃AEs"":1k)~BВa<0پCSX/ * (mq-sHm[6!--<'F!bg]tFbm) 琨2rdы5 gW@S,Iipϊg hl%jtmd6p%Ln[>A[%oѦz׌Syz1?ߏLOx\y>M LTx+N6[C?2xy6ȯ }Cx!'MJ=fQX@rk[R>5dW.?H?j툏WVNiA7 ymOu|r&@.ib{ّ9!vV"M#p ]WGC :/Y;uf^䄟6RAD<0Men&%EB!J~Zy|:&8> / YZ^"EA`eViӢ!%w$rضCv}ƾB}r R?PF '߱aRZiJN.iEޛ,Sz7Y般@wڴXOՈq$~ݽd+ QZeMҌde83Aޘ^}`EĦ8L#]>DR’6L\z;JK`oVuEzhՓHۗe{VVfoષ%I\j.T4[in@tZÈmH @~Cg8t^VEbۀ4,uAݨIQ-6޺4/}*$󻳴ʕF=AK<\ O Qa,_-æQ/1eyo*Ս/9s*u \+YùigԬaq9P\@։őC][k: D$ac-Ev3wYg7ly mCW&^L1&8ƛTsx7LY \!8m8"ūnKuu^ RN(\ 7Bdw#W &_Y׎udȾ`R /@q2i{Qs[M „eƶ*Џyӊ3@P?N`*"kfůo} G}49kĴcԽMjҿdlY|i~!P#ul4{|r@ deU̻lO\Jq0[#唉LV}!~=[Jicه1~!pn}C4!-X4s PizY!襅 Zc(%LxnsnLK2x8玳*> Iw"1:G7A.DXZH S"Eo$s>\.:|x(_r5w~ZmC*L^"VL㊞kS+ +"N{o{Cqqm!>8cXxRfU '[3& I@enG1FHEE aЁ{,y# ުV2MT 7=M3|T[8_>@S?Z`; . qm?ME5d}bα]֨1Ȧn~Y q)c3IuyH?u'ә%X m%cBxQLLJ<9yM$v.Oʔ5 i:D{խ$ &M7VĠj3̧!MB}C} 3>d1/C\~"K}8;*UF쑯UV1hcMV>usL:2ۅbg:UB-+igF/Y#>grPLL(J&J78%0x7yhS q"NE`[NU4>aҘ5x?Ƅ<1DDv f[Lkc?4>CןC-1n F6c2|Dʛ0q츃Ch-x%+yXkaghBה٦>Ğm ?7X\u[ WBuk9tb}KluE#rjY2vDamRcf׏ eՅ$0rqk[eXr;V:ju WJFa\g\ޠ~SxΘ H5(w IQogɝ;o܎CK/XSI҉92<$ۺ3՛řRi{%E! m0gֱؿH^! X}D?VE֦m^c aJ(R΋aG*BsE:} kq1m;]X 0+qHPT$à!gܐ/DBJuWLUQ"b@(a~iϏq"A#XuxbjB: sAʷuV#5ACs&f 5Q.3GE+E@weeT.dMN`<)*aΎQW<{>3A2wOE9W8G&N/_9rjs`R1C͸vZց.橓bvU ,.$ɀ.5qقSyld1BI^C˛Rzq8-)HgC@&k1RZNk3/܈-w,ycÁO"#6zhkT9~OnkZ*~E }U) +Rh-V[C!ᅣϿ~>E`)]NMF|<'0gCNEVq""~g6G(q  ">\]5L>~\+ JUJł2f~q$lֺ- eoEV#E!T i| 5):*Wb`եi'|v/YI[:h'w=ϙПo^π{^J@xPbZ$gx JD:'MCCW]q1|ϫc+#h닦xٽEu(;_۷$83՘'~(=@{aJULixNΆDca9GNԫkRLaB /|VeꇔgU%<"ł.q:\?ېG_\uȽ97Fڼ=,y!wyԃh=-}F<{ 2K:VHLߚoul@ m>Fcoteјo !cbZD '/|-~T%ʄ1(xc8J+/(0&m4^՜//fn>ebĽ#я( :$gVWNB c-g&2q.tj`;s _MXT zjjdoI`,ht{7F KLJϘBS#Nƍ 5B RH^d2c0Ҥۅ}Q!{ɨ\=wOώ5΁AZ2moǑG7C ݃mqefkaūr7{Be}H O5: -WGYkeMAE2rqtkOF\(X%Œ-0>jEa[& 7 ,5#$9e">A4=UG_`}]pg2b"j`gԴQ*uh$;=ܫz3GPn6iS.կΠ6??t8dLF菶6POʳ͕5f'(=;kGaE{X:bd+ c? [ "23DHe[cWzWlճxSbwEsn\wCnU5ia{赂u;Qd ߃3#nZƬ=1AYPbp|5>^^r%G٧YTC#79}α4j/sco/š5X_PJaoJ)3|VLeCy O[}ێ%,f ^B0Y?1 /\HYT:˕b|DYXt9Ľ6Lk1Ruo-48U=;}U;-],PʲBy23ŨȦtY _=7/"Օ :ی,]Kpp)A5Z *֩ 1 :#FM t=JI0Bb@/Ǘ9}NX,ڜqÀpEdou_B ?GsB&*c.j=@:nrM^YZT)h)Qw@l Npnd̖Ǻv5 j;<' 5 +mL~)zEQm.{zp=!Z=~aAaI-ޔrY6(.~~elU 6x&Rs9>)Og!s*6*H:D>>|uA}3Ek7>=?@IGAµC!= EPW浥8q'Mzm AcWTfp a8[e ܍+(6]J^lĪ;@WwsAgˋSٍ//ޮsw'#?yGB{)̮F*Ydȍ9iMjK>1'UCjrmIiȻ E_F-&?xQ͘G‘bfVUAUVv>59ET'&w-P_d5R윇$!fxy>WmxZuXW3n+fr"FVٴ-!o3Ayv1~b#f.ɪx`WX}yB^-5o*%Fz.`nU|f8og"`B[#Qܡ8SJskf˧H{p/۔o" qE1@:t8sy(AeszI y":_>RRԙەrmQk_5F?uIPB2Cjh _sQ^1,GyeUP=~APXp/x)͝nhQ&|Sk݅_iU KNHqyM9p>Έ,=40lT k0&U9ltDT3kߺd؃Tü<"'X9L%&@p+[_X@8A&l7|<<R^b>h[Ü4vis ,>i,jnZ n'jbD *޽.T0(+w@&z+D\W5qix='m/ܼ(^{݁5W8cIVqFw e:̔=MND8F:/\ jiaB>|#\Ba@H']`v}9ړv:SK.̲eK3!ĸRUyb\61k" ; )Y_Ú$zb"^[}sP'Ikvlad9X06yar  ׮ڕ`1!z#?-"4$+U ~8jhD2;wb՘8Й bm2$ {T]1r^˥g(o:Ij܊Ee,r BOޭs>eTI\D1<25l+y*!%3ܑgL,mĘd*29 ɛtIgdȢ`-p} C[î\o坑pxd`O2 A;>ȖTcoжb G=ãDY5aZx68K)ljGh`JK:|´x \p9%-G|Z-c(jձܣ%ڎZ4;'ɫ9FO=3W}0rNFВBc}ȜD9_auռ oRYÞGzt'Y:f`#/Py٢Q"nf#=OӪaNk~Kvh<@,{l| P^߃TX xqbQmr=yKIHv5HĄsC-KF{ \%/kc2 aڝK,o@׺ @9rɁ͔ՈyW>q}b?y4E+2^m^4}B bح> U~IZo `:$q )5d{(Qrפ5nw0\6kúLt":Q2dcxG/јp|uSҌ0Ķ䬠[w{YYkrF⦥M1[ҭ M}kG^. .Tiy mH%ң'-uhЗP"rcRБK`|l^[ 0W1Pfcd_Ծ6Md-U)a"Kl##>su9|WD)m R(eFǰmc9rs4o ؝,<(@:(2TauO}XOQev//&PݖFh]w5GF+uQUҀ9Ӯ66FH d)㫩iN a6aGiwܝ!? '| Nbfv=-r591ѯh 3&l(_!$184w,R+j1I4~k`2 Qbt9AOX"Aa8L/ {FuKԖk<Y}4` ZdZz,KPf(=qWҔpB)13hɩT5qF3m{֓lmdj-ZZ0T]E/]W;wx4sm C^ 3Nbpal %2}N-#j7Ua.L\}<R]P 5 Kw#~`xH:MUD'qȏLƤ =|Ŧ/BQ4/{dA쌰*]fQxWK]Y=w<٥@-p;oܛW0);VPX,uY »`RnN Br`4r?CBgcoVӠNSUD֔gz8wXf3Y=5x 9-|7@ݔܦ Dq,B{ q,>!Z@%.` 0 ؀L쓥<}t54Eئt*o|ì/üUA݃ZEτ8I}Ϊ91CnIS"l ұK8fDUq]-@<~H.Ř+XE2tk%%}l{5Sv>6lQי|.Bd~cT'sm2;!QԑMzԡ.[DEg Um`dڙϧk1`wݎ9?X*6*L䷉t?_0å *w\ˠ1<͗0_/L_J_sTd.,A7FYN~ەC[Yڎ>ZK%/+\Szl'^q5";ח{'~\y+>ųUk~^ {D%elb G%R^~qvz&S*_>)gt/(d+i?lLB{A V/\u:. WcYtWn'vC) a¤d#%a>̝gq5tڢ}EI 6u87,\Qј |e' ;Ej ŁA?ˬ͏B;~tH\:B&Ý}MY~NT | {n/fЊT[ GѤ~DC"=6M(MڋgʽF$sZO ͜L~^$YSfFڊ(U"PҮ r3`caiLH xbIW }Gpp80w7EݏKj>M>OWa_Kũ1Pl8TR4#$t1X;נ#  Ϯdw7&4MNםJ'4~K0.̤3m^`[]*J_5$$/n{ ]Pvd[cry݇hP.3|P$JE,GP1) 踹"Tbc7 yJOY[Æy4gS&2b?ј1v D=i{>2K#7bxQϮ%sS V` z/!V}jfhy[Y9/ -;o aK:Z,la5w !Q^e>!y0%IR!mD:Q:= t 5gGdcf2x7;)u>Wݒ(Cu{ݢ_eBZgfQw1(-Dv]s.W{wY"b`|W CdWW!?^?Q1>6sq+chy{i7А }FE>pH:RWgQV_j0S:z#<M,>< Ȥe8eφ#u5x(]r#xLh[R8_Ք$u`wQLɯ!ۭܞefCK%PUtP!XCڂ ZARWg ?Q]Yij=9e4ڶ:ʼ8m8 z-k9ׯXVy3ҹ n 4u8,|sZDv=q'9@:Bfv{ D8C }^刐%g/fZwZݚF7兴KYc`#KG$E:dyE|_$,?\Wmmnʽ'K$ϦKb,"\1H`$439 W}a% JŃ59Ց1/W@x[?q g¨! fNo?K0IJCg]RAm1GݼUcѷw]pgnm[9 4v`Ĥv_%bulK 'l֔Ą[.2`;F +Cjh3Ͽ [~)uO=_LǕEC`Pζza#xFC$nf\:@Z0{z9kgA!4Im:YW{!\Hdɡ:<>>94[eU"ƅbM5Xv5λe@A8H[ ]%JbBD=6K$#vKaP`cYDFQiQ٫\D_hc \ga_7Z{T D1rGL5ĕpkG>N%@ Me;z;{xmJ]ʇͦ>mv#xsQuOA 8{e#l~‡JL7"Q%eݮ~HuoAӂ:_pk4xL}I!0Ʃ†EhKvfR(Hܒ8lYQ 9GGy0썜.U*m:@JNx?~E1*Q!T$k;Z͉`A˄ĕ@^Nʧ`:"ñu~^cL{l=9~&+[CL=cIcTKQ_m0b gC*Jy$n΍hRUؗh$ȠbDE1oDU^*Z-s-H4U)X%#tkO.YGƺ?r YO}(!V*Aό/; :0c7W1ȉ.^v ڻ6F-R=|%:FȅH54pt \]CGߺ?N_t1Vu;1ϛ I(Zwr=dsDZ2E- 4/-L=%nf/a[4eaQlP?p@'O,yȎ2Uv(~cl/trGe%$<B$+95I&D[JN0$4GiJ얊s:0*OֵQ8&_Oj1l:2Ԍe.yR\<ޮ+ !g L3ΈaE{ůb#Jq GEoRxp>W~kX!Đr3~܂!Oȅ۲oY[ )y Q}0P6fV%ab'u+ΓS] {N_D_2[%QPGj~12 %WzYOk5߶3f2Z^^=m„JlqI\L󤪇oX[uܱaF=Htq= el{2u&L-Z,q!X8 0 ,z3Cy5 y}ΠIbm $_: $ uԚLm0,o cn@7 k cuM F"arj u18錣lc:q('4$Jkx(iY45^흏cchl?[qq17w(Ono'2Yf۪km40tN&BcCܬM3"_dv=a Q滇=L;{}򮻇\m<-4BkX*o&?w nrL T{}B!!Q2*'2.]%ȺzG/j~jq!_wlC}jP)ti+Orp‰LChms:Tnc!.`2i9CK|ܳe?HWv!;4L[WH-q썒.d  $䍗6&~#'XlDݸ3[وy!FOAr{V톃 nCdպjOGנbo2 ׽sNtDckİASb|ɱ@֞!3`wN;jwex:tnʸ)f8NvA"1&v+ӟ7eg)(sq|rFۚ+Q]e-G89 &; d*eo8CDXl*^aŸ xNi:2R/ELdx^%ZRtTs5Y])e.eV86 +$Sgk,NfHW5^ -RfG94Pz[US={+[t"&S=zEҏ:%0 |K yLkAmSW D&if\ tҠP.h^2p2V qYt|>s"z_8`*wX*H췼diap)P/n8DrxюR+Df9>1Ayl$Iܚfn2%!yE a(.)9ƅSWua)GlBmWC9s=-7 M^.5Zր Re^yTwmtk7$K*X]i<@6hޒzg_ ]c=_tє *k@Η(x&mD6%MRQw7}c ok~dƸB ` mMO}a GQ3mDp-*y?Z:N>,-VjwZP)"dLVjz)&~[pSJ;߻M1j dg b*C8τ# (U]R+`ֶB33[f`ĝYY7'AB )wQ8 *V ㏌ W aAqo=(Eu*idJ ]K>w"l} P//!(k".C V! UђyKؒ-+fe"36%Jt-^*<ӲN~~Z ;5  цr}RpU]㋗fƔ::P}*s>6{bqz Q6Âd }l+^n͢ j]us_0pȇBpM<2 n*|qwɓJdͼcws 'Ae 34 O x;c̍ 2.zԞakC '͗~::%ݕR5}^5(h[ךD֢6?,3}Rf{S;UO],Z{/w+J*NSjE@o("H.$cBE_'bz+ॖ2Pu Ð|,?"eX!yoj%fKnOE R(A1vh%kmv\m]䑹d@A= V5  .Jٖw1=8sqF,J:g] Aj8{F$!:L9jwM =쇸lf3ZVG~jꆦbO!a =G#G᤟4Ra>ktP;.7 M>e]$? :d3tl3W;[oX/v76u490Έ&-uR֫\#ƺl점PlWVRoFTҦqwNFZ3! 9|{V(n4z*-˲,vrQQI>`Br$9r>i ˈ~!ܽOTde2)Sao!pCU<?ik-3F ~o Ą*=Slkz I Cg==a!kT^r(t7zӅ"x"@Ḟ_4ΊL72W DHͯcVX5$A^˦ ,iG%{̳g8&j}'G <;mz"n^> ֍ڋ_Z${A8yuX^\2ߢisް蔣Px4^*ȟ[ybc`F_?38 C3^d$Ds?J.[~3>$FƏ;](+K?# r!PSYKTx %TAA$$ul)IG <ҩB=i>{uZ Lo/$~'.?belL6d>EyqadC?%xKGpJ).{lMΎSYF$)F2V( U+Kw_f.)eŵs:7D-:Hѫa x, W@ <߮,v%x7 / ۬н^S=`<{'$?H8qH)[^KnsԵj ) Y śmV $? oR3Ë%,yc!dºĨ*cvhqXn|]Ez63L5 Vr,X4-mu̠5:Sjw: 0!?D tPO/ wUikD8'ʰy*%"?U4:~Z险O z692N<|YДy_6YtP)^\c5uZpD1P\׈Ayus)L\bڻe%qAs֯ܬEXlRfQp1]YʋD~s JhU<`g_ȒeogA`f#o{h/;P/2Kwb ;l<v'^.F. MkΆP$P̞j -gP#s#!dUk= +b~CAZğiS,ZܛuF0Қhx2E7Hrum$+?|!=og' OkgP dĉ0AS=4XS}I4r2\*pW絼EB I/MRDɼOTmWlC1)F/2MNܒձGi<;1m1 [ց ICL.~'H!"q1JR:j>ʜ }DT#9\klD??CH9t*1 ktT!u5VcJ_bvít_07_(qgPZb[O"h ξ=%ݤ:" XR^?#_bQ-K|ZI6Ht^$ٰtr~HME!Al9NvV4\=d@Cnպ|]aؿzLgȜ 0!YwSAj}"AI+<~<,+cBATq5BN?&~7r#~f-erwXߐNp ^ɨ,M%j#84BL7g_%v~,Π '&=MNbH&^[:ۼm_0@n)茘:tYӰfAftRM`/ )ag 8%^~Wo0!aQ G$W]vBk0pN>o̺t:[QG]Jt6"HǰKx[ w1qÄ.;Q;Rc**%B kSkDb_$9m`/ί, (W5D8(jĻ  QB-E~ ZѬV(7iD1@ dnzh\;{TTa]_/#i h]5VIh\N=YI~BS|[@v(8CdOJzK)!m^p Ŷg1V_ÑS5Ŏ&'P)T :4<*Gm;Eb^WP-o !-NZZ*gtbP\jbDgg={CfܪR _d~IAD/ţBtXf3@@dZ<qDinGG AX.| 2f / +cg5K@[ #]׸`G5S W`V P)`b.'l6mP2ņ;NyOF}=@]EdF_xկ>8h5Ww#Y|c%!̍B5qyW;w -DOOQ1đ)ǟK<>`cuKܭmd1 gލqɖU!992ލEť331!'n^ qrJcz3n8ɜ-8n8u3-(jw+{̸V[,7T0ײҒO P6>k! &';^6E8t>'Yp^=𳬻֓ܿJ6HFGas0zjq{t*\\=DdIXG;}S1ƫyJi=XUm6v 0jfe83ee E=C-ݐsK}r yu%6>.& c/auYT.@N-?p'`er)-VFqk8ܹF&ҋK6Я' Jۯ{":l&`1yΌ7j8"J˒_h}t?:uykUZA]Hԧ#h&,]lRFI-;I'vM?y֧i^5Nͪ%)iJ OPCd2^ԨdDt/}3,X8ݸCV䰞Z+%x5խ!/ϴjSӼ_!࢏WeZU=\Qhy)#Y}dTqv9Wu 4nf>}:S/0OJpVgq>P*΢͡F񊘨\nGWf!qU-P#)y+<:}655RҌHLe8h7k,⽞C)y!Cy[$q%yzoaNE4g8LG>G`_uE*(:[Pv4:sc?e= 7Pt&ȘRDq^8;RQ&җ2o(^۶ZPBn$\8=V &²yb2Q́H%C:m:b8Aگ/FDqfg,$A ^悻 xqS*&r;V.}J &|ui\Io>J#~T)FƥgLk3ҨAM1lHwtJ>a"Qb0ӣ7'8f@O-K|^,Ψk(ݝ6L [wӼZI5g@Jg`U?}p>*@b BkuS":@lt)uhy:65%o4QBy:}|xY($k H⦫1K\z+vd ZNEp!͈fͽeػQI7Ui, ݮ z5vZ%]j̾b`IGB@ `%[t6jnTGvbz8QCl&|0ǑUAX9H]#7O ^Dh_ ZBzKxuєxg+ӏu>ƭlh)®3-ѫp6-9)HNmߦ,^k,)s|_N_qRz ǜmj(1bt; BYLNy4CVKjsJH%B@OOkIҪd[ߓ*$nNa2rHla^_sU7RDHIA8t[n(3yl'v 3${no[=߶E<w(}T\{/u.1a<Ct봲o }n3 yvc4* f1!TyoYsd먓~$>u^r ݎ8u,5'H91A\*IVNc6ƌI 7+:,d@[a!v /El>Ǔd}FʼnWճ-^U,br>}Dj3h,ob1{"p1h>JMda&&Sh+?bh9M@xͰY1^}Hj_^YG>v1ƒưcS=uل^]`i ;syksUkXt `~;\%TAde=08nQeVУ53?QC4(Oyt^SKPZ"/Gfh3ZM5CL.3㫓c; O: `BC%Q3.iܻRhE@Ҙyr6nE;u`PJ([V}ާj?P#<\R_:c?&7yq(EN| N_`2N-L=&CHT R~T\No+MsO4H}> "E)quUsa%K-_Q#ky1 biF qdzM$t6!|[C&1{d/騫Amu"S>H~%iT)ZL ?),Sq]96t-;ue0l\o%a |-]`3^lW"oNpd1A`^jJE%RA" %?W醳9zgx55ryJ%cb+x)EQ.r!!fF<rהﭯMd89-eg^Ы֚9R ,:g ~Oik7)o0ULS["xwb.?e R*uW>S7Уy^b٦n”=d_v&˜F&-aժVw -HlF(J-}13[lqEd|QO)8\+9)m1gmyR!ܳS黬kPG.2y=MJMދ~GfϲQFk_WW:/=Xѝ~nx ^{yE+﷏gMz]^#Pڊ9擆T%Xkѕ!ʖb_%)>}toɇ/SE{ߎ`y(8˳"5 ؁&:&NQ0ȋI;Y6751o%Kf ˧}X^5TUQ|c941 1wzg<#)Tw.@>ϭ:EdH.JWI47W+S7YKz.rOU8O2̑ep"I\a_z@+#J3TAqYQlU,8$+x}E }c\YO>=-J7!d<Ӟo?<– G̨/ xZqNDbAѦwYk#њ3$2!"gn; 0bj_(f6sj5Y$Q14s|v▍ 9M31ydzc9wXj={q_y1/g9i`'R>XC.ԥ&<է<ƻ\ Iśߤ̊bBw( >h&3{dعqzFuh/3eTwuʠȧh#qd ̛ M"O tA2VTdQL]b)@~ s4?6!b>D([륗Shde74SPh}c ggOiE0 gb.@ .5vLͺpK8ԅDG1e8F F|uբb-(棘S%W]Nn{h2EVIMc,MO15JYPt`Q>5&%~)bԿ9_9axYtp"!wwUԞFIowg)@"Il6c4Bmu|t6@Λssf|IZw: M 3_QiJ6H!"FJCZލvQ:h89*9VIC =nOb>\z3x=_[qm+=bYoctE/k:.==&sg`fnbD-KXPwDJB1R؇wt E;:|w {^kN61C,S; XRkӧLs}܊2vt;"G$}B" u 0XQ8?вO*lE¯0~O rZ$I ˶)eȿ#n]pa^bѮ+ZkIoU9.Β=D,x##Gة`6a;阩q=;T:wv+x &!Wj%OD!߸'_~W:V+☷gWWa>-L9P2쩨;G]uڳ=wc()\ zd:~LVtؓrI13 u'2:4 FXc6B!öֈ;dJOR|$GT$@#6kx^SF=(eqr|޽ S-0k|Y29&2bS0XjO!x|3L)3Zj⋑x^HڷྮMg Wc͎O&?\ `W 3!Ϸm,Ѣ_5-9b+ݞ1mmVe ̞Ρ~o10ʬI=C]#$v{QYΗM1[2*:~24j`rm …O5ˌ7]HNp񅑢fO!潘OFsI&H${KSn&VZzN ҖGSSeY,F(p8FpǶ}A̻Gc`u l(^f{7uf*HйznA|>R{} q&oJDWXgY;6t h:_ !%XTAM'1e;g}%Կی d^gh?6M?p_B=, yd@9dJ^h0dӒeS€E(LPgu ",i;;NFLl^8E,!mAuб{AUi4f<;j6k1=k6!>Ks1 3 [?h? y22j)Fh{K'T`\YЎe'l_*EVJ2dJ^06Uldʰb:dskؙaT-蕂2=2<ELW;ee;}m-c8gq5y1nr[OpFO7eqhڙG={SrR&4c"VF_@ti Y=#gPv(U=CyV1: K J$ y)=VZ~ +m< k|37iTZ[ safZ4mzL< JklaH!7q#V|mInJp@28⦻m'ڎ{gQIv(5v$Ob7l({0ٓfc˩z,CEPC0 2T\oP*?ُEPZsC|1",'RnԹؤ{Rzt~GHtۢ,h-A7-+ Ҙd¬cZXK^,>g2lfpdJ6iDˇpo֗ qoB-jB?zUnO#G~)Y,2)4m/xʤ.{NO\,҃XνZ^;&FQ=Ko!7x8T9+GQѾ}3,Qm~}zQ;%g=2NfpZA||;O /B|J!.}k<3Kϱ!APOр?̞!TSt+{\N |P@Re{O'۶ }4_ʁɎ`a SZfT칆5Jt^Z"]ڷ3n6ɼr~ MR>>RO* ;SzE8tK{6!K2/A Nd,B^jBvI) h,3LU7--+RPuBr 6q]oz$y:4BU+A+\(@ ֭Kg2Ð&pܿ(0'<#QXxPgl?ӮYA7h1GN54阪słGK,S ;ɴOG̛ 3`J_Sawq,Dςg_ڎ8cPTg=X᮲!}>FvH{k$_z5Q3>xH/A%&7CC\[(?jtRW6$DV2R'O:*A8W]aBJRxmm hz/ΤPnWT8)͙]īc :SU݈޸딽Xw(=p͕GDŲkc)y7_vA%V "YX y-#jKmъTb$@TKBNS;+!d.O/wBs2C[G=|f6mnKZBvκ\*[#OC3C8؈ 6<k`xĢ(kFӽ4*eol'hz۹'Jw*ڨ]2hY{])jbkf*9lZAk`Tf;ׯ޼XiJ u5+ŵ ezf WEI>1{oGJ\npԡd@u#CڎS6896NJICޫK`t3YUGXF5%2PsUz:{ ,AMbh9 Q6sAFRPGo|WO/uԥQzZT̲>]+ϯP,]HYxb3i7.S8HRY&;fRl )ʐ˒Q@F\6i9^VkH˨!Q=FɓMdJdz"@_gQmL"tQ{Ex7!lu4І{b+jÄUnNow^>D$Mo0cTL9I+\=֯,doPeKJ\z_=M;ٕߺ-ztm):V}C:R *"g:vG[EC|BW*:ϋ+N솕'e+N v)Z/!2arc kb4Q+.yDr!3"# =U 5fF̴[̨cD!?͗voeyޥWW!85\g`wKѬ}Vӆ++ D\$]$ \=uCJȑqd᧢)Ms/!)$rc ݘ~ϰc6FzN"`;r]rnTYL(/3mO݇4cXw,DW(b\?8(#!Xc{Cʴu 6j)hb8d=qT2ee 挳@s4^"ʣ"-mDo:pE~7N ."Mg*CxHU`ti$镗̴.Eou>gg׌Knkn{3]wRD+IJc©RJ DKθ0.&=[*Hq+p zAЏɸ0 kWdMI]R0es@٣vBG4d@s CxE2P<;-MD6ԟ ΛgwJ*E誃Y]@rH_P {&\(gE\ F~$59Yx&!£z+Qӭ\67mnrūsFSU5,`7p,_?cru#\ofh>!(a#;X!w2rKDB"͚)+8m".(BX_,o azz$) ۭ=КrĜ)ZdYpk4|O4ΥMaìÏp5C·?=PCyY?Eo_T,S}_frhcFǪ6wbTw4h_ﯷ\m%E%̨$tNv$LQv`+j^OdXɘw|ި@5f[2̚XNyHrJ+>?TetR'!͋.{&}6h3BIVHQYᆺB#l1״ mYŤ뜆WM%%p'OLb^:[×meg! \YHuw`6$ 92Tݑv@ꆒ M!(qtp"0vBO@IESZFjL e;9nŌŪ27\<{/mJx0 /Qm;DRwA5WĜ ZB$͢ 4;"m`Vn 6WP^nykѲFY&ayL2hɥi9.L_0^ ý`~ײFQU;jvPsTjr Rnc=f3FbR :f R"L(\F420,R^C2J.p:% hg8Em?ڸ5"[>f:]7w~ 姙$ic'`~Sy/Uq܌әʼI Σ{WeB{{mi;VA %p'Q(b390(d«YE) @˅;(Hz iإs ]+%X`R_Zr~(z(@{M u{؉4]yκ熔݁ ^38(\6d0%j^,"Μ-$͸6h)PvI È!Z1TBVH8"ܐG,">Օ'\FQ[ Sʟz6:XI'p7G}`|٤b'^[3,]pkn]A\ }HA+cL$?s ޿و*՞-x b1X6[ cr1/ys9g㿂1EJmI^@n/Y5B ZDJ#G_tqǔ=8=*OU f]ڎd Ԅ%rxˏ,׿=yJ|P8ڌHJ9 ŒZ Xڻ$5vrMf*~[|/+j1faY-1ÖDTawREkH-|={ΩAA4䎗F´df!iedq}By7vk^kKYi;m\NS<;n+$x.;SHp\YyR[y0uP1ll,"qτNlݟ_}>PԄjs7ɉs_QK@sk}}! j#d4&RE< lϬF:)Vo"!~ V[J p[Ôis|ffI}7|B}LNfYAdY xWt^ojn/6nUWr0Eb ?ב حXG&MIV,/| (RbWL-Ald?}(M 4]?7>s̲O\ϸ\b`?}rwD$w~C$D7,\$.qdw-5uo/ས*9Y#iwE3l?j{F%xo&:Cѓ\iW <ѨLu].%ܪ|g&uZb,ݮ~U]ք?`q9˼Y<0?-D';pCrny漻EBk k-+#{V)ޫ/% CJ GZxoY`HVs:Ē:/qu{9s{p?]=;":#XDgf'ND}Mj?=)ceWuq%#.*DV]U8;rؿ(B s*돓UX4|'W{2[ d*CU Ikd$n̘g͂HB.Tkc'Y֠sԯDm9 h.f'c`ԱM% ұ0Q(Qћ@)LpI67kT? S6|gja8wn=Xd9M/,njMry2C:Jރ>JzD8 hkmbpfnoQ%-Js6(Y3r9ǿdm..n>sSsMo^Dmc/i^Ȅ̀5^q"]F:ѵZ`E4&EYmRDG)8uJJ&^L5Hz-qDNd!'"6-y{wK6]tHDzdljm$ˢQFl;EGr](^{n;maܯ6%egjK#a'>kX\hv?f3V`̗oGzr΄9}RHu+a L`M- 'W<kM3d I~qU;հH]D-" p,}Н~-FdnO;u7Nܑ޺twRM'YG/۳ ;Ziv1j8R+ xQ9b*n~CQ\ؾPQǚY̖-*ώ]}ɒn bBzgssN CO*I™KT(6x 6!)!Rʰ"Z>$uItt9L?GKwT@@e8AK &KuϿ1i8KYiK1Lt!t<P!0_f׳'QEVx}>.{yѩ0EL혝 LK<[HK`sDZdSWvzF+jLk"TVx{o՞ +p˼`eQB++EBzO#?"XOOscz,pI1.9"s(Y~ZaCiܧ?xI{廷 $'e|;X|K,5<͢Y2NIxhza1^9a0UHPCtKCԷG׃8<|RYpKJܲI >=yze[ ^2=5d!$0S7p1p:¥Chm&wN%(c:EaX JԾPs셮4t2eߠ͋ ^l 1cOJE9_IU?: Q6+'mk%u(/yIT#i趕Xz/ O6KIK-c~)$ɨ)rzҿ95tNJF0.;AvX7e Nl^=1S^YdZ\ kf(5jz2:SdMD -Bp,!֏޾,Ef6Qi)~/ fx3i޻L:!2QEBd# 6imhS `'63,(yOе^ɓ:j$EηmZO]M[Y %d9@vH0[ffP\mdw'}D;틈{-缰 Ϫ6oYe%щ䈻xUi̋8F"2Kc laKNK,{{p⟐:E]6;*<_$P.cPuWބPawmYvdŕS8(SӲwΤ 4k_7bP]9dJ~ Z apiY6@||FڍR>A= DQ1׮-|w>2Xda(`# 8=ޓcA8~nT 3Ԁe,7 SUGbk&XMsh2 58ft~j?sLVԟ*Kҫ.| ~5͒Ox}h ™}6lR{sqs[rp>@RZ[!|K_Cey\C^qk"YXPbOI:.z3бo z߇D cZ2j_f=՝Ɇy*ؽWzʁxD@T}biLjd7cm ٽtwWdcWjrWtF.$|9< TϤ$wddE \-+z/WPGև\-N!(X&] “N!YނŝBXC*3M/F fYD^9D=H$nq!6]-YG_moLZ $_hO'?c\׈*!pĘP llu@K\aڄG؝`WSÍݱҫ.!F W My[N1!&F:w0#l{ݫjtFײ0wJMu^ۘMӛPh9} KXB| w> $&} \ti :Y+,c/r+ 3"OtydZr"Έ`_p;vv3G<0R3k:0M&J{\)/,U.t`FI]51O@>2P p)^;2Ebl WGU Vr{!ԯLk 1v辐Q`aiҴAr]T22nF K"g_y?wHdT?AwbX?a# e IZX`M Ȓ.K~(n_)lAD|'{ Fa&F\֖R^5n⿇Ui;v<U )D?NJ'prZ:[nI}*a iuxtSJ Ͻ.6^ gd.wBcSΒ"ŐギK{-I2k\X{{e!L?+MٿAn;8KrDS^C,u2!ﱿ$b?0':\H]DݨVe0r=mǧ&}ʪַ^Nx=;YdejP[Yа`ΣGטZ)`"$w^q䁥-F,H׀ơqr=a>rTRO`vYha iԃipZ]$GQ[Gwuj*N nl]~qjL֌ 2/uWs%#4KE[Ү #;:h`#@#h8 /UEzT9"wb# dzf.|R*;9&,gnmuzR%ykV^qRPe4ϯ؟q]$.;- b8'&tDl5Z)b럓U E="o̙ Lhf*&՝`|/ X.jbn'/I#8DjZ͑B ݴ`Yۇ5 yO0c(6p5ٿ~bE@iR29ZY{R[l C*$~꒺K¶=y.hB7Hk;BU00WԢ8gt'GQ@~ zOߊVDd(nBۥRIO*fpPT|~RqVk"2 f@$"9Z?zr<{&MD8.Y%FCGPh}]^HeR٥kWڰ5q+cPx5~ؽÇuSlix8i{["m%Q׳XV۴vz= m,~ F'6엎2RDa!/'kF? 4/U&R KYsV1Anr FJ5f$kVRQ7Q=^1!7&نEXJ|7VIM6A9g;mFSvEߺiwMVHY{ x8Lija>xy!S Ha>W>KeͶJ,)( W3S'ouRLwMdxP1l,(Hn|I1!c[#W2.ΜP<3 !#3*VJJګr[٦]ESY5ߊ Og CYf*ݱK;-X9o8^$?Oi ei'dCdBb-r+ gU+z/z)#S 004Je#>(?oZpP Y?FKw%>+-BJБH~eaחy0"hW%bhJ76_u9bH61b%S(]YI#c69Ò<.?lI Mwd- ҝ6@j6tgO3X$hQNGIJA+ckYD)Ṁ[䠄9.6)hONdX!83IU(t>|q|Y@:RцT!j"zxLGqlɝa|0*ͭ?,<]kʮTWz\yǡzt$v*ʜqqPm'QF+# jZO֔"[6zn 2^Ov?)!b?;ې^? S==k~pp~ :Dpi4J|Z7-іaߤj iԢ%󰵻 mS&iK 2{u#f~X' ,5W3Ki]t0Ȏ_nK]?Q;#6!Ru:zq R*T{ҬIV ͗i[CH6NOS qBwfå|Ş&> ;Ra HV6Yꖣ!| eH&DJcqhkO9#/mtX@4^5#PWm3)yCCt5T"KriA¢%cuH9;݁G4(%qN7Rϧs8w>V )mX_!! ͪt[RZ $pD*$?ٿqqPf^Z~nr]݄@ uPį o="hHc-Z܋j(vŀ7}"ެ̵ӟd%BuӔ\Y7c5"n )j I|N@z},wy\+[E el^1?g;m@Joq /Αټ˗S)&4h`SMj HYԋN}A贞E1uE]h%*8_`V:ÍGDޞ/^'QeS7ߋt߆- h+٭U[4bWݩ߿ eY 3ӑj:Pi8Tqvxn8MAzC}'&]U s\9gDHQ`J Ow&OƨB`!tBF2+XA26C$'k_i]rCɢ|~ol ʗe R)He h?tД=tC3nv=K2bTNXL=\P h-8!(ÅMpogޖkIQA hS :g}&L3۔JD"%~ ժLnݗV)<1G0c4,p𴊇QE\ѥݧĐ~}x94j(4/'7$ D}JX4zjB_m@8W7ϳtHOri걭S&d1lB]QiݥPf@ Ϭ(?=r|oaXJ0&ƌ΃􋐉i ,;IL2]!p=K #: ^}%>XТC~Y4Ӫ{9pO342b=pZQ5wuv<=_R]2k1YCHġ=$d i", W;!t!_86<|1Id l4>;:(X.xD~)nhMu[n of-Sf'pe/K:p#]si%I-єQIA=DK.W٦]Uv$WՐz4kw557)=qr[ ZBLG@ 2[HPyCWFJ&1Ul!Ԉ 4,Y 0o9(Wt* 4i zDģ>WĤ74gy@VeuXYJ3| 0t] W`BPk%3<>8j0gѴL wd?oth}-H0jn V3j/sЦc_!>GJMJ mNb,S^:ڥc୰ܷ  ANLR&&\Y~jhց-,clkR(|tjբn(mt)CK^3ঘavmeK\$IeQϽJBC.GB{dǪip'`W҆D[뗎 *E*C,< 第9EUƞblŵ4dV#[ضGgdWR]Jz]͙ao~zqȞ#rrJ{5q9v0XfOʓ3և\XWc(I740z2WY^QĪJʰ,l[prj'C46WRU~tS)6S yo10ԲLMRLna' ״t ߣwN-@ of>]{h4t!0Ii4هzC\.2}>HӀ*xM5YW"nm=WfUr/ƕRed[5"t"wNJYm P,%K"bE LH*oC3)]DPMC]P6yF%f(tMYuRf7.h'З3 yC5Go=9xYyifw'ڎWv?ZȴVSD˦*fK=D('mTv\H$mD8"A< cLUMbF_Fڙ _`|􂱺X,`rBaiIۨpvlc2Fso^|/%_uruڎi'buPu9K.]HM$hy]2Tԏ=. WxhVZܢV}.vjaCjJS&jg.l džM <ǒW暴 λomp5S~:/xBHy(ɮ54N &ޯ(!D =VLFU%LIᶀ57#I𯼌IQd~ e8'N <a{Y˭ѬQ;&rƠ3-⤩SD6ʂ;o7U{ 7&VZ]pss29GRN kiF\=K *[XU9=}C&#B\_׹$5Dkv#B#ǽ2 /Tm̬|'{}ReԎUE".pf*qjM€X:|bf\DLwLJX;Eэ˔-[I>U*jezڑHGHxjDݒ?E[ 6\k vQ_`( We,`nx,D˂/ :}.bbCTˑoNL836}T~i P^D+2 >9G]y[6|[2~Q CPNSQe!:Pz?Hgf%LTH >ׄVRRQDFpg&?: aza/K<< k.U&KBʖ?9 Jƞg{@Zg$o*EocEzWC ?^ปQHň7X:3Yh\ТN&>y&_^r-m*3cqf}4e(?@ yo&_-@T|K -?U ѮcS;Ul?h)PzYx(&1 b^|Ah2>C#.-[;@ 0ގ%U$ ?F טNEW)xE"e4Lj7{&O#;2p'ŕ,Snأ&Z/H׾+k `T"kL.-T `e3 ]5c(~Ka$-umyV6~Vk)]8S7{KCmf9S7'a c jyȁk^9aLe]jGy%1<J4NU/ k;wɚV \pSp8WnMDQ4g飺(9"T$PY骚g{EW)Ņ´ڰ C|y3{hx:GD vM5WF'nkAu*~@ת?Dͮ8|X3[3>SȌ5lH"k~l*wSZ6w&ղ1 Nᷞ|?jQh i!֘O1<tj}$s AT:arfҝ7^ոA1Խ]\ͻɾ7[#17xSGͲ#>&1O7 Va9E*U$sT1#Ofk}O 0ƒVܣ_ g7B>Cb?@~k }aK7hս۬я֯[;r ~(~5;|Z`ү>H BIQxQ%*F ҳc=:y#u;Qľ:[je<8z"7\+AgnEs`|HYObu#ta,X/l"N=?>vM`ݎSu^-'"U7{ v/шy]HHD'lRK$#[0u@7<ݺ;-6y߹ANy;mkofXEoͨmv>v{ B) B8XȄ.L(>Q$`X>> %ju9pB0/'s\z۳J3[! L$ws~l.n-z^.={é.Mǰ)HDըo8t[;`1튀.*QBRpDKk\ts/ڪ'_ڏ|L_Yi)$WD}3v߰E&&-}:qwavgh y)KcmKK;^gSM6zاCF`QlIE)GYy!mi}܀=0Yma·i{[y@|}OYm{ x:Ly]7*MN~>La@:D%ljZT̄PN\+c]{fY$ l@)&+"**u_҆la,x^ܘ6OC_і\I0rU네{uI((xo]ؕ_|{:O 'zo.Gؕ$Ē9[$[nlG paySӊ2EHeyksﻘ$v;0u m"p:qmzACk뀓!Ǟ;ոS /rWrp3Y72DnQ3Uw:+r iN@BQ'(_yG(7zW<59>p8@ C`[+SvK3K)(OH*< XL G<=0gboEeaE24v`F>^b::=W l+۫I8Ȧћj݂δmZ}nSLbp@V,:O~.6@s%C+Ln~o 2a6 XQ=րLSY ߩ9'd2a-!ُgN>$5 =h\h|`,"MF>[lM1,ocC@F`ȝ(.[Ǝ)o$L E,&xidF"1-"ɿ61PuPDYƾF+1k$ѠCּ(Q>msAP6E8R~1K#3(tqr +05mS9şoZI\S/jʚۀ -pK=Ά;F3;KK)覉C|˔{~RdGW4zezlg`uեi?Iɩ o5DTM+ЈP#K"/C̼QOԸYi`Ixp>`OߊAbExQPnXZP[$,p;tHl]I@!)Kʷ۬* WNAYY{ȩgD|L#R+A;(7)dUN0V봕<u'-^`qיGA!Jή)C ݴӦ F%JgYu^I4U.(:+ Lzߋn(l%@허n9J>;&62~tl IOEIN0cb ?^yy,\é:v[R!pt] e@TFph4d)bق_CEgKǐ+Nkno4QqNvHa%ptnv Y,С*Dzd;n[b!zH&&wzא(s TIhPk7bqY,`$Wx2TH&EJ(! WQWqrPەᨪv. xáv(Rӡ =V 6tf_q.̐EXA+jIi.=Juo'yDog+C+>&Ab Zw?\Ct?mg)`Dۆɱx T:,v}i`l ʁg_}H DR\x\;hS074xk>*ʈBRv+d_#m:l5U K821R,yxH-+Dfnl]`Apgy7nJ%hP%-w m, &YՂ(if'<5$ fͽ0|t~=lsǩb,ONY3(%/VsWaOR8oYIPY aJ#:gt5J\(uHJb>̑[qzVGAU/B!L]C"s] _y~ -o1.0X UU׶ʀ^L߼`_phuE# P98N9&_r LAy1XB:l.؜dSg#2 `Д%'#7wI_N]-hpui ^΅ܘA 7qCQ-ILKJS@@ckّ&[uypEd?َYnT^2-zOUz*6t@c`fH49v> ߁nEѓHҶ K;< Ѧas.8دrތXp4)@=ie&6?&Й/TbBP_a<ڧ'*}VPi&2d|(^\z",ced!"d][~ׯpxib6&B\%#:$X#]v |#DZC3Ju5Iй&}/LT3n/Ụ%Kjǃ3I= Zn?܏S7*#tQ@.؜'+[Rm =RTHƄ%YJVe{7$RGG/eGNӣG,.!97HG[bOISmBߍ(H$ڦy )Lk1Ld/p&#_ T!gh Nj|/jyCD=HFY!@c?43iM>ywH?bԎBv-@5e2₁zq `(hɸC{e("wk#Ҵْ,l䒓?~9 * j)t㭾5aƁ D`nI0/6^}")7l'ңSCI qy?=dBoP˓nĐ3{>d5׾Ղ4-<0FShRV`ުj+ݚU#q jmvv@=8$_bQ\FlrY?UźS9ׯLk ZZ`MWZ"Tl탏\ZRl9>2 Lz),ZkQmSԺGcxXֶF[ 3h:hq6~P)T0/i1KJƍ^E6ư^ɥ*WY!lZ<}x"{_~JόQ҃:BHqH%ԕlbiǃOy]<6oXqVg7Fi5/{, x64ȍ0?F-v(e-GoL=Ը,3Zc=RӥǴ"dٽcLYݰe߃ Lۖ|];yщRuAs&- #5dϹ4encfϔRgN3<0L'n=S?Cq_9>g4IGى}K%YV_՚T߶7a`?d~ADHk[#ˀP*ZHpEYE匳(4⫬!QkCvZDB~+$+0Kg%_Fi|Н@?7q[3~kD)tkij'ûp@]cwYN7Wjhŋz|5o$ÈO:jwG5`1OvBQ!2Y.jAȧm0y,_ġTdmN퓱'X8~I嘸a䨁mlNPe#"SWDq &LhUk¬v6=ɈehuCB=\˓IYR8TTƊCY{%>+'|Pi0򭓄Q/UҬv~C'kE{^4#f-  6ih~I XҸB`NE4,S(U>%JP 2~~⎆.$Ӳ[v j[SGI 7 mtprL̐W>wq,_7qKgz7R?JAsEavʾx;8mZL\-2"o5лϒtweY= Zy,zSŴ3xp:Ξ>6cy8l{,碲xf=| Zhn " (ȸu@^M9:.i8$GṾn=AnꬬTkcHbiC7VY<["%^z ces>40mYXP;m}ƻ|Чi"}<]l3oa4~P m } :Dry dqo O օn;qB\rc }Pd(U%-i:kY}{$.AjV5vNJMq3`Xs)7lR/l Ɩ8hH:#2E]24K I|7L>c9vFLA"`ɦ5`lQޱ(e7d @B^c02Ϯng+]P%x ѭ'XkbY,^|-38Qh!δ_sEfcy&W,OC$84\7̐&486]Ⱥ,H7дmDR7\cC/˷W6-ןAi@#hk 6dPJ(źv(L&|0=y_K6sϳ斂'?91AUFzRrֈ[t %qDr)%r!A[zMAd-sF ? NIN~0} js5nT͍SA a%NcV,'*j,W;Ӓ6H>/~s@WV-!ˈDvܣk<0'2ODžۺ@H*0xs>歸1$Ii'{ `=o:Qq? J*8,F8IV=S!pB;44Kmhݜ8ˉ"4֔*qPp=j[>ZcMiE3@a[DH[(KS?JcKu\rŞ4qwHbNiE8Q#R1ÉkOs0yiV6I0#H*,j#km XBelvZ;z.<"kY$J[y$d% Ot TCy)Ʉ",j(Fyڊ/TyqܹzE{N4fԱ ZlaE TbB?R F9J0eO(VH0iD+0\MLF!ȫR z'L//"! #v Na$>|ɋo"[`]Œd|$6y(Ē`=UCvqT !` 8xZ܋>kˎyUa]+ueM cd1H')E?hk7g!ė%rL*ge5TJ(w06 cRW~;l/-_y)!tK8ƴda#:wJok}Gّ  3k="֠TPNK +A`euJI "Z+I ~D@u)UBci:Y;I>ȳIjRj"EF\zWAu>}Bw>v VZvB=Mze?jgEu#bKQ `p!̡`J|1sͣ84e>E֟c f]0&C_-b!۳X}vBkʪbhN( iAZHB$L^$h#d4;'} Ef ZP6&{z8ѹe\8!d 7!AXЊ qRF`&A`U-.$#+c5:&ptГY+T+d8sX;%1Z\rGM6GA2i+Q-[/q?6NKSA9N A;v̩r-I8恊@627lGO<4Q`˦?Oz8p_x|OK;z+9jp {X`:6 xK*z"28e S뫧d"?4:ʕPոr ƀ~ ȚzBb֮9uOmMScщ 7YG9ѐ2lM7eG f /Sk-: Vcd)qʄMSzV_B"lļUܜK({C'*(df0\sgh8;vbs^I<ե%pa\ͨ~۰+:D{ '7@s |Z[IQ&G:B=pOh O{0/v^7ߍsfv⼀ws?g^d/`:MHVrVpW'DqZ&%k_, 1~*&ڭh[;ߌUUp^\d#sT?f.&gX>i Y%'f]0!,#8-e\"ۆ Nɇ(47z0 Kt,eh0,֜0Guj@QH;%wZ++DnQz`& .C:-Ľ<g=xgw+=ŧZ%eR>.?p[0'sӽH:~3/?rϚՂqWߔldq Y-}Ge2IYzQ<{R{'O)l<MLVRE0ZpC]% w9<ag܀u{ɡ*C?siT:q_BbI5~0`ږ>_^J[ba%2!RhhĖĊJ衶Lt&Fu7&9Fk$c%(8ypy@EPkp$_/ICϔ뮢Q-Tk(1Țp'Jw9O; j6P1[Ev=}ߎnjOY{%S8LGBC\PQOx~j<X=߅Z;Y5GPJpOp0EiЮ!8M/;ZpSz@%6ÏZwI6BKt Xm<<+GwO Kq׻ ,ȎIa7Z}MEQM1%~ Vm.|,sS )RRH5n/<[>_2>;]窧8k|tOG&>TlO1>zp5$썭%=m:zQ q^=F5k6s}taNR43 xoF]W$DJj7]Ň1B+(A/ 8"As wڥGB5`n+:[CҺ+{Yd{BZ8rپ!?<3w#sG d:QJT}a y2P nڷi&oJo-A{&B-?Pl98Fv7WYMT clɓ>U)"e"c+JZArjNgMo~JaƷW>iLӬek[njrc9JbX<-> "=:{o1cŠ8~E^}Y3Ã٣K?Q7"N^LB+th$[~NTu3חv qϼ^ &&Tp*g (g:n1^\<9p%16=jv PJ ]Dػnn{xMB$ Գ B#Nshx*6 zEViocnSĵsԲZ'41E Ӡ6!"- 7 H'r"ϸC ,aWm*ReTIȎu *D#xijxڣհkX0gz=BMk3[\=-qbNExտSA/(cÐOƭ:/u' :V@CǏ 1C귔.Pfy-:Paa:q.E@ bBEjĿ#"fvq! :*}sΑe=Pl0|jLNw}Lv|l{-J]4{O|gr $>R2`4r&@]5! $4v (<#J +N%C~NEd>]PIrK^Ec(#r*N=m׼ِz[Pwtt| Vg4F*UQ$gŞ?)#tIˌ/1J>}6إ&6zRGߪlEzm\W֒Ȉh+"oNБS&b%L(:U6H!Kϭ#[ s+t.}\`GJmk 1.v yp>@ ?KF Pv>"%}rLR ;VS@4=p8Yro4 M-4|Lg~ $}fYjt%E3.RjrU@ܠ$u!HW+6@RgdJg*u%8/⥞ M ΢¨}$Z^apٲ˅n_nhs [7yz6GE/y"a 5R-V[5%[Ņ0h#yc%jv 6!} cG+AKy݂E}V,b}*WG(i9JX(m.FafXdD{8x Z2x r1QNW!5(ٰMNRFK!׼,f‡shQUSd @uZ<5Lnu>\ qꄍ@˰'B ɩA A%HޅR>')kWX-33e`D =%i}>d^$in%n+㓱/7psS^-e/]+[7FAӉ]X•jɉQ~V0zcq11EĽ@Ү:W. |oU7fY+**\:V=h'|w@j(돣scjH ϸo6n^xZTcwnt߶o2~1R͟-}\ɗL-:u|gxv(Ok"7܃o5Q޼cv+QF Jq^sC3ٷhW'$B3$5d*wݐ?̵]`=qi;FDp:bP [7i]]e'o#࠘$/8 @^tlf4{w.Sj igNRaOhYʝK{fwſ/ Z.4g#~$Iz$)oqU~4%(sXQvxŮ':&{аgLS>h`DeX^Vmdm53(󅐴n *Ը6ckP1"eHyoӲDZ_HD O|IkݿGWvppcH@`߉RZ law1[ I͘ Oֶ_sPM!>_Ym1Ț]4Z.w %J^Xx ~$ mFH\Os!>ktW>Lv=M$O[k!>jʈRV(9`f5e0 ѭKc68y ;]0u]~KoLhVKSpg;H/W)2@.Zi,U17le3D8^Ҏ^Nfx=L+XC ww\6\gƧ FZR B5u@$ \~^j@P{OZd fwSF/ Y׬ֹWO7B̿U}'>@(4"렟 ;! Dԛ3$I|ƹЉ'̃#sGĂf=%c{ߧ\6ی7Hf;>?fhv@sX]Ů@λyb(Vw'h #6lW*0E4p5 4qϤP_h\^*3Ca#i#pj}6ܺ*Th=܍ѓD}xeڣm@U\J[>|\.`Jz2qUo[t ʞ$yϽѫg/[d3KȯOBhRTJ/FT͹_؜']be&}BrT |Cs2j@*dyiasiUuiM:˒`'Dݱ$_Zq9_ޓ1e: D'"iDya EB~<:㣢.SuPÉsItwywam4UCJsDLL!yFPqͷpa7;Ŭ`0zi抝WTގ=EArAيs7m$}؎NVLydp }+\.A(a20@;LcLlsb/ GY@@^!ߓVEx|4+ m~g=.n\i;H10smd#f|^8Pp1!-Xp; Coh<!1h;^L34| c:'m15*`!T1w)D=e}Si/'3iqKBY`lj]74 eljZGH9+HNh(_TUeL9ُ(*Y9]&Pj-ؽF$guɧH-=Co2Ee5nBM38 . 0s;vźE Zxz:`$AuEWpN6{Hqg+,+L12+bXь=HIC_Hr,2ʪKqԯ c,x/USo&SApݝ*7H951n]A|I"aBoFhZ MK!ixfh"RdF=8 !I&kHsI`Dٸ)z[V5kp ]K \MsyD㛛8ITǦg9N)3bj6S{_jfp" 2Μ/92wrޚ2IN:m?I`ǐic64UPq0=6^9hgZv!^7\ UVaq)Bq>܇.Cl{T/^)YטVxp︇ZԒ |~÷qRmB?Lv)tEIC8jC^!2585H;O^}e4({4Y$^NNx3ŷ(Kmm3M,bNJq`DWArFZCmt`_ ~)3p?zu*"h$GP:Vr'_詞MFq+R?lpA0Q#TCF0)!`35J!l-$cnוk|onW &9RO9~^ԓ-zd}m5ƧIЉ0_~]w1OWUb5K/ӯnJ^uc¢m9;]|S'Aw @.*Hyͧn4o~;_hiڰl.dݻ6].2Ef͆#kxk_\K(s?VM1eR!-%;zFi5|["gXP&g/籔\/z_]MMFn"NI*P& . xY5t['yAB n7%OG3!9dceXĴ S5ǻ@t[9o PUΘ.05U7  FfC>~.k~e,up{ 5 36ssgŎa4% ˈzӷ[5#yY4DeӍS3bҠ].XnޢMTeMtް潚;D}}v </ʐ;ur-EK=+40t_GR _MMD1ĸ82dqѹ>cKOxE}G(98[g!5>YJ42gʬ]bLYc],3VOqj߯a&YؙB*;RzK zθ16e!&e] hϵ5 Jc"1V2:=rqTPFI1*+؂5I#BW\b3Ћh؀VgM]šc(1HEK| [Ht#bVWs^L@ sor/xJJpTFMSHKf[ `9bN (ޠః3.<(MzȝD좹S\1lĄ;p "LIUISƫu+%A[ZJ.^]"jihB0dwbGAւj@K9IEn:kX z 7Uo:,ƮBƁcJH\)E#+L>ZS#GNp]8z58DM]8ϩ(sTXAbz:S(֭+nt,L^ʯ;ٹGnHoeq4\giaJ=)8a p3c]4s=n @E.Ш K=rU]F7٣Q djf;UnW&֩|[3H0aЁ/F ;z߶覜,v^ip KN%5L< <-۵NS+`efċ }ߔTR2&%2MQi=&|]8ƿNK 7h'{5e EWͣi܇>N1A0# .W}"u/Kj]D BnWs@Ne5o4HvMrA3їe,WO'v>dao6,S#ᔭޓwqNIh$j@:k?1 38cNc_X^FȽXeԀԍf2 n.TanQ#yV)L3rOܑKHPNTGGhHNo9A|a{"܏wQ3!;1@4GvLwQ\!^5.t5VwgHZv%Qk)L$ d7&7qT7DML KvO2z:IRP%E &\vj`#V SmTZ(9Q`^fW3g%KE~'mP{5Tlf F'&ԙFZKq Hܪh)ib/O xi7m r$g"{YLsb֑.ne:pzK1]d T3BWtʯL`94Cx6=0q k.nT#h*˕+DW92yE0|⸛u3ʵ8b+1`a0MgrglJ$a܄8Ԉi-Pw\lR'0S(ū_}d3Uf붭Kl,ԑcȿΊkWUӷ Yx!#2= C2@"?Zy-},vlcG9#Y!L$/?h̭ܦc(i6h D:̖nbu؊4=jeS}2@4θ'x6veJLIXm~evDC f" ͎KR6|GPB Vs{7pWe;w[&Fbcܳm"h8_jd<h.@2*zT槹 ~rGm:(g.)<4י- I;^6ֶp M0$&~=nEY M Y hA~ kt}6}(p=! ?)d,:uRQNI~+iC0,7o1騒nlP~'B֗kk9=Bed(xZokw)l%΃Fz!(QE4ÓZ3G3~HW5aP'iC~Px2_Fnh-GeT2Iˌ8TX}Il P1j9+h(rBdt.l)!m.Z݁$Vp{ڬdSiwkA oc G˹T%7 }4FJAS=6JQ[ 6X{MHxDy.+S>8F.=$Je0e5 v3(u'`=0ػ[2 \@K|Ul&jmߐT&d8${},iƤӶ4Eg &&9J}Ip ٭3T&/ Ɏ~5fYo-1n6F#} SoΩM5E"j7$kM戌'(YLx#wugu<݃ Ka ƾjLtIx;?(R@\%[H`=TD(*XcX{f7à+Mnpv4UR^N=6Ҥ[MZ(m|ɽ$&VtmH?7jЊE6+'dqwPTrgVJED|DyFXuu\ʙѩ8Wq0BVv\Vjݧh+1BkiD]|[`iϬ^bszSS*;fcTeC=xx:g H#O(z]Ăq. y曱xh-sW{4X{~}sf@vl2q$r*ti ggZ/.(\@\ONWW1(@k@ldGi&? 5]XBq&Vg y2`:t+30{ԧ(fƩϳ~ibO'}V8-Ikj+}CCexY@h2M,˨jg^vo0!ԕFw#1Hr\T>}*%,˻?k~>{mjʴV8W:93ID:cKP^EdiZJ펛X5;H>m{ Ν9/{6^FǏ >ShAXFaⵟ"U>GH EKkr+gyw*t-0ԡlƳ4 j9#Evzl K rւG!@gXPQGZE%=c?W9Nxg ͨ'H`ߙp03¦Qqo sNP{skp$y",Q"X.C}ƇoÔ}q`N;LK[IHd_QC.uO`n6O*|>,`@Nӵi0bV3v;@*PUyƦ[=lFcg=Ys]O3_ ԡ vD2Wy`^D슚Q'RnEΰ5* ?FlaKe^Z$OĿ}D_$쥉\Q RwH. A=&3>-5+AQ;Wݮ0"]xquňv| Թߵ{e("RMț[e8̜"P >0 læ:YyT3*[!J96HMka¼s_g?^&f/YAoQ d90yBn#6!3Ff,WB`K\$q)$]_CV\WeV.c q\$2cIaك.8>4kSJUfDQz۫,Wq/cyG5B"q܉?' W 6<&ZSUd`v ~*:Y/L{^%SP[w 1C*YoaG$tK'! 5 vY m M l;qkPaӚ:@㆕Y( heZilmj_j(8H|Z8U{,9a n X_:c)k*8ڼV`c;G@f'Sh* "lHDe6 !>Y @Uk"gJS"%X;Ft Xfi.3k䨵 f?%O:]IHgX ѳ3u<_0cݩ4gy޻Z++k3鉘_w F9̜8Q5!O n@^ eN(J I1ɹV%,oH2'H<(buTI:gD=pƐ?ҒyKq;1lU<δsYZ'2 | :׽y$*jh&<\ C4"_S~ ]:S MnOꃱ$ݦo>gA 4DH˚WgU_<|v ٮ[o |SeNK v؅qV#{; oJ "hÃK|zhVꥶs,_DhgX]2AI0v,igͿLiiPGO{T`d8-KqRh6or̖1wZqAY^N}tl!]gzR-aOu :!ڴ{tsjipz٘&cn^=褚dRu _L]hn4f s]@jK0඘Ay'v&uO[ U2Vn _\mjo_^n*T=GE>(ɧljv:$tkԿփ2ǫw5F{ᨆlw$'H(N`y!zHGyTܑyoT^6ғ2Cv΂UYPv:CŅ#$ R.eF@[DR S䵗y'xZ15U6(g25Xgq?* G DCk|=Ijlx@ד<8f~eaaCs~[iQݍu ] FTyd\б:Zm%hAޯNP"C.y81sP,krJ<=B AT.h bMѾ% 'ZdǻA >2o^VLK |ua_NI ˡ,\xqj 6lz^YB+Nh5Pj|:7j(yfLw>/+S9_儇*C75+cm lcFk{e" ߸P^SEhAhSFX:lʧł*)܆R0H6 ̕-rͯ7|]v+ ӏZ)Qt, E\`(D sHlfzP?('djXכ6}!}E^Ox ;`9f 3M/fG;Ŀ/5Y0}_zH߬GANLb] 7gE\3cR29z"S 1Ԧ+ z{]ELQ= ŝ`MA͛1 1%T愼>᡺ Zj"hEj Y63 C̨lx]O(Q;&/UBVgDNpB§0jtw T_pYPz@ΚqU:do,:&\H kAt#Z2:ӅVB(ڟC?znY$3=!BΊe`A46> OoXJs(݇d&-POD\׵}ij{"cS N%vD~%<>Vc$%wT g2Ѡ%@)\X"ْy\Gۊ z&L)+=y/zYxyaBtH/.;NHzV؎nΣ˨[A W=+_9I'b(/Dkλ$M[HY@~N~NLAj܂C= <-yHѹwu}o6b~Tx7Ag#]IA 86$;oe>n ?,:,d\oAѤkwwI` ^ʼn>YHS፳ok'fyw:t4`+>`NUZ}|/Ey^)P9M=&cm'ޤXq'nݍRqk?AIxde5%#|)CLFgC41 kŞAD`i:=e ,7 T)=\MLRɰHPHsT^ brXD:c|/,lͶ-Ps*t:2x82"!N`%5L]ӝ -L?Ym08Kծw.[6 xއ^#:0@__3= +{ ;va!1)VmU'An%"=!J2~sENOZ% 0 @J]pzUrn5D ] xjv_3Va(WWGƟZAw ".DgM2 S"/hwcLD{PBMaJ6Љ&h_ Y΢[~'͎ z ʗEmA,#k= zS[@e+䯂wS-s,jt@ nL3(G78 Jr"VCaIސ^96u +lTFn/E|+(֩g:7!2- C0Z8󬗜C@8Oixgzqٸ|oFED'".0+d#F7 sԀggyխ?;q`!8av3Чm̆ >T:X骣贏ZO=Wt=]&ԴRCSPQÞvRoB6Ɉ,2Zɧv3zNm)ՙ4YӞN"yz6Ѳ+V|ez9QH0%S,<װw$kz $3S b rGsf/7X)Kt.V>F-i 1 JܴSb M4>W=x3*cO}^D|ؽi30$\؊n3+QMT #{-_An/0Ywi{xؗQ>o E;,B_ xfNvQ{Zz{!BA۬Zvt 7G(V\ve ,C'Rx!5!YO莞}AhTƆdt'ղ歲b +{TKr++]a8(B!TӰsXh-4>W;4?ट1X\ ;UœD_զ`4 MM?. QO^)^[#o'0o? zbLC9^𞧿@Cm Ae ,e̊ޅU: aYNSIMUi=;x~'m,Z- Rŀ ]_t*w.fm\6F^uZgV143Pg@;FDw7fumeĶ!:e1{U1/n7~R lwX bνT<:cXa \P]S)%P : Nz]*mN &ojY {F9"=;M9yK)㷮=,?3x>e SPP q 򲷪⬆ڌjzwǸ3aNC?`#R3b^)3RPxzG>ӛR.ʜA Ho[Q/ 8!7lk̶ddO$}O<הn%ωЁ%jU<}f'\~oiZՁfyzPW d\yy-d"%<+fb)RK%Z(u(mTgh5H*q&H硪q>&8$!8Hki$4 x"+;ϖ&X )vO zHa}mhq՛ '3u0QkXgJP4] 0uy34vLlL/3 >r tM%;Hn:rsjH BsT\uajNM2! b|j PFLNVٛãT'^u:5B>%~)AM9 ~M$vjI&5ŢzmZ0WCM 6]9^cx.ϨbZHjx)#,9ZՉ@ j)uy.D.gKX^[\`~!`" G!'nүśunl"Wf ]c`v+$v@O(uMt) moDM~7R9[pbm_-whzOTW] CI8bҦH2? Cfmvx ^t-ěXgQƱfiPN$b??O )t_iK|ӽC0e35.'V!#p3=nYǬd/Y/W2iTrw5xXY#;{r4!qI/2M'v<>O`ѥyeweu7-a;_N,C8s; Bz;cW)ui"lY?%9++sQ2H?K`D!Sl68c Q#|y"{^.@q:f:T H*glZL9~oI=PP3 >c¹ytͬE0.t^؏JddyGZil9=({ph?EfN zpy8aRpl@Em8B+{*qr:K.+V9s.a`D&w˕:25*;D"C}h&D*JEtq+<;?-~ jydURkN6+p}%BZ:8!o$e7*5w;L*PX]\Cq Dţ>mCjcٯBBLu3_C!Tcf2i3q*ߌ,~뀨ajd\k{E*l*_ΈȳrBG|dA97bx hcߡIaڽVY6cP`dő8>icAu>Fy,Bji2k}7Kώ'" f)DŽ3'g ML<~]`B¬V&]SDplckL1ѲBg䕻ƻytW>6aX##SV!K<"^IϽYUGzncS=cGُ"^qoȋ"IU R%$m @}xDccJ؞wSC]@C+ݖoj*C&uQ}a n;l yh pQX$GEnOLrO JBe hJ|m6l=ɘ<?uez fSlyv \5,4d4.;_}h *$ Vu7P~” 4kFl{䢰5MDTpGVu.@Dώ84Ϻ))&+`lrro4D\O1|[\j@ߕrp̎pO`p&UBI Tfvwf)A6\|l LB}(PDF[6s!Pu9>7v_JDȱSIYJ!r-e\N߾!yߍ}&}kVo2:[CVN$khP ;N7?7"eH8t 'O:M=g%W[YS'1L[\}Ck&Vp>Êtgu֢Hz"4qNtѽCY(8{C7}y?=kvhU-GyQ"}Mzۑ{|[#}b:Z]JVhu/݉󊈻Bgjڜ/|mp&k>_jHv`vuLπmxY.c eLsˤ@ns:p\ȒyG- h́_ DNFN)4U2))Kt {ûS"z<[CpV0Fހ`bJ!x @X4'jP:YgRL(傞mcy^ ;"ӕ;k#JHLb~Uxf2 nOunx2Jz4&E7QZZZ5J.LUl_P Ȋ0rhl9K(uN1Cjq2 :\aAp a⬔ETXǴZ2"?]kG[^/6)}TeF-rgC>s,P߼wes-`tQee^ye:a6~+tL)?b6w J~Lmj|ap=\Np6 aD#u)L% }J*zQY5d89xxΠ a&]a}2 HYy0ҽ7j2P.[!r9$"nUY~I 4,O>L |Zm"?ŕf2ŀ)sv~ҧ`+ldnҠ|0K9מ}=IӒ:\ijX'D|F(d[=ANJuTI{!Ω@ F!&TW8h zrz¾F pMM0s}3q+aO0; zJ@0גC9tm *3UmDH+j^=1-tJ+wO%WM&sO:iܴM8ַ@کkJi>ʙT"63.h; @܂-gLqvFQCt#L C+zu9Mdrcyv)۝oɒ#}=s u2lc U@gb@א#,,\)Cb+W ;PJ21idLICW&Wqi"kcd}د(ym8xzIUC9IE18Rg)­"C+>Lv/2pxpo7M n 'l9-RX XUd6"P@V0̦= 4[(7rq;,pkIF&k@'޼?ܐ$Dg2ldZbLeg=C6k,IyšbzPp ^wr45]}G0!3Cg^ۢzո4|QY!$\4`11]ЇG8o4EXTqJƄJvt$: I$42P0{:|:8 iԟbb? ض., 1G#Zݷk#]P׺-4V^r_7V,e?+{A.|6ÝS_Շ0{ tFTp91ry1+lO3|Hx^C e5I)rTiضc־[/*|g13.&~m!PSPs}y |C?Ji`RZnLczpnA*+M''>_g~q_x>27;^R覭V}}*}>k}}@tzF*EЇUZOdb~^ 3Pp2]^Raǝǔ We@4Ds-:bEC3LCӤTwv_󴼔(Wv^GiT)FZ-R餧RTO,IZd ڤ[(b*;c?pXkd Vת?8$ qQJ3V;u[5֧k4uٙ:YbKyP[>I,#7T`۱~gzrV$'wX򶠭%a$HM6y/t}o΋#1:dIZt 23x>"Ncp,{|ŭC&?|k'K`'Woc/ж_)2q6 efϺχ}gصTQsFqf~†o\iQ"n&`x_{#k2Ee| b*t ^@x)$MFX?G! :o-Ea拞W? $ .5-OV_k 焇`׺4RQOr"Ͳ@Af @<=n#m <9;o55G@=}u V?fSl! .m !'MIx_k̡ʘHy~ҮmbPy* Èn䄃k TB3*ǍR3L0}+>.et"$4QS%15O}FXLta-,Dz9%rTd Q @>4bOǂ l\J TNJKovo:t(nJ]K3-y*袇tu4q)8kP+j "1΋@jL>CV._{e͐t Ԥ8dz$;@nhw4jn5gpԄH8_DbV η$?֛9/ aZ\5Ψ9ٍ37'QGT0Ӂ%M fM͌Wl~39kxJ{ԫե 9ݺ~( 1 = X`ڬ|&d*pQ56L +.#/nGYddHmR)L5z!: S:pCtFjWtDMm,$qR,Q+e,1J`f=Nim6zccx:eжLfny&{FDuE$3 2wm%V[1soʫlOs;%ROg\t& (QsF2&C>H8xoE}(_2XɉG+S9}L:f9vmh-VJv?[ɤ\_z "d &vZ_4Au|'F[r@]*3@ޚ:%׏/4Dk h: H&]kI$_AG8jK{&T uN*u<ńZ4{+~:Vˠί*2Np*/, . :CN :m <",Qxw@;i yf.Q?<9'Ieϵcjt@%e2'amN><z};;.x^2K( %限ɱbqLaؘvO@1ƚX#M(;V0&jcNЮ"3us_0GFH jO0U<'Jx+bBml\Ssm)yT}4O* Z \Oyh.b*PeiN[/1ڙ5o& "M$ƄC ֞|_8QɣA$NR{ŲH a 5 kQ$ez>xTAڨ pOخ*~/_HT2~lTZzJz\ b46Yo "C®tV;"o/{Ņ|$+=r/Lu`6Z!9~.-VzaFOGQAAriiz֮`pB?> #7"LmlqN U|3:m5w-Fqvq]$$%)XI1审z`\LlYp`R 2:mL\mn6qdCyԦjQlːoo̫Ut63y*A0SntvL.Kp6kF#x? E >*PFXKz]] *47`,`JC޺JBYTCv\z>V2&3Z XAhR?S[˱F1Wb5EyϹẅl/+Y3ݾLЫzZ.~*{͇Maך\!D؎>gGoa\#[(#يjCv=#U Ml͠(^,c\'g٬t<-k v9~)P8S^nk|1qdp#n7 ߱η2,qlܙb356'*<`wevC33'sk\|o=.$9k0e7uɀKvU6Do/&zB{~ !v.Wt:>7h& yqQ'ԇV.m2: x`ꇩTAОPL+alEdqF "q.ԏ\F~^+vJ܋ɇMRՊMs3W5. :Sh C}'Å >Kpt! \!h=CE4o{ѦP(Oi$kugDOY粹Jj8m;eUB\-G:ӏ>%e+.EP9WW¯/T5h"7BL >mYSm;L._ *O{ s?6._aPcNghm _ZI X2'rL1upT8r+q -DÂԽ*Ljع`0"nŮ"/MܳYr2IQZJh Cěwޏ<r{3J`4oF Q$&?֚OHO} ؇γU۩j6 G$)>;CM|ޑ7셩?7mEr¦ 9[N H}ڧaO*tIzJ5|](xtc SWkE\* 4 1Ej; R܋G~^ĞZ`Φޚay6dx1F^(aG~Gy#PJ3.݀ͼ,kD:^IQgFN^g1 w:%V`X+G3;~z `/x̨L"K'p q<*l`:c3w0K[Ч+B1I2BXd<73NWr8ltnr4kK dx`dJ+CGDwc#a?QN 'L^0=?]5W,k#x^gBl_iVm°%k]D/*7j%$@vOԃ>6#:mVh|NpR2[ WM2=j-?᣿ZǐK>+m6Bп2pѩnĀǗ1"G7gPz޻a@)(ѫ;`9o gHsLZBzQX/PE{L#\[ؐ C,rNKRhBP#1ɝLzZ b%?{okħviVff~b- 3h2ùd+;4ⷭP@f;Kd@[~%(b@HQqK:WOX{W7,ֵy4`:ޞ?I@3VY| F{de# ;' ؚ[ڞ =rdcoei* ,ÅbӉ6>^ĝY]L_B0l6hVӞx: ϗ<kHYR;$S7w>t!P0YymHU"Uܹ"p[{@ېgEs1Ob`X΃:$޶ Wyl8h)iZx y\G_Wvh,6%'wM:Ӄk==RO{LoMڇ:^,dgB"8"%0k`X)V6EX'ʟ9z-C} U!Zlj3Si~׊|:#cە*i(mnyTījJ58v&v `+N!)(i770D^2Ç3ɚW [>xD˙,>{w= űc-M0<0Պ <9*D6Egfu}(Vy+vh,ąC/ aNЎau.wXi-tl6 G -G8!A Bief3q) h2Pn㳴cG=c=?*$颶=&ˀA]G0/h2%sj"ja:s9*Xx=Aӂ%&aIaΙ%pB:u7Y:'>A[}VHWǯ(Aް=.USϧ a|gI-\4+1B:QEN~= oGe] q{na'g~CW]fA7u:*zV9 9AQY^0hIrBցu.xEeAJ0`S1 s=-Ū ,;aǔl?P+B@ aVטd|Be9gKOը`g gx?%·Kb+n ?b-KT@,{į*M&HPP:ږ%b\Ke"jEؽ&u7ARq־٦(IDd"d*I"KpeU(:|xc\ 2Agߙz"Gjķ.n)GDOs dz ~r~O^{Nog-s FFno ,ͥZ &Qӏ|_I}u)I6QՒ;SU:هvT I[}r:d9g"9N  0]4hpFa۸3_?KRه٪X5Ut*]zd~5M=xKg*ZwcI4 oTCA.MZ(kM6G FOdĆymQŕuUo] |++|9,Br)?6]F bv9ldIH-8ajSREޠ{rOڿ*fQfK foPq!z(5jg";.>xn_O3^tiBRܱU,ͦ7m9Y^9ܺrOaDԫ{=~ ܜ^\DŽ$n (.(< MTq[\O@JocETIBWJ~^ KSȈ: ,p&k{W>BIl"s!n=5vXctʾAy/uļߡ?u.Lb}OhP]M1esbȴpH> t6A}4x K1֝f Z\[r'_AaǷeuryU8NH4`jVmt*5!h 06B/š5iO " dSr٩:Cn;}EGUoɷ,ɞ2 g^hVڱ6qWw$BaZb6(;E X_Lبla0۔{(!2:N/%? k)d4N 66gQ;`BtVr>\MV{Bp09Z{-2ж m}]嗂=L&G &{a8vrS/[0JNfaFf}P=w54)9F >_M7ga:P<< I+|ȢwuۻX ky`r=lDiiL5v~tix%!̍M/= |ؐ-vSf_Qw?v<#k$@q @(d/:'Lk4bR`Ü\ܶ7 _ x2/ CRo[[hUʹx,~IxT86y+b#QDNFAkXš_\G,?sg"DZYfMI5eaԴ5]V̬oA(;? -^R+$[i7mT}wyOA IV->eDb/ۣ}ܱ䮢"k ooAT`!wɢ`E8:`!CjvYzb\,c]R[WXҥ?t5b^fqc܅4gAm%׶(?ebtz 0]%RqN6Qҝ$cQXL}#f -s #/rH-*@J]-z -@ySGˤYY Jz!Bs}~.⶯'䈌S-F'!fPe27(E!h TI_H#:~ՑTx.IspCHO\9(:Q *mK Д5}W:$ rA4S*W. FHq\2 ɠ]N>qcKZ16hK`l5|O(K I(%(z@& Tr\ Gs?]&E߉aRnt^`J̝_jWIn[6\6O+],̴̘04qq|@R[FU? MHÁf9k\Lmso[2uxQOƿ/F~507얯݃dIم> !XiC{BqظR:l:ɼ#S^0A v~pByz7~BqT%6'`ҲJCf={/K_8r:UrMo<rmU >7]iyCԢw!`4 lGq&_v@Q:fVMh!:! =(G5zET|F]mӓNQF"Swg `M(m6+am**&~4Es-3θPO̠lMW}lͦ ߁\W-uȷ@G-8 B|H&Țc"]s[W[y[hW:XPҝfaڍ][j>Oi97yP5Gqa gus R-p#-4&І:of| Jr^^ A^lIf_btkR1YV{$E"4N_y9=SҐ$}]w(nM ^g31Vq!b}ϵQQCqI|:׏١CP")1m9~<l^I1ni#)ʱ>Mp 'K/*Z휵x5˘%z=dsKUg?'bf\,=:lr"3щV,p+A)_Xi[ҫW;XQ/V~VW]ns^ݷ)zgM<T yaz=>[u68zJ\J >K|!z1 RTU~ʐiYʏM+{ώ,lݥhFqvDBNpƘ\2^1f sq"Uv[6 ,9C /DNmhߢAeKCT>[uf:8w/"濗Yhh ni  9'Đ( +N[J|G,iG+)ZhQJct,Y)ܢ/Dt1W]o|*40cY4L|tcvZ"(3cJrk twquޜb0qD]E}nMQ}"$zB6c]5ev\K(6ܤ-尲k'4p[<eP/5Bht <@F(|ƀ7 rRn?㮥ey+YђXݐv4X,ed5~is4vST¬xlA! Y.'664f-ڱ"B\g9unhDTscRVbm};C @>gХ e"څO 3,Glgٚe|t am)E L U\I"vo1A`4Wŧ4Ns]\$%h&Y->2GmmͱwӶ RM/#5U B>4,Ҏ[[MmSmz"yvBW8CTv I{*؅~%(͍[BAka$V3}_HW(~wܨ/,-zt2A<0ƪ:)FB)!]Xc=mv}Ұ+Ixͩ+=r=3 T\UL0\҂dȥ`V^);=Ɍi}=2uմMƚP}g ̐s .^N;yڞ f'CWx&BuvtrV_V;SY&vUc!ɀ(U* OʚO=?k>OSb"x^GSGej|,3ղJmqՔGg(XrŘ`W2~#oN\GO'a qJK勱_m[YCUWp8QMD&,sTwCQ[jRK>MTA(rDI1QdL,T'Z2` _=z{Ha  :-{hV(DGy >o E4[!fR8X pD=0șrh>ijq*۞.H~e#[4QIe"KBR7cH0%gD4ٯV]Ju*PɅ42`*"q? )քfvFOPF "9淮c$xWU,4D0b.] WmTk*i 81R"5%?~iww ma@1P,B38zUԎ@|6Y>ySz hD$0a{0MbUzJu!n)%xss=ҧ GtbܹY>;ZE U-j~̈́6Z)CE' N,^~ʴQ0MT`Ɏ-T:i%q0Ds%d7 <9ǂMNZAN^NP߁Ym'S-W7oYX҇Tx9͈IYNe4,Qs~^m9Fё/G9+y[e#V5&> )C٨{ŭ=qVfԯTj}4pN)/"X51pLFLB^\~&w#=Y'bI}hDZ0iQ_:[l bGb; 6.'f_V2~8OzyhP#_i9? M 3 Wpp7T)[ ]̉vt3<;qb?~n.{xH:s&=VNgGJ˻][. uhd㊒8#IH^*{GKA5Z`ञ9)zYI>Ԩ9tU?#hrޛG=}.SZǁQáZ$L҉ҧTP̘/ hY'n]wxO!CQ ־S_M1E3O^-LZybDcw)?PxR:jX8xp,)Y #e=YS|Cks.E+aA‹a~Ǩ08UvPLE{"6SkXZL;92⇍RE;?Ӝ; yB*~WѫXj,^-IJES|tJr.:u?gf&cVS#H@obƁjj̪:wu] gNƵs/A_3X X=ַ){5k>>>Fކ#^(طzS뽮G-w{M]l)3Wd~U?FECKNem~=\-H(]+/N7*Ju;_!Y6O)E]Ć?E }6o)*/P fAV VІ"Ma((Kʻ)4Z^<ί_?Jĉ.Vz '!bN +N?B9|E3z$ea333J@ ĀCf¾8G{%*u@!?C/B᨞8huŻ0“9Iq 6i[ b{ 96@Q¥-,N$D90%<_cBFv䀕R~J=%XhvM Ac_GAe hCE.٧0D͒# NYf5E kqsDlӥPU*`>kmDɊTĜM w{@.+kKLo=Q4Q&zz -I[ެI`DcAGjY<f۷Al?TX}TtO`vrWL6}1oa zV@3 jz1l>_/wﶧ8vbKĞ Q.x6f/{Xʾ eLaV?”'%-16jbQGq'wv|m(!bFaAZ8`z߆4vx"Q@TKێQ4aMu+Ҵ;(N)c ' UB sVbzhgc䍈 KWaM4͟e\@@tlMJ#,2 Q-;${`L霛iarB&/}UoT;-R1IU7\n]Y< ,)sg ]BWz:2Z@HUG>} Z[os\"iS0i߹\L#'wv~h='6[ !tT 3S`+9mTHU_~^hۚor zQ$k Mso bD2S% jB037Nܤ܈UW% 1Z 1)dҍK_| !+=%[ĪsYdo!8(>׿` tqRgg>fL=)D6Y-YZ^/-?H+9FL[g%XѤ y2GiMznc+BgFL 2Y6$.D)UҴOEU>C]vҢL!li+v5lҙ3%"n4(X BfY7+HLH7,czNH_ V^8$O9O(bKe媱Җ\? _Lc?4IX,e3}0ԲX;iԁ1Ndy{}@Z2_zo.6wͺ~ǐN2rt;}21TI2|g灴yDa%yKhz^1y!FKAWvI迨n%PP5ٜߋp)&VvYT*5/~aq L!Ȑ?Cdx{)wKp!8I+*ۡ5)+4ȭweZvRf$2k TY. -򨥟E1t IԥD,+T Ua.H0=>q%~b #IIGU&1!|7i,ӟ(qt*ؙ3d>=O'ЪԋD פaavsPv''͜PO' 4%(qZVB zۯ&ȊՂ\ߜ[W9ҤNt$%H"%S|OsG' No ,dO/x!:IЧWO17qL%.3lZPb h\ @R%߰2OLu7G/0;{rMatRC\#;JiNZ|9ejz|dݵyׯj=R\z6z! 9֯NBnUWYu߼knE_M_;k6@0{Lj :W%X tapfq\PrИ!$!!y< õEhM%,8;Çeo*a蕁ըK-ț&U7e~wm?Q,T9f^`+vW+XQZ ?LPw(PIX|UgtJk(?IN@5^^C 8we6 ӑAŪҤmz@{ PusBc)8`V@]XDjA|d뚻  mڢ?m gMMmfJ9֥`6cTX4- "'p~NbUo[ʯAR=_\vyc(!+bewe"o.~RN.) t&TAW(E[)+.1o,eՐYc{l-Iiwm\s*cn4`GTEdsFẳRL OY~T'D&9y" G.ޤoy;a$ T KGC]N1r{Ĝ· e-}Ƥ @n kB# _[ š\جQ*|ڈ?g=q~22FO¾nb}:)rq!ꚏ_ چ9%H'tnIO .LyT&F;[֞4D(?:A;?*#I:geq;?y&/&ӐW u>t_(V:(GƮќ7~Q0f۾ J$KFۉ)n Pa,O~ծo>Όj"#P7JuC0j4 , .aG^S^@A<$;6QN2Z=-lFƒTh8yq1e:fI\^a?`;< E7hVmND~>;:8rBr!ghPm@g.ݙEboMKI|'ln Ŏ0߈E>*Z0I2No`Ȗ>zdk>T3  (|7uԄ.t@݂R#pql'=yyŋ"=dDdZNZt 2ze&!V sQ`.&~k"Wszp聛č}pEz:ǖlx{^_ fՙkkjv583#dYJ+=u2OQPEa oY7WR t$R̗Ld,ΎGtD>AHYj *i΀ 93CNkeGlaRS15'gߘoaҀxO-pGW]7X*B:|,x=7?89&#vsH5}_+4^]NBql֛ f2Fo}\T>Ϣz[~I"  M 3}@)t^(w{i)7aQfֆ2/6XeW2Bc42"DlӮ!mW8Yy0DuSeA/vek%rv<!_ pPT=KU߄A[ʐzSwgO뢀M|3gX̘< |e\ td3kpQY'/w y$r\k)a\mCqc_xxb__Yre*>(CfDbL 'ǥi=|:Z٥n!mK~ H( PlUuf0i5{ܿ.ݩ)1+d3"#r}LG萪?[k@>8 ',nvT/ Z,"'=aoQ67eX;O. tmFQkt4mnIbf\}ļikZR5&'7ֶZłg.(6Ս t͐AY@G 0KD/˽Kʥrw>$Hwt~?f|F!B -2_+|e >k+~'ig1j+nw"J ͵17\aM 05< HJeH340@OA% >mtk¯*'b*Z}'~G5xW´6mlCEH m9p; (syaԼŒV"䉏 v6gs.=Kc޴B /T6%m:ɂN\ӻحD㮢=}LrPuժ$K)B>.M2xQ"'̌RRVd(l):1+dž&Uf`![#t W0V (l&2mX۩1|uKnyAh J. ]~/q7'Bf|؜NIUAA`C/K c7-حFxT*xAW,|wbz7D+93gh)6Jp9+~2r4ͦaU^>9OKBBc:r)0+R/ eY|?ßAoP+ݖ.03@05 vO;*YZ<;ouP-Ȗ[m* 0=QLP.7UW+e^cI;P+BoʗZuSSa9aÒa;0`QpKkDy={6bLSJlj+\Ny*Kf 5  ].P'e 01qB7FNeĸKʽ>NAK<"8(T^R] R ;ly*bbuAbju!U靇yl~KI;(:dE=QR6#p/T\ sv7;-{{K白${ kN6*quJ˜\ E"-zE'Sf NK9GyQ2&bZ g [xZ'mуPƚ5*Dl531Ýapmr71J0qGPM|ϴ/]z{Xo3 UzGT _'|KҜ5@>?"Wi9e),(I8wA U6@f5?! 6Qbmۤ="YJ\;F{m%UFgeBf3&(WqM)/dGК}FpˬCHxǣ<BOY/}MޮC"i\ȣCHY7W?iQ dh 8}p 2x6  N0L. 3rEuj^'nu"W.3\g'HZ0p⺡R1OTlirP_ZY]M :唓{`ԭm!3"~qs@T}bV3xWIg\3%AbnK,Ư#J 3޲?bd񻨪\叟@tl^W8.r;$=j)_P}monyI߹k=+sweCU}"3<`;V(oU/nTMt`JX7)L* z]glV[ Քb$2+lςˡb]sT7)X5Mq9碪RCfUg9W4q0vqH]틥\k3߾ 貀n^ˏt7~Jyw/P?Mi6~PZ c޻` cNikH̥u\jMTDG#y1sdz?涶,fn C`QGLt$uN%Ti*M{+a$$;a*Ls!1IDkAoW2ZK.BIfױmBAE5Y ٣Dso17אR,%"LuK ?;3ꍎ$9N{Gxب:>~/g?С5z* UI.HFY!,ג Jfv&o+ͨa 86,\`/o* U&D9XJZ޸:LA4BXᅯIl7ڗ[{6[Up#aKXw׍AWTƎLA +]Am;1tI.RIifJWSyv.N1 wI U2_\( *v& V0!!L} QKN\.)X2+*:"LȓS{]w N; gK~FWRyO=w}ߌgp߂&XfQ^AS!.c_: Y\Pᏹ}]3}zd4i{撒 +g ìڊ(xa/+Ӱ6c-ktmَ쫢}͹G7?޼Ѱ5V=6`&6[tvH)2%y"nfmO^+xӴdSUS6=={Y7h,c8)=s^$ r ^}ޝ/ |wJ-:Ƕ7 7n+4/CNyn3} ug\Sx]dJFT.( "U o #!oBMY/aRw*J-T@9mT|7Pؙfm92w:~nie0t*B|}3O 4,UfW"LPF;2uVOR(Su؍MN䅔'aX|1Y0eh^+8@NʴB?S,xNs_F˕czrTSQ{pA4<;M` w4;O}By[ªg՘i,]Wd:=Vl0/Ntڈi2E#:;;$WNQ~B1;U (:" M`i1U;;h0M 0~d{ (#ɿG)lov{W,Vt*TJ23HZP>&ZۻMA-Pq,!Z ?[vvnBkLRO568#,_?Bt 5Q]r yWFvd]haCkò}d"L/F,~ڼ~2_.]\~g9;A]1$]w5[OV^Ů `$E{,EȮJGo}Ly0V7 5FgnCHhSmdѬ-jk9]2^XGe.Z3 RuABY ߾$~f/v&=>si#)f!KCbh7 jf%ʻ*"u{Y)YlU+l!Q&(ӳϱ*Xvt&um@>vX}ٴBGwٷ-c?hً4*nƸh3O9Zs>mKkQ >gj8jcxkB֟SlvkJdkUmƮKҽ\c3v}W2 7K^k˾QبU3Q?{A8+؁{VPmpj|(ޅD ۰m<\/w8)Iv tOڟ!FlIEѣ+iw=Qȇov{^i - R Le2C24 &鼍/t/35K"i#|#$Іl/ Aڏ q^)9(xk͞ms1l(J鹉3k @$Z*x]^;C}.m| ć{YLi.{lS2]Ps!aT\^ªp]d6lA375͎=7{ވ^ys?0=\ڟ7,H0}4Ρݴ\vW SQ9ހl>S[Q =jcȊ1u"WM`$Mݩb(Ll@z;U%] >7N|#訡. I]%os1\]K71~t/C gȁ!L=:X;&j7Q=g`0P>+ NիN-xΏLeL޲jo1t,n/Fm6>(0޲Y4Z3- фnGGr2a {[P z-FOՇǶ;F%aA27I+ b)7hqlH믍)h,] jutjR&HA*Y'}:ݒYasVT !kyJh_{ҎV.X.N%h4))T2uBz-$91^7LB &o NRm&vJMB#LU *{jI:?!*$>C)t$U}Iiς-W[Y-G.Xݯt, yMQ+98tL%0[(`.gOGTEhŌm.Mqy]|=XRRZ;Y唇esx:7lE/G0W;C I7d=,|d_I'ݦ@m?7#g%dzw4W NW'T^nB]B$ "; DRShO_8d7_iv^|{-C5k2aUJsZ75GdJ;:IJ.0le\4OqG !ph3t0|%9Kg,kjRQw2aKK`a Ͷ3 03D24vNmT>X J 6مV4Yx8eqD?m+]Sǣ&6v*]*_[" ,Q''IQ\AHSҬA)Zy+ 8gKZ60N"M+Ak /I߶cwRg k+R4} o[ehs~7iApTKw^!4}E7d!`u2]Yӝ4i~1 @c3Ȣ)O^K%*|xi/^-=vqul$hRfY:v6?:k9 kPB%`R ӺzgˎñfM/ub---Jv?n˺ruQ'Eırsp[y5ypUq`{Dwr9/3ư,[dM|xaB֜‹%$Mr%+T;e<=UUqR|hPVMڠ?DR}&@Kdz'˖&Ai\.&IdsZw_Zbxm/)CZ|MULZJVzǏ 6$zsTkF̨yz|$֬@\awyXAřI? ?,[  =:TVMYRi4Ύ6*gB`ن=rˈj@N6ZWKR:qH xrVO~E ɆOc̮wQZoz1Ώ/b2d&S̔BcqLp5y+Cv!RHsvBrOU8r@#*RJ |U(@2  IѦ/ Dg(~noAر3E)9L0@!5V"(?$u  A.}4FhKÂߨCo 2^@Xj sgojA[Bf.Uth\ Dz5jaIs!%l 7`ʨdvO tpsh k C(0_^MxEƛP @4q yr#X\/CbkMClv!Jt"ti5 g+ȅ$:Gi- ZPsjZvڷ!K14Eo&{4-"L]Od7orBUH64 QD~`&I[v* 1_.g[=G2䶯w& !j@ Z2&ݐ U:;?:["8}f ߊg"Ӆ?m3p)0SٚuNhNSk8o襂1p(HylʻP~CH]zKR)c+q.2ݢYe^Oz}Nx_> .Ѥ;:,\T}r]{Ҧ $DX_gN=g)t`lcLOV71;)&Pe:)_#gT+A4z#t[S-ς~gw?5>,ʛo6Pe}DvtEv0g3K|a6 QX•Uy;Kux|/ g6/4¨nDD?˴mp s@ga( [SLިDfa1]hGUҬ6 Kuvx󽁍{kӫµE}-Q>P{ XYo~hDG6qh2?||9COl[VjE+4489E.zds: 7HIwm~6deMQa6tERx`1<C (JSvF)+B&q{DyT<*O^|12i hbf^ibH M(N;7ŜV1AKQNmS[n"3)| A+tA`&4 *OEt}SUݭuXGrЇꀎ}"ʂn/p{g(=- 1A/<눇v Սc{@.Wh: \vxi&u UZ(+Nf,~(p w~䛪5D̚aʅV.DãӐb!8<\逴IIX;|Ljx*WP !)@r 9Zu9 v1)? = 8!WS6]n= \vzewil"N#w𻮑?}șv: #Ȝc R_-nh$a] ̏GWaY J+ޞh3\3_">mRS"<6'*EvD9L /:Dx#w\gR_Bu,zR&>zR2MC>R>HMPXQ^[yAYT R*&>q%̈́p ,߿'b\\P`&hn6[Ht27—bX*h={:a 4 ?\GJ_p]ca*36H yR6 "] #C'UNgBW`H/X抣ކϜo4v"\v3™J^jlڴcehJn>daEhW9UoĂVy*: t TR\Ŷ cbp#L .V(E O oǡS%ivhI9~<N:.mrf;Y[cX;Y/fZ&_ SZ_zD5-% jt} Δe]ϟkd|d{;qC;^ve.rAoS9y9ۭ kY=2( =$FJQ`:7_HW5|*t'-:LUFRW`Ni.Ō{b^>_ʦл8`cƐef#Y׼Ab^$,]?Ϯ_K1צyo Hl%5B͑bbrA2ḅ!U9 >K|Sm=:+j2ԥY8GnS_0l4o22ǺQ2DZ"Tão0"C5ynT+;!jic!8; a[ 8 }mvm8/j+BBX)6,Ȅk1RFZw#/]_gsdPx9CdUY;TmMd? #*R@L,"W3CX, gc@D2o_ pP/~h^;Ih;!ݧ,⿂-SsihVJ'XA!]N?E֗K"=X.=ls@Zqq͵\rhoNŃ8_8.]\0vq&::ޥ5)s xCYji2Na_)w&̏$iv +#A=6-WnvLi2 Y2(@m$e`IRCeNg >gtݝ6a=J1 dB'E;| G5է-^Q4M4XXٝFѹīh AxL}, _jwk̅rhxDY&)cvPIQGuвTSN*K3X6F Y)fZwӴgpDEk4s2Ly#ޣEhH8IvjZfݡS!+Q;jx6LUj_?#rb7;-o[Ƅ4"Iז UzbOn7BJc2[>Kڅhg5E62vR|!_PPz9ʖo[n[?#(5UOI '"ܤwlNHA$_u_Zqt«U'XvXK_z.i8 BoKt#Em9rN|pd -|*awTo3rڔQdxq(!u՘RJAŕbbSÝmӍiS3vCHyS0]4A9_7qc{4b鹥 [Ζvq?&o.1vwAr?ʓI?;b3mkAT&{V&? Yk02j_YyZj/@yuqu^Y8L")W`q]8 Ω1Zfhfa-UBrXHyPԭen)|YEM!9謖TL/Vκ/FF5;DB^2T{#1FGQ)0{BZ\}}]h[h1߹+<61Ң X~Z>8)lF,OYj-B[<"a"?Ը6}QOv$c3;F5; xU@")jE~l #cMm/}ħ&"`ULa|ZL )R4/XSUl9O 2@Ss.-!as"p2ihK4D¸Tfҏ}tI_%=AV-ͅo~BwL.Ƞ=7Ʋ|;3~ n(3D%k%oɻ:VOx6B;wY !h\Ԩ7]ޝG3dB*Ead2=]u0u1a[AwOV$p$w[G-B  bpkh=}`k Zm=s2d|\ȟlf˺AG;P; ѹ,7s?23;DI<-(qBֈF2q7lN~!ß tlٯ[˞XdP^11֐b/ l!pVteZ@ e—"cq䲲`{ (S|67DM^%cnzz6͊LQCȅzoXSzNќO h  O4p(]g/s\#~Cu,4ˇ&x!x1Qy] BJíd"}׍O(f/C=c6_:Y"!1d"9ӷEXeT$X(=ANc DVV>ʭRa<]`Efۜ?rzZo̓)]brx[u`|߂!iQ!?ͅWΑLRs;#$/I#鞵גۘXK8ý;Ng%|C.}ɤUk8bp/ti e,,0/ Q}Y%.e|TDCӗ1@;#mWzp>ŦKd4%.eU<>F[f{LvۘP,cUI˱į~%Z1I׾)+2Q0nms'^/^2 >%LZa@O#o 33bˏ[8)DeG=1l5WB=OCe O`876 k*0_=į|L~̺/ĵ!ńg UNu #K﨤' ~KMF0'qqt# /dW|Xr :?mVA/oN ilLkm^ 2H[)0QzztThbID4яуL !F@;|-2p|*}eܱowo|_R!ǀCUިoC#5S L+GKkՉa ?ep:;Jʢf-po^ Auuy"$B`o{ U^$tp7`30Z]љXXH>C8>4d| 뜾m q-*F|9n[+6%zJx~ ur<*JI^]>ۀ0E*)1N vu|KuێjHeI* ĮiPαBMepC J߻Céb5*Tg_+4f'+a:`^zgosYI- o^ 7ӹ"J,%O_}HSm"bpѮAi&Hi-9'xjѰi,i6 JjvUFYm {mRz`fL4a? ;yܧ4q[%Yx^~Ĭ`\Z8s:3,J^Rwƈ@z$< bK (rK;K07"_PVELVUn9ÿ0렰lKs@rB8SDt%@CggjHApvllҩd􃚼 әGg%Az' sФՑsH[F?9z!}P+-u0Jπ=l]9~%~_ؠ4X%y.^4̲ !kz KIomW B"kbO8bo63a.ޢ_2zYX_Ӣ+tAbS&t? ю(m&4+]]uɶݨTQDss; 1MٗeՀwc&gϙ2g;$Kd~R#STzL^ᐖsy74Ol!%.PbZ aTEne|3c,fzlj,|C; X g(閍OuI8%<P>l+gZepH(Cʂ޸@ζh[002ewO!j;͸X&zkou,7?>Cjȕhw_L+ wQ5FWMj qcr:*ٓp?B=B]G\a72ֆfc6JQ'0]_k>H/oZSospMLa/Xb]I ]lFp";vG<&kDzHگkrđJ,]QO~#FXg(e)V$Bq%h`M+w)hVlT@eIF_Ӄ>W+QX@YʻхvUkoX>\*fvCD;{|新+HAkf2ǿ2:CU4_,TmZ RQK>+ ? OPF!)G',mw/2>c{qEڍ (x<[D>?\>Ӑ ߵE⸋8`kxލ|?:DwQ= zI \iyE\pKID߹tDQ3TԴؿܽk`C (V~`!NEDEf *.׻ ִ ]Dc%/K/gJ9)*xܢ[vCT lu7bZ3^Ɠ b>Lʷ % 3?QDWK-h@7g֕ن Q a&3 II{|Hϧ:(҄ _rugo9>M0xov>"S v@_'2BuVqkRY=kJ(ekC,ر:%3CUg#cIvxVΏ fLfbSchlD]OG"9~b 04v5_;4=wf2C;mn j`&\J'iRFR*_MdBfn34sle&'h#hFy>n㏾ЇgV7y/;C8UDP'Z 6t=t)ybG{A$>ۻ"^0KvrׄH3 x)L^H`TO Z?XJS[ I̼ል%/=_HM"&/vBQYMi؟| Jb&W}#n0 &iLbcO 2xw?LQZ-GG@R_7`g>f̎ᄊyOpaTjғj6]n W[@m?++,b1=eMiS3?8eedt+Gs5@Jr%jLEI=Gntn{wc偅xLo)emzH0=:$Sr½2:a;L٨2k-hBv5Ld uRy m -9f44K3 TLF@k!&N2rO5fkS̘!N=V#[@걬X^HO +An (8I4ș4Y2([첌h#&)2nP#+ޭ?cf*y6N4uN)9"}c7wFurOMhJLIݸzjz@W㨰Jp{کyl7C:Bjv!(gtmSH Edk՛CgBm` ^RQ WMEXmX '|_2@ᣤ@g-ˡq>dhGi"ХiHt^٠8ŸAy}ԌvI垹WY54r\InW-Cb EN8Z)4sd!.w%.R9Y\|v)9e/{ȦptP[..Q)) h^}gL٩w]ĵLn05\$ `cj=jJ,d6qq,t:7yMIaEج]9 vQ6oXC6{".َࡗJiFsEN_Ɛ>#sEʄux/ɟ Z`nj `ȫ B P _Ҙr)l5PY(A,mw65dJ#*JtOV,]QB9fl6a`/0ݳU Tm>&=U$Mo$Iܢc~C'_pȖY>r5u J 8mb[fc;).x=1Aْ!Q!s0#9w˭JPE fLvtܢF2ˊ^fyD$\Rt \0# (G` {5)\ f`Ӟx7t"WԒ>X(=V29! P%/[zNv=wih.t'/$`SWZH Ԝ+B*IKb%stw`q ^?C"R-'>j-[̷S:b>eIKf'e\%Gzy6Afus澤-@IXQߔuů>dW>q o/HqΘywH$}20/r0cFgiVӿVBS,b$EL=[:ʝ>e-K~b# 4{&2l#5]y_;:ɿw}UuQMbJEn߹Ib> |~-{þQ֕2^E6JvU޳ sJ_8dDDlo 0 ˔Dוz6 /#ouAT;_\5' ''3jֆ3 ݈;;o[ <2MdzfAGlãfwq2iIHWn&s~y#inTGӠ޼@C?ȉuR# F *V35Jc['/٤o֖nf S-Mn!:^X2* ʋHI=^U#jyi#j|ԜK) $ߌU2h\07:[#.<~J:ϊZ `(`QA *nif*2u#~!G,a'"gϧowp M S.-z(3:E?!A04*D8RaKjVԐ8repq*W@ ښj %Og_brEPYZ.!c7VB!HpIJ>,$OJ(Uw`J3dqlhk,IBmF` pkySJymIac<|sxY20R<1\1d-y^"r&o҂ߺw\*8҂6X?V7eLs1)?]q\j";2@)婮ZkفҸ1`1Y[D0*u( #28mf".t(SK!hE8}hD s5 7;?)%tX2^mGȭoZpm<ƛu؎uL!)xAq \O28׭@jP8*a b1a nՋt4 fbƔ ̢.A@f/[N4l#^o*ـ%, +IETA;jQҝ[%A5yL\ T K՝t<7kJ [_)ZTh?'[Zl;yfv7B(0A1OطݲyF4{0|{(Tpvf- 0㿺^}LG;1_-(]Ž ҊwR="k& :!ES$OwU 7Nt Sd/p{˽!aiT W{7_ѐ#GwBpy?)[4 J0vC10 $F 'yF!GP {'>+3* >])/ 1枞޵ =廯+`ŰȈ#󩞀w:5oZXUh>2jKUX#0 -!pEQo~>o_fa:M P ;eӮL3rLd$WםT*&! 0ҵ莃rY < s`0߇=<#}k7:,;p;vZůP4S H"=bzB rR\aY+Qhw1`&FaY._h;hn FDVFƊ;#tar MfDdú|aۨ {SIj{P7"7*ŕU".q6Y]}mKn&fAמoX)Q )\ _`=apfQx ]QVIml` T2)ٛL8ϵ*;lMɟyus, H߯eD@̯7U%dc6R?Ci2$AV̴ߦRJL2:FoWցR!n%E5Wȭp-Kݥ!7L1!D@}^d'E7`2)ΕeAl¾>x`sco^mm5]e\Z+j2/Gk$,40-CߤR ˾ ?v *L 62 ays]EPEyj𓮝PQI/ikx ͧ۽ =o3LIbԑr&!!0vp,{#R&K1kq=?|rm{~6^7 ʦ'J!y~B%l<'7D Z|AvR6.zְ߽⋥;3% n^ex!M~KIT` VW5}O:{zfRE E(Hb"F($u~gjPue9QOgߌu+Y\lټm?mOvh ȒGD򪒏ȓ]H-Y$N]L`S!xp,Pm K'O(:*N[);VCK4rgA%ܝsAVi׻$2`y #)h[<%}u_Q"ڕ_th0AخLmeiZZgV}QA@]x}#N+]Rr(_pp#hEeh7w{0|OīT7B\2LvIGmZyW_/nKhl;[od `Aj=ó‰g9C=p5!'oO!xcrɠVB)l[!J$B]dϫV/|"nf6i2G\AJ3Qӵ)oq 3'1wIOфBGqP9RrZwjrQff$Չ^H{ֺ*,y4F;ŎXn B, 庈$mGhb?FzȾI{bUrpye\:l>y z;-+H+#\Ф"B7 1Y) ? }CoC'>z@$$馄NMM_LEQͬg.3F>R9B[w^V)jdd5?{;$yunimxWa=  \8F$MC`mc۱R_)ϧifj԰kHM|}$d dUODOY xv&J9m) %\! qd_ r{Fdb%c_+Iܠ0i_֌}uj ʆ7ԉpN样Q#n3t.Za-IխCp'@|nz `9d+? M6.@m^vJ:%o%i{iw)>c-ݟ5Aכ'ڕ \R5#ϳG! \y|\f]Zk!:{w~26O PL&Cv^\vXY[^~sZ>LEȟ̔wp͡+HhyLhX`M7cobGc?jzGY6//|870$nNL|Rpk`_Ҧ1NW<5VӽgRXO-;>΄*t{Ϸ^=2;vƿPZقa7KEPY4K`E/~@x)JXt6Qۭ_c1{`|*Am+ĻiY2実+Qךkѹ  H@DW#2;/sN 8@LxQ+Pl7#a!<\{_dʕ֐C[lkHx * c̫5մ T@JPDXWb8p9u6 p 5Uˆ [Q~K8#lLAW Jl M1$$ o{ڑy.̩)PT^ZY }~1JG-DfPtKdx| V 31n*uGSJ^>U;-CK aSN($ `^q2%3z'KNA h{.Tf̱P#g0]S>3X?|2ڠݼPJ,ueɅMr&o;{Uhte*L|Lֺ K$@e36$QCIb*;ZL3EZJPHH8G;OOe~[:]? \ݓ-9/Yݻ=6I2%Т" ]G"'P;#v"OnKWS3~-_ }AL0O8dE5 O Ik}㒦3URh51W?rk$mU:c8 r"J$ (9~{ *'қzybfpsVD"_rY^Q ֨bA͖UB_tH?'Ƽ!0⫪n/gS^h@Bx~ϑR)e:=2xc"9Ee!hXD ^sQvK9S'>l Jf ^3!;x_Dq $POCgc-N'|?P`dhJV`T}Nl%m5dj<=8{Υ8CǿD%9  (`rdC\aJCsۜajYGC)+KS"Ϗc}:Gowqa E6%YKw6J%{02Kv&N/"I!5&;67DX!%UղS}84ɖs!"Y R e7jUbMV;z#C:5m*gN%oyr`1uxڇ,=?h,]{Y7FVWU@Q˖'tSO_HڛJ#H:Z(`V*j KkN\:.HCbp?HEPq['9f8|f½$|͙NEuS+hsѠXf( 4=2䞍ȗW8Wmp:P|S'Acj8$|*15ҥlYNF{B%TtT_v\\c )G@ 2FN ]ɰ@lC.<vl-Ψ+SuC_R+%# Z}L\ćl,j!}vEAg /}Ϫ:[ FFə@n > wM9#%FX,:hsk^BcNJsM0,#pUu!5e3͘5cn8ޮ{K !6Rf(Ѧ<C ,&A^k=ai1|\ß!WhD2,ʨ(swc9r6rJ(bGl]7)ҙ6I$LÝ/]L,DX; RC4WM>lpo /}>`{8ZUɧ{/~(%jx(EC {`]xp@t]Bpd8c)YN3/{M⯐/bKvєkQLyXxZ=ֳG}*SF٦Dr(h4^zE YP=Id6jsfn pRf8h\8|x\U/1x l0` s!;EquQdNu$52Z#wg.Q6INq*i3RIgE9lbe*AU\hTH#37&ط+c+5;4{DJوݿ^gsP}(MT96Pf=ʤ@ YI2EY'0k3ZŐ_9S {e㊸ 6*{+x]S63"H@b}4Znl3}P^@ps*PW[,.%Zb~/YbbO`"6Gv"= 8;N5s؇#nƨmy{DTG8ɛµ)҉⹇1@SbR&: /n'vJtGݍZUvnjKH.|Y KQ\Οi }naΩ8ERN>k*S!m<+8",p#{ѳorb!9[01#FMdF؏=+&FIWJ a(*YW(0sI3rLJGdWC88$~︄'bhm2`g:L ihTƯ|忍HOFjZ. \Ǘ4rmbæ~H(}<}9"n!W IU`ȸX̰ףX-05ħ/+KRPoͧw|2A\Rq s%úEL%φW}DY6"6:]=-Z dž^uCWugt2i\tuQ@'Ȝ0M A`dn?SQ*5>oLȊ#-7b#Ce;ʊ@, [R.ư' {1:.`NW ȴ/̡g,4s07N*,G/#ᱶSq{5U>UWpC>'`\o!Uڱ|" rʦK+{nIg,5EnhFg(/Nmۢ79L;A\ B?fPj.FH6w`'V5{-=Q\(Q3(K3[[ ku9BFz!'|"~S**it`b&A#HJä YZW/D>J:BT&{ yN6e0ۖ p9u'.Þ[m> Z'\/H7oH{fz^q&:BgG#O}r`MI狐sA"%UOu'cn68|>?100ޝl!PgC9@pti5qH,}/0+ìd [5+rM؜˥^ B;ESIyVn9Nm(} `‡cӠ~{{7WruӤ~ŎD_m 7Mtc>ľW;ů5an}?cUdV 7Wī&IcgTMޔ[s&ԹU':1vhR8bי4!BAx8U J uc\nw1  :[`ӥh~Wd2k6dtRjN֓QlN|%og:&MjbUiYW=}qAl!·S0u}Y9/yhnecGF m/Di^2p_>c.}DϮD=?1Q@avJKK浆^ ox;#^u.ҥh/Bc2+`vE&dY \lH"X0 ̪fZX}d*F^6zT,h:Gr&@52Ɓ`ew˨4lV\ܺ2R0*hrPw%&qã98$vxvSxY%Bh!/es&i ]tGi[_ܮM/T8X&vxfA#I3KKNiW혻Hi";O4f81>qTu7y!/H0&e!uCeiS 2;F1d:T Q!"9d"ĀavO,:_N":$1>Wᅦbyt"8Ұ0Ί|9tP;hw`v x wV_z##F:YT&~z'?>$"Y&/Y ').m'y Yb+e܄Yad'ja,K/@i2+L{--@ '4Zn%Njzܭe "ʉ_@OɏWRhԴ& 3KEa:$/,s?6勤h= B?f̯n)Y1WX#]#0~Bh1/H'i*5Zh, ;9áT߽q M8E}26! ђ+}9>Fzy$9 ++5xFG54[x-oeso/!y3 #\YrsSS*Fu"P׈@|qh=f_Vm?upP++2<'s{B wk !ݵiHL(ߢH`.rKĊiÛ3E# @K$>RKI !J2n~Y9M>4pճbBLWz_rd.VCbL;x{u@ W P)mߧ8˼1 tL^>ئra_z_lE|Ab ZCѱǎi~;BM.qU;Ͱv2ƸAѧdH( 6ɐяVUn\N `9z7q;Rhޚ\E M>Y n4ǩs8ȳ5n 3S4:^Fŧ^\wg h^J䌛Ӣ` pIGeCJwD Hy@MoR)¤=$Zv 49٭7Jvw{&c&) "܂q I+)#=kwd!}=87-B²[٢oqEڲ;OC&$wbĞP $:zz,x9_B7xS]H1(Jq5*H|p=t=i0Fgqځls_gI"t35)c$?+dI~Ll0dL(Q8 j$/>$IgC>ԕVIԵT?|~ek,q_,Pt` 2,A7͊Q k>( r_\Dm&|C[ b.m5ךOޡWs1exWՈE6̩n B9&oP)O$ b}0Qc6Sɠ/i\-Bb8GoB,}`\:WoKOt;Q%L ׿}h=zP_gWl ggmAw=E8r(-P]$AW#z eǼ8dQ$SdzI~#O :+ dX~ HG_LBVZܮQ76JжWT>y/?gpݣ޿Pڠ5|2{b: e5db w;L 17AfZ,0}Y?l<'UV$mps 17?j rz T{%#)&$z\]U83u0>F(VzztCDY౭Ҩ|CE2GfgL]],+jp-d@ 56Ꮉ𬄘฼*SG7]+wj6vJQUY;:sUh؛W>Ηlќq7nl3?y!2v uT<1dd%q5/4Gw;jJ%5 'r-1 ah:7sRCk' _sX' aQsJ RƔ( 1MDy4p5d*ʵ(͆z*-FȒes^t@YqʋHB%,= GrO6Viۢ(ՠ9PP `톭RHuqxQWhv2 =0BG7A]N]HRٵwF+]5?NY(%DTiҥdPxp*/D+Y~;(-io-p\c&><@ Q&9wb%bj\٢-g\yvtI Pb'9Ĺ.&5fü(SM Iہ{ ^5Vꓶ 6ZQ 5XMބ%:N BR{+ol<~5:6 / jq PIq垣SXm=/ךּjl!Ƹ5k)ݧ:b'2pAGg9'X=sY^jgIAymMf(W #~ꣴ1xƧa֗Xԯsp/tŦ) V`O)(=|d.7L&Kq_mGֹ(~'Á;BT$Jd H 7uiF#'#<&j\*T"H:)jrW9u]lD5 ؓ64A7^>gV_0L8yT1SN H*{TnsfOEQ^v]֙oYy2ʑcYĨKqapF,HgX)NJ e:6a5ɘL/'2Z@E_X$Ӓ|ͤGhoQ9s]}QI'QP\b>mf0{=r$_!0e77^ P6nc՟v.|MkbdN8Z2lB)}eC?0As!.:fvH s|o1`3v j̊6 bVty.VX9V^:<"0~HVݧ..]]s%7|MmanޑBs&hcM(fh(NZ? "#^U f}>YgkFguj||85jz+ #)ؚx%UQ},wR6i6`y?1Ѡ֜uv*GaL>\wrGBlK ,'d]ԛbsLL ~f X̉)#eO6>.0 s==6dHoFk`;ÿ9?0ڎ_XfZs 6r2y_#63N:nYJz)XmG<6U4g0zds%&Af {/ua^_f|{Fͽf(|ST)̓1 JLh hac2l77V!k6j,-3w<^ir 9/VP͒@+S39U^:WDO:lvU餍 v^JU!Ѭca#}[D?^ I9__$jzXD3_fdbMuNAU?'Kt,ھ ̚ RУ:R Y}DU ԉ˜h2K{PRZx;<7>I%G%*h= ^M~fGm{ ai\H+ْ/7' ߦCoA)5<6(uW.mv OnnzZ4u7,]0=PDUWfj VnSQ B`hו]/j%FC1Wsl=aNn@׍l O(!)]^I *0hYaYHt c7UY6XP,UB Auq`O[iíLoްz^Lcep4ix˗)y'v¸,"\[<6s=3s8e_@([zA+ Dܕx B &}sC\s o[eU/8VՈ7XxceQbDt<\$>gx] ?xR}0o=O#mŭԞ(QbI!Te$pNrek^ D yЊ}-bv;k{?4P"(up}SGrJ?A(LFO=,KU: ޏA_ *7Hv7ԇ[=UCGŝ9>m0үtf=1z-m/&+ޜFB &d}d:Y&bD +5TݮD8n#*aEO"¢xny'ؐF|u7aE<_)G;Gɂ +*kńm`YY? $ ҹM(]͐Uڅ'lK󫘶Pnic!^?N& ٓRŁ"`2,LK~!%,cv%>0㔂syTS %kR(?)(T'zL:ѳ 1BK#9,8ClQn9._g%95ΎBƔړG{.Du/}-%ͥTG#D}1G4%xh:_ ֬._r UJ!^=@L^XѤgcG]Cj9AqzBRTAܢy5vyDp#_ú^DgUcNd$ɇnvf*1ˇ#We/|t9efp6QoOa)~BktwXAZ(q+wPџw"R1T<Õq&PY:c\ <2I_mt:-A[o})[sSwէȥ-ŪxJݫ \d s([|*o\ Ǿ{ܿ9 +(DCNRQl3&~PqmEc VbDf PzE.QvHZ‡Ui0b܏hAA% 82\ ștxpQM˗zSCgb=e&ǀlOaYrDvprD@,hJs;gޠgNe8sPD6+0lo7"x2z5[oVl3:۠2}nū!<@dEQѼl\.uZ.5TB+*s} sQJY~}]kw OՁuԷqZ˻ ȨM%,Ԃ"Vw_mUJ`ZKګV bn^F^/*@Q.jwdVEE] O VdM\+1YXE35Yxtujhˬ*}ZC$+I+t}@x_\#$D)!ݑ2vH2&W۾(L{5gn\S'%^D^"79wJ`B;ww9sYv5ϊ`>BqQ MDav1/_/V&LwkƊ+*7=dfS#$A+\\kuY7f;?p`WT0z reOi椙m^v<F2'i؁Yb%(윊Z!~6Tߺ?T^oxrk!L[PC~C{q|PvH(ROX1C.kntmӆt1PyC=e.ŸkPe:Yg{D)gOyfpinnpF\ҽX5D.wBD@ξD,Rt\8*PN0 $ T(Z7pd!(nj\okqhwI`&r`ʪ7z{Fٵ^G*,:Y\`&;t y#2M1G]o2Pr=H~&eso't=E1HYN[œPx=Hrn2p<9(+-HNSB|ÄȾ(]zUxHubγ=r8',ῺȴnW'!";:RyNFCwr  ,԰ә^Kz78KYe6)j?U y{h"ǒiv66싁x}GaJn#̡*@dYؠ$@71nws9UPrHwLR 8̅S%İ[ OI-UY A%`7'?r.5Fa"U?| BROy(16m*q, UJHbTn! gG R9԰z:PHK<)PnđlZ4oky6@p"i=ܥ9LRuP\( Fm)*m E+߫.`[0lJw̱(:A ?q<@u(] S@Յv8Џɞg2@iN:2?wSꏹO! ۻx{+ p5>z֕qECiНa}YhɚT|G-Gִ:Sy_#_[g4a:SPV*kzfJ&gP-]r՟` "ϷVa3xk+vywwfYR/͟ElQ*{MUu3( '3P ́S™Lc=f|h~~}Lf8Ow҇EX|p);x4 F'Zל.>9^&:5\ۼ Z݄PWcM55#t~04nŷ{8 1]FVg"!T0 znwe 1Q*μT(Z ?Uħ~{GΰFѩ¢թfY/J6U͢NY5qgquD"Jq'E)v5GKrC"!ٱ6z';hע&uת,ed<@-k>)wm(ˍ?/6>% _U0,ϊD,0g?k><:v Ma\ G# VKr&%LtQ|Glx#|i羴ó\=7K_9z'ƬMf$$-O]BR6imka;B.EV{}ݸ<[JB.7'wV)Ʊ}"f0UiHГh\^G *=4}ϰuSKCc/.7-U&eyϘ~#<:Ϩg0@V"Sx.Ȑ#A!>SZ3'祹N:S1 Vv_ +cS[l⻱\ uj֯Mx]9cNͭ#Ro ԼgrzMrqԛEfCt7_-WKJO72^.psmP+v/i:w֝zW6i6ٶgnEnꆽJA`8/L AO C;5_ S,%vD>aXaI4:: Yj)7bHXVːQqZS)O(1xEϰ nA5lwhoWH/ʼnV;Uı۽5<}}m)x#6x7oA)ar%cg KZGʅ,=BOz;:*3k䍼=G-4?VaT3P&β+w~.]Lm~4]sd4U29pBZ835d|cG~H^t?7Pp#љ``Kn0FbI"ٗ]9P4D03>Ѻy3RNPD<;hHrA TY.>N)nwʑ1<\14Q1{[-TzDݎRz.2zUgXrȥ>AG ǩѶ߫9pKs54 Oe:MOw:RW=:'. A95 \A_GNǡJ}Gbm ;^ ]85DV,$Ȍ 8135 ctAH:ZAWi{2xpr/LSN ?HY~`)>sS#@?d DU‚4GOSͽKoZMr"(Ȏl!F{I= jn~ ^,ZY*$aD7aOhv$kxا`t&(nFw hJTY T{6"JGx ߓnmfVa|OOEd87)hW#9)ğpk[IJ8h(b]iZϺ& a+Eib?&`,H}N5"! ' 5LF+%]sV$]}!À5n6CX^R "OhG?DL6zF-giy^΅s9H:>kqz6I$n:MXǸ 0I xVMTD Ӊäz73|ƶsj#Au'TߐqARg"NTUv]6.CG0i |]jS†G+s%-m-kq!g]`"GoǙ@qs,gz) ?3s@؃4[fBL̓ TYǷ$Hʳ\'47j+C}067zM˞&}J@bEjt_g_1PqS $"6ONq8555]ݱI٬P#%0Cf6`r4L}x FCݝAmߦa- ̓JT7&̵{*uFokl3ը1Fu'Pk"$)] /=}/71( vEý5f>UB84$@4K0Ɛ lFvl ꣂZبDT;oFnU]1B@N g:!L)J!D2\e@o_IpQCYҫu+E/? Y~nЎ,Zh+)9Bַ,_7YbQ&qmФ3s#'~QB|ُNRY4W&I 5efƶcgٸ破5 ؆5|kX{c'zԎ:eHK] mT]eL$n͵z]¸k ^(ɵ,].1,m=:_sI%V9270ptiK|`~Dzv10]!v_`>(:͐E\+9G,9'[aQI6`T :9 WQ"gȋJl| Vg B 쿴|#Ӻy TkH.ݲl3|/ʭa $q |JЕˑL șa...a@xt1]j }lJUE=/~$3T$ngj* 穇+am"riTΒNbSby!8O mj"QBmYDԸx@)ԓŰT\hTMi~&7@XoAjQ._.<ړ;&uĊ( e=l3^#+bI>6lhRlGdVsEШnVjF(Cc'.82AP :ТA(@j~|hվLa9fftףS3Bw6C\B2L͊ v!GbZ րSQNP64mmֆ0r"q R McQ\d)pY  M9i.깆l)2`Ƈnu~{L,9HeOs@ƥ,xhX30u,L\ZʣxF\&Aig_j9CqSSPB37gZe;G`K]CQ[7T{-xP ʑLl0E߄d3HYp܀YS|O1䀊ʒ;͊^CIF(_58zSW@[PaZ7KIW@6$PPX~j Ho9^ ˷GbPRBZ6p*PP%Q 9ceVff0i$ "aLx|%/?U P`2DAr]UE7A^{)J@oJ{ _r5gҷmtVǫݸD!MPWkwP s&Z[ܹk~YF25dbYZ苄 #tV5p/qzjY73[ I @vBŮ/wijvѼ ¬ǝĮhb1$lDH'̃TmoPT5[H^[-gn jNMb,B*[XYroѽg,=Z^6&N-}ʹX"j\Dwqy_g=D#FRMH]4Jtvn( %S+sF} 0>D[{=RV5S"5_DSZyLޥsf!4I`RD<'AZNu` NFp\m;38L`H2-St F~MS(goQ5Cr{tDx$>3Oj!u5{Ÿs]NWd#[ϚD#DḖI/}ӭS֘J+-nND[6vɄ92 *mU9.Rn>R@7ӟ:N^Lg9{Ƿ\K *[QV-Er괶gVfBEQLk@< 5wѥ8 0?_!c"ςpn\h 0V \$0v[cy-SevАTR*n:#<] :ELvVp\X{i#ē%]uX{XKHHU-fѺCT+}}17)%y2Qa =Fs8Jn{~lo 29מ܏.*w]<'@rN}\ ϳWҘήNpK0%ԊO\Ṱy-i,7H@H;42;i|p*摓k3|?v$Rgy$VSn^ډ *_XhjzS YF(؜+]$Quw93!%˖a|6)ڱ' A`wCgQ,V'+ :f By}gu}(*::|>@v3Fda;lk.J":jk& `-?c]ex6 Y s} "zwD7J%!ۻt'=Aqt1*{LX%H8¥Z4  j׻- h|;Fz>T{_D}%5>bWdvҋjY/E$~ØzmG`TlA%4܄$^eTHnHC?<J,ڼw={DRNڱ:-%SO%C>f~8jdR1fW1(.@PdrHlG@E<$b. pbf|ʉ/kߢzֵ͒ M"A&V0:wr$ف.h7#ldC9) ̠''ϲ|ʓKb\" I: В"MG+ B.=-,ZhTZ{ac۫8fs?n%U:'܄oy ]; o_ۢ7T-\ 8g>G Wka8qQ \xvRR'05әu(na8>)OOž]k! {n)Zx5at9ڢpHR Zl9Uyr:| )poځKARc=4r5; F7w 훊+:m;2mS0Fg{$<}fEt=(.NԵa'O"Av2-/hCI"oθ)eRX@- Mt$5рrqN% e$ړ[\6ZCjN c=  NY2&LjAKj-BR1y@<Ać?UL~LXn"^It!뽁f|ۗ=1E+P|hM{6KӬLJ mXkVEvm egD6X'Ԋ`Dioqmf%GIq+H;b~o={ tOu%3>ݧO%ɭwF7;FQ1XT%tawAXC& > ;G ]=3ҫ+2v3EBXQwHI l9|iWZ&ۙU ̜MZfO R/SYjEjZ=ü3fa [Y4zN d0>E|1$UH?8ms6INV;-申Uali!K)X&M ]7Z[͍!<CRlhE1i-䛏s@2;f(l6L@n+XdQd;>Ԝ-d;:  .ΐ'R*q.VJ+&UC!=G#]r9L ]TOwu7Ӎ$\>5O #@YKCy#Pa @[܎*ʎ-R.Zq-3*NCUUs:J0 O OsV+C6 B:e ["܎K$ _֠g_$(]HL}&8"2__zSV4mW< z@M @J;봄zJ{UlZFIdQA][R_:*5+5v/ԍ} /r`pЊ{%, +Y)h,Lm8$znܝ Q+{>m#K;^wV-+١VsBDvP\O2/Y6_I{=1NW M(P/FTKdKzuc N~M&wb[+r}TrʌPB<=n\ދۡ漣{^!dg$Inb*8e!/`UMΝ$e[v`/v3- O0=\ 1i!?"MR \`O6%T*AZt/"PawC7[KU5`WP@__v{Vi>M+F^t3d+} ɹbd{Ԅ AD'LcLzibFўdLYF^lۛ?$[u 5c0"U =IecI}۝J.TIܯ*`+[NJTv@]^%pey-@(H1|]Ip>G ~{$,x8tR°2!l}!5dz}= ?j" dd)9SGG_O:PD2HdP=L-ч5%F^M.5~:Bh6\ON/w2 Fsp6mC.__Az/) j fŒ ΀zN|[x GTϓDX}Fu揪|SٸZեnwlM'; hJzѩeߪ*/UJ8'>ʈulжLQl+T`@!MGG+TCYf)|?ٷ){l6rRZ`$Dn4 ?5}Ӡ% up{Gf# fƝn7xo] |~+q3?BLJBZ J\AuɎ 󀀚U H}u+γ e V/98yy_AP+s^1׏>IjeߡQ x9Zu*ܳdAVLlXQI{rǖpYQ>|o/f4ַh7pGGuaAR>jLБ3&P xxύedRӭ9m:PY UL639 ҧ*?zPKeaS]6Q''OMfb+T>:㰞E9ד§NLsmFY {$H_.lNޣfδqș{"BY A>'#h 3:Jb (nSjٸV|I8%Onk)Q|]1Q6^ޛK-W0:? >$&/h] Uȝ)?if!xl2 O+WrU0C}p*]aЬ)_7*hJ *eG5XRkx7/ID+|ˋcXuH@rF3TAúۚoa`4"|vix.* oO' jAlW{nW%: qJa8LP^nU,fjx  wZ7qo &kH(P9c zT? 0-p#RT$Fvθ|>*Y L .BpS^X  چ(_5/-9s\ze\^xV|^T"ϭF퇝* % BmO ڴtZ=A<}{yû87prƤBÁOYDE.H BZÄ \~/^D6Fcoh"ދ apoBV' f+}7ۊCQZcW{];X4PadS^&#etgnR+F):/L-p P^.EyQ.| o 2ssSTw4tǺOd)ER 9qMZL t{̫|W-{1TcBjU#{CK)TR5'}fV=x$a.ZA:ǕA2WUP,e^ {SWZYM uecoc rAHkeN Wo愌$/mu_Dh+sSc${Kf(4j/@ˍ0à"} \b)bvay"2|y.@S~ic8m/+ƚĨ؛R XtطNCe-}%rExї>)4-3IX<*xٱhC>!p9fD\Ͻkg|+7 մӬ#K М<15&R4~WQ9J4+q ^^&A M;nEsm%(xoןlxЗDB$d4#' Y7@b̩jg h-FZI. yg7@<' ?QS)Y̏/iL؉ џ:\:l[d~'Qee#rnO%rףV2 bB~(0+PEmԾBvfG,yEП)dPh-aNqat1E;Xr @!?a =yfwKq(ѤF[$BwfibnvViBM5s0]xԆ ^1ufSl9&UJ$6.E NS/X L(p;%ĞIR ,V wAk2&LXU8:]?gr$rs Kq)6@ ,Vؑ=멏7B@ q}%-Vc섩)3:@ x!P1myQ‚,g__&Yu I_ OC& (m̐j ">"/  jM[!Fa6XpSK9 Rmv%н,8!)Cao*7,nƢ,uu`Pbbp՟d]a:WE u0'f5%}-c:)܂#G# cmr7+dxhH *=El>Fڨ[o-j/%\ }Jϣ۞Ei  ~?c4̬Qo2|@Tms1#u5턴21M,5Sťw_X]NZ2|ɕd0ζ,2r|Y)sa:E2cL&bwgJKF{t Wg֬&d LS:KMdk;8'A?HT2K8 [j{RMqEYW>FJ[Ha0]HV4'7/ J\r5LGWsbֿh]Z?|+"-2'X'f(*kʱ{ Gt_z?')-@ɣcCb7!T 빥W< BJPYRWe_\eM0xaó<ش.Wj> *&za}"Ktgecay֊P'b}@^,ݍ oSxɾznT3~޽Qbr׶*"Tޙossǘ|lq#nIpj YSW* ,w`LLJ{k3,չLZ_ҩD1_/Ú8^ zL9F(Bؽ#)iX@dn|YލBؐO u+yCC_yUd0S5C _ևPAA.fCi?NPkt{>c4R ;Lj|>~55ŸLBUΟ=^L,E߽κo1 "h b0mO[YHj6lz+mT;}n0_ o3=.CgV\7HH/PP&sa;̱Y'G~@ԑ)_4W;4"~-=@a>`Il }J2YAR,ŽrE |BncYW>@{&!ʴl9ӓ޼Kz rܼ^,SϚH'pB60UfiT9כF<88>Nc VsDx4.]uu ,g In$~\?H2<#ʉ +@\qF2q?)Q!9\@e, F f̯!v6g|fğ1Q:мN(>U z2FٻL|xB;@Er'4%xS+XW ,7xZpdtl0d˹zOw_&g҅g1Ƭ@b{Z ;v)Ƽ@&X.51[E\R-RHAM""'t uYG0~rWXrL#&POW^DgvcZz%49$n`䰟RTPiAh%UKIZlTV M{D&5G&d_`_:F{UC9 QZ<Ûilol]64uff"-ߑ'D8wh a`A Y`sV,~F?+ҭ=zWcVAPm9w$Xn% jH# D/ů&w72dkF̌&:܁/Q8fяprQKᄚ"WݧRc+M-@YG%[iņIvn*?KŦێa0d3'.SwWzqkء-s8%`3~q7;p@[wݬm1KV}otJnkXOvt`\V}a߲;uB{!3zlN{AQtp:Rk_\KO ll/b$ td&v`7p溿"]Mf-]P-n@NrlaquFV`Fg 9s#e fHrߖ33%XjH<#A 9k }Z̄p'jtb5ʔaӯ呧 iD4'k2}юیhB/Z^\ cB`}5TGbQF/*)a4b4G44OPOY{>s`馟WY04h[}@ SP3LစWY~(d(fȬ\I]nJ|/^b Ucpڮc(e[¸zLTΌw_ c&k:/l绉 ,(o'N{Ф]EZkfH:8p0N΋;!; 3K;gl $-^KlwQejfˁ:䥡tr3<]/,DcYjwR`9<V|K784JiRtR4mc#i>3!@ON=^C,`ņ7|,sy*(=MaǴ>!XBCϷO@M/%X:^ ߌjCE;]۝;y${`@.QT-@W3-Z._WciZx# f_S6 UӺ$YXڧGU,tg{U+ yB]gLF-p7~~h[Ux֑Qbf*e4$hrxSr2@O!/yq̨tfވ!FK)kȜ0`F~_}5@y]*8N-{'h*Y}U&,ph-nt?i`qa8¬l|c)ʎ#q>:_q[.ǘ?&7]DG[MMWU%M_ifg!*r2mP~G{h߀ mC[k^a-=mmc_`sPC;zW^T2j)تa2̥1]ݖ812xUFqI Pdj(GގؓN+X,QqM@gOr xwGlꫧ ^j(6O8ϵCPMrOnD9YKh~?1n][_9VpAN+wMbu\/%H@9npWBN}pÇqEޫخTxlAv?Ҳ9:k'l0?:뱅-Su=(wHT(ffk!p*+"'ċ1?4tA6(KOaVD";u|8-NӇ췾:L65@: 1a@'a-?DAu<Aa1BUmSd&I6_-2 '7\(=ԅ `0'K@sdqIp?lnC+;%;7U T?xT"oߴB}dð*\Idu]Wn f'M$o"P իc>>I76ȓzR$Vt~m/yŰuόHsU(tNEalKpzÜjw7Ư5ECr]K]\fص_zCB2+Գ/$jm~LklN⥝㕲vEy";eمG+vkG6 l:4"TP^,1s0 M$~߅>-S?DA(t81*͋@04kT0 #GgYrZH WlXć~:U 5Yf-us #) hKіgfzn0!(j,;ъ :,f%,}1d?Q)ߕLMWQ?X<_: r0%{KG&i$)|-#Bw>jءg(R4(Fsd8cq*h.G։pў[MyJ֒,{ Y+2Ev߂M]z+Y[I.*#"\u@/@|Us=L#"\>OFx9qm'0|ǥeD:>9#g\ Ni{*MQj(@ 0P0RBgBwnYnTsGROrj?[,rl0~Olg2J4[ns[]m) ^&H#I}ܾl|{^Hs.Uw?R.!J`2p ܻ*#^vqs:?ig-㇉ܗrBȲ"CX2|%sݟ aK3̐yB I>fJ= 5أj\̢7 )۝\ 5YLE4z]чn{QZBHT$<᮫#{-lRF1ȼ;cf:cX9\yLepYz (K!F ~ģL *M[Y8ҍS |Į vDs(U"7H֮ـoƚ|O  O6TqL3p$ AL5y~#.ݞuN+ "|(o2;2T CCp'8:&˷UYs>ޡr1yA\#q ':v֔[` ~jcZ4ѝFL/u\/W?;ǵY ^MʪbyY$GJAíE騶ٹ 9|iNGΛkU٬N)Yct͠)&&mc@di{duOegû X=Of,r]Y7AcklC2!NI46qZ2TN?RĤes(g.Cf)[?q7Åݥ[Dqx?0YW[\WmgW~B8ꯩ^/5:}˔4keA4Q;,kuɏI%}{qXuiZ3{fud @>xJB_>{6"x2/Fya?1o3e8Y1w">(El92q w,UX'&3*efxcQTmL%/ʳA䇞Kֽq{ZklMAH5bWBTv:I<9s ؛{N w!|bJqgX2Cs@N= 7biFv >"Qf!5ORpʯ>Gsu"\x[̷bK/<2!}]h. ]$PQ挧f6ͯz+ ڎǁDsMݿ g>o&̾mtW $6m'[n#HZD0@!17^Ѫ쁑]" ɺ $΅sQ#8I,6}U{c:㡹U_:Yh﷍eEW# ;#qzJm롮`5@4>/΂?햭NU˓9W8uX*BZGQ'0#V򲢼ٌEnX i>O2oa :~x5svtwbt$ڙs4Q xۣB8I鏖kPR 71+~@d:f $IkxeTQF*`eܼW^Q\IjG~撜-y&Vq>[_ Qa6aۍөlQBlLR]XAV~_.%;ԛʞuv!6ϳsWėtkM qCP۳ >`bY>ƉX\ϸOg!Π%P]9$RGdRpKTf(<Rb]ea8iPv13x׋8=n(a!ӕk\qS 0ι/2Âv4i03c/oXUjv9*U-$#U7^婖|y4D@1*8tpGX}ʓv}  %_n $|~Stn-AQ1y &杹XsHثΑ}%/QzcPlAGE t:7z=P/ 88_lt[[&(gw79u$}n%"HPE22wĞ"tlJrKnjܻɅ?|cT]+mdN7;}x7l}Ƿq'EFtw ZOG7@QX5.[5hv)qgL*( eNʷ0{iB'% R7:CPf? y'#|(WAt!}WobolFG){cքcIn8 n{}=C/^COk[ڊ{eO%WH80D oE}F@IT,Irጽ"zK!SU;6U.}x\3d,H<;2[HZZX|@ъɱ\{*< v_LZ =c[B]sy"G&K9)W kT} w7%~Hcb0D- ^"#2fYUI4yҩɳ(ov~a㰦0V)#$z19MiVCƤ/lZ)%H'ۡP{BΎ^Z$Y>AD:wr~I/k=FgR9#/?BX>N Չ_Y*y7l ÀykD[ "5N?hٵB,WmF2E"K ͆_w_cdPW*i!͖e=ZJdp+}egsZ3?$x5͚f8r#\Agj''R"uFyil{"Fqkdoy!4QJ{dEt6<zV \5J=4LBRĕ>eAhP`+܀ZK7#z {u>%· 'đ4AD0 6еoRi퀹v;Zd|2m=lϲucxJyfM@CsNiu>H o. -aL:ݷ~l lTifEGf$݇ϡ,YcBDcg:#zs2K`Gpр%O,QaZhsllRl_ȿjS3a ;y;@\Zs(=-|p8cO5O: f.TSYU't/IVƛPz UtSyUkG*(´)eGȊێua&#iͩzm$ 7A)lJ6L7)P[2g.?P4*]У #6,hx#=B얾Lͪo% n*'KٷJF܎!LlJ&DT ǩ fɁX>oprjIXnj7X oYlh |q蕀,K 'I Y4NlhDR[>\38t2d鯈 4 ^4}ߒ VOc}^@QtѼ(ۍaz&W`Q <8le(>!խv\pϝєM I~bٺɡV B9 ✚ p& .fT6+029?#HI !!mi,MؼtDb%{sy})J!z@<ˆ* <Ga:Хj=mru.I$Ye jw3Slll=5Ԙ>6Ý4h&(ݑHzjd6G4kikVZC{Yt }e}%y4಺0h?)q.̘P.b} k |Θ١a9JFE!+3z=!1PG9@p)T[a{͍l`!ޛDk-@}J8=+X.ȢRğ6փ<ݤf?ΰ- </8B=vrH5"2-c/[MhDuNBqoJ!KH3Z+ }>KuΟ%g7JO*kEVspbȍtx#X %B!>QEjXvc`|v9=/[󎤚Ʊ+2@R ހ."p HŞ8j3 PW ICx~I+;X'fH)~k̀SM;ҡ[[ $!W2u39lto!./YXH{>Q\svn ,S0r1M-ҶՒKc S;G$)-z]ʷe483R%Æx?<k>y\ͱ]GmGV̓'bYqGwj^F `Lgw,Z^S<ඕ7(|b[ckSڂ`9j::Tusa@YҌV6pX~C!'[=b-{쩣Qw9l[fPvY%E2_Jt ˔}Z~UG>p2/x [412-mԩFZrgrcWqv)sA 4Q )%A04+{Ԭ["Kj:x{S睛 JggJPeэWym̌3S̉1r&ehE/_ O!Vx?x7Iv G;ejH$8J [Hwgrd!wY8PD#} 3/z/ˍF lD`@K Tڄ>Vz#˜s$IT??7B4IS4&h[OLꕷOA BU6CZWsOA]¾ `y—-\ף'8, įBSZ'ĂmЕ#VaSb&+rٮ̵f"Mru6n@m&A-*".$^ky 4cO"W$K X1rA*!* )C=򜘄9I 2&l>*gٜA*UüXayu*( ,N!NQ"ر8 n]&F?(v/^MW,oXB!bZbȐ]pA },`E 8\j~9f۟;(4UZg=5Mk_qB@J-Bf6nأRHـ~7)1H?f&YNU V-Ǡ'(vE*dž/En,.oeѧjʐҚK%aj(Ubm~15 +ضU)J=.ʗ9=%睼} `ZqM%Ik͘A]7jIXw!ݻx'..#e}7}Z2xXls~pQScCB%ٝdkL/oؒ^Qvu% l4RfCcrζe``eEq+S[MIW|[?3n4eYiIgOhy 9v5>^6l/yz #4,)M6c2!>T93: #CH#e"wT8{}=zlyҿPm+1ڃ eH3ĵn =l*7F-xb.WY0e%y%y`v ][ST<p%;~F0ڦXWMZ211\9󩋢 $V\\'@P'љ uh$#<&_}_͙Q/Y"Y{&)CG]S]d:!K E_7WeQgB֜֘+**yIlyO*(=}|YC\P3ĺ0%.>a⮻fǮ9UyJ?:Uz9n\ނ:vnh@a(颩Qa&ߢQ0jN ylGڟ1Νun_#r\{'=nD5]:0/ ZP Tf7IT)3TWy&7DF@3#av8k:)=&z1cuMƟOdZ[5g?𠦦 ccő=ؑ9bdl|J8 #^G#g$]Ǽr'avHV:rlP:sR,_o3ez!5H͆Oi#cyCi%rj}*x>މD_WTxDq׮RʠJmFfDv`b{H^jƲڮ;u&ZX,QD4Gg .MC^#@Mk эG%%wLX:y!TOsG'S xQon3v7e]Y)C! =1ͥ!.@5.yIL+kUyKK~XTdK=}dusr(`DʐI_?WO{IE _ <{{F8wHl, E:+[{QTd01f*_[2S *U6lq>i? tBf<g|c*Pep7ċtcp!96biIR[c&~δ-LC+ppОn~#T3sY-;!"ס]FaSt qLˁfӊc_~rHoӭRofuPͱ3o/O׼S ZdDrU^sF֮qaȧW.{ kI| ͉$nI8R4VdX `nd|T qk +8xa7k{P̽~]l#(5Xwbա2(-ѫPc踿%y=~c,/ݽ%ޡhc\ϡ 87/p80]Sku*'rp @*"J@ˉpVS#}Et%;mH ulX7-GUTe)2_KeޞF/(o ;"op$sc<_&x~ԆƭFhAxJ _DUˮv΂EVqTeݩ-`Z"[d!|1Jn/ c3pԭaDI8c23!,YDђql>wiFS, Z#Tu c)?G[Kf.6T&-ɤhwJiϒ3,s?%յs/q_\84;P}%<9︦(SƶL g$W7@8z5nf6WDn;4VPz3N=.g0b$p{GZW>,Iv{||RL(Q.zLxM5 ?j7EL@V 1J02E+Y@ްrBm*ϟ#DT}TQIaYxLZTۓUȘaO% <嚾S+?LD,=Fê@$cz^x+MmX(PKW es@Si"JUUPveI,'pOcyQC?@j*=R l"/wKFTL; f03\q(u)i]e-)(5)^,Le6[9 7В[1..>(=s`S%\\@=ROYUhC;L@Ghybx0?lna[$DmW˓_|@fo0"^sHK>]hV҇$SGgWoީvȩU<_ v؞ kAyټE"r+]OsΨαQ%;.Fo)aQCj2a[Js;G5ϯ(t{`7؝eկcq[ wš')3&| nL!Cӽ(Q~ϣFb-f1 :@ vR1'ZۼPT|-)DZb4II1vkD|7S>'bbtN%Dw,e%Va<k?5wqCgu20xXKڑ3BzDZ٧߇KWזdA]ccp琭Y $kbNG) U3'k$.l1xc/ "ƱZTGW&[ٔu<67Q|C^;>k 5_,,vnt L\`N|0v&PPif aФuE]rD$NX's W5h/;b=6poOt]& G{ǢFCG\ ;`@%bΜ;E84[(n^b#PjC^8/'2*f]R>藼6 p]1iRW]DEA࢛ 2A {hn?s>i3תz%A,zmT(iuK$Ke5wpU8\w<{SsD sM •( T5\Pq?fO)7*ӆ,LkNlݽuR% 5DQơn5R+:Hч Ah,Mc]5,q,W&DgS?!-(zhb8৲'` v㋴RNj4{oî nOo,V& #ZL('њ@\9}ܽGհrZ/m֓Svd9 JĚxf,N[O\XU%:p1yEM]J DP]^KXjD]VBr++c^B| BMGU>uG{F cmg9řXIBKƈL0|W]XK%Y06pYH@%Ak~5Nwb僦zΓm  9LFXbyQ մn"O2^'x3&N ;]I=R iwEۨA\PyݳJneH.ݏrPXeD|479H[E2Ձ3G6 kv1«[HG_&H?`-g4M}?hyk%89dK@|Z:]yv6VkHX2E^Px[Lib>+:U1陴sjGE1_&+C33{ 1\R QݷɭR7H$+RoOy.>C9.l}lpNr\%WEn `ƺj2Z?|wf(7(/oi1%n,6WIW5E*}Go_Ln݈$4H h~zLyBT|@̱R}Oir rOe-i{NA(Yо"mљNogx8eFԌπIFPn3UYrmHIa!K?^~ʰ٢A2IWд5ă]j_[aWy&64køvTw:L1yB萵A/HowqU]$9<i{9H册23<- 7^WuIP1(aS/Ouh{bd&CwOG:*GKCzD)UqS{19Sj1rhXUt›-X $|ȲҬMC XJ?,A}5KSenM΂}Lb躄DY[> GJGyJ.CܣӋ:]B$\{i>00{:$eV0(Wh!0Q=Owro=4ص3@>wC>lMBM4 ,% *Lʜ^u [xւL;ǂ:zG [<ŒML78Ӓ, 6%! _wwF]abJ6MLXȳ֤NH2yB(}*{~:ϩ5b^'m_wĽ"V6UQ|-Z IVc'YK9N_0wT̩ yFz  ZASVk5D|Aqɥ < h$kp&>FT-Je$x`B+-,E 8%1Hƥ5Ѩ}π 嬣jm5ww"&K(mOtџZ?N s>hhl~TNU 71i]4àUb`J#Swtfz tG}RîKhxp a{Tw'g͊|·M3֪$Dӑ}d/YOMT jxז;|Pw8&BfaXp&:K1-4ʠWhX'LD;+q7׎@ :mS{4)87%׌i_M;ف#Y_=*dtlU_K {WnCj^[9yƆ(8LයPw-\Dg;. ju13i1}\09Y>2-H 1We|*-@O aTLqG=)Kty(dL6% \{g'oSyUu Q.h(J;mB ߨuv'\h7Kƍ:YtJqȌS3ƔtD#ƻ:< `».mdOuGX?[9غ&i2se5 5IU3Rsأ xHj&A𪶩1pV]WwLBӨ@a38$\X6Ϻ!{,8HaۻYXe=!L#U\l.Im, .ôJm\z0ti$5]~mvO4;f/Wڧr(E4&U W`HrD ͤ9iK#ҎXߞkGf_a^"8)4Ґ1n]f ZmjIC}(eViB"! V>N>A U( 1O/U ;"/߼z4L6 ̺: `?hg bJD-O͞GlB}5;䂉B6MPʌKyMLKoS=XV9StcnQiV43wAL]݇G<fB\@W]Y9wL2]0ܝDnI%?qaͩ:j:G| .X*В3͔]@@veh9qޫG֌!I[ _}g2&& jZQ {ث(XXG җr@['KZBbl~'-p4O?< G/[LcS:!.X_}vqTCy^6.)M~ #+o_ZaѨz7N6sE8RՄZq6҃d xiVNϙFs>F$yؙ/@B.^}!Dv#-t L$Yrb"l]#cbh#e!G S^t UhI׎i>X]{ڣP$[&iD\M*kXB鳨Mv+ejʤ#!A=i`yڛbEFej@tpHVs?X`|OF2AaeojxJtOH MΞW0kLl cY>GCnﱟse=7vЎLƱXCݎ&Pfu#ZN2tZk' n<7eQ?z׋|Q-D8~lf_;AbB"N0&ldRg;ot5$sd.r lљjV6g ;.Bwt,3Vx+.F=29A+>aZ/k%G%i6qF\A޸$ZegpZ!; r᭢[GB[$Beȿ;ѤI}Џou]ȠS|O([^RwjPgc[DvRv1?2H f׋;jǼ+jpˍ_^j9 @AuI<+`sU`iAN䧉ӋMRqA*g\od(ZlͧG@Qa8Nضv4.@p\'yXxEM8tzg^e<+zg o6J*3ݡ :~m^>uN}R]8~4={` >>7ۭH+R4א{ҽWz8} :,wzb$97"DpX@WB`1YH8+=PDpnJ"[U]|ﶠ紬\sAkb Ved脟 z̫Ήys>X$Ռ`@GŲg-i|+NiEc]jUYxU 8Ui#5">/*V9Uˑi꾥G_:y3x~ŽpfW|Ydv^$[57̩ޔ"k% mHl #/Qeijd2ir9ʢmRz};pIGPF{ej:?V}:1^$BBs99ydqC[#=qԌUZ+/TtznPFi(xtY`ϒ\E ğV0sg5g+&b[< q}~:eeƌ( kgBJ tMpfllL"}1y,p%bQAs&~ͪXGS Ыmܰ2A%ƍb(KM?~$|r^>FYNm% #K@E8vx .yl,Szl+v A1JG^q.Po0.g8Ig|!|@F\hB\3DD-Cq![#̭ Qx[;h6\_+9꠸ R3X<Ť-1o<T;j>ih5`օK`a܇}:t2l+a,'ccq?oʔ"(_NM<@n;\K5DΗ5=hRTߏ̇bLY{$^]TK4swّz q!W Ӊ/MS%s[2KE-I"b|GņI%OHi:Hؚ&"ChA9\]?'2 RW{71Jw9`j~ ePB0EHV0gJH{M>l@H}ZĐj%]67CC-Jq=4伂&w,ģn~ӝ+"!Ft_*jhf|co87':T3;rma.j_eOl@uW{NJs VR] _vK69lt;J$#B^n_a.F KPDnǷIU6lo4/Us٠S~@sXl}[겢Ύ"-P̑Ty>ᔄg)\C33N|`Nu>'uT1T$+>'>3Xs.3*zgظ;j4h^)6s X#Ef(vɋ[B Mh*"]poͦnm` "ByVHqF:C)pM$8UH:?|$,Uw7~(ivhO( r䱄&\>bAɑCRTP1~OP_EOʇ#ymcgfY Kpa⌧MlJԬ>\HJXMz)y̧фm:*jex aȼ\ C/;JMWj,1ǖC@@t.ڕ>W+=ǀ bGmLdٞ`}/2ݢ002E8z0[im.cyr?;dBi׌S?;  Pa-%B:<ޜpa[>M6Kl&ea%>h-bI`m.9}8>VFЩf"~!{,!<ʷkU0yо\Zy!B"w#!`RߴҠ^0++~<1+pSR>lo_@kXm()؜┱a= JB`a,sFӴ'VHBTjZR=L܉%"YbWK7 6ΔtKH#NĞʙPYƷ (I DCj,w"crv `!Kh+GXd܋3v*t .^/^yhz FHiѨU9<ïC֠L^muú+]L>{RaW%XD„,DS2Oʖ* F_W +L[4UFU$./t6MՔͨoC9s26d_zLLڔi , p4ukx9ߖ+̼<^\2下]%WoAU>ģ_%A9X`FTbm<ٴ~/h&bwFw8V0p]LPs (O[R߿kM ke'?fopgN+AśOwrGQ,σu{nAկdh[;;(nrj_)׻Uy_>}ʂ.>ڡn!`T6A  Ng0cY_Ѧ*[B{R)Q !vA饸. ٤z%~1_&G׿תF x~"a}ū>:R0u+iѕ XO\NpQ + 3$Y|iy Fli_`ÔΩR`1xL!h *gghXZhd.0!+9m~߀ˊvZiEtU$Tfcm1m^#&zXߛ]')97Cif>>ڌ| #j3Y~PQj:Vx8[W"oس3U!t_>4-C;Hk1{U҂v6D#Q/ 7]OJ.˅CJ)lϯn۰gucP#>dw0Y+7vYK^)X) &N?=2s|c2ޓh/EmS):'ԭ֣nA;?4=C[y:WsSr0O" ؐHroÞ.4&#zGk{2w<61,9ZT&27SQAuT2XlKe@w,O]̦?t{.WaPP^d!ߕmNI ¸=4B[TK3sU׉#q;%4B5xRMd[Ɉ2JɱS~kN\{ 0sކlOOQ5rݙpOCGN:嘜װ (޹w __WzjnJΎ@U(ʗ並hϟI7JΊGiH}q3>{*NyRY|݊0m tk<=vDؘ?U*,]\+JEgcB.6CfbɅ#L2Ҕ3j]4yπՑ!O`-'*s9t_I&QI)n0fǛrwҨKWƬ;>SٽȎPYhTʗT!D M+g"I|!8V=EF?uދ X\qoVt*x&r%2@R'WӘ`&p>z< $LDv@rt'q*]G :=-s%GE`ad.՗\Y=Ug%E4&8uvZ EͲάF^WKDvk96O=\Laj&̘?N2Pϒ̠ى9Gt$+8TRU2M2]ޮ8㟾j#TO&^dHdfA|~f$kYũ{e?>d`C!a ;wuK Ȳ9N-)F myZU>'ܸY397w(m"Q\K?^kBtF=tPG;pp*9oToW%f嵎CJFAQzJBX9 lFS<~:}gz,&TٮJb^ xUi*~|ppi&i'Nh|ݱMxEt&TI>df4:2Wdu"]SiIN%B,D}n?>(%FKsR86k ›W\{vE=qL ۓ-'*qMn!ڧkU:jcr#KOKCMW,dx d#4)0ta6ŷ=&Tilyx 3&?MU k{! =i~C, .rH>d ĕg-1iU/~P?Jp~`ӛ<>x2jqE͏id盉If&LB7FcqSAd!lҜ5ςt{>1Kr4uFhS_< 0}gz2M摝X^U(C'"C-ϥWAU@DQT|.+.uGoUct4^xGōgN%B,ҟC-K8~}ƜeR eܞBߒx*GMIElVMj̻ܦԘ܀؋2E&h&F^so¶0 ~Fb!Płs9%u7ZkJ& 9k%k~/_ S#Vw$Ms:*uА1//o vZP&kA"sa(NiU~_9]ϻ:ZOӸt,-OQST#~& R}zL\'W9qQnakuw >f qea#d4< ;_Ip=C6gSHF17XVz>jj,jk[Ӳ,LX?N! 90C[&oe>3/L]%q\sNMd! V㜞T|pû G_hn@uʈѭ:">%ϟ:5@!7!Fh9"cC7ϰZ@lizycv'O8Zq&?y4Sps䪃79l&Iym r:T9U}t҆.>ЧցX_'u?lI=b x͇Ċ'qhdZ}>Lh 'mH oݷ}w[LG  W~pO:1|X (aO4TcH=gcpk /zwSdxnfYl$10S % v|D9 SUX^U WMfxK8l{^MV,`9Y/hf Oʟ$^lKCvYFvEy)i!3 ^#$yS3aMiǹF9XbHag-'j,nUâGmz,O7Dl2k))n4 Vmzm,a{MԦiMRT_X~;q6wҀɞh,LF`vHM3 uC/SPٕZ.q$6ءں?4B/GI3V&ߎ)\W:Dԇ}_bV%:VV:-'SNPj q y6YkS`HJ&m/[.g2c@ݡņ pሽ.R'&|LO1%0M_L7Xw=ː5<,S˃=C8Z{0:ljTe{l.1.OtEzR9i~iVF9;L#$¥ӧmVl)x)цn' _2 Mw (uδu۪n*4n ˆi?&dKd^+k7ǏKmHFKrF}0j_@Ƴ_NʚWBr-2/$h̺g}+GmN}O'S< s42 &7;GptDw6eCX0 #)sg8J-4΁1܊t5]2eN m}v#k{0q6`*Mβ" pil1֐xdM@S,dR)hmhcSFrH~MKm::;M0/D*&RtfbuvZ3vI%ARM)*鐖3ܽ-L].qݫߜd'pI_NLd%_fljy!.VD[. |"8xWEZ ;ә& w7r߂z]nD6=_T坩aqRh `@]j{1n j3~uthE3bÈcXk)hUZ95XHaZG}e,@3+Œ9UّS}W@t y$}ڰv"łI[tе e .ΚQ}J +i|'"x΂BwkD\3*(ɢ3swޕ6 )dQ@gtZ=1<YN]}07iXI&KLL=f$T"#iW,#yQHՀjMvYVS+!Xu!C(Zm_5 ͦQBb̚n0c 㴇&l\ri:88HuAnN', ")w cH௕7r9'RxcOKV[V ´?9Q/<REh{WI-IP*xx^ >`يm/GnP`qqŝQКe沭ITb++,DQr4Ѫh51tMڤxpy<}DLmIG N0]ȹ$77 &m>C/gRe+ [{n/bFC=*);Gu܊Tc&r!L5n`oK$/3 XNQ%i򒃰UP&·?OA4?C3%[EYϛ{.lSGK9) ! R}p1~>_l+e7~W@^B+,{^By} ,-G287TVnp^w!YsWa1L6 %3 ؜̖<.*Z`_z7D ڟXF@R k80AC3ɽ*@rTdh([sƿWS[%GKu˸D&U[JO|Q&xj!BI *9I@4ꮖE Ӆtԃbk2!Hw :H䑄~MйؕҘ,6w&f x^'Rs ݙMtDzݐ$K hZO*tO-vx'MZr}XQͦkvQԅ@#|MG/m5F~@׭#OhVz>pAi2U>߸]fV/_6/}|@Zj\ a*u4OEZ xR u׮Z$83`rR,xUEQ(g$_s.KMq;߾:ɦoMq$eᶼ l[ {j,.R)9<3U bt˟Z Ѣ%sJFs-h}œnv [}jJsv`2.DhWZ)*F(Y[3s{N}o:cky<91S@k9Ͱx\a_MlfxUBH> BMGnװHYb/mn›OӶG?xjgɈ?HJ;ӽz ?$"…|[ C6eVMNA aTpwoVT:YOA\˦]Y鼵jtVYsA?&coZ+$"w+ H)M8ʹA 'd:J!Goae4QіܩLjےV@{jrtfSHKl=љDҠ9ݖxaaxOlͼV&tUjbK<۟́`CNta7-&oq:ܿ+];*sWgٲ YǏeexݥTyO8$#~P"u|!r>9V7U~b7S/d.B.b˱]9jLF px#+r&ɖarKP wY +HdZqejaw6e9hͅb"1?D/@*Wy ڿm ; hKZ_? 0vA;YYy43 \(xvlS,64Q(C2pbFȣ\R(3>IVؕzgpn]dZo\`J`* >q9XjޛjݎU)]eϯ2Ԯ 2pc|O)j_AH{?NqA+c9}$!6ټvlg #M]`tY*KcqwQ…ƪYpyRuý!v\wFFR: D8KH7q*gm\ܹ)H_/UiP0=W4ָ" d{@QΐJDQ}/B`vFISKh/|& e=lV?xH۽GV97.jIIxᾕơYƽF޿wtXUNA)&Ws!ɳ¢!/RtG<LMko7xِu`[T DŽHpD/,2g7a$ͤ(%P{Gº P}\f9=[:q2#3(}^^b< {6y-1ZB"dKK/ҙc_MǃԱ9Dx)+/Q.LƕGD׬-s` h[(-A>^Pzk98$j~t_I J2R[sbp[$,&߿d(숶Jy K=; 7ҝb*h[/b׃j[!CE6ؑSq49+c&PAb9d E bi=0G}"\&bAI3*T  l9ڥ|\z4WC #K&F?CFM`KS)XBѲ)i։=@*>CVe\& aW;_|S>?O3ΈZTxVA,s@=Λ|s3H%#X>e1"BGpbTY/H)fmx* (o=Qv&= WC6{}f$Zj%hDMD@k^&*E|)bc8_P͚]˘aY=S.OC=˴ vn2Xp(:W|])S xߟ:ǻ9A^m_rdWʟLO&E5^?#|lEmlM dhkeWkđSt|1h4)M y7^+#֌4嫋?z5 fGo„P5cE" *6~4~bdty ~eL=rB):$k: Y'*&}$sQu珜UP:R9 j :6bMdǜ!C1_[GY%aA#2 fjf^z¡ãQըeʮu$Gao2a/F?wsBdy.;<썟] bDJޯh7㼤̐eGZإN`P;2K \U_ Mja&K-|؁4_ѩ'0J:$BO: *C]|9r-Pu'xDVtYUZ[ 'i5. ڋ|@u@1E7[JӔu{L\`O ŏ0š- !=%W#c}pRMbZ_92@5>_tI8 Q| d\X櫆4e$(`2U;ya%n\8 I/匟l\#Aó$m&74>FO9C٢g, LBcu;VQ+IEU)9VcqZ)pmm`S?CC$HlA>p]֜"X!_ CtT Kٿd^oc <٤( jcRZ㵬dGdmM]pdZ.["oBەӝQA2ܜ2RjGmӽFK߹>#|( z2lK?/WO׻T*yOh@k+H @ȩ5 fSDXJzq&QJ(I}G?k=G %nuG˧<*$``&wsnҌ\] SRpwZ9qSIFko}Ap}L:]*ϛ(\X@e -niIjl>;e+BpUEX #0):`&y񗅟 ˙}I*6Ӛxɗ¶"-bLj/YM|ZcRmb`] I*㕎^Wq0KIx b7WrL2k*T}@51R CҡT)Jm}$'  qT*3m$7v{V8_#y{o6Ű @yS G<:G{ ~]1pʖi>{"͢^;- jgkY05 ו:E," ~6G~)&`N~wpp 6ESuPFDJFi3٨3Mއ s< .\zuivOoƗs3Oێqgfi""Bgh ГeIݙV6LxÏ$'ΰnA·X/k룠sO^u_I $Ҝ7Qe59^#ɍ.w/10 M5 b-^6l[!ӻ]db<A(TWͻ/J4YY8Y Alcխv` $j4PlJpzt'r4j˒eqe 5 c7yAf)j=NY&12tnMWG2(1&WsE/އ:Q ,w+&|[ں щwhMu4S+:⻍OxŜ5pBPqRo6DH" [#ν_iqG*_;)H}}0,[4nMB׵jNT{8F 1UVZXXrkʃܒڀQg"u9Nz R12ka].O`l*TVF0(vS3yp潭H(/4~.#shR Z!c _&]:]k,FGs&S7$:a^u8)U=7N nY& %m#)i𽂎X 3tBIeouc}%5ꎒY_r|2MkKgN81|{nw EK;=vH"1H%Af 9/ 1ވr>=7oU? FCiHpz #L%:_66o (Tyr7WoB́lhҟO I)'|~VmC5s(2" AWjb`f{֧7Uvﴮ/%|.2PA@¬C]%#5Sx>d"at~{bxֺ22H!lwŌY7H ;3<:`Tl4kɏ-Jfv^Dth=o>Be|Y,܁q’Z#] "}]2:D'7װX^۸&S{0g -2_9,j7C)kd~cTy=ãW4gu̩&o ]z @=Wm(6>-us:tr8a o0a'_jb@{Pdx/aу:`z~ؙTڜ ӱdt{{C M 'X<.J{_ Oר+x'b@eX/dr{+kC cHZ* )RhNaP@Pj-ߌ-x,i+v+DeAz/AW>l$]N~VlC;ͣwj7Ņ+Ma띔ۦ!p""-sˇ7S ;c*mIX=_ "^G9<M`Ef/')\ s퀇Ѻ}F"?A+=]U7ug}NcܓGD 7&`8lA6ZC5@XF$]MxT:lo|5}P%mڇEV ȚUqSe< M6RwYei dʜ*CH|i hHiG8 5o=ym)aj([wp#OBiѭ<9 HFy;&7 nZ`5'ÍN"-˔(q$!f?\rq޿ \~F(i 5TSܛ J*\ζMV׌xTM{j<Ƞfw4l딢,V[֕<}t_Q]%\H&Owuu n晁{я5;܀rhzl_8f3ۚȣ @NJz۟Ǻҋ5>T4/]H8 3ܚFdc` k7%̾SCt:[.͒mqo \´8<81!wշ.k*f6KEa^32.ߤ W),yLj4z^GB=~D#Ek"md޿?'?657[hUq@%=A(7}Yd_0D*BMMPouQEKJkq IBQ#H'`ψ6ֹ "#F1Gf)BRExhQf '+Bњ7 E+Uq=%, @#RH: QLiEyvώ.x=+Z%!F= xxҺAZGd,-`yp/UqNmC{n /J Ӧe|VmZ: YX Bhra 2X7ͤ;[M\PSK&y 0tup;pjECo! wz[\<w|\mEhrW._):…4gO LkPӮbq1@L@xh+LF'NO'/[i]o<:|N%%ir43OYNr(蚌/SyTlTH~OO }~$Es6WgRpENBK&Mq&tHM"$o#{+H;78Fo|k_#\m o6]k@&V߄&0y 0p_ W='#̩ӐPBTB2.✎ |9=aaU4qN1x$^Gj!+F>4`IM|nk&0v:x]x(#Ga<};eRu%  CK Xf:Un'X]I[lҩ&溓q9+p=ok'mDŽpI1i3>gJڦϋxfJ5KLwZ F;Κj]Đ#.vgF wխ Fğf|$P!4&S7{yF6c"jܝAC%;';HOl}J. )hȢ t$?궁NvMT@2ky$ݴ9o= K,A ת!)X9k8n 5S[z E|@.Yg m3 jI\w 0ɕc TZsˢ7jP\ަ3Ҽ߂+ܾ] Sd:>MAil>4:)ܴEKD 4X}zyz VqnNm?3[+A^RWGg̻ 㯡JWvo$Du9yYt>ݣg:b&s41icm ǿttR!T@N0 #`⿎?㱍l7n{N_AY ZVwl@3}0Ȗ FzND9n8hvV{K=ES#i0BY7!#\&4 ^d!+ \o@ f+wsČR-lR r ;Ow u{eAo<_%ٳ՘f[ QbiZ?sKـefT!w/T~FJ"Ȳߨq ?ߥKVY*7J BI'_2S 3&^ZmZKs/IݬWor i=AHojk*n yQs_9q)AjښcC'/J:&&BGcq6,x\m$j1nX]o']Je6f R`xhIFRy agcOKt-t9=('b&KQ7vC&},aMbYV0&4imWmĮ -mlG|[Hn&4NDqCk%Ud>GrYS P?k"H9;;f?M9 aMbWM>>@4w臦LS%^\5)(W{ǧU_nAxgy7$>٘%n.:JwI.qBGHp ~_t]$/;7^}h\F`P/b#κDϗ/=mR.NM.#z>? S}@MO,R; S7s.Hv ܎Zٌ;H7xԴJdN]p#=V3]aM1hG )&|ʺAkӼoÖFlj7L'ἝiV+\~IP *ժPdU d܇b+(C.ԕ!LV]J.j$e-Axj<TgZI =d} 6!Rc0ǸJ nP$Y+fzYTN|_a[jzJ?-"KHsۂSwʆ-f\ UrJ+(;9[P=|;):آi_9+hxfqڽ''FRm,a-8,͝uui]K @j~tI]Y /UhyVE  D*&%72`cj\&%s@غbO"6L%{K Ç2膩q2G1仂} 8w/_Q*x?dz)QBW~PJ| ?fV,$fFFddMZF9Vȑ*=նiu~Lɭ&ϙiyD,MN50YCv^U J"m;BP!u}ЋVzP61RwymFlaW|4X3ي{&DrZƚʗǰ`Υ;:1<WCY>3o==N BIIrY"% lG{x?ƣ\!x*c@45|e\Wi|βgC9ދZ#V(t '<yٿM1ve['wODfkһfמmNnf Ëh[=˜:BXsyv_8?3r@uٝ^ ?t9Uh|J[!1 # :C "dL'=;xdy&e{4&@wIÅRL'$ $xP{+oTળqe]*7A7 k^2")ÐV 6g$1`x#aNwhIѽK>|>pQpbI`G]GQc1C$&d<$o @9Rtu^m 3Kx+fu,ws5r%1.a&(~ooZ;$gvVd:6߰[vJdΛc%tNA//&KJNy0ݦo*VtuD*٪<3-c1D1TlG:%DnqR,fRvBbHK&J8<]F?Ӷnf$i8@"oᄀE}gAj -{zOcrrRM H'?|f8?v:qt2רe8 'xMC]/"#_ZusTM$E tH7 ^|R ~(hc^㈥r(7~#fhXb}W%7hl.Ie‘x|AfpE=pPG@ 5 kCnxEKͻ GtgZ[а, >ezcM}%ASbNʠYϯ\'qB߆ܢ@-~H JLu^yp팠Pbr6(N(\ ߡ~c^LTS?|E="[ws'uD GCDt.K*cDmS[PNpQ7lc 4 C\T&y`j݈8sQ*wߏ\L,u:Vkj6= ){{uMI f6W+qT;`&X ra,2įYͳSɧyU2M3C Y8ϩ,l0jJm}dTB@;]QȻ3 Gx +'f24 4]Kn|;/>qF+ϘؓsBGVmTTǂw]x",W;sp% اY|kR2p4R$9=gEQ/K[BtA$ K٠(p$!.,퍩4$ QL>e&r= myTPeDmqLK"@8 __ZdZ77Kd!IdH+ge&z )vtmۆD5$dOwq3 hJ⻺)/MQ=^u E{ ;p)0qЫa+T ,{Yb~MdX\')dMs2QD] ݯ W0vEf}9`-Ym4x Ӵw-ڄ[pM\gRVZԻM,APHزU#se&cGj1)^_ugLLm:},۽AxObW|qn$9}}'*7蘎hU"Ktia% 罳H\,\{!h:'?{a>m% U)s^0aı;RLYם!BQk.ھ:i3E]5;qI&@}{Lk߲BW,ҾZ^9@6Cw_B )M$!ݬw&A^]g_28G# o#x xMXR%:|#@"덏#&v(^B"F$#i/%Z *(Sqh')7̑o8 qx&Y99zJ SI!ylp@RE+u pn)CNA]N6]^vF`Dz@;Ar6taϚ 7i`K3Dxr_$5 ןWYf . 3>DZ@0Yt}~"gs ΑDB47m6y?|.ul5(H}0Wj% m:Pr'Zr'`tU}wNˬ`N&#r/4yTwjfPzeo -W2H/?)|Y f GBw2b ԕe.bS7k h"ŋ1°xmǏ\ș`bt/g4ĦM5Scy$yjlZKkA+/ѣ< gKV` ّkԢ֩tv4)f?IxgOܢeߥu+La ,6]s'NK h/ٗi6v,wH&.a өgf4{ (/:j^J]VWQik.Dߨ'5pq5NG< jeB:j b/"oJkbJʃGZ!yݙe!iPч˙ʾ:Ȑ8SfD5!8Qo{6됙Nn#BDqZOHP\v)B"MÈRe+Pʅz3Jֱ\Y7WPؗ%aƹ 3!ڂ8 Tz7kj [G__ NxN ȕTFw8 ]z~Ew51S7L_6'E&n'=i9pڈSд0 -m0mM3S[Eƌ=&N=w9x g Ԡ]t0X`?s}ѧ┼n\o:g T/v!64mCr~8Wx#rR~O_z37?Ѿ«SYsڙmphP:^Dӄ0<*XhјU@((Aݱ2 Xshq"ݱB,[?;Yҟ$U`=JCӏ%B?C<"w'&~Ix+Q41YXIRs6܍=5J_AlR'>RRU?~%ꉸ,7$H s *ER' M D߈񩰌Bc򼖊̻jbk|GrClӖ@[(O!^:8q"b|w5L _c--/[ÄI&ՙ߰Ɲ0Z6qηU)7ϨcpG[)BpgA,X.+/Y+F .No k9<[uPh"ԳraVIEȱ~irw)ӥ27M W)7л! .+{s c oV*n%-Tc!d OeK%Vɴt]ߐ vYo4\%Sv*JZg\>DV؛-w ԍw޳1y D׾A٣N&ϬWMmJ)lakItn]_Nr;[ø ӭy!xEP9tUð)˞u Űh#=+KX!̾Zз.TحE\^KKDK; DS TQKrVMCz_8$*FͱmN.m{z槸卑Biص-RP _&UW{Qwݶ Va y.p4=Ku=4Vedl.aZhZ6Slۛ?%4GDv&?p;eRcE>86FOY$~3pA\nq :BP7#Ä {@Et(7T-fЃM`oH'p<.J_&?~1Tg8'hML5 u0'>X;ɴJ)8aR(Cope" {_U`g0υigu36$2Yoþ-2 "^zsYgk 6r*Bɍy[Xv,  i0C0go&2wG%|/e(_{ {sF$8:Sa*6=/$ 0 ]HclY\;j)/yp]xjN/Yb"CT+Ҝ+V{_erqIKVȢ RlכUgXYVXdܼ"Kb:2>tĥ.J^Jpj)/_L6-R(71戢t5ƕ2Gΰ:9;$({~Rde9</9VwMV ;ZV#2~+<i+͊;DDN7j @ͭ 4n'3N%c+|?B$KE-i`F#9\! qV)Gc+D8SFQQ[Ƶ,IdaJ园eӃHQv DU[+ͩi! .fFtW'IIfC#H%0+. 0~YXD=@pmLpS;2qgZ}EC+=眄G(fR1ok} c\.(D<}+ rl$ @(V9Y"C(281n8))Q a7*%T@v~!J5Y0z^e`ObWP`<ޮnjŌ۩l#>eh`{jqØ Z 42j:*`̙- 5|"rYzkO\ob v,E6 JvǓޏ< .-!BE: g?&a_ f I|8Xgk5jZkW \DY]:9_Oa=r3:MUG yQ)(JRv>WryCړlV|iW1pY/U}Mo fM#uaOA0"HJbm "-6-h!"WM^j ƨ qGuҊBSUgLhnH(8u baz7ntorEQOgޱ|Ym^?)tXW^ 83 S]K(zf2밞8S6 ld~ w%jH6 O\ ?lm/cUDH4:% ]1D@Qs|4f/1Ābm<-lfCXYm%/\HΔ* natv`Sje!  % 78h{lX ^bS&_J)bR_*M_p"_aaہyN%$ګb 7}~KnS -}?f31I$mIFh @:@ߓJ|9M3-Y%Z)# CυrܫжVR5X!aSV^Chn4 0EψAZӺ;@"Mv.=_y?II ydDuBsS%8LXouPS%]"l$9KOfFL ZֻX&ߢŠ @P}~=YP i;>[CYDKCVL#cx+4JzRѠ+OF! Lv ZC4[gG8ܯ-$Zt?ZWv(ib=Qvt~ AnY1 @Ǻ{VUXyk*jɇE&>3_rO;CՂoKNRQ.Ţ%z-ͦ0\FcDoj8qtyө&AӃ4J@G+gX](vB:&F ےcnSoZkUQ Y&IZbk#g /B3E&* o7" 2ݯa67xutvzgF/ W>),6$O:#eF3x(Zl_t<|;M%IyzGeǿUj%G~:YA:qv|Y#`p3+a `Z9S^+['VLLp;@xqi-ڐ igucpiX{e69r'/y-KXA*,6-N3oqMӊY.WWBgHV>l>B7Mn`[.?ouc&|6a=fJ)n|> %ai 7k8ls'=ns7U^͏bW!{9M|n9oLS.; i}#C/G(CM4Ŧ~ɥ43f`"iwA4`Kk r v^]2K@tNQw}|L4ڂjw-ĽResieޟ'C~8 %E-.ܧNH5fU?ѣFWɝJ뭝|$wrLl >kr5ܩ69y(}Ş;/[ャn@õrU˧OS.qtUheìj"%6e,ClU!3׉4[[ Y>*% }eHCQ6o@V!ʛiߢ@{h ` Mgj-CZG)ذ«ԎR,Ni~XÓre}n# /aN0ʚ,F\F/C$+*0;yR7OaV0a':KDzv 뀾6c;sU R<`saK -HE>N= _6P+f FɃF[&y^l5`|!u@a|ppcw)sXDU(:?}WHn+7H#++ܤZ)tLFgG(/x:~&Qja94VtB{Nz0C2?6(GXpFDZwl*Y.}I^NE"."gJ(!l;MIr>_dCF|=,;(2X ƐٔB=i"CՋ_HLӤ2C֟Q_/Z4{c .N2EY?ߘ똯<Œ<"i"PLF){MTR14wYWu9IP9`wobʶ.* 50 ]se PYz d@f @W*ؾkd¥n#9Ԧ"V&漸  (Ј`C&/ެLJ!Ž j4݋5ſעU8&%!5rlk7nY8ՋΨE>qJ#dV%m rג-#Z<ү$lve3Ie@ w$ʼn,Tߵ=X/- DAuS:B%7N(c%k帚Ez^Ij5Uk}0ͺܧ=hԪ[k1}B1cݚb_Q'k,'*,]C5Aj,aX1"VDC5y>m^S㉜o#+OP"/yın+myX:h|7}i(z>Y :X_鸠 W^FjC;N_:&H.5=?%yGz/8%]>92j=`{6ĢyѶ\}F:YޒT<%5㯔b=8eP,T Xx&l;?s+s=\e٠)SɅ`ƛ{vD:#HV|NZHxi+9cxo wZI,;jR5DPXhRUvkGvޟS8ͪf:`s]G4`:FJK|GSbџKۢ ~D6|̧gSg#I6Fj,t(FQ>a.b9khPZʠz]ó07"w14r姱㪆R,9Uh-H qMTQ('./CxK!,IpMNM0թ;/2QNA8dgdN(/"[1IV]_Y_aUksXbWkg2L qu0>x]'(!ң>/?V]rY dC^.JflIO!6=+1wȊy+\i΢ř:2{S Og X3_Ko0X#vJYGAV~ Έt9a y<݅Lä~3*^kǫptWFрw+A6 )#?G i8@O5}ReĄҾЭ`˅&P[X \v;3B**7%ttK$..y1ȬH04IB04ͩ(k#Wc Ci%le/|J(ԇzdgb9?,fA}HW@7UyP URYH G }rU#/%~go\svZ:QoA! }=)%5R/R~iP4yݐD׻ilO ~mޒ)9n0;$ۻ~$4~ˮX4ܹ4fl" (;S;W>}S #Dm/Ya;>L} Gd @ax{<2s%Oʔ'7pE'PS7_hى O+Rbm3́9!=n\Z밼 !HzQo mVࡢ$B6}\xmϊQz4"`\(2ў bk?ʗ{_\ޗ0黥4E: X,"cH&Oǧ:E/JВ=Ƌj/-nE2ĂZQ'Mh /`Yq ]?Tô5`#&)a\:,0mHJ7.i/\ z<X;iW0E372kv$C U%y γ" '`Rm!91Gc1kPîB}N>waXʃ2{EG)޺]GkbW{<;&(|,v`n|lpN¿.DƙC4=8Z}C 8 _ 6kIv ҞbFwjZ vѳcU1f4;7]Ub4ci~XzLqV%7"tjb+=_0_T_ _3; }:I_hs6<0[O >m  AR(8P@,ւӎe;*]ߏ*XCJQ0Gp翅譩jF %^f#[nەr CභoPA:fM pݺBkBi@걤&^~-зl?g߯괔p|S<`Y/qM% H;'~n>)4e4OQE+Ѕ =@G[LЊ.2aڈ=!~a1M 9mV#$}.xͻI:<󮐶QDl 9m,GO3Dd%8ĥ{<`h8.!zKW S;{YuU fK$ #*QO면Џ)J:M*&eGI]8Bպ4>v6'2п%㏳v+Hd1y\Sx:c?Prf"\6خ7L^=l4:U0 bwBB$7M˗H2B@ >, Of1&O+[>] U]=e7grpEg4iX]fo48 ~l#ǔ$I)fmx/'aµ2XϞo5І';07ttZL u4XSUaZV~`r`5޲A~ex? 5f3+s>/8=F Ԑ1S~Mq]b<̮#UԞz@iS/ BlzGieVq 3v># 'xarKf z9}NJ{5 MW_3# M`W ?lI&(yս0TH G)4i! TBhPteNt-A!Aԏئ_/cdkw.3$djz>H YX l.~4 pNSLM.v_fu6G h蘒zX4i5}^dMFC X, jfIZ.,ʛGI\Wh -Z#(p\ɬz<)9J?4IZh` rbf'ww+1''fM̂ cG( )|啷` (ǎN7χvK&  $h-ǷZJ/5]ߎ>h/(dRK'{n+veqh8nx,]o"W[ MUR>ܶs-DbTƪ N0WDxO[ A t!3kB&-`Bq@펦,ב&b;:uē;N `m\:j^%+tN%qɤqznKgDO <K)uS+2^ej¯-׳?"h;JJAb"wK)9&F~c@MqxEBc.'iz]~𹪍K[xZK=[Y-`P*c>7a;nE,wrͅpYDU$LuhH@>|NЯ v}v:Y^m0$ENtq(8k07w+Ě}M,s;-ň]x>~,.:uɞ٦ wK6Sr3h1|Nʱ}F-UVk)Z ck{jXuR||?ܾ a>g7A a&,S 8l”' pU,Aj~AKk` =_JHeN1\H==aTU=$d.jcVeXxP/ۅg~aNX(46l:mZDIxx(m>ZZP 0;85[ŷD^} A`P7lP H|׌I>t.=FglyzIĴUIA;ٱMq goF-#PQdQi]6<@"X SpH~'[cn/IZlfO Vz&9q[0UЇz=w)i>LoUL%J#OYR DOcd'\{[<Џ]2'j4,%!CguƵ]I@+ @ĴĕSƔvs5ZM;#>bkǀU8VeLӸp1' ٳRRe,3z(ݤ !_QJ^9+ {Ss/+We-j2 mZ"<1ќg;p^.)nC'QQSMCx-Kf /NO Q!S6qd h{cy0+) t+=:]V:RlKY˵.zK@ \t7W }9 `#ZeOM 8+X'!O; xV:#`߮v(%Wq}OΡ}q`DD< :7ʘݫ|IN77=$a'\¹ofy >˟>!L.6|'MB1XmcC#XӉGfu1|%ޅW nA+q;h\=Z2xՀn=!á fn"k˖:op]pׯ:)Mv+} ZTZ\}l_`} [Pq_hཅc@| f轝M`(O\WNAWy+B//@2VVW!:#Ep aZs!9#%aH8kP*'(ۀ>n!O⭂ޒ<[A}Sjq5)^KxP6Z۹Dy9 3k\X<Qz "\:ЯCJl"8v5]@/:h>dEDsg?h"-#TTgRzS;A)*A:Y|7qӛR(d4A>yτ wܳa3IaSng{d4 햴vHjLpy@:[Gx6e_RS(2A*"8ԪJ?4@r.Ou|Xf譱F3!b-.})l`? T+,_gV.,R+T W 7).|-z4X=80^hwO\vڷ%lr :B Ӛiߤx6i{ISt5|_[l +p*`&/M}ZM|aa>h=1cv}CZ _oFMZں5#0׶96(gP.{ob;pXp -fHqInkASA?#=|}8&3m8^[&=t1³ dV P*ųX~! ;jH[4P/u2KsdjYC0jC.K[g+MAyή*'r^`l)87 BkL =J';9r;iݷ롓Rl¥n)0O"8ĂPdiSC Q^%pRiG:<,iXw1Nt5grø(3lZ"]g,QCv[&~fO8k)6x%m4') .lak(`+YFOͪ]X"܅NЋO A{# 8X)z1j8(%P`QjlO'{Adߛ}Nl"1 xaօv$&'I|(Hy",VBt oiZd߰v k_#8RXЛlI&Gl!5!1myƾ"$9_j pT7ڍz/jBkgWPtU|p<Lq5R"6^1=}:M/Ԏ B-/&)L:ѭSC4Qg!8)d5d7Z.)p}iҠkD#W 6S\xLygwX_Pz-P]cq =k]X<`Nϊ#M=8SXz> GÙ[;jHa\ y0ْ"\2s/,}B;$,sWN `f0A:ҋ3!ZПl9ߞǸ2gC ~N6ZؿH%}XFgr3le|]F}i%=Pj(쓒y@a/pfvrNJx"^Q=:6K 7Zo՚ Y |T8NxJw4p\$"$0H"yD 1RfC(&I1j 5*JޭjY#"ǺP >#nZWtfxFmm[#T[J@ % RԷV, 8?;U5\} ?=ڡJTuV} =݇af 6 ՑxM2vpLDWTx\(҄~e'=L-4XX`ֿT%ؾ!FuS۰ eT.1_٭%Шrb)s7U>y?h@9~<&am뤜ξ.%S`rdSFG".2%>O@c "޴gtjh^,k:0dES'-6Rᑎ6(=O0`ǕSՃ,͡/Xy' am> ϕqY|'mV/}r~MAdn4gBi(my'`,*"&G&#vdHRbA LJ=70vԪ;o#PXKK̵󝼘K*U\ 8xpA1?ˑV_,ZI5,PK!*ZoK:̿0!_,|ڄ:5E Ƈky/2Y 3qKӞAopuqTA48z⃉xx Q]iK^'{_v֠;E!#}M8_Lk1uѨ=!c&}>@3}5؀(A̍) @qcA0wNHI(&j R$n,Yp|MdRWXb(,`'p!VLY^2AoCMjJ9e<%3l9- 3 j &|b|uD)\c}Z` zS UUZ[$TKCoQޠ (SD9X`)᫝'KPWF2)* "wu+-ΔU(o>-Vqd}:~fy}6RWP֒:THK}Ʋ?hAo؟]2YMH-]`J Rwľ ,7?+ǔ<w;9!:MH ˌqȂUC: ٺdF~I|RVb .}5~N^n1:O6oc!}4d~IQ>%Ɇ~@0"on!֘6kqZ9uc>A*mplnN1  WPYv~^UXNDʄI;RJƒ QHEF ccA0 vX&4|[хK>J|-&Ҍ:%fql| BvΊw"Ҹt(%c-{/ʨ큵t~Mf'l'6EXr9.vy(6jDsø׈i *MO)6y`hW>AȼbJ\)ۆsG.#՞k_?컲1j>j$o62@.Cݦ(%l98grjw(||oH3wTwW:p6G#ȬdB#c.}l݂9>lMjCrnFSgǔ欓hH>CZ-ڕa`RpDm-c fj7i2+2·_͔/ &'a's2Q;LF?ކNIdю:L/lE"!9uGG,TAfX>}s눡dIgCt)U֝)2U:m)podRXSM!쪨 ܌tdB)pM;oZ@ϐzV= +Ǯ#j)7 mBl3/zQ"RHvɷ>WO)=?m_%]Ԏ+\f Y/r }AXy!eNS94vHF^xZeF]R~yct@WgHPQZS}<e̴GIjël g`Tَi<@R-WPo_B{K"c2{aӾc,W%1nSƼwt:WPU_A(_h>r-{kOUZm[§CȚƍm&ó$i!dw120||7#,po| D!*Ԓn[~w)<7Q' пdƂD4qNXaߺ%JmT5Xo@mII{R>ܯ۩zVtʔ'WoP$庱wџ>Ѧ-N)d#/_' n9Y5tt;8sNwKOX^qԿ?=P;|e'aL.;K"ʽ]4`@'zSFt Mv^}jg7/oŘy$[T5^LPJ "#&Ý;"*9ڄ@<|y?'UsrЂzzKw 2z@[wW[7H/$;-iR`ܳ{$+sX7"Ħv\kD'>-$YPg2C&n"in<ִI;b3.-6főEoFMLV-J&= tϥzWkxdآe$'XϥLr[I/}69}Nb6yk t)stYQS%P[kuq~EswpN2,ՌvYl8Qgd4 yi{6U6&':C&#}_̵E"M*M3rjwoʛ)] '0i1n@{k#ґ:YX7+YA|;TT$ QQ U\cwʖU{9Fw^r2GѡH jXG:fM8X{)OD3q\ eEvA|'QH3l]~ lsвBc:}E GYrҰU͖ [9J<#(:^:9̪(bԋܩ>;XOh y1V[]5N!C(| <E%Y-eTO}':'q[rKhkvUu.my| M2ˆXf-fkT=T9yUӯ}D[+wQ&šjHl 뱍\ $<砛dą˰^T-fS#;}Æ&W=xbZDJ2hX.q䴁dux ROW4&~L164yFlJC|\I1P&Yԥ&~6EO=*bdEͥ7N?L30X¨&QмE7yXNa3}6ƶ2Wa>EϮp#Zi)vV[LK6!T5lt[L)o9 uig9/ǩ8n3\'8_JLSNM-S!In)UeGng"tjZ;j1h91_10.}=@_1G;xx8FQC]QYro_ի. ~&8 ( [b:j>|Ҙlt'%3=[v6Yqv MRcRi>^ z 9jLsƲ}Dl -;0NøI\imA=c2+4: _Vgużuk$3\weQ!2FsnXۙ/}HEJƛTziq|7`ڒ84t!vΝPi%,$~8//FPB_vX <| ⤥Er l%e;N1#\Hڮ[bM~uh0ZN12أفVZe"W^X֐=EH4P%\~5`KR|?; ]RYEK8uW@eLtftؼ&'Ћ.uASae"ȡ7d[C`Ļw|Փ/_4ކf~pK3vU8: pou[#9!{Rmѝ#uG_e­LS6P@KoxN#oSu D8]!ȣ#YOW9lKѝmd\yx_LNfnBiXCv{? ge꓃NV6-W'f$$xR%}Ii(P~B!'e~9'7?2i2\h>я2Cd:!h \j-9>נ&U9CW,*ȱ.KէD[6 I|zɹ}i_wd!-Q֝~Y{gM}--H~; ?G;UG7sl* dKrÃwNڮ (sE '>Mi sax綫 \Lpb:|d=STQA&p !\+#Yg(`f#£|NX z2o|('k,QP!84;ȏ#Ît:M.u͇ }3&ݓ5> h p?$q=o19<L+0+PL%nNk=Kan$j CH a&eqo6&sS#Wfď:6IيLg?7IH-!Pg&BZihQ= k]F<Y c ^[ߵ⬗R{P6JcSI}^V(3+?&B/Q9U4rriv߽hZGuk tjN@ǎКޢm4HX7>/KK smP7fV`S~Ge`uHXKȱkA?DwEW')LԽU/7>l!s)͒28{S2$ZOw^ycH2~iEFߠ 22`R'p]}`ݱ>LRjN44#Āi"2J?APl,GЙ eQJʵʸQQ*^D{T%[Z?J"@QIhu#m(zYNkS)Z8s9qo^'cce"vZ3}ٙLy*Qc|io_0WFյV P#ϨjIrMXI05bw[)im57|HT|}ytܑ{zubM qki퐮#P:[NLMl'3"N˰/03mqÕCeW!?KAy_$`jk> ]Kryҡ}GGZU3S5vȚE#wfM "OImbX~u0 O};wS?3=c_: ɦ}anMg|*^c& "kg{=864{O}} >TԉT\6 #E_\e^iKFBYۅtHJCܫk@{hKØُ!fE29~P+i9Z]șyȇq#ѭe,:iMqW.سPi̚]HocS!㪀 .4Y-(`_Z@{θÉ=k6y5byeL5.ƙ$ E%uP(=rq0ƔIzJe8"W[i-OERH^N{Ʀɦ y9ѠǦ~ i*c߉ĊbF!^`5x`|R*ZvJI{4) o/ UllGC~? ,qMyKI/#" m1eU-۝?4WqV[If@l9 D,GGl~گwAkࠄ0PTwOcf9u騷974g829i.EH&:j=QqE{9 tRVߍ[R+@g(=McI7R*Ev6`?1LVh n*CisϩwJLjSKȗ#Zc/ƕkj-v}t̪}xȥ: G,ٙ9~ zeM]B*ZJ8Yf*BJ:Qge|{-I&T,}GX."ۯ& 2#_W+6kxKB6Q?NXk]McfW|mj, r{2wto]L/.70 Ѹ};貓HWzxа}z&EcMW\'WU6ScQop1`ښyl?7$ ōY Y1+2_{o6@i _bD{߅LJ"ߎH{h_SKcx\ni]qfBܓ2QaL\jn1OT{AƼX\/!g 5AuaGPT;/}2o2^k.ەքbNTqX堏A`) GϨq@ "tt,=\,B%e/j=2'7 C^g*Q(U,ϑD;U3PѱBQii|}hEv#WPR^Mw}sx{qtb_ۀ#lz{)ZNp/Ji Pe:s*5])HKf>8Y7g`;gKlf0[BUmVފk?bO}kEux?Q rh(-J1D!͚POB;5uǸϧղ@1%'1322R8)VZI,OcM۷03*KPٻ@"ݵD~|pq ڷ5qZAHN?߂l85M6jsN SP@+@@4Ec)@ԁ b|Nx(YMJ}tJόT: _18f {Կay{Wet{eq&qJl爃u՗@ 爬6s}#BFUnƸM+X]QEwsYI78iU*Wzd9 2vvm>xh~~PKD!f3{L+sh„i,!)m]hV1JA&Y0Φ0y~b׽k{WPoRꈲ\X*q4&BÚ0}:db"EΥL"N;?Nqajbq]!H5p [Em]0{yf^K(l)_ii(TZOki$h_*Dēz6aMf5D8ύ_sLm-\$l~yIdQMwav6#FqR;1=['ƁZ2M%44`sm$Y@ GKk7!pƞœ:}^PM[RFEL,^,_N.Άzڴ&&].vmRT=ڥ `c4`Eܨv,6>UxkL~&rA . 7q>&P2r$)??="W7EoYO:%O:Igu %:tK`$JdMW3H.; sgàm]9bg\,TBҖ6#(HUm{c*-c)X둁)LarghѻsPomw0`*BiыwlI8c@מֽyT.`k5>L}J *WN^̵x\]pW*b1n5(H:enW&cl$!`0ĸvQv;eR-Lu^1qI ?4oW'+i|Ƣ!8]ŕJoVj#1aRWٵY˻@ʰ\Zoʰ7J htX meʯ8s#2?v0>Xϲޮv^ה.`VŴ%~)!uûa( A]]%VN1+ݟ3f̸׎ >eTF3\k>{~cqCBkJP)u_%]6>- )&iy=,GƭD!Q9I{8G ȢJ1rN&:{` ƘTS/:Pl  ,ggWda"|I$l*Lxs~'A+KƜ^%^F|{wu #hܚl qNw&5oχ@?xujT1RH7P6s ?B΅m/拐`Ң6hMC %P)^ex"G 9/f;mdsBwPְmI[^qqtwai oA\}hp̃\BOc[x)#w?W+u-MP3Zw~ItK|c L1E9|Fx\< NGKg3?@$̙=A] nX63(Tr?9D cydb ,F[I]NclAKoSU- Xd`+2gW7._S@HD>`1\l2;CjL l+>9! ;5Kk13jb[=3Iq[E͹9_& X E+O3-/ ##8'1Xu#顅$C@LF*C}xO?Bq~=⴪{2ne1- FIp'>GiH9QZV.]pˎ!N'AGn[D-'^ So<2i /!pE& pӠ[/F @.KΥNIGATN©"ڴ)cB$bh!=sS:zQ8r2mYhJLH!_َLMZU9|'IkUgzw COA #$l'y~nf;7ykb73qx**bwsj+DIv5#SWL;jqnC=q}fĉ9+`Ӥ aF[q?Ey~w88659f.|zs$9d#N?`l6x{ɖ칋7~1#:HK} YR@!+lfvVbie$R0laU%avK$.Ҳ :D:m dmzDRJ%mcػ|hI8-#:5I!AE<"va)ÚHf5Bu0QAkv:̊}ly$}^ s!`,Lg1߅}wK=w:\NiEI X5$ qd{`-?&օe^PRZ$5n hyziȔɚƘܱL$\f&?5g,Yx2$tXYִ^O>mkyE2p2v2c-m*O=4T/+&9N1HdIqRTOS .)ӳį1δ0w>?ZoQyK9+aHD!Ū3?ݿ߸I N2]8 eOD/þ&뽀ݯSM^K~~VT_9YT}I6:u(-~zC~~w.f:$k6)Sp.\XEָɾz7WTq⢋cC[h2+|Cg4C /k=6rEs'B)4츶F\n«;BOЀBԡ]_=&]o`ǖ#m(.(us9ig% } "!;J j.j]Ys\δ}2R0-yئTuHL2dTg&GNXc Gz&)([[Jͥp tD $ ?t#y6u>o Wp@84L;\: +9pYt@XZ˚Y匞:ǚL}t@j );!Kc-|5 O"i-F1-Ml$?TiY?$Uam=PpA,",S'Z WO& |~/iBH/iʣ^qi *{S=z,<'A)nv]: ZSE#[2fCy7_v>56ϖfZYc$2|1Fȵpz w(|U ;)~?myɌvƸ"N{|MBP`έAf{?)vy7t#TMg]& c BHoq_u8KH?>7f]p X>+j;e5ן͆@mEyע*Zhт%8pPLOYR6OM/+H`ѴE@V"i,` 4?5_ri\K{G0a@l%j@0I#{lH Yt^g?! 8eikZ>x<kµ8:o8J6qEs#R\ pE4%٤~sP0 aU̳ r/ k Hv:Lw9]GL-by+ t6maMmI*)\뙻 W?k_։Y*N D{Ud+ՒH|Eq)x-V2?` %5OﭣPB0XI)̇AqPmb 3jE z> 2lx)Tǖ!TG 6 gagbJ-%$ _^mK1 n q9RrQ&㵢cբ*m~>j"q͸J剑RXl^}Ķ~^ 4vAC1ʣVIO }2r+{x֡G8Yj/oJ" 3j4D. [ Y:|UEw,T[TZ%H{&堊>a^Iո _ѢDl +7wvɽRA4!?b{@RFT*a å*5;}:j?ŋdT,_iJ^&5N]Px@m<-aܘ 9 @s}!ּh}T{nO^W۴sT*f,^ʼn2cp/bj%$ÌdQiq+^΀ƞX@u5UiFO3J[THl6o5*ꅶChρBFhZ7r{UؚuTN 'wfi #,d?pk]7'k9U]2OpO}RՉNUd .!^ڮE_*7Xg6[GD5aD(ɷ~ F )A0E4@~/~`f>;㳈HzO#XdX"qh ɍ|Q~5jij5'g #Nn&ّ|Xhn8OET[ne_?['36cAŝmMZ(\8>Si AT1%yGޭU*$c  3Sk#" |GlWx8(o糋62Nٱfv?b(uVy@y%[uRv=(1M1RhJ]gSt16_A=zzUjQ2p"#|DLFRcQg )1:Rtڸ T8)Aw311QK1|~,X57 ϻ,P|"|u QZ6o_ kRA`3?άMT_@0k4HI$[NHC[HPO r8Zh< .ؾ7l&Γ\ BHXaw Am.ޣW|1313'f Ul3?u}5D_K GؠTipٛfTrzK6\)E-uft{h3b*3h Ӣ!D=I춮-hNԮFYۑt.tGX}D耉ZK+`*`oRYVoGԍ& b'4'*hB@2~l-"-*J]~T " `vJ||m.@Xj!МFB^uqeΝ4B_Pj++-+SRS$n֫lZmviHso'i9I R3a/tE B0 p6'k&tOr f ]J~(rX!2juh]^b?QsO?Bo`B+lE|&a&Yp_WON B&֩p_%keXc=pL]ZTnaoXLw&~;-ÒyjD\?Zñr]l.nM-+r Lǯ읭ۋH)w[LJmbI'|Y3 ;ֹV K71f"&o8ap3Q 9̈́JjYg]kC'~( IKEhgKrUX &P#x?〥 7bZʲ]i>?Q 04Sy̴֟QjFՆ#)mR fpUG5N s&VKyt,Jkz&?R] UI2;]IeDT^zgx?<~\,bѺhjd񩃌R<4 b~9f.%<GT_? ؕlP1㇣m;\?|i  -8]EC9mO*CF?_$J^a9<1q^A/r8"]qܝFdxýG*t(gBRy5Jܠ˼E0j|O g~ĚjL[c+f 5iCl #`\qx&CxyZB9!yGq;f t@ն b(.T dl OpJ^$MTOxSF ա 4f]~x*=0E0obVpjo~>v>prj6!N4VOj rorVWnuh7a3` fGn~HEȏEs=m.8:M "0~P-9)ʇ.hG G^R 4q:m!d_Z4'Qcs<.Ʃj3Fq@18ӂ!oҦ p&sES9\ET$2S Ǝ.S>sOdԵn4^Ŵ6' ǖl&pU&%e__/'-U xLUYn&|=4at%Zy5[{yިnRH02o ,QMq>@ƺyqVѴ_t UίfKr,iğ'?Ϯ+ %*g%ķ:W09=˅̮g9蚺,m:LԨ6FwP{na T=H|\0C=2.E&O2Nu r*o3HF,#D=ܒ&#Nn$$zAF>iX2':4˕0[vl6e5AWJ<0R 8~:65eW CQnQ{ n2`"C`1"up(eWNmh=EFcB7) 0y.%\փ2Ү* PM QiN1NĦIF~>c4&nOǿlɤoX?ST{J\*"!+.c_z+Hȷ5аi=pVmUs+搞ٯ5B9fFZ @8)'N.|‚ߒzQ«X0.JrUܚsUM3xQzUoGh;ȩ*jQ%Z=͗1?&l9.xCxR<H>!yy"Rg @#FJp޹mUg\o\0,B3#<!c~ӡ;S}[l[ ?p{y+2v?6/06z$MnتgdR%u^u _&$(<0cX޽%6@g|a"IJ40Y_P9opo2ۭ ]lxPk;b/,t^zyUb*ڕ,CS͏x$)pK[38>!ѭ]Cbm͢ 7X6dr L@yn haS)B@tEb[1,+?6P, M|R26Sw͚SOR0 x8)96lao0}(rFb $ 4I)&⃚IUxôL*eK]$g!D,ϥK5ɒlT>]>jV23lo@s6|H!ixtuޚ0ԭAeM14MͣX:n;J/@0(J6Ơd]޽d׻{ lV3,0t l6qtQ0Z2L@Qo02hoKӵΜhV%o~ۍ^~ n!U4Jv,Ť5.@[ b{^)N$փ߹p9FF ZhlZP\񤈸;/n2v)/R^3`#:?+ݒq;#kLEx[1YPӭ0@"Oߟ@WMO3&[ N!:yXpQI@ԥoF3DzWB.0 f4W5A3. eD:)u L[p7-8ҩh~j G-?cJrƶ~dVm?,r\Q OaAYةuHM jghÉ.(a,=l3ufY3]iܢO `ɟG^@!a~;ObO#)gcGE.bJ@YUWń1YYgjG=9;>%7>U։ΘK/ GzhU{3< m3#9gN5Qkb?fKQ؝b9Y!u8&HRIT))$',D39suMlǜYj1{5|h(n/S [f~ZW Vඝ= >a><we]PZT}@ [:+k{пZ1vSWŪڻ_a>0__&ɼX#Kqt4nb@91xW tUf<exJr ?>vqdyD,S1# a.M:"P)M:Ipp”ܴwQs,@Jxm2KQGjy3bon#`W8tU;?3hkGm* 3EP@Y># 52uYϼ?ۍ|;Y81fiJ:5Y6 kLeo-]ÃV$/£M~L=!<飐mg `2'x5o5HŜIvRmɗaMx^Ƹ |HV;o!N:џٽ7RxV*'^jV#hv1`Euͳo$hr6!J'6E/z]P%r*xo}\ً"$y5( .~{z]i5吼0Z<@C` T]*0{{.ޟeS}j2zށyKN @rjR Nh h8DdP%zfS Tuc[wUf [ {;rW ;j)M wpf6E8GHT-"f!/҉EDp;iqybB .!1ft<^mZqbc+gZ>%Hq25ܥUP T뛋U[&cιԓzZ4])c=qٶq 8*QOcX?7:s)s60}KfdC=#\VU߂v_xO5G"Y"#lSLvQzB`,{nbL56L}bM<ύJ!nD(dˍi1.@h!{2ZŒޟ Cv2@鴰]L}}nV;̍fmT׎6JԹS,xھB.`U[0ԨiihXh<OߠbM4ʛq3_sxKUo@E)ְ"=?$PxAkwB87 y@/獛6ω/S[r:<=g;(&st&EfzxȇgQv lafvU*IΪʮtH9];60z|fsڔ@_$;7?b"<_ri&Q:ERP 5 ȴ-z *KheY]"1Fp&p|{Q1sɎPFۣ{C%c p+.)&ŷ&5%4[Z0٤Xg2 ?mW8~A#GaĹ*L,G#H-4l=.kφAOYS5A73&2w&97?)-R°v߻]d6{EbAsK/ u7m =b &RfEAZjnZro V`.&K>*-v iJB51#]M9#oAd fBE( mkFCoNjdb27Bh+D5Wf8χ(f8d4Ke]23+|5zk(l+fF0ġzjdp+ 0[w,0r;_dz?ܚ$NJ۠D/z*x|cTV/"S VW#)("b,&tg 4:Qސu/idVԄ@1h z FU#}: VO>O ;Qiq hL$B !]!}ₒ*2Š\6nV~wA$Ჳպ!͈?faGµ䫲o`>yX@A{eC7rc24CoY͔杜E\GŘ CY{AKP-L*L&j]8kZg5TjkC7=Ȧ.%&Y6l9Ot=,rҰLx7 }ZVH9aԵu8NP+Lqo<7zט,52}PFߍhezy+q(ʍX9ߓ]ņ.YZyjukOiNQt3}~^</5l㴒1 Cfڠar09%sVuR1z4y7*23l:ٿ<HĢ4uYX+BKrd#f8eı KFKE g<;I*|q||@ Ҷwdr(wnRݗ#x$x'yrH3Y8ߙ)379-5 |~:gUQM;1FAi'"] Vpth^)PG=bs)83?}~+db(AujPw=D\.\7&(7PVRż]6"ܥ={d?72<]]Dg3_–\ 1v+֥=-2Cat^ rBE9"G9I%A]7֬]\VV\X5yr0).ľ_+W.Pډ_<@8.U 7G&4S})!}7,3}.U$`d"rx9ӕ-sQ= 3Ƚ)fٴz~Ƃ g`'8Ϧ0r֒J(.1e_kfp ]RJH`*uO_m&e a/F*h3#&־ݟp* n8J"xwMқxR;x) * 1Z MxR?TguْoZM~.ʘc`afD|w[{c+}YE%MƏɧ!Tkl,gYmҹWX]x1-pa{T1G:̚^H2*IpNrz払cA3Y/*nHKQ T0c ,?waSrZ&,#ՋҧUaeXDk9F]6X r[`2mr4~K9ion2I5FقyòNzud%:psg?(tH$-H짮Y~L]ceZktƱ$) _W r:ɕPÒZ(m7GvݸBΟ*[ rFvzlJB]mO V [~%6Y?@} -Sbyxecw[9qFM Su!bH`G0}vzmCw_| PO`jW~GxQ"4iM3N[^Q/,0Kΐ, 5Cȯv\ZMk8$c\]p ?9‘F g.I;Ox\). ͂5L0Sb%sGԌ+kVl[ lWwz |#We=îQĀ gERZ%qϲ^.8>:/81 B{1к ww\ z&%NZQZbDci?~Es?+Za3Xڂz1qO[l~0B݉gM䁃yH>-xZJWR$aN xn__6-!7(%s5;wO]v?gR CݳgB ?ŤJ5|n@%Nc5bR>Y/ ͌`ey<*oVxv;`A+Wd)l`&흠?+±$D\7 i7ZeRe ,w ~ cl]$k TlJӨ qw5$~, >1%2*O-j/j 1_U?J4x09oH%P,۶Πn$ gq_86i(.=ͯ!6@z~ԺV!U(-D_boMa/R/@0Av<~mu9 tiZ턵;4`u7Wc],{]$ ᾽G5{ޑG= [:n#ɖ}$xyӈ[x3.d+͕շuy:tQ/Vb_%RM1_*,a<|]'rJaMIǛbs}(<`3.ևsXԩ,j:hxK+.ŷ+pgK V >F髁{]P4;5%=Twŏ+Oz# wo+:bgv e/i#93FrT7^5 QQ0L=+,-VuiBSeJHÏo}ノfbuN*%| }taEBU> |ϠyoB 2_mzXDm1o&75Pf&fy@va!m/_fWH~ Wcks ͓/`McX yx+' }&` k@p"*mIh!,%+!&7R +e$:P".kyF*m({  X"S673eQO9G 59/M8">Z+@ώcw FajABc$ agJ'[,N-7VPMp/;H}$ڱh^솪},dMBK{PX[y Ó۵ T)b˞]e5SGO^G"HB6o4j [ HQT+m>;!gYq!u^ ߹))! p >DG*;)\&lJhLzJb 4caXJ1"źK!n9﷩d˼{ő'͡퀾'\qklv[IC]۫gZkQe,74}5=97!g/+}q WT)p=wLV[:[~X\Xs-6H=SNw}ZssԆ&=eM% N<#ƜU8 Vo_W$lD Q[>rt/䖐8;9!ɠY/=+hG]\C_ۚ2g*8 ZDB6]U 4*廩2`5 =yй6rbޫ/=~U.|cjl [;,AizM ԱDF$%r`ydr%Mě7dew傴 UDĮ̈́e;BܦS8u7&S9S*7GTHq" O5-isO<&iqӫΦ8]edEUS\ СUdeu: bIq3=nUl&5O &3ܧk u`2k?؏K Zk%5/9ɝ,[xB:sg_-u2T 01Mr+A2ZP< Q?UTGt 3 / I !i٘3ZXKAhwo YӯNpⴉCnv#ia ##/,-Kߣ:qr.r/8DM}sE%j$H{I=VQ0]9(?*7dfߋpA3-$7H4!kC]%ZAA=Cevw@r#֧f7H!;o憒5TA>nވEVL1S$_`5uܹL!C J xڸ"8d+;m^s nysU{W:vš$)#eIGh/n/$xZb iyۻh\_hRrD2dAEF)g8:d$ڵήK\ xnMS&4жGAwf8,Qk-<ĹIBr_y6Ih:FlW e {H_[ZCh͇;Eǜ/v#WQd'WMm<~goQtVQiJ}H"VSr}Pf}xmm #Ӯ'-?q? f}m蓕vdŷ |Vp[FL.9-RRrtb㋦ԗ@X0ayFr:vB2lgEY8tJo 6Lmq锈́ @w~*W9'< |<cDS!tꚑդDNV|E87Il14mN@/fŸ {u8f}ϥ|"zjIcu"]ট)Rg2HHvVKeu՜pg9dE+N%c!:&iJɜL F4Ve$,{R"J–y.H@d6ؚwY"vvl1ps=}ey2;3ڮ:sG;m@s%}䂸:O"\|AIC_7"du19i,7Az#MUcP7˰ߏg:+)nq[^wHfN7 FRjb J6I՗Zox))B?Pz !xNٻ΍']6GQ!(΢-mЇ gX>Av˞_Z bO B&io\^ ΈV"ʲ/܈v/Z+[2H|P?LJ^ႀY(*>)M)K(c,kXmFTEkXZ;QɱAIC٫RU&So՝Z7"@cv%<{C246Yo? A\)riZ sr/J/x)C&(C>h"LX(mpx6+@:Ev5͏< 6I "A<wNƝɳ h[%tRTeڑqU|)gPSn92I2} ^^R4EHNFtQP(:(>YF.Y0! %~h6+mf=N TMԪӫQ4u@A Oaw {OL6[,_ߌ/1IK=})/{k˗t c*B~9!Vg/^_̩i_ɊEv5OE\h2JǍ :#Zzx] e $e드fԶ7a(Px| Lܙ&F3; ^"+ piAznQ &nEL9ImO-aJ;;Wc!h:}Gޱ$p|dn>)F"Cd¹pU؎NKw Ž7b }2C H&{Z/ DK`pH!)яHw+~%UMڰ[HR O!%G(p܂Ym!Q >LC=Q+'&$WܟkSi )t]OWsI-rkY*$$6m Q5?ɈaRD6EߙmwLh=c:)(moĄ8#R{0:%=]D*=;yJ14zi3&3a/]+x(ۤg1040,nVlĥta}5)AR bTHb~>*ސ>c-^g >XdH67)U !>j]80Iev{[Wp 8ЬXIJ."7kXiߘӉo&Ä-XeYKtf[y9'fVLyF!roZ7һ僜XD<NC12zL TLf`ˏGCM[zא.I2%P`@+B>#n&xUQ3r<̭֩©e`I-CEtG:,0IW՚%LL@sձԮmDfs]q ,u\.v taWDGL.ikCRjJVlUJ]n!kiS)w]p:YR=-_1nM#&6YhX)@M$w-;-Ė "v1j?َ~q[vwp3!֡>K3۸xڈ'=*b`dȗį`<*Dҩ%sE(!ɵ KgվU&G:}JTCx+ͨ:{6M(#WAs_b֤\D=|׳ P@\}m\˨_Ktbo:E] ;ӤA1AtM:Bb- Skؤ`:/KeuǿO:ChMgcDͪ[E g޾y!D B.jZXY W:d~o%!<6H#aޔwKGbŇEe%[)ʋ4Rn霓hpNe+s eq(RdlNӦsm[W>*31ygj`@\?m˸\{[8N&0 *aڬn!p\ eUPZ9 62D)ʁӡc3]E^x8Rw;dOҡ̝h:RFUg ͇IA=_7Iז;X(&wfZ}s4Ԕ8+O =6qD_Hq* j9c /slXBPpQS ?.Q7DD^D.rU0`좃u&08-^u4-=.Iaa(wN-7 x0C.(5e'\=l!@|4&nG2aL>[hY"vx=z#g@/m6hYZqJ4 Oߛ}!MlGl;@<ەlK0^NXoayߖlZ)Z k4l2w(9!2F4P45P1h2WMs7:5Β?Ai l;Dԕvt-nӪy@ETs~?3"xOSXij23wpn'uCaԫ`_+}Bu 5϶.@u0rAFšKvZWA1bMmNAx Q8KzðЄ!{FYMs *U;Jbq0,IU c%H{~*J U׻.x]7x]A:Dd']jT3uֈU8; MX:Ie-gvDQFLh#"*4&̠P!V|^hð :K!k#IQp)RJ%-qd@ Æbh4n]bsE}rsHK!4(m_9V (Tjk)sߝFƍ`Bş-64ԆKn]4l|X`(#|p3XuhZXP3`xP$S3b)2PVjZ-Б; UCm"8uЉsWVܩ Ӧgu.˂Oc{iՓ ^ádEU9+lZ:-ٽsn˭Ńz!`R=Cq?(: be~^M^\E*!}9ZOXOhl `_ҼoicL8y,#C&;p&5 QdJh~bTB.ۚcP[\ ԡ伯mKW+3)mZȇo2?5>@Π^˺׫I?0ia8Pf~'?BV?L䌭c]iT>k]p@wI ~#.z+Jinrhyy@8WDZAEܝY,jn[n?j ;_@#(#A+]}?3T#aCnHߝOXxaߓ^'KE:QY~ 1X902٥MuVv$ R0s~Dn4z CȪ$}TqTAmP| - FxJSq/DgVtZ')q-dJ$qxxhW=H Su)ɯ,`YI(Nu"E*>Lc92ŭ%G5N*Ac1[H؟r~V׃'4l"~w j7*L>5# `^**F,Ojis^<}5mG=ϙV6Q3 <_iӉ^GX y7s0 '6 =;QK̿~n@M s:s%GA8v `=b'%vGw^ם+b~f۬!_Nn:LۓOi5}D mIy#r_͈n;?u 5 rd-Ȩh$u;=udtS]m~Cv10I k7ʤDFK\U{ kx!ͩeVEI6z]{DZ}F;U" uwE/C I0 rl4\ՉU1*%ed-'n?l UpjO/T'qF 7sˁhmWc3~yէ+}>1u USZh: @vhFu%1- 퍒;nh%mIĿ6/}A6y _kEe")6v:r; b[ӮAڝ-57̛O8f0) *'Adu4pɥTKnŶMk`˵T .ZhjrXxǵ1Gx'{.a~\Y`9nzxdhˎ̈́@>t/?Ϛ51cM~Jͦ5nTeao20lgǑTs ոv44P}"yC[~iRkjEE$A؈L +Mɴw9noRxjDEVSirD##R%)V0āg !` "xOW()ƋvdCߨn+&DKĚm21ZQv6ni4 ^/B HFgQm]) 2boz|c B3 {)0F/8[wpinӂsܕ ).Q8j8{mM=5E1"^E@ms՗J0Yc@́vq`etuUJ\v#jkzҲnpijl/Uo]ǘ:a^ZQA8l!k4[\'g.SU7TjbIɵ/B,6#Ͼo<ĤU<3:k)6i0~7u$!Oosbt9g{B$hNC8aI^zG|_b

2\~bc5x00ZDcK76z5kx93/}W:y?ҥC S|Яȱ5PS+BrI3KN/'HY2d7(Hin" ؃8X:"dqy#YZ``ڕI(xŌk% exB]gmS,,'\Ugg qgR C<ڻ껖QͫbUZm#Gk2 J82W?qR,A;noVұc_6̽p t=i5HkqL ҇e+5Y\%^IGm)FT[i:Uscwݕ5 sO6 1$XЕW@"ӷ{#η;XMjr^}B*3|G >3+Be df*RYo ѐyx>\T"%ME@j*j&8n 9i7s?E;pk Tk,/x=19TY?ڙ%R:" XJ̛iD@&Ŀ3B(D=Cl &8+qgLfPw̜]lX^ LQrtVK%wOWNٍ5Sψ;>aG ӂ(iks#ڡqxg2@RKO8r |NergY)A$i 3e6v/Y@4h<3iM)MfoZL $33s:mvs[eHo[Ll$@zC>&Bf|.ԓ#a4g&Ҹpbt#$ό{Vt^ T<cyͻ㴿шCFwN&Pb>}ň~1I}v`)No>frg64|pm rTBgq(,`DYWho$pfaEy~C?z?^p#[ ö"Tc@[eA*aYo bA~O6kby$E:zGI(;e$L/=Cξ+lvWy97܊vOcCSa <hJ@6rg1Uؘ(_јIc.aʦ_pn[@/Ksր ǩ/ήx R|[7qᛚ{'~BBvbw21x}C?3@BjQf<{ /vY*^EwnԨ#{r+t媠Ho򡟦Ak8HQeV? XNhv25bX@d!~}̂05^ eZ*{ϥr|;6نG*P. /ZLp:qph=kIP'G{0dZVb +Wp؉G8 oo /@ :n@F<>_{#o+1B1LiI×pyq10OWık~?9nWG?Xk}:щR4sXG[!GXL^Md]GrJ/1bGͨ>85 ӻ8H -[qە)NQT#N=&YPO]Ci(KUԖ7O(a p"Oyy*]o]NnIc) y~1I |X)# pYINy^buya./LkHRzPiҔO\7+,y(OZn:aBě 28Y"2?{Y#hd&3ppb.I}KAhf^E|j kȧ &s5  q{4TumNdG]nbCy )'m4`[M=י sTT/Zh2{`IUB)8`>iC/?y3X>E"oFU41>[TRPCPRlƦ_Zgĕ Wa} ,e">'l*AX0 <.µ=c .DOK ?LvNDo}_Lj}k0Y"˻YT=i:wl0yi}@[+9:| IS?YGxOJCx(NSg6 -mpp/ (W r@<#`V+Ÿ RÜPf }^ºƣfB--Y2L.~Lѻ-^il?&r/* PKnz0 õEbݝR`R wi|UfVR$Ѡ[n7 W eU $}&m4>CUd+IWW1⟮CA0"N#Yy SF~BѧfhC17<_Pc9UsǨWP {;n6}T7otP. G]!!5}bXa&*V5z?bgP%Ih5#HEp5b`I?F*eQ hae:&-Rмs抷5xjrjU؎;*g3 ݰ4/.sD +#K zN/M<|>%ѹcx(#ڏ9GPz~'I_L˹*~ @.TΜ`NxPZOs_ >AJbWVV/<~Fv*]FtD ?)i qCPP䤣D6[K-YTϬsQݯF* XQ-Li qtەy0;aB_VHƍ /r;GMVojyc~,|N<|9dvOwf&XпZx>(? '-ڳA>?A/d@zӜ`K,la?&xzM/Mynx@3VІ`ztb/P#cy~|&=e*2VdQ-d 26 VD,e7P PhBG zO|X(qF7K~VJszDMF >e@~wyݥ? KE8rۈM-NOn  vyƶ;zݰt=x V?=voj9/7ϠS|.[839C+|ʜkoSEǡGsQ|,0X(טUg^Οf~OA{B?th\+>s#d H6kݵ8f_?">IXt@|ꌦX!A``~VԠ qBW) 꿰iJM4ήʽזW7%v _ u]Jllz*&jK/ls+M 4ʯ4 ?X*7tdž\hT$&QOP=Ci8M>h.8\C ?x" A@vAUPD%Dܟc_\Yjj-3Qnm#zMҤGRD$jCSVLb=w(q= ByfUӑk-UpKε{CK0f+%|T6]{[!!jL mY,suLiyZ\QnXc14bx*,7ɔ5*-4]' u*kKP0 WrPw{ls8^@9->`cC>O@YsܗT"9C/-6t9ߥBHLL.x{er0iYTN~z ?l/ơ՘l(em6|x#ڍT>)Hqvk!hŧȴ T)Y;7ELb"ei-O #\rzzziY3 _*G9K]nXÔ:p̆x|g!;)K[Ȑi;( qf6w6&G~)jF3Gds7ъDfDkϕ )pº8jE$H(#Q!36n%kqAep BtAey5B^F>,:X9M- q4Fڬ.J~[<".(%BOM9_k6&Fy-7ݒE爬XrҺ;:ȑڞ9Bo37G#{>+W +qwh)Yq# ՚ʈwzؿ%fTiD`h?ڀF>)3 >Dmf\1EjTZ1ehQ"i11eN w[Qy{35E-2֪\586jаAz4-b>g܍8vBI6ddib Mbbߞ}?So+"L =E ;bl*saQMKY_ZqN:^.hLy.1T{sKw o>C#6,N -jg5TVFQ4`C-PV/32V`fH `awdyg~V͆/mCqj>S?%+ɥA I2eW 1S$دéKKC4UX,.x0`Ʈr9<<5gEf gO DGB&QIflu=Hzb=XnT#b1A֯9&:!d˫u1a;Uxp &[F#RR]ڼ#%H%@$ >QI!4m;O~Z%j8@Rgy=iZl1UŴiNyi #Ù0) /*OUojVn5ɕ^"G&N'ϧpeIkU.ކRuP+ϻO|@0M4"꺙硅M0*0\iXtb!"0=>m\1Uk'~fAyA= t0i*%Hm#uo{}<ͮ+Vts1_Ȋ{R,.΍;|Q?nhpeH ay_#nKwRNhS^7l$RD~k8䚕l+Zm;5v<@Bp'ɵN̵y$9g WO*cG\9c\[Q?5PY:*&/0ht3}hPȖ=:RCZv]^ge!KU$ s]QqcXp;ݝ i&Y o ŬR=z">1_e9n-85lmJ8`bI(ac [(|__lR=ir ?1@AQ KTʹކ+ȹDyBI(8<讷Jua1u|N.LPDC,猪J6-U|! *0Vi8ktcu[CESF=D?`a8b[( \O9t(WƁ?km]icC1`ğ2R1ۊwBF_\_\`W$U W6ShjHKJ}N?q‘3C#҂r&~О+YܥAG+w= Q7^j & 4b@`-ڑ3F"UF {MJAI+8LN4w.y7RRBۍ`7 "X%~!Y鰃oc2mPCX)2P-Bդዽ9$  eu}'NCt ٺH)pc`X{63YCރN>sfXtQ$Nw/_bsF.CXF5؆4~r*iz˱ԧS"ɲ*5^ `TV'G\U|},G#4L,w4"j@/ N|`X Gc?;Y~>z"@%ds2]5`Ɗ{|]WVTÒ2ܜOOyS}pΒòK" (|W פ'B%ߨf2T|h7F_1 e !}\ 7̳%dbPй5eʶh| Qy\(=Y\ję?3RәEY r ~qRD^[:l"qaq(##_6xsp/b? plJ 1yC_J*!ČK50צvei-FɕXD(8&17Zݙlg\m.t yv|uyC ՇMx$,&EyH(E*n- 1.Xm/|a9S~z!1ӀeAc/),hnq*U Ƅx:_Gš-L;Ry閷n XV'Byk:#qa;WHRfDYxX'uvwbi&62(]b ¶TɖX=8g:VM%ZFs|%XM?^xV | 2{HX[@ 8lcv GA*H .ڇ}Q8"TlK=dPb_E;jz.e@84̺%|@Ȱ kA_8_'dOmz`K^{@PN좲 UlM#i ]3%]f Jӈ9Ll|PyDs9\1$5!GRۜ-&{ʍ>Ѫ+x8V7^'w!mcxq-/-&BYs$m4HLhYm ECQ`#;&.䱵ū>Cʭݰd2\>0aNƷmeP{ D{ k}"-)]1T7K"3W th jP(mˈËz{zpe/&j)yIuM 3y]"MBV7s"@;J[5Zk r3EN}+AǢHr DG P8_p&Ael4sk}@p>w`.8cW { Ke.F챜q| $ fcVqc-f3hWVq)c6w@m{! (..șo)K=+ 𙰠Nj ^Ym'ܴD[^9~>Y҆N3Y{?F/j%-p>ݧC4"xmޥ$vb|o:FZS |>H%1=}!hԇ~Ǥ n<8դAYZKx\K]iy&~&Xl3MG C^43YCdC=U[9$L8ҕXY,EiC5RqF5xӶ$"z"iliNXVGMc=־g ZurU* BYę BGg}y̤fR#ИEeNa*WFf-3 97R@Q&+$͹ cGy(ܾQ};~{pVc0 glS'\1{/U2#ik5>9-111u_N[$Ӭ"`J!p>?Q(+.eRz{VcL~1#VMl2l=> snU)꒨#[>s>vG[S).¡mK͔L;|ZQ>CA<ɦ.kF-fTtrC u^ܢjcĸ%Mdq[v3jx,<v*@Hfy Y)C_v!6c{6nTݜunx'*:BOG~_7WcR߈Xk+c9) y1VjnD\xAkT A(^ /T7zBA1(>Yu,?LfG.8*8,X$) q] - tR rY;<{Db G:<4A70-+57װr#8[oSYhOŧwCMW=}F@TM:$NȵLZC1 Rd𸬛McAe^3}?y؟îphFIE8A=\9v1&=G~̩\S0O_:RTI 9@WZOsk>W[L2q2L,a]4L~^%p͐WZ($ H/iGIm@T H~A0!S/;BW8ߏА?DptCJ}Va_)Aߐb|S8nBɍW)O]è2w% ;1nqFϣ*ͥ!kH].E ld{񍣪ZOSn$l{!~lX_:eh)hs?‚=r 0ި;v@[ 6SuIgp=|l)S@F7lT5/ѯ,H: f.l[3pW6葉؉@JnZ˟$P+$kSN;Zʿ{ Z~uF`l)!-~j Rf~;;gL+ǗK"FǬ$_mAd#LveE1*hpmI6` O98͌aڂ:Yc8Hގf^&-nHY2e+eR)Pr7;t>?+*5Z%sT7a3.U*#v4yRzAdz.sF,$ٮ-.= 0M#(Ұ/3P14ZDB}yj:eRhkv Wx3B뇁tCNIduh)N hgLSIB)zk'pa_ M{$* E4{„" D~fu bu

8pu.!BUZO/HK1`4Dq}CW~ɘ IKY$yu" 2jQ n9~ B X7Icl>"Y o4M"%{Xr+@]`<&Weiam.jhjBB6ua.z!NieP^G!{XK :}>RjsY 5YZ{x JI/Wic5ezyM0j1 w=sgͅP} Hnm~L(/d6!T̉l:Q$M.yZq.2b8\? sXZ]f,=Q5 ?eҸ1]pkduP (Fq`InǦKNY9OXe.kU w6MqkX3|OGJ;Q$+ x""(* =eXѦݐ9iyc2C:3jWJ3(ϻgWHШU1E q Ķ40ƾFɷ˛zōxȩn%%9ݡm&9U"|W#;\"uV6 z>hku~R꟡'/#9߆&!o"Et: AG=U\/_S\RS rKKu 0RU $81r[Zw(ݒ'f glnV8 Mp?&hkC7kE]_{c AI[?ϐnmmSۇoIk?#2mdуwS*5[~ײz}}mUB4"稭7&ӕOGvqϴ_JLn4 +z,E_STz|Ε6phl⃗ʹ{D@Ѳa|=e@I}MrvV,"8I] $#64Hʈeb Of8h jɉ c%kq Bw\3Nu駎g'O"ѥw]#E,$@8\1]8n(P7Bp<+5 g[Nz4K' lg\5-V;{Ӿ֒X+&#~_QHn3DqB,Y5cvpIO)ȴcnU$ʰ9w,T+y@-^ lYo4` j Ƶ_GB]=fM31ێV8jVvo;2 v9?WDx8}k#"{N-L#hڪqOO0"$ARg =l.ѮQW?9zIBoohk1O"wn±%1JudlTXNU@$>uieNߵ&j7 3/*6݋T$A?{ǽgB#qvqJZׅAFc}"$0ԙKU""Gh"8œ]c{a=̦j9)!mvm&.cPMT,9f5:D1Gy ]݊.wުezV(㺪'B~Sp6fSHeKFePF'QMG4("8x2l ;rqbxXvŒK2zI*) (/.d!+\@nm)[ |bAo)YPFx?Iw.f)<1h=iy%'w1)3鶥faNU ;_Al3hOSrq˳3L&|9EKFס܉RKg*#O(x4y< [nsyNXwͽ߰ yn`DCVѡY <7.;818p:eqP{Up MI!$Xq&zPڥNP[[4rWrHK`FUkU`p@1?|/qr9ouCժQ¸iqm{ :>L@sHu>_l䱚gB ~+t(tK\XP[xnYk9¶E0ůPql\ŏ׭5&^1w;4#9ĖWF$2G<M=_[Qkb+Vã$e z)8&(W.mzn6*MdpV Ga)dBdKt7AHj^fWixJ9ݎbj l`x^:lv"D\qERmɟFRbsNh^HlRKβ3d/Ǣk@?TJ'XNhTyhi$RM BB>7yJ Xk l + y?#OmK70NsUT[ ږrd *^j%7HMxBT~`h`Tͫ/u{G>$se׋ 2>A9ٟBGRV3jQKj5 vP`3JW[+(exuVɞϖ;#* Jb$T"qW/H/M]\f!%%x{=% k$6ujtߓ4:L1/7M}+_kh)h8 3+DWSNT_Pۃ1K!kNx 厠νX0(^9E #ޏ9dD?vXuߛD+>=T&Q 2t^I1RY[';#-|@D8\c qxqA,V_&^:D*> +: d#gGP^2?/g$Oܵtt2js(XsC)>wc]t!*Bw3!EAgD-k~=/Bc(I` F8CnVD]8Z)1HWZ7(1zWDER1'1@`57 C\k]*24mֱKƹ׈&֦$Ø("9;vD 1v(}J7,<魂(TcFOE&;{%??(1@&U$lrGQmIyVv= [u)@kp΃\vJ:3AOt&%]reݴ#EX5Ô. ðW%A;wiUCR,kf5b՘Bdwzɖ [ 4|A4X MZ,hPF@:"IK#_e%nKWކ)0:rFOw$ ^2 $4X=aĹU֙bs4+FB1 t~) In7ܢWO٭=-v%3ZKǭ Y>_jq2K5(5̙#'R8]6:xV.xk"78L|EJqͱCn}EvjaݐJ!C%X\yOwC՛Lɛ3EH1 4m4ouܯ%ȟ N +Tk؊E`.~BIY٩_n7AQ>):ݞV,[ZJ1.wڮ'wl%vF݉zT::EL;-ګ&QV.\vɡݖG V8ZUhZHhGga+L;}7e1ªgtBv[n$L}k7olOQr[z[ݏ5H;!cX<m"wzpvcml\*l 8SEk/7GhEDB 5Mo6$kK@soS7uis^CE e ^'S]jTөR3 ^VQ^ڂÌ<1^?)TH7GCW0[hH~LZ֮{q;u &mt!!XZRՂ5ыM1? y)9.A&)'7c ;_4-ЗhA$x_Am?_s_ɻ' }^[Δ.P$аCl!Iߜ3PGWQ ZW࢓̶yOiiԭ9k62 L8T1:49t $.{+IcL$n7`]lTJ­GwA^`h冨2کU5UB_$ 7z&XX~[bU֣xӭeUk+.Tp WOd\\$^ϓOP)CԼH2`r[W,/F+jBQ1!Ùp.&`ߟT_qV8 4><_|?|ep2#`!JfOCѷq%V)[VGJR/}Ƴ!@gEE3U֭m[Ƶ l/2DT/6|#%m.aH\U ^?utT J+J=%7ziI&f$m'%DI_` &Id2lL4Np9 138&s?%` AAEjOkg&Dža ^s oƀZ갠Й$Oxmoš yRk$}+A%iQpVW泌wKAײ*y+y~YU&pkcHg%4K&E GHɌ*7q!Ъ(U]"=?;mwT/`j)Yk"; F,DN{G$b M:g+]oƪw[HP_"n*)j)[m QmD5ݮlj#eA3T@;Ds=S! mM'@/E8VWWBR6Dƌ2CŔpLikZVQ`3 50REцL{U6ٿ']&`sKg{jWT?d( (V3yuJ9  M3Ta\] sk/9\QB @/fiPCx' D(49?23~ԓH TJ]V") Ck!Z|Wu ov TD@ cŤ|J 7Z"x@%r6LX I^nez'MʜSQ7|YDwvTf"B ;7a#w_V◸'Byf>?F#Nd+*Bk4µqŔNmV䦚7L?UZ-7o~h:yUM$13Ʊ"(3϶?Peel^L,AbriYn\e/WWa3z mB<̠VD `j/6}}ʉފKjh$Tc TQ9 Ę44i3-0GE<?K毁A݌T;$ʥy;dMBms;qֲvG ylj{l4WwF2Ozs39(?nFo,0;05NA5u=٘ٛ=ܞݧ#` SyHr.7˵xNkZuDAB?YƄz+Eaÿ=>>)4OZCHCSf)ZʼX.JW;1P^kmΏP >~DcbdQĩD"(1v,,RzfwgU[abvgf3妽񕇢 VA&RRTl8 8ebZ1.L>O]W7 s#1 Vt"]6B~$NejF|\'y5m ¬<2;+[l O\k, m͵ Ap2 %e%ጒ}XR(_fyI֛ ij@\:WZ %8^ܙɌ_:EwϞϪ/.TwQl)gGqzXbBN_,EJ3$z@ ˋP,qj#>*)`O]>t"qYf^n']=ό/אD{{plĸ.|[N5r( H6MnZTM\o28Yt"9i4 W0h5RdPfjm|ZUD`BI MV }G9 807X 5"ObrRXYqsZͺnJ]:Wbmî~`=!j[ c[䬭]2h{ѝwzQ'bư7l?p89 C?>,b >o%@t84 ' H_8@?7_4$t̤H0KfE+Avn)˥<9^<;t:^ 5Æo14vb}@ 8,+Suég9v?Ȯ|*%n#дҁ,RN#A&- ~CN0u6k)sv3M3k*p䥖>7dGVR<ZM j_Fls(8B-;4M RץTHs@fh/NҢ5LD,[WR7luҮRw .r#q'?lGh|Ue}i(>u?A[.R/?%GFvTXCڝQB{=5xǑcZ(mjeWn{lXoR/G\#*k#.8W}㦉-6K׸%{B᧰1hEl`48pGcaX~2^a&ws-u]q')>\`r\N7=C랐0kPm~M$Hܔz9)%j[X9awS\zC.)7 mV9(4D dk|Y|9Oeʨ8vL=P zS ޅY>d4kD,*F݆5?kG)E<&d ·$׸\ŗ). xKMps~$[]u<%?ُÒ͜rpG0S~Tuؤ۵lG2>gxFRDY_D50}g1t;۱1G(1 yo#š 4aG{sgwSԃ?]rVDjikx%:YI5ErK޵{)r CpO_L$<E҉nyjDE["M+cvAzzG.0muhvp7$a P+c yT+zPFh{ZBO(U}bLj-kJ|$`o'/#|` 1x=h2ƈjpK߷ñ! ?<͝V2WEFH ŷ%[$ \8 neWk+ܗ,;Plܪ_BlB$QJE:CΔr/kw`1;R Izhy,&-Jc8H+z밪yd :?vys~$aZuCٙ <$GAu!!6 ?o)$w{at`"N (5'U9}t|GʛQT%N:wvV4ҳU3 kQ$۸"u1Dgo8¬dXN$[Bdry;%d5UuCT%plXC%@ZC:+-;@,)%}.4fk\ݱ,wGL?UP<޲j0ݿ "NÆWJ6LI{JeuFd;?H4, ߭+pLR8pRy:em/ -,WQV@)(dbPۉJ;x w 4[\p+PH ?"r`nGvSz^`wy3j5zx "YU0׮>7bԙ݁`91fAgGߘ `;%A2N>J^Q@gƻH\!10tmC`{EQHG$J"MK7x$=mԴC\] C9``@d8/N_ y Uvcr >C>n!P7#|Td:8w=a׌s 8@B;%2Ui@ nEo4 pXN!C(0)F\r\YկQk_)HgJpyK.OH+㤋^uO*Ɗ=ȓHHMCb2ݝΒċ0q2,%DȳmGyr Q{JB9R\xlUȘzlorl}.̥Z#:Tq&D*[5s+qm#B-9oȱtt>5c|mgB*H)jl(E8A>`n >ޮFClx,2:4̋&p(u_5e5ٞ]q$Tveُc`g F!&*tl\3}ܜm$޼_maM4/S4R:Ϟ[SfNV?]q)"Si42˝VqS#, -呰¢G0?G8ܣ^j.Av6CO#]yyH!JH:%6k:<߂Ie!BQJpNsi@:@e/za9h$dxC>{9>Qddpbl8M1 .FJ _2pWtz#M&ye];F.Iʵ ?m̄R:[WȐN$[C$zc Ё&z=\G5#a3SW $dگ[]yLEHeR*8;)k?E֣­1]'d>5joߡn C.7٤):۾9pϱj&_{N69`J$q%o,@zAJY+2p3iHi,/h Z'?z_:^)kDr~d_D?P"`R|e]b3e?{~.\S2 >d))]TD0#cMZ#15wrV(I[R.TOLlG.p?ZU2NIN{v;i-yl{#D+"+oN]Qe&m7 Ԧv#SՖ*[7A9m+.'Ymq&&`:Q8Az:TNLP50d.3So#hMo!7y7OXxl?Y !_7NeL}{be({lҧjO>F|Qp'\s>1f-@8qM=y 'uֽ!}t-A\ǟ+6aiHޠq }=Yp\y#h(S4SGl訫U$(n$S\TN"Єkc*Q 5וƐg[+tάp>T]ݑ=4f/Nuu9{E@OOIApr+/@5ӎ%mvM4ӯ+g݂RmS`vVOhY-.$!ӉO0;Ulk_pyޏ>̆]l ATrQN]\\B[c?%BL{N *ioȢ%x$;aT򏦌zͺ0G#zJ E_d1W7 (Vքbݐba~7#rوd M #Y ք6ӢuKAJf/yR5*>a>%'\&Kf'<>O[(7őY=3Oc^b\(0a`z1HQU6ZgW$bpmÜHߧj|}NO ?m9]Î ܖ\&d>upCQf6 ka5D!*R{ :]qEvP#:R49Wa/{{3N@0Nq`u [%BW:p^d8sv}"᮪xa|p7 gΗᄍE?]Q 3O_z70]TK^wb/Aڪf{5fsMAvPb=0ߴ,`1B?JMyMz@sZ^8ŵppo^x֌Z4z_gVS5 Iv{7+!FODYqe'.ҳW>C` OE}ː RZp ^"vt'KK˵h#n-mb9u=lF2lʆux8Op]ƌ‹|*Hj]ޯlswfGJ:9S;CuR.PSo) 0E?eӋU|WcKMˤKĢ geP9mtCTuc؏vw_x(ݩk{ ԙ<΍eo`c8E($VH,ۅ钀W[CrDrW>~͡[Q:]ާJ!U,J~^)EPa>8:DNqx"z9 ;a'D$m`^ļK=㰙,5%>|pa>o8S3)lJqfBulz{WGJ8q{jjzꕴǨn:J/0N4s1_&xm%1q bɭ4\/)i JPĽ%5_(5uBJn %r+w#CWjH.wAD]Ro -0>QuP&*QϋA%Iw,R2,nlNaW!(N~mJ^9NJj:z)ESSgY?w]&H,'F;/D"gPnLy~F RdpJ8(lM &5:ԠWw!?1g뼚]!5)}pU~-FnkoRNٸKg>$#L3a>8gFDl,=aĊ3zʡN&+C{+> EhL1ٹ90r2dOmm8+I/5 ǝ ^ ګupiFWuWh{`>A qt2M1 nNݲ732n8G;$6(m\~`5 >B-~DڤNj^,>%t [4%螅fK]׭_.1._2uMrUڮ~~8ȠIr~<|QD|7 BsaO3Rvվ}"ukI5r ϰr1R_XclqЅD5::qlMC8 5F[ȅqԑtrڔȯFz'Z$a|3dhs+KND-:ڡ_%I' 7* _nAv!$)\cVIb45ʮ:j =*/dG 巽l^Osr+ t8Xq1&KDIЩ!sJ=B tModǧE}yJC H`@{J61 XK*Xc)8**6qs)d(v_P^8Rj,^I9/QW48j*U- ?Upɚ(5WC`Snx>¿ongoݘ|h=i^/C \yy#Yk[SuƖj)M/ Ulڏ;sWXLS>EA3%9XHy!0ͲA<9cG:&rX\wmLhM E9+T 9d 99oP8ӓ1'B7V,7;Mf=?$s m@3 ݬ-0 Ã&z6QH鸭W`a@Sih'!Pvb]^Ѭ |]2(sPF%ӡySp(ɵ:;Te}F.Lz7wZgoS.6v wl‡)J'/p9%p5az4|MCL#z4hWO jMH"6vr5gg4xpv:gzk."bZM[,: T4h5)/a+#eJKS/dqX=n+ޙ1#va_%"ȣ,MgDpoD;wl#r5B; \;p:1ueΣk2#};nsUlBqޚcttuJE[_s'[}[uϟ.oE!z?ܻR\mܔ nGrT>~FLLNBR Z */Mnױ<0MZ5#92oU}ԔR9ҁ\0DŽ/ ПJRݱhO}q^E$ǎ&C2iV #!j紏eaz÷h(M(8U@uaVq!d6LBy)ثaUH&rB=M{٪Xfp k(eG~SzþxylRe/<(9y[ 8jnJ Lg4!w;wE#zi$\%!;ΌTXsk=.&z qyiʕI߀刷ę8 ž50jI8}5ϡYנ( CK= Մ2BMսP`(L3 ȌȢlzJQv)MIݤbR;a*u7kI[9#mX0﹔mN=vRhvFlΛ3WT|찚Kkp`DNjW=)*|k@:4U{ZgBCռ7jf pC1<04(j[Bcw;t;3wQ;~0$Rhxknpx}bi/a6˓})FB#]6IwD9o"LDÎB*r[M |ֿ{]?a=jzO؄ԅֶoҿZ<ࣼ)݌ZԵgOV&jCqW?q1Ƒnߩ/lff˚n$H}Rg { LqT7>fu[U{Ԫ`#7o ajq]BM&(-Y !^y. d9=ٺᅿo#dbcEF F(pN{59$3>Xg8? SuAgg-])Zk4E#,*_fYQDZ2@n(UqA 7#}9;]է[(X, LQ(KaL3-`:91@Ї8؅wJ4Mtag%@B2Fg!3tGO!PFgQ iM,9ei}ɺ-e┼!8"sws蛗qd}ZMP27@2.5nf{MO/ VLRԝUR{`vL[Qr=K/28 B~'%] OZ,֎4|ZE q :9_MP*{%ڰa?A^#MnH;͘i=[T^%KG*&*Ȏ\kpDąʭn1N6tGYqD߬x yNZ~p,(V αt=h2hSr~md4MT2f6쩻aġb{}[\UlnSpj\0!.l/'R#աBSw+l H8.q-~^bΓ IYc}N=m&&}1dM"9!76|5)w*o~A6; ʻNj`-E]fc;Α(?xoIXO[p6(&˃OMb - &6)%-S͋aJO|^~' 2m=?.VG,w%`g55/S\HԴجϦ] oQ)۲Ad03U>dMu5r]E_Nov@䈄/gs=ȃ3JDEA%IE6Q ꧶asf-vn˖}$sCzY*™ H-򹎃I_Wʜ\ DҭTM[T^ע&82AwJAs` BG2Lϡ4],;L^93e_+"sIcO=,>l|6QVFXL#PĶQ!1 O­M1m`%6* {\۶Jqp4C$e_- tR;fͧO;+T8jʉո&0;_㡀_c,Cؽ)!h:WoLqMzμ L>Nw,NiՓ gF!԰j?w),4khSm|gZ8RĄb?ظx`0C* ـ.],w 'j!) FpCfUYűv.?Y(gAdXԖm87D:l &8aoM0;evJ#3ڣ <rS0B7M={h,[,?@s͏ 4Bzdbtg㠛[BusVj0C:h#myu(>>8,͚̘yu5gouiZzD }vX5 /^KMPgڠaA2#.p>S<.d8u!Gݾ`_ynn9aiZpr\+U^:%:KWbģsĬ:F_&6Z.G)VhCiiB4Jv) l=Q 0߆XY /k&샨 >ROltϻ js؉QABC >R@ginE̚nZ.ZGқr3͑{$)NU[[5ىU((FY?c&28s\ⰯrYgшe0G>l+H\KPź}%MCp/c #mUxw1%C :>9a2L#'J2Gj"Tdr5e Vb_1KÃo9eqڳ)[WȎVme };Tl;Tvgy镎4.uiY`k`Ib|4Eu'c@J%-yL^ң7'%~2TaJqIG]фk֖{ pDTwmDWSLP1"[@%Z3W`CtdW %y$Q$Ānr*YV33Q(5/eF@;i) B @fg1`>"/q+ ʤĉĈ)Gwu0m>~#DM6>,3NF[bqkv6nv<¸~aP ,>InX.D[j 4x9hkݹfY^z;z^3߼+E@q&(/7KBz2цh섚s 1:0r_xMrF+Q&7A>?>#lIW=Sd~9f֧xtADo-Dy!3 fgEZyۦ|UXRf4"xa+b~-:ϻN*K}`+FK>r VZ6 c*YӉWc럥nkMU!+-&#xAjRM)ϋ~|b6 hF׌ka gyq!&aHM:DyBB3"M#jz66q$k#NEAHpRte0q~1…O~3<~EwMv搫U뭰(tGE9Τ);@._CF3Q!^%)$#'hjl䑩%Q3?hv]ӢkԛF@+^Mbܥ__(UxL@=Y-n|f$viw>};xr#"嬨75ƴ,D3${}BNV=nDp}i*)a%n9P.IгWSL6`Ca;9FokѩFCYW N:r{`ryǺUx//,(|xE RL=ca#?5͑gkBD[>/{C[6FnhtuTs/G%%r%jgm?KHRPd\@/vG@\tn "U(k{GL^VН @WS(爐愃܄es@S"˥CQ 're(qAb@&HCrݍUS)ƙ–)K~.]Y;,>'5w<|`Z FC4t l~C_7v1pZmQeJ N {CiUkpO9(/|>nޫB휡?OD$:;Nin_%P SݞQbh?^ O|s`D {8 3y#c6%2=bqޤTJ*6K')~:GPwNLy]Ψh1Mߴ s'nFCCtN!zWK6('lwȢ+R~YH>ÎVYknU߶Iq#nI.BX;_⤋-ߛ"^Ua2aU$1sz{@/Uth<,G&`,?.) Nkd оBn0(wD1&>΅J F]w%JHZ)>O%ߤq[.p#N"s')3w`vFP7fV|mcAŔ 쨐8ԊaUtŊHg_}te-G)bC{Qq &6%z"/<ì_":Ͷ2B\/ Gbޑ@#m׺]ϐF<&@HԂ:4HUտ6pC1d+Fc&;swttp547E<={M!$)RIQqm}Ap|ikMYn,Pfd5ՙu$Ͻ!eft݊Vr^DsG^s F‚5 `B=| '|%\o]L@y\=~t1BcQ>|mRs3\a&β8+dhx5CS!K%:i"A`Ks=Yr=}-1~G #mƲIְq,f~2IBm6~hTxX)R ȎE.@ hn?Loȭi6ujua4I)KI>X?DSs2;@-X{2O'] =xCh*>M&H_0))Tmm:g X-ƆQe‡ A?x/J+B*Xޯ.N L2~a Ǝ[,\CFrގ Aujl 3;ME;C:,񦄁[۳h-bݙ\Xeybt6U( ]gp)/oʐ\pE4U yjr% 2*2hlC7`,ZJU\S̡Ȯ)dK4SNSd89cQ$Xf)Fz^F9hc.lºLgb7col+!鲇n`zoxSƍWصYttY&vu;6?h#$UeYׇzX[SrVscvEc(xtUK^;EhS_o#]x*s4NR4 %vg:[> = VmM*rHiJBF~y[ծ-Jf WB2<'l)#F91I}@_>ʉ,T'šQvkI{Jzwtt+W=`ou1-|T+_BLm4'nS!_ڵdR"Y/L mae+- f[IBd`K)su3?|,DK{:Ў $OBME%ُo]e?vŷB~H\D}jӚ c.gTb.U1lA*{wwe>x첕7(rQOѷgiN &t( !p2:2lb1GˁR{W'JĮY8`1h{eӳ3)f"ؖi$!NuU~^,oK>]ݬT%4BI2r}Q}uqÅgǧNC !XBˇfU>fEN2Q tcicC*a\[ЇT)3sĆ{"/{AH.망3Q{4 Zsds:3$?g!nTeL$afo M|+c-`;}ir`(~LGCԲ)ICcel{r_wp#I@'[shf:[?س_0؛ZFn6NHHC(z^<5LPy F/9~+"${:*lȈsL}nWAuVF14K$ |*[-Uwl8 Rn$?m^(3 U(mM*7vH ˌnHk9LUm."M08Mݷ;NI.{el5|=\7T8eKz mS98(]!27ւjU#of oUp Ʋ@:L?|%-mlh k wET4}|Q#"Yv4KK9y$#}S:lwe# & KiI+A20r#GP+Kܦznc'60WSA8ϝ@LOqAcaz{,tőˆ6~ 5ޣ̧r`".GSqt[_2r+g}M]u.=.5,ׅc{i B~OX[dKŸ$2f6i6ylIWFBb1dp&,f AxM-XS$J0zZ vH[pOQ OI4Gb&~mO7Һđ3DZ j;)h\Qn$zz9.ܠe{mtp*p0kW J ru=(-,MHJ@6r)贂Xk#+yh>1^6’ ,Ć+>Z􊝬Ӫ&T8[J0Pd@0:OUڥBb=#ݥNl]2A$6|wW>DR=2ɇȟ=ѫw5$Q<5fmCFk9-J.6"`<uDQTgk˥4mzEN ~۳,A uG&nR !Nse x+Az&k/"o e6O.'ŏ| .{3Hj(D Kxj@CiG }y2?t͚⑹=P]Gl&yrTߪJl؝C7 e;! ⪧}4uǧnk]ޓ)"=A9371 XN Fd>i vn EjH5PY(t_-9t!I +SCm+rR* "ViDWYѻ܌LP6u #Κ +Ð69-N<4v d-l6jie{]{b̈NLMkHxύɱvLhd/.ݑ2 8]*A2`z~* I۔E;{]@;X @an ܈qm?(ڴ3g6L3Ew͞S^V‡pD;næ]O2L}UpAp'MiLQD$aFz۶`vVDhW-B59y;gCZ*5Ef_UՄ=nԌinMLR#iYY}`x 7E)uW<&g~'0_!scɘdq"s<8{֘o!V24",\/b݁I#4PQj:(I- R7؝< diu?xrTRUfNb^-4kQJ^ 0P^>K){Z[\4664w8 5wg??l~c Ŧu{3a\%cWmX!PnM?}D-d{?R"=}F+ ;cآ̘qέ>v- xXW74y T  DypnĨ$`.-ocZMe$BKd`Cjdf^\֝EG*x/K>mFx;@fvvG:<\< q!EMˉ< %6ah6NJ%QkiԹU*ܿ Ν S fFS:QUhaRBBbD0;pO[uHk2[ L܉NZ|".׈7R.ns?ȐRoCԯ/폑o d5TJ_"F>Y#9_-h7NR Nɿg G:sr2Ѯ~DsM hs/r_ Mm7Toߔn?(snO:>xج곙+%(]]Rv~3q_z/HRy)Xi`t@uapC\#)Qs PF;uoS!یi̦`&"Xg]H4FuD)\3ơGQlcT i-2ƌ0/h-g+R@I9 b^hӷv=b.43$Z]rG=,ۇ/"[yᐚC-k\xH.#lP'kfN6px0VpD*MGjJ[(gJ r ay^g:6LwQRCQ p l˥n xѰng-4 "KњAYŝDkpCC7~D]BUi,U^[\jslTצ(`E!0'( $Ztd2bh_i߼CRH[+vt:_Y@&SKmt>ĕ`'g5>sIZL(hm|DV9 Xj2>.&DRvf(6aĊt ǾdlkA!x'x+^[Ӎ~2;ٚ/ DR[KPv"O䡆%[ptmv!%2nvsC)M0p|3{tVpiikRӔR7 +PG(W#Ajn'bZ h_uvr-Ԯ2^o𲱂c m],ua'EOX`EʹvV2W؟vR>-=^i؍O6:ۋguV]KoaEjEz1'K`E| $PZASUsпLD ~-V`>M ΰ@R4$M= wjWDAcHx:cm'IEz(ھؒr1?m;A<\5@l~+q MGrK@=IɱpRXP(źO=[B;>~U=vԐ=E4ڌCӟC)au+[ e4&4-$-Ma{$HOҶaret#傕@չ@>m5h26>ur}PTrycMi֎nP2XrZyCn?YiI?C>n.k` WPs> }T&ER_[a/ᘿRզDO9]we'* bYp-c(r}*ގ.w)1eY\dK ۰"QxQ^xF"+y;Xe|!uI4*ͼxɯORϳ\r1ASq`m &h+oEdFh䆩# c(̩V ޤ680;VA9]8m:2і7r92jmȻg#+MY3;b<6))fC 8j ɐvH/}jĹ3?h&F!z즉 *?W /&ªyCyXx%@!cZ(Z">\kʠ(GH,:M5a=uU}ss%C+zhA6z\uhwxvc9滪E_#S=mQs@̕^6L$Pcjlʼ9V͐M\E"x0Gug؞>ޔ,tE Nj+=]FyjJR|D>ZY9;jX L:J& UJk'rS= 4^ ;ێ@K XKY71xf#4|/cg\X!0;Qͪw?\07Hk2,Tƭ +ls]x fʾ;S6cRm{SԮ@2; RN;z&hr߲!!^XG}%:N8Yq:]uJuը+1w+k ot,gtnORQ)1B47k/ ^3 `: Y.ښkN6z/eA9m?0*ޅgU̡؀ {cKՍ!Srm P܈#ψHs4}W9gHs njͦcýGǻu$-Ǵz_:N:5(&;*\ãhv4~yS$߶$Pn Bks^ֹ؅zPwbjQeq2ޗnFz)K3PWi'M^Ƹ2c3y#X֞eo Q5y-0MM:\o?)2R=y)^G0ɣ9yOk.HرpGkwvԕT:6(fS]^ W;.Pn!QmԄP##l%չGÖt= @g)Å bU&|9Tv|=iՖ4!=b0$И3kJ XmoZmk O8:e $h9нo;%Ni^ػr5N\ʛ~*osW#$fNRPv,_`@FL( ^`x`Nk-9׸}sUϛˠY۔"{ W3Ow< `bMAG%!Vt_&}<,e/l7wKU0WA _Eh ڄ0 R:Df;D*K _EB?ibh8GDOߏR 0|gI/b2lnw4ıNΫG9.7Ep*sC[X#D"`tQ'Xv Glwcz}:y&'8hAk\S/!1.B3TKa^ 7*P͢+=,ZLm`\ @ jMs(-3e}Lf-=@ @xI_&V4ǰEoO^]f x v] *=ү*j&:dס' 1c}+ނj`hh\nq_$)̴mծ~ fB尹8S-8HYdbMe-DR6JI&#|y%{6a C͍S}k"uhX9{b_V ݈a7(z/Z.t/j֨{e D p{p&.{=0Iy81CJgd<`Ki\X~9QEgS3nߦDa-3q Ԗ掖/ *F=yZ6c#e Cqh.x.8Jذ˰N;齦F9ۺ% d MjشqOkiCu+e.dI6SRZVDj{5'E[ f,ؘ ݥ2f=[.Fj;mҞrCMtIKOoBk:ЊAxÌx3/MT\2F½ΒaZYBm4D=x s4lMnhAES ްD㨤$MHp0JKJ;չb>nKW @\o_ϛCE4v(3ڃ#!L7(pw{dȹ$S/AaeqS8Fw1+[z0LjEù?SlY?uiƓ;:`x vbW %&)X? ! Ļ}dVp 6㰇s%ܥ3nA焲{8H'!Ft 7Ex1wJ/|tQh$7$'ق~[T%I˜˒bpJEKWz%z mViyȒFF`ge K1BW"NRFBUB3!WjZ @yo-,4~.W4Ia.S&&4MnF$ ʪ$6xze011"غP&ޜ!߸GdOS}] $,M b,*,9zR"CX+n6U̗(:Ejjkh*>ŖPyMpw]-4UkY.<#O`hfu (GL=f_g h3fŠ]oGp78-G}|& TjW.Ns`г] R'ޱ>FE 8ZlaW>kJ)2.U%=Ox t :c(Ԧ(OoݵHw t^ c z0X!{إ i&(@t5>-_|Bm'>)|Nܧyi|个迶; (>ƒɍm2Ku!6iI=^'\SG'߱X~+Z{jz^^ 1x_uoc?y>+q0Χĥrz°kvu#;2]ӵpЕh\sO"5:ҡ/@o]kX W|OBu*K9LO*\s?t7|NUn,f0s".K*nXH3V$j(J3lL>gׇ:gL"Z"Qd!w̶hmשSQzehen0l%6.D2Ba-g3JOt[~Kd>!:Ea3֤Ǥ*@_~gG ~>֒ya(F(M;.}Jw6_κ]-JT'%Rk*یt]cb'9U>~l:_BFМ╫stFM7E|zϡuMk5%ca"E@Rz/ċie-)Cza0k݌N8ԝz,kϷPRT2͉oq%S!Ԇ[ D2Sah LقgD>*NMTC~DԔ17x)@E4Oj$B1f{F31TF٬F4 j &MS HwpBHً![̡5O(14 Ey}EVgqi $+)z3 JRǍ9FP$24$r1r* ;'n8z/9iF@ViJ=!Q"Z>ƣy8tl+msY u֩TП' rǣF3a ~Q~ :DEB6tb#@Uesj u=#.h;8Xڝ|t7=x#f_g]٢EIVoF>x$o`)akݓyBMn5;O_ug݀;io19_d-r /`&]p!cS62.|z^o@ۍCU|ԿrE=|!$|jG.3Lq"㗨וd1P`\pzHq{Tm>h6_m5"FoS1ZTw7V)>Qpg֐y*KW߆N ">lԕD&-} [嬤bjFY:H؅9Qؙor$U Hnh) sܿu4ђ6u RoGvVg/Ũc?Bdgh~U  WYecڂPJaח +]V$vZX+`8&xI? ۡ p|Y [DA&P5;$yfw# Bi,~o]t-]F#4/Z#'ȱ8l+$xcD7?|=ƒ\H=:>#4/e!f 2v*\p7s!AEQd*Ll rL;ta {ǮJ׍ (&|b`A;1u\UL,vw1 *6P|i-1#*7eG L sTȘ,8j!O(T*G-_OC,ύNO' އ~xpoI^xĵ[mֱsKTfGuK4PɌr.W7R%oSdT JrfosOQulP֢Q }I$0zofL,}B1LWWC9a4QpvD)/m}(_H}f/{`>%maGg?[#f )+nYbu $Wh&y=0zb ;>=q0H&'hmW)m ٠hW:F\@q@%.ΤV Kx 6"6*͍ !@m\Za _D=wi8|͢:׫EUN?L|IbQӖ|; *'u'As/e-^DV$;ز˞r!Ph9Xϼ~ M"JJi"rM;}F'9$S,!`40p]3>hq6 @)yJ/<sQzX-?w|z3u+u{tēv D( TAUr&*i;^'\<@psNoD ~vTCYɈy{ʒ&6LD( 2Sw{[)E\&`*rӱEc+2SvANFʽ^td) ۔/"{5r#2w܌2Du~$a伽qB ~Z.4憙Ѽ) -`T5<?0$g⣧3sׄ=G*<}k% 0]\øw+R)BEHNnV<`ΩpJ;wblxN:|D %B>Y1bQ1Yv;9Q䨦tEp%qx.=0Qs# G5MN$8"\9v^:ƪ2iU_Trъ\,B?8IPrE(Ɯ`(zDq渖(掩[ b ς1,'QLƒIbPQ:Ao[q;G= !EVk`?83hEmOCp(M(B\{a 61$+\0l%}kYq.4ݯbcR_}9 D>z3>;uG25y 9M.\L\dg\PTc[{N\& ^Y9덝 ナ jy*6/aTZaHzõ B2e*鿻Ǭ#~ǹw;Z(eeT`jjTS{^_5{ :71b,K1֤u(\rc$HK X_!PhnL`Mcbw416ѤsC(om YBR`@] $-4ӬBlΆ IEڦxeCK?lJ\me lxG`!M2.]G1.LɽAh˒)W ξO]"XCYOMvT /3_Dr`B׺sdUzc{R#i\M,kCG .$ќ'86n[Mmi(WHA]l(hڍ;`SjGQÚh*6dgN@qс&a~,!ΌfӪ>lf] `h<~_5T' Xz?JT;ãD ZH K]+~G8:*,VŢs~F;Bq wO1U۱F21ѝ.2Wmeq )ǎ3#F/qY4ߖg \kAHV߯`8S_4ZAdAؚ!vc?vVqݢ\~&(*'?-]}UJjZ]t^*Nh5gU9^kI j^%,49uߩ)_"8lkTgBr? AU&abI*KS>G{Ҩև98%D!-Aqdׯ S j$ƜF}ڬ&7zLI|˲5k7i|ĈUlWz`GKQQ_/_'+z;b"3 XF=Pjem?(Weٌ&ƌ>>q@qQOe/һ㷙-]AWS.001q)=+F*&b}'2g}[o^8c~k7mʘ`\!i<٫О1Ǒ OMj8dDOm^IB^)\{+F#,]+psm.dEї4> pAa2/*O$P=+Mj [6+tX +\ۥH4O0eU"3O|yF-A^TGkÔO0H7L4 m8xAbY6?6dHZTU,bBj"Qt ׀UZgJ D.+{ E gA9N#,DhbD  1޸sCCi"`t2Y1ޠdx|r)i:iVs(,Ta67!|j)A)|L7UKepk$y&9NZks6? L+WP8"L!I5jy!2G^f$ RΓӞ~q[33vq`Ʃ_Km)r^KF>`گm 'lqkhzd"Y_ M*({ e}@ Jx9]3[淬'vQ4nEܗ?_֗:`/rL_GBB3ɯNaΕ˛Hq,5]1wGGKNU3u`s0P4sK(YG-|W\J5k@G|Pݐ1i0i[Z RJ-)m9jtѣN۴i._|xL4Ent cm7y{`'#rH$-MIH}2\_ƹ ƅ8 Hj҇KlPL|yxᴦ q@N?" eS^vWvVhSÐ/| eU~k@3mP{Z׷oAHİI2FDʥVS)Nյ_fB7p`އ.TߩYe.RZо H؆1U_/\#Q282*MUt&P"GDexXs١*y2~+famRtnNɶMOIedȗ/"Icc+U $ur[ HҢ^î6)JڵK|PMv?5MV*5N4wF"D1"ںm'[J2G/*H@bXHl;}n"UE=QxdNs?,m&o|tٟ5[{2]m1™}Ņ`gO"j_/Mh9 mWV>>m7¯(-K)|*쮲hMW'yB|2ki_ɣ E9T\U΃-_mFyAb| r+O7L0ic̩*;]B 5gZVL/Glo"z^]iˤ~tfcю1P6V&TTFLg;D̯SP HRvxsBfKxu'ݽSfܥ:]HȒ}0gC-YrҖ:ٕ}^c>v8$uU*HPjV ʅC_`AgckWtj0 )c2-1B ZiKITט껥`(RX댬ΦLĉF_ ׫x+?1vAHlA9~=IC~D țYI־,SS]+cV_rQJQžb{۔ (!jC^t"EAŇƅ~NnXW#Xh0`ѵs;3PO/=R,b*xafUrX՘MVm@H{U0he:vՍ T[CusV7 ݘl0V7i]} !j|Р')h829K،=Ñ!C;'|/Y,xhK?]K*{t.cI#>8q+.v0ګ:tTb4r[(l-!E[zs&wf½܄n -'D;Id:p,i7Zsl$&1v~Ө3 zbDLY9 ۥ&{]q tϋ±qz=^Qs][-Q3p̊~ogm^x+^_!fϝ h#W#B|w0ԠGe2)(&G"䌠LyTiw_#u$$ 1ScZ<S9b%hR o}R!C 䬕 ШIMy # ww\a '$خz Y XcP~X-fmǥxk1hB>CdbJB SFWFy>0}Lcd#0=8 Px3-16 Lj 2tS4_IA1W>/j$ɻR`[N&gx,# ڀ%M7W*TIʷ# - =*`KvgBDX]%?ڻ CVHu oPT (23V<)_B S_=N%vr`0FV2k$h{7gC! 8Q,?B1-x/QNBvElz8K2;)/hJ"WFЮu[o8<& O-{c[cwG5.0T}kvŘ)|qo) L1:Yc'ӊq7zc?-ءוujVT*fR)"yLse`;L2ϑ8֟h&$+i{Hty*խiE6NV/n#E1;٪#c:m)F =<ӶQ7wKΛz_M;3fzU)N7WˋgiNnt;XwWtL#;Q3zicQ꼕MJ;sp% Ll_MM&ro~;uK_vK4Z9ۅ%Uh=kU&f7Gr.*S)³MOgKQQGJ,r7=ש-7J"@~#RG jv)%+CIENpfb#-xrA0Xy8zb~s-05QOGL Ww6g-k5M]sj!/Ng[נaHiN*A{&_# ٿN%ajnj+f@̆mg1

v(/Wo"qT$}f \؏7UmbZ;5хk`l4Vg3)P'T29 zN3FV MvApgo5~njCEHVfj/{E lkѕzϭI1Xc׆Q|bOl6xw pE)s ~m9$/__,PeY [fh{Ru|U..T{L \5aa~ T298YYDv±0 G<sm验;$>”.첮<;Ӂd$/;Cݟ`:m kkiM塝OeV~%ƻZHw>Vv@W"U1e_3ֻ|{sҵV#tk[K{':bx=_tG',g6Զe7G@߰hm+[OHq>栖1Jm"I\C֓0EC/RKkL7 `dyyTXM."mXJEP:T.<,8 C `^ނ=i\:qr:*&gܴag(v)(iy,2LF<Ӷ׷AroW}.VP8h]o0"`m-gy_Aΐ~?1΀}BNEr7QyNL@pmc Wp 2ؾ miuBL)m'dCtW!}gp$ZĜ J@4Z\;@WBt8 <C Bmog.M~d/\2m{3z+!Ks+a[E#{+G!`Kz83*=}LED<)lz)֚6zg@yB@ˎ@rJ^sݱ:,9lvDK,(*KYw~kDw?;C]IMNš?[_ q1xPM6jǓ}Qb<ޜ$:9Nc΀B¯nN͋I>xe*O3`O b, cL"DXgbqoFѪҒG!Gcv~~uw :B.BŒJS)7x5c<\posD7SrȞ@yaĦ=Ri" H¡G-fNE0;gsz@ϫS[Y}WepoGzuU''Ȟ.,%֧^ZA ij/c 3htҁ.,Kˑ䶽a4gVCSiEk82Nu, s5עb\G|ufs|?z^@ǏF~ՓA2q4~}Ǹ-;X]&d(=u ѽA#̳y,G$eM+h*A>8TH7i8xt ;DS0:PLzs; ~"%=ѯ/N9%*W?Hd{#lu:U]-62!M6ƃL' I< Gt `U]6%hK "G@Ecq/)5PjXN!Vׄ N ++Z_`Zn!^1EN (çC[S3s!e(ohC)|a w?*xth>B\-lPeXG5G&Hm8fJ'u 9ǡ6ړ"n"S4z5ђo#c=|pWD:e?^l$IAsl"Lp%c7s64mk>~@cq En$@[ ogdY*7쿺_a$ao_]>ŵ-Җ5M,L;v%S蹍| ?T#SE_¬#\[:$nd6!#jKSۉ*؀Nإ}Xm>ՀDcɏF*n}YXMSE]t rfӐ Co1ߘP̴DGok|^mx;/|4{# g oP ţ+e'OeW/ni(re[LGdv= >ZZxsi&;XV/u U͖uD;ɥh12sҞ bTVvD q"OpJ&&<Ly @xU@}OȮѬwYYGl󈾜ޟb:N sԘ; ei r7CȔH#>:3t~N"+ϸd NJRYC ? d@z21Nڭ&0OW߅ s[GW.[o.z'2+Xs%!e (t5,0hgX Ӿ&_8 #IxwّPq$Ӛji4X@&.IVx[Ѡ`3(AfPLA0T5ZTh=ҮXaЈ6JNձn]Hc>qDa9|f"Gf>Vrsi:BMĞIlZw3gਯi斺:PTOk@}ȃlr~ O:/\BhSbiϻc6j^֭\)FN?wH:km h:/+lYS#_4M6gb4,SRAU\ ^"$XCa^,6! (ʨ:ֆr_gfa%l~S&h,rPj 7%擁6!G< {[\}܈!,Z[`|OKs~JAEch)aB,sN @TӍy(\rPPx|,@3ThǴό{\ K><-*+L*n2$4Kyn&?ڏ3ڱhVؘdW ꎝ3fא?Ϛd2kgcBwGj!mhI]pz Ri^rn2bCһ=;"ToO @=H2+l8XͶYΠ_3 #GLIC B<xӛS嵰:bxF0k{4(ܿϭ\ͣ|Hset '6[ Xa,[=7iOec\e/a[mIA=: Cc(k'*'UL>^֟O]$G 3 fjĖW6ѓ%oH >˵kjKuihv ?("EF̈-䈱N'/d?b+*`2no1%.{%~DŽ>7Ɗp|XD%lp\v*֖G{ഽ9k*_n]“<\~ԽT[A`HyMzdVC{EJjo O vs]!k[ /-UpPUK/ [`@ u :!d8vnO-Ӻ̏ g?{ 43€DSw|7Ф|LԪ]A몿v-_Pd)Ph[73+A'^.k0KӉ$۵'5b[–(<0SUS+6q斬:i3mM݀%]'TJšA2ׇq'qQcM*M0!M@@&8V (ᏹ7N[&Lll ­dBvH4߁ײ\e#%l7VQ4sADZ]+ [´CQ[G–7I]W}_汋 j]%C"D|ꎋO"}Qdo^ /BDHmCBmߑaU2+w3]|ΟEv+]h@-r5mO҈+7sZ@Q%hKL <ڃc3[4F[]d@XijI++ _"ti7A 1Ts:sR>YWmSU 7;>i$^JrTcw$sϾߋKhad9PA}UKu)SD:VcQus:b33SLw~n~'2MFVZXhWcQ&B5Pl/}U} ;xh5ۖr;D҂W.gȋ!keD0J$_L$ "(TB2a-),0p@l8U=r7޹p Td&=0Ý4P'+͝*/8ѶMRr!4.rɦ+!9}y>fѕѶ?Z;dYVL@ 욌fٶ)VzoՉDMdXj@2?G NR4n\^,H;JT_dB/4"lP+qi['wN-?#X qΏ7>-zf k*w6ۊ.i6 mOy'@5+o:gb456k5u`d}"d2#;n٩ [Q4̷4c K*x >Q!WIIrժ+zb̷+PD:+"JwO4d1?+A\'T$>= Y'&Ij@GrTl3TI>!42WA]EAPLVsxEqCmny\WQ2"VzmS6t|?\l=V!kx%5_cE=sBNJp)nGbnCI %AҮ#azE`20\VlĢVY/ ̻ar^ 3e@4 %S{{I~|)l,LaaU^*ʣ4ߋm8 D BY~bvk.tfa0GEA&8F\wyO`N{d綬1Apy_ڙ7@/)WΞ)z"TAP[<آt;Yb-GHxBsUrcٮax_Qd H/j!2 5 %Yފ)-Ѹ ԙ@NN)Sth`6Yy,j7KLq<èg)FrL$7FJ$Abwu8Ǔ6a¡ ]YY̹kKʚ> $,Z.ՠRVaX ;5)]ѮeS5 ݣ>A1cQ ׯίa'Y &SC0b^*?\$0:S]65AaYaOa@M`DvCwlR2Cnl/RYwuR¯~B+*sN ߖ0mȤݠwFQh !>0Ar{X|~S岴Xd<=7,b{bݴKd+KJl2pşU+_A}L>ȽDܠ?&ڻI3-OIf'ۦulRFS5|Aj{YP1 ,ԥ:IVl b.Tp5vF]*HsN!lf?PwAHp^*,oV4RBdHUCIMڿ>EFj aC _C~yތBϱOh*^.l{:tАBw<5&XB)6r7g0fl_#T]%3g=V O#8:%af 'P4}<ݵ g?es9X>^0Q$ٽiCk?~sSPvi Bᶨ֣e +> SPAI^:UCK= ex0)~h'-|ٯKr}1e|h o@t:\vx2QZ$VoIx^"?0MDBS+'!uF}5+܀>kTV㩣EZڃﭘdvunؚ}I1q6,"H#וڭr (E.K))T2(2XOX1*Y8^;6zK~츳Fh|62! @'@HײG1'b1c۩#H@ˬG&6O=@Y=ʃ`OigZ:ICd0ZWuѴ<+Hg3IT;om#+{z $u+<U dQUC$],&5_d7ۂlH.4PJG4P"T\] p]WP#kvj)9DkW~]ns;Mb^׍d>;J5z;(8(Y̬ZEFqK0Taz}(9[<[}!%9k FXmIhڧ)ܥÅ \R8IfT,I~R/',PXSC?s y4CKxϜD`]|3nRqpv g6eq8a2E=n:Lmiz2\.%ĪkD.f#]LrIrZt~FSUV\fL{#@pCj"3zZ,O68[ӷ>袒XNRV߈ *@IDF ]fMtioTteWjqp>A0%=ܐr&O_%T[(Du@ ?2̞,;zG_.KҳacLM?9E0bNE xZX_|-G;"h(JP2b2n\wmkk$(lEX*$D"6]i&7w64"mlh~mT*2:KxB 3y7I U~և==9rpxF'W 9{뚅CDl rVF?=#!:֖?m&<=M$% .qH%Wi{ u|R_ܪ_HQۼ9+L$*Sv&FNlF,TDTͰVhB)bf)O1՜ă݊}"y6J,jהRyF*{n,ɕFt7؉q-vqjxPfR]P}B}X@S@y2_jQW5 bnOFMdhWM%KeƯNJZF+8+ׇ[49 YuuVby!f Т-$I?"Fn{q^Q>tjƐ#*YM(G#C` yɦY/a^sjJ6":w} GX Ky"KA- ~< @lŒ~e^)ΚEB)0F *̝:MѴ.3]$eQ 4D@n< ؽT< w%~a8j~Wqӏ]}㎿-㚔[#[^:EoisLkgIGNq]jEN^1 \ݬ J-;B^+ -ӓծ/e4u9J+j-BK'-xXv UJaݔEQh+5ܕzlFZmqH|U;*_FlԬkx8B=*4ԦpDQrA<x}M(}|99RU7a*ҹ2Rg4 f#ѻ^mjߓHMn ^UUEwM-X`:"b6/59 0Xm3{;]cDɦx2}$~GѴUs9S_ȶ {4N=ח=V+sFS?N˙b+-:~N(Q''yj{bij(}X' oۋm2G] bRd03 kAwG"Xr3V[:5h+Z:>wK/l~mu=4Mat&teM,nwjgWiq?.};`"MoM^n䅺sUu#2.&☏xt] klPDu5X^g1KSS7M'Ƙ1s.|ۍ9Qy>Wq! /4T!>$` D OҤٰyn)Icun B=q:QSiNXeir#cؿ+Uhn&*v5'JKٕe޼:˫fs>~NbtFx3;YIqv&6dT#}nwoNDXc<3og%|[UßlD=+9%;8}ߕ[WEżf>)|,<-Ȃ0֘3Z-[Kwr T4!]Iإx$|P+)͸,!FdC*c#SĢCiIp`lmqG_\ 5h]RRe~jQQm蛑6+>kTj~m0e$i&)Y|BH[w#&Jא3Mi%+/% U2zsy㉟Cq8TpR ><88ᇢ!UaQK: \*&Sdxƨ?(GZ`$;|(}T 8}2BdKɧ;}!)VD[ޚ[Q:PFv1Ԝ/l </er %OCr4 :WP[rJl9w W~Ig~o:1$\k$eRkkgj@)c/کĀ8d^/$xF  J=c&鼐Lx' ɑ#Z;U,7b#O!AO `]?\ruGwWadiԛYvsr1??og3nCh宒e^:VȆpNY 笆$ 1hi‹vY$ڒw|L#{jgH_za.iHTAHGl48Ej 3h?]:˫hZ]K[B|"wm B D27bIZVRMT]R0"d֤ Ubٵ+p#oV To;3I]iX=VﭧO'JU45oI$uЎ"("q ȔԭMو .BoO@Wٚϝ oS{(νQH&?T?NshGY)-[%CoQ*%3}97՞et}!N>?_+ `(A>)Y.PMNЂ4VTsN%KfmytpyS,TR`>h}c %:|7)sdJ׈r׮#u:QJkZ.ߗ' LI1ĨP9d2/+J{(;d(_@q]0HdղO(hoWs@k/9uDX6K&gT43XIKHg{$?% %ɺ ).b= yd 'MAZVu2s҉ooi(n#Q;\ RbJe6^C ),\tkgP;4 A֢D}>*O^H} w~Ӻ"TMAY;!P24s$#b&[ꆺkT&.ݳIIu؉5 uk|E e4GB'|S7 ^#+..Wƌxц{X |x6LJ5F}BdDρ4ΓZG/ ]k~l|YVWcل56^1$Rv ,{ρ`3"+r0fndbQ{,nm;~りe^滅WT<^[lP6TU?2N0$9ooY)Ez&ػrUgf%ѹva Р?gAE'RR2A]u7;"SFnnoBet{7Q?`8"g%g &kiM@>9Ly|e6L)/4|s39TVCxyCɭc\9(9LbdQ]N@$yaq7|Y5̪kL 2Τeɶ#i"ĖnͅPLFQ4 j>٫<+-O)Hkk nziUvn{8Bތ+%$L . , 'gA2v߬ij^j;TJW`=B>}-Ĥi#ݕS(ˉ2ZEŪXR&v] X]u.ƈ@~Jϱ)K) nK<(ɬX4@LAHSjH.jf/q~u(p0، !Y. HXah&SMpVߦ2VV@0l2Af4$ŭ=Rre8p˼ӓcWv'~I~`=4+ ;DuB .ȕ%#K8@b/F_9dѵ+N&+qQ$;^RdѬ()֓\Nn@`X)G=݃W M=ϛwoXU %<0`VCa9hc<6,;y> ͠S=)>1\W` G@3ZVܐ:qƒ˳'hJ p ̩Ɲs X8& #߿DD. ˎ?+ N)2ŗ^_ȧWq̂dQR8DKU636P,}зe^@U&R4R_8:l^XDOcx5Z )WR)?g!qD2苭/Hd~Q\Ϗp4F \4;$iW v+MD$rc^Xy- [z3氛þ( :ؾWL.#~pW%)?al7PzjqX0 _sXNay`AG@iW;M O֘v9 X$a 0 'CnI*$d]7}h?#?옵ަp8> : vgV4{Oi?KBUjMX=2 Y9[/+e |p}/7:[G Uķ(&|9_&ssMv)ЁÞY]/s]|!1txȋ/$@uBu`'A*>Hܖn4ik*zpG _~-@QZ5P/Ƕz(LM.(yrZ{[]N'rpfbZ@1^=6ww\.B;N26⮏/ 5{`~S?p4j)u迺REۉ/ˉ,&5mC3_U+q T( e."#g~*6R͍!vF#&c |f&'H*V,^#mR 9U9n%0Դت)whjG9Jo@.(Βͺ?GG]#sow6#$ 'uA6j׶[-EJu 3[#ݽpq$MPmPJe4@*dUi3xi|d.Pw]`Ѿ)>3NjAȑϘxMxOБf/6ւW!eRS*8˛5HYA@ Qq >y2Ȝ@vd1S3O. V_ o-Y<Z`~#įPOܢ{"WV#B \N@PN85/M,mrY`'CHknutIWyP@HIC}W3o[BYEꅾD.A!D|BVi¨po#߸sߥtEhy 6$ܫ OO0r pk?x0ULPʲѵJ3Pꋘv^>wte{%R.*佋t:7AgTer/2#tu|߾i kX#?ْyCLbwHdżXޠeV0#=^h+U)i:MbV'|"@~#~XՅ;98|ڞpy%w\;K:jGA PH;Ig.E_ae`E iv]\(@O3K")ӟW9}V@6c>Rw4W1rD:CHIMbűVG*Y^m<& C`x+92tu cfJd?j馍A#<@nղ ]6Q<[VQ7eh {RW˜uxHs5kKTcY*af}_@4yCPrm!"rP AH*A`b?A7HlM;,\A&C>ۓrV$(hf~jwШY]i<0;ڟe 6քܸ0w<4EUE;cx%<=-6 8+D/C%TgWr=xɯJ1F֠tNw|hk3yY yH7Fb?9Q![ρ?,|ƬvUv@Iaaɷ> )@MCr6 ՙ,Y?~k*aS)b&Qۋ(cUUj偻(: g,FIDG"rñ+*2?{{IGvDv`BXʺ!7)-iCd( oډ/)/tZkG?#b7EC)5z$9APmTP 9{'В`$u~\P}M/ {TiIgoʾH*mwvB` ?F{;Y/ݤ9|+>1Wmd>~JVr#_ NYm%YXSخC>/Ch+t%)YӜ,sYU~g?) '9f4r+/,0[MĝI`xРAt4ׁO9% қ; >>0@.LYG5;1!!jÓ0BK O0nQɄv{ 'X>r'cr:]D+}.Z8QQ Ĭ/ƨ_@ vBo ң7fx =cQvtcLy'ih`Ⱦ]`~#pf&xVбqG#9iy622C/ų5q$ .ݨ=)z~Ԏlm +V3(&X_cmQ=V/wdXJQݐFE!JN0-VJ`EURmC扙%G@&:3>YF=+b&;%.+)X͏?t8aҽI6Jba-|AdҖhofi e$ c:qMRνx2okMNrkϞmH&l%.e] amHiBDq}[/MYNI=vkƁ F3eDsHtUVΘ Lr~?' > F&ztq cRT%=Ϳg6"ދo֋ $C36s^d,'W?>ƪE,3$ .]4":cc " 7&I(O}E'I .iO #Zc3Mò 5 >Qyn|7:J:#Cg,=6o UXu7SL7ןI_'Gř`84*  .:#m3%.r qDOa-+aD!uKEEN>WuU\&L'!~W\.vMC͘g"(-QxW'x ;nkdf ߒ>N((aeꀐ[ukw}UH5矾32 7h'7 |`yQśJj'ToMVm1-57@ O`^TpY:3q\O{B-7w)ҔSRǵ'`+Q5ۑ`d+(ƮFϱi 3 f%(\YG3@evhHJ ΅ -n.G^~TFHܩa3bCE3Yŷ@"7-A.Y}h:"D`m[Az bNr!hF7\g b48|SMỜwsp~ּgKCRsЛ^a4l[iTBi&bF3 Hymݰ@2Kgg;2,dY.(+;MĄ˺W|}%^tx)n ɋcQm>ٮU&e^9J<ӵ'>nj"`g45x.+=!\Ewt߄&Z+Yܱ6IOf9GS1w7 xJ?O^a!4A0O9X}PqG{f@Ch6K[X42 JJiK XXC!gd:o r5o9hrvȏSKON'.6ͥ VI3&BOpsO2W96J)S4yq..7?cHBݴm59Anm 35'Jab]/tbqdN.$ qC7y>EycpQo=/ - qmTVr1wѿD\yN_#{6ec+(Fj/oCj>uSUCxUzPA: 8<,w/6R⚌$p 3@)Υ. };g1nD$!2T3fW`FfEna/_W2#gDR13!FUU%sz Ԏ8An9kV{?d<Î2^ vLHa/&u j|>58^DZs 2wWJS#ҟgTNG^; %w(ػ1ry fm֏+w.ޝ[\fEݹg6V;зW>bfZD$k[’KB?yWK@ ^nsѐ{Lb ,&ZRC"E$i㭦gNp/EݺAB㿁vo#(6H:qb+BMB@Xx|AjE Aqc1/0B=QuD -Wp`j ܅0ʬOdұ9aBLJi_NzYHl8? SS@޿՚+_:(/Nb53d6[ ?5%A[\Nb&EnD9/'ZAѻ\Ad:Q|RzqlUT#ˡ00 6k F]=7neڟS: fS^oO4PSuԺI q[eNv;VH2Uڬ7Jo=Zڲ+]c)˻)??C'oFmE}ݫVctNuȥNQ-it'm#cFÐ8ylW7dk*֮"pqRZ"vH\|Ug]_VQiբP=EQJ o@Wfj$ϘJqyRZ`.偷cCɘSkF,SyOT ZՕan > :y(@)hg&09L)+ssZfV!coANbfW*=0%"s;iUC6ig*BN!?>3yZJL0GQvoLdT,a;^Ԟ3i"nDKY|bȱ, RńG9ig_{}+1DM>~(Jup3|_aQ"oߤkQ_:m_upvb_߬ڢc a-o e"seOV;eÊpGcC&e% \37v>x']WEDW:3~K@|_̙eEy@Iӽ/%daVpC^nXm>d/|Cƌp|(9;O];mlyn ?(Ynm^ "+M ҡc0cb님 &ڒ6Ӹ`q:l<[8i1?S{eBGD Qţun{b@bvWG5}輾{b_vNR35Ԧ-0$_A{4xq[{2zoμdC_% hfj\]'PSRnE|O91ur{fAJ ,9rC.7Ʌe,26cudo˿we궻!A4{@!њPAӿ6:eG/r< <3hr0! gܧ*u4|2Y[^Ȭ]SLN!Kp٨#0o XƜ睻,l!(pcl9L Sw9vLP\9Q`?H&f"~iEKR>ЙH62[AD7 `}𾅉V_;m)2۝gǔ'Q~™l+bS0+#΅HiZ& HTV_U%4fQ]5׊̟5AŬ ouoݸ;w4oo!:ocxBBشo\p_ң&UN=r~l S"`Xg|eS ähLϗ}GXG1CEN5=H>̩tQM\o8ET{7lN!փ<4|IBu`KqJM EP&"vؐS JYŹ 6#Ihp63N h6o.`sDA6kaԍN<$M7Lͣ.13fW.M 1܎2S `XoR=fQЏ&^s"1:/|y{ yx2+Lc3Pr3^؇_(iT$lj ݾꨕGE56b !:<9+>@[RlWw9ڱ3b)!AHKJpf-y[n5.-Yxu<עڥͽHhԨG_뾾zHr@L:A\/͝6>ܪ'.R/䙔{Xo(@ܪ? ;kŧ%ʲMJ7}s")Ӡ"*!X5 ʉ4S4%dm`5IP롁܅X]vADVntΪnKΙLdZRoRivm"Ӳɼ R:6g .c8,ۀ #kݗ6C,Q\eךFl/Z0T/J3$O\9UᾩSoҫ7QG.;\wE=?es ~BL%rLc} L\uv/ w"aef4uf=Uճ3hw93cyff 3jN)r%Wgg=2g^ׁ3P? &@f] ^A"LO _u+/ xV5pVI=u}dp<hvΦ:l7)aT"$åh0 u ^kU\"#evP%"Xx=zf)@Kxi&$ij!ED #N9Ax*w3?bLp&z'cu\xKY`AG]/4'Esih 69b}݊+ +AY0>m FѴw4a$Ea`1ݍ`D 88q\d#~3#Ln{@l:c,?*YE7ߠY/3[}1ɒ#SgցU][dVp|x + [cCP<ЩE}b4?h#&% |⻞ͺ?S08S֮Dm8Fo8$+ܰl7*(Yo 3Z'[NG@B2ci+x[T$td%3W՘:H uLUԷ?4)B֬Fо(EF;WT_~D|ڙ Ft&_ճqyiqwcrIZ.A]ժ׳H0KvFZ{}Wta#NԺ#l#@YHf4n ŽSUIXWq0ՠV}̖%Icup4sUrP™ecJ^*2tQIkSq)783YEܩ99/z.zfb_/P3drP;It)+!&__cB,MXwzKضH9H5V.qe.u/9*b`ӓ{Kk7˜{+*;K($L2FYf%[Tqrd]ee_!dwЯSznOe8q@uG+;.S!];WWb}ϻI;E BՊ6wie\U 7HJCh3xR̷ B6D\[mrf'?0@ېj{9)%vIgX\͡Vx3.[3NP*x 0*|4X;XhwK.qbhpxL~mpr !|D}n#mBtXy䆤.ZlW/Uܮ=z4jDj2яc|q- ,zg>hMX\+X(|EP m"O:S{SdB2羍B v#MS#sgE !ZRMD^@=qlÀ{u\ jp;ൎuY.cvEo⛼$CA-6s<\3NI\Tj)/fBd"05gbå1Y #/}%MdލڈSs,DA{ 'du;߼36T vy8-)(dȜ֋7ֺ0*֋5&1?(ގ0҄p@L3/U?- Ku^niΣ6☽ HgSu ȿ-D KV?Sh۸q3ۦơFL7qnHMyׄ0Q Nm7*(CS!l;#s O'Ku'ϲU^p(WrȘ"/ ilikrn+SԯePT Z` jo\IUP)joyzt~ Qo.UR>n?g)-ݘS)h53x @Z=*mz VNiHnpڤt=+[?8ೈh> )_0oH3Y+9KJ _ȉ jj&tHmyTN]>0ȵB`?#~&3;nbE|J6lm$a&gy;I 6nUa%-s}'9ķCQ}tyɃzw{0r@>M~ Ȏl-?nزV^tQc$S:ٍH#_6T.gpr7!6\8nJqi$ WB{ڰۇg F*vۋ`ÿ-2Z+*JoQtFmO+Fḳh+>šL4x n@JA! LCNDu JBΆ%K3v^+:7獆OXaaGo$;#mG`6D}4"j[;g/4%֒.ZXS4 ԮHɊvxt`)Z2\c4~6eިnUhޟxr1reяtA#wSzI=EzXOE31:@Bfl +ԄS{Qsr4/{ѧMQzБ.Tx'ДƖ3=MN`# .ag28i<`G'ú)7IO-c0U~I%r?Зx5Vvjv }w`] =σB. AgN0MZzDm(;4d>DdՆTqA٦xe8RIʭe#.^N[3~-*:G`(UL{@>MˇJs׈ί 9_jpcfw %.U6;($NxFxN$՛!0Z0Voh^itC҃޷ {M6ע`wyPEJ׎PR}u"rInSGCCcnӢir(H&[1;{{񅪆DF7ύuԡ(5f|CNn n,dHBR*S[:a_`od@(Xsg.r~ŽQ@>w%Z1Fi'3RܕBԝ ]ث۷3Cdw\)tn0훼ȍTʡQ ®8YZDu c3-M~8P>⨺2#;t8:^ 5ˌo:a|_4fVN*vm0nlَn'Ha@jp!k>VxCDm8RI(U:x;vjƨz=`k 'ȕ*@r%|vM$!K S\ommmY.=F=[j#Y1>ެ^:U[ ~qe QҲx/TAk 3JsϘ`rpsY:$%c7ox\7ۜg([e',-w973BWŖV [x[Ȧ_ȧzgm-yM:oMaj,ԛ| q ).#w^?1}hA8qB&sڒ+9ȘEPKDԳx2 |7'Q RT^ipIQF >ȱ;̅M=i n|ѯtCw! .:,գX' ({ZڎF:*I'krA#nqRCJΦۯɢ NNy !.b%†ynKK4X6bB퍌uS>Jp&iH%| j6R&EBm{N.oFydRz_o8vI*7l)uq=(R$A@zmNSy>"_w{T 2Eny.9o>KS}MK.+?Z&IZlQ! ֜ jA >D3ٿ> kpPpB|3 ؐ)4B{j}fC s@SrfjNXg!U},3e8LU8L|oDYqx=߉Pߐfr"|"ֽB<}9&@or{Ԫp 3NN@^4uuέ̟ y^hEMJ\n"MҶߖPDM; $XhF󹉂F{k!Hc7v4y*"*ǭ#1F?SҩEkpe21 Y ~iLiDŽI~R,T6hz,S nsUXsԃ ~_3=-%T8 ^n'l""=20n8@21%$-ViɎWi,>bJ=]VH!%RvisyX8"<UsnZcŝyy[fs;/+Jsm?PqW ۵:ϖnᰍ}J_a)x^!lNfZU`|*(PNJZUܲ 9UP]Rw" ,\AӦS-)^1"&ێfJ^nb7I(gX(^paug<Ƥ&8 SvZ}k5ɯ#ٸ>VtE: oȓh!E1:ss5!{n1MN᣼;l0 qs"7+cEn(`Q[:Q} _9 c7z0)M7.gWlNȋu!by#-ÛA*϶U?j 6)` ։J#<6 M͎]}|Q,l)R.ߟ肱֍d%B8Юz0qI+2 KHyeNR BI8+ͣ7hͳ@V>|ZF“Pܜţ ))q2[eUGd@t"nJ_Oo@z  >5\"Đ*#o7{ Ļ_.Tmbjl ?W zPM &Qi&g&0FVrр&gJ8XLТF(&o*>gST-G!l*]9 "lg#{=iAk6*hQa.ȾywC8miQ("١y`{X4N0p_@NIja/#23fjOݔϖϿaA ?CQV3%؏P,⳺)7,)۵s6} \į-|\;D+c"s̥~ O F+Pw,ԭ7M6w RN&xx̶k7{?p$'07lsFgXi\ HY؛>) 1aa5k Ѥ8S-TBVsJoIX)ҟ0<*4Q&rZ]M4VT:?(j@G9+Ng&fntF_8O50*X!!-3Jqt%igga`!m}[juˊQYc>W!P:&&#odiO 3C*O\ NacYS:< p0.P1) ?* 0=OF:k0#usSjPm*6y>.7߄S ;BV ]/ȼ?~ի;h#!2*ۚ͸PT~0% U,i]g{fF% t>])$oxWe^exG+:M `#=ߗX<n]ҧ`iVTڪYFv3>MO 3t`Agc;y. sZ7pNRdU/pEIsSH2xP8C~UQc-!gn9j*@EL.͊0sEu',JBMk7Q0+g."-'}`yYzȐrуy>uwBDvL13bK'sk ړxqJPQ]{Ȋ@\|@; U9|r)i$iW^Lg#h|ຬA6Բ\|ST"} m& ?8{VnφwIz,WEEtb)g*Oa#ͣh5AeٓVZ)Wga9bힽUʍFKXnNH12R܊+XJX˿Wm/HP<,d]G=Q&ӆenfPXsCUt@֐&Dyz ,>)M?KٮU2:m Z'4{N"96~K6&uWoW@18It-kT|v(ZuɅ}kihwK6L♯vRt#Y~yMc+OKnxZ'!;݄'AȢ<;Ѳ>|x+Gya:$A"Sba KD,!KrB-ք wj01N[/k=CG.ۦ~7E\ < ZWaET[WYL[,bO'›{H"N~ZdLߴe,XcO#A$xLg?L^Z9_ 5/ˊrOÔdd]š%}e1ϝmLqV(A8YsxO%V;XV4e[Pze+y{? 4b..ĂW.G. lyV`8CPXub%mT\1~3³in7a3F4:5M x\OF3hxsZPAg fN0ؽumLC͑t)9"3CbWX:?JW״<.@'7Vܒ[`wxIg`ŐUK+<-Np vRafoXZ R'n3,'c  ՆՎ&N8 S*9խ KZJoSB Q&i,&:EiKqscLM6'Lɢq.]nCPM?:֮>UK(H PcgRNOĉtL|/mmoȳU09UxohYI|1ڍm*'tWE]K<1v)g Z )SL3#Fc9!R."x`#U=#Y\/Y <]bm GF_'N!UV $ؾձs#ՈA ֶ8w({E^k$LJZ{mt~lY9si'1 g˱Fs8=V{FQJVƠa;1!0rA rYx'Aeha[Qj?L3|GgB+)Ru JbgT5K*м&M(NPXe+O[*׊$FO[WQ0s{cA@hٗަY^M&_/)y%3]ijBh.jeo<Q0wru9G{=cUe7)ԷY 7=jx<*;>_ LZځi*>Ҹu 7qǥn AS]wcK Kk,` [׍H5C >eCudOV3:em5؈~ie%w8Doz21.ǯΝ "FLT㤢J(J^)&[bi&(xũI^o^w;ylخ tNYH][vGZI\ZFR]䚛m.> |h>7[xzCC\˛ztvmsnę#% f/c?D3|@ Bks﫦m=z s`[ԛʲ5sV_\">XI&es6U1y  ^|;Fpg!!ސDϰ>\byѮ'8z7%=5[OCXwrgŝ9Y/A(MM7Ԋ ?p V @_hkSKz1 tYͭI^PyMAu)Q?4dpi;v FMi~霼` :QQἭ[& c>?:v9݉{+d_$<\\e)Sj^{q?(!o"_ǘr5g @h <Hdx3b &Y$-WuNLqqTp,~G򔦧6 EP2!09ZCd!1r [Yl{ P8- uP 3oRS:sAcBqNq|?,{Y,qщ kRW ]UkBJdjO+/u%BE2T99Ki9Pp:Q1VX;{dS>w|J1Axf4,Y#=P%;fAdԋjyՠ=33 ם[&PB׎TBgW̏vY;\`ڃ@""kE;u]oݰJp0&%hWa3F(,ra6Qi;*[Fw8/f\lCRppPzɊ֊_h `N j*y8*Քې4 mt3͗ ς(;M1iP.Y3͖E\.cs]yr0SrɳyN&uF%ԍ+ͼIrNIDҮP58X+%\]SrP.Gx"Z#EE洜F|LVViNN)$گb[L9HI^c"+`Qe#(o`$r#1W 3 Xw<]ĩ'Ճٙ}"lu#{,4aI[L>$|b& Fϴ 5 rV̴?s? 8Y&h?:8|Ȋs=۽tݬ,q[zFs`"Tr܈E.D쫂D]C}2RPMyn|$3%v_M:-+C0.]s9t[]?$ߜGPO<IsD0K$ء4@lA "4&%VjL]f:GFm w3ɌBB.7B4zG"J^F}r<**U?Pa5hyTW|8 BuBdDi qyoal:煟%9\?}~ N~O2졑S u.RdD/]`+RBMzE>Chx7= 1R_b[;{!0X>kۤX 0:$Bip]"Y Κ3לγJnV#KLbY_|Ai$P_ 8~M}.>SAHNqS=u%n_15 IS/i8|b'7`oLZ{t2y0Uef 6i\1we`#ۉۻh:rV9DQʮX/5c U}Bb] @~#LmF!uCGЫ`_0<4i,_O՚,*wo/P1nwa{ B8nY ™"Flcq+! eJm,Z9.{Vi? D 3d2_wj_%1נ@Et1Zx73a 4A<$̟Pa_UC+bKP(Uo_\p#,;X'(t{tۻM*ܐ#*"o!TG( )b΀ h mKX/5LLD@rH@jJ"Ga0co8JH'92 4ek@{CFQ8E7-V>n o@ 0/A+ZR4G SSq|0GHf0sms)Ǝ=lb>bQa)II.z U',X67$e.zYj*@ PuybDH9Iq{s{@-gsٱJoA%p-[ DCSf,Y"ovRvFN'˽Dr@UvN_1lV%TMI]M4$>K̞,BW2=&4s LE܈&+Ԡc,w?_CF\<$F/DE%UEyĐ,=D}r~jpYF؍> FQ6F>kF` k{ tǻYnO]? k-+q7JDLft/`ؚtW0f*{vP߁WidqpCɅ{P ^C+m*ge}tQI-cRJ3 ɱ|w[*p" 2,kq$g^1>ZgCgk$ ]aqg0dXn~K_6tT/Cr)lK)NK{^PNzWmr[vfuԏٿcddͶ`okK # nN*;L$}u#NV;-asmDY7RSƹ$%CfLz7.#޿nizz#H";)yG&zJzfœ@!ɾS0Z )m/bcuM,+Ր; \ovf4Ab^5P&3[!yw]pB T^`LwT7n=q?ewHMuTW@S]-r< ǜKZ\*0 6fKx5 ڣf6^ًB|pck{+wk=xBzx3/6‘߹\@|s@91(i_͢RpwȟFhđ4S$` )x_%kD<*QU-heVw9r:ɔB) 8Ԅ 6R[6SCEUh9xi^{?Ig<반XC Q3F93ޏ0ҭk[WΥПA2y BY=#!dbTw@\*mA3{"J7%ɿj(CZ oZRiϴ33˶YW=zi6qItV $/EoJ8r.> D|)@;Z=8^Sq8I̹eq5𣪍V֑c?1dt{+484gגL>k]"|C҉(x(UD>1髛`QP'T HOQX2I2!w쐸?+ (#u& kd [k_{8tLTkWzI+V!Uf#R -@4 EFh,-dWyUQf/G3}"FQh|yd89* փc^oLp$x7ΐ5?2 ].KN &ɿcADk Bܑۋ҂ x 敲0!¤Ö`!X5Q|@5B$TmnS4%a˘٫ P  ^4wpd1%(+JG2֧m4d[X,Ujj2cbZ6`s%φJ apB ΤS}oĉMvbC|dxq& vHjDS%FNlV02DBtnr !F.B+"ˬI./k)HP/sy>BrFc4_ZC2>*0BT} (DFG読-!}p-K`aTZ|M{}@߈,Ă ?]aDOPHK@x;ASDu@ tٰ9L ܳ{By u<_/G1=!}I<--H|ť"sHYZKt~!8 ZQI8)'Owƨȝض/cuu=km:0u_Մ@)UI{Kv&dfНuVؚ|A aE0A0}oH# ^VN/q> tc\YK1:.c=lY`IzP&){p.x܋HeG#в4#-UoWMݭChc)~% \+MY fwծ?h` |`0瀳X >wC 3{!OC ,Wk:$U&h~t0׍vFB L(q[y7 7*E- -oL!x(kuSʐ@WH ȅ_[w4'c,pd$gIXY0Ҁ8$鞣Dzpya/oG,;+dts761:ɈD5V٧:%zz0rI8ȑAK_8x\ ;%Y1o$.wR0+59i?spj1~*FC/x,މ֩<L юjLrݮx[ņųQ 9@&0]@VnpJ„aciMBOOr޵jJ Cֲ=nKW%O+R4F+B,F΢OsrO/'MKLHdb2̍屎43XE8f@3u#QL96l* 3eYQR6!yuw੒=Ҳ}R,FݏJ7&ͬl7R.݇|1 >U.ߊ7hE7%C Eہ튱OTvgR׈5P2Ti>e FTdaz((, ^ŪVʹ+"o Y? ߲ugA-(PO3]׽ֹS$$V_q~ v̦rӴ,  $Zls%JEDּ]*ŰGzD^Gw=+/_z̆"v֪]ﳹBv:abCh9Oz8 ,]*`WnhpQ؍8d_ BWg#ٔb 'yx-Ʋ慉x[42!yΣ J"Es+ͪa?2RWCܝX[a}C vpJrH,ݬuD_b2_-d#Y&$q^[ df A/H0.(%3sp!MZ`{VpOdr3ѷ~#E /e 6 B?EV<|'R>O HGT:dgGf΀T;1NCn[~W/pn/Vɢqח(zwca+ 2^TAރX5 #H j0W,)}F}v#_y KluCfN#9plJwfz3!t:s @ - wGc[+LBOOD(u;b4$t6^r?7~L4Au'(470ڳr7z8@(;eտ2g2~g6Z)qҨPɈ*\8_K5&(V$P2O8j1hQ 8E FMs +7*9aѩIq,OT. 9_ ĜNse"YG`L e'DVb4Vcq?4Aѻ 19a2z4LFi* \DgP[h$d%ԉEYz]LU"[KRq2۽%=\zJ{6+_D6ɂB&uC=V4fegzD*(~h+PYai7.3Tn4lNAl? =z䘖:UQxbP_ c1ImUa*Ql$NJ0|"Vǭٷ}%<eQ#gS imuNv~a͔ 6ϑjESz51/2lR>ajČ][Xd{`~4ɽtp\𦘷OTxQ)*⾱TMNEnxcK@_(SMD 7` 93R gy/+RԇjG|",$91##\'j~=->)&"SH˪\Y*!$SY 6nJ J;%#OD`CZ0$Zma%"G"gE>%m^-p(N,wg(Œ\\r|“vk?k?{b*3rLm)rdT:P}Ď蜘-IT"}-T!1JH҇4fG; Tƍu[73N1 =>YX`D7 Vϲ՗US+3ՌxYJ"%#X'is4C) ~Ud_ey zp+ۆlѢ~4܆UЅn EYVeޠmmxaR';uxrfվYȩ @{bX9HOS7~Ȫ._Rd71[ >ѕ8\NoY۠EeD,2j`a6ڰ(7z?le;Wn5Z\:p;K:/x+ݰ-aT{NJCѣ̚E+G@@CY6kҹB; O]);\vU%#xs-*%MW~70, እJj%qy(q]P p;:&nH> JuEſ1Ϩh{K 8KopQ(oy*$+%Z !xy#4(h(!Oh%|^4C Lw~čb!Л⎀AC9^Uؾ% Cnv{ofN*SqGwOi ԒZSpk˄q]x%=ri%H->?z#D84 n2(;:4Rkr[9蛘-mxC'#{7JL<[MC8f\~Q2ƐuPHY&4|d_Dqiҏ s\"7uiLxMW/5VK(R]T++JIwWNO''[ @PiWs1GO,&jI\b~XL9\a? ز̄hq3+;fS%S*ubu.w:{ݳEJiWF ) _7XI}}x9;@ќcEn&8xX>V);&Pls&b|b=Y:cow+?$g A-Fh/ڒ]L+XӒ@bYnbX;o̾~Tu9u+$-"Q$\qfw}?0١DŽ>UobYd傖пOpn1Ip-Ն6lkZeR)74|iW=y*1O5)Sp &@1k kǒ?E섺r ̏/^z kVuBH}՜-.I0ϊyaHF!t|^K쥸u2tb+U%FGZ]:<ؙ`{|wʾʄCSZ!E*5%D }&Qs{6mӠTVҪ@̓.Svi<6ӾCe&{wS!sap讄qI=ӽ؍78%L A:y>jRߔ9"{sRusc [>2xo| jK2A1s+KV٪qqGW^]+&x*#%Y2< _qq@Xve¥ٸlz֒H~!Vߟ iI]tEdy<9q'K(Ȝbܶo.?Mzk-v&א> ᫎA]o9hW aIY<[v(CkQ Uv/hpkS,Y> Ө'E$1N\ L[v7ʬYb(@jJʞ&掖{19-s>KOȣn*-顛Q$ n. a^&r- tijnQK%B.F&{YJ7DvHm{Fɚi0SlA5qXxgS.&Z D} d= 9VssW*?5^X9D';Z+nTv@`|3+k-2ChSS˧6ve *ρЃ4*v/YY^L|\>6׬,聊rFCV K/0xf~S"K%TfiQҘmڪh-JёQ$r@^ډDql d]6bM(aASwM+) qOήdU2͘,cWVP7gR*0bI sGsVB T~ <1v'x9rgʸJxagB\پxe@@1wN^ x"q]veh8QkBFهn72]U G>Nѯp^߁aR"ine~zn=OŻ&@` 3?IwƶqVҘLy}ovB_E'TErzB:G񳐅^%/ ?'2eݨOkuCuFRBa:8S,XW/_K,;sE;R-JӜT}&Thǫ; xu]Rls*# ǑK>KJI:EʐlN_k.,">r^u=)r"T "a%$CU/93Y*dk,бGn?m:+UQB:g6>*r1E^t}W /ֻ/eA*iGE/ŰޡwY̆(d+׵xNT.RԉrG@1CԏZL{CYbi`CcϙפVG5 v.p.cؾH^y?/I2m\*ͧșhuNoŰ&^x}?PKiƗl,7NjF3"yՏ![ ܝԎ+ܢȆAtd~[+wkd|mMyˍ\T*NMnԏNdX[P%vǀH$v)5$F|pqmoBԜF *o|ݢpۥwbxTC?@l[4F1lQ9 Rskj#(CX!؂ۥd ux,vg#Fȏ074"ti/@?aKwf@T&#@0J%zv=Eڻ}KS\ ~d*fǺ,Ly$|yb2"Y+YEP2v+֚Zo-4GDp+@n"qN{N:1ŎUvOˮ1N%tSRLu )Zʨ*d5&wjbpL2o򩨙ǣ:G?%j}ĝd+kS79OČF.cuuA>&x#il/KrNsD7]!9r?Ecye煱/ $g/OYVHk-Kƞ׎\&Rc[l I?珢;XG1 #Xd՘yx7x%O /騘tu`6Q8-.E^T$uzZiza:Mcc=R+i@̓ 9&#x:[e& ,{^S:r' ̿3e&:9F=&ק;Ba{ 3_\qFb*¬NihSq}UOM]ULPE*K=`Yy;MR0TO$`#5:nteᥘ#;@oDɞ5qW+!e(L>`ܤ>^3! ly3:7v Rp\O&d,:j" @@Ft:-޾?SS Z"y!;^ RRfK8!b+KD\jR.t  ;幉 ۾*ˤ>e8K^%%jԳ`OF.:X=i[mBwiUXy~;1љy E|XLelҢerVg6ό7G AEt?BMTad9f|opǣ# N`%K͘0Wr:T>HM~cU!*uc]ae]sU b/y-yKpo^BR4 {(NT٫yS2V̚=tgV@Kgڇè>oY 頌%J$.߹5\ZGF/֐i+vk6UQެҘU TO׍=_kv1X0FyM^OR `ΣL-f1J )NITȴ/}^yCdMb^ Q(Wy{? z&/w\@p?5:,pu[/-99d+"#œk f4pTO0O@2yzg5]I[(~Cuuxa∲j,S.芀l8k+^+]f~ՐG>Z>MP'msY^SᴜA+qvkS/l=]=![~*\\"&PQ6nk+?T=^Nz.L H`v kRC0 r~L.z{hH9)ߘ2eR֜lbq)Ct>!&K.Э{ iԚ3r"#vGa 7 !ݣ_xMSyw@Za#Y[LYyk&^O=]<N͉*~c$*@OIA}壯lrh=gQ470 7\Gx+W&/t2eo[0  `kx+_[\C ^I! [ m 6o?E"m c&G\Ϗ=m*noEeM#BdJZuh6-(OM{_u~L8&fqaKL2gxڪA)pxtO>`kݰ*Y Ć:g>"L35OlOXQ` `{ΰZ4 ZZ_EM&ݣOɜb9, V1ەJsa Ιxem(sqnN$}$dj &]yF‘?{MFϻ>v8"geƚE?f/џA[$f5r DRӪ$l'톂2 є8שVV2UQ E>:_Xf` J'e ƭS*{ec of2zw)hdQ?o@. >&F=eR^CP[<NO\FU񏀡+뵎xYIvb`0z_ O'y@ߤY@4bdj\j :լo?}e4菷eukF{2AJqowlYYq願ɛBN,idJ{F$@&R !uĴ'$+DZk9d>0FϿd]ٮL '*?['ƅ1Lk8r_ sk{> ~dHk(Ml*e著)UXhL @!^{FybBOfK59Θ^tyOVec=< |0:{uqC kxr)Rµ*,Fޙ"pE&|G2OiDh۟U m6(Hy!Ⱥ~q^ ~V Aw%\!৞v,Hv]f+()KQ `@b%MmA xKV1mR@ݿXNd`x!XU&Ms'F M?lnDԤB߷'[1*5@[<#1u֝Fpoc9c5gzBAi>‰_?;(fg!uCj/H6"<` Ji9k-W&ؼ˵ "/[Dna縃ͤ9EQB \+=p!2B0*Jqys{`~UWgv"ucʯjM tbVjh7];r z+Se@PXc3Sy_d9tĿcB[y፣j]IDCR"I@2έdkz(J.7JړL5so`&OEy hHADPKm&  wHi\sLJcFE[D`Z)+^ [f5OvIEGUc9ւ9<&W]'؛ e&?I"^[>% p~ u [);_[HP;%Ц\F@fq'!cPcdLW͆#|296$ƪ.V0)W'qfs6wEnEzU' XzVCNeQjpm_VթMh;2]K{S&$'*KIePrk 3_QBqEk?3&D=Q uw`jݺYxf\Ͱy{mۋCF,:~<|ΖcVeri~pH)q9ac/J,)&;,}JVr xFmRxML㸌b*wtN9)ga[n{ /,].IydʪUb|⊄Υɓ(9 w2ΑIB*0P /lAEԪ3ٯx"+eWӈX^qSŘƑd Ca0uv!lB7 2{ϩ &KfG^omԶ{V@avodCJfNQAbn=CneR bAl b, 1{;59Urne/5DRE >NȰgy.=W:TK]!mkN[0tP6@_/wq輁g( p \i,J]㹬rj(&[rw̨B2lb\t΀>@'FL( ODe|]P\c3'iܥSm-{&ղRgD|./RfcI*CʡmβWfa%6c`ClgN~Kr*mߍӿ&# FuX=?O^mHoV$SjEai 0+BQ9kH KSЇxSEaڃT*AAɀM|>9 Doow>Ϧ uX1lV:U2UȜ>|=V`朰>C 0:S/.8-r2djAsQwzπ^pdn>m4PjVW=S%xG$/ 0Y{H1A_iƓk4.d$#--hD cEXyiw0Nu.:eF 2CpC kڦ s6.`9C;+)[7#bJ=ےM6Ū E#=9!*O60mV{=r޲kzRAp*y8B~4^ѲRG+@'3ڴiDKQiʜӄԗDބ - &GYH@ 7 (̹j3KK!&DޞV ]׆)Vq3dqy<;e_4}z {Upb<6-`GStFwDHCSפ$N0Y¹=lcL JLuʂ&˚:\\DCEaN.1To[8CBw(Wڔo)k4A,sS;|yqj!=< 7Y'a9GDg3g9&Rbpɠ.qPùOwtbX׿lisTLm/BMR_j2[_g` n"!X׀GNH01 Y(41'—WJxX^4 %=_VHI~rYXAs1/7>vቛu;/~<.K:ipā\ucUJ#.V{䓟9I_ah t&G萚Yr83zVI3a)w,-;dB{V}{NJQ2x>b: <0 t,8?9n{)䝲{leFS4P0st*fWn 2ls1O *Iq\8:y"\7ga)we"dUHETW't2Dy)~MxPIjs+g1Dq u+{Պ{#+=>j4}.guH n¨G8p)F%:T7  |ݚиK~&_bY ?7E,#N5!nXA:ʖg@m2LS9xRXt\Лy.F3(W4짋Bb;No^Ed-~&7:] Q^Nx"I0EM|u|f*O:˨H߮pL 0O詞:s)mm99Y~ə@x&>+YrrkʬdSy%2S ƛzJq' -;qXÚѻ;s}\Nyx7 |m1bl W+mXHE?f&-ҒT[z-Jx4!0o 'I@·6ka<~V <3y|J6(\k\hu;](8n`yf]aܾa=:_z"e2ʟ#Ok$9W\Asx#|; ԥן?tCiȣ}sb) =8,F^}\jwaD_\V9kFCowd,4U )\]C LJiMWt/5OAEU-oy4lvUc xʳo*vèiwcvDtW "q,3v@,,)cqfWaƎCF>'zH b;&6(ۧ-ES~DlXk}y'b AЯ ;d} AI'QX$#"4s+{48Sb$׃k!@?::_"AU /Rho@45G=h JOv3򟇧%#^?!&c4ތшY.aUyܭ¾G}J5}^JH4e<$X`:fZ*G4F6VĞ;ٕg{q x%ucEQN6h"29Wx P>V TydzVLM ^VSˠ"~Bc1Z>C7@W7),??!{!R΁vhʙqnK02&1bg\yN7Գ}ఓzXhZt6r+^~;iO> c}Q8lMCջeBCq 4L N8dzbFQ0tj%:5ST n}+S Vdgv3KS T! ep>IWtxI0Lxd5Fw-ejcH xcoY֤c\x-Yf͹?ʝL[]d/& n8\346^OwRbU5&A Cze;N5'*ރmwFE >*N2Xd<-_˹͐ 7ԕ#]^Oψöoc/F/pe}zPex.zGSdtc[G-e֐ig嗬_Gaz:8Vk:] #ܼ8" fN DG? sS9Z)W5űEZFOjS]A^ߊp̐]4V.j8U B)5O;ꇥS+$YN/bll|7DD PC֒$Jp\1&""~F q(&oRA=z4Fh7}پ ;ʐ"F.HwK 9e{ZU4^׍{չ>xm^S6{ɟ$MHƩMN&mk"(E\F_ Q<-p #v?Iԛ†IxNZљN%r+1uU2gxs!@gtiZ8! V+Դ}_zggma^"/S#InFP"҉`bwύ}+ -^[r5Z6n/XqLlĻsե!0I+T_w;Tʙ<^ -ᬝ;V# 6m_?C7qehM cb: cbYj>gpm/B,Xm4Tq FDv쨕/2+XѴL*;/\/3H<$%' cAZIuBw\\<&x;T l.vRWqx=f>bD=h6W`3v.c(\"%hc-,N갆(XHi ͽn׸ ddeK230ߙq0nuc`6@.zEOx7Ձ漓+x)KuAF _Xm9ob,݌VǨꞒrة$/Ti 7 ^@A'׋r. e-AVq#,}v*»d8&Vq.E;yDE>]`8M).dυ?)7uZFb%*vĴnr?p$?&́sąf!BmAyhs?]? bx/|}G Z_2J@oz3`j^IN(hJѽˉ OGQ;cGY쿑Uq}y$?ܵ\/K\ڮ3'o"$PR'o320gMLy;H?yo?޵05j !y.9֐=%93~@ݖ`-]G<>rzv9Lr0CKYlk/%*@!bLB܈T)6>5e\ɢÅq?pLo rz/Å.6m!'t|@JK5:h)nTOqՃCqCSď3iAx:4<@8ABr vmQR'b+ sg$rHrHTz,"rٍ6"a7q:Jٰ-?BL(;'U7U##/$\BJ`V d cnjd~t.eXvZv4P]uV(ˁ)oYnr<7fA[+ɎGaYۯnI:俀 dEd[Pʖ!" 9]V0B^ҘX?2YϠz˳GY5P~mgȒEa52Ƶ n{iw1P(1@znv(PQ &B$/f)%YYCv=faԸ_"%W"2?}C;W*~̓a"hhnC띊.C!?HA?)]kȀB\cR55At3rpR#I&t}kp> ,33 Y=oEw4;ԢFy߲om?L:$X~ì+[,I,.B:Z{+'(&&5LEPmkmT7m d2~El׉Om?їjײhi3~y\f"jw78µŮ$ĥx #cR`AX>^K"XƵIh>|'DV4it_(UH#Y$lcc`| \pD{ߙCk7@#ln9ZZmpơg*g&%Uu݁'$ȇgI{dQIE]Erʁ 4 ƾpnI5nB[NY@8"y)sfvUA*Ln2|~Uīx郪G?F@?)]^F"&~-HKFՠK~NeH7VEKЅg]Z[v p'Wyv|zĵ0af5u`uRՐ(Y>Phٯ3kJy{(rDTkJiۘԌV: D0Raؚn38=TARp九R[[- 5/&4,Hl?CxnV*a(R`GW$@rV5,)qh|ۓ1jP5>Ɗ̮Npu7F[\+A<ʙJC  w/YƋw8]y&YAΊcU?#AZp *G'.pVc@R`+\sC /@elZn if+(sOP D&wij6N|eb1ШjN7P:N?,rC A$ܱL{X p 0.N2QufWfs|i]ؕ6E Vy9|1~:ig@eHH)%c]]0 Z3܈i VBɰ(yXR2 5,E6b2c#݋bqaMf]9[mn0̺EKri'bnFQ`2 (=G|m5c9u9Lɀ&u@Ć0-LQṬ|"MG"=LXí&F2jf.Ype/$^[qSrB/=62Ql5ZOk%]UݧveM76zſᭁiMJaSNޮ8;TZJRRFF|2p+'=0eYɅ6g 5F!d0(ut־scΝymEҘpǷT ; oyXk$hooq#z,vA?Δ>)嫎"=5HGI"|';#[F,EsWܷO voˇzK0gU #&G BɥT*KԪbY/TW"bF,e~2@r;T,C+_Q@JG@RڪodJf"?`+t^FqV*ޘ4x ]%Ժ㒯Ie,"EV~6O2] S'ڠ;.w:[s5cYى # t(920ldMRI@CB'|eTz\q<5u+KYwkٓr[nh֏#dgKP}$ӫ7g;#6r{,5ڑ ҴsT+ǽgcSvzi=ky1}o?U]]'fL<IMz6^GuXXύNʞQS4!Ϩa7Z&PZq|ng }x+TB/,ŇxB)zBMuAɏ rv͚iq8TB2?@5JHgG C6 !PH_w0{h(`NJDlI п, ?}fꄳWYE51 M4O?w" }')ƾ(o=|WU~J0QLK<'鹻Yt@`;D1+ vTό TŒ{hcݿ\*ogI(/RMr)s$?قaHq$dJhPߠ)IYE]%½P!#{?롼}F3K`wr5DVd3U&\G!{?*b=䑟kֳ"-0{܆Bw_7q[LJ>$L̴f ڣ=biӺn~SϾq[r\]]T[֖a7  im_"􈀛لu (]*Q>-se!Mk,޲[q/Bf@1R^[SM?L 5խt'je*ȦaX?Lp>kVrSJd+!h h(YN9 !XGD\zE5(>a=]q{z+m&5W( vH5PL3`z{6lXNFAS" oks81;єsFnw ;uN\8aY]nV6!5Q0iPnEQ^ 2;Eȇ^ Z 9>4Lz97D9c'|=hndlAԜ+-[]s{!B].}<.0@̈́cA򓯓f˙RVEą U;V^H3pJ]6_(8c 'd|TTvlD\D 6@rb+-l^6T[` O퉗/a.exIi)Yl5l#e t%w 0Ř6 |2l|%@yܲ.~U]wHvuDmf,UAK>_W.0d&pb^4*3e. y5 u5״[i0Z>$`zW6aߥkÚmDX :{Bppb8/'%^o?oytۢf%UtI^"uY%^AGbo%<dW(Mb:;6f&,ED0{shRs]0WuȪYi͘R<^VP8 mJ`7RIQqJ/{9M(Mtȵӵ_*6k6GY x}V;( {/?1OkO0M#ް/-;l{'?NT b+'P]R.W\V!b|,nyjM6M $-Py)b"#:iyEݩ U- 㰘%xTQʷA5g/[:;s:hhfS㸽'zMaZc&0>z9X(\msfu];,qa~*DV D.UK(unoX ;w| }32c`o7=2.M7_WS^-*7l.z-*P_f <ŗ w=ld;ԚwRH :3aP `+V2\}p+ny=@޳; sj@U:Ѧ:4gAN>YXR@`(,S\F6sma)fjd )5 1Aߺ5yhg҇#oM:) Uw}^hcH_z1~^teb;dk}>T2BBIښ 8w\85𲸗0O~72A*jb`W),d+Mg d N)z:t)A02XC0/{q_UIvUz[कs 'F;[su;+nEy9fB~ <~vpm }dX2,Y=?{JszM -w#w;@ M \ڋ_ EM@K@[U35~C7T@(8nC4'  ޿ >vm!jfY$"sP8*T5W0 .x8®KPۢ 22(awꈾ\^m#NeM" KnC.GN#khSD;C56| Zc)+pT"2}mćϡ[P](}ާWL4.Tb+%TtFj foSqSa[ˎBL8R N"LQi@ SO`Ts2Vxp"~^--U+Z=gأ9-[M1;EUw4Q:M sѳ 3?1u( r':¦iskO ׸U75R7B>. Zf آR~({yr-U>ZN-uݘ6Vѷ` ܋SяC_)dYf)CSU}5h=tj ?]!*>#KsW}Zviwڛ'Χ4u"4"_1"<)&Jbw4ͲQP*팪)7H{SpALpbi=h3tX'f;d-W=~Q%ͥF sW<]y;oS'ʽUWlQWʚT!1#sxxw*mkfZ`%=Ⰰ۷zF<N&pHeS$Uqk] j'vӏG9vt1D$^'U:la䛡`9ʙyA 6d5dqP\L5Xmf14Ե޵}<0/)X$3^SSwB۔[Qtڞ7Y$G+۬w'|!axaŞZ藄M5:QͰ] 葪Gu6ޯc)b>7˾uAeWkRiurgn]"h܋YePu\ĿRn*[_l2^j3,>~SMSaFGBs.ك0)=D8ƄgGA*W C?տ4keL$T 1ХY4&U pjtpSNAY-uHvε`H0LFtKGsZVӢl {%v/J[@VٮU\8@Opy$J|*(ofQaVS-?+y?pl Ń[ L[UUM$D@sy[t1Pz3%ZgL~7 Ʊ2"W.N,V:Rwq]Cx9iC 띡(Z/>-`Ľ n(w]Z[clQ))u߼[Oy'=Y=Z}fJ" v?4?h>LRbK"rep:gҁonzJ#k U"B i_҄-5^Y3ݸV"1N}WqHWyӟsFEt)lnvB6jqq}IjP5&#ӱPaVyPyw;0K56>E boIQe/,Pϭ׳{Ƿ$yqC:6Hd +S XK)}Uj %dYo3RwZФd4{&崀*-%LWϙtVoeok8T^f꧄Ę ]&|Ϣwt#6|٧! }~=?riu|՜s窛ZN?ۉ> 6k.فߖMU&޼UI_V2*_!~ȮU'ˢ38Qٱ@۳Uvf2"6`.,‚㟹e?,lh7 'WX{ g#~B03$=PhʛtOlٽ uJ&;Q`bnQU$z}8xFlh-9uo9ejCK ʍCz(BDvz64HqÒaťW(>OE$Oe X'Ȇ jE.bఒ4h23__R? v)iapȃ L>.$ZR  YMU$X}R0fOul-5^u<ncTr+rX#%"kv6\0rݿT?bN~<u"Y$ /4%U{KH.qĕ4C1R Vkn]V`=IU`6Ϣq70nk!xc+ҭS.2P+]2R_aUQn%͢'[ Y^ G{6G)nM#pTy2luP{)i{sw ՞v`Gay7I0D?i^eo} FMR}4 #9/|>ξϲ>KԳ7:hV;ʣu@Wlȭg>QTՎ>Ưqj 96]9.{}RQlcƒoi,Q@\Gd :36X`q1]_G% K3ܖS-]w[t>Ջvڵ5sӠH†GO]ckh@Wټ]55Wd?'kelCc/[>=+Q&HBdTIetobL~,RX= P ෦⋲IS+!FšE5hп|H 3б׾~uS=3SQ}ex!x2&}ɌkfNCBCK \Ƶէ\V8 ey|.7|.3h+$p , (E)?I)=]uJۻ Xɟ(gCwnD3,r*:`TD8s.jw7\5hJ Š|*f{qnsLhujbsV}Zsyjl6rh[>٣1yfql2J,kcf͟?XwT~y{̾x%O@i(X YX"|C.ӿtB%yDez;o)k|*(1WnqjL&~xh%5T?i-4$! g| 7Ӹ(Q\H; PU[HT>ѕftKܤݑN^;,=7w- XD f8Έ"R2(3AP&L{vf33j- ]!դ%V>XY@"s_C('e 3Fň',;""48**u$Sk%++b}3xmtNgIƄY:=nGnca/#`7UuvЅJ 'H-? x:{T>O܇`'ay.(}pLj%i[J }U͇[P笩)s2tal7&_xD D5w83V|zG -nҘ& ;N ,`1dA}g' I[PE,Z J.3+'ì.z@:;4y+[@GF@!R.r͵S @g]wsp*p_;NqqV|>N̰_~Iѡ]B`H剀XWqj rD@x+Wl۾4hX aonj!l.xp7S2)x'Ã+n@VD}op'?T,%Sdu%T̫Rge=@Yfҝ-DBi;M?>B,^jGp} J.$)G;'@d\QW?{B%!2w<4ͭAH6~ "/fRLif0Ti;1ujk%YsZwIU巗><ī#Y `(fhoӡN%%Q?㤾L-Ȣ䆳͊ҎO@(3lEqef'*oC5,1O _ ^=ܷöpɌ{0@W25ٍ c^Ѕ\Uj7k"m;h횑[E?F5}pFQ7k{'=r8*bƂr=6Rש=> @jU81&Gi5'J gQZMn޺I)p1Da'm{9D4 >Ld1_ۜiQ,.SDo-3CmItܐ+QTm?;/)jdieD!{PuOî&:[+5]Ox= j:<@|&h/of,ɑlTzL$f`DmKIC\ogn0ᮍXW{1׍sTmyo$*QEA~; ~u˿G"a!lq}&vu7oAbf`dC9&̣b.YϺF*PlVYղ=\ ˊg9dRn`R_(iXQ㪓~vlS8 !tH-q&%SHyml@AuR?46q+OP(:JåNΈ=ٮ!-daZ0D0[:@$()5XlsI(\DI*m1rmAF wʽ*k~tp(т[;ż.<'Px &O`/3J\Qc}67cys1'?q!3O'ϥIS22n)TibJj:TF{썯NzbP~+5C-ͻH\n<@ڋUHQxaנ Y,Na5s808)ei;U?;y{:o5*t—UvG R1& E 5leЈBwQoǍmh~v'Ahڴ "qjZC2zd QSUxltqjdYik#4m= #2!{=Pa9q 9n{<#'Nᨩ4$-WD#{-@ˑnJ<7e@`Y|:@6w"y58a鳕Vf]woxrt:P\E SdLDE_ڗMj:Ě۳\DBMz$.j ?Y K~zy? 4fC{ c O m6"6f9hً!pHE^K+-o QuYhoB̍-y~"z 4PH}HW'cZ G͈.t$A Hw5)聋m-ߵ1t24Uj{fR3|wpJy[f'! Yb?Q4@[+719ez˱OQ?X.[qڼ oOrmkHmɵh"[&TVMz:̌ˇN=C Fl%.4o+2{6Lq0aC#hΣ%Ka Ќs.of9{~K~U5POF+"im<4_5 I~*zb@/[ ga"D=s]J v N7K H ٳJ_B#twF^l" TDnFp vȉ80'ç07 I?ᫌ[y:qKe w|*`6gg46x좄pɔ ðY^N xqopYZsr1um$ "0l.8~ i@߲Q16~\Ga9V+2I}1.|UꖱZh^(ӓcA -tr0!x-xtyq4h@9<Zbjf>8ƹN%>nZy-~9ewBǫm!ϗtTB곐@n**3w{(ډWwTƊo0u DZk5OG5Ҝzcđ7y՛w5y컎+RX^2 qw!No9UtxqG?_=oKRތtqZ2&`{ˇtBvS[F5 PF.S I5p}5*bLCF\^KD!h2O=;m dl~YaJ#Iuj@ ,せձg0gf GRW9}UDq GOUi.9&=Q"y*ak[\^%˸t|U(0Y 7':]^~[ of_PPL5YYklNFKѱ]4:zw۟"'@%ID mefo|! ^OY%3nKffq`Om|H3Dj`…@*J:4;Bء ZD(6oVUkތ} =yڤebڠ5/C] 5)y 7 oeJTۿ3栰ee?͌{>Jg;`Y|Qݒ)M,I_3a+66:d|E ?o wrL\XE)} e6lro޴47o<}ĄmIisB)~ͣ%l%ڷ}5r%,n˾OR4A* NڔV WKQW0.H`.S\ e$_5 DLll(GH;r}.PHXLGN3$j|CSگii'%{q+/| *NnǥiȚK7/k hpTGdoHSEq3{C2WB$}OW3;: 7+A@h".2[1ӓ2<7Wz\\6!wȐ6 P&oc6Z7bqKCR둵糛5EQc @-EȐ3ϔ_N58Q_,CG~ ,14Ԃnq] 4=]vԩXu _mS(8񾾮"%RzL+3&'5%Y6Ǧҋ>B]lU>< VbK/` \nk|CƊt_e޹ty)Bpb#7w7VK|rhF 7F%i`$x'::͉~E6Bn_jc47){Pw|:Z?gݍPrnjoDtQVs;ޥhCxQU̧b9*G7Ø̓%_H"gx),j>C s;&Ԧ>\Uh4TUj ΖokkRisʊ>&1YJ+ rM^LJ@ üֶ J̛R;G/kdVp`',U7=P(<ѯid_s-ud&}Քgm㟹 LFJGFg=DC"s0U;vTZtJ'>ǷҘ%EͱξjS+%\?!Lxc9r/4!ڿ{ۖtqJfQ!$mpFwV(3Bsxz6R*֫ϧwYE1_Gu.!a\ bw|TOOƏ[lQM(>n'\C/7:4q< JNT˅զJ*JLnA#^DrX!=׍Q^S~HI"$ԢTxٯU<7jq;ܳ6d'^FE uiIWj;gac}({o6Nl734ɊZӚƯ0-^D| ǦWڻR]rx/-Ɍ3U16T y!YR~Bv]wp'=#c ]Et&w2ã̴m.@t@~hOp(S Zt})g fQ^`ޘfz['NXa*s'-LZ}CrFqN2J4S~¬LrHܛIfhq[׽B.;`T&.3{U4_ڃ}> trnɱq/(*IB%,"3;/ZsS *)Ly$ͳlN𘴯8S|MO N1o]KZ"Yz̹x_Hq/;=RH{S".N;1V|ȜZ5,3q_Z*ly;xz9'iL]r%t#W#!2~`bֈ%7OV.=;jl$X< q 95–/\@'[E1 Ӝ/%|A`o)GPՁ%;/#LF.=>ʤ(SxUzfh5;`,/k5ƢPA+MP YK)Rt(k^E!d<->+NT8ZS ֖~',WSsuGaka@pwrׯ]r ù[a?f,r7/{GP1݋Q`L o4@UVo"xjpN"sy$C>a-84G]oVc:2NL[byMW*}`{žz,|X)#,:"ї ah-]".]@X8TKϠN}LM5˞'&/&[#FޝjȊ i; 5g,( K]Kkf;6(,zZޠy";RMb{f,pmjH{;{D?0za~Ð2!57T#]weҠU!- J+$Rj&ޱ)h^&^XvT;>c=)Eu6˳QKt7}k/qtjN%_Jr:lsW(ToV%GdO &qǑ1? i؇{"|бVWL;ߔt6@bk3h;TbנDt6r݇^a$偐2hw$; Cb(-@@6YďhDi5;Z=7Iͥ*:{`P͋Nd A;&<=Jw΄$ٓ`qHvQ$"7@ָ&jോۊt|<ǕF .y||I%C0pӰ B2I<&uD\TVF'I]!<a]˧LaS<;'j1NF<ŒHk0AwYY2 ͑CD|TD,w]uX/Rq%}.&3@´I)O;WәskJֽYU!O[Z)XCv;ߔ8~;[9Ro-c,P<3u,}c->$s% B_cC @'.kofޢ.%XKS@sVܯ#ΒEa0>^F!Ecfg%~D0P:WA'0 UlHu qy*s?ɉ|?O&-boƽsrP5ܳ6rےX7iefg@fR~u왘R QyB+?㛹{%Îm7V~u•ݚN|OGNZSS|Ɩ/5_- -7 F@@a>Ƅ9&:uD ;45Gٯe ?D/-5QF3-o_?jTʊHSEd! ݢ{ͥ)v*v>%'w,_)~N;^xbGIL_1=Wmŋy| HӃ߰XY *}5CmnZMT/%jDB{:w~! 'b%DujQIi ,:C {2LtMa+ɩ3 (?5cCa:PO>E#RdsЏ@`$%i3Pٳta{8a'Tu‚{jT{dkE w\ƼKAd}ɷ.YV6>%˜1ixsB]p8fW˜ Jf)3-`*N$mvuc8M+wD,]Kx0w5Pliʤld9~({y:ZĿd&7( uRFߙ~g!%)GFg[Ѷk0z3",xҷRTx%]?-Z CN&=y-W/Z ]|i2suz=$#XVfh+,]yϘM*tQih3٭>,@,X2}. l*V|?SHݬ l_PDK\TPJ4gH-m]( eBzBх ejh3rMKSI fىDøn3pORUIk%Iy^A9vFoߎ= B{: +O>j95($a2+PVy2܆>ru}nk# FCG Z*Òȼ5ۉQU?u.D2G5Dғ٥#x:mTi!/)I{[vdiĖ8.!PEF.L T1DnE2j(9)"<E<]fu4 x# Z|DѦ8QP[^v:gdYm1yU, 90"Eݓ3Pͥ+z{·Yֻ]°{_eoٌH q{>rH.~J '- H8ӌ ۢI.2TE\ݺ^P`,H)?83} 5[-ޑ9T]SJ0ޢGnSNGvRF/}܎<(_ ^')\-$}gsΪ~F)OXn׻/'6CK \,W'm_ Ufn?y#Th(*r(ƦoGT4}B;RNV\tz io.OerP$8 7 HT#vO{O!zy @+PɹҾupfa}CY2ŕR-IHZbJJGA"IfZr D}}XIb`}H@@pmJ3ABDV>xŰ{"c$k1( ۟/oq1-|P 4q-6\8n&x޻ EHT:WY4~dhX(TA>bmUnVj(bx& j<|C-t zjӳTh}`% /v,:aQ$6e;@UrIj{ x@ TTKL[<fl4pJqLjQfcul&cODZK⺝~0{hjEx}y&Ƨ|bǪ"y*Rgت*ў#~SYqnleFK{8畲kyh+aLSC9r&}֢4KqSY'S WH=P8@%,MU]T/om%3Dݒ.G)(ylafd^3D!l 0\^*w*%5k0*b]ܿ(Ckt$ru[M#jxG\YZW;I_i7خ˛_ `8q9س v@r\eiV恌O! '[tÓM/.^qZqfS_pLJ=Ll(#Ylw%VKeGߴ_ `- ,-zFuJR!BO Uwh"RA1Gvp8_IWbs pꇉ}Ͳh3bOfk% Y@F8ǃedijljmI0o8mWxy (]* )$tbc r|[Q)oe[2zOMS,pj\Ƭ{P7̐6-#xJ{~F>i%*^}ZYkl-A%ar"nuuB{Du~0`01o8OI!UKfP:8VCv޹v{z)YL@ *XHSO{ُH-*4r{& L.IVk H5曳s b@ݫNЭ' +~tGcۿ}TOfskF> c`ՈU|y=Va:ƅ\g:S+6܊I 'rP'<оmpjǜr!x13['e"e֪$9n".FQSuei-[fqpk6Lж:Ga/|Bzk0~`DdcYHNJcnKj6|Ovy`a&M l4rt}oqRňH)iJ| INr!ypJB).8]Ca1?h@1JWIgeɻ%, TFNi1 }نCL Pڜ" {TϿDGji3sLl $%O}lവ{zh`](YƣS3Ps?Gd HZ/5[?=61c|.wӱuwWH> c#Gja`K//*pً"9>y>,n21d'/Htݢ@{Oxs}#ݖg8Pd["Wfx);<1H2ÙT̷R_]jZ FI$v?˯45P"_d`WSĿ?w'$YfF@:K22~T!DФO2; AUI򲼎MuH/%WXϒ:z\.ܓ(suI']:Cp6͋m(Ö ^zd_HE LP^g e kĮU22ǃ_c$6%g]5FN'ER1}OJ}^H//կͯK'ʺl \,kEkj0, =z & Mљ% jo]%R,Ilu[ Uk=n{틗_H9\UQc˺h#ypv(oJ^ē7m:"= C6qI .]| b. b C Q\ #0L://{*~`9hE)K=O)oLs9昴b0g21,5N`aX\\pPƨ&HzmMbTC-&hF>hY3n4xC,׬'EO>?VЯ?!uL+?ιAm@FbT2- w'[)\Fc Gէ}ݲ:7wDE}Qd3{$<@ iQc@T4*:M`{Dyh{L ^+rl@K/r@ };}_Dfzm )8^:OwC䝦^tJc L{@ˌqTW5 \Rjr2x;&R7~M15ܝ4s;ͷl:gݺ eOaBqA"H|væ?b@ҷ:g̲S {ïaN{=C!-DC]%Ca'hč:>M Qn3 38@8Xh0+ 2fhx_9riH? jtK'c77h~lq7־S:ۙ xU]@Lys43cC2:3 pۡ:N{Gl<$E8(IsDưDU2R2\ WGCZ8IF ACqi 1艹xNF#z.h &Fi/;O\Q {zQ:RQg7테Fem-Kwg =&XCĴW>䔂xwD @Z!j8KuDŻ̫RV<1E[8lwyH6VHg c@;!x,⡋`wvurOAw0'}|6g|][OCEPW6*j.^8?Fu70Swߊ.BCFü|W㮩zq,4G u<mgd" 7TGłBf6F"nwTgGӠ6֛z*eM) A;JxSPYE:3ѥ*s'O$7=Q?rDIgf6t}#&;>cT7+%0|{ ]f|".|#I;ldѼo AK ev?܍W'n>" *; aJF1d2 iÜހs>"Ri2D"EkWBL7pVʂ#' ,mLv}퓮oiW tu҈ẆUBRp sjZ@j?g(p:zQܚvC{0XC y)VP̜$]扖%A$݈G>T>7mȆ 4dzuW֢_x܏CCغNV:hX8Sp: x[BȐ2EjG~I4 G&u-n!1y _"jO);e7zSKk `'D0QY-FăniIkLV'zP j/|,h"Kpr5yGj4h [[z>^:(X)s` sޘ6@i9 cC^F?׍ #67D鉓hnӠjVL_xcAdOv F#cҸ*1Gx1._驕`_F܍iw)YT;JHK08A8`1 SyLsD~%0SUd=ѽ昀b]wbhAƇo)BOj}Ē>!rh"t0􄷮!fۮ+r'g#{6Tf*O1_*ވ^S*jյDuHO?$ kw Yk@5d}{xŎC pInUH-.6uMb &)ՈmyK#ۄ=QF(mvÒqĨlw >L`Ѩ x\iTOHj oÄ8aA x^X#zaVL$7KdBzbbۀt}!(d4R-LDZ34kUd q ;Q+[)TdCYeo),8Mq~0T'(gXiY *{c mej)* BeZ>v-'dh8 p/$h` WG|Uf-!>Co NE@L( Sai<U{RKZ5{\fw7b~x[q^@0zeOs:Gzڐuu~|mr 8 X4ez :qs`nϿ-bbSk0XE=]$0x7etcW!ICQKƎKIh8uFCMoJ!N c zͫ\xD'7aLDŽ$>}06V;OG]~2@F7j8w|Cǰe@?m^M¹j[< f`Ǥim6 , {V2WsGnRC|"^lG_^UU@7%>#zY*_ ~ S}H_&)˖(c&V` JJi``(~[gv+'{3m>ˡ'=?,,~`S6fIB>LN,j] xfSU&tm?pK Ȭu&})] 4̜bP!jXz 0o!EbE2f6ϩ2W*ᚴ&7!߱h_Jԛ(O%3iƱFF 1e,ߠAº|`@r@Rs&S]_NLئuPyOBpGTت- e7@U$TFPO۵aƬPrٕ50G'NΙƵd? :/1TOW Z*7Y.$Ur:ṟ`Vs>,Bo:)͡@p$(Nu<##Pm/i’ ݋nt]YlTďsoW7G) gKխM{l^@0b:ټr=~~FIwGNGkڳ1`SMؿ$W!?㜞A-0<֥1y~~ȡ7҆ [4Φ}̕/||5[^ZˉZ! z#J^TSЬXQ؎D)%ܔ"@_^8fW7EۘN!- }PЃXږj^ JIj'+[}2I>L Cgl`T!+7N@E]t ir;b "H&VظataV0窫~Sᣛm~VVQЭ 'QoʎcuY(Y ``/]Wot>u+.Hӷ-)ߦx= ɊRB@b{󏲖7ٕwvaw@X>O4:W,距9A;BrP\Y Tvg':hd4iUηcL!mݴ3@26Ѻz^EݿUNtM[>MfC3YWq5U(%DzX[B7O=L/%VN*&-G\[$@OOE7b@Anuk;zN:vyQk GE9h"(U%RV0IJM!8+S>p\Ik~Ԗ~JwŴI\-7ՙbI $7b^5,Gb:C?=|(fD'ʻ[COkKU>L6Fs:1ZqTtQה_tȻ;*;.v|<eOz3lkG*I2>L:TGRd5 rwNJ"<:>&'2j-p)⸷m*IiÎ+C\%aϬBw/&G"0fp pPB= i hB6qWb0'nS BP`j8vEH!Km)7\(l ~jߢ!GgƠ3Do1H ar+\+aaa!@%o󽓴iT7AE; aW_zZPYb TdcW 3gj+vb˔M^PΪ4rJӃտ8-U@^e,XcYJTZPޫa.++׏Lt|ҡfZ{6y)?ڌaR>[ݒJ^Ơr" S3PKTX$~~y߿`Z>a: 9Ao , (o!@Ï|>&MoL=xfUeW'&k=MˊCu;ܫ=x~.)[&ni]Cs­'tJZ@,DmD .\%,8tH/0fd.N7FR|~Ҽ57rwf[Q[J_*=6Sn_4MGHpq6[a ޷Ik7fͳk-QG\rpBFP3HA&6]x}S/Z!|fML %+!SLP_UoXc?VA[כb>1e) \Q kt_!qA{U QMJ6=~юoCmrEI$&F/Ykg튿8&)O/}#"tVcXk!ч/!JMθDtKG4v 2U%=ziJ< 4)Fir|}61ir4Õ`x7Q gd,ەB>fd%%>( ]Ϲ;.&s?E/ sg/e\LQ(mfPZj Zfj39ppFZCDv*_8F1ޯ*NN&.!M Ty`j5Y`y!q)3sJt  X; :!L N" T{y>Df>ż*$!"K%$ ?ihfx[f0"ʴh.͊Ul5JCJHWl*Oǿt[OLWb[|Q3ίXFRH)s޴K"PPs5򬧸c>^̳?'luo]P[N쏁C\ noQTV$d49pWNg1+j$`cb%'йڿصA>ID՜|[P#![VJ_$m :ҳÂvਥ$.[t,NM4}qm= "VK(2 "9M}ClW O-Cɧ:+,6ը/f=d-e_怹Jg-TZ Ӓ-CUw"*r;5M/6 kb8M$C_E&dž]JX'LE\ #JxU/qpɠj}~8f9|qi%dV2/qfogCv^g'YefFʵmR>@:+E`u8J|j~x! mG/H-#t[Id}V.I)`>gֻap#r~D'u|j48 8lJZ  Tacnq-T~-^D7b W+{lؤ~pa{+xS>: "%g~? EYIhejۉJ90_UJdv@5IL{}95=v:75o6l3ZR|nUPo6F2sSr4G-XkdծluR|r-0C{m.-< =A>E\k+\On#IG?=N|x3}6s{8KNO>%שbJ'G*R:Z޸2̗bŽ8X2l/ &hE{ l3'r҉L;T&`UD8w>8bHn›70TM7S9k${ -胛dU ya< oeU }[x\7Feٕ>*YLh|TzzʋҍF~gAv:vջvzbö˿HqiX^N*ו~Z@XDlI96ZS1aZVb2L$>/ec Щ'+F w,t+bH8L3ZpqKQHKА/%b.P5:8$UX^q"H\J`LLbpV`;q' TI:=$HmNIc{~]9JӸ^$iG]8Eb(QtP`l #ToK/GةC>8tM5}/q9iH.ByUڅ\**q9kdRy|fn:%uݏMDeAJ۾yzWA-@kue{مڠyOPA!z)ezS''cnqD)[°ecH$܍$Q ⨝q7 +ӝBAY3dz!Oߢ[Pk hc9n>hONo)BaWprf 2Xm[YȬw3f]FIQȿ`b2EgеSvCMH6s:c^z>z/xuplVw&[LX(ISڼMe6faѿH&Ivt9-92l/iTrYW Ql9^=5BZbV݊< w]Ɓ# ~Tya̫7o8T?0ml! @ z@5'l֧6wYj5&Bv#rC_iDBpz0cxCbn OOr*k.'|>a_3sےP9mm[Y< k8fٵ.`V I 6#/ㅐ0k 8Cҵ,W3 b< -HӞ{mʃܼ7bxTéU.;!U]O$[y6lۛ=d-kb<,3)|:+~4Q4>j\J}0z@ˮ;47 $P_uoհ(𲶫n=zK!&HJ'!,I\&*]ތ|j?82S{n +edzf%Rb* 轕X]\3:ZO&pU)&HTFt`'vZֵ4& BFY._֡T]ֲ[H?UC7+:qlj/*RŇ->"r-쉢=AEaԆ:[R*5?y)X ;_-!Qnm1ުwnL0vI(ۺYɻjg]_xHՍw.!\s6*H`\hkfսjcڳhuȉw? Aik.d 17|UB#;y1P^8[aV@oܿ9|o㦿Wd%yfkE4ro z;'`TN9.Ɩ] SE}ćⶐ'R,ݤ|vazաMnrlXJ͡ }Cbʂ4~жM4L}Qh͙Cʔx9` ''".;Qblf 5D7lgυU)V>HŶ;;yiڻgEu9#$s:GmBJmlc~KqDKV4 !,S=ەN9!F{o~fcmQDkq-N' w4QQcKI5 > (8Io;l߀@̼?vjFM*7SFdT&~"n6{ӏ՞ZSVȯ}? u 9&萚, Unz5-R:M8`.a sftTF,5I{^U: {r$;:9/)$Md 6J|_=U3 ~խ<@gBfe3! #X0iV46Gu)UǖlҧGf(.q5B-Ģ V)\S.D]f1k#WOqجؖ T )-3wԍ*Qn-,$K!ݝ@3s9 #K8"9"_W1PD;֊ 2E7z9FcJMqvK$p:0yW(gՇk_K6VHFYF_';E:`_s7godiESxc=8SkX{ˍ] 6YX`BjAjx3E]p'eidgF+<~+Aq%COOk/aL^DMݳ^6U|ҕY _ k_CF=-C#SYL1mkq`>]:̤U) jŕksZP(+ގ?b.,^<=eg7tt/[ ?ϩfwE/C毦=D_@DAjڡ- .kmh;vKz+h6",KVշ8B}%1I1뽡08M%qiمW)16?KOA \͇z)~!:96stIAa^xBF OH썵`)4&]ًݼyINg}a ]ȋ2AD)(;AuR1-Ƞk!\Ro jZ冧S5JcaCMj+p+8[!,i nZ)t*̷MPEĆO >ТbU$CPͽ  AMBm..X?psQ' PX&sW `Q5DܰXX>N?aU ,_(?PI,p$}f iK>A_kLQ˯>nV D[(1BYl 45~%ϩ4{w kL+>utV#ߗMrb?3/gh)=FEd;^0:@ټrtoL0ܠ s'N) `l-rH`2AФ\aB6G@ [ ,`׷qxvbVn|U}X$KWa[N. (zZqmG75iƴ:b־q;$M#l8q ԻI ZB1ɒ.A#HV]wl0IkJ\rշtmqU[ƳnЮ ½6?O@]p0̵,[!h+2aeP5e}^+uV9ۗ]Vxh4< d@x%ECPU? ^nr6{>GߖCހ|1Uk"Ѿ |6 >WL92o)bKzth[(@v֨ER՝83 {_A͟K:c!G$EUf7\4$)ؿ"G,FD/mfD0l//3/MB_>mtX;i~6Hv%3a !/=&=o m0yI9OlQѶǪ$tv1?4A Xw OU ӕXӸϿ7KG+Zp6Z~L ]b7y'$F/1GתF}ңFǰ DwʲY zǎi6zAbmA2VRyvfFq=@SCC`{jӻyg#]b{~F 'mӇz~';<'".M}?CaQŷfڲ*s"HܐhQ 85}0/mf<_l}|]| b}"Bq1Sr)7'? ,D ȉ]5):{xx3v]N^t|̙ @ LR u);F Mf:'$q=Jd|@w;#xyVP}Vo`!3?>sV|ۑ{r4AirBߍX7b:hK bwf0@ԿE62亝3ĜM{NPgYt8=߄2ÖC;05s`J Ԑ`S}nGjy(:U\>l}P}XT`{=WuwE8iq7A&TWԬFZIA|.Uk&вm1p4uy zls/|!ރGo.?(~͠2.Obn'p0~JlA*pژ|cy'h^nT]XVO"4.?EQu&2 Ή^)hרg]=ũEI9BҖQSWb&) `;%[``8 k,PSOc#5DKj{fC(QoXkO+ Cūp 4EzU>(y'B ,v`U vƬ*X^Ņe;hwO,xlLD]ީ.}9Umk I4NyŹ ~ZSR\pP&[OڪU7:+ߛ¥skM]u& y!yf`3FOKg 9#IY2L[uh`'bDNg~;,5o(.-+Aywƽ&pT`ހ.V50;C8O\ \@n.Ż"`uqχ;qE$\0MDTQGƫ,A]pz'Pd`%g`'uSM6zz?z  # Άj &Jɑ ~#gY cͬ\&Ӏp7-Y9V 3z!!QQDJ1UFł4 ?S7!s@ny- g;Ĺ?|(/| r˾O$VZRF6QF"!I\ e q LJ1kq?PDܚS2&(ٖYZQAѲ`Q &Kz=u Yy6}o9'g/ojVnϜ&Y'n˲#BH|U@2زMDGWŗ`z`Y-_bqaY1V_7 Ri8o91"VCq 6F/ć!ґ-_Wy2])>L佭9#ڵWӓ70IS-#*K<;3;W pbdwԬȗzou(?4J9[Q 9 |<;n8ʄ=ZZK?x,x#tv~-J&]Yv 4)yBSXu-ޝFs˘pyϚzܷӤmQ'7A25T[%Dhp\q`(sﲳQqE ?b9OԅxRhDҨ6A.LP+`y mٻ)Wr Sxr+!x" ,+Wv'g/DԻa^j|~tE'~q~'PaEg b> ،r:0\]KÔ? Y?`ҟ5dT}wˑtZif1 `)2#5Qjx,3qϐ6!qC?C:~"=EV>-˄C"؜8~,xN1Eʣ"HJaopi T\w')+&ٍ=i/OOk:U/QY8 .Ԭ>tH&nKۢ`h}:cY +8rF1Z<n[K̬[7@HɳG.m17\`>#wajJ*WT3 A Mb;2R.{ Л=6j`몃8-J=D4j.(L =NfHk ]8M#KuK>u]mʶ^1Ge zkKPXJ6XDGpN5]gف,uXQ#M/eP:b[ P֝^k`ШgRHee7]KxAO1J'ea{%/:Lb n:k^/O)@k5%K-: intqs8~ ޤ]Anש,[ˆ@"2g PH ,GR^nQ{ *As(CMSF-wH | c8bg\'|o}QSؿ뇟*Fط%Bg~aV)U*˘O,Չy6{܆S"*l}ܦ攦\d=R7M4mdzpwL?Nd_i^R`fJF\u%M>a_L[\0ٹǭOſWv4ЪMHt3b+_ ^$jƬOr31'BNάXmckaE橉`#X<2Saą֑4А3MR%H?HB =^\Fް}T(!SuJQ^V(STBS!a`ާ%NbG^|Ov<xGk~T ;my"ӹz[XW>WͬeӵeT}H[K=tu4c/GăQ^DfÄwɟM5.(VI|HĮdjI $IRaI{|]Bֵ xu8,{bkδJ[ ="J*%+Ů,xN}`u՗MygUn(s|'Z;2+Zx1^ƣfJQoc#3|E9b4t{[E"iUҹhG\U:42Q.q*!DW N̶Uehj)h+Ch2Y!!_Pvqu zH^o,'\ s 3|~k y]4'l̉esoO3GGxAǣVONCP(sRRt))yqL!UF15=)Pzr :|릩ëu_Tį+*#+QV^=TFG\o!螼UV]O߉Sߦ:b O pW`!#!bcXź=Mo\b z~tH-KWgp_1>rR8z8iT,݈oDG^ܪO,V0bLUiP4/t()HVwsXbW;=ɔUt m$𝓴`<4LuxVD+P qQ#35'-ǪL fId.L*./fA & u'sEVOXiҊ Α]=P0,ʖ9ٮ=}&K R13Nc<|@/S? 6*?;V/ dv*P^a'A.5Y9:it@$3@;A̰Jn wش#׀bs kgŔ}5Y?U$^u<@ bb9o"9 a]~F S.tR&~[kxn@tgoF8EkVW44bCQ,hUyKxQE.>ywvOkV l.w5 mnXq~t9!2k} Pe#i=! "mYŭ0{,wGkvLXno"84aSWE+F'2{uF}FY yz`7 _î+aT`?"wY5pM3feA524r 8T T _"&7#臬l>Y=8j*2 E'j-w립@nlagT`@ ͋=̥IVmM:zQniȹ~ה&"j<=i^PBw0ex&9}ȳTM?hB? HEry >el&y_C:Ɍ.g~o8]o4'.>|1a{au%Nz.ͬr茑,JC${y9*!vb^ڢ WtG"&dzݰUS$^ffc1O7ArV@ItB'j?`j@gB7<G 5mȫ& iR7ޕ;z8"ZB"^\H=YCꃅjiYg$i*ZJ Dqwh(0Bl)86~?Gy] ɼA v( lx<*~ ujN]y o3n1?/NhD.֟qp,Jq >%o[А 0OPB3#w!P k¸yJe=1X,H*;F*Is\-}ҭ'bLk2ګ"Μ#`EY?h{O/86uG ڏ 6sSbEztŢ3TGzOdF`/9 H,)ZGQ^WbyU=_Ħ5m4~/3&[C3~ZIgFM"y±'wxGjL_R5.38$Mc? C9SKH؍  ]J/*bP`+*d+g|2 H 큚)qVGC'Zb"rbZcV])2%e؉ 2`-#a}4⇗|eMRHGyD\\N!L zL!! l`''(G0[Lh6kYW ?;:(9# E%3nuxBx=&$.4 ˭肢\ !i87 ŌF?U|NP̕6ƵE?1)>9 ϑUP13B#9)e@OMnЕc~X-TiÂď3&aZbWxZ],C:VI;Oɘ0EN#nϴw½ٙ-)! ˍ-7^(tS.2Qb@i{!XsޫK{ YAU,!glw=/{P3)/J&5O0 HN =omYzAЯ!Z{MRR@G.8>6V`85Bt6ސJG%@ZW $bs[be…`Ci@BYGX&3Ʀ4Dɶl?6/V8^M„+1ޏ MjfS%jyyxp$$'YC4LU zS] !߃a 6IftLОI`DLA` x.:e֐U%Y/Z4A&MS|H$!` :k7^G8SkTp!c u}{zL*&9޳=M.p˯@ ݓiuCqH\}e:u:|K@3`@6; +ġnF(hG$ƺժh[BϽ@:Pro wH- 1qϯI:c]j:ůn$} %yF"p}-\<Bœ&V5jXʁPNL_PZ:* urU*{ a5`qiY*? 5WtMYaarJGAoood! ꬘GrkENB\#M68BP\$>ϒbݥVıoN108){_$] eN :a}hiꈗj9HL ֵ !D!Xkϐ p&:1VZMg.0iWGO7a܋>0W aj7pcFpJ$:R::zGЩ8}!0.ܩ*Baɪjޚ=ځ[Y|a9\ yYd _U`MkL 2E"1Z#1!։ċ|}; ,|;G67 !|]F+F&"GgdQVTyDO{6:ͱ BU~0(Bջ}aZ]4H6KK%\ftϮz6|>#>:$KS7s*9{[AqvHkPR%<>‚5aɭyzQN [l%cЪخϥ1 >;_ʉ=a{aT} L2zA(uy8>+Z]x_ݠ$C7QCʒ([L4? w:{Y#$d>kFxpE0TEwtNo n,eL`jZGkޙ92gdYa τ>E[H>ubZ1@",37Mjo+@xN`:b'Uč̵сG} OB߾_TWlX f}gIU@kJMj>/ñ<`F{2q~bؠH70??NΑ Ɖ? H]HXh0f\x`4MV4w @(Lʃ0Hqd` {9:Q@m!b p<}y4'Lc[/{tf'nҞQq'M;Zy>ɴ@E$Cͦ~cz `%uԹ"uBy€}Ǻw+Xކ5~DNγ`(0"f#0_Ϟl,F|\Բl0^= dB@.D򦶟w'F6 ;@}~bƍ7G%YA+!4+P1s^%R2sk#g H0[ &s͘ ~_Ҳ D gY)lM̠Jd@<7KStA.5+جi|lZ|{Kfu趏vR≵hVf c.ٻś( -m5:hC;@v, l/:XaVctpAp8i*x܂`Oby[^BrY> 菤ҁgyoS?(|Sǹ8Pi2uvc,k?r=U zR,}W JAWxotY~X}>|P2D#2&FЖufi 4!DK%EDM| SipFw! S#w4l܊OmM&u =Z$އtp|u]IJ1oޫQG+ riƿa+fO)Yj?5lMd{ b֣ZoR,IS_h8Wل$]](' -&˾TԒ>":Þmr_7N4k&\tzw~IUM\J$r3^]gnUj3a?1tW  wɆO@|wofZ[ gQ :T.A" ,{Wzsƥ-aD3P32aH>x 2܉V8 h7}}d2 ^\? BXlG|]޿Õ7-3d]h}""z69*8+sf*Ru"EkY.sBXhm8dS, WDҬisa!hLt|SDI=T @KnW)1UDj\VpZn$ J8kW=DݶAP5,$? VwG֛c|~9ՂX4Z'ŗײbU >g[<ڬm{U]vIaH7$b=m/Jd5.I>6[tj;T^9C2h*` ڲ;,4k :PD6 |;qbxN:5E;P-m9l][y(Dh: {XZȼPF^3M ;<6҈&Qxwm•( M`>L%u:j/_,A4H(/~;Nƅ 92; ܛpꂴAm5u0ظ ;$FҒd%0YwW4 ܕ.!ʮ]qu!Ə,65(ܦ_{sMޫ>tЉ rW/hZ[w*(wVh$[@r)_ZT$Z=yd>KS/sjS_Mߍ{9C.#SQll=).b!N81zCG`n S[ DaZQXSo.Q6hFb7AYmN4K\?w<_'͏nVbYۺڥwDg c;]y'*$R`F:-=aF)TR͵-G .#LPfF]a7 妣i G0کC*);53&Q%E((- nm9ZHJW?.kdFGOvVnO_'҉F^E\9O! ;M:g/uZVq[:sGaan!CPdܜģT }laőv,Bh0g)!?u ji)t=2yxfa.0vRI6W3'kB{P y*HDuORwg$}Bwӽ@SAPY0Qzc:qB& ׸aLq)WZS')wi&~58_kg{_66.{s˓-$K@_4UNOo',wL Y)B1Y<'-kȵUBª߹&׽Z[pbDt]b,#5O܍?Rc=Q&G@ SꬩE7׳Ï޷+p>rHwv,T46|𞬂+^kݮC~@T41 @FYmm \ ,xvYsc??,-/Ie^B`Ֆo3=9%@Iד8!bm$?} j*ElUnb¤k"oj%pwJGžxrH?Zo^^]#Nu*=iX(D*Vhe=/䔽|HsHkp9,SʈldBHH]OJ4m fR"\AP 5ls{Dy)$=읆 1z`yR"_ZqϵTG*ļ:'Iݱ6'm7{$`HN+P^5O1:.鶷R M>"x+lloɳvfr q.zZuxڠq(ECj?Nγ5ބ@j&%庂|Z'l CN溧jUA.&Z3mzւֈwdHn)+vy1]bX~MZ ɇ8qt\NuŗUkL3pyۣXQVK˻I+Խ.%}XI6?IiB*cy=$gejQ6v,=KC/rI`eFfuj [ q )8|kZ쁈'*:H+ 1UAi, z_=!OrhҰl?Ӆ ju`lb~ߞ /KAW״ǸWZ 60,ǖbbuH.M"{ЖPs'zO\9kSqDjp^Ddw˶tޑ0(%IM4s9'=#}U_,RmVN#u/6l4Z|%o–"Bu*|uͥG:Nu@* h9ڳ@WG%rPY5y{_Bl]׃Ad`Pn`b1B=+3@DL@M8XKRHз ŐG˂/$u|;}ۣb7;SS>W6^wj91mw:Sܹ.56le}8pP8;݆K)ÊYNeRSpE_w.M3{  SbVPpl@{2R(`,]a9˖2掋˔x< 8b|FX6,20u:9%{٧b{,v<DͲN(HT'뷱kIo~}xP.֮e0^4jVT:HeT$Z<ۢziH9XJ-*gSD6CTbfwDj{t8`(T7{?CLZ]C=Kqt襡Qg\5|?p$8JxڎbզJ][ ,~%BnB[DAjr]kkOLY jPLr|"p҇- #lŰ|Wu_&ؾ.)dZ 1<Ѷ9 ^C%O+bxo.<\*)L P-2#]qF5 By=BM8\9ģ{7vi#JwknhIK6lu"a|R@ޅ7hm,9lTXqڤ<H'X."*J~=0u P:>>Pemnulb )vѱ: Ng Y !#L+30?j*b._AkFۡ\.S?ƐQ;V(( 5+H='CU"Ud4'誾~+ɊP2?7U蔎|լ\ J/.y>L3' y?gMYWWM6N{ ġ m„( : &:_/0A ;9d0A'J%{ֆb{]F\qydMA?&jjK鑴΍B+g`Qx#3m? !@l5nV⇢cRE%| h_dzR)I|̠'e2 rXFS~YR{mv)#S)} F|oMօ?PA[ %VjJ+^k>>Gxl.}:{aI7$[8>] *lEKVWL"%&-xPV'NؑaXCHKijsSJUu#x<{KʢBvjlU+$&`e?P.1ZNC $[m`2oUM/NZ/FI=MJk\*,Od]FfsxlJ}ȃv:I4(XM^M x 1,t(E{()7,fXj>Qg&lv95 ͑C/Meb3@l'_ARp]iR +pxٱh,0/Y FQ!> z=*~Lߗ,CĊ.Rᆧ;Cu\ݧSK%:/ з& | )\00 KcUE]7Yw9( ML':өr4YEj;l'u!!+w34iP6v5#~S:r7Xϫ?L2ͱC;3{ۗ4b8H#ݓ9ݯPo3$On>}P<b-/kn)^i\/u7b8EUf6@>F=tIdG/ Q)zL'鈒@yͯz5PDIA g؛19xA.g:^ֻ?1Xi?w*^=Qҩ`܈LLQ1,=aM~-Le2dMeRcv$~ZZ_n>F:l-'k?9 k#>D\_;ʼnėjB?@M'Ma Ҷem ӊ(i5duhw܈@ExYYiJmpxcQ TDB5₥RǹHoӛ+.C%ʬKBŪw;"LXm=KCu?22.L.uo#IG( \ϦC-:&KXbCgyIϷb!ҾA%R7AȢSڂ`gG_~$@' +)j[E\}2Yzn/oE| Q?='oo:HWM)@΋szMn\pTؗX26b 4GZ?4UASPA[U`{hvK ]C%:'9)F >j0oglbnf/E! V0 7}"NY8z2%5ݹ GY={)aͬʶ ;GCXj'JJ܍$y^ %N/t Zjn1М=ɑ!pc/&TTu??tJ>3 }fg5B77um`z{8X9ĭ( ]YqJQ)Ǖ^ݦ۔cSK3W C<aDX<碜 ʞ=a[^)%.:]b;PҒmrJUqzpMbИ0x[u(`3MSvcaae!Hӣѵ[м0Rw\[o<+Wld~;M  O̧=a7vm.3Jv:wK- e1sQE>6qS~=S%8w,>!1bVo;E Z#PO,m8~e]YpAHؙowʫaBXt*H* BǖCKb&FsV BBgf#@ []AvRB0xGM԰pVvBbs<|eqRw ¬ '\/aYNIlTwY!^klM<),|qC:-~K{0Bb3X:b/T۝`q^7֯$dI2?zb.DA+#[ voUE!G!!tZٷrEN-p'6CA G >㣤21(dښGFtӜd0'%ÎK|SZZB)~C5uܱPJVϮ(q3t$]PF&7G'hl3Dof;5S4qIFm_ddRp+9 k6#,7E#0c`hglF2098[ CF8T)?{6Ȁ"VWæ+(jZ-V<} Wv sLe=T'Z£\Gn5IKMŒAN &ՏzN &~_"x-q]+ZrQWyBɰzW8/˚?XZbXqJ*1)}~ Y ;wM둊;5obE9ܫ}wD*V #V ^Rm/{ABZ-/T/o"'D5q%ꔙ?G%o>;ӪS.Y?Ҏk02B=yd};[-oK';R'\K=R.E hOW ETv}M&u'a\^ Z;J#$'UDd&b7\ CEnf,g+xc_q_^fJTtZq^ if0 l!s0U|,o{+Xf!'(⋋Up A,]2>bgitqiiD39]eI}Sr3oҠvW;ò.8}!j/k28`98̰v ڞVGQ":u #Y! ^91e;PԒyJ/]}pe ߩ9i̓ZnwG@i:rYnp+;ΒfH Ʒ'oT0߅BC4ܮG_ύ$83A!MQ WJMx7L<ֹK[Q͵`Zʝ)tO2WR{vA^Gcl&&,312$\笵~Z0`^@yG9O}6Ae֌t虿 \h *^0E[$%[FmJzC(A5ax3?>袇kZCJI Tk(^q05Y SG9Rxnƿ#_ByVQq;a2ZWǜiUTVu*i& ~7k_zG3wєZ ALΕmm>ظTox /yL,D,dIӧ*P *ZG:3nJѲxY'e}%M"+{ŤQ~ygN H( gGFxqA.9|ZxrclXe2 Ru˨G4Bo`nL8bdtCh *710\Ioez/rzCbҖw _ $vAl\vod( o'sEX11ieUu{QȕY۫@F5]p)K"l h11_:=SKXΎƐve@e^{a$02}XF'n1 Mj1z+Via_`!M; 9z.`ÆYrL9)6a`{#Lʶh,M;4fWl; l"pb#zy؁W71"hh7]vUʒ,V5.zY5[>m`~/|ggE=aSYշ3 d;\tI ?ԁW%p(Xp[k5gYP{vDD>AqpFAE7lr'On:OK_>q gG*vz]Ksd畷֌T/W_ \mCMٷ_4Z>YD>n?ǘfFm(lD@:Y~ï w8A|e/VkBҥPhߥlNY^N)YX(+qt +2m\9`JS-=IѶE~{ՙ'̚ #cFr3pg-Bj Dd/S}[D,Z҂1m6ʄk~}ȇ'j.&E{"{/l0T #mS~8u'vg+j7Q_qhQO9b2G64Ù?P nUqU*H^7 t `<񣸄MTOgv6Ww<T=|qqg' tO6:%_ʩ*V#E!坿Du*uVzMd uѢ{{?>DW%G1O+}b@=!XOoDf4r,)/!1$Ξ%Dܥi@M Kpay \ayU+{WQ - ܫe:X?ŌZLHӤ0:z_Kgя( o0x#8cV(8` *#|iIyZ+]c%PW۷haق:<.?Xɵ/Kdk؏}L؉7ߖPb|֟l2U4>hJ~s,vv5˳)1.k{X/~iJ˅x86uf0kXK~5D!ntt%VS_FxZTjr<2؍eVrfSU :VPQwyV2lz Wp$pZU-100y ВfhqS#ƮF7J Ľ˒uo_)c8  ~rƗg PM+okY6Nf%34( 7n)X~ ]RR~?`g58 &~_ Ez;>|;Beg۴rhQd4 {7Z沫 g*[8`,il $~,•cdHi)&މбi 44`QE"pQ^g 䧧Iӆ%.<6iHtʔ"E jR8 rme -15`tîM |7>l]nf.n@#(cY8/)wa|   HCq}|,(u_@(O%JGmO R]>x_SBpV/ڃK,b·'gFfEzQ_`d)77S, ߃v4Gv'xyT4Elv VHKדbgT~YJ7ͭl9P2\U}\~TAǰJv)NySnd`9uO̳o=o5_@ZA%S+!zymE\Ž^5s}*CeT˿RrXP\.ND7 KJOP ['5g[Ơ UXTjuMuh 8c}?dʈ 8Qذ㏁UDktSqߍF :z7vΜ3^:.UAntid?,}uŻir#4Ф)׆\Z_ŽB/֑WW<}VyƳPC3-e!ren$AG;P+7 gڭig$K2*UT鍤Cp9+c2ӑbɒ5.W>on|Zr[L\Bof._pl<tm9 xgT7k5^ZA-# ^ bV`]R.5=pc HK 4h@=f(/zGBSQǪ uC71ձ杖MBΜШ,@{t]Q6$#ϜpھVKJc0' / z폢f1̒2Fk!jD6Wy%Ou^?Ĩb8݇75=.,ÇƸrx³D6urMd>#r Shu-)8{6E& tkqqc:Qc\nrex6^\=.[1f]+A@AR;=fČ_պdX ]ZCy\UWhs8ʐr7VJ:dMx&.WUO87LzԪnasE; /d>~-b.4O9t^qU=ߎ|jN4cL/&7"hK@eaCxufXrYAPnVr#b9ݒȊ Yg?-+lPQ2$:$JfT{8G9Q߰woVb`i̗tnv*Q or:|@~q~ky;__=Mߋjlx~d"{=3q1Rtr5]V'AG$R^?7:wo0t1ʌJp>l2DO-—X`3bbP=rJf4HK&'u/V(P̗&Ao5 wk?x39|,ܩݦ%Ľl./ZMϗhN{1~igJ>$`1^rO|9s-7V@T.$@!B-EhʹX?Xo"sW.,z:?H"s ,.9u:aҿ4@2Dҏ{ N8G_fo>rtmB]V *kxB#HZK 3T S6@k&f2OeTj vd#.@zj1(Y06s  n~XWt<#&uQ b۳6IQpty.95`{:]:  Yf&ެ.f/P~#w)HQo?a)CV0B \˧|jv^Yx;ם1rib߃P*=aQ c KkT)rBV<,5 wC-*i~`_g}=&h$z"뮿+l KxVyƆ~'oGkSOFY(ʖn1ϹTB1F=,2E6 ƈxJIoCSI(L|CH fL0OZ%*o`Y*iĀXM3|gԟ(;0} Mj<nf }IM[Գ6wrW&^IKv\ ћџyCREN *}V+hP`+@0`ă3El V$鄩!XЧ@6뵍tSG/tZ{;4%rxTPO`CT ﲙҙ |^tI+;vҍk0:h[t_f2+Ho DSS4p’b w14X/Y%):=SDW?!tYszWlEP浪i?4hAʖ PrWʓ csZi7p+_em6cCԃ P[KO7CgG*T~ Gx Ik,9xY*uRlIT(B=i.ڑTl󓑤xxHv}ӂ~#4UJYCG 2칈` F6d2>,b] +Hdՠ胂B @!9n}]+_IHÕd"h|J QYAŭFQ#'jkVt.Xm0F[CA_>,µgYn W IBwPO.g=Co98|r(R =FO)e:ní,qNM3i-+HTqh;`b[,a6=pqPf9A\W6k! % Ϊ#:qH4A%nH`rWkiA1xtޘ J6SKR݊tjm'MW=Ϣb;‹-%@ca9BSxa.QC_cD+@Z'Uҍ Q[C9 %Z3sSq q9] ~u; d=tY_]ؔ҆}@<5!mB9H9 _-a{=ǘX+W`0s{\TDN1AJ!,ۓs^V!dOlcRRڥyDdڽ}˥P$@D6CN*XR.n"J,PPJScֻ7o6`ow[PN_]/#/̹Ml L"!Ci49)kCpR3VET6L*7{cJ[y^bШ^?9thiu<`ꘒGHTT8ܛ9?܍tr$<}eJ.frQRU͸>Wt/v』0*uR KduJ֙KAyոtJ^ 1潑2. Tk+("pg!&N`m]'ޤ7 euKrRdw-|VK QV+_?l ʑƹR~D%|ӤH d4}uÑV|\̍"5s1dpaR߰I dCmLewq\ہ删sM<'oo5/0I/uB U VA:Rя1KFR %H{QB>g{oߢX83k^?%wME٤, wHgQG;  -ȣU{UJj2=yX?Sǹ ߛlypVK=ZC|N#44 H RYgM$TVkIZ5U`t& t?>% T '=*{̿eO)!玚4bYIҳ7KnKY8a7ė^n3ElO^H,Z-WxDb̹4Ė{1\0Lҁ|%uqAe]?Ex99S@ #wu8WϿOcU`7Pp.)4Ft` ۑPCZ$EftB;B]o{'Wv?3=W쥎% +61qn74N졒%/641bK"eO?CH%k'0YxÜbT/v:K.U.KcV[P o?U1K(/hV2d_n(a9ZDr]1xS@S\:.62P6ك( q Z>u _ f0R"Gsy:.lbi5:4ھG0'N$98YW&X@Hcצy/l_aqi]?* v?9M=];*R穃0Ni^BVՏbNH`.3ј+x9(3fKu:*z`)!U L&Qb\/5b3Ј &+x0xg5@ ox>&(l_%@&rXaϙ>7G7X*oGZL>ӳ3 &WCS f%-q_s}ҷKAK;S3ok!43ydžHޒo/Eσ6Vg ҦT>;c(]XwP*bvn!(_Pfgݡ)%WoA [$˂wk͵ɗO6%3 1O:ֱ m{?+t۹,XUBQ10-$ M/G+vL>W t;ޖof".bAPbZUx3~~:/`%ar/ypPɲޠi:vEr.5Rٷ`Du .DJ2^YW5eZdԻ8Q2Ȭmx gA> /׶ w ȝ'e.Is h5 _yՇ,CFl}}J Zo| #/aUJ@֭O۫}M/tw=`Sr4Y4˽ޛ\4Daz̚68j˱9j3d/+ݬ3i }Wu;nhWhg@Ԇ< "aGI3 ncb*7oLIv: |1^">WY)^t̽NxDFQ<AovM2$bc(öߊ70]D"{W͗,٥wKHM\4LKƞl܏=JbdPOcWoA"$nKFy=m"G]bMסMq8C垔7>t[ ou,iVRb<]v~1CwZв+NJ24+Hdoދ>1b'ٯ1w[p$D2!M0>߇3q=M+V Mbſm ~>Sw$,ʃlZho*\Rwu%[]$2 WZ(ͪyOYF(fM6 pmSBaqtf=oG+k6|w8IvxTwp:R^#Yϖ`f"9N\nWodXdݡ>!Hlց:^Qᨾ]%$s{s)e԰ʷ {]ݡ:gE$GtFdphj>7i9yw~ $,t4ƚWI3{vhg#)*_ F5ux*Q"ZFOXzz˭_bw~Le8oS}87 Kk{U(>O&\:M9/dە1L"R nFܽK R}F+kk#8l='aVxRzXstƉ/:$R˕oAlhlF^0e #B]7dM7ꤛg q0w4D7/Ï#1eo*21Ub}rfpAZk-׎w 5)J,Ÿ .\hhjoA_NF Al:El!.a$6R)7^t&F)"p?Z]M܈]2I _nJMN;:QOGZR~2ý9viHJfz{t.B;B|%ĺE?C{簘uȞ|^ъ|=>\C|CEJs~桐pMsfܨ44"Ng!UNU^/SQ=!jU_d1 pBOUh L;f㝁9ي&{pm˝ROKU|%8F0^D t< 7j{'C G?'.`k߹ˆ؏U i-1\o|OMh} I2.BcTx~׋&(xsO; KGթi0%_|°8|*) p)js>e4+ <ܾQN'g1Z3 |N%WGfe~!U 3]̺, R /QsHR(!w$aʓ^ڰCfh!;K͔7BsÃD"&A] yo? 9}󚴥#Iy(}O'3gW}ގeQ=?Ʀ|a|-؆YRH}r6irr@ [H}W FꕉpU 6({9\⎖I г 7>8ogFHݼb]X4<t,͆]Xw%6tX]waպuHyaG)*L%lB F_ uvoi[cC.7t&$$߶&A$>&87YsBh  T ;V8SLN;D6ntf?YՍueN"0 e{+d$@FE␃k3ZlXO"MֺmWa!"M/,jEd< h̚v nL5/Y=8}W]z48v]<@B`SKo@)JE6vuɬQC8-qvp0l\F=,eF;=x12?ru 0H1FKqG)b;plZPy f r^xOdqAuܪ.UO tI`{/e˦ń8>,]2+)eI^o_%+jn^OhK3Us* #߄Z^Nii.N´U^X8_NO~ S`E&E(I2ZlW؜q[,Ma t[لeޕ˘מV׼0@5il7%uY4oH`R1V4Pm`w ӶxT U _A5{S>⁨ fvԤ?V#/NEnyaZgÈ>!Q|5&ϧȫ8̳*G[QC f,~%{m& JjP=aqy: fLf`I_Bac(:̫ K^̼Էe:nWק ˀq&o u"kɘ{fD2&WµϠ9XSMHhq+pOu&f"^m~ׁEKbM Z[RR]b\6ҁ^'@<ƕGODĎfGG{T}o "hܯt93E?Z [ctpD Ss L &] m奈v4%J  7 *tw9)U)UzeDl]a !ֽ?f(clNHs҈a֐1:j |A4\|v1"mJG(W9% >0WDi4F9:v72;o_<;2O@z9 Qh}&n/{"MqM>grseA߮'Xt~+bl kqi#V9fZJH$y~N%ŧ/f.AVdlra w+kqItNvitÝ'n?6Űswjt[w,WCR{eҕ v>&nBBꃤ(jljKym;UWM`s\8!;w\Z%:YD揋|A/_7 9%l Ks\o;1$FV-9 Ʃ'1Y不#.i'WFT7;џ3mr^_LzlTC?ތkRPW\̣fhb='\!2tQ%.}ei{6"S` =bSL0 XLvy-@ޭ! 5h !(ĴAWdVx{>;\R^rAV*BG Ow6{2&ġ Î6c䐒ǂd*[IsAMQg K-mgsmǜݙ2B4Px-_h)>.<kdIҳn7 YFTߐ:m&s齖R̐I5،O2uWg93km/>*:;.*iS4'd alkؐx|Fb%;sCRaSzq2 PsqfY]mݪ'γ I˿+,~b_(  IPaǿeuPDNr63:с?\o(8%6NfT3Zq^\>d>.T~{ Uԡ1Z%QC[ゃ }eTrlQZ3 ȾZhR4jL٣$g7>ٟxMsPeٙoh!G3@<޸,|S>% ,,J(^/9·sI1H//pRhS"ܠ"ojAi.$U )TvE(jQfG{-#o.4ڭ;|v՝(+,9U _(\ۓrU뻦Fr 6 o Oj`Jǔs E5)4)U,@ݟ_" ͧ|Ď`6 6CUF[̸6neC+/,|f"wX{X Yr)@. ^N%w(hMx 6{6,WøE?s䡌F>6:n:f?j݇SSW&b {=m+_Rx)ͣ|{c^N#`<dmco 2oӣd>v"h{ا(Dy}Zl'$7o.4/dڍxQ@Z#g5l…S^@@LK)L*E_b(o>}Ͼlt0'V갦'; u{ȾPuXi^d<$[Uɼx*h--=NJehswnex~LМii&Ǹ'Kf^ў ImqUcuʞ*.n\lѦS0U'] yF.'y~.ퟐQ4 'zN&;eG#8:;*,S޳$Ͳ{1[. N @ZX9߄WON~[KKR+/[3DԾoaGK лyiƠCD~m;Ȼ(?: WMg.k*9NRy9I6s,@(3 \^DItFL0r݅YkeTa큯,)D 5Hx)GǼ}KOE7l&Hv'VtsK~ٿz2s)BJ&~"q:8!,`Mu,)z>Y柨Fv`=8H-C&.u/J,YSm@"ɭ*LCytzw灇;iAD[$7M!Q r14W5m$W1 "91c{tdGPK5)N邥)tǿp8hɦ_3~̦π*e;0>D{{|D=Ykկ1Q ʥ|&feIQK1Á Q- v-xW~Ï jw()&)Jɒ~P>E􋤒iLR@~]d;qo}8Ab;#ukTZ&[8g$%-QQ?h0ns0Q>:SN$0̻4EeP&:`x"gSFWA_A)!QMB*H1nrZni]_IR6ywtdCc3teD7#I:״=m? be毻 ~ w2v>W:YqA9_D><4 ) 2j|r|5{9K/CVe44bf/m#-Ot/C ;(x+푴eS5\A( F{Ttt~VQ\J;?Eƛھm Fhpi%|]H.tDZ[x2u12ߘ[R{(N`%qlr;1c pYFH8BP`}UlrBr妝W<_Мt0"* i8iX ash?qtt~7\@r K1A$TZ*3!}(u 6&:)|>5P^b'Ǝ檏ϟ 6G枊YD ךk=nGsnXrqK!@V(J:M =橪Ա0!H]!]"*Iu 6 $ 2b|22nxBpqUIsE*^^2|w$J݈pyeUAT\o8ܶ3zS2>d:0a!6p'H1s[sC0\$]l)4BB p1z[&-t2ZGZl^H[GA @*dwN㋝S#uXS]CÑ 4_͠Id/ᠶSηv> 5aUw*YUB3JvFXÝm N k[oilOnB .&S;R9a;QZǬ= *½ ;%gI|qbH> ԫjEʹ!?A9_zAiT_p99BwJuwwE迕iMMa'R$^rD3j?aCDA59imǗݛ=8Ao 2UZ۵wa8<4WNQv᷸Xdpz$n[LozM:oU cG ՞p1H~LsYVnQO2xPwiuwQ9X,@i=Y۴WluWZwK&b 鯖)v*f`J@o2=ϻ3 rEZ{^t#A KtpECz|Z,?_ b;cRAA0Ďmv&i  j1I?`{\!R/ux{W>M랄VwLױn.޿*tp@Ҩ^[ՠ4KSbDWi0'u.3n~kòB> 97R~-pjpk(PWK &p8 N-lӨQHT#*M23HVR{ 㙺qB4T Q"T6QCvN(:bF_P|dj,G79R赣SM }'^jCrwݎZ׶Ja$B:!خaHd?rNkN,mFEtKpiaʽ]sQ.16+z 5#YH%)i`aJCbTf̯ZE+p(9![70'd TR{B*R7GIl T\\0Prm4=UE0^VlRNdυzQX]{Ms,-0L{ГW%JIq }C=' (vj^(U3IdKrrB-Ώ/ZŨ!nAj:Egsish>H"IYr1NsnkOЎ> 3@o`kʖʋK۳.,f/./@[OUCw^U4 7]ܬ1DUŠb 5&H#FCM\Czl.mdre]T-O4KhXYOmP!ؕ54CL7VÌFbH5ؔUV (RB|mj`I*cdhV"]爩޻wPx,jfа]*lmי-Bf`F`/)5|xi5*miL.rlhxY# m|W7ֈaVs'97?V;VI>*;K]JBHZ`)4W]?<zmdw 5VLnAX>o`Dz}ϧB~IQhrS E̴JDS<_i"vWrˮdmjD$65NI(GT]VΘYM%sG1Oo%j$F![`&uh.W#\6lmO@7Ƽ8h64=sכ(x.fÓA2G`\|`_6a2H羣dpM)ւ+=a"3dURXdyO4E³ަzfF'1.qN@Ү&R`^J3nQb,,&]ġY@sv?qByQ8Q/ˎ>^}kbfڼVUEx#9b(h^8x1Q]}Hslvj@7TrOz SN7+vڼ^gھ@2jx%)xwA3ÆsIOen}ĀgŵXV'M85 RBWbdC_KgF^)ኙx=b͙(+P*K4V˶D2_ b?ӧ'$avdVW_XdmzLGAiLƠXj6وhf3{χ/ xo`H=s\a$(/J\_ᒇ3N`UgcJ#C};l^C2rEs\îeJq&9ɷTPJ$/:Pk~AX3R=EZx#sO:Z]Ck sբC2 'D^~-ё`6-?>e-6x+3ǵfr*BMnv ABf'e\@h96!oU(,rP#RiȡFp pG~DWb. FIQcL\FVۏ$>tCf~jQLSW M"+5wiG;"- JԫQ,yi%zbVR(1IBtUuI5L B$p$OzI>v/wGeUd4z'n/jn[碯epƋ W%WN/8Ӵ2}%wZtU_Q^qБpEۨ52HT( 92B?׼B&[  jxJӾnW/$! yp`Xb gc~,axAvymCmR ?Du%qU9f%vraGK%[ywMǥ檥| @✑xt>H=RaױL*hÀUͩĻXS6\ȏnM++O,}Sv ckӘo?"nF5. 9lln->}z-db/orpkY%re7(>h:ux>ڹ r6TqZͽaA^E=.'bQrr` =܊gZh%o#{`e=b/H 4qBx\Ps ›!Fʞmލ{*狄Bq1ˍ}1x;O,E5*r4PhJt?v(co?+{ o @ZZhv)xGxLnAUI5"`HZ&"CH/fV<u|VGz8TXqU{A)cyYّh` ٍR6>CiߧY`]jo\YǵH{)C(B,^2-Qv^e+^(I%ORy0L?p BiRuQ-|y8s*3tBDB arJ#=ӑ6juse,ZZI#V'`XB!AT1cn.XpD!ڝ&K yg\Cp p5,"Դ ACJEWyi.BciQԴ ?Upb! -t;L (`u?QddHSwYCUfF`v/Q4rJ T#v*(0Tf'0AzJ% os'?Ua,~ZYz՝ٸR|$=1qjUSMTrrg%pA8f-{/L m7]C_N E(&_(Ix{Lmt'82 F?4C'+ hay3^'іD.F"Ff4SodbWpvεl"WŘ}E‚O"T2\%7=`ZjU0i7Z1'Rvcyko!28h<ɧj3`@^$0tOHO_ }[a:5}7W?5]U<-˹UG)I=%%m2*wژđ_](@$ҪwvanH} =cIkyAU%YR%e0aˉs-B 2J%5 ;X?λK X||=s_a==!ttN9fYcZ&o;D[~{'sAj9d)yZO82(1d^Dm[g]Ž{n#P]NwIКȦvW9oA<dGfDŒuyU5?ji~ihNY^3D'&J bʁ"i@;^3p+$ r 3wPڻ+ӯ[1Y r WJ\PBݛJ<ƒ0_@^Vv`@Etn"}we}TxjG7*Q\.4?0NC.K1'湿1̇$y Z,jlhxh%;i=홱,k@ =ܯcn̑b*ۣ &5 I)+mŋ2Y]OW)EݱZ Mj#Ίaz)xk] 8z,hLlg"6\5azHڊGQ'X*뼙wz/FwR![=($]`q-Oh!{b4dpMC" dĴXd/69̓Lv7D/7"un*:RqsQ/ĖAf;(_W_J3F]^㘽 ֘Z)UCF# ObqH<2KQ2dk3"l;> \W1u(qJ@#XNneYt[=uM&mP8 TSxI<{yXnYƞ ZV1vuZ]o8`[Nd@&FvAU`ZmMqG*lshHfygR|xYXub{Cλ?hJAb^/͔n_7 ꃱCo(D. vl6\A|gx4N֗S71,:( #OdQ6rU}P7nCQ,*i` 2lT)0T~#%*X_ xgMbe@Lr`\1pY=8k8Ƈb(asmҾޓtx>gx <$??1:|'h, )eU~7 `@Aoc fKFx!m0gim+oJ/+& u$hALkgE."ܪ߅iEh{vVPҝ3X߀昌٩v lBMHb~޾bo9gds>BS0 z r hxKe9}ܬg˳kGDn9]r&Kɟ69>1#{Vkz,sQlzmLP4RZ-*cԋrkV;5LCCÿe=T hIb~L=Fœ"sYg IM_QX`\ Ujs@M'k-LUE*4o/8gS?o)* \*rQ$E% Vs9}. 7 .Pk{|`"D @TNHo@ycM-KaŕFw!Σ+wU?-FTA:z5`k̉BͦX د4"pN9ie}@cflc2Gwf)&=Vʃ6H,LzU~2,f h/}w\JjA,"0ٍS b0}n*Z 5L[lcFl hvBhN`_DyK4N";=rxJ7Z0,%AԲ$53 fY[/c(iҼ䴘8pp⣉?}TiCPz(} G ߧoo.yt8۾LjGa`iV2Jpe^Sl8<#k/١CfQ>`Vh{UMNzTϞ ϘFDb#p2ujjү?#?+7+_i {.Ն DH&SRaFDaG,o ]=,9gD̓( ]őфT Zhp o6Q 1]v$˧&IG &"5wܵ]C T_aZ֏$(Y PyBi=!v뤯4o-iDH%dmpl3pRBOrʌ\C`AL׺9D..f8y+Ì0&d2 e7`ZrH&'JR\5"iV6Eps&N(7ۖ^ K

ADp^ q3HRr/a;.=S)[x[x:9w FWs OdlbŬ7ʹ6DV{`R#⺂ f޺}=x9&9wj@VdVvDnXVS_W-a\ 9yV5ZHyy@Vy$vUhzKVMbpne{;$ U972'$+{Kf[V%TPF&!c !FKLaǚuC? t؏ϙ𴙤Eܥ$;_- Q JuQމu@ |6SG8vuOkO헙Z56t#5n04 Gmo8]t;3t2X~ ~=sX,,<ܕ/[\%(\q LU=kqG(K)qo>E3yNhGr!@%*Zkm.m}kC4w Jfy)k95=ĺA [X^ݷaEޝ+ϲ ]o( :‘}゛g犰rL^ ' Z01M^ -wXxA@9qoL:3es~Aݛ-v_Z}vyق'nG0 q>3HQImVaI\Sy Lk[B_':c[exh H *U84_۱Y_oQ*M='üJ}9xk6*"9s \6|ߨ(ɣ-:{mFo+WcrxFEؤ빞LIcbHԞU*&t!5Y%}@ Nl>]MvgF1=p}+aNDP-WU(t.R4,b_ &S"޹yI{VlyQ(YkNi#fYF1RL"8adNoT׬ď] .Ԑ~> 1P$ElO-TV&UT/<]}\^rLL܏FH˚L`P u*ࡶ6AR$|N"*4|$>Sh/"c9))%. w\ ??G0eWQUeaa54H:XtIX8A{ARdvq GI8+YF@Yps9`um)Gu@͈#p\ݮ:QVb)Q{k儅 AqQ.EEwbG[gf-HAT˥~E7]}tӃS/]d&JcOF5 J؃X2舉'4w&iz#ooImxW]l*6 3bsӔG*h[Cwu.|Tڽ$]}dz΅gh14V46 ^`J4f~Cl(StZlڽ 5w>,Y=[޼@G4]m+ -¥m bu׆3ޫŔA;l-l2$n[86Mjlσj4lo@gȀWGʰI#yF|mƸs6(^VQ#D @ɣ<$.?N=J(~~-kVByԝE /S(vW{xa5Nߡ,.,iΊ(L͸O4Δ@ѪO9@tkD^*lKO?ǾG>U&< mTvѽ;?Ԛ~Y ByGfs1AL܈z9̎3L׊YZMu'DfEd(js)W⧈>AR(Bx !*zv䨧'tޭTb ̈R\ZM+d᥂É< AYcƚliջd%J:n)!i/gBp~ZsAa,24b't:t *poVYm8Sp e{OQ.~i)c6Ijz WsaAGYLᬁ[ i2WZKèX0V:Y20$!T-7wzOI{ vdx.(6C) Vl}|otfQ]?/[Byo-g~%(Pwif=w5c!SFbbFE jo[yr@J!¡ɐ3PMl+:'N|@=*6e|{OZ᭱™?>n(/UQC\;=F;D1J(KY$ Z.msh |;>M%sTkf^yp:zwB_ہ$߆-ZVb @J P&-z-$ )8U9^P$t5"0*#.[*~hы=T>B[N?"Ȝo5'&24D* K*5D%Dؘ %BRoh9 Ңb;oevaF−-Ƨ[6W&+L2ڮ)?2o%4'7ȭ['zsHlu.,k[ ڭ0g)m@-S !30#pCt(,Մ>u!W§Fڄ52яf38'ϴx@f>E*P_ t?}],fc Q \3S՛Nbs3#ޞ-C %F#F.M1f,x|6=3Wnqq[&1g#{>ۍ%h~Y|@ZDuQr -\]"1 EH]1x̷x5]wr_K9g,^ ,:մ IF3??oVw*_l|Pg9IBixH_S!\ablO8aK$^Scj~v|"U߈mw98Osm003L+DD]Y+ɽ?Ra 6 jx<ꓛ7E#7OLţ/ Vf@!}KHQhl B}@gWwce] )cx41& \n*a;; 'R -VŘ6FMdWs;8Sd4tM╌  #`;XLHF'˜Y52d1Nlȹgt!ۙ07&"bau/"ޥɃ4TuZ!Zlh; QZ*jg}QZ8kGE'D7̑ NpvGH|K4hD )m|BSYZH:W ;=\ L.-Cɿ͙.Eb VӔ苤?[AѴZ}-սNϭ0E a)nͧbf i[erh]}j\;X]\oLB5q M0*~eB a?A*y9!?S[D4{ytreB9k=2Ztޞؽ.yFLwKMnSל7r|<7ʉ__܊ᠺHH}8%j|\pڃC 1q'=j[liW۰Hgݬ:}ўV:kʓF>߫@#4?:ny(Q.]YA76$E"܁x$ }K?- E@ǜN##.RC/&? j  #V `ŗ]"NYay M ;ľ:4eNl˿բo ;N>vg=cv.؈J ;JN&+ AR2t5S`6/2 0(c%tb$2-@(b*4sRq$(RыCyz,,M%55{mO<97X+)W)w.Q+4퉙-կUAN!XGјwm-{bi S6"2\?Q])^R!N&VHzb l?}x$[b <@go͔yu?1o{` 3M+gv;b!]5U2QaH"s)~N*o>yMrEܦ9jYΜct>!Q8,oO3kn=;9x$&bCJvcNvFeoJ}-)I% ]֑Ǟ nͅAb̜KzቇU;D92t?׻^3c#B9. W1)Hc|V |QʃɞiHh%{Y`5h8o}^7Ud96T&2t@m"_0©,Ufeǚ]4OvLp(gܱߑ&N" | igfBd[~h Yy)˕VK_YYuOPN`ɐE1sl~cr uu\Uh{wb/ƒ=GI)Bw"@H% k.O}ܮ75CKoh#`8dK)L`;ݼZ|rL܅9.Ic SV/}8YyE6pb^,y}Sһa|(mzd׶J;$hk,iGQ-=?:?>}@KOoױҮ"˧>ςǬ"$ 0Fg<&-5(, VSk9Kԉ*dSb6\Z8[T/ǀztkwܤxq)njٍ6b'- %ҭ4[Ybp*g2vk"{|Fz sd"db@Ɵv@Ӏz}9\MrX+L{O+MJp@Ō[ Z_i#.o@JE=A7_fSDxRy/ȟHR{͋yֿș(q!.J#6*rt[o4#|vr-}+ Y90hTTtɏ=6 ^r!nXA~|_ Wn:׎يVTRW9ʻe؜S2cӶ#TUWS esb4*)ɕmkij0RR-Ɠ>ARnTT4.EdEɂ |yHGAi GfHxv o.kf?)mKy7*+8mJ@OlޔFJtІ3㯬s ߇fy7Y8l^4ЧğC=g)Px ?_g+D6 Yάċa{:,55YWT)@m^@(CpJa31U? 8,)B^F{1Hۀ@EaUmz(#֥p00*{%~Ho1C[K=X NY ?-%MPr; |ͩMj񀞅S;t\:YS`گ v`}D$KN2D8=dqOkPs&va̠b5Uڡ,tcL_NLAɶy"DB*,{-s ;me kl.M*"`cov>q083j "ţ:_0C}e`_}ł1&b5A buÊ.y+d x*"_ZH Xb2ro : ijȘ~R D68) u7z'ٵbm(|v^/MrB#%PbX_JyOCwӣB}P:9Z[&zd)T_ך֔E9~䰫Cİ0`F\:T}grUh0SU^ؘFGPt2N /wpwPrZix_1䤀;{ϯw#/'NAվ R{;A1lƽ0 D>-sn5,ol7r2{'=l dXhJIG.`ԔY%n^- }Lg|0KHg$џ9T&| @c躼$pħ_nfWFb+>=E@r8GoI^ט"BLT[n*jd!ϝ:m͎&@{xRf2%k2AΣKbOFz2guTs nh->ZB#{uh^b}egtYj\>"OgxjGǍsK  Tͺ=C~.00UcG"@xqi<0Ybf͌.ok3~R{Anq&#!`(Rq6~ʤ%3 %Uu#D&R?u\$VVu aΦ2=3$DEÑofIv'O|ӕ&YNo% W_j!ؑVV^Nl&h6դscJc1@aYP욢{fGh-9k{B } '`5[f(3O<*MhkӽW;VQf :q7b6~`^8OL\eڹHQ~n^$SCOWQ**~9vl:܉VN%=wg1OpB٥lوnwoWo." dI)u'hHnwC) %H?BNTi|t'o痺!ENXPGghʇeF9TkESv?"+yqCa36AX قwp -l뚳|UWԐȱSޞ-b2>Md~5S ߊoèdGV~U$!UۚoKZ"_*h\kZ@6آr|gKF(4=8L:n;P3zwT]!(-[Hb\%6o@*sbbEӎ]NzJo U,rAYy+\J0a67RO! x)=ώkMK`q3fB^j}=9bmg]O5R8UF_%0L&p̚F{]MqyN{0ך ^sRҝVQyR@i7˿4+<< Rj،ua%-XE!e߹ܲ:RjzD̈"s_0MBԥ (T _&(JaqƊ`Mhw7S>_U ]C;<ٵ`jcC  Y֒OIJK_},7v PG>^jcig\b|xϖIUeAba.ĭ^V4ڪW+bŜ!'Nj9%3&XBYmq{g6K #&io1Ay|]Q0 y9|FѺߪ?ԍ)\yŸ9` !]@cIL>/4W<10 ztoe͊$,T`=!eF \ jUi r67_ǫz5 Q&j 볠"KI BgH&Mkru1U6B *+{`^/gMHyf!E>XLYqgh@C+za]7 3g׷e$ŕ. c ۟3i&HL\ccP.~ \Z5=abo@()>T1fP ATQyNG)sD,Kқ"ϯ7:q+$zx~‚P*1}.4dǤZ!HrO}z|Kz&O#"Svm c*e-͛wh+֒7~!_A5)%_"ɶ[/.Ec%++R>[}+cN?XG,SS_h sG=,e#}IQ `|{G  紿 m.;WJWj;"~ RF^Օ7><_4HnQ]wkDJHyGpLў[2EEYkzZ[[I(XDZ['=\Q75ywAr`iU:ZP(l0!+T{wN@]vƟ'1UDzG A>U$ fyp!­妃eVTԃHi*Rd) +&C%M߼߈\^`{%,7y3hB] nfC7PB@--)%_|ڼ&[ g١qM=3x/<ݝ*'z2P1ԉ\׶Ѯ XqN&_qcٟBhAa{({K^[3<yCQGRAUP;Ia6O>~|xc=N,*0Rx߶=<01(D܏BmJauka]պUED.zo ڋ50l3i9.Y1A7m'+Đ2AvDPXJ * !$".kg16vlXΔ.~9t]*r2CsC6% {BesW ^cYK0SPz33JӅ %#RN1L;o\:>yUuعqA)ps*@r Hbs$G{CʶSe:E V fA JnϑeQ:X(%~| wou{uX\;Fxm(Йm[ڲaQR6YHmڃJ]fCF~'"6Dw24L$6#7nDwNOrΰ g Ko4|[j}=F_Q܅LB^-(:(0 Bߕd0M09〮&rTx7/f" tKz='1QHߤX.(yxN051cف̑ %&on'xe½h{0`$PG[zɣ nv!!;)ˍgv~\ t *Hbr N̸a#ro7((Y?7r*Ry\OHhfSU>>Ld}ZOHIii,&}e~I eAG)]AtY‚7DJQ"yEY峅Ax/8bVJb'˸FVop2ȝ+{] nQbdOոŀDhvĦr"G<9Tcϴlk\"WeCzÜ#>r# r$V<]<@wM(j*n a3)[%Fp/~Dkm%& <8 (I̓UHƁRHqS<~JvsMpq3f{qO* 5u1ȀJ0el4tbq~ 1)p@^b46%vY0!fE1T3j#3?ʙUr^Ptwi O훟%,HT .SCI9I b]]:>zsa1b|R pHunS^b >"3{Y3-wk_,k~uCS`FRhCp89[5&6$K= Fn<1D{ 3$rUYw @\_L{DRe(X N譢Uwnj!эe`j#ߘR:.L!hyg[adzt7<50;)@R]vmMvA`3CNzj\-?oߟ+7(h޲nG0#s=b.yk}6/1\}lpQFJbC-z(|2Ob+|9NSz_^enT^3ZBH_K?o/֓nqNm\Jx[1JM,i@s sN0nކe)uɮlnY!+"K"z uu7ݶ=g5CJKp||$ W9*)X,-+Khctpvbk5 8*EWH}>1ЫKRt7=즢&-۬qAK:p33Fސ#U ٳhOxJ-cH$#]k F v‘Sצr,X~UDRPJR}>.Xgg_CCE"FJğAi p evֻC'i# RbC>icehóB@Ѓ.bdB|H^ ʓǍwGھB#b ( ;!S!VTCɐ# ,9D갍20;_ ]& ub\VkH5+&"&[L$适M~kq8L=?+ۉJBȰq)$Vy)E5LcFțTor/"+(5@1 wN/ʤm@R#  ]}Jɬ9W'oь8i@0XʡY}㔆ρC2v?\Bp*45"AX A{7AA&P>Mk?-G(.T [&9*~*gKn"nl tdyoٵp ST9tƚfilJSoiݨ경'Q#Κ)@;>x3xb:*{PAZ5'L%uRϪ_rL ت@\H~(J U|2m J\= sK,TB.doF_;4%X` `D 0MuǣЙl&B?4HeWAHz㾌3qY7?1uYVW͗]E {"NSTP<νŸy^C\|giqo=/M1udFc nm)nܷ{m4"">45|o MݽхRVĒ+91Fi5/ֻeFGK$di Hυ=٧hg X-[Ф p)IWpN9k[D.(;)/3x}QP ~U! ɟ5瀷H=mYyˏTPs$ˉl -Z-ARҵb lmgpҤԻUAD~ieG rs[sKV_7I`Q2t\dԜ"y] aCx1+2aci`Եd g.fe]Wf/Cs{^[hg-QCX v/Wnc<2tI 2X%a y7< qf![eM)ĐPi+zMʣ%R73EĂg+&@Pˎ*PL@[S9ਛVfߟhjTڡ+JQf3&vd^ѵԾɈt qq}ρŢ5R ^`vpi})2&JDvKMoDV@-Bm* 5j)Wثqa.EQث&!؍7M:VSsФF)ct`>2E6o<L{eеFnnoRP_M{9V'F+WUιQ0?34\5ď9nD14y﮻<#zBJRl`̟-9*lh ~]FJw{Q q4/iJ]S20A YWUQ~odžC0&7J>bvށk0:ɍnhtk]a"KM7(*v6OiqΗ󹓓*/KrEUfAlwlHrY CaZ ijӡ@g.?`ƹlPW]dpy٣6MPND%}ckLCc ;ޙ*چRyh' Uly g3$^s"ԕ_1L'ToFTY4LԊ%[G fɝy֋E)hnB{g+MBWAl~os(>yUUkOj|X˜5PjelTϺ8Ѻzcp_rVJ" .zs[MEO:dԯBP.b#DŽ(dlDѣKh\$4S]nS@U˩ztY]ʲ34{iĬo{9YVkGff%MEVp2 ҇*`gÉdp>izu~AzaЋ*.f6aLL'vM0](J"=af;ڰ-F]J7\k/#>\+U}Tv:cvL!Q#ttZYK=m2=)Z /aTŻ{P{^E Ֆ(۫c`9)2bZI{xȇ~|$8mM2/$De-3&p1Čy[kv"6oMOb@ ^.6ZVoByRGp#йq(ŏ@|h?i0C.REc&l J"BegQSWږdp'˪X^209e8w:q~HQ =7 p_p^G L *i[%eQx5mM#o+7.&!GFad%.D~: 6S2*^]F=y3+&k‡>q?63D!д^]3m}!veH5+1Eֆ<#RLgw|܇з3hA2-Y FW W4Q&{,[Tv,~Q$>K6`/:5g 捑VrV((؉=bDzR=mBjɂ+mt(}uKtTz¿'[qm[ /cpQ7~rWnA^"Kf|q檪MwH}6VyfuХ9Ͻ  .aVOQ /ebћ5((PEFP2f緥AxGX+HshEVmу>@W u )2ZS4rj?)Ԅ.|\]=N#-5>gU1MegTN\Tʺ!!1]lN-r{-b,kCb?^mOC'ʝ~.1)84"Q C2%p§]z7je`l!R2Gpo,?f4'q7E=t*kVذKNEQ60뻚CFtUm{ >mm)*I(98 H@f9 ) !x4\@;1_ Vg#}Yp%đ]9u]` u( XD==u/ws\o"=D r27meot- 4RwTdA%39;9UY2ae(@ ?%oe/ÅUk ц8UG]k69 ե @ޡñLP=v>{|5= Zt**-%D iاa#v@:,~Oܙ!=mQ!1ɒmi{H(HroJ()oǗuh<ѺEC5Tr,ʰLv#apiu4w*U.[x!Z#D,Z4!LQ@2C`c@p"<"gclfw؇Q,yV:|RRm /aE%ȶ?kLE({4hE^p= /P'b]zWJXVlDžnHbQTBgډWG Hs CI+ϼ4& Q3΍7jpթNCUrl9fE:+SIu- EN΀6p4{8}rV%~ svà2] 'D*59 EKBiiC6e~:Env+J揼X[H%)S5YnP>׉ HQ/N4!6g>.]8{yB-6?} `IL9QL2/eQ`l£PC&îHU /ׇ16,PF-|B>焼2֭o)_IM LI.DVV%x!R)s3 6Vr{,K-FC|LoCrE3/U\cֹuԏI-> t$bHZHE zҕ%pC;גұ'jF=D-/yc5C=[ukRcBi [o qV-H6a BXeKQ@#m2F߬{ǝv'R++&]LvpWw ks܂vN$h׍]`97-Ig@ܔ%!*ha*fY*gC|ll ґˉ0bG*N5֓^hD:6Js21׋IXX=gpfk.?~ =c7O"gkn6Ee| @0^aH!Y<.=t'~-^Χl4Q1]sÓ'ff2 +Rd :Apfa3=guDd۳}&%F0a½T3lB"!IV[a?MLo 1:a v5Hkٸ̨^PGB{7 .~/b2nQG,-}CSz߭aD>V,8^uQ:{hXԣ䚫8\|P8qqc^mv9 *MhwE[̶D ooT5#BŚ"kߡȁJvDEGAY~|WTΚ5pj7.=тB,hbk D3;fiQ,Q#(.߼zNPƭHpGt|,؝~mlѷt+^Ӑx|&cSzbK*3xv S5^N5|H0IN|t4=lX/'<1qïCzE\FM9^j\x!u='?RE/)EuL< _-N08@Yl:oٔ]S>@#T)㔳AʀЍ:eoʱFQ9ThWCQv~kl+a ^_#ѨSvTh8~XXAVqp$k/ZYM$ }bZl%EXֆnyvHPj`Pt Z|ϭ3EdPu?=zqifgp3ak*9C>:p쁪f#=n/!]K%=r_0֤5 soj:R}-wJK:(qW7f PA9% r8cO^Uɇ=7\&@u޽k󇣒%S@`[tvFǣAAU/DTbDغU, )znh]Ҋm&lMN 1բ@㜗aD)qvUqfVQ2TXx{Wj@pU>zVPY$>m0?,%A >K kcYwmBr?qK :[<8gAt7>Gh?0 హ9Ϋ%KسF9~i]S+5u44 #xi¨9пrc4#6Zh1$%nk+;J=,ѣi6fHۍԔdߩIi_ˌ⩹z0 =@Lie-jFΏe@zat%56* @BV+Jݥh*xhS} QG(OG!Rw;^ٸ(H =%3a'- 97*N+/jvi (Qd^3˽Uiשwb,BOIJ끹i>qbym:˕ZZVwiJS >9i+YBXTu"p`qw&ͦ0:Mw΀ XG0sm\oN|*&"oGPsy/tCEQ+ѕ('}#Qqy=s.P\ 4pF^z?DcpJ!'NV,JjS2gpqL*+*2l[SPuW9"Z:wQf>20 .wG9>@c& ]'"ESE=B(Shӿs.k#S/oȃȺڶ2*apES7-fsZn>x?|Yc9򤿻RT8r{D$6"LT8yL&6%/]%j2jk@5&%'Lw#.8$|+:q{\T+r~Ð2eX'qZe1G 'WVb{`{F#Rի kwޗ'յ`L: $M …G6 \Fz>C ~DHu/Q{T54C_qRI]qe@ϖ& s@@|R2:&,GvYvQYĊ2 =Yn GtY m7iq۬dziuQ126!f0D p/𒶺m+ n5.Gɦ>2>%] "t ֊e s#D/JtОxM dEiU)%GUܬ gNg]4`9K.d?5˕,Doat?8H =8U!f+G$+9L#)VV8>qҕG]yӣ/bUz^:B t*U5 ]wsJs?%YvJb#/'7/B5:]ykuNd-ڧ 4an =q19~ fP<O!,Zobe8CS`4 J^ӐfP |@Wsi>G\l?R&ۛkԫS:G5Pf}ՇؐI N&R Zz?%u2qE1[qﬗ@]ϟlE̬5bP|};tLwv 19>fp莏G["q^ @zZDzDL*K,C'܆փ_iZ_S(WNp񛜴T IڈxC-LH.RWa kynF [>hǴMejxŃ 5MCD9,jc|IR T=P{)] }nwMUϥaG.zϼEdy*<͖6u>u4Riթt埘180 t{xswQ6kǖcZ 5u;D֕{x^+Y^:v@#Jᬤe[!a7G=d݆5_"_C1=5.}!ҵ*Y%^.OmA;:~L\FweH ݶQJizN掠4[WGf2;6̫D>0<)+>9{WLRגT!|T 7}LV@ -=7Yh>gMkAx@JAH>:.9|V+@l i[o:h:>M:M?9FTݙdٌ\s8r،he ŖyP DUBÚ<&d;0|1@3FfwMƧG7.(HtMR]\ tV}cK]hX8@2JZ,EBs/}Qj֑ȏVyu>;\s?./]F[S`|V ryO/IL<tMlfA[n>du^&0:nŁ 櫼H;2?]Qb&u؝Zk9^h=X2|sj[ImewuT]UʣfYP&M~ @a1ӯكy7H*PQ\-J 4396YR_i*qY  3$=oPvDAø'8 ʸtxN60M/UPv'["m+錸4{y+Ax:z}j:I`;`!.>.Թ?M$i|:g6?]:C},Y-K{3_m7S*Boʬ0a84ۂ \py6f>EKR)汿7hZc6\ꍈ8O1YjDTrN谎53@$X4dz-2B^\u067:N8޶ɬ/zKvtH.â gU}iNV2_<͟Ix 6Tq^:>%=pG-mϗF&f\#\%N~&F 0ӓY;=s~JT)U^E=ToPgq Q,(F*nC ;ec J[0y( Uz=rSL^lE5SEK&&;W8HM?ΪݬQYTtwHm,Iwҁg?H>uZ70zW!-ݝ7Yɣ݋v"dw^qӒ bRBء05R͔;4#\_'KmeWq rpnڙdE]k*k)Xc}ꋦkh'I aҽɁJKwXaH%S4+ӻi,3-.w+vꃁA9BcΛ /mN͏1CW~hRBW܁7o8||<yK}^ǴÛO% ky@(y+S(-RI*5!_6OEB;ff]- Xe{u͆hu=cϵg8;pE"J5l`6Wjw;bzC/b S,r}ϗVzKAeo>iZ͹}m(P|aS]v[W ɌMt @é7^:trv%o)chuNer?[u|$8e@e9!dK20p{Jb"F'o-rO4s- =2RfN? /$9 ElzuLUpCw udA2|> E1 Siz0FLV=$KG<<\{IHaCEZ?c);5@tQ|^Vܭ$O@ygg&G걫zpgsFmQ7JC!D_4*ߵNq@X4xUH3XEitl_ !&l ՗|IG5)o-a(ėR@,_>Ҧ8wmkH]!N"F hj LگeHN0`V^ Q:E /"$\zG2p0"J.~/OEl >7X)uU]-Xtoh]Տc2VFZ4o2: 6J6m+L0SR$#>Ƒh7'.O$f!O=0dZҐ;6lwtepiy!3K c|-F9!yr>#t1xECq9ȡi}E;_vj &AoFz╃n(ůϒ/|ƯA֯xSڦW@'')|duKkԈW>4$]z TEg^Rs CG bLǶJPF-R,9Jƺ<<Ϩ'q.܅"(Ku O!`nMj[uS?^hJ5 _&Wn.v %p6GS(Ja%&JqR=X/.KB*kԐiJ,.&*&s5ՕfDlPhLvQ0aPvsk+(2{X\y{.IL}bM5;9dtKWsZ坒=Gnk}UӽFm~=o\jG;3iIzkl&mbjYb< WVdm1ȠI4L{my(Nv:}m ;}xFuO]O Ը {ݭs3nfْT0Y S,U`Ny %}UfnJ P(Q1~;|i^>[#Ki{EMYo_4ivK`~ʨt>zȕkrNvR4s$]e1-^HEC1"=NԵXj;ӧڳ[n_!YiBֻH{ܑdW#s@҄}=h(qg;]*ӟĻ?53b,(HY2TL\uY땄vY0Mk:Tla>7{'E'ihqARW+q@@O)mt.ޓ Bu 6XÔCiZ!NQ >.&:4="%>bZ*牅6!J Er1`B)ҽ狫Rȹ 9 ́]TMj",L_ w,mK#e-{4~TC%+/Ɯ@y+'G*+]I~: nţ 諷Z의t/Jz(1ac5>7:o!bA9D֋:B4Uj 0h7y8"7Ka3j!_RX<;dZ+blW/%luK#bD>M*.K;mkq/˥VǻK7 v9]0Dȥ-ocWe'y V?[.,e&`\qG"0Q=QF7֐쬆hS ߌCF:7-vF5؞U%N W9??\-6 +'lx*vIC+3&$ζC@Z.=}+GasxʻɎoCKШK.s6Ubd Ðӑ$H(D`IK| ^,Ԩ58k ZguוwfgfQeBr;c}-?mai%cm6+_-N&-#t|k)ʳ44\"42Ho2BG^ ~!3 ~vaIO 0ېH R.qL;=t6p?yώ󎨥6K V|}XbQXv$+.rH7]Wj`7aq(\ɫ<49qS ~\ɩOa l=+nTgh3]L74$gK{ouc{m!Ep;Wr<|<|0_D:]3OoQ=]Y`{N.۲I+@"+*dA4=tnAt3Ui.fyNz$ĨVAx"5 Plxi[Il$D 7 4 7R맂VB@ڪyo2h@3_\g.N5 KLέ^ȽEl J O*J-ZӑA^~CIW E%9a" -%{tgǂ/x|pƢ_V{ӝBTbNp 3{`Yޅ$U:H& =0$*z|@wZ-WT޸N9K׭+aĆ=+e1a_Kc*9bWBÛsVu8+]fA#SXmjaNZl*3ۻI[;M:%g',FYau^":H.dY]뻩QZRyܒB1To=$ŗ9Q[%oյbKY^552eoaNͬw B9{3R{~q2z\ѯqjD48SXӼ:` *\|;]=q"WWWvUoGCPysiR?xdi^ D3+hcWCI-"WF74:l-[V'#Va:ZESVwÈmL Wb) $ . xBd|,U~6 0$=xd,w>>Њ af[\E5XJRgD>rPH;V*r& %,t*aQyk ]4>Oi\s?+ьC5IyASq(ZrLڊ;bZLUNOjD; ۡZcu!V2 Hٚ{{ZJkq=nAT)qK굵¬FrsXݶFQ͹J&P;`fgLe$SJ/) ,6_ĘbpBhY >WaI}7xPVZf:r/r L$ 7/XpƏ`p-hݝ_R0HQRObukSͲ(V\?&J^a}0+:+8ӼPpWT3{UPrFxqA.#,. t^旻?%WXOyRud?_XOHa -}.TkO#uɬM(}EOCrex B]t,]C6*?:XMyak.:.BW2ȻQ.{' ã߁~޴/z]}mϿ~}6E X"z״$A/M`mU.jCkB41GLرwBS ))ޯͨ@HҔFRXb(Z`޸6Ϛk?c\t|8w)w2".7Jp-JY44&g:M8QyӣknO<|;}'+zrhLE>Pg-䟲nƺ)-V`M~wׄ?rBZ[>-;@!!քĠF#tDLMPkvJ?-V:>ثIk/B9#PmC:V׌ *uje6~`:@"/2JyBBw֟&|6Rʘ2 䋐ilC _[S})T3P,є9(zjֹ/(wK}1oE]]w3 --#aثAX#Ya֔>5a*lUK p3DeӆuXIm S'y)g/#Q;C‹ZPI\[ܨg<[MPīڔW zᮽU|*&kxD{K2 :&'缝wy&tzkZEm*z^Ldh ʅg‚4W¨ҟdvQb8ھAL_&ŏNUǼy% QI$]';7rnkޖV)Kd?gA|+vSgL c,\:"X(rx{݉#*+Hl"θK&5"Kdӷ'ޮj@|Kxx.&K{"'Pw+ȔT5X2chjd-s*sI5VǃDƮss a|H(ߚz,ey\1}N}zahёAů浬6e>g<+GB1xõQ:gh1/3=p{=v3Wvv5<"!t8QS GgY~=e@0-fUY, wxAȶX޵7H8AL~&ֈ̙-WfNTSxl:xf$s#A(a2^#C9ɍ9_mG&XѰE3Fn--m1"u,9\znT49u fR4uPEHi[$ |׎+*Im_A؇̖I X*V&y++>Ik!.hV]6~k*[B{StqieEL>SνXSz55^V335Jj<8RJ '>!#npL팑LY4v% chip#t>2nk. Q5d!3l$BT6[U>%Ze<98MwVCʹɰQQg5yWe V`{851 Twqs"@c9T |؊h00gkhgxHѮ13pjVӢpK~z>4|i+[`-y /X#CƎ>Pbƫgi. _@b+Ar,Zg'P3`Outיhi|FG>u7blLqa|W|V|1/-nͬ/r/29~wnXEU}ehrfbnm"20oh2N?CxVTmC'mfd^ބN :Njϙr^!FKeB񦻟NV1 Aa# kdAHcI?7iNⶨpNv ؂?~@0J$`ӣH_P%qa%uC@8œ.\"S1 dC9ꎿڎmi~ 8tY]O&EΫq-aJ :dBh+@;5A5[cK>N>~CWgc{ y``j` aR3<[`w.lGYvZIXjH)ZA`XBG;UU;>^5ZFCTQ4C, #I˖ *ͽ"Y'gd_"9 샪œ ad:,n/sӰ:E` LzMVɿ ,|)sc>.ǒ,l)\(3LAٔr TEg+ؗm߼Z 8IiEX8 27X^I HF054TlvW!)ڼ=F1XâxtG?+lc+'7"nL%=ۘ8'_b+䝄[H8k1`0+>$rTS7oo#URK%lj\ryYhm)T=M䟍Lq)ĖfD{ Քh'h$Ǭmw 2mEז'F h)مFINNvϖ $2.R!5^}w ofAzw!ZCOCբ+NK2G"G~.t: R2 aZ:lɿO7cglq(kѼŅI‘bL|* ?]JWءq,҉ Τ,R@ (ɋ8t}Eҿ]iLOJIQ|_$&g<⼱WUo;~bJ*<@ī۸#>\&JV8AӏBBR 1t0rJT1a0)\w\ kL¼н|QQ9o`~;pR9$aZQT_uMLX݋K=*Í8E,q y)(2FӐNsː*A\1YvW,4}p:)C&,RadzOeU_(ԔP7JF|챊42}x\$J}=g%FLtFbz^tR@*2V9jk' ~OǯOL$!J؅n]eKdԺD@ܲ{6 1^G$ y\ǧס12z2^22LSF?JbTpIqaAq2+YMC:eIy|TX_w4{!O?!Ŕ'L$§9/1O@tAkp}wIHTtĝy_Rm$c#~##^<̶W%\AU#mUw*s38w38k / G; b[^xJp 3dž'a0nfxW\=\EBdhG?p+L\>„҈h'<# 5c&\b =hjKHDT=r [~zG(ZK7j23gý${!d+ο|^ǔtB3]uiQ>&Ai9;'lC|r9 _żn1 7e?jMv;e<)p^LSZFl)Uғ젓 bn+T4sd r2IJY@M3r5W"qG56/g,~G /$jޮx7&RL3V[%Qq1> ɟ .l7(Z-:6opLTT |ײ"nF(x!0my͋R]I1p.ZE҉'\D Ѽrnɕ 8+N㳍9Hs!t+6lkQn@HRY HGbJ/1A%c \21w/j zM]D$J&fpmq#uYgN0#wAJEu0ھԠZpZ©>J5! ;](rkFE~fU e)4y{]t(Y@nڡ;ذEKG%ڐS2%рI:ع1Nj?Y o(x *g]H?e'٫\%5dc\;l:`C~oKM*E Z&喕pOfBgrdsRyL\/'YB=Q);)O 3YWTu TK57dl H)N3oˎz]y6d>0ș[xjZd4Ӣ@nZ dv!X@ɪrJ챸X%Y>;JclrM c[H!X2f&R|Jp\{=gv|X!%rEJH#G'c6yl6w|uGy[m2'&jO,py%@ѤݵUgQv2kEģk/ LK 4Umڝ5җ ٻ,55 FݽQқíW"쌤eO}GW :EBiK"?֟Ox ӟu14/BMfj\H3rDN0A;|KHf{H%\&Aqc]-~;0fLGK8iL'{9\,߽WrhA # a萘R\^ዻWN)aĖe eO}bCi/BDJѾVqV.`~RK)z*}2E?5E6̽-4"k)$JѽI>7B0rhypzN st~*N(0>N#C \dا2_;KV}]web:Hq HFѴ@0@3AIHl=|{JLRJ]tZ.fد_Cv xGΈ9CGm·MU4y~HC| օe RE /t˖11*ΫO ; W* n?Q")KDBT%⓾.0njFE^H8~tXA \%6gʹ^<RsixnmqR.qͷszVT ,ծ16M%e:UZ4P7?(e9Eux.2lDJσ{L9&5Xb". 9k@4%Zz3k#K2"4H_{FqmdZ*xItf /q]:z8Ӡ49x^/4zzϥ 0>Bh*Vm+ϗTO \e07|UG1si{(sO{rZ6yKƏ׸J#"EPMwk[UnOk^~|͌+IO+kNj c|}KZz^_G2=3PkX6Ra{2UMb`ଷ>5BÈ8:Z,MxEKH+s< LE7*kB@3S+/ X5%9(uZVkɅ#CdFj_~Xv]<4N4lPL zCpH! Bn f0D+>=Zz8VBM%RAsn,*uK F=CSlZߍ> iL$pi0퇚>CrDPG| EPZD(_rm?q+(rK!] ҍS˷a?/z,FTvuI$W3kosZ"m\ l01SxzuGe4^uΗR>#eШ6mr6rgoݟc3Ä =%\+6}?79! *::mXjjaqo'2La?G1& m'>kse'Yk!jH _HF!p 3c} sa]޹0((R;uf&P^ ^r~ϝXsΧt^'ka, ^SJ27\),HAaq\/FLcL'Q01`ѵ{ܮ jP"?I]ŗL+Y 9g>.ieيipfmfL|2/e4gReF’T,O=:N)VM[26~u3N6[u%7~b9g 1d=uT?+)@9˼W<[1. ' wE%{gjX'Ɖ:H0w`/Ko,=7TO a+NjGTZo/{J6g:&0j3 :5/[ il:7$9G7UsYD|dz|4 dOPQ̍l)\9:5MRŶhT}JBi0ɱ3ohʫ@I.7+?z=Ba:{C.":/[x=ߡt`3s.-OF^I: Zl''`@JN_mH&ǿU4kӂuq9?ߪ]fd)e ,"L@ŀI3ɂIs`3ztQ$3 ^7ld]6wNb$1qGxwPD:\'թnS p*QOGW#a@O pwA NJ |aG%<~mVJCA0BAϔ\i~ ~%&~YzR}5O_ϘAb½w/ퟗg"4a1u$LC $e`nJe5.hmI'ci&ʏ8DI{cORʣL>ioPJH rm6}^3>$dcg|A=Cpu65rc[GIګ.ޡR6Nbq7{"ÔK_N UChJCc~`gu{mԢosy= <]T}r~ I!:#xh= غfrdjnGKd52 Z> ɼiJx}Mp#}X)KN@r-tFĀĔHhnx`7xqD@j@2Y\9oMa; $뼘)E{34n 7[m}Kɴ f2ZC>^&,X,]BpWS nOQb$:e]nNqgSYMڡ^-x^ 0[!5Xrto =~Oh_@&-QyHϭX޵dӘ,hoFr*50cqN`{gpn]Q7kIڅ|W&+d>m2.Yͪ\Vp;$B_](lXC -Ipد@N!GPŝlSbFN5GVkSq*\Ьnܱ`F_\HS̹ץPF\KOpB7ؠy^RoF "A' %UKﮗ7xJr'OTMĪ; ' i o?(FY F"Q|jh1ڤE#Od^'/8vE%8 R$ɅV$;!Ud}VmjB.\F|*bO^­^H+ "-+Д*>xsΑĂXDNe Sp2_mpџD#:!|"c2$ %pϨS}3#k9.!upǮPr4u{C&>^R9x*&s$E^DXXtލPL!TV)?КK4&53{\3C  ;0Ot13 Lj`fHwM N^-{\B"U*An>nqC`ufN͒%>F-cCln]?<U!i R-*Hɰx Gևj~=a_@*ׅAGJ?[KšI"6]lٯQ;n<0i{⣣usz5T` ^/ W![X)üQM)2چg}nDlx5Ll@.ȍB48`S8RѕAg/..Pz7\vLqnVDt(( v0lvM UVNd`dWaxs,}12'Xax= 'xA)R_?], 48Ɂi?DxiթZ(0,u/!h.xz{{oG(dE_3NxYKM>=t.k^t֯O^A:l-V8Y6L`q,tj8~깄jW>V ZL(ISsD5Ӧ!`cJ`KJg&Ѩ+ħM$0(&YYS*jG׊_ún#vVB`Aʵب[`rW.O%Ae(Y"(4-֒}e Nge[\8Eݜ5BV ~ *n{_,{P$uYzqɡl <ӡyN Mxzaؙ3bquX h5o򂣈RzݗP@\UpI ;|f 9qu 'gM0' Z+ObH@ޕO)!``Y¦Fn'fÈPBe,i RŒ;[b$pUL2ϖ%{Goxr8DgbZoqYځuN/0zXR0 KA~#.߂޷ ؋]0]g4&b5X9'_0AsB*+3?&_8IKY.OxI  KHpNoo/sƦ%kWCϽrJ u9A%' ŜXR[UO?%8 @[P]bb pl7}E@KQύNh]ˠ ݋ZCթY]q֪Ky(j=IXVfk0 gZ,%PM ).W+Xx\G􁏱RW*y췉 x5M)/̃L ߾l(#xTpue*KLp6Q2z=gu v6]⯞Go.#9+賛SvȨM,`8fM#> uJۇ:"*0w}+5c}HZ\x^n`[R4ռ'io7麟v[#׈oChPf=wnDOZ.QhoqZ+~0oNJFƘ({I(px(*]!30my+Hh47Ƈ}wS%ù:Yc (FT\7$"mnOlq ʻηnLű֭(o3UVe.7tGQ֦ ˀ0:O(흡CfK`zlz-yc 3usl[PQOkx-o l! d᡼'XVĺ?F,D֌$r#[}bPRq"V|u'%M9^?j9dc1\j 5 5ػDTy*+C6INN~:Q¹=ZFU+?\ğ2I' ܮ bq:faP`.Xld<6CI#)8ǚt@i-(?N(}(}m|gLw6e$vYgӖE 0KۭRQB-8W `jlO ubd.3< nR_qg &/jd*a)MI< %;9G 4ɰBziSh03t-2]KPx sѿP0p[:b2'p~O .]p7`s-SRm >|v89veNW6LAmH#ApyV{KkXGS f}PF24#d<:>ەM,Ky2Y;"I/W@ݽ ڭ.Z1An-]]%N:;H6<9ㅅ ]ZgKu|!̊:ߓDchJ~_ r'{EP/J|qc|(y̤ä#IQ 4|UH܍Ze(#iR3ka}feJW0ҾH׸E|i'}{{Cމd %?洢}%vOrѾ}J0Qn "$hfd@;L^?)a>Җ\m'$rI&{P{ ="7OԴ1k$"m^Tz]|^ VeyA'?&GI$2*8 e Z3JİZV'B,fͻ:AL.qeW2JћB 6NWϭ4=9 "Y_5GҌe+6K'pľ:W7;Z_-nΑI?j=PyX?:iEf{!oڸoɧxƝ"f+5>h94$D,Y9kmJާ,rY(/CeTv(ǐ`C1ZCPwO*kwdP@#:Z>߮.C#~.ȟG7~(^|MY-|pD)qҐTKN|v2QHr`9B3B"}ykA]|>PG%#50q'-\:yYm7MPөTRq!a9WS.k ĮJF_kfyeh gTShrr(W*\9̄ǴE:LUN[y!7#(wA:{g+u6ʿйe kUp9Lu:p]"U&pG[|w>TyY̿ki)}`ʋ!pCqwiiKAXnE &X4MU'WTzZS=+lpF$.JMu!'RܡV@TX: (Y;o_ɚ>1<̷UuC|Ѥ dwS5͚u@vj8j*m*bx?bQ/ƚl. k,` 8GwmoYL_qfu%ęS Aܢnr^w Q#C}>P-8{buVEӇ MUA~O;lsD=q<;(a$A"ov(p@8K4;BI:)JYohϕ%*|~pD4<X:M-|GNӈSPt"3q 0+QR/&쿼KdkOl73&_kR9w&:rԭwv?`x1Νl27ʮgIaW@"l)T'zʤfnMx-P>bYHxV>TeK$vR9l+?Ay_R?Asj4W< /:{Ii1*ZECW @>-M|Yٝh9֜d\_ %-Yq:J >Ʋ+MoZbN(}NT!}ةSdYUg4L:ɑ bddeA᱒u+:  y]Á.k B WN3N3u`UFZ7>WOYFzbܫv‚`#g(; ~Ŷ~@m?{[mUcJ: \TI5;PJj3?.O8CiuauΛ;Q`PŞ8'-zC4ST  zF%,!#ӟ ɟG΢ir6}]M!1 679}}"_ogfR $3 u4p:sxOaOqNyzI+;B tC (Vd J]ƪt͜n61l&X/V݇.Jߎ.j4쓔`V@,gQ&Eb ID-ރEeDebǼWZ@}{|Pkǰ/hv{SZKp{Y!;i`"mk1Me-5$}0!tFę]BUV~HS;T*Nx-l`g'0TǸwaPTtq낎DQ?`sl`YE{bʟ7@LWzU:"fƛx juh .H`>! r_}q:V-KUx1h*O$M뛋mYq8i,'1h(_EC Z6#1(q~4F.[wc:g,"n@NzK3ZX5}qAL=آO -&1|om{@F3 b#N¡FȮ~VN@4MaGv`ZQV'_Eh*DxVHlH^P$NyK UE.x\k4r(oĭCa&?5*SգIYe?M^e; trכyS\'L%;p-,^% ݩeV(wz0>_XtI}sϦYI)jQ8,_?úF4g xgv`L-,gӪƧHoU-Q.u,*[X*X ޯp!LKw/f="bnkR> h8T0>@bKs3fv٨ˀWU_wT#+ ~e"z%mN:e߷ͅ0, mLQ-7{;,+TȚs//2F̃^2v|f> Z "o*P'=W8~BhY;qD.W~+KQ,boXӪӝu;tAd+9ʸXgT㰶¢l &*&|%o!-{O1UaZ`19opcU}a2\">h.gvzMHu`70s:IV ;4{6& cWˣjE97sǺtW`I"L8X*%JTzjVɣ)ix]pp>,9ϧ78 VG,j$oK Ο;aME8uzFǮ@hle5z +lD* D`$^c*%7Fެ#*` dɧLf*˘4#sQ?hXģϥPpe7E `wWA3=LҐ&:9)ʣ em|RTe_H5To"]S>j-]fDhuu MT1͌|Kθ&f@z sM%sdʀ}̢kt#P<]`U *j;ġbrPxlt1O4}W|CĭX8W@}!LSi*y]-q~?ąZUH?)6=2Yu༴5"T1j9'u67_fӪADmmw%8y(HJaBG(TmfJ+;:kdtZU 1z L/2bF/)8aYˡE+X:su8]Om(GgFV˓ >{ю wfxk7xL4r\ryW:^1>!O~Y.v4Q D).+ zJe.21a!gCU& ^}Qw0>}@leG7x~gI~li<7-4nՒyɨMt?.utwʑ{2/;~ѫC0^_7_T׃#lf!,kH,ӟIV! @FsĮ3t47𵓵3fU68#V\$Zn|C )(a3Yq6T`ofmy+ k1HkҎ ʋT>M3y BXeDpZZ C72x z֒(`qO]-cnvF6]G" WBoE F!6&kEz?>kwUq$@(Zd1a_ProW.džybPBaBQFM 0jP 2ȶ5Io_lif^=EG^fw ?DJEa9r) hyp Vl#>hV0MjCBqnB h?Fj/ȽMLlF'E[UaN%cn5hj^grp92sQa*@}( ?\'0iA7t>σcp*F {IIP{X5]T|KrF)+6<7")LVu'2I v.|+&{ b%@tKQl_~kjG}/$G}OSOsUs!4=,sxpG' pxM AK%*߿|%6>"\ [K&T#29z"ǂTUObCEF "Ce P [ ׸ <KkJ-D,$ ?CzR {O~}AeQ1^;u6\o3A=ɼRs!y_i{ٽ RX$:>P1D.1+=Q|4fWUoV#؄iE}Nbo_ lJP;.=`ᜫ(߾zmfz3eKʭ:T: : 0 -@pMyܹJ&yz&6C(79nj\^'}sIu2pk# MvDl%,""pIxxQ$0P! .KwL|b}Ga-F_y>* u8BPZtiVn!X1\6rNT>INiO|􃋬A,on8_sˆntB=$RU-r?=2^84w}kn=gJ;ܢh?g6a~T?&>ɺ!`Tz/"L-' XXs A %`X~EXY;6X4|kIUS2 AZsGrݔ_\ =(YzhڼN&uvf}[GPٱ*_t-:dIMwbaH\x{9lmݦBҺ*<366UqB2^/Yw!̴bF9n tY޸ׁ?dx%g tyEn9_$Xٝ:TB% {o}`cL}L##"+zQmukϑ~֡ sU+I Pp٫xv7,^A,N(7$,ZM[Zup?+F/ .N.NYHS4@*Z_4{=ZLE{5٣@GCuZzV,S;PAos.'YGfgL7Z;l !|/eo-ʬe߶cv[4:&sOnAlQh\J WEQ2-hѶui{X/u%L,.oga܄[H_xTd e(L-#o o^4W5irZ5I;TGn"oFN7!慜!dڔbߴx~fJvOݯ]qhx;>V.wb/Kqt$byyňe5n+3x ˏV#M0+ɱԑG7CD)c&,T W)w!N4bvc*M@Ъ=ҡsL4S)GƶL^Ө'<_)=k0hMuL'%Hu&PI5_rT&fC@' bPӶ$eW!`V` 7%c9bM9jF'7gtm-,K*͂:-7<::+/{F{wE|`o|S齿%x)o(2hpc۸9e7ܾN{36cBXR p. pcfv PxYT'!9vLs~m\V rF^Y*as5u\boocߋ4x\S 7iQ5m~Z3|}1n;P ?b@v0RYcaF)A^b+Ówb7u{Viv7xQn>p۔hYud WVP̿^qoU-D]A9>Fj0@F)xFHa`7z\:p[ƿD;ڮb:vF>$si< y9Nֵ GxI 7<5ǪbIE4umXl%XĝL[XArkxG-$)VJ|ѝ̼/G\Is\\VL7T>"jx`cQF`1qvuxW j;5lKB0^`.EM'"0thOn4Fg@yD f7`cRo|`(\^LyP=Gkg A3os?m{z32Vry;ƈN`3:=҆~B/)_/u ΆA֬u$@vdwEE/fvɧphϬ?5Kc i}YABV"LK[=dz3^Ȁ\ei3{˭02iP38(9ƁEo> L t ϐp'Tk~2w8Lk!i~!z v >C8fF p|US?Q?uw!u1*pRC/4>jVLeoTG~dMes ˛()T R_E J'ldiƒΜ+OS%H|u!HF).AV0E96N1R_kbeDt@QU/|wf4 -`XSlmuĞn&R>mOvF0)[;YQb$1L@qş'i=:ňQ:zoiKQӗHD/"%``2Ȫ`3ry4t=E P7L7Zt=r lӃ& LP.eҷ@&տ5A}k7fՌw%բ1kH#|@!zPL~#yߘǜr@) E"S&mSV#fy݄ HU⤹@ nIl/7G ^f !&Ձȥn 9rݱ !"!JtMos S|@m^@l~ 8-Ć)Vk>b 2lZE2i D^?CTQ L&ӽE}d/b>Ο!!$1}Ik5 A,L6~[6k0ȝM(T\~GNJ0f);q`k򼊘p1dl:0>?O=y?4eâ[s|ٓ-Kw QS@&LG:>4?P(KR)[~(~8ffrE(\ G.5¥qZdAUdC(';VH.K= jE`(NkEs#͵'0dE5gbsz:mTs'` o=ˆo,#Ʋl9|S- !itL!3_ePhuC+X: ɾӡ}@7 `;GgRK|5! 9Jŭ@ P0LؾLU c+W aVXL0/A$x ~H{VC%-M` \D- T[ [7оKz7A8Ju $rcGRʰdo@BH s#+S@s/BMpVDPs)w|I RLTŇš 'Ƣ21KKZmu& B:O4E|Q\?_b6MQDUv5ߒ%cr7˒.f쾹cu1ϗĒ}](R Cׇ=j#g\qy[pݶX1p-vU}(Lwj3'kl"9g\Y!y'h൤QSobֹ!yw xErTC#o31OO4œ_9o}[YɹDrb +L0  ,uNؑڄP'+85T%L- l59,rl=q7Ӂi^+#x旈;vI?4 k*w 02 Jg 7Z lkJxs}tL ǩ,CrwF?e6w*-q#DDnf>u!mPXy%(Ϊ52F9Uf8rnEzEQ]MxNy͞NY/R4c)ИԇT*XfSZo* R_~}I v㈙}ҟC嵷zhrjz3Cd̫EPܖȚw2%+(-҇) aRv E؜PIi0JK$gΡwc$9@3<|\WOY!1Nn O'wˉca}h/Tq ©ԁ_Չ?Ir:xQ?C'@8$#H-ƤN_$x&]Eu875aAKb j3"{SxE\2]Auj`͏(5K4MƱ%ztT}M Fe1|,xyN`}&Z/IY9w/ %ICGQZzHK(n-.punm". UݛQZ k yC{32_ͩոJ?TYU ˉHjW\~4ŵÉIѻ{44ȨOØȭbYv&lHZI! r ];M$/T{g;"a?B#F1?F֞)qwζhŷI{gؔ-uSCB5b{UV'5hf#гk;MjK7%{0]9hrZ5K4"BMIdz&C;ڑn_DգN 8#ģZӤ}QJYAVƁtMnF$LBBc r\lL}XuD/#e#Y}=.C.ſFìl#懲png"O3l>x!!E-lewOtb|pd+ gk֚CqQqCAKJ?\Y:`!KLLY[AIClCJgSq<"юɚ#LBe4u,dI;v@!QrcܵsNAL>C5e&Ì.lZ΍_Hڵ̈5S.ZKi0?u&q*/R|GBtB 91[c ֲep=g1ߙMj'Քh rjt_]զLb=xkg:M+gpQ}ҿO(ŖDMT_b7  >G=2J-ue;RH{_@_Z4@~(C-JEe&N%Z.-dԙLM.NRw%:,YNZ(]sBľ fSi1+pRiZ-hkH%9q wl0W;j̊zУiSMs5ZJ' (t=ݐX61XѬS9ӰlۓBG $NAwӣUAn}1w2lZǟN.`mend ֯u&;d1LQM昕1faB~G[dЮL?J*.ˣa~9jm ;e" K2_Ϣ̗yՔEHnUp畸>z B!`#'#vw{P 1W{|X/&N,;R-ts{,duNԄ$3STA_a+!\* ^vQkF>7#>KPa펿<ĭ5*TBBR@WJ~E 2$_8m/z bb%īo΋Btѩa}t~"3nT9 o xf4%_#[&Z,^>5Ԭ_#b^Oͳ?Q  *z7o4Bmg@8gŕ$%+g~Ms[]Ŀ%n6^pi[ \&J^m Ӊ(#!HMݳ)M,W*lw%,j=vQƇӳ-f1^gM1ݿ*# xgDH}kv(یy9e -N8 RiubQ )2{NeP4M)}m4%o{^i [rZ=Uơ/]g$sФCjus"\Xft>n+H;]M]GZxhp>oHkyd_r?2+ix,̐Lrdz*AHO\W;`5bpD\~|RZşd'ib|4%]1DZzKNv{{̒1|ϙ@uL}'͓5BEgd9vx8ijٝHܪ_]`dnZ ?Sg ){m$A哊J GES眄!+Ngu Q\~ʺf4^Z͝}yjW\@j `ZU \$_J /)3nbJZ'tjTwOos S8 W zM6LDJ>w$)CU䫋0 tvnʌ<=5Ydc4PǷ}E>D /êtgܥTpLc=TNV5 bVqPHZ,&އ-!L[dcXyozdU[=Rf8sxe˄K [MeM1_h$JA&leuZ,oO} evd>/ezq렘l\HNnu8x#|YrUC(Anͱa}nð@:I7_モeA8UT,t=8M㈻4G.(wd>2#; |5jͫ6`}/M2 iy{|Ģq҂%r*1 3e7fU_3 f?5Nx)%T_gNea_>XF;E? 1A9C(ᗆQpг  ԂOAoVw2VfR9_Hf~m94 TWr?~Yg`orzC ?넻4ӜߟKUY"UL@YþK I_m^{u6c E|`)=1z9@ne45 U!mMRbJ Vx3l" /:M$[3DU5(lscRυQcXvP@$lpp.i<+'h쪜G&`e7G bS>So~D#qnisY஁ AX\Bؕ3E`T|$zTS8-?8aPv3{#.Ly;y3Zh3j#>8rPҳ+4F nn^f&vV[BQ7>:nRxʉH<NʐSL=xnhtNn&;.1r $Nl<\U^_.ZO:2lY1a,Sޢ+ ᆚBW.8Mg@:vp%G΂zmQщL+_Y]{y*0Ҡm`ZF@c>^]_ ?b3hhϊ&ƁE UcjѪbSZY矢(o W*Wa3U$x%xf!GfrSߌZG$˄5!AɅpDXM@|Ɉ`e}NWIvMy+֞^s߿A$xq>!xlXd2{,Za&͔jb (9$`VoBzgfo=HğdV.*0l) HdKHwDgJJm܃!LE?VϗN[f4fQ.r(ӵ q8͑d^?;EwU%ųbMprՀZOerUoJolϯ=gyA-UGhd:>ZK!^0\1V 4TGsJI7ѱ\p#Sf Bzar5Z5_BA9hGX<dsuhhcc*bVxP^D~̮d}ed`F>GŲʧN,ŠL^}ʍPVE8\R4y=с*ʔgb%B9b-ȗ<3? dyKwו_ =i$k(|IBYΰj`K*P A8QWw!?;3^yVf.r͔uTI )olXFD"#6%n 8T [y1FHˏxڱ"n;fW+¶e1kق r&YO/4.ʼn/CBg~s)ć6ĹԿFͯ ӪMe֓mR%rB|IW&/Ri+ Rm c4kbKPg!SQCTQ`#3o,uQBDaʦXؠ<£j3GL:AR(Wн_Q$ ob3Q.ovH?ƥӚs/]Ij,5V.xԛ/{4Ry1&*\c oZE೦>q6KuZ *s;uό{,g= I^Dč[#u3iM- hv}P"U_h^=5]2#nLF wI0zopj#mꖲ?;5pj: _4"C9DJ`Go9j VQ/AZS9FZ;d=ލű$jNis!lh(l3& f hw eS=So[u>$LdʀԵa,G@QAT2H18!r$z*N\N@["ccCDB@jSf$ #xEc^`w^bbv^K:ӱ(5gm݆ Oa; f 9i 4V.C'8J:L܄EWQcH![n*3;k]["Xg~ Wevꃣjj}Q桠k](8?TcI{.1GG.d* >xy/0k:K No7(Sdy1p)&*^GM5>Żܬ5D9ߵRC%vyE>U zin:rq' I@zɔczCCK7ABn_[JӜ0m?[G k}EǼz%Ek'|uzvŋGo|~ =w  tN8ĶNИdB#b@ ;X]"fH*Tiq>_':/Mr"jZяC>*Xme[bc\vn=o/jt;.Rvm|£b t{=g:7MKiE7&f+H$.ѫ;TE}/2߱8_bƬv9e"s>g/$LlXܒvNbHծ2sePl}U _^n9܍:]@GۋWGg,]wtHJ9Ii2JexWW0ͫ&*bcgtژQga9z3+55\){*aM(L"џ9QN͆KVբ6yNf 0^MN[l!)N3ӻ-rUBJB+eR "oxC,j\M8sz$NaؐKBQBUPuIȻun:y5 6DFfv RB_5E;~E>@&S ;g-J^'~dS26uKWi쟯 M:D0`"7y *`IGuZoKnɘdwk7 ]+N{CP« ٰflL1 +͵m8%MJ K+Sk& W zނ..s`igZ!e5tZ( .LU"aP*>0\ j6ejno4|Wa /hu*V%C~n^$ѹ }S҆֩Q'O?', =u'T37P)MdA;"=Z9?DBJ+C%H30&=lh~e{oBc !'j{~ ;}lЏXKaoH]T;I&DbzH ]A 6D`(B]YU3R;4`ȫШ-;nӸǶr2*!unrQ%FĸA ~{E!w8q*/t:MX.sQ)kjz/̣(wvQ#mc|F0SƖF'Zx(p\I˭UXTx|o^50&=n]|oq|4вR/`3fle66ݎcv.blPCP/+B3MSGxtd RE7K 4в~uǺ.r^G`{"BuРI JpR^U7ߧ#P,vi K Բw6@ ptBwp70a\i{GxL])`j޾4uꪽc&yDP=3 .hY*e7з~}jB7߷f~ oެ#jj sq5?(:M ]+^ kS6k0rlCm\!!3G(8'&# 2XZtcD..cRBg7lqkZ"ea%* Rr880`ìL'_dWrwx@ ] x6#Hs9 i퐱Fe`7oB:xrj/'pٳɊ LjPn!̵=ﯔ=:嚼:<*) BҊ mN)Fk[M\"?$6g7m T$N{cY BK@Һ泳h*UcTr_دeày ,{j.[UcJPRUe!{S (͗^ FRMxQOXZ6D 0 `k +JJ?|u_hi~CiS ̣CnSᲸ3ۘqD~6WIg3>T'lh5/Wn!u&ߘ}Sœ%ǓJ'Lۉc$&N$d.;wVQ`XZ3 +f%;|> `j챬_T=0D0hKVba¿Ƌ)J-{5a,AҾ!0A'}N{Hb;kUV?" x#u`R{O*%aI{-|DQ AkZMk -#zuQGt[}Oea/((kS_Q;C{΋"qXB-\au;nv%nFóDž8Bc%^?.t gZ"ٲE‹%-v?1P~hM&|ЃLęy{$K,2sRB-&5$։;-9uȤhn3y٥x!ҕ P|9vSu ֵK؆mOz|X+Z|'bq=yc6iTOam= f,/v)c`:Ge"/˷ ksv?08%O5j53NOL0zw:RZb!U. 6@Cմ27o*[1 D{>oKi5@z8cKKW-V,HۥNLU3r!3w-ݑX}0.rC ͣ2YA y)u ьӂ ߍ 0-y3xDpcs(2˩>ݧ?}6,k,&ر5f.HRGLi<*s 063;Oϲ[WWKRGW3d:/ Ew) BR:ߤ|lE;)|99;bKu`rB:?_E~c-I7QTBdM6!ĭn^ޠD脯o ;@ϐ;}\ѨvTݙt*)d___(vq֨in[M+?5ސ>Uק@V7wyrڅM+cǷuzlxryZ-_%6Ui=bq\! xzrRFخ1댬[s}.q?"t3e̓Պ`ŭ&K81$W(`뙹lMdRW"'V#6X 7YsJ#.:IX7SAQʌW'/th!`|fT/ z٧@YKJ4cuzjS%^p.Xh1i;^`I]< >s)('#$WBhڈI>Tl>R,C`C Yi-~ 6b iqR$,)oқMJ1\nC{XpeoKSJN_ oqǰFQߎIP~iʰ~eX͠O\tGme#mKx!:B~tRl w ^r5kC 9[5%35 7%A-s8*J\i;8`"b9k4Q wY-?ƋatAɌ"P}S[ p?3@` PIR>4DӪM˫:m(m]rH̾́;V1[>AqKَԨj ɰAz{XΊDΚKm2,q"yVSA* hξP)`U(X݃f3WX;x^QQ ץ zм؍Z4YSw2w),ɉb? d.l*:+_3'qm@ 2쐧 Sn(vtweZ*2$@>h\b#uhp4R T T8Ljx|@ b^%zѿxkIj.y<Ƴ{PyƬvJ:#o%X:lg|40y@EFdw|l~~ I@xv.t)ф,̈́hxI|З[lFJ3ZX 6$H,:uS늶Q$Oh͎i {A'MXE砷l[ˑDvGZ֓oUmC̼nr}ÿR~7woX_ BAЎ2YRqm{_ |oV6/H𖪍tPwLR`)ҿڗNVcFFWm #R'L{@lCGb_W Z~X,&lD]IJl2:s0Q-#y"Y\粎.ʬR^cZS kbU4[)ĤW^ʄhV\[gc)WESk}*6hb*V6)RG}_\;uBTneJJ#ķp:Pc0 ׷vfƆg^h˂)E25 j.2ziC430UڏIYh{{®>,>J֘"+uψ𣦚9?{S-rQ7.nB5K'x<ĴI81fi_/Sì[6{oܓ`hwQf"mlƚ[T) (Z`]܅`nPDDw(X1i$dX!LSƦjNmbAВb*@ԭV1P$ .{+vbpBr]!9~ ?جfex5O.hY'%2w 7n$p/~pBH}+\t]~o>~q, |!"L.dE9~)Y$j\Kt ;c V):;d4$}SYKHl-ohٝ ~mb𦭸^)5Q3su4tTr"WC\3;[=wi%)o:‚e/mQJO"-[/o凩x=xQ6rBP;_j. nE@qY+`rRxkGɽ!UTP˭@wM`bռd+[* _Y<XeAC]L02n@’58C]Ҳ(o϶/ɟn _UnLN<4>ۀWEvY8(nmKzTSmD.2cʞT@#=`]j]=DTlX4 @)`xLG)*/#.oLO+ V ;T-mlWVY4 ps[5I^wpP խ&ʵG6rr;[ѝyNgZ'?ބ %cNNaڂ-mӥ^ALR X)TjluaLJ~yr\bZbOYׁٳ;T?h7I]NuJ9v8T }0hӃtaATT q}t=&bn5RW[)EEA$ʅZ_(YxwY[-6=JSEwV^} TjͫȞ2KvSsN^D@3Μ)t:Л(A +␖ԪBp)- YT8o*mtçtqiygd UYpw6%,e3\s $n͊O/śG*?AIAY?!>OaX{i@^(a yEcVVN׳\< f;+qf4d:Ew-OTh0 ? Y;חX>'~vѿ*l1+d[Hf} rEu~E- ݷ`SUh;j7Oj)7)=Ѷ_iA)Jٗè̄ t0K l?Б>>j\l|2!^Vz.nmKNkm(Pn[7@ 4ܥ) 3M %-97!rZNzNpf0dd t2~"ZE>}PS%bwjzU#Hr471:V .^Q*c<Ǫ*UW85*S7 CtJZHM6}BY?ʈ.Dٹ? 7Oof1Z+c*1)ڡx˜-Hy")Y"(*1`ǣQ)1#?~@nnK J,ݲ9:XQ1WqaJ;>&b){z]}K= 5]C!As'9܁n1Lȁ=ޠq JͅcmOGmVHfш'2W7?0z (9IX\o2R~0J(IJ eZX֗(?T} '& taQ5PxfP??= AզR jטd4]҅Yx/qTjBOARNэE BF+Isf&06cJHBV4tAkfz0TEUݼ^0C58_@!:6dy tkI@̠jGJIı3UqI!^mG8 6" M =Qw:Akʡ1ևn^U{d&z{_pl^@.iebG`.lZXM_$t \~y8PUf:iᚂ5yYV@cuyx%\{@d؍,fBG%sm 6(9I[Umbo2) Ln~I|A*{>w[ppR6 C [(UHU[ڽ0qo#\}RQQZ{q?^:# "==%,Cc|/H6exs#>R7!ƧNäͤY9պ k(a} VxH,lN7(Wk9ŏ)ۂFνӱ4%7u?Duq;'>ξYy _r .ϚV!6Y_Y_ Afw&waSAQ5QgGnAV|9hvT q2 =@O],Ĩ(StX|R kUq%DFi&Vp~oH٠E~R vaVݖ2T _u){gb:IŜ,y[xA{ R;f tNw=P@܎l yd=йZ)ߕ/EU$Y᜽R_F¯H MvNaT غs%~+XH{X)$h-dXsNeW:~9?V;:97V7$;G*$.H܅ !}'[(8fù3YvNKVa(f/V#_aTs43 FrN>r«vA!Nwyr"+{儛`&q^tJӤ@YQS%Rm3@)ݵF|yOO23(_(.W-eӡ/)PÈLbMG%M*cF&Y?JPRm$ fEHm,u.M8%U4$:#bKf~AķVfX t_\-Ks-QdxFWnQba՗i?Uh6N䕒r21tnC53_%(I%h;{ $ٓjygf7 bT?e|YiH%㼒;$|\fHvZ>~GJNX.J#a[}[fnc9¿Fk-$nM[2OȽWK5k43?6ɥ1!lZ*dIjΠ![+Q}+$uwHߋtf&ߑn`\ւ_׷׷ VWZXǙ]#⹆ނVC 3B#SԞx>jo01ihN~xp>Uu9#(CjЗA@Txgj# ז B™I6 ^+C߳$mKw3qhZުw?}LA-.wGՉh8ЭUSPAA:yYne܍!D`knxie{O"ڰ}Y̷_S-Um &@'ߏVJJC[g洩ف `TEASF]~aaBEjf>%}_P^U8sӿ}ŷhpnB\fRxxRb%3KWAw/kJAՕl Ѳ _qxmȆ zi}PbW-;ZURm. 7dTVc9d^7\Tĉ#jބ >l9se*2ƃ'DTk!ko0/Xf✧QT =yqb)T~5A6w~#fZtBAųE'F2'@0mx/ L'gXuU]D步tZ$U'Wr8̇9IUzӡ닟@ʳσKJ.w%M+y*\[mE3I|i`tk}s=(PصJKTbjI΀#L\["Z{3M$bjw_I\pAc.2)4^kiGZ׈y%"<` ;J_ՊL&YaBsc_u~ݎ@D)Lx}\;{2t]JIhtePt BpgkoH0ʩbɊ %=5VYS[~{KJݿ1kV(˕a*^m38=CR2qzkGvFIjb"U~ܦ8`9Fۧǟ9Z1;s}IJߩ_OkH4Tl2VZWTf ř(QƠJ0tOB=k$˛8]`go61P F#@I&2K qpvTqi1 #|Xfpc؎~~l!@-M|]|g^ M r8ՖVx|.cя 20l|o iJ*`HLf ư";`uY @=lMf5X$MVWk,N}UOFEvw5BP|&׏RQJYO$hsv6(06SC9a~O2ұ",$ LlbvQoTӘ! !2azeGCm%{"~k~u\8{"$a +(oKw3u(%F&oeYS aewը:!зG>{ѽZJsFHm:x$/}/HŮս/ 4޹%cyR,WQm6(IkD}WM4]4W-G0c\LokLj饤$Ԍ3nƜf/$1+ZGE /!:ۉI;߰pQe/ݡ <,Xó 6XҼ>Z bdEf~eb]LcpL 6hFJϮ?TJ.lxE蒭cmdz°r[?60 \/.P߮&,U}/wpd  F{w!cz=etTt:dd l#zwJR>xj*8AV[޺vVwbV&*|>auJ둑 lO߈ߜ_ F2z2@grW3B]˓K&r܌ڮMMNoOMA/R}J(@Y2mLg`e3E=?CXƄ2D}9OUCʃ5VT{(&N[hc ϻ;3fK2C&ֵL7V g0sRQ;eJWcx?1=~0[r=@DʵnZ!6Dq𧸔[ީOx֤ Zhkc |RTQ 0ynH@vroXa֮ya_&w^zPB_/x"_R]`bIt7"pmUyl K iFc.X_N ePK0-sUʩwMq'I<6;vbqOq㎎>/`'l-2SadY41e'{D9>m Cw +7h?(+]^߱Lf۠sLJ¥xΥRקÝWQffT9{F.߼7r-F٨Lz+xL+z9g+acǖ~t}-!$nEv>2f2nel7 RfT6Cz?ء!:xose'VvnOȝ;/_=^W+!7ȹ p̭#icblCҍIq)# k_Bh+옽@Zs~ۈ_X,O9_ȣyhNz,ut _#51%.b"<@Z.ӊӤCҔA5'"]FF.?Jri|PCE++[ӸDqus NOG(dl+yØy-R@$6YWpUj _[rZݺ?u*^FglǤgue_xn&r L;0wPVo mϽᴣ\ _tۇ鋬] h*FDB6O=x&y.Gk 0HWO@BNblm@jJ-v:5]#Cf.raNȉC> >Bb]Rwr{ pElhsi :Zmr"ceyk^-FiK lਇ s_r{ XZ&lZN_2LQ[l9܎gM[8}:v# tfgbɭ μzǙ'H;M3651Y}1eZ.%qfjܦ{C2~ "I? K$E.ƥ~@uOgF,:~I ォzu ё+WMU y续YɖkhKf}2l8"3:) ,!Vy?dpӕύ*-CLgqE6/½g8ԫ p'֘ƶXX<[g0&>F{lH)+4pr6bq1x){(u^ND M(;?9c4g:f!|~ 7}# uhsXpIe0aD1_)7 D#+e=ݜcj ;c6BG!%e4A!7H>NQJ،zo a7X$64qI}A1R,9>k2v#|CuU2fARz_=EYǖб %F׆f֣4YpD=Sww Ƥ_*[5To Ѻ%r1F鰀N"ܗbx&@juц EE g cGNvBRns!%mGuؾbco؇|cpP~¿7ʝ]%N=ciЯ\KkbRr=zMsܗHVWՉ-bטωB#̇͹6(uO[ޢ(d%guޓG?Ww]M,_M?,͔s 5Z^g߭MPKY2S`}UD5sf:]N džUc, E[L|xVVv餱ڨ){dqUR!*G+-_96I )w`3a%X:gZ޴_ `ʹZ7rK013޽cEvL0#ɮa@\)!_5lSZgjRxIi{ؙFǦjKZ8 h{0WBRTwӤa~/3-0\ t/LغYTsQOR'xG)ڂc;!n\#`E a a+k6n>=%N's[J]pI0TCY~ fdL E.!Tˆ- OD%Q i$8S7z/ʒo @o&~C>&GNJw5c@Pŋ<ڕcϟ h<9''z7BzV=rwKlc;}=.Q]m``ZPjOemԯQ%~ bA QR@'2BF d]|!t2(;2 MԋGx}1=ғCCt8?Z'Lr7T^+!XL:#@W𑑗#jJ6#FkYfd>+-kV'WT xv" ym,3.,Y1L#=Ͳүrl;(.-LT ^asiriITj0k!ul'fc[G| flQOj?jH/Z1fsfe)>9Rz|9M鄮c+4W86 | Q)gRG [e7أ9>Ps8y0I&umn+õrVc}]Akk2~V lr`k^hQI^獴lL[$&x+^qU;[a "FNmd ,UM ̑$APwbay*N%=@%& ϗr"PfN<@v9\K񒖠T V&ӇU)A#m=%/Jx/֘` Re胊zFIB/ P6=oXdݙȿ<٫`NfGju MnOg hO瘽D8WC &;ƍDhT"3ݢUjȚ@34 9L*)ݨ,Y*_=^%`xUԅA(IԸD eVh7!f>]>Oq]Dμ/"2ԏʬSPNDMK**¶,ZApI}d xF0N_̧6J3N;ЬIw[.tJ/M%8Y2]PnRi8UB1l>Ռo],hwq5F '5F4nT Ě9+]z1Y |ycU(u/t:#O骐OO_?hZ!$_bjɵFS7QUi⠩0n&a#!W{DT4VGMqI(j1NØ5}9X7t\\磢1r$MnRbwQVΆ  @>D; =r:ӷ Ԓݼ[ X8Hhn43*y_;.+3p)|Wc-e#H8.3!XPxo|lw:tS)iF28ԕn$W?M{ɳ %m5bm{xphHcTf(e3{bn!V!`xVqEO"oYW@?=GŞnd'9_] N 3JԊq䆺0l0*lo@47*kkN/6ù N$] ڃl"D6P iZ^( +*.Iy貤AݺX+;ʮ806tb G ci=W. T2 %߭^ CUc8c]<#u oM'!ƭFܙsWk4:P^qAj{GȈ6dȤ񓤳RiPHϮϧiEJ4F*V]R~PB}@7'grGug~GF"R?X'b Wq[ݓsUi)h% $H.S [K\m' '|ƯCNAO+ͥ!uIW/W J@HM]p_Y~"xb&Xǰ_Fs`p8b#VC+Ū ۈX1<>ȇۅF>ԅsQ⫸ ܪwf̽2M)Y3j|zN[t_ssXb1]IJ"'{5`A_W m =/|Җw\WCk($^}+nF2@[|X88.L] D_^nx_D[{߶re8rBH7YZiO`R |'{:E$(u1*nqyBױ;%7gَ6<٣0zZ S"6XփVI`Vc ;َ~)qeq%)ow󴾾8tsNDa̔M`vʉRyu'}nUyBO-r5k(+b6 !&zQiPJ[^h U-HݏAtm8aȞI}=^i܅~6!quNXag&A2/wEܼ3M]Ʀ䣼jNl:I i*u4}:ԑﴺBb<8T9: 㖀Q+CWFN9e>0J5fv  JlI}Be'<$*ݎh $7VJ砧^K231\)w Kt^?DsdS{l$Z&^&{%߰~{1ꌴB-2C:뤾3VD,m8y%W{BD^/Tcbttb=Kxt泏g_p|=C|СW"v |#00ԴY5*:Q0?#{zWWԴ3 Ρa1i\㎣0ҩdۤ|1|OxNԭ͈3#Pbh'S\_]cOB_³2Tp 0Ҧ׏*)oБX2Rz|5AOtƣS:W r^hBxو ?=)4>[' E4x7WdTPArpv8EYx:h,;B:.|yi1Zː?ON@+K-Z*iTե}ABw Vv7; %02(ae/vW,-HfssE=FB]73$N)m&֊͙)XTARVy+5AćۣaHǜi =?URz oAe|8,4 y&4˵[;'NN=2.(`}R~}͠7 !g>g‡$S#1u8İk ͂PVc)Z 7+l7Е̢s0jC- p.YQ$^ y{E&@맲y}"Ƹ߭mN^M{N%ܯoqO\&;"y=)|=L{x˱FpF>8A-7h Q|we˕87z|:RcHrLah#4rf6L5x^4ۚ3421Yud].i|{tvGk ęM:фnJlMskKaGx#_=e=#} =Jԗk/IZrJG'P|- kۅu1 O.'[@I e:ȵl _%ȲScL)k 3$&`SE2ځE3Hy \ji- -^Z˰ :6Rw8$QvyҿYL>s]yD.D.K 0G4P0#8üJ1XSnmv.Zιy>9( )";dg/ % Xn?_i# xUe+H)OQ% !Kڢ2 _igQ r2U Ni?<-XQbL|Y4^tT] = teu͝d*KԁH iٱ} 1J#DBPGG-{1@̆biP!TuHV}un_<θXUmlNѿ[1Ի߈tNά/Z.5֌ Z͉a05 @ K9I*$k!+'K̵Lt XTFľy*k"W( ,: V[6L?%?]CW˱X-6XRbt}vbU0*Nh'W;t dGf~V2Qic/ =GW 6bPZX5at(`9lx d`.{uiX;G1:)R%&%ϪN[${d<@,f,$\q[Kt4O :)*0>k7XximFy}- d政\. ܿބC5Uhc{e϶DM u$:=bUh,wV]R벛y`x*j7jX<͖mXYܴCH֕9Ws P -RJ!ѳx >yI.@oM" w@m ul"m H Ajvo2)D\s/AKp=M*](ij$/(JOX6$ W\%J1(L!A8(`q%/?M88myhݘx|)4bڦ~5vP  )B=|5q{kȋ) fu*#6(֤z%ZzmRY>ٳ ., S A2!/D`c7&O/nVC9~_Q~'淤 _{Q0<90Y_5MDK2 ͂K:*ƳnL:*lVDV&]&guTf/:FHXK9RuJi`l2M6~jHkCS3D1s O4{t\4ƵF~kSo P ITzuI6jj`f{k;ݝ+lBvyス jǘ@c? E*GR^I1FW]l޿! I=]wC=NjEޠH:9P3n *ZU1 !oTɂ0(D*=qIy+ޘVQhV>KG\"j/w BjN'-\5J&4SX5`ˠeu"-PBCRT/"u GX>Z2;m>xBat pC^iJ%'$IW)CQ/9 UAYaK^E0O9qqR4πf+ǂ l| y$>hag+>Bˈ&h?6kD2ρqh\G_oo( 4gH!E="v9uO gt2p=kN+m~IjWChЂ٩my[,un0h揇@ Lx{pe{e)W`itIGRx!ץ?_@@}'trP x?&n94f9Ap-zmo"H2=D'zoN:hrYL5~0?㲧E h8N]Z2tȔUv??g+zd?&\:=g6'mڋI~¡V k"͘NB5&A_3znf UIդ8) T&T-95ߓvx+$\~]B4|)W~#)h6;N -GE XΒh<# Rhe;,?5Y0{؟C9Cyy*vAw"T^y"f~TҖnu a [kmPDBO&&7\=#5V:''WߛTZ%`D `N s"HQlx|п#c_H bh'Y{ŧ ގe:a*>[%r1#q)-)+yyrs3l-x%P-2Ӻa}q@uS 4'(>@_f;t#O isJ^DL [N>\v1J$SaƽW] %+9(HK?JPq4BP62W, 4eS'Ф5/HbA"[: Ty RYn$x㦔 ޻]T1c@3?58b Us5GܻP}@ޙ8pۅacɟ_xAF[ZU"_0P,% N9VUՅJ,3aIs@,|_XpɃ"8o*_81$2:-VI;f=1| D=tRk+#WAyt9v2)1.B+(~Md|ӷ)=f ol@H~uRrJ}qsG 3wOzNud Gɫl-Źlenr_W*^5> cPlO "+ϱIf )fƲgkX<6i [w?|d*,UD*s/9U fiqΧK,8v|@p\Tqyފg!oԀ?8Z\4 -^"[/WXؖ`d-6e*5Iitfp^`R`f$U KWvw?h%S5}#7#M54ٔ+ۣ?xQBtr;DU>}  /ޯBMfZYXLSCM%VQ=sILHla=0qpTթdzӍN-)[5M[sw̄@wWЭK^x[2%/g6hz:Bfɉ"ypyJ=A'J]~Mw/76i0zj/q|f?{ߥFhٵ/KLF+RcE%3%Uɭ7:2*g S'IIP2L(Nl{ӟu9ʗiE8cDHY-LCYD?XX <) ?vgV%(TD(BʹQQ 6~\@8'^@wf$Q@@тh_(Ù^(65M:?ECf;zzl/wB!!%tJޛlVJ$nMH"xqAiVUs%kVM9Y Bsk)$A*'AP4V Z&b,'#Yf$8a$d o S׎S`k>~jKT»tDzlg0GϿLV%kJfl\œگF46KO۔g&7gЯ֯ Xyf)򳍺2S|x 8QyoڥO]9Fol,֎IF$ZV씰&D66CTBӓu@jh&[i(Y4}n.[R€,9w/)o Vj |NUx,B*vu˃8] lWːR76o{ٸeayGV0>wvZi"!q&t.]<9qشh.RypV۲F@@ֳ4}v9iI{f0o8atj1iH({9l%p4h aS}dfC7?xtk ;BAFWr 6hlnv&;.E8s\Fͱ`< ;M.QYjJ`565\ûVaurtTnA}%fMےw<|JyN G.}J]&#>^e*r fvwņM*3io0$jεK1L}Q؁m=Q)KW#Y'a~iƁ=MTq9ҝ(FԼy'D<- 4(Dח>.)9gQYmcT{/8MUz^J=|kCjD ܷ7HL 撛/vBUr_6JbCUQuL(jҡ_/ȳ+rY"N%L*weT9Uwν Ax6^N͸SJ>^yuWK~a6E(BɱxwKJ˱Ӭ {18*QZ=QFN a_Ug];ƃv )텫_g9qdWHTYPgSvy2^&PVy FMOx#Rپ'MDZB/5;m +!G$)&)5Gos~m> ycӦ*Qs1)i^\ #CBY_Rg.##9"ޢdiZ !FeS-{|Jm]cͷM擃zuvb.$D&p WᣳCTΉbu!Xӧ`KL%v7+  C!O(p ᴼ+GGxo}bf E$i:3^̴_x:}X; צ0sVX*&MR§n݌e8id[{'@GM"UZSpap.[?Z[Ő`R{:HtN\7$Ep‘rԶ eUkq$ 14GD $b1<.jrc`W5թp*:B b,Sh=p;ciEݤN,1)C[Xdu;ZR:z|neرEuI{ܪGH( dBW0Q[UUyFT^x2 &fv7 r-pgZ>ՖEtO$pRu0(עm|qz;Nvuu{Ʋzv|;?;.٭ ]dS !82׮@}s-K10ꐶRM##w2~b;:LZ~G c)||r$=G3 4~㱠w Ũ5Ҁ[;}q=C`akU2}קULp(Q[]6\2 0 ~ s;Vlh )F$uթs5yMhKE}FMvL`;Ͼs|4KUP+ ! &Nh̘T[ę' 1=eFdϭG*)d4j)lm3g)= w3w[g+p]e'!.!Y:㢩pMdȀ;u[dA 3Tֽ Ӡ+Āj%qԾa:_QRa5*yZӅi"0BNa zF&=բH( OP'[]L)Y񟒰IaTӰdoHYv<{ VOu Wy$&n}I^RO3'QLڴ7t#GAlCzP|IB=c*YCx Cm?׮3z?0i悿bf=/B Ŗy\# Ϭ,v݋k$^5 u3a}'?4AnvR[G]^cǣ`yۉ~U 6VH 2{𽖀(r7GHvqĜLw1Os[~\ ֬hN8E{#Ik B *oW%\^#Ⱥud'^:6oUE5l'b+ftčNVMӉ5LZj=vcWߏU6y'0_®M P͔8 =-].INqSKG\q&;;J(ˋF2NR6(gb8jj`H ژg}8i<OO be:m/C@^|*NB;ƝbF?0f-$}A~`lգ\5!9SPH~d}ăKb 2} cƓ F\.ʩR|oae[nhɯɈb ܔrqt0#tɚ|L @$NOa$bc7B309 F5sҬ6.UrdI:[]*$ۊ? SR;V#ͼvX5 S$lqѰVGp ԏ&hVד5C)NϠp뚮%hbe|ԍwPrJ{=׶U |j*Jb0쬤\WkRh*4SJD?v*9hwI1>f;!eVb~&;h2n_9D)~ @~$nrYӐ%wG]M>.`~?XJ\yGƮxҼucPh3ˆ6JkmIw/bz!h_Af(XjfB y]QbI6~Xlil3!dEzYF.YUz @眩?K%Uq%l,09S+NO#6!0g9uqR6|69υIgd-yf(5#'R6Kq/P|dž3m7*3aQH`:y+lCRbp|oVg$x ^`ߖSLx]IMi6ӊiRF׺ʹ-y$j~o+{CC;!u6*;[lO.хiByz_L7DӸ%LVS ɳ䢘c%fI?)t<g'g~Z-Pq"ݬwj$?L?lG-A[ &6Roga!\x9=u V} /G*ӑ}8B]{+?P9XWLohݻ/ӗs\VGgU:ZJZo~+"e)aҫDt&O(^h;i{Jl\ûoAz_Z, sU7L 2-\1Dfa-B y憧J_ڛusRBk"[^aj [kXmR|F#"P$#ekrw~]]< %6U9J`h7+`ja׍5z+ؼѢhfվǦ9b*!jc:Qy&Dl(\*k &ZRsR4AD1h?f@Y]^,Jȅ^ޣ>Io^iH؟}l~+8>0 h E$lP;m꭛/Sҗk5PXIw\,!>-|uƻmzժE \Wk>?MA4E'btں| 84E,5H޾s6,\eNI[#Ny t4$E J2__+Yn +mQwM7v#W>T@p4D`) ̿AKhk<9;L Dt3gznǐ'`DVj \)u*5ea *|) &/QIEZ9qL9YElgHPp~gS@ԛɀ3頊̡[WK8;DJŎYw]k^J d]bѷƇjfԴ )C[L2%< q+(9 mO9U1:>艹Z!ӝUdU#MM/GuͮSPu)OO(_eFJk{Jz9J.8PHg#rnClGVop_bfMvt`p&K% 7P~ W.7ЅpAXfkI؇ it]Ћã?K$ާD-x_6a'h$y>PŖH!\nG] 1ɝ͐^t*hdcyVm{v=*_sjާtٗSxPߓ%SVyJ ~c_IbqeW*b/V1$DjPTG Q6Th@}] f~x8Kw3WtL #krW@=>!&XӚ,~Z EJpsJX[:!ٯ#.7c{ˢP`.ǩJjoo0fyų`:KiuY6Z 4N"% `e]o4$ձzP߱-kmK\ ' wy L<3j\W*Ӿ%74J`Aߴ{2 ahs9ZclOD@V+q\0U̒4ׄZѣ. nmk!&yX)UEFð£資tAiÉcI$񝌋dA6[eMlDQ:++p;mN}>ULz)d h arsGGsl( #E z A2 TkdL4ɕ!&jm;@}x؃8'ᒥ!PG cF"nƭHvT;On7`Yzw/n|fZywtt4F?Tw4?O>̙WqQ1:Gӓ%.rWì'}_QM ˌgaYLZS!t5ٟ&4cp>yHZMkI'];&Es8<Ft2 D_f ճXn/QWg<@LL]AY}]ki["ںDs]-ƢoS.A? KQ,ɰrY>޼Y3fj{*p"6f|f>@`'Z)[4ɒ]2n20loɁleWOþ`PpwrTh(w\ZcnFb&;=:{|&'R9qW (ձ:ƌ΁7_JޠiN|Ψh{H&63Wզ%? #,OAɊL DgqbOӖM&?^#nR'Bϗ%Ɍ|L&W <ߑL~t ٰW{=:=3Y[8{1{BqphL`8d~l7Kw |P1+TՎ?A "kb_Io B25?APrT[jU_hdrǚ2CAc(-L[GvuO>ػ7&p>ДPfTI1X\ZÑȻ͍%F 5)kY4GK y ܸBu"-w^Q"dƇgd=H f@JDAHEok H宼kt[%@V;S`M#>389Y'إC9o͙^D29e*Q>QkLƓ wI M)jg"vϩ#Ms8frYNɹc;]fY p~!~'b%΁!YտkKQxv?y3.CEK*ݞ*𩘽h %\cHUaM_S9]YOжl؞i=D}?Jk_:pF6⦝|>D֯oXw z$=DptcC4 8pAxAv*1n^we1Cܑn[5^֚+x^R~xy d<Z[N̅{c' C&DРU@NVΒGzǥ'*QYs/5Ϧ(R۳Q ]]wĨ@pN)E UdT-o6&TfԺ%%Mѐ~뇋܈B+;TI6 O}:Y=a_Cʑ_GFVa) ~ILX$Ej dg{gޔJ[Q\=S~dt%zh"F!uRJpRKz?.>&*1+zRoCZ[Nf}d|vW .>y&m'wJy6z#UQx5 71j<:6b8n_&2>&pAT? Tk6 -JߍÉl+)>T*R[o|iZYɂg|41HP+udg'ǾX̶B2hvELa]SOq |bJm#ʠlS!Iw]Zv}H!ЍL#͂H [W/hg )(UL–epbSgczbʖ/INlH*dC[YmD%&)c}ޗ/)RpR\;0#mM;Ѕ8e߆uח=&y6hWmϘ'J]1 lRlnqZ[c^ } fW%U||}71ň|k8{o"i Ou l8C^[!dQf}&v>koBs]gםm^2pU{ A՛86%}&$p٘0l[RKouA̔ǖgg~*Zٖ x^ݯm%Xj`TGH=b U]}͍@f;duI^U#н}i=uxLrn2Gm9\r";ǁ<,{yi!U!9ւцx1ZX _7ֆ;FaՎ53~nt^^t $pf6YJ1Ƿ7rI ''-ٗ܅Oѹ}= />"f#L;蒶Q;1V&-9u5P3X+ث 4ǟJ Fv6a;<ވa339d9f <:9gkecl^ݗ56PUhhI'ؐ>Â3!8?[SW=̡'RV5|tqVcMBᦦfҢ v䈢47d(U1ȤIP&$B8Lh y֨Ϳנzdu[ ufC`){Zwڷ XymZO^-` ј8,8N\pԛyWMaby?Ӆ %ū E@V'2fOҕ%rec3 Ĩ`) ] JЫ!Z1.YE7ex6KXQ"G 6?vG%GS=W8F0!gZ␱Wˍ1=MC&5`Y0u\B [["ϚC b9#Nj&uY@Rp]33˨cC$eĹwʖ5,?F}dG&2Fd:l?>)+}b9!ǻ yh"j} QE7KO_A}=0̤+{h4FIǣ|Y/p oSn>P6_zn<]sj{;rb`g4o9Mc3SXx_/6bgyˏc!>okXҸD'SRUyB5T8"K)$Ч"cO|1aӉ. 4rfA΁f t!9]9 RU˲Pȧ/;ekc0Gn䀹؟C.}7y;уʯЦ=)%1\#;eiVEk^.%Tv7Xlc#\{gorYN:)=Xe;: x@9^AZz@xt?x fyLVA=XC!PHPY |S })!0Ӎ61|/wZ՝Vk+,d̺MNb0,|Kͧda#dHS.czgU [a)j 7[@j*62﫯'zv3pZ&jahCe*> fTOT6y SZ:=26nD˛ }#Eͣ8hFz:~'ݓ\6׍JóJ-~E%]Oe #.w־HjVU*\$ʥ|H%w(H; l;pEt# 5,κ:l6wc%ʠւFzny4pTa cvN%W?3{M-9\;hXʑEtJ:H1:]s i;o 9)M[|XWReI@]?˅/NiA ey^YB_!2#9HW.?=psiʅy;]h'r8 WR`ĥ3VTW4j0]V;r:WM!U/gŵ uvҒ%@=f]CS4{%4vqb } R*yLJ#Pd=[_%"Tpі4֓ր?SE9Kufֽܽb#Vǚ2UҦ7FΈ옭[Ա?2k[4<(0L&@mo_Ph{%c OBlN>n+YHV<j]6387bP06lZ)_L.[?Gw<VxA:ɴ.KHbi=č-=F8s=͛qTŏg#E$ת%Tqd\?9w^7Jn2ƿ,+Vf h*oǃ{]67)N=fj +7{p_'xUO\SZ {M]6 LBln4" T'6a=?*©ꕝR5[YxAסH&eDL(WI-8+lDN$l~++IikGd+IJDѥ`D*G/:+ ."*sg8Uqt=ոA#H -(K`c_1Hͨ7-8zKaMu%ByЃCke =;!%Psېr-g0r> i@!l0+ќeEv[UAզvN6> c39$KݪlE-JSiko)qsMBtS8dƝ7)E=P40I"˃ѼL;v`Čty1r6GWà͜}S0G%p,j?i]LQy"#I&ԹD"gll#~eQ̍č"+Ӝ2;_qϬc:z ͇߬Wz]%ߌ~Y)يYmکh* ]T/eKILȟ:% Uu U.4ckL9إs(b8@:D|[GIۖnw]8.m4̟ zyYA~t>Sn@FK!eOHGa;WeeE3#q;IlSi~ds5/lD ~/Qv=kT;վc UP5K \N,  swM?~8J*|W&Ycwd+/@lBUJ貕v::9\\Dվ+XߴY,+oB$5 Xs I, Ҫg/ƀ+khO5$ѐeT#0Iyv}#c1Y~8rŲ5rTT ]̏ۤ9+Ȅ7c2ꟾdю$ 饿/v=z3ǣ ʣP`"GI3 7 kq mF0"yB"6*(QOGަ7!w)-p >36C6{_ E)(U)aIҔ|IB{qHMH M5&y:kWu6U"q\7(x5uv!<*lBtwk~:n/3:6VVsMr 1cqVúy,D?r8D(%I [.dь5ͺG!GqrWUFAu' ,Ʒ̉BH NL%U'DQ81)Q+^8նT{zA+<$|k̯}\n>+6ɪ}tx3[@jM2ipL]Bj#ԀeiEdV)o@ti7PSMԿnt $9JU4k䇡yp[-bYDV1L"ΤYLNG٘QM[6[8c"tA%jyݣOH(rZdDRHO&C2Yoٲf^HՂeZ,W8=yb&ד쪋"ģ MT+Mw3Lu  ,u fP$WP͘ unbgS[um)O1zN sIh.|ɏN$S !D׏ZwLT[JW^} r}u",)gZ&3&$+`s[i$KX `Rz5%ӏ(rwP̱6d0AQw|@T&nS:"ҽMh^j4 [5鷋ILT5FQ-kjPב:=$Pww,Mmoꉴ׮[J{{c*K#*}+p5B:@* =6*µF#^GUTea&KJj 93J#U9pb~;mWJԒ_ȩNM V_$j>hr]zH9В\9P`@C7S[VvvgQ2t ,DxqI[Qϟ q0]?f_14ն$ zPww*ô w2}Trsz`{ﱍtU+,E[qHmLN] T]e6^Rզ]}Uio@i2wJe2 H <@kCwj|FyԌoa l7V+Cp@ eo7kRSxևGca7{)؜Y"⯎ûH3xFM/V>v(eޠoňO{ȭ m\iG Hgp;|A`1%U@Y"b)T6B՛m%wV=#A^_KI!n)er^4VD|t\6Z_5IVx> Up[>Zt+͊+CJ>V[-QtB{0Wg˝[6請XZ};lN`Ŀ~|_ɒ"] V z4ʢط;)[K+Gƛd7pÊ5tXL.ޗ[o2?1jFWsrOW , web:=rk.. ac.I+a[^Ԗ#p)l4?% Lj=+$zVPx.G0^m z/M8c%>9oY>m5[qry@-C A5˿h5:7 S͢JmfЙjsm!:"< H rGe/#w=px T}f03" ɠ0dgw 3OdMӕy2 N'4aum6|PKnM2/Y3Ih@F>aՖXGDs^mVтFDuQ=]^%tP'}5n4jƳ)s.f"_b4үtd)ҵJfn.D!KIo+?xGtR9|aP \JF7"JV*$>{|aNF% 2&obc2u$tXꟊ 56y 3G3֫{LFomYS\7Zj=^n|zU<&AlQs`Xۛ!r1Lkqb0)q~i[oI73vU=HW115Y1U`6Rq-֖'d;NHAT>s35 &Lo< β{zѝ< 6;@ύ.Xa|oSmާf|,DLQ/fʝeB$  ":Rswx9u|Z`n 3g B2_vn;ܢ:.~NFJzb eqa.aR>%$d@$Ê\KB:3lfp"M>[mֱS:$N-PYw}n3Bמ<=AM\S]Tq~<gmd!yN+G9i'Ks>Hu|>v6W" `ZBCbD/piwb UBDTON[O"^Ed|(yCcO?$wF^8 2KLJw1^'֥Y!SCLtczyN,=lə+T%!8^'Ď>{ 8KY>/i: L OŠݞ~S'x]uY"'/jꎱ 9ĄyAܚMרc.t~+J.)|5q#KltKCi"p&Lvq*ϴN\ "PҩkŤJe צRZ[tҢ^nS@LL٫yjȮM4uZ_a[&M3,bA"@ GH ;bQF Sr6 l\ẼwsfMN8OMѐ֦)}jDn~S0ތ\P* 7KNy^vy֦nsQ}PLv9ˤ#4- ץPW,;;67г$H!~t0Z@ݼZs~Ht~ n".=[bY { " {,'*GzUf >@O;hSHJ#.ZR4#QmI]6zk*y~%:}p ̋{A/DGVkH8ϗՊ l!ϳN~\i8nY$ $L@i!#"1AeAr dÎEQ=Cv^nq|>P-uBs6hHd*d%)EicN1l*x>R6|T4eQ|mh|n:t=׻uJW8B6\Z@C"Ka'iw[A$i؛*EO%rQ[.NVJ 1㘺-z7#fO .7X"* %B]dyaH"N_iO,Њ"]uEJ]obTk7٢"R,g*L|/r@~ܥu*Z[S,aN W\˙6GMxLoܮЗ^{=m,'pdg4}U=8/:g{~]c<P>)q7@Uux Js geJ{ XK3֔{D1N9}7Mu=l y9g}÷rr:/ל5 %@%|ij?KKRz0-5d/E<Pߒ)RW@R]5+ {ƳrVDZEX9"PX_XqhU4itU"=QM0L<65 humeg'LNjMYGnX:eƚKZ 05(4[! Vvb"aC%3g;RQ>]u;v/+߳04./)"E]\`n2#[QH.`1Ρ?v|I;)9!v;:Y*2ɖ4lzi|g* (S^<T ~Y]>(SMeiwCZ7COa:(^K(}B%MF*b0Kk:b&51G;H^%U[l;V ʯʩoyowv?|GQGB1"-g}؝~٦^̅p_1RZ;/;ӈ6 xma3߶T8ͮ7B8T`5&hjx%;vO4/ٝߖw1O5ft8n"Muvd4Rg}̴n8??LGqge hW+K&oa)pywk)7_h!ZT9dr Si TMزfu￰Dߓ/3`bOӭ卖?8ن#ڽ#6n: \2\1Ka5ViZsqEcAwمW[m M?zKb:lmu SDqV7=eRCfZwLnnIx0xtd }5=+KhMmv7U,W/7zƟ[Tn|x~..5_HFir2S5aD@?u6$\:Wh9l[W PRa> Bzoت6all?;שI-uUfSzn~JXde?GvyY^h^_s*c1),6-FE@gLV!eS$+qXש!gE8HHx%٬ jce;݉kI`W"']TZqvĝ 9 M%F0Ӑ G/Z\hj+2z%yGf*'0vez0hxU O݋`,F8 1T4%j,Ⱦ ܑ(IZM`З]ǿw!gnV$K~ mS9맩VX8:PpKXڹnhXhbV9͐+<_\6)e1װ)o)*QIuځ6h)8 c,7oǍ)9'4&❑v )YqÔFFaK:6Z 3XU,qpl9X [(ϗTFByv5 q x'A^+E?yZ凱ˮT$dV3S=}f"t I[CnW[=`Ҷ[1 FT[ߣ,b/YÍ J>šy_*z|phB{hXkO603:\r:l#6VTP}I`Zntj5?-Ifp3BZK/O(p>֜.ٮXX. c1W+C{#п,mEVa]¶+ˀ| 4:IIQָx]JF;v[Q:\}A)ް\/LGXTd{s+,d7J /j,/g64RKh?O`"ą v#1IɈgyPoj#"hCDw4 XONJeQyDxyySI@\,Mfny/&m%n0 ?tj ;4$qSqXtwyR}|udt8j;]X)`|/Tb)86 3D-ڨ=%g4yamT=QDx-ш s [!Lm;6AU+ H0Yi u s+Ɛr'1)=gx9}  \$~1 Gΐظ.6qQ̊ibY5'5\v^p:T`9B-x6qNn'[A{ҫl ~c<)@-W\bP~%H,rɀK]G{zq b*aXe"&t>Ojhq=FAɣN&kT+~/HRf RE|S:R̬ Qz%cS)}@һQ)+e;Mx>aMMzL@u;67HMh8rus!SBd_0k:ɩÞ"oA=ÞΙq\nga'Y_NRcuQ3$44ĹuQu߱~$1׭%\FۼD,k%$ ;|"ԗc󮘀h31SgW׫M+w|$xJOΞ}MEVJ%:Q 9KS8x$|W)ɺϝ,[L@W8ٍ;;t|+<9i RUӜX" o2ȌTtsE<:]9ϓ ]9on+DRڄXsW,q+y'&!AФ׹߉GP/5~J@+ٙk+Dd=oF#x-0yjOݹf(S=$C[6Ug5|/:^ >[Ԝe( jcz[Պ=@͑e˴ }jD2J;\YKo=<~X+dAM#)ˌ!Z/>:zb6Dz x˼`J ÿ./,Z,h9oXG&܌P%nѫ*ج *8QF4j< ZVE[^$WMue,Ͽ9wPZFd@_4WMf_{>kG/+@)VwG eĠ|왘m=ۣNFC|c @nc餍~a[|Ube܏CnB`:b6)Y=#@gpMJڧ!7 q X9:ɔW.R4|6wMfI{tKyg=:/w c˕n+^[8j uFЫ"6{,ޣ\M1L ;|$rέţϫ<$Ìf .dEʱ Ijoϋ[3 `\@ns0Da~ȍZ-gN}Wҷz,*uf*ԟuz&D€$TV,ز:*-h^ی\U/7ZєǮtzcۅ%0j[9"ASC(XDt;Rö){h{ :lƛӝ߆H~ 2=Y;\F^|lU#3/:(5zV13k>\4tM."̌zY))A|vu j|F^8&I@D0 ٨Up8K[ko I-mƘz?+"ȱ ;̿zZ>&^Zlh| ^uF3`cK%-Ӌycr[cwg -A"ZrKfZHly빐p!n`u )AOaxF7o:Ec}kzmu4zYf sꕒs#_gSjzAoz"DppV ! t(̡-Cn̶/#N}%п* Xp =1x#gOFԢp$˺,~_x^:8#Eŕ`xF@4tg'U`;N]@0ї;=d]aD3[0v&`WPֻe'+O<\}} ca "rLCɍӰ[=QJӭ\/ JcWR fRѮ.w1-;,_ qGu`.)b-n}P'2jRڜ Y . igDg|ي[JAڪIkO..y\Ga.z.IUz $\jPX}j|\c[rYv(OU~׸1#xJČԓZr%⌠2-~U$q-Qa2BoݿYmp_>0f:dbm_!uGxfɤ(@v|\H9ʮxyʰӶcKhO)( YK-lL 3kjtN!O1]+h)X]|14JR2lB|Naxm خD  1$Ib#~C彐[iqpc A^}JP.L ZMɬ{n$__;rգYSi&kf3}vPJٲuTcF\v2k+8 Orjubֿ Ûq Ϙ% Cr'9?Cte(.&$ WD S:2N.(0l`5UUJ@`a B DžNdѥ}*H6s:mx5ِ듶G\CB)*P=EKwn Dzw@W0v,GCfd[L]EtS}]֔y]c/|Dpbg: K4$&ݣh[w>q♎x< N9&b ApQZ1òof_ qjejLky?=mtݶ{NO;C`NNBGlӣ C"o S6Ɇn&TX^R7vXAwôrsP"g Uv0u纴,Io%~DAʹ봿3RZ/ crfz$ǸxFSvp7":iژi/ 8f Jy+ˎ5O12]M3̸6:&.{ (&kHPuPLkFRta'dOw/ꡁq\̘̎ O<Z)*=^;壖k5s5s9)f%/^Gþ7JX䂞riՏ{#I1%J"D{oJ?4!! /YԠidFkjdFAsͰ^u gch*/ex`w$7gSh)y &LF܋"(-Ǽ m-q@iAP,z~67!Jv[98`*v Ʈ-]FM! ص)tQ)Jr%x*zÇJ&*DL7$$.r4⢍ȨoXfZ\[8,yD mJM"]Ve؇5;B:Or:2{G6Z&k0W8ҾWNqIl hۖ6*ԏn1)PiUČVaJm8dƯ1XF 16/,NvXGE=UO1B{n%i0ImAݍ+)(bZi>pX1Ei~#mC*>|j=mKpqJsFx`,A4CN JPkX`J\!i-4ld8@_˵KDZ+4֞P:w`n U8Jl՛"P[JG>rz)!u١zQ_/1N$ O[VmLݯ 8 5el_H i1? w?9t~8*U¨Ox 2 GOӢ m5(som2+iOi+=":.coW_UYs/P <P.`>s"^zl!m⹲>yiBA:L ;-<,dCw#`rW&Hq~kW}j?ǙAnehLux@5΍ .דv1LpNx.zr{-ԤEXLU9KpѺ*:@ e8\AVlI؀$оv{Ľ)]>-^TvPMn@5rjKYۓG% =OYhZ $!Fdl9"WY(qꜟCfW܁:ݤB4vӾvy( ?05_]a/QN 1bsx5VczOH86`"j֦ $LQ\La=X۞F\wV,`$N3ge;/9;H C&tbӷQ!JoQ\ *t%* b5<M:eA)G0J'b `?.J6W2'$|\D^xnG{p=7jSx,+Y﵂ |X˹L5}4ĖzKTɭA2^VJl譊7$}~O I<Þ O B$2ĺ؅#L}ґL.\n8cE[؋-,@Λ(% e8SºTwyEu--9W Fv's&`$&oI^@lϲ-+:v'k^'%.U`"$RDab{Dk!{3QVs%I?L0˴93š!^?L`TL?3v,&=b6<+RIL!~?t@AWIsiEwRT` ӫ!_>ԁdT5C'OTzV2bQ^+d?7˾3Vg<ͳuʦ%D+*/HqQ[t>\ qIX˓h*W}KpZjf4fF]cBQ8ˋTBq]@EFz!NlȬK <%:ژFZ.ժVu=5$cPrf/>mJjXM,#09&%.@O|޺/K$F4ِ1<pbXٴ.0XTOG\XSH1:'0#ojR߂a8G·.)stϑ tj {/pZ{#FUR:PS˄'E`v-㋴ڪ5Z18Z.!ȂD4Yb'~.{ (ncB Cp~D%U %";%NyzudU떔>BSzy 0@ED6?>˚[7,!ԕ#d>Y9ha z:1WrYe.{_JI3Pq l.]N=elx H݇dx^jԬQ-1<:M`fv&`2lNG; n@ IA `>Mꈬ|6՟<15c#†q~C$KjWGRz"<7DݸgC 3W# v#>+ybj{ 7nA!9!Uo4a۴kbV|mMUFbr'ύEa Ytǟt6QMa+P rR 7z]'\M, R9K7Dԋ;D]( Zlsq~;z2ϳzJ/jW>@^7F)jgݖirSr$IHR& S-ş [7֔?ݛ' =q!w6&qފޮ+!E rlZV̭m*ӚRt. U 6x䣤,~YH05e/ݩɼ~88s؈# p;t@ }}/t.ʚ o$5'/C~jGdVq_،pE~LQO=$2+֧n;te[?8 6^z;kN K@tַ'3"h .sn]yxb$ယ8@Lضޜo6uʴS@sF=IcI7OGJ/. YU c%q.fI.i4EM'XLtov'27WSW+P@h!!~[l-K[a铑B|QcDWQQ=_zCIi3 >o m˷n56p0;;T3Cq%*ub;]ǎփFbI; LJ\TkW ?$AT[Ÿh?}ľvWzQnUR:AE/Jm\GE,}E'Ǿ9@5W&r \¼ Mk4]:LOm&oF8^o$j6PYѶH~(׋L\LT[5@ːNki;9*&$X{:rn߻bx4֭XW "CG #k|a ?Kc,Z$etl)L|se4ԫYv`  u *p|f6Ҽ__N;Ow; TP*P#1`*Q A-RšW4un@(u>{Mʤ 0AQ2vW5D+~6bbQE!ZNRPm|yTv tM @cA!T&^O.t˛i|j>ZVjn#ihXA|mڪB֦DLaуM@^Yq܍la;.-b#'f̏ ^dL-0yX,[`z3iȵ9DǡlvfN6ZGCLx)TYێ$P5Cn#+ͥ\} m@kX5j‘Bnti2 1[)x |`:4uUY4^Op)բ{Y9>$zSM Ӝl.[ VjM7U3C˷P)s<^ hx%@W)Q?}Kg5e|i ZuBB9IMxFN Al\{~B߼h߰FiE-r? v4šY~k(LɊj< ò캣g#-7K^m6# Gos;kcӀ<2|>ЃCM4#6VhIB+ӀG,8W')6U8T#} i؈iGUyRRN+88YH%}dOꌳ&7V-D+j3TȮa"H 0$+EҲyB#ݵ/ޓgC@< @/'lL4EKx$aAzgs  5cNM?sXt';j,J^q&LIxSqj 63uZI)hyy5boBR`T07mk@w >q˻[^~ByU qJnbtglMx9ԨW!>u<j%^cDE7!a#ĊlŞjbKʣ@~ٹn +»STo8'>fN-\ZL&r+H >w.q8m(.WUA#~ ý`*zPҨq wD.cRr,4R PswxoZ_P2ԕis}zip!:M(XN;V#lK U֊uj׵-i" .(R=w=J1-\ 4J,Wxz}߮$ٷxb6֜\VYFJhV6[+vMG|WR!(*Q,"S^ݝẳ&ɵ,n6;Pb|kb4䟲kEî{iXG@5M=D5T^)QoO[pK4+p*}4x?r!L};D*# kFAga,XF)U=}UƋs#^4!+3x[,:NkY?_yO T:ըκڧ2jѧ ySo"< Q(.3 < sReXl%ϼon)p݄;FvXEHЗّ/uڰRђC ~e{( VW,PyVG3>bE̖OM>v YI5w&"ei_2A%*]󝠕Lk*u}#u|'`5ǷLn爟,4Dx;mm].h:uM%㻒pe=ݕWcVcTa˨/ 6!8lxi݁LmY3V^SX2~\0+C mBuSyp(z4(đ";ܫTw|0d@aQX}dhyQD#e'y5|r"Fb4yta1pTPR> PA0W-;&roq86mИk~J7Qя3#ʯV\Tdn@HRIՍ [yzcgΰq;^1_\m]f]JA]70GExOL[.>U >(lk:J6Zo7?4(_ol 6mk5}=gMq6KCÒޑOz- =W\B8[G 4s jdK G|esZg.}ӳ7Uq#ѧܒʙzz{Mn7S5hdJ?E6QN7dl"_0GbɅ3MNU Pڅ*!VD5j|^%CbŃ+> f:#,#ݦ.c%[r X &yW4X!h[S]IS XhQL?WVHA*TWzn;^ mOR@`_TX }JŜ@D!0!cy> H37{6E*_KZ b[h3u"{Dޜ.`Qwi.tI w~f5o:'7o:"ʵ@mպUQ=.jl@țdFeNqw8,%V1#at̷`g^TewXiU3E-ہJM(߶%D&@M૏`-\Gt 2G >zn-͉kxJ_+(Jh(\ʔfKq>ύmPa_T5s}CAJhR EĜ)?lk$BsP}Yӂv/`PlQ3 GvLd%(,1@֑vtcK^B-$d} 4KnO.Pؼoj㌑Hr!& rt1s( IF]o/f 9Gld;Ê˃i K&i> sf߽>i[ۥ'#"J{@ռǔZe ^L$k\GSqFae g8%c[@Bxa|uj<|;k5,YLRɄs>rUr]c*eUN%R헏[ o-B{w$ߎK~sMTʣZ=J'ivfCS6 Ÿ&*Yr$?bԐ>ݍXF6"d @SoEZXzR1q11.QRw9DEK!=Fdնװs!/x0aj`+vo~3؞A&>El/+_$S_cV.^4 o[B{_WP|F3!g v<]d#F9%XwUmnUx[H3ػ 鶘St1 >H wI=]2 f@bVOĆ ZX|O'f>EX3xD' (fX[_h`HMCa (>=)P|3;YsVB \ D׶w,21R Hk D%1ŗh=59yGn+ ^x/5ݦ_OKi&+q7R8@V6PaEuC3н}K:͙4l`F_!/0H!/Tl9ܔ WvpirhLY|%.6-μ:ooA$>Kzj a?+%Ñ\ vzǥ6Ys㎈' Xt{mՋ)l6`˵għ|Z<-^WLN]u|MD:[h\H|ө]c' ҄='p NR.jKOS>gm"D e䒈'91܈Hw^Clx0w[r%!W%ZmzCIT1jBpuaA 7MP3WQX^8:(U2;@«606H/# ԋLUR<rۗs&iP5~ d %fKz=:l"a]nK78dž»h=&=8'q;3q5;YhN_tRq؍;["$E;k(n>"?=Z(\YFlVN#حkAKW$P% {BB_eH"OWd.j:_x[;&7NIXHē"75a2rWؿ÷C9.wGSK6ScZ@܈55DQ d Uϛŷx>ߏZo8OOa~ypc 6VP24?דxS-dkoϕc4z3K$!JlROiX5*ߤNc!#ӣ=a\Jja'?+&@4鈈=Ja)Ї)es\MEp3 HDDVrDK!)S֒?'IOI?F:n@7y?.Yq8,-~80KnWq̧Sm:p קw9k'v 0U"2١.F{M4l0Eǩr{#ou୉ơ/Q\BRU}k6첤c*. ʉvL|#L /tϋ:edUӋ<u蓯v=O_7gT#ollL~2IBGw/ &Q xIG<-E?V'l]xVU!{i:B̳y^qNJDdy%ROφzYaKuv1=bٲ&Ut"utⒸC$޼mC5Rҵ >S#1oj7!\t6x1" _mKy 6|&DtA7^C42\/phrR ͳs!i9trGP[ fI`ץ'H9Tھ*&2y@.b;xҖ|ޜfa]0k\2|q`}sD7΁5SIcNBqr=q(n(,"C RgU.ڍO#ʽT XWPRC<'6u'Ev q.ވ^սpGOOGLK$%2λWgB(؅UyI٨D[*^h 6i;3ݴCڹ5?wšqY"tΒ?A/5OLvjώ8J,(>wڰgw]i#z4F_W42QKa}1l"ECpiATJmYL ,,/\y4I/EC.YCⶾ~7$Mh{N|N}E~ f3۵k'7lswwi6F0]p6_$kx63lm9u8[9!52 lk=4&y,@8pƧ Ό2T6)Rm7{.5m24@'/T0(^s>7pE6Miez=ot>('Gc\o~BH4yuk 60 R;5q?<Xn&d׿El`BL>Vݧ~뉳E{Sb- C`2_1?8AKc hczop߭Ȼ'Ku̘D-?om L} 4cC{MRO"n׌˗"s+Wr1TR0XLUzpC4+Wh k6ň)XJyBB7"]0Yftrx;GJa3xS9(d\qƾO y%'R[aNz .6/߶\䴼#ku(}7JJNczu7*g~Q1k_ qgrkI|@ձk}䤊YWW"PjI6ӰƘq#CVHU`p[tkceB.r46Џ2 B8=6H HeZ[cAPJya 4 4r44jRv)҈~t2>Oao˜q lv1Yc)Y|u%Ͳ *L!?-ʡ#}ǭbՎs<B6?Vfb0 x^Ya=Ͽ] yS',A>!0@gi@a3Pf"2K KS0Ec7XժúƷ[7DD:FyBdƂ$W6ޯm>J4fl:[bճUmd6۶ߴt3F P]=K#a%QjAW&!cW_E?S {&[b7Ց"w*ٱ){fؘ4o,'Ѵ%[b g5{Ʋ+~>o^ *h˃h8NBBg8 -.bܝI9 )]ڪ# 7$}ujrY"~ w|Avv+6I)fLai:8"3X #+k ʙfMXK9e:朧xMj)@ΨىI3kQv:iࠪ1) }_caeœpպ@jjD"Xg,6rLUR"qkr`9`_cyE*lyhl֑^nW _;I 8 ^ɄFp(ѪE5#) n6,s+̛Jޑ]])̑cW}BB?t9,70Ա❫5 we'E&xߩ(.{-=pȻ+PVK!ьjn'&P qiBTmqSo6y(&u&G:Ւz툢`u;-NnyӇKȰFhA_@0yt7L4Yܭ+e4qmX Dުy vȇ\ߎbf~hXQ NHR倵 f'ҥNFrYaЂv9tW/f? 쐛K|Yo.qΡ4"Ď.6:DT٪N/uEHCƞ[z'ڱ*<@BɴeX'Ųemc9;mKEܟQ[)&K^m' EU{/7>cOG]5$ƃsDiGB]q|Yb7x5ޅF5vvdx?K߽˛;}(QSj;QsfXdkKRt75b4f_ -0T-nHgkӕIrrQr@H¾(k{h2Tk .IyyUsjVa 7Fp"=`lz9\DBڋ9NWD\[27\#N*,l\p`NhO?G2) 7v]ڹG!dhIA0P wqs]9{s[8Hxr7Gx+"YPom̓o 'nwBVK[=#]NJM@8.-Nb7{pcGqimMFC:Q#4}+g@NAʥN+x23KuSC424ZiFf1 To7AP&ecpO[zE]T &6px-&V,a N~ػv+r)_:H%L*,1+<[}Ɉ1 z2. nsR|_Ho5]x@!HN+%טLQw?noky28-v0OFa<5i -KH#8վ(f=x:PbfmyZwfRӜ ĸ?\F=sNgb7JB crD((ݛm]֫4_coMZ? &bjMAHGpw_MvIKw>h7i 4|VqD]|0-Жofc)H\rHq[%7#b sNPV0\SF?u5;Lꏣv(N^?PB;ؓ{`DQyny|-7ҹhMt'@vn_&\"Nrҵdm7"_|9jJnsSX8}?=Qv+[俹s.@IZrV7 Uc&XM~7AINs;}kB~~|C>'')Ğ @6co(5|Kp%qݒv,:4&<\y Jme ,]4Y/Z9A$5t %|)mhl V=\Cp,ĿIlGBtK?KM#YrL KQׇRbFPvs/F1Aѩ+%طt{)rbABmgB5$ ;7iL>5eCp#LVȎLߍ&0׺$ M]rMWP3Ee6Ua[<5rd JE:;~l`zx T?64륃\}F,k8k"ʝe3]ꞣK)WW^/^mj)+d`i/w)6O]=m^9⭆!YOԆ&|_.jx9kcæR*b^k/V3g> D9mT=B-\勳 IU1`Mz(~awCreaTg uH6@iFsq"{Nx T_ךp.:)RHa 8BětFx*ҳRP0R(o_CUanM pjFw^1A'9 ^pРr1tK>їZsk9 p];x _+末`i8efv֤=2*{HZQ|a RWH r x 2?%?*PU#4ӥJQ_3D{,ﻠ\^ &Р3 8Y,=! CT1ti9`H l(9CH#fZ ;j90}K@ēպO~zU+}$J `C`"4nEX8eMW&Vބ׏|.lW6dB~OXhi(i~j`ܓq*A)KTc;\w:nM@nܰo#܆F"F| ׏ʅgy;I}QX#-5R&ZO'8i7mpս",VcEǘSUb&yXzc;BC_ŃCfI@O|HVǐN6g/*>}޴?L?6O=sDi Dgx\"Zq;S ;/!CcDnuBW;w/kV3Awo݋!,­HSuL&4w!\GhCG))<ѫa2.^|i0=(̠5ܓM!$׊Q晃x /a,e>lxc?=qCSvjƮYmfUٔ >f?zE_^tp_\`&p4D"^'ݰ)Z=&u;uIbiCD\TNS0}z*֣OҢBS[#@E{9/xcی~'4.REsJbb -pqZHꌈ^__rxkxk?2FZtDڨKb]E4 "hi-2L- Xrg5/_j2*6 > Z?wzMo ߶6<zRX,V~61cp8OpZDX=*#}a v0|P}.~f،fՋ;jJ齈@#Y=-zrj2ּ4pslu;΍bf:ƽ~ËFyCIJP643k0i9_<[c7:ģ@7m#\j/-'yU}O83onE2yP<Ҵ|fxNXŒޥG0mv=5JOLBNB2K \U)snLG;14Ik :y ]ln?&aSSRWaz o- +MT=YNE0ը 3ˇ:3qTz!ڢt*8>@>䶱y X&"m7|s-*PV7F ]z*A7rz|v˛iu--՞wƝ#`\c}aE+(H*`EC&CQEaɿfdwǥ1埖8ou.'Kǹۗg⣭ FF4#euBKxg7cY muK2j21=8j'V s A8at}[.ps3g3VۥͯKc@:gȤ" I&&yZ Nԑ֎ۯ`eK>-hh iub=a]V\N@u?lP85pX@d=wd1E߸ǤXT_uO(;p55y< @ZُGb购^U.aV]wm`5r~),x:b\eç&V95.F8gt:R3VOB6=[{Z}c ycn{sQ+',=;ǥq/'\wd:Kb=:(*eH,Pm;Qo|[ WH'a ,7'0lO(]p;3\~EUovxX{ph/eDۏ5xEWjsgfL2d_^J>vN&[Wrge* fY7P:U]ӡew*Y‰!pGq+EzJ9FFK>l hɘnN{mJێO+3b!v> cenܝͷɃ9MHHB^>U-Nm}tI [ u{U΁ *#Ő5y} zسi+z0N߷`QNӸJ~Eq" 6*͹>k3iBpeۋr}*V&N.6ߏM`Xw;:.(uC$g=?O (zBN]8) Ê;3z:qQ;A }i+ oY?v08)5͗0Th.^N ]B<^A.Nδ%^s#7R+dӭnCy|ϰ%c豖VY+)% Oh>4D+~wM(݁uByf?#Ʒ3s"ϏB4P:~i맛G.wEe=0IBAWJΐ'Ecĩ$D 凎ڝYZPA DFГS[ K4}Nݛ3YqLXE~#~Ğncyc{Q ec2 HH]IF˟Mbt~itρ&&!mvl +zOЯed #.[8)!"aN@KԵrpŌ{><9S df׳3 r`L㈬*,@#pn-Vk"tQ9`P/FW2GcP^~ x,qWپsϫ|otȴV皱^Y !C;~{{@aO..kzɆI& #wf-9,f+jZˮ,1Ě&[]٣W;́>LQ'9IaЇ(*OoH uvjy["GksqE055i)* ̻cCLyB2 fP6/:ZHF/9q9Ys௃z)8s>F;Ҿ8jΆ*ª:Gr/D0F?HotO(mpdIrT`ґ^D5('j !-X(Q ? iK&DA.bNpW9؏X9|0^qƌͿǛ4l\ 6nZQ< ?7)'KMS9srNk9vL0=Ơziq2^z߼j6i@hM[ Ww`23Y6g˟>hSQ!R 7}M}r&vvx[M WmQlA\Yݯ7>3!\/}4Fմ4t=}gx8}>gUw5(U !m^r B"/t"v#HTڿߝ Oh KjP_MNHT o'#Rɲޝ5qDng4x3%E1Е^rM^6qHvmL+W5{{rK:N#gHV{N %N-XʣW{e{biwN``c9/<wh{ѲjơqSd^TB5o`c2_b+) $Ja?$JL~/B{n)m28^WcaNy*ٶ>eb̆ 83i"$<aQĴ͋~154J WwVL/ۏ?pvr9jq͌=m"܎8{4a^S3Y^F^BUTpSr(ص9uH+GB3]$ksѨ3F)Y`Yʋq^m^r8X’g emź)'a^r៹PQZU ʮbF8 ԋCP6%B圉͌C(J2/)!?H+$zks&S,v=@wh`Zh<>'8$̗7}&r[_>xB@@xIܾBGnn/0% `뎻tU'~$rPE枧u?tEy=[%O~Uť^2܊-҉9Z3of(rMLh&q~B^}`7 HoHc69jF5DNiҔŽ76Xz4@bUgY}=fAL>׍S8ݱyxD?)JS.G&\xQ壴6P"'c s~N:a}?I3?^$'eh /xbOJ"vQkrQx:TP6j{[YE#S!<@Q q /#G]6{w#oNjM~}*Y/Pux+6 5Qv^Ĝ yPBA '&a 9ŀ{?bv@Q{ivTX~rBMΘv bYڛ/6ʒH꺰tRsZYbxesVy9X ~ܒ'ԟ^]'‚lܦD(uHa~{RpL _vhMExV^P '_%'iLg*kQz)Q-MF٢J" >D2y%rW8%)0(qnխ0siu'ˑ|*J/ b2[RVfȇ1FHH86uuJ< D>wc_y2njsrBi_. y%An/ў!Vp/p̛ &[ZxCJ|4 3|3!1E=\X-ϹЈम1PsUd"8' :#r՗vܻE#ЁRJ܈8- 7HaGJY𴪄&8FԛO). LĈ v߇6<˙9R+BͲ$QwAxȟWp9N-_2j1P[eO% N#ެ ߒ$ZDO n>F|W\ڈ*՚a _PMsƽNfblt{x Nص=*6%J< S -QFMח`5[.@ {<2.h0H=@iruP9z%CWܢ#w0o+A]qoeگMCX܍xL o"_ʴ8nipzJ_-WoxLGl a-U=Q9  yz#y5QV!3B੔r\4T;@O<9C :~YoхC]SiTg;+-s27J暼4M!$(lh{'@~ T‮W5b&~UZpo~42c3'-ʲ\ԳǻKß ~́2"VaY/ ޿Щ|8e2`sal*HUa3&%eovWA\uNUϢ(|FAk@Eܒ 7h2 }8qW3/t hQEXOJ5+:;VF ?z߬.uߑ.w.AGI(x-H'Nۘ0J,~=s;y njm+'5ױGGi )˓T( T3_D_d:|ۏULnCe>= O<dB :4wg񰀔r8YQ7m"|m0)e # w$/W2es&!"`y\pٴ\l) [4G8՘` 8e h*sv#-8D2)Nèdzsʾ 'ӤBqzٍ/M=6RND5WTD*l 13o{:ݱ؃@ns6_庳I!| g"ٟ&{WqR7'h"*BQ5^|ҏʘ$ҋPn2ndzw?Ėy'Y兓Nr Ϗ$݀DoWaHLo=E;KA_G#NyO I"Fz KfQx@.k;\31U(ƭ2ޜ*{v; ay >f7MM1:TΓ.fQg0R50!-E,O#RݖsEGC=6B518))#"K")} C0氃 ('mխİb8{' N11'F>9r:RCj7 1h2' rbay}ͱ潕8t;KuJ d:]U +qZz$@!ß 6 %/YvԊ4w1+KÅN@Ѡrn: ^OV)Nv<թ6s1p+4 [.L '&* biUNoa[S A'[Ê] &nbRV j9Nl-b r!&Y#РҼj~96 foyL~֭5 &i8t A|qnSGF} "eDtȀ zj%B RZQCLrJz$`:guqiR.(bseS̸*JUs|a-ioMBe34^:܍# x!W58}-c%M͉I{{&:]b;S9=G2J>r!fQ&OhO5kA﷠WuaqAo\EVjN2}2]>dim:cV͜,-0?\9h ѹ](XI\E >R=۹`@q#HuT*.hګm/[(T˸\Y?)e4‚fDw{9b,J[*moeƝFĩ_/BtKOY~3_4/O`cܒ/ S`/NOR=Y|]o}C"o#r ( Zh< )#k<݉&l܅úW>}}r D\$Lnuyjaz#x+9x"75^hȅt~CHxL\(_Ih(i] ,Y9Un%<5HӨ\X`汤0AZRD0(W-Jm0~23x }jVךmRMg\^[^awAPߜnP'J&/5H TM(LS9Ġ]|v#5SCّ߱ M6n?CeাJL(vf2 ) ܪD/BzK#&Gs#_DN%Hyk5 ((Y~|k*v ^RՉϸ*2 81}i؋^*ȍZTPcطP\0@+:E#}U;}]y':rlD$὿]J r<7t.3/>ctLa.IIg~bX_BR^ZFPGHUV7L4:E~Y "UA 94z1ON;`N4G*nHBSB[4@i>[veR} 6!q2\ g@8GÅW'] .qTuJtp@$UEI4C3<c?t4ُ`HidI,QY IGn$t%xeϯ.)@PܯU%s-\J]FM?8 讦3ԯ9so Pr\|esB| Bgt2PT3*YJw`!#qry񙋵A]u:OMaw/=Dĉ\MoU龊ts3iH" ^~@0HZ6=6=F"H.}DaܻUi,8`XNc3`^8o.$Lk5+V6R,[0Xwr 61jϚB% bY.PXwM>M{rؖ.lSv|3؛`dcDggRM֕c3RkDj}ǢamT J&L1n܁m{O-[?3 7`nXgGwz9*Х/?{ 1|,ɱY)|7ӊVI+MBk0dҰ;8qb{80{9JiꉜToz撝6ЮwxnkDv^[e oNQ[XKGWu2ݪdKcH{$k4h c#+p!z H'ppd3ZXO$*sĉ6,x!r:l@eaaL*} \n;dIypZѰԘ%e;OI#:"y !VSR/?P]z/]5Z(zQ<~`Ό:lynb5ѹaeio&SFDN (\7nJV'pz]7e2gjօ\v MTX> y%ɍ8m术q%`'0 Q/3R T+_lZ!P4Uf be[15dc`j].WUilVF[{Ied(ͥ b37@r*|j1=/fB̒I@̶nLcslaM$Q3Fm KBh@,,ږj:S,ɜx[š$sj^ӟf97=; aw3C EJDɣ7^q^19`eo^oG!Ȫ.ӛu~ f#A ĸ%)^m,%{H>f8}4.4,W_=|eQ**9ax-,ۛR;|LjۛkJ_E'Vk$ *ybTV8K=^cr\AE:st:`Ww#Zj-BXɪ#qY[ּ_0}n_QFeZ8#f)~]ˠ?a <>`"ږӥ#ϴXmWP7Qo4FA ZHq{<_$&!c|°#)FY8/">#q9&0S)nA iQ#ݹ}YFv'H{ N,o+{ʗxC[Y54iEƗ ڰKDX[E,EN<3z:yї9AIʲVhZpZøueqo~K4/mct;^#ѯ+""E uDeh9q-7w9a # 5GȨ*/3P_ўn=W#:4?z|wZ,E|IޯRY}Mn6(S m;A=S@h\9Rgaet1 xɨ\d @Fo}ѵl΄ky?7rEM `\r3yƛy F!*f2xKكW"}%F; .x&s@ctJMEL$B` QHN8T#U>n\[|ؓ).,Zwl O|4"Xd*j?RnEcgoHcZA~>OT—%-p_F뤭sX=F='K|m?d˅<< { W7"b2:ML;~cVΘH蔤9^6q $Z4UOݦPId#?PgA[\w%~v TAX7G3[ ;,>m.! TŤGuHC#Nz翁At0#6SNWdD6,*=Z2 ϵw5,-_֑$XuM1)-kU;`REhd+-Pj QsZTSZ7AaI꪿,֒gSQytjI+,i-l1YGç 'Ý8SG[)hr|\*:uQ*-þ3x4"q86nRu2jK"߾蓘jgc7FÝ^':Sңw1w[J@wl1k||DG @;Fu?t{rUɊoSj] ~qwe16ٲ IImZ89L'UYutu6P!QȌbz ֳ.G-t #e\+, qiLDgcPⓗEypn֋7 wxz7kMb to%!++{-/Tվ8͔k%]6jYN+Bhⶸwwk |dտIAKPjw\f}hTJ12@aE%zxb"ލD,~&ݽ=@Ul z~a>F$STj"BLLmRPV[{#q9a |=pAMb1X@Kfɜ zcN Y~0MqLT>.o8&Ϯ FiЊ<@4тRSfFk^AkaiL^eR|Vہy;9W}ʀ' x%N< TY.U.5`ILUnkn( -:RӬG8 ! c%0BN%g?Js]kX Jxf8J )Y)(>۵}%i-Np:uw4SJ toŰ]ֈl  ;/'H=r/nV6>6odž(E{hdjmt˂[v -%9 3a??/ ,*;g;nc9ƋPxm Ζ0f+Q bcvY4D_..DI~;0Cp AIvvCV"wb5چV}_C^m!ʒO?PLW iQi'}0DsZhYy}1\ l7:/i*l:كpHЮЁ1oUExB|?J>xݕZ@̔1}跠lT#95LL@ SZU]Ӏsc;!叱$ :}^^2#P!]b)i!7ݘTGg[x ɤPͽ~c]&s d뺗4 'BorD{f--ql?Gk3פ:0&nykuOi5,S"l@ _OY;ݦ!Ԙ97&]1)alxՅiچ`UHv:˓@Et[R "TYb8Mǻ~2a䄖8fV=8^"zy[I;' '(#^H>ZqR?>AhI ¸ Qx1x 3ỽMϔI/ FլSkN ]>yo(|-(]Ǹǧ|>jend΁hS+aо!w|zK3 |slJ3W})h0ĀFH1U]uJȒpΗ-V1Ś׸%ޢiW;~qqL ޮdXD4,#uDf-<|i'[ne"-L1V?U7VԹMRTc}M'b9ht$m|NQd+ˢ}wqFBd Yt;p]\n,~CI *X`DC;Ko|b_YG)77p1B44Ѥ ; F8iW9g?dz`A'7:Z ~|Ҏ6B6'>CtˆK/_ *Jedg@CϧkHPelnhd"/N26Kjp,'&1ꀄؿ65(:;(w(f5L0Yd#l -5nd6{Wz8"7քEmqP,9Ru 8{.|B 0E! gw#y<5%$H0x~5w 44 N >-%9lc[!RIhdZ:8 `*WOO~clZEbA[MmoKӘK*Y ĂݱS"vLV)Lp >q|s/Vf_T2HTG0 j!f$Ldl*9<=x~Ih@%t_3eYx.SyAZT,>^gbvtDGAF VŨ!jne#h{ȗh\tOB BɎ^hBUsN&tK:(@BF3|6ve̡v5,mtrWDݵ>+o{1]MΠ>숵{g081^ьU%tgasݩJ0ȝf! W]@l qN@-~A9[Z9Ite"h̰0_^M tcBՖXRs6nv1M:po]]@f} gD- 8;퐧%4kգZmo8zu&_ ~cDԆMQFiK]^ FnV,ZVpeSˑNwPMYpu!5;#~X^03ͭ9"v#n7%Su_0.7 [Bnwc9AK[WVǻ8I>yħrTW9`\ҵ =Cj]B?y8~qTa>:c8bG*Ӕ2ME' W\F %_Glx5Rq#RxvnIYQ[5^ovMs*/9N$ q}8x!R>vΊd?56w 5vt1cg/.%q&qمIu"u tXP ՛C،iA]!w&/xLMzyIOQEmĻecӼCUH.d!:K[4UV(4] Jt+Wgۢy W.dC0'y,{O4%.<@)TPHJc7gZ*THƩ {4=v&F[hg.Dy+A: EMJ@nzNF1X ToDu˕u9, ;'=!%A*&I q8qiw6Ύ-Uw^҉$zl_<̱A ]ڔe/7~ߍTq:Srٹ7\aZgݩDD<=qA6ϴ6վgh0ys# l_Q'uCʬNyIx_j0w7c 64=(NucE 6!{t ``P+ˬW]B6vRLeXb l!o{ڧvxK=8Z5\nżU.VR-:Fqٗȝ^P27jŎ3+-4vk=enl'nUXZQu"MLdReY Im*&Z@# yEPMic#'fRw.&gߒkvA(˦ms c"&t䁞sVJ Rр/24UZ3r˦./a  Ť֊Z.Ae ~hSRQ4`< Aal‡'ל@,P[L S4VLBG+·1VeجgVniQNh$&ڞft1r%:coK]|}cU׉ʪt'lEͅU yM;q *~,Y` &(I#DNcYj4ϨR"6䪈_RVZH7"iá+1^TPFM@Ύe$I-|55@9NN6貑Wh#^8[t9(DdQI+9FwAiJˋ.kشFHePZNMI.#jᔁ vnoZ6b^090چ6ӗie6Qw'B_aUf%7EKpv\8ŵV=J 4?4ek0o.ntM23#aEjJF>mnz#%v/Kѵͺ"|n>{jrkq~=TcS:ه_הy"vOm* 2w::O,"IE.`' _П=/^) ~blAs@sʂ\K7Mޫc/7l"R&ЀLI m qA':h t7[1dbh=i eE[DY ҽ>{=x`mkr-hOjOB_C?)E8 ȕXkU%wNsBM<׾l2x 43 P,mʚ%>BغfS}q](IJS_O:CMoʞőGٍpkg#<yƷLǼ{t->'C?]f4d4]će=V",iX-}VXD88OG#٣cO,jRCpyCu76RȣK{.0ݤ\)bSW b9g|;qZZ2>|ۢB=Gb-di$Q=DTnj4a-6k f8H$tQ4zhM)-POϾ_rWv Kc\ e?tx$ӢOt#(ʷq nP ylh$+} =5]VpoY#0S{^hua{4M>n@8|Wn|PbпpRG3+$!.WuL lIב)f( xxu^tXa9ىf:*e ZTC*5;rVoM>4Qjlc|[y΢pD4ṔHUJM: aƼ"ۛP1rRDn.4=?̉FzEG(xY>m<x!,޻g=&~R>4;˳ %55>FWuVNYKI25w'lbd]jb]L}WL sF 蜰¬ϢIZVo8,_pFf(s&S梑;[h]9NGx>ݣ "/0echgn/^v?]^3V ") #uA.p*^AYUOc=4I3׏T+섗Ƨ>qhA" hf؂빊eWk^H#㓡.Ȭg\pSR7b]k( q0`TWm{u;\X{uaeZp`.h g'~еd`p4ꃱV u <|GjKH$,TmkjW9JȜR & طsBۑ0^C^TRPHin'.(1 w ~W:rHGR6nQ>u"Z'Α*`%9E@F'MbP_A볿[ r\EԪLME T+$4֓aח,gُCdbn K`(Hz.sV7ȵ)GV9PE A,\f$wpe2(և 7Na-Pٕ>UXjk!XS=G"@VkPϨH _Jg&aךx/Jڦ/&YD]ϰ i#'qU[n#`b,G/4ɨ 4bIK_q굻|CK3Z5QuLn֓;ce:@WH+CZϋ?73;Yg CWѸǗxR*D'_8]LsX8Gf(5Ijb BB#ʲ2ջP~r}tO XZTj@zc77T{?-zjSdv 󗌖2Z;_P\T0d%W̬ۨ# ݘoǡzp=1HȔ6 l -wې4`0%tPN&NH:3+&x ev? ):쒠G&9YA 72}~rƒhJX6E bTeJY;M@Gq]sY62!%I-LmqVɿVj5 W VWsn+?eJ!eXM/40FƄ\DkPO1=Ny^ȅ4t߷`'*8il2->d˷'A\5 2 MvD],MZt~~ɔ 1۷Î S·Sa NW4t" %CY>QlW9Fk}:ksjX8\ZzЕzg^EM2BJJ6%$8L ~={G+JQfףl0nx #Owݎ Ҳ (#4!J%uO+W:mnH29Xe|(Mؖ};mBwuD=er h͚y Zvo&+Ps8&w}Rh:iL4HG"+DUo R~Rddq/XO]3{!.J=4_ٕM9u'!7F@GT[1@W@b9T@Ff\hhLBLL-9V2.|#=3QlMHو(I.J9:WS@{~: K]ݱ lj Gr8+5{h "(.3{onb,tABt!Mzk B5Lruup O)SήtQs<-N9V>=?be%6ξ~`%@q?+d|HCPգgVU/O֝\bKGiVŖV`TV&@__XU\q#{?uh[TLa{W=Ej a5b-YUApIg-ɓLCO,mS=M;BU[~g^-IVas =Q0rɨ9 i=Ul{i":\*L"i爓/]fi(h 06.y},"r|ڝ],"Li>u|W`: Aq &<[]tdEP9 `_A\)#ߏLFRuĮ奅?oqNr1^`{-*y l۹RO3濾* >⿭}ˆE[{(!}ˁE)o u~ #)`kADk2Q]FyJ2j"|RƬ"zʬ, hߊb*p!N&-^II)8q0Hd}>od]pagkO簚.C2p`TEʋ ;~e @ֵbХNzv0>A#_*fACbmUzIq릕Z|?[e Bvα1 A1'ɞy0иꡥ~R-9L5RWZgGG3`{M":\ fm96(N'whe ` C}`#Rj6zLH̓16@χdRM0>ʂN:1:V.^ 3K/}1ƟwGH[JNnދZ6klȝkSjɴ1*qM 6c²-ᘸ#Kh֊tYC߇ټe|=S@NCke|hſԡ9{J< H|񵇫'>$Pb!ȈrFYD>}x 1G$2(OID 5a`L)vh#(Nyʖ8CE%z{g1SrM?afIlNW֏B>HK[ :\ 6I LXg߂cGλʾXY~"wTԓ 9DF]Kݪf~ޭi=PǀЮx H s*|B< 6 x{[iSjoC(^9G߬IYÎqgƍu Vx}<04;1?ﺔ4 qh0}K-4lYK Y'gs:U\L|\9~{qsO?3}LRx0zˠ:+ ;g]@3@AGQ{WxVM|9(/y> 2"DR.:ڴ@%c8;cINwJ[5^LW|-hQh(?ST (CL}3HvA+bBm,@x-P)C8ce.IIx"o00DTf㶎(^6}UAb3.iɣ*ݰ+lxkxN\C,'l{QlSwҾ3CAWa>v:AѪU$˘pObrb. W߯N"KTEEQ  Zo {,?=z}7br½^=€!${^ %4yh*<(p`-"\"_xJ-yGRd7>TZ TY&o8t U nE= 8tEO_i>@V/@4 BVMpF+Qm6Q ?~nÀujBŞ'1PD=u"c XGQ++vCe\xPReŁV0cg!ogN=Ū+?H=`ĆYPRq]n0f6^@;;^;@ҵ 4+v#/|%(dM%bLj>~O]y;DW[=dlPM-Fc|eaj3<32pf!ojEF<ϟVX|)%)7u}I/p Mr@7Tkv$P!CDV hWHՂofxDfɔj)@=%cن*m($Q I6<嶸k΍Q6Z JxZHrYxޚ{ԓCt+fޏ$gOIlA/{|K%s uPSK.>ȕݟk̦ !(ork$#Vܡ~LBMTW~#/riQze* =u!C,4O?iChL<݁[FYQOj+A(HugV$'""ra[Y^HJUyYM% "ũ{5ێaH.u]{KDW+.;,PN+U(64&>+U,n@&l_ΠdĜ%zz>{Y#s͂ZBh abuTJ*{ɯ]G| > sֹ  5-U7o14ifFϕxT'S!ivrd~N(77S8LQ6&Fq5l>DlZUB' dfzϭ`%5U)SbC#]᠍k >46 nA3e[ *cnnQD;ߏ!'?To ,^R-HX}TOKDN@_ll{抶k6<פvmbu%&@2!īk%0tNea>zܦ6kK-nXi/1*<"7,WGڹ]fr@GEs۶Urm ז6⪢WdRtRsBu,nf(S&V Ym4N{V.i)S _تQ5Mz .$wúhޮu Px`2$"'{&<=]LJTRMuhu"h2wqY_^|#7/_Df'Z ӪPY qvwcB2BHa6O7#?ΗL6"F.HovCw9YA:PYx,vC~  Rxht0[&ѪD]! Ly4lZ=sC|J 7iˏg ?=S|ּU7p1ZD:+Ĭto` C7xa: Fu&)C'uL!OS,ԟTSb^b9qTNz2k[/w#Y4KQ6̅I;ۻλsּDd{5PdU}).>ˣeR WlԁT͵VrְIJ4Y8js櫑hPfnDRox(XKCo0^\=Qm}? 08dϋNAB#`47Y;_{\Xcmȝάh@/O]."I.ب)q@`@/HM )\+m,氿p6KgŚ  %b{eDH@MxY7>1gefЛ!ekrA9^#'{0/]S{AN1'~ "x<*ݱY1@WX&&DN$: 9h[J?5{y}D.iYt1YFϔxU1!^hfZ )vY޷ %ywHa ^3~? mb\2㚺{}9HX|u|kUgl>DBoH^ I#k_hyiX/4sUҵ g+I"xMrab_d:Ln!K')y@ f6vLÄقILLA~TGRM8ħ!RfΪwu\ӡp1>K͔͑†OjEhG kbLtR~윏b)sxcWC'|O5);|KP &uRUR/@IJј@4w`M0IΰUr=ĹNo,'9\$Lοʑfi H)zDf:xO{l7Jc`Bn#s|J !k)fd߱v7*M}-Zd](HZ= sٞtuvTjm\^{m5G%ڌa24qt+~AR߿w\-|8\qD1SK;寉}F6,2drPE]>jzWLH)]R2 lE,uC|ulDxw^PNSG ф RNa܏u_ei%gAaJQQoMmB'!HJ8ӿ:3$Xګ?@[M8b2 f-kN2(؟9! `LΤYG4t P DmzF((Xa:7]Fd!19m4x™((ɸN[\[i,*UqΛh)D>J_ʇ┲vOcؓR"4t{ˋ< F{4^ܩ2g_GMeijn_mC߉@31T$z3ڶRأu>o˜DcObe)2YWe3|J}Uأװ_2,މ+50Z._(=[ p1*- TzI\CnC.kg / 8Eu~xrku23EP4"S'օRւf{| #.տ\'i֚n@t-Kh |B퐅r=^6ooQeQV $DkU7;6/7{#ؼ#Į%Lul8s-~t@ ?LN"Jؤ2qp &!uǯrEsW҆`]s&-F&4/jU lyѤT`w!aHȳY5DKK4b. uC6C$*-|\"+˃6`wHedT3CBi!O2`>'4`zƿcMC||siaA>_طn|_ jYsؑ99ny䠇b; z Xü ;_%k Q])gaԈWgvGpc'jEWue pt'vMoOdR!<;>Nlrcb,?K =!V_qIv+⨗ Ja~}IKR}B|- gB.MTzJ68vW}wKQU oLH1M2(Kl#S4}VtQե&֣꣜TxϕI$` uf>eW&1xs0`K&Yfv|$gT[Gՠ;$!N:k1de ߳Dax΍MMKatպ( #vd* 'Eͫ41"=Y7/1W8c_[ ,Suo͢;jFwQ-d+R4Tf?%"P#u S Uvxy5t+RLQz~SWbFq?.J;l-zi.nAnWH3%6WU~Ů,ƣ5\ɩU[)E Kx)Jnl(6!NREl=Z #VBC_Kٮ?9[K 5i tv6IJ>b8ePS*d+Ov ۘP!b_"hMK0?C$fg7(U@4Tl0pt{q:%/sѕ]} !tMyDU⟯"&eVd L0%T(T^ꆨQ+Z9X0+)[fk:g;f@Z`Dfl4$69_W`InJj6;îJ L̞JJt 8!z -#BomqaUy.j|3D"Sh*љ;_x!6yz\j cM,qFu0VbA[gB p~/^Cb/`o"4x2k|Yx`_6XllƦƄRyOҀ[Q ZDI5VM([2Y26b#*sH^Kv#T=~x?Wϱc:^1Y צX «Jn:ɰ ;depSMĶ'?M~gY`\NẙBɩ˞D,zlLc4fOx~"P='(! Ac}Tyĺ@ǫwΧӫD o}L64s>}N[m"l1PJ|cce7\OkSu%0&U0'8|H%JJTȊi,95$E{=姲ރ,@e-C69SZ mᠯaO^v ^ed*\u.i-a7+YK)5ݮO7gZ~0'}J4dCq:H?ZĸBm1@z{曑Ke?Z;llMܷūJs+#&!"&дe86[ PPAz%C%*|`, =7O]ܮk 7S%8uD\K?dфp._\,6ރ.M @AVgN/A)́g+gy!%%3b+ ᄇ:1Ĩ E(0sq83hȰ)q%Bv\5)"/3kh! ]WI+}%~d{kEx\ qڑ.*&F\3x!ZLZ0]ՍT1R2H,lYJ |:0-2am`4Y~`4t/O0BK[&rbDZZرdAQP/QYA>kdQz6T'Fl?|F9/2bjU%c t<= j_R)Lp$Uy90矝g}8 lc~Ӥ7 }@F2/U2'bl7m9 g#wF%z!yw*^g1lLXt}V|"~Oc%A;uԻ>Q/ |Yэ V.X`>#20*Zm&A9ч8j?E?&+ &@0=pp/6>+715 m(WHtAj a }chYVY{:KNW 8YA:)AĐMs^}:_wv9xwyO $Kv W@$#zQM%֐nsשRx6=[9MιGWPL>cDf(|48BBх0_QXBNm1*6O;*RczNl)bV-1w &=Bc6BH`%٩x" {ƭ|Pс(UC fXŵSߠ {j R* ,T^lo~3h9â/iS6GcHiE]J֗K~j"nZ qv{}/kBN\; FۮkHtB;']l<-^,b%3m1W&]lbr>\t͇eov Ḡ(Oz(ۃ`$j,ZׅNI|_oRb B -|}CmF' Ocn}aXC[iŠ G J o V*SM/1{Ca=7hk !m-D6yFts:5'fܾ=:y E?`3O*R74*@ϖ-$А:"LFY`rIF9Ls=6Or푓{2HLMrM;$u`(&6am )W67B,1 ȳߦ듟1ܲa @*>Nr8{Y<1єj"grGSv,dW2+P+㲣F44Q he fIosQ|q<(;"gUt_ }~ΣII1\w M_TSfnXa@l1uW!񰭑#sy4iyZDUnF-,<+(L./ۻ ͍d^IDћN!RK5JT}?J- o%򄉰UpkC$l]xy5 Si 9(IU2=P|®] >P2aK`⢑s_ Wc<8cw:j QM M=Rb}VFNcQ)D  :{p\,Y?J(CSu߮"*#Tɯ%3"ya`w] 3n eKWtc|VNX򖿺'7c(Z}G#.+> aMIr{*):OxsCcDPrgFs)evv=zQ|PiaKݫgJq@N\œ^pS&-/xdGXfHTxF"dQKK=!Kg@FrmjGx5<,e^ڭȜǃG5: |k56EӀ3=xvjP󻡿X׌^=G 21䬓[ .mo T)(b0:/wIc~9"Sn"nD߂3~<5gL'iD/ɼOF)_OƦ9 uUK+{iX$err H>OFHLFh3'EP0sH=&:[6Q11}\D9S'튙L1L|HZܚVw!F ̈b$!'~KR+J^rQ j_LDO35~p"fA J͓hn8uqfw/u:$к1Z޳u PbߧclQSl 0V[j%k)`),\%BN?\ҷ`Uץ fsa:.ڕ,^ۇn.>L|_"*X[sFG[L"s"Q 'BEcg ~GCVg:֜o BRW\JeU?vטy~5 73rҕ@ Cې[6,9& 4 E"P6A W2S3t<=IP&B0^G{ 鵱4vX+H?{L;[$g/R~ 60o;daV7X 1J.UQܺTgٍbchd%^[O՛ί ˪!2jsIafB =g#0y"efc#Q:JM,J^)vHˣ{M/WMx?PgPZQ'rKץRYlYe4=Ku~$G?cnA&i!8G ]̂$8bkCoZYۖ5r;C|HΣSx,sNh0uCϭm@j·ȭ{bXR+L!`s]%x\xĔ& r>q/UXfߦOzqs] f"Fk0υ_SGDOX&vڭ,eHP0Sh% st֮G llA09e7I'ҼC^uysu[B' *IVӣGb뱛hS lDZ9}T,/+~pZ"1 K2 n p4u`- M6ui)K`{qi%̽GGpz(7j L:X2´Zg~؁Ѐ P^!dUOZeǨd shIK֪{EGMkoWVꈼɬ{R }oKseGgЇ}G-YMIge^9f2yaG=0}! 6^_Ϲe v֥J Tn3D֧k鐡/_u;Qpu]zK=XֹXv$9Q 7 ޳$#J=U@qxy}/X}U=d ?g"Uz%rpO4m0DɽL}:X2bUdZ!}`M58h#VxSCH#ڶPP`챰 /3]h]<5 UII<8\]"96r#Gĥ>gh09Faq봦~iz y&E2fIYz)$~u$|J:ekAĵ}/cuZA+i tr^K0~*ШF9,Frg{|02']$4h.CzX o˞lO|Cb>J^ӊ/Wi5Ej}xKYN( v`u'c8 9 ~]QfS L#xrmFt n&VC"CC0"Pm* 8@jv5X/n.GɀKH6OSgyqlۦFˑP}0UƼ1&!LIk7:~K.yٷ$ _B$$ǝ;X<̼X%odpP5e#<H5qLgRs,~5k !`]FNҌF\7ޅׯzbmzn]kJ#?n; {x ʵP>  ¦|+pkuzg,nc Fv)}a;^Yimco,4d8(.SFST▾"SI8deGO<&θ5JvE: \S9nUmt5-JG)J) !KۘbWXԭL(/|O:qBdFnQXoeD5;qq9=MUYN"X⡑gb(Ȁj'T@VٔXJBo7RYnNVwƻ4MdZU7BqvUQO>&0|gC -).R-sof.=)Ic`uliMџ gr'yvAv2j~WRlZh$ '\\q.IvUJT2d7m&0/~ӈePD>M? 』.Jv4W h L~'lalRP SU2JD82vTkߋYv^_ <KyUa VyVn9?q$i,r4M fs{Zm*" iQлeGwP"wߴ UfK|!#xwRǙ0j_#/oY@Z]^}0]f MӻUwezsVϬfzO3 S!բjҵڋǛ?Pn{[G%;P춶ws2>q|Rv政H;7\hَ3ͿJ4Q>%38 bln~1[Yee@Xvu=2k8S߉2R~!5yU8gxi ooFV|ykD l \ftO/>dP wx0#Ws#TÂ-lB[+3 ǐ XSV[ŗh@}Uڏ%W __]Qlyq&we=tu@ *s1R@RKsws<9+9_:iEi|=$dĈo˓N]>* f5^Qv|nrÏZBf&E*XQC7ߍDŊe@vޓQO >5È3暳 \P^٨32bO#+I}e#d"t=Stޯ}r[؇L1 [``2je(/A"n kϼFH54Y2F92Xr,p>~N_&e-˫'.\WݢL/~{ GT]Mۢ!xQc2bxGPhSsӝL84gL[5D8ے}MiEGC H"V P"/߮] S}icCeTں)cdbbi6{4qp~%UZY1Kov285BT\o;@N6 %{a3  OE[ ΒC4uixa# ~"}4ď~VPi"-Y_`4w xb9b~ҋ(hFeTc4՜OVw.yJց5&B< M_URF ;*#NF]GS8"8\uN٫B QDΩ+_j+{t%$H> ]Z1he҂I$õLجX-'1ZӺS튄t$yRJ8"jyD$n=>.zʕKV$ `A]mII2 AZ9>mB~;Is2)*ïtn2r9&.IvW5\OgEH/;Xm:2(#%$" PRxęM9Tsʽ-DQ-n$+H &׈&EߕzO?V[.eµ py[ E6n2e@'~[=w_ emj<Ȣ̈< bШEuKubr4K3ߠ)}i#!:Кb"yr}`:ZF oͽGZI G @Yg.>u5@8Զgo–k#yJ1`hͿe[,OḾwNb[{zXUk?r"[,Ε><9 {B8Y^De8 eC@ηBZbbx6SkhgW5/bgC%)7fz,E (g-EۋϚ3՛`'q|˨L^io= nt)DO)0K0q, :Saxy 5)qqQj(?N#5tqJP·z%Y0Ze}}ـБXX?ZZdjD[#[Dxyjzl2X0s*ڮc>Bcٴ(69W-Z70zp![]FVϗGVY9j" |\Oq[Kfi=_r"y)=5 )cjfG̴+@>w!Bi@CTQ0ϓ[I.k/s>ACgw;U|<_''ǴDX|RT4M-`p3vsH.YϸX#]rhP2ǁU1.+!`>׺x<Cb,w뚖mIF<4mX<)?r7ށ*^mfd$jp&<68-U3* ^\"6H5L\y-b΍2rU?:֢o;`VۡJ^ξ1xcNܬY]DVoM2랴ۡj)E|.(yQ5_w)>5\E7bQʔ ipr H0}s~$,~2'?RKPA?Ǣ_J)pdy >L4HsqؤCIir0 ,F#,.8x^ݹk(Cr(Nm ]4KJ[ B|TO#>$u,DTl }K^j;\]&0ֳ_`0{gwb^j:ۇ{!7.x2n|M)\ H9*24&BsB$<r\YN&~SQ ~J)cg8v#p_.{y??M3TdZ:rH+G  أzdT7R hwtd{Oz{MIxMX>o _$|MaeMq16T*r0'e'uU\ #nX6]\^yzzH=ů), Yڴe (vMW-ܲCQQcS:d5P[MZjÕkMr2Klҽ׫]ws->.BNh֑tB)$]UEM=uDRStJgk*oȸ@yV.Q>m Hsl&mMv|-XW3^C[u_S({TY כsdHmD&$'{c縛k۫b@0 \Q/c!EKl\nyc:$mc@߫6c-e+iGOծ ݍOrqO4 ffð 5BM7Sl* E"D:#Ip %4<嵉@f YbV^v kd[ҕԠZr;o'4Jo~i$`=."OML|Q!B&biBǫRʎWņA]=+=+ Pr &0oEoێu* ݆qzh@t zcdr*iU~dΣ*>7Kvx}^u8Zz[ h:x"#bYNra} 6124ÕdW/P ^=ro H JڐՂ!Ã+9gǪj"21ݍHRۜ UmT+f cWp͹CAeB{iGwiiş| 2#8W|h-JsFaZ.7Z.|Ω(Ƽ(7Z! )Ҟ|䰤YPlh.;ҶUG?->-%.96<5*ZQ$J40y\\rF^X^E}P"7kxYްCC}7~cAro mTq]#Z;{!́NӞ-qZ{0rRH&0RoN9Zpimx:?qk\#ឮ/ 4x #"Sa PTq{T$d!?ҫ׸DdlpšH~͵jk7!u{ eW~9¡S)8Trxhf7 }-P?@Hz=Rg j ]?l=ԼQS+r\eKWiؽÀO?HvI3+rK |:7 [9uvnM@`*ê'g[^7ePH'Y,t%,1jA2J_Ff 4bٹl/2 fX‚a7da ~(OB) *Aoޱu?x*jIS2OO |r m_ߪkR)hAAEOZ U;/pm/}^Eުt1j鐞1R a#$/jER%V=v}_:keVgvL(jҧs8- fjۋdG{V4.:Xvnr{xhXΣdBm@t^w*Sf.[=忋0n٧jӈS *<߲L~7D40 A,tf̑2Zf24(-'Z6"nAg[ 8(Gh4:܉+~Qů1b@Fal|;{Hf|U[9b߽=Qyz L` ;h98Ft.XkY7ܵRv K4Rr=Rb3ķ: g.4O7Kj$JYƙ4\H"e4۝#o\g0ߕ7avhјaE\t\4 \&Y@IŎ)9ĠH`1y\v?|Y`SW{/|uQhv߮O5SLzJChId4WQV}cm־Ts#UMtۄ=ҪXX9kqNB @%TT; d-w >_H>\8/}8Ǟ+T_{/ άƇ8MH\HTrP%7O@aAu7=%|JJ7w]'VH[u @{ֲ+EVQ[ 05ow7;eUӖuKoķޞ%;L^l;JCU8nt͵aڞdldMOpFK>nv_f rPƿ˱u;΋͑ܵfO'"JU*_.,PO= -/~ٯe Yյ9ql䆴,&< C˺9eC}WIR my+x+5ҍːޤ闣gQ[+ oFSyVkYa0TEK i͞b#XyBjC#R?eyDLO);G;UCPlg:ݒ <#Y{i}xZEWD@ )߮;\WM*+'R#]ϭ4Fq[QX(ReFH&fqա"n# xbA-ߋӊIk93Ci3bɊY74,-3vbR 0v<5;̧nɡg S3[6kkN*W3;s6kQzJ!OfF"P#>Y$DuS562m=X\gqKʄfWEӓL$@,w$Y_pX)Z$zhvA?OIsEf)?ykv#$c.Now|a^P{\vpٓāATl!`@&8E&Jd2fF.k0Wo N*"BGVʿ:雙'%gӍbU UO".NA'5/؊Rhl'`;Z(O{T!?]JW__2qWo1tUO)N"c8"V6O!OKCyw=NV| }ԓy Q䭩+UA*aQLZƻQu{OGm+`H#*2C%>SUu&5{Y]cZ7鴦j; iIvS0v\ȉ/UF ;Dr8N68S~ ړĦNÿ,XJAzyz;0{Wx'[Múד %nt/_m!܂A@,w%$5[RL*Apu1'W$]HxARn a0"^Z2_vGrxu*F^w麃?e*6|-eWmELQ*Xoh/uQ \&T"Dy1-( [ռBTc>Dװӻ]X%-32~D=_po9 MTX:d=A7K?):V6oa~>/0_ 0%,B9$ZM}փt*jNG贆[WCY8J,^֐qt;sгZ-#g#$|N:gY+HfA^}4$cu)Κ3XwD+ U^k#${Bv ^;# yZݖcT6l)g-vPڎ2ihV[Â֣#1ˎTlPt<ԼE}E !?x4lgo&l8jD.cVny<۸+( 6`uGlᶊYǃuɡg HA΃V@7?8εu-C=]X$\˻g&{Ӥ㝌XKSkϥ :ұX^z&ӼU5PUFv5[Jt\>}P%Y}(^EJ>l7#~fs f5 4"Zj8*\r0Y>,/u~b1ϛJM_7e~'i'e@)aF{SGKkvXaKViZYl$D&q=7/_o_[2̬iZP k5IopTf& wЪorQG10oTN zJomjPY8DPF24jz c&Ap.XLڎÌqtԴv¸$ȁj~!¯VaH=jS\8/^Y@欗΅N&'N'B癑 j.-dyk3x&pOk=ޞl;ArMVL-2j Ϭ(OwHk6]?X,tI+T ;@V}6 BaOir!˛ E ̽p%1^~]j74زeiu{OM%O6v~Aj'(*ΤP*@v\s%O;U e?"O:/-v!ϳvxS9B1B(u$33BP.W- +1l}l4(\4ѹRl>B͸ 2"~x]ݸ| )bD)X}5ފCQ=|M^Y]mĈc–t.&4J7xC ֿ(McV'ySV$| V.Rwk&|9*Յa3Ez=#\JJ}uAB[?Iʴy7.`n/LrUwӂ9 nm`5E{QU".kn"ڦwc)>w1F'{8r0o8ѧєq> |=>z?]q}'cB_@ea GǣX:aiHDl 7NqbN1  q#]f^򨻜6>ceޤx.g&<ػ&Q.,_)P603C(ڙ2%i+3[%̇E e˝&oӑY_7ȭ:3 ldwk-6boG@ JEfSBT^BR|9E/ތ 6qJ> ǯzwNSoo梜Ah!ҭ-BQ;CR!a tfMK(NXz.iz_@ /J.0@T1!^ 7ʞNJta@W`&{mM706ZjyhyЕpE0CFʿLB9VRM'th喢6^z JMQ>_2@٘\uZ5bs$rA1ԴE#~Q_$mnM (…q(MtIVZ̾*N64SNWvFZ1^]i[(q\3B#jI*o qEPVuT-W.:$QK Xb_HY tǧťt]bH)ؿ4R J"8]wXEMՃHB,hpdO6ypr~RG'--NQ)9zA1(-w(;TDE/D jrFw#GIǃh\->t~8ΑmT{(9=Vk0rQc[i-XbhSlTFyStF(\J)uMHygPK{ s.[G9(o㢊{@b_7Ҕ8X4EzsMyO8V%G4AuIetȿF[,HBϳp`D?x>apʊ5D݉og&VRUZUEȰmkr>7`}xJ[fDwFiR1mp=qk8]; {5j8_n[FJKRZ-;ʇJ* #ůג_/TK#e*ůwƧ6e[JtAU@nDPd`Dxԉ@UEÀoѲhNR0J8@݆?D]^1e2"3 %C͔]`X~Ӛ}f荾WV L{<#Lc~ӗ3](yކmS|n-ЇQ͓fans y3e<є\3knח3 +}e޲i-+~l'앵.| g Gqsg IS[}nWw Y΀MMcQSr(TsQawm^);@sE=y{UǬk|<řq]jڭͲVw f׆s&\ƸIofrȶf]KDGy)}0 WOӂ+L'l5nh#a[1T"4r.u F[EX+17ӷ#iy#ݨb6LhیtBX$ ~/CrL#~ׄ{w~o2~iOϡ++텩u(leJ1'͜lcd갩uJ#ňB[ Xex䕾gp,yCȉ,U>I+(IlMQ Fw[5wW.犽lgO@YE=̤m;]ztP7Ѽش% 04LaxW)^e_dtfVV\QDdK"W \*!d$o6pvFTHD-x KЭ1N5(]vr7(44+fR&F +)"r|l&[VWq33!'$Ȃ[R{B^pզfLuLlSt7uJ* v[d3Ftz(G|c&ȭb"Xg9aYa6M`^Y4Jl ܊2F0.ZJPei)*CĬwrᒶdiK`M& -vV9Nҙ9 LqzYGx* IIMQghJ%j+.:G6*>DĘdr(L,JRi?aJٲB؛I7fK~;島"* 3x,pvwcX?)szOY/vǻXױl> |Fb,/6W v[߯Y8Io FnCPsb e*5Wwy.1'\ !s(#`bJȆPrzL*R7ħ$ZAhr(Vh]Mhh'Bi$K^$Z;  ^DM ,zu!9z!$qD W~{ "?T0>"$~y;{fY4}Cj;UBa47;Kp4:'bǜql6ٖ3=4mf- &,*fNTzKVޛRx$S2\a 1%$awEdncH)Ak}lZ |C؜5WVP9\\.JӍ3%%J*z'o"ۺ |Li\Z~1.Q%yMf'\KG#; sjqd @X/L$decxy]w@&HNt~CERzڡ6>2hCy\'GVu* \}*M y(bfaf1gJC8XFlWĢ_ b^ӖRНj&vjds/aOtg!$8f{F;~#}ӌiyAjօJo3 1F%7dDT8JɵS6/B!uy 6S%!p@D<"SgFy2amo޹”=1ޅ│{χ!.r9< (5Ӭ Jr(;@mUWdcQŋ?fc N kak Vϊ뽈 nԏhdуL0;TM|-kn^K]پ0!5Xņoe߀qI%?EW΅l"a-.Hj%3';HOm&`3?#C4 /]ky~_oL_=u6h|xHƥy}Dby,UJt/~#7F;u2>`U[s}e,eկ:Jzɺ ^0|[vDVEaGki pWb]2x^8yJx{ ʡ HS}jsT2Jr$_LrD˰rvx_g{újʸ۠WKSeϴ,|Rך4M샧fuy2<<6G#QaP>$d6ߞwy.>4 R ,iD%idQN}Y@7?"LB7"nѢC_L̡e@ ;iW#ǥٿG6v/z8sOѣWO! D gXOߋ1SЩ 8jpE!^CTRMk6Ie>CR:3A:Tl6%|/olp\#@0Mo(8C)JYr};TlK$cY/I"]r44>ͨ`@N rBC%HmDo"Cމ>^yD|VIz^~R️62rw`LX m}k|{Gӕa1S' X{E2^s'q.+dWv-x)0+WR1mxDE NX8PARk-Ba0؃1 rH6qx٣^] @8{*iN ]V8I;&RC)%nea{瓧E!![iWߠu%HJYDP-'_6H1/39͎%N4p8c)H=wPp(0L!![ţ!.O噥!b![NUO~œBp==/)b #nDж(A5-nWK0qJípycg%|g-Ksdjvq:~3-1c_M= Uo79Pj 6Г(+j?;Rhwk`UN8 |@ U\M]p4qݑp>^fwu,-p/2C itJLE m;@Sz U2 M Kࡡ3cueZ o@C 3(o1 tj=GyW2oVN]kHdyt+R6Jm<tGq\a.躥}Q<"B=an܋|Ba(,+MK$Xo9zj}d,]8, 87cV|T9@"MUqBa0lvoI3,D)p&e=ByФ/eZE;p'$nIKe)2KZC'lr0ٱVB|{zn!GjWXE[ 5&MnʥWZui{oᝇ_+m# 4?`[@-9=Z}s@+uyִ$u/pP|xr (| }c^R?]ػ B #B?m헰!37:bBļ:=JY]`9ǰn%QYV1t:qK(ciac%7|L{.-EsdJr+/lsg*Hc3"-"P˜N&dhP0xmS$(\Ŭf#|*Nxuq9bŨ攡"@m&_VXg@Y3GH'5pN(X$94\,d}`0oz2>4,WP Ҡ؈͈Md|wjo"C9mƛ^9 b?]YkYr=ȃU ="D0akᓅڒ~pV;\ 뉄lo]e壕!JG';]9zt~n}\RYh/rI6:t*(||[w+8,}WMhc$pNq#57iuDFpEk2apbhF2C*Жq R\&Yl -<7{&UZ9T:k4k EM@6(K lEA/\rU+.Ր0gC"IhA8,nv;JzVѮ?3WV.wޣ %@g fBJ]%97,oodce9bWuBw-);a_խ^rύKNi;G#'QSmA+ZVT4A++k!F c=<P_D;b'0,j *vl#'*9) \iț4h"ŕoWd6cQUno)ez~Y1񫒳\>r~! YqkđF9<0[d fn.;!c0٨B3I[_߆l۲ǒ$CewU7[$)\ăQ}Wx_WBb6|=HB4-^pќjq&I/ѳ'PQќF K;pN*:6HCT'h"MB{NA3! t m4='IX| ΢OBo_^Ϟ]A0TĂZmđ숗k+GwNʰVEHm&L/? pͮˀUIVlU\QU8BX~&_A>ISƒΝ:Dj4mi1RßAe&A1ZSf*fU2{2ʉşMaZxn6gWBUIr,57p/М[G;)L_NJ ! 6#x1uM =Rcw|#Z\s Gķ+P_ i/ ٓY?~e㑶ǁf]r$qmwd>r:[HuU8F:hg^aء7L=Y,2up5J9)ww"+2{Ӓpo;ڍ"JΜK1@Q%n8^eEj]-4:W3jqB["b + Դ_"#RC51$Th%itK}jL,`yڿf`uwƥ`$bx(]R;~~|$w3bRCK?[^ZyNwpAUԳnDu:/̿W`>Wc_19~ eWXw?\:{opșBPC6Q'4_ 6GGʡ癋*@qe&0pq( _R4J'drmx@qqh+;nܝ&tWh*Z8/2 ݣ)^VivR T/-rXAeŤJ́ 5~)萆qįy搸 i"oN"[!~GYC\IhGW1pýנmѐp?~q iqu%;I V s8qBH奭?I.) t˗" U٫vko0QyF6K<objQaYVYls/}AzG[XG">4ݭ9E9R;,a6eK(O".afU >b} V%K=6De}?SC R {_n^y0 ^6dky|TnW0z [ɟEەj{Eÿ[R_\wiyWp ~Fۡky4x&ZkAj:V H^+C@.q}a}}Vv~կbFŝskt$*GKOKS j._o)BeXtA!е߄E-#=cj=I&9b;[Xv :$[Y''?eєp؊W2{e[k@!d8ml }HltalQ{X%Y}Xrk[)'1[L1Sv>Emq30%PF.|~ @P*V&?~eC,fN}?"rdq%ÔLRt ;J ;'n WD{x) A m8t1Uh'2:* &'D:4 uaw5W -`8̧6BD⥥'!oaY`M> }ߪ|Q[gq+gŞg|)pj ;= ԇ~2&N OpPp:Qj+w킡!A =:Pд%Ui#΁Ϣ)veEĴ7|ITA`\4ϰ>s%Y@j}ªxڸad nd5vq`JDGg`2&'̲>zGw Ki)A>5J%hi)fn>P`Sm-g]ܪR1rdjH0\eBt]Z' ?dp lk\]{> \  g{g# .cn%좟$l3v%N &ơg֟蛶B7w?aoa² Z'F-ǢIl#:"RA <$ʍ'\l7Ǐk\)DZɜ9N!Nׅ4}EgW<LƅX'tL&RMeAb;S;Y956@@'u34c ң"q{ Юr~CkZ <%?}{vkz$bW.y TW4rI%;_l\_ae&F*B#ؽ2 !<`~yHYy;|kv۳kJiY$ | O =&hޑj3L Dxok8h4S\\$Yfτ̒fa0ٜ)`9J' mDcBͪ:S%XZ /A3bP~=X6_{g1ը$O~oJS ,|mH+6)e0*0vTo`yBz7_{$/1Q[zJ^ȀƦ z_1O!@?3:q-uWWju2IЩaPlc6MCcroD*O|kwJGT>85:9 sxUU,i :4z(P}Vf⠪pN^|iQʒn34[u mC!ڠ1t/v69ЛUd)O/U3|yR4m[ M&V>88mXkBpIEXr =ވ;`Btq2/#[[wg<hބ&^X{ lfHB+HF( b9t0sD7K~܋Jtz5d ~<'D>_ʅ)(u@•zuL}`W29|*W_Lzѓ椡HڜYa6>V>|R 󂴋-3!(hbG˾wjA*)(Ŋ'+b[.سZb̟bwTAk|p# @J:v9M[A#kSMXi!20#zr7/7#E8S|a}8%=l3Ω <'E(iw/8f2ˁiL^i1%,*9~zUkc2\Ur~bmc:1;^E2FAM{Rnt}jPa@0p-. kUB{n(Q`^6+J[w"eVUGpQ^_ oPW?7=zR ;{LB1lgKAKB]8L9"(-Q^VUO|FT"sb)j)Rl-֗#qߤ)B]4u7\`#Yy3~8{`iT;ЙG9.џSeIk26/ӢzuFF;AO8|ˀՔ8 } FUփX9->+2js8i'mEUIAÉ_iUhEl L!ctg[wAQr]G2CX;QRJR[K  NUk0C4i T<B̳?aKj7c)iv~"NX@J^o${}lE8Q$1tH֩}gM Z.iʹLŷzy%CV ~n,+73U{T|,6+|;0'*nU[K% & M ΀bEf Gbq W|k eN"/kC$3qyvǗN>\ 04l@k$(ǿWqʷH,xz9-Vv~e|HkWA:Ά6/n7Q0b={=#1ztia|dؘ̿a3Cx;3Rsku a)-ʜ䗹aR [mĸn[VTZgd%>6\p%yo[jE/rDp.BNsi'J36KeN6 u+_7!*BF>!:`CqJ"e-t3qr x; HH 13+_2kkɹg+ÑnOʹA,r "gӳϽaV:kѮkʁhTk +Wls7rĆ?-ۍt\ >qFpHANeAD8oKg,h?d4~Z8TV69 bް%zU&YfkBn2{ln+&X䉸Xu/MϹ7:ČVJЭ{(Jdbg-[W_-c^xXvNc| ?gDX\, H RK'<c$c鲧D^PZ \Jds_MVQgA tw4I-9]3! )Ccy6IA;@s )na UvXo[aJ=lv=k S8cyY5.m_4dr\~hbAKS(o7duP)*/v"nZ#BK'F:Bb|У`1i Ѓ_+m(l;#a4|=rm5U˵e%Hᶆ1$ ]ifEE+q3zA7GL a4eX :뻻Fg!\[][ p q*:Nww,:*h:3[/.Z^']|]dӃB &IN1MwʚԮwmF~gMb\#M5lO#`XN8MN(|?tThbke ?7}r&syB_L6X.u6@-蕳mHkбdTLe]/tS4UlwB}2cI R߇7"sS(+\w1a䵞At q75 `~?D]pC Qxȁ 0FE}:oEgv7ѓ/% O7 BHdKP6 S"&`n|QYM%&os[ 8*S}yCB!4 ="~F)# ]ig>G[DwJIo_s299Ai,6kl>-YOߛ_zFQu:]S35):xCeS7$2>nyv M>:@aB` ܩLic()N5MHx9lR?OY?] dz^PѾUyID|ka7JpyvDq؟d/-Fڐcm e}*o>=k6HDt3^T~y<~:.d;ԛ-]>;?U\޻]4 . ycSEL=g4NrHGŗv-K- >VQ(!MOg5~7ƟĉSIQ{^P6a=bD( ;nO[O t@_CPlV4{} `AIozC%G2ׂm`Jnx7MFv F/'\zb;ƙ^h6$Ga{e=ܡ6 |1R`֥^ҡ*sc7J |O g#pU5?7˩[Y6.*r~"Տj"U$d2I2-}e|gͫ^%57g ;`͙$Nm%ͣlҽ1#/J] =aDZQGϣETL",)xa*m~%OeC͵k|jJ…_m |p6GB'UVC3~ 5KD9~'X9BtY}6oɕ-p6[JW}.+|7Tp)t%'72G+Ʌ2ww_b>e,. Dn6%M<D\xNZ3+Vs/Sh4+fg ֬ /Px#mݖQԵ,'Ed)D4KܺL3X2=ց(ޟ0: ' (:nL)N;sPppH̶B/j˸ow|N¥]70lЊ99ԧCV8 ,q5R%1ۜ'r mlbل{ѩ~>\yuvY0)Ri~5KgQ2?aS"&;iRCl@;h:Pu(Mz $ioD2^rIT:ҘO2;©^{+V?>g_KXO*6ӟXB`5=KGw)l+) 9@MQ<Q-Z٥z} P-v">ׄMZ8ҿ YjAT"hǨ[CAiCC/xx/ѡJ]RJH*;LlJ䫖h(kGFlv$iĤ]IΛKr}ajgH?\'.EkQalRSv:TJqY)V/][BSȥM'f*1KՕ֪FLBHsJ8E:(?fW m{<۶[NjFImK& QPyI*%T*,&rarIsuTt EO-WeŝGHC4>SA˟ݙHֽ..qT3l!/T\m֔:M7 ,ۥ>Q2x:P Sق@UN4AHy7QDpVu3 @TxL\^K'㹋dUkKkG-Ƈ-_}`Qf]Ld*"[bue#JDVh jo"*cs /mŖDBݷL}"q)\KXG6QeZotG  = U`wz #:om-_d)ܐ.@i6x wD5H@OI'l .Gϸl@|s]lC]Ӓ~X=ChKSa.WFхlWj6+d~?bYXe,lUzё~=&#ITVci:BL"Q ܸ P Y.jɍ{o_6+EV!bJjj `ג.ɭ8!?:A9U蜲X|i&]ʀ/twf<֬;*h ms.qiպ(ρ @qCcG̓i^FUdWj# !q M`ewbgEĿn4!c5Wy"̪Llj DROC(9U^s8w TR*Lqqfm&Mb },6IcVu/26_%߾Hur`bqZZq˓֦n'8\Pc#o(u|5F9AC+m9=Fi^ʤ.$4)`Hj$z겷H$6@ӌ_rw!m{ 9K-/_9%|&(RPL'n _KVŃoԕӫe?8to5M\,@0 0OOS`,t !~1ң\HBlDI+^&EaH)q.ݜ"n>v//vR^mw )_C5hÔ Zp3, 7 ;{ɒ5TtnEc ̃V.NcEa0 So94jIګmB}-IR&eh 2PF qęR"͜j`[r4 E4I9(.?/Nϥ^ưqs/!IBm{Ik:̧{zPC4mlWtDSը3nF#)<'|MvƾW61o{/3P4= Q@-e11{2;L ]\B&l%EfWͧ~3{'| 5&_0!g1‚ȐȺ"a~v%3 y?m D33CՄzT)EGzu8`i܉vH,=io)^(pH`C]41MsEIQsQ6AjD;hHl{c_|jVRi#ZE>\,M;hTwC(ɨeDLS3@C YWqmd`꯷ C=Nqb^ fWC8҃|bV+KvF 8$+&(dx%hPx9q3xg>A2+}Kgp ~D hM8k~ ;#oxea}>TѣuQ(`ĪL|,ls9$WܦʧS؎v2LMܵ2 ȁKwT,m ~z(&BV21~#o%$DcYmxQp/H΄cáS4B\L{]uIL)H/ gDre~Oٔ JVo77Y4Z`AgSuMH`:=߄1б mkP-1m9T*soRb8^^% ![4Ot$?x)c-IЎ'o;#%>D5Y+JTr,0`)$=HXbO_+U3#= !M|nű-M8boBGޯ=H-%RޯnMia6pa!4$Qfei'3?A~= [n5B+\ cYJ!6)hמk~@ݘ e z.cy;aEP/%'$ѹ@"~ >1x>1;&Og\۩?V< pXlu|rRyTZP eOM& 7H;m-IM f7j /baބ٬eeusIb '_p2Zhyx1{2q-eelϐ.}I3svƬEMiDRg{Ijα*gЊP^EiFѪP-:&6F:,@:ȒUiR{M`}i 1]?D俳mCKG(޺Os5L%Uh$fmPM頺a jՁd OQnpU.ME?1ꖒFUX?e}|lLQzH^XgXr]^t.%Z5(ibL99M $B2#1ڱ'ּ& +΋ WnȊduL7rf @ A7GmZ>3uo8/Lsj*-efmr>9TZyă]ngi'=}&?gUD?0&e9Fnl&qLӁhh%) @Jځ5dGh:,fu V8ltѥ eOXuu6`85Ct)mbJh*nKi !T1瞨%q>mԐ#3<@K_۾2?}r>%Ss$Ie \ mN{N .  JJGV ͟ bK:;2{7(4P:L_ii)(>r\Z饤l"4F8 Upx6tZ"h@^** ѤJQR=L7C8 \lAϤ˗pD(tH:s#yjo*'=4WJmxyi I˦BΩu:Xb#!'&pqԱ?LFe4yb>(\/%5u)_s"}T5G񭄪.Ǐ2qpѶ4qf sjP?zN^F9a?@r~ $^Ij]=,7@RFϭX4'e[?U$IT |);GQ}J3vsgPntϬ$rz@ :+HRt|0=#;֧S$.Diuk O&OW?Ls;T8ĀxDOei!@boexRnM!׭z7gS$ [&64BKp&FoZb1,*pCa^όk|]15wsװ*f{ >5ZP,HLZx'o c0)Μa| Rҷvq.Spl׸%0C\OX>zB-{PP&v h}M<_g ~Vu o/`6<#Ƅi6*@$^0Z]OmR@]v\r]| ]7PXsyK=[G2@N1C+-5&O1HnlzC ~B#QqH5bۇ9CT6|:].6y\Cf Nf1ӹs)Y qlYpۻLskm'Dd5M|/ מf.ZUD  QC¡4~lYh#wC\HsXJ}xC)2t/>?}[SPW#Dܝ׺l:A*HU5  r?HLOhB Atnyg 1l/,$ fT=JH檍 kh˫d*Vlbұ!d7t4* ~ܳ@A =%7Pޘv_ƚߵ"%=Jd{YLRy28Ro8 l.M_)m7/k7o}|XwB;񣯃2h.NoaZj}iSp< #tJ N]'_.bh²,DȾwUlY\iBݯețu*#([kt.=V5# [UEïF`OV::W"8:uPB.P뼍rR RgZZNFgۀ&Lnwrhぃ 7NF dC0 % ӄd"*1þPk@%1>toc-~z?Hb׺Ďd1^j Z-=(UP8K&'^7:2}xpGϟɣ6B^7 *uӠx|N+hECd+ա9$U>̿0)*Kk hN8;` JiTv좼$[Ka*Tu`ͳX^hؿCZnkG51*_\+t 2it.B=*6O]KP7f|u|'/cz-l"ʌ"s:;69 fz:PMA/fXVP9Hq1cԚeM)-ZRPU{/BۃqۅY%/ɂls@'ev"%|y}g.bĜvEb`#Y"rvc^ }^U!yja[}&4=G-q5_}q5J[0JCeb ]Cψ(Qjhgz|Ŵn%$ôfk&]c&iޔVƪ!,Nk+Q#t5SdzD@llL4ʴ~|Q]jCl;:k̳9 3V͂>ӻ+]䯲<)[O<.uԀ.QfF'D ivx`ȝ$Z$*^HߣVAQP(VPٍ %4:ݴSÛO+ Xӹ6K_ՠ̵(Z42ړ4C p:|`8{:1ņ cq-!)ts;+2~X9HkWfvݡl@@Al ?K,Byй;i OgCWw quMbE-^ D)ǰ2Dx4$z7! %ՆPSm$htv֪va J4Ȟ"0}/ohڢՄ t@P߱S:lWV=V\zQ*-|rt?fAxEnHg.^hbvLWpC|5}/jC)rzs̰&XicTSv{,+ v=X"Q^.@u"t@"qo*襘kvӾ{ w/X ϱ>#K\zMl]o*} c)=Z7/fOqRBj\]B ]L"T Xk- &쟢TĞH9؆YBUx:6&dl #/HC,ƟP %#f}zD~ʊ.凡ų_/҇f_D1Nڀ5[j4l%lj/d7bvn/HțX8F(ޯv:ȕ1APBpFr KeaV%&V1 `~vSW:& Cϴ7b{DK w>[65v#pJ#T2`c哹!FЃ[K\&a.~$kHٵKhQcŽkϛ!Fb+D pe\PZ2;5!s0Z艻y$F:mm?A+*w_N?& a,K:0$2%=ʶH/!#K_ \A_qSl:`*^@sָO{?4gaΩ}%^/N{!kR8"%u键³ 0T;-?1Y%6FD pƼH3 VNUE b_Kkcqf͚̮;1^)e8>2 4FeiNWrK8aU(g\zzVNS^}$!AHb iVHV*T@H۴hN}a2eh)>mwv@'<JYK.5̇\v_Z}Oo /uXχBi)}2*ycB~0 bLuPR0Ҕ^J2)K,;-=? ^/)|,}XJ?+@NRuZ}5=w)7<*u{{R +lne,=4|U "ID <2<*4:M 0 #dC>qsdC q1`ˤ d 1!':w2NQlL5k,.K,xӑkwI P6 T?#3iП6}{ppf>3VkN@t 5 q>ٻr iz5L^6$0TJkfi2aD^`>a4-=KOZQ &J$ ӝ͢IA+/=  I6F gmf-vxĚu&4m7 Ma4\bVNP;BىK5s?N}4}na{`)ny.fǓ,&.W(q"mY&jЌ"Cʯp0Z"aP2ۼQpD*GME͆sK7[ǵQX6+iT@s(Dx:]fyx9%u,\hjqGdII{]@ ߟ`M+nE(KѮQqhNʃ"6s-!l\@W&>FL',V.A`:^,Wodq#_4?Ӷ/dr=~>|Aʶ)2;o/B)ǀ(.a]֧RKwT55]eFzs]^.vIk idU]z^VV~1qCNc5.zV_֑4$!W.̗^ AtG\lΛ'GMΦpz㺉Xmn:d8v[sZgrvZo pF誵h&26nPko$yJGHp8@a?<<$ +?d: vu!D\ %,x:<-Λυ]t1IYHogBzf$`|" Ig~ʔ*@tP?y/DpYn/|SEDu00D9w&[سgr"ɵc蔯;sl.{+Ikr*ie&*V*oA'TH-_ i8 zf5=eI! aor?+Ԅ0pRޕ|Ct/#y`ۋ`/N_)eX{׷Bk{[qyygG)`x˺!@E]ô[&(K.JK~h #RV )w璫<1\序y gԇJp_)7:ܩ*cU⬞XnЕVQ>xdFͤ:dI #؆3*AHСdRO}tQN&qGqB s`g$;Ep>R"vx8Ρՙ[Ag'('Jo?@<3^jV~rްhB%KxkmTMyIqo Dh2! u~7kf)rKVq(OYۍ';srxZ]4,lr5>ܨA &?^NtP'\u4iTGX&|{y+W}'ESҍN)~Csy,'%~] Z@ݺگ%d6*)zf,DQ5KO]u;:P9ˆ>𵙍mIj)_,,QBp"PڇmQ%tXp?C&_/Tէ¤j\ʷ I>|~̃ BѬtsY{*ZBM>|jL2o>Z!.?}j35ΑpwڪYx8Eoi[hPۀ,ۆ(H—Ѧխ"@$Dw%ᕻ=fl™ BS|ʖ(hƫ$.x 287eUЭQ,(?hk-SWP.C%Hd~RrjPM"EPRW!ʷ(^'Yў3+J!.z0>m 2 }CmD=9ɖM֬d!¢ $ +^kmz;I8"gᲪRY1h܌R8s)_0.#y4=:f pp^Iszu}  7hj_\ONɇWA?kd^j gP(xEXdSP#Ġ+2}ZkX.wGVjgOZ { 2 ǼKb6k\:zuUc+];xyɝZ7}#q8'fL=?'zܵd9GpQ$էc{ɋy']q㎻A( 3:<Un}nB`C܃ *N>Br9wNa#T~ Gk`;ͫ*/W-\܅,$:B vo]"=29с#^xwS_ )7*/?qֳy9D?ܗ5MQBW`\Aldi|S76V"{&O?-J-Vc}[R ӒiH ;́k}M2~[{<i-,җ/؂k`2HS#l\y<3j3Tx_+*WfS.AՐULb^+=Z4&}83z*vjd%S2Ђ&i9w!b8O5EX{»b(0Xz5RȎ"X3|$PŦTTlye|@WQ˪Yc9P"NժNSQy_SVMU_<XF!7KT_-_$NkQvg}PU&okO3ٽLVҨfr8IX:w/5:9e!z1[e0h0[פR|""=(:zv^uqT!C3&jaC y-~pÛZ\i)w{ 5-?/`C'6X8Ʌ>V.ⴜF%^k!LTGٝ#JMxUUO߬q$T,O+01X>`ni_d̓t?7~ީxOR]rrPbJԨ~}ߠd^ߣ`p/G7k%ƗUO'(:*m?Jk^DWXÓ.@hi:+N|l&ХF- rjS"isYפ (SniJ;Tz,IUyMjN@%U^]9d\Ef*&};tYLy( ʕwYǢ#I@onR̥SM6 }p1dyL6,ZyB*0JKE~bz_6fZy1T0T?9i)a>xeR ҝWޖp~h*xJtT6e6 uEp<{6n{X<\G)u.Эw\o-bY(f'^zDc)F`SryY?O->y&~y:7Z;>o-,{/: rvǟ3^~*O8 lB)zE|k0{"W,Pǵ<+'D ZcH؋ԕrS~Ը0Sj;%3UrGs6s =|=.e<NFl /&w&&_VhBﲫ[ QLꭀohAkRIuN70Qt'\)`&qǜ7U} PB*|/; 's/u=&~jJہAD7vh|eml@jcRjwji4iwgQOQ)X폾=H]3sҚ@Y:h?lS;gйjCiԓ(ךAl&ZeQ/ڕ |÷ɉ)|DŽurr1'sI;2ce9ٖza\*LjU({K[BڈzIS.' "mK|9hr }b99ulȒ{7TV'b=%#wƀnXݹs8D mHZ-2 +|}<r\c΃[2v ,rnS,I g^i)M>& NԀB'%&i Fou Beh&w{[?>7Ѥ*MgmBݗN W\Г 2Wh±gj-ႁLmte`vAn0\P>5\"| 7\M<@Ae|(3JIa&"s. q-RA0 ''{ $(cʦh%Ո ׃Ϸ$Ê;c^U){#-5뱿M'x&1afU p*+5(z!X 8 Cziɴ..Fr* Kѿǒ0?d pFe^P6ǒG Q/ a5KkI9bOlimTGn7_o&8pevL$hrӾQ" ^TKNyPTjum DpuNPDx$x8sAiMП)i̞zWpujMQ\{)?Y9cE}l G3\UwTDfF1ڊu`ߚEZHd>leSBVI 5&6Mnaux Nԁo߁vk+Hknʠ0DO Tx1+s=RsDizъ0j,5+*&N0 L?,pn8D3u(bs+Ve{^i|=(L Jpי(r?&l&Zꃳ"):2gpYb;isd#zT@~^-ubZNIޏ.\pX/0Dj.Tkr tF L'XVZɛ,$MTE.(.؄Qah  ~ߓ KD'J/=`̗:X iߺAﭸ Ԩ$9YT ߇%\QGUkqDJ(C>dPw4!9V؄Ma|QkQݲO:BS.TVo{O= Rd\a4 U5;`p=:9dFghu=V A5B"R}Z'E0c+mCUc쫻/ ؊u g4gQD}%?M[܃%bGp& tMF}+.3BgtQ.UKQuLiQ? d g?=Ohwj\lڞ1GR~IeU7 ._ܿsҹ!_$Yn@^uѽly!j7\65~ 픳|Bܼp*0ъ=]4-Hvb6oK1i:\"M-Qdӛ~"(q%,I7n<:]m_I*NsIS8yom#nYo*Z3nH_WYV}CLb"K:_Yym`=A8J#l0QcQ]6/H1/>ŧc_>-`8ų &,##Tڲ)aou0? fK3ZL- :a#o3ˌaέ_s1^^mb4`גuTuVz+wSk,l\S[}{w >Kg/=eS:7|U)g0tcE-:^i<^W37Z۪H2] P8/cZyȜ_7'ʧϟRTR?hy z$ظ~Z[bX3̶*J*v2f4,(.Q\;dp 6ݘsx&dx|%b;U.z>|R:!ﺭI1^~ksiٴwB |sB t}"*hC{Ӑmpt$(qǑaoDW,<r& Eb4`XCSxt_1ҷ%dr1D  'oî>ڕ_7k5e l$j)Kd aM6;w_YKJc>/c+Q64<Ǐާu QlRwh;BYI QHlQͧ7Y~ LxUDFĖo*d+ };P__zX'g E)#WhHM7lͭywꆠ/I]5GZtXSH|) z/@]xCN:CIN-L *[!T$Z 8ۧbu6p8wRl^ۅltn eJKWäWh0o8uuI]mwͅpOSKQ_p?ᏹpqnrP'ZX^5Q 5RB-Scc)kYk#z|i,0wT/VhXSM&L%TWݸ0m'Vj_jvT<)hG,c犄]qWZ?w4Wy}#bX,W9zZ? ^41/*ȍey aYeTXEDjty9闣:f"P<3:Sh]M9~zTe>ߔ8kuc! 6gU98m:X[QwÜ۔\Ÿ}G矵{o]R4_p@kD i"NS8ѻ9DWmƀ}`RlG4&~l)'} _ˀ,'z7rgf|걊c΅rRٶ39jp , ,ڼYYJUdb* jΥX<9yAT춌 QkY:o)*)REgU%PPSdE=~kJSWRǻBKP9px/f44[e gu1d;< e#C<w) MOiO_aʲۋLO%FQe&6Re%| S !҈.rl*#ksoBWUY+ooJs훙1[vPFBp2}[S dSA#~npE 3.dsIm>0($83!d 4`1 2:6W`5)=6ܲTWuH?n)zC18;6<0z+CY+7{=Kn;v͉ R ݞ35lr/@R-ȡ6.kVoK1R?//?tZ }WZ 7A̋q.fDl+FZx=.O O}vKk {e[( ?#"ꮏ&ֽf7a |F [4bUNfWeI>⧉BGLH?#q޼I؋3h&YkfYq*}ݢPTzq(dՈT6\k+=a/GMa4\$ ko05*NDuSƟWexl+mbҀR+4,oVG`xDd] X{E3h¾uGO7ykue I $0&5%;߅xTfM%b+w`?~2P)!vڤY0e7:J4W[]5`w7zᥩ &ɟ=4w?u&7jF_n2gGY‡ L?+b裭 [{ACz3ptE$qR;EZ-m:/.tv˖[MHd0@iҩ _Q*n" MaWS_vEC7 {W-0sV(#BHX4Ưl'neX|ñ/+IqgXt1 ׂٴ_#wyِZ].,Ũ+SN.JJ7'-*bT,}V[Cr!6Soډ=8igNAX%<& 4GTOa"EhLy-'aDG2˘2l!f̜Ա:gp2}mt?EyG4ƆscHh\qN φ Xw+εWWeꐬ[Ŏ#!&] u_w7d"B&J~v?B&H|ˉnGf9'7~[(DF1 kuBف\&=MFcg:S?:IXQ9I ^yJVB0,ZtN^$&w<{d#jBitNm|}0!"7Rr)A=U;쾝؈^: H׼3c8nq ,:*z튏\ 3R/z:XD;P.>f >PNw)oO `rY$dB@xO"V@@p㖭*3"d3P*O΋ (o(`3[\RB%FyYjȱqlC+SYB؁N2Y1j_l)Y%"AԗjQ붯Pax @ٟXdrԨ՞w&$JyGcpP H*-Ȯ KH P`O cdGR=V.?/QO/NrHGܧLH!OH?fäd58ѮCik&$_ m`Dsx'ek߉#QNW mR)`& I@?oXj\ӫ5eE(vޫX$D?<+fᔔ K`WǞ7~ə}!_7}&͵ RUm3Hv&\AWn E͔N4Z>4XUmڔ \ H<-~I s[w;ȋjxRpT>oJh[ A/'$͆*LIY太.+-Q1DWWsb<v4!-צs R8: K0Su޺yxk%9*4-~pYoD|n0%6'."^fJ#K)9eO__SIҷV™B˷m-]l|,˧8`MMN4U?Eܹ8SS><g͈#$a>P=1ƏqaK3c+})pb n_uatFaFf"܉| 3ޏX 8 "..⢅֋'y>2A T;"e@g%VGQA-]t ЭΠ?5Ac$0l=b|HkEc $6JivKP#G״tfQp/HԀ #ft)UkRe1 ]";7}2ObXEle0U;aʔ`Vas_)kfo'U+ؐfpZV˚wWڐHnSڦԑ=`gm(EǶ(bsݳW!dvT~6M7O6~56$gڝ Rs|^2ZWz3D"0}.Ԭ6"~񀿓x-JheF)|)")w KR]O'f%E"R ˝lF 1 Mud;fb;pzl\t:r ׵HoyCO|*q>GetOZ_J}=?ν.3@I]^ 9r58RCLw^>K5e E/Cʷ6+/uW1Lו렡0Ѵc>Po{ISU[ms&#l&K@5;k%܊IFqy] )вvlִ+3G8y.eEY'9yPG80i5 ,5_8%xqS7B+t\4vNMC'T{f YB+pe[*WNsi'{og/ކYSCmpAGed³v*ȸ^?::2OL[Dih{KƋVCfirA>s}bU& {,%M`ظy2vk8AQ2lEDx Jx.p91a!VQw'xKw9L4eq@/U.HF C)%E1N 8,TI%=u]98NASq%(8qȦv1޼Qf ESz("lIG]Y鱂Ptm۱85a^G vvpa nAJrwŒA$%tu"@y"g ֈ,|gޮ `AwLf'F>%wmDiyt*vbѣɬ\V>6G_ ഑,4VBMHf)ʔKlưv6 #PJqr39)#wVqEQ*cԝ|F9_=THCxm`/ӽ ԙ.njQOFH69U3IB._,{CT3a*8Yָ˼TlO0{">HLY Wڂ&55.#͛-Q+#F@^B`6sx_NGM[C'zǙ٣8ZPę"YO+SЖʅ--{ Ð̸Ƅ,BtcJ&OyHj z?c0*~9Ao@w S6(Q9bEl{R%8ئXI4X ]*;K',z9g?99bX/gI1I3 K<` c?>$|A 0.F.&"@`mA0Ǜ{`5Jy8f6Q ,&'L0Ǥn7>OW^ Fto v,rRҊ6lj#Vo:X.p/̬c*S,ӋqON<(N-cT} y A E_~8Ba0]W8#z54rrlr e=_hTpB d)1JƷa,{A+:EX^6Uja8͈wrϐ&,AoK~K_paPF!Ey |'GP&,f~#_5qW+jRPTAku‰ƣJ8Ee_ $ rde(ћ)Hq Tyl4 {=Z/$Q)˖Kx|X8d=ExT\$̊S=͑ ]7q*Ƙrtɜ{Shͣ41A]?nL' !Yv KP<MM'U CId6^=K,.k>K`5D/TN$ZuTX LŠ{Z$Jg'.\f::q3%> 0Fix[wY\LxW_v3hz.ЖS8gA<HZj*ʐ*IcN]pzƥ- sMq|IVGgbwo{{R 4)UA.=hYve=TSZܢ$3#_\ȉKNӍ|2.oC4em|D/6<`}8t .Ԅ0"]43jG!ipsNd=GMϰ0_x$5wSz 4?8BCh}LWM0Gv=w/d[DCFsTS0 g nx MSXwIpY1%=X0vb RnQ  aD#:NK XyǛ@WK6Yc ݱpg[Qa\o}#^[5e"WG/S* .͖>k∎=+8.riaR2(/}T|+p0ӯK~x iF' B>e Ђ.]XfBXxQ$aj3HݚϿaTƾ_eP\w3=s8\O2]<&4,ĸ ~+sI $Ҏ)6wdNWΌ": p3q# ˡsP(}S(Ow.Ňx)ykX Qi:%/+š*gv5_Ɋr(P8`\Ft:|86;jM[ lpő{2GF]b㢄2iEʚ$"L,QXI'A^{aX-S`^9g&a4pˋ'l0D{"F ަR!W}M;ffg]vA}U>%@c9[6aw>.O|m^J6o(C# ߫H7&tw u84y|7ߵu[ e?#EC1֓E%; K3]usTҶ=`n jcJ#@0!WO  Ws2HGefiku7>(ᜣF`4@-.dl= Se/D^ȋ9孝(ԁ$#?y[e_9K҅It,c&-fzӝ)(@ጲcX{BةNDC)[ TyMq Jqkw$1)B>I8u`x }ޓ04t OԧVI; [PΥtz" }0M4?摖6mtYIQ-i!rb;E|y3AENA !74?w,8.~Ea@"̀W6 Iqq9BL%6Z]ڇw4*W7w`!Ð/O>D^ N4$IfH5ӭ)X.#K{<:_T dd3tC($;ט"'ɀjcL}Pـ҄<{a^[ޘ\=!+ǟK3dl唢ئWlnvWX"&Gɀ1ǡ|B2+zL" wC̅jdAvB9ޗ ц92`ώkQ,~f,py~֛1b(?W~7S -?86~S7#xX ϙK=cc:o?<(H,Ι:]9Q,k[Ҥ9oȣ-y׽#'-sc9sQ0s.uԁʶe.\ ϧY9eݖB!5ڒqڝ7^WrW% BGm$g Zh 0$Zh>ɇǩ\&52) !}$U"B]̦ br}V)Gxx3ˁ(僟 Bziѽw7e+Stmm#޲ZNl,B;h_É,AJk\(& †OWNxPuyՂ\QC(Dau0[ſ(Yb{H\Ki!l[lH!,QBԯ/!)}XB@wGَY.l;)O[]x೺kf!; se{3:ACԳb9wZn%&0^ݸ?? 3n {[t-P]Uϵ% X7|NωC'i,Zʩ\ICvvt{I IjhlH=|aɩs0}ЬS]9QB6gnM+ HGcu KB8G&7ݡi" Ϝ0ПuͿnYzto&(ėD7z6~tp[w12PLcUAhSB͖p Gpłpk6M7UbZ%^id*-7i~1jQFԞ.~W&1v@E?+x1`B(c)5֨D5=08UGG XeD'&=e;>q[&lbٜS^'9z㶣E)mP#<'fLDwۨπ4:9/:kj.*1a%^7:a1s!4ւ3e'2,h'&4 :=CeIʧu)dVES-̫!/!Ј/=/eϘ).LK1KMgvsFcaq4Vl4[5sfY W>yqH4s(Ϝ⿣OUER=oX*K{D <*6fajj%93^֙ 7!UP4CHPYAlor6uIkpzv|/gn$4h{AYlLM Jik]LTmu(_TU|Xe0c@#]H M:/(pcTH6Wq]zN^%AiPD2k+ ,ߓ3'DžR G7TzYROZ͞Ebzɜ孄{ {Q,3Z";.6s@~@kl|\ * ,RI# `»Vx&yO*e<

fsi=%]՚!EUG>j'Y7 kTM?g9P/Hdwr9l#4< a qE\UlϭժԎLjru(|eC5!Ap,c=a(t ÐFy|!s:3l\ E?nUP QC{Ȇ -|TR]]D1תaI A!ut_$@䀹/q'-冫s1sˉ콬آb{ucO&1<վBy  w$0xhKNTTw&q^OfB,<­Զ 9)AG0 ^ި>ɪ?O{YLϬ|dUs Mgh.Ep_ "tQ|؈&y<"\IbDؽG,/|'u )w3q#M|Ҍ BnAmZGս3* p]Ey_?uu@*9T='IFD=:G{Dr$|-$`#+ym<(~8Ls⚒׺c<P]%teelVƮ~7}(cMO4p98n%+(I.}S=͏0$ĭ!pkCy%QmgJ(19$7,0;g^+6VS;% )XU!ddcJ?F9Ի8X6nD.榩Ƣz=Eܠ䖆mzKU?Rɵ~( Es,Uv4Y0aOB aQHй\z-RZ۬VhGZj D,W ]or< {YmҮAH7rW2nwz Ł޺ŊҺ3N%%vH`iJI~8/HXA?p;OI65_Z8wPE>s$h s9\0x{%I-o5jeDx#:"NGh3_^)2qοȾ GZ$cL;L( WH)OGmr:YA nzJ[;Y#J`~֡VuWu&g䳄A ?Ez3E4XcEтdoKa!]ذs W'ڳ+m^ӤRq.$Xn:^V'qu)kZ%ų(q~TN\׼)$2dnҹ;]x1hNl80N9FLL)_{wNj{+WgV~ADV)qXٛy ?00hWD>m3A,LytԞkQO6=DZ0E#S%-"kҧw|ݢQޣM!DZ[37ܽ?moKcn>$O.ҙ7}8 OGAi2lILk'atBpn`H 8⊦`2b,JP^O6qi:6M@ѫz%Lq[a8D5`B^gE/a.D(.,uF'F:|(!lVj1?vFo&庺;h{5艒=A\^<v)'8]ntt= WjP<Ƃ=Ry'W>mK}=Xc x<@8YF+u1= sZ{Q#ʆVbux:/x& < hޑd⫛5NXwTԔił 0NW s e6) x8  ?g}&Bvɵ&fQQݖu˭9`6w2?0?W;ǹJ^n7 Rftd& 3QE@A_N{ض<4"VH5iYѹ!hi+@`Ҡ~-SΔ<-8ng"J 帆Y֡w*HP"Rg"VAPɐ VVv-cڊIиtQYo{3P kLQ0>!^LaZ=>R!|O |T9z2.>cOh.3ǥ "956}TY /p~4M/TXϞCIȖ/y.H#=ȍӵrA(eI/~a%!զ|fyEH%iп^ơƲjЫIT4!Fu'7=%+ϝ6:&qHUMFȈڜjrxJy * D[Pjf66 j>H{$^qXN g Grw'Al}ܕ86-@/ .GEl[4?ONe$[*|hBf:[s>UŮC]@3$LB{5s^|CVf}E25y@Mbpqx57Vi 65`2 Jӹq[ь7_t㧹̅N ybHys iDLVEä*kDcu e$',ѯJITwpNvj2 #~D+yiw͗8|pi:[#O Yt~p]RV!m5Z|?$&$ &YqB׆щV0ZgWc2sk.@ն&^TKr<ߣ=Z@v  q#L@s+hݿ՝>(SwXO%:ʰ~b@86C/Duڤ}qg.Bn-7-QJ(?UGO㺞$%:pHˢ``BA#5oSY̺絅hUb-063\F8%Z>]=h|w9r7pTp[8 F` @:du __l][& 6L=H#fvA## h}(rp^Y !4{zP}1͛q A.L١В1X)N|X?!q U];p>ZY0B3%fCUiZiwa|E65Wh[wXJ9h9_ѯ JAjkI/yB Ȼw!IM_ `U@g^&( m?WӱbkT]7q|d6wu n4p]槛:pnjLzAg0ؐh`Fq ^-,"dٴ}5@;WBp' <%=tEyބٯՎQ-7 %*4KPC[Bm3Tu 8ՐVa.MIȚܪ(?Lb>6o=zx6/0]ĸ7NĕPu7>Ͱ"W\kvOVʾb"HscR-ײ Fd#kVN% Kz91Y;._@;O@~,J(OuTG,A΁FJ趷P=^KP224P!*/MHCP5xfsWD \aC}'Л'\\o'az5+C$iAN/b́}Q6féaiaY2hP0\P|zxs*.6hG+HkR+: &r.RfqL9n 䦳Nx^͏c+ݟ~Sa2CQo Ņ; x,.Uk8?vy5{b-&7$/J~)sd2^U?UݒZ!XF*L:Q㟦V`0bUE^l8QղD ͍o*6[$Lpjc-I4`EK<<h Y%^ ֙64Y`ԟi!Rȗ0˶ QE%lvcT}LςE c;}|2ߛQvxƖgż%%xySyBjn-zp$b>H;9,|)8^\-E>#*0J & b޶vp1mѻV3n].O@sv>{`XZq3`Y%Yv֦*Y&,@D~"xM02͊tU7zֈ4SwxLVDs[c2ԠT1n_/"UiF볝%m vP{:En=3mw6iTh^ \Q '{ՉF]H$%#([Wy. zf#/.Z}d4`Uʀ&G<߬9: W[w絫^SmJ&L]ӯ.զ|It9`4Иb0M]i ~"BpZ PZyڀ7ObEhK-+"TŽw[VxB)P{U"wc>׵7C}"hTz>]Nb \*bk/+$`&1IC`h272Zbm [Թ9!S:ÅGo!b[hMyr-fi<O娫wRH{j&beFRsIT $e ꈭ* NMbi ;֊wZBJ]ym$u`0.ك(# {xo=v c*~A$˅wh\~n\Wn47ŀn(]lzgf$plXI, "],|/ytwå:WH#b֟00`IɕAR2!#uƧ_m;j =*Lhg>a @TKb' ~GKrBoJ˟\_P?w"Pf?Si-7w'%T;>/P2JļWaF+9u9GpC%ܾH?F=rp%C>GQ07vgj'EӥKG B5-2R22;0PqB@ P|\U8IA3&}JBL9%^Y AaMSBtDOV-q(>bOX0d&&*wcVNqٍ/`+coo'b]vjWaS N(C垎$!>FZG%JuzfܸVF=pсYu9 ٶ׉zM*2zN5vOf7+NemWCx3]h%3.a@qNPP9hbڱ<|3rAtQnV/tի\cDz# ]&M0o/0?X?"1tLb3|NGJHjd[Mh'_p`!8m#_[a-Y x'05MFl4z#Y7\^=3A_"_5~2Ծ#L/Y\\s"-{^3Qإdݠ/XaJOy[M%V-CټC+ IZۄ&IWu,Mpʿ̞7a-StR$'rשqV#B+5ҷY2 ʿ׿wS\ůb1Z2>I]5]r ޾6@`mY\-dC83͛~I~9Ovebg|6&;q*lyx> //& mYO.cj#mh \&;2P%uWg͓FVQ GF}6RTNϿeM5[~c^ '^Q{B&ωVH7T(#eux䪌xP!ἁ#F Ëi^Xq?3BVUӕUԿTTA%āŀNp/)2ljݿjvko=瑥/P3z]*a;kp0+/JJ>s(VeL {L K{*A}f#I7KZQP@n3?1uǢ'G>ձ[Z[rt$\Lc &F8v13pmW6<-tw#SX[$" sWgG}ĩ(9^{إq_@zzKs44J6%!b9ՃLj^*h ^.qܚ+$ib H9K({X+E ;<̙\ZS`|4"kSH C D<מsK/Њډ⧯dܼ+}:pItP`:A|v8f\AU>N?NUWmsq# @ܝH9!G DVi嘬 T9}yoQ9}x"EjR֙㍶ؖbo\ꌿ꠶RUW*U٤G97sb^*iVvZs`<6E$D=29n1<ݬ-kWCz SK.`RM*̶ Fo\if\(΅]9w;\ 8j?Pt~-4A/aT?;$S= q֑y eL aeOZvC86-&+Qx"+=NJy!Ԓu݁om E~"qYKU+WzD^Dw,HCYh|h c;jc;)7Ѥť'a OhĻ@92%+C?uNkv,h ՅIwħYY.7FL$G ҠQc3fₔ{qM7eE]5Gj Nlȴ B㭱sMXX]^'od2"_f841=^}^Rhɮۿ+SS 營³kէ怞Rgmp0xm|jU>{$2VEڸR^H '8Ce <ʆ>A,LHKQF;ϋLc(wLb:}"ϨhiM^ *tlKىկ0gW7ShC:GNRHƘs|2Xh0@% S1;eMw'X`o?:qZ/skmi Nj+EP]´jƥՀ//@Nx!(?|fkZ`0G7;Oÿ  vel͞GzPy#l\g^] |K(DP<[no m:*[1n{q(_CSqҹC\Z>_F)oĶE Vo v(Jىi+hqS=^q(ëC}mb2]D5vDVx~$4~|ڶ -v.馬JZ({Ա X[Ar:{!/i>]pSQDA#h=TE*?٪$MҿˌH@3ik_.Ug>cǧnX>B$X@d@LƠ ,B/#s5?l,Ef+ҙ_b4!GNJp21@v)h=[[zźv\*HݿH?_,7gL9PIPH2eiw{k"V*}"HP"'\RM񽆝?呕qTN{\% h?#Eo4c9:s]3pntjpmtqo_!.NIRZDP!=Ãu^ 9H]=oI2 [ai*I^䨝e}n_X;@CЍuE@Ke :PuCOJ3 $>x뫙̖YעƦ,r2y&6L;&@!K׀}&#@à:ru✍B$<dm|BJfzN9xaR܈E]!{y~\: 'lՇ3Kc^?nP["G%y:?JpUgkx\h$)Mvk:l9魅 Wsk3U$F FOIF^QO%Y-Ife mm|/]C{8ܷZVH,[)r۵F8_]F]L%dgMg#Fyi%s? nְ~~*\rx=2b/nѾ]@B2"o.a5,EL@7󢳔4WpSd7π1;A}أBlʬ >`{Q~}m!x$Ķ2s3˯J0 jc5Gr$rX{(A asC`"߶AVDn$! "Ub~'?GUaS ݾ129zWX!55&=*G7Fbu3/V2F-M~\K{||:v#܉0%Tt5yf";}CZd~I*vn\$Jz'a5G[Ώ+$oR4T/C]lrW,N w;×8*mgydw F~^H$9=hDw`gurq֛<q딫LE8'}Nd̩:eEATcCV~Lv7LE/$M˄e.qÈr%E-z+RVjgL+ 1 }:!rE௮Ÿ")-Î ӍY , Aib  aX;YhYl:Rמ+ ՐCLb\k)\[Ui3_ ,;[,k]*RaX(pkBc)o=6((r,4&c!m9|hEB)g/17~n[1IxԿoyſ\@lPRi-=F'Z s"2wT 3:: ~X`)@$XsjWֳ+ =QBQ[-crt}<'QaBR0TlcnUtҲ<ͦHD|ɿd(9@cf+J*! "m(2Ყd)~{ ! ,+thZj4t<D)[|6%ՅB:3IgKZDs9V͏50/("P{6Кơ#3tAa[ K1nR7nthh60]qsDhyr@pxnkCy,6к60`$;ܙ}Jzv1U%( >B?|LBdXqf25i/A.Kķ̱,Ko sd-DrtM *? ټ=xO忡fF875cmXҌ17q[ËZ?`R[ |m_P㒥R:x&s&pS~lNJrI"E8?i1FDbDЅG`L>;aBjHA^'Wq P0Z~IPu! VOP(<9_%}\׻\9>#_@ڨe0E0%@37Pi/H;fX{]AkmK~)qV> J6ָm!/L1i`{̔'E9(==-6MPPԶ@P(UB*=e(]*轉in<[RrL+_XS6Mx9[8Ȃ]:oA!k ̏ƨj=-̼vL"~zfGХ*,Ư0sj@6n7ہ=V.ͬǰm7J劙N@>7Q7žx5FJ0[QO'g%enrɕ0m/DGlV-Y3%c_|>\a"o+2KT.9X1/_/IϮ_\x%'VoI2#As-P+*'$ &60: ʌD*kW7luH'ԼhѧF4৒dvֶgPa|.B}u2*q }P8MP (v-)Z6ld{^7?Ȁ]̆Բ@?TO m@~uCYHh!UO;Ly>z 6 |qMoԆO)_4_" Pf cDqDl31ĊS1Rܡ`:* ꔷN^:WW}2}=4Req27N:#Qnsש*0^ӶVA6 ʯp[Y@3%@ѴJo0NTYMa@VsLEOd7+܌ Han`Jy=qz~P?1|7#Ge)~USj|p0ʇ$7yy2mˮZkYN2WNxR_KbbgoY*Jӝvnn֪mI7HZiVd 4iL1gZgF[wկx?o0 WŞYB2|Mnj `"_1 .Z t!VZ\Y'r拏&!2J*=:9cB|qJR3 piս%91+J9kwb߇j_4fc$SDdWR?yhHTqƸi}}_mEJڻwgض޷/q9.i8wŁy.Ѡq̥C2/b2T^[<։,_|/yws9m/cw1M3]"P򧿪̇ej;U9r w[>TN2Fk{EYVi!P™Q(&)+"kiꠦK{ZQo,B Y ђ 5r9s%.Q, {m ]UDEB4j{V?"+׉Q™z [57}ge(R똛o bhGmVlX9 xrWe%1/FA AW޷?Jzi| eo;oY!Y++W9GI e_/T"sY^P Ql_aD~Ś#<AI&TΧt [s.pTٔ2 Om u 9Aydı5Adg'^| &nU:Ϋm|CB?^s$&FD1hdY,ɸ",7^il1z$ԩ3YjXbL\ AfAe-KsbvZ" YSsx,Jb³úDא\K⢺)>IjS}OR:%k?*4F0tq:6M.|cH/@lKz+MVwJsm ͢> J&\F|W:砦5\Vɱo5;`.-l"XR-Ot;> 1=NR ]e7b; >0}z|OKH L|$µiq Vñ MUg׭ӁUhItX0x@s?o pU  /?ܤÁg~7VC2 Jx~;E> ci[όJ/ Qf, ]>yJ6zNn˲>ВɄL.- 䞡&A*la4[?Qm]}5FyOYT/Tuˀ47 Jaz*@>jfh'TVSɴq'Z"ޥO-Y8X9ESv;} Ϣ1ϊ2m&~}E"*+ CkZq&sZMeJjԭjHF!ָp(x U%>SPdNKFQ"w\c4|F:.Wj w ˬv *9`|QEHҷ V غ ;F|SX=tᚄszkUUWX=mX)|j5؜_хMD\T1,osX8` $Ǒjdggd /:*T,YG;WPJBCꟓNܰpm3itCJuq;  FAϢ`&Ҕmx/x^BcY ^c/j6w/D]KdP^ ʥyy_(QR] ]J W' @|},o m-x0z N_?7iY/ÞT+0&S /beA ],[0%q&.Z2Ρ)[Rqꀡƹ.;T!mE []AaScxp#ޚmXhyJr'ܤx q4NXܣՎY2G$!)E*Pyw}pƣM,Έט} ZXض=bqgx.Y&x=+MOBH꜌8uqq%Ux.›QMԋbWP|WX Mʻ-N!Hޡ49wKzqU@~N3*ئśI`h^zLυ>ۀ@!xQ]w j 9P q}*'qJ+2)ڈkMتqb{#B>dL`Ap+ʔfHɟ&F]=JJٝGm]hDK̼Y㞙L`f}0z.|s`CsvV30X|A{K=Ӹ'2D|UVtc*9sk MDSu=G+F& a?p]~H!5G9S]gEL="u3 )ل0r;Ֆi ⸀+ 1u.\p q-yW^{6W52}[D!_m'! ÓrPx^kAE'ik:US ~|<:6=gTbܸz\7ar=%t.&wU#|wk/yRnv=MtNʗ?z4Yjjz*]W>KDxsG-1q}b˫^so(n/`X {c2ĩf-[5ſ#eN }PJa4Wh]b p:g$[e L}Yz+"-u.t"]L*B0xH`#y75#S) w6GQܐw#j{]C/&HR9BvP?lĎbS)zuAAH5Wd"Xlj[=.O7jGI!{|Ym<Εu`vf>/<}\ZD [.;c@5>>g_ќ;0PN+V%?f=, 3093d!9*h70,چv 4}&7,>T+f`A࢐aLn\H o,ż#CWX3tBEό Gs0%L":ʎv BC8Q'G6.? M}mđ+ipKAtW`2hubS.O+[k\Ctr\"!E})怏GSO)F6-&n&Ɖ0ar:mZ`z($v#XCypڡ hn  uMood2yybn/Hp^$DCaVǡZAvrR D"]eSPbrc9ozؓ Vk]*%/ڂM$;ObWP]!ܴ {!xT{ͷ|,-d)c@0u|]C3ךg = Ӏ\VjVIbF-HsaBJ֚̊REVe lPm%YS}?Ȋ3PJZ:UW{WJlyȵ+*ʲWS[PX"jDH=)d0ݡ\]5D,d1T]0hzTrLr]Sn`Zk/' H~oa@Qč,MYur Ub<| K۫~@ERTC]{9,|=+a Z̫C QYb[ZJ!.oIykm?BhUy 5G_f>X4euCj2S3:fE%5Ff QdovT\%5/(cgmfo60?aXF 1(seu jub1N@|KY^r뗏NF y4IaAo@JaRبSk9hPΛD0$S0ߴ:}G{EsNwjۇUXs%YY)s &'٩7nrz 7 +'> 8)_2ʅF ʰ^(tL~Ff)rg} )(tY,*'F;gRz5)2_[ $pFpd{wdHɟufٻTB/(;\<9u*# +nhݵw$)~BlJUe.GѩLȞC\\M46!'Ufwp@K@9vM17ĒY!j R$efT{oFe3퉫6s2U88~zq_v ҲmJY_sd<]ֱ*]?$,e9"Nf©XyT=Mw90%{ ~NyyRG \Q <[ ڶ&Wu8/mC^Jĕ3}uآ<.&iPдUVt-57aG<<-ՖFm/̥9-gnU#. "L0pKsЙ)h:~ts 5*2: g9,&6 -A&vvū"{4jSڿ'iKTfƳM;g'_/1Wlh[^xX 1J6T#>H_rL[^onuE@"8c@DNE”-T~ hJPKth»B$ѱ/%TdJs3jU{^vx2l@Y E& &Xn5L\]l6.cd`dG~z8&*b{|Adjgo˘W8ڡF گ_D(|I'BC뎙FRqr+SF%0DI|k}oʏܼ!#9%qBjp1Oq ckQ1@`<4ei6!SvDJrt=+NG3c=*O$~ˆC.2$$lO?e.?0eOYU:zBrI<:ɐmgVm@%e]ȅ#ȽҚ*>ҨX #{Th6DB)>ڹv|(/Qadqz6I9xfLVw*~WD3}šqJ dJ~ 2tקd6FX&*zF?K WfazJ`4>Ig3tvU>S>Pmn֑ _F9><(pH YEuqgB=ki0v|\zTbﯝ;N+wg4P0o(/ 5|{"B1+~uOҢ":ef'F/ zƁqӁ'2#g:TÖQ Z"M=m{O(麌6>\1- &- %(ɑv'5'Uےen~&IKm q} C 7w[hw!& D{ҳ9d;W5K^%m~E~FYg%P|ڄxE ,ApWB@ MhdB Wzk.Ǖu/YOg^&xZMТ@ΰg υ9Peh t8-\k8 ޷ N䒃*-] CDzgU0v {%aEI.|[LcbrSE5M<| ^HЙi=$X&~)igSVAl[a$!B k9=ݽ[+d˙G)@6n6lɏ/CES4 ' !Ö b7K!ߑɆnﴷɵSr.z!̮s/YV_k/ߏ(!>1*JusʵVosK ]ݻ#.D#DHOZtgg@5VP<>,Y1E 4NSv٠*؟2O)4"Pѕ5B t Ɓ)-qR<]:=wջ% c`唏[:@)N6 rP3BAw*~_FkgmƄҁ:)+-=2x< J~j5+ZǛ0ǯAQ>\k> @p.)?{. G'_9Ӱsw;y#1bV!'pC&#XߛɎZjּ̽Z %# q}MΙ>u_Q.#̋R0&b?^5}ūcpʛE o"a1=\9CkPYh/p>o@hcs?u e+[R$pgK!UbLeۈ*+j/i߱PCD.Yz  $, 8-}} =]yݪk:7ւ'v>tY8k\20IOaqYE"0 Q" ]u^k_wNp%!W ._n kGv:8;nm=;Η| r u2ݫ Ozo⥷{=G̏vO?(X 5Q [ x"5J;=ۭ DUp,q$! O͜_pĻ>l8)|^nz!4Hla)b5iQG$C#_6!ޗ7O3gb첲e'nSԉep)&c>#לCb%V]q g:U m2A_?\)c9 7tZ2'ކaU0Bm*N&M7(%Hs^`=V.CW ܲ8~ɸ]܁_Vu௰%HyM*ޣY(#& R:w ;˫d~!|LdפрaDC/址Zg:_@AAokNGsu'pO#*擨T/So؂rA>R a N&Wb Gb@J-sZwwq Xr+ޱbt% `(:U 3w{S'@^eP2v ̃i?oeB{uz4٠bztG$P } @-6xM+2eo2xB 2e2w|֏:20LdM*d'Hqa_dfoqg=6O"fWz@ kyCѯF:oixoG%Thy })m6&+k#5ZJd]r$.3Fw2uŬ? nZd&GIgLOW+ySKK:hOQ;iTj2=pD Z2[V0rd(u [pZCGޔy]ԡM&2S* r_#A|!qx:ֽڭ;{.+JmQ`wҴ .-_)^ M:V "Nn-Κԑƕ ֶ5i#J̺蟳,_ qƞ\a.&OPr$L862 "ŒL itU{'gs?]}<(qԵ)x*t. 9r)ֿv555KVuL/\TqCUvl9%*A>?uv&7AW87hPKaþ"3kH0{d0?OIDՔg=´Ke8SX9ṃTy&C5"(  nѧ󌒳Y o帬ƭy46ϛ@g3PJ()D CM %1^ mn0uZ}dGzkr41G[A5QK}$ b?| ?sH%{-6T! KKӫ\NӉGcZ5OB6KN1۸IJ\@,}svЦؙ-5m?T nfCW; .BR~ˊj9}$ Jy;YTV`[vƀ0C_)>*:~Epo)OD^RTNz`rPKJEKsS|1KF{mײ_ qoœΰMA\GRN~LTZ*\n1'_9'jŸAD&jz̡9kϮ@~#hV9u:Ju#M|:l80Q$]pVgX));o<3⸘zG9jPG(h<3I4L%Qt}-٘IśS;VΌZlv>м6d/lc9(K\bGάflZ w!ń7K^GYLgli>= %>3X ӗnG<}9iaww[q= nTiW%DFm0=^&y 8A; ӧ<[ry:sj{.}Kv *vt x8ҹZ#4໒#?#+ f91C D<3/۪mX,&8YȐpk. &I߿!.BI~4S WRJ1iGD"a՘;ye M \{yujSԽ;,, I5I~&1m$kgjΧI=YIl `A/ӫΘh7alX2W`_T{3i]Bk>AjFwޞZYO Нg'wN8 x^?&,|Df׏& t_I=$b {E0vl+uf_gi#bVڢ晬?6)¬'67`5$uLѳ9-MD#u'&p:=h wuNrWHBVp<<ϒ9k ـCN ܲAgq7^^$u2]mrprSf u_@]Y?2, u36;_R HsMjm71lw01L:pP˟$2RwB 6 1^UJ]ǣIf޿(D6; \k/ֽdM@(uA;tks _h73)| 9UոBJb}adBOcIɰ|Φ"XiH:KQ- jaHJc2(= @oxw*F5uAZ Nc5M3iOosc9" en2 qHe¶q$oZsf2$qxNQ6Z&;0PJZd H`tbmZYtmu ۥ-5˸b n R&:<& 0,bX*p&XL(a<%PؙrFI>;)I!\¼V #Jyي9' 9 + B69-U rS"3#_f3"{RO (1c6fm}09߾.(**j`6*x/A(ȕuӜa&% XG{c gZR/6V;TusqX${t xL{H9_D@ &Q̨۷,c21r0Q GݐeKWcxyXvxZ]ҡ (X~,{[VN+X婭#~.婢us.lIs%BxTmܟԭx `̲Xğ+@O$KK*U6\ i@p>2MZn2L}ޝF`)>ް_A㌭[(rW wuؔjMIwj/u~ Bb%L\d+gn@cVN8&OImت3bx|w$tIWObGkD {d۝[.& pM1͊t11.eqKY忴0T^*0uV k39^~ _K.gK'5uEh拏)P! ǝ3n*Wfu mjZ{-(@3B{JA,Et.C( 7g$W=칥b 5n4<,i>ٸ_T34al:Ow05bUk7Ñ3Jf&w & Z^Z::)w}~>un'w3Tcސu/J;1mxזţUIi4DTKL~ΨwǠ.o0a bC3Dm{ 2;\ECtU``y Ho!("ZgL֚J'eǂ[}ґ܇#/yU/z΄͌V JǦlVřH59 8zrpd('Jx(wsnA]w/21d< '*qk0*ZlQK)|Ȥ gvx/J %Ȓ! +p+ȹq;aiC7D\p\YZ'_y+dw{焗)$Մ@:jE"ފ I7 vcWcM <>5n!^N]MJ5Z3pM(c;&՟c’T &=C< ÌͱGy{Z== ]Ţ*obGx\>0d65,ACiI<-h]KOwG?^6Okg&l \I)^"N `8t]nϽ#H߷m\JfX?\{ c^e_e;9yʹG 41H Uvs0\& KeKz퐘yrT^; Ld {t(@g D*|> zh2UXDkՀ+4Ml h ,TG`<"2m_ͯ~f!PmWTK'^FA6fN-${Z b g% _pP/ :N}j|E?bH]0 nVRrv8t(IqOZ d7zMtrt|QxZjn^3:CCu'S+ nIEV%1r섬aj۲+ h沦=23o88I ;: Ke F034PVz۝2Y[ʟ쀀j\Y1A zoDϓb@c ޾VapbbZlVU[1v,̔!?SUhѻRM[s *9mo;G>⣛xkYg?G jt]nPɆ)Ix~ lxX- 5CP #ǃJCLm~sL&d}a&YbQW/ѓ צ6݉]q|ΡX4j _1@Zu>M%/X*IiÑ sp F)ECdH9l9:i+&d8%U&=utJl@MQ5ƆbJ9ܰ+]1?u&d !} K \s܏<87~,k0>ߵY_5*uXfOFSsyLd&]l,OӝD^HWiN]O؝2+S` _!Vߵǰ pz90y?M+=Lx~Y'cڻu@frfOŸ\ſ;BlT!n} D?a?.( #PPLDĖ`apq,. 좔NI:+2pf :+0H'[&ϺYIȋ 2 _hJ\seQVWAKJUQR~[3(dx[ Ul] AГt8}Vy6v/Om> &؃1 aٗ|jF7u3e!ᢓVgEUNӨeHwz0vq0) B7VG4!XօŻ̼[nXJ̾}|yDY*nCww 掗!:*~+.c"pe>T=U+!/V+~Q Bl7Q#wmU3wWEz0ѹY#ȹ]&(quEQUtY`T`tI9Լpff'6*ǾwVSzrR@ M麴 O 8"/gڠ`?u!I>|H3z.\X4Q@9P]dH C[DCߧtȔ#z^7y8ޤ4/$j͡Rgu(ٶN`kyi$SH>%y]˞ z+%wq%LlꦦuzXk@qpk؀NR)Yh-bg$io7e$,L>dclI  hJ:9J*Lۧ¶e6RSgbdR N0YYS"ݑŦ% 3Ւ}fHM hc$T"#CN3C 3iטzR24ƫbZ49лW9]+;z (vpFL5< `Fh,׹ƣ?0PѴ%:q%@Tl⃺Dl{>7/ϑ!p<ĮqJrYwyIt>yֶʄ֒r.yPh/-CP,DO-R E PGH(+$ 45K2Jn"neb1YR‹uعh A݈afϧLc U+xjzǕb7l*[%2VEj0\ [ϳn&w,HXYIU>p ;֢ 'u?59m˂VGRu1~ry}-,=ǂ(oŃUyk։/NG׿]IrEAsԜ?[#TٰǶ@U.yVX x+ߪԽbyo!i~d7@Ll더xBja^䯽{u켡3!b*3 ]({)}UDžoɟ'&K|Q3am,vVSԡ-KHo'-I~3@6B? Q xr^!5w!yZF_}ՄIPF8Ϛ{Iznh.:xbQmyxpV#2^ "k9YiٲHvVq_ĤYarW'3y %fb%p06[ 5=i%' }iDŽoS; GxW\{ ?* q%GZԜ sG3j %gz 'ﲈ_ۧo]PjMoJ2 J~cO6FPGXi$4-GUFvZH`DM=ކٌZsVf xo. ڕƎ*35w{I=zJ vS.eKR`YqBDwj3tF0hxz&ΖG>4խɦb9uElhuw4ṭsM{/+fir>䢦RI5}co$+OwIp:g\bZXҫ!l~|H.y ǿ(~"?HK~m&5v@٥tdy;֗{l>"2`c&\+ znl)a^A GKL9+Q "y|ӲﲂHRsּIv#{]EQG"-K?mĤ( A0gFz(e#zkCϘpo86,>,pdO1eб5e]8+㼜UGʔJ?[8VBOnd x2TuMi{p ۪d)?m% W#sșlGL#a?9(1K)p̦7 Ni }hnL6!Cr{'>{x(M6YRoL7-9D.+z9k0ǑW:PE7]=Fgza:nΛMAn;1x6i#C9e P*fbE~D<)OT8(eۺpgll\g $.I ݁j{yQR?mIR61sO1BL'~ #L_jMI/ЇԂew jh~ Cѱ (lw#kKgRK8y1[uD xAZp:^[8 f}gWI 9.LFG?g`r\< wz<]>61+6r!S`'G& YnQj!4+t -=(RH-[]`, Nd`^V)%%m.*It;փK4׻A%0Wy[`[_<ԴG`ۛg_X);`S 6bʜ!N`lnRls8HKvJmFs}uM5 4 HcurZ4n  Cʭ׿S"/;G _HE~A3N8B?є O" L R 2ۙgBsg@Rul_RIjT]~T`#c)sH;Jaw1ZjuX0-E䑷T_t |<2ZQYVlX)mn5jƴ<囫Ӹ\:ĻIK59eNp;1f2ߪx&T`I.Oѥ18+MI^:{ #+D r'  db, ߑi[`43B,9%͠I7j/_a8m Tq2>ܠt6\Kփܓ,'Wat2:EA>E6T (5m3$!;[v%9˲5_ Hs]ܰKA-;Nvz ielv4| .S5C"J?` fmeَ11 qX ۧJ|,F="[=l IDx}`sa! R]Dʞ Bu}V)-r&EL!WXLȔKՇM{|2*ѤWE5rFKw@j'WsPʠiKh@u{๑9^KC&d>%wv}pR,˙1v; \*S?bWF]`s{cمbkO|>+xjڷK8CM!g# r%Oh3le|>gx$b笁B{=3uR= Z򛺢C^Oy]*Ӓ-蓢mѝd$މ\vɇ,ф~KvEeC𦰧- ,kex\ӑ<'AKS]|Í%eG!UBy P}D* ]!|D,B89F^+BO`.wثeDR *%ztG;{,8C@b_w+hw*l-~p ~ҳѣntQߚQީ~5r ]ڜLA68rOEi; bLͱѝeJu^,QɎ䠰(P: z_MÑV밪_Ȩu](Q[)4)>IXw? ֬+WTu41=:Křtmj̪r+ywhf̡ _ cZ Lm2=~(gUrSul9Գ1 b6F{èr<1% dp)O VƁ[-3oraӨ]CsB߻#).SPlfaQqrua$S\@=   kdM8iW-'݄_x;/An_;pUYVM &}xQ\c68Y1qD}v@8½&S ,g̕(r|]<xIPT^M{uKlԅOB ͤ:W CekCwr | H_/GT)=zGyD-̈!K)rƓXl v;_㇧L"aZ]J 5c?/՝a`7"3ۊ#*Ci*]m%}po]77y٩z¨v2}Dq^3 }0U8o10'3ZL{naK !(1 +:=n:0%G݂+1z;(7xFf3JQ jzk{f2j-O1GuFg;$5 \on$~ȹugע V ؎jL U @Ja$oSFb o E(~@!wp,4+VʻHv{@=UEH_ZV18]vՊUSkS`6,svS㹏!p}HgڏAo )^z)bTH$vB;PXeuu]27FWAJ-tNA:D5'G/5G;k.˞.ho4&Te,2y$>G9ȳ&X 4gNMko`oe/!4vlx 9p=l-/cN@2)3!i9Nέ&* opuږET9~A5皳a4 .Ye e;"ĘpR#Kq.TJF1.Jѐ >RVݤnk]d'JAH35/l n^(,-Vލ+(V4;[I@5{nh,zjz< <6;gL@\S k'W ! BO5oI%HZ6_|%vއsЃwONdci^Zƞ Q%G!W (ط%+eVJk AVN:1+ӱ֒is]R9=ZÓ%uu-m^\2q!Q뽨)>`ó 赜pCyE*ds_$915(ϮwxM&@wd`ИΡg࿲rմ dH Q@X%XUz'NcD2 YH&&2HcҼ}ٷ]{6+д(}Xc(n=q{$lj 鸷E> ^+A|Ep 5IlToe35S H!Oh,v-qlj@}CA*Ey (Z2]:a&k-{1̳waoi-~ܿ6a1}&J" .U\ (¸2x{a) 4ӘǑ$m6%x( }{I,G0'VxĘ< O!8a߷|T#|dgv؟5HQg_ f8\or8SsNO-; .QҺ r`幯XQnk5j+6=]27b:ÆR@tN7ZE<_ҩ]4KMV ƚs[I"~;q}_XdQ^_AR'WNmfwau?@FӑvQXyuU_H]XC:Y>6zStyUmd\2 ĿiőcjqrU!\TNj4Ftkg@Oܘyq;(|0H?Ha:Ek]dAyZ@uHęb (ȳS!nD~Yvs J UrZDfsL7fGۥU6]ag;BʵT({b,lfuZ@ʞyLJZޓQZit~hjpkAp& aT|9#N>}T4uPo;~ T-o[=ywEȿO``ZQޜXNfb<Kξ =ι'1]@n53 Ms|aMJ=8%.$AKl,5qӆ'h2EY[W^#0mQqAҔG,avo6TڦؗA,ѵ,l[r@ $]r/pn/ zpρэƀZ 7.@!}%iJl/JKCΉf|#!vO' o\)$m^ :̒INeDюJ6%5ۯ}:΄n*j#a>~#}ǘjhK3p1`w9h]8W@o(h^W7ʪ@ka{7vf(I%(Y1e߹ !CV;?Z&#= *s{ݧI-lRs+V)T~q%BD7P؀hTd-x=gZ8\+-x4Tv8cD.LOkE$/f6JPzJEE->8-y}uUsV,'8P^-qΠ^I$+ÕqːkJŠZP#:Yhlsվ^VmiQlS FȩHk'>.:,&.%^1w1*8 Qɽ6Vc4DN,4!$7Ar9> suY@B\''#?E*4F$2A$㯋%/3O%׆6DPER ?dB͢{ JAbJJK+mHV%@6( pމЉ"k]РfFSn]xOX`Cym8CSE T9Rwmy:@AUo3z;gO^0U(fu||[^)TBo๗Ɯ8}PDY7a%{=boPwp1ԥ&KRnpR p.>(5 8#Wa7乸_Z,1;|˵ۘFqLa`k଄,`Q]EHh6-`JF~ם Θ/UFLyc`8(V.N#(&'QNG ʅrU3۬Kþ#m?FDi;z[F SNҰW:C8,e L/ѨhV~%0ӻSVIc1„'Y!HLs_&g0H}v`8&H2g3w4"5E kࡦL~Ɖo/XE ZE{JnwcX|vw' Guji;38<։hDut<'zdT#|m qI8pJTż5 gM >Ʈb%_(ZpFax]hiQ|KlYB|h$xX>㒢k AY NzkVdPd.!̽m?7X@:P ~F2;? UD'W.bөj\p +(hx}fƲҔ# H63gjHSjC06i h8\BKs>+YbR JUWmz^2cc]ᲔYa:[: CFGJa%Cٌ½{?=BYk;0R1ZƟ;m8t3~f$ n.Xg{֔q+3O}ۭzl jP m]-nEeѽXL++>[cfl} ޕEö[bU<̅Q?) qbŐf^Wt.1t hbncM WX|ý,;d' q3)l@*[?`p;\0TghP;ZZDVJoC]iĢ!N=.5^jCJSʒvZw]_QVO̩rKXLl!$+քBR'.`૴rY(9k""x>wwG#^DZ\+0t o;g3D5I*o 0 JYG J|z\7բ|+S0o5cz6CDža7ÆZB#1pa,JۺfxC#¼ 3:aQ:t p1٫< u~ž3dO Y&='aǝDZQϿ:-@ꮦlW"!d/[C fνnjnZ.ɗ|K}$×Jo2.~rqpL6WUqFW[ $5 ڌ)ig)Ǽ5Q$(Ѻ'k TTtp栧b]t=Kb=r}=-<4%}1ZgE!z/u"kLJ;gpօ$0zL'T8ͦ]@h`qb͚@{1 !Qob֏C˞Mf T},J DyRĕ@ ܟ3ʦEL<OmGdN_j@٦$wirMэ;x'{ Ҧ툗skj&!d;㇨24!hm5CQ6CsHz7o/2R)45SpHb5"M00՟25)!FZiBC U.{HM^Áv #x ƧWn ~ɃU$ +1v o[c*pZ 3{[Pz'!S✽N"G9RTkoTp:篋G\f ޅû\Kl2iǀN*[R@ p Adz 1GHtuG\c5:|2VܱeήZÊ73Αbh;fyt^dkºYQBt7+*_{I)>r5jn ڍ+O2*"{S4 `u* { PC/悏0k{juAW42r!-jzpUϋ#BJh:d?m0`N0LQ|z\w2Uni@T8q\a-a3+%;nZ~Y:M9嶊sҥ9VdUl]Məq'FY%Q%lDŽݣğZdk&32gSSdF̉{ ^i!9#Yc4+:Zq^p˒0  sà;.Dݼkw(8p! ),E j,qHn=#&QtVűEmJ!4[-jqqY^ ШCRҏ)Hdq<3'e?;-2ɜ/0!V+-$PD BORBOajqMq~ ҫkA1eԩMӅH,c 0cʌr@^)}ݏ iR@Ubd)!#M5Fq$O/c=_>45yj#T!98_EdOc|࿯t&UBSV ,<_σ K y "fٰK`Ǚ,ֽwPoY5e sPi"WPϩk_Ν3ybj{t 񻈤PRy,w$t:e\&ㅩR/0'Sgi^q0֢}Վ5CR4MiT*=J $7n?N4Bwl;h'Y;6"%rPݿ%p☈9{;kwˡ[ ~C:.o~Wuy䪹P՗&/be=]Uq'=ˌ A۬ӱG,86,3S_fZ1>UӱH=Cxn8"-ن}OF^y \27ѓWŏtL8A)|idY$ qH$:?.%vYI}oN2qA]E`}N?мz.*L3o6PC_}39,mƭo <&lάں9)!)ϕ]!%1VӢ> 鴜w&&"\46[1/8"et&UzϏw,] |m saaȊ,Dwə+ՄMbwxx3'۽D,ji'҈rM4 ^"݆jf#eYKPoO R|Uu1 ge_ +uyqrWg.N9 y#oHʵv:cgL?xG9^ՄAg0\J`/GUVQR@yasY]z Uׄ</»)0#.|BLcP߉dT\j D}H^_.%Jύvc.#"\d.fU4lycgHL0]HL:{p"S2B,Ain]9Kw[50Vl%mb1HpMSdc-!t?$g:`z<ؗ[Vgs? DX)JQ8#OpA:7mfفju/B_UK2Zrq$>hGuQ[ Pvc L Mr .-GgEzŠF1Rߊ2t &qLqڱo R^@E:>ypsC@z;$1]EDΈ~rbKZ M$51^Y&dn̕KԂ15ܖ9x/3Gx)'C.rZl)e(F)( }Mh[ݚ^TÄ:fE]зgĽ0Dy7?@^v7@dGbE|L/A,\Z?B0UoPd\T^475Y)?})=;:g2$h0+$rյ]tFfx4v'ǡ7|)ly ?2yn23;d7t b?0fN/;o+T.ӎHǙ6wum$99 vF&]Ɏ"Hc @ 5 :Gم|`|dD6 : \ŕCkkLqEELe/cS1&i_L!V:_Y.@ƬV J+U[!^)Ar٧=  !szKޢEqi[L+dh|9#2Z<%50&\z8=aFZԒ񻚓aOXDCv3/+ޡfSjPYٜ⧻ Q‘ܲpiH["Qj^Uu= O },KY/b S]Pb HHa.Ւ'~yۇd OHҖ~;l_@>&0X2gAZcCOF)%_A08i?Yߗ1Ԭ r71;D#w(973]-Øi=ZVyh8*AHdeV-ǚ9W`(klHm~12q2Nu7%G=͡/f ~Kr_ifQUiuetn+;2|ٟ0qzciw Ah@\FmVH`h;~Y*:Sop{Oc2 xWաH^q'i')LЦXow*9{< eئ"LX/oxs:^dPn;.9Si/ʜ"B5sЯ'a`ǟjZgxԼqWol7$Wigk;Jڌ-"xB =ՅΪxzdV=n[)_.Z0!{I$؋!`CYRP25|>/a("dj-n& Rk.p=Рc#bNy I) Fu  G{K _af>L{`~ v'{Q}e6B,>p MU: p'UdIƦ)GhLF&zCG/_-ŋK-ХI9HqTѷe§d ߅ĪꣁD hSSs&{p-UL{Flv\GD %?_9!CMuaMѣl윞Ϣg,QZexF$=P("*7 TQ.:33G#5Hi)p.2f$!*LS^bCgu mHL87f[Uډ=U} 4Ϩ[pDSrvBa޽MPg1ϗM%dʫ>vn2$_H8 4ԙ6ޟ.|!t;'U .YHZf[MhI4bb}4ԆN㩧7tg< )qWOk{X+zs'jeB 1;r hB~Ϙb#HS{ .8BȬ QSt2"bEeK?s4d[Tmw% -؅;,Ffi2 vJvM/7:o EFA $LKEm,R-x]Za vGz}>Q Y2J{Mz&ß1U%P~r蚄%n ӟT %1{b÷b*09/5|8dmU[܅Ϧn-Z! )|V.E#".6.8xY#1 &uh~/-jtOCv;F . ^w#rrV8sMhZrW!pVr.zX' ,|O?B*N?Or =M1 KX&k%lK:k9]B˞_v#tJg-e å/KN (Ajʦigj  eH'8sy<:H,CWt?-b%tִ'[8jQ"j&Ý-{ XQˢ(Hky!ng\17S6l+r~r?á'Ϲ}~<No//_K :vdVxP`nGY~o?q% Cд%9k caqk  ޙtؠۋf&(ng^-4sdfD>s=yǬ,׺-\rAK`\V@Z[`^8sIoQr|bX+>CGZ%ÒqKlwt,]} c:,%+'*y)c9z;.r\ۙ^l72*#u|ry=ӌ8 |Fm @|%q$;+1/Io vAT_|֜amо7R`9p=$ 7-AN+h r;β|30n,FBUT0jMZ~ߌR Bl(vϝm7GbtYA5@P!>M_u- }uH( >?}"¯R{X1oDaLK 1j>KigI2?'%Ddnz‚`,Oz<>o~N;ōaUi@zxO oG_5A% 4`jvHr:9Sob pҙxONF[vap΍8T'_D[ks 4ڧ &."G*R{3Q)LX:}=zuϼS00<*4 #@2cU>kH],qk"G:Ͷm@ ֠7*eUF8V '+Pͫz qzD`) Q!_Wb CEm^b&j@6 hjC:>p˒Ѷ_FqAta k絡7uꁔ=c6UKi)\.{)TenGB B Ig~uͬf'}ֺk>*I4ufFuېժ*ovEcS"ZypUqBͽ&=9#QAe<M ]<+Zj%^!(ȽI-| ¿|%/}>$'UOz%֜1 q3K2[Fv32"h|YHə~fϺZlOvч<hwa6 e=/母ۯ"WãxrqoSB[x;6w0ְZt``7 | ~Htn9u "y? _2^:^|4'2B3Pt f]'m ~m|;w;}z%5|IO2w䩔эl@ ۯό澸 ovks*IY{ ѫڋ{F `A:wlkѰEKX1¹].fo̡bAִ4yzIdͤuW2 =#@6tSc{Ӎ *?;bߨ8zuIqVjx*N.þ䞛9^\1͐y?vxqYtɐMFͭ KuHY$rO U cNNEc-NE1C̪[J<ң+j LW 1+_ a)AKʉٷAP=$\c=bmx@,6kV燒J{_ʏ[DP圶/xb[QL|?<3=NTn2[%r}2EBf1ƦyHr #xtI3>khW3''.`!zO$u<p矤*/o+ng*}{|EZEre֋!wԝeoIe,11.R(o#e˖zŃ.!CgUSDfC!LB־a &"+x}R7NޫkǡB0YR^+'[E/CoEP(qο :u>+G&C dAr*Q1~cJQLえZZ, }F5M$,?cOj{ Ysg;Bk@ĩ 7f@%OTMY_WsC[Ǵ$i]oёJ@kc%fY忆64#//m"Q[b?6t AqO9NG\ӽk/ĦǍr#?7Lw^;}Ex}-ޢ@ w7aLwݲ+-^ @syZQg+Ģ'^Zƌ`C`Ml6(~bgLD~6RB^C;j䝵ˡ2/\"]sI8 9T| 8}9M\fGU {3 >җkk;KwOT=ҮЯ6/mJkԡ&:Xa a ^H]`-݉Ҏ.SĻI7RA^;ܖ'mϥEIGcYɶ񥩃3|{\ JGa~VN4~ϋ9Ts#Vm0Ei5^u㥇ILu0c_Ot]e G{AQk?fgmDjGƊ&`cm|,%exvXw `t)IDJ@^'FVեt)`Y" q7"ƦP!n]WH.Wvxz{.nk%h-0vx]6i҇ОYh$~1ŘQM )Z2E)}v'9lk y r'KnZ<tߣZ;:3ae?YImk9^ruL~ v;d۴t_Z)O#ѓXY6 ZD=\GIYAVzs;8ZPBʬƜy2ԏw$TD-V1CjP6&Φ Îڠp !4 ]Wf~* (ꖟ`Y9Q[cB~OxD65 w(D a0gLx/ 5YRd*9lAPPR7!y\cJq<9)-^8ҾRq߹0.qFY]m.xo4Ԭ࡬"L~1.7);_p:.L*2ܽR5I=:[u^3t)M"aH%HB(ߜ:C@uW;h>@[Bʒ$$ 5 )Ɩ"SZn/vV2it2l./ud$na+HW |-ǼCHU13BИb"Fg]tYh "*$`&٤ JSe]{P|4[ë›*@;nMʿ+ y!謨@>*1"ziRc `>D+ \,'.q_q;KyU< idv Ylkl]!7a`nwPSHԤ4ddCXcTp{|>AfKs0OuAblZ BOY?ڂ<b I-B)kew)I&pP"lZh?닉U1:6#Î}|sCAʼ0)"0M M/0mR튮ƐI1OUI~v\ HW|G4~%UprFjpS7**祠RcO9Q<*ې"UM.p%%6?DD<ٻЭ8=vLٮ`U1&df5>ս3&1l/e^]ܦ.DFvik=^o1l[П)',5Ta66v;/w#B9WQxNw&CRQX? =^Z$d4ɢΤpq:QpAGm4NyZ_QIt{vN0  N_'["܂GsjƑ%jGʢG{C@ PsT;9l0i: jb?ôXYtv-ժ1c` JCxA†5}/WRЋPF*v:cb|ȿCDCMfE%A)=b!O&v#}qԨBDPtY Wj8y&7|nDa{>֨ۜH_su.:Ww^ rIlG)K( e)։ HXqG4?i$,&,n3XG~?J)؎rUe1ȡ 8ߨۜ3\Gbp3K_MV96h GfǦAҜ;ωh@A[o?®v_#_MI4_h `]k7:aC#4M绗Wjgrf> MoAi|䈛-m͢uی`N=RhS^~#ae[/{<\ƠFM)ֳ(eP]ఏDC)L`iC]ur/雟`H`_6."}%YW7XCxќ`]E'KkGpڮ"Z Mcx45Xt0j^pDH>JN m>-B'q>fa8eHEJ 8ϯ&3.PmC!%~ qʸ,bLټPwBw ²Is(awI+i΍qwKp(/Eq⋱Gȅ lzH^k^F04!c_yN% u|# ʰڣ 7M;SӃ2L'/wԕ8Q5zl cc"L!?Pv\9{]E[eJ_T|$E ꄬ@?Ci"Hp>=.ڬ3#g]BkI*\}F>?5z"yăGQ“11J0;ij }B=zw+å F4 FD9~3CHmtǟ\0";w@V+kގ[|"2d R,21k<j *?>о2F9߽`C.DN^>VQAȯ3P g{WF.nױAWL<RՋGd5DMB-JbG9qR e\]nTI%6sq֪SU+N0n JsB0 N)ỗ.-hHCIk֝ufߓNk>rY?){2n.ᏱՀ?l R5WΎ2-=NMAzw:&;9F>lxRq` = S$U%5<7•OР/U  EUN}ES#x눣o$FK[L\ܱ<6x7ir¡xͅW~vF-g6TI!X.dPMw5䲴FD8Auђ{%7~έ2A]BD~-lY\Z. gx ͜1g d]840`[gtSWO;wq?.c0.!fw $^9mb }5'ט0xvRv5dB֍#">~pi|bx Ϋ Xp]{yx$Qߡ}̂P#q 5Us5E/;=V=o![יF<):5?t~^nkWu;V bMԑhD&`x7X=1x0YvRqj2!0:Mgh.C:HAAĬC-&=©\S!4{[W dPg\l3$cÍW8AW)UTċِ] W>3$%e&A4 ޲ P"P߸>x?6FiB`6ʆf#@;_&A+N{С1MPJ!G&7S VgYBbWzE.\VYFXϵWHPd/)LoHSCIϛH%sd(hw%F%SS\/-c :v AQ>MNK"37 5WzuWY =m ]㰀'+ЫgqY/DڴF$"Z,byfE,6Q =G K3,AdЬs%UBCM5sy0h:$ˍibFxSƍ|fbxw:%]M8Hjf~x(5`A\`qIa_?Q*!9 l > w`{azuHf~#a̺G.C/<(F0vV:Ofq٪%>SU?Չނl~ @@ W؉AsU/q7ZzKT6Cq$_+9yR U$?_"tY6iA΢`uTWpkԂ{zZ@]>tnO}g4~85~x)Xz/] t&pLA-p2Mhp{{IgvZVxrhR A>)aա(Gɂ aHU`h3| "ڙ b Rp |v ^G&ć:*a|.sA%ƥfnڵ$ .ӣ̻@=I]AOz#wlr2"]x$ǪǮ­9iKg VRִbj44li Ne!U lbJ72Z[m+vi;m5ɖdYӧ p?늄}<ȩ>u#G]uY% $`$$[:Sq @6YU,#Ayə7>"ƄI[6x r`S$*iJz8jn!{d| N ՂlO0ʀofcϖ tvF |]H!i~% {ә:\bQ͌+5|+0 5\\Kl )F~+*c4>T<8Y޵XAHO{3¯ҳܽX߯]7^:3Bd4KZjМ=ZcY܃i ƩqP1#-eV~\eJ^8(vFg0QUQpB3nҸx,B+Ŵ҇6,iN܊ =dS{;Se!%=jdz"PuM+ȊO.=c f&;dBR6T5IBM]28&tp H;fmrFGKKeq>QP#ct^c^Zτ꜐rxʷ5wh!J`!K@2na @7:}UdbwɚА]cm~,L2}茶7j ׅJ er*LtaFY)>8'AUjBq5Lws  vjߍMR`.Z3pK ELXɏ(f:9gBW=vL @v8x|ph9 ) ,i#  {kǠ 9\x4c SwGOF [X0y[ >Zsx-iU((28~5f.)%fl%5^"C&<@x:r.V˓>l[ J N0B,*'fCx*Sz=!Ad7 t"gYAd sk@+&.(sfK@ˏ M^ݯ@:ocymL qӱ@aa϶{6ʿM v`th -bj6C7)8]Ê] wLm:̌5!bowBd[CRux^mz sZ\,'JEKweq|t HML{x)nr\aUoK!ǴOwHEAx/WBX9NA#>ImdӋAA5i㇇9p7*0\ɿ%ҁc,ZZ0[>-T\2(U)AOκ*z š_ӉxBpWIVG~ÚFvɇ$=oӇBRb-Of9eUiǣ\$?E(A)(I2SVsoaRBn״p@WjͫEqP]Mz5]AotP)?2S=!埨fxPTCy\Vm쐁`@W<hr/%[ʖ&{B.BεV`ɔ Q,Wϑ*1^/Kv5~K CE#oqlC0ud"yd4Ov/\%*hXN3y|ݞw#s$5A@6[bK?wITἔONtN.:USِx[PLښ˓ OpeML^՟-Ot-Z[ j.%taxh"~5fM2O,]3kB!{9j3I]r|2Tk39"}`V.-5 y#5mQKCcZnO?C%(ӛQ20\OYk]?`Oz8!}ʞ^^P6-7"J18Id ]wc ʨ=HJZJIJ $g3$3!LS״Cx!.όHQ)o?HKH%>(f4cw8|g QHZm~a)7 r H{$߀ ~ +)% wd0&j6zEܣJ*ϮUO_FօC^϶X0f4febmYb%ǾpGf?#7rd_a{ TXBBZo;CO"F.>2JD;QjF2t 6#~zAL 5":ԿۓS=\|_y҂<~0J j^> 4*\lx*Ͽb<24b}~`OLV+|g Ğvp:V_--zhGUHz:l|cWnkD?tGC ='ձIX5H&΅ U7c#ͧQL-8M1z(bHdƀ-| 6#lj݄=DZS͢24~So$WXt0S<2NX@um~,Gw,&bԬLzTWNM!<4:itvs<2v|5R1,_rׇ(i5 I'?\`t^s$ђ>c:QRSaW_6:[$7{CZy{غrM/ {c=uƒH}=Pg[J-qҫ7rtUd)*lghnCI}GyasoBOЕ|^y8TtM i4\ZT"}uHi b[5qp'ڤf+ZTp8qTˣ\s5ä4"Zj 9 0@H*=Y`lgќ NZ(୪7dx$< Ci5&E^6 \R Fӫ _w1q1h]>ʋ[9wU>pTsvC3NߣpuD[x1a@*JB%Uo HkSz/ 53ܥ6X>w)Ԭ a}eP, L2)Џ%h -PCLU5!w辭VlؗȆΛT^pYC a13mfw᣸vYITn e}Uo{ ny 8}VDy\Z;k//T$^$d_Ȑbh UX#)\9&Bm&Thad_I#>)'',T$'r6i>(?Սaowԩ6(RQ,[ty0;l3"{b|tQ\B KB{&XY>Jgzrl ׳G9^I$&Wmqz#þh'y ˩?ߔs~OkF=} &9 )_H!*x{Yݲ y†5t~U@[^%\>]ejzvvyWBJA. ң!Kj! cǠb: 5Sqطb.'!#YdHt31Vo9n5@~U`za,_ٕd~3nC&ͿQB rrm㷋9)xUW)U1 &: ~_Eh@VEJ[,DGLv]& RI~G+mX]Sgm?dk+ݭVzvXY,3-L'~Uǵe1:Tp;>OFO8W]Jwwn*{ճi1 @cCOI/Z|[+K8&Q kMmOFIQf &k0#<'mXu7qrk0s>#Cw8̤!**1n `aU:GG<.%VTs𶹟GױBt~s6z2 :%U:$1gl:>lY#13zv@.e) OpKtko$~R>1SlQqO{ECQMqJ ֳr%#>^:T/YD"k pQ7DD\G;xj'2͆qx?4 qBGt=,*j"#Q蚲Ƭ<)!f {N ;dX3Zxo詤Y< ξ}m 0,'?h3Fg eyu4e1z5 {_4<8ޏ{໐?LqmbzZ M /M}1uD{ n5ډN?vC"E*H(bP]b8 14k:G#9 ":} 2XP FWpڛBaYاVfp=<~ LIg'Wt=L0*V먖N+~yaJF@֦W#DRE0Q/TI%?Uv׬ޭ 8|zfqȹ^q?ZYUֹ<- P՗~[&5Sn2X.^7Ur Ecx:[Oܒ goǥG_g*w]˒= k(wkަK.mڤ$\/9Ӂ9CDأGoL4O8g5k~8 ncYpU2-jIݧY/΂|*زC//]yL@)02qLp#L3,YV9Njk/9&2vL>4I1?/ʗ; V|ulF lXa]ӖfbHFayKƘNH ?TXj$&MR|dnC!됮*.mLB~,p1 Z56&=MVBTHx~}YR-H^"Ҙ\K?=FgYoѰAU~tk526,H$9<'{_iиz ?HۂI$}/o”|,w?h! ):JJs1 _P3]ƘiͩVHp9BvXS:k@'VG* v41!ΡȠ{*| Vc,j =7Q)S-q:IRpxZ)^#5xxj$鄎zk7ᱹJ[ @ Hx4N mnjSVΛ.)q>gr_\ݘX<j?mעy݁7٫I։ cȤ9S蜭?no"Ë`vixZ~$Q*]${-iR@OCy`~nדY<948%Ax炽epuBlz!:#Qdc5*l똪%H^Oc{OOLw@ cv}Y7AvrY2Y ܽ<^Kʙ̹F6}kꯎ#SSWBvM=EG3[z,I֤1]۠/Ć%:嗆LWnQHɐ/2ӼOnb{vzUqYXg3uvaxS)N)G?a: \$(8#/Lς,Žpd^OK,Ҡ~YZ$G.H04<@1 9c?*??U$?&z9HBY}\1YKR(1[O -L v=P10qފQGϑR\!S슱}َR1і| En`*7$YyIf8^~ᩙ_~ld_$]sHyl];_uL_6p/4gv'՟,Ҹ0\bG5gmWZ<#=e3 t퐞[XˡiGbM҃l `V p8ְ,UuF&CX=lz|E LW˾Nb9s SYpM s5?0 u`c V xxgll,f'b + 1H^5a:x K8}%d+Vy˰eALK n^S{- Y"+e0~*GpaE5K85J&ȗ2; w`ۺ&}g`p``S$fhzc=آ8|p[EzsKTQcq߈.¥.,76(jf )=;LWwm:VdmK/.@᧩A0+4PdSe|?j{L=&`qRak`W~げ4F̊Q5^ CEY/EDIkM;%lc Z](PY09^G|ʙz f0AuP@R\Y ܢjRɨԀJh@ʄ?0(9 n"!ܖ6π_lzR 0"O:XŅL)(A$Ӽ(Ws ZU;NSdݐb4Щ/@:KLX|Z㊹ E5lgyUN''OJmb68H: G5 r;"91Rgayo<2Gv/i\g<o`9:uk~iŹ|.JР<HǕusQړWAnYطøV inn*A/Ϊ5ʻ OLZyV Ns,gh)@3zx&W̗@:8edv:o&{3uPEPu<{UW&UbF\2ƙXv>%ً~..g4s-=d:>l~$̝nba8p񕭿_H3r=>z ':P]^,<TJ hވ!T np{ 'GimftP٧Ay~g@Ѕf8?'s똤=s:K[5d)C =C)VR5#Ԁԡry/'}/{i2F-`Co2R7Zߓȹc1tvΗo'a_V=p`C o5 Se-?8X{90 쥣E`w :V|C&KT_jh;oʝk$K|ϔ~XcY(Ț4XXOE!)O;>QuXK7 \r&νRQ 6#KNO<_6$ѾGE/W>* :D"\/lK ϩDF;hY["\󋓘DA//3kɆcV24sᥟ8DSKpM6.J㣁oW8E&{DU8%xuɕiA0Q鎚UHO\Ww1 ]K>L04j kt9Z=IÀi}3h6\hA?,\_apf^8cCK3+K\,'&]1!h W̬sɂ vMhw]orAz׮=f[wF%HZ/@Xj>2hr͟Vp+^&G].5}9FyC՝Ps(B?ÒA2!%y|5!~]skJ1o>޸Sm$&z*!RK b M(IH3'ӝ5U&_R \Xkr=.L} I+SE9y&hUqAotS_.UUHO(V8>.Rc%+~ϧXfWڣ˻hY$,(~3sB~" 9Pm^ȋ̬^Ӽ3u= Cq<3r_Txw[vQzs\Aq^/VöUHo;Y?xlyB^zĠ-5*ۃ|&S{96"WAJ\FB>#H l1>&))<* Ph-;mVP´^CAJ3~XuzHdЉ|Er%;=0[{uZO%gdWjժ!*Ji»]^уYӒm$W|d`U ⽠qH<+§Vl *G]A6=J3Z~KpdSxpn@ و+l|24EBzaל,z^.sN7} N[l= cNܾ5ZTkSRαMݶ٬UY70/fX1pׁaunV M &5 }v Q0^&-+*x Jҩ?:ps_M?'-GE#Jʕ F jm𜫌M8:x )]{k-4pU,rZ򓻸-Ah8|6;eK看1qE(~95ggt3[{M!*˯]4Ar/M]ov@@0?80 P:68Rt0-k0~7K1[ HQ7See\qB̫í^xI1sA2E3;..A ,(K}?ַCJ aR6b0L`xd]A塟xs2^yg%-e>,Ԁ 8T0Q0d%z~آ'tL&#x jhfMBe~V!Thų΍WXED]Pcn!^-BP(9*]H>?\w&'4}*MMhZj-YZ1JP_$7{pg-oa\Z$İpt!|O@ ϶/.$mKcHM8lgQU^}J AQ~~6v~9bE8/{4 <R]%8CX\AD0!$8g|U(W7e'~7t҇xDA( B *Zm7Hb˯CE?3p5'[h*{"<%b swEҭ>gQ$4V|2_d#Y7 \bqŽq&{oB:ҽ|T2 UiohO}~ L"$bĬT?X4ÿAX=˓~"\:l!Tv‰,<&by<90! a%{eDqؽS;y?֍I(vMTc,2axeԓw a|"6 *+w]Z07Ri ]\&"${66;.؇\\#) d޻r}6k4ozGB4_(}mԝr6e$,Y AFqڕ;kusS?κ'!ĉl͓4\9sf6B::ՄB V;wS_r.Z0|h~pH#ڐ‘clp k\Df@33Rf FIB9G^&+|y{HX2xE())5^G-9طuFLMHfNJק?t(|?u>Jb@*JwCg'6Poq5r?݅<<.T)uƷ`S@5]m]3HZjM珼|Ō`ؓ f~EPli}ek Tu"_+,>TL;ZրЩ։擬CS(翏'`WmZmzZE=M/*y2oSU=-A)4]hOP"LZ{/}%̵Lo<>Ԕ^C5T:_r7k$vuV7$Ӂns1uSzKjaT7s/c-Uz?b(FkKs&`ߑah'e8>9#¿8)IO~ ȿxI PU!N C)H|PIJ| $&Dܶhp\b*׫'=5^7D(^:1\b<31SVBIGF9;ÝKGnK#5fMbihšywKLh"T뇒^$RF$iN% _Kilfo!T7uΨ{fD !eާ}؍AuA5蔽]>Lx1* .NT>RIi- h"nz^0; ކzV -uLV @ڲvo& ]zvFTv-n*Ə=湇+2H1Ӣ1Au꽺f/=VÐ#̝h-f>Z[=4MFv9i<fk=;e\C}9oÞaX>XRh$M%v}Vxg,N ޴&nG5c Hcp4%{+Et`|Dbecvׇ0C\ c-_]*d KvͶLs,H;/y3[_x 9rӂ³GƐ<~ >6 ^,8mf4zhM>-~1cpY΁$yS2&iZJ$iBشjWb)3 ǣ7pN)n:yV-i6$_l6a9F2d:˓Jց[rQu Y%Ff55gFU 5}v|t34pۯB jy[]tjZ_ ۲KԡD43j aAR[+c*4E`[SUDGX2,.Y qG:‰i{T/4gڷ6"SWR]=2?L,?&*dpNjZe͕ $Wb_g%_ oE!1|ӽ*Z{)!2C=?0wC"1k8=Awx`f\q)gcYM/2 G$&Ƥ/&fw!hɅyBRx!2UI] T}mH58o&L9}uę6ɞCX S}u.=B+*y{/P獖VAR:rY9\ 8*:Wuo#>,Tֶ2; ]D?vY7Lky ۅ# YX(U bqQ,T ɔg>}+Gu^Bq~ FpCM /$eɏmtM/M akH_2b]E9(,srOɐJ 1FT1#QGNedtҤA] +YWN x%tK_$AtgDuI**p^ёN"e>]p(I3#4_0C%ՈdgZ:l|RKz ߇w<V,9J2ZCw{pV[ޚ`"~7?)͸3A-!8-ߧx7 &ш]xqZbr` ط"@oO(wk(&śۗRSdXw:zw- BC I kd }Ei%DwG0TV:/h+`3쥽KuN];L%8eeQ8M\:E'"ыl ''ޕt rAz+$7/^K2?qVJ!?E)?0bn=ZO&:SU ҎRe#kWc䶱$@=hR76iU30q>0әPr),CR}daPDк[O f\d!15g5)Z3UBoLձoח 1synUdx-)yۡ]Œg9]+YF|XKJ=9zAܔ+e_FYW{@=RI-dN(]ø]zJ>-(oTݒCMy%,~/ oRV7Oya26N)N<Ä'cO))O븩G.o[]F~^ϒ3R5Oe^rE$tviif$z#xpPc݉CXSW ^gGtya&'2Nڿ&&cfϹjӃ*m)\~uqCH"̰IE{z' ]كH#9O)ZxMq5rf~W ]/h{8Cf/Si+27xDU^^Ҷ e}uON 0qk▨L23))&v^~n XXTSĎj*Qp^7J~@Lo2s|d7Ci ]pCcLPILwXL2=]d?K{ 9a5nQU G,U8B86.rO9ڂA $(H^*^`zIFg% ̤Рe-ze}qAj0 z#LnD>*AoK3 0mF#|^}s3ŗhՈ[W]:1Z<Xn'N @Ԯ{/9O1* R{%ت;Q[$?ìl%VۃYB֛!U~ +7RMneyq͖('k䴰ӇPy81N=-"[uv?݈3[¹] е$0:.2Jxd)\||P ~RI9īBI .7n|%TnIl7VZ5t;xe~sZyBm]~Ŕmd$ wa b'ڎ4k H [VpÓj*B\E rxˍPg̷ψ?sʞDaj#0@5h4%ӌ9GT<̻TyʕrȲy8m6EI/Ya,o7Ç 5'F Û7g=誾xazIdwkUj"N)BMϛY.uģ]t;$ul~/abs9v>Va@ 9Z"%=swsvjF"V+*UX/NP]N)kt5ȍVR}cʵdD%Չ:Tn+k2~WHȫ8n`-"D,Bqg2E,4 ,gIe0nX4ʾbL 72ɠtknF-n1P~XÀT#: #Dy,psCR2y377)% tGJkI7fk'HBMDxv'pt1tƆ{+b3 l2\Ur.iIтe|h:D9 h='k+aGoyLJ()ChfE?5qGxbե5\LtXyk{?;ҪuЍ=&V ,ӷ^g~̕gJD0 . 58Y(!j,GXaTAxsaAWxiʕE!y*R12 U]K?h nK?Yfƚk|8](~QVfP^żj; G hfF*[p*djcT:?ZY0][0yeǟ^F8q}R,j̢|Bk[l./15tmUU4f)7~#n%Uv0iCZ7հ#[;R-/IO6y1%Ο@D"ˋQq#{ g#1U;370Ė h\d.wUe=mTnywgS\AGF5Xw<"Bt4nByfR# $ : jwl~mցDmHj5cωY{vщ6LUF{}IƩGAmx_t;Cz==AJ{}ILґhOY)W]2(gH^بUmʗ)-`RC1r%$KTve\a2dO RNoi{:s s473%#\{fbEB|A+#m ٜܰ.,TDR~႓B8ϲ&fb__6>Lz~{K-Vj_i 5BΜ'ykf X-vHO &h$m "%։1# Oa?R,=_b!f^|nnOD:;Lh-+DƾLO_ϗ,ܸ1W"&5rۢ[w$oV*dԫK[l Mq Hlgw?qE36 wX1MRyr"n`25?I 0 PRi½KOS#۝ժ'd?(gLt MJt}wAi3vlJkk4P ν' * Tb#bqh`4Ph+zJ8P1V@KQ ':2,f 8 $Y]ZH?IEN41$5g((U`^é?[ >3S&op$y!}X*{^ EEP?΄Q/)㲷UqEZpLHe"[>2|#--PBe=W1ض2V.4%joK =g=rr.9GxOPm:Fb^d |%;L`[qz;rxr}7J:o > T p1J-:]-mA,x*B +d1 <V0OOȶUv D(9tR0 dbfm^}@qoXAd^1B wXq}7,;WFG _i31Ϟ' +ڝ>h_cQC5R=Jd:nS2wC ja-~A ~1zoKPw6"58 O&› 0Hbaw vrPثUXڟLgA\0 Dpk2 䨲K,Dp9]$5,m=$Um3+9$ } Yx p, z`cEb[ )7(-FS~^&8ŕȤeo$ 6bgNoҸF903[I1osE=`?A#jٿҶ':(m~Ajd3|t y.i"9}8_ 6!:6XIi $̊?[-$ M[R66fUf+4 ?HIᤍz[3 =RX|wM`B.~7?rA\kD{ZIkqD֎qfQ _=8N p}'=`Z߶MYË:zc/JR$ R0: bѷiS%Svrّ,w]8V@Ew1 Jw5GܣaJu6&lBhڏڵĜguG{YH@N k8]S8m VV g( nyȣ'( .ɏ 2}"~Ԡ!^M 2MX',7tgRGӈ:rҰ\V(Rk OGM [_wzOI>mF*SXcKo uNML̈D$xht{DTȍ|>Gq]7Ϡe(!4-4`1*cLdbլk˓]Gtao8h$ R3B8ݔ+2xz* 38\N;m {<Zj~G76}{k]Wcl3,Jb_lɔlW\h!lK]:#7LMf]'Ytw}30TcPlyf\W7}$:[PѲ+y #QM:m!hL_/i<'a0J4R}X>]{cL`."*p4T>]38j7xÔukGK>Pǭgw.zG#96}|\|&HđvLRv\|Y2ÍJUC:!{x~Bj-hdⰄ2J{PKTsӖh`'5@)b%qc&߬1Ɗn#>;u[Et[ \LD`yɴ(єICJJ 6 N 챏e-c+lȆ*_uȓWPg,!Wc*6"fsgT4]#0,nT Ʌ2,!{f;#H+5c;$3J&cth(9)l4-jbCO ĀUaK5Xѩ쀉wvrU+/Қm#XNKRYt}=>jњ|.}.]ut%ţP5pUOcW$΢Kt~֣ "!DQE۬ɄZw/QW[<X5qz`mnM -}̘Me&*V~ ;Ew9 )>^P6W }~\QSIޡX<FFROzq[;k{*cgcpk")s02ǕvRop*sd8X;nC.B_~Q~/ U3_4pWt4plIƖ3LzK]J!˸:B~l!jnӱHGq 6fV=޻%ɍWʮi2)su0h= (θَGS33Ex9Y?m{.8LU]e#TQaC槥U%Z9 !_h;| A tw|jF˼[wn# ED҈nb\B9L9 ͏QU ķǥj`gVgDENKY4u!>G<GN)pf!1#ɏ*`T 2X%3f&4\jiL^m+!NMMNcM0Ŧ1dew}}@Xr8GmIOnz% IӚY$P@o# -L#!]+[~g!e'6$1)Ed&5@*]I!s))`^_}Dc]ݙ,~unr 묀3i._jByEyjG,&*6nTdSObݿ #v]!"[+ȣY5xk%dp@n59f+lE'vEd@T7xĉ2(#, :yI.S˂Cb*`>)EOэ_Sjh6ւS26m^!-gXkjQ5f΅GaqT31[tfh,Sh(igKeGe fv>gӲ[=z$\ B5`RsܢByWCONt7mR\%ǐ/ *.JB][&IV ?WqB&MИ篏#N#"ajZpV}'yzLil98V|G.vBέKjefH,abU,pF^W@k(1xbtB}Chh5v @1Nˬr9kƒh4GElNJvBu"ZvX P WS-]u=/ؑnX 4!%rV2jbFM8jYprȦV?*h;JFĀ5b:32]ܶ:'fYY{UKpIS^eIʰkY*َ"*XmL83胠jy-U{bLr#(CUEYtuI(zQS֍\OtRp|*eg}d`%(5^  #S6[P6Z+:\.A 8.j͇'X{p( ˨>*?6zo)0'Y|}ˍՋy*9&ܳn|Qt=?hN(1$ZP]j\҆QzUl#hxvOi&0ֿu{ znmAT}!Fᚑ)15]i%[ffbumx4yڋehDK yZ@S$hfDB?@o|Wz`B=[ѷ^s|L߁ { Duv@=󛖟2މXy:QrEZ lڍRI(liù0췄*E`Q TZku{n&tntuW }v?Y~Q%%)bYUg-6~Bnd{OF-rb7~Cy ȏE jQyB@X2ׇT, 5jx^4/`?>%R$Id32D9=W'{CLcnՃ˞`L'TL_+z5f/& Yť 9+KBs&ٞ#aUR8׷QH|a|v7\Ѿu3TxT;Xd{2!1D\Z?d;lCzf?1"+s +cѷ g/ $KNR0FtC9 `f̿ap$Jճ˭cO:S\C876omS*$ؓĮMGBY#,n=;,T-ehvGTirܔ*$hAHü<A J 4s KSKqRha6'gK>

95w@2=mcZE7hc zi%dPȧ7l _ӤnvwVe* h F,ՂW/N3DWFXDZ6J:9NM;@zm,0X򂺶 Jvz*Wb4E04Hͼ04`fr#y}ܶpc<*!Gfo! XF_ ?l,u\i^%*"WJa%d4gߧ\_ZGi$;+:YUW^L(l #`0ԇ3+zΟuh%L.o%{x O1 ̾+_Z@%܊,cG.CƸ5~>7! db SXLQa%h5+4^$}h}#O /opϽC4C-Rח AQ^ĦG7:υH鮒g=Waov_wa{Q,/ܠ&+uMqP檥\҈!n{ =6 z##1icb* j\xb؆;*(#!bZ9(TK]AE&T.ⱖ~4nxy-6༎ǰK\z%kh:0CCMTOŮ;-A; k}.ިg۩C/э<,=u3 ) Hp~A\e8 P,!鄐iha*MxaH6O-!FWٳѫ"TlD[o󹱒6m\i`1ln؞ƠFXpsĊLY6W9s(, 91RrH%iZ"?E8O+uF93/DWWjj$^29q0U-c>x:D@@8p>XQ>xE4 BM6;Ч77NƦtw7iH@d&E)0}° yĊE6IH/uX@_tc 2Ejj%%jx w͎T}RV3ݑYt:S VGΛiK(lkɰ TXQ3(uڀrHi~7V}r(޽w*L]ufCjn[iߑU;zAh0y"ǒx3zz!xOld;+ꆅ3=~ɥ?1%k1X|Xn0)pe[{!ţ/Ka߳ 0rR;1(]`I4_r"-LfNj:rFf=^Yj)~%3 :^U~dylU)$ -u.-hྸGdKl}jYf  =Bj3ChT44OUnje5R͸qJRހs&޷&r?$^+:K5>fJt*iwMkÉkFvc)!|ר 3YquKK_4>@z%´!t~uRRͨ۶ݡŰK/3M{jGVqBQ4w줉GȘs~G(U=3.1o -4 \O&BOw^RbS1 q0,S#R4f3Y]N%[N:iAj_9pl(]`'ۘStB+-#e_A(9(EveϐEG>~\*Yf=&G8똙55ڳltD޾GЊX,qoc2- \f;X#tJ_Dc鹚::D$*6,n ]*F7_6-QaVdjCO_G(~ ;xK~jb/)Y0PCj.+ҬEzT8lkyʸRv/FR.3oQ? w ^54$rr-@Y66b.5=+g"0]O}Ga6a9 80&K~k˻EҐKؖ'R-Mzo,'S,^BAaAGoQg=%V0[JwU%n}?x(b͛l(1OmLnI.A &XΝ5f[n*/YDn !j'خN5cQn f?NXryD ]<&ڬ@U3A; -6L2neZr  (UxI;>M?!=ИzFN1!nk}`uJۮPo`vM|qn/+v!R8<XN}hܮ/6,*HAiꨀdױQU"˙2,0qIgĶ诌hhHlGHdN7'v>"nđg;qzL\K䉼 \ 0%Ԕv~;% ʜp ~aSy->$ĭ&Tkwʪ<6H)@18 T`McNxu*[W$ |ByxD7T:Ɣ︷*|E a('.`utQI=fJHabݣ~إ_F_${ Y7md< #3R,MbbłY߇5V9"'޽DsAn@*bL 1af1 ^2 lvuhk wx6WZ0Vz"f2~p2Fڋ[fNhdKoH#2@%0Sx@mY@=m̬j2:Qkt%-&k&a/ʹrKVN 2 +K^Xcvo;3HGcx{UIc̣1yT7W"A|DػUm mC450kO[W XY:ﮈINv V}Jo :2LjO4;O0 .)b0x7[8q/̍:fz򨊇i :YsOcCHV;Jz upp <4L{`2}=wT~ q./VK^FBr_Sn4W]'~oCD*;HFʄ"{(mR)t1ew: ;kLv\d*/)xT}KN#^Ј^(]Ȣ BL  ni޻,vGP=J9`ނv`wpjhfo5LeiE"/VC2QE7KlgC#_?¤rhjp)977W)9#NG=Ax(hb$w$v&H>ֱqͱK>.,=ِ;ܺ~A|ܕ H۞5$?m50CxaJ ! t.|8xFbH| CZkfiL߯\M`壖4?ҦvkNB59k/^7Cz{zDSdLX KM!!BtjnUp{ x|t $u Sn}(A[uI]Axt2z#:4WAE.O#&HG2"h/%؊N_VTNvdH|ˏ# P՗ Mae53DMmL =~FV7'e_晜M-%+`l>4LxMB[{4dJp;S}2hHoŎ "]7Ji%Jq壌%clPY9֠5iazoa@w$2 .*s[/ynka(-$SUއ Nn⮜rZD_ 6b| Ϻ#Dz#@E{ }aKI)4k/y,b`p} .fD'8Eyۦ%$7)STo{f94v!+[B%F|8n= Zײ_<4RF.9ܓyOB x~UFSxI.Ӌӗ]RN\RtJْaYء5hP㻅ϵ^3iYe@vj< i'=9Oq^hJ^]"#o1n]bK4I{2hg1PANtGf~,Wʰ>PvFc]$%8΂bʼs[3ݨwmX+WONkdUR[[ȳD-!}k_əJ쓏}@Wo, G!jS5,t^P{,)]\#x”$+c}dK@'up]O ?С;FXE!RԟvHoQ ;ZUʵ !D)Ko!Y/¿ dh/M>NkME F(1l gL{wZ .bE'-=aɴ-Z3.Ѕ1aGrXΤӑ#& ]z߄m+j?{sC/j+A T}&j.kHYt*to W9*6zOԘ`Ẻq@~M}6MlCxc `_L!.Y%5ן7Nægqʹ}״  b誸-_A S'1cb% c3|±eϸVh@&Ū*5G)U?q=6sIPK8 H]>,&EElYm<T}4SaqJdKּFYu.`:A^CYtvU]_k{W!Fì6σtufTڻfZm0G<܃7c!E{<YueEk?5Q٩xBVORl[ғͮ!,FEtOD11e\^3U8z3$)O1ef`ƞڻi/iPYJ\.x|z:xC=!|*tTw&P»j yC J [̏mU=فA6a{Q@ m;9bOU(09ȓL߂Me H r ^ dt?%oL!8¼C",rW֨SʒFieA8+yr/ > 'Q1s.I!( vNtgCHrAlv~f m;"a:t뢪}kBC4AeZ n޺`myyuZV[@>[ :Al}a@x*l!P{UG+igySg^EJ5!$F2IxVg-[]]ˍ(2,?S:у_s_\*uEŦVg/mM&ky¿,\ب+pH캵lZ^=d=nĻ[sڮI]1}D >Q(]PʥT18݂O03'ē݄#?%Z[oBV's*uLl+OZ+&ĶiQd yj^% /K{iXHĭ ~nL2219X΋/<9!#q?h1q ^O@ۣ̒B*{ (I#92M,wluKfq̀q 'W<⬢42`Ţ܂D$\՛hI` @& s_fCuzȆ"bo/k}±uՒu>ʀиP' UGZ1y~ԥ3xdbUTQ %%&L۪߁`vhSu5 kGnUZRЀ[^H$"U@ӟ70 C'Ŷi8׭,5.[)^6QݎH89^D/f"&\H{k݆#\K!jUV!R@DY }Z ZӪ<ڊ??/i!}ɤٜܹ (,b3ɐų/,R2Y[$ݜ\1rXcĈAi_t|jq7 Ӷ1Ud{cON3tⴁsUinh%4o5&h.D<*d vlqzi >8 *@`EbwNF Z~bŞA 2=W13*a窎痭'8>TU0eBҧDqd37u+nw@ R6n~=m' @k 6"Y9\r:V}&m ?~Poi9A(uUK.=,EL V늩HH(FWy!yza>@L0#\U T񳾡yQ%忶Wo*Ͽ sXVcFJq}Oj"߂ ץ)k'U.\ГasGM{`´˒PBC{IO&E7;s0Aoj )gbtuDe7W٪,PÙe`}{dRRe!*|[~fii Ћۣ-q[OTeHDӸ&Jdp>zE4!`p|r: >{o u׼B2t1P:8R`\o(:բ )&3K } Kز!,&`K3v`QI[S|rɹP(0soʴ_y5ݱaAcH:q-=%p>j H%8qa'븸fԁFY U>=A~Kl)sk. R=="!,)GoOf!Ӳ_i 񮰟ꯉ 9Gxe&(?x:SJ7Xbȿ<.Z<c] 1$ɚ&r5.tgwzOZ&_AdZo>LTxCRwCFM!l,`bq+<ʊI&DfqXR_#9U~H}oI o;|W٣ !q5\Vz@"kI*n;%Fb1/?o$`.kdPGm;sx\-;U@3==Z']YcDY+jݮA6- `]F L:œ>~gV3j/'R01+ Olhao@4m3.&W$9i&lSaH+;zhxןT xi,Al0 :m"R~x vO gTDGAMyfķ0yDŽmC ϵN3U$zHUJQ`_3evwm]K#⥫iׄ(f OD],ݨ/b`hnԳP]6@&D(N3LU+a5`"rvZWd?ücu]N jn`8#j-=rGퟫEjh,s#'Go @[zGGaȅd17ܭQoo|<4 gc{Ns( "bz[j}C'I1|=JeVL/z!2uaj1;'[0*KNonlkGU!l: ^;{;nZ1[?S X#KH$cj]/ͤb0e=dRH&о+]٤^`0"q 10UV~FX x'aZ ʈAn(!z XpBtT}R$U62Kr v2^&MٙpDxܚ~&a,]3wnr >(2#F5Լ.k ƉvkN +1 B`߷I/"iEB ũ] ӓ߿RJZQ k_/8'Կ7M#"P:0\PRx<1֣2C %ЀeJ Diua (Dk00jcb_Į(!4&ΟZ*NJzJMJ-t 4%~˽W4}Rl˜^v7M̮Ï%a ,J1CCjM;gaV)$籡[[T w>δ^PpTz 84.LZS z9?'ӗ l-Q؝&HaSnCR6@ZD_- uJs@;#esq4AK. $aR'no L ^ӊgCgR=.oڎE}W e)Pm;UO7Q8ZPnw&]NYn̬9q30n(p:lVLϚca@ _/h:ʝbפzad[K:n2rHV.|T3bx?[5vu1V s!FxRkE Aƚ6sG;|@Dܔo7`Y(i9h[Wg{2QT61n$X{߮FOx-zеNsw޷ wa@@>5y{I/u*@CpL7ת͕@2*PAv*5Ƒ .&0kr9Ẑ'VhG!7^&?MS&I`H>dG.QD9UZkӽ |E.[ez /FʦmlH(-Pde#K&R>OB ~2mۮ-BF/γR:0:s JxN|j꟰$61jCMY36q/0sarPp- \ OR(<t8Œ~EVd^JMYsD ZhA^jT ą15$=$_TWnpq4bN?-2|srHd (lҌlHA|F( ;1ÀD7nT鉻n>$bo>ԓU%׫"3 TÝ=élNepB!V c|7"L:R胆G&͐4nL0M_ekr &,M0jIg6F9## p=!DC ĠHPuyX\0ڇ5+=Sѳy$ -/.:ݤ ]9A( 3vAН[-H#b`5'&&n3?@i䗹D..' RCsa1d-/+P'襱jU<,m19ZMҔgq ~u46H4xעUV*36ȚPad-D&ip(d5~ߋr+(oυ<{;J^|z= a^Ǥ+&c3YOTgxT* 1^oU!_|Ke⟱9_JLK2+av'9 $y|=cעLtQѷ4K:ejFc20C/u=2smpYazr]"8U#Ժ0Rc+?H6 7\.*ZJj5I-Z,zB(dbx^a5i!N_¡#{cs/KTyķd&.J*pN'`}~Y{y˳xHFneAЖ;G8VJ+7#wtԪ1}_Irg;KumȦSni2&gfA \7l a*#  Ӫ$Lg*^eXrvCRں׳7Mt{D\#\0p~+BT(C`&L݆h]o-Nre9kq]x(Z!Sz oCYZG@1ߦXN}3^s=7U)S;_[ IP q?Qk PT2P]09^+.dڸ8|ο9m7=j]\6JaK!x9p%i@~Cd# /i+h&tuwuPC]DC]iAP-{/QtϦ /\u6إ Ma{)Fj"(c#㰝m/⽗5+8}=gcJQ@! l?vO<C.)9D}/iT/\K3S~E9H[@~y-eG~` ^gP`d*{B6GCur>$1(%ZC2m%sJGLAkK<#wn8qa6*>O<1XˠdQ+ڐ+#Vz~G|qԯ?$Ypc3?1o 4n'4vZ'?XhrM܉;ʹL 13=~DB i?5 DոҙCL{G琀ɂ9|_9N3luÄehm\PCHk_fk5O`)9fx_F=-&+ ew \5ވiSQ7up\q"l[u,Fo$[%xD|q8N mH`_ p(!e1=͆"OAy2FpU)]/. &eXGp7)9ci0k-ϒx׸>r_bxz$;Y(NriZ~;g.0oA+h~'Zjv]b6tP8j*S o͡x{ƒ:`b~L6 i6T%/$+=Śǡ[OuuIެ@'j͞-g+GR0?m̗eW){w8'SqM2(?r}0l[o `1@"BnIDgr=9'?UMu p<+؏Q>]B+Ȝp\ILka$n%/@drײ&% Wkӑ)3:fXPk );$Q:^9((kcYyfGVzV{ﲄnz/t3(ISC"+W knt^DD[c #};͛u֘i@+6ֳo)]? +>u{)WySݕYnnF=\ آ ΀NtrZG[x#P #A8D#/LlU<لm,pi2<Fy'wWXZw;)d wr&kI!jXtM2}JpK#ܭVGd e_ hϓIbt*4m><0p\ Df:"!} ˺u= C4#]LA颱Y8.)7uT( {f@k&^שm -uu (BGTIE'"a:Ӳ+C('~ϭJcByW\mN8;a(h0>8w> >8-q:aHP3EcB~8n}|F$ȹ,ɣ?Ŋ0I;ΨAƧjDBWAbPLXR= \UeLdOJxU^6Q e]^$:vD3hWVP5Г (9mA{efla&Jƀ.0m@tB쀸D0^-iO&Z!78g+w.xxc2eҖM/h.TY3A-MUe(.-DD3׆8|< 7ƗCB_uͪ=3a`Tǔaeq+#L{XFlb 4=+>-] QKfd"Rs @|L$/nn0{-5FQ1E oѽM^B*?wLo-B`]'A=\ p؂B<dTmaݥv>dW%D޶%{:}>G7__=C?->`Fð)hcap{xjRn02O10C#y*HqiT[@7TߔYNP .l"bcȓn Usv0݊!j Doo[tai;6} <5f#|i{eϵ?Do{If1u?l#Xħ8rRkb1-1R5|D՜<#S%㻻^L7 MHn&~ʠhJE7ZVcpmq(Fs_Z>jB̿U`f9UvޭƁY7u%H k/v6%1m@ssBd 6NJ3A=;2>b^ sa\W .'!qAr` elRYy]PxrCZPX⥥N`]kݒ^Th$L* ,c0vaw<*:I` FH$!1P3*гb {)HXJip+~%~Z>Bz??KD{d0?_C,/GV)XN17uGBOb5hgU2byi!i@iL\^AZ0V|?:m~r(lOOpO;_E3;OpnDʱ5&>Ae({[w1]Kn_-lhΓAOU1QȺ`#v+Gs۟a@p qC - V΀k1s}m^VVIBb>MyF? `7ـ=pAhtv9Ia^窹0"$Q9 Q+iEx[Z ًVVGx"r#!ěX~T(Y;I[߁:d xO Ղ#YFzB<;'u۸x KVD~@n T3K Zuôily4XQMM㜞RZ5z0%18X!mԌfbN`gUJx,Ӄ<+Ag9 g;xP1hoT'Z)Μ}vaAi2Yn\^\'I(L\M N`P*hY+Cq كCOZRR(;_rF鸤-8`ꐳo>ݹ'<͈Jbt@J&pblQ 8%S}.u@S>w̄g ٿI=d }! kr}qZJ1xڮH, MS>f'BrH [ g [dY}/&56g{8OSL /h*WS Af<{tC6RluV\Z{#e_F_ E;HQZ|%QAߐ3C < .H~_')"/Q%s`ZT*m{W(2)|=?[`A`C#hNcAvZAqAu7-;@%M\)}PG  ;` ؾ&LJqm;T:Lj+!0}/q5fM}sá 7j"αZ \ h/!LIG~6\УC4[vSK2ǯG%qt,*kjx=[$5IoZX# ,Mo/ˊIB#Ŭ uI<%Ty΁Wh0QWvwXӁ"1 =fRJېdk .56 4oOn!JPSȍw쉗 U:gagWm%{7*o#P>XMڞpNf*EL;DY|fdԑ9&}SN'Gz ˙5lo8h o/FeN$.3#դ/ [8CkDy?Gh͘E`*T0 Q_&h"".pW D1;z,'-j^A[JU4'/)l-@)Qkh}KD4;FA]fN4q|:ZvF/g+R _vs ّ'$nEܥ YOpW3R/CvņJdj^XrDrGѩs -~:5E8YK̗De㿸yӭ{GE:rSF 7F7?(}M5O^Ekx7(qnem:I< !fh)F4 Y:6@6su^Dr?6-T;fȻIiG%j-W=5|y<=a04ƫBZPr|8qp_X#0@C ?7ڴV\%ӀIu^j zD^S\&M =%&ϊ֢_YVqMœ P+V5#|ɯT[Ɏ!=shQV:CBƤl$%dtKjT[-kX/^hhﱁӧ/mEhDl{CbkRs9UM}d$Κ3zsX?S1q2 BJ5uƒ~NfhRAF[0WKԦ2=.yM~0߂_Q3x*cGũF|/n KN2"}󌒁إ53[uDŽ"f-3okFBv%.I !Fy3"gI |&a/LNkB d 5$8<^49fmW.>e%Qy<ͤ|'*nfq'Z(RmN*Fm5 B~ mWj}WR0sҴ |'UK};+C{yXFwKM!IbbBNy(pһ̬wkSTI7kq"t^ZG{)fή|í @{I2F1i~gaY)ZF&Mp}bkaf4nK]:O'V?WLqǰ2?c= 3fYJ38 6[HZڞ|J*rOtiS*8F6vp8GT#WmjP|i>mL"veG(MB<U{DacR#bv ;z=zu-ά-=zXaqil٧Q֤ȓ~88JT489; )t̒FH+gm*C$X$ 48ҍ/r^>_H{Jl4$0FjUHpxGztT|Vom c7>&⍢R!8.gf9~C" ;jfmY]F0CG:بp@rqXXZ0k]ej o*_\Zx^ VR"0Q$LOWl>X+<ԇ<9 f4a+Z7TWwG}1ttƄ1Q+Q%TzRvOz}q{$ cϼѺq,w''3ߌ?l{)P 't< =7c2-=kr_iB[F lc5nIGz(H#W []!s$V,٪vM4ݬj]I+T Bw@x+\ŗv*"F0GrL ^>ZPCHE{͂-i8 5g})Ȕh/AҸJ7ըIJnOnPHcrwq(TpNbn~#*O-`-؆QJ<Onk JMZ.#YvqÁM=JXCd)^],81,y#'ᵇ|;:V_GNmZF2QfщSͲ0"V:+ofJ㩧 LxL]Nci) Gj} kTݜ҅vg[/ ED?żZX6r¡5pGIv"1a~p) z#/BѵO0)*&>}/Wgr߉eV/Jn֞<*AVb_f4&'v}΅8.{`8iӬ%rǙA+Yy(bzr Cq=byt+U wa25jk JX+o)=:RD !$<^>p~(TuK -RwfB}Ԕ4#tS8k5°/TnϹS'U %ylAU>j]ʥdmqFn8}dWv$?e-0%rSY=g{<"qڈ\yPv%-08f#C+:췕X'?]'[EnuҚ(Ma7K؋b$X@lz.97CЋ.Ku$ 7ʀDU`dyfskSXщ|!O+b->[%63VA xͳ = llpe bA51-["uSBwv"j@[5Ht054]8ˑe .SSPHrx$^򛽒K a):yض ['^PWz'[uO&9MEĸ|/5g AsϵSN;_0rJ (8 ɛu3IT?J!)B &SlDS%q^,2 [:"%)e'5,*?ٓN7"b+*&!?ve[*\zXoUZ x tAӛkBww.lM0hVլ6.3"{2_YyL04` KU×B x$@,TFuNXnXj_[Psb#!'A>"me;] r4kn|wZP4t?~l6] 4ϠУ]ŀ|(MF!.εiJwi ) 4+@ 68K^{7V#祷>Zrx%xt\KdPD"uS_'ŻU*vJYxQ)R(o^,sZl^e:56!IK~]JܷNfAbeYf9 qdOb&K Is Or05kS K3lX{Q rA:)G >*,ReեtzKx^*DžD ;/ KhQp̊ m3g FE2.%~ : f&oyV7 Ү-2@" c6=kCfgiJ+pο}:Gې!aVAbua(l֑-gX؁ƙԳ|>;-5ͷgYC6#j3oBA7r͊dSD~EJHC# 1w ΆӞcEQ}j|& \[A`#7_.neUuӣ۾r!Twuu,H[ ,`eL"H!͓:UBFX/ax:!rH!qK(^{FVYZ0 M}{k jސ}:Yە"MZ ʫŹ @>J,T '"aiG5~ ֌sGZ)I/-j89M%Yzچ.*UJ=MRn.5=wK!M4㰴G߼¤-KTSw*Zd|j4E785=pDŚh$Z&qZ5>]t8VNXXQK2N~]ٷ;z%yΝ :L5#s;MkXV\}KI{o@Gե8uAD7.X^9ytC6IL\T">=!4;T(`>6ю`, ]|]i% b/"V`7-k:Pk/n#&pD}>b8,#o3m2Lbw r˲e扵pCzPJ$g y0va**OL~%Cu&r~'rQ ZKEI!5bڔdzfI&("Ynh+5"5[ hۻ/kUebvm_$mU rd-[4%Zz%x+0Zy Obu]w[@5.-ODBD\;V[異MBAbӣ;MV!k~5[d40ZqU;e$2=#ƽJ4sg\ie:HUu ]놯&IT+<upDǧ5Pj% "zIFbIzLvdX?_\<wz9g;o}yAÁ>H{yGl ,l\* m>Q|sD)M\zf9Tь'6Zӎgkp嶣ګo+K+~j_G_1}9s(LWLʫTŚg}VEǹ=!_=LBRhݧc bV} ?9+aE_J㛰v/͡"[9F7ӼwէAOTl&n% (tO9XF#p4ۤU >|\ͳW(ԪT`:1RH̀ KyMDZՋ*Վ'A%]B f]nukX~n |aV<܉"Ab^v_ fQtDLot؅X[OH.z1wRi5]8rXUZ:CZ uH`OE@Yv#" *ϢVJ]d|+ZC蜏Ż̎'ڹ@}#A%2򪢹592!dMD1ރ <8Zgk3}jJQ[%2P_l̑owbR!+mR.T|:S~5r+Q#x~N&yJ`gldɴd kF+T4D*_O_~"Q4Iy~qJRT0'C:d }{jԟH C\IHI T qXչc|?(kr[t>D-URaw79y#O6M0bdKr@y!knH=(ƳV;C[Nʅ$P>yf,hv2~Wt.>k(7zP/;LTVfjz"ᤎf pJΑ,ԩorb4JfNÊYn?(+JTݧ@QwmV/y1$ĉ 3XwN̋.mH%jAMo-C|܅ 4 GpX)rGDW}g qU }iaON|@C'R/L9Q 엥V@ +!pkwsY$O,a+wqT&0R][J$ztɎ_^%ڻ1P ˼Y4rC"ɸ?35_ ?@\CE%P3ܠo8M;Z:RjW-J{5p=C27z&>3TU.$:N9B[@%Y ذl"qc2eӨSEHJ+YԛAaJunŢ")ͬ@hz5P~z6"oeͨnIF|i OM>2hm[ 7XBg[EWM+eUTMR7n!-y1z fL["|m\XiIGҿjR[[kA38*VH(hSFG*RZ8J)!@Է6YأnO}E* C*t5 E>5lDRtьeD 0Hڽ^:a>_1N _Ӟs/ĉW7 Bkҡ{:Kuhmv'鸦tܵhϕ1 N- sq@WO"?PH+k98kbtLw_bC͠]mZ} sz xڷj+^}p ) ATS<ʧ_Vߙm? _IfѻF 8#SIDydMr~iOOe{pڐ#' , e^-gj8$6z*f,Vj\{!AŬsΥ ))?O׏nd&;qG\{, 'Izyt[CT<̩e6S1."uO@Wr5J6d՝ u6y+ 12$]pڙnSބQ7~1\yIƖΔL wޚ@UP{a+}eCm[kbJ3@1&)Q"Y y/+uaȎ* %cAIr)\+1ͅu7-;R_Ʌp9&m;d/ $ƙu3zsoS-CUpԙ[^.=M0V'3=N-^R;[kk ԭ*S=3O6{-xam|S 9d6-iihظR ;v?gP],`/~T 3|>oEF!!|?fg/zXQLƂp$<+[ B(B5 MŸ8qqc=Q"On%zrnɗf2ᇸG^0eV^b,/l@7ұ~Mb%?zU*Za<ze7v %ky__ 'ԉ:{Ċ6P/PE5yCm;@R_*:66 "ߤ9R@-/p_ !m[U l˙$9P۩,n<6v_Kp dXǡ hYHɾ27Oh A݂XK\g\呖v!+3Ѫ3&OzU}|y(cwƐB<TC 3W:EVmɨG GW:̐؎_~n@Z[.ٸ#q6y;Hdp/?dqhЌnBQFrW,Y㯗[wn>&Q3M5u"Xx˘_N afF'Bȝ@]xe40GVQħ!`Wv@ 3 פoץ!v BxO$eyVƮIT3I#yYT 3!^4:[+K|iix.Y@֯Dz.2 = ̊3 7ڟAW2Zh/C!>DUx=8o-!KrOMoHI*pШmG1e@7KiDwɨL 0AqF$]x+KЦbw_Yd>sJ/M,7na~{~`/u΅#g-z]z!,_#Y e oj8 vlEo:9ă(ׅ^6,6F'X+,qԢLJh,&c[ 'cWAG Yo ~W u0)F֜.E/<R'a$Ö>Kp,l1 9 X\lhpPlĶ݌R[qaڂMMzY;tmB[l>мLL|MP_=IQ[[u`fwM& TJFd:Zr,=?McЄ,!IÝѼ*, KO,u8Uz @vȂH@I^"`g+g[ܧQ4-PTK-`Û``C%4|DY٤֙;@͍C-Q}l/4<4g,o9?Έ)r A;~-+CG'oF{l*NDW 0PƉdl}Us]{$iija\u{xzA =n B8_IV-a̭/N m5{o^OPPN+q c<p KG[nC#KV b1ND)/XZ;<:kc>e5@!tI c2 ߸ۧV(%RԆ>uŚJz岅~*r-M8/]Ѯ-[=LR'-VT)!EP%Qw<^P}2N]EFwBi( [U V)-=r ůV"p{'\ayQ7yk VcBufX`7lRdEOC$4knkј\`=ưfV 6ZbYryiF׸u\ЪX[;d6Y 9&aÆ}@9)',bfegy3T!rW 8 ^p=QTeb#tK”5 FJBHQ6ol흍!( rvɫ"2uz U% O3nfUX45',/KWSTڗ2%5BZY.o,]u*43ǒ˪?(iKMƹ0Tu?Xb:Cpǒ(ҏN7(H[_@~9|t,`G p4(Fgّa1vw&xa%Ŗ"wP)ZɊ[ uqW\\%FŀRI;V,rpTQ""`Y<MP|5ض-~6pkD P]{?'D ~$&VVRԚGk1uRnxup_݋Bvڄŧ՝j̻N31m {BdeIj=b^4?F B?]p<@M=nN)܌'~r̬|>}u6UqqEC,~*ޠ2l((9uh Lh1 \rٞ#MT~{̈@@wc6O䗣"P͠#w {e8݂(!N#Y'wn6Υi8L3(IAHk)]:sC ER_NTE~Z, X q^ ɂ3D=c#+\4KXl_X3arfS焿'g*1- i*Ўnf_ln.̡"/G!Tc5;'{NP{^W$QN@]+>fݟ鲐)1gq2D{߷v',NK2 'T#W="3+7zV쪗ܹM%09EL}ȯ(H3{4/2EgHO.D_ 1`YKS2oO^U4ɦͤ)a>q-:0~~?XP \gOO"?RsW50bϰS}5`汿j]p ʵ_H Iݸv=ws*,á&:@\Q+?[ \gkXAt@LyC/3T|xM_mP i+w~`#Q> ]Q'mVϫEjr-餐¢:p \{ɓt08k &Ri|ɵ q.pf⒇Ԟ:{FX/ƺMyNI%꾇swA/g}JT/)Z?_ z8o,4U#Q) nq`ݺ&]X{YjD9z!!wR{& |L tX[ݘ;7r.Hr'ehVm>4f=de(A/)nzgqYP'hy_CP;86ޒ=-Sn&}D+=-|N%= Á.FK!Ѝ,MBy}X=T߂6ݾG\%/ ]-.A,~, vgeS8{xG#X1n=͘AcbXfD䰫Iz?ǯOE :oK^d2G|~yRo^F4s{ҹixyM$ɜ'Lsv$WYDnϏCET)cnGd:yEZo!S{c+)@6s%u&dOz70 =N*R*olIG((P{BqTl |tZ?{tpg-snI(WM iiF7$': f%Xv%9 _ 'DLa[` +oαCa0,Pf%]21[|V^Ғ`sD:ϗc2Jd2^dcl5_z? q[ q|}k"lյtl5Yxy14;Q W]c' sNr0CAax<ا|S=>֦nWu4pS>= G1hdM k xy{<` V0X;I8f-`l5 6M%@MUO$h {9 ,%·@ =iZPyw"vi$ [a#ԨY̊xEltGĬ ([k]XrMAҪƶ\XN93rNThߍ G|=Pݶx7Pz p5J_lty <ϖ6$)xRsK_t G4v0Oa͙940*4)ӄ=P+A(Nejpm\gEå`ocH&)5M"0u:G> h\ʱOo*Ōl-8?^ p:k38R-2 >tr$7BR`_6[kE\x~. :YIiqX!7ܯ-nNU{eޱ~4If .=Y .sW d/4+L:OfYچ%ɽ4lߘV UTQwNT:1zҏ<"]-\*X,3E<2x{ϝR-(pkM5piu1VpPFVHvˢAOA[sīf> ξHf3#i)S$g+ yRoIDKL,znK%rqO?)3إ\^-ԔsyW/;:;hAظ&7AU tOupvYF /GeEs;#])Z~mh<ꢰbԽa+y95t_G} Wu×EA`S;\/+5u[U^"dz+rEh>8F?iՄ1q &*Wyŗ`}ʅtHF ǩ*"'‹V!GzFmylؙ')G (B`pqkg'k&s{ ~fٓb+3`+#'Ҹ Dxt|`Z$J_^RC&</cQb|eb&ө`ZP# B͈n4sSCyGE"Wd^5t:4q@ѱ$BB;v9*T%Dk.J:jš$B2dގk+ޜl[f^#ZATn aSieȲ;; э<!p 3P#/j,Py|խk._Ơ)cXKYqqs`,JOo3=6$&Š湌JUN- Gwea|/d"Edv1*䡬A_m /pxEg,9:33 Fjf̣ ]^vTPdO@=o [Y$2nWz x'w囋Lw*f&'Y!Fd542Qxak&kUƝŌ=wtۛe&&K8=biGezISр#qҖ P*lyܑ8k ڏJЋ2]/MloQ_ 5=,4Ntr;3(A_L"lW P+dq adADZ˲|CϚvW]҄,ưAz8[͡R m ]jyoQUovRk-g`1AIS}F4%7Hld9x[ORZ#1>j^j2?+m~اj!(CeA\<-5r XE}X9lj }1\\"F`5^|+tݭZ-݋:]jsf;`5~I rޏf+N  kD$• fk 5Ƙ\*ڠڛNAAզf˞ei% S{X_ 1V Y GuEfʷڥ*~};o1fE;3Fti^۶*"İ2CjMQx`>JXFX7قמfVhq!)#[N"{EP%tp HqVBݭuݛ9V^܇ y%otڡm1NF%ZŃ Dϛ@9ⓩcĂ*oYʚV t?H 0Ғ>eÉCKg({3|ZffX~fU%g3߲1HYjX;5<-4X;/,_ V:{K0BV=v&_qK'EFJՠ*GFL)< i(5Lӈ&7ccёy6nʔ.*oӾRgw)mnR>-ڭLC_r/xF;| {kz`5} ƦXB‚ XiF5O!DUĔ^1$pH4/rUyϭ3@(6?۟/6et>^ R$DS yv9b@YZ2=b$2@UCI,O#<{YekIL?SI}5ɸ9Th8Wg(΢a"+qp4fvgOYמyphY_sa]lVVhZG,aХBn9_as"޼p$]t*3_Of w=q5$JqD^qBB 9&ʹ$5܉(}TY_(V10qi?%)ueAG~ B)5$ R ɍĸtSY]"r4uvْD1!-ܥ t559 Hz =F'qAZ,w>/&R$gO"R adc.KˠTn%4nKhP;]!e!9h8UQ6nNԚ5vˣn,Vӗc7sgs5+XaVw m? Ergl7i"SPiЅó!4w$A/=.&Pye gBM`@ݵ!sm.5<$,NL I>Dc4"!NCe%rLvjU(C;>?I6CRqW@(g0hQCDz6 j]Q>*9p[F`t)V4姬xY3)O7;blDΗLfPf\MvNۙl+pcZϒ>C[n/§ 0T*#!9 m.L̇S`O Mj(wm ZaZG 0+w@9dF3DlfI^I9^dtR&5b ӿWi9%EvAOֶ1ڬQvk,sR !'3eK+mc=@[Cf=F0o[0,Nw%3RաljdN +YWd}y\Kݭ. ni9& βݡx1\TjS, *5 yՁsBi ª8$c&a #i|O3fhB1p_75nk!XUwiUmWHD2(4I,r-_5QD5~ H% .#9̆\.M&vrH=ڣ#{iuKuyا7P!w"2dDw]hîLՎ4W5wNA{k# ݇rZͺ֎#-7%wTttmӦn4e9ێ*7[CPmX DrON8:, ]@pA?JvPZ!$נLAmO.wLpsrkc<W>d:,Ӊ(dj bC,f$C*F'IoU "AĝR>^_VCS*jSyoLm;?,C;o<^9D|x\q;i ptkkI5_R:-t.D(k5?K|%]y6}nƟh wP|*8 ږKzt`[_(9PSU!p'Mm붆A.-O-Ar![\$TRAb>KlF<#ϷLM4֏-/V MT.FbG(-׃M‡ɤeo5kJ[)LbS?/L56ްqVObwN6*XI q$#jt N¨1%ZI>+h- sSb%^y5OZ$'j )V#y\ 膣>g4>0Z@&\ ;&kq+ۭvĮ\YQ,]qpV0AA##3<ӹYPAc(QPE_rB uViNO|&fhlq4M#wGmp")'qGQ}azA ^{En,tdVS}QYY]n)UcH=pJxf_S FSsAQ)ȧ(kzi ˫$G,;avQ ?pEހ51]Vo^5nrW RS rUMA3r֭h&KJAUf˞EԐ]bt%j*!& /c$+̈QT0t ~T}mHY*V0@i'ţ$VmDz$qؚ6Ҷբ+j/f/[˾F΢[X*|?+$rM6[Pxғ!ʞ UŠP+0.zإm2eй)F5XǎkD38ķmo "PsQii3d=&jC2o#|heӰ;;PdP7f^%K: \Qg\kkJbS,<&APxcBmG~9T3Y:BmxUi:Oڪ) WvT}pAIpGad $|nhu_f5E؅I}}0j21}\Yk8!Xdw=fOZ<>}rk=s4~9( ;.|]cJ t=@Q5qY_B`R?:Fjiy0 ?9(h=X1{!bNx)R;}зI(B ]aJϓj<Mq˓mj;-+TN&Zͯy *#ԔTFzzgSI@$SX1%?Λ<Y^WGNexйWjk!!o(A /=2rZ g>vH=gƉBz kEΒ#Dɓ,?L0~p[eLz$V5ݖD{r9vqf؇,ւ}e|iR zR@wlZnk@y _)șRлXן<,)snQ)9,uw,Nn|k+y4ۿ~'| jz yha:;KB9 VsC3" 92-SE(\GeI=e=2Bߍ`Ҹq@_Hυmkj<.M{&^ZܽnGN Xȇw2L@T hY/+/meOFd˔,>yľ!˯*T<<!kNV%BCT)}|n6JV /4i^OVPn e+j"6@kHa}^µ4(d& /b`yM}CQ_A˝$t[؎Nz q@!Y %U4$/-a2 "r󾱇}+|cQc0h{.+;8Xq]e4e ->i .ƬH\HEVԫLg Wo-PE6HVTP=_)'9%zQ:DEd DSfO+iiP1:ҙM4f\DBa۱ÍY2Q9Yܢ5qNp=֫讥2BZXsaR:8%v} %\Y5O jDX`nIodP h[kg& jOQ6?\blS-DT24 s$(ިѾRkiz,.[ Cƒx珊 Ë@K2͸^.4Uԗg2jl&C\?t;kqDys790Y&ma;caPmxcDؔ SYPB3,a4j4GqM2 8&b=)X^zzо5Oڬ0{eLg%Ng-:nlwo KC(\1Y  Zy_T:='KV|r;i53&b>s۝Uԋa*0rάb6+4v|̻Xxf?F[{!ۃĢ0'YI\(uUB~` aAF,'t,Bѿɀ A znq̽R}Wqϖ(hCJ\ͫU;SEVuS_09M&lD!A a/%0jf pP0߁.n[ $;:4NS:tףF6w#A!~hƚf) GXMzKß԰u,tp20ذuRnPIX Ԭ/d붤 l5G0 g)Pc>VGYUTiO_ݐ rCyFˆ9AxbՋ$ɐ XR)D(2 ">~ĤNzh=>=ڭ0傛f8[n 3ު( F6?G!RizF(| cbM弣=' I==״Zd;𷱽d OY_xa ;=pv}uGn&F{b=r&$FLM,%qAF0*&1n݇]=hq;h6fBe PffFc1J ^A1ڢx/#f fca#z- vB'y`Bܐo=` ?xw&KvwGբp'TT*x~B| j T:Uo\-1%E y{i?q`ujqD,X*21Bqʂ p!hOG[ 1/rL!uE8/btLlX 0$L Y4Q9 ]538yg ZX5uј.AF6s5?7=[s-[]l忟W{9"f}+A 2?!)u#H,.h`:.Ie0"& ?T7_sV'Yp f'|Ḝ!k{™G6m\00*x(uOHSk(z#C ~5>fWj;r0V&prȞ%f$Fܓ͛T 4Db>,fl 5eB{ =6\,'.ٜTyȊaa7$< nzm˺, IUrUu: 0AW4z%fe"޲(,y?Ջdb6U׵+}¯Tx9"Bc67` d)-*mFH6>rՕnB* `atDI23gqXf{pbڪ˫YyQղ xgxPҸT-v2 q:"ߔoBM mZ=HwKP7_zWT̆t {J}^~i;I.]𶋄E)*16hr\㱴w!^ њ9dP ̙ABtI  % R٢*|,'@Py?7}0G!m\KJ'OQV|V< )Wδ3??>O eSӡ\Un(1KzCU}c{p?SXߟVUip:orb ,lYl-Zv7B#BGR%;,U޻G,|("Xȥ9,:Ӯ8%fZƒ6\ƿ+c<_fg~lՇ\q=:֝3}TT_WY%PrU+l&4 l1Zp!H4۸݋_}( PKn)|ɻf 3B)&GN-%1y[,V=(4皂wOG,ݦ7JWGzxʤ5@%15]hbWL`~g񘫘\GeV چæDV8IV5q~m(KzT@@a^ΰ~p}KzZW QPGU8 61su&^oR%^P6R`EO%LY 9ҒŰF*S>G5y2oUG6 ^MT7Y^aH)UKp:Oj#0Huu@*[13qпM9J#M>]u<7J{d z@u{2Ο Pl|%n?I$[X c&AuZr\ Gٚ8ӻ,#/Yz6n .gI݃5y ,.z@'N}. "Dÿ03 #'0 u ϊ>|!t0: *qYgE)aW>R7y_$V:]bj}54'DO7{4 AY󾓆 _hI鹾2@vMCP`A C)b 1\B_]/AQkՑTMu L;Nt(BRɲoWe$܇MD,@ |4$Tnx64.׋1 k2cPn6K~'nC$G?| 8}MrfJj1QK@28XښWp.o 8Ȣ9uJ\u{5.|㹃F-P]./`9O,U^N ۶޶ 'buy_O)SpW+mӉV#6.)ǛiEJ/L9Ό%% y '0UuYRQ˕^U+. x-%)iqCISeġj`ꖍQxJl/ÌBXߙ&TEgzгR ُavsbL@ᤌbңJέ/kirnl.+,J܀z:[ Jڕ49S3^ڏ-溳hSsLÚ%[۴04OpAH:OHܹւ|G?/Fld q%f7`g@I[lUK+aSj9uV{ (22h5$xsu~TV*pЛO~4^ 4´zL5EoָcDrˡ7 O*b0rު YC.G検 .&}JGck=+l[[]ɂ˳C."IXŴ\;y0Cz8r5`Px:q@1.nѵq L1W*ܾmYqaͥKvL""|:醲9]\H3ۼ lg4ߎP@`Hb e߹;ƚa3M)o)Q\|ZyqLt}8X52] `}}6cvrS{,_`\ MтoA~U.w>Oo>b_ECipk;t{( FP ߓbz~*kzsDpYТ`#, k;@ST dF$cpLЛB:Gˢ  IF\f]g Y?hm@- >%rE a*H/$A;IA#W`BA8 S5ܣåյ1A `ă1n߲O LLtRyUvkM0y]DwZ*q z֠|{ N(2WaSYkM0Zp/lnr xʄ5Ӿs+%9ޱRjG9@xC,YiRdNB7GTf,!!_)E'Oɔ9!HTG;)$ ԇ>Ǝf@ɡ{hW@-q?J1ήK鼻o&)7py%5SZ S`I\<5Q#:(Қ{⤛+Lݤu9ܶnodm~’ޘrsRdQ^Cc8af‚c!z$Gٛ60+@mIխ: tA"glv'%IbUIC;INb䂻:]> [Ez lx$q۞6z{u郉8Q fqdW?~ʄIwZ:=d5i̔CYUL| CNY4^TS48]&|]ZPȻM}R4Ps+^ |@fN:څޔPܱn{D-H77Q/@=(p$>L:h@{r%xZ}W m*ȏb!%l+eֳ|DT@FhIMSWuj#64;v).aGs ,|v8+jmZTԃ`Ģ81^2⧔=\k> FW-sѕV\l֌bxy8NͳѮ{(a_ENJ:MK\n\26]L"h ݓR3j,$CJ@`+`ϙ="(VٝpGZ;Hr"m_P׆~}zJr=/8u!vI(V̉BYPh(3!Й»;]iھ,qv1JmJ>=gTeDV ʏhL) ֭Ql@$>puCm ذ//9:PGӯ4p6B6ٖ` B137bKFk{@ؼx2iU(eX'ӝlH+ L^{M:4tUVs$H/h4;~ͭ4\5jvgXwkX+6IۀDxe!@Gn*iJsUZW$aFtp( oݞJT|s!GZs"cp>^*wW3f_,*MK(`[YWm[bgS,7oZ|~=bUe8oGQ3)g.X9:?BT/GZtg S1@8/ X6񬯝t I> OPv46,+4sTUBP,,.(A`\[DŽJ<.Ŧie\B)B+l|*Ԙ$D=6U0=uJ"ppNtӱ^*pE B7}o/z4D}iƫpDsu!2akzk#MK?eVsushוdRh<ޒ=u ȘNϭg~I^{8,9JQ>^+{Ƶګ/ CGZs:X[?k;E=iMldZ۠3SaI.ݒY3ZT1j 27YIn@ UV"dҀ6D2U!T䩎(Hj Z؎: , A`nŵi_Xc5y 6Җf.hzU3Pss}NPX̹u{Jo;I:aِ~cfQ-WDr p5,U7ff=La,d#L%`<[` '6E[t,6DIRƉyE&=uM :p%>C׷?c3. Q(ǘUܟw6@ο..i+M }9lkzM XbIRH&o?J5Ԟ ]@UB˧A0&-F0խMr"=_ Z wbyUڳMԶCT|dFbNBZHd91U ^-:7X*LZeխ.AB-~S% ܺ`b]>@&T{7ճsMC`/E.Oب_1vor^ )*@-y EC ,Vl,GM 2oCwWV~Haq=0"TwuuHjm;5SGuѹ<w@a|-&t({*tob_| 0oQDd}t݃SlU[5{/h:[?Dvgpfu6g`x;LrQMK) jZWo|#=X(DQ_3z|Φe Z)>VgtdR?T؟67!T Rp4d$֊M̤k:(H3섑`/Cp1C@Δ\5t \F,Bk r}_`wF0Htq{ TjO5٩aGÝc Vz31 B.$5}a-?h窉RK:jU!f@-ğmw||@sԃȴtɻKz/M4<o$8;NڛHWlԡh[CkO,ݞd=ʎ ja4kXNi#hlh j'uK}Bә",Xz oWq'aGdde*#AY.SU_wZEY&vr!O31`K~) w0Ƨ̷̩PzA\9 } .5Bѕsc_=c_9 O{i!n{3֡|o0W 4cVG]u‚̖*C<0&d+z.u/}3 ޮܛKq+c8xd^2 _:Duxn~kԺ|L utefveo`{N G"Hj h+hÏkZoȚ{υbӉ:yWeaX'vIy!{RJÒ˟{!㐓RRX]VYUY_#/Jx)Ulf&tlw{n.sW+u`.l.oJs'~ߓRĤJ`neS%ܓF膈I o ʔk <85^;C_h<މXޱƞ38fiw<',j¢&֐iwjx'\vhI }DW6$ G867ZSa"!B."2Hŏ^:en#ꌌF&)lk4ك<\I 4hps sgujBR 7>0)\a l37XleU8u {x S ޢ#f~ 28ZŪhQ)^dq$pb!vۿj)WW;ĖV{&=_Qaʨ\ EQru -{GH򲒯+x)ⶁܒ%#4X]HX'}"A(mQ(R.@t*$ԇC~( b6/wZx+|U-oq{Oϋ@d2WNo FM:h$V71"k|9Ǣd>`sʛ`f_sZ@ F17uҸhs2-{R2prn KRr3B"Wߘ`Ÿ c{:^ M}Xs0sUw1_tǮ_!q|\ҌO\dmyùkUj_ߒielcZ);xee-7kAom ȅ 0ԘYX߳C 򢷍_G'(pyѢW8/b;_TIB=$$h݅s梔Dc*rhP7fŽݴ+l8t<U ,!M\q?~PKp:s}<=o3m" r `Y0teN)>.nT{ 7Lp<:Jhb\LSS%W(#@a{82a-O ig982#F%C5›O3?( `2 4 gkUPVF_z1ďv /pǿ < *\,NWj{fc)bDvz Jm0\2d 6IO#̆꼨3̀m !S ]?L`XtTWFa3.D1Bu#~ i\Lpp"NACeSAudchkLՙ-=]M=V6 !дhiC2rmiO'ئ"JO1-C,%ţvbHE6_S}ԧ;(\qR-A!C΂׾8ѳH)S=q i䧭ĺ09JQ絋>?%=ڦ[o:E$@ y4UӇB;w&tvF4+NśWs{Pr$3] ^}1N[A(:f_+RsN⓰$mL- _ǎD t^c=S_ȂTGVpSQt܎p_\ANgM{֛|` q ǛpS֘vq|M/}$ eG m*5Rj_uuIGjBY3PX[6\ZE-bsCW3jܙ#Fv)kg50|8r*!rp~ieqr0+X+m PhOH&-bPKMJ6Lx6z RIVd($^5e5+ nS`hBSARpQ Q8I;i9J)3C̪-͉>jL8g:VeZ.,3%ýup5f*$2}\TsAwx]I dq,` Q`ړ{uȿݷ)Uqo!`c(o 4C% b$U 4oO0sf&UTro;epgL0j`isOf(}Kl2JF' /LJW*,:Uxp@xctڞ 8b Édwm Gr!b3>ԌT m/(4`F8 5V B [,(]lmK;#M>ueKC\&VvK!< 6 uk>XH?T.=>w_#m3){R[O98% xDPӴn-.^:%L@o`>/$F%|/8x 0CbD${W;cYjHW~,Ѣ|oF5<-st{D}GG41N9I/Qb/UUuUV(r=D#0IKdIbe!~;0hUQ@!]h14zež2%% tW7ӽpÉnJdɟ%$z=0Bf,<ڥ䀇Wy8vI@]6շϓ{++v_? ~~\'Ç%+0:| OK+ W9H $Z7^iY k. >}!zƩ7ҙ}iq8z[ͧʙyPzޅ oԚdKT̩J$l$\~=)sQԯ툿|5%_xj)T3=R' +}MϠ7ۛc0[jهw5B4]a xXRv=`2iaP$N^2 (*O[ɢ`W {h{B6rmU}[K!ވTUQ{ ٻTєlgDF4KAg: <̑OOLD!B]pq3EӼ@FUx@pFY++x23RsqG06? V\m _+Sn SH.yDG7P*SFA&Jע^!߰$!^䦿= ./18^JN+]C=YN346O@siwzLR41i'C R /O c5M4|:t EZh`d>vYPEJ3@d6f޽,l_%>k+ rA34^y>_ PlIq]ΘtېΐAQ i/ێ%;˛m.9 1nT/=n#ʡ'ޱ$"عB Յ)Q:Vڄ; \奄Uf 7ZvG-q¸2\H pI$t`ǖjH7ąl* ⰱi5%w2֊_-TI(6)/1VS듘GM Y.= ghssW>ͷe0$(6nxtG?r Fgq|P}(-n[ʏƐXګ/Zc?y SxP2b~Ssf0 E[oUĝ_K\ Tޯmddh b{n#z"cRT%?'ޗ^(ry ,Z"<CL=p F!)L6;ټlvNNO/mwUv]P:LO5iZfLtWq6F%6_/A-c~\)jn H YMY:ӳIOu9ULbԇ$0һD۳&)<{vhŨBm '͸pvttHqc F|FTG|7]?Ma3D H^d yP(M&r["3uU _B/BP~ZrSZs<\Oe\;ϡSoBXS:0 B2( !/#ʖbi,ĸ͕F{&T3Prv$>mT8 Ucl#.cX\9Qς2% 80h'fk:z%*T Z;G ':@7bҨd` ߧfI#lv+9&wbJD?yOR蛭j+RW@|P{!#JeRi[Jo@9.SҲ^obbkhvj W*1$۾(Ym8A8lꪾ:n'c.kv9ȱ侔 ]ƍ촰TWWb=2\5wm5Jq7s%zwbBp%doP~%~|:s4?rGui3h O vd2( nZwD-o3Q!ԕ*) EgN x_p+M= v͠B0%S2>j463.r/˨oCO: w|@DoBqq"v@Zq3ŤBy'9d;)&M_Q\ Z&Y#'zF CKI":Qb .Lpіw,]qF񠦺M-'RR-Ar^0(_e뮢Fdî˒lU*$ybjFI , jXHtR[K$ki1t he 5*a 眪uyݑrGS:e?.:lL|p#C.WZ/%-×FLj#!ge-i|q׼ˆ}hF2.TۉFFiztZ3OĴUї( h31[@zA#tV? 1^ ݽTX>VNgٕ$o%r@c;7AScu5*!4&r pPDn ۄSCz^p'7r=5u]=u&ێ|o4+%^;K_0{pAMZt/}bP8[f;&ET=Lg<\ |HqԦW'儳}75;z*Aq,%s66bp-B庒N钲R`6*u4`fmWmHqg|[㏝߼~Ĭh_2 +%Q^Rw *J-XhNTHnį!E?һ2轎7Sңs M_Ա}eJwM\AS#vκx@43_2 ![SU{aį+$pڙw\YpHVÁ _#Ǹ)q-<7ؖnj{%`v^)ŗ&^ԮXvqY>{+ǩ%N/0S~ ҆i8j6$lJZ;3%%ZԶ~g΂5) }D8t zBU[494uC$tڟeyȤ..Z$@*k^5d (Mr~g: K%Y,:aI%03Sd /Ͼ6^EX _ýU+4h9jOlNOK[McMAKpyDQʎ޾Qy<ݹ5hm܍d TgGn3-*il;LؿՋ6ڤ@)x5$/<,Fؽ_BD>">*M B}77)QO;by5h=y;-'yaBVtweW>٫FG 6 yRVsbmHȔq>TlH5Ҿ10Y5᭯RW{MJSQ$"coOp Uwp !:cR64^FS$9'CbЙ JO2gS}usD}f嘽PbOwgq^kvxE $;җx9`/(#aG]cCߏ:UmC9@Д{<-ܨ6 R0x\%Lx%J/jPʎ0F;F>yخb`3DJB)m- ۾ A%hHp ߟ]KC?n8-)_ 5#gtF *Ca\AS=m/ rxU*]v]zI~b{ kŕ@ڛMSһ( ܼEīY MޠMT,'b #H V+ ͎[T`iId:qg\^,fM2gt5D+!@ECw@ o&\R@-Ə3*pp|j:#g 9g6ܫKyh}Et}k7>-WW=JfK #ФSlegx|7x Fzjcm}t}FԦ{].ԕ˲ʼ:'8!hnr}G#/d3ei<0b/V Y+e=GT!lSY;nYJٳK' ,Qŵv'C GK߭s RO} -ncj̺ +Q!=-E?0EleoAVLW1D.G)Pg,ؤoCKy$H~ *H͝%^̆bV{=>:59LBʛܐ8pZ9:aL-?\9dn@v:[u ֹ!ުl$^O$5O@WFB?9╦-Y[MܼjyVfS4TO AU%){Xq䥜n|Z%K'bze]AץUX<|24{Sܢ$o*s f2!&T.P8N,dgvּ(kdP{xYYR@\ .yhT=n--\EmpzKk69!ANqa1o-ž׍JX ! ծUޝN9.lR XNź]╦#gp.Eگ'- qE]"J=Ƙސ0mԲCud#chķXZwvjKf6G󳻝炽ILj*XrV&N9:#Y⸤~ {E(|/qA!n$ْοTo Zeo&9MITRf, )ii=U萝;Jˇ5_~H^/ig#X4lvFIY @uΓOZ4(!:=3ūaȇ!V̚մ,>a=2RÚ3ۦz|[<έ> .ý<@oSIԓ-cc; 2C= L4:# nnVJq~M,[ws餙PKXަ+j,(%'5F`BëtHi!}I  |x|CLIV]pydRUl[o) V C5c&g5Xz.)00eDǩ!Yj Dd5Ł,q+5|Y3e>|unE˖a0]8J5CV{K97sZ(kjveA$R?E 2f BD)\'YE؍~f vEǵ|оc4kEΝ5ko@;-K8{'.mʗfwԴZH&hߙbz{Ϧvg<o 8}]Shum8`iE&9,> IF!5\ciDOUVĮ1mFUv$:ٌ MԹdPagt-S(.HU*vwSWqƻ8K$eM"[eot諚})ĺgD×+8n]i~I~t{b i bΉw+|959MZY 1&u{6i-E(!>綴f3s2w132d㒕T-^Xd1gpw TدQ4l-PXoIu`}BD&>M$I:ө-}0,}͵[Z{2IxYo0(cӷ^n*5f1 |Х{EoiL;笋ӫVٚ ;mu.=M՝\;a/u(=gئ^~ȸ1sL1)4EX?fy;&5zVEF LC(#})lb NyͩFFT8[6Rխ ;㘶C5f  ;V/0g2.i}\[W1H4%dZa?0Dɪci>d![vHSlKa֣v8si-LLNu!8&^*DFCć<-bB/DZNwf']sYX\?. u0,$$m tFMt홈ч;<׊zlC=3bҊOqs~ d|77l6D6z/1ga)Ӄ咢7ř:"l ݞ ]L+%^xk9.k.­mG+|>x "bԖ/h6ތc?ꏄ奺:' hж]l,1 v]\NO>$ٍ6f.fj!0eE:˸ uc 2Ob}ꥢ,`}DDy]sݚa\~\kR@A2qZ\?A^&K J0ȥ7\l U?&#Y6ތ kSJA$?`di<ߊ-=HY^.TN܅aFC--w,3?QP2 o6`yŨbQZT@TfT6ZӺcVݮƠU{qI<74-2S4hѤZݸCj)c^BSN$H%/$:hFpS&߻uh!(˵6MKprr0?Yh:ѫ9 3H$߆Dwvf_ + @Б;t |ŷ8RtcNhY"=6M91ۅeٌ`E?[ rwCK %~ VzZ@ 䫈6_@h18i5jW Ʋو[E&^HkcBRU#˸8yIYHX37;y^.cRqp<L|My<z&ּHI#rzc&7bKζnK2+vt,4ۨ XT#,C(:J@K%}MmhH۱$e@e|5B|>*֫Lrd9{T,Js{4SC?ȃCTC#qǙʂڟ+BtKf=;嗚+aJ^W-xԧ¬ ̆] F<\`wjiZFxoI5e>!2~byJSTbj#FEĥ>BaW#/P YNTqF'7H:=Կ~7B ErZn80Zp&0h!EN*e7Em9ւ\D3\r!'l{;nܽ*T#"*v>a<Ի7"#10R-z Р1>ظnBLPw!t٤R`۬8UF*$fab= NUvMZP, uz9E7tc--ZQ.TvtQ:"__j#3H(lL8 KAf\ũN Ca4%5nğ獨T!%KE YD!Jt?WXIn͋Wn62AξؤÓ*;mƍ F JQR`=%m;XKLhZ69F\2 &M_j^eEmq*^x niwށد?*ՌJu?R).G8ƬɎfL0dRͶgO=`$^ˆ/f| ?z3AK7m VΤݨ!zԨMݰ " i+n1B?,wXGHծ}{J j9HޤM-db?DRv*-귋RWD$<+͏D@$$s.kŏ"˫PHUlMj4w;KiE4bg \^h&&xtk$Oѵn9NbCJ_jMK¸Ļۼ5<VȢDq"58HM$r3/Dv8onKO?( 0s g4K~_Q}ڞ5č'ڮk+^Xw>Q0+T bLn-DCdGQ8cavT:JW/_ &Rb6h*OZSfUF܏ΒvoR84¼z\ ʘlTeԅ :{S[enz)E4πt9-OKLGm@,MЉUߴ;s_l|,QR^ %ev6Ҡ>Pȗ$Qɩ-|v%_7%)T|20[i+h!NZ&$/[h6}Ǚ ='Q*o!A2qMݴhSA`<4jW2 Vt1ӊ31 j<'b8 ""Ĝ4۰:׈c-ӻI1q$FZd][ssb;}͘:oHE&YYhz&ig% :JAk7]۸;/Zlx5/kP/ (d'F;4C^Obwhhg\C̑^_nJ!mA9Q(_vNdoB.ݼf#^_blʪg}tK*YACݮIͪpqTyh/*3l=<禪Q? EMpk/ vg>~# wىϔKTIj7iˈ7KQD(Y=)20Z_E׽|r$_C\[tsม_ :&MC#n="F̰pW?A'FV?p]^3CכInQJ|yM *uHGd>޾䐖uJD8Ć zwv*gmˉ; ݪMH Sp1@u{" S3v,fd ftzv^LbHA@?vD|aJқIGnC:s"YY%p*埓ԧ͌ Q re(1|9p4=6RC%o F|R0fA?nzBhq[#pc'/4`ٮj]!(sɣJ)Tw73SiH*5 0C/8ŗ,sнEoQ \Eluaq|wmK[53ɓxJ[.]s>#![ bB*{ ,TZ"uQCvj_6 y3vn!H;v';z:a i`YC¶5:P;YH#j(d@ 64^1vM!vpPS ̼z~azgQJFہsqCDcEpD(vضЀ RZPt&;lrswܖz 󉻿ǠUF@6]?cpm_#X▋~ [C(GϵpZ ě+4pt6ΥFL>twߩy1<@drn#M3^ޙofgb`pB Zت-#2Lg01!?ͽ< @u[~ Ef'b{~qƤO K>L7ɄJ2O~.%D0$,F]E'\< 01 2b3G|gPbUy>ppwZ5u;ӊOw07xgAfw,@w뤞A%/MT#P}h( UqvTmi+Nn6敵01s,u[::`u*\olYrk.ьڻQ@9 >7ucZO(ٔ}:y1g}O0݉JJ X.k#p4U9",c|nq)~"#wCU x )[y<NudbuŔhLSNiÕo~W}h s"X"W?{u׎jThˑ\v`1gKNmP1R>M>*g9׫v2ʷ bb:2s)*mN0m42cK UNg qi{=,)Xʇdy=΋z)zehM{9yH]Ea쫵o ؞.G/3C KsF*<0Q&u2ÎIַk?je h긾E>pKb#vMp9v#0%HArQ,VF l}D~Iޓ1˖cP@xЕӄ\o# QX'{|H kۍV&6r,Mh#$J KP3~jsr8iqoC&ryò\K59BRp;/)%eHƁԕb+ʔ b*s\+jYFfM%YEW)S<%ojF<;ɍo᎚%6 YٗPJ70a[ .>|,NI34)4xU,IrFL`%p-G^=zc&.u/,bV!Q&&T! ^O,9qWoʞ@|a{B+r'nV`۹ {a*nA#0ݠ͵ N$` gr'գCl"plZy'bS$A"Q@>7ԙ#'R͘E%#Nz>_+{xF%DTu7_d$ ~Lg !Nr7j1w35o)}[v)1smZs Wu 6p' P2>ǎQU&z6\ 5Unãp0|lnϒ+SVWKk,Cm$Pguo;~3D@al 6^yMh{Um͙H+ MVΊ>ϸ3u;#nJQlĖy&Wy9!,k?:O-&ό=߫r-m+CBn | cC(qԙ)(CO Lo |Ac7Y)E8 j QhL'J!N K0]]r4265%`U 7Jy:| ҨeqtD xoQqpf%^ ̧3mka% nA92U 6;DP4cr~jQM9;۟%&Y$|3N8>T &T>䦚do~)%J|\Td:@&Lks^0"| 0؅ޘa%?()HIWvgu*;(FtM> /Lɲc7hscra3/dqzbx=V! oJ~Sз^<.жp0zb?kⶢzqA:rUh$iApmO}^KaHUa 2ErN:{FǙVAg>_Vl{Nk: |ķԚ w89wI4j_DWD"1 H)ODS\wKdYBZUKRkMq֥EC܊^t hp3)(_~ d16ߒj^( .QfU;vDmc5xП~qBU7!I+{ɡzE6-II*r㈅-7zRO:Wr:+RJv^52@zng l͗$Uh%jɔĥ"D - WU[] dtnu)GSZ]i;8ss\|[Ƌ^LJڇ?ЫYեBi[VM&ٸ tr`$+vx0]UXo!a/Η!o{x:s~p84®pSL]O4-TMoԑܫ.e"댈vC`OQըuM\jHసmNߌL>v;&{zI;-bG%/#2{j ʁeHZ,iGAbQ:snFU F.XrYD9^h+sON;+Z΁ ٍE-=9(8M9/gE)E¨.\/ѺsY.!Xެ8]gtag^ JӴd1Gv0-7>jΡuM12]2x./9FtYtQP?nQ|0ыX$U|^U՟_YĮ@:1$$n>29 `8j""y@xo6ns[uR ؛]尌QC3#z;T1RLJXo MZ ? =%OVbxX9coF5Eg`Ս92~}ْJV#.9ΕH1J8S, -j{'28vLwq [a:1- ',1+ >:{HS?1N玆bsl}$?ⅬY[_R\?r_JwӲZK@/tR8q1|M61'ˠ2rdxsD)EPލO[*h+?PYp?r&KZ:J=n+h^/D| -"brkg#z6  t ]g|W?Qk]a99񘪵Y/V4:x7a4vzp;*0~ŪsIS$Qѐ3i49#:R\6DC(o%K14)$ q=k ?s4bmL;Vft}8vb za(n7$>;? o-z݄rfs6 ~d6T\7貴*79E˙A*brR4ߴ-~r2=+7o%;K|eS_pXܐm;%ρWCWZl2ǥr4O@D4J `1S("A~.J{+y ecgVN4G{{+0῾+DI!Bg_yuI"@&NMo;![v;<X6gK=S =өb.6w*ЀsQdbhAd ,si7ی˜ʲ*SI,;oTktF= Wj] IGLp|ӡ{Q?򦺉 ,C [lC\d|IH#0-uy}GB vimnaiJJ/j/pa9BC2%v:q.؎ >=*p90Sk3pr7?iD*'8n)"? |t../NZ;6]1(OWncWFMϭmF##+m1W)eԲF/1)EWimU{؍ Zeρtu7Ө5+)v+ؕ:")HӁ8r+R?Ŗ[uM@D b`L[H"A+TN濲WԽQEcgSI\gࢄohhrskH\\b{t!CʞA"Yڰš {<&va0gA i<NsDoE\J̿:m$$tӨ>Ov*W?[AO_S创g7y,Dyg֠7!fC'MhH[@-AqIfve`Y{DVcP.t?ZΈJxۃ. 0ڎ2VǢOU13:U01lz2@lrĞS\t9Z/xbJF%/T6 Ȳ߄=PC= q?5`KΪ ℋ<] @|Q[$.c3_"?Qgјa[<5S, ljzHu#Cw1ēI ΒЃ8!-<,]LqN YFkzR5(__@5-O)c|#-Si amiU?fO|Dz:8Z%ʉQv wnx3g2"ΰJ ͨi,_2QD fTAN$O5;C 5qݕ^$7quH[JꘗŇ-#kfI-a { V5n㑈҆ <DPM&mHDoHeJ#5lUK#=$ᛕ3|Fb{`8S g74Aƨ@~DSUlpH}m-/.k<vRK9@yt)Hi >-+˗V$qj逎֓ 95\2?T™ip"VVuЁ61>o2Z>Qpl;i*7o+tk1RL蝌H,oƾ4qBWAywwyˆP09CCoxơhTny0Sjb;;p!JPŁD02NLK^zAryFo>&E0ǨD4!m R؎}:+DPP] !3e#|& +7WH5-@ ͙(ɂx_yz1$=!C&~WTm5L {Z3H$1^NX&hS;uUh8Ru*ukJ?bоYoW?/ʄ/1ŖpyZCnWjr)%"[R},Qv.0tϝN~.8XO6A<0(ok*~Zq!U4j[ 3Aj~ssOs6TiΤi[߃a<<>Q2DHB\'*-QWp4C3>g8Û+Zϥυ4ƞ!%. ԣ,1'jI.x>yJx*+Yx4[%gvnUNy6|-Zeþ^DdS⻘-KX| 0vFGvT%例08; 5CJuJGZ̩2&b3E0+-l_o]4_7CoJӢNדCIXkXmu}[ȥgʎڵ od=BugnR/w^2[j(3=Gu%9Hڮ%אc!whgW^pcij;B*4')NFb pVYG]ט D:iՠUbGX+"m Ip#3܆qUC,D+(\qU,YQ{w@Au*zS sB. SwF_$o`cLW/Iu^/a^/cd6@fZWHH͜qsƞS ;z&o\5}:Nn(!=2iY?\ 8<1@ N U9˜WIvd*isq b7(D3<%;$ZTA!_1]:t$_4khiעqu(7FH{D/_ 1@'fZD؈-VJ^Ƈutf18d*P# B౑OV"`g pb|mSji̻$I\sϰػ03)]Fjc|:}|TڐuÝOirNnf@x Sd>'Kk;x`>$cdZ„ŨѭUL'2kY,75@8sîFV/'`co9|nL[jy0~A5Tg6>K۫ZecBzj6+)Pn }7”=Zچa/!H}>nj*v𬦠sRH`1'Gϵ؇>[|Rj /UqS/Qn0V]GѠ6OM!hf$}Z˜hL*Sbd(1Wvۧ G@`^|tWd<232*S" Y8TRf޴ ]^pdD%W"RT#B՟tq#m/(@ |luQ\#،~f|UL. {Im4cWPM"=r> ;j<)ҝ#1]y(rMOOdX~?]Tc,0sTfo|a/ r-QW}H3R%_/n#NN6r.&D4 #gjlĔ{->+8 0._>b-^ ܪفxAzHQD υiJ.K5y"|MDrEɿ$;^l")&P6^A?ZɻU:)Kcv|3JC]}aTU0@!Öd8W/ #x|ښM"J{Jۉ\]pѡK\R8 4 &Q@rN_ԇ\9 a"JNNydAdG_ψ3ڶ.M9G:rQJ1sPik>悻j飙).ZɸDvG"˱LIzN?$f8'}41&q\Ɵs.$hxӓ| O /B [̙YQX[O=S};J~}x{5'QvȜ+N֌,Z.h>N?_Mֳ}Ε"#J^U_J:bTX\f*G0^, ?lJ~/]SE9P`6O^.l0*lAedfw}^5Ѷc g!Xu )p93~/Rk]5A mʙ3$6Z[|^a$ D%Qj:L2j"o E0u幂cVyb'fg$"=ZwIJqem8RϋzT :0]V KZjErpYP8\۟4u挳HG5ڦc}d rg$M.)G"ܚOa t^DǻVp"+T=.*9ݭ*}m[Zb7 f/!Jzn*G/YR Znz.oEP=x%dVBy&D*|4[hF OT0)d}>THNء˴tUɡ[ev:mWnY` oZiC >a lxJkO(AZ{{_Gr6Sوƺv*džI}m-h@ٮ#czil1 |kzMJBrN.aw:ژn1k[x Pj㔍1OqV퐞 cW-ٙ'+C)|y?2V4ֲq+"/|EiPN&=)I0=%B(s~_[{HO!:[ɜCR6ߚ9)*gVϋ]tQJ-s2HFyV[J,3Qn轫CLg6?^t :fL_?v9i73'€?ļDzZN#_QZZ+Hh{H[! ].J屙i[9 ZEt!aa/7_X{بXC 1AC}_vS>GAlֵ^ޟ+jO{ Ѳ:iT,˜6dk,.wؓ9'FΝ1a1ـ87vdb_vzFd]y6@\MsNC DXJ2c?M Ӳ,>-Pe=Ķdm֦ѢIPcr3u5I ͬs- p+V0#GHo 2ک^߂:τڇA2r,soyYs+Ͷ!)ۻqQ|6ٴ V'ڈ&g]o'`Attuj~e0e F]-UMmCDԙr5Y=n橩ߋe}1>[XT"d}>D?Pr Ge}),?I1l9RZMIw.s<걽s)*ˑ*$J[Ɇ\HE2}Me:)% I.Ӯ^  = I볹[b3jODK 6;$j5xf4:uxxJSG;S&bOP5#cMDҜu^*o9ԘO'/,w/Hע;-ҷ30|A6C9\YSwAoպ3сv($ PfdzVMo͋YB((5$:C :&sJۀy߽tzغ?cFE/Y&=%"/ӃïqmјHH[n '7 r,|rWbv}ϝ&QENp3acwZ(ɆNJz l<~Sڽ°)skʧC5#]_V`.GiH|[:QC$3;Z\bw,"sn>um *A)2į>b琉k'4s%/ȁ6VA9 ؝vo{M`%BaD# 0Vi@ﵷ`rש%z4feL {kɚY$w 讗7"pe$>o.3NpGy&𷾞kl]a?xd@7R;vč*峠P[&0Hf !-Z;_0L: rxH4u |M4j>Jlg\A/ ;PB?pD,D;Z?(<\eWg -QO9 i7S'Jd":lk.fI!+%V]{ )1 q?lԵTxho @#\mpꝜSCG`+iBݘuկz& ~8$wRda ܦd vA:s7AOE6V>Km!OF*fL xV;w=T)iXbJ>"sA> b\5'^}b P*+r*{I{axQ2-Gs)2\&/fdsoжC4* ݵ%|XonEwr+eD.}I!|4 h/ (*C!jU< o@]*4?pܺkQJ^oWUKI5C8s̺뜎Syn1'9Q9t¾GTnR]Z]sʈWglt.'cj2u\W]ɲmYX]B)UOAk\թ7,HW@53!Osؾ `0SQEkG]`2%d@EQzyL3 (@`-b}D>1e5ÆUƄ]{K$yo!;<^V'Smf0GtnI3^jă1 İ%9*(di!2Y'xIf!pi/p -)!z$]]|L 2tPTBĕ%f 3mC,ۂoowiI -έzڛ(0o"4Bo)¦y堂m߾$Z ;Z.Cg+ .]֩_._6EY+6۩2mIdѿK4 wS @IO!HI`A4cG՘ ̄(3Qw7j> #.2%!y)럙 xnR,xq?+ާwb<-8.iLvAx^ѣ"ݿ #BrWb;j|k׊=`&Q1)]Tcom{ RkIAC? 5pk`o|"zPR^mSN' ^ W&mv/; 9EЍ'j~#R&ȱ#qrRЎ3TRbi42?]$ KP1Cۅ}|?1*R:W"'`oϧD|,Hq!d45SW,DxA݈+sX;vI=Z TZa[_] t^~ >g)3"3' oZF#nv7%݆7](zf0'Ӵ^z /Z;\2Z;eL6NH蠐A:S(zsŐ7ѽń۽RgjV/eAS0r' p/'T_)\T`M yG]׶"B}:Ȝ=vZx9%b?"'>k [[ "YqvCes~DFõ_t'JQT[G!w.꺬LYFtgV43[e!IyUz#ӟQG)H"S<@";5{orWQsK5ĜSv^8h*D#捹EQS[-ѫc!coYyGS/D2ÃO3}{aB8󼹸pU{-&2-DNJinu!YԣKnn,`v̏3Wb5%!8:G}/2=8gMZ/F9O膇¥w7؁.[i,Z>[pgi[iV%Y(tMk9N\,@D-\q?o+UG:V-I.N"`߃ַؐa(sb1 ]'F| ͐ Cj/_ysԟ;P0PWoa`EbI3m_[*H#L wFFj̐>,3) i筎{i"a464B+qMAUAI 0ZP.t8g֎-^0U|Ac~ɔ~]*_4Gb?%YߟԩVB`r6Y7f7m*CNB6.rGrw &a?:wDWd:eR tUSX#~j_'E#&&Vj\eKݭDmB%̻0OF)HS~̴B5t3&.܈hƉ8ZPM0^{.R-Lù6+ .Bz,1 GuKzFi1t $xqg6| =qąؾ8DjB J7 t4]!kpR!品HjqGyb b`-I(tn?`U&0!0&05A7@2◶PMipGn[pO;-k5Tbeq8Фo8hi*R/6h^`Lr笾a_Ֆ*goCYT4K䄛O`Aw%Hi|{6\l k U[q@*[fqm#ĂF iDs#Vn4f-z0QUFsKU?D^QgQj$zxB+"$?БI7 W.;spSXcL&jI6T{n,W3HIL1o,oJv!.z\,]I+uugrLCr`i/7|L\VfuN,²h-%rp};Q~^+[]E+6!y+m98 !dɬ&>?U-XONvګRޑX%kԉBCB%]P9:p:u:?5DxmBLo(sw QkWem]w T_P0v&Z1F#`xJՒ5B@݋>Ѿ ÏQROnT>}c) "P0"1F '|rn8@i/lAfDߕvZD3E$w|&jǘQ>7+u$ =c}/::$E("_ ,m8ȇ,q5xƐI^C^BØ@1a'AQGZm6wЁI'xc5ҲpY/)bP шX6տôO BLَqjObEmZLiMڋRȦ /Qܾɽ:(4íEՍԒ`glɃ0ࢤ:ȯ;:]xWXm/(5`lh_e1S-nܦsQӌ*ʠA$i;SQu,d#=zOq7r/uڞx4#qߴ+{ DR9p]75Qʉ7P1Z@^ճ/P;~ҹ|k1|&o kC^W%}`+0h)YiPV[M"^uF2 (Z y:3Gn X_<:C .wo 8fʗs\MԾ4n<)B"nr0=j?l`j"*Nt1X%/+M_eִmsp{EVUj?RZFZ-QE4N3f&3n%&5/U7\Vo%M59ql A[-dBNjn]b(Gr=skB"Tm[g und^@7PZ_@f{7+ ysF*a9f}3`ݖ_6 ewL7'/8IǮډ> 4RO}UG%9k 1An^$s}C*\WM11}Toq tz O}5]ÂJt`NP%4o&O#JqATp\B\37ouX]*`kJbZ7g~ffru^ kO:OQXR_g}4Z#&4?|!Z¤BTJmC~-Th;SH棬u&YxmR0(+jmIC]Z5`'F励3'ڲdIAMÄg2}@+K_]&Y6!D-0N3.TQ40n8 aБuכOaKi􂁭yy#)ca1hL:z?!_M=Du~8>vǰ N4r.n2T]E壐&öG4yN6Z9@Uum {gƉe(Pp4^cmY52zv?Fٸ\9~ z6d=2ʶD N u_1-ggb&:0-UVvQʄʽY&V|invm=ƺya'QAc2 وt"j]l6dLP\5:& '(J%d/(;:˔VB갓U jf{raLareC0kԷ[/5qX+BL%?NאxW,]}?QT0ԻKudTTMZNv㑭l>fd>K341ߌ]oRD_:OW>qoקzxb FwS>]z?%zBgk2osFJadJMĩ?ƒzLjI:7hYC,sۇLFsPnz\HIOPX^[+qoaBއ·E=r^Z}H_BYO*9y-z<5èvn"ƶ9OqzI{ Ol+5HDZIZ'K + |(P箠\TOom'MzxѧI=jrnDlʢHvJ"cWWg؄+4: s  |YM;AKdu4Y]1H1uSu"y0df&]ՂLi;] <> Px E8a& piLCdؽ`+ awm|3 'W8- #o?]x=?3VqR@epDJttu7D{X9bϤӘ;{RyeO0 H?܀Q.2<l8.L""G*]O|lC_n]ަQ*PN*P 4wTOo1=;%7~LЙJϔSDf05 9!Ϣ $~L,$W s{dϡ }׹t*kwG^Hn8:o5.\;>qCrbt]~Q(汗/|ۮv $j;^.G^ok[ۊGw%K.cvt)712dFgl^[,)&eҋ 8,UfGL5YHBGKJg>CBl S0*~)59;|ʿ6 ~ _%x*;(+!Oxk _Xg~α`xu$6܊<*Tk7NFҕ.^56i&tXlјu`5_L w,|k;۷lK|krtjR{D4jc$MYexLsI52+`qJM! % UzcU<;Vи(ԋ aяeO\R=WD񴹎~/'n'[U6B>xܮ~J E crT(&0S{H/3(r` ME b7]t3WFCag"73{hh?~ g,82]`zݕ4^i3Ak0ۨ*էGcMwAL2dOp}EۖeT߫Ѭ~]*5""+;˳vQZ:%zhϲǯ[Z06o99EPed~iu/h<҄Ge[qag} \ Lӧ:L6̽sF>kӌ}ŖTmL wRTqdKEe-9BK"Ahr6&WuE;Ak⨷+zŸIb3DW" kHf|Тzga }㸮5J -x"R`,s@b8]Mnb=!hw;DE:wMLɗߎMVqu;W®IKg/ "RKHtRR &[t}VK;ˊdrrv&I]$1[OcIf%cF3Ppjn:PNʂR8 Xx2%9Ŭk!OݚCi8GgT!I "Vk:"8݋֕Ь~.Μ"bs;;93{WhzE6z0cV ou1Lr+sdsHy~Z=`YL"_(C?">=diAV 4 CKvTU'ISXmZ\a@H2?Qj."$"7EA Пg+y-lO-;)/7Q4G 'ɏ'qoVF̏]mE.TkTa_ (kSySiճ.TZO_bv=`ҟTGNa|oPYdmPRE,{$mDiw->'Mm k-P.(jk7rxy͚A-̬#ta'Ho}T zz0g8;uJf.qխ(*fda2sKV$MX/R~S*2M)Q::tX_Q<^apQM[{CMp5nHt'/Q])Wa$iJDQoKKnΐʟDК͏1_ r,5?AG< 2]_$ >),Q#!LC( V@XZȭBR]@Ia:gYhEf8 #6bJ>K)A3~sd+աg1֕})N-c{2|7$:߻riqA~ Aa76%ƓO:B9lTZ~s;BL/=-FP'َ 3Jp п|v>cڣ|߶ʂ`-=B'i:}b/F!aJ[N~L0j ֪O>0'lz31a>!Y1d,PD{& @`I;a4``"bnUQ xn?/@oA,U~;|[2:O2s׮69ƛnκQy:OݒkR}te#^yчf[0Oݦőp+s2G#}bu)֦DFX`\ XWig®P SH4Rd)kuo}%=sh >Y4Y>NbFY)pMI(ܼ8ER>Nք>Aj!hx-no^P8s#PR{D3誼|QcX{C0,qu)kBm #(|cOȭt(xF_%Gb1kH Y+߶Y`Y~Xeey=%QGkZq#_&B*=ݥD1DV%|I3D&;5#_&L ,uFGwa*ѕ[J/[Ҩ? 02~02S a4 LC_\8Gexh+.V l\ `Vb)V: Qt{R`i V&v[y`hH`/'Xt%OnL+2e((Xٓ/9֕e6g)~w?>/6aK0j8|^rD ala _;ؕ@5)eÂM@"Ңuo}y'MyX[@谿i:n S)g(ϭEk g2E Vug#;ww'_<;1_a5lhpXpIZX: IsYnsia{!kW 9TAM o0H64dbt7^UG8)4w9BD7se?;G5ٲyb@eP8iڃKfd6EM7i4.Em{V0H0 qwŎdұ 7S[^+*4rF1_1@[ צ_. -D3{D W\*NYX9}7^p.!Ь!Z"3 Gw.8&qu&B1h)@Zh`FG+Q2q„kB*ŏ N^a`DP y];Hl`4L:eKԱ Z;G)dhLu&::  A-QUt)xUrvKY>1*, ad&DPaR}р@M$zf8Av}tR"uv"M2yvgaN0JWsKh)y{心}lKK:Q!le5S.P%Z$5i-1|3p|,+?x!wjZO\s| y-8G52&iәc1洖̒<vG6=uE-z-C{e}d1c/K<[-~DF.e ~&9c>&ϋ (WVkˮkhӟz_m=e&_Q] PO"dtztCaG 锲دJޕ0Z:hY=pVI.Gn bj7l܅uމdgk`nC2lW^8{rrTLғ8Jr+F~C;e͍&& 'pe#a~ߴbggj:_Ie *-dȞRבOh, m"p-T-igU@qBfBC1`E"FڛxpV淽"?sie ;`. L0hhF\+j{Z:P'S_pG4{ oi*_Gwo-Zeq-d/tkW"=؎AUw|@ ķ>VRߕ=/xGYU eЊMU_PøȮn_BM5X0zy>^l. ,d kJ?Eu)_3na2.g…Z_. ܅*=ٖ[cɻ9e1GM fR@1p(nf@PDw^N_.lU=觿:SEeB铥);-Ll{SFRԘL(߸5)mLtx}B*7 Ҿ;04 `]lQQ+BºOx0MC,].X= T8*=:hpӹޜ׿6W0}j%p|6{ V {2:황% w0ZOl\Ftg$'巊̮rfkׇ>R!Xw79'(g7\[`~y[#rxZYybS*B< snɇ?i~ڲNjzEt5g ?NB  cJqQ2M;W8>ЊCUV0>H0nPtOܸg3v_s/WqP.)u'.ha3jD%+x#stfKz B3ծ4Lz{1|s\t}oZ,¦  yleq><5?GذX3BTfEBsxYD՞tRl~cBeR+x?# iiVvp :2L: 8KObs{(* onJ$꫊Dpѯ5RzF\/ Dd#Ԁib.#hBbw4c4ihpM@ޘBg:-sBevBGK#g; 4MAr/_Ij 5&Sf䖝p<6mu/r1Ҟ5e?ILchA!q&'n]Mb#B]Q pJ;l܁ N ;_9$qӷU;5y"0]=qhHoUfep|m xj5wOQ|,;֣H:neJd/d^1u6W#*7OOّ~ku5 *puU:i@h]k-V(jiu3M5|7Ms'`(bN(MT:M)gZ0c7ԭײDgW;DtE#M]U"}[6~A,J !yԢbl;mޥ3B1[Z1dsi[uAĽskac):>iܓ&/+1CZJbRosMƢsXW`*PăVGw $%`*0\Zo˄M-؎anop-0.tP>טPq.gk8*fG𩜘&_ݸi8(qVamJ K\fJ(uQ.p!gCƻ=cUf/r 59Ձ؇jR E~6>P z YИlDA@/S)ޒ^ŕ;Vi< ovOw&rjZn,ܮ3{2WG9WKPvr vMTnj_(b]R*M=܍<>/x) ~D'9ֱZh]#,CSKU;´G--+UB׳F. B3je&HcjH-BL.0+l%M05sioyp/vO}kPd^H A{ `= *y9#i~q2j2iZsIՠUdXuٜWFL~vQk[!)pޣف OlGfWՆ 3o[5KH]dؽ91mɠ 6:=U37|*!o&7EI=N;{4>1 M>v4H-C&NJf~!E\p$vI~~knz.kGVWL7$i=Uڄɰβ] ,^7G;Wyd0=35€zϱ>ԡX&Xf}Mt-DtX5DȽ N!t[rH9 9ΐgnwذUA&-E kA%Nj\@W5Ǫ;6?+K@ p\%9TݸvX37ˈ>Y;9 IDb덀6VR%K(NkZAge 5&mI [L0oQ{3^Ă*[W.̩7^K,묚 MD}gE!d7︡\U?6k%MRzi BJ%nW|V 3j"FkXZ-/lϱ`"O'ŁWܺ^m1Q{66-w)þhk7`&^a+-Pj+X 񆊟H?-.Fg3r%sZFvi]BMbYtd[\'?Zuͧ}m%Q`/_"2KE9_-F뿧QK+qGe+o_¾% a, 8| jӓ?&/<[LA:3y-TϙA kSaB!i s/„\.?ؒu[)̏hxȏ:bAi0loVT,f.&;> Zms}u˗w5 $) 4+vaxlNbx돑nO@?YSN"Jd#G *;08Zvq 3y<~E`=-,d^2ak>P3P0Exyj3(@~Pyգ;7JxmO: m/9X)y)h۫ee~e@%)*rY-0USUBrB \[i]9JJv3,0qwCB`0gEӓm1wI5kTB݈SGo9+ұ9^P%mPklx| /rrTUC=/.|ƸuȣcmN+;^Z$k܄ouT_Q}\.T3@WXu6luT;gS?zU"G.K'iA;f\ n#tg 1^j.j[CZ>EReڮ{P%MQ9M1`S<}.ڲ_ ih? ut1َ \N,siƅ[qT!^3)u3S.C&㷲$R/ xay%"{IcWm^Y Qj51(e!hm]}dQ~mj4÷I yuS5&4?0]>*(HqPYja!Iۨ豾%Ys)˛{n*4BuZWtbtd)vYa8D>у!de~]Cw'R{'wZ 8b"R&m?Y Prhݳ~⌠8+_jΏ!NE@z^ǸL|t_Wϻ@:f`(SU0]XA-,٥kFw$UntL.~A,븰AP~|(êPmCp*X' &M@W#7k@qBƓQx[2 ,B@ `l31]> MLkAE;xjz̶1j[nI>4Y:;M7?淹$ԧ7:Gݬ`&L̜{)9}Ua&Wi H_T8Ѝe:LOnSz*xi߁ E@1ȯ+F{f'5xw&1g'jPApTME)wc#V#k$4YZpJƚ&aYz/Z?FiFS}GtY$0uH:NѾ:VxЅm5 $@:hC)(a3Z5DQ P%3m4mq-5zI*dX(9AM꺸N3Y}(8ӣ b>/H&3e<=zOvMf$~{ף\H3\:-c&IoM,Dd0}-pYkvfq1;bt%ޱ⫅'^4Ȑ5(c˲3`D-#E>CF>-.I""=^'胇i=YNC}S? /?e8 N kG^Yp,˽B>܅D5˷Ͻs|9hJ6%0KN֗"dz4_;Y]# fDYuĩl#9)ǟNa5zer( q})|Jj5Y6xP/Z]l_#hUW2Ua%Ц+h)Hy# ٤Z!1FVmq; zօxՋ mxP`S/YUI3iG!c#=aEwˬ) UNFjT $Sd ! ' j20{E@lnM 5r5 ~\M#"!*P% +)LH@)d($VrB E0HHn$m \U0p s9SSSTr$$ Bo 4|@;P#:m0 @Fv^<, o'/R]FM=¶8b8=cO6 [Q=eX@xܡȊ]OlmO&] FFR~O<{|l,*hI]yV3ﯔZgE9`2!?"?;$ZzhnFk =AK|\YsQ*Ha"pwuCɼ(ID2 ' 5awOmYKH$;<ӶP-[LF2c?- u, XJl/JxZFs3.qL"œY|X4` LUIX{pEaCO'FV/$yۉ{k?8b-8i K?hEu M&;[Ej:YαF.uja-^ ޣϜWRě病IJhL\}~ЗR"/պ:rT+G]+y 7"hh}X9h;Rs8BtXKws7ˀ: 1 Q1yS8 [Ԯ._fz9;[G-A R bz'˻%׎}^!z=Hsi F4zc Pm>s&UՓ&3_9_T a;VZ¬>N/]Y"aTlHR@xN,5巸w4t,P oZgHl>6I'9" {m-NLx#1A.[r#NC@8Vf937LMMڱ%c)fծC{1s65(F?MtX̴j:i% ~˅=3qALZjSsێ" [)m Ǧ3d~)n EAEX|Dc#.Q шŽ r^A!bRcUq[Jy$n%u`7RUB]}NC!j;Tܕ9ߴQ!Svzh93Dt~1.0..bT79/ n]t4!bBkXSܵ9(Lpc0S H{! \ |3/L.Zal?cDS|PpP\;YցZo 8|HVQtRغꤦLeN} hrLpI'|NK"[ 뇢G3V(ylGF&tCא^z@ڎ, kAj D_&$q.aqj/*gPq8il(9HMvUi"g%1㟭)RLhпJГMQB][iϻus?8޸y_QYv@d&VɟM4O'qGH,\Xms^vFb]㒘OE/4rK4۶5Eu;3MW>gC𡝲Vv,9'/X>T oafOLǕPD&8H\FЛO%Oܢ}ŻD(`hΑ\9hbAF_{/)Y= XN w`HoMR82Õ^= 2.Sd\VGvpybӯ5N9KKDqDNz.q{`B)Uj:j]8ƹޛ/$#..AEww fEm1k!}cm_'6#}CKRӅ{1aaZSȢq25I={srѹbh!ZhhશMhͥ"rF9l} {z{םQOmˢRb5MezsP%D?qXB7!!V`ڞ+-~(J5vvFA_Z(vCBp"sƧ^yw~rQFoorYK+6e@ +]urn~ցQs+Q#>JM{Z tvGò"-,z)Vp%dW$24 UyK?o;#ؗ<G9FV<߹EʔzvtХljGWS anY"h q ˷sAjhϱu ɐZɕ^ˎ \`He;˰Vmc8pY^KVK)9 mB„tڞ,nle,)=}M~P-" aN,~9gJ?vizTN)@E,'OE *_ YaM 1M9uWл]5Z>gf&dFC8 CbFfupqj^9!r,76aY "k0s݌ F yw-/9} o;'\bEu]ǃ^ Rc:, Zb:z6 \rkVM(l) 0pաXi޾XIJ E:,Ì OP696a|(GYU$gjG衕'%xѡ `+h3 z;%PЮVPzz3FTüt~P),<_%zduVژ['@P/-j 4aoVrtɛy׳Ao0‘ \2jol[w| ͓*;ځ:u$XP6}%*i[+xP |{B|T0yW"_O{@ 6e+JP*)'}[;b]+#lN*mbVMSZBCM4*@F2|zfjj>N3EixÇzoVGzuaho]LHhY+xxW!@njYaev0/-o$ا6NZ4,QעoVwߪ UXbTf 6s iKO;d>[Y;-oleצ&-d🬅Df=@*k%'cSvSVD:(N˃ Do^Q̛gqp)L_Ʊ{?pw־7/f2cܲ38\.Ut;H((.C ]8t40tlLo 0_tP]e`%:EE \4ؾU 8܏+0첔!LQAx@-WU=q',#lV\n/Pc6V&Bξ'aqL]5蚔jVn-vBCo2HPx8]IՎúGpjޯm4}[cl[az)%-^PND M^sGfP$dQnI3P7җ7Ztp8kET $|hK܌QH*. _C.{xW L+[VqZ4άfG:BFE֛`fUB^Ag(*)zT(Wd%d }*x;Α@pFsl(6(K?JRÐ,ZBppea XDe,%rj[}Q+JBes٬,Vݶ٤:sw%>~$); PҒ-_G$"6NjFؘc[7ˋ <"_%Di܌3x՝ ryya%s%AOAFw3M669rNr5{ ,Z%Cͦ᧮wY=Ebݕ^- U9w6> I+c]`!:溁Ų+PX0 ;B(RYlu/]ޏ|^X^;}Py~_4 ϠRrfR0Y#*f~ܕҽV"?澸I!՗q :`ј&WF6ΠVO˴r'W5-)0Du tMK괟%Wf(o ur2ž+7h0J"oaU_kᤠu4gE/pMvy0&s|%~HئW]61K.f'75P"1' %y-$W ?949֣L@)TJrjX&Z'.Ͽqtv8l1:YK[Z0_VO"r>"Kw>,R4*]6sIy"?:([297u"YHAOScc6XWf;x8Z( 7cl=da&@|8GQv9+k<.T璨e>C雚w>F":,mppzᗼ-:xPU411p-%Bd[#FCg/[$N[FO[A7h^ ?usB\Z>:#G$Y;p-i D_EtҴ]1NKB3'63jIq:`YNpg{'L`@gNV_?ӏǻ410T9Z)Sh h@ä 곞PUnxgぁAw fT`OSxˡ8]mG RtuKٽqeB`6xW0Re:.l=8颀5X\hgy|iW8݈t"p1LJsŷus=1gj3&74ԻI4R/k/BmGZ6tTw Q9Dz@㥼%Φ0uS|YL+$!=3$KE0iV696S^$ VFt۞#NY2I+4@p{[Hb.uavw@r/i]ߐ8DxcaSnOjeViտG؋l ҹ c"jTS!S&58ߝ#^3 WX"@ f]Wb2vآ)uF2NpIg*z!|vr=;?t&/h+brZA3&&\W|%K|bAȅ1ZйpsPM8) WWCG:齙#~+E6pIy“RLTfE.X~ޑ#7?q%eҩF`3g r?l AҨw9pؕH#{C#\|P Lr\Y-I/_2$ ' ֨7ͥhK9CXu") AVc?k<)Tpvdrޕ\͋cdgYi96yJ8aF :"X w|󔔗!5ٗt!Kn0 ^}\H:A8D׭R%d[-j-Yc Ja**qz@ /HZJH.4\hCbc/Tdz܀" :^ ]ٚaxc򚄁̺1)d.BXrŤ#pH<1^5aX)5%U|8;*CӅ<f-5[`B[esm(3@) S$6],D*T$´1yX筍\'xW]x0we$;*>6h_k"z18ċTlnONN@x׭5X8&4S-p˖æ%拷C:egG=:{Mm?xiNk(Fy3|ZӬ jsŘOpG;2;~ gYHjoW&+C-=t^tD0O'@~(_# px l`!vG?]>%&ꕨ(('46v4[VυBt;J:K:3"#yK-ղ)㱮_- ު#X1'3Dȃ3v{%clwGf)|< T.ٰ(#}SXP؈lRՑv \1`a b=QkT#\#r_|sh5Ao13/UQA0jؖY@,ʬ 9i*$z2zaaϛ$c B\z9R>> %1 J iie{y_>36YVnxCi>Bv7hǔ|lٍ0}/~eһpoVDCU\EWtA5\oe[. Y3fTJRL=f!獈zǫ"d+_F!ߙ_o%{(|v<iR@QupuSU>Ax3]}1Qt'^j ?:r!ݧ$w5yeS%=z .vDcsl1atWc:85Tb.7HpʶZ)?O=0hom q Lf2w%(!9 *hk>S ^{[L,@399p~Hv+Uj,CC5XK{o;N*$)Bί/-O8pK\$`W4Ay{4{P}QgKi6swQo+z5u4X,׿4 5N3J pz\ϵD>^oT0RIqdc e1x)<6[ d:pw2s 9ceG(NZ_:ҫT#C)2X uf6&?Ε̾ҷM椌D@f砭 ՝N H+!SzغLE\tȫ `o@cw3dd'MyDEI!Zoyۊ}?!W}E~K($_R\P,-zqȶ>7oms"l¤X^P>0HV@8#U}>u:HF1_Or2 ߺnzC]N.vzFl#Ywׅ#fyqNg![(Y؞.rwA& !WpDt$&7 1@<]0,^$RNϔv<G}U /Y5͐wdHF۸})Xy91'O]ȹg(]rxۧUoy:ׯذEЕBwƊ6%7SK%!8sz ;9JET js Hc|1C^ΰPxXy&XHwn+/ ȺjOy[那G7XBlÁcksJ{7ߴF?#uC,~ʬB]Er x(R)戾l,_+1._f 8!HRSi8(e~VMz8!@3utH߃3J?~2 wلJJ NdF@FI{thQ15+@(8H$+h.(zU}:V}UPeoMN!5q@#YL̒+z:Wn5i%!b#! .J20cVYhHaǨ(ýrTqèAU%y #ݹv P]>"TMP=g< KR0o֫8/,X\#ZOgcOnuYz @(lDj/;wȄ!qd=39",[FήÁ7 j d~ȹUA>i'2U6Xe lWh,WuX(CawȔC%]['QͶLPZFUvs6ѷ(_#(p=Ncqy90VU D#w eL{8N UhkUKi F ewN|>t j]^~ڿi]._Ϟ\V@ʏ>2ժQ:ĵHRݗb j~1IlrEڷih;ˬ> ^aU9 9Y"5Ф){`S9*+)ZnVomuP @[GȖ͋)'w0Y#g N3 7C|x`x/&VʁؐvkKxZ#ɺ]7p 5 ǨzoHw&z.ܫGdO?Iu N:ob6bB V6yPͻ(B(@L$2 D9r~+Yg[Ia1F9KV-Y/3Ўr@Fnw]1mCNBczY7_H,ݐSB H5%X_UKf!gun7 nj!=)Zm&OI6j<74=ᳳC6VRoI[8>'d‡0cHR( VW/uN_ WN)Z+d[A^tǺ!<O:Z/ y79LwW+}o]w[<7C?EL)ғ dW.JUl\qNLݓJa:|":Xlg?XKR< $@ G!dXK|cM&CJ Ym lӖN+{ 2 9(2=M̞"`me6̕ǰT=)r#`c0 -KeugZybJyc#J/e i)ų- .4sa,eyFjѰ{swqPV}Yi/88%|0Nt|}bUT\,6s<H$Gk1m1ji艌Qi *4z+%&{bEOqWGX48Ͳ',8jlpT@؋7R^w 6>D^U;j:JY4.g9 }]ToMp+UIՀ>M%u6aGh/߼]%MCʹ<&c<(<3ljjh=leq(O(#Gd,w ă @tCrGŦ~<%'\" 槆`%kXכmoW҃MQ6Ah„L>9b7j&YpO"k7; %Sۆ_m0i]~‚&:B?ecm1\q]UEV9_>޳Sj(f[U&JIy|(ηE]:Kv< Pחzde@ K<)Ses3Kf+R$ΰW9T z. 4a8Wي @p"~"x8'o (mͯ!E@Bbz_rg>؞yP_XG=舂.Vڬ $-HsaqQw~K{#̅jF7%=Ta(D X,7^!)*QIZyۃRғ( ?I#G$8Kq;*6V39D iF 3YLs]F5&$ՀPuMEM\X{je¹ψVszOx`iKdGb]~uxlg6V[FK v^`b-a&^ϻpK_!q:-PxaAQ^/lzN8 E$!Qftje0kc^|n}H!!`ʪ{|m욂h) 6s"U:(jͼQJkXRiUCgG$T;"" GG>@XKH}LmU %1>MjS}-`MZ:}(ssD& ".voRAm=Gȭ`?j # C'!q}[T 0cϵ7X[TƋDM1D mj-`Kn'Zn,MThzK{a$ܾS(&eΖ΅# I380QM;4πȐr 60e=u/y6L-\ײ2}l/5#Ť\(|)<|f5Rld,Mz^Z4.k5/.|ܨd^If#Y^Ö;몴_[ـ#AkLeC A>Ϙ=XK V l#ߠi8j擷[˓S|-aOV=r(<fg}>]WGf)+#4hFkslB)uA71hq8u++s SgqyCҦ#QYpSpvt; SѤ&IdNٖ:mQ̠DhS{]f","Kz?1}7;\{|Iu=7d4*aYHۘ$EEĐ d`f5}f Zцjs(19tU-V:iY{31Vd m>}aLC3 - 6~uoT"]De0*CmD<ݣE@8;L8[ JEWjPB̰țJE,f)}i,B"+U|œtuP)%T?N, j zo,&CCnk YxS3]0^@owL:/iz z7q6T?IV\JQ_,kbԹhnxTp5SRp\bhR<"V@nbd4As"u) u#C"x?CB9;R&TDY2P!(C#NRnZ]$V.@_F1jRZ^Aټla`})3٣*!NӞq@i/Lޤ=V7uv1‡S6F~9 ?ۏ 2ΏϠ CV|ɝf7[M5|CBo`{~Vuh$@N\AR <C/CT.1R˔_M@ ΟړbKuqoSܷNvDK͟@>Y&?4horyH^3,`FbNsU`;gNY,)>d,;PLk_!#uN7peaqi3Z<7SB:j(%t ƒh:uc49+UN?,M<'U[=Svz(hQtB7U =$NuL&ɠ+-MkE?7pO7'5N 82t.T}ɾc;x33*`6eTC`kJb+c' \kR޹E>O2]z#ϗM@Y 0QZZ&Yz/C˵ϷUC]Q#pP.M,^Q<ޥ+}%)uncc%F:X.>F@{w*@ɓ?y6IM93~v ,zUK^ǿidr9ǬiK@1 g&@o8E+щzE!Ŝ" ,ŕ?V`˻up>S2}.CУ$-oҿ6SEIT~4,kJd>ib@a8َGZ BЬbdcYR8/O`"viMoNhlvjߩnʗ`b8t(r[" m ʩcOLܸ WnmG;n3Kq`Ii/Vp IU a4mr1I'/ex bvxizW!?t 13[wHnف;Q_KYk@+k} +3OЛpvՙ^wսxceCUpY n^MGf谩7ͱ>Kd>ח>"UG 8gD-l=l\o6X ەm+6H#Eİ̲HX#>drL{ue\z=x>`]*9ߛ?'Y]7TD5‹1Tä4u>۶u7׉`Wy U5L"lnY8 BW5'EɎ5I- `-H8=)V@vfnzsC=*%_>ۺRPV#|u À+ kԧ;DiPBV+cxŶt*~{u>GJWW{Mz^ DcC})*#(8s}2P߈1Dɵˋp}iv`jpV5=s,G n24@Ⱦ5)~:[C0lWA *2+R7Fa8@Ǥ5m>~0ux78Sv]ID',X'yT ?Vޗ 42X.waͲ6POh^oĢ io gK H3Dj@<))}C-}Vu#&?q ֛}sDW, 1E pKy-4/B=/wm+'xg@ps!ZZ -xBJ|ik4[+;&ZkcS2[j;5"EYu>iyRv%*~} 4晼Pn,9p*c. ln:5vfRåߥ"/,  p/:t*pAę#:Zm{DO'nli>OԌ 湘ltZyNmes>Q<_K;=J@i4_,f@1Y7) +8B(*( \{h>j,]z]uYhanҜ p#[ӿ,`CW_1]P)dys' z}dYw\) N7&dCv cyJt3˫y]7׈BȩG1!C>J3nT`^R!UJ7|[f>&5L_(:M;w8fG':jyNպ"HPxQ9KlQ^3蹩oPd "<TJ, f\̓,ߥIhҠGOme*'Y74lӇ{nW"WF*KBrLA5>pDԛF0l̓Xw5`bOb.*Yg[ܞԀG4@լɄ2*XT, 6D1[eEִq+)J))?{sX!A)Ȗ5n`ջϲ 77Y?ZE9 ݖOTF;jY>LɘXt$A>?<8ޢF5@l'9jCVpxpW7ݯcMq\^2Ӹ;:x'ZO0jN䧵4\Anm?œT tZSI/r$rS-%ҩ~oԖ`a>ABڪJϨ<{Huq 2ljE(y0:_'C̀/ZT٤=@opm.H9]AMDy:T=∎Cm2kpXiAk"5|tsNT'^Ps Paz zNfm)ԏ [ϼPx/vMW~t1@xISoxP/p@ƿDpRIu*OE8 t'B$BxGا_*$ͽZgdLa$X`$XQa\|# %.&YvTG@N.ٟYB|0f+,~KuuZjPs"iQ$gaX2N+q ,VXG®PzV>Kb%d[kH#FY4Y̋yen&Xƍ`bƝ*+Q_7coF=<ؐ!㌯xsk9nemCW(# =H)A)g/vӈ|b.Seڮ)+^ 31'Eq)nQJ[oHNo~$i܅oّ0_G=rY~2~:X ͣ $#ڵ@(imL ތ, N{ O4ؙEqfъYZ, &=xa|lmC W!`byKcc󹓋qkOmߒЧ)֊@\+vz݆̈,GIvt/׿ .C@NJ2 Țt@ E+TU1( 4\ukl_c4+^P\>Lq' AnRk9 Sy;\%6 ֯0dbF :/J`̒T#<$p۽{*'>x2mp"M(u`xhW39=l +G\{ k[x~"ݖB!\ ɍNJQC>l;v&->RL2NPgNDՔh@yg|{5w^vq*ǚuHi=Dxh9E'Ѫd&$dgZw[:_nmRL@mX_@>G Yp1 ~ [?Y5 liZ)$ff`bZdǮ-)re^ؕ|fGN!}DȸXB- ܾ)JGW TXm5ZqCEiy UfHh>}p"gu,㬆A챵>CgdW=Їp0P}r</"@HYׂ==W&+ .)LJ/e5ȓ,,,2JyKL"<-ӑwMʰ,=ɳ:"Exǰ=Ax0W5 Ԇ࿁V] jch)uV; h>Gm]pxco4U; dkif6{mrn `hO0(ҵ.M'қZuaS]u5Ylݹ"/Ms{ke=I2{. $P[>/ѯg:rfSXEhշ0O0l\# v5 }pOW\ 1@t_.Sr1lk kPrx)!a:ׄKu)ѵgΖ zC!E9LchVT:KJekRs ^sdtp*rFXrRь,5>F7Q7gINZ$sFOt0zРn=Zw~ [p<n໗Sk{"[LnJIj'ԪJ1XBY`2Ac{\m,:9zNўBD(i=ɝӖuDVI!ߤ٭pngevRn]ɪƲ2(|镛_E14(پ/ge_Fc&^oW)6ƣ3` FAT~^0Ze+Vc+44! T)* eE̯tH) n'?")LlWG{у!! ' m)+56nuT>ZCD3η75dN8*ƒ/!P.+Xw-WPև^2 `:b ⅂t0$hD9.L30~ =^aiBn2ѪTƗR!B)68:DxWl߮`0"DZTAP8tudBZ6_<J *C/bHt`{Cl/,̅KggG{(CG mB5aa3T?IF? K>zս3Ѣ.%d5~1E~ YyL:!팙_1u@7\@rrLF>Ut\,|Em|lh{*!_/imDžqn3 u6uގBdʞPXBVmsIt]6EDmv\ FDaCG7KL$i?+yv,4 vP&UFW `n0E-C/,VFx/KR#ZJDŽӳNr>wQ$W<@2A @J(`ɛz#:iy[M1SzgY\i#}@|Z['XXg"'y]lso SI\f*7cVV.Fx쮾fCҵc`KI"Rj9F;x ߊo3֏7]KaȺI(d^,Vf,M8`nX=+>ZY}iI.Ty-/߰ox޲y-l,+ngߏ%Mw3G + #ͬX(Kjz<_~!v7JޛRLΒT.p=,JR̐f{8 K7%Y?*/Ǝ_ՋL>+)jB-'8XW73G]~߃`eG`?P.@;M0X:- BpV׀ !0i_ 75{'9!Y;Qo}pA)H)d'qVs<(%|k{,{h7X]{ P2e@Ž;GN#J Uiw;s'&2P+ J Ϋ!8-o&bseQUMr 5Lې>@0Op-!r֤T3\N9/uC8Efo?q 5 {%8Coʸ 9_p"lA>A&AlD7_9gNx._u8Ii!r4o.m[g,lXcǼP1[ﳺ%Q2un,<#NJ-7veI"R:(.ǛiݲA6Gbw'VUg@fE |99ABNVd>b+ re ki~`Z቙,›RûlCW}`lz\V}v"<8wJhVpuYAL|Bmba'_Ę[ ܶ.-Sv, Eɉd}CE|b˪ r>PP\Fofw]L͟_@+ tF~fW{gsZdusGg1uO lZ}q@É̼)ZQPd @( I OxR^ np*A@ Eܿ,tp׉06d%2Օ !D2QU{MoAMoӸG* u2BGr&}` 3ɾO &Nkz^y@m!ٱ7B\s2n* mn&&% 7 nPs?J!]aqVꆶ0ʼ\l |5 "+%+;ɮ)N*&j/m&O3֨{Я}7B7RF'L!Jpukض/Ӕ+T,>n-ɢ"M˾s"0Q9]0yLDUaco[E:"apK. woKTN!R5ee/J/qZwdT6b4M [JJ洧$[.3Xq F?' 5*Q֗jiJ%xkCwpZN"}'  bʺ x7=q0s^/e8z+L;Y ȍt~~zϋsoj = uddN=y"1869d5y,Fæy360jW;"y' ҏw[JBG-D$5|qdS9Hgܼ04%°\OFoLzN) 9g ɼ}4[N ?-o{wD~Cgf/<]6 u;o@^/ Fo*Hm\hîd#/h:!fVAXz'`'Lx.?;^S+l4YFRنsZ]'uDI O եo\,f~c":*|PΉ/+ChiDyM˱d_MkBjL^[#tpĀ~Q@s{䜮^썂zɰVHYryǞOF*d#3dbےA ogT>k-'m^3{Eigv᛺-)E\%a=lQB/+'ǜ:K Ȟo{,3Vf͏^#\iZVBs’ø51Y@\FC<Ɍj8X m3x5nZ!d{ҊBy_H#T`OiڢVf1Έtɒ]Nh](c>:7x].Sj>vqXhZ/4E#R$-ݟm? i): }^שa'8ʝ Z=EHC{8V9ts?Xc?R\ c5Uj{<&3sq}6)+A;~p|½dֲ(_Q:0Uh?/ RqFwXK$W:]{wDAQ85)zuZ#Uw(7$^uC7:Utͽ4zE,?y7*B`>TH_=jg]N6AF0 WI)}@!W)<s(ULEv!H-]T$pIŢ {Tޞ;CΘf\o1]Y\kB'+X;"^d>`h.sLA=˛EB":\7~ŮvlZ `hC(ߪCɇgs6Tڊ~3SC\3!˞8' -hʬq7N2c(SAb0nBatLǪh) T{0S\ (p̏n(z蕒<^5覐RzqS)_tCG it-(]6\{()149+m" (@=YOB}^D*| +Pʓ??VJ~bt'+k!pB5We x/F*U*uS5(t3zSr/ &IQAW OfwͮEҹh$Ȧ 3IyX6{8fDCm"&ABW@2;GZT|Pl29k#*S rF7MBH E~aR) a׊-P(H0LT%C(=Jʻ-Nnuv3}yjo< t5 %ѣ̬ySj_Cfz9d2gRY7mNРvn>r"$42Uo&Գ@x3<эMgx|hq@z0]>5HoI m QMxhrA6Oџ֌ r(wBM:Nok,@jsho+gv '{\PX~vH(N͍gbt7Vk&)d  m!1:"G3_ uW4F f1%{eU:o<<3mO \}.da&N_C+\1_^-ǑS@ m +y}d:cՍ]ueJGNREֹBK Wϧ :Ih<TZl,ZSk oI#輻ƂxRe Hp}!>6n!jpےu`/< hd!5\_ +'HyA 7\L=уZ΂jLB M"Gg5j!jV ӓq 'Ie3=ư8vðRn}+5ʢyD@#r_bL 51ŀC y( -g4ט~lXK++`' L_=N::[FGU"E#m<56J@X'Qe %ۏPF c ~&$f+ Q ql3ȶprgʼꣲ ?IO;(42|]1DL8'zuDylڎ4~T(V#D'`+txǨ 43Mi9S^#gbj5l 㧸< ղ͠bb^| ԜLMU.s%c1̣F쵳Z uVt wdh()g l]-ܺCz>M(-oQzf c3_*s%q'a8b_k<0 ok Q{}ħs st ҐD}F[JƏ;"0\ b #ڶNwS9S.i¬3隒NCS]1q] z$l$ς2ՙ TOƫVwxI9&sE!y֮?UɲOUgWwXoY%z -{oM4cu*w91[RdROoB @ ӦƙL_<bغ u_ 63G3;wzwGTL@K۾Ra*ON]\e趃Վ:჋]:"6)2W.Ѓq|-ii1P(e?@Mh)YE%#n y?%3e2-qqg áa\=67mٱ1%V~ۮ:EE޶KOpSny vHYƪPd :rW$EX )3q^y i^:gBEOIbIW{) (Ԃ|R$)r!E~*Ku(.6c.KQ`tqFIk"0:䜀l-)O-qƇH8,=~`Mk뿦aD :Y b+c:(x"g6B |& uLpO! wX h銋DoWe"yL}1{V}TiTFkUҶEK$maȣ#5m`$nu SjZ=((s'SQŸ<ά{㡠"DH r:mABA 5ֺeЏH_ Cm;H:E3 [3[ÁQeiмWd /3cjicJB BpU&Φ̟^Ci3~m p$YϢI{YK ŸRK[1Q(|_rgpcv-jcۻZҧR T.k®>E;^jX;KG556dzFON'@Z$  Po2MTolYS}{AwQ(fT^~zgL.&I)Q3Hngc7َr'CML@PL'\C":=圮 =C0lH"_3X >ٸ_ty |Q@/wH3@뀘]Y9ŅGJ4C@`Co {<&lfwdZa8'&Tl0Gcep$uX!O 3־8hn?j\01'`=/"&Bԩ*َH8̿& W<o^ފ-CļxGp5v@ʽ.=ݭ[|9l΢КQ dA%0zB^Nxpr9lޕX} ۽t˘D$+`+)hf< θ^D7NmR@ eeffFHd_#W01TK;[ i+^9O>N%G. Z4Z gh;fɈ RS4@_Pce&(V$Y[JPzE_5gAgliuzza\s" =2h2nQxFZWmb/ivXO>I\q䒭ߴNa sq]$-Uܥy=ET{$ Uz-[g+3B>$xv+!_l.qm>S֊#j.FF^CBbW3&7zZ5!_EX)`seߖk÷/)n?AlL=@-KH1Z5 ԴZ)JwEfD}d!QLS5CuuO_ r0ӰC.8g?5p};03E!ӫP[zh:! p߇ֶΡ}T` H<7 t74'#,\4K nԫI+MOwUkR}j\X$y !q!1`Jr%R0fT$hM̦JQe!1ɡ7eM ,#*@~|yjj@;J7˶ 9e*9 x[n<5>"'-XꏂΪټ"t &5 ":.+| E. l7zg;X-UDzK+ex;g|Mp?gi0Oa{H-'-eq%MHHr톫  cw(F{ot{DmY]!yRjcY~N6OcpHht?p81eq O2~i&̱f~d?2[Gd` lԷj!H= *KlF47Agj)Z|i6QjEṤ+±,ZQ4O%jNkkNQ)#@cCsɎn(0 ĉi7tTGx')Ve'e%ABzjLD5Uz J>E*:w뗵7vB)b5w 0Zi8jT_ddQ^r4eDe9vD8(U?:^ɧr{ߔA\R}HimݜƤ>M;8dZd4С= JFNwsn摿H lEt A͉֮g$/ rk%@RX&ӗ3ĘynyMka@>.Y.$ylU:UUeߎ qfKmpFsk(zp` m&w%n̅6`IP5o)UG3}QmVޓe2 v&F qt3mT+ y[δgQ1Dj0':qghw\}moV]HDz*Zowv>}TmRcp6 &}N|*#Q\;e |Cu˿ ju|%Tq-Tk\`̀gq*~-,*A$^d4Z=8¡a^@>)6Z23C"M1$Q #d4πuJPcrNzOȔ^U {u%lِV<s7UU ۷_ TX$ lBzPD:9qDOhGX`х1ɽp5qH[J6iq"TS|}0P1ʝ*ΪJ7I*Hd{ e}4ƺU,mҽurs2?_o!SRy]0լm9L摆Uckqz'ۛhEYBm J&Hǜ˘ԱPHT2?.no%5x594I~y S{~ؒ2V)wݩ8{s$O'!._ VW`!_ŵkװ#I6~;"c*ਖ਼Tn'lծT}G=)¢JT-_\% :[kEQ#t\ZH%?¹0d`+ Ϯy>FZA~äe %˺Up/$@|^ ${*]rκ꙱z"5`tFP)b@@faAtµ, :/Ąq5,׆e/ǫRrrƩ7 2I n5}ْ8ym,qSO0]1i@J}B#c/ʨY`rA2 W%\ks$'.. [_c|Pqfva Oqi3?n|tuN t oc|`%Y!^mYH6mhի=NE~ S( á1,#E]s2j+RG0jZR - Ș߀pǴi(J051 ů*<Lgzpľ{(^*nK2Pa2kYWSE>4SϚ(fa~ Ż87Ԣ_fs~vA'EZo]!%q ǰ J̥;AAw9Q BJ/ڸǜdέэ%hkFlqQhpd̐.Q6eDl&KU` =ڎˬe*btrB9큊&4·ւz:wc`E]r&@hQŭx5ywJM;wٺq# "/[Znv=AWƂz _U pG>!XUovaҭ)ꭽ/!e~ `7+"#NR@J6,ӏrMUPt<4fq@ 5Y>d ؑ&_6e?*b ͘_yOV>r3Km{Ж_SSd@O~R7bF# p70|?sq|џy./7H| < pi6M`¹9ƚn)L՘68W a"CEucJ%+_ޢk3zx0jrW%~fPh}@:|{.kҖaaͪsػ`FsҕmIf8vmA|lɦ?sZuwf:|ؕ-/ ^}&h5r+o@A O$[P=uzxD=w }}5eQN0p;R q<&x2{h(EXuxtkp 7% "s9 F\1~kj23RCҽΥۭ\XO3-ƧPN&xzE)2.`<6v[%P EO|@ΈQ% ȠREjNl $bs 67:|Sb7,^͇)P eTxC;PYc b,6mՖJgOS۟jj2awkuF2gtؤG ݕ<.Q LU#>@RҞ&*>G[ˏ1lp<EԬ!zֵ%Xf ;S\]ttݛiP&D&/,9vօx/ŏn_ 㢮Kf&}3tyل";½x'?{NE_]xcw~M~%t+N9pB4Ȓ#ٖΊ"C BN8rJ' \1'i6h'9Fv?塽gfPɅPAsĖ=AD~ g$ӭ7_*ّm8k>a` zVE f%; JN_*cE ۙ3_ւB_u JHkuxIog1؛WdH'rc yS'ws2@,{6sMҖ,x ԨsB>1 .PB:[ukԥo -nBify]F:PlC U8Nת]`kr-2&`-]TxoZ+avRY(…Ն\(D -qI#x3SẺ[yq84x?:6 VuP=t˱ ] }=~DkIsLQ6 ?V1BFCu9΃E5ꊍU](ޮL{+1ivW o蛹\ | lwRu\ l+.@RN}iۛۜVXF\vE+zf%|{4Y꣈j ,uDQ.A}E*uzD}'CoQO\7yAW"gL,ڿ(}#' /Lr)+rD]<4Ș&Pa j{$Sb]r/@DTR+ @pG}-:9O5 ?IAZVCaXp-͚r&: Q2SM'W76Z#wQZ˽a" Q@Kw7)< $/ +eQv]&ͰVq_ww˭ 84 Y 75,T$!_vV+K:饹5˝Zp}L XvmHcu"hA>(]͡pMraQt mE~HKt9@*eb6s^:6(N> "*gXSmku]CLQ[PDk噈j3Kd w?G \\ٯl  q< MC^KΟGJHt2Ѫ# <|m0ul"#A=dZގ%՚+jHm=߮Vp\8<0c79r*1Y*BXkX4Eq! Obrm^l^.Y44>=?/O@ eW[@:|MaN(=$!G[3jQ,FtN~úJW 8yi锚['@'Tκ,7/(,6i-U-sc%_AGRw '<鞖IS+d gXiP Y Al!ynTPި$KB`q>DŽB7˪v;hlPU"dԷ.W*m/uk{Y9`@e1%.ɕdD\Z醍VFdxZ@Fcgr}[N[1u }1Qt2Te.E=K8UP=unQHrC(U to1v1(e],hDYKΐ@ Pf5S,N/p%"- OiRW/WXʻ=iR &]v>l>ՔhT & O^ {TQuYo Si5h@w4U3E 1dQīז8J[}˸JSvWSz+suL5[M_q>+{ҋ[g%7>?㨋9> ;)KUu4rʤ+\nɉɩiǨ?ÆX*Ey>pyȑ} .S(+l]3]Z4 P^D J7f.Qd+J;zb.h⫲%gLBw*Xs`>q@~kKyvH/UuFɐG'ElQ\URn%ZMac!gq0Kgacw|dk @Q6@SB&7?8jx;f [9~Rdd%,uUS "5 %Esx\x\?DBk艭GtVtiDJ½{\bi1M`HIW;c~YȐ?l&SJըLqvwUce_*wUY3 `bĥgESLאOIh;8q^%2;C7;?}?fgY~*Qw8·c ?5f]n`k*=D,ɝm)Ż@`1Mr~NZ`ؕt0 ܭk$|̴ܷͅ VmTaE ~(>Z[`$DM?CBP]mC4+CQXxדPQ;L< &TO:ȟ\ba,{gP2`Ky|C&w72ܳGU0-sa)pAjW,N?ƅj8vU11ٷ_Ct׍3GMnc4%%ۦ&uhwl2;QM`1Y`zc-u̐?< 2a*VH6!4D@ 9ˈ}.Q6-K#5RsFڀEzJ2,.{/C^,@?CC$&-a%cnlk 3 nΫNbB)Q0jd>]n|ZZ!ĭg?l/Κ(9yb31MJPD-'/VpO l,>jIͱ؂*T81̇mQI4IGw(o7͊!{)GqoMyQj4#:)T>7_L`]%=~Xzk}$ |Ȟ YfM]-] Qó/[N)΀6iZ%cB}"W> 9|ASj`ѳw`b˖`?"=_1OرQ5x[z$c*6<8Ė̝s仆\Xi6FjQL&CANrC  Nm%ֱ,-s%;*`|T:1_s$y Om#gTⰁ N<§RS@a&!ZTWI2}m_zYY5#uJi~٘} 8Gz}kZODL\dl4noM0#$bn^_uPLS38}PMnR ;n!X]wq;gVL^fJبP:i NGr nzBZ27 at% ;t~87J\ l tpb3SP[P C@fP侁[:ٮnFxrS{ѐnr]`;Dd6EC*UZr4u-%ć-d*o0Kkp ޴ }Cq8Ţx1s'M[ 0M˂xz5;%=TW!xRt(|oz_O Fwp"T7ېg6(i[9}HlC_XWIhP V1Zn`SL]E Ɉ5b!NѪ 4Dm^&Mo +Z KO\,#J]MxZQ܏&ǕLܵowPe.QѧCq}/a8HBpUf?(A㱩[YN)55lm=ßr(qJszD!2k \@)G<(hJOs]xҀ# \wKDݼ%X嘖QAݣ,撙.]WnXm[IvzVBqQH3c5prspt PzIqCMMA$I= bfE1YL}T3Ba#7.;`Y$@ioݣ=:--N!ޑP [fie.9.GЄ/^@fsI8H ϙ+cJ̥,>8]fdȨN !ri/3O {NrQ̋r/;,`i& .sұŦDuWp kD/ע]O!LHj9ELk,{*;N:](6 +YE*ͼz=zZ,7r?1faHK -`Dltt~W7pB^1U:6H/ qxpOLI @\3E[ґ o!QN`f=d#9mbtFѳz#Uukֈ34Lb-8{v* x9.5Pgzj;9q&q 4aJdY,O"})XJx: aP9rTF-ܱ՝UAre@kczafY_ZaL͒KO0Yρ5vI~T4l]y#'0րI"#2#818e^֎SeHwq8d\yr{+s9z|A^ok`V/VƊ>di /d0"T4;ƦKK &A26 B@cA\Yp k~9tDyQּCpPnkN!P x2p|*:g璥˸/=ȰnoC[%<',-64f"i*X"uN|/_?"xF2UB(EPҘ{<+3xF ф#%5y8fk'㤘}C/ 9.=#0)ኦޥL2S'w7, MȪ&Bk;/<)EVLPE,w1oI6S2x(L>_TfPn]3TvHAH,RU DִSr唤x5Rf(̍iіLv\ ˤFMvP'e98el8)XE 6ࣸ>UX_ݡ B%yp4J;\]>xE8/.O:8>VdPyS\IĭqugG7^¦{dPazCܰZD\% e`KT>#d'%? ,yGvuDZ W|U0'}6ydgA›^31o$0+40r-1D\ǰZ@F&@ℜ)Zjrhqg7s;rgN%i\B5!%T3a'w(U[`NJ.2[ )`>w?AڤD DO!8N4"YI^|ToN@ٹ"6?\sJfLcH)S W&7I4D2dֿGByt,n< 1=>>3v;տ%GtYiUT׋}zSN x~Upa)*L< sF$SZ72Ƙ| ".}.j>} # "Vc4DdJFFC*w)+I7{.[df0+ZQi.x̯|W'2b'hwo/LJt^[(]X\nl*Pi!j24c:ةfK[~{i ϔKy鮤8n-l/btq+0Xf &_mI˯_p*T)fܠ* ]YWş,t]Z!H^W_sf{7TUt;ut1Ք`9ByZ8h}l/Ѵa';),Cr7㻜Dv03nb!ctJ-Y[Vc䅧_O倬ih06P_lX827Yq0tr UmdÐ+QO1 Fș΍2g'QS {B)x~:A_6a^hh=9qnF)zXi ?H+ Wp ˠٺx Pa{69x*0-߷4L]UJOCY^&I:׈f i8( x \"jcd櫄mJ۱p3QđI(p0eGYƒ-tPQAj"Sb"S% 9g]=qT`xXzs<)1ی5R)\U>Vs3R)7^c_+rT ;h'<)&-<2@ 7zEuѦ.2_38935@#zFaٯlB7fZvsuk4M  N aO%CE8JbOCu'llB&W%Z/i˙8 $W'?7q7N2D?Kw* {A=QpzƖLH^Wbp /j-&6NffX vN9+qSc!c}ޅeGf4pEM1k0Ә`5`q0͵NV8ݖJpuB{dQ-Wqް6Z'ʹheII\KX;ۙ5*TF2SyvaF\\Zo,L eB1=A<6S4(};(J0zVx7\ 7 1ޤ~b#FveQ Ao!r1bD9sXkC8q{1Sjj| u>+ZIyH"R7*Nf Z~F3.Z]YvL[\#!̯"${B V?̯8b|w\#H(_&~ [AT uYgccɀ4FGİ4*T9 cqGСr*wɈ/bFÇʧƪ4jI'O# _t8, VGNV_ލsEl [LJo^N Fy_eքH-1UCfV:4o‘;^[nȩzw$6%i6ߵ;lt\v (3?KZVmjw'B~G n0_KD#1UCMpNc{8)-+aAW#u9AV+F ^v+5( kz[j(PF[l)Rs a䥃tK=A |N"ae9#S{MYi=3yDY;xzyH{7eO"Hu `wPDgIr'p8 ^TqMؽPE"|[KMvJz9ݵC.rwd5 -]Sd Պ9(%ظUo$ϡƶ;LiwmɹFwKjp2~N\iQ$ƭ:XMˮlkIKt"ͤB^tjwr1iH^8q{0^uᩛGǪD\EUR Ӽmp;3T R7˶#UtǩQs0[Xg'g$I^9{}sў Eց|yPLjk{Y_;||]4:ׄ]b}:"e̚a9yk`F5X 8Yv}F6zMIJZ2G2,~tt;nm6N<3/6+쏂]+!U.XW㬌lV*)L~!$HoK[uu1Ff} R泉 R>eV'ؗo?8K006*O*DE@6;ZtU&AkWJuy\l7ŴjTY@=z=Fd[8}7$]+f03>ҡy\o17xY~ "e'1i~,S^v|dzEUÅ-a/\XmB iƛ Kurna]R Ojq%ph;.5 .՗?& kV2 q)4<]nvS}V1^`5SF?d*</dȐ*jW7>kcIw$qN<1cױ: eiK ƷRAw!!MmvuVCMuɋCxG1IٕѦhȀ'/i^a}].mJ1K-xpɫ9wmy$Cc8,XξIO~@G;"یɦe6>қ*'¤9,tNЈ4Cr1$kd5G2?Tn`VxzJؖ&6Wk͘}.<ة ֏kZӆ^SH &qљu=VP6$O~hqıBh [~6 7򏯈C ԰p;ع26{x":mHY=>Xn+ z3-g#w)沪X+EI7(70lP}Q_Z8%l䄆w]7&;,n|c$2՞z3$ҢaYE >-T#F&guVj+i:Eq4f :c'OV9B,ٷv e=ǭS =a+0Qsm~8w8Łpbq&J̟vZ$w-+g0y%[E#H:e9DY ,|A,/#_|t@Ezp^g1qѦN=[Dͬ@ `Fk'o1A! :!xG"ggydbV7A{T6A%꫍ $Ѩ]!l>\a\m)DÌzġR!.' PYh=R1`U'[ѡI<,7ft̟Ud"s^o#KǏ,MNZ`ʙ'ǻl}`>NKLlWA`%T(58]o`'ękz|1qoYdBcH`9=ӓy"RjoӦCW#leßdO F`|b%1fڹׁe[ lʜ+#<ʤ1sZu7-~ose=QRڈc X3|3u -.5uֵ{Lh[sD6zQ2;?vaCM9\F"(W'&z&Wfq WvfdE4>1}݆~:iݥ%}N~ dn dW;d|bX&%ipNӖ ᅵR5ʅ7  !v;j%Mg}u\:;Ѷ֕WC#q`"I(v? }ʴ* ڦ5XB$ /4ͯzK?ɜH֟+>QO kLv_G?s($RyO&^vfbXwBh@mP'{:= ~ ]4~[0nuM9>3oXUA,iьU`eg:X/+Kz̲5 ύ{^B0"o =K~x@ߒ44 /*`)h2zdiEf'}2gApi4fe{l6:bBI?^,3ݛCqzO~"![+RID$ _{x6dق ,}S*P}, w(TK +lgJHlKȉX@{^k|`fL8RmX.nCǔ 66X>+Om蹙&H*}Ý_DrPk ~N֤[6jn5\e %"Ғ[t^iy)6@Ҵn/V8cJjDZ+ Uh ٲ;1vx畱aF=#2p|_|N-x6emw0%=~u9zI~K^Jud•v8 D2{`4͘ 'QoJGi^h/㖙Rl#툽9t_ǁNcܫaeB ?inZr PW9u\0#U+ҵzN̾ϠUsGAݎUp߅rM.E[]Ǘ?f$$3ń @ VS7^倜`L%O ˪OT^약 pTBGLc)HQML"Gg a3cG;fb3rO[/ll)!ध3ϯP[ص=-}|2uc@^MZNB_L̘[#+zW4o#>_ Mز!ߦ&O 9t2yid+DRO8{ݝ-Krm0jջXZsè!A޵%!P$D>v x_n`|Q2B;KB3Jsf-]@ahr` LrIP`YPk\Ns0!ٰ/FjY5(ҫ*$Z4Dk&ל<b &V%0IHH瀔?rYpGx-6p =0 Z8Zv$⤼oh:$XtOuRv0W-ICe: OZ2ei׌$mmptB B6GT 4OPIz>\~U0Jl Z' BMbTu!'`i^`-gAޘV=D7ʉnH 5B.bv|(Tx/eʖ=ς@]zѤnjT4dee}lN:EAT驕hJO}Bw`gf +Q*IBB8x< )_媂i4nCcʟo+sDU G{O2EcWHrX@OEdd52Q 9Iw)`WDfVcgekYHEdABlbMw;9!oYV]:'/%Ƴm,vˆ𙚨uL=#_F<ճ_pYsatyE;G|;YZjEރģc',SFWI BV4,E{9{wpbLjG w*>'mKsby}q1+a;zp V:ZRA?+7]=`{9\NB U6Loh `x>,->p@piw}]aϬJsͮR~Y\JgS3;^ne=fhy/Ў(\5 @Z2{1@,?4@c@B4e\y/BX4hGww >U /8`^v[dV X7@m3nOTHזƐ~b3Bu:T˶Gl9\G=Y7B(3}yXϕvo.vns6O悔'k@֫EN_Ww` L"ⶡtD h3!Ք&kxq0 l@toI7͚"=c*q 8}0}㽽boM Xe !_A3JTi~7N'{*HN@lB޿@zֵ6@A}>,KY,=$PK*Rı30!@ |7;TݿUD]r]WoPO! Ђ>w#J~zvPʡt- =ՊtGTOߢBo,b8 ,wS三\yH"Ra sd7%R:]i=(niPF^&`ܵ6 D0&eJ)a)zsZ8km[|jz*Ѵ)yoƫb%8yIbmgQTm`jڹ)z{OiB*#l%߾1#%Qm+L_|bU~LHfFGz]=xԂ֗gg6wLz][i_3Rr"lKVAd*26o?Alux]/&j 4}q5|\plhZ^h<21 ӆ%Y7g6jN =utԙ%wn!W'U/D|/7=Ċ3wN, 2I]充(WP2#dh1O?_l׻pQn|dX5! LD-kQ“P2T OY.3ʢ<Ý g4ҫ;;]a_TBwE~a?}C^Qm~JʤS1T}>~fUcCwER+@$So }G[lYYSU45:P{`6Tk]o2 tb#V`l ^ mO3?5),Hr2GbtZm]._e?秢p"{ƭ/$ڱ% GڗS{+J9J1qH$Cɯܴ}|IhHFe2Vة~xx.R=wK9(c+(1u]N-W`:f6A_9SuK@7%1aJdf~BH(TK0VY~(7s0 IlD{$~~Dӛ,>ݼdcv"o+,~ ZsyKA+"щ;2Ӆ[aeBP+qQ(<=WL݄wi|%6VB7C5R+F#E PjjmB,t^tV6Q"ԒpAޢhOirUۼڄo@Mۆk Q\;|(Z[5rӈ@]VBtUiN#) LWmXs^7೏R.\^?x@1 ZE*Esٜ񷁡OȄx0lw6tֈc(wͽaq aaFgtRv?`6i iBf \׮6?o+/<*jyZ̞Z :0C |r 3NXzJdW:{Å%M uC(;/q͘E}44`UeC/;9c0kuЅ[7?4%|aRf%uf&͑S {UO'TsXqb|NJ+-XDž\k+-(kJ'T 9[7I{IHu ٫ tB Sl: n8WCY%ո'y?Gf=Yl  e6yU~ tȰ[R!^D˝F`aqz=gqO9AH&?k儨tAU!lv'{o*W1\!m%y H`Wȋ~lW|LE~Cff%D\o[Sz?DΉ< D9U{g> pDn uqrt.;K#-v+fɣ "rRf68 eKÅT lĐ i{^)Gs/+V_|K+$IҰSQWȷPm]̔[4QBloZ&Ft*NHG)FQE"Hi!ыܔ_5w$՘UvAؖ1PR&2 fZpOpStj|۶1Tg !ɆCJko'QQ.j!ڠI[G0fpɂ(#x x!A&i367t_{tә:*\Ei%Sl iPB~8pI?iEPwjv {~x:wbzO@f7FY1lHs$  8 Li'c֊^J uç7ιVDÙ3l<.` sV]`,jڬQ1 dݶL{I!c%!%F8 6אw?{oq9qge/8ETo|WUE%.i_4b=4:>^y9OoS=oֆ9^_ᐋ&)RG^oX6/+ - sڛkCG@1j਎\Z,|N!UHq_{ m4T7 NsLY*i~@E)=S䅁Gϱɥ{FEI[bij3dGcC K-L P'X;75S^/3XTݼg&wb 3UYlD\Jڢ 8IUIfјQDQ7/׫ :F&dMZ*p -%e)9vܴ(Lv40n0Ke 2 )9q7n80}SfF[6; g9`ï;cgܥp+ 4s[5 H']نv0 ǨI`tAr%dY=Im;'˵)e>!^-z\,skۙ]`ϓH֭97I͟k~YԆ"2,v"KPY(j/آ^f7 N=qt; ')\|b1Y%Pu$ml+A-`Or ]wYȟ*-? 5LWڬngM+ bjb6JjLv)#;`Bfy-V iB\On^s};vش/0sy@h_v:[< Y 3> olO9_Ljv8#(swnXūI~nJ+T>x{faDFP][hOƖW(x@{V{d@8 LQ~`'|ZB| c)]؉@+Jy+K|2k{UU+UUZpm6^ꖥm6"EKX qnV+.aؓN:F KΌ?_c$*e aI WtcمY|:jװlyq]LFn"{ c\Y_%j,RHdo_*{w>~X(jN-،Fz|3l*Vm03U#PV<$7o;Q-&3ɎQIz/'9 F#cV#7Y@i`x fU00bb'h鮭9Aj ݵ֗at;Z/ATOێR*FI=_\)UϼJSr'|gu^sڑ$9bKAgpᖕh6zӮ#f6K!udT$#[N{Ji"Mষ#< Z1&0h\o|3J=i`ڞ#M0DB5ju3}Zn~ (\ 4 {+/")LgZ6PaĄYDQޛs>9_4pA Gה!cBcyS8=ˬĠmh[ɵSWw.߲qk@l eVc I>D&JNR⥸1T9hz!*qKWJ˦j_XD_H٩W?4,NE!k,nwBl*:v#b)fu:&F7~/P2ۗ-WM`0w9oʥ7Jwę_WیϞ(WZ#=Z#O6ć%lP_2)<b%aum0GC"Yjf ƒ4T%&E]D,?v!2A8uamZ%+^3Xl[o"R3r 3`k>yf΀*2=OٸbءFƆ+k^8# k}80 "ZFP!,]~RyuXp\ K79:|Vgc>߰c9~w9M8]s_ iiUG[C7,Fry:nCOdԅ 3LNEF6b pUsǁT82 Oe.E(h$#+@GVk@B"8 Վo1 $_MSyC5 MK&wI\!=}&"KP&E*F4ZuGV%Bp "GTXa?:b'BgᑪJ8?.sɔ3=;^CrZ63p 9n ,\+& i5iK6@$UMX+KT'+^rKDZ],/,Q ͝X&Jf`[.wF6;Edxx[TPUxO 2{ڼQ+!(4^՝bboUK'l"0d3AP+FxOX)^{ߙ,n2SȚuZ1I݁70;IrC&:9,oIׇ?')_OS!P koħi&KXTVQ3 *ʛW='zhp$AQ^cp'S6(Xxok$8@e&/P?oP]z=vj*P="ut2).3,M (2aa#Ε)SuCey\h?t ùs6&PO]f/d57;cvZ6$429jN dfk'0&~4K[.V+شN0\ruaY Rd[O[H!aXu 4?wN Hp3|)hv!=nKH}kp. k\C_$t4GY׬%=ē[u$1þb'C$9Jfp!^H,}ZR* XѸR|9ئ`sïRha\Ing@pgMIzbc-)ZBDnd$DV 0F"PaDa [wDS.i`PGޗ*5#ұ gk 0EMu:tjЙ7-Yc%{yIa`)X5=.iƶ C429հ=7##Ӈg[$J+ybC͵Z(VFkJPI0?@B֒XNjIJ1 %A0֓"b#Vڅ22/+-Jx,Buə oj 4mgb kA&>Ob_tʭ֤q5N\/K7zE#֦QM0סL].vq}0A(j,7U 9*~ X)IQ #I fWux"i%vXaϊKH-yOT:}.Y@_Q>>zpejrr ^ &aTyʒ[PCCBW/,1  eZ>yڨuy2_Σń^R|tǯ_/ʆW<'A\AoK nf jȖvbcp6q)k{{ rnIĕR;SDG5iӰWrMݳCNu>)V]WC:˞CNVѓKcsAe%.I1[WCVKf| qVkun eÃ酤@l9oFbp&i 16eT$wEH}8VbySBEVA8hKY`ѡ0gD%:N>րؾHõ9Ӟ4G8~.2 ~@Rpo|E b ~l2MUv,t9 #֔T_d TڢR"iPHaL+8}`,a5ʯ:ٜDH5eDijN0 aW0 ^y.h.5d#?F=QW d*Jj哗5_}LS˸ث}K+дf.H#Jqu=EѮK{a kUa^TJ M2'[1ED,fPWIXfI\2]7 9ўPau/ L(Q~_܀:\߽0#[H15+: x9J fV%uZd5+6H1v`*d_M,pmZ9>` |:͍'SW$ Yk2[8j3}ac_eS/B@jn][eh+:}L~ Uk_lX!C܋oP`+2 #0ͫV)hC/[+E5_3 |C,bDY"H8w2]Bo_/,})c݇[H=*/1?Z8v BW="1lV Uy:N"vIL=L_MP?uē K64>M:aH'KìAn Rى Fh^I⺍:'19,j(}'-$%m>5X^w~دF^6Yv9qHwHZJvosO᧦lkO fԸLOӢk;6a|e}i48KH> AF6QlȜ\|aG;F MQ>J.rc^5 ,`L=gE7CLvScdRSg1[Cگ3ZatHVXjWpI^N'; oxWTN뽊`9(1`f3Mn.l*/r܀b eb{3{-_ UFo7˜ xvcBu]]!~(BuDɂde uh2 lc %w~(.ii|ȩ{ ]B$?&'rA.UtfgUNAGfֈa+ W[ PW0sMUr9 gx*hDivՑ? ,2ݽ ƇH\aDzX;?k>a#ڬzru8كO17#ѣ}&Ff2vZd.UP₮02owx`8>nM?8zR O,3Nfś܎ wNN'V`H}r40o.ijIou(5BNDS0v?5d&;LWrjr <ӣ"oy4=?сGKqMp_Jl\_%Ɛ#Z Z&c,@']!yaTiقy3j[f4\`V ]n\lr^xz? {Kh{hMm qn\ZEXD٤j?~˳U¬N2?礖BcsJ,KO }q:y`;ۚo ͔sA?XUP🽌?6M/jm(a8M"ί4KpdZ1ya1 O#[p ) eӉc=ίҲYvnfkmȇ8~ʨGqƊ>Ʌz3[u戔͌j}Tnp_zk5 kK+:},{GW \n=d+.=h>Ls JQo'VZˢگw嚶!FF`j;^||.tB^TUGXmPr(m-Cu8pе0ac(ge:pӍA}Zd@sa?9" HOﵚςx]g:4F@i-_0rׂY'Xl䬲F,e4pA5槬~ܒљ/º&?ST>)9ݩpQK$덺ȯD.\y0ro$¼5O*mtp`ީNkG*f<զ"8*E`bAY2ZЏTY~r7_618)fJHZxM2l4'B)t7@#u:9}TtDwzC~(_kݼqWx>z6^ Ne]g]:olz--hjymŹ5nE01Cj(Invb5m}Vq'iJF I1xMڔ<dga=҄9P T;ds|t$a |/{\DkU#ǟx1s-n-X-lci9ywV]9aֲo޷G=sp@](¯6*(FC燤P au7H_[˿կMIo(u0j}yXt73 Wf/5eA/k@նeͥY]l!B5K iBza€PncF/{XF:=GxEI%T`q&h;0hewwгcb`L-=T(_T{ъXǺ:Z݋7dGlxBPJa)s̢0 #+ EV0DFL,`*Gay`iϷXX5j`c3}]8PC~DW0z{TTc nѢp3'kj"Dv`5V]x'*lDt:fL*~%DpBr#o|kCćQ+ҥbܚ!\waM6rɋۅ,O`zBЙ9P?мbQPV7v"R֯>0U:J݌]6C%|`*aoa];'Iۘo*(`iD:#SXShG`'8Dx?Be) zurG95k k+sG%Xu8]U7wz R vc!͐3JzhP=Co_9T׋$at./`DP]Bg)Qb\ALPIjȊ!\9.)<$3> X M)яp3B/|Ǟ;(4eOl_F!+ Ӿ zkJ2Ÿ0.*I>ߜ SpN q:+ec*ƨםB5g_+YoWg/QxknskW ~"Zbmoe%&W =җ%&3°Ag>2 D 5lU!$&#;nIQNJHovL`_ bvBpEKw+5Mr.ɏ̹U _OAοAK3c[c.MeZtj]A}8ߤ<EnFC)ߐUU.˅)m}ZMh 7 >az ) U܇$dܒ&^@Q]̸k{'ڛ|,S0i`F7Apґ ߏXu{GtEN,uoh& $Špc{4?dF5|BkLa|1Cv7dspP?cElHwo|ͽYZc |0yG4 uTnntopʂaSLx~7ۄI(ԉZQ> C`'_iV\"7 Z\|7&~Rt\n$VܠVʑ3e:|YOPOŬB?0op桤*f1DTG̱E+r~dNcb) RLpSa PsPa2U֝J_6ʦB-i4Gh!F-_(QmNJuw5C$o͗TDF"Ep+1k^fsԮ Vf|n$a.FC6O?vjO8uѭ3\i4l[hУIfke65D0P!\\H~=L͎%,k{6~SJD2&L`⤄8(?UF7&YB4Vp V|!xkp?_ZSk󨯯?hI {s=4a!7g5w܁\!H-w63W)M&A tLQ*:\=F.Jȷ?pANW4$[[o4 ^5}Xܤ?݉̋gܺ*wB;-T1T*)c )ئ<ɤؠ7Zоn0?7;ь|?fv4R~G$Ie;5YJL~-BԨ8ScW]n6 kWE ]}3{hG_j)xz [~2]y%l_0 ՇBΟ<ŨAW0){MMQLvX$]% ߵQ&"Px(ƢtX-Ɖ崾M|\ݝ瓚V= ˎڒ`au1<4cՂ]Jbgg*%aU`bԪà@ߔCYγqQ:9DRJ] YV!NC6.J@Rf"1@U% 8Lŕ&_nư,ɏZ5^տlVIMd;cZ0\󙻿N$>7[g]mL)maWaWډܰz! ;=Ne>XGbZu;om4&%FH蠙'\w;}t[Nƭ u>;g\O*iSkp|NoIn["s,( !bI"|>\2X uY%ċžxIBR'-C-MHn 6IFWMvNFG%/:DS:ڻ~SrZv Zoq1+ 8pR&dž'HdiDbgk Fl$CFD<4t߂rT S^qZb'7̪խ?J)~-!HF}\5D7z&=}MYݜ2[ii2U/]Ƅ]򊡨we󦒢 Nep6_d<-1x|8~$ jdHl{30pPIVZ˷^*"Z5z>|cZM4h7uTFzM D Z~} 6'\V/$Uƒ>|S> uf۬}vR4ӹV#m~yhE!:{<[3jha)׺2UXR`q}- *ui>٬B^>s64P q[\DHȒ`WSyVH|݄Yx;2s. fk;_b뵭!lȪẈ hn( KdbP;.A@\|dixH"v 4OSQg~8 Qc Lg:_]U۴c3K)W=ͺ`>u,lԌTj(i>bzAIgïEf^|D_hg2XH 1 b&9дCʵb{1ƵZ[c8@f$ָ@6ݠIߺZB_ZXw3i(,SKćb_R H:$1uSŒQ >H\#k"׉mT,IR {@G}m3Di\mA6k#ވLm<{A+ Q@ʫ=Z!TT@Ĺ>+sFRmaBa'͟CXgn5jiDJ(b=&[|G[478ԡYiCsPQl:E=pOm~v }-+-n/=\c1i\t"4 G8m9"N?OEHDp)t wlV>M=YIb)bi3tSQ@_ kxp),ͿlɘW418p3R.StȻ%vϷ%Wn„~ nVuiP//mq^3Oܹ,}Ax# B-5$ 8C"4%*.gBPlj+Fl ng0pq8OC% l}:Ql蝝EɜV:g.AMHѵnOҞFU/(TJ"o^:Vk҂!)Tye.ΎGiyp","̘fK#!_E/wx"g7Z ke3 ]>h._7ܺ3,ҊW Lm҅_G^޷U@n]ZR@\,>-1؃/hpԕAfl{M٪KM|")֧^tPؾ; Yh D^i:n"ߟL3]Gs`XFࢢtjT@@ޣt+`ij=%P nHx qi!(|+2G^f* m0 @,^48C yBEUKoT7@?ϴ<qoCB$`㇒%#0w?[5N R~1vk+uEyIALҍJ>3|6k#椶o~Y:|H w~J6 }O{u)=g<5Hr1K&JaxH҃BBv\6j}=Ra_VAǽpr]8SVĩK^X[vgv{xɤ*]ٳ,mp&^}N1 4c~Ҍ^Uͮq}6?`/Wv/jdw$L_ (;}QbJSt9MJ(VEAOm \zg&&TʢsA{ fH %TYoAEb3bٞ>Ih4Bܷ 7mHw~tzmރcH3E&%zO0tI6BmB=J}B:4VXݞyL?f][Gk=_c-)3XL"vwhBJP eN!mVNzFV+@+#-1'R{u#a`c\m)DLdELcW[rZ dhQ a,oqVWD1i5ҥA#] QP !.bHYbƇ@'mA˨SؘFBۑRO# ֬g9ϕ/Ug1FnZtB@"I,Dx@R#I$<YB[̈́/ VuA6ᲖPM{dpsҳя (mm|uH& _ÇZ6"{y궏UA$2h9 ^ ~= 2'>nC uG&U>B&J7@Q*] q=joEAi KC}*_)>դu&zK:a7Um̦|m?gSpĩtdȶhE@mW / H8$P^ݠ%#Nu[ij1т&c4Jq@<F.&-32dEZk=P6)A~s.FcQ]׾_UbLJ&@\7)x{ dR릜#*RIeB3^??$1?_ HYS#f^r-jan~p]farqKtn^V-w84HO\ٺM0l6gU%}$L1IW-F9+ LB~en|x n& Pؿf)ň8+: X8)SWx[jOP/Cd6Tx]`kH)zO ] m]p#ZRէΚ Yqؘԣ\ _ ŠE 5zCuMכ&w$QR)#9eYq͙fY<ѧP_Q*1-s޳H8tؤ$rϻͶ9t+2gR6ܹcA gxNGbyr'^ȃzlNaMƟ&Daͽs֍x?syp] ˘!Loٕ \NV>!Z$Ѳ p+1euFwtն {X A%[ՌF&{GUyPLk@ee_*Ø0ع'ÿHtM]j6 !ݪ1~inLIZE}$IĔt9D9# I7 YPT^,RL`lYۜ@6't&~.oى"lhv0Yt6LrvFd 7CL\-Dlu"Rv~X>œ~J`hQŒHX} gZ}D~`Wa@l EzAwq=;ODsa-gv  B>-mva2sL#<(LS:ң R77,[+=#^`hރ*2P.vUzŴ ,h*%I*O?x<8.4g^"JH79j4Nh5Q3\`AH˫>{]TcٟXrP[q> f fI>.Oy{?:!)}׉dء @-"9,M}ϕuY t\j4JPzQDfok%9;ԙY&u= .o&:hx֖gfu=Ql_'L5T?ͻq)XY^^& &zu4;e_2cԧ|` R 'y|j'qwKH4-)~W^t'0%_|b!z_`<*[ CĻdc2(I8FY0iB'Pbk@Dyncj0Pl[hn}<=op> &?i!$Rl4{^P'M+diECVB~SXW2EZg$^D|jγ'*K89ߔo#(RjջmJ 7"OM+r^VN*[:|*fy pF{9LtSEz59DɨZԛ835(a*xYڲn'jQӷItW*)֗q_.GIhSv >/W<2EJG{¢e>[ևA3l7`OY17Wc6\BQL./w fOeԤ2%au*ΟQ2UYwH}ng<۸ x^0] Z=E$tĎ(tq@QO"]w O jT@ypFT,j!'~~+O)3\Ɖ9?gKlu\˗M|V30k2 'bÑdN¬H0@ށc쭡`j;rr;<'~/6渋k~c\B{4SLO&6cip&rB#ٴ?chwpHțH-ոBZƙb\}{t;nK@x0S:,2=_wSlằziKoH'gমf=}5Cit|;y*cCICsA5֫ݣPe [L\#zax2UF>młŬrO+/  'orw"蚚lT6P:#jr.g&0&5,<  [tf_KxQ IÉe)ң_yno dZ]77DX:ܭQC[R@kQqO%ZҨ#^= > 0W`2XU>>,G `T3 4HU[%&FoX %17rܵ X4"~=PJ +IyVvu:+i LMykɞjhT+t.:zaMuY{2XAѧ0fg`qcqM#&9_O d.^\VuӠ`ه(R3*Al; 1 ZÛ=Ȳ^o5XRUJ qMlNy%%?ȭ- n.T4P.N ݿICn*hb2K0a_7*-GG\0jJftah̒P'b% ׶@Rpqcuo> O nFcr{Xӳ“d]rō->L)ps)<Q&d,w/ KL =Cϴ'|n 4]Qf^?6kz^nOo˺ F0=/<$ZG.?ĂE$Y(չ ҏ¢g<.Uu *k/༜{|?IpزʇFz<[+:YJ!6YKү*cKpϑc pC d#7 Z7sK!HIB mH9@_?t9Z^F:gH+J\Q/qMeX,cop4j͊k,"qԭٺESd[k~Uk's ٖ<jyj(H}b[" OR$|4 q:rK#WۢDɬz($(|v>򧢂pLpѤ.EWQ9]`E6W[4Zq K|!4ۍӋ8IeK8pʔdlz.ubF'62Y&BAus:'6Ϲu`HA>;y%zHЫ)ȫ)ns+=d5τŬ52hܯqZ95xFN3:}N̺w e $O~w6FDKL , D$293q/8kZD̂pzQp#]"p1!ڐ CR|n-0K!GFLSy<ˎ<ܪKM΁c>{Nlfd蜝[EؠagV=C!7 B@7Y1gTymǝ& ځKY2 Z7_qxO~u|mv9HZWEEw(QWy+uؒ49?@jj&BqD^;CVGefPǔѻbcoiy>2'Ud̜tP:}GLeRQyNZOb @^|MMIi5ar (b0\;!|Oa%ʂ T`dH˨dfq{F#c\ Hfюc<4ccw{D=uŰsLPzpq>L0"~\`&8,z/Sm+v}[w|[:JS{^OG1WcgP!WWsĥk;(juvH*~9-ȭ綊tZG).%p&1Zt{I08 $c&K2_~]2/ĸlaL1,Fp?hc?ʩ9LOg'O'tԣJV0 MEz/bT6Xyz[ܩg9 ckpKB#;d?+L!h?2s682yIZuq8_E~ggr0) >{MI__ɤK9SYG2Rvt+ݨӷVڦ>PI:úI-]L]ÛfU*wpV  F&AB;ixcU_ OACr:L*ܓm$8Mؑ˖a:8QHzIf ~DY=d;A[ cɭ 4rS-V6(&!Ivד ZIbG+*@@õLݑ6?VsںNS7J_B p_of7ރVs.Nl)ŚegT@!>=@iE5GeƣltqMH,smn.#Xj2Ζ!V&!-V{vAaiMSTp%b(~a(th_=0ઔ,BU*8a5IH[b~ ܼ8.{6ńjjw_䩉YXdH?k,:i/ҁ^4\?20|2aSWb2,E?:ULroX47zͯ-tCn+$+å_e~iU)~v$CS]L=ztqOs 9 BJg\sjB8aqf}qic͐;'yj3*uG%r8[a WPKnFIF0"!A]܂oބC7t݃Hk% u!Vgv81PTߒӿT^6}ȕ Ng$xvWSQt#1R2]P,$+LL/_Kރ?#0=ky/j >:e ttKG,z{wF9bg/G:cppEgo ^ކMM_o0/B;B8~i{3UQ t@hb85URҽ'# B+)D&VjHgVg͏~; 'ӈJ6:^*;ǚ}N']};+щq ǜiMƛSٞܛb<-G_g)+u,$q7M7_-cFevJ ؼcUXʁ}Y|"$ !˵T'b!\ü9꠪Q T}?w w`c[Hf PGyu;%^ ɘia`>aTzciY &`.]؏\$55W5S qHn}$@HzHD';rh:%Ӊ#t2u? Z#w.!+'b>z˹F2H[)z!l7Md!겾ҝm/`xpx2Eya궉͠(v(x'6;Qj?MO1 )4T ;4-yʱ㗇+vnǎlXΏ[]aϧgoZl:p kTl4$fa@lyJy g#[8<1.R4^6 CX:oSMf)3=ޱib[kgg+NVB Mxګ3Fh=Y572cU3fjyJ߳BBQGbo^sLOHq7D$>E/mPE б]jn]uG-[P|Wo:?}Ӭ&ׅmչk*]X&IEe0 Yla U*^_|5d?[ۢ2֭WOq=c=HnpO%x+c> Xa[̬½)f +Eę=nu9$9}U7;rʔvuQs]v~=`ˌ"nĐº X/Jl h~gA_U(i?ю2t &pB໗n΅o-z];!&UJ bǩPjzj뮰-_I ,J΃_0Ͳ\zL즹wUڪQ3$<ԑ]ύ3qܴ2Uob(K'c$~sYsYQJ4|Q)%EֻR #4ǙUuw$)˿ H2}z`R Mnw DSì-8#* aX*HdR.ٷU 3Ad[b84ӵڔ2}BbUcVqy6WRe2yeyf` (k1bn%!Zl 21p_#FۮT2Sx6zY |1cʓu AzQCމO5s?#||D(~EM͎;b'osk+x(A:ZoVLX<zRKmXeNs9aӉ7JAgq1U'd*,twkOVUX2X䏓XkA/4sf5w; Πꭜ}@JHa`4<[~{>@3% 9ڝ1nh@A)-&h-V:E4=n)Jp_KP`+ZXj^UO,6h3Õ-¨w^*Z6.Y߶!MxNJMƨ!{Q)܆ bM4aٰujjLLRIiZ2 txSy!,vu:k $8D,\KrYИW,PJEҦQΠ[7(ԴXJ~fDdX_%DA;SǜUyQϾ)+O;m~ouZ*HLWq[⁸qL@>jv7},9!>88S7*R|AQ3K0}UOlW }:|5d5*tدA%Bge1YL+H<Is(ꂑcyߪQ:OF{  ;Go|ԻMG!)9bYE5)[ v#%Ha&E %HI&[~|-bMt4~=5?F1q߆1cηE'YH sUdž'5qZ729P;Bk}Z~j*ʬVKeh 67_33ҿ Y]VP\gmrV`Hњ# b$8x#=% Hmtr4Ta[%tyWd0Y# K) b wjp=MY(L1+z= tVrq1ڲ:`ȊFP{ɪ]l45?KT\*yt]bJ"zD < e 괴(KS,w"a&Q#A ʜ1o+Sh_~RhGHE޻/\w*@0)I;oҫ ]Ǎw/+ %h =c(@/D!~%Kv0C$$𗹥zٖ}m ↉ЃҀr^ݖD'UTJ|C`O[knUG%ͽZ̏=dse~e:B EiJpgqu|K@% :@"M܈j׌٧WFUmbW- 5?nS)\@Omuإ&)˴mEpȼSBz7?+C Ҍ}=Ī^rYdA9\yJ1W#*YO"%;wqlng+sOD^[%B7a}3ܦDL1) X}m+ihp\S&Yff٪ͯ|=`e1Ӏ,޿sY&[NRGJjJH(4YDqzE+C]@1ʟڵx1>b&vu|'[VjZ0,q'7DKBԟ ,z:PnxNql{ a") kƹ`8' 6Zڙϸś݃eai1̘MH_)~ >}fu.8(֍G3!D:\!Y0GFjtDaivwk\F7TܯG?O[P.0-;:ǕH :!\&NQ`8JZ,$ݯXAuIbZl_vW|Y/2o`t)g ! Ԭ[߭wX~sI7ܜ iMDyЗ < d];YDꬊ5"a[HË<-Jm(:1@B fd4J{dav,yQ3r2e2dB9=5?/kkpLC<"l$]'D,tk8!n[Κk ^L#ձ!jܧ5W_TtuQDW`d_YAP1N)0T=fX=iT 8&{R.1?#A"V 5Y`7ǯ3&h[z#D^V|6r.L. KmyK X5A]x+i]NE.؀B{ȵ\psa޷ؼ 01NV|*-?+zo7^*Yl5gCb}2y|lSX z5KJG}yB&o>Q["j%}6kyb-D*A#E!6m"jYu+%hjPsUNc/I!$C3$u+@x z9 UCҧ*S1 g%/wE ^&HլE.5V>O3h !'̞CJBGcF@kBHYw H[x2F5PssIzi ;2kk-%2g!^4k㷪M,my(b(AYSw v؂%5 [~7 Uo?R-Ltl3L 8kL,oDx0}J+ĀP0pk[^ph z+1% B/uVNW} <,}\ R uӝkse RGWSIUW_3m3&!>-ujzyl6AtJ.Hv -;f{D_QDk`p{V4r<!qAgYuetA-h3DB_gDl>8cˤ!F(3VD/KMi-l~u-cE%k)bͶU$GPkE-xG As=D#7hYHf!D*5u?_9'-F:qbqPz.sHWW|u%pq˽6YU^}ΜWv.7*ݤ39ePhb rۆslo2`̠:vÚIL ,JcǖkFe^EA"ÍW[lu"8g6b?ՊkU;S" RPaFf0]h 㪲5bd5h$pmڰ?30=MKF *IP=5^*cBO4)qW]zA9cQ|N:Ǘ`"lzcm/xg6Q; TA9o@MXmfL8MQ.龵QpW |AR aAG,Tٙ@3D :I=U~!76WuCJIkLc9 IRl;F.A ,ޖ$ê`qs۳b.C:w1ZGA-[C,Slfn;zgreffgC%@̆ @gSq\VrJ( PZW8 |7SDbza_O=G"u載,C=V^ar|CǽR1 ̹wȡ q.4v3 +쾙HYjOh?OvഄzKJ}`|ryfHL==cU#cjձĄx@v 2-ԊRz*j1_uK\ZJ*iI @dw -$OpFDxT0;<; 'SU-.Lpa*Sڼ^sC'}\\ӆÂ_r 5it:2T"7")5\K̺^>0'U2jõk'#qXqOǰOb="ö^Z +bо~ȪFs)$]"X>'V4 R2i6ED>񂇓˟#ŘC U<_n7uNe!ѵ^Prv?cR5oE=,~'+FNl7W ᔣ\B֊x)f( nQPWgdya!۴s?7="-Xqj 5yyyn50GD"nIt/$Νїj (W R#*`h]knxsLTP}<*z(Ax$|ŢCXoPy*";mZ QG^EnoOVIj#wW QuKE4_$Ͻ݀_md>)43y0St{ު+NÞ%Xa^Yȱ|&[7< -21Qhז:hE2p$Ⱥ86Ԛ0z@qJI&yњ%NA/9*$:s$w5V)S9D)f&Us0]2O`HSd &q^n(t{'1 O!jNd"4EeǯŚ+{ MqD_]auH9\V9=?LuyAYaYPgeh+y(#T?Č&PK% Wf^d߽O7: 5 &)s4ݲRØ6"x:f@ܓ|N-="t"]yI,9yCAĮC6'}w-5M+M [~l Pc":ի% jG+Qrn#L輵b!zyӲg%9|n,_{G$Ě,j>`%`MӦ6IheӦQkrҴVVMQPsHJ< hVN'ܓ&5kE3 |&}|&ʁݿ;z1<ޙ A0`md IH?PbK5L15cې)1$2RR`[NU=^띰YfL9 t*rYPTT]X݋*GkE=8ln4Ovl4\+r",X$*x(}3y#Ԋj}vtl-4a`iW^ɉ|qP>T4*X6`%jِ70Mc;2VO3SLB\6lZ\3{= Ndl1ƁfoQ{;V0. X3OwzI[f"곷-k{H3]nHN"yPL !7]crQE>P$<0{$tyAIM7O_ >Y5-_ Ӧ/Gqf\,wFtEtJU݀ v4R[J!d),(y~+,Է'1t>Y /!@+{vp{L>?|T md7_&s<;z.M7[x _")1 :&džYH又`{ȺrT+@b3l7@7#Ԥ1GX3Ig*ѠI#Y+Q㉷kK~lJItѤ]h~ۉ$SSU wóICCSܖI:RԄ*lBpv-Mphゖ~L>]]omɬ>|`FÂң p.V H,hi3yIZ4 [ W8#˜zqymԗ_,]LE&}HbvoXKrҐ HV#,&iEӪH<<eڒ3N0ﰚNY_wf]>5PɰCqw!#)*IɾT$Bul,uiW) iTWy¤FkTLu3}}+O_Oa Wӟ-,(.9gݝQuaCB\(46mfyJL&oTd>Қ1hRv}lb}m'4"7}|B YC8>7I~$nвz,`=g+H<pOlU/>' bIuTsOB&xb $#X7D_ Dw ;:8-(k`ֱPh\F_,SF[lqy#X'BT9:SK;lĄ?DZ5CsQILJgVfVx,2G#AZpu==̵ ^U6lJ"]Ĥb((ԋń(YSnY6}I  ; b3r2qs%&}%NT{,h箉 5M (関 c@"knm"JtZ_ʵl B3Ʒ.?ʱ~f ,1<<a[k 4U"ןEU FQïl8#Viŀ3T%޾Sh14.u)hVn٢Mܤ %o8}s? ?/8Twckjl4r t:0)+ȧ^N4bĕlNGʗ=IsN6)9$,;!r$X2+L6@ ٘tV 4Tos<ΡsŋJw! z,BRsֿ KG&ׁa]=s^x,N%gc~XB0p!I`/nB i1=.+y4kyg$2CIOfuW# %M-|Ucj6V`RL\2>GseP@z _<./w27c?/3\PM=p5 -a#Z.?"DFF*ׅvVJӘ [ Mݏ7w%-νw(e[VwPjuWgX;Ɉ:Clw<[e,VdSRtrP' N0BbQ>oYݭQQuoz~2r;7Ӣ˸?{Sh|+P=8Bm!WE+!s1{!BD=qY?%d6DZUA=̤phNpUYo< vc+ykkRZQ*эq'22$TJ\JSDB43"JYɳ/_wE@+_KIs/s'ɯ[О*!ssIc φX̏DG1˅pWgϖY,C}Q5^ Xmf?,B At`UくY1:Pb*)0GH'*sw> N 0S뙀W D-|I!rVLNu7cPQUV/$IF#eB4w3:`e(,uXF_bH5VuϤicΪ\S#߼L)̟2䘵sD7X_M/=ͺ,.x}V .YV7@&7Ɲs ?7/EU \1m`4Jn?/n9XE/B-]Ј]eLJ o[,\(2.MQ^\bxsMx.jڣ-Ut=[ t;4hgt}*l^h"IGM>Ƨ%{F[7ar㘫[2.zE!=]6o>&N Ĺ2Z1ͮ m[pP>E@c0o%*ڡݲ )!ĜpN(gؗˣ4+ʥ[/L\RuK "L%VsҼKA{X ?J SoPzĵ@ȔWMi~0€9=,>dTrWt ): VyvFRg'fVMnm\D2V6hxU*6'u^o\c0?W f@Cg γjuJYuj/ZE(-2:ȕ\K#ѩB 4х**& u>ȡy{V^z-ϯrn Irv]|.=_KZzh (OKoyGY$(U:<͵*<1:f8a5E6@ĐX]ZJsW$oȾYLK"%6Qaa4j߄2ޟ& 1}u/ }EgfIgMKsf̈́E]cCw44$Lm'v  e<-;CJ^.~o`KpVꝯdNQRlG?.R#ckvߟ?LkjЏ4=4j~m ed"f6EԸc$>K\|H`qXvie1p{>qfLuggkA/i۶* #<{j'SJ@ ͜rTlmSZ7 l_8 uY.|kkE#`~^CꘈĪV'E`?'VZvA,_iϫ%̵!ު`#J=h^P(Amb"6wR}5x^8u4".c|THF"ΟBuu˕)v>^ꀊc*oY]nސ}oΗ( <GfjSOI18[/ZX]@jW:6B+_gq`5F<5". }/jIc-d>$̰-@Cp/\"EŘC8MO@1Aq3n^O?7C&'/؟_#͹ P >[P8_U7@>I3R( z'/4+ 4Ruи~̴(lS*iX ЕgNP!?Ȁ,,*UM#:so<*{Z)zͩ܏: 31r>BXߗM޿s:Jș{YɊ(AhMB?ʉ;?z Xc6E1}I| }.>i0s@}39GN Hl$,0$kN?z݄ O}Hid-'hp tX0_61ήw+/6'߸@^rO*gnyY1Ny}C?_GTDpk"rh٪3ΰ5T4.{1Kgፔ#pv\vpe^]ȶTͽ=J$QT?VqH;7}|4dno$ *n}JAZ riX7cfe\ !auZH0T-`HLIC9DX42@4[cSܘU,qwWWknn TCf.SJ |Id@*mXF{S0u5TShoRqIzBA/:(kt1NVQD'Vq‡Ntk,^&v#A&F`=CCn{$l79uU"ajƩٹ=I;N(*iQ“,eHxirCa,bOp<⃩Nކxc;{g &ZXdzCE, Y~_!Q1Cm|`*?D䐳Jqs5L>cE_pX}\Gnt>%ɛX?}[%JI`m_A0.uȊ'-CsK0L&@"g1ħ'Ve)v[YN|LG\ O|Bqf'9LXj_/}-;N֧!<ͭr[uH]rk=h|(V#gRm,1jZl3JLY' 6Q`e]lQ&5rϧ1䃮 7Xz6bFkZ/ϵrf"b_QK[-$y{6$ Ϋ_Ҏ.C 'bx 5@x~3-S4dRC'I Ԁ\Bj@`7)~[3%3Rm q ]lhdnx@Ȝ%= -PYrLǛ7qdt=?ns c.Fk^su (>#{!QHׅnXL5ۦA5`H: a]'p26\xX-UQl_=QK6UTe{oҽpD>Nܱ^tj/, a KHadQIW1 &Ǘ1lANWGz ۷f#ڄyRBMeORۺyE:ϲ2Xz,.F \=nRQ-"-4wN  C!cZdwd'*NOpsØy2\bj96ͯ  'CD1zHVRL3m u3?)(RCPwP\AAD\]v ךxX=c[4h5X5ѾXK[A3)ȸQS:}sXs=`^Jlέ2"庤QqҀK$vU]F{T|r`|C֖lB0"bj tLEv) x_ubKaf0)>7#ys/~Cwܣ|JtxHÓ)]u1jh൅!?" ߁L唶kZܙdzٟ>Sth c/ 7c1F7*o8){ "QT(,_LV~wi|NdUijj8YcGvbaE l,ڜ(KydTi,[3ʨa3u&˜PUWW2pWFmNm"Sr5!s6&RhF"#sߓV&BW_x9KY(֠f)񪜑cxC ǘ4V&FhxGtX2?@sdt>0k2a۸6I . iK7BR-Ypx=EP&/;NG?4_;d1WwN$(@-"JMD[dƇ_R%@|9{z.r>q͖dпA!2[Vz}*ז; w'DqKgW\QzxX4}=}wRT7T@t ZK]OD5MU+@r,[2+c492.8+(!6wUp!AOZȽzڄK tP`KS(8K|X43ONkDS&$jeW ccmrS)rD-}9 `Θ60A" 3Z(Tϧsos'ג^տYqy .+xt%"3o555jů.ʩB@,B?`0?4lLDܢウo!S9Pe*$+MzBK70U!&EK N)9DN/XIG{72{z D s|:ttJx,3bLP&4fI9~TݰL8/+M暄WcP (1>h!f&ۚ,U:'ZPGV+}wެתrTi%=C%cի7xj0 1>0]n'W d譱|P&@c~~k [f9$@&bAl߂ )~E2L-l_ +K&m .GXn-h0bUMi2tfjjͮU0'u{=$|h&y&A uL!)r($Go9(U#}ʌhZE [`( :;J\j잢 Y립 Z/ͤݍB>UVRSsEJp0z !)YiӢn+ rcO0ƟkiOѷJUjTik?c}軽6>pn.S!rVƩ_q /.T%N[(D,ƎFܰ-z~U@l~-DksDu@8{p:GЍ&8ޤ*t-WxGa[D Z@*EgZD~;[Ӹ/?L~FN  i_R, "(+QE8p3r{~uuo}Aa,V}z6pPVm˿^-]t>;p4o/$&>SdN ᎝|0K9) uqe [^gJUn'g &eю7@Xͧϋ{fFe>'m$(Sl\q0B]o{JUoW.asvwc: Gϴ]!0Da`hϯ_EjKEdgH"CQd,#ǫ/eDوq <͔ntze*-W_4#ˮ29壁XrKqiq>oMX!'}bC=4x&q R34*Fصi(.In2kLA@+BRk'D ?,lU0{d-lr%4y}-qO*džZǡ, ˦ZUnžn!צa\MWoIfj%D0Y~8HNCɬdgE~ f Tq0b~]Um5i;樸#Njژ&jΠ n\&4f.3, =qKȜB %k[jtܛ?${]ba}nH8LD5`E8&ud)QLߺSﴩk f.54{q~z_b3$H4z֖iTNg4-! >=]. =Vr$B>Dc$|:<,ck>xoVK3nܠSLxrVAQpoͲ Q%TwY"g4k,.h/X92IP;9P:Ifk/PK7 i?|eg$)ȃj dg;qx|'*MPG,RݼoUrtT9'hֻœ=Vup4QQ9-l ~eb*J)#^ߍ Piʔh[5CQ1jdevF'dDbH=v+cL: Exk`V|Ɗf ^nA5娟1.`%<*K[=XN>ЂfѩVD}8ìO9loH* Ù̘%aW)\ԚЗF7Aꮝ,>@5I{3" :OT?N)PGT|{;t$yMH}"f2A g EL.ޣ RzeSCRvdW ;rgC<<7p } ( %؞yZv ܭ@ W_;V*ueCÈ;p#CzGfVۓd-rmE rCi*-.5@A$6sU6݌d_hΏw^} +B{,3/Z<Ӧ%djlGzuN77M Wb\4],c_$akkgem4{blUi6 UsI'Dz P2MšB2ɬ߆`IVCBl&ʾ*s!?x=L{f:+O E嚔Ԏvv% Ade_0My@+t5{/%.7MEMVsRzhA"hGJ:z h# |OTu}rTGI˶-HG݌v}tP'M~͸^e_cf8j/ƃ{MpCLi,p_mE^%y!_ ]X|Kgv%i R9# ׾ϞqV^Iva|STNC^Euҍ ࡴ!5NU1ǐwR~V"3'"UMբwoBRKm0(n #)7g /=#ED_!27 Oqs"<@ %k\,d -Vhl^k SYLf'VN7A;(uǨ5}Ras (15!w=}i-߉x/\?<~r'sfmV $d6 ўsd 2|*< 酭=^ |=<\҅0^IJ*c'ɓ|/޾ā 6hzl6b ]ާs;:oR*sKOY' c@+j&'#9$o@8üD$|eJ'-觉#nCsYHQ:gD$n9$x[aJub Qf=X0eO@gA'3T^Q=]*}8j-pbUifV R-OdIx[8HݕZ0%q{0LX[@ PkQyDâ>=џ|YЂGj W8%mКƧ-GMͷ9"kf65lc'ܽЄ g8\Apu)I1x7t 8EV .7[w!*.&4 Z맒VqHع&Wg₦*֋@? .ܿQ;03 ,FCk$oqq9 -!!K;"ҝY Z=| s>AʠL@R1W'}_Ȩ!v_w=ɭ{Zou+̕Tr/&~(O].k5La  g}?2=:d)ᶫD5u3\~I;^־{b,c&2{사`cl6t<y2z y$6l[DxDr ͮ@SrzЋn {|6XrZ3[6{n{m M{Jާ0{!덅C{pnx?@zjp+"&!`X_ۤ~%3wl:SNOc˜ƒlѝKJLb 脀aʝ^zwY͝%@Dyo0v`ZMXڣ>H M7bqA=S,t`@0fN4Vw$udz~ue׃д^5km;EH#]TOD; g2uFĿ6{0t|J"Ώ$ew^[p e֩T[YFu.UXn=(O rXM-|.-pp.a2p;ΡTN\(75OI3Hi N:2Y'!&iZY: ZvLOuji']5fu3]7vxUE2!eD;ܻ橷hXEA /Z3y ꌠŠSq1J65G:%f _4H m~%b MA 6y$QǕ$vg.MZ}Ą.zo6 Uơ,A1%RhzUי0noA|{֦bekpMJ LIj*%~nj'N\s}TbuTh+~uu|DRx$VtW0=5SAIR-Wa-9nSDqUs0|7BPs~/^E6_eO&KHj"f`7%h䕾wpe!Bzm<}%7/wJv=ZPauB 04]Ƈr0ڄi*N.̟IQ vDQS2EN`I*R KF**r_󧾐x([*pa9NSPֵK9cQdNeU40:J? D׹`+҇3E61]J>WF._ʸFRZZ IÑC YGZLd .édmHf'$IJ%йgGuTWf?BZ]W FV.S6:Z^ŞQ9|r#QsmYJlA A(MOU!v%hFȊ>@A\=h# m&"[\n^_msUCP<CqU5}aW-D\E E,%{ Z).w=̹N}ýZ}x dP(fn`uk3ͨ{L'%L*kU7 @@̍kjeIq8%VAJvm5ֺnh7`n>B;ӏV;'g je"2+[R}L<.ߨ};&V^Q«7Ҡ@aA(0r +t=1Cch?hxuh2o8/ŘNVm^\yА~fF}AjK% TKfkɄtְ#G ;|I|eQ[j=j{zȡ;bGR?E,έ, yւH`i8KR $hDO#υ唧R_,pI&ZOWL ^ݿ 'H SaI+GlwUQ=lr7Dr,8 !3e:YS1&rš!d?lTH3lbԯ*冢?XG s!2d4L *V΂ 0:ttId2{!#;9R!X"pVǥgmxEk鱑htY'3h=cVo"BV3SWb,E˦<Ql]h T@j^Ҙ?MţXix@*\I=SYY};qW}F3;QfY#$ 5۫3̯ֆ3<ָB _r_è"[J!_U(mknbPW ]$}ap6])_5DK,Rn"|K$2.UW4pkJ8+7ӟUVV s;+_̑N 8h{F[%DV8!saAMO}[C~u T i|ovTNv-GEKDI<[Pv D{ R, E v0KC@՘sx ,.LїBhhu>% @"}CPG*:ȨZbl dò..KYHߌz7"XT`XʒLJYP7toQa mqJR,2/UrPh,0-P/%+Y6`/W93@c +97 Uep*t/Ϊ1so(H߉磚Y 66x~l@wZ;x6‘Sq&!.#R]#ϗ .>,ײf[!DޣVnCroYѫV;M}S,T|υ ~YBE8y?L¥$DB .n;AfAd,DtHGW$nf}TFӨ3We*[78c){=RNR~PS.h`sBts1iOˍ}ɲgsP)g$+{ywvl~Anm~C E52'+[LO1@CA:jߞlN u= vGīwpXyKo(dXv>c UYTYوu'EΞ0iOw\ Dƛ&uχߪ& ;"dH\z4CzzRBJ0\u&.*GYb˘ifQh 2 Ϝ8X>N+krs qɁ wԜ!)\|y(z%34s \ \EXsߒut9^@*T ' N QG࿼34In`eDtBG6_S]I]; |(o . *;ڥ53zp;H0"F6"yXD3huLdŲzޘ!5 @i>=Gy)ńegr]on8twAC"ӧ#]ݳg=F+T (PEvK%vGwC0I/8UWn~@J sG;QnK)x CPsk]c_h٭'Sb8*5koDHM&GVS{IaUs%eq0Q X zM>U[r-+޳D!\KlCQ.exjE y(_#RcI{\t\+)L6\d*;CXi2¯ 78x \dګAJ}\{16͞+Oyіghk '4u]_Mws)Y,M4qTgM˽rK {#⒐X @A&;_eER,Љق(-]@E|t>LؙX8^yD1 Xu {~4EFjFL&9{{40ڻ"d+0=%xcٻU0592V==@9*X}:8|L ߘyY5zdsvi߉,ITUh{ʼnAaneIDJo Tcvҗ ӭ4sފ)3dGz)S) xsT`']lUK\i{h2,r8 Nǐy{n 2fn3Xtr^ eި$&@_Uri(^g# ˳/:,˝Q LcH=DjF٘5J!7D"*8_3)A=vx WTBw.$cuі7rca2o`(  v7M3  nWZ?f.ґP$4jGjn5Hb'<!u}5!76^Y֦=9\ǥVZ@Mb"RDtbJe|,[:h Ђ䝪ws+wf`vҋpW[5f^? ͔5\J 30,BCTHѥsoex 9QNu+%@#5_CNL'lVk׽ ,Oh ';baMҝn s-'e>iBuH'6^tsP$Z{Yߕ˽.gTڏZ/G?ECЧf^24\KcI+EʽF~S7 ȷn"7[rU[`'x7i5EfJWR ?0混Y &?K=yEPFXMi- 8p4˃mMjdJE/{][A2,Jњ=Uʕ +mg|$JP Z<|JIPX-_iu׮۴sYYYt{B&Vjسd1ݷ-v(!1ƍ%޼<V@+層{}PsElS~|/(@N/ĕX+CX5t~ Tڅg TꃧrEGF/A˰?/-+MY|QM<<\b𜘦dlLj1WڠI&^4Ih4{AsPdԿRrਖUsx0^袓],B5(ΉQ |ZRBR21|">8H/rB]FSKjiYg=!piUPcāKgS'ޡ誡8ي΋8 -Li:!Ck;+} . !YCXN?u\"4VaLK!Wqχ<;cH{V!,뉁<$pxtJ3PeR={ɮGո/8"I=ɜEPF F!t5"+z3G0}M:yфei□]IJ&AY{?cpZHja3)1rHh#[|ҽc$Py_vB*ǣ^m\8dR`a]GyQ%ac;w_-/3& 6v7*cwR<-Ȱe f8C Wo"Ë}ɔ_p;4w)-u"BOB[>CS]9 \6VleI화in 0A07fX8!Fr<ڒkh#x]xǣPu}r5P[=MַL,dM_AAVt]"nrfe?fXNBSC|/<uEf0PzBeGyאmqKnj5mǤV `oS%ڣ n5 L{mFjj{\ǵe`mB(ݑw[" i/&pZlS~EKy'$lsvAp/c !@#Bl( z&@Ά"F+3F^]RʣCw8_?N𤝗<)9fw4g;^dx2'R2u6.Of7j$^(_[]\<>ڍoʜC՘ܐgi^ýCU{;:()Ya6\E=/kjLޙBOqlązDudn7 088?j,bd6Vb4~bMT3 E_K9|T -¥II,w:T8sjLn,B0 a@׏e pG; ]O'd2=R /9LF-KpMXYFpa~h곀8blqˉ˱HEhԖnq\N x荧*6^&zR5B78ZO>EYN7Tn D7zpZT5D!*Ja; 1\(cz!>OE=YR(O[.IDZXKY ~p9C:4[1/4h0a3u cNjZd g,Qn+yxLmWԑO4mztךO2:q[ĢFϋZBֻFSg+?LAú>&Z$P7 00\i#&oxb8D썼0Wbi!Ȱݮj~Y[8;Yچe܍1 p6ٿcx-/Hv_{K(b}Ԋ<ӆq/.m\{}L7 (ɘ~3K *O9~e> ͈g5OkIzwqe[)łN5"{bĀx/9ٶ!4`Cӓ֋33H/st!({pzPdʔ8"j?жEC#1 `4я E,5%ثǽ~ܪ/ڡI-nW^-\ :+398eUҷғ1o U@eG] ) v1"Ff(=։ZS/-R;>C%9 ׯ|`ԛYZKyd׫d71$}L /zl\G *ba/mu~&uX:ifHb4#ը_uتS"՝jZj\IkpQ:V6֍ iط@FY :$wC{Kְ:qa`vptŁ?!hQXHI ?8+;niڡ%8*w]9HL4 Ǖ$bdP$tl$Wo3bj&l觐M`w~សjYƄy]gqIa}X{4$ƐQyRR&B7 ұ۸o"-3iYL=Q)~~3v"@q:H-bRK0?pع,ͣFF4Mm:[݀2pܳɾh~KxoMMU:ְrdq.(<r>'O(% 6N0T'upWOL(|? 're}WZ: ͑޿OT}]T6g  Zu:H17^t}};֞w$ HVhL&+F>eagw;{މ4_O@c72%N#`dJU|.slq}hAӃ X!r-hM[9̶k{왣E~S<5m;0|/y>%C2@dLNK9G:jHwxs%Jn!EؙN`L7HGTsS nŪ~p;u:MvEHxIrEAѥfԨDhT+W~[ұ57ls Ys9H `j[ mE@2+ dG 3+A-fI0,kEYxqѠ^d#ֵ -ݖHA{QYm/RSTĉOt34lG]||%rpJ=,Y^/G5[̍TԇO戴93&!!G&\bq0g~Χ!$'džl:up  Rה/W✰'ZF =j.Z!#m`~Ӯ2cq9w_ Ps% [ϑiP?ĝnBuW$O^wRuTԇg3Hi N _uABu}*Hu_"Z- !dp&-XΕj3# ~_8kt&LGCO- fWAہ[CeZ}kz!Ӵ+6 EG+g=8dL0G҉բ!6H i7'fm E Ý[K}tTyng(F$=P_V *'T=>r N=)Ϫ"N\o /PN;. Q@ [gS(3DA[. K1vXM hd$z^=v7ibR8Vn֖q$ԠB1awk݆sÇʇj^JLgPTD,Fv),qup^=ar4URVn/i Y2dž幦[ 8k9jVokibbn\xZ.o©zs/v&&H!dIm2KlM'+iv f7/[XHezNd ?t,oBZvoC5X??gbl"2PX >YckNއ\tTtINKC*Yu29oL 9kF>ŊS7ܙam`QMH8vJm>% f;Vw"I /.a(AkZ@4y]w0޻8wޖl9WXWBNZ,-1:'ƏI*{o%TD-G] k!#Xzx]0"uPs;D;*9y>V}3U[q5p8:;(9"Ύ7's)siw`YdOxg [}`HQ(W'sf)R lAF'O侘وWޑAF~-v?[Qo;9Ԅ3X[kYm Nᩏf@sPp#=E͸c橾If4@|`fr |"%p|#՟7_1lA dbvvdLۇ_~)az{+Й|έ9p\w 'z{勝'1ĒyJڴ4hW$)M5^-\/y`I9,y[8pvOG \$VLNvvZilUЕ.!/a QQ,2@o2 U'rt/P {gD"g$TsbqE[u\,/o@#͖i]m{_luϡki8to`/ts PNKx-ڠH 'E5폾Qob!B$0=:1saUPŸ|b^Ɉm{\:,(Ñe2Cn{< ҷ{i{*Ҷ.B (&ިxd'W";Z;ԲkC g1B>m̚Y"W܊uuV)+2lF$pe8 P:^*mPLqYVCqNx' _L(a ׽;B #lG2 Lq+ٲV8$c1Opݱe DS Ti~ubBWPUB0< ЮP:ڶ5E>9O#=휫&:,Xu$_&~L;ZaL-eŁҩ܃~ hkNMEm'$!'*<)k z?\`lW'ZiS؃n5(o&ꢛKЦ%7`#6}TJFZA ʪZ6B8XU=}0녧W_=Q`A+Y80dc3C9wh( )ȣݷ ~q:9'Rf%{ DM9t\ykzѶ{7ʃ%[>`98G Smk?\KѳїtRf YRr(Ry@mf-cfZ@+ILVbKST '3J3-pTPz@{*jn]dɀ5Oi; [g_M]Ru-Ӝ'<|vsrT5x@'^ 9pR 8hwHBs*9[3:873:$̄!Pr- }R,ԪE Yf):ę@p?/W_aa bIfLjl4߸ư;Dz~5.^wEC+ 4S8$5'qI}D&B:c+:#=ȊkF ;@Xlr+)24M`D[8TAR*sK$=U&ԟ hڅy]yS[ ))+mMkO3pX'=ע`Z(rCi QvKDASW,r#EO`،ӿ(V6SU:I);ZA B7b~G5t&9Ri;:օa"`Zġ9#𳤾3GMXise]}: e N+Tܧ;a.݀@~}є$e89أ棬KjTH궆\4|Tq{pp?c,u.F Y_U%7h l=+,3M<9DTAߓ}3-BJ7;nΒ5iC95Y W?/3Ї @2Zm^JNas_p<~l񽂔7g9Y,+ vI$TW&a,MS8"L AX0jB j̜䣔~s3' 9$0 `1+WU a(,v[:$՛40yr{mf(3|޳9ehsy %24AdӤHdKҲ뤱icDTQI}ua8B}|;8iiq@G ͐9$ɝ d4JaiG{P_YC3:Q]hb]fG[t}-ݬ4΂p/u#c5ޒRW){\pWO(>4NwO v P(c#@˞ FFuSlQ= euςzᗨbWK@W B ֞+eTlt3A^L"(™0eDeՇdCps]Cz8קc6C^o99mm>6`7Eѷrb}ij|a?lqxrQ? \_jo ÒeK̴DaDT[Eg_m>ƣw>?b6֧4 &zgno^"ESLPYAd+vdWL^fnch' k.> OۘJ稽~NHwakSg /# 8zHKQ1t!>SZz,~^0`Gk@u*bVxY R Ǎ qS uSo-Տ|hx St\IA&fS+؞)E/<~WoW>A;(#zGq8Vy *hm۷ah3-$c U1 LjpC%CD^[Ec%?юјAb\J#}};cfIӯ̱@=DCk9ӱ(i3~ĄCpuCEvǘ!\ yII- Bcڧ=N%._=D TZacf2H8ɻC4MW Ih ɁUĵ-ڷ3ȊLᜡs'H_gcVr[5J餯հDvg Ɖ I[v:UykfMԊI~nJj r#p%.?pVLKm^2(V,!>f*YǦFyN֘ .eGQ?F }rC9|RÃu=U|RYyR1r$5k h/Q2)27`pBWrdQ̄G2B?0V/:8 cD^0I9$}o?X BCz f{9Y̴&옽P:#kIMA[lՂYX'\pHphW6@h# ^N ,cc@ * .\,6J-Gm yꨗ@Lw.g#!,H(m=0OΜE2wLcYΰ^}ZxE!97W7Ԃ f aSdeȿ ̔r\R\ %< zZzSņ&3."6F(pz0Imh.O;RL9*|DBWd?$h)@_Y&NcXH_ѡ/>j>hp_"HP]V\)>E-v)oߵVX.Gdl Rg6kHȑeISj5ؠbMV5-b.:!ӷl5ڜX;/.l_i>¢ [cZ <$BfuT0"tRePCiPt QnBbE49 ~fUDGIK CC7x/t$(3 X{)f[!@7{NXh!v.m-7tT  %x P%Yl|e{yJEB7CcpE#9fU>YPѭ@϶è=&SJ@ͪM#;rO-5 {NB@ OOD* xţK^͉D K|a ) Zzr8w¾*x-C1Yz\։NƲԕ}F+p3~v ta۵9 ֡/VM6j'$&~=Ǘg-_"ۧT#cHlFa/uOCa䁥 \+|l8&ζVK3W{ |T\XMy {ʼ59x$%4EI"Mug FlDTsT=|}`Ԯ!__$H_ r$آ4Y1kAHEƗ iG%A>$fꊠ2%5.h\*o6uP(8"b4$^o MkUp/WG]gS^^A5xiJ-; `0gq{ )zI'T|F;VNx qQp4+N/W.LM:m?馁\{  1O4q߉d}wFz*Qɻ#Ȓ19*?G)@ڽ_iؽsTΚ+{zED #H}wwOhSTcETe@eKChgL.?*!S `ff/ڪ%~4$; ρ,)T ]Mr?}!,皤߁{HI|i/ÌX4!;'i8~-kMDx4i՜{qj2y '/-lW 48goZ"j%& #1&X]*b_؃;NNj$QS7_hJ這7eYOMĬ$,yK QkջxM: NzpG"!ƨiz$3zfkΕY3.Z*! I֡8 U fb@W$$ QAnRP<QV'92D4xi\#ڗ Z0͂ vK3p>e0y-zms'39&% %I<ϙĂ\+#_& ڕ}B_b[pkWZ1Q9оqSa-oUɏ?k@;/X~ e|:Ǿ߆$r;Ъ{avx'T̕7B64Ѣ0zvnaEB٘&N })߶Hk3ᛡpbLt;J$;>h>d948Z3HD:=>S_.R t\`c[b|pk`H?k#0kΤd/$("5M%gy ۸l i*z;;/vR9<||[bA98"tχ^L1\D[o.ut-G`([ZUUp7 aU:úҞN~/- 7KM(d fSaدPy'_e;#OcbrV36WMR 1-zV J'4\<$TWD ڳɐ4oX ( |F tdIz$6tR:SxlˈIǝ]<&=δRvyL ~92Xs+6;+cýDzfOo"vHWcB"BĘ"w0Nk-\XQ%%Y}W+U[!T@W `D A`T<:{$4`݋ |&z n%ѝ[$gO֝f˞6vI﹞Fn 'E](0l4&fW^7QI'LB=ƁctҝkF1~DGwļv ·Y3.aJn&Xf&IZ7=|۹B'JORV#% :d@ebu`_HbwCo3 !pf82K4k:ClQaس)@ްB+3HKx1SRc1:t5, "/U'3V"_TG Tb_R3`M2*Ʈ)AO1ᔒ hF]&q؞FȭxuS8p:O?g఼cWt]X4F>`70{ U7eM,,c,^sc vI h4RŜɗqUP4DzvK~ #7G[X]sfj!n1VwT2#DI[Ήf͓Ov ָ&2^G-Yw379M ϱiW)NpjLj݄Ypp݋$ ]u!U8Mf]tv^2qmGNPͰa44!`U!S Vލb$\& %Vp"f5Yr[%$Y ,(̶9تx됩ÉeAk )(TJψ9AguF1ƖG }h\<ܪ%Yi {.ttÅLk#EC`*TV X4xv 0}+tq AAjvlK4u-6LO'gOzJ%6zwe!evXƭT6YAv, FY"Ubsdc'Sqه&i6$1bosC ;*f7GVےty 6W]$5ژ,Ut!UbYގܿ@b_Iǜ!N ڕNh_I[ hZ-bnZorog-Ô|e zן8ܚJ_4?{mӿ.Pr^ԬxC-iD+Ϫ.ShįavU>bsfHjc]=-xaJH\SgڭTh eW5NVG+U,vDq8<%W6qoи-(31^ģT.`HVlJQȋksl<N8^@A-%rR QrHF 'C35&EDd?r(&6DMD֨59Oϲ:D}|M+Q!f'c*XEZЍvWeS;?( r9΁2j:wb\l_UeKLΠka8a]h/sf~TmtbTսQ'{Zg~oO!ଁ\q$<r<^H3i8 15& F3sUl Y\j@"_pXwtk/TPsBJc箮4QV `mjr$xLb#?߁H7{Z7򎺗9?de-.SCUFvhBRϻej?y4CUaξQ}.PBk6=/&,6M-ӂS6 RymTx&K$!6+rJTQY!WolN:誓tetͧO'rRM@ruMRnyimBuTMO@H:8:,$Yc7(n8̚8zYN \^cV{c>;븀"7R_Z~ZRd甬SLHݹh/K-)HRph2{JXpnbXF`Tx#/_wbYK#fsAZS.+˟Si}Rq􆛅̀92POTdk Լ1솻U/4ȭ9Xsμ2ĴzzQ%ڜq#htvD:*^ 'q#_GaQ3NhZIe\՗DU8CeSG`Ŕ3m7ϟɘIbsɓ+>6gƱ<Z6i-_)1XxI,`!t's;x@m A ,J @2* kWRTiʔs yJaFOlM|Ʒ3,\eUC)^ + _?X٩ 0}M5G4ͦ[G<kӐחŬ5~w1Ӈd9l0:ZˍA _SkON VUil*t2ō=j6acȮv<(IU:> "% ].~Wm'!p_`[=yJmMB܈lh?#?1)Sbp¸Z wL_.m4vn|;[4}(b#nX >L݌J~jwys^$Luڊz[c$˟kv]Jy\#mXN+j搡$$GD20E)ؠ8d83Qw;᳧=8s9yO`G%} fu+wv גA?cA^k)[_a>,nfPi7T^83XP_^/rU9y+edԯ=4oa5{9686?󾊚ub+<;>#.y{#hwkQnQ0FU;sT=}u-kՀ]>פK@o:M㝞OwV, t0G^015O^)u.W@hK[@[S󙘮C_격0NVyT`J/0p D,UuYh!vHw="T _`ޒDtY n:d5o:Ic^w0a ?ƹ/&OKiJ], #W&myT}!n,efAyϰ6rKh~]ppk.ʮm4؝{ u1~6*>$Ǩ"[j:gS뗇A}:ck k0X!/>xY]1+jTѢhkbH2^qP#U0v` b*9W#yPN C7uS(|֍4[T1piA^?eb8ۙ0AyU (`")n:5-PRx6e?v'Nm(*#, dzPR `~6A_i ,x?;mS/zv6G DnPm:)eZ_>3ser~FT=(@U_Xi%ο4~%X |v$g{svw]l=-`ꎭnSݺZMDo-ކpltz*E۾~5f[ "{JL|$8MЂ=LM)sfk4ɶdI"Ta{ źHoTx&E8w7&&y2[љs @k"(e@=l{:}<*1=i|2^%Suu nn[WVQP.4k4oHg,AΛR!FAO&#G0ohv(YL*}a b5& C)2+ nx5TyӴej$ $֛%́YtSUq,*F;Ngn$@~ZMɆ9?$Tv66/X;qj̪lP 7ۚ/SNyZ\zh%-v۵aUm=Řrkv7YD$xՁ~xnZWnLAN_8U~L).e{L&= Ƈ~HZuB>D^Rd-|A$?qQK\Es1sOF5Go8锰s+:rkayvx$LU >m~=SM_ tӀx 3DNz 䃠,=i| .[/O-%K)W?WH+A:*Qѫ9yjEj dmaWjt)un%`A//e&aTz( F2XׁC^R&slwzin?A F pOri;itKUDy/S-4fwv>T9m3i‡}3j3~ghůhqmy`:MyLIf֥U P BYl"!3PW`OY"r;qH" *Á-kSTVӂLjVr.CW7ѾJֳz i5"X:닛mU%Tvr>t׷C-]UU/M/灸rPaW.͂mkn { 3 0 d?[WKo !AqeI58\VQ{c -~ (xcNRmE&@ui "%|t -ѕe0Ox22u K_ גC knj[ПX}ac `15G'kq uYj=Qg"MkI=j8_Ec6.| Wspqt؟i _8|QBT+2n  66 LPKS?"щ\= V6XZMaj@QjGZ9㾕ZqC#;Uoui$IQ edSׂP 3Y5aZj0#26Uz]Be"G@{xLD_ -v$0K}Y_,///50ju+4}4apxljZAG|:'$lR氜 ERpjZ7~ί0aچXRB!S}Vݧ5/wCG<"8[pVe6Q{ $C6l7YMPr:|qʓhQDZ5ךHZ)0;]$ Ra 5jj/ܷIg$c1;0 $GWz"(5}켕MZhˌqN9[0Eykܙ|/Jvt)IK6_!Tu#Fz>VinEVU, ~쏄q(S>֏pM6N@q}N>"r5"XMsv[dӝZt7GDBKZkx~"j­Wlތq’Zv=2C4QC$$/(e*ўBƛx{]f/S29 \*׍c-.lV3H^A8 x,ε*+Je1^켱p?ƨ͍0[Ru9@$k:)GfZ37@bڦ6_kV6/)A,yB;-9|:O"BsicNA{P?F:sKSj8@i*b"cϞQ@^9[X K$K0b?@/x?38)pL4 z_#Vɻw-:fB! `rz-9 jf}69ѡQ%£fVCUWGƚDVIGŵq^&;߁ (8LI,5$6p@H0o8awS:S4ƉF+FG`9g J`B2vU sնUJXr%@帮\Œbc]O;뢭yέ*[އP(p^O._ Hͣo򓌂bz(.QQ03?ښ!nZ,|3luj{)5'M͍0ni`N+aɯ:M8̖s0\u=A $vGl?_˃^闖7LW|!P6/|ռ\ʒv$W U~8uUi9 of ߏEzdB/0xSd9ߖ\n"c8h[G-1Ԑ[6oK @Lm#񞷓 U$'Ny˔"#dQh^f>" eUW.f-cxvrN2P%-5`PũiiaΧj[JRamS>0<[v/+wךb{sRWrjt=3L(>g%{104l Q9^h>IdNx '\SBc2JZ yeFܬԶ(!6  +%y*ungݖ[1\Ε.B+HZ&|6ӌa3UimGڈȆ `qk>]K[&57pu)KFLL9= R,(*NKeeUsB"KʴK"^Z@H#wiXN#Ȣm6ӿZ]*xR$'n'6<|찗nM6u/TQ^$r\3?:}Uź JZT,7&a͞?LAQ\[!S˱Noj%l0]r !t [3Z7-oBy}7A}OVxc,wd*Vwb*|\ +_jU>L;frj+9p7 qS\;dn > .ntnߺ"0&$kRkdN %%E34Ca`iGسxtwTlO6#k; 8*nsILOٓW#jewR90%]jU3iڋ8 O BQ\fSF^iK{C qH7C#Fǻ3R^ JIkJc~?H'ٴӊy,)bMXDg˜~@KdvBbJ& `Xt&7oA<[ߝ RT+MR r/X6kN#Ik;\ t4 &+ |J ل~~S1x;W`ٸ'hM;?gYX\_~9S +[r :%3/0#gPl|U\^'ħsUya{@VXNND(8̇I Gc;ܮzW2Gm@je¼Jnva7m]5U{7"%RBߥW+#fP/R쬍nE0sE{g,"j'CȱLT{㾇Hm귯g5Gt h&kU֜᥎yo[ ~3I|wz_t0^Ģ0buƐew9J$P3Fќ%RD^~R誴|A 2E7u 2%Yx#`Y%lԒ^1\  D51-^MENv/OgN.GĿnB}'p@7AHvEw,DA?&U2%F>;D}tI i [4Zo4TD ]瞈[4 ݵ2#Q5!(k{G[gEBT,J#ro;_)uJ n_{~Yۧ/KR7zC:mRb*k:M̯VfUn^.[<"t+%+g&œ#*Ug6S,V2ipҴu|^#E1<9)S x P{Ē4^fycҤwlUH ,)PޭRiEB{Pd~l<4%'|˷KTRM@k1z1#91k{?pBg));?$틛 s1FX?^R;Dn< WD:h YaDaaUEDM+(QM;nx2]|%_|!Iq@ӇgM*kU*Q6TO.gF^hiŧg-(7,@*,Q tgd:F3rd VmtuV[^n ynHxBG dɀ b>;fmW`9r+q#jF4sTiШ:a'"H\"BPryTkK]řC*߬4IhV?@a"};W<V7$EAyzD=KMyYRY>QQ!$;ARJ/4)병W=|jPe@W9/<(0*X^`Žc1kpɸ@ <.OʝOv3bT/T?ܙGs2 ?nkSj &4>5!|SG+{s^3v cB Ѿ"xּLx2!C*I!Qkg,KH[rGl7& mrEco^ pyx-VeĜ.# CكOc ᧁ^/=x naПm7M}Zn'WYh!@MGU(.= + C)K GEᑚجtʟ@:O Co2 Zg菦3%*%'D,8HNmwzHw;=8KdW`"O9H7ssPl1jvO3y2R[:íXyӒJG%y8䚛k/ۦ6N3F Cq_ڐmtGeYܜPP:0O1r =",P.9lڭTɨmltkeR}DK(3oK凇&/C'0jv7LS"YjykO2`޿ro Ы'秼AhvN᫙*bSfBXJ&=䵻J ښ_e@)GQ~f=2efR-ؓI#rV_z П')>UeY׼*i;A7Na!ZG`.+x ؇lCz .L Xz/T]<;1ퟘńG<b֎sȍϓAӳd]&j}fGrHdpY6\-ރj#!l}x闾 [GؓU9qPN~ԞDFd6WȨn03>E 5~ f.f t Rn)Feab/CةPKEUH'_u#a(@%=hzBq#%a_ILԘK4,A>5U+05-GER2dP;+~ u/ sMe7ʝ7!R-ƙ8]*WǣiqWAfs\O~#GRH@vk :ˠ3P. F"|K޻SGWbm3e"s"h`?i G6C7r0ÖgS7u+ zc,f|&Bͱ+<&< 4!eNA>ڨalʰb GF<6W黩d{=T$ j"HŬIeҖB*#Lgp#96I?Rs@s13EMNF`"O8{{@뻁6*piu2JF$*$l!N &Y0k1n1Hz˂Qs/2-jYm0fSņY~Z(m'9I+uQf&q 8ez4L9/^;h-@{I?gku8^y_,'BHot-O@y5ҩfuFl.ߨ4SVVcȌyγ/2M|EiT- nl4:d옙oYNmxwc²6=LNxu?Jq!ӡ%+tyDzh IOq+PIuGQ{.~ 樰Niԫۺ@ &GP/!)2 }DL򨦇Bn!lA\F^C a~9r.'*m88 R@?*`wCcS6k9$HRc>ŭ aTĚƀ7_2o̔e^h)6OS ɲZk틴 \|Lr -F+A t0)(J {hD ϋ/: pZ9Tu-"XvQ?9̈˶?"Dܱ!V*& yY K81P3 ކ'?kd>%gW6 7oŰYB_(bPTLB$.FٟNk h3c*`*ت@Hr`m+1g \[ pMrVg`/?D=+o?qsg8Ű4.d4;PT, / +J~X ䷘K\1c3T( I}})(q<K Y jk '<'*w&\h1=3UK,)tQ3,61ssOli> ʂd b.Lkl:i}dmZJ@ʮɽg_X9@ ί*C,hV,*aO ;B:u= ,x8{_Do ~{C}K Qb4sW P$2)$Tœ:9d׀Gţ"ʵ|1Wjfm!UU| !Y08k2zl M7: L>ݫ.oc' {ZlxHNҽrav|bS>͉qWtB9& <0ϓ< ҭFU! i- K^<{T fYJK6([a4W%%gHY"-&rۙfr,ΖV=Ӑr%gve0JڦSvA:d!D->5Y!!)2TS^P΋ƨB:Jcq=ݍ݈p*$\3 h 1!0dFE1=#SC+C \dfv:dc噷A Z5 AԯݘuD|;Qs~->а;Yk-$ !N/YyC!mF](}|E j`5b;"v i=[_cΦPNLĜ5e#u҈Ϳw4~ׅ_c`IkL5'%,r,? K"US,ɵu{Z("ĄWE}ٜ" jyK`WGF帇pFs rO??z}>{}Trf`7 )5+oO5[):z8jCðzaD,L I I0ꐳM¬*)`sEiҡ.cm:6΁oBS*cIJ[c֛A0tsG sg_\2=&xZ^* OOV5ao΂ŋ{j[z3#reL%h4_FGo`!peyz6ϳ 1s?ŗKlz/f.CC$n$YQMuԊDW*+>J<;FbiICo `9܌r8҅?>ɇG3 agX6cQج5VEAb?k=C `sGW FFZ{VVϭ9WOKE٧K.p.Pȭrf)({7V slҘqtN0$ӻJ4{L/ۖp`~U,‹H  ǜ,29CoCiCVx7u- ,/j,V@A‡ֱdP(߈'bnn&jlz7CuXtmܞs \Cnv^3M=p/?_Tl{g%!QޘHgkϢz͑j`ţlivl+ m]:fkTV w`|9]J?ctຼxR`- n7}+K"4MP;g7z'gX'JI7N47ӌ"Q춚wg`#/< &=T;f~RڵX.~vP4Yq}wd_ pugLwn$s66 >L(/4ȠV+ B͆cJp39wugYBaXqK`2JOS!}^m-^{3F/X .U˩p蒡0x6/O_ ׄD-0yDiu$Ù[Nꑚ݄'~R%4x@ݭZB3.wq{Ox<&TŽ$ԊXD%ú";Pj 4kMkfhSÓ}vy0!qt|bhz#:$tf@^c *<5\zȬBI?ŢAK%J?>.$܏󟝍,@ՈVȋ$ǍFYebB7'ө5y3pۃmbJ6M/ >n{4je~6rfHsʱftO7JJ.nN8j8`gNKB {r{b˂G-Ȑ7HQ1L4p k E3;?any:}|~;U|̹CI1Z=ym1SLJQ&n 䇳L񾙙y-{A׾1DžCVbqIz:~(+LY:XQr~aDͥPeq٢e.Bݻ4@rͽvX>;|M b*)3_BOuqEz39 2O$@0_n+W5L*2Zg7oeh(NL V;q3}H68gFfdLxE* 7qDrL9i Ilx-E2ٌp[hzť]]6'qtqґȫEO|O8ZX~`)SH ؃#-am'=P4QΉG`"shv@2+ZLWkr,M=cIMYcM9g4ߧr܎C?@K码jQz\jdHՂZ~r.U*l Wܜ²\kU+GzeH&Y{PLܮjX_+\lyU.* 7jP_㤕X-{JT ͟xQ Z2(_H,[WfUV0!ǐh/X NtOvuE6WҝԆv0hr <ӎLs:dpq=G Գ Bg#b}yyqZOA0 a; sUY~P2=siV*\53#;"QeD֘qtc 2̨qNKµYbI9mGy=FW7>,cy6"[$i_[#ljdKTk 0~B7~)\65yU w#$=PZ$vhu":rHQcZ ÕiVArX%R,Faz,$M؍]yl:9IѬ3;H62+D5ON'"[䑧f1ˣ?{J\M!-_BWh 'Ai2jkhyg9U4qCL$A⊚Jf-ؾ6-[w4>nҹJz+kVb9s /Âuźy=@/@Z+f` !=05ML2A׼ǎˮBY t\Kz~m }>2`0%M}s!:eH$ gIRrZb;>g. 7XZ Z3^m}OC"+᭸c$ CJ3`3 A}VPn>0C_v/r2Z!1#:VT-`_!ӣ3ɮAm!ίYz/0F)׿ Ql5.&`f\J,E܁5i|ĵ~)A)RkFu%T3FGq6@a2ZG+`;Fre6Je=8vL g2!W՘S|=3Pܖx<eºoPn}Nx`O8@Pƽbg18|?;`~L1ۃ43"p9yo$prU!ӧ3:Fbq!(nJS׻ 巇xvIcKlyTw˻r 72^x%5.ﱪ4AYH&* yq-,%Ȧ=jegŁj~Q Po!zDꨵ+\JL}RCq8rÔ#Bs*̿1S]nxB{N 0(`V+Er[>^wkZz{> y;nJXIJS✧A Ϫv`pգSkk4qfR)`cBI&;Ђűp=QxkOCFeq!}aCs/K}r@"+Roǹ~$^;Kcm6-0r%k>FtTn iӥ+^!3?pOx벊UL˕.}vSJ?qI|x`バRɚ#n*/]w"}^7g|Fh9UK3^\w > o=h6„5QuVp5?^vGyedEbH[;ӈ1Q>om'Kdr5^ѳhmNe|O٫2Hd|s t\) *ZY.̙럣%B'k1FeZ" a`tgcR)NtǦ-tsՒeKS~5j%;"y)xNKG¸U6 iS޵=!0-9jR2#.dNV|V^%荚67+@e/a=8j|!4tyZV=7uIiN=Z=#R<迴Yg5_´nVQ3>)"<~-\>OuNb2 8w%>R/5.aTNE6pg@qEZCܯ+ya.:T YLm gd!;(_|zb=pmP#3SbYkwjWNX|+/|=%b%I܋UVRMgX7'uixySDp{gBXEzTyWS\% :]`G֞3?< 95%h3G=ы;ihYRh RĴqin`51/8xdcỳnNyWٗöQk`",b-uz]%i]Hi9g8j&;rn#GET̤HCleXݫyl]7ha3M%|:t<@"3~&RςJm&eBx6 R8l"9u^x%&?@Eur"nFkR;z Cp+K#"!w1wq%@iuC&sBAGI}}qɭb=9y.#VzKzC񇸲`BZ+)k㰑i& j}Vrľ9vh˩GpM3 F`] rH|{E9L).)SxIV ]x_#!c,go ŋR8]bTE=3$ *j;Le)5LAUAyJqOwwc|Y/(j&pQ-= `}=:*ӊ2JX-0RndȮ*Av | aFV] " Xl䛚<7K!l=<{jYV<[a 8mhOuʁ`ȴ72_đ~)aa,VzVD@_ 8]hY(cܘ01Gӥ7:&쮥e)/iFnZ<l ߵzHnt,@iۖ7WceQ7##|i0,+{4;mDȤ8ݔܺ#c%!kmm:hzGR H84OS)ac{5z^3\N ++$+%8 "8JcUhP"/N̅rk=*oRvQ1|I4r+YmۛaBB\@fo3uj=k^1T-6YR?}\.Qȝp fA{1eawR _%%xt|7kmLs4pM/^?Ֆ XK_M,: {%MURЖ]go3mx'3u8h7Lf^yG;Zk~hVʡҶUhihɊz6*Xa@~/1Jd̸~&Ks"lJE GIj1y{7f \嘤fQ0 .r" 4ƸOtW|,h4Y-"umcKy|Bw,nmjNT>xH\+/ \)X@0z_sQֲ?Oy0T JqcotmgSken?[63V&zhp 6jtM{:;rwڜwm1֩#~O :Su ֡&R8(\BȘ%qz"㜆~Γrw'ٵ1#NYĊ֟(upsп>sr-wL&g%-@-)ie:L5GGKHGk lngP`/e J$JF>L·mvy&sŜ_麷YOԘJDZk6zW^AggU˺Hom]GQ?jlȖ-LbMI}3 Bi?b+&b-8m i1.7b*ج)o{,sPB|b=I6 0 /vW(SN yD\ "~KF`QfVٖVR(dF (g@Ca~f]'A>ڰzbBi(uGG< TIz@3 %a[")K/3D@f"գH /cd^$^ LdW~A|y7&O`b75؈v-,C;a&&X{uf =,:m\bU㪟dutKhz!OpRC]u F.3h~UKKKIp_݉#&8v7HrvqD'!G\vܷD$0סqsAPڗ]p~V]|)dd9dLrjm ]BjeO <8S.^N1BF O<~ PX_rcw]NES lڣ,B\8 d8X:3!pOXdz0{aCq~F!ozK<+Z664:(X ^[9) ؤ!&HR huK\e JS}en,ds̵`S{Tח8OH7}*)Rj)[Q; \,_=ZK?(yTo/m0_;9۶ 7=_,U)S=J h!Ӷqjd}$:8}fCLxSDJC`zI]~xObgK mL:|qlaN<]i4r#yA0j;"rpyS=tr,J뮿$'1k8E &I1mG'2+l;S2II\Z݊"ETp,z03}VBDz𛩬]h&^ 7P4239q-W[֚iS.`{ϡݭG-B! Xj/A3^ngo Ԃ g^M -,Чm1Xm!=r̤ᠹ]*gU<.TbvV4\-מ4f]UP&g[36{7e3„׹Ofr"E@ɩs}eM>Ey3dQV41fUSb[y3Z8iw/(u$/m=*,^\8߰}r6늖V]r`׵Q(戌YG=<6,"yJӮmVIdxeۼL#dʦ80k D ;Y{) OЅ  $D"a}2[Ka_QtF糷u#V:H_@(w%Tc } Ve\,9o>+j9) EWʀXPlǪF-vVv=E4?A!8dz_LGT jr2!͹%8mtܠqEԕoPQ&0qT;(k9ٌy #2K±uYYxԜf3)DCj;׭@06b uIS`Rmd6>T5rQZS<@hq;iqYO?P *Bij鳐B.u/¡a!›)Β_TW*GYtGv[btKd;"I+(8P>NN0UpzkҥkH9+z{%;E8=}aGP{= Q(!oʎ#"f GH<ӑbYpe판:kNѸۥ|GތŚtqͽWE>`*r\QgJcxS#)c_Y/k3XEr ۼgrl8`, c2]ߺ2șuy ܍0{pd~Ƶ<wCI;(|ѺLsF%;&JNX C_ifj1@񀫬~`x17&p;lW3X0SAx>DlS#c)F"٠w, r/&+&RV|0hW4TBM.ǑYE͔PW̾oU# YS2E#vnkD֤rRH2Y1"&2H@Rk_SbuP1?"$;+nfFuev]$Dh$b\/.TZj:'`,@aL ESˤ~" -/FHvʜVcmUPQT?Ҹ=A.!|2}9᧖xQ,``,2Awk,{I ' .5[.od"}c' #:rOz (!\rW(}za>w5W͢OÊ:|LT͕҅Y&8w)qpp -K緽W"B5]ۄbO >l|ܩ D4Sz4<`{3zWA-D-VP J.:YZL?_c HUO\40|e +{CvJ}VCG²G1ow Z4?Ws. nU5\*S矏h1-gy+&w B9M@rYrHDz_辦#o_h?YE*|왃g:9@4ۣr[W˛w狏z*@Nb= -4zy ٸ{}E.~.h\o >,>9qg~` k` 'hb pu8hw?0>E9@L-@#GY)9t=~w(ͤ2_Z[g4m0BDd >ڪk80;Z:ͬjCfX "LC4UԷ X! ='uyzFA3NGE&U]: MG@FG Yχx8jjE`vM8*n @߿κ4G-^TDg2 s'Pi7 D 7Ŗ< "-܎f%12A/>xՏrR[p3fX(29(eslI=v}VAjXOiTMc-{eů~nCLn8",_d%B/J,>) zæ<ڝI&v(Z19t鱤 ۨ3!I͗GKa۽-{Z3yMCPS1Q6l[T$`9BO]F]Q:om굟Go]>;ZAm:uh<0]L3 ,\ !=쉾|4')b\ р39S'- /rY uRa %!eD;"i뿽kiEڡr#OSFZԔNl{M"cJkh52HDCp]>-T7|d[O-ƠB7B eWn3 q~D4v>ox;E5M"kP_ͮL0GM-{H{ PfQŜ*`V=}5,ξl74}KxZ3ǫΌUrM AŶ.KN D]N~`\y~%ed,p[-_wkda1~Yz |hS]e@lGewW#4>jE\۸5  "4e#eu3m!ݮ69yᅾH!״l ijDUj/:f٩;o,ETW 50#g̔ӈ{4vb[?F,up#%PGܤ <}$8^#'4dl[gtgACn+dX ρ4,߸l-$m!(&M^vWʎW 7`/=*6m6<#׏UA<`WgqH,ST*3AMہ8?n!1j*[6N=E_ECzo9STl14t?m,)09*.ZC36r+t?cCvr}ȟ^d=f*gnj=y~ r#+@Mpܿħ:Ae< ·)EI6w! %Ukݢ5_ρ`) YomvJ;)H{[lY8Kuwhi5 6.[5VكVB֧SGzW\b IE5,A6ɜɂok8y,|䋳%EWlU{=&cL/*ܫ;~φ3է>W Զn|S#*N&/pଣ_3Sξػ ξpIK?~MDxN AY2c>6"lI^Ս=M8r{h@~FFT0SOe!V')J=.fʕ:JXsX_ϫ%u.NZe[r\B 8TOmko'M\"Q/>ec/lV ~W&/(44p&ZdF$bK@} i[i9Չ5p ADE8Bڛ[ BLKk _Ō?{/o[d}:ȎGF無j{qܯd sO);:P ٶ ;UL2wb5r\|Ji=&-,0D"^+cwcuf>JjX'!CUjD"K9{d=[`2H]PB$UmgE453]dVRI*r^mH`˘짥Ҩsl,:")O-HVb8@kh#=ЖA\q<[8ܫKB7P?7"_\ U1یvj+iMW?+NyF."&viq*=h)g A3ǘsz3W'p hńl`(zʓa֫5r紾.pqyT&`e.VE ebKO? ̳/DJ2z,-{fsJ- Ο'?Gbk[@v.벟:mǢt/^(:@B6*; N{+ hO.ⵟd , ULUz1P):g{-iMOF '>E fD27F4J`B5J W͜ )HdM:2b)T߼t ~Rjo ywxgHCM-AƊ'tE:=/ewq2BнU/|`AП_W S[\$rN ɋ9{GxNt|0"ƍITojj\>kq%u 3@Y@/K)*{"3M'ӲEO)5 SPG 'M8[k{.YLm8|eÍŕh|eІJk6:ⳂwXdK dCz7D־ѧ/[1* F0$"P x# Lxzg;8Өqsvb_ fXӷi9)4jգ[˨o|q~uU\n6ز@̨roصT3 ix@F6nR؊EZ{.1`ٔwm':2)?l .,+DLh xAgUb-p,M/Pƥ{Ow&S Hㅪ'`h?Sָ!U31Pm2 &V,V E+ +xndzF|+)qlHP=gr-l4틫iJ5w_رcyITs$Qpc=RA`bٵ Fzʁb;9\72*ڜlY7:tƩRgyeQ4/L g9,/@IY/߀j'I_lfSVnpw6 ?5*:g{9ժ)a*K o~Hf(4 a5ENO${00O*W=;逦 1k{H[!b?^jq1]yiSScK7QWɒaŐT.*w,-6Q9z̥O|ّPp_aE+p;49n8f>ӕl}qc˙Zfܻ—P;x G!radh CQ,!L{+C`FdmCh8~d#W*8wͳY56E|@Ћ,W[4IsRUIᄋ~]{uVnևFa_;oYIɑ H2iwNʘMy{uL&[cʐ̴bSY(0f+qǪxŔИ-,$$y{9Zfd 576 A1G.:SěkASJE}lQJ. H1\1RbCU;Ti#IוQ߰eßE'0ZAsYP9H6M VF(%# ITu4.E%LM1=XY?WA&{SȴX lH磒O\E^ nQxyäCT\qMDSݓ(C)H`&׌v6:gmU_[^yC):(!x tml.r]龂NA\4tk s<_7Pۢf GF\skTaAjJIB*۟ ,Q^oeKTh][p)S=Z6U%H LJa2<YȴH%n8B%Fl#\.Ql)@b$oh-B]("I>=I'Nx1KTy`t .yPkQȧr4͖)V'G01G{nέ.aRd{pw2Rf(]c m ״~q= rXw͵[ "9տ״ykM{PCΐ8j:Tz^hl5gJ Sk4-6 UT'Lt'\CaCנZO(;uSB} "=mhVNjP*]'r_m2o(yAAu;ϟҕnR>pIY)5^/޺~\/;"w87Ǿ0)ieI<{a_| f3=nqo٣1* ʈB 0 23%<-yIEɗf,e%.^m<"}ܢvsm (dD} ncXq"M͙na90k|УvZۦى(w¯g e}&1 s[0tm۶9 XiHipu1S/+'鄦TG~<*ߣ zl5;{)QɲD j||ˇz 𡜃 fly72z±W sz$V:M@%R?d5tqwpl*/XhD}]A`Aa@dxd,y)%(;1[~&m~[ 1̈=5๓ǰ RyX=xc8Edܧ7Od׈FǠ6u"l$Bj<.lQˊ 6-(^M.Y}U/ŦQ_\Ij?ʞlt~R#O:10ό!޳BmHB=TB/# _ԀI>k^ BMBf@W7A&P)Z?4h;Pٲ7ɗcl63v4I뛒x+g؊1,Prz\ӕ9@|!sg=bipy•7X|f pH;J3W"IeI# QySn 7*=MٿzJpˈ.6V5=TWPOociy{?vT<+&?ba@={YZDž]3fY_X0W.TJu6r M}WZ"s_4Sʊ)&&\ Ò'kŅYdީ k &o7J@?$HFdi8U@i$+ĩgB׊8‹гig[ >gu- y WV$_T8)j4;\EC\rt$/xѪ?S62-xeLusy]®~خYcP*Ӝt{hiѤG˽,JQ ǚ0} 1۠q]kZ\HqLɝ(۞sA.~@(4Y3fo$4 RmWQuϓ1XbQ:1 70'&|vp75>/9Vl\BebKo{@3lupOt5&.54i[7=B;d]BF|<'m. 4c0m=֠X4-!3 edZ/ᢡBo]X>ZLli%}fwHN_@  ݣA\y!ǘN~`;ȷ #/1}95{}[:NL0rc0]'5}iIͶJ*m'Cأ-̋ʹ{ }0·f}whؽY 3bfW}CDE QD6=l9펇X`ܐY-t.jdzل**Wi8WL7 żE/i.#Rk`iS+uxE@sc9Gq\*B"{ƫ*ߌEG*ʧVsvuVO_AXa0~=B/&&"q~r5m 8ӕ&rM4\Oy/h7,[3hS|z=}}rW @]FA =sdɏ/pTނ&ޫd+b_='Q I2ktJkQ wnc\- ԍŻ: io:zxf" "sB=ry~1*٠PpuNجtjK4`;SB{&?qu4o6T/kП֬(#Tۥ9HZ-8X@V9gw:-.{ևTⓩ<8S&9r=PTQo# eCˀ}0U浬^^lQ7CCEn? ud4h ",P*Yufw,b;3QCBUt,U:l^ғ҄",πw՘o;rvz@JF(nyO1 (\sM{ R Dq ۓ-AՊxwۛI6ϖIDj[n8a |m@%wYV 3w{//|ѺA*qw@R?8~R3- Zj&p|߽R!F|˾ޡx #yoʠs`ä†pNgG55,_w]ȕO]c {^O!ѽ%)sKT qqG%j 4Lz&ehP{X;QMCcB*}z`jtŕuYMpbto7-=Wv[t3/ Lj=FRlIAҧu(^ baJ&ư5&OR *,BMbH}Vk "5(y`< Y_ Ģ8v/!q(zv$0ΡeCV6ʎlD{+o+~mfܚ~YAϐA75nt SCcs \e#uΆ2 Hd=|FÒ1s|Ә8o*gۀj5p6ݓ raVc, cҀB G9x 'IقUd(x }bJ(d+R?Ddn<Q6*bV궺T;Q%YAݏusI[Pv9xΧO sY3q/p̃oV?XS=YF~!*T@p`c;cAncI3F&I`XS3<}@nb4Mk={LGhB)7+?GTrX.Tm0)AL o++F bGu=62F\Fnw`D˰[|l^xoqN0 7N I%iW&{ *h L٩tjȬtY-Y W2\-]OU CN8Jc#BT޵,b&=|`蘄ЕI[s⟁*M3 YH?jH>@!@FtX.jW^)ȃ^Smף.#[YƋ 6:r;JO'gKh'q*8-#efR-J_L}Ș*I=x cNgS \R^NM^uU.ք OhƤI/h0\}: uſk"pVh}_4͂͝hND& ss'V U5eo!)y=s'Yd&'a嚔*T6g=kk ~+V])E\o$Mu,n)Vhn!_ԛXE)Ϲ=ʕ]I`/MVu r 6D~ʯDn%Pǣ*{rTřʋCN9HRkB;Xd<;608a)בr?+=?f?F3g*G&2P`]eS>r3`Cg$h6kz} Z+߇}^֩8]tY #C(Bҟ]??GUsSF7"[(oR'P LxUMO'oHIeD΀G#M6Q9^/0 ϊPK}E~%7<Ǐ[~%pltA<8~t+\euk&NXX25'GA,yv3U.sgvD#:mE]9 1dͱ*bxo" WٽzD)QpT2]KPIgi IhCxu6go<MOM< o?sޔ-o#kxH:lp f*j%M'.6پC)^Cy8K ~я ѶՁXVkQY0;tu(hr;-z;謞A=.@R =5- Wd Ecw>6D/RRGM p)8+bQQ78u^R>r}bPog2 YïS'}A;H`5!VǾ KsBy+LƪeH 5ϫ+4 e\]Y+(sMuThի:VCMvF `Fi؎SthI612$F†Sc䒗 JyҲ DaA|oU쨟 ͗U,(rOZED|zB[|_omaW%̒Ez{ ɁWe|s?i5&zT"9aP}|g CYF!g_ >'$Oňt9UakVNeOo /#L. FVÀ6K}"] a$,T4JΧKD2!h= `Ƿw#;cp6ڕ8ڞ[4: POaU ~UD?iVQ$Qn~I8EI0pE ָIU^?lqe}k—;28ema0T [L>m0TT<xvqr>`$58LTFC̕l i dg^1;z1s!ݭd><<|rMΌ$e;`: U.VSue|1>^!#7Y%D4:y~g3ɧQA嗯ZcT:HdVlѝCnpW"dv.dqg "Ms1Jq5V\d%- ?MCСm&]Rz6X3*իFg+9I,-!D2rWlA;x+̵]o ܣL1ο G-5XqcW2ukj_O&NP#߫R.^OH~Ϟ '6vAfT"7K (׸rix~+==lJr8b+ Njn, (jodE?;\{ҧ\),pgf&R@q/u:^<ǜJV[%7!I=ݿr?DK+*)mdfoJNR8H9:]vu OL؏ivTᣊ{e̒W$#g]9ےߦ<TjN̵M$$lm!Dž(J/Sz `Az/=UId=$m:¿3ꐒnq\T3e[1D|Z" \x$(i Tqts)n*WA Ci\(yi] l* yyQ^Ɯj#yD-$zVH' /k`*1}/E CZh4)?9^I\N`͐4m`;0fl F笥i|HqEhȧjAB{1>\w~4*D &);oz̍ӝĸ@ DlrCfH.ۘtd39[I^0RH߾M!}lZjQKI”ֳ|CUJk"I/<50ZMtXps^3'm G3?kk; I12Go'!Xp=QR-]h"Z}f&[J0F>Pre, w6˼lUYK{y`Kmhj(WQZmB't. jEסg }jw_ Wv`7-"On0ʒNd<=|U',/^6@s(Ya&J+(= Xqz`Y;ΊT[ZRG`1۵*]Ev  !m6~3^_x6!ZGXZ9T:`LJp4ɮ8W"Y^ 0 }09>zKP*~:fe0MţG5.SZW='kK7 H*?s(zj&eua;\J41Eo"@ 2- ޱi9zr˳7 O%:\ܷ'һcde:, 6߁? AЬR]x@mV 0XWiwN<<_GODjhf ᪷@^D.sa aHn7r>cn5;^ !v}nuyv;4 U zP0$`ѷ#| RiOtg,8˪Ba䁖KD]Tl^F=7= N8-g:uk8ZhUPOUWCl³Ė%4R¢F:+MWc<-YJu\{d;sC1Jy eYԝ ` !]KPSY*0 γ57`:u~H VpM<:ֱjՏXlWHXH-"k6i~E5PóM <綌D1oOu^w͕;P 2s߯(,4,c0&\Xq>bXSE?B\{h:8򸵪G}4R$t5CX@s1`d)˘Ց`o=Te;<$G?k[}+)  G UH'O\ werkVųj%Ș1س@Eg(wpكȰZ=ֺ-:CA D; ,=x8S&e-) XTD _MEXdu}>hPMoO`) 0Dc՞b%$ZGH!.eGOzTFC WjU00F֌s͊8 ,G|8a mʹDsduq߷kV6 +hZA4 nD$OdxA fA a *qX|Jgkq&*=$fN UYE1.Xj_v3>ڳ9VZ_ i\lU`,&ߒb=3JK?lk{D3~B)~YNyV1jh}Zhw,@37јq0j 6$#%^1pB]T ZXB؞)8ipψ@Q WQs tNe:e];B$CQX8'.r078+-H2`M^&._-My7䪉6L [ G3Xwo8bd03eԢlbr/V|gfmS?b8=8+>^f;njHQuݍsTFMmٮHczj,JE^OֳS:0knHIR VOXi ?N .sВԘ$9KUDh@4\Mk{aDN`(s0%pA?DUXީ=cb]ʋ⋿{b O*'Xk7稔_E]7Qפݩ5 PT gTpmT4 9МjnŒ;[Cݥ>o @avlֲ. Agp ^|({%Ynk ჻oԳ{29L-2U8O|N+j"+7wlk/\Ph*Yz'UK!,ؐC} wK 2vvS:mYYe~ >CGbֹo`.sl ss%0Z%M6ʾ"1MVV ]A/ yn>ݼM?}9a#|!pCŲ8D͓SE[qmκGN#W<',\k 1:93PAO; NN޼2l"Ԙ% ]_QYvtJfWB2%3$I\an< T12):k֒Ϸ`aT4Jq[HȝLCzpDji 4Z}kL6<ŵ~rUK89 (z:qI?"GKM?I%\DӯɠĀ4|ؿLUeQJ`p"/'X73TokdBl:}6l@;)hsC $*k9?j>7F8~Fv'I9P:Q$ѭb'#\5,^CU( !"$д,"kV$` gCxH2 g^C?|ĕd_7^$m(*qTw/WZ)=3!B5γ$u~Yr\3vXIp߯ RJ ̘@⠑9M"J9al1e+[;\g-X<}ih0$՜۳єQ\0`mNCTEu8|Z?̐aޣL_r5mb˳p2 l܀sHD=l(o ~g`"rI;KI-3@:2wHDRK3ջrFN,h,k$zEqvR]I6̖Slj pՔ9zC0IhU判M(Rltԩ6eZGm`c-ƱuIGJM`3XϞvRC-V_w_r{eoE2V @)ra ]ү?=:lu8fջA"i*}=` gf^A73\HJDp#taT(簢Z1X4KNC_o휆% hh-ÿ˯ 0+}o2g_9e@yJ_Nv#x&ɵKtA%Ǒ5{aiJҌ=H:ֻqZz%T^j+ʶ͋K=H WS\<*[pgMuk߸Qh`m3SjtN[Eb O2MC)ؿ3{'*Jp7}:À_cHx˞d@)| ؏1cmb0 + Y6F]QzV]nhxegnLj@.#-ŨE78(>79t㭴x_{'!PعfԺuɲ_Ž]$7x ݦbVV>y0>z$Ziz䆳<"bP-quQZ)MBHwLE@ش%C"Zfՠ J_1YGJ7įV@_HϕޱlDwK'fɝl~)պ.r2g َ۲*a =:szc \Շ0'WKĖ~_?{J}ߔ1<+ MPc-&swOa)a{YP!K@",Tt+ W\B˃>o:co6ݦgW `UoCŰ+8&(CgURՔ+,LkV\Tӷ;VYzx09q|u} bsG0o%p$_Gw[eR+_((/f;TX\:m] +gd$P0tH:lߺo ӫ¸TB!n=B5@A ڗW<ƒnU͜F ǥ',q^.<E |ƒSS[2P?j=#?{a[R`ҭ/HM hlï8zDLҥj rd+KlH-hCbL`&t;t1M--/EeC#)HK26oOD(g,ު04=.ˊԨo"ˊd˪Rb4wG;O-5Jd*!6e]$f4Ih,~>)&Cu7 tf >Z:QZ׶|>| ~}pW[8[r.N` }Bsܓ _-ڱv3,g1>sSͥ+P^/\m -Xr=qo_*,:˷ooZgW6cUl˗*vg7`a!FH1|7 BceDkLlR(tT)!cƱk&aJ`MN`g|B?dZix5i#ӫܫ{և.>N՘2m;J귛>б3qFH'r7ֳV IYhfMSgʇT2$A2A4Ӧ4CZa/ ce,&ņdߝp*3 j2pyݙdw+ĕ,%1*Q@5!xcAN9uօmSB  ,07 ^Ӏ{#aܗ27Ҥ&">T'ҚP3\ pNw*PdS_ ~o|^ pUl<;;(#g߮S/\';}!+ED[&;%_#txV&ѱok柚^[ߛ|s#Ȯtv:L'eMkMڻqEl9]FRye/:c­E=#a{h2uP]1d+5‰5S@Irș)sAȥf;FС5f>ڹG)(Yy@-v]~s"خO^?kËK`#'DȌNzanWc8\}>G̘Y/ Ho׿&9Դ~ RlF\WOa` ZT`O}~ c =zJ|p㱅o3`dBOl%Zً7+f31) ,ʋ?,ң:1X@^%s6ʾC%ɛU?)y :@c,#U-k?Rܓu/lS,[$f;n*)6R#757\l](׷ZFMq(-ϯq=4eGL?J""bhT0p?0qG-tKŐXx,ix\v v%. j\n!v+xUl[y=巻ի̊=: $RE Abd8X 0-*?2C~ ";?@S) m{r4_I$ksvu镝Ez]Lou43~ӂD]}$mc/|LGYdC?[&[i9Ꞝ#V @IVW$h>,|y, \EJy78^aƒڍ0vCKxlh );>.9 N u2&BulvǤ鰊v)]԰I^ޜ|gF4ӡRE2)R>L"!Vyif)3]Sj3^b"D6(248R,H܋ivjm)YeJ2X%+9hO)o*%lTp/26?"l!tc#t?)` xz%>a񔿱lG zb(T*ƚd\0M`T9 Fq731⌽6w.MB6{<<47h<ˁI]$qOۉ<٣fdP䷤XC%xuo =4FYOgzfeԥǃEww9p}%ժkaĢw@q ca9yRQ.heGvyN:ƚf[Ǟ 5v `at3,a[E~F-S'=~:`~GGDl@^jss? >ŊVB A k7s4w}u7d @;%3/T% b*"'6^ڈ:FѶ\NYoY?\CL[2ɍf$ڢl\APHa(amVs]XaH o`gpS,P\aA+]/)-+iKhApF.=b>4 Kk/U)&J,w=SU9У)P'Ƿ>$L,EG]K`cy;glƬyO;] RfYw4D:P}ǹJ6ao60/taOEh\<귣+Y0FX[kL5%L zPESȠwnQG< BB9U$! yt=uH |7dM-,u0ba' ZG{;`!GC?K7MEF H;Un"Üğ!:rB+6L4rwC5X&H 5y ǚs-m9ܬ,mB˷nE%G Yxo܂<,iw*jcx&N`U9H`C}Ue9rUFqv+垷. )}*f䡮V4>qqm(*Ywa:l^Vi5EGPBEqFZf!I[SUCTn\P |ԗx8}Myg0*zsKF8a] bm%^1;΍0z+OK9 A7OZx ilOv2CLe?]%"B3cn+9hӠ f }cH ʰX`f+rʝG l4,wgOM0Vf}<#0r jutt%W1@bBCPbd5V<[Z$2i$mP$j=7Fb+C<{7^gIi:+ 'ns+[HKgf>f?qfqF=bJLf}D~t.HgkyI4X/#ɌFy sGKHxC]Ԍk_IEr}F +?{XK3aR8mqqbmtWvV#%qx׼3c家{-@cws q >Q_ x~g ^j4As[,^kn?{Rs'^.zΡuHƥ]-z|ZGo>;@kFn|L%Fbuc A b(.Y S' sw /8Kw"\菼*ăm CU|p^m0Z~}X}[]麼Ɉz/i,*e<t4&~֌kR|x#7fmEYv63Μ?G"iO 0e:$1dJlj|FVתD<{tG>ɥUN\(A"#Q\~嚵_r0|Q;ڮjg]Y]k ozW_ԢVdy`P/g(bBf}!v -􄣌3L[6blGr'G,`,ކsAl?݂p65J=i'OY':5Y'SMPYr@ypw)^3; :`,JnG޽+/)y mMYm?P6L-{ʩYh4S4.= c.,hoܧٷ6UB4 ]+]2iC!.) hTUl;P+j -Vj3^ -}~ lHghX.YO`ia1w.M,5 u.j4KjC]&߄.ol>w*uwg*1uĦk|[̏oqڭvmדIY6Ybt&jgiBpW^S1 ЂfK+It|+~ ~5N;^Όb d쒯jaJc kЁ×44і=ɪ2칆kgW[ؠHYWϠH Jɴ<9o2DǸS0#4.qnmK$:Ji{ˎڛ~ߋnj#[QM'Ҕ6λP1W'@"YtG^s\ne'y׽56L<.G z].>_-_ǂ {^)sL4W>V`i<qL}PRoZpw0IE1V yzy Pn舏:T*F]jC8 WÀsS/Əd,RUu#BH`mu/-1p0EW Qߠr+Bvr ((@=Zc[!98~JK䵌1&qi-ѰB^QN7G<*ғŴ'̕P6ͷLǡD K̮3a:k[C=NdRHŕ"yM^?pbu54cm-pb<)M@Qi;~}旐&5yR> (ŤM}<sA󷷳W^zL Ypq*jcGB®=Q6utGYз?ëMʢswnؿu8܄Ȇ#GZqV)>W #Kjx$m{Nזk]ٚzBb4ctBnxziwy u+\,$n> ;i"!l܁(wz[ R+po R,M*G pآ;ӼdCY0>; >+Y0sD\skMZv\R ͚Og_g5z ncӳ܃ :bRl&wa}]b2ߡ`SÞtI`Oy:FPP.(yͩ 25 k}VmSWD<&}xt{E`) s&+>E`\Y-KF-QG35/7~2<|AYiB|d:(1JK608 "? mw3"@yvv%ej"ؑy|ZO%i C;i淮㎬|Cuy 4 ;X{V`JF&.p3dΑ&.xUNI-/])(N}x6;1g-b/IO{9koḑ˖%nwA.3 |ˠ#*ƙ+]W=yoOMrgj/T,3 ,cy5)%]»l=dvpnf,%AB lDy9­,K˯5\U:S5>V&RwJL.jMQa2Tf<.7CT-ПU=|DOjʓ칩b C+#k-*'P~@;˛~wV>ytf/[B%׍%ྋ% A[%(8f叞yF aA'z*\Bob-PYW?.Lfl4kfr+x֫y IoʹW? j.@k5V%-$ό'ppPKU<,ߧ$b79TP{r@G{:id)a mfR*(iWɳ_,vp+Uf%jҢhzjn8,#XJ".͓U6_ '8a`CpŐK(SR|2L-8 0, Tn-QgHmԜf'| =mXR݉dcs ^Uyg!ґj68F"y|7?&蔱Hq ,#ޗ"ۇ\@dhDV(~Qlaqc%s_i,(w7w T}H :[KE{&s]&bߺ x_>%T^: .{U[0i. d˰b=+LC–;k?>hx%ݾluYd,hB"ʾ/BZx7ZhCnD7} |;HdUbAqτh2@Hb!9p%.2°"Vڬ8(bި|Ajl}X AπmCQԸ)dObkj" 7Mrr#Lt<&߼:g'5܉\Oy$oc*'ѧRT? w Y~ِ꤬c:;+hΰɀZ@ z1mIu9C鍘ab9e'2`RU͜~#{9v՟@`)'hTj \)8||'lIuZd6*F @u]֡8V8*JWf(8l20F0:STXt!huk\rFl [%6Ӥ]h֎@sVb)SB*k9rHHFӑ܉ Σ88ZPf BZHT*ܜp?fF+hu}Z(nS[8ęYc^ }c,=R $@}Qfina͇%`o ى`)`Qv _0yGCߏͫ5h% _󭬎y.3 n8joU^ bY:~z6%ǿkte@8]0@;Ӆnw, ~!l3~)&^hL_dej~E5gS|NE X*\ 0I, E:Gc3e EycGL?G >&6`(](yI2~N%O>/>BQtG GܧprQpo2K0D Zƃ[] 3B,\F85}P,߂)" i1gA6ndj,{y?[9>; % `Q>Ee4jS64l+Pip6j;W+]-ð**ͷ8K{%̿:/cD ʮN"0͏_ W FUeN_UNvC!Bq$Ŏ*-D8sNE '/ج'IxNZ%dALsG(h_[[B97=h Rnyo8N͍燘1|`qrOI; oN#f׶S-iH̴ǫ ~/8H˦l9?&Rd539ER64y= 49>}N+y*^=8լoצh|ZyMz س[/1Y32Y1{}zw.'dkv/*|*KӆTƀXGv|R֙;-w6|1Y+ok O8\9XE_=+hQ#jDyQp:.D6mBO|aGU"KQ< \`Sc6UeA pbfTAgU>+f+@yflsAY'%[q$w̏<^.$g`9KP"l^`CXN0maq2 ЩS9ݩyz7f\㭲eHCɒ˦ %|QqODwspc- njȠ`t˅⨠'9#F6(ɟkTkh1Oq FeDQ3ңxe7i7 MSn| Mȁ/e*81 q{CwaoS-0L'KUYdsW(2е~)hhf4 ㎖lpyd2ij7Ō8{=+3I4:e!0}3(\Μ.7:;)ZQc FQcE_B,_QZA'ՙd>PmwoKS@f 2kB¦E~B1Z~M>U &"0 $s/SF(J@MDž̇hV8KBfh:m=Z ߁󡠙dk%>gͦMp=VdSov+GΔ ZέDO}K{Ac_5ZZ?I$mU pd@6IK;;E`iTV F~q每=/ fgWoQndFL*`vs }yh-앻vgݓ;Vz6$Pk!yl]ROm2$Mt Wv3V||I gDE)YTj6g4b<@vWFlTQ*>2iѨ#^Bv6(r^rIVт?$"? w+ћoJG!Ge {h=Tp}_\\_55c`J>u|Kg~)VHD@Xu`_]~މi<=a$5zn[.\xmWx[A;VGO_sRrmhaS!PTL$i)/!_缏n|\a@gL3N[*u9GT<8kާ9 #ಋm)eӑj3vNTSlͭ5̸dm}ÕZWr+E{! YA`u7,f;C ߙ=0큆Qrj<~'țzt VuGƞcy8.j d_x'.KVjR7[b9&Ķ70=Rϐ_:v%b<'n%7@v7B-W3+*e"iMH;u wA 8xړ 2m9 v, ?Ml NWn,\!Fh2ٯ2/K|c \Oxwb^s Ҕ݈KˢHΫgr@@.@>(ۿѻDZpC#s}Ͽl&*|]?l/F(8F>õ!;,j =C4ƒ~ }c9 IE(_Y''m0~AH!hq}A}u=A }%ClQdzO#8}29$#<ELX+X$3; ]6/:Y"=M=z^Uo}L}S6D)róAd'qn&֟Ĩ{M= `* cM oǩ*#,!ct.|C,YX1YCa>(kkյ*B9jx1(2IdMwQet=uQ)2-~Ti K\Rҫ;;ltlN 5h'kڲ(]3@h ʷLlb)[V93MjTnY9$EANﴂB?Q83#oZ/6'1/~:JsK{NB1ǞdJ)D2jic!uXuGS=t-T9Əa~t|zw|O@]錚+zC [C2UuF#$)d!aV*#Gć`=k^lߛs@^Q"F߼u)8N1:f?)JszW0GE 6ؾ9@V{=J_BګvP=Y\O ۺ] ]a|{yF]h=)^r&;|FW &=v6iP)HZh'Jcsjnzu<LY`QYg2F>>+hv3VG]nUh6wi/O[fq,Mln  ]Ʌ/C[OLE8)~&o&S[E)epX-gZDDϽ;(F)o 9!TIwF< ۅxuWTqE9-R=7Lv4BlExodiX[}QNC9ߤގň${5Nf뤰x^2=1\}}I}%keZފ{EԦ(*r+Av+0E(.`D{ hhlU("=}R,p0g3eK5(K vM,ݳNe}D {_V"3G'{֐7#@<73io}U₩zdFl 6,JxZs$qLnN~@|"C Jsl)$5Za&{]AzfX̛@t)QU 8؈4#v 1 OF@It&8?U^׸|vWlP)bmD;&LxLw=h L]e=8Ew(MLp]X]=hЙA8%[ԩ1r8Xf~^m[ Wۃe`v`A$^`ǙIiUG3cyl+7orN!\G#jYIxK]Fѷ8&=x-PO/P5L9׺/=x8֐?B)[2`!1Z]j>E"3E\Y_mOj- PE9,0VWrr8CbF$wdW?Logi8Y{IfY^'ngf7J5*$4塺A\IxL[,&^jY8?웗TN~l'~LfiP~sr jVE$wqGAI9 |+W9hGAIr4Dk2nG5v*='˭ WN( R6ix5AS&zxlB!V{BYܯ1wL\D-9XԃQ 0pMfuXxe16G&@00FNX߿0P7gm/QU5bgCVbHϟԚp&>x*xX_ٞxZ xkMf|ľTՑRsߩ{%j<|> уK1.އkI Vb:to v>%Up/CIȀ80p'!KxqU-_CάögʄNt@cgRT\,\ָzqvv4\6Ϳ&`M)"0V`.[p K uXip:,V1rd O˓!@[(E ȓ6Bs8z#Y^DV<qmkԼֹx|L{X=dԤՇ"K_Bŵ_8OVzw3-DRȖgf c1Np@W\TH.ZrR(5u`|sQأ I&tJ4 ~],>╚Hv<٪XlÜ#AV./)!&qT')9ꜱ-liRENĤڠwIKgrtZ>$IV>ZSLp-p4]J _Y~{Խ]ZED,H?xܮpw @re(d0Сgz#}s\6xƖ+aYlqP$eFi.^k;<~ "Xr$H+ı}‹!R`0{ϐ&S˔ty4~6:wLrEZBmpK@4Hvb.Z@u;W1=/E=)VҥJB&`X\Tx\&ac-S@Zx 㜒]"6X'oɽ _#r?5+#\T`ټѕAqmb-.71P`J`_ob!%GpQZJw2ߠ+~*: |ehz$!If3@[gTb5C~o)w+Ԣ2ohQZ D/Y_FFk;;z̪:(%؃l,V&}E:[Q_ۼ?̻!ۋGw^v ?鯀 h%xՊ+Ό--D)*Q)GSm{Mv;VӣWȤڧQp{6b !%]"@o^b]JՉ=4>u}[e ÁPqIVE=O3e 1Զ_åKvO]~C7o)|%1];r8;]*8GfmH7윾OV&pDŽ~xNQH٭Zگ;ƺ\Uꐣ8iKRn?XK I 9,a_hp*ƃo}YuUd{L;NЍj.s>8jQ6s8If 蟳5ߒ(.d2,my~h8Kγc?Gh.PG8{.|bڥiVRLя] i$Qw8a!TW(,۰"`q_  D$ֲq.$W Hն`R]ϵ"Y/P{*$` [0&˷M!#`ĥ$͵f"<AE:%VIڛvðb-ܕRsPJ2WߧLj>gaz Y_0Hy{j2ܹ:="jYDB_LL,{=7 ,3۵,Pis)eQb@%î^Qy06mhU BJ{W{S#P_x|vރ͆ fݏCr&>ٱ?QG1YbG|luwzbԄ;z ELjD3hsﶖ\R^4i0c l@m>U'%OJꐀk/ڔE**.L2i ( zb#*2Z*V P,|_+[x{?>!7Wbgw!XK@؂%":ƹy{boQTL(E$ር.W;])+aM&NF`zw.O(p[Z1|R&QKQc\)^ p41FIS!gj_i1"HO 3䑓gh.C#{cb?6t& 64 lKR%s#@| azǡ!do+(vgh ~q ɂ-y1n4J*#.}a>לnSD5K ds"p:Jb9:j0 n>_l^]#C1K(eod{cQC}=[&̜#Դ8d="=D;/5%7tvx&J7~ԟ!clMT:ڻpш1Ug%YsL{u[շNUKZW t1^WQoucʦ#Pã^TR=e5;~._k s0> ~Vj[paJ9`S`Ѹ3=\[DnMuz·>[)2f]xz>Mɠ,~ij߀ǀb-Ƚ v^KEߌ7K-&Ts(L3WvmW ءcu \{JʦX~[C!ܿNi)J+߇&&TELk613+KmrKN8pqzaKʁp=~tO ⊄[mp~ s,oa׾f&aʨeY# !I~-^oJ `dM54RrU.y}c 225? ӊ/hb4lPˣ.L1Nq݀Ӊ8 =`rӡ_<`"5:K%(GyN7 B֗jkX YD.>Ow#D^ZT<#DL.]wGiڎX QOU*S%t>f2(bhkiWSd IȖdYQQHbk65. L>D${FjN X$fB6PP"fSJ&+‡¿6\SzGWfOqGvBIId3/s5>oJdgUl ~ ea ^J35 W@2PzK۬xNADPw%3Xgv 貑€_'GF m7TvN} %:WlQb$|B~hJ"B/o|o,?j,PeŤmXHmeo 䃍R-$㤫%|m_d~]p3%=)Ɩ+vfWc  z75`vaN|"z\2XoobƑʔNbr4|1#& @yRC~8@<)ˬ_Fœeka$d1P5G`<LΠ mPY;nN^}Gje34^x~رitdf]zfXin >Ha !(ߋw aWe?{OʨqHO6;A8>=hɁp!k C$`T+:a'4'TcPxh#j1>V UN0Y0ijP(IXyh!/5kb~ `mI5HD~ MrNRl7mZ.+RиZKE_R3ijYXh~ /_Q48ōU@ԞH+5`7i]3MsfÒvFn#& 2ِBK_n& zâ[Lxy)͌7u:NJ9PU܌\# bkƒ|={UM@n~P7rj(UکeL SdtkD'Net{_:żC2᳔lr_RƎ ;'3K=;cAh`2Ifcm&|hLoKU=sm|u:VSEGNѸ{Z/t_sNF{oVEi1alsP%Đ|%|߷/Oz!x[hרuYUJ/NT$ yih2~lAەgǁFPoy޽cdw)Er4,)n煰㖇Z!41O! 9en<?/Z4Vbu@Ӆ)#w`M95qO;qMf.ȏvoѻCUdf/3n-Jɐ|p?5Q;8Gs!(22>Z=s)>(±ȔlS.;(0$&ha$n Z,, W*4I<+l zs8&$Z$4ʯ 3S_oNJ] ЃdV#^8b=i!H;vPbLjjwxjnC78ʧ7(<| Qk Z(Nz>j?J\JaBvLa*wF]ZT'-XH^sȂawRSH 29` 폐 JK (@`̮LMdweQO" 㪇̛AûwGa,FI[kW6W~>`_MF޲w"APg?OYEAi呌zDЅCハh-8x@:b=} u#ԩDE|F厝n BT)gD`@x̵1PEpl*?"{ ,y}*,VLP֓-Ɓv sQ(x*Os4"0x҃^w/-G?8Z*D(5]@NjCؑN.RD`A;WbC{wʷ#Ya_?Д>×ҡC!{/F8*ϱf wȺي@ 'WsILS ^!nG9>vRXK=eR\vfPzwZ[9aoFyMN`'$ӍN*ȿe^$cڧ]Քs&s Z\qoq}qVAt+ u.'f,_!7Iew#9M`HqL!Ih{0COH‘f*P:G!I+#x6 >(S}vQ1{F,y'-=poX1. [U԰iu*=֘MTs''l.!J /e*Ǧ U KEAK7짂Φ Ibǥp]-̑X &Oaʞ̢oj* 4^(wѧ/*uS/ޤ7?Z-cq1K*| #)/dE4Y\mp˴"ID)o)1xH^PNt v]k[|Сѯ/ ,Cw0x/U-9S0o*`v| +UTSS3`g Xma~'H*c=e6n/X^U .]9LI JYx;+ 䞗lG>q䙘?kG|h_-9d?/W;YKK\ `OX\X cl\1۱/3Aa>Aa[ۥ1%2g]#P6c6) z%@0 G| dcg*mK)ΰBbYل-9g'+2 9n%^ER+n5&LbK{"/Dc 2P}\ig;I{ޱnw@d+Z=%qc.'MM 3TsqE)#K̢r!$ A`ý;+Dmh Ls.&n0|¯͝u`y3Gr S 1:SR׍/x=к,>eWMկ `PC`n`'G:+FZnc4Cqmm轫'fz haL_l7aqOnFPnL1Ӓʇ{-YSvYLϫSVH,uq钽C]+ YB":.ϺO3}s-xWH,EC90B wrM^g!#q|c9(.ˎb9l8SMӘ$/>mxcTI4m{nʈj%H [u UɞgDUX<0UE3ȃ/2qRkHn*y`%?;M)ںXe)/ k0ܥD3i諥t+ȩ0igf5LDR2-8^P6~uM8Qz_}nx!:[M}W ɍ \8_W^*L|P+~t醗A¯Wj%7wLВޡH z$GMN?|rMh* ?]:ה\,䏧͒GqX81Mu]zꂿ֑nQX# 4[jMx$p;@j 5qgbN:!t =ڎtˌi'T-Bo4t[$+ ]:X"n []kAv`Rfĭm^2j'w),Pa5q['2{JxiAкI.C-G'y8{i2 I˴&$ yiD3^&oF-mv]3fQ;rXL5 ˪`pO1fb9Q,BK6XX\9cp#jsl}jdO*MF brBg4td`9Nw'5f]PU,bbF!gdϩ/U!ԪҪjv\[k^ .y`vO:EzAoxh*0 N#?[h;6A[L 7hV`Eŭy]{seDdN=F0ٞAS5;ѬŅوas;xՊϒzuMW ~.5T󀏕!fX? !H~@뮢O !; QN'Fy3="O5;-|YP!"35F[DG<3eH+DQIy'\n|wN$|tb\"Ox̠ 5hR+@,$W%MY 2gZ _Nk8徺Y(y-]üF!VH4c.ӂl#ߣIOT4m! :i.׆O>rl~*7b|E+I_ Ľ{Dݪ:8-$Um? r+kŽg 7.du@0Y+‰Gooof [ۀ"m7< R=jVk2B P8殃j[~ Xly,G4z7˱u _ DvOBTߛ#ѾGә['|kvGpWVI]g`aڒc4>Qr*V1\*jXD;#D@ڒsJi:g1ܳ㣠>6cLgRg֗a7HON̈p-Laxl?"5_oe9Nj*v7.uQH!'|+$>|Dg<)mՠtK >kBu_h4[ybyAcE W o 0EÂ2 [M``quډeX*]э Wn^a=9 0$$ ID @:")@իN ! "y+dyZ/Ųe/uį4,%tp*f  Nל`d`*SaOTxEח颁q *Uv2IZ't&8!r??`]5J7ヲIzzn+]Sm6b r޷iR, 8'eŎE~qtQgRLOzW8)U_c{s~NXK0d<F~C]$I1>W Z'JdQޡ73cж??뿆vx'(fRs1(qڤU_!xe{"v[_S!%x9FǎI[ruO(ٴ[͈c >D:W-k,TB1LF9@buQO{φ5h0uhhVQLUsSó+ @߶RcƹBƜWDBJCI])~rFn~Y)LW@vPLcI^ׇ;*>A& .:lZCk!N޷i1oT a}OqV+W}ǼؘbKuB~~֋UcbYcmxA*H֤4ib¿u]rb)})HO'ꦺg4n SRţӬw-tñ?t."m*ih!pgp'A,(C& >K_w:;(Z)?ă儯%RcMXa!N̬.+!I@s_N tBZ\.uP4/uu_+dUam"ٱ0-/SN@#ֵD9ڥiڮ0  UXRx>%dmTy>ntcJ !:wUM榤>cGPS`!.AA*J9 ١m ڀ҄O[yQɡTZ؉]Um/$Y/8}.>ŧ)<;pLG{h!a1J }A/#9ԃۚIb{'Rwȉ)P ic \ߛ3M˔1^TnDҠ :Zo>D٧peIvz+} =%q]Č1Zʼn7`!ʤ%t8]:FO9v n8ypBBy|zdXGkYN<ġl$rz["7 [rlh3\?#($&!i9XtrJ'PJ#D)c|SiE6Iz}7_QEs+;^V27z*#tAn>a=BCpI|&ˀ—^ͧcZ )'ݟ)kK70Sر:֡a30RV%ԁlj9"䣇jTg<1$iH_Ҡ)e+a:#i^{}=(:RbyY `hvsO 75i1.,%)O`]Ӕ t+ȦٮaOU @F_ٍ7S}sug<] ¬F*13'Sެl瀎<[9NPnKҦc|'[xyt0 <HU~T;YC2qNǓS8pOXn>} HGڗ̥3 RE=z! kb Ѧ* 34HljsCn  8Gx%KXTTE8҃<(\ΙqOl㿨zT8zVjutgͲbnsZ4Z+e$nҋ)'/Jp:D;~xY[5VjT3$& fbnz:#C?s/)0v2l#A&eﻭ __D) ߐ#Z̟!'1НrTܴ;`q+X^OpotdQhJٟ2 uGLd&{.CسĭIfp/$|gax j!HJ~߉<wb'0vN:?R ׶JԝmO's 8hB }$-s9~nYu5$KǚP:BE_ qw=nYy6;{IB&Os&m@o $ 8[E@acڊdj52hoP!ab9L.eeTC7(r4 %HlM-/ZП3Mz3`!~(ujRE&Z [Z\m>x# qoMɊ-%Z@xY\ok7Lމȥ^V K"/ĝgKIR Φ5<>Ev@2mEfؒudЈ,AWI7iK4!ܬ&ox{)r?WYKg)tnlyi v^8J c:^re$݉rۀeE01+Ae S1S)vwm[ЋVZG7ִ-FD M$rH:rxPj~iٳ!n'xcxCjD!Sk`Y:AkxyP0l #2T7mT[P7y=UEg}Á'hO/N+gJ&qfwEBBg$5 A9nV, _\3 flT $?q OmVޒ,])|Ue68}D՜3N_[Z֧ғxyxHoX'KSG'vaƇUbT1WunN7_`0'u>k.Gp˱*y{*fb$rwc8,^Tx6+*3ʟ΍?ή.-iUZ`(v)AOBxg S c2WrO5JAԦϼˣ• sqIG$Ƈ7)GYds3&nLagjaJm]^łv!$TAj{~(eW]bg/pґ^j!W恘f9x?|}n`.Ȯ6!tнwUNrK ~Id]Phtϊv6"/ *g||"5 [|}\Y̨,rP MzssR[ J+ [,08?W r{Y" }(ՅWqj~+ICӲc*N¢Vr6{;22sSÏ֮-%#T4P8 LAN:4~4V#02f'8w 0%qN#o{ʶZ8ō@iW3]ׯϩw_m3i*4ŮeU\笛cDp djVxiR&Nudu1XfxoɐQSNu%p['G!.n@i&$8ؽ{yzۀrw/wqQ_A\JKbMxتJ7@ 6/,B1Ne!?/{*<$k?H#fi:>F:dD&8F-X}ZAȲ*^j%id[or{FgxP-l-,gntg6= :,0xV/+w?V1F\"xץėsӷR׿?yY2hح6(5BcBhw,yׇɿ8IQ}[Ng$x:.8w?r;lI NV7/Z x60\2G# YRV07(";rlEta=b, X?M\7-hUt̐e]-_Tп&Y͡"ߝw"`嘥5`M nXX[tcyNzRE'@&i.L'X.j/]L^,#]ܞt(O5K~o#y/^Vn[+w Όn"W:sCGM!ы 'gS ~/3 jsKPz{]Lkvw!3Mjn)y5j e!Z7 -Qz$ߙu`,=C^D־ WHW82.(#&Q}KTAs_kxnj9~NZ?h?pe"0`  H0ukb#'&z =~}IA].B&/6(l)9?{taXt2U^] nj>J0?Ƀ9}cv̞B'gcGU|8u.y~ii'e -]WȜٱ?r/(魥mHQri3;Ă_pmx 9U g5TNބt"{sS8:~QJaP)v=/vbB:⊟|4̾!xJ]|PT xKk.IYwn,0~-̻9ǢK2ѹ쳕ePr|Lz]mh\c"^`ZImve&M ޣs?-ew-,%I/XͷH7+m][ńS05OnW7Q,t9 g?vq,vS?M&δBglV+|dRg N[>UkaiYAMЁhNk'QsQd%&`/Њ:UbE<#-c[Cc_ )G Q"@,\XJ:Q.~VL+H0A/\Vaג{d9賍Ӑ@M9g0𓬨nBq`D TTŋ'puUmHIipΙ iZu)Q򃈩~?[űs{p5ŏT0=66IT!4u+j񸬋3bc=LPd4yӼ-rBJ񍏻0'GQB Iӯ\jvCl-pf7BΚRaa>Xp}F6fݜ')nX85@f]*poc[OuW7E 7ű77&{qtײ(Iۣe#Z#s6G my16^#^Ԝ$t"z0hj␼ Io󚅮 ?wLf_O07L2~ELSw]ˈpxwC_j~HKo˺yfIrT/}9EKAHY!"ǁ Djǡe? WP:~˕6E#^{C)@5}-2PI!I֩G+^/q,# TkO/)ڈ?rޭ[p!S%bOC4> uȸNr 2oz11Ȩ6y#RzuevuSBi̛Z@4L/g\CE-M-Եpbj0J݌~Bg1?An\Uʿ28餱OtKվښRr׳IDRY0=_*i䛕]ElpNIsŒF5έc7bnLv 67[zI*asGls4Y|"nf4OR]+_SQoVmPRD#K6(?]ѩ%j;ӧ_Vq#=چK^:~$;/sV_&2}_0jW!gnI߃ش3ˮLft%p` 9,z71(sq~x}%iC,sYx4M7]d TDzhbcZv|*>՘u:צXuK8"gq7"X) %?\,_ RYQs*w@n"?&R|3Kt3+GS+*cL"⇒vVHM[\j)CHB*GT@(qa]x-DSvR]K'w]嵓#Bb<-!@V W?Ἲ=5챯҇3sGPZǍ_( y:biL}čz^mԗΙRa>n&~ŝy$`]1;7iF|~bS ZRmb6G-ON g90#RU5E >a/ {S~ri*@q,C GXg(PQnBl{  5\2VU(<1zfIDkR8H}/E\~rw8u?ߙp3OyU[|a.)Q{lL 1@du/4,^^rl2 OcBrɚpW 0(6E+_`=A:^ ~VytW%!Î&1+ f1;MFI&Jv~^e`}ߞo%wBIQkZ`C9*#ȧc  6DBE{ZJH,1yfk^ME"h1M[H W?a܂mh~ Qh=~4Oчb%HcEqC[jyGT7εYy2V"Bٯ;7CWبI0ҫ+l6; Lqo@5rB7:Y)enːvJ]JEuu#:2¦N\>P?$~Ÿ҇/8k[B#*3[q4aOU!1&] ; E]L%YӆW.-~qp#KV%'oR"iv[5;-pa%Mzs̗<-:Yy*GAhAq N`n˰=Q7|x{+]/~7]@颁%85ɜs#P#r n FZXB? Mg +YdȔqlaLpeOth_Ū{_1q~)vT63C:s:%#0Ƞf,ݓ+T9|SQ}zAI7]TAM=$Vj.TwXz5"0FmDZP"|>1Y(n:֝2[J tBjإ 9]\JgoYd@i~) im0a&_Sa7ǢPNxJ*d8~Ѩ\DӸ.L\LM@-g+Yʞ(9[wt:k*4{kI @Z.ΫnL0d  /rrpSSJ)a 0'{ɦzx9/I%kb[:7Cnl* N .;EZY@q,q=Vъ}}rSCt[>R/$cm"~.IQI >?d+(4-df*c{Al}Z+KΛ@r˘ $0έ@DUXr{ѷ,W绣@z)ш} 8'okOMtq$/|q#o(couL,)=` ^򜵇zI*N02HهsHm*u=zWeo\*eG犷)vrrb.c]N1 i(ۺB\~!I> zEae[DtXNSs7,M']LWWvp?E}zQC~tpx2ZlKyO@X;SSO?0qǎ<|Ff0A5"݌#CXaeXgkU cr0J cf~U!Z)hiw!$VM<.**ACBAF'iFB?R؈&ll9lj5N47Nd(#:a-Mť"!dpR<6Ͱ>Z=gkJ0C)]6 -8;ԃ1.jXAl&n+NgqZ ci8 %eG>xk$'|=N곀NzVQV*_7?zMd<.IejJ/(-ȶzuXo)t*Lm=Uιx:\#&m`[AClsfVtl>wՑӿ",zݪ4v {cFKN9a6j>ˊ 1i@0=5§rt-G "}Ό4t$N:GEE+轞%gV̐A 9(i-ȅ-~Ȝ\ η gC) Jnj%)FWgOsQlVUTCS]YPoԿL=4˃XD˓tS7 eS:TXSL1FwFX1#tYo5,.`GM98UdzWB90 \pF_PD c_j6U&9!U uV9?f7 %2XfE#@<&; |Z'ivW?|,ΠvRiikwXZdybbp(fw'8τjrLp :Lt ]oC-f„6F.5sUZYzy<:+ɗxYQ"3"I=:i|$OVWC%G~!'k>^3}PIAżza9 pêTvlځ|(yp-L[~/0/ˀ*MI@bHAVcɲ=(hl9%Zi@8n/&ZXX 7⡇k}_Z Ŏ7DCK U3ڦqK[^wⶌ rME*A"oov%%R1=+^=̑#I75vF|{GtN*e~:}rc8oN`F䗲lS Ci~,SV4kQOٳP P1K|`3ΉsA,JmճFr y]56"l Gj2 lѫqaZ }ή46M}:ٞp/Ș;eG{4A#w? L%ԷqN(`CbػY0) Bq8"pJ2`s* GNYa5oݨjk`~M> D-%2&-ؼLKЁh2jϬ~a`|^[fR >ucO:\QL3GC ХC-,yYsT84kr~Z9rfd@_@1w$FVwzc u @[D *bztC#SI/_3%"ê~S&?*mPH[+\:Ss_ E;᫏ۤwKTJaVk/4U wiKp*qo">v)c{ d@I98F)Bj~Fd-ɓڈpOOFO}fBCvVҗCmByN\Rh8\^ +|BGAAv!S̃SIv?Ϲ9UJXυ=~~Ծ^>I}E(hTgo6Jy ږQA.ng!}7UK Rc2+zvTzrGb3sf _p½d͈^Oei8{P-)Y` ݪjGcX(y'|#C j+D^~l|Z^|)`V6䯵u 4˥Һ;KiJ!"[ 9>Ӱ|" vOd \Cxm}^2X(b&6b RUAc`{潋e1>| $@Co_Y㾩5HU8OZkR ~1ZAe6i3eGonZ,XG(ini8ѷH2hqj0FN/eutPlprTΚ#~?(+d!ig=_mo9i@qXm<[)Ky+~1KU7w0;{T6GX ~/mܲn)\9Q(~[m "u &z mZPJ9DE|mCb m"p>{OedMUU?Q+b7f5$Eqd e$lTfadu!40O#JO=~x.!6cnKP|fJ{M]5X2ѩ,X#?,VԊ +xSZJU eVsJnqNtTU䏯x3vVgw &7X!CN ȓыsI@* xF9l\9qD**W^ [1O_*-m ǝe"]&g;A^vqz p8V ?Xܰ0WI,"e(`~/0gq8%T'y1VH&M~屈†y&11^IKBv׭ umERG$J>Ѥ]i731rkSONvLb xAXzj4P|!쫫F% $Ԙ&ЄXhNuAKw?.h`bThP 0uEuy۪xïMc$SiK{ȐX?~2L` 0-{4{I [+΁ X2 EؤHWEJȆ560?6^?0kQ5{0&\N FyhaEjxoK Յ6ü 15p uDfg`_/pwl8ungR Ƥʛ#U _=l' 2)_v \$[+,Ip#bEpw[/j*)QfNR=.%|O6d,bk+ ^n'W``tN{? Ldtf$hg%F Җo8Q($*QIJfh~wB1.?8V-cV'j(fmr'*m<”Qjc .` `R cث{T$r*YӄJmЧIz.F_A"x6?):&-͝qp>`h~RB*Io$ĥ6<%KgԻ2#&9 CW=o@&Ce_;<<{\%qCeN9:Y弸e#9]mRqxaϿdlqJ@);V~aMB&jW%NVCȨ ]=Tn9$\ɒ2s|E ZvgNN/*ZT:rdY[!.pȟK.o/;:1ITo`|~9Å|`UcVkynt`qW(lBq[lFed^?#?l_-(&{:Z[wuӊ$7:OWo'aز 3Uvz} DMɹ LEAjb %a +L^ =Iy0HYv:3,=9V CSa[#_[98,n22e,Ixo2؜˜->oi3veJrTU%Incۚ-yڮԸJz7]6SyVԦggC-#D\nH|h1ގi1+;Fp51·n/uuR:*! J# !Ek4߮?@Gڧ]}>bRXV+De.tT\Q#\}piŠn&mH#!#y;v jAh5x%NBW\<)PC:/$1 :πQ3x"]=8sĜ[u9-ko&~K0鉓ڠ(ZbJeт:'mI͐k] S:1K j  đDøs ^^lpYqD k\C5z R\5$ǻ,{uuߪgL=8 uB,Gf^-:6} Y0L=p}|=%\+}Vbc9 _+|%[[1I5&9勴o~ @Y2U^$R<Œ: tic?qҋB¤hW{4oMe0MwNER{bt&<7xr:yRˣҔv;27=Bn ,RY^wC/oByݑ+o!nfLJ\NU"`h޹Zw7Uu{&VMV"Ӟʭ Yy?i|h 3UJ:Φ&E ^Yq8D!x+Û. sY=C*HSAP3nԮ 6s_(_L@mʝݱB4~-%%v摓V䬾wJT-em YeP( ?ihP%wcJ9srH.L_A>݁ht?M #p/c3`mo[xqҼ2r" #皳Dq<`yAbH5J3ntKS3nX',-e6|ۯ(e,TUO+tIIұϪ lUEېv-D) $rmo0プAnI@h ¯;Wر -m 125;8,Li?' ށ8T)Akj2Ahjzs[XO1kf_ ;ý{;[6[co=_|0gb%RÔHiWxY4ICI:Ί3[bh QROʢ \LVUw&c$ ^ L-xrM%;u.3y#*슠7!j$#C ?ZVqvpVrgߥ[(GlEŽp21g}.?aD*N2$N0G.Fdz סQ_ I}Ngh~O%-$cGcU8e0K?# 2 撉URnu('9?H׳ Jوh`a)/\6ijkrY;!6~U*9%7Ty| ̎EW+TN)e EIM`uP ۛicYC˒gE`NoF:p<@@FTd%VΑ~ϲɗtfb4HX!ȀÈXid.5ȿ9y! ,9єx8G>r$EiI=m3ۂ٪=ŏ".|z!ܺ #!usPd_-w@Rٸ5p9"V'<)a&JXx*Mw8~WZyrE:S%x Nio1ċ;i]vȂTG(J]:ߺP̫ܿ$~vDQf:)e$2(zW/: 167sH e_t!J+scl˾ieZ>!(yn ,l:́XLL; ,:%iKùedf_co""@h?TIm8.x4^J>U]XʞM)P}iuP5t փkyHQJf^kv#h3JԎHꍎǽ;^+&c%1DҺ 63`n/c<¶~d\E,%$V8z v}.&A V5N՞4^'=4OV+<9x.jgid ʰKR(}q 8ţNk:T^^Dq1**`‹ a2C 7PeZ"K2wf%~&k'L. QDu=">4=?ZRmu}OI0 m}*&&0T%B$n  C~4%d^ʨ1^ -IsUY98-,|y%unDG!b@$33e^KNN A^r,|L6.s0ȵaߊ>ݼqD_[ΔH@zQ+ckGEeFRJI B]W$ktaB$R`" poK.wSX,34Q饐AjBXP1{y_AҹR-l֯`N 5oxe:yQTYvP9B6~xSk4]/I^0EyىqOD(*ke',"#S"F%rbnI[.Y*a/PI~T !,L"`vw'52Bqjd''I=o<!uNrzcW03?σuh6v"?^`{e%ZMB*^H05 Uuh)ah)וKFnZo:J.+AL6j0&S_e&)V3j ' o[s*3ϋux =G74#ܧ6?uRSsOplJ uYGi#rG2$3OfG%QG'Zl{Ǔ' hGĘMCB湐)is7F^a0n)sy σGJ}_*<C|j-ʟz2!nޢx R`]|rdS֙ Vo$I =bfcᙁcV!=R5P=N sM_-bYuk.🣎 |nXi x_y#c{%̑(͸P;8Qs{G^A9gSr\7T{1|/qA*λf^}|(8p?躏oBOaURZmx ؎]q=tr&gŒˬ2/ ރMqBgυLe*2lE!dF>٘4"PUdh3&C\5n/,,)+toJqұOjƠ vY[~_άLa%>Lt9BR ERY[t^sEOBhs`@DPfVZnG hOŀe֒fh5 O1i,àZoMki WnB0F&E+mT e- Y{f,-PEc挻 YJEA{[ %3/[}Z%漢vE"jކ '^mCa}P 0?Xq fJIC Hʓԇs #)ϽR[va}ê.nWU7ׯПy^W;!Rq874$t^\"cA< C%~N<1tZ,FYqSeЇnG *' Q˲OΌ ߨC7BJ܇:۱sAG/| ;[O.UES&[iա69l:!xUɅ?hEy|o\eV*l>/)d?pE#4ӌ{c32b^xV^!ӴGFsB.8#_*AֽUSw ͟hnzU⯁Y%M^0PG/gxā'}M ŁGVI<ZQ ?F< gs/ \VWO#{8^T4˺j:y=k3]}eT"יȢ0 +e8Աz) N^5~yOq8G*:ݺ!ǻHm6S} shqODxv$GeI]KSʅu3b:_AQ#Dr}+;:_ʤ*ymSa06LE4jLw.z ܭ 5H7٥ph#H dLǻ; +(|}'Ubp9&||8ЋQ`sRzI' N%x$f/vw;HgrI.%.4ɲn&N;M-g罹vڑNvѦAf2!C^ HPD;~4峼w1%y 5?{##5yvu+uٗs.Fsk$FmWTOē@{[\tj]Kcכn\H.3aBJ(Dy!j N^<s:k%& iIv ~nLv_A FLbMЇ ]{nRl86 Q,'jti=4iķ~yd]8=;T(O2@1Qiz )F;K 5%P{/!\Eqӛ,'ɚ$эy񦝨Bg]N|LD9.#E"t a{2faƛx?vA2ۈ*]ʿ-Ћ%tɲЂ Lb?-DLDZTⴖlY6"{7\P5^`v4Ʌdm+:HMAZuHj$n x ˌb9fQWrOUM_.7cE@r#O WkH(#eӑǯa}Ŀ;n4a4i';jVCw@kr| jy_r9=hN38E"-GSE^{_ظF(w]IC$*[\"Xz9d- !Qi>hc}&Ŭ2Ӂ?FәJ)򙚸Co.8MiuQ0C+~RpHX("Vu)-^JEGwxrDD`Ɗ[AVKMP $aHmm_C7|~Nϳ$lRs0}3n_6͉m9K#/~h?loׅ {K(LԬkōY%@`ԉRytQuG ]\5h:[v+a_@8sNk**8~k-9Q6=gf-ߡ=H6@U~FuoxUR(z]ٚNw̦ZBL x+„`Je+EM8y:l4ql˜aU›S~m$m{agurր/ӰSVrXM5PĻǖTKh2A4? 2 }\uIa{UO/9R1 s$Qm;ng`CnU^z$ŢWJ.0bz_H?ؑF/<(wSBm\ zu P2OjqJEVlT`yOc2)QֵqxAd XCQ0G߽b9;f"Yk-i;*aǥ\,Ct|&K޷?HV#mPnߒp!W`8c3PZ!yP?~=V.F 6m JҡA'uFvR.ߴ,rKg2!O]|4A ^dJa4Fϼz[u(YKڒ#1W h+]ؘSZ73$?Z\أD<eU[t]R7; 1NGR:FOħa-){]ޑPb[̌P| 6gZlq8&LiqVɵ7Gg@ʶ"c MWB^w#叛ER[y7@:H /e0(I$ G0bEhγPP;z3*P:NnŃ;TWNW2 ׄC]-*/Sm r 2z{e۽'YHr[`'7슌v96h 낇PogÖԍlb[Q⸇ԏ?*i NL%C5H'4Wgލ Ģ_ȫqɿE'b0n)%#d (WlPGuɧ'sP\# b˴s 9(A.C5?qrC F{ؒĚ]l&ČI$4MŠ뉛N2 nV)*VvDV!F\3d6lԠS0-+smAF,yv1~lBZ0pd {\ۡ_ȧ2RHC Ijj0QK{V" %f1SFgtP 83g?gr'pe;]+.5oN.^֟#le nvDʺ!ȾU dLuiMeS,%Ua ⛾`8eUm %"d9CQ#maDeVĎu"/&bZݹPfUx|O"k&ʘ7v椰d(I5S\m;7vWe y[`ܮYYjnSʑH#E<= -,(PN6!zlQ.m*rq{&( 0 ycKN8ʙwTwɉCN,g rPXvDO~3n )KQ 'EfnV$vPaL5zeJ?wfA3j&+IPBͼ"*'7y-" =(cI" Yuf߃`>Vlm)r`g#<ĥ"I\ A6P.آG{hməo &8P ie*dz 9kw,ʹǟtx&hkFc3+jl O1Ǫp깜6ͨ޾ T8u,@Q0¯9a#OqJ/ yC!*}O+Q6'"ξe~U̹4_"(a--hps3ZXR2ςRk \*C19X=][BYSߕz*$ZgzYL{IyB.5tR~~O>H*5RƉP0]3o O9^tGK&+[t{ۧlZJ]uyޝwߓT'ǡeCU225bB6{˒Njsw0EеS.ȷ d*k^ȃwW?UxLr!'кRE^!d`Wзe;YyV#A,!ɯvzehe|MXzq qqc)nnzPV 7c0r JN yd2w{wYtbE3:7Sy]d=1{t*/- R~rVd*s]&aALy rD8)nIHwxDVUwyOBNcJe//kf[vvbP.o+Һ5-2 X7J/YgIýq jC%WD'`&]W.!N[/۟'w7?09kkV[Z5hDO/PމHGB , IRqLdZ|%(#7 Xa@X}֤:G]5yS~ { @_1FTF3E<7q˙jT\?aAnr[ JlOSty.K-s.7b"@hm皢K~VZnȀ03.87%}-~a(>t` idUU&Wq=TK Ҍ&X@:),Xo|͍R)-o\umO,'(yNp,ThQ.$|x@t#N s1( 䁊8 k?I]TuD,;t,֍ױ K?|J #kuOtV& &Ft"t0_&>|5Zlqs#N nƢ\KV L9*A Yh;Pʪfbcڙ '⑛&ϋqW ;i(>E59BZېҙ\ 43H LNR2-ļJd2֨-48 <9 YK4}z RE^.Бذ+:}'Ӻp]4ͧ\xZfDb237xVYY,gN^l|]0@ Ϻp\G֪L(lZ>ћ=ʟB؊/V+]x3nQhopP(kR[XNb㹚G&%&M,YqOT=w@";PIoR7.0IԖP{r˼j~ &rl=R[؉`z>=_9f R{eϐ;Ta|-T"d_01x0`))c1#c]wA~T V$p~/2,# GZİJe)W!+9BmvڈmhoETWc"QsY8e?CPO!;њjck%&{7ccW5yeT/^T&aM4>!X]9Wzfdyt]&&\-0r@ <>YyoW5P>6?̏qkC>!*&wBKצDfU搜jgcth{E-h5kP4w^aJW}y37V=[iSɩ ja^qFL2>S ?ြ obt"7"+Zv~6Wj\0b<3;.TIK,y%xZ/Z+l_QC=u*jun}oUV6W 86* 4c!^*Z. E,twW%,L ὖy¸XRDVt_O3R\mn = ѯG8^t*H!_=GF)5Km%+l-| aQ90J(k̘}ynPPpxܢkk䪙q4ϮA}& i@{J~"2`Iqi Hg }0"]`3F)f 0S6NW=c3ZTZXkz~7h|xCA7evZ\A 캬HS[`QW%a¼5ӋǰGcB~f=U*%^jVoG{[ ^ MJZw>4dm6#I?s0JgL`=r/C*8 7nib{D4M]0k0*qϠ$3:@4>c/Όx"8 Xż 4\ o>%f5qQRχṛ|:φ: + qb,v$FiG1p\bͮ Y!B-3t|MmYG?Tg#;wZ~o|AtfQj p}dV\2Rۖ&98?2r\V29 \o%=I384[-yMJewSsUcsio=g^aiMgЦVN͇QOל ) 'ްF'mW#j; W ʅ-IKff<{22~ C^%ڪ_ozX ʔ>6W`@4o$c<>$?3nu7@ZwmأrX;qfH7m{GNV$gg5. vˊ.ͪq?k$W~*B7@T" [ovqC/|}E}nڗ5e^@` F1&]h-}1^}7FZ_HNvgx$1fHVZf-U!U,1xZܔjsKz>¶_AC R9%6n%%{r醷=}K2o'gf?:=͈edցAS)UlItٵ.n=|ם'66+A*>/t[C;>H  x 䞥?3j4YxE=ЫVEN8z1TUbA 'Ut>!(.C13/!k#2rU}^ҩD@u>@$~:L9t'xѹcu~͌Oͧ!X mqMFr$4ː\uiS@ځK8/޳Tz뢠H僂 [Y|+ͩ}e~ rY0j #g~܊M4y?<43Ry ԥsҜgi0tFۂjmU"ZKT69d^s\m߲!ktvM`79xssΉg;=+/;.K []eM `5\T;Y}ڈJl„qB;m`R@euJA3G0Zxs5D#|L^tgCK&/(ە'9W(*ay(:M߷r; VRbjOX QijC;au{Ny}D{p=RFT Eθit#|:)T\TZP>ϵnm{dRh=G@6vMǓ{{ޣSZe+5G>dABU~&'/Ou#Vz0O54?30 BcBFmW2#5{; /ŐInva?izJ0$B1 w!P{hO=] |'X.b,ݱr8u @g=igtJSjT OSAfrwMGc%.eW`˄ԅG|\\Ē[ vϊrZ 28ecY]Uio[UPL)?g40 ӌ  9u"{w9>`Ԓі[bo!Z zVGw]Z.0 c%z"Q iUmzGH%p47PFBr؜d^`*~uycʕ$ _.N!2 a/-1T} +ȧCHIh=Y6a1MY޹d 1ҠDςfY8/C{0B5v_NieP"~|ƥK-8P%ꇩ@kp q.h$h4jc(VzT"cՐ4MS/5#9~s8C >3}xe<+l1 @iY/$Sxbw.ԾKco)cl2)|%X8PO`V6?EQb6ge6aEvloǷnmy9ra3W_nNu_f"Յbr7B^q-aYjv'/ :@|II!!a 㖼3e(@[Pa1i32%$:mA.sz#`[($"Y cAp`QOf%oGK"//$Xsb Y bɞ*wlf%[ZsM,Y}/p WGČH|+SE5A<%xeQ%{¥7>+9g9 ?t#jdèID[? @Bsrt:_TQsTF ct*qu'olJgZ4 ;⡅If&@ڱa# ^Y[m[ EtO)PBR">V}߫Lc s̑珡>*r4 2)ZZh{3~nc6`%'0 #gzc#;zP 5;.5M֟//5_(3L?r-b+ Q4'>68b/ADpa'_nU&@%6W+,0{·\ٮ ?X)X^;t]=[`8rYCzoJѳ~D} ![x=L}3_J|UMOlZEd.ZPl"&Y&y:)mQ"![$eK%ʮ}sR)?!F#q[]E`~"\qGԟxۦwGB5 qI6@gv\*7vkuU2itN2V#G)c*wwL\ N_KmGI Bec2精cܪ|Ék(1]9:;3Gh|-> aI.0.WJQ(C(<&vo1^w( @&=?v^`Ņc  ߕud0C_90xANpܰ99#.k ΓIZK\bj+$ Y.7&.Sy463=F Ώ$3wCkկ6Nb0*ۏy^rd KVҚ"Kdۆs}RUAE aP,2鼗Áa > ŷOzz8zӼ&#z) Ӥn; EqCpK-jjA% |}g!\ @BG-$F1Α@㮵 ])aCCZ08$<)Rf9{̐6'/E?smZ;'k( P? ٵ}aCsHӱ9EDEz[lD^xs쬂YzϵmVQ@)3GX̷[+dJWf\qP%S6F;@ZZ/~^>@>Gr Ӱ U.˘'A@lp Ndd kR^]OSZhb . 5%nK(3r)捀վ@7 iː˓N'ʴxC{8  ʺɮ-L$@>W-&:{/Ry+rkB0Y,Cn?i=_usciۀ8%nLNg\Q^h1̗ލf苣c C MtjۦqљIV}ILK)vyåHf@ln 6Y`-Y ,(6{gpO#Ez9H@7]t.p\9A׫i&9~VCj/5Ά9 !|5Y4'ۏu\C cM9Q%K6W:  뮉?t+=*^#]ʡvkg ճz K 56h1t4 ?hs61A=<8q7^ʮzj3}B,Y'FL:>7"l#euù.hS"~RHoR//??N:4}C6-,=] 9wuVqPaqukB~%$_`jWm0ڙ`:iȟ)D<[t)QNݭ[T0쉭 ?h X,aEj v epId󅅭5Ho763( @ N%tlK|(H4'J'8+G|JCm< IsneӬܛs>}zuJxL'G6Ჲ8[᫅~`G%!^}0م=s2=kVÉ}a "SXED g b>ԕhz/]+[[A/>_&jY;`sCP͌׸ ŋ%c1;#O-emrhS `IĹy(ԗ2#NVI?dќ /(yFQ-Qub{ȰssNt~YfmVМ*T|eS%gQ<ŎbDLjX!Ӵ϶G#31Ņ$40[txVՏpDKF\VMk\ gtcF8ɖY`ڶR[ԺrfnI3{ AP 3$rȲ\%,\p%E7 _\dZfw]Qy톐59a,p4q+**06Cє7ۥDžF_₅ǁX(i,†C65JS857[mo; FAuegi.V ]"j0Bfh{s9fc-sWEkW@H ĩ!8afg'7ʓbF QaF'=pЍ`qd!o%3ٓz}m_uu`|Ȩ*?(;>MM'>S=Br̙."j#72yhIͬFOZ {#&PFC؄\(Ш[ 5jzGB#O}nXWCU jfn[Y&NNtg*% 7Vu}OqNukn!^l6wIpzD̅C3VEU)o4_1JELZuO `O,eAm΅K%jrq MCZU @>k]!º>Aؘ[K)?j("eK)wɑI3e{vz;1܇Sf\Wy~O6x>iVƪxDwd-;HJMr;!}my9ץ-pA,o I[E8#ng45Ԙb̘,J7=lwWXvrx<ٯm(m3&问F}0T@ K4^4F %YxX&D.>DC 63XCq{ ttPC-s†AfkEUK5Ϫd|̉ٻIBzAd>P:Dm`jRqIL7k)hE5nB˜jʋ8zq5&T1cƷT̕ dixgܠB>Zfd yd*UHP5{;T"뉏eDk< ]'%ON3I q\#dZܵpm%P["~`#| \#[ue蠜\ퟰ^Pn7^Z3 p?\{s$V9ڋ Km0ng)4ɨ>&4)A+%+e~2vy"'Jq(tWtqQcm^RG2*j.Q`TJ7obҳIzk~GY5!=$}"eŒR0a1C%VvI4Jiv#uoϨRL kAF4a=y@=znbz$X~AGs錗)?tg7+k!u[1%xqScQ.`qsa}q; LqӖЉ WM^[r%x S`H/ E: ?1'!|d4d#{8|FtSbފ8#LʑaWd}%K;Ib^)$)pg_`ܲ5Cβ%&]kLغKZ^U˝-߿iy O7;~V G"Wp~k֩o+ENj^BZhILz/bKRwGab5g3*9rA8ekJEmQ3iv*C*^a Uӕv/ZK΃s?]^ENd'r߯,pFs,Aa RCgax] 5\{ĢbwɓF^gAve|I'oSu oc!l6U* !0maD\#-Ǭ>E?4͐xV?2maG.LC|'jaN/cޅ>lHc޳, =tfG"5YؒU ywϴ},5cY8Jjx& eDm`J Ye.‹v}1Ycݒ(8}5Cuv91g71do`E[P"Of~sf14a J٣ީaSVL07|T+ ސ+K(93+pS nhћ3(yѐe <܄Yt_ pEokrkAxI_~ݤi)mveaݲԂ},I)V6+NP2xU/ šI 0y0~(MIR: ct^G8Mw3ȥA[3Nqto"魷mX+AA|J9cƮWlP 'i8}>. EBy)]vÃ/pխ E"f[:2SM,< Ua2gZyhB{ONx1J>0>w$+!JwZt8)Ҹ%bԕ+}̀6IaTK}!Xm=o2 N(dZCTl-)X3J\HGQPau"'b D1PCc]<-vLYu ~: #nleDT/yy;m~'[XZJf69f5tnTs@ r,ppr,x de+4j(LF_,Tj-Qz 6HD>T7$!DJbg2·#AAs}u$Kċң+^b:"k}JԽn*eŞY+@v2쓌kjD w)BP5D2۩> dL_}Sscw|W'i}8iH 9xTtl~q1<=eg \ɀjZvVHxvfoY{W0*`2bx~bQWW@֔NtVކe`ĉE᤺a5j -!D e$s9%>ܧBkZҎCrp!ϢGJ*׈C^HG .))$9D.q3k57xetm.V`[x+eyIͥ]_SH#SCC3LqVJѼkPp''TUk QpB6Y ݑK:/86we$T)#n"S%Ŀ,h, I2@#k̩{s(ؿz˸n( VzL"|*:3)}*oJ{zPDG3AEvor8|a]Btm0bj؄^K)*c&:UUqAU˼h6sĺt,V{l7}l߁ _qSj% Н+?@c]:U'݂7 '3qx}K|(TYE+^(AM}7?M:4e͎3-H•m#LA[!9 0&zl3v&'&gy7䗃0G;Ё_bE|ruCe/rOmT95chN*I I,ٙ=WWP'^? CGrdo'}GآoG\!wsRkl:Ek/8dzb?:uӽdd/#f~.׺\@4ռ!3qhd<};D2ȥd3SXq67]ۯKct5Ox^\:iD`;9MC"7UIo䃩thLEI~o Hॽb%alyB ڜ MEΌw}*SZ(@Cr\2(-{]@xFoSo@weMBěY}ZGc8y`s'p|\Oc$|(߭K6ABАşя;@N!,<2CޢZ7Oyj7bC$^M& sR^v)7 e2`.*4Jf]M5yxt3 \ؑJoCA8ņjCIcڡo }q|t{rPU~NbS3&߆!lOhMfcAv !r5yףx>o>[L/ L/&Jx I>؂n5`}T %cN D\ĘL n(/8*Z䖋L؉:AlP|d\Cj`'鋃J=? Nh#LOs1Wa+RpNy}2M_NHz-+ ~ Pe($t/ӻ6TR^;TD)w26_;'CʪU`K 0{;Õ%J|eN`lffg} #ycrs&lm(;bx']7˷,SsU#&G_{m z@3pk"~No02}_/fv+/Uf+hd="j=Z *Z*±%C-?!),Mńc턥Sʦ^M#E"#,"w75j߄h{/ |Ro H.(2x-㔓#prs~VJT3ZJSqjרH~xTwS팚g'Hh8#`ᙆ1{r_CNr]z]^e&hnCa R޽;"wj'IaV}L&h1=[e҃3Śl݉ Τ6zyQHS49Gރ X 3>{'!ߨ^srk_ RbHbw)jFt2hͻL+ոwHCC̺`*U cT65C=r5{~;h]i)ߌ=KU}"rU12yKǭHt-7?x)f!,r)b)tc vѐ^uɸpݷg4E]lKvQlf$ݮ äԽ]EGZ ]@Uf1]?=8(!+=yx4n+{DO`53֢-$צ:7a C ? PÚU6`&tg5VِО4r%AH.Hݟ!P/KA*#(bdSSxYC|̉d9\_7&\79Ý.~Ag1b11(҉ hzƃNiYnG"ru CթlQw ?դJ}N@5ʊ`ah%kƖmvO^?t&}"!p_I\ZЗ#b侃RתI$WPͷu#~a+vGyeNF^Y=fI6*f|rWs B^~p A8=Lt|T}DՀ;N?+tNSc~q,aeydIeq6861:Ƅ̋a' Z+FSiFݵ,AL pq*Tw"G#9Rc]A-;ֹ4M{ I!!<y P QI_$1Sl4\U]8…mCO,Q׶ VB(5UWqm(sήӑr#Y'%!D//(aO,Cb{ƄF.qʬV<J'b}o5ٍV盉(>B;gRr7^~>[;+9۪qS`d @-2{o_8#]uR[ν֕+:iA^Qg#=JB thHA:7}.dےǻp)}g<&9]|$ H,BzVi}'Eb9(=Ô7[2{t?jq݋|h0݄T1vR_w#FS5`:U1ս&Q K t[vXf"H:<#ֿt9O9ݤ?%,&3=J̩jQ5&_bVmȳԌzSDݻA&.gY323k 23VM:5ep%ңDTC TLO?Л@Rs={"mt^oMQ_>N` ODNtR,“˙f2y 8k&gE0!{'Zڪ[N>}Q.+I}F?㻩@.+I5s؏w (b aWM`=I?iz%A *)^*xG p6Y+)E8`ES;I7$ga~9AWdfNm9i ۈ{3}rRqUerϨYN ]RmQnl+k_0X5,oaҧq]PMԳ.uuL紸@Q%q_q(lUy%t2nUf#b,PC;ayD*0nyukbm|gi؍߇<ĺ摵EN76r2`nP̼׍ѠAW6P0O,9tH9DЏ#Ny7*YbP3S(Pu!q>gHb QzpHCu|>l9VFb-*T/)!]X 2XY$NtĂ̈$S]M{WGJ*BxjbqKm t  t, w/Nà /qڶDz!*C+W ?_8ڇ[a*u9F!{Wj\^*].d\6)՗|^8)B2ҹG}mF\lefp­|hn 1iǝϕGM0 9QqJ?2aD[xqlJh;24{.WC/q9,QW8"f,UOؤRxw<}@ϿȗhLvSyװ& įMZ-]c(gُM3̶{XѶJ¡vQ@l=w7#7C fY/2(Pd |gY8i<եs̐X1Ea*/JΛ{͎F*G{L\c ".+*bB5:esESm%JY՜<)Zj{ǽ^g[r x.qǮbk=F*\k&s/Jn׶ʗO-09,<]N{pBOB͖kZ-q]9_诲f4Pfd" fZPHMV˘* fSfTպl-HR#0$etx Vs @Qt Rdqt) VKXp 1Uӹ!$MoȼEabƧ 掖U7壺13 vXjk4 cˣ[q>nɾ  T(ikq(ua(AHe Cpn}6 8WVN ԎgOw5>; B?;:$Q V؃M / l&){bsv7wcQ VtMk4zl яNC \COc&O97X?CQ-~WNfOJ:GFKsjK:K=˫Rf|ݲ945>7% i[_A<CM=4O!.tz3׫]aP>IMZٗ˕ 87E~xh MilTXYviᇶsJ7@!PdKq68>Dz&v) lOuDc+@zNr({jeY.)zd^<˥dk7Αf\A Y=DIxc=sݑ]Ya}Z%"x*Z- iQ5>pax_^=6NfTg*ޢE.+8:÷|DMw1j(yɾNݻ=qG4 I;/i"#@YUY>"HQ3*CFI}0#w<:3mQ|Tߊ4N `1D#g90T|BNϞJfauq9wxq3 &['o+|u2yǀObI/U0d2҅n}D/<"$>XeT@d!a,k۽ .8ײQ_s2=434BK2ޚ!X+. q {MES dTyP[e&n."AjrzF5C<$ŽޣijGc9O'G `r&nbo%5լt>O!X!ϕP3WEaʼqi!WŽŃ iQx zWu&VS7'Ӌv_yWmt'tq~|VzcNvKDMn &OQ|j3\@~6I1  )@Ne {8Hokmd7"1'jeuT5k:-,+x[?1Iw@2H\0 Nf2,e8a3Gd'W*@\ ;JK|dw *Zf04 .`tuhSr+s8)mԸ875!i1_-zE+ T+ě:YO3 }ϖtmLY5Ņ^X8LzxB]Ll_qpeJtXUmNp*+zN*7JHKU,& p[IyC\k/v֓abkiQ)YVM$u4>^ fAōK*]-joI+ B؏yN1o@5(&}0`;B}cK? B/ S遫^Ͻ{$32MnXZ6){av,pNVhVWeJtD60z|>cz[zvwcOzLS$9.U'к?&Xka~֚8)vrCbp(wLPTN8ω&xJ5bxZَn̕$귔QJ[(Y?jТR%X_ڈjc+[erEg["?ec7%\#Zy6(,e;u-)ϐv8'N gu|!tv+G|QqOIs͉D*V#lI$fEiwx {6D|>7`i h)doJ>K )͂fJkXy:Ҫq].5KDW2zR+T5•a0'XTlyD.ݰoy*V'G)CUwcFii7(!Sj*,;O C&5=$2O׉C9tfڶhgLWDf JJTx^֪t#5|KE5A&Th6._]e(P0ޣJ z9q+dpƞAjYC;5Oz&gH}/ʨ 㰱d9?qPZm]EXbv1r'0܄ [(bCQUĂ,'O`|x WŔ&N8U ܋FK NGTˎY/ eQ(>b/.#qd7;oЦ jqIQ(Y|2pqUyĀ lbۢ=M)Fj~p8>6'Q@aAna!:qnteF͉m ]kږVNƖam+,'=%#1dIJv>&:tޏ4eR ]V2bݵvE6?N%V;5׃d>]9(dF'ꢹ|XHih+2?)vK: :f-ÇߋT48kC6Sn- $] "hl;0ɶJƺkH9I$Tv2۰J01 d5ATڭTODDJv#Y,լю.֤U"rJ_{>;[Յ$Ӓx`x@ +}2f"=oRL e!G[4]Xl@UBM| <`dͲ 2UB6Z 0?L5{?t:(GHwo{8h=550.=g'i`6ćMNk~N^O6AЅ#GDw$9r14\)ު2r$gHW)1.13$xgNd8ai !Ya#q#Edk $I0tk.=K=O ztj8QjFU+9)*v_ː{ARD$ty0;)_^8fWao/c6bҍy3" oV~, Ď]e*)sM)".)V^8\-g5@kijޫV=-;BRޟT-%L8 Љe.ڟj4*jP)@8演/!{Ukˮ=Ν[BHC5"Y{Z.TNm|v@5K Wڃ PS.&B\>uR go!iV4e;eV'*Sڶla5'D)4*{eqv'h&0ԛQ[RsPyd?sfܣܔ4gC< uUeBM ,9 7CA0AxߚnYb9K-;Yxu))M}fC,^p.q*UV@m~b͡`zoyJ?TRgHfU'ߍA< 5g_$mJ'p̜]Ji>q$>=~X7(: _8)D]:PĢ-- o::TČPDRQIv]&T>o8W 46,{81ғ9Cځ5Fw>2S,*p 3cd.Ҕd6yH`53e .\p^dYrhuvѩNC(\#xĢ>vh'5o¹Ruֱ)M1YFG}5Z%NG"o|OѾ*ҖE^hT$}u0djLe5?Qe2=$/:w}Np*KLo$1j?BrhקQN5u]l$+$$z #H,2)E$wOesd*/Z;GR ;;-؜(kVT͑^0;NJ0T!=LUJ5+K3+҃æ'rFLײUE>B=6~&]2UCJ&f#( < Lw1}Cn #.(,+RPW. WRK.:~ZZ y M.+Mʲ1r"eϚ~40CFج'ïxw>vKbc$/ Tg G.70x&5*?4`(j"0U򦤨(wh_7mhXH̠JMPDyU~}GҰ?QIH{G tmS O͈$O ;⯡3Aկϩ]|L+$ٝ$Q~<8[oYhqzς'y3Y|8!?@i? o.sW`~v *|O8!.">О+eSp1ˈhc%!95g@uGȦ׸.V!"6l97+o"rh=k h@oA-f7[A0Gd$$إC jkC#w-/c*oa47%*}-Y5[*":-y Met2WvX$Fny.1#XCVB"5sE*+ A}%2=U=}7" = $&TmCtEOfb%Us@:AvuV6XiwE4|oVv#E㬄|~˩wfz{=RHLKH=B_tF5Nc[f.J%'Zn6xIEdkhXoXSvG x 4LJk!齝(dnf^6'ts">d*F*ݨ+Qrf;ّÐN}eVԁ۵F\n)jz8a֒wbH9K6JO2>l7v۾w/G#:%3$Sj64QyztUaZˋfmk+g6WìZ0'U*-ϼmGfR,m"nqp㕇¥Bd͊8.h`p_yu?UW$ժM;e(O53ctܛ_RxrO'mT:WMգt:)<i"[.>wmȅC@~%ڞW/C@DY:Ū8nCi'Ua7?γUָhy@L 6T_6KMr(F+X0*0xa6f)1%\<9 V$uKEҵc@%#K*ȕR\j"nf~F]IP݇wA@Gk-{\fR&3f*Y1X֘" JSD:f*ՖV@E>(c12_VE/c[( R- n3TF&F`,`02.#;Ш%2NNq&VSM3Bk~7%&!wꇟfaYڍUaK8]Iǣ,dLd?Q$ ɨPs8ʺF J*Tq[ ~X9V91|Y*AJpR8q[%*eưLsg=u }>w-rtܓ.9%_INư:g2/n#7la&E Xq%]*/~ JtT" M2kCn.ELQ+32un쎥l1ŽL% 3K!/2zP֘<ϔ&AZH`,iu@W:j&TW՟Q3}p!p&p+OhՉYY@P#Ht6)d{Y4*(&)g0v,0ws? ~8LHbڎ3*M˰ߟӹA4;qUf|t}jL ;.?:io|u -]  wS{#DoЫF1lAL,|% Vݼ RxfbnU7J1ߢa|1%|p] ܎BK35Px50i_\:6$Wl=%^XIlz*? '=X卖iV˘{89RYhO(uW|C ǚ-)i&WIZSRzF7E5QƐ(CG a"hSwD8$,<~ $GW58~8ݿYdIpzy>\xy V1vnl+%jlUjj?uRQT+1|mU@V08BJL5DQi1"Ȇ s~ roO֬\ ,JːM7'HfM zMh~"V93-m5cs\ZriMN;EŮNaf̅$>O e wOD2rkj E/啩)ߟo(q9N5קb^x9L @)b4}+ m^D]]ʴr,M -p1yj͗\n.k c{CCXzj"7ZM?SWh^elZF4չ Bw47ąʛ\e PrWz(@I#^+6N{}n-ؑv/ 3ϰG 2/چPp'|-kbDހQGômV`go=8G{0w IX_%DcPtʫ_thS14zfmȓ==JqwMuHj5/^u~VWS^SeR*g! U,m'Ad) 9xAΨp]hiރ"Ilp/" ; q;P{u%zߟD @S֌`$dZw#'8p{O %nnNάI:|*\o'?֝fu胔l&=j Ivwѥy20Jq}F*p`:WĵSȐATѣh}az-XtAo`.Tjna^I'*9,=aM2$sX "lcO)I 0P,wp~gI5V*>Z] {BR 0Y㼼 TDŽ<[ZΙOQ5[cUFV;f{gU݉2Ɵ27넏-JV}Xl2޶>&A?|5!2[1aTIRlEpcUd!zӊ,H  t"u^^KU-}ja}ogD e_vo>g.{ =#>-PgS*GtٚOL~23qziLrŠ\QbhoW)7H.$.ɲ[9`r|^K&(tݳ_Ӕ* &TXƖ?[!K0˃ļl-[c1ŀbWVp̃PL[ta 6mV$CN\{urjzV&NE]}_v?x#B3S(UXSD\Xo98Wi?iiQR 0gBC2:,m11B?;h?b,5Y>{K”=lla6{r}FK0s_܈XGs8ݐgRo6-yk\` u7'YgޛMl6 Q=A!)L}fh̆K㾣B{;s9Pe%I_/X`v{2p$׀%5rMO@ 3Bq#;|S S*2kɉnɑb ( lZ~41J}{SKewvYhB^ytz*%${7nڔw]BjTǔCψݍ"kDM_) "6S#af<LKw5BQ+_*lR;QYG6ߧO0mU70Lt;>djc}Kpi!56@-41{V@m&"ȶD ҧ:B Ȁ^0`}~`gSZ\Ύ̒Ed|:4Dچ's0U68lM>W.VT'S$x 4ӟ86)[0UBܢz dd d eFL\d/G$h(QBqǼX0_}7N>~m|;E(WdzZ|/ur4Z³wstF j75E0}]⣴B'Quk\j|bpa>5GJPte^paeW߭^$ f5X]Ŋ*۴028S$7^]hhFRvKeJ P޽(vnv&ᠦKa?~M>ܱ"pYTw_j"9,~>^vnk^ A ~v)ۣ`K98}[kٽV[U9)P&bIE Z2B+.F OuR6M0@|;Ț#5Egq QnyB.|oI-ѻqJiЙWWHz7#J(kއ˄*)4e\-#w"uneT#dClci 'nrW}6η [Cvw8}aҽCF,&'y]dM5(`}Wls*57hA45Dm+OVGCM!n?j"g@j:3Z@@ek!!7jP6 Yp+L3"|{>|-Zn-C I%uS3͓챏Nu(H#ݸiכ.ԭݡ* Iah鋈#,LMlEOMn$k:){PgФa` -Epr{2R-}/;Vei6)6vE۹EH/`㊫G+&(2}- i.ϥ;m3Y[W sWcZ['8ֹ-}hiQuHEʹm_9DcJ>q^*:%p*H]F (8)p,hG&%SsPȪBL<X(gBY|~nF>C`,G*v ö`qZbC{:aXxV'}Fb8yY[_q_0~sg(ȿJ7h}3PM"'ùœ Up# $ǵpϒB|tI advqNw] yY/O1oϭIy/[)(p0Z[38IC(>y ~~o.HNΉv AfvIr&a;-se5N91 CNՖtrve-b|V$l29ȏa}F4~zOGe\I%IyNS4Ʊ\Сռ1$(QvU햊J0@d*hi!JOIygBFϫZ][[cɶ#ҹNi*;# 9 s$?3a`>vs#GU@еbeIz`9=ۊ|Y2ET1~!f[e^cXexs[iz}f^6Ac%8Q}aUbbB_{꡾Rå*?x2ݝ~_Ip^*ܖPt69 'R&eOi<*t{ey[Մ;cVM, M ʩ7=Z54Eo-.`|_F +\/  nS|U 5}WJ8jcew}ܡf̴1sd )% vDŖG^Xd>`. h ] sk54lB1+:R>Nqe5a^tFI'P'!gF!gk>B/Eg40G傪/wNOj4'޲<Ė*TfJ< #`ד'F{ȯXD-clVX!Yk2M`6IDsId S(^9X(E&Pݓ.`=qNwfwd[POt倀ʵ#8ISt7[9;܋\5>"F\Fȭ(HSwU\>~%ۿ@!\2udxF C G6=Wm:ͭc&!|ʾdXa"]iRUޑRj<ȁ;}ײmr* `9رZ /z|ZBل)ms6j-gYt1SDwp/s!Wp88TGCHx*TtvWwꡒ(V|gڄ\Ie3_vZO9Ŗi; 7LtAW-撁VX]s%tێyݗn,d=H?;;wԏb(c[RܝQ]Hm^!W˜כ|~paDB;\Rdz_Y ozE٤k!WiSg{:t/&k5bѭ[ a'ĩ.^H[֪ pB]zr@67|08 {HnRuCl  2a|Ǝ&(@ {H)YOZ.qꬼX]ch6yK\苵޿U\uTe:ܦ0 I;l1\Zf֠n *4TBrR"H8Fw]^H=WZ4`(?ׁ43Y/AXydI~W#mm<ꧡppz[HqyUywF:ҳ_b`ttZ3!5vSe\u{6D-Jv eU.f1/}Ur?;ěZX'R9FB~苼(52iG=7fD_vΒyKprbt: b%|*Qު =ͧd ]_ "DA5 "U9f}~W4;BwPE.֗#9Q6i>a0Lq?\UfwLN:b=(sD,CG[BF`%r4' Ŷv~B  %M.V RTO&~[Q[E?þuє+߉a>nK(:&7flR7j(TDC 85܅k}(ŋF;n>("\̓7ƋA3M=@rӍZ\Zn(rJҶu@7dGoK9kU&EJ7i5?턮#/|Cȼ8eHܶ6w qw96PxBO"c?}81pϷܸ5Iuƶg;ɳp}M>jG|\K jJoME<۪T0L+߫Mj)J4.ؤ)u|ICʹX.s4r|ڛtkJ˜:#+"RY@ ϼ"c #Fudn7AbQ5{TіW  ZM96<ij@`Tz!"p4wC|3@Swk*ӛ2࡝. ZXzA׽6ľapcӅqbұ$a].ώ0Ja=Yb7 Quχ_Ƈ$ٜxmŦ._B0A%sY9u+BHW1Suh؁}?ѬFjN&lU|)K3pEo Wӿ9Uv·@L{V[nV+v L;rm񡔴1{LGkeOeU4f(nTLmf-`,/kܣ%_+mMX^n= L ʩs^ Vd24j1N͉N=TC!N7PO,Gav.=wv%3G|U]N]ڴ7޾ ;:j)ǚdtq]Jbk㇊)HMsGkFɩ`r|)fyGOL`ٝD0}?rILt8CqwEoY{>OQEв{됿UĽE tVBĖu.7&G$RtOdyR>Tq4FC-Sshb-Z{zNQpG@pQ^ULP%Ǥ0PP0V'9P-'n~HP3Hx3DS)|K ?[)1wdIcgzψ̹CR.SZ&`jG(Ts8F2qURĕ͌c6>bNʌ>ִ Ơ!Ҫ9.ȸ:-|* ZRVn-̱担=G978 xkΖGP^~ (t͹€{Ui"u9  JF.&$H7Rdt~dB5 5nb m1\;DU|O7QDL]9h޶ޗ+Q(SYFв=tgLT̵(pYʈ0.Cl(5ٖ3ǘNI}\vr- D[݃2 щN2ZB r]z<㦪QxS*eoә}-~(e3I'*IVJ:U}DxcOa !9ڥFuUs\~R0£>,!.;uO\k?*W)<uPyϡomi,qk5:^A6hu՜46Ϟ ǹs8+] L.;+]]a,j4Hz!$Ni[%@&9?ud ,/)K &q4mEd V3#d:ԺO`8ΫWk<,.xmza㔫}ɸTY/hF2yרSYt*FfB,Q LNW,]߾V_,}t0'tf['0<EDi;! U4n3 Y.?ȤiItîaكZ̔lrKRLJ|SϸJY؄0"= ;bhd<\G!b #½Lq_L!@K)4lˠMe0;nhf$r@t¾=MO3Br^nVBΪqVm'SDQ k}i=kdNs7`*9LbehᠳL 4 ?v1KA7-I4ɠjrU’ޝЙNLPfυe"&:2 YHyѼz]%m/߱I`R 95%\U4=y`( #I5q[ <Aס-צt.xx^s]DW2?B&+LtUƵkvȫ-4xp9oC-OʟF,1E"vO"V{CO x sgt';*blSY$%ۿzM8C1uyPM&D 4@؉)GihNy anT`T:WiRgx5Lx$O0NJXѱ|\YX]w(Ns\yL(*Hx^}t'i Z aR +~VK~>(]j bkvbyILo R|!FI_M`i6BfLM Bq3+6Ќw sl,lgnFI@y&*YOL# ):`uO"K{qO+Ŀ8 ] = Q OO&{Cf/yH3::M ߥp:{ 60ΫӆpHio݈ TV^bw",dlзgf#ɪL{E))sa&yL$t(iDa]c))O *0 #1Iλ~K4`tq>[ &N*!Qf Y(d] 8G2;EBR+Z@# X\-Btl`Iq\7Ӳl+w@oY|=` k0?Y cѐClq2VW=Ҥ1 oxR֟kd R~*LvbˈqWW6 !l{O? LZoUCg!1)<v1s$UUטjZ_A֔46 xAyD̀%Blyjik񩁆s/`|df$3njpu)U_k6γ[JU@. 8dJPə/ ) MHŇk{x yA3DA ˜w&d3dJJmb3T/);E@#}MH\fm` pqz{&sS  +M/\30Sܧ]9*eߴHA~fkss>lI"?s =^"ڏ̵BДeaz2 v.i[Kscſ{W*xy91n% B+DU+Q{Xu+6f:x]`(g$9Ѫ';Z ^~Eszn1,f~`83'2߿t~/ix~i]Oʯ &zqxnA=fQ WmMdfH~cXd&%],wB* e;\dA|5tY0F|q?"ο,crg،WeT;fg]xtte+oˎ 8e RwbZPOiʪ$?EHIw3aܹ`!nm;Y+RXN$&5 WLHfF\5?^:m Ƹnh-V -VUa{`?Rqk|Sh{r"PU;#:y)8M@UFQvIg-m+DK>U4*KxEpPTg at$?fOӷ*9=ͪ T- /&%XwAUJ/bsdxKVQS~mP X|JX +dMMU4{6)Z1w\]Pjۂ`2ԒrÞ[ e < '_Z:+#KxV-a ~\8'o58d!$ :ù$@_n-VYVErEYʿi<6>.u6Xs1[7S.LHPXo W'`PBvKVXη3U6n7_Tww0P4WiDZІ[Ч.йUNwͮY:Z EgsdW,ZCؕ-1ξ^%lx(d`:V1:K *v6r,~d@>[~yAg%IKO*& cG-]Nٷ&"e $$ń4Tf(p4xd t'hkr%@.> ~ T}4Z''SC_-4譈- q蹷lH"3sZTԑk ='z3Sd <㉍& ̹i^}0٠1}ό*iĐ Zw [MZvuʠ$e%\gV֒t,.g;->Pb)W>Pnļ 5E /'1R86Dk+:ksqρ6k,'f6{NԻ5VحCH"t7-`q~ŔVK [y?6":G8Df@p_ROHꇈT&KJ$ M#rFP .U &, s/4}7zZmp `G IZ5!'A E߅{gI⢦y`s{Y7E:r qF=0~ZH/3I' {VsI˚3>C`bh%w~ [C'>OB{nrSۉBMW<`Ie/$ dX>< !cpµg(2Eq/tBzT*4mJZLKSQ<椷Z:uM蹚1ՠBG?jYV2Q$x>QC|N_4lϨ,:rKWl[Md䦮85Dfk>PKEmNJK*V/hqōg ?6Z뱫ka˦0ܵh5;&ٮr ձմ=b;ƪ ?_xȈk3t싻+W)pe=K'aU nOҳffcr"ymĨb-J >>J'kη}8i Yr0Ul#ӎv[KctPu,L?ɠ|j^sE#IL&a{+$qWf#6?Z(W}{S`04j޴b>t4~jD:" n;K!g5mhqs51&y:>؅_c^foXaI^w*Ũ7žGiA;c}7Q~oFyBTq"/<[nU\gO,P WUeU)0iQ4=o(N\\CĆݤzoAeSQҁ9.H*{ӸcDAmzԼ7棭Mkz܄hqtwO{57;Gij""~e߉z(zsڜ<="%ѫ+e =6* Gmҳ4|z*' A-8o9 c1S)KNvSsҶƿ)8 mքc1&Xuğ=I5rɐOC3"vKY cMC1 GZI~Ɨf1ne OYg@K 1ɞAUaG>߃ `HM)OD:Je2zP2U f$,m& ynr]e1yfzjdf?Z` %x^Pew8:4Z8zx\895BU'"*J-GH8 xD|㜒~"Ӛҿ)SdqW|SI: bJB0#`uV˜t%yT>LiX ލQA 0:.gS6?T Սr7yB$l* I{aUʧblb@V'<]MF򧒍YTF *ά)p/3w'H(i f떕U"HA= f6D !nFAA@v{b/K9uh4kzxޓH01}Ahze+-:6rxZb)MXEvޘ4hk(O2#IFatiXr2oT}]?=@!@"r02Jn،5 IP'McԨDUO,1R@Jmh}Xg!}BpPMHB  =hN@Q !SEPosX&LnNS6lyaxM[|Y˪QCAhPM,@~v~ףTd'pT=ja8Cg˿Wt2^a֋v<5a4KeY=Msj=Pn*L;l}b- \TMv3LPi:3c3z% \IZuqDs/n!pC६OH'I_Ye$? i4 Ȅy˜O-[RCS;dրTFAs/}xj-kk HZMKtMҴ<]$NT15 Ra"I~[P\BT#PaKJ tZqWYqMҴG"3mW;4SPAm&v7`Y5lGuA*Y4>9#,yر˙I g"Պi(⎊<m/;կ'=>#5YѦ0^aךs,*!w'}b{JG[{IAƭثj{n|)H9]PvF̻ B.֌ҼMjBQR,WvɽڄvM\s|/UGcH+c.5wrZהۚ>`IeIsq]Cdh~nS[A`;RC\Q;9ee#(Eq.Y-)P}n14m7+ y j԰~/>]f%fM +-^{=PG>.X+8ugjowQW߅.WwkgtN6!TQ@k;F,)fR3o-g~pꄨc|^'dcGxw헤rrZGkPћNrf.%]^y<| P -<ļ6WNv?鱦+S:B*i<+2VbktY mg& *vIh"^$@QGPéֵ%1 "1֊p.6>{uނrq16Cf|~Cde_.ĞeÛ`%F$QGwS—RH1S)2`8@Qpv^Hh1/ C@#acxz1]e*FI'_nKΚ |iH-W^`?F%ihƊaios{N*Ry286ȶf`pP:Tf_515iB6\pPܴGw21=_&RV=8tEWSMlqK *ز'*Y,(롦Ԟb.>B9[#ay ,M#r ONK>0'&.{76f.>u_C =4x}hQNeBx(u7-*&Მ_&ex t׸(9%oϬ<ۃ9ԮW1a|6Q>< E炒 +kMغ &VLBXkމCNsz0:,F4:kn?n(/^]D Aܠ%9Vv^w9c(/)Fb?gu{+yPbn@yXI6t=N3sr8NQڿ*-(b1$G owri]%lq:s-YtJ~4P02UjSza&gEٚ'k&Jd/$yX$yx_GtFEǀ9LQ1ˊHq_2FdGƶA*-CVn6s0%XG2B%Fkό#Zbz+'˞ס}ڶy$o Xn*=_,3L;-؂qݬ&V/i]ٶ71]OcgTZH!~{ +}]ۭ yDz&C :٧~a^VďZyl_G'utwEdpLB}k$nՎ r`~%Z1l"_鎰ibx3hm4G֗n`:x9;15 [[bg]xaXL<>0R@Ht$tr'jy<R!$[[8J;XV{M-B]eѭ5@B]@Q5S8΅·W-B?S!X Kj+5,X7^yH[+Ȅ%""05}g1^ͅ6tTăr@v%k]ZY)Dk82@C10,ıaTS/691 z F2J#MrTϲpKw d*NkB qwNxķ&jiຣk_ 4~-xӬW﹀yO"RdyEO]Z y=Q2J4#g!b/!˸ -dedL*Xp`% 9`^onhm/vc+«,wƷ☸&NFYhn)x+"ƴ*>y7h&Wx Q3]2jXs3;+L}QE1-*'F0KW\[մW [GUq8Ibth֞:{iDnGey#Sj<OT-DzZa(r'ܴ0t1圔us Bm+aʖcwìo3 fS-s6x@JDŀ8yPN`g35zj悑.oH6서d* *u-R,2Ȋtf? @ucnvz.tɖy4|bS)CKpp(4_/R k$DJawl :;#H ( L@2RD|nDzsbS{[ Bl. 4{B@Uף} ea,abÚ_.:R|aN:cⲪf䦸$lhPx^G' (T![1[ z2ehl: D%IRg_t=bUST}כ/Y9[&t0ED{_(|ߗOyЏǛD+_#]{k@3Wf _dvdGʘg&q޺Zf\^d Chʙl)SٸIoI TsF xBH{ZlZJkiTTtPiz-'RCH6 1C]UgFY8o6ו*bčY-އfp]S&$+>э_EǞ*`7~Q`Æ P{˸N[%rWYf0ͥȒdvF O)@Zk:-Xh, g-jLf$%q1fV2笣}`}r]Ȏ6ڈ|4g߸Un sdoO٬2>1?ztx|+0M͆Hz ωp&@I$`Û P#x)LCqd =r Ჵ^&@C]͟0N}$c\}g czi~nz U`y4!a0Clmt_|ZPÖ_)G>D)CXm$t./BïX@.&Q᱾m ֔_ƺz٤JaHXŏ"͍EN$?r2>{XPa|"nU:1K\ykp-9e FG8<EMu5´oS}I,ŏ1&&, Gblb/Sl)ߴҕTȻJSG'U{^ܴ4ٯczlt`郟4 GT20 nI:NpӴgAƲ&')U@ SSSbdAN(м\f{rId^kvBy@ B8-cJQ]ZQj|-w_|gjwtNab1 9uVM%;]uU)lSA>`՜?C%M4k pIe)EZpR&G"vЅ=XsQg㎀BdO.dFEz5Rv)0!uL $8{o*ŠOCZWl9jj/^X [geqg`4? V|@~F?_~`OIVmV)-i <ЅBfkK}9p/5n`IiBXC93<%q$؄ǥԁ;M0M-n͟hXȢWYr:0gwC:R73KdmDL?u&OKPSey ϊ_l{9kql(h/tu37΍Sd/3|9Eg˸}ht5ڊqًd>Obլ38mt^gRZ]A1Vp|i?gi<å;3@rIc_WRn$@8uYF[-Uz'L"d߻7H%`+QPl)2OXc}˔`y:ɨLMHlJpcv)b髚QѤv HwL53OYK%yVc̈F~6CDYhWV<VsI!ޱD2?Snp嶅krq_lUB4Gw,h…%6.0/Ѧ0U.?gz݀ySuJVB ȮA7 Yۨij{]EwC>xL1>jajn:.劂 #4|5)6v9h5>d'}ݼH=[WQ)}JĊpEGf5Ux} sUؼDp #:6ɋYA[v@HHw$_^1Mh"S =a|ֽEϽ r,duרZޙފ?nzxvC&Of⯣r,*.A/;EQR|zpuM.▢' %+I: .dfv=[04kPk3Ө㉐aRx#:0>tR!9cz؄TH0*AP1'A&Da;m$ٽszO\†vRFxGÈ+9TT< J6eZ*zd㠬4~\ÕJ\W}+6i'F}z +! @p!rB¹,T8xWm)N'?S AUqW U$m .wl;[[xt K3 LAŽ`P0O-n&,I&xfojBi;""Y'ϋ4WȩVzT M[Vx AY; rbug$rLr ձWK}QAU"4f^M)|˴\p|`*ոCP̤YԵʹ:PL9e0syҮf!9%E;ƅڰc@6PG^(XlAl?[= !(q g-˗+ h6MgJ[vk$][ vTF`qNZI /)|&^&kY̌4}[גO:'~DV>[dED{n)([6_O;Cb^A: ޮk7uzIRMnv[TRhOP^b[6?UsF&>%,f!ۑ(լy Uu{-͞*riXYg@#y c#V?bޭ8X_{нM=<DKW.лsC[e#`gF55e1F Q-\45 czp5+u}YZ0@&K@nU3L4?6`zcg`q?yӢ|r.HA7֍Se߷ ˴ ! sB8`ɄDΘq!gzIR7QHF "+4f9:) 1Giqq~ŝ<гͷ֍l@VcaX#LLmΠQ+QE,5?!n( `ع2b>ý5fh4Ykr A8XنPU{AVm:Xt⇵k 243'D>͆?7dZ#ԺVU4/&`vv~ֹy|Wc?1M YMh ݻdt*>P3mhbۧ K1&}::=3F'E9|y"ov dk/(}^@u8O>Ey`__5 aNQ'Xð4 dѳq>r8ȚǤ՞k A55 S F\O.l+}E'L+s7ST{[k5*Cb3^4:[cX) 箺@@ ͨ"T'hI!P]۪gI،D)4wW<4Wf7AzX)bZ}c^oEX+1rһƝ c|̶m P|7ܴ+i,DW5y"sF0KeXs=ҴWdwR5%s ˾Bѕ_pad-}*f2H!ZޞXzё݄L `}9j7gM݋Jk%d6*e>s)W%hVUF͕c {xiTzTg*RЧo%wKrJcA$MV$^~~/W'Bjli? Lirz z{ޕ*)$D}0I}BmTRBB/R h*?sV2CJj@(??crG@?~Y4|Sۤ1QƼ*4{h@"k/4x,;u=x 7le֚|C֟C[:OpAmجobrH0Г&YIͶFBauSMZwa^޿-#Y8u.m28ɯ*8LM&D܈-y-":Lu~ol|+Sd~$Y(e]77K}-"^h[̓zx+4ҫ`35F uD!^٢r9UOsg@~¹h]& 9G1IgU |?ϾCR].2)2՛/Y.Փs4#wqɂ_)6`T,,D@B@mBmc.W3:AcNLUPKH!{TDI J?綻x /dqPc!-ɴZ E`R L|`s` J-ыݲڨ}Rnڂ}9Yc@a:<$G4L6څaf4M 05+> 52<_hk./S" hTM.'/8l]Co",1`gG\dӪlƸr;y0fr8KN_XUm@) ]v>AXsdnLih`pn?IVg+sذ!t18S J d:Vpk{Ѭ9(;o0`?):n}3ƃ; -P(߽ 3dVMUqwk]x-=YRhBGVh]ctl:E5A} ֵ+fFVl#V_Pd}&5];u"r2 ƺO<.kú(LɊ=>_:\G -A6~vCb,;u?KUviB[GM:OeNPνb5FlH~Rd&ZFvUl@CYiQ؈<'k̙)*v1w$?+IM`GR27yJg֐ ?Xwv1tMxlu9a`R7%{Tx9ݻBlX{ORf~hV6mEgjB L,qJqz`s2|$wU >%*q}zbYw#!e %..uCLԕ+b6 erq!7jC#T,٨H9ERhِFE[Irp`ڝZQLS!_db3 M 1U,1hxe!BZV薣0\Ϻ NF7>,ꨃd0?(&Jx.6D k0 m-ژպAZ_}g;3KD2lTeq -W00hםcIx-WǴ&BypJ!Uex.miWr.LޛD WJn.5nϊ~Y}ωyee%Vb~N׽qΗY&qҙ]5D#I%JcH~QVh*m ,\ MGe$_%kceSt֣dFh%WsZ7Tf:FWn5)ȍ7aBjz(y,#Ec*kmٹm83Xhl] ɜJuIKgU[pb;뮁sBdcL#\~4!-+3-U4YTѠY!I{eϻ߂M$F>˼tt1x&#tr+_#8v~nYCe$xm=PnbO*Dn{T h?A cv?R2S;H#Q0~<])cO쿚ѕ,5yהG8$gi"@OS"Yiljn˚©H0_}$.ǽh ̡&poW{BrHۛdAԪ*Ia.z#OdobQrk޿|}`|257S%V;p'9wUqk (쐃0XL}-ϩj)]gJr*jyA*l d"]pE~R$u/ODYi@gJ=]IDN7ǔd,~Mk`Gw&!d:/1a!_Ccg{2JorjTUkk + 6t[mKZGAӬ:v$C&EFp5+ njh?mji`^\*ķzgἺ+ vyþp!f~\+*6'U9l9gy}'N?QSCO,p>#S& WZhSJBȞV75J;zvgZ8Q( y:JH9ߢ0]\đuQݷ6NYk2QJ7%4_O/GBHzl%?#sV70'ɢ:N"ʘ~Xv5=K # jTBmUNgk}غÇz Scߙ \7c_@fV޿b`p>@ێJ>ՉlP=8ylzDݟ :(✞+RWv uw{f0YR8;#AMDm-\5Qj`"4.^h`/_˦ޞhU Ӛpʌ›-R>>6c0? hyVV?_ku&*ntO*OQS{POJt_G I PJLGlf+)$^sB͐Z-Q讛O9Ś&7۱r*e3.-2d t*zڝN13 7ޅw,eCN@d ,R3c?Ԟ eP]TkN9 n||dT`2|TqXYZ PCg=?r3fFFf N|REƅ#DY]׌%02w eGO֎d#%Beo>/'H1@O\AXH0y(}zC /ٮ=ʕu"APԦSk\'d&S 6 鋽J'آ4!G٣Ye9y|\*5FfwKJh?0GM@⪳w0p5LR'KϮꢣ^']вU=HA'JOTۏUˋi|P(FU }gRgUuopvnBLo]ΗO׋%oonWk{]t;wIfyQw2W%/;,Eփ GgQsW\bTTCIgdJLYpy©YLw:5#w'nOvX6i6-\  *webkbkJkse}|%J-Gx vOMfzi N%=qIǠTyfT"sn2hulI9N͑`rį㎴V~GɄ2m?R)B %YU[o(_ǘSEeWxbbr^6vot hpى1g:??=YAx,p! %nG@>M ~0cvM!QΘ\$(X;OH> '&#voA(=R#WhzvV~5whsZ[d8ʵV`iV mf /^~ 4#; ފ]ü6Ci.ævl]`9 v $9PT3 `FHjſ5e1.EƕUeΞa/X mNWh C$Jy$\4qpdc})Ov0j*|Oqtm8y]G ~PZmrxvd{!AT@ -5C;H뽆aZK]>I)Lp\5Ù9@T+okNCì!{b{Oͪ)%CL3.|iP0j)r.DغцZ(^sRAƭUjWy]Y*Nd'uZ'w*A"$dfEj`ꖞÙ,-I 8G<.t|;F q>1X=?ֶDQ}t:@m:MR\cNq:'#&-倒 UPފz pO/[W }Ҳ~:^4[h<{-Qȃ;Bw#s9HVсׁz^vxx&m4kYSR/`PeF:Cx"55rnxO>2JE nEIeӂ'{1abp8%ՎhY,7,< 慔U0ȏa#mwPa]LD BpS&+)1,/S{-CCO1_AežCR>q";aAOA;MP(CJv̏+$ÌʺB)18,|4qxdc$$.#{ᥗlv CJH[*V"qy޽dfExmXY{V#Qf V%^ o*fVDڤuӕ}TGjϧk)SD[#-;(pmk!0Hs1nU,4uW[ 'V K/餫'mlU~P>?OZ*Y@ԑ}%O= rO(Jb;? (S|FW0h,tzyz5zSH(M@4O7W!fӽ1bۄVi>1liOXsM fs..%S ( V;fvy ]u5>c !BD9ojP3Nox3n--4)vnּ)YO迄,eUx-s} ZHNHqᎶ%9ɴ2sp]&rMU'J[+ Dy m8.-[v 5Z]tRc*^̘h9,DWddDs^r-:!2L#0W=ۘ_Raa!eMRUiӉEO03qhgIMS[\#X%H %:my Lp40UĨ0ݚp%v:zUCU ;ģ݌Ƶ_vƯ3J6WVXåm<c4 n=__*끺PI'{xK zvfT$Mi$ U!B&6A/YZ+bG ,oE~/?3{%~_2O41 q)/Z_iESIo#,1X< }ڔ;=MyYPo 3t퇎W}.Mq) eWb@BJ}KQ}Ms3{`Ȅ$.sWF C*5L`gHkI}8ӊhdxwZǬ}+{6$>Cf"2H;B(`pYd21pdbMU_/cF7#k;]18ncz↏*H[S}j`P<.Z^BzD70-`IT-3oɥ!+~ lN$D_x_ D 9wSc`W(;v- cƔ|Cv>tT`=D Iɾ׉4ͦlĜ>yˮTfuQ1@-aA8;%zMʎ.HG 1~뒥A'ŧR 22'ZɕN(WZAW kϯC&A zN*ّN]Ρ!} '𳁊j70U7}AjxX<F. ~% dn_ R_oF'n"gA,uujUZv@/sü ,@x\[g9<&eclíAOEܵW/p4|~5ySqo v3sW{WOtԈ G3z)MgXy4)jǀ'[O:a 4\ Ry"ծxQ>O-U[%P㚅@y} [ ]c~, )S,R Z>EOaLsWwSOq^MmAXoHب'%E 5VyHf7E @=` Mrg>;魦?EXZ ѵ,?T_=GDTCʠn ij @yxH u`34tQl(J3Le>ZC>L~{$J}a?*TW?6ѺjgFԑW҄Xf5wovy-nz D Pn߼DLmjua)[gV:M@(yuJa Uf +Z^m`=|X?$Et1 Wv-}hRM sΖŤ1[/2~ O!.R{bCͧۇJ4K{o?kÃn:+EKOfeb)`jED%xՌ+kQ؈PZ{51@p[0<flcgSՉn1U2SxWsBpdnJ&>3%@텉%3nӟtfm %6up\,?L "#-,zLD N9໡d& J7zvm$Ͽ5 ug^b)pw %.Zq-T6|SY&v`n23)>c|R#x~kHk9uQ  ymڌk@|0^NYH愈 _siN<9MY-8A/!ƃj K6R obn+? wƑ3QGJr v {; Hvh"R4b>iv~,u?07AmV9gn=s'#zk# &}[ӧRZs%ͧ40Rbd`#B{@'dǦQ!}\Ve,-$kI:cSCkqgrb>a{d>K]-+#ricϋ cU3"";(O{KN ɕ 7H*ѝLxIgs2"}݂l8S _`K}N!RШdLc=ܯ 1㸃Y`CC"e׶~7xӭv䓂Tg {c~Z dM )MNH>{5fŵTZ|%fPPqŇ(ݍr9~!k=3`M~ۘyWi&~`{.)G#d"Ru:Bj٢rt?d+Pv@itψJ70U->|1Jc}D,/0|ʚ?ޕ誾=?U>rBʖ3ADVqCZ5Uk]X4e!'$?%#r"SAHvw_ Zϻ7 J.Vp"| y8oG~۰wPw$pP<쫞0D p_!Q3P͵IĊ"RmYh)ITY攵iѲeAe|p,淌cJ0[qum2n"A[H?ZJ-Y*M`s[Rp2s~Hkiq(ѽQ4է;ʢ' c\xKvS,7YU*vHCҭh[R7`}D░+Ru4gv󢲽d(Rۺվz#9BFQ3௉~jž=AKhv~/CaMjgb :BY+R Sy UxWi}F|uK*#;z183ЙUMvv^5LՏkFQ6S\Ʈ|G"ˡqqP<*xnv J޲KY*(/^937eF-+@_.6Շ6O =2| l`zrXFQϱb M'rZ],`Q'1>-ozr;?jG06Y7?d hSikm9>|^%3z^eD@~&4@ Vӏk48g"OLmqFVQW: UW7X+>XXYrJݨ 69В#i0W 2HjGg0՘t4{df+:#gTI˕mȒ 3^Ǔ;ocLU-гbOc%?謹ʘz+D^% Bh4$[G4w}ovRSkoShw.@)xK>`Iz- pp|ŜGm+O~:P\옂^u )Y""rӏϓK lIZmicյ{{ L䐸;Os.B,q-1NꯌpwZzH Z,ORB9˜:O<=`W,fq0JOYrPGJgC,rs]s'w7m osgK^ ./`QǙfE'Ja|&`XrG5v}d)xB1+88COZkY.ٳWd(%goiѡ8o0^fJWDyɜ5N+k1_$4 $+Bi9MBÆ]6My :枰`XF }A_نp?2fZ\*fW*=hlhӗp1[K )^BzC_._#E"g13҉޲M@{ O 8[&K//;!ϐ>|u"EʣgCS:g{CmB `f9qt <t,lM.m-S[AC0v*%- ru8 k !i+jbs)BڪJbO/ZD ;_/Tb$+|_i@f {tk/4"P)SΫK% rs ÜcP3iTwl'WkM lIU<@IîVϙo+)0ȃDGk^ܔ#>_'z32#:#JX#H8a\V!lkq6 gp: CG>]+]Y |{pQAYh|l K`m'[hZ80Z5~(Ĩe'"+R'(⾫Cݚd\?%jq2%Ԙu=]1߆({ۮa #`l59.`CYL{x O%9;amn=JU'"g]Q{"~ F(=ڥM"@"fWU[ٶh!? ;PDǵ;؟}YY=ܚjNCA }uc'Gdk앜ڛm$:.O^{Þ<7p[\OZ 膭MoSBP!Mܒ`r|$v%-'*"bDuJt!˜,PW=?7n6875D-_4'9qv3nK r^U \es3៌IY1| 2&_h9;ޤ02I8$~˧:;_MlB)WO'Lc̅B3(0$鹂0 NŃ/'|ǰWI=8;=WQff&]6x Q# 4||`jwq=HleVٻyĂ-15b爜LtĠ$Cr~|}w=кf1S\SӞFw5)ޒ5o_GO"P#O̼ϡZ )b=EO,>Bh̐b؂$dMl_M &غqX2(* s* wmP9Op/&:bҦc7Uh:ѿgi0 w)C CEiW;B+'ME@i L2& "27,X8&-+PZiȥOR$A:2hZ^4KZ0w J[t94gl` 'VGsOWi=[}y%!mnvFP0cYLP̎0*q. ?R?*fU `B!>NPŽ9U_Vbܻ>;DۘY% bRPxP:zEZQ)ƞEc/۶ceZ ‡ϲ&Jfo;t?b1#N1 *~"=GR@Wqdf XJ$־-+ 1GgHJSn@ZG̴!qLiy38pܲު[s"8!sԢGp~M"dΩtāWv &>6TsBcE## /ݣ'/e9>y}l |ԍj'+3%íwOKi(*NE!;hX/޵jD~rN}@ M9{%ٰhȰll2#SlH3RkY03mۢ6{F2\#I硨{c;sjm~[Uyہa'(ǻeovnXXE:hZP`Y괤Y5J[2Л-%$9dcKV*O{o>K# S\8t>@"iLt"5 l|m9ܠ -nH~Ќ7%g%F'_dAt62vX/3K#ۥ`vUOnaÜ=Mp>Yu&+^Fl.68ܨ}d!n.eu-84@u QC})|~6x׽hy*qWmmε>-uuEX ч,!ƼG=yf3C]jBTabpo}bLCO%-C9-X£ď]]G҇'m.>L7B(7&0,'=RJԮ9>@+5"W"v`/}Wu4pwO ^H煫9%Pc} pwZPvS[! ~ 0Xԫ"1ݴ1ݖmA5&" Qa=27K!s1 ]vXp✛Oفj^D}UxAi4gH b&Q!\s-AKư9*9/G͟xϳ]E>SgcnrgI/:eR>ƿv%Ь8A[{^ Ź[+;J]A6&u/~FGP.EsS;Pcy yUQBi@F;m.11@vFpdzO%Ђ3\DPa{"8 lUBؠhԎM{Xe$eԨVm: ɡe='6;&CWGqD'JKCIF Š@Yt}C䍢{AJ4䝫ln0$l=zאQ[/#?_oʹ Jd% &7y{Q.Z>aVx3+˿VM9ҒI2 )e$Er7>Aq+3ox*Qɏug%[f.g釒6 QMo8wNxRXwg@)]SYny>W%Ԉ껭Cp06 pYhnj'C F!V뷪{Pnh 1 H;\4X5Dqm9%DcЏj(FQO_/zl㕱LF=5$HQMKdצXF!d$Boϯ5TkWٝIe 5K4 4]TFYs<ȡR?_ז)Seu(%M_LXXJGiŭ)Y3T)XHx@v@bWFa@d^ ~lJ!]ܤja|Ͱ7]a7A v/b-+owĠG:?m/P:.ɭF? @b%8\le"(V Z*[OVkjA~ srNg5c=gs 70" 04W7I=Ne6lE@FJ"lM&obp{T+˖Pdw\G^Sx-W(;彗AU#^3W!GU]FN>{@kJ #@#?Y(,UقH~nُ0蹫쬁^i,X?aOu17vF¯oTXCA:̴#<>~3Pa[{9DVwROs<#2 ڣ.s>af%%1 ݍ:-ܑ])be]fM^Pb zro895ʮsj, J-o,)ۿ\8- I(dcdA= U͗"hHmba/C`7|&z&`7bR%es:'H{kb.c#Ls|֖3dYMR J!VGҶwY1a`xU.IRG_6 |H#5#~uκDp~.ZNqن,W aCp8!ul:HD v f(4Y`T$v~xǹC3AnqxU U4"$ٍ+InM &e0Pܧ?Op1L/ը$F LG^kb]%F=Pb370=z|ʏEb T^U Obр@@,?k'>(lCUK%P~K)5͇Oh2(_k^F`MT5^U?J'zAeչde>k( J S۞X0Aؿ?3LK #E,"-l>Lt ^S4y"޽uW?./}|.O:Ǩe=g41LȗkTm>7tUZg U4/TKt8ώWW>r/mj+ݼ tX"L/l< `aN/! c a%*G^.vWP98>w#l*.rS3G?Y%s90h2J&½?0pQd֎+*Dsh\gԥ}b>Է3[U[$`Y2oAϙ~̈́u gHϷr"a ^5:#mDY2v̄ɼ4-_A 6궊H;HW&$_~q񜩼D1cX>EOG@E+e9k"2wgh}>%PCڋKIND́&#/Vx̟Kx qD QgHD7@r &.f͊K0-Q4].` CW=[RfSMm `C+1˭!>cZqϖ^/_յD"Vurtyʹ e<[oGf曌y:(,()cFo^5|C mWexnLa*2 gRyKGŊ!jن+P$8u|N3Fqdi?Žeۑ_Ŀư)Եҫndj Sr^zevu}7UT~g{ERDKQJ󔯜ޓ/@BQH VLR24EQ`yNqBű-pwN4 _~M^]p|, G ŖfɊ߭)Xv|8rB@qCÅY||м-;)IgHa8EWg/Hi(bDQKBDyy:vNjaln7n:ɞ-m ߊv8#J[eXLwOj)Irs#! 6ʪ?<9 Grޓ&^w8 J8e2SՙP:u As<KJ;dOv ^-fݟAhj=ơArF"y{o3&l"AoS}yT#-N S}ԜFg"s;@c/=u~YtuЫiNَ+ SN )\(P.Yųz˙ V-$Cُb0jB i5䶨eޤe&+ "?*\Z2hgt:.E0|m9}PFmh7\}A[V*}aֳ{O5 P{*P6Dį?#?Q@eX ZyC)C-YKuKRBU}W(nj#mU7b*$?gT(ihkQ}H2&KTQC6:3"  .{FkUA4]=<A}ێܗfEA|ɵ; $ ?&0$;jgϘyUQZL׃x+~Eqxjr&[6;K~r]gy}XJbnYܿ' V}G؟9^R!1,fD4*,AJ '42m@trOG; f(0dE2_?dܪS`,p\81pE4.4_ZuZuyOgIgY,ÀR= U*7doe}#~EO`ixWKܐXhANOe jMEحE ё/I"\xWDiD4UNH,sLF[b2{/m$"yj;ꁍ؞?Uz/`Y %(=m#"b`D^V0b;d*՗a9d`4NŧkKj jid:;%;ntmSfc+ ]o]j㯍w˗)Qو 3 [?Upxrռ{1?sΔ&NA~.ݱ#yL`+t-|Lk*]:tu>ˊ4'ZޤiBO,C=G7;}npUz̵2!m{O-^R}1DsTIUB[OBJ1ٞQ=\rbckow z޿wߙT?ABswY/nz,lˆmwR6mNXpŚ/X`뎔yM7d0p䫱L>$q!7.qVaRQ`tvp7Es`)c11TVpx^@\Q8~]&Mdػ=~< vH@4Jd1MF'٠I]8ˁx7:8!>y'i2.9[%n`:]e NSFt H'-,@ppREf gbfV<7&d]\p&0i-W1os*`SXvܣwjxϺ1^#g( +GdTxeĠvf?ے~Bc3w&WϪDn ߲)aLh>Bz6! ܸOVH:vɊfshD\xiD5/˲(Fe).d V gzbx_L:֤&ruBZ+69gt[ѫyi euE|-R | W1 /Ʌ?} %ێ\ŅW`ifO Z#zj4qa.o:<*k8rYŤ)N Dxу+q܅SV:ΔapL" >E k]}z?h %EL|ddw$~y i3WQSՖYe:AQE{<ȑ3oN@AY,`B hE!ƃf;mU`#ҕ9>>'KacC3 {1zU6#)?pCf% 2\P)MJ2!ZC3 FL/Ieo޵GeZrhx\cx1=rDl}f b="NF͘)b]2&/ƉnK&b ~"\VQت!\:c9KO[-@,[1sA ׮XE>>y]H 5#lݳ2S([ ]zRq-V2 (t ׷٠VBs5=I3kJ]<y(/ J0؛'B pOxXP V5՞΅Jd`gunD0Tso;pD.1DkԡBg m9g;|,˝@5nDN_0ba´ƣQN\!G1ZL@C[rEKRU,Q..\FsX'z{Hhe 90|QB3KGu7M(Mc5tLKTЧGl,78Jߋ{>L39^ikWMqM<`<:A t= ;cXSr6vz4" Ί̃lWL7}G>QؼįrGsQX+mo|=1׽X `!2AnwvDHڠ!8ھ6s焌)vh>H@5ػf6"g,dIҴl]pqB]n -~Bh>itL毨iDF 2S5LXz;[DD!OW. >2K Hx9fşx*QQZbV=`+硳wO]B( j1&"xD ]p=սэ f$XXCO}j9Y&EPN'#dzys(yT5;J73l~@a)@ޕDH8USa"tjj/fuxļ+ۢOۻ= wkNj)ʶoqbi汳,$.B8[]䩪/O@[j/FF_dixԔ2kkaP XW;Eg/+3 G.P|9rӉllU`yݳ {Vڸ~帞#\-ٕidPϊLEwlfɋ?o~A0JBpd?_1OYM@yD2Zv+Gtx;٭5~_)$8p" n t?7C,=G76s}g֞LhL1%t4=.ɟxS7?H*U) iU~XiX9gj^@hćqA8~|M NhIR뮀^1(obޯլ^ :L4r%tAn?N<1)nzmSSp Nbk]:JRN5f[xE})|$0%s4,pljߙֺ Xr |#8s֡[)w4jXwW>)noJIGPY3>21{5̱2{IJQ[IzrQmb̊` Jk I'z,Fof*ىFgE\muԷV>v>"_`/S?_\Āu׃+wq~`g=$4 =%=紻=^ G= TO:1oL; >9S(,pN?JqQԴe2J'4tid۬2uEӤ:*d5|bok%,TkQҊ`$eƛ2wLj$Bv]]v/ʖNe,ùځ<<){{֢g` zIKؼ:v|x٢F^a#83\+|$8aE炻ړx+#ȜJH">x#_y%sB1Q5K@~F:ry?Lri5% b G?ˇPxOoVsQحX0ۘ?((GY$HWГʒui-ڛl//|F|&drŝó}] o)S _CćKvo\9FwV:$STp=N(0QfxYZ;UtnfKVY^J+c:w2*|#ثH{gl[iZ~C/Jd-3MgQ|k~ ӿj_ePI%G`ՓJJܷs0y2]js~HK,v|R ԌLxi<[{>+=7qij/1Y io az?=ʧe:*RO8m<]7egZU VRnFn5.^{m~.+XC=JSA8cG-9+i`I"يWdSyx#ْ#G^\Ibwq7D Zsp}fBR>Cj[r>|'\AK2v 6u'\-ʪ␓䱑4=*!QѠ95{K9Bn4@jufV@F wQc2yع 0?qG JLg{/'…$ΙػWSC1>D2X)!dH"_5ď撃WrTAL_sTtBi5Ӂ&Bxq!؂rg+!{)T>q;)%`WeV1;()=ޤ Ĕs7Z:b ǥ!}sycq ̆N|KJm`j ]ԸHO{h)AMz. MC20lenR#>Օ56)/Kl%lH/PG `<^cQ@<ܪd|qyW+@ ہAh5#%lP XKRpj Xw]>IG$ΚU8h1Z`7I; lM#U2pR}?p7ofoYx[afIZ;9}YߋɛY88U"iZxS=""6g'oQ\ιܸuY[R2~JZ:fߞ^R蚨ْ 3bIRYjj|sT\'Sll&y;[`52mH۽xNb-bo$G,#My"J韨şu1$"^Ew4ק_ҫZk׳4͙@S_",-hkWܙgB̬|tL2(1+ƘY1|E&Ao) pMq6SLd*" "jF` Б:r:|/߂N[u m>4-jUTx|n%ѵjdU겟\:>5Yw: ,lPR'Ti1b\E„v$ҮO WE\- u$ݹSd0:׈I{3U.A}ﲠP(5~mڐIĒE-r WѳR",iy^4Vj!e["}k82#?|Yq`hݯ*'ai\c3 {Q!H}ohPO}xT@j&>Om/T3Lf ghPϙUBڌSe(|}'gW7;źw>(0;x<,C*YB4l^,ٞiU<|}+m'T܁iTؼ&=蔊 NLi]hao? H[@`ڕg8Q lIKs4T B`)~B:괈ƅ[g4э =T[QU5?-1@ ,$.h}dr& \5mN5e{aFPˌe  gCiSzVFWk0ѱ-po{PGc"# vJ<2Iy|Qp|M2w&)Y`o<dXiUo3usŏ-\0N;uMEQsJT,K<"k- 0+yX?l!L*1>xJbhTGb{e KGxΌF#?z2ᔲr̘Ӫ +fmU>p~ 7V2Tj"_laAxVn |&6$enmOGEt]9\sc>xE<o18KWQ.Mu=$¢>nۨɐ nd4{+1uӋTh~nB,`\Xn,%Lraʻܕ~Z^[A?D3v}R` j@fJ`IIK ǘdDTjpi:KcCܘϑ> 4s_%/<#KǏeYU4Xt%$ÉH#s4F{y5XX1{Jύ,F<)%Fh&F _1bz{3W)ݣ)L44S :L` UlCHdMe20F6PLi4vö9V,|p" N,:]4.B*NFD3%4;Cd /n;vcq ,Ɠ!Q W͹92O숓Ig3X# jtz2 LB[ˆe }ߩ:HKO^jqʊK6)*q&nrMw ;c+;ܳ&9JKL[~2V+eTMYin@@pj}fpE_%o]HL&?Qxԇ-D CE'e)8*fh 3.{XOmH~}faj1ubvI"ZH*omrH0BCx&O}q]G.,ciU9TLi%ǍrGw[:Ni )Zd[q)d7MR.`Jp4@,>Y$(@vWeDFM@ીx&U !QFQg `qGA45pn`,ͭ)2iq.jyEꯃWd4}Mjv*xxb/ֹI (~sʔh$uSW*X%=DKmd}Ou8-^UeVO&+!k;RF bيJOn*=*鯏Ykgx?,DaGqLdbYeE$E5 ~1ȓ"qG9ЂkyM$8;A Θ[1؃ [Ic+mҍS<=Tua/LWPqN~oavg8nP; @a帿xe)rSv`㴕؍> e[%Tm n}XV Ƌ0UM^dmtmY8j?T19b?,Zjd@@nlߚ~mc\ӗIGs3?_ߕ6 ,SMQc|}}=,EP}.I͞Wj x}w W# A\yO!f 獒ew(`]Z8n=i@<[s{ǭi_WY:Ϲώ]~>Ycy եs%З"u2&`<l2ִXYN'Hca, l_dhcrJJw!uiALޝkVlMly-C;zy޶ EP-W?URpubMEWTu7V&*lm"(;DE?eρOgHV%d3$7'C†p-1La_%rF,YEc:m)\A[_RRX6<}ZXjnm@=Dtp7e\gDɘ \ApHi #_Uwva m(cq;B ; ?ឹ2cL\K}G@Q?Пm̥/ ܎sRzٵ T wgN܅Qs(z>3&e~/6:RAC!{;BE\ip8FW1ȜELn/It&KNح-; v!-Qwի;=0]uW5})2+w~2.EX0dr(-eH? /]2%vU:S1-BB: [&YbK1N"AjEy|UTLXLWӺMѭDdb(O9 Qu3v)OIT 9b`"Q}XvOW+9|?htlv=FZEo;dF9paWɋ(=a7;f:eY`w'0bɉߥHT(tБo1o3bвOrLQѼ"jqEnR!6VrrNAMklr #K&*_*c] %/}8RaK檂8E'ے""`?9[d}Ce^η Au2'z0}&rzdQѓS8-Vmn7}O7`Y!$Gv&R2I#ݶ}feԍ*i S[kĚ*IJEM0^D4Ԫ}]=dl+9M0t΀ 8'Ne1wBXUP".IURj-Ez~EK:MeԄgqL@|V9{! ';^0)# }R2+BՄĬ/( "'P|\7'l*B! a_48Ka 䜥9ֲab/>jDi1A"ȡ%hvYнp la:M3&DUTg`qOIO6W`i֝Z So$G8j$9rx3YKm=.T뚴* T|,rlÂr=>Ì 3Y;A ~el239iwAT,zo6lk"c!ͰսaPOT< aW֑=݄ [B2`(MXCE A4!!ԤjS^ףG,i*~ȹ TLP򔊾_8oZ Ɋdyzb/niGϫ $mDYWLov 5nK/M+&o |yTmb0 򽋹E4{;4ϣΫX1d~xDMRܳ)z{mL3l<( ꙑ`^G75<*|YɣcgI ':ծIJ#J1 S A!.* z[ζ5xnJ1OC?#(!q[7d}'Vщt୎GQpu'QW&@CoL1?M^5[ =+㓌y;03L0Ӱ|3!383 Xl^믨4u(K).7hdYRKxP:#'g\PDpkmh t*i8+iA6[Q.vM/ܚnL$oa`…w1ڈbyDGe<^咬>7uӛ 0q45U{) `&0dܵا]Dvf :#z;`ZjS#_EhH鈚M"mx] 98SUerN8&/vgRjb%Юl CY7m \b:gNxm_1ةg=-!m LTzʸ(`ꪲsȭVJIZj[%wg;p킁{4ьP I c!3MF."y}DCd:ll!],}TQUc7Ջx3`s2W~>őT"`c!rJMaqu*iK ò}L-4G)H<}?}hj?/)욚|y?ir܂6\ʈ ߓ W?Puӊsa|jpuH5w计+ȽƣGSPhv8azLa+Iml$uWD2v >( ͙P%JdEwc,}χ*-vCh3P/-c.n#j&mwC=c+f뗮A"K-SglY+][[Ӷ䒣LLU9i UJc"z¾q߷2?Z0Mmp{vSa SB ڞݬ UX&B0jόƪ5'd{8iIR./bt5Ep1ۇH6+f܆-h&#ޓk6'$SѼQ17R=g K%Dh+XƎym"&:P =2rںzOH$L׿mcѻgz\չFn,مTY 1rtJ\@,/f 9ҔE_ +XJ}uAZq9n皜Pw NF*jNpf([djւ2(10Ѿ6AIT;U2fmwwPrl|ZևRC@M!] fH&[~04g'6WhgMʂ$K܅QH(߅Z]a:e|81ա>Vo_KbThJk Ʀt:@ Z "LkBqE.ɜ=hvLe/kz2p﮾*YWZ 5n|u2(7cE¢!1d[>@B|5bɻ1P Yz-&e9G~4:<l.p:>,8 $pw~o= ;S.</f|UK|Sը[5u\"ca^F[44Q&2̅]=% [1hbf@@UtZݑ.hlƅx\WG [_Az2~wXS#D4_|[4׆%ᙫ|6Њ0yTҵw8Ba ͙3F輆:%'UYGpB7vjHC *KcC^L ɞ|"Y\j5t'㸶fހ'gn[%BMv7G=耖,~,| Ij P%B!;!DJ?#,_-TX˞p0Q/_ 2zJnC$i})hc.a_)O:*B@2$07yn-U&+g>pk k=򛙨BFvjzCoa%\owʦL /ט4֬pct^KB=xU tdTjn-BsM.^md*SLc\\\=@VeZ4%o]^^Jn~Hh!//|c7ڼFZbо)9c Í_,V_S s[_|g:S(r/`lC۲bEs?'o;]!`hB:XnRW}fwHڣSAWQ^1+7_Ă/Odv$Il} &_m_l푃R1)A%-] CE%UJh-ϭ̮q!ϫ 0<'Q5v^8Ƃ p;BR#6(r&3U6q9s``3.,>3"+ȲC浛H\)m,3t #ɥY,.j)4͝0;{-K1jP_QpF @97߶Tz2'wuV"`3SaYv9UUIZQ@g52Mh[]D35$)P Y;`7OҒG!"rQX |SoIs* ^ZaO9r8ջKj]8qHyfڶW> Tx]j7˸Vh03e!uc!V!2 !Aw@G[Bs z W,Xoި rڏ?=zsf9Qzr6:ʜ]֞}*aM Ox:֘b5iNJô) qOK[&Iuq%qebdVP^BdO{k+{feQ00/!]׋is%Tť1Ou0Q%tr8VB i{ĔQK+)mpŊ'PC,fzU@nхVi ]h"H)w" wbu׿7V'DZKm Ub)[)hnŽgm״ >E)%L; urR55F˽ց e_|p#y;>@\l}NG}%M="b X[Q!rKuZND2Aܟ!.sEֈ~p)a+ߝ Y)"S%=2:g!lC/4 Iq>cZZʰ־N[BB\])Ε'Vࣻ6g[ZGm+G pQTM/ 5'0xB&hݟ@h,]}JCbYvTZznufkt5aǼMԲs-'ѹ^gܫ19 H$㥻'<5u > za֔u-{+&o|D(zBt19 |3,n/ [1* F jHuEHCu<M9rqH Ʌpa0̂sD>p P朏šO,`Z% m&uzۤ6W|Ӹ5L5S#U}tphUZril=˩|:DXĩm21d2RR-n!BsDxg4X@i@rF1^L}W%X{BeޢQr ղ_!\ۗ΢nK||cq,z#>|`OZ$pxnȄaKXRlpI]ÎE~CQɧY%:$~M`AЫǫɟmNAT ʿv݂x4ٖ:Rq$50<&pkd& .n(aZaT]LX]rwD8E @QQ҆M`d07qeGzݓg0߉NvVR/9aTܾ$k]fwt}aS ^o F5ZQqǵ> " SVzFj0.|%oM!::gy;@C(E(= W#$FSYAӧ'"ԽXL+K=CNHvŲjK)эiZC:Ɉ=Buz@=ӥUziy4. $z%>e]a)K@l{@tCm r,l k&Wuh0̓=虠ӇMx­U]:&,Guw"RvlADMt*z֚c>8Y#VIPofJv!@-؍X;y[dlbpg9=ңZy/!4 m]d^~$xWV4B;UP0Rxn-cݠ9#-^[.Y47Z#B'ɫl+1w- A~νd9ё0XO2>-cG-FfYI飅`-h+Ooqt|r6 >3Y[QFS} wqducG8]MKJ1 k; 㜳xmB@PTT,JkQY T$_ʏCk󥅪W: _.8U%6nk(@1%O!*k>Rӏ(y8u *"b Q{ x#(ޛ˻FMZANQԁMb>_M056lr-CmQ 4p?!Yh]Z~c+Y~ŀf]0zP6=r;dn?B? GM?TT~$: ݞf0e?? LQEz  ?.HuL`fbZ_'~nPvc rS[Ӊ'8.2Pc'NѺ-/Xae.hߊ\j bysl| >ly#7\ 7;c$g|v@/64罨B~a{xic[.\q㽊AG\wM?1^>0_[G.SJÄ́MJ~g|-Up30eϟhgߊp 5\+8xHəa?h1T Aݫnf碩ǻCq 9:l9`f[.N\`ѹz c6 |iZdJ~c' ~ ! 6mU[s{й|ȢytĐ.X=xN-E<~{ѱob*hk Υ32&eIw# "󛵲6b*muu" 3.?@lޕKMw"8Pt_L.gvZyI~[hOsnhS6R[ n$I}Vl \xB]_@Ws'y'IKю+$E M,]Ip^Gܮ{r f!(NĔ3-6@ |K5ƙګj) Ћ ,]ָeMc Fz(Ļ*u'i;Vߜ_RjrOlƒ$4 q$6l͑uURkUȘU9-w)`00]&ֆΥIL :??]9~i[GT`ps ̲k/9:)g9_l$uh$lHF?sq&; @k/Tda?z?Vb021|7_sfRG Y.0.@F+vޤ䮨+MA#%`+>)#|4[:q$-:"},b&BK,'eXM\:.<Ɉ A- $hցeU_H槍D7i;9DA#ˠ?̳q`@DV Wj^w5w/?*|J:u=P׮G:{K!#-59C=sDNr@aG-I f|bLW[Wd0ߞ nf"-zϋXv~w}(AN!.-?]$t0₼:$ΑQ&jg9TY_jropj8ZuaUߏ:lsnfif"S@+D 5TzDž܆F"L0"e=NhWɦ(wEyP{J)H>\L(Xι1!KoU8J5Xxcx໵|^j^/+T,3*4 4$ \vfJxh+H?ޢ'k$D#yCx'e3M[;*:IhQtdJoD<b8I7wMD!l!r1U~,aY&ЯbX0h_@V~.@vb ;E;;,@:B"nOAZ]uibi)^V!t%@+Pi<{)FԈQň%v껬ߵ Gau*b+_zۆ[C/c 2IƷ)QC E3+,=x>`CᣨXdFd.rԳu | Yqђӳw}k[}(hl9k&ᏧON!:W'V;/ރi>)THڏaCmw=\MqwV>8<Wϩ Ǎ %7-`˥1yǜ6' ]mJ Q%j^^aXM# A.22T=vߺB>ϜZUq>GБa5Xe16i=eWBhd~eo"-].G:ѮAQmWV:U=G iR(uwI6c-PVv6p8c0^;z~t;p`fy8uxy:BWO`uK_r4XEhaHN`#U ;&u,Hs !;ΨGPKS7uޒrI]MB%X#Dc}؂gtťrM.# _ wϑfTWQ0x+<7})0,<|`U8JLn {NB&L"R󼵔,ҩCIcyA\U0FKj 8q@I :u7q4ۨb/ wl_KƯĦΗ]iLS[GA nD^v"F!_0*U:)\o2K @)g1RzfTumf&:F8 gЍs~4p? BJS ߸.>f(I5I#}hQ8~[+O("]LszuGVLcPnγAysɯ;ziK..GC̐hL-' ɭkElXn!9BTԡY{%lzp`n=^je ET!tD};␿e.YdѲlױt6tϤ1PV!)ߑ D%hS nm$U-WnVyd7}~LH {H>rokW& йL% Գmk6'$1-@zp79<Ơ(|P>5Ș0w>Nee[Zȶ'0|DPQ6BMbW2,|9;C@4(Ss8i~l'4y۶d_p=18XV}^}h`dVFtAt=v{]q=  W[@ą K|>3eMW;ܕ@1*92w`Ba {5-OŦ dw3A.XY?f[dg p9UMr]6* \NBgwP~_o`м1kGf(G Wuzs4,u-@=pUhf_6t^ERXwkCy(:jri*,al2GRA'jA lL*9hv091]?]'Y('pj#eEKJb6!caVQ٤9$Q9en>$=Lt\qJlMˊQ@hdIt0+wh*fujGy3$7D Uv/Z }0'XF-k "'xА2fX߰y8֖vx,]i2`OJ|5 Q"0$ /Z?0݊ !{indw#ڜgȰ 0SO.IJ(mdFV J#cuJ?.p <=)eN58kܼ *3'>'qLsJ=g`'O֮-o! @EU87ˊ"爾6R(k,7އp>Svx eTtwᨋ*|UlWE,IڟO uZ6r:8V9J7>q8O!yuz¡fͧݦ>oAۮ^tj$ꑺi +AEjn?=@wIg&|\ >F͘|fKEXUKmKS'} S6hK^ U< ?_9ܞ@~jy-k6Re"Nq X1w[ n6T_߾ xֹ)(EWQ=?1oC!H6+ =/&>[~un>6r;X,U;lLj.Blb:*W9HwMևUDL6omiY"3׎dSKۂsd$&9ja\6GE}>2d$kr/?y8.`Ҡ1Qw ^u{ P:1ҬݝqЎvĕ}irdp:rjO"ʇL5b0?!MZ:*0??j>wJEH}%Z3gR$n?roC9蒆&f eW.% RjM (On)=,ި`Qd+6 \qT 7\cv"wAt[ڴ1"状ԇet/vL5'B3uU|=u8~| eB/lqޑpC.V),4; k3{.76y΀PꨍȣW m>[W\BU|;+5kڵbCª^{;vm Ͽ1'X ™oܚW}8l^~E5t]-x[;Hyݡ .ͮE=D?$;[h-lo?4򷌞-tiz<%9B-+ρ5av2~`.5΁lMt#j܎n4 mQX1{0&P-U1У̬U:WWaNޒPr 4b$a*5:R 4͒j4?rIU"bM6&yUz.U\:z%'62Z3׊fP: E '%<.()*=ۈ 7x[ݲWhOJf1E&`[L*Do8 YFEOΟsP{RK4.nbY& j]O܏r&McĄ $>PVsPn4o=>w!,@t0^ːp6;0bxfFq/A@~,q u*0toi%V.S>ɞ![W=*Gz%a?tǨw+p@FDUCgz}v)BFkm}y b EEZ2#<ϲVGCH҅gТB F?'HZf^ȡ(4 ɝ^TD|] {~1SΓ_ݟvN|\QWJWk Bq%?jx+ *k/jJl!7w3;ïpX|nbJ.Tԛ5ܥ~s*o]=( 2 kic^ֹ G\vA.Tr}+sݓ~ܙaߋʎ"-[yRoXS2)V@zʻ]4I&3&/ь-: _l,Mgۤu6yh%[cphq0FNŭ%Z:H|&67Ѝ}Q}~D#U "|\宬R$qqg *(bh^ onw #{}~o@62y<ƻvwCh-T.rxI|[$ظp"OҬp$GIԁWf4:q; APjAižusʭvdBnA2rpMQij#s_:d":cךۗ%d@$ue6j }NTsp"St;Zsu4(y j s4S Mj{"hRKo ZTKrD髄+NaѽcRqG4*Q@LP)i+UX˨DM!>?L98['nr[LC|JEps'vKJbzԮE ?r9aaRQҠabTd^صtJ_&e/-evL6- =Ȃ*O" Wtm+Aos'1ԝ-`#nG[2f\ Q/M޼֨UV`8g'l͊}Oգ;@({"<,&ZY]ckʺ/Pf; r=WYg;-Ϡ1:H)ȁ:RκT(jG7+M|@z2Y~ R oCnѡrą<[JTlT^ $BA)ӵ啺=uhb9wk\if w gZnyq{!ZJoc3ڎGU͓rxe/i̽ u5Z|Q yŦjyi" omqk)eż,Xq{GFNǭ? 0Zw 5jd.-\Yf/LL\O;!1N[3# 8%-~1Fh7sed ĐPO3v,>P=)yp̋w2fD /TS3ty|w$r02'xY2P/\)T|2w=b])ei <4xlxt8 {b؋w3R[SNH4olz^{kMm276lU3S{Sp*i>H>a9fO">+i! ˷!2 93.^j^}'r9W$.^,U< eNR%V-9¥~?A昴9,OTG@u(5`4nnK)ۻ3ɡQ.8ѓμ":㲹6jA"yZ ೤Ո#r]27~D]3*' B GCtpw PvvX9s6#qda-%'q:FjFu R֬h٨.Mm})jM쀚 !~3-:Ӥis.4'ɜGBc$D__W J8:KqMc:X waaw2F1!Ir - !6oTOڐ-2x.GA7̓eEFLF*'ޞ#|{+-gO g/ ǙP 5t,93x(`<0& D%Ap ,SvXlFa &=LQȋߘ'.ݣnr_솉-K2M\R8¹yJv8T^9C_th逰Ίдqce bc/Ruh$IzCi;si#0 t}OQ: 1XɒFF*ôN\ C)Jk81=%xhWYdط !~A~-ׂMKF}yЬI֙b%F` WYI|:p>#.˭=Iz ViHA؅*k6)TND ַբoU2?l /y%\148ij6,5ғBN0Cmw; !~$wGb, 1zZI:0l f9$hpE) RMn0)E*rg>NsQ)Qx+)*BvXz>>!TlP:xvy+P |sΫ{BrߪG.lbTݞڛ iIܧr).%-Ⱥ⢪όǮ >Pb<5ca:c)B+#iآ-pY`A\1-*OLmr)9羷N#NB[G,bN?BWd%'d:+@wnlpdC2uqi.:7ZTҊ% MK ŖjX:WSv-i0W<biQ];R_GSH˛X17~¨։ P_@5}ee&*luԇȴ|߀ԌNwfs^an hMB+"'M\\u8%G,j+j)Oӱ'o3j.SNKk<=ԝ)};eo?"8E=^p_j9}hrD2{98j(`#TLHL5," sیC>꽇,u&,qmA=\BPoxYJP^lq $q#LM9&Zh^i̸ ةIY:s^]tq̡ ^&ΕMI0'4U!ߗ:,`a|@8k:%G'.P$bHO*ئM[,,4_Y$~'jWVWRbT!{gz2!omzy,, |smb kۀ}=9^jfkLϸ\j:z[;3TblhzQaCc31,X/l?1%S0F?}gāb_OLVwJI)gnwQhaE]paK9n{vYe3QIYw0W^\Qo$Xf~k_[''J$` 1ю<~u Fof1ڎuzwϓd|e)|8\#rHs=׹ YB)+9N8U9e0z">f Df2Ҡ@A5"[cn?6fr譆1?G+ID,к҈҈|C 0=ձ)yÿ>6wmZ)7̷d v&GObq!t SݡA{cK=1@}O I%ǔRA\U:bqTE !3PPOл#]Y3?m[5;U0FŎB7w|*o/"?e`EIops욹i,T} (%@7Z>aJ'zƤGyer0 O1)J.*Kmp i>_zX4n7|pKa潅dҷsz?ꬫ k3HHCj(EvvlſzRMMR,yo_yˈ9nd(3"J' .d_P.<Qv*q̀8ppg&Z|Y{S+`kdE*b:jZkQ>5d%U]{DİК S3'9f;~z2uB C1_J~]eFE޹#kq }h7]KuvS7 hci砒JbRuxZ3+M(RdZi"̷.ӕl#]\It!+hg.~xū1 0+C~OÎ~>EYqQ\fCrY@qT%iƚ. ")bL4fHc }ph !E#܊<g_P< VU#(q9M:-"";P㶖`SʚQ9F!]2,r 9k$:TC} ;w3l8J~!ى#Sh~Ҩx1ϜqҶ^YjZ7T D~NweO$c 4_mp\[ H7~nXFMx}j~Ќ}O.\'&]R))I܉Jz5];ЩbkwM ggʖ֭I[bkNV52 +FiqZi2,ؖq ѫ;Ynp*:SGM&~3)խ9oWW!4h^=Y;ԙ}30}oe91; P= gVdW }AT6 /[9"QG~NX|-@7V6_KW'-/+68I=TT['8~S1޴͖'B%Iq|ϳE>qp&ng0GZySB:Mdc|PUw; nљg8I&ŠNP "Fh~Xdx,\g%A~Lk)OYl,% 81ULh@]n@Ž6#ءC_z2h0c8pOlDnѓUͯi\c+O欂EuҷOj@b;\X}#X)(? 1McIѦ" @OPcZmۮKғ㻎:+, wb(hHʏ&JP!TSԿqP1SxjC"8/+]Z0 @G7d=d,3 w,XH9NB60[Y8%Yցtybh5TWM ObNF}ʸ DxG'[p]"gĠLGܳz30zdޏT&ڽ T rIڒ̗(YRhGWrct.o4PdWHIAH ZI2~ RUt]Τ,5gTSڑRԆRc\tɃg:w IbjVfCbG(kR:#l@hzCܙ8;k&04"+W~)O݋ݪY蔶im'zEY{0@HTNZhC"OtV߹NД͑c!Ђ^wz\;yvBƆ|\wnf6`Q3Q%)M/Q-hCZ,H%+@|GlyX?or#2+kШkTo:tǿlJuR?yxK6BvͻIǟwمuOrz/pUE>*{6aC؞ғC 1@F.?cAV7h3Ep|j/>BjJV/`C%0nl󘎊͊Z$ 'vql:3ӉvKU&ɜŘ>=X"h b HZygg͋])4Qj>hTBw-]/!(J殝bʂGR% xwJyo”}PLiCI{(.s'il8X^A q' d k 4E4 Idf&A:׼cF~xG]LTq Unw6y_6S$|aȤV{|-xN%-qU/.KߣX>?ck2/1w*(Gdbs~[^^3~ɋ\bg%^|ݭ<Z_жfقn'st NZؘ a9m '{R_^ͻ\od'ΡEGm 0pF=d6 Crm C0h./sҝf.{[\#MGsؚVr1+Zcl I=LZQ| qorRQhRȼ.=WNaA JIy*|t̻98OSBawV$Zj=鏌j5En#yk誄Es!-h[آ"OXgLITlri"/栏iU%Tk'PYs}`UV4Qc"% ϰ)}, )m>/s\o1hk'ӹYLP fK75dHJXN2/8|<&z&51aA<ߩ M.:U`dmyp[S ׄu$-#%14]q OJL =9e ݜ/&,J>~~_7I.1SL_>n%v{+Gwn(Va_t] eMcUXjmVUf^.6J7lwB=lU$*aqpXcM1imYl=(/$@R܅!IjNfa0NOK Ev؍]e&80?d·걀Ev @\۳zlmZ@-+ۦ͠ nu:01Aq\ 7ar X[Hb&XpB^L׉N@28[yt^b^v3 [Ҫ3H{ w \ćTK'L]>F/mf4a4m6!'vW0HKBp_wކGώQn})d@%LGG&lDbBl2q]O#SL~+qe]`DEi&kk{Gdzn/:dXT[wQ3bF8.WFkm91H{lR1j|w0MoK󗻜IZl*(URrp^*b0J?5i|7֟W|g|yhL}Y,H4M!͖09{0đ%GO=iwDx/@5o<=^{Uj]@0MHRZ?E kl;ك08 {YKg$TRtC:6j'|N譲\.9TyqiH`5SF[D R4|u`#ֺ̈[% `#=o!,6w!luZũ+f^ Tҕ--ts'yG\wrzgkf&„wʅ QjOjJ\x)U]ozASh;$J+B`C/LWDLsË}ttIֿsIK{&Ӭ+x As:Ex:,&qEˊPvVv3HxSwѩ/#~ )"a3qrk=Byo#ō^)Rvq=GÆH-r-^B1oxB–my?yPBV(2`KcrhP(x0,b6J&KuCʸ+qc>󡇝O/RH rCQՂ`='et@-"U_!7yj-!櫪5 uAqkutnrRZ C,+)D Cyuī 6nRV^dptfbB*JUScn35`!~ ;-s p\oۅ:ϔ綖 f}j}&Dgy\ZSXH)H}GJ%[nT1*Y$<1OC(/ԦkXPfx=(OAD܇))I{[0`soFD^KO@2=mykA+F4W8T7.8[d(ʞ l>Bġz)jlrY+_LF K=bf'B`- KcH)ˤE\^ÖFVNڌvjm^<]dlgU@k~ڪ4e=,vV}) &V~:^_ӧVſ''Vc\ ׋ ]ho%PɅ'<_1;z1nh qR?q /iN~>VbaN ‹hPzi*C)5)z B(I[ 3H5Vm%rJ?a,L7zu^Z3?t9BS)q G> 7`Ž zYQ֗V%%Dϴ1{ZmxU?,zc9:^Oic=IQ}`۳oe{o;\%jE$Idq|d.2<\ s20J~y.]CU); Vu! Dؼ+Ԭ -bW+M!@gqf:\m>Xf;5γXO^?%#?"ǀ C8LANKMI9x^N%)~\vI_:5 +gn|f9\݆l#]zEDWn-Kba4J:_:3dR8Gyi6:կBj$N)SxUnGf]șEoC׫kWZOoIJS ?.OƜq*Hj]ekԍW(!AO2&]Զ72/0fV'"ƚ a9pNجI6X>80P@6[H@W%U5lG"EfD0-1Jy [9aWυlX BR>$ 8*Zo (v{`q N}e m[jRXU)(  ЗN߈՝ӷGEƑNFnS >w~}z.!pjNHz@7LftC֕9My% F=O{i(g11d- ?Ή!ZcN^,plHVoX BNL7uBT5-&6'3:Z9SG],;Ʉae$[sKh}>8N}粤ޗo$[,#F44's^/,R7NҿCBAYs9`zi&@ 4!ZjGs{pЩBn7@1 КG2-99p5F=WL\aCvKw1T'xiJw(͉ދÂV:AxQc#'a[l ce{IYrvc{c¯6.-3E! C(7y5o* }N'L 7r|޾R5Ѡϧ@Dٷf*BpE[H)pC;s )a5A;p\RVTW_e4(V /m nS$Q|e'@|xT U:i3_;z&5qnN{g8VMlK;=:1 +8e3blHlkIy Ub'򛠎x."gA0 gD]˻PP Hu g|6"ri+''X}=:S&2g`I)9gfJؓ]9 SY %;KVefS(1e?-&ffy& ~.Xr8 2KDBKdq8dzZ]HIq8s(+F1*1ZBNA&o|Z\3xCZJ{`ۓ&y1t:& %}&kN/!Z)Sˆ; j:`*W?ڙ\ns$tjd`ϡ?L.Lf"EҒ0ʢ'/iۚeg)pP} Q$Fr+V 6ؙՋ_i}c$aXiة{)\G8OB`VA]t7ju ge_2_}3esr9lSݏJ ז)@x◚ Ang x[/ I<9v)giYH>)KN{:*؇$93A43l{c9QO* ̝rѢ+1!ӏ$wDՈ$aGEp9ui$Gݙ4{HzsCy_S(%M@z JA}!kWTo5VwY:ٶs+|@( l1jLek& U!Uh 'RBF2-}ڸTqO7)"" s0pNF7),lu{t`i%0F d;0ӈE MlY,Θ0+]Q*K n>a'՞ ޭ_sw{׻ ZL.>ǘO`(fxT474fw#Hn _Ep0,UU{CaEX6ϱexIjׅOe ,3:>{~^pҫ&8Z8x3޼n-0gM%EGL :u"S }O0⿬Ը-D>@ٴB#T(@':J{&s0ڶ,IC@O"&C=jykpZ˓bhP$z+2q"8-O䊤Y{aSh^P)}z5GY\IN]~!.֩?>[/18oի4?y?!a[b=(w7_{-mj"3N➇_2I c/(^-ϔ,غSAx0;H˛O^ W&*l |v\ϲfaPB |1sϑQo~j~c5--T+^?5T,JSF: '" ^JZc,Bu~ 2|KM+Cvx!;n>;d`!dƐ{\Z҃pMݲ=McwԺ5AAx?4^v`+j_*җ,k8@{t_uԏi3+_2jT3DMڣ6n L*L⾤32(RE[US_Smra/1k?Pz$leWcXN\8jES/ e}W҂/OUGVtOb$ɮBo%e݉ԵFmq?jtK~okcJe6b+ Jfp@DdhxGbF#Ef,,K&Z&1wjgYItf#Aݪq5 ꩩÞaMVخi$c-Y8|&z21Pb!ϔMi%X?r)-h$(qF8Bu8=4 >&ixD_;Bs\2d< eZ6 +M5P"HZcf#['U&7΃ʀ3])WEH⍦aysO WnlYJ]Ɦi>qfE}80Fe;IY-Pjb]l3r|jkҬI,@L_A>ɯe: %?{7@Ou 3lAgÍ5^K A*}%Ә(7,D\n|2N6tb"#RJ|Ia0)?1;$S,*>Ndj'y 9QYR~PԚ?6 X (^\T|SOY+fx/|b"d  p~ L雇CB ^5)~! ?X0"9`ck.g/~[ODaHn=%4r ] ^%j{mmfyR-Z19/r@ޗh ĵ`3_[may~}}\|Hc0#8AH P!UifEINX,BWNL#_"tfa3V˚+^۾U|TJxg_whvD@D 1ڲuAp3d9$u/>`G߲W}a/`4OSŊgJ pvJ<_7z:Lj$2|4zi]s!Қe!W˂6|蛪MucJmv A$71T~Ůyot0~*F)Qln ذ-y.ۜ)D wyהli$tJxq ա6*řtC_2RbԽ޿kC2-圜k쁊X5üJ(+,NW$mֲNb!-bE\Qv"5#->PN2aENFkL{ϖ~ \L6gQ~[ cK 35ODSq৙]j>M[zwݩrZP(y( }" ".r캛1gnQŠ4) O#Le J57ÐtPt?UpfGNazay"Y8lj X3wL3J33䋃!hL5W?C ; y<6V)q´G>ʦ^l`fم/{L 7 Y,~qhu٭ZW>gj&bI9YhX/ξJᨄ-`ei#f:4ۛ9U/7m$HqڣWWLM{d zo?DV0}oi|ϟ3o V;#rHj@R v*ịK:ۉ,pTO#%+m1{"$Z BzgdY!Ƞ>&v>,r"̀:Ryhb2] 킮Di}Z?'0wtF8RjyY/ewɠH {ͻP%`UU?2*9>:DɳUv.O3"aCtvVLqH9>-+u[MW3R͖R*"t~qP=ɋohz}DUd #d*XvoSȌRKI3Zw 22bp ɾ-*m\sv80urB]Qw38<҇P>~@/+ 6HVzݪÐ jTx.}V;}| ]U5X]_<3Qxj~l| ִ68~8ptZ ^+Ϭo#T+9E5rD.fNIdkKx2H;sPc惃^MSLrQ"Z;iS_u~p8e)UkW3thN, pLk!S/}̈\,~ l_IqU܀*<%G-TW#^!,:$ni>2}P^+hh8\L/ (5">/ͦc 8. 5!4$ߞ4HTU~Myv.zf% }݃Į(?…pܾ"qؕFb~E j+ФI8vHgNո(>k؎{CgZ#Yr9N_Z;]w}|Z+d6U+Ƽ&L-{g=i%6o؀ S:KN\zvɣC̿eIg-83wlbk 8@51&\h޷353bg,o) saS@mP8&n+JkC)3K jgbZn36'l2J˰|XmW?5 ^Zƒm`Βas?ٍ6"ߺi=ģpDS`WXBİ\ue !")9-̪էf!W.>2&͙SkBDq˼~w)|פ?j/25ZJ9B E.h 7|=v%H?{:_0#sc4 K.9R!b$c10BT`8aVǝZ2 N_cl[~{CJ{`~?o+mB2RNغ5V ׌` zTgrk '7m&ɨr'-.)Dcw`F?^mxyc o-xޠkJ%ٷ껓ّ'U8qK@R[btv`b_C ꨣ0T}Z; dlR\/mYDbЀ>Y|2O<^WҤd%+RlGG@m63YhPIG= `)=# !(uQwlEbL-h٧RJg˳"Y#W3n,'sþ5Syp;FW$eC *'I0*#p% f":l+w=حB+څDc8sʤ̮6+T&;ٌ7/TDpZ_@}XoLעPE=z߮ӇAxa21v? { x ^rkKD熟ߘ*0|Wd^>9G!^Z2TDsR pEw֐n-."N|٦ o ^BZ%;hHS}9U9n*"KEaۄuaKR+seƴ.sGy ^>Dn[y8t/p0q#CNP6VmLHfj .=zkO Oבᯜ]X$W'9mj[:mE5J9B=ünGZ*ߎ HQn&z%f,.K&oq;|~b5Lq'Ӂ$ƿg'U1q:d5W!YZ` א1Lg羫b԰u+PFoy*qF;3& X3jb-Weh<({GpP6z~hAaɰ/=ϔ70I]E_T`{p2uٌn(vË/'ObF7S`Qlxk:| c^ _'y-ɩwl(:u󢐄~;?gʹѠwS"ux[dFu0&KPe(4Ok")۔R }̜v{tYfϖ%#/t _tR9J31oϸa tNz\2/n;E!+Mʼ "QUM#zۣo:C}]PP gP*sS4k+R(Opzso8Ž#:sdA s떥AKReq.~-a¬ 4XAWڍ LcG8?>.4@R/A׭o4\>f+aøzui͔w/^(_2Sze᢯wHsHwXP}sRm_95fBcPM&.kt'tq6Y~XJ~w .;Aj9 }R|ux7d NwBq)zɏ9?o@LynΧ(6QtMO7#`[ >)B&xnf<5[QTiAt`EXֵ"2jbD21sظؚC쾗wFM̻[CT-"O} 0RKS! _x0)v$ "jŽLz+1g&B  |8{7s.c䆗,mUi<4m& tÉÞ蜃o'|sR}nԝRZW hGh(olxau84^OJ~K6GxkK,g*%\ ˄0Iּ] X޵R4L!Yg$05䗭I0 ϛ̈́\ ":mmnhQ%qXV9~[bΧ:Ps{Utq%C 6l-򇋘mU#RI _{ԳL t_}FZSo eRcpyL-i!%Zw 'LL5h =^w' 3)aH7k S|mItJ$ophHM̗;)h(՞E{2JV!޽Jno)vJ||CniZ6Roث~BǕlYɓ+܇l1lhd1 ^+K&}ӟ'B"$T\"\N0=.dN4HdnȽÔKm`x~_{HkugS]]ml8l 1,Zp 0L,#p|nń,QGF%:v[SЎ `+#}ۿ MPVO9`|/0n696ENV;Rbw ѯz8pRIE~z\:H`BG? ]P2K\-Ljs0UR@(%dC\ YX*F91>vR@&];+Hs~_9}'bJ -xnU2;|dԞ4Tn8.>?C2frZ[ ׊xߙa ^`\&k{@K%<X?*(T)eig jMYs#ܯYq);Z^S j)v YJvY6(ڗ@6AxD!5W:j*:h)c7扳ltF3 ZdS6c6tScy}ҟa9q }jLt& /<HFWybVο~(R SbLum< zdr/z J3\Cb$_Ns};q8{#1f9vs$&JbeeOL>:<>UqbS3?(p)C٦I4Ay]R 8^Ě%aER#+d< uo9>rj^OT_?KxB VR ~|&+A3'|2laR`my $BrG̹'oDȃ%e:TTlKr@l@]%Lψlq^uOoױQ/ Sm-d2^'NsB 6${I8l;+tB˜S1A,; 4ne |l U%ŲZ lT^oDTWV2Y`Wt[>y.Lw (6xFN-dųpf#DYxnƷg^^zGvnDh@#)z'Q~Gf jj ^sPZQ{o-vɉcohtI@SI Y]',Gcȃ$vێAb[8}'$?FGEd2$ Vuw ~U'y:d9j WU, yXR UVlwFU:'7M-v)JkuHj4h4 *<"Nh;Z S. rSR0JuU"oxBMTBYStFW̨4,6PzUW xo QZ*[ZL{ ;3箁C0\ޝ\nB 8.ҢcPQ p˻$\GQS%TM ď?i|Y<-VSnghB! lRSPtʚi+] ΂ 3L!Ed*f,oOM󛞍 &:0 j5 xޗ&[zA!$UOyٖ]*^:T~Yl$=|u8 :C2:F)S"KfbLOo/[bN.Kh|Mt OZBBIz#u[F,XVưg4oTB\įx=B3䶋 E튭RaĈr"m)@9.OtZ)qXm@ұL@ą|Y­,!zdϔ3|!,"HIBߙoi dZC%J+Q2jG ^Ǚ$/qvOub#[ )gL( ݖ3̆?Q  ೡ2j2+ n8Ll@OS?=+q4BAm|+sq8CnrKjʼJ?lIsd2?\H0H3m3%7!yC =Y ZkR6r#D7Ԩgx]텩s3 W3Q_7g r_*@: - | w's3lk#$0R~w>L34QI; !gv_7 :Ufz,+|t gZv%g)Җf)GˌZLzj/N#m?$p,P9F~Gaչ:I5OOS7Sor~kffŝd61ɧ`G絷|pDe.}*f-OaoFV3$L%n6Cv_Q MO7N&|IG,e>1kUZ6 @`=h Y2s! +OqLtuYe ){#P9b;ŒP4E#e`By+D:J-t˵pPOyj]5Pf~' g5kN'>d{#7  $OtԶb$9Lg[6bG! 6f(%JHJ ! H+G+H6 %\"m Dπ˔tRă(0M@HcX8z{Td+3)ʄd]J;MđkY%]iZ8!}$ozDn:~` ,Dk?}8xK+b9r2}ɬ 5 OwrV4܈)1ja(`h^!Ifg"Kߊ?dduцǸ}H -+ ) FU_r`8D #uxH wW[$pej * o Yď/;)lng~{2]mRrp)e7} x)}-zqjЮM4WPQl)gvEr@?j8`xuw^4@`O?02MWPQN.̃/fh"(GC8$ͽg7s n^knI`El|V4_(Js^CX0cX(#6ᰐVn'RU< !%\\.~>lgiB6p,drR֨V՝ۋ!6>B~8Z"9=: 4 ^icQD6'p*X5*+Y ]SԁԻEi hN 2AΔ%W@X]5gFv^߬?eM~ H}M#Ru1g#5WR %5-(%77`CIXBjw˛\[?fie.R A,Rm69X Ʊ=xj}ſ쀹 }/3XjIQ3{g29` Kl$$k?D\&SG51j-hB-i@̏4|)Öڲ_nTmP{in@6'QPK6Jh{Jm\ p0[?"AX3/e\q;mTI:jѮ"Uư P+]&Մ|.NX+31W4"d$"_YWK\/eL5}coȯyGXAsNo=BR덤tM1aDgWGšt~ [UBY&TG,U:7 %iTZ }84E0'_0]Gִ88_qB=/JC ~nF}R/AŮ]3q6MVᏅ̬!ĽU0w1cgJvYC(`g(wp>`!{V1dyہ95rYhYe=sM hU#INӚ' 祟 Y b5yM\h<an+K+69uyR 6pɢ¬p4*,Hk|P㕪4A@^[ k8ΣSh6rhU\ {/7(Ӊ87f//}vu Qy$J0aݮuV:!a>qՂs¹0Ya Ir 7Q:PK%y^_Ud~4ICR}:4U˫)>,`XH4]/SvϬfx? ^w!nV8u$~4R=ʋۏV#s%b| *Sk[Mkr @w}v0Ɣ~Di(o89j1mtEvL[uQwNe9uqij2 Ϳ/*L$a'2jow`5!8u `׸2ٟXq9efXANeRthL##7F/O(;4Ȟi\q `^=@50[_*U'(ڌovJi.^W\"Tkl _i.κso:bg 'w%)c? wWT#sMU[?A Q^m N@ll1[1OENz*yQ@Agv!p(ь='bLN) c7(+6*4z˨\D A1a"][_wP_yA&ժIRן$30.Ƹ[h@p1N!zn>J\h$I+-a"wn]_ɲmbWEf; = pn9%*_&xe񈶫h5 F0Zw;V¿GW\2聥O9|<*ң׋AL}L~K>դMNlp(,gPYToYg#%}\B+TE|}=t#x.-% J;9oSaaót} Mx)^}ȣ*&rEdB;vwAT!#$rRCO n_i^b#EcG@й˘*d rkE󂢊x6A! C[jF JQyR*:bc8C6xtҴ k]>|a)'C/=}nx6e JTn[{6`;1_9МG&&, F 0tfrC^t/L`NM1DI,7_9odn/WZLٿxQ@e˔ҕ7G)z뵻l}8>v* bc!9T&=d(~(P sHLEjvPHjz5[@}䛀 S6$F&b KЧbth5k^llSPRWWS;3H𜞌9(,NY1Y}+'pniX,m=FR/VݣciqK[gW\O׳^Xr /045ͧwMm%k<7tl2}p@8Kcwlh'4*{@;뮭8 pJt6cցRo h:W9q*1s~PgGALs5*Fa0Wۯl8 fz K ~)ԩbx{vgr"z\e<Њt'e ha8r,f8lӧ\hYdfrk]\aEk[*)Mt6]Z-x۰8"Nyt$̣͟ձ2)ܥsH;s`o ,!(%2DVL$:49#WV=XR=okTH2Z$@x9Rg:c[TΞ@w]x^-6LY"8iv}]|,R *$RmG҅Lk.}" #EfۄF)IyO3bdAp#/v6[7s\zGݑѩ̽fvˮX>eۍ,/ b#p 8ޜ.dunĩSא 64JX Or\tOJܭ%OXiKRw ގI!;},ZzWRzx;* fX- ?AOy6ea"UZ5,0)Krq<@7"PI ^ #,J)αAL 5QQrj97nnxX]ѥ~"c:q]E:zqd` &nӌ=- V@UХ 9WmZXc(MZxS8p\.zF9tu9u/w<7Wpw䁠8iT{G!ܢRʥ_|\=&Y=pޓֵnp6Ƈ]> buWI,G:,9͐ ]bRUB}XoV*I)$>d뽥4[ .BCK .+`9ZU)gvp&?U#ʇ㕁oxnon@c8bDiBw'o8 D'mD2:Jm\s!:#O &SД`#e[bIV&' DXm\[`Y_촄sMp. HƙiN>p7.54J, HF:E `T :5Ҥ%nA{Fcc5,s8̓_{Fx, :Sez=ETORYiWU/.zR=)ɏQv''*JDq"p\+Y6[Asɟvx=R*x 6~Wg.!~ǼEQ+dII 3Ώ&?Q:(^-Σ,i&彁H]:iYOC$դJ1"J̮2G I /!ޒ H Vq͙d(E} dK {3(W$ʱW7m QGs钟%:6 N'H#q/f۹  zB~+RB]wy+fzI_}K{a1s0"7dVQb0hg'8EzS}٤7gܠkһ[:FV|s2x}S՚(>*a*Jd (ҙpƛHN:AC{4oaUTKNgh_,vyM\ma4MD [=:KSM8s|"镴ZnB J2wbK"B` L䫩-'TjF/ S#h*X[ڷL,2]Kܠͩܽq{hf&o*8V#Vиt9&kb&P}vvޏ^aY]C(cWxJf&9ʯQ5+wi"Ю >˒mwsg{zEn8B'"cgA: ns*n$O [ jD:c1@1zdRnGcdv@@v2` @+t.,$l44BUeOEŦ0&*aaӺ8gR%1`ACc Fm  "5K[dϋw!`&aCTL쭖JuV0-QG8h-.K oxhX~.yHpUq]!<,Mg/-}tn b?]l<_&&-hGhik5#:.tLKa:C 6B4elIg8GR\Z]fI84H zx^(~NNTEGוՆJhuZʷؖ<ߣ? 8|C0 g}|L{+`8)w?v: -EO_)ϡk!k;gE5[[ O#UtnD}woɢ4V61]GL3ؕ+\H1^3|){$i[ Ы9:/1W6B=h:B@gl1v NdkHb~3m8$( b =KCLؓdQ#ȎW@X"uZqqmtg>wpm7ե%@ݢ{i:3bB x&\緓<.A xbxFm!# \o{i8dlط꛶{`hR޷| N{GPJpX5j6_i5c-JZCG l߬A{KƫqBcGyv+WlrP OυKq|Y$AUʴSҋnoB~鈝<>mN3q f[ԓTdY*a./0k}Lvcx7Ύ:P(r]thx!J Oicxb %x';fRwQ G\*&pLR (Oa/g0R k yDVr[=\?^~*V}1oOH^göd~%Bb> LF]1,֊YxPbm5\/(YoG@c eqSW֎Rx0*.d\>-L(L2a%PZ<YXކn/`DvΠh=iƥ̹8h'#@}c|`‰S)]i%i]>ѹ|lio( }_a_ j>C 0Ԩ7|AWb{I-IPKnt'M=9 ɓ QL ZfM[@IG"^\Tv2o /JƭxGǣITmp5fE21j)LڗxI[!= EQ-m/>YщugL,1^9Ҡ$~ -?@?`a׺4_nv~MaX'4{dͳ_gFU0ܨJu0&IŒ-!q\6)i.SWbRq5gz /IBu"r QBWzMnеS4|ܡ),s~'c5 a镈fdtۏ O*z@q&j˘51+ڍ5K[G3#&xaS@,5lGFltNݔg WlV8 \B[Ys~`(>N v~n-uԹF?&pZ`x0Iz6 Y$y?ŋmjj8K.9ŶL;SNkeO-YPطV791a;mOXaL.Ufm<xdNv@YCQ )it'΄('<U0 $] ``KLѾm\^3cv!Tټy[3s VBǹ00^s+$N[69T +p[wͮ66÷$E `X!k`4 >tYa c!*V'-X'fpw=} 1.tb[)&m76DyҚHP\S-G Q$#-8%Itz$HQWOr15$g)%TQ<#-+ϥNv4Ά->gLR 4l <3Q107;xVL3>߸%]- ȧ=0CUu` wV"՗hc 8Ӫ2W|\ FХ+D=ӥJtmiX+ZP HFz`\ƓPy00SXuShHY!RSqidےb!TreAᤀ.gL70  a⚣{ېV<'C7-ӤƧWDn>{PnL8HBSRƄl.)O+ire9BtxVF#vrIU##hvnR"m|kcJÖSNpI->Pv0hˇtmLk|4.;VbNEw_Wh[٣%y8HEU'`uIDEa{ˀMFzӻB򿾝Km?Hpi@ls5fP1$˜CVӏ+jPh\7j7,=,Y xx7Z$]9+ZhO) +='9ź'=9\/@[dvP aPY%t Y#tz\ƚ!э-[.I2-\.~EGMT/[͵` kB7 YFg+zAZU۝ᢶW``){mn+ږḆ+<|atg 7ro&΋|XXxxEZ+>f_KCmvVsi0$ۇN 3ڶ>t&1%䧔CGq|ELy_.rc5*a#} =u{Pv~z%R2˒y 5~> sɟlBz_ߒWhD(Nagf*p[?u!pMP;akB gT_:Z/b+ޛ}!xˬhmnޢ7=G 1$MO"5*ICjyϛ2thS6#uh %y푺qND!;7%&#IdžXN0ߛ=#Zuy![*a-Si*xg"n$RD#YubGz+z <&~eZ}TQ Lbwo.Z G(#sf>>n~\r_-: ؝A֕^,; ]

HR:'͂|'| kv] EQk89yW#ԃ:}vyX Fhڛ@{ TTUq'lb*qm$9SHYL:I26vWbA9\1?,',Y\a߷fĞ$ݑ :?8O*2=`p32Jf6Wֲ,[`6Fì'gMP ^k7rܘ*O vrrQ QT11ʿ .=8ّ|XF~5Ǘ?wUyu̓f.8[ZN5!2&iv8qL¥75)8ƨ!ZTӟ: 3^L{ +f0"oUs_!64'E ?o \C> Q,N0%\\aff11ɩn$ҥrU^f-l]X`2?|'Ghǭnw+65;h꽬Ki1=>JħZcRux Xr'"@;J-zch%n(ϩ$h w,rԲ}-(VS3<mIඔI꡾szb ZđP؞V]ng{mi@! V&!~wfw`\St ˔Ag/Ac ^Ijz ?ޔ0bVŁMY&2ϼO!BCy*҉gQTF|y ̒01ƘP4Y# d böt1Lb!7y<ЇE4mڧF<|(h(W,}}~ra++`b)ԐC5C868 ,!° Qd$-}ftXm_˔y3XM+Z`/I^)SJw5܏ub!qQMt_K[j0vCxWz|V 'Ͱ!~eo$pvV+ܶ%|."Z5jOl.0_B =:1>dC,u hQe3 ҉d#`W7CiOH1/͇ùrNm14MukUΤ9GL?|Pב*LcEI`^xF4sK,[haR^W B:Ytf?5yeiqݲ+ :BrZ~+|ɄL:NG)~Xi1ܨ:HeYs Ŗ0C/Qma1;aM$V労:G35Ws{ߜSp`.n2 rGQ̪^K{ʆίVx2KCS5SڵK"r84޾5?7lI`2m&6Wʍ X"e~LeDRY9[[VH0"ͻdmU}2}xQ1=!J RX 2 CV؞(rO-f5 ot*t"<MYmP+߈KC0VuQp1Ùo;f3rCN BU1K^Y>ǒ49۷um6|)ƵúcA' 7A'Tit*Lw>դ'OY+I)`Sc%3APy 7h3]gHn^DT{6 Tt~OޡqrwMݪI(7 =9K+rgAڌpHQ[HatKdqX5 d!Iӡ>"1;~D_(}cD_fq0WhĶm6?"IZM쐲{F}K:Qk* S_5D]=k 5 # 5> 2*3ZB F(!Y <9Z* +;,#z1-W}9ef Y=h|j0X,dl ZqJo﹃wT.^(\ośO@)"7-Ņgvy]20+=0Ö}y~ҊV*/pj,bב 'sjӎr.SPҨK.'%k_~/m(DtxnہHhĆ?&t͸4)nLXt\D9vjx5o#h$t3I3>x[ͱg ϊۏH<ڇƚ/QE _ NpRl MJE{$ T. V*yQk,+$Ρm弹֡ajmPBKI.DŽd9i؛/} T EE!ms4ie1/6 3bE!/,zk,jO%'p1',Bә#mdǵX>bA1$ɔrټaS_J:dZK#-=&1S8G*\hkD6Ё},geߪuc"E1W\pI5 j Lո D6OLYۗi@)o]&'/I)]e$6c=5@;lLV' 1>YP^~^tyghD!>Q38ia4B>xlRLKc{)]+첻ZrNw2?TOk.ON{MxpcA}!w %[Qy,q3uu:FT9 A ?*PqOJ"Zg0oɥEH~-3GpgO^0W<'40b2]P,Ay, ۓ=DYiέԸQ`2vCTfrψGZoP|T>gU E\i 4+<`4[F..ʹDYϞR놾d8mr8ԙEofW82r s39Aρ+j70ت}  1;j=z Nhw;tI )y=QH=xyq{5U]0΅J ;{-wgU M}{A 3 MKk!*5X \tF%{90iYǃ(Є$S(FFIB8B4)Dܓ^MvK+וC"-ohXOwHA_yY%Rs> )ZUZayhQwv6PcF?ZH\1U{a,n4SeF$p05eS ݖT?dS luuR_Ḟ mg/&[\h}[$+M>7Y 2qX *&m[wek?Hrzoqvc0!K;l]$eSÕ8Ӑ<dӎdt㤇3%&m"~>;Z=E_z TpcI(Wj*A Mw٪س+b$!;K?'lILPb:7D^_yBi\/9l۹3 e1eY{0md ^5X8PړɈ(мj*@  Cz ԑr(w4h]dmkN!ucq|opVLe9>޿f /IAU8! Yt^b-J߻ܳzWf\OS|uk킄xXG+`CyGVj9/,2 4f9!\0ܛ :pcz# pRS c:/G1/"ׯ\'ӆ&W%GsE{P|?@oGg rSO9Y}y"AWj-E(&2]ÙP{XmJ17}N>ë*qj-[;)$\`%q[ aɾ=>cd0-lÅ5# 64ݺi H&Y,?B5_J`pS}2:-8^׌3lgC:U-UmhTLC_œ5aHo1wk K;ղ4=SŇO b}_)P{jPiujϬv<!**br\<;rGR\]O?p_5IΟj/|`GD%\ Ofi;ϳ X5Wą-aR1Tťl [MBQ~V}(X| G>T#5qIjtH=XO Sܕ܇!K߀IW+Xl0XvӮ!Rޚ~Tyk+1YK2yHn>PmEO)<P -uzW4-ۍd8f{tg8.}V؞q^F#g15.R#TEd ”ŏZ%3[>cOA l޹<'"꘢̶ XsM=ʄnjFK,b릭27dUZH &NMޡwÍ~ 㹝$JgLG.pl\/ޙ=?24X"Qev$1 \'v*Iڇ#d)dk7yr`_>B}ClnjI @#H2ϲݺ1=i+ԵI]zL lXKa7A'ͮ#G{+KzXvx&)dAATA}ÁI Wgs(FuQ &ї/MI(bGޥv'JL!Dž;V *~ڦ$<)Ɇrq؝/ ׼fv42&#jWӢbh4 ]P_{~VД3xT 42w}$"ފu3hV|aM݅`)ԵDX=kP=<2pµ3+ڹ)Z&*APH.yuRz!c%B\ӃEwG(UzG9کñOw{*5Ҹ?mW2n{ A ;*:UM#VwiιeEZՆf5i#v^l"ir; 飿R x<Ev+z @x[tf95c':sLATX|ġ+`MRA;bc`B7NUggQ; /R_xmS ʻ`\K=uAط6V99}?zE'Zd_H GҀm)QkFeD`v2*$tFH7Lw;mb02"*/Pdh0_&H|Nߓ9tȖTZB]dYBv}W,QQ5{%dr%݆7ץMyS]O AčRA|0jʖz|ϻ26qB,E?p#95ƞrivVC.э3b)+㲲e9Џq隉2.K]W~MٷD50v>]}d{L˟LzQ16j,cO{_n`ژKzWIs՜3' p"Zt3Uxz,h4\Zd  >!WOH4e'L4꒰(BH@s!hkf Z8p,R(2-nAnu@P%{SzY w7! tg_}H!G`sDW<`rTT#gWZ^BU*c"4meˠt;4g婃1^ED(TWٹN9zOa?e[dD-evt-E^3y8 @$ c'{OnM0%gNA[b`8(#ÛRt :秘oAe7b(Y ju]lEټ|%8f~V5ml^>6 +Ujּ\DB=(T1|[J˚>ƶ><$/brjBs?wJwJa}lqtN#K^^Yc(JF큆hHkxkv^zlTZ6ֈWDUI]]v%3ӧ}mS#wOM[w1E:NjسrN'0p45M/ u 8O<  ~6Pdm+!ڄT,`"vև" 6viA.*2y}'L5P; sc¿$k6L+eڽ dx]t҅E"x +;- z`H$oQ^)ĐBt P")b6&O;©p6:D tބ(5j^lsra}"ڸe&<\(Oڰ&گ߯~ݰr:÷bDvȴUaMU-|[c qW0qP,kwGG&j7 [3Z^n1]+<\~ۆ<'hlvoBsO{geЦA nYBUV>d+vI9yp׎τq |j -.r䬖xV^LS0dyP`ƌ2]lMP)jpه7® x ֽo8>YNTNM!٥"ٗrFE|pd3U#ߋ‘8y`EPHhtc _X oWVe/|Y+1N4Qx%N W->lCr5u׊5jDY57uq^%)|2;CZ0]/`,Eoұ 94b8qW~E,ԬJҐT["e=QOv*6,ZAN#򐤇(3ejHH~ 2 (XA U<# _L|/5(#AOfq^}y$ VUπ+Uyj 4_ʳ\B$Z`8}#my)Q(';c;Lv E?Sjfe s(T`6 p3sۯcCK!ƽce?lСxUFi{9-9^Rd oko>dkxhl3Cs:{IZ̕R\O$ DŽYϰfF/h*&Uy~޳ݠ@|$zo9?Z RObYD'R$x\/|R#d 7ɛre]ٵ/aBrvMWy/iy#dW^y'_$@/`y1%.unesG$Х h ,iynfV-~:+/H/H՚, 6ih/䲲0L\5=v!)STԡ !++І>\sijY3g$Pvopd8hF״M"k2V+ż7'CeB e ,X\;;=/T\B$y>(_ `07z-bK]*|J|봥~(NA%xCX=`a7#ƶs8leȔzilWч,XTIY:sIu(NX"[zmwI PxB) Ufzhp&V%f|Ah6ay~Jn' 1 NW9׻TSի䗜qNqvdf\ tmDd=>xz ` PX P 1&\D[IPhcF%)}\p|Zߪl[~_r%TIv̾djoO_ u՞P̳_f'xK % ᛷ 1Ak#wF%G>sG'˅ih\qr2mg)؋orznn9\[cy6XHzq»`윊QaFAqxm>gT-{ shn>2,+{8V@. g3"GlMl1 t(:-Ķ f|࡚9"J6GFPTZ?f"y8t ޑ( ngo.lr@UoC wfR -w[h.&>RS0y7r2~砮WlM&ñ+:To5 ,_b'3|.N? A=5qApf:ztBQ+ G̽[E{黾_;=)725aHQZ$ Bvkf/=:@uR8КֱCNQDS >jGzElX]E#ט}^eհ+0O,8927/Y~ܼhF$`<;2عH^V,6=l-yM`2pHaqx eGԄ&p d$io;@.Æd%SUCIQiatJ#W)%l,qGg7"O k!5S+XOCK>?( *YTZo"6Xu8O Vkb m2SpEǮ  pj-WVc}ʜN1I".z7%!c7Dh]/݇*L+Ӣn;zG.A uD+F9||]* [:CP5P؛-q05"Z(A0OTkS.rEL(8nG}{<2(G9zZ^ܕJVPIkL:t^B+^,`qǑ69!1 :~*K=C)^v5 Q';5%M=MEͳÆw`k?NW9ؐ)a+__?~g9M)fP{uyFw$O~z'Wy'y?Pf>ӝ07'xpQc# e2)F{qՂR: ]}Ļ#JKލ+=C}^=pVGib(\F5h:YÅi\{?'(J`ӘZMH\|ތPHRSל\J;,Xlen򕖭*M;XBJפuȅ3H f(6Սt"TABR ܆Im}pt:Bw(L8*YﻶĴ9vVck~XtX‚h@:U2JBv( E==wnH(C3OtQ^/UR+r CL]3LYfzrk6㡘iiA Z\j?b^L_r )KTyAu?hbQ2&5A_E$mRL$`U |0ғrǨvOo0$US{p|\Y<لhM}>|B2rǐ MP&yR3)_ }{xlJyQ U_-c/ ?WPZ3Ǟ9unbGe:|d'գc/"#~^6HJ(;b{T`>kI% Vtm%(-^x[K1sMjD EyNVi'>a.M,&ji_%X8򯍫ΏwSy!QW6B_K0j>u #^8l֔G#8[n({<m Hһ 9re}ox`ƤK%vފ}Y+nUBߏDV?Oݮngmҭ]Pm߁TC9(I?x|)S/7>'C4jpd`8÷eùH6Rp pI~4E J97Lެw K#x"X\~78R# uv·BG#<_eG8 e]ܘ G` ՇQ3\_Gne%ZVKkuASh.)Ҟ~ݞk氮0a3ٯC˺K-QiNC= Ƒw2ǎ `&U@چ:l3<-D2ܪ گhnZ:\8K?}=K˸ ΃it'};[dGɱI8Ly]䌗bIGJ#b)Œ1>ShfHuvN"S 0J3L SY]0` >w~:aCDAq}Vwp).[;h:ؘOѱ&CGK:g)EH"m&¦.nx[dsj+H: D4hH9 #YM ZY[99xlyUB)X>u@Xj#) Scn`jM ](bзEDTwݠ8xeaN"wc#Wvuoyƃ b# 0в๰@jjRАyq#xp){=Y"zGZ=^ee),g@\|]E\UVb"S W,Vk@]#wm8.1)D.U Q8֓\ )Tep|@ncԺ"o0*[zRqbݺD6J]Їfq #,=qUPH-#)zt㜀tTvC`zR= @NP+]1οI5c0."*|{Bb"W}֎t[<TU5^b? UFN8tGἤ<.3OLJdr)k]Ug5DFXKѬHpC t WV|3B|˴Y&M\޷S'ۆ +Fj@m`/jFntl`сݑl6.D^U9N"Jĸ(CvhWb4!-O?\-)0{0Rh%|o%?,wJfd *<-I>iz|: D&5%Mn0ʘjJ%vT{Yjsbڒ!9U7 !KgzSSPC c%3cM"1?e*C:koCEk0,)ΐŇ5CL Ā}r*-;Ezd72@˲9{NATS?g 0nYfp1e7$q,[hxpzI~BX 8'Z`ZƯre#u%xWJs9;*Σ1B'FbAuKe]yBc+T( >Ih>W o#W~9"6pa"@j_&Q4(Z܂IMF4+ !hFfYi7bqlLپY"bo_ mͫ!!&m( ;ܯFɠily`D&\0t >L^gwQ7пH< %ŀi,+VQpʉZ5IjRr h5sicgӘpٽ ]*jZNvՑ̐*1`1JAi YG%875hَ(Ԁ/S[ܖt[[ēyvşRچ{/]3,N--~fR@?4JslJY)cT֢5a8Dw84xʫUG4h2S4]yiV~p &*I A G8ţ]qaKa,>SG(x9> 3AR~ ì&scd:uuG0F乲z-jof:i!>~e44~3鮥Y9"&Q| /ug`O6HX`G#:]wQ5m~=yt I7^I;)ݱ?:d*.Ҭxf<6bnw''QtBױ'ZiOzNGHLs8wk3>m36؜iMز?)9~_(w+B ,hyj׻Eś2 yPTDsR Q=:\5Kg6IEoX1D&_e|V~m&dfy/|{ޥ7 KY I g MUHC7q:ĴǽEn3<_ӎ;:.p^`f5. okb~3 Vr eTMmwF3TVJ- dVHbZ;80~+$#(ȩT@?lLkl]:;9UGJZ\Xۘũ sbyCQs9Ar%Os.@]/J%})(}*@:Ni2o8U [B'?HeRb2~$4Z(~8ږz Jk-Q{f[êZl2:Џ֊e#Zk̼Q4n\dQ>.oKQY/ӋnNfv@2<S42ssLemGA3ͣ Dy홆xY,ӬqoK3Cڡպ CV{3^q9gBX^3P7ep~ "ּĻ<XL^ pZ9m\$:V%NY\DU'V>B>4d:LEaU)6akrjmV],cb]ʀ6->&ZUW\MP͍ӅCY2!O_Sͅccӝf'MlKH;ecAđSiR:XޡX0m1Ƭ]\\5s ]_ a>&!P+JiCϦf0Uމ ρ s- j|QaOEAX(S7_'aJgD-&14RZeob|n%&gA:'=-`%`F( %JӾfr F&ќ`&!/ٶP1Y,gw46 T//:nzTxO/Ԏ1WZ< W{#Th}36qf>ano&H*=~6![xf$~ȒM>v-=1s L0diOܗ?6nf0px]'`&;'1nH* EWr\"rkA 6Š< &PذV̂ɐa;=WSj)OʴroWDIЈ%m5 {r06ce Ҏ9 ׼B8[iXZ(bQ:>8 4$YH4Iߟ+1"p -5zӣiDKsX!&6/0ԋ$ڧ1`hџ@1ǚA#z٣ ҕ$t<!{|Tm"|W! Tn ՏnrD}0L_Vw&,XwdWܟNq<߮#@K /IoMJG?[r .X{f;f'p] Ni?Ԯ3<ΜAR>^%l5~l FeF=~`wVՏm4/w9xsbBiI?~ʋ)A0"sD 12Xe"żFzY5Tԡ3.ͭv w|>?kPS[EF% ߧ>*3'~ EKYTv'1茵?Q虝z}He.|fk/^ ƶ!:{>5?1eˉ`'K4Oz gLM>9g/H)bov<}]ֻ5?s< 3ӾPFP䏛Es&L@5d>d0Α%1d"w8L@1Z8LD3\d,TBdw]MuQvMQ6םP q&Zz27=` RSF1O]<7#_MN5BJl e&(1ǀIL]uiT(gxM"iY5=Y>(8=GkXY |ȔlxZxiii_ܸazݟv,jCHY q F;iv0&6K9, U9eiff𵲐 xRM|.jA5(pу4)(FZ<5]˫.ڠG\1zwFD^<* d&d`5F IC7rV3wԅEuX-Aw_W#BY wӉQ2)\5D2 ExJfڻE2LOhC ؊kԑN+ʐ(yt=󆚔"?$c,;Q܂e)(9&AL-'] -nА4^2V7Bm>a|7} [8@3=L.gPm9l^}ҒR1HG8*r+vE90!rw nCǸiLu}Enz9Ls#Lic!GbXIN4XB@M΅<281kd mv62k wHFXL9L ZX-sB88q ˭PVO؎qq%W0h=';ϛ 7<hDD-'ʏ0v gw.ArO7R?&zSm@hPKS"WH8d'd)Hm EQDJ%SkHb1ڃ4]Pns hbWoA_d5|ñ#NV9[ YOH~S&dO1pآ4囇d<Ɔ^ /,W۽o b@I2ѷ:r>9 WxM,8fɭhGJz1s>6B8 60>#Ѱ$jU"L2UviIN7˻>ĽhcrV~ڨ$oL@ci\O' ߀?>$;1ZNoqQ,-?uɜ玏PhT:Bz] [v "% 㫅HUy`?'E4c>ҳ_pȭ6i23Aih#G Q/10#Uf>O,"V03NbFRg5Z9zK3q T\⡂7bksTP(oި'ZeyyTYfB'yb=@ܔA ,9'״FVK*|D4, /IgE֠y%VgU`R1WAJiqbs.iP -s@Eufh7- ,lY6 gtˑNDU󌔀 ØkdL9c.G#sӳ~]OR ]d*K}@PS6Y1f)0,_@FOi(o2cgl# 99r"`co pp;ثMBFJw`;Y}x|`}͎PrPm^}`%*^[5OX?, PƠ)J`TMD7.dû+u]=,Xa~H7 Cd],}8Ml[tq+*],or&"}^{H8Ia~i։q{`v0w/r*TЂ`Zt9|Ξ=z  79C~_.NमYVƑ na.$Zjf4I_w9 EfY1}@?WXP״,X1bU n^X@p{?li!,^Q['-@w `D$:3õгR`lfiҴxc*I"8qFOJaX'H^0LW1]ˡH~J|@z?)+H4b3\S k~gfnx,Ǫb-r#~| 9'7_./^>سzaȜW=No({)ϓt8T7|蘔ףK,.F12,ݲ]NtN$wJwꦘ^ ;"gޮ鋓h6[ݪ ESȢOCWRcQ߻pDଇv>H:Β;өwګ*7&U)YuWM1rm&~I+  W"'&)yHoפRȊڻݣn9MAg`Aըw=I-6թ eSLB莘L Ɍ``)NE&0az8@fSF%Ϝ.Hh K'?maLC-=,}b .{9)Ⱥmt¨#tMQKpu{36쁶&{CvfFNSk-,l3}5ڍdi1~4@ ]dzm[ O1o)% dR)x~eXЮ!,mnLʔHAKqvp osSA] %w]a4kQyqP2C8uqGif>ṗS 1$~oG>:X';F'4)vXhFR w&2Mg3tĉV_pn!;0*)ZG 8*40†*v ^C~H:! M .єxZFpTW ~g<& Sc+ṞJ&|#*P;xERxf~qɠ&n</o#)s;Z65H完ep ٹҟ \I 3"]cr(.USw_뙊m)}6 "ew_j#6{2+yy5=rf;G/pbv<5-NB9fTO-=oqT $sJAWafґM*jRY@)6ST' :t9MO՚_Cq=1%LH-YY-&pnRN(wd*eۚq-q(-Ԗ3Y@LP#eR8Y}L@n} IcN=-t%^ sQ;e-L%U;./zamgN Zso%ڷǬ `ewFX0]*iu ŴS%f2(QW]hUPu T5R52,D0x Z5]#I硖͈dLrvJMa!pV Ý!_'C0op|)Sޭ6}$3xNNWO &.*IkCX/d܅n+wɟVN5X,*>YE?hf WC\Tt^)ÎYme :X tnޠ#;s-o]3ՙ"f/c6.a,J)awV8L4pzFJ;ߟstU:w|"QX"8h$\:<;9As@o3A2#4L')8afG4AE2v~ V>uFm[l.s\_!o1Q1ϙlvQy-P:j~9wq\fgz.!hܭW]YH !o'Sѥ/d x0zE};㥦>O|%d = ?ӵ$R\#.|I3q"Odp {v;w/}n~R|ߓ%cci[<%Dkl_NG9l5\A5P3fͮ R|'V!CO$!pNɊ|7 }4(va97"<Un?eIK"]Uɓ*4f{)7nƱLDƧq[w5f~U]ͯ9oWoWmiU>WbԔhm-́CG!_Y`)R0*"Woy(i(6,ZBУW|:0hͺC=`p<0pj_f|EF06y8jkNL\Zha_^#%"": xnKQB/ p K>BE ';"K}^0VCY]zВ$|7mcQfLw$OxOW`gc?_Anc=^ c\W kV6Z]׏BgWo6CmMuw̜uLh1tü4}~oFd~j{.KGERU\s"=JAӽMiMGpG)K6F}V6f1&#f 7JwXÛudvA/|Cݖ_ДOTM?[zz=&]Oc ă85y%6<; -i zn/uHrD6Ez pe/USA:} +"c<;56VO?Ç|_Ќa__TOY^CQMGdJnsZ ġP<.Nz_a}&ÚD Y$Z/J3Y̾ޞ%N*&n2ߨpV#К4'X[-E^ 5*(e?Yش9 $L∀ xEc{@v)2vp޲g 4SG}"jx1I~z@3bK`k%8RM^uNsZݶImxYcPĤ+_{dt᪯P;s|pkg:ѿy@^M!HNoC`9Gg+`d];9Иm M ۙö"(B n-~v765df퟽'L1ql3"BҪK̍zIm9<T?p*qj#|C) 6'}v-EI9IB~9쾠wFj~Y7MDt?v7c}boi~dw`XɦWf̃#ɑLRY[dVJrFE}юSݒV#6,%|Fw' dkDwpZ-) |ޜ#\6k*`P)J ћ\Xhȶ"IP}}e;dq3Y}ЫPE]nÃK^dqH]sHS8iq`T"!;Ed2!d'^ ])hn xՆx k v$[? (9ks^W<1tOĩL$ѥ7h)mMM@rQϚ"ML%\'/LX@4bŴ:])ڄdO K^B/a8^n8lcz7<};#Cq+Mz!]Z[ AX$A-_S?20;lY=fl]S%رt<{!i\aGs$@Q.zT&J' rNK1a8Pa[ƹ UB/ɺ$r6MXV)ςvPZ/| )jڡdz&jJR%Wӌx6SʶͫPGiHmMn!)+ F/o-ʖ, T[ ORy|MpBN䌗B1dmѭc$tꔖqb$&s&n Hp;*aR&eMgL$Y PZmѬ*OS% ƿ'ޥ:GΌcVW'ڰ"C֍"eQ aC\ u!t%)pٚ%U2_(F8߾dY4Mc_Ybx܋-,쓍>bBu@y_Hd_DgFd741뵴wql| Zu߯ΐFzEC<'dm|g+ Ok ݉LpNjK=Q )L=ڼt4 n^=j 48Uk $doDuX.Dč٪7~P^z% ^%@1TFַ:WO#4g!vI}c@j󕰽yIm F_\&ubVn^$Y5ab, xAk}%X(m"Lqkr#S龞^թI`AwI¯u}J*ԫlOCZA1<,ʽKV%F*1"i~ONU\r~-A%ۨ'eEgki8$Mޏ"sl^&VЕY%JZL_2nhoDU4,5xgƾ7 a R")#nj. ׯYzF,a$;f^`\biK2,IP6t[3jL]«+6̉h meh.R,vgV$OU窱T]!#: T !ݫ؎'p(~juTb'J1K+e;h`Y7 @ kn/EOmޡߜtKYx夐FBY s Q/ ,HR" DV2 QبftO< = 79*@ZI T&tO{DP+G{u_G4+Ht - f $Z 7\4oeBBhrr3GiI u,DOOCaDD<% dލ mTa,"iO f#uu;=˦^UM)6)jcOmm"s-Nw%ğ킇VY"vpm#->ڡX`l'&S-(j?b0Ht#)WY9 ܞ-BܡΡWmhJfƁbis'eڗ\E(@򉾏~ԖVYqo2DU>}%7`"\r&U^~n0]ȄQF0 S;g'~}3;s;@\Жz i%x2/@3ggR",. ZG$;&%lMXl).}YICtj 0/dD?͚1~sy^ ?ryV̒4_SN;~3i'c*E ƘIsw08#/k6PX˖ߐ!ft~*(wnoyնwo쬡q2Ł5yUnhZǿa,\uߘ0HG`Be0 pdoA=vP^l!\ɚQL&YdDò+;@w ϙ+ 4C~Hó?Rsp6j=.^,Z5޺06.0ҁ7UL#ի 4:2x#jԲçTX Pizհ"!UOIF]r{PO8Ѫ/C#IcjU.cN';q@#SA+?ҵk/??DugR=dw]b*J St/\rII\u'W4NIwj"՜E98rBk"czl $ςNھ܉@5^ʾ(NZU hA5eGğ C_*?c uL.ꌻ~D+tq j '5F:ˌER|?KN/s4ܚ6mT_,>QR '=>4]+unë UÓ=Ga'_3l! [4%$P YƆbԎZ3D0l6tS[}Uy8QU>MG߯:N|BS[Q4E S'n4U:{8WD [W**|-ѼnN} s8{RaƲ거Qq 8i)1R`\;~~I}&cCaZT+YI'QShY<3!;YQfLiGj]v0qyЮ=cGJE S%Ɂ`a=޺Wv5a_RE2Hi#ޘ?6àU,3-i>!x7/fDxLݭoYm f*:q UY3E^*nNժdiRS{ B2Ka[Cu`0zJS<]TTbTU(& +x|p ~q 2 3ɧ'eȣlȢ.iE 0\D6!@WN]Xn~YndR*%Rp&1 ojPF*sFGyLrhRN37~O9*K 3+=lT7Ȱ-mQM+Ru.>#,TۍȂ>8`oN~WXN@ڱI?b/JBic#"4ߚ@1ٸ8;mLc}5'p.ώk!x~ ֹox*\ϚJv0)K*ti Nxt~=Dvfgw_p>72Ιώ(+_ "ޏ_) #̵ݏÌnii"ydmB͹٠=0ӪQ* '閸v+h3 Zݝz|CM]4I9Ė1l;HR ;y}[)"ؽKB[0Ct=ga4^ 8Hl_#2!~nl#B|ͮ Iմ _A3+/ֶpWI|P_dQBlL/)ꤞ8X,jgrAxƹS.`4~q1`CbcL0?zq% =%B|1#Esjtfʗvz9TJ k?~GQ53 g-Zuu$Yf.Y%*J\%wk:6 RM6r> ie7\t/5fY|]r`E}JpbϷFniK;@mITnu!ANpBqu o%F.$:ADF+l[ZEk!Y*|{b#ܠJo?Ƭf'^)xI*v~A^ٷp[m lu#G 2Fgx핬xdzT\R   /2TlrƄ/ɼ:>XZ/qQEF/qzG57Q8YnE,S. 8\rAf0OoN@IYՌ,⯳ = i{2e #EI`&بk4Tޅ=H3nݟfƵ&92ŘmO1*Ñ5$i~Ӿ]g?ymaVk+|yxR8 َRI,Qn4/@F f><<3kZ_6` i>^Jxܸa.$|Rj1C՘=p_֧c=m'ߥ)+(7E{s.vhjIA}¤)]ǒ4[b]E2{pELy-ų {^+MZV{lu`-% eKmyHL6QGZ\kinώQaH{0|Y7:NmQ\lC}&jO6Jԛ~|C]d-0xl@R:$0%;㽂Z7kkg-GLtlp=IĴmyqArX%LIc*0DI)Ta+Ѥ 8렂<Ҥs(,BN$-YAl"e6%H{5u"Ľ *Qxc$ w`MB0,0n946 Ipq Cԅz뀬TD o(UVw>;Q`>ΩdȀ Zr%|˯I<$fa-M|:GbS)ɇ?.RbJhl[Fw>XV9('u4.uudI3zo !"}Rc1N9r9ݻja3V<Rwft2\zvI%T^#>\1Qj5vrPd*3|9<9<5ƕ2a:WvYD] xI2}X\@Jd5ӜSKLmr [sOZu(нWˊ1_nqb8< !Cr{THgPe/>e]7Ԧk>9(ɂ]|'~uЕ/4M _eEڱvF~$ЄߒcuM u!/PF]'\rskg=8/>҆٨R:ߪvg5ji-AZiZn ﴄb˗Iq{ش%AeΥY\| "[[rq3͝WLjT)},kT 8HT3-^k(۩OAzJ:Ngko9㨬5@]#ib)'OYmauR@;{pb \jaߔuL;oxu&cyx/7kˬ]jd;GeO&0&rbbXB.!Zߟ&Tmuyae{\=lYJ5AZ9<7eD \ܞm`z 9Qi?|XFVnB.˧S:a0Ӧf0!cNC # GVa&ԖipRtA֧)CzR. ч=o7~xM~i,|V<` 7>eȎƧqe$Uِ٬;_XowKZ,yTcIwT6Ej>f5T?iY C JQ)>ZÙ[`>7T61<tg)Ds[vϹ .5*HΕ$-`\g"+~.OtrHܷ4%Zr9QVB46ׇV46턹B:^KHu 73%3ב*Dz?lk`R&v5h\3sܯ]u`P,yw [@/|!3]tnb;6; o&MM: Q)l3Ir@0xSz(I!I57KyUe>a7p=*ձK$WCz$qTZnn%R)=*"bH}؎dt'5]` r5(|kK9|[R*g?ezQG\-9_̟|k3l!fl5HxLH*H}?jk9gGL? 7dٌ0j]M433X-:E];Ԣ;s䳞,尸3]2z.Xz^r> qpe&VkLs[w%N\P)R\[-I+\MClUVɜu~ _Ѡ ]!sI$_+)8Rɣ G$v߾#dqi d(,5Xv1`yNsʭ{WpĖn9 ~_Ky܉5͂BCltj+; =*{4$3CasYpC]|_<#}uRD?id)?̉Oa+(͔~lܷym8#Wh I'!` НTN!%/vM(Jp 2qaPjN.PFޗyzx>'y7}u+ȴwa9_'1Aax<,L37ʔjl[8kl:ҁUfbf[Fj,T2"Bpi19TG"6[-zZ3\*+Y< G@a"3~XɌIG8$Tq^A9LhR\ 2][1Njtꖒ\n kZl \R$O13FK̐ q)Xh zI?<{.y3'Hm 9.Kޅfw]D[~XeMjfð4LR7x&H3^]Ox~؍06SȞ0mq$ I]b$i5)bS(ZNX_j@JVdj:C:j8 RYMC[䫠kDH-L2d;lahBS>ppl\%,q*nts([OבsX;yo>'6s==cX!EB!Mgq#Nn * -+k>RH) RŘ$?:6a`qQʵ!7{Yljȹ;qjrY<s Bpݍ *Οۜa) 7˰*JJ\CʸY5ui0Uܲl֌QL0f;SB}Բx < pzY-h=1cI't~L2Z;[EM $5sm RQ~83m8FLJwZSh"+ԾlTG%A`\"ָ,M0PD7ަcIIB5ΈεgNct7Vg/-G) qh e;i[sE/UF TS)zS2 +O/صǭa(FDqfRʪ&ʯLPY<_UP@)5$d\;*b8yjr?lwXFƀK[S Ymh:Gv<F!˽]Wzl0+/&N1PrW+M3 0Eb9%`;(l ^h9zu_Ďg(BwD~:XUIcj ;!.=9_~Ws  U# SBW.Y W~Y- p y.,D7N~_g ${rja$f<ǜI,(~r0u ΀oUD\H{plM9=tX-FQ~ !%B<#l@ye̮-@'112 ([LϚlAn=m D;Xh5c@m](qћ+ j]:F$mO{4uW8KuAf}"^s34Һ6l+r<7_Otޮ4Bԝ M_0F5ўW~ALHA%X6}7 WJ3_]ˌZCnv}k?ngB8>SKEY=p.D%b'Iv͈֨ou+\ؐcEy㔮HY 3_MI?Xǁm5p7 yч*pa24`jb);p! k3FGvL>zP'' ~/g `fp5tszg?D>ױ>J0RFi3 -p%^[ ;7ҏZx.5n{ZJiغ#GІ1EysD"9HՅl>_6FU![#8L"RE_0>#Q(wǔb=F3[o} IPr̐0ՓLƟ\Qbkr/8ĕ0` ~<68;bT{Iݯ^9Qa0j7o kjka|nY56"UvW'1lac^HUs"]G2-l; 3aS*Eքz,&н`v&p `?ؔ+V8DkGz"''?! n Lg;9eF|.m[K-q›N'v~OCh͇ƈ0uvfֆO4l/TA o_wu- n4ױRVOpZ?b|%< RKr%ڽge ĭ/Ɣ1'c:oqSܫa;z)E4M?Mr NG3Kًy5f甄hnJnPE ƬĶaym,;3|x1zUq8PFDE<:Yq|XPZK6oy!d(zc`Fx,'řT1tbAuWa1LčD^]FԫJVv/ )I.*k7u^qDZtd$EUEߞgʒjfcM\,, =oȯ,q'!3H Ln!J^8b?#(X?ې+o:r# Riw_?jƮg02x%pX@=0_20,Faܾ;$:MQKxn)4x_r -.7JސURfIOc|搸>;K#3FgkkP<YوʚAVo|fD$>kR#r8Cp7/8B3yh^ORBʏ ,%O ´$i:'~lQ~udI6&e@L'Ji$nY(\B"mȮ+Bq-9DMWGn>*8.{T.L{l[wnר)6-4eTZ,5cR[.י, (QQ(J)pG:8m.S-}qP1s;'ȪW&-51vsӨq\#2AcёHmǀ&p.7)WNDY䁍0SKYCsKΛĩtaDJנ1">[j˫gxN%$dV VOMV8Sǚ$B|2 `!ȍ07ūi7\7:^JV5d\\b"+p 9 &ƺ.7=MO~!!ͭWg͞E:Q<7.C?=u `eZׂwErvcMe"vs0-d#ObҨ^X hQoCkVG' U**r+a`5oy~3 ãEF)Tn*-{伈A6?BVdSs4cUF> NbHb2_!"qS+ħud6,B1z,oܧѫb$(C-L~7RHȩ%3^rۏ*p%:?>IMew~Aԡc{WmvIac쪻mq7oG ̈2]v_b|V:ɜf<6zJ}xb$Ū)N_oE)qܳˤuH-K8E'-;Akwοo"kg ͘-yIXOWa<5">Jw<i0tȳo8oRS 5#|`/KTRZ*S=ldpc"`)k(YpaMX0aEHz/یZGE]f{7X967oĒű8rEH0ڔi1BHϳтv4cO7mH ի4Iei_ 9%Êu¦psA&y6IEҀҚf÷Sy#PbU3}yik~-x+OY?gK˝y>&G|oȥ5ځMzRSEm~$~B;z !TcP^>)4 x,bMm^^`^񸼯`aYfyc,x DW]0T:_LnMDI })16X~;*%Y>=f4AhyQhp\:-B)jAb.y˛\l|w+mC*y[?&{4:Ex6TZ<:`L%spuv3 Z/P-q24H c|͆#۸W1-q?}" SmӫRaʡp޶[^-JZ' >4ҷ` $[+,d*>y MQp9O= tvE eÙ42d";:q3as;@.xh~:vn_wJ:EW^.ZW/3xGcW_zioIi9_;%No5BPm+!8lJհcC8D|Ǵ>񳬑_ oCTU;aa6 đ!b)U:`O9t;̋`/Úg Ou#&P7{pCMt X])Tg8ɍ꿱z xYesļ49,-AXj]? 漘<;Wmq*,(r<16Ǿ8q[gt請<;ҥ<^p2[7 :Z\LCG$_Q_|l햰K"fl!);g5W3]>p/iN_m Kx#!(N w"vuf2n /XAPfIrS,C*\b1F)ᛓb˽g?.\xC}~K!Wmݨ,jX%|\dҴ!'DuE KcF5P;9W_Sn^PTy<+h\R"(ch rѠ@H3!o.ڋP'Z5Sfwp>q |,*>_iCbglផG21׬⠀Q?D_1]9 Rbsz: T piOL-} ];E!dl`yRiTy=x;%p|6[b0>j["֭ExR &d69f \3k]ܚoiv0n95s.#,*j~yRrفO+Vqf>@t@#삷4Sb;Nke'{,L0x:N"@D{]ce~?,|pYd2^v2p9bM˜aړE2;VIL|gGk`t<6o݁F ƴR@ԔIqRɥSq,c$2uiҿv͟oTa ,GƑi ksͼ0l5`K;,ň6ɭ<a< Š9{m6uQɜfgfDQeB3phj=|;L(Ϡ3ߣѸY^v޸~z|`jm0QҸ(xzPT6Z-c)1uB R!ԋꝮA>YmA 4(z#4ެxbµ΃zvaci쟪$I9Pqnt7@ScZ! tqȗY&!H/ndiU@Y[#@zר[{3~5"@Sɇ8M2e)|H}4͞iN|G`>G9Aq+s2{Xq");䈏F.~5& "]^a6ҧ?s !ݗj4nY!'d[d$b ӫfWr}MqdĂ$ Ffw(NgÆLG?hǖ^mfdIz{y2YsMUIdDh;gyD E͒W'Ud]#mN)~Kִ76f {0?VɦˡɴjI]]fMTrG$y]D_AS'Lo *k柚FBKjhfCc+;,?>hi 4=ڹ\SWqOxX[x ;8 *{tBUF06`251mx 䥧+<؟NZ ;bhCZ#9끶|>kOUhHi=l:0QԍP-DkR2ّ>z>Ok)@ 3W=NC&j#u~ >s0fB'%pEC!h\e~֫ruihB郹aD3(Ɍ#PJ0籃sm4JeL G5hk2R)0o3lj8٦ߣ()l03W8傓D+@v?+ M1\zI֧&kx&v15娣QgǛLhs# "q,O2F䪍TrPnRX~kjBk=R{HGB_`q2Z3`(͠t TR{jxI2K]$6ɣzD<%zx*?S~ h<Cz\ߖ'(~ C珕Rv;m.x;A,CK zM=5F.UN 2/Ty+PDtnrYH rKf㥙ɺB{>.g-B5h Em9oԋnihl9^ΰa(@BDfY"eX YLdŤ?JI]d ?U}7R-Be s6M`O6^gy lcXy*R_UgfqNUٶ6!,";R /oL-fDgqd3Tco$f=S.FkRrr߬ȸYEԻu1JtH{2$+&bwZKg l^{/"wr}H4FWK;bՋun qu㹠79mXZyEqBj^ކ7SÉ=AP]4.);IR{l7LNq ibDWAԇE捛иWdN?+ԧƠ2PDeaMaFF3¸;8m'V粕mƀHtkɰ0}pR uT:I_C6Ԟ`ӕ1@n5}#B< 2@GpĐ-*G,D63pXQh䌩an*#TVG@IKXn6ps07 64n?6 KC 7l+\OeRt.h:Σ58nf 5KW.r/7HtOhOx\ \U`gr%'4Ynv9/9"7m=Y; ,\l0#7 q ! YX>Sof56:ԯΊ~{w%1[Lمƺ9 SԝܼjXc *{Baӆ~kA!Gl{55rq=oN8.V=tzɶ{`='KZarS@^)D~E;^|;(+/& AG %5 Z3Td2YKs@f5R1Mgi'9!űJ"e݅qV0Zcȟ+CQ+h%%bfW`N&8EbU=Nr@><@X7y+k1*gR.}Ɡ]g x o|qft4jfxX0hvIEݗ[OVxBly?Ӡ.E ln(R% B 4~1`ssh!zGZն`Wv;ݱ+U5l԰TYRjlYlv2 c@Dv #kﵽ:> ᝩKaEhAbc{sG``qAwNCIfDX+j\-vr.n(g],K&>Ʊ3뚢ͷЁ*[zl_i+i$jkrS'tяm 6ȝ9׋*N|J޷Ǒ)jz$rut"oj`"5p:\Vy}v0DH2 Z+#Ǘ1jLM$>UMyzw?+]Qvky2E+B$By[trr#o/Q5Vֵ3\TMK1<*wBQ'jD&5;;?ԃ/K |߲ر*Y7~q`Q|^(TrgިA&OYS# }HYPRls)ZiUd0k@YoAh=d@|>*p}s+SYܠ:;g*uź;bpB"l7&M`)!`-VKF3x 4e M G>=fv3ޜb /[=6#%3t'9EQ֣#pSP:wpzrtTqEI4B˟FzXd"Ѐ}[?D1!uu3l"c:%uS۽2 ',Hfk8tC"PPoT%]lDK0oKcNjXGPK@4jڳ .="WjlT*$Ho/#3W~E!)I}|gP}ˇc? =O (JDfa+:pAa܎U~5JBvhj6R5f|?9iOA?:{\yT#Y%$TG geCCOc"xe5; X" ݥrzei scB}뼿V V-v9"]VHijY o$$C;]:MEZaf\(#za.:cSw,H iS/BlbGLZmM^S?x3 +jlTRaRES|G4<.ueIN1A4y+IcqbG 1)bg_"WN(J&Ok}(wy޲g YZD$aa =>ILi&^΃/hoܲpzbЉ](@toD|3cYŷe.c9a>I?><Ea KSNh<0 ءUk23.JxDQ&y  ϮXD?1U#kdvwO]?[5_T\^2tO%L,F#۠ ̕3!FB/E",+J@`i֮-҄lc ׃[+% &<4T-{ոzp*sYcI& xzq B…$4,2c".8!:U::An=Q+W7|3|eu! ̊5 U>LgfDZ38?FEN£AGSal۔/AwL s80Vi1rY-v=ya]T@A̾C )4oe-acQIL;$" r`c+=[pC]ZIcc)6nO,ssJffSrYL7(׉\9-omvRx CFv '?իO8#[IyQO/Q%g3NH,\QXjSµ4+u +Ι@7QU)crBF+ hT y_zS!#$2PuV`TW};Lshydff:E l 0+c^Q`G2`||˥yɣpN%i?PH )=AO-mEjRweblĴya+{Z?n%qϾCf] c­9<Ɣ0LX P;k|UhHmE~ .+883OmH4ST׌N9 of6Rb\izKOKF[clF~poG9\)OP OcIw* c1T߻ϗ͸%L5wp2镃[|%ߐgӷzjn|nIeF{ ahj?|"}Cz?j5AQ)>`ǁWW<&K/̼p餬צ0* D)SDux^= O_N=xnnN`kάg'l$1 Z `9.k/wNx]pV_&_?@Gr bΗ[0>qdЧ{_\.+ڢ# .J󘩚->Q{ 61W]Yb7sG&0&L+[XYLIN;G1+>KM[4c C@O%k - bDX8.+.bC5'H^+R:x)/w%Ksך.odpAk,l@@I漧N>?(1W<1tL|hW' 8#Ufm}Y^q=cf؁{ %؛AM|}T ӄ3p{g"Z< d%O`Ta7T̎Kpi0aYKI6K T xw+BF5;0|9i׺lޙH[>pd:Q\ '!(m 14G{-AˠBipDZfp&T,NZ" cYƵ0/ߏPE W`KkwO'p|2/ q#EMV/MpBۆ<53S` 3ЖJC6Q2Ra_JFPsN5&adfg)BѾϤ-Z؜mߔ!H xF6]OkG tO;Szϕ} etm t9&=ᡜM$L_Hϥ|Qs?Ha GJb(pf|[+ںLZT:4vcjp"p #7. S,9U ,1`an/-j]4jXWQIhO/(1_L@ocv)h\)@{U5U,N%(ftb$!lH%8sˤtY`pw -ڧ siVMbޠx^"?vE_> Q'\Qc9[XosIGKxaтHq9 g#7~rtN`!P.N$yDјbYN c% bl"/_1XMj ū3,@ywO[oSMWѕ%VMpҖN$JZUkQ~[U\#b ZO2*͋aP{ZgKfNpOcU>鷦K+$$5MmJh.}?.,5-7)ğXWդҽ3Ozf 7e1%%7]v 'qdCW Dw@R$L Iċ\vK&&}zG@s`8Ñ+Rlsw5QA 󞦹w^#Lcol*\AjKN57PJ*D OoyDGׅ~]RtkwRb`ė R)E1/z08eR3U!mf]z%jwV_v[$@qr \#GB2,˺L2 ruɏܱxg\ ☾*kLm"=3Ԍȯu..GpAي\q=jTΞVx[  -l-Ë~lA!m/ZU77WngƎcB2oP[ڀgM3$ffw/R0!'E f]/As0vY^tJ7h~$ iiS*/0D?'H^ڝ*IU2tiM|{cf-qoZ(zXdXI\pE&"79]S+OdZOçM|{(,U48z{ SEBJ-ZG) z,G5'w9\ُG!by<͈߯O@̆|M PvQk!K޻^l_ϡ6R4(m4&X]KUnSfCJ%evu>i 20r2dE~ZztꠌwjYLRF=Ŕ{PeQz LsFA f;ßBO8g$ه7y1v6&|`-̒&@rW.XʯD*ڈ s'rݔQj[obe+:nOS5(+:kݹųO{gQTMMPlD$*~|?[#ߘtiEMoeN6^ 2qv(G >>&*ʩnf8&zޔ\%Fqqht$ih>5>neˑ$2)4/=Txz%ts%D7x=tWp"Tf~Z\9\4HgF(B-Ekv s$9C?wti>tXK 4,Z+RK &Fm@y@Aׂ)jٴAIQ4uhY6(B̶Gb1!wn?]uppc뒕՚C<`S pMˉU,/QNppvp^dˑk!)%jo66iFY"'X۾Bf&| VTN_먽/yڝ,L,u1on°¥.)ݛ`ǣsIJ-Y[po 8b7h&t\7|PoʪНG0!Z|WsSCR2Y{[`@<02`(w~2T覾+:P޻ +<3|2E`3# c+joMKtk!ZQsq[ bcd\ h&$j*^iXiVs:z,]\9xݮ1䏜T+#_p4qm0Q4S#~0xe/hAU5w.NjsIcʹvS b‡{׉[}=syZ8yliX\nG]',0PGyW~Pe^Ԥ*~\"#N<9\\]]ǓۈɄL. 8-DN"tѼ4*D*#qLEϔ20x lHΔ[!!t1Uf 7>}2/;FG20ҞU@w8 cxv T9A36#aKdg{٢aԍCFh5QJj8H2.idZ b%A̲GW"nOsd0.gB1bhrEЗ{9:K$XX]Ds`Qe*~i:yJ՘3zlށ,55TєAfځ}5e},<1Y{ٻ~2]\#dF zP&- %kQ˗2drbpsTgy~nT-#4Յ>pV{93$2=V3__%&m[ *1O]CSFِ8~}4>)!V=ta3rH H3c*L 9U }-, g ,kV2SlsIQ#aelIikހa%䗩3Ot|\L~-})&x#qmHM t猣80- \S|Iֵ_3I\xߚac {`M %}~/@׽7Sƀ2ŲufTțD6M} h) T D"f Z [lyA!i{zB%M4D}QD49WDD%54?@1!9>o.Wݡd J$NΏ1{m8CЍ'!)75^B?]Px G=i*1McVuakⶶ" ĶnҝZwH1Uxq* ̕?C@?9<0Qn['DJ8&iB\~_IUT ~+fVg(=Eu:Vk%Й'68~F\\Ab؈'5|%/,BbKڒkEEfUuq(EOjc7kP4s^JANlݻBp̣gخ͔7 #xDx,@لB/xwn4Jˁ6mzو a]y9ZF\g|-.x7MWɮWLg hLd n#8ҵ)8>qTY#C!k 6f1/'Kݜ5G0.sn;x RKɲbP*l7%ؕ#ѕ1rHOGsu_P%ԅ%Hv'1CMr0l6zv;xEXb"3cƷl TיD DE> 䵇'>\ cH*#X}t8%KqL/K`< _9{)җ!,s[  "- rjS}8Mt",{&l~E6{&iAUԳP ? *y(]=( o*)2VKj) ic}4 rNO_닩SXW~T,+DJ>2o&c[Ll7xN(>q? (4$k* w&* mfkd n­n* *QP[2c$ 2Z(f3[b%F&&tY$ٚ,oU"u9o+u:)1kK[2,#Btd0xJBasc$ʨrNho+ E$r4TpT#(5#jTiL 4$8OT;gqa*9n%[$99]eB~> mE%G4^N6|NsI P+ q+4fZ 񌈖ih06 :V3ŰF͊ js4_#4|'{FBz9G"u[R})2vZ\s%U }HSXpo_:YPs[F@U/h af^\ Z"1ߠg ^\S鬡*DH[+;zBg5u7N^;X-5#j{)!qnYjKj)^o9't[ѿ\lz}A%mׄl%c) RFxS҆DG+t^~#oyӢx9ҧ{kTygYe'DW#٬q?9eU ~5iTa}7[Nug {V3iq/X2H@]Ze$+~&#l "C)t&G8rzȔҾnW'ejfI-:nq,l4u $9HNSB:v!<[4nՀN\#Lcۯm |a;;y?mTv`)Q?udT4ipT. @5hZSUMoOiklD4{ vTw호{"zzB~u&׀oiUé3lc/XA1a(槐I ) M ֟IVmAvS!.SXnf}X~NJnVCF9<yPgdjJrp>5gi^]GԈ+FwiޞlJv&90)J%l 3 /~>osCM!ʴb+L^}uj׫` ȊGJ\٧#^gp576PEq =q*]T7H$ R2}Z*-`ejN%^j=f ^\RO΂UčXrY зKJOE]T~Oy>:5X&H;G>;H-{,QO VcTT£JU2E/7UE@HڮpƤɌֽ?:cKl!NH#Xtwh|o`<.z5C CS(Gֶ"3RkȘWM*)Oa{g_ASmS EnYhZ#Kt] f[$I.#) =3[Ln1x8mAWToP}' ǏB 8IZxS g8u7liRt>/w i +΄ezvi̮IX8rS(Y ٶ{jA}ʦ(Om"6Br;!סp(kx6yN| ϪBF,g]+z^a0Ff1?0 Z+䘃#yhL{&, Ȍ-b84 J pռlh8i% Ie!61/YŤ޿g;x2 >5*&J)~ŭ6^s 'BcE^1i\zlEiWJӆCXX{U*K+Iޑ]/f?2 _?^v;7Ao6T#T2 ,g΀!.># "a[ېBZTHg(B Y^ i`u@=xbc^P_sLUL0|9BWL&c38ý2Nxg;\1$]C>?!u$s{9|$`Kkn+ +!1~Rn01Fr)@T, ii=5?C#r{ 27ht,F=`kw?Oyq՛;rABwsxe@fa )ebPڳNv1m0ۦ;pU{u+75XZ.;2gu T9J ,u` /dEe"bWI8>l !eu>vɂ1_l FpcCG+"_IZлIHIШiN1B(\ѕ6̗ l"=yߕ|-c y>ӑ%tݵ @䌿\Qe\"_0w;vnzuPa*FgT{]E4kJ$l6@'<# RŬJ2V4"HFPh} VR!Q%3AA?iy(TPoO@diu{ ǙUJ^:juq YiBWRwFaez ܰ{M"L<x5^=˔`U c'6',D&e'o)+ӔNiפk'^;?d)B{1&c~#C=Z$!X#Kss+u0ZʓĨIcXvVafi,з?Ux3;. @JثQ;dوeIĝq"H?ʾ@?!Va:Ƭ'#lOd?}APYXE1\{:GղP}H? 60=D}- FJLSH_(_CYƅUb/i8rHw* "pwQ(p,TѮ{] 3Ns-GqAףT|g_v=F&6ַSD}֨`v &jC5CvHG:yA2]sU8Ef OF slj|膙g˨T8E*3qLM8"FѶt|iB,5$"PZQb@-92Gv)(_&yV:yIhW%۷o+5` _V]7^Ҝj zX))+Uq9.;ý(`^|U.]l7l*Ótx'x~ؘo$|ݜ}h9dſU>Qiy`aRGtZ|=ș(*W̩zRB%?Ęm;&'[5v'bP%jXTn6UB?bB1a8x[TEZXp. Ѽ"e!&n$UnjNY9;u5{gG -z9$ɯ$@xl Scy. #h]T$Bcr4Ɇ*[grme'pzI kaSQv#55jޱ t*Yb>"ˁ3H8;qyi|5;7dbt\CȪܱKc_FMU,=aj'E_k`v-+Kdq*jg 4Y!y^$c pN+h"+QsF!R_N^1)f~MHW /aǕwMZ,SZ]괐i v: K }0$*׍)qCf9^3r 6bXxi9^ƶ rVd.K~IU=w LA^Y($JHALݵ=О7>/6X3]%^Pr+e_[o|(l_`6S  Yc~BF_@r_ njI{0F/TN @OH/ZPC"Vͭ{KE̯ ;Ws[ty-nӘJ2=^Bȣs $}mQNQQ'L j1wCtBF8="0?QT !/JHY k Bfò4āLu,?#$Tje<aù.?CtkS~dlh?89쳎M*vAAhY䭁_=.4}jӽ힐u.ܐI1H>19v8_ ,< MتP_#8(fu#$1p([Z0N<\?LJ̃ {&p׬\I8sN!&zN">=}pCJ"E}."{l%>P>;ח2.,N=T)#ME]b]Wηܤm.YC/A5X͎g%8o8"śg&'჆ٿ>)5d3 i:J|c1@@`u;\>/F (AdNͱ:z6􋾶9$A\Bx0#ЄJmsA4=]ٟ:v\Fq]:sms "{25q`A- 6_~8!J8WM1T= _4T0QsQ(6,#QqI`SFAWGhX瑊,ObPK0F═ۼڭ\<,hH%x~-鱹L$Ml)z'O5pٹаP \0K0qTZ>)XnUxGwT\8;b 3i'd/ y!V<Xٰ9+U|m+RB$mʓ)&ͯn,,y~(/V`c`$/7 (AA~z`?h g1m ݛ<{#(T[-G|@z!팤|h.j!Qbs 71RY~S3&#΍o-ڕ@Eh+h2 o?}öWJҦlB8O{S9\;^xQ8vԁA/UsmBd4o"˙/ҷϨne߽>h@`6$_gp[{^.nvmÙe}v Z.jƂW%e$CvHtv<'Rﵫե|Iv-<-E*+Ċ'G]}]qhPsYa! :n#'nHn,_QzK K|'VxO 2 ֵQs@4@SЅߋQ2f ByyWl_3~Z@YՎ6F3t=Г{nG夞@46G"{n=&tmtUk5a{``iѫʒf٘5&Qi47]+{(^2z[/4qM P>[AS]ʕTH~~j\+#?=u׿ށ >8%(2Đ1zF1\ޞ ,"ܽtjωUZ :0Cg㞢@) ǃ7(4mn-4%s% knSN.БB?C s(P n:Zf+0%a_34<1E.Z^Q[-r*޷; 4_)ܘ$\&ʵs8;,&I0Ĭq im5 R(MDzMD]v6/<8%g4ɶnTb'RYǽT"/+$z1@u'{tC^BS0Ne#LҫkK8fV QgCH#1i@cf'2Upݵ϶"-W|`itIǢm+zJNb$W. v ZFx^3*]!% fʠÎ<Ȗ d0+h0 &?0 i)r2ط"G(y'Iu1rE\c$Җa5D-@KjVR4 y[2>Nͬ2+z;ݰ#p|ހ)ѶJˑ>`펏@8p*m[4d3 BkW8S ʆYxwNpd:Ӛe_x{ɗs>8>4f78zf)\4ӺqTM~z=u]ϓ{u$"ڗ%a؃,j G7YϳF U2xH{.8'\M)Tޔ)4Rb b8Vw r]lK]X(B g}s 9^ܛ}9G}K7)\thE ԻN2cOO_fۧ4/`>{rIvUGTFv$W [S?WzC "ck}چKm<%*W7kGJzq"c沌=l%`^/6$PY2c0Gt/N6KbW[҄*ni]CkQ<pͶha,57N \< ɥJ.1N 3)>vswVË3oXnoq4] Fg e )J#t5l:plNrw/ƴ2}v>Fž1گqZI1&$0Ee>Ep EXKb &֙R6׳}>a"r-s֔1^f͹TǏ3}lƺRQ=n9T=QD|(?iwiCrHsQ/N=j苬a:A.5$ ?YݨD-'k t4]0k>UwnDMYo0EQNU)ZQkEΈ M3Si#hT5-RXJu5[2@UTXʰe$X!);\O;D?Lhbߣ꺆(<!yeigW; jM)sR2DCV2J`ܪAuy]Gvܸn⹑Ћ [l˧[dAdf^<8=С_5|[La-踈XP;$*DvZS ÛB[ƬxW**k4h~ʖ=Q 5"j9jCi_ymSznˑhc"I\ݐ k>C:6oHyuÇn%Vfa!c턌Yh(_#o?9 +΍uqL.M3Z Mn"j "Q"6P"fSR#7C|v}$H00 Y܌R?8zaAb-<;OM@ >mE(HtDB~xᆰ4VG|yjS _8MӤ崅vnNIuj6JNE5qK5P񤋪XL/'Esm99j)aVs_&vi'0dO*n%5@^_:c}g {5Yއ+45JJ Or 6M`św5-6zMnG! {Ie%F1j1vqG[0N?ʍ21[Ǝ8yu_}^2E㏣K2mw2R˫Pe[7vHwEP2S|ER(b"&1mCMԤ~[I7ׄ3ud}[{hSC. FHgH vD,U]=(L*5Rc(F db [צAEAT/bKFĒIma8syB4z>m9X.}949Ӑ#~㪌e:hfKޫڗzC1 2~buܩv!TсO@--p)ϖ e ; w.l-`i׸s0yH'd?5QtlÞ12N\:j ka!tG ?GLq&fӜ24R_U4y"ME@n8@:I}[j.з(4\5}P=\Ij~l]" ;Jlɂ99so8:A-kBYQw4\_$-hC6`8dli8p2q">1I9?0zjG*kS;@g#Y%{5zFvѡ3e3 D.65|*qk)&Z*#{]!;W UY$IJy,FMJ (k+2^a$-`6MVW]E'*v tgӹ`kC G8ْT߽/qtgt%PJ{.R<c6tù&;@ Y㮦b~)5Q,"_Jtc՗UH|'7󰁬\U+5Ïja< Em=[> O&M_aoC& s**9? K/h]aޢƗ$PiVhXoO<ӣ-Zo5oE2RGr.lUE$fU5$ú#4(-?a,{4&ٸ:sJi,Zw% UίYtP֜@^BܧeQ<bmLKd %iT7 zAh0GۙXFXJG{·)u -\2emQ=2yUoܸqFEn-LM}Fȉ #5C*,ElشgV7 mZpzTX:C+0 ~//9.Vؓna (< C/p}}'M ̶zN^SwTD"GUB DV dD}s;Z B]KP%htDPmn5: | rרmjRj |QzR6?]eKQ9.LOsuO]N|j ,~|@[b4yN$>7e{akY19o`B.֢6eNQ^Y%|*PBC'y*OZ!*t{\>;Hc0WS9E#lM.b!ѲF )PlBYf! c+Ɏû-s?%O*޳VNbH;c} z:xL#{ C߁gt*Upp'!}޴ϥC- hӸENBaʰZ(`t ĵA-o =yOtDw"@! ; AvO_ Ewb$p] h *k(K|VVT$aH *b0\_B%5I+SA%ze@#/@m~#w*#nk:vqzb \6002yh =< ˉR^چbDbO?-XOc3ʙlA9eKQRBnHW8 Qv̈qXc="5k7~R.3Ö$qp.TMa-=\痼йΟbURH9.P#.g)Fy]u>7#4@.oV ~ qiQcϿ\۝w*3-դnfImEFa)ޔ&1';^40sc%S|=\~_ ǜ H7g2 !7r˜T)iEQQb8H1!=,)q[<֖C ;+n(c 1 =.RH..0G,{r)\ 냹194ǐ{uYGfDz5@`[7GkQ?m@H/%K1;1NKJ~Be'H ;ʻ*?憴&J|삝CEQ\sx[ r#yԨ޽ -M*wX8VZ*=tt1ATn&8,eU?$J6D!bDo{|\bى5?84vk/, _"6%5iW)o+5UA«n $@ S9klQD]D8P;kb*0DpH꜕ur@0w0WP]J4q1g:CM_oLM/笷j!Wqtpv-ړYfR} ߗv^#-%? LTZ m?]Zmg*OPđET\nW=0hWGeN\h <iwvS>QqD*`1Tm;TȾxbEvǪ6yARűleI`!W︼נYY <\x)<$6e*ȢS։z2Fi4mגK*;#1TٶUYx(8R' {@VUEd:/~exnUʙӴz5!D4N1 _tVF1l5G|C"v]U$CHBAJF zRwh2_B2A8L0OCWRDRMrȋŝ%Y^/"RK 㵚/z&/ezU?.24 dR/9D&^0,y|˚BVΥ$+.Pz>L(8fcVcEI6Dx8;xخ<%g1vtFqmIȿ AIݛ^`>*(U|ߒ֍fvIsĉKPcLEZO \kAx T)#pտFAYTVIF*29p 0'>yX2R~3KQMշڳIHPvKUsʪُ-GZ m?fC6N-OE0MnU8܃xB0flJ6yZ;(+=s9\pxK9Yr$*z]K &Yy RK}Vuv1eX2|68Wā?.‹+Ԇ6ǝν> M)R`ͽ8[^6%'2V;~,W?d+;G𤸈o>7ǖGb%yIDO hMxw]]$jazh*t]q,A eY4](rn~>9fbs+}bk1qmrpY||~7K/ܾsvyI &F [Tk!&xr㳶*tbK(&*ehN̪͗@U˨9֎ ET5ela:W'l(P{//ȩq5GI~-;b78u򥟜~!RIHX<ҩx`z)DIM\[ 8]RK"SJCThS vOfRvӶx;rp.Om 3G}e JYr[)FBP"}rF?5ž ʿ@Ֆ)@u{h4viT[+Ny<`V_+U,qLI&hi 7Z;ju4fv{c~7[ɗW֌ n$5laTTq߁& I5n)>wj$r@-㍢iM%$y`4NU?1Evg$ BFg|ܟF]$;8 O؉`Z\NH1I2NW;-vè00s8ǂe$Daà/ubW=(t1.VB0e'2{]~c7E0afNӆ @kL~h맛JXM AFq9QnMEݬ }ގ~~ [-;򡶥IJk 䲤|hը(SsE2፾IWYHۅW~ӴeŀmN"}mDm톬&Dl.K?g7OԦF>?%bmuJ 5 w{}uL 8.тeX#u[o1>&W@<t* CDi0RYՄb18nۗ6F 胢ôaIysOtJzݧycC8_+Ȕk[GLE9I YnO˘gU=!zK5Δ |dt1l}_ vΨ?hr82mwi7S9$II9{dmf_U4zqDqBr+AZHa}_&bB5 ֶҰ.aQjp;o_|0Sz$k AR5nR6LWw>~V.mDI:k{};(n-.:ڒ݅xqZTbbl\QYg<\ߑZM1U',L`9\KB *}/DcW *)B2Zp9o f=1!"A7KQ,Vr]"1J4S\ݦ  W4ihn0GwICx=&in21ۆ8#Q=9:v4ݿEI\~=VN*  6|8t@~؇ȳ nz+*^q}*NQ±9&\8*vDБ@mimrWR+[ Ytfh]s;I.$o; G|R7~Ň_HBNAm/H:0b9-=;F}ٳcMЈbJ }s\N5gHa<F$vc*U>)p~r8u1cݬoB@w_${B&_:+36yq}jLTe[b$+"]b%ă0idVSlK2$zXISg dV In4ٙ=p-CTZQoM87$ dúP|۪,ϙw/uKˋy> /ʸY};EI;rzn?踭}n<br6RVeccn{xZPȐT0 4:Q)H]u)|Gm!ʽz;hFi'U!š&xluL'd\mʟ_;>1JQR7+c݁] oJT@9+Z$ FL؁aEcX a ,dLǘMCJ,J֘[j+HK1 ڴ7WqycTӡlSQEڰ4џS.HÕݪwQlKņrUd`yPe)WeE,S:'%BI~kg[0h1^m읻\{.}vUiىF*NS =|d*"Xh%>o'I@7iQX WedDH^Y[h!ª{YLfPC%`Tŀ6OV|\;B7|j]}{`0(*;R!Uy0p.od\.M5c*mMn `0#O!Orw6靦Cx@A]Z [ixT~%\fM6ĩN0<9[Y]ݹp)$Ra&_btMDmDݔٰʊTDݹ.;4Os"{q68a=*'H/cźL;F6n0`U$yx Uny<+u^bg:=a5pڊ2t@ŭFiW]`!_նpjHkw{Cz|jo\L(.^o>U&=?l v7 Am T6߹ XV37ЛVmEI@ 5)LMX=K+/t^Jx'?鎰ȕzG,M,S*v7;^7BHy+jkMY*>/?Y5;C)2@Ub.+Pd>W}è]^CGu٢jRN%N;.|)wB^Ӎ W20 21 |´UE^̯ƱGqdE}aRE\'w#ln^ HAn@} v#ڼ2[x0XT`r*. FZEp6̠SqFxD) QuEmڏ[lrXTx"˖w0yjCQ'EWǝSG?l)aҟ3jU)h>=05sۭjNiN#5-,r`YwvL;bԙ6!I 4+pUjD{O>.0U4,[2]7En ߭Bحx d&{ "[90Ԁ)sh:GD} WvrU\ bTa:u薠 5 ~;%N)VƚU:W9:[9ӄrtw^дE؃P3oѐx)ܠGKrۍX }jg*ɢ5 t`4sO3*Z#ؔVX1׫|uEwPFV%,lU*NgXCD]G;w쀮Bn է 椖)vgn`7YQ@™'_aDA &M< V%1Úl1]ߧY.JdKٺo!SBm-lV\S5ma YX)2i\6ȡpMQI 'i*zjdW B8pcOL0 -VJhĎR2h( `C'Y@6~ 9c yɕI,j кt W熠Mni8Pz׆f`n~dk+6W+bԧY h>Ls'ڧ!~5q㷰:z/E1 S-|"@g&MP@.EsAtqIonP[%˃ؘ+R;|8 w} !?y.lOV[d1eDMAۺ鵤F;Ɔh:U/9UZU1nu@݊>P,, I߱WCQzSX`(t^gi\sG]gv5rULPKȒV C/iU(P"$ns(OL=A-n sa]\jHTGN*oUb?jg.:` M_+ -,ȨR=I??P. Ps]. ս~e 0\ 1aD ґN@J|@ÕkzKY.ź ˣh4y+6LaHF>"WH Q]}G1+y@jUǶmc+`WM ӊS<:?bʼnC?7(nf=0*/:?lNU?:UO7T&Q:݈MEo*D9|-tr?ӖW>E^MSu]F,#P#CK;-KCî{uּxC9O 2;2VZZü)K SILx[Bο8Ia]g:QEx퀢zDp}#%>|AeH YBŽcVmbHaϟӌL:7Ksut:&W\svm FkH]B*z+۴wIyaFne@q/ﶯ=2-g5뮮P+.wigi{ J{~ݚ\wۖ"/ܔBeS!Ju ~OCǞ(σy_'8׳j"k2|]LA9|=cccOGdUja};@<"{vFt-L{ H4qa *鱚.hLbFRhJ HqI+c~na,%l| }#ZS!Zl-B7]IzeQNB2&6ИpiK6`;LSM4l +sKe'K=]_[4bYXVUkeˊɼqT#+e3 ~Z_א;7'*,35^߱t4#m`D.dߠQjm)Ϗ1; <[ 5٥sJ>0JF~9p FXQ`M!3ɿw8ýUlMn7͐VNYg=-q4PJ!A]d潾8ɫ˄%sA$ t]խa!*\L"*fPT (=3͋00"C j|^⺵tM6ܿMi7hrӋ!h^R,87ۖUҒð,~6ZfqAt]F dl\ȽO!)dU #`R%AZޙm㕣}y$!D$kR;u-GSIt>?<{VZ`] N2 h\ /쩿5Hod&^6c[v_;Uw:UGLFއm!H7}5.Kvi 3 u睨{Ɵ6 zH]RnȫL]HTJdl1㛋3AfKa{Ʈtg2SDkY~uZB'7PMD?e֢^9mPJ^^i7sgC~XkTJ' y=אe"^SG.X,8abYMVb I]X)*,^A#U3w-"OhEDe]o&?n͇:ۗ0~cFc htaYЍ{=j|-mQDˡ~H TJ.@i@&YmF?,ShWWCY3NA%з4`0y7U,A1ˣ}n'Ȑ3< I) HY@n+%c{JKh2~߈rcs Vq:{s&=| IѴ6-5EHBpO.iƴ ʼnr"y"wsԦWjEaTPnFuԴ#+}QbEEa$5C @pϽEPյ-A8 Wv DL`9%׷k2Vbh')AA_uhC- 9.|ɄR4iܵ9QuG5}zqb, '`%ؕفx$FzKlcSX ]^cV+މ Q_$Ŕ\(Sٶ&)С (+kH H40$416YR3xdgҵ~pD5LƇ:shⱷΏ0ƚ-҈̹lS LԨNAжQZ∩|o?ݽ+*zgGXssG\bl"?% ;D[;l΀D(9\,HVpq|=ey .x!'l\V,I/e 0[BmFՒՆX\]I+hĀQ#,Ec!v}%8QBdʁZyy*Ep+SBfJbif5}cC_v?BvF:6k"-fxv5 cKP $%_)S PbDIH|QrDSKB&x r/Px L۶Ok&9J۴i>]'!{-M( Gw-;,F݉QH0P2NIst@n8ꛇx3S+@bFNX `"!'F yƗjiVj+1v Qtzq/<oUn\#Ըjv5߯jR&ϧ)&G\6x&i8*0kjkN,n"OQj-Rū¤LF5km'wex1~˹xU`Y= ey@(x]Ņw,)H=YG`Ö i&IQi`J2XvÎV PQ)77#sVtTsr#?1vasٱM&h~IU\zapld̈́cҷ5WSə\5C撉#G&O:̎ qܙ /HHG8)f\9Ώ.` +%_c!uExXGeSSPqE\J-^7j{O_in&;yrmĹyJctxT%Q U޻y+@p 95KJ4>i?,C[t"}'-B7"IPFH}  O-(r3},R&+IhvuY@b AjvB)Ne'̴f94 iLC'zY? ˜۲ uyxJ{u\?7)EHuLۣ a~8G;_7_%a9҄WV1ϵT0U#*ˁ^FMYG[K 5;9֋ NXӭd͉h˭)η"*+&4υ`L/>=)r-kw{u?u@kCX)B* bap? xPg]Ipl~QJҦ5s/zyZsKnPz%Dl,:I|hWQLB zd]zKrM],R *vu=OQ.4bR\ o~-Hʈ:ӆwLc.A?T"3vu\DF< &;!*ݤokco+(BNr~BG݌Q c7yHᢽcHaU#ǘu12Lsݺ6 5I 0`!1VP(FcƷog9YADvQΧ#}Q:I<MOf^;5dY^KaxX+пzrϸdwPELb"it`9 5:Z%4d=< d׸u.>r`'Kt财.Am~Tqbr;y>`atY^-%iݱH/Eb,-IRT ;#p2w W 77w9z!fҍ"g$Fqu<J =P ή: J is .F. 5Y4 x^;8QEi2O HL&@ [(o/]-Yda'kGʐrQ{S SyuKHiN'xmM}}z$͸,jC.ak3ọػ`PdTI>Ua'i33*v3j)V9d`7D /;__хގrV'㍃]SQ[>$7[^+`2$~!_2 ˵H^Ǯ uD}?‰*1.ãyY *J; %/DrTGkKG$:4?y6.)S $\w*"C(+{э8 ;%򼛬 cES2oo718(=Y?6Ь13&Z^+@VP,ʙg^l(R-'i$V1ܱѹ& )Kh 0~jAU#uʒ@hL],_ԛk-|(\4?|CoF_7hwfQ] #*^H2J~]yaUkbqGg$YB%>ļKnH߲߇!a 1Yxu=s)6lK/1b7ܥ[͔H+ bNdA*˛8@糢Ͼ%雃l+l L]ý0r4GbvFDv}55o| =Qr 0\He`!Æ Rh*PD_xu2O]XHF\:$v_'7WOXn^'l75%,j|zޞA!K,U?rIJ΀Z2~x:nZ]ł5 R,4gjCM!$KŜ>zr0I]+hKE&*^аe't꥟)|N*\5z R!ι "@E/*rFqoք XψBKqF 102)߀ rLjf!buC+&8*<9Z1g]>^քoR#ۿa0 0Ghğ~m YGj>YOQ+yEq|<mY>$@Wbtp 鏱tKIn3eeG3-(?% <)vmH$ V:)arW;F4zBb ; "ˑNe>aN_ú~~+hՉ '|+l [ \׻%3`|ChO + Y֕}h14h1?mPZD: vexSs9{EzAF<8G'MS ~rV^ Qt8 )6$҈=sE.Zvu{ΑüWzʴj:]Q<$˪*H&ӽa:lCD0p %,H<o8$e0`VU6`讚tD(JoaсM!Lp[n 0A%A)EzpfZ\GzQ l`yd:7% W2@DVVܭqCR" < <.єZv-Rj3͟\sqC+µ"+*qqT-2e0 }e+\%psF.0$;6b?-F˥HŒ񼟀iE|A1ʊiB}0n%tCD.C|hV)AULaux1P?O8:.nY3؃^#޿قpa2x>@Z<_atv&Nz^ 2OWg,&Rɠ+~g?blL:|k'*#Hݒv:I p _=N +J>k<0I X)ܔ &`97DhaL֘l3bxsoopʫ(7!u #~d\GlQ:Oě5L/vGU3@N=@JYN՟fXqbv>+xPY&ƬgTz~2TG`Hf#IqYFb\9[f |Wg1^=tJdK7hIuIr 3IM?C)Sc eNdx Jbe}6a%$(9HL.?A 6b0e` 6<' 0Sqx(f ޞI(05dSp.=cф|-q!bI-T6?Ag[5c[d$3 n]|w.1⪵uf2CY ^] 01ȕ1\FpD8Vƒ}WfZIXS)紨spC ,=щfWBXe6NluL" d+PW.(l-Jt),%ӜVGP±41=fQr#Y3&Xj*Vg]Yz&dQY՞\.'tF4*5xy\&: or'Fh;;(f) rZ]8zEʪJjaSG_>Fki\D\ ;9ܪ6vy<c>~Ȫ&MU/'xx#m<8}ccsD|o1Hw{Nدɘ+9RBrH.3'.4;A/HG͔;GZkerؗL9׬7K7;[߆8D%s0bpXSPѦa-["eؤڵmٖiWჳnn1Y[2RَKʪ§5 s:cl3 V[/'ك;6M=}J;C#WTPe-qޞ\'LQud7-w%&wne {ʩ\ӗJ).d{KԔgh]%8c4w];Xށ29:0 &aC8p*Cn–khЩy/g cR#q&9y'p}$Pn+.9D ئ{i+?sÌ)$U'LQjhfU3 6(hNlIZhgs  ?՞(9lQr:2s-'"jK1JJCIGtٯ)f5RTD{p!Ey ;wTϳqLS;VgG_#u)!-j ޗ83ݝ8R`=wd/Z B!L!b{a 3B!$s̾`u7l '|߈qGGuʦ`k1ܣTmf H3EQ!)`įbjF\yggVvnM` bOR\p\˰ y`i{%fםFO#eڴkQ`™mPi#1To5 U@mU1lju R A>OA!MU:0Hy>F_fy\l24"d  94/:g0b~X=q(,d4#D%4h+ۇSk\`Ļ_Y}})Kỽ 9MQDZ qGŊz_HH&jևy8 $ w-6HP 8S/"Xv44:*Ke biE캧 9]wL茐b+@&Ǽgh5g* &h;t8WYG&3ᒄj\WtJ°q ߫E<4|0^Uu˅LD>q.TR(6.Q ]O=b֟BlŠAqJR'Bsԗ,ZBIJJ-]#$zhxW1!<ܹqm7 QAtme{u%RFonT)n P27|ti~I d*kk~ǬK>\dE8ͤz~ ICIŚ'K]󝒘N @5}JstMgVXlf3vwR bDVKt6iɟoa:S!bj=D,T8e2Px^xm6쁄M2UxB'2Q\*`H67Y5~ ۿ(CY@ك!r)9yV=TcE(A `nPy4p;KLKQk=rBeSs3"FH] x&wA @C2iRR1T#"ou׷Zq'Vyhn6# {!6RCp= 9շ@[8iy*`Č >xZ:TTZuFPq+33ac] :'44T%C>ږݰUnP[4; fD5j?jb4#*{M0̌og}_J:tã~ĩWBDpGK 9s%{'/3ԥ$qTtdv+1'hIMq0&M!/p(cr [p*(gic e[ ňӂU_cXbM=VtrǠH:aj.?lck\jRU{(pZme(cBP8YO5geE4զ\8QXW <̠Q`*]2 z0*ڙl |E)?pOd8¤M@[&NrEeO;4F*b&O?)g4ié>]SbZ0~FA1h߳0MĮjv|m٪|a$sh2Bt, ܴ[MsLf^ֻYrFTlB!`,ԏD+znZ m9=Smߗpʀr2X:RN{<YZ*R޸ݍrh S[uVᳬdNR-P˫RArt-'+2Q" "q1]q{E~hw%hS6ZIv-z`6qFJ^֭a.ѹZ`xr"k_@islxЗ;Eɖbpuv<d#%gͬ\ۼjZ#8kpT=uǓK'2Im!=pazdni篋 YU}:(<Ղ)΃KN.yP@;4}"2VAYS׊>(è)pFH30>EΝadx|a5ߎQ߯m[yi/.\yZ,Q_lN1P'FnW-DoМL(I(@RM<ܥ[ZůfNVKfg/B<|y^p4f傞}5oX%$w٦-Ȥl1Qe Y C13$ 4['}A4㻽lR J%z@lzUR?w*aMϵwUV3zա%\UsY|@ƃLT/ҏ^',%q֖,t \J(NUͅy`"[:H`Jl% 2N0r;o]O!fx$QyGT1|sV:38@6k2&0盬2 v@ \=T4D6LHjBz-_[A8$5Е_D5ΥSmn] ?^~YPǩj{O-֥A9NJ[0[0zD8,n-RCG^)v>2?p>A1 ݝ YSvS(vE %jw5Vd11Ed\Iz< K,dEm4ӽW6\St4GC(njx*S- ` Z(kV[eK̰$\V>:f(\Ϗ~3$x^:~,NzH(|IwE*YL+Q0>G+-{ۘ dxऋ]:hX mǂ_N3}A۾6\+i#xY)0ŠeJZM?^E$6HqB3p#F{\s0GfMxqZ:M6hV\\^wx%DePG5$ZekdTJEsSa^ŰaFXd;Mml,pI7 47"&lU>Ao'aut'[_PP8aE ;`]V$:xio=KjA=P $mnlZ\6pb:ONy3h:>o՟ש1F"MXj`iDtWf)<b2 - `RI5+@3XhIa q؉|?䗶+~UҝuC d4wх^i?˱KS }I7MD6$&u;&M-]LD;&Ncw+&'ܥOGf2kڅkBRt&%1~=81PNJu7\C.\=Q UiI's)Y ]"C@˳7 C'Ykr ORr !ӿ~F&^u„1#DCYTCh"^A>u8`#S'bzjRJ7y"1BܒB=~ j0N8*:QfWU^t60yd^,$tn[,Fk}ߠkejQhNq.[ N}¼.%:=|MA,]эIb%Kw"߹E:޲{bhNZ/t\Q>%ŕzɠy #qɿjzPte7BN CkTDIm5|N)LDu졽ɋ.2+WEZLKO)@&dKI>mgd)7LOk]B,cN61Ko/teh -p(8gOJpUgiDyG.ձ\JڗDzp _1Geaء:|L=WBEM-SpGX7253*9M^CnbetÃۋʉ9kOV`KJo`'2s{`ԇW^Ҝӌ4{NTj9 #^gNEvN&85"4 Vm <./Q;/}9^c-?. fR&#0:*1[ؚ+gGԋx2I`)񛥻"|ʉn&uKǢ^  TH!# { )A '~wG87qbt \IWաdݽF^^kJ՟fŰxPM*YKdQ[Βg f{rn[HYr}2𸹐\EpchauBs@(ow{\{IDf(4FzM{8MY(~8w{~92e@v$36urna~p''cK0=?eoP BrpA9I62L>ڸ4q@˃y, r͐8}͑Os-rNk[j v@0y·;| 4*lgiDw5>ר^19 hM+Qln( DR&. NBPF$TDk 3_KJ208cz.]Եƌ3+oeE. j+DM8'{A.Øb ϲ,P ÿ&B[|cZ, CϱPͩh40^S%ۓ},Mu +k_5޳ʆI֮_^ ? ͟r7Tb: $RiIά5qWkTwP?/rtF_'7I#|_v/y e?-)9piYwПD(3&CGK\M9/M[1^wJK[&ߜ&}Ԭd5t^.(69 ܲfa"= )$h(z[i-x [ s!QY"Q&Ԙʉ۷AFReՖ[ّ/%PS<=(*6ͷBmPMf7 Qm{RR`ׯCf21QË{wkÅs ,!RSy} o_Ԗ{89/셞.ꍞ<4g=(?'<+Qm3bR;` +ҲqQʳ.~,QV kPG%VKFBG)JLף܏UZ$x}%T$E[o:} T#p[숲KQ0-Ba>r AíZu@,Dɍmȱl@5Kw&K.RcF@`*SX#l#:ksPdWuVp4)_2BK#a{A?~yʏq\`qeoG]lzrWQ^A&|8W!l:w q!ܸ/dF|ñ$illZ 3k{Ho_Ѭv3 '[9wwpprN颠`Mt/3CuGn4YmnKZ91,1Sұ-rڙN3`V.YN/⓲ L]KWxm[zI4+P5cF\T-l^(_lFHQ*lwF,X˺MqfV(C厷qthaWbikb&SZ> V,+Wk FÖ6~f{J&7edQ{dZwN>Z O+?]KfeB|08\̧jx*!ŒMΦЮ Ԛ(|bS 7\c,#ā,;`soC2J#+.N鲗ʶt'4UtPx>h@*IT>Eq _ʳS 3Q!y(& k&0Y6PlL@vwX24 |{-!C8 :Nz Ҙj9§[+M6^}Y2.ʐj >Ow(7qV%).Ej_Gk,nfwarW44 xfb(7 GYfm+zj/m8tPPڻ?8_0GHCVk7 AD x:לT@5آeԩ\ |MG"]ڮ..NSFhptMtDDVY ɩy@͊J{ z,b lu}9cVFYWeHHvt)(pg wH2~Ac9"A9e=šH}CeC0]5jtup p5ފx7 ( @۾LR TUϷOC=6J]6!'873@U} N[[E&~Z&Ô KPhZwzv菳ckJѯ˨I|JwtQ6l Q@AhNm&W_*7g ݸ$2q؍dzJ/J 7r0]aht(y M=/oncT%(l{þk$-Ǖ ~6>D %9}* eB*8E"=trw ݁O鳗_)G|,6vS&$ȏr)hxi+o?TȜY v\'>PCR~WǺJ-GOըDu|@0.8؜`FfY} )B鹋m0Z` !Jj?Qf\V;/gpoysԩ".;6E zL2[Ip}!ޞTb:\Awժԡ9~;A˿XxT-Oow'z^_2- *3ޔ~D+ IH61҈X!L@J.Ǔ A;@%XN/m8c\rP'Vn'Vj-2,a"#Ei]"3+H=x߆H'NN>o>YIMPbSJ?F-mtC5r%?8hAq鍉Y ݲL!0&q" ϔeGFvFQee9 }Q%2?%r:vSENy(PS * q!!BՀ2-Wa~eTM M<[e7V8J5q[+q$ cc,9y`[/jTl&vuE|ST'' MG~_+sm1r!mF v)Hش-@MRc3yr5=SA 7d7U۷%yECNu3 FOf5FBEisiy_u\2 $L12bs0l~㤒'讎nfM8$#eڔJi{/Е9iά4 $a hk_iC8#jE;; VK )uFG't.l?7Jc{s,:8 uyo|Nbuf tM;?%c] { Ԣ,:c; T̉\O"^BOW{xTh% 3vIuZglcaE/Z8/7fZ$pm lQc:oͩ_{gQV<&Ы'm)͙(tBL w|U =Zi)T,IX&r En9'`igIkTXsVdMR#} c{dng2q׋Bڶ=ww\'%4D_nӱ4[1ThZyzs^lfD$N)c>WbOc²'w+Wㄶr,B[5x}f YU?B|<|'IXcfwp2oEb#΀Y$]ƛ,e;ff#Q[J : 1f·52~-t*Jʕ^'Atۏ8eltfi]>1BHVKk͉J螢[ӽ^l䚝OqښNP5y -WX"Znr@ sС`K,zI}yG g-O I%LvCD{)+T44D5R+ V' ;;eHQ_S n ZGphэ]"_v54v@}-G% Hr1h$[Syt=KRTMn,fƬld{hg1RV[My =,%]9z5=.uErJ{FeOww Zt{NspoWɻ̧ːthP߅;h1իepE@3%Pfol Jb2~QС+RTs[Bn(/&5Nfj^毘$'j}4x([-h N,cU8_nCr窿i*y]XdͱARCRe <([+f~86ТIYӱ:%6ZPҼ 1}&Mof7 [@Z*ܯq :O5fye޺cFwGRpZ풞d!} n^JR Qpt)ޞ6NdVY ! Vd;Lju/'':e@OAϠbwSp?y|E̛ssd\ |?MФ LifqatuP3FOȊPХbs?݋5+B%tsE|@+aV4n`!^QnWAOp W)1,d8Q=_IđL{;V$IxE,M!ig!jLiЌ{27(4*%>3|A>Ay_u ;іѼބPp0U鳤W؟i_d3CM.gZ;?즢=3~pW:]讅;3,kQhJ!hﰝMKC2Q*pLw`[q?M- NblhBGe[!..<>=.߄Jl@@l6 ^hx[bT|!W[%%%qH%v-1rkIW-@O4 EV[Sy?]@Bd>ms $XPazgʢh 1U{}m5![c9OCf33R\WCCT^2_E)K ≌7zտ?G53@QIť{bha}Lpah}5Ϻ D88 =(?ɺ;oR&"7Ho{***gA>QUT'cޅ秺l\36qV Uo5LE'Gz5}ۦVT 8i+>XwB&W,'ZdjK'2~~"%йsv}rsPn/"sw&:?\ٱ`S~1p,gB$K3N%C}p)\30DVBw,B=Sg$Q[f<@8.}='X'v$Yv#;m#M{S]AKp,6Xkb`9L2;3y?~m*N-)i]in'_ȸ,!PV%_ڥEyqbNn 7L8wdV[Jt?8 XH֊hq2<{"rCN1.r?9a>+LsP"^#S܍j}؜q;'-LGEXO ~ Gw9@o(#*w}a -SŵF@s38ۏSXJ,#Ug zT@W:St11PY8Uqdo_e-8Ac;\\#%rw|kĂ^y[Ѿ bzT/)`&Ֆ č JNn2ʍGd-= QV#}ƘOEpsƿ!Io-îJH([aᘯw\t ,k֍g/Ig8^, ٩H`9|3UЦDȍ}V.@OIiDFcKx@f<(M"[VR Nl5agOv$yY3a"ZMbGlb9Vu00Y p1ejތK>=o?֍ 71x㽂E9ykB(R~i.re{%-sG* rFqcgbW9{,k%Zϥ8Q睑Q;\KX.KZ%״ܖ%D,@ƌPկ@%Rމv}Q:K(ʋOk=5gK@ A2Z,tjzC_. (^-E^8<N#-~EpR tҺ `=DbH- hG/ |9YW܎2,-u`6f0ƉfĎW#VoWw~#4.~QĂf0|\ Mٷ15\[qYĕu1N90 _`#Pf+we1 {fꀅ耕2o抐H(Uݣ8`OQċP}Hz}nݣY8bP3Zu63JjLxI?'#n~]:}(c,$ i?[  J&: ] gۛHUbd#7l۩0ťں\ݵBO* x]~ ^$gKǸlHˡH vѭGP8 tYA&(&;J7f<Z Łniz1VQ3 +u4oW%$aOrKṗ%c/"PKL<RK0ԉ"ˈj4d&D.lSh l|f33AM 8ųmzV~ bF \[TԞ4E PǑjJ@g}[+”%pf۰3L`@ٕ /+e@~$;^?MXaywY}H@xN 14Ɣd >%Ǯ9?8Fu< G n!GEcTmf:9ѾQ8|ןhFbOjx--`4yw{\ͼ3i8nEM@!PVndʌhJT)M{ J$Vdc. Rx=MqZ 0՗Gґ?`K%^$p@?4*2Q=H|xЃc7N6oqm!]\̮H>#i_z(F[/$);D a a=dl]%~dcBِ o9$5U] ̎ h髫rߤ~_Rw찺~y&4M@)wmlt%ݻv"=$wq%J\)m$ntz,y^I@P]wC #o#_2ݏ/D[<{;_1ڴJ~r?}A)A&JDэ>ePYI*a0? z5wv%4$IfuN7.]bȎ.iΎ^'vz`\&L̷A"F"o۹vϸ 9{txv#[;vL+#"+?t9ht]oNׅ\_S%ʿVl%הڟѧrЗr|^p!:]*7B HKA 6,,W0,a%Ikf$+ƒ cVzBRn:Mu"1'{R"YEv``= H|S^EH{`PNnaF=kHeIojHL2z~-fׂ[ܧtچWƝ&n]]!Yp2%aW LvTd&.)زƹ-)nzr̋+`" NdqX.s` &I օcZV Cj'Iv] {1$1&r81I$zs%.tx<պ`z)7.0N~¸889|~Ǎq\xgc.^թ)>6>Ā~=@(/ ̍W)KIENb',\wS#^rD7bZC-&:Yh6ͬt5Q]I*T:viG3q- ՋH{w!M|meU-I<| ၥV4yDߩȖRW%:Sm$R<\Zd볘o|B6QCԾL~\u$iHZarLGojĴk̢ H3j0|/#'E0)qTDHK S$5Q!5@ȡNa^Bh{6\.8O-{]hK:7 mr)U4oBӎ3n򃍡w!禞G;=6*Ig==ujl/h; ,z z1wp fN i..RlvNi:7թ8mƔb=WMeạS+A/FWU W euW]z6LQ '%y)8 ݆(x3"ދZ-Lu z5..G>n[^(>L)sc>=g 9?&unᏳ0qN&SOp~[<^9,PȘ}-SqWb SḴͼnY_'T,aM]F"Y8iVOt. ;_6PSwQ.>$Hwqat3X~m }Nd`q9x拥s=BX~"HK4(l0VW~sw:FԂe剎m 8aOW?^V]2ǿL Lf)-<|ꭱ{=9/N,qcogDR eLmNz.U@O^aM^ >z jԆr{Wvl6ПM+G4 C?0,&uLz'f$aE9<= M㱊:I;2,姖XX gN8gl么Yd0^0"kWn 3l=ZHqɏç1w#\ڴ-JG]A'5oQ`y˲ҋLg"'rkf8ŪsvY @| ?mEQAGN \]dɅw'v6xgnEFJs\JL!Ѭ̞2Sd 3utj;#tA_ ru+21+#;4VlPS.BPkMݖ#S+JݸH{tdiyO+}imK V^SqZj3_t/KVpQīOj|:.>i=B'O[;eBэ7@,rҵJ$JD s2Jt_i$1 Qy˘Qr&k9oYD}YgTTߪUprvvճd7r B+8V{dFrK:(9k+jDM9fbKC\2A5z iqd bJLcK#w*PIRIF ˊ2el\Ab|?plKßSkV.ʎ2_ .jΪ 䛏Oe ˆw/7YfV2i+^V9{!FKbKi6 *1P#l}u031\V"ڣoM~\EG$4nwyQeWޡm!tاM94Yѐ)ֻqy=.SP wۯݒtCԔes(\2J|Eм@ lg>.ݻ)ྫ1jg0Uyu|S@NQbsڦ M`z $B>Iʨ_v<JgY4j931*ca_M PH-)綾,4_W $%ϤGFP ",cHIf%"&\d۫bVM}*5/E;'w/"(GSUqR̄tq}͞C弞ʎ+s(aicP3L{8 nN/ k3Ȥˑ?#bMM//z&z*#M3,E٤6Mʖَ2_V[ft׳OkBNo}/ oTQj} +hl2tq8F:ZP/RPk{0نG٠[z10NAFg 6;DyxSŜf`Nгڰ!B/#w&IFOBrq7^p8t)n A8B"w|}Tٖ)#[#z (l.rEw=m8X*6ڹx(q,B0d(yug5wOpq{V:¦:@*;Jibi~PJaӖ;4_60HA* nA[ 1lI:"V1IRD/* /auI#eآuM %%0YeԖQ>\;D 'm67"}΁~`:NY:. 4?=8n"U/ɣք.6y<]y+D*?Ńf=#_QF@c/~}«#YhD9(&S_EbT]lŞ=_ɺPHӿctt~m-8#Y+Ý IGq&ߡȄhѬRln|x*G0VI2H57!An/l_ծjE:?JF`\#>.cͪ< x9vp#V HJ6ߜ wAm|#rO֬חh}s:3ԒE#a0W(=I{UŠr13ܦ1H^4ŖXc΍p@[rӭ!j@oH~,A@D'lρ*XN-veQ0΍QX4lC<ƎiEQ$3BleQ_SLӰ,*DR?XuyD z-h.ch!XȣF^?Sasf?t{WxM@#9ܰM,62zB*yj:n6pNsrhܰQ5rH#<n6]Ok3o$sS $5)wyePKե >7̳Lk9*3vj'2у74#jEDo ߘS6_ ]խ?#/ӎ[ΨAo5w$*|M5k:R+']8޸#^݂\ u M70RW .3WwN+Smyy0Xer]?բ޺gA\ k+jLBll$M>5U|2/ U%M(6*V(ۛ5ͫ *k3؎dN:Yh"j]'Kk@т.>.nΞE$.ahUd%ܪ#_34o踨YSب Z͐0>(;0m!)1:D2 v<<*I rSlC45ʃ6 l@(b[ڗa)!A~TU: YN7}紸qZ#bxЮ DZ>1ى0̿#_v`l!2;!-P.1`S! i! ?p!Zsǿm@,q$~1=`=+'r9Q+3կ)+{fTk9haޖK%zV%񻙾Gyü[BcS;hب4*(}3:x(l~nx#ۖYW^ \rσo,iz?4V#+6t;V7Z=R,^W:"ɂHȪJsxɫo;l#aLQP | %- Nc$)3r=&}}1^US ZKR^ @E%s0!(xy&!9d_UCa]a+䳒D{7nIM f@G_Z_)6dyAQV.'&D-MWR穄}DY{Tj%vȻ}b ұn*4~lmT(ya5Fq׹&4X7q7FTJNvYou -U7IH [ųV  \zro&[hM[_כV4׸5U'F^tު zxlj7}e Gk08ks!Sh9}ArVՐxci[gҋd&kdc yK8NsAFth5ݞ2 XR" D̩'<pmWvI^ ]$&ҏ™5 r ]$GQlbvFps!WLI QÄ5!R-`Mv,ÄkWYuϲ^`_+g|G!b|c3Hdhnq"6S!Fۄnt2TsEde|ulSTwz,O5D:&T4&1u l>_$TO|~=Vg=IFpDosMaLRNoe:~nH^֟Z.@Sw翸q#7;Q2g }RL}Zf~`t}wF{(16ubO4 |04' W p5Pmqُ#3<)W,vD$RUXuFu i{(W.sP ˕6:‰kԌِLǠGWXR˚@*GP&>p/劔`._'sw噶qs;q3P&1Q4hL-%ձheP '-4͂&"3ShXZlb}"kvT ZρXoN(t[Ll%9)I@yq(AQ?h*jGlmBq $0:S6s>UlEu 4kʚdfJ?p\?:dmO-unR󱶃k@sݧU BFֱ-pPnDH]LVaPxʼ9F7Igr;Y*Hv?L/~.ܤ™Wp(Q,%<mPc,HEOREH6a1 kV 8ߗ/ZD2(N?Ll-`=-xB.?)7/CJE9PKCkCeƤGt>1ZK#m Q2<V64nsHO8K  _@t @` H?fEjP&fx4 NE–.XC9N&5C2>㌑@VYzьO[U"5$3!tl9AXr x.Xq8~frfYE) IkN`)/w(B+[tFu~Ex(XMuwyNP z؎g~f-LCXh;0'(3%W[%i.mw`o\i(D4~ ^oʺzVȄYFh^Մyް&(KLzyrPA8d՛ Ϙ0 b$,F?+qF_ȧH7Vd|Tr1q0`9@<:= ŀ*GO$(h|d𭪠;gmJo6GԳnSIdfEJ[V՚}*bڇ{s!q.߯$Q+Vw;AWj;WpUQmm8wmax뒬 ɢ8fRH3Va .ؚnC!yYh$..5k#۩6gKl`٬y=&Lf +}7eF"zu IZy]1KfnAcoԿb|ih8ȃ/N"p;a\r,Q=8.S Ӊ7Y583&,"RHzri޽kU$)C`Х׼:;6K.;%xJ?kX[X s4.;QacfWeZՃ@, +/ca *~FC-TCUf0]01Th{y I?1 uDѠX5lkF([or<*c tSH@Q@tR;AiUv:}Œ֚My{*E(DZ/{ Oly?oQ%A_N2ObAsi'KG3'Yͤ3Kww9ݳ=-=IrK796M0UUy,2?)-!9'er_> wSҺ $Kapԁ2Eq65V(b;'ewixM~A_J;tLuiF90N,SY(nڹ8 >ʩ8jψS'Yi8<7u,Fꫮ--k\wf}UZ˂@?7D*>VE;%ܭeEZ n<_Hw=/WHh9weA͵'ꖏC--:XƐyЯUv<*ߒ`+Mˍ[@"3#\xJ:LJ$+{J=,8gSK˹ld[5eHeC}(vJ~nDZ(e*l^=o9P!^}08pG:W].&[Zԙ=|&}8C{]}),v5+c@\vc` y.KnO[iMK_4¬pfe)GYUT!h~eU g74KU[U4u{~%rϘ4SrAE$k<ڸFgcOBg0\Ѝ;F g5FV)s6KBBwBhKV!F j [@Lpg(Ђ2M| ?;9^*gںxbFrN ȵxeGDGCPtJ8_|o^P;*fa{`$fPWz w]}qv,f1Ag\R )ڋe`?b"𯺵kr=^/3q FpGO $VԛR9S?i {y%Ϩ%fwL>]Z|T/_(>*@?$!C\SF t`Jm@HkS:B|5=5թtnPw]6dkF-?otp@dB'Z;UփgZ38}6WS}hMU Ж߮CIG (Vys{Ԥ!U'#HX 0 .{+i}:1dQqbfX:%b%`hQTLs2!nyxC+!_ˮ ίYR9taXhп-QJ@kBmkӇYkڵe@;)(TTf@*#ĉ;vOt|P)2dg 4P̕7ASڬEYO'.5[Aόł(wCe9#wD8Jr} ?p{:逨ZMʷbx8^ o աA_kM*FxƌUN^O8 2>|vx}V6u9)iJŠЇ-6e=&1`V5Ib0t3g<ML#>yl} 3 ɪUJݪ.B{/cR UbP RmaÙKmt9r7aHE] <[8vR7H)a0S=GFj[F>[IvsEDLdh8>_!_>2[0Llx&t@nڍR߬9B\_myM\?A肆+oT w?N(wD}ej Jfm6`]Kji[#|Boi\錄tbD):BǪ?dcE[KTsu\8h `Q_ OdlɲAu'{TrޓM1bn) (hEt9=1N)]P*NY>5@DoF0X5u_$͓U(e)Nt9**Ƌ"oSA6?K!i2$$lu.eT ]"'m%]61;QL6 :Tņ0K6XLPeiqw譹_٭HaG*y܈I2?KgƞrMͫAz[ᲪnA2rqT%~@/u*˖y?R=\\Y] SŷN|!ѺEʘ͇z?Z v`&\FbFvI"]2r^a]]Zc59UTme}< 6F$)ΔEçl&NzԞTsͰ<yvyQQt|Bf>0Jl$mƝAү-gcHeg{"9?@N Yt>dRE_j5J3{FͽXJLܮF*AC}K ͯ}X|47`v6Q h\p{M0a"/?C FIg0;Yyf.jDA!J?֮OkԂ:.XYYI~_zs|jSgiLv iUHȖ&p:dG@O*o-rh 8tLvnXI匹H;7'8QA{5t! `$r ,Vo-^qp;_'Cmy^ 'W54Ül}t3&(rZ.YjHi8~fwc8I6b Ar'I+ܫ[G>GlׄC+t=#x۸G3V} &(~TG^ЃLUcn]B9=4h| }텽M-.Kݦ5kdbu'N{d_m[ O*aU%f\aJQiM+\O%ұ"_9((^ a'Owj6=FWʖ$['e1?z#TNZq(NEf|ܖ̧"Xժ3~ۏFdiquZ}ńZmWN@@n$}Æ:JHO;=`lJ a/vUy&ZCoӿ `#[6:Կ0!^A; V~;{tRbh]r{D=lggpɤ2Ŕ%6ܖ=4Þ-b* 4î>cHd9p)Ƙ'݂9L]58߻Jl:-<6u=D` {~:2&jƙYb:{Ҷp Pfd=E)- & 0Ļ/X\2PMjGSj#- 'h{ 1mXmak@uUI%Ťid-c4OYPI.;da ìd@UCQ-@=cm\׈e[ Cy뽣)N 7KɓfhwXuu˺*JVQC#zLͰ rBFUuam]l t|&1u^Y8F ¬z=wASn3DK FM8E $+8y. U s:fF|cqQ][Fu@&L3y\WtFiB$.i4[$?o]vڞw&`~Ti]#P_OŠ|CSqC TRV4h?XE]PN|G+W{^"_?pvi1!eL%y~Oh.X˝ߵC€T (}'V ti`%! ީ:jIY.לTO H1pA7*y9hV5Ru =ߩ@!b,qn%o qJ#.ny?!_q!2F-7& ^ Tw¹uFh[mf.U;pt ~w@vi  4$Vwq͏PXiWn5.j;FUW/D A\1V9-4pZ[OףL }al_FT7Y<v#82ssWJ SՠV,HouNvb3)q]*5M<y-q49GɋNZ!q8w zYK t(O0CND<%*x(>PMuʊnx܅p1 {8~#>5qBZwwbsHsng˴;\1I(C&5"˩5 LXos90yGҜضSy)]62Ѡ7.i3q'҈#GjG^B&U&/ w3:]{fqG(#$l's!xy$cr/@>W/U+;l&{n27qJmIHs?λ\H\P$-ۮDN}mr/Txq\_0.TwfG/iĐ:)+ ,%uTci _92T5;]PFy yS)>twkaB9WDpV9[ȞUg;*LlFWN!EpC^K""D 7y}dOZQ &[*5p,AL[0 (\RVC͵4X.6y B iIsʤ "o͉2!/Cqt8!e(0|m9%bQWTn!A:ZT-oLw˷@wpU7g3c 9K ~/w`X8PLOX0fʙNe^1E'gPŁ=7;hw'D_[] F{Z"6m sGٌ2s7u?BՑ@ūEګ*G8(,18]i)h<¤>mSLǠ4-E 9a'@X|U¿ߚ%`de0z9u˶?@C5^DWaգR5ڊYvۂҦ jY}%>:Q RJ>4)<4GJ}n85/ HTBY5_[Q`<.t)xL3U58doMx5!nja4(lcb򬷻ӫAEjߡĔBM <(Fa+Mf2bKО&՗!A%R'Z+Blysg{Y529HIץJA1&Xr<Ŏ/r )嚺4uQ%Vj~Lcd([Z=RyærVO}}[DI++zQHvnf&L E:>~շE<e'!&8ϳ59'/1*c#mIS?×lC(6ZYkZX{8-o|~DU򛘽vVIcLA=L}v`NTe=YYҨX~ƥyk_ V\>.xۨhA=preW}Lzs)}Wǰ0qwMLv BJ1Ήr// rm2-!ֲEmg2L]Mj2$}HI*ɹVM`^ă(=?T;@m?U]yCfM \m$Bjf,DTyk]\F 冘Lx0Q&JnOy9'5BV毴9ꅸ,":(|9:Q#hK_FuLΪNZD{rCͯ-cy;ɺ+`GC>Sm"|:/#;f!p^?f ,&R_}T! رzڶ#m[CA,\"Rk —M%fCeNi}Y"rEtUc׳Olڶ#<8~AY~,S嬗 |]AS) ̷bSS?ڤeiC!s@|OGw3r/¡0kмa%n] t&)ᙜ?/iMD+96C WB%}֌TE>U=AV]nΤ毝 F͊"vdz\K\Ô~SX}Zܾ sawvV% ɏw:1fv.\$>2nQ jGê+s1>-0;7yRbqӢC1 WU)2GY؇gl^ x ֬W.ҸВgNP>"Ƀt6V܀x%ni)S72LGM4Vl$^Y{H۔8yu*Hv¶m2Ν b"/ /bFCgt Awb/>[G2ΛfC#Pmto;ӷ?]o/~20IhV8q-[D]@UKP c, Z@N8& |,"f+jYֿU€/ZVn"5ErcWZ18ȭn2 ~ŕẏ{i ,=0htZ'*f} m&ng|`8f MCo؜X+:[㣓5UƙM`vRR YXh$)w6.j>9q*\o_|t41R:^L# 5C 6} m6s:l3]O@k3T P:5#,o-^S$=7Z>Z#ڎ胿-,TQ>yP_gS!u5С&`oڻRbƕ k=L*7ΪHb^@RuUڋݗ,2vH0^Wx:w/ " d>GAX=(Y|GxbMi[@p^*נ X&"S6ng2z^|?(DH-h?%tdwnBm_>s/"&n#ÀѪ"TҖZ5B?]4vl킈PB;Ϫk[yyr<*HجMrŲ'cBj8䔺T.[L`mwH& ;_42mAkZx ndž(Gʃ0#!87 w,z"V#5s:@M5Òm+J!ٝr7p_{_Q1 (eH6LEp~-B_)Z^v&{2S!Cϭ sU5E= ߉u !3Jt#t"O4bȋ&^yr[Y룰9yoc%>CkpxZ:-;٥Q@1T_gӷ0 ΅+fQ-۞7ad4zF*ޏ|]ZYn1;>ChEPMEԜ|LzuGsD0x+Ďt@טU:7Efbli"ͬ"MmlUr22s jvQXaR6ҙ ҌG7 9&G֖5HKW7;g648@G*8fgE029m:(+tm;y=rCXo޾'x&PK9Qj<ᓨu0>пz&fjtH,% (sil|I1?b!qR G\^D/&[Vw:5Q|I-ո9bqBQqvxt!#Au4>y!>V](-q}?joJ{Si%k8ﶧca^7sڨݭCgV7!)N%bÛ Y4v%Iy #dK8av]b1ȦT%-qly%Ymq+z^A*DN,΁\klҏ ) zoiP䲗XRaU[}u%a QVg򕏵ea9emt[ܸxv"M}ju0lSd6o\7Se9 {`W[B^\vxqz0UORXÂw Bm+^{Y_jJS W&3"/&pʈkjn_d=utt~癩0q\#g4V?Qrp];}'Pŗy;3Dj-6뻉E fD#HҧMoY\JGؑlИe.p\Q'"vkN7MhNMY SB._st["hf^.'/`DV{~ ^%#Vnvr҂ylx.D]qASD4ZK;D̈z*`[ğ=MiGrXAČ Gb6hh˄} B^-dJ,4Wwe#nuj.y$(!fu3 p(=P]鼥fvʱ2CC eG;ZB^8I$^xt[&P9\ԃO"ca!p%5'2?Ro&YæDQ\(qZ$,qÓ,h -j`kqS-Q(X7rxfQURP\;ΧaA+a@;@% ͂HuS/ {ϐ,;Kթb xѴnE!=Pn!Yim +KPAZ)k'J\ۘ ฆmx[0-: Ety@]bL&Γlh Vt]fnәKdtpgT. \~QhvdQ\|nq(9g ")nk4LJT5V5KT$ h)^'V*>% ݚO[;0{_)Cg|dtDbr9Rna4z!iv'1s)MӁ]nGLQUL#񵄭<9k3%췼d z+ e|h>,^|Or|>safYwT`k8tP# KVwvr }7%Dr!-y rA?>!iz8"zAƅgzi`fܶ+^^$=3٧ނm*7[rT;j2l:;PUcQUBEv`l=fE).>}~49[v4qΫNv$T CW/|l@J}{[//Cw,TGai~7MiT82߿@B|teAeVob9z $H+Mt͓/K:ˤ$Mv=7h$J`i {=PqPtM3!iHFú,M6Un lHj^;"hD=qpa4&r9i/ S&j? uKvЈk>(!Fg+J^j5jrWl s:32 QN^mW{jnDzUı'P\qEbHoJy5J]E ɧUJ 1nTơEY`yz ئpO}2 uڣ `\c*9fD9܉MT"gORd9T-F+J}y- ˮ*fj5bt޲ܴ9(*D;}E6B v^_oRvh^ݮ|졵 }u5Θ6-.AncYQ2}ttsI+~ur?\Mko!8*:0b)QҧT(@( 8Qk±^43H9 &'>V̨vO  ]]415JY&} %q-?n:61]unZ^ѽT;&8jú8/|, ,ьG;T-n!'fet }&{OEV-jmb~T n1>-*o+.`?!"bE9blaEXan!?]%6tg/s[QWX6;t! nZL $/4T3Eecmעx8CNz9]@s#l#26f:QC{TtV# F|St] 5 ywRON^>U"d)jOK}>U-s2f)e`2)xZ`$>v";KHDX( ϦwN[ i4t݁Hn&'ToJO:U>[8mr  S8KA q)j"]J.bôOmӆdI3O9Tc9}RUE_]|WGȾf7R_iz'Þn[6$$Zh6~~l7uaqROTynpj&5@[j=(p qQvmUvK{>1J=?ԍjee WO'`r4^흕xļIWM5J>RY;-Tp gt"&b秽Ҵy:.=?;N"1r & kPڹR+š7%/ [VKb_{gha"ŏmaG숛&D.+7lTϲs3QCK跼OCd1ӤF\$)&,/3879pܫR9̓56n}8oF  S8f f 01N B[&_G?iq'u!={Y=ݾFe !ՋIl&ul+L6Nw9M|WipK0EɠJP_3惶*zwbjT*/R'YxomX+|~XFvI MgijOwgTjRtKjl5xaCS2ckvDtT /yKbQ4j@뽼S/mLt Sx0z`F5A˪0iv_\뾎ƈX}<K'nvFĥ ?hJcCqPVPs.GzI2\(%f£ Ȼo ,-R Q@Y w&7^y&FK#wF]w =mB$_emөP/炉BY6R3yBBll$5wdOU)bܴ|/Uܯ#ȨWCϖ!Hq@5I4xFa,9ud8S Yұ &۬F2X\+jY! "!n,@"7(K4|9d#-ղRBZl6Cq݈H${wE vʠ"e+ t0w."s D/;1JNjqq;Ŭ05qH}`Ǣ,M"e/E00?:-E]s؁7.vFD}1Lz%y4!ˏnk}ƈCLy戧\LS&ʪRo^+&tXAmIm ^V>5/l.vKuQX5BXHyƋ ܠtz !jo{+=E"306[uS/NL^D Ksh˵=ϟW7%k_r3#s (ZC  WPež cURezĺBp>}{~X$)@|X,iJ(poߡtލD6fgur;] ̾ j-ؒ$ȣ4 I=]Z7K?N߆_E{^+ W]M5;sYxLKY6qe`>|piIeF0Z! Բekw_ `Z͍%_ESb:KE6aT .=0j>t(==9eNHk Ƈvy,{NQvL ゾA K(0!'4י ߑJVABa}='x_2}/|li8!P/FKfz]]LY`b(.$d*Β=#ᔞ.*\|vsA'ϑQ0(?Áz/#]53F伽/$>w<j7OcG@f2acTbM^T߄<&m?a_eweJPf`{£ݕtd6F'U.IaKnӑ)w ҴXg %>Y$1EZΞڕߙ(̮XѯjE3MH\-w^[P܋_Q6vy4NB O`dmf3ؠyMx$obq캈dtԡ2WjHaM=.Tm ą1/܉ —g8> /wrQ40JAs  RD>Mh~M) !cJ{pvuutSz r 1E{DL(W/19_Fsm  a> g4;ǽM8Z3,^Bs*},v ĢvM1hozx[WdXkw6t Õg6rfV@M6WT QIH8 "T)89jp\?QWGLja9j#G"OYD_a&;د n 1Wb""u%֔Ǿ+3go7 뷬; R[> Ŏ͑Ș6ɦFl8 ɲx>`y^r+Wd<I#dth8h<0hěYճn|z"_9M#viڬc2#Ù$iz?f̝kv&@MjX M;- UE(odƒUv/ >`An%'Fjt\$H%Ɣ(vQNSD=ˌDxb>{36N? yҤحMWASZƕ("|4e")--inFp{DO{o=*9HG/<=sA6 vq*Zm׎Ȟ?;z+ٴIpُ=Ҋoq450ܬ+tEn8z'Q?c޼EkdxgkoA[5W|.*#`|kÑEM4My8gosinC^=ٺp|zgG8!ո| \`()䠩fQV&cE޼eu*kPzM;ܕR J$cW/IȎA"wOsKN=wgOñH{|߼%6uS`CPyg1%cemR6嗞JG&% xcm#g0ͦi&  /&I䬗eRmYU@h+2|{ƀՄ30jȦZ3h{Y5`3?Hx&ψ08Rs<ǻ2Je(p`,zY+m_֘YaØ(L+ntgIM Y,OKhcᄙS.$-bh-R1%DZؿbg-^"yaeWQX s{ nTDղ唞@WcIc`]Y\AtF-;ԄB4z-t +ǐS[aPoVJE,u "JX"ᗅ(:Od:hXaw`%ՍD#I"h J -w clD?Qlfd+S4C+z7xY5Q-:PQ?tqU9# eeF%sj5O_&3)E&Prj>aqa<(8%k6 66B(=E9ޢ>l;%s{Do)pR$LQ ms؉(NVR @ =Ƚ{xS90& Ii[xH@ nп};lF/92E9iD[xtu}+[Iޠ#IQ!F~Ye^#F;Pp]wqT3Ư"RS[O+ vL+B;քmsz>5/x:ZMP)U.,$Lg8=64*6[0lU=Drgj:8XnM6Wb#BV*,X \3Xٲl=Yк$" /4_,G&olwݜ?hsկD`U&o Rf:vY\+∾ M/,(K5%7d+v͸yKhׅ^w%(xI%\㗲1K X wct/sg(:q}&FnoV"9;4/ myOφIYbOE虬4}>Դ3\k*R`soHB!6(uK,&VѵZW Eb$ x\iG~o=w\L.ķDŽUkab[~Eڝ0!mZ{LI2U}"m_>bvH';Raܮim24R'Q & fL /t`ILo{LWhT}vǷpxhQ!~HزV_'&;eXd.iKO^jDe#wqX󻸉:rJ.gNM"VQz3'jmSśU8]\nVbSArl 8ra) 7©F(Z}1c~yٜP#F8f, tV!&hVR-"DmU8`#RY9YRgr~%ҫ>x1jJخhɿ)ȏ{/q:mr3Jbi!\5 ~t4],ϥPC]R5+|:OBA-mGe]nE`#\$ۚͱ{ak)ó_EIԌ>#&bA?vo 4h D~Wzѯ.4,L5]i7z@Og*qɑ Z&KZJs w,W.}qYMF0'tdFP AG_*?5NQ*2yD@eo̎ znn1謜E[5pѼIg'=Y l}_hZ~&kBQmbC@?koݚ\B“ Y'r~œT#ڡLlr*5@1.cWlObZقºU#(RνBV[]?LQߜ3F ځ $ EW`޳ES"݊.U#;bs# [ ?Bǐ>@:AHۯ_aysFZ`rqE%am o f2hTd̓B[c7/7Hn= 6 rdU,h@MJu1̩z4WqzPW$Iw tS-H_|s -@,'9, jޤRZ mܾ~қ>87;t"ҷ\KEq'8I>H3oua* zg3E?o6x]ȼ[Ks3,i{'[^%nPё*ڠQ%Δ3eh^ʖ)w-rjwYkh˝E }h%Lx~%\+wG9x|yr[:ϲ`^ pÂ"Af2N4e NufՁWJکQ)APK 5Dg1 ΋"L ~"ĕw71 &5)Re8j=@ !&nEi, D6Mow) ~ྫ!~B7,<]_Z--ߢ#Pij]&p~za gzNpOEdb`!O.22)EF w8J!pN]}xt<=XJS|)"r4Kw״AYasv^4:>ՒU"E}b\xCƮ؆AeXhN@svO&FΓ"Q#Ҳde1hZWl +۷jqa}4IR0BcgQ屁 -+Ι'$v\}.7D Ka/6~Dg8]ALH:|R ,A-"~"V %]N K.{wOw3&(lm \9)*V\^.O!@q%̍˒א7:xX0J3E| s`݉k{{X~0~4 .>P|J,/x9ݮ{;~!&4 #)ۘs4gQSxh^2Z9e\WK7,]тwdKa y+1Ӛep& Qy fCa (ZnL$ְ<֫ߒ48bZWü\AO*'a\]5l߃~z`JnTr*{;(8> C_ 8\ .(~ecp|?Pn(ַ!ō-+?cvR!_ 6MUA)Kq:\uM|rm(F-3= $$?;uӌp+40\@4|pӓ9sGO*6ZQ~Igaة~.2l,~"!s푽Mͣ-qu{ob;:s&mWROkr bVkޣf]L q` VCzow ^$J_5Bok70 JCMy1ȲE SrbXP\fݮthF%IrƟ #& &Qao}O/ױKksU+# +_ ڽ ' E[ @_{z`RVxZhM%CRsj 1.WQOTv84YjE/î$6wv %P2.π=OM Ev"j@N߃8 wU3-nu6xtC 9nNɬ}#ҫcD1C-L+߄B=0 HXj[.̷CXF=,Pei@* I4Cm H Lք rfcYeNF.TO"7^>z_{gmBO,'&vϝ_0*CSR#W]ZE-4bZ`)g$e־ɷOX~sl7R*g[ӝȀZx1,p7_dzwYs?>~h_"nxOEW ϣrX:6ؤlm{E$ C830컯Β׸@T[ "D_dɫߌh0xhT#}AոRfXLFz^O]X *<ۏA,RޔUS'bHPGHW"v"s!*9;[[;:ń Ml-1}N-x/ \֓{I{e į+HikBFiSF sB7`&Fв2&{3^ʴK'ʗhзuwvL设Ju%-)烩:=IPwZIdad^BD-u1x>`6^'B` 1+^3ץ+4FP/7 3唤{`&f% ( &8eCu~ b/3 t;RA] W7r$i>\\q W9ٲ3s)K'fnA :eRzZ)pTjwC')"*e@1is.;ܧv f̻ }]yoBv{>ɖqsoHV+%~ >傎\)võյjyZaWՉC.3 ˦=g .\񃄬W.+d\)p\GJѣS2$Z:aXߥX X1* ʞl6{LB>ҍ ;AHzQ_n-wNj_۳pI{Wc"#'x3sx \F dhXL#Q#qa:p!`O+WN홆 "8@Q`c> *xU[m7*Cڴ:eꝧJۄ(`n-8Wyo75hMdm_8or.EزRYRyu褎4O\IE3YI%V7"X{dQA6 L+KlΚHYҫ'[apzZJI㺝‘)-fxm{U:;N i撰9BH4˲nU FZ t[u\XIk.iN`Ery 1gxxS/7(zȄdR`#WLNRDYi1l54⊠*Jveuyhl|U(eaYz^1ñIIiG{sݖY*u/GyF rҴxڸU̷8w*SweecG΂&G1$EWq%U5w>nf Q6>a>IP?=“P.ÁD_QY3q{A6Mٯ\*W tؽI4 b=_ z͛#\jv&2b/#oA ba/~5aj:4G k?>26Lv'(C? &c ˉ2 tH1% '" };"(pMʗ.ʬɷ{2Bl¬>f57woW\ey迆aP@ ᠛' =}f 4w2" WI]tl8r9\uvD"79Ş-Ijd+U*M{b@tGÐǪR.%4auWP|!*nL[B~i(9uReK5H]h mEpg(z`W7tT~wq}GUeLN%*l ̢_$$0e}`[Ǹ_n~Lt9戁R8h?{)RY+ϴRrB];iEY(/:eMI~M22v4~X]Z"F;+B֩'$$4F-נi`@K_"}BlPː9a$'5WjBad;6;7s!Ά2dT_oZnQ~ioGYIY!bS E 4V'rWb(a  @f/4Wo'J w-Qb?IaH/dM2?Ly[W9_Ü8!p!=o2D.1y*_NvqOO)$۽MUZ.oLnv6EK&po-Hmc1?PS.󮳏ZIEh:BVC"~ڛءkƐ_۩h.H]S "Tg4HVZ!ra.qS3_3 . Xw"ѣ_' QD%5^}*Hy:!-qD><dz+MSuGYSX$%K^5,IW:"y$'6x4"ˈ1P^-,hE(KQsQ2P-DGmj]ד9Y\wROѾJb]l'~^Y~_affvN9 ̊_|Д kCw"v䦟 jy1tXה⋫m2zlMQf S$Lqb6h.l@soHcgee';F.#қ,Q2C']^xa@ύͳoԜżX!4l;[=Lj l ݽ h]ui.*'q$6za2 FRcf|$k򗟓}hMq %Yy"oxQ@FIDLZ^ha$B0?iUr pa3}-: ?03$8b&6!zL 00F{B$ZT45噇$"5[mjw>tS.HT3PDMAml%Z›5Q"v߂,#k_KuWq3bCJ:]{MR?S}dS9;ׇ(66U\o2Ȍ9&M ѳ]dTZ6˯d߯":1Rw4[9 /:h 欀^ĻtZhM;d0C= L׃eןxK.ۊf 5B $N`PЎ@8=T1lkn0ɍLZ{כ84JۄpiRdA8ԈPjx5A^QjA[թ^4"Ϊҙ%,OaTeV.WYhdiهM}ƶe3U.uRsxep:|0(0tDn͆잰#RV2巙]LJIpMIWj3P-+(5J}l ?Һ3 1Y#a&9JUyl -K?8kvA*Z  q  $Dr AF3z&SV1?F<96j~?̇~EZfq"GYMv@'E NG[^5i;22e0y떑6B(k~=/LoA-(fj([..2wUNhI܊;̒~u7WyV0xd導sֶ-ٜkG̑t9R=!"?Y-zhRr*1? GE9Fu؇9LKͺ |Byr~ݫDjzģle4qQk!{ǵPұ&&&L7.FN ob̫2= >qrElDsQ-mwX`)3Ն? AJۅ44l6/Ϋ˜dPcLj`V-P2!1[gI*σy21c sj:E?Uq(Vi*W~OH@U~ ld3xm(QKY_GNk1ώae!Oy/`Po_(o`W<"svV;8h"jRsvN̢gxJusB\%xz+ ozCBU>34(Zե!"7AmN0~V&51a!֒,253Bh$3ʣ?a**齄-^`$;ݢtN}vӔ]#сa3׳Iq4( Z:AܑLd BV hڡѐ $ gX_tH{ySRi6gbN,A{7VS1I;̻U`O*ܜG(m><_M S:(*EhQ < @ʧx|/ZbM14)կo ;|ziF1%#.X <|[v7 OP2NȀcF_N &D=,]^r $4:&|u:| H_7|W 6+6ܽg4Z^zK[T *LR1+#+Kc-Kϓ-ZK*b,ۑgל YCӡ_g\dBFaOvTY2,Ǎl* >ta C}:Dt3UGJzq̄s>6xGj?Ŏj,jqx_3p. /s8Ѩ58waWB#B= _ŧ5A!{Ed9'l6K#=Hmybݑ4Z':mS;=6h9ݮ4>{܇9F\(q1H]j|]19N'OT>^Ϧ''7Cb ޙvɠ^}MiDj5Z`liJ'сD3[Kӏ:U#Z۔9qc5B˽kjTJz |t?l_ Q/:("Qn>XKIB /-S0yS|8og}syTB?k8^uNj/{*nE)Lj ^)!yw_Z/3h l' (1c_ۛ;> &<ᇔ"yc˾"T9Y0Ơa4 \Ҧ7}]QG),+zhﹺ;2Oؾ1qnRɭ&f}H9LwB&X3Xu*#q4&J_zxΣx)!IB%\sn:7IdSjEB~Q,}V6^yyDQN+JܤF-MXN=T~L=\ҨFU ~,XL4ৄ- Mi/{. W+Ņ$RB#ѓ9GJ\ dW_ !Hz a _0YJv(W=X&\VRb3ĊC/aD [Ic"20@[ w9 $.Mq]#sCԘHrڭ{f_-/FKvS.JlL0Zpy`Lq5U{+({ǯy 4ϊ?juA>y@oM)րᠵ4M&`3@:˜jI*6s@Y}C*gQ/mz/8U5\#b0| X gub{@=~?,O㰶z}p:^ ei=ʋA!L;Qe׉ԷiD-F-Q}gQ,s&̝v53)!cAE(@vҔ] Pێ8y8QV/!X7E *zӿtV'WފJv)ì B%#5 !V&B]$Y]xT`qn"N2{ۈ4+×~{ W[;t 8 "[5D*tA6.\Y"l_bpMqhh2ȲbYtP-RTnN@lTxD:'cH4,א=  Ԩ֊#(9+=\K‚9$p||fIӵѵh9>(^6q?=ڀKs74Ӎr;6xphG(.N흟r a] ƎT #nEHwAL H7`,֦*k]zj?\O_](y,F|0X8-0kW~!*\` *&;L:6@mIguZGN:K.xW(D>NvٟLK:m`ۖp3k‰*ձ2{sTei؅ztFN>ՅP3R2`2f*啝vLR 2+XaqDAy!FŏyDFbVǠMVP8._إ cC(ҵO䗺 ?5,7!F*GrP"U>^Y_:#LAk/5A n@ ~# w" Vݦd2$/ܟ.%ߖRf.fMSK !jKjL7ai68 =eg^l\N o1y"^pQGiW=fGMe?H2n/j]"x {.8!TDhKDkm%"AKHXLsơ 쓔@mw*pk_S{ق~C |8MXtSIMDnUu?"pHc{V˥R8BqOrqt鹇j f+ݜA3&Ǯ0R$ ۤ%l /9꽏 } m|e:٥ۺU>7裊v~I a>~ꕕ["P2IX¥SG{)w쉞ʕ OUUUjޏQ ;^֤8[qKĊ*{Ip,AAk;n?'&SdF02XΝqDEMn (ԏ-m9KY+-7= l(}.hht1lf ЈPC<(w5:Aq> +v9[.e⶝SxAB>/vsL"iʋt[gL̲lH&}u<ߠfEmيi;_tbdi9@MI5NgD;y=Wj'& Tcul (3r"R[)Uk^`^xk~6fduS,i\ G$1+b j n|5OR HyP6Rϗ}_["WJ6jOb0C ρ1@7;} k[O>:_vmA8<~Unb2:2nz'/ Rӧ܉V_Ԓ ~} ܄ 9Fr O# .0j\$9۲vM\dzJ;+e=8. cIrzv#7GTnJ H*о+ WQ~2\qm,~݇ H9g 2bMumܳΨܔUϜ:Nbj?VǦA4YZll5L\pˬ>A^C92V21ۊBc>qBzDӮ<PINZ7.vI} nӇ& V% kNhhZ`j|/1Z%jQ m^_U=NaU˸{Q|$ae'vr5&yIP;2ƻP}Pm[ U%OEԝ)|VX <+fp:8 :c֞cեp6h.І FFZ@qۘROE7 .&mej{}Sp*_QAt\N3Q:C; 8&_Nnc Vqڬ~ MywWLh6fw=sO1$\ѠU6DҞ_0uAjڬ8$| ntnƺ2bXx:xc[е7^Ycҏ; y]Z)|JD|?؜C! 㛭 UѷwUׇ\(23 f|nFXLfSH!Dmq?HHOH9? "{8GE &1]ϼ13$Fm<.MF}f5-Q($7Ow?w /\ ӆFlt.ۢ,:KD+3ҚC `V0C +nkO&7?:H:=5b-|Xam r'.f%9!-CDp.uebe j\I8Z)lf6E\IF<<Wb2HX:h1پa)6,3}LzJ<=)Xv{DCM0}& tDY,9 Ua ؀aίY :Kdf_(Bzb=r?;[y ܪ=j249}:4<3s{}GJxBnzjH$Iqi_Nt=4x(0{h+]oC҂,\+/D  :> (of`Gǭh2/j|Y`0+t 6sc^8(LE@W\r/ [Rě'&J?uBb[[ޑE+eLZD]`NmTiZYiPm(n ./e(Cy8$AIYWӴ#k 5Kr^MJ ЈcaùxJd݂qq_@2 &QZY>ӊ.gDvS)RFnfX8,F;\q( Vd.oN 3 Zw<~IaZNC!25i1mn =j7M_>[kS0Y7) DG;a_w;DF{$4r_6CCc܀\toOZSyJafNФA$0g61v3u>:ڪW[OZw{DAx o&Yr,kh6zc[2й&ulqDS}98@U@X EM[a@YJ؎jx6Y2pJo-̥(jKbgl/ֹmA_2>@,𮹀jO(LS&GɹUtdk.WN ,3|1~/3+ <4ɝXqBR&ױ@v1/þ d__}dwW48 _çwUc|ޔ`p 4ѦQ2(,@㯘 kfz X b|_;0eV""%m$yrT̬e6!V5mM U,L>`r_󱭃+5q\I:*T$#XFnj 1@!EG yԤyNȐH//{R+?g|_bZ)Qzi{ߧC>RƁ];?YQ)ph62Q.UT$XPe4);y?h膎2Cߔ='3338޷U[r x7\*!Q5:=>:r5hixmc/HoNxAƹ-:[|E$ԖY1b# 9$~ Puc&5K۰*N6Aq:E$[UBp7/xIN1fI0;_<$ݡH;-^hUʴ*Lj׼A0n9؋z0[dD#BղS)XE`_H G6ONAGvn}n7K)HȹDpǾ5ySQ3f׾ {8y+tQlgaqM/$oRD ajK _0!XG179ʬJ2Z/1[OP~ 7l$0Qt\=JXx0 ɦn 6U4w.WnDX/s#y!%bmi 'tI@w)S@ckBU@oY Gtv_ܟYa U#TE=+!bTc/I*"o'ӸgB۷?\͑j;JFUX PlⵏS'zS=`F\z{'5rM͔X|EV6VInpB]s.F(T<@V ':D~p[ `R~)j_8K ])ä57aGېq&&4iWM8aQv#GQn"d5dPfCD^^&SpJyagMHXNEnRfL@ut),`Q2 5 ;NsQi44S?1JޭJc`M~(>T:Nu 0z1UG@G1"oX ǝfN|ւLa)%ͱNIT>znI2onx7UG32?q;hn S\g!s0]m4,̖?;i#HDk[ H/ )2.j?("J"( Z8T$̞Sd#]F<9h($FflP GOdP QM.;$)1&7UCtO^@^w]<\VYڿl>47%W1*C}iJ#h0޶v2VgX#S} 2h h5ॊ=dN직H蘱o`m-{/nvL ,?ncͶg&{zJǫއǬ;t}gXȀ&X8uxG9= 6l  [Y֖h\\/EўXIgM,$vš p$@jh0sz:/z?-oaq]Z|Le˯1\:Q?hvjm5+RÖV.&5ܿ'^HEt(ִ/xf ,wԔV!Ή!kǗpMdCU)&v :ʮ>#.9_&=p_IQ<%VpHk\>C %(_c>5 ?B`ca2H-Y+Q_{`?'e$tC;ͽ!#=4sS R/Cpt}SJE?>r\a|)LXgI632Tx }&zJi@Xqw.otj;e)٦ᓭ~"7ݜJgN !!sReK(A%l|yrgD_o%Acc  `O&Uq Rt$Iio./ w0XӺ eϿjPiuڞD|/n} +VHsjzCYS` bb6~j^ >G"8ǩ%3]vc:E?u^ U<失V60bCDTCcu"1Y>\Z<ca) \42W.CL"yxL}Ir/|1;&CHTOoHbO:!u;5շOfFK_BI)8XlHe@d['+Tߍ2דZZbrPWզNc Pq&kǟAZ<'d5Z ۉѦTSI[Vj߭W˜;y]gjN 2̔vg_jc[T[O rF9'r |KOw?rOLbP ʬZ|Mm_ fjm#>WnM)fp}qg3FΕy= w?/Odg6R~A~IL>DF/h֖4k=yA\>ڥ84$- J*a';w>JGC%z2xF<:>m0L5DjhpѥH 3mbHamůxV`"q}x³q.ګX|LpBSP%:[jPN 6sty7h\>礠nI*T5]\#bP. /0s@Ȩ B ~9ss~ "DݍwAYIP\f۰[f$̳(4#C+%R-apjbh^qșIvvz옛 AHy Q:luU&mah|vՊ,8R0q 6<&(&K_la]w@RP/i5pH-QHmg#sOǵ)̇qP=w꡽ZJjQ51F<݀>*?J5-Y #/cМ宥8O2sFO݃xZ c[K2ܳ ptL-n%5sbP{ք(;@>\FTXl\fMlQQޕ( F>ߣԍ!McB\:G'?30Je[G=MYpWJL@1i͑΍+{iUu#N&3|@$BW(Ob;T*@԰#`w^oJsj@Z abT44+@ru 7Bf% ]Ez;=IYEm]W}I1tg1+è|hCnU8yp;3T(5Qf ]V,|Pt ^?Ƽ%*F>سZGAWfM%t|?`5J^W5Jb-íI)_[KW90l va*+jx)HD}%gshVaªuRR ^+\%=FuˮNSrss'G!а˖yvr05ẄT7LO^4+Qt2{$d}{lӳ =6h&t >n'\/2yq1`Db;pAgoKA Z%)eAZ6yKT H5'kq$xq1@WP|v5hp[@Xn+Y{4/ Fe6C^w[ UKG}|z^`)2rF۾1D(_O:fN~|4&jh]$e*9(]jU.tF[$ M6:G'u^[^lx9o׿ +cdhkQڅxt2q؏$*Va.eP[_a*Yleג[Q_ {>ϲ\9 qG-y!f =:tPC[45̱.9ו Bs8 -=ڷŒ5L\=Tf:,^[X~L8T=*xC6_xd]1;@8ߏ| z:EY_XKp<&TepY1SBru KcչJY8=9fM6du1!%0~W8H s\fT~U&wjDbs F=+#UdL◫IPjY[ aWKU侞9\Կ\TPh5?u++5> 䕨^yat*ZY |yUC&]Љ_\JXI@+`;3_nE,ڤc!9oISe_#ʨ۽CNQ4!wNcO0s  ˀw<)Wm72EFDkJX}p7=xo@:̌ҞjC0jTYħgVJ_IԸަBf2 KUs="I=<&Ai|h)tp#6F7ܶrgܠ,fTZ&7P3,GK tm5?>!'.acKK Ꮹ{b^],Z2rJ_w+b~Fc1?~FQw|:0"H^>̙ci5{̲<+"|TNzB $̪GtyHG|^ F"89^5^{ǿu:鱓;~lO C.\^FXO_VK4&]5=ӵ(v3^Ou|cJd~0%at|~5uj$cZ#Qu:Zhd s_}B|{9XctTüRKq ..rã^KxZ vFb>g[~K- I%k@d|$4YN+:1hZQ:ǘUW0t!y2A'̓-1G^zDc;A:>8LPΫ,֛ S(|*F#ij0apB&YY 8꺪|,}60M 磕 51s\ERj G *3}^6?+~IY=RMb }IfOf)Ų6ۥ%îxRϝ&"X)L.%14L"ޱ}Pqbz<}f|hG IDöHg 6\.D'g<H뢏kkdWl޺VdJH,#r*v*)؊yKdwn):} o2iۻbIۻpjݩ2{-/GjXyOSCظp5Te"08V*M]KA!@A1DL+ ½"JHovpl*#IY4*H1sGxn/xZ<~-,%w&>{)"[vg 3Gz 6-n`f#RLQX #Ѥp4 qI5.^h' VW * ڠ} v6b+ `.xOyaZ4/-*a3;c5]9EC_ feމ{]2{iߖ|Hpo?3חdco'*N x&2U=Qw%auGAv\Y9 vRh[hޗ 8;]\ݿ fWx$`  -nj8f*P/0J/]'@:L#:HORdeFJӁ^+Km5* LWY*[D|'.PR5vxW=j,j-N-hq865˩X5t噲uHDl|WYI, =7fU0^[+c}v[N\Dp]P724S/Fb;+.,Ťxt^ vF@NwN)'gQdm₸:Sc:W=ok0nǢYh+qex+,N{#f\n;u{:eaF͠)6n(PwAnUþx-~}6FUhxw4Dž?j~0:5u`R*V'[SvbEqxCxWw= BbB}Ҥ]+A{tTeB%2a>5F]r?~\h_#mJuv9ԇ|~td^nR Ƴ%C@y-l̏΁#K۸ 5#ms TlBN8s8헃(-Fmu>3еm0X3 T7̘O蝒Э+HHJe%fměۆdžO)56S{{m'^~\@af ʄK,*eqnDg}`5|Lw Ê b^m(0΃6=)MyBszثR ٷPi'$y)rl*sω=. /00O>fbp;=҅d?eW7_ї<Fl_r@v{:l>\r5Y]T)\~v$t+($,h-+ߍ(;ri(:o|휴w.:/ce;טz{AFC-Y\c@0$W4v<X*&De'Y a6A}o̼۞UuO:_;-9E_raPcpx'ԉ$):sP#$mٙB;.U'S5/gwYeϽ9,0gu6s".{GJo(A&Ci *FWLމ̔ۑB^\z[g ėW4tQp*=Us!ZSY)6 tVt]Y8R>Ix֩!O2/hQYzWh%t2mШ`9^[E I4s"4Br,,:;AclW}*V ݃e qМ %Q5$džð2X@6Uٵw v٦P0MɪN5hZͶ?Siul4AXB%3/uنpRmINm\rft].4nӷ#rg[!T ~ϗcJaJK!L&,6]͂{ZW]p`x~2bib6x9nW㕸ZBE`OI=Z,gM')^dE{YLϫ]U2* Y"K%&sH`pEڇ]ɬ<|{Zk/*q4 <^Ǡ1isQwzT97cYcbkTю Ƨ.+tXq_m"0&-]c_x*ćX_/7v;ZFN"Ͱ_ؠP钯t7hsRP EN],c}LC Kѿ/\:~l|HxTbE; 49% !,7)|6ۑ7z+O%h|Xn)#;[jA RE}'!Ljkq͂bmm0~0ϴŶ8SvE-~ܷT ՐLl*+~1Oۥq0&#}Dle}r}A x1h uθ D.RĢiV@2b`8FH4\cJx%# )&1/4]ڵz_<,nKo?F]2.AR858)4YWw |,1*C2@-jxvMF3ZY񋸑wIC69t Ui%^=G<?XĀӎv1Թc6V>u聿B9Bvۭ4 wBx@e[ɸHEv??2K-m*+2ky5\]>Q` ӽږLGW=4$7|O Xi dVtc7jEO-n)e@;] +`x4;7w@yިȺ莭0 WK]3~%Gt^B('OڽgA=tjm& 8.zov@T˒60ݍ$N'XG{0BXOV 2M}.{,)aR+j|oMɝr&d]%$$,}J^;Hֿ9KkX`XܫY}WoIUn^R -5 Y?z3" FLB[ _ S hFuld][bJ;e7fd}qzDŽ~cS ,Y^)dB.q.15!@*!or sS%fy]oo{;bx6֍(B|QX)s˯l!,&;uQ{Pa(Ҹ@mY?\]4[ Z<+otl[n9y!HvHp.Pf Qmߝz3F=鈩6਺9\@;RC3fYD-r&gVRq;J=wXXρ'@&QIUdu|4p֨gԵt"X+BZ$T& /{<yYΤ?֦ߐkzmv~Ot5~/woAewUr [VaIs`gEXY*X,.]ޅ!tco\lvH!9~7\7(lWz3F8Y1f?~u?ez9ufd*N@3GF4x?Jk}X*(9$: rz(}TgoO "=h麤׌6_("nRR=ʟҿ g xœ ]|z~5ΖY n*Z3i|ylgg+Vz'|k+cS6`vă% } S6o#6;Hpȁ,*9" !4~K=v O:h6XRW1LoZjZ1X>P-Ay/)~3ss)0)B6CX E :7\gݻl Vc"RRUmn=_X3/L"X*v|9[}{׳%TLXIdʻ{iZ`Nkd@>xZUyPٞ:oj_FԔ)> $8 m'``@Uyj6RxmU$-uV1'@Ox[s!^z1DP( ~;1.vz%%t76[D\B+b%X ?"i#nNWp"GM;;Qr#2<" kXR4݋6R_;%.Co'G_ ^ôT6jE54{XRD2,)ͭ%8ӇB% =G/mKuw;B?ڧW7k@Ӵ6K:wjG>xԺJj8)F[TfD|I#GzVF'ѽ st.PGDξ>ŶJ@LDnޏQc{۱wq䪶 %߼ hȱGmzS`%7&Os_*i{#UL]܉ByͩܧY&6> Sn$zڔ:ߍ[{X? #8g/%圍u0o+i"bM# [-'Ev,vO4{DZ|zNY2xdL#mF2TL5:eTsӬ(◗LIiTGWyA<54\w=y/ZiJ<`&K>F_oHĖ9uċ87Hٰ]2 ELn1LD>cÄ3։X!FXlm͖tM|Ǯ ӄVZP#vH2A!~V[ ̉Ђ ,S yR]m"݉oG,zI8,UB!Sn%K "Z Zv,1M:& Ʉoa=ôЪ?,EvytT?́r܃9c&0(s4 o|?i&9)wûK$~ꨆ^vbaT,/$e&錑an77+WGqϹo&UyCA]g% Xѿ24 Lӕ/7M6޽q^ $Qfw4p}KWzkA./6.DpCAR@.ķH!^0 ``f eH'pSI>FWEL" p{hrgrmuT2bh#A*';N1t>гL؅COw.fd/NyL>sZQg=$[hI̯d; =Alޓ9- u瀦ЙlSU&"4֩Rl}%\jqp2IH+qwzITxʕd/CL]\xmj)j!>O11\AߋtNeB`"j鳫h}˄v^e!*Q^ɢ^60}cS?Pѻ$j*a{I㣊">LA }(0 n^m'#6@5 ??jEsn;kPZ|x\?а O(r8@Sjw\ŶL^y=QRA]iJMw{*AC^C/5"٬|M 1 Gz4GCh+GdzZEFiN>W& g}Nr"f|TqkH QȂi7A^AVeLՕf )Kx}BEpX.2EݒIhk =i/JI&ÌnrJo !{n۰~ZU/, ~l'NP{xt:]??:<n "vLwW%L,f& xqVVIPenэv kّ~2!/Y"=:giPriϖlC#M0̗PNi݈fޟEuCVcS70{Q@P^.DBrNj#hWD@. Vha?*e?UQ2,Z)oٕh\\L,F>UO j +6Zfmh%s4Aq}a?{|e[8'n>XP}׏ {Ŧ8^ 1ub2_?:gRBB0δ=zx4=mc%Q,0gNx#4cbF$^Xu ))(% EkHʼn("GZQ:V't:&3 T }ZҫiOz8[m'q[1X[}Eߘ$(tg2 am \Uhwֻ{y-,&c8 )# 6JNUHo.d><ڱGXY:?j hT/ ϳl'?ޡu KErG.~3I#⣞7J)Tah()5*T?m^n(|J*\FG=[Eul+ i°=V 2\S_&Z[8ԉpXW%$ S ?< _tCME﷈eS%m yZw1/:4 yďqԮ;NQb m ](99I̙FnbiZ Dj\=s )qyʀnU+T/7SuNc.m hLwwgLuydvZ8$wGi|̿)+$:k@j6mDh8 GqA7r*(w_5 =W"Wg0]bJ˓ U2T'5[:}(fhM3&U">'|pBCL+JgS=Ժ#gXǙDGb Yɽ"5[hIB셅g-ma[vjȥ\.&6UHEƤٌƱ+ c B749 MƺѴkUb; dI$(4rsN?,Ygpۛ<2+n$EhsJepT?`&+G Ƭk_WʅL?ud@c^j>H"zY@G@)~܏yaRVz!T>PAP7[AZ R?<곻0 \;mohHv7(E12JxHS NbhTϮGXQٴ\'dvrɊ؆Dފ[.VQ=6o$umv쥲nY Q@n fEF@ss?"W]89@1!钏_]*QQ=;@@Y?;ۃ]/[v'A:X:a$9`RUOD1<Fc83PC!xsĴyr/-D:NY?US:WhhJPP!ʝ/V~16-:O16>M~"7 ᵡزE,!&H:7#װBF`,{cVֻ8'm2 M,8t}\H4n[MHPQ_Nb0㸾 QD[OeXؾTO<|vc8 1WuÒ `L Y7JqD9r$M$}5a†g\M>7#~ xfSD^UKx~G:8_n]Tȓ$2 HiDƦO߲J$c9ߖ\г5 Rs! 1f2VksXih>^JGWM5Ydc {WS\%M`lMWwDB0e|3To˙e<ڗ@T}v4U$#[  ]] X^bl3gR3m6+E}ZPpipX2&Nm 2XNVH l74ρ %33#o!@ݶICJiGu;XN 3ϊ.V -0ٝ9S!skd6˨+kӾ{g2M=N {B[wXtwܶ>i6{M | x]^w*3YQ.^yt%qCcTzCu7kX{s)3; $΍_>Sޢ-4 H"-p,qKG0 DXHM\#6Zq!V v:53aDY+}檲Иf(F^kđx?VajR Uy)s;XZĈ h-?)ƈյ57HX2ӷbs%=fn)G{I YKN|TN!Wxy?zqޚjL,eqzYO>kWڿ[64WFcF({ w\C 5I3X4" 뀚s<`āH[iͩ Hb<\,1 SBz4/g Vok 7lKWM(@2<)~c NɆ;&AGj!~ rB]U߅D"vCO-]lSC8DFr9i "ŖS@,>TW/3KI /yx )\P<27@@}N_d7~]E9OIGK#)iL R/G͉)R]JaQ⸂>to>P-f鄥x@ױ*Dkr2:ONӥrTm*pR\;K:E!Ҡz>S}S+Z5 J&-[tRL7 [5z8r8184aO^yi_9c9d +tCo|I_O7j4p\jޜMmsCd)XTJkBL+"-Z4Oݝț!lOp_wk&IStKÊ q$teM7xjtcFĻ _jbdcmк*A%n1xD:d4,Q»%q؁yD!T8;C/gstuK@q#fq|9kdt[sOaeYr~! eNa6Ԣ38mjrRzȲap>% γteoH= ۮы[b\ʒJNغ0={++wEQ`Ns< v8$iX2]gٝ T*yڨm:F x1Ӕ -׾88x7; :"a[-,Mb?Ũ8ad"<@ 5לp޽6iKKah͉sMXWn FbSF#5t8q[hP]nfDTh- % TV6_f&kQǸqp\r@KZD14l?Yk,{ B/? d$UTi='#q/ju<0T0)ˤ "] |=*]ia"U_7WYi1jFؖv!7 fi C"xl 4'F|&4;3B})Hg=* ZP+ V3>'˛sE T~G}T10GY^<m[sJwY9#z EQM(W7~p+`)WS|H@CyzMJ\57\\{7nR 43=&&Sa&Rt2> P8#?Ң.ff)5-0x{~Jl))j;M`QBYyZM#_N!GϏVq7Rg 6dЈ? tۃ#KgHz/gg?ѕIfR23熖dw?oY4DHC2eBqɝ^^}ovZF!//e ̭Q=va砑3XcҷX<)_+7)Ba \(ly81DЁJ;qMc)aĊ\uQ&Go4=,=#}-$DY#]@ u4Wnz0>UBH̲`flv+ & rOS¯X4CbRx9sr0b$ O4f: Պ;b|81M\ʚ A#1H]@{bE}FLvknl]bpCg2D IIy~h7먛( gxM{|󗩇A>ڢ];)B?ˣVZSߎ I%z^w2Rgrt0&,F dه/ZE!лIhѽ&i8e5Q{'IqRBzk>tl;Kw& /hW`(0 D4yNݦA")kׯ'6} lއ̪$3ep$ە!`!~ _Ŧ&LVYtLlu@MןVAhYi*)h7ZE!1saiN7N1@TkQjR}4mee8<.t3 R\TB4 o6? ?fLQ<LBeg z]y `}iw~6?[ӽ1_lʤ SܫaJ]3cWLE*Xco2#)\|[iDȧK8\> (=>x$찭lEB΢S]J[F8\goĶ YiqKiBU1wpVLW2if%$udydqF9sޱ\b1+Lw4枴@H:T+x۔sEcz}gO vF玺:,_y=Z#yGQuOL\[o2ׄ#g˨d EfAEgTSAI2*/UO7j mH&`mzu"37P:C*>oQC*EH:zR0eɸ#gk8NR<^rdh+j Rb) ;R9CyWۭZnWjUvIe]&#ZK)56ܤxpC2EQUsWD@ VǏE͊ 9=@8굍6-/ql~b -FhR+XKωC̢rgT9C&mQ@ pPa p\RbŸ#2ԜV79_'!` fǕhؔԕ|7ې)Z5S_di𵡩zp=VjV|$%AwƪPAAqDAtno5t'~,nZOX697g'F0LT7y]Q[%a҈rR =&:c8;KWyl Q&yҽU}Uh{~ߊed: R1'`9-_xPfqDIH#{nhͿȹH tB gVx} g'ûƛ&eތ51`cgFzb&J(6Sց(Z/Ge5bE AOmMi @@UU q'ʖ[+%&tw^\=!.;QA5ܐ^?DE;lB03{Ƒ8#:О( u$;7JZ/7XgA-S"BEyW 7tq8HϽ:ol, Tz{ˢwUP ^/\/2)N?/FK4a*Lb(&f}x![9@p:Pntm+fջ\Fo\6 W.C9[xAvè_ٗ&}=>L>gq$F1a6;aNX 4=Dq"bj5 G B58yO64,)F+vJx/;\N/΂7rJGn2ҩ`]ZL8*<-x7hR8K[9(J:t0WP1Dnf kTNu Hו͔hw9GvC9BoAsnI|Msf[cV#^TDA7~ O. KOjH!, (A#Qܚ2ۻYn9Rv։yE1oi~x::Vl%k|w"lFPH#sΈBx2H7a Xxv`FAtH+N?چfh=# Z%֘ [w|"a;Ene!Fydb4bU$ptr'pw1Xq u]fdpmV?AdsLxPkӸQ{v(I2-s8࣪7B?˫ L^g.rkq~}i W:V;H`񡆯Z ;AQ2Q #} N;ϯRcN8[+ݴ L/,NK%Ggn  h1畅HE_`D Ç\17@E쐭d_}]+` ڊMSܝ,\+ɓ b1j%QqbG1bk#EeFO+e4Cqq'DߐUZ5;&T"z(ܮhv^/sF:(kJTʃ >p("!2?씼IU)4o=jחPgQWxʪ$!&V1D2+twqW9mCvZMK= Ε40Gȣ95;I2 ˌ^\hl/y =ysL-7sM (6GMP8hV~j XCFƠPɿea~ҝ*!SAd II$dI˼vGw F5!#@NEO@ |E-챜J:~MՁHpr@Bqj#qcY E5^v,_T@jŜX6HҩMaͤDYƏtD/}[4>4CB6]P_LmX-R}.E7qwv Cui>} 7o^ 0l+=r3l= Tw; N F> zV!T[a afXvs rd +~H5!)&]0W0*H(˦\ϏXAI-_ NԂ(Jٹq0]{X. kGfpX=FQw =SeaZ:ޤE#b!2W4] $Rbrٶijd}_ B2E}49;GoXyV3 ;KXtӉw›p]Y]uOG?cp{~ `#+5z Ê0@GR[qx `_r$5-,>X p >;at+eI>|H`Hm@"wu- ʴ'?[ۣ2lS cݦ毶j*"9cfA+M|ݼ6~ ûB伹2hf @G9wڼg _US*K|B.f¿\:c;}J Lm>DMFAVWH+5ET-u+iM\\ U9-hGHdʼn4[ad<:.]@qo8{"Gٮ-ZJT0`N\\g" x+_Ǯ3ʯd,tlk b`7[xy ,AD>'`_&Cb.0zRۈzRs..e?Q?AחÊ7Xָ󟃂p"ő  ,Cy)(Ӫђ1*HK`zQnj30ƅC_.+iVXq 7ɛ$[".h8A_HXt߇ٵ"v]L!W"2:| $MSW-G~F%4tvFQU&!Ҡc9^>^9J%Z)g1ZyH}^jv媭C{OI̻,BuIu};ʃ' _O`=|S[TvuW,Dḭ^}Gc*Wxx`>!sLKhۥ 2A.~5uɢJ//Vʵ3H55RKX zG7G3g(=nm݊;8.}yr-ȳwd@~//Q51>xHů*dVVE@Ǥr~YJ5^՟C.R(%zL}M/6ֲR}Aٻ~g~r9E#LM1;Vut`ZcfM(F~w\I@K1K\ y ă؃xoA&:f||3|(-tŐ Nہ:!ҜI%אSLeG8Ia\G{"7d\' @$t9ʥ?yu7;{Zg`D"f!FH"GXZbg6MRGc**}^r8H#1 jz!hƊ}3+K"V8~D6_rX,N`@D wUF4<_*\Lm%lL^Qj5v]aXUm}\޷.j^ $_]d8LjF4PSa=cW~eId`O_ 5F|BXJ$.1VSQ#s·o;֌;h6&ƲF[G8T"׌Xy̲``id >.gJq_ ; WsV)V%#>cEQ"#'/vy9Jn8@fDѶѮQ aE* qWˏgvc!:ze8rDW"=t4'5}>of Jfִ̠6ܲPdXfu ~֏(:e/T CGVͻ #IqX+awhe="_qA@2D?g{P~ y!+VzYmcfGnql|`Ydj;9VyƘ,Y ɨ}N۹Qq?\|vw?w1[ES1~}I~ow7 l8XXB\D_MX}Xvɵg"dKr7Z61vD^L#-qPD~eȅk2T;2NDKBMvEuf2h!HvmJbA]BŬ^oFسfnSc!i)G:.R.TL1>BaЭP'/{FFH;t_R5 ICF<\>p[ǰ3 ܲ}o)u:;ύqZOL/LzՑkF*ZӅ$1j'5SY. *|RSIFa\2}I/M2v9%K-񸨶+ƥ%d YLvF¾IS%35@G@"}ڌ댲}^OS7"%~%/٧GQGFT(8XSB.moJ (X/%z`lrO9l)G6$Ha=?ۨI^SJZ-S[Đ(+[+Uч&!b 2_ *8_Aɼ&}n_C^.NKA4'gBf=J$yyHﶤV;/k?RNШYf\46{ƋO ͽ)L>#dDzm'Ha8LMV{$`:cM~uk^hM_GwũbS緸˦tܩ}Q37L)a1-?>ћ&c}*ebetgLb/wS_f#" %W㛌|/YgsҪn>ĤM2\ƞQB<ф̕\m3_,V.[7oVôbVEq]D0wiA;֌RSPKrC/;{Xay;'b;7귦ڐCF7sM:с((߻L5Ud@o6'ulcǃr`9H$Pw!(gv ׇ2,ɑ![:qI;Tcя,D1 S"v.M*)[Y`~9 CvLIJc>&##eҲg0+pmh.'Ƌ5^aGqgx^r0vo&Y5qMt?I#Er$YGFbsw OakM9ɝU\\#@a$^UPXiϬ[-XD[E=~VЃÊ*W/n"f0h[ܠU7m5}K>fA;Sx5_ 펆 oCN/_1LrI)?CDInDzS{b?Lg#\e5ۂ }qS:r4-g[y@_Y wχ YCEo~zZϢfd"CKk>qLuv?Z[@x+`Fyԡ '{=Gtps'.)(0~iʎ(.]Us3.EWOUBƨ,AcVME }ݻBZhkca9eş_;γ9#~u cpyC\SIm)ᆊ uZEv3Qk4*f,} Ifsҳޞq(}F[B $Os*;@N$å1k|:$>Eym3nU%H mZ+WkDWA=8ֶM0>3 GKCf܀3Ѯe*lCHtl›*2Rŀ%`"*yO| MK_cO E<ܮ2pOLJR(]GT6%-ubz&kD #󋯫! /r^>Z[1^i>B#  ƧY], W: ZCVN ;p0(~<]SA(YZ(ʫo S`aŅ YZ̐n Yl<&p\G7ɩO}KMC4d,v9MZIxrO6H;띱 |IߪV^8ļ8#(!YGvK\bH2u#t@LΦiUNjXhmeK"Jt2E))QdQԲO m3λi5vUaR 7IYM?OJXƄ^܍d iG܉65NچT(',3}5:X^´)rvrz=K-5;]ߛ F!D>aYA@4a\ V~T;!ek ֺlmڥ,Xv6z9w_)KV/iF}EAjn%恇Nުrߑ=.eO.1#|JN@2Ǽ}fݒR5烒Z=?HGGqq wFf&#ʇF6oq\fI|"CccJ\uaKZH:jWH.тtS'MqZ7Ё‡n|"Qפ/O˥frv<[_wb *1A>{VE֒R j O0ɦd)wzwy*জABx9^66XH,Bc"g,:w @׭WÙB*| KgKkȷ~}օR=tC2o߻SUQ,%''[֔lLOrݷ$-֬KA0>;e Vu*J 9z&Dp͡ 6.0)",piέ #l{NHS52:eN_gISHC:0z&Ԙ4P ||mP\WkaYùX Ѷd֮D=&G3@ޓV%N4k|E?^{;3lëeNkOAWqv|cFwڌxRKE+R| '88+^ `kbVQNP~ea]Į-}oM$M3reo ݽ8iKn0'a{XP? Xvk_U'x&WīlL?n5u`&0jȭ\oKDXKT1tlHr3cLTHމEi}^%I~3 z.*4;}m=B{gKD7`z?6=7Oi G\NmY=ː%Q!38t"0xJ'L}/ .@#$?o=+X!yp ( [%c RcaA{LS25]} 4-:_W׹>e$:*W"3TlrL %Sr4Sh|Cu%w 'FC-HD7/0vYwf~-e$eZɖ=yE1D.)Aurϰ ´oW"9<8d\6"OȮf)׫wy" vajV)wBLuziE(1)B#;K'B}x2^.քO@t*S Gōvy glp u~UT,4Zj7Z& (I[hDȁnN*fꤳLi nK`H(e*&l\>:qEˎN_>>^ 4-8\sa6'8H{:riԈ0ǚ'F!v$bQ@8CU8MƐb:g6{"L(4 v'w*JT*=K * |? ɔ$=Dc3^d̯6~<OG5A-|u ^`w{|H%3g&Ol'?mEQsɪCD.k\_emџi;>niL8FO^j|]I`n h̩dH,~SB2=^ݭ0}8" XbiLC$UD\/9kuiGnk#NtyGe<~Rj4駵1UU阛p6/1 xl#, Mg {G,oA2d}c>XeǒUAd{sG?ۊ].4^sZj:PwMWT 2>J=c#lQy?Q [x@_eQo[ܾx~.S&kU^xYuD-s`)$Hz^,YLjv6^u`,ꘫ^~eL _:yJ$嫇sQG6"l⧜㐪t執'N]FJMfHyGfjboX=86AAr7 -K4\v]8kOɞpء2Z'2Å+Pi9w(?qrw]. (c9^~0Ӂۆp!ڔ jJϤ)UĀ°?zuŪ>zbGXW; AYu@ig)iy Sä(:gJ73Ң7gyJ1KPn6XgaNUA(> 1rpHZI:/UvQD%j8N9WxdWf6E%Mj.zy$նI BkLƝ}僁$vuHnffsQD 0`-dn~6Uo!_1(L$1 p7ÿEKsO[E沞a5 <؎ȿ\Ej xTd yt- xDgf7e1$ӨO ^2Q Xb[k3q7(5ҭqɃjD~SS,@i>+)6v؞Cq$$uybYSwեovg> S(cJ&5Ghv@#wX9Y94A0Ɇm#vL wSqvst: Laeα߂?0ᧆCK÷!9\3vN`:d Pߗه U;/̇M^'sэUL|r(^/nQWd ᒈߖ BjWƳ֭bE}@Ilwڑ 1c4 eY:(d%j5@۵kfW cQJ|4ȒmXbKvQC\S2jDj{|;ΫLF񲦦#]t,w3jp#-ؿĝQׂE paD ا]\lh4pI3!UeGz4Z6œjZڂgW9R:rt84 )/'MJ>+ሻTJUbY7RQ-)"ry&ɃHoZ x_ J} - F%.|bͪ'XgMgHկ!}&l*?dEO.G!]C0ۓ]uMVsnCK<=stf.ثќaǽLH i7j'la#wƵ~{۶8aZ mv, ]dp1"X]ƼHqO.{b[q^(-^c_*Xy)g\frU*MדM O01dA3g!%%䟻pujŢXkdcd}"CX`p ->ť])93q#|?:@FQ;a\d.;⥕%l дD==oʭ>l=e)ɈE^^X Ƨ5U[o4\XF/VA0},+9%jR޺3p,cJn"DI7גZ4F^FnڏY ;YF[ ?)ܽ[Q"t;NW\gl]ҕSMQ]x1ӏxӞRA7Z*^qt*Z@[nr@WE~XDNk@ DVNΐXswP * *PbDT-zǎ7o뺩e##Zf{xUZs@ Y~R Cl!Pa~'Adn+w.B82[߃XqBFEVwhu㤄RC5`X{LI607;ׂI<$>"%I3++ؕ-%\ †`tœDPF.H\^fwQ8"(Rp*8۝Lf,/u9M)dk$ fGN̊, De!x1ĚPZ|8E=wM٢hez"iOJ|%a*^6SíKyҮ* |1SE*-юd +{R+F S zMN}Gh A̭nu~kJ·<JYG'32JO{je+k5(.’Oܩt@VlMRMYf2\ST]PϏɈ-lG6a^ſsǕ˻yBEz(kxanQz(z`kt": )Ow&"G|`0M_"|1[43TkmEMNy"h~xOݚՃm?N|56+\Qt|(9vU~)':8}Cx]v0PZ&qĞ4ktwz7u_?8oK宠|7;Ƅզ s~{B~iCx5_1$9{Ov `_MIv?2d*c|ݵceڎy t-sR{m؈&80UN@y`!ba'jQQs9XF5-=|=̡@jqqY@aڇ;kPѸW*-C0hv₵ꩈ{Y!0hx]ԜqM@c 6߬,8ʌB \[nlI2_؅X-Fr΃٠jHwZ "g'xeY _e.lA"nqAKbb%U+"[I,> !͉\b8&[DA:46IM~=ۚTj)ɶR.A?kW <`"^xsL:Utą;5/[I)SИH1***"+z%[@#TB#Fv=A٨pC.p%kd]  TaLruz GL'lwvgOy˰r]jz= W uV9Ώ  /&Sb"6}T+pr}4yhÓ+P{nw7NG'8{dRn VЪD A`ڱxbjX * 1 QpH*,wa~̴'g"uBRw¨#ד'1f'qݝ`o5NccBEBV%~1c1+ʇv1;F8Y1VO>o]4@^u b-\ޡ94F<]$Ӡ ZQ/ _sܜQ&MŹ~! C'Ҝ}buw4^: _lTA!4~FE P'@A,ĉlhwG(aѤ^ 0nБt[kٹ1,i8:O)HtEftq["f8V F7F> :%} Wc$R6[ot&@eLp y5RyH9ÐâXKƤwntoUo) qp5YuPcڞ+лpH a{'ZDHȱy!w#^nulC[`Θ'>|AtFKB9kُ L.í4H }ܵ=zD~l/y$\R >(အ[fKf5} 7S*5vNݛv~e@< Wj߻!OWda9.# =280 ZU{dɱBZT' |r}4R9eaq(k|դNuSoO"s7Vz$=9vMx@|ki9va^GwM-qz OT3;G>A.pmrќU/HXhS\dw*.$1ܳo\&ݞsqw2#ƶu >SP^_)eo kMb25 /vF=s]n_1 1j(0jBUGHnJ;WcmP m: r/- ߿Ys 'AzuE| |M:B_N-jEA #麐:\{5uqlzAۘ3>05T$Dz_Fh/9KaE&bR~ګn=)e.RFH_2b_E-@ؑ*a#2^xT0zNOʙV8)B";豬4bMQ 9\ y`>LΕhҶl)S3 +0>!g)=I҆oRڦh#K!{J0xTAƔTj~78vౣ n$as\ݧ2cO;rL~B Aɓ_7,}׸B%zx5<đİB‰c'$`xCi,X%ҝI/?랖c-\>G, q}zf<Q>6Z9L(KX%M@E=?9:>Re9fH!$i^Q[D\*3^v F$ ʴ2А^bTVU&|PpMgX{qzhV“XD혶yǠ Eoy)uA!+òqy4c8ƤK.|=NB]Mc1XۺJɸMPB5kf7:j?>~Lx3CC,?FB^Ď ݿ(BTf+m!P/zc@;aߺm]0k?srpB蛅'ʊ }fO<\lPtn'ңQ 4I3q5-A:d${|S)5]^I܂ۗ"x@/ {WK:kOWn/e#C<( 8.LT_]JKےhYׯDgKpU @LA`P(jr| >l~F "g'CWM ~T#dI5 FqHTS &BJ1`a[mUb&G$8Y8M?D=?{f$_zZ_Zcep)324$/9-D';a"9'dz&Ur/'`7:iӸ'bt%넎M/.K[ K[ Ca 5j;"TS8:S@zwQ]u?TR0svWHKr=! 5O15 >L~wV,^gM?̠჎SN6B NJ&PgPq/y^a#vGQ$2|6T-;yec7ŦJдC˅ףVF^.{{,7{Mm1RQZхjrYfH:ll 7j\[,˩)čߨc~4}2 5Τ7^_F[ KTbȠӪ|%d7HK^º#`Z2$pAzkYaDe<;;0s$:"5c/wj~5@n .b,eTvZի4XJs{xZrK1f/{hq, t@F 1dnRwH`<\$E0 :e|Z ;dOCmb 45oBx9˴&['8/6c {M(5G,=6q=e;.)* #?8xZxA^FGk0uFm<50@1^;8ꚉESu5{sذB}F"^Тbr W}/ >O1 1'-J_75WjASZ] 2%m( DHp3c7Ӛن^[b[q$M>o7#)WMGaoAdpa½PbI!uÜע2MN~$~>7ad;,E`.2{&ҴLO+XsN#"zhG>f܍/kN q~eDԊ~T2YgDpn&4y7!!I5-[kv5 OޫA'{`=^3ݤ_t;#qM rqf5Op CWiBIB{ #['9SV7g݀1de[b _z0R ;|Ndx11kEݢ{)vᖨ q`VKTv$40xWp)N rӊ&5x1gbJUؿ8-vñ!pH quL/> 29Ԍ mp2lcVzңO0̤7h'ueÓ,x>J1ucɯaK"7ڔTjWoڐU:s2@q-Ԋ'UTIm޷Wda~8aj*Zt#gD}`K /q?pdƍWN `x##7UOG6;TJdIƞ@8Go*5Ag5;ce|Otta`iy mL7@ bo战>8~sZg?-te1ihȋyNCrhRO汤.)HfB %t2*Nɶ\/jYyOҝDK CO9j 6LKP>;Ҵ~'.mo qMどsVn,!rFTdn 8_ wmz6Ld~AH60>%ƴ1=TM'dt=֫ΉbD.:\jLOWVYyqJc8[5t9nfV)N==܅Ʊ\Bt=rp5s6I&.{le9=[("Pۘ ~|> $wD?OEf?%fk&9 <<@ -9!~ L bޗb",̐<5JFS2fug/(|8IGPx,v*EK7^lC0^ :FкwP)~%9n^d:hH|6FN>l/4ѼuRnV&}%} ߴRhVtz$vhiZU׆xULJ.%#"p1:~ۖ>o@.ԍG7MWOX,=8ZT/g/(p`%}EWB+M0(?f'+kx{ɯVv@i\ zmn[Eh; T&đP8dniT1Zx8cPC\[|1ȿ??̆V]֑q-)q?t6< !61!)#e#MAE(*nz }iy`@av ^+I^! @!u+$Pg0}nhM^Trop6ƭ.T-Gt 4UR.N=nf kyC*N!ZB h4[%A]s>Ī.,5\&G'Yk@l* /e,'?q NcaQsEms_4JIlhTd2&Űib[5yr'Su- Dc=lQfjd e >խS6ƻ!ӾQ\`٬&C;Gț1#VTLCBN/n\I8Ԑ%tKtd%ʳR.Dmqg/PJ|PqG'#⺉0w(}a8["xid.*G?(*VTdHGX5Lİ)gf隥kßm| g&f늟'Lo]aʥ wn %JM_3.<Dpl9^ ̴hE܌ u+0נ)yIAc3 -P6e+ 3Nf+۾c-ӻl뙷 \,%\O,NZV=|r\]FӋQx ZY$/WǁbDlFWE9o GHZBהvax,.<\W ! /eflnlHh> ?o tN:fyG{r9ľCϒWp"DɉZ?k\rmSkxR݄};0ijkXpKHfB;?F!NgAĬfx'oWT@f~D ,v%PN6cwwff|qti6uFeHV\('21>63:4$5%C Z gB%ERJ)j$e/OwB0B^eb#EN^mfb):+(t-0k7ɞpmޛ9ɥ Vc:(Uw9\S iXl=7W Ⱦ^V< u9lkɏ]0;ozRWU0Mk׾ k\UeS"GbN3L~(:GHa )g%28{0Õ !bN,\3lgdl8Q$=\Oa(∭DRR0zp_I@6r$<6Q3o\vJvyenpGTzQ&5'bN/tˌ/D;294eX8*BzVqƏ@T4yz2$nnBO9pBiyBU+O֕k%ȼ1(?AIבXL[u~hLt$kB&ݙv|LVG~a/|*x'|ݪKV x$:S^)T}ujX\(CԄ/eòovAcj%Z !,3r0YbkL/rh .0{,!7!L3WO]\`r|4bshMcA{~ x,ԑ4Зqz1;P7;bIF;@E @@˺"߅P3T~, `X;[MagY@ɿ12q "!r< > F2c? .MέF GI a\.t ZW0]Bۓ?g*= (an9G3yYpgʹ5?r{~mׁ%I̸±-㰢"0^{h$/-JXjlÆA(9^TE;%ažpuN6ɛY:X[dY)v,0'O(سs+%t2*eK+,:@F(`4?돧-BN +95KaQW-I9/%;7]:Xnktp hK&̔nt ,G!p hpZiqT!Ӕ47qDAWkXN2/dVJP'X!ṢbTkD _XQHgGy:7 }<He0CdFI4HFJ?i濪7`},ZdFך S^s{\3V6 u#8[XV M+ysqbHcw.篣_~gdTD :gVjKN3<8̊**<=2Q,w~xB2#Wp"bLw!#.Z(L/8@!D v#e*0uܜ1kUc2j*FYkq%DCEOי/Gci 2rx ZF.ىVJ)(}qb*)=řގ^bPh[ꮡpAI1*${uEkNK/kgF-3aMH#8\(ISnƱA:2 DlJ _¬jBB;z(nSCA5"L9w";BsXFҸ{~vy #Z52X*s7TdE6G|&|C +x1zx9B|8TEhgL=iRo;ǹډxT|A0|' /' e 8!X:t$W&5!Zit TRn,H"Wk_(#卑SԠRa\f$Cx6\;5q}3s2<)݈Y[ecj<\To8}=mp6_?cȫv'&JkD?l8U}!N;^1Q͕AK1ɪƅ:CSRvxf􏀋n//@N)4=lnλs:afF[=l\b ]r,i[ÅV)u} J 85wouU7|;g ^6KL(7Rި$iuPO:aRFP/´ ihBVaW苾CfDvpԍOw-}h^yqhmIq$8rT֢ؗUfTѽn!0^״w<͆l>O KȲPJGgr~-Gd{iD .#s%`u-wh*z+`kAWl^eݲvRIZq9 ٞOf4{-;ow/ٍe2ol`7N:D/5.ud|9ʒAr8!ewRTSsDT+|7c_x^ FgFrŐRfElP& !dԹ3j66rPfuahҲbVݷŸg;2ĕ|`tbf%Ǵ$yV=e{DNo\PDajWE3(FMzJ UZ w;QDT#+,J_'A8#v$&|&J114LBڑ#=~ RO"O'l(ơ+eTeL;W,τ;揽hzw{<;D+RoW\xgG`=|Gnݷc[ G8[YJX)/|3Tw> G;0x/nΡؿ $Sg6oˈAOElq\j!4Ѿ*'$yz^5S3&0ln'b'G7JΈi_bx5jNU^$',? Q<޿P~007@Wq .wBQa֑OkP{ /$<'3NydXDZbIw"A%ߊ'7#&]G'4)Cm#Wt0qRSAt/©h92,rpJQW?_M隮5G~H)̨jظu$)(x9{ "&ܺ֎c3]3ORY0@ dKINS2 $^!x8  :jQJ("RŷẠmp6̈k QPZJ(!T[.6@x6We5*ёA /`h!I,quGvqx9fBϯ6eUo(Ι͋on* )g쪯zꡨCK8\wϏd7W X(~C`7YuGcxh_u"dc,^@ktfEߛP Bϰf'%f!yKg}`thȌXJyQİRp2ǫtb]|,mv&ͶYY70\XMYe< _Lޑ\,Pû,錳 x.ˣ>&E%dT ]5gV#^+ը%ڈ0?v4:EKQ q~t)?xMG|o&v:9eGXJ$xnM 4 Et.X*b Dn0;`p_c;Ѱ*o[U[( td \ہS(b,י75wB NUE\k>LK *8n =J.m>=٨zդ=>q0`_dۃY8 Hb*8 z N`iA?$a1A~Q4x0e +0`1ǯ6iB0[08:Ma Nn'>倦c,%wKzW]fhC&P.Z?Mت%3²'fZIVG^ʊ/&ȰSf!%^v9~N{Ђ6}=7+_lb'{SO-OU"Z&fՅ1}O}#`7q()(U[ *ZY\xAYX>*f$qϊQ4}{cʗOX1cΊl-t1óN*3X P?tQ͔k " OL@㲯#MIC2CD>L=oY5?]拙 4`j!K+}̘*uwᾣ7Ϛ4R4.$Ą>ө9Ym_Ro C(5]ej鶵(Y2lOu0lą0!qA*\PWg]yH4H7ڠ6g1 \W+,BhcUNxx-;]5{oGxcqXו`@j&N޳Ulڨۢ2e;WDu&J.s(6Y͙.*X%?&htBȴ ;1~.98}"ܴܱSXBfb3zy)*&ASAM􂅾Jf >.H2A"T$"85٣ٴ[\'j^Iѳrvvl[; @_ Byyu0NHJ3X.lbQdex0^v`fbΙzo("VtwE8aO{LU"Bހ0qX]b)S^fO̯f#j2w㹡4i_R\4=CXTr-O_ !~x8F.UFh;9u ?BPskt*D; R&<}Yw ?.4y])DAxI,Am 3}sN7|V@!I|?JB;ܓ Y N{lS *M$.[ؓ$hkLaCz^9ؐj^Ot=/^T8‹ X588u\8g 3Քʔ1S/[(<}Ԗ@/fRH@ݧiBz1iqpMJ<_vH|J U{V-.c=jctvo|b,rs9ٿ$s\6;l;ڌT-G=Ss=k{ <2_aƷgcb0  AqOD"T DEc"<^WI:K@ gO/׃fqv2{I]8;N6I)XiRQAo@i^w]b."pOb ߔ XVA~pSoxF}Xy R*H5q%q *Y;Pw" ٜ i! kC NBrwMH˨IF . 5cY GBLW$;Пz[ӽ_+#>zl_f@E'645GcUDs{[3uQ%P >;Q $P%uҭwqol̂łO׵B+wpԡU=ρ9*Bf%8q\{F] $87QJ ?~N&ȇsOt]clvY.ȇ&u˳Y71ͲK=0|RA8 tjAz.ekÓlM>)jǃϫuNv2>^&vA`P^#C8M=rX!!= 3aAldUzC:VTѤ#g̢t0r[bBI-Sl= 5ҦGB9۳\ z-k, Xg9@PP}T i\e ٢iVgT,\?"Mضz,;%\%Ӯ şݩ+,zhbvYV{vZ%q8XB2ly-l6AsrVK>eg0~iZ Iyz)Lt6JU\AR*ox8aт#8o8t#~ GIW~CP.ʚ<wxayàF̵؆av7͸̵Wcv+ұH`{F#(ϡb,x!-{ eIE=j(կK2k΂ PuAے#3H D8p* 7肙1qNl4^qǗygj6 >q1f3T[vzpTRJl=0)l8?nǕ~ƞr߽aHji0lӴ7#kHZxۚ3'773B/\e ]?7 +7^v &Kg J RA⻐Cd"68Y=H NL+,8;[ $ʏEZN |l:`RnA`и7RH kvNn_ ؐt> d@=v2y~zd|22{VX^+ ZW-/ iv4dN]7!0s'b3 z]0 ߅uäAvY2ۘ)1Q18-06K?Z1>+4O˞GuXܯ6 !)}baE6j^u'&mkG{"cށ ġ^MYWD`xn|=J& {yfzou9g1?oGvJ:E"^X2vk4q΋Zf ͍%lD+[Ҁ=c<]:֥Y _aAzw,%|pa#GVO&%?TILl@;Mz\Ykr),~Lp+q.)MɹNմj&7uolIv`qs G;}qpϯL}j2IJ$xN}45'a[>\!HZ0a+ߏRSb SmR5  Z~ HǿCܬܯt=J֖ϸ@qM~Ezj`&65B ¡7OwcWV2':R / Op¹+=xx:}0Jo7Cip98u2)I>mnx^&x@}Ivm{逼pV |T; @v_}7I]'l&qu~gUbng 4Dd]@SFAy ~' z[Yͩ*n3Rpoł(å+o;3CQB>\$2Otτc!O}B}bfG7DJvGF5vNmEg^8. %3<-6'zDG,:d+Op lV |{mfMt11 £~Z۪H@]IԦB [b kZEaцL߰oMWos_f*Ens(yFMN}03UB/؋jqHXW {*캿Rvb?G8?R=?36)- XD&732-Krv mBkfYݝpH*9Ap~p4`]WjC;~U)*c[<Z=f7e}Q8~@][|)<w_-i"0yH Wˣ]S,XyRBJ!1j[4=v91fA$3TIIX}SSTttbҹ+m`"pLiT:"^2 M[B,Ƶ6-O'Bs8 <Q@X (ݑPgSF0NSMdԵ1qrY`d=XX(lxjB PnDծh#;e޾cGы>e.V5Psn0hE8i<Ő~sUCqt~BC"+^~$3 ӲKךosɓ[zogQաy% V~X pT4srZ -5}bH; ;1B~UӮ0f CZT/"ԋ44$ 2 Yqc}W=>ڷB"0Wa{p8¹Uja6,;̢2 %M&-*>KDMh8ܪxrKY׆`|XPG0uHʊ)[d2Sz8-k-\"_֑7%pҀDi~7βzINZhJPx D=huS2+UTOB4V ~'MyI*Px8OFOeK\Vt7eJp2[U50v5QApK­YG3_zSJvAMl1vXП>6W3Ӿ^t_/ 'Q`[a}=@"C-rwDoEɥ_e5YbCz_Dnb*Z&&;8F_,D9fE D wuȣ-MF_!yö'VgwDdܸ0ԶJz"pa.M稢C9==V|ƲpK꛳T6YV@wJK ܎4c#:P#s.˨~ۗ<m=@H=ZvknX\qC^#T3>ì'H9̙vKW}*٘pa4FGsT^J Dq8bn6nq.SiM]BoCჯq?smw?͂@Ƶ}qFuABlၩiVU?tLӯS{-EЙ_e%j}owuYA @ ru|Kj(6"![=u`IsCf)E535ۺn 2S.iqAgQ֑³8\qهj hc#v fL~fN!ڤHC edzALsCR:S9 ,(hE &[Vamw#ƴyfwSvols3\$+(gfu!YR!xrZ8C` UV7GA#{2Nf%(Ѵ2y P`RY)1am`g}א$G5.ΐO 3I}m#.ѩDƫqR7 ge:ᒵ1YbѝeTNrΔwVswr̤|!X%)VV6C̼床m~G \S*ۓE@A#qٗjڬ)* x+)_2J=wO/A,!\ nO m`;^[czυ8*m/%E$OP Vѽ3Bl>dNwK9E3~7wG.{Oe j]L3::7vːeit_#E"^ +҂_;k j?,e 3瑩WEřo"d\ܻu빇~~v z(wjg-7!!ᗮߟ| (z:7W"MՏ1dS{=3}[,y4bćT/bi:ORՊ3+C0>ݴM͖505_<ݥ>`٥|I':')UDT)މ;%cyubyGn$71GvB%x9+3\O,i *L4{%鸔o^{Ii ̗үqO(P2fV1szyl!\VrT-S@Rōus \h }b%ZO|jUFHLJ`ju;'"}/5-"t1s0꺩Y0uJx_  J' NƑK&wIp(v0ڣV=r NǓ# BSR n^cS/>FgUSB::_Ph]mZazUNL+$h4Ⱥ9xah5kqyrXݷB$AYɷDV4Z6cƚWtR'>6zY覘- X6(3L*1x̆5g;LVhĹs^= YOH[^$A\ˋE?#tgt @Lhӄ[sL~7|z16؞_rt jq:D~T]'2TK)3[|uUX EJó>#H>rm0<䭲 XnŚemB6Нr2cz| ^ԇN!yZ7­b=S;YW0f(/'Ɍ)o:{X:V&U 'Ms1dNrZ Z.7xNV˖d願2t 'Fn[F;35`ɵ4ߓ"+vt&ȆY2Ǔ)HS X/&vm+=Og?Za~Նdz>X<ֱṃGs1u$Ұg=Heh)΅ƾ!Ȣj"i|b8ÿɦ3T$%Gynt^qN+ . yΎN >7Be@lInoW.Hf]F` tlN_sĜE^'=␰̣!4kv@?j )v_Urcae*c-MTE4Qo(f H됕J@Rj%AfW >|i'aӻX[~%g畵Fy89tY?H7@*7LcIsa~ڇ=aMڅN VZ0ܥ"S; zy7{\g? F^H9$)6GNV22Ɇ1RKtavݶ~A<{ MؿӃXbL ql }A=%妝?2Ȫ#,)<=os9 X;\UI'6@ż_BͳHƁ)V ֥>K<)=pʣz?g+hr[gyp8/-zVt쏊 W _ojh %! :bWoOceˡ @qb]t7UN T BLB| ody6UIp5 V W ZCOn{(p+r =gONUڠg֜&Ju{Fk}ӽ~.l@Qt->A0H;-ب +.c蚽jīPs$*3I-=c<-Po3Ŏ>G%wk}C%Yv>zHKC9߬ZEQ؄j~п gm՘˜"o:eKdȵ+iPp?-H{ٯ\Oُ]&dT RA$jei>ka!eitszRTG^uGb}Qv hmw}j0)o]&)̷zu3dȆ!Z l~)/>fuzh#ٗkn޻t2̧G b̷݈);5ȹR48x9 םu$| Mx.;ݒ.H=_9r6uzfbë|}wuk?=,LW Gjs@fmv`nQ`G!pF jeL5ޢG[TmcIfZp5>ví"Lҧ|]až@80)^ ԴJU]&73;"(lwfYN;HDV^xh<"rdH):"iV$5+6z֓*|uݰuRP쵊2:h@%'--l6LSUjC F_ J)'#SGQͿ$)߉_33뻚8.۔H@SqY(%w(O1`c>ʱxߝ'2{3M6*+=y:$dBsŮgMIf Ҹ&Hj Bh˨3$ԚčeI측CH^g-ۂ WêmXbŜJi]_=YB6(NpR5ҤHlҥ854̠oNvfx.a1iTrq>(~($ONĪ; &AC,$UF3W ES"קw/}Q:e[䕌y˻ kVA& 0Q{vx*!8]X`V\SFO=g$ GNZe06 \$1\dx3 HQ[v8'-mA۳hݾ!^-C>+깋LnnhaD쿴E[Vhm{%{S'LB6i7D \kNq]g$*9ߧfCPR!H=a.( Ed6>cTm} .{tw9:Q_5m媐ZRi4^knHEż[0ԣGua@;0>5"U% +N59};W H/*Uj&za QG{PGt{uAYG%UVe)[tũq@%k .+҈mW\ ̴a6\i Xi_ff>Is4,"t 4Ck1 Zc,!'&bCR8Rxz+b_:Bt7s> Fj^䬖9Л2[{T 8L1jɩ2VAF G,J"@NSr_<^'BBKw |}G^R^4~Q_$](+/2/k1x4cЖy } {̱< S⭦u¯ ٫x +P 9v[R CoezY?L%Ɏ~sTߛ}X)w{Bе r9zZ;ԉrUzչ/f=,$nϔ/r{mw'ىt6mp`$(ET^y|+|ܑTR|.3cGocav gSAo_3gi:n} TO݈P*HLBox!WD-psoWݙOSqV]?9 a PݵzyS#ӽmV s<&Tz^%e9_9Qy-$M{޽qI 戵ؙ籫et?Fܭ]_[Ṁ/ʹCXz}jd<_yo)^\H2Go:B;~AW@j(OaʴC{{YYO>p*$yIEsWM[n!\g1눿Ɂx A,-'բj ]MHH+c9wTBiűl-fu//bKB8$j)9H)\_l{AQu[GLdqë?X@g2UO76zʿBilP,"@ɣ0"fr,|*Os6JMhRN-v( YZa<5})VB0>GB{@\,ab`J1m>7 5#Cl> dV)| bNg5* (NGZk=[}3q ܰ7y_y&.U:И\Q}B l7FͰ>g8(4^tr~ 6c@Q~ۊh[ `4JuQ9PXww0Kwff\46#,wYww,t9< 2 Ie"=RP!!'A&uo{*9kޚ!'50jLeԩKXœVt,f!LR*<}U/ק:CzZ?o5;_wnLD:ԍYgizѳv9_|xF) \o-/P}sѯ 4 N(ҁCr^쿟UQ97H&Hf ̮[\85NcΣv +ReL-sn\ڊ_v9ۓ`Zi{m%].} 8҅xe噘ڍ:˩ (#wO27h3H afzZk]}=m$/1=0n׽Imo>vhmbz]\]lo5F1<RԊ͞ ǵ_4 :zykw~w6;-"'⡐UFrYtRYSPkbI49K槹K;ڿ W "-rogsfI 4W$hdW>J$Zwh@8{\`gŐ}.C[|SiG`r3+v(lS1AeG^ (!,o F+C]79w1+hWT g1ӄHQrlPPak1t hyAB Vֿ}MjЄZ29<{Ftq?J4 ShZ)U/26d(qI XEnt=ܝu+&ߥ+*"NMׄD%]O,𗖰n+?׳Cvy rP#:ɡV 7zW"S*'±M hXP4=k7N߹/߱j Kh;cR<́O}6ZKCŪK\!k>yϜI kuf*4hXRF j[ERɪ%Q;"F} 5$5_&=rًHXlv(B}KI?p$vP;alv94:\w"\'ꆚ/L2&>y( 6!jz=T"BbP7rJ(ۢDŽ)ipTjG[A~<)1yWKk ~Oeo37^{8zW`!Gcz7K^^9l'ntPR:ywAmpLr^NKP/_M%zlrsIOsвGFSyvMU" bnN0Ek_e6z)[L{ؐx0xSz<BsI~޲iUI̕ΨRΝ' $<9ۘB>_ͪB P+cթ+YՊ̕%KzY?oFcr{2pf K*)8ϙHG#%6>hS/)IPYsDOVU?Sĸu$̢VS7A\. CWvQTR-f«PM0LNו3yfQ:}We(n7>vՏ;’llnzD%Ǝ$(NꠚEC}sh*~ 1L~Æ}INSLu"\I=pmC"Mհ\rVlMy"a)bO"H^KM41КS<:5tG,fRH4k3 wk#Hn!ZL^7^BlWeQՏw.B.bu9; d#f1jNF`$T ֘[{#B^j@LTүAŬ[ Gjc0(MK2~8g96Sv;JF8w*j9׌>,k8V4`AL,TzOwzJotKD2WXko0+ t#ʰ)#"Tpڭ i&BhɠpqK7M򫀄]sGA"-g'Vl n|]:n_#SB'ӥ1gTy:@qn+ 1,IgJߓ*:g^ gb1q-. /r"/oeoPEDe1lbSSp,7 XslT-}2ѝyV4S%kqL]JCt8/E傇_lG{}3)WhC%6 ]'Z"'ZZ7~(mAaɰB~D['NE+zmU“SrM&XJkӺç`Yq j Lț {rV"W%2l1^oKkB7΋Č+NۚC<lLDX3Ѱ+FbMh]4SVϏ29)|K^<:i`ǩ!oyXk1X4Qt[U,^ۛzr{`_$c|uo'atDJCB'{zhqrt|wL`2;2?Hc$) B FO1.;',$)1fۑCCr~do^(PY4pP^[*e; #u;ɂ@~ݛvn(QD.B<6pvjmԿ4#^ xhh[&w'(pDhFPBɘp9JOj ]&#'"R|Ef''BADI 7[U AD-RǨU ooa~MAR(w֥?`HA󸜦xWN"=j#C&3GaI/!r.dNrgөE]]s~=;&"Ed_cj%ӚizHP`]U˗AD,SR<ߔ35G@ !M.YB w\iU}H55XM/=^ LhCoc(FDDhF1C~5oZB7u0ixj6Bz ?S\]yF_!Kę` +U(WCLa=}nJ;+-7uضYzlGci[v@%`ؕddmUb.&Y߬tw1ȁ1JvU"~}7kMb1#u`$:IU'4K2V 1 ;^L܌{vI ;I!Z6+\YϢ_m~kqfKvdGr )l#iJ"_ U%|dV(r o,6~U#̈W=_]ų2- plGyB̳Ǔ3%/aoQ$@DmvQB^&w#; P*j1+t~[Fw)m{b\*}Ȩw 8B10i1}'q^j+0SqW ~0`n@ tyM.H2جOHÉ@M5֓win\rˌe㈓:,\qCr@8 ` Т!Hr\43x66ZLS(TcwNGu vSB\\5 ?h%^ps|q +C6Plf<[I/ȫ6E]Pg:vvd`8s_`6 4;ͻZ?`gRh5@j,{mV3dB%v L~h/X7; ߷1y,Ɲ њ1T Znݒ;=HU~#VƩkiݣ>v롓)2T Pg11 #tT,c#k° wv hDh9|QlpK(A?fUrv&(9GyiҐz0fs:qSZȠ=2`{ 3Q3zq+j~ln/ڱL/p*)VПd"l[|R-łAvu f G41 3*Eђ^eǷ`(9tڐyf4v{(Z&a/Զ pNH_1*;)e!,7n# j,)dZ, [g6dTMpÈV01 5mde@Y][S)y۶O&s;w-:x!=r{ tE&=";AmZ q髚s:?_۞]Q߰&nE?a0(.`  UK'.Kv u>=1+OAr rM ]#3%ڇp^.d'`O'gՂQ >y4% wf*Á>^tҍ>| ?5urn}.>d3aQiP<>0+L*1 >ם0POIw͓78`!YkrxZ[!%Zt=\@sz]TB*/ xx 6XԽ^:h{=Y*rBGGzYJ ra1 BҌQhoA\?Α]s8]ank%h2-z\k)@* %\ou_?L-ձ_3j7UeW)jvn[zUhlu5Ol iѥPӉP6e P D;9tCէ\SF>c㣍\Vw9nSҕi5B6qDAj,ØF>nR-vPҠ=38؄5=IݟE!o1 '"\餌X^tUjSnH<3t<2e4F8ǹa.#1,~KG8 S=rLE)m[繢>$Br4XԱlOgV^tVI :ȿXA#^ B=W˳1΅?S8˪OEydJ2CrU\5F_Ja=GhF|n59(e0tgoFnG93A]#_bSV'x@)in@zQbwch!4]}:CYC΀<ݚvgaKz;5hLä[T%وQOfgGW*sNlb$aMfBwLu= /vrSO q@7M2R ٬km*X2CcgjwFmh zܔwZǬ #e"zaS 4"VJX5^a;t1CT=i3~C{xź>Uʯ,UuM Rwo <.ickn_Gϱfa,XUY|[3q<0  3`d ~S&5ŧ`O=C&+fS&`K >*BBHɉI,0# H0& '_P9ޏ!2[xN$٢? Y8{?<LR{ѩT B7ahZR,@ GLU3֭g)>OO g(9Ap#װ#u4H]8tC%,)'dұnB2?-yXI ic伄%a=C/ΐnGV4[=Wvzm!$r{{C*gi%xXH4ǦC/??z y瑄7,V7QNi.%PO :ܘ§g@ WDꝖjܶf]8 [` Y4' 4ܭ_I 2G 4x;nrh)VZ_.ʺ^]&NTP/JIcd Kife"d/Ӵ\9H,i)':acM [3qu׉&} 8KerKTk6o` ۃ>`6+&x×.BZ ~l mfщMei|2OE3ϰ-DgizG#œԛttװ!%Rr)//4Iao)v-9sV}ij}tMp)|iBu͑j2Al CҢfQLY@Yϡf3š_g;NUn ªk{.v3nl/nvwQ, SܔGhFX`MI\dL}bgq 9:*znz/$qdܭDd+`HAX/%}R}>EQ A6˙<5S}J?k5r1>y3(2 8݉ k%O| ]p\Y!y8E#,s!:RJ]+:|X7;"^S*G@юuS)5cT `߸ kwr4&Z\^e.o{C=;Yq#."TP Z[- LG%1;;)?p^^Ш;"d(?bDbS2L;>t_9T81)=g#w 898EhhsPJ+ 5X>(M'R3EhB9"= %0G3mu)@Wajn?&ҸQ9Pd7J3 /:8v\V_f̜B\c ؚYI -0%YRJ#k%74۽h0[O RR<=)DV =X%Ƭ]*u֨Vʫp(Av;v?=&,1۔x^]( Va9.9u bF7]Eיb!JiW0&(3*bK-fٝ} ifFQ>P8h[4(-\lY& ^5lyѵ{ /J<;@hKU ~7HБ H\#\ċ_#J{{ZiK1$2-A#ĸjrfuY7c Rv0x*PF o3A'|$ß:Q pFr?}ӷ^(6` 8@ۮ d"uՑsT,$|GUJ#pQz Fs`} CNkrQ PO -+ C6*cb65LL6)S!8]Xpϩ DEB9uI/'vCkѲ28߷}*2B=RMQXVhLq8d(m/.Pl@( J!=:In&n&xBa?Ee}M-\',/.%­PI}[/L՝Uj\m #,}Uy?="&Fc-_7泏 0=ު)Oh|YQTnSY2R䂶Co|lǜp|}|slXS\dQŀQGM^tI_ ޲EwZz FfA,nC6uA{J42sEϣJ/Xay`;ZId~C 4ňָ))yxs SK9: IeRs׎#w"榙`C@Q)8Ј( dC._'y@ d Hw$d'e*^Vko/Z~ >&iޏ Vm4J@5-`Y:B;ҵbTzDwo%դ.YЏȒ;I^P] X\[\li XǵV)K& IdD;*׻"^0d•ɐTPE[/7&KZ#IJxmk`zVXLZwTX]y'O^œ qw:IW l:3$[K >:?%8٨V 5aܝ%@m_ΥwߩD&4sZV rEYƧ5GE 8-, `çWЫyNrh9Al6'PNn `<b&D{yAc 6,Nrv=½_5B@`ىɄu`U1zS4ƠV%dcngك%4udole0 FdWkJa1V t\ GU m.oSDSOsjGs;?#.#`4]@IlxYЮHTG+ז"/%NԊ23q*{'I] ECmO#h2+-mፀbNeB1NflmivߑD೰c\Ϳ/ߵ0h*T,%ϗf"`*(qJ>殙bALWW/VG|tű߰lՕe`} 2|F;;ώ=gcRq?SJ4\ jc_Վ#_gQ. *JpzXEY@3=24s.~d!7n,:V91<̻ZKT=N.gA8qn?LUT7{{/ung0trdZ . ?h=[+\zUnN pW tDHI>K{" $VO;~ ڣ +1fxҭ0h+.Y|Dj#,GflC|/?f=!"xH?Cs, J ` xI4â%JO6k(MT:,F }JKc<:hS!%f-/$x-]Nj(lÛ u.5 .%،c7hcJyyBYba+?pF"&}Tޖ\g`Ek?H:ٝ:):(BO#r2!]ܨ L<4αJXblpnDxdbTEkt14%L-CCA.R=urP +i~ѭzŠ & qO3xkgIǝu$U0wwz/2ǰdnO?sJye9:UͥAKF$v2.+%Xn$%_m̌.{=[@Y.ϾJ-f|n2#J*ۢ)h,!RM!:kMr~.֗JHKB<6.YG gXq10J̦Y`37 ^sK˅J' |*^ >A)H41 CX@{χ:̟ȿ6zpS.wWYa ({xyLLp(#. 18@Dhap(~V{Z*!SR^*8?T-.7p Q1UU0n5 DY64xG2p7rN M c,#l,>C&8e>u &L s1XbNCɌpΜ%Vg0T1_G蚂,M*68yFso*R U/6:[)EȘ> AxvSnVU=fcR1)Ę13RE5D~nq& Zykeްϗ& 6Fur ʂVNlSb>iBGij6sMWPM9ǖW<4u9/ǖ [)&)wO[,e6e  1ʘ^7nELCogz 2|<xnFџ%5$6ĵq y7Tjf gLHseHjpVvz*s[83:E l gTp >) 6?p~8%uzΉi$Q2[{ ;C:6r>Dȋ{fvqX1'n.a^lם7MQh$j?/ae׃į(b[rv*ti˾}CR(p"h].||Eu$5FY7;+.<#Q6v&fCt#n&"zls u։ώtcӂN*v]4鎾T #>iS+ӐI }D(' HזpfXx$v2tQŸ4Biʢ?KcRmLV i6&h3ya $ž_\6#%>Pf+W b,ufj m%v#Z?!ě߯?aK|EQl,^t CJUXIUNWEIW5coEe 1\䘝ͮ0*8w)  WeD^)$)E/p3?b3b:ߖBJ qaIuWzu5@7S$ 뒛 av6>\WVJ t'ymuMdxxF2;> @ru[*j+by 5/!֗ }r 7,q۝8}YQWQ2v^8*)C)XuSgJYujL'V\oK(ᅌ Ցp} "3zB`?Y^@] ʹ۬"o=qcYet#/hTaMSڙNڜ#K8fH* t1ѳ+sxiuOanӭ} en{Yʿ##2}%HJe6֢mGG*^m=.*Ra[vHm=ԞgjW la8&a-";WњNpجc\y9R@K:(#HývwC{o129a,lB mv6eo{w[t8ۡ<>Dr&<֘Ti,t Bb2O%l)EE }ٶB CSɞk%%:eN*)r[V|xf(]/UX5Xn/KLAAX|:6T0 Ϙp=4БA^7vQ?_լLLN md"_ )o= oӊ_ 02\ fжze^{f]^ےIXZwciwFxKٰF#xCs?h4'IwSG";BI+CXi|k#5?Qvn٨~nplzs&p_9!ACJ]ލZPTh `e禃;Z8+$}y>l|B)Bl1TjPՓa6 c|"}ϕÝ~U#MxnNY|cIk0VNG?cg7!&PvZ[Ԯ84ўaQ w\&ĮbEKg/gϙ9VT3k=.!5̐Q!%!`]HPGJ HPn~F18ǔ9h%]?c0>l$}oEO_~#jqVh$&KaX !0i.t]BPQ;Ԝph޸fM2&*WL^3c]Xyt%!jMj.eϷْ@H2oDm`- #/?vcL^Ul{8۔o{-~nlŀmH!< H"{SF[vn&2ZH/<Z$˼k, &۶/NbE~3HĔRJ:Y}6>mZ.cv.l3ݡ1ViS6n8fw{p Y앬;u-.:XMOͽptbP @å+lҴeiɰk·| v̊x~Y% Rsͣ_5->eXJWW$Hskߨ4~~@4,_&k/4+)1Oߏc&N' [8^S8o{O "=BN8W2#8J Y\.a#tF#1+<_, "a"w1@%K!=ó F'ʣM2U~8.Y( jgS+%jHx_h90ręk:Wl@2".;##jA^8B^ {/"sZCDo\G$^2 vTP*;w,pe 1ӚK0ׄ,7ynLDV#U~l' Q{ d,vDԧZ*ъv<k)L !-s.I=  f\ЭRWB Q` C۴98$׃$ݘXrdg`0.'$n;07];.5y\L=jHE H|CT-Gݧwӡ?zv6E)@HAtz(O` ZL;YEsR.ːƧD ;y}a1 Oq$[]DSkH3 t[m\C>7ёw&wrcΏCУ~Pi蘴.n7"2"vQ`VI=OD_ҷ'V.]3_U|Be=%d&]n_OE$V.z;Vu@KQ8Z](;ЄD=rBNۼ w[?)R F,=7ɞtVpF?WeA=(.8Zkl4o$3ON(fxp><2"?_ٸ2jP IAizFC#B.ɖ 8$_bEX#"zJq?.0FVOG]^[K\GߜDHZ2,ȶCR46d淑Z͐0;,W$4#:FF@}#Nf5boSCF^"K<8*N3\uY|U2O3vwV3s7G|2Q#;7k]UV]ɻvxHsp!6<@G Ժo}}`6v^?5qϤ[j>> М<\T(ǜLTIP1 &ØbDE?9e7YmۤjM%gG쒳s<3cXr3Sbv]Ie75zВR* .D{L(F"ƨYPأ}!\=>_Bȝ=ѵ@;Ї&g{NUj|L ̂8r7'ۭj蜸kq Cg|>VKW$ewןҼp2 3 —1|/s@>0"С8VpN*ZX~?ԜN)bĦ.Xޛ߀"h`uծA=GwcChdtB݀dd\^!Ľa$w/AzmzM~iO&Kznko\)I&Ue┋> @ OZ==Zwi0E:L I4)s,0|b ڒ`o@J8<8oZ'D㝁p"u5FJĺqOyk| m}|G ilvx#2>¯! Eg5!1 4 nOK&%Rp 7GsƈZo0#S [q#C/o,/3M!~@{A ukں g1hʼnՌ՛Z񐄨O`4u(V F=+2T}liZPk3&KKFސ/21@B\5-CNlY1ʗų͆dGܚE+{D6^tհW<>2F*I1R:R"^`nH=^F4h7 &eԿMڐ.vwHkg!R \I0?ȨbjOBJE=eyDwU洬L ?ekNW[HdG=0D(Xhޥ-QŘRtu1f樠^F<\`<)PIYB\r>|ʶ`@6mzukea~,~8D0g뱁vKr 8kDþwozړedto0`y O->X>y1^ssW7 V.Ǹ:LAmk*FP^V*,nSLLzE~9JqI¥  '58p>vzՂ: ;!Gz@ K|k;]<`مDxč,Z^+](I~ ܔLbs aR,7ݒ@A (67`ڑ`\Qb-_hz|Z8rǭ0Ppi'')P:5}U }¡C+kDĽ<0a `Px>ㆯ+R&z„|i;7dJq޲&Vq,PnI8s&~ [E;FoyLih]-9 @^ު $D9tH` rVǴ~+daaK~LIƣ9BnAF7eIsz~=ymK~"?{ټՂVV_: 4] ߧP)ET1xng8|*Gz3x]٧-Gӗrc+ ᳲ)e'SⰥ:yI 81"Pyb!p`c۱lk)+ 9Y#Žj~G9[$WFB>#=r7rK}y;]CⓏY !yV t\ת7׭4F]5SS!$U8hDN'!;aix0>Ƭ pl@ƠKڇ+$&ʹਏ[0#HzQINJψ"ecUQׁ\bQ|nRlr;%=NmYsh,3RLWNx@jhrhOH^b2ot)(@qτƛ[ŏl$+J. CHO߰.U2d{9FQYj)Iesȁ.6pL֏Q) ngʡm EhJų]2KY*i<#O1.ZSO|5q{qL&cQ)F=u _z/m#rEk1>+캨ReDH_-_?J8A&ȿLK H:4-F-#՚lL5K9.LWx6~'z955oMN]#Q Ӹ_bv XN>HWX+h/咋~AUa{ZLbL崽fDGXw+WG";KGU)h%%O#6|H'ygMeb,Aժ OǀKԃVЁlj AǚKp F\;_hAC, Kc@ihMҳ }'SK:N a]ٜ F7m̘cub}pҠE]T GD9Zl\ɀ͸(tUzFk3)s^ kD"aN}=ݱxzH{;L5M匿4=)R P@~=nn',JF~*y8-/vv̂R(gXuh clH7:0dK-(2țBM ogE7 #JOb0߅t2lQuoBvJh=wSA2frUr [>yXusv6E2` T+Zhq+sX4@jIf I:G {Z, 3iCkFWeWAӧ$.U;1Y%I3qmg[DAbmGT1ߨ̂"y"8nYzE0[8+TK(/J눜pQᖢ+?߿~.ecΠ5Dc(Vu, L d;eWLEd6QNПscS[Jj_v3:XPJr""km|3˽ͣ/Y%xKUΨAF ڒ g[*;^oN. ?6e.e$xiKnE&L.YE͚̋~W rHaģc;=(y&h&byIϵA? pǫ-~VlD&Ә }qiKLLƾy VAWjȫfk?s:Z쌤R{/X.U 6Ie ;sE28޵>1%羟)F\sI I(z[#G :KӄUt.—61]{2B{\NEDYv/<ǻq^6gclY>`,}d$.ǚ[8a(O$tBB<*Eh͓W8f~R&;1g*n)vś;Y+ohw=kT>4F'qU4ym@& w= i+4>`x.k~hnmsP 0KmR/h g *Ka/Μ"\kmzt9,0Nc,r* H_-v7^۔2X _lxv!g]p>0O83Ll5g6)ꑤ{}!TT?M:bixZu SSN " +LtD?X;gX}H(jޢ V ͦ iVS9B[9зnL,RXz gCS h .pF YKw:%W%\-Sl؊Wq=0t<Еo yVX`Tme &dS>#[fτ\e0ګgj^a`($YA甤d6$&'e"ƣ3" Oq\}%,zpdtVVn舃rr ScS&]lr^DOx5GFYQ4By *]U`C-a_MiO*c>\˵RO{gZֆ=sσ . |ᣩթ5YQ2ĔQh`SӶk@wjQ6Қ˰"$mvE=8n ϻ~~:#S$i{vڠ}*93H+e!#ls? .,b%2ȫOo6#cS C>W-Z~h@J) Ÿ`ȃ xYCe]pw@.TbHرeTTESs`P:t>LV*\5xXyS_ A5t fs@Br%KInc|$ &XptB©WyC@y{uW̓n9\k KBgR en:6;:aJgފX6}i`:@]rmͩkmbJ? d6 ŴZ,l7dB( h$^jU{^rb, -ooxMev"<=nCywp>YY$fӥ*@}3/hg҉u3x 8CLiHc. :ّv3.5hM*E, "]PzU$>8pxƺQiITgGPmi Q4N"%>9lzŠj;qISdNxh@,mXFX_Sf,kqQc֦a76/^W$YRXsQfA1"52rÛ4ʭp:|D~] 5zOMDKr+-~JC+?WɡR$͉)FB. -.k D<ēo%o1 f$55Eh;%p`(ygk}wRM9v`"&(J\VSg0?Ӊ &S]2@p\7 "įbMOΚNAQح%EF␠ Y/uZGM;$1X`L],qOH1f XXtc Ƽ zvƫ) Y7{%`h30 b15M'y}Efl7^m(@6*̂& hzq9<1pƪ+}0*P+Qp뚞nd5Ic;I YX`( d0P!Ux?4{tt &2U-Ng"̐N:-c@7'bYD(7 ?8v& 7TlE,T]'vE̦H- =D&D]O|| n̪bc9aGCdu@-H1qgmGsҮ@6o"$I L@k,Q,@x9-ͭT|ڹ/j<4lRj21 z)\6}cz|9$R &4{Wx >#G- -uuC7F#VA?k7Jǡ\aq1Ӫ kŬ!o])< 0AR=& &V姏q ɞY7OCUѤN96! 罩WV;7Br IYkNDz= XF;myi׏2[N˄wrTT\JhxyP:^)aSa̖bӸ.<*B_/dn#I*muBqQ~!ԁWn]6&xֳwIr/;nSaUK v..j <"-wYY|}/M*ot7]΄.=e"bھ/`f(7AQɉ4!M 藞G/Ko1yq;SihO Bvԛ\a@h%֗Ͻ Jw*wX egJHZUKsxZL p Y?QKnM0`*Q_ɱ`!K-lU7 JQ +v}ͮҽWo9v5WpYkkb*atSSfpI:i!Hm[{T9J'1(;krI,Rs <$f`$m2CH"y+!zYm92fyxF;~'8M,}Vtǒ50)[Ԁ7k=s8"I_{{/2b)& ([gÄYκiiJM ϞD˟w2t#0WhZs 6}Ǟ G5ÓDv4~yRȟvhrUjst0Q;# S]ݤ덊گB78Mg[Y^f|.e&ȏV)|kM8SmB )틝BlP+r fAkx8;> a8oc>L8, 2[ l!4^UuJ *f6Fsʰ/&1O}D,uHEjJ ْh lP%-.c f0ķ⣓9 {mތNsyTOș:u֙Ӣ\B[O)=8z7w6թ}x\A;F߲q\LUzg.څ;9m"-m^&vLh]1|a;dWM["]VE"VsDD Q"2(Zww͙.;R^\! xȗ0y/ϵоEpݿ3j{z>ә(*<+=̺ ^(HGe8EYaXYULfq?&zB^֢{T ʦ_=Oܲ8UKK*sT' s%)\l(ؓ'zFvdnyϏ >(HʋW +Bsߘ6?g'C <~9%GRy-; [V]ԃdݿ8 w\I}lΕ!*O#1h| #j 3v : r]TC >G?70Ϩ,UC_XfhC5"7,69@z_̚lq.[sX]B:&" 7܇mɱ|'6s{O欘w" nJP>h)#$T& U6YHLYf>}B-J Pso1o7uM۹&^w9!?MyT-Cf ,eZh:6ܲB! Tta&1.Ц2GMәv8=I/~3<GeG0 H“s 1C(eL~QT5G)aسF8Olұ.[Q/IЃ> ۾i .CI|lY8Dd uCO2u^{KP˼C:Om=}%>},oef\@Z0` +(W/YUXVA=ĹL  ],`9"}yt97 8̗dMCzAn :N).hL`J/?u1Zr$4<3ze와B.v&t:+,jRqLJn82Bj|Z/qzJJ YV Z- P[&4p1qoC5Sok4Cu!/ ֲK;{!e_o={+3gCna|iSփx>7D a ۋ+!lMsc_e22H zO"~Uvn=͝<;.V Bk/,#[(69Ή E0(j/Q,R?n f~\mƑ }-\:ɐ1D!AG<<p -:`[}liu KOF !}9I_qT Lm>=k-]ǩ`q&,װ漫qθ"IAvL2?վsv fHpIkMVuꆸr]&Ҁ-Z1˕iԯLjj 1LFBRWNe }CͽWx ^\w]b1&m.qĝ}W 6O豱FʱL6A$ٔi^~lrJ.}\ 񘤐%Jr@}/8hIΟiG`PGaKzf֙go }HCK8' bl!IM\K-;e3a\Tܷc볖0ji`2vm Iwv N)v@'<4 .>ԕ~VZAۋXB_;:\-oC0]/ǿ8vm=K~RXEe70|4Rܤg]rMҰ@hS[ ב6Nk?|sbu  5Z$m@K΂c+<)&M m]!Fp [Έm2L2JOiRW-zN" wPz< T =cpuA[v f% I`HA% *wzt1Sf $ JY&rBM=П"GgnLw19\}ųZ@I ?GW뽸?TO+3ܯP7Mȃ%$xTUqH0n<䀢Gcm(o9+ FFy8& N6|jGn^]G'_p Ķ&y\㼸?ȓVp[ǨN:s=%ӹL[lj۞m2 fWp4D!DI T:؇Ls[aW9q͊qmp*K,M=$U ~Wuu#*.zjZZyT" HSNf!%Y `sS SUpDKk_-κ?~nkLV?[/>M&ַ.'+('ӫ wB6KL4* /tU/RVZ\i>v_w.^wW^Cy̽pw 9O~*&7C5Il/̲ϻĻv(~ ʬB Òd[ҡNJNӁC>gCӒL4 0 ?{1fkK$5*37i#klogo{)gxc$Qr 8/27kDܮ \ʻ§fGHA=~B8iMwÖ!HzV&1G<qJyuT?bIJIō_sr s}iDw x|}wy|n@I򀲽h`!jŖyP#Y_k>' FK%V I*.ٹaٜsvI՜)˖ul7b5Gy[Fl"@ˌPb?5bOqOޕh:tP3LL0eZE /*tf{H7r yŪalEז(gfA{,)U$Rl`TmD~69ge!±<y8‘̅EJꨫCmW8˧kCoK)ˇpwl0emsf!iJΩ9UJ uǍ 6bg'Wa=(*d}bٶE{sHtFH$&.СQaRp\?mx-TYUC_jtN2zj v1eu,=橖Rn|q$Ig~ZۗIo:@g;VB͗$=f΢IYI(2X ܈XИcƯoIΓ xlժkq)X-q=m9tL:RoY EOŶrALÅ蕏D꟥ԈƽA/Qk&2y@6&Ũ7@]fIcaU9ӹ;kKT%:/޻:ix Ud?o_R6_ښ8AEYl^eZ1b&V4/rOK8q lKD1E:ES]o 6YG'#&WltcZ7SDekIꇎIvh@ ]-7u*q#)l9;Z8@Lи[M\NuNhzK OwF"Nͳ]HSF+p$A=tbݨ0ۘoS*}8w9<ZਓՕt]=Ӌ]96J+tt@Ϫ6s"0}BZT6$@8KZ7G 1=U'RFtۡ1EC6l~BlA\hneX,G9i? f19͌Gz _moAHJZ<] ԧ*Q%E / g4  4kQU>t{5^n ^5s%= )W,nu_ۅBZ>"8ğM*I}҇-4w}iczV")5xho~+I\r5\8^ـGm!1m_ҼW<jblxdd98K80sC̫/7%*hç!MAOZU@t@2@x,ޛe ir3AkA:646dC&ND* &3¯{Z]a c~ ]_& D,b r,COb=ص BN~-Ȧ rCOv-pc6躮-{M}RBjS 1d-9J!O@3h ?r3=i5Js.|&!lKZET{nAkgSnaʬ!إ||l1IaHO xU݋cLV _KF;/d[>&7l%qZ:晟y8M:860]mv0af]46bw)eNO?i5jp@Kٱv>d,ƜVx꤄ܑҢ‡8[1g45}67UEiacOSE#ݤK@wYL.>'v3ķA^;DY2hvB=upwkKlUNYCQ'1Y,H|ɜ^AoarZ^Bq r̊κKj|A[Q޲qd^WeKﮄ kE vi߀8ukOęqQИq~{#VE}V\WKZՊ~f"1h/`1B .&(:T( xQ/tOK5ݤ,A8pFVpL=CzV$cUx$D ޸u^8-j-uЯA;h5>G䰣b.+ k`aتa͍Bў|=K<תU{)J[ Jrq`By1^q@-R`]oOD,9CJG3#꼃yTs2?Y/~t'Eϩ J3輠n!f$g6CoT_a11 ~/&1I/H?@m r(!\7*!Vz-ihw0'{i(w:GE-yph*dc%CVc? Xl26鴁 6L _qVɽ蔪(NY(4/\ pg2p_1z5c?הvHq+1@ iU8fl=}|VUJŴ'5)pFJO'g Lo2C/u@>t^yq7R\ \VQml8"c9bERyd7Be.]9W': ȵaRn]-Ì hάjsSgo轕I!5vuBbɫ`LvTQB*țgU#0OmXxHϰd1Ĕ2'i:R8̃Rz9z Aqʪp&!h7q;Ж'%oܐ_JbPF # ߨ2B,ws")/?ϧ 4}I|0q̴+<AaQfW4%k^oܒ k{ "r u>U-3_t+ZT+GEf[bbv$Jw;3MbMB9UQsDVל' Z P%"n /umH3NxF4."aLBM~P.FAk ѲձAQe+i 3s_ӗ:b17)>,)!xDw#!:u>B%kW)~`PMa܀nBqzs-j&hypR${Nqtr^_2KHmɟ'Y)6Z9J\B+̿?$aF-tKcaDM[d'q * Y/}Ux:atU+sFg1k x8?!5tOu׀ot+[ ɽFHEģ^a,钁ZO @ćb\lqQ HdKѲgpn ~ 5W;<yB5C(*7bGc+x8BHdTwєA~9yӺi*klE1oo((%\Pcblڍ,C?YI5iGܢюS]6b"rep@iק>Ej DrJ2=s5YT=x4mRBg?i@55/'LX8UY`&IvtZvASz]fBp'$'pb Dxhn %?Yr6F 6$U=')2_m?,u5̌jzrP 04 j0::f˃ eg1=n{'u3U+FZE[ᨥM=/4kG1 ?™`uބtXc[]Y%.}սb}T:T|[l-&7+МhoJ$VD|fyΓԌr,;(= Nոњ4sɗBRy.TBm1jݸhL*P\LacC;Ba*#Oz.&u=?Fު[m`wyrRu;8E}'0٢rS ȦkU_xu~zk8%Jt'x~EtYӃ Dz+2EeE XIbqvKx%.`O`I~ɩ#CFcj0zR͌z*Yz 1u?U ~`i| |sE I̮/@YLj*xN_q^[8hcA_?m+R>nSCp,)9̵/;p\S>z3vA O ÑLYwџ͠tn(C&AV(`ѐ8lAPmҸ8^I GP]/J4ޏht+6R<|HIq6=}Lӂ5޲ߪs:P e3Ϫho]jS 5VK/d= f3ӕ '4-1 UbX`x’ | ' )brq'znHgCK\6%l_tڵe=we$hC0Pv(A1r~Vq4L)߻x0H*$tzҥx>*ٷc]mo.q?MОG`~#؂3`QƭnOW4ӈrS*|kc5z^ XL7yu. ;#u6pPEPb'Ц&uYtS Hr~{'YyW@D-x!}bw/5(CXs qx.g1 "0W1BS @1_82ߏb>Mi 5IVx(MS:#o ^<S;!KSW! +-r3fynڙ8ID/?oP],Ab^qL*i/W6PQiuwrʈ_0.kOJ1UO["*G=w9h}ag 5^še[sAӠ$ġCɁ"946zѰFU 2ELZq$ lpupV^sF(ri>OgZr=io;]]d&a$^b+b)z.93}\ v|E gQc* ?$%4Y_~Jzt&5h{nL(?J&GWc$LLC>%%Ǭ<t?~og%dmVneV梨2:ElMG, `:LU%Xd L^, R˸f׹ ,ꄟo,{tN%BiItt73xArg3q-AP7.&2C]:#vI٤Iu $if9yӅh6vp#:޹DZUӳ!Sb\yS@ z**N# cktEM0t<ȿr>ʼMw/Ib"nozdIpQ[i pc'|b{zuPh(:էt.-;:G0p̛Z -qVAAel:?VT8U@.ͷ :`E:!dQ,xߜ7v D3OAI#8K︓XHCǢL3)=ޘϝ9q&-h<֬3~Z_u1/[ae=I`UmJK#bmլڏͅįv$xZo%"݃3O Ì-=pv۞B#UPko3B`8# (ĩ(#?ֳ~=Zqw#F⦐a4}؛B!\'վ*txGo^Pfq"0W&v'04]\ad]LT%K/+Cefߢ^@ n EEVl;~+rǘONFse:$FCo tz**_ABY^[\jtT?cgp ^I%cɰ@U% -A%l5jk~Jao7,[ 3.K=[߈=䎳 B\|Lt1 {\p%ʴ~/Q> Jҕ[:j_sTdWx2a]6;PtS,y+;+l3YRN *=~bOP1_cw19OSp!U+^~b(m%v0.WDFb+gd217s=ѩX?%5Oťcٮ]O5T$8t4=>ZC|b.,"Tm5xX{g͟)"2/?t`ɪ؞}Ϊ9W?|rfGM뿄Ky²ȊU@<1&#*|jAv_B/zEiVƲN5Vs vug}E})Lj$Mb;r=O~t* kt@zdpm}Tq8xwXO5X w{_ճ'U/pKP|5d˫{Oh0C6CTW[ӐaG=23t=Njʑcg"=k\܍"h%/ ijgsI0̪oɐ5Pv·JĐ@HZBcAGQJӾ0/ S%p{z^8 aezx*}ǩZ *V\ C }`y@gle7GRqݩΰiɼʕueV][reO1[2'>wsjHjZen~C԰pFpKŇ`'4rקdMc2W#m2>$H\af"̷bx]p8Bų\o"jդ.ie5RJID'˱˸Jҗl" aCg;@wiV?H}@NW\B>kNG.Ic0*[ gqnβ(\L{\Yl|ѳU_RAL2Ü-&㶉!.7_G2Xb8ciu_5@/S,xs{JvͬNo6}WaQHT gE¹jM`%r)s_5bwjsn[w7!PRHPWZ>6bc!롹Yz W}଒bxp1nzs'B.l˙ٻeX>v4s [-U1; ^ k/g({}5K\~۬WSH|fԮl$.#Ŵ @oa$fq/CܹtE+ ;ꑢuGߖ a{],7UŠƢ6^t=ih9JFΫaՐ,6'@#XO6^iI%/1" AI{ d(lUUc'"%IoJ9F0." ?!f5GbttiؐEizsj<+J+FdG‰ڝba\h$>!<1W͈6 #.ԛ NPT&U!jZAnTSiB7@j+%.ClC.]toCJΚ0xhZ*snG5@r?맔WNF2E1BRRI3-&&0<>#'KtvX,- ZVa!(p* U?*M:.;v{rG6=|xG8ċkvq"V&z}$s B]C? stDVUp2^mIit63 $' N0s] Cg;db`GUහ Ŗ B[e>U+ *24s}eAОhĿk8CO5W- ^NY- V"W RMȮR;R%1PUG KysCɡGP~D:Sp*aɆBL5}qyǗe ]!vet#c͏;{Q+lvLZ~ϸ͗1.w.вguEX՛ݭAh5bB79Y/93WTF6f_dZgX$޽濖B|ޡ kD&/_G$ڑgógwnҢ8{:6!Y1P~aVsÔ咥݄R+OGD/V^|84S \_\AcZ^lbˆp'L0(*x/ 2zDRK[ۡ/Bt<6Mxvu b['o M96J3fQVy]<&eJ~!IeLd c{<Gz1縩Olmz#JZ^X'EX7[긞#u$ڽ^5Ry#cOPXvγ2^G} b&,z*khH*n81RDAef{MbވyicA7*놔׷hkh*JX&">Dza1=ҜIlԙ65q, lrp3Rď,I)T+J[7mtY<=ƕ߮'݀_r/fuloviߝ|9n0 G^ w$.^@1/ b gu3.R3mfSEsUi^t%J+q֚wab1"H(bt+ZN_>IbEI (ҮdRPLVGddY^4HߓSD*[a#0Kګ`ejo7igL֟uEVώrFC?k/k<+I{w$z0U . 0gwr;'G{cn(,ehH}# "4oW#b|!#PXu]7 b<&&cis(1mQPg"4vxg ;2Vgj!{ol箨 @ſ4QiQJJW39-@V ,&u%%!1^:⦞- Zh&Qg)>+=w#.(d`J\Zr݋Sf\J-g}MlKƆb.PYpG&7˹Hymń =(WmR@] Kk+GЇ2\?+*rVT mR=zK\s3E_ɜR8ǹtU纛gI͏74IH'%u)WL&'&'ҝ] SFWIU3-KAUJ':j;8vRyJ|fsN:o߁ [MUEIAxn|uVa_ƑcvlMŅ:( 8ڢ֒s0p+/=.ijb$|6eш=$C\ R4?F!`؜LniJ &}ݪbJal7 L|{ B B؋!4!iZYv݄ZRnC$E MoN4'aݾ=U|r\ִ?0|, rbrMZNc,P^XϬMr]@TT prEJAz-=8(,LLjY.H e[?{ch!@3<إ Ky2OF'-x׳1$OJ<)Sз8I[pWR;JlS jEz (qGD?_eb\h&9uB&9PIg~EQ Y752qPY$}23 M,%TOƆn}JT1Nb+wSbAvOQdy?G:ukzٿAKΥZ}yw] <O]mĐkKx,=(݂`',d8XzARi;j ʟ$j <ҒXiL.ŵ6#tOrds I8k'87 ??'צg>P1l@*"}V+:s%Dy`L'oϯX@څ?:vQ~:7gMvu`r+A4tg>W  q Euv!~܏y )3ќ۶7uY XD\{]43 OT U05) j;EnDBuFֺ67T ^ }qg*؋QRusbш^%q{Q(~׏e{\5M2QEm8ĕ6'.\ΣNSW` <-<˷hA0b?Uٖ#6K4R69C(8/UMK~tTeFljP}B{[huknIwdjP?Ҙ#V:"S-BS[Ծ7nêm +Ee-@hӁW~.LU*|]CnL7^2;QUih%B96QE*խa 'n)Aa!Fl`_ ªבbg"5(ECA> !ʼ͖)Ucd_MIR,;סJ1*al~lTrb]fcwdYD}q15mRu2#llZ[x/bJIh{R0MV!7Uw6yLg6A`0vG mnNF"A:vԲl~z:y=E1}1"!`XPҟ]r:uk32R";gOn|}ߓٹJ?iOEۈkA=癖L,\aR0E\T46ֻW&pķ Vwy ԅ94bW3f%c+%c4ӜSqHeen;Ε@WIܭ'~*|1 !jGO=2a}SʎJG*mZ zI~ Gz>gBgU}Q)~G!pW o;\' !{ 9% 4ze}OUF^R b5wwr:c5 5n a't0.mѿkFE!d} jҝ ,|ꀐ]})5[UW=P)9?"8MHyA!A˼/d'}%Oi|Qت/I99p ݑi1 [xes9)=7V)`Cy_jQ|d0wYhTlWL' h_^PTQӡ5;V!(@Fp3HIt,G} ܖ#s ; X DڳkĂmoEm@RH솰DSiNb91clgE)AxCsW˯ >C؟SQ: 90Z!:(Db,fJxҖHvz>;ܖvL6O8=Y0n{^c: ֳ/dT7Q3jWh۸iXěR,G"U')z ̸0eR9;0HƳ>w;8juOh[xHYwݭC C)бbͷr9_O r4\,^2 Us:,^P/K9ԣ2C՚Z QbrH{SÛ2ىKa!-iQ)?҈&$sc"b#~$"{/r榬V0BR Gg .GKMѨC{8+$/Lw53v]jõY2+LQ=1&2->&aX?\ɄQ!櫜.;;?dTZfp&=_O J%S x捯U(/!/]ثys#Ӝ!?7h\}`qUb+;ج5uwQi;ݖ^x"/n˾ Ϣ7V#7`r la* v/N'eVKɌ^}+݄(DBJKNR;' v|tU1mo pu+&hNUT%y34)ܯr:qt(Z6@"[-TQ FnѴ*^Öa\w Idl~t5n. 5 VyT*!Vݶ=:eHtMׄU)A{{DLtF5 RbP1 8Oah.( GmD9S2U98W[a8]o}dlEbS;ӏp1c>כzz@ Hi~*/I9RKm̧tb}x]Ν COoW$|\ n1JֻPkqwӎH*]WPbD *8CVE+j,twe|Ty>Q0DV[u/o2>]zc&-(.\3ֆ~iӺ]r/ {ؘ)l,ae#| |!|K`aLwjH31fbO41yR֩/6t<:$}. hYt2Lz᫚1ŕ;2  ' * ^?*HrSx-CnH IB>T,1wp&"AFt܍rovg&: TI} UE=EHIQs2:B*T^0+UU dc:pe!~%a 'ʤ$p@w=<Yz /~Y`CjY%Қ) U#%AtЈՌPo_Brp ef̦׮-dˉ[U}:Ŷ.s(Ex!Ew{Ple`kT6IuŦ~gv0z6o[z)xmF>tW|%? L 2dGX6-<﷐R60G0R= )ftb Uͱ+ϰM< }\OHB(8TeӌzsUx'bRW8}/dՅ"KљG x4eyʀSZbn&RR1kf)=%*a厏U1m[&{j=" A@NvpPr)uosnytpZ:Kz)>F t`+</f$4yH$7B~G77v2O5S7Bb=O\''EA_.ϥ! Soʃbû-w˚UUiH Qa. yHIeJ#;[F;V&QX\j()e<_l:QK9# %r%GO++w]d&ڡ 7['P3$O bv UM;WKŗE' ن@⩓Lf{ R2v~/8X%ԕUDWN)mI~Om~=KDh#h]GRTsWȞ+dd,lyYkHeBs+V (d$7 b1.+r 7 w{gի+")LCi!Yzn_!Hxˍ *~'`=Ф;XJV1ǔ^8$=PpP^W/t}DSU(:5X+D>_ W' Hu=hi0KW {{Cdgډ#(i|0ƪڪB_;%2>s8i9?ke5T}ϏRW; 0Mg9x 9* $5 ij"v>aޕWvyה5j%r)R dt}ZCީM<dm\ji7%顿K(gCGuSld sĞ-^-HAmgMRK. ׯ Ot5!"jqƄfWK JP!MDVy\)pGcNSy*Au:DHjvI}@eR/QBSqfE؝:\R,l>g6jAoT5Xks\[1Mjl9^]4ubr6 Yкr %!p2/%axAqiwrI'+Ї,rluOajPTZ :WU|AI[L{)W0X=60vS'8~+q 4zvurQHȤKwIȉ KaN&XgsԒkFvE ^re߿ ,` ֐ۣ<0VZ0oP pRi/_j^ڲA|m^K$TyAeǀe|bԣE,i N q%HEmqBhaU%ݚiA 4 F >G6pHa"p?jz RSs2pZ*$wPVP=I6.^-z5i cC?sx|)QS {<K0Ǯ*iWGY?=Rk[h~8i5'=AHZJ)%28]"Oouv_)9SDǚSkDp ׎:z+爡=+0'O_~a<9R5 *VЫlg1@z׵z9N1pbF4]=De  Di f)|h?eF% RQQ{@ྸ={#߼E!J+gRVs .OG@niW} V~|uQES@bf=z>6͈5qEHhUixR=r5 qlY~0}+G'5棥%2.ݾ]u"5ECUa MayX"|uz7XAp5xL}{ aqx#{Qy`N Φzc'FZpk4Nf+RƘy"(~-AFKkx$U!M V6Z Sd'0 n?"Soi䑹&/NS{A c+ז4B4ōG^$Lz^PKγN6SyfB eRrÍ, \J,:V['T@Kab8mӺ${{M"C*;jӏ1=?cG&qs+h#C56$CRn{Y;3C\E7k>lR\MH'hBh5* |'*fFI~ȶ[M6ΑZ:E0~B8Vm3u"4=y`a``B 9'5aT[I7 s~Ugz[r?"WP3tаsRNED2{'z]a*zŬ@#RG֘Ro)U56e}B {DLe`S i[[ x}h\E4I;B纜36"9D]<RKb`&Wl>ld9 Ӊ4- ˨=6ʜ>:xKW(T}ъe']qDLqjF8,+PgMǾEm)q9(y{MNG qR|ZA?jz;ޘRUP&W41 ^j-Xg*8TV = G N.wncu[+M^&sFCTOoPLp>G҄C}5\|;2%?cfi ;T& eLOVdQd(f\b|6YcHjE&^ H*CKB:>C'g+ut-}Nwv#:(suq (!?x>@*ǞRކMʅ9BIq@c:|r{i yɕNZ[p d(M-*dxįtխ߾M1[+`j%ZQBJ,Q Irn&Ѕ7\1z! 6Z`Hfvr{B؁|^&U |bmWD Wt_)2%$HQI.#E a5`ꛥ NL괰wljXw:ڋ!S@;=sUIlIη3;1Ov5:U|D,BL8wl),>=1jLne`\pAakpTs}iyߓY07L<ǫ{%gߩ/X %*߫8۵ͬZ#a/J~ކ==` 68إc4'>_{q}KR BܨԵ~Q,+3* A0 `ƚOmKK(B;y&dơ\TdR*(Sn <wC~07 v FQosB Z+5G[t,JBVYR,tx;z )&W)R3ʙZeT{Mtx|eQF+KE<ȏ: MOO?77N\0 AETDgO1"Jg噗ܕߗ S^ .zxnE5$' Z?G ɁNe,g($>>nx/,7截|9RM]p!{bn \EbUdŠB0S8A&/y'1 |c‚T}gZUЊ|r/3G3]-&f*%!ovs2 SA9ng k"zӅx6愪4a}w.0x LdM"I+ uqTɕGkOrSx*8t{kXk%GvDyA1whN4 Ԛl~co9`S5琺Nk:crȐjDFAb J섔v Yƭz3RdXbج.[kZ;Um&LiP8DXi&W3msoAܣ?]kӬ8a$H3 .o8&K;|c5οxbQi(.64Jx=X&ӆWWiMz>xDIш"C!P /xLU.(FZkQ*4bEQ b:=YpヿN%@wksHq#̧8w-POWdi_r@8ڶ|e,5o<iqw" W".i#謚Cd4c`r;TW~@5(E5H39q`U sAeiKay]] F ! svhbZA7,.6 HeZulޭ3pr*~f8pj茀:Vy W0:ŰѱHoC 4UY`.e3=pӗӏ/~|,T[d#w礪h<a3)2,}dP]S\muGE,1^&ŕp< 3]Ay#.徍1 ҈[ &B"0%FWiOmoJ-N/X`OJ/VDX;gv# X=/DY3Rcf=ƐM|'}&C DNh(6̢7xRҗԪ  uaIkU ?M9í N̓:`X⸑CXa'PewG@ P~k,a`cZ.J:/MxGS ۔ώ4ʮ"WY8LW]),mKʸ,~ TMVE^=>ާ8=BGPMHhv}H!p}t*KGPE|S-[AAj^ѨFc?<  $oi#k6Vgr%WT3PT`^_~-?1HƃH$n[x z-l|Bѹ>[fbm,۶0P4"BYi]&s",9#&qGY>e/b4i-?'Y%1n;Z9) v [U"R@.7W$"0Xn zNsMH#U. X}Jh,7%~hWqM-EͺᅶS̒W c @PZdVEյ+S3 R3-W!vHf C)xl} 3lHDX@cgAfuoFF 54Ǯ` 3`W0kM7] k& 0ݖ??C65yDC vq"HDkQ+Msu g;͗FB3TaBB.,;ԒT!WT٠"A¼dL|:-O5bׇ_Xuf4{ |~ :hWӢYԑ&,bКi&KoR %<s͇YniUЖ˩}uuחrgsǻE֗z7}`B[.p 8Ip3644\,m2C}U6v6i*5a7+kuəs}#j798jo:E[>;6@mGE$T>WCU0o I{>љhU;vYkZ#9Z4 ]>֖Ir%2@f_01Ԥ2.+CGTCh%Ig$%OYpxxEL8He,r 4Y#N0z}))2FsFFhxW~ޘKvA7 lԵ a`@yt$b0\D I m(Gx1U?@,77#&ފ(??Ջ5eauJ35[y< a8;&>N< O)wne4~uU!ghdVJ\>2U5FॷDL֟tG:{@TEܴvdR5gY"yFPkygB͕NO~16}H $5rzúXH_1"GҦ¶oHخ%@^ANk=xzA4܏Ūt~ :?TZ}>IIg]_[ BUI27pinXʷ ۥ!TX`5FۦWG?2 !d" ̟*^.| %\wUMkYQ+}N&t[|%rP$܋<ݜh]/Ho&HdW\hߢhj`kELjżR81<m.qw_ kFcb804ufYcR~[;RH˧aV*Jۛ<h.kP,N6zRQ$FYyo$&ΈLJK$(V6@nmG-a>J?(1Tj.ZV8i2b4c*{ ϱhOrWSFk837mm-?fP|L.. H.F _%ڒǍNE^|p܃*fuRr;Ɔ:ȵQS1D`=_-ȾF6.@)-G=z =Q.-$%g ![MFlCW+/_<2\`.ͳ/q(]~]Dg ]FCcdfDkKf*1j\-:NB`` k$ +5TtۈD5 łHSX`g]^-MdyCQx]lR96~V{/͐LHUpG)x+]1_ڮ bSoܳH)&=8Š`4w6}PsP1=q 2(lEw&Aor1)j{k*yTdvxN_6/LKp%ٗ|&\Vˎ<_-L%`@UkVmw0! 9V jc祼6 ,> :=m,Bhf _+-@(ׁטNHkcI餴:a3ZYU~P(WK i#A9PI/bYgr,&2S[%ᙁ74 /|?.t0cbX#Rm50v`<՟?3=0&.`lq|p$)8qĶ:OJ%O2xiFx4G :|/Ahy~䆲뷲 S2{paĜ)/r0sלc|4jxfQXrˋQ{158c7 4*-A0t>ovОbV$tZ_!Lþҳ%lۑ?eC4;xI@*X2dWSm A2(Ԑ£l)/䜆CC?Xzm?Ka~Uհ6+"tuF?#toQ{Y@¦dAF4/(-E):_2{ 9v:SxwDeJ3kS>;ʥ=?o#y)Dn]B抉Hsh^yS h)VqBHuѝ.GhݢVW+ą &Poic5VYcdba% ED(ĵfAHdry&(֐D8fP/yG܉|* Ve@=iyPD.g-hUiBeyz_蠞W6c# }1-J^l 8YT0C?Us1MC P7y2$Y3I'We!V{uS2:%^`M0\2Eh-MwxK0A˿2fao_pǿ|I!V@4j+I_ FZ]YDNݡ2*Rע2"*T!LϤD&J }W L3D@B?R'?NܬUy_%AbbWHՋwsktsҖU@_ i!nVB.ࢺt 7k i+C)0a޺, ՟GWk|2 hTh+Oe̮]ɏ%-tG%Ba`b4&g|J,dx9k/7bTw_h 5\E7?: ^a/0FY(huһ Il}-} "3'shS.T;3d0uxvX֍tgL6G41x#c sm,J0^]MiEu-﮿*t}4􎮳ER.oDWr>֨m ǧT8 A]ÀrOfI<ψ(dtZmtZjbDU v)]Q>sE+jhL} /^+]+ N%_KVBv/l6WKjet{xKE,SRA,/Xm[17Ѩ|gTV!`i4`7{YBs:̄m|բS2.pÙ^z襵ۥvF kfph:Xgݫt`_cQ-@-S/kHzat)\}(gh:n9 (:F([vx%ATsu;l"/iK8XPE=1X[Dհx{`! aRjz΍鼉(~PF_[+- JEegjC|Eߎv O+D X*\@Jc!%QA;8*7xN383CTXSȫFN_2TfK- a Tϐ4;"wܓ^$CYU,ǯ{/_>d1|Cڪ߂FؔRJ] 3Cg鈼:d!k"O`5%oe^Om%8FOM#/EŌvQ'R?#ESGXQ ]zWSd@B&(=MFEzaTÄ#d3M[?ԬtKk(pN gOvуl5=,BPR-k c'/{}RRY*P(1"AzMt`]4GF\6̍?^d5J<Nn{G.As!);|r?"T]:3j탈G8ϟl-} JեOvktLWS%ı}ߡ耢@2g[WҨOcUo.KtO;(Pi:@(ݍG/=E臚BR*VW1\k5PxI0܌E䓖 bK@[. dsLN$3R)Ncz*.of  }'󡸬f"0 I~#O H+&KS@,K !@XS!@6ԊW'f#geP $S7+B(`!0J~LbL4S{ȳ2KsYfv6} j9Y%pPpm00_<%3!te4XQr`ZXb3u~o~f$F9ӪؿM$:M({ay,O ,&?"9Es ,|W7f:-_B<(?U%PZGdc\R&Ηlv UJ26 7'w֫R w!=ȧEf$ [fAs#c$`s;Qq{RW$-r d %69n4{6i f])ct·/]T96F]C* _=fK}h$*)Z3up_PuPN jJ6@6j<^s-:ͫ[ڨ8/G#Z5oΌv+D-W6& X(f 55+fS\,ko"X{).y-T*k6F!G BRz{;FnYDT/XIxTv,K! I~Wa`C٢јLn8B.(a9#3adDuQ`9_,nqalaD%4JsTHV\_e'L{HZ}j׸XT}-sjH[qU&0*,lel,޵F 鲱eB ~m~1a dП]d?h,!ђ"LX4 GV^-qgn$O GN?3 P58VЉ@2[AdJ0r2aVy5`v`:Y;N=UE>J)}Ava4CM3?=13vEkqGNLp"u2ÿ];^`3ݬS2iP|UtE((d11Eَ5\з ;t7K!MA"N=.3ʎRnF/+lwKC Ϙp+VN )52`$H#^#P}PkP7sRGn6Av}oڤjYUCh<']j|01i(IL6*c@GvD}gQ7Y2"-e3(K<w@yڌ5dI>E8?&bz$fqÝOɇ{by- #[K؆(,mːyzTSoAAOەHA&AyZ2xud DnAO 9fde@&{\MTnGlJ7(k]qѩIǮ5-ݑYW3yiuWv#ݕWMe+xxޤ59z|<(_f4l.Gl//* U@m̅X+_([(*Ӭc{G 0pj=Z.*;T8hPbV͍vgnC͍pN",-MH-70BO̍N]]SHi$e(/NOJA}: 5d+;m^m MK,l7/ʈ3<--E¯3isW#i7ۚ[Av"dEJ _=@CT2Me* 9>\3zuxvn80n7&ޡnIT)ܰ>O>ye9TFGL?-x[qL0U*c;I.R 6B_PeU=Ȭh![INams+iV?WYόcP/LīIyœu(Dt@茵 ! PG!ƨ?nOfSJ 7c}T݆&$PrZz%/jC`YN#O ]l_Dz'jUM `U$;2Zi1iRExcwSBr8.?1?Ussj|h=&5\NqA?O宬:;Ҵx-lI04ؿgy-c;6㏇ %$OqpFν[_hIt,B)8wL0We0&TY =B/o@QPLsu8 q^$6/ӍZeQh< BS?HA9i")yVTJxkjƋeQw<%_<+^o-wgďSiaX].@rRW}7klsB&(fm`C(L#"|Ja˭E XQV9qT&oޮtuWٵ[+f"NJ'm|M0:V7J`[ bܰUYSSYFykɌr8Xu}rgy<|lxxهMcB3g*S*.k'!&}]5{%E_^_?11*/!jGkKd0Vd't.̓r^'_igS/HK2xasK;EˇE(F;M/CyR)a87@}% AI RIB eh:zm =j{OǓMbJ=3F"dySa̓z1AO5#~CUp/ψel ]ZyQ?0@Fp3;c=8ΐ\D${p<ΜL壊-x0eQlQ@IeD $CUe~rKudB4!MVAchyM |ěDUL\sXg\^[2yUo~-܎2j~C 4FLfiG({scTt.PP 8c9x-{`xg(Sctڋ`^j Vg'GF  Ɇ2R]e w(*'bˆT= ֖V41pbL4:mC۱R_A.びt< WVQ86bғ̽_6g;p  *TdG!)NppX뛜wdLDEF#" 9ۂaj\bY.T^R6ʺ(P)( ͈jbccd*M_}dcn룰HwiM_3*Iv&rʙ\C\G=$ U`:a4|QIY-!q1LM׻vyyPh#;4Um,n4ȋm瓵L[Y xXGr 0dѐfQxpjAB9(^ ?n:b$~ʖdTa1ާ]?9f?ʕ{v]oYCΙo4Verez!eÒ`\HwNqE?5%"`B]'  ,]/ jJ <*kd EjJ]4wUz_-۟x[ZDfVM q*x0o[Z,V Nu 2ϭ Z4j i;Xa,G 1g_1E]vTՔ<,oa׎q V] ;%W%^X\? C.m|@}$38;c:*\"p՜+dM &b4JBF2Il^үƽA>oi?[~lR$R':pJŹ@ol}n^FcGPaax+ F##($}ƾ^02I60_UWA#%f Ojjb թԟ{H8pl; tKL IbNz<ʨr-کRWJS;@@(ծIO<I"akG1e߅8;._x]&>;%Oc 0S L\uy[*M9#-1.PNbbMP.|:~@ `'X3a6Y=!/iil$;Ȧ߲|ec~ǥ\ -/0gؔ/Y#d2Dիu]as]j$6xܗD)HNq,MQUxPaaClhR 1&ug󳾇Ġ CX%xӓmjw߀>m8ns S/L En+[=!a]*Ⱥ+xհq~4ƂJz1Grb ys: ̂'e FA,KkE ؏i%bCjר1L9Gj]v#Ȉ%y``·.O8cTVe>_-:u~4X"w* Fm0}w$nyBw5e wޝ'> e4эR}k3A&t҅fZ}ey=-eiQ׬ Z.mZ BFT`!`㪞G<#p%/ }ʁmd*bqMx_v[;hv<C>T Ҧb^QPf˧Y]q4KG0' 3. |%MObdGBf7;i}u9X RsCfsuQYX pQIqۈ,WU 8+0"( :%M#8mC>^tWl*~{,9gMmv0=oyyKȰSm's#ݾOyDr0)y1l~L_-~d|_rvAJGYy?D\NE+p8Ln̍]dph4B~N0,L6teji4b֭CbsѸ $-E`/WQ r@ۍi\=kRGrv:osųL+ PSoDYTGbT1!.+S2& úP 1*x-pDS7ԃ|yuH o`/DS|y̿] -X!EW#6F,X1E9<`45",NS%ޤw r#Ƙ>kKfϺ# 9KrӏR.#_EY̴.|#v˞'M{>DZ?YoZˀ?2H zxm0|w ,Єb;]ѽ/@ۧu]<%fފ/p/墁3x@۟+.l},> /DO<['tL@-mo^t #s3%3"67 ytCŸ^٩#ġx`_M`:>x[E֣SCi:r#̕;X%'!5}k/y|[h%ܓF~F&߽\ՃHϡE6u/l`,Ƽ!iKVFt}E9_J҉rSˈĻȶm}@WdV =mPi|l)<^ ſk]44{1 jA9I!GVr 6 _LfIoN^]?\]=VUQH%Yԯ9[`k5NX@%_fKxCmDӫM73)_4FF PA4[q rlY[ajE/q("k7Vfh̹2B(g*>ùaL*`OB_Z5Sꤾ+:J&m>)Q}dot{% I wS#PE`VUpvϾi@)]?r"b>r؁HR*r vffHړ h,Vᥛ.D2'wt$Xn%KRfu5/2] nZF'w /d~u xd|xuY7 :TͶODËv6jɼ̙JDu-y XL Wء'6| *A.i蟾@2؈?D >5<} ݚL>8|%DǾk!w5&H`L E˺PfS~w%~;g44yg鈐DCӪEI#JQ)naoݝ"xcJysRϟ6m{o0Ro@Sڏ.Q=;N=#;A6W*Ri ȦiK:/?VɡJI']xi]-wHYGB̊m-S=h*4C9VijӍЮ^ƥSqyBU 6vl fTFwwj1yK{:n*<`6 Va)V k{U 5bkd.xq|wJ #e:ĪOwԜ*V3x dpxڳǝ 9~M%& "JWZ@0 ~١c8H$ U{Qhe/1/ΞNWpr?-1tRrzMVk!(ECg fq)&|k b'=&vBx"a"*"7(ůU׎QAF>$?'b8Yƕ4>wZ4y<ޓe=r D8yiٻmX ÁSTe/~%CQ5Ct?3ts_.\*s'0'=K;^6DhDa컴 R7xƹifg0kEG,Hw&R췢-":q# S f?B= ?>ekZ7&IjZ3ډyΰ4 d Dq2g0fO&|ok2Eo`CJS1u]?j_}򜒧qrv,9`HG틅Z^p2v5# ӱBŮ`]m0;:0BXb1΄d#!bk99f)>0Dp\xX/1OL13;DQ0\TsL+&#$swz,6D 9,5wuuA 1o.Nn2U_g]*}b=%,a8:ME}ʹuC2452o+,R:+. ^֩xƈMLC,g0LIYNZ"ՙ-ѥP\,|$ 4'ep=K-Z)g%5shT`A,7(? )Lz Vo譂Iݧx]M?<{Yto2@}'._%קRM=r}R4_lDwÝS=sdYb9j/gu}USS Ź(Wӥ|tĚő~bFVӈf&5&g/N;I,5'Q@RvˠD܆ޘ0HkTiex0IcP0<5ɛ5u$*pUX)b%:xu.\/!QSģ >u!^^ (jԿ }Im \΍|߬GEQm-V 7ɛ cWH =4:*bX])딛yyڢ(9L!FYU)F DOF7̓ss?w|87왍tqD>$Q6՞!3((a 5vQ5Oi& u=b3hc|&b0 TBӘy"/>RN~@,F`&%?;c4YȰ+ܣi&f4p/33&(O}YJXG[S;MS_y="z\uے LA=UKLFҁp²$*d0Q[yd\5v )*OMwp\SRaRt na R-7 fEoį{QjNև/3-7sTt]fGXaðT jB.a^%^fST4xɰ˙j*?ʑ",z+FToUe&ͺr{KJzz늸# O2IxUb2IEP=I@SNrm@by]S>r-K DCNw+eYeZM'#٣8p􉼟U-lKgHѹBe&mx> BOUU0%_(j]tJC2M'mI|J>Olym<]qiW'׭jgIcy=n9IDvd>Ed`w B)[Xf~P蕒P { fhHjјXכN72`]<5T!asKIϼ;A.5K$=Q~7]iS\  jS  Sq} vN\0fOR4SYN lb8jrk~W7<~-}JΤfO{gw+b Af8 Ե0_u+_JO7,U8( H.^V8#n}_7rZy"B ?d649P%t BB֣D][gĔȱJRUNz6rSM " k|Էl}^NJ $wC ]ɼdl .'11<ǘag~B~"A(MlgӴŒ Xmf QP(iL*Z( q Fc|G&7ŋ_2ۣTQ@Sq=>y#g7 N F˥N4|hlbAY1b1z9"w#jKōSjd¨2;_qi:`5-V}|8(Yٮ{wEaخRd`+9O }`h~ݖ̄<,ۼDiUeCvE,u1w p#*X~]5<2rvfu U%tR0wviyD.k[-W D&` EXe{ù/Y߀ O1@XuDF#߄42Z$%He(/Bdңh$(UE`(kwhB hZU&[x!83ajjOq)9Hdġ5a\=J\e£ḣhk8S<zfX^ 1n1l*1%ʪ7X=kRV D`/f茭u1hf{ru*J̋q$L2Ҡ0zi'}1c9b}FbB"d+mF˃@|GO,-#$H|$f屁9^Afh`5' , iWb{t .nO7rаlKwiq~68,"d]%b0/8Ucōp-+-E~22`"`cͧH^R>Eb9 FbfXRm2!Vt rr9~>NLA%Qrk-![Wq# v̷>ߨpEEM)|<]i/j>n'J"@1dQ61֝xp^O"}^:DsQ%b HA61ŽW(8&F2!tQ1Cfpcc)ONYA씞׍髹L0iO#Fz!~@ SU|ffD9x{dsQvBTXg N`j1JӪw3%efY-Ya+T1(q')ٷ`-˄7`wqTk+Mj%$*ULZhdrW4C`QFʭˤ]k9 qXy1IE0+ǎMQ,jѥ|N'uJ Þ0e5LcLRߟ-Da7ͿjCgd~lt݉@0UɹcKr#.Jsluh)ꃺ4ށ#F8 =_Sv&lRf pyo&J Z3օ Ŗ,+lL E~kZ6gy H$ \y2-6\ҤOaLF 8KI ȕwũYU˫ Z\l8ٓ^!b @. 2w^\4$'h>,ջ+ B.2"6'LdV^OFRP3.M&(Rځl@|h I %(ȷSx|8nɵc?Ĕh\$q  m!@Xdj{ 1i Dh聉4Ecp 'a[\(ry]m& /jED ״s'B,qzERu+%oҭÖ;2fHŭ-݇X|qY= Pg#J] 1a}JIQܕHqt-`[UM@*/: 7S#~aC{ OjkrWQ3=N d9~>\"DdW-Jߕ%4]Q^=ꓜ4iWлϨM˽G: Ly"N\8a^OM0 7Fp瓖%^תmM^QYyv.$#5@0 $Y{]w/|rPu{&. plhj& *p3_Ӷ.ȃf:P%weW|ߌy#;&/ "?IIvIrYL*(4i8mq{CL?v bJv#mUlXG6v՚.5F5 1 ì=+vQUul8NY &D$$]z\G@RR%úЋiDh֖Z0JHg,nѤusX RZ{qUNl )iVbP.ppYȠ!Nh9_[8Ed:Pi)/ylPN/fyìqS=iuYxCl=ޗ2_ED/aV(JwJG{g /c xb +rފr)L֮D0ȳ18슲òY\qVi:߯ /q;1#'0J;Jý2 `>./g%[t_G COK1}xc@SmH"Ӝ?|-nU'Y,yِ¦mRN\ 튷c;}U%~mwKMі@rVv% FnQٷ8:zIT]s!.#&| ;{vWCau^s?-Vɀxhv4 KcHjf@ޒ"DhV✃+R%p"\۹kxnȚjRz}q`dky㪝T@jB;<>&@: e`mB KtN[Zt_X 63Ndh^ۗOko ,mw*8J3RO? W8fJQ ۺL"!竆DSyj3?~wyRL =B[(1p%+yQ9ޓ=i{X[O~S1j&N>QU_>k[2_MWCc*fS\mvS5@<=@eK, d,hux xg2.wsoO HWfN65*BR"ʹG.C.oӰlFlIN "J4) fS'p Gn9 Pa1<X6o>˕kXsH:wl=9#8.Hc=bFu2wt99K:b ,"KedB.dB-NbLS;+\LH;;B:D8-GI:H'SnOM wnƈP5p:{ Ch V!ZoA|nѤckBGMg>z/JaaEwB\hQFs%v"S{VY5T:s~0و[E`QFUę_Ϭsϴё'9c 6aEC5eGڤfY/yQv 9:@d/WK#dWY%僑Ijx&&mδ1dFN4[Co]ߞֱllʳAoeði1YqI{m1_醮|Ψ]Eݾ *4ʞ0APG .3lύ V*PeDITJ:Y=RAw* K]|̞OV/xO͢:\t^mvg`?,uE%BSNNy9m֖|yOo+:)!N/8H\K$w \qI.Tfm)e]"BƟ<$>n&`[fO<{J"`W4d`<ѐ*:l9Vưπx Ilv*J؇ ~Pg5kG +Lr[eYS-jaˑE|CtA0edrZD$/=M40#|i$߯=:^XVA"iw^ dC~ ,u0#Efib BtY*U"kܟX)R%-xM\z w^aM]J.ј`3"Y )O\X*AoV~:*NMv`|޸e5>+ÖwOcdD;F85iٞUm] 4l{n#1EI `aۗSl:S.oП I8o;T;xFJAGa=)os׆Kv^##TZYsg4G5"u'ψHx71) 27'~N6h4Y j''4&PQeh >RAXnoccq=]MqEHbpw[K*h  *H& <!YyO᨝ៗlVL:^ ]>O2@q?R,Mb.~͹rCڥbs.Q-aNo} /tըA 0vM? W5 ds%lD`b ŸxܺCDt'nJ9#y30)HH3 4]/ [-A v!vU(Lrap\`-pFO3ڸn}"]|O`)Rc+tWpYxwYk%F1WzFHI[x-rsdі*RqjeV|2xcN] e풽N&!Z6ә h6Lz r#7n^U,iћR7DZxGXI"8M I.J5($츛l $xENZ͹̚(]-ke/('~=.L~HŊk))w'7okƈ] O"SquVnsq+U \#+5|&ɨYCʀBlun !ևOrqeItG*k֎DQ*{m) f#]2_BޜC{NH3G)Kv<7>_`U}sc0c}*ݽջQ$PT-aZz{A MNfPjGtx6%X:q3PZEs\<hMD|wRI ;Nmdpy/,D* RU%JG_!h1Rk/IIgp"B|?آ]\O: {G4@Aa]{ G4@@n4AME%hh_<9}TyP,rLQUh:+?`ߍ(2 w!gupj旅!p#>|/]3N{ZCf3@2m[f+32ctDA1(t#9\D0&q}謙iPN>Cxxz=I>`: V@S\f9HوlK٦!ٌI NvIʮ'3en]d5[|i X[+‰mݔՂfc;6u@h3;Ǎ#ڣM$tEY d7UnJ\3ʘy<Y?<[.,}L4tyV( uwGԼ9vwi ns6Crd~ҺZ=MЖm5`{JAyf­MG`8&:8PN(;a.m vd\~nfh ftxa#n-h "ՎdlH<2O\ xW#mGw9^Y |b.VU֜CzH*+7ĄtWlify~q`  K$}kIٳٗZ߷NG0.! vΊ#!}lSj˰oEk g S4+Mxg"P%ByI9ޡ|L*|FEF٢BcdD ! nPɽj"8J3{*Uo(Eʽ˂BۑY`gީ֫@ؙڒg9lbM_zQ:WOs -.<Ͻ.qaUv#?ҋnH~ '% GnD  Gj~"As%lØ&yC~V8Uy؞|-iZk1,# d+Y7X0^\WSKyz@dlhUʵ),LjF>{XiB2^R x "Oa< Ֆ+_+VVȠW"Lkj-Ug&!q˃9"?C >_4GxJ2xfL|Q5~MK \n7ڎyR^;B 'AO˩29Ho$NY1sڌXoGt*Fxo$咒QsOq Q.務g7Ό8V0Is w|5,]c 7x;XQDz/?8*)HmZ}%u -Xxn'zm5BŢ@w1ܐJR5L/--+_5S6:$T56G?G>aIDHc_WITR'ԤA:Rr5O[dzJL|c,0[vЅT/".QdBt- Ws,N&6Lw{64-L-xac)3T R CK7wޥ^cizPӴ'^дT?8WIv_~HZPSM:g%J7ih(L?T#*d #unjL5p@p@2Zqe%SUZgY>ABZ̓},c_s fA fKAH-3f0d0mL?RZ\D.s2fP-ʸgcׁfۺY}PPW`D ]aLJ};"91Oٸ“,ljb[%aT3 1ϐ\mMK,7՜3zeR!uR9'bL]~nnU_JW`bjk){Aޕf2i|ɥKü=RC$uv$בsDkJf#m{`prrt՚}2w!byPrf3Idxxd)||”&<<@?O}$}SKWU\A`uS8Z=1n;; L%羨Psa3VĈDMC}:˼n hF_^GD#!@1̙eOso8PIGfBń&{"-(3nbs|K%s+bՑlRfwԋLﴏ'0#_(@2QKi:1YƖy}PkFR_[) O(QʍsS)DJ&4w4E\!@g4`TW#1tL\].7cN ^*K4)l <ߋ_-_|[R#D*U0-Bg.z1HY|]%<63 .>}p`RBrtRbNEQC!E*``=]c7m@ ǽ?R V֊e!IS|(1Bڑ J!L2xw! }߻N!9m݆ʀz3QM ¿yqLAjiS:OȒ9* ,Pb8Z=94yƝnG"Cnm y5ﲁq0 {G+!t\Y4eo{1Ȍ`:'P8(ӈ?`_.'?ذ5C(h )a1åPN*!/ lFZ2iK>j)/Rfn7'bVZ:<:b?xk $C%z UIS`fiPP(6XFƘ@rE/!lGHSMܪ귖*V,vwؙOS kƧ$%YQ3qf ˆ&Uq}4Ȅƌ)ܐ$RjUH}D> DSMx]% Yׯz!viYܓЯD.u6@n:%"ezIN&KJEf9J(Z&-A󏛃CکB9 z4@i vɅ )HӠdąBk5GO -mN)v?-^Țwq zBv/8}yχ_$1N4XAFw[Oj(8?E9I7@qrg gC; >(jb8fb36^$1oDy9W5" Fcj>dlkxz b:^3'bܡXuwȎdv<#@)3Ns YhrHpk˝,2h-g\\~!ކv/'psCɳa.jŐD?jpS$D쯮Meh_Ō#aa-hd!8ok'yD@v.Hۧc8?ȻWK9 =Q"hxLrx2%E\qsz 0~Qq{}/\ƒ*fpsf*UR&pi㯡GٶMSUpj$SSiX@_Ũv_kfҞBIP`M$k*Qg"A.tyL8ӷQ2yf<ęxKdw8_QZKbqY+q{z~_IOgPvfq̂z8ټ…l}#Ffx\i3ۂ^<;DG r&4xDAFke#~+3B6]a/d 7,)hA+ϊ=d@H}L-׎=nG4;z-AnZk[[pcd߹&X7}ٰY7\ywE~n?6zUO^;IETugpL)N)rMXOgS;N;M:HLX<*8 @"?Mk<ۀ_Pj,eiQ|HMy5Y-8t+`Ȝri&Ї;ydݜŐ " 7Z8@AnJ4^XN CpFnJ[<~cDbj=n];}wXP"r*v|(ܿlRN<#MC@k,'{O"-㤘ӴD] ^Ԩc@eCn 8x5bYnY]+lI|a:tA ;* vg%6"k{Ψ8(\csL9@IuLCwpk㱩嫬:S81j|c=6g%KIo6d}Tq&0%ml۰'#{ٰԶz ΆcC+]uZdN(v{p}VΒșy_UR@|pxcoFv%+1=}IӖSI?ŠdDr&t۰ly/Ug@6+IDS#n!b8R8XS Lܜuweg1\dBT}x^3Aq7'9*ʟJ%?), Y?شDB3-Cjh_iDӗsnH_Ke#l9IrI-Qɶ;}|]1ࡄBkZ)z< {\-+MCƥYdӕ 0R[{WA[܀;j* moLOۢ)6'c*=T V%t>lh[3W"m7BEV HLSY)_@𩦟7~d-,C@qaO-p[$v(}I waG>W/` mQ uGHFcezPW3((~-p,̰o,[TbA(!CpfAP͜ jΊb3C*,J|,$,T-ګH)t۹$ttm/ H ?2&B+Sdi=S0Z^5'A2/~ BI ѓI*ʸ[Ob_e)0Y^B֫!v)FMFnd9 )_hc BH ,sKj@Y`{tYuQX{++b4Hg"_dU"!F܉7IȮPj@V_n$梗$%'h+<חkŒt'JC=9aOֽY:M1Y>HVHXLfͦ| 8NEI@38ƒcX=^OG]O>F}t5>̴ϚP˹F XEփP6y{,U#4IQB+|"9 j+ǒ#֑ʙfËsN_Y/ o* N2lÑGL(H$9})ݐ匐&-ԢB_pm;Z6I2FMc702wOA 2mktFPkqL(᫏` /s0t8\m@R@&o<]ՂkIHDiu?j\h4 #ƥn x)kR5} {rzF٧%0$^^ 5Wi Ia~+xItDJDxxFEG|ҥ_<w<ڎ&9?pa]!GfYS>*pdh9fLg1+"IcHyWtԮuLQ/>Ζ6":r3XwDX_gOA,z YAMT8̡t#d@,`0`&w9C\\GZ\=\CCсM{PZdJT!:[bdgDZLȓ{˧)sɧT{g(. :Q8nkIkX=gL$TR2q?ܵ:LlsVi$X"5B+P|05iPb.s|) xݪܩeB"A|痩$8m7hI @ [0ù3G42g?[@b{25#`~2yj1JȊuI=m]<6yI ;y&E¤@aX+%82u9iGw; AqU%2O_]Oa_a^ϬK",-U/T&u]kϜFu%lB!D!#%ȓo:xw5_45D6|{7? 貹rSC'SO\nZ`?,fʼnW"̻V$$8Vjdڕ8G篽WǑf@V4N煖EI`y^A͘gSS# 瑢Ua<>' *bvTAi ^P[tǐH|ں"{uoF[@&11h#Q~HŞ[u%,fH.ƠDּMX B=Jbl:L 'FyeC91SܨYp;)84 /Ig[ҿ5s`r2#XF 8a-՟.^08o(޴,wj Ȍ7ȧbħDxk1ANy'> Tn# 7ԙ +|n}~mDžI?/>7Y\x8Bq!K` #o]q)/3k+p9t+ eT7 c69mE^!ͽ AA eI4ѼSq(cw5NG1:DsAx>1;)+/Ax+ގdtPJЈ={+|91j&*!#R fc_BU'ϱUvD{i΅hG?\€HV$O>HewXp[M`Qrp2+"G/G,?u B=uXhhxWVM}" lȴtS3}v2;k̲6a*E)6#x$X,l/τȉ{Bx|XQ+݆d۬%iu~*KH݃ݞ0W VNoy}"Xpyyh#G_˃Pa3z7,R*7̘,>`ա&D8v3"fun"HO&xJpژ `oĪ-'3E?,rFZT醗f hfIy$WpT7*PAGwZ'ŗ,+ !0q|zh N))>$Eh׆3_kqWP5lpS!f^})CYx0uwÛ%l]ڇ}S=/E?mF%Q j?ne %߬-(8`6kUEve@ƨNn3'0C(..b k-2~`CFE$3YZz n3ܞ;M*$ FVԜxpWnRv-W&³ =}y3)UQzDL]{{k"$p:5|'zOCy๷8ySqCuPp2N&6#ZmjG4|\a > @?!?#I#:m6S4sZp$(q EL8vt!L2 ?3RDH8X ü(}P."s1#LBv3qhNÛiyf b:Ҭ0Kuk7OF!Dˡ#ʁ;uG7:L i\I#!!2zQ?_9IZa`=ٖpQ<'?XOĂCIċiı9鿾D[ M@a_׍Fap*_MqjL]Z[Yi,sgsSB8\}^KʩY]Dd-CQΏ1fF #Tl'mRGj蛔@]a y7鞳M.C?ָ'ϗq-m~Wd\ms01 |Q~5C1~'xqM#p@SjqGw4L֚ brԶc IDz9c9];7g-.*׀T2jqh%x|4RgM(( ed{W« .a2]۫#)LR<(?pΰkp"_ 9TLȲxX3hQB ZķIݱ|+"|!I.#A.WcXw\C/YkSp?qr̀]Q8ˆ/5%fzrLmih)g;-bjvBH:g㗤^pʵ`|Tjd vtQqZ_E]ћ|9$[θ"0eYvҥ OL◩I, 7;7@J W[ y}Oh*;v~5H=UE7Rk5>ݠn[Ffb2[&G3ڙ,bc\  wHiAUExSlk W9/x(Ҡ: w~4˴)KQ s}6[;aV>9磵su/ [I]Vz/ź-i{s%5)w$Izqk90o'-KB6+4+9;* z  1N?'Cw` uԦ)`{=DQ*ls,j2y0W#y30W5^-y)ӈ)NzHXau8|CwU"1߳{)NMB[VȬ! l,kfj19 l^|[{p䜇 (ӃAq(M99& &sJ}#q#ims°Ԡ%}!J/iPR ˊ8OOL辁nF t*,L`?OUDž]nYq h߈P^G #쬇b<٥!^UVȲRRɈ/I= p{7tO` {h 9+jzRC?]i僐"j?숦"Ȓ~ x*Ǿ_~\VX֨1gtQ6wA"A{wXq,yb:tr:dG­q8x D3I[6] J^+͇7ޝcl.q}L4ggqמ}C }**hyC euQ?ZdU_H7Q%{U%ܼ;hV""k4O焦:U,` H RmeCNm"{/A6˞vT[$ړRvmPIg/ԂԓE~HeHHM?DSW ]7=#p3VBTup@WVJCj!P[T +ܟ헲$aۗ뉝FPѐ ¨|If9THnvƭy>Mcv@BsְLڔP‘\^Jw"O>ܟFZopyddx4-b69BR;oP=9>52JZJ"z4#` q ?掺 3TάrEG !S/X vHڃ)@v#BA\WoӋ)I [yc P=ʾm="@_zV 1C] AS9GE] KEgU*lm4kE,35Hou:tk&{xe[iMrrf.r m ~#Co_N6 Yq䢄/Vv ,"pc8U*ߒx{h؅􄏝J`UFP\0RT.p%{xtp#3JWhJT+Ԅa@}G\+'˻sZ9S5 =ژǪޛ/];ú8[Nû >!+x'`Ũְ -@0럦_MX]dc: 6sEr Y<1$P"?@9Ê`F:@e[E q5L,BKy9 CL2\I8[?j` y8\MoH&|oHݶUvgFTތ5B+6U9Lc:%w wށ.ÌCbs 'Ңx! mV{ ;̽p3G=P\P_7K}?䍀τ>;LпxCQL>_9d6>1)pp`~;=hb>1Xâ>O"M1/3T^΃0Tה pkqyi+ʅ?&F*FaBcYg;Ф;nupGŽ#?$C1 g^[Nc~xT_["ݥB'+y]a+l0|D.1W1e< `p74 Fs֘xmV#fr߭'WV.j>=,wE6S;Em+Mm8!!U]m]l;c%*'Fqj]m = TzӞȺӚ%P=V~nm$S'zRp7 z9qr(%fN 'ܹG"$V*rjړUUuƲ g5 >u&aͤNS^;@`0m~FSq6iMKNOުJ>5\}j>2]>ňz<>4#&n n&Es%y i#wÎ5Չ+6q= i hma{Àf!'.{p͔*SEb{;VA 0|оdVppE|Gڹ7k0of`epcil&K{+(+d˦uSgC"d $U3-FNPfN o"8wMYp#8 NVR*΁3O`4ul3k L( %pv:VĆd]Y`Yc?軁ĽةAw0ꮽ;>rAkrF?ewƁ;0WeX+h{`_c#_} +c&C5u#3ܫ+Y@~`$&*u"Efb*j<,B"a"4ډK䰡s[ -su1E'԰C*#V;r7͠7.:6;qZ{ y$_&cW):Jpԭ4N٥7tDwB7Imo$1b?tn H| 1 ',<0ڷC s@,NXK OZ+ljr|ڈ^zbי[p`]"Kw>x*!?e"EOv̻>1;E=w|h*g"XWn0f;2{#ȩ u6;3dKV )xjDz#Q ĥ&r|(|0O+e1FlʽBk&T<-^߳M_>86O: Wp I.b~Ʒ4C0kccz@=P|Es;޷<7L&d4fVPϪ9Έi[ھTҦ4Eq. [+-cs[Bӌ8{a`0haàPJIu0nKI oZa7d ,rwaSK* 2 2dijsdP ٪!<۝ңі Ic;VQib<= AyA(*aRqeE]B 'zUsgpVe0"΃MF{jHyoȰ p$[P"[A[ 1 tgyWD@vE jt޺?LI70!56j)0fzQ,*YMZGYVyfw>05H6Ӛxrf%DpRj:9D!oq˯ɋE. 3Dq/r<4'^(?Yz*zڛd:6zʁw fv$u$QՋؽ˹u) {CmF2{yڻ5+,m&bIhJ=#zʡgk~yc"*ƺ H \9SRwc~bb sz[V?[fyU))@}h%Nooԇ3d`ST?j,Чm mT{QlT)pY'<Ε_/[*k,Md Y{q`i4,tƵ^fՑ3RYΓCa1̉Qr/ہ6o5Π#A.Dwy~jx,֦230?xp,h['Ms6 =HԻmTACO 6aAFoCgTY@BOpi 2+':kҪ/]/wsgy9obze ~X  _ŧ.9 aSX\ΎaF^-o:-PPkW[)`B#-5U IMf5-0G4 "L⸰Ws*{>HQKb13vwi=.k=AMLtChivA&`q;h/V襪D];Pr0}L(F?_q`'+lfjBsOr)yke UhMJVÂgnNU(q*xx >F@(ЏGۅG'}3w5Nfi7δ-_pX0{,ݩA* kj o<(ڳȂ f󖘬#^ mL& Oo̞ gb <$xmv:2+/Q35x2aLmo4! }XkfQObꪗ-`J1p%$`͑eYrqrtP2)8=jWWon=)|)!hxLlzӚk!o,.+q_&JesѳY$vTE"~M?3ٿ&߲CCM ho{x'\69Yo%ȏ\yr"0gLOJ1!IqZo89ޒM%=_1~v `6ȥCQrp6S{)SgO#m2)*YǷEtz=n^k" lc{vYHT&<&Se*OBc<jZ^3epbKs ľxHSc`duSbײ}[ vo"7[48 )gcBlk'wa rN u4wh+B13Sx_]N@ Ehj W\ĸM/>PխKY@c>;zy2TNk7kS ]unpZWa!}d:`z5P+[0m_KVU} lk ?@3s󳷎 PV &NR1:^--oZd9Ŗכ.fVP&͕^?b!y*j4cͼ8xڰL1udF9ȳםP#>8qI>ØNmΘxkMj(1@rsBd 'r-vʛjb6^۱"`wYq,>5{CqE=;%cAsơ*UNZd YtL>_m'8hhPl,j2 ~igDs$_`Gh_Z BʘSڕ=ZNVfZ ʛ1a|MU`"jU.a˪0фyoC1A(?5=w+|~݁N:d0cC7REE]0=s db̆ӣty 5v @CB3 F``]ܮe Xp9r,q>_ن_SXhhGi86 B6ɘSyv&2CꏦX>wSLevC SEMNZ"ma+;b#5GvЀ1)f}g`-0AEZW'%'}Ha~s/ TŽ= <3\[f)*s%'ɞ곆c[R `*F}ld\xD gFYhg!}һ@2)G_ȼ R(U ;VKZ-Ƶ"]L %R$)M9j"gjvwk#e_STmOw[Ϗd.qL˧}I`w aO>8CpfĸznSh3pkO4}Ÿ Ml\ppf2>IP<%k|zQ,E.!gu+'r/0l{xv@AB2~ve'ea:C,RW4ķGÊZQВFjqz՜^վ5zr( ۏB(RX5)Nfj NꢠR=ƝKukzl0fJ (e o(YuLwdۚ{u.R"k>q\IC)TIyQH+>TGy:߸/ };/1I(1@WnƊmὰsm/<+6K՟kS}#]y5pTOjfs6[ǔq_*X\pK &h؊l(tn$yH 9Y<*n;L L鄗H}8T߂T߼n'g 0Wʡ"SDkSJQv+߫&; v`k;ڪJ_w6vE oڰE?.4MRDz.僎T"iI &4}:H*¿f ~f :$sT(p~V^~8f?L^8|&-31?N[F;apjz!lRZGQ/@ 4SB=Hڟ 9;“nM^:R ( ~ƌ^(&k𞭙m{ZJ > 7X)3aW~=)JhMw0y\@KbrBRgۨ5؄$xK&8xr^HMRECM`oG vLCa4QVE"7ũ#qx&3J#O[Ԉk{݂j?r >&՘ap"jK*Nq>z5s\CAQB w ļn}PoGJazK=hD H6o88iѢFKūx `'u/P6^1f-rGWB`aZЁkV(>[F\̋+I^ ĺn|3/tW<Ӂ$a A X1x{j-xw̖q\9Ru"E LkP .nhOą}&Xڌ6l*o,CQ#jt6YبD=s8ٍ ]lwNsT!C.[@Oi\NfJb#^@7GNCYd/>.0.tzƚNpĎ'7}h 8rA vuj%Wq\%a 2W{ V)ؤVIVgtV M.USſ19'7 D#{Y1󿿃e85~$%p2THU@V: _ƛHN.b7JcH+=0% njǃl=OcScPũW#8BAR:c=z u樸Yċ+*dI#b=}ơ Š6B8) GX<%p'A\HA~fY|аdS&Eʹoqw IIJa|32V".?y51R3 l Rdrqxq@3_)y7do!Śm]CnY8u˜5HҒ5h"S}LYR΁k@GW_;1bHA\WY,:$A \1LħATl #XӒsڇcq9j0-j!G@\VX urGp F1Zc( 6di2 Ϸ^.MGІk(|:I'3Y7v*K:1pXWssG=ʀ6&"~qޖY:a9H)nb?x?OVX`okw'= T珳]9^T[! Lr4=EHX<ߑEbf‹̿jo4.XUao_Pg*c}v'OCtSJMkT<(W٠b&W2@Ѹ'unFJڰ& XeBE7,!2ގ87p($XbF%1wvm7NAJGܭ{(3ޱ2KR4^+H@YFE䝂iNڈL TKfk:__ =J=zhk}g^N5=rr RxN (l _Z+v'ƈ֚I3*B>9iwX͑wNֵr#?*(APm#J':6&z(ulpO(̵-l y3VӉ~o㜿DK*6_=)-NzQdch'ĄZqV}Li<֢)%ӋD,ؽlܜ rmjȀIy8Zos%">^?ػ/*綶jK ݃{sr&ƒ[4-uhd*7~$5"DY!+?b-¾^NTH}l4JJZ5qHicg0g{= +IS@QҮl;fkCʫ[T# 9Ѹl9GGEy匪gޣ[2<(R(/Q k z?SbigGf~-@;> e]gb3,rOsi/9e!Hшm WZ A }T~-ˏXWuLP O̊q_?'xK4ΔB29J73 PyV],X+š,Y~21%d?{NZ8hf׹hP}>Վ#zg1~ qF8cnHDii_ iA?I mfDQt~u^i 2a>3%˓(/NIz헮obIh;(+ :6ߐ+ÞA-E hN20Zrgࠝhƌ.'n2`6qc6gvyLvXj<'lP =/Ad~ؕ'~s м}yTWkJ S,W^}n#3:.+k 'bZkm$),L8|i)?o;h(;?46Njh/zLzaf)+/64,]E8/CW]汀y"iJ85pjy Xv*Fb] Rrh0[!]FTEH[Vk3ܝ{RGZ2+ifőӽO Ύ&_-1 o렳bzzeddbPqőJ=|%`mihdYKཌpY$ܾ`w`}9zZl~-qZln?Q''/0BDGkFnUx蚖墱d?9cք[z"WH{=w9ł,QxBA%{?mձsouaB˘OiLjtÐA^w_cܘ;ҰtD;&iɹ}}+fSS"KCc6E:*#"cizUqS7Czڜ۳/nPO<"zހa `$9 x_0o[~P썚+OϘ6!_8-^2N@ {7TUtTq=iHn aTo["81~)WuO,vVy`cy~ -rk@sIפ2=D s(Mܺ| b0ǀuNW(C2G%m{LEu Cfw =!KMJ*kT V:h(XRZB5M˱NE$Nc!ʻGX?LIӥjֈ~jNHX#4^ta%IÀ65X4՘,NQvzk:~v"0uq+qe( qK@Fť7x*@5-C#٣ vZÃy$ZoTe劅hvK4JJ6+|D\_a UhȌy>1%UP|hZ1#:ol=2WޞП^x%*()_DZ:deJG:;=->OF+D 1㶏YF`zʲκrq-O+Q ELvB!O8揱'*7еA3pxSuX+xcvl* zEX\8x\@jgQCb26jTCG Dc_'D_oA ·>0$Ӵc/!WLǫ/7|oul)f+sqGz^,= ^(b tx<|Ko/cجjF`C!A`T3AJTKsPoW'<X=YR_ؖsl#(Kr4XSBa<,$Rfy(sP| tz"7RE}gg8Pu7SE!̻QNsz4#/(}Ems%'{XqaFpJpyn)EcWY)XQٳ-Ǡ ׍垠#9mz B<.j M-^8u-֨haTit?ӑG4=1/ #`ܫ1t.&w:7AI/ 6dL&KU>ݴVFd0rc|Iv |daޭ"kMMGRc;:]!Ⱥh'%JX"w~81 &F7Xivc뷓a4;m"uv&^ÆN[o8 [ڀ`4QRc5eh޻WMdr yXlJ #OA3&-ڢc"GgƁe#iu!h´pna-(M͚ٿig4GW/UaxzhT @k :"kdҏz){zYa2,GUĀK}#*NyNhE|<]ͨP5udF=dJVEAu Q w6PcG_hᄀ5@ҕ̂;׆E. ծbT,z@nÛwSh4PFo( \DtV T.~]T!+0sb(AH;eYx<J63Tpe b2c|gIą:Vs%>/{|Cs^*2EBf)y*20I#p:R|*g~)~1f{k ge$ x#2$Sۭ |E?Mˋo Kd\8[o_/~r;vKLqA9YЉ' EgdhRd_98sO-Ka[t֪ѧxJ!&wbic\7eyZ gZгVy4DNUѫKbbbtdS kONeɧM` ,xe*OhA/23w7!Pd2Xs+2&Pzu/!EM/##@ {5y&HhǬH JUxJoOxVqwc!V`TfɂJ[&_3ۋ=|Je5}^ucP݀o}H*LQ14Sծ{H#퍝%8fA+Έ 0P11rqpؤtuY(?M$F?K>$J%T]*wLh$zH I'͙p>{>:1za)(Vj~g`h`lL^ \ۏVFrޠg^7u?[% 'oDmimC̈́`O v+ ΍:/Ø(=;m+hM#qTAUIujIcrW_k A wONn4dn_s$UR_J-ab'C4Mgab1DcZ;RzESz ɺ窋i\d޳iP @}˅.qq ˗,y$%-nH4qt_;$[2 &m's>:ܯ _Z lF"ʓ Q+GLg33ۂ0IA{-LEy*7y 6 iNchJ| o8?DF\٘]%Y*/`iPỲ CFj!e%C К"Z|D*pMP+v:>\qx~wkmXu`;aS'5{@!7sb(5/3KCB  V$'/$ڧ洖( yniu7Iv"ay6|[o?SAKI1AT`l{dtզRФCW,M2$SᯕH%2<ݙ<4~kjߓ44E s U#' 欶`'] u&>QAǺF͌#g|ozObŜ k𵐑{T$QL=ZxDiX*רYje^3iv4xRYv׊WM 6 @jŮ2Y4YnLؐn3ݵ $%G^['H[cu{9>T9%jݖ)'nes؋UyxZ$ mYͽGb'&(?X4@A;SoZ%Qɓ`ڄ+dڗ: < \CnK׭f)*:=E)K}hó+#(d`om.9^n? }b9?wS0[P&l~ b^ąH@jW0ܭ'?**Uk ԋMϋhGOʙ0uEA(nGiD`MgfE ݬ9Ɂ*!V@35S Pjx+g&f3v!揝Wj1XrքI'ef&0/:q/?n#:;>ÐwAzieɞpb'Hx#mݺڹ 8iB`jLzjfof6mD[C[/޶F '0}n]#&b|il$L uN !-J;h-?g#KɌxqI(8T7c.`Lbԇ6=*,6֩@8n+L񳝖e 8Ax$d0n~i# +9'Y3;:CU2#U&M#H[s)Kg-ATK:F&)nMpI\{UWc8%%8}pØX B5>fvt)(kLBU1͠^jy܊Ҙvl\F}S!^?U [vHY*kMrRnYݰDō@}:mzd%0 C^ɝ_N1Μd~cN?>)̯jAi >ˢ;۽6RM$4np Oxhz#ԪR`'XlE Qc}6U̒^+OZ*Ԑ)1܍^mzx*,D*\|,t!ަ8[\ ,*6WFZ&^:G6㤚UFfq(9*Et5| %qxѶȶnv\+͖:4Q y>X'J4"^G<ʹ(UӺM1m9rAYV!j -l@M ;fuv>afD[[wk[Z.iqp6!NВ(eݘ#5=Rf"\G "vkzmLqÈѻGb76pZdE-Zh|mEIDwŽtgwAQI Y3'6ܪa>:5Y#sXrD ]1סtՓP`$*yj啱Ҡv@tTo"<$S%MSPkAWȌzAT .gRHȑh8[[-h*! W1HoA[)a;GrCE<3oVK -n w]p7>~uF`JԒIyWϯ#ƪV?ɭxLaqKuƕJH׉əo%# _jR¸[pㅣ0ELب=U">5ax^-6 "L5lbfǿ6ܻ^?(hV 4OraSE"֏pEvNNp$*JutGarjcE3;b~'YG AgJ^;oa0q*P ;ۡjǟ6L0L:'yP/5=C_nWF̵1 {IuUa^EX#}d6%tqa.MߗUW[M<6 M#A:+%oBnNGH,:M#gCaHes[Qt]9h=m(Z56N[Y {M2LM* ~Q' $|j< Z%Jll^u]^eVh_LE@AtvB1;?#GiQ$w/߿AnhǦMDG&#jE>;!f@Kn]{u Y~T) |@H8S侻xPkC[Í'r=} R7Ϥa&Y.,U+k 9qbh ]?;mȁ|$TX-FXQN[PokTDq4 s!E &H`$b[[zLg[Borkgr+P#i?fTP`Gը.lH ,XTG}U&V^ R˱g'͟߷y&d)nm]鮄2i?65<uϟ y!OY.qB)_c".<]a[H E}(~ˡ6?ĢL簝2evvZ1%SOr/s3ޅ])@/([ԚyDAn Q!&% v!]Z\3V2q Y=}dZq2% 5݂Hu};z氐ԞrEF?ԛt=Cn<Ӑ [Y>@S9k4!빰ئ3 ܖ־4T6LS5\/hZS^Hd/5ƨU57!xIog G Zt^c M7v#&U K1CۊGbqυna% q?To @,vRR9_Sl&:ȴm1ڧ/#+Jo_-T_1ݽg8:f@KRVڽkpKe_\a]Y~i2K42i|*&D:!`6偝9Αfbxo&ЮdMf%HCg_, slÞ/gFӭwTzowe-sHfM5X#c[kp-sμ2:V1kL1W21'\:k3K'Vtf.\2VK@`;5єDU92Iy.0yLye z]t({4ZS*[q`+  p:QA=(͙OlI.?Ji3>87L,ƏA{~5JҲU~Tb_m׉2۳ؗ >yZ;c żnyQ{әcA#Qq63iszXOٶ gc[o1A*sOl⯹+[#{wO-lxV+ uAUkN`OAb)O*@ΔF#+VJ:~W+σhIYcOT$Ry( ^Mpc2;k\c扅&B+'2ET>ʐeDju*TS 3C O`;o:"!97ւ 8%齱!" ԈŌ;D-=|=hYm!cJꪅ W{@>_SxTJ 6B1PSm l9Zvx%7S^m ђ!At)<LjiYzz~ #3\n}UrV^n|9m EE.(\?(kS<59ΨD'+8SD֥2_三CƀXݖS~0UHRB\ |O%F.׹`'y[IJ4M j'Oћ|HOGg;  )^b$T.$j< Y/Z=; 39zOWZ]+kV{}a Br&E[n>7PrxU۠l$E]_ܸЃ~WL\8vXmĊ[hJ._QMҪ9)D7FB 2Sg/V<鏛As'Ajs})ǺdlX3? \6\S_݅E4SŨW H\&Q_(T֌FXYrB!mL &U#p߯}yBC)XjZ-t~BSǐ.9P ?( u>iit~^^$yo>Igr?"u^&L[ 681~g}ng>&<;:˪ΰ*]V\Rw &䛚:BpY9؍9XC \u[kp-f~z;3G1|"9"&if >@\[1&hCWvQg*|V悓i(g9鈏6>:ޱ~ ++3DiZK,Q rRs%5 -fSras`@h#!Rn.:VkOPIL&,[CS4AM _#yul֋߁/ M }?ѹ[ ~7X$ |~M.IWtcrfF_\P%|ycyx]ļ߆-U,YJy_jZRݱI apG7=jL Qdejp-0ODòlQ"ⷕ}o~1J%>)j8eTx*6]02"!;/B<J><0 ^-K^&k>V$MxT8jtl*vVX=le8>⵺Rp"L?=LE֪@ߦN;~c@]0_[j&znU|&s3IZݖl+3IֱT.8`ŷ40a@B%'a"wyiy2"My-~p蛖vc=L h3ňmr T)0tBt"5NxdO,*+\0%գo,%{$4ic ziD ט!P mo;]`nw`V7naOfGSM&4Լ/@*ңVMj9ڜphd1͚fkғTc&'mY2" /˕e(aXu{ym5BCgSfl8A~$XL1@X!숝hג@6¬x lba=: urBǜf;oMtLs5?w%QduW@Uh !8QfAQ_֕x1]COpe:g~%MW7#$9 ml6f٤ѝTmiRߴ C$Cؗ4Tmb1Aʼ̩E<zo(x> xOG%kX}lNiTFbuDc@ڈnȜI1Jpp\`y&J?=P]5S f8N&cofdu@S)droz2)ӗjDDbB&uU]u4ڹg 7;fnkTu!X$<I`w?"{EqU.l/?rahD2*LbjmpVto !Èx뛾%;d "$K2| s(c(OEJpz|L 2[bKtI&54_1%"@< LM.N`b`bQk@ė#  ǛwWrR|!5oι>sLwDҳH5w}y߄sW霁iGh#vSTS޹DtOuJQ^K]:/fs/ÊLy4J߁vC3"6f2σD,J#JeE6Ց/!qJCj'I/Agyd Yi wGb\Ih&M֓ /O6Qb,Pa;Y$T ] wD΄ 10"X R%ݷ]'802JQ[hWUk^0fNPʉ(^ lwDjFՑ_?2Bff):;!LǦ(ςԻ0>\MjX'>/3Se3a|T5 l>fp@X a_)0k4_DDwΓ%뾎vvZ >p?ַ{c1;v2l`_=N?o6_x_5dV` ^rB,IMwfwi 3 OԌ!F8t=Ph5a*Iի<>1Jj]͑KdGQ'12ν7/Wsd6lYِ4ۅ[y[⛓o r2+· 0j A:rJyE;XsO(jo%Зoę@UnC.@館{m3aN|ra(enba uEIZ+Y ͨ4&)GGJz{ ymO8`L _^Mkif*u_c  C~&oЁΖ0)Lo5*|R)+g_O6RhUŌ.*r\O܇3`'DΆ4+oTĈ0UhKj "u/[H#Ћ!3yӊ 7M8kS!e)IK`Y-d>K5C)(3,&c VUDmˠ,laXχ-"6+7PxV#m|<*>cE4Fݝ1ء;h:[#'=m"\g3Mڸ1Tz$U8J6F" [ H]:TұI0eP-+UBVҧ!O\P؎U{! OzuPʺ¬Ox? Dr h:U W(B~9P lbVrglw5Mp]yKiX$KOxog mV/eş<QyZ ͪN2+\S3%R&%$L`n`\P@.ٖ09|h] ml]c;L( ^lcRgStӍo۶=ōihpa+LQ3ހ8fuXa|o=rܢ0}shOD}"jNם됖uo rٽ&.ߛg O{V_ݾ߹@wľ z|89<=+VtxR{$K ?YC X$,6&+D%y7N㟖42@&gUf1Hj#7Oѓ/t@ `LmFt8K;0t!zX]4bZ|r!&-⡡x\Z6X=ⱜ~$A \B_qsD['S{J8mP(G":PUBLq\"OMĬb,7V^pSmҭ_}d,nK<,{8݀ahщfNt~GeֳGXr4-\3\vp[+ZY[FF{F#/yJkة2O@*L o4TRmڿAԐ:LЋ}\FYF}/ʲU)4F[' w(=4J&p ubedĴ΅ٍ!H5:2 6Ο% F`L7dT͇).::HὄE36YW}2?s[:}Lt%LUvÜ@٫/+qZr50ig ?L=޻@U5or2XiĶϠFa%?bcBZ5Jk-[Aq}M^k@=+\n0,}l5E547&v/Cu@mUSQY{鴭$ nN zVg ]M(dZ-픋;z[pqdO]OݱLMS22\L|B0wBiRGG^yQ{ Ec(J5лifAKl`d"aa@ ȔWqˆ9M8Oc+'J2v!g=FԞ0^t1Uy+HƏN[vC%\-E_x ᗡݫ% 0|]`[0An {TSS̻ D쫴iE Mcɽ B+ cCA-UP⦵m{ |K1jK$d[a^fo*We* n)M.c< nZQVh,$_6]<:>!ɯ2 aV^;g)_?҇Kkt]sK4.*'hӔp3ilG}iP}VOIp)~lh /QL(TZ:U5u=Rz1@+ Ip:d{lI%%iDz!82Z6kazEɜCHIyY㇮81VCJ w+!샀;C+|Dn4GyT_%`K:L@CRC_[b^0/\&woL{5n6SA Ǎ7^gSMYZco=V7d^)]y8%8*)Yd ed~2"5Ʀ]GfnYlQ=B*EP{ 'p-od2:-ܜL@sb`+5~%:!_-{N > Wmxj? )I2pK\p@>@xH&NSU{S W!,^?Ar$yɊ-䪘\o yNr:Ȋ(`n@Wkl[ik۳eqd9q%3$`N=ucTM,lfNȘ)e( B##XFCy^K+؎-EW\dbh!5+Y[ d+rURq?XpLbT;!vXh]\LE]I@팔AanocE\ s[Ѿ=K3 Q&ԙ+cV$C~_dzOU0aĚ#x[ؘN[<]-_;#Uy]@. GoWm* qvttQY@>lgm `ZB;Kt+"ާGh9rQgoܢX _ HF~@poz+~lo.@N=b`\. 9wyxЏz2OuÑ+Srto;%>km0L#(k㘉tl`٘w5 D@[u| q] Ez ޕPfD(]:L,dh*UUIeٴӏWC'nGXnqS U_=8jd"]Ī[?kr\U㆖p]y|-]fH+U:ٜw$#/hB:)|iY "GM %)8 =+yJ浊ؗb*c*;%"@;Q÷yO5@7 񹠹ǵC~(=A;ƿKɥ'6>R2b@l| ɀQ+(jI]Xg{AsqFhH$ O+ pU@Eq{[7aYϭ 2[`]77Wލq9ϝ:bˉY8E˝}8j Ev\%t`k՘#T+b"c3SݣMhXI,$pnG+k%?A xW{ v Pt`E]ҿd縟5T4M"ZX,p6faYYR<(,ʘxkk/>  5m~^ZhleXyLQQt1=]cVn4 2RV|:ŝC ІŅBB@ H,!XB-HHEǭ Ϥܐ%p`]5Ƚ̤#cADhg=G$ûl,C\6Ǖ*ç6UAg oU6>Ǫs*<4bw>D~ظ Nk% X-*($ntJB;L'%sk >$cϭ?Y5cIDm~b9kV#0.0b[b/ r>Km>>H4V|Tfy(]vϹ򨓭sm*9^J"#mQ 0ċh!X?b 1 ]JA兕Қ\S0Wfp:hy-\cҪ0oV? sW9U86;RѲ\ $w}9ݠ.!Mz/,ͬqj$Ed@,j x@j:rl`=B~ V`kU. :JUIs! 9@'B B3d). LrJ Rl&!~4k.rQZ~lW  Q<*?**It ^h =7z9+HV5$'tT|wze s4L" 2ǵ tm]Fg:<*%@߃bF#U'f@M"eB##[c#)eDJ 'OYR vfu/Tv>1ճ Գ4`GY5W]n\Q#|+9q-)hXXI?Tج4AdԀpڦl)^?q+ ;~Oiߵ퇕nkɶgAGPkhDˆ!*THf\x;T4,@$ܗ '%Ҷ )qkdFQb§)MnP(!՜דz˫Rh Տm~iDf$48'عNބgQn)# 8܋nO+ va+z:^]WEsƱeXR߱n3R+8 rya" t;u|Ɠgx  #Fp}[wR(~uNи4lR46/睱qIP)?Dk)'K8535d'X1Ҝ/z,}y1+=%ά^LU5{IɂP; 6nawM1\gBW}Jv64vUҖn Zp%#)t eع[Q(4ȍ.crm϶Tv .7Y55`ɵ1zjky_0Lg[Gh&1_GpThmz/g3^)%s O6Wc#F7@_iI!/فr`OwP^уo)o}Ojzoްm {5xj1`3ռC~{Gs^A|fm'/-^Ap"UEti( Oww, 0l&*񐥲][=8{m vX"i d5]6h&7zT`buKO*9d Lq H<2>-l"8f믏(o W5+/ޣ8 SṯsuSY3(_xHOywB:McΤh"[2˽E/ƅQEk(gUxD㾐Mh*-032DhT;zx-?N{=+F=b{b^(UCS@E@wRXT>9w]XiT fw&(w"ucf/VteZr{Eq7w~׍y?߀D w?clGiIfbg4F]IhĖ0Ŷj+ds/-h{v+ZYh z@remS1Uby~wQrNo%lJmϒirj\ /9NԪV,?${`D868Eֿ&|gl~pt}C0{p/lF ?ۑLebvCw;nK+AUֶZz3=Ω9Ev#̍JcwsTt ԒrSqo3jѢ.\,T,|ΗS)7}7SΣ"Ϭu 12)ӁҚ4*{.M297[ϲbZ1K f"rtlU@PYUBSc& ,5ZUflzb颭bMnXb?3j啦/oA?nУQj\ gf :rg?C&c!窦TP.@@^|9-" 뻡t?0LP{ܬ(m ΪxQ8^ʤ{wl[̼Kx3~—P ѝE'ņCG.|DH.l}zlO_?T kkr$!`'X|Man y`qf,sى]y$:,pLMૢwOXSB\ W˂ݬð]^u70SP*;>\uuw~KӤ~& imp@YQ;Zt&W tQP ۳&$F =.^EuI]sV,3;p# Ь6Ãq}Uz=6 7Y+6}HPF%kKe9œo [t?fAܼۈD~6GBC\ŵ.!ƮU, w}qW U^Y+5}*+O\7+t/ڜ~$ۊoM νm(DQA|-s-˕#Q< aW{^Ĥ pni{aEi 3Yh.W~HP/D3Kr&>C}ѓL d%dEG6l) Ⱦu+[QNsp/c{?Vja$[NjkߺBT/ɷ_aYz;1,)ddJOV7Vq~ҍd΅zAtz&f<[gxz_c(Ǫ{6Q"ؕYWr"0O4Me tk ]V_\T)Y2jzH,B_ +sTJӹi걆0_pvwDָ=]^,9w4j(|Ix$P7vo{g`.?IX-ZuTHqgemYƿ}ɣɍY^iC'd#qצR:]DŽW| CS5kn0|>Dw8z{7sA,Φ=e~\3&};A&ƚ6R:B,q_A*L2vQ-h'%ZS+1P6Gmf+Ϯ)mpI C'\2ך]qUfqYBEF\[F^pU]ؽ/ktE^8y"Yv>C=Yʍn{؎9>6CF8htR;2c#N#tgu /t- SZ-x-d]@j85<_Q2ۗ~Yc05hԆؾψg>a+vX",lyhOD{ {$:'vWs(N-Øt?}⢷$ek ru$s0V ҭXN!ی@u,$|ŀ?Ej(FtI$?CBo:+*sޯ׍ 8_WTĿY!bT0JmL%#Rd_ hpŲ` ,H4Y?d d_Y%Il$F&j:h2Zqz$~:`2u% 3Wr#tb/3d\;R_Q)t!;!@1%(HY (J^2`=wc! k"]7hV1=I*#-*gڱvi20H%f/ DL݉bjpa%̇QcMqva,Z6Ur4 2B&Bu|&x;ak)lLerTh͌#5oy5R3zwm,ipj$i~Rzv,*x{ Ϥ.Bm2Bl-'zKzJKΚWA |L|<0 6;',zS#,4h?сH!m,1 &')Єi 5t ;QQoc2K={vENLQhLR.q-rAT]`38tG0D{kdߜ({"eXa%̒)*apUκ3ɦz }zɄ0>aߓ})C؋i-kG.UAy43]tx뿁޳BTrx}=^{+"Z_n QQo޵>~BUENE!8#woMN`{*&a(![)J8#P>W*}%0܏4eP^(߰)ѻr*M)bDۀq!H@ 3ȶr^ps14oOo# o&_!7U紳o׌!Z_G:S%~Tb/0(,TS8梨Ө4O)LMSU _ZJXo裸+ѕX ALn09L 3 qo\W[D$F(X @4GL~,qƚA &-S}>=udPDv&Q hQ^TY_*05@(梇1L< hp]V z"݈Zs'Whe c x~Ġ}Ogl5p\,&^}[Ayp US\Z!%$Nv_yrDweH Lw03q]Ƽu<,1z<1H4:4+v#eִC% ڪH+ OX,xG"vFm J-XPQ^hlTw%GǞXy<`v]a.zˀ(IhJ# mǁÊv(q|סt=vUO*ZAiրy :#QR#^{EruWs?&u劒IJh$'IF3xzp-|qg%T^41GV"d٥q> ܲ6--h"S _IBIpYU8g_PH@s˰43NFZs&a@AqA^83~Q{%o :Mԡ*K)Vou,\?GZ@ށ&>pt*;KeNo-γ /^?@b\mx[yw!sl< ڳ;]H#$v>=e9o1FgRLz-v`oOE*XA@U Xv 6`]>iH 8t`;%mKvP/KWO;vY:u,͔pߧU݀6fnKvDJQeʗ.zv^kBvnV6"cjl`&_٠OvHD*%`&9@my JMLٸ */kn2}Z<6 ((ySo0de P -om5<Ư D圷v m~]7qnV擲cyD(PIQKx$+]f a,ihJ2 lHY"D‰%cRJ aG AWSǺ<a:Lֲr׏xbXq>@wB@0mؑ1~H(Kw؏V;'Ͷ\b 1\tkXą܁· I#"iYʽw-"C~$M^kX2T7oBd;[0hsG!)\# kafrn9oSP՛Q'xÆY* RcZ+̷?zu p&o8Տ8I $b}'rFlb'+ȥ@}hks?NX66IU۱#D pŷB=ܥZ@ u/VMdE4out}FVho )ݞlW1HHmS5*eT@}QLjˌh=8a~p<# z좏"GVNеUX^)Y[6Ͱe0_khetɆfHQHʨ u_^<78(Gܗ>/U<: },#6=[jF#ϙtd&}Ec{+৙! *6GBT{z)Fa}Qǩi.i1IpSTɯmO+?EaH춻F=tIu ]LP*||iH8 310Y]d$"D5Td8*#,i\G"~~"  0 wt{+ASJ=H2'WJ1W~$-,Oss>m_F6AIC>?mqD{!sRze*B38i4Ы`FX ؔl,a%C}I*v7c-|]p%Z(6'\{Ba%-9YI:"ΤX#"Ò[_, dn~8t͇ޭ)g# wL$..}+p9}U1 %3+Nݷnn>^8I[oBq3Cp\kf~!t4qI6pީO~䯵MYDc1}ڜ6Dܖ tGwil~f}8 C!>g)w+{VP-&iR\ipi`DL-!~"9PsOK kN|J6dꜩ 9SƄ)!w󓓒 i/#q[ʏCOOƺ\7L.vx{ cx?Lz2oP޴aetGlDMҵ)_[fRKXN–,1Jծw+5n24T1"&D@N|1ĚnUxZM"XыTL"Edj TQ`gQvQp=»1mȊ>Pqv!0V-{#FTTem 7='jH!gf$-ua{Ꙃ /˒΃r7c"N2O"ZZrs;MO_JX@#& LGDŽ6D_W Agsb:JOaȫwUB MzxXrԵM}"2}bN6au?%\p2|) 3܁gn3Y)tV"Cmd*.zR w4+jj^q>bEinӥ2ɺQF%|gp(eSq6=)Loyy0ڊt<ݕNaB?=#<*tUסY 21IhE ՠ^C$~.K J2U΢ !qT>at%GVHcfdLj F*8ZX-]m_r ̂Z=Q-"F(Qط* \-k2|^b(M>ZW`y dy6!I_\ThV^BΝ]g=hX -N+iƃQ+a=۬҆]f H =0}ޤD. rDl&/, r)qOTBmo;0JGBH'j.leDhy"g 83lŢd @a []'Su/:kH^]NэKk&Elao讬TXEXi 6nAXt~5.:h 5u4%iy`,QJ#_x(qיЋ njyWx ݳ=tDu)0(;r@zHc"Õ3% #dGd5/ː_oayX'DuI4 (`*p;wCˠɒi%;15):nr9o@FL W—^Yn`߇|әWڤ;&IpCUe `#>C-T| ~'Fc߂hwY ,|9snま.+ _nIo6E 1WE{\bh^~$Qt 2+űT,(*V޹XI=Q̀x"a2uXԨr,t QV9EUJOADE4zxUtD͹|( n:FJ3;k5a7W2kg=u2u||T\+,Fk3q*Er(-CBCإo}zf_ rU͘ 榡fأB^ 5"P٘TdNg@KE7_1[dSǀ[jD2TG72 V2B;-VkͳYIS_Cu`6Ct^`T@nK9x"56` ?~cUe13[FzxY bqZ*b 'Ol@%Q<4 ]mP69_ T+ND?˕o @/HB31o'=Fm6+oZI/t CR͋jSк~^hclf.+FR $ ˣ"{((+U2 @T^!A׉ߥl!MnI˒t9ULJ+t ~Lʔ>rJ6O6ۦٖA a $)gAI-"9}$}X F-U J&}RF;_CYC\1FG£7ۦ[kGK  O>NL $9iVHO%smy*Q!VFIp£Rݴ:d:-T6\CE쪘tPkm- s.:n3N*A,"uZ>˘f_l==qzeF")@09 ސ;x(5[m'LIߖ ?o!C! f}6 Y*Tĵ2IA֨AQ2gGINp/Zbٴݪ7b}[Qߺ}VM bZwrI@9řc*w8%=`¾/=EK0Jc8aTd !)ȟGzNm^ \kcAF3V6e1CXFI˞ƺ{uMퟌ/sh'g$ {/8Vwxm]OWS2 o}D s3Q68nY^֗ Tվv#id\;[nEGK|UM>-sv5E =u?> ؼqj&A=>ͣOz{4- SsʴZbUuDxlx(Hnz<:jN}Llw{fsV:.Ϭl %YZ6+,^0 DogΜ(NCvE|o`tY^a9B袒S'b"1?9Qn\ݩ,`HW47&ݥҬ<66UfA>g&[pZ8MD#4nbwB*EquU7Eŧn.R6e/I#|2c3v奤W/}ϢT޾ 3cgvFБ[7d8lp4K9;p3+[+v*?7"jP(,jaŠwF4͚u CJsTޫnbx\H-k/5Vi;;;A\MYoaEWW5zҪ!n VD%zfh5Eɋ,͸굮ď\꼅s= (jTe,4  [4p>/4% A{n[@HO,N̈́SLIkYrXJcʼn%'ɌhHL-S:)lqAV i[0S-J.܈h~}q` SKv)^)ԝI,M(@a $BsV0* P.K~J/X 362{2B-ZĵOvpZ>(voX}`k~1O-ƅYߪűevZK!pP=_\|;.8[C3%ě3/w_8yy&k- ҄l~r鯐tX^\f.A$Lդ>P//OE O3SڎvzBX*l$( !P ,{58-9%QFZxh,enbŲ(vA "@3,gzGs~N#}3/oSNi] m ?’p. g_`6ҋMPj2ʋu]î "id[;CM,q75{|%uNziNp K&{SYȟȡ#:ߤ#Xӄb<}B[Dݨ'"&l+o+8kS_A K}J^3#qtX(srF4>Zd˅h ?1O308Qh :X<VPY]ukUVAʁO"ڤP۩InEv[#_LwHku+є\aTaQ$Ղd rеl[@`OOD9(njؤ!W|B,|QMp gtHd0t5I?j FYP=T\RCZ.M.uM3Y\;K)mʯ/Z 0z)h3TD\JHVc(Μ@ !ިCoܱ"O69< ߲g$N[ ֜>a@FJހوxB?_?;S 3)-1Pt=ƧBJڭ |V=5wm]SXk "!*+cԌc4gIJ ߏ4haݟu@)+1 l閲ֽRie޻ j>#/Sˮ~TI{X(z*˜ >趈siy۵w2FhRlos*.9iBEu`qh quWϘ,kZsD] 8D7xg \vE G¢HN+ ƋZRR~;uOֆ`eZnC8{׹2hV@@F,Q&2ȬhK@Ε J<~d_hP5t1 k7:fU3gdsaI'P;AwQ&-|&yI$w^R8d?5qjibZLhS4ZĆ--:P^CuDp4O@G1뻂 Ƒ{`ۨ(g@;7Z~o%a-=Hݩv(-90nLg8 A}D$]exB4o`Ra%r!yA)t7oK6r$Bٟ{x#v 4K"z~Zt7oD}4U %™'0CHۢ ̋TqǼ$X٨.mYFګ}~mxEka& !F2( V9P$rlUh8uKW{B2ݥ-/=iGkyP56u3qY@r>05FFu&// o첌wwSD!O`6؅63iy6 s!q:.&ZE[RZފl~5:^ܬTZe LDs%5<<:%@'l)@ƨˋX? uXߩs1XO p5 5_Ne}#[ a^+/XE~;P`l}`+wa%'X=G/lw9`䙍GޟLDMy AD T@! ewJEO"X m*"e*J{gSZF/Q`pqUA_g݃-,]=vwlRF^!ARxxۥeK㢕UpOA z'D$[(g& .~0 %ѫĕ-)8(goZ~{;+!?/vp2H#tʣ(ad-#dhGI(QK ֛`w2m-ڄFV@4U:HuNL)^?U{k*ۭZ uT@R 8`d}o`<6)lƠk_x0&DSاj XkR5l_2v(g}GYEiĚϧ Ј7 ^2n[+Q}mm-W"3) ·D2 5/$w,Uw TF3\Ă(xmO' WGK0[:B>pNg 蓫$Sm_7ں^ך襬C2]9q@~"AߎzMEĘ|eUB^BHS<&~6^k''sqH`e \o7۷8i |;ь_TM)Lc;t50xN"DEb;B7t!?>\871e`nwwk HRk\CEĝ41.M) caoU{SP-.h*e|J鸪siM2T I P h\ Ib O@Z`xgh8dfd>"ŮN'~bbraR}ВXPpB&%m]XWb4>[IӠ",jTgjJVn-ocp?~_s\IBs qBW< 7"x+953Zpq/$g6-HYToB5@~7y!Hw EOYQa\'\v#'$kLj'^7m7 ky^J(O+pP~b#0Ko-t̃6k3Ȝ|蚞t?mÜp21G5up.mUDaq 9oq&,KiI[3IJĬ7ԫ\=:/ \|:G)L"Amw~e"8",1/Ȼq:پU9~OȂauSٯbW>$LDlW/Ǥd2(>LF9g$]+^ -#O".B%V[ux[ XCV +NeRVseREj.S9t pj;.?;)(eu=.jѿ*6ؽf? :wR]{Ѽ:ḢTg)M23CY1XXpWLx3"}Iډ`*?|.؅p*9'5!B;ލ1KAsʚ %Բeж82LW/0O- =ͩ:[P~D%JS#E\;Ylmd`K[~|^ SB~ fS(XLڪPPdH} =Xizb,/Dc~nЯ4+ R9% P2 "xfbLYq5XqN2oFWgQi~+FxL9;0 X/>w 'H/s^S9NPڳ) Mzxfu8 I(%%mwC2,l-ejGL@X2Ad&ީ]!UV9@P1FI)1ꪷ OEs@p wΛxӚZP&ZɌ2vf}19\Ґ(5PdI&fЂ5*Lc:څ4CuXq-$D3!<9ږb)Е;y>;21a9ۚhJs^WaJC]e,'{b(+6s OKA^h[Ir?h Kʵh.+))"6Cۏ9ѕsPU ݛbuxS6@IMkowS L 2i(mzDJ ԬBTnEqj-ߥWpS[;/^"JNԹڼ?U[4w7DoJ sQC;ҳˇdy' )jyދc'hwB'¡& $XG<"1TcH2t8n]!H^K/WRPKGFaLW ĂbA,6N+暓\%HGl QڷT9\1iW׃`&(=atT҉̖ [C&0QM䟐fkN@r_JlZ,j'Qu5Od(ZWy^!'Y~ t<fͮ $6%q\_R,"6 nкszh#S]AנðwnÆ>YQNxa1zrcaU=hP 0/JZ n1+Wi!gߠncoW̠W:\S>)f?RVdjsFa"t{$ZNf7d4"H /Bd!l׷Եi8HMD,'q~ۂhZMP1^aVCxP[T6H=F1%'iP.37W.^+~4 sf tn2m\0"K15ļ_",;hwP84~f :4%gF[G6*0>P b.#v!vwm[\ĦAts'13{lB,~Pߨjvgė#wZqJ@3liZfYK"V#4g1%J+̬ձ;H.6&xII7&'({붫+Aż c6.3ݘaGr I,v5a45} zJ@KPѷ< ӖFWuj~\ Tp0~ȌHw HS[@(5f~i) tY *4..i`JS*FY"vEuvїZ96-1uש 0 fb~T}ZQZdcu IgDHU{5|n[tXb&FwMp3g"*X5~*I+vfLIne/rKg*k2Gڹحu+tE<Mh}e xԃ Z=Hr1-Q!*qg$M / ~RGK <Ɣ& VCqhxp׌C ?B!Vrдy!=R=d7S݂S)'!\= ?D*=\15zJz:W!~o|ՙ HWǰNX;Yd.Z~OH\޾12qj fE uf53޽旺G &ze}6uY 6 у"!|N 3+\ .[fs%4%zwdܙɡin3)K;j!1LTI3O *4xIo-wg9TNpF;,yo CXLZrl isz3FWlvGٻPy:VAx!DƹRۯLX w/4*B9nY9rߵfպg/Ҏk9s14!hh}b+XsuhNf3p:ƟЈ ,Q)$LE^Bv&,6$2lgA}N2e7T4 G4´d:oF_˟ п'|E#3ˡ˕آ{cwKE؍( 5Dj~8^` ɘ ݖr{F!P,낻zD]e3 k`x5k)Ba>Su J?%dۜNZɂxhk~5a4z8QDńd u6YO? YDfj ol2MM7xY WYU [dV˚rv1M|^ণaG { {a=ptKb_W%IrܠzNCrˬQvJ8 p݃VA&x3ʜ[Zj;\ҀϻÀ\[5ě]O`'ޙؓ]f K#<M5e/&WtN䞔Qh:;޿e) ;W̰ʧ蟨]>(]9ՖkOU Bk9b!ǝPj,VEIU,U+Տ9fBNc"_*1H#؉-¶`Ȅq痪^'riHQdx\cD Ӊ(W倴)i?n`/}PudosAS/8r uf9bt%#MMHMs#ݩ NS-Z=DIogZϔ-6(so`R%ѝ u$ OVܾo<qHWFzsHmIJJB x3Tx0:7$8H ُy0D 򉠊1ڲd|r}Q2fA,7Vo3|_Bkϛ0jĆYrv+}*BX9'荒ǔ7Lj!d ź7ҭ!UE:YeEd4d_FRͧc[P=-q9]:yw\U],ߤ=ߴ>6M).5̢*Y:Oa|+ 6" x6-|u뿆'ϛ;],Q{| R}'ZVϾ 7$]_, S_枱KkO`Y$K{T;4+;6Pgb=lJa?=2]lviFzdF< 'eh݇^ ?H»(kcFu1WgN%JfbjL/8,j mK ߾&FY)Sbrh_L`V}ƿQfi1%&8| aǬn6=oDF *6ͪ%?‚Pp_˝612~P:Jtj73'i'ֆ 뫰EV!frK EzpꮗUll!"xdǔLK|b#bwUIMٜ_ XTG_?()y')j.Tӿm)m9^)jq܍<޽w`ԵGp tՌ"2#'ۜbxe]& C +qmxڥ .374ǝ /[Bda: mOb@yw[IwZ><}-9^kS^TS;(6 ⤥`ZϙCś0j{ M9Y6Gn QT=f7> , 9X–,"KpYTޢ4^[xu4"n(ծ{Br0DjmK c3TgTGX'`V ' bl*GIL H\*g>#R,ڙKl/~ 4BCJ9{d$Hcue\D7j_l_1̩ˇX2݌@Y14^P2QdYwڇPb'iGͷa] NCYI/<Իo#KzT}a-ѪΊ;1_*lEŠĔ9e 'WHKFWʬ_$0PC Fӆ{`0NɳIlÑ')7,_L. -!F~pP{pcq `8>Js'X} Ɣ t'? S^=oz56Vnt;σse܆/`d~0 àX2"ơ0| a7HbuL0ڄJ / C `=筘7KI?!ؙ{3h*IB8Ph]nW)(>" mMDIL+l;6]7syjf\k;)S"J0wqդGHq}DDqw)E})7{"|1ݡ/m4Q^QƵ54WH鲔#\d<:R/::Y'bU<S'ުpb9U7Oo) ƗV[]6*l]Ę w,Tw&@,/>0Xr?O>c(!e]wǛHUN!<U~1F;}fz9{D40ZקVp5p.F:ǒ ӯ >Ko+"d" n:X¼n]΀ ]4ޭ2vxOyK6mA33?ke0e[$FY?z:Ja>A9,+[u\6=151zm͎i#VzdJgJQCtHWu1[S {֗Îhsx;M>{ɂn+>goѠʧwW4Z:5imZX.hFNFMoW4Ai13 Zt%Q1 юv./>WzizF5A"fՔ(anͩ?&-;RF߀:J;Eѐ)yb"$^s2HTdp\TX4%)ƋxV2(;Z2#$UușfB\Fi-i„* \u4ȯyXvK%.]*k?@O2P2-ȬnD)ޠ,'e [>9T{nv~o u!rvIƆ߹k1ר r㗂@&ݭ{=+:lr}^Tg&2*yjO/z1B*4XlIeӚ{)D C7s& cxe)4^ʣAs 2.*/;DCJ4u$r'ғ仯kM ~dJLLqWD:ߛZ-[Y-W"`2r˕/`X T{gB_",xE LܭPuvM 4ݒ.\I@'UG}eRP/w!_GR'pGdؿ?@ ӻs˗Q"/8&0ݤ[VL^$'h;q 向G{[2 @ryP/aJг|i!8K$bbyE%" vMiZU,mh.6xnrzEr h.gM <1Mh"WܹG2W ^+;ڶ}6;/K 2?q-$HS9 . E$ 7%?VZ͜}HKxYOx|*M]T, ZSfP޺I]p{|D @% O9Dq{{#tTN7NLő鲞IN܁ 4-(lᬒI[Utf3M<'zmGIq)l'scHZt: x$g̚׎<gD^GϣM$8DZkNLn7_+V .'\::9 ތQg9Ԏ^պZ 9.I+i+i\{r8sT"uC5N`'tv$2k%ʷVlׁO0#n>ulgR H^ ?T8 3ԡ [FwGCgEPW73:4_ר,w\7]/ۮw';E0eA,Dkc`:|p|qR?+3^(TBیbZ6cK~qUD!)R|@[M}@؈;-k#bT+1bW|lh^@׼{ӵ8S2wİL,^òzl=-w۴[#i΋LD-`l귧p1в DLQFVVXq;m^ zI䤪?I݄~`U굨~ŅԊ /տނs7᳞$r@E\_Ʉ<-DxG֔Tkꦠ3VbW탼5.h19mN|\ǩT@&w>5~qnǟ؁YRJJ'PGIv[+RmyVbC*HB2eOW!Rx+Omsv裉@c㿳{|.pIYy"SN0M(^NNbnFjh{=ndL$B+ݔl{^*:,^ 8J&c㰋h Z ?-}j,K6*Y "?|uT!fsC1wz Gv >}L=+i0Y c*yLʐ" 0mJarwqd-Le>9q&;Ku+)O]Ǟ.2@w~)jv0c즍3qsdIB oEus R/U]~j.I|jʚ,(ZQ-5忘|8C$q1v_}H}(k~Q3`no{El/Vi]~!Mx"j9JfshfUV@f4Px;LEGtN5bTԦE(W[0ω /t؈bo06[tΓ2M4l8{vu}ٻCdkaHCܸ#o2cM1/l4mxl1)\rTxSshuZU/":0VP>Sd.ɁMy۹u-8DY)ѧ|?ISǰ,O]u.ssCm-If}_z^C-LU~69k@,G]p|i?iQ#)!n ]4v~roܞ47]ļwx|2:𳜯T,JR> 76fЋ)yf*egg Qҽj@^aঢp:gex&0]E닮몆9GUB033T켬hlyoN=);:#83.~r6h!Yiaf'Pi%ϽRUhJr-$~Vv U&UdF]/8Q/I +}^º :BRmwBMx:[M:t3BW9kH O=#$qUaw֎Tz2N8|:ٛku6Rpq0 =Kڝ&ISX7Fhb'>Av1/!y mdeE_\]bKB xJfրzl F'6ՓG0O{nR>>%U``o o_ƿFϞv_EVԳ3<>Gsq%0JGD{4ț aދ=NwUld")۶i8_c,>hf5XJum9_EdtӼ^P׼snϋ,H&?jvPQOD~c 彳 _7.*0<81fߗVUuUlTg8i4喰6(nʤ`JDPn3!`7:G-n}oTd |";{+dNh<4 . 3O0Ǔ+.'Pj ct6K2SUR?mƺ?&RrC\EPA#k[nFjZP[m쨮OŖ5b4V-=֛KYx,6+'Kfc֧@MEy:E^2Rŀ(4+nNnԩmF/e:ǩFtDve8\Ԃ2@M`,`qM0&Dh:]7FH=JibOJޞ;2(ljv?k`L"B7AH5;w&a*mDV0ڕL90UV?W,>'$Aj-&lgeq6l&JW}IG)h-n/kݕL1ݢg&xX]BB{k)=,HQK8#~Z\SC`Lːad` bE6&QSM{{ly;3H:/܈?CkS&͛Vc KR!!.Um  *{)cH<= XV<&!XxD+˓RZyA!!i珯+e"n<'\:?oX遯Gc JNT,H)2X«#VȻrO\D?pO6'x؅4&֢@!ٴ$ndG0%]cP֕cjq ~u8Qx9QMqQ4D3Ah:f yy)QL"­J w9h8 $5{`4!CŊQYCTuMid_(N &s~G>'jBdIrb14, LWvM|6ȝIkE+DBoz m:eq<ţ+i g[YWgy:Y|+1ޚ{͏P!zWDW]0wam(^oqm:h2 t S=A!5{ҧ wZxz?d?qMnq Ru*_ݏ߹҆AćmLR;"E30 "Zx.~/U3/m]ХQ[O&tԑ"ଞãϣqD d+1ïIRNPKC$fؽBp>RY 3--<)}6ƅUBŭn٢fYfL ʀkZA&fý|¿141X_û{\m<}SEɯt+/wB n{ȣXV|{OEcd&+?Q̔6>-3(AuzG$:t}2?MK R R&Xmxh*VGi*G"hxYvRyA+ 킌4n72'~6gGkO ;4|c{hi«odek?XlpS 2Fǿ#X~mU?0ZMN#GոџHfIXi^oџQdʔUW)KZa}WiCZ=1?Z%@/;i!MLu~FaaFMK 7 ѼpUnj`ѽʟr bօ.oբ_ _R[Yض?xž\:ʣBD^H6A7nu@Nyxab{.X蒔惌WLm#']p?Mcwg+*ݻf.#8{tnFgYSE |ny1g;.zC dԭá%b,O,>(I!(~uiBn!}2aXӌޓ?#0c9)Y)5$d87!=v>jh%p!fH-XªzEX|푸?=MdUS`5"'}ȝk[1U -Л'79yE#F#N%VFL)'l/VhљBuc\u#+V3s:Mіêֳ_|D X[9RETe(zx70;J,?H8q~j)"Ewa{d1)}Z_ע}=V.P+py[Yn6Bێ*H|ە5|`IWŧyOK#5VnUűͽ0=:pV@&JSdM#îOZ\މ`wwՐAoCtBX`z"P+ *k>Ub<^9uވ>Ǜɐ|( *7Q ^Ef?#ܨ-c@j\&~v`Ft5sW@BtRYij<@\c.˞Ǐljx4OҼQQ\ĥ<-g|45=-XAeAhA5w6|}eₒxF3P&|h_I+ 1*6W;ˋSSZ-Ԇ!^) X6<[^ьd4wВDC])'_gdi wla%W9E :KU.c{ޞ" 3 ߝ\gš ZNMx⮬drmQ usXP=&_#iҤjwP{7ƛ*h3̛]6C8#L0qc^៸] '_i`(2-0J'Ҕ4"v~/5bz_$QVS%nVJ_iPE,j%SJ%@8$:}[3eR 0DXttֽ^E byt䓥Sl@8+L;ɠ/Aok!Q}d_ gv]SQe|$'ddCFSY۫A5\+jSO(7EKA5Y4hbc_TJ :]@*lK$7A`$T95q[P(eRo I'3xVO؉9d6On8u?ZM'#F>K)a;٬ N Tl]'áY 5NY%g'ŽșL$iHOwI :v Wh9.V뀓<&M&q#A{yB^l΂j[BEܒ@tC5ꐌ*I?Ɔ<`kQS+}JZ Z M mn1l|Xk9_B #-9JD@J?*,>qH+){&O^EJN:봙@#[!m(zy{T TP@XqߒPrwޗ[HYl%gݛezjqJ4@0 Sd#BcdSe5i` ` zE)2{T8^~-(%mDȑ} O7ָބȒVO؞leyVn1h2r!Rlnfi2;7M+uTS=# Mw[vna~}Oݕ ^P=p jA:ˊ0W,Kt нJ8^h6#yUZBhdcu=9fv[Lb5UgH cώ]u[.= S0 МAA8֚檢P))zY?/ѐݕO:@mc5qO@Ėq-zCEl Bх{zDFaJ2zq .[vL$eWu DNt6: FàȚ}H ĭ/mkX8Q%bH [k"HC/>ʴ!Mf15(Y(?x IfZCY}PM0Nc-;oevV~ hYNZyNz:y"(gqˠʏ'ܥ"yvh h .B~p%C;P)3yi t0t"sЁ Nv@@ZI̛[8]5OAߞ7J\?1"]_+p'X8#З់yQEs:J EqjYy$!z;6Q$?VL'1" *t"C}8jLm1`H9--#eಋrdӇhExО@7nph3³N<dtLOo7re5'V4mC 0X`%Q ǘbaϟ1й `j/QJ,'˶5Qa$LfסNGy+6]7pRdf r_'cX^ܶ]J/x>s) f8dlY ^ӝyrʱ**'D&Mŗ6aMu3B[]glB4og_,g+ˤ\Es/Vɐ5ټw,„<咆Þzr`Ԍtb_q>%_oՠ+KM?%/ԇ@Y$P:MO`cXZp\!Z'vo o[Mz$PˁkBOOa BUMF}AjR=0u> 4 IH'aӯlR'vR 2,իOr{_3Xssس6ۻ9<ԛl3DS0rG33 4fպu"'~?<=p7mԳ. bJ0X9N:lg;6v`yJX@,pT+S&T1ϷgY(Mn )- ,s*x< ?&+ &=CW+A^1ʰs+}ܝkq pLX  $˽ q)a mKחCU%9-쭑*Ckj^Wl`'ie]bؕ\Fl)rYq#yuj^Aݨ&Y&O3Ly%ޮZbhIFid>n&"R,m_ zv9#QJom,ԛ'ټ5Nd:9 /3V4.q6};KB|`Ov5 ,ma]3<ԊT *@ ".S7DP8E\p"4&_+ 4ZvF t"4iZ@vD0@5vևDEdȻE$#@3LO]9(EIx~Q+`W<N\)(+9bQH/P)Aϻ`yB \|ݶz 9'{:|T⶧F^;ί;ًb0NDP$+%]"2 ϛ6/:m.7TosdhlVon8GЈlDjP͐| +'Be*2pibe [a Z%-rfbo=_,y(P{OXDx* x܇Bt9P7-.F *h+~"Zza3~˻?{h^Yv1b*k l8ure9WB`4萖ŠEyXB"Qb#iGӞƀ$3Ylu%b7~j}^yn{pIN*C);*%=)܋ȂGR(5Zj ą&|hJNrԇO fXl~dv)\o[[4nX>_0Ŋۃw`LK l 2tmɱ0/X^͝ i™̚Bb%Bz@bu!rD]LR79)i HsJd|igM n;=3v}^-QvS߳n@a/-o+9߀y!DK.Fjrùmʴԙ{ `yȕe>RCE+$6s?E(^z3-.Q^ VΤW|Tms!Ms$@Gm%t= Mϴzï =, ɶU9JMPN|*gp6'ãm^Ys>o.'y8})p`ԊZQ i.%jqDr4`6jW@s,9 UI#aDK>=, Qi^bډ/(c`fWK_PG~ ~r@pPN$gMDA`+ef7W/gܵ0xXf8139Mgm=wv-`ymcgQ RG߂}^ ?ǀpO/&_9fU:JQbbB$Uhd.b×Ycдmb/ǁ(T>堔vچTG2KMuv!mC{:ɝ;G*|c @\RVUV$“CsuYOrY/#Pk|ܳxp64;19C8?Om0ɒKWtl2!  Rz䡴ľT^,jFb=sܗzp RvL FM鵰W d2ho4X'XRdGeDD!cs&z>S=Du9fDe`8G]flb O<[tA`Z*I~ k*R#Qϟ[1 wP^h H XejS p! &3`m(no-Zě73s`vՁoa3Dz~Ն7ou<.I26`b.1hԛqnNZF2Ӓp{%H (*ԮމOOsVdnˉ(8V dQm-#Mc~uD0XK ~(.aP:d<*XV)iğF?(FLCᘻT}vYuDIp!@3ljl#>BelB'̳Uq.kyAeQ` SLt0ٳ!6HFζ"1,R`ޝ&/G03^SjM%;;K^Ϣ5lGo,Z'cÞXɀ!=JU/ś3ͮ/}cVr vU'aY~{sIƒSN* h׆(EѓkET`n[uQNr[Vξ}fP3;ldO@*%zs"izNgaO呪`3f?H>9f"]?$3IJ/|h]ӵ nNb.^`릩œ*Y<`bT7'!ڝ{&לN8:9^nSss@iɨz!HFT{-QрcBu˸'\pOosĭ\ۊ*:kqv} 5Q>SՉ ,X3<Q~"|Zfta3@`Md@]kzw]rq4nbh0\*gZtɍt>k.Ѭ ǽEQ@VYZEc[q>@d0+0Eaۉ4咿7yƹ^ }i"/8 h?k.QEx1VB<2On=6hIJntfF'@^6qT !%`XQ0҈<:%J}{ŭCc֚\z^( blCF;\5n["/kcjilB7)}STR90{ai>V,ɍ} g|Әf~V2+,|D ]Mbqgua)讨9VYEZY0w/@_e!A`PLGT,q>{ޡ7Vԙ[Ė!hu2&Met޵tW+%M© QڋߔiiP;J:N!7UO)8FCH(=>ۓ`~&%kQWpk&OGa1A{</"6)d'{Whhba=1@ŲX{uOD_me'Fɫ2|JO7.],odA{jf 8JeiX~2imMmw [׿J9K 足,<׋=w[I#Da:_.Y5U;C<@-ۏ4d!Fxew5V\vTsJ2p=ZVVF'_2ߣM`"٠e<>;?i=/p h,ki]U͋҆)vLR^idEjFX_7{|+*ɍ0HXL :t[r߉FBpbimk.j7Aӫ v7Svո3Cd߄#D CQMX.Ǎ=I5Zӧ0ѰVHxQ7eWjs?¼ /a3m .ц3DyUg磝 8'$3imR5,, $M"+gPjƁ*6kxڏ?vud$e(҉J֨z#`I ~Jt HL371:ӌhz1ʏ{f mC >eFPEMʔ"N0pSv}%DI^! hkqS*&<_gD6 AbcMYDrixV^<@ˬs_nNb.\EB`h o<^yv>`?MnI.6NZAޙ; & );O$}8ozLr8j5i5b "s&.Qœb-LG=}A([#_֝8eο/t>:4@O]n7k.u\m mWjUs|)ف ^NvuıqO ?Zot* v"mW eÅp*JHpd[gș * ^/y0ܼ~kUI x밬zJÝMEÕ.N,C4n+fEte_榃RX<p+v-9>˞h7 ⁲ЁM#Nk* N[n8F39ǕE}LCpPʰe,#uG0#|E 34V f9`G^?K14z6ԆDOtȓS1![IȌ!'h4Qc'Te4^` )vf*?3פe9*ט6iۄr;yl qi?9J$+E3n'ӢDP v~pCN=X˙[@&r %uK?vL=-$?; K4IT}M#t.f~_n!q RføVZКS!5׿-WoSPv`|k/h)ے~Bxw(l= ơB z~Ȫ8|[/0?3 Jx;N:crdX׬YB+ui[HY=+Dcie(oZ1颕 j5WV*mȤpng4A g?+AGWSJ„eS}Y#w?}e4 v~E(η zγs%gi2.c="zD2{>d~c$bڳ@wYA .tzb1Z~jU 1` 鄢aV8'~p6KG/V5Bo.cֲDe9G,3SZ9<ڂr^z>4<#hM+5I>>V\Ơ#)iV tVY~ co}w$jTTgr/BH4Y_Jh2_i}d0%XNcovt'$$W <Ɵ~udf:Ψ9Υ^Hsvf\p} #0Y7×И$cV.Y,a,)AgXvǮz)uaU"IAy;եZV9bc aۓ)dseS(H72p":J51F&(B kEt=^r]KU8?C&NU d\{3 gIQoqVYAKmHʽ>0uwabB<Q :(ўJW3*>v.ڵ}$`PbPKxuLx>?+!cw=$ A\jc5*=<e+=C ~_ iݣdeq>eqhYb?q=A} {>xHv,MbsyKtVykS4+-c{AxHQT⡝bCCͼ=A;T.W2`JgC%TN\́JvYNݕ@?5 -ђ fyeId--C3}{Z-b 4U2'"iwjט:}ʐ1zXnb#P{ӱ >5H֥e鮙r)A[YzPaQ^EXVW_5_{;Z1q_' XmP1{U瞭0K|0 X ۉ |+(~domU=^Gzy+({ % QX4JMntFStAO_/\p6kW1<=6wh^ZUؾM9C73O l#ݔ(h70l.i<$ Bwn+O#qpu2Ϩ'b˞e%XIKD5 <6w^Z" kyrߩrۆ8~+;!Lc>8E;y֦`ݗϣ+{v\689*\8u!M{)xTy[:W**Ev=q o_wfv'`ٹڇF=o!Օw¤ LGmoݐpa  q"TgY31bCa?Phqz2z M㕎+oHFp&&5ĥ'}L{ @7Q%'8{= 9q{7ryw|pq0c,.UE|/ZդOERxH='PxiǴ&}jЁѭbFh8CHEִfL[h5)__WTGóCLQQT[)䒤5lק]ÿLr>17{c\L  (G.hnͅ3lWzFa 1f^+QkԉYaWuV|$Pf74n&2 #-ɇTeVZĤ[ :{\@j'E:Ay4V8J0t;Sd=u j? ~YP|8TgƲ<_Q]e!N=i#qrk״WuRo$Z`ĹA]|#MO8=k(kUR!~8CjGLF 1#fbq ocŅ1#2W.% :c@mu@[J&&3,Av4#8L64v"Vwp/7++LoSLU0pzY/v E#jfe"\مZB9M]. Y83RSI 8vn"N"QݜOTybn!TbmɧQSؿfodz"̦} Xu5ShGnx)I.JVV1LAI6Rn[?gAKré ElP k40saGtBdV]S{#OBc)_}[` .4-h\|F3՘߶v"zcV !;NfrjR^'^Iꛦκ0pg+x#7y_[n E/Z0(0Wdh|7؊@=iOOMέ(@GgSpȲrWi6$Lt(4n U-}𼸶r0 !V M#JsF.kҺkt.YŁ& g+A~ٛI2/e-@DqMnT%qQـEz[hC *P[1eRX%{fK5OlG_ݛ !4{a9ڝNt64yAR0pխ~ n3>ovrw5D,sI*?BǚNR=gKjLbzEl񴄍8PcWW#O%m.#%ޱaGP 'OVEPyJoyU'SS1S`b5_]Q+q60ר{RX#/@K8wv'C;13EdMVCvwU`b۾Z4G"$-ohQE~m;B sΑ0,(4E)+?!bᄠ~& "鵚<"vb@~zJe]Y[(Ƃ#="ayDF{DHY㟹j+QJ}@kk%]{ޔ,|(4nLue.Eo ̒79󴔣5]1(]fQrJ'/zv2ʨdTʞJo{`Oh!_tm[vc+2?GfNK7+!a>NsT$Cx",f$zT`m!84ADpr(mCR7[VFΡ)âU'ę&` ,eg잒ousqIc Cd1]n(9tmC\nQ4e'sHo? s7(-x6 %߲i{jͤUM qY/$4if̒aL<.t8 ˼Oec/&Eqbp/eJAq4~OX1ilU% GB np tA~P$YUۓ>jgK|!0MNLx{汼 )13ڮld$ڛI Y<OSCglCl`)lK_;Vq5le雲 UWR5."C6%oOOat)]ݥ%VWk|%kjB38C'2)kYƭQrRwM.11qMFp͉ʲ\1 H|PW4~HռCfU4BU( +#a4jb3c+a|=o3\ |%?uZQ_@"$S~%ȚB2g'-f<@ً?8݁49r,wmʢSC:OQIq8=BWTG"9ٮ4+Q\ {T,!TkRɬQAv|.GMfgW:1 DeK8US?pkII1qoŦ:\Ն¹"/$o[GLN6|O,/#|P'H=},sB*bs^`A w'TkOLTf v$+d4\xz9D#U)oZϯ6mJ0 .aƖ5xܟKȀg ZbZR!>=Dk+jPgvM+FYCƄ:>7&^f:/,6 5x縘$ϝIL*3o0_ D{ X`GK,ɤV4h_?hu)ttWP! /5~j==4Ʋ¢;f2gfR3lҩ@ЍM>k氯WkhQ%#Nߖv$]e%Rhǎ0٪X9ۧ(h?WxynP0wti!*_{:2^[R{&$w>[>$%c`@0 onR) Hh\BP)xȯnj$m%[%UJAfK򏲾c>.,q9CV,њ,VG®>`V&-}m/RFxҔτ9Ę_ l2%caª8+e-_J&I{EN-|FzB%kk,D\V*gcVְ;$?zCtIPN .p\lbD- 1D7 d͟2;O"59Cu4@%x輰A!!ͨk}(閭Tߥ"݀e=1yn1J8T2&ER5C`$N[JYC)6 pn$8E0cxFBZaHGNDwt3-AULq":Ԃ Vk{9X)_vw ~ )u@ y4ytbt7iRZ#9514*_.ɱz A~Эܲw{32.^ {n`T2L`aEF9mD1$~őRн_It`]:]Â$w*2Wd֐KlOvXYZL}m ćFv@̑ff{au99??eh{M%aFS^3^v2xoIu2HHCЉJ{$)smPF"A@/Pb؅6R;#'Dv3 a5 `aʹu%4hϫ︗)GR~_^@ǒ}@͂7:w ڡK6">Ov~AwGA7k˳k9[W>J+G@3qT)z}٪YYJ)hic jAsø,[;L$+>1qx񥟫q =%f'% sIxn g[*~8`[3ʹPJG!Jr[)DvUb˼ `5ߜȰDv)[Ox'@9͗OߊS$o&^jR 87V<=8#Wj/D87:[٧m!1.)(hOG XWe<}$yЪfZr QeX&[uw҇mQY ⺦q;'aa l3e2+P8ӉM]+O>Silf γ>ODTJ4A`{t t.- 9KB]W5nh*$ VQ}UmY˄D`#acJR@Ib+BM4TW0LOq?vaMz 9+:%:٦g쵫{b ɩ_Xӆp ϾYD2rS-|~QEduؤ- dfVjDM2842m?m)Ni 3A):[ǖ5¡$㕈2!9n&gR85qzak$OcޒE{c-TWF:.rV{N5Fi:v1/pd}z%oO\kwP!6UtQPt.(]unP!?}K2 *V n&9.o~J׿F8vwnWtn$F\w׼YӸ,VLJR.,[`2 4S%@f8K3fp?Rö2 NHXLA=. P1?–20 we:!!sʛ)6+ZX9FZ&agz!хD,02,Im$xY9,̚Ešɖ=Vvh# c'p^DF)*.$,V!+Fv1(;a wsӜCEH(C;E!+>ɲ܅-7Ec#?^ͥMwJE~21W/04 "3u4qK <=k,~Yc S,OaTS,^h*ízkEL eTo^'tt\T`6,n95-"4br@Bh> q2hNռ2a˝ ͪ>ߕ| TFbo{hb?(q 6CMaҚM/ +n500P)OzM0q0r  >/k\ޙ'Nf2## 8U'1dKp-TX\'۞o='< (xLK IL)]AՁ;wۑ1S|糪Nkڳ뜠7-ES G m5Vm_&u "?q12C`GL:K5=kt׌7% e$GrC kg$dr(UTB'ע)|7e ꞙjF> Μ840'1EK0)胵0$|0*3[lj=w`3IJc)⟫<>TaK\-A|59 G?8R ݴ1t7y1#6Ɔ0cH=JÕ'xI7>ÔE*>?܃NDШQnN4=`/!%綮|7Ħʄ [2*cq>o?BW@Tpcvv0^6}y| 3\{xA:J(Th1y؆p"^v!q(0C)^4I`݉< {虫8/q* kFG݃^ͼ={:cÐ:4tIU󮥗H:ܻ-=v^<7ofeݠ/?Wwl=!LG[NNY}( XY"i!Z|68)Y M% b{I}_n*nb.¦+eiW) 7W@Ѡˑˌ%c;W8TE maeьH n Qv0'!ob`α??M*AG\*cl wej/`>F 2 -3˴m pQzջ6׬1!LͶ xpdyYoAS B)%t2䁷P"£AҐadOٿ'x47Pe‡YvKcGz-*=/:J1!طK0'Ⓑ.xp$擳WqHtx+>%13‚|l4ʧo_aq QM_U3~qLelJQG͖@D[S иq diS"A1 b0rNL#XR@pcm5| mZfI$b!&[ .HhNDw1#@6_xXRZ#V%‚QT>/ L4lf3Ȝ?J6Oݣ(uQFuEtz9|(?ϴ*9kysmpɣj2-՛pTMsmXF6sMOO@tG K`w˜1xh&Qcb6/+\?"-4 Vl@xQDN+^;jkȊGՑ2BD]&\P0| qyT8m *9_-S$PşQ'Y(YrN^KHbT ȦdY8IrM,ou2/9H icOJzAAmMCk{_z< c#;}[-{#*(J~ךf( o_Ao1=ҨeCb-" #+l.ÓW!~@çL~ͯ;=S\;[VL`Q?Gޑ> 1{ݒ7ۙvk R3V<}tbryd #/ x> kgX`ol]bG*cto؁6,SI~]=u[ VNJ5GSհxL*]T<9ilˆ!8@JǶ3WH2x%nK5-^ɖȰLwkQ:6 cO~4R j˟k>ۈQWhOZ2p/t7ZhԄ>;E 2|L렊P=17򾷣ܳ єqU.ka چB/qr{t®f`McCeo~2|vxs&3!&*2IxcJ1am'QL-q;[Wjp(S M<8 k10gwؒ~h[3h&G= K))̓8/ h VFu}K3$?y4 R&L6Q<+Yc+BT^=O~"6M1UAp/nQW\#XY1-׊NLp1~j 4 [~om!D9.!9 fP87~J]N0يAs(#$#QOq@ aκS $w2 4ՊcD$*)v *xAᤐ!'cm3fuuLIaq^gYG";V bgϬg j䆣V׫jjEq$b\ŭ+3(ݪC󶏏Ky@4&lBY䉜S]aۨw-@-J^:i;{_ID!*ݫqǽ{[qi[_V]#Xn%ЃY}C.ד2z8[n@QKX{τK.?Lz,Xs mRR,2`/鍅Zul+cf>(j)iDRO!SUHdn7TCVHЗ1 o YK!;ug_Gߓ[3yZSoDe _撝(ᙍq^PuL;k7M>kyYtw=Y{2 #f wq= 65RnlΑB3;[+%m3 bk;?ٝ~t4'.VɪBD?-N>=0cB*3bDuVC /H,сGr͛TS|Fm"O$wLO-ŧ% L` _/6TP8jG*ak2VWI8 ^Dśb'Fo"/4t8f:J+vTQ@dIVm{i3;3[ R(< ΟER`vȵt{3TTd4vjd/-rfl[`:}-,c6OTu d 9}kKwEƶ؄Bg{)LkeZ0l* m N]M3az0" wf&!2 #=/mMet6gE %/K}syE2`, J(mbjƹޜh7w z}3 jߏ[iTl?)#f)&Qcq"8-~hܡ6Z6ikdPG9%+ ~F'Xa V3TPboM:ewYdͧgPz_9sa50=io+8դ7Ghww"3O̊jnZ+p 9gLhPk QD>9lXh6hcPE$>uʽL}7X'bw&4b9å֏)^ %Ν/P]ܪeS'A6ŨAKr, &z@XhSs[[)Os.Obh;Ml\P{,򄮗hHd'^?*Ryc"CmH P4^b{#U o=&K;I֯ xG`iBB%=& *{91! QXID>^pRAj0 "A: 2I`- <ɂ+E2Kh[ j/ybBgCI!pE/ߜ.qDT(v ^Y* N+d!)cTι[TˠfX|U!B%yf1lRM!g7Y\slK_N]Ёl܄i߸N LrA)A"oe. US]O-?Iؽqbu|&*Q]L,ga4xjc_m&)TI N?:=:1{+Бh/ ,7WG:\٬x=D"2U]2mx\ _gH #@A$;]Z"]|4FŽ="d'`X᭾ F5ٕ2!r/9ddX)Lϒ4{ٌd_8kpW^v\{G~,OthԔ RR=H jM1FAcȦ6RF,OzP0(y&rǪD0z5*;ufɸJ؃Ïyo8l9RBQ߄r~{# fne4)r >UJUOS3 E`p֮wK[Ly[pޙ"4{`H CTjAMr#=O8j[֤,u-kʘ/uu]v]VK.qGingS*=tQXk=@]\pR5i$IMnK7(vMm$=8ͥ..E'X P;H-_{[he ^}VCMut(_Hnk&*7-:_4<(!x1#nS_ֆvKb|/Fnm):p~\u,>Pҭ;&⒄Y#lVr6rیgnM% 2aD3rOB IwVbؖy !8_n'X֨*N-V.*EP%Xʤ7C3 B6q[Qb)#&F_Y:^İE-O%>\aQh`hQnɉ8x̮0;O/T2xǖ8^ۅ36S,G= Amwik u]-d[(ێzlC>3aA,L p>-1vľtU-yHEZ*FU4KHC'lcC֗S7aMCurt^$ B #{R5;e.T"߲#Eeń{^Q[YVD`ֈ/w}+7`r ZgF|R}CQ+'\jA*CW[ Tl2a7uhE{ʦ#1qDy C-|9GFq'hI [hF֋j>uʙ'91لin:̈^pe"#O{S5lEc ܌f;j%ٲhe wNީ2L xy: MK9Ä.zYń:Y;-6i–vWLÐRuKA4@?ًǹB 2YBv&/D ʓS!p)aN-+ ly+)`xe(mt^`QӕA,]՚Ӧx{ܢ!?efN^K~yޒq Rٕ+AщQ)'i :aq~-Z~]Tn(oК:|K_υi[=mZ'%곭ؾd[f|zu6q#(h0f;sh^}ST])߯]cLr +{T 4Z\G Mhqčw(PjS~9*t$wKq{sds<q!BQ3eR '-kܪ\߹\C;{L6Ո$Ma؃G u2 o:YEvjw!(J nN!*Ałr^Z퐌ϥc1Ey:p(ߎ>H-ĝQ*mC6KpuHZsy(s}}g8{K  ]EM} P sPWT$ߺUiAO l{Em+Y">V:oLԚ$\E󷪷vG\ i;7laxlVzOk̺djgV(В9Wdg IK#Ȫ*;}=')PlLJ|2vD[X.JRlj3)B1X˭8_6EJh3?;Li\{?Ipf ݎdoAFV5K3Ze+a:Xeg#yB iٞUU2hHǨնXyid>@oIک8Q6`/ Qɐϖ4@>9P LU c\Nͯ[ úˣI2LH  4..!MI+ rjH+>LoE_lfP++@ZLW譃5=DTjS&dᵂ½n9toa*h6q(cgFV`v[h & 5mm4=(t)I>6W1[DaA0 a# 1[]va9n qa3,k`E!%;? -5։KA7PBCw$VQrFQ=Zid87 4Dn횺j fl\z${u\H̨Z.Є3)1m]WH SJ3eX j38MV,ތDXV>03=J?{#Tp"fq4JʕL+f;Tw:fkO(/s+ѝ2ccBl(vQnqnlB||Z.#<]pGؒXgSm1,K k;.%DQ6Wah%ږ/$HNb>ӱa"V9YlzK'{:\&&.DیdSofI;am7FƔHܗ*7T"&v!jB[ FNe-7((|p'=[$,P,XGLFn kC29p `эٍsq]s cbf*' VR ̐XrmF$y^ tM?O Ȱ(=IjO\^_V|a/W0-!lByPLfT$z0uX[[m]u) y>ft$?{0L{'Gں,?uU@Yf<1`G취]i$Gn-rWpv!yN4p_9V75)N3ȉF]e 8kU"i;4Tɯ:Q MZ 77$C[bx>,4d0>HC.%n*(uzLN6 ޴ A<ƕ\HMr$^yA'23f,>̇lVz>M'Ŝb8~d;fxDQ߈\yWEĚRn#B <]JUYB0g.;&ۜfoȋF"z_@:4+sB/XZsD2K*6}YjߐP /(r6#$(q$qY^r3帢ÄZRH ݍ{xZ1P`Qszh˨~ 3AJs"ui`f%^[5&$߮ RL݋]xNQ5o"A-" NL>-nw5:2PfJ*no 0 :qT/Xzl { r<*-IэeK(zɐeZMElG`bnD%&۔4^p4o`a 0 *Y[Ȗ j^/gѥ߉A8γMSl2FܗF~o0]'ȿU< uy$Z@ ox!\]T&`]]);wNN&|>J;I?6+전{(pv;!te6V V`Ⓖ98Qul,;>C$Jz' !T5 d?rIcZ*}rP,Ŀ(YhZvF="@rL/d[X6 aʾktsW#A{U.9dʆ5J_rmrЦI܆ÿw'nvܵWe#gpJ~"izUċgmܬ{>@ʥlŸKzV'03Gd*ٺ!Yݵ~ Kv6dMY8BH[].vfK7)B͂ϳ:tu8bWޙ1v$ptIL!2Zf6KxI՚!bgKu gbe9*[; m-k^ ynOd+йC3S8Uİk#ϰ)2fL*EP ُo>m`QkdDT=<09o. 8#rO]1">ۓ3 0EaA$VK@d+7ŐAO'/A&|9YR7ɨb}H,)ĹrǓ t=PbG |kdarF*D [M.;7מ9I"NЧ ?8wNݯZ9`3~凌Ngdo9 EOv7)[}`֛9?pbIm+X݆bLѮՊ]:?iMs4k|0 5!ZbT|;:8m.+U\?XgRInMsAEX\II'^*J FH+be"#㈁9IeraۓmԳ֤q;  >?AVq!g z_2R!/T|m%bFe2a5d)VӨ D`Cܜ u ր\Vw GP!ZᎡZSpl|_ͩewJXoo@vP pFHk ?{x[Ϊ$v%Wf~'g1&6]V1XZfN0)W&y~ w~4jV;hSSn/? *KNH<42T+"bkeij;d\1bߏ!*F&NH0?QȈއk~nA2 qsÃqJJZx+bp01}kXik.BJX̑MߠYr\&I;Rܰe]ʤ~zx`zU6g]Wf^Ȍ fd+ͅzpzڃbk X S')s* Bb~`͢g&AU3SNrYTHA c,Fm)BWT"s~)(u`҃q^=<+˻|*Ԟ6E*p da J{!R-kx.aw$J<-u̒@F+.A#+/DC{&RYK&NaYG>g/8{kWhLJNѓ9hnl3b1oV&*kgQs MXS~g&kYv!h6{>XihKNq>xU%:YxiFLhO-hH -K&3$ ^iD$z0~ܴp $Q1 Bp8:TXۭm_yaQm0!:l5Rd _L1jo,Q E ?|ZQ/ e792I?OAV0 epTs)W?+nHŒ>_|G('beGc(u'p .Bۢc+V+f$ FPz ʗ}[$\K QI`Q9e9/[,~ntu&:RS6҃*)Yߢ"oQp*faDAo'0YM)!>WB䯧oqz`RSiP{MRL0k(n hJ$Zkܠȋ GtUTiAcO6>~{V|hNEm*T\VLѢ~#/л1CHTCzDߊ}/1~N^U#/g)OHŇlex'r`@pY|~ĸ_eE$?ϥʐ5 ,!O(AҺ .k&u6tW9]v*1%Fu^|QV}ȹ^};]c H1D'ƍ׬R\UCk 9Nk?+-X]e\cwbbD%M#Ԛi65-Ti[ h۶1^?9ğ=1ϊZ]C/x'oE &o;DzY}8U 8:w huxIoIxJy# QRz2Cmj\d>0p?]/bGnc#ȍtƙ̽t0)bN@I/ ?,8 ldB5ok‹9ȹe>Wie*/-6 MvAM^PNܑiVZp)O1:SX_ ,'s@1dg<ͷK@Q ]rҡ^ Nf椁ںfrY8|^{X: Q_)xE4Rr}!,H8<~))}2TIv#M> ̆ђ@ο0`-$I%N"N8a"aZpG } 7ڕ dR[nE#ԌOcw!zek?i_cwNSyțI78Oh%7fTt:) ~Cު(ˠ|]XՊ5;͜%NM--tpoqF;RVD 8BDb 6+oiŸ#]jn.*Wd1R<-@vAf+˱:?8ZInv)PEJ%=HPtƐWR|u Gy$!Ւ,b~9(f9}`6>.2;{a i-ZF(yb݀j^" 8FBT7d4 6ض8F~HN"{OL(3| {彜A2Ą[c22 }x0>#ubRe(lL D=e>E8clg~2 >;Ϋn >3c~Z~02:̗~ K: !]r!kfA?brdR庍(E j0Dd"Qm(")-$]9A%iOu2V cÌ;="d6 3nrO;i+h`T0e 9iKꈣ-.H7NW'Ġ3[QD !Of~qy)BCvNڡm=h5M7@ހ$,/sp,G#V`ㆷx k4Lz$*uhxDTw ӄhv#gx65RyeC>V~F1Ԙ|ְ݀)R=@"LW6/E =)߰تm')ӆ)SLإj%nlVM'nN_A\jH`k!P/eJ&2ۇ|(]e 2P}{pwW92$[([Kdm *~o s zΓm&w$ap+kym )*Tm Ǻ1#=EZڟ!(..Z zESJXF||1TpL?\X6N"PFdbCk[[3dWh@NR|&p`7#™r9f^h |td_BXzХoאor&'8J)ȹ>s3=D2k$o3^S^xsȄrj-|;nnO=k2@@ғ%;7SH93̛ӭXt'[E)oѾ:`K[niD;g$};vS+$' h2Sd.$W唄h][[w=2qP͗ f4q1$u׃C>deT#`:>zh'aPp)8t2bSYth۝<J\mj-\5p%bMQfd }fB!8rq('%0kr5ۥ_ՙBiS8g0S(Ft&hf̖f7a`h,n|ha>sghДV,1϶"A Z4Ѻf@$&RZ,Ld@Im4`B̶˷iy_,8)}d(ݗwX!* I?1t=W.5ig^븩ufطXW 2I|$q#ȧۛ-ngT] ުfڟ׆|?t 'h ֘mf˺GXp8A|[ab-ǶyZ$%5ҧ;Nne=}d=!4s{A /s\7iEHB%\+|s:a94uHԌ8ܹ`EfKah㵕`ЈWkMFieS镚[B((ښU`<,I}a#~c?3„g| Z~ /zYR|7yMl+IW^q J/=1_[G9"V3RYDJx iguf?rЯ_ ƒJ'Ny!G ջE`4e„墧ߤORlW }s[ :C^DzO,7BQ ˖ wp&800j Z%GMl:L.=>/bB\J4eA5d5O@ô=PuPEYk;pS/TVFiΟ,A!y܂Po(G 3-t+}{᚟yѦfC תcZ-Iwy$~0ho} 3%Ф .z;S2#W>#jR2|svq]C0b`~v>|OtUϵLbMti&/yyk +pOL]|,q+Wjjij;M+%)Se\w䶅(ΥEQ*V;&!-Fe$xc(i#0K:%~;rt9uȠBm^mDE:9Bw 8ځ a.X{ƴh%ʑ,vX:,2ːzNT|MnS:ySkN Д"ÁFuo>S3dq>5"iw=8lUFltϙ[jG%j o3Y^9-]/3h%<}(I10rUP;2z{POif \ǹ0h;@ޚqkܲʁןOM@lyrn{~ *X``O@_\Kq,x-x'ՙJ\ꋿxW_se@.xq$3Rch_YhQ"lX{Z2F FDDć@BoAi2̾Ȋ,\.1MdrC:涴Yk(ځ ] oa[[N4Nݶj\3Oh_sq0H6(c \{ƬZ8J;ҪK˾TKR\8)lEڎX&?ujP}.CK.6_|p,ÔfszNXqI¢\g&"-jw˵^ǡU,%LoQ'&r=N1WQED:Nj[) Mc'Xۢ&^!=j ƙ?Ѱ)Q _ RaGɡ8^p.ߺv+A!Bpi6o=w'{¾Lk:3SE47!&ěn6D曁E^D\7}a ^ß X[.0W7YLs`t|\A> l՚V[=mա}ֵC r5&')uo;JWϦ&uz ꎭW;B`m,!^UĤ\&P%%'P]& <7L*(S,(/'h 9|Xʵ1ѳSMg,(.?/+Xy`sO;e(.l9?sS+u'`Dn4xY'rSe)W{7EJ-uGn?.=Ƣ 6^I(ԴڭIStJ<z3L٘|Ĭܰa|1naedlq %&g]6g[=kg}wG[ޞL֡tq/C/ 94>g>cl>w%E)T%E#2n9; $8Kx^o:l˾˳a!LSѳx%HmBeLW[):)0i]^Z$8'p ǴECxÉĵIGpȴuvfdcieJՔ;_rhZ1\bSZZ$̚R!Vzu6qb{[nB^9NyNyºP ^^RL?s6Cqcgv3v8 l?IsUgWԊ"'`!DlNj ~k71N[wRd1 t%'ʶ`ȪUw"-T%`5_ d2Fps+m9~9tﰩih Ŷpt=BNxWyی#,)x^ s5P؃?q#_Rѐns0vY/~>T@xfcxbɹWǫ9{ߊYteXTx!⻤gKsh(dHoӀe,|DҪR "c?F`DŽp) PҘyꜽ} hq^挬 "W3 V#[V@*)ͥD:zfs5FR0qGzzP 'v{ڜmYr3dr) in[!lY&**ji +8vPl$_)k.i*V RY c^\2{@xƮVB` 43 B@/\qcwfX4v.ݹw||{罦!eh;Kˮ#οVjYkVmxԊ= 2ze8 ,꛼˒PRW[ %Zi1l$m@O<hDB_EnD|4mK_0D4]l**f4wM7Si޴ ݍkjL#07;φv $3 :@_ju %Q"E;7׵u&Vj7|;st:"H =43|{unO 0y,OP[6y"'QȐ&8}Q'y+):$bµ)Q'hWoE־<o7pOam B9.. ,HY c? wܡ6xd;&%}Qvh,Ls;S046tDvgz8@Щ6bxV$c 8lnW?⺽0 ]_BP$ Ņ_(agFr ȶSa]mD\_ 8t3r2 QAhc{¼Bm?xRg:Jsdiuiya5 4o@udA6&s6 d\߄Sd"Rs1ʰ8%23]` H00f˛g>֖^mLj?JTgñ"@rnpeśؓ.F8i{zв"rȤ\ܼՐ.VnjsVo$s4{[ XE&24|qa?N;f;<0<3}qpz&|Su^2Hyg |{] {:F C>3,&qjz꟧.Q5npyΚbl5#w9\( s!U}>I+~=_FZ|ob. Cmx~QC}r0ŠCcHc 6I"OAz(zHLDsDJZ8A^?謩. W׊Qe?@1kނL SIG,,`-Vq;16l#ѱZ!bwnrtLn[_g=س C's\騼ilq8RBc2BOZ^~xan;r)+K?"< f4QCwU VYe -IQ -k|ϯO'!#f`dO2'y>0RJ'6Gy6鎧jG) гdU$f؟f9DK'4v-ye+H*/k "EY=-%Pԭ׈qƅKc l 9rۀM\"~8/|l}?}Xd&b&قʷ: 5n/@~5_:bLyhaF{. uϞWxEa2wp H"IQTnf 'PhHj[t=aрbh=a:gyR@lLӿ]\ʋFw?N'K)B飽-'Y'S lglv0HiġM)"r=F,t= I<(W/5P;Q:r9UWer)CQ>?q*R:PQ8J_:+%d{4-,_W¬J璞MHƙ~ n½͸]$HWl0 ت9L_uZDeė+:䂇pH+(hȗ9L:2ꂧ>hx 3jJ!oiI 2JG=+g/i^* /R&݀l ڔ98y9O 0^o}^#MG~Biz]:]i-YKnvHZW tяbǫ|&µONL74\V$z=M7x:  ڳH > =%ɖ%Vr{&0g¿TKZ-^@3:v6MJS EECqzirx5!B8O;=3GccVԓ3O>ph9^[8j'Ba]ZC2" qC ֈ,롞3{ݗF:Z(m~(HoU B#W,M8r%)ƾn9ؙ\X`A[C]Rna/!I~հE4CWBl"!| ZwhZ:3w`ɖ4d mB༎A~;a²=ΏuXyd0%&(Q6 9zG H+WAiʐ`+w\nՉoz'C-SCFjBb-:Xh0UUT͝G\3ߓf^g`o)e"i5wv($fi6>jnq Y"0>YBSr]@,p KA_B *q04)mIA]B0f"R('Ҡ[g$N^Wm]B.`c!wmzF=hA Og=rbTY˖`kw?O/=xw+cVf-~*^wPkcTTqW\ۼEJ%̠6$I-$< ~cCgLf4{z+n]:}LNJ!oj{Fi\E>4V{M/db@uymy5yU5PʌZY 3ew}|k󀧷}Bk'}zP7JDΦ%M  ӷ_?RW|AyclObX;0`6~AdhFI|U`3Ugu) y}wbx4Fh=K>1kVq1P%5"&~=7 5:Pc^cH,Z`3/fBg:Fk977rn#)~?j&ܞ]ﭱ5P9+p@AJ5hJil_<1/)i,jMx?g\;5;H,'H= N%iQ_<3:.SrC!'@Ӏ"zm#cG٤2WXoGPK%AŐoN&ү䰤ssaEWcWfy~{yvz^Ӱia6(II!S% ,|/qS81i&P>_>:K\=FQX1L62SIoWdỶra5%τIQΗ AV ܧ~e+?`^֣ q/N<,)4h6QפZEVšT,؀hO$Af 번7r}ŸȤjZ;T[V}*cHm+Uf;QqnӋ[nw!EcӹysgН'X{)vw U3bu3!I 1\]*De Nh;AI1TX^}M[ +f8Kk PtL߆np,{@1b}~!3*Tf̵"@,}z$ ZzEq;} U 3_:"`AlGǀoDjTzG尢X<]Bռ˪KwT`O-4zZf[EiXE\8WҾ~F);؞ eJiQgTW(YTs Ťe>X瀷/^ `_Лc u pQ3Y,\Tds";&3s6la;=ڐ[T_g A\D9S'-!/J)O=hf96rg{qJêd~ս~"ܾP\C:lsvy*d K$p0rᢣ.?9:"PaY-nħP%:'f﫼E` wGq_{ 3aCFm_ƙ&`. 6x4681%͋EPqўc4{ڦD\=(F&zpNAt9g!s]ʵ? Afm"KJ_X]CЩ5I#WA(Ԕb"pXoNu( #'yn@ 4#Nu#VĻ~@xL(!Q<M> Yx=V,saΤisCo./\ Qy<\Z(*cll)^y^<Y}{[V^JW!C=xV1 W~>_o,; %zܼo ;B# gؘv{ j^##7:D!Dim&jJ hv5T5ޣT!*f$W]ÜуBa;@Y-xt=6rF˹X+iugƃyOC$W\'|"%_:R(Ne'cNʓ_0D&Sd&FE[jlWSMM>*}z1ۥG0q,Qé )1ӵ2DU{'B e:~N3Dt%fIQWY\~ ꇂ12]8`fҙn0@[AG[`_h$g{" MLwE6Sު'K#r.c!]7Y&_Ab%xMӂZ}H6AaASlbUa:5T9r~|qzv9od 8Y VAXFZ>+lɦ=%zJ (L? i؀ż3ݹzbh]:N@ ,4{+L>NnCmcd֞~;$0j,"YSD?^%a?fm1~ܯ]VgrXִM)ۘM#8sPJ?mo$ò-s(beoQH'VN7Pd|%o9@Vj7ỉpwʆtjeo)&Ѡ;u'yohD5|Ve9Q vĉW1=EwsB ,/.][ N>u -|ñ* {*[2}Bvas?Z?Oנ ED2)p(Y9ַ E!!j ̤$MR=i9"1ۯnl.Zxr1j?l[_{ĥ !׷}~z4+DSֻ٥%yi q_kK ZHw<Ӫns4)-P7' }?H C5|;)YCxOZAUVR@%Nq߉,Z6ȒcՔbHX}xfgȟ#4h['M2CљWr$G>>6Z!9FG"h3I>tREE+@Ήt z kJȴ*C.7Wxŀ?HaƯm^cl5v#Ld3|Z%.xzzQ:^88 %KTގ~x kH x/Ţ.vw,yHCnU ֱ쯶)V 6^Y rE]YrXn>7nhWGqghV3npWK}C,dY[L>aIJz͛o( <ҞHq{8Yk @,4%mKP5L2X3FbT^ YQ*Iي2ve:XKy&Y.  ,ك"4}Fq[rv| VMS}5*~G)+2/#%uPV~BMF4xTN5doÑOtTgV  d`UtC(U w) )ZPa/5#7c-~n: FM(>.ˆ`01BUmr-cOq-p7eq{Ppwʜq;TYγjTʹM?U7W$ȢoL UN 4᎔ 9zgORe7$r(:vq0ᣑF߬\%X"yT/l*;&X nbb~#= ȁm^,i3:j Su3t7įAbZ"Q4S|'Ǔx‡,-[*hcRKL'1>EW/hi )~׆%riKݧ18~?~o8lL4p[0WF&7]ALPf֪t>a"-&SvbXWqCb"̺o@ y'n,r&zC jx`W_wNs+z xHw'$>nqe`烓!z쌜v+lpȴ'?]g;s#յ85Vm+3EcsX57ؖ\yZu?Fz>[UH4TTZ[ە~AH]<38yv*рR,W41 i* mup$W W.X~> ,Q7X7Dٓ~~IR!WTj[Oڛ_zѩP_x}:/JbG. @)XV,{p ^sK4M;^kǬPCڹG:KgKU~vf[ :. e65|Rag9ٚ8 `3EaߦǴ\Np 5jILiG;Nk|Z| \іUNka79~N۵7h߿ƴ( rlH%=`b#]==hs .$jk<Cń` GIPkWDG%fIӠZ9bS}s@#2^pǭ44P)=UVZVãl[ly2["G; <ް![_`ĄpfL:9 ls㈒RdsC#j|~< żw'&1Z7caڔoL%"[ ZdKeA.sYT9ڤN7|y|/v>ZuEh^6[c ŚQ_=ZܤmFֱ,"bCGk xI5߇q0=f*AO;8H2~!CVa\^vB/wS?¨]8EN/@}VSHsi`]*afnYhZ%'4fuhvSS` &<06լ -{*&XrP*JMUjj'ZtE`&d$?zr//`!tSUԼ$| ~ٛ+"J1}'^p7$Lȑ?(Ih)w ("Jٞ9j2k=ʗ)8O6mh-4}Q=1ž(0`L/Rc]ze_8Z~ĻķQTB櫏95"VfPB945#(V0C+ Y @ G\5PcJڒ8 Zs~a&C-#y,1 3mp!%hɦ㙆]V~'(JA>>ʄ; 5>z(S<ȄH׼-_Zij#yB*K7TiDyM'o2]7Z'\L@'0MZ7<(_ءJ(O):BnXqvnJt\R/J&I40-Q76i&|Z*݊FsR|=>l``Vɦ"fF]P $nDNs${xkKzO_]MwH& +:{vGVQivsǏD DyAmūI8Srk`Z}#e L/-dp%YDڵ(Zf2ҩ\]egƊ$I;]GC9'7#i*vmKfGgAM:șo}_Q^fL/[2=7 VwzuIa4FDH< KerցcDXC)NX[f6Ŏ#AL@{Ǝȹ]Ib ZwLP"IHj`}gxgQ0^*8dg Gk@\9&#ުmEGj- |gե+vsD: R Y`=m6 d"IR!55̈yHsnn{?D!ֈTx, q'OYdȆ,Hl񽩒py1U7^w"6 vTCgG.00_wL{ךsake%}mn!ޤiP䪕 d/iw^@>*t.b@[n-h?|uY#nZQN[;-xZ e{nU'ca:doAam>Eϗ(0"龱hs<0=H!/GǪvXo]Ix4bZ"9@8Pa= ܽ #>*'.b_ y)އs{-谛L ؙXVraz薐n#.u }F{Ku)bU6ͰKy9fVl&6ceP9tIT$d\[5 J(9q!!>hy7~][{qێˆ,t2\fE]qd0TPa]#q|馪ws`9+B|6f9ZOGDVq7 F@-L`t[CD}2JX 98k(|tТ4anij\y~'W x2!UA6@֢EɉI/ͿJ*hU>)_w}c)qo“E\Wį cSp!֓\61^=W6~OΎ?}{9YW{2_4u ,6ϕ@]8h=7Qs2 p.j5.! ҳ-/]E&WjchZ V]>/he=&^ 5hڌ~|@uxt2,:ǘ1'Ӟ IJڜG~]wcI |0nYW GvR}쵒F.|/:|U- v1/#.!KZq;3 Skk ިa"gDA-+gG9MZ0iykdj6'G%!Z=e蔈b5<4ӈ5lOM U}FU~݂qsPZod0ZM^ޛTŲw.[-ߡنȣz6jmiѫ1g#N +zUgEWhK\~Bp+^2`fA9zMԖwpEjJfD[ݱK_0U!'Xfçl+x\C6H_&&:L&I 1F-*vJC[.ɋ&2>uLSBySC#]SC=cxE<@h?%#6haŸrܚ[L_x%j}NSƗV:/W <;^sT_,v zJ~ @W˪pϯګdJ./WDUJ p3<`3j[B`q!A&ļX2,/K4ah6"HWOJ}?-` } LR2bNN6\_gr h^~6-ӯXnfy$VW]<IZF3y{fLIθNT7br2D0iH@L "o)lahҕqKS2س#0H! T]4Y#{|/tR@WQx"xqA 4瞢ss!c-g{ccU Mv-PpFI;je0JM %QùLGFݸhi҅l^0aq8]3P2$o|ՆSe\KB%{HJl}#K,g`k~L jzmp9@V`MJ4E3 3)3i{8Ꙁ5{>ِ%}5MklV) h :0cћ𻛞nt:cZ§{$W+z:39md I^z1pQ#뀖x;ź6S$S3[/ "#>p:"?*vndlD*._A6hцsyJOBo 1є{A;\xUGJ=X#inp龝*M [5'3zr*$`Xfـf=DV ۟_U`q]hLRC~(; KX!ɭm(SLuOnn|ܹFۢf\A7 pu90;ڱj qT{$ZAol3 uJB~oǧV&UB`t+x T,"DУ"7'H3RP@1=tR8f'OF, a[fE>ߞ`4څU~(d`{PAE wgAZ@mPʪ i7JO?z6SZL}1 2)z^S U;  D>$ߋ^uH0!RdqܭH?go^3́rYW2XqZjړ}6_\`B1M-9]ᆌ$Ҁarvh(5DXT ~U #a<;"Z.uxZ=1KZQgL\ 6t7 @ 8;ր d_/OS)"9O~OYKuFgf8MkU\#m Hr:cQ*kԡ]/dEXJB#/}qW{rjlqD4競>#eg q42K8ST HH C8U:Y񱍞g.V=.S^.tj16 !}!*}Sd'JU"o :Ʉy9WxV]pϓQ86z5½Zw+h%HXce܀Yi&꣭ ^Szi<4ە$!NDRgW z `"GԿ w̼ uE Wك%1P¥,c#[B8'ȺT8CC>cc{I=;^I]4h gqX V6sS/yʓ{,)bYUp&:fRɱHC[s5}3siWeFeJNFt@_W dxK 27ɔ?8Mj6zfJ  56-CI q4%Q39(Rr 㮇q/R TtJN0,hl6X+m$Wκ ~%iRJ6̙~<0KVcgh@M  g6ݤ ܎Q]Jm G煝wxs!آ,F;p,Me/soc<7q j\,FQQe_1;LJcjDZc D$a7c7YRtG%-!m9UNh9J4ƛoO\1k+`H Vֲ}8zF|:DˬC3&hܞ 5MKB W[骪NlWu>>@p\KzԄe֫;23@gs#;OD>lj|;v@vRMJ{B#BYOg6ZM@p@B0 {'8"muX7 I<W5EX! i.hwD' p4;Ietm֤Ʉj#Z3&37x(ޘ};ϲq%sqDzR1ԬLbp}6$SnJؖt2WbrZmQ[%TWjOY݊@XuY|G #8%Z7^{sT72f(qD\RoI ݋웹`س8nVi bq(ȜT(;Bq/xcЁ[=SgC\$ ey/kseyl|;^rKlJ6/wRQ,_{б2 E# RlXƣƔ">Se4yX&oNhŊˏl£"B=$}v2GW8!S(vkZI,9`V<1Q51]](sVi0#R\ f|<#E_*`e֐Rhk\͋c tA*ju>6%kNt~D`oc~EuD ?{\F T;>OG}0 %dN*&}%bVoz)MDk + O*v>52/DnoGd !E!Xﺻ3g #wDt,A/*1e;Dru$FGM<^%~|a_d 5J sqE?{ƹg-`d.d- wJG±mm!yy5]|r\7h`Q@^߉id%P̋ )VKTM`E,#fL89tAm>FZ][T_u7{k)aS5L/φ!Ji5 &otNY|[A,n#3l-+loJ]Mcu;)hf=Rf쀿8uڻIPJ#y Dh{ ,,еS^ wGr~yEQ\>p|:̫zM {: }͏b@+ L,hS.U?o5}6oZ_e8˨AWHnxIrA2  7JP[5W;ut _PjX6}*Y [.iލX/86b0*w/243w! g,B<~=䣃׷&cccиB+ӤMl-_ef%[*f;ROÕ̹`._\iUsiǨFa k/ma=TzY'Wn.pvISc)U)!RTq~­CrvӇ.K²u>\吆聿:N!dTO4cӪyX쨤i |Vo G*fv@!C=R"c}zⵌ(Bʈ⟻[$z?}N6_,c훈!\2>\J1Y$$Xq؛q7:7[x{;ħ3Klf' # -b!|i*̴ ҟ뉙Fn' vpXRchp9Ȃ$vo*[u5Ie+ذvQ OF5DH< U4'yuo yn#Rմ9E'Kn:0^]7'Q>k*,C-v܏u&?ct@nCcΒ8K]qB!ڴ~A:'օ)PTqU3Ÿ&!}xK_E7(*479^ ?tTDoborq` rI /${CܗWWO:F#p[mǠHJACPeMlHaht˃A| =RǵYW`jFY $CylSf-}Iթ,ˤ|?1]m0̲fɄNtz rrT C1G 7"q-"anYk&1e2LW ngIĪwJ֩̀t#ZY\Q"6A% O&JsP1ثp Y|Y/[Q>N>&@A%xU6swkeEPX՛Hl~ا2GqH {vͨFcA}?= V?^!~)סdz78\&, Dm ~BP,q{LEgEP*C~9b[#&ѐãW=pY!@9Zzqy],yDbA9 .}R4[tN/NiAY, N^pWY:QjBjd]:(l46 Ua SB&dS8`ar 6#iA@l4v\2Y)J3x *?k _7,C6YQ%SE%t]pM0!$2N)*ۈ^ԊisBo} +1PCtI|%:(# eF`ZGY Ju"S!3לd/qwlZgm@pGiTm/.Z`Kj[")!s+._3c|L>rV*vqzarϩnc W7E%Q/gBvEWSnAGɣz&N<4Q&Czw]c$} 1>m^; @Ѝ1'_ +A+<;UP7*PF$Aoxn*9ScJQ #E߅C/hNE5捯_Onn0@KSYm]'Rܱ(7@gz rニ @S;ҽ(ႈazU$*32sK,MfM#}l FX_Zd-' \IHt${佢طAg@}s_(o[;tn;dK'%iNzXPhOo -zL"bmFYHj$֎)Zf|NYUu]WZm !wbhR|IuW)c,x/nh5g% {FFgU1":69 7#nOyW_{vJE-1G +UlTdi"k2,4+ku=͇aHǤFnȻ1dsIkhwv8]^禇 ȏl^Lf'%=p=1)"-t hٱ}7!R: Ü Svm@МϩWrΓhJb?p(69|Xjz|Y:+/I{S+ـs,g\z LYe9NXIj"ܔ_yRǧ g@s XtpvNZMU9B0 6td/mLB[N AH3нx{qn"6YVG!Yno_4(i0LܹZpbY(LC,BG:Z6IQH띊x]LyNnH>lyyڅRTf5SԒ?;a;6WIWimr|[;a qs:yixɳ:!nNANg:^co4-0&\ ἧШi G&}h2smܡaHjnp2H_ JO ^zJ|[G@h+5ئ@OwR1!:I3_L`7,[P!f3 ٙGGgnBrF$|1#[vcid1&}d/VC|d^/ހv!y9 &FR ,ݺv(ޫh`A({jLo !/%fR;ʹ⢮h[oI,.3O*]Sb J賵F-5Du35B nI$IC|5JC+N>ND8^tJ(7ڤ$U)ʐr/zU4;.jʤQF"%b&0\[ofpy{o1 "c u}0|HƱ#3#A˶6 Ϝw>mXʙ%7Ъ/=Z#b\ d&Z+ײ97`R,Z沨pPS5Km^-_dbu5jL@7ni gW2$f7zT~P[I U{l÷1d ni^zwT)M4VE9|`κ 997Q(G 57)yI b,0`g%{˗,n(DAt ug!.$Q(wK[RQ EnT {;u'΀zqUmQB?fZ'ld%̗\=S:LJaW\橖Im>y;8$1d'(J7N5Y^<ʾєB}zV'':<΃Gųu21y-ksCe$n~ߐb=(pixM?@Rֲy b8SN$krV`l5I3{S] $j#ǽ4ᶘ$DnjQ~`Dzr0g͖ kvw]*$lx86hsD87!I]CQ9S֐yt ̈́K ,K\߅9 H.x:OoqnbLHrEo$0aca#\sC-c Q|4[JS~Ь$Em*OC/5":7 zlg+`}Nef_{Py"h"%Wmp`.1f1ӽ?, shLcCޠ~w*g:Q6~Jd\r&Ag"7ʊ/X'ACR:׾9 `#0?lZyA‚B@IS?6CyX8FJ( 3OZEz8Y5>pݺ[o`̚)9]?E%Mw°mU%LE'qSY29M~$mĀb kKS}62޿7r@J5Ad+)(c5_O KAH(CbIcܝ郒swwK-Z|@%H C>dn!8(PL; +X VفUw\Xmh#qE = `2Y.ι~AfwD&ڜI0sap`L*!^Φ5ަF/v=єbpJÅϧ EX>} J8x$}S׶H"Hyi`x L5̨Udi}vTҫ %8_ r&H(g}Vh^'7ҷ8HmƐy94+jO;qMN櫄z71US @2%/soPĘ%u(P 82)QlM T_NNM]8g/W=zWx ;8nC?H>^@|2 ܍ I86z;=kk4xtHB1mjjoX8Dg &{Bݟʊ,Toj,Nz6> lC[oeڶJ2/(*^I ZGh 1k@yKDր6怜|5g͆anLJpVkx{{KVh&y\8:Wo²Ɍ28g? #۶19Ts{i;Ѝjb9Ŝ&>rSi6M:O C{q,WQ17D+@"lΉ.U`KuFW1˃ãVH#'WʢXee-t wrCC]oiR6E޾xo}6nܣ-QB5w?7![Vx`%:.w;J>%ULYDԐ5tAU4/j| M3PS{ n"-Ӣl/OP6oxs[>\i(1"Bo ]b+ILU\@ ̝$#6M/@O!=֩`1+W4 لE]Ts=0JCƔ^L1ps[%+x!C" c?|~ߤ)! U [ R> |w{P."»I܎߶HTTrpnYjH u#/'tS{ O U)\ *Y*+ʄ0;ʈ _ M<tF(/}C)(,{E_U5sco ]A?fq;;.Hˣ~ VU@zh.Gp&hE fGNA'T‰ؿ*M%tRI~϶A˕ml[{":m2-'@W޻z WWrK(r9&Y-ȼ*t]MimlVQqc[78)߁:5J ̽-HS"Qoir"Ù9xkv&شj;i1\xULKs43 c}EoȈX[PQ$O|G3<{_3 &mU1)l<^?D]kR1d&$B{Œ c`,[y1Ac(vy'j2Un$I Th R1EPkX6}B[ʉ.{[pv$u-" Zbo;8|ݩ% 2rmfs}v^7x= ~>[J>ѼcPWTDyf)YN]diѢHU$ @ms ɫZA9&mW\NE3tkI~cy PeOZuBSNKhs!Fǻ>_i:ݸAP|`b1k!.YK@_is%Q~Bße2 "ta0-Yԕj}uJ% ffDq) WR<~ǼeufC#3j=Vڻ)J7#oE-$D TIT̙z` cX)s)!جabB3^9y OMsdB1#biW2Ʀ2t$`/*>|TX}/:l&\,,RwQnN?~J?eܼj\KfLV^wpLnjRtZ*7S{&2j j_bo<kzCTJiJ &Lg -4TyFRЎM!k3Ph,E*q8oVSUfXFQeUOSS70=6}@\Vib5⛥Զ&]0 5+$(݌`(|roMYm 6K+qn͒HI:~/n4e 0uRt:95 RaEA~7g\ GZ^ULGYUԓn cC6>|^ RR#_%{NeA͘/B}gC*RiSzxU'Jw̸Z{X &ѵq_ʹ} _-yq^~2Zb͔_p~$8׿ |#,yYLz@J|>?h/(k.t+ԕO4Xzq^H7Tأ ѧ,i!܃̮_Pf)a\8؍[i!OoԏC)g[[/*M0 ?sUk&r0VuWB\k>{vhDwJn55K(}-c: \d_ERI{ ed 1u~|$c8%݈G2Mo tܘLM;ԇiC ڽ]b <<>Z)b꼃W-5M$}>%MU DBik#Yѓv1 氱a3(qV i|6u`qTA2.1x"CI_:(GБER1x*_ 2~ȵ~+/o5 )RkLr|}gbDo-t i!zl4>jvDm9NX4{Q wlAa◊Z Scpzەo­.Z3pջHMDZgn@^q=mDҠy ƆC4Z*Ln5'l)qSG#i[ Ǭ8り_dM!ms)ct!d$P%cOF2v68n!=,V0`/[(=H_, %R4KvKNѰ %|`|z]6}}\6ѡc°-W@TؽX_E{v AU)yDIAKofIZr37-zRhƧ5K*3*|3g SQhٓڡYSb>kFg*5WckK]k_1E_#"vWaD^#y:T| P{ۘ_ ̗Z{Nb!4%mϗQ :DFjI9|(˩/Ӭf/[~::XɌcHJS7BR^NT-[t){yosf!Ϗa#NbAe_| Sae/aa tݚdZM`hl~Wf,*O _ Ea hԎ0]"@o3\*bHK(ރ%p먧 iֶX`Ab΋B-2 i=B. %w"Iz?@5U00mUϩ+¸MRHR)J@ r\(}ޟev4>^TEm>cK_+r*=Cp_r+bMoyc o-NsNqv.G>-D 9߹i R4RezN#^xZZu>z":dAh.ČZM 4teNtП\dˡٟ &a\&$)m[jd%"n[wm킙e zH% IΨT"Z l՚ڷA$c{C,}}#ďX^[3LR8Pgūpg^aME@!9[xN/JGLz8@ 'd6`pP׌6CʻXU'vw!9H?r-x ~L n $ƃ(]7{|mG}4Kr_"n|Gz ƈxx,H 0VU* $|;TeQR0pkӨ3"Ndѵr w/ $lf夞cia&I #n=qO:wbZ(n[(i>, հ?p uzq~ P<<V3K|..1Ǯr>:?{p5"ϝ>"dكW̍ʉv=>מpϏG0S`ēkc;F4S+$ꈏ{4=xxgu1/Kv9sp&-W,^;X|S D[=sJ@p,`6zAW7OWђ'fж|^e?6'{O7!l@![|A"JNJDJAZI1[)jya)7T({bx Oג2mvYB홖bQ_ t0UGt&m %$,} ij8r!ai$n!7']pL:U8=fiŐWZ'"q͖hV`|ROy`Jf]=*3O2:m7qǎnCK\P(+ hj$$y/- *LS춋XUJ kWuv xN1CdX $Fpsɓ~!;C-Zռ@t/5hn:Eo'R$*k8aϷk↍ u]"ҋ[=tNrDȩAJ3_4]w_fI]"%T"p]4GZfbH*Zcj }rϞknJ<58H`/&<%8L ]ovw1%u%N>0o#tCVw/yZ=*Cז˥[XA|Mdӡ>4S9.!mralMIo &jl4zɦ;_>s Gֽ 3З>tdd59z INL|b%]qAc\+'zO<;m; W祜X[P/f4j"i& |8H̀grw rq_f9;ǘ_z$'vlXOpMh:* g3 ܶkŤeA t1&XbP9)#J)ۙY|Ah,5_4[Ž$iD\ ͩ'6g5gA@ KSwBuqC^Lr#^ D_0'W0&:Ŭι+lUTo[!2bgh/JZrjY!3W=a"^7V Sb #~&O> "ݧHN8ާt- yh4H6BF6r~ #n :.hvcވ6%NMMyJv{ K]=m gWB YfRәqTrQHa/LӎjI Of+]+m`CR'=Y2Twu5a^1I~'/6a{+6F MCܫ>s GyWRmWW%>i{ ק r R=쪽BUQ-SU5 yCɲՇ(iOƗ%:ӾkkUE퍵72j(P|n 0WzսՇ *Fq;*Krv[ "$3YI5.K/wؙJPRN-Lr?'S xms'$j%s6긺8\nckL-5 ts&)xݹw]MX-ь'_J״MD f3(pS{F$gU/5+>L7 uN>s \5:s}&`yj~Y>Q!;~y!{k6hmn{BUyu (gQw֬@צr L]0m]\DGA$ve4oЋP4,{խgWlRal$*$Ilo\w¹t>M9y<! &z鴯`aRzkT #wo27KyoaE#%a:ߕܝ N`x;AiTRG6צ)iJ)@gv$sUTYGWEǽԀM^[r2J<^B!Zr?5euG0a8륰T kE8C ˑy38FNVLuT@*RFZ[/qj|{n\MDY]Oz\cmxmFd&x8@qF OjW~)(B|yV sɪ+C%=+H yB *NณcO6T9*+z9J,ok˘םL8|%bBҜR2 M)AδH ^j>YL0$9X5(h6qE7D<*ZpR~|aHn9zwvߔx}Px@`4Ϡ݂_N Gkg}s `zHJ fxڟs8?Վ0t$ۃRlٶ> MԮP)Z2Lh-p6ϛ?"3LAW6'yt|EMrیpJFa9OQ*zBA%&E`%[!pfvY čLҹⶖc * 1^:֑w|gl))R#'^? ЊƸq"ޤ=uva!קi! FPlIIbꎢP6j)0Nm^2*˼NK5SH~O RV޸u/Ȓ ĨP#'<LoÝtk8'}0s[ʼǐ )| N.2dDCMh\kJLBKaă:;-ÖNd`0 f2ǦР. ,u2ójJji{CE[zaRQ{U0…z{Uڴ ӍXo?xӍ2T3یJ-1&P> J)jN4m(gb\*)  FMH r 㧖±OEљh؈_*ށkl {qL5Mv& !:PT+0nԪɬ\=\)C_K 8~1Q^u~UoS,7TMn$76aZZJ|9%"q~NjF1yK.$C[:-#Z"bau7eы +LhB͔$z2`6rٴؖ$N'"mqRScemfq o/I G9Rs@IȪ8!Sۖ߹m٘0T~aUh.1pKAFX{?Z$lo4i`nW*6gI2@4n0'RϿ}3™SM[si@F8.H4 (ӻU*\O>(i`wH1.i@Zucô,u4A^X(04^VmF;ʪ` 3 GWk\_OQ!muٿC,W}&}@xwinˇDu", rkg9`كŧz1]5ch-\eHB=r`[+b Qp3[K ):lO'*5V\[:<s0H=Z&ß59RA F1 L[EKk6-gɕw1:V3!Ɵo-'A4.OYSBƛJ\wN'a.)xf/ '.sN +7ezsQ&FjBJ-,8y_26y!smB2xoSke/FwIa{aIЩ@71:'G~>9Hrrt-H!QbS,4:Z( fnTTaX_*00G]фc (`YU$ٱ:jѥ3xvb"HH824Jmq fO,C nJk|s!ƑA"7]Zh#]K?pjXiA'uM*JVA;Aԉ{O [Rr}- cY(G5ȅoZtxk<=;L"qbT,WӴ͇V -uTeUp(R `] 杆܍ݡcLgN}7SN/(z Vڦĉ ϸY'RUUݕ?Zwm}ݢP7I)Ŝ< nc0aMD*?i%4?d-?إ1fO jy;A˼ [o5Ro̵,8M2hTE;׮GDowɩ0ZP&DTboSYHv|;zg) "Tt]Ėx~X6t·<>aF @`];)J^5?M [E*tWPîN+X97WxO￷{. ؟x„3:O`ka拙(Kጜ0d~n}#jet0)魠A ^>Bx^p_N,) {S=PBu3(-77pHٺ%1 t]@pj:;QGCokUb3<*TQ8%Ym,f.a/+Z01 Qmr\QѕPP/M NEX%8vbuED:])hɵb{XyV@|w#2)Ulgs~ȉ!QkfbHE**o$Vܰq++skqsa{ 9 $E.4tS' JjqO"`)}v,$GZm A{fN-d.Ԁ|=w06<@'|QV :eeMU8h?O[a[S@Uگ'ͪBCcf}"ڕkD֨$S}H4Q{bEfyjhC,7Gl0CÉL,b^Q0Ou񍻥J2J8 6p4׮)'ᦖk1E҇2$VX箚:B$6 &y#k[tf1+JZ?N<'@#1Q=4$7OsCtbjVȱLlk=I{gp^]LZ^FI49'n(0ݽ&'˔s$61 ak`ݩ`uԻ/&EAk!F>@eƩ3<)Ov`תfqR Ԯ;. #E=z^u~:q|=NO2Gr>f/3ڤs6A!N" b\Ѝ19qxݚ+mÏ8;OHY'[s^_, +F.X'Y̋Z㘧Y>>U{-urTnAa7z03}C!1Hq{\._" n g :HK-Aҥהu&Ze32Szc0!7G7$ Ϻ8Wp쉦7H<#ZHV_zs6_wvYc#aTv_ʆN}>A!_$|Q=G>#,W{Gz+@φi.K~Waܤ$mfBn*I9q+UHҫbw}Guφ40#u6iqKjqVhɓWWqِQGqmN3{m,8YwHY~1pDrƮw;?;uMŽ0VxStZf.JA=%YT;֓?_gȐM9iF_4L|#e2{s9}kmX賈t: O3mr*6 Y,BfT):tMMF7l |.!0biodXށ^0ͣi$4E2JpL%=d(W ۫t] [1 VhtA>}UgY(øns>裨. AhY-C>Ub+ w&=DQ \ቁ|nB˙A}XXe/55lpH*!#o4c3"|Ԏ^u?BfI!f&n. U@ciuJ~j|\SYlO֔w5];J |}taX`yeh&7ԸgBo#VmC (3fncVG:^t%9*OΚhz@ixON9Ta֚w5]ktn["< -ܫO«T&^c)۝ppY"7-BnGӁ7D !۷_](l*W"*^Dxx+w$JJ u;*܀Zw (ml,6vf W#;Mm$V'ࡡ0e ؄=GO+jɌEd+㩁f ƭI=0+/TL1$G5'|EFm0~b!aG\gusUCʂucM}-2Ljd$o5aw7 cs2i%wWX N[NVtT54e1X%X>hMޙ 9ziՆ4U2Ir+7JEM*-1WoE[$.Lŵ\4%50NX>?޿@̒P00=*Je  FP p`KU 7ZIH'eVZ`ĞA e_+:z34'fJ\ Peւ8& ̠ ^+<ܼG7N2P.Ir /33D+ #Ɔ>5Pzy'>pHXZD "˯FC[i;tIz "RQai1kH/X!Zugl]btwzqy oҠOW; 9RukԺYH!ypP5efZP-[jYxHfA?}\`ckDZ *dt\vי Cҕa9cَJm{M^u-ԎEö;+7@8NW#8#~_k4+HgTvL1A7x+Dx޷ߵ5xLtp$qBo6ü*Gl$0}0.{o@m pC8}DN/˂4"-?NG4k?Ǽ]ќ 2ɦsD'm!ZFNw4czDX==IpHm"RHİ>}wq ?& m9 g{E?`HEتCEyr?G-% _#Y`ϋnYf3t5̭'~=i&CJ' PǺ?2_bPzsvAd߽MO7΋q׹6;H,э7fqOuC,h !ui$3K.GBhԟC9F{Ŷ1|B_ٷZӢ, f?ݯ_8/ѓ2%gq٢vf.x}u.3U4= l +fDHdvgЕgtFqߙiуn ;IUTpݰ$7>"3:/C =аbu7,t#?yXi8'#nYkU+ݡjxܕR,jn)Id(Q"AOVv𚥉0:\0A8j^w9`>J5QMnBD 0ұn?i}I"|oȬ4Y\x0p[oo!9B{uڛYt B`CLb? ѯBÎc豰,",q+֒Q\)$?  t #*JEYE6-mt _,i*NL;|QbIPEZ=uGd] J޳x2ZtsI'$`LWMRSsV;AʔtE߶5J@<lhK>7(LZK?5 >}!dY8+g,kH6NpϳξԄ۵fxܠ/=z(PB|vԔ o% pǴvJ/]Lct3ﮫXib+?O_Rr:ԞԛB>Xv,EN WSA1;a Ҥ{aC"ݤH`k[JT z[j3朲fLeF+T&ZSpNP] P)Yx|`ȑzFubSTIH_D8 S(e4=#Uxsutֶʙ 4I+3tX'h(hff97;<~jʿ!u aWe֚*GM> 8H AR^Ģ%B לۤukٗE q%"fFute?ϻ/t;g*Iܖan:Iظ`pЫu+KQ8ќQ8n8.Z_9 “T$rUg(#Irz^ϐTy+ Ez'T!?IV2W7r&\R ,ޣ0ᬬ?W=E`9|q3[I}nD&BW ?|!8.mUt)0zNP+1el3Io\#Muìͨg1EuHяW^o:%2ﱢT+cu/_%H6(+'fw i : W?귵ݍ<ѐWgƕ\|:- P3׊Q>T<)O ۦrteĈ+>'/rg~jO'I?Ρ]蓑zndjLЬ#i>.Oۊhd˝TYR?`TO^qH-ooO;>؎clnr&ye<*e?ottM;#T/G՛ lOЛ6iD٬x[)n_H۟Nw.ho_eڿgVfz=I,c|b2}d3SB t3Q`g,_+qzFC=3x{ +Fr_ø]Kd_6 ˙i$;ȃ;Ҽv̿_`K<ݢY>"Q'Sz4`?R [C'nq("҇1E)mɷJyeAN;n8a rg :Dwjj^-xӥ}^8C^!ʤtb Yp )10rLt62I|W9& :\MqWY' '#GhU8)j5FiU'KZNU}Ws8;$mj%oY[~NC]pyhY A iN1d _vZ9D~o .eqDpFO6M%> o7mO| z8*ߞ9'% (  k\o3hҚ:I$Ss/w65*$`<͖b06tYr;_L"ÒT=ct Mx%X6s=aw-V(.eג!P[$w3"Ѥ1~d5Aa P3&ȁG  q3{y)1eƦ<́9 ,dt-QYrH7o 95]aVhNs,u>6&U,'sFZ˭xThG<Б䡳/$ь)9ϧ-Rm=;yrȲPX^+Uj4 l`h/F9MvZ}$ bڰ?G"d磷֚eĘt>r+p zEX0/B^;U jΞ[aYЁ6^MM;| kRM?{o|Ɔh YTr~>`9Jgn;.mX{P@)TEun{ 6ٲ[=N2c34q?ͤ`x[q K;w'p-Z7$i vQ]&*IF>b1 \ȵKl5BgqIiMu'ӆ#9yv{>L\:?{kmjmS{   {TRkh_$uXGh!J6 Yf׫Y-7^{dܓ-Cp8LH+{U, JHZr,%P3)BoiQ0݆-t.'{!G+:ڿEۄdPQ`'NzRnFN@fcӡϸfFޢ-,FE5hz1"W J k-*"v|>SZ98Q{q.%c|ԟXRtg>}q(:~׹5_L8ATG>xXP}s]y,Tp6Av:8 Y 5 mR/;"[!HaV)R̯|+ӵoP4 ۀIjA~O*nBgdʾ*\ A@EE wR/C8J\m 0.e^&I#`5Vrr `91L8lO߿s;>m!v,N 8Cl!xm¢F/Q@e,"<>θ؜w&[6>7^\3|ω=Mc?un@=8VITom.{R 4xɵb@a %P&[.% 8#,³;Ef< n8άl۟q!'Z/FKdi<7qg.dO(Irm3y{MNs/rkor^2\7A|>Ah(ǼˈC=VƢ!d &뜑F4C-iiç8$m*ipN;M({G$@A'퍕mz{Cpom@Ѿs*p=߈ 7lhx Bf]x[z}i*Z)[BK8ēC!yy0G:8XX~&l<${uY;J=''t UPM$#Tڎ`KhsIP3#Y+)o2&"]a\ߝI$x%(N Xgg FτmTg n9W&[h)9ព?$g@V ˃*n}K&ǥ/ p*Vj+2=rxO{ a]BMTYw"31:>bXGiiԩ 5k\'W&~{]rvoKbc}"iL񗴡9G Չ_2<=,)c=֐ZND`@riZx91ŷA8q^/L[I0(^:;ڱpX#{5Kz;+yspS <;֎UpfIX2]L^"P:'ٴ^Vg>XO2|AbEc8p=\͒9>?,Xp:C"HUo#bۯQ-b*A3Fz 2ngHl1&~jv_t,AN-`6.8<XOZT50M~ aAfQ$k];hb󗑊x>=FT鞇E& CP`G@I7"Ehw/JݟqzjdgJ ~?wI(:yy Vg!-Ct< ?st`a9_ u-v; Ұ~@сR} ={*>&jwqemr˦1Ht )~>xkZrv,J>5}d$ӲgܣR52kB$AFzG,z[n?uˋۭA;atSy#_Gp̞Ք$yiX#J8,RKbͷ.ܿPnq>̝mxN!{(0e{9mmKF6sx mޑ*9TWV,p,K[hvleY> P駇Xò QVmPֈU=-D{|42)-r9/lDuF .Rϩj Eb->|W5l=Xw2t`u,} TaQm]عSzgK}[ZJhіkD+Er0 `oPA&P΀4ڲN{"`sS)-f#?!9&#G+WdQ}"|s|AsGObˀBS)߿aS@~X. ,=,>/Jƽ66E< Tm10_ERo5…B+4 FLRb Uh& xͱq`QJO_blTk#SGfZq}~ _(,WE|ߕD:Q+ì'˽0FcBgC*l`OtpEgߝ7yǠ \?c%4פd[Z2na!R q.{x*G[=DKPdӿم)˲=/H !/4LbشuTu'=!P"QÚVs>VbN>R‘OL:uωt Ul3O #þ.|-l ws՛#zGve(Oy,yn;U (hM! ܘJA %|Ʀ-@&vϰh~%Hun+j8A4ղ Ӄ "8{w<(>x\*,AXbSC 9ZN>vYf1 Y< ގXZ_yPᝬ۔1^^~%*U14U" yQ 仲7c u1<0nb9$pfTF0z8T=6NN J|Ur "m ".Mbti B%88,_,CH臞D|6V2x&y EZE j!AvrR'ՉEM-k!2V~ro.ߜ&MTcv Zb#yqsT D>9LEdCn<5ĦʠLsV9Ll &i CToJ+c$ XVyK?B`ݎ?r~Y U{h٫>9%?a( \|&?~+J'%j_Tgx Pi"“)زٝ.N1xlhA_x7w㊯ (MLZt~N'1{rGuH&ZaxY^M-#ⱨ]}YuϿ2GĠFB׭ˈٺʼn?+ qJ7p/78.7ndT9s7Lw:V~B0HzMGa??wD'WN͗1T4⭅ =&g֟[hpob?s=[zRIdXNZBĖ 8shKMJ*+N~;R | '6HUGBSDfiZ'͙.?XIVbŝ^dWbJBa[Ν)VtNlNpk)Fj.G Nxj 1Mʠ'QG&4)b#+7L bʼn4i@q0b`[o/C묘1W?):@H /uL8ijo2>}{6D^ gzsA*=az"+Ed9.B%.jMS Ps[emWT}$Nih ]?_: B9t99cLV2찑cRIMǽn~XB`ض7"2 8k,e8xƯ`V٭ i@=ݝ߁s۞g}eX`ME eCD5&:ru#!WDv4aSH%/-&mϑy-N5cLYFlF&\y,v'?|9Hg˳M,+rҕܧD[bb< Y+ IEY%jO%0(H-ϕ ވONr%؀ 3XaJ7>厵,XϾN:OWmB*5VtK+ۇxYy?p@^Lђ{Ѣ# V;!sKR|=m3kpbTAn$FZ[po .2ޮ֠R8KٮsR0wqT,Dۤie 2)ԧv+-HǴMC"jֵfC@ik.7{@2F{ۘ&Ηjw%=#+Ęf(܁-qβP&l-# LoFQ4W|ٷa2Y;LYġŏ`5NKhڢEhטzQ gݳ>b`M1%gO9^C ߒ W+ue69;PVpJvzF 6]wJW#IvrGGe6L/BPG(Y곉I-?Ds̒6:%7?^HM8Scj5_?_=t ez1ߧ QODE {,"EOfTI^!L(.8(™ǶaP@{ԭAe=Rgp-S>'YYOiŽB/Wlmk^& YDmǙZ7n4sLK QKB2܉1G5C:<빝OtlR龯Vnj~aN+ߺiZ);9%)EH$x{S|MʽGD6鎩w6"RG.w^,_.Cm');f!jG~)Q2t6SI_/Ň,5:hY.ZCY$:˽|%Ͱ{)ڨyȎ몎/Ej(fWzP𕸻+h`HJy}1_c`vKV2ȐF[2a,O?C9xoK\x1ߺTGlds aJ;>QX&zMeCµVGhX5=uQk hpMK^# Hu\'ἨS5n> q75\3S[hj$pe.̪E>SǗzk8U\α1|tAJb{ #.Myi%K@qV82"1k?Y&K9 PW]r5C|g3]{J:ۃPDkKHivj4Mh%3Kd#\=Qwt8D2\q;R6k6όQT;dlax6t?rRi嵾]N}r-#nJ~.p}sϏgڢ8Ӟ^yo5.$u>{&% JwvWv!ƺ |ҟMSs$GPEp?\(ԭ,wfCqLuoK9!|7Y!LGS]t2A& iR"~W $q׃ZWY]›LK!٥7SV:q'd` Ԓ5!@vD}9dc]y~|R9ȽU|b' wg+͠ n":ǖ]a} QRVs6k6zxK}VJ M(P>G}ַYTLr_N1s) Z?Z3VF i:{\WsnwB{Fה!1[hcYO=M*VbKIBKlY=tEنUgef(KW>5C˦u ^VS+U6dب#E tBz7tsc_!pѕM˵K[i\ kjDfs g. A0>@V5sݪ?7czm<6txvltm`I6/*Ǒ uųPXl Hk{vsve.L% Xkk IR)QPh&@ʠV7PlR'OnFk@%x=_'I?"ټxfQJ_?oh;}qS2U[ȝXa0ђ !sm= 6ZEfJߧ#*&(DwD7}W9EKA{[&>% 2G ̅Ђ\F%0m-I a>jXI YY*i+K;DM9u e=\¼WHޟz蹱p<)a3wrE!3d_m LO{Yڎ]V z8m~.ųB̰U86OuN^ժ):H >1 W7l8'K+/ xW׽i38]CV-ʥ[X5/rpkTC+W%nI1BnL2ķHGWJBk FiH<.wߍgEvXv"@PSi9ӮU)Z=%ǂJ '=J /*ye즴rlnx7o:bO`Fc\8z^L[un7/-[ YTp`TK YaYj(9_ĉ*AF\G̺'[5֥mh{iY Ψ3m\՗MoNZ6~ ?c0c$c1:Q>ԣ)٢]kN(ۆgSSJ}# l d~zTRfwPa&׈ܮ-wr Oe{Ιz"5nS^Uau]-YV %63*7Jd@jf75un2t*}d Ryق [Z;ڧCOq()SyO8 b_QLr9FHfN7ha-|\Z5ZW/Г Nme7ݚ dž^j"KIY1|SODrQ!y|HǸh2XXS]0V'vVDg׺tL_'TAެ횲"`c@4H6h6|1!E Q QQlc!i֝^{p5?A߬ѡw6ѭQjTjI`AEt9XCP[n)J6Kp#|l21q=?'`_ysbɕ l 9R ]A৬) ;m \`Gڳ ["kEqj E)FnodvA3! -oY36QQϊ}c݊*!aOk} y߳Qo@C?nH 3KS%z"Lj/N($ ?viM?B!T;3@&${I5 x(mVRA_e^/7-هZTti(bFjk{Ljkk=&w#eVދIAl ,3h^\]%+'( 5'Hp0ՖkkX*fHrLjUXEqGYȥFv#G+MZaZ-Ҁ8tEfnE}=௥30j`u{US8w=ˏ. :LN\3!' n&=A[c6m h5؂

ޒS_ @o|ܐy0iz@pwTwŘ}pc(DFnh�yb̛;Kb)0o8òP_^,Pw ] \l |Wدq s|Y疅>W+ȫG8ߣ/N9[( PofR"svz|߭rJ{^I_9 }ռ!JfU:csh9̆@>:7v(.%:8k);hFyB'vfGE A0- Mb`V1Qf\qVUԺuR 杞m8%iC-Ji=&駸U&׮;zsflZӰoQ]_n=>Hh O#g1=%v󍝔Vb]4ڀ 7pfJ1j,fm/Yj!)4,R`OFtǝD2B-VnX带R:tM_[%Nh~߿nS3A|;VyfKmߖCf4dT&%K£柍0 P{/ RA3Zx\qa6'A2bN͚ k?sSUG%/p%mӪ**}!4ܧ]TѨ 紟Ws_[g 1 i ˒ҀKE# LR{f9ਇ7Go/s֖#/eEꘄwG0_㎂#e_Ax| όA:M$LEn)?D?y H3HtO.̾,^obx{[u%kٗg5/3@P-baRTrMY 7b~,umM201 gɃ;:U(8,B47f<ZWt٩`z(ە,w=PA$.ѽsZ$8˕ر|Y9pp NmN@3HS{?|;q EG04 D^H$ t#R^k4Lu$'N]TB L}5lӍFj[2ڻo¡%VsMh!gRQ9ktK_$qg%vUpMD|Z|ZH2gjz1Ƴ :-P>TcNlh#R693?ʫ; YE>N^5 6`cm.C6d9ߟV߂jQʭR||O>ipCKIf+`}qkj{p&6Y²C11?#h.1)ӿQ'`2,˳4)ocHA}(ˤL2p_{=ThYgܑՎӴH12  mSIVh])y?:tm п,s#`5{;RlHWt.̥RQA$VMOf.+Eoʊ`ӗN}"q^V"Da)7;M+٪xg H<O|(n| 4w2m(#gy_^?xX*$y5^ۋH ]]%A*Y,("MOM!ij)" LbA{k^{вgrGKٿ '4аyQ ޤU1=oH9(0+:6LrL*w+N ցcr0z!2NG8aj/(aU Jkey0kkС2XҰBl2M}tc`m/|e؛ؐ#=TghN`xeL^ ]+?]?fu,K:ywT ^ SNg8]irxYΦmFXš# bYO>cio=kQנ&ogB@FHǽ^+xၣ`uQ\[ Hv̻sG̰q3 MsdE a(<d}ӛ3G?1̎[pɎo$@~' .F0?¥~}s:EvqF̎I>3ؓ V^KkjJQY sHF*6bBqKEzD{>O C\!l#c^ yU23\xv+on̊%LΏe&m~ahdYܞ~>7n=s@5b?Hy }CV}woCcY6o鉡[UBuz16K=f?iyġNaKK0a Ȥ* Vpиxu| 7%l9uhoaς*1‡ޙ & w>I13;+_ˠЄUOAP>W0oo*+¸G3[Hoq#hTs|KGɍ{ψjwE<*j?=zwy Gct,V$Hm Fn<֭O秽PγCOl>5x`wZ;r Mj E``EP&!piD W 0*4PV+ݙcC?J:oݐk6 |?QmD8uK* %jA/ ^ת(/I9.מ=IT* "Qၽ%Owd:X'⣁zQf2iAÏ XJKƙ*9~6C5\^df3Qk:aEC;YxOl}鬟`:U%Wi|ߗzZ?<1͛j^ MwA) d^ r a-Q fpFI2I_]Č郝y۶p dH(۩@8 ,p Zݼ̨4"Ktq#f7ޒkScզUN+-`38%,t^ź:,"<&6|m#|V3}XT ሣ"dՍh _|k9Fxv=MO\9%tY4/%-ttgoEtOV eJv3Y˲OcOK gI0xʀΝ zK\R|KUV[$žg#ҎTxIƲ!kٴ ^ۑrmq[ϊ0^9L01i( Ya>tBcZ\rqo$ogXv7XW?jU ™JBUp FW<?bw wqH{g.+ց-8k e Z[CY/z0cp7g>H΂#*Nh^(Eiߴؐ3kM%Y-=gpD_q~amU9 hd{eHMiLUl'hёԗhe3{(pJ#J#~; w 3.\z9'[dC'1*ڞse.Լ鮝fOb/ZWavV% w;7x (KYao^Vnk A[+L퇺](9V:%&N^Rav(uүm$i|_F9#[ﰇ˹z(p>?C.SR3} adt MxFlD=zP ]e@,)d;L?v]*d}&7,m?/*$u0˧4;t6(7 AOC!ƕS{ٓATYYDfbжWjw'dž:| A+]/2P+pw&ғ^ra] . *2o$1_qcG"E2W Ltgb{|~lMSAz|YsZzXyTPMX+m ]=6M7mKG -n&a)Z*E hWDa\/_˒__ n;8!2n0dq#?AE̴ssI2 Ѿ b4#w)4Ȫg4.R=*!x@s_"z{KU9yFz%7Θ'"ubY-}X'/tЎ`1G;V@=6ΆP6f{*y6g tgu&e~=J4*[[&9pҕQꘞ!Űa=E.;/6s q汷=Wƺb HKDH&j¥iSk=t,3r"2u`_5N+4XU'mSu/&'w:E6!*gBC.iSΨ@>0[YD~QUAHeBUȫ\iG2#ط%!OF@H=fڵ8ޠXӂXE"xQlƿ7;@F^Ryp:G{$q= 6(>Zz*1Q]Kt˭Sb\k~-h XC F| (D<[jKeQ+&0h?!cu) `r1/{">fJ|; {TQ2թn?G٣D)Z]ᰴHQ롈r5rҋ[T,-Oȿ K!w$x!O*8Y o Q 8m\Y_o p dvƦ̍XC: 9(􀃭+x! Rrۥ;]FNx&EzADEB6 {SGޜ7ť'B2u}MfZ*QWGU޿cuBmߖ}h8nAHv̖o)? z~+&:*H97+u&i8j5|/n̨jFba/Õv>re;UЏW14FdMP^*\]a-/,LUDy?F71t0ToXv68 {?+̐@#!d Z~cc"ҹa%d#NR8$PE;vHBHV'+zG~GE0D)e)%_)&kӲ`! vPrrщ%\ Ï %Z,:y?pj7 ?Vb1$f8M}924DMZe^>FVZ`hﲲſOǖT3d@0%E<6NE Ur۠V+|jHͩog W`Jj Bd﮵gCCH%@0g'鴗xNg9|[F`{CWvŠ^@F|(iLH}뿪-֕Wဣx|V q\q;R4jU~ Jݾ`s'&b 8Նj̫T4jmh,]M( WXz q"8qbDL],<*b8/`*ڷGlDg|s@-q9q{DgJzE5՚.<|uawUn=eYl:p}bjK@u54NBdCEâb5>."8kޓQSL;1n} b/:*["!c8 w,BigٳOߋEC`]aӼ_x*ݑ $8[$03BmvXNgaejl4AO=℺%U n8:}i!Jd YifOk;qUU|KY ]3A~n~aىrnE"N{b@"]ʼ%.&%5#w6ڱ&Kf͈z^'Z n41NVJ >=^pD6 _a&pl͚KT? "wQc1j̉e @n H\>RV1[Ekx|8Z$͠պw-8j!Z̗(~LJ4+WjyRe'>Ō7}D2HluT$[grY4?igrbwK1*侌0 O YH AK6bRRkis;Teou%+Pϡ,0| GY1?)TC/P\4cWToRLGX67xq Pj΋wq 1pQ|,̾a0reydZ“wfЖ@>[Y r7ޣ;rmspp-3 rn{(9C|H }Nΰ?\1A+aS K175HJKq C6,¢\X[a5W)jKvO[}- @)~x[^Rxl|?^v3Gva ?gE=m 3YOT%z͞4n%9zmG6~ x <ɱqC-u'ps^ ~A> jy,mnz8cQ( *0q K ώsȓ;&‘O"Xa#D 3DurT,3Z:OqUpg;jmW[tsHL5(l&Z8vraCr;3WǸ g!z0ŅkN܁sqD A!ÃXJ\qo ;x9bđt!-ld<*jpZWq+Vܺk߾ͤ"G6_ERkzyv+'띃_>J3n{ a<I.8iA G .1tjRKV |7uhm^$UUg?-okW~\dj;J*PŨ9)sco}?p4yhՋ *DGY&9%wcYj.bL q[ 峖 Xߑ­^Rq%bZzUL5M[b3'Q))OE h]D,t~#Z.J>lZ``5xH}mLJO` FրJ%2L t%| (UgK)h&|Ywucq츐e5qVhMPy{-O؁T6.k{e2|)> Hh6WA{ȷӸkSI 2w*jfvP!~on+n)WK#e:RHEd2իO\4xfx;ʛ*gt7PahCVj x[h941/G4ߦLʢg;{Ro\34z4bH 0Q(#)Sj:i^K{qjY62QbMbuS]c/ W "3Ն+=4pKΩ0Zi9 l92'̌c%. <z3x:f:q1blC~``FC]V,=tg[C\XRxS҄?sGgsb{Tiemﺞ1v`wCۮm͡_EOƮi|PFSZPge\%, @;Se+JλovCzxb#m|Gdf:5 Ӡ' !JRl)|*;ZC3߷|dr*vM0"Uۄ+aq1e8j3W;4X" 0~E-DZa c?7=) S6gvcDJ'wڞruNlC:~} ޤ*4ixLAg 0IxgLiZ\EoFZWP*ZF Xw A#\w]zˋBH 5 0fwi}6R TvvRϖo}S>T/ p:g$0ƍ>S͝x $pXv?]Ny"gPqM<N{~䖱޸BbTRiǢ5LnA;G"cIMv|y+5T[mkj .H {nC\8(n7ar0y5p3b" +cl!-Kkw&> {W"hz;13o>pMvg!$XIojBP%*f>a89Y ry<,D8Ri"9oM(a`TJ-I}Shrvu2WWI1n@FE |2[hW ?c.zuՒrX b:A`*_Sek o 5iȅ#4j2P¼𦁐5PlKb_ r5Qg{jBYlA^?SUə??~A nyOX> wPlnŵ|%g?@1<ȿC%H7h<7A^GBva{y3w.wjb'D1yr65\$Q)1f!zl| Ehְ C9I՗C{>wu'p9 \/ʋw]~~بߜH#5[n"b< I lvJ5y8\.ᘈ{{v-L:Xm1{J\b`h\/LLX3PmZ#1b'hrUˎ?Q6yԵ i"yw.h.@fb %Pa4u5L(L)Z6lK.OZ9j 1Ho#8opv >74 }&폎*-V~VonAmxQgP *4~ f #n{|#{zEn}B;"!%v_k _/` twBJ[!e*Л-#~2[R{t)``O_'p;A/"QM:g)nE @2Z=Ulq׼,C]d>=CoXܖMCޔANz^,hO>'E$)V=spwދӍ(9?}N?X $W2͊λij_]r00@ioCw'՟ax"; =(V6u{e=\s}t#ޣ8d2‰=I*oe x[1TQRqOr!sV֞}t鐈lٟ5@ ę u? sg|^!IfΥ5VaDg@ɛ+ۈQF\_-i7ZVK[Lg?q.qV<ք*'t͚eqW1-F|[3{lm~81HۙaE}DV;/SW< Q 3OC!OQA#.pԠ-k}]W"lý"/w܈_+gDm%*nЌ |wV1jAjB{r-9Q۷(M0,X MhUr's ~|ds~"5Է^Ix‹56KdLYȒi3‡`sKNԙ^v71}SRMw|rM4mUSH'[X㶙8Pek7rurUX)R$|8jyF GB{2%. \ƋOݒok {Ԃ˱5> [6 y9BlM3xPmAzq*#?fJ;kaYh$/9 )%78'~dZQgaVt&qʐX[pSihs` *4`0vI`5E,`H`:?cG1ɰ ֹ1jKy9+-uRm+/"<o= lL[˟bb\Z/A!Ss :KpSRؒ>aNSw@Op2iN{(` Zũx/m9 [`fFg&sVj9&S+@m/R [K1OmztU7Iza`{;E$ #ʙ[$: yI<Ȝǚ8-+43icx,/w,qSp+Fz8]Zo$:XA'_h}KR!ip#Ge@Փ3lI=5W%:J^SivZ%`]pQLй3ǙG4^(զ ኗa6yN㓫uBؔ?y ^KY*Xb43_\17/΁=ujյKXˀ(?M"=Rh yH2ޚ:,Le;3;e7dRE+~4?MW/[*Au.rk[A.03{4Rq6Eғt NHz(3Wa3Qhf'=s)%i:oϞTd& cV9Q{BS^m")%e`ƵO 4P(C@S@7::GTQZy`1vj9zMhaQ81Yyp{kIg ͻe&nI\ڻ64}tfJ%wAPB5AeX7Fw(K8V!-{O'DMl ݽbTk[w'<͎7/.yO ȂUI@gZ$zhW烂&RΌь e^(⠣ɝʻHQ1o_jH%vhYd.rBl<\6JjʰXPm~M~ {8$jL:n R7[Nk,[^r(Ԫ/S8>Rnaw*^}sk&ӭ,W`ۇ] )ӷ9W%zFޭl/eR+Vv>'1$ZRR;\`HIw1+ *1g',/[%?`2a; Ӻ(u/d4 ^>oZF]56/U-NkӁȔV/&x"}ę˱z%b bFR,xq3Q~W#@wp01nwL-lAF lӊwY@y"8z)2y19Ԍ ۪3MwpAvTdbBdT3g#2`b~!ky]&֞M h^, uDMHKơCj H}2T!,cVʈ!q<2zCjj.̐<,ObJ3DB1=|\㰼s6cdǂ{E'ރ=^[^Ò~.he-M'yKH yLM -:/XCîZ{dQ3p=]^gBQI`q uZ )\]{!PHGA&^BQmmbh}ȍNF.bn;2'̯Suɑ8xoJ|IN":ӡJHI?^Q!f{JE tBF۬d8fL[=<>BY%eWƙ0Cs ڛ(\7 U˙X"R[>5i' Y)?Fh_O{~%|እ1Ș;LX3V[loety[NZD}wGV=k))g<5k;\Af^qQ?F\UkҲZě3;B*7~AW;꺴؜z 9l\[Єi\g]c/8WSBXĵf;Q`X]ݽތ=Oqk^Ia 9(_yZǡi1cEnjR<D=OxNm/C. 'PTRē`2J5J1UsKqCyRGQ~23v[L U> IhRw5"9⣾>l ҙRy*`^[qэq An^.1rQV>\7 ץ)UA1[6|VS}/]:Bdik<;C ԮcʂvBf p $gZkUTWi{co*1m6,1`[ ɐJ=X#HTbdh-anJI@|5O98#FO%b`;Ҳ*v.o|P28Y"iNm#tc*ǽwm$6 FV=,fR yةr|$/D[W["s0ЫϮcDt~MmN^35|ʀ_{VCz_F̀Ƴc3 < Hq݅Z9^50 `N$m1FBM)|ކ&i F) D\_׻WhLjq? 4 X]yvi6~/]3> !86#;S b D&p!>`fa5 GP5DA$ kD#C6xr6L)/tha>cA :Jj^p,a'zl8؍ j.%i٧M a`+gNL1!{}9(L !den~+H^" GRd3?rBڰOjjo `\7 x~-kX8ԟr$xiak¼(+.}YyJ5Mu+~c<kL/pwNk/1.%P &5RFmuaHl3YQd [>ѹe95w[tU+ NWDMWBy|0\-Ɂ2v{J稱&≨P ߶03V}͈ūh6SJ F [$ g/Z}ۺHóPԢO+<1 L{:N xUȲԩRUqǕF"ȓ6g0g='zy>&( @,@εUvoZ9w-m7CUTřJ N+:fɃ4@#%ymOerC:Q= J<;N mRvnU)2Ywck5M>BW%egWZC)-znы qJ~e4:^|)6nNb2mlb,}-KMp'eٞ&`hX?u@-oѤ"7LS=~;Ҡǯ_{-Fo=WBsUg:.bõʲTB>;vlzU!ŴJ|ͪ+ 1aa`YS|M6 y]CۇfՂ艹z /.r5-s[RE*m!3@4VĶrGnE]M HL'2=חǒ@'Ӥ8ն~|{fL3_PmX{V!֞W(Lϫ.Q4)+w z"7X1=w$ 6E[pYV& . Ps&L8=M OOL3Y^3и3~"Σ/e! layǘy)y1>4z1e\\btBq4uTo ^.Rx 9 /YnvS$Ҡ?Mtl"]IY(ƶ?k1JDkI82 _PzpoC±#U/71Ϊrr,9eՓgCQKGoPPy̤ kL{AWƎFM4Cp7QH.b)wv`|ss6:Aej#5Ҩ!7[=n*PpvLRXʐi9ںIVCeU z.ҹA[هLs;cU}n @s%GFߚr+3H7QW7,J#%'$nK*2$bu{SbG\ޢxw*?㷾a >E̪$+Gp+p1M(NxSRl do|C_0 Q}$u΂Ez|Gc3&/Ok sw:XzfckżC{Kf6>~( Ld`;^ě:fu1 Vk~Pe83 nZW-X*&fa: %kĊ7;Xb%49J[M62'lOf"p.Z?\>V@~R[K֊goPlD4 ˭lj}ilDv|5p K!1Ww e ++jKkw"g:[ 7Ѧ0C̗K-|8IXΛvrVܤm-6w5]Ra3lb)Wa>q_ S4b6ryx{)o֧3x(ėݢiE ~a$=mSخHto^Q6 K -cMR_W;|RBc`<Fw:36c Zш]oPŅf& -qg~6 ioQoC)JDZT<+h V){*r/3a/n|pBʬDq}C$,y"ܱ8<PM/M׿z7F%T|ZpHGtmqJ[DSqL!b+Tq1P4ċ N\7;c~I#y^ ls[=z}pK`\nId}Ffe|]>\0xɐz3'dWjgB*e0Z5}AzȡG?#5iQPej{(PN!S~I&qۇޘ96"pTBoߣ6^6KigpNLQ$]“럏40:0_3`%V2RѠBzF O𼨲˧QʛM*#T=s$2֊.vpWzB]NwѭEydd܎(PbeSPR$Ce=CC` l7=_8])0S|%j@Ly%QM3+*XNxnwo[t4E/r㨝=3$Rjk'u\xZK0uީgp1z#a8y;Է6FL#sWW KU?}w_G䏯fk5qƈ_G+#i>-&Ee_7Wqĭ'Mkx Ql0`8-U=`<dCb4kNw⇟EIILQD:bEܞk5 Vt|#<)C1@F>֬Ab_L~Nm!%|Zߩ*f֯U^e4h*NL~ 9N#0Ri_ ^"D Mﱹsh ݣڔ.hZ FG3"WR&jxckt*f0luoL}v} ,V FAU{\mf!Z l}=C;jY7-RXfUy9oRV qI)ah:{]Hʟz鞪 ?bua4:, _ `lOCkH??۴rvJq3= UM8H %,=؞$@2 jDZ"| ^bN^Yvu5pϮlثaqYaGrIAbI]OjNR 5:GTᐕSsUi!|ࡤI_J;_*Nú _3U_B 1UNQ'.bd\ӄQ&hzuS|?rӉ@bOeҩͯf+(`jYMc!yM0nq1rHl ;aeoľyz.`#9HOb(^"LVʽ*E$~cv| ,@2J5nBKm:%˿)ˍs AЎMܚO-$v Im8+ yuɗYĕ”*;Wm#/(љ99rP7>"`yR}N[cQ]ŠcAuD 3_.5Ű^&-?$[S"$R[vJEbk mVc\D[-sbRÒYCxEݏsU EOϱ e ګֈڢ_{2#K@%PU3aNWMÕBսye/.f_41z 'ԒleaϚ t`{ }UdԤ I6CI2MZ9Q{׾d)0d˜5S24h~!3Q|Qﺳt'9nIW(:jk(j{V{(\C*:yk/3DfqO l5& xKi25Duv+Zx.91T5 >-C|4UdIR:^,"JU`'KZۇ:K$4->ќ_cK7yS-ؿof B&QJaP{@ibiU;AiUjcǟ[T`zh cB9`򿱜zO>S{ȑ9EKt  03ccAR /9O 1>&=Ĺ?Kf3}vy%%Z\ a S|KUnɅۓuUIGz>$-Zy{UU Ԡ@5<.耍Z\ޞJl7xġ7>hrXˌ<@1ZRͿaU*uĵᬌtЯ Ȇ+l 5 +}Qy/fYqvxU*?zk:s},hkƒ,.Ε0=b%Deض Ν˫!%SyX0'ɀ MGsSb6UC>@0#"*1%%" cվ,.2s 2Zh!4E9+酔C7|wZ^ *@l-$W5t)(M`h\;;?|鋶(J49{8zKGQkHUWQ 15}魜fY=1h+ KQC_[,* t6 ^6bk;^hߡ4;'xS42Gd}vTc#~nDCaW45 ty[ء\ 9nc[DʌscTܩOP]u <+oo:P-;\lJ5k i<^6L}b_v ľN(iS#@U6:MKc{?6e ^dZIoPѧ$ CҶ-  Xv+30RNg | M:ozGCjd%2fUS%lh EGËt|FN"ǐ6J}oVavW?+SWqtR 20FOiOi63֬ʓS'wT/_:'H_1N-{HUi]O%1t0 gWiOB$\_EKqJI`Nq{㪇ز=tK ;)=AQ! nf-=0i[jTɹ .OЌqb]hZn 8t>nW;͟1x#b\8]y@}$̛SpoU =ڇY rcW|ha.?/H yC˶0PtP]f,?Ϝwɸ?ʹ)QF[rI79(@|5y-pN/O2] Ɍ =/%|cMH.J+J {ri{B3@IT8?Myi LihA* vH [9us6p0tl&5f"R@vT_.-+ܟ ^:(Lvw學uU:qm1p&$qMwxdnu)߯.3iM.nM+*_N9Vi"lmmv8Y~xՁٖ%^9#د%pA\QM&W<%Qo{(63\-rjh'Γu[-SfOAD#"2q$L3d20[6^T?mΊ d*.߃{6(Q<dyEOTsA[m姢#~sGE~~8o7 6bNvP{ l@XėS{"غ{sҬ KSL&kPX ,R"$#Z@f >=zOOw&fsJִ*;Se>ѧE7`}'enc"\P%a#z:]gMo;@P R"JC}d#uhϕ3qT:S:@V|a9WGحTTJ;#~_)Wn(' G8g^'cTWΠl7+(ջ0LHȸQЕa{,HZ(GY\^{FGm LpkM OV vVqy^EMi[dfaaE4*eO>>NXbǥRɗD[ku ' ">quZ,ni5ƓkH=f)ʼUmʧX,rZ֩i։%PĘ@&{ n65Gq2_W4'53LgL-Fr"PDn?#3 ˧k9o0VaX.0hu1i\T@(]JarUME>A?s$i4ȱb4 !GNGؕbgd=5/LYA:zڐ>z6$HNH}X᦬`6f;j=vZ`ecYGe[^t hph/$Ij*^rNw 槴&\c; uXP9;' G/3h91)Dώƛs2B?%hMAx  |Jmxj'̨ Pg+ydBI1툉\f8n%_j5Q UUb hf^SO΄=>̘AjY|Ŏ=#SsĂ,nH M0<i3lh<7Wr8J`j@DMHR(r-N) -tke d 8 $ ^61GkwNL1цD9(Cpo攩l:W6ʥ @ C*va;))./1,otE4I?#o:ShnͱZry4;SdcU~C Q0WhVXW'O_٠ҝ"\d.V}Ly!g=+lEQܶS`Ⱦ!)Q\P8Pc<2;FOEg.7䰄Ch$pV2Ƕ/pem9Ξ2ĄX3xIRf2!Hdrmr ҺLb*{9n(6̤ďʨZ'gw_wH7򣇛PLhY)5(,Pv;P74˜V͋htr)vYـZEobQSּ/ȥBnQ@_ax$ vEWB~ @SytN4(56XxHsf-Ut[>h)l,kSG8% پ%${bv:YYq)I?GD|sd)`m^g>VPL2a[!5%]a޹ TE:pUBliQb~]Mקt )#cG-5Ey8cqS#׎vb7Yc7f? M@bTo^LoB#_["m_ UK"G&A=cw)}-.2TŐ}71f#vk1㓧\Nnd{4:]ZK/(-vkr݁$N5R*A*:$**WK"?ΪSL0GhF"]dP{ٻE2˜T1dZ0}쎼&u8RK+ݷJ/ಅ=nQy 0coVOΪԩQQsaiLgScFsFruwT+YbA2¦BL(J(>="`9wu j7F.NNe 1jg;{ wo:ֆWXrCF uE, qEVFq)ʞ7C Ԑ?vXz0aםL`uKQEzDzycD/yA7N5 >ҋoVܽ;KѪ'l&Ĕ% e}<é:=7;+l$k~F5}(Ј[z;ډm>8(rc_d,E6訛سmțpay2Ws:[j7JHԐJee1Wo˝I=:tP/Ֆ6Y_W95c5ֿ0K'A5h;nlֲ#ɲ!RݸA@~{HD*?Hjb}{6I4slrP,bZh`g#l6'?:x$7>-yv{-"ޠE8,ǟ V>]>_q(5࡬8;3MLg")´%5ǒ=Ssa Hŋ&b> sx1LD弹x}0$2qowT3Va[)g<^zOFg&qUA&b7GtorKX0+EOpL83ۭ3ݠsBM 78{1쥎.] w'B9Ch+7^,Q"^ D߲0F y/֨L\W\m-oebiGIl4 ^?}Af8 [ u0n_\JK>x5yNwMR:[R.. W#Re \&-Aeg?EI;MF;sk17-?_CI:ETd}E!vS=,_;F $NMxXUaC{q o] @H%aqyz֒U$ثrCNkR<<-`Z'Ȝ'L/P1V\v 8z_dt+%]BFf<;/~vN׻BoTg+'2"hZ神LE`Lێ]@, G@~Iħ}I}v,B+1p?Ӫ&/X>D+[U{&XIp65MSa6SYUzFP+}h8Tb[Z`rJX\$:WVUgj=B':ڬ;-|j$xp@aLAifQVg1`$ŷ :RϋAWjR>Ꭷ F$oѳ+9:nzP_Z \Fwםr|ֱ|3]Rݠ)9 pm1 >6*Cح. .o~Kg @a^:2nQ#-OJ$X!ҵu/ TGt,TB2{#q KK#Cv+c<-ԫ-5'v]SClL$FrC5jpz{ b^ ?ͬZI W&A ABJik8 wc^вZIU&q<~/.jf <@TRMg`E>Iĥ.FOa4Y̥~cEU77N*oY.CZAJH:vB!x"@ּ)'f @F8K}/˨aoQ&P\*F.7Jq܄%-q |OG]^=]ߜd3_jd f:qFfrSvf. C(?fyMAIE& ++̓aBqp㞱x?9 ?qA1נZIB4((ZG12q=|374 ]퍑? %[\f.aVhfk0߽|Kz  h3~i + iJEcZZq`K-d_t& XNfz8EnZ)weo^c@'1)ir4TwdM^ɀM93R|RzAވy$nݱ'&&ޚ]mcYi {o8(BK1{aCI&CFi8r]'oύ;)lp30DuMOc3M}r,3d!Vu?{üU]_xLMO.%N'#-sQSb7V@h+p[T HWJW8M*X-mח빬8H8LNч(-\2Z-CBS.r!Ɯ"p:' Մ8leKw@٨ܵE5-k+#5+l;YhHV:jDDg)5¥.^U\H=R9Kw:`cɨ W@4@㖟ኩzE9wb Qs4p?:3ßYƈ.ص ƛ P; )9T=ZxNU-ǶXBʞ*1 RГ+.= v񶲰Qf(H 7bbδuR_b>r wHp~% iR0(G"nmpȨ *"gȞPN8_Y\w+x yx$ҤUnD@Ht}ޯI b%/T~vؒH5(/[ߨݪ&)*~7չS0qZi$VYŪ]gU`qgA0fdhNX0w8|Z3_U-I"~UIη2E_&$>]gǓ@׫@ Ɨ+NiۼF?˺qb>(M(5"WrfѕM3 i86$>7\jʹ_yyJ|Cیay 1O1r}"!F\| i:]5?Y xV1U ~M)9mtN`6H~pEb[,[ɣfo,&ɇ]S[pLJ|p"W:eꅢ6a&p1hY]Du{? O=jv$9DԓJTThʯ~J&o.GSKE5Wi ں@8$!`0Ƣ!yM+Y 8͵5el'~Q(~f_xgo-m:>\7Oe>{Ϣ1 LvC:iy~vMz̆|&ڎt{Y*kѻhyCm"&#+aW63+0}5z 1FHy8%r l8@~g8bjC/"h)QAőX%9M!E6qoH%q_}SZP1cxW| FOq6TP (I zNJ "gp5pIfJn8` 1rh :4QVF[+4E-^q-!sݰ=s EJǹn{}yz<5s\Ne5=}=N\|M{vps6I!}[l$4CkA)x9V3p{D0M묍Pǥu uж>x6޹@\"T &Vu ᇍOD<"Ra;]'- ޗ4 ᜖u~1)&iFyHc/|)i`467D}X6]:\2O86@2-SXh|53YԝTG`v.[\f' 'od8RH>Pxyi-&XtK'f0 r*G"ݟUűY=G"@3έ5ǢM=p\2YZ~, "$[*6cVNqd8GQr Zˤ@+YJ8pfӅ~VE's"KVxo2U[z}]N߿xj%+6):9ހC LGw1D#i_GLOKctjt1yխee篓('(eaW^_oÖr̀WcRƺf@VwR~]iDW. 6v=,;C*##[PL ~sFflgDYP+8]3: pđx֓?2gtY3Rz=) "gu:"Be%߉*?l#P蔬}C T^Iũ­HNj S)7J;lr .#޷OeH{at<{ 08+)f39@_Q:MKbseG$E3C؎MUgK"PYk`;s >G#Jwqp{yp( Q* jՓW^ |ǡOĵ$vN!x]3]$J@VÔw7SCcߓcoҽc# L|jΧlelˬ c1@{?H:Ǟ_gW( f$( DK¢Nteb~e\rB ϰhb145`t9Sax}ʞSAJYi;tJ蒸7}xNJ5Z`Ũj[mA-Cn_ kyzzPPTu_z/'CB}Q[p#\]l-!Û~grfN~?=PiSGGf w~ݱ;J`_GF #c2-S׶K*3G0l6e)a?tS,|KĩGlsOTJ\g^*yT,saV=/ D1 >+ޠf)cv7PI(Rj$2~S]v`(ئՂ9@9w{P;҅e8SPu()X.*_kKXVϛcJ(1Y.\Z&oa(j6fo E%RBed P2BtܗA W:W =8O\H)i 莈 lEkb:;2/qtpJ,z GVGxC@PRsgӲP8;#t5&t5<6s$ }2Pݱ"AV{kK#FɴcD &H ZQhGP]r~hYJrjX?Q"bw9d'7Fz*97΃or b]!}}V/D5& E&ઓ8/gN+63{D*9=` [|-u%&&#| jjG,\`D"e<9DybH)ߙM2֎2У 1˶XKBBxAdo )kG^}$AI↻1:,6C\Ok㩮l"46] T(=9 Fp?F_ħqW{BkRS2l#Eq.ROA%5ؗm+֭ܘĞs%#Թ5`3 zKPn`*@x(.f/6G$}vI Lb54|: +9WbPdf{3Y#|̞FD=9ui{~Fn΁ y$OF \,8)ۢ>+ ᾅrhɩϥ Tez{/W,96# y3 eO+z8c KH3?_/-O0S䶧3.1?.Ibz¿xΤnPj䋣[8wwYl~r~쭅X=/9HjVIʽ߂ IXr([B5Ё.c7? ErTnN㡴58ޤCT7&RkެgUU G;EX(3/ѩC;~Wxx,ɚۃB@R {͠yej_ t?::{)) O*N^u2:nQ X{О:bC=~?P'7SA!I[ QxF^D+͏dgz^d!{Y"_F/ @\YwCg1͡uƏg"nO/k79(@:X~VxDM\ծr3uyr ՗٩2hC'R~ϗK1ۋ:VΜ-x$6?y.sz\)dl%((`B0)+SF96q4ΉZ`%ˍ&:&9G *73'~_p`V/[$I5@έ{kXģ~6 TI9΀HDr{ /,`,/,>93.x1ś"PmQ ]; z9)RzxnW@Sg"\ }7_ Q$cGq9zJMnݷ|m͚ {INѓp`=n!Lsˢ %Q-`_CaDDD%W־bĤ{ D䊎_"?zv%6 &Hvp - rf5"CG_ZH5n☶X9{Q0U_r`XU]2unھ=r !Wg.7E= b0>q; ,IδPf DN'$XjOLDC! 5rmN8]Kyl(Ġ3;Qբ&x0_񝻛6gz0:~LGcC.O6TfҋU~[~!F1H,۩9pL9p64"zj!ZL >ڹ`D㡇.#dWrmHL5ޘâ!-?'a*+&zdߡLP;\>YE|kvZAE=Fuu, ~o8@2ޘNG t$s D20#5 龌씥.Ֆ8!ȣr"`!PlOB}:==^,D[eDY&J'֟IF>T4 a8"9.CI_ ZN0{S'EXh02َAb>w{&waPU!4RC#P+Û:ץ+S;zk'Mfl@ՖU2#"p@ a˨rF4J6>+ b{lUS3*SOY$bkiY5mG?|5i&[_O^SC&J xA/^L > I;J& %GbnAp׵ﶊX&ToX u.IF^Vk9ðk2w -=)g:cꇻ c wA 4Ps gg񕧉mvKG별(?,4}W$l P\!Q|df+%G\'Cs:a{r"k{ 7# r aw+/R^5=zaFV5y`:Q,aW帟a)' Bt >PT5_Jz.*:GLk󱕍)حʳ4nd?߽rΞv >݈KtM~0[b$Yj ?TZޚS}kZ˽;<3QT?hOW\^ )52πV0y؋iTÎDJOwh&ĸosV^LHf:ie?FCPJ ωu}L93usx9mجD3+S\iV(DC<*4 ]mȫ2][6bSSOc1/v#Q٩TqTm[5"P{R! kcD},G$W(mS+0#8aH^5eHu. Py(3}Dk'H0vMZ޾j*sZ`I: Jcj[ %|e_:$y%c'5Y mlBDA(=G qtsH9>G R{c'6//nOwh,TCE׷XJ΢@PI$MfZ?5j DE[6%>`6vYXz}k(FK!d"أ- 55Z.-- K,tffsHgx%ݬEޏs[yQEL?kBjENK!Wd?TzKJLbYT١D>Hz GOAs>B3;rb?-"j`bL̓mi!Ne#d,s9&=Gޝb+w4G$tL̖%+VUGT@h8LflGRSy4q#~|AW'Cw."(9:0!o;å6)bhrl (,~2Rdh޵ n^Ƭ4LjN~=mP(7~{E{hDEKe bR- * 1W)6I-4 rY^vY[G6N2 SoD!ӆ pm\vx>x:;XqٛF|DGћ4Ó"yн @-4tuYlkmV=x=ҺByv#bBY]a\'ht\; GLܠ7AԕUGkU)hP:U2XHo \NO=v_3ܣK%c5hۆ/G0k$k Y3h~puAs ބ$ c1I;4';k&|^iYdbMf;Y[$DoŘ.%M(%s5d[I2mhjv {]"K?!4J=%m*[Z"A1ְGN ʎ"ԬPh}ϿWD؍̍/_/s #9H)G)5>/LEdgO R"8hd000TF?{HWG0W1KTC r;9'Hf'OF OսZ|1>a L3:O@ΔLX_CJejG\u`}Dit@D޾^*Rfc>V&'!B7#E>63b8T>,*EР)M@fw9!ͭqf(p8 b:5enG<;z"/6GDTI_ܳN1_/ .4o\@is;gB&Xbg~ȹ]kn2uʈ58FuC Xdwdr_coe*Dra/}|8[ !kFh HUAھ- $>bY6R4Dc]@c@>+ ~$]n)Qh&zj0so<#{\cQy; P)|M!ez1_G1uFr l9&fY\ٶ+A"H$`WT#kìiNl4 일m܆Ġ=1\{ G'ƩQ#MR/v x|R5|z#^t5Wëg=t Rs@fE.[l۟4KY\DiFRCcA'wȍLm4ZyЍe;Rg:*Pz B1NKPLMGtH!";ecQ#94Mّ͜1-t265c/A â㩍g_VXEi<(* Qv}zTքqxfGyG`QӖ U}`/a>qmVi'Q\wS`LҁpymC j1*fO 5d+: whej$B4A/bvԍnt]p becbfpֺ6m PCU5b\+5?hnr޹(%i:bV˜겒MJڃw؊oN2+S:1Ͳ67{0 1lFVBM&uVNo ?VV@ &uQckk1:sjGUv]wp#e' ˏDjm-5-1z<㓜paZ(X7:GGSw9W%JYJwxb5gqZZYc[䝂3y%Qɰ L0- }i3%11L .h$p3,hI-ϒ;,mN|vuk3pꦡjO6c-|Vo,:+޹TE'`9,Ʋ# P $ZLbexa732BS#ւ%v<ʣv lXCMK;ܖ]#yCv %CoQqSs ertӛ۫=&dm )&Bd1/^e.ђwUڣgadXZI.5}3%f~L4*P;h$ES=s.?D5 #'3I dj7BF.}_7C,SYjH*v ?/ ^-׭#Lj3S|U  Р2^A<;Hz].JA~ 3}m#EF BLFݹXZ3my(7G4!LÎ7-8>\y%1m H*3-I]6'7zŠ̆X܃NԳ^,+2h݆6dǯje4m2z1\ΨǚB~QDDi(}k$Vu%J"~1F˭btv3zzrRW˷չbhcqZ#G#HpؗrY78ij$qd8j"AENS!ȼ)v9An ί :xpOܮiH8fq"&Eh8FEo0-_5UiqC:!R,YL:fK@|e8"ms1 0|joxě -TcgWg}||$M BCR}QlE`E2:ږx09X ăvL|w n8On{*Ybp[ߛw.E쾙d3B`Ưx1ˊ \ м1}ڂNC`84RcI#KA}^: H/2~˽?D x{B܂}1z Hn䤶4No+v"&P`N'$i}X\H1nyp2=$Nzb ]]@K tFG3E:bo4%:(k S>2yYVor>"zsN+c9S(NwA\/MaݞV=+ F OJc Jg\|Kܕc lAZH1l\u>zփ$GK_۝.hdVu.}n_MjQ?%;f-~Zn†I%|p7!qh5&wu1.CrBF t!}z8΍+P k.Fpt.ˇ*=85f[_[:"9hN4EV1jC$LNj{~mvhեn{?:,+պa[=߇Ǘ8yg7~تxE8z9wEz-3`nR!4s "iW},OM^(bД%YO]fGm_dܲ;~ge "s@SA%Q=V!SA_NV,=ID%Eêv[t=oPrK3MC@ˊHbGM9\zWch#\2II̲)lIeDRm_)" 2wB+˺}{e;EV,ERą,~wKJJ߀1[ra*&ױG˒5@"8)x?嘴7-( Ᲊʹa"q:ԛZRUJe:٧)L|h\g`[0hȎ_;@D)뗻1 Z׳ɢ2qPI? |Ŝ99a6Zʄl??j:j~ smxOOϸt%Vn ڕb־eL/BZ"0UbեvlsMwO<#;5B,<H1- $ {Ԗچkg6iXx2{Y5I! 7Et友!V.;I6ssذ@u,[~Ilw RN(P757v""IFlA֢ hٲYWR$wGzt$_^qinvC"m8L]t\s!Feg* NNNz>)RT疬wz3Mz:(7R~Ęx 2kR)JLVKJӓ@E+fflVMG[,EVe 7Wm~͎ ;9zgˏHb A ] X2&T_{辽b#2Hm 34b7яg.!&]79ќ~Zp1Sق Bo"iP4`iFw 5)1XPȲCSdp_nLY@/nT}n;"4nwyE|ϵ븮Fm,B`?=bM:3cqclqVT{-FYیןN.sNW&b0IT-Kd¾jl:$#ynХ_6BœSjmdn Hc2[ k'+ƛ Vflc%3Yz̉I.G?}-P eEhyÉ]OO 4 TIS rC(AY߂Yr+(BܧcZDʰ]^r8J ٔksRW2 RpIDmr6*bBȼ7fQvfL Dn7.#QFksrrCM'a|ON.jY@0h[|hL! 0J%QN)i&h6].4- L Jh\%OXxe5=킍-:mӎ&oj ׏+j$yaX0aW ?XEzo 7py.Z ȊCz m*H(*utTbsAY^j='VL4 ѐ;Q rW&eZS IrJ T,yݗ i9U~wM]ZYNF 6JHb(jlo@ ɲ5q١v' 5ײ?W!:SRI'~yːb2&|!tL}܌زmL2hٝ^ߘ~be*w'泷s`I,-&iݞޙ$q/UwdbۉW}ŌW}40=h-`"_n)L봡~-6^~FPAÍ%y1~&Fܷvz-1#{'CH*#S7cKr]@]<;XI~19\#bf7}bT^G?]gȷ"Ah} >^UUQu3cMz=#Jщcx9$GSlD'@PE/rtp{|!ށzq pdu.N|CZD܌L{k0:fƑ9 4dI12_ݐP}NYMDX`ƢFԍ ]Z*͠{» MqJ;01"g P2%MKU,{`Faˤ_ZnFr}013}`rnk\Y<{&][Epd&E?̇x- ͊,O/AK)3=9꧇`*o>vm ^m]18NQZ݃vE5 9h-Z P>,PnRDYtqC/dZsoY;k gPX3M e}n60 .ќD?pҏ ~VE Ph`[숐p+J<=XMIRBm4HB&n9o+$^"he[\sOi;ܭ(zx|*]3.adld Qv!;ʃX"r6Fi"/UuM@$ 8 PC{nCh"޹u%vGAjP q*3"7{#. ,j1-L^@ '3ގj]cNlUmVslrz3$suMk(9TTɰ|B~UD6(9p4G2,h-۞gR-v&bRGC`%xT -v&?/̚C`bպs!ϡSfm-OfqJϷ6'i TYyQ\hۣ8'ϗR{s#UW7 7 AV:l `vlqkzWM<i[vy\RG=2*]oqh4D'IzܯBkKlcClonQSL*+91y7F6k\V)a29hHSTeM.cȹ/iݔ=RyJP/Ѫq .R<8ؕe]`4LO*HHQ%8rG=_\1dzS2VI;貲)g=kqD).$b/ <{^B:ڭ2w[ϋ/"Ut(/s>Lm{ ^%ń}}cmfd#7j(;C;7|t3Jj4FN'#.YHmL%i~X÷[.g3gwMrs&_RzxxTpq#?Gz֐pl F>CeƆ, Zzu )Y'[vMI&gT? `$e cyFz=q ?ζбݜoLZC>RATf٨Li~*Ac5|ۣ6 2WЯ0q1gi%,rG^ZX2=/zkR+p'rrUȂ\yTdS&>"mV[ma:8U/+ɕ wXMmwqK4OuvV eGRQ1dgxI@0M+ɚIHiM4߳o IvH=YZS꧄MĨ> qeϔ W[QZ+V5 EfnȬԌljxd~Jn aSza涢/UO!N4ϝ 0v [W{TyZS"b(e@ĎVp 3X%ϟ_n"(2h6&d)݀qY:g'ʣ3:3}wLb4MP8-un^ (hB[P]yV`FxXlQGL>a1K!! "Qޠߑ'O˕kY韒C˗x/^VM3$o\[: pu+O T-8How/8r[X$$nڷ8h ;6m-? nWFKvfIZ ۂ_X㖈7U1wSaP蕼AK Fu~'ْX(4+Ÿ:rW mcxpi4>r(AӞ_d95~9Vh) V dZ4|\sH浈/@-sqJEZ5v׹]494  Lm)IU'E7E= ke( iwC Ep ;T.@r0zqv(Y{?x )0H ?3'إO!t=J%M,c lcƱb)Yc$.fxb[cU55Z9"t@(_& WipRU;"bATWEu9K(hV( 4%VdРI[ig3'4EB•B]4Kr:xwz GC&A+2?Nq/y0QEƭ.W3U: t~^XmS@A(t.\4N&5;52t0dVu:O#3fVCC b2S{Wn=& zʤ7WkD0'L9Rܦ |3M9P)5Y[5QK ?"m/Oճ܃c]A(2mLꎝ% Up^mAn];cf)d20tUy>< ODMA$-R&gUȳ:Oڄ*qw/@0U%qGqH ŒHJK$\8< s5Ӡ _hЮk"Ps||H]pO 8?vC>(ڱCs^,{Ys<̈́l=`يrzG n*Wr#9㞴x>Szżuwlfg6όtHTxHZVNIM0{h ?i؝:pethAC`.>/,BOM^O8 ɤgޒG}㙫l]_%o+㡐j! bل8^;JYw {x"i,T8U0dt ͌;2[Wf+Voؗd<_Ut4_'Pڝ+^4f^?"']v P*O4)bVNAa x} , `\dp?h7Ifb#>~jDF/xylj7 Ց[sfբ0\*ba6ƇHRg uCfEec㋩%>$|e4&zړ'7%i'E ( S48S+Y.L*4!#4b V/ka_9֟ mX+sQ)..`Oȷ%ViXFDaG:U_<%9$񢗳yų"=gxՠ|؟Y ]BrF·B F p{mQ?gKj)8jΧ 藄h,~Sqe ^&[nIVpc;,]' v/鈽glu _rZiή=7@m$zC+ݾ[lyxFA8_8C~}aQbh)0Q 0!b"Sj@lHrqP "ffGI?t YF!Pn/fuL#!@ 15/۟:qьꑏ 2I_ ls#aJ ~cLb>kDfs<`‡  9Rwu?'}?jNSvf`5m *t, Y5΀pi0Rw4B`l2<zI!- 'Vp˅iF(fFә (Ac&[%n&X:&"{*4kK~Fӡ5A;zp1Ա޸7C9wyuq;pc ?:5BNv`^qġ孝PP9]Йy#O΁}:УEP"9f2Nsuv4<8Hw+ |a/ʶ8|Z#<1tʵKfu(v$oTAu}uER fʹؔ:c^ƶ/5#`ߢxTN@ٷ~O-ҡķ@SazM/EℯɈW(m^7<^5S 2:Su xW+S7gQrD.ؾOaQIg,lZ~IZ%OWKb[g'*⭰tTLZYh'b~",rPlSA(zAcgŭN,cpb_Ag=4#*/Hɑc  kCnJ5_ŏ~E77L>րme"\ *cAHF;wʶIiBx\xlM  /k%^s%/eȒǠ0YhGώ[zG`H%}u;r?.n\ dgNhߘ\ FGǢ6VԆN-\Iee$ `iEP]aZU^&ұOB m/R\R.ƛ ʟ*ӽ;q|X诪 )]rk^+t [0g>Tq6dY&Fo2^Cw9{M[MlW(}bN[[hǝOK [v/C< =b MKV68ȅ`\q@[9GWW)&`Sz t-/@_,Z~ki)ea}g)70]b|('<\$_ >1Wi/W `c ..s6r苧ȸf4b=u/ȸ9}]R~Cb U}NÆk S^swljBW..{yLmO%B+潚Ry Tjuu|l;a: =wz$%[ӉI"ő?|wgL U>Xے޿e ã|L:),[as'v|N}S- %YH1ʶ9U2י_"ԖMo6r}[X@V;`F߄v ԳWHۂ!31\;7^m>.Z_ˊ>(QJ_x4l"k߭&/rGkNi,M`TLǷ-#s[<qv"P4fT9]>HH1䳸%Ky.\( '&y?6'*$TKa SD3F(9B2cKHOHC,j͗y:IbZead@1Olo0f дQda =/]0jYJF hue~'ULK!='4b,ʬQ>@ zdK^`⻀XǎB&l~f /@}nuSM<$cGmM̀# bo+lv^eDlSCr4ƀ.3 !nE&\bѡCzA(n\J26zJf/?ڱZ$K,xwZWj;n 5E  *K.`ISّw9 c&ԑC=z/+zXmUI4D>i樅MF Kʭܴ+{##j !Aidz>; zmwmƃkYVKE {h= Ƀ]>;p!sˀ?xQN],qE,5=ez-|J9_*#G]JJTJAfvs@"TcFE }> ڢL72ʆ;ĺZF6VĈ$/j [J93J5RؠRNtw3FoB}&q6wytx38)䁔WZΊ*>mrfD#87 sz<8KA~G,[v"bfgi(I"%a^F @3KK鲸kP!ׄ 퓶;tkG[-uD'Kޚ|ON.mMFH/r9oUN #z\B;`.`"<:i,oj[Gk'Kw6e3s]<U6Hr;ȹ đ5rt0t!p 1jeL\SOD't{=JMkf앁)͉:QBe[C_/L $VZ^R[k䲗)U9\vtPLb;H.p._F|`C\p}dz~ ΰTvMD*\s~&B徯D/R=nգժ֢FE Jhn`f ڋ}ؽxǰy 9kћ%(|f1ٜѳm[3wա@ @c)u 9K hG= uN(Bh.Ħ ?lXcKxF1j}Qϔ-)eI6hQ`aj26=.:m G L d؂|eNGIdz"`!\r8 3WCRN}͸M͖A' Y៵ mO.CP)4'd<]|]HQxhK*Vڈ,Bl哻Ysƍc\pBEHȠ}JeȶCMdp@mHW4Dݍ̍ y7CS]*!~T%Le w3g~<-f H9_TLh~Me&q+VJUzAI,SJt7_ծa~z݀p`J4;ԝc&NO~!ҚM]6o+Swm|+kt]܇}S@}?nR9bFItF?ZsWhC[GpeH/ƋGG|5ҋY>*CmAOdT9[P{w2%5ZX3*x^KFM`:94a%4DVnb0ydW4j3CJuysAV녫 HR2>I݇y51gh/.^8~Wg`ti,LbFCiVfLe%gA!nRL9!Wc&?`.%է@*nTDTXeH++12z|)u~O+GА:w$B$Gޣj`Ҭ|ʟZb5Pi-Q5ѭlŲ{FLPoţrZWZ&*JW[GtB)K~n`z<2 7~Dwv,E(es1hRTDjĆ{˷ṥ"~B N aL7üCgβҍݍC˜<vu ]zp&<d4u 3P^ 89Q~åBQfj͢<5}$D)Ve{gJS7x*)E S?mOz1mĊ|C^Ҥ3O|l)ԫ~!VSSd\TrKDv[]'2R$tE?JO$?Y؝6cd미&oWz@g݄K#ÏiR|AC-%qFB( `_/h*Vk3G<ʎt :&3*$!+Ȓ>\8np-zJP\7mK;. t")}myZ[: \N'xĉ>+\v6}E{s{ҋ̾W!*r\QtCdl+HXjr46f]'\ Ę;h9bU!i=G\U#ʨt[.k+M UNƵ.ֺ=!,;0Lv,qu#J>PԬ]`;ZɷV(e`#M ,v,_08 kMmO@0)кs n"#k$i_9cl^~ IJqR*uEp1cl;|a笠 >^ʳ@]gOBÁ;^O*&dZ=C;u,hܚЄfzǩIKaw|rgh{W`z f[\vX pFq;!;L\#4S>b7X3[Zݥ;8ShॊVP0$Iry;_Z ??Y 5^# Ϥ]Ό` -wd62-bi%:D¬Ct=Ƹ2" [dAx)Z0Ao$ȳ{,a"?i{l+ސV()5 xvkq E…`g+Z*gUh%<D=(<cClQ'ǜq+OǢPIǸ }mN-Y\&t 0YP4 uAv"@d9bPdPDx\ovہŰd H3P Ϫ9Cpp\lcWuC=TZ,XפVG(bP ֡. r}W{ ށ$벋t\_P8lu0IMtS(Lx6bggN(5'9mI>`"hM2.K)T@- u1pbq))r7Xͱ|"?n_*oDR XT1Kꑶ)4) )6Q'9읻 g0SQGQ ~pn˼x#G !uմLy$N?`9Vmo=xe9y9 DWk4yR1#UiFhނ¼PrEm诟>/QKPA.c9ܓPM;Mir{EQJ*56yR~o['Ͷi8SGd:īd5Ԭۓ+ou0\,bq(PK㟧"\ho{qAF.p-*<ӳ>VΜf`MEjR~\cД^BlrY}edQeU8dkӍ>vAFJ~?< "Xj bNTÚ:oD!3B೜k:LMGlMў=gWT^jCq׻rq(UFUc,ZY:v^X%.d.DX%8bTFvenB`x;1VSy Wˠ%WVUG#O!4Rj-=fR~ϋ{$tVjY7M9Jj@7AxQe?=SmJ K@yGqOhzP1\rүbӕ"UCgD!Lj*s_>(aŊOc ā7* !&H.ܺBICZPΟUN?>&^sgI8sx$s4s8XI]s{e}*42T=0~fp3w@V+̱xyN.q; J<+R*7v9 A"+.Iz+C#&Tq꓌WNdińY'teQ< oP PJ2^,.Iˌ.Ѕza7|1kXٝ? 92tOlO~]Q^ݚ=^VBc{-( zV@޹ٿ|ZȖ 3غ܂tWd)#Ay&~.vlkN r"G&.ї9Yɸ kѼ%+{U"P0I.hP@o@Vlf|~_jW5vf{\._ٮ@ca)D|ІL69*mv K}'T{_ջ_.Pf iȱd-8N,|G 4ɡ3O pz21F]61Ká~I.$^ )KDzghg2؟ەY<3?4Ϗ]h("z?1C[kzG+4i{ߍg yaǖx?{| Rb.ӃsnM0Zv Ù<#2Ns(q"0C_cGgS^!%Ta{2Ά|"A،!;}Lө%/?p1gDkƐ hͤvE$i5hq Zl|Rqhp:(d]-@duY/n #\1>66sTS<DjfҲOt[;@ H^S]5ypIJ5XV2L%M9w R>%=K3 |X$BR C\P;+8 3~y υBrܬjR&Z;PT2c/ Y%ήa[<& Rw+jmo1 DoBTm@҂EQL̢>˗-bFm೹vL3JH1HjT\NY{+71%J`f i2p՘-* c=ҨXxF}/GO:_;-D3E)@ܭH.9f&pVR^حxo+80 QD.vR#HcàP{˳~ߋIhbs=5dĽ?u!{xN GXl[J`#(mL yNg4`ů?]E1ɒJ+3*5 *5.Z(jeb~<=83joy[[1_J2`415a%>2y\zK D"v:% 0g]SU?[~*:aE;& dճIʠyٹ"\VDӯϩ3W#7x.΃BRߧu55wAi6gtc:Tя(|Lbd y׫m`Q_TlRF!j"Y |)0]x%M'r&-z36R>]JPB1 LhSy4_&l1l>/5_z)L7lP7þD$V|3r$N2],mYLs(*y%-AVaHo#!]_S<| 0Aq[UԄ>-&8B)tWgP^ki!e6>4`îq"[!^[[GL_sn琢KdE {ߙDŽ#&PEjK;Fv~]a ?m|WE'So+.uByl%# 5GkonvL7;ݿ>~AQUQGqqC;́gKҤA_42de4|%uZWApETv?SdEtD3-ytW: GqvV&ަ4Z1(d]?KrL|)̬[w&|.`|)`?~?*H6 hV9Y7u' cd7 Am9YO[~Lxvp+ 腴I̡E5|rVd`QD@ǜg=wX2OP܉B)  ;t-NҤ扊gu .o/d;<ߜC=RiYWQ/߼RHɆ 抉4V$dc#>a;+D{[T A5d}v=ýYSB_ *Nخq1i=wcܽKpJ56v٩(Y:/ׂtjb|%X)_p۬ƌZ7_v P19\qnQ qkZ*U(4LMubCV#E _+~Zņ7Tz}+0!?/W9θh~oՋH5K9i>U7J3[<2`~ѻF1 qhyFd@¥SE2}H(x!B(,)ĺbPd(p<[>sfdXw=*ksU%I2i=#9X:_ص#/D=JXyΉ䌄Awwi1t/`mφ*+{h4=2?M58:AȽSTAϿ5m>di L) |>GpXl=5>3ʺ-)_ejT~hL_jo+/vx3v-cԛ*gq*"(A=#-`%YT 9#0o]4c$?`&Ǭ8XPh&t<XN{!Ͳ9#et$>w?64h?I*'mkV߈jhϑ_j>A1o+0j og¹0%7QvrGj/j?#g#I?i' {'0EW,E2ΘG6q9XsuB1[+\8܍J]w \V ~QjF,?\ĶtL*x( :oo n؄y=ǒgaCc=' a޿'W2H`~Vҍ6"W 0<׊D ?0ED~r!@a8 i~;:F`~zp% *a.Ժ5re:],rdojٍ㪣UM6͆cMXeYW* W% *1GR&^+JuV/J&4h:6 SFڋ*##_p8מg}.AfT"b`J;"F;?_t>AįYӾkYtt@ci au{B,h =bk=6^ fMbکy=V\ Qn}}2߶LL!zKyj|S01NqGOޛ3x- 1ߤxӃ\RnXB,Th>ii[bs(ե`GjuŽ Mla=NXn1v0WD6+ "%fruvS:^On0I`댌vVnw@uؒFU(FHPs:v%_NE1|8ӆB?yyٔyb jK=R8"6),S==CFm|W *<\M`X'uD9'|yFo[L d1sj5 "E{3=_$ÛZVY}- #$E<"SF:B&z(stiS(CO<  qGWjV$Nl`'F_?Ow4n"RC:(PEb TS7y' ɂ[噍gC 3_ϒkXJRgr8&Pz,!1N,{'=cĤՉ|-ˠ1/GTEX~{NT#7;D kX*>suw6|}o­M!dDMb: "PC%J8ZlKǮN;iQE ܎ A~|#$sVYuiѼBI;O~|<>=D[S fɵtgj #uE}IQ1N5^%J{jtnV+k&ΠmUQPޤLD^f ,;:.P?3sTNxR֌-e\VOLxjD/ hG*~ٗg!m oUgSu (c1_.d~83ٍ <<74VЄe|.2b-/]Сvc2n 7.b>*T$ z=}ey Q ̀Bw-?j|R)̶qzB:(\, `(7]Rΐ'.t!XNJ àW?H!-NqVCMN=7gK[/˹ɸ֕ϻujLŇ,~A@4^lpMSZ|WL@Eф>B!` aZK,o~LsA:Byg0W;a5҂ʻ{i0X$5N_u?`U}beUHZ0:g0 m!P>3)CaƬRtϟ)E|nlfMVJqzHU9}",c9Ó<.VѣMe7)1JYe?(s+@h\$L+ވPA dYt)m!['KC2RQ^n(+mOxV0Cꡏb;{iҽu~#,uGF2ixG ngox-PGj" S`]`J̏78s1/$ku..{%pZP{[qʽiQihDBC j)c8\sH^ =/ _9nhվߣK^1FdtPRܒLok9\';dh&]!prgΛ] hgGg)wWb*pZ{1P.ATXcU?4NܫG@]rgg2c y\ ~߫n7)v.zj")KTȒƯ[Blz ;MUo)~-[KtGɍ^7wXUK̲m#BDY#d8I * g7zsXxϭtc{l4dY驮ďY:9.U5U\CQ 2,dEz;bDWi1vQ[I.wy5F4}tQ-ho=IIS T]i߫u ߚBz$&jKIMMY%lW(C GGZHY=|V.Ud}cSf.;U.L m$JTOô&oH)GZɾ/s.X^uMI1_Ek[+a^#mmfLzD:mzʌ{}d=U54Z]'GVvi!n ;"&Ѷgü/䌶ki(t57I{䟑N&o$S^m7ua{QFOhrb㠢q},)M[ѿlMK- !4̒("׿OŮ="G3"7@ڠA>7:?Jtnr\BLYCbo4tB*$Py]uװamx}Dƨ P-ܹ _#I_'V3pb9mK^K\GS-$ sE %ڮc zawHk@02NO^TzQI.%[PJ @c18&W'^b )YnM*㥝o\~yyu42OB?L:YtB@"WN>qVAT[VdJxzG=둶db#ehy76-4(^kÝ/|<%ϕv*>NE±O0b˔oD$BЁ:I`ey-ahQ/^߉A;·|&{(xm!plQn3 [!EyM[=lF+[Xy@HQ*I5C$Ң = '\\nw1HtI%Oko-{/;ĽV$Kx(K̏4_% 9b>5It]0**yn+&o՝bV;85~b\N\/Aljay5O^讌w wI[JtJ{"m _o1'g4cA@}Yܗt;cv!bDX ͕NFtyIHmlT%1nƆu )&֊wѴ}I(8eA*|89Dg.=ր^c'4HK2NbE~=igV~oԬl$Boe M~|ޡtxTRjϻR QDf :@Jz ANv@\2ιS3!V<3y7Ôna=;iuI}7m+1~->?.k5 ͟I D.#XV-d+1%Yau7_#˕P;4SE9[pas ''SpUV"퉣#<;( j~]=vn&Ӡ`DpZ6Gz߲ ݆)v;4PO \s17CxSxroYLr:2#)<#?HT @M` o )&zhk{S;8ԻLhhGSfLm㚲Ӂ%d{o{ P c@@{U7 *ȋ$8uw6؏r?gU;%{,9BKuY:v>yY~2sN\gͯNC,d($Իâg:-2,VR \i9KBo '9n!=WPTO$)5&ChŐlO5j$Zl?rI#^ M SI2P۶qf8s c5Q[IN*Ca2O_P;q5yAe{oAQf9DI,V/=V*.؜VX/lFV 8o(~,'ՓS{X(~S.bg'e]DDt;١}shִ! N1I`*6(plks:eUT 9gfXWpi#ɝ.N3 qC ?z_*}yI4Vh敕==JS6_.—c11؀ߟtǡNvWge9`A2*%Z7t4ч ):~G%oozsXMcH W>Ĥv?Y)FMw lUx,T̶k7('jwff}"( p`s[CѤDr|_ ,Ll=IjV=_DX_N,@)afI3 jtL(ypR>#8a@w ŴME-raLg ow\/Kf)Y]$pEH.A8PNAYГ֧e_Q?f̖:);P [K&!d@ $ qYf 8M${=*  ܷ/(6jRe~9`OtXŮ[Nr 8I!2 GRj =uBz˫빉gQr7z2ɱ$BcSb6K(;∉tרr(k"=tnRq40֙٫ Ř7H^rɌwNՏ|K;^\WXT?zڑL#Z}gEf-f({JңGP2ghRkW9<=bChn@%+UxiR Y:k$* JΠ2!qi?87{TQ ӻ!ÒY@M!H➕:G_O]6w>TG_`:oGyt P ݞǘ.7d&@4p K 2͖J 2 KSR0X \<+Uqlwt1ȕ'X^!MĿgiS!X7EX0ؗzRa^)LIn\\`d@P-0Qi.He2V-H3ujj>UQuyTmJu]RˌkSgU!|ߧ grk/:r4[I4~#*Ϙ[ءp-7yթ҈D{zbCh^m䯰3C;b։ `N7Fv͠;؞өJSW.p ꓇{ȳڳtgWbf~T OT6Q* gZ4>!cS,+ž5ދvqm_оlG9%aEzR)$oa絝ڇZ]k6gO[qurt,BXZ\|?Ë I*faczrhVg@/l4Mn yHT$}d̲.qUwνB][h>F/@ !,T@XӧnN(G?R$M A -`AMg˫ᎄ_9踌ncpC>6a"_7ds%vSfXM{yu1NUJ>cC`VJ:/4 7 aFSP[\%ҕiàˆ4v,9nf0-yqOX XhwCɎXġv7fkFVR{YE{@tㄭ_Yf+Ye@oDu YN. uX /VɝَwQq#n`{qAC<|^a*HDh<}f\F,i[n mKe5 kt ?jB~ES" W͞$:84޽QQd[BHO\;?NJ._HOmnLȖB/B{;Hgv8A͹{ Fa:yG"H W |DlF 1qZ<|e0{|G=-o7:_]/%ۛmxdc6" '>g7 fɎ]M;t\1s7SA \gv$G(N[:Nr`CIľ)!y0u CӓkZk]R. CQ΁$W*d~\'7)`ڄZ87O+:cwd@UqIAf4yGEMV^:-hvaqt}@y,{gY`q5r5>,ݩ+m.dpfvv(O^t_Ik>+Yf]<򙔧f-dήuפ'|zLÿ*s_8EXH94F;$sج2g>t)vے٩OϺ]1o.,%XImP߯^%}zec&DPCݸu%|+/.҈X5iZj=M_㤆fDx|xGqCOJMd"2oCӦދ}11ҭAis%^E6mǴ@J>޸0{'5O1WXmKgfcڲ|Dkc ΨHaJ$[A JF厡^xd+!5ʑ/1tJ@,l%Biv6p?3[8pUI.yi^4birj= 2'xd@AuPdn-n~;vk{qU-qM/! ؝qY\v.W: eVF<^'[=8>\S&A> QDeDX>RYY(hQ[ xXhI*bVa$hwy6^#aiqkZtsh@.u |'ɋ(jۜsbe8HthtQ}8),69\KkXJx\N-ѥ(tky>4gxe#\Igw b.^%fsgBh8$bEBrWJ4&&(N\mM z ޜkR-Ɩs(ue_pJg[2xG n!,c1ba 701t2ءHvR vYkԁ{Fjpþ >zkEWk#MϥƟ^ep)UN'wXҥV"nJOd#Nݾt9Om =.\Mgߏ!rb`\H͹YU[K1 ^&i뾉g,X=t˔Ң㆒D壔-F"d hfo,B9]?0ͲB=R$-nHɛW9B3a\O|H6Ynר16a8عU>:awQYhSܫ?Wޢrb9*$w&laCn*"j`Oa|L-~# Ÿy'#ڜi Ugُ'р0>Uo+d(9 ̨w3ͽv.B4vJkS]o S;uzc]#Ҟ 0}*jeP*&o I QH:WmSx9 !K^GZ6^Lz!*xOBgIH>j~r]т^BOj:Wj &^дy{K/a4:oa`BXˉ*ɑ, ӡ=\(uŮ@=d;Cs"tOhԉvM?Jd-K}szrTl^mRaK>#/]t5)Ohc4*`tE,IZ$,O;Dbh ڽ[1GiZDgK#'zaa" x&L]|Hb慣+' z wEEm5(E8{b_|?_SD&(oӍS-hP黋i/1ɫîF.JtPlԋ*q3&vuf um5!TN@F3Rl%VY&-j–r[eGq d8U2 t%,*,BzY Gcg20 `cg&ϨO1NSg*Ig<BcJ0Sije[=4yY䭦y,kʸǷf&ƕ-?hӐѳ*ԑ2#zFrcL&H)зyc=y q04NeL89|UWܶ`sꓕh7룘k Ӗl|Yv>Q{Fاm{-@?{66:$tjP9Zv!"_}6PvΖl+1a֡?}Y}L_hlʗp]q P.LH1Gr~z qi2mPSC]\֣I0 <X%No>-0|xeL&~QтB39,$)KM!}:^~|}IF,_mZTF/D 39Ѽ[ҼěK7!sغyZg"vcO 9$Yit0쫅0F` Vr*'+^|>%E ^nMpuαb,Z)Ec-rwڦY>0:W2hοrN iw1y0BGpsHAS&nԲjX,;'&CG␥W.UKG+}BmkRWXo3?-EGA-`ABRrcWڈ?pZ\rO\6wdjn$ќwbl !HԄeFp>rsp4$n`ޜWȄ/sO 2\jԁ|gωPΤr{]N0@{9eq_;dyo9fЕL;,A_gfA_z%kL4\w]&iݫ]`oAZ>0k zlh5]f0̝Xq5x}֢v .SB]$,l* w<J:)N\ꧫ"]}_Mn[)&4n[醒ss0DJ ,PI ZަG>*[A}Ux6ڙM(kkת`HB"];A^΢n%],U°a~Zf} phT2 GgPYSv (X9Wn )Qti#ed'oahk WgMG6y\#MJbRlc*/m9 >(am B} ᕀ>W8-/ U68ڌy,`X#\hNYk[f)(DC)j-HḺےXֽ-Qsخ$.<ǣ  !o'_ҘqMfD1A9:)qU0VNۮ1@nA1O߯b}Nip[3^uR`~5.W\C^~ X^ө*ms2+!7 \JCo`>o7K V['oXP??sRRAݚzy(kNkZA¶tOn7HL?SQ'+ǵʩܤ?;Eֻ?kHB6w,kJ=@Q@ό*lRU^#;ZaIRjZeՉXƟg9S F!(:_=b:敯UF SA6В}^ i }9kT^,D 89;S}1AV"^RvXwRe.Obжi9 f^o3_#֏%rC7n<!(P)#cp3,fRMLaSXZ1VI0ʻ\WqF2e&AAݡFê3QduNhzO-55n>Ǯ:ȋ {'u#/vc M *8gSz62:˺n`UW!#o ޓX|#$ atsˋB3DfɰF1AsLS+R sz |ijj^drws쾈7pk$Xq<).X>'>BԤF@ uީ9ݘQ.lB钨z H$9 `SnfiOƒbD` LK]A0{8rJ.7GP9xMvio|R"a\u.%</\-KJ㾾n" TKҤbl e*\ML֩D9>yrcc|5,jA0;g ,2 ~rRDo,k{BԾʃ┠e$HپgÎā$DiS4\#xM|l)et{$MڂH:rAq"0%h=rEoI;޼~Ld~믩1l9%lȺ 73t=l>-ͅsѢ6~[4 Wx!?2qW =&#Uh:)U\_ Q NH !_cEx8+YMnSjigomZ2]'uޫӌr}bGe}=O(~e- :Y\μ'Rqde()G "I?}eW}[_^6<je+ ;VYS8>+7[l,3*&`%R,`ؚB%z@1". gb^~6=`Py-Gs ` K^uvb%BaVXA)]ly0(dIbG?oQ>:P..BZ\cW0j5о#ߨ0dLr15_PjFdޕ/:!o`QATM/&hޤ$Fumy{SqI6m$0Z }w"Vd2G<ϜD5hf7"~fۃ_14v. }\yiqk}rͼ7ΆVm3SI\KFoA:H%7W__NRAD7ʻ*@i1S^gH2nN0wb[jr]pQ/s-AѻHipjg9 u?W!|YɢTo68q)G_'yYv6YɣaZ"%(.G}J#WAQMMq'A_쯒 3 ~0G%Z-P. ](9/5Z4Gwo7oor3c8Xlɡ>cUB]O. +Pz.^"5"+?̌fcU[fᦾ@%CFBpLG0+spȕUC]P;%vx׼ȏ%"{3uG1?49!&(Aᬲˁb4VЯ3b4;s_0PG 4_`2ED2M pMH3X@}G 48P!t5&L:yDwD=7rz 1?ꢑX4!vm:)NL@٧dz'x| ZEeS ~I?e $BI_\Tx9jo09[xtLq(<.C/ŝ&9@z%>[8luu j{]͒?@fDziǕPNJ?k`ZF$L+.,3T}(]T%O:Zs}֘5^\9Z)V^"=_D5_G׃/w'ǻlL/x@>x4A ٝZmT_=ƕvF{@϶ 7#2j "N Mn}+\cW!)lbsZ*)9[üU9\p;>)XTbt5N{g>KL8|N*,7ZNVѬnnP=.#Zo_I<1R7 BڨK^>P6^~GaGjjw"?Wrnr[Ĕ 9LA|G=[w7KYIjlm#Ѧ@ZShu xW_0fιe_$_[[;oH&/ ^hUrxM> 7E8.]Y'r9M1+XqޜHZ7hs3xԗL]8Z"Ƒ/9L.{:BiR4gQhSnW\mϭ7+3 %徑uP.W%z)v0 Vi}J؁zw%=ryDoC,Fp |+NmI9:jְvqБXzra$Z*UzG; ]8x4Y+?FM>Ji~#9v׽ tY_λ$q(;k +*)n5F`YWU @nC6%5tiB݀t/k6 ]Q@е4%9q I ;9JqIq+-mouʦ\6&S~{&w ޓ9*Wo+vjz>2S?;a:"?TH R#Ex S9 w&E yn%U<ư:SnoX'{ՖTh^pBSfjM:y#% 8LM]5`^%.S1aXNz9o " a73 lp\RCjK(8C$m^݇Z2!_aMBc:geK A!޳$Z?CfKY -By|\t=VU$+0+ J ' >v-nn ˨u;]@0b1n dc6435X-+5k2f'B/a9[5]$T^_%>X~Ov_hI>xY؜5})j<~:.icrBe:`b+ː ܄\WT!4Y Eup HؖX~a% FH+^ƶ5Ns¥R+KMt&J.)7+løM4OP$\Bv{!108hc@v yVeE3NEiC.G֌OA>=INϊybBfgWlx_MώeM$ÛQ]x>NiԙPV,.&ߜAӹ#sW^C:VGdJYۙЌ03UJ!YGE4FJ)&P'[ӗt=K`B^&*.VɯWmxB=Iv5j' Oj@x6x62fq)Mٰ[?O?E@Ssjn$CLe$,?a75-]>jWlbV [y≪M]!M=B:SW+;6TNEҏoOP^+̵3a3;/Tt*Ԩ2jv& (a973lk7InY|IyvϴXO+{es_ޠ$@#P+qy0Ϋ YoT&}>p5[ԯ#~# ¿91pmҗuNo ̗{ 7tNBiSMcY;7 t'ۤ㰍{nv]Jsd^ÒupKʸd 9+$]8d3-ڈG?Y2$~H xetw{KdcP5O};2efTfaGY6'..">xQu+ %!_TZ||y.6)¥@*Kncꁜ>q&!,*π8`{1: ,H 6vSTfIԛ_ޥYmIsb}0 `= |B3'g 5Z@ >_V=DōE2 xezR]jeg1"ٕ, Q[fKҎO 7=+!MkbVFqYh´5h2 31Ew+T߿ʯNsm}N#*P0ռу-J2:ڸӥ0 <%[̖FI2aw'1t㰻OD];tnk,v-kn lz1QǴ zvQ*":p=ah~-|XĔ}&ʦЌww\׾>)Bv`Ϩm- OS 73@I˹Λ$xzݘqH4(꒥ٳ(ND] tpqoK1+/fT !Нfy+ڒZu?aAT`_fGe4*5Nv_&Ÿm[ ?dRcI E[53V8D'_G8s[.Sq=~'Hu:j4;j_.<\AScI=ʭ@UCul?җO[}aK<=]*Rۓ#,M]8c+JhE@ ^dI+ 0Ei0"LxiHFe 4jF嚴#VؤXĻEѬbPj<7K.d(Xw;9s@Bb\r v,;Fԛ{lt𝃓GҺ5]WOB IgAowMO,QYZw%4F|<~}N_\=ZG&R} Z/[&U4Y:' W x!tȘ4v ƍ0ۜ_@G')vvW8yd!}΁0+` sJEfgM@d>(~ FtaVXB yC0Rp O\#Ep_ ʯ`az/ۜ.FtB#1zFU i |9k-Z) ENx$ xVH=TyLMbC#juj*5yì W@X"#œ=(Q7Y gF pŭ 6T m-=TV܍9Æ咡',.Q?:4[:38m}M~p6-icUׄq3@Tku/g+b&|PE{)3*q) a?]Nol"gVd[Yj ޙ,2Ͻ!쒱 j~Tp/lomq94Kn(3#C|;ʑ"a?%T?~1OZqwGF<$9\9fu<ʄL^Qܤ;z\>xu%=$MеA^ۦtgʰVv 6aJ, nڜon$hX` D4x@mxeV|9UjohlyU:.SU?:?Ԟ(EaQ3@gbW+shǚ.0P #Ч`ѯ/ڋ J+(;A?P=//T<׽U.ѷc -8GJ dj^9( 8hl戭3O(8vD 6BݮS.]H:$ RL3QCa3h O icf{Nb+Vt6t1ރ2aD1OG2l1f-(#@8/v~.k, >NG`t\rL%$$F'UĬ J:!<1|+? 3.!MKdr5`li'U'DU vPf㮑;a?? iJ!48(:q};T H=fȗ\W؜M's`ȏde-1D9 W+,dcO> ukA'5mG]?KJm>ۥe\?Q*^D*i(T)u-c$ǂCx;Xo_*wP }hWMakd0MU]${:)Ѥߚ7PgNse6`ZgAw؎Ib[εl:~,|vIIŢ_-aR(63t`*Jivto[ g@-L7=#0<=\w 6@=nS,ȶ3e*7~WYת Vz\AKsk>w؝=dq.!#e , G ذ!UɆRξ_b f[>7 H?Qs8' oҿ.*0!H~]nU-|nYF[_DRНܔUQѢlZ$/Vx,èyIAN9Xr.>f ,dh5-L{9)hv1ew50y'fZ{ B(=-KŐNw%GC} mЀr)ɮ{kourT̩BDh= kQҹ虬Y,VE`id#4a9UƧ$*gCfI;L4cMwjr"ɔƎ_1(zhBMe. X4U! {A~Eg 9:~U2jB/j#f]m05~\+J=ìT` k lCd⃺)%%=m[$RJ֮pd a F)%TeDqDc%NwB f-LHXks%z{@z * 2_:a!qG6x c /&~^ߕwBOvrZWp͡[G,U(d8puRQ   @]R)F7&rBt?h`\Ehtvo>%)a x ,/OO#N=\c;JH\S 90JǜT5E#楳d.y^ &#v9l>16"lK8rxT'ĕ'( ;jS3=.,tQh *#oSPzo찲;ޮӣ7׵BiƵ)mQYVXXW* =WDy7nܚ`٭wGeJAKI_Y"C# i$+;CT&%PC{-8X ðesNK3 #a澢Pr^2lZYlNr8ZqVʤzo$K!HC+8޼ 7`Єd`~)/ [SnC7|;7}sd er5׃;"RlAyD]-&ufQ7X@BMt+m~F(TvʋGwpxYY4P2X\t) ZEV(dI$;HZOE Dʈ w&].GP!d4ECkjcMn0Q?ü^JJ+Wi62 ((m'1EXXCtJJ cCd1BY*E}Rm ;f2zr&$dD=!4I_Jx\co.՛$2.I@{ W'iyKqJe3DABN;6%6ZS)_gMFx lsg|]`+Tg ~Ls#l؟#V_QRߏsÑ ,b=|6gM{L 2nn ַSΤYnb2w./[.Y-4&+578Sá5Չ}eܼzLVZ sEC\7$!nEFv P~wٔ-Yy\r~}ׂxNJ)r~>udT|]ֆYRtΉ,5AؚCfUn_gK"/\mE;Ozà|DP ޏj_k PŃ$O0u\'X7+FJouc?HpdLoB?(??tRG6 >)W8b"~p =*ۖr췼aWgˌ CDoy,+} WWfoL]Hk&~Ux"L$6s;J [&L0"cH\:dVѥp X{m0@\a@ nOJѻӽ=7""a՗BRotB^3 3.,mӳ PIk4z=ju MBL=SiEObfƑd9Ao;t.TP@Tȗ]e`gznmjh>aRcn<t\'},QUS;}By#rn*hdj-emϯqgnA&ZrzSu^$lOCRsNV'J~S3_zF zBdQ/P ^騥Բɺ7E K4ZZҪΰV(n[1 r36hsi'1(p7?I}6߾}W޼ Fw5GROl\&}^<ן |9V_`s<+ofRPxr;(FN'n H1BSRkc8 /J e 1/J7̧Ht4yAC)>=!LY4`9!/x#HIsT9.@ce@%{2Yd8ѕ]њE#=EF@pXur?Xo>-dvq#rq7#Q!Rhlk<&} m˚U_ ¦j›_je*O5 'AvFc6\2 =AѽLw )65|6Z.G]`2Vk9=f腕^{ c8Po DN3~;6(@?t(-}e1^Ius5ffl%[|ui|G3-ƻ it_"wv5/hON8ԡaܒ;S*44؎ C:^Ast\ (Ej+Rhʊ"`ؔfrLWiwru_e1Ʒŀ1sk P'UsU)VB:"^`O \+X_FOHuwÚ kDFy!/hk] )2>z gO._Ck$[y^Wɛ?imLfx:!wEMxoQOZBa&shR}x0S-Yk#~\GrktRl#iwO`{nfLŤЦ<֖Ko+A4:o&5^ r&W!0[08J2(>dql]A%BOJյqu?;(Os L#Fw‚?}R)WS)$ī KwHO9OcvXk Drfz2q|)pefȌAz" CTƄۛ53 )иO$-((ZzX]7gq|xzL<XNarӡU<@a0Bv80>]/G:j_;m mXrawzJ ԽY 9*J7?^čwQX$F&(0/̟'a{KÏP ~ Ow8tݎY[*vڸ ܐ57qU o[JTؔ#K4:f-Ƥ(&L&3P4rO^XbLj^D"%[2$LEHV Մ)AYŊ7@^,jumP^K:[B/"]lޖh&Bi]g߿ 5KHb'#q ͫ z:rMkǼKպ~_4ik*\~wMRMG[ؑbS&L}O5d)j@偊&XQbTm;Bݥy2#|3tT ck5%XL)x‡oŴu:J0$]X^3Fj;$LѐÊ@Tt%^H FR'ϺZFz<#Vى^$еm&0<ѭ~~ZQ쳗O)ۤ](`nqnݴBhYʮ u{@ľpLʻd6p#<B9S{Fr{f%Ĩ!9,:O(8ҨKFy.a(|A~m_ie<˄J' x`?kG϶t"UձtЕAfs{H;4wx2%YV;S@_5l;z=>6˟q@"ڭ*lN")2"~7`o{[[; }X/L)dy#(] s& $~ٰR5!۔R3&J4SV'ӥtvT[&*zATPD?Gm05k7#4u kY gܟVA_1Mbp:*l0qt/j?|.yEOC`J'cՊɩ}fy w$ye?uѴ-pwvMCLjV`3B~cU~Q&$ghdxȅt8ky͞k f/7MjE_imIB};xY]gJ$j+EYA7Պ|bu9{ O.j5|UbQ*AHJȯ)41 h`m9ap:2[o!;j=4<&ȸzDP=Zq1H\'d}NEa@m;j:HÛG!;lkܿԏ{ᆴ(KnOҲ~0]b L T z(nk KySixPIqYafzrhԁJC5/#j\# `bB}FDܛC~W%*4(UtQyeE\?Z1NP믯_vR }N*:e}:;p eG9Ukﵖ; 1&U9أ d>8 >0'20 Gr- udU< +m\l꽪nLC}X1&xi]*4,Źzni1 $YkXl3ћCVIXCcF {V8DɲMȳSƃ!1KśҋȰQ|oG \ bCE1}P/Nq\߼{Q@)zBMIꐻ dחl/#BMz6ĠWFOĭuH͐=>[safC >){ŏ)Jx<0K'sϳe3ۀrsjrY#u"!GpguZwfBLӻ'+ӓ6 rQ8uBld1֩5SiIH *8XpBԧ (\ y׸B#&e5"/&X|W搜c YFZ"K(  +nV=Hճ6B& kf)_t QEkp$fJIRcOeM̱-b`MN [Jp ƿ٫ ƎM:+Dm*@.N(l7n(aGjTwzX&QQל`Ca?/FYzI lΗrW~k}nj?{a}|9rY)!;D22^J'yO`ր3) L"=j:@}߲˘19^u؇iQ[-mc j/5C(ڌ){6xi[5QWD?,>?AU3rc jғA1njD؅^'o˿8 6x^njm"tLًt3ݩohF&qWa7e {[wHy\qmv!W[*͔wfOPή[ҹyDU-M.DQqǦIݔ"\V}L8;t+NnBfpɨl9JyPF P4;qc QREI}#UHI*GÖCEFczMg@r_1T ez2JBQV6MB"pN6_3tМ㔫A, TzHrp3s_vR+;9ޙ{Vkՙ?zC$MfF:9mn&>Tp%ٿK&19gL`Y3?b >~jOʪpθh fS;]H;8d -Dù<:FwLm`j"#"&+aO}ds/%rZkWoRIibySCaqP@z=^аMO , W zzqueʞo)\Sej`@ [W +~<{ӘÝ%d ܠkvAIkK!2Q]@d)G߅a` T^Û҂F XoujK>3_D7KΞZ3!OVϝ">bIRnwr`Yb!%y6AVRS'0KJFP 0hYx/P"zY{ ZҌakBa]cr(E0Q;Ek;Ķ6Pm *crR$IP_tגQe9Ǘ鋱j%4mO8O#F[LQی8b`ԖCBxJ {_&Gs#.&J$̊ 䲗g(-ts" 8 L<䨔4eMpC(Tp&O63IԂ~9}BG5#z3wlֵf7&: JԲuf*IAN6]/\)b OojbVn` +SLKS+#'e hT_ f>ء)9:g^Cߵm4jU]?̉w`%K9COu,[+3oejP1e x 85l%#~JX*쓾$!UmX9yE[ En9k8U3[^'=%kQ$ʀgi;X<˔iD$d]vD[z•WF#ur#t)(#_>d~NVSE!Pug~]/w=>$:8!<$ʟҐ>KZh\,~#Ja6(!PX.W|-ENOGl7*3Gh~QhĢF0θh'2ٍFK3Ebf v 49 `6Sc0;qڽS48z2!ѭ\R| رK|]`pI36nHrJन Rǔ*-b9AeqΣ[.pKzM[>?Lqdc:_USC&rz{CAhOmje~NYg['1c,P3lCڂ`&OvBGXV08gd9uё_i;0.䠺ޖ|ǎ-!j*6 Dߥ<xsG) ̋O!NAGKBHadrEµQ"@|¼ +G(SaaM}kHhXydO\LH6ch@QPh5L+Vu}sJgifk jWBYXR~ 0Xf˻RPz`P*(qNȟH֬יȒ]ك&W,6\ sǒSHFth"wn,Y2 &dP*U?A<;#E v|`blx8=}mDW=1lJH#t:%^0M+,^|,LNxql'Etg  D~ޤdk7Ɇ@CփHkjBY d9+!Y xA a׺.J>8:?zA"ֲy^fO" }1GE2S7UHJ]C.ʋ<+@tg1LutXi1 iBv'&vSz^YaR}1ڝJ(7rg!TD<rY-M.x75ws@!cRW<[)%* {Dh_۠9rH[xU+!_y(벆R^A꽝'EI-~S o^(X uxPSnI}YK` e[=^lM. ߱j$*:]ϝp;cPI9iöR(=fBŃԴ)UK՝AoNz`S.l x}M OElQe~9ɣ/wP)#oVn$̿[j),(?W}-Ջs̈́ށMCj* S^VL!T^lgp"u;\UK1 d9& 7P\N?X0mY2eȢޥv n P/%ܺ=g lAK(VYw3..ׂMRQFiߒ?6XXZyDMi8Kؤ'$Dz@oӏ9SVY'e64drrFlhk\I|^AH&dz+ 1u\}+B- ucg|_ г-DBY%4CE:S|J 1=Z򀩙Tߠ| 8ͫ ib*ISCR=G*8KG!nPD!V)׶Ag]C2͝s5/\E"OL}q,wq⼩l;FܢӖJ"qJXVP>"qFDץ"2NtAy!iui}p'$z(M yerYY@FtFjSCǡR#nf^Lw'aOJ*)l;-> 2$4ta^2жkJu/ YS#}ۃ!L-˜q`X-I-ۉYd / ~3:p}aW,҆$QSpϻOU0u6:lJ!,]Y5 $3=,@2%C,9_61)DC n5$ՠ'}TN<c*FUycl#vDRӖWУhoDy+6Px rKnv x b$0쁫hEN]wZɱG瘮3pXG5uZQ논d{+¹wT%ە۬mK=Xd #iOc v|L"]nJ=`DI>3=0_,\ u9?r* PB8y3 dC{bޤuq646S$yLًHDR18.#:L9 \pVtP׿IKJ<ƼS,VnxĤ Qٔ@S*!Lj]îS0bReHq|3G ۅܱdaGa?`#?zUYrwA@|h'B[_/(g0GhFM p/'-B)N&+bȘ_yv:ziq1`ItnOjǵ=g&DhTx:V=?$ ⫍I &u y@ mU~udpתo dp;~'L@\b "\)6lI|&0ۙ+7%zEgJ/ms&smä#,76J=vj1B8;-9jpѷ\$dhﻥMr pZ 5(`ևwεƝϔ<ȯR(i_֑,J4B/LMN2_ ?qHdnsAT!mPcmO~kK5[^J7NjK8ѩlzNk%)A{{[nd _l)qdgdIpXO}K }n%ՇfpS^68XIm6lV!'Iáv?z`Yw7fH> e|,o z}D K c?y=J2i`KN kd!! Yf<uRdJ}C|f5r?e/j2~Y;8! >%\7|G= .8I*B%}* xnK.k$R@SA '9Sob^K]Tj4ҞfVMR\vJAQzWF.<FGU$y;t[r;ãR\ 8(]5!tPBT`]X\<ګMVݖT7~OY(9p #lt4% {*6pN^##u qu+"=; J\nA/wTe?!q*07U1[Hmmz{Ą5K y%J_'I` 4:^{FKFUtQ,j?5.ja>:L30>)<z'4M=E6̺43=*%ek8CԦb>a"6M(TnK\OT7\&?)m|eݙFb.5zγh=9M-3+$B\3}R aeK ?#[&KE–nqlXqCNj4g0|?`%q o}mSy/ $n;ēhp߸ MH 3"N9Tד$.FJdW_wo=fRҫr;YJey*X` ?llNIj>Lѳ@kwG5 |l;/ l6=&14  RouKPA"~h~$8о)9~+Bdb@fԵv߱?h$ԘNhlEf:^AּbƃK&o L ;HK>5ut0hT,7UP4g;ѻ̉P&gLe{n+Y|L8cRQUo~6a-١~SohkvأU,BaWse kƭYϊ+%PMnJŸPf⭠PnSG?B  >z<`Ћ*Ġ~bvh4dV6u, qm9Vtl7^魆6*3 DJbZ@ =)Aot."2!Amً POxK2 /DhZ V>P#sVsAU!]GѶ_OFr櫙XhZ*hv_W"DO7q ;i0*lOcy.:g·~dRUyF9Q\ZY C-6h$yMZkK=jߠ!`!|\"Cb~>vr2aD I{|idY)Obޫ:#+葊nL~w{UqU e/RBwc!`h{#6p;}ʨIK~+R-ϓӛcpN+T(ޠP&z[h> DݧQA~VtyC)kL#<05ϙ!︽I'vG$.W^B<@~u029Ề7 e̜`;N5!Cuʦc-" '}riJOHeWO!=~X8:P ʄBiA>)o[[M雘'!EF7iRfkR: x 7o/%Wن5>kPg+2U\9p&\d4 ;5HTC2'fLnK<.jV7:lb"le1M.|%H] ʬaTt`}^Ԍd,uy 5BψJxN ?˾v Oz9~gaV  fbڊ`H8OD]pbU1O>E2@Ψk`XVUAn,*w͐ t'Ԗ#E!&3 ItGVmGܫjb<ʓ d^ȁ.֒o)AǨ_ٯøB'qlSN=+[#y[>!\DT}]Nڊb*"+fa_(ݑے$Au;X֯v#7-jya՘3іCq MyDH']Njxpjl * =+0wi-88 -9ةٷL6ψF67YBvl/<k,ݿИ/ fkcRӕ8/Y\'c2Wr $̆MbϘq^QSryX2Π f7w9KPBZCtlwFgOlhzuIhh4B(ʤ!sqf+c͆"jǦk$1kB"&N]wSj8ϲ}ka?Q%`@J^#"ىse$KӅi2rz >R2ѓUP2ъl[pf\u\9* 8ښx^\Le.qQ(D_>@DvQFr=GCi]Sq :&]deF?/C=l:,N%;ZxAP$]hn#ДdAq]H\l^%+0HZL)Mc .(!h\Q zGe?<}&r.hE*x NQԖ~e*FYɾ'=~2tm=|=|O( fjT 2!+Lgjh1N39Sxjd{Rh+gclY!q;ODo$du[EЂ ݴ! v(na'1?ُwf-:Ƞ󮏆c [m/wJGYɿ]5%~jFrG\k nk>J]pX#o M֯tC?PΨWTE _@-Ƿ72:?W{lBߚ1Kb/gr\?q< 2QP)c[Q]O6N91Ggxvn[PgC5?ꍸ):E @y ɾf"#&- /*}EyJԯoJ %z[ :YEVfk"ɯz \y5H&9T46=4k\Sy<˚f咀Y Gƿ/*h2N8 )o֖N 'G |_]"oܓ[%ւz?}PhoȳӺi*^e8Ov?Y*WjHQV-;ζB>ݸu,춥'v_$lTAxNuRBKo3U#e~߳ÿ g8JЈ]`8^j놙ayMTC+^gȄͼ}t.Rşuj7mY D#U AJZ$^(+rӊfϬ{ư2%s=l]aط_ہL.( Wm1PHh6Z-ea`=.jPn0_XE-#1Z&vrfߎw !=m*+ⵗXN6y#r@Nwz:{dз Y90^O)lMo wUG6'_H-l@3 of+byd-ŇcFG3$4(r ntS+%4Sf@mBFG>!=[ktZ-~Yg}g >3tSH!\h:ZA^sTV}6t k8,*f#hD}i9u֪q X1g'WpΛHTGk_i?+!B)w+7W'2]FDexEBʩ߫XpĽ?Btױ3>WXJ˝t 3׍W;q+6CF42f}'ƮFFۮmTt}o.DcG/9{DKnVRZzԒU:E54JVhV0c1GU]̈́/jscT"zr5 zpEt#z]x;q鿠=],!tTybbAG&&abŇ*h V*hێ{,OsFL5 9@=GK ~ [~ƽ{KWfr}J2~fi\ >\{. Ǔ|/j8zp ~~8Ir52B(^X& Smu*ǝ laIwB'(&`HO1Ard1DŽB^o5*l6ks?1:a:1PDcr:wR,p5p&Im9aMAX{@d)G:|B $%>0 _:QR(@rw٢ְw_ing͓5>A"`/cphH,j-V$*A"qL37X@uJ&=wlρM$;_ 2ӖWתʆEm JT  9%f!w;߶ 8BGs5a c7vZjjcژA(ώ[(TTl2x2T34rUʊ_6] 1 z A( Ӛ/Ӹ,Xm JͺVW;i{g-p1"`P?T2qL~kj{Y;s6F,*NԦT.k˸Hc %ק@QΛ.wfG;B{@K/ %II~s2f(^v^[[tcA\gu0 |֯ E@efe~e9bdx@0R tv_ڭ/ u.*/ϡ}\b˯+Us Ub1%iM6|꜉ݴ/ șHev?iTUbU)Aٜ|KY>} tOxyE̻ /O(k9nM֮3w,^Z_ӗMWⱄ {e"{O_ܹ4aBo_ֵ-.WQJ۠d58;_ax`%?EMko 3XN24 ͭ2^nW@|Nz`;nK$UzpBdV;:NBVM|Aq8>N:HQw/N a+f͔6ͺ:?^SaScdKAbeNM!t Ew"4rawB]  OfT`u8徨ņ)trs7?/Fm~:ѷ*↧,&BM<-5W8 @ <ڹvƜ!,ցP3q|ܤw9i8o]Åkvqq*EpW9duq7;UЂP=t4"*Z4{INWQr5JA橙)^3p>ʉʵi  ^O5 4)WB|;=Cbbf1]e$! zD4s6(m',(xҊ}yFn!5R-$64LYЊ͝}*ZZXt yj_MBY2D19tN*d31(uZ! 0O}ULʆ?w糧fɫr#Ja*zsОʽǘ+vG]p•p׀x7K#r^$QDv 4*+0kD|Qg77\Wv_1wl={eRKWu%%bܞp;[#TdMrgq* np%xVBv㴙}>P< hK HK蚯^!Z{Y-ȉ8Wej6utPm#8pWq_,vEg #c {8CH&hYΐ$ġ8_"R2Ay dw j8fB 9f`jt [ȳ 8P9 Ӷ# ڠXJ,nui[_'P9#Z3e;RXn_sV2HhdH +."W<|dJgд>r=%ɒ=zd-2`^x$5ZC-Ϣ覜e7βZ +|65dWm*w)0R$FdъXO i}.fEU.u`)M4σww#1dNbZׁ6;>KȪD0sj)*^,G2~8ʨݣ =/W SMF.B7[R*M-RFhs/y;``N" ~ +~$au7c{#(~r1ՌcLZT_ۤ4|odFy9`Ewns)#m>\x' ,+"Zw=t(zm>"=~fC1ryu(o^H>fҶ"'8=;)o>y$&1\m P~pSWy ƹ,3tgNU%hp6L,l/, vOqZ>.dTbPn}Ǵ77o2I<L6s-8=ݎqݒ;.e\KxFfQY=҇E SKEI UʞkȮx@ӺNäZҺ a [k]NK Eq{Zӭ$ǜ[ѨO:q`+hJ͇4L~/6tr &Nz4.јӆlgc" E;3+J˜gKx.Zm׶G'H ^h-؀&E>U3,V)`h@B}vo W?ŶKϖ4%pU2V9 DSX&Kҩ6-&J'$a4N"2 LN)G #4k:P af cTAtq\vi܄{oBgtaLk:EW 0WHbR"7HF M4o:GZ:u,tUѿ+lWWx}?'7T(E7ww/q\9_1Reo,+-B,xip)f6uc TWf`d46:t#t#  ]þ2Oʬ[NՂ 8LN źA/Ex鉜q+-*ηb:G^^&E[y#&JnW܊tX-^2SP0ƟƇ&_t"3;M<$ګ?_r9EѼM#j%)(9lڈִ! [EyP.ێ,Tus E !Ļ#>`sށ\$ݐ'sb{æ5k#{+l+K@7ԦyE0nDhA4=#mxLcFQPxנ+KaťD~$z#  otŪ/'4ڐHKR/FqvA+ . eQVa*hا bvlwP>7^:Om𵄬$4K5UH%ȹo!,##:_nsgu&V#̼=z=wC]4민It/l۹?<ڍ{TW˔0:["h<"i7@@ƃMu3.d'y[5:ҔdigŞףzh!/xFiԭdBagM)Jp5fU  ?Qr*HʤDWj"Xn/4nF)wΌaqBaHUY+^xt5cBng7 ]`Q!5IS|ROO$VV-Qg٫bo7C,Q3-j׸iMlXmZX"Sq$A[XAȡ  >m~$.[|-+n#e^PPREW:XE%b_SsXfiO r 1;Qڻ:op`i^9(U!sGЅ0KtXB+)A6ڥOU~6kP mPoN-O0}G{19u^n0[UaXz] -. {%F!`yV% e)@((07(y!W~,j)Jl,`7YN P}DzNc5(4qn1'̞?6 [y=]e:+$,o:hTvKF| "+8 jaU7Jl.55g"Hǥ{N(ѩ="Y[MI2 w~)z.HT-:|W ]0;MI3 Қ\> z' f\˷{HОػpWGs߫r|:<pXvX*Mo5! -"!\mf)՟Wq-xni ;@ocGais gm̼g-]T9ls=%o\E(1t 脽/ 7 $[[2olŠ ZZ F|}cvom,!m%.ݚc1V3)ʧNne|7=Eҡrk8ޛmQܦn{byOm$x YoR'ş; *| ϧ,q "WENY>juMhuP&z~bʐK @ɢ .lQ _|z$wRrwOIҡil4߃m]~Iy3B%(6}5>`Ã:($vs= ?KWq 'i)h[GpZ }J aGW \Zt5c'@D' "+Xh &\.Y ?WE}uZpuFO>; W\'NK>񺂌Šy~E mڱ@w*sU*w ɬL٥5**="O Pqrt#V@#Щ9!s77W%dݸuOl>dw_)d_QX,ȑ]3x:pxuƒC&8fpYzKte TO׫-@K0#[zJ:8xVDnɡLa<6ް;eJ ~:J9`UѫNҞ5E-e1أ&ݡWwO} rPZ'4XxmolgUAfln+|֔_ r23 b8,Z7pm|Hgbϡ5 [`˝|t~Ǟ240g^ ?@ !$~]^TD?Iz - >Bk`cB=52OQ1?"{V7IM8 O Kr,Â>#GɉZxOn=hc{\;zD)3jDfNzJ J4*9pfLN_/%j"GՐkM< F*l@D(:jz,"%Cbqj{fN2v;"Xy璪:3rJ+F6֊MwqbLC\I!E瓭:8u$h'"d?CҺJ:xHVf[5R弇aƨr/Z?^QAg(:XKcP.ɑ2 |vW'(2G|*CaK|ij|~"^>n|YUOJ ߖyىJi=os ++[9i?DL'sٵM8q[} =,'%y`usDC!2%4@Ox ?Vb?Y׵%OgGj@xs|Ҁ&#,i[-p>E?Q1y;}"NSt朇$QG@MQ,֍*hl| mwz7!¼}\)CNV ھ8ŹA`緍Zw%۩aR]bϚ`pcWRYRנ4Ss#̕% 8Lɲ^BMTgm4K9%z%J0 $u*ð,fi5Qjn   L+ B-Z\"/@Bhq J`xghFۮfn( Ca# ^D<=ٳFs>G2i62#`䤤QK[K佀SAtT?Fc}?D1 1=浣]9JD)SH2k*oO1̤QM6p^2~J4k^T`nFSʌzmܲȏIS] u BP#:F"h֤rmnYw/dPc̀ez1J~׻auWxm> wp.sJq(:9,] 1hT !.O"n$~ݒ#;KN3}NXȷ] wL벆PE4T2Dt* SB:(@)d0(Wmq$4b,T5L鬋$=rPkDg3.~$>z2X%UsVi`LQK0Hƙo_m=w-;iu6$8i^B -}[3.Bf9*!o1'ȧjʣ_^ NEԝ$P<ϾH.6lyZ:uGcImeeNjJT7+0B}7=ҡE)#5y#b1 *'E,ke#y碨T P4V* p T)S'L}<\!Ua3 *"ތ& rp+NH,d[!fH^Ԃw?zý|̳rZˁN좧$zzŔnn]$mݨɖJ.mÎO)!ew!%OC˽c30W""c/2=g!}t 4a$w%ycOIjg$;@=g zsmisٮgY_g@؅ӣyjŤrvp3_\Yo;V}o"B1$ bf۳'m9*k);\-aJkWϵ T~tv"Nwzh3@ZBD셵k%,TI8Zame/g4tb;HNS(aY"!5?nOȉ|>;"cs֚NCȼi#H 6 HK|)漢\|2NMAw`P!A}n@ =KU`YqXh&T+ ݒA[sPK-hĻS:L:L?Ed++DW/@q!Ytp҇Ri@P\^ ;-{.Z>WwGׯ#ȶ 8Z2D3{h}~ӳ:125hژ%124tJH}&_ÕՓmCk3?g*(b1t.N֮ q()q c,t]ک &"g"kŝ0}n^<"=X7m[ǟ鬘 =NS݀ʢspM<LZh-F/[ em&$,BGu=YD+R944cE ɥ~X(/ .]^5EGsX8:i6S $ƛ{%tؐVq1}7т2 ! koʯKG TaiA$ڄ!_"GSNƂPJ򯙈;MF>%_L2%]F<^Gv[I_YOvƬ~M!R*'j]VpN @?1yM}mq[Nt5^e7ʲ1[*}}?/| O($Q5>vTOFMf<أjmt̄H)eC}Vt%}tjZ>Wʶ"+fX32<=W:`['zZ.!p+?&6{EK]؋7&fy |txVh3!E 4ǡy%?€[`|ME8p._ l C) `z3wujw,4m;5D&5>c1dRk /V6F7h6x!8_fC\^a؉CJ@F\\/ڌ|v xX_b(yjRpHZ҅NHh#Bu}ǓՒ߄%0&6! 1T7_9O+eq25;n7Q6+.";86}W4"h(PC^_T)7\cTEF09 V; ?,+/P"xb7ʣsvL,BTjhOX1w7j8M"?_KHSk>c^"hea GƱ-:|rt ra;wCƣf|jQ]KI^T_$?tSLf9(Sn:x4ϴ'e㚠8vǶȡ5G#;+%qV.ݾ692KdO#``byb- mʬ]eӡ5#^L ^ZMO߱%݁Ib;e~0 <}Ťnּ I^4k Uw]87|sxs>CL"brڐ5~E,vw7+,|M*?cu5xhnVĹ0=VӸ[gV8q]b >QQ-_FMW ŭkEr M6:zJҸi"@D|$Hza3>L2B(ฬFF$; ƫYs<%%Spr(h>={b-շ\̞ Vt'wQ^S?>i Jom44/PI\yp}tCI[BF۠}Nbk3HFczz  7K%  BRa﵄l ⷆ7.3vqNB&z] Uj!/;;Ӄ:9?2bZ?mvn]X#*BHYqÔ*O gPF+i͘c F>\C1GPSUcb 2rc=`'ܬ)t1\2+wXaiy餺K{ ?d\>݋E}^f]8r;{XvAN; [S^ĝ>iDKRA+pџ iNόGŝc 1&9L 삥i3'g0wƳ(Ke[LG::qEO6#xJ> 4op[G!v(LV,Cmm/r}3=+*j8L(d+͌tZEb4Hq.W[٦ʶKyfB61i/~N7_ "֟?|n1lVD[򻾂!榘>AJ' F8gg\ XL)e+"-g xzqeeeA@0 btb =̆xl /[)#pH/m)"7nVM&c! TfoGbJZSU)ي{-pT>ey/ÇDe)6r`-'pk=NL~Gw-hAұߔ֜Ck ϗ8251Pb۫HzlP:޼x{PL+N CA]?s S yB 9Zui?Y^jҹℑ5A(:L&?߱ĜE3P6b,gZpD:z[#l oMnm&`΄? ;լRP#ƷLDj_SbIO$d#\$} 9n(>y9BwP7T>,i ΆR3~θ82NYuq.CzP:bjdϪ:zd7ӐZyPG,:okVV2ݑD>ňB% ¶\OB;=Y'"k pI}7QKƖVeLIԙUZR>1޶5ۆ2&b.wdz)䓯ۓpMmm䈥ҹM^ckԠs+G=lQ )h(a(a9_(=dю+D.($#e6k"2`g%05an&7@{mړwr!cj6 PT擸oWK;B~9gr6SC-+N$N.ɮ s;XJ[lZa`faSţQ({|݃Dw0_̐ftb#%d/݌qv)Que $~S,Q_~FMc}7zYf3&cnFPata`LG'͢)(pz#.l\.2MYmY{ZyNMa%$)}b3ZN5J:$Y0'Mݬ̜lznEccegڦ-*ޟs* )n)[(3">n:% %##Nx1b3]cc3. $W9-Ji֞HAHt4?Y6f `wnh4vk`1"H@яBukGgL{->7#f._Fbv/jOI=*X7pebI*.oj֡^={x~N_c4D XkHOP\4rs{j?,Qu:|LHP{=<7c؜i #eN$VE[D)>/sWrCw[SU6:6`a0Xc6qh1@۵Po7ޱ2{C߽𾖣ƥ/#JCBOV6Rx]`YE8X{8k:MÔ!q+qŻ^qν`uh+/77 k%JG;JnI܂l:vH?b]f(gKӊi O-5ǥ.x7Zvi;Y (dZkOV i7=liKfidVYU2KSx?ȩ%žb-`^d<2.jd2O`tm;+ԃ9mu%#=̃t~cUgHCKIe!~hJ!-{flj@vx+4P/YG*ɨbm8w ނjF̼0gtv ng"V7'`jcO4kaT p7c*mF z !9 m*Ӗ 1%Q<6g}M^քУBv0F ÷ќbHk:{*LOB:0:'KX{BDY%.2d@4;E+k!%6`);g͇n (sh 7##LB:hQV ÿNhSqF Z\Ц%ޒomw;2mV֊iyMRs]+ҔO 6E[)Af"cJ?B}Wzi1#P;ҙ =K"UPRn^WI&$>Bk20vMIbu>cڽLJ V5UN[sҾ6ޯBH›4q^ "1ձ&$..չf4U 4 TdDWr"{lI24?CQIsoQ H7RCՁ%*TmS̰ >Ֆ1]@N&U)W;cu7 l.O iT y'>@FOk9:o/TEٌd%0֣kDW;Dmg8sr[BqkI8߱#o2>n<\C^&juQ!yHG(qm)wQzozW0=d1T73.kИ83fTɪLa2W[mxN{#!D8M,yzC@UOZ,ŭ[(GghMwf15I}o2 U(tVd;>_B,FRnެb2`&N )=2͸ƴ؏Z*٪aP\ O A-'*WcSd7"K?-^%gGтn  uC=2Ĕ$ @`d/AGJ [ "W\t̵¦ FܲVJ{4ǰ΢a~ɯ b8}?2q9b3#x$$.}M[~c -mۈ{Sя TSШ\kK $F#!za=F.~Od{-̖חq8gp6+jkRJJw au&_-?J$m&C ql\޾bf&?a'@NiYwBqK N)I:0Ld oyO0r#1uhkX&Nf%2BCr|h;Ȧ"H_Ad'N佗gS,6_,¹?ޛgYW!@B& Z_4,W%T\niR:<ޣ.ӕU3mj;{uVM;.xf1!`K{zB\/pXMdDÌ{ېe1<O1'tFT$X#Fh~(WT.$w0 'deAuvT}ѯNψc; Oq8,j-r8$dI,BOIy`C~xC9|b!̈́o$"NjaЗG^FZ@R7u\}f^ٮ$TXDI1kZlp午a\ V tDq͒u yeVl%P{n0ΉU#)nlL+Pɪ ꆙ ?Nf|Iζ\% ~@(zO"e9"@"BQ .b᧰>Z\(XT`),*)N<`]7M7҃d7tGj,Pk ^&q>nszIp}fwwC:|ZMtv[bnxc\ KG=Knnc#ƕM?*d= ÍA]B }Ia2gOb:37ED M"k)TIˏe񦇸raSYk' C4ͶPqF3_";NC'kA Ԡ:r Z5ͿRv!h3o}C g1/.R`Ĉ>AԌLkZ#*enjl?g~^Bj9cER$D@J|ТەI4{E*U&yT=ރ7/[9+lX>&y" d_-B)%8Ob@Ry&_~\u>Ǒ1"i 1Qƾ{g9 b\`dRԉlMLxil 2Cx;]Jf|r٥YX>8gy<=;/=?;`͔§TV9O /$m w`i5$4/m8d DaiZl'x?NFnG?" Q@Jի@ ~*s͊Ufe3-5ś.R:'ȋձz94گ. ŹvI~`EvD9Xu!?/ ^ ؽD:vS3=14й8#oxdD=+wA"Ksj07?#۔_[S|YϬ4+fװe(M. j$a4u|[zpCPPxA_L!=ѐ֥Ok }ec5pmޡ>`Hm?>Hl K[[э\ЬZղO[6r~'oFM1uC_12wڛ2Kj %j=a![0YD]z:rZw`*/u(TK.Onr8@ .LVo DV} +@.ԭEm5kg}f5$LM(.#{o1xeT}atR!sp6CH̫+  / ] &@Pw?YnfCib!c:V#e}-&`x!W>d $ԐNid<"GoyaK}2%of5B)@&AU=d.6VCj甡|NI\ 3¡iavfvh?Q{DdZT,&hGl4{{1O%"|?57eQԈp֛"GgN[%ItJVYe R/|@δ(թNW_Vy4&zGN| ( I5B8 K U B~دcɩ ^636Imo{oVJb\'/ ,+<1_ <:>g>t1p+]-&8@2{o-x+"Rw`ƌS+bo&d®neڜvX"Z 4wApk`uÞ $\ץPq ժy ?wx+RHlA) 緘R^eK Vl}R^L/άi~|KDZ4ӹxde0mfфƙ34HOonu6N5sh R!"YfWAjrkK̆"]˛ Y |{Z{? VjI`)\  q="p6 2';M0Rr ],?sᵢ9ң(t3f'L#%5uʇ?QTMmj"OZXD8’5!9Fwf5Gȷr_516)ejUrh 7pyV";eŷė<)~1# i$Y昒ܵB/M;9%яpPPX O9 uww9 %| H?wx1㩰$TR~q4nݖzQpah@{:Sˢseh/H{h"~'0,ϕlzv$;,~ֳ/p`M'bB(z\_j Ie~bv|Jm&b][xDGKɄ!E#5zfEyĐo9P8ڸKdZ0O7BsL.VxW s^tѶ :)-5sT7+P/P/úI9ԟT7'LS[`jGC 5Etl݂*p~SGuql+jE}87,7ӌC.X4P)[θ6&C<y6:ݛdɧ[He>CA( b*1)S br;EDž$O'g;k%POڮw?#I-Vq@Z=mJ?*̓CMK M;l{v9'qNKD!-DR.-ȞOC  eBtID4Xd;*Dp,NRw(̄zC0(!xw[cQtd4ߑ"ড়ScNF#턣aY#8"ɫe7 9XNOmkM}Bx]x{^lQYj&D2 $b߾OzoQ!kQCް 8:׾>2 ZBdlzf, O$(]֚%k;^^a(yNgOV/85P|]' ۷(f=_Fv '$Y+kDբ&Im߿xad 3?٧e%1bw@3jHq,O3T!-26;l'V汸6yĂ<t,#/Keg*jLEY԰nʅݻD*I {!F* bRf-fw,"Lm"ShE+h0{|* +"xmAcw Ej;;zyysZBq CeЦ;ReF ~7ViT8O޼]8/Q ˭ױR1W*/vV0l[_3iuCNg8֛Bg'$[vʳ!eQ==^/ Fǯ+1!l6Q50dD;IlX,͛ك,!~ 3;h=@e~50<$쾬%NcA;ϊ[LM9FN^8~98G~GqQC]˨:1Qo@$}C|t hLǂ( u0>hI%ʘ!1~s;bƮC VJd:GRUWpgc;Ea&;B0/ьGj,w.%/>%uW'.k\̾ MJjHI>=:į]f9 ViD򐏌*<] ?võ63}Bcz;R:"+d3 ]2ĔEgӾkNΨ%s'Z|iL!pQS42Q7yִ!l;M#W0OSD,&כ]Ա[v'G۽KVh}ӤlyMpȈQ #t0 O +Q*s`8A SZI?PaM̟~>iBɊ'*b%⩬rzdS>U@ώ)ϋw HOJϬ{lt1YNV/@f>Ŝ"Pك;gFKa l|Հk#QjEH*J_3yCc斝"9CV&+_aDTP>a~CNamUUfGS U=NyvP{}諁= Clh8mS(A,[˖Cu@KCS:}R2ɑ+2tL'h}ā3VgMZ48CM%*ѣ+ub /D=Yj]JZ?lyC>%E:|$DF^`!PҔU$Z,ى~Ã*X5py1.AuPAYӊQ^EF5 _iaZ)!.qo_r퐜7+Zộ7Qvh_nY4kps9a2͍ 01nT3͠N%hsہEdXɯm>ع=J?DB+EveOmrYӍXDq?}t P#B/'[LSw,KOXƝauݮ>q0ys&VUJdfKxWs·?5|0,i(#TD.sϼd_RGW3SQu| V^jAW#<ҽCŎzUFp 0>^7MJȒ./P F[lqmu uRLB>go hמG16@:e |/%Ώ 'ܟSC F ,wi2KzIМ@;rZ*VxkV{ Db&?{oP˷uRk]\y&Rɴ𓅮Mf\.o7À.ڍ Zʂ߽v(;Tu|{˜.k$uvFi xWF|Wl1+35PBP"HGJڂODNd}\QvmfK`O*ѓ ׻Jj/IHeř8ԯQ=WBqS: 0B4i*DA:;4M]Y@\DO{qH$CdDoWJy*MK.jM2d7\Y~<هZ9V瓖?\Nf Bc]v|;fC5Lz$/dJk9AUP h7\ X? )},8k6ym%I]|!zO\K|y?ir̋>j' iyt.M kjk /9ڵ#sHX1Cv]&+|~ғfG&$sɄa$y4N ar2$` "MZZ^7_k^.ᄁZfEnŇ 3/8F+d^XvRg}s9-6%}'Fi7SEP&r&f%dN{t|9zb IY7E(6FQs?`*m{7ЎІfJC7V. y+z,F ӏ)w[ED/šp M!s6gNqK }%hP7 x䇠/NH9l30ŃDŽG)e󸌼.$nfdb꒫+0[:X?ǐ ۛWPf9"{l)D*Y>*[-@u~~-~K?2:Aƺ0i׿f¯9{v1xD},@0qxFXS>8?(`gU+ϭ ͋7'cp yPk"$DBIJv "AZen:5y:QZdDgEp:MЪ WUyb;!N^pcVr*F%)|X1ܲ v+f i?E ZS&s܎*yL+;̥*kYp.L[[6#KLEKw_@t \ls6GZlzu3av>O׏5p^^,[W\w o$>/o}*F,Z١603H0j5m{ )- WLpZL7B#h2I[uW\mO(NѣSH0>}U%*;>$sd`k@wg-Ⅎ%Ǧ!wO진P876y=f>zc, Gp9>#Ug'[X{RؽJ##W,K" @T a11~VKֵ)@ O&fͭ^oJcvFI>ɂ4dl߁ּ'ɱ9 Xin@֤N.k*HLMv60nUR͏heZ!8/ǤEoS,YYL\ƅ)5SBg`p*W:<7gvS Y  ;EU2 SSɋ-4&|͠iR' J9F{Ye@b~Љfܐчtvyw 5ՁȮzݙ˩8JnbOp](H"\;vo'x?„EKR?aҴyQ'w!#=:KӮ&0t pV|"j{"t)_ay-+]\Enو z!}XȧXbnE.t∎Yt ?x1L 8V 6NWIv҆^ v@@|4<2O6( %(cuzNOBYp%{M#3ˀl˕O.b;/L<~ ?BH ,;cs#POiN؇<K}*VE5.YtF.@O(bXv$C%~/ٲFScHJ<3\* Q8vSy#?}).z&ɸAb|t.$ܖ}=ٍ .b DHxf &4L @UK9E w(N}0̀2՚HFD"5!8ytj]ZRbA"*?]E4 iٮd0^`hBW tI׼,1h3} }8/߉'A8+Zjq>yl[ϝdWjț=8Gfiz1G9U裾c'SaM\}.00v i)S7QDԫbOdj[^i#\+I5W+s` S R@˨iᩝ\-UPuMޗޥV^{?-W<,#m_{:~N8x%&5?,gxiHeGALDkl]إ δÍL )KGp!.^Ű"14c0Է:{ve1Cl2rq&`番ȃRo#܆l#"Kչ"#x<2ڥK%֟QU&#UЍb8) UJ̄\#5,$gxl._\Fɧn|yLg9DN"\EZ-Y݋6.iƝEo{⟦v4]o@Z 0b83ClwbbV|YH )d=ɨc87XV+g7(XѨwdb#y7q9Qz6lpyXdK$*ޔ?G5 I!Ұpuԃj+f9O!p>1I5)!:Ci*225 lMk I e|)1g?b"d( isurOiH.PSAZ`go3AO.3TT'.^ݲ{ M`Fn hnݨcuGێ4FZ*Pb/,Mi*q.d_ M;F1FG> Wxi\rl *qcq%){uuxӴVr:7e/zO:hC6,>4s[N@L HFmG; Ѳ!Cd80U א(Ù#+fV7UB۶#_Hw < y{@ ۱ ƽԒo!P4dm-xx<}/lZI쨏$rv)sTBq Z~ꎆw[u},ۊ(u0/ PiB Mg=wY+Ʒ r?fm낸SJLoH: m o$w<+kS8MTHhS h8ekW !sLiXSFczx $́] o^ GN%lkgHVωBRdS|_5"8`c*\KZyɁ>@τ)s%`h@c~O7qJ,qW\Vq0:WBP_(oVlmJKkj,T!a}NTJT*—|v# a0/_ Hz׊6e3Q1#l}3,C XchEg%RWwQ)bp=Gԟ)2sN;[ok_kUJ8?4mF" S$ˀ]G01F^P:'"0їjhwam3kHzkb ,Q-vycV_Ivjl36wf {ő_CK1}TG++& tM]f#5NϏZ| dsӏX;+1Q,F,gT#ݑT[Dʴ &M @"+g]rO&P ‰z!K~NI-9f3q+ӬW K,e/"vD Պ0!U@րqBpvYu ,(Q- ղd[kqh;+dtS/(Vqп[΅I_|Dwe !A!jiAZ~U85RF; :2c:N6ylu7⁐49-{:CDB` M<]bފ) @lRo E4:门cA B^IFkmRAu0]f K}Fi]#>"m1' a8(Nb"!sZ[!K)riMf*#(䚟k^Lp (3ŗʌ?+1`j/B;3$ےz^hFǁUb۟O{ PEH/͖TL%E]b!8FL0*Gx2EU۶| Gn|ƈU* {sK ]CR+}b1Gx6O݄LJm6|KiDGy3rSa[Mb* v(LѿQK\C[` 'ZRwxo<2d]ѐ6ԑ? QͧY`?F{`PjzyFstZꙓ.7egwd_ehg% gW4o]ȕ5ɵeuvݍ̠uia5< 3>fE R{u#™*DŠDzs6yw:ڣb|֒jw#\_7RPǸS5)41da*]󜽃#y*0XW[xՙWM`T.  rRf3Ǜ1>5x1BӒٛ?nvZu~iŶ,<'K8HR\R>aR4Ou#[~VM}+t[Q|R 놖InŽTuou%p1F1@7$%Ylk>g(ORƃВJĻ̖ $LGxou jSw}:(J0+zqd X/wP;?K8Fpg"qd4P*D!^G?y@H]c@uC?A)Gx:i,#i1GeI&0; Z-ctT|&/ 3ڢ:ŠuEBHhŏFa0iΏi/凹XʗQ.DZ33.5"bI&`r~)Kidž5SK4 `ִȭu<$KK֥-WJEئP7.$W8W#+lT)IgDuS)/T/]0\gI*C5nQ?cҴ:88&L48omY" v W 7XyD%5ܠ K{7 ['IJUΡxaFxZ專'MX rS~-&ƪ"SHd(>&zs=ەgaOf<$c"J/́򠌮JOvvqYPUoO@RG:lv`Rڐ\;%S'3ϝuHmyejaU)T$PZdX!5Jh| MړUGS?SZ ad5\%p7]&hݡBp(Zkh괒*#5Jm 1J<_˨iN}Gٓ<QxP sߛəB0W tUGBJ}l /:Kz3X0k]tzw_Q.֠[d OXi~5g?uujRTSqnk/&0U6b#(hY`xe@#%6|RM62p) ]L*7e]nY&k9ijɝ|xf Ny_T|*fń"CTx}B S-u"hO(kv#K8Z2xmosuv,c\Og͞'x|:}]ƸaTû̸-o]Ft$u79˗*1ΌA͢+I~KB셒hgi2>*RG`LLYj5E@rb3o>) j`SZ'R.haȤt] ,Z+$f\M[u\GK^('evH2p*h"Q58%C1`?pJ/&Y̍MȔ_X֕6|PxQaeSw=ݳ֡1[^K>R':TUrIц OB%*%Z#^ WEs9Rw#AKNq\B`蛫I`?Nѡ)wRS/MQ)A9D]ZjXTuO1<;kHh1~@-8AbψW{p>Sx.Ih; Zd6aJ7+6iy=i`  >d!SdևP?ð%/}ݔ*,LsdD|S]& MHRa[Z\^,YQMA~f+֓ĸ\l?URHO#c蟏.F5d:'_?V?R&: ( 0R")K ߍC 0'kK1mruh3Vв:\&ھ b!Qe!i0Bnmy4 GVes`10Ba yl8"Q,%|d fr- =p2c[!r1QW{,x%} D n=M qhFkU/ .qEŲMppD^zBlbxaqӵg3C&C؋*W 莩ul e@d_qD&q ΘE|뺗تn'~F8䵷C]֮] >gc#NiNO6`E đwuO4r]l;vSHg`,^c_* \S_&,#*q$l ]4Uan]IP>- @\WBm;zpL:QLܖ8©VA3ÂN% 1qG]x}ʻDol!2$]vG4~qX1-}>G2ayvzfسrK.d cN2&Us-נ6;3$[YUk3XߌF IKy.)YB͕7q| tmgqm )T F8nlJ-\葲B2bn!Fn"WYNlwnN'T^Bp/B/4v pn\T^MZ9nޱHCRR}ľ04 mmԈlfl ItRX]}r7?u~e-8)΁/l%W.T 89d3=t; 릣bb xwu5i`h kfLerMc˧m=M=CiÙR?fTq8<X$zJf8[k c+Mч u <0u8ŒJr7TNYC%^}̑{݆7g~pt D4Rr5CuƬa|S)Y`L+Urv<ˏz 5!𓑗#~ϗ|cMߥA5ܫ*}(Z]<~]fډfU3 |Q iVV1>XrqSkCX )|+2?Yu88Լ!V*}Z1G2Y\A}x*OnSAMK_*X?+pqĀ.s0" mGݳo{ˀK1#bꨩ;lQ 19`3D:tFqo]"'_nlaa.>6wݻWwG?Qۋy٥Íi85\ [;]ꍹ/._C0X yi1x[}g"Bu%̸~k“TKkl޳<:^X*mQen:qit8\]c'j^ji"aL%zV r -#_Y>buo74 '}D2i[`nMp 1@'M7DJǰt(.<Y~vfs #̶k T2 `$nޚ?Mg('ItK* ?FTI!S]>HmxNБ3ّm*C!*UaWYdٖ+݃'j&^"CVJ2O=wk}">Royn̷o_m+/Wr'ZS<A xXRc3ug$f2'K03'Gh}= 4qO:r95AEy% *9 PfE7ÃcMmҸ_P/M98@Z1y‡L,j@ xþO>6:tڴ>C!CxWiz9yK0:D`J-'C:3C늘bi 9R'ZhZD!0apd~^"Qu;BgkH'2wo=-s16f+vώ wsN ĢR2"N)k0ALH-Mܡ .-$isv=&:?˵9N#pZ͠0\Yzأ!<] _-qb`Xs \Q힠AY gZps_O&ܘ׀RcA|wqiF}X _4 P.J1rIĐ?cZ5ox^&08aCżHBLJQHʼnU᫷ك/w$[dgE1Lj0҅p{̲[Px q9!2PCԛ FE8['f]ٴ-k.W#ddgRߍwUr.@LcM*518~A`v8CkiUW-0s Sƶ_N'}|0ݪ(;eӓSXNb{>Wic ( A+^N _3пJQK0TB|cq(NEH|)`s+r/o7I?,?nH |R&pQ ꞯ}!v|/Z@`s@2{ĀU0&uؔ0PjjہĐonN0A1*^acQNʊ:A%nvH\yಒf UIk:A뤣ܽhVmŘ؃)nHb'>7>W)@'f<^!_ _wB1*o*nTf Zty.uO:F 8xts{tg;R$RMkҩ-u|T`X(7eǻ_0?](BTQN-;X|͐@gwvXBhdyrta8h|rjձpOfX/Sc9R=8[C?E~cVţC3EE셥o y6dD0՟&]u>;lB-F)> 87,-9 W]QA#'R xz\V:gW}%;RrNXq٘I@r,9x;Ft&U8A$,{x0b$RVH2c&4ӜJһUkCU*χy6hmR)hLGa>&Ɔ5bZxK)JߺaOO)vK"Jk|NbgH}Ǧ M,- H] kMuj /*M.02nL  cq+2n$OIQaD}wa8Cy2 /(Kp2x{g3iZlnWܤJɘ@y,Hg?ƀ/Ǣ}^gPY'|n/D3;v52qrGV:X;ᅠ'_%ܷP/p Xof*˜8]M&KRʅ6qpiVz dZNub4I(])Kqh;%5/|V<CL2ʹſ4xxx['YWA(tl>uZ (E얼7쬾L tݑn]ЈH\X_ |,%`K) )/rlbĸmUTc<G=H*5IW1*@'(bF@Bvn 5f_xy2yǂ Lʻ-0GOqǾ8xS|sX5HB*,pM[GW1'|$)tOz ^K%1ߥmE#LL2=vmwQdW96Ŏ ⺚?.MWB6ls]8 PZ5:L5O&lEY.}45ͭ)Cbl=wv \h`%aa &9fکgtrŻmPL>:0?`tN!2f|yUm 86z79cG \jj2 E'[lk8hbczGF 4&JT'{+RJ0?<ꕍ?+ ?f;4hGBJD1%JJgp.x]W6zUs1VAyij|i hb<0mpiPB+z8/jJxAܒ|s@,@*rdQ&ZuE`@/A4hP3f)>t8i(욍\JEuϞnD HhW1vvmR~sWHJ(PР>?@\Z/"  of)tkex}9z}#=Nr&K.OHKlފlqmF#YRCbɒH:r$<_3/B+D319 (aF?uG:zy59F`;V":.ŲC]f/4k:[*XAjPc+}@RMe6i2,"%ك-@(dz4j%ƿgI8׳{FB8TC,b$)Gm>iBU\S bmP.̯-]EM_q$J鱡' i,PܩxHbס#G{)Q W.n;:³'bqD=F{.wKZ{>s'uR|$'DmF=E%2a]2nO*x9Oj׋Of6J &~B!߱mEk\U)z[cUqM{MC&mo_2'-\{EG):; C&n^]83 ?K2?|%W瞷͓sγD`NDx_j*׬sC0&!̨HO .F!u-c֧O.D-\byD*`-v?k>u.O*)tOL7M^G#r xIKhL∥^ӶG콭}WE &xI'~21/ QVhw>4O" yxfnl'mAƌǰhi<{'%2YV}onR ckٜ_Z}JVRl<mhܝZMv2Ϸ׊lX&lۀLa*`rcIp9ʟ-¨`=mejgavDT~B`![92|{^l2E7_$tZԈ.9Y: ;>L oӦ{a1 {;b 'nv%d4j7P9K! 뮦-NRy=\KtzRa-ݎIeG>w7u39!ضa᫓^USZ(`^ld ]+=x]O"E͍ty{c5#;j +:5] nR/N+ Ѻ4%qnrV]5kTg_59|wC،3Upxڎ!u\dP253m3akŴ$ScA?1C:BQ D6ݧ΋HQoJWZ&4w-_'4AIQHj,bB?˔_Aq p >3E*>їњf2oq! I ǐpha]10UO N=uڕ$XD'gdCASY&e$ܽQLP{ETyBYTr=^!67@,HBڳc751'Tz/  P~  iYŵF*oq\tiʂP7K 2v(bG 򳻧v C&EFQ/g*1) .a>֫\*hƐR\(g$f^I;_p0(,cy1JR=s \ozȞ53xO\wZڛ}FaZ h*M\DZDp&3 UX |BğZ9q\hj [T/&_^7%p -L gIag5h@%dƍ@a`D%vbg2㊓w QI 9[斒w}Es7Ýiq5tpKd3^VWr< f@ ^N St5Hc[1.K9d[*c.B5t~ =et*ݧr<bd7\:Ga2Kz=Gƿ ~thӉa9x=+mc~ |/w[N J6d|wƱ4BʍML0j݉ECQܽ oxYZB` \/|'ޥ~b3 Po鳲G!`VC(3qxIu#L pY7*j#EL|PwЕ^9uVHIC⯟u޶ 6|T8殃{q 2[zS~v1ݠҾٱg*dLntr7jGxYp?)-koB4uk{ }?R FL&لL %LA1]RR`0ijJH"oV0uEeX JBȀ?iIh*p=#ZEؒ׹duo0xVѮÜ4 ` LNONz\~O0᱾E.֔MLnn 4eb=dB3PhuqrA]XLrdQucc}kŠk9hrT-̜>VGt z:&a >?7UE _2p3V /~ i4Ga%mjA<)+T=ˀFb`3jiQ|3skR(hPO¢2A+`#VǠMVI_hB˛LVmTyկ(]5о8aw@0%7XHDOy K*srs 6m_7  YΗ/nL, ŢM=r#*zaZ@h1C8}y).ܬ}365Y<~@Db&{AVJ;'/K=eGd(d_邼4 O?Cs1+2Z[5:]?0j?IZ(qW,pKz! `=jDKVPi4KJsk:׆[|:AlM D}{܃j|tVA^ȎH3 "'] a[/ 7{~m#BU\(^3!2o'f¨5z#K]e6W .zk5a:stw.AzY폪bC S%rM֪{\$I_Ǡ*Gj(6dGFQi1Rֿ:26NJkwՉuEzéB]".bZEУDhS;NmMV7\ګs}Nc~dk2gAZm8ѻIy/iԏq&K&fFUdl>2I^lYJ.Tm:#? )R<!Q)\h$gEBo,mcL^6fq8V$iaN }ū[m ** Tn 11\b;,mк`FlU o`8b P0Zf /+:^FGJ4OgfD*@#ࡠ@M1. Y*M,K~G莌)dEzHI־FJ-inYX2w@}, ^[./ zw(*1BgD04 켇74G66.wP`-x $M uKD"^,w 4Y&S">o*s Zw[,i:XGR|˩{Ӳ+kkwc[uƦYM-돚 9esaX-k |~e5)>p{fdBج??Pb!]7ʨRmO:;G'*CqTaV脇GzOfzt%Td8iT_|5(a^Qsn%4q 4 [l*c@At'-pKi|$`(PJ ^?5ѳs.D͊_lՍ;%XWwXT2x_9GW"4*ubٓVi狈SCO0ٵq>$kROJI\cS p xYz D?u^Z7y!*klނSdn攋Q@sMS<8IT;L܃ W6 Fx2 !Y;GtWRԞ~)kdufte|A|>R}6u➰%^@RxA6'̭ sMࣳ ȯs+0؞F3xXY0'HKrԸw#a"=7r*]Ep_!N>n js^>A󤎆~nV!cAmo{To$-`dF+"/ɕ6ڹ"ϚIMbK޶8?q$4mkslȲNdCPDv;SwJBr5(usļ i_aKBbh  r$Y7C2ROwQ?&3N馶Lc6iG-*Q168xR[>(^5U^+z2eXts oھ'ir9Clay"8|ٔKQmM]T ţ_BPfS26l!#&OΨpױa{9,D95[Ĥx[SXd߆OF^G&i#:хI<; A|ɊO>7pYy>H=e}qZ(##HM<<50O| `^GpE?\?_y4V1s Yn[ŰK7JOeom|و':9P0YZƕPL.PY\ Hc&ZŤhkhd49:@\d^֗"o ,zBȲ"_cYɫS?aE;`ߎ(GZEQpsaķZCЃvc?a QE"/oFڄ+ dG)9Fy=]*\ AԲ1͢{ė-$s4ɴtL 'd2 }+ARF w67j(G\XQ2> F5ฏ49?"\S&Bμ\߄kTNqjVd ?;r{'ϐېl1ԾS倄TioͲbs{2TnxPi=&凧'hRw 1Epii̲7&OL!ŋD O@}9ꋾ.@6cUjnêPU} )xJo*(x_m:rqoRsN9j 4du͜/H L=3cX*ܘ7W#h4Vtv3JxxaW}ev޵j_EG "y 7 f=ҕqK t]~TlΣ/E6=b$b]O@jzI+ Lk/_C;.Xf6zfq¹c=|UJMv˭+q@fݔtҘMVx 3G= o<(Z7E} P9K4_G0MǏ\4%:O%2}W_R`~L1'':i Ly1Ïc7 qUOGtWk*_xD@WUT&9GS9'Oo6 cTiyLzA`Ez]`,k%Çb hE)ަZ53Smg_"/}x#´ DEbsd= ܌nҗg d;whJ]c,:20ŮۘRCcf`AơST$63[a%nʈ$_^1u]/voTևe =XX}ͣ) E^ K Vwq7ӨQN82Oyp <Ыhi{e;&{M݆񪅝ў3Bk(Srt){O!1y_WךK\n%K伄]5&8uZ#[t0,HV#P!_&[g\G=]uvRWC>1aYh Slk;ͧN9꓋ ոn NsuE N]\~BʩMĚٓP^fg2Ya+:;B9aQXlH~MB'zk:W;yMŪa9嫱aZvi%E;)9sPnBNT^Tt_8vX@,/y<{Vmd5ܾq% 7F^ nS0ۖGbzRRZՉیr7^ꞌN )MX]6h5$\כtAUt%+EM]k@dx9?# Wn'q2n*b5Opzj)={S.?B=ZrvfVlg7Y XaǴnǛzk$h&~@bO7::8mQ:AQRP݂6>/m'jtÛN aܹ =x%,xI,zS3bPPj]ƘXbSqת*ܷ&XMM1w3B2#@x<0eܸ9lun͕ML2BKR;sM[Qſa4m6pQx";0|oe-&@x1&b#&{XPSq`B0$plqƋ7+;d ⍖H"_c'{N#3_~&xװ~1B2MSs# #VYT3-si.+.o1C:!?r,dW^'ݢ] eƎw)|-*2t'/Ãmbx`qv/1ԉڭ CGx'< .b8[~ؾ lɿ~?}(N;!a&zoF+ *j$(F4 MT! zIܺp7DgQ Ѕ"!i["9NNcŽچk,sU3õGZAr˯\Jl[pypՄ,N">]Ub:p%HPdѯdW`ɂ唆4 \Y4BK57Ez\8/?h 7ClwuNϛzxiA6S޺n3DAxXW 6Cr /Sb9,_BXҬN)`x5fJ';V M;9zYm;_7Ò#`qRѱ6EHw>,1 ehδ >:}w~}VkTѐK|1Wx&7h} rhfstTiqaz 9El LA}{/v5VKgFK5$Ssj;}Fe N?yXn'!٪BIger[Q:3B8E )!s…`l>dK-OϔPLOp.n/YlBZC~R:%~P,aڟ"Ȳyc1md;m6sTվ*p "vnݡڶU삗xm_=߳>,=Ls CC^{}$cάݏhv/EQ9 pP"'"t PX a?`)",/q>1o=CB# VIGSzHzC cqAN^cFf Akx'^l$ yxcRԌb>$eRDh-uοZ\xԞ"fs%ߡu!wTj qffdy;A$8``L޳ȩ5.J96RYW_{MO*p 4!y7\L%.>ҢGfql[&?h 'P%mR1k)oܜ@/wcWzk޸_r8Hl[WnCNm"KsGQ'7NQ/^™DI1⍎rrϑp~sghv"?і;@TgN֝0WڱQ$&\79^G%FƝܪb1A&_}@pVfL9 Vۃ^g}ܧ貞יD.y|wzH yM?@ThucߺFE]9Cn& iäLo3c&Rp_╤Cwey/yh@ vVNF.Q^pG4>|UIz MPy"e`sPqUQe!j$9DY> %s,գ^r1@Oow [?CF]-_P,tkRbƬ"ܫgZ۸/fCxKbwꛎ'18Qta;v&_'1#h?/${ƲP1E1P"u{yAīGR}\^m:SM4'HU)|tᒭ7(53|jN$|I_=\ʆ( iM@)M>#pF]= j4dCנٱqwon?WӭUYnT OρoC E*]aK#͋Nb6`{`r4UjV!gNH҂(;/C-J| P}%Ϭzzǐ{ڠ+?-g; X'̊J=j5>HK^n,nN9l 2k?krAMgH+Xϴd!g5.N_ ӻDqkٹU##~AF`tgFKFiDވT}X=-s"VOf_mA֮2U]dz`ƣ'DpHÄg nnPxU\w޹ckv,D6rtѮc$]7B0{ ݑ~d3`ϔM.o DūwP:l(ףO)[r*5aXW)HRLX Hڼ2N ῗP ڂ)( 3,VD\ zVfQ]~ EwD,-,Wt 1mԫ:iwyL֛ڛsFÁ']T[ҍ4ý%23ϣw6Wyۉ- (zM7.`SaE# /۴"KHjLPig$g@rukl ntNEtC1(ULt#y"*bx=hc!N1yӀ(OoZ ^tYXiPF_7+;ִۜcl|%ULt p. @O 8Ԝ\Ub^Ip`gcm[OD_쪌xg>``\n%z){_;XjEL_0{V#,m=oh (Аk|O e1٩՚F0֚zJ,,S^ ޭ(N=bPg;;%dkoPKc7kzCvN#6{%n p,A 7Um(R;0I2JWNY-d܂#R-3OݸGDu*i6]֬Yش<'Vp'!^{i (a֏ʔ 1BX2;mѱXytM,ڠ'#> i_ h"}ʲ T ts@Ṝ0IB7>X<:]V ,aN@زg%6<]ǔV-}!R3fו x8w8(ō: :촖֊RgBhdlL5@bbvOجNŖ s_!R]rL;բO3D~p@.PT u9[i"Q!;n6`ٍYOW\F-M"ޚTxyp.~Ri5xHf3sz¶KQrEbVAT0&W,3>&' mVCTʞ$)7:ӥ퐄b#kF0xH9_i1*ʘjl ?VR/JQ;E6C"bma5K6/G,GҲ Y (p>{KC£mq}HJ_Uw1Vx5s~74][6A d~[8 7BpnJ5eh`KW^}`\R^`JHeB(XPFIY=ZA/E{b}BOѿQW~A9ca<+VRcJRazk%T{)7/CFTJqZ 8{]C5㊂Pζ@Q͜U:R-D?Kb% wP`)~uȆ0w\2Nݩ iŠBp,O+Ψ$ ^\^$VD$9c$:- Z>x3-=5?RgHM:UpRҡӟQ GK*ZX6Wֲ8|TR*5O6ty.gQp WA\R.ӄ({h7iBlG2c5,ހ8;O1GeeB+W_߻Z,&- 3[fMLPmHvSE?.k*WE=Oqz?JJ ,)Ƣ}7t ?j>Z6}gQFM^SqbRO\=U]xƙ'~쎂L@a ils)IDm90NdW\O-2;0Kc"^ZJ&Y#(1"Vxt,b"'"ޤp&l exZ*?̍79hk>Pը:0>3jx.#JX&&2^!y1.i.)nig^m~.~~oq;xśC"Nx] I6A0f5{ Fx2&R#+ QI7am$Rd |,q~=2%ZJMVod,r49/Lf sl!l|z V^s4(Im HK a+\)І*;z׹+`hɞl>IS$*8qK3M `ҮiuPu5"K aP88AtNōeD武e{P uIvxE'u*WBO0/fVtQ~X9[ƐЈ%;13ǰǪpnE!yʵ#>'[17-T3$럯[)M:5&W;JV?Ȉi?_ncMJԭV47E~ b't.рulo/+~ "t50p!٨#J+CJj̦!ܖ#Mu- {wN.Ws5ص(w"?\EgdUGͫutmPxR[E `1RL$4tH"ݭ#_J˴vCjY:My('\lБ17MCJ{ǃIٜ3ћQ>n+){ !^gz.wȺ4M@J (.eOF@? f );!蓼Kq#{"F8>j<2X!xj]c1f@ NvljQr7LCR@x\u=-r`VSNc7-։EckGpٷuuJZ *u|si 8Jw4U{ַ R|a?ϭvqk}if'3\͇bU2YVΉ@dޅwmk@iqV,sƑirH#@SX.ɦk9X"e! ?M)G0y + K–6aYX ̫b#*4BΥ`OIc-?mm<# G'DmNBhҡF)Bw."q&^jЅH⏦DrtT{&.siabޢ$<Ͼ+lj"2j$?O{ڊ}V|YNCA߯q&^.^X9Ymߣn< Јy]T Lb _\7le>:)ɪ1o`78p8-qH!ꏏ?4t8wJ(8R[g:HX[5jkj@nH&sNOT>i5*a03U -_"_ G;c馷kNA+IˢS:ipa]'VFG8ZB-4`$޿ŮCLgAp7f|xY/,v!v/:$y;7A.H a3nƪcv~~6;&pG@R,__iyĞ8goT], $"WvçM%'1Z9mVvV?ϭu+ք¦] P п\e[Cm}ZvXm$Z\\,y0 7 pY75(-IM![D.oĦD15i+%:6pɞYLHD"bĒk=tjxMR Oh vHNJ0 sO"<~Kn?_ilP,T ThSncBJTs`gz̬1mDn 7*b^(3{#OBMΕ Ⱥg9G肑C;A3yҳ\R+N#Nn=Rި(2xeHj{HYk0d1F۲*.\Pū߭wc"7uկkGȊi͓:%\ÀOO [*  !)0XLs#Y7eo>D.rx˴[ ?Ss~\x `o:ͭ. {;1jjW5[۩Vdv& 9QrĻλk[`-fv{qɿԈjrY;[YU>p@n14sKC4),O3&78C &g0}oVk9x =4+{ڴliݴ^;V;߸!px[7DmRB*ƱII,[%"Ƙff62Z׏25ZTRl:?. b-f'*s~Ƽv{jZa DG jb}ec5v0)ViCϒHYhi*k{.4ofYh}]sO;WrBa|%'*Rg^_}#WP0L~v髙W_')(t,r daݏhJHl+a=o/*aۄ{.*3p)'QW\S*QgrH i]:4ă^Oѿ75M&vYb Z]8`ZoRIb YSk[BPvFj1*<)@_T- N/I3RQB cp1,hXF3.|)FPm%4k N:NBǵ BgP6$o:_TuR7uuآAγ c.~,Z.-*v0Q$tEhp-[[ xRg׃VṶQl#ekYFO2 k;m%6e06Fs;!jz+ Ɩ;R^RA`#dDjOn򀭶&NzEfppY'Tƛ1<C OcZ=u'/ @͏)AQ?&pu#S@n6WsЏĖGXlU`] ~pG# (80 }w.={zrBySg^*Q|=t#R$ca+ "mXgXkpPq>*u lJ'`Zf3I*gɮ#joO 'j-7wsM?fL~Qu>˿n(Mus*i~Y.IhvN<dM ($G%14$Q; U4az饅V^[oS8u -˃V:+JRf.A0 e=6T9wᴦ]ND:Z./:Ll 5p,-JPb ؇K:؝Siፎg%uN8180n&L$Yu;{K8?aaiO06YRդC]q_KhD®:>u#6* I.Ud,N!zvcO0lk̈́Bÿ@J7y3GE0uL _}1|@ N?ƛȍu!? ;P)._f'VS⨧k}֔MQ`SP2h ڶYU&L eh noa~ u;ː[EHқt|*5I7R c$~∮&[e`E>{)xG)0Eׅ%xӡz}7}ҖF4ٞx 6#PH +FCerOz|ⲷr&|n sǯܑy Uu##)ј gnڰ`y lxPpHOzqPkiʗP.9%mS Ns @O% H/e~5|ޱ*e󳃑ʻE/تeݹa\)I^D 4XAk'z062' Gq/#v$C[n21#@ݓŢ!\Ec"3(a'!ǐ<)4n{JvȑK>t V ?siCE)w\] M9۶|FƔwR3oF.24H?͝#)R(q+`9ܳQb鸚d˚GnwX3+7(3 ئ&#P̴ȳ'cE!#0 Qo7rC!pUT:=>%]R3eӃRY/7w)A+2Qțqiww5ma #LcZYTĐ)6I.ۆ&Y;Q[ʿJND9$X_XXˮ;#t>%.Fe?(?dKIuqe`ݽ_!{_jc}jŏ1UL.hja< L[RTWx vW1HX7>SuN o54D T)c*:)vx~eDP%! N!Z~Ӊ,[h^&Wm+g#Ѱ/`n҄T1XϩdOy򎐕"{07Tco^ȳ,Kӥ__cW/k(sԤEƶ T ֤]G2QgJ b5?̝WU]s˩7vKȾ;^)wҽl ihC.zŀ[QOzœ6>qk'ؐJ製U%^u|(M1 4J3&I*nk̹&4H8?]fg2n^)ge cJ+5xO([LlC>&XکQs [}'G+H \RY3mۺI9 8ishйO%UJI| Vs/{-`[42:.#UNEC`B|Vߩy8- HX+EaC'{CE'-'rܕR @S?ZrJɓ?i*W# }Ͳb4c8q, z:hs#WM iR7YjR=>rT:+{ioQ-5-/E)G6*(iPmdcJIxP4[ NvLa6"*s*:'@k~.'|AmXWX{9@}y/!?uklAd-q0U*ϒ%ɘ z ڑ'@,HI eT*"/~.u:5Rڭ߿8DM&y6PZ!>ʻaAwBd([9 1BۧQchWpgNƳBv (-ss턻6([2Z/bǼW@qV@N =޲FՅ?A#7 m$JQG==_Fc7 [McmS"2dz`Exӛ<$kԾ,o} i{(ɇkg93ʙ1[Zfь2IpC'D4HRgڿCqOw)ـ+/mv'B8EЀw>["ɱKsJmW Ve0_7q!E 9Ne0x3T\H(]*(}?^j=+#}`]3,(iH䵖YVO{a11DYOJߖn<슁xu+C 4f\ ;Q*L-4 +N&> 4z=Sw{qMJvail.H;d U#2a" jF`.,ʪ>cwZ(h -؄В/dB~ѮWGBE%|Gʼn@τ4>k-xhce6~VBw!MmȄXᛍ+*UH%@gAӷڋWmLAj(vF~jľ1i_]y0w^0>ºkh`)G=Tڇ0Œ@v`H^*M{N%-3 C0P|%ynbq.lMogi2fޢ/8 M_&K;ޜhIXsEy bd"75Z^P^BEsTsNOOų~IeO|pl"|Tʴh;Vt*{h"i]ɹz+Pc1\N-!=tM#?8MyeE=ΟZblqN>'+!N:7կ ?AiyKE=R#%썯dueo8HWp,*uki1eDּn31rnJ_l Ep!t2uod:/eP<{>,F7L7.ĊPPPR}ˢ:XCo+$&w .W: 58ޙ61bYf Af_ iJ o5P.v,}Ԕ,~+4%%O VSAi?11˧q{[ TJ]Ȧ7G΀FZCZ vf] cx%t6 ڿ2|b+QVi|dF⛤ӔW@Yş-k0ߩ.Ve?bk( ?$˄Lvu:Y~fEOIJ: s. w,fq!ܠ[U߄^ R}K 񻌣[]|ąә\X*)y:}ZESX/JFJ, uGlIzQ@ :MVէ|eyB)&m)mT3q:xne\LsoaΒ*V>?{1@Js[D 2;GYneraG |%~|$!Q{ fSLp\M-Y9[٧-@.׌ :9h崕zRNҮY۶|#);@eUX T oC20P0V59Gtj Qbh^/ZYb$2~;f} ^냶a <9 9gYtD"ĠmQ>i_/dt?d窼m-4_%p4C7uZ¶̜G3S!X)=8|T (-"me`:Rƥ;T's'T4 #<6H&NX՗%hyjy"}GZ9D˩`@ l^rzaߛ&dI~XB8D8W-bz-a ] 7$dtcdVND_"5 KSE}()t>`BwSәFU~g#c]_JѾTɢ$bk0t1 rS,Nq1O;yB|)%-ok1!gJgY*^NTO-LAJ%ӰLjHqŠLhX)i={Ϗk叩4B2/&[nH X~<nݥ++V]PUqťVBk$NLSk$Y֌7ƒ `@a$?bD;ڬ*1{Dn#Jm-=oPfe"ZǠ\r|>)vr~q?\f~lW6TkW+V5;s!}UzHhEJ*2 _ S* KmD|`Gfo¬=Gɂ=#BP0{"w>yg$@Qznwj{hͱ^T u(d{n:xXFmPwt?i,/5f+ٿcTG /Wid= `(zƂ [ G0XVWeÚ?#, _'=sY{Vp%r!ݹviYWD}k5GDB2"RM݇jg(|)"X*4N`ܝk\'\QMK҃Fjqp&dȗLS@ބLb%0 0%h'b߸ާY//rqQ`;vM MD08A[- 2Fl"ضGr ޔuo)3NL4^Wf=JQs +h$N9u[L /QelGgq<; I$ 33֖",&ᦧ9:V 7ESYjhl2/0S&P5~9~3*f;aWṭ0  @ r.,M2ӂtzfüFϔsw(CoO^*o<'+wq3BX=D fIr.8qC,28μ*W@&Q*^* âkr:K2ji-E^oGcd};ĜѽNE <۹y9k3(whC$ƻ#,`.8nH=k-oRlK^H盶 |>Ku#hX擞ВO2yRG N V{+؉]Hjw4I{hA`,\jCm$gH&2Eb45iD4蕞EpvB IM+_I)y: 6W&*i@REstё||&p9_/Nj >*az91;)Gt^o#Q ęEW4SJIp0$~pTR!.D b%IFɻ,TL=^N75u՞Aj 31a~S}C?WZ$K){ ͇+m3]뙸MEz-,{{abRFw0Lq>*e "& ѫ*"MQd<\ fI\B7UV%8q ? X6BX EV@e(2B9ҟl9 x%9;&:Ao#SV:ޱ*ϊ^Kb I !UG2Hkl{م3gz.-_ה;ģ.c9RuɥrځϽDz--q_Fdq7"oF;_{SqꉈO1nfJM,FwTqyZr{BoNh;{(J4Rv&jwA$lFlKLש%q>fimVՓN1wv#2bqd! qk΋)(l>ȭA]3jf=~0Xv œ@ 5~MԾ%hLh?%mA9}UY8Sڍ.Uj)`p)QZuHT )N4gՄf VW*#z L>:. ȫi,p0iH,3t0pWg'}ytt"$(r i؀ pd+TDĤ~ɑ75/"cR0d|"_hU°W3ZYJ ElfPĉE)sWpAu]~C.֌Z!NSz¿1`}b}O%K4 >ԦԝԸ-}HKKHB (hgޫ7|#TM'L=Oɉ=5/Wi^QhKۋ%ܕ8R|g%L{7ULM( -b|1?~q]~-(*tfwh{ !B<MHrY(I+Êq`_j䓆g|@S Dzs'EH&Yxp)M7L_;\z'0XU!9o1+Np],Emf#7Qht9H6L h.nr7`@qd2KZ|蒆dLrѲWO7Zt&)4U3;nG^s $հSx[{,XС;w$D:ȉM6Zv? )*!n7q}=:,'ð&)}*T{XGEĔJ1ߔ;%『:l_c(֠mvҳMS-~wiP3]Qo4'7$6SD6]I:geUbjTVyNVVm:Gkߴ!AjZ+|7H.ZsW|VI=Tlz?9Gs؛ڷ2L̏1^d[e LI{y Ð)myҟDpT0&]ERCZ(34Rt.SȴYAU8~+7S9"3`]'|4B kPMfzMՑUn;%X *ڶQHűLɗ?ݤ0y4?j ^{ @3µ@Aȭz!`zb\5Z@'fW2=e}NUnPjP6Z@FH'=X&lu{V!?Q;=$ES8A31(Ǯ+!{XR[BH#n5ho8pxIGd4g~/ 44<!;"YbTPbvun2b J[ѰIRc )j]Oll7&2).[{JrdF$0sT& i;meH( ,NJ!8`]h{zC#RV(At<Ԛ!{Uh`=2&d%*XazLaDeç͇[KS8e)3}'fۂŁ3I:Kc%GM$*60@x-O7Dd&#$̙[u{+rlt{Hzj4Y橅ufْg#po8PrWy stSs~:t =˰z\z>׶`x̳%'j8;XYG'(dTԱ Y$IQ|ka{/&rQg\qy2FqSmf"0sX`u^#G1ՃR7\~x9DSH鉓lã\928Qap  Hf;in#/n(YiR QOE+>`-/1A7yQw᭖Q j39Bϖ/>wW:{Ts!T&v,>)AWE p*_ǿaƙ&-J2iNg |t}bZ'0r6\OCd`֨vZ&< =$ >?@?`&;K}5,Q>.}l3 /]H$>Tv6gHe5nЊШD~yM CA~ TFnbC *Y#,;ii; ?П%:i }q/]8dK۶:^9~#NqA{ R{~"LE9k7z6G3YVx}f(M+wv4[ rVZPuA8qYJMpGZZ+췡<`NoNsmirEk|\8c]Q0x,N y)o*'&5K scuSDk+g ܇cc,ЉP~8߇&],h I %3)ʼaԁyT5&`fvCut SƒZC%AQH2ZdQ^KqǴIlw $=Zx Ƶ?z~zi~jE}q#Mb]cH'h)dч{+Uyh|إʦpP K v4WoPnzH{7|``GN˨MkϠVY2sC꺐Y D-֔w"2) ׉JAj(S<i?N#^yC(wh@A9t:gAΈ,,IҸeo4s2ġF~y|i J4 +`y\cD YS Tw~=Xd{#١ƚxpA519l`cA :n-ܪ?.vo5O۰ʢ U_3v;Gq in *yDx{Rmi^;W<'[_!"ᷙGɴy1*ե\E+Lf4ho6 %E-cCt݋:E LpPNUs6gEPBM_CfI ^ ,_ Hl*?Q pG*-M};/]].E1Ow Gq‰hC (JXwۈݱlG.s}l5;2oV @TNt[9Y^,(TAB3q  T_7LGK!s>LD~ui.ń7}A  (_509c:)K?P]EVSAqwSUVg877g|,l"}yI>5TdN=U9n|SʓyB:@Z+g6| 'cB֫ cQ]t 7B\}@0mPQc }94Uvetru=:~Q3(=hSqdP<'w-l 坃u(y=S |eY^+30 f5D=UZ'b [P/.Ȭ) KҕUNKQ'ݏSX|wY`Ո²yh: E:moa5Ց\Cdž7N!3=QB謜/Yh:oQ!^sGIf*Z-7v{7e hA\! cQC sڑ~oNގ?R \D+ZU{OD]mIʑ!Ib`o0Hq2#µӫv5bڦUIUMiMypyN]vAW @aCCW[bA'sRi[l`Ya~=?XQwn/2OEPo- ;4/@PGY];H%XP-^, iX6GɽKT6~4Uu63c sL,=eѸD4E-F C'|^L*/lbmh7Yy-h!$/XYW%r7bqbrYjHidf[R Vev3¾q, gw[͝b?cEܯRIuXm ^nեVhkLozG^.)BjI gޥqָ>N(!2]Cy::/^;Ŀ0(XHrϯa[(Ҵd8uir9Io3`LŤ IGE66zCxkX12.95d.؍[Ӕ_Nh70S+U\zJ`E5Ve]1Qv7LP:Ӗ@"S7~3{r1Ř- a7Pz|nk\aւnkrZF做AFp)^K֏* ]א@%DJ;0E?0o]Egodo[ [DwHr:wƽ]Ԉ6BYq\ FEG'PCʎkR$#A "525[tCE&#yeS6IB+J`ھ:aS n:r…DbAf G/=:mڣ@r6t[\bɮ +0Ogi{v\lEx[ 5͊WmfN(3ư/˩(c~dP~>UNDjb\(\F=@t; ^nT BꏢRCJZR$Pn۵ɼ@NS`/L9a^Y),#^i-\P#mю/ !2 "“cR8M&S_GGѱ4J `"S)l*JθfzUx`J4PYmwa$2ߒe^EM1R5'yź@a Kxmx,b6.ؙ6P{nV/Qn54; lt()q>OVz/^x0H0j'K~քpy^.)N u1/ȴ\;\/3M}gFF98)(sUwp{wOH=s.ݼM樠1l?k2^]bP pnt75_w9M˔P.) o<6 ,ESh|14w3弧TK& pr7Gc߇ᮈŔI\ ~M7 >m*phm4bT4_P9rs93"Ѯ'@¤c`UAǯa I7+r_ZTrOY3ZU;z-P˩{E;=4nFMZcsεQeu_lɔJ1wdչW`- 11ٛwu)fhtîHd יc_Ce`Rc54]6:ZQ#{Yc:ASxw ȸ7߭*|> !,!)If-]Պ`I;ebYR*inqn<<\q _@6wFMKUXD6]<MkBfoi.r4`K}p<2'f"n{¾pujWp*A^R8k%ӖUj`[V^[:j]Du @Sdx`FMX -Z*^{ ^ EFg?nGtH5 Qp` +Xb~( ];j%ZUcKv :>r-2Q QMԌ༥w)ޠh*7LMgd8>ިҴ$gBNkbyߨ{:Na1փOn sbF7[tɥsftzbh|4+zA/kYئ k5@k[$4W{FZ0אjTg8L^1 I 0/ ѯVT˷ :Mf`q;YLxr;h! ٯΑ(̌&ԧ%(^Et9-3o+U<5IdU4pۯH$ikҞ!m.??%%D<c̮P}3^󱲮a5jq@ %LDifӠ}jsWxsT | Q7FI3Me30Q#Y7\? BWFD`oP㱌扜@6ˀ@͕v?L> G]t)HI"#,-\4zp7\@[A,(ߐpzvsWm}KQ tE0/ I VJ2'xr";U.T~M <{&Msʎ2rXN7C$1OA["$=΋F\2wHH4_$J2h$ Eʧ~Ui}(|-|?ur4bE~'mJ `UDg`%B-r:(f̰GI5AaZ<]3,y1}jJX@%pR6a4^=Aa%}4#[&j3cؓ4/L'TEG iLX,EcDY%q=[4/6TE|l$8T{mCWt5|/fBv>BTf\85UgPDnd(@ױl8\S:v.IX5&|Q8-G8>Yo7|d JnI cxE /Ye=)S 76p`n2 4OAbd֘N6{x%nU*[vmlj1U(r\LA<Ê$<+!OR,)B-I{ V$dbɓDpu xք&kG(؄_(4=Vl) U%"*o~ l A44dS'`)9TL>Qx[ɾ7cK^N{O5a'vڷ5j뵤W#ҫ&a,giG(V;|j[-yw\qrs)D[n9Va.O36*MwaBSM@u|`v?DH} iE~۞3!SkЊzqpq]wbswGw"K8C͑]٩\9 Ú/-6dWz[n<M{Qjd?hbK$^qm cln[Epdf{3&t *!b,z4wΟ8FLUu㧼S̤>HBQ>#jY}؍"X3X*C'{, ߤt꽔<*#7H w!yGa}2uxz" {M "cLꓚKNYg./~חAWHp/莩a="Xe mt>JXr1lf/d4cKE{zbk o (>,e]ZĐe:N/XsĜ_dqEjEʅ,Ay0پB "wPZB{O#v d4@GE r{Z[Œܿ `S Փ?ШGKwkoh=w%6 Ϛ>b`CrĊV&Q&ZC|>uC̑+^-|`peEǺ7VBLQ,e{ oPc-xd:*)I1]ƍ6Ȫ5Cg8''7%4Ȍ:V-~"5ژ=+zZuE4_7BHvݿH9S*w:'5DND\16 &fc}}?Wݮ?k.5ն{ga༖* sF3Mtc]樲y3l+=LZJDn% [/uPqBAH)rAsNd$a r’&88g tZBFB艋'XO 9˟hKagz]D1Iϛ@[h$H<|HZh \%uxn%֣ b :Bd;[nSש1g~ zMTRVUC wʯn3dބ1I%-tƅszIe³BQ[7յE:Q"mbM>+TЅ@1rQo>`(^ߝnB8m:EHQ)XP41t_A;30)T*lx $== * `rH0a,s &Tsb,ؽ7yDQݘX)E  6' (Κ*Zq藀wݒEw }Rjm=Fge\e,8wAA%e Bc#E;\̇w8CT'CrrTAtcaUmj>AA[K:{( 5sӆ"_bebB;}ZdD`/+ T-:1 3:,{h>]͐bl*/{HZP&eNe1]{?ۦsWMƌy[m 22{/;HiҮ~Uo3dth[a`V[@ZÕr#` /9Rtn+k?&*E;f+|>:pCMSd<% _e{O>ցW{ߨ9E!ɁJuܲNh@Z^IjSdu[i{M7HoȻi3sz|-aBsF͛-SJٓA nY +MýfcRb!s"_8HCݍT YH<*D˗iA^'&6s.T͕\v)CLMa8RF~̱{oG<$< R9l4%ULo.$5 .|k}6xm:}+8~jhywkd)+lN/UѤh*c*XfDX xD Ǿa# 7 Ӹ1㎬p90pyO4m.<okF ŚZ ׃E(gй]|(qD0W4Rng_!'E8񸊄\#XʴP3v.U<ɌY6 !PI5:iO XBQّ`UEM&H3s76vrɃWG:5+Cb\FNɱYȥRv SpϻgRpa!9ǞnH祍pF|/L(n:rϪj(+@*LQ:T!=>$wdpw^n_egEʘj1{Ma18+-- |M'tfz?{))Zo8\DJ&lg`o|`]|m;7~G,BoDq?`[e K܍|k g` sPƪn?! 8B)p rF+ml !,NNݢu}5jzKOH6s^o!yy㝕/ b*m”Ue>`ƶdC;x[W!.5,ީv5 qiնp]/%Yb)Ep96KY Ձ]~HI՗1 {k}m:8?=7}jN/@hV)p+v@݃sjN Q:5փ1*vҳ}$XN[x:OzH,:MFfZxx{GiyNQz; 3l(,AtՆ B7R쌯pP9={+./e59do͍uy+@4~Abc05fT`S=PNw,43ʕ/0}-8:?<{-4hM#hr/:6J6"`Ђ6Mnc‰WoR-Tu|V,b]<1\oIϚy|0bځ|-,ȏ?~BL5&{꽬D o*y;5!4:b}5- b/{""[\{l`n*G>蕣hh *|L;Tk"9\`l0&gL[ؙ+@VZ,my%QYygFvWXBx-^ܾ͐_j50M,:Q{6|xWv0x+Em`1$iN auQ[ۭmw+V~-hwrͦM);y!LmUne l_lre95Lp@tS~+1&jឲ(C> @qP 9SJ^)CTWhW((`z$lE *{ѤV~xs ,ˮ-} ~S"m k` qsX|M8/GaKS̟!_{JW.Hq2D0]#`[" TvoJVbyE8QEETx]gp0Oƺ`Dz|AEU<&Ɉ!_d@bv=GvoGLl~ח/d_l=96#ɛң\:Cx9nO!:k% L;z_iyvҘ*蹼Q! ݃$(g1NA{xC5 uBZ)μEKYoӃ>S[IP@#0`3wO֤_Srj'u׸EdhqۈAYTjO3$-麯$=? @'%Xats66g0:֒ůƕToV#qw^B%ͺKBŒ(s:aF]0jc#e9|6/>R.\z(?9;V3rCؓܒhi;5lB?Vћ|j?H &fݤq=ȲC~ 8YuSj~Wί`Ȓ#`Rdpc(G4_3zS]EӑImCj ˶+MSnV9qHi?I7brLF'nDvK'ߩpV BA0[Ys̎)Jx־c]67=Y2@th;AwPMy6@a=m:m)-AF Y\b;EhD[Tv8kUMNYtlZz<~YjMJ>2׼[35l8moa{ːT N\Y1q)0=a?s+}8&0_@Xtd6KkHNgu}$!].;΍%D0lđ l&G<od*Q&mE)R6:?^'2Yd'a&qؗM.G \#^䇆O|n0 [ h L*v$Nӗx 'uPVxMya\uH`?붙!;u*1k xm5)[ϻqW'*d:)h{[·_e|YAq[zk28;;?9rZ![ 1~uNJ - "&7PY7a o݁wV  $h 51VJas6 l;Q#gF/?Ce`E*e; ô~Mq֋Z-Bx5چbyW(%hڽpF H+\ WGXߜ' +;蕨n>:rǣ$"k2 ߑpgި)bH+t,9kyH҅} [Dlp"݇KsB[8DQQaﺚ#I0@ *6 =  o%j7Q,rW)B*#2f|f鬛R|VZE鱕BCn"McDC*-P}xn f`? Յϡj:"W^=d>Ey+Ff}mG!l!VZ7B$&:]mFZZjou ܑԠ(lx=!F,"j6 .^QןVpK-W3##5ҏbPifH_\<%™UЈ|*)"vP@p73L'Ul}X|j,B؎U/}ǹGǸ@vsu^jmla5?ɣ8*;2eD"oh+3 ۆ #D%k;AgޟHY6|J=WФFOGs~l 2lVoG*^69_/q=sMb3^,c;/\۲Z-|8ie]yd5ތ!e8 ֔GEEUY27אD5|32d-G_i UbIRrW0k&nbKj٬[9q>5xtM!z<i(Hd >sٲPtCmN oљZ-)i<^3_ʮ8 HsPAƈnl`拪Ym[һmr|q32ig͊`qבxsMiyMoKWF-hYp*BSNFotU{6. 'WK2pB8tMk Tpߪ|,t\k^])S?Z~ Dc.!D8Bx̛IXD8瞢c7,Ž ;aEq̤ f'sP>M$iBʶ8)zY*L/yB,-_2%ʋx:L}~Xwp#˘*cQ*ԶjGE)7C92p%W'C.?:/FLzvFJ>BN=V#U5ʟ Z AKX"QD rFFizc9,*yٌ}b`> XVv@g.tjn˛ߞWqM{\'B%g)JhêisYfȧ 20YVR+^k;U4制f0|'߱../91UY7M^c( Wf vgo.ZXAag:b%g~\Y5Z@k⮉pÏX:%~LLPi ىƗ]1Į&{moBYz{93h^#7%J>(? 'H`mZ)crFg IwI?wKc}o9G S6ISaFPu6аǡ?4 O~P-x{"X.Vu|*y6{uI*N)7CJڈ=7)M9;@ƲJw/B6#5W{Yăs̸5ĄCE&R'ٷS4Kld>] 6Fˆ=CPV7 2XIC{x8/t&&hU;Á^^7̗2J.P2Đ)>M]BKaFR.6!4 6)tF rpƙ88s*ht"W E4OD/b#> ȥOT ID=n&l*l0ilQ`NIG$쐨Lws;ً-q`oܔ1b!˴`x (/^z!v6i퀹 MVo%b }LlDk$.%ǻ>0cG&.cju߮X nDߪ(υъZEt 2s>709Dp~n&:⇲ÿ1jno/񮁒O3:2{=G8A;HMjDLAE6Y 1''÷% jdW_Gϯ{ٺ6 ]׭5|W C)|IM\L 4lMOa\ I8 U*IA0* <nSz.hT0ZlTwN>ʾ'+43+Ey<"CO}uO׍"J#kЙ`ݕ|&'3\vP| k9᳆Vr)fXBkh#ڔFO7+kJ:q4!$>_\.vn!K6^Y$A?f,*i;ڤg,tQ6ӀAu[Н".Bek/\a,U+x5TUIWS3pt 薭>BՏG0Wk9ߒGL_;/ea+3?IJPLF; .Fs1KF+v5!gܜԩ%Wkwį?'\ܯ: 5vO~Ps^'Sk.2 #;8c+hZv-yU)6T (EY.HZO%ƍ (uY6Ok5eK.qZQT=`/q ,wl%0A)|6ĻlȕMRt2®HY;b8)E 3<@hsFRՊfy'CK#M0[MާU:g-O=Ew=9H^{BLdh~c]N 1eXPMN*`p3_X"{ 7 XrE)G>*H9TbI MRg^|-Ghiom_i6i]?4nm@ #5 N9/l瓪b~z.M[Iڳ[^ 3μjPX9>|HVoӮ+A b\!8]WRn{.QJa6RêfOm2DM*Oa4vo?E0Iǵ- p?GD~EkyւU%׏7}~0pin^=+(kRwtλ:]Xi_fe֖6x^ jp/rB "'fF#g%MF`Ҫ;Ϳ (=|u-tb{$5+(Q^V}cB~jbZjQL0:VnKv j ]QEb=͈BDBgtc^nBfo Яm1]EfwÍ_Ӄ.]Y3/xep_?f iQꞘ^-ߊ.Sr%aZ=$/wQ [࡬rtSU5V?Rc^v|zL-d|&΀AkDP*)4Rq7l.ʓkv yg 0lA\ }z?TKΔ}Ĺ%f\9dL>%( .t=" eqw5.g[R&VQd,^@WEn:s0WIC.ݛjlFl0o#Vw-ȷ=N[z^֪Nebu3 uZFQ|JfO+`W~Rƛ %޶V ȏI0Yف?[U]Eflr8`a+ҒhgLƊ8ׁ(.>t-O>0;Q^RI 28FۡC"(F~E ~]*,Mbqq,DO'+"Ds*?H+9 0$Fr+Ad:Qw?\ُlTdpN8=?S$'`"v\9<@ CLj'[ԏ=Y.6No~BnM[te; .[0 T0g˸v`ramN>*'AV?m]p`5g왍l?g/1Y|7x P2f *ouBQ;:Mb˦zg4?{ctTAn]ӎ. wB^E]@΃ES,aܑ4?$J+A˪; ܥޮZt|jO |sd;#_/ euxjܫ,l#$?HoݔJl v[?2_+t*(H> s s=xĘhzIXi %ktdr[Z{"6$HG~܄kn%AXOw\"įD"׊a<9ʔ=ޘsq{VA/}*DUt,KS0]\tcuCT!}p0'@gFe'x`̧η@]jI+ɑ-咧JdZ42 UӪ*)D/kSv2Ip }3;Z#@_0ӼBџ#^y[ Us c :*M ;VA(6U| vP_,ݫN J ǺI%XP'ǐK9n鎵6NfV> Mb_و/}Oܡ0Fpg}kX H`|- U| AG`m ufXBp!,Cy%+#=7יK+Sӌ h?q^ [GB,\!ꗋ@ME}E |j\8_pGw޿\ bf ~ETjaB4 }WmFOD+$<#H{JU/xe&h490Gi(NsA^R>QRy~k'Fa?ߨva%1D9imK:An4m5LAi0UGMz?X apYAL$/Bjjr;JѻAr5zǜ&"(i2U&RZoK>J@zVr 'jdOr7QQQ5W@!`r ņí0(O"D|6 ; ۍ'if],o)| pi&PVHkfM!Hk/~BD}TCd#;@6OR,'h uI(XN;酢J~MbrՄ! ied!YʷQ'-nI tAe" )eg5nC1o!.ׅhWfCl5SJNt"#ʠst#65D%b6)G+,X-TnQHjLM-o\2lY_W>T[8A!_5O5},!'k<_@08޴̨(Xpxk>ͅCxDP#1kfNP&pg[<(kgz= 3p%1n}(YM(di0I[󹶸σ|w K+x(ƃS0RwuO )wI8PUp{6%Z0S`Dt,!^NɰбV:t!e?L!:Vӫ&b Udl˪Fvx_;"Q4-NR`nceyȊѭvx:vm$ThU d`@[F?s5C?50\u;kSFӇ?K>=;żׯ|g Jϫ̎,줨}^" 2Aϋ mOP,=賈I%d-Gޭn۱l4k:y%>S֛½@p:[k,LxQh@$rV/,^>\0cnt'r?B ZNʌFgw¸lS {dkk&C7ke&?>QRŰApQX>1?3Bh_\nLk/f6H  kٺtF ԲҊk'b8yvNL4\u&!tkoT __hU˫oaPs243NtLhY悴DPVL.>lFs|"+$E nKR`0!m qFV3*xMCjTzOODLw=o勥[t_.*.Uc=CuԊXr;W\ Lρs?RCpIR ųf,y`u QdWU"*p+%OBI˹R w^-mE8ӕ1+ެ$R26(sδKة6iߋô+^L퐲@M\ByI3lAu{ oyb}er f<|C I9ged1z4/^VY?'XH 9c6$M4\)7@kIe淅Q;!sdAFM1x۴aғD$ߋX;ô}Ёl#  礖^[7b'-A(=8{N8ܼ*u J|M1?^S]6 <呪fiw Tt>}+zkFKWb^\̀E|[8:skcTU|%lj{lc K:q`8Cڧb@3y/UH͕7מ< }54A~š粴ay8Rk%/99&َMS$ @Xx ˩BQ)Qյd>e&ʿ`BY $w=4d k\ﳏ$cMA+"[r4}2TiP?%ߢ*Б5mUSPp? Ъ*[&ڊvcFDcxꥏ"uTݡHX't[1:+~;$!#9aQۇ0HB_8-Kva#Xu=m,{82Prh#b%LgCtZ}IὪQ;K,sƼ٢|f\D^?"oxO9%핟JTVA&WRaSi*0f[/d2@=h߮t0RtU톺LP*5PF0ENV3­63|/o;(MD{3 Ubg N V 3a*YDZNNr o5|, Cn&xDqм~;>:fp-lAZR7ۃ&4LF!Z4v`%T=rl}w!c :V\9ɏ\ۺ Ln@&\A?^~`qaO: F$6jGLEp7=3ߡΝ?[^Rq^qML2+ 8= tvM#R_y1Lruݼ1[>o8_4=82-%5̬ S`PD^ duEM/jn:c C*ws}iRam9;kFD埯ȑT"?Mtk'Hi5ȝDX]fK =Ji_ˇR q@s~x&ˁ:`sMGEb[~mOL2!qKKʃdQx{JE Ml9~r(FsPf:C+Ù>Ze4wO'y0TДF 3|~: D#Ih Ӷ0EunX`jEEn.&rV07ɹiҫx6ZQ^'z'xO9<(QTɊq&L:Pɉ]4BUo(!'(nP0>.lO8]{zp {>n+NNmS%?.5dm<$KXL`7ku7LT1(䷃8*x8ʼnFe-aQ_(80YE9JMβ ΐWqz޳ßV 09 1'}T><21iHl^.E\ ⹝:<$сODݳs\?۴Lު,G6+\p޾:֊e%57 D4j<!O6y:"Bܶ ~Rnzi|̾[fj^ ݫ; >TƠhE,uﬖQOz?8TY>Ȍļx$Y1N%]=Z^Z* +L|5o%^!2WGh*Lj'm8gU]_h >kh*)yD~?2%D1,ңoŀ W]1g TL<:*#w-k`cXצW9h1%đ"icuOׇs|jfU}*f0V23> It59!OPHCNђ )scuA`O8u­=gd9Xsx&(ND{o]eИU-)رm֜+o(A'I -wȧ:-,Z{h(aR#9}@*Q5SE k4* uZE&xbon׏R |拉62>BFBh>'1⑮j ((ߪOf7lxt4 Mϫ@*61zN QmY R!xOV*r@Ck8L-%.6=l%T6- 缃u,5 -n-2w;nyaѷd856[](o),.3XH] FDSMNZ6hH%j!4v>4o"Ìޟ%0odxgXdDžNu=0ę(Y2 ۄukl\Z;*x<*Coiwgdș F!ܨZshCGH~&_@vA9srҸX;-XZP /4,;(\Xb)Q2h*8ۭH +\nF:AXv@h‹xuneu`,-(,_ʺ>4cDxg9(ZY6C$ٓm$ C=k/nnBLkXydmm3"!VQ*=QcYlM) ٳg8HS|}]L~͉1IFQƓIvcMI.PR+ 6W8g@Ȃ=sxDǎ5o[$*\WbLz8Z@Y,̅aW_ZW\{'e3Wtd}9Tu0כ{SĹ4r1&^{!.X3g^e. ~'`W} eqaM2ظxG~QFF'!ӓ 8/x\|#2-:Qq5l?Aa 8)n(::Sm;3C4# (AoaZ۠ j69˸ׅ-UGN1-"d{-2ԑ,Nm$"&,Ac:uw!bTG]b N_2ej>Ħ͙q(Ŝ8M)BVoP6)^AGd7D%|&Fk%?{q`v7 &ΕBoCS<doU gb L+V&(fOfՈUG̈o`g3ٻztL9L;۝KG>C.y%XJ{p+~'2E鉜* {|AASEew#M~iv]l :HECVx)|6Dm!dAΕ}L#:Wi | c]Y|~` 征KkK `O?) Aĕ^j=Ù4Clxq;sy^(dO cۘIa"L:v&KBm!3<䁍r @o:mb-32mG1u6hb@PzBT.fі6k ;R9Kk̾ ̒: yLw۫#(|xB z6(R_\`CRɠn)!}Q,Hx KdC֡r6zj0}wP:B!Q6+n̋>R31RҊFDtI.TGacUPIo\5?&11;5)*C;fh)|h\L,1u:SvHǍ`([ Ğř ЯʴEl|spԉCHk$y : |L_~seCKS~OHWϬ-"*$bIU!q =@ڤ$]Hd@I\$uWP7ߴB&0H7 (j P<7:F}1JS(:OMl]G8H%!?@4w6/|,1msPF},=G|hGS."t!#; -&^ %403ˆIfJC"Ne0BN`)h:U=?6?efI_£-Asho tXEJ 8~GbvDoGZ̩fO<W+©-ð*O)]IAC2I5'߾ܞGBu$*.v@JqCqx3ɰ7F ~vʄ|JDef"n$P59EcQ,Cf @ߨ.B]Xyh^ F  'tE8P_(Ǐ/ 0_lzwi۷m蚷ېKf qf۰o S9  v0d w"GozQzg ҄ B5,H>m?ût ܚhr(1@t:y{H@w`N Ɉ瞌k/8|ok 9D1dmcS<3sJ^xEZ6ƯN|. Vx6kŨ +BW+o'1Fb%_^|\UR_MvT8lvu*[BUA\NԫR$:qU@Tm* "vƜ*3jW:Dȯ܌0m`~qROVwRP <3WE/W^ib,O.N=QꭨSY94 ڇ`e >o"s-VpW*/uExXC'S}?.Nx`d8;!ՏHtEس]1Pw|L{zfܫ""S$7={.cJzXm{CTF{.`$v7Ԫ$ JpyDA'`Kyfn ah8Ydư!a,8wC_qLRlC1Yz⛏G;0vXSJÍн줵hmx]eӼI{`$* ݕQҠ'yi]'9l;;YZKw`oE_a2qH$TJ=ub,.*=/ޡeb!hߚ| wQYHx'hsLisfUN4IW<"uOeCGtKi5eP;sd7B\G Ed( Ќ%6uKg`\Y2 Njoi~QUxb?Fh+tU3HiŃq˅Z /BФ0U<+TkG>[]8i-H} 0h|٠1kw[xFx 0y@t)ɾN .~6 eybG`6'‰cn:$P.i `PQ3#m(H s =u0_u#B3i^ s Q(~y~Pm!\!{fsV2[~mxͺi}pB;uf4(}]BqϧԲ AS n2z-u>-QY#ԙUȳ&}297 Ƚ60+`L\]g&/D=5zeY{sߵ=4u냡x'@!u21ܳ٩[!#ȣ_ٴ<2ȯ (;Վ/$'Hk/esw?sL*RHB9+0$#l'f'$LGP={2Lpo"ȣ`H-/!#;aۇg1܉HKsA3:2ʞ*ڀvyd,QmmF,Pݝx@􊸂z kcR"hF%z;ovURzX ^~:ZHh:2%wYbZGD4vC^EN30Ht X]Tg3ehUy&2]F6$uPKK$^PnZ忳7VՍo%†WIACt?a,@2,"H۽/ſ!dkeײ#&ܹ]3 W x^Ml1x;՘%$M.beMk XAm ' CP_U!I}pf'ȈP9hJdww &Waˠ)>P4džkFD oibs7r"Iu0 rNI^ |wHyv?+Y[7|W, ["c $r m4n6.GWu(ra#`?/< at+wM=qG..vH~f+چwK-. Rʔh::Ꜭ̬F8>/j '0Vt/&'#g]X%i[7PhCB8/8bțrO窉[{`X0dwLPKg#K{k[:EdI{Pj樸)Ђ͂#%ھy`S0/|G F/NƼHod×'ù>ϙ?O2iZnO e>e{kSM%{NL.q <\ObP m %['w I$Б<~ɞWd+#&HlۂE$M-A>$ >w0tX [I*qzZ{uɝPHtѵP_[0w(,5BNR,c>F}]2˒-`B`,qNQGdֵ$h~J|3= ˊmlz'f.Ӫ%*WtDJsN7Kܥ_&[Fo%gD ?'sףg{' AeY-*[tU+G_CPU>l%`\+vK-mnP742?u4 !zv?Qdz3$8-EWF]zPިV_E9@P#8ɃoUcm2*]Wt~p΅ю<5/[&-8f½G{6k W82DvOhc6V=ANB%] bV5{'=^& =Q9XM!JAe'[ut2a,Xr䀘\ШĐk*l7y[fF2c" ⓑaaM5GlvfPh6QW-8R5Hk1s:ɷɶ-ʅ~`D;ʅ5AV$ Ņߋ dFoduAXj'PIw\XJo ZoE%}T>ܻDIdÏNu6lwh)_FԄGs щD[`~7nLVrW"hggƢ1={3'`#{b/D[g^ckn7^_zC8O ?Dș|=ttp=/~zՊA 2sm֓i%T$KM(LzovD>sf wA,:0T$Z)q$F# hN^>1Bv3JivhWxYztdv,n(Uw,tİF9Lk@|D8ncVe{ 9.)"^261-HƱcp#£t|*a]vҪ߫T}yoIw1=)[lH䓤cLm^,gœSɗxeg7P_wv=`cn/'sQ#=(W~pɎjĠTўl a~!YIu_Vzt(H&rr<4df\mӲ"e,'=\TKJ "2Eii80gV ħ@\]P]LT(̬#p9!N/զ)l4 ޮ/+"ϓCShRt)ҵ|%]#5T5C/Q"PҼ&k %u$wz65ۀR(%M&"Lm;T yؐ)GR `HO:l&m㿽xVI XHT Y*A `3h KUįd/[t;fXgw2C;~m5S`e{4OHGpKgl͗7ۿ0W9^z8)^FcSt|`Oph*%p{s+bP/ךT`Z8FEI0zA9ԥ#*ٔmBHّ -~tDhث[ 7ڽBiVz ˈ5 ;q#ap E@9¤v2Q޸T qIJ8D<V<Ӌ"~17ͽָfuadI*/7$[u 5C㳵k[)gH^b ސߑM^ X鋹,—`UM'#:̇˼ uTr'5"Oqk`jA߫^DGTyj?Oip{Hz hl{VZ>_wڊ.ɗ1h=#.R#hskYt'J!lHfYj8cLOQϳ T `*ǴkVhUysJB_Rײ@־nT|ȯł"F8Z^2&hq;՛ Va]\aШJ譌X \\qEu y[~;˼> vG`6F*Bv#Co٠拿+4`ЎjB$3JBG!N&DYk@qs j_Hzr W)(ɿ\j( Ջ,wbmJ1}Di6 QZp}/~ϐk`cKܰMv*(qOX."؆4TIu #AWd`5ʂ YAmΕϑˮhJ6}/w5n t<@Z§-#A/L,N1*Nb_V2FohV}U3 h0؇1|[BO\M xLO֣_1%ͥhmжz.kFSV`(cJ?n;O`;Vzg 3nT4Bp$RTx겸Ls#m MJOy Y4 DWmqK$P^=<_hEH~]wY2YD)ێM5]aD#pd`9;+EL<*2QIJbTb(c&ru>>6~ }]]e\#Yd^e[[b5M?̿wc)+w!8X좍Ai4 C1+ZT죄Mߖ["koL#'iH@"Z%Mcb-a~xt0v:7兑|jѧmY KG^Z Aߖ1('(/?LC%.nܨFk4J4)Ŗy`*To R8(bzIT gĴP y6f=kyQR5y H}WR B |.d[442H t!w un-j}8h"E,--RztL43AE 5~ CICx1K=V}`+ 5R]\$RV l5r#FFU cY@V-x]ax`':b%nkdKe2Oga̸WHxEx\>_mYt^K-~B܎l?GmSxa~j_u͙9L1E p5,Z)Ͳq8/)^}"֊R4c^ۋ]/*tĮ""4r#wޢ}^94ѥ4otgRmG' ߞIɉg7n-p Q|U.fVFüPBb]o LNE^++C 6&݄Px-&mzİda-+J TBKQΟ#."h . fRɹg(+ =k.IG s‹^RGMNT[ 8rc@4HTÂb藞6mX* uM 1 3T yٞAdwZTczw) rV%wC(S58s,A$t[v>:LHcf{[1~b !XIܙ$i4,ۓrk>)ߺLhxѐ>I#Vs\N//U8'g6DBǬ74}=!tb!k{:HG}Fh>IS7RueM#" h{ijƏ &Ju)x]z^gR/2WL{dD,ONR[{1Nj.s~~ m""s{UKc1}S%_dN&؄C@˜n (j,(ODAd+ffAGϒpK2YE[#E3vAM=Z{Yj$>YDvX@ C*{rĵÿv *|>bGl-._0 V-8`g\7;1Dqf8m\D` aweR˜ɿVoZW(XlPs) 8xGT\̞ $82<`>a&,R@l˧_iADDApe [=Wж}>5&w DizCf3$XԻԣ|CiS‡f)$f MWGkUPxasF!7>af*n`&%}@<@kE _.(O X\n<^njde8ί{ D CLR8'l@P.EbE\ s[>ѓ>q'@.;}SR^쇪6a8&FiÂrE X:LSW@gΏ4RnpH}Q|>p?лW1~93뽰P'X986y^) Fٔ%"}?I7û:IW/̈gOl?SӱLb|N]k,]`Z=?t*e=R=dc/29, OT.Ȉ񽽜F,zs>kȹ|ȰA`XnNN_MB+_ZR.ӷig}g#E"0c)}+cH.W_>OBuz-:u+- Ԁ.f]1URm4]ңASvQeF@i+5RmT~̋I`#oM˨:v"6A(1%kx_AvMū"Xvմ̊ s @$\˖ կ sAlu7ܙϛޤ|wTADm{%NHpyO`RtӺ_5tzTFdq)l/Ĥfє/V˅{},O`ڗ (1 pzYT@*^)13Zb4D ,~ЯjHN@ߗUC`ܝ¸d-!L?|9# W/Kܪxv| 32_[U\GΈ_Qא;I"XںE5n! $/:,S|L? ٻ.mRCgnUZE ]4gi^spIYNb ;OFs%!EsU! ʧc#9qj6BucV4[tiQ$w9yo=܎u(%)B;0roC"]*0C Iv{KtZ@W0:mW;vOXm\ (48Ax&e"E]cHP ^dC'(J'qyn?="ïGnS –">wNcx{5;_T i-9+4:^Xĝqei7ʁ[YBTP%_ , *&_lP|OيxtATA$ZgwڂLw5eZ$b W*&)W[n&@hҙ=s^ 8]L8;#]ryݝ$ {!qFk7$bxHi3Q`wL#{s%(2XَZK]7 1MbY K.6!=+m//FbRYיˢ “˙.de+[4bQD#_A}nj;|0qmE^1Lӕ|nH'_E4k}+'*Jg2_ՔT_b1A %1BL5P!e;=T44 y~YG_Xci[&.{y)jc.7&!pʑ\DZ 񕀡ʍSmښ]C;O0݃O"B0fSη0PQ"1<+-=A֙͟V}rBFlC!VA%+W\_S0Ι [8(tKcQȼ]s,>ȵw_zMV{D+ Ԃ G[21A2WJq}cM x.=_LcrV,8n%ѝ.z-0RwO,~.S{h'`ݏI6"[>]r M>ɑdڑ> 'OHݍǮ) 2zfy]|c,"siL*yX#S@†5LMq4&^F dc!=נ$Ie+ƚԈwB{hC53ݖbņsQ*p,c㚢ߘl?:WՄ&S7 (z:1qE3MSCbkDeRfy٫=~OeiG<[dW5f5{ 'a[{H~Iq 9itrulh e G=$KZ1dXC jCi%Qњ1k/7ZE~ dתU(,C/k=A8eRyG$AV{ f1ߵ+j P+ZT4 Zdc 遄=3 Ѻ+!rV&^XʇaD"/# q*f'j*Ws,Jߣڣ:QJ : va=6tdZ<ǥRNst`L-N~2ۅJJYRrԤt?T9NSNe r&EH\$@{2$A2&)--ICtyy̞$F(= gr)gו_(NWfZ`]yK)6g)3sqhԞur Ww* ~c|+P"yDj_rזvHcR ;\L'坼ɳ_;#]gRE)Dg{ 4<F6澘vrϐ P10.V"eu[ gnIHԮό{o~_?)s4I5{)|bELkrU!,e>nZLBT;wIJL?T<  P\ ^vh'{(B]+9Mv?]agɶXeQ153͓v{I.o$z!Uc+gAg sK*2 {UkxU\,~AXmWPwMցO^ #C"-):PM 킔% oT[tP$zI@R< u&EO~U`X: S~ 8&k1a$6s.1OGPCMGt`8i;݊a!352w\Vz Fsv<))~mUuv3Oa8q'7 D1ΊC2ci$hgzb\)o?ًa2R#NΰSo\>Mab&ig-J>'šÆH 6"\dIՎ;Q$OS34!rlr{[Ԟ]@XGC&yk1;_V?6vmJGl7i}Wu ?ð:=/@x0p4#enÕ*a&VرeǶ, E]aL9Fϳ»,uw=C/R#-8Rx7Z Ma2U!äX޵"`''a2t1B9AaFMe>`]nدոyۢ^ҊJ_oySXAi%2H=Mһd kX  {2qv3egǙ%;H`5ߍ,ط8ڰtdn /_Q\j'*r>w?hks j ,~l&ݸ{`ARaf6"SI=M `ֆQ\3dfĮK r4Bn0"Z1r:njPp&ݑD> kؒ;X`Q nˮ9pu%H{%3F/n`]@(1dڅn-}lYg*{.gT*$OhKyFi8yH0e#KKccԁ8BH+08nfV:PN}+붪HXL5nѢZSJDidfo% ZUN՟ezy:kTBBt!.ltm2T #Y ^>Am$2v"'ZP)ĨO܊ZLuG#&Qk 8Wr\~uIT=?Cj㛱YFgӝp e"u6>|R99}0yqxhReƨrr~q݇<$F[# ;r1jX_Hj#Z#gŖPhsi<3B j`ZOU?8)|OQE [PN fuoxTF;8;G?\Y+PrS[K4%tFv^Vix%l_?g鍠;_on]S-Tg[6ϪY)/(؍!͒_;c@}p:DsIw_pZ~ˋEjvIą2t \VTwY;>M58 ^f4l寕$:4]NZǪi knr*442Ʉ7Bp1!AFDóp^zjU:G03qp3J?MA0`D"!Vt8<]蘶wD>U<5=\rʶ%c4?ѓ2Fw}P0|]"-Zx-dz"sK-Y#>QYѓ&=܁6é;|WU̯he@ݦԸ딃}?m`墏S CzuE8sLFkN~2eko@v^ ?Ckr̞fB% ⿘]+OoEV2̷F3o e"MP7g(eg!*զApI~a*|$iUtMPؗ8+|ni2_hv=0Dp^?_5VPsN. ~iDlI^@$]l},ZWJ#$8kOUx֕x{SwTWʮU#(HHl@F+m!Mc Y+ߎWㇿcS}?}!I++xet.U ]݌NQG 8,u~7QOTPb\{7PO|Э` j Oi_A61uK$p]9e%b$4*0C9 3_)4ymݰE$|&6i)KfFr6߀KgyJE؜03߮<=Rfz { xO1Z_dt^d̂_"HzU',*zhm$}Y*C,c!G&+O8Yg)@uf@`o8DYIZ=wֵ:Cpdn|غ8$N{!&M$l?R!N~fAw%~W TO!3.1TZ <PnnWLbJ/?r]QeϞ5о;G(@!MdE.ȷIX0JJ,\ޙ$e|m~H(`\\τ ;pnɷe ס(sklbnUQQ:aujC I䌊_YEX'5`V8ܠLsy^KAtP)r)5{@ja #' UGmĚidrOYKV_43QqL + IqL a2^זe+&fGҙ[#)LF ?lȟ ".,J^!xx rp$K:bS +ϿDfu&AÚ"p-g7TP k4X#ptj3*N1=7x`1-țF3(0Ibqx{<.?FÒ^H*d<~M3H:k7 ¸'l&IC ђ|ʑ&^WmeI\vUA/)\pǐ{(߿OʁRYQ'NE ƻ=2}U'?å\y *T'{w-<|aC@C̖ ?1AN[:6-ƶ9?`Z-3c\ bbF4:ٙwHKj1}xLvs|זs81ը"B` E ؃W|LnS`035rMv}1$y$7<=ho"Hl;4֑f3ߑ}_z ,7f_u l."ks|*҃ 7?ÌНy.K貛c?qπ'W{:Ik]1s،OCgoO{u &e>*}J_PNR '1Q>˺oAEh L"cBY 睴t1-~"٫UP#z"Rqx/RNeTv73f+yIhm8'5ZW5aKjm6&3.|2lHެ铃x4S -2a30mUL(Z ($sxr@BWʼn@Grk Zԍ{JUI^8K_#BPPapxq0OWĕDڒ{XsZ-iAZn)fthqw6?uΰsogB=n[򾠉!Mq?{Re 1 6$E)1o։m)2'DsvGCʼnP;\1GªHDމd f)] vtݠD2==ax`NKX H7%&}ܰf Xs9+*=A mze>["FNGRgcMEԨ {tcx68rR∡pu{N<%p/9A(^q*" uI)󊞳m窯d Fƒ?JtpTp~u:Bpef~bJM91Um?{<ׂG ;>8Ǵ%S:MOɚH<$}fHtMYsWdR ;yd0SeAU4x>)F"-rl`*A!1ɹ۵0UXHڄߍ4sM $ɒ[ ^w^wHxmUHm5F!"56dk.H2 WnɒI^LoIb.])0+{r[ݭ4le5`|j.>S/-8#Y+Rqtֱ>%<>YJ%YYBZPlV%{"x[iML_F51iTIS N0b[AYIo־ x[2eSUA "}BA8," `Fuo~>G%ݹoá+Yo-/ q[{w\VYdջ<%w%> J^d71s28zxLcxnmϭ屡)q蛸u4u9yc ;@!_1ʟ1PV6]034K-dbM%))0 82:N4N6NCL&]R ֨8ge֛SCyv\~[uDƺ{pE̚2viCLЅ3m Ɍv Gh??ݲP!y tΎ,]Fb;YR&w$,Gt64Wl16݃MSah{FMw:cHHm 3Kܜ$ff%M>:oK!M3mP 7ɴ3CY^P=/\IkksGj|@tkG!*e!OΛݟxSG 𾀞?(Յx1PgZT#i5l,uAUΒ:s"]¡[V"Y;GYeI O  Mkdj1~%h L5YYӤ !t0 S%sѫc31 8羢Z'olwvC4d|o92N9zQ% anT"ᜭVzn8x~ KNbtBłF~ }t乬4>aJ}\yEFia5zLW:i V1Cb#+蘋{Q"jdl y7aţo]0Zڠto;E)3q o+xA(] Og[ 9XTZLrʉW>'cya+:]mvBfh:nO,x3ZTq$y8G.Y̘ẤHeUAsџivwa/PofmhrAVd|OfٳdIdeZݭ'!}]ZC-ü%?LS/( AXyź28$S}idgx)l;ZR)e܆*iz!< et#ؕ!h6I7M/b9L_ψPoe߄M8] x5ڿIT%1kg5Keo8P"Z, k1 LCYS=% \ҿ=93v-gFk8Yְ{e@YƱ()flM>h#5嗒NHߔBG6N@)@FދCƥ893Gj/qj>@E.1O)M`ͪ>[4F{> $[$PHIprWwwX~04"r2c{*ʼnG!&z"Jq=a:k7>5^+<g-Ꝅ^^r+e%-AI]6]9i@ W7 )rzP uUPf/%ND GAOR%6̡lo hI5!e B3{άAŘПk_Xjh`Qb"0)c8$"4[k59B!4{POumũYxt((ԟ@#5Aa/}NP'=&]q!ھ|Rt}Q/qb42LMrJbzdy_ሗ2PSYhFI2z-E) {LV4=8^ չ.eo:ùn <lImcAb+;,=%vEvRQTY) i==O$FF}oEqǤaSkc!UT~OWDSDl&bq`Ԭ!5An0/ 3$Ubh|jOOŝ&M֘i5b@~kdng[t+AA\W@4s9iYxhv l6IЁ!DhRisaO˭PGf/j"fA%h0eMfxE?fq@76z)21>i\D7d/1j֕jk31_~/%/ۥ J=x±b136abn肆fgG9fC,!vYY[`]gjXk*lwI/^ZBNut'# E|ԙLP1ƞ2Y6k~Vn.1(=E=_1DUdS ͹'}E #9$N8l-@b+GVǩ 0JDN(H_/T@mIDY6 Mc@f2h*~ epA8C -ZZ8acO^'@r+9MUىa~Ri.+jӀX"cG>NM1cP|wj2,ѻĹIo wb:jOҹ@Vjo܆qt9qh9ƞmaewe m[uzE{L#ꏕp]%A]{LkǤٍsƕI ōIC:@u:;Ry%-_eP};p1x̰{|S#舄YXe7z-BJZ8'[) FeX>.99cߣ? (6TIGBm^}r"Ԕז'pAz!6qWͣ䵌;b`}5%kD 7L6Or+ẽ>xXwk<#_VYgbNGH+7+< b43*x 軤Q">n$渳C8EdKnKَRHi2;C20D$Lӛjē]҄bҋѳG^Ny,ܢz"ȑ^?ulK06{kT䆊mB ͱmUf."/KmUY7ɃXxúz[dυ@E1KS >k;'u{m6} <8O8%iVF@zەaKuO,' Ҙ!n,|GF-͖N!6ˆ^'Ugpdc^VF"i챭 r>J諴P NK b>h% @ AiE}+%w5KigϹVvϲ' X( oِ+JHUA%ĠbG!\(+=nM90_*\Y-j?`TĆp;֓ґFi,%x̑ct@!ڄhx'. )%fh@cX"uߢFw ;ѲBN"fg>Ղ`_G5,uX1(5%ޝΕ_<{|WoO2T36*Ȏ1 O_z]pHlGE84D=UU,Xj z/zOW%<_?W,/I_wo!ȅfi.?$'qicdr ڴXEń>Sp|\EpٰYʫTTFV9s~_vwZ#It e)n0\c%C7J0~D~|ݍނ,ڴхt%=]wꦜ,<լ(/ V)†pQWY1kd#9R՜竾c̺Un``"Ԡl]At#z$h2YLNļhߥ8o|*,m2J8l1'g[xvM(99^ S%4dX^V;;BƓh.$ \U)9CoZvVji5X]Ѡ4 zBF4V3Ek{ Դ7`}1Ʃh{Pjl݁ԩLm03!X_ )& S%T.z0!ƙ nx ΥbTd ^pXhvݐ^Jš 2h-(5 x)#ΝK%IR84hq3ZźΔa{)ŭ=afuI @C޴N yTGm]RerPzPf jA0`w&*8W5" pj᠜Db]Ⴘȫ`wszvan 8,*\U c8Õ %oYN)?*aO['ȑUg#X ;4Fk2 L 2p%XA ^TY(^ٞ9aG5DPVxTJ!S͚Pk=*֌c!3 ;iK̲^-_P1DO"$ߙR؀X2Pib@-MGgnj2 KI2@ U5x !7Igq=N7;/jY N-AhbxF$1Ĥm;YI //75q4|/v6| , q3T{\9㟰[7;VCzUd5ٰʄV[YO^k?(~2J$H†3 KA3N7r5`rZD[q$ts&Xt1Q5 <<ᚌrd[o2z)w#`:Ϝ9]ZH3O H aM܍u;,^NU@D%R}ٹX-5Ǭ1&99pB[v[\dGr*u!={x#b91z㙶jVKېH/&v2CSh5RĢwFC'HuluQ*|z-E}if_9<**HO. _gB e 93V[֫jI$#Ӌ:oҒD7'ۙkOIΩ g8e77ףX%:q.YoAD;m/etzOQ-GۖJiKzWVND7ԇ~#A1OyW  pc>RZLo36I (h/~.ƣP9{ eQ}f9u׽^t ]:1 pR#a-d{}D (6Q nD~Bf aQ˯^F*Ɉig~[IK܂s:sěȔ91fÔwm1$]V(S!6~;6+Ht_a4M.Zg9f.&0r5ŊouCPh~*l,. C,j3sL]H~~ ~ ]4Y.-/iY \# P%J!tFM:0RQ 46FF5m1JwSJN)YbiS Uy/,d:"vW-Q/CxΖL(XT7$<<'F\b( &CV*{Fgi2JK؛/UKgMkR`7r72_&e4x/] uְ!o=FHjYaݓi&Ҥ\QUb(]WbJ)CKSCKmy~b|Qh\+Ͱ ~] `;N |Mq/|[hzSFdO 3 opOf4=jCȰm#Rg8`lEt_E j. oG(f7Ub8?~8D1[Z*i "zw'zIҮHgIDSϑ.sH,(FoOyA haKj=OTk Y喑ͧql#'T8ool w!j~xp%Cڥew7{6 7'2&AͻӡqxBR,4EܺS2+ qrFIٿN @x*e[^'' a@EX֋3=\IbYyxְ&-yD4c)gm- b/YpIݼ-DGTQ5Td] ^X>]7)u7\,#ܵ@'"편7_y <Yhvz6)&NsQv}nHntyknPVAX21%~}GHG=X9 -!RŁITvJj;򵣸NGAkq׫DYKtd 1_;i9RE $Q?Eh ]"Ri_HC:%-وkqf3}W'+,˲N(5'>:ђrnSX90myN`fABU>ɆM){ks;Lf{qVoP `hUiJ^⮫c;KCtߣD9ݢHX4̋ax>3`'m֬ڪ@mXwzH7 ٸ<~)@EǬNfP:u| ]fLl0~3txAOr2t~@/;ю^@m&هst W@Y9i6. #9fܿ#H;qX cr \?I *7>eI YW@RbU9oM4v2MD̢y"c+Ul'kDi@Z46%rX\bcyzfa/YҠ$'+%$ dQi^Az\pUzjݭxZ\~ t3q)gG6E_rFd>MUc ]nbpd@1+ZmG54XH|e2^2HL: VyR|]/}'.S}4 쓇jzMWAXmq0H-aUAi&=AFf53zO{.E)rf0h-W;_;<b9GD&`s6Oy'<-T(.=z6tmf!z wA>]Vi@1Ua\{/²O tL\;lӜlH'qWi0Ҏ'b$jSR"C9ů$^4E[ ܲ<{ @3==BPx,h4QuUau/*@mQbb&|/ | g@fXeƸN=W!ՙKe+%1Kؘ wWo-+,Gfsߙ%Iu n|{s˦Tj͝y+ȰϾE7ul>ݿ{?7b( ;?ˁPavBҽlc:3)L)yhxĵ-"9IVnz4o@n29)Y"y#SJ5}:q6;Nu@(1@MFB&6$Q# W6z=ȱohzKfej8:|byon9àqҊ-F5|u^mIK/(BӆwuC =~'&8Ow rL&-hU @-#ah陂i*E Ic7BzYG36Ry]r!XwҼP('ܭi V#i%`c 'm@۩w@O-jUdݚE=C4BoKN$fGG_պJ4Nx݌DGM(D >W Gј xky抎>} fd^'&40oo G4w<;4ؒ>ϝ\cLWE=J8Dϔ 8768qHkݢB'~i Dd BԃbhL5v"| J'(L&Ee(0;vX؏Xʙ4Kǡ-iX _bG_a9#ƄkP-)܉ɑ25D |[k^nlQLk]a11SSzHoS[]]~oJտ-WH@1셾ei/HFw ^}Ucq9;&܏_n:GӄHJH j?F~$FjPfl`mcs0C,oV8C-T=a{bOԅֵwCN|LQRݷiHc)wCQ}$՗!G<3"? Q#.g5w[Ǽ6$g |2n[/_"]-p")֯Tj鬲Xܷ}Fnm<Ƣd-'^Bb Jj/ L?8g3wVE[Tּٔ&Ƨ{EBj@JSZO֊UWݜ&МR|a3H:ּ(eWMѵvkjoٯS%W Q9,8 Gy'VDsQӖYK //l8Vg~=%p5,X`n#9YXV}qV hMCM Ɇݺh ~}ݤ% Z4FZ&TXM,cxk5F`w<@mDY\_al9G 2wc@b\}AqR*߈7ҵG 'B =$XAbq \&[&k9Q@wlTBѰG4v2Fړ<緆^?B߅#Z0A@EF xTqͱjGEki*ՎA(dwcqH w~6abr8rE1#'NmlIsNv?Ek'rp8{{<2s@ߕ>Ɓmʹf$I؁GfȷO'eezRp\CX8JNj9TU1I~gn78N &]y[i r^") sk6b;PpOn/d6wxB֌Q~bM79;-BhS \f>&5-ѽ\t-5}ѻx+]1 *>=Hww LB V◺>YLtzŠ.d|NZ& تe/?Dt.'xuGahŬb)= pł#1Ie&Suhb0/ς;zc$ڃz#K %N.]kSSJ !=9O={bbaӖfF9LMC|L1λlMQPiv0BK&!+cG$#,lc'SKjk m`l ȹ֐lwCتw6Gk(Tm}j 4Xf:ddA*]O9B_ K$\>a=A,&K;X+L5dM  XnXgk}"! oph K0HmB6;裲H/w=Fk,eyR)dd`^m|S5 32۴^KCpk0_$)1`9M$?ʈ x#DJ\L@<pf/J&N*̓?F߯WcrT}E7p|*"9 m@tC'~a)RBI? DbцLac+8"Ip.\dz2Ԫzt#;Zc!d24d/917(-gkЭI&'CJ0zy9΂'PNŌ\{q+ HY;wtM E%O5iX>>]B P yK3;"LIWP ]}AyN'&_B;u?0=,ߥ\IXkq.i_.h1,A7bPk> >&N.S:uq&ʬ!H$7-!39 J.νr]{Ėn?!G.Bò>ٹMfHr܇Q&630G#-ؒoNE>h,z%vz4F ~sR/̵[c/X-UF/#HK R4" 狷cPp#~Z]Q#!`=@\8{a+EnbR! :%U଩$(^I?/w(j[ `b[3-|ȭ TԬ#`=6әp>UaӅ/Z:0]t&^\ݎx|BRssƷ9b,eW[$Hʔ3fKT2OLX(_&wyMv:@)fp޾B125WKH[X Q¨e睉У0qB,0V25 <x ı@hX \b@_L\mf|F8M;@p-Ixn:LK"{`wb )?O1|Χ|ln'~f/ɸЎv{psK DY2,$3;F,\0YiQzB>tv UoyXlj0%O zm6)8ar1KX}KYwb<4Bъ RT90]|PBU>_+d QR1_PitH8g.ב}Y#QXb+EA|g`2qf>[K+:XLO8)<;ʸw4;K G|N \`#2v7WYD,o8I^c'C7K= Z%cztI @bÐ,pA:k_LA!yA͂n3DI*jя{otIॳ{)6qr6T!Ό-ye76Pv9FuĀM#i?}Ysa"I:}LB>;Gat, Eiok*VTs4),MiZszrQdZ,Zq}trʍU:Uؼ 8CߘW涱J$`k;[RAm+55aٸq~XXL"{VC+Ĭ]u+C0Ro&_);Zxͷa;KMlO r&ULV *o wKKD/cV'.XR.n?Ky `>j`v`G}$\^ 1@8;SA*UM?@ 4n!aTtXeLI:% 1OB%oMJ% BUVt gʘCwQ4geO!3/3$FR~/{qŁ/3lU7k }}E]]_6<ՃiH)dI#G]+qz $ zm1))nr>r!`?Sn:ݥ[}_SWn!p heAB@sW4ڙ@:KFʥ YV 26yiCչ7<ؐ`"3[t5O?5dbq&5۶4+`WE2Hdgԭ#G%/94_ɛ҇B1؈dZ45KQ-6Ϋ'66c:d}OlUZK =qû,b 鯕u,d#CZ14Q勑Pj8M %Je`Kaݻ oZ(ط*]1T\2$vbZ .tvSخez/K& r0r?*:{$*j&%YŃB7# Jw ۈT**!phڪmIM[C+@M'nk0JL$D[Fr j(9/ @Ԩ 0\@5uG `G"n'ͳ22%Q;_3m# ȔР<1O7Q/5+ c-B#6)wJ[P ~0{,!5JgB{bf:5G.ghpMa^Q0Yp޴MC[D\$EwhsSQ"pIe5ķ 2L]{IRGyn3 e)iEe65 ._vİg1|'1xO8{3&=a,,*шxO CNPb`&ĞܻY's#b?$ڕ݋K/.:xDi@Mn5J?Qq#4]BV*KdIA |<auUf!Fc}92c/?1V'54^+6#m[.@c^ڑfX_Rf++)ʼ-D48*<܊Z>TRgfF.ʳtE&or]J47ś#4@ȴh20x&%3`c{{}4}Ec4y8<^{{4{OȀ8-w P"(\6Cl943}X\Nt }[>A(>0E7Yj6Q޺V;KJ#PTYܣZǠ*7fOU&7î^ \fjr7} X'`vcbS߾3z8"Ak n$쭪B_9pHhVa\$"R Fb:~ K&B@+vlD!ȳ6 崘pr1h/BO'8]_+.#c$]⳿eb\h7m/G4x+ ) ~;K$iQ00xجG:l]8f܂ypǏd${AŰ*;Hj)HY] e*ۜҶv3i*:Z4[ʟ4 kE]LޡK%MLMxZ͏@0`O%t28U,Ƈ2U}6?j=ը % S<_*`~ 1Ղp5:  ʍRH̒1vG&!gT<~G%5ү'}Hv!w5{}g}a7)-0ŀj[)Մ Qf.#\AHe|H徜fȶ#xF Hϐ!#%9SHӖ8) G S S\%sf8×UWPk9cJzdFTf@,uӡn%fG~〤%#Þy~=7ׄy9rhk+s 3UQJ\:ᱯՀ$ad.%Cv2Փ DPiT=zHIyoӲ4y.3z#{m1/ߛ˓8a4ig*EGkGOӓ{G;K&|Gߞ*̗,,Ndؽ'$ f-J]s)SSe!9@؛ etL,9*N2{^#ȓo~u-KJ^/pEb;|8v;Zв4.s[+ Zvg =&dCb}^!l.qT+NbƆ^{t5>eR:vM3|[{w}t~&+ͪoUqbof'ZbEY~kcbuiT-p+;m*'i\`H1~VOJ1+%{X窇r)6,?~&(7Dѥj*bb 5ñ ډQOL(OqCouM^w_{]0PU(̀yztWя^eY5 B)1g K8)):", M PkOf vZ@/)컧#C?]֐-(@zb@Z)򸌂|f#h~HIX={|{5LP9jX@ MܧG.wRECjJ;v)Vuj͍^mG(/ժBy i O̟%,~_"5aHI+_)&rp傄Thr ]dԎ$&9_e7u'&ozhMќa.0\alJ4*>FPJ`U'K3TZToi/p:dK,X_Iy [zNCv},%׏\gO[Eh{@g`qwbGXS&ZLGA>Js2$Hh3#x0MNk|oڕ*A&wݶ9]16vLƽ|B%ɿkjXҗNIt<%a B8xkd"aPa<בMM)7D-7F 6ja j|+->ggžG98E&YQ<^:o^-;-ڢjo?tR4uUɒ,ND•$|-%R 0%4?1 Jʲyۊ\O0뺩aD͝lc/R&H;D;.Y[@iC^z7Yy-gL/'7( 1sNEV@j>#hd@dTo䒊M?{~2yl6)>uN2Ub22ǞW|aloQ(}d"PH(:xj9(-7C#SY|%wuIFgHan`3 Y$傍G"4}=Qg ?cdk'/z#%t;deҲ'TtySp<؉ 5Q{7tc@PQBE`[n hk"Cn(^2SGMKSJѵa?,Q[]z5%#Ö eۍCj)= rAW%}9jT]b/ŹAYݠU$sAq/fcZ!愈$т:?Fqƭnjma#Rr>J d5p&3t60n!w2IV5!4dyeV'"^fPFLPkMGH-. L"4~6\:–KĔl2a^BRB+ҲfD šqJa񼋲(ȝp4<>jkz~ԞT3_u S╶mLo}1;/%j=U>85>9ҧY)@le:AOal7Q u'[%{- t fs%qBN@G:q-߲CdvhLF]1YFl\@շgE֐R,$xKs+AΨkV7Ljeu'ӻnJO $geMD&-I 62 ##1˟J#~:A-NAW'陵ۅ*ZF}V({u}.o Nt?mo3+* ) x(OX[8D+]}@7ӤXˊ^iڂXy7ɲ8F&EwG.ʉ1)D(˱y\z͠~Źbܫ=TU/1>Z+x0 e ڑ9!ְY+NL_čn^.Zy996fUC@k7SD#זȈ?0Z=tR<0hiH&5T+7?orǞs @XᲵ-kl R3%͹pd;{({ b\]Bb*crDln줾RZ⟓Zې# 9055 ڥRQY(nG k+5L*7aH}^go;Wv0LG',D, mޞB/:ʖQ&?p÷m˰+٧$CJxwGCU '(9zh'پ0ah^$8„"@@?ے `)6oIM_bCߟdx.1rC{ղN2,Fg #m~\ V0YOu r,)B(&/:xj |kg ,\1C5FЉ({:"L)5/s[m<Kfl~NX0,Ռ^UyQ#Aj9]QlkWȋeޣZ9܋Q8кVd&fʞ2N1{Q>T7s&%u+iJ.@,tlM=|Щ p@ۛ}x4U+;L^_h68WlʩGy0LmZiE,v9e_1T< 'V;Qʝߊ[_ 0hRމ89[;{ XW,,DMm/F<%a'KHxR)f68OQJj%`6msj\WyXՀWޞ!<1ǛTb0(x mNh"nKM_c,Brzkd*)C >%Uԏ]x{u 9Ҝ(<')Bᰑ^-h(8{ }LE @:M^JoP>wq3]Ct}>]E|RU֠k= Z,`2&u妺oGB&.ԭX<جY'&P!gCimTOD0;Zڬ+ Z.qwƭ[uc'u|csc -9C2bqx&JETE̠h ##ugg5 {Op\r@)Qr(6ˋm]MC؄.-w@ͨgbxO"N|Ѡ57!)H5 ضxqp$`JLDF+<Bf*ӽF9o30#T{Sxڔ%%}V:CW3o+D a˼ R PEsDL$U<$25 ^=o^,2:v6~,CzM)L ʳ$*JPdEKX؁,Xyhvn.ؠo2Cqk4ݦLV,F PmNƊ9vm`{t^$QZkUoGZ[ dobTܴ!r-gnG~mjMs Q=,Ca_qvЬ3͐u+U.|']#B0UNpKc*sغcvxYV: z!C{(GӒ^rn<'F`B7&5UX[P]Է`01e妍 HCCjP /Pi6=I 3Ӊ) "۾pfaEI@KqA_;9y3tLMK^[$ۏ\i #xZԩفsOFWvs:lP)G($C35wFsL5-qvpx9SSuU.@J瑣\0;m*QRyS<2&Qf+8qQgedc4#̓eA^}38dJO9jȆ+v]v=^*i%_ JGΗVS_+ 9 EWعఘ-q dx~a̹;'|I_ "6XBUv^F>^{P%IDē5 5 `t. K=ɺW8qV8s>CR`.x'޳@"#S j sqdk5C\ nP1rOWp:25;ጶ%[bJexFo!U0O#)1TU6RfZhA!%t&1GO0E'\ sQz@V]&ˣV#P%{bD0u{u`N&.!9PRvǃ›|(p}3YҗzД#X`z1Ho:4GK%%qXDxJ~2D MŲ~CVP˧;vS6Ф F5=-R\ n TQw;8%GZPfIuڸ,DEw HtlN t)|A1uBxKԠs=m驸7(]I3eNPW_x9E6 ,rYܞ(1(zuY1$I &IGdkTJ-8.XX thq^vC%g-> `jfG)L5VPZ6oJ6>,k2Np 4A[;BePDm'+݋! \t j?٩Do@2! ~gHE9ЭC6hQ&74΋^xV" d>+ -%|rp$)b&YtfxJ1wٖ,/n ;`3KanmPC N9cBCto䬊 ݁ŘP.M(Fغ"}WmgoΩ Jy=(p;.cX4hE)ݼ^ ]>C{] <5wWl nd .c}9۳TYQ$! ׇ>4L+TEheuO,: b!(Cd sUƞƭYI!i,!v ?X7OjaX;S G"jFAߕ ݱcMvQK]hO-w!>F)~UtK}H/jhuZO:a&_h J~Yé\4=&;~ƣTPJ@bgLrTdy`SE7J䵠@d!N 0n&E _aO'iK5;Dz/ry>dǃo;q2FO8G-g3J-E3ΩFc^U33ɾA5^/ ypLdXSwMtkZƱ2]wBHb!RA 82Sx\_O@p4RNM^Ri<~ f6w[$#;N5v[ՑC%bQo:CndnWYcff["0cSCX6tv7'}?iJayh@jڜoYWTH  fYa&JQ{"vfKhR*{xVfDi{Hurq/OZb70;4C*47%q{)B3ݎP?Y̎hl$Mbu FR%+7oT>d ؊Po+v rI!lSHMXЇĜ!]<ծfȅ|h?yyZ8, qQOOp+e~q)^e!7`M#D,ˉ[g Uq7z#.SV\Omq2=f GUC5I} y(rnl@apa5%͝X֗nc^bъ^X vG jܶZ#&BrB-^*;l5&l7 P:S =uǫrrENTdW}jĮ55iuXIT%La;Mu$Vk eڨEɸn׏/Я1kb1Txz8_KzU+N@x Yo#u}q]!fͶ{oݵY`>0&bTɲ~x^ZB % ,`:$o㺅WVt-1:̜N|vdN.2[p" ^[)WgQCy{>0d:ǯ(~}\.@4gU PvdН>mwՃsܮbo@C,)gDpv( kT V _JAB]6ӊ 9XmD02Eq>yA#ߤ5p[v)˳ [DhHN~'_9ڔwԁ!>mv6BL!pS ZL%Fu=;sSe2 A#',]%$:T<0* Ոvހi:(]Zsƴ#;aSw~>}otP<99/rugAnl/e_댡^?k~ң/|䆳О`&ׄ>՘+h<Y0e>PO.  E$kI dU)hR>hԟDD q#"qSmL~gTVf^JAwޒ;-dD*] T4Ew:ogYD]:nd^nv\, ˲uPd%V*m'K/vRħpEv%kFXm+v8h#mܺ@NvyC0¾ne>Ҹ-dbHv% Od15|96~Tﱆֶb4yf_~qܑfsDɹƐ)_6s>YC8|7nwrzύ5 a o(Km2(4.NT%ws8anQ;l zx ̞uq"7;WjNɃ8s%%n1r;Oʔ[1p}sԂ3$ ޫykV=ȷOS3{?-at>:l8ikm5"f?nCÏiyPLg+%M&!W0Jwh4t#jOڏ_~ ]}Jm˅Zk[\~dMGj tx^={|KfBLUm0rXXJ>]3`ߖ!{iy̧Tt~9<Ѝi:;gzڈ/UK3Om5ֆ{΁ 6(9eѐVR/BO7$ȡVẍ́Cd:T<u-. !DlG:h֤`lmG9#d< ݽf=Fsݺ%/67@~r (\2`;_#qLa#x~5ݑI=.OV˦*L{-hY'-YG͟ [Ũq :`j~;rTO|*;&8j_b+k63+.ě!G,MP)UΗX?zـ󤁂Hn9 rj!̗ɓ|ǧ!Æoi%ӑ9?k| ؼ;m4Orpea z)D8qTkSa*=-THEKGО@*XϘc{;ujp&Qu)"]L =p2H+)о*R c(DJYN;zn7bMaa,F"E_O렐r67( 2,9Md8W xZ`d1a]q= Rȡ|M*cDlx #7r!/jlH gV",kdC$,<Xn=pLÖAYYj8VOAT{pD`vb\X㒝@[D6I)dN{2*efI820?ꔏgܲB|4&G뺊)AKq'ߜ~~M,wtI}Auu+;+6^ [[Hj|py_Mn$Q%?iLZߊ\YJ.wr7$RDy*Qc7(+'GTgxWzve!}.k01S T4œGܿ QH^}YlCAfTy215PdQ($^銥M}/*r0 _T\=W\'-RI.]t$6n ny6/Q8Ѳ6]x[ɮK4Z6񶚪88 @IآMU t C e&P !/1LxrjuBP cDD}LJV9=کDgoEGfVϋhht M Nl ykP?G{5%qP vkAߨDomjgky«{ t04mTXnWuJ;qꂑRZ5կZ\[gn-gnu񀼉tQɽpOLZe^X\eT`6f[LnLB{%TirWd,`$*NR?創/&?F{Mq0oK*aztZ`!?z3#.dHL DX'U1T+玊t'Ҫslؑ> [?߹4$=&?ʜF T6YbW0NܵĮN  B35FS1Y ![B/֪㌬%F]OAH]8sJ>!_;)rn;g2y5j-ģڤ}Doڵo¨j^iK$2xdء 3TdFQ퍵kÇ4o"E$W X=*3oic&2_dB $2gR3[ d=k2PTU}30J$DZ>*:7fs 'Utb*GiI1vަNYܓhg%mQ-,c@ EuEv:)ajLiۙ#ٸLEFOF<N"5oʼnC} ^ǝt6 T,J)vw:Z`إt.JHݓb2uY+nt9R~|%bUa3@-2Pѥ]hwZaZӱNOuX8GXiCDl}a\:HvDNab|.3| ]]<<ٻCBZm BUAIUL*4,RF"r͉aqӢեG=5{?2 `E!Ƕp #j-)5j@Jl>ƤeG_܍Vu7u[Hj<}C] wYXb-&9 8Vf ɐEm 'A4UTCǡ>'Ƥ%UFg^ G$UMw4buW#FJ#G Ջi/Me#Lћ:WN1R,M2ͱq"f2t4r}u j]D6PKav Uu1?=B(mq3{Rv.&G?H:҂<= < ,}~q[*nU{Zȯ'D ]4(zZ>cOE¯ +6Z9zW}(~ #H{#ğ6Ku.&  *I HTg"3x%7 ,5vS^ !;GC9b.M^U9̔؜=X=v4fO 'ꈆ(Vq[ñ"'r(ܘզUs&>LJ7ʸ"Wdzeap'q\} ȳ #q>eߎŶ)Qj E a>vȶGV;.$ur^gس@,;9 eW?JT `Q464j?VFnk.HuΑI S'Y@ݛCqzrn,AA&CBzh&͓qn9 3-OD^>zTtdr0y:NaR&k[&ys0S 8柡}#, TK $B f=(W7A:h$O}[Hw ڒyHF-PL"6qW<4 0۴6xwcՖ ,K̫Q/M57[_V< LOȦHXe&'i%#4f[|M` A Pl~.CL Cl7XfƅuY۴)v~ݝd,E ]v;cnTQKi=c:K'x e9ވuj/Q6K=~]h8˵'36x 㷛t{4dwj0-8ǫ2w;&b{<p_]tb2gay"y HQ+&s.Y'tv#~A5 M=n,L/o-1/l TG]cl=[;ޙˀ\~;J]i̜;+bz\J[ru╴cf`3p\wj[*9L Ұ2pWqELNMm¤+oz-$ 0$`p]2H1F^,fJ(mX]~uCyZYsѭ(̾u4 J tM7MTۇO#5h?>8ָ -?LERIzEX2ct+I_H K`9{ï AlaI>fյǚIvRz=f omLķw,tNXE`p'lfxK<~u6ePQRcj}>7BZŃ'Pq3e\i<@Fz>VT3)'S0ͧ27[xᶍ(ܑNs-{M]+^]G"iSG3Gџ1E_3(MWG2 R9"hH!&%$Ȍ_VY!@7s7^XPO 9p~Ֆ@A=XEMϥ}?9noy#6rʹȗ-L[ՀZSnH`i"IHKsS =esEqOmx5f2SX $th!wJy$p4>7:ߦSOd)x0ۣX%MRVoxۖ*ۓVI(pN@]lc =eۆ3 *^6>ZTpsPf wg*Z|}-π2OStp,]|S,"hSPDѶc>0>tWV\b+qޕ/ =A?&O EV&6Up~Hډq@|Ѫ݃rԴ*}!EeMn9D \H#FEs@= M\P`0 奕%7Ȑ)ڹ^BRs.O08pݡe]o"uRuI>apz&Uf1#*Ft蕻4N΋FCٲTV]w.6;t2DUTkHm#0IXRq&%7v% [VQeqirX -O$toËE:ܭB~9b*"`b}Хefj?1'+@a~2mD lU;1Ţ~EհnB]\83uշ*Yŵ_T힁to K࿟8:k<)5] u>FNz- ٖlSO /aS|똆BoQaVrM3\SdMO+?YW.Z5VtB]j21ԷYr*Go[6HWu;NiVpvu*Z@w&z66@DlӝNG!TҤ*PjۖrW RV e(nߌmT`je'r0Ԗ:%ѿ`knׅNQ=eG؀XF}Nld? ̓aN4; ![bp:n&fbjЖ<$j,͹ÁQFdK;֭v|? ,O&1jQΔݙ8@RHȸuӭƕWmvP񜃫P4XE{8Hي//JIe܅@5ћ[2c}}Ӵ#x09wwAjkvFz<*T`V۰0"=NCT.uXNB[<'jt0i^\s vc+q!u=s7am[́'sڅI+C}̠ >B3XE P w`&cbڭ ׏]vL/9{_R/DsgGtG aS?NrAX2M8_B6̗tW:xh"yaɥZ,dqex?.;@h*gz/͉qD4[KX,(He)2uUH +b+|"ixjJ/Eh4a`|eڟ bB .taR#nzRxQ~v[0k^  ÿkJMa!yo2T1t {Dž`ǥbWS3ӎ'l7)|#ڨł;o2Ȧ>q%R\qR$!r}s^ HH'F;o4FXgQ~ei)qBraiywsI9.RDSP=Xke$_xӏ퇻@#?Ԏ66~QlokAuCcy:G -<5ʧÒJp)K!ըwOF'勼e8L19Xͯ'QHQ{؋BD^i!3P&gJl*B4 `@],>| 8ٲ6\$8~Y%V,>I^WW8E"kH9Da0IR4Ԍx~ڜ~c2?'@;a G=>l*S,*P QIwZɪZ4Ő-K<djv}uBD}nxX[=u+SĄEg&7O^7g+Fy}3>>ӹmLln=7ݳS :B De޷>K?ж%T{?Zhp Fezp(V0JL;n".p7USp~M) aϚy)z榙VK~Փck@`mlkfi͕<"MC!um }s3$l#*6.:Hͥ4Mάb6?=j5V3 ج=aÜc/׈VQ4p[5Eu4&xov5;R† {,_!cȟLu8]le= ~z. c3'dn5C$+2Kx2#Q""u bl̝ЋЀ4mw{/rJ>Ote'{SzimlnJ\b#zi8&5I7:MȦLҲjn``7ſf;Z ")̽r! kUYю.5XaiUpYDNUcvBU=:lr<7un)|tq +;R(3_?c|\[XadxOA_elƁMל}̋% 99ߦ%9m3X;eGt=ZNGiG-Y[6JwC0A @}/ܱͮq,5gB'4Gej q~BDuN‚q|A>kxZ1#-b4A~Ms> |fe4lkS]# {CzkYr}M TEWe+F>fʎxҴ>flֳEfd5#ZL@|'G4Ssq*Thq!+::ŋ,7D6X.Bbs_ \&0 g5\2wLn#O&Su_tR~°~UrA\lYZf%#WDILF8>Tc\ozdSTŋVQ}#pG}R`)zǝ:[,JVNNMVKvlؽ^0L;?u\K3<[Idef&jEyyߴ|KPԳؑ@& `J@*!w+#BrXJ1f#qsyǡ Gvps+Ժ;f\]rz$&q85p,鈻+d d jEhI<Ц[ TtG^0~mk$Zr@ڏz R,%"tě3R(|VLm9kdJv P&& >a=%8kYqч('0|dQTR&$v"ɮ72jm( L@,f>Mΰ0P7~RSu2 JP1W _1Zbi(qb85q;] bۼ߃5װc0G7j2 \/ϡl71RzJ)bF 1F05DP{U pDCYRvL~oZt'C4_YF^"0M;P_%j,OdJ\ɹO-K9l#0וƱ%20hxiݬWFKK~y1ɦZ.'R ļ91HOܢ<1衙u,Xc׻+Wǭ`|F\W>UoHmɢ0[t=1~w 9v N 2jǫg`WJs| fr純phbx‡U"U|>+xYMW쬍.h۔@Q* bR$OɒS4>_t: "PIktZ:B;0`v߿?&P$2!4x Г}WI i~fh1T9JfhWy\dݘ]cFM0[qIϢG ;ݭyq1qʜ=OOdD)`^zs>fT3=QJ":ޔ~ JDa&&^Cd+w}鞇ۀױ_݆uv]Tuj j@6m%DSO,}O̤g[g@hI~dA`$uF:rx=<ѓq_ĚWPG5ʁA 3-gsي'U 3/q`vi[_1t`x1q a*PswL=I )xܠ?%ԒMiUСc\+7< |"ڝ AL:`}x:(uE~>*U\FS PTI"̏7j*yy+2*+˶ Jv (Ϲ"5Z{ZR@4|7yʔ.dJRs>@; cS T]jr82 K8Egϒ˚ H@>3#w*adߴ}6NS׼) 4XU!/Jw(܌kyEu8m<\Cw{_#P]|yt#;r*A<}ӫ׃=~?[/={90حg1 Yx%8OtAwS54;ȤV^ވe{ ,N(ڤzB[tbf,žeyٷ<.u\Ǐн[NK!W.-}H0/\.pj̍Rackf~ⅫZ^nFsߎV?>L,evՅ71I It?iraoH}7Hgvܭ; 8'I)9b8gxtu|Kji0̘Zl"_%r\\B^aRɕca$ʶFBJ:"_2)q  $ۉ@RVB XWH<ͯHRG ۭMKZ~K%jSߕX#Qީ8OIDH/C] |3oڽKa[2Y7)$=LaBH='5|.URj.c9e] *z:~ pu1F5)ދ>k'4>YZ ozCsd,79nB< hDeZpEVػ 4LQ>s4_1ULwWRa,}'&^na&Oi$`mH!MU(G ЎًB1&W己4oV0s˫ɀH4: 1X7`Tge2[D-}o%Qu7!Kw[)jj,rQTJTKV(<ެ9#L. EiS?8&I-3@&'e%DXE+`C7{'uJ{.O)wOz U6FK1'V&0]$'y`riw]Un]Ò6 ]|X5r^!P ADt hvBsǪ ~{4mk0 c"fHTeh9Kfֽ┭Ӝ 8NNy;([*4miCA"^*bhP##Gq '*uSU<~(0}ol}S8EbLBɊN; Ȑ(qSzUNQp + PR\*#l{Kd<AٛX*ĴE+3\Ssh Ero5&B4C?U5-|1_ч:lFV/'µ=cQ[j`X.4ETbp舔 o]8# -W$NS_ #ħo{`!1U]%o7yg@Qw,\0qR.s92 0Wb)MݱlA7T8Q['69ƞ6 kIjzBV#)`~,Tm.t[`p 3#8=]]OՋˊS,`vȮK s 0/"Mc{ .l2ܙ 9耤k#Kڧ-0n2ڐ Rq hȯtY|e DTdrZ^O@㮠/l5V`㍛YS )K޶iʞ q8ђS.:_5ت3dOWͯ..*m""\ Xפǡt8=IڹYǘ+K!b 傪/=DZ@FDC.kn,ts{=Wrom q r, MG! ! =?|Iד7ѿYA@mq#Û FpS=^͒-3N `ܑMOf +w'_#A1 uPB;H4gAp=Ψ+cXi ]RhЧ A8-1F8LP7bC$5V##z!8IZhi"煤L\vE!6_Nd|,nCX0Z&qlZ9|2᭔eթRF8ǤSgT$gG&\>Sst5ՅQrm|x kiK V!ۄ?ڞ,zZǍ(\ORtތXݖ>`Ӯ ycl@"C.ڦ肒|] eqn$w19\B)S cmDw.wSi>Q?Ň6~N T=CiެEMbݪ^jT5h)^p{.]^naݸ {Zv^;-x"F#XJjaϛ F"L7#з"PW,UmiO i\'`0a>j!dK'̈́l_Щ0JS,If$6Hdˑ#k3jOP;P5" %X'JZ{jzR~UD{ 5eLxtF_,scYgϚN p5T`W;b@iXq)\lH7\5FNom]k8"s&4>tlL !JYih,2#w1QPg{1b'N]1nEyۄ㬠{c&E2ebxc>9AHj<5K+R WivB 7{Xhy.ڹy YzdЄNclC b(Rv_Y%l,7Etx4y鳬|<5od An($aϓkU:z.;W1@ĤU^E@Na.>jw˷Q~ivˌnou+z ~mGUuަh2~󯲨Lބ H !Oy|,҉Q% !+]l"n{R)aڎ{ at nք(G7VS=M=؊YZ;H?`=pQ =EP"m$6YdOo@ ,%JW~:u*aDߔ>8?Cu }HDU*rL@yTO* tgq4ikvp,*w% &KL^})ѓ !@[tf& g<)q1_8<%i'8I$o(L ۝ye&xcVlSe6Cg q dwlR9I_Ƨ jGyABHiY{)k&~ReO&i_Ejɏ d뵛ڀDM8H{<[G =en̽yuҝo8 x18f0&T8?"ߟ]lJb.G \:=H@jc('JK%fiqPT2o[/ a\X'A|cVeT>Q;1AFYOvgq+bDPMhQ,\iߖfF#Nb!ad&MQ3g iRҝwn"iTos.Y6Zeɹ?8`i0p BN=Z6tec[#p|qׄĬϑHj ` Xë^IXr&cx<n=} V Hd?hzטfaw""EgD<0A9=OR!^vqm?%YEΏ{};pϊN@>6CeR d#ZpvcѣWIyVͫ5:7KL ̞bIHg*"A@go@ FBLo85+Wk r5v;Yar^yb )ZgsR+0U~RCr7bdbXif1 *T5 |޺ F{6'\,wwk%7}]tOpƃq^O$ʴ#>}0ƽu5KxYWa4ssfM+Vw<`3Tf^k.HOK|j1-$Wkj,`B|d:}򃆨U@\3m$%x$M \] xp,Ǩާt %䮊m 5# tVAwK'0/('-.-.`P cL8V50B- ;Ub;/߭UKHl 2+% z$>D?IqQ4 s- _x{E=Z(j [ )Mw`$T}M_~J@,0Vw*2"Q 4 ZN@ W`s߸s~GU /w^1Ӊ3 8+ Kˀ|U;i.%Za3kNZ_3#n~g)*:f~& X L_@?Mr΄&"3$hFf$u9ԩ[IiYu2|%Q14.|'3l)z)Ƒ*}1NPKlOgjꤺ i~wSZ', Ž2vi5>Hsax0tN߈ L2[JxŕUɭ*~S~AsRոЩ,#a{E٩Mbߺs秺QLԒ:|gڢgpvXqcd;3lCh ᓪpğ6st9E6q=a@f[, 6$5Zi)T+=%]=(TwA47[O+vI±]&[@=\L;&>ǂH_Cb>)=L'aҝ~*Tɣh,si OF+8re/ Ӭ6#FCoyLTh~&ۑ1|!蘧bԞH ibJT [l0g[GfwmKEo"=O36:-LVu߶ile}ݻ%'ϰt{GCu1~׸A\%f̖++LA 5gs"`精BKg[.D51{ĨVVglxJ`Ɵ]{pFt>l6Rk O܎[-E5ǏNn36ϳ9A PeH#5H,٨o%36cYD92w%P\dzDk` *b>CUDJ̷6]D1@u[|yLłwjnD)Sh(5dMYBg ؼKG>S[s,u^:NT.8$=]tm 4qj[cq_"(yM{I#= kP Ɍb%i~ZR&ҤbqYuKqv[lGZ* lb 'a)$,,8oT[aF/2k |;EJTd7@+[X-%^DS?\l‘O8N>E8џsڍ-'mK\؃Mi@n8fIUnRY< !Aj8K> P5 .n+SC?(Q(!+pWbF cX䝊Fp~*- ⛕jě#NX&Aj~ We4n( F;_4Kep*Ũ,5fpȰ y^U:{vë:GBeb~ssC˫0B^C#rJm(T΢(:!:iRGI![ag^8ڮDLd|+$HT(,NMS'HHN!|jQ2CEk$6vr]:XXZG='Ƈ=}f>YU7[)>> vh ի<2\t#{@,ō=N͔fA+.Sڨf( /eFpፅ®=2v'Kf v^ B.̶rgo:iH*=qCY@Ee&#>UF2j޵B??d]<JD@uO7IHi!B u7E$i"Ϸ V~h~*>J1P(3 FEhkr] 'Ic%>ɷPB e }էY=n ZkѦӒDp{Kou"vV{;5,{Q#F5>fCj-G . ީQ鐖T:Jbny7Ƶ$i0=Hfsp}Wj`&pguaW2/ %y/q󳱃 g|ROIЬ@-(NK2"G10^|ʩ+Ra^[NV^ ϰA&"0IS'Yi[fύȰl}#4[5Xn@b"EL+f/=h3 u t%8UKbo5|^mV}G[9a.:mcФt+p&f@~ySIV3##SٰqɃF<ޙI?bBPi_H@!dhF" /gQ`u2 =J@pa!~eS^9N8Q_\/ЯJ!&!򆖱 .\=& +F圂x_/ٔc ~]+OT/0ȦG9 0e5ӹ] ?π}Dd}a1!yv=i:m"OdȌ&tVNBaWOqڕ^NW݇Ʊ;P?n%[pZ7{4AH(yNV]5 %Kj<|wM;6L0<4dh.9&{zYSytRXLjUK_}R#w]fI a96*y{DW)%C% rsc:)wݴ%bȶ.kGk5LQNM$[LVgE)~f[v1 -}]k% 0Di@:,?*G`|Kɠ0N$MjJkxnj1E++SfŁ t¾' e#yJВ4kѯ&,~;e > "͎}N}1w_l o"DܠMXi"nB:͸Pe189.4XP-eÔU*$rUŽ-lnDj[wQ6a>/n)ƓSh pѨ>hҡ\ WP:s6Ճ\tܜhYwNqsU0%ӈѐPFBnr,N;m¦^ p7gq":τηJPj)Rb3eq)>GOUâs1qP8怊%䶋{,]%:%h k,~ e@Fx>;eQ^{K:f}2AH6ZyR"tk{wb QJxlh脉8`<1N$q2{DG >:7Q 1jYqI1A%U+2aim }.D|GA6ڳp@v6'-?,Pc-Z?iKȃV>654Sńn}fo!g#s+b6Ck:˷ƗE(j"T?ua8\0X5`F#K0#,N @QֿC\Ĵ1r(e!g_,G8TmbyGm[ (D!ۍk* AE>6{ZH| PgEG</n? H&mU9 :7 mD 3} HyO7wݐܴ;PEچ_Z N ʶi x7GΌ$.4%B)D ʪ)vQ rbڍxUVkFOTQuj-zKTgYq:̵!i~lrY.}4 7oj!"Ϥu(! )`Nj3NGwD.U{?S-SdT ӑG`7  rF!D"j惒N)&q+c!H@sh؀:{b>t6r+&VrBIKFMF>c;[Ҿ:1aYV >`{lfJX|;XԁU&/H~a qH`ٿP&hz@/t [(.8#X(?j!6r'Z)缑$.2/ :`gďv{|xy2kر]nV}+]WWG19ya6b~5\G?Dqn*ĩ 8ES4z~&pl,^*[%D4=BJ5oo,KY y$ܔ6@K|4JR!<ZsKeN.OBȎhf)X6(ɎeNҡ $}ϋDe1-m4T-"Z`=@}_V V#r?I*U=U س/[KlB38C|u+{aTDOPF" d!F-BopQ# u\myz2bH#!9lK+q/  *JʿPTWKD@8Z ܴDͨ; #T|zt j86fXt1kWԾig^!! $f{lYcm[GN|A DqȊN@]M4; [yAIIJӂ3xAOW{=u7?1uN? -8k1 R)4eNZx58NKY!J<q* ) ;"g+\6,,aZ$Hhvs|gSHI99&QUTcL8-"Hq]ldټt毱{p% iHWM!ɔҝ]C|5JJ5w U_ꬍzէ=D#5.0bcRiͷfem? (f pcw4]@V462t[ٺ_HTtN̜Lє'l8+!>5~cT,# ~|;,:- 0u݃KA2=vf%ci4[.z3: \DLӉm\ =4'UI m;@ϜAuBώvmcg#z v $Tҭ\X # RCcT}QbFuzs1K5nFf%|茿AZ( r!CiM E99W~-*s$mO*Hy&?R`n|jm_M:x$օNHW @ւ)4u>slFE<z% @Īt6o&.Gdܒ]+m@e]ovoAYv$E:6y "'iGxJ`,?lK :]B1{s Plqꮴjeb;'*>(_?)b-̳ *@GR߻$j78&.uBhaz~?oHB;K3 J}zU* &w2}"|N̒ 4Cx|KS(>2W t<@T\z0Cd!z/BCDuZ 0"h}a3glfV{3.E~Ƞ{û1wx!Pk6tbWFSTqC2A/@XG]*cG}ߥ Hf_yO2bwY1ά~<;Yq: eA]):Gʐ3-Xzr%薯p_:5lR^\kOj|y_Eϫ =^2sR ̈nC.ТB$SYWwU(_W)rt7k :Wn iZql+ b{-g?` 5'`Y(ZM?ri2bԪVK6/M  0IF~/C]& {ka!uZ [ s>1'CuyMp,0i@n>nӎzweD|ը2T7=8Q ͦt<X$c ]ԗM!FjQ׶ VL5\XEtT1R|+/V{N YWu/ESs֮L[-n٠ct_=oZjEc^,ǻ ~> S|1QzIҥů榉zx?gPaZz􈯻E}kl;9<*?zaG>8M^4û`3[ w/]i20^4 bxRvnad\R[} %(KC  %ceh jԫD̸OYҖV$@H$3a \D ɬ+hA繂yqT+3uEnEM=av)nW$2W_m" 9R/hp.HOwf%WeUB%c0>t/(50j'|?Hq҆=7~j/B@OW>}!׷iZzD*\Hc *gwc<BtcדV û ےoE7Vz+U㞙w(_o4ߘC8HH=|YNù  RArgD!k/pXԡF Gdѿ"Zx!fAB6a4j)jbI k1X-rGaQ}jzLdBP @7+W1Dj^5 J̀E_"(n3a/sd5=ys/8ءJ"CO !tyG S s.H+k:Bqꞙ*i #%Hpmihl p`E?n2)Afh㦽 QgtU' ,ef^MTT}Y%C:||ˡʱ2&fOSeD05^sj#17L5/'mBsI|noFr>f6Zy'a1[XnFyV:cZIyB/iWii, I{C.5mՄ/?\=@r\Φ0xBo=aX@KlʯCNAbU6)1Y%̯*2vo*9J5 ,Rd)]+0"\J]NZY?Z qPœe.) 0W6/&& Acp~%WY9Q<6jKw nW/ݟ?*V]\Y* rN:T]a54],}ZUI}vϫ22o;l-=^e&6y' 7:Ej,ʯ"Os˧ 7ϲG7'=O90#xŷEe@|ݠ81r|nNRhz+J?ETD8o(ʐ.NTޮP2^:PE,gbABfn~2wܭr$W 9`€C?PK:yn&ȫMX{;=|s9(Yަfido}ț2KxU$; ;LL}M08cliE4s6硅Fdwyu-'A5lo3<sFOJ!Gkܧhfmb,)TtJQG6W~!w$-^*@z[Jl%,WyhW~*IJܓ9)CIogK{2DŠæ{|5-ܛ'6 /&(s7` vmi!Rd4x3˔GK%hI[ڡkz[/4;SH./5wl,ǚh7 Twx򡼚S|DžUocVUx.cAP3$ N7%˶mi% .⹴;;f_gk[!]o\ 96M *A>DaF|˄cbw9#13}9иrjebO?A[Фxo'c!- UIo+3['fU(2!u<}Ooʊ?ivn=6)p=uчPZ FW4{r"&4ȯwB&w?Û :dO8/8f`^L>MШA1{~ iqF-Y+R0P6vCO@mҲȊis0B>1imb*;͜sv ^%~ T_F*cpSEU0IF"J(̺׺]pe mMJ@|r""=TԤҫ@Zډ[n_y0B^틶wRіtHh hݖ- 1qRv(&⣞1 w 3ں, ל7U.oJlヤ[5d,xyjZi<(3b%f ru17 A&XQ;kDG5dnFY7MVb`H i|=+ufY_ڼ)c;>ւ yb%73W툴u_x7]ǑZr 5;ŕܚj8zrP <S EtNg_?3'}i-͹#MW@jȎ^É#]Z!=Osq-%@L׏s0)*(!]QٜLjy͵J쪰tJSi*CK2oG_l AF VBO-$7F,N竐[Fk (rrΐLb|~:;mO d8??Bv-;/~pT|kNN}^bF6&*T:ݶQۗV8V**N?Qdz&V y'ÏkkT'6-7/t+T ̀M-N|2vMw=g_XG}9U0ZxQsa|fk +Lnpg5DoXٗ*^ 4GN~ |S0lYաv3781?< RVϨ7LuLIvy Q۴'HԀao_- N{~3dzX=F EmOIE,(ȇ0>x .&M-/a-(B 4zWKPŨY~jG$\-`!hW>\wˮVhF=Bo&/31]Ecw JD%qG6gj;bJ@/Ȇ:s L*iulBuu gTRO, Ɍ-gGsΞr*𼏦,oN|rFqFEg+]18QMXam^r,7A+Fp0LM(m ~\8쭒ʏ\ۓ$nPn7|F6f,XWP߆C,zsN ݐqFyR62K *XJU]'T;C{[0-5J=91&k} lo|LR]JtݗxRt0WR}rkIb9]x< X. q bno.-|6#Nql@*X,bF[H X(Wtd;hi5ud7a=7 PKV&'+lzeV|ϗ%偵 }"'w$7T}4+]t _R-&zj>CzK?@Ӧk 4 aq-ǦM!/G`<=f{ D朷^v~`kqG \.H]2mIj zlz2V.LGRQO3r^h/ .f=gHdau c`&!9+`VlGDk@`1u=326|:4=H׳Z 0fz6aq ly;g%3 NwTeYM*qޖ Fbn ꪼ4f#vhsVkK驷w DZ=UI > S+١PaW?KC#{@%#(Z~yu(#[1!]pt?bOInNS炆_B˸_ڡ7ԏxJPJiֆ]j;ﳢz`_r NQ'uf2<'t52{Dkg0<{K 6)ŕ NGL yنNp!=T1xR- ,U '7rU[DgPQB-HQ*h2Ef xZ6G J{5 /Pk6~JDKu~0f~2' /$͠t\DjEBl1S8dmk􈟱D`߿y5j4kS-{N%<Ñ26PA?{oҏ;&9[e3ѕd֌B}A~=]Z}Knb?7I]\kD/fe0vR F6*öz8E%]+f!GT[ orO,j*Ӧq}T OH}ڶfW+^:VWr*$-xCh:7/}f&䴰NݞQ-3E̸TeH]bǭPlM&^8,WglT\Ls(Mxm$ A4uo,ıF@1D(6NЕN(]XARBNtqBɃvhz8]=*WϗVL1B <7x=O9ۚu'gF'5ΰ@eb!wRɉ QSQ@|Zv|N[H6CՀ;cEs(A0RS_`Nw Pħ_XT*M|@EeoP[ЃMWlPꊙ l!tf1}Yvo{6 ub~T!ts9Lti(E-"ZO#&LsJ!GO ߷D=#%qo.Wp(B=c,vAR +\=9\r-\#; Z?VZ#pMxh3bvrH ~B<-kQx2SB-Kpsh1PH1@P1ބ -LdA&@$98CS[uK?EDiRvROw_tsS V?HuX^zPͺ+s!BakB)~ߏo~vZ r#%>q7m\;,~oN6MzzVPhmWm!+NLЅVuB~B nĹcu#'MX|D';*]  Zms¥y&a6ENͳcgH2xsK0\JU!9)=d*p,jG:ӻ+[߈+(Bd߉{#cT\HU6ň͕f2N'dL<j&@yytcMN NZk"GFhH3T%69N{ Ebs-ts *]H<ٚSíY%@&fcU\L\u[w$Jroc`b˄6%+#(f{dG>SPAZO\N'1G,mMUNroRǰE ՘DhP5/NM/jdqOpy 9'{Rk:m8a^˴.x'=zBΙ_x΍kal4Y'RUrB )zX=Wģi]dCU_WŊ}@B*gxIun5Rr=9;Γf\lBgw%b$"K.9П`";DZV&Bf F9[Bn0NYjKf)Q CS$>\(y5&WZ?ɵΦlm$)K;/_i)838,i! t8UA?xk5;]f5Dݳɮf!6u= 60 |ҹ'[c፝ e4Q9=zV:z( 5Zt'vǺbLE&alis%*1 ' (= ـE `?Ced|aBK[`F= W J'"]p v` &Xv*2p14oͿkiBچQفt =u.S'uO)}R-$躢=.O\:dE32H%ԵK8^Q8^\Vw}%'` bYgLJllp@y2`K槡iWfm6WzO+],>j8E(!K%zH +gQ1X6d8X1W[&)? Z|@g4Ε!! >n*RX)Eȓ:+6Ɓ}*vΨ4`( ;l.piuU0Sm+IN-H(|ŒCЂ~Rp|^țJ>R@P٠LTj 0W lOw}UuWta?ū-r bbH|sԲDs%&O4{(7z %yP_iKVrƥGm1tz *_;"%!A^+Jw294Ǚ^uw#{NGA JC: z`RpPIr-8ovrXV[WdlȘMZX^/1^(e :E }{( iT=yy@U2 y~n6] |zd[~5P U0O7e BNA?5$~W/ߧAz;PEn8U!e  aίQ*nغڪe'GZdHq#EF$\3PY$4]-}n T =Kh]lCVٸF܃sDң2M +خ{Y,#ByS N*'t bp)aYi3~)(90lQ&\R[`餙, ؈o(l_6:/Bp{d 7S^Mvo#-[h@jORu'e3TLB Elʍ  *hΊ-,Uzmj)bm@Dm+CX]f׉Lj@ %i1))xutw81C*j:yzɫzsN^fd{/:|ȃm'EFLU/:!)/Gbryx&0y C>NK3vBk_οs  TyAzUCpôh΍RWHJ]lznjQocv>* S ʷCюpR " N[ZH°,,> 4/NSPTgi>m:kI 1xښRH-$!3(C1+v $;7Fe<:1TGhY! .fP3] %ꛙDE/ Q:}pY%$+-TeM=[tK̿5Jn]5V {:#y?@-3 =Fh爫)Rq@jOWTqH9顏,<_|HFXɕ\Qqr`JasഔS`/{eHUHHjccV•7:Am[}n,ƙO&;7Bo{.%rӳT4Mts`QN~]'XR>?F1Kcޏm9XשЬ w OY] y `dޡe^)Ҷ?PN񂸝7-= y\°~*HR[xA/`a e~QV9ǛS35ɌjJ-헐TM3u)elgN `*i#? }~|oyr1h E@!rAh f"q>ᘇ93nħ›fĔb/Iε\ pMHigdB~N5{`(EtfS/PIyz$zA壃HʧժSY9(ǹ9q9I.">[̐x+x)>K7nO^#HPѕDD&~lc>ɴE=RG5cpB/5{-__gsj5iԾ &ziWT_ RϠ= >a]| /-Kg!/3j*{/Zkoa+A?eKs&[d 3ٍ')xyBҼj;Uk7m؆&] 0ݡHu L^"Hp'>x:t\r1y%m#(ehѫ<[?ǿY)*FTWa{6\Ҡn40R=^SV*5C!l{) Nnu~JFCuK榍.V}頗gr# Ɏ0PB'6Nz5QBlWdײ)[;$F(HnY"~Kg@>a |wC5$'PV`&ƇM06ԅz" tFf&йH d"Th[S~ %bO& B?B$!M9,Taޥ~ء -.%H ģޤKq +i1_0>"ЙPCou0j< s۞ |w<J?=Ž zf<8.F_oڞڋ~YOޣ.O[VEй?37PO՘\e1H C+=nH>Ӌ ͤz:\`(j;d=h,PKKϷY)+-Ncdwy ^Tf˵ yZ[,[ *#|o +T^Rr FT=և/c{j?74ШMÁ:9+I5yH(18V^,) P 55QnQzj:?}mHaQA<16iSRWfT8Nؑ>4F-!t)?B;Y4>UwF+Aῃ 94 8V4ϴATpQv|tLxLoh!uiqQ8]Z-q-E-Ni+5Y=,[}=),63IHN9ZKF?R7Eq!"xIͥ6ûoCx &J$\˰ WXdr#-g'XVnӤ)2vX5^roDdXOv*SB:)u`>eح}0êRfNR>q|^\>MkC+ H6P_&bYK諰Pi00𭻀a+-~x(7 5Ři)3|OC6`C-/pݿg?4*SHwW8>6.Cк{EsyaQQq* MʵjAk?1PY܏bpQ9gu+h<BddR%냖ݵp쥵fVmgytN[Sq\:Y80/)RۆL^|*_3d8VQ?*M^Cͱ1b 9R#Yr~v}^ӳ$&Dqc"%NA !R{xP"4RЮ<1mu@3$bXxE8oIH0ȮfD:FJsm~|K@H ϶T,Ah.vB $UiKj?aM q!7ePxCc[HTsxa뎯@H73f!ȬysyتqH;ܙ*$IiD1"XFX s{U#XK$@ϋֽ )^aw$4F= 3&:ߙUAG7FD&f37aQ1t2Y} P=7-s^-+ySnm:}ہ'&KPqZH6 y!rGf"?8f%0{N k=xC%k A,CJ`5 }ѳrW,І%Rxgn*R4Rlk 6dP]\/n=`Y )>z:ǓyPɐI^Fj13YUíñF,# ?Nw/\8cW+!-cE^M> B6O[H* >DbWT-"ogބ@@X&9,`=e)2%b2H]i9e'l|#(8WݣWre92>;4DjN%Զ-SUaj׶hT}F[g瘗8.LgbeKǛm/3j'F{ v ceF-rt#n%e3iuX'!AF9Xh?xp>qb?3.tJђ ƈ'$u?Fu_2".c%?y: 8[JޔItT%x5uSr ])CZ7`73.tCNhpJ9 D@gsX!#,5u&;%Ch/Mut4{T;TbȜK NsՎ z?B[E}TUw at2f-f&Jp_d|u9%op#&Jc:QLm@MKJ}ε1l&i޶|L 7շs](MHRA.Mw]m:9kŷ$GTd9 RHŽ| (}}f/ѡwQsƙ &_`Fr߀So~=c;oG=pTv-pC;DȅzӪi-XR!Ζk{,(ptHy$C*f(4D[m%șk8d9"-< yTa!51u~KGert'i qH0upVt RZ$[tZJ3ᩘQLkrD`$Uk iNH@{DV@VÂzKjd ¯42Pֿ7z_CD{!: Q% :s"}Zя~ 6zv:5cJbF01,jIE?rlC4pZKQxP\$xa:ZX#7&cxwTD߀>2X/!> YFbCF5 !x&vC"ED㶀gYtG]i[l AObwhɱ,,adVڥ̝_[Ji1q'D8w u1SN+ @ǎńIvfc*KFqlhhbs<L1cf$v}˅:Һ8)$B,\zfb<\$w+g/ܼ')]:TX+2ןsK AdѼHw56r0w7Id* .;8;6}HJ7P䃒ڭ]k-eNHtjωBƖ= dzȌMmeâoNAx K3V-7uyqOY{k.*,5^Hm0`}Ǟ﵈^R ?Ǎbgdx05^[qf5NF 9L I~-?#DTޠ"YhC'k]3T&I['p5C>{]LTv/ >pJX4ߎĶ wI21^vmRVtMZln>_Rٿ!S^(фD[QG$`4&/1F@Z LQ7 ^J9Or<( [<l╀)cbˢ=D;-oؚFrG*~zDĺ# %4Z $#2=hk(_Ygf}IT1MFEH MuB'e|6 ꓼIϑ[gݡ%M6k7bía.幤kğs;ÎN%+]N5#/ʤwvvn0iucbHN2PNOfک@-]|gq?:j"ܾAT-fxo$F*湖(@,ڶiʫDd3>H_hmG|QY|B`)`_,$#VjԩTW'šs?>f% '`]E)//RT[pNU=v-E!}gL.S$hu7|(25(qN|5ܞBhd 5Pb77i`5MUcN{גNR`G5ϼ]l4C.$Gmz?|bF{J`M">Y39\uU.>=rSExˣH?lB. vp/JI]8Y㋈~}_Ȍo{;(U1*چgNϓg4ʙYl~wrua݌P~ ?;ˆwsubUK~F٨˼8{ Z-^ `gRl0l=9q hm[Pe~od<qRq?܏]w uUߑ#8˼[M/ĥJV9MTcy}ʳQ`wi=AƵv&TՀ?!KA V֒$~K2d=H#IAԆ-wQA#ĐB;ЃƌŰB\`?.mHEKQ#L˪,m Jzr*C_G@/:~OKxr"^R'#Ox+{Cn&qş8er/}|" ۨ +"׀f#r@h҄ɢY15<$ZSPBn8aVeC-RHy`PA) e~|B ho˖RB-(7e慇~< (k&/,sS)b:cbH4 PaGKʬiX5L0#x2h6EmDjg6,Pqh.!LdWޔ._@=C7֢禬jOogE1.-`X#<&C-ݷ:Ggl&>{sl._ Mf ~iX E j0N /PގTP *K 2_|Bƣw7]Y]j%NI)s撝kGR X9>8ETyNhC3ET5g9&K+E)l9طSwˆmciiOݰ-ל:58qO:f9w%O* cv `G}A:)In̪tup&wBP͖u Np[ٜ`tҾe^u&$WM]*%T*+|>ЮNH)S >#$1>,FsH|R  KGmA1騭jÆ Dl\'Lt9OxYG:%>UV8ł]jqޔė7Xk EVQjԠߓHSXWM/b[ ӂ  JAT3@g<)~pGxx KpPa/N'okqsSV*Sl 7Y~>%ӹv?Ŷ8- 892"E @> ߬2p 򲯃8%-\[}^r5ƲfQwg Ujkn6qZ i$Zl]螥=KP#{Nhfȶ[;a]d}N(cx[NdguI ʀ ~1Mʙkt@iBA2vܰ^|8o,\|uwSVW:(FΖh'$+ԐE 5 leÖI\afC:GV 8|jƐn Y@C&2Xr/O3PM~bv&὆$rp汒 Gpz@CMn3*2NPݛjy6$Y<pSi,>P뾼󘲤.D 94i{ װW,Tm%G}1dFZTxVp|W$xÈ *v(r<Ǚg&JQ]UުSR f`75ߐU'3ns;uHlpg_.UPN7T!֋μV\4Qgu͍ eh%,^̖$3 @X\꾿rVj^nS7◢:l!Zb3'UVG !:ˇu_Z3r3]0ϖsҹ 'rE7 Bbd=Q:%6C&\D{0A՝XFh7g­HT[lT:p?6Kmnz߳BQ(X::+R%ˉ`mڌH~QL]ȃ}}ddҜj%l+Q`23/Vh]E[b/A;4 m9GTէyG_8@#3?`H.5Ts6@?/G"Zh-`7GfKaG|R-n&$jEm)^k ]m_}"ԎqH(V?@{ңk㶏T7+οgY8ֳmSUxE $zh>ڒ'iLAz9P\ViB'+; Xȳ?R(@Cԧb- 6{Z@&#[>%I 4v(O-`7h1dd#熖wSH4%;CߔH/|AĴ`4/n]z[ʦB̟Nx*Ҷ9_F̗]Î*l۶+{fnR!0|C!XpB0 WGr-Wd* LjP͡I4BX1R:̛h;TqXR[z/yM oxqewqhy(=ΰo-y^`[1ћ Dw\. Pc8_.D1A;"$XGktP L{&LKV锜e$po0>b[ F_?若x ~I`Ki~-0"=MLu onQߞ WkD%NG#)Țw7/;5bpu 'Ykh=q]YX>'p_1#P3k #Yvms?ӱ5`C*z\@ȅ#dlMD}pT2*+SosT?hsҩۗ˶lb~MjD6)Q:7ħ-%"~жx_5ŞTÝx]1*Gs90ur(kѿɍQ~S/}2D )VZSL UʟU-?W VDt}/&Io@8=r y\^@%J;od<Ѱ0TD|Y. qc1yobٺ $8jvcx*BZ/65fQ[g뻬@\ZW;O6z3ׁ%wZ!W$YKP͏Q|GIF-8DCu Ҷ6#VJz</[Vjjhq紈I]03Oݷqd|mf&@'˞9 AR:'7ppDy]NPl{iIZf))7glkMmD#J@&,J2GQ.uPCJ[2b. lbJ]9E:FmܔW۳lb2ŰrU {d7EЯY.d&/$3'窮3r>KˏA:R&"~*H|O[pU}.whug4x]%#iFPs \G8p螡T!sGO+5NTs7' 7[0Q+z̊82[CfA5ӵJ Emv RzWf+ He&,7W!MyAF#9WZm>C>#$o+ŕvq; ]s qbQhިm{ K78l|)3w<6n'y@ҩ/,:na7<Ÿ|hk4HOLT6Uw  ̪Grw4v~%\|xR^Ů=Y$uj WR$eF;ӟ9ҬoGŮCđzΞڶ>g! 2RώՉ7Hu*eU)3c sJyPe `S!z4'!&6`.'~;d`LM8s1g<`,(Z FsTd3-mIlQeY#$c)(RxM٬xMoIn4sǁ6hBkL4 DaQP7dud WGcV,>WvcE3DN(!^zC){OEX ,W,PE"\i-sst-HRPm*DhL!^d^ e2Eoj@(pv M{" g|{ap%MyY(xab#ϨA8D } T.]+Т-NqjUa{W{ѽA&vAl0y H8q}snb;6a_j_Tΐǟ'U{sF`*'pQA"*yEcGHjNna9  V*ffqT˖{R42h磪pPxOV4Gpcq1AG!U,)!gP><8ͳ S:ĭJ/3y P0|i%@4Fɼ) jcx,cЅ㐁vmq`Zq*y"NpW9]FB&ʦxR]징ֆ^f#x;9rׁҳGH@oiEh56>l4c4qqrA@19|:za{(H,CWۧT{Y0QMk.~%ʐ "=-XVYb0R>jG+G$,Br+:n:mQKu:Jpke!AL%`fë-ܯ!8n[IMITc#B畏֘ti8 =$r@G~j'1]?t7MsJ h DVznn%ZW,62Dui|}Ucʿuj| B퟈) 9`R)Ƌvo/>X+ nj BEa'{X sfLȌ(C{IδD`sFWQeP ̩!ɱQۚUpW9]&`H6a0pw*l_kǙ0^}NlG=#Xܷo&FSJ{*ԟq{WRE֨@谇jn_Z-}mIuw4Yz⠎r>4Ґ4P2X21H],{aT/9 Gg2IȃU 9*rQy9a_MC(J=z//xf;Z%oPxh V Ϡf99Z3(k <2%`jĥ@8Mhpid@ԁ 9}pU%6;I@;zjC`D܈9Ǵ.sTOL./m/3{F( vRKX D )Gs2A)1$=hf%*;=+fp;ю=KFꂾuC1t*wtWBRv@A[R#2NrV2AƊ0CUGz:tcIr~$UP^=G/ En܌؃9L]~ b0X_xk.V_ O+HT<Kh+ZTpس+>VQc8^fdB r,<}e`h3rHJf'rG wcPm! +~o7" 8.V=]QDMՏW}b;juPoJL(xsN9CZc|>5ݚLJsClI8K?U}39)ZKP[?*鬃Ql1g?OsBLwj|LZhc%ĖF99[q٪ hF >X)\uU  ,9"5^:M"6YGDֱd@ ǡ]jJ" Xwd,+Ū R"3t/Iġ2hqgdG}!>] %D8BO|;]+4&,~K$N9sQmgoáC7OO%Y HCjoTՀ)W`C4B{R2/5GAIsm\5Y>h2$;{ug#=֛u$VPDa+?\rrg%p/c3gPVGd_@8db ~ŷ?: AWbkXvu1S?"(pֹSW{jU EaΏnIZ%z-d Jw}7Q=)x(p;N~Wm4͝s!$cIu&٪T!uZ'PlR>oIqzpr\9M(j`<*ptм"S)س%[';w=36V:$Tmk].7̙y/1#_qC9 k4lw=˒ZH&v>1\Bq`ݩu 0STUR#J>K2EKI!HR$pSWUT蔌82@U IbŁ"{8kWKvv>fgc"vԄ+|ξ8*@1rқ8{>/x"jն1Oʋ6RxT{{r)Kbo=f'2*AϲRx^.m,V `AaI)Q=y]3_oV(H8jn/ۍ%S obGI'ZmA*O#y2 n-amlحB3> `jOu A_IeR!?+ R_bbӺ?z9(mp-i,׀n.Z:o4A{Q[塘X&Z0;A]9GS0_W#rTLv9Qn" (LEC(;!5,xv.tFfq`(|zU]l|_B5Ai# K'?Go jʹin[r¢i!y-b І38m:äz6Z˗:|Yk5%Z38W[]Ӱۈ" ŵw#3ɿ2B}|CV^i623EEڮX(⹴;bkvuЩ2_/xmjŊaa &o59h X}3ۺڪj,bA؁>8]m\{(;6CMAtuVPU挰\Yݕ-k0[㔱A]E#Vv,"#1N΢2žgM `{b#WBQs뉚!Gy)pw49Ցw{AVBcYRuÃyy͗C; O..kx-H=0:s|^ԤA=GL8w"zz=F_D0ņuggOj8Nby7C0^v'WXuB\xܐ隲?i;E&y>//~pmdzWj2ܣ,W S՛[xԘ2.}g"L܃wE*'O ΫoCL ټfTqz?zN؉oByny ; h"E_O5{ i| (1Gb| |t,IQiȄAcKHH1(激n[nCO`o9ȄWs]:itxY:Vד3PG$6ouǪPEKzT u=Uosm)ZX3,p^ytM#R ZB%;OSi^Z=+UݾL"u>#-ap~Dk|Akp !'(F-l f4+b{e˵ q)ȸc;zYK+qE5}t6uvyֳL~\g1f o(){Y*?Vt}LjY/Fy=+pRU@ _%/r"-P A:\Y1)4ǛhpԾ 4fq\rڈ[ʃN(.O^K|*blk(5NV$Lp1O)eWsj{%X8̧JMQ#ӜnOUc,5|ʧP5!tM}!OHa|dAu5RSi"zXZHsiJ-e\z=<}œ_G.^d|w(^h'Ґ 洀}ZͼqM/h}k:SQ4UwL0|/͞/ y5tTC.ŋ|+yd*T cj) ÎuQ@w~3' }dc$M8M2woSMOʵuB iEU.ڽinfծUƱ3`f%vI*vx5YѱtH`l%!Nl؟ӮoG9 hb3WK&JPQ>"BRD`9vko5R]ҿGvhhjJ,Vv?<scb9^Œ-B0|G1>&Ȕb-p5rw@1&lK?M`40̛/DsyyJ=O ho[("L|*Hblmbi39;Q@J ?pgDzc\iХF9Guve\RVRiiW#:ɩ<1mH„Nrv2ԫXl)4P\,q}むb"j`[ZHR;ɂ/o{MF¯ԉkn0RC$v}$ >H86=,Kc4or`a ?Ȝ~o ~0L|WJ 4ʎ\&e'bQ/zr2:}sF:>Z6+J ( F}Řb0MA8.d^uӊE1rx\==O-%r@%<.~z!kqiMrƵaa@0g!W=ZڊM\,;=͸k~ ayW{kEV.im3'$e}g>"UBJG+*߇a2V -a?R::7I2"D뜊 )́t,қjm7T-.-v>na䋟ԝ~A3sOGE)A)"4AwֹK)pŝHZ|~o!z%oƾi[#K,h1`=^ȯu#p} )Q_4^&;[6C)zH3gLJ,"*)F+@Tg`zjh꼽2l3/Fx5\=ɵgWBIJz%Z;m,pwB𹿩<]rC~ylBIԸ-GxKhޜ5Y+-vj ۮp7+Rp]xJ=գ(۶}FC 6N脗-/ב |y:T;Ѻk?0py}װb1]8m~Ł5noiccv QkOp_ɰlXS {) ٮr>Tܥۭur+BI砍ߟf9L/V"KnI}vỦ7t15Gm f-Syۊ{VܻBEtLɣ\KjP&^d{?>9n jC7&ŇWA_'btlkgD1Ը8J{QovoJ!f6OOKoL ֠4YP \0XQ29c"ߣV?TQ Q7|SD!-fB8 Q^Tjh WZơPJţBujbF٤}HGqHɠP#kJ )&i~k'x%S2oO Yu|MrpX&Wx<4⾂J?xɢl8|{R}&+%Sӱ( Q$ԝG;Ldt0IIg"9>Ѷ%P(Fxͼ#N.̻=mQji4ln W%tȔU6>oC`[ۨs ژjdUxpAp0!LɊIh ?q(X >E#<-"FDN&FڨOtOh)g?h)> IVbGʇatJ";e70V Z(&VR(l.o8Q-S঒,&9_R$lAhd|QG~!hu ZrmT Qk<|Dɚ_ScW6wNI~R͞cXkڻtQ MJ~g˻N%슡6?0B.vɖ8&S:)Hh$#I.HW熋e%B9K*h 'phYǣL2 g^GBI0 Om Z4mFHKuhAY8 >b?K8atkbio.=,2x=)T4'#`SL@ #+U=)í~X iD'1ieMrߥtM3 ɦ}pc&=`ЏBmrY%6WGz* c.O!GвZлfqѾ݈;jd1)ȹn:lăI7vf},0~-N# DFwL~'FFK(pz'1HbޮVł"\LB|M0qQ:/zbh` Fm$ApڱAR5!g8;oݕfoZfsstgbx̄.@[<:!%, 9lJt7ɍ‰5圛F@ aX;"䩳'&.YMoZ#aP$]fq8ߥ5gNv4SKbB&J~HcQ2h8O$_=V~hVX"w5S6;xsV& N`ybFz*KG@$څaNog$ysԦ̋$-UMYHްATd In9"q*B `^즀WjE>\+ [C&:`ϻ=o?ōVNbv&\ɗR` |bVt=nz`׸L=Y:uj z.{.T/=<E`:{Zd V"EEj?*bd4* DX4?/fȷAs% ֚_m9kg}x?@"v^Hme`)t{Aq}tb-ia{@PcHd`u[ rޚNĞ@X>?X'b2QD(W$xsRCn~e ue@zԪ(H 8˦ I]%"ϢWd\qA58X'ӤSdGT'-} FSU5jTU7Q >s>Cv c(ΌE3( Wh١'p K]n| ,6w h8m6> fyaRmW!b!fJ2'䯄L ]Z~&I_C*!0*el~oG5|hd y0Xlȓ5&,dٓV3<' ߠ!!"bKytRpP*lhYS/o-J)jWxvr:KAΣlO\{W-],rSuOxza =xf($4S#g 3+Db,ܞѳ^'qKyl]yD\HHiMZf/kv8!~@ٌLƈv277[gUVR].ۮ mU)4Aةir[YfMckͬt:}r"\طې(< @&r; wq6aBE[P=YPP4S0H7gDW-2vLPΛ %'>=&9_'~!J3۶{`paYŃ@4FyBwkpɣx&"Z .0v!m`@w9 "Qm-<4Pتe$r7Ɗ.6LTP:Gu˝Kأ,=~tQwظHё)puYrac;E' `6W@QIWCJ(9J  $>z~(@n .b͞d-:PFG6iTCBnVk~*X~%{͐ˌKPX3M|=Rf1 ж'P Q@SoD ;w[ QSY5J24v1\*vZDtM!Es:X}~ 2EҖ +yYwUY{ &wM9|{Hz[ 4U#i<+CbaZR%4opc>19v`|):u5Y ?t{ @R7g26%T,GWdfyhu6*gvEO-DKcŀя4O<>Z n8'Gq&3c?ky p443ea)q.Rvqz3G@-|I`L/ _\2sص*9jYAd\rd@~F @c GQ,UyVB|pdg=*HrhM~cWX <˷MJ tmg FGI! *xpcvbm]lITQů>8I9P7N/;:c. NX`fٱdA4+˒.H*Ƞ?M/ե rmt9_.מn;FKK~pc tKFɻ15Ih'A2jvoVӖMgJ |bWh%N"%[n4+\aBc`aH%V":&)O>_>RɗY@}Im?)5Zu%ɍ]Z֤O 0c:Jl@^2 q{Q7 \Eo!sSͦ]1J`΍7rG "ۏ؋쒝fɕ Jg"(غ"NfRV <9֞G3&(#A<]ܫDEBah*X~C#;s r)P K;l$Rii+(B.Kb 30Xe?V%i#Y#̗Th :kOR/x"vD]/X,Ϩܷ6< Ϲ@݉_ӆ+> ^3>Lj|/jHXnpkS6MX-_!e#}5f+YAj2=j{\9t+e$\Gd(*p#`TW{ny&b-.C&ɳ/滳,X]4Z*2)pTb>YnrYJAKԢ=u0 =\Os sm[o0$Z 7YЊA v6b}kl)(GWY’+ll͆ $AE,i:nVtڌnSy$ѢhJIAA,7kf#+N߶&ﭶ"ט\@COޤI&2uy>]&h\pK'{I k~SMa]%gt Ən&!& A+od>4%5GґB|koS|-fD3ƫpo暥Υtx7ܺnk[Ox bP"OMl,MR`{fC ԤϬdYP^Yr N?z{YBM" mA8zp *pf!{_3߆!}ץP q[ЎRm[(Vy5{TD_-V dG}va]JHUE( Wŏ!B w{IT42Me[6ESnŐ(;J,Q r'i,!F2 U}w{DۤiԊHoKa7xژs" ѪU=7`xX"4 gW&Ͻbrd! V*Q/4a۳z8B5f~6 gVe߆D0>a%Srg*(UT0=&h¹?B6-9[Eqk?p%$&U-:%8UPfR79b lFDT)"D|R~8֖-[݋(4nA\kEh)[U2/9ml^uCAqqjOh> o=;j7<,%%p7lNtjf`/^i"z!T l߫#|]0͋>>ʵ!GYCoVyvdH(1iyVS]:jɢpPP^y3FpTl!7WmЋ5\BlFF`CB/vfnK7c=p>wFP+nG0I%6fMܖqUbI=5v o+i4FHKjW߳4 :IU MY ~YGm#viIimŻ;v%Knx 6:Q7wkLDKŇi7C235, c!#u͎>Y2U^~*$5]]d ;Zc >j-p;-i.`ALЈ`J~#*[~9SvkׂŬ'͆^7ЏqA`j]JByg2+T虥'{EQOKYp0~4A sʣ &ɦB#' ũ:X$Bz]f00=fG'_Uݕ/Rky?C5fʀ z0O2njk QCs(т'tkÿٶm1K4swa@Ձ!}aĿ +`ITrd@5{2SJ4T%}QX0?74+г1: uU3tW33P84fA;[}mX^ @}:U!wdwx+=lo2m)dw >?L!9J|z{ԣ2oN;V:0΀T^T\eb-t$MB?I"k !p$ER*Xd`0umLeq g{8[᪟0ݑs$LaX cjeIn62񓩮0ꬶ_C#RAœf]^BÂJ<2JXn(8#':0fdաmQiFM`ͳ\%8w5`ODo50 |H٪(!hmّr[˸K!*Ze!,@!!B9O4ާ G)z/`'YJnϕ%H-c̞2$݈' 1-N:Á)+Y}Q.5kwDhkxQ,;R{[lJv05eb0‘{s;TE|/h8p׆`4ju1v%zjw=XZub9 fT9 eXh aApU:PvղЉWA Gփnl%n[U3F Z'f+E54K>lp ~2Ɔl-omXb{ _w))Z" u-0IIo!htrS|}Q2@dYOvezW+I,[aɨM rS-㴏oNxM(h^h7"q 0iy"2S):SW!MGQ C%Jr]dqs#M|g~S0=-O˗-/dRtÌ$̸z[B}YeoV ˙|$q$>Q$l*<9P5 @}Ou+3a<3{kTJ_rx6'NO2y,卣z4RQ"43+Œx,՗C4H\l+OxVGaVNM 갊ƂØ8_ZI'٤ow RAp~&k_^zA!E>TS(}2b bt:8V{qAtW;ؾ'|%vscla?Pw7:ك d}c-@HA9ބtLLv<6&N8fIq,s1p*+9t$^]bD ? JU#η,76Gi84 }zsx]*mޮffyJޣ/ nώyR䊬`agfazV7Zue%Ql0-ϟMMwC R,Q]UE:%;|]Iɵ.^ö=DxB.UxNTܮ86ڵ!RSp܆p%"bLgz7vmTP钩+aUG=f5jSӺj/% }/><kGu]E W&hKucI Я^Dxa'$=,dN@̵_S?UdᳩoW5Pa^׿Jb%3hCRGR:ndd`׋ W"3_ղG .7hضq 7\˥~Yt&ݚ U6\u!f #R3ߑCsŖLe"'e!՗Y{?ח4F*5D6@v'E&Dɼ'2 ҁ;ՇNMS |h @8`QUz27 U$ʏ͑j>ew`H &`۬룿feI]ZLJF꯱iV%>:k-K1ŎZd1`K=NCySr}*6pxaVĢRMf9Ԋ:˚bO.h]̥:*kAs 'HX.s&~S{,#,Rsk2mtJEXo8߁={{.+i3sܾL{ p,ק?a5`]x(4%ɕ\ZӇ~`/MX-Ig59&rCg ذݢ֬QtXASb.i[T;@"ovoBIZdPz$+ȑ֢ e _#0j !VYH9M[_˳:䮇6PVQ8~M!a?Hȡ QK.f#3-uhn?Fڥh\UgRx;zfܜ:f obXt'Zo:1\@| $bآ.Zq8KFw-Qt=b+c 쑷ł8-d#YAnI g9IpEN6*LZhۿftk|ExZa-=TpLߓVť%k, %0in*}&^η$[8Xc|9v 6c>a>ID6yՁWZ܎L&%7ɏ[T>w;9!*Xf` M{Wcë 'Ν.|Z?\D(+<{i=kgm$5d GDgcepʙ}KZ^ I<ܭbE*K';2`=[PQ=NʠF$@<,m[ ؏ kv|*fb*2N?ɇK}fβB"L/v%y+ImC-mZ BtzޓK8sty_ODnH*xATS7ru,>2 U)[Ql~_VVA;/[ߖ\!ꆅ.b'j!@[߯ :~m&E /-g:CemjELoa,!el"uo: D˚gII4X{k,0Yk'nfT^|S;V9іO iUg[_܏oxbtPߵQQ5mTRl@9_3N3 Xl1"5;<|Cfbl(g]9HʷࠁjdH]w!hHeɑ$QC Ws$ѧ)md%7,PKZS4< %Lckﳹ9;N3Y';YaҎ hb=Yկ /R<\m }}TwkxGBWOs@ LC'C؊8_ws(#P/溕d*: %NqV]|lX{c; Rh,mE:Q"sUg'/iBU%DkhHWQa|GF,P&GD1'U`*f`.Zu6~"-[r4 !jOq涌SX8 . )[LWobdSÖ&xv\#<}F'05 L~T3~%n^ a 4Zɶ߇A[k$4Vp`/IpIU>f9ݓ(+7}#߂}U*]2x^=^O,joU7*[| q{h>d+n{71-QO>{H׍aIրld:oϜ]k9U9-q (xhzv4-k3&eaZWmrJT@ˀǂH`)})H-Ff pzP+*1-[H^D!G(5I<[D-JeوC{_}D 6:Q#mPEo kdG6s(Oϻ~f :o!P} iKn@/䌎UEB뗝Q'p,.3R%"RowG$9 +/_xUuxj/]UJ;޾N1i(RqmO#v7v͝ۈn#Oƞ{9Hi״8ɀcmpëŇ€P2$e%) wƕ"n|7[f4(,ozXuUt{4ͳ`+<3u n'418T4\ZBS!:doKyBC脜WĚYr l[j:`+5C9à5Mm`[gTFC\ٵR7'?JU56pe0)^-aVc W;L|RL"8v9if!Tlw}7r4ͩ'LdPȄgt!u v }ke!R  $ߟBeJ]  LA"+lqMʢ%Z&>rKlv뿦~xMjiNHd~"MBM ;8iL{F&bVaDΟ…稜E>ĪBB@Տz0L=>gStVhM1z`#yCa? xϼn 10ICu~K)6 oʍYPλx'.B'M*j\=R?E.D=R^B>tvb; V"uTaiG{ \p`WrL`/͘W/$Xx.BaGÞfbb$5A_m `}Iu:ѴwnM_v`̝zFҔ׸?{RXWoyHNC|&(A %xXl$LFr& 3qwt; o`JDOO3ڀ!Б|Si[\RmYm"$泛J.9U2ުMiCMۻhmn,kv}P섕ʢi.(OKk!m::͎0'2[JXc6"&BJLg yoTL:4=ڶ̵ƨ vg1sWCUJ?ԁFy-j u^|3 cm>b# "my.KpmR* ^) 9^7Tr`9x875R9mxF$}[SiZIAќS:<xUJ lHQ/BT>oQ ?R* ? u".pDٰg~y}N@-"l@H@t^c#Y: 9K*?_[4=xq/p$_Dy7t.f| G@~A+eeLmM_!1 (8h$|?fܣ5aծ=㳃5|tS١[H "mAOQ%Cni2$d&O-P z=ʕ}XbCnw[4Q60P<.zIrkUN"@eKo~Z$"eꁣBsvEt[|Q}q;@ 3הQzI~])~JƣOvDox0>l)}z0[`0.t[~CeJ}|ge=sLI1( dP.TXJŹt8ojEAIF崜"fiuM"W*2c"F?E6ӇS?5v\BLrn38=:K̷fgx4l6|ytJeR@ _ɖXwJafUdyit+'D⦭&zȞ[4k)Qs@-V_,d.ԯFTm΢JhcC'n.*x})Ò/ira::ͬzY\0^d[n8E ؘfVc\)Gd[]< V̍#S2-y˩h6],$wAĵR;B FoPAx=Qjr+8j!|tM1Bf5kQPQP]pV&r ld|iOnp ju>|t \iEJS^8Vn8yJ.uLPB&-ȖF.}dg R1{㣤#HL@| &sشP \h}X *XwQSZv:| ѢbYQZ3ٛ_5z?9\T;^l/ yFmIU[فr`X 獡Zu3IErk|9N/B'4[mO_košckSKV~'@]**0ΏKݑ,bF؜Q6m/DqDX$,1ڡMS) " Hլ!ȷ^̏x^ _Kn+ֆR*pEk?0_sxI,v:txrX46VWr9WULNx}Y6 twjEO Ow0@f%4 d\E,V8umCD 6(_}¾8'}ԟ|Z@v \$ɹn/+v6[ZPD0+6S8Q8T0sTnIF!* 8 \iM(`A~dg6!-TA]9tF A; e/-.7%>= en;BJSTNb ˀAҍhOxl0!w$ˤEllO'^+iޚ*9{\=L&c@s%45̃GZ\|T [PH3$}׌peEW>;zOw[uRIB%tY>t]cѯ2(gT.J?oa)2]^r\o#olY X6cVWx$7?GͶ1ӷ7Cl,(ѵULN*l\C"sb E,!CT^:'9#cvtMF5`n5D PDv3%OL4x hhCec[=}?L(tRAGё l&!EU{YH- C edki2@)pS喘,<fr!i8A1M u{9W^:}V4;0/ vqL YIRCQliW Py[sJVVN<;1V+ 1r\G4xisp=&k 5=AE2>j :`G zZi5\1rkzV ǐk؆mf&kmrRvDD\2S="wWQ\4W#VL}9Bu{P'KBrNY&rYY1k*Mͪm74$w=s;2*uǰ`uCbwXOx)ɢ>~:oED#+]> 4Ihr3 {TEJRS|ӣ@'E]TQQmPeQo1}B}?wĠRRH33y@^CT N3ؖYQDfv-co2)5O5m_~_4>/otF+(Ȍa@PmrZоKq \l-|q)74dk(`8['V4Uj[-_3(>oBF]ji7cGojFO:ۢYpMԵ#UF$\%AA+ b 14`ė>ԙĖu!eRV1 xUD ~$Q>=H˼MW;7r7~9VaGEæxOh?.I+4cm9MY5I3#( <@k .E(s-08ۓ!i5FK)>^X?(e #$ԛUN밍'Bp:& ~>IT-]f^D9 P'rwoL7$ۆ ;.:"c&Y2D.\1R~-5^9]Z_Zmz7ܚ>*mlSSfi9 tjTY߿l? @µx~#7Y_ߪƒ-H~4|)BsZ7"LL!Gljl7~Fi +ʂYaDuTu&Dt|3o4cX׆%] M5CHfuS7 4ř[TTYE c#a<2wl]#KzzmV[dʍw//VF^.*D{PYf,fƸA7U' &vdmyO'n߻%w2sqA,c#*2 d ?a^)U7]ޥp(,'MzWz8i{Ų'[<DĎT؁gϰi/4m3<Lʪu0q;xм#l }+N3Y\Ot1bF g!(Y9j7_Y "}U?~nWmJ?c ʞ`te׌RBaX0=msp9T$i[rO e4G漲ޓ?8%P65}F@Ab4N\G ^ŠCLYԴuUљ>YAFT.Mƅ3@{Bj8ٝzgTҾ*52)ϣY͹Ɋ@`+/'zs!%SVtUTBSh2|>JFHRx=]5fce?PS39X\f"6tK@צc(VFzjnu=^}E}IWĩH55*dg͞33l`8գ;*<>~ʎm P*ix]W@T#ON%VV!wEA3ѱ(lĉ lnbz3ӊRL 7 E"k giQwgb QZi 9ng!OÚ!d֦eݰmmX@Sݢ|:y8<|b`ZaHB; I=+i`W@srQgɳTA 6LVf(;ؕT]4zgwc)gߋz:D]%`` >$L m MԯB?i+jUs{['~" Ӝ"m``4fBHHv4R HUUU$;HT' ƝlJ!e~gTJ; i!VK gT^RO?دD>F+' a|QWވ>d椣T KTUu ]tv| Я.;~UlLqYZ ¸ndp bG{gJ$FDŽsnS`eE2d 񋄝(INf%-:aaw0G˭?l g[4%V/P[@[/ gJ퐲_VO$ 29+;_vYTnYGRu Yy{/E v|$C8lj.kip.%n1{-7&+[)9R3g- $)!DZиhZ׺Q ߋW7lŴ:3z|:qmlG{?0N V__.`l^ߥ-؄88(aB$1&UN%/א\,5fx_W jFؤS0hbN}nөg?in<˙҅l665snir˟h WET8 `vdX-rs'J?F33˄ imrMeK5zeʦp`QE靴X'EC-_b6­] oR k Jk>Q1KXZ/Xs9s?bp++} rz2'|QmO31 !6O#ѫe^Bq"Ƹ-ulXNl'EAeyȚA P$&sNX /%29a X_Ub+&1 lpJm͗Ǝaĺ$)}K2L1@)9yp JOľ%3;nap@>X?M%!8P4)4. y@Q"5ECN|$)Agy˶M\87Sҵ.x4x#I҂o7`V0X ėՐxdef(ET>L{*Gvu%\K4LvA/g034!b›*wc-&"2xAzdaf [ T"ɓwjSǸh;yh5"oiȯ!tSvs ?o`nXN]N0Q& 0GT4kjcaow3fVW p\pSsEwnPEVέ)(ΟCy:RؕAR^&e̠>lº"\deț`3|ϟvPm4g`aD;j|̕j?S\by n>hܫ7kd3x"Qx}3^yCjo2gkkЙ Žz:)m|I$wr&2EqK'%R8Y24=A"P~QywK\|tsk$sUʿ_n|V| zu[ /șkCƓ wy%^~^-+Yˀjsh &hNFx-p~mňdUSr;V&%T#)E[-{nPv{z AIM˜$KJ&ʅq95:dor"rdT*/Aqr2ףޅǼm9K룜Uuɫ'7&8ՃY%ռ?I'*(+^6lX2t7زB07_@qe$qv(H" "TrYkrꄤNXqG-+"偗NbjQ3i -;isQH=AlbVǼup7JEz!#8C)qɝ54t?\6䐋Je:q;( ?QsKuB2l 0|CO"m8A' R &xfv9ҹO( J?3FVzUG@[.*2'EcqӣfeFkj2,*S arGDŝ_4B> >ͯ.ݯ2c޿FGYLYjaVo6o)-登x"%/r]HyLUt!<6 mJz֟u%)\S44xK;IK1<1bd?lV\?\&(Q֢SR~1Ϻ:v%uSM+c}0&_0U.a9/,^i\h@gqz!DQVk/Ҟe,^ _-PG+-86inVn_KA^*7z]~~* w?} 8M2i)OpP=,>xӘXU#FBH4R%@eM*2Qx'B}vk؆Q7rJ{smӼoFS;C'AIttbIMG&t`і.urPBIz@hYv1jUc^(=3FPBT:U]T5𮘒qh¾jeCdfVȐakqk=k K'_-8KAs-12h[f{/ewu;Ыi"̯"˽3͉0H9Zz,{0"&S=4E!N_<'LbSZMJU11˨gͳVRDJ8V8mN7%\ټ MQ4\|J)GASs}^X3>}wZIt}'OqBʀǵL)oQG[@njhlon7p»=WK`kn1f0{@?1<>uln>:$τ,: YLs-Š&w~kg)Ug'AuSOC`ݡnqԌ2 jt`JXUk_My|DHoVdO,ψm^a"Gz p[>E$oca%)[nwT;v؈ZdgiĆ/ g3Jȳ f:j5SLw~jW냪ћ֔((}V89xL]^uNe e0t[oprNk N֟*n;P C/qn@pD Q#~ܮ0=JZ[' &nUbڈX 6i#T8ϩrkQ mݹX6Y< NAj N=}-Ilm2?Fr芢."W%G,Jߤ>uq]Sўx \gh}xyqK5nȾz^Ξ`ǁ2txNzfbS)Js!$քs{h>$0;,wB8/6} .돡zMvBp`eσ]1X ՎP`\T6L1H:iw(j.o1Fɶκ iš_яܧ'RiCliO!>Lb'7*WS(ʶ.Nr]sĐq-,Gx9y h77Փh ^:17R$ڳS͌/eJNʡߙ"1>$w /M -iq)]eGּg ^gyC)ucd>1,J Ըh>,PG>n'B[|hfNP.fSS㗵!Q$77zK=5SHj<23opu <ũ; lNܝ鞦#pi\elR4_2S,NM+k\ֽTIl+g[@lB4cXEQ!B=]DtZx*G#Ooa Pʾ򨼛=5(XI:Nv/鬒",zX?}ʚ t|\~.oyPVu}Gl/s!2=Q$B1#X&C<#"V\\y?h=Ef  ||NVsI3m{SXkAݎy0aQsX,֒F[l}9_XY{KXa1w{I hhYٱ8`یN~qdĘ'jZIZ]Oܚ-˜8ڃP>k\F>4-%닓hlBS7a%"mM#CMpW~Xr"Ea)S>HG!O5j I@8r08a=yR2 #xS!z_Lqb5V5+hCWZײpCr*D<sHl I(/8>Dܥ,FrXXb2:h/2JX/RFPٳ'd xe/|nlc+Gz#,(kR"v>gW#m73-ꀁ^-¤*?q-9Qd׸7[=e95QUԆdCGKYNϔZ֕BrQ=j#}# e8bE +yRϟ!aø"#H=䪬& moLWxՄm 5Ls6Оqh,4,1oJLA]^947sDfJBk̮(e֞vJt1^ ͤ4셅T߆t D,r$Lސ@r\1]. Yh1 3v3RE?Z[YOr `SZi') ~#.rJi/s'~?1rxDxbx( Ɂn<+MJD_s]6h{TqCx.q]|ŝ5<5VUcXʹw Rv;rxp@_p6c">`ȚB&ۊzTq@ρmCU ~(}=*bBHdD-kngGS ]7Ec5O5+#FB6&Q+y&$!E=c2AU\-M"Bq m]l$IZ2*ʸjƊA\y pt[rf;m)b '%$5RmZin:)r>E܌V5%};^4w0b'jpIAl~HuDn|1$ɲѣBDCJEaZj9sK$JNcCĒ8 X0OĢ[[,;@uW%W f96=X-|@?߉vIDlYElMCʡV4Syk󊾵!+D rRtr]$1=Su30yA{TaIXX/yz} %dak@ ÞL 6]EZnzoEPzw>%fLX `6Dzyi&tz{jZjJ4E%cZViHFe A"blU"٬OXBw x1iq1Z1~= k/tkfbv<7͓Caf(V-.G|b!\r96+ -ɹeݮU髊W=nV[ueNz~Qu L(#,yGQfKbqq`jbwC'y#rٕv({| Jlz-%U5 uumEnkH$6lhuEWm;I)Asg[*z?~jUkuK2pity?ⴂ$I [lb~a- `{DZ&[Ԝ 1*_+.MEj=|S1F~GZUp͓eFD[_k@ C(@AdFtL }`үA!mq$~]{k iR)pVl\wR}ҪkY+ &'p@P21 S$- *A1̘wmᧅE9InA՝NCf v`YCHCCQsZt"1)B2=Pg0CyeZ 6W9?h.Pwpt`bKqpvE;/w*&`0QFȍbz8[̯Q5{#`Յ*L6K:YWE}h# >wogP{*%yڑ{\9d.o(L)q^oRa4e:oMg:ıNVK=6I 5M2v),H6%2>OPLEIHƂ%8ꈖ&z(IW_ REt)+c7Wufs_mN-bv>>U,H4ghBfr Enq0h9>ֆA/qFQNʍ_fV,P# _Q8/~_75i|şQ~iἲ+AVqD3)x ilw%wrj&:fl/1d-:&2R BeG0_ 7VoéS.Ć m}~LvF$6BHS`WMPeI߀^9kIժJa\do(~`6'1C@`EOQq4R%\>fqddNyS>F>Rr瀃jX[i)ܤ9"MFdAf+z1 xpZ8R!AKx`  }0عRWR~:kDlD AEG5J""5V\ ʅG/3 mNgeӀ!RD[鹧RGvʉZ4ΐeۚP5 "r Ƌj2)/o ' ސڕBTkM[i$C.Mmtw38sXaPF;7@dHҫ2 Zچ_VU{B3ʨ9W@MˮnG1#+YZ`uBt0]3D渳uAP)ٙ4fU"0b݃ȎQgYkKj糖AN;D{Rm.&# - K8}\<;-гS)cSrB吡f^z ]E/ Qw785o~BgU&w' {V"x~cؘl ۱DƗgpGx "3elpXNi1OxOgQRraṫB%iTz7g+gwm(O ep"}n{z 8_+}vfEZ  C/ozԲ96'1~Fe1DYy>̥;ÿ% PǿHO Z6eP))zCn GWn $oqrd17c4Ǝ`T. ܷ|p NS+Vwz~Q($ 99T+AKX P}hu菫*?+Q[*yǨ`O|)dh=iVvgc!@G@jx_u[9z#F2cхAZ`3APdp?.%‹Uzj2Nm,j!z &"xŃK0wl{,n_mРG7*-2կitr#?>Av u7 P;' fQZF}l< bD(A {q Oot !A{DBs7dJډcb$"~&9Sx ScN{LtV?\%W{]$nd-╷+oAⓕiWm!;t!U9Mߝa/.4l8RT-k䨎yʇ[–O@N$a:>nc[ dx k,l &V|ڥ neZ|+ ^hy ̎MCAI+ nC>1t1LhbN  'cIԵ__ a_r5BAP4Nڞ.z⪜ĥ &<(dT۱{萪Is'>di! 255v"g U6D׻p\;=d~ ׹grb5=T ꉟ˷Uƛ)gIqn9^k=փ0>~/!v>Sbu\J0_rDX1 g*^`rڟapKľ1r+˚wi,n7a3B.4cabYx7cg<6Th8Y"c>& " WҴr$HoB\373΃/P7J93Q'gq(}Zi.t(#eȶ_EA8T+ebXz_ 2Ry~ ABZ:+0,( D+ZQ`aR\ӮL=mq3-Bd47*I+rG0[Za{k +ذbrayA;$gj&/:|ݭ74-$0 zU[qvdAcu}⨿n&fA@?bt_ ޭ*pن7ԟ5Y&Mzp8uzQ}?EIi歇Z +^nT"IU\iA(5%1'Զ &dV"cP0XRfRN 9FՐ-z@2H/UIĐ5 '2ċJd2%PMh{ hzwi`.Щ1F/{^]Wصq̛!5 (JhA&QCwvF#W.RWGW[_@n050'ݡO/P- YkAD Q8aCbb4]ʨyasuT:Ń&n:rEٓ-;=ajr^5(ASXC@e*F-ĕ{XS!㮊:DI+?nvDbCW#$2Æwn qQD,tEM#!2g&d2* iv:GoF 2f $N*RY5TrteԦdgMƸr8 |GfϜ%AAhŁ **쾓e[K4kDW_,Zpe ڜ 6]Hd>D, }l|\"VD-Ǽ~;WV Kpa9VHB"3.>#?`uX.\rkp 2Q>5'Ӷr!y3PDNY+V֩hu1.pJ4#'jn98I;Ae*J}#M׉]ւ+Vmg\,~Gؽ#QVůhxRF:m*,5L4oV'Ƨd3ݻ:#SiuXmh?c`"1# v6xI6V뤩00S ^R-WX|hV=6wf=#':wc zSpw}|]%7XwvѲ*ytSr_e8֬&ѝ&qʄHS&g=:stcCȑM:QqVEY+ 5Ow~$@<_yR:1cN\MQAtu)ux9*0ye(D FJ|CSESq>vy̑x$ &hQ1Zf$o-[2|yx;E/($~ V' 0+T*VI'5dccBH`/7#7tƮ\7\ DlD)ᓵޤb)]yBΔk{I`{4#_1h'8e"ק~2ńi sЈ I֢I>Z-%lkh7rʿ-M?;C->.v{|dܟE8y<_́N+Y]`MJ?>{1*$@]%M{if|5jئ۶^F9|,|fm$dB\/EkF>@.Sn)Y;k,*], > W3} YxYcw*i -|FR]1[WGBʮVc:v\΁P1IS%@5T vnέ-[uI7i4CEwR1$^z;\j" l*eis) a IEIP16Kmw+ۀX phzfrQgd\t E޵'`YxL+> Sb"&Jt)۵h8o9"YȡQK#QwKj̙ ^w/@0u-`⚘O?8vq5'Gssk 6\=)M^. gj0/i6TPH3ŰB6s7͜a:NK~cvt]~b\S !){ "DWbg^IFbXUէ(a0opz/"Z5rGD]o3R @P{ i:br6(A QhQiT> dGu_c˟bEwb kc: jkHyj_M4pjcOF2r2Wx%G8XN= xQ,0C"4rč`uGJDaIQiatvg'Jlt3l *J醵7să)vcba&BssÍb.pzwz@hbrR++afot-< nl931M;~h:aۙ4j ȋ=Xm<< E!X6jH(G¡Hg!5Jf@pJC?颮v".Mi1M(|Ezң+6\5Qv\uRHQZȜR_ɬ9#ԫ~(AH쨵[{a+5ù-Ruuzϰv{h#>Eˉb3>^jm*#8_󛐀 hCH=Iݽ+w*W^« AQ}2b+w􆺗'pMsm\tPHBTםvƑ-o" F՗=|;{ +ZWy]:"/ $h(G:rAOrR\G6ZJ!T`l]yy=H]9 Vۺ쨝}?Y)ɍؾ@e =a)lTU LW)\`D}P1vm奱 PHbKQ{iPYˣX> #UnDWMJbV^UUKH=+wMwnW騖{j06 `47Ȩ+aCt6M*;GI?Bd-͎ c7~9J5p##6m"V|RgA%LanSRױM<؝ XB3v-`T| UyL 3w?=Ss}%EZ5198ڪ՟,,io%2OMȂt_+6mTkmACŹn-n嗥E;yɄl~OwpF랓s85HoT=t^flL3" 9^@ޠ?K7A(vk~- Ŕ£8GfWIk(;UU.R0-CY6qB{xm0mJ3j<NWO|tD-9U"oPzS$V֓5uL?/'[G>B0(8SbJ8,j}dӖ:=uE7Jo5$uݥx? yh!4mj#S6@Ǐ1RpD0]TU4 r1? ǖH?sҸEC2;cڨA"ʌ_7Rq^^o1=@x< *nk(pi2:;.L쥃zrfjtVw'JMElwb;/<@hyo)c~V̟m""$ ɷסw?nЮ"klxhȧGsc.1樺/?aG:Bϗb~dP`0]H:d@}S֭nqz}I~t3~/ۈTH:V2Al} {.K^}T@pK9Ĭ"t`ؘ s7 YB%C;0(-KߎU* kꄅvC7vsH.\@qx-j7=x3{_vX˦![Ph0}L.Xuvv[ l u.2`b@R R\!B.H)VN VVWjtBE G %in-tr`l Cl/\iR킍zS*#T_nGG<ѝ:~~u`&@eN2hKwv*.{ fuhyR/ū&UD)bI>g&v/D *6G$ЩN]|)mĈDc/#Z'B: j_ޝeM=3DFY"Aj &..~h3NGyzf;$?qu?T2f;9=Sp6ϰKܾo㻹5.8m@ gy̘]#d !#II} mbgILHT}x!hl;KaS`=fo_S.k"r|Iᠣ@ΑJ< =y0;L HgTK͠(50J+_ƣ'|]5luQ*.@ [QJ9./#!4Nwt@CI;W"#K98!6tӉpgU))5@܁ž.ScK n=r}i"6h`'Lڤb4BY˝BHw~$:E d^*?&=z?#5MTJSA鼰(?BUi'^uô c8n0(0O3_`Of\6D KJ:;ϴ4V)adGtp2gJ/}uYAx/o0lKB'w@|q¯Q2Ma8Nw֬a]&Nİ|5χ+M=N蚄yuYqb%%h$G4kxdQ3$:G{)NLРذc>þl! c|Ѓ.KbCJNY1fVa0@#ps@}hDg<[z.kN>U8}8k>ZƇHRVߞkct+H`֊[є%z刷=no3;P_e軜?Lg EX*pe9J䇬 =4WT 9_o 6|2^zy%p|f*B}vۙ}91!}Mp{}Kw> hN&vlw2_ter Sh7)WdZVCWBgQ[e,VSBK đTi1YLj!DxXWX3r+1dwWʂ˥,:gj ctf\iL/xB.bOU烍 A*<l}k#_z?ǩ&ѝ! NXxl]0@6Dxqʍß3%}ieLs-"ov7-|{>?`6-klI +ɬ}t:@o@T@Poʹ~BNRFBwC/W ɋI!.kC(I@ ;7DPT߬QJOkd>8^)~Zw;k?D!|0zO 1/q~)a2L5RxL&Y-ovHvL3R؞ T>3\& 6<$5;i,sDi Ӳʡ{q rTF| ]pP'{Ek ]V*#iOKh@޷fm~̶ó+ºPB[ E aq SCck(d6"QgA"NY1>2>weyKM'g_|ie-t^Fg!tQrMFrlNY0*_#\ERPA'kdp߳d@'fWLqVxașЪ)+vB/HRSS Cz9k'UӢ2qC . RG2uEJ:zbص=o)(ɇ$= [?r hVWQmҝOZ#o-#|c# X {8`.NVo:h掻P^ VٺM$C⯱5h3(ŔY)|%o>M8 :Ix a2{Ը|9:aB C,bz娮p>?SFL3Xߟ>&ٷp꽚%n- <RUUw{e\4IiY1NеδXvՈ`Բ( mB߭yJBԳLTJWn,慴)<6R)G݉z:("n7@`l$.QfyJ8ĵ>u`X~u~ wo &rBXr]wjƲ~/ǜqf5ҳi~׳ٖa\xL'e FoܢvȼlO[Xe15HcKOa>VareHE1AEO}Z1'? ib6)_JDw1l]|.kAwN ooacI~/Ѱe\^?Z=q;͵5-iGԑVzy~"O<6WR @?S!1&G>PƇ]h([=;Π C 8fM`#l$YaEsei]z7돯' k uO{]gȶQnumiݍy8+ u"ߐ}Z.QLԦ$Ύ#2>] xOH]QeȁD{$'3*feRDX(acEg-7ZW}ˮt&k̵X_3玤I!j /g(nx]7ㆊF`adtc@vU !-Ƽp [`PxPV?6PM]' +e ۂvqU $# /rv˭CMT|Ge#2@j3j1Gڞٻ{XN'xfOJv@Dng,Ɯr!5͆k~Z[ ]sA4i([Gs Tt9sE^g,sd )Ҳ @Y$@r64@IC]z-F#Im~AksnEE̷. X|2)`-mA^j3Рmؒ,+|2kد fٚp+dl ^ Rb qLd=Щ3/%2!VEF]tvbbs1b62Q5 _'=A&՝j =3D/]CPwԫ=YмB'mnRH[r[5ceO[}rNfR6e)&8,>aATĜPt;2Rz,oqSGP|&ynǷ޾.^IC*ؓ7AHNBggG|6 EgBsF}~Q֞If ]kQHjGVоLLda-%]غLkU㨙G#ҎwQ>wOy}= C|Xݵ)`J m# _ʢz?[?oV *+m_&i&X]3]s9VZ"IW~R~^SxQDҢlVbo\M-EH,yAn\+lMR !yfA S|Ǽhu5E~ՙe}/]ײZRJ7ӟPՑC_ɛU0IaC ߚUlL't6t Ob (+kc/*Š.Ea(5˾vf ɹ4;%K&S*h5m[#ֳp!UGhuSb8`jvBp/6]03Kiqpώ9V}.H@ʽnP4$5T ckY,Z!$,H>G;k+n+M(/"FHOߪ/:JEhZs|5K9slA lh~PjS>O4Q FجmШ]xM ̲/V+6~uRviͱ N;oj>[^>#e]N-9l1ƀ*"Ic]X9-2Z~{X0DGlΓgIu.XomL.}&[[0d5VF| sfÇA؇\ZRq3Adw B!sd֔=@IM9$ﴘt9A)ii;wBD,߳h鞢 [!.t6¹m %Ҋ ~Ĉ+IaSUݪމ,\"$9 ېj S=Kďi~dU/1w,-KSe9T-U4㱟A2@r;k"̣ 8#鐭ӆRYU[J'㷉[Ƭv[(Za/">g7z^;ɹ$wZ9 ]p=hƮ Ag ;+0J>5?~L/z]B,;}"*!=աnZDs euffJM2&1ŏLF|lDiA;O'dS~Ƴm$>[Y XAi.</q-a`RV&w1@4{Z+d|nyX2#A=b5,[ V51nLE1"'n zb ocRmk 7eK #˄A^m %9$7,bC"p[s> sHzd'1強>+cr?n=Ǐ[L򱽹?wmTPwqZ NsYń ~nlvkÜ4-w:Lm0U>y9(Y6? whGw[1#keiD7h>:WTb &r.Ě'tyxdxS|) B: Ԃ{^ Č˭Yag}yXT>z85{‚^z&k&2ׂNk 4sBc;t=7stImoa,zWͰ:ymso*k]vVЊdYǐVyyvEN ױM3%tK-q~A) i/i^܇Z2A$y8IwOn_:($/>#@/t;ŲnM<:PB/:ꑶ!0*}s~I.brT[漁q;/PZ~A)PxżxE6j`[Ҏ5H{.nh ]fҼ#Ŧ߮q,G?%d΋ib']l T# q2Y껊e*rN9 1L cGQ_ۍ)W~&F5>"2J_`tJW b$"\گTxLIj"BH-`ϡip7tS:L& %TiV\\+%kKBO2*x5ZD>[~`@4SX3\{|<}gD ECW)Djtk\3Ӷ果]p#| g䴪R. / oJF-Ay5{yLg4?| fɇ= f+ -^%ӎ]wIݬ|m, MK-ZYؔ`TM! n$½Fq͌Sϓ0aRkPVt*d2XL1]1ģu +]k41Sݼ=1%Iq)cx| {/NW/ "aYKz35{ȵkѯތB0M=×PzD?I|i>_* ς:S1vQ?1\؇tEU׮T/I Ow4 q0fE0<-uuFqq嵭z pHNKYM1Kƶ-6zӝe(֯h,دhVע.rcFv /1c|~eO+\& !ӿN} jFvV_OlwP;1TdޙQNX@.@tf^=0tحYrՕeja(~p6F UӣMl?,?`8T57uq:^lLp$Mi\oRiJ&p?\F"<6W+OǨ?p1~,IuK'u|'Gl"}\6ζHw V, 7E,>!x2/$t6z k\HGv I>X3R?w5;3n@&xn!+ %hI&ݽ]U,U4绖*Mwp{H kkt3#p3W;4ۙO5GTC(aS8B=Iޭz|Bioa(n.=׫A9\~e_ebSYP72ʘ5'boV!Posw]f@b8qSLS[!]MEJ#Yه#FlHqCQ[R@Qk[[l Qm)^B9^߰l" 騿N<9FCBRV(@`=20B02|{ْPfP*>pNQp#vӝЎϙ&G֛UQ8G&p-MHzE`WpHGOE>K7k$=tٜlc)o `eA]eZjIɀ]%6*ۮKsD$އ6 @=.P(Ven˽om޴}"Z)rnP=FPHMP[38Q,pqnTx* ?mm)m<8 u VTZ)࡬5"u`QQDĻ&i\趀?P`da 3aaAL{"Wr7JP/a/&Vpf2݀XM< q^ ^l AC]K_hZ;1%`q=GZ[Sܔ\wyEZcCY.|Vʰ0 tȖ(tl@&uRQ*L; =^7N, _c3O= xFmmT2mgsU:ly!='qM /xpOh9N+8]kb6b4umihyDV6e{Zb`&4$6cE0|H]]qHNᮿĨՕ "i0+D~x"rv=G+ˤuъĒG>Y^ ӫGq  #`5ǒɗRXʥ&7Q<S#G0ko6v^v4ھ$ּ@Lº/mPw}#PΨrL4nZtE}$7B@҇%B:fk(}1l&r.ʨJJ.PFH !,Zyp6ݘsن!a 1J7,p scB 0/ve= hKu?gx޲}$MMdC$ 0D7Ā~r1<ObzU`f/{.@t9ئ(*F spl2mh_KQE!.蝉%rPf Pvlp3]>:рmWGF03# +F!VqS)^-_Q\e)E}-ӽF]ԥ\&mi\64|`YI@b&T;PA'Ý(gQnVCl9"hHM֟ele͸A{q-r]PC^\8"}mcSkGEi C,E=)GkE0H@l0LB`u@AA@Oב52{dl{ zSF>(ZEܒ)&sަiQ:}}>m.CGٺx꾍O%Bc*v,r8k̺#x!V5DL[VXvf߫C.F ZH7O|`RzAt9 -Y6VqY [x۱.%whzrr_ d<>%ިҿUfcT8WuzSVן&ҧ֔ Hċ`YBZ;[G(l|?qLt~kGKSNEA2 #sh=h:ׇU:o:@1! &$ai0{/Ah/3b.axZgHVѰBh~g}"Bi1ˁϨ"υ1%u,“@9b/*Q}p5Υnit5UA'PTd`c**ww)o8{u)5UH+җ)2~RMe|PP fW*-琓 Cg|N5L6ɚs똬(| U&=\NKɌcc< <[7#OdYv䵡2O8]|cg(`pՊy8`nO?8^O<˂1j/%$|󆂞W0CX؂OiІGSp+@_ w ?]y2Oc:'o7gtv/ icfƞ_RF$]e(qCAشa]"_ Y2b,}Ѕ>kW>lP®jtWTEP%Bq*Wf{#go >^6o$yS|p/VnPB ֙ay7,r:~2r=hxqPei]Ni~QݹF ƸT?\j5醕 ˦%ḶA'ugٟE{F&2_JR* 7 ~,2wK>=Vq+S!ng_T&D [QNCuzY@Zg>h JȵRit_Ki\~,CQ#- RG v;!vl ] 4H5ǖu a{Œk 8}Q./ % d<B+߆qAS 6vNjXAUJnPlzdnFh7nF}%>:-e@solL-ZKn0Q K Zi1@k00E58$i8\L_KRSK[ 0PDe d9[MM43)|! 'X6S@jqY @u'MV;Ss'0O82j3t˜&++1R i'Wf=TwPߣn)n^/fp0#$FZp *mr:o;^ "3S?8y)ntcJo% ӽfFp[! 7uo - D4L!1+)hS涺ŖWECn6w S$q%!P4 G#\?N jux]ũIKz̍E8=Ɵ7 sLDlˆ,v};I( #({0NϽz zC^A'eo|+*ysDl:тHuQ$@ Q8v'60>:a :Ƕ10<'gI;aB!UH<dv|{1N~=BJCȂԹIt_~{iс>ŠUc0ciLvVSJ6m-׼ʀźʏļ±d:ѡ'v"ucqq.Pg Uͻ m:&5q/9b¿./rp(hth㷑Xp dL-xxE8-f&?1Jlry8")2iL['fUxD lKwtSgq>&-K[*Iy~=B+ Y "P] +\rh o&Ž`cBԚ]q6|U[!eخ1}ۿH[e$qal/2CRBt|(j0uCdwI,u+ml(7bIHQ& C%}ڗtͯti Ս:UO%4B\؀baKW88ǾtIJTCɲDck|buB3?nȼ.Dl\|}z H{kfH%е\zN+xK咛' ZW$%9[,/g2Ng'D|B!vk)4Us¤mQc2LjH.6n~Sl7+\7'ن1=V;`{.*;% AXUƇi/(TI=rOkMV:"U)hNAd:n@N:a.oҴs_1@辰;"zK8wYA8cܙRԠr6 A`x#$[tqcZ8^kxjq+{/ jcB/]HD\* QaOTZ[k(l "ȑiQ9kُ+/+$T|y/v4Waѕ Zz9SPEa G FՄoC&y7 e+s`J5zغD@g]}P*eJE19 7tPDZ̉hOcZ]AwZK b:'Odgc@!r!<>ص'*vEG&Ȇ>H;s 2"FudzŚ QbN@Hwo~:Whe$X#Y9\$AbdyU=8q3iyYp\Bg}WpXyaP'o'5?')BkTl^p⍦h󺕇:jK3m%I>''&E`䂵\~V n46u u /u%/R"RA NEiA Gr<-O@*d@9زot.SG߯ɿcf"PRXCN#7` 3QdY|fZqk] (.,kܮz C5pK`ҽ߻ĥDgAOyfNtqbpnE1+cŎyR7;_vAS|N5˟}7z\(s6-fy.1k5t\E]FNHͭb[|ծSܝGx 㨅+K!|t)qs,L w_!Pa`dpE)A(gn:NɤP}K"6AuD5ĸOH;T6xg A?^aަ0]$؃% ٬izNTikF?i&U!hWO^*YLPBoDFwu %y++-D|Ϛl\H^³䕽ߑhtw M古vD&I&<cXV!ƾ4)&+*_E_Vrf^tgcuHCJpKwDW:s;E *+avXY\jCeR K  V \W4HuXWߊgk|,lZGOHd; ?lgaEa/8&z4|I g̀YE:WFdZvy)~UYzt%g&bUZkJȵNt(uj@4ӫA}W:֓rb$N P1MWk{>#-=-ONs%(~t*Y!6]~v kE[]/hHN=VA~ntm_]M^mmt,c5i$$+FXAVasYPu荲^ҫ#6PSIlj+Uk}1%Ԕ<ѬDfw.o_`Kx#\Xj=J"|*< rf{@RdnL"h$VC; j-ϻ"1[Wk@Fh̊{>a 5fT2쥞G@ֶ0eT; *7{Jys ^k.|%^b捙6hĜ]#B<,Ak~싸f{E5sy_IukbF,@`rqD cM &5RVc%Ea+^2ryxe{gzU+uZO+/M>7a3Vf='gV>=(WڤiJ/ש:g_ ,jRk\ W:_@!PxyF?ZW5!C[aW& %G{~tGő+R(^] svz(q㓮|]FB/o3S饭 ZlB9IZ%B.׬.o urP탚n7UX5z4zBa:z$ ܝ: /X2 ^a:bPn3~Is_thy`B6\KY+1\7]$򀤈GЪҜp@mYkH``Pe!{IĿ>D{&kskܞ$)MV¿.w4)h"ǂʐ*i*@e3[ΑwKǙqw-UH96%7c|s,-2 evӍ=6@jX ykd,?b/'6t3,,Hc*h@7#"\;,j<ń|0ͣb75oU*b,/Z#Nz;)gj2\g,p/dNx銟FN0M:P7CFKyDfS e%&%]?߫6f9M<'QJ7 \y5̺ Xm~A|,CKE| +KgzoE:z)vM\Qa':D?ߛnK(sEK]&z*?nko7eDBeYYuu0jև{!mEIA%>9&~+,GPE|"|-?:x{|W/b($2u$݀mVRVPgrB+ڃPzKD |1?K٨J`Y4clmhkwʓ!G=D;v}Ɩb@ -Ju Z"RMi7|nJC[qn?5l0w.0]soֿ+)YdCy0 | \6>rp>?Wɠ%~?3_r/Ңu #y*-72&6W|'/I5*&>Õˊu(_.AZOjྻg( O1 DgE{@6. iA<1̫%ҋ.*G~ *73\U([]m#^lm߉c;WppJV>,9GJ&)0@w1_j["F@O*A?b4l5ckn|&ĎqOe'/^,EtƐͭ)u6> K c1]wPӉؔ4\!I@< HOm땿gBnOl"|߯5"RJ2őUI~ Mdf(>DCP=NѵE::oP;  ~4_ LTv@+Bߐ>`n_Qr,-$?gQsJn\YE!-ޥD}t /1kcq|Mϧ4(ԣg3oFb\gj3wJ(9q%yFakF.{ǫi!!tIWQ7Ibf0xe*E%x%װ۠%Ur*4 ^"=5cD#'c ^AKi6?_*:`7ѓDj{xwb4$GLxC ks~Hhfe^*{L])];)E|]>RklH(TI kþ{Fz,هsUtCǻ}@AȑN=xI=qFt2mJO"#'/iDt!xUh'V_ + wZrS5d6#AtJ2n~5 dU*oy4EBy,E VBny6Q4}Q] ,i?9Hd.m]]At'ZW'Q^۬z_!d0Im윌F%-~y9*AΦ_iW"¡z|-YFKzt">I*aq#oX!ʰl %M?x'ɀ=<8!̃! uZԜTh| 94:/@9%6ͱ-1F[\I>(.K}ŎR:D-a +|$rBo5ŀ)zUc\L*χCK5a-;c2x~S>B\`zU|O.ak7E5[Gi(s$Q'hz ~H!H[jssn܃_( _M&d)%A4~+9ɣ"LpcJfјc6V_4Zsc~#Ƽ(-עSSS|=V 1Z7T_}d!= iP+S1K%;?1u_/y5e>4Ev̇/&g)N{^:GwHn'ĉeX$\'YKqtF%YkԞezk0c՛ͫi;=|@v}m4QA6huDdUnrYFu}!aSYs؛ id+G/K2:i|&BX_ӄxDFG+JZJ)FO<ѝAZOrFf=[lM2tit[V-qRƊkI7O9/' Dz9UB7,K8KF-U&+B|F! gUc y\W'D;fVbsTA@_"(XMͲ]Q?0.lG_[7~**3ï@<lL:#Yg9v^,÷6n*1&_j|`|"vAYibeAk u*3n+9Bb\,=aPm;N3k8YTRO 6QeϼeW/S/="!:*@cJGfLj}4Yh+Mf.銭Eb7iv"{W\!.K /.DDWZ~ʠO_y ^0{ihb gBQ 6ao7yR2)JSvgj^%ٔ:KP= _V+|,w6n];̍ czDD% h|X Hhazqif:eoe$M2.tn$ 4u 3ea54v%75,E<` ,x&aLǻϡJ&LzE3*_c 1kg b2`x r Ij*?<clG|0_`O" <"Ϗ,[CEՍU79MKkޱ)$P-gmGlk^’#_mA.8\G.!X}i;G#|E* V"A済jc;rW&-W0n.r)ݕze^LJ&ks =I55y@!-LuNPL [ r1d뻵 se]][.SJYC6s|4C?Dpß޷hްKn%/čM:te$Q'3SL)]Bl!7A-8eF 7- c¬܋!:E<,EOJB/Kn[G(񞉇a>3U^ $lmgIu>ѡXe $ٳFr٦͉:sٹ T&L&x!+|.cZzWR7')D%Lv/u,>ϫ·jp=}'nNAt*B!1Y<+5؃#;qhXTaʜHyOn*MS+ 4dH]PbGعf&AsCJ&Lp+2eڇ+Ta McAGv'ac"Ŋ"Z6t*t*xΥ 5?**S<`VJIG2"w}$H.aCt-ZBuNVCן+;bBm{g7Ն<Սb7"|'')vѐ zjpYEiL`zJf5bY v]$DFT6:X> ?%ɹͧמlN=1 ]a2 !Vb-_(->۞tI(u3<&R5L lU˱A=V~x]GI%LG~ Tx"*W+tnHJ渂}*E;FMb1qfr1MzD~xĠB޸7V'+ێ& uǃFf["a!$OV9ep<|fuvŗFf#;<\\Vx"4^d"5ጛW=88U|܌_q 7W^v)HY50k"r{r!_P Zl&NrUgZ302~%3.YV15XVRIL "OVU1x,7/Y: `Z8q #j7#j>ՠձvVo:SISiG;+$m]6Zf=խ@^>Ms$Zu8¨bhhJ&I)[ Fڙl'ĩ$z,_G%fɱjK0 \imҧlȦ{49ԽC{S%"}!{zvX˝XUQOX  =hbwO+ P(P6 03m&>b+1pHy)Im3=!)S|2eZǐxx<B" n" n&ʡ~k#_ypTF,b9#`'mfh;؏6^<׌6rʹ4*A'כKv< =ɇ~T %9 qEE`8 fxknN:׌$yr>(z  yȒ2S'aRj>Fۃ tye$F%/ظJ PdLU :]vCgXѓ.ʷڟޚmEdMf^9H'"N5ZGr+2 <+U'~ \VVpYǧ@t .=ɵ\}DvR[ǎ4\9 p%9 P*Pl7&{- qMΔ?;5?ݶ OAN/(Ul tgU3VNͻ1eCX,;%J6݄Wg 8P/=n~)J;!Y@+f#ޙr&OUf_22~R*_Чc0:)ׁyMXHjrc"\ ^C6;NnИhtPubHڌm]LyVwXLˆy_SoX ˄uP])I#+ڴY'ʡ_+@DzV"Ϋ  h5ގSla4{7q4vMZھfȎ{ ps!gBV ߁7tWF75`&sF3n\$F78Km[TYSOA0C QcS)s#'If=6C[p03Pm7Ȕy1NWꅼx5{߂)qB5l顇rM!mQ w$bPS 3}Y'=۝AysI .KnN-q03y7Qzb)pVk: , p11H6̫+1ۢٚz軭@cHj SdN4mbeLMƔpϫt$rƘJ}4<$(/)2gb8L9߽s*a݇nNkB^:0CK%'O퓭]?c!*]*~X\_&3~*s`m6[28Pn$-F x8Jr0cM +5vM ,WFnOk$:h+;oJC!,sᰚփ +pwB<FϰM:*os0`n닃4Vtiuxupl?TZpz>7uVw>~k7OGѸE|͚!{MzKT9/cԨ7游"l N.eBZFҷ³jҚNarݥ+w͖ɀ吸t_]`L- TXa*RF0(hك$|PetvI 1(sh_ df(L,͑G & A/CUóq8bnC=PA}Qj4UcU$ SZUh9(R -o_;(;\rd^_Xqaw'R2Ë2<?cSeDozDj=Ĝq{ snt;S|X7P/C8N"MU^sgy,~J9OۆAp3 ܊rx/2YWb33T ~  ~mÎgϸE| m63qzRw~lTO |j-J N9XPI}²bJqdҳ^瑸S" 3Ws9B{ƊV{wa P!hl4?4>M"i> gK+faul1vqo^8PT*0f A@A~#Qr4(0[$]l9I΂-F"qrr79^+ȳĞfOIQ )RCt>C||Ӌ.zB(̈́?ty|A` `]loKk9Cw^(w` +tcqLKq7"o 3QY0BH&6F~`Ǯ*E\_V#NfZ9ER}`lS ЛM^*𓥛E@|)o`5;ȲOyONA?lV*CIHWZrO&ME?^ rT я I=}pX=(9Š -Ƹjvce[v`%?l5;T nVSz\dF_rߚ1FړB;uoE}MQ̡O-fv) YcZ ߤV咰r8rc6sa;LrK$IKbp¼s~'Q0dz@AKѐ IA$U%Lўԙ Y4o8RIKK-Ǣvi6d-|dn~R(Ÿқ/V粒`jk$]u± !9d/0A{u(V ‡@SCEN`X@c|T:oQ—8\ W m>Nx ڼX酊. o,6Lօ,75lm|>)$eJXl?> vJ~5i[U$hTA~SWcgHB(nF3b⬭Xqh$s JNw )qwP> $yg6KLR){6˨eR-߻RLd6@?vQL-$ QetvfhxYU~pJ~4Fj6lK̀,vm,nxY[ew߹Y5%˔ɰkKt(bq oOEP$n$R71P`X?zO| %!f$ LPaiԪtUI— iҡn*q J&lijϕ:O\b5E7:|ARQ.Qa[>Υn% #U5.#Y(sg'W ; &FCW45ʚBӏ Bڜ;(8V:V'K2.cU!Z4뺸epD3E~I&P;뻖=:Af-o9ĿSPlsXI;3j0xBD93zO\{N6d9Y٤f$^4\r$!TJ&k3u -lQ9n yUkbK@M<*U(I PR`vSk K c(Pz6⇾8$<=]4V7rOۂ3B7kBr=;)!JUI,Z9:N)[#|ş> [@=4J@,/MO;i&.qȫ±'ut`֕4vg7y6PM Z`6 F[kئDB٧ȋ*.pJ9 (tk:*["={YQMT lrF>i7TU)չ|-Cp@}Q:>٘ƀl4pg^Cd 6CNt0yV~P_P ,7lKg p=5ubjQTA0ǚ3(­QܞK\f>O U nNbK Pd^G_X VyTZb-l/P2@b!#=l.\j3*'nj4h >*_iiLuσ*>oT@``O~hi^XgJ`@W;;y4}d!gPxrO@m_i}犛rZ8n:Ģq젨\Xfp%|k0Us8PɰOe+awex F i U7mmp+ӇГR( ChACCfr:Uv3初7MGK^Sq fhf&nؗo*Ҋ+ku1հ-C:3sjQ֓_hݴrf u/#GCqY.򑂟Wq23nz*V/it_O ys)gNe= 5.Ӡ5ϒ{ 5 *.Hqo#8j*ѹOX洿[\dYE:T_4*ZoKVGCY|w:E)ufH݉}U$87]@ dX,C8RMA:`5KCլ6=xEN#bMGi+\Sgx9oLL &eopI3e6Ng߅iK/F79p8KôU R@G˟0X|2[Ҫސ_QōWBe,G,$[2*@)g_ /|܆DZtaKV[cYgms6^Pۡ>k4\,R@(ӝG=O @W@X;|TaMcr'K\ ŸhNH°bn81kY2+/ FI"Zy}RaZڎ4 :hUMCzi2[1ʪ|H·?}4296Q|$-}n_0aSFxmnH>gysǘC9s.4K'.yQ@,pAUq̧ J싐퍃:oFDk &(&C\x@/jABV=S'9^Xf1m9vQNuT+1!v:9L ) " O B\?|.;]C۷ CҪJ"z=9Wg0nxjLoO輸?6%rjZ-肦0:b~ot#(aM]7J_m<XSLc2eֳ܄ ȱwG 7)^_/}cZ($IL,`M%sGOApj@B J!S8]wס3d3~ y$2_a^oG:i+3XESPz8 '&+bڊS`XoĖk\_/rwktWW߁$,)^8Ƣgx5od VCߨV||0;[ }BSxp!;1w?ƋOOa/ \mfz #x8 c!C O ^]F f=%M.!q=reܿI2ɻ&Q|QhB.xbMFtNFZZ#Fhb=kcCųav팚2~ϔŸ#if\`_b-=f, ޻kZ0lMX_gYɥ"K$̑ AW`71(A&>_行^vI7ӣIvtT1xO|CȂ-=YF@-LjA {$9T:GmPTZ9oG/0H >9E`ihר 49#%Pf7pz=-Yb#iQ}Y6eCTEHT#i-v$dxs0aa$yD5]:!YU)}S^LֹS@ڔ]: 4?Yټ AmO3q<~D `M`w"SW5$%zB%vQX>eeYUFݫuJ[[5ܶKJLҎmq$Z*13Qlsakg 0C[Q~u ckڭX[ѨItLS=a=?CDZ߀;jizSL&j̅|SK_Q Y. Mصap6i .b>cW~ -Eck[_*h;]\Qwr+"N_1D`.>?,56GժNCL ] XC>C˂lOp.̬E֔4[|UjppZwn$e CrN9AOm2; K[>=/ mJ2\-N>u'` ǫ-묄MmV뵿aڙH0"L D~4q8Ml W{(f=S%t#4j y^pB&TS3ɓ{؊:֭4@^)ͽ#IẓeIm 3{D.>+N/-gK~Zútr 5-V9qG^ڷ06g9ݰfM a7ȵ| u+<;a&lW_ĺ.dzjutӷDG#Lv_K k6xou{_uoعxhƥa+!՗&y| $ۍX9N+5uEYC3z*/w9 +m«8!=1*h,"4IH1ȿfw 5Vz{y=;.=ѣB-$0ugg @U3R!ՁbPSm M J71Cx6 _eQc9/݆߹ /`+WyQx4BR!O`pUh/\v5Ц'E?pPKk݄&]|XVsO u~vآҟGb@'gΫyϫ[b?T\3IGS#LçH|슔$xXbsL9OoTWЀŒC,`M" nށI_Hk).u''+]3L"xyjTd:#An#_ʯcF,i7'.I yW;D!Ow D,#>Lx>3W033 ~Z|[D i3_ɓlL)bԅ0J3|izcl}tW== #6x(e[$}dJ9O85M؃.])V>b^uʗȪ  Wq 0*}]vPUް~\E6׭gB/v_#.OڴkȂWbމ챷0R!@W)S,RnX=k- S ŭU?+"AP՜x̙5 ouH"o$-ԟFRI*5E s=_nZJT6 [uhKna*% \Cu]4RXb:Aje 戤'qΩhޠ"1y_{Cε |Սל*;WqIcIwZhB"QW "\1E:Bϓy{`(|eUS!}PDpMS(b3#J\5c(':M9a}4Ej<. oƩg: CGZn2 7ۢxxk&˻.ATZ/vJ1zWk-'u"I]sE53/R?7^TYN :HbRm/ !f^٤҄.MIxs\(,z O⾶pRpW]XŞpH)v$f%#E"wWt~Ϩ_ǁZ l@'@:s=+ \?aJ4"ȭ⪚ZDlDӇ'<Q5kRUtHȰ?u2֞bb3>3 ~>ʹGF`aC* 𶀰I Wce8aǑ<0FO!$mjĆPZTVI9 S:33CYTנ4V{ Z>tr1mefJ47Ȑ$oHZ]඘yYA?*6 R2GoQx㮁ׯvu )2vroAU=CPF"O!$ hzkfZ $?فhH+N(/+/ľ4[@V{>m@@'|DFda՚=Axn96PuN-* -c5oX^@ -\[RPa"7ױ{CU :D/},2zH{"A:$l&! M"u -^%3+ PhVM:BD0^?l?(]AkJ _SpVݬOl=^M (JCJj]ZW]bU_er*d UIt<2k)zͷ \FlVܐ)\Ma 6 H$r9A-5!){<_#J)}_ s1Œd(5fg1Ì[kpSq{$z4J6- JZ90Aɥ ->2Y)%s7!}L;C@97x-՚^^@]ݬD$: z[A Eld" }b J8c`ꂯw5t'Ύ^{ phWM.xXū".݅MÂ=H O},~$+%&Fb# k;P;GzF5>seOJ8ȧ+O_le<7t\G=+NUW{lJ}mo~9h_%o`WŪJk>> yKUAd{}PZkȤ8Wc%x쨡YF-`NYo#CBP*.8&z,ƚ^C]!&|a2pџڡsX,?-p' 8WWVQvz KR74+[_}F3BROsO; bAR-J W0 a ِ##&ur@!,t}^.OeT/a:|d #s6shDh뵞 xWC3Rs#rIonwV=?a Lh?%Eo*Odxc/"LOJ&\cyڳz-*zF0b1ak O֝^].3JXbz,ޕ ; biX}Cqm4ʯ =o^k cʊ́_}UDz  kya .%FJܭBU[@04!<$27"4no#SZE;)9R2C2|)ᷝqN!`9<ܭ=[l%?<΢ѮJ[(aDV֙%jH]QAI6ӲBj60} ^4L}95I^Ȉ^W:=/Gj&$?_Nޒ_"__miV ۘy}E^pGLN 6pLE}ᄎyV 8;機V6/E+Mʜ\Ki)iGshָ~1mT/01cC@ՓBk;H(F&;HSBffE  u@K;G;Qȥ![}sr{w|*h(;t7,\U'BJg'h$SQ+ӕd*IIl@Q8EKiPZ!Pfq!^G%K t4",L-2n;!Iup\*| wooNOOоyT4CO9x텼 Ă؄ƤȍIfZ-enr_S(foNEFv:N«*A]"";ȥ|(HaQ4|Z/%57b/9ymX)lI(:Bk)@fЮ ?͠f+XbK6f?L.500+o))XeFNrE$zQ `GhQ Wa: CSuQo: '^[i*{ԵoqOCؾ 2 rlmDǹfYx:"4MXT>k*b/f{"dO5bYHblB' [Z9{l#Մg;].39cH,DSr~1oI 'QbI'n Tx+.HE7 pJJ1V1,~qC>*ǐ--T<ĶD^G/rQ//\w?L L7C%8{Gיt$Zx]>e*=JSM(?D2IB y0i1p9;-A(Kء"Qf>k0B!Wӛj¦5@v±@AsCƢJ^́.bxE.Л4oa#Ln$>:| XKĖ^\-';r4Tv% ?Џ1Yg(DZUDAE_>k|ګl€׍6ZewJװRAgƱ dp4 3b;+ BxP6j0~Q(5o@r.q׌Iv ;вn+K]-pO|(eDÁ@Jod7;S؞2PjF#-' Ac#1^z',^lj3AE)!s`/.x9XMˬ.UEvLh|%ͷ+wzk*3}9oyD8gʲUě9 KVƈOGlɞK,m݊_ҋ #Wҋ;\qcn"oTOqDs_pș@ֶ}U8PwJwsnIw-ܫ^; y/ aoWTkȜ/aڏ|kV4S V<8CJ8$ 6LSFYd4~]Y9"\TB~)֪2&]x1n)~د=K۶W$YqMaچƷ=1hP>U/_^gBHۋ2WȀD6Ӓ"I,vm>IvGYH(^KvReF)Eop5}r7(67IhDycDHɇ5?n }<_G c1؏\JLVcVpb2wIPŹI:` r Yf j+MRc=S=#@c4Sd:T?) vZJ8Vyt lm;ծ1-CeMr?d-r۾:ʮ9_BLu]&ˣ6hN͗p9:0Tf/gM~5?|~T=v [p%Bg4VaQhۨr1fF?\b3Q WJNU s))SaVJ .68,px ;4)-U\阙 }k7 [(sbz{ Teb 'Fӌ>JkHڭ}7ߐͭ zߞ f, RXl Ix$f&E㇖Tr( *=!y'192&ry5)2=:BD›&vӡ9!=4)R< ]?dp`PCY ,tg9 @~]:u ^ ZGc@-bU製Uw1hԋ?(Q 䜝 !7!f .Y y}9Ri~lb̤ϻOҖ(Mvp +f\#>gw4YEh"Sr~R}NATF;_5+;MC1XA\RQTT{W{u/ZZwJzK龵ƱM g5zڗ$pS[ P Gz33K<ޏXS)⚮fpp/F<6p/j;\ j;\ _b@x-0Q _{=]=Bpm sV[V"SCȃ/?i BGէgښ!q W7? }y窀9կ#_t]3|r)'1+*#3:AD,5Nۆ#oUP*q+M>9I5$V`UWWnbjs TDp9nqЯ+\]6=.ů⠈Rߡ_+z<,)\g1 (zo{MF-'#LC2 ?@TYh$9{-ˎ;[!1q X2ػ 62fViӯ%7T4C %W!h Sot`=k 0J!0jҬ&^_2{|nN F5ơ blK޳R+}"P?%ΉU2\gZIJ }:hLCqJ+j_j]{!D5zgDT,j62ashzI(8=+{=w "uc>܈a)8vjh`Ⱔ&%HwipyO 'n\?Dib\(;R!Xm \S7О@=;2Xv}ǕQTPk;GQ8"\)YrrPUR &]pb^݊!([;ڰPR dž2^seCbPj7USw,pf==MA7ZP 4" ߟ?q<Qݟ":F>#j?F}N1Q{r~;œP}OQcVaD%[>ݑI`,Xഥ Wo94ft膋syM,<?ƚr@W\ Uktu9* 6F4Id?ށ1ըy h/nTcQoOϳVĈ+x cu:9 +ÎtW/uhy LnEߖ j魬j& c raDkW\=ܗnl?n'=Iƒ˜/_Du}"3*nSx.4\DND$ D2lt[g7S@GTc{eƟԆ:CTgAnd5[m>}ok@X^LG9fpAH 7) _tT<AnvidM1t YYI?@I#bBYy{>i@`KЎb-2_FV&rH҅4"J?_KVL8CgHKum|0n@Gۍ޺|UAOpVȇX9 Yے;*1';q*6짓⒭#dgz]j2xI,*+WwN9|*BKң*x}IMۓ{8K ƾatQ#Gg"O?%4T^>j,GG5֩a+k9#Ѳ_xBՍ_>1Bu" pcBIBPujӵf`OγJ&" RN 7N2e@IHcBO8ys%F7yrWI^29POT_o@x )mN<\yNT4!b~-;(f4IUMW]UUk^:U3":f}#ඃ !0E1>Kؘ3'>>AFda;J@Wsb$R% bWY{UЍ[w  AU4O~pɨ>0 Tr#9gJG@b Es[zʊc8mo5go\+ Cg֤Q;,&6OMYhQ9<ï2KsN+Iɤ(Bn`5%nqv14KOC:/oِ:+dq@ ԈHRJ^vZwmp>鰐0oSkHVo<;.jZqr{`j?IU ,v1A#ғSVFWgvԟ;Npynh„l5))uk҄D_ɩgڶCN954B+.Qrŭɠeų0zpZfKo^E:E у)MG.;IU@)q/Be9g$ tw쳸b_"%qs$EyC%uH1JԹ >k5VpOMp(>Y3C%l_JM9x'S+2GN 7%7d$$WMgw?\B:"ogO6z*C:LtZYp#θB1N;h޹Fy7ִs>SkVAYpC( իOwA[г{ q`ߋrmj5>KWuCq}4l^^O_uS ;urv9߾kqg3CO\, vcJOE]>6E=^;C3%m=5^a|P Cw_iXZZ *W)xvRn>rOqvFQQc wQ@3~(tG_DlB^n⠭j#aR+k8d 9+Q)C2=ֳCp@ϯ6kCd mƅ)2f9^@xT/ќrW# T֥Z=+ _!|=`N//uzldN9ԛ%WօpN"ZrPcF{A-oı[YZ4D0Q: FbbS[mȀ/AF !^+TC {#lQ^ev?K-('>V 7nZl*;QM㍆ޓCnv Cl PG)8F~vDlJĘNh [7t m_I035} tr"1r j~@\xRXdY۞RIvx`ꔊ@ ig;X?A*07,Ѵ@:0FNX ~_yQjyMm1RܕwxzW^.h\:Mx$NߟzJ+jN-#;kI(R 8IFT$&"d8=f\T-j`& /ui"oIha H'&KQțchب~9byy@^,(R83۾H+FZr4M}6娍dĐD'2-#SX1]pHvXmۧ r4MJ8pƳBaR#{4-oٗq/ !nԣ 2 &_< 輂ZrSs˴Q.9:\L:7ܑt-Ev7.~*K)vgxa HZJΑ(yQ5{UN9ΗH G {]kCd4' cEv_ϲPUdMl7&AVL1;-KVvO+\, le6 ?ݱaJȡqPYgi_[b|J>{pK;[jަW頂.]g x䓀/ -,m/']7 '.X"U+:IߘB߃BaaiKȣa|@GHm),:$&K 58ɣm@!`{px9S4tiYK6ِC4U"_m hn'xvqL9ѫ<k0e<.u?|@f/m3-P8uO40rB5+q6oyw%*;`ę;Bz{W:aqJ3ǎKa"UZʘ$;Ψ(E #q  :K8k e[LAT E fCpU 9Oi19HjYZX7nCQ> #H/&e21QpC>0oG-\INͬ}U2in])S÷%nM2ڶ"Cusya˭gܬh=ʲz0\GQ ߞp(8MR׉^@œa'Y !z-$ 4^Vw~ t~~CN1L|7/+O|%r[飃M* z;N#%Av 1&)pȮN[XqLcfHޚ-NxE:I]˼/wj5kz<-7Z}:J',CFȡ snR=G*ȵ8EryPju>h\=HR-_zF;R yv'؊jB =A]+̩dsn!q( )_jٿkycD4HycYw1ቄ뷕^Nh2z:b4`$a'>ö1¿A;v]}_TZLYƆxO3VOD8g)qaFٌ]V$ 0_zx 9H YTX5_ļѠb?(.mp{awWvi} w`O*^U\I[$*|0}k۟@ּ ;9;x%_/?X'e!Xf /1N"d@LUgsi%Δ79:Ѹ 2|K%sXB9*?Ayfo[u Hι(( X[i ET?~xl ͮHdC|$:۸uNyba]GYLwjb!{*ՅԑGg'깁[8!>ruL&1<H>|MAu i:8rwz%6??&@J`G9L; 2fJU+,=f<<PQ Zx5DdlމU|Ҡ_NQ,HkBܴ:ch;Rl83Z2֭&߄Lm.ˇ)=a<(3(aYi>̱;?/ךWx;`Md 8W1i =Ha&,DiC+=,ɐc )~{^.!uq]dᱣE"}^tK %XE RiMôFo0<nCfoW>Z=.@ ψy'S[?' p[v^!sx~Cթ69~+q4͢ˊDF%~2=t2pL:y .uzU&|aXϝJ` >}8) v uX$ u\au!Dd7#;؊,4[ eӬsj!*@|HH'v~&g9# '<{z9P@Zw$:v{>ŭrzlZ:zԾ9 EKxMfYW&mƒk͢O0=B@G.dqE̾cB:V}’/nUsѸY&{xL)*hyPyGo`hD* |"‹M~$GʏI" 0iH|'R߶^.!0Cv~ 9#6I0w|)H53=-;-oѠdXe+g@SR=~ 7TOGGNίsO>hoc-6'ϳh"vohz/JeL")=Xew}c*)s1ωJ抣\/ؖLBNwv{q1_-Q]BkEʗnD3͗“M*vb4׶+ KD&X^k`! nOh7j..S:Co9:WW+@K ,$C@D7ǥ[ u{{ Tp*v_r >+z % M4J>fчUӸJ3FLmH7Gr5x^ ~bݻZ/=稅 (=@,OP4|o,8eIQ$n;.k~bƕaP)ta{sb;?اr(N'ae G_Ͳ $1^غ]dg'!m։պ4ǰ5r bv\ 8';S|jv lE6:"lnڇ dr|+N{cn%KQ9WkK2Rf40~htsͤ3mP)HɁ# RyЩ}lY=&)@q9fri8@"E P:){+-@.bE,ɬQnjHesd_%vxE*>%owLӖžQ>u5;ks&r/m׏pkЮ3%z FBYY%u=Ny HH$w~R:*%9!)ŕEgME49$}ȃ_j? MpL=/xFWEӹKE;f,gw>t|ZUf#Cmsի MRN둻}ua)\^U,m^l(4:ɼ AVwzM K*?"VK*N*Ve8( ;WYNlɵ}f\H$'Lu R :l {.ł`%8=}MJB9^u4a@!`% dxI(9gKM۳#NۦWYx1vy'2XKB֚ c\& ԋC:H 3+ߧo!I큵6<VgwfWٿ41׆3UA69^AKoe vtBLݙ~)yasw )[< G~Yh% Q4T=%e<@a3P3џcl O@#I]0A;K% C8mY%/pVBDP;K0HA/:^qW(<3ɝj`t@ Y2e$+g8}y(:?Ï2Q(CΓOlJ扺`,\b[X1DŠ[#z~opa(zR m:M-6i3oУQ&X,*#uVi EK%_mYeia!]sgA05**^N%Ì{LV#pR7p$74ȋ!au F*]M"ԱG-8k)_R ^EZhTIĂd9>zUfy.1'iD'X^^qC78>g@Rx{.ޗQqhfU2T YzGZnb1@q Wwǭ;S-iItk(-y\!xRLVD?P$ Q19o0jP-;B1  khE fPح񩎍GUt5} P<ۧZq ,j!"אM+ y߬+'C/b-f#ye7Ĝ?[1D19|#"\f#IBO%mQ?K#협P]i yG~+_ 5 ݻ}`PFϮܱ.;5qI((9u~, nw^;*Y9yjcY8rI`7ki۫ l!n:2뛧 sUPs龁j,8A{7ݲ摓OY^BoO&6+.@q"F3Zފ, #G,[Z`]! RDky}e|)U|ajsHBNv5cFCCG LE7ԲDcӮGlzG llGGٝk}׫ϳ9h'Yծ|RֺE܁R:>Nza:|pVğ)Fd3;Ki~9n X;_sD Cb>*mbDs19}:%fQR3O΅/zmFIRJڑN{ {{´]j3|Nv⏿--$)"Erj1pOd-UoŊ`+{9D1p.jgc<$ +>NA{ِوo9Hw]U bwL z)RA}i׃@}E#J[I/&geRuQ#t{!] 8Z#9!QNJX悅nOMnS|;Y*YCbq1l"V:[w;aUތF$aTk~.P,&**=ZM+M\B3R-_f_5{6d@طi|8 BF9M *VF*y$28|o@Ua~G0^::;gbx6;-MDnHu?D\#)m+Ġ_?C ĵ`N>7έl Gq~Pj:W`_<`l4 *Z ;k8GRc FdR[|Jq(Y>9/L~_XB-"<`(ж*xwҗ4 x$;ØRi$7L|.ztdO+KSAbF~SYYÓ`)΁[+ Tq@a %2PR䊩)p$N$y&W-{]iC Wsԯ~H3+jtv9qFST*Q>hsBWbOTX.Jp 0-yΆY be 6#գnץjƾ2D='"K^?<)s0[(^](O|M{@q)A%&IJ?n)(ĨyL/{OLERT 怲 g0ڸH4 D\*7}=-s!t$e};3~ߢ3Ʋ?e #{0 wJ{vWx&FܷZ\dYhӵr}k l? jwC[ hwA(7HКu.yѥ Jkg.;Dդf6J*cZ@AdGCvzD⋍oHkL rj3q[x/}I*2:HɛXP "Э >0?5n)) rdMC%!! tؓtА}"0zW(CΥ^k4{둘(xvp&U'ڍ $;Ds~V![y0{^-vR{  w _S`* @@.ƣxaâMi[Ex6Ǝ;X wI-VFzD:q/ U9 580 ]:9/mΎW!<&7 "KzINO ^]^X7f5Զ0qIdOhm.",IX C` lSf:u  y%/SQ\]1N䢣%*YDZfyg/̱l"@ fkU{;0h" i#FVfҰKR3]45# |_s_ 6X@r,<8\Z4h@Fm' 5/PwQ>U,5teچ xW,TU;1h;H2mCw;'nxz披T.wWIPbC$R7OLPr5X\W.%HTih%Q,/}ƃ}^\p65HdmŇb+{LW!x4&eH΃:Għsya`> Ra/`OP҅{ٻK=MC\Pm~REϙ.:+%it஁5X#{MPphKJH uC݌'Fp!) B݆q@ndՕP"NJZtVi6fiY}y>$~B˲>ޣ-Hs189pQV s/e5* Bfдx4!hѮdHyb< Tˢd"ڤF֖Vh/uΰWY ӇN/%djv !$o?rN̘ôlUS+Կ$ NyV]ߠ޽i ,[QFwMG| _ ncM^Eiadɍ+' aR\}'2yա )(d}>`ta l,쬡?|Ci3lj'p-=%"3M$6ϨR_ޅ׋n[ww`9.=EU+U5FT[ [ uRX^FeՆft.xbf<^|i[k˙y'Bʣ}D?ܝJX+Dw_%D$ Riy @\!8?s-lˤ K6VpS5v ~:4${ױ>io4޶k'Y쿁72qlgWCOe7qxa0Aj.2$jAJae4\L."M_Ua`g"J}I^V A OW[?\\n؈73Ϭ+ͯ TAc(&[ SLbd DPf^g+fXف"Ǧ|ta3>Մ?|/}v\Pö5t8RSSMX$CYY?=c}Ls[̬G)A7RrbaNɲCv;j4Ϥq?j|42¾J@kN{kUrJ3Cpr˄zU4Y0*q}7ϯ;(/hag= #ۉ9敘ZM $Mݲ]alHx5rH*II2,͛/(VFN0ѡc@ bDs.ÓiT4SAү S@ }½-|? WGӍˑ0dK ݴtmHk쎦ضA.eKN9{섔/Sp]} ?E(am;ӦKOk\v:yzd u]P<^PW,Ǩ~X33q]C$^$6iVQ1~|MH٠ۧMBA^۶/#9I>D8Dcjf0Zal4PD|@saB~^hK?ܡ%: @Ov/tdYnȟDj`HQh T'{feWA9F瀂pK ~W m S< G#,| u6^xU>:hڶI<`5"~8*CD^dҏʙ߶뮘JǫOk\`LǦ.kL44(Duwcl5щ椅G)6T|Ӭ3߀,3I'B\EPQuٷ4`.;谣*!lY">[ fnI?;~3݄17j$fF5]NXJTuo 5|>(u,NI@)qp50D_:V+ d?Ӣ.\טL,|ܲgjxrRWkfjMzD>Lq:АgUPm8X m!%J/<]Q3p|qZKU #c$_pHTQ |(~Wu#?S6kLW{ q=7j ]yR苅6ɜ~{LKES~ d͑-S0/{@oFr˖.ȟٯ%LU3K砌&)){ܐe! ^-=e΃+b('z21rw3!iIHF4#j5Ǩ32*u#&.XN [[vڋһ2#JUw:hoUwjۈ3 e8ud1rplŸC.Tv.#"aơR:͋2CHrV>Rg8]0ύ'.1MG'@Ch >!FO5fqFDdYRL~>!!-cay4ZJ!c E`9ŷڕd@dž^ZpE$1֙|FK!Mb_,:Ѩnu'7$]eF>(q(Fʙ*_;qtM,C JU 8޸(Xlύ]DP=]? cl&!kF3:ҫe¹-TACYTa5^3* ȭ#9A:(x?'Yg݌si%3^ڧ@x+Y,P ?§[x HMw|BF~Hde(9߾ꓷU6:IP{)a=I,~:1;sVVr/"o lE)Q \sm6PH{{rNITXWodvt4YũCibi1G~k]n9jv1PPj[mg7Fb$Ž,E0 A%6@Pu;""4غ v1Gnm*m@J]3JǙsqާ_2dmؓ<?iբiWt@_k; >ZGJ͒"I]qq>ތN1kOp5Z(/S%,?B&xb5* D>qѯ~oervzh6lhJӞcŷMZ9}x"CXiBҳ{X `5GNLB`z/f[@ rA6">Y3S@[&zf&38Vf󲡭F@&'T= ¡!ElDK3@'qgug>-JBzwFٍ{*98kwՑll7|`yے%nحȂwBk((UeB"}h/=X $J ů&DG_/[}76ejۣ IN9(rD;'{=1ѕM>~n?Q NsO5\s'YF:zl_xi5=Cpee#$˼oGviM[Y,ML`CTi1flET:V\E1L>z NW(?&u 9r9J<y/wZ8N|jhcj#k*%+~UT̚d ~+7մqG 4ŏLN뭞_ bBS}zC:'Flx }w  Fxen*p[Kz.u1Gc j!KNw$jyEԤۘN ;vy蜛RBoSI5EEy8_JԢ(aVkwE^mb`Tu8 ie8 )53e}drr6xJkc^7Xx^}"/;Vz ht&_]'1R}٦/Y r![eaH r2Os񒡆,{&v) -" AC/ NDŀ?"P :'Zz  Jn^A~YR+ly{A~3 / gKMµT._G [榙P-t|/.Y_^ :9C()vmֻ 5p>Xa ~1Ibb.CB?LΣ=u_і$;Zv:c0bR+ߞr5޴aTl]#Q()1 wô b"Mp1T!>Vp'6MxT̤a㇛:r*BƉ 3xOu+-W?jxX)Vs[a|[ DԚTZ,l#%&C!U5鷙7i}ß*+8\Ѷx" ŅV 3t͂6PzTzݓ|(\zO*\W|K\~()c \Q=gI>C6c/9"DUMC[%W3FHiu@ &Sf haG| GRly\"S=ufgUF6+KsrFԢ t;fB*$s3)V*$G? 48!e |-_GKDX+lGwqS|ړ[4C60|D+pkMˆrd[i%xMѸ栶~d*|w+IBSo%>^e1`J`J(q϶wvON&*E[~?kTsKA彳q?mo5mG! 2￲:Yϱ1f W>f=Yc1R۝hz$ktB9ݑՌkzst :w@ؿPE@dN TwT@Mf2yNr;Xh[Kit 5 !gk#ڑ{j`՟ŏȲS) \ nJXd e#L`<%@Vnhs.^?ThC1j-hF5 `ͣlѶIDŢM<((H}LAy.h,[WXKl $ [圡Z(pi:w`m 6^K5u4'!_@`mDX-wgX/khϨ4(0YKX2!)Ι!#JǴ<> ]K|d_H]w]ɰ*T"D+<(X)MI/ RW;+w}f=Aqz`f " 9[`""Zc9s$"%7]C1څbJ4b5Jw #Ns:.<3(ZՅ~nCa M]= MFd7FDd&Co26=~-*:J9Q}Wv*ergWGy|RHEV~ ~'~߉O ~w]Sn PJڽZ3N[_CCi:k:e.#b>mG$]xC $ @EVS(x^ijxt~VQZǂA K݋pFw;Qs5%x_.#Jˠl%m(aeQ#OHOus2{g̶KyJ/j;t-3G_~N&[s J,X#1=3Tp܄GޞGq(vJ;eʊIӽBvߏZ}Bu(mcf}hy`rK;b]˜( |ˉ@VFw6ӽ8jN;,9@bЮ;nDP$b..ڽ\t _9~nG"QfpVҳ~ Pav :[Åmm}}_ssp]k'tXsN|{ ݠ:G:(2yNJ[7s8&؈Xsܑ" 54)!kmD:^drv6~SH\b+m~o($/6~, ҷd8=(7M\ٹ-)PjQ<#V-8C 5F*Xқ_6dhbtB]r8KaEgtMہ~02C+{-cGQկ{ɽ>aZ +.vs 'b/M{=ec@rǦc⮻T Ǵv͑Sp8_0qֱs캽v4s5&hoBAۿ>v6AKK՗̆R5y:iMNf]YltImLs6 o i- E}N"bȆ$d8nZD,ޥyrdk)&s%bdQ,@aB_1E5P]H @Ȋ!|]|-cI8 6 c\rVxY!%c{J!+W*wetqr [(+  3:dzF]*{I/ЍtU"xztE(D7AoX;O8CEl*I28Xv;@bQ0o>b˔!hqVt- w M3Qg2kZ?斖k9E'bhg>8G!j]JjzjfMGniӣZkgat70!Ѱ8awh-g[4vH{%Q]KtĞԻ5< QG=`{{аdk]!9$φkEOE-we6g(4NۊybȘ7jR#?FOBArBA{|.ڗYY*?P; Q%OT1% 9ʇɪpNL _gpڲ[Ac9һ$^RotD0!qG!e3HVv5 tśCAۉj2CӰ#s(Ԓ饍Ki.=bu\h})#\ިXS;*[YMٝǂ7cKxJ?&ېPW.n-HSPKJ:,ð6۪ m9|vMk[5Wr*lMD' 3/}nzEo_\V^Xۏ֤5Я ^1 ޚˁ\zWU ņct̸^.F&x67$AX# Tt!ZlLIc2Nށ\&a>^:HHD@LVV4fv;yuOwvqڳ<-nO%#)g;%Y4)HtK..X)AA`j#sT &wt I?=IB}{\#Gn+a#g#&0/Qh{uG`I4jkVўو\n,?풅~ 20 tTX= 4زOyu;߱OVUC:KH>}-V_~ͮ qXe;Y1]R&DY~Bu_'C#ƪX?.n)/pdb7lQA ut.et+QuZ1Gj==f}۽7- tOlMPVg[ᛦ: r-U #\y,9^Wcula{/|i8R&TaO ,`peZΐ&S٩[3kλ@~Z9|ͶV?*eW Jbg/ qq;ߊ iQyH_2Ly#ݻF\{+x忘d!eZIW,oNeG:aD[r4yXp-b(<%h {}9TXZtr/Re[ziýјيm!~iP\i(3\–xYx }8.&KW< S9xV~^zfO*y04k&.x$Z2 BGx_3J1"Iیe?d2xt;q#~d?|Jx?a;#'CXvǢ $ǣnX6N&  S,V)°L3κUx64ەڷ C;)[S~>p}\h= ;ט)Y-"X.OC(<_!JAg,8W7?U0FXnB|c!'F~+$`l{}vvpGi&Zªn/i-VM'Lzr~rzmy\>՗;|["j ۥ'p}J=0D:aDHcf=M\*RL=\rkq j>#kiC?4×Q]vxZt912(tg@ڛ*cc}%{q\ T5n؊eYØ +9d?`>zLܷF[S'&_"pZ)R^eqTh8pjc{˨܀ ^D-Ww* 6m`EcѨ~ťR?e1z~""D6~̹˪򪯄?_foVߔ磒DF(ֿS'H1r~B7VU5*H*2q3i?b:D˨iD,E\Z |"3O{eYv\>؆Km[dCɘDǁkI9͇#xEY&[W!5K9s )i5av !\+ 4QkuXLmA3NQNXeӔ\?T`Շh[C^+5{%EHXz՞2ס@?4>>|ԵK$*]@{> d4/'U~orWRpv$K]@5Lbuxy}7.mrK'mC`k>9j ɶ'o<ҪEƣՕ6!"ƌwm7ӍxArjߦds bZ% t N!_uПI1=%fVİEB*7H=kg=UX=t{ G$ YEhk_EOՃn\֡߸9ɲ#cšs_T)T~Ax~y{B%:4*U&@07)i^W4JUT΂G0˕-f2N楨:XPgo6LSjC>=z%=U4iid9A>Y/mg).]`_h{[豒 ;G.Rv VlhmޕqN< kW3ȵGֵ3qt"Di4R*_Cr89x]jg_8’hC@ r i>HZeo]3Y2."D':U #-~`2r*T)+((*}d{ ݤuS 07GMWnO{~Wd"m&RijRD6pO*ʬ<. <vVs}`䓲[6_}`^ _RT٨joLhsFHQ}YsƗ3w%Ħ)+Qn^>g iWg+şБ٩e(1,$` aT4TّS,:;\! M̉ /՜m_2O%4FLGQ4HP>i5q(6El~萘@/?XpώG^18-ho)rqrtL궨j[6?coH}( kz]zU yB!f\C!FN*_~&{;jujwǸ^gxO6ry/c^ʖf&4z)!I a KhMV"?P{EVY.IBZת;?S1JQ_p5HШen8ҐklCKGw/2x1q^pVPǙQ舣2#* ӄJx$.4R,?7m\K:Hm!e Mq"r&?hh{2?m6ovW^& ّR$]pDM.`-Kn.=*Sq:ʤ Ơ1zHfKg|9B?Wx 7&~k 2䥄^"2%NVs2fmz_#_7iML԰ è‡nuj"5T)b#_ho4ۃк}``c4{,X6uK( 5uUb'{U)%n\nJ+h!Cԧ%C[ /^T?,xfwk@u|H'qm;GyY_ ] @%V<5rPD|O͡bҦ[,2[D0=o,;ɤisNgc[%zƨ墉$Z QG[C"̎~Wɟ}@Utŋe[ 1/M4'm:+ ,uomYh1A{A 9y#?|H^"<ęVgҩnd̋feɔMjvWtE jTλjxQ>r}fT_A,'hNLJ "0) `PM:"`jnňߠ/(fizh]% $qiU>T!N5Av]J]qc ͦTO"ţdfLLBŽlT>c%N@9 ln$1U .Dh3;Ò 屘[x''g9 m* $\Wі!qu$?"_jriN7ÏڨIjE1@z5@7QvgZW _d17aO#x$,,Lͷބȼ~ЕK=y)QpU{z9~Ne.5O"9NRf7():2a1VJ'ąs[GfD[i?̇ASq/>+p=;wA?u}C8l.ⲕ`vqf-3HA[U^Ir#+N"L4u/Ң׻1450 Ԅ ze4P4dFnRU7 TVak;#dk$+PD̀f75?U«)_'tMTa`O-d3)7=77laPN{JA סD5׭LbT;^yIGs"S'EzU5cmflЎƶS!:O#^mmbn bfFnH |aWJީHZ=x+JQVp?/JFGvV~2 &eb]Eox5 yiZs}D t:>":oJT( =U')jKj,}Z/v|ߒ=nx놡6 Nr  DYKzWqʃ" 0Pˢܽ~܎ro!TPAtKÕϪSo\vgcl*AنƒjK kmypR?ntaW W}Y!&-E3r%tކ ez'rtZm_68Fʹϖ?q`uO||(Ł `d2 cU![LN7ʽp]Ec7c<ÙHȮ4TMv؍?&LtWe,\jM}Z B#K骑x{XZ y&\d(`(m/ WsJs-zP)1KX~F ?̝6ᡈܧ\ ԍ$8i 8DWEe:ǸÈ;n1 ҽbMы_Opi]#^jPKVK̚ m9lNTb@KmiUc62կtGt"C<%LϮ'+Ԗ.ݮ,ZLZ,p{^4밈[9阷pf7>#k\?:.LMCdsXW# j+^ XТ rv+i襇Q4DTwJz f}aQܶy#xPOp}FaEsf1DycI zJR&C(x+[zNzT\`N ˾h!; !='q`lŲY<8"v-S=LEKEb x9 ˮ mžkJbn xni:]:&{etSaLVҴ=f ~g(:&9=i틮rYQ6rޑ'&%ez]m~5z6D Sʚː['t&B])1QWQ帜=?lTqP 1xR@Ί6>.s➹ k4!;D! ټyVg>f g-̏VsRI*ze#4~L'f^{I@`l0esfruoXdFvZr6FגHM.tH4Tӗ73>;Wh/ (8gXCY'$Ϣdjf wtsۧ3קob F+#&XS-|zN˵)GB|rWcٰ0}7tzzP5Ԇª$9)"y{0Y{FzJP#t^w?ˀؿVWB41 {(X>:G i6Vm,y}Q605n?dm{KVUj,j>+PE,9}TY,f+`_luJTI$b { @tKKR %rGЛb"?iI Ց}xzťG0W}JPBEʈVTD3=6# ʖesyg4f8X J]vdE2jXi|;+Vo ^ "T,)>0a]4gBP0UeemFkil^YBcfiAc.F.aK"g@a>̍Q8*RQdmql`Rs^g t4B3찱LC@ҚLhJF?׈8{d*YȐӧ1nbAQyoi*l>J䷏ѻgoI4k~ggwiu~P]s1ZSoWʁc "Ak+zu7R{;L3[t,vB='hj@]#poh7 D;VMN\aEqww*Dɳ֚YE[4M5N^10wPXσ 6<\X/%|XeG$'f=)bPDʳpy8uMvEXKQys]jLg N\1]'i{ȤЃHյT%+wHcX uP~Xy׳X3%!Du,$f2V>WW#{8) {[-8OU]g;s 'G# S_(->lRWa ,,urUkCf=}g˓r3mj锼~ -^dHJ=Kn9W(C>4TxinB|գ퉋ȚHRa Izaɍ(2~{7M<<*WVVX'Lt.,nzeawdqn`5f"^aNU00𽻋PlHxϰ(ࠝ#$r.-$UcQvh90I E틬pz}3U{+I]7؟ʲX"bǦ)B&܃- Hi X^ބk'JN gw6#N`g˘;`{ &㄰ Ne!ܥJ;8#kQ}8?nSCCG(nUmr& \,2nM^T!q\ͮpI>$]3cr Cki9!菘W<٫WkyH_LR*ZN7JCP+@,ǜ8OĆEp(ym?"Je䳕 |Z|%tf%Ŷp?VS_P2@z&~z9䘽wOI88 GIM|mPn8 EaF5RDbן}"nŒrıd-5FK*KʢԹ_.uJgJINibx{I8s;iwsl0*艆]F6O=%YyZ=jc@tfC?u>8O+qTaΚ"aC,f}/+2J~-9L^G;=TӫҌ NZgI A&/ͮcTYI  Zcw8ԝL|wo[PHx6Dh7RG]bqxZIwb& ӶTl9Kzn\h(r96_7֠'˨pFCp/Y @!0}}jsBW(/b'WWHK͙#'R k6ebIV>n`®ގxSI-zqm1Ҳ} 9apsƄ#J9O"qj=?<'lO*:ABJIm6@|VKO.!˞GFǁ/K ҃|l$7g+>gI#cING-ԓ2"<.x99~; c: <ӾKȢ^֪buoiLoM!AFKU$Jku]/%jfAx0VfvQ{: )f rAlV"X<Ib.%=0KO1HhCNn5@լ{N(O^?&{'HbgTx)ÌY2/o !)ۮWxUwzn FC1v614ZV uFre_qe+Vj쟫qܮ8܊-.7>)fAPL:I. $Fqŋ5UbX,C{EαAj[0d0.a{AYѡgUMqkC\M޿iC|&* ApIK0ۄYuawb.Df2Pef ӀQ=LDy4lvzQGY,%9;b-`d 7L,T5]#xgg\oAwqY Ќȱ-3Я0CnuGSMXUN؊!GR@ DP! 9+uBl-R9/F,,Tq=K ઝ'b79 TT[3*lZ8`IF;m8)uzLUeXHr|۠.cȆ+ n\ݟ/#)uc|LDFDŽv7wȌqB61iHs|+p3 +_1ձϳ$y֏/UrP({%D'I:4QTWcu*-(rvZWc9iԘC1P U 9nnZ E D x y>A{ ӁL?UuEb!2cgi` bi<-/)]7D_ :i.x*$@.#BIv@]çQW*k~hl >Cc/llp\ >R0D5Xק-V<ܽ&7mW&Md/`$>*(Hɹ<_z2j>e , 5j_w$} Oy2y@HX-g5Sy9D7F:6.#{Bƕi.?'̆a*; ł۰QB:" 6K|.9ʄdΜFzo3\8Yl u  JbQ!ぼ*aWʒ#7u0;w{=%//.]jY&]V vdW$ NV#Jʔ䄢=CPW}8+]!?Yza-i[ w\hh&ozcFbJ9 nlr!d'ܰނ*&\&2CFgK}L},e/D58ȡ_`h%&oEam9=;YؒC.aţQ4Ix@YeJϹ0zJe8-U**la.kNLybN~fMOpTDŽU6'?!fr`zL4L0NÒ$rr iBɄ D;M6iO/AdCȎn2.x7>KWޜqp}yJ /ct0g*8?*K2vQF{nҧ%:}sn V6 mB{=A?n6T 0F*`=O3pm"0zWQSQE@Oĕ}bwr%ƚJ- 罁iܤ\áfV%@ m3j]\r]\1%hլ 1n)qPp,%T82UZb<7,n`Pc)@##E20<`eE[-xLzQ~9A8 ӡ%E٬lPj݈7Ta_bqS D xa90o{Fy63Zc1(5C%1j+9B۽4Ux.ngK%((Iڐ"8ˇn0W쒆]+CUȍRYnmK(I9L@HCpa%VoyxF!2hO_VT|ěȇ-Qgila_'koFϜ,udtq' (5a?!)e/%ȶMJP>{E<2rD ]nQ}lyXR:1`>xFtUM4~R1Mh kқ@:yFh*B #d>?^a#FbUKn 07M ۆ4i]ȣ3R`ьeG""*G8#&KbG q#IgQƿ· 9h>;K+%bSӝg m>W8&3hI~"YCNAc3}бt0hmsHFeZEid{蛞2 ױX[M(q賧Y!iB5W46mD++}UqGɸxOWl:#ݐW#0:н5{4qOtQM$a"ʱj- #qsUK^v@e. LWs+Xk)$CͰ`\AnȖ@j@7cwr{y4ʼn JuA3>NY볡h4i=IQ0!5Ӭo ǣ/@$فR v.KO1Ev=IeIYLR4)Vj|mD^MYj޸DCsm &DdXFF[τ/t#͹U߹XxLjnٺxgMKC`dܜE\5u|}"Imbvad3Z@#X~W`b|ѹU_ݐBmNjZznTRaE6U瑱zZ&SN)s7bSKgXG 9Bn|G)`ZM­:DsՏ5rM8HӈgnL&|:ѯt!O#>1jm\$G6q9YNCшST84Ej]sxo>0޻/CvPĞRBPʡR\ЛD$St 'Puft# m tE`:4qZ}y?+0A2g>תJ#Kq6(@YH/r@ݱp)AGA (dM ֋z,XSQspͽn$]F$BsQWfA] ]'҇;9,b0w80ղOCx!?j^Wc|NŮq_OS 3Us=6Y4^7cnpFE ^T?Io &O.C(P<׈tf̵?:3_<(6b_#lBSN[V l]JUm@6i@p( RԀ4y'Dh+ d6?pjRaO-e[1+Mjsn2Њp-Ҝ xCP≒]E$~?E&&)]~ܦ`t.$x6yٺt5Z.7* {)18QԬpPp$"q#q)PVZw+໲ql<  &8|yɀm$k m Jdͻ2e]ߍQ0%'2!Ujd$E,qyQiQ9 $T=AR=gд^lOSH9L Y>ˆ=#[;ׁ; H 0&k$+I+vDwSk7[N%1LrU*pY:a}Ҏ$#"6M&-ippUƀ#]\UָsIZ1ǖjzH%}٤xw8POb=CW(|i Oqr6Gc~{~L,ӝ72$瓀EHnݛmx'XD2N2f3 ip@^':ѯ4R:OSFX%TXȤ4mo+)V ce)oD9hn6,qwm 'XYbBq'C@ $)-o^rOg4(ySA͇pe= ͋|BӁrۙ[C &d0ʛu$+={`aFSX_9l \v+kmD{l1S lF0vo:Ma5-J=pOz`堕OΧPHdLsMƥ^4]4A 1CPm tb2 vJeNPLxtXV 1t(DGqv#ˈ:3:oP;}.'Ck`ua~ސ1% {EbhPQ_0s[6(V`x#^ `J c]h#&GETg TfRZ(l0- `jP'zV`H)"oClF&uk~jR辠as ;|]p- ^ j8 \`掠=t¹s,AO#'^u= @,MF!"rxc xe3Zw]ǵ89f1z~.YQ+IX%TI2ljjDt<"Cb,7ܵY{\Z.tu&3{ \}"M kF:#yd T\v[ eƮ_^ ̴1Hk0_0f}Hb14@O4ҋߞ.WX- X$&h ~) hM;QP"e C8}dzP3Hj2\q >bf1>,uIx[p1]o  Aƴ`+X͙#1ezXcڳ.G՜^$"MWg3G+?1W@rͧb̶J$"t<޻7TH_5XB)lN0F4 Ӑ>EBO ]KbNJ윽$ .WJF*G47R.5pnȷf iT=t_X%ڦ TSSt˻V_a2t%k*YG@e/ʡ⌀gK`CM"yF3T+F{4csr<sB^)x&/13sUVwԒP't P sc|A:DMtsq_@;3a߇3yf\};GhmZ-/JE5II+>Y`HR\jv^8Q4bz|杽jzJ nY}}f5HbwZiy࿒?rb #t\]F؁PXg.m| 5v ~r\טּ"VIۣCW"ͯ93.&tSZK!j ُøxD8a_7E[UsW=TT!j &u2>*v6[b2 k|d]Irx|@੺Ca?{alR[͵泽ʃa.Bi~'K +j#B!7lE+K0g8Z E䃀 y,^xH_yKpؘrvZ]Zb UԎʋ Diݭwlfn6c]B5^o 3JR73c e9LkLdnk(HVNOHLHͭ'?+AE>"FAE WF-GvN4+8{63htdF3*iГ&#9]74m1$G!"tDv8ʻ]WjWjN lcZOke=l/eI]e^ܾFO9N;#a~d(d*d)g-P)i6A/5 5ThRІ e rQøR=t4똥 ![ \ч'7|lGxr0fhV}^4Sc矋Z@Z͈L/!^ĂpΛ\nN3uعwǵcrS`)cruFʫ6<*5)ׂg~mƉ`?% (V`[,BA^:q9^4?=.#\xSd1.ʀ/9j)"y4ºHDޚI% wǨeUKg%)OF7cߘ>`l5`4xҵ5"VVb᭒˗}7clђ8H@odQs Y)`1nxJ`x| ov^K4(){C0LtiqD(ErlyVh-9=뚪ԙ!U4:zdvG`Vsx:j62qwAB>2s+\/%<3#_SUƞO,,~A'Dإo W8GD.5j;*H [uG 1 ٴsX,lDA咖 XuեC7&..Vp`r>~LDU߻erUT rTi &X]x|n]nT0Sj]݉g8`h4sXt)I$çKt:xt`r4Q~zsi* ҞZ`{aoE@k\˱V T eH•b[> p X݋b1" ~=TPXQ k+~dU5ڰc7V-FsWAANg<} f~䢚rsȳa//'ه8 } ab:oR~r<8}Ihtۚhw'E!c:bba{S}ޓPv|:@PN/}g/+RH"5~E(:M:1Spz#0$ ϻD1 ஋s8ݹr`h]%S7uQKHkˤ(JpocW!G^'Hg4ʑ^pcޓϸ>-V7jPjJdz3pA}5@$DWh=R/αti8@YŃ%|D f䅽9$dL!Cl8-Q/}s25k^wʺBT˂wHfM^ mx|!vw,Gt]rߒRP)~cz>8f, fu]5B~o'S!x1tԚKn-Duo&ŁFbߣĪ}ôgSCy|Wa D_t:d-_Br3xRﯝXKaWB~)H%̄D$jLb4Eu5(&'d̍/~&tue2w2rPs ssPWCFhׄJ!L~Daa|Ki-PI^=hML3r~vpRZ(tsn^yI4s1$[5@$En5Uh%F&zdw~k`k&/W@8+d.B׷]#}ng@ܶ0&4ۭ*p>y)ֳ1ey6FpPۅeAZyR'_gI_?4e|  %¸wU`-ihG %Ǎ<{h*G,X968EK29mNQʟ1SS~wN`dLĘ1ŭH{d]NTeu\y;Klu`w/]'k-d흝tDˣ䆌x~~[v̀#Zt05EkD7;] LSSd `6Lڡʀѧ^|3% jXPTj|;ʷ6uQU3$6Qd#? CCeh`/7=U`4oa~M1QQؖhUyr=8Cqk MsoPm|cFL9}G.b%Pmx֍G{رũ`3-k=(DԴZb+?}"pHJ{Q>AGɑ).YR:A>̤OaR-Bt4.E,:|܏4 RE{i*c(ʊ;6QV8W9O ;#V*0(:M]215#fV}4%>\??Y)B>kVhS=5#ǔ`M4Bp/yy2doVb*NĢ%Hoy ;%$Tnhb EwI2&y eXAZZR紪(K(u4?ǻ3j~\.ȋLKy! 7+l.&GΌI(ľ2;e0bX_gJe=W D?K5`^8ZD=75a_Уy &'I2CCthH"%0E}9yX튘Ï]_q]yR&v0A3H84' 2!6Rp+{VH-@-o}8V6zC,.Z.׈wَ㞸W`g_Sa&4~DZ`:bq"sۄ{|SuX ctlVu%߹K`Aه+0Ũ!=d'"곇$8-CAF9l܌M"EIjMߝUOВdYZ%et˨;6_D(餷tCh0 sNX+=r#%D'8 v2',{ʠK;>b K 5#Ը "PhI ^Dge4*t(#TrS#/L;D⋘j',as[{^ a KBC^\Kvf%MgDK.TJKo+mCLtW<㰶ʸnxD3ȹ}OFu2FKz/EB0MG@d KV v:sFn\T%:jQ@w\=%/J5ȇ)x%: ٸ 5w%Ylf`[C:@wܩ聝Ɩ(Lɼ&Q@FK.Ӵ'(-A)Wȵi?{\6[jA[z$Aky&|urI|Latvީ*WMhpvz"Z} ؀ 6Zy]]/<:@d1T\E7a={]|Og`hcqvl:Ӵ!ߨ.|vnv4oLY!͗cڻ>K+Pb˩KxUUn <+qElVmbЩZh^8;G#̄%jUciEÚM3xj P7?*S+b3 +͌ IPVY!8!<]%G\ $ dGI'6ܟa Q81 .(uiTΌ͑}FشhSCQ wH:O5V R!~D UO9[^vPvLgB[_rۋDnbu|Fv58K/h&"c.*x=_X{ h떨(15iIG|6$ )TLֱDorx7bhVkyss~[rQǶd`mAV%^sxQ[ !);JƅPrf ?=sf%u V5r8&.F#2_è&OĄԘNm3Gm5{:N*HEs@ZL=7F,t}<Gﱟ;$C&9qPYw"S\E&VO7\o02K#e ǼdzH`+_a! shfDET QM'DO{VU^EAIO eG 6/H)%lE~rLֹk&6*l`JwA NYx&6<|bG $lL\`iwLOdǢo' 4f4Q۸nu faeoc%r>?@WK|فVDh)N5?|7riS7+T|t ȇ]n=`@'eHvX-~fd E)xUsxPE#0޳?U9:.ZJ^!}ѵ>\V6wF```S䃻ŕh:o]9=;1AzD>K~0`\O2 Q](FvhXj&FY'{2#)7ôHp!^Ok?F7_U#^=n"#+ :XlLCQ8 ÕH8r')V_YU<'smUDF#\uݯ-g% "1/7]I7IǶtojlHZ'jH{ViuGN\`ԅoyi3w wn0EqrWX2޲!xs'5V{j0! k/'lo!䕿ÅMu^K{Y4mO4.ė|}{-cK@,my4 W;_G׃5 RK!E@3M+H.pU/Sײp2NN .Oŵ/)M3A_lj Qyfze29ۧ#'I$@T&F:OWhΟ|oh W\楫> S[>ѪFkԽ iiNul954iQ8{ NXQPs4 ~w/?M̱kUOdEzz[rWVB'Ur/e F+0hT'AH0/PcVv=k}B(1G&Ҋ d Я?D-?k{ "Q~;q0Q-xU LccbOu2Sp.+-X&"F>EQHn$fv  ԢO&%DNi#kًF¤3g&}.Z#Mβ`uCK6) \Xyjs;LzyGPt-?eq^2iK@6{`IrT3etH+> Xx#PZkmD x"q1nvQ5 2<6du50⵫7p`IR#2 IB5;>^* | hg>? `n:^0rŃOp 0GXQQ27|Cri06c4QuGxߏiv.wؠHB%u9m2| Or)FZ*]sxBP{0iM`O <(ޫo)hL鯝e\N uy ݩq4x?EbOKUagk<۫NĎ#}66;ֳ7go,A?K&O%:W,h*Mu gbh&XVT=D}DLѤ-;JL&{#.*>юt{N ?47~wTGSϯq\T^lTȌJg]T,K@I>@F @~b[Q>]=&ƒ+b_ɪKMC]+x[7M]0:^߿`rՇ AܖW$fYOP0 YE[;ip/Pek)0p|.AS3涺&?6˟7*fi*6noo^|E>|4"P704([#q %{lR*]+OdԌ/J,z/i˝FXAc[e" 1}Z^fs*݀B),7D,:f,9ñDZT= Aެ c^sLtweRZv|7hKTXgM@2kħkȪkRk;pl*ޛ+1!{A3uWAq{ũ*ɧP O`N7Rv\@xѣfġIL٩!-_X EJ3Kowx[TT'9)y LZb]%Ty}ȼ#caZP!R'x_fBCƣ'C!^" 0o@:aVH>"2jQDB6KY$U  ѵ{+JxDTv#jT]v339l@%,\4ZMv {|6vXB A{o8cG SNfC3sHsK%&ۺXG+OX +#ƻl9Ut_14 c]V?$S}+,K}4.]CoUWck0[ZenvUΟEr|ac&2XmMZ:bL*A-kjCcOKe*.:,0d%MK8fM߂ןA@Q}ͱR@( K/ZxC~B9cr .x'aVY,3=Wg1 \nC6<3:80QP{DN~=ozq.5y+:=ݯpo!%Z6BhtfAXɑׇ[)=pht\ϡzjyQay&jt?DgnQ1ĒA ú"`kKrU7֊UrVKku)$#Y*RVS7Ȭ(%öd2ʊ!GtхbMMa>TۣIK6!+@.]%<m;2غSImJhm$gG1ڐjuї7\\%hhM(-:r`y uK"VN3xx&9 홤A *-PFWh;PãQX85!:YL?Os5G}ؗU]ak[{PGLv u0_;RzD,A#+ee)6mjnC(gk{bSy&AǼe2V!vd?zbk_S ;PvܬfxGo"pBwշ# x&TAcN"8Z`j QEɷ n Amǰ_H,T?,r ܢ ?9CqZA<W2ZKsnV[XǮ(ij#4Bvsp/z|/Od?Sw#}WwVHdoG HZX1Of+𷭌gxK ")p(pA0@phS9nF~oDj2|H5'}afEa][4LA1u~?P ~GdΘU^"c 4 ] }{^d׈Ƚ=+ Ǜ]Xlanq`5H$,qt䣀l⻌C #@`FY^&bUL SEGTs8HhZ})Ov MJGR")|-vCGBKىOh8]7bA jlDP|jQZ֟uS1:Q퟽ bB$ Fā6[0Z\Ktu;b^ϕ3(Pu)p}rs0jKiG SbBjdᕑ9"U5'hb![٫˔E:;H#@K+Nq2x"/@F"h 3o`1,r%o7 Rtњ I s]UNV¼0{}#taw4b{˯D[̈́@9Mtp  ![;HSlM\i7ۧwǣz '2,bp;^ͤќ 뇜:XU{<=4FTWxZ[U ]?;j}1iO{w|5t}ɍ3v}}qCzMz*uR^Ѻ e.K66$d!(/Lvl5Mcb-US`$m`v:xȓ{?9ik.':SzRU=5yhm,CJiU:u(;5#5a t EK.To&i:ϑضi\mUl#@JjH12!d[i߃bG 6*1"blu&#JLE?Fe-1 Kn'_;b<,τ7%^dRw.jS YwL.=Rz̰z@|[H7tS2Ř_z&!kUYK\ŭn2wpk0pМN&P`(s~ZfK@T#_%Z^zѣQA0Pڊ}0Uu>fB9LhPwzs/΄j" <,FGkP{Xs_GRisB!5=:{άq03. 5U3P4^'C&`HƊ1 IXxZg~J %` d UJ'Gje˺k5rTb>63b#OTHlKĵyRd {I"\_OSnvBh\s7d(\yHZ'd#t铮"Yy?,W|NMxD@ JdgnjF=4YjnU}/^d)yhsƇ"):Y·/S3K3|68N:*ko#gˀ*ڒѺWGuڵ"U h#`l Ȧ4#vF{[Z)G[pZ,&qhG͌qD7|iE\m'Nj{ 3؝{6f޲Oo RE@z+ߜ;A@rܾ0]NN;Y'I,r?Zei~Z4^0k䘅R&=zPa1HJKETRqgZ+T{ b&zrInVu_(p7'kEr^{}pɬ[ 4zTT%Bfp㐔/cQ5>tyFдWiNL%!w.D;ELatͿ'vЗC.xѪ0.~xPt}f3b{s[#?NOi]a= #Օy\m :h:o+b !lV\a@wiY>=k~_OoM5l$tk n.i`$}) ]t˽I<,VWBBMEloX%34G1%͂6͌1I¥Lx,29ADq;js| `ts-B-'+;!X5R$R~j\efw[NQ4{ 3ܲ=<!ܛ$GFG)3uYE{B@g>׮y&B䕟ЧI9Xd`2Tu4P?hEswk;h|Fu-HeZ[RE*~XgV}0CҊ^{ |t?qƞ"ɴ靤ڻlv1WB8q, l>q4J!Dk&Q`ʋ.ɜV<(.Κ*_ xJ>z wwjs8g ٖPBbNR"8EІZƬ X*Sj@;9N!u͑'^6_]cyFv2lgL4٥嵦wEHc.v>l!cV'=u"j(x 0uY,S2wkbtN+2iKBY7q=&unރ|VGGd7Lxu>h]i:[ekz.|QA|XjRwN+~q%'7%2ܺ31zf[E r-҂CnOw,t]~8Ѿ=t﹖*)"~C9Z&(p\6h/DhsƁgLpQT1Am낃|ݠ2 FK5kBEޞ&-nm> 0y9]_2)ߺ劼',[p~J&q^@ّ.C;h,yH'1fpBpA ٍlSLEjdAZ޴~V p9f_?ԍE c64&`~Zn& ǖkqb{= VNQr3O*:`篠e5բR_+3n<>E@O?Ldd|e[6t=/z38͑cC.*Kt+rπG)p$E^7ߚtfĦm./!~bhW -\i n|]A+BWG&N( EGl?Xim*!^262J>yV6 =o鷴L0 R12~FAێM~Mh^R~~9hS?.u,>^|YK$?ҋ3ʸRNQby\Lmo .UvNVy,:TT,r y_iݾ@XJǢ&f@lN0M`:KLM_KKe$/@DcYr U7oث^e#/q^] HBqTN2*kD١ר8Lea%Ȫ7=ӱR}DȑL. :6zZ^GFyeqCy~A`hj.@dãĨFEԬhKc{!;gʣ @iʁRkR 3.߇ ykv;;vYx_x[""P<[̟n<| `zk#1AH @YB:57'Fw2;8#vX3|be(.A':94ym=^P*heln`V| GNQ_H5K3F~$"uq0"}n_WBڠwUI@3z'9"Ri pP{,NR5׭92uSl{}]|}Cڷe "{ڵk>qd_X"#Ej]4MlE g,^%vp(Z'S@P &ES)15[,dե [$#QxNVu^d;0sJƿB gFbG 8S.UB2ZP2FE.70WҒgzVVJaS7pg6kڳԎ{o>:V!&c7>2;=^=XROS}p68A!OIhx^'"Y 9{_[\WEE87lמ2 /0ьn~y&t&a\B]ί fI'RVq`\kZctF jي+"98Gp&`BGE?!zϛn:FBo >a,-5l &^mQɛ CHѕ|&O' 5:2wkTpcsO w#ai{҉\8+ \0WSPďo]Ύc1dc #)E>r~gë́OBiufS}>h)3M2@_./;.q[hG2 Uϑ~̀m"P·.CPkP}gIaa@ms%TB`o~! \tCxMԌ\Q [tRяA|5k7(F SfSnj(+QhEڀ̄&,# JY׸-)6k }vKMTX!rwtb4QWER=aO$LԧgmLkʬ=M] !uWst{X({V>=a\& nU׳J>@X_L"Z\UDͽFEuCEjb_4bIjLoyC 'tsYt^1th`DR1 !i6?v"2]_0Ԁ_lx+^lK[57}K3ysL+nRr&x{7nu>/v 5<;',>ʹ`\&tte"`\9 <Ю4HVqOX%kepdx,%a Y[rCKG~'~ _JQf:G]Ү=czD")o/]b [W[ZOla~= NV*c4kL%z}.iGB18񱊼 BcR$C WU1:0ojlll-EvYsL[9fR3&4&%I4mTρ NT=`GBy.EYSi^`$tZf\$y'`x|PKR6\6}8WyoF7~|>)($A8t,J{gX;[2 wSqQafYzu3LMCLM:dWdjQE%'^$W9 #^.Vĺd*75iN㪑ʷYO)$|yCH3)71)]kT):~- r _cka@$ҭF÷zMBmFnva#v&^T֓`1ۙ>Vƿ.#<_~ˡ 4DK-x4}~sswhx2j[nhc6TKq?wPJ3 𥐮܏waNC¿uaXeFs8TR#:#-dm}"W'~9OHkngy^r*=/ٱB2[ch`(D~1ߢLzBT r2OGbD]/ m $WU~>D#<\~/&)|&էÆΠ'~,Jg#A^b[$kAʻw}OGqТIHpӀpwþY|QԲh"|?} }'.rihnx`mިKSOu2j;+qJ#gX a,HFc9I ΥMHsSrKe@{Bx&Yܝ"Bc km1f=D/jyԞ|=[&>K]%#co^)la0[K#+FOO/s"s]Kk<ҩ(E]|[$"$1N1| T^* PGzu;QyT 5+t|.էHdV$Ú;6O`oi 8{,p? vզݖ:`wz<ىj>p)̐٭N=GJND(K|H̔!e -L~u<[]BW>>m;l1m>>5O-ԪE?؟xdO 6A-M}vA.o(d? gD^r,y^Ynn+Wij}n9'i8h0Eg1GUARW+]AEX:ڙ5ykz_^o7=.E1-rK nGco{kH7W/ǏFSF\;3]xRMȻvӞ L]t $^)8Q҉3o Ogfİ*6AY٨t_яqag"ޢ_ ywzv3ލ][97vΑڣ02@EpK#F>Ir_[!sH[W#9 Tv|2D^~LQVe$1Ǜ_:4\8Λ]Ɨqw/`_l ޚu F01H8B1>cV~|)(C?皈b.]K]ub#PnEH " ީ~`I7Qgd81#eٹD(u>0=Q&)>Ch]o֔E1v\!&A-7 Y%gh +(1铛8Uī{2Nhg?)RHxծ>Xӆ!Aö FX'St#T0gpMIWrw uꤥ.a/Q\fm ?k}r1q!}G64n#}ӚUdS1vG 5]p;y%t)J2$-\&&AqW,;ZgH#Ǹ;OA7|ޱB摥#78NYǒ @d_1 NqHrg_O6qWįe?dMڛdaȳJbLO!\ Ͽtf#Bxk9'Θ;=]`kR`^Sɾ wfb/v;gI~!j].GjWB}rxU<h J\U?㦆 Brɓ}n.A٨]u'f(F7CY,'h1ùmqb3Dh}gu:6-oS+D%:3n\/M@T?CHKu K7ڕUUc%5=MF0m+[SwQ<4Ħi.d`'R,AKUAW?`S-xqfHZʑVVK~rG7M9ʌ6@\UH"9Tm0ji/k  %|2U2rӬk>Rko(?'B%;zn zf)$fv'G\Jq xS,D(h^*,r ,bM${ <%v8r *-OÃ3 qQoT]V ޘee :ˤZ@).'LYwpM |]EGej}fye֣EBH7-DH|#*ԉp#]LEJ-7ӫyY3DGw XXx:A "y ͹dɪ-{jx ik3ĿLM /ɑ>a YL5f^}7.n /V 9a|.X_%z12aE^hIGVb+mE&5J]!S-5d`SV?PmǣlRe-ax> 9Hw6R[Tm<>u$b+¢PjЍ@.㏿o".Ywo3O9O\`mwVqH]oY Q)q]r ySn3y5alF:$8eh:Ai+k%s d:|(~B)chKpZo:n2v\!{ C *XWwP-RK?-qصfxFJK|vMICSXsVfhlJƛc|Q r p? 4Pd!'0tLgE ֲn7QpTWg^iVlpu?ɪ_ m5"RWLrIB܍rmix1 vnB>d8F (Ù_+c 4Gd,A1V)e++$xP~-H*ѱhqVdyu;N~:G ,54b!_+}}΀X1G[!j̏]͍K&Q 1fI3Ju XHB)^:\ uZ3Iv94)FK5SPpՄLf>P'LrDLSSF3OC1FTeǦߡ iO 4SR|_(/#5c /./ /Qɳ-"6a1Om1X-,w~It|"ݣsl03W 0VrHd}`ܕ 0_(>4-ݖؿGb0V|cf }.ٯ Q]v·j4rz_z kG̈́n7Kr!݀&ȼEw?V祳Ks G q8!I 9eQ {aj*jw;0Y{z B JK!۴7wh!+_ᅱxN" q V**Dsm#}C2K BoOi if ds*􀛹?c#ܩ☗JWBZ? N!aU6ǢܿXH_+ee vMh(MB 2V'yH Soh!݄UaRЈ1Uk:V`=z& {7> \? w_֪>N[M\UzPCtW%Eu,hґ +;` W$8TleXI;IF| 4&fΪ`ޮ}ń[v1>4f*Dt{*UaYyPY(LDQ#k??zu+S6=8-:b6㗋oM7&cEjn: 4LoP 5͐U drr] Nb+n5Q B/Yɔϕoըe4yI Ms=-3U%?Pw]=}H^%_h9]vU ҈PRȘr32> ny Y o]T߸3#P>;9."vJ36g#3M?^\bYNEoV20 3Ŝ5“NF]△d7;Ns-}A^J裴22dqʉXcbO7JUhNR'R˪.۬{ aapU&aRtᦂqƾEC.44CE5M”Yi<̜~ I] [5n\B.k^(O8aoT{Usʅ[M,tmȑHkҿǭ COf_/_Y>2] hL]F|-N}u6d2r>li [6?*)ǪUgYQy6bUvb<ϫ$0OШ>b"LȤ턧`Qմ;Fޯ]Sy\|r PF9w/׀kd㈼Byy}tkcfߑ}{,X좄sf+g| 6棤H`YuDñYh31`@g5`CǪt^K=F{ާMUAŘAbX~]71 p +mF*qU2k$Rcj/!kJAdo쬢Ɨ0ͮ7 ;k)Nj+c^f!R4.T)KϜ<$;#$1Jy@y,dpwtgT#0hQ/X@4ȧ ^&B&5|dOK"Gkh6n022/֩&g"eX $)ٕW ~EfܷpzߑF&04mb 83| 콳31n@L$ak)^HU$P|HųP<-%õ3GSTE3Zo r8 ٲtgPmIh,Zj>d @+5Y&ޫ]ZXb#++X'2Ͼ5du"´8FE3 )wz_82KKWHћ]=.Q uln/N"x˭b[;*Dd G r?isE Gc83ӽ[mjg dK~`@uHx -AD826OODPZB1k ,SGRXZNSfy9۹}yq@87MEjBu'g"֪R%Qb [qZ.]&D­5ΘŖq-*TWP{H ۶NQ4.Z.qW$3O. AP ' i@ |#x>Ͱr1 ~߉|%B"i(  "-V*(`8zV:8tlI t2[uU>ea7.{3F2ls|qh~=uaLJs2CeE6W5bdK:]YSO|+::_4 Ty*+۲l-c=o`'c6VjOalcWcRMAxFoR`OD̄+2DJ,Q ZVFN? *+UwP>@k9.;\ECzvbtۇpoü˘ga; J9JȉyrF\󣥕 `_xOnݦ `oc㇄*Zы0Q / O\Χ~Dpu/#c7paHhJ*`g8YuGNvԖl6F<1p?!g!e$V e)ĀG;-=L,_TR֨ zW@S.GzIrje iv.D[b]$LMكvJRR;s9ƍܗ@vƈ-:@=;^rN&?nj~FgsK*Ɇ*Xe!?CuҐKJ f~"%[( zv'q5n'q-83_d,rJ^s[?*lcZa0LϨ^JL\AQE%kO;.Dƌ٢_76/B{}ǡ%b Ez:``c`D<_\6tʘm{&ouT@Q8J%VI5h.885 &M[l-22Pw,CumzjO/ZAjas9Gd# A>גaO}\X ſIcׂ5Gq]ǭ"030k1G܉fp)2*pAwCC 6,[v ,&-[!ZPqhθmLc0eWי&%@7|ӗ%PWt/YuxTMi1F,̑4`50tZa"W$''D8< >tKd/zR>R=eA P|zD"xzowC- []ϵW㮛Ď2"rk`>aB?^յIyb LNKKsO % Wo}''xw4339>z.|e|π]57aYztknvlvȆnNm̪eift:0Cc)m`Ĕ쉱߆/D6P{n[ctk<2ɠʿ>F3xiC@*03]C\39 rQ^EhfWH)6tZcu`W3LIzL5_Үף9F$i<#OVp\ֽWɛ4/H^\-qq&9l(;:dIn} 3HrD$z/Z$,$| *y$̈́e)j!rG6"nvJLΊ!-x$=j-$1 ria@zn ۂ)4Sy/|{`m 3]9 Ch"i1ƞnso2G$];A NqR~@ RJK7X;Dpz5-Ze+43[c u-۱i^%{kVsoCXBME8x@=0f]s0~y2@{ $6z93hdK-Io׶LTqK%-0Z6BvL.9hvth wvj|}9JYʽO1NonPVf5NLAGK^fL&,_9cO`4W4j&GAgoAUsVFͪz t"-r{!0@C@@?7@a*q>s )Q󤨱+94F7d_Q(;d\jW}25*IDkhN2,)"'dK$1Yn0[2Vȶ`?a }{.)w.{.aCQ>/ #Q@YgP1Y?#a#C_ S鳺IfIyD[mSPC5S{N ThD_N N^oiS,Xp{n$6[󾆶feB.׮ϴ__ VK$j{-]P2OːDoNRH'' 1L 0+՚ih.v;0hC I\1u%fo6?;;a:h̷wqj~=iR Ѻ,L2BgWJ$oZ`*W}dU73!z6w}0J+C Aڸ@A}9'mP?Ee^t+CR<5mf+6`HN$$gҜ+8=ۣ%ouz涼c  ~lR3d9|3MS 3S+$嬨pF4ZV_1AƏcJR8Js[ϺvLE&tVbq`5GDz랲P_kKKf>4kx''ۈ*eq3 ԶT܆abtSnBHJ0%0p^օLzdysoV/|l,$ȩ}~DKY>HYACo4<2q{<S-r2W!Q̈́@rqFq99.y@ڝ'3e3#mPGZf'Y8bĨpn+ρWXS f%F z;MzoNlcna]A9Dif3G>p9T\͝t|mA=pcUIfdD8Fu|HN=(є`>/h[dǝF) qf=`S=DպTjxabV|9&΂]X@L |ƧU;0Noe1>$,==$/$+=ryvkU!PQ2K_hqh-ڧ7|ùA"D4VX+HEg]P=`2:p^Tv"#w[N8{_!ʆFd '+[K%X#@`U2lV^'NO*B!˦(7f#c'hyٔt5&D/~]9|2F_歠(^*}6"Q^a.&/BRibYQ[Wҿw.'j͢`H $`CSPy~ 4jςOc)l( {rsޗWOu=G.fx4NEC<ݪ_Kr;)vFq(Ǣn4@zr;렠6oÑ1*-oRECC(,huR?w.B=LȢf2|ߛ(d:`Jy8ok|pmy?tJӱ:”wԠ{v|wem 84,*/T 6 B>⍓F:c,]C,Wo[f'& I]')1Fv^~ r\AMT@Ac[ٵ["=F-+H%nuή̵KWZtqXj={C%Y<ҍu lE1%FuF7T.#OZѻs9摕0]q Q %e1selw(&{^_i8xc!l4;"Z du"u4Fs^ZǓ T-uzoĊ~L.q;#LaW0*`3?EX@,g8aO+~h%`%ͪϕkkVY+p[ɲ[]3,xi:gKK]fQ[I1,vZ$ k ]&#FRe͡vI+X(xhQs lXy:zg躇f?*!Sl2h*+f86Y ?\;kcٶr~L.RqZB*8t]:73"*$r .OȲ=ipSPWn%ء|S.O芌`vמ qn[u9oj Ҥμ CG!5=ć!SQv(*"4c0uj+_,^ʣBf,M%(7nRJX2ڹ mBmUZ\WY,Ggp=l=_IdrH !_ /wK5$Yzsq&?T"Mlx4M(p4_Q2Fz,7`x5o S'9i7D^4gT(ǚ%.l*SKc;?A(%* *s!BIhRGrb'&i?t˜!TπLF>ŖIY@r]J،߻$O-Mq,= &^nT^C&g0Բ-_4-8ٻJ Gy]Zhh*XPk1` *gDK9s3Gs|"vY&@04&Mq. 6/f5 ׸wQShDfE>.Cׇ!u YXm_VS$Y |̥ +Moq_.+DEsE')"{&]&7hPQ &4~8#B]$DŽ;8?<62bzZ)0t;"+&o K(tWpb$,1X2CS3^0p^*#?]'8C pЍ`{`^%gE -H^3/pp#|$/:3 "I~$BkfGJ=t;0_uU%ɉ%pi;!⛲#eMS0(8QOXXt>I$MY;5}Skn7dd(ЪngI v=V)"Ebmۑ.9zJ*-C8S߀+:˾i  ,j1#&XJ[vJr]yA@1<Z詎ilrNP8%C!ђRRjXfqf}Q !H%cN*H7_I,"!DlId^/%$kHAAFcmb.+#<ϝ$,B~F$T=/]"iL0-VG v#ϣ~i\G:\PTC-4@具p憛-Y;ԎMjH1QQ)Z{ D_e1F6(ƾ鿥waxAxrTÔ}2PTd}Yt(iߍ:GY{*-)| `<;ɨ2eS?%@S3tlMPXk~K lOHd2{{N$&&;EJ2uYY 8o|,Q2.$VSdӘ#zS16cٳjrY8 )śd=뻓QO 7=w]=߆"So8+̸U|;Ɓɿ/5Wlm=?.Qfo)7\Jz"}ptRoxhĆ+4=_ATQBEʎױWlwk\*|"'{%=}m~4F-7UCv_!:32!yNz:T/q| 4g}N$dr=yG |9sej昆Zt%TAn|a~mp0(Fi^&ؒ]\sp2$f^)G|cMl`;&ZdWh72C(s~E%/ ֆUz\~GRSO򀔰:[QgDP5G8ǨL|e6wo'롶uɮdyϖuqki)r#; x1s#g } |V,0cNfPK 6IUsES/D噋%Y T9Cv 5ểN?/"M&<]:tcbGҊ^։}{ָMq=jXμ\HΩ'IJeQ` Oe4H`2}VK)2T  t4m ȢK:;ybMc?kfg KktV`vA>R3^kABX/Ύ04FU-[8l){ݢ8T>>6Nd7dooB[Ѥ)Xr\]`\Z_QV6:^,^G/'˖0җЀ^}VAL^rl]^/[.I5o%#R>Juq[,Cl i~L*ieL{q !uMiS&ӈFFeC\ˍal#& +uvr]KE2q4m2`IC=󋃓LymYD0폂Q`v2}Qǫ}7+Nx&6T }ʯ+䷾y< w5W.yy~_`ӊ/rT]ݛ$i4ڲ˦4]ɖ*0_}JoN$O) ,Z0.l]h)fHt#R/v3=Gg<do&C#63"Q*brBrנp`s^~l W`4):^cfqJ T=:ϲ¿5EF% E*,sS%zA)Z]Gmb3Or(:&Zi~ >0,hy0B\g<<[4WEBR r3,PZ侚[CE?Չ. [,$(p'A%Qӓ7ä:N6!N7&VMaXdV 1핏/!G5@ 9FUJ`<қsCoװ_tCʏM?>0^QpBKmnTӔKywEz `suY8!m xﮰjEܰ|I 4]LD%feC_Z2 %ܸw-& OSbYsLj\4y'L*L͟꠻K}_U?ؾ+"0#Tb蟚Zō|-' Fꢫ2B"?^RӢpkW؂,g;ϡv53:hb̤~Dl1k wKC[oRZ]arղv`Eb qj[\)B4n w\ҿ2,7[KJ{3p9 Ȕ0nx?N1=G1z }L4''mO>A r_#cwT/420oM|CoNY ÐH4AeOAޤ{7ocV, NLu&@*L |Z.L0%{hiXlF66e.J|mڞ[p<θ%Wwl\] }_eХK:K~۰ˎ#.ߪFK\TP5a0v3YRfpJ-T9-Uvǭk?W`Ri'^o&gv9k𼋕'DAGs9]>/'׫Љ~iMh}Ѩ1 :/-G#2{< e;#hZP5 0`:]N}A ڇYE٥Rf|?7 kQ45'HLDU4iйt%&m!'r pxu.f,~2,6y z;1 Wj1Tz xݫ )an~ "C=WeB]n:ki‹-m1YkAa2l;GM#&/cFjk,t[" r~A=z64BNciAl@A@Qwkf5i#9zMλ]?6PdM9Q(3djuڊ%?ⓘQykRID3z3g6LA$vQ*QS^wWNq웽 #?!lLjy8*^Źs7]GesfomΦ" ؝!)?ܧlT]=!Оa.3W Kzw++Hl4ֽuN6HЛdB"]׋I&v֩^t`y`uveN(SXUgAI[[jqmascԡpi1w3?Tג%9qm@s9.N }Mɑ{]@| hg}S,opәϽ8*fԨbi:+v_fg.BȔjH!\UP;S5%%O 1O5K7ej*&"2-L^|Ӹ[Mz1j,t={qJO8!my2cc7?(eɈä ꔝB0rᄇ!1ƘzRr<f' {|m(q8?& V ZO\I Jߢ%CIE({e@ҿv>r"!k:rd!mVNlmIp sWyӾr2tI{%3$V 4|+<XD5m$_HF=|!)ׯjѣtZXz-Y :-#C:z[,e4?yZIo@Q(y*ݞq 9X9h%_jT2ޣʣ 3& "C HP \V_{ r Ol#˼%]A:Л/0̲qR>XU /֫* ᣊ&L P}bx*L\fefYplWs(V25|aEFؿx\ ן-̨_ҧ X>&Q5Sv/¼s-c;mb|M-Svsh &ˣJzf)w CjWؔE0w1:-%w2T!b\oԾr+-B7F`֦zEuc/w;^x %KVօI"N>;$.5Σ;T1]g\hc Q*J߮Rakn%c*Ab2ZmfirP]AbQeھamMݻ{}F{ẽ*o@źqȱIcy^ n3@;TUeѤըG.8u/0t$,`~BlCi?ަTvxC#|&Qx ƅr-2@r̿w.e8 J|^,u GCܫax~Zl鰐XEZ5WMJm?IKr¶Y“ ջ1/gٯ<|[M ^x"RYȽcR1d= =2s**et7 xY#7{Hi6r:֜$`*(p":\wEpM:Ϣjjrޤ/S<ˮ/U/^'?Y[&t3rZ;2 =4^blb-5r_-(j Nq 5k\UwDQTo_IKhXnzt,po~a%"iI3ՁO@B ,P i:Hf^c93Xx9HxO=9/FEiZ['xy71,$7/(GU%gmq;6W/ě9ژ1U#ڕ$Oƭ >$ yBf~t61OˡD>+uD؍s[*2Jv|=BYt ` .Qw SKWE iK»n?cE zF󊦹ra8].vN4Oi,R= wjœwl|! gm8DϦZAhJr5>,Toޢ|Hsl ~ԂuWGK쟫Ei/G?Ae^9&j79L 96+\ `z3H Hn܍b*&hgU50N H-#W-/I(6&*>^ݠ}etQ-'T%N.Z3[~e :D K"b`l3[aًBS,cvQ>_1EDr|^:`"`!3-}]lh牐Z<[*lK]{f< VxDʚJU whѯ3 O׈8ڠ(\!\g{GAmڧWgqW~G׏UG2PZ+X+G0Lt/ o EC'B,U석4 qik3ci.adyKEPL"9C[Zk7Du&~YF352gaVJT9ƙUt߄7,-z0MW]]<,i`.qZJ7Ф]@(d}yc_W=?mn 0\n׉j>;BrѸmWY|g7@MRGwq_r=-b=Y@'#CVf^ڡp`Qij{5_,θmm Mu휳S#gJi}V'HS7'+J;7=A}u+IoA$S(y[fd-Ra!8m;\ª] ?%Aɷx5Rа8poBg(IʱLEROA^eA}sѧ;=ƁE% M 9P4R.~ZiOGD,'1@9-ɡR>`Y6os]b+á ><_xeuĝE /S5ꚜ;kJdjmsOɎ1_=,vH^kSH)QUQ}+؀$S1IJ7,vq*/*ң̩jc޹P=$ VCފr/YIRCLq_"4 tb*fٴ:ec3Vd6d*Vzl3UBt~T5Ě3,%DsrY' }&J2Sx[V fl+']mxq !z; ~LTŗH7/fG>Zg&Ioc90ܲR0̍4Qu9 $7PlG(Ki6.І~!! INE\ ,Sr+3"Ui#ͭ)ój21Jx(&_h&\?QY ԩƑ?e7Q~uTG$ȣ +7M|S/W+)ۜ7t f3.4;M&`we[*2hWMF2.;B!qwD.(A`EE3~>)QGR L}`+YzvkVɅ/z\үZ7;(@ϕT_(1pr-Q{"t6RN-dnn4>݆nocl+eB8 *@̨kG(L>"ɰh㜛Zjm:_ļB2}'A#i1a?ev0 TX߳3frT`AxQI=(!i^ `?3;2W"RȔzSn( "ȚT(e+gkI=pQ~1Ov tpR)75TQ.yu3tS$KԌjq+1Ьߛ4hi4pX?:7 ><ʬϾ%CFOc8$aw-ͪF[J"(u(wl4ӫƭdn&bUQwBt nrUIK܃VhI1 -omڼdHTUxbEgDZ\W@!;)ɶ@w3DŽef(-d?`PՕC',$%YL7%zNU6eTi<7g࿦T`ԃZJ>d~lex4RPPvbeb ;>X!E T| / .1彈t\Fv^ƾ؁ʰl]s֒#$aӶ , ^JMdQ*Sg"c ;2Ǘ(2䪁x3[n4A6+`-Ƿ[YS&~[0pfaJ|JIL,97WB,Xog6i ^~qXB$1t9_ƙL*/U5^/LHco1m\Bf&H{&%./:,>;Q="ӵ z}&tww]0lt@/ĩgĔ`+YHa A %{gϋG]kuPd4t\-x٦//#x+$;5@Po)nÇȺX\Ul@Bumnh9Dۙ?X }2u؂ڬ(ILCZA'>|#\S^9Kd΃lmoXn报^I_R:b8SWaҞTVQtU"4҂n tҎ484f}$ ?(m@lӕ9i1|'? u\?&0\ 'P, $K9%.9jdm~4~O9P)AC.G!(⎅+L^+f\6ĀtiZ,ߛ-Gjbmr]z2Kj* n~xe$+ۋJs]鈆;B<:FoVHs$ݱd +")iklydDeħ_ ;1jtw@0?E`"#Y%qffK+)1GvrP8mȡ4en;M"C0eoT ⺦Rb[YNGfE*>dv0r qGy9܌C$#ҘtS+ +5)ܱT`2C7dCMq7L^? =F\wsq;u(z%Y؜P~BNm U ǂPhۧgbOPML-ftk/9~ v~`gXxvK&q7Vr'h'XlNL,3<'h +c!vK71'Vq;Ӧ#RlՇgByb}+$\:e;fqa;75p2ƶHM ^O"by?>U-GbLםJ#p[ȘOk|;Yv#PLzE&X8RIu:/j| 3ySN!:K;g,dEW棙V(Tfx^,al@^~˙H]Dv;Rz?;L-!;ڐ?j(3cEu yl|87_|"t=|-yԂpeȑifNc{(fʢPȈk*GKNp;%)H)I-FSD!ƼuxK+A=18kr?RVb+Mo.Oߺ-$Z|TP 6J2Mdo=9 3H֕z؎Ry6Xݳ*tv%Sfb3o`OĊ?.Zb_⣮U=ԣ*!fX|' %8{'pR3$1Iy:-a &OCD0[3.3[d&p>! ĻpP/"? s`]a; dϙe\i`'5d\?8e&ۏOy@7s(lCwtjHw/glTgi%7 9v ]oi05,ǸͪqɅ.D{͟/4KJʢ)RⶖOT*L{J4Q[WM86JN|Ӷݎvict^M)NgW”AU Mb8<Ƅl9ҳ7/]%a;St'~y[3 W![?$ѽ. {p{:WX0d֫a@ΝU9$F5:Gj^>pe`i0 P URT}wORaeTiWw 4#sQHXk(w+atdF2TQMe/.7Wc%4,j-oMT\[]+mi?0OCөL _&83_ڕ6 QəK3(Gƨ=g\xţ:isھ}PY6m6‘|c9؅s =CoC)4I@[4vX攣Qת6! G,q]vuR5mZ4h@س`.PjS&DV6:(8h""L]0k+S.3ctܦ5u6;1+X5P"}m[k՚ryF޲lYƹU3k+s>LF{ \4& ˜aM~toaƥg (6LK")^~}wEV>h6MEp/8Ɵ}E(3 %ȂL_efzQ"l2]Aj#qۛM,Hb;y^0;9)a{rVE)=HX@':c-'O@CEpRˎ.~tkæ~2-kO8(eY;d;v$Zr(y,WT+Is^Bbi;Eyě%F Wع-ތ詥N2|G+]n1Z 6+d?KEs  .BNgָ6wIX rᵚ 0W@WyFmcg6hu&衯$Am_ꩲB)o؈R5pI:$UElW\3$};a.yܽ03Oq21'M\ڠ: $$fBF8O1!aS榍exG [6q|>s8W{s pgG#I9 )5dz+1B c_ sad.{WL YbId0^H8N-#(=|ūQ]j!WC,)YBZ4}1EM>v#{20(efYUApB YbΊM⊰5(Q̂7ilEgʆU 6iZ`>~7-΃!^%|[01Ư=;)%O wg>12_77 N_Z@tzM~KgZ68)uCKZ>5=PdڞpFaC翏z*zr +`Jx8p8}\xZIBg 'à@X9k|.CӋ0So+(@&)('M,\~R. d7tΈp87fI3.dܿ[q\K|GܜC<hy,'ynq^kU7:YAa\g"xK y&BPlR߆|1$X^Ree T Р/IgNO.C:qv F)D\1@(w_+UF  [*K|nTԑJZ'$oI3vBB_ [" "ޙ@O*EzOYk o_\u>he G9F$<"[ ?"h^CBJ%^5}^7tNɋȧ;4+abZO6J[ L5?ͳ:; )/{rCz;eo^nue"{/̐~7W <1bIh2"_{Lς7‡ڋPNc< )jkn04s ^dL~aPySSa_9:9^>F`}*%߼kn\ N-޾-߿{CI"-EƸa|z&=H ,.OI ?gyoc1zխ2gi{ĮCCzUkl:E؀nZ=P׽GUg;p:] ~U>zh%5  ҄5)nA\pݵ.Oz4z;[P0y_MsHPbdwb3m*1?^h **5[+U:Fx 53:p N,$Um#Jn$ ~|Vyt?6Xn1PбvMuq9 6_g@Mu]|k_Kk[,*+QT . "|D 2rj`nb" rdE/x-361RJs/]B,Mm3i3Hv4jT$:z_q)j8 !NX Ҋ\YV[Wg: [!ksD݀ iiΥwLzmZ,aTc[YB{8-lܘ7]q}$ѲY`%$z%jz-x^v縴)˰U4K-j:w7sbgР70[y>R \dw~5'&'ڊ/HULؖ7"߹<{C42^:Nvv"7ӐRG)N>RN[pQ~nͲ51>Oؔ6NLr4ߢ fGHÉn>uev4?|ֲ_Q=+wܶ{u۠) (-jLA$$2jO=cfKu?z5a7>Yh,_Np58h@&o VlF>C5A!R`UYB[!Ɔq<[̀d>PBݧVN.j?,)5딓'3yCp$oELi5R;7 3dU Kڊ|)8j=7}Zd<*=& {״h`w ~( [op/P0'<aT55\:-e_`.g7mO꙲UG,Sc^Y?5(-v`gH%N 7R-ʔiwVc/ǿmI <+<= }éŎ4^z p\餇iffikJü;iڜ#ԥ$Xa]^ۧUQxZM$&ZFnMV'g GƜ5enAJDSɴ(PtXSOf F[WuIq %\|;!^!pv[7cc$H|г* e4^!jN|c{_,0%dŌ7bdD >#|->@ڹŸ́;rn/pF|^@;"WWB7r;7#nvLݟ8^x|ڳ[:_Zf$[tNӫ+ }PIs4I($#n[-uSb۲dWM\شqƐL=Zc}Uh֊[eQ}Ht$B:Cß횖)xP!eS/(yLIi]K.U6Vb&Yi$?|FD~w ݫ<\]"|$u1wXKˍiMgKf>'z0'ƨC\jɧr^MlM1tT+q w`ꌘRπTqBYK*P,zNdRj&lUXduo`H&JX~Az|tHWnbNWS(HRȋ3 eaJT44GΊլ5*/ 6~jisbXĻBBS%0L.˱=RW~kTW,pr-d=p GfC/mQܚd;YM].5t7R3fk^@#YrrǩfsE2g,2vCEZhP`꣭%02{+׵0s2Jh5=X.yoF|a*ڬ:AgCf=#Mo:Γۧ)Տ^3b6bdq(.+/v~ 8ᆘXҐh-^kReUzaLDȹPO$$mL)+8/182l5fc*kP1}[!w½QkC9vE ~(k*V- R+p>mJsej쬔kjE7Wyzmv֩:]ٛ KbBl Ryz jjp5ޅa%ywhVg ΰ10wcp|/eBLF{'?Z !{?BnLxjodAKʇo<өDFj}V| B-d^z`rtNfgBLFIsWT lbu44Rk'TIuTN !Ҷb@w&NRAd;, 1rS^a2E{jx9ficD@I9^p 4"x=V5&`vCى7Me/aуś!p@gI֖jk$|6MQHچH #z,| ?;j4#xH;r<.:MYH].qHA[_; ;v_ LwWuGDxi ~ e>AhYIWFmN 1Bo-_0|V**Ǵ*W>Tk(2{@4 oLS6=GQXM/F((D]BGf 2 OMhE@W%{[$hgB`(S┞tֵ y'NcU4`N>,\ hR6Z~9u /ɵI˲$3['[-GLFyLru yB@t@ݪsg^}J-Gb\.ɑ!~'IDy\A$wN 8 0HNAYkqԂDom=Ö=bLF}טlB-LMkb(%rr9O@6l^}j61K >6vbL9F0=!އuK>|aKp;BOHFv% MpUS~C xDc^g/yVxSGxjS-~WpG#cT~}l6| E/zyԞA~ %N׿I囝\fh:uRkЪ|+XRzkTGb͢-7Sl$13LaM)#/u!MGeYF/ I^ %3Sr~2Q( x+kh)h DFPV[,–£hћ;F̄jQ?fFؖ&XwnD=5VUucS"4SuIɛCufq9t x@Ϧ`{[2jKXfo?ݶl L\j'RI[_V"Z՜Jz ,;~, 3o :ڶ4<2ZN)a:V'^J='' Ԩ #Exfm hqHVǓg;UF_e-q$R`GȘ+Nbٖ&nmp aPB'#Bω(4oʍK#좄~TqI d߾ .:Z(Z |׀<5[|Aqƈpu3FRݻspCx?W*fyp2戴敍6կ`5t hkp)%BB d룍%͓/q/W5`Z|0,}B~uwi\Ͳ NnVJ, [/ adBy&D,ӃҾ :(Hc|礲8s:QJ@fir0x̮vURHd@e'<#,6ץݶ #WѰ h0z,*ZYWk?3&jpwO5(S-]~.f$|Qˊ+h#[Hv|XP7J_m]^@Yiw_[ǁ.)w)F`;Om/= B{x@9(&RG60̯jgᚇv f`⏹-4<]N6T!?iw 6k 숒Pnrd~"S|w ?*(}sSFN)ygC%8bBG-,/U c'}w]EmWB`tG~]T9j(QH-|uG}(dJ>YKK=qvJT5^m v}~$@?3|+r=!GpN6SٟFk+çQe ']EޙHS>0o/C+N$ۮi  z[m(23`[fҩ"LOg Ukҧ 7<۠(4c1Q CoHIk9 FT#f{9С(_ǯg,A({:a->ͅJi' HNݫ^9*F J(;oƼ?mJ1(auw\sO{ Ga!.&|GVG W (!PZp[%lgmrNG0ُۂW+(;\+5ss{k]*2^& [[˷]QY.djKahmAcf@XȮR5ڂx&80뷛#k6ZcI"T^Ve <{,iҗc%4ϳi*G{L*bL?o&bfujY1`/}D!B .nQ ۇJവupyjl *sQhIHъvy7^gu8~0nw|tח#șCmËBtjJavy _ ;H]~H۶c% =3sQ M/q'dN$-2RXw8 c$= ERP~u 6T=2shV,n,SI^idt sc/ʀUAՑ2bv 4\ 84cZ t@P'Rxk4װhyy&sCC4I )>L Ӆ +D- n}PNL1 w J!_*xxZo$F3,<搓=g5pbo~Qhj3(< o}}x&q}zŖ9q5ְۻ 0 hB=sG>2HLp2e!?n9set/"7Tj 8ti!ulZw>y)ѣk4 >p%j=ڟtH@0 "pm Γ\R\MCȀb*>&-Ne/;j3CXHw'nfH=ZwUƓеȌDBu^:Նs 1y?ɫT jq[fQB Qk_mQZ E"]k]pty NT M+ߝU٨eB\jT.vb{T; : b{;[m$`"CG A jRƮ'Ya)NE{CMN^jDO6;呚͵]B-Mx|VcIi2q}%ԄDݻ%)e;\7בHS^5 yZj7NY>!V^a!gYK^vG*b, H8(EkL'Oy_+54h`=a ZsbRmC6\ظN 9S@|`]Ӳ"^w$E% (BʽA͜";öAam14._Tv)c@4^߆29>@=eRԕ{,`5.G/T*'MǹXNcauN.`D-_ZzMR=`UjR>o]@x+U~^•'ěԢ@S$Dȱ[ﶹx g޵K!RۗD 19(-`4Wr^Â賆2\r!rǣ䴥K=" 02 $.5:$-yUѢC%z\%i`^LS<ԍ;v?nC x):5.@|rbl?S݅T0eJCc"&afm9M>%Ս$]wńrpwD&/Zp{PV!([yo-\ULrN ], px_v%p)q)˴t` lo'H yo) xJDAB?U^xfPuIaLi_nrB%L ѪVn&F C0=2w`!aoCsM-UBw爞 {4s۱3(QNWbm ztE_fpjk+E v҂}#䯥B橕(_vkG{.*yׄ )|%a\1 fz"Mq%mk^۠g;A!$krGP4jmMɑB _غ+fU| Ɖk.͝%s59yUXl-P~z, UWT f\gfB ?BVTI2>,q4eiT9ڤ1nEw?6T+iVõv1t˳+/Tn;q!Q*L vUп&m.YNsЖ_*48k?:,\`r-W!335+ۨM[ )1_];]f,;Hwv;%GXa*Flb*`JreLJbq ӧ^@,l )ϧfFr!dO[d(^m0!Y3>04[sOl}N9DW6;xƂ.kOivu@ m*l*|#[=lx$G w2` Ŗ͙,v_\?P:ծ];㷯4lx}ysb]Ms\? sƅ<9'ů)3&$g"OrNwƇQ1r:6Th3A[(>Tv]{g0c&:U&7ϖ46UYG$ai8s6 bjj#C&o^O\C 46zm\鮣ѳ=dgB/tXDŪeB8$xtV~Uw-O|ԥ J1n!-NQk-1a5f.0%>8,X^s%bGVNw{_)B|I2s.];g,eiJg1,b3`ŷmo:NFkzao?,X+*6 wy>A[v>t,ܘ](~XyH!k)Xhl>MwS/ɒ[[Dlxs{dvd%|©ߍ?]Mc H.jZӃdr_ oDžN3߯ !;=.=ȅ ukV;E\ TO@;W+>¥@ zt 亽r= DOY9@'Oպou;t'Zsp!>;ӽ;`xm|h:RѸZKW1(g&VKlxmN&jlU@P-TEYR9 %ʠw}Dp:L㮜u%=KL6)=AWjo(H$p Y\X[jxDbmMn/]iC&ƅsZf&o͆߯8w2 O1R}*H$>r/XhXu\r@nSoQhMM鸏Z<)d9L񙿲~ ZeH.c#_ 65)13jM#4҇qŽEgYG".E-+ xMNҬH\O!(b6 &>\$Bh&Guo+#!2nJ~Y׬@jTZ&^d~"pvZKt QH~9neD%ڍ29urY茲BǣBF>xƹL gkc-ϛZߪc$ݣxDrP6 b]%fZX? #LU-Ke1mokj.HulLڿoP)LlhmuL,FO x29`3oIYy~@=w:1-gZ$n."(,m+[v/ii@=$~vՠ.1h_S-b-*yMD~w7rUZdoP"܋.cvJw !_S"^^;uKDTgFf.VbnYhw '2iIdfϐJGVUXSxȾd\UDjpJ07V_9j~m0}}uscЉ(U<8wRq sPb ANbb 8i1+Be(M > ̱б!M53b>ڜlםH~! . ^20d ],蝹ε?6ZXŨ;0Kyo;W@c[Y9 M:>V8R j7A<}DǠ{-D)9%>E64b&ɱiBFCxDX^ ݨLMqGT(:E *h3H_ ]^ϒۇ[;UR0@LS>[ڒ '!:Pɡ{/C'^yG|Vޮ#YR\F!-!L:o;RWm֪. ZMЬzEqseO;o"|Qӫ-mS6gb}߃ek)T7 j :B%_C:Cub w-yo46Yo;̀04o ՚5hG6&v v<8ΐ*4Uro|cKu7#qlz<`){%  ɱu' $ξЫG*zE/g?{s!̝@Jyn#8.^'E4'c2f|h8hz߾=+3/:Ksx"m`9<±U1d&ln2p|v@)G/#Hdl@?V:`5z;VXT ȵgS #F'<3{B_=UGrb1f4MÞ;1`t6m3$S{ʣWD-\c'=ᛵ.8e}[4o%mgjVNfY.qVL|X]l-e.|CY<p {7;g >#dMyv.Z``%.`NH=2_ߐ5w z(GAP$#˃r7XA_'z޶󤥠 9 {^&Fjo 9i]) _umZ/@vnxX pՃ5 qIX<_Qxj$/Nςrz6#m79 ] @hI0*эK..:b/՘0Q>{A?_1,J*}Rބip78NjRBq1jpz0ȭ zxTU,_,̧+\| t4ҡ}J #gG=ce֙&Vsf Zxc0'EӒ2oM2Yqyc@@I;+QglRB`Wbrz؞m@}񊆆q}ym.^"2eW3wB'ǏHӶ!0(8o/:R&oTZf}y3zR*#]' H=Q]P?vOA?jhۍtČɽ 0`l݁ϫ*pS(OG{QT2v-V}+7ۈCa,|2aQ܇m#ir霌U|0ϬgEu(@ﻱ vާJZck zjG\%;tG] {ͻx gWWsk`cNfu)0oNդn ݗzgyY&Sk}w>-rZWȿk+gJK[|TH3QeF_ܷCюVp3}M8'zR5CT oyB#e /<6WEX[/χAy`D0lƜcxc1؃rb]q5Uypuՠ05}XF )Glb_:RPQ^cjIϙL\cz&g3W53̎^i6e-#:.fz|V޿֙^O hIpj|>[5UfXdqQYX-~:n+Ew:vci;[l{B~=Kize}x\:ϐ7s؈R]U\^7`k;\E5-~|LɄ&,"dEXP=8ቓntybՀ0g!Bg@v:\Z^C3O.v'UU^& g=V\Uζ<'1\I95L`j^"eI'#u1S4ICQ[|,#&'ii|;"jR 8^@IDR+B-\aGu@ESL>U0z=Y|6b/ _dA[HTUD(ͥPf@EZԖQYW-1H"t.DpNBm+ɬjqt+]-T Jx/`V/`r/!銅|OyFOaWy.:cHL7jTA>3ͶHd[̋f#&:J%UQ,5\D4s$FRLc OM5sE{y\:MXKP~2*0W_Xm7X|Y&BU+On{VF.aE0U6?k).;ݩISk)E } x4Z ڝdc龶X: NX6wț}nx6$6S l|ٱ&=BN_rM EѺ_.ttg+ .+!GUa$vMH΂ؑD8#~{ĀUL!0;d" Ttt[ixZojRC盁 7@W0963:(p|cv0LMyJ&۲FKB[xr$]Rϊ~N<&ʱa^ f9n8pZTDzjZpGCAF{8CBhf" Rg$bF61뀀`1sO'B 'wTe{t <z qHzT0B*4_i%ѓl\u8A<#J+A6KA)8tHҼ,ؗJ*:aui'nΕs29 ,*$Z'Vrޝ]MlGU2&I) xT9ԻF"IlHW|yQR~ٴB|__FCF[ݖ|:5hJi"xrvfI2;@bv9YMW[FtޥSJHIOۊUP <~-XxePBH"\2 @n8O/* KqW_M߾J\}AGy~4 yEpfx}n-ky( n=*1!;:\ y0"Aֈ`s4m ޮgP^%nESut[,(M1%3WIpw7,T/&m kpJ%\ڟ)8dȣ'4T#lY; ջ"Ӟ&@-ݺsi|]Iu#c}ҡ?5 ԟ!#7}{ 5`d"rS|aXL6øGu;DeQ;J`>䛪P{i-ZF!*rjG?!9ٵڑ~t GMI ;fgZ=!Vm7fhCCCh$CX]lUŻ &!\Fى7Y-3,eUYp("ɘqSJ!ǝJy B`/ltF0蚚Á`](m!vV`IV'!J$-5.{oY}o fˀ}8uBv;,I{ܣH%rHzY*R7׎(9H֕ FܾC+G >I:psg̼8}aXboH<1$ߧ. 7Ѣ1”&B9Y.ZA{۴Έ,|VVSJ6W*tY_y~T\IW ӡN6vw(U0P;M;AUP]Bw +c {3[+͝4 ilPE}?FpykIگBd`*r9I\N1Az ~K:E JˁRəDxb1 Oy˼ 'r+/>0O jj1KU[#}:OS5>^pZH,"_)h@y7?2 _?_ o C~n}$؅RwN8Z~?r^lNA_Uö\IBβæfjՖy?oj"HNGcKr(/ aEU bb߀Q/ q|y]>|@ߜ$gqyUEMZPD֋ c@ !7oܖTa_5HN[c 濲@CX#ﵝz Y^=%u7SEF~DV7D^/z{q <+݇3N_7?qBPn]h^$:V#V˾C{Vw6a翣0dM89䆂Ni$Cu7!,x>mnYZ6,61= !b[9lr1h)Z!҈3oc5(.=(": Oq98 4#jԴpK?|/iY΁>[B]aFC@'R^ЂC>?ePVSh& 1r|J33dD}g.;^:mǽK*4A"{9f47j0OQA[3+G '.ʤ'M&OF'l3A5ݱ tЙ}f Z/lv4$ MNqWa*i/> x N@5JQQ&CD#zG^`l$k۰8mM|Hgn`uY&/ d2+{?Ӝ˪~}P[K+]܈c\NQ<ʔ+ݝϜ%ݡ>e%>n1W[rկGJ!e8 >4/yN}:zF&bT<D,PTýhDR߮_BKeRw "xN=œb8$-jgto'lO|Պȏ>7Bѕ 6@B47Ma 2#*o9,ڏ|'@>5"a IrH=0>T>q^8Ȕz;h9k xOb!v ?ŷ\ѨLp[HUP'$3N}r*I ~g*J){Y-Vu͢Af(oi&}LC/Z Hr_:[HW[`@ \F]laVE@3(p"KjPt f`s)޵6"0,.zewsY. %[$ kN-<";.K?TK25x&ZVHz zbPH};, @,k&GP)N$]e-Ū!5뾆R Pӌq~,uڜmdz'fv/BMx`e QC;O:EZhIk70gpZa@-~4,kn)Q$heucOS sC [ 5FVR8I ] Y)),cQÒ eOZ"iWb"ad, 8֠ ) _W~-^l4ߴɊ*TS% `m1|xS-<-H[o81G a@GB]&^;^Wzػ$lHSؿe4N֦pzRtCƳDYtKo@w3[!1Dz P.Ъ.y}*$*iRCR0 hfnD ?= PF׶ OHarz6Vxr+`́+,dHCXjј9h /n Ao96BL[;LփEG5v3aVgeE YE3S@vοx'₿t02d1 ?M+7&ĥe\_K)d`>r>جN#yø0+| 2%c،.-<΅ꮖ l׎!L \Iս 0}ۅҚbmQn/AF_HhoYgxCYY[t-m h 7wտmv1va{ۆ j-OG[\'Di% (IQU tH$4ob^ָ6Ϛ%ulwO+8X쒭Cծ.Tooz)6I&PhD1&xx:M o/uC!L! X#!a&o)/X*i}fW#<%$qy=A/+7fJvZu\o]Y{\>frwYҖIO`IJ/6Hϩ6nIC"*l?T-ljVOruCTEw.f?E !(HP %7#@ Zт9Yj4c1:-Z>Ҁ]ퟑVFiTh%iuE P/ehʪt,tWOEn 8|sCGOX7.9 O3DNT>:h5Xj4sa*>h cWѧ߀Lϯ ȗsGzn]!Gwfbm^Dxm(hL-Fƾ#dSh_3/}pU=6ܿ)kh4J_%`IC9iJۿp'rI`$Üߟ~JEȯno®V6S3BNPO+ ͟0! F6?ßnCP`u,]nY{ϲm*HȜOӀ< 7 &Ťl޴ D1KژQ-^) akubU7ϓOӏבTz/w8;"cJva#+s`;n毡OH𖳲Wd5[^k?<^Cou"La.(!/RWq9> \*lJOQ)Ո]ݟOD~~/}JDA*M0?>}_aiK59Bѷө؋]Gr;/iк wc\WbK,1];>¹[w{ u+,Ƞ3ax Ȣgʲw6Op>}]]vzز` /Y;rcn<-dD.o^dZ;48z-+O?H|+g3QD]R\ &5nt+WZ׋Hߑ&#F1:qjլsrS^vjZ0; 00nFɍJqI,:#NpnUQL|ۖ7j!].*s\II]|5ojdST }q <716F6zbpOf>9 Ni^' EZ꿄(s8$LXr*3 9Wm6 IZr̴^#9&0!HHP#k9"NWqakTYʚ>G2zL{pw!3*$AXEzX=.ohD$DxAGy55Ğ*[1PF7٭%a5QO9T1Fk'3mcd-OL|-`zkaKiV:*iDhcL) ؖʦ++i3&C}@\yDnd`%gy+S q 1uwċxV: Ë[F:Wu,GS mkh^q8_+FNaK3ȸB ޢ|^4I[(TD<`0܈ŔXW7`̽Ή^V9;O.6AӻaGk9#o9|Jie58zj 6sL; Z@BZHހonm2[-SfU#r۲wV R &P`H{3~L75C'AQqvI~M!sߤm.2f%(<4] U_ד67 )LjmasѪ=0zQ/}ɖ=Hr@>qxڐ TAվ2_h\o$U:T"z|qY&(H"Pu ל?[VMe\UB۪SJ1K6a $8sOWt/n wh_ C@FFlSMc*^]-,E#?R& oh9]8- R0\ 76kVqUb<ϾI:NQ8  ~ WI3)j%CP!l ܟ4VsdW8u2&SX ͒6cO.ԅ$fҙZ ZwR!qJ`t}2nX]{ šz!gUiHrWl۲|QʫJh_,<(-25ٰXT#jk✿D~'$A`5[J"OZ߉P[{iI s݈7'|c:>@=A%zchZ2NjOCˌ)GYrg zQdu:ZgDìэz[lth- 'AA4jj%Ã}Ab(v]4a2ӈByC|Wfy$w+@Mϵ{$ӈ%g ]* ]TW Moou7I$r/N]$WM|N4uUT2df=׺HL+^&*ln棶W,K:Tc˹7)k-y*ӬK6[NbS&%LH߈B];MG?rd8Y)9FHT G=Q40eW_寲ff|QH!2`TTAǩ+4s䀜4l0v):nȑ7V/ HQo}њ?0]`<X T =p6| E5aYfc+f`rÄJK59_xgd;s=w,eȁeZiu h}ZjB"UfX ҺDQ}ߨʅ}zYA [!cC^YQ ~r8m?='lRgmMe Tƻ%Lԥdz PaTӵE} FⱡY:sdS 0)-=F$8M# .A:\ʎIPTHhƉkUOSRדoa_3]|3鹭ۣUP~ZlF>b)x+KF?5TݎP-̈́ Ziii3]ijU=LDӔu GgX`{|Xuɿ 8y46l&nR7g.kV-osᕸ8R7q[|,4Rf-o˝hQmR~sj֚rى/{TMZ-Ay;Xjl3j}Gm/TS V44XGXw/e=bQ>ToB[lFJ9Qn~Bt"ЌnNQZkyB@_/< ꊃTM^gmOZ]OQXB^<<>r5rF>\z"s\Kxz&K%3@}̷7FY,Ƽ^ao6.zB3+8C5WVᵇ+/&kYBHhX8ivA i{˳Їi3GgKKab )3+ayNں{&{v2 HiFO,)ߙѧ3FYʶ2EsD;M+k)a~4~O\Qo_[B355; szz~R#wPh,y:B/?|ƴl7̵rka#?tٻI-]Ji#]6f]j Fh~Ot59yQ¥d`ی/y&gf:*4d2(@D gEnJ\.yEOwN/>ޒ+*~Bi)(cSW Duf3…*'ɃoWJ hYYȜY{YF`#QlBGd}o l*QDsTa\8jRsijm{GhI&44QfL@B'c]:a>XeyUWn~qe~{)0F tMYCÖF` 6>jEvȹ1p(DEٸQ"XT^#M=;lput;MPs:8]}G?O.~z{A΍2ǛΨCRcw1\B`g @G_p'uBhz*)VeN{;>ub/s: 4GуӀEYzНђx P` 9)Y!V&89mH ` ֯lt+d۝_ѧnwBGC4 gx$CO%8ާ1hQ)xc'C>Ps<]Սʭ /y) 8$o=8ƍ1%s.nܭ~Z4No \̓44LBsINy p'<`{Mu[sqYOk=ak@@[1J]JFLƌRuSz wAlYTp,2!^IUZOd!xGLeL[<,ь MW['Coz)½=o \,xT..<}֜,#Q|ZRwAuY8뢧6/!ҼmWMFG?QqsT:\|j[lb-AeZQqP,ł"J?vv\8[ XU'-hɚ#hJzMѷ䣹jTJcgy9%B467%чUVjZV%pN?/<@>ogc^+iMB!Ċ9Ym";}CΖ o ͘+p'[Lb>SQy6"ZWiw6]Q,y8Re =mӇi8 Q#C*P靔X@ȫ2]=qD9u3sV9["ah&>n$/Eq9HRҼ9BsDf՚)QMQ]YφWJu~aA%"q+.ܖ1vΜ\:u,[{ZXG(X* V?U+@7.̓֕VGpel5/yv?P*7T,O_e"LY3 `[j$2(3X1_M/7OL\(C(jiu^j`V̱ kЃkpmp7]σ:/Q.T[kܷ_%;&%$ޝ7\ҖO!,AW T(q- %cFx|ê Tw!8ar$%u(tY<L ӚIerpx\bn!&Rdup7_ 6[e0]y2ja'm*2f) =? M;IȡIjZ@T/kQKIaSj29̎S)S9d?j/gb@l>c`xRʲ Dx}jyBvtҙ@;}-_O G+YT5حR:Qĵf753҇qިEgX|0d@߻&-fZ|>}S?:{zc 5}7yy5]lmŰҺ7eU$_JC8B+܉gwe_@K\woQ)mr 9gk>寨5GhI9UZbR[J3 &y } Uwhq d ʲ+6ZҍH^U~MlOc ;0b24?v{&pR1+ɑA/؈P%YBi{g6Ro=:ATUq/ ʗFoU_rQ~ P)Mo<#|ahEor%Pecc%2Hv&y-MН[Vm5o٬z@ \QrZgpAS3IH(BW4E]x}B5axͯ&rb]&oƚm:Ka0 ʨ$vJg8'Wbka'):&֣2#=H:( 5S=&t2}CNcЫoF2'N#*蚱nxbXa*iǓ+As=_3$p&m"@!0 zrU&JhuR;4s 4oalcb&R|oDH_%U۞~brh#[̩]/΂U9C:2g`ej%UZn2o%5#+Š>rcSxݲ>&nTsibRx&_a U1`n(ڢAgIKp-C|#i}r`Q8TGBHMYϏkV诡SG Uwjl0"u "n 6dvk|荀7;jÆj<]wGb++?c@\/+!]rh澴 R&00Vj?mqGgB:-{ʴK g26qgؿsa~M?D̔6(F_9Չjx\f̝04fHwO3fG3{ S xBjW=!;ftEt9jcZw=j=Q"HKLFFih取?0vMIY$ ۔Es~T.rbt`9FM]Yb5(}IP)ŒK}_(Ύ9Feobˆ}. {r3O*A=!gf;8ZdXFֳ}9V( \WF+-JH!*{X$uSM0Uw wZx#I;Lfߜ-,iݑ0ſ3~Nlc@9.P*2`z D{,@Ÿm0!~MaC22r?3oZ#-H_~ώ } ˻Q/!a!Ʒ[qڋ?~rPא"B<-Eъr*.?[͟ⴣ"`.K|y;-G17_:2@2pf?̛2 G#vuHڵ_ 9ϟ7?o ϭ Oy5grRkH{I6j+F_LmE|Wz2YGX!J#;^GQ [aH:mAMU h-).ՅG=p`/+%j31ɒ(K}t?˅%Co0.Nh:9F@WAOSc:T >\]Z5}daN^ٙީ־C6Đ!,֝#\]!}h70Z*ɐ% ☁tCro EsaBՋ3U]F"=__⻉)Ǎ~}Bw WKR茶vEz>0ں(.shf3jh)G j¾#g&>WĻkWM3t&r#\qC.p_I>OgőpL venГ"݇.r##Bz~/U-#f_$ge?{n`)+;8dHNp [ɠKr.lP.{;9}ڕZn R%(%r2rOEjQL͹czOJ8F /~Ȩ:<&0/*?պKG7zo$ҀQ^6ïŝYZ}݂y`F(@%'2VBP;ƛY;Iyete$?m0u#}`2<ʤ9i=a?xR->8n?sխ=0*ùn/ްy?'cIqtjp;=o0!;koQH_-0=: > аUG8me?@ Q3eY8F/ M?cWa0Y Nuj֣ H>ʪw%KG M8-O>GO2D ; >Sx#(^vxy" І~[H C]v^N&o8RD }kdG̘)b)-b7ylWϰUD1͗ZM٭DܚGݧa`>̊,4b}ޔ=e?v#ߠQզS=Sk3ڦ?bp#̈́|9,6cF I:+3Y2'{K|iثhvIFK^10&H@^˛ sЯ'.K^E pp6?7s8[z KɅ \#`DjխDexlNTMXQ A% cHޡz0^@C*Y&ji>ǹw0vTf"Y(3> fmTkCDZSJW(nIEEH:"kRޏCd,%:&.*LTVfP/~w*љL6 j#4Qul/x|x%Zp~iY. <pqX>p2\ߡp {tgl qch]IQ%ӎ H+m%:PLbͯ3?&oY Fo=?*-a[NCTw>2;M=v@CsRV1pâmT)g#:a Jc 6+,@0$,KM19lĦ;7mz$ӳO.̞74%JhYr}j @"9YG^8y GUHetGd]]1Gwos2,dU3$qa(nÚsHx4>׺U_޴ gq*\ ,u]l Ӵ"Pe()>SQxiKqṠQSV\hĦ8?qJ* $vl163)+wV<~ԀT*sF$E7 m;@$Y4=|㔈rC9l!V.Lۈ'ڭ67xfvQg+y7#NJ(ac_OUx/"wyI FVU 0 tzRy{zfEܡ:;18 {7Q"{(s^nQS BNPjyx4x=aa!+ޚ}#_:F = o^Q#v|*^&0U_NN }PSD)q/3 ѧ+Z uEъ 5jڦՀu˜@;!fq'3[πZd&f4^ zSrfdMΜ\p쓩 W}Zη|B-_ z,C:,1`nKe>=KK+)J  6;V̗:a'j;a_` e| ==3beʞIX&Pr d5la 'N]e,WɞM(ZX PXCwZG;Y:VOmf}֕1 y2 >6[`k1.,:.&:(ʗ'X$cG >_Ր8,|#2qPhޖJ7pη{yvܺ^4է@5 LV%'>fy#x86t4*MY p~1Ig|Z 6҃P Q"xrjG^-RxLuR|i iLXY0Qf$;YT6 3zo^kҲo*MPl1d` tMFҔPR R,R-A ;,YKmfyfwLK\q(q|ͪDW2u%yI$xM@Y^Iήqs1M(iWbc֯SDGǞV7xvav< ǿ4Vxvk<}~X9r#bu ߸Nk]"|s8, ~)Gu[)cyKP 1ߥ x(=yI,%\)o&uhB4C4BՋ8cVuSe^Mwl!ZYNbB^O;h YM*U[SV#(oݳ7,p>ƆN+|[>zy,̠d&b  {SDз~/ES=պE3v/WǀnwHk$\-.[kJϝj-=1ZpkDei kV@m ?^ՙlԁ8@P|AwL`yCtz#+#j=% 2Q %݃3A3f$6Lyf6D7rs~#R:UBЯ7Lveh^l @JB?^Lb'?ᖣ#%S~OEkɖ_'{/zrLmu!8W*f@ZG|y}$\MvL沞)")| ѿ;zS|5Z] 73فN$FGTn6PQ%LO~PJ-s9_QT:XJqnٍӀd7.Ӓ.tn|A{D=^>& kʬ|( j-^po*?خѓ@ʽ\^ۻBv#5؀9~o2;Y ]{&bd/Q˖],3ZEZ;|"!ӧau3Z qt?M$?O0øD9lzJmB1qw4,a ~lA"9 /ބ$#2㗁To x8P؋PFuQzdXI4uKZ  wks]^V{ h(pZ:*[gHG>'}zwL\T,p7|SJ`#D`Y9t~"Pe'|_Yi z|!Cm'#(#^)*? PRi"53oT؉ nsUUg%6Pccrݨb~dڏ}m2?h/3X56OӋ*Hg7HSB. i~6FD:!'>P)# "riyG`znXr GnnJ@%nQ hjNjI.Sq9c (z$ W5{SszˋT,CLJo4v֜D)&|ud{k{4u9y4E@'X[<cȀ1n=P:Ra_U1-:%YRX$NDyJ"pH{N/'1bqHs;lvfctJ%id5sc#& v*ϠbVKxE)3a>xZL;)80b ܐ8 1\S- ) GHڨ-쬃e5OkJl>b !"qŒI$BVh ιf N F\"__|4Ān[u~_?@_&䲼b'j7 X}p' AXn|K<L 'Qđ*M\ouf W҇ɘ$gRN.ތ\yOӽ΅Z>#n"[dq/S4",{wX "$kI/ Uဇ9Rt^{wlq[9#уۉg`u2grH4o'I 5*@\s7D]a7 q%Ke z;^^~>8>2dp}V6t|dzI 959];mLSAwgdʾaDj&7̀dNj̘W~,ݤոcUJTׯn\ViNU;P#70-? 9LBT4mJUBƼQ{[|̑F衆/mJdV! VϾ"OۈBߘ^8-,6z+ ]"" >et=@CC)Aw1Eg6@ K!i@ݯmg`#,gKQ߮86=`,޽)<_~ GfYA|w=9 Ii rPӣ/%/PW@6~2sǙ#CEGtInkWf/_l* x?XYZ(&(X0!mvX{y ؂0l5*Fąkg/vBR&&6rAn?\+^kRc;Xhu`Z[&8b8!T!"P1~gxQ9'kWoh!I0b0d+qHEPN}FܪjUI`OÓa)gtnP HW¡ѦIvX0AOU ³1:KMMd~3I|,^Pf@$j~asyS!b]@iZm*_@QuPǭh'<^n]6esO n)gzЈ V"QHծĬO4H)v! HNE+-}e7Π~AY'88zDNZ*GmADxN )jA_LQU;*[6t`',h Lk n8T*ub\nVS,IIvA$5UGwCDڲTj-}brt}@ o+g+R1s2HAXyV'QU&c^߀Pˆ6uʱ,:Egw {ZwC=\9ҫECqjj'︢gxT]o$qVݡT 9u^]XT R R1N'2vZ|LA\&V7 yՍ B?17 K(P߁X EuF _(.qx;x`"(mU^Z_;Uz.gڃ-3J̣1$p\H6>*hS~*$i+?>|ӛtIpUcjfXIA x[/epPqGBz~4t;XŗʴV&eE0q$+}7hz/RogPcv rwW֦oʔ~{gP')ZS5©ԄS\2D"H {݇n fN}jnş/(E!w̓(W6@:ΑpI2djjh)po3 7F=;6x]W%7ȄXGJE6!R@4 ,5'&e~[#1_RZkY^tEp-Rj>ЄL 9[v甊[WL BQ#`k!p@+^}{ڳڼX"v3i݂6F{^ǖgxo5)]Q?d9ϝM E>ieJҴ6'+vT-(<+]}D >J FJR.AE r+oC!BNz ArDJ*2ckN̽2!q#zʞdt #(dBj5aT"sHj'*֟h1X3yZ%Z6Y`Eh*˼? :]?4R|O1ήca`0u̔\!C|C2l"$J઼'dѽس*2^ef B/cqjnEdr'<s+¯6,Y񭍜^kC~?*3]5 mDqXBysRVFٲ1b-+fTb[?'LG6ҁNq1TCFp2&@Vn*߸^xzŠx@e&qEyҍm<%aщv}樬j [`\h5BL网5 Eyo[n b>b˓5SZw"T s4qArggӰCܐ7 =zǜa`>)E[FHu=!ΙyM@('9EXqE4Yg1&X~~j[;%P\Eb33OЌ?zƬz_ p:1M@LwxWfazp`>`/m,5ƽ8$Α(a.pob&_wUh'l`cMl7n#^{-d0Fr1`{+ε.rA;>\,?HxO\enXޔF_f v%>pml/uB4DRJĖeFj w' #et]yP'(xpF_xX! ѿ$/,R["8I3az[oy-`˽d(4*}@[DKiBYޡPk qoß F vk< "a b.e\s(Ŷ,lF4·., k-1 -nw[H71.Տ9f%z9=<,<=sCIzuIRTcMg0|xfp '+?UBYfg+l 8˽X;F`W55 S,ua.TCGa类+bV_ דngn"LYd0ϋGh}צαRyA Q8k5+]31R?f_c-? 1W抶yg\yAZGҡ\Ml:CN7r`V/6w,27 ̩w{ /~[e!Eh(n`;h% %e3`.xp,x`m 柀\b|c)@u}T$!i5CwZU>7v]W$Bx׉x1.8}=ڿpAR= 0{_uo.,XK+isqŨ͚冷T2@r?tH!ʗaۮ>+=XPK!Eh7D4֓;C#Pg@!yƝS "[$ M8J5=-7-bdF|& N|JyJF+:2~TAHK rE(xk&1 F٧qU}EeXC\Ln "0;"{s482 v*wԲ#i{>bB3(Ч9mث#'}Ev-Qx1unQ-1s⼑В5ndZ8ha^-K;3'cL9aĩ DG`驤(@H m7$ŽR0gr!cV{_cP-ZOlP r9UAd{P՗N!v&9j2+Ghr/ET; kSAUX]RTqKJԑǷ7KȲMa}B2^ j.ץ`IL bB]|w5R?P): $i]gw,3~0NRV- 愱tIAY[gwp( q8$~(5lլ˦G<2A 7xΧ;lC{zD5n|$Ǝ%%:e3SMP۫ޝ쏾JXɎ(RX OA߲hjDBی4Xж U`%-T6u+(7?#  Z9a8+HJ.mX@xN ݻnT$2#VEb 7];[+)#W7 ?ۨN xï\h]6ߒOO*t 8.W=(-ͼhʛXˑ` ot"]d6X_rzP^qU~[UWݱ αy@]!U.p&h.5?ez'^ڳPz=F4u1WCO:CK~%gaДͪj9y)4K' c5$,o;O|1w1_Lf>o lp"QFt?Ff^0BK\a}T+5C9BJt +LRgɆ"Q5:qqh|;s3׻+p'.§'T;E1'AW^p"KSzMqݷo6@i$})pMǡ ,н ӇGblMgW)9b[yVCLUCظyw˧G.x7 ;2sO(NH8YkϫRv-502 -4 z!B,;| иeο(+VIyw;o^QHrE.N!7}P\lW=h(']f #44&q^Yr/"m^oiSlX2^XHh}"Ev5%t|PD `aꎱ u!4ju_L4@i $Jߑs}Iq_իMqyA5pS梉H<%6z9q1(y#s[|uK1?=k atH 3w _1\:Fk5A\:Sb$ r%cjz"ygul x0]b"`_llDУ9(QH.(~ўLϹV1 hѠvŝ~pG=g'ſR!V\V'&b2Icu yy4[;_Ӿ"v@#),UWQ\7ohU:FG T1)B ɱ.x57tG~+EMa\qIE ^J=K2:ޏ_R->Drj_ U 2.z pGsZV !oA2؂wl6Bfh3cH0Ԍ%8Dtiy씁@ CFӀ>a@ij䮈IIjQs&4h&2#B^yZ\Ah}+l- SΫ̯U@5>یb'&\L@K4ᥜ?"8zN(JxOVyuK%g@C<3.7. k?d)5{CT!ގ^!n O -L$>*OsjcFc6L ,]hx:F8C;"%0oπơ&wコS{L6[ZUWFBu¶ OShHqÌp &rz3FȥiҬ}Ɋ\GqI^{30#X]-StxGt'B虎9^]D0m6hqs  .u <>sݳ>ROt>r.7y4|FKW7bCKZ4r{?L]6qLLoTdT9&?\Mj K as{=}/*tDvm.]hP9hLR%2.b2 5(_HʯfR˦3Ⱥjێ<| _3ٻv(t)4" s#0o^Y;GB*tr-Se%۪b_! Й'ITYq=: O (?!;tWF+΋Ujԛ(4_ YH2 !z¾րְש1Èx.$9hǞ'3Hdo $GD2*Ԣ!,[e-K=J?l0Zw!PD:dԭr[i"Mf6q>(;3f%4#]K09*= P.dR;FuC3xo &"2K]nBB4IdqE;X-2^L3 Kl{m+fs!F m#7h&zM@mfv]fQ;ߌq9zɾX8Z-9hh&TӀ$)UZb% Liϖ<=ygt~־c`M!x>F{+1* Y)gp pL б>0Bx8:HYФsF$ A%f o?Pjs2«M nz52[9dRxco|0INOHS <(TIƠ:#i%lewv)XӔ!!%ݓO2[ dh&t޴ ++]u#KC˕ld&2; e+5m{ Zs.nOP9Qq [y%U',Mb g_`ZN!wD=hCCJd`GB#41{6 Zȹ}}k4ߞĠ/<^cxD G0s̸U5`PJxCTrEWNI_1yPN۪$uM͍Ga]!i0l Kݤ%zUQOZ}!D ˅OAA %ѳ-_8ޔg袍y^ rįY )E1b3Xým&;sE{pFZw1<]. eovc jr)+4\T~Toe Fɶ\!ȣjcSy.=0 m}+6H&}AᕸܔDz\(1n}RR@#C/px:;lVC.k$Iߴmr7֕鉆x6:?ޮ'S3}Јxylh6WVd>DЊT-]9i`c}J*Lx>ߘ~!~ Ŝ;ԓ,.o fdS`Np$cyon@S~XKN &CRQ[Kvo rOJp b֋Hu3l"ZqbS7;CR>)Hlkbmϩ\.0BVp6i\,9; XbHڈGu@2Y(&]dQ&ilqNJ*k׍,>f'm9W.j7yO~~rDe٬Cu'^1)Rw2oE aiݫA:ZMuwЃxp0>b"~Kjc\|Վw%=2 +ǚ@Aͪb;GFs/bUY`kgwbڛk;L271јsX@"8xp2$4t5ubOkV ($#~c6: !%np:d&";y6}GpR*wZ 7#=$iQҖTa¤XB-o8~ZUwM=Wp+Ve-#$BQ"@⽜͂ bc."&9"э4 ]6!}t/QSTUPn%~@p a`#σoԊmDuf^ Yn@UhGh:êeÒ~D.c#sYN~|P()tHt:-|CgYvX?Xes% ]HO>s0X3ݜLȬȁo\ ^< fZ*ZRTX*h"ХEf4U%TF*ĢOq u3qA4BGSQ8" '~Bm ʧ`7;(|+hapzJ, 4+# %6Sjjф>6P I G W0'g!8Gh~;Ɨ#"5ZisMla,.^d)smu? p|%~0ǹ2YU{0,t̎9"Ejp&g/hfiWYˢoW*.:qC,߁-U( y4_`Ԗς2KCc*)Mc(Va u B-((nw! VIsZ9UBTtp)7]<,Si] # =- 'T*?ݒ`$ "ǝqCUfߺݿ.tsA=@59}_"Qa65[Iq%5j(GZYj h(ITһOg"JPS߅9EZ2]}kT e*9ěd!.Tq#)X]9.s؈~pϰ4UK@9J[We:d)"K(@^51j(•7^z[QE.߳ sg8֊-NKSl B@*01k9 M]KT,heأl?Idn=py:-hM[5yp 2g y;:ke㖪P*#ǹ`ˌ G۟V S@IFT5b@OG+>˻X8_@1<rI ,wl(*}v3 gN3Bs$-|/Qx, ؿJ#YŶ{t=m_!1ӉЅӴZ!|5UDdAwb DET<0%+z]\8 y,=TAqڨ< PV_W~ 6:gYrk C0D㈽:M6 c<؏]+8_K4,tes| ?9lIl\+ &$ kV_K#rZ0)ؗ]oWlW>iVjE돐q~͒ n*RTUպ$ >s- 8+Mc2˻2L r AH*BKulWD;5:y<_\ny;GLtaVs/+/,o2ijMOhʦ2 IDh?YrX/ĞcE Ց%6%}G >XGI~+(D'wN%2JREN )aK%Fu6t%M8݀zT%q3hXg5]ٿa:ۤ \ CI/W=,϶xHcYto1Fa e3bjṯNz3O!I+qH?ʰ`hdoy"Ukd]='k~W!{cZe Up*?WhCse ~dg{T^*2 ߟ e"b<\ |9|JToiUm[ ĺ8Wtq"$͓c#zu02̇ٳ9ۈLizp9 07Kb bHzЁ6.8){ΟN;qjvz:] zb7z:wcP^#ɣS"Qiƴ .Xd7G..O OycCAG} {:[^M8az5 ,./>DYAK~rOGWk]C[h/tsWq5 |>m՜/PF).VH휘~ 0C4)->W+慸EEV`v*~l[v<K7~<'[>Ôq4֬4a > 7wc KZ.U&͙VL!%H2 (eWw0@7hK!{Wl1{cEF{ 4ʾ/AĒJI s4S:ep&بߵͺ#o ^Kc8avxf`}=Ġ ˕qxdKj+.x8z;ݯd N /Kkw{ف.NuPK, Hkbd/kU @a{ѤMcq+ D -?iM v-c8>CU_*kv}:q!VIHg8XN]S1>"R]_cA28(|GDZ6K(k=J!wZD.ͱĞF&LS X&ْrQ.K20i*#rtRxfd*c}b-WŒ3G(k5s8ZQ$7_#FFL.f5<V}Dy |c4eet 8RJM?;Y,`\ID32PLa HeB Սhd}d|evO%7,ub2ibm#ఓbYw [Df#_Oi 833AH O׆|p¥AE1?`fL۰=6ԓ@w!}pOG<}X)Pq3(s^ _ S*^w~"%Xe4I UÂ|B;{LW!ڙjgc}:="ygvuI騎VvIuf źtT q@G0r3l:hHb1B]r_ o֑Iv;Rg?oK+bդ/QÄI jOB|A=\El@Y#-Of%:^P6#sQ}ˡ(eS.aGUM h6߳,6k42c (נT]Q.N )VKyBղYzJijV;FQTɩdkB"yՋiypJ"$/ %[PPrx*#R/n(=q=8ixYj[|hjв m S'pwxH '6|Xe7Bn=ڑ#R*d[/7`M%xXW=]$p^VlEv ڷ 9IWHn݊V<Z~fb/Z0 +.׻"wVҜj|S;y+zTj'H?+F}<G RqPp Yބcs<~$R<&&/TUf%ʓ iI,Vrt)]ߢ*99}!8@w;*ݿU /?tcϴl~I;g?שrEM2K.c0tpWu8/+Kb{ ʲE[p1LϏ²MK /)v! <\Hڥ\ⓕնB  me^78Q{t|*$[7s+="|'XۧX%|HvN!lX$= ][)/ D8zkZd붐izd3LiFv"{գ bx1]ƾ{#S]xz -y$Hd핎NqA<,:e$}}$FhTis".Nƽ6|mfgzA4L np0#@Df^|wUrnW$fޘ&3A^[wcheD>;H%A&p}/j2*jb]{:-q蠯}D}*W*õh:DoY:ZcZ[Y&ZdӦ1,:(X "+j:_xcp۷fb'z`Q41Qmb`?̻&qi 8mՒ?{Oi݂?D uMQ$x=:R\M zd{?흘x]cF#> ,gZoVp8Jrb+p1݁*F~;K5Ynh@a l<`FKT RGuCN)v1(WCvW7b9J!zoyAͤQK?{ 9(KYy rDPrhApEy"#妸B2 AI{,%.*gy7k ؈W;{߾̼͢A\`$Cvh&+"x{Fr:fWDD0dAeOZ/A-Ox)1Z%Nr,rv̻8P}dҺ a)mňndA#_o*%51!^37GЗ|a{Uex-YLXYzr ./5Hl!x^Z3.(}P"$P?QQf:.ZhKQO` M;Bv򞃹{ˑ{/'Һ ?|2M kB!p%Mw'ԙ}m",<HO_ ьHZGK91, 6\\ҽh.XyJvbG[M$k,BK׷[<7>cB (cjZE`m:l{ƍ(o{l A r]yT>$l>lCbICLA 2RLxQ[Bs`˦n8wi9=1!ps6+w& ~oVUl4^|Jjhz^j]3 "op_T^H+?Ͼ+w?#_L|tǿD6Ki#!(MbLIɈ(󮍁_m( L$+,2=`=t쁦 ukE8{I31U i7$kQԆZ<& .i-aY)p{=$&r1RBc4JBw:%EGJ)TP1| ,nx*QbxUHѬjFxPf-T\$X*#LӥpZo)KN,gEǃ=&@ q,P8:pSo,2ǁ vT=2 G)J`ޥ5R`T*LK5&OB +#c:`V+2@v$m.1V97v>ρm[&2P;EX{gi6dOpz0z{m(Z'7׭́^w16c짣JXp=78n4ylaT#0~ėG l}x†QneʷܘAO<'P@KHv1=I?I|~idv5ֳwɉ%RdnJ40ȜN 6 @cLJ[_SS9D>E;'VFϒIφq걪Hҕ|{7<u l ,>Q7},T %y K[*9ٺퟰdӁ~Ie_?T_ Ϥ=V ID&]2kI*Y>M!}HwN~c$4(h_3 {f'捥|1&i;P׆~ϸ?Wii_[G& <["șHe3+m{}dŢ /=Y#S8l[^KB_/+%ZߏPEI>,ͼOi@ӈ|C2 D)(Q<I^ȇ}.\y07 FH> z6fʁxأ^ ݋E*iA.ƙߒ] G\ ؜LbԹOnj8|7TܙAOv8*C ɫQE3 d2bKBs /&ɫC5?U,$+P$aFţr\=QE"+)UHܦxVġaV4U 0A2گ QF1N`t ^ KZ/p&`Jg TK?_aRK%uB/ SzA"G;jDIհ%񢃐dž/D#9:±tyhi[6Mci}>*z7r!7'H8MV+&ʊn DDmuW؋i n5YƏ"[|OGW9 s,Ҡ⍋$H\,L%],b `yk`b+(K.gI`\-Blzs?kJl `1o+Y fU~UhQX)jv Z7Agý\yF)aBG#Ncuq2JM{\7?2oYP>>ugUnYkaN]IH{l7_ҁ&G3ܔ] Y [#l/m"p'mІVZI=+I<2e>ɧi_vOKl]Zy=zUėp"lXdM<Bd: ]<2lf)Zd<ĵo_ńYYf)~7M·힚|;ZeY6$SJ-\9R~F+_) ۳<? 8.G&0]I8qUoyW%Llv7ux̌جEpmc+ѭV|͢c$.9ݨ{z5uC٘k213~Ig(JD%5g , ̬:1 8)~ _8۹ʆNv&tA%k1VOOTt.7O3naY"ţ,!Lvig}ekXvE>Aer>9! NMH紫Ost}$F/nt0؁/Il߀|/\C1p6]M >Vϻ㫙8h; 1ȀXR1$ãǿ@$Gõk P}Ĥv^@dL#ҔWv3rUA.3P@EyL~=žP'zLp$c/G!atw]tD 0 I)[lpechpAQs%1c+MeQ~Xr<?MX{@ly $<,f1G$;3Yz6X[|vlx)FF ,[D6$X.*$6e('F@cqTםKȌI=c`Tt E#P9OY` \M*`M,e !DQhYk~t)Hˆde<Œ*||EEe=xk?>e x,xRO 9n۪>P{YiFȘc}E~asdk"̡3UvEm1`=10pcig j0LsꍰwP,7NDm/awDy„_V zZNFݤI0Û ÜM=v׸UAWwdSmcA; s\Q%-=@bK }epU%,1׆UIխADu1-%u1m &eۼVl$sg R;q}oszamH k%^"⻖<͐oNuU=K5K7E.(C{lL|Jd⽞F }(BkEg8lt )BX\Ivc/OC: (.Qxw&uCh)I !W,>'+LBLG|۝b~iϙ8LÀb}4[ފfby֍m-LF-h6q:Rڑ+ɡ+-fd5ޘE!:AuOK8mhF ́.˒|@^@GS$yC%( ӷ=`5Agł7hTK0dxC"Amlfc,Qa9-VF4Y Wj@LzORsYݫ.kT ]h>H뢺noٛv|nRK`_ygkf֗MPvۄa c!MXE:'}\q ~XƸجQ_BJ57|ЄaT6g窲6kM|{"w"LՂnYg@PN7:-smmĿtyeM"w)oINCP $h'/0 oB`.Ges\NJɽyݴ"P"LzdS=j€_eŸ^!lѫ.%ixbzMFN`+'Htk5@ Wᣵ^;Z8.6F]e<Y7o /crLN&E6od-#A}g1AΡ[vqlםi_.h!6SVǼ2:x.30R"\ۖ}ˠb$b3߬{j:lW$O#ZGD؊h4Qt@!T00~Mh Jj|xc: LXA;y6`EAYa3`m ՂKpѫ9ҼpDb`:o-nz4j_QW^/  PN%|v[~&eMq4~ zӖhpf%i]'v /y Rr :  Hrl^~lj#y*Lu=bpwޅѢwܪjԺ[_/֒UNh\ŝ{u,UO]%YkiE#E|7]nM/c:ĉŠ85Υtcɻ3-귿a8%Q EW׷. 4"Jwҁa5ܖ]–U)j#J#y3[Ϛ/T?ӧJ&=?5$$%V.-ɪZzSq'35)k $g /cG9:Tw2MV 4Jh1@_-WɸUp>_~2Zl7Iʱhw` 5EvG.|pܰ{q-50v_nϕx2?>Q?s΅b,~C d81k֏:5Wņ6U7|!:hB;-lR*M¤h"M_tfEs.p*3FB:As4i\y\K(arbA(Mz+J( Hvb ƺۯ6libw㙎@$~E9L $SfАjA>9P ;?|nc͂!N/oX Oit0%Mt2-GMk>KvylOda1W\N Xq8uxҌI^&Uj[v/=\j(^VoQrD1|?/eZoKӽ)'Dg WF`6Qw^uFUӃ1B]O8@px<C͖rbv·nBlx.9_KfA0锑B`/Q2gȲi(-]^A^dWGGpmIU8x4%@7PY`sf  b?"oI:Ɠ<%c8uA't[ː% j~eZȇ*B;*V_~6TE+D3XW0Na]ͦKxS$&Jo|"NÛfYf9)5 ! Whw/)zli5gC>ݹy:Cso!SSpEj V@' JskSM5G(ݾ$"CЯ<1o<Ǹ>Cy6,RٮK_2Ba.E܂Gkq`CV\\ի7ovB|zu`"G2ė.zY>{d"a`c[\܄ +슟j~!`5 0~}v$e5{!>(9嘕/U-'QFJvOYxG:z`2llT35lA=4sX3,S\#2m@Í\~N|%LoB7 tSN (FJSnmLk` JdE=^n&OzLVuDEAHSY6yS[΁$5$r$aqhlskO ]kc͟No}p 4iF>0Y^X2;vܙ.&.*12:G ':iJ 8c}yO!mD1?B^¥iL*j}$꛳jR]|s[ZZ)[ȾR@eX3Mn>>dQA+h€!KS@!KV#Ë#Ti4@jmIA \3옌IֱD;g_rf" Y"sYhbn5Qk+M)w3E OB 9#֣{L+?: JH 7%ȹ`ylm50vMf ,2mHUNЮf~5 :d=5gU+ G:=qO `Z.t7bj҆|n. o0G:\svŏD%;qZf9J]|;(+=`IoUnQ".1~>RlT9~}lV$]秶 Ky)J+)AZ}xZon<wCqORo"Ff_7q6dsTs=}p2rdbH#_I"-^f2) PQ#Prl ( +m|$_:Yf Txr祸 a}r_ľts>MY)$o.0&O[0l&޷ǒ0Z~eYrڔHUJ#*C~|D0n؆^ǁ}.m<Ǐ v7j:=+uxRm[ :ޚׅ2qyh1"317u/3$s_%F/Xb01r򦀺.(v:O|(Bؤ `EJE8z/)7l{BZ6A6"n axMi'0؆ 8\+29S1rض& cc%^7R)I 8%v׳r'4nU?0=K"Ti?J:Xp^:=bz(ң\73w۸UhsQ\T#%-vtP;ԭ5E>M蝭= ܂&`e: |j_'M>"_ #"8>Xe߄P >kNfr ]Q-8ŀLp嵕=9dO DJ ].tUZ5UByfXnwKp̨0v&@9R-A\U)uX@şmґ\'ƮErCyY//^M惡8ǟċZCT-yBDCw7lZӣ c"991mPd#rn{s˔HaG>;e AuqF6<[Z/]7XbT!F sX>ZM-, LȼݴQ8K10E1sN{˶DTC  K єl2$1gy "_0|!HLֽ!i%VfT_==FYn6Bqmn/B|j)3&;;"%|Ujw+I|IhW7GQsQk/Yy(mN?p  o)Zy;hPL"31:8]zKDIyDc̷-Q9hIot_/}#&j=89@@C22$ݍwr06i4vmq4kF1iBtsMI#Y=*.\ck}9R],Sew7@ BO3%(Jl(1')0κ蓌?tҙ#o O2fZ! #a`$}F xؚO&:O&/n " C# 9((K Ciзiস X3}o2U e5]nt#h jj\_%xJ8 g5^aN=2l+qWԷC `|vG$9D뗅?a1x6-no3:p߼ԨC{+ k|VRIiv?QMSӆ'/ a##Y+9,ӽ]+@/2DO%ƍ~Z|q$RheGpIlxlP%9)mdC!WRYTL6 ѧ4\5$Rřà`x)EhF!!4,hRm=(C[V9q*'xF G,]ʉ)kD'duA)~`9eҤ1ԸϽX/"i9.BIz}lf? 1QtnrRh[0YwkvVlt x z;n XGعcHϪ4SzcN+U_uXI{u-̴|kHնVthITGVT"EB!Xz{QhQqNXWË^)ijVwa<Do 禮)| TF6DF %.c8O3 Kun+3:nQTHR=z:dqdJnUFS3'i7c/ES ⰻ^sY*^~A`u=(J$&}xlk2ݲjpb~6gQ[ǚKv\V2;:VR e׉mڬ:IxрYDԦ{Pkl7ʭ|2;4|Lyn) Tٶ|W+DLeIw9PCYo3ybs:Uq~1 #:w1IoM8aa !q / Iwʝ(CQ:8YЮ]yp(V}Ϊ$RԨ"j_فa4 G"qtXBK(R2` =h͋ 0iS]DmΊm5sHqXxI6طEgxE.v"+k J6/T'(biVmopb]Tf-;w&wcD5=C_&7ƯقD'YXGh,; *+WdޣQ46ɔ ԝбļN]|戒}X_һiJB?:Ά ͬ+; >Œ^=1M lx_]zu^aVf5 "3:] U("j,7j6e}ZԸ[DW6)KAR]@p8_ؖݲS]o!˛xd|] {(A2p&,9ib-!F6k7B.xN%I'O'33E+:B#p!n֔[),c֯4Aoآ7ک. XfnT&ZB d$T+-SY|2{Z[U1V||y;4syDD .jS8]E%ΖzS=Q1"T/ &sHMڙ{MXUh!mm"~Jz,HFϩٛ _P?QQr[b.\Wنb.B{hF_ $@%˚ QEfC яӯu`2Iz ~ysѤ%|O `>kDC;ngR3hb:sr LKڊ.@C뵣XQH$Jq=${9%Z-g򎄼7` 8Et88L!FwF(YgzM#.S.jT5% vNf g8¾C~=,+jTŷ[z$PZu_JCX*`:]BvYx_K0.z]˝ I[8!K˦Յq?sϑ V9cHaQgט +4>ufiƝU*$Ç p-^1jxKMgߒt p\P@ra\6p#,Υ2SwFbe~Khn/NeFm1@!bO^ϟlsڬ\*es0%Y!1w^,ȦQ\'5 m[S 浤$rùc Y_Wʏ &ī*-@}%zU_QsEo<*ѳ!["8R+j#IR,'3 ]0Ven҈R.E 4tQ6]b77Ӯ6gΙuA<VkE o)U:t@􍥤HAO4/m IIhiM:ч +n#Id'rSMI,mow^|hw%WLӨ V%$\5tZ*d: 7 Yog#<L g ΁/Ӕĕ/6גB}w%eTqv93=,.5jTC4N}벋[$Óxm4fhjy 'X& qάn*P_ M4͍#u/$f1 O$Lv/_خW+_y BA=o!ɦjAdP4lb[.o]aսP}:*#U/so[h#; !7W3p8!Q8D9ɑlo 18x|_/^VGuLIq=z\@|.F\!#'ׁ~<@$ ;#N"wWJ!4e(3횧&rP1e 냅Flz4imف]6AfIAUb#} z/GHtw8?چ7J,+%`ʓ+@ۛoZYb=ʆsK轂_=J^ ._ɮ;CQ7%K5ٲ5cC4 '=#$|QR,Nl]rAoϹ]z >RKQph 4o*~)|Ftq|Vsϕ"0W`ft(i5:*ڱVcKĪt-.snSE5hyiC>As&z4N;w,ݓW҂a@ML|y I[ 됺(V)*W kB㈷]yC~MJ/S|Q]eV/>ś?ںR\l ^nNHH]x?pw(G%q![M riHhI@NH`&!j- HJk̸h ^T-H~ǣuRj(R tKr}Eicw28y\E*T#:,+ڣ sY BF\2Ns!+}ϟ\!6,- }֦7n:nh1XAint4cN` M&t-$Z짗qhTѷtkcݥcMDXILk5G QR /b̶on)g_Sx)ʫДY3 =U3D\vaCobUgpL~ހ-JqH骹3wW4EGGZB"14߄R;n08sz'-Դ%g~MJsXZK;λKZ5EFȳ!_$ upΤiiZ:FSAUV2V![\z:0 ]!V y3U#d-$v*;7($j㪕1W~<إ>( !c'= (1ٹ=j&X^ x .U\w*$x z4 N,6]#&89 kJ]RmoetU0m103겅4"cRШ kmO>@PO fˉ RVo@ޖkiZ;jq8CMGzXq{,5e])RM3_t%iB%a/yK$`:v%і3o8HaTထڊ/(P2K : ZqHhi]Y~Tڞ#5#r/?zP7u6oc]wjGˋd X\f\h [xr H[U]h겴ju>y'q̘AèJޝLƕ/?/Yhp鲩Z_7jvn<"plOP, CU#ѻuVX=]rXzӑ"۽gbv;KǞgAŔمpq˞5VH)͔jǏLz% S5%ZDViËt?ƳM@/S}%I ﵢ*h*D}_ʋV K1/52 zv)l?Qyj`kWԫw)%ph$C[[ߋwJ٤&)>'VXĕO9C'615 V jTí̗>gѕ񖚓ÜwfuiB{F="bS=~V:q%IL11Va93P4zpW 8c|ui 㰑y'F~gLNh+( {s^@u'tq]@ tguXa;@9bS\WSn>0]hffbLz(O )F𾕴/a1sWPK^I0PYƍ*d3\kCU4 H.> fU((XFyg#ZGUjwi3XϷ|M9H4] UvTLK֑ҥ}BCb_z?!;`]3y:e!|x n$2~J"@ǁ{/5 Q;Hbvդx z50L)"RC.l "@3XKalwK⫳6/9(Z}.3?)| @jhV5A1{jԺ.Z& *(e_R +H"c[\l-l<I?X.ue_ ^ WTz*}<{7/ w +z7IC\ׂ"V&bvsb*>_r>:S(KSv@d§վoeu;cQTBЫ{2Ju $aN5=xiN~OK*6[ag"2̈́aXr|O)|DqԁMF-9mw^Kq32y( gTSq0#WI]}ouaJ0](J $,쀐rTHh6')UX G'l3>wWpG|6I=&߬sf7ͅ)gSӑ)HR{I)wb:&o^Ib5' by.]6,`6Bu a8@z-E3}F6`t)g8;8Z ?$yÊϟvi M2_1qdޥpF #H(ĞjSes<3.(DbEiw)\aɤ<Ϝ:#W69v.z ٽһl+]iͽ ŅV",Q ]?ܯEmm+мց'biu$|0Bd@^r&KVvY6?׋cJ 0FVL^?5 W۰_z.[x7QrgA9LF<$ ϻ8Xj$(EVx Zu̲wa=b܂#N=}]h環uF-E8jwk,`$c]́<<{S+ 1gcw י;qA i)]@ŝ䘝aa*0oPt!D58rω`M'g (hnoOţځ봫ј LCXtNpIRBs {$aǶ¡E"zUґ1ʽΘQoAi؝>J`aGE՜r˶X#sY.;kpdxٙBF93 jc.~'pIgq9 v)Gz0=!~U"tFo}dᝎeːrVr#r Jkڧn2e扠z1|;K۫"-+sC"Q'% L զL5 D'ѢqYFV{S.A+nnnSk7W2B^xAbRR͑uz+:tsl9+zBѓYۃL}4XA_Vl7dim4|g^`tq̍|Z|W.SP. UWh_}*, N{9 Qo~OouMC JT>0uGRs ZnDÏ{>;$JϬZ*RW! jآm>oepy/S{ g 29@Tl2aiu΃Zpx$e£ W|OR|~˴5*ۅy.$tYpUxmUY0wn6n,* ؖ%yVY;Tu~u;g!6Bmn"xE0ǞJ[/\9 oR;^7 $ A[  h7K1F~$k<#O#;Νl$*: |_8ۓIY*.vӲk[y:SKQ\ݎ:` Hb䄧Ikו)t ņíڴܧ--cH ]]M Ԩn2v,^SCNQ <8lPRM#jŪ>p`]lځd様nR':9CB-qOmlX\kc2GF$A^~pt2mԁɳkIӘKUq5Rv\*ɇHzXr9+XqQl'SV#' NsoY5v׫[qUh8LA"W/ٶt _C?i]tkkI_D 7Q|()&!G+>iю̨PU;~JC_MYEKVj0c&~ɆP5Xi~V",b.T_I8#m~1 ]Q٤y'8kJy<ۘq/k@H_fS[p f;`Yl O Y:ٽ e8aߍ''{ 뢐S;գsE[:HP}%y,a5}P;PwlCjt$sB⸒H <85Q&$=`)ʋ WypG𣾭r}JxctҠ֎"R٨xARV18`ƣ $jvm5~ 5@g)䂊\ ryM5(CI@Gow3*K^J{"+iLz ̣a,qV̻;D@-7hHa,q?-|=܃÷{r,u?,7i= ')ҺCNO ?`t<,svi 9߃Dq:s!b(*h]Pړ2 F#xzGlr2nl5$,G, I~!L].jکrao"5Z3[]f@,9UWwk8}`\i 2!$0nx N!Z~'YpPtY-L~gt^v^2G__J[= h]h8*zכJL| O<71s_7WY$gn*#1 0*sZ: W⳦hسrj>8i֍h+[qoX!ZOy1Ϻͪo7jT@}h!&iX}kT*Rг*m5hY,k`"s%4s#S,U!Pٌ1۳D;}O`f\*ڈSeaGWv",Mz183/O@kOxM&glˍəL<"9fIp 8£%@e?{S~@?/FE%zqM,E""톞oHJ \$-grv TtpGr*] ݃4󻽒rR'o)w>jɜ\vv?^bЫ'#^E8?V_ה =ۖ`t]p8Ƣm;}N/\9Ҹbu2k+f[ {U)Zu=DBJ?A7qFmH8W`"K`檖# vfO)p_;D/v<~:K,6:xu缝-a'5)d5GB /뮻 j+۪"dJ2KXEѲi,yxi|Kt ڑ W,H -j+3];dB^}n|4:)!&sF1SrGIHȊWa:c>/^yJZscޙau@s^WӐ0h 悎7UfԨ8nexk)'ws,0j՞-v^1BuۆzmWVp|K,>LAE-9(r6,\S~umPa>02d@&:tYs-pA^<[&Q0( .>stduի- 7O. 5Ppb+C)gf;J]x* 6>{Hξ;RJH%YNvEE2x%O@ܱNUXTKM^ ydQgjDR^91@H]Dp;s\] Y` J|lPR9B}'F$2Yb6مD\,;c}f{  c{/z+Xdz%Acw>!{ұ8 f P !P)绮Ȟw2~KJU^.rWc|^"xhĖ[[esw rK% MTb#zi@I,ךĬ!fԃiCۓ ̮dٓC\w*D TһmcWgBeb㉫>Ki-F5_1?M-pfł+`BNg]!Tn 8V6ROj}*:OX~5GXJdt[U\UMKFZp]`iVl1Ѥ>v¾<582s|8RGQ>rJOGƇb[`DޑO}2l?O}N5~p#`Վ`GAf'۽-{/$yߌHokuDS-pc+iNˉ1 lZ ;٢^T ev`9zș--l8`-pgNqM%\ݨ K/y|D>, BM+$*eN:w#J/hL*Xp@{/3)lE,%aϖ+p% 'iӖf<ֶMDPzc"Ds蒱JQ|$CPT|ې1f&;S닅s}hi le*ńRMOze}qdqLX͔EEQ5TKۮM4A(.Ovwky# Fz}.:YJ9dҾŞצa2 tRB62"D*f5X$5jSJw]l :EWUt7%9@/kKuiMɋ37$(!F /z7#cX³P s`95FG8^_ 1p)Ϻ*?* wtaCm9ߥeX;Y +^- oN]J`u"qHULq]WGnw't|-ŝ _Tن&4 f[j h ŪPJIpf Is6'9tmC*DT'H˫((ͲqnHlu8e |q^‰t34%ɜ -m,/9HZ+rZ#4oA ΋=xYD)m~zXI?xrEaGv@ Bx):':Q gElh3paW{Jl%ŵ"N@bTDӒ$1]eJOjɬdrZy9B9'MEG^]q 4 bO(eB˚J0չo&X0ZeL;?$Y3&=B:j QjWȾW "=E)$>N9؜v SBǴpo*dfA*g' `rX6\ t G l8i6eC%K3#;˽o[!ߎĘa4%ИN2TV%tO .-Z[:aЬ UzTzRђkY ~ @;/IQ\"B-0''8=7αKa/P= hȺgTw*!=뙇#CݶL݄udzH߲E<ƺ_۷RkihMRG48>;P&F wE|(EzT.~58<^ozFWgoc\՘c{+>d ŻgP1&S[ ޑhF.\DQ _ d.v@k,G4E]Bt9cȠgi.}sbEI]]Җ{I=6KE뼻 }FV``{'WP;ª4?͉h m*iO ޼8 y7Ʃpr B %QEEr<"o%=bxwᮧ5d,5lgr PSܥKz2Ow_SK󉐊GBô'&GNl]@rs HHjb^>yԏmCzb ,% pVU2:a=8u|J|_v| /Ѫr>}ޝ^d.? fsn P1;Ᏽ jWW #r5*.9gQvp(J~5.˚<V + D?nrY]X/Ӛ1{@9=kó]fҩV}2w_ Q9sYs5 /c,!8sHkP8Igc~F9L$S@ܼJg3~yY*zOOUFTDL٫0w= 5ݚ +D }cTHp66I6>Tnw 9&Cdz(0v.ә]^ZMοio1p ჃW(W 9l7XA|Hg&:mo x ȇ|[i63 V"/4+NBA( _/+gwdn$I3D ʑ];xz e*pPo~I2b7DvZ *c'穇0q}V7+w4Fuɾk <%vpw~S)8ᦪU^Vh\үt**̿xa(sb" pO=\xs` 1t+%(wם rۆKqnqFT#˹mf֪c?K?cʾ+/`)z=:M"T>C'԰6;.n0ѧ"k&%Iԋƅ+} $y˿cj">6"_r0>"Qi fwd7,噽W ^'ƙӔV-MK?R`s$OHD픅2J$B\74v//ܬ%*ҬPޅnDrHoc+}Bѣc{l:!a@\!UiW+j`ī{:=Xy*%,IuQ}Cǣ ɉkXUeY%͡8(}z^,kk8 bdoW`Rˁm=lܙ~%vcۤYڶ]AH#8D }ZR%%'CC}X D_NFּƙF?Hk!_v Fk:ׇp#$'F}NeJg@&clK 5A^`NmŽM-ʼnF/Tl}752*oK4~G~^~^Kc`byטO^kmcn{qXlQ.VyBZx?>tkOgy*mj}2X#+J7(ū {!]@uOgrv[|.N7Q(ƄC2Hk3[%WGmSKA2l^wZ pkfD!+A2i3}OjoIqZUι)l{yW#pq 01 ] 8Ie.T:j .KJ3.K\kq0!Ww2em:"_C=9`p̢ "9(I|_ݓS:ӖƌpiZqcE^x__ w,B<=mg e7bQ-bppcǬzbğ5KjkbT *ET@#BM:C5hY5M1LA[MČI*n73|!ckzҫ>!XPӧ|3c @45pRrO 0J/Ԫr8 C4 XUk0^ ùx͏D&|ؒ̚G%#vKvJG b aa)]6* 0 FjpRsZzziuPdtgViB<1z;`B50kJ 9ML:l"w.?ɐA42?ݳ7'4yӄEdaf ~s0.ܴ .L PS_wwm ˜ ӌ?WNbdryMBVڱulyS6u[s {Ѻ`"@1^"*K$ 9^ěoCeCY/ {ؓ*{|XsmA ]RbcOTQS(Tu:M?89mO|AINҭ}3n/0{J&R| :ςAk@OTsAF8m\݈GL<Ԕ*sijAQ 7\صgR h\aCG 2:=Kg ~psh-l"x2ckV(uGaӅagTKt%!a Pxf^(yZ"ݳ.x5fjW;N;G]2 Uw&7|+Fa}+x B,k (:7vnwɠ4koנ9ji኏ 3¾FB6eH|p[EAex6QsDhr":Bq3-y~2~:*읆ք:ö*~0cyhæMo\rn*%qrۍ,z5OˌTUO' &1nDchcrxv*cJD Dمsl3Wl L^N+fк/1*Hxv(&Hdr z8t}l.[8CE'T66,-kF.a|PPB`5cH=MBRǫp;i-ޟ-†x;,R_λT2JӗKxi sX`ϯ2Vn22iS#o9o:W IxQ8+Ul>E=hg.x ,ar\VTbhۀ?:(G|==!y3* NƇei6I_rgAS ތ@c $gT~/dܳTp>)$*f. UhgQ6_Ȝ)2:z)aAtbs{7|',Oh]?Icjby\xU_{*B3 ~mFBf2Vul>;@Z &f| N7kzc݈D)`=/7Q<@ԏ!F0M,n/[1*M(Uia(pZzf8J^4|+΅ e5L}ۋ̿R!JQ)IfV`0ϾQc>mH!I^ƒ]3&T0CB6ȱnjY,Ƃv c4݇L\鱂] FC=ĺɲ |x2Nl掰RQsort{~nC_bGy\jo'W3kTmN`+NHV%`@]:EP~\Tk#$4i߹y:`w&Ώ1kfkW洗L~%zYdꏉL/WV{ޟk54C,3i9 }NSlr+y7N$c$X[0 {ٹ[s)YML׋|;K}N$ꂄ {B} #7/oXbqn6Xo AN7 P"]{UW c ylQ5G͓ntc:٣,Ol]ySS[z016b1XR:ԠodW!9ٛgO"ه]ԬkKĖ\{/}}xvJ T^Aζ2dZqS1p}@F*jZCZhW@|] x3U|Όݞ$/Sn"f(pH_(VՍ/*M=P9V'{ɪsG$U00cH-3"Њ*$+9H`x?z-  Nù2]FE|/72OLւ[bTXys̤KCkxo?$E*DvzߡͦTV\f#BIn06o|7Brݎ2z̉˦ñ|~AO: Zӑ(Sp}h*Lڣn7(W5`S:=bMK!!T`Kk +{gT$c^CT4c!ߍĹr&R3ajg$8ٷlsı\\Vvj9(\3M:.}WőOl͢獈A/ vCԒ|; BPbJ=h!.SN>r[\LKV;&[)l6! cS[#^?.NغlNj0Bw)_PB\h~Cud=@xS#i1/|=8WZ(e:ZzLnx/q@7  ۙWCTlӚEe;@qN֧+p?Lx$>q$qt]?PUi"I?wL)t;r.t4~tʇ{gq>.WqFD?ˊ1YO_Z.sk׸sq\\ԭ_[: Ah ?Hx}#75vorr%o1qВ7u~4h11HW8Pq.ἑjVW->y54SAp,u+pO6) GxFGzZwi)RP@ k geƔ},:#0ĸҾf?H(PD+cOfCG.H]u)g!:jpvAL+lo7 2*!WT/mZҶ P7MN̍p⤤ch>f>e{*#p~8T ///_9 D?)QDdVs3i( zv9{Z L`kL6?wLJ<_Jsxn9n<ũs)8^5J,'aA *t<66.HA7dNFl>ys™f(C~6.J=I!Z\NPfVt8D& O8mӢ .~>䋫N׵R]"yۘ^X :N(qH|50Ff̷9W}3<Ī9[4 }~.WXmT#V'hLz]qU]hm9rW¢SFU~:gn(u[6lz ~d葹+g7hZKJTkܚ-rODr<Wp_(T`-{@Sbv#1q$':G&Zb, PbNmHu+Kذ }LB"jwQ~2-%k@<>vHƉz}f|d}5bߌ{NcdI\ΡVvv(@]D; a71\㢽ڬ Q{^=G4A`#/w ,FN|4IN]a[<.1lmXG[UuAWH T(LJU8S{<Œ>HScgǩ f=٘;Zg>a{J#8kg<B`uK[4D7Hrny4Ԕ,]]Mt=C1I y jIp$Z1r8m*vi: ]^*1!:Re2 qsNt'q7F]~Zd2J.Ig<3L+Y/JGhiY3x4z*S|̀ǔiyEiD*b zy<܂9W5yD50AUG2>MGB!KAFFbA;tN@dK7T^H4-f&WϤ{A>3J9? ꘜFv3:^E1'[x(NϺi4EZNA_89 U"+S)uKM<=b]MyljDXoψZK^tZȪp+:TI[wR4!aFNE{M^,H =ew~Һ86M]Sjs++u' u6oiyw2Aw'N[;ff慄9@g1[JpվlFAޑe`sqڝskhi$V}2];WЦwOS? 1HńTLŒ6'N7{&m"v X Ⱦ7oqwt產bZULVn8}@QZp~iD^ru /o0Жtz(6`\Ÿn|wf>^Rp8IƳ s=ď>&vHѹ~HGW4l|||v mf7  vCcN4֥z cv@oP` nvtjwH&=;G5B z{Kx?lb]u!. Vk_yޛ+ڵr!4-F8 x(GWP0 .ɬR&VVa(itox#7'" Fmui4u.#8 ͞ki 539_ؽoԅt7j|쉶^阯H?AZy㛯n)cC ZPܹUvgžq/LZ3Л"cXE3]$Co8+ő~0U%!j퉓m˹g6 ]IE6 V`G@u;kf+1pkB]3ÐwWqSV]mhs촏qZ kEG$-־#sۛ}21h;Fv Bpf {@JW=|>pDnOU8iF襇!ty۟x hr\0uv1-pw8.P4ovvɑ2߽SI[0׭=mDA5XXQ[e- WiYв&Y4ԓKol;Abv+Ėf.{( SY]H䒾Gw]cp %E'2Bz 5n1"D2f[}R춝ɢ7 ڮoLjRN2!n i, ;{,㑔ͪ4#ryjB咆n #({^^ ؐwzE3bxU$b/uY~dCY޷yAIyNb1HvMkg)..1njb)mGY"1@iwòV!N5xp<[,3 , 8xO9UQOT1!՛sq>O&DUe);QxyR ͜Z\Q(pm: L&lm&1YRu-v:R43<1q,MM=X$ƪP I|i [ FTn]?3N+zU%yt #)hCVYwUr ͸SSg&_eؓI(=9*k,LrIm6(IFng}Y@M5_dDoU񏵛-zTOwvDž\RǮFzyߡdVxUdѶ%JF>DCUf4nXCuI!FK-GS/r< 3GF>kJVj;/H,}? R%z.f)ey=Щ󔧗PT|/'ɷyP ^!uR) 8DA` AI#/@xFwq]2f5MM`շ"@dyM0ۮ-rOP:v€ $jVq(S ] 2s^+b۟6rF-M/38Vs9FP?PJC2;.4޴KptscU\ Y6HQټM7m뛠_>eOCmxn}}|\GtrDbZoڜBц:)*=u-1_?cX4a:[C(_f_0y 7^^I0)HEǟݸu3_s8,Jt"+[ͪ=?Pǯ@ȨxF1?CȦLH;:[%B쵢twRƥTQTd˰\1VRcV,LO`Eʿg^m[-k:YUm xxHߕYElojWډeKJ4d3#%-@]r0\25V2giFrȲf3i(؆U,/ ߩ6kEz h;=Xa}#r/!D.\D9,j= m*Xmop|ܻ5F˅_slI~)D Sc}r=c i m)ͭj"{xV{RGR?9Xɯ:mvbt/ea.|x MSIKGP$:Uݾ5!K~ҡbchSN%ҵ&ƪsV;ļPA#]/T+ YYoLmn(9V; DF1܉Kdh^ݞ`~^)pt/r6N4 >dgi}?0"AA?Xu/ܞp=?x󸢻#g m]`#ZұGL dt @on5_q^(ə(ܛ3´$֗9m-ptSw~'Ow$RY_\،xy5:;pDڐcGt~!.^X>S^Pk[F7!X/\#o\>^ĝh.h9&tlOkpA8թS }Ss[Cٸ*-#|zxWDW;@3̍HuBE x=#!Iݎ\ 8|~s7|șJQԏ0#)q)g .MJIR2v?75ʍj"jyإ$r5N_>m_Ϧԋ/4!Ћ88*%,q+LhԚy1e 5r[gmZjT-=I 'a/At,pFw|Җԑ,pIIڏaM0Q)>6 S̓D Rj,K&kqǾ%NAq:t95.c0ߥi<ߚYsI ,ˁ@6#(8$01=-RU1Łp#`p uh(BN$wqѠJhe#O_YUj7ⷳqJYa%H*3,[ ;mnszuʿ)a?v[MqEos%։'2$!]ۋJquntV {8_xyͽeտHp!)6[[]Sy#s?Ϫ]b:α`f=,SeA^ha@ lߒ+"Q=zWl)*CHe*ݔu@"F-̱o@=@ҐzҘhĘBȾ'G90΢MBKN)W5#b=@8ozT**߀k7*`ᨁױ /׭$©2 o2~Vo' ~k(e(H?D8/F3k5|vrGYZy/EGaIﰅ:݂gbה ]nCsQEj*gWa#f^"~W/GSvaQeس+OsIL2(---څBH>mvodXKo¹,8;XƾuQ*a!&_L2z2-~\ 5Xa2YK!V+œ}]Yyt<KI)Z]ps e=PP9 iTLy^)=i"R˙HzKoWZY|: w N6xR|Ͼ Y8vq'몉|UwX qѯx|0B8t7HAxl!@-l q_mb֓O? eY?2r8B5q^ͯHfŒ=){6ɂk9Xe-tD)V嚗 i&4seqmʁ u8_vNu'i˔c:0r*LaIaj 3 Vi xmw^E '5?)*!i]mYtǓ<3phፂ0$7q q0( | 7s۽:X[3/u1N?w$5yBPo`izDOp@֦P YЇ`fY Ar|@ KT1 ] JN=WbǭNMrمٮ~dE" 3X.ePJd4;L![»T-zUA t8KA&'19 ik׬J)۱9i c/`-V<.x0)LFt6hP!]J/<~=rj;SڡOUTtW|^A/hJGg 7 1(Q)Ɔ2iI̛dĤ5m;(%JW*Lփs$6\߲ep?|Q˱@@d~D,"3&|w{nZRZ˖8,n1` \/w{i?Bg1lsB!a4.X L3s\?Θ[ }r\6ynΗ8daLb j`e<7qӗeH,̈́ bJ^mu/yJg'xM%3{a&^mԇӼ=5Kz*ӤB]I: ew7mQdg9lFktO & x WHI y4o&څC6oy>EBU8{" Z9v@ 6U5+J_#++kv_o6xȜ~xYklٙ?obl p-2z2o#MۤQ-ju OcY3 dOOI暈Ss >/&F+g.CYiz$z Z( \C)ulS7`sԐ)RYWA< ^Jn8",vQv5!;:2渱 %5k^=uktqҧOW5鏉h h%&gh_ۏIH#SX+^G*ʙn_hV+UlPSR8[$_vGR܏~A14q)*s໤t{` hQg)?P1&膑)sP";6V '3VWu 4ԍ m`k ?r"*t $uMM}.SWUT)ZFpTsydv ݗsړCgn(-0%u'(a|E&/7v^Bp\Va}c:[lf"'"I=,BE4 )k1ה]\oZG©aM@b8hvbc4T,pG'VCa`#ALJxYPQ:hJk(xёBzB(bHv#8*s5KW-0+őFJYՉvRr0X%sa3DW Y]ݑgѾ($U7=ZgX1Q|538 e ;WxLdfм\||:c: ];mۗw> Iem A(sTEu?zNMoGTW)'h;Kg6ޯUBT- ;lN„lj˞^l(c.0Ҏq-k˸U~sJYӱ'l7pDHObTZ3u.ʋ2fm50"Tc G%w%1%qtfനZϾ+0ʰ 妲a.kҵd#Uiy4L{왌ýjHk/.'e N".хwIC$#M@teV.:C_oNϧ8 ]poYWajF0 0">v23Țx +Ԙyܝ{2摀h8|{Hh~4[x|jYTO+;t:^t#:Dd9p=gĺ`~,io݅!jZN|UzŒjqV٦k잊} G<)u%$Kҧ b?~!C@NX4A^M>`*Te>~R{g 3<"j0<3_㷊tC!崐mpvHGd8ӄlM^:ׇͣ$iN1u*@|qHoU]W Sf{d20QJ"e c@8!";U!>B @R}RLL!*_ ~NNkiIlwNoV 2릀f^nm^rȒc3L~ǾeHWb s}C&6'gW "x ҡS'R!_]pp:TdM;]UKlfڜg 8ʂL9߯(JemrڀNp$(vM ³.H8!X@ VNZXf3XW@q? dCI}b(Z'x!%Cf\app3+0RGDW `0& XbGXlGT7 ߼~ PP@RdD~&q^Fn'Ti(Զφց)I$oKkD\KJX_̖p_0:DՕ|Q RwC+0u堤X%:K`1ԕyObmi[ ^(- c=2qxBt{V)9R/>Mk6EYQ*TKN܌BH#묽F/ F)^ɔ棿uEYؔE2> OWsҾt5MO23X%960N]S;l }t=e"}͜*+;WhVImҲE^=";.7E/cmk4wdRKx@ٯ}rӋŰoV)wxCYP|q́]0ojޮI_tR ?c-wNe,U!H]0"`^\|R}%J _-T¶ŘUH" ! xΆOځ_ >ket P}n=0NMp62N0@$1%os:ȡRa=yyL%nX(,<`ڽv5eî$?:\\L26f^">Vx/E򀩵:HO3{-;2G/派YlC. U߉ӚKaa;+ Ns└68c|A$B,xT('`G p!-ѹnNJg:yTޒ& f)_v-+(|@ WC\2;=pCqiQ0ßΖpmn"oA|(K%Amm̡ XzQ"B`Σ܁z:2-…,ۥłրޏD$+jN*x"dRW?L9Bf^JGRVBsGZuP9j4w'j9s7\DI&02b4n˄ޜ^8^9@X"8*(e&oyA9+&jϲːAO1B}9B _i*nԸ"F"PE )e!Ŗ4ȱ;".2k`WA8k[ӕ⎀e'A kGE壑(4ZG sA{Arbͺ!2aϑ|ҠE/n~^K@IC !)G˅j8D|rp(nbSݭ"h?{B* ezS^ciPa.TK󈠉Jw{qׇVP|QH#3 ɑP wY-ijE!P].<(JC6DyH}$ɶ׌#V=G~ҥ~?&Eu jSZIPŘĢe~5N 8N{vu8/IMBaJLF`?Ϗ떿>UA8&w<|US :rñ xMޥ˥5Z.ᇉ>r^ׄ()Ι&\|i+䋾>hۛ?S| <+v6WlC>B[&Ekp|}!&Mqu+̽NE`A\|S@V7Bע4,-%C(<:y@T7*lbWN)wX~NR9-I\DFf&2N7&='Yo =Adk>C<DžQsWl5}ʿ%oF]'GY=!ɑZyFЪ/+1f/'a`ƕ3[sW#%ߊO:J-q1LBEX)+BzSkq`3_ův%z" M+ZFgZ1m"VsVHRH_9K  `':]b=tV,*mhI?W~"\Fc]rcɪ Jۇb HeX܊Y؆"5G=ϙ#TtB Y,Dy&œ]HJioBbIl BU@CNGžR,9]=Wib2 j~-Vww~ܤJz- >!o2~bqI Z ErD Y4b@wM/7(o .(1ėTn"N@_Z=f=D7*Հ=HqݟGhx5cm~Ʋ rl<3Y X-l2rd ;vެͷǘHuGY{fa\ fUkC8 X5.Y,sA%+U. a|7 fJa\},W6h\BϴqÜeQb{V[0&.rP\r$*Զ}%QLURIMV Y2_7[׏ݶt#\|xwyDtؼ¬)ߌX= TafW7|c4.+yزt{W @~n0;,6pgY6;[P44{btf4hZR0mnZhHre\5h#]`)d mHe,;+-[awxtWy܍Pa*МpoSDtW?RʋM/Pi NeYj) FAdc?K#0;ͥ:yi)}{zɍT|zt ϶|QxWχ%nT2irGD^&[~+PEH?c}u{R^J`6l<37@#z5h jw2J\Ш' ${÷hDti>b|#?g$6ƵIK+sqQLh`uߗ̅ď :~JZR4"B"Ko46ML=zMPmuٞzv=Л2ww I-M̤NYl/4p|qӉT'^Ə5M,VN!蔧xc}74bN"j~mO J}Zaln(.‚OCA6wRΈ>13Yw\ jw؄d|lә &9nU_Et!)~ Xw,'B}L} e1XNDdjc50{McH$q|򔥩 2 7B_c1vM\셏kj@#XW~3?GɃk^Y̸F! ڐnR;|?,%$ '=9y}>M|? _#%cSP @ }`=IvI%O>*b?!sq%u{;m1KP7.K9*c6NдvOɺ%g}hte }0VwGvo_&U3Ō4N[s?fS00LJ ,+eldc HͷUܝ7PDNcɻ߁3&Rnqؑ٦ $s~ҙ3.>ryKcpپkrթrʳV b;o<7d3Ί6UhS1T!)-Vy.qA~2ov3^_]Yl;ú%|CUGV&(\ 艀R91@ b>&GyĖ];MXߺ%:I/I /H;V1%MnNfg&ß⼏d83.PtEQ5/w\*R0ڄ}YL^uA֥3Ľ%a!W}?"05 esd &V?1:\b[)yPn68+Vř{w֚PGw3Vצ"Դv 6osфLxO%jO|KݾԀɈ[ dXC <ݧZ~%YW ^vl g)#0A#2ĝ7h|؇iA8@[]ݬ! aRuܽtN1l`vo.Vs>u ͚Mnl($ɤlud2rs~\x ."]Nxe&}p =ĶƦdOh\c3Еw%NQ>.qТ`dќaj׵:$F9b?EX@X{2LInpNQ :8"-&+hبhWM j1`Dn“V$=Xy}X!"^FSgBҫ]@7>FAs >ޝ(rT<鐿iQ@Խil ![~aiҙ{^ !N62z[kvN }U 'P$.;5:0f)K?EĦ_ó-⎳F{r'káLTB їڏ›,~ lbr٣QwJ7ite(Ç-og+(Uңq_f&0^V"Dc^ 0͘hnIXLY"E,yhEԣgz^ ~Rcc@<딪(Q>Xd@F4eD׭y}Ljty+R_jwv){BIMyFIߛ6{noVH|֘).%en #]|^Ma\6%+JA]6]v,eh0LΥo0 œ pt$0ɧ2yDlpTUgh#ʊ,W3Ƶ#vwB^Z ϴp[7/\V7Paz ^Awr)v`&^ GsgIFYb )o fW6X=H3m/A16M ^ͮrQQ\^v^|EoFgs ip|a_ĭ`LHz{ .^u0|IL^sw*qn@Kkjfd/۶R3KvK$nIjYmFSsDlVOSOԟ14 DuO"pԤ#0 Yݭz =pEΞ1-bDm4FZqTMsa4.ً,Ï%z uN$'fg4Q!'|exR҆q,3z5ql63&~9jmB *ŝcLN03O9~sYrhfVm/{Vo/ iw:DP&ȇ&~t1! 獗;O׹X՛2[K~O.Qʥ=MJGIz?'H^qTM,ŘFeR&2C| Tx,4s bgwRDZJbʬ9XO8 F =T6׹dtugĖw>oiӇW%BkkDޮ㯹哗^/&K 䣃}ǯUr18Đ{bB $':@Avuza%;|K) _5&]u4D }L.| q8h3sw;/X pK^ʏ]҈0=uStA:t DY%SIS^DI,4VPQg<!e]2h-z v!f_idFk[^NEn;:>ݤI{Հn>L~սה(}Wfsm}Jgک#,Fр߳ܰ/fAAC4nk(JYˎe>yL  L/[٥7fG`]riȉmNAM1fY#.E>gF_B=鸁'b i&sl/2hk'6h;LicM3LUSJ'{ZpCKv<\m: Ԕ<# FIنLH͗HrMH6J>U1ͧP`ݱXG%$w`hW%ɿ l|ΆzWIb28V?]2AgX6 S8]˰^[{kM]:a=5yW:=)ރ |AG[p<4˽ !>']h¼%*Gj4bS?/k^ Wx=t&\j.Cryqe߶[Й`i#ڿ;*8@ Ώtmڊ/!x䍔h։ڨEm1T;b\9EX-]]8)iףc5JX(!Dȩzp;3/3tue=οz{ڥkq^)/6ADxS}So&L="h@ieN0iJ0ZdPoaIaL᰽b"2=DkC6d[L6SkJZ57N`4~a$|h8/zX=cwAJ=,sIBdsf}ހ?cV5v.'i b fy-cz꾫VùW`*QʊIa1l 9uƊnr*w{v I{ɎA>O0GN$wy4 :Jb/wl\0ǹmq5ʥULd d5U4C8+ /2> #[7!.D;cBFf/2UsЀ %@?"g v|5MQdk~'`xu .mӷ1OhW@JeFVtz:mx"ŃD+U5 ԃ, ʀXD7ZZ=hwG;2my {+,̕SJWW M'h9@n}"%1bb VUNvmUOg\H. #UqǎTQ&+aJpm]KKR ~s/>(LlyA#I(. aMP"n21MLїmof_BAɕQfNۈϩeW0iKluG=\jW[uAc{cftMq񼋲ۡeV6n}c{9;qT^?.KGYŦ).D q|6Zb23!%6 sWQb Ki""Ό{E@5XR6Ksr۔l?ĈptH/uwY&jm_ڭqbs(h@4q qL="oilXp8 6Z+Bg7cP+i1g#DrNxa(bmi&1k"o֮A5#jΥӶ?~JDφx5c>ӏNS^!/:^ t}'mt ?\0υ9[{%Hy2UQFV6-3 ~MhC}T]IŽ7yxݩ&藶=w.ZnɈdl,>L>ު_O\=0>̢'-td( C PQ iy^-,VxQ(#Xk+: Gq6g7]-= DџhBI>y.1B^xzX.h$E \LtLEqJm£'j6]GB: tPfKN~KBwP!v^*vm툟G|hmb_:tT = |[]Wxj30%2fPBSeVA]P8V+t2[2Gu5bY  4; ʠڷ$׊ Az oRPm1?)h鯗B 99͠?xo/ bokƤ}KF乸sŦy *Iy{gsJMO~!qF+q3 .}>6t8v|\H Ӥ}V끚"Xmj1]'ٜb B_3, YJ)F *tG:*Q@}dR2"@玈N*TZK[NA<󀶯fLe _}!VԽ,4㹹 +)ClK~WRoJe`T[r]li+.[BҴaN'c @ 6ʗ$ $u0rѬ6:&x'kMX\Q~b^|i;MkϮHIZ{l&*JT(`Z3j8fd!Xjf WK.fLuZk1_VΛ8 -rXS\S8"bKi2[NeHV@uF6G)ÎhFE#1J4y\mEp}W'eC$l-E1Ҏ7յ5 hT%cC.l !S!UjL=߉6̫Ɵt*/t~%B~bƏzO\!*P0hKND{UC*a8U'A7r]Pw8QzOBpmE:m{x#ʇw6mEpjv-/k8\|>L"I31[w{)m|?ɖU 6>Hz%`ႸMY Be\0T!ǽ ug GYJ¼=wDB¯g-:chFNG Z' PnV 7U 1\[VW./".1V?6 'hĔH@qPPh ݌'9w0^SRYflb5jcgJ> \<\Ao'}$ͩdw$ʐ =?B]϶Iؔxm `GA 6RE3V8C$qO)dm08ՇOQkp5m5p螼I2bPW+A|"?,i^ApH Y_j!.2FɫvAYKm@?֪HR EY!1"w  p">ryeM0DAa=S.#kaT{x@$ߕc,pv+C@N9fs)?q5֒gUrc5i?89N 6l-]/ݕKY !=n%h("ϫĭ1EC:RJA ֪ElbC9~ :p[|f^/`H1f"y$?j '2D`r%ow"Vh?nck6MSQ e @i鴒Qz٤}E./t{siuwL E8]iame/b5|k$O%l$+AvA CMsW43 Z -GڇVZXuO P'OK8Ɠ'1׮98Yv`7s}^-HB\9`6In-Nav-8đnxPqoo%jC\wAg96`z6hez`(_nO?C\cDMD-Sèu_qŲH4˔j,Wnm60Mvu'_Qp=(9?˥֊F3~+҇P9ũ8y, s_e.pQ`js 'gbRar3ϿyHS^!Qit=g羠Y=1]eZ)H=_㊒?;8.9gӊqJ ^*/Gh -\GAޮЌ'Y/KC|G қǂzU@**hKO%6#r! m?R 4@慬Q`EShN]yJE$!Ib 9Pͤl#+̭/t,3UHȗ kq'Ǒc];CgCHstK .Q}HiGZC` v6+[+kQZۮaFVYf TgW:L/ !~Ԡ hLXq*NJFvSd XѿvGȈ=#F"rk\Siǎj f ?H^cNU}ʰΔ()+)͔jz'z2 t$&^F<KJҪzPG$ޔmY)K)Wwad;d|3ExcnK耹Jۻ. (j @CumtcM[(Pla Xɔp8fMU `[Zf!2Oz)3Xvc//ȳA9T8\i}"NȮ5}52hmhD4SVӆ|Kz7K ҹ:9Np0w+yQEGgLN.r'pub%ūs5.[Pd?,hJ^Zضg>pX$Ÿ_h-MֺLS1ZGh{TmFVO@O %\Ć18 ٖ-x]H~re_ |R%COǟ!?3GRNByMF0K`HUި-/ѥCYo_5"EV&9yԅ=QJ2ti@ ^aJ=v'|ž#LFb q| Yǎ6BGZ:Abk1*zt&=Zv#(ٽ-:8BjOx1ޤz`5!j}O}#&%I3aeV ,PIw#ne୅L"R;̘oT>}t ~9^Wܱ^HunuQ"5z;-9`U8!E OIF*X|=1) Hr*χH:ryHġ)6r86POC!\d-txјBJQ:xFuc\f%^5oiZk>TZؖH eѣ]E2Q 1ƆwG aW\ϳ{-ɜ1MJ)TA5vCob$0y8].Rw3?0Y )f?k8KY?JfCzuFX I8wPr:5(!M-X <> t셗x_4%X4b6{.~Uǵ{5B<펢|օj XxDz"hGo;>ȗFCWxBgDymv[Ƌ(>`'#Q2Ii Ke"15S9}"H}_&(>(݊y[ˎS­vɨ(f)`ܸ)S}[  !bGiB$'+i,5MˀWnۜ" >Kg8.V];j\obXȔqR6P$w[NM]QǴ_`7[; ?\Zh=o!V AHiCڰ1Ӂ5_yt7_#~q =RZ0$%p/igy ij5󀦗zʉik_t(b |w)5g^8J4 ǖ>xʏ U]0$j V!BO,-](KԦKQ$qt&'ɌcH0Dd24oLwG\v2QYt/}׀й1oeDB>R3dYߏy}uT]V,(h+0ELx^hw+{=/*&t20 2^|q'0Hw?6e3\i̎xN YoN.,SU٢w"Vy3Ԥӳfz z=W%7Pe2QCgcg].1ukVة;VhJOe$OSbjffl=mQ+3EvtW_B~]\=g)5WE Ë$ӮPm[#lVG]\mDRq=ִ}T(3zS`K}0C"hoqjӘJF6x? OLg}"-tO1ܒBx8YjDp Tp߷GkrhJNNY[9xÞʫvn/^٘ԅTܙ!;wfkzs.-} ^-_ p2L]{?/[\BNޙ# 昔_Y## .j'{DoS ckMqQsdpDHE/MR:@Y|5 Y\:ReJX]od/K ssRQ_f:qZMo"+KŬZBO$gYiST$zsiad[*֣0S7vfA `}j$P"?Y'ͶTo!#r*e'-8~xYc <#nՄE Cs-D([LrqK?9߀X^վW#&Z Qd5QetK ӻ4't 暘^Kn   MЇP,X,3Fm{I3)~givῩeR:H)a`U("w1'ߙ υDE7pf A;@+3\hTtUh#_q CѼhCu]ͼͦMR[M/˸AU(k-z=l7no`·ɒ D||_+E5";%C]?-Aֳ؃#{u>8'T Uv۷-4?xMD t1ȧ(1mR#% W?vȎ^@pcYxhf /4yw4HPA#JDO+w|7u)px (s4u`fyeS]3J"Ks姩hƾ6,?"GZs+ 2cb7cœܑMI${?:XtB@dbQ2Ic A3J| JM}y1/5].4:΀9퓲CO1E]9 Z%KfswWg )X\PTBdzdd9cm)5cqpbeRJ[B<Ѿ(% eQc :!h?7 ݺ)*i”_,nwO)}{~m8h YFgD%V/;O lSnYQJ\ ^>m1g9,zmW'Kt~F'M!ݦѭ F@ƵIE/Ȃʅv)oX܁(B+=hZ\6Kȕs':* cfN|V7)5ku =oh%|ovv/qbTvK]Owdߕv'Yo0b\g<:7o^B^_#|p&Y|3KC&|BWa$EdX DDv]teu1g)*x ߜ#]cx" "XE%ˍ <ӢC5?} z-$sw'o)=VLe18㱆W"DָgDPz:#>с:䧔`מws_ w |W:A1*Qj2V8ۺd۷򵏒]qܠ͋[`"=JQ#n ʛkd$JYߟ~n}j[ĖtbFj^9l,4 ue4pu+DW1Wt|~f1aItřtӗHl PsGњh: ")ZoqEL-TB;nQ͂5%%:vL~0 `@J{;6iu3VMp=o~jIGҨ\[9DIh:DƎY(.V'{O\;^rqLLKQdI2z"!$ ;Vl8iKљNݭ5j1fTci4ݜwO0|y&Fi3Hm]2EKr=fxhxd\`&bDѳ RK-UVA|iZ4#p.KÈ9"`'Q8ب/ٟ'[&:}AxUEqP(o #(|[ 81I\<`,&.YebDl܋ P\T>$y4"W8W*DmҚeqx`a[`iqz-Ѡ+nR"8cQމW΋>̾inSHKUCԔ?޶#۬F9:2+s[ȦAe9C\G΂wɄ`?Sz2f%cRuȴ- t\?KLW2=,F2KChwcݖ[ԇ9s4}fh:Umͧe+x< e w:[QF+-gPSÖ%3a,ZK+2]PG.,EwW*B$(%8;C#'Q hRh%/@yix]<̈́Ι0q 3A! =Ƀ`mb w['|%qvC|);VLBz+G#sQSA9F#9FE۟#lȺ-[ڸI{~N&_G\#xR*S'y1o@ݛ*rCo,a6 gl?n*_2 qi"(!B2zS($f|AO-g&Z!Xal!57܅ b*Hh'a6`8 w\h t|_X F}Nkߍv&8${kCoM]~@{6ץ*0{c"l(R~q;4m{5ja8b̮G_QE]!_#8DC?fIs\kf#W_veP!}7ښbYЪU>n.5=)%ڐDm9LkQCezM6a cYaoXb8IZ@Y0>p,*07ךcK'(J``^&{0c ]>G=y%f3F@ҺW8=*SSGhiC6wўՓ&/bQzB: , | "ئY73WDlJ,%K̘ok`D me y8(@`һf5iHɠlSf"5 5u$m*kAV. ՃgLgm>Zʷɢ`$$KUWIbe^2 P*8#-f&˧*hmh%FoH+2'stOGw;Ty7r,AhZ%VɃi,go Pg]`:5SMZ.OGuq>ZT tbLs"GX(*C{ʕD6 63TU*S3H1DQd,n T^gAbĈ Ae 8zVג3OS/;ozguA8nYe>53Iˇ2\JJ9CXvE랞/GM{E6P;φh*=Wܩt@Yu<"DbV;jV̲h]ex8}x,L 6hi/0Cp]bA%>?w[йB@|rSM69֗}k5sDeXOT {#gf>TG=KMahAeO]3o.·$] >S~lu)sV|ߛI:+M'{@I a~N]MQA*F^ L>HSe{ha+ִ ߹A O f^Čƾk$4DNM2/8ja9C101o:Ak~v@VhU#3L;1LΑc B KXY-W? Ԙ%‰xuec3+H>†XZt+9QֆFHV2v\^/.?ڛ5ഗ2QVI!BɃAk%62Cggx2S6TYrm7;x>{$Cͥ6`84ߖT o21wUe07.sM `Y]!eȹ^?Q;86fx;|ʄ"=`JLn=d=tkm0Z 1NGDZ`kEdj;W X/21yƳᾑb!NXJѼl?I1d_xٳݥbO~*? 2 3k%g*L$!{_Ka 44@Kw[pR H+3xS2ɆVBJt9!x.HPX9{_uJI5a vP%^j7y(Pі5q-0 S`$*)(c H;j}!5I;&w)eos\  PXҷ{hԖ&cvm?Ѿ'e4y87ڌM&Z̜xwe ^OʱbW)<)+ 19LC}p33dzQF8nf_Rn =uƏo wK C_OEZ4MyLoc:N0" #'{vcPlWH,"/I*g0+vwT阶L[SbI747#m,NUK@9۰J߂U|HB8ZP1EԎ>hwJ*cՂV%=ڑ/z lJ\W@0胈T a򾔰OaKth#+Nv,[`;PhqW˚oͺjX48;GSW԰J^|T'z0Cf_9vSj> PGML8FM5#LW7Xy gЎk7(2%#{=x扎I ϪDt[h?A#?bZfH8:ū bU {PH 1x85a1Ӣ$%\@LlKQG%3md:8?r]3nP{@bB,m:|@Dx[ѭz%~D45vIF&N^M'=:ӸeSVJh7 \^'DA V"vVܮ ;2.Z4}7{HjԨ54B2@{TbA/kNV9&o#qlKqءOXg,#뺖,suYUКLiQW| 3sMce.rj@(%߼^bwBK{xZqU@EwJ .) dNҟ{>f/0\ݱ [*Aޫ)(L(м])0^ྷ1ȉM w8J ja;J)t)v=>Z땡.̿pq?=$i?fe߆ļi2ơǼ4}fr[s S^K-wNRCWD}YKʻU>A+:zth'Ǡ qB ZI#ozyx#KRQ!I>MT/EdB 3뿸$s8x":L1$gU@6,'w7 'zl]_áWmX`Q7yS;܁6@f\hlEs7 51+I;) WƩfYtԻ [Ob^c~ 6T|NE1_Ò`5l'2Vj$nmN.d)(\,3qx{"[hʸ>R^L=$AM{agvEX_Z%10|_0})}b~Kl$F\ S"Pi!5YGu B3`%f@a8g&|Kؑg'H]@kJ_S@l Ώ%$9cŃ$p1"s f&|Ȼ…OqnN7BW % S9>M$&[RޡgN}87HpG}7jǴ6 pB9>$:wZ|Mk\|2~%XɮQܞ$Prc,Jo{?.ZpD灜"MnrKN0-cgOHբUrpшz /}V|55K# ,#AnͶ=&[:!`/Ie⟸d8"0/s.廃xaG'r|I1!t)#1ll@2_9坊ݳ'K3:D<Lo﫡vg7l8凉"T[\4'_k-~_VZ?E3'NU <;w)k n-Ϗ@v.Uv~Vƛk BkzWCpK1g]:ߦ/ Ɨ.BpiV9w +`= +=9Ÿ 9ZM%t~ 7m$hD#]Q4 @2ֲsG*,ҷQcnsk66焥DHC%$r*RN49S=uCmt c@I\8KYcS&Td$& <$,5C_+w"W`΂/a  f@:r~=5mhH.Ixro{~UOVkwW( 3e# W+ȍ'ٓi:[ 4"n } T#wŶDND/bmKOh^jrxE\ϓnspk;2;kRo^BaP)=n鎃u= JIBbZezg?[g|&ѧJF@#ߓt^e]И+H=j΀܃g:y8CFr3m5\ OH{g<ۦBH[*?fj:nc#q5\(UHS >p 4Jc+,S; έ=j% 03kܴF-pWtyv>zu~T JRNP_+ȅKp s [NgEdK\/":#\AdؾfYV7a<aH u~"1V]e%0 ksY91MADlGqs|7 5mT_ë qX` i$~xaSF;UsV"?V烖5͓se*]2e``8NFi( Gр ;]ۮr1}0A֚]-d']zňl 3ԋ`W( #a0~/ϒ wAQI6Y r|xVު _O۷Sw~Sʪ`Uw$mE#>͔',Tќar]@KAeKR.TKX[+#sB"c{kn6*|-PV^pNc>Ԧk>`-ֿ&ct4o|6'W~DVǡ>=݋`qPZr,Rʷ-X%T:`7xEj mzN? I֑aSxpKW[C=;#dw6:&;yZi~eUpظ1˫ Nɕ.#?X߄0-zO%W$ХN$L~aH%/m@~>CA[SRC9=ID_p8jH뢕@O𳺶%%}()̩ѭk-Fgqq͎^MğFc$w%#Q Ӻ,9C Ce עb[)deKqZ`FVit:B1FwKʠ_,1p! &'J ~[%(^;Ja%}l촨Ng Mnƿ,r>Ho U۾m-R s}@hIdlk.Y-Ե#ߜ̻߳:(DIzyWf@t9A?D!hYǍQds:«~k{my HeZzĖNCp0<M#f[%*toH](#IkqW{ @o9du<@}H< LlJ;5KjY $7ZM4Ô(GꂎgʱWz;vޅj˘+&jvIW#q?ˤ7rSR.BvDѝ)z1 Z.=X%rLi"HQ+tQu cIٖDsKnv6hG׫+hI4@ufzzvsaq/,kixY"ܥMPh9f2iUh(CRL0]϶uٲ>' <%{A@6o[Ϥs~۬2?FΊ57+ {"οf3is9JIHZVe=I[4TaW4BСQl .%՗J$)yT2 ~~TÇ0@}jhyH@f`.NrK-q?l&tn ߟ.\c 9Pp֡wOPTEӖN2l >QR@F&׺qo%ش A#@^cؚ cEj/P0\z_EL2%i hK1P\ZW$- Ճi8(v$j)+hS+41ZL߈=OLkZB"&A6+{i'/= ]qΒ11& %~n(_ kRl(d'AHn$p@k aB[*INlVq mec [Imw=gQԷ"̈́lrŕuQC?zsGhE kU6*:zS%i.^zXxIZsD5yJx]L_ҮeO]ͦ<)3 %? 5u6y5_Ȭڰɋ/z ="Rv&&@>c`ǿp:%8l<U <%K#-ƂI %۩yM`bwtRSQsUt~$mƒ<ootm㈉;z}z8ktYvjwX VCeW GQ}J Y9c]׏Oؾ;Fpe9mw$ ʮWBq8yc+^L>ޟOf)T$GL.3:ԕ ufΟ9*L Z B32PkUt<]S߅vi;1բkо3Hryw`_UYu`#]{|L"ɡH~)+p6fE3p1NahJӺQY(u}Ob <|sPha }a7SO h&п`=L2V55! ϕOnV!N>C/]ѪnX;-̄0 Yѿ s6ԯ0%=rmoУJ6^Ep+/_Pf jc tOxqиvs]ne&e'zr:1=dP w{x@oV*({>LkVFbKVJޭOѳpҟG$Q2 ݇̌;PXRaQKf3g#}?Yzu)lx/Ȼe#t@J>?f?ƾ]>*AQ) l%iZ^. Шh;B;`\c5X1kLUc|o;>_#VK@J{sftz,G #[>: g5WCKEPQd <'`9%K蹁C-Ԑ~Dh#r&ѼxG[uDI ZL9B7Xu FH Ɣ#`EjsjACq؃"5dAmiT Y%I.yE=]D WO'A<uSNmc0M?Q kYrrb8LP  rT[l\e7[tBuULQa4=c΀3_ ߓt̃d'n`r OkXp0w1A|eb9?+*+|,0R!~X,2(@;5g[+o$>oVQQܽ/ͅYz!TLGo ̷J#wΆc:gzTzk%-n&W71VP_ nF$5~hPѝ\d=j |Lde_OMɳ~y踆gb8d;E?`*lٻQ=5YJp$H]ͦqk.5*8gOD4]f?+E?yzL]k8a];.@vl9z^O# ^z " TK.K/]4i*S.ZXX2N]yb4qM=4.;gv⹭;3$iu1d;zcL!|dKt߻:q2a͜=4GcKc0j+?YUGðg *w>bkzAxKHu d9z_ r[( tb6W bTW!O.F"P>[R!dj%‚{Hc:ݗHZ ;j0RR8\vɜKԳ~x~*=B>Uc"5nv})翟퍼Y(hGX |ID7NR=*9`!*C&e.W?ӝ19Tɯ Z1TO ?ˈ\V^8$5zF:Q97rJ:Lm.QWnjɛtz+=x9L N#v17pb Lr#uEKreN Th ` *>HtOsơ0e}V'V})r.!_6rzጪF'J"6oM"8!۾fl߮[ğmO #0յ>TI; UVBG aTr=ѝ?u;HW' ȱ0)IQ կ谈u2V0SoҁJTk.2t7q[j{'6f2VEj ObՆG-@/T3Ovء:kA<iB%j8]y?BVnj4\:K&hʙ(D.A4yL:אJL \!pЦs >}hN^ƂCKrQWRb|Mo\DC bE!#S@ץV@(% 3̲rAw+PrC E0AxHRDLE(71?h&URT"3u͐2C$tl F Ե'Xڋ҃Ir6$Z7׉J1W>.CzcʰCVչnB(pAk4_}^U>E`qEQJĿ`LI3\|fT)nP7yr6g+ytVOJ-@L=<LR!6>i^i4j3AfoelE0Jp'@)" <;ꗽ~: n?G͘v.-Ql]3^B,ĹK8LjS`H` cK( .-. //cua+qkISWY:nNtv+-O \(N/=0[2{˿kNkT0\?++*`u;kK . [[!#D҃! ^=οefV_b݊|&HOX NlV[i\$q)-jPf [e)p.3R5#Ĕƒ>Y}GJ$@e2սB9lFGS+Ys$b}sNH=V((i}4y{P\ؾq`g|G aW.ES{"?1ufݛ7FSWTJS `ʢ4%'AZ@-*^M^If@S^< :Ddc4k .RÌ.AJ PD< ]DlIrag!\N@^VZOef EB4$OM!b_at{}:2ݔv cu,@0]AgBYx ]|.0 B!U_]];mR Qa_'h> Fų5%Y{޴" \nq]˭_&8\zrz0uD3Os"fh}ݶmrH8{"/XBbM<:+39[r@H;6$dB]s|[p Oi6wO&;Tڳ6y %H l mJ^x@;|Y3!U|-iq@$0+3e17"|| "Iĵc\Ykə\hT^3>-3KQU|(cX5E!hʯ):) K-qBZ|RNX95OU] ;V)ka?h(^Jr **/0ۡr5iшu;Ŝ9EK|'Fͪn%x~lSYz+&/Әij? "VXUqDx-K?CyG'[[gq!FQ ? NkѢ6V~zN׮رULJG`F3(#gQרkԱ^҇!8yoY\0:D/vϥ*{} z`4UcADyeEi"2wqEa4lsp@.SǍ},"䲨+ąZ΍>֮%<$ԊQ[j7eE`:ϛU4JI((I 2u>blGqB{IOYf!aȴ_]0QX!*d#4ԣ4PԒP1 |̿)ȼ~t(U/ W9kF D*ԡ}5\vPɳ5,l|BwiM^:ȩnJSJ(Md UX=|QZIHy-MPh[dۓ2Z2juI?͝F`A$e;cd{6m l kE~#0\> +̥9*Xʗ)d,dŁ&Q& x>JYK3pjmN& @hBho3L-w_MczuVNn.gq/:S}tUsz%bDvO遐i?O<4Ҽ@k 5i\ύtnUؾ@SY?G&Ⴖ+ugu7*nτE6V6 &dT#r2%rUӁ ĦB0顾 Ӕ 3t B/֑ڪs}Y j|gJ9VaiF+.9Ф~C,IQnLoNdiH#%mɤ|eel6cvV$o3);h,pnh+{h?{w OM`N_H`u6 !䐎́!&ԯimD!-eumKh[sjgx><%':O!foh6n},>0H1h8m'% .X́G)kZ)bJS׷7 bģ<8!Lyo̴)va%4)|ΌVH֑7:7lrFa{^2?@!]B 2V1Ml?E|w Bq #qR:>*}x<y8ƫ͟xsGP?c]''^`5lcq,2fEc!@zP)iB]r81oF?ܗ%8KOyW+~iMdĸP2 91c nm)/bI hH)+9&x n&+xZAOk+c nՏ2pOJm 8S KcRdZϲrRU)9ڋPIFut-)C6Xݭ9l~ g4md7eEIuDCyɪ|pDrƚ;dՋ_+"V?]0SW% Ha{Yt?:Ӑ8߭4׃t^q5בn%=4xfhzhQ $):[8˒T;Op瞜HKuPc^N|`{JDWmV~?֚ybbNOѰez A)\<ŏ70$iR ♊6eCO M@IOIP9u~k8_5H"(I>E]'8Rn:r}-_Fblusocf"g2J62ͤ9n.U7pAC*-$"f,'݊ HlK ? eo6-VJӱؕ -I4sB8"ΔXRi=(K8f@fF q̇lKhw)>8; $҃ZЂa"Z!W73Ҏ곁*LӖ9$]2E(gWn\ 9D {H2%~&6;4 9WJ_ՈTC'"6%mjωzڠ)j#WuPJbԼ+Zl-fhω;܈"L'$m4(F`P&3h, 0}BF)n3`qjAoΦx9`ݜrǘ{'IvYߞ;$%\P>]M bۢOMCP*:A:ih ~=8Rg,:TM 8|地`py}#QZߪ ض[xl!WEY'jh늸zzx\aDt# \ ^:N7?EZd/#2̴^v/jг<vxA~į`0N{9c~ڔ6rq x ts~+(쁘yTJȺ+I<17ܪlNgͻ<>BlM_/5EmbZv GZVW-muFWkl*8zԷ:E?rP&Y^ty։|hizQ&{'J93]lֺˈEKfn4uy7~3~"Oqvս& 9l8<>+qjOTHP=%vD)L7E\{gdT,P%cQ d= e3,b)v;>;r q5W漂L_nXa$*x5I'\U: 1jњvBE|:ĩW|k!4l/Fo%ĀȜԄ.JA1fz70=ޠHPhRqyQUtu_<9Fle'`IdHMm/KjuCb)9hЍέnO M&R-X"aS ^EoϊpD +<@ka>0F6YVIVex:A_(;)ZPVeꌰք\JaOvQ+978}ihC"_̝n~)ޠ4;S"0*;gwUm2`s/)ΤOYuQ7S+4rZMQٻ`zvΔS;$ Ŵש/O9<-x}]v1g>[nb*}:_m#TGtDuϘ:|yυ 'Ԣ2]%˧RJApU&f$d4=ܥ:A${r IX}Zb,!4lNJ7p||~ru47׉ͅCT[=s 4e^K{R1ZzSEVS5 ܙI-6U*CU 6 &.09W=m>"ř3Eޛ7yS%iiy Hu*|%#cO{LZDLH(MQ]&`-U5\m컮CtmRDͺs"̮[yX;sMiߑ:?Xl 9 )Qs..#4`I.b߯G|fWK@3=8a9*[p g$ }눵[ (#kPhZulsFZ0ouGv >p_@1 P84qENnM_(& <0Y}iUU63&"dXtq`$ #Fu l`L_ s!kqS+cw&`R3j`[ ?(pcZ6VZ]Nv6rn3'rytm/Q:RxF>BU<_}cI❺lqp<9i\nw%5T|0}>H:~p+ΏaOEϹԴi2[0]Kk_'[%]`>~+IAkՈiE@1ٹ^B݃ݨ [-y_BBv =ܘ mfɸ Ekw kbv(B/]&`9Iv@? ;?ET~%{*p/.OSι-*񬌩2e9}pw:d|F|=g3㊣ͷSӧ&o ~. Wmězʝ=L@6)پhT+,LZ> /?.{ ,EvCyV6u;*IU'$ * tEt4`׃I'&Eɘz4]wgXsl݄5Ε^Jx^ԋTg}gؓ'H1^+.ԀÞۣeC8g iDWR)~͋iJ HetwD圊}~gv(c];e#EB JR~cJI̦RFTNZ/ic yi̳Zq$X7VqB%1}قj篢[g/͔͔)V1Fguėn' X4NPC J:;Id#OTv*WzxP;" ;EeԓU$*u\ EK2No+*hoYc\0\{QFVv>|!iyԻ9 f;n+=1 n`{Zx:K{l@M(ޫ@ Ub|]_ޤKVx{>F|#vz,\"č6}QЇ6p^#ͯSu+o(鿓'jHzTp3vP?*s*^33m(P?S#>tIrieq#iadO ݂ݢ넗 `|ψfu h ey"}sٖJ!ۣP\^Qs-xŰI/k~Q2DaAZN}olۤ^DY T/GdE~aZm#eWz\˲[ցg7ۨ T^<M!ܹo! 0TɳiNQqp]%f8 8@GsLd'7Z+qBC=1{|LSֽZnȻi2K`)5FuM j|ToAaaʫ៧ ͅ:)9 lO((ZC'FxXDfa!)v^ ȊJi#m-B`7q\NOeQaܠ_ZZA_tݙ[K(hfsx Q&t{|gZ&{JH &~ wks7HK#ZoCm`EĮ18{{HI3=G8Q VQZ[%L+䡺zApݠ^ٰM 3ֶI枍MFb7LjnG3o%ҞLv<󒾘4N@;C :D $/*ĻNHD\i*IҋX_o4~l-N>;aX+re¿bznY F|z(N ^1(QNqe;ćn*$ڊY;uP._MӸ m}!GhK]J,sz׺Bsj%G"ث"[_4-nh;y(s 8fHɉxo^_K':Eo0 XwXts-Ƌ[iXKVDm N~.M>\U2M`{$D2%o6 RsMYF'- ];~*`CjІ]IOA宠bKQ  YbV" pMVA;'^eM_"߭a`Uw8!*6T gŶī&u=:4MEim5:l {Ke[l2LH#8_`RBohؕk{>M+!_B7Xz7o IWbv[8li|zZTeb]ak|ȒFf5IN{zulX8FpoһC =Xh:~ϴ-9!tu*ᆧ43Y&6_&>x]$RV)qY{e;pX[>G&pSiw1M8zy+OǾ 9}Xńn#'n^=(T{vH&/;s T?yԷ[ fk U޲ ߬)Ewa^uOBĕ{umlqOE< C8C&FQdكHfUqzuG% Ź$𯾛w. -">QFcQjRyd4]ݟ WN֝5Jw'J -SNǖD$KvOm.4AQ{.k{7y C단XQ# U@73aqn(tdJ(2)AϺf*ݽ82U*K,7'^K@YK\Ro.  Uxڲ(H-|zpUKNPS&ޱvP""՗?䟜v.ms.iޖ r&ѵi$p5:`[ ޜ"/ }? WEZ9SBPcuN&ѲЮ=٦M9pht >9w{A@>vg 6$K3໐fxehcRlvLSA(PF$%2iHfOJ{{D8$+! OTG^{B 6J¶1Ha9K$)r ,LN]ÿf3l@JnuQK~"(hg&eZS8ϊbyN+]iKe0(`) PF熓욯LBZ-VL_HNUNY{=g%"Y-[h A:26Ygs rJ ԓZ4 ɯ0-0;ӎI[Q&5' \s t/U_tnP++|5YLr7@p͆7]X񆜶Pm-eɧPM.66Zk%Ly,=1KPDG&Ĝ@bzi>Em~:͏[m4,ӈV~ v6cgHXx9_b0९Nbmw[ +ƛܰ5S NX{FΝ3B.[=$<< PLn_drTat<Ǧ竏1 kpkgöU&*ba]ZJJ$ ܋M@AA-O'\~u=;WDd;Tvn67K6oaiϤQz#WN۷yÃ>$+LޖFP :=OAcl*Ï;4Wڰ3Z2^{oj`w 6%lNV} )u詴Pw%[뛼d,D"A5+5ƅQ#"w"ԩ/s6{ |c tҝmI~AKUWO ,VjcDvݾp+@3{_PeҴCq?qy u@j",\ H$& U,>l{(4_ߎ6^EN!ng!!ZPmwkvS7Hۭ| ~i"{<ڊ}pUvlbgJ9 ; ATܧz_Br pO5O}`|xacz}'AJjJ]Zzt B5(cx0eK;!C RèњZ~xXC]g-S ęWNf=*{{K|@6G􎻦58V~9 gޞHO}oOۄ/C đYΖRU{K7jd(H5~' gqz@mBq@0_u71gC TЏ8Wz{k8Tu+68vm)ࡇHV$Dʧ$4)Ž>]"C)fne~`OtxyUZ+M6 \lj^i竣])`E;WD20Wؠޯexs3ǡho-2Uޱ_ ʉ K:6#>bHLGw\Q Ϩ!` X`ň 55Z XsJȏxp4xgNeUM$;IL?>BweP;1?x_b>93;k(Ҙ I p)V~UnP`K_'ϧ("v*&ˉkq]`_R5,3,X~R|Rkڿ:B"94ns$G]? 1>,Ӿ[ȱxwk7č+S7!ṽ)eޣP!{KmP5 5Fl H&x=k(+^'zLv d2 *(q6:o[SR^6 EtfiNа@ʻ#m(@bI~圴[WD%wnۏNaHm~LP3:*an Z{~Ƴy;s\PZfE R1'o{f =6gҷICHUjv+U6`JcJ6E.tE='`p.VCRdD  Od]^gaJQ9U @fZa=ZzeƂn[Y@.@c4EJVΠ^U@zvLj& 8LN=S|f:ULOvޟ;ߺ1I(N04r|#9!SڈveB@x ""mXvb $r#xS:>!ـF򣣬ڭxn>Or mp$v|ҵi Cm2÷hI\rEWrv׈~-X]: .)8a_/Q9? l[&T4B*`8l_ F1)}щ LdP,ʇ?9+z&ll`@nvif2ǡQ,۷eKX" R`L|!NF)`_T͑pCKD`>6=|WE^e߮h"X2Ǡ-}FEVͻ;*;8 xgo#_`ahe(nHN($Ș}d♸ VG ##y*HXc~G(A;G <*/ ڗHt] 5jUtæ'$rVXNQra|8]z P/upUL%(ο USuUF]DC'q7vC-}6 YA)֎T<5hD{3ޞ* ЇT֎VhS aɉ,UQ@jhVBƇU2!x,r!6{3̮}-cw)SA{r2 :#Kl4`m;r0[SSf/yMThmc1础Av_~E0){| 97׎y~P#5*+{rZ#<;A=G N<, n 4D k Ͻ{_,cc^# NY#!a+QA Sl2r6pnY5)@Q7y!Q[^F#=MD`D\-Tp&WlNdq>z^zĮTsP`9zڶ M>=χT47zD7Zm|₉уjGnmz꫼!E)ůPW_`Ju\m4 mVܦSMw2K-P2PjD@6p2l<>vCyK'D 9>eޛB%ccwTüU_۾4ѕ#m7mcKF:ܱ!اr_lF`haN_-i)3*~dZ&K%7)Wզl󏉡W3`L$քԻ?uk5-1=`u'x* A0eRmu{S"̳ёeKEv qc6 qM PӒz7&*&]gqVG40R!$pxmN1©EȚzŠ1' \;/MJ07wl:vr"IOR+hisz"!t9o`LqbkzܕgX\'!ˍgwQ:ý&#Q?"?WG}ZV?yf'}xw JL9[]w:BH'@ܿ:Gi*|I0f+'=]1/U>tjO{0?\&4g¾dԔZI؆&'߮/7"gXժH:4A-G?2BpUL9z_IH;GwJK-a8FdfC_Nd]@l!DK"oT (";!ګ`9=d-1h9j),~;:d== jT D.`1(HaAg`p3ɣ$:ep{\: q jXc:1T-9`LB~2a"J9:2Tik!ᮌ4C#[ҙi˄4[IϪOT]p^Nza+S7ٓW//QQo4SɵfZ4SN B "c~vKymtw{O^N{hD"̒]Ů,|4Lhk.̙oh y%c~~D*/ V5-WL\>{J=] EFHuL(wk0Ku&Z~uo6 iK"vfggN70ucG9%o6+' m\RjrV +ZI0mz!zk@Qi0b#Բ|JDt1K\]?5 &40KTۥ ڻ+ t?pe'v0ۀٻ-*Ӕ#H4csfpjRxֱ-!x }( NyL3ǰ 1^YA.)D暞t(Pq4v[/*9;vVѼItrԺ0;(X>c)Q%&7Og] ޫ~$BJRy',۝p`'a}l1:#9IGF/?'W#HYEwTw~U0-Wvǁ1ɿ%PkRyY c $jbsH\J̼ KewzCLZzcPG`b,8?k#2\ڌ^ɈJ,fT@7+vE)~[N WL/}eAfHL-\Ih C& Op܈$T,DE;T '1O\\vIڳep6~{Yd]˵N7?Pwh$rkaߒe·_;Uˆڙ)\=U_u6j|4l;Ϥ-N?B$IBID z*&o2/ ]4ޤR.W@q֮g,!cXS^KS8ԛ_c"|-jQ"Z1o=#XE ʕMuaR9h-?C/# ޿?G@|\P}JEtT69X#l$FaWkd2'U޴ԧ'qIk%]mQ yR ME}mJlIpX71a%}ZT9CDKY!i NlDV:×D;ՔGbXPgz;GY£ . a҃-6qCxls%2&<5M#T{CX%C`uG9},/謽l`s>8KG#*uU U"[ R* 9*eB9kDu~=Z9oi)ΓSegK$|vyzh]ScމX# OSV\7BŭSLMDxQ:N4@ $.bgFL=ѡW4.EQ`Ӹ(.uv7])YJ>vϴj^}9cXa'&$(ȼ9P=\u / \(7p[[HB#iUϱ%wrZ2~q,+wd-8$gcdpȹ[yw͔S)7ȝ`_&5'Dpy^]pbJC%VGH6ޝMS}"p)VEy$au-,(bZ>oYURG9`Wiどc]ircLurvӮyHAW)K||">T8Wj$UjIY@;Y-썪xg<; J bU]6'n}`2+[5pSh[&&dHrdt`ڮj&  ?rnұT\2. ޫKc+0A~!!>98lLrN6d>.HN 9GtNq~+T `xX$ͧ.#MRf K疙o^Pz5f쬱F k#ҝ?ȭ=`3N0pѣ*;%2,{"_#t2ye+Ņv(I8>.|FaCLd=P =A@GMp+@K>>0u[Z2]ӒtlŠI+Psla\8u/Yn]# ׽mH^5@mfl*K'z6߆C>?OCw9ڠ2۶a3Drm^3%NḨ\R;X23 B em?ק zm-_Az+ȝx ;wAw80 yp\KA2tpP6Vwz)ICA+^~t oXH_=n%2QXX%-ʍ<4Ehyl^86O_be"n7-=2`4,*3AmB :*=Iؙav";F˛ z4t:gm%9 ,4 Up"poL O+\ \iBƻ9(`m割uz̦.[>3h %=*,TyWދU]<,:x\f]ZY}3Յ +r}d5lC+.%Wz~͈وMyh}Cih5>+>. ))): >1vg"#7xLn-)M|w㖝D+g$lW cg,n=ݔoL"ip Orql!s_ ؁v&eO2iK/%fmFa;q,`E틺P^F? G{w }YF9Ei2][肌eZhzFaPZ<' exBZr.8I^Txdu:L5(1\\[97f / hM;Cv} le.CU!u"OEAI#0AxNy0HD*qsҝ_/Q&y;Xn2]'hzV\x7t(t,oc=d:'#o(sIJDSe}7!|B#(ȵ/&0؝9Bz|HnI_cN=QG0^Bz-PO /os/^1%ORV >Z>:-MA8ӾJk ~'A=G7r5K1?mOt)A QS;Ei8T_^Ԭdڵ=B{ g0!8JQ駦G̽:슕b, nOFm`Or`8 X$b'Zm?TWT1$XKo"("imQ *q vX57igڧպ|ׂA(GJkܟà0-J1|'ĩ}Carw u^Ï@<1ʚJEik&QTkv#5po2Q_ ۋ?$D^1#2AH4M|K3꾼 "?`FIC% E"1}o.JݩJBt.Q D;0HkGLTlsoK*g эE+%r $^BFE(2SBțJm;x߬ WЉ-VGx Apap#$t)!]ffxTٻOmHϷ0mky69ĸKC:KUڟj" P0RH10gfɟhbCI$5@-N_d+|zZ|*xElo4>j*ƙgyլ9SsNX?;9&$T7gl\P:b BGW7_-=lAvi}ؽNX0YmUuqG$/pt'9Vz CI70X<@~: hLh-Z ;iG>5WZpQ]SDVҐ- 2?Af ,YyZXڠsIzMhJu&#&~ -|lܺUy\vB*s|nZYA\3)Γv6P %GmI]RԖً&p]w ᒀ 5&Z9 ds\<s뇽9@Ӆ`i%MrqhNae(xn=`\ T2cQGJ#02Y0Ea*(P@&aGL{6hQvv$ċ6ci RJ_!ye%\967-u*4 \e\`Y6B98r &0zC\4, rqo`q+Sd/2RE2Dyr[TeC|C gzV5^ĩـE-Jߴhtˎ6Ad7ᖸlբ(\;h!!^<[07O~/AGg1 s ^| ؇ D >UU[8 8MX#J^O<"&k% jK[[+ 欵bB(Ԟƶa"HWK=töG%l֦SI} (WKvuՖVe@]ZzEZd? I4"~ܯ"p8W&7M̶,]O=NĎ%$nV=t_U#`y t#׵uP0z s 8}\&ޔ]ԍ0x)] &ItBG'czpIf/I s_Ia&S)DehfnB#"}% O1EF~ x*6X}kv /%s9׵:5FpDl"ɚlG@Z-Qqo׀[*{Dџ8^Pq8t+Ww Gxo6zq@C2~ < ˲c1[f|9 7pزb6kmGf.st%trEcMXld n"8,Y V7K7458iT5kOIip<} "s|Z>!(Va GRcςڇL v]nHC hAJ9A>$S۫/!kI#L XnR.&1"%W]GA7Ho#pE@tRߝ>rG_=rOॣP"fxHNtMyl ZZvP3uz6DjqBavi J?(~gy+T`T=fHDiE/={hljس6@McXcep2Z_\Z.1.J֍@z9*ů8lAg7hJ¹lq@M\:# Gi Q=O&'w8Ш奞-!$Ks Lzm~rCn6=~lP9f) q% fmgE-Bd ^yNf&K>->2XGEWQ36ZIr BEhIoyi46o(e&o& jNf[Όʤ:a|قIZ`:Ccgk\ ( Y 朤|$tt wPu{R*pN2{MhAs < Igȷfm6Πfq_cJ fg HMe2i@"1Lwz'\W#USds&W)]&.hDV۵;֩co4MeD/7$B3)?cV'ܭŞ*dP(yY7I{fw+/ f1@;-I5tgcQHlȌLfWKC<}WB;1B"ܮZ%<$ˤaFV:&VD֩3I#imm+ٯi-=ʒuO>FKFWGhӨjm9{RsGg▼wI|,!W2!8y̝kbnB-M͵>}>uܻ+lo"LgO,yЬb p7nqIVI V$̦T< sϝli6>N^+t&29)n텫D/;,Lq]!\$kstU 㯋6͘Ҍ*ZEՒ6akdkutASzrm vA> J^ @kjtγEU뿦("W%"Ή%XtT 8*~+Z D}[@Nc.e[6c?r6#D1do_M%6 GǦ_ ew=GHij)bƺo'jYʗJ18^bncfip(;n30R %)nB9Kg?1T&N yF1Odڪ{8@Sd~ܷOj[#].K_&q~1MÜGUos*坮jAgC *)E8K/W#-LT`TWQ ڢp aq_*b3})9 䨰"ROxzW.cw-)֤7shWJ${:f7:C,`@ԙWJf!Pׁ k9PK@V W|x 7a R1Ǚƞ^LO crF*:?yUZС} ;b=GFO**C<\yF.P] ] 9['u8KЅGъ`?-ktHOs'ĜH+>IM6:P+,bsֱU1EѸqdi˰U\U)Jtߚ'95DC["M93u$`wmT:廗;DYs)d]"Dm?w@:TЉ,Vz i5+6FA|G"lrAd#$d 5u[aԬįF2<ݦ^SXaL%_}e|/I,p"KjBVCɵ2ב_>O|q^ !װ\mTe)gO5[ YžgʅļL&NxٸY{O!]C'6iëIՊ< eD(㲙x hЩ0UdvGtP"['oxeF8ņf1sH̰@MxC(#ѡnEΤbQ #;!Pnyej}~aAҒFs44B@"ps dG`y)ag Z%Ǽs{8) ǁ`1ahGB3=|08U/ lkuuO6AFVY@oE@8XD5oEU Rl[I8Ui"9&Ygd(›^b_9:&ؐHR+.zusC|_օ&yEDOp,KjJIEs弢Ym>V!huF[AWG s˜c 01mi?t艊| !h$K)dy\aXr. T,(vW^Q#/b~/Btz"$_R, 8]O׫0Zb6SN[;z(`e})Vn(%tٛFXTn:M eG mн yl{z *]Gvb&WnVg m\Cיv^>S޽ʳU0qa.n/500lL pQytJrx}?,܂]RiLHVxV*/^&iWM@19Vk<6%SghU̔)S&B6E}3^`֏X{[50G Ed=R?ցO,+  ҬaGF,V=B^z9ʝBV`.qVhJzoVMre2y5 une4nːw)g~`"\ AF=E1ǂ f81+js3xwb@rO󏶼9{aجyd@1Dƣ Ш0=}Rw 岙;ǿ^ =H jUd/wn:A~j4kOwUiyǢKE78xTI^15{͚m>$I BU%@31̭m ] `&[S ԒEZuE7{,%k_u:x½W/oi$n(C4 'x(C:ʳU gxґ1_0}(ٺl_?}="#ykMGfШ_J\Du~}VipAY71ى l7XG!pwV*0<ҫ:.['̙b{hncǮb(` qYZ1橅u'0&tz.3Cydudk̾6R9E`׹&e7Χ[`Rzd(7=lOT+{$&Y`J!x +)O"KËzAO7=v*J먦{Ǫ6NRh|jEXD<<"$RµGO&Wi"8#n &_]|cǝ܁ll~a둿"j `}'`Fn&u@+w'ut&ȭ,@8!2̓\kBՋvxu67w1qNnԉqUR ;% N `Au,qmu*qD y56?Y9tC`kT* J U)UE2W(N\fCk4Ӭ;t~Td͊A;AYi"yq 왬S+k["6Nqrl08%r>\CԴ:nQod+\-.DV3go3y^:xqF45Қ!Ph'sipF-G80ek-zal((q;#$`jsX|.Ӥ^k5,29Ғ>%lDV [%<oǂ~ƺDAo3qpz)e8R[=[zcyF卶b^差Z[7f"<芝aA:SkC3x@ +ZE跭imr6ͺ gxú镲XŸT(*"S𐼊pv>V-Mb"ͪu c;T(2O}[.ٹ1ly7=Ǧ0"lhʽc:6(ο qmc0v߁֐+*ͪ  Q9%a #Q2×w-a:0T b7gux!bjhZ:!ƊyJ. ]מޝ}!UƚG׻,q7N.1P:A+- Xe8N`KjUlv $nGmjn Z`5Ql5ܯx%p( G_0A[&Tol~[Ed $o㇖NJT2T͆*‘njaV\EW}| !$4`oxHYT $z }ķ㙍SR-mtȟv:|^&ɼ; q/`Ex*+PџlE`Q?v5|c9'ɿ'JZ̵= 5aN1 \;(b1hLyKQe맶|[x*>ka㨳Vğ>|X&k:/VMDpW24~ÉI BX;wvmrKH*(0K1?iC$Y\ 2=ϻ)pm873ĶBs8]1#Hk_.b1>* Z;rOws=gt>UILHkT*&SfF8.,#M+PAN9-I2Fk6n@b( #o)R`"a{fbY"%mhSR2K2|NU$iZ-W<ƍ a0;Ml^vG9ha;HV`Kd6+*1.VFH;ي<;B$0`>]Du1߱KuFwireo^Tjvh41"RH͐{ImT ]woA@"ap˦MD6Ǹ SsF)o3 T»XJ "Ǒ,7]6uBܻ-6!>Īggm;ōセLL*h\,KZp+?\,^6qSlɴ؏큄BgU^f!W8d^s̭ܙza}CH]oΏrIkk 9M)?ԔLveQ,Ҁ?hS`MQn;8^`yP3/.ei/h`IA v6g*f1'%  [Tql׃'p[Þ7gھUUiVYYby,W%̈L*:ڨիq>6L #Ѿ2S0$%*W!2?<6 lbzӊ<<ܾ]D`-{C>$:#I` zw2Ư0u% 0?& X,NgE41V%2GPesLSH`݈: T$ANQ#M:s 0{>H4mS%'6G|_j7?SbM"?PzD㓌Lt$ƴ%W4v0Ӕ|-1Y.zxLHfzy*|Xq?,5IFwېf3 4(S{u*AK1qR+Ii-${ux3o1.fTYzO2$䇬QHˋBD[ GY % U,kH^B+UQ.nu~7T|6HY0+M( @i&FۿXAq/ l2yk53/)3W7ػ,4aIG"!mӘ5 %\3T0eJ*Z8"3ݞla ("xw,脯Ԋc5=7 p09Nb 1{[Bh>$m! %i햔==iEC,27·Ѹ]?[h aۇ~Qbuk49PܴG f|F]&6#%(RPp۳P "łbu"x֓!1HrtoN}`RC30B%E`?ktjpF.ݑeTM3)sW"!̽,aңQh7F~9Z>=)>Af.Le/6eyDc|гeX-yOr l9zg` d`:Vn 73oam χΖlRpکZBq^63?/jվVӟL_Yk1%l͈EΩ X"Ά9 |-4h7G^3u6x*uW֒'Ű$N-i`YRUe+O⃇)=_V6PaX%=,R\P~$/s2e2E"@*㜦/՜#b(0|]2ړT^^|4'pPqRؐUW{ݴ1ۺ m\`=ؚj* 5›iA@ ltڧЀ¤4iyL|zMjQUO3A/)x5.{fLYms5.L=Zk*Y".4=/"r5pzL(W^"UfVג(-DB/}[xWo, g('dŅrf'v5^v@Vl9rA ؑ{β)Y?kE6apǠN:g<!7 W:;l"-K_,=mb5籇%h^k.f5.KkzrY3CM"S#pv[; -óڻ6|֝{ 7]ug7""fGGhQIvZ0Fv2wܭ)=LszONAInf\3} u Qu7 0#*Fk+fhg\d[h=N/lN ?ݝ*ZPUT fɈ1d/I:)G$w-v>4P*@rbnY|l &@ŰqH|;$?W_)ɝou8uOF߹ɕۥUn\ұχ wBh%*PGzY?{+ } 7梙5ׂ.S#5X|Qw^4KjU-:ZnN- *y7T?=JӦݴ \J [aa)O㜃% d_J'k- 3Q1Y6 L}"g:$V}絸#yoe%i aRh;W5x<,)ۈɟ2T&{@X24_ZaeRҜ?' x_xt2Ddε"Vo _ЍYg|Vi#^Kݒ+IaWhæ$Uj^e 0Ǒ@џ1.GWItU1X?m(Z”lSw_8û0Y@wk'#,3u_n&ڬ~[hj _q<IcmɌPŸ_j,ZdE _c,>hBr&3lNޘ޲GڐsmUݣ%8;Myߥ+ђEW|ZQ$KU%}Z1n'¥&>E=||3lp/`3T"ЁvVSmlꮔtn#BGT@(Q7]SFz_(S#@1Yko7: %n^PA }fV΋}F<_\M4D./IDO&6*3޳ÄCT"hyk%U,_yَtMP=F7!4$<\q_Zl,l!wGk&B y?V\{\ԌD@y@vB`sv^ѝXA r.NFV_d== yaQdnh\;>I'Lt;C%pz`iO#ǖ+쪷R_ }ٗ H$\s8s: G[DaҤb?#P)jE[clW QO1ɦRP9)ܑ\ݵu\rm"p}"PR_~~oI1o`n9>0XBk4o)-<{n"kG)hG iV.k{QLv$wI/6{FhmK36Pih[ ZgB/y<[A9\DG Mu} !5T=[EKIrd\ D?E 5ciD"h}Vhȋ~ c[Q *RHU<Z J C^^8Rv {-erO qc`PY/[mv@.n 0M}.j-]{ߐ;ҴIЌh2M2.SF*{9vjI!*8w*~[g|J% r`.)5`M.l+ eӐj š㑘ֳyq?COBCeDB]v]9h)9$haHG55`,A M;덂`厄&鑢XwſN}kCPHSQ6%B{sUK#m$<(ShLgrqau4 QH):H>K7 1q! дF!YՊ&nz ݌Dz+xݧk'VL0p|4+rvCbB~ZPl!i8MQU bp{(a{qCbi_$P20|p$Z8scNt*F\V]ɑ@+twcYBt)YA }"lu往LŒ݉ Ky{fҿbjUԠ%zgS"D:ApKR,w[6)Twy3#x'/?v?ʋ8((CdIplB6 =_4]3h@ ?42#mR}#hSi)H9ӣ%fK0?ĹrY/AѝGч}0b[0^?[8X G{M\U*zJ5 j_Z";LOf sY(RhW3݄vv3-SojįQ@t{pթ;2$+]Y}j0Iq̘x@&mgloy^ד.y2vRb3+ќϗT[1oҐK\LF'o(jKv &I3sM''t;,Qq/<6f6Rh?EK} 9I q>J/Y"*+ݺ?h[&z婑@AhE~ܽ7Re Y> 9: ,!ui̒?8vBOG$@i<9۠1f׌bD_uׁjd! u [WhMӼ;=왃6p!Cp,N}tP<+9E|x%| a4a߶x1@I4Dاtwt*e[1D0.$K M$EœzF.+{50\׿ג }3*.K:AzqBOLf[8=B6x<$큍^w!9ɥEk'~vU ĉ '?:|A[7{[dZ1 Q t~o40i#ZT8cx[Ss/ "iDgE!&H+,B.dqI4ܞ_1~W}!iVl&E"ϖg=P%`Tt;y 4b^%= 0^ǰvQi/2!ݜLidWf(|iR bwhF,S"q%tbsate:k! j>Q+/jR..On-;b2[ %qNk@e A4z=đQP>Shzã*M?&}v/j5QCFv畎|Vh6ВpCP>-=?~*V{E ךmX@(MT#U>K_JxOdWZ}.^7MֱMܒ3DýSW1$>LlM^0}=ΰ,48O^Y~I} *_]6hz4-Ly3Ycl&L1ERE.hg ψnLɖU["Oe9|L6%ނjw8V.x6^xf0+=Fs'*A\BӴ%Rna\u%9k$dR\mYjU:vG[@6Q#9>&fud-.wQl|8_Cӌo@B刟(25w?zrR$5j2PuS)^sɈ 6xUuT"\sgFL¢.~#`aSn-woE;80EEo,B=ʏZz)_O1дF.Uk- u@qgLQtZS۷ ,&qOHfokXc.QFFؗeX09$YRw!YRqTx$ KڪW}f CDjnѹ-]5m_]Rrzj~"خlXPÚ<`qBMz2B#+Sk_ Ka2CJ8G/$+IX0BI[*2luuIaŋVK%:RT?)A/n`P9QuG}F{!x`V[I:?. *Di) s*`+Xytg.7z>J]d?N I'3mE8v WaqKzxkJ-fh. ^ӀzE:1\!ʅ0j #w([ 7`2qn.4 Ph?On㾵E,x GVK4q&^=ҬCj;B;_ f5iOu U7225/0iu4K7ޟt,jhRh-CHW *,M5Fz| g=-1i[uLK5:Hy蔮uۼl'#@r]M]`; RwΤ’/3OÜ->*ΒExƚ@_V *YlwNt)Z*,HVV5%l5ZcqElY4hf!c9P%6!n,;ZNk5]%tvEo2} 6T~Oq,56W2ddu˟ʓB]'߰I)w%8 =PD*+ 9DA{ԃ~@{̰U0sԆtI:P}WYZot2Wڐܓ3Vy=x#n#@ۣwTKaڒ -T{p;)6BJ%Z?~7Ц [6ցx L>A,$x$F*^"W315jĞAnBthmj3P=Rǰ!zi6PquY>=J T.-sr9AP <O-(B=dvX*2vm-XzFk7ed9&d@~0ꫣJ%=a>K;Ȼ>"%H&3k) qs+ᾇn7]Ҝ0fxy,l>h d9I?d>2`-Zͩf޴<&'PQNL\VB9#v(]d󷠠vlssĎYSQ jlOkSA`< :Ν<֬(/*)N{dtƣr0OCq?B\+dӂff ,yFC{CG9ԵV)a>޿jeb5Ȼ1Z 9buoUHKv13ghYEM ц֖$Dִ&k V@w%(tVҔ:[x5w앢]< GroK /oQl.Yw\3 b{V 7-5d+Zst6 sҧJLf2 -?iP&WSbhWmn25po,kۋbڂP݊=/3>aϩR]d:R3EÚڒz g34t Vj3hSL_W@vsUغK0Ԩe8čV;)Yf)Za^iX[ @h 8<>]XO2% Ze>u5- .mT'M4oA1V<//S7䝦}fb!"1I#t[nj#/RiLu693eCLNVZI GA٤nc =t"TFh]n)b~bhj XTi:DtN8,S`tuŶPbSZd|[uM7fvlSFcc0,%{GdRD^+UƕG{od1d*Y4LTh7\2yEGU*˻7%<"x?GrɢdgR2v_*"REl 26RKN?$}膤;fs~R"׀iP*ھfUp,:?Q%1[)N{˺i.˗; |Ns =Ǚ_oN EN!¿6*v3! B/ZY"gqPL6OT I[j*Vrǰ)mu(})lpb5V-bHV_hu4҇`{~^M]٫Ώ@4vis dBhCԐY^"1"1]ƮW`Mxdfx[!1) +`X YtLį.̨)JT<&U-oH mާw/Ж] 1H}FcT+os0"N_}p#t >` _x02Yf׋fwN%jxhz 䚈mLP*/UwӥMҾLYR`GIT6]~n~ p~Qv:Q_7P ysO_T.[\XI=h%csq)2IO!m{s>xk{F:ഈ[P}ݨD*@]_V]d!ޱהޞ~ߑ/HUc(CVϼ=u+V2 1<+a9#3v®k2GV[iwQwxEu1ĸG y `o4D og%&k nzK Xa;xڣqVwW(k`vwKxUkn\qBes^&cQmi͡_" 恣Zqŀ1@&wtJ` 04S&?min:")Nby@|9a. s9wK h/YotY2EYE)w-=,Ay5X- 9^sx`t;J7>@jFDY+xdYߥPlJ;n !4Qs:Di9Y R\D0eYjƞ[ F<(\[+&-rmfis[g٦Rd>3n8j-JSQ->'z'"3 \D*S ǹ`T({_p%ˆ"0G#i3V`X_(ְVh]P4I;u+D?EB؞|">R6.slwH 0džǎ:C>$H[ L*D8_gm/0Ub,a+֌~vnô= 0ve+GFΣn"}>ZN0uOLKjuzg<2ﴌOWb\ŕų`pz 4sά QTˊ@ u4гL"yS_amJelTUyYA}]IkzAym!꘡H=e[+IDv^FՃsSʻP!,u.Iɡw"cߥЫkY,Am;y=kk.^.)`ơ= ?mDaV}ݣwtsviAgm9((ώ==XqZ6fx0& +Oq"$78 B;ߖ#3 (^ڝT ﴸLUj6jرv2k5$|VMe2 M

5VjfqB!aX -H=Tt7M|+S BwaXh a8?a\ʝ&{ob;OnRҋ= v!&e* k>:P[YS;:e]&: ?F~6 IFi%ȅfw-Vo޲Ho.Lsˑ /' ]yIBV>LZk}'>~<<"sD9p@#?j(Y"*H{"?z=O>0d"*h5귂ߑ^f8xVuul+>Ll W*#"q7/[s ԴDѕ#M өJZr#k xuI-upgMRdwG5%u* '0Hg7np暻0`%Kq^sxcw)_sŒ%Bj"9& qvj &!\xÒݧglP7Y}NԘyw`y{mq»?žJX4#N>{7ZN \U 9"6]eRgJ+Wz"+MzV WWdY-*f=0 j?F? R})t51/0ap'9H*jRh{Ԥ66s ra z Hʙ@'H/:BݹRj/aF~%ޙ1| s|M@Deų!3.M;?uŪ:a[UQ9}elj%ݹ%,h*HipFrv.Ar!9mxgHƷ=D#j mUOq(nQ_CsbT'ӢNNS9ϰg;FӠWgͤN-3:$NClpZ#P|T 7,tӥ1^L O07~_nLZ& |dы :2*}N1({avY,0mpH(LvY8\b,O_Q W~{~ZXG r{^\Q2K,qO)퐋ƣUPpyխ/FAj.FF5-Z*Qcnk; uCÓxT 64a"Ikj.;A6XQl;@N]˃IK8-);0'^gV)AbT棌'  ϳkvQVsD9)`Jo> \ dB٩./j~b@Y,+;@jJI2̑W,FwN+IG_%8Bf:Cm2Bm)6Qi5:.K$}?r$c Q+ ȔH"}L:JreDQoBs:RnuqȾBVL2MÇu鈻P9b Nlz/~Xz3*DNar,@ z.9JeʠS1Ѳz+^ɦ⃻ӼB\4؟M3+Yר+W>zxM^KR"I \@ω^C4{eD.m`YP_t:8E8;oP|QeN\9/UR{Rlۿ eJhP[6.כwL@Տ7F=AdD >狫:n{u6y|,8&j^,x cF Ά` HCDk hL۷U\" 32e;gq&< sFw`M .ItZI?$.ܿyC s:ndG"|QgʘH_J8>((L X^Qܡ|Uܧdiɒ)vH=N>`V"!CG(,)\Jw,tS> /kWl~ђ2}r^R7_l(u ֧ZvJlXmS@+GNJzyx-䃿갻|JvKy`YjӁZ>NUyd;L㬻\|56h MI'q Aq{\:hl\k$O4d4 O3\k?r}L .NӐbgEܔ8gGJ[VW*/5H+t)=qnHPۨ3e 0n?D0Σ1*mr<.T?w.gNﲐS Ddv\ {@ P?وe+pn'^ 'Y' Lש+F5kV 6~UbF3Qej6P-qDf0a|2=)_^rTrɜ?@4 Qb4^] d^;PAc1Gd"N`vV(mf?J(nFɋQWYvz \Ί/sKJY[FCF?FS AYd՗GKaY1I%Jt.|=F-~GLʖBP5^^Xg:d]JC^qRV-lg %XXe7ĺNkeAjpDLp,lj'f1UAŷhv(N¯'9 Edl>虴H:.xv}]mU":0їlxz^Oj$ [6'?J54xb~s\ R9 Vw- vOff&s%2 $PVFrvl A)Uy% ȣJDpW3:> f8ňRʮV +.}Fcds+Z)>]td&HUx6F BV ȣa9hdٚ@|XXR9"L9o_^ ɔd{4Щ_REE)ܟaʒۗ\b. l 󵮂V_֥-JKP[n iP@-@<,(Lw:#Br4UbM^*`Y߃>Otw`?#pszTs8"*;}wU޹dE(DG*/ 8;(x󢵶h}4Zg+.{5s+f#}< El*&X$I,G[9ZZ@|4CCqvM{sƗ>^;+di ?0"M|}6~5Vz- ΩbDȺAAF19;..EAguWTGLd&˿ݽEfiOsy: TC,GndFʕ?f ,2@9Gah! bOpto{(6[,9Yaѥ܄bA."/}»y)#,>|,7XUXeJs"7 \OゆHK6,R;'hwk ml[ mW'1wb_ZMCEA C;>L~(3;|?ӟlNWkpI]5G3n]rPRu@J_P+X~T,ҏL:eb-@H6r[7} H%o_;VEL8dXog8s+]?bGL@śۯPFa3Y/$)1Am 5m<n:7QLXUmۈNJوm [Э0~a4::M[|dѤyȘXʂ%؞K#Rbvjd0"Q1vOc5+JWN*ߴh9??3q*F~Xx }0 `t&pH2>_XHN\6XVݻH QOƬHɗe}Rĩ6(J E+QL,# |t ޳v2U!bGc1߯}ڭ倫p<sl0?Ok^MKRv|;hޓ6\tuWX|yv\r8 z{cyrrcozD'+/^K]a&G`dm@T MrǙG=aO>7A[BWX(ŲV5Fe3bKK1+Q `[hZ4 J.ěZT` w1^7X:Ҽ:"efnuhaÉiV-p6t"5rR$!|M;>՞A.JtݨOM wL(=GUgERTn9?j,s7јo%;vG}Ip]3JXd1]W#e:C^GLAƷwA>y $"6z' BlR^Cfm\ƫ0iT {{szDd4VsVݜ'qkr59dsX6W& _6QRs'JKJ:p&S%CCh3-~}vFbd;XrSF s'I6͙TQl}s݄ۑRy1. ; V"gTeG]=|ĭ9hƼ kZw~N\HD*6PL]5K^93gLto_GNkQ.Q\2B8[+ܵ(* I$\ zE7-$ǀkkK̂P*CXsf%W'^edRqO=#,D/$3( S+L$j 'om!3nAusaeC2|RRӈ|'n*yq} Q֧fзR?xJ2CP]|Sрc_7W]s&-ᾄisƔWM&+K,ʞM[ֿJAH_@Zx/K䑟O/J ?vhEJ{w†/\PK" (5Ni/W8PIμgZ`]Oy:>2[PI=F[,Φ1gpd<8X(q46rgSu%Md `VբF c^n WY+ E_ȌFY(RTW={2r1ζԂ}.E1L #[b7 c{Qtyr6 zSe:s5 E{ȃ&^|O%JY\%QB_#U]=W <h5E\3Z1rxZi.M=..Z894 y*CU'57/"kHM@ BB~p= 2ke v 2 }N'#$?ɪ.U^7)mLkiGZ([H }M(&HX@ a|ѰG@njCj15>P?ie6 =k\-Mlb;IFv|Tf\dxZk@gPJZ'/S7NZ1P)Ƕw1ZAŘb˭ez,C-#V>-L1nłt`$АiYwafZ}7eY}w qrDi}eilx @$IEfə^ǃ#x_i0O>A}AჍ5w!SХέW"o4R KZNDW*OWxk2o ٓ,2F(H*xj9}'Jc| yL5àzZZu6T6o5#&5X9aZI,A+;fKr 34̓ \)GhtV2ICQ4 pKSVKxӺ|`CosDmm@L6VCy% MjxK߱%3:7J9 .xtկjtl~`%&Ev t\ `O< ߱[SَZ^Tz(ۜӼׁ5 K>)A%4̠݉ؗ:f/īsM 1e ׮=3a–T7U+%z1WЕ[m*ڶ$Q5 1"Kv֜.yuG>`(,*;ȹI+F W|6 GHFM:풅rf$sT o CCd0״N)Wn?Z)0RR|x#1VVӜͤ ,} 6w `}3ӞNK㍞||xf_tpM@nƓ1&nćBPHb Ol+D6r=8itc`*Y>BUYKMC*Mly=ֽ;b he>CUGBtqYjV2uvUl^w,ʮE;ҤEBKD3lY}(Ca_.U\*}2,t㟃 [d'98 AiZ0䪺zGd}Cf#Ah&-!uU8vU lFv~ͅiB/( ,Żiu'D!ѱyG@AO ud3vߎvDn"A=s=<Ԗ /Ԗ>i&cD_˓[DӌL~خ9:HLEJe>߾V#omΠ'`3 c>hbFE`N:ͺj6FďHLWm5KK^Kg'!5&NZ"hƍ4ZMkQOwrq?·ڡ7+ a,71EN]sy.d:~BD\גwPC.Ўt OV@{V!SrW|o;ᜏNAg3\pzH@XBǸJ?D7L5"3}ʷ$tԧ/uAԑ \|LƇdѸڸ0;1.9i'6R[ھ>)749bc97n0p ]qh< _}t-} !~~ij*DDH%t!nB x0b_[,>|:䪚qLĈ[57|% ;Rd ƘR~5(^mrK}8eߨ$FXQY:w`#싴 7R&+}f: T#2mtI.lk"C J|&wHBK)@HQWBf7~&i[mD[Y<Mg?1c%ZqJf"G}}36PD|*(H"8,+)8xra0㻩Ʀik# $ hiT? E|M{aUE`M74l⅕< LaV_&O*4çǪ<fZnLq`t883x)C.ʌv}aiCGny!`3ndBy,+Ċ?Ђlz=txN?A~Z2 }"Ty<V~3U%g54=. .dIm<}Sy>'WIl`)kg rky3sWAt]=(2Iv0,60%."]{1"9h3W zS'(a]Ъm ~mSdIs/Nه٘4p"yHk+L58E3fkVtC`. uGal`to*n[&5~b&jG@fJ`l&>_Qj◔l>-q_6Xmr|ڑM,8(v6g~tơj\c*bI('`RII,$m珻1<ډ~G0*\p>EJgҚ5H6 @QRcD6(y`7:MGvdݺ}Txd뗬yTOV]۽ElZ,hW}S S ͭ:ɒaaT2R40K۶gy5ӡiJ?ҊV̇}]IqAzFzUm i}Yi'z舛v 5Hhht^Ba-yEydONmzu0;t5,TDӃ4YCq&#p]t L@HoM~vEȲtVjB 7< 2[ZOFvӤz-#Jǀa1Ũ ->zjȿF%"D[#jўM Vڧ|bM vC( -X"}8ɋC-)A2(c2ډ R$ꦽۮ@J̬;;џ.u,ɝ>叕Gpz*uo y23g;8i=j#iy`mF 8 =_QP=p;evK0^ˀɘs10;do 0O@QںհL:,sW Lcƒ1/i,@rEA~vvEň{% R\O!<(hWRts!(2dҐL"M➠hEX_j5u՜x*G~!?<&Gvcz[#U,`JGu ;P@4v-sZ/хAˋ.9|±{ߥŀ=oޖL9Wjl2|WOTo&טtfXkDKxI?f4akb:&z#Шt=IU6E\׻<}MU QxӉ9H/DyYŠ0Za*@x6M)3FÊe =[w)>75bmz  AkTpW!eT%~pk q3/7E:O](әs.2\_ 8|}t2TypD`(C!NH sW Ε.""׊-ICB ,+zFm}яޒzbqmiVL 7l5/*AvN)8FBI'KIYZxϧT2Ad+kt {8i"r㮒*S|± ^{v.[/u{#BösV0 lu|?+WKJy>XJU%ZۇřT]p=|m)Z!/~5(dHja3؀3u$þz$}[0AC$Gg7:[wvSiup{s#y+n,&OၳkLoC]H3Gz  ?AȊ5,{vH +`/_GA'|* JMEϖõ,X dER "rUMv6rxq\)@9)JMsA/Y_>*yۊ{z^^A0<*h4kRQNhV'䣿꒐CTf':!Q`/mSQay|A]~?LvfyHTIzrFD~Ǎ[9_? 0\ 2p6Cu0c>W8TE"$7*MBH̴λўT= 7m=2x};BJqeüZ`pcGGW|!N龫:~!UHz9Іet8:)\6 xN^Fy$| 7+:CC&Oe.XNd3_A_U1*f]ŽBiAjĔQ:bͮ'q (!:s.g0tWE_rWZ,1zI^ ("GogΒEqա=~\?%E!EC K-y l rvs1jх?Ӑ)~Q-]æ ^ӕ4xb-R` I}w9}.Nxj (IPv4^r$/ -{8{0,lz):^VmFvb,~h$$ v,(9pFSQ{_Y\6Q W2(Tӕ:8nY!7Ѭ:i->(bd>[bZ{3GieV訏s{EW@ iZoZK:l T5?izՐ3%fv1GM^;fs`k^| `ihw*FwXO5ux2EmlJH] ʚ bW<Dܺ* +vM='4BqWV;Bɍ8 WȏNt>huPCPۊuj+g{\ yOTsH1oRv9}Fw0AKԵxXL1b`<% x)G_buJx` k4 [;`C=jL"R s˻1E%hy;_399P%PA+SH#TM(Ls~]&Ckr`pڰ:֛X=g! 9 ?]}}뇾2β d9j=ߠ=|>4VXBZMˀ.2 "45o[ FquP7C2^ yEVCtȅLM zp!FNwxQzdƂvP ~0p @T/Tf·1d3.A͙=kxq_]o?5g8f#n-kf0I#,ԥ4Ǹ*R۲a ?I~DT//I` % W*8 &.Q T9LܝwWʲ 2/^Κ)`k󵾘HSy#i┧H8  Զ{4BDgy=丁|@4A9q=Y:#@ 1CXada/2u`=u,{V푛)Z Uue"\#U.io_1Sӡ`3o,RޓV$o%x!gϪ*Kd?>-d GoV[_?a zC(:#tYqڐfe땻HzZ_qn5g힙?s]Xz~_hp 8[!uvIc-.S>A$ʢֿW>hCن'Q1w%B!o-Eh7#",sށɔdYQ9ܩp˛ۥb~!qZ8(luKҒ&.7c A(r˗5>kО+_)@WK`c @. 4ֿ|E(*])Si@7qQ`ع, )V@p^4R˅]=_++8]TJoGrMlb|47K"<ڍ] Y 3@֚٭ˇ=]͍!oeݯ 6 tл|]>nDA+[2NkˢaZ4LB" R6üNɇ.vz SoD۱1&l kN)34mLb-K`;2iF a.N#>Z 39u޶WAZEV};̽&ws c2~WVWʹ'0LVC+fs_)Eg.PPOR;zKGbf;MBu+}HscjIGS7EW4a82c]Eg,R1ILuDAHf?Jm/^EXXUΉ2A9\);I#ZA3H*@F S~{n}7T!DB`wbzhdnW.-nris,6]zDJqk1zيI/{NcGtJ6T֫٘E8_O׍'ؒ›D}_]ͣ ,= z* hԗ{BmLS˹o\L4%/VsطnL)|8AJfnoMxjWAXdN^UJݥwoZF>nmoL9эT9wjkt˾yl0.QF6A?RL tBSX4b7-\?)S4pX.e=1}@:﫲Cuv~> BlT|y[V^ Z|TvVT^ 9W+ø-YΠW qNԏChХ<㹽7B#;E !Tц2$E|[NBA&~;[(rVS*xWXsFnT :[I@/%fo= i54x,\ư)W|J1v`J7Bag>MEX:LȔfwnK[|~ `OSdK zd|u~q3`Oܢh4Kܫ!:Xl >6L v(]lO=_;bM˅#cc쾕xڝPB.\~^4H:xJQ*BMNߋh?Y\Nruw7ѶYEmLt,^ճ)%܁Ġc%=1R ~W 1=jn wi_o-mzY!/\QnWAah>$$ cnꄆsw ;6/)!.*4;UFFk}Xɺ%N  >z'G_/:7ypԓ@6(ŌP~! S]͢mtB5'6B=PAϵy[CᙜxԨ:L X &q=Ʀ_* gf=c+L ?;oҧݕ祖k̅%j1R? yv3\1]]RG*1(!**&qY JSqerto-0@7*=<*NA|L˫w⬅m;h k }J[~RΙǟS%LaE5z\}3iw?a}- Gzn#y͚AW iAs@}׿揵 aݪlٓ-5RBB zCF4!B!R ~?raf4K[9f+krlQk7-ߓIjЇ:t"&*2`&lass Y5s{w|:`:4-Hheyz{b}],kU}r؝r {IjNX*|$daWU6OR'hʒ™A8 vi<]o\q9++aQ'مft-G"ۙ}E[3P)̶>/xm=uGw}2"ݬu+ShNW BOCփ$_O(DmiHNx#[2Gui ϊצ*ZOݰ*%32HoO"{MkgDp1pcX(Ц6dk0ꔄނ|ARgo+EyŽeZ egP6`R|,1;7APzF^+Ys<НuοƙѶC.(拳x-L_5$E4|֍pē$p5g5Ir4|a"F̩)^n5F#3",8afΒ41}E6nl VRx );vTc%~ 3Gh[8=B1tԅ{a7KٻA9/BY 9l,uFG*e_ }&l- QQUTYJ(dР w0uҢaBcCHc:p84 Y'V}sKSj9Oʽy^Jƚ`3R^4]s2)tXpR 3H %i?Yg؉xRM6M,7;S6F+] ( m@/ʣsU"@ʕbu48=P;,&V er>^JE#d9ҋTCiY8ZtG&P|SHv F0d@Ѓ1}2z!ձB eCozCњCQ,r[7 C'k9lh| R+AZ+7y=TE1Py-FH{hEO9@Kuf @^!JKoۀf_EǴe_^zECE:ٷҪMԓFۙKgۀsRAI \q6f DxQϟšjbCҸE1\_T0,Μ;s'Lw 8ƒ{Bʴ{-smSX?mbeP{G&vp!ON28XGx:+\-]ΧPE挧[gnA~FǜgWMk%Oyŵ% ʸ;t|ۏ cTïz!WpZd\RZ^;6?Ql 0 GYxT#cf.ڳ ĉO`TltF 6`N,A(hNs)|L~(NZBʅKMd}TV"YjX{Il2WJ80 E0sLߺ_mvpUZ !VObrVv@`9@ueOڇ2_̂,NPqQ 㸲m`F1;Cj*X 6/e8cWk0گf i i}lXTR$,q/iPٶ'k8Rsp= R-%\ M#:@{JA^\kBNv1աG~oa`? [ QuG3Л >{3 [VvFh'˫}t(8Tq\-<;bn+:;O2C"D)*JU[E.<3oc7cհClw+Lg qdn]mRx웚==3D] "qXqWFPf_T(Pi%(]e޳,M|}wq6seT/N'7?־2e3W.P􄸯֧b.~F/儱3(s- gtC\?0]P3ٱfs+5]|v06Wٜ݋%["۴`i0`\ P1/?WUa0$LL뎒>*\ѐ2~OhQ17Hz72bwg~w͒Ӛ',Unޒ2ҏp'.ƣH2g(Lroop}n]lY&@ 9 f(, Ӥr8EVȊ;`zg|5RHIىx_2^ HaÒʐ8׉Q[dڕ{YMDX_ >EIpv݇'we,;߅dNmRf{ Qizj!E,o"WBـGsMC/e_6 XSacNZ\vZb=#athP,{sVv8-UWkLnve);VJB*8JBBE;()+o׵)2qg%5f%@ @tGG}̴üC%d1bqgqy|>CJE锳¶RԼ2IɍMWJ ;Wƥu3Bhݻ)3ʱJ]lKV 6s$ӭu;R\,Ԧ0(#yŒ~ h0װbYA8T'6vY|5aǢfz&dBm$c^@q9Ӣ :wpyS,#2.؈}<IXDuJ=w6HG(ɽZ‹E8l3,͓Z)4AJu)o꽮^Es*R-.zg8tmlYrH)e]cFo0o.#6}tAˇe@,84ÇsdśI6;20U />-iZRWnDžt6ދLh_.& HwO*sAQ6"sUi DZE  ~mPx^*ne{.p]]Hx$ِLbhc7VGKv%GWĦ77\+b4]ƓbM`]UMxJx`8 䆤uc/3^1**MO65W9]$ 8,7Gv)?ECo-b}xSdR A; Sa:j", [DjKGP3/c2OL[Y]/l{~D NV[_q{=)am+,MZh_nn fD: I>H**_q$t*F䷋1g7z>72H.#݋5HYT߉g"k5{NGKuY'Oc"͒﨎u38* 5ufwmyuDŽ`Ӟ%&ʮ 6⾅g|חqxPbL0Gg6 ^5W*BXc u~K n~Z=Qraz\ੴ\$u޽#m@j`zӟ'PP(OI*08et-HcNj U"TZ->n@jX 3][44ES~Xu*@ՔC" AΕr-:uBۅa\FEb9EpѴd(5*$.@q7Ekt.X- ~ 6gd:ňɜ+8q Yw\ r،|hJwg 6Q, JV'=*YOO?saR;-myr)6`a^ o05 >XNL'n5o{t=A0'AgIaCae::恱u  asz{*?mN})%X˽LLWLגi.qZZe>I܅ =4R)Q ֳ#yޠ|k/,j֡*+U E_*I`\Uq R2`7bf ߰"Ϭ;;NގvϒL +M\L g&gם񻀎`ʸ.J8Ku#Kֿ5KhỸi't͵9#B?v/bC:[SS߈%>uV?R6]cZ:0.z_!c=W NVř;20Os{9HbZr2,|xɟǛ6N"kAisDǶc,x+hN6LbQ:ÂajԦ*?Sh|筣h}F=EOEpbDI˗xJw.Š%\pc]eҡ};AAJ?pbE7:zѺI0A|a"Y\ckh=Cv19sSLv52Di -guҟE*N{]E!/r):;i;z}톀VnF3jn |w{DZF -\g!:b$d>717(}d;reӳ ٷo{Ԕ~s ]jjvSdWj>#mOk"Tfyt8ƇKOo1e! e[M^UofCA?obE$8ǩ`YQ٣eD,h𘸻g% $A惰IM`}ˁѺ3@ֆsue$Y7Ix㡗Jr]6 ?6< tg D=~uz |$usbPW=D@G^\]V0؆;btlC&gV,#fusƮ-jfXgB(Ԍ C(Iy3:փ8kv$ow!sC#X&NƪF1`\oo߀wL nF/oQ:E"]AhP^q;UvKgʳԗVU1d59'­a pb rJg4⹥ة."n[H̽;c-OW8}Zam4Iten Y 4.hڽ*< pk0 $DTrR6lEyOYKPo[_ss*ti'T_T-uegF %S;h6XLYz{Ueh$X[O',4PBR E®u4N~I71>ӁCx@8jaz`t}t|.amz}WGz}P]:e<|87ݦu35QCW-8 sQѢ 伕{g̣%5{QL GD O<]#_T><#1l(QCxn){4׮{έɚG|ݰ&R%ӄ(xŊlqd#w՟qs0A fN/K:#}P>֋{?/`-#C|&#{WB|x}:ʋՇscw0˷mDWPĐZ&G-3[}Jz7E~n nWx=cLůKZ. fx@޺ݷZ¯5SK4XuRB̭i?ډSٌ͊<݈xdBChilMCOmL-#'65%ܭÈU[f4{$ȍ^Y{(Й_POa8s'K˨KQXn^0bga[Z\5?"5`6K;l(n4|̡pk԰!%~unBHN2Fa)ԉ2{d'LY|f92c1oql{XfQ쬞eSCֽyLuyۥ璁n<5 {]G q* <)h3#gK:n ='`^fk?S?9$,KD^,"=9L1p lv:YkCYhڃ]4!;-;|0˫(,$ڕ0;K 7|;AıL!dK2NօTݶxĂ)BIwl! -΄McQe 0A ,[`Nszj'.Q%kO{AݵC e@s{W5wp+޳F>=eY1KE]Fyg]yahaaV]{\ݓU+v&mL#RL4zhƪɵS-ɚ'W)t#RK1d]F};l%ȏX;չ:j-,G'vH#D/9}SR6@X;s.S^=.>((n\MbP؟f.AsՁn~9i]l[H1& Ic Vx_!Q|b]Ϥ%IHwD،`B` ]&QZͧ_J&9alsӧV= xNN1"\r.=,}X|^ëj acy X0^xE#zd{Ct<" E{R}tFCΉ| . ]'klGB@ bR~5Ԑa!k:o,Py X(K'nj6a;xDӞ|OMƨݠ":sbչT跷i U*4s{q!1X gǑنȞ8q*y6 .J|'ҹv{6 Fk6 mϥJ]Lh l&YNfh]d;CT׆~,c1~ac//"nSWJMYrNHGW0 aR$c#D]?X׃,$c*ܸh5ʈlƾl"<ԎN25s*w쵘OS\~1v+o_]/i2MxuMۮ&Ʋp9$WRO%!LlVO{bάWO~#~O_dX%zFWIfjiW 5)_9-oՀ35WE눊~ZZ!ߧ2'RZ9KNU5K Y'R9蹉j+X)"Hm<!:qeh{w޹< Q>tʰRCji"Lg#?a¶,)&rekʖ='0䦗48'fcbCm֧*S.7fkwM} Z=!%dMҌZ ~\b/gI!6!Ry:]/]U4}nߒ~KPl<0>:sG -xhEVD)h)%#jx/ ~kL`IlGdeXM:&xe-%_Gx|D1mH?>q $}xFnkDJZ `rR+iqe$iIs}GzCį_$]xa 8$c6{kIPC)@z\%wSk$ُFaYC XP(`HhK!z+ufEGrXc:{{ƁXIsaJ*5s\/D2oi3v[3 y>@^T;} whoyXl+$ME# p|1*aܶjF(Tc,:9<|aVxd8^?1,\^[HYtܝIN%2e[u2pRe ߝGɑo PX6=ypU?Uqwv,@DPILQ]WQz+ hUTpT 5}&:|CgXML7:IF4U:w9s&)|Lb7{ix pc4SmKH*v,XrZPaj:wfJx%b=:pjP#G%D-ulu¸I!6M\~T!UVQρW9ĜعMčcI'24qr"j%"%X\@nl`)eTWX(HEFd*|%w:'*1ޖSRs3 m5)^$N󥉆 NY(rdhr!\:uՑ}V񻁵q=m7 ȣEjuAT6lerׂHXYLϺbʅ>49v/kj]/<"Ui7eI%3Vk[4kVFW>QF\,s{"g~yN`"fPc Oȸ|S+NwcwxCHٷzvh JkϮʹH6Q B@=ڧRN}W.EB'3d9(|gWs=vۗq&a:t-MN* c kRR`@JggGQ?$\yC7Ox3m^lk|!7H)7b5t30 ^ Hs&2!RMD;.Syf߉q:q)mL7k-80бqye݇8Xji@4sqOm vIJn ]>˸4^ph%|2i]gN\"i(Tsxe?II;  \P @ %&l+$~?. GM2ʘzn@yg7sV uNkCKbR"lץB{[g/5 jۦ݊F+宩 ![jXft݈ZtFO>| jPCd0su6e6{kO(lĿYq9PNJNp0șZڅ*t*uIZYbA:^1| Tih(݁-Ege*c!R, (JԇҸ 'L5EeKA7K[!ǹO>kP~ L'=09M)?˝_;1wnk%j,ٰ?Hzvl78*9mu槁3qWuy0cnC;8/֗KG"C@Ds{J)m awaRw!JLښqiPw@Iācɥ; ͦoԺ|4xz&ʘly:,pBe&e3~lg0d۰19"g_4_uExƺڕv=<NjwՊdo8a;A'VٹwgSzj 9jL,E"97w-Ȟ2P& Vp7u>ǾJ69 64TGHm)߲. :.;ƵH+ Dl?"5x`oW?q; .n+qbmJf8x%D7LHxUY`5qr{Ya:86|Y Gcrۼm~z6Sε1qrnh(w#gOF/@'Ixa8tANR]jH[]4NxH$; Uq.YDLX ߈ 8@&fȘ48 >\aF]wEPU1Thb#|@'<qHS Cw.,Tlc \WO陵'u;] ͠$3q߹ͺ\☌k; ʽK$pEno $*Ȋ~Rc ^Bm3 D }!k(%JʙDco*1.!\R9?bW$1aO5w1gbp )FC<#y;=LA[9An<72cj޵p c [%Z7m+w<-w+># V~fHH'ʱ3А{ +UCImY=,/brz& 9>M9ψzSZ ݤ̆,jGV;>m>ț0:}Y78z[-`,pD{R1VdoBؑ" *TARg7!(䍈z0TA\lY;30"mTɭ76bXnVE8'r|Y)~K r~y91ڊ ; m\nnӁ4]s/f3/jSnM%I"DLlTW.j϶5N]A3ӷr:6Ƈ5ap'vIO$]ٮ\S7IqF=VC烢XMW١>e|Y|< |,.E|i|h7`#os޸Tpky$UtKu͇7Cm UW<FöXl]*4[ i oeQ;6ƂuGa_L n\ނ-^J"qS1Z@ⓨ,||u#(0v b.sx]*Y{qbLdK"fWC]Ήmcn&c{qbT}%C_pAtE\^{NlT.Ff&[9>&뉈eMeF2x4B1APWny"DA/7|ao p+M\t˝SENJёW_ܙ:xlYFǕL-5Q^<Y<a2c,Uz )5XM5kUo4-b=m 1bٞj4Xe ֮|s9f ZؚT%b*]nY@U.)Laj;Btpl^95x$,zL)Xĩ2"QFw^Alι&Y]p3̮%ېB_R"GRwV$_:$pC B 5ϖQSGPsAR%VxFHNq(s\Rچȴ3/+W%T;뷦}ԁ84L[ Y˺1lYZvP" ĮfױW`gKn>H~zJ/:l(@~?D |S bEz܈ .K2RCR/8hy'ɝX&h]Z=ʱ"q+5REHm Wޙocd̫0"5Sg_%怙;gPvv'3qBdoDP3SE [r gn'nQRK,G!4 v:߽X Vݐ?mD%ыJK*P93Hrd~C_N%mbfeg}=wH85N(+ DlO\+ܘ>9)]wsN$ghX;3V]!`i+2RZ An[L:)j7l聩uqκ&7*A^j~ ,.BGhqI P-|)e--w˺Fn<D.nO]2 p\NAqɩ[T)QM(my^аQљ ݡ̑aE)El=qDs`~YBF[B{+N|a(6w(BwF/>o\4nfe)4aﱰÿj>̇ә2 kNm yKTFBOܼ_Fj:A$ud\$-x y+۾tJG1ҢDy@D\zߎ%/8R< Cf;_<Ȏ4ցʵ,ںSwANY1fp EΕǎ0(O̩LJ>%iP,Yޤ:RxE wDcYDK:qOO  0  q;C`KB4#'@w.^$7Qn|WUעNcAcIzaRG&y `7 ZM ]eMN1QO&U8P4O61"]wm 7th?吞KptVBeb~:+6U2}ap?ݣJ4FGҢ:16O܇ꤶFУ!  NȌ8#C칌JߊHrx)$D?r W?ᄫkUVUs>WHkTߵ2E?~d|;k-2.uZCLxi=%<<c&bBus-mϑ/*QU7h.1Xt!b X@C^5:P<ۘ+JD.!qO:(] ](ciwt5eU ?~ W5TpQB6ۆ:]> gjZ9:ޣ 3kW]c$Lci*n2M^"KvpP塲{e`vp,YVtkHm25O()^_HQvqBDF6ZB%(6(ᰫ3]+d;7;"C8gv)yLN^n4?ݠ̍7gMnSJjAZ'uyϱQ0;cTCE.B͙j>zl?Ĵ=dEKJ ϐ=V+9N|[Q(& lǫs @!!J("դZWlٟ^-寻`K iup7Ygf T REX{7Nur+O~$o.DV"!fSyYdZx}NŒN4}`6֧r,2iO5]p-}T3IU'ru$Yvhggs<jՃq@}yr#ߛd7as20j/[ tTuֳ Mxm*_l H>I6uR;%sYiBvՀg9uuFB_&]}"q򑔯4vȤ8ޅ"iY}w{pX9ڐw~D7 b]ѥ"Q@ isK|K̭EJEcK@۫4%||Ę9BnZl=e".+" zUNߵV1RyD#2㟲 a,I$t)|awǶG#Dk$6a7Y3P 쀓<%C?B MxSz+ش N0:KEsaؓ&FIt<5Wm=" <sXcD8}zF> waQL3~b) jA`8T fs;+I4s;t%뚖pP3EN0PbhJ{Yu IW&34*ZbW^NWJs%5{<Ӄ i1o[Vj|僄0Kwmngh]2/;66ڳ{AE Qn#b9aԫ[4դqcvb < 8x\Yv.ءVi3|) _MW}/ GB*taX&a!wY˥MsA`f86wC_fZE Aa/t&)\Xnlr (udەY}T-LUj˱^NB(•a ޠ97.;CTv$ iR =V.:'Șdik߹,Ir2r5vDWtjr)~vn.Kc p L}%lHjw8%4MVXcrȠ&'+>L=@'6˩hCr)P0fNCR˃|Ljҋbs7b]+e$Xٚ\e`Jf%9՗˲lJdPs.%ƫs\`sTT\;g]gBu~ `~saT&'_b9^P`kﺸ"|ådUB-J =%i]MLۣĠBFJy U% nV~cuު?Į3鮍9ʐ\7ǺQ-bϲoB^#?S~^l<QN?Ҋ;c߷"Uvxhr~s,iX̜4*+ )]83:[296 /W?PY2BGkt` ; A砞-BggLeKqXόkg4D`Tl`6>JdYANfo)̚^7)'Ü<=MuM(dَdѢ'JXK@pÌf|^}]R)i B<> ;y|BF u9)O|Cn=q##( {V qQ3/?AWȐ髧6Pj6w!dD- mR,[k!е&^vuRR&241$^/ޡJ3cn4-pE@мrC=o>?+A9}r0c1 9#عX&DŢAPydt9& c+;yGM] U^Ԩ9d?%y/yWJJb=LҦUGjU!jSk c'BS9x,A{C{2ںJyZoKsk^.Zt)/{@f3i+\KǕ>&E B, .b ֭[HY\঩򐥲[Oate!hYϋ#zIPTu:Z@Wx ?tVҴg4 ̶ڃ䎤ՖS:9Gtmp?)XvGaGɠ->Rq&T_2CIq{'oUCk+֌\%(~jcfr&d sB z %cy|5‡B˂miJ`˧Z,d_s μԮͻ:&F[teɘ[<!%qkIړb1M՝wlgfج :* Vu$Y _\I$6L6#IZIP@k Cۻ.v)GY=NqEK 8 $Q M.%[:vGs8<'1+_*҅;qLDk*%/|fmOP͠b|?FqDW "XDln.E2b DvLHoiv .7=㭦bZFىE4%Kyëe(TbY*R3Dς$IEywB;@k)Nnƭs Nṣ vF-vz.+%Q 84tV1njkip'*ؗQ8Q/FZ:nGNWjwJ2̧+90kʗ`P?F&4 d_WYꤠ_>KkҏdͼJux$#JI?N|,QB)".*%]Lt 8'ܠtx`s!5=\F=Bv 9隹Q2!HnVx XKD@dWE"ߎH*&glB~(t?[@g"O3aMUñQ^BǒfL&1c9hizbZgNCQ"|zڇ3=#cC)(I'@(.pG%WwTiUÉLo̲Ж7\޸A+Q׉ew.т:LtV-NߌOSxA|}ŠrF+鹠+>Rtrh''m3kHDC!z@tCSs< њpm eğ ,$sj].L6Ҷq'$gp(XD C7w+6sD1Tzc쮼-f4'ș ]Rr{\yE3Z.z ^GV,4=(uM1B5mnnA qw>S8 j"hw#㷒3CS(W@xD[:*ftN8{1lr՗+],2= iv"sra="5*sJgYeAarlIK7xD#W7@="NXS<+f@_/>]Bb, (Xpl_f[n*MtuIJ^|$~%8#Ō'KY[g1w yxbcFވdZ.5e\{*Kii-WPfAk }錏y"JkX7skpe-@$ kDUkUk| UEu= fߌ spDxMɰI0!\J]34Q7(KtȌaXVQwQ /Ԗ.95jM"a5{WC1Q8e ibob͘beW5v\ }) d#r5I3DDDrJ͂%VoؐHOLd!Z-ƿ;>YzO܃u찧G9ћ׶=&GBz{kH)9a7<Ր'};~ObaR}E96 JKuc<{ *cf4Ahl:Gv0VCa,]>H9B?(Εz)MR?R]⿟.]4"@XX*#8Vm{g4CÛF| 7"z(ۥD Q[iףů#N<' SEḧ́$4r yIΓh #^8[iؕ6`.}ۮxhVD- 2nPη*pbC2ҳ>uoVy(\\ _7g+Zf';6LUf J.B*&SwrebuevX|{odqA^l(a[c$o`StWЗ7>Gŏ|qZL K%/4*sW!NkK픹VFl?4FKS^p<1'"vm6X+% e҈nnӂ(MTYZᆵvdA׍*^"ytvѓ6ZVylH橗HOG45yC$U_k o*L><@gq,]Ȇq7k̫|At+2E3ҞopObț^pr%0ڰވI"`1 fW`f<] ^wma]ퟥүˤ + ve/b<`nbs./>SLE3-Yz'ȊYĴeCú kti+epP!.E}S3dGLSp4٥;˗,u{;vCi t#n5Hb@洁̮;ʪavf/{"t D*cW˗JT6)BUORu."FӈstPTWcGtqٝ0@.+ܜ'ܙ?5Eq+6걭Bykh;ߍ[=N`Ŏ搷M]Lˆj}&WUxl15_ES5s*|t^Wfl^[$|T}-n>aQ~"?B΀B'*J(3?ȆZ;bd"1UR@Ԭw!*(Mސu! ; y`pUrNL`z#Mb[gq0C\gbFH5YAǀ~AHVHfNJaZ?U:t2Pԥ±*6nZa!`='M|B%1y0[~rn;%tjI k(?! %͚h0YxΆhH6PF"Bjr v!3_KD7 q^`GdٟЄ$q|zY!^4U;SRܲD/F`V4$mAi$!VpssG 8QlGrA}.U05kTt2hqv[P%fqJySPm^oE1sI{5zmF8=⡀O.l1e 8h&bJTyfVOK!u6B/YXdS !i$1" GŏI!_Cլ3X`c/Va2 f_Y:=;t{ʍUydv!}=NZWGnVG%spU>a垦/L(.±|j%9KfN4DA˹aE~|asLٳ&NϾ޴2+OrɢZ ;%r1)UAU;\z^#:ovduVV߈V3Ux\Gk+E+7"=Z1$O_'mjqD̢`gR^(NM>AIwϡօ8O RG[ wɴ60H'cG?ebE˙cF=_O@.?eFG^Ǩ~;;&vP E9U#Y)ǿ>EiCUz7,?r1Qp[hO lўe$gìY=m^ȗ't 9xv?Tgt(y02"HYsIgzY Ϳ `V%k0ȼ]U~RNiPY*Z !2Kmʐ.f<ϭhNv-sTֈ$.6\Zq16 =xBΛB4=iT/g[auҦt{]7Bc?KMQ[`ɋck4=CqvHz[%HB;nŠVb\](K=)b~*BB­3[J`|?b<#j~<]7>'?1 ixLB+DrSR ++XP껔RxZJ0#Lc q3sV z)MH_Kh/;\t4t!nt7x[bx =4sP+~LXr80Fm f w-`ĩL{.2:<-߫J- ɂA#ZQ7,z0aʼnPG4w% WYӦԐY:.[6t3{[yRe/jf5J> [gĉ`ȱ,&d*i^;)|Bd/Fjz ĤU$,{1&E"(>ffro+ڒnD <~ Ouԛ<7Dh$Ej^^'8PFئ]7 :eے2j{KkӲM^k|?]?2kCm כ=\g szCeb0=XL>.27NG(L JPW|Ok5]"ILt("S8EQAg, ,JEB@#M;n*) ZURp;71! 1(L" AAZp_QNQ<^}~hAb`xvC,j*\*vς'pݪw}}Lwkk1#_ҢGU,obRi_N< dK" 4H/߻6)Mٿ#j$tT9Yy\lblrbC'j +BkCy?2T\1,|֔/;AR״D М_ۢEC٫]>#C1E6%ɫ|"f)S ^x0HMAF[Œ_2Lцv/W"2'f#9O?_j(:lȁN.P,IPAt<eI1@3a*Wî~m)(,Ij2M&Ț˥}U,}8{L鎑Y%=&-m]IS@̮X:-ĝ: xA9OVY2AkM tݎC U!aˡphs@1u![Hܪ-rdӄ&$>R3 0#MmЄIÚ4B { <`*ْ%_~վJ~t{.߃d4jrʀl\$9=܌O3;9iϻ]1ڃRߕeDiSD~Z)H`e[§|;ܦk$o+_)$#o+^fRF7_d'xN}j5SyT_w‚WML7x[+%~{@J߹!^ـ#clɤIǗ0G.W#Zַۛ˸~DGhxO݀lkq;agGyJ.S[ꡆ{]7s4VS5")?ra%wc\tBwa5AU7 >ՌN I1\En`8f;rCz:C`:C dgiH]Nˉ\/GqG\ =C@6%oC,FHA!#c[Q@ړglMEFڔlwd[Ԅ.B+V!ak.ٍ >20J$![.{-6(LpCV&uI&gJV`#pQބ+d d2 ˆXxR?j|c"[@ $?TuP0u,ih^\慠9vqd*iPPz-a$_Tk#+`zidg |<q=$T]*!o7ݻyn8iDP'&xU`KVhI(g˥]P.Ѐyv!CcA33sk%O."p'ݓL'KCc-|zϜ,[;L!HթAAXf>0 H!)՞Duz;t>E}Ҹ¼VubueIF~'aoZI1e@IWi Wo 8|3bC9:g5EHn;#@IȤo+S)gC=uyALu8h4/t z֞jKM={IqDD8&_ NbD9+(Tib ikSD_`N?*Ev{d*W/CG(گ=2xβ3p[iFULbMfxbzNo,lp K\t0n3%娖N<]W,VQu"$|yW Χ I 2%y)Btob5l֮"d74B`8¦K%v*1U|Q+PX)*AXཛྷ)B982.Ecj0cjX\ǁprҁZ|͒}W1PE. xsN`3JCZ=XvGo{>~$7ey䩦|*DN-ĆCU<;XTҙ \dJ2R)L/;'8 ɂFh([]hyAXo xāi0dFTyG9gvL*%%q!m."hUeU*M*ˋ0K2\/^nV.pmFNtD?)rsj*KpFwv,/aJ1 \'E֘4 V|?kXsn~ɚJbGئ$ӹN B7#{=f4h*8O%_N IN.&_MMf:gZ[!pJ8 t0fqmW0{Ahr=bD%Ҡ};iR~/bp5iՓ;J s]^.#$Z)+oR p`!L}? ̲>7k_]ϲ'B,M 6<ـ>Qk8639>pJA]yEy%PU, CEIў7 t#Jp^L;A\>(բ3$ՆD԰]Iuy_5*· 4G*+~oYha$bbE fyz[!+G*8GϒޒV%QhYٍX45S|a_H A1@6x ⦖G)NܕSb}v2E+508ήEyc̦ZYϓ@^JY]hmwBֵi<煐.2HE [ {`]15$j9Ufm}vI={^|f奨4k?*fr~KhB vK]y86-<-+CmEQd,G9SVK6vZ =k-,U_ 缚%jiѤ7g[*#+B+; my'nNf6c[<4~TX@mYx K/Hۀ} 8Sa7[Wl6* '#s Y ECTQa@'Ʊ?04jN?Rzyu񮡩,cx:owIdjB(|I` ~$|B5Bg^XoDªy7VM!ڟ#=lB#6x ~82ZVYGYkfSNg"$Ͷ+6gp#6>Mo䋶J,u)`j3ԧv[ $#\BhC/2!8=[75ǜfm:C5fG#&9SK3= ObIE%qFi5F.wF*03D3=|%ɜg3(ŗYi.~󧟉iߦ~o^(OaCxm6f".t O҇h@F}86'!oˑA l-яKpokQ?qblT#EH#d@C6+?Wk)UîKt|R(ۏI_"mݢ<4E fԻ+L砒K " {N$ XoL=Ӻ̓jekz͒@asraGbHKWn9ݞ.R9BdX$Ⓝw].G4<2hX`Lb&r.N_|9K7O0ې{@#Z4WRSQ!5BxAeVOT? [;LiZ=O 7=*؜WLJ~]Y)'Y!4.AړT:2 ȵF-(| hAuvᷣ#b,)gԼQR 6 f<_GM1p;JDzZ1e! ?3ڲ=֛[Ru5JːiٵC\wSC.zn&fvw \{ _3x:щHZ>YCGM%~ɬ$Ea*̤(~#"@H|I{-*`f\i bwẚkW gj3hWWdKUu\y6#:7z tVQcNֆk׈5v껿VR›!4~ac\rLS~WZop5}usD$*.2iUw2H1ڔ۝)TfX}y'PR%K$1o#e%[%!C5ܤ:~KmZfzq6l~@Gi'>/٦,#dj3(G _}4&s*-R(G{'GoPlG j9?#!ģ}C[!!m>;vfNf8w6c*V?1O\ᷩK-sU}@eqYKkNV.$lğebCn|iT')dj^fr0a7nJNFlJ( h-2.r*6R @N]95FY\=v V/)Yh8*\ܱO8:$Hba?k팣c=,"#3üM&Op>[mAc:y&ae˶w[e R2?+{O0 `.`(qhOKf[ bAY0D.!״;˄3wÃTؕ:ޘ:/֮&p̳@՟g<}Ð/M!S˧RGҔ2 o9sW@=ZMlGOi@5CkzV<~ z~iX ^K_@Rq4U)"͡< TAAX> Ӳ |`S~\ei3+vaAf9 OyV6ͺ}2lvlt]I܀LfzSMIFШ_qkzgꤕ%o#Ym%oxx"rHv0lro˪y/?F~?H3`$~ zz.K+D!x j#B\aSJvr<-\LĿR@TʛzT@Cj'nfJ"M#MX#߭J]?Ķ ҹa֮8$ .r$ F!n_ F{&R', MIïzA}sΆ }7 MŢpV1[5AoxHJ(Z2Zߟ]I¶jXyYCZOᷭ:j|# u@RXb@A_;%f3Iݍh~6ftRJnY[5V8"Bߨ5@!hH'h2T!ZwØpY$r@):D\t]d 0A *a yNyI~%^ե)i\">3ɣ#{Ae9G'Ȧ֑Z_oB+te;~tO#5+PMuZ, Ў8/RɆx}qDTO]C.3/p#ImS:A8k ˈK[%vdɛE|"a8yQ"rko,1`c<P] [`)b1O8ӉxN-EP6>QRfگlloy9؛(@:uuβLcc2^m} J>ָeѬxG;GNJt r{g azm7@Q}(J-v7Gm No=#cQGyy\i6y@ AZGz= Ի,ͺ4zk]Z/%5$Օj`d6tXrEg%n:,mM2ǮlY،^,40}/ `-Pe7sbQix2HLѓ٭ba{v9@S)% Ld,oQȾa+̂u/љèZb֓+qco!Al2vV܏ WZQb ~yۗz\ b,4ڀi#O])?+6KRBeĠj( ;DxB݁"Jz=wz۵x,`9BվN T *ꞸO׾/ߧ0 M O"4Fw8oD- iECFq0Ǧ8CG[ "f2Ɇ$m3& n-Jk?'Ҩp%c7|ۅF0Y4tZoXO "4!*8)ϐ-Q?#ykbZ{,E @Ěws6| OX# 6Ɏ8#u ܀Wd<1l\~]g>ᗳXD)/S4fr(~kjSeC"=nt" C ;V*ק1/OՀ+ j]UqV&o"Ǫ_l;)JfY=Z| ̰_qW b>j'bܵGA=xm.۶f|IZ#89]<]TM'ՈUϹ*{N*51AC}_a[&U\PFY; lKϻ=}DaHU:G-{E2`;*_6%o; t FUx#~6@ ^VKM̊RwX">e`OUsfJ7v1.G~*7"ދd:c7iooaʖ$X&6 R9#v5Hi~.ax ==N.CGExcyD&lHvsxS 9Ჟd- fsBxaԵEf,".GӦ]/y8iY-a64x1L 12+7-EILK[ap67z[ )c@l}НWj@?TF;Ity瑷l0{t鈒ܶ9F/3,6,7X^gRٰZ92ɓ`MS)N/Os]ø*XqނW87 cQ2և5Rgڟ{"@⩻6t:Ygs"⅖]$zl wͭ0{d#T,OUCN,T <Гg2/͈@~8s%.{ge(P?Wj:)2\/ .^Z8D]:1Rp:<R Tė[irncq@#R؇H_` 55[X2 ϫ[J1Ŭt+B^zX@@[oNL>h֓Q(c+xpt7;Qpdӫ Pa˾!H9{/݃A1Vy[t=Ay]zRK_ fhU S9{vjI1>W YS̸阑UN( "ˀ.b7Kl bd)[#/j,IZuS܅e 2g-8 3۠Y*MՀm;f 4X|pZ%B ߻ Mi%Sߏ͍pbJ5:&CeL pF:G-q(Dp+n~n>)}A  e}7|Ϋ C'rLSߙlR*UWe i& STvG1#L`\|wqÚ҇=x@+#& #w=&K>0+J i#=&EP1LPɇR"Q`6V'Ȼ&haboe> pYko~L6oAf7d$5H]#X 6܆@;('X`d3݌YXxI ^k4㋭Pnl%ybYn{PkO7 XZ°V*jw#4 KkHoHGXeh]Pq"%ujV>9FAl BW b(/%oqk'"k1t%p&\h- 8Zat2dv'6x6\Xu#^ġp}m0.l;]\>MdAY˛gEHH oX1~L(yCBdtYoĿzp_\pOAld Ps&Kﳥwl̠ܒ!bҷye{I]( ̡WJy şv6A?3BcxVvY߽y0zexdN7E-R`D5`3a8uߜ$ۙ:r#<Xg 10Ū~|:RV:*d ggJ=$#ZvޙX1nOmU}Byj[܉ "ut_)G|\32;cx_u ~U>bBg59 >mhSץ;&n o  1% NhSMGd"D.6*KspA1pA/f`= 4#ϵ=K̫<]v%N@%]ʪkCp7??k ~ZV3{.S%Wqy>kԲ ~#Pu/VϛWW=A)_+˿%T(ҡxj #{Xu-c$e/T 0I) A7҃ұX/BgDdA( ԫӛpK)@4Oevi{ DZ%:D&NqTd}5}r~]v}A|e,'B5C0 Vl]2+x;}lw,0o2+4͉.ހŗf*y&;{Ug5tďa"CtyZmK} 0*t Y7h)ɘϽ'6_mҼZT?Vq%íL@.PuzCN`s;=•5zv1!!.a?"b,Db_]#> ҧ8+Mۦʗ .iBNѣVx'j%gx)/_#rgBCzB+`=\ n  78-mʘo}mלGh0V(K/7 ELYּbVs9>pZn}tG ^OX& JK@8jmTɨD1^5U(,(kc=&(n!MH> ().QVrb&Zx!ܩv ɪ)>xƂw(ʴuْ(f \JCzk;co|暂u(U۽-ITh蹑S,+PQb8\u{,Ha;bVW^98˗=mmmQsBY#슮pPrFYk}iIi?TuXؑ߰xNO,2r([]˝J[|+Ͻבl 1ޓᤚN:sp ܏(G _=f`r*rӃ z! s%fyݹD yc'Gm'֪zu2jħ4t*lEH7KBgahpde=Y"I'qg܍BLx #6x2SfbrMv+V=RO]bkg즰On@9i)|mƩ>_GV8;fÔБ]ls qcZ)$q&#pƨ@b$W)Q8~rS[}!ڙ4I P>c % ,IF&ADn,#Ȁ0>Xk?,Y_q7oXFrV$ya/{zŎ g 7ocr`-sыHy@ HxLb:!8[[@ȡ٢|K*sk4~^2};&bҜXh53tFMn=vf}G%3֋AC/aƼM R.%'Sr4i.ݫgBX":кlE*DyYy_B:hN$,v((n*{މ?YDehZm [lV8FriT]2ylkv7r ڑL10!90Aq~<.* G\,{mX =d ]pn~M`50R\{Y>&~!>]6v5oHBPd  ^NL"DUeI[p3j,?9o^lO]:"p D_yJi\u/+sL]|?.w n6O}({h!|)K~ ;U)cy,ԑ,="&SG/¡(z@]#:w?ǃKKp$ؚMA=Γ;#lj?[ 5b+zuW\K@ⱍN߱tO7{][T'&g,d$N$%uPgLVeidn, /Ʀ#l@* ǣ[X{DqKkؗ`?r]RF5kFHPFߐj֌{)}]G#R-Snc^rmrYZQmj4-?=&?xaPHh^-J $eai$H,>mm_woASCkoVy9=KZL&S@]1P3hwJ׍KdB1;t & Cwu&bpm:6ɛ5XzF`G!8hl}n y<f'0wrcnoQZ|7ȴCtc[G]kH>'C[~Nh+s@>\Y;ɛowwi4'6> I,mhi1rhWf1g3WnFV9JqqM|,ZRr`i)]X+Rՙ[UW;:1X&wM^ЊS{_](>g-n~jJӓKn5pq#[gݸ{@_jXP$xH̢s^Tk8K+ExDœB9|x;2c~I.ڛ9()h\܍x7ްXuiV &|8$ҞŞ|}H⫽s '-rL'1.,w/}^؁{<1gH$"m<@U e ܚo8uuG1tT1G3S`AG8;?Bk)b0^έ"dx#"0AKK$rqBǁ;zOs:CPmo hYE"gX=v8 }upW6Lnt:SrؠX0v{-8rJvZZo94> SL*(֫6l:LE #+ZčueMh_JSq &V&w j*YAWvl IΘj/QK$MzhRL(!ƫRxGg+Ա#uO:x"=WNpK CTr?4_eC{#zNtXW9O~ A1N z\&C)B>YÆUW_nc0u[`m:*5GZ:CRG>'`*!0sGG-Fh7}*B"7vY܈h\SB `aҙ,ax+d1]I\lc̦ bo.sW\,cbᢨ%o1@zs>[߾ .+BMg ;&9[vi~!WPꐨEET~u!T .Ϛ 4}=Eǝ\)ɤWZ)2]^W ?ST/gEť}-\l#:u?ӇЀ3r׽XD*`GҐ+;Jױϳ7CG_t%̘[">1= ,G*.xc* S/҇\yL:DwxeDCpaͱ &< T^B5!Ո[9a`ɱ$RKl&c V0BwM ʄ[-gV#IU.|6%۫~&8(?#:G7.PCQiҗ4GZ6j47B:L! v~1 i,¨!-(+[;Ky;Fx7<1}5\83'~nΕǵ|Q<$=S|'y`MrfFN:$T} GYxKC&Uz}2ŀ˵|ex8yd21^k`'mK*#)Z@5L_a:mB-5t 0%APqpRuh%1$BP[Z~z6kFUlq# xm `|iB2q0DN%}y刻?xi 5Ք3 *0xզd <Z'^V,H{RODA\ĬfL MV?MXPɚ8 lL ']#ȴ(ٽOp { YFux59!`^<*Z0 \bkKA5 {Lؐ}|nqOp#ccS[fQ8 0}@% .XaARh8e5q|O'):f).PYGŀ)Gq荑{H3[1 B**S } N|Ku.x+2KCHaK/+ {u&VU"Tu/59~:!4"r+Ժ%f=]  y^1,-agXW.&mV`nĆ4 ㇏*ފA#嚆 4,q:MxpP ciڽ .(/rÁRkNEmIM:FS)gIBLĚ&ɞ,5B[H^&%2íQ1ب|4%L3+8NgN_<ഺN ]^ņ?5 9ԳLR TD! Y _ǀ hD_C+l~ ۀB?rSsj_ Pl;ÐKnx%'Mƫ=3zcJ1ܨz@~ÜTvWݰ}>ؙN2u9'c@h*5L.}Eq74$ z&OT3jJ7&Y16R5ٮ3P4vwm+<׸ρx0J2:gbr+_O|T3A)r?/үal0#Y5Tҷ|U,iX`:*oҙ.jpPpSNxwZu5)SңJ t;v[1a3"/+q_^0y$;;*"Fj4!DҊZW'*0 Yǫ~k!=`nGl#X|>%ÛV&d* |V^$fuUQ/Xy|`ᛳQ&0zt ]qF~tU9Ғ͇n=Ē*K*ض3#N4 jY5:}-U V;T StA&-Zq[xPf9ي J=c00d!Pa@$ ;tЌv/j{p8#Ft| RQEOֻK gv*[0Ѻ0At>t3Bcfeo '<_~7#RG' 2\mK!-/졄;\:K>@tn;k}m2~p3^n4S>\&r OKRʎ>瑬(E3ң%>}qۿխ͢f@0b|rIs/*=IZv< ;d23*)`\ ֗@SVC,{5s{ a_#RuHL:<'<7 Pe`l:BdaIoUoLtg'2MXl$`m=q<&>pe<l$P䡑}qOLݦ,D$NƓ q?{zۙ~{$F)CZvjr'R[Kۈ?8t;QBpJpnMUW{VDۈ=7,rr ^=kӣAևZP⼺l!c+&? .D_t(pPFyé]a2-Ts2U[B)mL@GIxEL*YMrT^? _M IU88%AΌ5oRT3`H4_Ӯh#Omɚ{)BIE6@ܸqNy\bV`k4vA1p6"cs )c LMDEǛO)p"9jq ֽbS;I6_fst Z0L{E?dԃZnskY6nՖɚq',Uh\""cJO*s_uQ"u;DʶqL4X{]Hn>{ll|kD%R j-gQmЦ0 5g *<ʞYB뷉pX:Gz 049*V?MIqs6@+ Bz/d$+ fҹd 훪 `- >?_I^&}- ^~|XTg``fXN4pu7e*[*Wʒ%2XEPH帪C[Vxe#٢z-,#]ڕqWfd/kۺ 5 y'TقN (";'w a2pfƶ U'޻{9s?nj-(k=ڮ Ұ/ /m. 8s Z/eSD&8<9c|UsOo@6 549u̸E͗${ImJPVc)zf:RϾd#ZAWk=$ cfpJh~ALa;w3B1,mZ7~ڈw bzr w-Q4[K!u8ؙ G52I,wAհfѷ$mMdl1nu'?< ;(bKYb:Ylj5UP1 \6nk yңUFTC'`^@Ecdj۩&!wܵkSlh]T]?ėf_i'5k ~ H s+c̨P1g6FVaѩ{d[@K@nڐQ1룧A}$ !>×y~$,?` P7MƗi8 W#V‹H VLTЌ\|,[ uq<$@ S^frݢ%'NmjDwaz_V/74A 4ϗ@ڤow ;\e))Kn]GG!xa7}d>00`Eϓte0 &{>u^= tEcAQǪ[<NjM)tHfJIC4I@<]5 5缤k#q/- tYQb@k-d@O: >-D^7}ق@$X Y%/ J|΃MR|T?h'`B-4X3^S|+=c˜g Q*b:vbM 4qN7ͦӧ}WɟUΞ{nڼ>ŗttHײ-HU=N`D-,7X"8PؽK4ZC˧UuƩ&fC̤u*\@FZR5!^LoED I|| x;?/}cdLbץlI^Ï #4u: gB薵& Zr?xUPeqwrAҎ f hcvd^ȶB'cɮynNW{b i`]9ľTl6R&eȁTrr(wdo YqX;amR[ VٓR)m|!2 nZ%%=oE'9|,SW!2K:; *oz8J-udY7?UlS0x(AbZ)!–۞֙=%_ *%R^pAbGb5gNϗWdB%b3)^YGzx31n(T^|A<;#о&^-D J۩i:/ Q0H *R߽s(tΤ'u[VM=x(~"nJ={A #zuNd$\7SSfTNG0A'>IM~0Gj|s֛5Te.J!!*dLl2ϱPpc܉fztqasgA4DHݽ$x𳰗 ˩׎r`cpH[EwXnV`:Oyo|y]3xn)|@bUK.͏%󱦺 Č*|akʱ sQUs0/V XTe9 Zc ^v7`%>n"r/b"N6Yy%2A$N]ܝi-G]Mst9MdCv}s/ 61yoHt~%)m'F/ځeLydM,Gukj&GJ`g+e󒛭H2jVhOV̧TG'V3P\KSd}j8D W$f[.^ڻΠd`LLq Gx͟? azϩ *nj`ʫ=,UiJO! K&o3u%~ڜe^BqRo0*Y!SpcJ{AYE8iaGm{d"rv;H,.E,!O gL@HH/WeNdv"u#p0ͩ[OQk~bul3> .VO!P>_nLؖe6𺴎t Yh YSZ$]<*'@3sd?B8)fa q 1KgUO~L,b].pIj inc_oƥ{_L{ j" t O67ay86įo{u>~{a217I<ȊhxR4=-iHar~i(ZEφ,~(SQ5a݋,ԯIAeA=6׈(O%!$w;ȡբW{Znh>_9emYWh"z9"./gJX^[" E݊^l\x@cI+"/ ?n-;ݐ| !ه?xb]3y'l |N=CoM- *3H„~ˣp3Kio-} 4'͇b;w2E!Mc;y(0Nߌu{uMtaJy(*Xj8!]1uHVH q@6AEOzut`M4<ʗ:5 :<^pb7^1 :tj:#.)ܾ}W"ت]o$:y-g&7$ Ve䬌B'`|gTB X" f񵡪!uJ[Iy/^hq1 KtKW:o&,V 5y {Zc?N@椏7by/pʈuKJD>~s~7Q%*yd9{G.I_|5FNX H 3T|Ur38I7Ѵ Gw_KHh}"8lc ֔TrQ5d@fE(ZsSZql/0>!e$<ɔ9L9o}Bɪ[5jcD@4OaŹtTF>N~@C^W4jJ6 1N"jXF6D k{SxI0ڥ$.ku&ʨի9uν-Y]T0 [Ƙo=Lm6[ZyHu68ohǷju(!yFayi#vS2[Mhe ıA.N$*/7ײW*77@^=H ;j$ lhW? "%pW'ʅA[.$^n@4#2?&y6_RɋUd'f֢jcIkb(0蝀(dOmmZ"9M;LGM6@e D!*܆`P77\f<дsDR7VGK-Scs܎)(sܑLbD/@Xl܀_ii'M<)i 89i:%DIj^7^}=jK9'\&^\lM.deuy#r@jvebqqD}Ɔ$5~V׭M;RrU¤}/+XKP^S9rmNq:,p|L!d5wf*FA[Y]18 *ltW3b\dW3% Tl?ֆJhvT3J޼pE&@AQ_-%;@'߫X.$ ֱ˱(ky6_.P$v2~:YQ㮼ݸű%r@>A8|"뙭E r,cd$s.^%+ בDq껰]\ & : aqj2,B  v1AF ;&&zZz A/ @)mF ݏ 5uCMiɡYPx#~@E:N4k*|""9wՈgo0sY xE/b\˛*ω\lܲO|w/o[(lMA)}+CKE5עvA 2{E5۷b>܋)Ց?Q 1II٣i8Zxʱ^zܗ4'eS⨒1v:0 G`ؕvv$:slL<2 udp=D:DrN/5RǸ7FN|x YVBU$X~;TqE|B0+8{%1;݇8AEcpGt MKqJ95⥱t v_"dBQ .Y_}ͪp.D>12RP=)Z+A@/d"q.Cә*E\8tcEaMY_ƿ vnHI Ŵ$dYF1򞛼wy.bbQըyDFyzI9\CpMsLvJ@w7;f zi"<6?25^ SAԈ5XKL)wrdfuzs+$WnҲg2֦ZZeF\f~9T D48TJ'Bma*wP*}VF{,..g>G fb oR^tѐ&jeA Z*dS0W`~;?:lkgg!)sy\ADrQhER- sЂKLFƖ/Η (1n!. +:4_MO7|UxX &i ]7F $LQBxOMD{2u^6mGjd QZ(£bzjڃh*W2]mCrDUh yll1f]pv fU_v|S:eYliMjI~yc8~џTk*b Y|7W8xn0r.dT kaS0X㽨Y?Q[qXeJѡ҃JbA,뛫14T>P*u{?SKUG؞)pi&^a&W~DNU-T4}KeMUP)w%34}ZY9jp29V`޿ӻÄd-u:Q#nrkEPAELQ22K9$gC m$ ᗻFJlW4̌(* ) ](0\ӥ@ LO㴰χZvh) -JߛU[m Wq af4J3.AӘm]K vC9uߺ`aj3AT"ogG~G%toAI>%z#] Z =[ o/7]R2j}}-J4tXU5L!Gs-8@:Yjc/HW|:do3( T,]E(r 4~I3U*{2hq"rXZ2nzIGΞHɤRcX׽XBd5DZY`'6&7C2}dK t휙Fjx&;@s~4qm BCKbV1.x5pPs& ,y7QCF%mWEҏ.gA.nkSpwK9xC<-UmUӏ'_`EiV y_j)F#ß| ^7IͶw}Y<=oIxl$)7wF\}3a赦$O? 7BDU:7zz"PĽ{o H^}򿬂~`ǀG_t4R%a4(f87^l_|Jp)@% mf_v~f8ZׁYL4/  IB1 }P.IK:OaJbkYll{HGy]^hvF4ml3xgAvwX?yy`νUẢ36%'k"R1lo`x?2=]|ރA@ . ѮỴrKޞ۠?|C6M9p46s?[fؕn 18 KWQɋ e.@t$Ix&_,rCM,(<[aʑs2skmmO0Q\pVy^ agS{;@H.fLԔ{}x\_ ?8q.(LZ/~Z(W0]^NﴬjITml Wir^%Dm&kw2#$%}I dpizH/+_X)h؆@{( YʃQM筋6$Mx5gy7ڃG;2;MӦA8'_sv&=C{#lbBt|p'^8\!< Ѹ_}Ndh,cF9)eUQ,/Ʉ˰w})DׁI0r%L:ҀXW[I?z^h4sAApiɀv?pӹ*r)Sm&B di9쌮͆9:dHd^I&t~R40zcDTjfU]I1`wG.WSYz1='ptﶆ)xZKrlLZ W*'94[҆:oC}a6~QGNo8eV=Aj"UvWA Zi|SԒҰ8 ΰSFgI$M3 Vo.yץ)c?hF1՟Օ#060N*tPZ 5Қj]i @c/f{pǎ~ϒlԨ#""@oC˴#Ebfx6N|ZO=L eboBxjyTRښFzhXV+ HݥQA H$]P ;l:X򝮉4%ִڽQ~3guSS2?G eOyB’_QL WF͔`g~mYEd5 H^c !λҰc*^^ U;%:ze-Q;9ǞnGg!p1"Jv[֩9#\Qn(4Vz56MH|X*| 2+F-22I(*A]!Pa0A~ANs~W^?%hw :c ޑP (63{Y?[ԄجK@(4?Z7X"%eY"ىEGcɠza ybmɽr;[2S|,P:IzRl#t1N.i(KDLe6`_[QƄHSxvg?N;9e +pJ>jq9o]~U?t-21[wfĄU C WN=ƛ[%5m͈ʲިF9pAw3zo%FwLU|K_$@R{ssbg']j#Š9)P@,f1%yp>I%3S " \dAZ5S$_>-\@AG Jqh2wN@'hx3#ᐁD#v \ TU$X8KOشdҎ v<5\A͙=)е#CO~Z쁥WsdJ7-2^Spu&|>[PW(fNA8l.W2ߒpL]g4U8V> pucf\X{ɕʊ; CZa}oz)=Cr_Ur;Gwk: Bzߌk ,i$_—5H7gƽi]9P6ڂ9צA Mm3٠Q|R֩aolv 5.7 z+R:52[~t?8 /fӳ{:똒crLos$ ,ʆu!rL9Aj2F .$: XJ2 \W-I swp P=!\S r>X>T0m_;Thg(\pFNgġh@K XZ7~_U /lMo2X+eC/Pfz;Lr,W"6=g\smLMcdg6&*U]C47Vd5  1]LrŶwYK"zܠ2k,5+\sG%&tň?I7u\iن& ;6>=kO}H%`DcKǍc\ d7>/OtIfXa iiy3 M<p+Fg$5 f׊`SA'8mp/>:B16an]܅YuV p#J>$RkkM] ^p ϻs_ei8UP5YǨon ,sju݄5FF#hAtRe2kh.i+E ^SL8\KGm"-$T֧q?0%[2xCO\A,?-h:c/^dflq貁xG,Gh&ӄ}UT;vߟgEDs+T(uyԗs}ֵS*֏;윕 y-]K!TJܯp) 5<̙9ܨ]Hs'pF4j/JaKYۘ7̬ )zOCvh$ )X_WU"Du" ixk gOn=MDa=ޖNQN). ^_jMc9nYXdiv&aDMV{i\@ͣOOĵVȉIjAQ33~f~uZ~D=i[Z'b@ţ>;v7FlH" hp1{ y9#;pf!ޜu [_ẽXY 7ȸ1mY8Ƚ U:z(OJZ|5 oNa f)f^˾R/U%rjK^eT!Iy~e:?Ơ >мUy.vx}a|b>]&XqVFLm1 B#]nNZOX.4S k粄1-WP1:Dl@'oo{3h/a03&pz:=v8ZEl|5;~vIEZ$^5 obFb0瞠D5,o(́?.OYxoo\F]]Ʊ^}B~nzzJK?"Iu5'?j/Ø<$ &.4ŷvv5;rrr3BdPq4LkSBl!2/+%Vn8(ȇHNgmz' SӖVzqu8 DlN} {J\_TN#UݮWnCᅶUV[7u0a/\3$܂.,`[.}1$d@aY Tga+XFsqI'0`'6BIHt-{sEŏfw!bcIsoF)4ިuVŸj>Rufjߚi_T-TOJGTt? uی =oƨCf &4I(>ޠp[& $Uu5p>r5XpG(^, Ju%7 A GTi@? 7%扷kKy/aΛKH{!lS%> ]iT-G{bG従)1Jړdž9iP4>y "筅KBc@"H꣒ɉY*t 2H7{!!4æ =م^9V߽>#99<\" A]-SlSBch6΀"~Wvڍn4 -,;)s#EjhRj֕ X6.*QW p(̐JV _y{WLjDQe0!W:[2Ov˘eS&]N,JeO)+g32Y.\+(Bq$+sLPE˞5z_V7Xkpiy\Xf5\<^HsҾrv^vkN *_kS0|_"O3,.+ho~!c~)wO*`|{3SFH)c=O ^M%eJ>6_u@-ԙﴟ6d V_n9!9v{ajEzܨ#x:鶓qʧ?2kc`A`,V. dI_;BoD$au#LX]#d_6 1v5BvԃqKDWqN ޾!#gOCDXd$ Zl-$ԫZSG85܁Cڔ+KmU0$۸)2Z&͆*,۔a~Uvu՚EbLqjU xa7kNNM§W437B=8j?Ι< D6{&w] "L'ÔJEC7Ɋd_ 86&u2;,HMEg(Ba!⴯D 4scdK`F,mge!viPKފYՇjSbKx=MwԞe)FtNK'>ٍΤǕo`(ƍ@vj@?t Hl9 {in±'>k͡ x^?@3%ozY ~ԙbV]yV\x \%ҧz KGG5|dΗKx];d>;FӉ2F9_pPqӜR3oi~ޭˁ}04}A$\A0$5:'F>ief s|JznJC[(ssuj !?iܬVPΖkq{͊GB @7!PNFZ) 6sw>P){:~$嘊![ uRAԉxAL1~\Kc|~~]OT-he-̠~Cb 譍gfAhd|v<Mv+DMs%j\I5 nFS]h a=p+;p8,B 'FVVG 9]GEKc3!n:^"GCճ6 F7:9|%/@H|G9]-ګ:b hV7wnxItt^0o(c 7@}8FCH|{ot)c/{'ݮA?rZ3F1V:|yS]M%Rw=ľVYO/=2=bq l?&eк u4.8} Һ2UCƊFlYduLY-ou&C>؍R Q6~_GC:5!fY.oGn@c숬EkweMԂ=Ys#&$8vx"`LhRp:P )f3FB<ϰEe s9SX͂i8;)+ ?xSMm&OU}߇f!the6Lt5Jl~, N2~J`\siE3󁽛Y$mCLzſuV/[U 09VqnCmͿ34~bc [u,gfG@C8h.q\ ɋD=34xZK ĝL~PI9׿ vAVd#HԿwO9UŰ>Y>Bѵt<@%툙35 ë<.@',Qt@Ne/O„;."+Wjt z;͔O} yƜ. -I[%faeiulZ/9FQF{.{+0dAF#>d!ݱp)8`ڄ+GƚXlO%0iߐsJoH wDOmp oN^]/*xq[K ԕ=jɊC__dQT2?(鮴ⰞҤoP:J.]SYB bcYNxyՌ\GD*Qwl76P.d Ȉ+7lH9IZ1ְ-jS;T*4=o{ A*wJಇ̆-lC[v]d+cz7]C7bU=2asSUqEEM1=~7/$Q<+,1m^as۷BMv@r~hq` nSK@p+pĥ_բw-RCG[ `PhA 'R]QV*&)կaX8+v% ~)Bd_s^E@ˑZi #+V__]VtPppyA@``qx 0o%Y#r)F#9COtq :В}"`DmB,G f7׻>ť $%l{htW+_>[;GqhxˏRw]Zޭ72WUI0, S߲2ס0EsZ;Es{]Un \|쭐7`UW7DIB.IX&6}%očNU/RGƎ#P+g.a(yrB3eEw-#Gӛt+ "v^0vMDO=nMϤ(`7WȐ>|4n7@ٌNUYغm.t#K}i甗CO;|~4ܦ=᪕X_[% RIJR/ᇽweji! \ޔxEvgY~N +oAb;U9}MPEq8=u<ܖ\z}n@ON`0vaB"O+"C;> G8_yhZ@Ӻu+Y]D&J$!Wq!?@b|Ϙ*gl˞y& :FFoOp̕7\qVmﯟdҟH%_cDQ,~5/u䶚³v\UƘe-g(e *tI: 4! OYh0$/ڡXGo_at`Rvf(!qZ,rh U>LĠĒ^ h6v<`yGXGȒpdn &*)cQ C?ˆ1&z iw7I>,k^©Vt40/<Iː^~ zXyYHߗ 's{\X'9%[yc&hP=teo Zmck̈́s L/y8S{:|?Ve=V:Q -g R\Vsx8B.7SQ 'iQoGqc5 G`^?SkhrȫZP.g_SZ SFEn %C/S!!NUVC-l+-&~ؘ¿LcήFLM A[) &höa|nF3PJ%䨋=ܐ<&xB:eWh%rw# *Zk‹rS0sʜe$cRuMspP4!П (-J'V-%5o :KD4%i5܊/uW;G|R͟w/qoMAOZ}aiXu`X\`SIЈ'03릹څ#ڱ.fר>1cʫ "3aFv "k\];B몜H II W \ԅbCVAF H8]ÌV# m[@ޝ'8t*:Gƅ@-^&h@7u!sf蜰[a$ѺN$9{%3䑵J'/+"GTAqfh~]{2l?d"K*g)!UO+.p<}N A3!c~>|=[N/ްkPXўPѼc-K`L4!bmNNb=soA˧a!Uceuve/i`X<4w9Hʀ5r.Kk~Нn6KU:k~P" &2R-8!b .#vh4ҷP*ThiZ 񫫐ƪݲ)!b[NIh9M@">ن=:]Sh툖۴G4``ikdgv'TL(/^3ka"}! &#ژ`9ۙXDű}okC #zd<<< lW܌rn-=go~a^qZҠ47.ٳ<:O0L4g47](XD+dQFhu尴M'=AڍO0Kru@jmH7HCw=1wC hQ<9Jb'c{CBLB&5aXl+F*jhDmθ`Ck#|G0U>\2۠07_Z5[h9Y0kF(t*HBRӨR,8vm92_u}ƥP<B 4* ]]V`Ќx-,nc@GyeAAХ>p1_ @SCw>*-|KdP^#S2 D{.EL'W#fۣ4냼EH!hr4)v*4kl]4PA 53|#Ry"'`K<vMKw:nzD8٪{ϟl)A@VMA,h .>jUHN:ȽOB -eREyXLzTC&g` |[DZ#Q?@7nEVtL@k G_o7D"Z0ն.R X<}X)(U q"ѯxꁢ3 }ظiA+Y: \l &,iGG@V'4}\a[+x1S}w?a流D!<>ZnAx!5ȜM%R"%.Tڨ \f_ȓ5t"b!_лHUOhD̏Dw4IQGlHu!+sR)@YҘ,d YןWG-ey:IDS\Y)|ohANmh71<(0Si3&,of*]ȏCc4#ӷ$} &!S1VIWb=E/Q+LCRA!^\T`U>[!iڋHM8^"-*TLF_GSVv_u&Pwb'*O Q>aVvrOu{䮼J{mi-[H]!=6rmW|O>=`ևys;_ZU}jm ޴ 7ވP8.]ޘ/sqRɤD"{^h]8v TCrmRU@i*mj'SU٭/h22lJ7ǻqҦ#Rwp2nuF")cG$i1Ңjr{*^S8 V9^nl(͎ upR4P lb"w|ϝI/nӡdut (KOxT&AK C/a@Ď'ϔ/5o5 "RRUfD+-QPi؂2wC^{Q>}J]Z/W׏4aJW/׌0AKEu + "_M0k-;S]֨&\4=<¶' X'6uns.f:%@H6WVYDuth(f[zFG:jTSmd򩌫폋Bġ5}H|rI7APiw|%-l<})8QtX' 7Pmy"`6F62 iAa@SIaf?GY;0FT-gcjA^a@:"J*Qв, rf3o ox(H/_즶 ŸM,'G@>8]@(wՔ9cMPJ쮺} Yp.NN^_9J %sk;q}Rz& #z  q 25?ŷv,3:N{(|s곒*=fCʅ)/ed)R s)M Գm|ek'|.ibŤs~Py)sd[Ryr G2ٛ &m]CY&Rz:)tj.39(|jlâ T/O?yzς`kr l잪7kA@1 ʍ>T EZNh?6 ЂrtN׷}Y!,&!Ĩ˺uloGS^N,jHJ\hOǛ!/㟜e=pvtV+Gט ׻oe;IGxPui0_#k72<>>KU+fh2+sa9%lTS#UTrmᛴ܇!ꖉA׽x~7R)$G>x D:~b^Ŕz`s%%vD{LHogȭbmzh8%0;l&wa{ei}^ECHWä+).&~My<DlV] 1]1erI١m'/vMؤ0]gm*w*s|N[ci;N)ymQwŰW`U93Z % a@h>s0&>~`yٔAس$!oFlU*?Y՞rTL[G,)hhUͬcZFނ, QcZcZer't..:hXgzUE6 e.gv%GS=rNDz ȭy@ݚ g@W )آ+:\%QdUN#nګ'' Y gKZcD1!Scz+ʉvӃ] SnĖ`[uMQNjA׶݅Άx ͡ L~_ŨćGo5".-C[,)08#,{b>vk&; DA/SZRk8G]'.\F9J=~Bc]tlzS@ s80(gX(}dѭN*ꤨmmoݡNE G7BO[3WWolVys@Vs|cA>?PCN409G; cqଘpՆ]W'Nm?.0~`i DљY-?R׋M3ĵZ/Oq\?pp8U& ɢpf9v'luB@}HN/) 12pFڌ gIoBn QDuUY|b ץf7āF# >VZȎ?<׊!tdHpm488t+گK#5 ӳ O EΉK"saZxG֋cN0 ufiQ~Amw4THwhfuI??$י@ 9 16 A1`=)+X)3p7YԇC@ s s]|yERJz~L#9}4Q|D"gHS (|)651TOs#@vƥA w;*k+v/ѩҴBJ EqovO WmI9,ZV\G/͵K@zsg7 cy.kRv⡋\xk)fY.itiiURᆫq|5f 4Ӡyvp1Ѓ(!PÜ $&4XÕzh] x۞*w=Z Ŗ(c$"W1ʁC>*ﷂ4EKYR/mͭPH=Y}nD?hPk{򮁻-ǛԸtZwL2(y[0:;aԼt a 3H dF%>k? 5$+d]G]]|) xz4#ĦCwV0rY U ^VOK#^Dnd,-p;LhPXǝxg}S2gl}$Z$8ee|9Gj?Y`Mo2Ž:<{QybcᎯL>6)P[o@Aҽ nsNR={3|]ɝyj7dw͍!>ƶv2:tƼB4| 9CvyHYO{Ɠ6nPf<Λ"yέi]wJ!f Funm0t'h\1%ڳo,~@z=vFa:0kx>^aⵐ"<6Afh؜YϤjo)B'(DS˳r†v;&Ud2YZEnVݯ`eCK}28E_V5NV)V6Z{(̾40PNX*nĩ͕eRWjlq ><`8k=K>kħ?XZpgzYg+JvMQ_9[?XtD{[81 MIG)~I'^vzo(?LWm(L)SR?LQzp'Xor7/2d;~"HIBn+T=Ҿ%E~|\|4J\Enי`EN^ uJ_"g@A0J:&.Ub!r~yD6]×i`*(SV}_cL8u=ÑY(A`A)FQdI5\S-mDF珿+f[5zhҗד_uOG2I( J|>dHr(:ƄbS>.pf-~\~ Zo4:a7#YI &uR]Qsmj _-<?(" e&U2*ِH(FO bt_5/=u{LUSEuF)pyYl^Pr^̘k̅|3.:ᆂxGppź2ⳟЎW- 27/msHp@" wQ,F}Jj&tzWҋfZ\FgAq)Nzo`ht{]yͫ06huf׀xk8yI{bHbv[m+߫.f-{|ܦs=_p{ 2E`:ִ}+{%!(C-}9 / KfЀ6 eC_=ce7l3za y:":.2ۘKOz _4OJZ~;jXb_=&*7#|`JJq'/S+oG]g06T,.}ܔRxncCvJZu!Bg}6eRl'j4;#hfmg6Q?bx/:h\mJB6b.R N!pCF%A8&eKkM%,3T!V;?i,`u{֚6l1%lgѢ]cV 86E=\f-6›'7FFɨQ) ,j%7԰~tn].-W gKBU=uҥh)_j[ҕFb-7nޕ!wz$ϓסYnr}[&y{\.縔45OUG:TM@dRiQI(G%=#qP-pl~8]~9;_]O3/f9bu7> BRdXǴUjgwz%%AE9~ZSpcII,X3)5Ur! , 0n;F>zSS7㇚Z[Uc)̍+qcW%i8?a1IMD1gd J${>`0Rk3 (} n ULt)n"Sc9i Ǹ6[@`:HΡ#EkfFoZ {r0w:'YVgďyPߜP '¤C/wKH0Pi_%tdyҒ;3sj`N0 %7f A;GF\;T<ԽvRc,/]ųy2Q8Xn뵮&M2k+ۉx$PuH |Fo7Е-Tn*DLejc$3a~~DRiʹ>NV( ;&uFAZ/י7wnOQ2Wc_ߑD*bX>XI;gѦ-fշ & X:j8-%`U)ZJ#tԞt{oȴ}I (]`Q<}L9qU#}IkaYhw6a!$ '%Otf /3Nҗ J -)F6ۅqݓ})+xlJMHjwΆUL\6QBk>vk빡;@;)-JɻBT'},陾\  Yytذ9ڑ@}֎?2ZfPe@ɮY:ޮeE-mtd9Au|[bǹW2Q?GOwT3+"-2 +;B ym΅I 9)1RwWɣ 3.26*T̙`fU {eBXr1mr[g^1!˛5;Pm_F6{a^_T4}%H]v^Z)y3Z)uK͍hd9* 3nf'ad&[)ei3x<7r!-reCoJ`XXH3 I̊]k~AB'Z]ǼtE6*w`o on9AYFp3*&qv9)4*mP 7_Sv}I?=ЧC?N; ^d4&y˃ 4|QAhQbBfe}'^?Ub]=: =+vIV~j7pSdJ$lzjZ+;=W;Y43#kOg;/G@EDȜ ts+xX´K@gskWl{28o0t]-<ޭ<~ncTncf:Ɉs9.P^*Fx ci x61تk^6_#om"+]O h@bȷ=ߕ#*$,xVBL6_YKn,}ՆܥnMhg@bnldXaz 6:Uw&p8X`h6Ǚ7~G%~D(_=fBEb T` 6rXU]ܲŌ%+EɑQ`rO1=Ԕeu'9j7OM<~._wzE $ZQwǾݍƗUumu>gW˪nKA.Y45gٶ) _ʭ u@Ə. jpl([;t{*qf¬6DƹP~$~rQeOHNjrO6|jm{ŷo:%sRBn5k]Zks*_iiy/Up>ocoBH/)n(SD \*>'8?۩yљ8CBKR`h-‰ =*2ͭ.v/+S?kUrǣ```MFqySpj˒梴fAk Ш| /R1.ځ Q 2aj&p}0PS7ǜcY+IIr22HglS0'&%[Yt4*E%Ao6msTL|q&WbGYuMG(ByCmYOPvƸ) j_[{Jei#9lHG y 411]Ng^ꭖ;u[ГJ'ѧZzO nW#׼ \]2_6iOi$?aOʋJ9?=m=Ԭ;ap6L~u/`~?\{sV:/huPoD,!@M N.2Z궛ww7%Ƥ4DqXpgS((Q3MUr 9#-:.hvY΂%W zR $A^x]Z9Qm1߰1hF꜉gI IfQV11IN>@^AI^>w)lu֩ tr$ )Ƀ Z|he4_1C1hfvvSK"@XT#y 'hBY(1At]v8]0\CŸ9ɳW%9(G{ay8krmb/1Rsc-uI"~VuA(ah'6Fĸet%@MrnF@6/6!2d٤'=8ڴ.mדe)QEffG,`cn'kd0/*0޲dLv0l&AbPtj1UE7f5ؐ& gQT-\BZ RV tV0HFPGFɷz[P+"GR'`ŝ~bXM `y4z.xij쮁T-0BZx;{6lUi&3hnf.@ h9I.E +.-r<%¦jclM>I# )DI) !.z3& zt޴B@~FZgH :4I8#onb:IU~s. x}B#-##5ͱ4g􏲷G-a:kmK]4&Ap˺evdFO@g][睉hԂ!d![+z\S<b7tIFn6ڴU6ѧMc<|S$,V6>r0]6`i<']ceG͒39kOuH!c.@5F$׼p孧^5Kby%`D4Av4wJ217k]1 9B3Oƫ㗛tiGL+(,n_5SqK5AP#z*Y/45O_i%!?.QQ骵/a^9-#˾`\5z~q& TYU*$4ÅB,Gfcԯ'uiC8ɋyb'%"U;_U3N<%Žt JUF^6Vg÷}xRHBpXǂ /R_GU[5Vټԋ[a:sv[yMW}io.(fN]@7;.̈J8NsUwj7]LgeXủoۡ)}wc7idrTo2z y}-O1{`8fk9 /rM15Q*wGY "z|/ԚRRw{Iے@U]!_է/TLbEd 4'0A{^?1FbKZ#!9<~jT m^-_r{kg]XxtjoQYU&_\v\4A*w?[S\TuAADMume\qr{bˑʫa{3V}«i|%3aP- `_a/<\5o9~Mߖry.CB'$U!6$S\t1;;G1kgJ7܃:+~B`ohe!喉74/^- DzM'-A;3UÌj&-Ÿ:S['3}4!jQ=R[У[4ʇf_B!-!qBXP*lBXmCھkWEPK4wqu;nc J"Ѭ++,$Ab`Gwイa)H;m0ߚ:?k&Y2 <[>oLa& me!NUd-nRelm~{B-<6]&z.J5'?woiJ <})|`+ڔ~RL5m 6YMD? P F-9,3>LjΒe} )QS`#A|?,g&LcrCwQ 6%}E, sWvp¢K~=^[+ˣ"EFBYo3{̈́_=/ apPNk٪'pKGۘ, YK?<Ϫn?/F̻L⣬m8o =Ӑ4[o';>sBR&6ߺeYWB*|x7ȭD;f%z~u/c Nf uYtc=IPjZ;㴕&HaG4j.rP.n8iǕŠ>Y `$v?*ns5XDž$6ڃT OK؇U$럡86AM G,#s[#[*uF [w(w<2 Z ZٙHqQ;P+O)6J,( /pҙ1_kۃU{W-dk6Lq;-U3!HD~'~Q(oKx'qqw^'/4P }3ut6^pN;!f:3jNm(iQLG$-s1Cypa{{W1x t~~-3&Sеc6y m[ѮwAͷԚ'p)Ӌ?k 4e.n#Na4OetQzzjv!84*+d JKppC=KE97?wC d3%ڵIK=iZgg |dmΤS{d}m|`Q HYm}% oU!ic|^ڰ'qӒ Dplt\0F Q(ߚQ*bۗ(Afp昻{/ 6U3Obk Gn`ate&8Da%_sɁXA$%9CI /]U- N cP {4Ey+xdq\k;(4eplj}6TW1-Jڳj6NqȤaxu[N!m|7jD꭮46Ro*>nao)lDۀz H ]/(jPs.굡gu{XO|Qm `d~4Pn'0u:BD1E|B:|}e~QM7)?OMs&L69d k$NRZϼ rQûŸ5;nA]kl8yzKgg,?Ψ܄m)nxbj:bJ%,/:9 ܳT/$~ռ8 r 8HADR0;zo84G|r 'IXvI F1y\jzV[/%P꺫|Gb8!TFgrHZO/h ڌ/ ۻp6- @oW*e-2cy:RّHrQ25!hWvxNɖ?:^xrn),yЏyz?@TN\͜Ob706n%~͏]+ۆ08!;CՋg+׌y5c"98/ZWjf]A:c~8DߐJ>xhPM^ZCP Q:<,%llʋݑnd` -7ҎH} G VfH@$/%{Zs6`h]\:<Y?T Ω}R:"-2sj[7 Ҫl?/EWn烽FS|ݺj[5Nԁ8R)f~<Ͳi!I92LHknBѐ&݇0a-=U9KF輵8fᆻ(p0X8#.4ܯE~ilSRМ0qN?]Hu&MkQ_q0d ,!4-k5IĶ!9p[;hK(Rn}4t2;>~U@:gQ>LSPoM׺԰CTE' 1_/uzH7혒8fJ-tDyFzjbVR60x'i/^YjcQݻ+1x{a^wa=3HK74i K0!|kpz5V~@"jɯ7hH;jO-2M.㝡RJ_7~RB8}t9lpŢiMàA:#"߼ÀwhŐf^6c.81])K*Fcf7}~}oeBC̾K=}'qniUJGiZLnaA2"NN"h~WDWwHj&^J2||u`hDL%bhD{W,Â!fTp^ب2rj SO=XIfB;r[JTjLU|$:av+Qiɲ{VEZbʼn*}$6]c&eŧ[ti&2m MLa9kYq(rA;}Yi)^d^\4pq<q6-(D0.At%ici[U0/ C#6ݕͰtb;Y;!й&EkՈ$4j3󝱿^C*?#oO(Yhr%:QƂ Ԫ 7p}9?H׍QU+6[,p7( v$oǕ^TТKkmv V3Znmu^t $ vY^xfQC%>fP/|tl`8_ao,&tu B.6׈Ž xvp^5Pdr滝ԨD8jВAmk ÇtꮁW\ FcQvBH[4nkQBȂAkP 0&VlWiͣ_"(FPq9: ?Bw(Y8 =[fMy_G;Gr={P㵙ucv4{9mD5뷓ӦȄ^? qTK{PٸlԪ ,UwY(K##_ˮyN_"k8bl7E;[xw&F 6]y'8waa83}u~EXi\5%ASpa>6`uoc*Far t~lyVeo!mD{)}~o3 gRjjy,XQ6sU9Ǩ&"C;f>3Ew 0D9FbHU o2"La?o$`oyn pfV#So(ݺkUKSa=i # '* .un'>^0$=GҰ W)w *v]8#=.CgR0zxGyA!])T`%͆ϘpI˙fu0!:!*6`r^KFbJ%^~HVceKܔWϥF\Ək:.%+#LVkc?.(V4tl͎ZHWrUb{qVfq8H1kV3X"Zgl/^Y0d!.ήt呇|C+iۃe{_xGl JI2TD~DVR70 r>e)(nduS"i]DhIsƦ0P?iX7D_ 1߭'A)VMFe`fGp>۰ <,ҁ;#7Dt3J(|n5}Y xJbH.С#fXq8)%؄MGi2S̟j"h3olPrQnKi(ɇ$n}hIQIYɚ`f03qOxo\@M^!̞B8a)|{r#GԜT!%iTfNϒiѲ(:JjAQf4Xb$A >?bx3a.l9M=ȷsX4P{N*whUԷ.XA3?5MGT/.>fV#(VOBPqJG`1[ X0l<4}ˋo.xcŠ&CP+&8,qT#3e-k(3 2oZMDToUJ3K"O!V+^&e$Sno>9*xd1&}p %B c4#=9ihmЋ=)H֚|ϙ bQg2YT|ol,ek^<jf'%牕 9]9HFmC<{$ ->Wi}WաZц8b݈v@m7t\Hn[̷ҝ2ф `uD^. hԠgo7ŷ+ 9& 8!Ufiх.ZjJkKy06n:XIxݙ2cyc@b`f Ca@ ֮ǐVJ:m#( 5@JχZ؉wW7\8ϻ'"DF-p}ctc6cOs_bqD?+ޡt!`I6{W|/:uu&M B ϙ[vLA:  pªl|o-s\Ue57-a:W ok- k8CÙ yue3MRxFgB*fBՓI ɉb勨)xف>2ùӪ1>Gf#:% ]薎A+%Խ$|] ]s=]$&+Oϑ!gնwx^:ꔩ'K w JB4͑F1%sKd D}v:>~pb y@I9@į]5yZ}JO=`wK 0nvdWͷUovL7&[cEf#pv#D ҺOh86oʳB碬XA> 0mH!K҇]Tj8R*m[&.SGK6cBVFnufE`K4(%Pk{CM2ole>3T?2@1c$%d8#rݯbɓV `^MjsrBl;SEF`W3I'vhlBi29+u&"([ rKNYr>s6QnR5#y(;  tƌW|/XheZЫoՅGMpe#;9:7٠k~$$sbhyU-Bmp_ A&eq;T XeSΩ޸O\b;/z )!7B*1'S}f630N䆶"$Y&LtvlQ*Mm!+ 05`;;nA=r9c"rIfl@ϔŒ~[=Nvc}3@m 籆m;>W70:x~M>CF dv΄y͒Sf3OE2#"w>Q̈́fM|y yqY],K@/Ea;1}4ȔiȶSfm"Kub#ıSQgaEݴ  <̕td<:B:TRWm,\Z%}f&}; EVtxh޳ъ)so-{}C\Ruvf}E}\Gciq$tbiTF4.@Q͝рzz/8> 't,HnSZɿ$|V@C7VT,^Hy 8V [HOa!c<46+k=\Wm#pƣoM``lT=426XS^*V%{D"|(ݚv/*NI#kb}*۾]-߲ !@=fZc.ĭy9g U̞a2(=U;cTJ%Yk!p_^4gJugMOMɥ7 ѳFpvt7+#*K2Sg P=.]j\M垙wb#ƥ(ÖFc3?Zېފr'nW$7K۸KG6 Lwylp#1᳑Gi̧s:'1,D 0<d´ݏ/- #mdC5$$J&-aUgj.2b,})f1]k3O=}cl^ZF9Sr`0>SʹF*o-q|X|J3-p= [rKlEŨAe e͋\>1ӭEȬG:zeZcmyziH#@3?>̀Wy2.o ofDO߫DE^>/.CvLCa;=n@|10ھGd9.ӣDPvxB 8B1h4aDŀ/j7ӱ}'GU3[0tHP̉׼}"^ꜧs07D}T.Xgiianh78 Eڻ^Oz/ϺDJGW:+s #8ה(?jJY0W5lG.YY"4@9\\S޳-Ȍ1 x9WmWoj+BFy:T|W35E($n40s{h(*8ƗSa.Ho.WGcP{#\,ˁ~$ X&1D+{c=52Ƙ,[ ݴ AڤKdϝUnO x*;BWayΘ|D-i4([o0nkOmh=3{d:ܿ!#~ۛy2wx?~lwKɝB/ᾇ'|-\T\w^{|} ľZbhe!$Ņu|C4MC:1#1,6,T۟IF1oysruCw/Dy6,jNZ`,uGn6bPhCih&Ɔ?U0?Ǚ O|=?%eF(6sE]ǐ*{oӽn ](kWT7˭%KwUq빇742Yx}͙m,봪F8Ν B(.hu.(8rmG,g0$+hB) 'YHX2qRӇ G+.nFpAqPLlg¯4хS7|ض𙸝œlًOxhԜFoUOMhWb,DbxՋճ4.wϥ}N,׻^ /cA uʰvZ,*h4#讵BFv lpz1sjϋK+1Yǥ^ 1/ R3*|̧ &,5w29܈:)|̄Q@a4GEUA5wy@1fŠr b݌ѣ5؞i GB!?qzwa^mmތK+b>DpB-^E%10 ^҇4N^A,.P̮8Ό9pٛM s'r9ܖv‰Kaݼ3kU*=J1AmLZKA,Lq$*۶^fG7؁gh䓣'\=Px CZRR Upُ}Wlqq*Y>QeTg2dL-0ߗBa\T_3',yXvűn[잷,>ېFP$X%3|'aSl%4cA+ͭ^ 'Ph܉*l|o]c (>kqk{{3ꏉ"4D9e9LCa~A*}T0V^N[@p9J 1Ec_ʐg%E:lsIֳദq$q ;kPR߱;G^ Ņ'S h:ΓE )w I)1 :;p?o֐`J xa-v-}XѩLӯ%ބ˫KByQ"e4h /J,tyWkkE@~QkbZ8qEH \c`lF;9̭5VC ?^ @Pa#AŅ@ޡL45sNz\#L( EQ7ŵ@{׀xKteQ@!Ipfͦu$%krekK2;)Q0֓hXBR/3Έܪ^h׹5ŋ /isZU’I/Gm-S b}zeB#@ z;Qދ@lem=v$j^,;t. 󶎈l+ ]k$஁=awLA h+W@zVRD]RWUa4ҲU u)˷: Ą?afL wD`b,Wق5 [Tbzs1&Ǽ?#4 4jLwQb?"Y ]+1y,-4'͈pl(Ɛt^O'B0XW^)k_%[0t*7 ͔C yQ{ݻA9Gs@NBzFŸ B^'HHC- 8 |,nLt?,>bߏe4O/kEXfSY/[6ف, 5Y!v99B\,p\\Η!r,/v!!-5x9ɬGl$V W8JWT5'f?H0uCF`3 oW G5IYOR-Ѫ6m`bO3oi~t#dt$wp稥7^Ed@$,?g%r'}3K;8ʲ>Ul|/Cqƕ l3<&$|{+BXCߊ'"ǁٸ6aHh*հ%w}O0(5q [tq@~\q|,'{ w^ِt$-PgXWsBp)_ZG'N$z%u#߁L5oɕe 4Vm/~GDT4Lzh7; i,-e!#S]3zd6ъQb_`TA!lQqa B|djAM$6}iʬv8T =^JӖ4Xق$```?)J<4߀6w1ĝ]7͐1ӮNB[2ZPĝӟ*ڼ%%=$:: /- CVdp&ٛSǭ)Z2g'5[1g+A(㲬>~?;d 0qҳ浃he-HN>#D"J Jl0t{2F0O\-HI!_ԤLgȺ+HŅPdۑVHKE_QY$Zn>k:8- ^zrp `~39Eg幣5w;C#^MCw5# n ZcQd#dlٴC{UYy;V\BS,)X^ 餒IfEi٬pz q3VZn g[ە/6m@-ٰTѥ[U7Ⴍ߽TǤ8V8O5krLY_,qd=fhm/|Lĭò/ZR˒Bg_y 4@r%Z-'M "yM6#S AjNq#LrhJBƞaL٘~'طqѮpX/f?ynG o=D&yjFb]#1[r/:fҬ;w*UNĮLHcFR L]5ZV8:159"<*n*U\C|yNngOޏL?'JF:zִ-mO ieQ(C/%˞>tG~Sl[>gTa m* CCzVғý [IXeB7d}?ժpGaj>Qݪͤ}ZuPAT;.>e,s}[se+:vLTj0jF"R(Vz ~I2D> A:ʫǹߊ yysmvGN?߭oe8!L8XЍthEnSAl@f!}:` L=bSCɑ)TA͌tde`ea)8mu7QW?}-};TɀN)utdn?ȤK :X&V峝7qMNq ) YAPl'O1?s"sOG,+ 1uY/f9* 85&؀TY|޶5̮}Nu% wx Na^Fd[҇8|^O,QiR 0ESIR>{Tʺ}Kև& PvbmӉ:,)\)גa72poBPPL} mݮsrFĶB!* dž##H6-m~QqVҚۯ:%ԁS,xDnr|+m0qǸT@%<6>gnb0+{~Ձ㬾TBcG$Fɼ?ySs掄PN`IKy$*aӴfQTttPSbeh'˹V7!J׽ ˌMds8`2zR^\Np;JCNJ/fZ ~GutuˇSaz+l*KlnyƟ+΢F ,ET %Nw^K>sM]6ǗH 3vI)7l8t`q<-/rs 1\7Q~ 閳i^ەHdLV[:< b,"uJ( G?_ <&;xqu*EN|>`@Z{4%l W<ߚl˒Bvƴ[]yx\m'.gI (k4 5+G +x\֩IG1P2*F'Vâ:rW)dQ%h y+ΌnӰ2{TN@ͮHVFQ|:6٭I2oq^#0$ݫx rEv$26EGXfĤXHa]/ze_ʐ ).i Zj[ k2e[|P"fpXSR]7U@μnc.G.7/ ξHS @1Uj_֡IbR]_ފ;Jb P }5vf^ YyDU yqNG7vM (YlTZ\C 8sn燡cHz}x?ճfrG 4-&KrQA֔$w ~]^ ;NUFnPXmXK'mHzcG!G|tAVlӍ38W.kLsXU5苼VF@y0eYEgr^CH3߈-~g&M Yo΋f%3$&֣Uܷ~pZp'(qH=3 "d2[AOC L3>Z]]kn}mo F*Ka¾ˏw%i,东)#?ވ^o}ǂӂNbif]-o\|"e{sL\#QH[{ޓhfF7h"e2)B{ j}s/fdP;Pəh+|'d՚:vﺒ}c(ŖW %BJ˄ b¶rDI)lȝM]z-!~EXa1/p D~HLP' ʢ&+܂h^FyuUhQpY}T\I ~ujYư҄!XA `II1ͬ-p]Nveb4J8/pA9$˘4 .8xtjo5^nCQ4 -siOX;yGZNalOR^!$o Ogq׬mxű01D6N ֽSA ԜK+US.WgOL5u\\^ ꦄNr/KYu W)KEug )\8 =~MJ]]Xbl䈹t!B\?@]oJ_'*M70MWG\*8O̗M̳nTbr}xKI3 QumIHb4 Hn 2yiBP ^K)j5UEwq/GXqq*p-HBQF%@uW04Ԁc@:N TzX@Nj( _(7Å]ͼyӑU:-'Z;?-}nn{оbÄmF;Wti;םe?"]9RIzWg)9Fiիp=s2I'1O ZQrDW?0qSRYpn۲ܻc-b6fvѕeq -ݷ2TW'w,OA3.4w0({s8^w<$&i.䒝 6SZ upHN4WR!Xy`f6l|<ـT쓇|Id֝uf&.Ƀ֐}S "9LJv7k~C̘Ü _l'UKZMl1_@c!"^fb<}üC9 1CivJ31@&c^hDS}U'n\_ M~dkУ,dMnmј#D 4}_^~9Jy@"ՄJ|sDWsbm sFbBR ԂsEU 7E |5W\&Dy'!$(FsbޕMܢc #с,C$}bp\ou)  /ʨȮ: 0TT#lkyr>'C*9{5S31#*.⹈ 7<&qgAQkZ O Wloow!8otB-CGm99NшYANdkIKF 0Ϣ1$[bCSh5ba*l5qn|y b2ⴉI1yÕɑ$q㛠Z}#R 90c*u7֖no&pT+OqU ucƃ,A)J hwFϹI>R Txi"ŤNiJɘMQ](ρǣfD= y쮾&ӕ9|DݾCD^3K՚T|ڹ[$ kyAc}4b cnYgr ZmDYeG.?|MБDꐺ^iwHv#Jc 4 l`&[~9oeTN/=1j~êzП.tyٿL/]+o~ύ֧ mPc^6nPYͨI@|T`=Zddty : ]+.%Տy-] 68,.L;C7hZX"@u\EnT7NU fȡ@wz!59- |}Z:|$VZQJDֻVChPf]^3Bh>i 'C i c:<< (zRkEtߍ&9[uXI?!lnt z苸Ld݌JM44g ܃ P6뫕?(8a.=))y w!O|HvC + Pc.<;fZRX=2x4<'{ ش_FlCx?yT)>ɑ}=(`xehn^T* [nq?5@`xb1ȳ6ܺaxR,uy-酽m!ƜRIR$UfeU >YF)o*]ɏ2P?akyH7΃@c3LEN)U$S[lPIlU_%SWLeN(Ư$,Y33~U{=F) $0` @ 5sK]D!ôXm]TqTqeLp SRFAE^^ a t0.,""e:i#)jhcQM]Bv;|SW3Y~qlv)= Vmukj{GQH0skAD'ks "_Y0RD:ʼnR:oJe]ņFJI( ͒J'Z! 4yAYfBe}VC<؝PכNe`4CyvHʁşh5xN:T~9=0V>U pk6k'lS>hzg$ɣEV 11yOź2]CFcubEK}*5`_ WDP^@̐FQ,7 JRxDkA`;0ɜn}5*Fc~+>oRq#M"ľ#\]?A2Dh_3C=!>J3=.uF @tqaN BShB<_$^KNS0P{M4ـUC2fEmNP"_ʋ hkqlKrm^-K9/ X8sdPKdO '"1>HKn%^|3]a1O P`}  /_/zXA(Z^eKeᱰ1`2TRz)$Vif~W,hDqF\mU)nV0LᩚRT4YRN_Ʈ7:FFi_V=]!er}fѫ3%cKa5ֿuiYJre.o-+F (">"hޒMJ[UH;g&/Q]MF!%䆹ēAh)7 5.vhZ,78wYWU)xy@"&XnSh|A,n0J>:`WD<@Ļ)F!84DE ȣIs`{?ŃYgςp { 3eӒ&[J@gAS"` xWk7$3hf`w Z5]Ѷ4dط{]57% wx.ΏvN7 >6Iڇr: <8쮳_kȥH1vgN4轖Q/уzZcE5# t߶B! [ƀ6x9rDz] [Zi}HƔs2y5c8tėՉW1MMl̳( ֪ 8#, kC-f(xy_j#2-Η_;9ƛxGasi*TJA()JD/ paP\"{V8͞mi)gua?7!ܐ603ko*³)Dsr7D:Z =Lre B Q8WFmٙ ]2.umRb ?zz$s:3SKYpv(1y ZEvx-1+&`I淩tYZ'Ci4g=b^CYWLyt*ȃCSOʖc8YRh[n)3&XX;))9Rw,w ԍ">!7f"byc:[TRdNhVhJ&*l,(u=9 7e=8tE5#m"lP&Jr ݎ !ދy1j[~ ;(T6OӒF4͖<ت !4~"[r%Um6\jWB:υ8 CB~ 8f]2L`j$((-YfhR \'%w:U殼=e5wLUh;vTPMf=T*W a H"y vrխ)6Wv S6(N6ݴLƈ]\wY(G6 R*7Ӥ+W eVвy4ƪ[Eh&S1}0x[1tݦcmSTYXQp>7L+R-Xu&|5Y4'Z&#B≨=NEXrEW]d)pʎf F$t!`?u>O~QZ7ц%<\ fd; h`\jL./\+%^<*P1dQk>DPs2h˜l2ȡtVW$KIޢu D-9kl܁7J}-k>nhlMrKD~[0Yl,PN$7fZdmtaJ,U%1ǩeL0} l$`rj7WzoyM" poz <|IgL4bHGL0wl`}.X yVnUul%彩3XϜIaKZ<,jibM:ՠ W3 , w-In"ˬJgy4'P ݼ!y0 F(g!ϹT 9\Oˣͽ|^w(6fz!y|ʰ.%9]m]NtyGhP&2~c,dQ= YK6-!f^mW%%¼-aܫ&JXz2P٫k~,Қjh =~SQ@KZ`@e3 9au{ob&|dn29\D~uu_e8UMi*1Mⶡ %'RlW;/q^F+PEۿ Π2h`5u$/V`o*Y$!bc@ r%i* v4wcZOkm-OMB/^ CME~[^N^ď;yN͑VK#MW P%P›O4GӽO9_7ڦ‘D}KYklvU-HT*q=qv $o抴 Rv2NG2cDςy ]J,͇gc¢eޛN<>Ң}ܝ.oۧ6G8~Id U88ͬ;><CO* abgu)F(gBЩFM+^ 3[6|m^N@"-$|SU%l7%֑qɖ|A bǭBvEo_nֱoANke|KvAxfX T7>4ޚc ĵ9O;.|iLs/,t٣e M^p,BW6Ξ!@^Dg RwYƯ=sYeEGGlcJ#J:CB( slQ`2tySӫ ZKF3WGtLb$C5/㟾e2_aWTMY*2rTMNҸ15:m̘u#zP@CzR{ĚKEyNE|ҠQ2Gr iLzǓhZW<yڈњHXzo9apk#ц<(8#f 46e\ ѡH&%)|JDg([C ~ m„Ϧ1:4n-h'. !Ī7.*'@[ɣ+e" {;O\8g5.%ƷR%+︟^\I)ݿs7y}xN]n"О>$d˩xnb2,/o 'd̄Es6~Z#OѽnZX SA g|jcE~b$:VUZ|Q5]c1o2r0C3? Ifn^;ame&4HΨ 61`ƿ0a6p5Jݸ'+5gOsSW*~ZWd"=PrȮB_08źhA_YWԆ <ܥ Y2hj/Aaim܃l dgDŽ'P.3čCpNDGz K;ήidB~:'!bC;$ldLYEddQV"[:<G.iM,j.hvؾ mMs6gnt,֝w]2uZ'A05jw(FqwKLRt hlB`y<P8+Owc&x+];*QT;G)Be汹7N{, ],T/_!5V>y1a3i] vI$~hTm0J-;@AJqd^6Mh\A"#h)[}}C<[?:4j X.!TX-йO7z#w=[1;L639a kbcV8.ʒpʖ_ CsjjqӨүދFaQg|(}aOS.[f4Dy$7t'R9k|b#Oh8Ϟ6\s~ vvػ(AcD :4qӔ@Y8{L[j2+& A0B:EwDdh EWq0Wo-}ܭznu$ljXc!#s(j|uՇAPS0c4Bʖ Z3{,S񿵢lo2ƾN;"w(OTe`<2rABHoԌkzREK% a$%[ﶝ_"slzRM7j h?Hh!o1)i~+vpR}aWVFu+̖*ˎ'yئ)fk(,V4_u2k-G"C{M:WFz/}M%^K. >\Lu/!IjQm 2z8(`tެ)j շ-ˌuխ O:a4 27SUlFԏn؜;c)ug+Pjv4f#q$4lϧ]tK" $F!e}B1  Mc>Yr?"9Rqfj٦Xy͝0rQ~`% fIHfLwer.o rudݸw\eX+M.4R8G,/gu?<7 a* tЗ hƛ. AȖMN<6:P(]sLtuuΰԒ4 Qa"1:#RFXe\:ڎ]<^\% zƦ0/y׼*/$Yz`5&#nnyzn§r's~1e@Ep>*&!nT9E$N?"x\+oWU{sF~89ѯ !gkC"(,d tsyrfϒs4 M`bȹv$ er݃cεrDw90{hh3\fb3Q \v)9#<$Q(n[̆mX.BQ;{kVd^t\%3js^JLWDڢ\>%p"\{B'>0 18tM; rsd39JĂɵVzkzj:jE 7gJlbKGL>Ujfy(g̽O C&tFUlL,羲v i&t>Vlޡ̺?ɇpm/OV̑k7YbsڦЕ?Q2:U"aP%~cXCDo@a ̛z0ts4.х+~`g-VznARV9I*ˆ 8v9S.L>%x m]kVB\8;`F\ ߱rn.|CyfJ},F fēu#3iЙ ayZ R5R{If1Da *)n[黚lSk˝i?OF]032 9%FD>‹ȹZ@jf!ixT]4uc#vQ,i-l\`!*h>r_cãVɑX_kS>Z7)vhOf7G=R|>qJ)s{e8ԩ=x2ηQBs5y{7yh90IsiNaPvfu0'$2?qlB'. BM2 dg\PtOA!*=~=Cg(4k[XG:yQ *5TvW;=e7M5ؑ`@NVUnarf/e{{/IG #mK~)Zu<jԠmǂ(0l좳DYx#(blNP3"SӚ 5~I"sgwnݰ$ge!Wk}F/šNh`:B%c?q\!/,to*V4㥯tȝYYYd%Qf|IE- !{nD s~sNoIBVeO>uA0 + T Դɥ5>G!gMjjkGkOb9p bO;Ӎt~Vo+ڧPH;S")X@~ctZl)r2 fe[x첻v4 7ĝHGԌ:\]w#n05Ԝ va%_A⼆C,4 UC}(0ٙK@pЌclx®6gD*^*qXd!Ep#zk>4Dk$@Xb H UMVSnOM 2VW Kʫ+qTӳ-0: --VYWB/%bOG߃:}X`U[\G܇oԖۖpCH"ׁiy9|*])bڀdgc'C'`شz +m8 nN l7e'm($)֚z҉o- XvRa2ՐW'q]j7h;d:)'8Ljuw(V ao¬"0F4@~go85T&֫5ve+jaa1a &/!IUD[vKԳQ+~g%ޠN + &xMU i5R!똵P|_ ޅɜ.{.MJ筥[{juoU⳵~YhxV5d b&~n'w>Kɬ86Z*f*mTZDz7r핲y}#⁃s`.6e1ԛ0c\5g}e==f)}<`gFB˚F~?7HX7||\0/R'*yJ}^G&6Lէ,4%=ivF(m0ԚJ.Vdhno8WqDD[Om!Ev|F#8pVibi X;Ȃb[{d+&-0LeD ˠ7O ~ֺCIC 5)fEsg(k `d81<īT2rߣar2ϝC@юJW$u,('`r+%Q<سNEbgEZĿ2}H8S울2>ˎa?Pt*^-ڈ,wZ X0hgU7 guMfL d|O#ÅYCNm$)J;F2N#*glS=qҴ7uۡ #tUB\YnoX#`%LsЁ>4G>rWpXfO*E5Z|.I!EROmc.r)"iq0HP`Fɨ,͖( mG(+O}]ΛHjmJ"x!NoQs,2 Oɱi+PE:)4]WtU9q/jOOt  <9#wDY,k\1:*Vj"R {4f7@n}yoY)Ϣ:4&^7q˯qVmR>(P 1[$UUM: 5&ʛ5LC8)j빪[An,Z)>M+ۺY` b`߯ \dfX)SfˣA 䁟 Epag?D,N8ڵܾ#*g1v>19Unq4 1V +m9bڙO$&Wp\‹a%CF$Z_+c F7?Ϛ̻L-, e=6jdAkwQ.jOS'c2!4!uqv" ؛qO"rϳmyʪJD9ڜ|_(V 皰< ~ϸN[-qt5C8l^j&uEVpl L) 84DE b{ ~޾<\×eL_,mՍyFz;0\sD NnX)G>ԐzR|]wq(#Һ#u:CKQtΥب],]@bj1bO).lL T BYWn I_lyPXRd~B/!&S:"5R[S>)C̈́S%{(b蒔 g0u8J*6lReG@s#!:fw)\RTufBc$Gx7T˓TVe}i.+YbhD&NP&6pyCLwJֵfl#6+ L_r5S?bjכO,N8>ĝ\5|lSi#U u{R Q{؊&~krn^`Xh|j{Ζ`U cgo $IqKFm^2-+K)C Rt lb{zLÓ Mn԰`ƶLY>Qs%36J-v,2YaZ1; Nz Cƺs9'gܫI~3&>|g-zGlс z$@6N(YI'&iױDkF<_n G0oGq }x4K!.lodqU;A4!GS2ʿW7QZz.P Ҷ#fz%X .sOUG a(+ci,mByɞ|ڈt 6:p]XxmJH{:  H#~M)%1$ sä;5c$Bd"\1HoKM|GYXV_DS]:j:՘֋x11#RvL>qvCf)'nLԕ6c2L$'5"Z}t~ kO;}U6{#9o谅ҍrs p7oh_uE "Xv*oըɿpCݔ8!PD-[s -8yy=OHD&rݜN-tFϷ Ѝg.smqY [#Lj8-R-_j,nlr˒6%-f`;3 ;2=@28iyLf%T-aXLm|T({}MҬ~i?Hu!'NsxwQAeJsGG6@b4,ƑdD,Hm\|ԃeiZ$SE/Y! C'Ȣ?ǡ"S#BA,עOU2t:PM]9L}'M'#TГtkLDɬYRUicwpvTbG zѥdԓ3}ˀ{9 3 xD1~<֒>"IrvNф4i# |9W5Vɳp*ߣ_3T .+(pnL߄_i7#`X l6^לKHU`fҴeπpk~ 5>TRC4[/\g dmǻv!&ּ ;CmW6!cCA:BiHrւnOhy)IdYTET@֝Bf4ʡ0{%4ѣa`w~SS>n:D}C$,A_0")X6 9i$;+$~ɱ1|y6qmY(kQ*+Yd)Kͱ88ru0>'u%A~ɓ uUO,0"?z_4YN4xPVhϽC +% J>J|vGJAI|y2"yW!:3ГмA@gs KGW\vĖ9*f1EIau{>xv %X'RY*M!s*NaP2_`Vt؃ 9w5~UtZ?/HlîiS57ٵ4^LHg \Ɂ-}CNU/ ߼ƹ çcy(4=e1s 46sMeAFC-k/v[PF\t/۱ܹ(_h=ͶB[ P&~ƌ6aM uVꨒ۷'J՞͗ x3c.I<$DЋ%.[4㍌#uMBT 9:9f! z)DxhVLOߎD3P4|%I_1Sx~s,K3x }M_{R rVțwiڟWnFmrX<$Uk'g.8rx5 M#gh 46=_JGR><{u˯s'juq@tHjkvYn{85 AJvoL K!,)CňCNW.;8s :-J%E6wtTznȧ$Ʒl#SSA{hUOfYqr\Ne΃*f'C%)Z3]zI5 l&W =4_[AJh4(?2ا$<-B@>&ϝ?Y,p߿޷`jCL!@65I/aq&,"ྩ=#Ϯ#=ddwv#f\ӎEs"4R$䃃rzx}4q@M V?zx)eO8Y":1;u'5tM0/K !WFVfKdȘ1A]3> 8\OCV|%w; 6(ccPuxq7%X;*nz2 5Lx1nΟT; ֮n]fQM{k˛wX}"J󢽙kIc w{1t:*#7ɝ{ -@:"n[/niHH௟~o1 5&ؔnb #ϳMcw@hw` x\!Ϻ*/D2m|^_y ODxK1L 7aEAYۆ`U)cKbL7϶S݊ @ A-SuOJMsuIJ[5Y߳>B[nf`K4UBCm\z~ TivSz6\h[o(|'h.GCcKHҩ ["U|;s+pnu,8)ψ:GPla`tLښvC7GO0CWτ8҄,fśnv21#< qwNJae*%>:X=&RZWSp1" m{Η7v!{Y yLeX8J>G0+%y¬H쮗$mM# %Hz{ICG|v? 1gBB&@K%(%L@̑1 uTe)3x_ o!-0{a*XtkZ+_|R}& ŷ^h՞L~ʰ VγKMS1ku|:Qnz!v='[;2 orn"b~Џ ŏdGXzw12o[FU pfooEOla-χTz^D^mȞ0lu #dO/U[?-Nc7*`tȈĶsb9RHG)|, q XKY b )){V26h ? ,z`ֆ0O݄&R-@E3*=MJ?D=O~3;$V'8lN}b" }Ijʃ.ʯ~L "eyIu% X큨^NB}&ww/fYs8Xu_"4e`O ¶ f5!.fU ׮'G#cW `Xtd&"c'%g̋#^*KZ jM'OC3n؛SaknJ]|~bS7+ۇ"FhGewA襸MMʼ94"]>th2٣#`* 9W]Z)'ʙLx7\H_ i*8fQ+'PRb35[i}(lNx%QL֧oQuŹzG߄ V.U[S{qu(cc`ƃOm^"fmz~Sd1ᘫEe2cf! 7Fϣ#0` ͞/(YK?8qCCWrcxK/jAczuj[!c1q 7 ;gcWU[;;lKSVq1&Թ[y~X,rC4 #nf)K3 BI矀LW3 ]8Т3h/ԙ@8C~Y4\[fȣ@ZG4sYꋄRa\ 1n;L#0_=N̰U"-\+._AO%/28”7y! Mvv@~ pZ S7gBǡ< 9n2}^0 ؀f4bX!Zi9P([fxD;#mAbȝW;1HQ)YNdo POjQۅL1dv0,i<~|J{8\W$Ky<(W8g?vDfw+Cξ%w"}bl #l*ȿ IRؚ0))"@^LfH|gzna_ί>:.f$\EdN[uwl׹Fȇ_mL?OR&H9XP@r8xf6IݝJ+L0rNh5cV0X%y$C8vw}߄w#eNS/yVyͼ^9.O /è![*(hUtIiꚄ*4)k5J9^=`e;[qeF ^LvG4_\5 rbH\SҮs:0TˣQjUm[y%8u%ݍ: M̶d2yI՟xQ18t0qE2&zK}D!J7cl>JH_ѝ|M.CcG6iMp~^(7_bah", S-w*l)"yC1p$r3r02ک<<'GlKew71ʱeֽh<,[e‡}XVCGIֵF2M% ;i ي[uєr6D$Ey>UF=pCOoڋ"14Mnd XkhE O=Q'dnd'\ mjE?pGooWpE,$ 2jݖDE熧z-hp{BiAxzU(&ڧJGL0/H@PS:.'gOX5_NYIw1Ή 9fFnL̛sZk[ݔpKͼ2؆!~Bfl#Z(lxC~ .M,3Wm+lL,|%!uϢEW)UН+v 3$ѭp/ޕƣ]c>e|~k1Öق8NXtWO!%8iIp{*KE0uYZH#5rp"U.+a-|qzF5 ,(ύ_j6Hb+B7Z@倬MȗD6Տnߙ~:#rωIeh R;-Y?,nk7zk X UZ, oCW7`Dw=MZͥ3԰ #O~ҊM99ě!TGts{.Fj՞w&҄h*&}zW^^/%#Nv޸K*+*v@ZW,Zw)Rly:oL|kkl'Ukzf^9w>,O*Y5! dOd[1vrF455g!ca&Ak8w!cev+S]yFC_e䍛i[&< G,d;jOeêmX:~`{9~i*_ۍuVt/4'm}z@nP7ͦ(6]Yo 錶g$*\S`eTv ڌb.Y=.Eo 5ӢI'~Zg3A?&7qRe$Ր ;N!sR-7|Թ1f9{6n;A}=һ~XxuHܶU~Vw5lzjތYC`qxC{1z 8d qE(x}C+){L^7$qYeWP+ܹgf+,\hJt9J\iނ(b8-Bu=_" SSqIi}Lb[r"d1deQf23a pdi3jcV;MjLә1Ԓw/8M5S1k8m8JU.Rf>R*̐]OcWw袍Eqm>z$,X@t[N!7!*C3 p/=+͆7 7Jl~TE{Yg6NrxNA`GVr s *14E8æ'tk̐{.!m0tρ~v$HǨd|]z(ȨOL5"T _*ha\݌CiO{?+V~LV=V<&dr9P+%^L? 惡(f f~CYӃE\ȳ.bE3^H[2\TL*2MHEgO9ualp -'ٗ\F9yTakm(ba=p0uEک߀zA@݌tt㪔dޔ;*%^b@jL,"-7oi{n( uv-ʸ/՟v'7=jg%c'-O;l x#t3GaX܀؄Z\J&碯*ϗGӉ|:w,'o/CN R6qVlI)Jڨ[5-'@xE.%|]YIN@=fR=I9p0t>܅zب#4ˊfSw&zyXuS5Q{f/@& (@.O b]eN;U3xn>$BSב$T#UU7rXsX#G-Zy8!-õYvV *n3_u .]]eN#Ԣ+r\rM[*5;" E_,M)py CX~tJ ?.bvQ *o N̔]v1P}lvfZ|[DǷ}ba%RmU~ #ۥmJd55zs]UgAȢŊ|iwј5Q(ߤn@߽F1]Ӯclk-iV!}bK ZESI]002)??.LRb)RW-d`O5WirZtvuFvxHۘ,zT XZ T}Tq8;3Y@muKvQ|orӽ"#Ep(mX|l|{LRH$=ŞZxQ{4llkщ?"$[Vdjnws/q8N:֗iz|Kyfቋg W\Tɇ;ҽvyI5 x-`uY &7d/8N.(xu5]צf:̴z+8N?H)O]'%bNFFi)^1'0A& d|uXX|U<.cШPIcS0b\Er/ D" ]RX&wy@kՈ8ER7=i j3lS=sym=i.}oSW*[za:M˘ca]'ec8D!dKIj&QW}5.JKY6ȗ@@M7|ejEx+|Q!cSֈ7_,㝾~zBa=HH$ОMufK~YPrӊfG"GS}7+$^T'< s9 + P#l1cL^foϓXr&U9%YW+H/f%[/裬Gt܋sjD<*GnPzN| h윱cx^8Ku2`z[*O|#<8P{r4?-5-9M,&7myD{h6u]wJY̐W?) Bܾq/|r4Qbuא0ߍ9  qvt]wdl  QIn!n/fEMm0%.H66C.vܡoM|8C!HaϪ<1b#4($P:;_EI0⺬uKfϧ!+nov^|+f^?gGo&˫M~uax M{94,@߉+^RaAiU%gNkAL\'3% K9e@/49UZ.JHwlAV !8_tW.zP4#sV 6S}ZphFۆp|fX;59z m,^224ϷJ9( UHϣ1%;,[8A/j-C8m"`G@yAbh)hXɏ49z5yX6; JN(ץHL]SVZ. g4 ۍ|3U)SV8?hdu[6iϨ* m٧+<lq ҝWVX6/zCKێh#6)~HDvx Q8q%"U\Ɛ #B^ʂ5U 3 * eM|Xlf{Pl!^_#P{brP!3EďuLD8OmQmNq:c)"eoգ="3yNԥlI:'iK,ùXx]]w )IrDÈd"]1TpFtĄQ69d@>ܮ QqD_DZvJHR=sy*o4: AY*@"ef*>۪u|kQS'Ha~eCI>KMJ{jhu" y ^2ZB J'rB =5'Knᎉj6Z jX] تʖҜ&c ۇPZaƬ#Gڢ<ّZ:t"qzJ3C4\&+?|es3>&ȻV2ABDŽ̪gTyew>h!"p0aaΠ#._9T*`xWR =mh1Ea]2OpZJa Q$jeSYy{Y{-4=7f.O W8|Oi.hLCJ̯~; 5I6_IO.KyuZIriCWRɱ@yGD bQ9mq~m1ֿ8x~E)Cvsn LZ06/\H\ FolHsp;>*ytkО\ g-*!d5j@wWǗi|-l!v,1=&)JƍY7'[]Zmڙv $;5 OlF4tܝ")$yS--h(|oMt.uz w9bXaFM̰}g#/ZPZF%̸R`XBm[vUZ*Gh"~^%F"}s)3]~;SQ +1+nPKT~l^ ǑXqWc"njg>Q -_-p̉!n:xC36x1FkWOV!:L Ѿn|& nOs9_SQ@["y3M |ޤw,j-NĸXMCij΋(+]ۓyJM(3.!٧VM"|T"/шqF\ʽ#_ Q)җb6!^]09hH. uGFH IRthb:nG6'g08|!TT-Ixk*7ZFaQ/,i:VU":):$13=mܾUA?sⓩ72gS3qMbM%h(=Ҧ͜j=í'M_T@vs&wpM_s~6|v :}s(o4HvK%hB-Scx:AtŬ50pOfbE ,/tJ;S_}@. "ҡȺ}!>U;40[SHuJRJ Ec/ZĶsz9Cݵ#.PEpl(oR7_W".'P p0Z,[6˕s^B1Ւ)p%n}6JV?vX=nKI1-_|rt@sl5Sk|Fz[Ivkړ&GXIH}'M #Y޲)U  HDlx{g+71j'Ÿb.A+l68WtWwʷȨg;=+(o@stxbvv[eYV@mWb <:3JtFH LԀknG *ȇLJSiSڋ+bI4Jh =r| ;b{eL.t0+罹u_ yٶ7ՔKʖ@GLB:;qV-:RIU5 *ȫ|bxۢ{ji"ܼPY݉kS26u5bj5iaGmaǤrnU "I^q/<ЄRD'`+-޾j |W2fy0F/ vz=SEf!^NjT|Wu^A1Lmy7D5!UjSpYEoN%w[>T "iG!\қٝI_'i&c,;Rʲy^u|UuR, a2{VqQ^S<%icG 7ںAlt3EhC-G*sU2ÿ́#I]f{mlNhNCTi4Ǝ0u5hkϡdxt95VS^vv疀J^VN>O<Ŗ{4L6>w!}yΨK7ǜ/Q;"tȑĚS rY0XA5|uc 놲9$/pzcJo{jhF-V/8 ܻK r #d{!r&^/;U_,P Vno)3 rK}ȯRVS튷i&? Õ٧iO(^A+ =sݕ=E\It:\PxAu7!^ :ІG~ ijsm;PmH0}D*~DGSԷKGiP./he dŊwI/+= D VБT1vO=^ @L}x+'ju+)΋!GϗuJYQ'Pz=JH dz~0Y+L;LAd}]|w2UO1/w{6bO[[02q Dۆ˟V ~ﻣrU#6q3EK]DۂJPIC8`ڣꎅtSlr}(,'ImPfTh˙w59]YOƉlwϡzHUVid,H1-$/HK`}p@ BRyCި06ʪ|Psxx,mK$=ɏ2o]Y6}lhot({bG7vc%RCFM[TyzTĵijطx ?= }#ץ*hz3Ii%3A!Өo!)7IHvУYYPXvbq_ [/xY3Tr [f_*$/0D2iY5\ &A7! \}5|R0ٷ#bF}s ذUC_PZɣN"_;e^3)lbUrø %%\SsZ'IQ@@LsB̸~@ &E78$Bp (?aw$h/MGm+m\#GGڎo2B猂O|{%K.Ûa9cdlyW PzbHLxɹ%f7|`Cx\T9[#T דS$֣ {KhCCQ: @;1n̫ @( Ϫ]W2qĩXchqǘ );^`%MjbTb"E9%^ -*nn数,P\^U"PiMO{P-%hl"ٓEwzw?C fE;sIJ9_l?.}IRooǕci#8̦3~_Mp7@ x %8LU=Y`4P{9 lLL@eѝ8ǷĈ4e욅٭Jn׈pB Pܲ]?H@JygoV*ZT;Aq;#ӜyI$O@uz[9;;j eXy.e^W<}lH:üOͣ& f u[(NPr6%6E !;)q?yxZyB,)r'I? +E%պ9RDV^M.)=7Up=4yW(9 _-sؒiXݴ1#p-Ov  6;A<_WʫmMC0LTkaGӮQ(R)8`*EɽuT. AO #;Ow΄?|LSx{cdztjC9ʤ:fwk SZjIDY22UOݲ ŦvK3Ә`eDF&H[ԏV*&$N223q w1xLgi<~A~p(͐2!Gc`SD9ə~VTE4̵2ͼ^ϱQ@(44C])B [ނ,:v6OI?[9r3*M$F|' k) :W Qe Bj[:`NfOEs:# FEA+A9isުz:tlЗd]|bK XHC{<>z_O&lIUZ"KF<@@' pC 56#2>[ê=HcalNQ,qkE[Cԃ(ק]1$N,O^te>l&wru,c4sݽ.xq$I'~eYj+9H Εmy\ƁlĥN.{n_G*o s߉^v-AYM+ ڮN-Qa{%.GT+ <dPdD7kSmLk &*=Pt%ʼI`4,2X۩=pq{x<Ŏ;H:Β%F۟n .DTRaBޠĦ\0VTV y{2wjN#ӀY ۊZ2G;,)/᡾cd2c. |TBO))krv84pZU6) R])M>K2}K"ӝa̦jXNS&6 9pGZPZfB~|$bB|M&}ܺOu[+Vr#w; 6~1ߨ:?{(˷ݩ{~6Xo;rv|&JN`BC=~YIVcOLjo};H C2~>$֢x>2 @޶k"&C`{ƞW?_;|F9 2KSKn_jVz򺹘5xépFmCZ+WRNO *xWv$%64yd1aX ut@SN\W,4}h[isZz99bo9ebY4}*qf9Qς!y;M=n'ݶ )im63Ioծ*Yo+.b/g+i 1n:[#ow.lun*j؛cgVG>.l-8aSKsBSSHmaOsC%VٙW ǂ.tӝfrx.9_@axCF],E6e=%_]?>ؙ57v4z>m' (:@YS=B`Cс|r2O3jBR=I7[3IDiǖ+[@K'[‰玙+5-JZ׵#&rw;E޶H! oqehnR~Pau^ *7ݝTH)`\$h8lUW`멲`Bp=zZÀMXa[ݼ:Id5CiqTħ4Q]?m3ЭB5N_?ҡG%vRn4Mwv+ga*2͑})E ϻ<)F*Zw$i^LtpIP-sVG"Fk,9(QK)a_t}.^}sf Q0 r-I(RG {<̗4z+>A1!mڗ '-8ztZݱ{`u7QZ(j_&ma۾(vvفߐ;畭TrgKE3Mt /cťMR9Lo% ABG䢉wn]c73, 9lӾ[+JORc5~l]&ch޵WHO2Pn~.V"Q#nJidq,0Tz]f ()XΒlH&L~W1鰟T`slD3HM%8N|6t+yK"|y"=!Cʬn\S7DY_+/贜oKSm&|gĵ<:QFA36%)&F$V0);]LOGNAR=uwN6]?y)U0F6ogU3c˅䋭b~yyguƴk ]a9Gji7Pkgp]F،+vI?69uߦH;R',"1_Dl-x#-lptù.6W*H;7bFp59LK0K¸6/P#ɀ]nj=ϐ `\gId!Ⱦ @N4뮲qU^P*lNs&~~,LoN.4xQTkK1m\VULQk; |3 *yKSǟpb`r"d+JŀMam:^T۸ޘ<sƚh0/ul0EbYv_ wPH>Co)I q{zmi +`dc'ȯ%o}+zYezSgq+_u t&)"+33 򂷤xF\\ɘ?wa#|f޻ГBݘ>@y I?Gfؒ2dNG&ٰ]w@0΢+oF˴/ ӷ?9# µfߓ 0x t4\ʸkTELA̍&<,Yph 4) P_~W R MdA{2'[ϊBX'b$YUv8 ϊl,b"7(/D*<;) T"A%+j[S1,hrTO$ſx  0e0llߝy<ُآWx 2*J, /(,stcڇqXZxpǝGP;KieJ[K*i!Lʋ_L*\izڳQD58cQlq>0P3БAzua(͹n@tΛ4/=!Y̰հc鰡 [kv;Os,C>p:hNx _@[C3,יp M-{=u]ݑ-R{#@is^'teB=̃jLMA7H)Y E@KBQD&\oͽ(qA TغUUk]״bD>1 #*s*%I975LL0R{jZhDo. ن{:O Qwv͖-~N,a=#A7 :@{cycokpl2Zvxh\29 e\(w]rOoQxP1@"ȺȈCMlJ'kϞ-,uFzS6iѾ7PEr?=jhW8(axmB7c2{jRCc7Έu8!J x|+\nGSZ+mQ5O4`P#1IATfPӢ]d/Z\m$dI(aѸ76!Tt dAme|}]Bؤ(Gf ,6zalm,ZS:TYh|~;擄J}&T'hBƧX0-W`%BF/W Gh+U:o;IOLIW&,kr` mi)S+mYpKM~)`+ ][=yzτyHbZ.$ϋcc,gKtO(ha3H㲄{-$0T)0*l?rDkvHܰ-+kQ "IysN"؞^t0Y. 5 ndJZ,l]gXK3*}bT݅>u>=Im%V3}"\w#<JʫRağ_PU>Cأn ӵOX(@ mdij3iA%s!IPy T~6QB@K%sBn+yM 97NUʴIp3R%ܳhsVޕ+&(H°ղ,|,0%`'Ks&7Rg Aq͗.߷5˾i,c =E Sgx ^)Yp ԒRX)+ȑD 5!M2R!Y9,w 1 %}NxG8Uj5UɄ}>#?&hڮ׽0'8u),}=4r_) S@اVwh.^inNӯ>, \^uCM\#ڇP/7[}d5tvjm@tIc:[as۴ %̞{BhiD+,?= -hM}%2Lq7%j}aOj(r7v -k'ZKvLW'~0e4ʏS|&\PzۄË,l]Y1K !uX}]-? 48L;A36 %3"Άh叺qs9U[ϱ߳~(YCxeR9 9pmHA(iv(E8@5*"Ңu0+Uǚhɘxa:Vρ4빚KF.fEթdq}X>TeI59|f}V4oɣZ+ɮ "qZc:$yS K )kpNcrYg[ F#mg yM 37&rW+3=uyE)V!9ZSڷ;3&,nYp08+Cp ܿU!ϟIo'5py@n W#MDч`tc54F"a۽$ӈd+*MjE&*86È:;V]!-'(vVlLTKkGI!诲j;R^u6x9#nS?̸~4?֘|q~ÒǮM" I87( Sѡd5nU등lj)sE;,^h&LTAeA F&3\<7b;dck0:y0loFz,*2qql)89cnP~TM +pN,Xitxބkzp{t(T! _WAPwM+y!J)|̘$}4%ex,j奄^'~y?cn)0[ EUJu6-emőg\_ʟJ{ppy;M6-4yƱ{c j-e<gtid.O赌bPΥBOF7/?tk;_ߪUPWտ ʗ.G\pѰI>HةegUZYG@I0qEɂu o522WhJ{tP|վAO; }zǐ~·kQ_O:]$^&lT t6@Twl5` R: wf_< @"Y>b+}Y]InU^D٥1UҍB6@$("imNGue"^騸Z= u+\ܻ-ѣTwŬ ]؏>l٢/ѢXAIwC K'ae)F.ϖفAXNBCz279r5lݓufYk@t#XsÅvRE1 R zy#%S3S߱/v3bSLs41z½zFZ7ߟsЩ/JA J 1'C| "6S,~e(շ% dCs ST]XS{η{c/O ׫l/bvq-Jmn]R_Y?_j!0+ڕpnb ƬY<3 /3ѩfnUu\ ?|h% >tE1lrbL!rhԲjh/uKHupj\޵5!0=DB&G%)˴-]ZqW K)/'Sś>]Hj[mLt϶ޓ{+]!0@a=է~X@mGgMN1JU瑯Y*my\TOy@ijԤH0!GNLFuʩ.%w+|Vݕl+c5׍nV4dDv6owLEG,NSf='F|GVXR^ZCqv̐P@y]/6_ ^A04nF ,R^䘞`wdk򄊙<Z ڞna_!p71j;MBtjM-t[})*r ۠X2&袟M#uϝEiyfqld)׍>0&X 8%wdׅ `sLqzfV/QI\?#PA3/IB*~u!(,g0aȮMT}Y2<w+B,%CԌ6܀+0M-&۹ vyY(99๢]:vM, G{e>ѹµ@W?>Y݄6'5y~CTHmٵU^ZZ"մ䄥兞͚&^j Enmy+lY;>HɊù腼MŬ` v͹ʿD3,"L6,95:蘾gs}PS5٪ダhR YG$]I.)9EtS[Lzuta;93&!,.,ד-)HJ#R.اe\QtIoqpb'7_U6h>ŒT&#j &QVePv{@q9Y,EPGOŤQ]s1>sYZ88m>Г2֩P#'ALqk#u[|e4btH ":xySۇu}MZp݁-C,ٰ#P+XbJ0&+' B1+]&K&^˥7nJXq[\&$L夈TKChS橤~S}X11 ,Q&chSKῊ?QܬlkW'e.ސN@RXؔ*̐jHF6Y aN>`>wF*+N1k^=kbGt+.J&aCE_[X%Դ%MtUf|k={E3>uJ?TaqPLV?N8dfMz߲m#WU`8NaW|>.)} õ+Y4 /Gy E*݄c]NY-&w>$u+o*[(KŽY3ps=dA: NO.G‹Mw`.{nf @ G9Й˟ rpHg}ѫ|MSzl0rvKgkpo YXPw>43eR9EԉD"9lO$V{lfj: wT]"\ FLIȑɹOV 鎄@{tw iK s.tzZe5n{-LD-k5 3.yKĂJtq#"i!E n!a{m)u6x N&xxzaCӔxկ#{s#T>]S<tw n [D+b1H!9q7-ibtyYgbU5}pYu﫨4Nz9La2-?'gbҌe,6f9w)-% n9 cefI]/LRTR:ZlK'hAX5;[ݣBnzi&1 Yf}'O.HUB U2k'v۾6,d3B'82 ͨOYFB-pNGSt[' W,"&?®2R84 QFD=&xluq8~I;1 PSN(#cmLP5@h!Hg_?J_e{ZiҷQptV–Oob= tk+Po9 CT HZSx%l'ޠ*|*:/e = u._ː.U`n@~D?ޞ"{>4 7>N AN _i.M)˜$Ֆ;~ bԙJ>,2L5>hhn5ohV"k?i'w"m0G|ldmeBv}JE??w@p1ioԄC#*G|8*+7 N@7#ƽ4?TE&*]$t#UGL ak*rDͽU8ySY|L ?|oFHLU1^Sp~0eE"#zd>R1+||zZ+%ۆ Wb^ӁslC9 4+FKЧ̋s;8As]{]n5u' #6R=d GҋbQFBSCy+/; M70Qu 奩^sGGࠈT|zPlf,o#4??uRmDIʹ% dAL1$44ͬ1Gi1nl4zM# ѮN<á& F-?\zJzqgr`U%ѻWAQ+w{ X-5n9#UtDd^L7`0"fM;z x,K4+[;28í#Jjso`.'&VhŞ4^PUwBw2X|`2m"1@F'\o;C3vUߘT[jπtz}?-17{^M KK0* F̓ͫ@sR葹_L`&Ż_iN iN4GY݀H~g-븇FqbKHO"d_dMIE)F> c</0+ͻybHc=64/LkʅSG$ֻwo@>[V$Nj3ǽ2lwgCoU&bda0qV!ZvG o-6Sb,e!iFyh)ƆV®ͬVU9t,Mϑ>e뉮OL:|A<`~O=)8hwɓ(`,_1A{"'S\^M,UOuh_h*Ԝ3l+0Y4) (t ;1150;A(]) R xv0vzT%+N pL"AT14s'WGE}jcN0Oz $:ԙ[sQ5o+ibt$֊lE&+Hj/. Sk7*G,VwA3#A[IHCF}ZӺ2<άZ*ۯjސ :Dtp =z)!AGdww' E'U4%L3TajH8=qy>w|C(W2Pڽw<+u_ :N=hheCD/O~m:,*0{GB{ 6ĔjW% pS/)B ?±^[zLuqMBQqtB֋fE0nE#d ]?")YǑXF5$Whڞ6{gh]|,QK3rAE ە1^4.?{Z{.^X_L ՉT1zNXS+^4l0Zӵ"30XWKc4}>LeHdZܒr0Qs٤# hb-:x{5:֑XQTg{,en%C>A;Y.eyUC\ GQ/vVK9q <~`J]'{6 Njj;W( 2ehFc4W+waQ!9I |C0ʇ=>9 ?T f˶욉Np5; qDPEy֬.XN 0 ;ij+_Kd^+I?1z)o]QpK B- Z6&dEZ>6B*M4C28؉'*wOb\><,L;X "XA2b0J&.9|_&Z5\Dj軟X.|[|2}S^I&<3F ( yƚzz["صd p_pJvW*b̜m8[9GPOڦYEn}V󮼨{Q2TQI}'giuxْҕY7̂ݫΘQ^Kv c YRM=IҮ;nP8ks6z9|r/(8/^zssw[dzpa2s[~(qEAT-]]mOdSTQJvE]ڲvk E$.yIJ~V]5Hm(GW`?!W ZTWRi~<5R uS9?ek(nBLȮ~V|!x;d_[:"85ӍB ;C iaVx66]PҼF}AOUӓg[}fǾhew$vk(@l>U|{1⎓ '|j($dHžy>ޢ3RzB>g@y~M<&jR?ch>Ɓٶ 6g %u%Qs\HM(HV:YM%#+%{;tLVgB.QwHeT⁄|Ln{ӳ;Qq펢zw7N BNO$ ~dR҈g;O [yD{Eu\7vim& jzQa "?WyĔ/y!?TǨw%;![lu1hBtp*6f?KO͊Gh>&^4 &BʤF؎&ƃʵ4*䃥hP7J72 5go׬ a"a <PdJHup/ )t2iJj K`:sdnR kQ d} 5m[:xo`jkD'0 8-tMEڱx8?EZ~%#mrN?E-PŅÜ Lb88Mq67;2U2)&9T6Z?YM wLJxl%olPmpmx>iI='Й]ç2jЩRX=Su%00ilt8B=7'I7U; +1ܳ0c\_-CVx~@oIv6L;n2-tƌj7 )),`uwka<S$!| Ti)MR'###?%=UjOƠrMbvO=]KŐP5:`J@ũ[Vƙ̣-ŕ!M;Q_iGդ#&RΫ{q\k^m3y[j:iyMCUhJ?= SR7 (Ģ<ǜ8Q탌˟((P^=gF3H=N.VB`hV?4In#1xM@٠"ʌVՉE;f|42*NX{C[fWҶXڔVQLg p.^mF: dBWhZ[c< ~IbMu06[/cF_xfN-a,-D$ok㕙 TQFit%omah=hBloAГ@CUz7 <$`ZW'$^4 ĸj͉McԷhIFOߛS09%+kMTVCԴ>iXAX=ix{CF_"P#ތԼipHD?0c,фRv[wBt[d~n2v*$*iT=!ExeV'QVζFNU폱[zzu"jJQtx$8lm )Ѹ l3l .qm@rD0"@6iHmya&\R+LÄ >۸"rB"_>bQht iU_=Ye}ZIuaIfNo@c}7R0THYZr/6νWg sDH`4DճtHBTb{Ӑυw$xۨ`,hS˝ OQB5ЅfBP[\Ԋ%d|fה_.5_}`7,۷pttGIwI6KM_Ĵ3aq >%x !Zi҅Zl}!H)\ jC+rQdw^fL I6IjrGipU"}:U.VP ZiAk+e˙]dnU]|۵:o{ K5t7 #1 EF~o DCi7G 3އxY6C/6>\OW;*UMs Ёi)sRvX_tS2;GT\ 4c0Ih}vi/r_aŇ@Eȁ'h%#K 6 NlOws.8sA.hNtoKUkqIDzHO̝GIecuX҇ڳd 7QKlmtRno :q6Dij̃|߉g]z?PƵ,2hĹr'sŘQ0X;pF/aO0=,3]#G-$8r``a2+dNhy^ ]z4@yf霢90q 7Gy83ŊsJE"5ewRnX:.G t=P?kABRFy]]SXS>Hj>Mm^[|Ehk+ka-Zʞp !@QSBri=ǧ} ? WAdv-pQ,UC (2)sx{DϾkLm0iv/YF4QC9a# O bp\jH$Ҝ6g$ȹ "#!lGY|!ƮybTr$As܀}*[' (#=?kgL|ػXRj'vytQIulؓ]cD|)g(e"i-hfd>_n1*YVszH@-N{l /J%-&<"_ΖhǢpڄˏǰf'{^A t<~{ݪ 6}qr꾼E5ٞGR` (9#aފ02f?<]ULr؆" D m_,[Yqkהntn9Rd:e!k[Ȩ?l->[mj5N(TW/F-roP\zl2!S:`BJpjL'72*qqfAp, I0w&?%tf ͌w 'k 擥IY)Kp=52;:z]^&|i<}ɥ;DtKvMTZ%liF2L\\L|J*8`=[`w/ci!\ͦ6d# * .I:Arщ[IqZvu4 ^%ϩuAmz@oda,dexQyU9~ٷǒnn^㸮wNFGAw^LeB>$yr>ζd׆u 2r0Q5,dĪLkV}^e}˔Q&ߐBY]2c;,mqlK}Loi&PFai,::̵fW{SHɚX]Œ 0\.~㠹(R퐪M#>AY#V@._п2 $̓eP\|e3RzZanV΍AէS1LI[pcźAs NѷPZ}IF Rd8o$BO"UWeB=L/^V[t=AQW YEmȬnQ vB==L¿%W96S̱$qMђ"|}R3KE+I%\ʮSNk v bG!'>FX2pkɂwž]AGwnxM9cįDZOOdD+*⬴ :m%W7ƍ r囹bu;jlBa8K '&A:B[|M%*In^Ӽ!us" ڄNyjxs^AM:a#[oTC⻆͸"Rtb_!wqBpyUqrl?.wZV\6e)5;4>LSʲwear921zW!TDP.wo![,'ka?ɿy83AIMrs{g AHyʁ,.ģ¨BrDV.H))u1NKzgUJZv&wn3! "N[Os/QlXwcT@fgH9m.as㙺{K:9hU4~H2L7oow$Ԅ TTS(Kfg>Qn~:ot`xUSH-C/7H2$15!)h˴i3!h$f#PT]o5ȽB1zkOw9el`pٜu3& HóblV$V}CX "Mjf}|Yh@Kje{?mlX[<Pf3N 녅˫L9r='&Kθ+m#dwQ=NEOs ˋ-Ezܻz/F=Wkڢ$Aʓ~ Z'zk+, QDkc7?QS$94@B5$4}bPQ orYB7y`ܵV?6bz(dWLSz*;ucPx^<;f{?{0~š݅ڎ::0E`DW+D_ٵE`Ƃ^"Zf$nFՉesi%><[Wљߡ \Bjl됌an`UƻrmuA%͇3ߟ!tJj7H]֎G`Hϐ})rٿ(a,}=tV ~X8v ֪T&ߕ bʦۙQgpJxZP*:wchK26,ՁHCDXe;]F_MSTs"겾VV XwJ&Ў0M%Q;dŦ &u +\UaK×ƖN&5Wкko8FIxO ¹S# }n=d& 5uYj7ǚ-:ru_Cd峂V,]hJ<H摇k-YE~m sL$޹JJ:8RQFK1SO$l{̻DhUHXSfѩteRWf@󒊬;Rnhχ(3 0x Ja]]ճ롑Ͳ̎^'!R4#5hV]rHUttؾԍ9"ȗ'%" v+na8C7dS(E]ҩ;N}m)T-S5˓P_6 0u& 4g֫ l\1JR[87V}lS8] 6`4qZٻ냰E] lݧy|@Cmhxj~J3>Ee0,'wf G)yKU~fZ6CjzQy+ 6qoQ:Xt =L)yNڏ-$&dl%sCuh^٢:GT,w5<Ո[bp)5C`e,A=7nmY+Xo);, 6!lw"ґu8e^9O^dz3Cؾ0b?-Zx#s9GN4kZ'rb .ނ5wIUAq|;kCT>Qۊu&y=&r2ZNZhقqO` Z0TWg[ăL7Oԇv"dX^CPřnS~ PԺPUnLu*; XSS v 3s}v6'A(Q?,#d`\yk+}1FU#e [/oP2q#4={[0襥UN-m9>2ۿˏݪTNp^^ϐL1o{lUc[CeZLo1\ 5C|60.;|72" nT e"Υ(Uu$|`v&`m> p xDU2WҵC-XMr 71z bPUZ4!WT!~>pObdʏm^RpȤہ`ٵ /&ˆCo8y_u9ԽUG2;kӪoFS6c K-JF9y['DNu*qp7ޓk2*e{!OT(.S͊a&p-db2}GY~C 4i f~xHSm,0V0 /Et#_ҏT._'*a59t K;R^DWt@SңҀj_`+h`l"z4!)ļeش$U,nސ֭"GPegyԲvVZe݀k<Ή[|zޫ%CZ0x&*:_A/j1Yisnq.1jF-yBGE]MS}b>f^ 5ķvZ@iG=@M >QzH h;:PAAǸ^vnW4, nsD.)W3q@ME]]-\< M*VʜG?RvrG`"r+lxwijwHZfϥ3D]gvм37bݯsձz gO¯@n`}Ooj^~1 ]ҨU8۶7jEqhbw`/~I6='+< Menz^рděy̯R*8!`/e z쉇O-|+;Sg% W}Hu/+ bKNqŬ0 <#ul I yF ]3g> ^1Yl 0h4/To-R=ve[$Xᳲo|;f\{֖:TU'&(F=wwHd(m> Ù %\y{$X5Z>CG}ߴz6 I S;qC}l3!k a®iQ8Ci, y13[f?K`k͡Xsد]frXT p|V򑕆cWw[ YcEP+b#:2i/:y4 :-4~+qJ0Xͳlw&.r1B􅆲 .՝ |HQ۞((iRWJiWD}qYswnFNDDžp'Yc7R]P=nJ f]HthWBΕ3# :{U{䅁yLJ a]yqeXW3=ok'%#cMhI(ۨ+d#M{,݃J;Igyȇcl+o3SM▢ T+?d3I*Kע"o(D k&*ޗGw1R8׻ey7dZ WrVu|Qi6(F$Ҥ7”`ݲˏVDѶg۠$^)5V2igq'UE#3$/O? ʹR`57wQwݍ"jia])- -`u*A"9ѵu,ݏDz7;1jK\.~b/Dk. +Z𹧋ftѲw(~=kX+/45$2YBl/E{i6jBF,_z݈9Kck~2}(-.ilڇ EgU?s@-Q<Ạ1 QCFm=QG`wc6 /c>>;mpj V `~=b'q1W2/4LE[(*M'#uῧT@acN~U5X}_$;;*Ԓ,Ct9T0wRة~f"`OC]|-sRNÓ4n"Ӿ$( G6p᳽յD x&MFIZv9#äG_.nkZ=f?p/vpD5U']fCWGTO_) iaxhqt%%dVg…b8t,sp ?/;>Vߏ9kˀs}umfMP_[X1(y0=dhŗ 45NTn?T=$6AmC ;mw\@ OJJD,x/uy?dqUql)(b7Q^Zꄕ1fp_S8(ٹQofQϐ@bO]$[޾>I,@ cg@ 0/,cM,/ޮERNGVS ako k Vl8u!:5*v 1*^aj=:2S;s P}sh0]WKV") q)BFY,ilQU[/5 CR,YVʅ 6]"C \iUSd'ύQWFv3zBfQ~ʓlSڄD]-{1W1*]-ќ Z1o}7Lƿ}V8_j slH Mf-5Gb3c!ZvcJ!py'0!4׽D Rt/讌ez 5rIr[]^\A4idGbY^n>]V|WXTAS6K `e9XWw Vm{F}GJBsUަmUbv_ŁLw#1.zNyT[J&L6o ) C%Գ=kq(QhMCeyO ƻt)c7K=^KWM9)U= $i0۬X 6((}u5%\ 27l=c ;:lǜ؂ $`5ҔÅ4`7$I0hPt_=xe&M\޻E:ZX?T y3fluHB#YeLJ4`Dž~k38)Ga)f-I(4]@`^3}sE! *E:op=),*8 *ⳕ! Jo_5Ujxk5P@&MzROE )K.}^~${\(6-F5Tʂ(Q\ )b]a\Nog+&LQ?/\@`q CK|hoRG7|[f-e"!؋0%  oGjrj鵚$W{x $ ϛ+ vG@ѲBƠўc3GOf/|%+o=(Cڳ1CLO (*9ġ7֏ _`;\1ȄZ12Ӝdrّ*79 ?p9y5Mَ>iP̬ԇ f  ɝpH-GAP'BǑ6ldt\s#-AMdPq[1&*4"l(8\p:YWteUTjcz=sB:deWdd2<&uvkŴn؁ԇiBv] gb Uɭ+ϠԱZ;H zDؔ;R$PI4[540]PYʣj%$@JFraR(`7d7^0k quٌI42p)|0KoyI3Y?21=q9Z0P憾@xWseid #'ܜ 󊶻EǑl\Xdl"Pvs $َSߍ+!:M3('尜;2#uTf[С%w&X44Q_D!so ӌ`pN rV8YWv쉂*Lɩ?H3Y̷m:}it (2'`n,Ox"_G8pU@ϘQ\_ϊ0u;9cGæ!hYbLhG'iNo|*d-5<w~ϝhCS/>=~qJs_zh|ν0Ao 0kዔwiO]SH" cQ CY.)q xAA^(pKmִK!3Jllc/ϱ4+9ǸdWsW+L~el LpnWz|* ӷ:c 1~>t9$JeeS/;rMʂz,^Gר?T0 X7ϧ+pmZ Kg֤+t&n TYXnv-jfCc,K*M[]ᴿSt*1fx,FK J%\ZoIFgv'׌Z=薥* #EF̼֠p^ߤȈI@b[I<c z`҄M:԰1DIgf;v_^)039IHjߢ'g< !$eΩ"3xQIwngK u`u [ b}Yih? eb6yCfx2Vzb%Ql(ot[B /}|.ha5M_@3w/emZU<(xj#GYMʶ0[ w9j$/LK` dL%z^gjS 4EAԷmG$ ث5iqk^,h _Ti qBSZ%_T5W`S`U 9B#`Ea:ߖ16R_WO a2׮h!J}1>ě y/u;F<}RmP*K){H}%[!* _rLT4!lV`p햔8,` 9 }t+CV ӬKvQ:+aӽ2$g,EYS^DmxֱlSec‚.Y3@TԪ|@l@-{?]O_nhMFRlQ;vc.$d~{tYQ|D.j'/7Y N7JYSKs΅1rqAO}*hP‹Յ`Bw~U)an\/b:b: `H`N-E7ngHs"-"cQ xئaETGjFl6/|r(2cU ܎4ָ0xG pE`p'#u*< )bvdžP(?&qBݘ>/{b7JP|kZ/68KŽkO4,"nw*EyX6刺z2Ɔ6d$咋.U}pHـMlD$y51ld\): 1-5=q^Gh{Rpa9I ZL^3q { }jr\AnGa]]JX6 |s}l;,_S2{n#dDwE&{5ILWyIH$"6J.GG 5+j_&}n,9tܞ[yMs#ި΂D EY&WQ"Ňte@!(#k/Gу+[VμY9$^ySyôO&X|M7ua‘z6FvPVO~"8+ N8ZT0tn͸9c̬395vQ5’+[\;tTheJ񁳗`#\yb~"N3N UchDsqoLW4MPqqo۪,OeZX8Wfw?7 uJ~^{{!ncC0X}wT4q`l7,#\F 8zR쀄$.6_CH ͰBwP*OKY`6/$'ʅeIDeP/IXqrxBs1z,/nEX. i+9gwN sh[ErR8|u&0+:(j26c2 )VTV$"J:͉H mLc*ZN0s"N:.BsTE4aWi3+Y DIj.i6Mn0Y8kTqFصi1>-ڃDr&ʻ3k@B5>NKI;;YYk`b1Q\\j+ ==NddBwB?~D<g3Q%4(9T[cb`=?w5>R(cK*\Byk!:g?&-d^aШs/zljex-`C9(W]wme?E)ew~u*DRB]dq @M"/_B5LԈG0F%1fi> <Hcq =P_I  ([9aENh^^z%b% %$Šn#К))dbQ(oDܚ 9aVz4:'rfq1rFr}@}]lq<Gё_Aj 2{e%p/*f6"M&9}eXqt1s)+5|}|ݴO:[R J0"*zX]}P) 8)yj5H |}[e:7ӕE ^b1f`q0a!67Q : @&Uqͼ WMlnƬ㫘_󟾁!&V!=G]c6X'۽g[Xv^%MCe [=|& H}@O]+}~)4[oϤ;JNP;pҐ}j"J^ vwDPXeqNw~e~ SNˆ^*q!=4̆g\ʭDp G?S% GsZ*q\rOJf*= A~ \վoz*~0yg5E`DFSEX--ZYjg/}})1Xc k|B`XX6$CcT9N+FT_yZ{3.Q/} ΔG`RMeZ:K%AQ{:E5 .90wgEi%J%zӃ&*!vrC@jȌ*FZP'vo0@lsUASz^֋#dۂЛ O"K_zp? Ù{ <@EÝ G^O% twS8O}(iCfp_adg `>:ݏc[&OGg s١tr烊cr`ߋVAYP];P1k@3FK|oTer7Naƣ,Cz} (kAJ_|f镫[bKqK>Y:s8Y'%=k{FBy n]yY{-/_1JT %@/%tqox;myA9ő:9S/L1?H'h-IC\/ZE?{-^Jj0 _6fJ( (uE*"NQC4$RM&hmtk`.&2 aғl]& &մ*;8dJ@$wTgi`coF85y46",C}/#JLk ?bgo:&?8+d$< 7o^pJi׭#턞+/-YU^`RABw1*xvzץDqxRVc~!H{c ^jҕTznX \=,.4Sۚ~_x3.r|% "u67m4{SDX֔aek37lpjN8a=d8\'}`sus-s}75='Dm*mÔ'_qؿ^~p^ xPk63iy_jQ5Ӥ?3`dB]WT^K;8PUPۧo.Ո|lQ%U(ʉj4dx"x0k=:-p-`p)W%>$y>vc I:V „ mQ5^vSsͷb'*L2b .K 'kb]JΜcf+ -v,Qy XD9$BOwB;Z`yN."C/_`FqިQ|-l1e`&r9;Тq+>50u}6H1s*'ֆ}@} k^5khJHઃ>,Zq%ȿ,#p,RtIhR)SbUomʉQ8ٹL0N5E[g1nr䥳98qUs*קjաskaH̺ |iwW+1Mz74e^F'#Kg.UEB~*߸w]8N;Eu&kZRm[$yb<.H`S\OQhTCK;O-UCȲYWؽܑhK0mZƎ55l}!9 HCĬ1-pFD:Kķ ]KaMRBusئȘ!Bx@65/$1X0Ykm5E5yʂc?F=u׀n@ = \ƹ_^h^i[o#Ӌe T5 3,>bţ6F&@2ϭI]խJ:g(ݭw&ڤ4GΑޟmr1v7VꃫW.W1t/GY+-G.6+r)XW6NU@ WVFC+6Fh!kCq\`yN9 SacKw N^Osڰ}W|#i%7R/;q4SnW,gN~X6rV3ݐ{rNVH >}Όc\fo.XOUrL;_ʞ}iVQj; ~~D^v8]hd ۅ/ӮE-6@M^qUbXQ:`t4L#9΀v)W?ɿ"}Ac/!qxucnŠ܎bV9.Vo9~Wl?>WYlb!mY;<5îBnÁӑ/R9= F w׹chi,CF%G3c$Z4yHfXi_&\=hSqpwDϋĥB',ȓNaKhEVO7Chs jVGR ;&NrIpiS:ZU %!^`°ˉ0/rMWAj~aL^E2hd5݄QQڤ/Af/ѭk)-ÔH4 i  Kb닔3YU窹Ӎ]l4W5o+ dvxlF 4ꖔOP7S|dIU,^C ΉOjw<'u~tbb48rO,OVv29bIlůYXf~Q%A6ٱ\&uC.|￵yUW 'NZF27f76 RrRƽ8c@Z%U&uh#ktod9D<;iIlIp[ikZ@p(#-Z)FhU5j&"n[rwl<=_?&[‹3?pBkh_o`=D[jֿ gg3/YsCq:XU`R_i'kuRiązԒC^ւ%3,^o%[qU9`%5,UN-qꭝYf/JM/u PP!^>IyGϚ dddtlP {Kz1=mJgЮ\d0w<<8XxS˅͑6CPk_,="(  ¾I/΢T;)O&Of+i;TKbۥh2hh4EQc"Dv>V 3ωVuQӀT'U.tv [.?h]|Lv͜榺d7mWY{ STcx˸͛@8˯\kKY oJZ7-RcKp(9R"{R j;-\?|+; !LrȆX?[g%uc*H0:h9.lű Ti*sJv4 Qv׎ޗHbl:<qk> AȔuu.5 ܒf{8Z6ڠLG,ndļb՛ѝx(sJ"\=XKH^D70#@II@4zy%g.u,TSR/G!|,c6 ⏴WLazbw| }q{-\9S}By5qhm`>ی|5W$$ $^|p-ƭz\1pSئk{TD5lKYz [[!bwҺ,yBYQCfC0F{p򗅑~k^[@yG.sSأ>ECs*iGH~FP>ijI![[j:|o{9'\PmmWuC2<ˤ~jBPw%h~E_l qC4ͣ"YF'G`?ZO/S1<>`0٧kH0"b"Sb!b{{Boޗt.:Uzx «Dqh%[[ֆ4b*/UÓ bnī]=ׄi;% ĢlzA,gG+oYa;+5Wf;&:y*E 8%?AK<#Z #N-E[R<'1HHwC M=SPoijq*nTs>X?.>VK )):"C+ z51ZnMix.4`8~&[`}K 9jʀg2V/WS3mjmq E#qt抠(m$T܉DCxWc}`3JGGQ=,sPhdTGxKijֲ }lr}Ёxk%cDK4'rl4j6Q]\Qڔ!; GfEw Yhsb߻f8Z4@Uއ\jg.\蚊?1G$!,]zz/y[Qh eBo=qg{* *\\Z5p IxϩɽW~۔ $no%V8o/'<o+2aeU_XM2D$DlZzH*bדIP5C{fڠs'HCpV`r9?1m`e-J%#M?&s ppvlEDSSOOlL6iu<oBݷ@cѸ3]<$_5M;⏜[t.I!NSb)I384$DUL$h+u,OY/3 &ř?DC*(i4ӄ7 22Y`TNDsC60%f]&9 P#̣a[#TDO4KLmJ2Ktb*kP, 9?m3ϞH(o$w˭rLD } z $ȡ|.KpTi?*B& ԀO) o|$eZ]Sɐa7_GOu}3hf%ACؓ;>) ZUs`5@M"fe]M -S?ndJ n0qR't.MoG*4ٙv ğ/N}y钝xa Ҙ1|WB}1K!j7601a?O3(=F>E/ҸɌok֙װElq!o&}"isIY>|}|53J\O/:ߥdT3v+ x-/y 8TõDz`GLiW'2ItdiRmܒ.=:;Mx|@,%3{za=w%@ihQPWղIRl2G{,MyUh2c(jMhhRP`SBNvԶpW-y3oHeF֣s<쯞٩mbUkV$nC$b ,) ز"[;m >*Ե$+=mltV-;g3xl`bB,}*MIca` 09"%tP`CL92=5"ݝ/AyW|F,2dJ#nڔQkaH`!CLjR둚<3?ֱK0Y|bCz zA#y tfVFK>c|cN?7F8D[ ^WNBdD0C%{)ug4{u>@#}L@ #5p0!%OxX["B'14n0*܏ވ"5x7>];k$d&K'+{::HdeNv|&m9o64wFl@}*C,fTOĀ',( |W^`_j`znȸKSW@= PCe;#ֳ_] :!1si{TPY-(a^'mZD}L jh7bx3'Н=TDFW o~+ЂF2xC]܇Ew@AOKncNfɩBDzsDr_sbz7eZu &4C3><Z«k6R^ dHa hXwPQ8ҽƬ4Vgxe^?A22ޥj@m6 P?6`qj)$ō %mf\C wjOCc-$b>c\Qz4UnxxAzݳߺŗYd-eꨆ#DzcB8|mF 2ӌ|De=el{bgٯp7Sڵ`LtL%kI )!cT$`%ɶɒIӒfrH0wĿ^SXRA_Dzz* aKv[v]ͦrs1i"k~pSMyZk :T 8HBElw_#u,f2 *Fq,ʨkY3bV[TAT]ܨgՐv8 {(VisW `[qLj/I:H: MUQbuֺhԄ ]U/SGSUFvk\S9D1pSp}(iزkv|!JBĎ i{AulI}#CE)'͇FK1Z|+}Er:A0`bPpFA*&nB7lRWB'Sҥ.jFlSF1w+}p""qm9ah|u!Z g>ʤ\Lt(lwIB /V%a(`G._mHK}0$ۭ=Xj$+ 6ï۴QWB&Uz ±ؾ>j:ߨh!騡;=;T=BE8B%ҳbJ%^~[Jo@;}eIdS&:s<iWL5K盡vns| 5']'?mnB)F1a=nR]F"6^JF`[57 ,S^߁xRSW)Ӟ_e9m2<<^t#mTfqE"?p R3[@E{t zМ +ȝoYdC u [1٬u:.a撯kR2c}gk8LуuP0BZ,ݖ̨5K&7nFbbRFLL ~:N<L jJ.(e1e_x (A/NN"oc=g}+^(Y;\F A&"=%zXǛ kNZTZC.%[4WRxVBb`)LPp*,uωEnoJjhk C1V . bBA:,|S{k@:?}5*ogoh]tB 8Cuur?Jt+Z$|~:9V*{}=7"\c'4M+kE(i*>e) G3zi.Ye9\~?3v-\C愫+,LMM:`n?TU0xQ#_mXФkrydώ(oL 'H|?|U#:8BRm,4 ̒IF!hgPUǼMD@$aP KmSG[0T"zn s; tE&*[AvԿҪ>}b%{fUAC ݉/ihsH"ab}T;Tw(5u%z0Sr&$okMN6i`H8c6ʓ6gًǿLi'6_ I{k6 MLB]-Q˅&ل3n iJVyh}t|Bpc 'i |u-6EN;o$~^! S<5G]`44f`GxBcg=^[ͻ͘kQ}Bm%Nɥks#7yl\+"duԼ\t 1#⸣Ю`"I+}ms;PCe HoţLBpk>ſBuOLC }axՠ*xOBmac,$̃Sⲻ^1:|oE]"j(ˠSFXCUxFBc+EO;EHr\S m pAϤN AMɽݐ:UㆢfO7ћ5!2Οhlvξo[N\$(ZuVu:O?7vuٌQ'v33E$~Q~Pg~q&ʖv`g怂cyb9+59Np}ˬ-%(?_f' ĭ9;ӥ"Cr֧ͫ䯢@VQ@Br,x0T$;IX%P6AEεŋoъl A"coO35jDY5Nħ¶L縬gwěFQ >a;k3'uzG2N`X/ÝOXjH5eu-6M[,q0}E5khxci`[x-4qLk.O5)PRq9On9la*ϩgM2K{حR0AuR,&f@y=(Fo},GSF-܌WixHκlnCBdj&s PӦreCv5 f\+Ihƒk&G =n2H>xUCF&H #~M1c r,:ߺ'dO}!K^/N_ptJ 0"zϥeN)? Tm u"Vvc8URU20O$7BCS hGL}px̜LJ5-;y&pYs3?5ʖp?V%qd\ᱸl9O:q}Tj79.@}#ऺ2NB$סjS9$2g(H(*G`ae0}_`ƙZƹܒ=>e `~]bvMǙ`L /=ls p_X8lJ&! $2+ =3r&И T)p3oNXdھ3{P<)7 ր6!tHsLxFh,N k@e\rۢ1 l)ЌN`Ȗ֖ل{6UzUͶ=i *.,50XC%&XB3_n{oQgZL@ԇXTQYzskr t^V̊pOgYJjO96||x_~Zp3 Ɔ;wG<r?rTwc yO}32a)R݀Cv:O>:X{ͱÿg(d%(1.;gJ~ҥĚщ.N/Bb#a#畾 g>E"~T\ٚAHy8j ~xVQ áw ~ :h럄+OV6N hҪO'LvFCm4NEۋ(+EWдtHxiU5b1C/f@9 :v 4)SbFkLȻMvDd;<,p-n}e_\g* $% "&wzٍ; !ic 33MGc95j#O`!O#sn#u歕32[ 2 <]z$i]6mٴ0iLub-OM_n%;7|F[t\Bn;޶G {]g?0i2qvRs1EZiAΥT 5:R@ ;FߘuLe_VnNsÔ)3 ȁDB #8O?` WZs X{w3}ȓgNK,:Q!v! #Za}0STh(QjJ#OޭSsA *'5OrQSx2{P]t;p]vn@C J/T-b*Le!_LsbÝTA5'toF` dA{vMr֛B%2uryoyBpB1S-|%QX&ؠW 5۩+PҲW9a֑BT\WOە>DU)?3x[qW*%zFH\Lbs3_ϖ&6AKK]k] QQOKn;2p.^3P 2"Iڮ] GI)7&¸Sj}[*Ͼ'!HcL|FE7mIN|Oʋ*GrZK2!"t~%>Iе. ύSq-/>W˼XZPa^0`(!;(IZv=Z_+*@P}A-6be t`iWAus f=^xD+42nPڬԭbszmˡ*دɗ/JTE7}DEF¥i4o@vkfjmU8i!,oEw.9G)'^ lj\} 7b┤y bTUjO@"fNmM5:[OTpGmF)awdk(UEe94KS8!QV6<_;nČ Ȟt4K^;+\wf!XaLF2mMIt gzx!G \,~d8^EC_ߐ;_Ȕ9EvD*x QNr̤s2´ :P$~W'sizQwD!9)ݷ8\7 AA 3J$6 7uߺ >9wHSkbW۝mQ-Ֆf+[;7q/WSxXK{멌ɟe-4bՃhrץq4!vY/'`) zy)Ar~ ].b; Z<]Mc-RVN!@p>%j&u&۠_Nj$*4`S7B*K}$eX2 mϚI"w25l@MS"w&ӳ?v1ppnŲW; geihCns~շ|-_k>ϣ!IĴ;#$ls~wMQ0h4*B,0pJcxqOo"ϝJ1("vL1qF|,v~$e8!Ǟ~c9J_ <1dxkN:ПffI;n DR_1!%@ilH(#  ZXg[ knuĬ-:+< 6ճ\oV~RG6r~>"|D ThC˦ *%^ȶA:$(w;KskhѶΔW#FKKfeD*KE0?/oZs&eꍠJ3#w4J>U!}񍻳m`#5;$\C {gbF5fp;gOy':V vaF͜%ZKŠC8|i"͏Aa'`rס$TxMèύ兦cd'x9晙H98dJQJE ߼NZ7!TZFtL TMWHfa-Gq6⹮0h̘'OaIy/ٷdQ\zӏ^%3wI BD3bҢJG*Ğ;wi hM$.hT(ݹ}ҀRE"r˸|G($[ V̼ofܡ|<4bDJB^ W3oXp0F>w)"؃A#6M$z] &)%0ycٹf).4VH)ZtxA`K26ԕ+~D(}fc31YG[Imt` #,W<^‹qtZ>o*k7NMnjB&0EEJЛ.Q~fڲ;S hS)ܜec~kG7Ԗ}T0y٠t;Qh T݌%e CUu'vYsX@gCI eDú4@ЮVoη>RA."֕ŵ3" i3!E-J f2oñlMI-A0=[Y>VWUJ1,?MKGYKuNAT pP ;%15;*eǍAePR} )nD|<,_{C)nKCif%g{xBkħS2BIğQwMƋV`DwS?x%G( yE ȝLZCM=!+Äiŵ~9xcMQ~gU'x'i~ onqkݚ@܈qz t槵 b'%-7h.T<~d(Tʜ)WqW" οEG37_ID#qK!H"=./p tŃ+/MYLp5#_|+X<_k>^+]# ɗEk{TG]gr!BfOf"9VAȖR<#8N|<?UJc9H˪/g֤C׉FO7{j-+ԅ(ӑV[ظ+/GfhwJڨ'&~Δ!t3u#ޘGthrդ(ߤ}du]֒s weLr%bY}nbtv'̟%SC%]<1&_~[Q WE)h-&j;_,i8 2{5|+3{ȝu@[%ւ0͚mES5@M6yScּ8PVz|⟝$3# n,R%%d}ߕ_@.c6VV1XD!ٕkDS} ۮbwꮾ:L-Y0f)b )Ӑ-뢯wG'zq *H&jY6d}7ZYeˁYﳟBԩ(zssęXX<ւYl>h x hcPfjH}IE)|kcyXP a ^bY:M/uHrC cNIRGv'moxCpo62.h/n'%:bT׈ ߻&Gc$F!ڙwi48d"މ~ Tm3}טJD^kR/ra՝Z7AHB ƪ<"dO.́5>#]!+u]/ڙ/H%εe=GRd4WkVY}uԄ]ỳA,Tzw% {p?ti3?c60Tط9>! sM2؈7\w`U(yVWyFfj2@Wʨb)hFstrџ@G\'l_ץ=$0TIzPhbMl G7Eć_;=y{JKFy~Nlwuԧ>B!&^x$aԻ/Y$eLPMr j43ךKW`\?]A_(?dH7|2gŒj1*tҏWa*rh[q+jL\?B!=qD23jN՜A}w$.Fv5y$hpbEdLw][q)tb*Oֱ3M`4G,HxZEa<О_Yz4^6Ƀ&>Ҹ(;[A|}= BjzGe^o^q"r^qz"Oշeaj "J5o] 4-~߀aHZ)9ȵpyx[1dž]pKB">ᇎ"L]/ë BX'+aI#ө CY^\3eOTd!\$EI56w64qz&>g0'SM)ѦP78ȌO{ }YV ŅXӰbmyyD*G^0=5-w(uxscv1~=-fi:"Ph9_HGx,"jfaHFDg;!|F+!V3) -JVڝQ<"YSRx{}2[P?~A(69 VA#YQZ=a,r}%2eD(| 1҆rwBI`0L㤎'Wvk άHu벰$_0T75$,hUl5N)6z7^Z1qca+a:&?1CCΟ2ٹp:sUEǹS=T r(@OK( (Զnm'غ@c*!ȧB ++ُbNN+օWܗa@WO 3E2(ME>k<4+J劊4<0Wh,_ip3,j!f눠ˊ gn2ѓ/&ex [-_n >hʯz/"۵GQIwh_GsksEۖ!o.IR BpkO پ^e B|\UN UkSM6E$`6M7 K [C8+)&]*VW''u`&a6 `:~a׸?hPM`*\ yDm/Pa-ZӺ^F8 :la} :[03P" Ʋk諝IA 4,A*Cb"e~MTE۔).|MVV+FECgX:7&g; {Q̿vϦE^B?nc57b%r7SoMj땛ny3¹V=1k"]翙'r埑0T: 3W)K"H~{ x_ d-#*~)ը7 ̡ڷSmI&> N)r*]"޻E-haN')~Sj駬oD[ud] e/%Sve~k#Z!@f=:QFeu<0mRɸ9Tkyx.`>0g M3R k;ۃ,7/ʕNDz0~ [qCcUGZZV%^`4A]v#@ntbދ=fRU]2؂0~9z4|-՘<Ƀא̿-*MwX:U<8S<ٱ$Xxtğ(P>ưȘ#h_x<x'f7 fX ABB(X,ZS+Oӫo9̤俪F=!`۷Rpb%PI5t%6N&lgzAzg ?,f;%ӮRQ`[}BB'[ǜ)/3X9-L'hQ#]לtc/)xXE0}vb.+ 5:NTDh|Y Ϗ y[F&ɑ-牆P0PtQ);FD{:HYm:=$ i&;eQ-ͱϐgn>eYy2'sd? !hA1爨r0e}O7~6mgLeA'RuS+xT)P?`7^h`+$JgB4w$^A36SG|"呂-hGF pA V*Ei_DGmb׿x,%KڅT:$XtGFFݛrVQ=|,6%@b=Oը$x^}m+B1I46iɤ3MpZfKJl.a[ ZtUfJNbv<{[F} f|p94.AݔiMa,u0X55`t s#ر$d2kި + 3ycR̵ޏQY>Ej$9D%H23+ӭƱ[YVQ%~}0|B_+_k-T;y{M,,"x9fk4ĊC! Y%ޮZ?jVާ)zk,؀A1D|]gРbA<*8КRG|w+"E.W G1QXUV9ұ\c&K[VĚ&|16ZգG] )f!⩸~n Ȏl9Y,F 8`N aE'+DYPC£UJF˼j%-{W*CCЂu?ta@ځ}3!(utfo#V4K,-MZX7p>pW(NMJ_W|N6K ^W H-2He wе#m:܊B]9Z \^>-7Opg?/> "<җډ ! ;3bOLq)f";ig:e2llH]n6,syXw˾P!h) `mtk@o%$ly 6M[W),w6x7F]iæ%J,wXꂷ^c \jAVO TQ\ONIdZ^RypSW$CFBޜRP[} 󇃰/ o?^{qH0EYGiC4uJMg9=O $^'VJ/G( /MILܡTYwWZ?w{רuBND⾀{`O6Fb;!Z%,LBy M$:c>z`EԔ}.0.^_z &FHžٚr1Άɤ5H<%O$:][*OgZj=Ggɸ|\8t.ΝP #T0 D*'L #-|rVQ!"Gx4gb$ۯYx xa!klnٕ.BK!f 8̡Z-#U̗*m9&3qFtMomZ Q;!dw~ Oy俽'v aLZ~^ < o~4^b00xRaQ3XlN@.`^\}yJr4Zzۆ,M bUk?DcAV~/Eb g@iBEZQ 4ǧʹu5s (fm hWCۥ,2B'Iu!Pbؽ;.w"L~d_gAq19Seq`BXQez=FQ>0(1Fl5{X<,t=s>dnO%k!L*EsڔiWce:,3ka%WMuCL[ WDͫ: DE)Ƿ9+gј:wq/%lFq䛚`}>50('g<zUMXT2:h ˤNf h|wT Tm-_݈VwvqD%;D[S1hlC!X~Apo=zR 鏔nR˥u"|?◉jd~{yAy;ڪf [a^ oU?}14]WFAnJ@}D x\~##9gT*ݷ Xq |]!_Tcb}4B(WSd3 /<NMNDb!8{xC6k=TL!|fVZ=BH!+c`V@Y5Ms?ZŔ@xlLKhԝVV9z'ƚX`ʅ†[hD N aS }`*) ~2EuG]=T'["dJX7|H./YH2ˠBgnzTy'W73`GK,TU÷N41MdO+3 6-gAwR;lD)V2Yf&3V9y_C9wfq0TBz/ bN"DSE׸RTR+&s%WzLq5w)U2"wФ{m7Ӡv0tWMX1՘N|q<9Y2G?6Dc ioBzY sr!J ϯAT3rҎkҨXZz֖=E}MGec_{PQ Tj]sji,X<\GM9&"B`Z9P5%O)H(jxd壔jBQA |z_ZYoһvЪ= wOY28M:Jz 4nmFfR2)x=pa~tce™u}K'jŎuap|1gRzǑ),H+#z Zdzv:Jfj!Do[pa|v\2pv˯ - j+nZ>Q%L1^:*F~3^UE χݿ"uil =$ a%͋^KIV{nyoaVD޺6i:u>*'Ð "K1~XuPj*MJ(>b@HUmD%9#L-c3K&rp'*":3Vc9t߬`t" Y?%)x0)Ot"D S\אީ[VeZc 9C,<] )? ^A5q:Aw]&`c]|JmΠr@Ź\񓰨:ꁸ%. lz}5Gi+EGZ^+E7}$]Þw |ܝk̙è729ƈ?R3zvq@3"]@&xUzt>x$}D.ɦ^l ,XfXI'_JAzJJ}U,1nI(JZ2^tL;#&snŠ>}&Yf[BXN(u]Nwc_[;ަTi^ B+ݒO,!)6"@k s.  4ik '%CJR`U!QBjs }#,v LM<옦̛_>|U v l80T4DW .fMyf]{{ :z<=uZ3۪l3iKrcTJ-u,ؾy _w*W!{Nu OA uqF8~|9Lj'd>J?^ [p^]KW󯿾`NX(Ze` l43Ar f#\C Ya^i_LR=L1TqδKKT:RuvD+PUC G ټ.P_\GR ڱF:yxe&c7s1CZy p=a*AOPCj3T|am gkS#ZB(XfhM6?ҝQe85Wن- /uA tӲ$q異SU]If.~2P;k$/s>NP)rUAנ}JVu-w݁TZ{&Uj`DoX}} *gvwoҌZ4`4&bYQ(-#ZIy!W|ͺԛ[tnFm-lXáI jBENмC7TߎjZvA⇽#sU1]xc\z&Ya;#YmBpbFpg.zx@$Iؿ8GH=]n}֣&2"yb4.s _a!TjQ-Qm M2RA4&6Bڭ )m+4xg +P^vKn>س( 2`dB"V!;oXI+uRFye%> z`~l(.&Uz1@SpJ I QX,׵qG6uy@wcb%Gx6 IflUP/K-/1Q䠋rbg Ss,.J,km;]@3뀬EB"bҽCn}S:ut:r?dljXӬ5n㛫%A$ 7I(",Vb6&Z8v=#tN8_pEת3u¨k$ւbZ8l~qjt->zݖt?m6 n9Q`?BDIa>*3Cb5 ;(9 Blkg4MhuוҰ D\)~'б%x#}]R79vb0\vBo0`J aYubR5 3j#E@̿nÿWqQZPw.g6)xk'q6&AF?a_ٌ^j:EFrAv; DxLAB=u;Cp.JVtSjԋն 'ġw U:>\w$;:WeWؗ`BSt/c:,ܙ7.sXb#=MӠx㷉 ]{ZM6sxR RڎSjI6p;ԟX9eEQ8y%qU.eـu7\#Nss Yc oW6bРH-(*">uGGq ;p5E MOڰ`H"uǠIUfY$*uı`gHE*_>y{~("Bn Lg{RbpJ [ph,k)+Dg 2Nc4v-M* w۠wO.'34 |;e;eppl\xBl,}W9>U"pRM+T2RYAY PщY 7$Mnl5u? \J0@}C=o-xcSp{'iP1U*۽:r#Δ'6ݎA?;7rft_߇*?.9- r[/@:-l^`ǿE*CmWp:J5@|eX4]Gc It?wW8\4m<:|9)w8abYv(oo-s>&; P[h/blb⠌x?Z1*lMB\qam'>sbN~':9B]=>T= n\(9aPچǭqE`5Sp枰'$O=!~ك9Lj6r{&oqg' G҉&~цu%Bk7([͍Yh}iʇCaWcuTZ6bhR[PtG =dVtyWΧSvQK+|e/YfjpȲc0\2|ޒX!]Qw&3;5'`{w  WX\Фw fطM-WjB*Omn7uU3 3&R] ߅bd|6wy9?cB-x>3w&y(64αhs !\u"6nU~$݋՘Lt `%IG\!#cT=V|?ɼp S"7L"~ӜƷKi熥}IP3As2Cd ѝIVv*Sm f-_+ʳ{ȱ E%Y[(rtss1",|2rƬB$W9B`+ P=[/s47ەBuT,:_u@OͧT1Qwx3z[}nhN#HFf#Ѹ^{_dR'9^vnC[-U#Q`I/̳:2E NIxiʔ"/b# V{"Ge3nth4bۊx@[$J@) #"s4m̭Ξ \.4 xdO>q/St3Bqk0rgV^,,7ޗe|xSEeX2tm c*AlRwňX_~| #!(#ȯ؉5䡷3~A?؟B1^Гwu8dm%.YR`O-J&cHa !(9_:p.6*#a?1+Uy'TGfm%bv Ã[LfF<8= *sVB\N"mɉFY!Ǫa,k%FDaQe}g$MV@*ȴ`>]w)(iCCcm/])Dua Cq[8x|R?X U{\9}|0 150f̘[Y^|skF u|rx .N6JJ%w.ڂh2?/sηXPD5?$AٽbDz1/VmOo~9$L5ش(_@2hv9,yPQ<~sZsg3>4fOØlbO+:KUºtɑrS6 ܢa$ELD DXc!$BkMΈOy'\Ps{2FrF"G.HD`:>WAn81oDME\ab-neP8;/PnMCpmC!PA1*DD+I"\Xwhr3&i娊c%bwy1:[ 'Hi6.2\oj(86Cd~ ҌK]E[ژw *4>tb'i7@QM;m*ked+Il%S@2=}$Kp`S½oC?U~[Xe>1m8Ywfu6 11S7ϺQz>ΥSf6w~;1IR|_ٵD}S5\% .!\J+t9meLȼTN̹ 4Z.Bm@lI\y뷩efx\cga!yМm([cv܍IZE'oڔWM}'N\k7֘5 6Yx2me6DKl|7;i)#9WPXN0vMÉ-)1\baae-p``Sjv3BR!q~ٛ}6%sPC{+ip`mۖ:wR>Wop@hn[0Fc*ģ0cW/ *EMSVԮ_h!G T;j"JW.CTqLO3r׎0MikCt%,9 wXY2ir)u 1{jÅ¥`t9O\9#ИZՆU&SrFCՂ T.z,mfmx$O{xC V$ewn9P[]&9X[rCN,6Mtͭ]thQtoOGWk׆i+[G.iЗƹdTjhfS2\SfD`:˱G-,/:b!!:< ﻃk~J`.Q{mlv97bK®*e Krй쇣hc%9T[KܓQ<6V3;n^j5uؒCb@A; P.JvL98m/e nN/!֜y^:|dVR,Zo}#Q E:MsO8a4w6d2 oh[M]73Ӧ0nv5Vm 65X ]Hٕ~IZ!Lɮ/\+PQ@vV$g=-b*J>j5K(~r h$0rWRMHXGK# yva, ͧ'=ch\ꍒyksy`pNwR)+:{;f7 +o 'y;_*$s~y+P?6P" ;_9 o"5,msL7߂.C#u:"] )ieFbK&O˝pb ,=+3 AWVB>ӯֵ"1wN;ckߎe썺9Rvp:bn3X'kٱK=DK ,SŪz|Ec?"0B/@\:09`-JU(@癌]BY#S>BMĖR-J!&޷n"|ДcGtjՀAjf%@s?C4ߙ& ;k69]Vb*=6ag;My8쥭ݒLgPOA`T.|i#_ Lt x-@] .o3ыRGu 'le$yc4CygvFTV?^Q/ ayJбYwwB&e]7,Njҫv` j1X4fwCbaТ.9cT\1A;%Ʉp٠H|6pmmzO qu.ݿ6(G*c s`'ή|h%YxulwPPa2ĩZ Ե*٥TJRg!b;*U¡cMTo;U¹m9XY#O-7pj,Άzv&DSCH!obf| pWTx%]mV?fC/]X ~/O<ۇE P~le ?ɰ}en"NG_:JҺd!ˢD4@Tr;QH6[LGhMÚ}챭䝔cENrXVWX늑jyjߟT'rtY?R^ٶ!K['Q8DHawutWayF5@s=@,0#CA+Z%1qcCiH1mNIq1S([c|;X|RD{29:Jj>! )\2%>-#x"3}'W=<9qgRRX@`4CM h;x-x;H3i䱖k]ȺBHcrM3"NQsg"QϘa>摚P">ry:#^c|,'PQ~6zbV5D) TrSQi|d b3+z ÌQ94Ҋv_{ma gP'Ag˼)?GѰ?l[x¼fC$**(ָQ=q YQDV&"=eي$ 7 ЌWR= W0 Tófq&o3:gLРa)$sޠN2 (%2BnTŋA(4qdg3~uy鷊BEDSZs _wzo!"ɹMU t #oH_u{M2 !)BۏCVN L9n7BJ@5K^ .U$4-F5b%SexS&<\^N?JPN_1\MMȉ%%?|1P-:+Ψ&)$RnAO_2V>,ª5b{NyK&tE¦6-qLnRZ- ۹&ϩa)y pAwe<٦qQa;5" 2<,ݨ謿C3}o&kv}QD4lp{ʂaU k`P+&z') OSS.FF"X[bcSM\3vrɿEOTl(ڣ]19z:>􃡍Ҝ iFE?--do6 =/̰})2l ~R$ItxM% ?albk|Ig`bVH`c3a;p5YM@`X\JiWjY0VK^}ﶃy#Uu8/I6ld_>M~ ~$;a !+Y43 Rkp^&}C6|(戣ІCQ'E[^^UνtZSŸ{]pN".I)nL'4}r+6U WjzxS50_ᡑ_UL%SYZfwS60rg HѤ8QrP#FTx ۨN^ :;P~ظBjlU6:PؗG\f+Mt;ޣ@N<=:Vsȫdzł~˓c>2rĂ*mTv^ls(uͣإ , B=7h4,*җ`s 6"^WS꭬A캆Efyؒ#R(=]nYG5$jRvyk(Ni&L@>?3=)3P.d,µu/'. &;0M6SDz[gєCфZ5Z]LHF.W5H Si8eр`Q/W= ){)P|.iFa4 v_}ڢϻ I )K㑄#\-VT,(sȏshaK?>>MJ0P ~ {DYBc(.7ҏfamN59\NnKEuD-tfc)$U'w0[x6ؔh=*?^CT>g hv ǣyKf'ɿ)ͮwCji߫r6Ň L\bX {Xs:31+*3,8m=1Ke*Od C[."1Kh vЬi.H(4MFWᕇY)4-#DX06)y!&p`tF9d1mc,g,KBz/{f w/TA}ԛs-&i;={Lל ֎ɮ2skd,䟘Al9M^ @g>x/c|D ]&G*A#H~A\'ܣb $п luCqg!<*Y &+rvFM%9F?pO(XH?h1h!Sݳd>D3#}RxAUYI喩,'c<:NqRmjWH6 s7@kdgm^+3`k R&;$,-Ύ”#Bwyv9\Ig*s88$\봆6m.[^;%#dLI3cO8p)A'bv bʿ~@hhI'iKK>9@P&$7dꆡj.hi)QG*`hl ШF(>B $B8ev"=V狆:xJ[Эf,KG!ҥw<ݞsɟ>MF y>jgb:iRƞK9IQ%etDS5 @Q=͘Z׵?j(G;az C(ɲ9:*[[@'iۺ ^7HLx WӪyFo*cLN-W!!R\T1'O^B7W1{Z.UݼX"}E;^0]\Ӛ7? Dʁ##]J<_*DBk oz,7")M=C9Un-xI>dhu֗Faoڍ\aY&?7ϐFJ 3~qvnCŰ.unM~AN$=`?Ulimi%LHC`O^* E8&޷@U+q9?gbz>Q!X;+Ȏ,KI@(7(pyzI3Ӣt;MyYд@7v^ vT&FM!5 x?.>MAElO,ZJ364VXqN0Ad+9Ͳ6 s^P H98o%#(p3Y_7J{xٞNy<'WC)Fw(:wҺn,iV?_ZŞ+v|* OAj+FFvq6 ^ֆHpx: ]-lv S YJVi)`%(8oU-u@2UZ,qlq7AZO1Bۿ%[(/SR&}jw< ĢZF7@X/z"J9*VዝΑ>;X^u$|w/[Hn%Et5y/ĎH7elIL*sf41!c-x Ge9…O;P^V}jCԬ/2or:P?e8"-PxLd/˄NzfXO*cLW5hx ?_ Ď 4S(A`iﻒ ӻUQ+u1*hhu _aos48^`尪_'KߕAy㎧ĸ#<VͽBOm Q&V@+WtZMZ!0Lgtd^ =ї|bO[~2]ޭI1ȰCp#z@<pxnڛ]| "%r b#?n1AV ָcu;L,_zs1l4/?gh vճB"tGט;i9!Xh HcJmI&~_2cQor~ i:*Oƒ`a%<}C=̟g.맞xTٸ<:meV%Yt+ WXzQd/ɋ̖bQq3ƲkǷiQyAԇow}Ν}Ó.s6rDul$+؈.;<{ c-9R1xۻ)WBE%q"xD=ZاY#o@̿HcZ$Omܮrcp r<}scBȿJmAw}boH9[@)8ITE8r=Z4䁽3i\ {guSEN22#{^l $s6:d'"4sgW'C١(zږ)aӈA<_v˨ڴʫ}>৪ U]Iꐈޥpyr#mZ[ILw6^As{`i:i06|м}t|8"b+lm)vO7!Rx\O"FRht:%t]YTR ac c[V.ċɿ|Dxc@hr *%*fl)V$\]\:5,U\*!ws})jC À(qFLQu#j>q'^:AWkn03g+_ $ xT,zi"Z0a'[?ׯ"[x~n"fRPϼGt~GJB)b_c10}N+Nqi+t~.AA}hkIzeXf3P%)Hm>QtY{s|b˥6͔g*$Yn '<+Ԕm鰜v㖺آRjT%DcT =`!Vh\`Ďb%c091H|ӅkY5Hub~ϤK3ƛ}=Z5$F.֗tkw-@rD`Ѩfn$ sc}2uyWMsKMcP,_}0&-CpL9rAd =Qyto)Ɉ}IQPjmb=8%hKBwU J喁# "c| :)Sh=]S%H>SvYHňtJ):q #Aj]F71uLP?oMsN3~6Cgq#}w~ߠ>$"KsPonף1Q=4G}; 0l8 :07H[EQ-Ϻ2i$6l>FL#049iL1%Kj }"`Mfoa ^+(qOc5C̿/od" Qh0 Fƃ.kV1zG IxXJbS5kLUNK+IպTɰA(%ѕ0kEȅ{dP3!L~"Ag㪖6Ys a$bT{BT3$8c(012♩xq]xƠEo ]cP~*bj u1"bYz&aؖe ɱUD#}ަmQ˷,}0g=?ՉPTgO*G]QF+N /7ֆ{C@M g 8g*">$36ظVAܫZEϯ{ # ^6sFSD4ώQW5sn':}3l9#+`XFu86[ՈՏQu~L꿋̔/5`^C^oC'6$Z9ƶM6ä#򘩩igd ћ6*bTwKhof ?QtɁbQ.&9cPn=e'J [wݖN\ֵ5.[9SxsI^/(k8W~U`P|Wy]뤓O@,FB;Ȏ9 =^$)UcNDpy?3S)D5ؤ'UUelcB[/ I )ŋ] V Г"xX3z%Z8q fxþm5h'0y;ޔ$2jDS'd 0r|MfqPRMje4gspV!1d)E~J1VyUݬ_YRY]R) 8cEp+H` A2qpˣn~sDh?[4C @2Kqn*Np |ΞkfrX7D7:sGԠSORU9֔6ů6U1SJy0l{\>tFnCPN[Pm\p¯~>nvpq-) gYW/ v`xqz̲u-<Ă2>xӮkL?Fz&bjQ"0&r[ mz6c:C>9G@Tԫ>)l )Wu5%&|ruVZQu9m.#o 6xd 0[PXK\=TLgǰ;IDzS}P̗kf]5ͼ*p1K뮇-gs v0mH'MPOf,/tXvuD0&lAsc$3WX7G=w7~TB(ʪQ*V5VBKiUT)|bT[Bcy蕼[Ncf%E}PR Ѽ5%fPv')ZPRUh. ͋i9KT\OT^K-( :UwT܏>\E KeI7FF=g7[OS A‹-0(솅..ALǜƇ(zJNHBMGe,-Qw S_~/VX)b{]s@/-ؘ8`hUySKq=c&b@n8H[/C]Btm:Л2\G JJdN4mBm-YE{—`35JR( Ўuy'3DvdL)ŀ^n>ә6Rv7jS ۦ=@+vr}BWsʘ6 @-N@+uv3tDfM|@kIW=A `z;Ӗ;`j A/5 G USb!>epa×ѡ .b sGWmp]s3,T& IVªG^&p][uhT2`>O6o_̶ 57iC*~ u:RZ:}|~|t-\yʬcQ(Ղf?E` tPUcG )X@ShR3)kCFKl=֚GgU jHǧ 5w?G -pۃVőOd=Wi ejU|4V C=Buc C(Z˩nFqpM9v>C#o~s-ћ4n̽/Md%U ; =T޽R|;3TSgbѸ"ǟ4`P؇kBZ5{/o %\8b!˜1 ҈J`}T-M39aݛ4},פjy"fv*¯F>&R#YTqrdʶH1(c6*¢kGi$f[;*?3a 8u,^-4ar5Fm91F\35`Q9`{X` V!N`dDqAͧB 6oOb) ie+@sQ`0Ptu=>GUj:rDx]9HѰB\5ߍ;641CS. !UVe5~D"b^eCRz(!#MgPS9_pN•|4=N-V,cwKVZtPChڀ6\\} <5i7a#zUJ+&= Hsv%7IPCOk;{̽aʹ]_ƃId)Dޛ$haţSR 否g}NܢPRJN w%'k-T,~|P}cbi#u0:^*IPIbxWJoʾ+0҇mO[$b7[RI;0},/3W*%)ڸ? X:DLz\cJOZ6'{ݡsB($dpLHR%"CtWc:vDGlmU6ܑ1ɍ(v(BO}>`@:^eLDpR K9(ip,ڤkƿvԽЂmZZ;QZb x2LI5aMȒ41ZӦc_tI8r4^4g ۏMH2pd{N/= :Ēki#]ׄM[TRG=^s9C}*P`Lona #_[>BqHmgLD>%$oyKkfXUq6*D*P`yB:xW2:Ri9'oiWSvHYGX)Pxէ%xL:08e{e즅ya (>@Jep1uZ-u4؆.`QD-CdZ*N!Xy}o:tާk>Տ6Jϥ"ODK^fg Nd ƹ_#3آd(E1^.Raˀ9L%y:fo:!vNRdR09zkNdbL7ȩ, g6 }Bʗ~ Z:DzgEQȼ`q,%`uw3DQ1.(v!h&="њ#V53Oy$: Hѫu=jqia ϳ$!^0?ثbI(њm;iLVxPV]~ԲaQh4̩ ;G6p9w+žD>/8*4QY|)l!ϧ3 ̻ ۫& t,Q8#޳?ʶ)Qr-Vz]#]J-hQETf@( S3]@)4K<HHBp;jQ,@6f/pAW!BQfC<2^IRИ68l^A fRiߩQ˭07M JKy3x"fфMxż2Q;)K~':TmX+cwlmPdDZk@Ry^76%d*6gWbL lTpy֔^u<Du*./tILtNT5\pZg8vr/u=>9*/@0؞F0S;űBdT;آqjGc&Uw{f3ctmx;D~Y@NU.XM%ێ4,ٛ;s?\( "҅2l(0iWQ"%tƮm7S͉!gp4wn!zc${ٔo%%-`fl#O1nܢ&T7ګE eS)Za!ʊ !OjeOS^^K' fl셷L&[Qjn/7O!;"+jOPJ|qvvLSs BQ@ܛ CvnyԈݾgELI#PwxuD}?׬ȃ19g6_-qSc6x/h579P?'|OqԢ\s',#7;fR]^h8~,(0GX`ǝi""t/\MF͌94{i"*_$3O tͯ6/ȏbLms.3)BWSGzgqEΟG(ӯ8K7I n5]iyGm/J4'. .7=Uxgǃ>v Pa7W4Q[, Xg@-?@s?:g `Z[,8U"a7Xϸ sZ :D qHvSӻIڧ"TOA \\="@C[e@,d"D\N30jY06q𮂪.JQ{$s7پ׍0h/`+)/"f~RvsNFP㿤^&Xl|ݨp+>&GyMeVZľuT{yB(C$ ߗei?.Z #L"oDY X9X$@&޻j*@zpHruk2iفO 9[IW%w⧓N9Vc1HϰvTӊ@(>y6^A@cZ×so3=Ў!W6(;nUmY۷P?5 ;m!5S(^@<F%?5 JnP轚݈SgaPqr]Sg+Rc w2# Qjq0j"I"Npw5E45B/)!4DeU~Vx0}fx2aߢqi-oa\TE+;75X6ug'\OkT=0yr̛-2Oͮ^7f{.twrG*c?tfO2¡b+HM[v)UgԌ_NmC|hũ&!mWaaa1j>[P!vD* 4!k$QG^qdE>$[p\-T2aخ X::*F_?fVRa @琲Yh Ƿc)n*Z0߱bNsFAbL 4(#-眿vq3D+l͞| A5wҠA^Z<}-p7#DGQY#=!K }낢Te\N:/ꪭ3AhߺmNY  < #2>Q EgT^)emoM2c2aG?AsHBhk3;-]؊CsE ֟O柲/.vF?M*)ٸ!]&J 7zO3C,]1oI8IkzINy3 djۮKYV=p{ ^-5,JA ʐN) VZ;dq,iJHh& sx !Pi^Σȴ|RZ>A X@nm! wuzV lz-Z. I43A,qu ч=ɘG zh"Kυ?UX/cƴ;RY8r#/En|p?顝E0|Fw╌ji^tnho8XIr"8-brӝY4JałVA̜ KV[0_m{&8/ו"-;l,[YplF5!Zy2V ƪ7sHE F~GAbXо11W|z658b:jpŨ- okݶzRk.k%0g]Tp'Bו.4 %p2S#1 ԐڜKa' ~I%. V6%}@ssQ02[R"2r.s7wjn0nv%"[!YV4ߓ 2]%痪dTENBr#G*wJ-`<6ԋ^ 2Nʩ}'iPxths|jIo Q ߛBȈ:B\N>ftґE ,)7:MEneI3!N$3+Jni*w)̔Jen1єU3Y|`4 ߻=?;d@ȹ](8qcDSιߒ4ъuUQ8AE|8dtdpSj9<`v]l7WCDF6,ECVKT-32cS=}Zn1(x@ܺa: ZYpss^eZW17\"/8 vG:W&L"|[ CgHQ,0LJh6H)3êNgbD98)Jz{4L MhyH4mRIV,7STUt˽B1B]4M|XY]&o=yǯA)&Mfr]`i Xx:̟o^(s#48ʔDt^R=ޝG>7*Y7@U1ĤffSaJoXUp﷉M,#ppذBob:_ >Tk+jfۧڱ*t^Wf{ec%ls6 (%9_{E\H_JƇgrB}fGߜR?v ,ҫ&(v*9Cc G.aKTO%Eo %_st=Nb/x1QXhtb-} Ȫ>u$ ; 5?Ivن.WLAwsKCsײ/"lPd^@ z<xT8>U8lݔ'O-01d0uM(W ):I +ⶣ ]}wj `:xW\ Hȏǘ;3"p:pp_8J hLhyf7=7~|ӯ8qɀN{g qz9~at 6p\Cf/ _Y6 isl!>kx 鬒kԗ@j[al+o3yUMP7Nz- cl ^A0~s7lH|%&͸!"= 'mU>„-% NH`r7K/XȤd>^`NBd1fB[̚@ ˚qOh {PVk&ly!#H>iNy4Φtw೻b. g}ɜ*VEEu, 6AkQbfsK̜6On"ȚR Ǟz=^wВRPO|;۱wk 0@m搵bN6w]7WCUP[V(D>E6{݂t|u{]d  8k1+*DĽ<< c;<%pc[rՇ<-sd x}d/٩׳{M4/[Kz\:[ʂh[i p} NB@*y_{qǁ7lɩ+ƕ@cAQ:za_Xq(;ʃf '6šLK/4av9#p4=:J5631󸼒۟B8;ZZ*tƚmȲT`&9GE1fco'2\0|@NjBhL3R3"~c+DGw1W{E}AՈ~M"`}NeR6@%ܻ;S+uz,'I@0RE&m\z7R)i}D_Q/ ͮ Q`j%,ݗ( A*$}hm֌gioOY395_%H8hk.4RhY_fr?oę3jĥ&6q$EG2uq1 '|A!%wB9DʹW:գ~max(Hb6-ٶÀVPN?vXBWTe(broޣ0OiUt' (~C>R%A3wxev$eMMk֜Daڄy8ܝH_,=_W{p>q'dq!6L^MI]mSE?3^ӦekSdؾ", s&q 3|]HRF-ܭAje`zh5QZo`a gb`8z,s"C]TjbNcR2௹}6C1URfʳ}_֡7;`tp lr-V[V9o+s96<ϓrHk9Rn[ܹ,}g}pݟp-y.,~iFF7bXj Јm+ա?'ϝ` mYZncYPGض3L"ֽSj3Ah׮׫yj:щ*Uƶ Q]dVfٛ (U3O,h?Um. DE %ٴ{l+S%֦΍B[}Nmk?جm*15,5.n /ҖL9ϋIB;Q4G^eҥ(E;\lkIPɆZ~^_>: 8$\cд XVjY c@? њӦBIPԭqU#Xge7[u@4hU\g i}z0u4.{@<I1n"zRrm3=al66$-E8Φ=6Zk½~А[<KKQz *b0us*2BDV=Z`eqA;Igt~HIdY7I,֍rd: J@=5s16#h nvty4)42nhU(PZU^[08λ>2h:$a_ \脀aSjWWCؼPwm*]]*iJ@vZOO 2`]&6Uͬ uW@ssGMEd *-a#ؤ.ڌ{U\.{l !x+g]r|Vb^?tl`BK:[lZgjGLA9 =N빥fلYZR&tO}_EC̕ a臠Dc*G.,e h!$_+kMDx- ŦH>UyXXuCϠ3 ǐ+PB+|*̓Мc vw.QK~HbUܱ v/K-yOZ!8%XIԽk16YZҲ/>rжEJ%yʙMIF)$MSr!*s7-Aj=D (q<2@+1aޅGCi8^o(~V 9l3k^rVl>u̖z+a*vEƸR 5<ʲ9 d|{YrvӂEfM^l2zdzܐMP{aG{h掷gȟOm֓w_JjDiqaS#@2`e6SBI03uz̯95)63n?K;'E~q./.H5 E- @ƔC ,,}as y@zdMcѫrN+DZa[ ;A&Nӹ'KcjDPFEmd orxxol NZ!]:B:\'B5ՐhB9>Nv1TqsFRu,G(3; Rl!{^ZPm`u]ZZ ewg}^ r_; L=pKX[U Vn+w.qKvUeR"YDL8~?Pc--4-A\2*KO\ڤ+bÈܡO[W :i(!{"^%qBjTR<\`#,NnIۙb=C =\YapSiآ :,ѿSiZ9Ir W<:Q7tnV!(?&MJ\^O`F~~={ܐDSoג!)<ܶ>r>tt Y%H@7kt IGl:@UelohodFLvzV?[1/XimD F@~>,IQ5)NBlnԊk*[msiN,EFE}sq5 bU!%E;4m+F2>"0>ܿ۫( 4 w_Itu@ʫNÆoja=2B?ݶSXo/j4}E7,z|wm0DWl"RoHxsQw2 ;t64cV$h5X xmdn!,][YFDr;OOwu)çc2u]BxHpQYOt(B{_drmRpnN\p3 @CS2 W*TFqݦ֐dߢZK Xס5MS9/rWہ^yDze#͙~$kB)ǵK6tK0Y\77r*][X>^OVɎvD: X%fDKfYaNvTchyOg+3={P|08ag6Q(cCǟ ghôe3b|SJN,e;5:ylZA.߮ ӀW .D7E OQ%8g[7lUq Da Dd~-hD8;gq D9REZH1cC(E1.dq܅| ho&6$f)v_.PeDC؜}Oj~`1}@ɣ [cO#NXi; EEW=w~)8@ 昬_f ebҙL |-j%ZET+\@=9ȿ ~ \8 ؐr.YGНN,5PۗR~ & ߧS*reKȿeb-!ml{SU.Vt5)(AB$QM4Jm*kW noS҂E*ҞodsV6D*X_ɿQ=p\eHGCLZ'(LKFlh3)w){PP~HSbgլ 3@_Va6ux7 mC^ =%E~qdmaJfKgqOCWJBnQ~;1ueNf8\DJt6k:X WljeФh<`G#P%>_頺a=~#&Bilf$jVo<EUZVWRv e[XK)W38_e¿c.f6%`UQG>L!Hzˬ`@|i._pTcò˺m=plX-\!ֳf9qGSH!O1VՐ${/[b8!+tٱ Qք'%źm {%m}?vn$]OcGu}Zw8 -"-hʴ\acv/]KmIX`Z| |l;r|GWHXXk{6\67p'[PŬE1@Ʀ!f{KY"s+wqO4)ezj3P㺆;( aSa~ݥc.gXrz6ճ{pMR D 1od!߅C&;zc^U'6A˝hNF VQf#KȂ_$tucߕ֚/j*Wذ,u f_Ē]g.֓]@vڄUOk[Ȉn{OH-LD :Q?&1,fmV50K-hKr;KVpl/7 zGh}֮p^Yy;1qD1ʒm/5-5|?n<2HV"FH4NH#4m3N{͖i_Ҁ*FYHM%Ėq980 e5 jwJXwߊ5%^:5sƫ/"iyv%[{Sū6a{QZmk7@a#wziwMp+Z򗂡x6oy<0%0 r9|107W19E^Qp?"3 L_P-? 9:3>}c|v6K6'K^PhJWP nTRy.|Idɉs_фy]lySB̄ŕ4 ϱ!l7{Ag%L·Q ~h!-0IoS#XGukq0"nAYƥX`<9yQBO5^OS4VYXBEH-jKx$dͳs/RAuE2cQ. $f'ۗEqvAøMĶJM4_J]PpB?!]0]=B.gI ;!!y1~H&#49ײ|^Wx?avmתUt\.]׶UrxKK^Tb&n l =F|e_Cխރ!{ en #x}O(hl8=L/ 2$ 0U"HEz<-%!Xل^'iUc>s䋰_5hy8n׎n#%Cnסf7}W>(Qӹ_A|x0~/w+hpuy\j"m~^wzbS`**}hNZ.1aZA8}T#-GꍗKpt7`F_>cQjUYqO\1z(ʓFoCF!h`(\yC=*-Db6Jo 1i#@L\i>*HWoc*Z[rM;<`+1 p״]~96׈AL?-H-7悩oA8;ϜhA/"X$h]եEi%LXٓ B9ZAtkUm(KkZI'U#]saJKXZ&{aκr QnƲ&Rz]Y6ACk&P N+S*Z%D!xؕ5$=p7J\ujX'ZJ1Xp?jTq=ĽT xiĤ.LjX\`Nsٗ_^^=\GXjaz҅ CRAuA9p;:VxN ݕ<CXe"G7}_ O"V=46ZiZ)gJWBxB@:Ll~~ѰՐk ywZzYV]z"85ig₴~s7(04$QT‘{HFa C?UϜ ** <C(uDl‡'q@»s9V$؉ǮyڷAHvUulI#Uc`uiLVo!Néi]Qw$cftan7P.+"^eD2n?~Sf9!q`Jj,$t}mqS`xJ«vqk{f곺}F2-.guKaNc:)AeȆ' ⬘vCOOlFgVm㉸FiqmXm ,[F~> " lӋ]no%`r5o_C]dQWM0{}0Q܅%K -`"cgV; j" WK毡VʇVi{WȠEaG%lIcp,j&̏Q;Z7i (GyTEmQK=St-vKAMD+r % Y,%7#t}'f2N<₧9*-X/p, :žkR#-cg=J2EZG|qxQB&# |S_kp44= W#ը3c lZܞ5Y+ Cu/ !b^K7 wYcp; GfˈX5HUWygPq? l4J_GPBiS#zGS(ш*䤘obcB'7X9ǰV-/a(z_ '?*5Q5.~YSYV1@AT2lI>M͵Q@sCS'LÒAM[gI q\TvQQ{{^ƒ;Fia;TAŃ*.<æY^][BXFa'g7=Ե&Únfzgo&i5$zQ3V|2HzW4iPCK&κ ɣxjFE;in^ZՐxFjņI+Gɏ^"g Α:Z]54.%0#PpH%[N8w?@:K: ]xֽīEmQrrzW3xuXTcڕt"}o_L|+BĀp*+~BtK[U˾kG44Do ]ᶥ ۼzQ}O ^ZsA_gm&oe}-3/X~0x j_br^@}JA80wi*@Xt9!5:-E/Gk?\pzeYm4#r}rI}{,SB NAHfNm9lA噎ܶv"#qbEZcK_︼ߍ2jOаD-j&B%#QO\pid (4[8*+>+30(Z*/2a4]KA*?",Hl*==؅ad(* ߈LֻfD;knҶ0-dOl^=,Jr"o2RYvKa5uvoeyK6#:YlUl; Hx~a}Nx|5 cњψڪgVjOuzO$a! p i,#1>%-  qLE`5j[tnnJ>u>]x/R+ſBƍrdA*aB2M?HAhQL6ߵA iXcp|wN-+sURٞ%ɑ:ez S$޲I* T |6[gȧا|^]Uĺ^{quqf(#^/ 8 jiTd9oXgK&^|zUb›bɏ\#P!Ј6dp?KdqlJ,!s/ $S'q5O#[ bENiՆؕ݊Z)52C {Dmxg ~kH1/ōW)AAk&atqEŋWhbڹZ<M:5l~cfKnj b| ]"кN@Mmt*jL: F謂ko|l'^TV |XX"A.U Qz=)ScIt"ױB%B2Z[i^?g=J P3{߂D9L\Ͳ棘Ry`8w>v V{v7.9|84ΫnD lPH+v@S&FdLXT%\k-fBonwkp&)~BpJ0|9 ϶P^HyQѫ?' X+)L ^xF{ZOEU6_ Bx6oę{`[+P1C?RȾq'pmvr/J"u*QVlbv$] ҁD݁>zf&З+]l;XH9 Xdx~apWƎ3[2^#8CL] mF*4,k``UxOq LI*L ?pi1~Xtk(ggB̔ \It,({F%Dd@e}ÆeOօgv:+j]=i|DVb["6oo엍4PC},ohW 7t-:"{&j7S>sVYjfFMG/ܔ)(Xt{gG DE%>[Tb[6Ѱ 2<Ac^ПOmda<shիeu+"$߄ W./b=Lbӱy Ϩa-զ:]tĆ)UBh\;λ1$*Ão]u&?յ/ 萓=9z2.2ݤQ̻4qLs1xO4"Z}zG My0MdO09Xùvg-(:8'G3߾okX㯚c4%5x])r+e Oŵ0rN4VQcpʍ!Zi s`,s$.Qd=xE o\AxTq4/*ϝ"C&Q>7WI! V05:{g̠(2fQ{l_'Z.Ѯʐ'Nx~W'ڵsovE4-ro/<#5w GK|'G %6b(A;(!d}g 9W]4V\~ctH3mmܻtO:h})"w6lڍƾ03n(yf0m։ s(!Ze<ׄ!\ƒ*F]0pȪma28!e@_5XNУuÎ] Rhf,##ٱY[{#(>qU.|v"NŒbB%kS5 X@^A88Y/ΛbA@tA\SFH-AHhnʕ6Ks P?NhTOhUMa x2*B(jܳ!;;8:``\ԯq2N0E|\Ps$'(Qvl'P"Vzy -.uݣY4yyA3p_%GvL{1\e%1oe'N^we 7뽺'8O_^#.0u9frAZqgp:]@g"P;RnG(TS-wJ5NW-D"EDÔ6SoavN7taGmlր׺ԼҖP3aPEXxO+聨[ӀHҔtcס'`VSXĩmDh%MWirXp|[',/vFc`P<9ʣ61']20Vr}mAXدbfc:_̈́pnq%m1J6넲7=-|P$a-q ddJ0 ))ThfaGd.f1cOzB\݄B錖6<@W&P$}Կ7m65ggcmءY }[Xx-M=#Κܶ˪;PQM[6K &eG}\LJCpÆ´,F(wy0q$nwé=r%e<0`J[5Hu]x!=1+ x~J2L'FxCp:Τ_ťXa f< [.DWtLL[swT%<ǰYo("ň}tNqM!+*OXnC`]@Īq=Puj*r|Ϲ-{eiZHϛ/^ׅ+N2GeUnQD'W s &zb%t/ "= KDȺRW(w>;Ѱk1g=v{)Q3A!&~gHfKc~R,nq#y܇z c1:iJHຘ> {繃!; \O M{|L ze Rݺ+kjN.by'fU44=: u0`؛O mǑ vZgKhdul3Qʷ`_8OO]1v{[lh[[NI9Z3Z!gd'ۂե*أASZ;M7En%nM ׸nGVs <%[OiECPyB6GIzјg2 B\\En]D/SQ>ј'C{HU BfGf}ԧK QpVAgkN;qǞA~cxk\hm"?= 4rcv H wT+e•4J#;~>iڏiPs7'|ʥ a)OQ7F5m46Pv>oTԝˎQFZJ8S@\^3E={kF_^)3YPLL5%]&R/=WOL5'bs5tqSeK)G٧ knwicpNhb vBu>Lޢ@&JAE搊5>ȏHz|'\̻Qnj A[f}rx6dkI#R3Z Xz&+}){7JE'P-H%,zoCۿokᚃ)-|*%mHS?{UE8(۳.@HX-ěWBO/$ێxBȐG X:Mٳ͢&}EH祷U-VOp<|㯑OZԿ jOb씷3#ck@ !c{1ξr$57 \ާ2ryGFވN)!1wq~2, x!PMfSuGf_'RC%vCfeqO_;!~,ބ6gNQN{PNĝVkK).BFM](Z5ro-C !΄;[WIL`#1It ,1W8t?{>xH{I7ckyi 6OLz盗Qg+idž@C;(ȾL,jo4K</P.n_k>^ezdLjdy3@SIgoݑXӈv#:Zρk69yC-U@|{K۲J Qt3jႉ$_G.=Wm wO>'@3"'%d+s 8WoPQ+ËN}⃻S"I 9zc{C?[ 9ddL#6GZk PwkF,[ HaF/ тN߾Ur qYEܦO*^ގ$$w}54-soRU 0 Ϩ42X.=~ ʎ+P}iq '{RU3.Oɣ!A%[QHi< $kri7\L68 %;(rFk szq^CQ5q Ci  (e{^Hx  U 5A8[8t7!b KxAx~NڦiwLJs;WZۉ9"fJ~R^}f~,+>mPYiEy+VLxzn\g,]ǻFϓG? J_4I:"*P`u5 혴x6+P%H!^teV;nypHb7ݯ =`1s3^78.:g{)# R\55/X\S yR4/9":0^sl%vX7 }XoAU:s'm!pR54g+"u+EA{9È'܋q}Z??l$q>dw+.@~ݓ*.m}R%1vPhˢmcg(Zh"cMLr;\ bS/.P/V u0l^wu >0Xz{I+DBJ'mHAʦ #j>]@?Zt5:CKyb;ˆ3 ZcO&`G؟P \ RALsuR mS8Z}[yJ}ְ_1y3.c5<._퉟TNZo޶VrO2}&-a4\XƮ̻mzgB05֕kp Mv5ܽxajNTCg& SB{dajq͙z~X3ɿNsY\0Yx^ŋ}4-9. j6HxǛ/mK3Ib'ӽaXA]+̼JuB xa[$0VTvҏC0y{ sm)Ku3%`jb`gR.4F;kJh*-hTLRm[av/й4NH[nh 7V3+^D)t/>UBOZ4HDp' LbF9kV Y,H|nFRALt"i(փfv[}?U{]4Yi6&?>B`mhoxjoNՐs0͇ac=LmKlL q"qjXk ݈R'XWH6WZRt,01.%BM`P׽̄ ΄,ȧ\NgML}՝M`z-;U/1\~)j m,NʃiNĈEhΞA >6S|0W>C9TU0[v ![DSr~GMLjEShR1ҽ:ˣ .ac2ckX-cfP15Q-W]~ו5"^Kzy$-! =O_Y]gRbkcw#?3` gPEXؾRrlu˕>.^)|P"RS1qKWΎ;d0|kͿa@}bx3qO`f@:0]ɶSR0!ܐ yΰN{ʎGI@qOI0Yzߓ`0%CB.$P9'ncM& "߲ QPvq }@@eZTܦ.sEQQC{rmby쬿:<-^ ]3Dj ot3ɓ\鄎FbJ*DkZ򚯥e`z`50yb9'gKbJgoIg,3LlV|M^n'p׃0uM g oYom/I6hQ|DgSG6-$ f߃kQGcwC+tN_z%Xu\sܰε5J QRRg/n?'8R)t@ib;>t_@! UvI8 Ѣ7%Gc<<* g?K#WZ |wgK? }XX UEᝏZT܀.SUOLab_>f@ 16to4C*Kq3 E@e:{0'[OZ+cw; aIu,F,m qw Kܘ״Kj;U R:~+wq~4,@`hV*0oL^:[3d)ym!!ݒ7>nν F.Dn]]8rw/|<|kh?m>Hlı k|JæOHwDa]o l'9o tBR;܅pe)X]>I6F_~P.9ik]tuvK=;_2y3u&O_ Lr6]A|HOsFVNa]S‴i;2Oexɯ⦫$_]LDAvό"#/BjH>sa9G|B2 %lw#;RQqV|q!φ~e.C8*aFwKbۛR^:g[ M'Y쒳xj<]"D,׏i9 7AM恒lᣭpvI' O$Vmd~Ρʁ >REq?.$f}ƒNM9$a|Q$7o:>1mO%'"}$W(p~?,":Q Wgc% cm{CϑG RRdk8:dHC_&Qet|xa..-~Z1nz| ]/qWs lԯfsb'2)ƺ 1VZH7@a<3o坿hsuҟ&Tvإ1fciNRJ%wBlLfiZ$gc>NL,M06G%Ȇ3lpZ^5OYvwlƐ>wuv ䷼\d]tpse3d ;)}Q,H1Z'e@oY:,E!Z Z:~u_.,} IQpQW2fNsܟ:ԺQf%H} ca~ g/fKqșG\J)!δd)IE[w;:)50nnߐ4xD[eO,["f7wr%rucOC C6guke+GR*֓93$X3{.WN7b 'W c`R_쐬d VB`2untFTkhY1ls䝻ٯ+q|0:jS.HG0)0g-INߪtvp& )uc A W ՠ L,]i{ ߚ͔E{u~y$>'l&}e7,`c2Ԅe2w6i ͜DVb^Ble?p%C/'L0l%XcRq*ƴ/oeO㝁\#`j71mWaw]<.X]6BNl&/&LC=ď͐S?ёŊ/ i5~PI΅;cBxĘ,>fQf qcĝf%uZ&[nyuҐE {b~~I5[Ng?j9 l$|BPTd | #AiXVB8gʰCRd qaR>՜t(Ž.VW֨I * }XrvH'fݲ) Ք利KIA4E33B9-T*/3~D~X&dޕ;0\2'e΁q[Oҁ'Za>B~&(6LjD0̄"o'P؊ v0.takV"?DYdLt)% |q̣N8Nk7 xԟR Z4}ZPA u"-U u״_h fvkҴz*(8J/^ˤEgߵd6HcG8Bᝢ^?,a0lj<[ɚ!kHާ)d!/}-A_wx"~CI_9 N of j ;nB!͑q͗Nv9z=\y '~kE}sax/pm/O[*J^N앦+Ci]`KcAL k8=睓e~m?eqD\$v2z ^\}իvz7e%ϮuƮZz'4TZ=rJTE+,rT1Zs>t4$5U:̃@SN?K$yl3GE6{ںaw HQ1ƸjwrpVr6,~Hď ZIeۇrׅc*mPMbI)꧉ ^f|lWVt_Eb9@i%A:$OSؕnִxhfQW@f/^M5'aXxqHoq/ˀCFbC-h*lRrOyyN$xH£ߥ,ҍ`{TCwHgmmhUx'CQj!$Vy@[AחK2Q[iIhy76{terO?,llВ>7٘zG9ȌhyYO $O@_=bقf_Im@3ryڪH#*J(=90-x++Oo0T5yTD{zYyN0Ei]^TW ~y /)0bm&@:,HgK Af+0ɪ.v~DF>L,uUdZY# M㰃$ffl}ôx'm1 0 :~`Dr`EoM)hB|ar1@w8y84*"gGE ;-xS"X N3^N/L1G3?D쌻>7Jl>iz,ﻆ{ALkpoy]ӻ).2yrjCTƪ :kx#0 +)fKՇt`VekaD`M<9)O"2ז}"YdȽ+ݛΈXܘVBӸMtgUq{V:*ˬ_iSl D a[6 F2>F*~z5DN30'JzLP|ɝFY"sP4%Anm)<>vzjXIP"\+J Wy6dFBƁ UBPz1Hjfz#0IɊnr,W3xڍ6OC![YEd;X|j@WbU'nwpOb[aD|AV;ߌMXCI<+_SdZd hbJp@)؜ 1oh#ٓ['sy@(|41J?Y_kt kU%_*@9.1Äh*haDfBg)Th#K5VD;NW[0OvƇp2gA}gg$UUbWX-AE b(m`Kpr?b< ?!L@k~;X=IJ J\ }1XhBܸ3׸cl0^S2g]fۢ=}W.a~Ԕ_ =E&lnƯ!юcJp3q3f ƊFU}3*&L݇eFyqϑ/w8e<쳓u%_q9&p6,". 34H^׿m+Zl(ׂ@<[SNetMM9П24JaIњ$ߖ9OViK÷p .M>)y( Flyx;Nbe~T6'#8Yъp)^v9%Eav;Dǔ9Ц>29 ,̓_ W4oE~2Nh]QlkӣZ{ZyN hV Hq{'k& NH y&dx/@)ʠn> |J}[2s&!zZLTĥ/(Z;@,PApX+tkk2?񪓒VjוU-&2{zMcvld5;/JE"dE΄Bn.aW~M?w}nu)Af'dƒ. )F5{,~ģF6ȐDz$%V4d t^ X,g37+M>k+G'y?+GЋ2Y=brѲDVZ_xq5*ub=qFUW($+.5:&f,vw*RKD3 j);9[ OeC]dR->}p|»\|Lp91l8pڡ_[]<XEIprG /sA/Q@ݩ3NJBgSڐiSuJA2w_)H;x5 ꀢ!77%R=@i-4X m4M؈&S*%PHD(Ҟ֟*J+6})I*j@,8su#݌y&ZbX]գO |SֆscpYF =]Sla]EM{ș#\9ء紐<\y}D 51 d/31J,kpt%5.s.BP߻ - wRGc q `6UzN4/$L}_%&G%v +3ݏLƌk%1ُ\~"oZV.fHҽ!.:z|W[дϞ 4_ U Y9D >r!pK^Ӹ2*z2kM;D]\W ZXr~gMqNG*wdT?K]t%򿚣w y]}fSAM͛vql{%RC~BC .I3$:Җ7%wi(S[R7TOkجqdd_]!sLwwc':QH& T> ܎]X}w<3#z=e5Q88$_gɜl˧=ui,DyC msCbPe0 l^|GaZ+L+|ȹBi_"82 ``$[;HAc73{WhbsM\|/ͪ]ISy>]3<e:,x%9 iu*7R3*oNx@ C0w~!o%a:MS=7l{9m01G{-B ,܋p;1ѵM7i3GQV/FS} 2N{L\+>,@>D^;bg5[ ٪|kC#hXVN Y!(%\_L^ r3Qch?s '%&7}+~& b>z\d;{9VW5?1@6! J/#Z(l3akPlXC|꬚ `t^j"떢Mѷ\EuiE e xܳ`Cg 8.) |!( /0HF,]4#. >.fHgwM@#zw.6_/YGbb6UPhk#HQfO}XXƇS{y~N<wI 3 hf]a4#`˓ 5v(Prbɼr<h=[pLݐ$;E8Ԋ--Y, jdjBq \(/ K%Ҹbt'LV&=]B6X!f s=G.gz+ھq $.n}2U3 V`( q5?@ՉoIA*/1Qb-&; `-n&UiπӲ/qSl$lםM| AmX+&W#}1o_`5r! Z+wm": tw>o0ߢ Pty|䘊?~WfP\,MHgQF 9-yd}fo8_Ks[36DV/τcl`)9f93jX-J YD?I||epf b|HG<밊4M Wݳs)aFW_^vqubUUO; (<,N?g"ܟ:3e;0P;dգBLBZo l 8߳cC G C;NyZcDtRJ{ Wt;E~G?d* DS !SH~^c'cQ?:. C&TG?QNI)*9ۭlCimRO$+Q[ȴj=Xoc@V>H\P=|(K}3R5ko4@*fʎ.1}ۢIn 4A&.& 0wd!vAb}յT֓/CԹPÁ'2j6^Cf:NmEZgj"rT/+QI\o*Sm, :zl쯉2遏l1e4.!D3%gs>8A\K7ߟV,j.vȦ#u* ዜHE?)19g:D%3czh20xVx꧑J $K  y9Op04:w@_G+ 2KUcmxw2B:PTxa>Шm ^d{d F4vǥTd)hw!=R7.>FJ $߸ú>IB܊M +NDv#f󩹎iX90m?МǸ j\{s'Q N}{R+ d[.bwW ʊr,O"8'glqط?9HGo\ țD@}[ Q/~CC&BՉ -jXߡ+Ur߇?cy7CYXr%.$,B(8q1um=ѩ` NEj)\rmT}n#?gDȕ0i&, |Nٴ\jb1q5$¶OڢJQ4^Φ->2MEaUпLVWsS7W:D}qjwH%<͠\{@ͯȜ x?G4_Š[8L3o\7!ֺPk%U8HhR<谰 xNJ:\#往 MDZ EIɴׁHnܻ8u?i= l]NXS;џz|<}HbBMYwc/|aaY{8Z#ĩGY􍜒,0Gܜ(44U)^dMi+w~ HuݛmKBĕ:(lsQ Uqdd5S#`Ըc=,U!ȿRBO!iHMp+m[>46`:>:ңa- Zq^})؟'7YYqx⋈0cҽ XFD#m=j !I;_u@tfpú[ZEh[ ?/:!'b0o-V vO"mw5kmp lMer*| a77s8&|Z!Bch)*:w,뼦3I݋ψ9g炘_IO]a/BWc}р&>b8/^T[3;Wip @{@ԭ[- M|&ꂚst15#T1ԯH٬^\tBsz}tz0Uؐ>񟴐 V}%Y}("4y'k9%͒ᓊO6vܓf \MD:j+?9'i~P_0`U3gK%ѫk> mİ;o~-VkNxpH׊K= Ka1hlN&B(<ȣeo]dqac` |fSUL= L}^t=tt-LQoMJ R4*b"{.?gл7WڗCmKQE̸W 6 {m%#c#!𶗼88`ꝅq.NHXh?pm~93ߐ63`3Q!Y{pH +5s:U " [D_=WF冔ܮqL"\5VB[N[=C698㵗hQȖGߍ '`s7/_D^\HXT1=7^ 7벚A6=_1ߥ6(nUL1ZAK4H0+`hiPoR*lWF6#`|)Z TQb~}L_u*Ƶ3.T/G:!WP s Vjē(7pUk K'9%Z&EBI=AE@$Mw1-KnyumyߌK¬Њېo0>֕P ߤDǟ r6 BÝHQ+Eb9 prO#V=K f^fJмUoOKPfաŖEYѦi"K RKt"u +ų:nyzrOR  M(UaJXxio4Fgr N1;C0̓ dO mBAp6%t"6]y/Jf-~tq8 A)(U'|se+zIYpq`{qq9^.7Ruh!?qޅNsZrQa,SW?؋OAwCGO;[$C6z SV˺ږ#Wh;knM ْ4t!5qu?VzKu!).Jtn.HVC}egl4?"O$(K$PnrS?tg XL]šOqagv*v"ۭp;X'-<ϨPV3{,䓄,ΝD}L*LV/u&'5|U4=gN=tFdJU{׀=YZȜ;QYjHC9(_!EcFDz !LuF,bpƖ[5oZ@3J9 b cXh}d,ƪ4Zy=.L*q[P񹓕*HMlS)XQZ QJu_-ya+8  Z 3%eP[g!{vI39TӨd\Z)~p ]VME>H5-iw6ㄘ4E^:Qy"Qf~Ԡ{u?qwMm5ԁQqa5rΈ:۰;MwCNHj4fң/Lm0vX2[;H;vbo^i $1Z]At;5Wtz-qcL֖!;g ӓQJì@g|tx}{1u# ajޥVyWBdž FRcMs 2ѠGc~i/ު4wG8W[VZt(',Zn]|'WAc$QMքd4p.sUgID0Enp7x iNs- ɼ9=b񱦼Kr6=cIس>($O qzrXҫϠzFđFJ_uܔ[I!d0hD1 6'cxKhJI50}~2Y8ǺMP0 ̏bbU}؊c@]ºfzʫ*-lmcc.J; cńm+ Qg㬽c?D  \/ #; ;i, &ى,H†8 5|AAnhfѩmqu}r٥25u7Q7i:) 74TaU]G abz7DIͣV'n"4&4@| z)1xdMwl&MGfǻQ .WĢZ}>0]B|xXG&,3BW@J IDufzikW+xvI2{CediJ 2f_#Tmꎗ: w_ik"j6'w&QH |4'nfF +ѵ.:s0ͣӧQ=`lD8 $w:w $NB4z묽FRq NR0 YΤ_>LpkfoP!heZH+jP>=i-4JC?`=ṿ75 )\j:9 &"ڜK*5Ɓ_bӝ( `]@bS1ppU,VE xճŁ|>FqףeyȎĆvVH1Q߀Ǒ>H\3tk~~.͵EL;e \#xrD?LL㙨Gt8!sXl>[d߫6"a K,b0zM0սПul,JOO<ͫUkLOcE{ɮjjM>!p"HQ\Ԇ&6}/i(z>pvU 6pԡ U Ta$x).o;W%ZFnWmy6eCn3-tOm)?F>h/gW@ZХ7X:d=Pj?uE=8 %, P.jlwG!epԍ#TkOhv"pޏóLGOd ra2#kGibȢu#lk[H<@3dh jBg#?!]APZ"?5W#z A10 yfL,c nf֤!]M?~ڝyTMX=C":A)44?0%:儤t#~K>K7N|S&C%PRtG|G+A|mπ?"Ƽd9 L-+'=9[d׫G JUAI1ʗkKj#w 9'(zAec lq:^s(tHk*9tg2*=%rL(>xBШP}Gu{N|H(+/%L2Ǒw rEO}ױ>]% ߤ^xƓE3옃:[9\Q'B'dAuѓ< XB]ACy1.?6[VW)tl蜆m@ē$nA$Xܻor%V3DSדhycWlk q'tY.P+z췦]Jr0Yٙ 4 Ao㋟ )M%WϨ2ag+"kVN-e5qO. "U@<uHZ~ƮN(pvRaB /3Z]>٤wo0SN .dQ2{*|”V M& TDc-c|ΐ4-Ƀ]:kG?[yȯ}d34i8 e4`y1,9@-vAY:pC*#A&+A꾳,03#=g_Ew촓 ]K|f . ٰEh-AJ\*銐qXv?#ףMj;v3QF#h)L $/-M==V` ZPhM fgIԟ躸XqhN\_SzYgq/Y0؊z?c<Sh@H˛$,}7HRJ >T:;nabCCHz<~LN!̛ke~4Pl%*S$ ̼͢lIQVp9n/P)Y0[C)E C” 2AѪzI)%W?R?]Vaz(LP{aQByBm E*Ow-5so1U3'pkf ԑ1L#qxijJ_˥++\CwfI#v}XG >" \̰>wpAk ;rWyLo% >WG@6bC|-dcN|,2i~)P@Dilc(YI HlX6m9:!W&7WryVgq1?c`dy"%jBP>̇ ԕBƍ/#ZK CxM[{3`B V̆ڨ~n*A$&eSb%QQhDygsSW@˜Dg/y̻-/':L7Ju< ]1JS0V: ʖr_`l'Av8tcRr?CW[?ޏV$6Qt%-̹N\ďY@h}+euW@~/Zل!Kr \="Ɩ?ȑOEGaVoH аfz!(uFi,K).n >rD-#>eX=][a( e>uCPE̪֙D඿܈Ъ+;&{Bjv'd<f.!QIcL=qJU!/IшT$jA3BB2հbWj Jߑqڋ(4:HQg9ڭ-42Ԏ4XUŇ/(2:o^ԉ5Ys2qO垿P6-Rj}1GIrE=Nuh5_ "Q}mBCrUv>7"nX("A[: t:Zi4B/NP/y;JQ7S"v;,!P9H b'b០ZnKMAaBjOm毯}y.3^5y;;sϵ3Ja<%<>a'bIǰLodct*㋄~FzdydqN+Aۙtwg_ai.)MwHAކjruY5hΖoI\pkY-S]f:ɦr Oo*wd4@U4O]^vl1Xb [(*6}gtOڴ Ai^,E`cq ;NsS ƣE09#{`y.y Ίz[:5M;6e z{8I/ :&OWeȽs2NÑ]FC9x|(굩*_ fD\nw4OCUcj$?QE}OqWbB[gz/jm׃ WMу͘Ն;dƻFf'^L<4S:nxM4R`{3ca<^ LreYgw ,YF+^Tz4{$-1ݠz@Hrǫ{Ai{5I B:,̫f 4J:h}^,ZV^38 x]eb#bt7tIRd?ES4(\L de+^wEjuP h4@~}+%r`v&j>]4ݹ/F, uh 0JMZt&2vL1۴021FRQEN1jz&taxdtaa+|@J%l|ql8rS@E^|3%$d>%N*nl9nUI1kdfF0Lf';Er;BJR~zNt~0xu:"*_$=˃Ȥ P{QM2"JpM^r UV똓IBpbYlsmrt2x!nTơ]y.e[' ޷"XP';IK:KvY, F'sc8u'ȯLi%i+Hkx/ \ka%3Mx|㐠:6keIBK4|Q;4*A6_ j륔 k>pQʻE=7úu6٢e(scF⣫§|S{aD@:rJ)-/!osa9hym(9 u!;LŒ}ӯs>o&VvgGBu>轗HmO. a }$̩cspBX)܎A<1}CK⃴tժ?n׉5mCLW2c9alJ#c/e"Z4O`\;p}'3lD &Lj&F`|1TkBp3T}/R/ZϾkU=bN˶SuPד^s<}Wܺ6J}D]Ȍcxwi7R]gtZf c\L5)yA ?=3E@ !  ڤY?Z,A5 O@ gm%p,vx+p;/U!jiHwuYZWxCFS+u$gL[QӞ#"Tv B9R9 5|(%f@ |TD"F@ZHۧ24m v vE9 =9V< ]/isc:\m =rL%#D߷^/"`blXqcjHJVN]X=2H>~[:u1 / /v@4oû3"[b˅xG4s`MmplW-|{7kQmQګ+8z~SjJ;D\FnDCRs0sCCT-soȠh@|z s|B6N fL`oq!|AlSN>Se]B :!;ͩ5npb_SABɉqn"W! Fሯ"9폏*@\wsx-sԐJwVs+7pIw19m 6ԅ/3@5oGpF8sMasFƚƯDW3W^c>'rR9g_K=ٸX:71'k Az ,cO|p9Ӧ!:W_#%tom`T[Iusu4[υߣ@b7wg\I#@ŕ,V?ꊂ6 2TK=r]Z^vY YjSLcmSe5g  6'pC)"ڧk`n\>ldiq}q.ʬj`m XuG2LM@ =}=n%{4_/Ҫ3ydbb}^O)(&o^M=f]OU>L_/8ѣejdV`#o츴V"՜-8 (_5j#A4y- 3|Ov .OVmr ~0SP<)]U天\ߠ1!ki ]rx pmStP7!lf6 cg6~p1(+O`h: b[GD?eT3Dm] 'oa?ji` BB#E:P&o}$$ aavǸI`VD[,j:ְ"LrÏ)/[ѓ_ (o{q,1Wu&+-L4hqj2O0x*$vE,{Yt֐}D 5WA$CQEI084#iN5F8-Y:/4u2Zxʼj{HK4tFF~y*y+ljZJH-i6kpǣRb kwԿ1󷻙+ eS#½?WUN^ozŗVIS"MOfWAlTk?3[4u]UԀ=}$fi;4׫D^8.9K_Lǐ@@V>BQ8Г|} @*ץtlHhG}c^ϸ֒B0WP~irgF^-i2"a0tkO}]\\D_%СqMh謵R;s-*ܿ~=<\aa-DK*zlЖ~ Ϗ14`[ĢODՃH3pO/E.~S`_"b §f@QG }i?^52\mdji? 6PpR^WpϸN\6Yk &3NYJ9UI8Ch"kYI#NwJ{C(Q{^GbQ,Boy7< OQ s?pL\lq l퉝J\\W6FIYS\[+o'Zu{ÐrָC$WJ1Zo8U} ٿybz +v*>RYÎ?N?!I=0돛W@wPn<' 2 &2TƲJ$UA0IKޒAͱBLt@/ :Аj)Iv~l]%c:/Uɫi s.-¥. I<\`{68C" y " ]SRf8q0l!wz<8P{o&M>/B.UQ$rSS/<|zuMѪpoqb*f2!Ф@M낼3(+G?ܹG)I ٛYWIVNj| #J1Α"ii9$U,}L@d VW Su g6#/hu Z/yW\P 0m*{=QGu Ae؜}PDB|ۄ!ؓł~o%]Hʨ[AE`PBI j' ϯ9u7䐔\ ɑ//3Qgy Z5tD*7A "c5A8sWد.`O#*ԘWcZ$E8zhyClye0zdkA2GG;duѠ[=y|ø>9\ a`HDmr,v?MdެPnSnJǏ*jZ9D{6{Wf_g j'@g"IL8_K!mHѳu}NU m-_ |QZohv,K:xҀ1 XTIAf̶URDe:TuUWg_~I$+By$N*>x}GH Nl-brSY҃㥰Vϲ!axᵑY1qwl|nT__uպҵvo+͓̐`bL{% 30NFk~I& ^}aґޚgbFצM$M,/'K1QL 8Z&p䠩oz/*X"^wN4_^:Yul_97/hUw#&L2 ӨVN&UV!Y].PsWz=ExbxV1#q(0:JKQ`lKN/ڂ[:9o_QiI39nG_ز%+ӧKVYTY|\2ǽ0%p=|Io/KsJH"^*9޺C; npA)zS8 Vρz\YaO.pxOԏ! r]Jt5wNZɹiZ#61P$ Z" IʁJQ_*g k#'4GUJfa p;sA4u,?j ]NLnw;T}jG4mSO"c3:;f(%3x/5eXqk,Sc*Gc9|jkoBLUvs nЦlB+W4YĹa')Uhd%:2OQ'cUzlk x!XN-i%) 7W8)Tț^>ĜpbJAj_ 8lހ%;6xZ ަڵ|윂F`̊Kc]lWm0{Av_#sVė"TfnmPFǮ h_r)Ox!3W/0%GJV`Z%Sc:-sEe BCT]3lIʼӚ鄷7 ţ'tފ݅J[[̀-umq[Oks] ՉSOp<z>yuCG=[~rX)RF/ܣB=A,Z OH]hݳ}úXr3ls(+a;?1åCʮ 2Tm,UݡfEFHfs> mC'"g0!:%65@݈"AvYxCxv$9s}lJge|EQˑq=A4>5MFGסײ2 M"BAn"AZp Fʕ.uxLTװ*d g.di r#7{,ρcQ*.̐y Է{Y]4PJJ駒9]#y/ Չ)9HL26~S[7l55/܏u#.r}~gyps|CC $/c,M},zFџ2~?@VYFiHۆ!hNi!ȓ?]bZXZ.D jD}Hmк%#=%sqVL_PAxa}"R[6 q]}8G%!Adԍ> TV+^ij THDb::>oLn~aJ59c^ ҨуtJI?6kM$nd 4OތJ#8<$Mj9w@NQWG r(D܄*׬jCA4>\ɂz}+I:)K3<hSޖVD|OcAzylvyc_V}"O*Hm@'miWQaSSh1,W&n aw3VI&̀_^3nQB(LiM/Dx{Q`Ua-Z۝Mܬ%Fİ5l.j1g`C'FB>Ii@版fC$EGؿ? <[Z"@FjK\O^7eX`ww%8Eogk3$GhaGg9a#T!Wث)sbPm1u #>X5Ш۱ʫTn ;{] bq%D26[+>v:*D_Sy D-G>O;*|i JL}yMzG;@Dlшl\GY,).>ů񼥦ԮAт]\1XL TI}m<* 1,Ioq7rLxwCp Ήik {ޤ](~Jχc@T7.Ʀ>Ogd:JI?c/Ae;!_vV̢WJ l %蠧c9DfqrKbZo޳Tz{Y _K@DJ,{Lp`&&;QNYFwƝ2LEP9SP`m]Ν4ДF+ 7YU3AK}mnOAfnPײ?o^R1 #o8(ūER<'dFZd$!m4;vO~σTvuW}@f (d9r|ҝ;R`qPQ`CdlA׹A{?!wz֑>Y[vոKk'@|t `;w<.\Ŗ}X`/'ٷCmKwu`!N[ t0j]Qo ۱xIC|V [<B$lpI׻c2BDr׹H"|kV9f:}Y5H!I̶##*ZyH*gtwZ%s]oY(@gE+)֧fuNIl.*h%k<6SY"jT8ͫ3ql1spiWf-: !nwrT8KbSҬ]lXUd~5 3o*,KTpKZ "+-rg$Ԁ{ʊ*T~-+M ҅YlR{28-BN}ȓb9Yޖr&,|p@}qĨ"N}tN+9rf,4md܈KkA1'a7r<=2hn)AoBGŞ&˟+*ig}zr]X.2^JrjìL4Mtk= U MԲpt]\)f5Ձ {:0.׶v' ^; my-vQ|K&to|'E 3g>tT Зν/&pUv*JV͚2XݛgRt2fI?R+pDAO>|TmIEv ;pa9  6[ i&bpD7shBV zQ5bL7HiAZSUkJJ-YBٞ}s1=lU{o7Ot|!ϟ"s7U+|c<+{+fbem~y`S p@~ lkn(^@RH5D]57V""5X]|o0Fl7 ?NS~wZIBeR:߿YcS/f$(I-R̭,sf-3/CΓǶUEܫ,3坃qm_P7rMشDmփ^~q NTbZKXxQ2(B!aYxQJ5AԍO0 eS%v,qw!E(Uo(I78(`@~/ZF}4nqhRE oIzs4"}I5gC/Š"eJJqŮH/+QG# EEFPxPR~wP܃f71Lb`Yf{4DCS` 4Lʩ*|%s4g^4t ,9v:nTz_[ū=tʆe%"9< ] Sc!OPA$ >L 4DQ {rʯti_#pN1łK诶svz6R!8숏(m+^}Zng[DnwMw9 pvۦo5LW@=jS=!ɣ=U[$DUa~s`X2h{D̒Z@] RvL2yo0﭂;E\!"ۉ.-ǧ^f@\3_酰}MH[E Bc(ފߗ{6G>A!i[- &g* ̫ʌz(яso;V~nm6 h9`Y7W2qumAvg>iRywkn9m95d@%ґccPF:D9)M*M{ز(ofc-#3Zߝ&H辳Q]P(d0uiv(݊/}me׺c#)e"Kg42MrMnnE@z૆~"O]w4.$c)3jza;vzոTBӤ_W9K&;dnWGظKEkz^\\<~=;D7CSjqڹNDxn nџ'aBj0\f 5mqzL0! ";(<3s"Ep㈏n].d6/ז_3 ]î)d;|+źZĩUeH '8;a|P>]2G p} #4rtT"mzֆZ1\Bs7}V~Muque T((r˧S f+v<4n(WDcc(_>u# @%T)3{NSSk` NV$dj}L4jx]r7 PVGiXKB$j}V6̭}ė! f%)fG6OŴX>l9UD EZ&VcnWήvTܻ[V22!PW,Ys%ᰀͩ囫7ӄ͛+pA RP*C]hZ˦VၱzKFeMtDmYHDV) JD6 nig]bO0[oR*끯4 4bUZa$*]x\'m HK^: ḴPzo7X8A'Tm9*ʢg iۢj d4g->ԧSX$Dl7qŤ?=2hw%{?q Ѡ7BE=`n\y_2D3Þׂ}%}7Vx%Ae1^"uWX 0Fu|!@y>^ŨApѮN: ûs]T3mSU\g=o*3-%i'TϯFhGMCjEgz OYRXgISyg|]"$c2nS_B?*E.Ljp7sǫ y~3f6'ާZcԑIn&dĕYo劕`:7a^;ыݜKLD+1$ 2l!c!!í-/rrfɝ)bV(@d^?y`ʗ:+$(fV_er2n kc>]X\afH)@!v'&K}y0&f =p O֪4S75 *{H#Qa޹Y'CI W(wE. I"8#NPbn[ ? m~={|n E#y|[jb ս;Caty]7dc]ly~՘.MWgow,woʰ]p^ -'%Me7Rdb} ĶdA %SѥxEY0_=z?:7pбZ1 \gH5aŲ<5􆬑GUr]9RaeE"xH Gu*Zq]اG7#wV^ R@ý2m 1+,'uaq^=&{!";:L7* "[m\9P$3"UPd Eu w/(p`rQQrj4Zx%^yDYxɡ1i\$TzS),I0?n)P_Tr ºm/u Ļ9RUHW;njF|Moյ0BL;#ZAޅӧq㉂21hVc:>vK:ӿN6l:'UqGr]5)# p}DehOC"G`s:v嘇@{Bco;?|r*H$¶ʈ!|sTeF\038%&*:IdWhƿ O< 1t|x4)+xq Xؖ E'M&ӧd0+agcI+`і|JLADhG(b8E)'^mv_Kfc=w:aL_(.MOz#°KX>5ܴr5cw Uk b? h˷k'iЈ^v.U y[-/WJkŤh^jr퐃6o+懨Rg}VTҽfCPSc`7j69i#&ydO .鹼cWT:6u-T- NN['.6@ݺ#riZ&|ܢڮX̞5._f[\Ƅm`^ux |RgFBDҵiW= V\IF}wɝQѿcFȪi1\Pa'ZIZG FZT P'+)~tM=ojxQC^[k+ Рi! (1(oQ#Kvg»3<K7j6Z37cS zTšp);m.[3&rƔߩ Ԅ3N-2RP@qQ7aN&~C 322Ҋ$W#˫92]E?<{|=Ul,NG_~a{\A 1{[6PvK27Lf$ۻˋ}\l_.^`t{#lZ{kж:tlOktS"0Cv:9"J.r0'ܷ>}IFGQ7гaҏdgAd pmz nmAJ/E?{Zמ:UTb/OSns*#Kx528/WWıH6OI{QGE試 @.Hs( ҅ p7]<|q $QwS C|u%ajn%"Hȉ_: /ޖI˜5WTp]FauhO/.1] }2rA6O4B oqia peB /Kz24$I"}(ެ`Kt!#z9qYo O5cJ/kmC;(?R*~Ӥ>_9ֵ}gvk Zo^oV$໗AۗH3w +a $Aګ[:?!JrORza.e>ko9B2x w#gfViG!.56Lx.]-3 !T]v.ҹ5W]:+1PZ.Ш{KAmӃvL#^яPv3տ<7qA*%M~v&}y..zW?o 띲Z.L/FǠKZdWŭ)|l(ZI5%2<::_Z"/ QQSDfBƹS7[Lz!M>zczmf),FI[WRR (ǔ?*<7WMg3M+#+Lj5oB)·͑ݻA1=dk\\I+v_-E~p{!~V-J?Tt)$T62r%!GܟI0:r'ǞӬh-yi :Wk/Wjj'l-FH:*h$IY+(B 8 BYQ*$N8`QE .x:1Js5sz#T[jd'6CC:R3":d`B,!:FO[%/l3(=-\l1gMb|o$"`!iб*PHf x]* b%DA(1``pmnc_w5{.a\ut>)BJMGisD9J0)B!Ye]yz: S ÎA:1Τ,fw}21bյl&y#J:RKPM^]2zk~VM [s(&yNF)Da6vP^"JHX8Az%Xd]X(dfiZf~|HiDDB!@ o6?7`C9i~WCJ_R Z(y7Qe9I\^j]`) r#foQz=BDNBj0YY8$x51l*㴬%y]3Eص8kLJjU['ٽ5yd\|)KWt̵OsEghl2#l7H(j=~SLvf]KhSJ#JL+b)H&}txG:3`,҆  PL9 B ,Y0{D =a~1J,R4ȦU}u xNM\jocQ2+E~z4lƨS϶M;jjǒO#ДD(.`V[.f{ TA.Rcu]P>4]]SNkԢJm"d``M7$ĩz'ľN֋k=݀BBğ8-~H1^{X JQlҨ~±; 7-_'{(;mrg>[AOᮤrk{ {f^w8H#U6Rzٛ]⪛I@6&PAvD6Ug@+d,Oeaٍe. h?25V ,>D0Sw 5\T#[n #h5ssԾTR=I@Ji*ZB;Jra m'{:6y5åstE5v1;ЄFԖ f}Q& d gAn\b%(`^AxNR Us9; ԥN ~p"?9腿6\<0͘GK0T{-Xr*W7Vst_̵@jO{T=)|(~*M|\lA3;v$JO&ߞ'=+XWW fnM"{H$#u?!of!W- nPyؙyDܝb*h2Mil ۴z3صo{vq;oFERK&_ժ,i&s"I1"> {g  ˙~|XOϛxab16Uo"siԙf7 IìK,֩@C|ɉeHĢi~!DC K(5PzwqeA#NMIھ]<{@oEfZ @`9(D>kg^ z{@X8R~E|w~GӃ-d55F>V=$Wn}~I[|f/DrGu7e dYVG? Vg"҆z}g-#i%;g&shU%s$5^mN UyOm=pI t ,&`#rR 1y ğ?D4*Į /kHFL } -Ñ  B|ʶ|laf|)zc8AХt݊͜nbƻIH@̡9+1kLIQG}bZ똨}/ TB{!H%SrM7=rejHbQ:Ndxg/A+"F꽄U_Ao%@ӎ5S~gR*kxd&wmmd< B `O98Y#^`S."oM 4r$[;yxWRRz+ .'LzBTD;㲴NVrW%͸˿TɄr\L:q(Pu3Ʃ x %iBM|aݭY%S20;ե;n68^;M*l" pr|A QHSt[bB'^b'MTr{/>Qrl*⦬xzF$ ,mNHL⪄iTj?8 %szI/R릉;: M) pVӹd>9nN1yeJ&0JYhЂ]U846R{·! Zjİ-XrLOMaDä Ept ;3I)`.-sH2Lgic&Cx9liܤuCܒ9paۏlXMI' &%W=Ƴn+21Gl~ 4H  IɴKorr Q@oYnkB#mO~&"*T[?5pQ -o>w=r 0f[=vL0kI8^lsק/{WӨ$ÿQ:Cz8@'W/V~"'ƾG,ћN.5_8 {sGN!f!jP1ﬔCu)+}F"lW&+Up~{3KRr24dc9rI&OFJDHz>4~X|0XUõ6 ]#64 0L(4&L)cDKB.#jj *} yж=nae߹9KZAQ|6e篭PanX} vn!d|ǛȾFP Ȳ5Jqa!AؙE %f,K* cgR^4(2 (ݛ k8$-s&ЮkJ0):ϗKcHk X!$1Ș<5M:9uW@d B"{:'Is#0Nz;7%_ !ug,LgHC5w csW##(yܵ|^Pf0s1m-ixfN*O34`Z WWQG- M GL/g&fG=7B>cңuC kV![h@PCN9ZѥS)d }'d;Ex*k9S_8$wdJ^З0T'b1 ڤ3 >.j\8 ƙqGnigou3 !~{Т|}ju`sCD{q BSgf^֮*RKr4/>%[$/*6IӦY<4gغjZ%u5L,>ӫ5wCY\+%д1j0q F![$vH^HfR5wͪcr(mǞ§!^̤p"wtBQnzŚ0!#oLh] EAa^z"7=|+ A⯉w ~.GP!#ӲS_NrֹYu/1vsʈSjQ>dqkشu(N8QȮ/ktڟwBi#*Jg\xҶt< q.n_H x]em[-[Ae [Dg K޼{YB'?.'/[ϙZÄCվ5|Zl]q{ʖ5ao^.0 b .U}IׅEPݵ3۠@̝s`LzA2ULxq܉GA@)!A"W+[̂[`|( v©1nyJ09{pߌzw—fOI#iңyBb#_fo|vW,t, rbcHA r̤ ~kUtA!"n.q$]S儭sP mw\6~Q'گ5DXdBBIK|0D,';?&NBfbVΟ #ʢzoߖqh|O Yqi#[F&22fhuhIw'V-x+=Ks Xh¿Tͩe^*oNQ41P 9ĥlEk&nˏ@?P T66gI5aueD@Mk'Gߏ a+2,V>OCSfB-?duxR$a+QPr?`(;&v$4fӭuy`dn:D .A^k ېWж_ )hJL`"rA_ۨ5nh<TFIg#Ȋ_xaXVWʯG-~AlFS3Q\gBdVF"+Ea2dΘCQՅk$X{oL[.xsH}oKG』|N7AWPY/2f1c'I:F$7җϬ2 /5>bh;<enRΤk^se`~(>> migQݞk.fl-΃U\1 ˛ =rqS?#M.``UByFW8k9Rj>ɁMPa=W=9 TRHni'>cj_/.ol19\b9D5wx6x.LqOH9R2rO5gR^0v94_ oȆKb?'Xj^)M8Rqc!4nmu%6BghܩT)T1J{w}h\DIr+ɻɔjw5DcMd'$qK9b gtjidժNJ{@;Y ;I(i@)޼e>&k"Z#.d'چ7ZkuՑ b A > 5l$qS0O"W*"ni*KCI*HqEZ҃ ;ʃ~ƒZ8{e#iDKdaI[Pt2dE9B樎[k8 uW"rjώ#zk$%នW\ЛܛI*ǣ߂MV g%w @s'^8b1vW1 pbbw{a3 VE̋Pd;㰾}0%NZ^"4ޣ}h6A$@2_Z4d+|: 'ݯh8c>^J'=ÐovkRF1opшv.D 0V@N)} {!aA@&yMBl3f)=o9kWd0({qfRP,OFPLW9)YeUx {f:,RX|_6Iɑ1w q%k-h YڰJxeT}]BVҚ3;a!ru_ Fr $YP})׆j4Jp9U ''q6Фh`$dV_8P`XT4ͣW>9 J U@q.; $o(&q2n~ #es*rp"s=4N1u#,eMO0'vwӤ-UBN'h$2@*J?6)e7;7-9!cԺ oC/3̌|E?Y9IA|[DpQM}G9'F}[y|\ѠdT'5^E>t]r4%oRG^r:Ή ߈΄2V7cAઉ5tL ҿ2w>BkI <J81tyБ,Z?-(>fs8I6CC~ < o80GV{N @e2IbGvMR8yvf[r}EQ)CצqQ]Ï4WbRnlaR`j2gdl` $I3=O㋟vW~8櫩OGTնܢ5r`iQZ}ROPXHBt!@AnFsC0) ) >+3 0UNGJEteejPkT~aKG2Q[pD85O |)sa&Zv"% 7`eV٨"|);2MBUΎWlo!4kQ3_ZؗrV?kP*0wv/ROshp&$1g]@HW/v82ɠvA~[\}4MH3yT}{~IA/Ôs t֌X12!f9 bt,܁ Έw*m:.7X=](V3m$;Qo\.ri|9Ω~>\| ƕF囎ȱ ~yvX pST]ġk8Gp;`KY)#&X`DS{-Z-KT R Aܽ\Q.|׃Xܯu7Z~[(ri"SNiP){V. nZP0{gJ7#2~j~]vۘb;uPFؐ ГF!=˛ob]@>pLpom;YbtJcG#:x^YۀW;#0ؒ s=D'LW曙yD-n/.T5vXv P,ytqe(^   ]Ǚ MYyY f}L46zTvHtQ4h*ȍzPQNZ mivJnh߰=zcUV M\h^쐈м{()3-+S)2@jz]$HޕU<=c,&xk˯HȀc9UIZbdu׏s}%lMv(O&wq甓kac2eѱ"! m_˩q.Ҭc> >~vfQ.Y>ςh9A۞f_1>{1";,![?]c$#aI]“) V!*f]7̅'9`l\dHoZb R*?c(Sz\! J%66ouܠy5a,2cp6u+W8(j=%p8TJtHnKorFchn+B6&ZMk&!{h3z;r.S tF۪ºJi'aJdyit^yO6'H!K- 8v$nOxo'{=eAM2Sv6ﭵ! gCa@ L.̨HGkwV!4>4K 0j1T[T@͢'/cmL>r+2jJZ1$$ 7nJGI77AA cwEtJrJF0[hKĥ~\׏LQ?Ŕg/kQoyd6-͋s}t~»{=Wՠ&`u|k  0;jNeΈ})+`Z&@԰q?YpRh I.w(OX rY"/7'T@ꯑQ;"wYcA S p:a[Ss.*_px)ڈ#^jԮjW%ˣ)rˠ]~MAJnP7c=k:[ۡFz 5hXUnz$\?:aW4>e`r ܋sj?aFN-7󴧜Ѧ=a{"Ywہ`X'4fUv<5~RIމx ,(RVOfu _c78ۤ '+PqwkO:Ѻ̏Rob(?+P =KmO>Om5ɨ?s"m sc5.\ξK `ÂP7+/TX{RXOq;a42/T9 Ѯ Lk=̩h0ȴu l4!ߐ&(pI [bC+/0YcT#v-pk-%P5|[ۣI#h I}x $;=˕6"lSO>"-,gqMa+-`2 >xQYuq[l0V\E6($+0 =}dt?:IZmD# }AM-e[KThVKށt>үe7 j]#ޫm>(o&]#c};' Q6e?3`Uxк橆yP\hvC|N7eo hV$X<7(t`T"ih.eݜnA8AT=wPe[w^+ܳåp^vaլ`Fj5^ba%D1;Mî+p_"ƿ3u9Pgb ^.ºBAԕ<gM1C:fW=UJ󽿓#y=G0pcG v󐰄^<ڤn?>ժ0TE#wMj 7O^KN8|o[+gP-u7@ɨT杋LWEoIG)7wG=֮vԢ*tR6 3.>&s`6"} H>Oȍؼ@- ggE D`~4_@(ɡҧC5JxϰαLiٿtNG"'Kg}&F̙ˎ/]5 J,NsdWݤ7Ml!҃Ғi/h'O=0֦`Tp%1iw&$`GwƥU)(4bgs$/OHxf ؎C4`uYK.ݵG &rouڻ\2NjnQQ5t ,xY׈q K-TtLyĿ)goC'΋ˌ1 ldwQᇬJs>;m'[Qt?(̠>1 ]d0lu;ƿx =ֶ/ }>RS{tգaз]DAU@O-ʉzHik-YI]Z@5Ix'A)h5<Elu8tܱj!ɜЏI@{ҩW<IkPpghE+ofA0`l`984mSWBȽ'_7FIXy A#S݇(Mm_Bim<~`5'4ŵV'|Z/DmVQfyr_VZ#L{k }e ciK 6O_;З>uQQ-%HI[KU|$B-KgU)Ed޿K3&O[ԯVj&|ʷJUmVoߘ+zO d:+jͮu+99uK&#BU8)3Qw?5.&|X`r@b^.q?wn>=[t7].^x_ݧʂ#`|#߳~ǟLgg7u5Y*H^ )Cmqu?u0iՙ$%O4F3zl_,qs w\14¸ːVR | m|J[+#PO]_'kyyZMq`aM/[NIm1O 27 %6t_c' ?57S}_P,X!R *$z3otlf w@Z<=PsX4W`m~\ӽ=҅ֈV[ުac#`$:˵`T\ WPY<>0x ϲ6zpD\dY9 ecdpu $M: hx@P˥)/66$sk(#DŽekYObѕhb@^XQ>>VC_/ CwˢLmfX = NLڷf~'D xphӢʢLڥ^vZ'mb/ O urgn2bϞu;?@1dy]MW"q5j[ʵԾ*Ms HK+L$o;tIkZ [2uP+SE=؆0ߌi-l.ɿ&U1 ۏf#F#)]x7\PZ@Wɥ 4»ّ`禋?v͡p(^ҬYh~6E 4IIe+gjc] "$|p゚VX?1CPg% 7v/8]9:s‰q:rykqH_=J_p0 s_-= ;jU#0kBLlYLEfhɦj0G=rlduoxtOLܪit,'a x+dNW!!#֯KdjfQpb66=u\I/{hQ^\/:?5%dnAP![jP5[w:;GxhpUY+c|)QIPRƤtwH9R3=>n9*-qݟF!? U!~bOR4v\ 4SLbWD0;/ihՌ@37RV(:D:;#$r6,j%:h/|[^ijz\:|PT4\хLd.[CAUMF?:Z+Uy}ow01=D^kڐ<E7;[Õ=o ZJvÊbh~d#Ve5{@1mN~[8{EO$aFi.#y}Ӓ;Bht (9$=Z `ؒѠv|f7ɰ8G!9ek(BU3Nߗ*6ՏIo:(:,[D}qf-(E0!<Gɋ"4yk%EیpmU5ؒrrI+P74 OurCޣ+^frR?EOJA/4do^]OO>J+e]@mkYoL15SJ)>)qZv3Qk#^D[r(iw.|s&D%h ;rƈ-eT4}?&5oY'/" QYp44VU:Ste 鷀 2V򨥉A!CqJS4}B;ۗF %AG(]J%H*h7W;3MAUYFlɹz;* JTK(2YH4Cˁ1WE.Wgnj.2əʵ߽LDY15Zl_|iGIX/͗ԩK{qJL͚)7Q6m&htOTڍúh:߂DF΄`\ LN >{|ج&#(=hẈ#h&4tpcHD+F<ɶIP_'ު>n>ey&o!̍((p"/>5DU5o㘳 cj|f˾m.Qv;aַ ~xygp}\sȻ%OUh!lpG"GŢQ\W NH]GF }J1 -\Ʃ 8QKqȂmg{@rw?-6*"7N q.$B%ݽ,dw<^ +AeR$&5h.wLf-|1`#oϵ+X+XըAxdxh{{'_ ,&8Etbsf4#.!dH1>4-x"R0ĊS# LutyqQOi[T.}rl{$y8r fyj#7iP_HПˍM 'o:/S/۳@ G? s6 ^PP݄Rt4ׇX u#8s 15@VFUUh٘[ ኷@$ |Xl'[_ɠf)7H6= }ev,&XZ@[{APTinƞ7M;:( =$u?(ۜPVMQwѕ(/b/*ۊᕸ0:WF<9;:r}OJ}[mbQ*2fD)̽1(Za8 Wh`%^Std,X`n̛;8jݚƽ@, Ӎbmsq}܆+RIe:o`IՍكH'ޑjc0`U'B33%թ@h,+ ڶ6 yD ǃ7 wl&O J0zPtيV _gb3&%j7Wr~V 9KB08рn2+u9Gp_qvَtQ=tAAݑPCϠ%BQF[Luig o2׹q(zdb_2acz+g It9PA nTQv5-0?Qqn}~Z@|̢]yIj& |m>pvD~F_^/,^+p8r/mB+'玠 OD*< qEϽvO^ {vJH >5 &1r?͠FM Nz6ɞ|}R&pF(~I9,>ŖsnlwRgh#Z [%i)p}^,5؟MYs؈?G(g%miZ1d_ռ~'%ߥlye)i 9O`37ѯP?R{NmcoB{Ř0!NŞM*y0,q³_R~D3Fmjr5@(=yNxjޗ0hG1x!c:pYoԐG  w@+ i'YKȌlN mB婅<@b>1V^Ϩ`X&d{ֺ'RjÙOb,3+Ɠ:o=hA)yFMe1bɴ ÝmmtRsr$"d,f98>9(>2=5!`k_NK2rG zxfAZoL+M 3񾇓;hx8SV0i1{?)#p=,6*_ գ G3Z=#Q0Ne=?S :k$?9h?x8y׷h[eM{.f4!xeg竦|H6#HN3ڬ {G48RrC!"@ѸLD焒Bu;xnQF a FBŕ[Jj/0I*;"A&<YHg gj  ,Z= qp@M#kZ9v)pʳ I>Þ2INeX5k>jޘ[:5ަ oٹkF**IqI4vx 3>#|űjif;o:^u%OJZD[;ٚL/mBP<ސ ǿx@=d h HGa_Nj*"Ctа)D<(, +vTmH35OVm_ &I?7"ŅcauX/M+BP]2B\eB9dIա̐ىkk~,`dLO)M@i8 |JDJ/ctZ`Om?5ҡړB9m,y,M&Fxo$H+eE)Gƣ0a6ʯٟuDg&z qvE(xRi4r(+7WXų4ԞGf%|ރ"W oGde&'ICס}_#cNR8@}/Qm LZZQe3kP^3iL$>L5|'ڷ%JO뷦/A^.g8[%ljS7 ҕ#}5~rfhf4-]B49MT콛 ʽ_w 4a5tndZ.^阞'?Ev C6Kdx =#`Fրf1[4xQwbCՌeʝyRt|nfWRYmGUylJz$lrXPг;,0\<=wvʘHR_ ˂nBިf\P`[N^w~FӯIOe O}4#_P ӎcUnOW(.o *:Tzp_5-t$"Йy^}Ax4iCf(#a5p:c~%`$sẔPZ`$$kٮt2ʦçv^%=ݷVAqD ϱ6/X.'[Q-typ-re >澈V#xLnݶ^H;q7(q,y n\Dw}m.x,BE(88w ;,%g;7p:X7ǓPZ|S^0+φ[IR:\[[@tgWt׸MnD5® n7MfI2-Uٶ'r{c1XL1kʐmFl¤QԿK=`CIDSD WR{%\Q폢m2!IMrgf*"$\^(oP;E%)\ў5B33`B!Ko*0P/"6vo`q->ܧ ^ k}J*IIÂlMgl`^BI"~*IǓH"xq{`nʇˑҠ\$V3 ^3k\8J5tu#L)K׮3R~ X#,l" G|A#\雓'\Z-܇7DtOވMIc|8dS醹2 ta(fo9y'o xM4ʎݕ"hv ←@~$DC RJ 0T#m>`cF3#LT Trcg-:>*+eGwN:0mmi1y8䉾J.#m?)݂[ g6}"@2vkQ*âo6Mh3%)sؠb.&wv𐵕}VXh!bJ!cS }FpJ#b=åHhFS8cD sVV E9*K_`c(cƥB,SYS(WB{#zįraTf? :nܰDLtފU ڈX¾-TbykAYc'9?EWXhs:] ]RcYd hbϷ*r pƕhrކ L3!?- Ă ʺ."[blHā̑}bPORC^q]qB\Bq=hi85ʮFx;l8PXSK1$_:EjM/eeO cLʱ"|on*R͔4;j PܶfQ)#'ױ xޒp6~ũ)^Z/\ +C F%d!iͨh(fpg j?_8Q7P fKXFD.$?da;^F:K`Y7XT껰s"[ml1DX3RS>03?:jlKxUO/'"$ǷD*["孺J+Ty>9DZ˻"!n=ҕh\CIC1eP^#,3r#ݷrI]$FçɷS%|~9kпXXJKJn :hB3r@b.<+ږc8Ŧ2[BU\&TϚ, X,T^S<\`8%>;p"cJUX閿:Ӣn ث^Vfexun]I|}MZVTX;Ø:jU}ƛ` X[;ۘ04?|R:LR"L6 p*Sc;,fJ)rEߥuONw-;X rNgPB7BɹkWHQbrr=ז%BUn#vwQ[$ 32+tL%)S*1xx; gډ]l+T|+X-yYWTJP # _`7 ӬW\2S:B&0I*gҬIDg=@ v]Ӳuu2pg&4ݫΚu?ԏ[ײwi a~,Ip: 8`t)b14T>`{fT,hm썀vqud ν74N_|0%f w;~и~%g?;-3]rٻvG<*Q0"5旖;'?6ѹˉM?s=Pa[a!H9N\Ѿc*el44Oמ`MWecuqO(}j^U&&T wr )xU6<⦮Ƭ!3A>#>2%TqN[JUk2)񣮇F9,p$C|E dlOPcC^)A8lv>O i3QϯĜC(qBY|=89C'3vWj ;W z۴i^\:/%@lcqEeb -U3*G}g #^{6F2 L˲J+~@^de qgrX.edlDb%o͒j&d~Wd~Z4ፇ,[HWMLWWYBff>3eWh ? 0t~/ )"`ݚ_}&Z{ ?D0o4pE!5.hkKnTE#&=2 9 g@8HHjxCcuDuܒK6vTR.w8;/Zj}F's֣F!+QdW S/;:q /t!4ȳ 1[ eP-7!3ӣFcDp"ٳVڻ=y^ V2qVݯi-P-)~J7&^UMwȍ̮ XމQ|:q>-ޭ"(GZ5(P h (hR̪$:VE4rè탤g "e0%(Y)Òv{_(!k`)XQx9 M7d[!7 FK`s&0*~3}5A7bȥrR1 !廙'[{h@IDdOB(^\H'S߽|n>kLk83ɲqS$M?8@\Y>OXNy)]KD |La > 2߱!JzOQ,d8%mr>z#ai+xtf:;K/'$34c=N\S$ [CS? !-نkGXYxБD_m` E8 r`S{Ϋ{ˮs4k@J7iM^[p xMUaSOTL'pdaMЕ[LuˁH잼X,KZ: +G2NO]H"ؠ)p\wM?7;.!>UОH:$Ũ1vnUK 2 z5 @uac+t? }MŲ7֬+o%=. 1ިUưt ,7!9To':iJug49+Yۨ a{r~i$xN}6 *ԅyn1ݻI(#+9S2&o^:*"n:*w<= X&55~5 BVR Qx[I'R=Tݛv^];YX\rlk>Q_ֲXۼ,h?PAI]&Z1GX|\/ N>[B<ξ|L kc?(K0 08K[e3,/Hc-P߱ )U3NlA9GtVi&9IkkRAB G؃FQXrLs}NJݓN/!}[]4tE!0ٳ'C@@xb(U>Pxt -'$WpYJJq1a{j'9#YR}gdb谀'\6m`XYu%^T6'9m&kɕzgfA`i I}$p1l]NR! .J0gߎj/ ³a;?Mucė>nOPI ]LFguǐj"d;a |6o.]“ F߫5}jXG`1Jv9M+qssFJEw嚣w,~osE{@П Ze ĴkԪ}ړG*.POtU+6s wx4I/R٤*%XK8Bt</ Կ COc$'krs!OL&F3뇩/dQ)RhZȊk9'2Ò@Z #FTãe4d2j!3.m@ȦqOc\ H EBgZ>;+3w>$RBeLJfT:(7tq|#;\YQ4>sǬ j X!g;.ke*C)".- LiZ[(lM Cᘊl rkqu"˄7z>؆4Q{wKyz\. C\y9l5[M]n:4iW"y'1ByZ\N!R-Xׂ; tzCH ̓;,uQ$Z?Qv@qir }RS>711 mMC:lqSl&ގy8hҢ(}}|Ӈ# 5C=`]ͨEd'|t7GGPG7bA[Xo?wtrWsfnv0NlXP/ =!aYneʭZ& ʠ⟿6RH _ԚYM(}ZYL}h<Ӣ8S3)=CdWfÖq)Wyr3/!npC)=BrmctcR ݋āwTɓ2yMw$Y@)4pS?Ė4EU.6r'ugLˑ/ *RRL-y=ɍk sA46ZyQ-ox1\]ǩ y@>"v?ynn|dzw~*dL64 ~$(/#ɄRtDJS7'FhLIޓt֦DY&<{jp!ELوQԽD`9/̭)h+m>ߖ4;ڍp) : ! KFFl/w fKᾂ+WDn`śoOr3sKm`BpT[Ub`0yQgHrCI.DPVO^ "M{綝s?ۄ;} 7<زΎ`6f`~6g?\_̉X,XCQq.JϿ9RK5孞۱]čR䮤 wP fb^ٚdw6HN )<žL<3A(ESMfE:DˆGqT3i/@1qN[NI)U 72"`aJxzP 48;[Shw" ՜%si\zj2LX.&O?p!ռGr_Jo(J{iwDNg OZ%ftfaCދ);Ж6s2]MP +ăCYBj#ħ+q lԯsQNDZ5TbH]%16_ݯZ%E 쎮f}G2&7c4]’LE7="ɃӾa) |9`@ W%~T1 㓂^gmVϫ7EQ롬(9#QH5qS#MX{h6(F*iqR”6ÅCTmwsuGj3ɣ\L3yscJXo fe[>3'5 x |IiZ)l K8ڵm0Sĕm-ZTHjrh]0!9 ⸗7ߪankUBGQj4oa?z`4Psxyc\D'<צĒI] ?-‡.mCJ(~~(:\U&=M]mt ޢȏUN $N:?>Kֲ#~61]}ЋUx2`H9j:r gO7pTb? ,bE8YvpXc@6 ]05n~}@0Ʌ 4 ߟv| i؉^u[C`hr. ϒ^趿 ƐCLVTdHd'hanjm?12 ;V _$8LrUmD}/ Z~$po۵BB̺  +?M AItюa+Fo(_19ԆW jno9f>.o&[^nPOÕu0QTF&2Пe~GNt'PɭlJ ? q6 W8ad䰁 t[c폯Uu}LDW 1ͧNn!jF{c@Hif#N ZAM-]ȲP؄;]'=_閿<7d盙Q ` q=!!)觟/"顫B&jgw)] W.CmC&j$_հv[51(ϗivdYzEַl0sDlv0׭&ZMD&\ySàNU+_ ̯g.yoW$ M Q.U=GЉ9&` -AQ'mbIPl~AZ(g.>ώ~,XJ(ԤˏJ}F; sF}Y%;ZK\V?՜ނTEȆ.ƣS9[PTʔ,E<"ĩ"W_b|y֟4[Hxg;Y"iaԓvИ,啎r _@グ2XNU;W;fLI'fm$-[@3~lF(m`.CgSB$<0, ΀;~1M:q賦_GJ"+K-Y~>424HGh.[}"(Z~WѢˣ$9n` %ctЩSA`mH > `j#~9UgÑ Kk(G@1[gzLyAn8c󾻰-<D >,o:>52I0;%pbi( aTu #1lɲ=:<#G M\ƁʲK}& DorLj@ժhK%lvP}J1ns@9\77}0 == l[-U]H[UhX{o24 Lc,n#T^6yW8"7OJfOs|FSd6#xv1::<릯^ Y|qS۶i.}>ɰ͢iJSUhT.܇qc.hֿ(fxxS\NNW"ͮ" 'xMG# yl֜X+ RGzA:?&Mr_vIHo8˻y Ry89{Yiq(k GG0̲4p5egNk`p QYjK\8P+nS3m= LWSƷsA %ק}ZQ&Zԍـ:UiWa[\}VYj :d~1͝oW#MsQ!H:!`>?Tu j/SaR/F""~Ft6m&:Q͇V`s&C^<Z,_4̈́ Fc]g'P!Yn1WS}OYbɶ.4Gw lj6J3W:F_y:J} QivI]7Kf1VQ86Y}C#Z)G!Eyql[ [4FjT2F孃[mfSuQfe a'q!:~'XޫR-k#YAa'Оd86vhq>>1nvrOT@/8tb ;[WD>Q ɶaiBw[Ԓ' ,VG=[]*r2 =[Fsq.bKV`!e'֑zP8*?E3t7. KC@i )'h.b4g{%) ec ءWtkVht}#\jttǘKZOхzڒl3}~[%p4BodЋD`7/ c{C:x QV?:C0њO݌lZN؇C[yOXXDt \ce&}c:"Um-L\m^.S7~ ص"C-$'enճ= 5JGcXvEU!_~Ԥ9v=d֦uu]~1HR퐓R>qrC裤.;Ej'sAY_ QܬK,[Lw>A-y !c_ 眧]I֑Z:E"5ϘB?W|N 奢gDd(¬DS*"/z$G }lc[QemD[Љ*X X,f OqsC gVv*}m_$VVt Zr*qQ֟\&UD?$V!3gg'g y ߛ:G+Toʧ,{oXg @ŜWT={ C՚lb|:D n6>Ԟv`X4W]nG$$zK07ݰ}#Y{zYQ@uDLl1|=30qY 6Lts~.YrݹT6a֧k5v߽.v 41318 nC~Z)?h`EJm(ֆJ\zS#yb =.GSP!GlP[iBd[w7f\'jBWHh 2\cNn2t#lL:-}ݑGh e'TWgU$?7W% ^yS덹3nn~c{iؐ0T LEHkPeL Zu߱P֨D_iQzʝc|-~Gvr;:'R'xb)uISIG$mjxyռzgaC1_扏xjޫdzFfgCXfʟhb~KV"%鵨x.)GcF1[Hy $$xƓxwm>9+$RFAܟ-bC?-|3eJC`iΜeAJ LBlD[6-=[BCֻvkɶuA)ۖ:Pl8m-✩GRdXe H*_Eͨnif *p4Y/o8ɝ8SfYYқ ETKׁW4Oa7B w4_f# p\!gQFwpw0}=-\--kn7Z@Zpu%VG$-.<&r3N\T|R%1dD6]]п( ۳jWLܳ!,TuJBɨ:. `5=yz2qAQe+\6׷ ٟ_<;+qF`Hpu{_̀ҔuaV_8%;2O2Cq!-i }DIS;\iI<ſ~XfOd[{e(BO=(a#..R@ ڽ0((adw/;W[4kw]u(uy fQrtw4c8sNR޽?@`c-#N=*JX&)xՄY9CyR 0'K[g =AV;תHr àND"wQV2 A8G,mNbbs?qy-E,MfؚƲlD-rϚ0J)V@4eX4_*SaǓ o]XN!Q}oB<lf>a)%s78Eh"]PТB t7x8(2oҚB!5GOz,Ygeݦw>H]/![Rr^̌9wA?@^ fm* D>BTl1w2, C4"{'H.-ߚ $RKb-䏂˰wY#k8"F؆$Yx,fD}oY #"'{ܵHƃKt`E9wWP5zRbٳ?VAN%~Ic3;Oa5l(.NCrO}4+WiCPš 7>ީքQtht']@|E[)ՕB:Uw l9An3 w~::JZ-1F~9sI#yD?yZsbF[QeD}(uj1~M~t[lt{=q}0@C\FeFPt[4kѥ i;~9dc&-ߧѼh^ۢëd nbU- iJ"vo -CQߘC. kު3QޔJuVa+C̓N$"H@<0Mom[G]eBaŽ_Yșz${ʔ:`lu;OgXSEFPl H" 7+; B[ B j?uvZ9_q[`Q`דYAIT)nSÅI4^ Z pѓ6H;DL| ~PŠ@%]afkFIƾk |1e'vV'pA=8].7pȏH'ϸK,έc/YB?t6$!XÁs:8XC;➀\sA%orO{մ[O O$D}hҷa>סi"N:#W|H:qJUnS2q~00ѺG;oHW5 :kX2?{\Wǧb^ggUФ ߄%bu+^A%ZFNJXC[v?.KrCNf`'yW`$ tftqm礉[GFCmRdRQLhOxM᯽bk1d8ӞzqeA$ PKvt+DS^| 3uy *c[:#} gߦY!enG#P|@?n/%Uv Yz`c-TrҊ403׮N"13tDnxFaZʼ<BYrZlp\H3WjyjzcqYџK. 7'K8ɴC ;op^ddo?.,=5%pJWY{bJv v3(|ed7k]kc9t EEڶȲѝ ).ljOU)IYymQs`JbUyuޫ ~19B/~ESDgu60Gf$"tR]tDļ$䝕_sQVÿ*1Pkp yɉ 0u;Ϭ68NoӘOqf7_^m-Q/yl5XބvR 8gpsңo'A[C#ތdS:Xl:5%un-qt(٭K#]Yɲ$,dK+IK<;qT -*F& <^34ŴSq"sUn֤*=Yy۞*FbRPP H`0'U7l[/_Qu_SdMBMل8L.={],NE?:< OփBzZ'ُء\6%;Kzl)Wci9ȴ}#ZE_-#Ӵ+%2Qgޗɜ9'iRC NBAqhHkZ/ 4̠᩻ Znz==40d@~}a]9~92T e;;+(r.HN =^k۸Z*ict>r)_ rTМ-hHq7_VE|II ʘ)Jܽ bBzKBP0"<ȉ: ሸbǿ/Q)r?z(,7孖I;KMPT%ְvNTLBy~&9C$mE?'a˞Bð)G`IP9rضte2EȹJnVt}2<݉8f43/vRmlke.F-~0pIă2@Ձ( u)ƃ9,/F{:Z^# >69$҂2myiu+l|zX -İPD0wUPf:I'Y^hX?mzcJFBB7%n)Ơ,Z/jKݵq#bM4ӍFʙ4Է|/8Fr΅S"}\U=JW֜a&Ce>8$!֑>~!ˀpAzkb,g8Z&j cpzR1X{e]C?SsH[C›P3PV.yۧxPb6XP>^%fkVsH.[~E߂|.6E餩6@t ukme# xVH+\51=Jx0j;{ɛ7` VijЊTI:s!3h`f"|[tQMg맃]*!z _䙧?;!(+bFRxK ڸ0{Nl+Qpx9)M0)y9ɀ.<[C}E/lk6\WO2Hn/5DK!L N$qo%5U[63e+TpMR#^28?eS%rm4)1hH˪eP%ꁛ%jd/3t| U ȔT@5aZcJϭy˰$HT`X` GgU?eDgMўF, z\+BBw{ O"*Ơb WBd=.a;)ۄ&NzcqcOLЂ MP ;2?v4|VۅUhMd&{4da7qwӆޫUXPZb;xmh&hQ NPN YP: ԪvM())qʊPf8|) &&gf[߉TQ9HtWe0MaU Rb.]r>M49V%"JCbUW>gYŃ wjs%KVH1cCcg|[98WĦ='Mȋ[G$mr-YVEoLn7QA8KC$"/C f)gWTP52_ZcqEDUqӛ3HdhX Lb)Z#+ԫ"XZ.%(r,]ܑd)ޤsWa/?啸cAh@t!x=-eܤ [a7* un%Xa]KHZ]5RX"QAH"G2JX ݢBU"c]NswZ,cYHe$6cx_{Q$oJy㛎g{[JV>5@vxLs#Zg{7"VsȐhJ(Hvv?ɮQ[x__yGWXwR_w-P85,U7BpZW Wxrٯ[R̝n B1,f>WXLEs01i+.b|M.U0f/CPneXxWh1ׇvP8Z^$&fRCRfY·Uv>0H >.RCU(Q:  TX;CpMB[$X :}㡼p0@ǦlP T~Bx]* dF!pl!$v׼2ڵLX7?#idOm|In|TAelk$΂^Hp>!6\# !㸋At6~ ?E<-7&cZzY.ĉW>(0x-ylO[FYip J"=u'la<*i༄1j:X`ұ_{M\GE>>Y*zfNǙψ붶o#x >&!@D#.Q>讝AW wYoZzZv^"+0g潙-eWv|9Tf CxJ]gjET?|0斁Gڜ S*E}fC%`# N+\42gVc8Ս)ٵdӡY{ flr?i)'*6ck+|ꁁ=KKߔP+0iqt" 6y:;C39c4RQ2/L M<טDpA3nIM!oX}L@n J7uzug8QuGsk@W B Ev{KF` pUxlgK0Rh:.Cf:ZDyOX/aEFofFPHztsNE%] rozD&xyBq'ӛ&jG98v(j3O0N(YRI R̆ep$1:P*1BN$a`D%oǰT5ҩ4\rl/[-s K|D`@aI۫^dY'f֬8vX Ctn#{>~duY7=19L_ix f ;Z>E!0Fя鸡f%];C;7 3]ȧp ?{BP\zCf{! to>5 wCP (L3L!+q\tW#Ww b7^sl9PqaGH#\3bZA3 !Ke1uUa%˜jS22*9H>4& ĺjyD܂M9&acTaCTE?tm4-\S`VRHt;ad nl*j8jV.էYz؆QxA~gӲ!z|-P 7Bxx5v8ۘxq*xFAS~ ^Ç/\u^ڕཫSRKG~FK\$~WtwH݈0 ]tnoY0g̤%<݅]$cDz/: Q:F8`E';) x+DcsywiGn ;`my13[o;=%Ju�N+Rlt‰-xHs=&K0Gr,3:ݢg[" l4M/?v r6v깾SA>õ=,KHR N|C\P\HWhghE,)gKm#5Z|0?OVF޽C75Υkhxj@J N~2^Ug-g. > A ͎|#} , ߔlq(3]9P[_N2Riʿ7_ACYG`; )ȱ:h [&&Xa1}ICP_ia[q%޿Ntmu,\A4?zKi {^ZOC?o~wKD*@ }~GhsJ*=]E~q? OWd**"ݐ:ުƽ.:zM.???ym溘 m5;arDL",>壆\v/Y lxzҴv e=m}7a{dK (2= xP<ȹQu'y佚讯\},ʖ뺤/YSޤoetW#ߘAaa#]mB.q'{p2%U^lLb zz i,_U-ӤC; m{s}IFķ8VeoɅF†Jpmjv⒮i@2,k TvG)]0ȼ;l`RH%q~Iz();4`btM{N5$|i|Mn b[&~yoxjesݳPWuCG<[H0s#4k h5" {3ش{N0JcRWKdYMղA%K-znPg^V*D#}ni&դ'k!5煜ǁeUk"VSW*?ml& |Y[YI9CWoeϣ.pOH/h`P*%݀5.W|Ω!Ѽ9A&Yy9kvsUpJePf cD%^'I.+F|yNNIPm}-8Ao'K(hQ@k"|<|N?ڤ:!\Ճ@ Pt`+OGg6N'X\k *GvY[sTN5J%ud$(ыh0 .UkM=;CxCTH_B~ଣs0,d(JB̾~/bDRi$R~MR@_H.ŀ&`pz7}48R;(,2Q RiQR<D>G0N?âm%$jv@YI{ cb<#SVSdl{:iSX|D 3ı_#<`IQIKr zczZ:rep|41\+ňf,lkV#@6e#ly H\ ,[dOQu:VYXecTa ;X񁅿;sb8&18(fԘ pq0%3&`P&|JqGՒiKiLQ~5˕^%9pp2ƨJi<ᩊ!`O~6cf|;u ޚ0o<9ߝ o/\mWz-\u.AL0"F\m4|Z-h<}Rc*{1e[}aYGt(ŢYoW'S5Ffj$ͼ K!u!ӄqiũ x)Fӵ#I&=!!BB.7e̩ǻ;\pkƵqbN<`#`K@mߌtTJ_9Ά_BkQO6+〈Zp˵9x_OQ2"F p7rě빒 r~e$|<Kp H6ba^Z#0!}8~'p7u[>N%(u$J骋|e@-C+Ǭ|IcλO8mҿl<Ϣ? UP>S'0zYB\'KDDrn%[29u[b.@ï1iC_sA$w?r3RHsTaƕN Nm%((#p''[bTOtwE ;. !Cẜn 7w7*4b nK.Awprl,m$ E^JSN _J\"xryMTqr~)9!iҤ}~ʁJϾm; PL-A_r wh Fֈ Ś8̚sREӜfQ6g͂b)v*Vī7^wҥS:/`uHP,fD~YL Jg%va 2x> Z27GmU 4¹.mu9w'~' ۇCO\fiUlw|ތ,i@b7á&vީi  Z'G I'Xi9@ʍӮ:s>ƭvJq1.a[˜OAeU|XVf}s3跑MM,?A#p _i"մm/%aa_Y#]ܟw}fi%YɌN̥]=LW ѽy~JZ?~eIvMFVFZt5\gwA>7K{c S f@9-K4 t)@h"[.ptFGXؙϵJI;Ԗ1ŜGymA-[|VDz{ģfS3L :)i;mnIXk"yBu/NJ[1(A;o>c{ &WHzq:s_Sm{.@?4H1`]ĭS) 79hBaN=PɀYvPذ3:b ٜ[N΂` (ؗn?=#i0}X7=ӳ] T}E-&1m܊pܜ-d46eGf^>q='@h%*@|zA*ɭ;26~B۝p^9?28x&ݴ/1%ZGX,`'Djk&NC #d(&'#=sSŬ64 J<~ fT s84ŀcü< >)ഌds5V(ޡڭ~LE~`m9Pjzʞ0=U1d+}"b>[F1O0qm=_K}j,@AuDXkWDu|+fQHyk罃o\'xJ=Xߘ oҜTb|9EEBW3J3/o/\ɧA"?!= pv],Xնbg"TF\3qJˣ Kz7 V5d0ql\ˌ]^.y3c.ɔ( 9P՘ D(in.ݣe.pz}#^v"Q)KqXe8jq o?h4:es-w<'#Fm?I*衫UWW~Cն3M[p\5l\ÐdqNo !>T'sfk<6(<s-{!0h#F 3"b2'2a3#qյi!VYr؂΁?2]x;$!Oo}_'W +>1 S|fz4V#&י(A3ORDBOaf#L b,z-uЗ[L5=3<G ߻]%$e]8-VeR;BK\R .a\ïҲ[ɋ&@q9`C{Q݀9gc **Pz(že2f~;C7ɷٰg'p)TJ/~f&pTޱ ֲFQ1}M`_DJ΂ۨ>GP : QzO908\1`;uVb ˭$G;ms{,i\eHᒘMQ8I7Y5-P\(VOΰiPMf!?y!%+_ń F0J:[=]zwbA=2S${a_&>Nhh^~zhZ"̒M&@ C0:0 _uC6i^7-S) t3 T9c'g)p}u.dM>XSp}t׸rԠ伨N 2m1ac>n&,pNyU$."dIgCJwupN!1Fٙԡj+;ChWwBhlؒ)O \p(쎐jP=L.ja;ig̒$aAiH7Չw}㸒+*!~'` ]Rnfq p 2xV4" p1/k'\\x4Fu ,eaWJJvMࡕ (\h%UaU 2 `|TBgΎܬnAIJ00D_8aTTTV9Ήb,  `Kk >[&(CeblPO~Zj /./]<~rX վ](-SJvgωLA ؂"]uueسɞ=zi1XJ4Ol+R}|jB#B"r] OR-b\nJ܄B9lJB0x^ޘz94R(dB >AVaÑ&2*T@VL׾LϯDE^Gi ?ٮi/?[I ı1DG!x[Bu#, 6;- ʈH:@9*g/HuERL &Q`˻7յ t)xlزHDʸAE !?e1zX;lތodX=xwp] slFJM9MxJI0^  L%fHagDثE}{ٿ? bwA[[[қ<i9vf /xP/mJ.SErV(2d<=U1sZTl+e >6L8=e >}c`(2ES!EL5:}L(`9XLU_g4 ^Sf+>qh]oLlӉɾOf٦h6˲} U=8.@_@XZ:5ma^ .kZ ,i:mzH<?CGe[\ԱqmV?IdʇBIOc.\j'$^,6zpW\,CbE'`ni@ YĹRv'KBέw.&Let(=A~^֟!cB]σ?`jK:eT.7jܛQ~#5SlM[ie8P΃-E#6g.%Yǘu xL@+w1Z 6P @x*=w pd*BT'N@^" Z,z\r@4e "nU¶>g,3GM^l9DU8Jȓw6Ǹ8"Bieqx@! 'W>4zQDJ#CfNfD'HԭMSذ%Kx}d0n)7]xԤȬ(t Wac; By^Qf0 N^@N憖CR=ƢLZW@d`WCѭ)D׌ Cқ,Cȋ}oiy/aCt Ż"D:>祝dԸpq9C.’V7`(O1[TN]pm[rF#Ѳv^BQG) (v+elݶƁSKNƃ)d(b A5PiNUVinTSկrr,3E^~lRզB^/HJ߸u &r|ӟT!/xdI}k )n N8ׅ),` $j_^u k䆹752Uac!tQcr7f6՜,hӣ, mhܨ ʣz;C ;j|g00w:PRO-=4݂~`Vo=uA~$= ec\}>eGf ͌?جVl{R+ކ﯋/V$D7+np36'bnz_2'tĖ' V\fmVV+h8f31JqW±4\ql6NryLLvYm~SChںBo14 ĩUŭDK:%G*6 |U@gD-様6pu$X-zB3T#iEw e#<}qwgѮh]3@"#CsJ]zrޙ3r.l*ڕr}89zEz"8@F,sRU((؉Ix 7ǦϛrYš{)UxgH zVS1?34㋡msZhX` _FHיxK`~XPxK8Jr).qJ,PhD0a}粻,深L.2skzwp 埨B 4:/׏%aBp)e{?gJ"K?$ 4U{UK$2VR=hԒS<3 :4򂾑^okkE=gBB*} r_y{)GmzBm_'EbQ4BX^m"%=D⡂Dj`umS;S{xWD6~9b28SDn*VT_n5/ [Ҝث|/Lf,.m]pʟ@D錏7cWr ܠe5Au^|QBw mfA]&ՏGtiD_}b>.f&U_*+{mOhƘ ]5ee+rw 5|-#mCP^6ˆri:?ۆHЄGmz+RN9Cp1LmDuw%P}*w /Wݣrn5<M{Xg4;ֺ xĖa `j!/#S4|h"lс QWMW9w擠&<*(jyS}rXB3#3#0בl(JOH@56œa2}Atk|X0.s0<5Ҡ3J aUy,4-{>vTgSMxǠ!ٛFW&.q0ӬQ %Ud77#گPrJpo!E' &Myn?|7`+% 6Twc%4cw="&;4a-iT0R~#  y RhUeu [Ep έ7z<zV. hkK?+a=8Ͽ\wr]\'1ߧealc3xkC&v23:hO7&;5^OXY,[,AoƤ$Fl 3Q,ˠRP|0#PjE5=qI 7FI9QJq/G nTy{ڭ)FwfGU aA'iW栗gXez z U#332w?nqrgbܭ\Ks9ȳ$C!/7N \v 38|?Žv-E:0 R7"ƨL7>.^E>D+[Q/K͚%=_5q$xze󖌷_ )ݐu:9-1zKK,@m;ʁVfݜ*mp,l]"&$?p*~U0%B}V-gT U8ƀ-&vHlM򫝩urvXaNy܃e ]%i3$MN=%z9Ж+3 b!J_|R>9}@[:ݭ04,&9ceOmg oy ~)w⬎(1N1Ogef¿8:Sͧrm$]F8QRYXkT$Q⥲:`iƹ6xdP@h~9%vg4mhC'k3!'O\Ds#7`KDwh=/@T*a9Cl"'IY(a%7'ɓY^d2Z)ic']nߡll Ҋ@iQ3 "Vi |o= |[!5._+ t雷%>C IW5O1X@d)ӽ2KɬRX9 ηp^tS-~}w+>ILݭG2y =Қ:C9řU%GdbF~/!]B|7d,@%1HVs?ؐ:d3(pRpԖDKas  Y=Y>H˳_bZ:5ie2;W3 V>=B]PZ uw=# @jg/^H!VAcB2}@&]ذlw|eQ)++l@I^Rrunӓp Q 9#"k&i`{<2)Kc "hE{'7n]POX#tOǧ\?^ TEq)D*e@=[9D=Sz6s)L\#';Hi >"sDq bG\5p KZcτ߲_O@vϘIyx RלbۄX"X R\LFOIL0{ʯ (vym^Y^BWHFY+\$UCZumRv٩̺y?H'5n o&R2McQh]QO%0=yZ P$s-`TqxMJa* tc:jBOa=&7\} i!,k14.ٟ~j޿kXLdbͪ+- V(k=GhTZ3P\U= +q$I "J+3u,䧅M0>"ŔzcYҀB'Zz1BPpr"˻&3JQ47lT 4 ꛔs\T:gez١ʟ!Й+ֱؕdّ"Obs lRL}VD~AlNYt7| .7"`at 2ހPj9E\&c=V%5H(}m]X.9 }t,AC$`tl]0ZyTeߩ?P*4߶7f 6@3k[g# @mthV%40\RX0ȇwoO^Ś(̓X4 - n7 j944]#; Jz'~3DUs DϾ7zVšA.I@t75t8zy 0.a`}w;8z)W" o6pU%rB8^sy(esWKM=0 C+AnN$qd8 a@k-z6LmH g_tQ-ƟEj"Py|#-6Ů*K,XbOǵpjg.m;9dr}Ԙ5LC{mzM/2J!}9YlQxy hsGnWw{0z;LOkG'[$yUg]>,/qWt# =H+b$g0Kq$EsfG?>RzZBGz5,z&+?'6_bJEOhtc Lj&Ď@+e7y:YBbݯl[wc`d 뼇sf7w>VgP9>4JXaL*1jv &@flIukJ zb c} Ɯ>eAfGgOԝ {GIt{Į/KMzpŏÔ2tOnt{~8=]w4f ^wlnY# mD7"LZYB{-t/&nM41'g}P&?R6I)G{}23P6zjYj @˖n6瞡0z0SR'CxNy]tE2?Lk)ua0)v?oE> 2{#r>60Zuճ P~nI ܿݘ8`'vs% ۢDHda؜d(p#i n4^JNޗ(@-[:% zX.w]"%ViwĊ-ûeZ]0 ҟU9:${=R[$λuO@ⱐ211 qa܂QJ͞@;D9eJz].gwLr '6RbY"AQl)0ϢpEYpxJ9^j~Ovrz+U 9Ut'GPtO#~L@;oͿtIuYۡ& A ]]ܽ2Ӳ+ۻ lfc9zrDElnwynɞrmFqD?LpZ=<`]1ƈȃEiɲ'x!=L4MlNxb~zNHr :Ȇ#/nڍ, q#JlNJߞDa❜ی0hU g$U(>i Ar)Y;3}d!tRK;R^A]Y*B?4-}.zB{p.~\(Tjc#A{GV7Y쪪]L2&Bޥ2}-}]G-B\N8]ʂ8Iޅ.0 gyˤfMpc 7l5_{/׵^yM$ӓ|voa=tN?NM7[!j2peVt@P2uyXĄM "F][.fφo_ũGi\ƪ-B(2<, ЗQ؄r(Bd3v@çUegS8Ւ iѳQZ) #wUKYaO͘<VDIėB.l)@\>| WoJ$`$GC&}z5*5 D*m[Ί c+P-R,Rysl+\V"-ϞXtږהB>6D3#`|O$P\J#W޴'D~%g&,{P> xL|>rwqn^ d ٴf(s)ɽ%' z zof4ݤͥH($ȋ$h_t&e<}WEEM.E[y 2KHhuYÌzf5p=AדyG邼,{J6`'N` |vf.lyҳy)F8^<"U@%+}GwQr 6J44_ i;q]|[oX;MwFL%LKkKc<$yťxBѳ|U};1Z떭Bvg{]-YzKyj ӴO0oo϶OtzADT!%xB6o?s_tB 8h!kDrHz8 LZj]x÷\NC!=#Gd| 6ʦZ]y눮\c>ZpM3\aaeYP)[q8 ѓ1-합}਀}dԊ&.4 AώX׃֖h~W٢]:[&BK*zW;ti`Wfp@wze{J4@dlz{ϥ&bq__h»^Ѝq|WT7Ǭnj0-?{ҺP ?hKf16S9_&r+ꕻS̳CTFtXx D4܀XHt"́b+Ψ?{]6gy}T en`aū5<2s~zcTw. ݋ɷ} 1 axYf!qZ*N_XbRSM'AV`JPM쑜LWA6Sr0`'gc٩\ j!B*a+3[4+@J?0AI?ަGl qƈb iDcdVNR jSZE_LmnkZKXʷVpzQ J2[yeFst{;>F/<[Z*@Nynn*S{0fxEi_}k&ESF mrj QR6V\\HcVf͍ᕑ1Y% P74x"kbŕ [=cN| q҃.T}Xϲd^WrC}@@T[˞3$O4HJ> gAwX;hQUxeuXs5ˆ+Dlʯ5~"G+U>fb#!3yO*U0" rNrfɪa8H́wjzJb 40Gf1)PJJ'./U2(Z^K)ĖC.J!Lzǜf/hZgFIR3{?rMAND V֌)oQ]*>H.igUK6YbGKPqm VK:/dǍ9C͙y '|05Y-nb&S00-+CCjȈ(UOKmw~g{=&gk`s f.CsV}0s<ј.Tnq8`7geKݕ2mu釬mJ!Ŗ΃>SQrnػȥ!\áZ׳35خ(2Wx j;2o᧳Q*d 򸈝( {ZnT t|pKUa_ZP'U]v܀ǥDt\+ GPy%g N㲺 !^Rf ӐAI܁o<~ܺt? '4a7?t伜{8tp1[wD<5rDIl\_, x툔P*#zv-};%hm_M: Ʊ:TI$]֘m bkzUu`Q'Alv|E1G9 ~ ~ #?&5v\|]|^yeKkVZtWS&41%&>?>]Yw06hs*'5ْ?=UUE(%< `Iîq0+ 2eearbΜc?_;9vм]҇UkOWJpaI?'T植 P{hȖ^1.C1<Ľ "BMiwȱQUSŊ {^\T W[!GD ^"4>F/|#>ȡ"qdoÑ\ x`?5# Xg~="Pӯ~q#wv \kc1F3P~WڜƬ([8l1@8k?ظ$[\O1 c\ {qmˏ={ % $fCp_&)ם*~ayp8&4DIZsxbAwQ,FKE?܂O h(Ʉ(%%ԅ_Ӏ'LgS#F7'o佰{Ē/ H@3-HViy1FZh:Ԑ}=*j^b|.gj s[ƺ\$HK4Al_`@V$H e|M05Y=1roƯ`:Ӕ?WBr[w? v-2:wu6Ǚ#eQÊ_7}E*"cn$J=w!OA֤+Bz[-dQ9kd7 zPٿ*e-|x'/}yy/'f%U P:U.|*D s1osr0&H\"D>Xo4Wӎyf S^6;ښt4WK;]1x;v!bgk|xw픣O7*!G,+ PuC$3\F¿XQxZ)@(>{DYn 2y&;g8{Bxrv38_1G)P zTLxd.6pWkRbR ,]5qxC!C.kU5˶Q!w#+>2q s]!"( ]*'JNi  ȉQ;r*!pSə=VC,";B/AEcJ Z+KZd͛7a$"(%oV \P7?kÙ|R%cin$oFїRUqhC@JQS0~h!EZ42Zr&|`ܬl_xoSraj`>L!S"N -_rH0ZUr<ef㝊n=EpWA̓FdZ,}$L8Ѷ:+(DX,6Nצ $))_701#~Q&foEƅ˵=i@k5"ԨsHHp+dqۿL;3@G|ZuKNk'&V }Hl_(QJ[o*&^j*_tLI2L=9t.ݡBhJߊcRe#c[SgeQMYzNV$p$%C+9+p* K<%`FWCyg؇L&Ch*G}iM)hSis*9Y@nc. < HgvZF8@sex;.)nkʭ_Z g֦]/D#0K'ziH8Hp>cȻF_B \K 0tDik".NbX2\ʡ[Vط*wiK<oG42q)CϫG[h8Y滋`Će$LE`rqt=~L,f D~T(0OTu;vB y}"k! X@*sޒm7EI-kʄ qf='R[Tɟ؎F.[ˤ]ΝM g߽jQ^d؃ Pa ͖˲Y 563B-d*h3>߲9 TXd?1]gW I5ҟ 'bӼ0)i&Ę. ^ ߁F 'wtq9>M [{(t2xI ={H*j-֌>_iIyOᥘ5‡a`8۠b:kLe̶@1v&l~#[h(u^#1:q&.ڏve7E_*+RyNKuGE^5qF\_ Sϖ-ַ6orcc|ͪ^|~ooBYiWRSzz}^uWr5c{a{1YJiFtB!L^VtQ͙FB)+ u  9HɡS}.ԟCc(v`oPcEReݪJ|\%H=bbri]1 S2&f\OR؃ʄV*Blx:-Qg,,~Uz\HQhg{^L xɭGu%X(Q@1?ۏZx 0$< TDsC卟jF npDkgȈbf>ߐoqy澹ڰ4p?pK 2?m˶pgCnA%VtK<|KW#wq,ӰAT|Y>oUxF3O?;gdy N|(JCa(0ݴMP ਜ %r '?` Ww/` QM5?I9E20M Xlڢ k9 z2ձbrN %,؜ /Ov~8RaGbꯜvb0) Q}~yqI҄8q2^4#[˴R+6%꘩Ԙσ$Wl1vYz>f ЉE;j݊[ yj>d,ytV;'>{CRPJ(~j2q:nLݑ YӁ[v|BBə?xg!,xmwHb5B-RѽHF/  $;soҮ=|oov7>ҷ~kb(")yH%SȾ4[X+_]T}d2\&0xUnԓg_I^6]'=q8@FI!>@lEfƿ[Aލj 5&Ll #K FPsa35j< >Vtk=N.~~9U1;e(=9Q M #YkɕSolZPH'0dԀG\q?p 4BYۚah8?^Wt(D(6Vгҡs Ʉ1rx|(/Ollq2R4#Rl(ewe|J @FKp+¢EH,u[;QᴀW{1_#k5L͟_p͜!tӟ\*r~лUjݰSg\Wm2nIpahN } y1+L~͸-\tFMF㶺B? *{Y͡u39~bcYpNaS&-P)^e s帶/pc)@ 5{f;8ښЦ7jdOa@4EU[ƭXeR B(yY>qы$ah)&k4"De= 1N~Z~W+JLnxF?:#RRe3Q\ByB~h;FxpY|DUupTKc CrWcw: FInlxR1 @,-Cp[\X5V[J#ROI\>VcV5``XB&+]"]jcO& L@YdPTv;Ar7f^Ȯo :-Y&jtF6AaÒrf?a`ݺKX֑2<4S_Y8eZ){8OEhQܼ;2qnnA/U&hs4Hj,nVsMW{o6{ ~UxaK_PL*׭Ꚁub&:M`5c6O=Z1uUHأ`.\oЫrĖgLҧ]x G#>WNǡ21 ZGMMۖn'3E K03o1pJ.Y?oMdhJHAk6GcU { %DBaf:A1(hEI*x4_֟Q2)\b#ϑp. KjR~v %lA!ۮr{9igyejH2{n(螞1\( `L%3$+E퐎?];*lms6kc:f0;Њ4D-|BMj&[/[$#3UKο8>{o{@vDX[/4u4,>La(sz'$|\s['OsӍ|Z陼_ R9Ś7S<0F;.@)d J[>HvH>T : qpԢ9C_;E{mè؆iL;yizde9c$uK{hiBgaަˆTGOJxT)-Ui}i:Mrxv.QԽqۥ!>>r " 0w"]=xC͙MFP{J8,Ln $b#-6$hCt^HA6)!W2tҰm|rbEM+ *wd\֔aV yP.},Jf(cQVF^uVN!Օf6fG+EHdo޾.L?Ȉm^UXs 7޺8㋥=۝L/S?K阢kkU8QOl$W^XdN.tn^x *:nҽ&g"l/.`f ;VJ2-?yF9??\8Y Q|\%@QD?MWM_%!~&$HY^I%ɄP# Π7^ckus7:O ԉk0i0,Ѯ K{UT'$n383躼3IY,0Dz!»MCJsT=CjT}qT5la]Y4 [^koo[iz8M[: )ָAlj"V8 i2qq,ڹfx2#C%1a-]5kYa ֻoF=FU,F<`zEu|+}RiQOq5nouwSy;8Vb䃡QIhj=׈ -/;n]פ;g8b-k c84PjU[4TLeN+VYЬi楲&DZɘhN94ktN,6L!4]K[/&p7V=JRS6iHk`=c̓zŤR[(bK߸z7nT(s / "B0Y|/Ԓ&JT;FPKu7ZLfi~X3qP5oV}jspWF4fb玷'̰hUNoetfe^7"U5T6}: ^H]%-d8V츎a;l![m<oin M{y8ݗ0P\gy^•Dž\3+ 8Fé9[c‡mpWX~NUfX9S FfV(س{Sq7e;cU_,R7$^'_ӲiF_U#՜`"SE5ԟn\\`_ZƸڒ{MfVk]A{ ߋVQjN$أ f N4Ik ߩIg \nn ]ʂ*uv+kcG}6Mm%Yo-B B0ȿ5PYoC67I|pl)r'>_Tؘ/} q87dSlT˓_TʊAS AYa *.V適슦hX|*/*VLMA?63(*"kJ  ]ˑCQsbu#8Y=$n>AO5o5uDS s+|Dz:4vldHS# Jtrׂ YbZ *hU( -3(\YƁdjح7X+Z:e^t'C](24/dѠ`G[Pf}_g%ay#W;0w`qicPwYs. nYᏇ̲U|3 O\IDh4lD771iu0_j7I =n9V̄jD_H<6De(FLjJi%<@s 7kGshxR{p҃I1`)םGEEi[NӰV$5GZyYtZ6BQ"S#&>'BVE%T290Q)~۶݌evHY$ CY?*&Pa^yq儽M܊1P1b xɕ6 cfSwTHl1RT{\cIRRL/uK"#CStzVZ@Q!02}#$`sLˮЙiOށrÇaiz,b5حCih;TEK[^o$Uʝ8[<Z-T`؜=Gp 8*} ?!PZ7{QltOz'6(nr@#%cݾ*ڙCݫ2W!)0਀w|<*p^dPz!-Bl@8=oaUkt~D$̪u.x{ ZL3%Q'>o e~x%,LW%E&Smxkqᘄ[ۡ$WdCti")Op6*Ix#m\3H\Xѽ^4u xd`_Fi#@X&mkDܾ̐"є߶.w;*b]yۑx(+gW ~ma~rBoܠCt({gBGbo\HoεTN_FF?6IV>{9vsē#2#0 `Bl_<ہ/"ឬLqEJͬ_M3(xPp:5QN(|8|%d@ x"l1g7Iŀ۫j{P?x)*!Kv>bki[D$U.;A妦< Jp搨\umTs˱~It~I@{;QeAH'K 3Xm 'Hx{y7Upo%xRġvvNU;E|}i&5&56~QȖ`ӇwBǴKp[TDqk5x MU5.#C2&fx a׉ypHRtbA&cZ[C㦡Vc4߿PC"׽ߵʛ3oУc*0p)zt NKk)aUdkGNID(XmUs k7q pQ&CSb4w|s}8MW;O']S >g`o,Z IL%Ib9ms櫝 hPRC$߷Rd)Yucyƍ~4a $3~HL/kVTʉݚG̸%MxݮhHd뀄Xp f?d.썿\ &DmФ_zz_Ғ S-Y,glѨ؃So4ng:> %Cn_Hz6y5Ctŗ 9Sp-?hrD:[Ŭsڟrp@:EMn$c SUhm5o׿p7Šr{{!'[@s4dZpާ0x m)ǹb'(XMVZ*d-\lj]cv@HFKD,mgwW|BT/xŧOj*KQeމ |e5$hD a+e׆0uRRt{;a,Zޟ}gk_;+LoiCsQ{80#AL-:}< ?q?#?? VvW7cspG E| `Ow[͈g A՟֗)@)&pP}Av*j(OSULo p).q gkUsx{C?A慌hηiUϰ{Vt9xw^h1M]kb-)<vd!,!Jt{VզuO?QapN<&&*i2('g8g"7̇-'{Sh[.z+x1A˺D>q$B{tͷ@I HD dn|NaiP='9PΤQ #׽H&KEt_:8i|ڿ:Q3Zhn$bΕ)[Aܟ,KDRmԸM%3GdEf "2=hͿ-;nv Is%B}]Ʀ;`97{֬*6i:r=d=+FEnV>"!& a? kMX-SxcXyAS荵ؓi:z7~Qz6]pMcPJf1'HAWa&<؎jFNLf&|9(:5 ~ x^VE\5lLHz )X _itQ4R#g^v0w_IִEakxHL2[uRi*TxnM0AÅf)g=(<㞜P3~ z`jLM^Ӆ;Hr9gm]C/UՒY1;Q> Q*pGH^ R=NjI@bL:4FK1 G(ST;SҺUB _]7(SGOvcy8-hN6h&q0<)8&'5u9`!o|TSX08g!]vT~|+}$W{ /f\"ϳLNI% tBV>\"/$qPdیh!%UI=JIZER@GhB.M$#->a\)hxsyGǪ@ƫ z` ޑ^2lQ1˟Xy1iMH `wj(jJ3Q-CXWΒJVZ] F K; /E(~++R9ppgֆDGj& oIj뢸S A/3<_[ΦRt ,:!kJf2'JIlJ]| +6Lʖ9/$Y0\ &ZEjo=m Lj ]~zFVCu2mn $u R3ɠF/0"?lqĦDo"D2Cbӄ^"M~mQݳS2eN=öcz2ßsW kܵ0ӓZSD.W(3+Vﹹ{ . &H "rB1;Ӯ+ o5o'w4cJk54 ٸq%N@-Ngn-4/mpP2j{qoZ䝕80 8Z ɽr,66x?\̣ĉQ0vzDNyFja\LRJQGwީKѵS1΋'|cIM/ReHSa+@ѾSjk`d瘸ȹrQ'dnT*'hGJB ,W⏃!7dU "Xb3O&b &Z/*8NKD!_Ksg9?@ɨ'skf}*_3$pGg?@lq@(KzXdAG &ppM4=̹HL>MaEX?ӈ~E̗;(Q|;^\]SJ+o/n>T0):x+݂;jbE'{KFip)ˍ)aEX\:_U3e$LSϠ/rݵAܼ<7%:bNxs1侽[}+g%hmw 5{ֶI@ l)WLI l\r` RQI?53پ-P1s%V"<J&h](Bl_vH[1c뜱}#<,Ƀ+ #͵.y5gM&lȾff"l8K :;O3OMsΚl ż\N\Df ΂Rx6GߊBk73eI.CL>P+WѵQ˶op`Hn 9$v22adPPȉS?'W4ɣ؅EɶG BڍTWlk7?i:ř wjNv% v;H9p1%r.@kZ,rֲB?p=Ie)}$;D%O]-<  /@XiH~H7RE+K0ĚĴxlh^,!- Rc ?k;* ^gؑ3D NO7wC&R>-^䗱ȷ, \ ;MJb!wxiޢgCtrnBS4IA!LJiu*#eny4E4Ec.F'n/\fDiO%:6&AŹ},h9˼h.F Bk`TQwaٽŀ_\ov,zH (k} ^p_.ج-أfZǸ@xpQL*p;r/'A B\z0I{Q{pJ{RvA2*Uݍ./FmmpnI $3~Cjv+ ׽my_kI#rR[W}uc}Krmy7l14fcuG0~t HžC'2L+ ⍸.w!AUz,Ċ굗.{pjh,ڜgkmYcH[ GMbyv)ʊy rz8E/(og%X(|zE@(+>h V*;ϲyb";(y%rzP}(D1@Ϻ~$JS{nH! R>#iA#_ni6%]aQ+I¶(*֫qvP%1I&/^92M=3c[ͨft?#y4 &'k<[hpag <ݓI?x +55gB(jw =|D_ a&Mri)Y@'0-9Ax7ID9Qo^8{Mڏ@ךgD=`)˳"i1%D+‹C6f^ ms+tJT /,VX g/iNeNtP3bK^cYOCQe :)TMHL{CS 0%󹾱1$OJqNvR0ghNj%(sjY!u1ymj\o9˅(DQ!s*5%e,I ۛ 1v"DV0DBBb$GXא܅$UU&~j.РKn(GeIշ8BƆZ_Ɣ3_b՘z:7-YrMJ1Q>eHO]ؕ<;REv.mbH q=mE~_yT}vJ; ?J1<*jH]ޙ4$ZW ߾֡ݬ+0}uk_ʩ2]+ {rjH{U$YCP.yrx A Lʛw㚺8bu~(;Q]VVg&GzzigTpiٲ+P")t;]H 2/e>k{0DXqrlMP‡¥ ~_L[{PHߨHtkk2F8KAԏBe{i:SxC H`Bm^;AX|5azl1 AĸGyUE };nu/t )F &(fXa)jLh.;x H$Օqd%M)T񂉬\'4( ï*@޻;$mT^&j7K@im6FN8qHf̶s*6NnNaugH"ؒ60+ u%mHڥkV:Rp'xCN /!_Ce5G畉$=\0[E:@lG| ;R?A" J9 A9PWm! }S&bgXrӳb%y *:?-1%>SSp8d3x3h|JrυJ ;ԲC,ajK>cz[ 0~l=/\H?r-F}7P?δS%qe{Yd#5E7aJs] `ԮUG3Qӹ skڑrN~QwF0=c8d1KEO6iMxL+Z˸_VC BHȮ),B& WlD;cUm Y8R0(۶x⅃Y)Dn8::Gxba$h}du;O_$o"u %ߋm?՛ f+wWo_g>G_BiAr!e^{#A#-Yhj`'|&l["7Kgh9z?D:ߞB}a 1/ jsܔo_JKX lEVy7 "[nOЅu xI`K6MpZsf-кO? `vGxwZ*)*| dV+[wQRM5*|U2Ay8Kr0}ȯ[:)?zhʧMyҷ];dpTm74fZE?W-kB{LC>ӌ{Oq~j(%gD'},DCI41`3\'v+HˎjrZD 7R30d|n Mv 'H O\gbУ=|QskP_Ut(l3}P"pi<6+"קٱBN,JwM/Dކ9cΜef2h ߥ 1colm,dM|ӆiPn!bgKS%3}gt\R`[S;^pj4)Yr}Y6v!$/KL[<×k"}v)+ M*_*4~@1y 2Zd ~]nɫ=qRJ_S?oDĩ|O^ǹ7$̙Wib1wdXڙac(oE9V_l㞆&Va)ȀRj2d8΅#F^V1/=}k$;}4Zyf\ ؎Q(1"!.X&nVx5-53b=Ra3W|{2bI3M6+w"˽HܚʛR3Yځoע (gC #^l s=& U1uL$2` M09P3(|;3loLQ jy<wT6Oh(]qb1K+jW$D1QoVkCrc&-si`'; X)[vþ|J E a/'rZLC`C OI|ðeNs4܎J"p%F V2 N4޾<1^)Rh*Ӧ`/p[5ZKxFy/wK# MWy6еr&rȝ8\g)X~CC;lO_=y˴5v^Pc{6"l=zQKb9: Bt@ x~]GPkKOeqIunި X\Avh@]. ,"%K 6Tϩ'tPevΏc5٫UFiʀY]o#ivq?:y\/YGߎ Pbwၭ0>EΈ=)) Ôl>X59@9XMq$@M2},* kn`!ԡsoS3x`g\e\VI&q,juL}ЮNƢZ;EXVadvi3Zޑj֌?6l5UxTFڛ:P}?EHqf#d គ5Մ!#k#]ՠ^\yȒg +xjCYg}co@~ [6ęa!' :#_Q>hlL cFuҦNWn\["Fg,cdvٍXыՋ/GM]1^0X8n؍j "Ȃk@ֳߗ7{oj2~*ցRhi%S/KȝpsNĭ#9'i%i& ^&љt9}^4S筙)̦U]qg ɥk8Q)װ+,Q[Ԛ9A^>/ݧ xaq nj%4,]W"ݿXd=Lr0h! k1ľ ?H33C}t <^O.P3FiڳBB\HHgY)qc촙t'B1 28>Q5DdCKY? ^As4RGգivEC,n[`_'>1"-W,+@'fpQXVT-稥hលo0J "L=nqX 0/ $:ycyAQl-0%{Ox^^e Q_M+Kz#X,0̫~ٙYUZ]5Cujچ۫-++d3pb[@誅p#$޹{;0VJ՘:3db!_ެ;Y:|")I8JÉaLuuӪ% D(3,>,7w+ޘJi{~qhG] mpIK5Es,.isɜëo߃D`߂>Qǎ [y:ƣ~4; c gQ<ӈu^=yVDyn-kU@"2ː{$SnA}Oc B@>!pR@\ȠDBҵkKt7hx[ LO:7JUQs9ޑm *]34eO\<^ ,ԡ7rW1q6.ih,Z`UevM Z';ׇEkJ6 W]&mUvkStO'UB9q}[bAtϕOݳ|#9(m+>\[}h̩Vzc8\U6( +ҳ'~rbW$<7 /~(X~τѡz[.7eK+HjtҍoVKIm%~6ϋU,|]Tޜan2[W^H x.b5?Vl:#OZ> 5:5 74XUBg ZG /Mx5b'U7(ɧ)h/Î\CVF)o~%I<]s9@Άo$& &-{u@¿j&;3xӶXV ˎ+ q18ӣT]Ϙs F2JXWfS7eѣdڹT89WHG%qO<$(M%2H?Pxgzd68]tJ9q# O]Tǐ1;]$!u67 \\tThxZf1ze:būI>5Fu3YEΠX)"pOaU6kw?ՉNlaW[7҉ Q,՚VY@ºO._u_8ǯ]Nein;=fwz"KzRV@: T#)2nV(9%DwxT3|jUl0v`ݿltL|rM(ڡ$N1p$;b E'!}g8m','>m#{ <%,Z@Lsy&G“e(hLL*ZM޻dKqs[[׶?obsOBDKcV^Jç4žWGUb={B+Ѕe;.ly6 1v9K6PP{+1׈1$cx8LZ2[pK -/#=E $oڱ`l @d!Zvu ǃ% K_ZhKlJ4?t]C`A0Q3_nju/h/yXx}/ wrDZt!)洇LA|v Ob%\B6[!)?D_{mu4s/E_v̨ OL+‰+1!4>b/=)ra[,Y~;4p/:Pt~)Qk<:a52 k.5u ' ,p #"5MВAͷ=FK},6$lES~9Es0`Fz5! B+} GEԹ"VB^Px"Ŝ"eeC`#?&Lkt_#b8c[`THpk7zȷ1ڰi"vH vT%∉EZpa.\?j aodm5b,w J]7 '6E ?06n;ԼQE!n\J:}R2p :٭rLXL`§ P”6b ̸Za8jZ 2^衧*8F9);/|\(Hc 8 2Elog<<2{ 'ђq[Pl6hTAYCGtqM$Z>U"K Ut7䃓r%ǂYgZtwscFN)kBEb.ۚC~A#=X`>=o9רTXڲCi9'9Y> ~ &R K.csSRRyU><(}u'S'=>[&40|^erwkeTϸ]T~%ʤ8]wTmY<2B (ir ɻ g6oZ spLڔ%3ҙ C TjJ8>oxwj! 뽶xUʹŃ#ob+=~ k\.~9Uso,R8E4]TG',P\ ^\ ?;wބ'g1om߅Ts'&`w0#SZ`G{z_=u+fz1kao ϋ9e9XcoOeɂU,7Un,7 eWF9m4F9PK韡۞(/R*|X y&73$kD-iT+ 1B䇻^`;p$K ̱7itl=І#bǧX2lwvf.8Bj`o!_ˀY-[e^Zh iUd 4T7WY@Nju׹Fx0+ϛ?=X d-|pTt"|SvAgJTjbt#"~jdrPT? >F է؈Of`oMZ ]gsmAΝ7Ŧ^̯c5jhE:"?څ-*QY,t$q8m>j:1LIqª;rÿP`A*O TrSivF_tkE=oTc<r^(]8P4`">{@aRJGc9&ӭ*dMn@J'ʵ+a=8 2”{(% Wi铧 dBچ"=)3A>F9;|GziC,v@j49 vPɸEëo|eq"FiGTf8&({Ai6"x (AKRƝ-\ęg 7^ ~IBdi 5 s=0R~s2}i,=9bT'A3hE}7!0iNJdU0q:٣806LV)Dߐbca93 xb̷e0͌E 4eݎPbTИ6h3aM );>k~ 5G>w&,8'h]msYuFܱ M<>m^vZrƢRN~oaQ c_@mM+-n} KxLUfVZBVzz4Bqu^6% n[j;v"x}KXԸWfC^Ō/kR_BͨRdYpL$5/#gSUVH1[HIY\V"fZx&U!kXkZ=LDIՓŽXnmYos[t) kw, yqQp*@IU4 ; 9~VԻq#!ٌ#ˋ4CX;i|ᣛ>BH7tq  vmJ蜦 }n!MO<0#;"\2lF&k,0_x >g .vI)&߈y0sN4$y3]n={wmîjo,)ca-xޘo(Y+N'trodR2d,տHvl|``!3\#}Auk@+1^7.}fD`?SBTQR]Fٵv\aC2DHP[3?'P-As!xVd zZȴ"N.R=\6Wya}>.C,7/) /;/Ü1C !XH0]; >n+C Xq$C!x'5aZ!|~tXLi{sòW3C 4\@v?Д'Ӿ6򩖖T*4l#Vlξ@#}4PLorBEo_&FPivTg\'BC16ם<',\caZw:#qh7Ɨbb,OKyG*hm Mr~iƗˑSӴ+ťY [Щ੤Jl v݋P;8֪+ Eim=XzYF9 %a*>At1N*c+Q'Jmd>52w赊~^Tb;9TT04K"VB+#)^(rRǏjTe˖p؂ eyy.D|э9IQ5e*H{:'o`I~aJ{扣ѐ9QR|c&6)O|!x*D<8-vX[rv|4Qo|MHS_9ݞf: 퀽  `E3X}2?Z ) P!|F欭Fs#<Ұu:&*g ?4.qI4 +ono)ۥӾdѪ;fkp} 󘷎;<.I˨l@褨]bȦOE%lh~!rnPiO޴^QXQ2 JbEu[az]250ϩ^pmy|͜_ҥ S%gx5h"+}a!xp Y[M0w ToI zc{ҹG&ܖӘ @cUr*X2@ Gl^A)!YÅ鬹ÓΣ&O/Q)XfS9oortTond4K:WGnns@+YS )i*A希4|G!d KK1S!,zY^ " EhVY$Ӟp|EFxzztQ6ۿjrr 4vSRDvf[ d'+_neW}QwITu'/3Wqjꪯ D4)u3sJ$;IHOeydԓPq3CiOjyO:|`#ب AAk@pҔ6 8ftO^|, Vp-ĨnP|We3k]Etif#J)5I!ddKWU? ) UV?F u]Vv~<"#W~/.[ {5d@+Dabn9i ߊT`j@&>z2q޹W 6$1Ge+>zlJ`u'<oT*W` iRE:yB[> iqS"zzUΆT"-A!+À^^"' S=,˼``ЊkѱJ_ێ46Bd( |}x@ٝP9!w2u@QzhQ*,TIe/K~Kɴ{ [l!u3'D@C7|Le_R'XC4; Xy;>bč?̻ӫMd,$>;b1i Lukk/c%;˃u͕o'G*Pqpjt>}f[Ƴeͪk6Yha7\hGGtymA :{/i9=:m!QXX#M̈i_s+*OKoiX 5Kͥ։bG(2֓FV9UhT0{$iDwtH4_5wvD!9\N yhqmmD੎s8K IT1FK#!U5\I+N7*rSkGrLPg{^8ºl?UmV~Dl$;Y<ιNNkM3UAĖ*zQ՚菪ǭVа½ [?T=Q"=2edVĎgP (L5x5_{"-~Tl#G*Pjs K[?-wݗ* l#jƘ:0q49BKV`IzC=7i1B>nc;4#?ԙ5b>OI}<*N5:@!b Ήel 1g=w"EZ-fcb8)z3u;epp_ȗL)T9vлuKm b_,nEoKnڑU+v'[U?s XP8ѦG{s=P [O 3NTJ{$x?q^IBϗfP=@.DJD@wFB4aɹX_ {'9P@`k-Ζ\D31GHlEil +P,=k8zqJA.#4UO0WN=5n(ZfGTg-khpwq7eLAO@/@&5kcZ4Ō7zI" Jyl4OD*ʼ1sx:Uy%p|emmE81`urD͙ɽL ڵ!(;m~w1ЇM.UOZ@ӓ#A;&52F%cvA]?~\*#wyh |;Գ1IVjޢ!U3zICMmZ#ܢ N웟w)_i?A3%lB,[YUk!ΏzǛ" ~-3%Ꙗ>IZ8~O2@B-{KRPm tu,0gh UsIAoԂ:1䥌{I~"ߝ*SxV׌DO hG;(]TZݥ.Y,K;`o|@dӧ :5d2RLǎnT6qOt#^+0E#'s֝a 3potxid,Uz)0WGw+:*Dž?݂BGl?rK & DZv( -/F[bCoW*¹(vI4N8DGMۡV8#BL1]k?,m)5ѨГnLPf}ԗ PQ䖄 =$^T{^8pEMrĪok"nQX 䐧j_3HDם>"o(\e@@7j+|Х E 2B5RԢ~|^8eWYZ˄(ɞ;ڭ!RDC~˫j`5g2Ҝx"O:vsUgAQjc,8XF]kkcm&XlRI:Pu"LcuϾ-J˱{0oFl`"EafQ.2}[ft?zCHtJ7!L3l@I-*ƢFub@Q6|z?m> 7k˯An4U\/V !myMRzT5Sz?SǢ$Wda\-$[7M)(RmI|1 )z* _>UQ+aŤBˆLqųͷ]$ܢd. #ڒ6rG=&kLK+I껸H/plL^6x:o,15]W5}p\_Zr9T:O$a'j߀͌!oP/^' %&YR&PKM|k)9J.(HѢjLl3:^gIkռdMsl]cA2iV Vk=Q(jd7€jȊغ@g6#wR<.> n'X^f(KK.֌L3*zH%F].d.< WC>X=Q8*G~'3 RU,6\ijc,Bq8&')%I/^RXgrJ_jB*WU_07XE}%ϯkX?@{hPa…s>~k4>*T@U*=QD.`&&eou:oU\2q3Ĺ7x] m6:+ƥnUYgDc`  24H~c*#هP6š0hZ5:N#fiVY>(-jynoy'/NMl7zwl\[lE>W:.^.S-6p yqpFő7 0NJ< i MX$$"8ŽzE΀VI)cnۨRI<~΢-oϞ:=v6V7lacrL2(2, keSMm!C\҄,$JޟÃYuN)?pAuU6?I" loLFZxrnz>\0mTYuW[4PfȚOF90>Ψ.CKqW'!cak js4xW\}!jqO\z$Ng@o+[l@T0Z{Iv]C8\t vNK'TGPF@'P }LU Tu:g&mꘗ"MyJTG`Q\R&4C+#3fN-,KiUXa;cvhG/2KJYS@aMI (t1kDc,IjIPZH | S^9%?)cfqJ a^4#ciK?E4&|df2'4SrJm?AC u 9|2jMfR-_dcQn b.ݶXԩ/BL!;F}z=?yin8 S[ {pks$Gma4I=nXEÄ\h[C$?)ŌT2Ȳl-s&n[U-?6I#|w-=&)vf_mT09fV:C{a , B?}mE*@\Hռ(> .1WD O,2>%H؊a^`Ae%z`/i֦ACˇTG|iA(2~qW4#Taa׭MI,&bYRՕz[C%|VN-24"'-m}mֵc)K( nncv.|Lt^ϊxmF)%l ]]7pq^# xA<7)[0H&\|oQKQ&q<8$`BcIV^ʨ%-#.kvyybm[p:>Fz\L71k]s֘_ñ+qUܮ@0^S*GO? 9M ,O ;<_$Jw@G:Fyz3Z:~ݪLuHNYs&68SSrޮhwmSs(iܓ7Vs+L]8֜,F,Q>]-j(]kڸ:#sWn%ʉzITh0Dh6_r8h]xeֈMsWJT든4?zÑi|@Uڡ>+$(n $YFԼmF'Bqgd.u)VoA1ga4 5Ar tOcspYŅ@`pl>vdX $:(,l"q]f6"8 jCFjE En @W$iT '3f\0]ȦA\{s/P0ԙb릛w.J5 Ow{ҽG|qG\b6AtMD{Yg~bWzb1ےm+<.t};]Ϗg3G8p.sAi ;|zъF7:pc6p;^d~{YwF7xJ9mrׯ5ٮbh xC^2YȩR+7]c}mv5Kk"(Z9a_GFԠI[5.&W8DVwdoú1,@D3 I}[yQl2zRB'8=/OȎ>f+LmUR=?*ps85n@2a ]rd5v Af6'dXHQz[mS7c`FvX)!f`o)WFwa]6%6?oSJd{Jbk&OwaOg,-q k.UĦi>:jC߂̛#Ɏ9M@k9Y7[Sk?"{o쫃Aw4h.ŸyVUc  nөV$/ (i; 5KuFߛcYYE$V_І~CHq&c)}1q,_!W.+lٰmo(C~dŢBZ9ZI5 |4!ˁ%El:1@ B;LYX]Y>?>+ʐJ 9)vC=߿Ou% ^L~nggZwh-QmZJ3ȕN3z55c4%䮵(-DQ {85Tl%˜#F\$:#YqF}vyEiA0~fmcTGJJ}L7K X5D0B>t'Iw6>LX,楲t66݇ VZ{əSj7NA嗚=琭#Mzݭ+W-E Ns\%xLg7|K0EU$o]1~oW𠚃gj`\z!B` \VRss-THUoUf|lu\a:`AY7n-|̊R%jp/,zGk4:?Pk֯y= ֽ&Dz<|oʈl`, ]gyx<Nz˜n_ KDTY{N[E~ 2'L5+? x-p/yM튈冞$J{F63tҌJr⟡t\ixWoJ7wMeY).Q\Pd(RDYucTׯ}:rI51ȵV,1܂v |U,mxK&tXP( 7cQcׁ\E /:X'u};3S Y[_иe˞f ^ۻ$_;`qx*30@yWDғҊe7ȠLﻝ~{ %9pIdBLssok[bD? ZNc#WʝSvY?Wn0ρq@boO]rNs^&~٫xIһJZ3?HOK-qA"ZiҋIdijS:v1ėõAn2!-W( ܍u!).Wz|'G/;_(4 ߸3w".&VaR6LWMjǾ!lej0yM?H_owZvO׵"H{45Z"/G(.܄ ?-23O.AE{ud齐d2y$<n=E̬2 8Q7Juבנ0? ֪.9$ԂT2w Ef V/A%K{G0PSc5@W4IUIȞwi9؈-Pz,xo,43}9*nom:i<ܚ8wgI$[JX̸ė$Bs&C0X܌_yGоE߅88WH+BHOpH~nX==ERtԎcON- c|}" 'Njw|!E}%(~9f˶S.$#*e9I)E}+D1س K/B%'u5*ՋV!h`೾H5:(Adڹ'!WH\UVLz&b,>zcy|>f.C\1S Z}N2s); kK[㏲f! -O [5>&4gW#E8њG/fɈu$,k6C\ AUEl6iɲ1ų@: H;8-:Y( JFNΛ:dI}ʥ=ڒLf`jqT/6g!*S64R4f.I2s‡ -d G}X]g7xzx͢6p=wo G5$HCYd<@uXy{Tv'k,&|oqbAm ;:*-UOӻr)GqR 3QSvԹ_l=5HM7 jB{' ˴GVZ)x" " N4bta1\+Re5 )wdRe@>q`IWӘLo,cV}+?a9:ݨLRq=a&H:aKudPYHtjKPDfXp]P˾EuĪY'&l0g@A } # ZJb'ǵ;P/jY6^Gۄ;bE| FLhw, mGS2  ]KEuyA>ɏuƴ.}P՗ [^uj{4S}rv9m~ +>ueH6Tτ0@HmT9:)٨'B"1?#CVXcjQ*,Nd_gAA QHU } le(|JEpS@y<"8ˠ 5 )tȼX|xII {@0{\ާ!F^; xo!//'S:Yk>,6S1Aq{[F E+昆 ty* "OΝwd63$YYXLi M"kqEr)5 fd*c(&fZeN@Zf6s(/ DOIa15bզti[dcxFojM/Q @Q~(^ہ ΌB$x qzWsߋ2Ju(sJRAzܪZMmfFƶ F4qb4,`έ2T<8> mzIc^":#NRFts2fLyh)b*}œƪ5gw4rq^ZfA*Ĉ녈e<Õߡ>T͆v&Clv\nta!!]=mP+u& klY|\Ii kI!k0/AȒ=G7)|4)(N" S"0t,V~C^f~"G+qė}%.PJKK\u/$bΰ>FĊQX*5lMuӆcQgg]W ۂs3(<ŝ`(y"q"k r,}#vٴj~\}l-DFT$3F x 53g갱oB^k#%@pn8\{ܲz*a+EA~*ᷮ1PJn%]!s] )[CJȥ%srwZEaHLt"铺 s~EĻ|P{$#ɓb?PɛDfkt[@Hjݑ| _Qs|Hy!?awH{1w9?f@mX<:;I4rP>ڄ z@'ٹDJqg/4S("?XY-pCs+|TěV'nG2nge&ewōK*H蹲'WRz%\ jD0`VU]@mFޝ(":Q͑|(b $ _u̽w)/c'{ l| V#R=]ખ-/)ww#Zr ?>B~),:`vUHbHģgQF6"D :=YX(S6Q@ Izk$/+'2Xo# ඓuroL0idPK|qmQ_lX{UVԃz>|ghjɘ)`dE]>t;s`iho v*Zg`".FdmJ1')5{Z1,`s-Bc*`REj\Hsg')ZYsoAX -\ }x soxl@GL9YPZ#HL'41& gT菃|`39. 8~{hK՞XK@횬:D 4UnN%:=4=B Eɕ2 ÅI?(eD:D" O)$XڥXDlwh5;Nt"3/h] '5@5߮tĭbZH <&.$5vHl|g?x2sKAD@i}\S6U7Mg0-q pjPjWUIvVB9SDN3Q+[V珕<iV/s(Mtg.t&~{3PlcA7T 4B/8#Ca ^lپtc`VX=0KAx{2sQE uUPnJ#f6-A/`z[qsgPmFI)wC BS=&w&5.5$DOFrNc|á;bK'&rYζ(_=-8go jM˶‘7{ʜGe^\tU7v@C@ RNEh(olLh^aGXN?pG[I 4nN GT6.w. Y(hAY= Λlɖ~NQRoD!~з j~Z~Kv:TՕl\N1-Tm@Rj?[@PKKb!k2M$-;;NuhN^,/KH 1[I޻Ds+S ,}na(b-]O;XnVV=?R , @Fng~060ɱ#UlҾjgڸݱ`0e?BlϪ}X&R ~CsRkgpO@yqp "~\>mAU[&Mh~n1jؼŒv Zbnn4nc:8:@m9xkNI6P`Aޣ\zrT([i8 ;`S #$h5$fO>r" $AߠV*JVeTt+lqg鲚(e! !A FoKt~:RH;A:!pZqNky@ xmF)C-|=6ҵolX3n[z:P=aDžF 6G$-Y-9-zY9`ݬi)FۦGB\Zl]8zƵqi)d]P1kLLGKA\goFB3f:Kǔe\N2%XW_`JFâh2CDv46s 8d7>z>!Jge_=7 0bEgF} ߆05'zX~ o\fs8lKyOT~m0#f텧 Q6,׳IF_$ua} _kźCιn_rRys>G{$C_,3\'X<_:Eoin{ ^@(f82ǒՖs.q˦bNCHi7$1+©'xws/ a~޴yvpTekX7FB2E .Y'g9!)?/aD"s3&u>_7(+MZ ]_'"@yNϿm7%݊^gG#\f1a2I4GPPlOF2{Қ[A~(jrΌ.0T̩ JM -1ڟbJƖ!f (1veNpgnNi~J=̀!<7)U`ɲgL%4(]Y1߈#D cBrN"[ç k ߩ}'J J dfF?pT6R ef?#VE5R3ͭD;Qܔ$ D\xɗ$&Q Wfr]tmܻD˕,b(Ѣ 5Cyz\1fA kŝTHf2n\hZТZFELCSDK 5A:?d"Pc*k9ۛm0JS佇wh9m=8ۜ jr\,AV&Xwtqܒ:ljT ;/A!Y$ }e ԈZj3]o" 﨩9U „o]$ZZ~fKr|)_?9Ή6 t\+A{?-{4* j__T.;hh.'/m+B! ?w}Hg}&_Os1lc2 :ްN1SwHWt=Gdw!\ac&iV`0M< @ >ͤq a݈3FRNI8a9=S`h:Bx/ X8`+:sۆܲ`q@VbU5TbGF %)Š ;wdp#e(sK,GcZr]-%fJK) ̀@-@ _11Xʐ!ňio73ϕUlq"p`-r ^IF8y >.١(Y ",lqQ{ef #dž?NO)B5 )7`*t T Dpn~ `d2=,q#7k(̴Gd[9Z^Vu|7|b4F 6?3@Q煪0WOP2cVB?"c (px$b3@1.cZ`/]*g:yQ+ce򻭘 3@5jٍB2k%Զ;I{2䅒o .O;Z/6.͎NB 6/>"v?$R*E3qb W$XƢ>ivmtt?Lǵ7'Vڞivdr, $1^:xULcHIc-p\zj$֕73ĪXgr5g1t_Nlj,0Y)}s>iS?e`Nɍ$%#k󮾋ܢ,WΗ V s|زҼ!, 5J`_ پjҬ͜at kku|-p*,*Ky-^ >lXCQ])}N6n"g(R{Q㚲ur(A̐f>*ѰAL#:J@yuL-6 vI&baɎU*tBoZNBa!q[0_wZ&sL)(.0#/CRgwV1l ۿPTw.KWu!6Ċq߇Ɯd zt+"%Vr]BJL> WeŨ6{3"! @}3/i@Fء>j@\ϣ\Ol C~"6ktL')X.4%{)<. Zs--^2X V+r-| Yݳ <{m~-XpZ'PԖ;F9c:c/y Da;{{Ýi 3uܫq&vB8p.;}$ 7DZRĔF)^DvCo$h"Pϩw|=iX8UG@=Ƚ&ۜ!*凚Oܡ0 Jm[}RcDs)v!|C?&)hZ1Sn_B0H3y}d*r*"q@\j,hFqU?rJagm`4U]"ϲkp ygFeъ4hyN@3yQ* J) Uk4IvBU8%a Lqn F(tA'vzo5'{[sɠLHGJI4FSٓ"vW磖NR; K̰B{֘rnl!^]gy̳> 1;*g*UV (1rcb\$)΢3p !%١O1_=XgqyNbp O nagu۲};= >K̍Ɣ&'1PNG}v8)|0͹;lڕvX֟VLffWXG8mG[|Pf^wB않!K^V  ) zQ o=)x(M;` 3UE u(>v=2xQHʢ]̘np& |\$}(a }MTi~* dl:SPt<6p pRͼr oc2Hv^RXȢ璦^ 4ux!3U@>u&Nٞ|%(CLȴXJp5,H3 d#7@OUMK]4h8ys_ښ\4ꟍ+,2L:2)֨U<ەA=.$ٿM3ZR?לRHR#Z4S4\ޏ}{{` M:6Ǡ'<,aHl߲A|}7G`ET;_A׻\hBhmTph4!/*U+?^#&]LOxD{g-)~_S42Ƣd9N+@htg|a}c_PNIcs5őQu,w98<)BT mz_z{oApaţ/jF ^Rȳ(LyyׅuGFU\h4ohRwT _v`wX-5w)g*+cq,IaxǮlWԀ.#7>Gb.er߁`LE8?]SAmC#N DH xqp\bBa9SD!:C{l{L$L؆ȤzOzw`"'(\1wg*ئ j~&a5<)Q삃c)]-Q2"K$f1#A6 &C!N\?(-lit8F^aP^*4ezeiXb Kl!(k$nٛ0UvGmdY[>UiHЮ2;3dG@erY:>q&y`aZ|u%]z||'FT7&ŵ2Xg^?v2MVlε#$:a+ƌuP^u)SlɏMӝqvphi3K:tvcEriӺڶX 0 #%o(1Mv1 :'| NKE*qB3;?ȴG=yzn;%Y/lvzk˫l.G/}f~r r"d% U 4aDnU_XcњꜭszF&N3̠ m C71l>5 )*C3ŠGtsp}KizP[('oJ~YyTlD6"^ǸIt[s+{3A.pdc7 ɒ]*ꄩǎCߞ yPA2xĔσOZk-J᪢PC+L!Ƥ'.1!岆7f֢b]%'"QѻauωEɌȺ9S/,@cq>WnY@~& iݚJ5O7+?ϙ{}-]J~.Z#axr)oc 3Nx~oR@#'ɾRg>1K5yuZHi|LbRUz|%O6AG-KW8%G8bQ>9?`7Id9,جҪ>5Y8ۏFXkA#jKkqT(Exݞ`1SLyɗRx:Q)BQUOq0G XY($4*dVY8w~cWи Em:h0 0_@JtVwDkV1IN!@:madP>Њ $P3UWl( E[R`Br@2ejF["#޸B2v>I#7uԯމ" r1 C]rtMQ&#B;-^YnxL}Jḧ́NoK+* x oWjkor0B69=o) d;jΠZ&H b|+$#FfGkYxޭz9Uj#ViOA??Q2&E2Էw2\vd>~Z@2Oi6YhA+'If.7Ls7X,AYmP{cV}C׿$6κD Êldsw22 xUif:1hD=g񹱙4F1]_K?pM)ǒMSɏ۸M0[o}7 ZDJT{0\)3o6p~G/؟QsDL=sDѨрh' &ѷC6zg.Tkr|j>+m҈@=d~HKkZonm>A>D =b5m ۫.d!|rxB:le$H'f?-b]t(Qo{i@XC"̰3u0 /q&. mP6_0GQ%aK=[p;qL ̦HiW+I3UuDPfˌ9Q4 Mv_6b.R|GG}aj`(uͧ6'Eٺj;wEcs mܟ?;\v"AR欎`<=C(F;!Բ _ m [j4#tb믆tnM[,1Ύ c[~4 qfщCXXg;?]{0Ca8T <00 {h5WҸX}XR,9hkLFlܬUdх@_L51wna n*Ƿ)#8Եu8uC3ls[j [Mm?ޝa]3QBe1d˝$m1T\G՘]]VN}\~1\-cA9{Oa.g$1^ieuM_ n#$8_㱋t)UmqK/F f㏲{Dq2C Ϝ?\jܐGLMx!U6J"=+C?&1|Վkk@Zq)vYc%!DJ0tuoF4 Ȕ'MRWg"7tZ!'UKkr#YS*`cV5pZАMJRHjS^n{Pݱd{{HG`ɆD֡:uLM+1yc^[=_&^zzU ll}o8_FϜ7A=͛-B„Jkbdh({vE,z 8u%:Oژ6Xv[ .V n>@KyxG+Qm Ci#t3i5N;?yPB(vIP9߀O#e$6(+>v7QRGk9|q-ҽd׬xxQ,sӀ>Zk?3Qm`s^ 3I2uC~dcm򔂯Ūj8^9RHؚSrR\ 9"~JP]=qj1|tnKNrgcB{EM\R8ȘVˮd|`I*͋ ]~ %R egKQ1(=Zw4aF|LZM$VݞI keq5fE)2j ]lgHu%t^b3Hŧ ń9'ON>iBA_ ?2-د~:yH _Ck!aLD]O14B7Rq\{_M'1&to;vb7RZC ɕT 7d>z r+E2Q+}Ώv,3XQب-N .l9jRAޔ!h{3~[C;J/['e#MP^ ,d@<u POL?>fo4-LJP۩%1DE ͣFڰ#M !o!C&7a(*!/4.S*45P1Pt >xkRHO5{u6U? h ؠbb/QޕGľclV>O ǀ[%0;,TC'e3~$sTI0v׷;HZ;EX}PͿ, ki3]fY[Mh,c[U`ܬm{ɱ%@d]rCWmjOY+F2`4,мSE/jj]hUTzAÿ^99 v^ۗOUv:an؉?D\ulGMZ5b/%f Ó Z1iTB$j6B]b\Qys<ф*9]sۧwf6 oOOf0fi}TUG1cf'i!L7[ нw0opg-w%Z?% OInV'<ӓӳޜE4ppYycM @kJt"vaݝyEɹusOyV{IݏY{chfpfoMskTZ 0Yyuh$uv ~= a c_BM96!AΩZ`yߋ ,L 'e)qq-031Kc.~B.c7ʱ6peݥ _ۋwm'J Қr݆,U}Q _l,Bp! _zGmSX%#Y//WxXO z'o6~)O0ÑAW}r8$Cu۶eF*@ ^!ޘ];|MpV ģ&mk9H 1i@֍?lH.2>̀mX`,>Jyx9bq. +8q^67s&f'v1ϳ]AP8uӀ ʈ:;6>s4F˷B-ԂPMMN$!2Z{;*>'LK'͙*|~W8ТM&}W KZB|q`,lL5'5R4uvMtڅdRΰƎx_J j:a}RmvA$9*IZuq k>!S9 KTw?5g,)-0%ձP^я+Bw0[KUuQj E @$ܛi+R3Bnkxt4+wdx-Fp!)'tYy<5f/Ψ͹6\L("Gs~N322ڐE> vsgn~`qa·]C ؉aSE&h z ЕTDBLC~EyP(oל‰x`+E]`l䚹*m^҅rMkL&8ˤm \Dtpj+yɣW`ݝ̑}&~Eެ5aG@toQпmd=T˜ jkjO45Uf@G+WcRxhl4M8|"$] >́YZ>& W7Cz+~NiJ! 7dс_j) RxP ,xcE;kv˫-rE)^Ci6A5yNg ^m[HStk}lh}$<,*.|qߘ!f߶&e~ 1d?KD?+jnr{!گ깭jf2"'h*\U/$۱<3^ IwB7˂GN_DLPr!/Y,R7tymbPssR.ۗ?h P/eOEeC:6S Q<'5yn=Do`z=*8, ~lg0s s 9ۭ:waQX],̞1;s`EhK/Z7/n*4- K1;O-Qr-pbn5j36nAcg1kocCG]cTYZQSmk52> <<0P/,C$k) (A q*,D{dhv5 Qf}>6R8ښ 0h Aтm+w7ĿP/' g+_=O R-3LaA)Fg?KU"Kj4 VgdŁ^%m{OノwFWA3V+RX @jB SG=Jy*g;v9qMVه>⮬AH~9`#6Qu!~ܵ+`y_}51^ı"~5-bo(G'x‹ЩŮقd]K}>>%s&Ftj9;`Hrf=iZ|&]Mg h_PI-:7K4i=]K$7ߍDw˿iCX X~c.aR.IljfC뺸cD0ZxߦёEߓ+4ޜ'm-&6\o!n1x_8-#T.9Xs?C|.]t vZd_F:u@uٚ) 0HzAIXd-IWQn}ȘM>>!LB&ЁCY\*c }o&w](7C%x>N̙Gdx ئ0w&؆#aNT!ѐ[\-?@>A?qR^+ lN^OL'esLp qrgn,x3Ɋˏx_oc| 7ӷjج)4-O_. iܫagZ r{;mI5=)%aeȯ&ҡ֏>FKSc4' x0tFqW@"ͿtnVlxw(aOvئ\}i1`G.cK-?(n uGW4k{ў 'j=;,ƌX]+B fRbxR'8ZKig31# S^u:6Z|bQٟU 8z?tzS;2/TJǤh Or>l#ag\. mKoae=n @xlZ87qs=Z%t.88QE1>ZʘA;y[43jU J4뿖oږ}7) VIv=~+fZZ}s@_vyj-(I  g wm#&>^'7/譟k g5]$bj+Ng+Yq$SyF|S2CMTsy/Akz`u,6V,Wt9[|Q~ݭs&IzaO:!pՍ A|"j;5E01I hǣò/7YŽY#;Cȗt(e؉qlt/4``'cf4BYmAf+K0S =?z! IqHQ{@wƜqqZXHǑ3?vIulP /$Vvugx|k ^2 Dw{3B=zЃg8p_ !2~`ٳ: Qm^,i2x^c#R`j?N [Ș^9L ]Un0 7V Ũ6#p3Ү%baI!ς0LπOso)KH v^eSߔZ敞' !Ѫ/?t3棈+yl@-:٬ה^aSjLyc3}t0A#\-E'OYf z٘Hkퟨ6WuP)n-_`(,i߁u QF.dcdR)k_B{gK:`rw'cLJ/HaC~sm[nzM wKg‰fplmE6~c}#DcM6,M?`4x+FCb-p EX\E3w £75idw0l4@J DP,^l5vKM r%'*u6F.fkg\E/suU6}b"LSڊ9ZƆ+2cal*plR'9*F6R[BV78>̊ԃ5 J˿2O PI}%tQ!uWĆ:sV?m"| >3SI(rx$ߔl@xT ̔Ql7 М)?@4u{=B^aÔs%w i~B w q}k3&ujp2]oARu kAEG\۟>OI4/vq U~TMQG)=dq \p8En[Qpc3ǣFVHTE,ę"g4i-66lVB0hD؁R{;ݍ$>]:X=X{}ָЩM+'T{眧TK">9<4yep]jB^dYLV)|mGʫZǀjpt\揺u}=U1ȴ g8B9; $ "27L؆9 a5#,>6q/XӘߪ[ǒC=0;t۳rZۯs)ON DWRd5nՙ~E LGb$Ẓw6C5 3`M{.{{U\>H Y |4jۨW?s 'K9n{?16TgQ A1u^ptiv+<Ԯȶ>YSiN<柄"+ )SEEmd;6bEs+SA;N ?r+USD^'~Xu̖Y@5da*yr;eDJ_հ'c݋y\!RF<7ٗ+ DTこsҥ3%l68;4GpdM 4jzX>\)6Mz ?qEr4\"ٺts Vwp3G"bu,,G{JZVB<L)dUDZFk;-cMhDЂ~T{Qw"N! ?oP1ϯLzXm& lnJ>pl"V#~E/_,7.[1Ĵ3e.>YWő#^SH(:I_Yh1'Lsdka!i5Q2vٙ&aθ&sBC>tt7DK%|Pmk"ue n&&XFMGrJ6μvI)p˓#Haa+7L-İt]\?KGSq'?˞xEFEU&[l"x㌓UqI}]|'H1N#a7L W$DxzzTjZ,5!rd:H.qcP,$lRjM{t‹a$bZ ȵnqnTi_4fE` v=hi{]PLw荤a^cܸǍX_47QA1!d3f3ib4b_U|臻fFZSs}XGhc.\ZuꥎvCv'PN+ NgO\mGb}TGȁvaw@^a?\ud^vow,M8TIF"=l zztajP#M6+ۦ-O&٤{!(F{ֺW\YPY>=vhUc?0;{SO%xJP,4B&,X)N#y =gER$Vk^;HPv26 JoqKŀ.RQ!vK)"]R&tۛA>u8C;rj#EnRNĹĶ݌CNV A n]?xh,äXROuRDfr"}S ړTb8` _W`ixg7ѨC5aM[hšJ*T^ܴp}"m18bTgq,dœG '*Nvg]3w:WT'č-{ {ewVH=l26rϢrT3P9~ UST|tZ@l0)^+&нc Y5g `l`DjcgCdC07)$Jҝ FGuVc(q}_-*ng媾&1ED8L"AE 1YIw|La+3 cGU\k6E_~@i<vCmrAU})gCU|^aTKsw)p;k7]#e$av3qt[hT]R_<EĻ,Aյb+`$j{$9zvϵ;C u@%fKHv[:]N{ #5` y@] o&wUK1BHUG8Q}@9I20/+pUbIR;}zEQUŌ|ON+3\.lf7F@K扡 Bîׯ S+ߴӕL.s~0 h(蔈z|(a$tFUC8ޕdP'WA#d}K0 )ƾs RٴOSMٌ:v)?:!se10<-X# RĐFqZܽnR/"߂!Medi@{][*s{Ml3wʸFm6(׫8||N7 r.sQJYAdTXljrl]^ZdY d(,Nx.$苑uC:YstoEl >[1ťxM z(ױ\4IQ _=q#&[7Ǧxs&LY{}r:? gTep< T*L1) @E69Ln5JlGM$:I z.S"HxSƚ eKiؕ#9'9żȕBj|s/&  <R (?g#ե)aN=^ۗn6~.](|s+_Z݂4ö]NE5 A%\B`fT +0^*(i_#ӏ ~I1mRr&*صZr*L2S\M\YfܒvUCPeYq L^S 6Ӝ_3U"S*?,Lc;8yQJ zcN4cެ'Sq_G;Q5{D;K [+ޗ8 Qr#lY*s/AX0̇ꏗd1*!Mz2ƍ:2~y? =ɗr*2E3|Z–!?tTky:FbI_FlYg=Ro8jh\czO'._W&LL!jo`.0q2T_hT >O(,(i_K{Lm6]fuZQQK;E1a#k_6xXXbT:qpaKfAyuC;dna|5YUߴ{\fKb8#HWƖXѨ~̤Ga5%Z}j._V [7aq+ЄbKD5+HdJt& ۥv{F:N vJgu6毨愂: _uϯeϫ {Ix5@ gT-@UuB30/ a[=[B(mKF27'[ (ljVT2>A(Vk^CYQdR3}=°Đ:rOHPc:m:ZtȻ3طwSC 5藐Jnʜ=gl}[D0}xDkl氳}{چ"MuE^%9Hr>1~l+hBg^ĚNOi܆nBުQ=d~UFSkWJNM:ʔp 4!@iQh#jXי=V-|3A$u؁=kxH(4S*m\ny T8gb+R'Ԡ&Aj[aO- w"?B *{SrLT>d0͂l7Qpm8}'ni`ni$ѭjdbFvhXVF*XGa>3$?;B0S5$6Nrϙ0>Hk NU?gT46B`,4sB -?$:́3k߹Wś. D#'[MЯA$na;'ܯiW:͍yXz3}D&7do޻~~50N{MsƏѹKGnk#c!/7[: -ufwm'4"!hw0cW aE0Ջl_cuk5HE_8:ϔ/uV#l+ @\*gɯ>)q>ZV/qS82 ǶS鶸1Yi|%o(N<:k S/]xȚ5*+a#ӗ!6 FI;ja*ެUZ=,P,˱3Q>O0jx4~+(.[ہ9lrIl@mZMo옯 :x(#B RvJp LpyKP+$LrHM@9O]^jF0\l/? BW>:O]}ũQ1B<\ÖE?x@4#FB8"XhI4w56'ZJ؃+bIݝh XWonH[-W=j'M56׌>2yAԃW'?h2lnbLov6_o# Q$1>'ö*On*uj:waסb]GZv6^sHX=|fuՎ!X^bJnXjWuSl{͒:O^"3GCBFn .BtkmL(V]&Q4?M Ž2IQYˋ9_C ﷁ4E"61Hm P `a2nT KFiuҏqi'aG2SD~(*:O|"15ZBkFjO(ȗA-mX  jF56t&7Z5’=CE_,5o6ELLNk x@4Gp#0=Ǚ~b DH`$\PKpp?R쓊+RM ֜Z]uT݈ߚ'd& ʺӲV>F:i\AOT$(9 SҊ]HQۉ2qIE3V7(Փ0A37&5*nNxOUnSc.OT`{$z勭&J6O:s.=)=*I Ve\Qai5ف!-Suq5=?'f u"*Ui3`h'#6]/_781!;p~8PJ1:N R}KsSRoʧ3*LxF'Id'EsPp1zvՁ ^ ʑ(jNPK C pu!zḍCa?a]]irE.DamD Y֎=* :waeu͌n>rlSq=/(W\1Oq6s&GF9A`e2@qʎ{)Nr7a zQ+&4@Acba[P}56"}IEO ? zvW-1.+}Vqu~o e͔e~vItt1pY",e(c|;ݺ+>JlOE*}D^P?UYrx`Nv:tsOUm1q̢",Ŀ&d{rȣVE",=-ysj6kJTӬ:hOvۀ$Ŧ8ɊB.z)j'0AA X=Ƈ: Ϸ%B.\wd}]F{\HF+qk_I![~ec-B^Qj2Π?-: uDzđ{M NئrދmATЙPd 6Ms#E% 69*g` k CvSi \ՄGNoY<ӣН?M*/!mg:RbƽߣA)٧B"30ɟX⧝~F_QظdCr`3_%$1??t'ʣew5}X7p $MwPܨWqWeq|+G͟QL#OΊm^-'eD#(|8c7#Exd{ u$Pewnam&,zX j%n Hu#!(0POؒU٩i S7lPk_i˨lh/^eXj=f{qxT:vpk_R+SM4kXLj;NGY7 Į9EB.z F|/-ZhDO Ƶ g%[?˛p?k ucT L3&\01[7pco3L@R~eK(ۧ. 5~gE dC:]^]GAT9iyVO܈sy6KVB5e(;m.uVt/(ANW6gtzQ ym)hU?oAӆ MsP(n?I7[s򷔉x$rTyk|fx)0ҕ-r_6&0MbF_"MS_ 9}-GRJ&LeLp`u[՛<6^~A T0pOȠmp[ؤE`6lҢ-݈KsEȄr^zNܧYm=Nd 4"G𢼽yifV@^Z00{ʇt3XN[0;<@,`[ֿ3ʢatVdQN7 `"K߾l5oi盬#&Nlޔ{yP6bMG*uN'C>`JamLgb'4 0x3'(()D}9A7vΣ)Γ:]/n`1Ll;kdO)+]v6+ |3y zN;KjZ-@CЗÝEَD%,b_?"'A${mƐ2}N);<^3gex4+U:Kݠoǘz7. Pp(>As\7U̺ePP:XI?V!h\Z5AF*?W'Ĺ*(g@N|4fPGfF4D:.=8$Y7u97}N,BLlzpΊnQpF+Ha3[޺BCx;x-L\_]cGc8hi@q}skG }Bz@WA#?. }Qg3ͭqP>OD#a!,~K{]==0&EaԱcYe\ٓ5˶l rW˄FL1aBj'#}+ $'AR>=s|Xkz0'6^πۄQ1^eFåBUbɏ*/!mx~'7, &GٍrKȎhq]߷)KޜX`h'W@!蝸rBz?řGZ͒ ,eLgEO^}Mc7 T]Jؔͧ# ooݷjۖM>qYڶN o@ZoMp-+Ѯ;dMdkZPr%,6_ô;!lB?l.JnZغAش}^r<-48}f=խ*=j挋+m-]IZfc(rAG',v<~yq(-!L*h*YDQCA[/\7C\,;/; 5>dړjĊ<^XUaI/gٹ;#3|G| &F[5NRܿYC@o چ`JiShfP=O `9lHQMvXfI|=*߫dG'4Um o`Y4͙n+c/KRc(7 c͕>lW;5˒,;S@;;=ڤEa4Uf]b@Q ¶o,,h!7:3 ª8vH^;18!. J3? #|j 3 didd 6$=:#lTL<+ko\-7/eتPX})FC{pXn(Z9Dͧ"pmGMڱ5E.b5q_\%u.Si^ԠQxWx}ȓe@dmo}nܶmlj`ؤ #SUȵ\M}g嶝MF\cPXhxc~ ^ͭSE>n7]l"]:Pisw ͵k7%M};SqSj@Uߐ!>ثƪGBiچ{fakE?CxPm|3^V1(0|G߀T5P p22j6,!zUXֲ#TNM5Kcj+ aȻБ1]cn|Xm;%i_nl+Rdp %3P|oiBoxVe~ S1 'CqyaߖXw*Ӟ{n }`^"n̕fatğ`?xbA+)e^Bx؋J!+2 He 34q`6_>)a;@=/uq>eFqWfJ ذ2֤IsՏ5oRwZ@7QyKx Qw{QuNKAS*Õ<ħ 16ϤP v7kiH>~O`{E[H z8<'r]zq@H޿n^%c&R;ԡR"G622JP` Z]ChTj daxњITFw[qjVN`3eMuȉJ i wURץcƩ\I(΄: B.򭙛~hHg6ߖ *Hc /^_/yc*/`G4tbR MHV8:N *Ȕ٩ЃvWL? :7!Dzy+Pn)JA4UZr5M. pEtfS֘+3 $D@M:5Wi 8=sJ<d}֨b>`9`bqR -r2ڣ#;d)дQAk--/ S}T2 P]ؓ)%rŽ'/~W6e'ޔcƓ⿧#O@6 X9d^ܣ,0g],o\F8XEz;P;_=<3.&Ef1|o)lҎ~r; h]rhH e]XXLs{SZ%t7T%6{Y󩣆>7O Cq,8CQF+6NϥRͣIdz)s *H_ȕ ? k-lY?,ut`>|>k9=}j@+^^Ecз5egC:lk/4($q3< &!mgE#e,-+ͮ%# e:p.0! 5ʱ%Vr >hCa0}iaXƫ$nF~ Yb$;g% CxPP6R`l ehc9Qfo;A[{TK IE%|0AuuX'_]voOjx2@>U-ABPR>(VCoX5]oW2R!SrnZ{rB᳑M4Y". }5Xxw>FWPqdrvJ%_m͋}qS'KJH̐|AisuS$/ [̌vS#xٯ `V.7W33ew+f^J|g.Q[;P+sE3) ["GpL=Y<=l+i틧 kQn PC>{:+QV\tuo4O2_Dz+;l5O[)ssʀ} tc'恇Ƽ0]̱藬pЋG* ? .ǃ$Pk#*Up<͈:nl߄&@ImM7Э@zhX5xYJgNHUQfk$ ll'PPPmQ\ [U0(`bQ"Q2$m>IË_Zփt2pWQ'jĨ{u^zz`@#lJ!qӇ֯>zDD`[S@ck?:\c CmeN3 ݞ\C*E:[x_n{e,ePw/dJaM~uJE,dm41M)mz}<^LQmX.=P̦x"2|ILFgߎ\<+8`(_ﯲI=TB-zyqQYa]Tt7~ <*{fa[Q:!Y#| ``)$yMrv" .GSᘝ$3,E"s,lgxXf"M@Q[ĥ\Lc ,Ħ(Usi8 6pkI5`t3" =sd*~!`UjX!z~af:b2V*!m" m0 wp"e#<{Ze4;z@.SLaNWxbq[$pNj0kf#G%3rU5o3#R);)Î:{U'`FBSls7:24kBeBY?ugS=ퟀ R>5MA݌<8)~R5%5(R%:wg(+"nR8 U0۴l"k^d`+ ^pS~ &mxV`I!32sBc p!V+xMH$V!uܹ̅$[Oe͆m2ݧuɃ@β?1jy8'M5ix9!rxrOjuɃCXLa#jȲ;#TDVf WR˃!%` G5r S*O&{˹` --+Nr^Ug߻L1Ԑ nXq;.ǗO8J&&cd̆ѽ՛j[HB?W%X˛*i| f%3MI<w{jRriJ4%"9"z)ge6ȸXtm`{gx:c;II(<O-*^%۟#C׽VĬ(OPahBp@_9'(:+\eGT7n .rH!?\?|اSˠY? ~.ųz?Cw 2Vy<;F T]T[5ۦ>~I3<,\Daю[15hw51!Аi%ήq! Jd\)MW-eyBeS4X9ojHO&~#D)@k P[/i^ψ4{Df? vtH}L$LH~8#.w"iЛ`hhϝEc^+xEL<ភ8m( 8AjNB"dوb2dvz{ˣDb;2 3Qg#@|FK6KEP6;nK|F`'{TӏTlQC)4R7Oknwu;Eo-PxmuKem}>)dKQۛugmΛ^lKZ(ašsiB6-#_R/$%qqVׁ8&"ݠY›K1Sh[&7 -#7qP*Pҥ\/~R̈Iб̎-˾FO ' }] m"4r_0 -ƹ`Qoϗ#d_1/0p[-*lĦj~d)5?Z g;&%Eso,Lޢ[@x6\VN)|H:%<[R>':_]H}h(Y.gƍӏ sTCEZ{ TTO&0Qާqnc.vGj}-J.`w(8Ǒn|T{&X/30J"YJE>=Y|xÏ7\85^#4mP8n7YwƳ/(k~nj <WCvā}@@ <s8=fDU$%t YXZ-bR r(t?YˏD#4*ΰ Gț4Z[٪#*.5H ~kIZ_ϧFoV6rA͕}1ㆇPJd* xW76(}r[40; vLH -?g#nN931(֢#X)ԞҧTB U 2Vݨajw1g,8{*f:n G00 5Qn \uGxsӼqt#k%JYOq05`*urҳ3G'-S6b7@_Bݞ>X[˺,P'cwR*֬"2Ӟ,* `km풘K郳%ucCi(c8oo'xM ./mA.ƹ6e7s'IKʴo.]#%#v3 ƢF(],dOQPN28<]f9c+J2m %zĢK 9ƕc觘*Ec/"(i8Ů8J5,jZ#Ǫ8T,tBq~D ا|c[$_EC5R{-z,Zһ.qTV3\9'~:P & +|g*;˩u(p&Wd˜j!iŤˡB`k[R ]3A聞  0 Ҡ9" \]v]BaV+(<9eZ1qzOPbĔy Ȑ6{V]Th+\XZ>isR8`, /o] [Oh<'&X5˟3ђ|o𯋅xb89w1ko| :A;QAvmߛGV X̱).] ZlJ(o|?}a[G\kX0}ics 'vlAfHBZ/%W,ӛ {( MzUeq4UQ{N!6cΟM huiZv!7&2?C??5d)+mܣ#;@VkF۸+f[OD>eKlZeM w^ 8zO^s-'=Ǘ'm``QPfh|"J iMa\lT1toodcP;r‡U`㫚=3Ar70'4HN;Jzm Bb&`չiӝT-'$a9g:VddA'(']eJoK 7+RF,,6:>t+qt;zpuh|)~s>M$?N #3(|OZ]! $I}]Heuػ5.*39S؋ڬxC |Ô;#: I>u@~>ў!sS axq 8hzk>A2x󡂀gCoa2˘FoM|MOuxI~#4R, o!r[ *8.޻3AZԉμJ\T]'+Q^l-*UT(?겇5ϿXTy!/s/alMQIwtwXqce:.Z}%V,i] ,#]a)7r½U]T:;`ex>g3CK],g]C5$`8f}*p% Qip(zhWkR¸4m%ePyհ }yZ@yhrk7Ԭ׬ɞGMK+[P:˥1~1bk~07b[FCڣCdCM*}`nG{}+7LW8`+ƨS=<'wSyc*| kY}E@JVoׅF^L#ͱ*cYF{-?BQT~pܒ?IQ>787[OV&ȲKjJjcݵ^c%܍f+ g̳t_*Z#T |Ȱ;|4zE5f't, 8qod^l=-8# 8J."H IkYIJAƬS2X%_n hT^q5vI6|IDZ+}qtRAidpeX w}xXrz|\rYZ2^q80B}/& 9Kt4ڇ9~3$]Bk 1f #*1.yv0~'BVedOG/v+Kk,~I?(88 (']-UO:" *D,uZJ Cug<)uY xOg.lY '}>ש$W(Ndu 褸f_u.42ST]=IcOՏO%?23Xb@NqU(-P0iR" n0㭙3@8-z"g0ώKㅳ6d~2Su練Z4I遨乕]Gp &+&x;1$aLc~3vhݵ/=19nk.9 Ñ`m1l7[F'AB$唐JZPWzoH8<fր([/^U=#YΓ[uR? I7a;'i Q ܙsQ:\bi\kjSUćY[d}cPDP]J}U-?#iWimzWx.afwq @tBJz,jJNPapvF Z1_5b[ 6pn U 5ګ/d*]x#W '_DJ ڎ\9?av' '̊ɤ 6ڛtpa/G2^Q+IM4I].L=SyRpǸpu05Ho݌S޾s?"mqn1yOKf7#/P%{5wf3-z ҰsxealL-B԰]2:\)[V¥eZP䜵=rk=G,?oPuɛz9p_/SFvE8'2[lY,\sz / KIфkR-ϡ|xFYEXñ 0#8?NΪ;Xs  |~PWGQE^`@XWʖ^/,Y_yNkި8R~53֠ jEK𹅧ͽAZū.M찊WAJ%p :~kdF8OMyB'jm6gh:Q~=*`Ozf O >=%܎a$%~6ju48N/V؅bi.~w?ڼ{֮Xa2P[}lI0߭k$qw _ ЮpR9c[TlԿ-6bVfkL­HUz"1 ;;Mm 1n|񙸍n8S~C+g㐜iڸ۪c4M(É$(rMdYyMz[;i`yn>*Hx}2Ka5huUcs6F:O#`"$Wri1X`<;3Z_]?Ѭ6,܉A ֱһէD,S ̦p"#KI Ӥ*Cj-CQD֗&fUUHxe1ʣǭ̀tpB4 s'fqUhI9kgp$*+Clqma?kA8[W$L S~,c@`3iXP!o` XmLBhXƴ5E 2T8uM-, 3F3jƒcGTk.%,X4"ipDJěqE+*x٤ I9')J7_ɚO1 OGZ B^u@Tl?<5H݀ȦĤ}WC LVoeNuUGx PպB" FxO~InN%>!ո?¢w;J5>1wpi |ᦺ;F<~= јwȀC)7VMA: ҟփyW0!(jFY+bQ ܝ ЭRRKraؖxQ ;RXl}cib+|ѻ*X2T Ҩ*S43BK-^'-/t΁k3Eh*D@Sf7ύk2d4Yl27@w9z|_l?O>NJM8SJ{>b{<"YiߒW&սt-H:QvGTA{ i'vsL[c:X$r8VYZ ai~ G -ծ/f13ݐ7n y5T*5)6cTģl+7#!#*Rc]jj$~lb)x^tL-ݸ%_L3.dJ lf]3S@\I6oχk=d<]:_h\Ixwo*]KAgw%%i"f0C+#Ù.:mw"`j^i;=Ry>dm%Kᄥ<4mbAғ@7bG=hber>T7T`CdqRzJ ~z+6APx|)٣UVsmi3ϮZ+@v4 6Cu9nIbUkA[{a.l?)βx7q6HE n.E|y&r>kUI ;Ks[QUťo%Kӟ*~Ots$x>Do͋ᖡPvw ]N &6ҴavsY LkWij\874)39!@]|:caApa8s$t)qP^hUcݱ;a7qp Dd;mzw`-6d$rƋp*}AM2FB8s9X./' hnHT^r6qe^_(/ Kre 4j3~SyF^7ֈW^j;7 x^sg Nr4\A KM3)IrqM3)u 7\ )zBVbCq1)ѩ+x-36ýGd@HC}/VoMѐW=+h\9'l!&09Mߝyo, le}  AFQh˅a5 *SvC!Gh[o{ۻve'&e*um8ߵ5gŒ -9b횧7wIzZh>(4,]@T< U)FAjuةX\϶c. 08ݸ,W)kQ :]lQ$HLnգ3jǴ;?1Y"w$D;jU){59{gbs1 3lti_BG LHP Z:$jwZPCc[Q1.7\+zs@)$>J,97ʈWnHahc_~>ێ2' r^QuǮwZCCBhc(7dŨe}k詞TL1j[7b_wu r@l5?wRvIY<1Og?u%N`rbhG]j-^ ) ;H TkpCNXOˑHLhaYH~mM/5lΉÃ S^-tniY@(nc"c[]v?DI?79e[DɆ}W2H,]$55HxtwNz(nE7\#:|u(f.໠YlZ1rKi, 搧-:r8vq}$:uxyMYN:7 Ct\6Ohv9܇NaO.D^C&'oxxow"7AVU 3aW<FFR*&w2Jo.V;/zP;|#7`)?́ sp[,R bfۃ1 -goL/?7ikkvg-.!Rf/ _&r* tߊ7b*'.J=ח݅74{=lG)pM(>:!U/Pa?Z'MG)sdC}\6y>1`WtzL8M "֙_cS곘SzVFǼdc~ka`aT&4=Ԇ'w.\hwb(3V'!ʼnB*:ΌQW4ȏnHat# `"&d3=w#mH,qe" \-$7^O԰UXdaוB0ql1e$^͛PiIp  ?%K qOb,DŽcll][:Q\o-u}E[z @hZ(@etlPƥsp5x EWxhuҡYYsP2rKbTu ?$|TQZ = xs/e=abj@!b@eon%բ?F>xaY,.kڬWp2jf"qҙc$=08֢#-ݚWHKZr1TvÂZ6l7@Vgz'LF5>6`˿Y\~nO DWYRX?m=ʨD̝Y , E1Q}nnuM8~]aaPo VCѽ8HP-F-pT}sfhDݗOH=4p.bocT Ί(t[mSBR!f}v7? ӥ}#Y^*F|#C^jod{VwᬶʺNjܸ3UPz1)"; %f7j~%bB#9}TGcDnZ)_6?I5[o4?Kx @٭Sݼ:}#2[3t_MVsX9=tcG[&M Τ8B1H6)o^HIi&in7nPiSFȝn}7aKKk)@oȟ4%s Vp˓g[3W;Z])fWx9 |7Fjm eHW?C8 q=Y4{5c]ENb7l($BkBc(xeY^Ey:rG/L3NF96eeR#OgZQfߢ,+ao1I(byrW</R)sH/ kOԸׂؘ P9+J+P̺Fx|. SWbA4_ݶ~SLBWfJUV8zNN }yGܒ״PKo謪en wfjP4I퓀k͉%|Z%`% $AGu. iwM4dD=R dXzt\SWm3PV4.xݼ 76x} S^?˺f `#`}{~7JmD:MP._WBn4R$'ϏQ!hc]诗 Bh)aށ_!'Sv$VNhb 0~fBv!MMqpi|Z=ľQoN…rw&Bvf0{XAPcoY X,HݢZpή fFHUZtN6,/j}JP>PGZJg"}sh\tA cÀ'#cU2AZ{<;M`2{ҵ~y=+AWς_Ӓ>73?|bY_@29T"%(a9:.c8&{5̚N Uz/0jscA;cr㋱7 lr!tZXfE5Z*!NEXPwj$l @iAH}/cV;xot (o|U 5DӇL0s.) ~"֦]`@nĵ~޹l1ɲLVe!1׶FsMxk 5Y1V ]Ö *o*$n6T,d_L%^xL_¯=%yrnB1l/#UU;LE;F\tyD0;C#*?Б@,RJvmZTXQelYCڻG宿H/>8JAr=)h׌`*44Q8ذU㌷FN/bZYG@{]rhz3PKdR._K NKY\3bFalhdlI oNTQA8X6: >3jc$W.%8T^׌Ӏ>+#%cfhgq|j|㿵5vFb0w0 dB+9N# 'k,fa4a, sERIp`O0GEm(PrH`9q-2wzYa;(0CPԜǁ0`e \՜  )> ,^yu F`CbK Cז3)8x-1!):vaHji*kϿUPRs %'.5~!3_t7157NM)9v@P6ƞO,i(IVpĥB NNU7>HŶXrqxeEC6mQӞI]\F ̬Ʉ{Y0Dl %&DoofLR=b+ Ŀ1Qg*mƦC&eR%cVKT;Oֈpmpߡ;{NV@h +%J)[r!U_=\=EA(٘d`3@:Tb쨘qEs)=&orxI~&)vxgeҝ Mx0 g{3SzS% gTLǃY]ČV68mWDJP;zY= sg n*]z7ޞĘ+XsPpi[Op,Pb#qYS}|z{YrcpVD1x49!5싚X[X!F2M Ut&i־Zoe&muL1[|v؋_-#'cq2/5}g`R c7>7ʀNcҦ [C2c7_pA6:I={E7@ODI\" K9T%3e, ѐ5FcuNMZؽw…ڋ=ȈIAWx2ԱtmM1eeLl>Q uO$_f>m1l0EOt+N@:W5їOY">x =uq:YKێqnL\zzT&l#BwJT4em7qc١agn[0vp[ϚBCg-f<|{sGm=gTz[}f-qO\|baYoB`"2[,ڈ-)N'WM!͍6Z3) ځyV†an0IwfG0+S2T%dꝢϙ@ č&˞F c1E7`n8q2fr;T++)cbQ݈ S/6<ϙ%*#ĴaKԚ؉r26>p%9d=gM:o4j|~kQa鶥azOMoU2UUTh٦x:.{H/"0[/_x=TVc}&tmdsAIW"sq;ע'dS~Jx&\[ 8>[{Z?;w*a`w,Ou9uup_Bd7Ce-jIXoIA,s_Cu-Iw_P`H*m|Sd\Tel3%3=t;al@.L"*|?ڄi" F3׍ALeS<ҨTn{?ޡr&yzHDoy pNN‡ {1@YC{ՅXvGaٱk5 Z ኋ&LuT4v҇VUabӗxK7+wп}J8q`WxFTs[yA(Dތ.s̻o-g-sc>-#[eNzlL+wU 1MJ$EydEkCԈaeL& 6愯ָBiGA!)+ܴQYy^5G˔BMdZg3wcp 'tWEMNZF̓Mӥ( Y]Ɏ-x"̢OX׹ 9jI{iTSRT]44j{+h( {dT_>+zڬBmf'GemnS\rE{V) vmg uG|B 6vi | ,7mX"A`c;!S^ 7+VkEP̣2U%3eL9}dnʉh n1÷ X~k璝{h ~gѼ^,p%G.JK ǐm`-NCݍPU~]=[H7]gzh6U>ިbuSxŬǐUd 7GADܯF-~(*= oI ;5ŗ@f]җ$gդ=șٜETgY6z);lYF1E"Ifhāđ쵰o +4Wp0_Oćq+|vw򃔿,VL:Z6L>)2~*@DhSwB=FL9 e`4Wۭ*13wP 6Hzc1"•<6$}oec M%hhQM2g:2NaCOSY|o6+l^.Z66yv*u u>[-C| egU /MV'.&^uC2ͱ\^RЅf+AImMnH N`߾ ĞtT-umFXh0WP=Ro 7`hQց叕YQO_0\ܾP&ZF@?t=ʈͭdg&Ecqy1,Lq4W RwhhsAH?k3 ̞Di(@[мVw{.IЏ0$ N+E_FQGp١SsF`!m5zf LCm9J'$In)*;~e-~ uktW'y:h.gQ"|T+]T_=ijnf7?}%0xG:c>؝ʚ:WDXssgwPX 6>>*i #JQM>oT>1V B~eca{3FA iyU?PZ>b`y `֐jW' Nxx391e9Td́mTRRe?Ud;"Fv3W|4cʁtnbH??e5=ry,9 R,bnS \ΜxJ=ir#hD?!gL.!3LEoKgEZeLqY3E9w^7t6?Q@yQ&h:w諉xWWJj=fIh~ʸ-sʱ>9"(IH$TI@'[i qFLk7g55|+V2:[@rv%.:kmVQAjܦPӪ}Hk͗[RGV1bD.7ב6#jTX'j·qy n?!Rb?l!1S YDSw'B*(3tM|`ɏB2g]S{Mdrich_!0߯ŴPQC3$-( i3gug,qY/Ī $DKٲ:Oq 4M^UMolN<(͏T6 (e7P"ʹ8VG(Oat(VՇ*/`wL">:02J1Y:,^_'ޭkZp CaT"N};ʣQ&.vƁX.%1?SZzJE_S?0:Spv-y͎|1 ̆VLީ\gRU\:b&ӈZMg{\LMKcӱa2{ED%D?ep@7 ڛ| ]6l[y_"s9b(|^|ԃt{(֝,q-\ xp3~J{dE}AFEpe(hJ<7|a(CL;tCڑA3OY=ӧ׎ڀ3oQglP9c؇Iwk9OnUvnȿp (!̥Oy{zS 掶vImUckZٯMšpiN*ӣ+ڬ¤{ҌDLtfyvPBE3wQ#g-7ܟ-X k"E"%:m==Js$( j?t( ?Qu>b Iv]uڹ5q~M^>Ni4J4ٴT9+W Mצu&  a\}J;b#-~ #^#\Nj]ssbh_*4$Io/hԈ[,GG û0NX%/)(u3t*Xa _ArK)dߏy"eV dܿFofˣm%t;Ki w4۪|o]V o{T89Oچرȫm/p5Hx&BewB@kzܓO%P94AЌD{*9MOE%ON; Ëwe鵽d'T:}l=7V'<-026JXdeU[ah%&X/%L̚$l&[$vON ڦ*0ʻ/c:vipX1n̍ECA<5R!6T$_pU9AjoHVK^!29(,يyJueMnՋ-ԏ ٿ;Uv[}R-/ y;A8yW+ Da oG*Ne٧Y/h$E1N2?FrOZ.Edt+C]4\b,SKAe ,OAЀ+~E7*ĔVCvdB,x,˔Hv\8v(KAX0"#(,.nV?8z sU&P1A1*䐎 +$HObUKF>5Z6TI2gv"lO%ŘukE`ɸ Gb7$;!BgPjSd-lx47dML0 ˃~$oA0!f7'Aձ֟ H|Ry;pԤiSSC2Qg}PD-ٽP"ۅ^4Kj`Udw&e*ߒx[cOGXC]k3s٬=gUv^[]N7QWg\`eҙ_[IHe.V_ mj^9+:(<|O iiQ `*n]YWRϗH5wARCai,`P$߼ _)@PPP,.קRƫVŏ7ái!H;hu*5@ JyC #NZi-Z3)ͤ ] 8 wJD)PHїXGmB>Ÿ? GWk*Ra҈v*!1SH=̂m? _AgVn %[WXVֲ)+BIŝQuy63duvվ^︝f6\ML; Vt;9ňJJIaM'Gub"ƵH^_yQtqpiB79veDeʂN Z_IokK0[x 6([k%m8E&rKx?1qQ'@Ux3Jx,CLx(g R >{LL*SՉUXl9x1 MT#[9_P0_P&BV˄ܳ}ňM%Blۥ'}4w7h!Ȓum.[w|ˇ2KpNR&)lV%%9?!5rk/Ju4 ZX?v~e)~ݮѠO>|y,#W^2CX\$JyƋLlTQ1j 3kZ4 Ui}k ThpňD)M0:,w׏_XPB% X|d6DȂ|}r>T3M 7C+dW56rhD۔9_[Uw׷z%5u& ;ѓQ==Ia7h`SYcu~|5Lm fv{fq$ɸuw<ҋpG?sCCgq2to Gn4Q4xOE8o̿]#\- Ჺ^6 e*E=qCMddf rq9/5s ڊnģ c2zof aN~$= Mhhev:vCy@*. :xPSQ[IIk;1wOS2)}7Qsm k΂$yh9ѽYyNĝS vx@{~룂|; 1k),Pk̬a̼&4::Ɋ#?= ''&)i7E΋Ύgz!Jl. }&r4s=\Ua' } ( m35? lCDŽWca48Dh .ٓ0aVXRR(tMIإfO GJ's h=%[ d惑UYTQ0 "R4M@Ҋ`u/@QTOE׏64`E_Zk*"13sL*ÿҙsL$W )S$cC@OM .Q^HɔW_ɼ"AZZ< ; , *ɺ_jK[T^ur1bs| h7pQiL1767Hyݯ /]i46ރ6!'Guk{'"Q65_d?Ӏ%`Ge?%|󜽽pF鿋bUU_.{C{H ,mK>wcgQ\ =xlloh/ëB\Ts8f# {=-A<~t9aE%RkR"9CQPE ,F_7? OQMm1H]һL />C>-,a'b9w8Bñb#Jf&%rdO2uF:qSUOW'<9hX FZʢ3 Pu%c tZ]|Cӏy\ՠg";~a][vkSHG28SN+;c領c}ץXkۢw2ȑa*;-ld$97- z(6*ukk01W C # $x_nq~of2̊g 0{2"uǟxكI3.?&ypcRVzi-W#&c5fdN||gӄ 5R<' i;7^x;PcUr_:dk9TUER ~T=I]i蛡V]OԋַeZ(}k] _`xԣ 3?k jl`  uN6O5GTe0PqȤQ0 G!KLp1Q~)$a7WE\x(x N`ne4 Rj$rCK&>.7R:p8޾أ 7PX+Uɠ"¡ Qr{m oI3Ek G)GU9+q-)t;lAOkW1yqt>ɐU AHUvL6_Hb6n?qY p̌YcDfL95BuMf").n_x(i{w|/-ِ5(ϓ=KIYޑ{p?˚} a!g1UcGAG J;*.`ED6gy`/LépD1zhCڑlj#toEԄ*uL$@)(ٓ"A~x&%NE0O3'$96IhX0y`P/YhgE2>tm gX6H>O▉"~t1)juS< o QD:ԞMq%}MUNZ)3# ZQouM8Ch1U\nc5r92Wv,MN 4<)9}M\*AnVGY6 ^JA냓8y%Vޏ~nH ϝ2(Mx!k.^pQiq9zʙ|[!&6;o.>=d^i> OƘoXѱ$n;nb`Z9ݾ!gu=yiZ<[ xaG [췭Y޴ b{yɀn'xyyZ2a9Op2t113aO~ ?%v?nzYu胋l8_\<~3Њaab:>PǼp)5`~Rҫ#ư,cLƲt95?Yhԃ 00t~CԍMmNຮz.m9 <`7+̞Ti4>TFBw:)NV`rCXi8.Tk7 "-$;mNBi(a V]t;^OSƦQdcO3+D6F(0gQv:H{.?ᚵU}҈qvGw] f.qT 7(GC(-旯v܂ckD(/F&Ɇ#@u}+5LoiE 3IhP蠧'+M g첨 dt'l^(.Ow";/LEL=U,gDf#C*6N E3 ȘWZs26Fܨ2א [ܮ:uVC>Bh> c!3(OW N1Yp~ք{^*gPژuF9 8R6zjdbEHx('%>AwMǹ)HWN_?CT4onb [)GyUz Ɂ3rF(Ym)K3h]P8/)jj@\C<94cO'k)zh 6:mZ^|17D7(wJrCܴP4Sd%A֥=8?\;Q_8ϩ01mi`"Jg;~8TE {Ыb"uD6ٙ'/:Me9`7<9(M,Qy}qk6=c6tU.]y258?b 4oUOixJw!N2@0/4(t/-nO\chuWQFN40 YP1C=^DBv&yIdWlnWhdK$ 7{pǴ4ŭ//ڿwL#O_֡Nq䯎`cִj9UZl "*|5By*X:z׿iFuc4@82@4>@ZDÆ>qa 43ҥڐ2yBTMti>ApZf8ȃ~ 온ҀϤͳJ%jqkN=/L*k-*IeEM4U]1hZ(𔊟p@.'|ZR۳&Π@,B  *nc\e0DFpJG*-]潾R4jڊ2T-͵;Wk l\_/Uw8ۗ2&/)do{խmhNjf>J؟xn ~15515r ϖP4 _"+d̩{e6MMy&ϜVZXnɐkw9g/QIn`ٸ E_i ]ČW K;`ԊP.=m^>?oĔ\Lh-aH7 ϒQJJVrף8;HqybEؐj^Oèbž\ma6xP: kw?GpF@`/rL}K0y>ÒgjV~ u{KwӺ3se}˓g/-Ph,}l&`#ikjd`v 1vqz%Eu䬘*!X}tu>7#Ǹ\YJlWY# ـ>NjrHP[_OA!Y}>rmlEL=8JL%g0֍}ikCybߗHړpO8>g=vEpGQ=+a]uk;o},uP$j6ClE34w8]W(/@%GA"yJzY\-"<Pzk0 ptO|JABxգTԼ yv+H ,>=<;k j&H葳;^MmZ=@)0I8?Dz#β .7[# 7}UXj(M;LwɎ{A٬gܟM-r%nk+*g%oMzrh0wm0˹s {؀9Be_0+zgEFٱRk DIERrƱ5xBh)REV益vJfr;sFFshJ̸syQHLS-H az#iSDձԞ5H|uuQN'ݴ<xqaJ7ƞzeV!^$bT"V' w=lmrmuTi\'U}#z$~3",ΐe(̹B}uHԐE(X`JrdL͠Z]&~#q`N'iBwAm`Pa &@,h7^@fe!NQhgR:A6`#4,B5zc-%^8QF0C1H̤۴xOKZ9VMN*~Y/-Xz{ WQE7%gB2z ljw? )weԀcn#jV9v_'<\ j MvٺJ7+م@]RHd3@KiהșZͥt7}wf3&ɒ1˺ ϛQii~YCiѤW!v$˶ndթ#T[?:+8\քP:4T  >[/N~ev-/AeaP!) YZh2}PtZM@  M72ĭ83Tcnu#/THs z FT!-*ƌPZݺ!ITp!<Ǡ3+1o~Q{ |ȷ ]]-V^Dd*/DYeχ-38e@LbȻHWS4k%jquNS,p؛Om봧3T+'K9ɶ؛w Q A:e6[–zQç񥶝v\϶㑙tΠrA#lWzkD*/a^t9 {Y|]Xj\޽n5@դʺGƐWwOZBȺ wj<~?\3x0#m(Itvox*q$iRVj$/ﮔ]J`w2FC{1+Cy0ON}ϧM#1]е)s=TMƔ .}@,HEU""L!2#;[i/"PR>)Q5iepA\GK*jdQ&nTmT/,<6P8<#p 9Y^,g]wðsقxܳAQY|7g0x]ږ(8q#h]ߵr?U+_yjNNx.EgwKlB[6>}gD}t) ##?p+hp"lq R*w$,,ʄpSAS /)KnR vB'I|sQFOxL 铏>H˃Rn$;S۳οʕڧ-=bM .]oYZP+ojT MqǕzK' [1@6cuODs̽R|~c@r+F_M$"1WYL vΰLbY mZO4HI5,UV,XSrEY^-X<G\{m,Io;\ F0(VE6g )dyd."v yŘL3~6mcSnܵ?̭/W"VI ps@ڞ 4/M[~1~'#f&?V[*S[!f=NuPUժ B?%T6b.װ}VaGߠ3j\ﶖ|fUkUf͇Dg71rY'b;Z]w/뵗l_ɕa34l;tgNx42tQb_QiUbaznCm$4V4[ìr!6 %20uܒ 'dN]ԎUÔ2&iC@]8nnrjj9t><€tPʛ[~}oyK)˃PrpM[4k=0草=ei/6_rCe>Ы(i 3/eSy-oS e`J 39!k$RZ#9'RcW LwqFA֍M Έ" ]x_3 zTWFLpe+8a!-ңid&d'O dX)%2.Q-A Ȅo#jS`Ir]Y<41+_~SϭS1F!"ȭ-lt ;Ya&{ Wa uOky^~4E|ѳöDL18jq.j]dOVۥ 51QD[H˿H)ZNbJ7V];?NUf!ŭVqm\d}&˱`SݎTI *|"kulr٨ d@"[Cjϸ _hԨ f \ao) 9v[\~=z/07H-TA/j|Ck<,,z&.U7q<+b%CMn0NZ>C"8 7>R]_RfXGqp,y[`  ( c? H#{^.(yR67If?)t'9w 㹋) @o=tĵ n-dyz{O 5|H L! wRp^,Κ_{Ĥ-T1Vf+w`+;u}E7Ӧ? qh7W;6{fUs(5avϥ"Bv >^_P.J6Dr m1{1ʺ!ZH!4f-0fԖPݍv/ T6ښDvc&;]nksOw)ϪXVA=KrL&?7'Uemҹe]LmIoeC틇̵\UΫ}T=s\eM΃Uf oL̊Ȣp<żS=[ RjX&'e۷)~5[})Pzqkŏ'כ%nXz7,Nyud9u8`i?>nʐ#3]YM&ck%"J:2:S%$=By't+U咮&JaT -!!: "jj^&F"0L1Xuܥ9&U.|<!>ꑇeX^ZyO$-.oBM0Q@Κ?5j{?D՞?'k8]O\輾V4H1?6 T/#N|^hZ58 6Β s^A|l\geOPܚ5ԴLk)w,r? :dƣ[qh:(A\5Wvk8[,v¼ Fۧ۷F1b^ a.tuI^8р{a헺$URe9E,\:9\FfrUw4(mDIض"h@ <7V O~h% Yq:"mUu?иҋHd]"nl.q^aOcm tSF-Gb6;Y7zg;iM#%n4~jnXY)rKב 4p5^ m8Š&F0LpFf9>*Až(MD4 ۺrM AXlWuerp V.V8s1rs|XQNJRY)3JL9.7x` J 8-HY2uj aCNs: ڛճ02vro7'AmSG6J d-̔(v;Sf ٔ+}뱐O!^:׵ҳG>ό:OGЮ*iL!zY/qr!-Jch+'s0gm{3*Y7cGw.DsV/'ޒkyF&ܢtn/!Kšq!Gx[}{8MNK^?j~V[/iyV+Q0]<;'&Tu+k.7mƘӃAeכ.?4t~CC}-:C,3Hƴ=:QjAy铅('wA@%s!+r ᨆXJ,xU&$Ь(['wwJGr 㵰N4mT3 Ɩ| W=ހgڒXy>i|&tE٬4Ƹ<]/PësdbA$M1L0+% (C*5n:M i,0Kc.=C.mĈtaL5kU6VBZCLSlnnoSo;)OO(yux |I%i+P*op}?qκ+2:u_&[7GO5Go܁3J5fiGiѫ *)L?<_]iF&K.jL*?؟\PMߣLeTD;)*yJTSljN te\i"ыd}e8VB?/RVHGXL#67bEYE~s꧰<0. ѲQBNbGo '#miH:&=J1/}O>pT^26"{lJ}Ci *Pr=ޚ/n7dwд#ַ 9/.Oc\4{¥RdzeG(Vբ~Df s HFA1l7ۿ?lnd a\ ۭѦHٕCk|;tgD^X$?ucʵ̠E1Zt" d/`5l: W̱Xhq*nN"%PQ[wp/UFqʺOJi%6͗\LM eƅzj6ꇓ*Қ8r>x3b 4:|ўc栒Kˤ*f4V`2ang+ /:0ch"WkRgeE[ mb,b! BE tXw oYMlvl+2/?Бh~"*A]X6L*Y䁧n\W w絟P Pu}dR*D5p)_Pd-wIH!BJ.z]g.cf.c^̐JA_5e6i$7 DP^yޔ_4b' dT7{h.cttzkiV<.ƨRHyŧoh.Uyp6+9whS -`nrF#&.4g(wWW+Mkӡ(Mǁ(CTjsAX4+j{fym}*Z ! X?wb砑ۦAځ)@^Or"Ibd;Wz0b[ DM?#--wi~Y'._Q%F9EGɏVX]gExůQzZ-A Fkr[#xfY)i,\c Pt+0;/5畍4C(e-lKJ9j2-_%{BmPR*^<|Q'[09yb,ެ/()2X ZIoJinx$.2{lnYk!dL@8є o:uƚ{z>Ꙕ,Jzxb%+!w5h`=E]\AfjgP?@>m2$$7>-9Q]-7gbygܓbُ9a ega|7q$O&g@m5)D<`mFxRg+VS.9prhk7%>9tJ3 44YVE\{C0QL<jMꮨ1 K&HzZ˽C@lC&@kXx:#p2 9YCE:H*PUH(ũAW!WЙL)W(CʼEe"B6 j'ZT ӨZ=pU:K+y,IWɖ,^43 XmU~h/(MICY5Kr~d6AhZiok(A[bWBp4*M.zf E;[O5ȃW;FlX@ .&9b'b8'a=X\gYuh-u#q4Sijh)mfQS`5q?4 ?sZJ[3fW|³!IxbEPE&kavq뛠1^,f=i."Jf6rzzE@ܩ[n x]<dn-%a p/ H e]0Uĕra$@A,ҸM KD@5k&JDDM/"ԁ wPdsAB /%-$N`Om$ %/4/GHIx_[3Mp)9\] ,A căd aL'A ElP;._,jSа^WC{IzG0GU7狤mHk7)>߂8C/ A)(ݍk5+l,fM9Z5w73/<6#}y"k|@t3he[Z277XH`u=p[8\Qxqd!#K~_op#(BPm%tŧ#彔:$B"9 |N? 2 A0#P v+؋;U"lZ6%i.$B-qMw̴Y<;V4>VI(z=,n@a!?]߉pFBV\seܟW\ڂw\;ҩ^f;G)E `$Hb&n?40PyM@}(\ٍDx(RssTw`=7E36k4g sq4slh泺*AMwߪg.Il ٫Hk$"}&3-v !x3]UlI3YJl22~lKa0?M,L9Ul# m;gL}IW}OzoZ;/9C]bR qQY HsRrfOŽEl*̐(fSdk Xd/j8{Ygel 'ȿzhPu\t2ZuHKdJT}+[eb^%ô[T7k~3ih:KrVgW#K&2R(hu cE>yR-v,~dɔ1/P*h)U&^ogWKTU+2fhmIނ={6@_K,/&-&*P.>)َΌw|u`h,$PjR~!C #l)x7BjD8(@8-7/m/<oAK@l1$SȨ_GZAk' p $6"cF*eacu̒$R{eıJQY~ 8 ZNՋ#;CR3jO\gĀFKGS!O_jH=XH>:S<jiF}Yӌax}EN2 AMw?s+ :2P!CD\]1"YOm@{T"l1o-bT8S;'VZ.wIJ".uvt&Q(ٯe/_(_ȳ>n} 46GYXR; 6j8 Yײōȹow8DrEҋl286hQgQYq#L"YSV"P~lqt8x!⾁F,v! Y- T`JP6/Tr-iGDd^U4n#/59_}2kBAD/8sN~{ZHek80*5U\^X+Ƿ[2u*8D(.؋'3%;m$Mq9jܛv8$R/djI\ `My)"/"xdsrXю&!ksШ{-$+UjA=xO2ljF#6u%dVm­OCw4& Hl+mus‥QE\фw]S׫jTH_2N\a4~7reEFĐuLCl`iPڋ!u'!ӘYӣ{}n9 =x&/-հ)8MQdzԘvm}~[߰Ac&YBw 1|cM#mdJusY,2ZaDG}$ȑZPrjG6:(0)'ta FZLS*pȏonco?0/ ]5-Ze?ܞF-{͓XKY0Ď ECH]7<,I6&llQn*z|gj0 "N #.T`ۖ-^Q6,,dOB<hupf3gZxÖ+*#Hv )8S s EhT'ᑉ]Vtԟ>o^MO ᳜MWww|);<:/Y51j1Q"G} 0P\J4 ё˳aFZ# jinF;͡?9'Mf-.؀/FHTR1[:͢+iχ]0}z{1iKOKɬnlAOA%7vf}_$Y*KbMTN*ZFqBn )'ūoZ0b`SZ;;Y=6`>%s&c(:R&.P-)b nB7G\$XV6̘l1۫ȩ,d͋z!@Cj(Z!BʺlBsVAxuCH)lRt}K@~HUȀ lVcHn rڮ1L%x&;UL(3#Cf4.)m٪Bzӯ,p}lHȭ!ZD ?e{u?;F]^r.gěn.M%cW/QR~ljCPϽgVp5(S`Usy{{4>axE @Aa$PYūTHGJI` ږ Aw(YqLEY57eYE~{4یi"/܆u~%=oq{ .%mpe0Oh]Fll+fAVЉvdٺ{;n| | 5wh+D 6=!79A9C@SG?Nׯⵌ)Ș&oQ߼D_2ϮDŽ EjRZr%D\7]kkÏ͌rfPen|kvɠR:-.a839*.t]C"׿'(qDDQ= `3Yݢnlځ $t=ɩz+浘I!S!귥^"ʊ𢒁]WT_om 4.AK F ;px~9ov qn EJnZ.\D=1*ũs=5W]Swn[)>rEG<f#@ aPS8 v&>d)7 U/-}_I/~W>W Olۏ&qd'ЇxϦ"u(?R#y7(y#ߡHr.گ&1VEOɮU! 1|jLuwjⶃ0fA75%ZIg s)ޭP[qj+Bn6Ħl*6zm)cQ3&Z#?g5cW>Mޜr&A0Ԗչi"T1B ,w"FSV= n$Q^Q:9_w,r{#rQ%+sa<-+m'Aש8aƎZ Pl Cc~̳r E|!-F;?NC(EuVPtA{ςrCsWus4ƕ+o10 0ͪ,o>C1i-^P`w益M#{§Q{tyv ̭NQ~C>(V0>!tU2]W X_za'e>H/tI5)8EUr=T# Oύ006MM\p} c-zSʹ&z؆yYHҖ6>[/ϓ?}e" *@^isҙCpϛ cS'(OlyslLkKP,6 +(C DS5Nѩܒ̞~4(Liv\Prk;JZ$`% &#m.W3g>[G_@œ.z&\nG+zsTJJj3S, tIz|o2Ƅ(x8IR黄^-XYRyEa9{nWI KK%?$НWq0bW 8^75~Q_>JCc™2vhYEuɚ|BgE"M)XvWn jaߔMK6J -4W%Bf{򕆵-y(+R3i^yf߉YTpw牅B /f4ʾ/ѨolQW yg+j -츅z:̫H& Qg4zMVҋc|Q iڨKwZ J8W%*4W;FgOhjo 8G(CM|zޥiaFR):!yy5gn@#F?')ȎdW\cqĊj'7C]A~ W?EӅ[奕;:{h'zSR"H j $ijXg>9|$m+%8{FDw{ֲB J9Zr;zT>ZL?a%2t٧Sz[׮~ORq I}I) "ʚ`. #NlNp̋uTC!+j@jݜ ]AOivnZ`3?dxH!lil(W9naPqee' U/pՁϤ &Ur!*綺]}I MzZkK;LW P4MI#0O%ɿPcY.?<wjA=,ae@&U iHO."xզ2TheL"kT\dH ,e.&#͆8̉ efZO+i^[^v[~[732ΐCZG8@瞈W][# T/Ϸ4Jo !*"!JG=Mc `&qDn .(b_/ȹim&S'D>VNF =aqWHôɰ~#G;Kiw>2 ,p>0/;נ3U$g itЙZez(sE]G>&rҕ^Wdlp)XiWz7s+[@vq5YνO1]$0Nj(v5v3򎓲>[*R,jj3K$nǝNԊs|;B@diG{B9sӥu(6EקDv/D8oNmEjj!mzԃ\;B1Lp8? 9ƌvfeS_v{nPvWvf¯ތ;9igePS/Bkz{y{Zs+8bKt[-NGY  ޷mEw_;m($YXopapaER&7BbS*=TB{G2&fҋ*xAI)$`?oS~}iA+.d U4O ZT61%~^4O"G#"2{15`n!*I0cQ^) lCF`sкASʞk +1*0O,2 `4ʭ>)1"pڛA`) Kcß6sRSa=j8NF$ZmHg ӲSBXgZqO\w7c95%day1֦|L6]EGsYj5ϖЩ؀ SHQ?HB3Ic¯J"E 5(.iTO򕆡X$ф23ثz;%#oz24i'mqc%=VFWIBq`.', 9{Fq0z-=!47R{qtD1C4_boX͛'$.wwW! %:IA%jlmu~E"= Jؽ虬nΉM9ERSt-߲ƭmyFAנ39Dʯ)3+:&T})ڌRDo|3Z){ fC忒Kh h_-XP_QsCYfuL "x"/9كqp0ם* ! T?0iEVyd4arJ k /'_S9\( =T}X0 Ofx8̗Jh (Oz$ 8< KK0sG4S*=*ϧ59ҍjm[QN41;xߛːcp3әBB+:J(KF>T[ZVp[,aɒ3EK"?.[vD'o<6vOlPgFlb/*j9d x#ڐ 3]>Ԕv~ VhqaA-Rk/1 mW6}4jF M2_b;,Z9qb{F<>i?ĩMpm$ `S^ B=$ޠLK#Y7ޡkBNi[T8Prs$hN5' K\Tkˏh@^}S{22ԸCx{{#p IJ&\P$PM|Ljfwǜ牔YR3aQ A"ZF}LơoL:od$½A hM-NP8P#k'; z7y1^ϹQ(אTYe *CN\4U3TdQ+Cy|t BF?dXNbJ"ZTO.$wfTV\ZJ\2Vl~(OtWexcLoBꘝ Zm*։hpoYFCVfEgaoJDЉDY8tX@B8 QVW|usnr~$w1| 1y4a\Zfys |/&. U Mz%k & YxwZqL OlG{v+Te2d$ukMaRsJ -}*&HGQJ=HМ3KnTا^7lJeެߊ4k.8 Tml$6KF nI&=^o-dƂr}0{vF'[j k!y[Mcen$3XtgT'w9|Fh7rJfX0PjO5oF77l;\)UzRgiE\x[l-Bc̋":N8pwoVF>CrPȘ)g<%wjl謓:vE-Y^)uðI s]\ֿҚLv:KdR[}ApIf)ڷ:m]Q,No]e_DҞ%O$yzn8 ޖG*~-hز Fv$&Kq؏ң0Λku8vII#U}Fc*9`Vnw~$Zˀ}\$iOνv;Z=dÈȺ.-?8SSv Z\wX _c6*!zVi X) &XdeКydתy xuj{Aycj^eM:ɲY]_ v R`9r8pg5FhKl`1AJJN=1ą8"Z:8YK>!Լ>.,n_BZrU ?/ʷy7wG8#tS ^"&•jqYХA[ ၈6AY0tR H[ڿMEx7܇@ n0W& k.4aDqȵ6XbuV𠻴דkU}D!cB#BIƺJLPs d^j> ](GHUK묞~7Dg\%%X;0zwp6==ozo#<0^6=Mɋ(#;G˱TyUfdX5;Ǣ$S38N]h.eګʀv:J%[j7jmEh+MC1 h.gbxc%=)M#tM.|9r8/#!C媈V͈"fj\# %+#s=4(Vm~g[_OR쬢U(nƇG9,V,Ǚi.Tmĝ#N%iD G.jGF]PH l"} WI>" L՞Amjdd[W9`NxB/]X?QQ@h@$[ i%sj=VVrvQL]On5RבF=(k4{3u e+SR= NC71`Yh5J%K%J9%d2xZ"Qʌ'e+]p,r2>~w0̻ܕj/DZjoe?O5dy\+A9/Ki [Wkz|×HUCaܿ!) +^i c(=#nG~ T7 ;+K3!Sխ4{ѝd EWpw w km5bz@2 jJ#lILB@NiAwo`VT3-Fs\FeyC);{ k_VJ9/еcODxcO4]fةYs>_LG20TCq1GL*~ۑMv7F[p6! *Mwӥ|f5 򫎣<)['=EEm0 e'YW媭ֆrzܖ3yO_oVE")Һ*Y[, QLѿS EQ u"*W@pB-LqxEs]?ҬTY~6Rz!{h2Px| X{h4@L^Mq6 #@F0 r79|}ӊgIi"csT@,qڈ2zAf;ag"? & ՈH(vmȥƔ_m_*Mr%l` \=VmfR⪟⊉ /km5 XCdER I/W5'aVOFDq"^~4 6z7h\By,y/F3V&tCQBh EdtJ1Q3{XPL~:.2 rǵ&*moEpLnvDK__eíƉՆ: L_̅h ڜ``y EgC˜egt̰(*i؁g =BhSP9'6;iQbc5 N1u$=^ 0S>~nHփ4M"I氵8E ѣѐ9b} 2Vw/Չ*V,c}!B;#=R,=vbeBWt&rOљ脘+y/ I'IW|?12$ioa ze-NY0:Kcb*Ӊy}(CΉ {XrPYdUb7rPAsoG)ğKmHXgQf)I 3kw^.[7+EE]GTlAI ǒhE1͛gi.B Y+{QA=A]"*9H71G5vi0*9jc畍E\唁Z$KjDPylӖAZ$@7|sZ"؇%elDh'Vx!|(+Vl6cZ)R|ssonj}L&/5B2F1gdC+H/N~ KDIc2p2RB$=b|hIOst֘zBׅb~ǢpmnFHh{`j|K_ڊ,mӴܓhƲR>@O&~g%y%BTL,ߤg2z@P)#l3ʲNmtMƎҵ1:x"4J}&dli$&ֿ3W[L[Bg<7\m1aiت0xHg kqzoP{{5V̵4]7 sWrIQ !kZlcjCRɃ Ӧ;QiѺx5.RYc9 ޡ_,.yY8G&_7k)᪨ !]ť̴h (5skbRx Z ]*4|@gÔЏT>Q=Z4=̈j_:S7Wk:Y}zRIh/JkUR|uY AO뫑vsIȏgMbѺl7(t+KaBe`FxFGf˾Ux$.:v8dB陡 ~X "UW0E o R_$!bz=?٬ L\ z߅ɹ(EcM s:4A-ey>^w:3]CPs gmagnhkh6U6x#ҊcԠu۠f*e." nPjZ3z_o[YSf zg8"i]Ez{<0QxJej}~ f\@?|Z<*ooaGjw]PۻƙZJPBuP}@9~t\0Uf(p>[Y}@b I6ZMY-f U ~SM~r<.2){#fM;@^CJ+lO@O5G!͝WR7MfEX3+wD‰ÄL qZ Ku{#\JDxѪIRmaȒ q5R1Oy l.x.zazwPk$K;|j]ɾ2{Q@$uNq Ļd[趐>xY&/D|-ߒ͜U-47^Kq}Tr&'^_&`qe 6 ;qaR>EZExr'?]f2VHXiM<8F<'t}Ol-ƾ`{t[_xq<.ТzAox%?s'E|͈R_HhF;L?GMQʖJl u]nؗbgU) z4kԄ`Myf| Lb׷};- tcE (-)[\a,) w f< LV6r5*_܃(;ط"|68vr"Myy;ӎhG@HO| |/zmȠƽٽnQ_%'L>۵2VLak)tܽ"XhJ#QQp0C!Թ`e#[Ơm[1W/=,9R:.'iKh V) ?vm.!n,-,NM$-AZVVikȄ>gn@+3M&%(.-dBcobvReh#v }*+LuHӃ}o*`:kt P;J[́9N> {GZ!(?8ė6"\X"ZP͸䁮lOǷT{qnc^?6Jf Ŝ/6(*2RYbmHg9$ivz.YGޙ>7Fs{454w" Vy'VA畝~r]j -?E ƮT]%C}aArX˷E=IQjXhANJˮ*OwE?sݾD{ptfEq9{Y͵hdG[PXBm("ʐь~|o*Βzr[xijYLvGepҷYJ?]sYmlb7YI0;.I\a%Jτ;ymeMD)B /u7P&lKG3 0./J2@Brчzu|:I] 5+u%>=*miکfP^\'np-hi>μ/4CI5 U] zG4u9IrbhOAU-cc`XE7"jeҭ+ΆxNGqY(2輦x-DW4Ԇ Si (CZbIxТ`_gT wUl#PO*Ì b\9sۗ,_x⃜\O\ܔpJp2j| 8';yȅ)zKAQoŕwZ[1("מ#c-R߄nHҵK9\ȑծ-4˾!fQWsAH̓ྂ.X'#_|0u|q 5ƀ'\ݔf~.p1ע7x[딚|,rS ovGƋ.c2^_ Exl]*M80xCyVҏ@A.Rw0mFRᓜjR$?i˾!`#؊aJu{O}R*{iOj 30Ԣ3simaӮLF7wg⸸%a Za ru"|zV4Ⓗ 9H+/- kɂz3NU>mJwG㴧oawíDdCy,ȴVgΪ$fǂq"D~b"`I`5[`F;[KWH]TQXHA&)Ӆ}=dzlN]y&^!?2 ѓx4֟aCyc4K,JZWt',Am5:fgbw-ɺm,ZjE>wS)Sm`BE, t>$ 1 Y5 _xg,ܩܔT]ٹzc=I$)W" =c.'8zck+Æ/k`E _qԕL$a͓=hcsw&\*`$~"]^ٖ({\U}__}z=L[HuKU\  TϏG,8i,Y&%${iy-|A4 P7<^֢Wt7shX [lu`rzt@"Bֺpqry/t]T<ה Oԉ], #5ƏExO2Z׼B 6`n*)r$$@,C u)~{E7 1NFUE` 7'aɉGZԊjzJ78b `@8AvN # ?pS|ĭL"{L:9r7Lw/Ϣ% ˷'t=eaOߑc~G9#sl{{ 9G%2C@LTȋ-&j!Qtބ T"FOQ Ybk\Ѳz,{Ch.ydry! A )dzKʎuIKRyTwC#2myQr ҐjB=}#9'LQq1TpF]F>17ƾ|W )aeBRCmʤ"H{А!9`BvOSnBd\ pȊܵLk# zkpu{J-+>rs ad!܅oki}|\b Ao?I d:`fO^dO$J~&H\j%p599x-%myJ/[tvo'sJ>o-y8t}b!J (t;7ޒ DpL|隤 +Ȏ"dRs$DP .Kh~5$_jtm>Ii^xutr,b_)X P QJ=5kn0֔)P Jiz'{oM0GXXjV R>/p*YHݙ;fPYz* ȶٽcG.m7,AM㚴DdV˻!j FX xDl;$$)vθ_v?Fۈu|h|4? -; SykVl>jvpBʼ=G- {L)'Զ԰#p 7B%_[P&B҂s()^͝v%)Cby^k^Ρ8>\nDLVA'3@LH`許{k?{J؆9~ÉNUM5V$D6X^;.O?ß0HY)FQ ҵn홊T\~jѪWTCkX2[0jLCt1,@kd*KZ 9=='f#jG?^P~7)5cIȜ?3‘VĪT?r5P}?T‰@g"'v,!rw؞~*cv9]G12 jضvo jDdPk^'V; YRa*JX_ȴRj7۟ m.>c{;#5{s2nl$SUȁ=3jĎŜ;C?3+=MUnziXk!ԇ<ɹ@<|̾Rva?$Ŕ4V+36<0t1~Fx?&]7WDuUs[k4(C:X8IjAR&D? @hJ++n9b${ ӹ v*Tx62=Qj&>l,di&!IT1@}q^*;?;iVj?6vU-/s~[m'`U3+xc|?ُ\5k^lIHi5!usCRRfv5 _ po ␊7KYvӰQ2է{MKXE/*(+Fm u19:dX#6h*tFeʐP/Cլ_? `7e4kU}Oc&|[AUl fm7j6$ (?6omGnp\6cEYg pIz.RX 9QӾQV׈+ή`F9I Oj4ro5|-sx>q(yWa3bbYHKœ<$[#36*|3uW1v=2V1Ȑ*u`#!Qq{MĒs_;V/ZRoڪli+R_DvnsfTpARn'%d\ EtȞ3Ixa|9 r-ӑTUnr,죲LD_"4M|,Mh!$sͷ+B5,5T,%V46tS?ȧ?MD}$K*ې \NFHk? j3c6aPȞ(#W2ce ߿(!ސ(Ͷ?`2FFe=`tlm![rјs#KLzr3n/ČWN~!)OWmVYܛטa)^CLWO=! #>i7f$%WyeO^WھgEB)+Ξg.|Μ|c֝CGW%J-(I$2j9ؠ[b8A_$V9u.ݡ &O)G W|䃶[زdsFoA Kew`Mpc 4'*rV<"Tن` k~H43 '-K~_x։TPG`x]Fð DjM ʝogh[߯Oilih1e]U_7K u)F-ߺQ}f}36X\~իue$w,z\3~_?cn 1u= `m6P#A:t+Uv S׆ EHp޸庡7pmB 7ߒ6gw@Lj Pխy`_1\-X=c_9r`8\ڷ 肿< .j+Qne?v1 7 W2EtM}_kzzb25#g_n$6eYCU fbw u+}Js)d|׳TMW{hMpy[eVFg sm8ve#&?YWqZCwV{vJp*d^⪛;M2nśY/܏ڰ^9IcN\+ßLAd5y@KHI.5K6vHe6a-gpƝv0ds@w򄆙upG;p^BAog;G޽:PxM[+6`S =PjY#uL _rʪ($7A v=)E6|1fM-|=ҩ%*+š&+*(fu'xx-C?$X{&& x3V**[5>:FE86C$AxNLLN&P;~ܖԣrvY.R|~ "sA->yNJOPO"58̕P9H+1//v x5Qu#CD%]k4k,ף^:$#b"k_Q!FQFR$<1DU=.d- TfAȇ^\x ,C%Hdw5xf*|J@8Rihz$\A{E$n)RyNЕ]'X_-vZ+keU"TK4yy[m_]%Gu{KHxp")*$/87 q{ޛiZQ:KZ3  $0cdO~ח\9q(2E^Y 1M.&ZČܐƽ=g-DVuT#\~XnKcgE.yR Pt߱2,-o_(r2!Q ӕt11voQ-d?a9Z(fse~%0 M\GAKح?T-^2\ t"`#i:,6Gd}Ejƃ%2!*PEss(Ϟ&69R7*ę I?:.=IHOnQFEaW Fx.<@1rЂ,hۙ tѴNⰌݸ9pG{qhǝ$ЁF+^p6Ob&*VR%4AoU&wi'p7VXADK3O͠80S_i/({ә6T߂'t DaLi}t[WHz%lr@a&&jF/ōQPpAǑ[5i3?1mՓ ;Gη`Iުl3ӳ>-A>$]xs;d;mlnY[%A'^p*ժv%Qi$MP`/K/x]1DOg=^L2ݼG1ԭ hx`l0K \H͸PqxDra^Dzx0D׊%/TlZ;G?v#l5Wj9꡴LQ/㚭_޷,W +'ٓкmÊS>gVg,>=4sĕ/ɋy辄6ކu[[WG2[m,<Еbv`Wm!fu@)4h.AvH2;Ѕ0w#~Vݐ5^q3O$1.)6vԟ/b!ԸLAWVH=C%UEM.b 2YB65L Y6IW 4b/2`iyy6إ"=&%*^T3ĕˈ3(C<&q6[hwQWE"=֎[$S;ՔLHӎ [A`mQDKlFOcqCO`V1<_xd(q9r vށ u>sZy"0ҜDBRM8qLњߕ˾" eXGm r j3]uu/ v/1;[5 EbZ ݥ2oXH(^d24ӕa!cIDwިvC~yg WC9>Ys@ cK;]h`fIob=5gSe2g/">[Ɔ%ŋԺҼ2u[,$]GժUAJC]<.0)FĘH}vt1ʙ\U?VO9-bT)w0+ Ƒr˓cm eV< k$Tmͧ@|QH335kwxtxHV",WT<ogl6 ~{ΝdM7  tlď թ&!fR/y <)nf+}T̮5Hkhy(F);]#x}+'1 DTmN*(^2OYn YqHR̓&Iqܓ2ƌ(.QC̥Cq~̙V(n*̾y[k{풎mŤn\.*hl9ȑaƂ`>v~I&ZsE3(E d}̘&^墾Ͳk}2pʆv[5ꮪ!%%i !@ܩK] hsZ^Y.5ݙJH^Jx9QIygN\>MG gR#IkֺFxKctQh?8E''K'}N=`]yGbЁKy+({9I-Kȵ:yHji1`Zf~ Bq]GcCܭ"yzАO T kcAnv|5јRh""/M98qy>^` RAt.N!rDAɌ2/LfwuvGi~"3 _-`53b荌ΗQki>k`W֤c&f&]<`~Wb0ˣck lQ[h˿Y=KR39M=4Y9GR$7OR=>+tRIzs!R^`;Q1u]EJ่Ud0- TvsΜϽ7Q Y,30ǐDL-b2E ֱ juj%Z !ry"jJOD<}#nP"J멭|+vόt)_x_RC펫e9 9uL ~`H·)@׍ꮌC`O7VK/^8΄ q[Bat-7}|Q%e EbnPWO!╾a~8Ғʐș|9C7x,+ \ ӯ[8Wz.rLS?@A@у6s ?cH/~;́C$s֪]+c uaiy-Ss\Sҩ~ $eZÖ#-A< tY'ާuh|`mJ5Hsr=(3m!\eKyՋ\ $a23wqiFQ(pK&fu,O=Ktf˸K i-?~{ZK3Mg-@Kրb+|oϏˢRxs("z?=PH ׼K%C2c~bB[3 mn2n @b_lx, [=;K νQnl9]7*9 g˵H,_O{2uбn̴֡H؈>Ԟ.!{ {[Z=):C-1g#~& W/2Kxl1B/kߝt1$(@~QrサS NUzXE#[#J8T)2 1s,"Nh*T)M74<ަ=Q -[Css-Gŋg0\+f~$}o 1%:0@B>x`nmKFt'~aTOx#fmH&n,XG^ZW׶1O@pPo`4c'$-kzɡU*Fg:D~;-V=\&H9ulGQX!mj=9R=GE%eK 7H92Yۆ{n(STWr-d<0y!"_Gfuh1/AXݖ Gjauh5A~k9ZS%-\b]v$ 0Έ{MKwRׅ<:HP2jj9Ma|^1+B\F;Y[c7^3Lqgk f""zN+s-[$P Q' i_x27V1ώox H֟}T0wRMu8$l` B E0¹`wMC%IyaM?w48%hhpTwP@_ȿ o]FqTRF/HlW4N~K,0c 5aٱP1'(\Sd -|CB&Q 8*X.dOZl=gƷhx.6褚=Ȅ:HFBI[8nNӾnOCv@]v4: 8GX_-&lMFų`/U˜Lyn*0Vr@p_^AެU =B1X $,E3\/$.TMlV.DTB">$B:}<9A?-lI31Gv ;F;֓*?s3^e֩=)CtZVeݮU=DØjY 7RRHd_Bw R5 <\fwEZo"? {3MT n 8E-xVC➐H鬯)_ǂۥ.Y)}XހF4 Z:ȳOz^}5.) +a2`~9O4~$*?+Gɲ J<( ]sm䅖 )QpE'_9W0jVSBM86ɻ:gd=zb4;Ҹ9SN|bT@Om{Yö|# Чb8VB 6K0\G-&۔@Y7NiǸm}};=ʹ=nޝ*55%+q0DٷJ%(l;|vO' 5J{jIƔėf;;p *~s4pǖF `R,=yx]aC=e)ݒ8ު+9.BU3|-]A"`#e;LÙ=K&,>>-D УEpŇY&[\~G}h&yEh;k4Wj[UcQzYE" u94˴`B}Gw -%ˍ2rSc_\5ȨeUv05jL+#R@Cګ]I4T4hinRWc ~#u˖BSa^ky2e# q4 2!+EHZAQ*j=ϋ`-[Ʉ7uK /oWp.:\J47`,ՉQI5(4yӕoѭ\P,p:ە81 SY1d^WdCfUKW&WioKGT<C;DP%iGgr[tulN ~uKYy,Q }8ĿU8G('},dfoŊeu#߂S^wx=#IS)ݼ!~,EbeRHy+B{TiZ70eAu 0;UܴzႳR'6ex- q52`eS?'TD` kt"FkMOyqDx1f(v Y\ʢ^{`gM"jE z5OǸM0רtu ,VQEB/fآ]!v8i9 Z-DOe:ϊ^Z`+$'!#0=<9O PK[ /y ZBe/'XE[_78$X˙#PnGsmMhvn. _x62ys狢;cxK!pC,h7R$@'yzzgr?w\.^~w- <؂؆586ğM#La&(**̙1Yֽ#YO}}݁N*A@ Z&g;wL`M}V`/@y\wg+^5)(M~ U 4U pk5O~L0Zz15 Fp% J3?!n)VI]ha׺ zW ݑ0adY%М%qzp [P `%hP"Uf~ u1 -du(QB׾FNC8־eӿEVy6i3F4ܧ(C5KڠoAܛ2-*4ЮҨr3"/VfD;꿱@0dN?uet^]]SoGI%yCn0fCčBB2A,!Q;|l٦5 +8~L̀g|53KlIzf1 hzp3[1c'MO dM͜+Q{󀪔LZSK Fkxd0LRf9.}=> rNr1&-ыP٨B :P2^cs&2q$<dcMn4c,Y2~CTfvl6{ ߶vw*RСKT>U=7esop5k l,l-g$r;U7lhy&H\T͠}rt dN|jIZ4ONJsiЇ5}h=?=PzDn6\f ?ԇ7R8Nt0Y k`|(A$QQh%lYۖ1(Gޟ9Kg'kbTuG6J.pF.r82XvSC;D*d2L٧&e&¹&C:~ ;O߶Y>5j#{ O;6!aʺD34#" [h 1^H(N>r>AA4TB­3 .(;П«wɞwNT UC$.nC2;` ڣ.IJREifHȞ;%&&pW&oZ8ɾW_^jΎ(E^Pa09s`r؝Mgzn{eaݘlT[gQk 5׬Et*T5Ƥi&9( 2oͿˀE_-{ So0.Ez_6w]+gd5DR"=3XKސct:Zcs`%Xs|SIؕr3zA"B X,ܘ:sq@2$|TU07eSXTxw$GYXV6=U zdݨߦͤ{R.X] w@){0/GYL`Ll(LK9ẋ. <0SY yOq37Sf/R$ ';%M#;yWsz|Z^*uyēwIƢ\qϨwccCt=gEW$SZdV@6Yj 3S l-!c*hXPM>F03αRG~aVQg'c.Ň+WLǁ1*Df)c$ЅӴKx1\x|a=yݧOQ1W\uL`^{FYVܒuDjgfZJk+vLpCDz5f)=P=EJjDsGX=<^"P!ARJ69[M#b;:p\xFn&^iFw^Fc>w=0wEL3h֘/wï.5[saΓq yRZ5U ccmm Vt1[wGuq&LҷU& G|S܏Rnυ@ZGl`U嗝ө/?pJ*h.4ȉ)@sVsp_NZnwɟ ifϣމ>~ox]P)S\#8Fl2IЬn42 m* ̬QZ(tIAuÈijЋza%ypW=eY͝.h-ݫ"'(tK͌Ct/?b 5ʁ?,kv@Bl9o޿ں ZqLrv&,cp 9ç;z:3;y(t.(9[Z3%_'TaFẼ{Z l;p/bԀex%t|kY U}F>D2tluڭI4xU'dɝoܔ$8-vQ!Qm'  Y2l{ȁ*Ѣ3dј+ *3֨#$#6(t7ݾ|*Uf* nM1 ,6:2/L!*톒jaE٠3 NWX/p s7mTY'-9)< Wi`9CT˓j4iQRpLzh,DUu78 pubٵV Ce;y8lVm]J1wY)Y/"O62q>yL?v[IQW?BjG@՗'P3:Y/ x)K9`Zr//n mCU8o|2UÉ~ 8 ^9T6<{9*߂=WU4r˯Df?2k%Hi.`H8Do#䔫Y* ,_3fz#L0{R3ҊDZ|bE]V}zp:aAa>bУ XaVHGQ:#CK]o>/Jg'lXGEʱrMw{4;ĝhhv$ۇf]2obT{G_qnN|_C=X>p*BMs5{ɂHΤ ,41#r{d /u)3v74 qׂ͜ *gIǨ'¼ñc֗\ ܅y-/5E~IU'Q-bi*lhlx#! 6h3݁Tb;vti m jE,@buk#2:SV wɱ\7wdh#%v}-ܞO)5(u_?؊kttsbrl=@]#V!\Ů!uD=,$3wUi%ߓEfw};8EyUoUvr "}n=x_+ERiet*9l;#jBN' 羴Yv %J,Z8U:I`7W=$Ju 橊C.QR~# -3 R1Ҹ;@ZgW·$j&ӖeA'o~ZД'* 'n[[4K?NP`c8?z[}!=.* 0K!ݏAű_`[:p=Iꈙ77^I](|1S fj|QVYK%[Z?p e[s9~`4d<+ó$7 = ɯg!1y,xe/|] fMYr]ꮡb}Cui@9 )H' "Im[ɰ0UU\$h8rf GYRvxPwk/EH=ht<C+֐*eĤn,*;7O3 ijؽ!0@O-l\I%t5ҋHqD2uͰ<~/qŋI+8Jj>Xm.i' h8)v5V5K|=1_~'Fȉw@BnjavܵQI,VX #MʼKr.QӞZLn+)mBq Qov^Ӛ7Fuyi=Ջ%=knux6^@*|w㷔:j~acS~-v\mI|^Txpv{r772 "I;{XΘZf.?҈xZz%m(*o'cx#?U*=<]'lK~A=82AL?ػ8~)~u ɦ_S;?PF${q#_~{3J#%9D `T7u 6^YzE4FRڋ>>\?h!!T8 O;ПWjO]p1!(XDJAŁ@AEx99FX~J'0Iʙw/A؍jCZQwK#fsA˭W a@{3hVikuh 9xHL٦K"YH]cdןǛR!}nWDU5N>BePe6Z-ھ%dx) w'ӷN#vóӻln*@R2 2<7ٓk33i7Lcr c4VcOsXHlZnؼ#4&7  j%xh8hb֏&mci͜RXeaqzA;R9υNۂf)zrB#vq:=,KaXs;oq2I&@%K-*gJdG@͵N+ѵVFp@"\7 *>,Oq&3ubą Xp,K1#b&B\?~u RDV8@VTm? {ȳW(tXTSH@e“H ;*Qׁ@-X?y$wѲ\d]VK:nrc/JkI%*af$: l!@ިp;mBu{9B@[#vF4m,]%+|m\TΛ&kڻc>(6 @'"_U)` ?+.W_`U)ET0d~Q]ڍ=WѤ,W*k08Pt ¯35;qFi ݝ`/1ۚ|n%9/C@ !+@CKWeT-_m7J=qC$KX=_BS,E${qrn VC8\ے b;S胐~ dq#EZi'|  `E${J4Ն\x^E}⹯R~Br8vIspݽp#12m) 1! ,,׺1+A]Ra?uۙ GY(όmǴ./^HJY-"'Z~OШWU,t+4E!cwaIu`lOHWJiF{|DŸ$8}L\x${=Ų* ?7P68Ί!gNU)~N{m^Zx$b# bm<8D7vy]R35EhBǀAs#F~ZqToBOAJ9o*B &~i0s۔;ljyҺv=Lnxӧ(ʋŸr 1f8jW!x~0 [j8X[db -V$fb;[38g?]>bU)>v)s8VKWDB gPvra0OޡؗOM%J=3* Oӫ^.:ej IQnsO!f}-V ۷ K}ęMqXΨ')HcW>euT- <:<9$OK|o"^VWAOMwtOfAW.O+?lKܧ#c_Q'@ue?Rm8W=\c}an ꮯKaP_Pw*1)5u 6֔YDwojfcI;h)1pY 2gރF½Ǽk.%DUe;$ːfü.#WjM['[o|k@[3-Mk\_mũ[{JNBcoQ+% [wa/ ZyRكC_ad`6#^ꟆXLㄐVJu| .OXԭFBm k&A!({ꑐ{h\:dfF.B<Q a.1]ۛMɊ|&;A7=kkpj1皮cv˹8hpm(Rg6}9 zZxF.dž (T5T\(Q`'s`on/唨{)"J"򂕸t`ڜ^_gW4I=F!U0 뽣?YY*Q/!p T-~bz' 0[*6)gBs!9s "5ss.gOk]b\,baR+W)_li~C˶pnEf^Ƭ'pv#  Mw-X*ֺ5isOLO mlv"28#0r(~FZߚ1埸keZ4* RfsL*vX(o$@o0lN3Mhn._}Ҥ]6q"j#S&2~QxǑ^)?*><TAQ:A%UWiԋn蔩GKs΄tph6 \M[H\ -aU F~$[Agʨni KLCq*Y}ꑌ0Ă]fu'ϩn[4Çr\d,Q#9Sfտ} kN(_"aU.,)R{ōp4d} 0h1t,TE!Ž"z&+bV,:? ~k+?z=,Nݭ]Nw xE9 cAZq%J(= zN<KHVVOi}:)s83T6tzޖ_m|m)Ӭt>ܓiF;ufHp6Xz!ݓNzI!72®-#]e?ELˏ~;ש;[CSrjx4g 0R6STRӯ(5稃O*IkBʵFq"/¿tǃ6hJ cUN)yKDYC>V;Y\F EkXiD {|nwE_3τ_^JALИb*j:;C ֟iȧN)r1T@rxVzZ+!)7n=xZ~/ ~K_M ` z<9 /{>:~sʼwjE}a kԠM[kGLr{Is>*/Aa!*bmN U1J4CV>Huvk<::Fl9$_,bY.Or=q^Ӡ)r黆ǶȌа0Q1bx<*@-IaoC9ȳCӍu6(Sp/^Hg IF(њ!C o4,2\Ԉ$,VSsgy\*57.(rA>[kaѧqcE=yCqdRsMi3l4"sL9?jk@w" b^ku` 7ve3l}n>_ 빋(/Zhx\%v՗_ӼXgOJL} @kiO?okÐ,vǴjNW1ȴ0E"$>_]WIBI6d#o7my4qb!nH+BaLD(D.,(N,[pZh.RjZX!FS$]eU蜗瘂,q,qlQCZ`!k+B6sVv8?$jĦ.~j ukb7؉ר/ʕKʹ iW֯Ht9%(C\E @t`f|"i#*hy;E`'wUI~}9{_]Jޘ!-·x f5OT={tV-Q9+MxSl߿؇o fkfZ:F W:Yls5)==.P]:EnB7A`+!ӓYbxH618TqWm$i֘*`퇾)*v-m+,e ]-(3{ƂeVr:}X΄K Qx"~iE!Ūg ?xaBň_ njAKxfƝx18Ho1tԄe=rd:oN&me۪-8W`+2JSE^CuB ڸ(ʯmVfCM ~ŇP_ &. fu3c0=iU ⇉!q?FjiBft`E}e/JϦ?IF2'eX\UMQ.넧̉l~|8(%t( =QG\@$[j|YI7Q +LRx LMpL\7=r'/J@IKvٝoH'wPǂEN~Tq`g|+p4Nq'mAu*)E2-ۇqw74|C6Gf%m_V1v◚k>䀖|!Wٗw,K$Bژ(F1FE:u~oK cZ4(E@tq79)'x! cM0m4|Ai7ꏬcL9jSaȨНsIji:9R[ d;0SW<lN=#iy‚xp9BXtTK .W7}yᬨ.]Tq6kwlе< ? R0kYB\+Dg$}XJy]|mk -gg`zZЅj²}&מi;_0Z;q(njoKהr'vPIRԴ 6_^{'!M CC'gH핳`iz~#:m^xE T Z_`zvCz#@ry-!K.-Zܵhv<[t!LjA `rguYn>fd_ gRۃo&A "Q hcYas^S^BjN±;(Uv-m}0ЏazrG_ ڷP!6ݸt5j-VmeWW\m&ݎz $L}uAБxT7!o)®Q8>8VrI> )SN>*q;;V*ntn UGEDIҢ 9lԜG2dg闑uyUrʩ@&|n"oV({C{bw/g.6Α{݈z}0 ZhQԠu tZ?*Uls- K0_[/&9ͮa*Z #,CPT^2hPJajluX_{֫!߅g"?p='DXm9*'} u0,|A _lPػ7߃ou%e铻D;`]xs WeUS wќv2שZe ͇"thfQ"FȔ$U wOEB×虔)īы,$7),$4ξ?yxnzN(9!/+'LH2k#2U8tA횰J_\IeGn\/SVN`aYG҄  1137]Bv F9[$gs,suP725GjBҋT,)Cl@i؊!.5Fuzl XY\kL)A!¯|#i23GOgN[hyvRvv,/3WɰznE5{y r Py2C%#-vҼ0,)ixŌEHKn%fy9t.H6r.F"g&XjfE bM~&,rX r*27j~ze^ӭw6/qu~@MK IㄻAKY|(L4[ssB0DEaphj彇LPzࠂ+\R.Zi/OǗv@A B 7pGkV=ڠ?j{lXe~"4eJ>Fi YpKW,)$šle "tU,I6[V @-F)>h( rCW,{ꢎ=\?iڳbQ.?KJ7oK'Rg# ].3RjHAsws!0T|w7}VG`ѯ3(r"6cPW.%ONDsP2 $7u[:W \+M!(y7DF^*$*2aM6+6 VFCn;M%F&]wTp40nr $ c}NguqaY!?.2eRV\#ũu=TSy9*'ǽ^K1{N"q)nm#&;#9I,}ٌ~Bz5B6cO1x =QmAϼdge=9n(3'F5//<3/r7Z@hjEâpLCGWegeA7ԟ/cpJvDo]CAB8 , c@lEMVAexn=jp%(uTl4V=(?flӨ[wz<E]`@G2)ǠϘ$Ӵv[3㘐m+6ঋ;dtOHYF-t.)Vr_f^hSoeW9 [^iMp*QQ"x.̢-:.?|F|SnX;)!%#>' Jk=sea}儼R f^\ir`^e}_0,8 ]7Q%R-!|p,z:mLKql8'ڑW:lZnT6Pev4iTf_7BUʥV/Г,43zj`͟8rsf){Q4YNRQU(OAcM0ha?^bA-A{2-id޽GYd).^fW!TF|dd%8q`!e6qKe ="vfֵk3'v')b>}#XĮbl2k6"6ԇ]R|%kWȸ!◔ce6lKC(yaF( tnJ#u@QAnyEvcWbRi T8rHd-^AM,2JcTpOLd޲8raLQ[- X&D1¦ҋMq9{}zA*|#H^QƝ +I4~os#w ˜8u#*I~ѝ+$Fwr\y вu>0Xλ9hWUTsbx(nB0W-6%r Tka1KIښҽ7shmIFP6 v`pHmOLu,el+tլ¨KqLOq|/]}@cA0a2}u_ / %hu4!Fܿ8J7BZUmr`;J|WNC0o=IyàDo5~Gʴ b}4a.5|⩭.5qbi41cnb%R??#QM(" 7[ ꨾6a7ZK?=nȤ2.Y5KEW=F7 7DҔ];^KK6 @ʤb3奦lq.7x/_OgVs,8ѷ>`|Q"٤?s/6y1y ԗ&Y{%>gÜ `Te[LA&~d(jazq;sթC\pޡ(b?yb-0)źښ m!8 %|/ Owܴ͟&Ǽ)3 4j5voOVV9B>Zuժ\棔+TT6Lݦ .ߟɉ^jNU.V:>YEpΘ*zݽiuYJxǦQ<=T[OFBq(&\0kē:}듭 mmg%o]X\&<XםIقQq=tAQWwuJj zfX`N?4'[`"q?f0m}ѣڸ4|:ydXϷt1Tx:ea^V_(:\R ћx2_JgOpOTmuΖW{Ud-۝{e*dʱ"-gsD>DyJ6 o%ntԄ6ؑLkyT&j؉X tH$ I%\A`nf dv4VlTсe]3k'+ƎFC;Fآ[[S!nb2;yO[k``+A\O=&@,:|4k.YQLYYH_R[jo/)W.27яui NeЬՇ]@,[7Y|;`x-TtSc$)ɶ3S5  wYl(kK2^X&=_ 0u\AV.ƶ1h%`J&{prVC)O8ʏ# X-%TUH[.Wcg(:' gWb#hݦ%9wItrG={OUEjYmT0Ī,t]7vGeE a.ܸPLuz%ǩc5nث?D͟T~FBB> ]5jé) hKfMa*m3V أ= 3"TstgH^|?&I?AԹ4AH,:*an0){LN֯ڴF;ya"M)p,gP2cO&]l&H>'.,$ʻ 1IsA(Tq-"^qb?ƈY;Wiez!? 1=U{2 l#/~_^i?͵HP!Q TFw#IBrE]RzO1_S j\rVմ鸼 Z+G9nCF)-g;3U…r(t\uP4äW=D]_5Kr@&;(ϕ?f8ѣCVzEX( ht(#}r0xo}o1(L̈Qa;d'GG^sAA) <+ 7;Oݻ˫|krk\UM5 M.\@T`&E$f1 hġ 1TGˡ%'̿#_0hg}CbMD,&̭T*&E PfHW *MD3Č0mΞ+72ٶoAGޕӘ6G-7tQ[TS:/'kMc7RдhTPkM>v`^vj,(<[ ] Hy9H`2 FiQ~Rܙ[ꖀoI(EE= c;ZP>R4j0@S @u+H?=lsއdJ\6ۤ&} E{AG&e&ky,}~O򩜠&"T}>\Y|W[ːEWY,Poc 84г+1s%K0m-E9AUmģs"Z.vrirg{y9;~ǿlCʊJw,B`*u᷾~(wGR`1;$758%4өZG/c,F\#CpvBМ|qPދV:ТeehO^*'6<[.xmx=, gʄCԟn Х2YV7 Ys&3qe"UW[bA,Ym]T:"*-8c8Q9n,86xN8 Es:Jk+AJt?nTͱ$f ^lgf '㇐+!ju~2uC]v̧k|qS8VMq5M MOrD5_~(-d(pn K!l.T8ZV1FKL~aFJ49׆^o9J$(gc/2G ٖOk)0:'.ax#ckN,Ӊ+]91t[6P\&'%+ M2?L4P"TsJ.`7vMMO|uXP:= 8b䐯GD *R6mt2fB /Pݹa<|Ghw (?GL>YNQ=?=Z8IViNa=4 sLSm9 eDJo:LBQ]~ #BCk-] #'sazi>ׂ͍ߑCg PHRy/lUj[3iһiڲXݍHkR'Qjb<4YHLYBc‹9ƷhŒȂdG-tP&oDN#=ܔ CߓR^,@sԌh·k1bz~#-6'TLT^ΰ,RVXZ*¶9¥uT51!eF,3 @ i!>p!b;82]0j==kzF#aҖ̼7ҕ3븠æ-&NQZ jTg l2cNU0#=p >J nqA)U?IublwOꖰEAi~Td|(##D#MPvH:EXZ:-zIyv_)h$~(dRM'%XM*2p&<İҥrnTxF@3bOI38' b%~jԢ*xuhXt݁^璘r/hUe^H""񄘻ˋz0wj6l:$g@88 UŔ`nCNuo܉2;g=k$HtFN;`dݽy'ڍI/hw -hZ?Kp:g2{}9k#?@8K8UpJzZEt#l{ LSrBh=ەVSH O;Ed׏UըA'ļX z/_# J\!X_5/+$8qLr;.W;CpdNöݏ9wlN,:WxP 7\vCvR'r{Bl &Xk* jB?{x鎹29H4Y j:Ug[>-&.yH*P`<%w J9 :H6AV B.S:;zqy j8\լ9pdg({pϘCx0=c~źx5jSWb.w =5k85G|7FeI(./ ;.AN)ǚ5-~(|\*j]\HqY Z( MC{9 H*{B:Nc|1*]Ƅ/@A.IxP0MɑifpTD7&!ʋ}ιuBċ'J!q[1+a"OD7n@l_,~fR;ޟYОT&/:8/o󅫟^ SƉ#YIGy8t!Yv3jɀ_y"a&Pga >7d/., Hy;I逭){aXxBbŔM:El 6Ye E0NA4C%{3B>U#[&boyP7TkS1 +=P1Pw@=#r qAY6^]C9Bf eqסG~jc6u"rgkɏİ֬^ E4i9a6,D=""jS(;J")RSr~)L8>PTH`)i&yҿ.VN6Z[WSY 3C-fY@Z-pi"C6q2Zl3?1U7yTAt[)ې/ 5m I  #)1?z24ܱ_H:xnq}XhƩBX"#ߤy R2q`F.6:^{3l5-ߩwM\s"EAH'zH}1 $IʘJy77oW X;{c |.e™A^u/KMkIJLP?~<~f,#L}&wž<ֵm9ww!m##D1+˽7꿂ǒy0'JGeKa+#qoSwmM8Bpj {ki,. ٝng~k؈Z^?\"EtR.w`GmSϬ@ %k'!a˅MǾ̓_qQ=!i.O'L'JP)wo@O08;xv֙` {OW0T9H@%43ߏcaiE$_(ڵ#O4`aS,qfҚ _3. ~+ >|mz `}D}R*Hu"s:»"lWTt)La9γr Fmmjkn߶g4ux HuYY1A1{~Vc,9PEܥ| %ǠoKnd2Z W.P8uz|"Z-08}%_9 W/MʆT TV0mHeUD=<xHϧpCw\ ă*P #Y)ޅ^I⪃t*JL&+3}a}DɆImJ2 |*ii(CVo^Jf&bBGz?ע;.`GU.5ɥ;zQ&..@470:vP&}I /oW1_4] l VlZ;는V蒜s.5"0evQ4e~H37>Hsɘi5gy&9vsy۲hG}Ƽ_ywD ~ 3w9e>̇9L$l&͔z@q]RN,ZK%E 9'Q^_|jȘ&jcd MVg#9 8o_j5& {8V0Sˢ:_=O$&$llf%+15ĄiZp2y(4X|LNq4v5M/(K#S2K{l _S7=G?ݩ ͭR UaO:,O>IcR~(  $Aʨ' I&]ћ2*<1 U)~l# 9݄  el Bv ^8AF a8Qެjb59JwOYv|A8[ZN&}ݶ'  R8q|p=nٙgBDUߖm}"P?f(7N Q8:Cq"5[K.iNr߮^bܢ[ ?!i &5퐹,AtQIcիisQ7Zy`? {2ڊé: {*kZw -H()ɨ1"o1$>yR&bH&;L3fw"זr{e\8䊈bzȵڧXJ) z2Bl~Yˣ/k101<-=YftRQ7sGnK3/ܪw]m~@YMA w>+ DtKp ,%͂g0qKfJ/(yq9JqP=1yMf-n*\"َc7l7sv.Ho@e(MJ`r,i5 ^d)HT@j&D[lϫ,^Y7$ kK@70=8UK}mod#X*$%fP܌v@AyV;^18Zluz7o>$ˢT0Ց".Yu͗cKGˀw\T G.G++ JOʥWG +Kv`t^`~ :4jvcm"p(Dӽ"YyϮ{sb`]tcdH`ՒT5(ɰ4NK/@c,1w.ipSuit( T 1>rȝ&zP֧*m vwo}vH;sa|JJư6/ fod= *&?)QZM=CF~O%CȈOȔ@ڣLCB2wQ.C/&Yc&`Ȉ'ѻ*ZMmY=[8R+(k :+ S2i]UsNιc9? cEҥс" tLj]½l0Mԓh᪟!أs 8;+5؞kF6vD׭֒4nҝ4JFߒt0ѯ6%\WT;viJDqe {ι1piBDC7J*oD E 45h2 ]4{RaecXW*)IK/zf룳4lٴnA 6W+k9%@{ʻ%1 F-Vd\T}D-6 -޳~ߣGQ5+0_:E=Gs"T@:J>!s)GK>lǍX"8)8 )u,LweJLwΝm,7ĵ_%_=A+\q+5zkQzk>Q WL<c5wK9BtGohN4M\YV|=N=rZMțIijQ;'S(I/AӌMCj YL 䡇?#omW,vhSH[jgH}i|\5r=9QrZ\8G  mw8챖,""&LYk.nur. Vɫr3X@K Z@v;D&^fzL}0݅ $,{pN &iZ:b::\ Rŗ%p AEnvaGEUG~&!{\By}R"'@vgκ{MEXES@}U&x }۸Q`cwȝ\R՝Ќ.nرZʍ%7jRKyy\m*WB"K9jwW4{ipOϒZIs.OMwny0q ey*l'%uwu3SAz[bX\֢M6c @JhQJ$fޠ ,2*4e/6eXfj.2~r!! lvP>beΜ>˲ؼDAOyV}T0ufKf_ @,GV*ĘսZ 6b@Q%}FR%5w7e&fA/stMEPX]I %MOC/tZ =CE6W!ŀFH{"\S^tPxM琑&_M tdFC &߾H̤ "R0,lD*FT>A q1=KSGĴ2k0D-h*'mVra>w?ĵ7Sǰuw$V7 iX6i8vՎgH-]U:$|(}7>/*Q+Bau|*9y@fH$Z6^ێcnJQcx zǟ47k򫷵32d?zK`~iJ `VID4on *k;Y)8UM}kRՏ'ZW9S7:"Տݙٖ tcD ;jTZ_0zwDJTu_Xhm=BK_S$l`q\ m'v8Oշ;3 N<1YLrۧ{O-@hvق '^i6Pdȁ{5ߧ /ЛH)SB 7g~v{0V7sy|͔_P<_1`إtMThuvIVM@1!w4to(Oo/Y=kž]I1:4pI-VARGV a0uM25;gVdrLΛvaԆ*ƺ;Iԩf)H?5ʋq[k*UƱ"rfNjYDOWboZ+Fef5h=x &TQnW<5*3bu7'M]^v | MD@($ jݕ&˛<~GjadEI.8M9&5 Zqn`R{-{*D^τq&Goΐ]%@>(ZFY|wXZ1)r1\b̝Q*̣jZI`9\uɞMN<\Lo2ң7e|>%g+ۖ}$vZ9զ6σ?n]b~PI_fhv$!3|#~AWkՓN&&K)TVZȹ'оRq:7,h܌祺9]`DQG{uw~%SmʘX.)9r .p(Fa3y>J ֊_ߛ`E˛ͰzfL[S 'gdvUyZyЦ;d&Dn-n/ʝ[nY:)XWhAʼn̅릐_-X~nUD5?(NBRC 픒=sla7Iu\\X1h76$0S"+,bS\ 2mx9  w?mi圧dEagHt_l~^SB!-"q֙HReTQ.)iWbWEwPϾnD\@ԟ-;cⷃnxfF<+($]olJ8k ү;Qv=myzD tMl*w;KWD''`z N'%Q4VSrA' KKMj~3­ -l? hd1ECY|=NWV6fGS}wžsXtguE͛'H€g+`й՛u*1D{Uֱ;<(B{^i+Z^0-_AjӛtzDzVVOfv^,~9.mWJ&.腛O.z&MA6 ,^bՎ,vsq{[7ժANR/2(ݗq$,>탯'cWGs mIiFu: 3xIj}8Or\V&r,һ=0ewat{=Kt:T /< ^~ZW ha*vji;p_RCl"ǹ,W2jc a-ț!g˙c۳ŚА`ԼH<57]G9b܆."Hsޢ-awEYLIK\LEtymț]NEQK{@JAXdDf<$dl YKMSnaϔxc>1c]g6 FfqR;XErd7锊+Ϋ}"):rMZWE!˹rxK$#9E ݌PZA-xA@iG`C'X'{|SnwXe43wiJZEyW_zO6}2( DCxM*O|jˆ+= #y,~!*Q[8"l\:vmȟ(8(aCqm>L z66v<2%8nwfivɧ9;Fij&BOF0mGA@^4Ǹ*bԗهhr0ɠeI+?2ະhNjѶɴs{doTꀱ6;hgiC2hm @DZ6CQv\ӛ\ D+ fٓD */xls!k;RRh 8E^WXfvvi]3sfc>Gf {*'Ea@-QS۵,:)&I,y.4^ ~J_9ҳl!p&J\E{ 6&IGj Ʉk+LAGuk%a(P qxб۾ڗ_,ۘurt_Jhu:OYp ZKW#%^ H/1H^)I9p&rszQ)j݈OV7h)@χH8k;6P/2b_P6ucj1x*\6&vV#uu߳Jmo&!MS+fQ j~V2˦˅`f//DIN?95GF)}m@@o "Hz/80R>ӹYynQE%S&5Q l54 ɩtN3MB!34"f^fq@SW6v?Yb) NAt0%D䃑j pS@n[k؇0&ʨ7x v҈etk0:}}q96@#)}q_,~ߛ@I~N{ 4t3jB_,n]}2>o՚Rv)y_+a2@0@XXVw8CC Mt|SYWkh7R걖Ctp*\) >+#=.advw9"zx'f@E6g\\-l %^@l8 9:%/ e2痷WlDp~F0D}}9!q&Q=)J㧷0tU`WP;+ qGL gV90.$ݡ>4YZrf ]S!|@pcnQz,{}8<m̄q}h}I {z7!}9Ґg$@6Gc?L嬷t[ @WE*Tg MpDt2g8#2x| Fr˧^mvw99ɛg Ł=Ԫ 50дcs88$BU&IQz RQ)7O{+:ɘmkXbA>'k%3y +A[X@:~fVQQf*Q )mxMM:>0}:>n:[O[W>.-6j99;ViBHĺHTHpE֋|-3K|"^9ݤU{ÿ!pm~Inc3TזɜvE,]v)()3F/}]upQWz)UvvJ$ѧAZC5a]Fuq2lՂ% 59gфSO'p_?C{?4q@*eL20"4vH+F-Wb!gOrEV*'u T٫—rAhHS#ґG] knRIS&]~؇fA=ʑyk7'/z "=^fPOrߺ4~ >t9kpu+D<uں;-Ql-X0ivZJ)}\bZ:}CHNo02tʄp=MnfG[R3eښ/M@"ۘz&oP=,.=^U i1o}&>Ú[Bm!@VH 5;67W h8簫Ob[i ֓SKGL{ ̩A>*|\32:m $) ݛ' Ex@}rj"9~N$?:7ߍɶM0'ш2rhLթuc$W37E4^c۹+Qd`b¨ӄbb2\26J^:3PE=~N3U#[|Ca\b9` J]$[$Ґ-Y-kh,$>}=&lw;orEb\散DGȅzJώ)72@ק.#V9!aIG wbnyNq%ϲz%uoN%΂zQ0祌:N:Lgm#=NSʅ:^q/Zfcӽ=P u7(LYjvZ*g~HEzA_817,c;->5&AvbM/u۱t<{ӕJ̛˹.6BKCLpƽ>1gsVE]kEHVQ~3@W,pLE B<}9Mo@b̉[ Dd!9vKIJf}Y#}Y ìV}+^g VRmpu[X 6?g;D.YT63=%^uojWRTaWQ#-W^7IL\T Dt:P)m$ ]øNULl 3tap)BG񷨍? ~eŕȼZP6{dQ=҆cU.\{%6$JeȬ)9q# I-'E8u!8' -7 #$*H`kEGƑ ?n6@ՎCP.h"Uӥ3<(?m XQbԏ>?J%u12d1Z[Z_5QCA9iKz9ӾȆꫣ"80ae Mq|D٢H0 Z"E #"gb;eWDNl@ʔCN.ǻڄ( οY,/.`'ڙk37*V~JN=?=4`PCZuuK6V/|=Ż!!хZ,@P!'3F*Fiy/ENRf ܋B8Cno[T|J8YGfL"enU? }nr"E`\b?bG@r|Vٲi|@DѢś1-n GTEo3$"Md˾V̈Lvj^DL鑌TO `9 İ2O8v0K d#eA(eJ/E+"UO>i+4:h 6KU4{tqD5/ƴ (y)ҵZi2`M$.Zp>[c?JܞJ+g7ur cvIS]YL@)wprOPxg>ݾ^^Fy$ qbo6i}ӐMS??bW P}% =6|-9o xd΍gp fGߝj葖oV4? 3z8auy"#gG~^ZHP:K[ Ը/,$on%Џ7 >4P++['"0*ڃ- /Lv!6'(!7ph}Q=Hj +moHI3 (:M׈a8Dt2<(yX",c|`,5Mܫd-hS [v.Uݳ>LRcWYǧ{(]J38,p`,$Ñ&JXzK[I@U,mw {^~Q~8bMM)҆|2kU3{r5n8ݎpFé+Щ._kuv9i ыj>c-:l+_yqߩ1>+5`M4S/bLlZOe2$fB>uѤ陕ߨb8Q3d=?1k4|,PoU8ʒ[ᤞ uiхLbԷ+Oϲ8b]誡ra^'gN(&")(y&u[‡3rN.drH/P)ܚv[s7r&b=޳}xHA`N|]P_1pvQ J}TmD¦'S$X@"SLAGR {ኜ<9o5 LܟqQ aE$gKw7Gw.XyLdgZަ{?r~q6 vo[ɤqz[3^7݄EHX.d\PٯVp&zpr݉%B$T.q =ݱjIHIĴwwiƪ]ک{6vڑ!IfIOR2A .|$m K=G: c^WT=A =rS _])'S bJnm!r%xdsbH;irq*O6bZJ| ~YAP1Ke;VXUbI.2֘SXH:pߏ/(Q+0 f$PLv8&\:|Drc un4uN[Ur:Q1tfm\ $0-{ov6+KMInDZR7 zpcMZjdx|Ab)%Bff,c-ִ%kTWl‰^" mKQsr}=VՠxQ;G9HdxCF\Y-or,H 28QHD+m,Z``ׁ͛W'8>̅HOVN5Hɒ K[ĕVD8#%4&xK$3"/\ӺB}Mzi a PnvSG䓓%eIDmQ) dSu v)6Ó/ipf  /#_Ʈ$cЅ=S'tK |S@nx4 R8'6(ַqε3:.ʊ8bVu}RW\[E4Ţ柦/}S1|4@H[l @/fȅN뭄p.RtRVƖM5œ D iWOմ^T(~3GoѸ1JmUpm"ozܡϕ |=EI =񔈟YX9X5.& 'Tƶ-Sl+j <)oRS(LQG&yr4,2`V !|Jn-q6m Fes3h-UK:9,@̃i4 J||XjM-k/&-l=Nծ*kSruՈdb v 0 f?_zd(ZWDzdAW &DNɯ`=r;Q?.GjL-#{%q̆zF=Nqp%bW0rc ygNe3|\+4Z\[6ZשCx a5?o`ɉ& 1꬙(ZNĆdfͺɭ7pkGi֭[[C`LOS-KOjb99ʋ$7C RVU3*>šCixAٽCzk0U'Z; 3@)"C كTZr/+]6}YD95&v ZŬF`tC {ᡫ \oXi "I`lNE5R9{v>CK-?l2a#cE@Sѽ+ rye(Mu#*dLĚiU]]BYs ϴ: _pչVF2aVR د=A `L-ߞNְr ϛL[ sA7| d.Jq,Gd0B`ްmac CE+bQU[;;Uxٜ3Da9N5U>WCۛ"d\4魧ۖQ'D8}?悸Y[֩6'ؗ ڔ$t2,+പk(^j&yFy|{"LWVAv58b at$Z,unY8L ;qPyvw&Ē*P61⛷a5Z Ω9]' @ _<4?uwB,@ޝ"Y@ˎé'{-,WK#d{jk9͜zL-bE&i9m BzSt%iBh\cHB/goFNCS0ڸsĒG#̱s`-66' ^1>C9TۿvOqd$GS2xT1o yM~=?1`aͬ_mA,f!NV٠'_> %2b TKKA'g j!q9mP9cb9>+S?TI3#i?SC ΅{VnZbxMTF޿:/#!?/TA#_Nr9saYw{n`,>ɫيΓSU]3RA„֒Guzpt*k :^3O.(uUvܺ#&fw\a9,Ug2)DJFHBs< fa+w3<X38~fV$2~zFʔ\̲+kC{<0y[6n>h.9L#%Lj }uL3 !#$-_'s'o7ӿp1ZGji2c,^2ClkS ZMauk6WŢT,AccԐ):Vjн90h%f\63GM3 ׆-7w4 !.ʛ=~?7 >~:7ίl8 ]Dps;gJv )_[-w\+`\ߦ?i+cJ*sK7\pVs鬵ޝ GP)1x9 ul%6͕8Dkz`dP rZwv*n1;ĉ$L$3l`QB{~iyw!zǟg.P 8:Xy!h#z:|9yĘ^rZ'2UJV>0$nU22P[G;E,k/iks\F0S]MnJE//jsuu7 x, R=4t^ׯ:M#؃)qF̑%B#{N=y|,Ҁ& mFDP,4:XG.aҁ1hr蓙^#j7y@j*,]+b9(*cr>E1B/fȱMlUW*,S¬&gb\?faJ a)gZg߽>VdSΊvZa J?[e23H9Ę8-j A$fv2"^lz0`̓]Õ+ Kse@ m` ~MZ^8){I',(y^xGb So)Y(Q2_Bl'DCԐ=uBW;V&=if҉Lsl@Bc AL ŃU%h)q,  缑&m,,2M_\o'2DA5ءMd;\)S鿃n6`7gh `eVoM7HwJ̤r*R,hF7v/EyZM3棘̔yh ň tz2pe/K7UiiX1b6RdzglfG>l1RkƃpX&wpPuxp@5J84XٞgPr<'OP #;v-TV1e1Ou&*f VmzlXxLrKwPNNR+<暚”|#@^qOUw6fceƕ9H ƯОOo@'J5CcB@Єg`a [+(hMaSBr|(e$Jb&d!;).xK(w3F uB+(gIxTѻ@,pP154 { ғOT&X~( tk t4X =u?(OhZnQF/[OEaUw?Kc/DPHφVN`cB&C/<.aCT7qU w[a@͡}m!m{E;~tS !m?0s2c +DhKnV-][[!گ\{\1n4-c\6Tfp:\n8 >2Sܢ2o)c]␓[+JCh 5e4HmVH7l!DP}:1]2g*лsQ\14sZA/yBGū}r;\ơMg9W.OXm™hUaeҍ AhsD>njʵ8F=êgLM)2f-26q;n tՁ7w'tbѠwgZUb_yLfr޿F'~|6z G2 ?uM+г5\aL=.<(m?ޣ6|zswR$ ٲT e߷Bu8bW&g zid1:+ Enf[kןeT| yaU3/VoAd$ 3!|AaO.=o#եcKݚ Z8-]UQoeM!BXjiA95@ ~Mx>&d"kO2n7l97t*)G4r M?|gOPVR-TD'}tSͯ#<Q'Pq SDgS7TocxvmMRE,$B0Xc'38*d L0֬ןL0;D^Z`** ^Z|ALޒX8Sʟ$A`v*cE #JFDT ?I,Iل 0k'3Ez69tK|*ijP]g ~"{%[ -U[boS5¯`F ׹6.V'8,z۳Y,AG3@D\bXHn4Xm_3.LzDJAk6K~t{0/OA@r})7,I]^F|O^Q.7>&dV0O AYŨ#g )Y H \Ft0%[ճQ/}=]@xI@+s.z&)vV4"/{`4}MkCvwh4H5hbG܊Gx6S)G9Kҁ4o bxRej8 7b;?;q#qi?eYS(Fj>[ޫ'mida;BIٚ*XpC_{3LW :#+bpJϞ|قMyO2VAb(!PNR;n7}$~`l53PSO6&M&U *EH.8;s03"neR)@y|^RvmCWnP J=B㥁m!Me5z6nߔ orwp.sƬ 롊RWuX|j)x?WRΓ@Cj!*`QjdWDgM Oc[{\r38efT YV \0iU``r85oòF7֗͜=l> 6)]9#IF.p39TRT׎<piarʷڕ(E*K3QiXp8eQ -+܀%u|n1?TK7]MNu=BgQ)9@9- ;]/{@)7@a(5ܿ']w,ݞX1/.мB{sLBiIX\䉂,P-IzB2ns.ωN?P{gqqF.[L \W x=E^'&b+vv͹-PN= HMS -% B^vH+_T5\6;)~| ^c}o+A rq+"Qv )3 }knfd9R41ʋ3 %,[+-<'D>`znNAhGQUkJ0ur=3FDv8%0uwVI6&P||E4@U2՞%tay!gNnh<{IU)Y+ݗGPi;_F"Qp_Ws[&Z"nu,P`RFo+ 챷`=/^*)Ժ ݍ}EMW8寣mc;j*,/=[@Aadt7CJ'óa]sfk[,g %$aaHUwLN}7h~ -< 6gJ%L%yh-rd(`d^ 璔xc㒹aZs[#U< 0FrN|z$:IKϩAPU+cV8%8y(5ӯFŢe&iת,F;IVJLTߎ"0jǸ 3j=vf|v7Ű<ij:\A\Š`aZf,lLHz=͖/\~';`̥hZhUc}T?],# &Nm~>3fo\㱓:7b3}!Zc0<&@; s>^>'@n=Ƅ&hio0wM0+eƄrA5_cKijͦI hP[ϞH\@?" :ƂT:Y'p3ɱchk!ʛF hvaD匄vw mN >Wj3;=M+7w0? ^` _a~OWĊ恢S)1_z$ O徤a D;펓X<Cjʃ!፻UxbOtBϱࡖ8 Yss0-k&*aOM]\О|˨aABy/ʧAY/R'f͠ihuuw \#yp'yE%eR,Xtбvú2 !F%)gXEZAfZpmB]RDn1o$ԑ$[W^&d*+½|oI*R][[ފw/G}h({ Av(s)9Eh)Y  J^/*jD~`VX9T~b蒐jO?'e;[y*IHJ+OG/Fuo ;-uc Cutu3RbiXd:+]¥9-^>9E)r?ǛΌF_Z.?fN캅|'?@S׋t0O~Zq6N,Y(Iu2k +͑+mid; zG3Y a2= OI.P}^"6 Vħ8@hfskyHnD<$\xJ+pex_'zhq*՘, o`\$Iö4K(GXܹ VMˢUUMGzG2QSZo,Uo~BF^ ;H7U.h{JF|vuB{C?BJFhăT h, oˊo B)5f}׳Y.u2AI!6:V.f. S:U׿OQp;{¸f1b6UYiE4#ąFиGF]b khZ-Ɲ*=}=)u9馈Vo"aypdxkhlZ_'&yCW{Ij}UPɜs-7Qtmv!D,!ҳ9\/* q=W32-M?{V%wJB8f?g }Ơ GEz Sm0^.eC(Z4qul®bʗNLT fmT~p٧ _TJL?Icn/v)!xmQM,3̬u(F{`k%8h–UP4Vgu;$@N5 $[hR?Wk'{xJJ^&.1ݫ|p]n \}0Is<fih*.4xzHEjԢ\YmBdT6n :P4+! o;}C`nП6圖d81 0Aȶ돢?KԩW#IЖ) VZ*6x֬*|ծ<ߝ OGzBJ[od>^&2,mϓ#Ya8n*>CՉQ׵ZA Yue=Ҷ_֨wfE4E,];VgcK( GH<|"Is\-.M׽]-ӻ(Pk(h%"Ţ@sc@R"77\\qywGQXGU6AP.KцFzmI0Z)zppfԢy6%/b.eW.3v7 KAbQ2}&1Ev"A&09ld.(?MDp 5KQuwm/vJYٍJ!Dq."o])jOnMC "'%Ev6I"OD1ڽ- qӠ@nZ`| l['_sp3ңQ|pBW+;%P _AWQ[S4䍶}Rz Q5- !^ _0lq2[zS,(]ja20FUٴ-gqdL"Rkm =^'Uqܳ4,~Tnm:m6YLˉ.t.PO%":y}5@BO-aŶ*(| R8=np:ݢ</6̭"M-e~W<1kH@o/Uu@}#/l[BkEcb7/*5?*Ba_(Wܧ4YYULj5LErY 7{]-VxbMpCI^FH89jW#P>D<No vC82NJ"J奈7I~Y52GF;^C;*DZ@e ]Nif|Rh$fUw>.;j1 }ܓ8[MחOg_l/Y})(|Lu,Rkm7Bx:zK6AXV"8K6܁joL'0皇dZdS#1\5 pBF7;j/ݍv5ĕ6Rk>I9";Cr{́^غkUX_,}L'c)e,B*[ޥEj!:S4GulĞ3K&C_vOk XȭMd@hU$ʟ\L&}wU(]#sw7e= !rڙ _fS[DA`vZUힱqGEnAvlK*g>pw>Rocj^}x<2|*.h)U0궫 E;NDw*զx7@ `!I]ٮQmw\ Cf-kS|eԓ NEOM"J+1u0ӥ0+;eIIm SÎJδ_z'_lHPCs-crqY Efisbzoѻ6ߨ|xܥx1mȁj1. ?v x{F[}$1u ?7xph//^\Ͷ#!3>^ҥ- 0P!@yF'e##O]!tl)Tb_qv["4ݝLj>6Hh/+M]vPQnzt9dl#AHĽ푭5q .u! c^~ )XJߪ5hKt&7,0qvdHEKлuqT&Vw&t8aJ@;.'~X(y2ڈ5$>HA)&:p@dXɗn"4 -u.t˭SH Ux$|j@;gBwTV}a<ՒOL<ݪÓ CzZaB ;k3Q=وR}'_NX336qU>u /SA65Ҩw#9 g_cz:pA7Rb8rQJP%Ghq"n؞/0XK/ 7hT)y1/,ukrDӶ{*BJŝ5I"OUSs5orlG4XA`@=+TLбR]aZI nZX⨔R]u}X ui=F̘a%v&V 6g&_?K.$w-9#MlUIg?w=\2ط6QbLLR E>cXTP) >(5 !E L0hB 6ٛcp*dʻLUG\1LMplE;{~eb݅fMM1 om#= %Wh'YPz q*?a(!ʀ;E@y~F.T*A:E&y%wdn~#wQ$M 4!p#sk!jyثoD!>8U$RK8 j!̖w #.V`NJ8 z1&eȤUv~U $F\dr?ꭥK҉׌4Ҭ",ӵq}l=/I ۚ،ABԞLTz-a{&x3GYKtfF1* 7yMX4ǘ;>ωy`CC׼R_)R_%OZ>Lޚ9&`HY-vUEf\TV= LH%5Mz&UVF۾8~uia\A$6 $(Dn;ajoo+~[MZ,͓LV nۙ->kJM>ԡFl! g"fԲ+߸bzP%phhHI9C);6˽f$Xt&AGQizJ4}_]$2fΝZ(Vk3 :+}2;KZ'+Lϻɨ~F [ܒ{G=敎ffC=PfY ].r:i Uv'-v+?i)(DL)]FRɹi{k0G0s"|pMP}OfEϾ MeGy/ BP-#c%'&廑fCcc.ql ͣ^lz g]FTD%YkipYohP?mvR`ܹK6 HʐUJ|/dD/C#b <`ԼPswtb0;~Wps4aXY5TTX_JZ'.z"L9.V}G!p(Zfv)> ́ͪ1Qh'kl_ ᱖lYܽm +`Q(4F[*([Eb8&}CFwJ*_3zg!H` @z D?W(0jyZE?S@nt~&Gi7|'D.k<1ԥ1l0 h픀*z$\2ũ@o*Bmr&[Rr>M>Y7=E羦I&2\*wr  Lۆi e51h{ oQLةd /.YČmp-Z wV17ڎJ6sF^N?OKiⁿYlox6U}r9R4([-YXi^o@\ahpq8T_l*?Vaj+Vԫp6!jovVIō*J2YI2fm-1ݾ5>TbҩeZHYb"rGS(GLB0rBPs_Z>$Q_^>j5xn\pf(JE!iZ(}PE9k.wlmh[(3E].Ih)Aw(gu8P|RKzPfC;ϻ-tX{V#]-Dˎ.)d"(6"KޡrԮG7M1ׇ9J跄K44~v @,8\<v#z4<y¡XaɂKu߼X_J%]ַ݂e!4.'mss⧱J-ח%T-%>XR*v|׬-1/ɓ)[YC1KYWfPb]]~isI]ijyEEhvüE3{@I˴,4qmP0Ἀ9`?SyU`,N|K-a1n]*b-0ǒ y7;_Y'LN/'ԙ-Tƒ sr|&/(:Zoi}2P_BUx:rrMwXд`Fnש!$ h\]LEt!*mpB2/lM__H4rtyͩ|C7XnmF5(w7ޫ({D^²+'\&󁤰'RfQK0tկytTȢ0@J3yaCE?6jbU$PIvѱƑg(ڼ)zV^8I?Am4jwJ3kZYYiՈ(5/^vA?BZez5ӂc5߂CHUN@móf `e1`QAN٠Dcxuy,(m]!If&00,:ef5,+ջR+:s=}xAdž)ni;~}CsEh&WxbZ/~@Fj0g Y):P]1uHO x(qd ( W'6sFҵXWppkԑĘ 3 \B̋z\B?Z \uZTMWsZ^1lD,4g$TdA#L 1-JŦsϠ ~w6DEjS o:aJ>q?עXqܥXpKY;'U#G[Lb8A2"bd:e_큃(HBmiE'o_1atԪ'L:-uRs; .w.acIm1]ZtSb)qؑ! $$4-ѭIlcӳR}`jB3)$fh?ACuHDJTmmW;0#?qiYSӲ~$1XۋϑҏUg󷖦UPxv8[ტ襦eM'{7߻ [.X傏AE̴˨9f r£lFGBJλe'><[On#Qݿp8֟QTZY !mR*ܥo>99^"WwEE&e)lwto=@Y_Ŏ$a;ZɰVwO >$`@ilV F:yCP5g?}SKD7:B Y[M^p*w/ByZ82  ."CϝtF.bR5$5nWן lHhUU~[LDvUXh/涍&@SiFS^4ayȪaVǴCtuA-O(sL5MUͼBJ-;`%-vؘoYyKB\ C]18- _װLk85Ɲgɞv:Ad /3 ZFy@[p!md{>5:kd̡/ڕ=ɄcZ+3i:w7i KDcTt㌜Yt4/5F X]$%j; .̲5<Z2M-]3\SŤPZi;P1uIP2^x,MJpL?|JO Jq)21qh+hFV<1wB-B%oMºR/=6\BxJEa`ujn{ Stg\CxG3v4 ? VkliCɮ˱톩׭dm:RF"yM͙^U3zgC:` mPJ Զ"4ȣѤfpze$i閂6r0t `u&,w{[neWu= ̐?zOEwdp7"-WͱB1 5<1Q_pY azbIaTTr80.0w]>+;D'҉c"[{/l :˗*I|j 5) AS7Zϓ XnYNrAvb$UZVLn^_ E!J8*{n$iMz6| 4p;8ȇ"_rvWX')jȘEi Ky/.#ņzWCb-i0h-1*8_QAHz;f3p`saQ_Xk?VG,MQD4n40y*,ȕs,zU%GxsYpCCRDDC׻@) x[$4{[rH^uۼʇܗ׃6wI^$v᪊;ΪEbs+3;sbd5+ 33vhN1pb!n1!Cl>:HL皩E6P k/<*WPfq{U'#r Ѫ*HS,)ccvz3˄CZbJ&&&bQ[ohBٙ/x8ȯ>јX| պV z [=p;B!=ӄHj|ɘVw&rJ]){G6 9ck E+k~Gh,I0z\.f݈6wJ=VLN9U!&z b/ntz,'jsS6}w(K#_h upwudJ߿SS@eqRb&.3B֚(#]Ijʭn_ˈn*=BM+sy]gR'3qcz>Vk^ct-&8Ni(# Mtb# ~Z(|iTav+bwZ㎮^Tc$~?-K@T*o t)s4QO}I3ȒJ? 5eTD6La_Τ O,TlJnKd1z וBgK+xG P~%uK:`@dVz>LAGoveXI^%j(nDXI"26=#X9YD).ZboWE(rnH_NY` ߧ(K{h0`nz1&Ui  HPC'ӟ!tTJ>i ]#`v!_쀵ϰ,}>񱎧*"O1}y~2W)v [oZI_BR[*?آC '3 u\L}jCYp甀%ZJ`ILN(%T B0cwУ{)-UlYk_^j9] 11I#o@F}ްhɷ8 f+Z#]gTD8w@kvF"eϜn*>k'j.f_2jB){Ws ޗc^G8F/QxSo%E+?p+gp @K< ^a%s4 $5f8阡@p:s$I5e1~NJ@1blFf&ώ}ʙ`N6@\ʢ 4&B@s1/bB&uE2S<3HP/:+|f9otFڈɏkh A:"cjCD+ 8,XuVM&ݞBjMN0ϢrL??_ٟKeVQP ^pwq[* +STu}OUN^:({iPvVʖ) C#6U|tnMAc\2wӌK!7۽sxg9ɁT xbIqPvF M5|¦v"- V _YkȟOU .όg04'I\ IƼ\y{\jʤ@(A7OC8f{ l&29!- -"h+\n6f7|%Cf5i͌~γ@\ͫYgcmAPNi |WgԝJ@a83NsYW`~ ʷ| gYد2hŏvʑ%Vwn}Q5~'񆖢>nv,Պ\w l BW,YÓy9(_d\2y6nt E%敶2O?`/Q:Ԗ>)|=9A{%;cwb-䱬v!,P\9 qcjXI0JOTA<W`jʹ2v,b&5(@@ KAu (SĦUQ搊 d{'^9gMk>ژd%8,gI=11[+'F&d-nwSƒwGR=r'e(ў̩Om63m=qu 5G?+Svnw"dkhG@JUzr^dqb$eTr|NeAϳT4 m|yQi{ hIZi*Qx=s($싅|maYJ Asӽ]4 5kt ċX\}Ix|{M.,Jƴ'Yajy2h׫$P&i n]n|NooVleS'G`t" e^ };n^LF&-&٧B'6vtmYﰷLM/z"G7jkA=ZlK>6~h8p?]+8"IԹX@MzRyX]8aem\(Y{ ֣rˣ }3]'ۑBH7SQ(eM1$`6]{Rl&dnAEyU7IE ~*db^M:_Ҧ?KÑ^48:orXi ØQ) ÈL?VogF|l-, )]ب4!<~n-SI5(ޣ͕[B:]_Qi ׬ &-Gm@AK4t B6Py 8 GB—< 3 )K.VW\ opr/?OwG;#P8wHy<痊ք;aَ5`jT[2WryƸ8_}2lHp /x |k ;4AEd!ܴImUamyPL`-fmf|zW;=uy Ļ*P$NWz`sw'敳|@!20xyB%'q%1i齖0%ŷ怂U BFՆձK npD@%bժrSttiY'lRM}jXCaF^PO3nn3!,O3kv+ue5Wa zۖ19[\8D}BPʺ8.Ƿ^)5x!#&0A6k}hNX\Nu8>pZr0y("ZSYrOPE@'+9 O FҸkq'Oy9RK昢ԏYb/5MO.7*RXgGluK,J Mu*qsaЪM+.`M| 3*ꕹcԚe>` c?rX]4qP "2G]ukSZ5T[֖9pru|3ľsߠa\OGG5Acba?J7ُ~)AVP;/JDHz1Nr$O(>z)ڡmh d5&s:]zԭp!:#<13]p=a|P/3mQ~;.5r.br?9a%vq'ZxW~Sba2ըs6s1gim;+t.8(Y`iנG0^cWƽюZˏk!}O9SVu,$~$5'ɍU0g/MJV ԰E?^@DIǾ]$:38-<Ιb_[!q{+\^Id;bBO7'Z MN)/&K ŹUJF[ ⛤W^:RZ62D^FLHWFZ }X4›:RkeR!!jLQ(4W/%#!iV Nkcb]YEhIK@b;P< G<]ؖ3Dl#^n{M,k*B^4ϪjgH*zR[/2,Z~E]a0;{C*=2EZ =eN| 5}7\{S'ΟX.<憧-cM+ZI/'Գ'_bDbSp+[şfAͣ^Q{o'#ۚ`:Q1cW!d @jg=}OM(5P+^_pvD3@HX-/ҥJyTaӋMm mog!e$MMzǍs-~J7% &УP ^K}xy ޲²YK[ژ7宭nTw~&F:#2"2Asg>9OZM: swbZ?-);  }6$*1ߗb&݈P*B?uvԕ@oR )$z|j5BC6ժR;bbppRwdJ@!: ݉F3~?/]^:i;׼ FuBy[#o08hwf!:"{+oңq0 Bј/Dlcl!Y3U֢yU_Zr!ZB]Jqt}|᳄D9Xo6yKR[S0k1Ӛ"qvp߽ZNnc^56Y$ZL- j!s2Q>hlD SpO3 Em!j3+9z{"4O2tJm4jL^XF̦RPbOl#H XdlL,ßҐ qɁHR [U 0z2>u-pquKG~Æ/un?@ovޜs]F]C9o|[) ujӕ)@2€TvȠ?kNf2ig@Ӵ c;P+t/@ Đ)Y&HmyۘVMf #d"̵K;!b vM?TJ\ߟGPNEMG?ڣema^MK<3~#Gc)Mo?3R>q ͇HD)bAi.#AoS y`T3\E$^^}'\Y٠J/S _wjx[ɸ3Kk3$2;NȊ"rtC%y!G7ud_$ vK%B,4]TXOw:{U٦ :tv)H&Q+T(l_OXÞ{$ewfPj?QMXҁϤ}ʍ̡x9Eh*-7waO-qIRD!?H Wߗj{>hX3z]EÒjI8#l~x<AP3ˊ"D\ o6z|&B3)E@z{iaf uHuLQ[77رzc ݅RzݍWNrꆻ<ܬ,՛%ٹL2 @k*Zv -i' ոXOT9PoxT}eGʂ 5xʸf@S3u4餋^iQ{f{6,}V"1/7Pgvk Pdf0 Ƴc9mX՝78wM?Ŝ9[ՆK p)j0h PB55RXB M2z#-i)nWDb֬rH+[@Ѿ=3N4GCMdP0N]Xj ' F7FDx zI~I@r=w* 3+Jmp13d\_ Cb&Kک]m<qՉZG_<xh+Ү8z@K`h=M95:w>459IIF2GQԓ &QwX"oYWjX7R_da6@A Cko˨1ЭQbj5O'23* v-aV޷hܶyB)ܖ< f3%\d^2:Ran`ngn5SZ Ji .$XeؤJ:ٓg1%rs5^G败m<~ҞVYr\ $V:fyHKQ@|XGeD_+?"?`P.8̢!*__9|t| V 9 XC3kQs&ڄ;h&Bpp͸A~V~N8Q -*x11Ch$,Ju8_AܗE fFw$J8_(gby k12. WW'4MRj%=Bi0#lB P}-_=D1YnY9/5-yx˝b[+]/ УU@\Iܑ) {#C/@] ;pgO Oٜ;_[ x3f2R"'⣙ G2!/6@[< ?P_-Nw_547TxsGȕx`m N?S&ea ؆tψ%QESqX-+ŢN) /YR/YtM6U)^iPW/J-v]$gEՏJ,RWzҵNJZ,g=s$`߰}sN-ѿ<]Rtb0ȅM<\DT4eѡ"ʼnt=sXIJOe%l[IvE9k08$>TY+tsTt~ /eא̪?"HTz)tۢ&&Fv h)hD2&tֺdVK7 iKmQO/z#}m¬9{=VBgo<I'"Vۏan;R۷GMGu?,.L sշ 9 ;E_De^ciU;uY \*LY/" m^==KwwxV?֖gơ0Ǚ@= (\g1n"۳AcJe&j!g &6JqjV|N͘ki?ꅷ\W[\ęʲv՘A? LS|X!H|VWz :P}%l[h2Έƍ#,¡g]J\0HXK6e*G2a0enuZXN{wɚi@o+/ MdBDc YZF^~k<u^R˳Ba}ȝ2y2ffAϳhqP3l1m;vJiB ?w( B'A|':-n]|Q];:zG_ j`YNBZH,(RlRɩ_ZM$ayG̍c|%%>ĺ b^ .[o,8E1Y,j x/jy[MX$S:&᫯0P\|.c>)M)cqB%$13c^޷S1~阷_>X7Foܤ(.ikhdV9&جVޜ^׹VF&Z[ UD* 0t Sgܐ-HN Z`) WF롈QAH' | X{3v︖OG{$TPA5 ]h ;ݾXa2Ugcs8&_I6#\xF ;{b4+4L=z:f{Tؽ'սC@sT !Ump;;꘤T7@wP|b' b_%Ll*SZ ,-y~ܱ6aw}|k7.:ZgS4h~RPF0crk0G÷$q]A[h 1u3wݥ G%yB\:a:/M5fLuyMf:0YJջkvkU/5cp]={q$}, (RhVF %nKA  ObC8؅_8k,6O&"5RΘ:6o.4b%v4W0n. \\sla.O(98_}wIHNoX84 Kަ.}^Sd1np\: 8y#\rB ȧ4ӷ 1C=݈=D}&6\nG]JJ GCl1_F Sr:-,]G0#笎_f/*&O ~HڱkT~dq\A.UbHFN]EϦfqV)46A},洔)1ڛ_r]=ix]ӇʕOli FT=̻^HCR'}M8$k^ziEa vF`fhP8p^ KBYcL0h6mƃ(k)kF"NlF*5—0$I6c8B{ vr^H҇ K. om9?%sl}{K˽x<a\&iǸswZ7$7%Sۆ5=<5zqE7~ Dl쨻{U1 в} _Xֹ$Jƈ^-ϾҸQІKf[e!Ԛ*V52-^&MMӭ'Bm(J^cH2ЀJ1TzkF(py:ڱ,ю۰'E:):$ДG_ R2ja6DI5lL5OQE'uܶ€M [myo~?ĶMty%,]$m^I@OH䑇HHpR.Y<{Y"Qd:Kw2!`-)% XV-to`B;v: TLs\,ΠmL@{ׂHو?K&X&_N~$ߞtG7@zlD9-LaH9sȮO)نb{B¹f"%'ZD!&r%I4Ncb|ip NF fJ dD`h|tm9SF)sqSՆ*q _ò[wal:Ơ7au'ft9wv?_V9Mo E=6w'N,4 Q9lt6kdzm# a'B舰ojpzg 4(ugi+ zuж0?#m5v[Ʋ) J?"J@A 0Lw5p.8e-u[8(t CCc-H@9I( |DxnpU}r#vMUt'ɷ#nJ>my@j8}s(iQ 7W@y6_fѬLkV.bR!<ֆ,Q4I,2 ltGod% #alR:1%v`(!w +Yo{4GKbЄxRtZl&کYCYj)pOv o\atBLBۺ5$L, XO¸)AqT$S ]9k9-p,t`]^|aPWlY|=Z AEQ><VES#qr%`lDcЖU3P@s8~9б6i}-9R&TcR ?ŧzrޣUGrCe0Q[M?IɳJ C[IQN?@lM{ٰjdR 3\yrWju!ͱ樠?#hz1 XMd_DA2+ׄ ]>D_sLD6>|BPSxFEpoCt8Scqs*TڝgVO,dYmڪI@`<pbÒDJ4;А>#<hQD0oU7C!>m R ՙMEa4>6}Z/aN'qןX@4"n`58'lܔ!IOR"/Jhhdj*8FJQ7 ٱ'Lrnk nxw[zu4lL@4.d?cASՊ{(R~䌂³/2MEgGg`,l1D {|a}ysݬ,U 僡 i:J]<,9w[32'd>FS LH -mxׂ#?V$ =i2]t: l쁚Ĵy3F-(܊s D~Y;}3쳃&릧5K[6`mQ1戨C OY=2:NCsoR~{=4sS[.sVt͑`=nFI؉⮘Ys3 W=[W0қӿXTp3 c$q0RЇѕY~niT..NyDT#Ut4Ʉk"<2%m0f}::PF7[SRʈ;CV#NdO;2*_zy7'ع-^!lğp ^ƈ tC#LH#X|[t$85wYZVidU,̘gy P1h=U1%c<XA!kAr^hՋq9jʚ8ea}laD`oRձ J57D1?~8 ODF@Qtw;6ѿ<{sn "$ʜ~z:эD~Ӻ3?髯D8cU h*q:wW1.z9,ŕGZH쑴UJv-_cv9\Ya rϚp3&oRҬ pl0 T:&/gauApAHCM sZ@؎L6C8KfVdOWp fH5,te7H;^.hHYs懧!8XN2rѲ0%qIgby,eg;.Ō m)7fY`+nڑR+"1:nNً0>jSeh[3g:t2sm 1M^koaV{9<+A03}9Ym( _U* `HSr8b@ _kKuޅl|5#n?{GUI~̈́]2x+n/k^^vţaSW.k莌͊4?H6>aJpy6.TE6w[z~+΀Rf)Ax&6csC}^꩞hۇ\}y2e!d}ώR^S|f"U|t<|Gr)kvT3*|[ p mdP+I~zʲKFLٕW,vY4 _6aħd.zlQlgꊁwcpO,5e9!mwKoVi'o{>6Uas\È2@ǎr.6etE^LT,s\ܭ}abGmNQ r݇hTNt@4Kɑ(.)EG=≣BƄ/DCur76Dx9٫*ROK"/ǞIM  )|Ȩv LW _טNh\Sߓ<1j6LV^/_Tt[/8|ɦcA Xi?Q4@.f1hjR6T Nw"%qR&N'8%^}<4%uteqPؾCmf-oADfkSQP~m Ȃdp\Ę}†iu 2<'R\U)-}DR~;Xf=xX[YiT#m ffHUZST62'0/hgkcQM;B\k '$ @IyF2?̠ ˤ983_jql@j<)̍晴}{IWBO%׏mYʋRw G.T`.G y+:BMEeD4JqUf direVA`8OKoc~ R3UZ7':0B93=49">g PtYlTۓhOE+ݴX}U#*'Zۛ&h^8ز lD^mȌt096 E8#i ;/ +́'J2)m?~ѵ#XY%6--DKSX  3.TOLŖIp}ƀ ې}"[OFlٱ"v$$rX[C%]ڃQ%(99VG{l^% ɠ Ƀ7h];BJrR%ksC?h(\ƚmaפ;ute_vCC6(ݦqhb _17JTBSa j-/U(]//RtöYQjk|ְƖ qұִFF5yhȊK3| En0~fq![jkKRd8)-5 2t6o:lU//NY9pږ!˟< eUHF0P FmmGw,YMi;Pֳ&ErX5ԣ"ܡC&ϥ(#'/5qޡ$|Fĭil $[aucG^Zu]/~&'9ȀjУURˬzBz9)k"3~ПP,d7enԴ{I,ޫ$&jq=km/iD$+O JiR}L)#|A2M%X8CW&֠*L614j%[w! v-vᑄl8Ykt6/"M|Ĩ2Nfz86z}sE_㾄1GF͟9X֕s=<_&Un{P@pZ)rbS=)/2yo;Ù @[I4]xQǶ B!9R4BEf $:yIg$ [nV\^j6SK9D.--gqz9E5uC!#׊$ 'Y, v>Z榌]:xHpŒFPtS9@*$R<&SG)Yr΂-xChr׹Dv=? ȅed{tHཪ;O N(rnGa3 =n+NFު0b]D7 a{{)QWLW7Ux6c30|5EܷntgZoі gk ضQ5*ଠ|Z.<.,%lRqܩ{8`ӛ}"="}wKZvB%wd _$J&g0H8-(K,! ] 01FA=Jf'p=j}zp3͏M RA%dQF7Aiwu;9@y@7V-Oׇ_s&`cCSBoqRpBTISZUO:S.-* ze\r ɹ>Ι7aXC_}@-*]CL-70 ه4m.'aW@Teb0UkCi7՚; GUuߟ2KŇ)ETƍ~}ք0QgХ+Qk$s &:`0*wQ{dL\׈Ʃwzܻ-c)nl8QRٿ2…B,cIa EAy*g^@Y0VT}U$ȿ%늧`'?aN*#1ܱ9$ɒbWor!GePOʽ)޹zv7|}q*;6c੔#01vMYZ 1РrD0]D@X<8w|{~9(>MLe728x-rMC0SufCћT| jt20їzv(;xgϕS3<֍F\~t% =y͍Z1HZ F-/tL-V X\+N4MQH庆-,Nt)PH# ,gcelk֡87wL W4To}WE'ӊeh2X 33rwP?zM [ ˌZ$Y, %a;3+\cFsvF M錶m[P!SeGIG>6"$]X:09wEE&~Bڽ@ֲ.`V.A,/0ұ3]M4_)U-7Sۤt|)Dl`i`x?F 4pk+v3͚xҙrz=!B mt4jF ^Q/&8kZm _"&#)11 VIf9@:/W qX,JϚRG/ 0iЪ\eI`i9 .`EQd~jx o];\hw*Fue=z$ZGD~1:Dg7(t0 ii<%sMF@uyς_h)|M)N9}V9oM5rTQZ} ,y•/tJMѾ{] Jngc,ӔQ?<38 S,iU?|#x@;( \ JҦSM3Y2=!3NI)jƆmiȹnjOydH Z3;$a@OE5M!@49 Y0>S*ϯKcf/Cm/ؓl)CtȤ/c[*I0LJAГe_K}BRԜuNJ>s)YCؒX9LLU_!J/5z ^Ce$_7J$gğˎgZ!Ө5(>f~9gNq; <>1p#]{ pT%`-a^&q`Qwaq>vox vֈ`^Ҋi*! "w͓zGvi?J8AJlBMonU )ekv+{ *= t8+g> Cw5$/%㋀3Wvnx@A.*sjUl]GN:LJ=x FheK6\ŋaU//ޛ8L7-5j$WE蛩hˌQ̘coe'ڤVgl+VfPK(8zvqБKZjw=)"e"~'AIÄt*C< \@\i+ݖ wn=ɝ;0V1Ĩ*-%/t[!vљs{pJ Ǘ,졣CsWa]=04W{h @tH7~6 ~.C-boɖ{3|;R%ynI;FnmPf;|1;В+|GoYw[ IL+noU{3qkM8AÂ=>fі]tq'rH%I8 wyq;5%)wEa^4-xA"!5_g;rICQwiOҦX(ىPr*u%phC#BLuJ-sڔ-ۼno?dz3$$S![AJ9FDeL_MR.Y@z!Duf ڿYM;"\?C@|~5tz$kVP=R LK~#3VWch[̧$m-I%B%1%߳>r61n@cHclސC$RB$ XAi݆+L=A֞TUxS٩V Y|7l?m3Ccy;aqnXh0Psv$$ ER-) gK׃ V]9(e@)3N(IJΘ9AFzM]`9AYJ}Ҹ51{ DCըkIRp ].[oGϡJy+Mh'1,%$rbv ϑ.xV`U$bjMy:Ů(m<[53o@Dcxf>rxxyc/Jsjx# ƪ=XR:{֞CӒU&$: H3^D"O.K\ JlS;/R9\d -a*i,?R) YȚL1 Ƃv@L,VZFYrp]2ِծ}) H*$A]Z}6vkpUQV< u2Qe֪ݺY_l:^etSⒾ6HE\y Ng|뺟K_P0I\'5.Dt3fb 0 n#$qE=~ |w]zR1f%UdBM(IV/уU^q7!/sLr #)P06suI,f?\x1 ~TB@z1Wޝ]*qp}l|"$!obچcNȇ*͟!.Y4)öU%{.H~b(LMxj[m`|;۟H|/Z+}C8 Nl%gwE@+$.O'\W}g} ?kqvb.44z/|t1q+5/|q)!A>kS\;y]wZN^fDĶ*"=NӸ,#a5Ae)6.W<A1o4ǭp|Pzc  f j"vɹk w1 WP`~x5ۂz0,8Z7HQ$Lb82c a D5TLo5W /Îc(e5 ,;p@ug.e}8{rLSNY| ,A?+9cd\XsF2 yEx- /Std3Sk:l휖gwA͆H ysgDJ%"?,5~mh`Y㝘M,pZmccr aSc/{Ю:ʉ0E>G=zaE#2פ8u"-H!L׶tGDVKSZoƣC@nVgsʺ*/~DSg"D޻=buZ:,aùGߔ(ElE^ n^;1B pu*vdpq 붢&FAaGq#RNӻSLNHS jݠj5eDDO1M#m-V<޸ol*c-{kr 7~Apl;O_|4#Ԉ>G&^Mӭa{MȔڊZLG}sQ#{YUvbˣ_Qz*MOd 5Thv8W sy,a5\}Q RWǑK{GP9(0 h EL]o U%>iG f{%Q8'YJXsFL*>3{SJAfkU{P9bKG;9 c)]yHxS6 ]!Ս}/>^DiQͱm 4S !=mt^f^ `uD5V%B0J1(@hdrh!w((14ԄL:[lOu)jXknf 2FuWc93 4x2"0R(6-yE׹17{1j9RMeY_ԔlCI|┶ ߽c&?? ԡXAu˾QҺyuS=tX"ԭIy {+Q9?yVV9|["FŠ{$2-&Sn=.M|084jr;` "+E^d3u׸ȂiaG(qj+a)縉LL!^;tj-z,kwr}/r m)gEwOM-o a ĆPfN#'pvR˴i veٹVљ&Qߞұ*)Y 5RT3$"B^S,þF d|$#`.M =' 0zױ8])84g C%1QMM MJGN+Oa^L#M,E?N/\j.rNAI_!:1 C@Hw!xHyE_FDSʂ9hK!&|^'|ܸ38s98Ww#_2 j>u|% RDa%(+Jw1[`ꘉG0>,v*r6 S߰~AZ ܞ["[N"beM,@0KɻEH6/ȍw-U\ :7FΰaD'(]ZBY>X+mI=Ay Z"gI|*56] JԽ2$ +Z$.|Lh H_q.t⧚MS6 x0 ~TW8oP`4dp"޾=?nHlPAiBetTft*ū9. pɫIr8slwxHo6;iN|ǻ=;hI2PDI֮8O^0kb "{g9 ȭ&དP4`tLQt`_ ytQ #H+ɇ}_\7K~.mkn섡X!R&pX(iDD"iX?-rIPx&neH8.Լz㠣/"N;U[ ݗTi>2 cQ0"daztfI7muͬ´sНu6ѷm:U4[枫$>HvƳh>֞ b ]dbӢ6gJI'Í¢xՅ8,RJoVE)e՜u(A e]Tb=Pqe Lw9!$\K}T/p2,UX#߈\^4&T,c]KMTp^/>PX'5;ycBv(u0"LEDIJ?I5 k_}w1sSGغ-Bzx =HtkW\do \# p( E-#ck5ЦS#J\8d8izr f<:O f#ZL5ԕ]GGaTlU@Vk֏S?JGp{[?Gc{$Dz^:Vzx q+ܠ <]UwUhٻ0ݰK{՟mIx>uARM)_?CrCZt%݋b;j8}!wd} [5KEIZM_ RpwpGè i.zcy8tʷ-HSV@<H**zt8g\v#1@"hơ.vfFՂvbKoSZ 좷lNIK:e,$'U _CFϐgϖvI͘EۃI]Qfuab.`xsb6eyJ9EOyG$Y&tSX =@4JˇI2vEJ:$l/6I"=klUk-֠'Ғݡ>귆tJ%l# XJKdU(6h{L%"-KPwJڶeY^b[rb:K5(]J4>asGE>u dh:`- rKTSޱ;wKJ@aI"h/ F &%1Wj~Q9 l~TC60}JlVLFD1?#ZnKuak_Dlf _k{}?GsYH ab7cU®$kyea8% )Pud'*O6P.܉0dˢNkXOiK`$iL'k!9Pz/KdڽˋVs%o] /M6c ,J֟UܕF-"0.B쪭$| گZI`#(`F/YF)pجh̾ cWqErOytq稵ف*Q+QNw0%I4&w&yolAqM.}Sj>t=Pn֝zX[pּze D vl@usF)A+WF!{d* z6"ҌGl! W%0 3-U!;dN74)HXxTӧ|@LW{] (1Ӆ*hpQ,:p4ֽؼ[Sy؟pKT_,IBG+R:^SX kDk>xnmv#9R=Qw^ua+:TMaC1>+&>DUݑ`lc>~X5D )p,`l](_Em7XH>nlSR؂{MWw?.rɾj=4 iK$̩ ^{aո"X=_En2oW*Z^ f3!lDjBlo Li눐5 qU/4wE f cKd;^ԎoXMLY"HbfsY{Rhe3=Nbǽ ß 3'yWi-2x`#~WC͖Ue#Ȩ͆J$Oڊ(ǔAXzQsKpB3ވjP-`bI^Zc)9ؤ't>ō+bcaiM;tV`﫧,L`gυ4f6z?_Nz g /ިjb] XMjⳍKe8ގ^77XKE"TNq ~kE_]v(#0XiF*w_ LK*oCb:0>@4[<:2\#G4A/P&oSx?0)+Fi`)`Gl ̘*iˇK\rGFR)Y;am| 9U,•0[1.2F(XG8 pZB'[I( sQO%"*NPBb47KPj{=P7%"S>}b jAT%Bg$ˉ#U1!*?J! BX1a? xXH(/f>a1:q[>r(g<;kɲ?mk_+{#tha'F&̈́d4-"Wy`f>Fd)HvʭW""&u8ʯ'xKDېysDMg.T/R.Z OձAIجpQ-ʉbx(ޟ%;uX;:]hۉם!@@ih'BX9bQ݈ߖNUD 6'bȼ.`~8M+M+ؿ5]u]T3qxؔW߉室5Wɵh,kbKvM(ɫ(gğk8LL?#K X76#q3rCC̷> 7cϱ`Aa*F%wLpr U*D+a6B+*5dSNMNm%b+ !z=,6hhyZ}L Ulϑ:^nQe*&sk\Mq9cԑI)O`#<8"^㾷s #65TZ6N ! j[Zʇ{ٓ"Fwm-ʉC.)ey7ځ.I^ ;ʌ 䌙OװX_YNJ%@4})h W=&Ʈ4%s&6,QO;?PX7$9dA!\Hx 0+AቯHd|I(›**e\Ff3tK5mˇfߣx]:⻨81kqzDޔf+a :7g.OA>5$~Nr2&"0@ݑ5|15Rĉ F"AQ֜8Ck޷aryg͟D?˰X _nKUsi;Oa14ÕQlw 6ʂ:Ӷ^s$ >pe: Al]ةK~*7uXsBAwn#-ST9ո-9{NRˮRM*sz4lodCgk4knvvKÀ(a ΍yu9B"77dѶ2:L!GYj7z@Ky>%c:uTspj0 H0͇w1| ⃺D\ثa%Y_F:ʾ|EAq[z"bp#~blihAHx^ʬ|[ܦ HEΛhO('`-gH! b[TPENDŽK _SMCZNDC' h6#w /8(0iHJvN~3Ct(~̝L-盦ݵ ᨪdƈלdj :|g"ӗ#r՞m~ 3LC!s^}Ҧ|-by=)}X\+ (3u,Tox_!5P~_|m ƹRC "6}6.פFeFv7v)s?D:?>7kҬwxa7@,Xb4qp*ɜAL8$ M_1]q~-M%H4q 4L3yx>"G&=ȯp'yttx`'S TPV& &2n)x?-DMERԛ.F/BIƂ(cwՋ%e޳5mHy }NqtJfAmbɞm1~ht$W </3ǔTBRIzO UG$wYexϪʇAJ +2X `a0 T8%6 2K,xTx=P ;28.EGg3Ty2@oZ "swaMΞYO,op/PdT/ORn͚)SY)u"_8r 7vZGXH ֟㰿e:3MY?aρ n,pb 9Mq" ?y^FM2ӡK[k5G1 g\)+&.Law?tZ3 K 6FO|  9hPsf3,T.W%Ot}FZ^oD7VȗBXׁR@ƿK $9 H@JHd=A=2QN8eʼ F9`M.Ie* /&mk3R"Xt,<Z!5[ZgEmY=XWS ctQxf O J)t pKrq |p,Et}G2+کX>Lއ&ˇc2 ' ˡ;X^)>R Z,aD s,z慪 s]-Ou?ɺexqO2=}X^,(ER ?Fz ,t(-vFMf|hlM Er>O~Io©[B0=֭F*GTA OFKN;|޽0p3?62tԝ`x-VeM˧YV ER_aȨvGX1w1^UAL1&vZ4i,0b(Rj.Uً9('s1Q*M8V}mZsՙy=LY~s3~eoF=vTynRTM kmAJ:1a]dy}FQ z +OМe]/>~؛{:~Dx)u|MgLbBJw5ʴo5BƆ76xޞFIFm-ߧ[=-( օkR.(4ǾEt8$Ktt59V+W,pDi96SX>DԿ|apAY(F|sA4#㷒v:m\]ɑזR&D-c|Neu]M1H\^Pwqvp.,<ݧDlTqR?ݨpi!dbhY慁W|^}TR2J('c (W#RYK:. =\"Ӥҙal_;h ;6SW!lXAn䝏+DIy)JYc\%n 5è0SsðR*]5XZV)u#'dƃ $pt璪:GqSىEveX;|/g_E @srjy3;N`'q`pI0fba~:h4Bm^2QDPR6pwӚT>EJ!}f*5RVK*Z ߚՃ,B-U N|tc|mt&lq/)E>xyZH̡gH3RS ~k[:~e[Sk3tuטz< h ;_j#R^{8 '޳0]X\,Je5bG1 oѹ-L/nԨ!x羫\d%ƴ>H}D"#}j4N:7y0V &WOv?YgF) Z=^ '4w% aj4W5ү/إ>XM,+&`pG|tNqL-LKcf˨؝F2e+*8f筣>ӓ~wHGRܲثnHӓ'8 yZuruLS+e_/՝.O66 )f K7M%%+%6g,Yy< .{QJb 9(Y5e=y,NkG_SQ1=pjĖQu55c$Lbѩ7akLT8)!EB~Bsy`n 5"\]ddaޮ!\#x>(ʎ)b:iZkR66fRҫjpv$V-: rRWvTv8ņ2iF5Pww2&95;q(A? f;,a'͚߁Z-ؐx+kD %?뵛t"5)c@`A Wɛ[?_\pOOwrP4JElF2pZń`mi3LB>R]-Hy؉Y=&bsi'{}{'WLjԘITtl;}ZCxZZH9fl~r{ǭ:xcQ}k;rYĐEjXޡB2eK?Z j2^86Mh<0bM0"M\B凩VՁ>)O_-GvfH:``D$9lO|nPvdN=R2Yf2}Ysrb8 Tq vs´ &18@6O{'fP?G;i',O?G*^㨭 iILQl\A+pQӺҝwβQLʿ V 0hV(Z]l`GE%=;ysA8u޼`LxrzsocSQ!Mt3 ک .+1޷aպW% bZ=e> 1#qh0-iBK}dci0b6yloYp3ئ{|$ >l #㦻ޚs }Rcn>O VKq!wL> JaBi)|lS$v{?a#?_!iīXzHYQB:yW7>c-ys{eӈAEFU[{ I2RPcYZB7oW~CȌ@_ h{Oe"|3Q“@A_avLxueguj0ɟv9Uj-k3lF>P2L {򮟍M,N4kPBux~}_.F5%G7MdFR"`6-[ wf.֣(Ωu*-7@v/&e.2/%f E nX5+ݔACޟMw9u6+v҇9_/ngcX ^CsݻOpΰկRfFrJ70jĮ\| aLm/,jlEjX'wt ٸXKuUטď ;='i9ɋ}ՎrmtӮR4d>CpdWTzO+R<,b1G16k"]4zV63R+m&_7s~UH}$tn/2_=6*Qhg0k {Uy`M]3{pEԏɔIiL"IݠDZ6;(ře % 9ye:W 쯱.|nysʈ ͙U7}q\ᢢ7WgYx`P^'9 s16`/ۅܦWT[.ۖ7 (nu،ZNN%87me,)9?Q Vq/!d~%9^ |NUKFeqOzPآsr&mȭn 6_/p/w\v]1oRSg2am]~I?;=:;O>J^0i_xx.q7ĺ5XBdh XL}oW 1&!M֎ǟPfO@=}1m2,4n I(券)-2n[5;abP"[ )!.6Nq3[%M}Ud3BY 0$jG.^r0>%܇S X:(o/EϲmbsCX<ˀE4՝e-6Jvm>sIf ֐,>]C?TEO$ْ^Ë["K loW< 9 yr)Ȉ\^ 2 CbY9{"  o |>ϲ|w)H_G]ȱ5s9^8؁3bc4>h5Ž`sm(_jS'Ց牫Fh7[}OGiN{"`bC:  Ti&Ř&)I!7VTWly15?D!OdN[PNXD-@הjx ؽt M7;dTU\sckڠ50n eݹTdrBꕏpR&R#\ OF .^e9ʚ: CREP:Bc}ǦZ"jj,~E*;u7Xhw^))j| #K?_x9a߆H%p^٩ۃ}K3HY䑙g)I jEj)Ky!7JT,W\"\bR/r"IrE}1~aD(F]/Hqk5-BrC<){si:b5M3 1ke/Yޢ )5U1V)WlJP/('s1OKjj,AHF‰DSf˔ rOnlp HЍ9xaդ!SP^hϢ:ރ[#~coPgB?2g+Z~j1\ƦM/m}S/P Hv,dnv% k qAόOtsXmR+kzz>5{ہئ}qH# "yB?m?F^;+7a0;tfPft>#ZWLY~B|jR{Å]9ϹQ o#eaF>G0vs,t?E% K69(qչr押_Ge'#vu*5xL8faS9]DtL, 9)1j'sy aNO3 F[śjHHl2i՟h# >jL^핀"eA'kyZ fSf WT(U;x$<3!O|é $K'H, mqSu*Jk: ɪT7֙[tɎ.dfGZ$Pd_0V֎4޷&97a6wG$N#Qɺ>Q2 w4 *8 d!ЁȻ6IGu qG2U3#PFe'}D.輸Vl!Ӎjˣ9@lR:k Jl/_qO.7c5` 9 JЄדbrGj9q”Q ZHK :i_FǶ1t_u0,&npȱ!*Gݕ3}?G>YHCLϱgfS`վ/eA]:M,S#_ D˦?ZٜQ˛k`ˉdir48 뿈)lEʩꧣ{Xc[~/,C'ChHd~\7?RCGD4]nت'2m$þ&8vz"bR+|\;`gBz$P[=a0ɂYޓanhC|PhҳDq:0 p'ZMP52k }l3Be5=p +,m$qHHJ~y6!ZQ_!2 biJVt_V1+ CFLh[=%P4*dRCp1ﶱ3tپög3Ќ/!Dy/$@M=e+ǥoA'jz~o \ {Um!SuQGZ@W3 -=Gy7*圌aB3}m@rN8|HDE[UFvdNdȮM>A﬏6uaTinQQtO""+iubZ61)קG|diazr,)/Az;`\[̎~1.6B~g@@4e-Qq%!9#~r+ӄ6&\}$d3'~Å=JhGYӹK6_%X%ӕ{;Ta^݋n"?ܨ]/<,-S ؔV gL&wT Rdqz;ytKhjs`bIYV" pAح7 )LuzoSVPo|9qߘV*Tu\ߥPX|9uf(gk{3uRZsa,gK!nk+U&yBļWTmQm㱸zij#5r487A>C>w蜽iufH&ٶ5 `8["P:".0PgyeR.#[Bc5|ù ] spg-Ƥmofn123m6Om2~K9.)h>|1N1r'ҀN#Ҵj}&_uG\y7l\Gє@ !ߚ]λ !XTU 7MK $YaLɤ GN[\>.9K n5= (5ވ Zn>/72QLj ފcpfG`mc3*xm r4M| AVsm/'SH=wFvA m8RbޑЙu"vﮨq!ƻ26~3͓߮6Oc ٨vi?n~%j>斠 yŬ_Ӓfp+r"Xμ7%~Ÿ@YȻ{oֈPKZgOCO/Q:s;* sdXl]zy4 -ڂb%K㲈$H5RM%1֡"NbtJmEՉ[-LAAzvݟ4"JK;ᱞl~^dLӱ߶kpeSzz(ab6G dC#UY;Re ]cuˑ34qƦbR[QVWЏ_;jz ,#t+4)6 zHƁ T XrRg4d]~9/l&]2Nk6Ԭs3*$W/o2=wP),9Cf^i"[&ȏ`7IuT"֠<ؙ*+ p"p%DCR T-%Hn s"cFC(los 4b>' p Wtvp/ -k'΃ݞ7.07hPE硸s蝡JAvۄcWhE2Hx",rL \ :k1#m?鎾EX7N^#W' <QݑkjVp>Ɛ7) +ZWf# )X@ RN_}6ݡ:L#D*uȤߞohv?=,4dTMjt1+C#-<7|yonsWƒfJ5'N?CJ(9Ԃ$$ߗq?,D#X`8#KUHX]B ©Q|d=C^^1T=aZJ^W_ 4.yGMg7ʭ)[< ,S!(;`ME ^Pe{*Hx }*ջ nB0iik2KIoɔƏR)Gh> Unm"m/SagG]&Jλ z#[Tx2=< FU(d|k?1A2w_E| 5' [4qq2hRQ;JD^`,ϛ&{ȗx/ikf ͧ "&SXN0+? f/]WdcC*h ?p&fRzz xfϞT -6Yu5@T鳨xs*ϭAI( >esVK~gR]TKhʹyiUs(%A )15NxK>xK:R7Oả MQ+s~*tGU 䫲b ]S+RlLp 3mjφ*Q|뒜m,Fg8;[2rv}%4"K  x! c{15\ 3sFHz|-:9Y7T@]YͯܛgHW}㒽`5ZFRt LH͑<_p ;x0[>f-yA2`,y$Y_bF-<:$h`;D" SR(5.D;՞~'qQm:U;ޞCZq'W͠~T9~V\'=ǁa4CjU|00Oz>{ʌ-ve%Bh׫ISJ Gr "sjDxcڌJq[;0l5K;$L Cpk`/4sgJj\^ҩ"lX!lw-Js XH!,Zf|L5p4aĨMX"Q{\ U{H`moE-LԤ ^I-u6t',)kYARDc 17LF*GN{8V /{*8;ھwt.|OJRECL[}Ss Czpu^ʿ␀vn$IR.FБؠQ6,NQ% B&PaS8W?4|ѾF礆/PHYZ=Qt5cxkFr.5rQGgLO3jǣ/IZf؝dw@c!GB8@dwLD+-L3sfì:a~þ[ldXmQ bRRܼ AUeq?q>mFJ˲lSV-1lz\ZFj؇# Qƿc|p0 SYa@`ֻguIi4 aze<@#2HmUZ^4Ó ;l( Mf kfV`c/? Ϫokk"i 97Awo=m뮨 ꊂdh}TEjݯ04(a\;=7j3Gabо#AH3R"|:Iߋkv952Gb OiS5J5ۭKBI]s4ەEcX16NgpaK-͛-L=IP)8`Md" =0KXI$7%9,z2yr9<R8n&Lή6S!sZz2<͘A(JŪ4 8<*zQڱ'UbͶV WqP_V\HXRW mUP0뎯&yhwRmxMIH_IEwe&HrhzK)ZP䃠͍fFg Ig٠^ɡ|bI~uy8n%hbX.0`|@$h'Vv0F3$Dtdei0FbaaI H#`&}T\I@:G i@yƚɗ|/;3o:hL_|{qsipùGcۇ[P@m^o\'1%u6^ÌDx ,C{YeK+7X&$cԱ3_u@d';>PSw  BpXv>%IѮکd*+{>j̥dfJ[\^S$_A , q&Yr Q(i~i{g[?r7v>)S6lHXB՚[/ËA a𗬖PQyr՟C#Ii[~"|vMq('6si™#C/^v>+L^ RMYZ3;dew:.L>s|vJ#6=O].t9K ( Oq2&(@q9ˑWBo\4ào\gNJ/RT|QF_XÑ60Z qُǛ 9/duGscDϾ "5us@Sp Q5+pFPUJE:r3WzGC)AL6QW PWIV>^;gkM&}[̵+vݍwl ;RRQJaI%&HI W7HO[H`rϿrf؎9١%59r7B W̞r&o[[̣3]Y 'F./CjpBm4ŝ|#QM"0#6+[bogb4&cչu$'2Nj/)R7ۆF4jm$q;+JY^(>|/vh  ׋Nnze?xIP~tPʀ_#,8j}.`؟MidHdΌ0E /?AEL,Q~$A~+:Yq|A-^\~S?-P % $y3j.z+؜l`RSː>Dsp?z` * |l_l9Ƅԣ4@CШd}y7 QٚL8=LJ}"S+)~DfyeK7u L/*4j=?L^V]5cOSچ/-*g,sK0h7NZPKl[b1k50EΣZ.oƹ+,wAciOg[*xH|_Zg*?d 6M%vp Rɑ8)lqqq\=!:ۯaSYaz*#j Ricpiz}15#p&YŚIh4(Irb5%MwfIw }f)Uu ,JZ$SZBY.۔ ߳'{nCm 6{N"'Pu4mGCS'>qPC>*cQʳ3+&N:5<Фawn6pjIEҺo[~-,NVY5T&grlU[=.^%qK:,C?Bk4tQ[w't'5 ?#q/LX4+}H"}aԱ9].{Ԍ'74͆ژ }X)QƉs6hN jsnѐ{VB&oz~Kt=mOp;KƳ3rn.ڎMf4#9=v_@h iisz3urB/z^Q杹c20:|T ]IivB!\A I js^m[f:71-rkL mKŜȿ3<;NuǑEA)Byk~NYa{w)G[H*%sb=3Z[)q3{oD+N@?LXHXC𝘉% 83؅\s E؁Fwn$Pnl(h>݄)HwHm"#Wqzu@(V:2:{AC+h-yݴ'+j`"פI}N Ki$UPA!8y9gwwُ<+KM wzdN d[iWęUBx6@K/t iҎ7ZAp10/C>^@#e;"ROHx&?/x*,BF[&m=YCgz/%g8/._λ+,XFv@Wy;V)İAe9GQ6C,6y/co!@G|&,+ILtA^&FEy~T3 ?#Ygc\Q5qԹ<8=:y4 VHdX bܹ ];5\PB:4_%r ԞNdaMP2{DtZ:v 5V>G  4du >#VGUcQ i0=6a*]i_r2 eU^=l\L\z2bVZb [}'< MߖE^r&-eaCnq& ܼӔDP = ŽYZ, #?-E N2K>`i(w{}v6tfqFe?O~K7h_Fn(! lC>7Ehu=+?%Yl_JOug G8 Mp"4&dr:Gi #$ V,x{xv,:ScT1%V1Uy϶t$C_3ǩ"T.ԝT9"&ݳ >R|"I,a#Q~rq!RdVE'el@;tK jEh=3aA0 <a|w\/#uahr?jVZ5%"/u V_#M\GEYkib/EL*%ֆFs%Dzׅ9;$8UNZkٞTMYX5%n܈L)4H HݯFkDϝ[޳pDE\;CYE/Vve!FeY+r̨X}Zx 4L}syF,2uKi;͌7R9 8yޑ:a?X~MU BQb iYY.)8Iıys6@H.xG+jFxW?JP1-bA;́%=Ȭ@VWv-eŔJѹZlُ<{S80o: ʓ:26ŲTBmQ)JpXZ޹ ҷY\Rˢ`[Wm >en %p@ϵ|n jcګЀQ1E}8 Ytmarջ4[U@;qV#mJc TKJ (禈ՒO%;ep0 W$Y+bKBh}PnU7}?2ׂH%`!e Z`ebf وD( @7Ƕɭ[)f{$Rb.s@o3-|"أb1|S)ϰ|VĽN!$\ZQwSq* =A7?KM:s;<8ҚLo̵]*eH9s3Y$Z>燍:BX=R)}Ǖ{j|beЉeȧm$X6o5p[ڨtѻPBxՓUiʅ;J:6{9ٜS Bwv!w SueXAi!O*藠C/ӆoJky\ bl71>YC?>8}>ԧC]nk'zk5<楣?$F&VDl\;Z!ǀ$|}lLl5P8ٝRrt~xSvIq:{"AJGP@qI pږ8$@F?j$;߹c aJ1U t*|jVnw 1| K0agW} qYo'jJpߢQq2GpװV =3fR*8m}Nڤ*00TGRG #arNc݊+inRtpk)~sIJ([$X"_;X[p‡2%|B!ܖl>-0ls_l}\&Mr_Rkxl1tiy<=&G|]w΋kDZV;C!ڢu˱|Dy[\0 J"_ݞ Êz2,%}P},D)_ʑS@ٝBr|\= 20`|1.TESzI#_3䃟?M)!PVIۡLtL;a+zc[ Skز9LX1ٺ8#|q S@ݖMkfYuodapmBUxh\ʢ7=]${kMY7d%驡fI$\uRgwBa6]yXɗ1GTLL{zܢ.!ן ӾviŴ} 7-V2Aﱝ)}x>ӮX#g%vQA[ h,LW1C>@h٘;[SޛBqvRslӿQ3u)42V7cy\ y1#巜v.ly0En'5G/?j[ דiV-xGhN"#U.ڦ#D8n{9c'?;5{JN߄A7 ShOZ%|9:Fǻ0었ݴ|ʾoi5Ehc9c3*WI;p(džqeK4vonXG )B2gc+v>po(ͦmysU|taUd޽0"a$* [7*PQv&H&c޸`<9#I^ ~0FI[p]S"4{ l$eL~cU㯿W$Lyh :iL `e)Mݳ3{^8D#WoVqH.\2y ďaWJ<=t = TɘV䎟RWY<%=:%o$.[>ir@괄 ƦJ*o~;_̑ҚIҿ^͟R6cw_|y^f՗@d0|Mq>`5,YĩM]xGfĥ .~4JgӅ5rvuFK\!!N#gk|CJ֏(Z#mJ?b7ܖlJW%bI!ϐڷAcP{d$qq*yK|V@>J)4 (Wk 1DacA͝]BbYHn_%k six̓ ޹2 h08cI䐰lv .,f%Hv+uZ|RlhԽ>հ 0x_4"ϸgR@#Y`P s"5_Lw8T50|>8ί^-<QLot ލ.hށ}:- d2'2 %e>}no"*oX|!Y, @pA%`= C;\;Ë|5kg̢?O72sPw-{X7:R*7LvgсU;>\ESu{U=beȦJUaB@2̋#{BDڇ.w!Bcd_SaPF,!195[Dwm6i)n u>RԮw#Y%"Uӳ14YWТ߃TX2sK].&sIdRhޤy6XҐ#:Ҏwq%YfdNt5599cXqw2oImHafЩ;\r 6 M0LֽT-SNS#]#`.vo@q`v(\xwM{0W(K;9ՔsxJ ˃5dT{?5n]4ҥE\'ImuZ (<60vTJǽȉ3T.> 2sN`S`CEȆCPj~~Lv<#ß<D wIBk@G?deq5KFüg۽dU߮,fmP6[,*5h?p\.O\Sk:2F E/&B* :a/xL5Q MԬfEp(W/p΋ 9Ypj:?%mAF1yd9 ˕mn=MC`g$w{XnfE) ;;LÑjUTjho.ZJa 4"^WVq.x\BV/#YX*O71s0F+p^ѓ|bϴz='>QFXhdq8 ܤV&V @c1LRLbk^o)Ļk)@v dk5n:T KS$FKϲO& eIqƷӽ(w@4<:5SڿsNXwoB9T*h&gJd73W?͔;wp찻5r-xkfsjl,cUE^ .v^jLQ32LW('67S6$ \xF E3wQ!4{[J5dҚD kHupB~K!)xu/7Q3' *U@G PE8aMS43X]}tό*GX#LP aԓQ'n!d Ika0v/E USDzPO|fƹ{Ћ\8/pI#%ZJd`A%T:a)؍XMz|w#bA{]_Ey>1%d!3lUoO Vg?"3N?iĈ`|- zG+Ļ2aiuu .-3րٓCEH>(,mtr9VQr7x[%=;H>]/89]VNj, c NV,kL3ʖYB-(,&\8ZAAۜ'#7L\R&g7Hdӟ42߷ N3t墜KKIc6 R#;]dM{[!-VҽZlIv50SE*bZlOw5Ep}?}$>g>oH욣 '= ~3 T֋/mKٓP6Wͬԏj޾\r 4 sjrìh}SS‘=?+-;rڼ-KVٹ}lŠYd.'\J2 7K4L:&G|TW+)dڼv$g{'_tAj q[9XST`!.TK>CQ/5 N swPH\f%v)0n>"ś r1 5`[2uPw \w芌J4ib .F^!'*+n ~17S]w։= ժun~ߴq#S ɕ~~jDUtzǕ Jy=2r8]nbG` fbeatE5!KbY#n_=o9W)ʕ/DoaI>((u wve2*|1_<%9=Yx"?ji(#M $fo|UrF+ _C}k8B"T?J뻶u<VOqg`B /⣆ߥRPB0XoA4t+.kib<&GrG'QgU3˱s! PwgZЍll:u{Jf,GUd6?}@!ԋ/n20BbεXy43'NZI4K~RB-9'6T!A~,˿F1|Wn`sq4lڕwV Z'Nl*9NTByx^V1^ae"(nʐz Ŋ(iʸYM? l%n肨[ۡޚR{6WQtǬͷwR/Qb.FoX 8ôc×~(ܣ3)vAvO{!82c*+ZzF" z.W]*6v2)F84iElu6J9a-b;p[ 9vsR&֣x]m-|!U &Q ĝD2'lC ,΍w1R@{kE=5|_K#dAy73}c 0 ?HbfHgԻqmK33j(_›~MYX,ft^6Ç2H%3~^jL}luhh+:T9a#v;vK^7؅P/!P'2FbK:#0ǐ䕱!{d&{ eBGQDzی#VH#:+ZcXzLL >o{tP$Y'Jp%U-5xL6 j]HEuCS;8賕TRtb8'M,,PiG؊dQT@EΩR6SF)' nF&}'H]\3} bwC *rgJTz M15>T+}T_51eb ũAt8EG,kx^sq)0tz&nMs }sh&k_6C;?Gojʋey⫟TtZt0Α 04]5Hf4@]*kPGv׫A"^G>!P x=zO!}Lwi42g ֑rlȂ!?in<8̓vʒ =f i_b֦".[:vp਍Xb!{wUd-ލ@آ]Ӝ9:"!x]C!@,sE]Y՟'%GR~F-"/`ao_T,F?\8;3U4@lc?)F҄?Rf{jßFCnؤ1g8qe͇׊/xŲ5 1 ko ϝwi^HVIp)vfYV$vup20J t(}}UsKt[2~\mg:=u|5`'2Za.Y:1%8_߹H»:}EFg?>B/mD6۽nw"+"n 66('Gr"\USTRqOL +@ZM3lJTZ^xZrLx@ȈUNx+hF"uj"U"CwgY57( iY섎2ΛQ׽ȏwyl{5<ǿЇAƢVoUڴQ>MyWU#K 0`RIov_ïėJ '|*k"i!7L +;"%W}+`-N#lrUC?]pm$քn.~u t 9gx|Gs?~ӜyQvOAGAzwS~Pp.ȴ'I bljl4>us\D/fԧ54γhHC>1#5>kKnBψ 3"6rϩkdoa!qJ^=N=V$*(:lًoD ח]dEsU@L(\$5:i8,Ca͟lۄGCd4~o'Xt;}=̨^"ɦ38rhg/6iqf~jQ[}ʑv T$DOl;OI]\|fqwԭ19oUC' Bզ0_79+E%5h*= DaKϓ F,U+\{CT&eV}-1b&¡yM 1Žx _0tԮXDs}%\"=w`SKEdmL_E+y rBo$h?<Cd7L _=IH`/9čgy~xcfY%/J]F.¶77+ :nlTsg!=g–޵WJ, y = ?+N!~Pk&`mݭ/ԑ&N\O+n}T s`)y\#qANkw }Op%wWe5zZWQNDOX?hϨ*գ"ɺ% ܤ$K3ջ8`5*$1 #SN@h.buu | ɻ;>ƹЛwU$fȏ%u &`!ؗ)5J#ଌ\TiNhIuIgcbo#;\$]G[:+~c۲?hh¹Br'XOrX\9!"z :IW iL<Z3n~qmDreV{{ SIIw~MA%n3T^[erix+N2a50Ϡ`W=果H% t.*9ARb&Z IhZ*ŬܑHә1pHQïoıD2ZvMH'd=sFEP9L/.vNO1O;M`C@N^6 [6:qeH:=4&;;|1ÂJ*]cs I.OqIA[O7=r=P$Q]usĝ'~*2 pa|y Dbjs4Y/[r5fKhs a'I=s ` T5V> VWPt96Q;ooe[cKɐT2MWАDWm惇w L od$dibR&30uQU auܦJly&u⌑CXH_vW@4AxviX-#nCV*0A}݈|-6ˁoPRAK{]/.G%N/6ޝR=&IF,}"dqVTb!1Rpϛrp ڲѱ9 wrBE> {;5sĈs/+C/$[wN5\yz8G{w3PįX` f~mlS`(6PyX/rf\Cts_SQ$}c6һ45߉Ɛih L4_!>fڭ, pTQ|lQ2'+$WS<a)r5ZuPXXȸ ~}G^U\ikOoB0O  u^ YTXhW/>Yzib+ԟ!67@#*/߅" ~SHf @0{zȷTAWV5d7ݶ80e\m'w_(*LI0UZ' T}DvLbŇ'7dޗS1LjY^xo+D6+8ϊ4([` O ~1qM8#N7 )$1v7xwG@ mMѠ=n/`7y c*^4̈́ThI#9ɂhʟ)oOé[cbb9X'77MtEj,(&|NGgLnS>A#q!)mw~#0 5 nŶl9:C6xo 0#7v}9xԍzcWR$aXaa.Oi7,5cyյ R%GDCKk4"gcX"iܐxYG7Msc#MdR̜6Ha@6v{p{.jsP 6=r]qS:=:7+7}v'Zz/< [OE wfoӔMgjwu-=5>]A XC8b(&Q[*ooƀdF9:I$\3Iø+> =a)P뵸1“VK;kGrGb"«om  oNV>z8דqsDA-E6KU$J B/rq[",/{͘QqD6^.KW/ܯN__wpH{Y^!#aRuk}xj0"NUaYaUFy߸ZDPExWK"pd#3"oZ/W^RZWO, ׾^O_ϐT?YOLB`au"j& 3YWA,H";uK9.0s_`lpS? %Lw̫7Q2I[G]H}=4PrPY'3RL'n@<N6lK(laNCDҪ7s D Y진$G%Y͡df'@G=>7p9&B!d4 5|8(ڣOhM[w?NK,KuPVY5Oo+nf ?5 uylrX©E{1HZtt;</M[ * )jjV1pQZد}>.,s^ ?8+u9ݟ؋øGt>fo|)땝37Ғ'ҵI_|Zl$$,b HL妗;/皰zy0k9Z 9mW1 dxwPZմ,l%Fy1ͤ4FV^r^. j$j"2 !0iHw)!A EQZCtD@6ni:мLfq^GbܿčQ&dR- ZqPJ}IS <8i1Dؤ">wI`!xrlB#ܴxy+u|2KίV鈴īRúdT5H # !s\ M_r;C?1 dE cB^oMK` "3 +ʪ,dotmk6¾κAM0* Ӌtr:6>N Yɮh*zB@)2g 2(XX ׻JfU"y'C#11˝}wds?O@+_F \5FM l87(a^q-!vJ^zum^sms1"TXgc<$/0cZds+Q~F6WklB<}p0XZFvbxo&:I]MLO/E)Dۯ?)ʴA K!J*YMӫVZ0QE-yȯIxYb`̥1_GQkإuT$|  ?/d`M4̓'(#~_Lët~}R5X;1toDfdidL>wFV GE"HW3 b%&,MuZvg[rTFki&Vh#~YodQnŗk_{cJR~QqC#,oCmCxv†*eЋ c?}Ak^Q^) n5uwC[{LմQߍv7qHb?C0&U B j4#a&>tahM$vKZYΉ d`@4*;wwT9ϙP0G^#"s3A).*̍=n_i`]JH4MG05/秧_/tjθ/w7LYuwJ|gl"INا.16@V0(u+~ψ ż>EI8xהaZ+VL_ҁ<LKYqD#U R%t!5_} oi;pLU"[ƪkj<5}_3)n⽩CG:2ݽ:L݅Nb90A8˔+լp>[4 p#N˯pv:moPud-ɯg2ȀP 3BXS~s*OE{bˁSˉi~DŽoh:.$S;Yήx&,>>Ki &0Oecɩ("١IAݞeEl&F:LHG1375wm^1=+嬮B&0/ߩT \i![٘@hD)&QةϥNiݴ/׬v`&e:2(D<=RdR\ l=(ʅ'%İVMɐPԻ}3}bLrNlĖ񅒡A-???nvUP=Dy/sll#K/ h߀#[X3*vd lUBU@bq@W(& ;$R|Ժp<ūnbDg/{j X(J,h9:k-V0_!HYYu-`J[n^FOM2jo2׽B~:sW#I+)9ȐߖsF`̗v#sj{;c&7! jGI'Gȭx8?sgNFeqy-n~h3oѣ[8`uwGNerGy+I| t/:('ǔp=T/im>pU378dη^-9T OqcJŊ9k GK'Tc{C8;OQwDBU-@>_ |MhhKR#Aq?-A򾪊"u +E/.`X68-;dzv[$vzi+cVw=j eQ=EgUe4ތHVV̩;Z9A DPѻ1&OTE/ӘҒU̱a5Ηbeα2պ' aIyF$&TE@LhPJ"ī#拰 ETk#v[cW4L}@BpU H֗:hAPJX]ǜۡdtP>#?4 j"+⍢U$PtߝdKo$!B4]riJ\ױAOZ_ 4[_>iF[~ˠ ".H`'-MnyK[˦aǘo_IH )+ 0^Lj2p huP7=>c:``\}È`%a*ilц`jM\&J?R(]جףɔS+pT4LAeb6x!(MVyê7߄Ln ud XD' pc ַŧ!l!Nϼ6cʈF7oZxZ aSmx9GbӒQ.c0ގ{3cd H|1&ukTY=U\@"uLTeV|A4=Qn[UiQ-pqexNtV4ö |F Fۿ}~tVӾT [iaAo݇rbp$(̊5{1/)G 'G^`mk$) &iX ֻZ&iw3<-jѺD@b|?}D@!fc큨^TvM =\jC$\?pb`P=|%-{ڋ˕m> j>kEZJBbx~-xxD91~?0֮kUފ$e6bYu^bfOEQz2PP~I OCsB|+ErZPIѱmBVSR%ǛEP>w?GhïGA2 `u0]켼FUХ:nG{ϙ, ,a'SOYsŰS-:Py +|cDԌ@I_İsф .Ȩ,٭5V\2 [-cBj`@k_a(FC\xڮR HJQg6˱mLWderODk摃RKUUFa5Ocl+kA򦍎mBȂOc./U^Iw/Wek=J@`RlYm!0ӒR 0 gtzZa~\OybމuI44FK;Z~(YpQpz^u>jKJ35o2pyaSq@#S[\awWRQbn}6I+ ]dhW$ {.EqJAԔ|5N^i8P+cg Y.sϜ=+}ϩ7|aJ&"%C(Y,)9T:)ujW [#۩1.h7:րN0|f)DW~=,!eԎER5YYxnb<.Un؝aƃZՂ鄔x "z..Wijz\-`"sf)8:cWe JJ9r1Q.+ae5~d wH! ۨZ[J" #:gmD ^'qMt H"qLC +BET{1rd:f'~}u Q"MjX:%dSkح+od-]EC]/JdbḅN%x!#⟖XET]@[uA@yТyBzeiN{q/*al!7qָyZk8w+[!)jόENOӼ31 6m#m` %aV|sZB m镟oZ:M`#.@qƆDtwϕaLO{$DzpJQF 5ŐW0P_8q7]H*&㠀$!tlU|OdalŀtM_ %l]"lg*Rrh?ÏSyhLWQD2ib_/V w|r_rOrL0".4HL(m#6z*@t]Cdb +Ej|E'<47\Ƶ[qd iIuccŒ۹eUhI6x'N"Q`%V*-TBr倻 ٚB>iڌ?nGZ=1ڽq*R(2A1+괦Gw݀E9'͋Dl/[ aW!(Px։e%/ *$~!; Q ZY`^<سxӺ8Witv/{S"rx'XG@sn'G!C&؈AEwH݅ HHcdjlr Vyb}eQj!xŰ=Կ) & `I2.A 065ѭ*B$Tqg潐8^֥m>~7B+U |F3.=pPi,ZC>`SHǏlcֺ,3[IWEIfW`6ԡbbNbt5x`dDDF[c{+E|&5Л3͒'p'1:)ax)~EEM~C? 44: 'a!$Tj"g9%놻Lewρ,Ƨ\GA$~ňY1r !>nD(Q%A_ԠXC`2f.4#a?o\U[* p*s {"`JX (OEF5Eжuc8&02M_u\,VVȈzבa2;1(l[2ce;EV Jq3}7]A ?2`k:o KH0KR_(6tZȄϭiۍ6B&P7T:K6z̋OWpDfnHǫ*[^l ́pwmG#n)ݥ-œ%@~8w.$m.雽țyV08in%e4KNϲ.~2U\o:ΕD\;`p֌*堄!A+؂|aDBXyn0S5$8HG$kVkg;S{nfFG'%ZX߃YvT3nzUQwq r ۉ|mOϯe~hF[ۊmJ{\-lN1onKsb=$# ԯrᢑұkN7s̖ `n `(6}4d`p-ř/CFPc{9y ~^ldP ܗ'PR Pnq54'"aOǍw^Bv9^JFxY2rnӨXQ E TLqr|NJCC9?t?tC`DuH:wkpsU4޾?٠8!ԍ GJZSwb[ t=eZapD慚ڡPi+ɪQU_K;' - MsTac)n㟚qAd &u[U8t0u`P^@gANݑ>@oއgjRV:lBr1JIZ'!F0HLtTS󗭿όIqWAZOvqgj$T'@M_Awe!2⾿;Ql>}p0GqwQ$h(g4L3 ļV0Z8!WWQXhCp|s"-qFk5ĦB^чTE{K^ͯ@abMGR nU4Π 8$f{cInB j[bۛ %N s= ^Z kQ-؞*uPRb/X؜% 8wfPKLaXGɁ^T~J2£ʁ 6+'7q ?F{aZZj;m01Gv_6mʨ~b׬x 6dM"xb®<_H`'dX=_? gIHjrOPݼiI+*]` P{@ ȍ;Q;lYGXмV`5GG ''#7;_';MW EDn!޸ȷ߃#rk[Sr:oZ=qHp8VhByeFh.GLOnz+;֠,Sg |udٞViYЗdS,S@,,qvyg$j~v@8\ikAyp#_zF/ ^񩫵ͼts^* 6|]"9e!J-&H [i$ Fo -Lw.ϱd&B(Qk-uw9zgY.YW@= EYv[)bNA/ر{-R3!#f! "{4tV -7w^T:sl)4Y=l9-f -Cc/@كtd7Q+m!lzKwk+63Cfܓ#Fݠap YxPEQf./UYt"L@ `ZyCa5qfsE<>-'عlG T;"D|LI4UjcwڃPmuWszJOUêJ-Z\Pr܆K$jصCNvy{1*Qrm&A"Bu4']ii?m d"9A1C<a 7~K۬7#BPo*j^XsfmԲeuqtgҺWگ C$5CՒ\x$acte -'18uEPDB>{ ך-+%dOQ3 ΐ*Q(}Vw x]4ghx LAn3ee""Ђ>od$a9ks}gM=iӁ[26-x ;g8mh7ADPeQ7G,SFQ=2nd_t|-Zfan/6|e2? _5gvpT8g}ÞAYAiѓ6 O=!S>J,єr!:Ѿ'ToNC2Z3Ӂ*(s||]BY/ [?bNXؽV8dGnI Ww\[3. c0L-/Z*'z|KGIZceS1beTTF l{ꅰ8ĩGyǐJztsVq/!&s'ʖbAHVnGv^J=]zCK.# *3D.>,h$=wT=7*#}_Jmj]| ѻ@)'ֻ5=DM@YkK T4Ei%7f,qrtqly&}"2ooQwFݼ.ҕ' 8|aZ/V'ĆHyo֣HUIB.;nw0RK 4]]aTTY4r.^({),l+-a">ה+>W<:_q5*swB>"ER@A}N\g TpX;~fdu.e +L@]f|D_S %SyΗx|׍ϑs0/ۻ&@B+O0&utG\ Pݓ`8>o;EgЋ^ o+8HYx{G=[],u(HI<eoܕ 4s@Z|>MhswϪ!+QS_s.#{"%`?\{)T};,DuDDh/GNBDr,=n ]+ mlML}@qi``<螸rgvqlwghiC(I?mK<У~qt*eaY}+"/B^o߁e5=9*b@=SAC"ȂmOBK{Lkm }9s1.3{ZTg2# )`e~b ֟.I,禶D< OWk9J]Pvν2!+՘_H 3mHETx"bG8"!nұJ!T *펛XU-RזӁ )/B!4يB+y?U )PX7K7hn*wt5bU^ԯtx 32235iFT23}l;&LXt@"O"H#21O ~)ì @GQ]AZ§4In-3/tEĕΛG3+"£eP헋-S9JI2; Ԗi)v C\p3 %SބgtR& bnls7 - 4QK6wXJ|CȲ`sN?It}o s$QJYMoE>syq Jy̐r; t3&6gU * Cl7eB{.;ت>Uu;Ksje׼y[eYǩ?OPyR`gth*zm%]PmPpY-FdQYWvmVKH7Բ6uB@4CV_ +zb='Ѿ@B3$׆T\ r9Ӿb~ۭ|Y|k0 h)WW:3AwXK;%&XXm( ov?}8wڢeQE %KcԠlLΖQeArѨ%Yټί>(*YW[e ayC+o^;=ekU9;ثP۟X8k u["A|#ШB;v+ c5#huyP" Wk e v\s.2 p[L ؘ > VyAkѥG}B1dR9t8. t yepo$U84{r?7BqY1xۧ 8B Zʄ! ̮?q a3<2((-eC\(4vTE)4m)8ߌ(ѷn;; d LՈE ӳ. k9Z0LT14ir[W'xvw0}򡗋 ut8qZ|6\q8;UNDϫ >߿(YT~U_ŕ%VgE@,ex ]t]V r2z PP+`@M$MQkQfRQC^#2tl6\P񋻧b .PbA/a)T7 `}%4t#&FiJ)ܛYVa[$F- <ISIA$ׅ./P]zpQ*D߶s .Ȳרxm :iqJE2+5.Vޡ;[Cѩ:jdKcf!`=Mӣ[(2ޝk0, Ԕ>[ BL(hNEU?;n2tZJ{D1aykY37~iI. SQP+v@,8'Tfi &)/&x}F)#Lu0+ǒh&a̧?z4 fr.1 9r ǀa*0yf -EhJGE)%AnHvY<(׵QFH4/l~8m'DM|ZCgll^Z$QGg/w]ma~q:z| l7a`(tFd/Ba8+۱l38|n^,K2R 0@+Apn8Y~DvZv4d-^x_lIO'.-+O39HT` t uq:Q;miRWy~u3Hu$nlJhqj,EzHf^C+R`Ya(o!~w\'S;B`W*țHWPf5}Wdt^"J~s!] yS|:1J.:hZ!U܍1ȍ *'B8=`ȿ!q'c]Pl;M V''_U.Ily^#<(CQmwTdAy /!kJ`@12>2AxWОW&t7Yrj#oaLSW8?@tNǎЬ<:k?o&-G^|r#U\_o=C#ibxi'O䲺`r,ܯXtWL//hǡ gzr2V!N9w =9ݟTOxGSr[ASF c@qJKxۄZƄx_f1ؗvv5R3QZWZL4{>rI;2cY\Eh)9e@>,eUy5816IJΫ4 )F^e|B W@P骕?횂? *ⴟ^\;]VwV>R7BDuLX-MI9Lf+GwGS|ζ$gfHɜ^\tϏN۱CJd/ŕ{9gVVruhϛBW58i@yl'ds!#3؜T7>#Lo+Al8) oBsEs+  {j(X姹pQiVf 6Ux@#)Rd'= .3 z*Owal:~F\Y|G*V@M_FHM;rVWCP}\[\C+[U#m{yXͥ>Uyj*?,o(aoZkf 4}MW=Vs<\ֺx9R8=-/jCb%Paz"=^nGoL#hio$"}T`/y0Ik{\8<,)Nxw^d4GE+2MR#H]ۜ3⣶\^}"*]HL9!m+:>GivC\("zJq4 .%;q6tKu>x4!ZfT8:3-dP۫fzV|s:_W-Ta%tH1 HF-\YzaHVQRM\M.0x*4r_yZv0B:gW@~qe>,/`WN>VÈO-cI 5)%oc#n{1ϻt 02]erlW\ 1`-2y.bmPy< T;۞`YD۽OFa_u'+E5~-rr:g?Q;G=\/ cTbbz.l3$2T^`N:Љu69K2k!v:ɞz d{*TgyڧANCH!Sv%{cH/qJ7gNDA!=3eBK]z5X0 T[( ci~1oMHA9-\Ly؏Hf=巟 g^L9>;4`-Q `@=i8ZoO6 WͭUΦ Fqv|0N黟kuEQ!~GؚxB "(X>,Q3flwe@&(*ݾT$+ *{18}R#i[ߒN ]n}3:iW#PRQ Fb%`}0$E޴*K'J0:_: Xms0]kP{Ă:4#G-$<9͆9NFw:6`4UfM/|LkfsSmd4 Ȗ5EV~5E|Z+7I,gUЛ-h1< 搛, T /(SdEV>~g玄`ˤD|$w}Ӎ2EA%87EkbmHŲ6qxjn['z -~cO'H쇎diN5 &hxc3\""L7)9*ϔ%m@+j ֎\R| Uhn(ęqި1WVvua ]^+IVCKVK<핢&lMnseJmFhK-kG(کtE$?}>6 ؘ=:Zc) 1dB =z;(.%ϩ ^)>YJBQhb9' A{TdDW&ʭg^ОׯaDB4/HX}~#am46Wdmt#N5P[ܧp(6[zFli&겎J?/%Vab}a`fzK*tY(3wEN{p}"Z~VYY58a4ݸ &wjli [X;>ب(|>b>6%$ {)Y*(Hc,Yդ̘R/DxWtb+ 0h.l7(=C}a( NXK!ǛY"mPT΀]hhn*{(d5o"@P#~9[}#57Cː+ij]SQAgV*-LC :JT#YC$?od:K7?`Uom{P}@z}K:D~G.!cuE%.BL&ߖvYPcCi)GsD&-. N$\Z l:N;6A˒e*2lú`Q xB_"\dbzhQ®"ߎPwVhdqӇ-z$ȧB&Eyu k܈ҭx|#X7bCiYwgTX쿑,5 lS1QWfu$OڭANb54s> ړ?e3x<>kasQOKu|wRFlf3 8DL892IRT~q,تbF,f0lՀsbr9_X} ;CJ6 ӊ6M K=)Oݓu:dZ٣""<(X;.CS+˭i 8p7D18@6̴N#P)MnE]-B3q>IԧU4맄!}=m4r i~aǕ_~htwiF~Ű*kMnKmtuƉgfG͉Wl{H^U,[Y4Q>!=rt,~5D+n~ܶ}5J)*a:¿Sj6dꐘ'O OA5Ne(ɺdc4pH2 t5_nHK-bgHd{J1^ﷀ$nk&ڤTծCuGbaN~L( FpP=8%spqO`auOD'$_5ӃqpĮA>,ZA@c 8G q#dz7d{wOG;P̜8Qll/]f-80qڌ>õw817;"7Ľ )?{0Ϳe{_t(!Kg{%FO  BRٽfkKz+ǶQ= M#m:^8Kg9Eއ P '56e-4U y U6{\*b5xco5I*X>&|j?%c=ާڶ/ZfwYZ\P6Fl!,V+i([9V^Tc{;]7v#k(9[J>r [lB:Q ( Yj\}TiBm0$vnym iL>^W>-{D wBʂ~kD^싇up`!f"@qT(iÈxEF7qdYXl!GY4@r?邈$0{āa.GCw`\tMèhwK>Dr>myC)ej?fךEoO^v<54UE5řf@A?Se"*y#r6:ЄdsqXfC;8&^G"=Ԝs&. z}! n9HCmy+̆/nJPF<_E6bi J_8N\yRS PS LU$#󅭐F 9'8C-|^.uAkg@H|W &7iH 9nhAPg59ϩc m)ms\ {J'pv 3Qvw.zklwinukț)?'2<>dN-j2(3غ',%;q, J5lT&C$?m( xk#"!Bϻ)mLM8]hc5Z31!勻_Kϟd^"6`(vIr2gmyK_5MWfaomzOdi~DY_:ҳGzj7lv9EQh`]WB^ [ͷR!`@+Ÿ즪,Տ R16C:hY1sJe F:S=MprR=%6&Ws cOUDŽ?ʐ <`or;X7:M UI+^4FWWGZ}'Ԓfb3jk![j!0I8}H:rԨkZY sAR?K3}GIHi`/ ۈnͪӠED*_mgd;~O䃨 rO= ǻ CNkliEbwў%~[#3+B]#vK"c\v4oʍaf|^^FDvG/NeW o:UN:bFZœCITn]Av A:d'Ya,}g#G%eǦ]R ےYN1N^CНO3J7![FO ]D c*X'k$Cus%y,E(_D6!A50_2@|TcYښ7pEf)R4ٳOVt/Rc"\YWۙǢ; @iX(%#fkvP3I\וy2Pŭڻ1T;KHcsG7'֠1cD4ͱ^}̎)WeVѕz(v;V~ ZGYC ϊep$iE~]Ci QdqB 9MQ-ar%TNz ao94݂EPփ:rsˌTU?EEdvzLXӫ $Kxo]Q0Ƅ$-{<)$W+iv|E4=ZRvJ&(N#XвBr9gxD@hŞ8 115ÇE!yE>v ue9LS\- Ѝsdx,sy>8PkR)x\nN%"%h tTzW'}B6c] aIz^c'Ɯ=05AF)ƕcEmNYƸ:9q[hh|8G+/p@}a)03X뉐|MHy @zϮ2 "(/K=[^ÌjE׮\cHюO0$M#ALwJ !M7TR%ZWh!yuܛTrCu-4\[ߥpS'9o~ t0q5+Rp]"í?#L`|Kk2Jv)F iC骶/`~c'C=@ɐOw1SLXy!k5סi&ސh.q?F UEv.q+зi)wD|"Rlt({'tSOy1\8h `*d}pHԢTfpay`v^x:ZUmq(1V>O?ĐЄ:5SӁ2[g#-,;R($=,%Bs^ɰ߱HKr{ISz%i3r,uH?8~fW'P\$OR$PÉVPJe [>tPPʆFxj9g'6ԉbḶo }r,n:n!- ٤Ϋg@& YVnBiQ-ET5NpE(88c1Szkx'ʋ*$M1Өަ}dz9Iqzbm|Q!b/ 2es~E8b)%P)ʛSQH/H->ed_ógeuWxBx(}T;)؆BkG_!T&IjS疻`,ᡆL%!0Q L$(*"KvF@##튱ϒ1יT8gBn_(b5uX*4LN[|e | g@NMU ?0 ,4KmfqU ǘAؑn5ZLՕnt;$\2CŒ};#GFułBb%A:~=-ُ56)'<>Ҡ2eMR[fi}jsw"$ EC`L i%&=.&Kٺ VEyp*kへ%֜2jfR$dGr) c5F67k厝Yi,%_zŊ"%S:@Zyu;1:/ hBpiH[{h_ {ߠ;aO\߿"dSrG JvJ F#ŝa$<؂)M-99)2 $Y_#^|ڟI%s,.L1+V,l jUvu(a[s_han'nܠ3ZqI2j8cWW\{+72<hяS Dn7CuM29p6ql B/(Z"(=[La" M/}_V4[&JtBw\ш;l>jI?;BJBm{vm!)=lW)-8ӳ8i~MD9RS^r*zavۃxmOXtMg;R5 ]}wչ1ӗڱY: 0tU ;R[ U$yM=Cbqƴatn do@+ 6Ь5v:s;lM!z&_E2}e`ZYʂm;FKX'w>H"6LT!;ufC\d3lD0ؙ*w Sw(펼ɟTauY v0!l)!Pw5@:׸p„ #y! Vf>L[[KU#RE* _!lW@H fh+4? /f$Jɤ7_{mnv,~H]0&F䧦n?8K =VS_94 k0uZ_ԛҢ900bF$d&Bօa!oq=ϖjJ&nPi_7^mǟ 4 α>#۱Ai_=9W*aD, ^Ů60vGm*ׅԐ4k[@̮f#jih*h{QRSx$OBr^x;~cf3o 3{Y`^'wϠqRs{.sm-h"MUO=+W) 'qajӳph˱jm?,gbSyj|^.#gz_>`d[2 Y8ϡsժ 6*ܠ%\.4X'JYM-^2p8;glr/с=3IM(ͧP:?fNoxZ$eq42n-I5cл} 4JGN=1?R~ =J޺U+GŒ2A{+rӓ{aRHQ~>]OoaYܷO lK(;i/B)lV DʸWnV/0 \x\Od_K>պݏ!  :HD b%|6K,80(X~qziNƤ@t…^w+oDn+O75hㄍC,1ME;KM6g39A e)w S"7Uؙ#OٮTAjP4Ҋ5_,0bAa` <nvmR՞ eXO1 AfiR:ofe6-Í̙ٟ(cbga%#)Bvȍ%#p w ktZkEϗL C.h%bѼq{l&܃MqG0 %r)+`3e{@kta:]B+̵Q_7K%UW`b;,PGo 0ri&{w4&5uA-VBTҗKsU<ZOy2MbVλ?c Z 7Bj|q*鎴WI7AD'?ye 2iKjrŽ OvaA`yD *v̻,:}U"ƊM`cYZn 8Ml 1֔A>RFZ]o< )!M…rp\Hxw6 [NZsةk]*OG-G#۲!jZ~!N䧉*z3˰_(fh1/;cS(A#jyBm#fL퓟8pM4nt"Dd Q2SNm[&)Ot.vNB,r3s 6FPxסt GРV^IuΩ( ?)8'-"-:,C?$b ;vf\ 0ҝZyj'_LvL 5^A(#k>gdx`t ^?dPdUNS -0A$["?JXqTuvE,Ӓ`.qRb%Nc-Wo.. vOuXCI-]ki[+ɠ3?LuُgXYtr{V9 Pĺ"/=% C|KM߲&FŘ#!b=o1ߝ`].Wt&5|(*d+Nd #KY >Wka#E8S&+^s(=sDR%E1ڇQJ-{ _E?v\5мOKz/h}6{?ѥ)0?{9]mVRN|)tXvG dy|X4)'y_Y 6e8~&̥d!y} 4zUK^+C ro[4caYk-Nʼn&o?wbZ (P.iEMmQL~,ʯøu7F>W끈CLHmriMz͠F(6fi0oFbMov+tJߟ̟Pί<Jb~$-s J(|S._5?Ŷ'Pb[z,Cj+S^9-i.BxK48:3 "xgZ̓aTCCVl.ʻXK{/|jprgzo WQӻ<+Y FF!N {ek~ ;{O;g 9wH'Zhݑ^_F^yqwЍSeljDzSv7 4מTߛ^39}",K#k$l:J)ݼhLhrkƊ†H/П_ jU˾ d"4J(ED$qޭPwYh6jUrR\WVӋ;X+Z\ƿ)g~S mecj%X\q2 =q_'^`t=|{ȇW<@^g-o8V:x8-R;iX^ki .)~eқOF䑠.@8?$JLk!(#v&V] uH^Orգz9pD4)`b.|/Mj87 i+3s ^`$B*rXҋA?CTy>1^n @D (VæьT*_N`n4g9nznVt2x [ \I5 o3,(% /~awd`^qet'F(5&T-UktD^Pؾk+c_dE;0QBTo:GMݶ#:t9_)+EO`B<CS-Z['y @3bizb<@fW=.1;¸qcf!_p5n#[WXġXF)ǙaM^c B|Di8YZ mn;J980|:mh[{G_:[bz[[`E.qz< wbk|p`A/X(SK6꽣cް'9^ jY_Y/4|+ GT9fŜHBrb9l>NBȹ~^ 땷Mjq (~&W]JAQ@~e'UU74 ۔>~AxDy9ÛqIRaRZxpzeVtsKL 9A>RlG""Ɠ*?|~j/Qbx;ʅt wDmA:(Hv;Hh;!Tht:+I wZx< :?#YZd!KτvM4o*4P2˔M,rH[?PJJ1Uaܘ&D}x IM5Wb >CNg&C#Mp9k(bnVZUZ@վ%m4!o?&g~IpJΎ Br^="8**h2Xmia fc*%O)+&3KB$Q5 h8ԡ;db1$gVtU&XV 'ؿ]gUw": Wܾ.ҦЕCx!𫣄1C:65 hqڿr/<_脄<D75E#׾նv:sxGR8$f?jnNz£.BpXd?p~I!r=fx %Aͱ`MEx4Zp+`p)T!'s퓢H"ѶV<&B'B |\}.$~Ml3,P!b/]#&p ūiG-ֹ*I>[^En pK&J= #؅P8l=\׹܁H!LffkQ+:6kp=Gw$ivO)mB~50a.=h}R4='"FS uOz(΍ d k^VC_Fr( QNCLF|Df _!lml7,z++sǼ;lGB.KD_ӜNli#~n6k‘/-#u@9bM嶫լbMh? A"& VOJ]k;S6`3_z[e9O45jlsĨx%%7mkW{is#j $`&zX3B1]x~mN(@L1#?"H//UAyTb5՘icCѿƞD00{g zJñڨ!p:c0yiV,<V3ā$d84*!Si%~m,VcГh*%Ү:w.1#D gh _ 1(&z+Q^>?fb'r n%E?m/ &s~xuP# QBauu]#rFZp7s6Y'']"OTid"SCbϋqҮqx7ymBWg1 ?Eۊ]ssY +ބ׳GN~ ೗b{C=XNS ,s0 )Бe &"_'9.XIwc :!;|񒔾i;A!$ywZŷrTXW,x{V~ltSKv6`OmmnI &E/{v>1\B(Q*z;HQ(^yi7yDw>mvv)W#c;[Y> E!l}\ SiFg: su}l'N!Uxy* QFxmlM)wq`[G+hyӳ\)4>SwS#,3Բf=S襠̈Uctp.?1Y Ӂ IDIs&FwV|wK/=9j" gֶe X VH_`8G6 c$P5!d{w{2\K^,\zQB`2lZՈьA&Ro@*_z:aRΓahƞHzRSFСMuaqp108QC/ L0ڐ.\S@5pxb12rv/3 t"&~ŀ1UXQsyW&w(ǜrI L˒'Fm?1+!.ĿƢS e$" e+(%8eb.cO6GQ1P;4Ƒ-OPIo5u@dYwXǬs$I$20;϶"zA2!9PG N09^ߙ݊7-Je#g*+6a*ְ"ł:!dg3P=;r6dQ`< ʗDQ*њu::/-AQ;ZGIoiz<"42|Vqe%_+yS<΁_J:o#LϰϞepZMבQV_C Y,v o(N`}:"ڴNe>;e ˲Zu!r^Slf)ۉ#Quc9q׼~W=x17Ϫ8hEB݄oO!.uiV8"nBJOA:<ܣZ!v { [!M<>OGq=9gJF΍=Qj]w҄}dCZ=)xtƝ}vEyUτu@&3\e{Ѿq,Mcx=3D,X\Ge*ƗYt `m54Rkӄ*y+~>0>≼k](:b)pSwXRH3$ؕ*[8OAL06HQV1@EY@j'uKXxDi&/s6 C 3:v+Dp`= {3B)wF 1t?izίeGr>po`Qq;>zwd}C#Z Q )ؠ^'M1-Flj;.O՟*شeڅ6Q_*¸ܓVG' z؁/sbqp1`BlA.zmFDj_ ,X1^VʜY'b$mJsC3&ǻFbRj(b.^g)k9kUqPgW\g=GwXI$e?Tv->;a+H Rq<|}z,[-lz>Zb>%e{h^t߅վP,Ra79xC7MW@$;{rib"܅;XSi*Qط#yCSm?ynȾ:y{Ś߾/.d1me[N 'Q8![ZꪞF˗kl4T 4Ԭ05Li^VUO/oR`fUl\Qo96]% NZZnHŷ(/=0%HrMw9)3k}j4q IiMmHɇzGN;d $Oq>֩yaYk~Ȣ_XTLAmuM 虴8qAq ΡV*0Mg#W)``G#ώxso&rzK19*=%$v)؁"sW201.b[RpEdSV+uJIِ |DEd Xx.S!W7dG|R[!IB'GMTֿdV\naI!:Ld.#qg ]dFVt&LZ;/ÄX4<8 RH`$\ՃբK&50Daɇdv'3Nn\qQʊ:& r H൭Pxc'F딬am{ /&%Q br>_"b}+6?O.4ɍv{-d3pv#\{}K\L|ɩګ_A&;qIr镚:"90I?ɥQ%F~0!v) r $ z7\ڂU6CK2ù ,S+cknPV,HٝiҊCP\ l^4dЖPH>{A#GHT?ݿ8BXqs p_^J⏗ گ뼏B'H:iN7 %4DN E0ka%&gHRhagSk݁RLT nXBb$1j.1C B!j~hz¼oѬl`AE>lѾUdfP1lI5TˆbTBtʬ*9X4zG]} <U+RB-d| x# R !wƸU)SS-!S$F.=;-p6w ORkWywODL{š+Xۿe2zrq*mbnm! ygWI,zץlr> W)Y+L3%<Z'5*EX9Y`OG!e^I1\JvsT\çQlyWƲfX5TpwA8粵E9mxN_qaLF}YN@-8<{eobu#F͇Ⱥ|>Й!qi&KūXəM\Vn `>,n^ʿ‘0$:̯RőS"a9^Cet19-' 2SFZ6q]͖ڹ4+R0/LBh3)h"|9+i#5 //ϓZtˡg0Orz\jf,qM1 ;!kX..2- /yU,d"b_r7>U5S V5d 5=@.Ƕ !'a06(5/n D6.WH#oḱBȧuMmā%Z*EUl/^h> }/ klx/s_9 =9_x~[eEHdz\ֻD"rk"MHkmP::5Ьcay2A!zLTb*Y=&&͔! -L{ |PTW?6wc*o<6Þӥ'!{42-{&\yLRYJ1n!ސ$rD닺ȽL<%F'T٫o FD&c{ Qh p%8S)?e ; |I{skfo]^>f\\f@;F^lWބ0N7Kɀ7dB2!I@"'1Zr-堾\ h_ NsҼL^%҈&aZߍyMѸ1F2 {$^7=E*Lp<E*)DW5m4ev11/mZج8 +싥'R[r-ZE_&"G묱zYpZr.eM3F߅A2ӼͯVM6XްTAf9rէ 6QO"F@2@L lւV[Ljt&N q6 KB,=X+Hn@ u<#Fbǔd2N Y/:h){ _K|xe@I2N&t[L |nL3D :gIs{40IOЛ@)ȚBVSdBVŶ+ǵ>0׆o 6΀;dE P\a;ֿzޓҚJ`b,KC&~!q=^ J`P^az" !rY^a8<S>-,` *b9X̪~g񪌷pbOrupG T6QfM8U1l۷+C[m++_1 9$yå3=Mc2SmA)w?WF~63e*=a?ӜEei`ri@-zi@QSJIR4(8 MO6a@OɈ圂@朧\EDA;hL>ax̢+̯Yn*JV8$Xnml`r/AfzA6yㅟZxd+R~g WT F|lE؀H'bH35/o#ѹ=|(j;6h L668H_$l5 q1јN^D3u3I8{ٿb4 ]=o~ YM_<y=ē^zCȨS3#b: ,<&2)ͤ*&S y8#k%T={٩jqVoDj`$WH1eOy"W5S_x@Юp].Z-n_8؜HD2)IMN撮-8j@R-@AX p(ɳ߇= e4Bh/!9>T6"3KJvGb F!u~[EIo[+NV)-֒%MT`l [wړ/A/P}Vki 2#>i?05Kqv]wy9 >#;)?)ci,RDm9:LH{OVCpk'NA8PO/LK]Н :9CHȔ @YH:bm%r}s 7HS4M;ɜtH>eӌ82~7$te4*cϊmg*! GX2)!\qN ~4z~o-9='$kLY4Rix6y2_X[(. Z]lmt<֯E3rDz76Jz7!?c>b?96`&RX޼m*jW4ө@6yl˘/6Jg SDRϤqw.$E~QNe2^9 x1w4`|9wёjɺqyD y u8Im_KJcϽ?0^rºRV5Q`!iD{xmΖ]URn>|!Gn-PĒ 6B& WN8 [`5Y>(r O c}; ]#uu$RܹӠfcl g hd/\Rww e`e>oنĎô݄'7lM6'm#`*a X l;?g/c9:hAl%u/pNdx4w[ÒJG y4<&.%p! KTY@[eDZś>a9c rbeDEdbUo &{3p^=GLwPFZY#r'K'B(o'>?DVz^lMo/9l!Kln=o]݄~ ƅtua¦A{WnnN>3g_K9"w{c&CmJ`gMخD?r^asqNǾfO%/VQ1?oVp9SwГʁd=#f^R8E ]u{[Ci\,hi7.ϨcsDV (3"ԌB8uP^rU_A vుb_OgN42Cq8AfX(_st4 ^nC66#,{6ʋb2ajmӻ?M}*o2+|XSDf. cR̾.T@ȋ-n܂$jRȺ&l|F6=#NAR>Zf ؛fGfMQt@Xzf=akAŋ:I$Ş"zÍvX+ _^2(nեU -(kLJu1A|E5`,3ɡ]>8j6\aǜ ->4 =r|GVIعv(1xXu22Us%׿7,W͑ {GTQ"gL>T͉]SU(Y hv2jxI%Z)ԅj[=ꟑ?efF$ ڿS& f?(zrޤ_)}g wZ _f 3H\/ .@`  $e0V*yޔaQ |̗$ N_xRB8$u0r.gA~KTL03[Lk$vα Sb1rl5RC>%uQ |,, \:mq ? ͺ<%5wwZ#C&MεC,׏,qL! m^f'9 ArTp1/1\}K(H;B\[X ]h͇I9PIjM&7x7]wY|ˤ̵E^sHeEՅjtNB!A%aO$W٭'x&.~`bvqN~~"5! oeǃŒOQ,MvVVi0s+iBP3=CXc,0&XcþzO'EMBfbʯ }QbY,bdv7T*Dru|6p$m @l Α'CN_<~dwȏ͋tP^ֶ>|S(6c8(/H02ST4(֥FֱK 9AyOQ1dr |=Гt3գ#,ٸK_D[U봘fVMT ˭xģҨH#b -lm>v<;YS,0Бh:4<-6wO5k3p"]h%%v7igVǨ$LBUUޣON\oB&W1B{^ke[0S18JȊ H XMsѩ :ב/pAlK{ ~ѵ"qN <7{yAkXvX0?m8ßPQ`>vӨFę j oш0sU]>RR^!ˡF_W;EZ"`;q k3,`b&M4ݿ^E|ݠÂˉ6 T0Xך'ye{3|WS98,M3ǝ}HfcUF1i CJLA+`OY"x̅:+b}j-Zl=Fgj|cbdzfqMUP WPAz 94tvN2kд0s\;b.ew~x0g`VĽ|+2y`>Һa*trg! #BSDg^j.9~5O~͹cjF\rܭƦ{gaZ%zm; ǖXc.*H^=e΃W߷ BKjGZ9;,ƒu`(]EYsnET͔qG*2.@l}{>PxɽO~`M?yêt#?K*Z |USǡ2Q^r1rp,{k7j$kaF^v"vd(!'{ab'8ֲz*Sf΄޿R.jt.u=Uh#ײpy-ݦjňU:R˅WF ˬTZy]Pj=tWQNnGḽfX'G؇G #O y!uB ,sGDZ]JЬwKފVydcpS~'8QGFh͈,,!)l4 R R@'Z|E\UI \IM/=n轔od vDn#Na5jK9VMa$:T]!H Ce^lXGfS]ve>P^O!nPѧJ-U*E^"QA4b{Sm6:ƵGY_8Y iEU΋pA ٩W5h_Ǩ>ִ>%0*38kb>kgɀYrqF{̹<AvlHG$(cI9_ )5 d[B?B@7ǿ+&vGM,T&+GFn3X.Kv;Ѡ@qLBPFC^!yb1j64& G8l l-ꟹq+D U(^pDʮT:F>fGD 'ӿ8,`'l>0[a \Š= @}O +wn C9Pahl v>0SۊRX|xYd<;ߜVRP.H60&0jluiroNJ>Z2W kCo=̔ݳ1t4/ڹL]uPM}IyT'bH܀swA[XE[HLd1G ",tno%2x@iSRYl6:ޟ(N#'ߌwC#f[. T Z#տo1z蹦'ƕzr!ǀ4s*#( =u9@(y'I. p َ#hN ~O+$  2Cť=cG&/>"ln$G KUf] 6pFb~k8Gs ػ_jXL47 S R$s~XR`*%p+bj(\ޤ>! *ZSEmS+V2Hy@'zϮ3:?b^O:T"xPXZG8u}8bT\<󋣭.y4@Lo!vɬzLä0BkY#t|GnwSLc畔w2Y⡸S'C&vO8zRli}cq*wj2I ;!~6^Mokӆ %WbE[W;M)dO0_>𩻈I&+S='LoנP&Nsz%ֺw) ҴR<"an̞DZ.;=C&.~Gp/k詴7PnLѾ*V%a>nf}6QKzG:[@eNz(NЫ?tP,8ea$7$lĞ"o͒2gUy&*ImP@BL7=!]'-,AS8/C:@ZntiIwi]D.Jԅ+XYa_Lp"sݨkE9p:w C ^5.:?(9E#ed"s֬9mWfu5^ VxE}l ?ь@%ZaAnM ޾[OF\or'>0@u.\ADWBc0^qt";8^MH7Ec\a5:F{(fCS'nW'?Y1Yr(cH%׎r{|0C#y~{pSqOLI>3^Ib pVjBSzi_uu;+ Uh3PԖ6X[VW\|fT:EeVS7޿ 3zC䘡8~Չ/hA@e00xU}9Yڏ'[: jjYG=CMR,QM!+ٮѫOjM:m&&+3\,(SL0;|Fp8iSْ`cWZh|W(~۹i\z~.qhD -}]tLmt pfԙΓMS'+J$K}r(AЍD;e1˴K[%!V T,~P>zB ,qُy˺+V4~Wt>aE<-C` oK,}otGޖ٩2>r!DrxlOOcQiV̖Lf'Fo~=2IF7Z^:;5;D]0M<\yWlʹe6/3Dm# JZe W)y1Um@ٝ˿A{ȅ8Υ'AGNsߋ6z\.jzc ~E[Ȫ H<-uF6BsTUbgOx3$9j@rc`DDGLUIu1%m܄DPu>O<9'PZ=4zGCUl_cs?2cT+Cv |h>=̜}|cs  :`#`t ;?Zz^(RNj]ucx: ( A,tP3)MtwOV5|\܎&e*h{0U;'EyUgf,hxN~8Mgv qc B_%QGϽz%jX!rHrs#j)ም0$ì>P%(ϣ` "pvP"-LSη8GOp7m5Q!A+#i>R , uǚeZZ&OԴ4"u.,YN* iCbldž.),#wtioJAUİ"+ i jl(i}_ԅJ:`]&sE5:k8y8J{K+רKY? [&[YZ؊(L]~ܭPJPrϐ4HRota^7ӬɢtPVF0=c !E,wx(6(rP4M:I.e+aW9М$O8uC.{7|lhiJT k2D~mzb ipN'H$(x@{xpAy+̍xPf+E9@'|E[, ; I8_jE ckE $EG uIxkU40KI7o~PZXGx/Tt}mJ9Z_Qw@t^lb58["z CZBsQ TDv9KvgVg15{id樏p3أէBY|rnQn1gG%:"k&3e :3ΐVa +B3FCsiWaOfѭVoyAVMUaŊf!J>wm9 ]};U-Q3΋1܀/5KP@8_&`|u-"c_bs.,vk wtKxJzL߮ OBߊ ZD!Lג" ~d~M+䠑齲>IZKe1 #Q Zi'X8H[ 6@3a (Dt٧Yv;>ykA%6Q0FN.ZW?])Gg!zu>_Zf@VWS~EiH6dt8YÆb" suNg 7S\YژL{$9\:?JQty KdI0 +f }HQs*mqv4̴NmJ:R3S4mqR>/ B|} ~G(4R׋Zwvw նp&N6F墭]f1_)uH6zS`pLV_ 027^-4dVjkdk>UJX.kr=@Vk?xdy9U.FGwoU&×o,PK,kS3d.ѷEx;Ô]-Q Ox^iқB_r]7}]}K7zfPt@a17#0K*wMt-9Y ~^+\Hz%s?48f՛eDl)rL8+}57 bF'̃&Vf?5g'r+&PnpP7dwE@[OZO1ˊ{Pnfݑ-[gY M_>(gMdIuPqgJ/۫b#Ϫ>ifkD,yEa#I-O{w\\JqoJ~p^M6Y:jgxo%xfJ$lA=.Y6s^U奢 NAѽu/o\pTmkho@x؋x~]__B, X=i%)ee5,Qn} 5m@e(V'Bo&>B6Z-/OG;ѣwk<臖k?\P.;);C`6$R&zb`җ (ˡ%7ZznfЎ-eL`C=RT+esU"5x:[6ND&ũǛm?ط`<3i'Jov=W*権KNܜ!ŞМV3Ys䡝O2'opNmnfCނҚ)Y$[Pmw2eV" .|YAj<+MW<{2֒}jGnrcA$ͣ t.e=3F* K]dꊑ^<}8lXmiHjrbVd+JT V`qu3 eWJ[,MZ;*4z/&b+#"+2`nQVbaj8l4K!vSGn@͜`%ڄPO3sCV)K/ضL --7vՕ{J ՓIƨѐvZWp3~}. ]$ rO&=@n+6M+1ic_MaoJ/̕R͗j}9NWdH* dB!ȸUK áf6z*|,1* mMolx(mȃkae08m鋱 l yț(f mѳ >xv]X\@Gjot YE5?*te$@wuE^!v1]aC8|MHV3l? ;-Xz*<"4]?Z2^UL<Џ]6г`&h5ʫ#ѽef4s;iɕzycεw# D,^ #$ImNWK#G)Ӿc"6Sj7C],Iѐ T4._{B|*qڒa]7GdjP$~܂B(a[:wNhxey 4A>k4L꡼kĈqH5+kip,` c9x|M7 Ixb=ru *ClcU [$q|h#o"&$ً:9^׎V1|,c:_Imsp1hR,~W6\*4 ʿ='.n-y5lاMW$˓e=|^ͩⱊh 3(S0wRY{;dzK[epمlğV~pcy'hwOXB|Wr͔XwW29\j?k}~.o,8_ 5a4l68=N}u`<ʇh-,B%V褭HY}­$L.ﻝi_/n_1B.l'eјH ==P5g1w"HX OH‡̙QY*+$)]rdX б sVgGj`--ޑ(/o @tsũ|r#B3F/vZ*w͹ B|A+T@yN=]- Fwri88P@%vU`kt|AbN?$Xn_ i<M(dOoW*i%y8,N9/gDۂ gd֪ȃ_xpj¦;6|Dљ>ws)*E+IP 3W׉#pKo?Űsf] a0:-z\ ILlR<ytxqB y=ȮV^V(QSُj,.O,if_ل ߅~9CTЂHh: For8,;L=ɲ[TSJȩb|O|cUcSpu(~v [d^:Ƥt!>6~-wkQs9k9Kb&EG$8$ D;ǡP{Uv TNHqR%1qM[?n6OI87N7jDf/Ol׬F}]錄Zx#欌ט=f+STa>t"Pթ] 6|%`ћ]npgkh4+#A῝E %G 5۩V'ĩ[*^عmNP܋&8;@ ].⚞z<!2bQ;ܧ=L!}E!f9U0gbP6/ rڅ~fS+ (?uM[`J #v\q R٣W.8^Ihev2&AH< f9}@LMuRYLW ݃о-QF\e(MC')nk3cya\<[ /_H;#sX8 {g>!;0/G~;U>}_݅ Aouk Kvb 鯮imuءH; %t￳[0n =Zb*&qFW /hLNI6+GGȘ{BWĐ*!s'ap[W=NX.c+٣8!גw];z *DRnT1Ҿ#ŵ=WT9Yo#gR]S1p8f@\ᰪ-K¥SN쓭,OFy3%KW[ɽԆ_\χ99B\s{2XT5D_kZu k|Gƒs>7}=d*ɰN9=e'=Kk|g̓-Bv޿dNOn&eçGJOf.C<IZ48>{` ,y'q @wFG<~&{'*|17kwM!`ʉ< $~(}ru[lIőpm z/Y SB d) w[6=C_IIè벛K\1 7W?Ocp{ILz[ˈRŗNeW>hBs@|J \-NwUeDe1?%F9J IS%" Z.'`<cN֠]*1UxM 󃋽R˄7 C*ŵEϔ >IHgJ9k\)i+iU%VQnc\T&V9/HԢ lF{*dས.tH5L>-(լSrSEb5SDPMNt Uy,Zj`a˧: n&@k(h7Տ[t_-b rPIs5>(d7Y,*')D$xmI29>[3eHO/!Y>ə#:dfL.׼snxsv Oڻv[\8{- -?Ao -/!9?r V0 Lamu0c!]y\ idx G @y#K(9L9V,o&(M S6sxn‰܈@AJK3I?v/&m$L/UkS*9-wC:[^P[jacf\93LshZ=A4,(/\I͍tTEi}rQmD.#C(Tep6O`}.+}HR V#^Ԥ46QnliWӲ6xٕiYJ~s%ba0ړ)RĎTqSDuEBh0U[Ւb;Fܤ?GݙFxHIr~zJ^bbKRz ~f4l0VO2$'A<@z6/Sѡ L;pЂl9@] (j;S6ٜ>[(fRA2BEZc.Fߒ(bx;~x7{1^"iJ٠E/b}c{͏ 5?B8{&w y5~@ُx_i@h5Q z:4l!G1`sdC?2{bW{@|s]t <g"E=XoF*ߪsڷYHbAdb[1Lh.('ߪA_M:ȓwJHHR7b暁%})}8%#YYazIHŶN"}[[$ ~$zAw(ZI؆)oU];^Ky=>\c!/Uk$ bݶAeGO/=v+:sA"H_u˞,l.9Rl@fX G;'1e<`"V̐GCpDx Iw* 8={iT2q|Ƈ9y)~F4>Xa`Ȯ4du17qwf 7_/6\dwc?\yڇf`WŢjigw<,cogP0'ZIMAmcihh\HUDջA6BfM.gm4WGش̀ -k~1 %2Sq i5e` 2?[G< S+r-t W5GC$#$lE%q_es99w.}t nd&Բ5=W,I"7xgmes㚚~@~?V{d \Q1-OvX~vW%$9KL*Y, 2)l?)h2p\Wtq}4%FQ rK /V2->̮PNb,ЧHR|Koh PW.3L>y v jKHY u|㤯 2 -mb 87PgKcnifS=gUJj1a.O`~ v] 2tw룂}ZjzfNY){\{.!1>{!H6Q^(h!ֈ4:zTA# _ ^1S9nYħSx>(^շ'.$mFr&ea^fFnue[_x7׽<+LJQbd3£,PDjlstYpu\AJͼQ2_:'g\BV krvfwfFI^쒣l!k!BBM[|sj5E 2P%)/HVV4'J KH< (4p ~'̑믅^>?ʿJ۪oQbBKMYEjKIۺSj@x>| mϢGp"C@g|cZ%HEdmw%5{~V"<@sw3_!cjYmc*G]?9Ng7* xV OHDI "-<$5{<CRWO Sxo.jNXۊF"!8M%@AF;XhP[A6Q)ZD4ĀFfl5 ޺H17YL5Zi:hIM:S;+Q5C]ϰCeԩxZfڣ?Jґ2THLqBbDM Kwr)C]&p.`Oj7P3JBgy ȸn\Ȯs|寛O+mOӗ4N|$ S4;{B]S 戡V p:̈|RuX.Qيzs:Tf2G,QilV4PCz'J sdwaO+]jS^ H~VxE%T\M h;]/f ?%O|yML{0BQ3:e1^Bƥ23b'nD@Ԙ+] W X?ҍ&Qcom6ëC;_/u,4 4*瘖X(urᭁwA O*fB{<7J d1naTT~l7u7c@{‡hP:@tjJxΗLNen% ޏ1_vkOVsPwCK'iξI[㜊g!2kݻ#:(G19~ݔ"=%'mlHݼLcHřP>A('+sX(t*~ʖ- ?C%Q5,]=Ga9|Ц|6vpA񍃘dxy9i`!@+)뷜 JrxL]u >(6v`L;@bKK'p:DT:)RMd Tp~o/00o T&wqrFxߡ|UˎPߟ!O;\~nyQ{<N GZR*Q7?{"jQhNzl(? #S1䯢N]VUkX! |L \d/Iaw \%dJ*]0jYlm,^^}FԚ`srmL$[6B4aFߙV5!NԸE&^- ca|; E7Kw2)\Y(3A,U4*FTqG^B]},V: `~ݕ?Xmw^Ҹ%Pta&ӲߐKl^T.Z_!^R廥4>`YekOݚ"ز-h)*r =K O^&Py@}&{$O+4"sgH;  Png So<¯5ߪH-\dI?!UYKZ$IUEIfy8U2xf-$R@*ˠ1u_#uZ_C%X֢\ȴz~]Ĺ2.GKv@*UnaKJWIfø1`}@1udxi(>UIqdVGߩkýt&#H,z|"Ķ9nootH슔+LvOEmr;6RVzxU\ٰY Lw)O0șٯ┥5;kGsP( U'ځN{OE = "Gl]26QpW1X(YM\@̸2Gx>L`0ul$z7Qٰ;)MYO'錏j}RT,.3\ Uv"9 Sp?'cE0Z6ʥXZ< -G-ѢR׊T.ˏiP#B K?;p^VXlYvOcM ޠƥlᘗ_#{,}Jܪ{lٴe{\[=pu&5m`n rfO+$B4iӸO2u{}f%x-b)Kd|l ̈́uÅwW>֣~ƌq^ *t{'*@8kš[$aet4AiAsѦt#YTE_UVz}ORONuX QzŧvR1=0 pO}5Sl06UL<E_@+9ɪY4~5( Fr ~>bT%1 "Iƀ'7s-7Irh:e${ԗ-Orjc7H{&ll=FwF#-]9[ƒJ{.S{5BiІx[F8胙e\M˻O t*}flBէ=IcV"k6P T|GF(j-y_+84(@z$3;Iѳwi}+d!c=-4Sڱ3h;#^>Tu{I!Q90z JZ9D4y"w(+6lns0v6SAvן`i֭uY}f7Af;\q:ɵ/>_)آOy;7Lͪe6`t:N7hJb& 9bƇ<%knE)LCM'I?ChX ԩY3*IlAz=BQahQf8$-v_1mbhwFJ~ ȈXͳsx]as;Hk\"L͔QСvQl@%C.VF:qʆG+= +O0qVzA*ӣDd@'F+VG(:Ȑ i ]D :'9Be =Nװ=A%"j<ikEUP`Nz45>201E$mȎ7 g8`T=ga/8fUAc鯚Iyc. `@rE-re̗uOδrݿ$.r4pϦ:\L@]r#K# <1ieB&!ZnI/Yۏ웚Qld>X[p7M5 e~g3z`i{B "!,9~!mOk.1m/%!"N[i*vzeSN+WLݣQDJOPa1clk̩urBđpr 5G.WFXKǪGwm&o g| Wa &%h]gr`vTUśY[eRjdB2[5 1."Z8lI2 ձnP(cM)/scah;F:B|JNl95VO*0lj6ض1to8xm%>W#BcZ*TܘVG̐E%~͖%tM\JTNM.1tv$a5ĽDDYGJAך IEhr$(`H;9w V3u tk`HE"2z#PĞ({]/""Fu 묧wUn3,OSBWҙզ^RIOric{r .[UbE$\8(u޹G%KφbF:=#'޻JZc. xc6/ ?EV /3aHR!8Qs#*O}:rIŠ߇Ә92ϼrRI/.0Nh7F7ZzdOGeZ1? -.E(pj_H=9- 9m84_ɦa(VpM"Qs;z<JOer o&f^"AmS*wl0"FK֥b0 K&fwԼw -lf0T kALDSsBXubw ߭w4aʉ/ ".A fn(:4 w2t˱B% 3<GDP$IPOOaփLYCT6+v(`f'6L0@[ܵK>8]۰GhWfBw] 7M)~C- YMQ (h֚>_ָ 4K){ƐwO[Zľ U?5w;0UrDҁ[y3[B;s6um.$]5 QyET}~3= d3ʤZ1T&VM9)D'/Mr+!#ST 43y~G.uEa1Ul+Đ5`w~MvЊQld#́5tcBp9rcnl<}}B~6FK_ V@a@0F TJ`lGhV?~m;~ &ö{zL Q!#űI$5JiCғX-{P˹ B62QQ魁RR$W5+(@3L '^aE9D+-WA0eIY0ˁW"dEt[> (LYo`  6T٨Ű"T\F W[4^ FX 7\!Wf=}zoyXeC(M h%!!c='j<Кy f$՛kkX`cj(9@TbY>(1:W)z?>O0ؠz6;\qۄ "yU7fPf>[|ڥ)T.<=XWF> #S%i5}+X o e\aNq~>ѩV||bd]x Y&RCk@vEC&'}C\x"+^SjZ)am-Gi 4vfjP 4;L0*TƑ(FD4#k&SoG.بhδZ51}SD xUƱ?qmcfŠ5j˅h_,LH|V7*8Qѓ&FE};ˌb:\Iq4؃gR;LPfhzR3Oq‹v>niP[=@=>qc$ ,H*lˈ9kE+W͗zM=IxIGNGqZq3kL WS ~4Qs^Q0bg%ULqrOmї;&]ߟd1iR2s7D:~d1JսJ`K_oRs}?BLXsta$mI% *gI4R>řG4萍}v3yi8eF%A۞Ɍj9$լZit?z[Mtf}NMtobV_S)9 0:i$q˹aqiݝTt9^8ynCB?fJ]+QWF0̌wr!ܨkPbzT976&ؘf.6v|ٜ)2[P:)TdIn0Б.XaX4 ŴaŅ0= 孬S# jg` 0zέ0" VE"v*Ǥɝ@GlAW]DZ5Yu1d9I&fr ZH+)} .׻}]/Gڃk^Z[;IDuEUD30AR<}rl$gQ k FyRAWvTZ};Iτ;$TQc"j}AN˴g͡diveCWbmիCo@⹶x'g!h0 ]~kX, d"K=vtD^0@FC+=;mo_݅Ҽ^۰$6"vM(xum;ET ͗A/1 pv_ Wb3@>e7ߊ3P^*Co#6i;c] 4C5lrȄ]o] Z_ODF2hlֿr[Pt1X)tAsIP_ 7sbK)yy ߳eOi *o6}-]x.҇\AMiuoM^[?l0vSuŬfS%axkt3+´Zg -wBqIOT-,ZD:6QV2@B3 lkW>8чtr>V5HǿL 9G~+}?&9Nl&2Onc CS=/1\ EZafA q^4Q)K#?Zα}MVG`hߪuʯ4*߱5sh Qd3|0HCWvV?c嵡@ߖ0CDC9N1?ɀzt-w3N qs<ַkFk.e=ĪAˢSgѴÅ:3V,j e檾)yQo>lOFgo'hkQ<|U|"Ԡ*r<6*c&WZ_?\S[\\mn(;?{>MZVCNDML,)fU yj^1>}. Xsn2aZ1&YeHp (xO[Vj; 0?zԣP mLZ6c9v0%lIEܕ+p mGM ~ !6,73 {]䛔^@ M @Hl|2Af<L 7'1XgdJeȅ&`KԯV?{nSՋ3Cٖ4"LCCTy\9Y7cʧE/C)w:?Lś:WRgo;|m~t7^8iXQ#>#ДtJhƎOʰC^)1@,_.^ZäcO25.Bu0CO,F٬>wWh*Giν&nJ/#_|V}Mޥl}Q?^p!!k#)h_Of o}sq[FY?OM׉32`6BmP _%+^Y˳&ۓUIc @kx9bNn\o_Mm٭ңBBspYgJVjf;Я=~x) y tzil^B[95ѿ>7MGÑhG˴f"ChV_A2nS١i<3w{Q{ 6)j hW]B>%X~u?Ò28ؘĘϦŤW WY VGn5nzI2HϘ"rDP*F<&cPl^ h>pz["eW^)jQ^D+ANuuE7HڒT QOf* &je#Jѫ+b=|L+N&6 ڀ2T(8`[ajcb a\l1G3y B' =QJ mz>3-'ԍ"6&{qbc91Pv紐Cb&`ڙ$::4?"P<ٵ-R`0OPh3N#[q[?(,ըjQh?_ڱ )a|vg&kMGX GL]2g [-/- ]|\)O 0X)X.o}z\y{@vHk:<`(o7.RuB% ,lEu+? P`%!TG+WP7) RqP/H݆qK$@;DZ pAIAPmO.}q)G#>6F'M}FKQ/` Oh$8WqN_*#=͖mo.:heG<#H8ADX !32 "+e麇Sdo"Rc,, oLұ!J1qs_4tiXmg0~0oA2 $Uo^5s`%4x4܅{/.)",*Ryuƀ;K+E1jȎH,%¨Ԍ PI \xbY+H٤ߤ ң$mJw\@RFM3#$sNi؇*۵$%ôŽKH_,9͹;遚S尡ھ+WLdf-Yބ?aΏb[ wf;e@a߻c)LBM'Tn@iiJq۴!wL?9m/KVǪ^VnWtz| ҕ|߾*/daq[kHxUܛS#DwqiRGmX0w\+RxT%ir4RG#,dl&A'LYl(ӎQ=2u껈L;kRW* vR8VxBC"Źw(+* 8>qH#LS!\1u8z^=fѷḮ1 =X(̞h)IzVBahO|.(N"2o]vkb;$rlU_5HXpϔw. 0 gnߘˢJ՗_skg}r栵֕xCַT͏%#AQR#-Wh– 7~pŸ? :PYB9QđprGwo>_JR&q@eAyo3{X^PI$U,76xq K]V2]OF лAsuo4A'xW_\ڛK֩~)P29u BqǢ{JIyOidj.]iȤS@ȏ7ԀK!42Z.Q5؊2 S}4T'ͣ%5ٔխ2gBzw^աCK&I #vyn&+gcюZH$+&!<MX[voEePUbF*N겠cіz-^avP_GP{ڣ@ DLNY05DY,}c{au/2jΰh+m<QƎB33Edw?pp?Yo!lzerC\0V2P:u|CjQu<[fu$7еOOg~Yǘ#lۮ{oKM<1!b^趡xU4r1(Lݴ!_,m5l[BջT*ziS׽WcvܙP( @UBcf&5szԶsiNۍҧz&ZD{f2z|QΎnNk\2]Tv?NP,T߂3MQo]T[\!7\Q!S΋u o]!l#G_zSjh*бRvY`@8[`uDe=I_=|{}]8/wN8DBI'nHK2됊X} b(q e%P虜G~DʻUtKӔNSD؋"jyygyO+äjH9z)Vpp{P}^&]p16Tgk@OjwpY04.hhtXG+^$d, CAnRSwlNhwĥE͋皰Îtr DiE{W  FZX ]tKL.:&CEh(w3[O;)/=V53puU5$qY5Jw>A8f@v`]Laz0"9"ǥOPbGt|Ms#\Z^F_y)z oV;iQ3foq9zJu{m1%WӦ]vjDDJY}#~rL iER vI&/JiGc;K8GOVTi0NĜP,CRoՌ94ڔ0 ʚHiǖs`@hkIQzi\{ L%$KK)=w6io߅&e?u. JǵӵW:ڧ` rۆ^= )h * GNney*_U>^AIÝDs=#k<_LtiySeݿQV3>D-Q"ٜ˰aXZvԋ-0#7٬_"iJƗ1aD1^ӹ W#'0)́w,0sft離mVH-x4-*-Jpb dW9<X\-m3OG Oli:ޭq-"[1V\_v>= K{9 h6Agk~rpl󘶺6߻RG^6k[.|K6XwՁuaGKȦ:UzLkl^v7w7>咬NfBa\ӛtlYr)Ewԩ|#wMH KtO鿫=+3AdOsD)h2^lR H `|`5f9ڌ#hEKX u^хkγ `D/ CM8sT7+8X #$S$=b4BuxIECuwG+o?[AQ윯UܮFJ9fb,%X0TxڿzvW@WYfFWM6 1YorQX"2R`ep U%$&QǶ.Ý{i7D%s(5`qIۨȠ8'M ]&7z%1Ԕ!ݏP*tdL4W%A H W+6_ }b/! i5C}!=@0 &YP|_H4B4k+ࣖ\Q eU; o8/t'b~gMh~yb8CyK)Kj/6BjeYY Z;JF#QY)uN"'pmii6nE"oL򮴫9|d-Ε&SRGU6?M9JMX9NUH5/w;0MU|?tgKn>X?s NjAA%Z.4®Be;o qr\܊ p5LD.xDhI܋ ج`oߗԼL",1L1H0Í d@w.b%Z[.p?BgT@Ψj[ A#O-LIB _rB>oe |lj)r? Ll߂-ŋ׹ɝlAt(P`>RHJf:o/S\}˛ay0&tuA "r=qSr tSo'`AquqeH߫>$7oV\\-^YƊ\*j؇h2~LյDV]"wk6&k!h/_kI Bh?AE^'֧B'ʗ;끁Fyˢ*]SGL.hQ=ʨ-(CKW6'UzMy݂iEc~#"x1WENZ&3#`,d:?٧~D9< (nv?C)34p UOK|Mde!blb=-gc|`#Ag=\mWja0Yl;Z2Ӆ':ߚ1(Q i[ܯ11xH^h47= 1?%Osj>Rr~"Mq})iX{8!ͻtE,I6 B(YϾ׎ T_(0vob"ndY#c>e=={yBO- y": 1ʅeRNx1@PN#[:A1O҉!@S)Y*׮nQgL)kLi'@Y 6;eBІAVq=Cԩh UtmÏ(u3 Jʉ1/Sh/PbCx4 LLm'E+^jC:g4toƚe BGϙE]:~’R1cM1z :|Sf81 1;*|x_4P.#7Hg$̱{_sAiѻCWw [17E;C[eL@߯Fi>,^9,_ʠAHc#B0a>Kʊߖeq ͚jU:(ӯHO~\<"r?i8,poggN[]JMؾf9TsM._#jI}~2 jo*B&wNNgVvטݪyzL/8>^EޛNdyZI3"m7p\ŻevE)Gpmq O7vZ?:c19nԎKU$;( Z %3d։^L/ Px߅"/Ukm̔&Gk_ EN㾆$Kntk֩ cY^8NGJ{rupęTެff8Z3ۣxA,eP\= \nY\(\d1v+(U.CF-x+tmPB:diABAcV5 DvbX5%U%Lmt` Of&..[g5Z1BnF?Bp-W5t1-a<2 ß "${N*%GqPP30t[:ّV7Utje47jE-p rd(P:@>&%>>CAPfaIUF1aDp$8qJ&tݫ̋Gxt̓-O` 粻XɱESF*b6F^?#; 1pim,koMsR*M!*^1ewh ]d,]RzL8(TvJkG/z/.DІ_t+GT>5R:p5j 5\wP8x#1{Ep aK379]H ZW5ZIR{unFSp0.& 'K认'n#lv9ƶ7{ McK Ur,Ƃ'p$QWocfXG“iֹjϯ*gV%^[|@E.r#{ޝAiښ*fٮM zu<YPtW."6A2ވ\n;;a8D3ĸp_U%A\K| 1_t̄zZSOjӦGp?;xmTyC .F3*ʡ-qwq Ci M5|=yL3ZENW0"ӎ%a¾ʟ55f<>/.ޙɔ)孳cD0n&X0I(/GvTe"m|gcT5-{2uuej\ꀚ ާ(q(MV*C9wZqO](z}ΣN^&t_}q4F髪r܂Ve5v_'Ě6* J͑+s)3-synnH{"WZmOyAS^55C_?jYB3ҷǬt F.d%Vec~h50D ^Jܣ[cȮ f21lHJ"BkhYrǽ9e8g7 %: t Xq5(Qu %w1IcJ1 : :7 .P6_7w6^ ԋ< g F6` ۘuu%{ I꿎~pg¬,_._ whw?ҟuE;wS@0l\<jb bF!We879#._zUq#\UJPxf |ث{qw+..VD,aoͷ%n3QDa!MmvsP3hIjzLBY"yM[)G&}c,Z%~uTdHK1hɴ͚~y8cUgKv}G.YcZPp}ӆYw+As&ִ=Iq7Fud22דGJ*DOW FR7AF:K1M9,M蕋\ٮȯұWcL) Z(&HNO]Cȟ}gz/K|ץ'7y36˾w䟯"oSi`XbL,OY_НjBXs5p0jKvnsTL ϑNއU$WKe,wpd;glAZ.D^i}md\[&59- !>ɾ! a̙O$$H[2 m3NSQ+n26VRgW?ec:H^с >Q@,U!A2e7.""nt\(Nч BJEلз|:y:AFҊ] Eεៜ , x>PSG1=ڔܳ;jqpe^2EK[1k 3UH"v$^⁏1vIٳC&F-qq6$ZaDoKq8QQkmZɫj[AoyqV^bYnM2Yw2'uS٨\ɡ0CmA gߦ,3f{p$ʑz}6 w27ֹd1 dr}Ml`>^M1tV'x-fyڂ"c/fKΰ6F:׎nwviiZb?>O}A^ rudRv\:[k@/(cJ]&5៥ RC0K{Xc:LO} zwc܁ .U!}Ʋ {ӿ.'T_f#*#N߳>`\]m]"囹OrkDjrxB?B?]2(1I2|_0 >cN.&\8 /*|{fb]R,ބ $J:~NWajvPA+Y(t2z\#PJ'L}_+?I ~'@ɔG0/%s˕*4 +M1,[E;Y]YX Yh-fmvÓ[pO28Q%},TMlEU.ټ:YseH@D()K_{{𑤯`O^)/@~;M鷝ј78{Y$W'G \,Y4bjZ{<&gn*ygHYңSto%@8ucGnT]+`q:xRysJ߶tؕ{fjQ0XΙq&ߎ)o Q!y W+Q's$s\9a[HD0JcS S(6!v(?9R/^0w4̵][0!As}\VZ5Z]YAeTᔏu;}WY0;E@ g+&=qMzKXۣn\W0TQtl{ ݵ:)|6QIk>< EyPqO-%d!<Δȿc_he[F3̹&h_(c?[X'!-;m`}3ǵ5YN]vAtD$k#nMl71w(@GOv*X!wo,طq}+L$p壂6q}m Ly#3 zLwl GZRxf K'LVhVYj RyqRp8o9&)+m?(:9L ^T4I[v]耢y0g\@'-[7=OCl4I좧'k.tO ^4~kXAu8E],q+^+`ӻ~4-@0HWE;8@'dy/htÌvy{6OMwA.~[-Yס_p9Z:j1łݰ '6"ϐ>ǚpvYG  /PL7K/b@\ ^VxmD!zTc,o&wkҞqLoJHuڅR-3g '?ЅfXN٪cUwvp(2J5n%@~:;&!O=Oq e,W jU˝'*Գ- -x^1=7+B2Tdȟ 5A׉bDA3Q0h_i )v[_A~sIJ|bqbbKoh )4ucﹻQS8a߶rbq^R#sʎV/O۔Y!\HZ`/ud.%1ݭ]t%gF:p5܅[9Eʹ2qUaDyk9 e Hy̢Ra꤆gZ&ݓobhݎ^,xTUuʹIIjM΁>CS p?f _b| vzF5a 1fy)Rc:se]N!ˆ_3ɐX\vR-4e7I>Epe[ !v_-2L/d@xXQarymծe~hlw,ս,ĕ0 H|OݎCb;2&"]p`/xqN~ܹ8i6'ˑƩdsŠe#G>{QJL:#jeo5 A_]wuS^@h mo Z"li'Z!}Î5B88X9SS( -F.8re6/1X`# "M(qOAi1^ʖ%ٖ&B/}!yTaGh2:10w8RAfMڑe|΀V#]SeŲ(3|V i fFZtQtxW\V!]^%v@qu}U%ma  m08t/L_D`iՎ1?EsUpN3UPevW+ilp_c^>ol I\Ɠ|oQN]pmCwa.P5 up|5OH'cHf$j]> N`Wv2!=t/A Ox5gu;zyGs%3t⏨T]-$ysD^7` q^A8;t (t$o@@+yswCVGyȯKaAEŜw,ߕ7M,eg1|X54Kծ" ;JU7V7k]K6Ծs&)mge97DE605q%jʟjCG;RQd`xW `oT(~cbuzBQP8lp> FP% %!l*SB8fPKIx'F$,#|*{I-]Y}둌^S?ט=|֜фt86߯cT!wFn@}/eZsHﯰQ}Hr NjU4$+wd) Y|;e f}Z7elH O:,>fɗ8DH۞tzH߲|u@AzLa'2!*^1lIntìYi,BX*@ TF>;K(#'ģ:R:r+J!7~HC6g<); 1z(vYWw1:ܤ IyHCai4CWK! ,'7t^r[[g50|?‹w@k)H{5+8: ;-fd.\EQB`;,.B~rZF:YiVS~ʹ>w}3l.OsH>N'*`&r{G5 ؄"j38sǓlc ݯ +@*/; FLyFQߒ#:ub{ Hc6x{Nmˉ謥2>=F`nAzFJvwx鳃ybs1%PTkgW$^:^իV;H)WGʼnE]f^#dbmas7*l_w _M[`%]*g0 )3سʏ ~sEDq8+[yX(%z[B0-PF@fH6.DЪjZVi ZNM_PN 0$p < _e+TQ6.yY/ý%#I:#Vq;O">w~aZV"*8.;?e T?7B+}9R\+N k_x-tYѠiegg%6ǟ;dk1ː&p=E[ݿ _Ԣ9MzPNvV$Q 6۫}#?Op޻_=F LZHo)"⮬G&,re0!~Q#,+] SNeA$T:aC\.4~piy-)bV$+!pיI倁,Vj~X xHՂ]hZ*b7I0 u[8+x x99VG-(X+Rr;Y!ͩ(!9\b ]"ѱkۏ@4C"ЫFnti 8=W7B>/FX>V@RG3[P}USGGcNlO [NA] ֍/h+ ΅ȴ1ȵ&R*|sDE'CKG&H8-)e=7y&MAkh@e66O((yx"s j_ ;Y-VZy[5c 6Y 3 tBzl- qaTIO2ش40ϜPxk%{Ω"/qyd|OKCۼВZTZ㵤77Kr@p":sDuHgF%$ Y6ᔲp-@Z`,b7!ƁIxjPYiY+MEZZ¬2@yQo/&) )Q3=R|s|r=M(tNSMp>-䎳#c+a;\ierǺkK\YKj`3&P>\$^5LnIxq2`޹֦ :K{O[d>$ۄ\8F*(P ]1*4L>tx/Txy#?.}ÚP4P7Ax^Sit>J+tv0g}"-DTm9.qԗz@!A!B&mB.bAdrC oBP _sum4ݲ+YCĸe3GS27dsXC]"8d._'zJ=,cļ%pc{U ]0KpsyF* FUbP O納v)z4S+`b:X6Oh$WdOY@w'Imj  tt$~vuwjQk=K2_mS$o,Bv-5x\-j7\`0|4%4tVB?9$*SwެjXɚ9% 0O]㸙ˤ.e.)X#]N#{8e$$_B Rsnwom6dPo=0rbZ5PPo0LK%.q(zTA642 HN_5Y'eM.8x;F5u9`_xӦIE] ,a8LRVU#Y{X/Ou$~WN"3WX[fYȷ衺I$w\(ab0?7M+.^jj b_V^ dxCMQv+.UVжԿbvݴ;mLp Я&PP32:v*i59EΟ|:U#.ԲE^~H "-Y.gL{B. Q}"fbG^q~+Lng1Q?z=OtkvTlmjGed%#L]ANsyk2?2_(}ݚHs'eص64 jDV#>6'qNX%m7K:`«f:<,XGNB܅ +0R̥H=9 |B ޲Ko+ Q$~;é;GCzq>jx̹F4z(:9V"brzr7z8wd=m("bdsc}H6Ψ+܆(e@BWk!C0`60v.^)Ƈ謏#w'JjjB7y]D HWc/^k" c[\4ơ`6zf~ޓ!wPJ^GgtgOe_ 1K*+rXyx0m} #⻁:P- S~ֻ\Faj|ʱi RQw|Dǒ[|9@)/P cOv~vnvaqvp.lDߧ0Ԥ^, JD2 @1N>e#)CųG>v31V.c2kȠ?{l<蛧vX~lmԳ+jnMYn㋬_3c)]S# 9[ za1_%E-=*ђ[*vPerеVJ`*ؚ)%7_Z "8֚䴍JD^QN1"<=y&j4zaޙEQżxXjxOQrDA@4{i&Iqau'2ͳQ6*T wp͚ FIaHcl2KB,{"(+ L `?EYC{u|bюo, r6C" 5=۰D{~ДfTBlj F _H scHX5cy|x{sۙ< {te-_Y|m<͡jd꼠]"~E0I~=M/H{\lV iŐ'iZH">^;"a.ܝ|aPFq,2X|who`僃! [}@uʴid䄪R441ogu@6YNͯt!6 k×YcVYr$"'C*`yhl/D]l\8+ Wxkgni_ƖvV/8؎)ک!u%$tvVFvXגK!2ugJ\t9F*?׬+qvب'(,m\I$719H}rxR_ٓn>_y1SIp85L;'m?ASm ^|i71L%P&:vCnWFY==۟5 q5QZq=޳ґ,Yv/ ZLƢHVL&CR3"X S}3. NCw`? MnȠã.lrӍ`ڹdzQ$ %{-ˢ؆dbXLGWIxsmm3abP>:)뇒} ULcHfʚ 80AU[_> }7nV.@BZByvkƣg |ɤ7ٛ{*G\}7Iw~ ف'.6/Zxc,YZ /Y;a!L~_@1*j>x+ҨP~/G=0f JƔNIirXG9!~tv?RoL2eM*}%m& gLa&{V&{'W#8"a~ yoxVqn͜&w,I5Є/N|Ìz b@e%]X冀|;iW{"Sꟳo q}2,`Y^XR<\Z}BX}NXrO 5&r4ɨ~5xtM5WI ?7}嫱Ym]JS4*>_("M>sg1]Bʋ u8b7c0{n2ՇD*(ۊo[f{}ܻr麶M 7Jj[ ɾ&5c:AVk,uG™"T.Q Q\}W. >9gJ!LD]ufQjKq_HD5,`6 …ΊinngJ%"lXH?BP=-PT~ѫ>t{ +ɣb/YJ+~pfЕA1 ,\7vWWr4h_Mkxc9(a*d#-1T= BB{ͫCi( s;&{ÞtJvU;"HԺrQ۽Um|Sϼ[ӗᇅ#IQ%;aQ%G#t Um*v'($+9"]оƮ3P&ԃ`8*~6Bխ&=Τ˷2:gD*{kz_TfNS"k5ELz 0}:M"M#G0:& 25"MeAL >/ yo5OB`uo]3r+}C(0)}Y}jP,)".-10w)bt7.g_*OSyۭYX +s&:i7tDM`ci}E)%п`}IT$Tl ,=Z*5d{ Z=8xJhi%Nl:?aCGñp\~muWL( d0-g5PУ.=~ҬC<Ą#Ga8/4~cx=w[$1RmRa^ZJQ>|輙rì[)&SD wQi g'MIUg02ɆG!dzXl($0?.nc@.2C~ @yY/T b9 ([)9Be31_(Fg vZM0SOR4+h 2q0$'R_3>hnTر޷|g1vr[Ӓvv2EڟDNE+r0}C*v@E=qI30Hu,ªFl[}Gx; bFZƜ 64i+m\ـ[.kJ`x'Flw %\[m$@JK賅>.s@{F5̀|];>mY$PBMT, :Cc55b Lh&"oC%sbx!n:缂 d0UROR4S#N$o)g e-΁ߖZ+GlkYƝ4c[I .&+A'ME{EYL"mf*D~*=ኼRq|Ҋy\,YUɴo"1ͯ+~.Cu:} ne +jrp6i\ܷ{Z0m n}T[0 I,i HoDTג.ˋiLʼ|` ;%?mGfW+DTEoe8Ī]e.mE!n ˕T_Vʎ6Ǯ@*SfM¸0;>fvTcذIiYRA8D$F5!i4I{a+j[I6cx ;nLO6,ywDF֏?m<*Zrf(zlj"2ܛvp,wo̕)Ј"'R(?v;|8#u en):{*9M9K9-ŒY,[;!C1jq r*}9(:G!% _-ԑTe*mAjtߟ]ϵMaLo4(~X[.86}^%>s7'}#9S3Ն͆W S!vL#.߿aQ4؜.r~qUVi$=|Ac.Ұ"ho(H;-# Ph׏B㗔s "ߔ">z7nr`(NpRNc_b[H~zJuc/jM:c!P-VwYHQ>?z=̦sBq]He}[L!ve_VMg:˧.b{q zn"<"/Dt`j0ff_6MX :yk> 4 bb)eE!p'$DL+w.M($DP# 8*܄NNB[_3|eݲ}2v>KaAKv@v 7*B3!83̦8WEx!ڸؒѩi?Fmfw4MHF"4E2S>sycn t˃qjKnl!"dN F-jl: Jtٿe\ e+|D լx]}B.zgDl. t,`|-JPS]xWyA>>m7喇Eޒί_ۀՑi; m2EXĨZ)0f%CG|rŀ/I%yE]RՂ1pHCnDg>FKY֚aA5M^)m{*ol$.f!;mQ#ws]Gޛ#P-Ȏy<8m0jǿN>uir,pJW%hۛE5FqMWno,# Xl/<܊lC`]`x(\'o`gէuG N,R}Eﵑ`}Ӵ]x9*ʄB$b}BaB bLYR.%8OL w#h.oXIE 4^r<_0`/G4WS !=ţ`ǍhTJ+gl|b9 ʓv*:Zb_Jt(ɱj,zჹ]}7Tk 'CJI2E~6"t&%;>XQ Ѿk,5aBb~Qe\}>'4|ߟZր(y{RSNxMX. o<דը܉*ښQl<SFeZNY>61E<'n O$ Ϟ1n`dyˁpFWS Z_7wD _)= u.BS׼R+<mT;M̥L5+6Zz#qLɐ;q7aB,FaVL^|Х-ϓioÈ @0,E F3d{GsaNm縉1_3w#"XAg-IȊVQι88("AKFM 6#&[|NX~wK8ۿC4.371>Q0Ύ#;ωnJ6 \8 >[甼Ea-Ҙ`5>nNKa~y*KFsA9Efo6f>C&DDW900F0 e|؍,: ,/"\V~%8N'08d+qM76fcxh T@2rW 77Ea+dS+9la$;om=~.Sjo3'~x:B5@*ѽjl^wlCJĂ2"DUq4-ӠFo[ #lODVaT[8(: N P%s}̤fۉ\A<$C;BVYG~RI^$8*xD,"o3!HwzO &LtA$Y`ͺ9=^$& Q&sOaRlHE?E9 J lfYJʰ~VF IMS䨇W!.̳q] 'ۡCWBҘk@ޭfaU]2Z!5Wm>.4tLe( oB!|!4l5Na k .ɴQÝ 5ly"+c?b*Uwv oX%P.ߢ:{:ɀufc}lzFwp4 : ͍d3_!v*zQ$n47tDE 2gLltc(ֹH?bdK1f>.7h7Ӄ2=e`zPMC8_ ܟna S`; I#Ç΂$u[u)#DZNRPU˙d( ^|7|h`@M7~B'*@bĽb[Kq!1/Z+ c䄞p:O$\]0׆hT)18АAnHAOEej-UvI S7c]NDƎƀ-^MjȒj0 n/]?q}η4eqx7 = w}H=Hj(7*;)0`17ڹʃ1]DNr9Sn\ŔN^$_C2k?-k㜸g6CK[r= c"ƷQa>D+C~P R︯TY7A:X*67RO>8-) /Y M0qSp{zvdb<4˳I+ )$4Z{揖roNI3h\Ze09lDJ2Fɰ~cpIۥGnz1aBJ5Ix Eoi8E;OSLA%rЧBe错 q)%;*"'^xPGb5l.)`D1Ga$8F\U{anWA~KnșS"Zr|Ӝ7+v؋14pS}Xqk' 4(;dYq4&8V! mr+ 9.ف~zݬ%UgSPuAWe:.fD?[.f6)d{m% U̅uf#t `X|"(?}ߝ@d;& 붵?P:FS0H:&@x{nOcyVA Y |s{.i->p%7,SJXn%56XþJ5-01ƹ}P*>;½Ge ʰP/֊&-XG< -K+߮b)ġX_ |g8hglbiy^͒ 5 TB(ipa^MY4@c9!=r= +u[0][e6`?l&RˤjY=" @aY!?A|Vk61mGk5D|: E}x= ʠ2֕F0l._ Us_f^axÙ&@Ṛ T9ePuU5MuVH`sC}ʎ ei#^9:l#DnrE8;\l *g˯u Q1&#i}|ɥQxN:D2miAZ|w f,"WaAL,nM`ɸ_BX&i]4kYQUNM)}a\3r1uF7t$~L@BE(cL9[QAao_{K;/x f֑ bJ\X4#)f47[{ds?g` iʹH=:Gp9r hN!t)) (Bik >XSK]%Qt5&|"@L{J] /sss{eC1<o]<[IJ20эVͥybB]?zn]|TŘl<Ġ//tӲ83j~T;"ڿ⛼`gN-iA5ZV驣trVH6TͱW3_ޭണ @oO*[%/G]i./nڗѿV}=f],.xea0egg!e "#'Xf0Q"4EOKhKmj`X0=>e踆PV85%CWEA^De8"d,(gxe$Rl}^aRc^tN }z{&IQݪlxSD{P#O&` #LJ1~WŎbB d.?ft{kl%HVġ緡w?FsՠfYυeXz4aˊ}1;yiʚI^R>}+Z9(@vޤru($Hə>(9%)ϪB\_Ь;4RNսCPR<ָ֛) e61e՟;ͦqK"Fgtji)mLH ǕR"{6r} jiDΐf3h~@A$'ěv\#Y*#-[Q,1b$RS4kّ&~n%)x?]ax:ogassQ\,W0JYDm)Ywz9/rgt3AB)C ׁ5cuzv{_$1cpq)M] %>PJx7Spb y핆h/ZPo9.c$K6i1밟*gUm9$+$: 9@ o=}ZVaG!G{0ԬbA=`W%=[D֧"U'wr],ov҆_;#@O!B+̲$ɦ`|RjC7a1eД?CF{M01>d H3F>M!7W%1xscZz\*gdձփ[#{e= pk!3wr-q-vRcl۽]q غMk[,{_Kb$OĺDO:""57(&I%h1ʔ_Mbm}tvQZGMF򳶼iI5\iPÐ\3 +l@`^~}ύwb63y2h[BtaYD/Zu USRDt.oE6!VHXCO<г+Qti8}t{vSѢd^\ZuduZt}>yR\R #=U+r7a`}`k+,FHC硥B8cuab'oǴk )(U؂=Jkis>&˫- ӓfi3VA({oD(-ƈ9ędj6؂?JIB|G.3_&a,^{VLiЖkB,cl_P ᠞UI΅p [y}WYi ł}}h@܆yЈk#M!{sWkrj6'EsNᴔH @W2`NCf ew9ٸ8@ǒ2@ߔ-A/U̵blL>R>(OBOTS?ż.F|=bfP}vE%K'[^uL-R䨽AXq[ |U*s_5OU( 胦{0A&K&h@vElٻ6.BXuK+H,Y-Qxtv(,G: "{'(5Y˱-g\̗|ilEz Ȗà [l]yJէ苂&ie!PR̩[[*O[+b"\$d*P9pbk*N ^yמ!3(2|~X c *hʿхQW!5ztIɇ&Ed&-c=SWfqNG#"VX-V/ ʁ]|3NnYÌ0r a  CiT5咏)_a?5% ξU \4 VwqJ_  aP坯(R)dG#zMELrih$׭~pU玍OC{mo ݧ>>#M=g,h|8-7<^F'L .  $>tk>ݚM dlkoq]/uSlpbĩ?!5=fA1(KKe~ 2ef+)Axwp^8+L7MW]+lIuCw5\ TAl<~,h?[GJ<:v\UjB;Yω}" '0Rg/Jk,--9N18]co, aLg!֥v(IV?o3l0,:lϊ[XaNo{@QTi#5b`בEB&ãz_q1 xMud1 S&p Jhulslʐ сq{˧|=߅[ s }lpyiU}Ki bl+ЍwzS:z>WTwaűc}:G3 #Dnϯ%Mk۰-e8rqoX0=ßI ÊчmK~QcsJDY7n$g.yye?T+o A6Э#`q3}wOsig¬q$&2X Dyl^d=kd+Gca[RHZSA;1##WC+#QwݞBaSKxIai,t1~ͷSހijx87FVBSb h4_?Nɀ6to$ R,R޾00 "up 4̪-Mtoqi4 U]/3 S1 yЕ '^sLeno5&lh٧p2¦J0/!'Q{Sv~l5y>uI;JeJͺ $8xEȦ0"֎lPQ6asi||-rY3~^r44%U*Sp4W䅴`#K. | #uAUS(sM}eG_M9wY9$ ܩw%NN>ɅO`U Élkfu݁˃/5NʂC}sr8FzzVkh o4jh/e<6 6,l}e/DIR^0}`v7$k_ Bs\m-}FSMX) k(p@ⶨΘ]9tJe"2ҒiS0@:k xxoZ !ڦFicw6ݖM ADp-{ g+?Mk |M>9m]I~HRJ_k K0$IiG/RW_ χlO?n-&=C35n^C„Iy41p {@(g9e^2Ԍg[Q \n9_= _) 'tw z®-32(sf)|!1}y?ڹC1"G{JIF+iIIHc D,rBϜAvsߧfZL㬲Z8N|P3C`{VKzi{w4FENis2RY|3"lc01(3DbݳN b~aÞo9̪iFHn@$3ށ85YH JW"LWyhTE&I2mmiv%5h7ńu,ִ-[F2&c TҺY&sߗjE~@F: ?Xd#W/#`lgb 0EF=LA:&?LK aB"6B:av !:qT{c<3`oz |R uԙ’Kpː]Xܫ%Sw 8H1 glQw{*"Qd&sr iQ㳅?؁o5\)hXLCFݚ;OO[W- N^P6S1]Fxga.4Ǔw1:f V^H\DW*E rq6߆~!iau` ka@QBEqDC+h/*''@#O C"jeXIw% %ؾgP 8z'>m,c;zBJ"J@k~$^,vdf@I TܩQ>q^<-r.nʱР|}ML{# ]T.S_;LMy02볱ίQuy{I֫Ƣq=tݠb 0 5NTlN3ضcWT w `cՔ9׌f4v4p,JJ7;Ȣpnj{ ~AJn*%ܑZu5  M1Jcrq4 /pӎ'W-E]z=G-%-OZgy%mzGTG^_Ex z2񈛴NB)p.KHH(xud׭ @3].AKy&QL!'Bj}NjqƴrZ@* ng$i7u%+ԾS:l`rل[ֈOVt' 1%"obG4[3 dfGIN2rj*IJZZ_(1'`pzaU63p)'̸֍{AC%2c?iƄ4!aalw\uHdj'!bUER1MǮIBr: beܧ'.u(vh0R~ @ 8H _ɰF"̿_(ΑO+"X!$E?ΣK7ثjN/ q`/3't8F7N _BS gwDh|oyq!Dt\=jF[U eɸ\cjvcɅjyl%SjWOƹLZ Y`5]{C%8d·ҺmQ/b NP$ц7 e=gG dN,爄r7UM/RHWRXK  m½X:2(c^/t;Ծ=(1hWuT-bQ">YZ62= caRh)AC)rcu놯)pmCwDuD5JnPf]6#C}Mqd?*MqDv(\zV;#eNcttyl+NYVZwW=̚[zodaVgκ>L_JבO!**f+ +!CJ f7n3AʻNJ\ 8 E#/:E%zẘgM!\d8FHNUU#WV-Fj!,4YG jk;%S (,{spx@oZH }lj#`fQ" ghR}<ˣyRl dv70%YV#$ƝW-H>^|nf.v2XvةO&6~DԬ 1)ץ0GvR(Q&Z\Ij(ȦEie% H&@]R8JyrNS%3kX#m˭SBZ% (\Yx>~-Һΰ7h'N=NۂFdCɝo+>O '̜ߠsrxҮln"Rf q$T1Ca0&P ; (d!uo 騏݌^XdeUr)&,,Dڜ%9T1l/䔘`z\HP OOemX썻 vFGk /K4&+x@f_%{_"߯l^ZI ZݙGkT4+~rTB9ĉ(>I7~DdU80Vdod,г ft&N}H ?m'=(U g׉"W0EE&$ۿmِ?A6`g&7Tj, ;Ⱦ%0ZRhkàҰpvt0 &k!EQsڄ2Ixv"fD I=rlߙEp'i䧢:#&^$@ɫ)]%Zz oDmV`PXe;^f5-[_0H]SlZd#>]ZCARKU۫f /g5@)0^#_ΘяOu>r h2K}﹐S6ŃARjz-1a\h(P6abeOnyB눪݀0l'ח$(`9/{ ,#~Lwvb)P HubD?;{E4jMd5 ;9a\w(~|AT0Wo;롷okncꀱZS^W ?21ЧߐIVyz Z=GyXRREqtf2P{"ͼϙJUqs2/G'MO,ܪx9e{Ijj*<'M_.1ZVqm?9!'͚9&8XT s~ftX2a_qt5&G_ 3+EŒiRd&B_]e^m ]K/NH,3O[_ۨfί#I=NK(j?} J~dwD]gdv*4)nI*;GnΊ1EhcU61y2 E"2rB*CF{4:J, K.6,S[[;>g:)"Nqtc݁GX+/g`sAD0sЅQWK% g[ΝbSZK6}N0yXo;Xz< Г"r:LjmNUZ$c?!$_ݦ7 ٨6P8( qf Ȳ^v7,$l7l%C雑2+%Xf!HMwT$ZF7&mq|Es{v }Cw1nkzQ7dNnqGsI$~p2(̉_MŞꖒFohȀbä)@eՎa;k>qmKk;(PдľEͷ";+,eL {`{UT2&*. 2 6]?k @RnG$R=;tЖb7~:̠ه4օ +>; '.MSDTLp7J.;UJ]P`枂nһpphHXu bkUF?_hAkq1J$f&G(Gw0T]F6)q$]%vk9CSbJ#`ݺ!h9+OQ]6A͂P*"|; 9];եIN{x r 6v`D඼w2}Ȧ8c x.[`ޗؤj'Gy.3.3WA? F"a=-: 8ؕk-:ȟNr5zb}B<ޤBߥ=R-fvKEv-4Za(w 5@` q@gs,,ӂ/\!nUX&[!|b.&Y8;fYmvi#,@sW-b _TD{ ϞA3 f.ǐf?iMQVWGK;&˜O DP|~ R ( MA.L]e׋T\nq58.l_]qVLOc\vyFOv;Ƃz{]jOVH &Fn^}4w´. ω] S yV΃hDn0Tsvv2T,M)2ɕQ%EsG e8t3Vg\|X$8xLƤ5ȊU-|2f̠LT`N bꆿ~Ñ,J%ε+%RV(>yv{2"?7}ޗQ`28p\F%@q3stslYSvgb)| k~mw{)MTt>h*" Tn`B(++A {?اP .E󝃞J='mB9}1)Z(G Waf7sEA{póvN^ ~J$Q"|Km ?쇡Ň&-蓐՚ i+Q%G뻶 1b5A[ocDLjA`cKš,z d* _0+V\{ ,j2"na3#"F4^`A۠ZNkUh[CF$"͈0 nCG %plxHwhbWkЎgD I`t)9Y_"K|ɹwB3J(PD }#׻ z]@n\%bGڡ}c%)ykضGUM 5McvnˇAƁtLV[?Eؑ=Pkg`ܓ&-luVAg ݍjŅ !+9RTiEM!uӬ ցw׊.ڰ/V BVpnY+c0r6XχLJY?ؕ ;w8)X$K(.$f|[E~fBһߋ"SL$댶כ+&C 炼]|.nΊ8pe9s<|ij'?c|7F~"py`D2oٵ?}rVwb) jbۀ֒Xw $-B,;5=kPJ Xom8"\&һpP9@_CjPZaY=kt"2k@uH>-khiai, \I7>4\#% N߱953v+B6< :<4Q!qƗ^O8 )2Xr;>p&y2:А]^.o9urƞRہ56eAaorٜ}af02i> dwBn|zr{r( PH/3.+#\TM(${ NDE;A;}䳗?Q7[=&"ZGg ZƠ(~#a=o8 KZvFݳsS[ﺯǒ>ќïfG=Z3edi 6WKUѦPX0S|^xq m(J zDt9i?륈5D>fx~IuH8I(Qq*UaW n5 &"};lǵLcYrfg^mr}C4 [oq1{$ǝ8C nR!knԵX{>9Ƌf0צ0CXX;˦0c"=m ]˴+JcA@V93mu#rU+ꉄ]s| 6GzŕRS6ᶱVPoOcdÿ˼-ê%3"ndDmkOӸr";H?(ihVLV:_ U=()R,>_Q@!8eix(|r)HwcUM$5zy8I9$ *p#&O&/?NwૢYT`ޘY#Vz8GX{IY]HT0NkYW6z6j_}Ugx\{'k~6R>^`Ȕȵ Z5vAڽhs=RYb3;+7[Ru T]oq? cwWEudL,Q|B̅GHx+A l?̋Q=t\G o` 9;#>umSY K&X77f^[^\9KY(Ur'P聹NROU. k4~?~v:m 1҉mJx`SVx_HIJW,' gcÊ DZE^M=rx9o6oI9WHVSչ@hdq3=Pօ8tiCԭQhdsO-aUW>XLj!ni1+Oퟥ*4u wq V4ڷT+Fޚ'hSGĚ+&3դ[OޫputʖbIVNMElV{fm}AN_>DmsL׮}Ѩ.JCEuhȞ)Z/pn,f-ٍjS]Qyg݈. xCd5J+έ!燯G0*%-lҖ0YRc#x>X0m09ҭlA_ ֋e{_R)PPXbN׎:; ɔ2OcG06vwTQ#FPX/h7j8!h^q-еdES'U~I7AI{:֋zs!DJ1C~&h(K&20}z` QBh( KX~ڟ^ ֪§s O ѐdmq_A}w`- P\:F zЯ܆0C+E{ m&6~zJQ\(1D00Sp@!ޚNǤ*?^F/B_<1;[ؠ?j[gYA~*$܆*<^F(kBȄ'*{L=TwǁBAieȚS>Y;Va}lh4^i2NtD-!v7cBO7%pO,wV>']^ G<&_LpԮ$8Pڐk<آ凾pT V`! _+>09JӪT/MЍ÷̾Yx)3 \rhH17Ur%S'QcWH 0:M, jK>){ψ붴'uAJXW6%~§7rt/Z+أLW xiɉ`4]!M&X`fzbI mFd)}՛:'Dy &~U@k0bAA+U 2Y3VA)XN#jSTY.[)9;PklBoFY(2e%rR=$4s%oG岳)**d+>L+ *nYO~q@+~skd YExt^ϖv=Tz?^;(+W~- qi.3K% w?gְ$TСTuNmET &/pxii]yH7\KQ 7D\.W+%&炄7,U"٢许TٸZ#LynThF# ʉҾ9duMw}i*Rax\X.nmQl\W0A(Yʕ ф/0 rs\2y˙+q@As/Έ _rZ~,YO8tH BB1\W7 }y .RDтn<2slS<'#7,vq-0_8/L@52\6<$'8)u&@9+d )(q F; 9iX\YMhIvj lݪHv8=Hs(QXji&;z{;zѧDUfنL]l.qoe`VSlʍ#'YJ:"[kGW&{ 4XnGN輵FVH'5tC cmөM3f-^pb=9w=y $\q͔c'e"vJzHJ| >2>x}V2_% @`k@m|v%V~Ap ouT&-A_6l˘6͕2[|qhP~&(6LqQ2UlZ$GJ6޸up 4?`ڽh>`GpoIrGɇ.$r)^N64XM^c  d]>6|jTgAʅ/"xK t˗KkCe}VPIDlvH@tCk] mvPH[q'88gdgJH9و߾ǔCPY΃TK#و!t¦k>z]Yr Vmڬ>~>,vep O@'8a߫|1̣tv3$=Eznx4 }AU=$&lrz0d+b 8-(KВgR6$5)j(`] |Uʽ>W=wO:#xN,Pg$@0lYc[3OǔNrc>ovi]eb2f+wKl8D$X!q(B#@Tü3tg=s5ᕪ& {}.Zż.~>+ M83 =tڏ uO* (3RݪH|QwKa~ oXuhGvh8.sxG]2zQďZW(ISpߣpKe,VPyQtvmrzȚJ* P'>(#()e_:OԲ~]_;2;2&=̻=2#`)Oࡧ/"qigɤH}IH&Zƒayt '8FEʲZ(,k-~t`gV}ejW̩L~]|nf]_vNDٜ /p BzUZI諁V-\}(gk; g꧈;̾X{bdдGwzP8"YmxLwxiSfy4r&3vBB/c ^ HBDmA;bqyF#.xf}/đ$4)" i͒X9]uAyD|>/ץ(|2 Iȷ.La# TA{|ޢQx%#{v7RWߘS3־4[1z?HOPߘ?kޟ xrAN݀~ml'*31Zϩx-fȼpf -Xf-xIF_)Yѫ{B u#`-+VQ2Wq %/j- ](8љ^:@B_ϩOL#4mZ\0]䵼xGЁQ+TP/^^[mO@S|z#vV%ǃF{>kjfau`vui8D%Q圗?OMޝF6?]:y닸8I#d4]Suk^rCF` Pb'B2&x.lJol:Oq Ȥr!H0/C6xf R$'\ĝRS>` gm n Ы8q55)Fl` 䗯#ViĜ0.@ J`!X^B4эjAˬ,) T>#ffʻuqf'ӪMV*f'bIi`(Z `bNpiԒ&`| *һQ"xDB~1΀}tI"f QawF<^u)itnbBFe^x_?[cb. MEݍWu۩ۜ[/Sc 2xbAFV׶8Ҩbit#)7 .Je i :=%5>d;鋷pAߦ#76y%6bb}C-n}Gx1 dy3e-ˆv}Xf *ML5 eӪS BOJƛZwpQ^Kq{b;"b\0]SPR=ƙݱH]vY9ݒ}&H1=VʶD몈Q||OH˳BEeSwE\[Vg"UFo(A+}@u%L_C"V }t#ch[}`E VyOe;b1t $8P㪱+1Yb!ۊVC6z@+[EoCqEp0jM*?&XčhNjސDpe1!%fԳBXO滭Qi.Hi4&'~+na+.=8?dAב$#ľ?8P'M)c&uwQAQ,{|\6MNN 0=x-nm[ј1~+H% BLuX(}#ZH&FwAsyT2$g_si^6&8HC訖7Lyhcد'岪[Pe9j&"T~1)ۦ|Be?Ni C,phqzd;QoH HRT#5N!v#[L{͝oބ\&wWa1GCںzJtdes0o5֔n0™NeWt7<hgZˉׂ0FE¼QJc"G;W5f1Q:S[kJ.clFeud04|gI%ggql.KE`s!\{#t #zh4#ץb$<INU*TszJ]Xj ߥ Dcd "m5sYrA ECu g0ӗu@^gl@a{vX6 t?UQ,^;Bf[ؖo05 ?N/092;+>~U ~*;1^5G|lJ ehi+)§JIK$UO](XۀN2a[4e^3'O%TQA00IX3"/U<S3.Qa3׃#5}D&kT$D&NoXX?w'Q<}T ΉW,QFEdy]7 D᭥ȪE5PˉvTӠcuqyπh&SLXkxxV Y|A$F֪*d C5\0,i=}=lar:.-poLKZ N%Z`TYFZҭ%pisѩhc‰0;gˉ̕kei \v|r=Il~f&< ńr O@ӌt"MnSulcOQ ^Bg,^S/P*" >Ÿ`HEXK"u8q>QSEi$VmtrE$Ъ^$3`Z<jKMo$#Ma}|@6g)a I9cM ;|}m<9gɥ Vx5ve~Ɵ2⫧ݏCȱ9n-gLl{ kU/μ6T_E!Sx%0Fn=KH&^݇X]?66Og\T;CXCP1(}k⛦d|{5&"ul=͗CM'9r"#ײǴ CClQ&nJB($&h& ;%ۄK[O[JKK7\ isngm7 hIU(E-cL8jpAP[VxSP:3( L?. 2!fM%/l*X;[;Aw&~_n8Z f~{@?UԗʄS]-/ Jv4\(dP/scW 8ipilm6u3~. %Fhv~{Z\QݬnvSΓ(L瀼-SaMa:(}.*v+.x&S 2C_SwSirbn0n, Ets;'3"Րѝu3q9AV;ç >~)sxu"MzR" Ս)wHb&/IO/] Q \23Pix{ŋ4iNtL}k2VM+wyVmЛjm_ V79y08F;tuP~MVC`]͈|WYQ6ûGUt㳀6jŨf8)2-(f$h:U&@{x.YG^8uۺu ֣`WY^N٪o vzHsZ߲!Ƨ?Ė[&#r&jtUַz!z/$|-5yXkE_2 Yѝhd6v/S;pdd*Q4QF k҆Q:ϕ=qev0zu JWX?ukbD9ט)U5!L6Ȏ@>}NsxY}+ 1QDoEr;gb%ۦ0( CbOD e_MLBDEt9SGkHly1!O&+ Z X< 8ĎsADRb~ecb p~T[i!<#Yۿe&V>lx9`='~o_ӀO8 f>4yCW/jO:1l׋ufj&kIP䃇kNmW䂰!_ ⓾T/C)Ig7 Wi EʡȔQD!tvNT J&YØ$׏801&4`#(o̿K~peKky J^'җzjnE/ A ΊoKZ_I\u?#-Jm[R<JYۡd<#6;s,@8xr|.Xa]h {D ֶZ{~λXtp, ݝ ԓ)Zu%PL3*0sj³^rK33!(oBHO$c\hn|3;(\@u -m}<߃*37c`jɬź.0_g=ra4i0CQ,f Sր)Tv/;K q&EW}}, V-,72N0EPQhvDL~.$"|ХaKlIH\;3Nż@7Yɋ?K KjLaBJV *9>== 1[?(bݮϵT: CjmM\KmnMb`Bi$w!}^t3szelX;CÊbÓ]Dx8zwl8%&2hON7u~. iJTa81{ /rO#3bLL*$Ƀ잰UQO A<<ýǞĝ9zKrS7WFhZ60Hr, xq6U3[5CRd WC̪YBfqy0(s r3^@!S*=>-<K^n/W JS+.8c}ҝRLk2mb R=i.6݀C%,dˏ!0:j?kka6>n}\U/+QAqu܏ 4o6wY/s^cU!質Я5 墍טk`%g8@.Җ+9lE_UםHdoDS\8K6x"d$`lvqS25 ѭw> ?-Mf}a-I)D< 7 t{$qC%U˓9(krAz g \qoSoV zֵs+v:0W Z~;AU5LoiZx. W'ݥ0a3Uzg6.BemW@_>`{>/0%SG@lFsS ҭ#ё&8%_i4iwU1@.==!ţ$W&F5xw i񴖲 ledVG!:? sC4 /OI&,/.V,vO$ i7bRhE&WcRsjո,ۢsE͇JAIh2IJM\=@ט{*,cJ?<ڿw ӻ\%#񡬖BAL"JS6}I1 I#*顬TG%8 Q1Y5BQwߧΎ?J-t kW{Vͯ(\_[I[Yp)F7|N|SKhf%~:FȮF!.; {G,ÊQW1gFB5_lhF] Mα%~t~R - 2z`j=_KkGL~=XK#ʽ=aed聚Kv%ه!9AMˆ30.+Mm[^“FzOͮ [m5Q0mS4*jT@z[தsSD`  3nUV*rh !na0LϴԐKhp&cYchsZs߽PCIh )=eӱ>`M[G@aujq%tH1g@Rqt4 RZuUdm1K4 WcTv$*9/03S@;X& ()_7&Eu١7cwבxe'IS));oWj jam窱6VVv@7I?;IrT?Z*V=_d-t\3uqZs꼚i_!qwqsm(z;{2Z MEi89v+Q1oM'KH;Kniw[mo/J.f$ǂ;hĊI92I,q-V>tTԌ=%93vD;p>9ˇez1B7wU=8,mP"/]3s*/PXpIK92h~&o>@&XEc3*NE1.^F$s ݅xL4FgC/5 -on)PP^q%uʚYF^ +̇5̯fE9'ClC{fUxL])Sy0 t|,ݻ2"='q%f2u_)"}iiyOY1UrjyaRQHFUH֐R% Ks{Jf>hr$^\fEEݟ?xqH荂&S!$ ֐S*\jczqxx/Q֠m;JLz[GJ4$$7YFUt V xX YNk-.pI8a_&VyYH(XK^/rȉC݂BO,IsFI)F|q]%ɶaJ@J-u%uNpdƼE+5 S >'ÞH6ؕk92f yCUd+krFGҬy sw} W/\sdkwٹvcu򛀉tDhn[Zҽ`.%*P8N̈NG fsSYqsk ؗ39=f`uèKO\# s!Ӵ*i2tʟpT@め<HVBJ_0N23t[QS'>(!F,u\Uv,%N5^#y3m=lEBfA' jA:tsnm2 }wЍ ,L1`;gZ|i8oafdd;')/W_뎓, Pҽ"mZKWAujo ia5^?9m/w 70:(0/ dx,,84 zn/om`t\0.#o`c9 .9m^0@+΄,¹S g,Ojb~?[~Ĝ#簍:VnL4xYpmݠ`&F1!?nԋʕ-jS&`ZM7<ܑK.1y\j?kʡk2_^WY l*64l8q5yGTHs9nߒ̩'8@mOrI5*'MOd3JWW6CHjp@ קiވAܝ`#&z5_axmXj[WzZ[Ĵ m]nv|d%FWFÍQ? 5> ;EYʥYIԫ4NwChrND' M9lTa:d_OC6.kYf:lpZeӰ^ Š]YH癪k|hCI(z~^5 j!nW<@sOʋ&0ˬa}mZd$}]c*m{=Hp !H8.;0Xa0&! 9d<:q0)|D.>'%D>ϩwZ1  +6$ rGz9}1>s0ۧ,z4(WhkN޵qz +sF-,8g68m @4Jlo1Q ޳,J:M~|nO C9]*nD[KB4Z՗- 6)\1p`7Is_U#x,bAf)iRRL:Sހb~0g!C8"FD|@R\GoIdEV> wxӚ'"URw6[ڈ ʦ *<`S^7NDa0_CGlNX:$Q!72ԟl{HkA$o'">0*w8_b~ #sLdɣJS揔%AUU.~ x<|~ >^i\rR}=/v AX]!oo˛ې[$|rtuyXƐG-a÷%:k89K9x>t8KwK4{NSzpot,atpn Ye=3v e,ięօ5,*' vZ g7+9$!C"h7~c*sa$9M6d|:ÌŏӚZv#S`卟.4Avnlq^%V}[ N j"0mqAg8RalE%NSeed4dHs ~]eHGhDV ;j땡mM8 3F2C#‚sUCs: 4=#_~$Sףu~Z#FbDfµcIɽą]k/+ T[՝{(3t,`yԦI|@y=˕}j3o1"MZm翎_Q1QFkysv[ނ4$80ߙJTStF&AӃ{5rq^z^йs\.vU.Gau 3YWL1zԡ]پO;sՋhGVR_KX!cYfs2U=:)aM '_>xG l O%"K;jbNJ 1`]KU=d)&r3-zx0hm]XDʄu+"x+NY߻],>kjb4k~;i~|Ox6&:({>)Quo* ݥ2'-MV;YcB ҀON6N+B8IeSg/W6m^/H~ Y,5Qin4 < N;=N1J4.T2\<*ЃJ 'n/)A3Uqu<ˣ{ɾU#ū%g\ π&E$s۱&e;(ηb$7n|+B{ӎ`8UuV~IsjU:'T=~AA?QAo:T$/G> ҷSm謸2NI0W3UR91|\Q|a5l6@,ks *WeMATlU|m/:OŮ k3SO\t&1Yt s7nukcG(޴,ek֘w. `3۟z]D-Sl>a%h nAh#̋qU*4C$lb(#51p帝)/s&3P!U tMP`SV PhpV!{Nc+UwXP Χv*A5m2u[ye%9T=p?c){ݶ4 [)14zm t<9'|8GsR%yrNU3=L"䛩`"x֣i`Mצ<=J@A ? Z% :WyTƵx@;oK>XJ/nIvBb?Hqj)otw?^~;Z^8%& jY>ϢJ$DRxh* =/΀rvr9ՋpqSp6ࣸИNF(c6\q&9{&xNr fl>r[i|-E ?Q ҧZ ޲+gہBtcP)>'GU58=x)KHb(- pg5?G qz1]Ӭ$6@XӇW(ob%vSDKAQ6W@+/3TjJ l0[dIS>eiĮČsŧbMt#-V$]JQҐۯf36G'k6ΰWd;mL1I~!3Ma(ͽ'@C0$mO`H1Q+P掄<?بTSg"t" =+G:AƷ_vO=y[Ve/*eO#$nIstxX(E '6,6 l4+m^Y"7h8 QO<7Gޗ9[3/ [ Ձ[W5|Dό{t4w-(~FE,L|59/ Ѵ͗sH@Ve:V:q;to'Xq=/X[`agH8ŊH(jB/|qL=Z K=?b+GPGoŰajA,M]mBqG)?[h&~_`Zfn-mGCa;5 !ι"bRc& W/؊R IznG@%De߸n=>ű6F-K ozD<\vn祬ᇊUާ|m0C֘p),@)8?gIZcdI{&ZvE+t 6Y0旣䞳)XqD{c̃II )]g'"QuT,'|&B&u͊ȍ{ŋ@{Lu"ԇzmP5z#";xc05-a2(<(e̾ QϜP++ݳ kndzi٢2[L IrDJŊ-O[˦a$(}qE%Ʉ# M$3=x֍,r,[ySôc~ kDL䂁<^: Xݝ0EaH:iv0g8QwKFx A֨d1TT41mp42awx/WJR$SIQ`(DMjkq䕛k,y1S;i_螾϶Q ^v^!>'gCcgC,\[$CV`|s(\F,`;3KwtoL9Վ ѳI20Fj% JHVdbL *K*|`G(]ZkEEHSt]g"dLٹϚIEyL&v>JY(>rXħvA)̃ާj']e[lK®?P(gC=sL:yO9C+.%Tb u<62qmb; T&MI>eE4Uzt+%`-}n{vJ"#܅L'V`~2''/5q<2[J/ L2g$_@#>eK&Yc@*6(vL'\+uqrՎ:ewrbd~vܱNU,FiG&_f^G,Z7AD;ۊmC 4+wvIDRUhw""d/ Y7/pꀙ)ޚ/u0ǯRAjpqXPIkAa\7C4-j$}ÂG <u |FtQ䝁ZdFfKӞ:YDL&ᱰC(s4C-T5",U?W*&_kC;i :93mA]ΫWԴΆ,mIvZCb)vPaq̓:pZ#lSCʰ3ŷ2OܠT3Bݎ25ڻWڧF3. ɉ63!|؋WF>.Y&> |GcEznY\(ש^لXV5oD_1eaa0k%Q3 "R񳷄n|\ (IBHsRFKryp ͮfV]8Ų5sJ J #p<\tӍW ) qc)MQN%Z}$?~(@YqŃoaӖ=39wٴVkO P(I&DB:)Z_-ƦUԙn^=sg8i:rԛN2mWߝdM!VϪ)bQ/Ș aj"o+Wq6GP'Ij1r$[U6z\/*ѪV OxcɏiiwM|XzNz>[Gmޝ@(B*y| nXZW]\uR^a[PINܝ9#@zLW pU' ||`2 |lfkJ!bSw{4FZJ9Pi0? idF[B|R9o̲K˧3 .ڌ[M㶓v$_,~*O'}A-sCm'0Р+o$M좮8'{v_ݕ7WrkTmñ:7>&T?Cv/$׵_ug^ׂf4"H_٬kq.C!&kVNl7Mf4-S [쥊_3tcGh_U(yLW%Qe@2DoifP58^2N[o_7uc+чKSϺu9WB)iѣIn^y1:ީ+~{gc)~[%f`2#֛S6gɻW`O&ؙEm+O0+kl[ܯ6Y7!sz~OW7""X }1ocXl="~̷?(3IM`%SmxE &cNFH{]ux^nU㒛a"(>(fBU̿5Kȕ2K2&}@/d+#Bȡ!o挞N-jq᥈Dp@R\L.¸.{ X([yt^?մm1i+Nc8`L{.%5x}J~lV$ƗH\Kd5 rWS$rl](ϰk࢒LCovL0ߊfg&"IكGE+m9nuX64]QԱƌE[QeoYM%c88;ܩ(MGǖ:^̣FKi)o`Ů7RZհ75o) hB8`RD)w^Zݒ 40F\dXN_\|6F`FG])uU@ iw0QL7|b, J%DCbe-IiO4n$mÝ!g9)7U`Zֶ=ln<lJ|6o{^jf&ֺF!q=J9']cOz= r9CCuK9u~b]uҚjJ߆ <nlJĕI XIx\Pu7V;:s\I\3rKRr])֝H6k)xD_'.x}1kJJu-- 2zTO[h42#c3]T͉͸YH>sf' _Rjr]ipClj:knxXEyo4酰n0i(.QR@%+tYSBMUq'59*W473nF~ɿEm-S_qh>]]0!j.<-yYsm(p3PVh]nY8[i҃Ch6> K t1k-V6ۻG +^h :sA3@޺ XžFIEۢ.a6T$2I*.\Hİ(X;NA?,+vyIkvenZc4菕Ly5q4ԉcb 8ޣs ]LiTB^L7I%Iў4^v\uaZ@a4Gfa"B@FZ!p) ۪^ e<]J/BZkUK{}QbHDA98g\ka\PWP'9|j/t87QS[=pd bQ[aE,6bִb8NZ =ԏձ]bdzfbG_.g&u;PCe5B;iDf6 PB/u&2nhO(ä} afiׯ?cQO!WՀ3!^b~9d?#HWFUJxeBL4 2 7 pr.vN$g Sg"D"<0$qŕ7YSB%e|`a ^mp<[d\t@:Q+UElmg g  Ypzx{C"*4'ѽprޣ䇣Q67,B|eKT.(4"cʣ`7s>3Yllzvӛlv,t'q8AnM`똭7h7(&!Тo~sPaz;LτOҢXUTt2dN[kS 3]~[qF,q9IdJzy1wOqט.8o1SzZi!+F}8fˀ~aA, (ECWdl}b%PT>r(_h~^>]ecٵ]td˳-إbMο{ s`]ɠī~v+>Fq̎OjAg7Z{H:Xn[hqn|\E K{m@@&:fʳ›_UL9~1w}Cȫ"SaXBU`g G*J\|5ZY1=B"ƨ3T*5+ėȈu!r&*LsGdz,:7},~b#_xwb7 %)+M]g61CС/.Ҏ݈%h뜥qBLBq s/f22D#r!k(&)<˹ i @Εh28:Z h~'E 4c@Vߥtg~3%#g1^sЀR] lTK> y4fV>-")a*._ ?eN/e"w%EnDͭ\a/=ﺇ}kN77K騎#2;fO(PQ-xVE=1B7 _0&io>ȩtA]9k3-Qn8QfIN }څߗQh n-?ESa; 1˰jYx `CP)9Xɰv?&*t"^+PR>Z|ndB M`CnٚA jj-)'X0M)VgӼatL~IxTL%7b2&2a'UD}X$ U_lIo!x2X);˞XTO*f>,A=lVW`5VXL;\ acfɶ﬊0$#d롞AGVbjA8Q7LwI!{ [g7o*"7>* {/UEt)̃GH5x,D/ő]#I{kv[|^8!LWqd2~JΧoϔB;B]-XFVyyԚ9̙a&J/4c?tJGh1N@B)Nmgǒij^}v0FKl''EF#To^-gvWQ0!qZxhiox,*R}ȝSk*&KptR0ؿ{f"(LvH<<ܘK޽j4 6Tne\'G;be&!|Z'(%*'mdĩw-]^bl)ۺ;ejF-rnfӮ u6:b>99Vd,`O"ŀB$݄F'^5ή!HN(G ϼ9\M7փ "O#b-pKA_ʡ*fC&s9Xu#MI=KRi /}9`BZ :d㱅TJ1.i=Aep+IP>in! .&LBI:JAqA%1MOt[(F7)_zw$y~p{ ѝm}Ў#h>BlJz.䷐C q# ٤oqnۦ ^%*M~ecUK#xffԻVM:u!qhYSqHDG WQKhP٥xmNo @^„D5m q~F0ILSb{ O}]mYl̜\Hebk6\-=&lKoP3vGYk_MB /pqo}[mt=n`#5@J4-l+kQ/stTV YuFuU*Ey߀ p^_puyQ%O>n)/!g&50~]pn?HLc }Д oBCڏ=A'ݚnJ!nQ{~%,ϚL%@pV3($_=F}ЖaA6ĈEχ9VjTܓ~ J.2" \v^qKfϷRd%z8$}nlE=F@{`HWdؓr>bЗu| Ph [oDy \m|zt{}!I֦*=΋yM5r2LD&:%Wo ˷~wʒS7t..S::F҇\' _Kd1y?٭-@ݯΰa1CQFwA&֪w% &gn,U(,.UQ7 'd P]kZkQ?/BC#/6bͶ⢱NeD6usg_MM)"S!£]NsjLB:ݣ+ɷ8NY1.N(-w-Bbd&CsJc(4 ]0o?]>GטA]PD4MAVfy7}N+Sk^6<Udwv+`,gخF/6*ҩy oJHAl)M9]O3GEFːR?"u]ݏ ť:t>4W,N6[}6|zo/BK`π~V0*"Ibف/A}@:!FA0R㠚^pwҨz)h58Jdұ*`Dy/!:EVG6$ɔbЎ\u&jxZi =Ӕ&Kp.>Dq…f7;[/6=0OoMu*$lD4+~~#qӵZvOWrD9͗8;O@_FatC2!2M$C e$Ӎ~x>#[u/v*dj0);Rw4NGIɺX_e.o2AT"O9ŜEb1T`l J &nV+MM,>fwɢpoFTs/x]3мNk$KI(Lk:Xҹ\>Y,lQ%xĉrZӘUi8Wr̀b l(M7Ŭ_DYSAg_=/7$7LAr4TfZI}Zb thu'U[$[%.]^bxn,Ynz"pǥm+XA3(_%}ܸʫʍ|{YaZT|y:r)##{/Gؐ!AG34%H@TOBaY ic^ ^6Bx~gbÙO_ R}DƠ=Q4xuA -1HwvZNj/VnTffŲNB[xF.i;41~;J# "v'Ȏ:K# BP u(!+"f7FFA_)"Cq`J;Xݑ4χF4$~=;qFȏ_4m38bZQgȺ%/!1bH#"/?B7 #K;7Um+'vmWPlE,*{q`}!Of*X=[G K)OgqN+$xUo+G<?ye͋1}ǜa+ x7m~3&z8TZf_a{63z0/Ý1&+3޿5d@U\_|-$g|Y/=tsgp8:tz MZoY෩" 7Kl1kr~hQP_o\ӯB=48VlAHS=?yFk2y:o)|DMT0hu?5nR@odH氧8 yBexءDLq/'N ;6':f3LN蜇 fMroa|T?m7ev)GEz7d3>ѱ힨3K2ઉWaĭa"#,#K$y3[O9oKM'ᗇ^b޽.P&m-Im =M Ǔ!cqGM5\Q+pSj6ꨖͻr[Z5rÃ~_p3o&8tX^$jW={x ùG-f\SK c}(IIWlf@uV7К=m9f x'Bҟ5@bw}< ̺LV%d [ O"a|[&),Ѭ~ߐg"wε+P+|kR|)i$S'7[QXӮݫ<4]IDkMmCucP+gj|QۡGXs#܎\_`$wD#_0أ zI}?<]`w.f>e`W?̨q+{L"U&^@$w~'js207^$~Lˉ5-ʁl~8_gjd ) GMNr!oHy'[l*ϭ81[U nOTRi鲯rr׫.P}[Bo?ϐA/r nBIU~Z$ZS*t]FG'6(j2T<1M@ S 8k)*32-wi='ihp,! FÅ&nnz܈Txvmt{ĿRslX m _Ȑpk:([s5W/nt= }бIn)W0^SJUpfn3nVɑvW%ʉ.PǥF(cKHyw(l* 7YgI#pnٹzmWEo_M&f)\-$x<Ṩ: 'iSBY,bzkjbY 2Q߾p"(-fb]d]mFWhWxarJ[<"ns NQ-hYޓe5N9bg-wVևG Da!E7C;Nh0L<%xt!_e\@ m ĭxUzk֚M4SSO:+&Tcf0N㍪ܕD.q d?t[i6'Ukbnem\䟣 \[$Ulثϯ+hHVAt|> 6?a-9= nvgrx94^~ѻy1kn~J= {'e\I1!m5mY$UC2Ƕ !(}O[usUg1^^RMveZSJa b&}!3Oh`Vθ^{uT!'WDRVpPߵ 6  E*۴3r{Uzd-u~(.T`vEo5a\ ,'s\hZD?˅;#Уaq殚7ZD`/N dq }ZiD$~1z8Ȼ<ÚH5W]M|㋽\W!hߟNY=A~>__P _7<2~%Wn1f eT(.Bh:7L ʻIq+5TmܣQGJIq_w}`Z{gsEߨ᥃ "7XDAV6K4 мfj2sVh.7@g0RiUw:wmʼn϶;ܦ JX qQ8a|,|sm*ؠ剼_I"b?%'Tjz;%گmMd7nKt<{7y,zY^s.JvblucXvN&mL{1 F'iԐu3_1~^X~ZLP=Z6siJSNTbX ]وcgV7U VfGmKW>1Wz0V>o'Ҍy@؍9f9sQ:X QcS5V|H"![%qL@890yzq>( <k+yBw l$P2QmfN4:HIi-k( s&$RIç!d_k kYW0úZuPe|n]=w15`N_MFnU>,"S d /?tѶ@u \>q3v]Am3%\ _0R ec$4g(x9@pu d&;u+ŕ!!S7+[>@+3{@ăgg.Q p$, F`O|񿝗!R%;(#p1kEe0n,Lwxb .ݹM# e0smޏ3?H!;xLLs"WYK ZE?p) $C~n8,!z} AlfTBJmrI5g Ύ4)ɕ`#ej`$.:s+-=kخ:> -ŀxDohH7OR9W2wBgZ[sjeJŸ)/da:Mԟ BP$4 W̿).*.n౅;U#d诨F8Гӽ4Zb+tq#OE(s/r{Eb=A nƹ-du:j7\9w@ل#[穿6+~jVDqŪ<5S܆[d]] JXzKQ^fo/$ې} Rs1HA2 `+;F ''ymGF T!ºbKvw lƣڶwӺIjuKTp)dDMtbĕ!n&CL}eQf d @Ek4W ^ c߹{뻩qޥR|徎X$D@ =J>\˪W)4mb%aQc\J#Mdޜ>O{`TVbm_'0﷞r)f@I!`vQKMq.™EYul@(hqP"V%{~!0ZS) sC @ 9HCU3/\.jYYz7YXrbXLh\ }YPh5SOp{ƙ i%UNXӠH[gYv7/6ڃw] Ө4nUSmolsvڀ؋^ EBF7WfZDW{92mJѐ;"$nh3Ck!sKԆmz{#Cè5OP&U&D=&9=@t6;MO> Gٴ.C1/y5I<@rAq k%{]o<4ۘ@Ѣ`qQg)kVU0Ooۤ˃01QWYLH]ZHN譌ANn]\6K/HRRsb6"oq(^(;' /4wM٩hf'j,*8VK$JPl\^ {iFSƎo ß.)s?utVg_|f 꼲:|42 ah?YwrXtّ n Z[m*u<ܪxI d̬75:Yꀒr Y4oùa=EPctvQ!>cj5}Ft~']gMUD=WFM'? C6^FLRZr? Geh Eޙb,W&`%>9Ü"/nKO>U܇tjD@ 4(\S"? N+sW5ٌ&2_İA_4 N`+=czHյx͟I@вxSs9d!6DO 9O&*%mhpX ϧ~>LJ9@/zhY)=WF{>J؅9&+g?//hD\g_Ӯ8(ż! "7ւ͠_^9٭; ^HTw!z׭ˏACE)箃5^S/J۝. -Yg@C5\˛`+!"LyDeD iߺKQ?gRl,yB>OflZ[^@*+M-|]fz8`fԫ5W {1k=.DȓoֲF^E+YkQ@sx][ tX:AeRhwLL8,x|2}LdP-͇5 m9CuE1Ro{ .M_-XuP?f͝0*?YR *WM;b"E 1LX^ R$~O'IdA'+QUDÊ^ss`J/:URdVne&?Cwӕll 2XffL!didʺ'f]|B$207K>\9i}>@m}}XO* yÇB$/r;Ўh$c"WÏrw4=ڮ[xXD8{KaOՌ àr6!i;_ v$$F?HI[L ~6}y6輧K X2p1"O#F8h:*;w? Q5M` CYXRאԓ']ux.sX8(qG3h˫Tx (ՙ1`m윶 g+1$ /&I۞'\c>m OéviאּĈE5_jCԠS)mc7Ue߿bcY\&(Qd.g8§Ekos VP7=bD'9]#v𢮰%WB"rƠ\]-Wz@IYSW V*Z4mXgRRqwk8x&[~[tY L ^F  X]37d/ۥ〾P)ЗU^dS#ie^)tymrꭒ_7+.XhW&3NR`%k11Ny]^jO.h8+Οw`&hwϗ?-V!c__ƣt_<4VkB >cۃϽf^/FG͐a.lB<Ҷ1ݐpwwb*+]R{u3xrݹFu|[Rp%k8ehi%Z|ՄvFʼnE:ʹcdzXIsuw$d&*!dۦ\>WauToB+-䔘rZ&)u+񏚦(2J-p6VDҢGX'D@'`Fq"G2crT0@U iһL(;[]Byf[C $o"0*,M*=[Nibv\fN@uĻyK(f1>g;tUZj65$}Qq|m,J7 ;RC8*\֡G&`iV,h ۝Ety_^[47رqk=)e9!gTC/≆Q@ nk1+|GǦ%7s9eзXu=_! \un"? GGDLizE ky# rǐŶ(oIa 5܋G97BdHr?$0!hqn`D2$6 xِ̡/AUCNS[w%nAgT,c g٧kB6+C3GG|Dk|pVaɚuR" -b0Csq'6ȀT}Y+,яIV#jlyZ]LHJD?t⢕7ڂg9蝟h_@2a9ح7r++ / g #j͆BF=BE*(TWgnHWŔ`` Nt=JXu~5.Qo y}JWm: ,1bsP LOIn->>G[`*:sxš,Ih" /T"Sgi3./ƚЍ*X=Y&yRz]Ҡj> o?%I%>Y= X@E lT3B[yY$cA#גץq:>9-8r^]AE6o5 edC,7xս X] !1ԝ#O"d%g:f}#38Xh<6BЭ!M(;Sǃ9F(1׈S5[bA7X@Yk_@=5H|"|t9E%4cGQz8@ J Hk!u pStpn| /6^H %ȍrr0wpb7ItSܖH+'~cN'ʡ3?6C>Tҷ/dKl ٯ $?_:ӣ!BMZn<_ޏLnd@KPǟ MB^(f(K[n:d&O4oĭ@6I)KSB[tXj"S*'n1-Rh\uDžԁ=sA'yhe(}Cg?a 4184ʲά0#g8lVH0AYZM7_DQŕQo[ V+`"N.i92fr4v\ }طd0/b/.'\pvvMVs/5;DEW%DG]JݰP켎΁= YYuG)Q)]hWsfhcjN:򑵗פ|7FJڎi43ڄL=ֶi(gHEt!wˁ%^A9z kyE)f!)ҿ~oZ.G޹;t';5-ϟ$ADw Qz~؝ˬ-%BG|[ ׁ?;S^Bw7m.ja=th̾I$g&&X;;>~nW(#Êz_y5 O M@|.y4I4P8'`O\7oтG?WI&QP}mhV3^89 } xKl#dFJPX |qBØv^yoԞ dž"^ vc3KR󒺜RL@@/k0!g; RZ1h6&2BLHo'(3[_X2onPsKp!nm UyEwPƫ!4 |EteOO)R<:Lkp(~?ۍp, Z&8i ~9%{l,xpLߣBM>OJ M_DµD+O|MC`*ٱuG[2_uY8-+I NO-s% \e@ΔOE8,@KQ#RwcaN(P7?asP:']jEW2|9z]&"lHM#5t/8?/}mglB0|| -)"Y%jItL%Y+_v;< յOpVtThZEe4>$](Ju{I͞48Ԯ 4hn ͜!юaC?/%eҹ5XO/m7A%q=zD*٭2%n+,@zb?'B*J@w=0ud:B췗)]TD~zV S @sw80dY`)2 K ²,]fh{ɷY8*74rnTcG?~Cl_:5AɉFB} "KWg`JL! QoHMƖzݜa-|V𒔔Rr}83l,G#&zۼC!e - #)u5^ QBiP$ dv,E+7vte.80 !m(GH[b7>w٥RJ|;Vq~s 9QpLP M Ncn72-)^2Cg=+~+:}:w/Dk8?cUIR!pk#2Yjs7ߗVQH2ɱAV =fZ\;#~;9YN~V<>gV1ukцCI_ܖfoe!)I׌E3Lkb#{ CL:{} j<7UU\w-=x< MĮ4453< `W?L> 8N>1F'5b Ut 4ׅ]Ap :Us6ڦxb/KP*9c2«@-aRIREzO]qg8);AY e-_іmf60"NQ7`dJ?|Ks&LpH+z-cu'8BBJ֞gN?.fh:(Y*API2c~dOZ'vy -Px>!y2ޯE,?,Ƨӧyx$ 'ѾA]"m{Vƛ6>ta6ph\+ w\x6,(lN*(ɖf3SMJg!0;q;8 R7~R)3|aK@;MD_`uz4.dPbDC ]6H;X-{'t Z8h x aSqX۫'$ ;Kv|aJ$+@)|DMxG~ICrbF.ӂ5f?|+OJQmXy,8%4JF#arln,R$"N=nl/Y#7٘1`xdp7MGs>Q\#,<)7aeSdTJN3)yMҚ@h&(k.7@Wv/pɡǜnLD<Ό.*ڀ~K+]"ɦ6KZ֥cH5]3Ԭ0k4VzTԧ%0L tW nk5n QQX k"1?SIylD451FW\5N[Mxrë}ϰE:mՉhޝ݈zښڻvwA!x4KCx0f5jžT,#7Wd{)$e(j), S[F\R2 W^иhMOW'W#1[SA^O]fka§x bldVl!Lnjgz!7@?kih J=0 IDP3’Wu 7w= [d8P<湭}ƌ1Х e 'HGNU-Ybm:0*w#B]'( \%X"qm |1 .SmE>IY-_%xcڱ_u\xڹQmvW#_CMu+7\ 'iF2 K/@F/"~c`BR3IQbf?Ei)z >vހC^a{:2|2pIn(8g#Wo+;AuV/1k`2 L-mm+o4pnQ<ZFHί ?>j96ᔸS;WS ^|-/ dCpFDYt!NZT\kΞ=zҼYi/75Mby?Շ1W:N;ſ8`+6q0L8Bo݄N WnYf%\f֔k;lQs,ר&kX dzT?.* Sϙ,У%n3YwqcD^A:00|pɾRKeG^8Nh(" OuZ6m-R.H#~6`?Al2fiQ2gI_,.b5̗ċtr!w0p%S/ @2TBb ׯS ɣo.jwL}DQŴR9-—Ji8Ar`ӃE|j菩t`DPůw#_D2pb_'ܭ?X=b_ &Bf/Cא ]1zCk.9 sp}U4Fˠ.,ĀD_U5eH6}1e]op)s`K {$Oym˩a׉ ,/!]&-\ofհ+Hk,MtF+Tv1YǙFgnw(#SDVoce5@q(+/˸21| vm&A>eԛm1w:zAA(Tʝ] 8:@Fi2)pa)|4y.#L)lU\97a#V+U~t,7[V ǚ&Dy !|i^F2O6<4KyR y"$ɣ!=(4Zx>]"_Jf BK@b sMr]vx&ʪ÷w;ܟz{tf*{d Er#P bّp)\#4{>X@Qm_ɿo!"M- =M%Q't+pA-Rw`Du88XB"00P q%|&ͨ&FH:)N|&pj4bn jrGFUo*4m<`bA.ϴW|&AL譲u.09R򝋭`ۼO # `zғk{A{ ${PxNǴK2}-Ѝ6.6;W52ə'"''~ɪq='*tJb#;>E\րAYCe e}Y 'F1L"WLiQ_d'Y  HZ}QnJתu45H|QK:fn9`$l~n,6xI@ӓ%0 M`&w k[x4 qkig얉Lr.[Zw%9W'TdaȬ孉GL\F*/D=SoC{XgP 餓7B5t ux1cEvG<ΪF 1ח6VCDAUv 2I0)bJo{dYO"L,)/[~3/xY4JuүF (o0+q3Kn. 5٢xH'B5 ;x;0hzp5.P HhS(Mes0c%^^ߑWU^ ?}5,ͧ$:}Oz pb H5өjlp3nOmC|8{E,_ԙ_SV{>%dh]huz1G7gިnEU:)&7u>`['ch'"GbA8Nhd: aA s{r#T)L߃ʉC1 ّrçt."0r7MohSd˃Њ',(HRnЁ|/}],5ԯ %uv:bi[ԛNd4Cwtgc[X>6( ?tW+e(ѥqE e>X튷[b>,-.IA *#βZɀq9%2IZWpfeGI!m+`)ۦWVJY_蹗ӫ>4GS{qT բ*)D,+#GtZIEhN:IwC0). ,Ys4xv|zg8=Dd%<ψ'12?zbX:(˓o᪘A9YL,% -݌-MNt q%jtmŢhRJH%ƨ(|ڛ.Q?gu%9]SЈ8D&>$BٲgN $e 81Ch1'ZCZzYy/ly r^ [ۄk!Ikh򟥄3ֿ#vQ㙗`i@$aObOC|NT˃@M ;({9$ @W]=ރ2b#V_ L:~ґ!WT>GʯJZذ?|T S˯p; jP "ԩW"n;zS;> n2BzQ>BĖ̳tSMX5R#w,GWtՃV7EP7B2y:kJy]`9ւ10 FEk@ƙuhfJmxUgۆ$6y2;`\,~)Yee-8Xb}LQR:Oa +~TeWtTKǁBҬ?HS<$"<s8MalMhk&k'Aآ@J-㸚42wrbtw]5e mI;~ #v@I2a絭E#{<|Y $~3i]7"]A;Z  pm篹A#rN:\GÂ< Nؤ ~J X(t_hdegLHX/ - t\ z83 )1,XZxdX *V6W"(ݘ9嘍q5J!8L)K: sU' to4D6E3it4#Yq }ҍ㋊MV]uS2>r$TȘ' JQ1y"є3{Rp1?/^`I&l:}-}Fa7yL-#l !T`aQU4嬹h24{=u>rL Fzϡ$c]vsbE\eӢv/f-V&b?l>-[&Q \cIGR.;0Ԙb\r-8ȻY`=Z'NÒ$dYWIz&@kӳSkl`񈾎Z-99.~z͹.Ó1tՂX=* <]˼U9Cw P֞ 4<>',Az՜ǥS$T`m ,ac3]3Y[e(lkQaމGPN PY{=t*E.[AXRwP-_p؝:'y $Йp!OgH|E ׵fʔS*,ϿGmMHBWvޟck_6#7{~}%Nюy,Њyk#MnS.Mb\*e6;0#)5[%̿]ߤSzqYƑߝ8,gՂ@u>@s}{\c6]ED'C9TdjraDDq!iZ$5?>j_Q׬(0R ,O럡-bP*E>$ƤotOl)N/C C I]͊ė=(|`~ھLElʻBi%FodV5% 4^ݵH>!8].Nvߋ\M@a\vACu)4~c[s Ô!-dzTӼ;$,0^|3OT?%R3`Ӧצt7 aF OfY-u05]R g-0tV)rf3=+Y<&#mD 1 Q)NJ peG˦Pj- E$gᕞk/K oMک< B&R5ln@mJ"Lwp q)9e9 % 2̈́'.`J y kc%o]tS yᖹ-TǎYoW-hgjTV(tv>|<ěJw6E(JNj#2]09d@?G<]%ٹPn] o}4q.S^ [>|ejD`uR?~VðĿ{Ž@"xH\+^%lv\췣q8YI3ʥ`BMpjm"Ate%~f0!VG$TzCʜ;3@* E,GNv06Xe'G.]&#پ'=@u'b^,/TQsQ^']^ ECYuQ%DG3HRk mG.71ӼC'Bx%l1XYd75~!Y֪N&m74[#b~23ƌ`X5@H[}BnWKm.} s|MFڀPP)5%FɈsJqJؐ3:?Aofy!ݱvD#}Xȟ6g#bŠI8iI* 9Z6a٭%n#l뗄Qo8X<_ D!bPd ʔ<~,~%։^DɞAPFgC-F}u(d w(]prizY%zֈ @]%. C)PۄQ=܋Nֈz૥"("a֩RiO`PfZ"}T¿$zr\C:LowX'Rn `GUbtl @^F?ТY+V@-=thN0oDĞ!?e EYm}+~>vC,OtU UOb4&Bw/Z "4A]ЋJqt[أ(EFY{9 -nGQ G\RF _##+W\fIfXゟ<zB#D4ROaM%\R3LH*E[4K~6QSidWOD:LƱ /-.?rE{,d΁ȿC~ c FzzCK@sT"k6&R* .art+A;"|Lz`rŒq[@jg4_OK;# a*|3B ԶeHͻ<v(D&[[N`R/#sMx>u^9(|6 Ie?t\lmQPem`8T;9ѴDN{σJP~u5c% Tee&}1V{R4Mcu~&,7ޓ]PJrsXR1u1~5ugWu>f~}"FWꏖ)~k})7.H-ROW6fC'KuV7'|gXZ}eh%L%!3'9G`'4u``M@pzŞ36Xt5dɁI80%/<b!]2TuBp[FCt"+$c>+u KXB9=>F,yiY{VnVթ}aDR*GTYM(UrICJxU ]IxID BVH0ޑ︂rQwX+yTT;2&{о+KDP_\~_#:OaF)A u9_“$>M;)ykzߎČk˖Hpr`(VE,ߦi@P4gBG08uf=l\ri.Fث&~qY~aNhk}JӇdAkaOa\)p ԧўCi4z4c/a8§W rXgb%@*dH3&WXΘ0{lk Vy愁IfTNwҸ-.?kc/NO\J4$-[kA-MA̶Ċ%+K }$Q4 :S"c.]<6y._)Vzh:0ܮ,"l?aʰ]"vYLʅ5;^RCr[*k)Ux\IV}[q9p=<"&Յ$6 k|- Z:t -!ۓ '΢&z3[k$Nj b`*PbKQt90iU^I zMIF ƙ+\2-^Uvng+ ԓ~V=ԝݸÛ<)k]ɣ:nӕr#=09Vހy;lЋT:h]'4QSVs: ^)VOj5, /V3+ٍ'EX4oVMP3LGD1tqLyŸS@2k?zj3zG GG{'ީ|@g%~`vz_?_ƍ(,pA.E5< -ZhElX)Q]F_NaQ%Is`z;fzZ`hzhPͭo-6M-+ +I{+wE2vMSJDtrm{^H% TWկkzC6p\k2# ֜e83}RX|*e@,Jh Ȇjr94]\ec4JFŜ _j~Lz@RW޻k| Ӧ [ߡ{şǑ$aD,JEwF5=8ªNu1u'LhH@-k1π#, ~zZ׳.iҳPP2:`׃+q<?fV{)( P}l!?y7,<HuJk j: J2tEM+gbF՚9/&ɩji1u=ßq"BV۟F +a~z!c [!l],M9e_\@JKU_(Ք2VXhX0<0+:; 9"oJ?&J8iDT; ftq]m8(oA47ӌOIR`Ta_ G'a1-siB3r .|A(^dn2sS󘸊e}U acԕEY;GfW0<NlL! .fn7ɇߦVM eȧf[6?nͥqs:c"Dcul9$Hzr{LBZq' OA<;Id-d"$1tu+"s 0Savv+BHmLhaHŁ_:=[z OG"..:*s[&^OVOɏQ2 mcVY:虷X, veшQxoofadtS+:g7 gk-N]Rx [DKk+ /eW4xF˷ΌNyjOبvJs,wuL`}lڟحo"BO= D_VYz9dg2Q0(Z15TpTM^P~% #}Uۑ/_X@&BίqRn9:: NڴY}it;.m6j~"@DOm(%!,NJyv{6{&WR)"ͭt(Eo>[Hf0WnR7f̛86&?C. kj"J-)H F>4s* !sDph ʤcP:=0s"]6APykם#t'7C!eΫvje$^1+y͈qRfyK䊠 N''˲ G{aS!S /c,'TɛßvRñ=KKV;S2Fn8ޤ_5&jM=Q,ĉ''&JkiFAvib9n">7KקfeK'Zd;p^7'UpBVBk|j]H;& Z~̀@kOv][&TbM/2E]W.vW_;xvȳJG{֫GsYfN2DvdoP{`0 [TϦU֧ -H:44jq|5DwW2蟿iYImy?oַMTs[5E랻B ڂNGLf䷦ofpW%~fDݚG6_gg^ ''vk%mu=i+d Xձf9 j:H)q x5w=IkR]*peDj^#_&R*^cLȧ8o@w? zTD28j׿%# m9ޟS@4.%J/PxOMDGy?8O"^Prn *g#7s$ŏ.[/1˸nH6 1Bpq1`'}LFLO⽗!ˋ-r^) ª5AzРu/M]L&HNevbY$5T* &_9b\io[LX7BMFO '(E Π=> UTœ*ACx:RsxEZvĿyƜ8g[i39L/8˒n=59p"!dŜcK} Y6d4xթ-`J4>;۱xJCA>s?<P G0(rP=8 ` ͝5.3VL*3O+$N@DT,El^_M^zs_zj p@U^͟dž$4[1rx4HxkU#[Y e+iM2ύƜur{|ڲKl+C!`l\B^;hD4HSޕrrl #xf\lȻTB`ޛƷ ֽ, =&~OHi< ~wpȑK86\脥8w/ &C)&TIO̥Ȣz| /9Bv?2nO5Uu q^Sd T0B[CHNgqWիвܨҾVT z?Պ&SdsCܛL)č}Q\N~?a̪@lʛkBg@m34#WR}/t\Aoi|8\"U3ʈBkyq1 _DRJ].!qxA0!Γ0Y;}꽡OZxxeWLK޿Vo:XE| b[:i8$;"ēMx@^5L @'ۀak\KYc %8!/`GXl4U%UDMŰgu\g|O3&ǜ,*İCӔ:Zz\Z(;\Oz$SiQ"|qS1z&Ɛ  jcouzB  ]K}B1,1ߋ8]-{~rxӦvEt\`rT8*3f~nW'bU` ʼ9QP.. "Z:f Jݑyp4P" x?* $,-+d'uR*}WMzv&iDLM\[м#<B -qsDI?y\yTzh]x*v@Ƅ2'Ng ]-8dt~T;J)@֎l? 8J)CpZ̘DgapTRZ 9_==c:<\8/ԩڊT8wc O7էDёUTXgGL_0GSE"u,)q]V)c2‚Tۡ>IZzYp_W SŅVۼ&IߊH5 yU{>Jt/I/^ P'x&$ڻ?{_FT=I7׮ִb6M p#]GM_t 6j!º9kAn7 E/,r)'mT3 '"51l-Fxbx3Py' mz :8`R̫c4fXhՙv[Z8صEBu'ZT#Z&+c {?5+:Iq7l6Me L/e'A3Ts&]ρ󥣺gE z9>?X}[Nimh|J}'d$bۃ$ژob/.YhCWj]o)>܎(dKiy(ό ̲`I|"NfJ9Z{vq'b}YJv~὎X;42H*J74Z0zknIG<"r%rߝ4E}@lGQ ϧRB+;YlmξY#=@Ϊ}<`b5wv{{0-K)4[iL/[aFc˚Oz$':$뻴C Ky~[?-_-OlF[[ T56l]VmaE_+ GrhwNe&{}BM#Hy-li7rF[\q6 ujd=1w{' aa̓~D%M6/ $\}|>_Kǟ(A }ẫl jӦ˒nW46[v."y օH*N<^˸]p, ؑ)Ҋz͘NL:Ip$sU~9@!d]iWSS<=wZ)a\ccgr~kU T*r!fO+[RQUzx+C~`ZA6,hJqoITH&]c(Jz `AZ hN#zsAH"tc^l0MDQ"Aޮ*$NnnOi )>T& 8P%h@`> 3]QAh9Ш'[YaƉHsGbr,k3'3abqNyo!W>6ؐ+5Ow|gƯ=͐h7ŃesK[oX: 0߯91ѫ"%6a%XiûwZ <*uIbJ.H\"cZ6/,,%'Q)1BojJԍ@q.G'p] iRFl9_:C=^mpu~v=m}=<&&+s")"xEL›Z. j!ƕiqdm1P%PSs^YϰAN!Ȩ.]'C62=d=)uf0sc F4|cxx'm%]Rc*}Md!' a3Ĭ dLt照cʷd-7^ \ A*(v MBˬgB ~5Yhéw1ɛJ2a$K"*LQ X(/ <~UգJilR"ɻ"DCD\ .EH.2#BExmM \^? +Z.Z{S%+N:-|fHRlikL-[cŹ=SFltq8$e׎Po~pJ IAY(k&`.LwG#' uN[PJdҍ7$寴aq4y\lN5pK=k7fcSkEJBD;\NE;D }W.C)>6iqTPzxj|rEzJXѶ7c)fҒ"6#o!lvhӂaptK9CI9ZⲂEm;:'&^~kՌo^"If[9*>!4?lqJϹ-N (nw{Ph8; s 6'h&+c>T3z+ m):n 2 9CSM*K B #y($}#ٚl0{<-h 5m@֙ Z y ҡ )՗[fs OeUנo*lQa 787]t)eucߕo& __Nr'ƇL2Ӽ8/! 0.VJa)z8 k~02xhԌec |]_=MOA `Y`±a(2D3gU{X/ \Tq0J1_`tw%4gAǿ-;eϼ.^g^l*4˱L YĜٮoIh#YSpS2x~Q 7B{B@eJ1yc}STW~OɅ^c#Y*ލz+6%%`靊#S2`ڋDY($s6+3R_jY@cc%unAZڝ˔԰@y {4W}l6&A줊6TF"wOmwMX䢜2wA'G+ɠF]9/.7N!SϒT>y`oړЀ}óS|R )7fW!%}xW@h|d X7wbx)wthZ(W,0b֚YڈQd ʿ-T!dzфO0oH9GmE0!.F5uж&Suc`VYLh%F7B. Cf퀵 tkAk l,4W؏,AJC*)*LMLuګ;̕rmȱ{Ic6 jYN eea u@f74,1ˎ(Pre gϼ'r^6:)$|Q Ch_iLuE|SMI}Gf3#2v<.=ih){ڊx5w,<+鈈V4 <+ CTFɄOi|LzU16;i>\ BEz7=7L9M@Uv zt%ƭa4Pndp0xq2˞_ltH"}΍܈}_9C6z$]{>9^=;{_ F>5 ѧCa]JJٗyO7EL6c#ij0nW)cYY'Lm0%̝x H4` !aQzU-H@05YڬTUs[a ,M SҏlDm, {+urwvr=S;ӲYذ%=$[SN`)%@(kDVe"? GO8= kin*u[0?zNl̳cˠ AȺOgL E֭7r̈1j/ca͠V-c3-*1;+K°g 4@[INF#QZMm& u|] ^{m=)wcS coǷR?>jO3*)y'nAڽU9+B+'V؁S> +wvdd bS>m{Yh~,?>Ǔ̟<{cjְxRO'>^ p `@0nr2j+p/tMzncטㇹ/,2%Qr6^Э2 S יq$o?SsZ ʦf>o"!# N"AP:*ŸX!X*9P%`ǓV05x԰&iRKKV i G9ޮd_WٶҹʶEs~G􍁫rWpp3MX5|P."ɏW*!6i=udžÞh+60OT \qm)$*ZC#ʠ)6 Wݞ3RuB*_peՒԬREumtkGwh;+ W|˶gf]sDI,5Nb[`V;t.栎wxUmε|kd藍F/(l0lHZR&pV:sEJBkt+[)悍@6>N>sʠ_v@|0ᓽ Sp7}H kv{c- kM)l˜cTg6-720.~10iƃ^ M _^7viOyg@+ tChLCЦ_ ݧu\Esj ϶|8qё:1q32L#z 9(ljD7'vJΨzδq~4lCnEu-"2t?Pro(\#AGKeDMy*7kS= 8=N\]in5M'ĄhYՏ 2NkHXneq3]1*ʂ.t mCh oOɿ}\7ʦd$y O2.F{MFu rZWC cң& wUЩl&0uM2o"'3֍90)ćm7"ܺ edվP6b([u[fk/v_q*Vh>7"Qcq>(rA4"‰`49Cqjwb1Ey/2fT~J&Sa,Ej_Kt^TI\[84z/ԙrND) Whq㑿 UhI5_Omb:b~:wͤ'Qu9r&u;Tk DZdVPHzo9N)jƅKjYvR`?}EtɼK`|§b% to@)Be8ϟQ#7ř+NmQ`Ho;ZcNçu7hzxq]"m芒ݪdoP@%b +u[$滎 )g+?W gٰI.%{U#S7|j}]~1]rJsy)M1(Su[aZ8 u؇7,Q]t3f!-''Zr0]^H.7)?OH~bzYa䈊ތhGU֦sp{@⛷I-?93 :ag+9w(|䔄Y|HtI dH.f܀EPN ~)Ͷ[*YX&yy $€|FKi9ք^ \FeF uxP䯴 c;aXoFcv"rOٓCk`TKrw%"+6<NxO#rgզr|d3 XA':xC 떩lFտZد 9\ufjNGT Ƕ1ZoJ]68n=|DB"ډZ m&q&@Y5M}3ʪ<-**چ|OKH[0f9jé~@EjcꠜH 1^ z64}8d7oCu @]( ?pu,Ub뱉\1IdC c@Y>VCѠs|P[j嗶sϞ#[?@-}61#a,d8:^Y8Sy%Kv BL~zoym2rik]#esKyFvͯs&Ck&JԵFIKDB#t|5 =&Ǔ~z0« \LV9nEGI(,;BM8nb+QD8 8.]5\j HkwԧdwbwbQ|#u4t2S{}it i_l<9yW\i߱adF[ezFk.Oz[D#*|]BJj!:*Leݶ we`?"c u³O~&FKlP{bcăl"L* &L}Ӏ@=0uXcF'"BE7`i|&ՏR:ypJ Lĸ ŚI媆|t6]jnt8h߭FLC U8SG$:\c;9 W?O]NĦ$7=(ܞSdƓ'o2Rgˌz?9SY¡Uj:[< s1[aֶ P:aI`kc ٸ${ Fznex猌9ۅP/LOP Iv.pƕ#.L:zתA ۝.7ŕL~]БlCqvhFJK+R!/$QU8&@uV:adY?( D˩BY ^:'Ot':z>O4V$fOFU*̳όx cQ&W#3xҀq.ARVDRM},"Yi%#J,267G5뛵}kvZqԬ:qKXgDBW΀ vќQ,4 E72}(Aov>RA7tB?so@] gyASCBH'UJhp ӟ)_ȕ&N t Zom^KE'IK]wrD!:6hM m#F2Sx cuŕ`͙ O+a6I\'eQ9E_ڴunż/$Q.3sZ3~Q|ŧPeN}D;ۻDo\IDm}P<#C\Z-` Hœ= ?~+B> 6~!<BЉ8uGb;BX !KOH͛ز0mש@1!-Ҿl}dre'6†g";dž2,۱.2uS}ظ:JFPR.-bG>}U!lFi+lL,<]sdU?R6P$"~#1qTE1-KE_P?Y,X_ KD/ekl^y!_II{1g,/k10y ?#27Z^#v3娢66Y'oW mK}4e#+bLp;_3q(pWeܒo5P/A3/D@I*LPOEK,q\tmX wDjoAѡF7^r6f-;Thݍ j>jx*j \נ|J PnI@U!GQG%w7Ƙe6"2 E}ˈûbbL3pͲSyCUϚؔq8ݣi^ " 2QWDI)@]̶Ϻ4DydP[;G_W߽#g?RwIa0U^ 8G_!l>2& 2ئ}?$EtwK'Vd Νӵ5ƙܒ0YBPqL{ GB>>[{zۼưWzIf&ŭsF)O+y_z?3((v9H:<Lzh[Sݷ_bFĚ>y5w`jJhkqKuI`|w/2kbFz`I g9ΆAjL_٩t Qjfe0gp`$mO_rkYs:MM;($:*ʚ!l>Ǵ;{'Elq0{$wn53>(olC8 !ƁlE(l%F#'?& j> uJ(ZiʸߢWȢ:$\x$nHO2+2oէxSIL..wBk W#ٱ)`}BS>TnMmH7"Dt@#kjf_4H;~$Z Allۡ-udl?أ(Vw([?GҠARXYd3'U{`5`("'(IQ_x$K~"( b-~$t9CpVpXBKPEBsɶZCLF\(?on:H?B0 3k‡&&(4>5V3E;J9Re-QrOF) NX%Z͎>f}+7 [ݤ H?&CAalj\4RaN_č|ܝ5MB$kS g 5l:K[vkur\ؓDHv^SR ŎƋVJxHӓi>hv_{;XG*p (wTР0YtT#Iz1}{ ,># Yes :L,)C{h!J]M`u`=lrwJٲ0MCJzcz@k#ʃnaivJ|~Rg~Z9mpk 6et=l}S \0nk?A-^r/;NIz&{#e`hfrʻC2+ҳ1Cä-C~̨X/D>PLAK36- Hyd\u'd7Bn5(n(&@0!uyW]dR.N4-POxMϋZ\"9H ꋘ+ُiʔ\"(w~8CŶߟBeu|'&t fĿ0u"G:e4hcqwc);`C9Dro"2_ T)birT]ꂋA=JU~2|;~ɌHPOEq'(e:`rzRъI&&>*S+ns%rL_.Zg-e`0߁Ztˇ|k]IR7̸V~c>(Bp:;ś ;1v/ 4pΈ^aĪQ)@/V^}`_(~u1-'Qُ(gdgnn5ɘ"6H=*C~&Qp0D~YĮK|ZE*;=^m@3f҃z)b[.ǵ}Y7^(}7$skyoF]}k6:Ig\ v񦖆/ 9 sHd׾o ^z7[$"d(@>1,WZɛUԼ8 BR'А"A&wQ2|r~Y1@p@I\^՞l7{Mլ-$-1SL&3~SlJ2 nE|/ 8 wqJ/.H+g!Ss13.Gf[[B8b8${}{'28ChwʊΡ\#qaoNyj,qg/̆kwBK?DW"JZC^>Hیs42KŠ>לNXoyE> m 9fQrfB9+';$^ێQ_bo.f-_ 9"ui6Dʰe4-BTj(ܔaCktCnҎI|PP]'ȫ'/d&Hy9XbiR؝3 (;g-F_&`Y"mgg'w" ع8[infj\Wr~6?<|[8yC[+ {]tԒ68QI_~<[yL/c[Ǽ(3È3P,%0 Rϙ4y HsWEt5-es"sԶw'BvkL47 ථpJh6j2!%ك+ { nQxKFVv#Vq4$o$`(({z"}49燊t3o4P!\2BTol̩bOD*y/-%TZyw8MXjdZgXrjg~j+>ޓšɴ=#XL 7]KIGzˠ 8}ر* 78ϙ⨶\BIXؒ[?ԚS3v4$Ι N]63^k݇6=<>AiYCuq17OlC"e> p_c|) {rq֕Eȯ 7e$̂=QOb ]3Àxw(SHe/2 f -B̶y 3`ZUz׸oV1k\vSTgfamtU-IKˀ@dk< Rj#ZeaDaoz6.G-~ZcмR?'F3 RTlNdqL$˝ڇ~=l"3Rpf5INj[)\}-b);qKwxQ/:+|5fPɈTpx^hJem %TsNSb2=iw@G߄wh*$)(BʻyknnzKdK4>V tK mlzGbpYҟ;I}:eǮ]_bst=YȠNg>{֕bӇދmVbejĵn2Zh+\ bv Q5Nif, ihl)8AKUz=Œw7

Dv3`i5sr^pdw>^ ×m rɝOB[ghx H`3mA-wC_žbk ~{SՈUIҲ&r4./1[k `y-[o; Y字[x9A|aFKrա~Vsq!,SbNCw:*nMGu_WAB,Lo4|ZǙuQ9+mCiB> |D;/$,ՠҟx݇| 7FՓ tFiiT:?C JH cZX1ALipL莏>g"G,GC]OMsҢ[0=Z s4S򌌶,ZXVV8zc /|`Es΍gkլU.!8'Y+񇏎 y].?N%b&O? z_ҍ8&Lɉrreh$}AKPIswolvkE=up7|O(pIgKq$+2A is,hw-k '9u}` "xƠnIFN[L6)?3Mk\;}3zkRGFXxk372į\E2DfY>&ў,غupWXnbz#NTz88BZgf⠍MWY~(*z*BKH w-&&XQO^wڼ .@uP1eOIMI7pYxݱ^/9rl?p(-?j[nmt؃} pѱ,ENn4q60j85p>D!2~_g4׹\gl7w&Ӥ,& OXuC蓛'-@<&2f= Eo<388OdߘOlh uz>v5|X#lcHlH]bPye;DrѪ,p^*kOP\li7P3}''y8ȤlIOhYq Ǟȫ7ySǨ Z"Ca6NԸ{AWs+ȵVޕNw"WH}\#|z>?wi3 U8* U~_Tq>"k:Qυk#?dFy*@Xl~"` &QJ}^I%oKIz_g}mB8OIviEfZT9;`owQܨBu"}9QB EJ!H:22}z$ݩ@ߠge -D8io0-z {@;ⵑbs7UuzdZ ?F7*`e/,- L6J߽=MJXaȝ"G/b7OhPnP"#VVԚoN!J!MPlg/L-0*hq)WUt,⧃1 z7m곬D˅=ż攐c\lc>ފȱu~y}G#xֿPbsdTD|WX/᙮ߺl2,_}θ_q- {365~znoᯅ1{v, X!X:9ʒ9 2Jܘ3O J0-Al*R10R\x8!OwgQ*i]ߵBfNgz ]сRMԷBďY|茼&6؄WhZ[!9Ɋ3YBM0]dYŸ nsnoh#D_^ $(7 [\S6q~׮+8Ji_agfJ%1rB}leky"u/ܢ֦M/ͱHH}_ȱC25j}hLgwek1!ƙ!TH|"a2`077EKzM/+1iBUS]3:#>5yev(ӭYi,E!^wdwg)͙Vz0hlf lY?SD7CNV:S826TDvu#`o6^&NHOPi—a[KS+: A5|A>!pK'=}ucx-CM7.3og,ÚjEhsץ{0 w`DGOH;GCmۅyZE(hQ7"eSg{d,tBUEoȢ|IW5Th{ *2<,I_gMAxxvb8vHSMr_KDi١"aIlQDz>0Up-x㜟BsbQO9J:o~2W8a-x!T]/r0SHm֦C$9ZsUaRUTa3U)˥l E$= UQiTF|F ; bʜh'.;M1M$uG]ae0|Ut0%t 朄Mrr D6"Cb <}AR(:LVe.G4uQ>OL I@gaP1jvO !>vg/Ub|YϷ@kҾ[W6OqTpa#D {SB`6j]#Y:'f`0^K4#rs%eLAf bw󐽸g94=yL_YAl7nbP CȜ3.xɱr&ڌ L!wk~YDv=|&{M|d:9_@{PV݄{ 6r֪Y킕Ԭϡx*X@9lSeITZV3r=Js )LO!}ylSItYKn|Ý+^iL_ 0d!ꤑ*WU UP6Tm u ,gs.)xr1"I:L~̛@MdG`#amMȴ]|NP_/Z4[{.@z5xp|<_ :9^zώ8ѹRl֊#s&4 V 8F;a듾ihA[5\*֌ 鳭՘son$vNVg$i5cLK3PbZ*lU\԰20Xb!枪ey`uWM hi8ROmĵԤ$t `;䀉o1erWn ntQQRU9|+xPAsV U) K{{bngօG`cseSS0]G71."V X=D`nU*6{/24sk'$q*J6 B3aW!G,[J=5 Rb,Eo$X z,mIh,2B&>C> O%y0~7hm JT jCbW^OptZ ̮Dn!]|eTd (Š/֚Y07%Gխ2@ ap3얣ޑv4HP}06D)TW%/ؔmK2O=i/2k)(:(nwG|Y2 )q(fVFHm"}<FXhmZ(2%@Q fŃܹcNCs&eDӸ]oU3룩WҳDj|m&CeL]#$ dV9AF +]b["B\}&?r"o)v o[V,ϵƒE9/O( 9XCiZ&&9 cR"I49m:r:Ld0.CKu+XCw$ =b'~zEg|0(OWzIV pAp=:Q OG'uR{k|ޗ½ ̙"T ˫.!$P}cxA\P1O9||m|'9QZV=F+|X^wz;MՌqMk{B F-:Y y=2-ޛ :Qۅ.PIpٸ EƐJz+-qĈv/wޤYR6A&FMT1F롯.Ț;큤*7?Za C*ʱ'8,7 2k1'nk $p]P#nsZ ӓ@yeƘT4=ӅRuMz*m*X*M(3yiD;{/M 皠hy? bs(̪wBipײ|b›|3J# < 'c=2j=Ў+w'w!䈇AN\P 1C|hezhy(.B]V[d9tPT2$~Y5>4#}SVTQ ^ 7X= $-2iڹ%@ rKp(T~/9G\{ZYP2!b ĥ\)di{j\*j.G1%u=>V [nxőK\3_o,~i˿ss-(* %mHs[ˤx Ym5r-hϩ㕱\=ڕTRdQ|EGiq]X7lZx \Y_t,EA* V$f TY#cwTjk#0M[`3V>i k3whi*RDΟC'+ܼ%ZUɣr埠a-`_Bb}Bß*6+Owй@KwHHT=ep2#|$#1rClaʫx|S+@ ;yLq(*U: f?Q]M7e1;DŽ8 #cUB 9d]cFv )!l2<Q UgLW)܏8xS=# ۢi'<ꜩy'4I  aZw}c rn|S]%aYIK'iv;7NuK#R@^_ ۱u_*bHT \ڸާKl<d6WB u܎nK%W`##_Jm:@VNPQ Ռ9ta š <4S?o@yDiD3*3Hs~ܰЦvbK7&MtK̠ibC\l\mÎŬ7xG"͆7宸D%|nRLfĞY%IXI:K30M o#6Nj( -DmX(@֬ v?5.Y ڙc?k tIZ+'E i ӑ\?qV{i} Ӳ}-.pf;1HDmJ.WPgۮYco S7c?QoUpz3]T©&ݵEֳ1bPtIe_jAv a}S{iFF>}e3.T"u:"䔜Z%H"U»C6]V|#ÎO!noÌ]/6KopcgXKШ5Uov(CS= %~r= hD0ey~sF\lKP}V̑Vp&)ߖ;Of veWBTppMA:s`p <ߚaԜ5S<߱ kbwAV`(C3?RZ. <qp]( 1|{c}d8dF\(\KZD͝ȫ01C^4-"* yQ{MC.iOg'pMÛTZY;%ͧǨ+Y T_yɎ0xρζđ>Nw΀IkL~EFmcdu*nD^;]ڎ$֛˖V.7h (g,쨊OƍDFƑU~^>:uLzs|W!9gf){fSADâX7 *$olj97Ad (%oܵӏO;UCGm dG3G__:ldr1~$Sq#b|UznW!gVd o5"yr5J'-zj>a-03C-F,R,S*86Pj[Դ 4z].MoL2 U>I1T]dBmrC+Џzj*Cޗ̐d|uurc&7IeG ,k^:g-g#4q3Y/v9 M@=mڷn^(zs=VU`'UV;KjlЫ\sn5E vv{'Yy.hf9~/bjzbja'=ZXrunUW:xrnV/>8 -;4M>'|>& rfn6&nSf+3vOҡ$0M/}%$M+i HxnZ@wD/T0Wgw^'$̡'*f}VT@R )}7 j3W3bцr/7Ղ!;tIGU4/nhB{wHFD e폓+֩ '!BZ ʳ:^wjuYA\ @h~E"Es'<,Yܡ Baj̾&4o RyJ?G >Zs5JP5Z3Ź  "tNP޺2Wip&ߐnߦuEkFz ^~+=T'.OĜ&04>rnzv[6"\fП&7-3VRJ潔-ddi6 N@S:8OVޢX C+5Z@D5OnNuvc2*19&Q EowUȸ&C]4\d.*ǟ4j/}|;rb S°Ҳ\9Y!|9!^ߨ>k/7Cx@tgu U98 PAيpAKYs>{5 ~li/v);d~ )|%Z7cvNs Sv&qMf9JЦp(.{pB_Kl$~;x*?ys 5 쿲+ڍ*/[|KuatZqKk'B>.Y)kt[ r_D7|%7F iLhá:t&"Lt5}vzT(fjsR{kW8:EV&WZ,I!"w \u!Դ4}?V\ VwCǘw|<[?o g(}rSS1^M@Σ~(!k;F, ʫyA!z%)h|`4ҥ8L4 }cxZ =ֻc"=) =Ŧ@/W| ttތ!U,=2nyyo1U%R^/,P}.Dóq_:D?ՖqdYO[nZKȯ D/qMP'+?U5o2vs肘hv G5P5ꥊM:+YK)K^ce*LDQ\sENry+9Nn>F Fz 3[sS[A7g5C<xZ<᱁[E }SZ1~pz7,lZTŗ(Tj[_eqtIv7ڂIx;%^+X3DfIYe#Q< v8zJJ(ݔ~7h->-A x&=X˔O1?w3X}).9G4fZS@'PԑBh>|AN x,e'(L{^Y# Q92_CDgl@hF `q<]v=Hyq`BIg8S9e6ˇF}=]c{d{oWsa2q5m; !9IU*'MFg}|{mGOי2ѷE$'MrU4z "3\lj;(|a2LkPk]. 0a,;^oal˒tlHن E[|yaa"E@OWL='M hvwFǢ|̎ l0ko I("d:%چl@{X GU v&\yJ;( QOOـ݉F0 *”Nn'I aދ-P&`/_;W58y%:yÖtĿN>wvJ!2e0a?KIW&)B)QZ .QGG>g6Gү91g^įOWYD3QmδF -.022Iaƍ|ܙ#Ҥ6׹˻0rE ?щZ]d5vӝ4FFoEF^d^̫ihUHd&PGaNB1٩5LugueDͩKK%1N:l%܀LFZ-"wRA)X%p˥zls`Jfi._CL_׃ ?c@02,Oɢ~_A?!gG+zlDRљ7$`c/E5,oܕN}WRf ,[No,)pJĆaL]+}B-Mw@IdC t&@ȳͳ#d7exԡJMd`xj9a^`l _Z8,t?V2XxwFWl`CR*Ȏ:2჈ߎoz0\+BW0;oc@ƤdUrViM!(dy?X9iX!BƸd#85MVw[Edm]ߴf%b?kˊĴfz- w m}밤q{ܽ yvƏބ _ZōyAs,܃&0{|EcLmGRmBT(yKD+Ja"CXA~+2ѫځffc'X:mgZP=*4 )B7oʹ`w?Ljy< E0h7DS/0ICK]_ؐeh>qk *Z:][qFKIEޟyg~L.&F{L(f:fUr1>g#3l)MT2Y&lxKUIJ/$RqY?%5OH$qu7#1Y(k kɫS`Qq txK*+?&/D'+.tڼ _WN2behī`Eqޥ?tp/=LP*3!׈\.Z`|"yݮ(f>Aٲ!YgtA Θ˄tP3ϟ(bO9]y͐\o³"ִK" sO&]ᄎb+Slsg`v~4ic]P%.1_j ^[rz߮%RQ}=aEBY&n}uK2Jӷpn̋7Kd=bU=ZCc޹\"}SIe mgm5D/$WyJtI+R&\j<^۲2| p=K3V.$ӭ~0 ,#i q̯9]ٲ@8IlQ4WS3"U8INSCdÔ{MٵtЇ(źn ZGTe$J,`.Z|VYWglrr'o8>kf}rĩ[w oҝ_lp,]>&,|%b4hIi rp[RN [2Yӑs7iNҟՎ^(-ɜA:"7ԟ3 hpF;Vm`!M 'wI@ 8uۼ >S쮋gܽ%]j93Ȅ/(M =8oϹ,u`f> )k成usNx]~gfUny=I#Ѭ@\X^ C#w Pq`|tݨ(g4Qh\q֋E"gT!4wnIyώ- MAZ 7T l~i DWC8̶U-h dGldzQ!gz!)yz^j[1LؙD1 !ZK4^Q?sQu#`FIO]3mNvUP74v~{-Jø/΄dk(3 w7y󑡳J5Uh`DohB,lیs=8 pފz;ŽNYcu\HfKp,zu*6~Y:Il Z vdb;: ~ Sx?J+ؙڌSj ԓje}"@vڇe#}(pƛfY}üݼ, `7 gY!EL*ؽ,ᮁ1 +}J2yq]Xޜbm-kcV+3f ޠ{g8Ï@l\^!j]gUش'6ɑ&_xLO}Q<ަhC$5+#0{k^S#LR`ךLCˇ)}&T>heg]:?nJ X:kƟxSq@A"(|}r:X2G;ڴ{+1ddx=QZS嚚lwT5&GMIn-V6AGϿl έrl( 5%%I>Z&/[U_Cz5toZD5 67@D_('i9;-hŖw>c}U>6ov۱ij(6wW{9TV{PwQ{H)g?y;V lbhZ:>'0Lp'dPy'`PH(҉/z6So3-?M~֣áuĮDwPd͒ơ"eC+eۓ{1q QBD7, 2>8 lg7 $Prm@V~l2) c !@z 깓> z'ze{p-cXp8Izb-8bK?ا)``vN@'_1 S]5{7ʛju _AjH&a $vJ܉aR8V\hY!sP1YAUuURq TS֐&4fSQ  <`V\%:)^IRm.ƺ ~"@v)-ۿ(q~-)ztIM33wy)wojI:43ߠcЙY=z'%#zXiʥg{NCxP&Vs/O9 OZisLY3PksC@=T0!UX.nӉ_f!iY\x#Cn&៯YDD'wiFS7!r}K rZ$ "tO#՜{BIp4bҒaBOkY׉jPG*Cq ϛLY4̄d5t!LQYԪh8 "u*v퀠yiI:w "_s}1 ?<֌Xy^ OP?oҼbV/5#K&fc-!=iXӹk>v'qd w tSLM(ٛs% H. +XyqsKB\,Amb} C1¢ec͛}֎Xz&T&7EbG˒7K4䴊Clwv'\aƭ_'{ʤLd`Ř{zlmFA*pI?uVkW]}$=iiګ>(NÁJSqiy䰶78<+*l2?"% 3 nko|넽 ;9/  G^$ZVvF"qvTd^JLiSuWS%zG>8hc|K X_𹉝aGf5//u!htمkaYAEhlM%D]kiϵxjAFdH>Ϟdž,=ȀUd>@6tQP4TKL3 u~ghUǐlbt3Kip;ߨp}'2M?QSt9GaE:MNJԐ A@j>J'2:[I67Z S۫u9MbU,FMRuK1p¹qqnXV[%m-W&PNj0703] e6rNwE/g-|كH=N_7R# kkdQOSW?k˖d!TI7! :/) aΈN!}ƼGnoxBkob5qe_vI~=>8ޑAezp NE4{ޖlzo;.ZIF6ʨ-&9I#`> m"s`+Ize)'KtaMjʝWѓVDN{u67m"}D ZƱGgXN<2K+5.[5$7Q Ѐk2 45 hmX<؈D>bJz0Gt]nOI0=y꜖F%i!mjnm`%M22_OU, aD;?9 &p~R:gcn2M$0³gC$%ѰY/F }B λN.^Ȓʁ7~ү Tc㖑1:n?!|7sTsx6ތ/n!9_A^ }[&Hwp2"0ϭFV%b\N̥f[jbc.[k +v@sw+\DnH9ƘCf]#񊪬rmgsiL!q :!O2રh{!`߀CbfXG&q(l%KN WzTkr7tR!G+1Syi~6R% ˝H$@\'@GVjOغ'׷);'\5: jyPnB4<?&:8Ṧ>Qpfqhz`#O@~zZkI5QwtȉM -dڼJ8uW^nZmԺi_"L،-@mA4IO#VXi$UQ=m{kwDG@ֆYN['rV4+tV)n5;>,96%KN R  [5Iݤ\0 "7X#Wyfpy\z/^S!2q>״wq`8?h!!6x5>VyT6˂jj]j٪Dfz~]z`|Xلq|CX'[FPM5qcY~":]O$w;$Vnm1Okgb4(۸z֫9ƄaP`5m7IڢH}Sc,yL_G؋^W0 X4Tl  ۧtKĞuB|y83)aZ'r7Xa--9̯z+1k]5?o1h R=37*2DjucLhB-VܻskkƎ=2x&xJERd<+`a%¢fdZ"jDàkW\G[ g%s3ד t]>#U1F+Rm\vm/g7#MbzK*\7uEr,#v,֥oy{66mv\`'T Q`Px +thzglE8J^du 'x鉕X@a{%[S,,Rb&Nt_nl@3e똟>Hq0*$9vj!mYi&"4kq 5TǑ(4[in9~ڃ( WS$XA&{[]Wp}s+~^~=|Fx~,3Chí41o}֙nN^  $ڼmZӎ=qp!{3yl ڶmnY<Ҿ>̴ҙMzyA W~^|urn CAp~q8a%D;NåZ)q?-/zؼ-7$dO#L|K+!X /ry[Sl~y|Dh/1tW؝RіJJmo0Í#%EGN$=vFH y.6*1T1Taê!̔s %˶VeA*cCqt &vBSNaPGTѷr$ 4DqOʛ2 aE yr5kT IP ׷;t;_H5q <3aԤn?`(>C@Q =`t4sL*鮩f$YqtqQ@1Ra[OKv# Q#FBD%Ӗ-v ttn#8Rޞ֠1}6v=~wb]O$)ǿ5/fw|g &V81(wʈyϋڎ++| *sp=|*0΀ '00jht (e>m,-1XJ[O2.dRqjv7s\}\;H Nnc :IWPwµo*H8Xiu^d-q@LZ!i7])e EbpEAͻ˵pitMH~'nh"]_cc|qML!j|i?4\bP 0JzW{j<.KHPCVrgSK9o^T=Qh4lŠ9y3ٛi]~gvL>n2ywn:kRŭ|^3+.)8.=N2:,>qwS^?)ژ];0et Ԝ<>~@>XV(mUA>P6TnG35Yccf/"Xkv]H/PF&\mm5 1um|AM"$^cx(r05(Q|/z@g*IjE} ңP']>jZT-UhvԊ't^uQg RkҾG\N:X薵4O~W5)|/ꓝ2nE@l׶~QVm[JdIB2`-|kB-ʞ}Bf2d7z$T^fc<9,w͵.9ڭ-1I֑%3Įpi&_=iI> $B ᠧWE)ngJ:)J!a`^Rp6[I>uDž4k07yV(߆4>kJaL(+g:10FV 漩+GK8Waic#&\{<;oJ$ *=D+a !oz ɽ_Vޚi{ڴ>\u, 2Bíd(moɗPMD97ȖJsxaRao?`IjP-BV߸EV nT(VoIΕEFDĻ#ȝ~ 2=p %h1{$6cW$msґj/x\>pT }ĕZ?j GKM5F7[2ݻlB槄GN_ӎ~Ռ0b 6z9PpFjL9NFHE%1ʾ}3ITs9@qk+&>:旸 `~Y$mHmQo [\-Zv\n6.Mf'I~6ToT*]2yo0.ޞ+{KiǸ.A@eԑ٪Q<k&?r^w֧A<d+%|[˓}ջM/?G2V^DF?I`~ӕYEWgh<ܞ}4L%Y67tnzaGf Axs{iKnCm'ffBP 2bCP1: TGY "iUzzsN8=HlQ4~Hs):~|.\B_t /7r%24f'(BhCY=n˲2D>VC a}~9"+鑒nS bx¿ERuZD69 ~ Q}/6oN3MU@mCmA:w1-,|]Ԋw`oRþ^3nRq)7b9)aKN}RV[0-QR:%gXǛ<}#JwW~Лpz|>uFSrYIilVu6>Y|I^X77b|.3!j(mv1@:=MlWy(uWrC7{H),OYFBt Bˎ]95T6L%8tMDr Q]8QR߳Dpp,a2*T/8z& sK:*I -wnq0˩h)yEQcUj FIVG$AӖHjD~A=S!{/rӏ5wׄ%,ٻlZML y\n^'hT#[c.}l_n1!_N_ȷw68CdE4ԛVݨ[qZL5V9ZCER6-uL5\z lVb9gIIh>x9.Vw~Zن7ۏ^/Q"L2ZRQRNp!(Zˬ},0JͶ"-blFLE_໯Iuzh] 27 &lz]9# f ]!iQ"2?@V8?gb ١Ho8Ӫnzѵ? Yp*5S%ǷnUNjPpB_v8 wmb p4@9[a+ndd T*S tQ1zrqNQYhɗBkP$}g뷀zy"ƣZNْEXPW_JQCܥܧO"\%eɹ涟j&ǽDd?Uv:gM^X^яd;pnW~ w]ZCPɏZKɴ FF"]H*%V`^h*TN^qdYZHWZyUG'Ĥ_LtÝOP{\;l6ZSf\g-i:\`;>Xr>1wΧKlފ5m{Ţ{V.K'Qmk 0-wE)3{0,Mɒ[֖uCcCk$vXy M5S EI;g@ݣi^_Nޢ"E_fҧӎ=-G[3whU=/$"eNԏ؂JK5XRmXw~unZ3bm6<hYOG @;ŗ>23WxP,bzۢStʿ>raki bCx+^%垛0ۈ?Go2A$fWGC&.Z~~^e{$ ,Gmޔ틕)A©IA~K{u"Ab73}1GG=??G^S5^r_|kq+'벡6!w4u,yr"yt˥ņ>I\58* NVpX: T^E0&k wɋs)R 9 eg҈ߒJutj8弸޷8\n]Dֶq%:o/ tzMbu>>oc%Z|(Wuo[ZK&HvL~~&}ml2^c8.Ɯةܱ &CgWJ~'U4sy݆iƀ32fNJ5 2ށ:0Z,xI ڕ**o=^KHJ;RY~ d7ZF\\o.KYJP5q !=vj.V$jDo6iN|56 = Y/2Sz$p1_zLFH~ĵV%_)pzĄZѥ*tNqpUlw<<2QOۀ^(Bں2M1m/$FУaC̩y HW׋jB~npxg֙o"3$mF!ReZV`td'~0 H`A6ս[VoZ}1' Zger.sXRmlܿS/hEp@˨+o R3 N<0Xr2]b}}~H`S~)/.^ˊ#h1)/'Ur0T WW/.Ѡ}%k }J9ATz}~)0N)+̡w`q\4;cUi~6E jCmٺoȧG3ؼѡè$HEi.گF@u5f`f#*;XΥ`{uDӀfZy%)&y:{:ݶg99_XVY;/$);ր6%pi $YwF=xr / }C`4.O30z[8xk, z[ةjbДwӁ/2_1#Htd 4ʕb?qC"r-Y' q,3 dwn1pu,`9$sCߨEy̱ЉHOjwKxX4w2/ oz&/7=ڮN0&n*w ͚ <7"R~?¥?i@EZbwzpj'xG?ò2Ğ"zs4x";2[hyÆZ*S< ^$O*Ըwkraq'>Ov3x[8'U6q1TLili g!ky҈y5cघhHQc3oy+ wRcZ^Ss!m4-c +eXMOAd#1CKrj7"v6cma ^gvvog/鸮izNN̐Ù]pC^끻p{5Q*ٴarre?!OK[JnaB 9[3aFwzA2UV4o ?w^%hʏk&9nI*dV,G{g~ ?r4{v[RM~ߪHW>6|_նo4Z᯿) 'x4B9`_"o6i7 /r\KR$LSkmD-ŧ"A-fnpIІkcԐ)4]6ܷ t35F.{ݗ/]H`rOu郿)MO\>1%#|dp]-y2)`6K88_Kih͈Ll%JowWvȷѱuKFl/c=ht;MN!]e|SMhf]ۜ|%9/ ހ2H Wԧ1+eN9][7vwEVo r 1yәMnɯ)|HB_Bɡl1 m5ꗼu'u~v1oϿ@2 d0Ӛ˴~TwNYLTompSxiv QeE.W4#37Gh}a5]DZ̟3K/ޟ,<,Zpʔ-;Z\ ,x]XmoeOp9nD_qC'Z0n/)z,'-] ,h6Ab)> frU0o{|.SC!boY@0%1ͥ)|vt \ጉyå>1~Z2#N]tW iIzJ~ +g gVI59cCiW,a+g~ۑk smƦEdڞ_mqu {иÉJ(/z #Gl9omÎ'!v B@L ߓ.Rx( I/*–P?%>T(SQ0cG 6 kN}du Ї W;{⪌(?ԦUCߍj:& u Ve2r/97KԈR ʳؖpd6l*&+),wOԙ$ 4.ğ܆SJ<a`430{O*Ռ5, q[0#dLI +; Hf֩@"Xc;UhVo9r# ܸĬ{M9yXP82-п'+qbi?1$ c bCK[|[-3jp`\` `@m0 #h"KD \d:`b\|vEp\]F!mP2on'\ˑ[Sez24L|\y37-< R5o366nK޲GՁ E靹(͍eFZ# $* qˑN*|2cPŗ6ӛ,ӌVl wC(Cs=B}`Z*V)0x¢U6fj4莜dѥlKTT+N  mUqLYp Ύmg I22 "Ӫ4X?iu 6-S:G!:1_k= FU#}5y|ځ^&'2xŦ5Pl7]ャ0\InDNW59!dZQ`nn/:'Տ[AR_KX0U4%:f0s'kShl"Vv/gV-YZ&l4 k4am`E{|.CIR n&0HeglNZ|Ju?DQ۸.*;"_~նL}9RӃ(؎X~_(4/"5l`~MzB ;zALF\5QC@ӠASgP/<`q6"z lɖR!&1pBT8 *P)>ŘNJz۵>AhM!__LL#_u Q:BU"kǣiiZGA2J=c.!owvA3GA|L׀۝*g~U0!DWֆ#좁-#y~FBzRxy&x,=~8qhK?fmN\4/:2hJC2 ~f?&>g ẓl:z!oVkH#^ Z@y<[ p6?N8ǿ=9+RʼnpqCd{4?3!bֻY;Pj3QIS3ر%PْD0rнd\G>X{, @W( ͣX jؒOGf2YQ,G INF~Gg z ѱJv0|r`>C5e4& AF֝We /dmv q|;X[ocL. r+zT!ƓiѦN4?٬b喾wi*;bݴD~elVhļnd{&@4_45lؤ#;BS1=uKdѡ wD/&7T"g*iT>%"=v ׋0ۏ11RV% ŹN! כ%y5ev&*:3 TڛDiA#8Qv$(>1׆=l0#gY ipS}0Gٴ\j+3jP~v>OaEߞZ7% lhʼsBrQKWUL= 'R<r9'B'= `bVb d `BC  UK9 s5̖л޷ٓz-Wm`D6jp,˹A^ލCa\SRKD!@u+KӅjI#J&f_h!mN4 a)E#N!RKT 2`̃)>?`X0Ucϙf~O4m#{(8Jj{+YM&˵~Jj(HԆYRuB]YC;"þraWLX@0U?xNV]^.0扊43JRI]Mctm7 r1DEUU8(ψjv-yG:zg'?`V'Z@&K*"!OdIecn\P!ɐRgb"tǒ,[|,2bND{RIne5ٯo?\[&@t}ී,k'ޥ:2 ֓a{F=(YYъ?ȷ{JΖ_%)x*_^`h+[0t9J16j0V놾q.c f Sj4Wzbrl3yQ;5ݢp@Gflm_m7áKd=S$۠B}(]ʡ)QCQpa?*lHtI_ |?z bAd[v*kXd6KIтy~/K%oʆISj[;Je+Z!Gvҏ757 tq$PV\W*pҳV*^CA,xyUP'6~HXA-_ $l7nvVgCZvֹo 6[qIʾw'id#㕳Qtwh QNȲ"*ֺ`.6 -3cpJO:%kbW6s}6,'ʝߋUɿC&Ab K$€4~ 6g'=O:2N/Ń^XPdyin󮡕wжV|"ʹ-Zi8 sG _gO Rzg? I\& kNCp\vĦ:g=,S*t~{\z=Ni3E%m[~Ysrּ!P3 4v7`8~d7tf'[ xme6RvDnvBC4p1Q&ԧQ-6\ϸa.hpIys/ΦPÊI F ?|&#5e; ]^$ٛGYfǨ:w>.C%k6 0dh,YpNI&1O KW75d21܋H\_,,TG3^cԶfG%!VQ =f{,X+`_,As({ǭMJS4) p撉4TkdzH,h$s3g! R{/I4p"Q_z. gij"X&bJ='%&j`ɷ9tGm bZOY\Sk#UC3Zy1wDu-Aݒ2snM{D%ǴE[LgGjL 1N7\;X$:-OkDŽ‡Cqn̸G&0g;XHý_oj?{e !P~د|Ws8| 4vPefWNJ9@D4Bx(Z/rP \TQh'SF8 Cl'q=`*DDZC}"{F Cg4|f9_mq7 [5[rk-s1\uKHxa. oچdž&_ Ļ P٭/)}CjF'0C:q12/'e g1L̜@՛\b] JRܢylx2| BIo\3s_ Y1,.vLю|l_maOpb>|5vDs'(u>ov!7dαFlɘz=JB&02-^pw~;?|"ŕz `OJR8ǣ 3%"'.Z<69kZZJ*4'ﭟlˎFRl2"{14R 2CFmwʹa GBҝ[7X1->L_-`u_o>1C]R3X5Hy20ihזz75e XGqv~y6y6&ް֨g x/mR%X;h F7XR׮h/Dr۟uz IRБh9a!:>m tj;o旰B(&8CCU?l~[jDkSsi_[I|z>+ZWpuߡ  ͕ Πʮ gDZ/ğ,N")5nzr}Nr,,Q9.˘Lél|RXQ03un%"Ӛ̘q+|7196*SL$$h/FC-;;3=f?#)4G87+h}lҧ)z_Z.ѯ#>[=X]4l"u#=,U(*&y{'ihaCQwϐ8bOr7E27ay 4.k7\bZP$Rr!Չ?.ꊀ1iԧEE&Ϊ&@C]&baCb 1$~dqˈ 䔋]/nI^z%':FLeSרWlZ zhWԿ&Nk(mMm>@71/ ^Eq@Du,pJ着(?7ԗcz;mpw{KTx-p{7mvJ.fP][֧Fv0\l&@ Xs -9<*gvR[Z-"`wdJ9=$-Ezl!%fJF>@5$ʳ:XN?RƳ]0Ouo2桋)Ũ.Zܴ4wՆ6]xwMbtXk]p!Uh tR6k;`a4fsf[BTL:|d0SpyI7f?%:dS?Vl6Wg}t<]o{;&a 9R}HcOKɰV\*~{CSf{:*ɉ7Kπ2x+T|w|"g1j}Xwr vŜJ1 <:/4V"tX j A? ƼfÑ{8=_-TNUNШM)w  ֲWZD|%+i)o9=řӁgN?M?oe}6EPmX'W2R@i'-$P= ADLmO;9L } >j;{`&(6č~-UI.98zf2kBm>e~h k료ЮdgE;݁e_AXS(G4%c{g2ݺOn`YrooWzi$|2Ҥw֧N3'a<LQ"Dh+'e|42hZBh1qHա"$>1jsqާ|ai) z x/J$7ѯz<ΧXixa7MN |) 6Iq/;0,G.đ> ]<턬L:~끬A=X4%Z{VKgthNqP2hM&p2Y{b愷ߗTFuTDҟDp'h| ""u̓QB!_p't_3퍚~ɵN:n*p|`.ŲhsO;D$!|yR%;:ǮqFB["\ -Z;3*Ad+2`;/OVӿaT@̴ X**~ׅV۷vޙz eL+t;n!k()p+x cZt7zFGiB_ہ7Ľ/U;al\rU xuQΥcW wJ5ZlJ&ݩJOPx1j(H_Ņ'7&n1q:˭t"T͹{ө{JAe]!@0IzG!L"En.wZ@-&*.WLNP ξP3((K 2gr*we󟛣NJ4RpB;eSwQ=ȔZځzzV3 n0๚Lӓ<ѫBXÙ`j픂"/rl)|0+\]A8a'ofb_<JMCe]p^H >%9jZ77[l2Y;Iw-LWp>d7}c T8{-B4/D8pW\Mnu"p/C^3vŠ]> +rW,&?w[wĦ ? ohQș=KWk>Q48rIT𾽏.meİa3h\h9;sG-0 l^0fH4iXYOJMWcO[Wº+H҄kCW{_Gc #(a'ǥ[ޮ\ tS?4`% 4ϖNHŽ~q:aE&PߪKUio{#ڳ_ 1h$r̷]+8P{^Bo=-ݶ$ [ֿ vQf`"&4lQ-b!Y ^tR8?~.mu6q4\;ox5 H=S=K:5#.-n ru)`SY)A?䔋k֣/U-,yE&z$c$LsY tʵm쒵VnZ (O32?۞5JyM>b84(ӡ"ZUqrje3PI"2R2mqڌ͂Eձwt>tdĩ#Ry`oQ8Xiҽz&nL:GS@Z>ߐSt+Ց5rq/QRzInAL $=*ڳMхėl)ca56s3'}jQ4(~u0ul~.@s? =LF} Q KnLS3Թ,G\[CJ udnrMW6&VU窭dz4@+!}.LjfjhM!&A%Pr-`{fszo%+,vGcc{{_ihc~Oif kBTWm>D_օ;zXREmX18S؞% $-U/.ԻJf3TEa.kрdFvH姟pD.oy;Q)> A" Bi9UؒB~ngvb˾p4FyN0i[AԆV/^xzRzj tSO gH׺dQLbͲДW?l{Cc"jSu⠝ss g&͡vlUv_&r46Zm ʹ|5-;g.W^2wm jach iñ9'eW_lLR B.zʃлR›(: F="ś1IPt}K3Be+Dž\ ajc4l֣6-D+4ϯ/tdw9(sSNxKdZV)ˠ[ܾ VCo;CCNלLm>c8r|L`"1g6ɫ2"6ױW |/%w|QJ)(68WĀH=uzEn2%et8A:>16;.`aLn%=bkfEɨS6ŞǼ2))e\݇ZlYؿ?ar!Е?  p"aa%v ;?ʍ-Hx*fLqLK6pbrrt+v4 V$:ng,K* 'tsych{3 oA\- IME2!4@#u<8s6XEQu*Yy弑u^M6G>r();CPAc~6]FoMHӎ!@:0DQ\J +fy*-R7Mx#/kOgJS ?<9R6< fCfE4bQz)ttɈ<ӡof_=btz6AY99>:?>Ϙ`k|#쪒6!Q-;ΛP)yco^zhH3喥0sQnI61I}F ɹG+5[$F7? ,J!qd9-C)X( K-,RcFG"~oNA|B18 buf#.gp۵r/ <ܳ'I XʼnM!Kq_+@t ʷ9I):dY%[37!91F^gůVvmM^HaS&nΌuL~&z4/?c`J!>{Kg}$¥Uz q}zswL8 Z~^J&0PTB8U(lwI9+gqх&bM1"wO*@s2߉7@Hڤ S8sKc&>0SmU|C]_vL F*=Amһ5p}Fx,ȓAS`)sc CS  2%3]F"7&I>H~x^wdh! J 6#Uv#*%iaI49pLujȹLI[9mH)'֩xv!x%~tɳ\ӇqeEzq DmiΧ:r*d1{FjӌcX(tkOY@(q΍ӯȇZRޅW(̼3FC&tBp@٬ˀ@ ./ K_wk-ho"Y.O"SBr5R Td}7~ 8*dPFhì"ÙnK)Ed ~qt2XsN1Od1.ԙ2ڱ-Q􄖷tj7o j;aH(ɠ4k͜(SU(7lS_|1@EJ]I:F aW|Ir͐|' KGfa7hA|R4% $CwBnP݆b̆[#gkyF1@p< 2+2!s.tx1)FnM< 3[Qm`X# q\t_"Q`rm 'p^RS8)u-y­gVO +1y>Rba[/c+Oe)JϠc&B7̼i v*`v0ǫl (qẽ~f#۬mQ4=FYjc@GԾ(OHoJQ1ԈѐIwyJJ\b_/l HO`ʬ7 ChQړƶ4']rr L ty$iF$ Jƨ̈4ힼP DŽiCuj::Jf>L2yphwDހsSr'Kdi 2qF]@J0{rKe|N߹ 3 YÚơ$y[]n8 w VJe,45pcS%|tɧBvV{X%PφCZհ+ySm>aD[@2(;iF9Zo4y%rhb.Y砒V[VWkv{35dB[kPaMsa^񩆷=:ξ|Z-&`U%;sM 1b:J~E*RԖ7_$HDב aT~^? "(|ѡ'4ie Aj i$M)˔c$EָWĴr\|5p/U5e-Gb# AFH# tW $n^kFĵȦ'Hn9f0Mam)(|tVQ1pp;194^iWuy-![#ROWy( ]7iH &FtmFfKT4 g0-%V̓N" p㧍I@H$vwcP%ױ^p6D1JbqOW6)^hےj?ۜ+'kP"\H`Q؃:ɞр`7_-T0I۾Q˨U"z=#F ,Gމ.L^onԇkyKw;H HCfU4VMNrV-l 8By7š^*Uwa\O mx:5N[V>:k %ҚX昂Q@?qJ"7O]P4 M襃Ov%$"EbQ5)rN9 ^!Ը"2J߈EE0w® }Du]|#3϶؊>H%cQ!xk M\yk3+I/>6JԆpGNoI>0 u|o92 s Jăe7m;C(]-9%fGF\4߄ڟ /qv79ApevP.08 KpENYѣm$m*/Rd˴0#_yfpb[GW_uj(֒V̽i3kl.~{ɢ_0 &h᷀ho(wJt_ySW()N47l Ymլ6fnݬ:=$Zsl94[vha; b`aS(`Hނ쮳_|qC`mө9C݈-è:}qnfT,,qǘz$7]c]H7d~D~^$_ -x gUEK?bCѮ$|;\6Z]PBA]ccz2@W|&z#Bۂ^5f1 ];Y)m W4TF p^ a0wt El=v1{hSr _.J+U!z+״Lkfͥ:RHjF:|z/ bgH^cɕSMvX ²&E9ԥLFMe#!+N@'yC2p.Vt=o_F6X]~P@GjД.*uH5.DH̕0kr!GE=V ^p}D Z|2R.eլ $_g& v\=~HP"9ZB7&lgvƭ-k~MkJQwBJ'p) N5OSK<k%udoa;c33f?ZrqY'.XXj Zs ?n (39V P`>a#XA]BI4I.@S&/\qS0Qb}b%ԗB9ƘɒyV ޥgѽ?aIV0 G5:"1MWw8-$BJf.QEcB8;鞑(ijZ?/]ղ-_%8UeX^#Oeߎ}_!LtYxd0cx L7#v;xDi&F(L&bՓmo=򵅍9o "[XL@Obٳ) b"9Ҝ`3"46qsd`;X$C~%^Qhِ\Gb>>l=NRՊB-n|6Nr,߇;7`rPֲ$00~HNhz <]4V3"J~cUIp-ģ`{3;0uGaA͒VXpfP`R;kku}&lo5qD*\s >__nZ=)#vv[E-Uo 0 Uj3Cl/-"gR[a>Ȉ1ۘ.FM cMwXɊ䶇o X)6Np;{Ѐ[nӋƄ"ш6/+1x:leM 7WԳ4s P5+-8ė. MAzo"4̀qDnslaw$q©0=6Ru1q`JBf`95RԀ h\㦜;pjCƷq{Tn fͫSB|`T Lpqi %mČ /3VƻU9XpY|t9  #hW@5uJ'GT5W0PR ݉nKzfÔqzJh_@@MyN  ICDVe-,]սS㻿azyZ;Eq+ԜҞBHO|#݆c|/ȼñ9WGI~al~BwNs!u7e.V"/c?e;5jQx7yZԏLq@ZP/cD2Ǔ"6A0+(`adEhBpK:aEqP;5G"3z`AŌq+p-qU&F{~2yڠy4&cM8S"ʪ}FK!wYN91b¶mғ{܎T'' Q1 baZ\N;-#5Q4\'U34<|,EWf:)0 {;ep#RhTߵw@fo^H=OB6%ECqyG?wJk̕ yIn ~H8/=+b>Ÿ!GzL]JLDuSOy߉&sto;}@:'%tN[zI'b9mi!]@  h\& |o[v˿w×!Y8ވMjl8 P-zZLd(pPn` E;]1.DTzDLh3~\{v)PǮ̥e/8s i uKx#\W1yst\&Fc/wCHz3?I3&cH4dg%Fgʙ$G"J|akkmrK.i{GTyg>fB`ϖx-87aZzޗ&ͫV]Ⱦm'RCqЃ5 Qf]nPP=B#Иl`h;hu/)&Wزǥs¥|tP2v!ݗ# xMv!h K:?6B9.ZHS#U-i<¼68ݐdcLo hM͓{5utCKĘ4R(D¢PxsJK9Abhf 69rPdZ07Wi7X oP[3$\$M}. B~> 4%: _@$/C(o5m`gKRZToU㸀N Ï"?e ,.mNNѤq0aە "gFmt~Y(*KIF:_"ᴫi9`bW8` 78Di|ZB).G=j*=8g-O>8s!=isn|E Cys1joLOC7^Fd`IyzXe|H m܏}_6jB:}񒑞ZD:y1(qn1o j J'H8KD =IeJU +Mhm1Y([Rr @#5SrfnOo@n}7V /-pCR=YsgPd]ti'AJ uҋdȯNo; -"QT§weT|ǣfL~EW~cOs3((tEQJ/@SGsKv-xY]p"`zKM?vet Ʃ[v/bⴳǴ Pɣ{2Ji3ZJG r  5ܙ`4S@"D`v$籯JY/B(X9Y$Q8_(2;5)Áf#fRCA#U)N37)ƠDZEuIW}MD˝ 0BЮ@'Ы]ZX]#[`p縋84sC5HҹV0kfjΌtrs xS zzEbaWLvr}c׊X+ [%bIh5U?-l{Xvq #S2^wl v?>J[<7i\T(m.(p3v„}O1)rA7DjdyQD& [붔BO#'l&o,KAl!pUS^3hHap3 EAq;?л}԰֍+7J_MYtonpZYi1^ּSmZ{}4S/٘ЌVn4\@u2-V' He#-ztW0C=0Fa l|rǎp=a m'@ΰDx e`:!5Tuo5hmȎrʣ1&3{u PS,r,wӖ|4BQ9$-KWk Ʉr$*}[59R-Aac%l`!ǻ+e/LjV3͊T xfrL1jNMnVzR1x_<:t2 7qhs쪀D*jS/ack㙹)ݫ0#}=iM^DP(z5vIu$ mbD Mu]6בdbY(_S5[_#,Nz$T'm7{Iy@ mJTƃ<ӡ bfr tf0ׁz2syeJ4"3.Q'Z|c4"q5*hZ?)5J IteDRQS pw9} =@5X"Z{TjU5s`=Ai*x~Ή{7Ib1v:VvHRK'dG:U$2~(E-m{ggBu_jŀǴ9"0h–IΆ c׍Z8 {x4Ix H[v̯ƑL ,!TIvD;i*Fv "d*BFI1T UK?K7^b.UɌ?kvAln@)A:#Jty@\.4DU|>D)Ʀ|[IKo;:Ͼ8fNcmIa^?0rܒY̪NZ jHX-r]X&U%(gmK>AY;|k|L ++ma``h :C-k)4*Ь 8T0h5O@5E~"OaMvխ4^KԪRyR{BIaS M208Zz%+{ŃmEA1|z!*{2kgs0}\pL傇Iѷ }Ta &V3%LnXulCb)v.F}S͍!B@?\TE|?%'V~Rx8" /hu>a+iP[wrXLJBe02~H}^sTuaIA|yshH#9VG^/ahY`bc\ >ެaH'iC8+6Y˰$ChAF7ui2w%g|gҦ6ʑw?Jw7 ۖODB1_f o|lՕB;5k+X(i@F7vo[Zxhj.9Z[)l,Oe1 > TuZM1>Vaǰ?{,k |Honۚ٥b= dގ kWtV$E^W`WFQ˓ 1Kk_@Hqzs$%t ,,0\L|]dK +/X+u)k s DT8hZOT2UVR;N=lTf;jxAO/`ɶuҿJ M1Ӣ< hvmt9iTp y.Oq%;:ZPPNZnS8 wdRvg_XIskսd Cp ksY仢CB"\uœ]H1&5+#5u\[iA|{1?|A!Fd (^nȩ=iLdYGTmbƮn{$ K$>d} (\Zexܖs F1=\vT"|δD[L8E}]0 )hx}Hj0+Xj,G0#Dl=gw8,*KGTt4Med)(\h/c6RwGs`Mkichcar R> |!&BsQ\c_ǖa<%^{}{ b ?_]QeyBT̫aV.0Z_9~Pl~Ru^ڔ^fbF'pގ&S=A>2 ]RQcWքu DA{lF·EzH:4 *k ʼnn uB:,Nv*?} I#ϏrBn$*KW#~$ v0- =ZNCߺAE{` En &E^͆D g[ȋ;ERm_QfP>q9ĺ2b%[a`WGy:ؔC_LW_1 Nf,?f5ߤhØRޖTZ('QCɸ7Rd c5,Ԑ$-hjk5f#O;rajyIO.Њg,|'Zڐ+}iK]ٓkx2i s0޾(4Ɖ)ڏ=GR5rlQXtG8 0:Ϛ!qsS O2jTROWù.)#E45Y9Q+`5a 68{` Hut-aAEa""U )Y%x ʅr|Yֹ)LI (OqPʪXLX gi'Y9 !Tcoי[5]=HIE5ϯg}/U;AͮNv=~a1v(&.'Ks]dp ;VO~wsja< u5su$$u v>lq0ңp[sQƗ;ui̬%8#W1 HKJ;*%B/LqfdC05Qj( |dØ|/%k}Y\WHG/)xc, 0wX4VxŻ IhJ9M)&b n o#6Jʰ ,Zo$Ztp`[AݯZE7Q6yziDd*:맓!Qw$axEaxvgږ^U[֥s c s2Ek% `z79J g92(JX;>Ooo-m1I vT95A=*#mؠS-}T8 "yb:QɌë ΃%Q +V,H/)9MP4`# ݢ<.{@PDz,)stALO-$b1VArǯٯ'F@!6+sIWk2OyMzgu3Lbvb`;r1͐l~7߱Ij@-pH piy 2fÒs?&SemAmvӥO-Vq7It Ã,n\+ &>O2=J _t%@jwj;[^tT ܒVlӆDw|MHK='}%4Z"6A5hДuKoQW/EWZ6HoPj2eA>|ۢQBg|'z6)ӸYt&M ܟYjr2LBpbVEY}YY7zUaQe4rV).Wqa-0|ɏ#'G#XQk^9 xכ1,#Аa8dڨHGP?Ҥ6b$m>)ȁ%𨐞!NOYirFog %}f=%%Idd4Df.Y- /1u<0cZdkUC-wb8?j$s wWבu ˥I8(aC 6i F=wei{8Z-gA735ɪB뾈F {tFY5Ȇ)I1Ԓ'W&wޜUgز7G8p&ڍؽH#Ӈ]_}^ˬi׈ `@љa[΍p[";ڱ8J{}L?q_|+|`y9?13*? 7"BnIQҎ2O&'3}}AI1UVL`-N,G]3b0/duWEK Z`[O\@IMnc6(~w%Vnz1jVS+уXKQhSB^Nr[bKۣsBƄm:2a,$/i";3HnzЗes6 vᴌ:]J6 {QHC?‚'/j1y垅0=M1 .en䬼2sP8LԧFe؟ǜ~br7VχՑc }vu֪hlVk&`IkNs-bX[.Q4=yRDJ(>L4 jQ@<莎Z{`x^bZh"R~uY,Bۨ{N7 MѼ'0Ww`[ˆXpHP2hp'yO0h?%yqBE.Ɋt~eNoo DәH=6Pme^|2{+Tm(:\G%1-$Ol{+g/*pmXz7j6LcdɗFw~iVݒJc78xcL9F* o`p׋}AhlyjZ z3!N b[CQGf_.fqORitrƌk0&kJ*10 E=nGW*ۿzy'ːfZo1'"O6Ub:V9 5>\u\[ndXG/nI |u>ڸ{F71254y~MWkbˢ@$CxU Uzl}'3 j ##ޥ(.K J0@>`-&n3HXДЈ >ZLH՟Ur05N$ϱN($T -NoUaxɢP^LGLmOς5ntJ-gݓuu|}@ֲ'i=TZ}׀,?/HoR|<6~-ergՔ.X!OU1eY>C܃LjIU?BAS5iXtF@kKi\+ r}ښ I%*3m7&tKƤP숲"OaWgk2[lsuw3,Cw[-Wi2BK*x"][CA hb+{]%+`ȇR=J({ ί]ʹ$y I{Q*?/:"/S@T!ǪN-XܭVý7U:XĹ_YtI)b\Цd,g6f#`i ?S ?$Xgon"yWş? CI)Þ07tZ.86U}^Zodɠ![+P&:1-]9Ș߼km  U*iґeh<;@Ě'|x! y]LsGh(}ۃ@eւ9rnx0,k(뽃;FV[߿A)V(Ry1ZmV3Me@F.$M\|̵#;qy`;׮o,/K[|ȋ)׍⤌>rb(9<:cT˪Rb=k5U8pB$iꆱ:a?e?K~hVzݯ:l(˚oUŒC6xW 褁3A"<} Y$<4鹮?'E˺rj:|@}fVK ĂD 1ihshT湫Ϡ"^L27EbOI(m(W}WRi#$wb0qBى@K5HD`A;GY}B>S=PpgO_R`νZ x]|vBT#r&/AvL DA7qm(AjuO"˝qoU.uY,Z͚xz~VŌ6}[]a+a4vpSdAjp7",+oF[MVu. 1D!O.p1>qPF4?I,R~楍:jK#!Eq*hZHNs| %!oRٳ1; Jr x#iei__گ%b,vz{eH%ோ`& oNk:bp;4IΆ9e+b/3c.&O3-4QS#'K(F~4mOcTId1S}G<ܰ(0!=tD,BuLmcЋ8.o,FI:9-GN##Ns[ *_H*x]ˬ6}S&c|ΒE8^Ɉ_?; ڕLr+5r%ͳ'mTڬys?͒xYLidBvfKfJQj'-l'1b ]f%Rl]lYmˆ}֜Qˢuja|=Q4uQW㭶o^E Lɝ! ގ7 &H1=nA%aiP sJ1b<@ރk!*zZSazlcNhxL!1#dW|bjӟlEގgCJ^Jw/W]25q\ `vYg3|{U\NF'Irb_/+ :Da6-aɴ݊1>yfLͿ"&ٳXekJa 4<%wh(M՟&$&]V ކaW~gFi kD o$oe`\@3QB-ECzݗ7KROǯS(2k;Mʔ&XSy 72R~DDo|!qW _ʙzӛ y`\;i $\:)e%BEJVi8S`2{z S߉ Bp/L*qYzv~cyǣ22N+]Jy]!~Eֶ\W2JvQn,Ck?v0yW(yVW.^=r(_/\k!RNa:S&fFΒ%]}e@l>84n{TΠ~<[=\ٯXјP=fSE:kdkuE󼏋 J^qYܟđvmS dR*c/6Լ43B_|U{H`W+DvSxw3q*taWoK>6U3 誇jAq9'h39o+ɚ/ɣMa(Hۚ:6",&dfw 醬RkeSѡD`4FCDnġ#u 0 b.4&Bb|Sγ=XMRuڐ%. {D p&lQXib"nU:s09GMB|*Z?in פ5uFйR krRˀe0Ƞ^Rxro`/8ɪdSV!\9ϹtaԘRPNSĻ*K)Y(&"Q框+)l0&D>>\Th^^;D9QLGn߿Sks-$,mV"6P唤;~W4+w7CMqTg.KX,Fߞ7[{HBK_sb>~5<z/C9"_}OыY|WQuQpG)e[^ X"E 3r.a-=VZBWiALggI7v X>L [ V7ɬˁf<zeI6n_s!rJVA,AR,L0+cP3.:Gn|@fOg9Dt*yYm~D{pfk~=|-Ӆd%>ҵc2+nlϯ?)Ik*3:}\ZC1>Ê{w8 DY!ʗ&@P_v@O@É\!ϊe_1>y!MזoE0.q U4IIgK5kT o#)ҩU040fF+&³d%xwØmd' ?b[ˆ/W![ {\r;# Q{'X\!`I1[ʭv`,XJa[V*V|l6d^*BA@^!n g4;hĉ4A6Dqr00r?Glxy&Pu.+󰵇~0Ut8 }e\ԓhp Ho *zhG<]a\5V.V*N?PTDr0+?,zlƿ"%djĭ ⭴q1#j fg%IgCvIŌ {;/&l37ysE)hZ{ImcZjQbN ֺzS˳"Y,Rm 9ROF4Eś/Ę89ДtA٤EETi'~Y=Z2kOw `.8Fa[=Jom|' Z4UczXK\zomV*6o3צ#nb/FF@P{!Չ/3?ƅ Ξs (˙AY2$ɖg*q6* ^4oyP+FNj5qHxYMm!>U0631!%%R~[[B /]AHAmzXU5VIKGHGr50p~x0_ N-+r#$ suߤ\w3k |,[JR &< YG tvf=xj_%O5Qc״m1ފ?,vr(~M=YZ Y熖ƅ|cQCR֬k}U3|o?=܅ eiv1b5L3mWD$b%Ts5ݐl9XR4n(Ia8&CA / aG[ C(Ӑ<4%'u|]W pe~@d&@Ue˄fŸaTF@ٔq[#EW`g}ma.[enc*9{޴l˒l@h~qz-_;.D(Jl&IK>A1~m@rAaɇ L^X.UG%cLGFffZm  I&*۲^kHy&&Z"6H<+զlݜl7n,x;iLq @aq`b]$ !4`B6~iS@R'w]BT=#͐oml,dr42tN=\4,c>(DW&{2+˽Eȍl*7gv/€*Bopp$I ӒX|߃xh+!CO +Oä]J}4۠JrGLyt#HE.M2qȅxKt%}'6r;Sݤe%CAJv27}ttxs/9G\zk=pRYF kʦ^AX e $AP)E,Nž*]+}+u/gUV"PMKO؎XMUZ$:{X$B|Ulk\M7j]e^l1;#,y=uzVU:eDzk=f$L@BTqtaob炛ǘHJP+_sWMqf63QC oNRuqEGgy# S*-Ʈ|xzZVc:C&=w5^:4:Zxcs {=cg]`MĊ~77&)*kp V!Nˈ):j"'>`@m 1Ꝅ XڕCw0lxx_a0`ʭߤL>UuYG]gGW]Tkئy1P7gm͚hKa|u%19M,c湫2xwJ0xQG4R>_PR3ODB.H% ^U#I$.(|6!} W]S.@Thsش(IXABl8,(nak# 7lm[W]mt!g Gi ˤ|1b^I72%Y9x<^^߉{ ^p|E%Xݳ@5x,A.CbӞe$pSiTs7C.9k"4ݠ/ƮJCJ6@y(mG<Ϸ#F$G.Q)Fx%qؐ'̣F8֛@ϳ, ̐ÐT+4p:/!܂d)9#jMWE*(JPp©#<o(Pie4헚Iv NhX'KrzrXEs8DC:AB;uV۱U)]̈ԫG#'x 9bD!5iN> d~ 4 NX 5J];A#C/`lӻ\vUsQt`3PsZ2 Dv):}bAu7!|HL@F*:PyUT%RSuЂDquSAhpވC LJZ w%_i{M٬C\Pz/7!?}K4`xVx*+砖X ߔ)G)&X?!R*[ ]H $ l_oMGʙap9KGBژȡ/jhR[C~3[0PHT֭\h?U_&vxr>`ɛS'qJο~^}}'& OHsh \?z<,D 40k`yyп89Dlv͍ϤGU [CeU*__3fg69t y;h+u<> ݾKt ŗf J<`-A5c~Jv1,~ otarNbXq': wmI'Q%MnECW+fgkA8# ١P±eV*AxTWRE7{8r11Qh@J%sU6$QĀ?! E *Ŷ{Ҹ0In>}ڍkC{ʫSƹ[\[ͺV霿Ď\U h72ăJуX5X/zMwn0.ofϿ0Ajri5BOBK)~8.ܺS]sUq!__ Zn09 Re@"%Y]'Pyה%|(eky'F"m!wI-F}|]),_n|f/+XsF9c2nEy$jCJv 1HԱ51{YaCի~!4IBXҶa<_RTm֋b({ƠBtL^G޴Lvhq"{۩?!HvΟgЌ~yhY MZ@:xSMQeOz;Rqpɯ }[oN-ő8P8 tz@C s2 ǂUyc֛N-W*צ \ }&x:|@[EGcl oh`k F_ pjwA^ٽ+чk*3iWXK+d0/fv!M>BXa>ˁ}n{gbk z.:=Ɗ;q'tv_4@r ' l{8D贒%>Ly(7EVpM,lȦ-\2Ц:Ehfj~yiK#YdK=NN V>N݅ܧ}.W˴^2ӉZ_!CA,yEV Y۫ͨ>gAL|DbQz ռƊtv]lKo+V{oCa. ePG'+\vt(l`;B)}#qHZK dEz_31A'1ܶW;Ej.supp$ܷ^" ;ܩ:ܾ_=Ìbn)%p|,aQ{9Q9`'k?IyB9]w1ĆA3m8P#FtF,c[)7z5\1q1aiϲq-SKԡAVY;Ea?>k9S ثYwu Vwat_M;#] ND\℞2dqs{zAEZO:MuU(Z@GUCE%UIoI[=0}%= p]1 tHu#It  t,3`?Y83yt(:`c|6peV%Nt(0$A{0ugrc9me4[y%򞋿PN#7TQOBH- /yeւfZ* Ć.,DtwRㇾE>.Z}puudƲ-ğv/;f=`4^/<#xtI] %[rAX3mQ Q?x,>W^XYS(yd Xcfӕ^>qѭr0LFalS׺VsG"m<ƙŕPVLj] \+ݻ P#l;qQb+p  UB4f޼|- #-OEK .=(Tؽ28t=#m²[ {MhYpqf^i>ѯq 5dz@v%og]T` A09I)UԕLY=ki׀47=6z:ov8XX$ CysIg6Ԡx)_0֗!{tok6_ʋ0ԓs%RjngqH8񷸷yXakOR>DyٲsNqX/cibo7ЬeuoQ,|t-/Ze\$\j2.ɷ>QjTmF42sWXA .M>ft:Vn'lwKQ:^ER&W ᨡ̓ZH&tV2-lL(Y Q]+$tFu]R֎̎'C 5dh8HJp:mTKП;چf?ީ cMLc.wv[#jhZ)wp*7 =qY$\yaƿX{`VT*Bɗ NNkU9b QT~yf1גrIgo7J) 1~>?LG΃A=~7O &䥫;R[&ԏڊ@_VC ]uSr눪Ρҵԓ` @T_}#l>:r~ %C<Ă{cݭRt"=X#v_hYj(|ryJg[=tb^r!߫G,&k\d0֗i&=k%h2Y!vTz7`;lP{iQud%)u2%/=33} "EJ||bޮt$ +)܆|SdcLQ߬ngS#8hq(L7 ϭ`Կ#im=߁9nu4`c CFM(e[2zL =*ӯMw>@x!A#Sle sMNaLd7XcI/JV&V"+b6˒ub4uϯRh'ci.:^3)+jlڸ$(K b˖}A嶭YGeQiXg˅l,!R؈.gV&F׭s*@ֈ*'>Dqlַ :CL4<[svC/ϿۀJTdՍWa*OΎ|C[̀wzWvPfHG}bL{tjH?5c24,-_ZMZ_X@Ue/$!^bݜ*{'Cpz;5,9;z9K֜+ݟDŽpc򩠽}l ^Ɍ س[\z!ps @KSGέ!-.hl~NNOOuezbk=UM 0GܭJfIpsJ1RH0`u%d6ZIoR([mT+mS!¾,"G m27quocyQyyO jaE:^k JBl;ˆ!7Oԍꌧļ9E0J&{A.΁{5J\YzN+? [`,e g6K[`;axCJvsGy"E)߹լC#MTȿY'ȔJ|Tv')Θ,F#z4dy!K8aGmBdyn5!Ж-] %ms/! ܉c'+Ow> A1k0eD s~C\9c 9Lw{}4U[ܹMo4/L4RBA {_aD),>*=)l4Abw/Ez&|u$\dM~lhbƦkZ S=S<HI4Rى ϣɶ*q#HiV3,Q;zòm!pFp͋:!.bFc](5sa?|AQW1;!թȀ @7@u&:g!]-&a6fs݅R!<[Q=1-9%i%zBc=x3掜RQnlPx̬+_GRn=ݹ!ټU?V׫,YF b4Y2CJ8Pۆ/=m0%ŵZGdJQf GNG +Fpwg܇`u~^bd\0tT/MG-ܗ_~d!3~`."3xJ:sikKЁo)9 KO/@X dL;u>6:dWV,&Y\RG3݋-eI'\x3A4. @*ݎ hpkr^) ^)wyrLۙBӺ??qMpEj0˃ɘLVymeXe KzvC "Ϋ# rϯ賛gҊ8 S>n(6aDEJ2/ +kN;g 5uR^藞n<5$e5١xPSZDAB+{ fgUImaE:#~$BڂY%Bq4_ mnh9/(m<_8$6sE[G6e'6LEAӧ*<yo>GV ۍ*vB-| s*ɔV$KM-*U~s}lzFd8ɐΉFJV粯C_ ҿ@AbXR,kxQ]~:YbBNerHGW v,K7լHIAr#׾֟rU7lGR γo~J9 S>,rSq ,@5ufiW8]vmr)? ` OMO~V:4j'7ge UV *nn%B8p/VutӜp4qGOKϒy"R[JuC+ 6 O5LXj8ɥSm- #_>"\5)[a!ƵXұc 8e=|:&kV$9}xEן_ 1 ?; L?)HuRO9Ywj4 "/K"J?iӾ#%9?~}jDI5;& [P07yкG{W}،/dr?AUdJ&/Qy|065k,Ht:?wv I&)U'pogՒ!aDD.3cu@SPTؽ&QU}uUח>5KHݯqX/5q{#^ܳArY/+J=ELVZL p5l7"rXѠbuv+S[jPfy.+26 *tFQL5T>mq}K,v=$a'5|  R%r*Ǩy<_־yfwmENs/øװ|bz@$&YG#Qbʓ` ^u`}zdD~N|}V@Fn[SFK@CXˍT}dm?A#)䫳(5"Ųlq @Ck;-==+gwZL!3픧|:(9;10sGmJFi!pb{@P;;tMQMǁ$crgBV(H )%!`a_&#h}+~xP/p # )w9xk)%Uk,s?IT:pMa;nSZ3쿃y5LfDZ] IP4ffM$1ҜWUmdF_#;okHS&O]?u7M=dć7pQ6-;yU5Og!Ek?3e̖!o#05 .B;M\{U^'~N\٨ f%S3ɼW]ڰHf|H4]L NSCzeѨ"|NmHh-.&NZcUs*]k1@'_ւ`ܾ ۓS/8چu8e_[5y}ƶd[=q $ujUp_lR.0VZ OjbV̜L+ 1jE҇ڊ ds܁ZMi̠91 Õ`xݖ)d H?#*w1A"c\^O2eKUw/y:״]G))tP[kQp=8,/i6H;4Fd␚Y'?0K܌N6+ )c%Hi'Ύc>c3`x|{hbtf4G>ow]onю3?) ` b_?T_V\<ЍF,5Ig=K>fp(V0\3%)·[% 1a'2ʅe ,8D=ԫUSiW5*R >s2KܴȨ6 u2wlK,ΕϮ{f[Kr˂kt)˕g:  /;'B_H2 i[ehGfI/hC 1 p2/' 1zEyM_*Ѳ|o*WZkf=\kYoT R`E`"O7Qm*D+<| x\ҏ"j!YUihގ82U*Yٳ򩅸901AF<0`"}2 )m1K(e+m7S\T-dPԋJt8g@҃=_-{žW)В1UoJ7 h0>! 94YDPIl询Vi֑D2'1EkƧPpK=ĕ;z{QBΑJ|fKMI~(#pU"ښ(*Vp :7C*, C2z7CRЍߠyZR{&B޴Ky#h^F.Vg6#cl )pY(&eޛVgWP e)ĐA-9kKx0r6|Qn\AaK}/zht#=Cu43ӝ8WU/괚h@\{>i?r^2!}}a@#!P>q_/ br<)' '=Ǯ.et5=9Ul17g|tz5eƉ*1 2{Ro(2SwAG`|rp< $0և{ߑg`Wi4=3 xu %YAkѓ,$kQ60u\ya{.߻vR-%O!WIĮ0}>Fނ(TGڤs+7b{7X EIZĦ#~WOx;N Uo~h*bY1S&) ]c0)A4(|Нf&H^h&,Nٍm72?S,hy1Ḓ"Ɠ/6^_`QH|$yhG37J Yk =ѥ5761S1z3hh~B^#"6RʫRmd.>fg#N,^Ԩ-,'{]_A&70՚IWQyyj`+xcpCT@ H歳| m ɋg'+/tW6LJ3, &_<8[^4w&*_]'f[Oݙ(?47tymmÚ>g}-e݇)hdrmZ#nHm<".a&*,P[hU\%e:>߅[zZHJ{9C4Za4bT >cU6ׂ$|}ږ~nAR.XY]Q1'i˒PKO1{l@`)I"oT%kB %Lh85)<!/ཱ7YY F-3W1UfKI{:q68sS"A+j-i琀L%H>%#;;V^ߗh*euFSHP䅂H ȡp%B͖!CNFۣjmX[WJpA/u"llE j=׫J3oF\~fZgG1@t(+Nc,[@QFZy3< #sw x@eqm,PG0j) NxMY00.QQkv1c%P˗*h0Oho,T,RNJbsbT; !]R`4=Qрz=n$?GywbLa⮌P'w'8p}7{'re|Ge%-YGF 9(".H9r8 K<#eZf9KPă '] _eAJl"@©4v"S+4k&_!w!T5ļw&zD#6AaR1`Ar[ Ƹʙ͉,.*p?7U}ċq#0U55}/˹;ska0orYO wftdlH!'ZOY4#Rt&(־حK03NTP*57Ey-ǯ )$yTS 0\nM)V:G$pc"@Ce2K_꠩Wj?`H[Fv[#bY\>?:,~ ^bD66 Gr$J55M !tǪ:h͓!42ZHH{FIAn!pbE~m])m 8[]-)9TIY8|y[rrm'(ncΩ +x۶iѝXk4BG^Ư 2 D1ۘA++;r_B`N{u})n_BfiuAX?g2S g V?OV="$QX*uPuÚW;kO}>7M@Zn^ xAI u,Xa9l>_mBuf5%#Y8qc6:?+_9nB`reΑUNYp7cUump4U҃^zK%tAeJS,LT5wJhRe6Y#hPkz9;Q\ErX$-%UkZzm[~rllkΪ<jmr 109.g;%:-\Ӏ˃~ cׯA Qt_K+8.&pMCFt+a!Y[2'0 Ċ0Z͖,:>2$Q=Ph<#" F/2ïYN76HĽkRzm3Kf/Ck$U+V:hc`%,QY㖹{)%Y $rc̋w[M|2ѣRF\+*tpT+ ᆷRX3~`HnzBZ73 r7b0E,=6Nt\%_!^g|S/N5Q&(r M0olG9Y?`'(4cLOpKEs2L=<9ѯ'X58kƯـ(ۤGt n iA%P*G~؄=zkƖW+r[ 2ӓ _RLUS38S 7Z8Ն#iD$d-|:9ȢY V{xm~$ xq*3B .8D}{I$&h=NK5e QTD*F"n[!Y|C=1b+ΪHQ%gǚb~ӱ18Ä moB<$N&! ,ZŝY\Jb8y`!;6U8n)`BE_VzkeIOهΨ`N+ |"D\Mxt}#y|*&nѵbu2h2 ?L W/ !{@V L(@OJGچ\-omG oؾcJ Ɯkcҽb`FtOByUydl6o-kX☼>1 )A#e;1P0¨3\kiG.gKܚΑqW/f T{_EI)l0ˏLt")Zً:Thk72&J E7mW=6DKuK3zDZ~M/1mFhTj?=L"Mf{›;AN1'T$Wsʂ,[A#H,Vd\ykVh/`c,n9ts^7$aRP3 dבXY\e^Ycyȭ ܻ`Zo9H2iB<-# i~ncOdp.P{G6:%4;yEGplr^h0FH (ܶE %,=C{]B?-?d=R( oRdfiC|=XX%Pô79L; r/[Fjif;e ڹ0]g [Nv6Cǖ1%i~v(/Z7|e=7*%mX{l>|\y[Nq(2{# I͛ Jbp{ E.JV`W)HvO1s&owcٖ4I9P8*_*%P0,7[ &$$@ U_&ۻv.E.8릇mqsescUY7#qd`Dբ9R}ޞk x릃6vԒuªɎ7ꔔj)=iN+ 3yN@mqWePkL-*@ã-#A8.oal]:|| 2R[o- Xvڊ٫b!wz*MP\9ԍܳ\ u]]B\V #:k>3$?#çʬM\=ԭ2A-B4ME;x {[^6wg(w.H=j6x \Z .XRu" .%v7|"!?6[8-\rR>]ٗm-qˈ?_L矺d omMJB룛( %NH:jUKO8qDWT%Zr Q23t )Vu;JINCF;J:$< ζ ޴9x(= kLlDZQGMd DɦSv^EQ&[$z3l4.Z%Q-=ISTv k $t Pդb>~M(( ~[u=6jf`m'qk9ktsĎ+^bPr~[) 毤.dyߴHP\#~GٸLjۢrxwе-xzzZo~a87<.ȯ*6 .5bIASk5 i ~@ճMHӂKY( ܨ]GP %rC a 1wIArv|]%-!B,B%)8EyV *Nf\2 ٢[iob=W^/q9<`7=QAf̑u_zs070(G@V`4R~iK)TSmM/ڡ6h#!"'!4F;'-:D1g"/ T$ ]W7GA"%lK WzZ/tVIb3kW{Hj(i;=\L'cWﺈ[AUߤ֢[ɧ#ٍ@lɻHM+ d^ !D1"$|A~Šqeq 3 xb㎆\pwjl tG|sɼ*< Z{͕?rwQܵG@CV6]&l5Yh+ ( nnj$`|qG NZL]}*PY )%wN&ЉЋR}+C\n^--/ˢ e &*s`t䑱{PPO{S$ۅCz9o R6Gznj3bt|W!0ZkClSPlVaи})L*4;nȼ̖r+{Yl/wbm42i"l!z"=d |+ߑR&a#,zJwP}E[$Ԧ7_F]jJ+i ^}%gH흲F` 5R g $"Oե1w8DQs(a3\$"^/Rxԍr'ei4Ufh}n"Ϙ$]=om{ A} vqidz2-r]cYd/ J~{Mwƴ/L'F*Y WLa>.f}FfSÉIҩV7d .-!Q-2DkD`6M#A3[0P2l,Z?o;=0Ɉ1^v5,j:jӉxk@mĩ4g#?Iq;q'Wu*w꥘Pfwb \pjAgjdHZM[o\BӿN󷛓7D13}\ݟ}qxCU/i\,|U,E.#reyGh'JY_[CbR|2- T$av%+ Fk^[K0vJ?yFn'rD:~˻x`zܓcIժ}Oė)\5liB V[䑵y (_tZvѩi$||\d$ 3퉜x6ۣ0ǻ0qXmZu9U]h/7irG:_♧!ƁSo|guHݖ6 2aFبǞ;΁4_xZ6$[1:Kvi.Y?`{eO,1T}_GmզB8QO4@ KLŨ%}/zUru,9?ڐ_\H7Ky`u3SC#v$  :s]B1t7잦o8ο9EFßÙ\' [4k|Y/:S"B ByGN:)K *Q4Ii 9Q]QZi\p,rV$LU%*V.*jRv@zF7[N:$X9_?&YcN ޜP3Rؒ`yI_p%PPIHE Ͱs\G Sol 'Kb$idbYi~Ok,UVtyd3dj)TYk;yT.ഃחc\zp2"^QB E#[y窖WfȪRMx3//F;,Qj\}Tb^v$C[}ї=39?)jPh z?~q*)p049=O>TxnpY z&dnɉ_fg.px_R7kƠa~ V06ՕHbB" s\"(}EFJ3Ls$nCh,^q,%8كXkS:V ]Z:7xSajae3Ks588LKP)p[3lF zxg'Ub&liMV}pLK/SUO)4ByXބLZa\.su:^%jicԪ!Հ,~ocz7EC,8܉cao)Cێ|+TdA; ~X^CPb|Hͪ*-$]:V'C6 X%pscӒNR1 ؋:ck%ѥmtt_Q4+3|]ݟ#(pW\q܋L-&\--\_k$Sp6d+*p[%?^sO܎-x2pl5a֡rXs\(#ߑw^f[~Ld PFE7?]a=l?.v̭|pђdV@>o%P?vr6v#*Ά8cB3t![ui}O։h WClH ^GYw6(ñlfOeA١ʼx8̭:Q4M+q߳DPe I37ΫSۜ#7WӜ&۫;9xqW=e/B.}M̰uXÍ]Ke\ M#+O _dw'FңE/RS*3LF\'Jn+e) , G,!R Y\4-I&v|i_$D~G2<"FNxr8:>Oϋ*QW~IÖhO^ L CSѵLrX1izzdQ(#vk"0tsyHc[ai kC{ܖ]xmO+g`)dV(1Pt,&7,z!aWIדn((V ΅8\,?U@mƶ ̐6!j nq&W>Yx`Iei t7h,K89o#Fl瑞"ݟ/h>`¶հ]wA QWRX3Yu(o*ŮLOM:җn`C94*Pr ť+">^pDו4of]XMrLj|&2Yf2('m }4 ȻfMSr#N"eK b໻xWG6{rrc}Yv-zB1߶Z}qbzw~ڳHL;ϩ9BnB4z:Gm0~R8:1a;R+T[˞%{˷Qi+ :~ə4Fq-ypX`~ۜp_WIX/6Jk?}ʛ)\UFG8&7yXMu{m-=ց?>#r6,s_KFL%֋Ja k(L^QbEromBXG;z!2Ti2|) .Yre>t!F+78Lla{ߑLV}!H%Q[ov?i{ͧQPM.ٓShYFsádrMєb-gBX2#/UQN*&{sy׎`<;NO/h5@ MknñOBJ.ϏzB4{s{V˭j\Q"ع*ؤ<0` 2N:l4:MKN2 *peJ u3ɂ^<"Lz૜Ahc1gRE;&D~jwɊ? z 3""ZΔAm:;α.f1ς£[H J?GCa >2KZ25Y{ViMz|輘/\!:EQ6{vH1zC2woFJR}G6 ij\YM E©5M#K-oZr)ggS lswdFņJ(}-4 _OK[zڔ@T]ԔQkYŰcZ[Z`Aե=lC^u$>tOn5gӅT2Ҙp`s ͎B9MEUn4;|[orzQf&C.b4Z5q%M7[Q" B"f8_T2с6Gԉi-|w_5yW";V,KH:" (]~sLG&}$ ]Q\v|e'};N>mx.es.L_U5Y @Г}J߼-.+{Q~=ttlN &YI1Eҕj:ޓ}i'٠&y˜@&ЁS; XEU!M%N2Ʌnۉc9nz됌?-s5 E!w*("A241vH$N@H^>oTTd JJOXL/Uwe$w.n3#Q FaK L!1] 'Μ֣ݖ$C<ݸ>Ю/?t)cÏow.L_8qV pR鏦:%~EC ȋT]yϡ!3pWc}gّ;Kf5;k'r4NjtB;F6 }ܭMy( f<ԺN\ \0s3i1]ǭ;7 z~M>䀐r;V%FWlS J}>َO+6"ZԴsםy1<2wg$ ٠rT&R38PnNL}-䯾#Ԣk^4j;.!;OI0YjQr+h( I'I?*H#1&ihyx\u|8M cev3]fb^;j8Qc<=]ѿ>G!bnƲr`f+Yګf&dpJ聤l [zD2WV!t[#ݯfOŶoN=>g9//>$ȷԹ?l Ձ_.JPzK­|f# /|8UȞD*d=Omm\d͗X`]FsM!ZDo@>Q4opF@N \.Rr /fi ihG!2s n7tlp:[sאc0Dd[7>ʖhX1Ua[xV@|Lش&N]vU <`LgtKK|qEz*'$$Z(tG<=ӐM;`nKN"Q3h[?Ԫ`O1O}̠.֛BvslC v ăn\.ʘVY]pdy#M6>vMann5mS>\\s'kF\D{D:G֘2L7s^ >tC檇.omh 3*Lmo|#DqVؓɾ r'8w}7i]֩I`Ybr##Z-y'mY某z{$iĄ~tBBB@MQlsnIWg#0i}˾yVO@r`cu=Q TWW٧|q7VUH^w䢐 YhGsufP@s8iHMg{1?Xk_SgI w I<#JEi[6zvUz_׷4K|&L=j4z\F`~Q*«t8Ak ǥ'Xʞo

K]SG\$~|:.cO4YVey'܌^OL4=N i:,gIRR\%4_X ÉXQ" ;GLtdB1}~gg=\:k2gyP0p>~%͌*r^z=YR.LWkT! MceY⧘:;mOlB^AG$t7qGeF|;5? f܃Z.Z4OdΪU+ #N@hR ޔ[Fڪ-* :+DK 8/|o 0h6"8ڥ0*}^ml_bFy-%Xvg= ,֎^+a ];Q>Թ:݀Vl*,Ky`vfX1_9#W0aRQ@aUh} %1fuA.eBfk6^mk0JfIg>UWK).()gow] D`em6H<> xaRGsNV>{GY3PF Bw! rxv+Kƨxy_eR"rzt췉0 ʪ3jVVȹnLf2'1b=m%!/qT L>R*[,b~bN3T"@>o+1>uA1InQxO7ԯ~趡-kفܛY,GpQpn4Ư}DPX"!IP)OP%'сb;7RJzJNxw0i6|/'dl$AebbHe *e٠ )vJD+ԯjiպP:RZN[}+TS!8*mӣyf$5{ўش4LmS?˹&j65}pd;˭3D֩xP`1>E&_V,njQMR Ӓ-|4\H^Um/[VUw~5j3UY[M&UyYkX fY8#jjg"+?IG20esr4ȘI/VPMJR JkF̑ t%Z5]$Pq۳qX^i-.~^xrk̬t)^.*UfV7+3Y!/ d;JD*/w8GaF ;c_}~{T(C@π ^ϲ*s B^{+2VlfOyF;2!C 8~ZJ>Χ"~q>\1Մ\wVlIs`:ZDbԥS *$o_iOGbTF@ Pc#M3D=!p[չ0#?{%9n/W0w p톊QR9P90Y(mb@!r[c$)ҿv#޿d~<9lN'Jey;h[D;n+ 9wnVXJfj2ym|7eCPbe{Yia;{'g@S\ΰx䉰ֹdVFgR(֍[/ ^!TŤlD?c|; g1\p ɑtyA9/pb%d0s(<)#t5W: ]4%a #CWg;@]/ zR+p;.4,/V AiDZ7$ ao[)Qn6[)}.@:g`/1@VBbʦڀ|?u<yKMS/@N4_Y.7z83P(P v\7=q5A#pj3iz|i^ AtGQ.]쀌u>[ 5aTI"pB@һmlCAQgyqWW\y%BBH?+YURpߓ)uK$X[!%lK5 _=T54+W=+o"yYA7pq֪/K8 (=y2*~h 1 %^71rXhTt #2&~ENIb8 d5*N o H:3L5q!Tu "H ʅhEF8o*+]a9TmΊ@ƹwǍjՉ%i(&ɕQy'A_2B#r>$wyd/=5-D}VFry~k$bo[)SN=O}V~!=/A"J\|rQ1rqeyikf{@&΂՗F8yeU%Ǫ~4dž\Ͷp?:ڶÌ _/aNK?}fX+ꩨ@^Bx\F'jyj11t_ŗw&p-J#UB#נ{>Z"?,8::g`4V?7pvFb]\-ufuR`\#T5.6`VuO?_;*Bҹn|{>a(T,3M\9/5&Z9? ]ec:[h{)JwTΠR{E9 (2l,T`uq BO=|uhbSpS-tBaQ֢0,՛F\Θ :hP9T!IE¿hQ@d<562 &F>Bt A!a>x"38} !g>$DL._ڼџĎpX+gk'pzu%~]Vk$W7ps.>p΄`*STK`(=gJR':^Av&]y~|]n!=^CF>*#ѥ Qe,koCr@,K2me˄1S#ev0 iLW E;7+ăO4488(D)4H(ql4i(p8SRM0ޡ'q N .Qo_e|<=:`F} $7CS׃}/Fz<_x{?p)<޹ui=j_B̐ G+6A,b뿘{ ^\!x7 vkϔh.` Iz @J",_pHрl<8""DxȐY teZ%AS~ }SW›O0]:w&&/e C`pOtFDyԾU9;'y eVCBLv0{[ҥYٵ0֮I.T?`q] ?f'_rl z3Qͩ8sx2ӯ4SF+(I"J"~vsS"L0tNt# 5kW k4%rv ={a(va7}5@u^L^&f ̐w#"oaI''oFKM^ĴE0{r+nǔ!뽳8|ΡrC?LzW^d4B*kT+T,߱3@\C/RU&x_a>*,oNOm ԋ0eaL`| $oIeV7+s V'/r4D!$ Ǿd8s Z B==ҢAKsFWT|(Q΄ n[B T;9}u!tX:%  MVޤi5s ܳer,ʹtE8gE ;9Ύ M.adJ)hФ)DG#WHk"֫u]QA5F"+tށ P:f=}|+sA@pQc QvNz Ҵ35}}e"8Tq>QKe j"'Pଽ+r=JpNכRG$;86uLP";M[d}[X^jl/a(m_xU &> GbykBz"ciIWU[˜6.Zϓ'wu: !Ēq?9Ϳ -uȅ2![hrK{𘽱 F9Tߠz!1m22O ={&$>4(r'1clm,VﵻwuZ# Ԝn>{7>\4xb<1lؚ1߷+Kfa>P 1 >hھ K:/bE7.0-k?or d@S].@@6Ssc]*Rcr1y.ӄՏ6h" %ZCt \nF C1㾘"E+I2<`*#FΚ߲?-n0-XpnJ[Zb$0FuC"CfI1<tȱrCU±`'a5k!I ;:&#`fN>+%SŤd#x3 ^KrO^L ۀX!k,2$qRCimw-ICCMF~Շu#5pJ5O>@N,Y ~l,-"Nu>1kȸB.CF9 ߳8\fsl ,.Ma$p>re\07";3%8 qɲ뭰lۗ܃%)[&A u)y74F`PG5Sˆ63?=otُ; /JA٣o|Wvz93.K-#} vz\r}z"fV f2~ z-n;"9v-Mpf"(/;-l%DI!Ӑ% u͂ődS1Zv88ӁMBk*g&h+ж`gzIa̭FSxGIPKS̺ %ԉ9[eGfO)HĞz%lA QS%t,daAJ?ȮÄeQxϒmXA4n>_<P/ 1kmqIICr{ڣCD=Xif:q]`?ys*#Ŷ-oI)D)Hǎ:~ l/Lv @ rl _;V$는?pc}ScV`(PƴgFSɗ/CokTUVWRzcU:_-q d.\;yMGH3 LmnTNSgt\F`2+y74䐺!*? 31Jj3Uhd*G3Xu>9&07/}p8S\kLjY?*q^ ӍJ@! i޺׈C:ifTz8U0PoF1mCׂglDG9bǶBU+Gً߷ޚШ|%=Iڗ:" nB!L?4Y3'*QP*gПF7u'̀\<)Iޡ#VXLNDVͲ0Z[ڲO;H>,8)ƽ@ܐG9Țu6G*N!GVI92OĥbDSjzBo+=7bWbq~wc ir gA:[u5J ØdtPB</\qd:2 >\ hEIPESko{V&'ED( է)1~my\EL!5>rkm9'\<ьL+kNcu?UO~|fwy(ut|ms{wc8B3ݖ+N3C9XsW$|;^FCǏr/@DZg{\iΫH2B/*DG]o+w Uy|rLAuP3jȐ*qqv'ҖM9*_Vjd1~FLՐB9Z85w1!Ԅ[)}ݲSUv!K~mIA.xP@&3cȠwh2(P9z=}OBF>^'.!SdJl8{w(Y!<ʦLasc _]R%1b)_N<yZSs9|))Oҗ axC&LFYG2H$A$;˥MwkJ*\eߨŃJM&*yHlM)@\QGFvUG۩JҼ?tk<ޅZ&w?MyD LO& T.bH `~U,jkdy]e1WV#lCڊyP_w6ص6=ZR)-*DI&VH;*>/梦YεpwO-l9Ll<{\Y̡[U'摣 vszNFW[HK:8_zivzPe]9V®%7:7E*uÊYc rc ;bk˦"pxNBlNfu>"c녢=$aÅ|:ͤr?0Tɰfz鄥_+©\uY\WrL36$Doӻk΋Ld7:/߉NCɕURU#Mt~jS Og{tY!] <#HWUہq¨&/FYHM+Db};l^~wpIE:>"BtZIQ'03#Aт?Nv:]wZL_h*x 1l|{4gE m} "~HwZw}$Ӌ#`nE\0p520;$'Y ͜A[Sun o';sa"pݗNV}V:7]cBc B)$A8%Y(ܙTn-Mk\{k)e+m#㔽ڜESb*x9i_ϔddaiE^pDhڬUw0cw<)zso軎l_ J|~׏ 0au_<双ʭw&DmUěǬjcTW Ėo ZP!ٝeBI9f|A`TlIↃЙ\n5-|Ǿ^ L۩ECfp`)9R(նǫ4@Ù\J搔Eyk%>vO"rgT?Z3!̍<*}GX#%4d+՘ ]"'o^5s,"xR='+U-PuCxGtK0Ҷ|a69С7hE W8vdod qt؎פt46a6%liY,k}DH7dr˙E"xk$X*sX@$3_?QX$&rQHUq\Fũ"%ӂ!̹(cmGi`Ѿ_iR!O¤RPto)u1ܘo]a ۀ85Rg@~tHsRLrQ @l4>Am@[cP梳|cAt3anՄ>DQAjKv) \V龇byR|Bm?0k 0;SH,:x'-iSB +}e>zEow5k\:8.Y 4qYp&Mp)p  ODS<#~.jU K5fn\A\Qe0tvm6c靔GY^VfFc^{dJgҭ?ɰL뮠I/6>ߓmTYb3>8CL"e R!?~&5xKf Rqqpn,4j`ELԃ|{^"6P;'@{ ɗi쓩( b .ob;tG`3w g;k8'_{h2KhM౏?>1l"Sa*>\¥a. ϨxqNJ~S!׾~BKWWt#vr #E_lKrq涨%`zX?1"~jZQ\oppSi[?$sI KD5w 4Gi)8egk+[2Ռ5)UAv20,rIݘS,Dȼ2Q*k;E>k m+OLjGxEf u -Gv|^5K;~mRV|<--7Z#W= Or/6CB8I.#;t ^Cߌвk~K@_^sju&F>}YGCdV_fEdn ËHbo㥎[ C `Si@M$k- 1 AGD\^S齷9ppDYPu29JqT %W+3fs7c],OIݸTOʽ-͚^$Sx;(v_ ^~ojEs{6-?%JM'b"TFb-"{:iVX4d3) +f %zSL41E4 2(np4bwFo)t`"X-`SJ }C0t 6fE2Wr@_.UeDw$iLRI>n2sٟ瘱AWR滤kd?)fk㵠ԽoĚTӿvڳV4S`N2=4B1*Uڮނ#Ӎ`Tw 0~jEB#{LSQ|E~2ʮ*h~᪢ x "&Ai?T-iyB\^¶% 1=f8 w u-l^-Bw ?YY|:kn -)D_ʲɃ v*fN`Q5= LsPOȽKN٣>ߴhxƑ'8sI`+Uaօ68_ ٣=_$࿌&:R*kˣ?-@ʷXC7ԐJLEpr)QTǺߣklew;-44 BV1Ari c/, 'AAi{LΎxVXX`Gݚt0PwMWZkˢ,FCWF}=Ac|, Ⱥ='^l$*B,vv|1~է{Zr~F8`:q~= fWKGv{J5Cƨm/ zZWZCfl.M]گ^]:~@qinW%[;*\`dIX %2;Ҹ.o >ɑd|,j_jJ|XUƌi9S$(C"`\5@? %+ pѽt-dv&[9o}!};MNFn[I+QHR+g AHR!Td A 1ɛ.ELn ]FS"[x16: 5AzMnd̄kZolά <%%q#Od,7 z鏥7oHab̴bS9DKCE.GʰEA0 <=DɁH0;8&^e)XMRQ ( l1*mM[arPġ[t',܎}&Ց)Wo#0 A6ݯ=^]w> qO>YH%hap{|MDJOjVW@!)pub۫b,ֱ ȟMlOOeCI!X:b]6z j[R]GDmÙD?PCڇ_TevdAZv~E֟a9A"Mjy6{ 0&qHEm{?֔l\NĪ H&,cK}^`w/"Q{;_X"O_(qe9]|3S lHτ63QzSZY.TJ%(UЮrf#q?/| gFGp7E_F_q4ٷ1n1d>ЯLp[6MP<_B]h\IBZeqkEȃA: ܰV{:Kdäa|vme że9M 2]kV)E/fg &fG.; q =9rPB&^/(^&'% Kl5`5LS_"y< R448'q5~giܫ|[¶P|b&2 @]t4)&ihI4hMEHdf!PyO_>v D'&dAqi`~TB A6D ES~hr[fn gw;cLe!r cQC!#NKHzj *G\]d]ހpD*n!2$C@"x)k]T[}ڈM7B޻B?y-*whb LA_-07+ZØYb-tܼ, RJePMz{ڋ^y@;{BM=xP}#LW@!*[]n<\$dmPAPtdHD%&Oޗ '_O+D[Ϧ6x7o*BD(Dֶl)Zzk-L[%!-(P_ϣZ=b$S& {:7M#3Ioer+VZH ь:ϒ+>7jo&e1}Z9Ged omQJ/,2]t'H U07/7ws :Ziy{LLhn깰Ĵʘ`d>,#<)楈dzc簄G?h_W mz 84k~'}DZ ",o=.YR|q 8z&0_R.&e=&=`0+֪x`a!EP KyTѴU TtsW N(' 8phP$g؎껳f-JH8|o19+8)O F|MH ûmϑ0 DݮU*/wkGR6Gif?v|>赒59D{DS .|1dQ)j?T#t:K(M 9e]!L&vr=dhI-mB P}EF:Nj.*g#EB|Gqps]\  G%@kPCTm7>,V8z&X.]"KQ/Tub !xyzFSԀm 9e:w%Rٜ!å9Q.ZR?\T./G Ikh'LM(~g.I{-UtR0UidS>Cl y :e#((}2ݸX1 銜)3@)W6E}N/@3+#()23NbuG,|zs1Ve#1dw6vnsA5W5QBL8cA$9|,6v*gD0{ޝ>KtMyu} ^*r]HLC[iH0+h{UNSj0})г[ L33+Trd _V&Oy޹Y*gM $gA֔][8$,#g%.7uyzXw 3"V0a|Ȣ89 @0a} sӜTCBۨ[k E=]J*p2qT1i?J̢:i Ya{onz Խq\#gtXfM0 ӕ7c.Xd,/@'K{ +=R4$جb%mkQ },IKW51}{ %3(`Tm]+GCTB}nFVy騎\Ӆc O zds}n|g3!e^yҵB͏pugl=7/b**v8 ;oOadXRSR4\ZcVW(g/!"_أ~gidʣqEh1ϥ&},r-I-9摵z^ KM؏b=RˣXIH Z,ӳfK2@]:Ŏ#g> ﵏}C9YNNMlա+;E~6a*GSVڐ=󙎪~?n<;+hK璟G;6(x{7/`B0AFشǝ;~%I|GO;;EIkao!ֵTn5ZJW+|i- of45^|"Ű#?J Z)msHKU"Ǹj M/= Nh9jbvH$@Jg!C!,vg xXeqf6Nң1z?R ÃX:l efD/HI!T0˼J=s9X/o 1~6kz.GWhE'xr0K]HvX/,?9Aw|jdWժ+Z=ywD:E?Lt==w~--&bYEacC8,86x`}Lϛ)O8LQ^u~"eImLZ 2TFɰpWXQs)igOϼVs cgJ|YluP5 4d' V^ pULym uSOp |g!zpHŏe8esf P߆tW/g|#  %1ׅ« i_! ,i&屮141tMrtw5ٹ%} 77勃ZPL([#EſUVDk^fpiq]iPA\)V6tho |*Cj_w&N+ct݄[ܻ8v|/O=~ h'>n ŕ^eTxkLt1 s\j?0 I( @X:GO 5z. A5-}1~oQ8Q ֣`6]=,?D3^Hyr{0pV=25v) .ʎߜ񛪁w!h{ }ap䱎hqFAAolP?|J`:.pk^ &F`߿+S 9XW `bz)yV锛8ˮꌺm"a,E2$n /Arx&hKVFWAN WO{< h(t͡c!>Pb Z-jCjZ~*R%N3t<zD͋&`=Nng '[@4QP0".W:ҕ-K04j8?Gߩw0+5t7e8{˫@"|.7~cK\ FZsk?5nU5H3Ls[5Nfp4$W6 @$ػߢW 5Y3_J!kbI,jJ.gqFw1n}w_fQOrِQ"gH- \@Xג۶~x1D Dʗ' 2=NDGΚ]Zo6k} Lo5l8q% {Maod<\:Xu[H{"{atjENU.[^Hx!6=`c aA6)ID gU8vKcbuk@;׌6G-/g&Qi#.TQP/'{s-~Ă*^k'1#Ҝ#x$*G>)Y}`3X=X}WH=xI%u"DB@sAs5.lA@,-l3* 2ֶ*CSt]|˦G8<6a[iQ)(N'IἶM)yצ`PچE\jeѫ3)9;709LU;ޕ)̕t˔J<Њy̍V";''=;{:#;KiXτ0_W e$S+<_k"tsR֣N4cUJiv(B%aqf!ZJ)El%7:y ^~ +U?wvqHR,c)v>gdЀ|Z;I*NvdQ`-Mٜv>0Y!hѣ)Bteҧl:A8co[Ԋ򲺣Gf#ռ9 tl¦PKLbD#lrCoGsJvp ynݐ_ A)*^I ֵU35 X{2Y㨋༵H:ԫEVe"WKl2wߕ jjKTJtV;ܿ)Qh#{5mnI8I$x6l3FD^Qj9K 5f:ٽH,Ԟm5_# f-îgYWgH{[c9`D{ͳ_dqy{supd74Bg# Sq2cAC-w J\j^  ̓ `9PAP <,gS5$mG|z&qEf9-K_=mm-;LY&㉯@K&>fhv/[5qt_jkwZq-qSux-x tj)&c#$v~_ȥ_jʫ;rk's/'fE:#L>>+Q҂ѹV=o7$y|FMg}Q&jOX5~nYӧu%V|ͯ39tUA5%G.'w'm,-N%,Y1[ﵸhG%~H=v*f>dN={ꨋs܅qpg'\P9J|I svNFJE*ѝZ {> vۓ4wZp# P mɵPi|CEiˣ߮}b-W XΜaB>A_ȓn'4`;FCnaic t}& Ig3>suȋ]]X0k3J*ӳU h\Ճ1P.#.cˌ]G, _A(=8'U_Uf3.pKުy~cCagWo{n4H&i+6T{҂ $Rf:lrϕ/ R13G/E [ PIDq!Ifa2M+&D<)K7Sc/UP]N"D^l%(a'7?uOTa׎6K ?6e +8/}nKĨX#O> D27J?C+{v*&/sBIiUE\A:Δj|<>[}/xA uA0]!GL(@}Njc WAlD*i*N/mg ~.ӰB,{ ,g: xwyy7ݭH{aL#j28Ȍ0Qm~+,x k//vo)xt  ;%ѳjgeY-=j|nKh{57`Arc/t#l) o25W"@k IZF9gX< 71IfV) OWb 7*C 4a,=!md!4"P, x\ _pP+"oh" II_go`9h[`6PƀC5}˕Q%rUD ]U45,:kspUp%-o%!vV *bd'Uj<-2"AKYLI@P124_Uȁi= {ai:cA<ԴHQ]Ho\u`f`雵Nlkrc%91S&"!6& "i>ދ ()[Pi x=z3ɠ)N]㻣8p%RZVG*ffsFCnPBV 1"b xQ`} [,[/Vglϋ>RXwžRO_XWn(8Qp_VʱXa3J%H/Ɏj8Ĕ؆4ءQ|d_+Ֆ.x1U: ט @~௾SzrThg}sbqSFETEj>y)eRbl+-4,Rտ cԬ:|cvbҊ2Sv0Go¬{+A^FG |N.>~W71f$U+0G|樻;u% %PRZ"2 ./<:B6z]@R3 0U\ .Tux) fusk*|'C+ǮjW\RޚA-0${nQ*}:y Ebne8]rswJ;Oٗ6#]Z/!UB\%o/.cmSdjJi>ڔhZr6C8ƹۑĶ%}Ė8럶c ]=m盚2~u?NPNF%%֙.u(GȾ/$To9I?iĢL`o:^CayrTr!5x,Pz4NY }@WDEc.>ZB.jOf|%O)Yj'&i-SCE]g 7d'E2N(1wTo;ɘ GRRrnkTݎc?$]DcPV#y\Ax4n7GY!QT Mm#ne~+`8ŕS(zJ!U8LDOWgY% 9 !rɊ8x%^SJ# OdRw准.{*?>qqmޚ`͢*27odmKcoUiV$$cwhWÏWq\Qcsis6)8Hg0|[z&0hO `$ @3kj.,LAHGcp 6sH}BͶ7Sp]f5mozgEAf'WT#ɓ().c9bN-)c߿$LͻR}. %UPltm.o ׎ 84؂O{S{οBW2cec8u:jpϪXFU|S}-3ۂBUS>_t=5K ,_Bzۗoi#:X0>V}@F%k8-2h9%ua2)%T[*g1f7ZA=oP KFؙoKpr[}VSAN6N2&ZvZYgTCnQzВWhD,6r,+u) ބзB6N{[ ,D:U[Aooe6sI7?aW^6]o]?;(Ev[4b`ޠS>0d؋ bKJ׾deAH6`AMT&FznqpFer ̻fQ'ݥT?ˊDX&d:P<$X1^^x{<Fd1fMw[+1xu Z2hvݙ>u䤼M>@QY@ 7ڬӏ}VPE.]Je'bi3kZX H-^F1瞒T #} MOd.{֪uϫj3a9b0qS3tɵv&ERhx:13 pks̚$[=Y?*307нѷCJD cQWG =®Kx@>ᱯ>}e'5}4]c~Y:SqH\m4-sK;egw?Urפ gNF|tټq9S.c,E=%a%/mP$rĘe ^3' $ ?Y1T gO\X]1ju,:`aQ5¾2k(\ugC[8XV!b w2#btWOm`BS9Tdߴ*g=tmzkIM[7PvG͖aM)g-`>ߨU& aKNm/R1g4r|_3lN*q;ԟ˱{Tti|ȎڪE\REJ4e_! l ^FHh#ɼA~^4u`xs5]|2¯C7:_,OwiY)=K:W?K"q@fBs^o21EPBItx"(_s%݊3s.PQ/\E/ 4Nр P^3, ?,;-KH6S&T.t&ٗt47$hÈk`beLSOsG`x"yUq-/KZƗ OaSD֤!^@ᨸn>G@23*y"v.JJ"bzY+HDn<\UÈ~);+mJo|sfX<: 8%N`B04X?G 'gѮ}TE#Q4 {b\ᓯhU]L:P,t>YuJIE?AK`M'(,{*˽َ:8&$w#$,ͫ'qA Ke`&ȗH]P'(ފgxE{7W%VC?-<~v ?ȽVZ4Nb̺4i<,{*Ao'bTZ j0uԿTϧ$FGw#y4$6Ro.6GX}#UKFrC쒽 (ۛE؜H|MNj6vɗO|W WgMl*2MRt!Tij=S)3ZzSMa)PZm1 &E?\ȩM`tj㇟/WOGG \~v"=|MvyE`19c*]-BD`֫׺ܵ3> ÎK55&aTյ68Ir\ W6&5}ye.3|!YVZKꕚOTS]塘q+\ęHtZ{c8멙H>u.T# ri#JM_Czh%‡yEw&-Ўt2Q.%@caѫRL<*;*.5rՃe]ޮ "a6Y'ՒSd_养"SIp*,Wged\qrG*TEG`5w P ;FvI[ ,z_l`3V5CID)ДG0ǔj[:ñώOVh-WWKq~_VPgD; l)eߵ75o4ƃ*7nhog00#%|V兛sƶT.j2)g,rC2(cgJLV9Rأ䟻tU O΋X):by81A[\HSGzz=:|Wm$+m佖ƕ> 6  0n2D3eEp[ pB":JExU3y(nFiₓi2DR~*iLU6%![0v&Vs)˘U&p0ẽo[G MUZcE%zv5o Nܫ"X ^KU!Eu28pb`:RG-qS)ڛJO3ny،20a ",&h:HquS?{@ꨉH$z ;ήJ#-K.P#Yӑ޾'/h̡m11)e1 wy [nzl riM9CZYrC;+I t5ЛhSBG~U 8wG1,Ts>r ̙)kr-(p|8:5п޷+Îa`3l0*KzZJ\kJ/؞npYBYԤKRF30yāK}@# r%h.fv6l i$RX"E#)a$̐%&7Y㡑DIۿs7H!2/;,J+Ih# EǢpAMgX2ScĈ\%kF%/ f%^J!r!~zgns+]^$]>{\Az ߋl&g}L4rn1_ y/΃Zv#x< Lȷ} aԜ곬1^0œZXcNh·v 1d49jb|< 9@'p5'l״ I JpnX=y,Q1t(fx7g/1;6[7[BqR.%J`^؉v}ju2m1 K `QQNrX,+wQ8IU~U2* @/JC, xuaPh1Z!yҪc`@yKT%\JEd::޴!=xc ;*3xSwΐn Pkok0ag(Һt]~(iI[Ĕ1&W=)pk#TPF;-`Z3_)z϶E:#&Sk%Sv *1Amp\D]oAޮJ5l O KTA''+ d8Q"Xdg?1JiDF0kZd2NXs]v߿OUiCq.HZuY";ݴ۞^ѭRg"ëSd6zX+N%twhUv Ul^~LϨ_{`TDӟZY*RJWge gԈ 0Kh/!6K4r4LTmbAtp}rw41ȈV M(tRX4[I.!1%vH*ήkp.t)BNLWOgw҂j?Km!EKQrJMuΥ`Q4c  .(}ɎRLYNb+ͫC6\,"/ {*>Gz^KߨkOkGnhF)Lf> @DҧkNMX9fRE4$/r6ŞH ,*Z:}}ŜM計-ݣV1G,a]'dXX[꧿=+{&n-od-Tg$`bOXJ"k5@ݬl(%uJc\ bѢguk(p27y-ŰVzxz\<ׅmj8C ؄=ϢY=tv/2Ro?D4lՃW[ʩFyLo-_JWup#Ub+<<{.)ft f@d Z+KHmu'Z6[SQOq:D{.,L_~7%GNe1OƻP`gY~1P;%︚Qp.ˮFP+^RVda/y92g_(h S?j,Bڱ ~>ڬ{_Gc `W쨤6m[ J\A 2 U\&=ςKTRmC#u62txo+؋sBYh cF EbC)(C9<ՅWc|TEet bSۚ¡2_VhWMH|BN{uȨEjsRPoGiv_6)0GW\/LbQ̞p(Lq)t'eZ + 2o]6#<, d5twF2oWeƩ}W"Ԇ>.NX6͆>Tp|4\Y9tpݔ uJ}G8ׅ:5a4[{=u&ČֱxEh}کscndLܓ ;GvM{x7^jh2;Í Af1>lᦃ =vO_!c oArlVՇܭTKBᰱd1 %]8)ȃMUޮ"knYP) U$XkV0_B,E@f gxaP"^};w{e]kTYBZl✻p̑!]e\~F!=1z;Ƒ;##u@tAs}MЗ}\%=9c"k *!,NOe݄=hjMN BJIg }rs ݜ MPƿiaA7lf@zMXn, +u)T͡]5.eɵji>fc@:D8Q5B? gZ_Pr)ǠX5I'/{G{q,FhD>TIEXs.Pi8뮂h%PUq&bh2Q@s㉁ViejZ$(CTYʫuRvPxP:yS<\/,2VsqqBo/F.TCYG|0`v+֨@&*N+~68U@5;2uׄ>j\F{%8R+j [anMS)-=8s55'>-5aS4SOէ%Y 9oe~lr/ʻ"f(aܝ(7x4 UNaߢ^YbJʸt#ճe-^alݱ$~Y+p -襑 =jJK5[޺zb{zgߘ Z~[D^w%'-Қ %:D"AVH-,7)2X,R340h \?vr$f8M3ы~s \u@Ξ_vL(?;6v6P19#xas@8zKVOb:[SC5_=O0O;m1O{̜"P܎ l3t kJ>|_yϩt]&Kp-e: Y9Y8"a`NֵD'_j8񊂵NF~ڻ_a2NJk*EJ  ̏= <ÃKh9"]R [k|A ijM 2%I>CC77|lQ])|{yoY4Y*liG]HQTU56Xl j11A\g;|#{Y4ł?_ZcRKA/ga 2I(M H) w˜4-WVqWa{P`~jH= &}ր@{OG~Նt7ZYԵWDp'X&%ei0#?%#q9&>j5(~G9T=7ioNKl(9ͱ nj lg4O%ڟm [Ѕؠۦ/'s aiqO襤0jF{[[&7A2N> ~t+ߞůn00{`VW>ӌK|zhzoF41!ngE44S 0G .-oMHC%94d[[_uG%]{OM\eĚMڸ6(؟kw-xMC=|j-%O̮tEI> VXإAKVw4)[ ihm6q,l8O>ܚbj:u MUZ$dfM]ՐC0#̖8%UMFHet9IPj)rǫE J*c?EgJ)'FC=lk8͓mn |oKuK.y&r`wy; +b2kyp r,}E.BVT5fq\(4]ژ};a&/[|;쯖q`LK3ѳ$տdNfwӜsɩ) {X,,2#j?i[w9~f(`VDX&>.sHi=+Oq3Բ_+Mpp?:۸Db ht/ CsIh< b u>&zl8,(k)U`ʜF入xgNl^? G$[bjJX y&~w &́&uOTAwdशd/-mN{)CjA$s^2&8[8QXq43E|ǪwsQk[9T셆peD΍Kn <ƪ u׌ó!PgIM^sG־foWYTٿF"* _ܟ[ Ay8w狪 `\з4!'hWoa|+kp)ubݳg[4ihixxRgDzc6g{pzHx;1kv= 'ZT)c<~=HzOI)h/ҟyH􍇑OMtUq TΗye8@lO+J"q5-V=(͎W_AW$c!le3É$[ye1(z⨄y 1!6p b $rUNkR& KFeE d[w_&0$*قɴ*.e?*&4<=9k5}6#,mEkPـK Su;1G[0rӷ͉ zL>D'')ې=Eq5#n7"q,ML;Nn5O6o.3政!fnM/R,Fؖ0K/i;:;(A~!1 70 0  ' pU"FmQ >UuA؀L%_*P(T $jޚ>OgW'qiA`X7'mA0Ή<* XNj$4&XBkМغ;J/~?* P0;r]?^Hu?2'N;հO3ܿ#!zLW'J^.nJ@?f갃Lsp8PI}n$Q&WI?i=Z$tO]RF$8sI6+I&ug}<_,{忻ަ*Txt#gv |FiD&Nzqr0NTe1$;z3Jqz|I[:g[ l± }>BhBk}/^-޾ rv O = }x<ƘN!"yVY7ߠ?kʯw=Pd#g%<Iؿ=h5R:4߷`;HBt¾T159q9fWԎHljpp/v#oҎMCTj-EAS$(mbbL(wF&?9}V{ sA LRWE}҅a‹m7p陖~l22r%fPA^侓4ϙ^Q,6nȏaeaVvWO%.wy]30Ue##SRnd"8jvr2 YD9&Œw+7ׄBA$qIKc V>dmԥ2uo*23dII(s-2\8+'g0'.߫@niU7g? Oڞ{Z.1>+hctiGD\tmOn\piuvy(_Ǵ 41¹XVMGLK.]]/9|Ӟ c]*gRDAڱVt~i A=g?tk~-]Zen^,]03Պn"O&vf*Ëdmkfv+M%PZ]qbE@w'&iL*_: #.9Etmuc]Ǔ!XRb~ssn*1?&1ޤepo>(. l =Yyȇp%K_ðcv[Cz v >>5ib.41Y.QLtլʬ:A51Rq#_gmS}5ӂ~rT5{KYI֐!܊*n[1O? ,:'pm_ XںO-\* ?*Jgcds\Lby\< gJ>@\Ie w{0o0uOxvvKXTr͒Ѹy 8s$װE;i=mFwϛnG>%Dn(2zHAY$]۞D\{Ѫmw[o$ ΦZ%q8$HɅ{ g`LѢ; jYƢ8XW5}♅ϹQRFAV9 gS&{!sq&ۍ+eD(rvиd1&`nKk'hӚu vK+3$OҫRm 4⿬eB;=R1 HR.$`)"n.XxKm"/dK)E%Ǫ[{^wa~/tOAwO4{+S5OZyt f\'zZ5œb}9>M^w3лh-!5ȂC=ҟ{-iKGn̥\eM."W(x(Y I'-MDf8CpV;۝R=s:Y?wᙀucp޻6+2ւsGz#fA1f j;E>cx6Fϣj\9c^qY`%R#{"HPz5;T(r$OīoX=w,½ey yt B] f)K'݇ߛEMWσ ]+[ihԯ^":Me{;y8/XHh=_7 hm\.tIS2ikK[*_G3 Ӟ\j x -z<\ bNT畝GzMqAql͠ƸsDO@ԜXfp;EɬZaGl4ZR@#Si`ށ%Q e*)=Yp0QD]Ǜf2RnX."0[ IԎeE'Gn XCF[riFr=לGXšM-pT@NX~X|<؄L:ٛXTDdFE,\oeM@$ Ն@z: ޣ;^;27m0(&2;leH)9hK>XO޾̸CrwpuLBGu@D}5Mp=CȏId0G:>`a*xuCfnf-)ZVCX0d=ThSQm "RZQ5:sZB8~ԲN5@7x3=`mfe[䥋N̅Ik-3u*/1%ōsAD4]=j]- ?3з Q=p=Fkcc[a g-| U _K57ͼٗ@!_UEEGej^٪D; 2'\&gEy2,N"  4I)3I %;VS*PY!5IbR=' Ǭhj&oE[nt%Eٙ.{.LAy :&?}"`BX㭢bwq[N;l7;4WBa0 9Q{ >2CqFUБ9k=^M-v%Tprm"n܎QPp>Ǧݸ"#V<\S~6 ƿARu|ÍVj`3ц#XM1(bqBI?f:A])W-!emo+?ϖ\nȗIg* !5, MxG'|>|TA׷y>e}a $x콣\֦ 'x@EQӊQ۳|L0[黵9S`W<8n4hJ5+͙4fc] kt:Op*pq0E_E;RR*?{ IݢlKy nAnqSbBsԫ~D֫FfG8*oQM]lzrKƛY*y >&fu^|!OԨaۿ妞$ʼYwc4 rK>c0JjD-poӁ]l&'pGJ5Rӓop?.'jGK$Ypni{rױ\2AA7yД#V2RG2 v"7fBNb Kf&(?F0Z4 '!8*kνÌE@wFu*{MGs$#~Zqtj@vOVJޥvG3<Pg .cNЕ?$a3iJqW.{#3Sw=*/xIsF d7Q08{&QsM6hǨйoL7CiǸE)ި#HbX^ͦ~{0"WvB(q M/t"x ="w9Ӻ$Q|33Qț8妦ޜMumX*WW,$i;a/kl"F/Dnv:376p 3KZ7Wg!ݟ7KkavCm䃤uiOT({~|%QaDm[,oABOT (p[H@*oy.' \4q`kX )1_x{:=2Fc{%QE5R#^;BL$̉0x4`ꖍ@" q dq>&"mWY{W&喖GN ;Ԋ2 48Jq9iFBܕt{1uo(aCJ)L/WS.3MeniS{_/;:ģ1`eDp$I8iRɆ ț$=aiiHB2 Oe_CCjybP:'22I)a6.IF3Vau Z,l{=Pvf :۫ka S_ Q %.͑pmA]۵1'?*TWkx ؂(x{C:>׾`ڄ700$]k]L6!3UhRCy|ZQ1kFҹGsofv`]O1ڒX=0P6UmSjLqN ք u 'DWM[xM>yq9<2B[҃(4L[%fY2%>]2=E\Imz@cnj@y:9yow-2$Ek+N9 vku1QfkJְz/cnrB!e@o_d~q9:z\N},f3LO⾚kHI}# rT;~c2x zEi+` F2GĊ7s*?1;k.?D?irn5b6Q'X܄=H */e:m ZqGΧxp!dԕ-;)n8rLY|nc/Lݔ#l¿#k5oWlY-9]);F4~Qqn O[8d?1#"0fPUkFd.!c4fm8.Wjeʟ! jߣG5 Ő%mu[3Deիj{*;j%G5mޝ?RD%]6J9BT{7TBCѡ@LpzyV #޼tyq"@8?:<w?Ӱ'.NѷfҒ9d kq^?ūZB\2VC|XuYO?lpDZk`/|1k `ƫ#(ed2\gy2֧Mt}60'uIw c|o5A.73{$}xjAŗlVEm Ie?eu[#& y3.x תѺqoYZ ZҖXQjm@Z^u3{Ж&ؿqYtEaJ``3L-iTғ )| g3(:"vXgCgD)%OP   m]ת:yhRONXz$&0O.8~~6xDÇ\ϔ6(cD!X|ķ-\u0s"=ܜy!j鋗t6=# LϾ0˥'uگX 1*:׈$y OXA a90fYWmLȿ7 -J ;Z94B"aMʬ8eйd-LNHBOS⨰s\eIqo?ۉ+bW[3Iw2\iOY7! E /M{;2]Jf6K%#hYkM6M` (ʪ*hbURTLĐk7/0||H,R'n_*9~~[#ndL {^C+8'v^P ` I*1f%b~c^߆5;G;MoZl/eFgO_/UNBMaGũhxgمj1z4ʈW.b.V4[_^{ |EsK(C~sR']ї{N=9 ?g@3;YI5ϖ"ː08~g[$wT7EDșG3tR>Qze1ί8Qc ?N=ϋ-0໣#i) =\eP;fgU$b /ւ{"ose%,H?D5j}][[ǖiۡ^ dFP-Zgk%?w0Е>F1HAtkMܒ?>uª2Ћi_!Xȋr\u~z@z?P\>7k1R.<N@lPAB/z)Zj73?5W/[ rga$~Uw=EyiЗ[(D^&UfIM[Rv-dKv` L%rEͫGv>ZP)9كs.lr\'Pnl7 o|fy-0$tB: W`jʳSoGYExpW9jDY1UlN >E"750]>y/ y5yOO̩0DMy%]z/:\Y)|ڭba}ɀ1\/ch y dvXX+* ]D1#l}8|CkF >P[0欙R>ʸ{) {|(N$"$Ruד( ؗnM= ps0w^}nf`W SsT7c|%jl)\7QKS@tE27-HѐZd'!DB2&Aj O (§6"4n5 : X[O?5(sYRT3be,j Nn0.6!\ψM}w7"VNħh8{:n(4ﰄ%حay}LZ 9;ِ?TJTYfJby]-gVn~9tӣj-T l ]XW*C 3*IGզڂ`:_,rg"7{`>E/AQ"υN22*א8JUW'sd%fV-G~ ڳv{ +8'm 3 0}.4hx Ns]/bR|U0j^H’@c6uؒCV爿%ތ?awAx{U1u.GL6{]S,d]b/4dzcys¦G ,v$]jj[{wک)w?K0HB8CUKI{Y FQ}v?!Y$DQu|1I8$dD*_\Co[M4k6I:v,#|dڷ=39Wiljf3ҽ#A0W X >nfLo-9 gȍH+~Scj@ExGQ}vTa g`+ !*i?s;2Q 6<˾7#y6I~v=]ٯgeGOyi;/pFcZYYyjJ̋Fr_,*i)vT1$+wHFHXr6u/-/R<)Rv#^-&ze[H]Wh`3韱$<DK~}nkyFY.< I3<ҁB^ zOm|a w88ELFxXDQⱾ2ϞHZq)/x6ZDIdaW}T"Y z1` zg9'Ohhi9m4/t'M Xa2AqГuwfxgK췒ZD6Lʨ6<| :Dr)/[vy;bT8BO7@ v#uա ,?@=Ƥ+v[w%~?Vbc1n0$mm4܌ދB۰18?}۳# 4bB^(0P0g}lA4eW\ϏFXp|P/ 3)LަSJȂU3ȏP{]ouwX'XM{rBvŮДoR`՞:.OZ*'zxR$c4eNpC)ƅ|s"mleLɃEfӛ.8>eڜ&x4zý/rDX};>߃1& XϽbX8*;Gm`ޚ[gԅ8Me'{l|:|ji:3kؠp F ]5Xt* q&ZsNv9@]A 0|cI6NP8†)F6veZMbD1`]e8?][>!ϥVw `MU^wo >}hTCӐw^"$ݴ@@i( @CAN U5xeq!$k,]yvZ[cpFm\qOə/q+i(I@Οs9/ >E&M8ŢEٸ9o)DǤN!6%K%Ac'ǫER#Ϛ2Ufa,Z/9^ KcuA@V<*hyQޥ|iʭ֝m'u5#9Qсb22C\5m<|lE;Y<HJz/P!&4c4V_LIgXu+fq0a9Xmpz-.l}Q>zHU}|󀱪 },-L}` #BZR$ 43r^;S/ݙx,1fM-X0.~L-WX# At,Ͻ5S5ެ"!)fp,nhg ;\!tX!}ֽVÝf˻s jF5HFܿsJ#ڗ?k^)13[N!)j8wEIߑMf VqESgvlÏԍWi'k&1AX9z2IofxpܜPR:Kz'5{t:eO+=EU-ɽ H7b __@`y3R}Y,K +:K.z}CИa.ZLtoj&tm2㎷]sHȆ sudیS<_J?rI@Լ+Xˁ[*hH*K'6vZ4BC"2uyྉRWCމT* kZ|4wJ"%ehiX8GIs6{=\)PàdMDN=m,~,- z`R@(ikbʃ[p_1(YQ٦xƗE-ͩ*De: : l*f%TJ:N=HC7So*Z%%J4?vTS%L%+¸Sy,b6]R񑥜DŽZx8C:h`l_نG ^1:c.]i(P,J)kX2PV 0{PYf.KC}kV䬾±3W հiwI aǟzֱ?uˆǖ"&\9;h8N } d61Ь=cL"I %VM+AjBzEA]As\ HLNk;k>fL֥)Z8H<0az6J7x\1a0״ [ARi}D!m&5Rp0m--`JaGt˾ht;\v<Ȁ tVu[`0yC5z|2@2DoGZi}urlE XrnBgly/g?36gq) p,BhÀIvqRE3oz`PpXAg[->WKx 4\fl\]8˼$}(jKRHhD }7X1_+C@\L GPf M*nE:Dn>FP]l&FO)Lt$Ju(k2K>n%'G,Cj'ʀ P`#0QQJzA"#m}3"e]@Iդ,@*@1~jz9Y[\lI% ah/~Sm% ]E%YÒ(mYPH#hL:\aQƃړc+S{,1G.d `~,{23%X#촞noiiBOĎcfHCaSr~"ֲuR;,+3ٴ͉H <® +q Aif ٳ!SbWI{D.5C1ωipv7x&H*٦(l;x$w-nR#rCf`2O*i=4oJR(<6%nC+H#qX>(>KH=*%JTO׍bQ.iE+b(`iEó\_bKo:mExb;)o? be%Vb@!yv Si'=C[%q2bE`J G3=ވZkxnx˞= $Ȑ)$N _.Υ8'yu@cFE'%. ̡yS*2A S;fThYQ#'nX#>\,-+ǚSs7^e{ґvs*A,yH<>f009WfGZ79eS~$Fq噍Dòg dOVࠚtp3"ԗuqL@fH+)4%REa*>vw@MvȠ32!u&PJh"e԰GEv=~ 1Qw܀Ey$N}A Z˱>tb d67 %R`['E0l1Ycj@ Pzz$%AJ.8a',:V+ύGC`r4 >o]Op[zc`R-uEss3IlLi &TR,1aJ"RBCh9R/BN&wXV b B|31V AVilk$\o@ȐfP; A8kؔ5{[eBM#ܥ+ˇl?7\X-L JYft'-qpL/hYfba#,ӯbe=]wZ?k$R:B_\XF&1G+ ϐ@uZٳV=+?I,@ ၬY #}5 *hО׆'<7N`J^1HؘE{TUaI.(Ks> щ ;i> +gw^nSvx_Hw|zM6#-[ySxʽ?=KiJf`G[aC]6 ir,{EHe% l?^A)~;0nAr!@&#8h?~Rs1PqDi!2 $ (T?%D]("yE+B6CT*c+̈́)|Br8삖h+ ܮ)ܪ q]E滍GB;z kL I$(%@/iNw@;⼋ nrY9pp"= -DWo܅7]ݶZ|.D$U(10 {yAcPa﫻w8I^Oܦzpea}N됫lQ 2&UX -ycU /o56%_!@b][>z:ozI,<5+Y:ί/oi/;\9Ђ 6BJV^<'Up÷s,Њf':FN`^ Pg('qsaҏ((zʲ3ˤa6*|m}ᵍܸv / l.B&zdzkcBSU J.9 P }I6OR! A9C髬_l/dM% `vgNj 4 6j+KN D Cw(U6Nm!rbD3pꉯ¬vo*n#J<%öO{=s@c׭FPݯhS+xScJɥXiO;cU|#f ôziOvt/pn(٤POhS*I 3o$"FYa"@%)nM sF/]ޯ@O-cߵ s-;Sq&WG6%=ftY%O.i."Ц9Ezw[V﫱1M-R(愞*҉=w&+w ${]Df]Zk64%GŠWHx[3H&U81޳=bU˰=Y ~@We*]K{nT%?:AgK qR#PmRF-c1׋$$.ʼ7{+]I0)x"2Sy̥HN4z]P^8`0P^wϘ|(%׹RG wxNMIauv~4Zx.3WKGFLɝ]rN%MEE泫A:?qT2䉾W }5*ڎ\ìFb*#xxo10΢$L v3$| &Rf_(eCG&nwCUү52GJI`n5a2/8xF c[昣MNyG"S6^Z?Sf;79eB:Bĕ6-OS3*w8RZw _qQMV8 ֹtD=zB%um2UBI~ڑyZ}=h)[`bԣՂ|u+/{'@zCWzI;a0M 4W^|t:C#IJK}jdi &XiFhwIG;zsCAHiZq+-r¬cƆ% 5MKث69ikQ g9r_Z_D^mHڬN)d`]m;Mt\h/UiU878Uq=(kȄj>d|q?F(YSN+'$*׍ۍ  ~=Άp8YX*J_e7/L)F(zWZ~j&\R?ɡz>!8s nyQ1M*,{aZE7[b޽1\I_-h;vCI:cc:o6u#tVr PUShK0L̶g "̜>j kR_t9fk,~ sVl։q5"-断-wbtmP!{ЕHdNR6 *eAQu PE Fس 8: |y?Ji~<q1I&E2r+qʜ⸧ DUL\Gv(wjG>kW+NJ{#sT#f%W_ӮAZ)q^?!@~U R;L4'7B'ٯ,_+$cJQ,2xl4鬁 I%3')]nujk!~nFw߳=2y$ţMK9Qgӵ|~w*x͒:Icp]JsN9/˚Kudl`eUIni\de7u}hėTcYEKH{ű_ðTCirr~mR/x |@ȶ,m#drMKEkvo)2jAsoco7$>"{Mϛ=XF t7Bo4 *6Rk $Ō:Jwxq'Y"7s{fXnr*ߕL,R.ى앖+^]Ĥӽu|QfW3-#枠A9:Yl7Gz$iwlwU.$5'G5t/2ͤF vJ{Cm z}3\MwЖH3UKކfHG]Y1dfh|53q5/eH Ӝ|2sefp5ʑe~R{:=܉ 'K:J5w3Yy6ht@&5θO~7m5Kddq DүͯNcƂp0Mrρ}cmly! ?У|۲m޷?ʺͷSgiVr\-cv9Ci6Gބ8/N)u34~T{sfI|)MՖVGMGcxT道y,JI6`XVuyֹNn@X`8ܞn=i)k!0uɿk__ekiߟS\__Q!# 1 M|[9t͹(bG!`SUBMzdjëX݅@pRjHG祽"vTLF9&QNP#4x>av/js@%b|`O>f$q#߆ Necoԃ = x4c@vY;>Drh`Kު|ܩ>/| #(V]??ʣ=a/~YK 75 q@cNTb.ea{/3f<\EM/c&uk0]u#EGiyA&-}?w8+̚?0r#m̿;BA:|++FRćE),+ܨj:Ih%ZWt![_/H}gd߭׎fp*T>IϏZAXˌG zP#ZӰcHv:3ztu$2@gLz+)̝v|՟lj>#aNl 6<ffݛ~,lhZkwm\AMХSM c3YXxbCP^Fdt^\bk)O9P@+@2q~E;_Nj p4tFt7rpu<R#p3'+1}kx1!D7,![@ClƎۋQnϞWʱjoz'|c߰il`ޜd!1!r>uG"#}9Ig*gBfbR 3V%g(?eV?pgRzmvԄe;U6.x&hʋ3E־'s}\ea9l|B UۛcSTO|e)v[Z|"Zx2#:A Mq KႱߢsK"uj5_ X[^Ay #p9sZa׺_4&PdOR.fWsP#_ ,{HE"ԻY"8ȽA5 h>_%")/Tt)4 C ~)J2D`#KY:+ 1R1,OeeJ+/uҒRmr!-Ox N/]یJ|Ч""v~`{|-)*j"ts@u7@w 7K_53jDQg>n6Nf\k*`n6p8y;mŔOQ[\z\!RcՄ$2,+'Qxiqr%䮈(9/Po&:+ko.p]N<3!,̀1˨䯤_β_c!Z*eUo[UGŚZ"7qRզ`Di2Cm4UTw|A$ʻ;X> 5e[#0܆\xgk۪}O rv{IW8߸`DF;Arfaw<6S򾆭>[L!Wqs-5s[^DsL8U=~cSC`|H|:4bj0y关lAP8B`3`jUzER]Q}w)4#|]Ay3'CZL:{?64"fP|JAyAH:}G!"osV6DG@AE@NBZ2ONx&ʀx{ XNCnDkEiO$ŨoDZrq2#D,w_|R^y;ǻqRUb)t4? 7:͞:p\Z7HU~f~Db<YZ@p+{֓uE%8 [ϗMW~_7zؚX^MEaaD$ ofXmn)WPm?_PExdȺgGa^J"z42 ])M\ŒZݭU/iP\<|尟*Μ0y7oAq~,X.Y7տOe`97x`?("Л#92>a o<ҌۗEz t򞟦sxC]2#d&Qvp(؇¬r$=g%0!K#23}PDEܵ_bن~y+ adƹNchm s_":E&MУoV$64Zq&vxS&_0_tFa ᨻ&a I{Y)3t58>>K>߈B_k饿zqQLZDQ13E$:f-<ԽVCҿ('j?83mh#/HQu|>LPdAǹ٪$% [ 0)e&@-u Q mn,"?!e;<¼t|zQnqM#.ڹ<_++TjbԝyHr3nm[P3I_#b^#?MV8O۸ KUD$r<2[ϵT` ju'~ GL@p9']aRj:&73ݦVRr?~b%FvOrT19aV; 4!/8ҮK2?hHصL[gtRϱ rk\^eշ.س,Q0]6aL }KaY}` i^LrTq48cgTt:#^Ϻ2wwq* PJlNq1k6vuKx%_Q Ł0,p[GztDRX5! t\U-b'D]|bb\ik.$u.hg~۲/koa75UZ͞4%N_"6po˧4 ֫^ {` +cW˅3#4k Je$Bk&E m%?aw Kj! fzkn!+Y]z޵>Pm{'҆yV}.b!1s ."W#&/;{.jׁwS yOц%뻯[VA_ěkX*01fS.-z)U&H rSt>tC{,aFҺ=/ޘ9g#@b)Iz|Pv:$xR~z%rad@fX?CAWo=ɧ kG+LjfPJ.JLju6lZ{5%Lh*:97m"}1iBȣS7@'N\Uy56O~c@!f\+@gFP;gŷhT i& 裛|pi/t "k7Wc[0ejlhW}-\Wb'fQ :C5 Q>9h>Op4_e d Oi .FO)ӝ֭Q c4")g503/MkMnti2?(ݠ) dq ƛ^@cod`O 14x=53vXvy} դ_M{BhdIVM2`_>5S[f B<k"@ִc`zx}w+V4"{%;$Fcbjr,𙂁<]ePǫڵ9mZ7uQ=}"rY,&6d`U1OjoWހnVd#(a <;SR[~ @T8`n5רe9 mi~d2PB9}B.f:9Rs4'I@,Qެõ4}5imZf(geIiAV8GEyvlz݀F0ow O@f6ʷr˞2ok(ں%oc+C.¢ޥEN}׌W#h'0^g9T֫gRG[Y !h'c{v7\'f<^Y'cC0}^~a\dz/ "ǟܒ8FIVC}'y S6h{Q)uC_yMgL۞=%n %_%͊/k),i~f3({N̲4 "c11KFnWt%NAz?_eEn5yv[?.xr&uC '>#;ɯ3)nݞeoI <#_X?ɚ8ye<,C~'`3y c5mW9?s.01݊C&TCHq6aȜܸ٦B>nNebآݐ^y]49c}(+_;D_aŽyͅρ OrʂS?Mx,~X߱;|01>!1|R$n:ş\ !賏YXgNs{ .i-v?lŎiˆ_L T&%V`= MI5 MLž'@l!g;A!UvكE|CR-5νO{(T{1=ZCukMV.Ib\'O?:7.\)3":o/5o1X\gM,^5yFߔF0Mq)|I$l0o7X8r%^01NM&7VO:8aӦ$ެHD{pu--{p w;q" "%hy ZBA?Ɗƥ:y+U J&ZChlWe^NYK*WM@Bwj|M6=wp^~)D`3m^FCIMQ+quRk4DOVR v1!@A$c\[7 P>)$y_)l$*/1gwcP)g`,ӤFɒhJG,M^lݪXχK`Q#p"TsMY:QJIJ=!T='L6ї&56H-?~k0>ݩK!!W߇S'9 r?Sb3֭Z-!S[s?4YU ZAK]+wg؞oYb j6&V3 VW097{pF6JN_4ucpFYJxd"#i^+n^{`keϞq i+ pcny )*aāC*=y/0U7rX,X[;x7%';n0\F4Ŭ R G5^m 9Z>wS [yWVp@rC,9IgX2r^EKEBP*|UXdMe3e-.h,Mm[ @d10R">A'(7`%Hh4ye(Q-Q|fiS>sa RE z>:OG_>$e.R @L|0K\;i۶}uFjKCflwEsT- -230 %.C^ Ɉ^J֡wmqN]ꕬ7o^o%Ia$/hk;D6'S CMj@ɂӓA6b GVriTK9vWYaM H"0W/H6"7Q++{p3 >ڙ)3EuE$Њn!Kr"l6|:XД +HH*8k3JJ8&F>DzqӷbF$5k`iD>pބϩйB7灖4}nw͹y{\ѲNvZC܁-HOH3Fn;kH ]k妿oB@9j1+IM“ZK5)lGu/W^=P85` _.tY_lvѩ^GBE,fG{@Rf} C{(_P)`?evN\UY! !{T[s/جKxlxĶ@'AC_y BOed{exZn"D, R;mF.B܏|OȮFoLxеVdC rYV,WLCi v`9sTR0bZ5 9oj6&2Y*;n@ 0.VVnv)OL-2\;tl2<\FIeAt)mnmB2f=`6#=?#/[8l!EK \Nw9 QNcF^d(I=Pq|_?@4QAmY|TvsbgH'L|Lџ};G2JXj09/Rq+E9 l:awYdco1yTϬ* qeN'zHfL ${|Opq.ێ{RoϟAc]C֗N#i.쁾u)02G00xS:m_+e2  וjcyferӞ/*o$9n٤?mDB]WEUsҘV[')KeT—됶yݓN3m̋vT m7DMؘ #AP~.Fm ^^VwJ3sPHԥB E'J!c&lzBr]F˩pcz:R0YVw"@f*za#d۠*/-!JIvkA㵺![ⴾA_D 1R+{EjokiW@-f(6: Ŏ=ؿX TT-{xClRf( ӕչbYa!i:{2\M ~ϼ`.kҐD+$0)is,s:f1O- [$^w 3@&I&J;ؖHbȮ]1VD_muovӪu@|vE~zkR nN~ѲW ̢x\ oJ]Z{0\yIΞ@D_;CO<ȝ9z_:]QUZe2uq*@u;j] W||diGzg@^!VтW;pڗw`CmcA7'1O~ *.,z zΞ`YAR*=eY)0MXi(6 ܡ-w0A(JtGR؆ϫR/o%ԅXG˺m0ٌL3ɗeȀ>DbT@ΈS7Zȱ=Byԫ4HmZ ;5cZk_TJeDd燬؈qͅ9 0}^krq@\h12}}bI)NKVWx?gs 4;^^oM-?(MhDˋZf hX}oYZTTE|GvB~ pЉ9'moQƱZF+g}O8~jA35G/rkۢ5K.|ϰohuo">P/#Z8C{0 O{85 yT~]7e۸sRUPSBoDR!PdЄ_6@=XQ4*Ms[ܕԌ,š9X-]&Ѭ{d(֥:"ЧIȳ?@ 0ͪ],+^0؍I0.quֹWP>*MX4|D?u #`lkbΞxn1 a14(0 MJV9R6pƨ!&cnYr6XwƽV# 8mܳEBb\Tב'`.kڃde W< iTypUAr\I?`Y-n[!~>2, pִeEQuw( _|Y[U[sEz ҃%|S ~)n.3 w$[G(G[H|Y?sB;q3=O`!U 5㒡Q`:ۋ6 a%f,/4\qVAO솈#?Mj;7:?TL1gP0j?W!b=3ﶩVpWL[ Ou( C5&P,tOcX#d98;3/P)DDZ8 l/Kf[̨'5K&e+Z_ OCFVA7oV~_>EvݹI{#us6'ɌKJa,4.|* .hiw?$;8 '+.M1!/1tD 4q^x3mԤn`UOKY!En΄dg8T;1R5$ԾEB!q,TKiz_AZ, #~f iTGrG HSHlFל4'TCZU El6evTvIcȊlr䄡\W0O%VF<kSBN4n2Fv,>O\0_UFtȂSIێʅ|I LA#{j@.V0Rn&ܥ[E}7wj Mz6`Ѓ1^PGR3&k×`[C=6ұlqr:ead S?it Ӑ%j_r:=>4܁$"۪fn18{{.SRT=ːkբ;/Ig:%aA;jϜ.R\:yI^v8=\}&jH>piy?.uʿ L*TȬݼo̧ o$c/~_ᥑ5"ۺZ B 26[{voq瓼g Ykh6Ny;իw;q dvk=EDc{zfB# ܻxSmr\K ͷXk[Ғ%k ¢ [MWe3Ui@>uVHWŌwo^S ;#g])5{ C3E&MEg zfU).]06y`9Cp@9ϚG')U3rj}+ǞpJ;%7,!TY{EP3R=;S2$DX8CM-N*5q\m||i&ᴊFfGEQ>fߌ8O-Z*-7V)( x=,]UPM3U8,#*)[ͧiܣk2ڽe Xj$%s hBDoN@mma2ui]; |{ !׋xh1lYaKs#CwhIn*-O^M99D3$+0&hvG~찬IjE8F]Fn[g.%4O8\)qʠHE~izy(AB[y[/t ySGAK8`k1_VT:G.-ʺxjIªlCI'N-鈍_4&HA뱈b蒚W[i>|iZN{o; "S 'Nh5Co=}2{$H?%D05$13 в۶KL(؀xsEJ0jDA컃FkE9>,8ݦ&mH3blbC2^!n6T_k<[ړb uT%6|44Rcbj|-918J>G@X&g+ ɅXt` WC\ĚV?Jy? +G݆JB_Uˆƥeq2D_|7 y*OW ▋PPCD<sm.gCt%F[k/2mml!3N8ǐ}-7D-g4J{4cA6#4>g7b5".G#| ֗Qz #j qg)#sPYp2 &?bi#'!X4jwS9q%B- X טn{jKs!h#+R_oK/$w̉p(#zSi by9t-b~}g?V>TŌ9>{jFvCVjVZ2NĩX Ԥ^Kds&z1pGMupC[wv t|A,Иfx P /*d3\߿2iR" 4?_d'.ѹ54tPQI -.W1{] tx9vn+daIP& y.`|#]:ʎWV}k0U)d ;8d:χ7Q]QZ\{_BQTKb2^*>'\Yĩ|^Brre`|$I:c}*9LV{) 'qipUN'k(k"#1 t}6 1-b%9I^ AsR)߆OTZ g+>.,HOw1KRRKZ3[7GMlxQbrMYLS9jYPäNV8ΝîN2%cYi&ck߃ .s~FEFg(Z63_7oW50 F}]:]Ɛ1{4mw[*ZkIUcz.HP0; D TY+ٵrXCR.ޕSh?{IE HCW9r+GHek;re<=R'|ګ&snWaPqxP//dG-R4X-}Q< =/JV{$%;s:k$7l"im1a01I<\q s:JM^`WrlG e W/pMtR&%;̲.pZ^-`-i\feŠf@N^{+v2B_7_Rٴ:ՅBx7׳ lDym;$WcD0GB-QBA􊰛Ґ,G&rBG]n(inRR;zt*z?p9 5:Q :1{|gȔEgt8]È*2dx4aLwWooVv85u!ϵG}O3"J?S܅G$we8o*E_*)HpG|) sfK?#JXH oQ['YFvl|D+ c-d\S+7tH2[X ؠ1 A#ĮZzW qq :+;d(b4XA\ hO,΅ڐQn-Ǚ좳p-0,ĩވP xЕ`@Nm㍟F'uPCUdn9z\Eׯ hjLKsgXM^G߆I.oyFq0 %3^Ԑ+"D+|=ɧF{<|}7fNG0OpWQ~^_pr>w6? _΁4yWyyDŽjd}$/!Xi{մ!JCS\d5"'I%` qTUf]+ \M@m7D x-ɠg )?U^ &צ{ WcfPjpT!s3:acF9ʞ,[:{CE#.In#0zAo`o4gKioIS *Ӏu{4t,I\ >Ox +F$EMJ3oĥ¤?`ALHa ]rӪ:OL%+ "Y*ٛiP7Fr۠0nc4-dv :2`;s$xH *B!Ga@mJE]Uw =9NugNp3(o\^(X%+H^]71VpxuzCndwgC R( t3ɥ*4NguBΥ徶D5x,K˪`q%@!;#ħkZrV<>1&)x%f9rD00M_^Vy!KR&1 .P "'j$FS\q 2oVuz[q+ٝ&Gҗ0Iҩ}@6?dDpP#?$aR/{큅+Ң鷸fo=TƯk%Z_4cX/xJzb!Ϛ:+b&Em}#G+][$ćvwY`^k -.Kx^ z&'oHM9N(>}bi:6{" f~9^E5 0gSԗm|z3*!cwd 4@=qNFdg\MҪOM^]6Bh( [?ή(F:D~Lkj b'gIY(|~we[AR'_,Z,Ѝ} {UuXYed>cF-;EF\~DC#9wdDOp@ɼn :J6e`0, ]%L3Xv.h1eب(c~sNl>Wg;C\ۏ.+we{APSs(/w͑\Bhи9|2(8cx`.}rvot#ЗQ\2pcYK!I%lF/,]VV7v@ aw!4ICMCjzA.W%X:IF$tޛ§O# tßk`TP1^ û-y_z%Upd>?̳->u'Z6pS=R NhǑV2 8J>eZegGAw.Of_%IqJssi"tZ zFl4`F`f3XF8o,17?~LDS҉L wء]S-<k~|]8rg`5nU(Qi&-8<:OmP"ńOYP?&=D1^c PDŽӁVG*|du[U@hxϲ5ԧRU<}[l,^:B`WîW}9S,\1zÏ[B`!͉f2lW CEHcjsL'GoG֧0DmzPux{_x^ujJ"o9nք>{șq#E]&;3E3 BJ ˊ5BLVr ъ+r9rQ描6mmbmG8}Hփ˨qՕ$,ĕoVʌE\+5pQ,7"MכUkp Ljț,z+^ʫ,a;b!Rg",|y?C=*|s|NKWgw0_k"4aB@-fZ^rJ[(j,+sɬH-f\8ksƊ?üٟߎU ^r?LK̩6`@rY"p\#%8pnDMw.) W"i ૅef1`X]zAnL*U+ i$Yz^^\IX3$gb} PV2*ou-V:YO4G=&67̸%`&.(nM3LMyJ2+=?>5ĽEm.K\HA#N噔 B[* O 7nA Hoib3hAAne̒1M <xcof#ҤHI\8R1TbDIv?ms .217\ B:?iN= ^^ohA=L`}hpcn[PD祫)$x++]0G2) Uk{A#SoFPσ}0 sMyY0yH^b'\d#4 g! ؙL`2~_H"pH_UAJ3Go ѧ% *t=NVWz_Ai%X ?$K& rm.s6;X}h"A!LDdTʹs'ii SM5svw{kоJ`0 {,W\,..n䂺c٩U Ǟx:~>8+a6#!hB9ؔ  6 ̉T;?1e]ΠN*(PZ6+T1+\ocȀnw4d lXJ5`7AIPByBD`N\ tɇe?C sN/u[00<flZ?= 7&r_Z(L@5nqj?R|W)o.]+Ry|Z WڬشWaBn*E̥.we{FG_S8>RtxRz,6U5ɋ߳56g7c5`/FمD؂NtS-wȬF؆ԇp'}9M$AȍtByZ N Vc ) Oi]a@I;53 o`:[f_Q(Fb4-T"~e͖cG|hetTӑj5u΅G5a`VvΦjt34 J4VxnTK*5ЗiD%m=WVߞYuZm v >ssR|$,rC!}?dz.ui vwLIsl~<#ؗqk)I'ָxHZV;|OCp8,M׬Kw*X>:YyarĪqV UiEdwr w}GN^-nI_HI k-NF=\%2QGICP $afQM룆1-YUG6q6gҶg{piS@o4jHeP:^N6U8 ۻEšNZyp*Fk+\t=E6Ad*Yt´SOw /@ΐs#fcnW_P`Õ ݾGyK)w()۰aQYR,\Ap25kcO{P#"lR=/ٯ[ 2,M!ɔ~&kLSln2gp Y|6&롯^A4)zX6/KN#J43-,V<")&+"wCٗ΂0]CHAQ[?NfՎX#+]f{'ƷڲogEpQ.MA&C7i"9tDAX8]$XƧ&f?1=D@.*x*mk@/uv;\5pk\o41sڦ~26۷D *GzVcӰ=sS .*͟*.n ~cɩd%Q[قE:Y6.X:'j47kU#4ocxBSf7kB< 9ikc"7J ~8YJ򩘾spgA 3 Ԝ4P痪~?}|H uBx.em:$AVJB|Wfw ^"ꐼ-?4͛e^*͸?*3,~ 3׭u#wSHZG^\@6(,Pœ#@̴(IG2bx!dIovRYŜٍzcrS]a^5Ѿ3uA+h;D^ٹgu"M49ϘN;ݕ/ǯsE\Ǧ+j" Tk~Bh*@LŸC`͑uWRڬ_=}9]2](Kc EaD΀6Fڟ7\v;Bl&zJjGY 0 _UqKn{sK0Ps[!Ւ)$z"].}} go ]r"&2NWZ{ܬ9g!b8I+nq>,TK'GjDn#YWw H_Nǿ)wb ˰Ev$vnfkO7q ?0@Xa ? <$m 1YTb`ԂXj]D­Um\ kXף"ǻdrҝڧ%K#pΥf]ψ˦R/Rk!MKCKK`j{޾|D7Y=K(W{8+/HA(-=/S@Syy4A1w7}ْ^<]53Z|N5 LV]),LI+#FM6LX\A6w)/%qQGNV%?Г~6}@@CejA `Bơՙ `ttjyZ,/bx4aDL-5\IFXYSb Eũ(Ji|:B)͔mּV[XXԑ>,G~w<DxRh.ju0]z 7܃=9Txtb9@'&y[2x<;Mj+/B &4Hzb{+C}#DR %mzEݫ+x" ?_,Eظϟg=f!ZD^3gB]B؎ 6vl (V3| $eXNtR&awAv50ɡka^ Ԅ71-8gQc'2>F1yCVNB lUrT%ҞRlPh#勤*mis; IlyÜG0?a Yf޾Ll[IWRt؃q.Gr\i+/ hnW4z`aE^߰Qk{1\mpPDSy8:TbX"&jKǝ- DdЖ{`Y RwU}kcDc )jȀI5@% <)lx9*n+~dAy8)(2o!r{28Sw`d%ܿX":#_ )1+urD5E^8[r)n)]zz "zxuJS=Ƨ: E??XFG8d0< .}q sL@1;]&J%؟z]J : ڳ_Kԭ7=BB8!HM7Z%d :|ͼЉjAlbA卮poSU"DS;:"2?f"3 4mǣI^<$e|[ޞSfaq}~{)j(DP6_1Uf_g8ޮޱū4GBuڔ[G%SHƋ`A벊;EJ+0`D9mTX҄>z?}f:J6ŖP#elD$"{bƋ[Mɼ,2U]Tmh;:͚rc%s6 CN.*/y})DiޑJHl<܀d$Óʆ>l 5jfC=Ӡ?\Cq`͓mLͥݾY!TZq!=XL 8)OlB 92j1e <%FUD21PXp!kk%tsMԳ* 5 &KA cU?CLx$Փ>VH`]PFΨկCre*5#M+í3KZ_8E;9M(jFߊ`3خ͂+/j6trX(5h]wE1o?p ]!J)`N CѾF/%Ҩ+C{\WVځWK 7 jm+B{<;f_OU[HMv@g,)=y-c ǢoRDq{%Y&3&ή1%b#hgUd"[[]b~d:{dЕxlj)ﶨ.`w@5B;nb:lmIԶ#2>*:$J!2<˶VL%Pq(feB/| 0[C}P_U?ϩO%2_ A/(,}N{Zqs]z!9035vdY)F|BQ+u-D*O[#`mxJKyV911v8qO!b7"+Ѝ[sWE}'-WN3p-*gAa4=$ɾq"9I 9~9#A؉D[i==wZ*:H>x (|MHNr\psrg/H3c! LeCo矠+yD!H;rlb lRPL+uoq>(˞iMtN+t`'c*:h*4E}xP, طc|vi+>~1V9ŵd;%֗0CTK2/Cqn 8is1 L zv)6(a6?.~=^s#6"aѮ2jnqcu ç)ZhspM(?ga RLKEe9gXM=QK:4MSUܪv`[^cLYTy %x0!7rScRE/웓Md[7Nrԛ@aj`YQ 9P H$QUP!6FKfp }*:&VIKf~ ؑu|ʭ/qL,o>RSh5Rֱ~&Z]ɹw%plu+}* *clԷ_-C)P) h Μf&hfr 9C w*Z'͒r{ B^P/n͚.&Ku7hlv4j N؄t׌@KRi2؃ p0-0Wu%j\u gi~H#7v>]e)D(:֧r9>$!K@ {YzF7 !0Dյk%3'fpW mc aY)R@ /+h5z0U=a{=fh-LʸZc46̔Wz9mN4LBv;~+ŰTUIIkwF&əQ/RQ yr vã0qb1KFm@0% #3# a9> = A_$Q"* }y>¦=_Xs)ޟvFlR!fQk2dFTeLyL)40,J|M<{;+p'h=]2,2̑.[WR̻t۩P#楤ru#5v]pN*N]I5iJqZ&=>]3UV +9 n.fr_iсTm|̀xoa?zl[__vu*a а_vƒ~~l}[zu鹹lx".F|YM.ce|iUP&!S}1.^ΜiRtRĬE(Zf"&s,㋤ é(bG(pZ, Zs+&I\n!hˡ6=4Ene}deŽh0 8A !͵l_;w֠OOn u3Mdkҟ2Wr-؉/9c$g| iܶSD/P0o!8w/H(+GlS|tnAlKӱCʁw]%dUA -0m_83ߦ5]-~8&8c!LgXy׮;{L`Fxo8QxF3L>m˝L%8jG͉wa{=4l^vnb.QDhCzHG#e#/98 f7\z0p8U(CAAoZK\Y64VLD0 }B,^+^,!CvWz]ڒ}Q:6!qb-Zuu3QW9[c>D?S'%Ɍ¿œP|{9ZjxbĢ[31M?,Mj\JoȍdH' M78uxWT#]GHn#"Kp jVǯXu#yB. 8בt0IYD6u^1+d 3-G j9f4 mڽ~ʗoo.;A#UdZ뀽S6۪sø~[+>O?Ѐ'>kWH-0r(OoѵM D|+݉ 7!h#mx#g\M6(.ut $=.&g~~]|8ABtӺbn$% qϼ!"XyȪ]_Ǝ6pWyN)G6Vޘ `GY7 ϾfKIfIABpTʫR)[/qizw*m|_Z]d1 v$263 \摣#8X>Vs 0@/&f-:~9<cHz}x:ibС@wDXHiT T9ڲx%˴o!f"}ˀo A. :#ș6*ު b<%0@p>!>M &;,tw̶(vBb~>ŲV|d' 2p|N)u}~V DGG.IθIܼŁ4FbK\j tڋ:^2 QVƒCQO0m L`OuSbPd3{%']v.n2&_2p kb&;*:<'ti9Wd#KkiGai%bh '̦_$c6RήnNAd Ed0¢I~:{ PF >ГSf_嶌+z(@VRwd6OLp\ȖM[$nBkƷC'G8mgʼ"Nr]SQd|0ѭb/|"BR,6|үe˅ jLG0D[d*M]xMOKU;oZjrL}sd')bz. ДKfFQ }'SCzbyTp]`V󶈫^V-l׼Ƽ΄F5m2[Zώ$gZQ[GtK'u˜?<)1^-kmz,+ y3/ 3H]*W(HP8*򦃊p3ł{CդoaQ5 fQFZ6տQᬸ>ӼVN@~]󟩄Rr0mLHF*Mm]b)4Rvmal ~.d,B$ &y맋L6eay؋fj=8b9 yؓ| xKSf˿:Z{ kqux[4 8*́zq&ǔ]ga#vvwH'AqLI{)t*#XXohošւɋOwE WzX ϠO7y)5뇾FCVH4'We Qp>(wwo [)K+gi#5`q [wn8oN:EwoLݶ;`e1 M{9$*_CIZ(qKoL]=[@]k\q0W3AM3w8nVyz靴b4P^1!k(ƚ ?.;WHC>d%#dI˪kXн'ؾ;i[檠FϻH8̦JJ#M!Xx"`_8 ;+㽠M9WsG;zlZ|d/xOO&fmKPq.'"clcj.KX}Ay8bnRߐ9~h~z]*B0I7SV? "(7{9|7(,;2cbW[9*d^hvNF[01di6wKRTWώ[ /CRdg;S Lꭹ-,C-_`(E*7TQ缘3* w蘿f#ZU&<7KovgoANL1eBy ;8sTbW_G"^`Wn,ziVnw> o,fQGRd.MC$WCQ>t0S|'_7U';t &-W 1"";lmY UZaiQ㍥n1(Mu.d4ztl~,$l-%u?m}Rc`t~*}KRL v" B)/QVBԑ#F4DزZ+ݐE s_]YdS)nDHq)3I^-Pq=n#l;|nj淑uUz;'EB1 ܌Ⱦ@IùXWؾSp…>~ih}3XGG}vR̃(P4@?>s&ݛ"oIqV(8CX[c_Ex␄{ezM, \3j*`]unk$:=Yt mO$f rk+a*YS FieIxI$In4,J*?ʡk}ƠSO#4~B7:11`M"S?KQ8NH?\I'&SB;',v_)ho澥glhsl]+<+%N`_EDŽSՇSQF筀„8?)o#v[|=3rcqeU&.~ n;nxjP]:̄&v3 &EKXsB]eXdDqqk=AA$Q$:jӹ"͆WBW:XLY,ۨ:Þ#hL')ʲl0MN%/q 1+<9ۈ;5 ,2N82 ʙ\B%ļ6C 1] y4(sɾsc7shsh@@@dҙ:q꣐/\ Wa3 'hcnkl%=IBs<_?2`.x.&X:$ +R#4aZd_?-T)ZGZf%⒇IPe=zKf4Vb5>Ǵ*qbgYrJ(څ <_C yB´*P (\ArUdS.~UX'^LjFd~{'O[8QZﮙhS)z5*%5-䫟!I{D}}d_}&-N2se8U,r[z{-A8>&-9t-Iɹk206qHPvy|Ogzu-CċjB,a+N]f^?yl ;w{-/rŽ3OM/k FZeԘY1q3hoBek{"vN4smsӝ˶JJKUcJԿt6ˍzPW)R'h{qgU.:Q/{=>QSia.g*[ћxDQɧˡ;[M ǨlZ `.W&$CuD\k?RHNN G"81VW MV 3ڧ@~o*%֩0WeԚc$4DXHҎ=H|ƹADܽG}!kU,|yE%HrSH;qfNpYJHZeer R4ݷ3ΒlYLk4/ia,02RkL= Q$&A|3Ė;{EUZU&G&_R̥ oְghkHwo=2),U|ȹyBi{`"v?E!s%X$I s,i 6+E-$MJbTS덺ӳVU D6F*xMH%+ F:˦1,Uj܍\W=Ro `Ij)?8*/7LIXH0cCh><&Z6p̐;~դ] {VS6TE HHdp ⹪)ln,<"l *{rx8wY^jһ2X'*/>~Խ˒Ѱ^l[<y[.篓L8q%tXxru5f抷+V!q{i^/(/g6J Rg%*qp};"ܦJG+טaC!L-z(j#9G6zr%BIc1W~s*,h XuLGҝw4Jmtκ@L3zE p^WT,ύW)!wԵގ\ a:ԵX @;ivY]GcxC(vZY #_Ձ Єh^RgR@$4/i7'u;O929GuqKV߼\,0+#!r F. J,E@89k .&&inO-2YTn|_N6]QtUkM _axu1KƋn<\+ƶHl0$kC7 Q^eBNOĭ$#: ݕ`%@;R`XhMkwꍣn %2m Mңͳ/](毫^{ۄY瘈Z?fӆڍ<)?)H>r\_:(p^NblZ2-*9Զ5GQ-/q>2ɊOžf*;6M#S=oC!!\u3KL]XqwXJyU7pْܼ :hcзCXnFwWS<UnQ?ޜ\[ejޜpKMI:q+])t ݮfs{ʺuK5nوd&AV_p++?kB 4V3nϯ;!pxaek P񗇥k6d"4mmFD$.S{GjZDf@9b;[_b -"<sQidZO͜+SxRIS*`|jI[x.i̋KwJRv< QG0G`K'nN%KSTAl!W%Zf{K^56 :הć)KŌN^2@um&HfC.ur0WPw3"-K(ja-Yk(4H?8Uۙ9)a;*,7ՁL?0bQM0i#` R'D_cEGiN̔=_r(i~,G ރ!x|vW{kSVQ4^ObyȅhcJ%A ]ɦ":6˾%{*Ai8Iq_mMξ&L;;՗'&/1> ~'`b |=+p,zopKK%i9t;dZg0eL(|Ki_)cOؚ`Xr%Dnn|3lPw2Su!&ܓn-/fgB=H.0CQ!=3$>QN$+b(RwFPb~rUq7r$Kבn?B/8qb#HzDj{m>I{+8 ]뉼V9t^Hy~8Kwˢg8T?()m;:3 [ )N`X(vbbo=*Fr:hv.poGUn!ғsFоg|7M!ؘ"[S-#1 U:!RQOGo]LqA?t' p<( l.[|T!"o980e>"%t`EazXN '^aBmJ( c;Iop9g}ٝW?bQ('h ah+0kQݯĵ-9Ńr OIeO8E1HsѮQDkU X5bd{[ZI͊+YJK7w>iYg?8^))vM!? Hj.Ά'#iK\]9.vm+FcHu Y(+Cf~v~ ʧuTe!d*-wV^Lo LrJa._ <-@ژdo*WKغt9|y~u"{wnj >;P[]3amUm\6` xPN]i x 4[7 JڏgY]O\՛f•%(o$0 l޺VgZbV\qv$e$|MY8=X7׺Jp}p>^X9SXY3su>`鞀ԇ@GjŁk;<k-ɦRa*\>71'D}_L@9 m{փ^]+ü> mذˆʦܯTϙOx&CWi'(UZ%0bCZ[9O%2*Q.'@o2jD9mU?$fI'q2>0t>Ԭor^zs4~D?orT8&P(-=;Beb0>Oa\9FN"HZ4R 'DK|0Kh,X gScD d Gr|5% N;B :Z"[903)GO{4K0` hrRBmR: = Kq 9sfGy'I#owʀN]yԀájLPX~rI|t+5OXCΟo=jク(9ɽ$guY]MRnA BA潉KU!@1U>&v.YԆNhqƀb5uP|>`~U!)Da1_Ju?L*]WXڇɐ5s^]ݞR@[73u71g>ZOyۄ̛6FbwECAnkT1lJKN5^3@!0r#˳rf#cGu|*BhҋW484Ϧ#wFڧj1E*%׬r܋uɢFaL0 eGJYY $ @rba+)'drĿy7i Qt"!,+mAwd:2\nagq=y%I'#@W:'7Wnj<Ƈ-TgdKppExf0 nGHd`fsTv%[BǠ(-O-}<Y-F)&VX[Vz™!ut8ۑ8R#ˋSK5̐WoH4 }8H.\ݩCŌr@J4U7C/)VioN43&MԱWGA"SG&)__|:~=ךlƨ,-_"-$|>}Rår{,=Jj&j3 pS 6x1*zaqpON/Bz1fV{I2eKS,9ܲ{3d]Êb3@a"5lv+'hC;T5v~NEXU|+d>5ȕ¨~[űot&NU.$ ~*X̎2uH\myF]I;FBiYl^}?+suU4K(Gv`]Pq^(R*iZBE[;%VX,xR|t;puria'e˟Wm4=|)MH?-[\0UV K,Ғ@h+1*J -?{<⒬2ɬ?S#h0m ~o/Ӄ"֬yPFDʋ 9I<va-C (H@=rr15 >ֲlJ*EGQh*~8%J7p?+h^|04WD8#Z34k]IhL5T/nݭt.0 -0}i dMݼHR43!mm'_%oژ]$:gD=quFByQ`.=\ݐi:A<αJ?JQޝ<ϡeXB1\iV,|E6¯V >=oGy_G&8b#D&]-ߑЯHRs߫e8IK qĕՁxkm (?<´ڕjYۜ.YeZ.z"U%;30e;GJoNXG٠/ڔ^4:J,y2:WzC@ru%I%魬YSX[gI gnLh:p븾^殙? {jjR :E'CF;KdvL['dBu&=q.81V##^QVL`zoc ?Y@sޕS'~a"^&Ɯ6cKc6(; RmIe\<6}NXU&@ZJOxl F16]|Zn#hO=u|NaCa׃uV>z3G0ʀ쫺9_F4ד(b}.39*]XAHo7ןZrKsk5^ d\,19 [qo+ 7,)@PVA9+Zy~b..Yߥi=dxLQSeI5̶U-J>:M;IƫqNy&>"*LVÊܻ͛ZYUqi|"|ef0jE܀i#Sa\NrYgpjYԶU8wM~0j*ɮ*1't1RjL&Z뉵>Daj,d" D/Siذ@e =֣2 u|U^8/Ő 7ѝBw`8 Ix`ޓu%˨>%|+s,DYئ|h A9yxl=kut +\T] 8q˫Xi0Ƽ& X'4)oJӂi5mQ+RV] P΄&[õVvȽVraLLGh؟c{v {FĹ-[+ fHć+I`ᖞBsX#O62^LժFYyt8KQj\JhObIB'%U$ɟ?V\cArqՈ3Hude;V)nGMǗ*?AKduJuBBΣ׎TYZ{6tdyQ)'+s2% O~`tYAģM,r#eo=?tG!K4tZZ U_YH„8Fphcݶ~yV,˴(T0clm?q;> wqmJ,Y.O>Ԉ_/j2"~vlaFQ#P5+nwWM#;Gkhkpj(a?uc *q0pW pV*B:dlsa '&UaQ)1t M\Wt=r} gL? h`ʩi{%RޯiKmjqjʡx,R؀{sλn/ &r6n&EVGHReI<##ob>aat:sLOγAWl>jCl`Ɏ4>i@6/)IMw챠7bZ%AСⷅ6r,siX;t~~鎹Kl|:-Z)`p$Rs#bg$AHvŎru2_y I)9rg% s%|'9+lQ[Ov,So%[s{)Z) Dը"mpcHIAwXܛ1GIsIzuia .aWE̽ Q7YR~i` uDsi7`S 4|A"طJߴs =k$Sa!뀲ڣɿ\t'AP"k"XqeȐYK;vy䃢z DW`!oeEwvVʂy73E|U<@a:Lz4x%(إ<2.tA&ˠx?.\^C(P&l{EVV.iγ-_0;3GFM"=d_ @KlW\ef&ݓnKEYJiC'aו) a!2 i̺#GXXf!ͧSWv\٠QxyT]1lH|ܵκ9sg11!D- }H jwH8Ifn!`fʹs6A%% ws* .-nWPe0tĿU;gLm|ql I] 6bYJ _pcnT)IQ@~Аx$[=eME)?7ln,Q@2{<\87b/F  'z*WM@|cۄJ$@#WRXTm1W5F:e_ {?T /9&6*> !ZL vpbx=+6Ӆ c ʥ=-bM mVM1t.In_6p0~DݖN+"!>vR#peI$&}&>fMGR ĭy(A SNX$i pGGfcQ6vk! I@PjFDSN$YFtc Q|iߞLeW87G =_~瑒LN~ f%jCcdT x[ Xԁ}}әgЕ_E?L$9kQ*pn6Yб; nVzOV㌲y-X94>* qwJǍт},w5õxX˦.CW+$п@/ʺ@P&KcoYn`00Ǜ0>U$hRx0}a6^ CB3ybG 6dr-/=MB~~T,bz=%N<:jO=.^ ܝ'Yi[fʬ;_ز.\PJ/H>^⹐M+,= b@ /vڲ9Üqz}nP5}h C/ЪIFbMVf\/ZucV6Ri+D1G;5JM")mo]; UqIbHzn D^puMZBlTؚ,ff 2bƬV,t7Q@ v`Vu@-{SbTc#MPo EBNp)ttW:&Ypmw^ZؽZ]t=S\)?]L5~3\"mm=`qЍEKH/!̲0Miv^0h*Ec.;E0.dԭck3nHB O(|G}΋ *mF42Ըo\Cu(Ǧ?]ʉo F+*L/)̚88N!H>5 4<['izfq>X 2@ ,fAXCBU7lq8gI+͘2CK"o\5 hȰ?M{(-.tC1,9>PbM4Gܞݖk{0+]œ`W}c8q> LK[ܞBr]R=5Pţ7LL`Ƞ .%$!BÕ󺂁3 /hմM^ܡ$n}@!wV.D15Ӟt6_l3?Ps:IC0OսuW,0ENh)Qŵ ᒆd0 *w GN;-%6 2k7{[㲦F 䘦р9by[;X% U:^ 5V;Y.ykD/&ߘBhh<wLhqtw@`Kwګ2 #15jq{%MCWL,mx_q^mg-8[Rep+:B8h.mrJIWX9\3Nc9>+SahEӍp֢R;RƀoZ]! ߴ IɔO۫m^AA+؝Ss ih H&:.=0`tLuv.Gx z`YDL$ȠװtwW{R~OC!`DӼ H0\''mF+)aƙuN@A%6F8=wRR0[k032>-5?WXJ+Ի2)i;`Bc~H3\Qfnfۨu& K 56?!\4<9Hd1 @|u91:q"gid"-|YF%rgXx⋥zЅE~7>,NM{;уQk{-ۣIudH^=_ va>9@p-=SlB5,N!3>sQP+IF$|.΋Ϳ! 2S'$P)~׿TjrqxIjR=L 8O[B]h]e.#/u'&`с*Wlf߱ g$e =hp ] nɋ--1|R-p|)c}m& 4sHO/N_+4sJ {xYms4-/Ιɏ0vPmEٸ[2lqAR娳13:\m c;-&O:-M4fe,!1.zAd݉qrs;6(=sIKN{2TL4`FߞMLeh%FcDشږ8MTN(c !>֗q8!.Ke&hKd~Wx.z >2z-XVjWk bF#@_livP"yuz3 h(t`P(Ɛgt JA~S!$r|wK}NЁUh/>7Fu:l=xEb 6z(]r `g4 SdFbBu8WX~@4-i`,n]gXs2kNj'ŃqYqPQ\`6M/?OY:J0v\]Kyk ?^4iv.3\;2ܚ^*k,dV%CȁpqƮ)G H /^r -o}#YVɡ+)ܹyi 9O9:D #dNHX< CaV9H(KT"1 =B:-O;̇dVXwq<JEL inCmIRbb*s3`֞U)>j"ںU;)1UQ`vZl^֭BMDd͛>W-`<2nT̗ۙHQHܧR'kD>ԧJf Ab" -atXg̏S`O曊P춶F+ P-A7)1LE?B#]]^Qjn! L hoZqFfK18ϘV&xaYԭޏ՗^UMXTzF'󎔵o4^\XmeC(PON ۸S`;ΦgS|R:+=n#ֹŸZQhmYW^^{xXT (6_VR)zXI׀@lm?9$_ʧFKea Ure A͜#i𻑅#Vxhw5"ړfcT:8E}]}]߀/%`BúI='spz6&) ݔj])H FcƔa)GlƼ_5Yk) '5tZt{D^w+v h ?LⲨZHqZfvp;ş2V#/d k.#IDNcZ1j-LtH#oQ7gk%7MN >87H <1=:L:T4tMBR"L8QBZ '^k^Z~'șbi-Fշ%9KFckּ<Lp#OV:D$@ZN+\IxLjoqH7y t ٲ xCqg,6Ogӌ/ LR3=~n--(l-55tr9pJ ``!1 7RfQ'O:ss)|,?7{}ַbdE&b&di}Ao<0JQ#ғبC*o`Ym^ {k}o7تP>W2ɕ/whC-E'(-+績:Rl߯Obö8C$8 BN@WTFef"[Z^F:NG}p~gA匝ƫoLh6I\`SOt%J%萓ŭrNݾV %ʑ/^IDכJ y 1dNu//um4Ie5cD*qx-l0|7m] 8ᜪa}2Ԥ(6~"g>Aanw5_ 9ֺ"޸'HG?!6pR]|FgZ` Vq_mƳ7.]Wa]{dѣ%Kl6(=/ *#he *DƿZgzPMtX#˵F!7ZǕ©WGkS1^qz_Ujs4iogDIy])Cӈ\@c^@L+)uT} 5VnѢhw!""wxx`&_Ý۵՚>EߚYO/SWCF (_/ WV ",/[P|# N b]kgXu!iKU9 tƛTmlKĻejcvRy(AdӇ 1ɧ#8. 8n~6ӿה *D14W(eg[6J AFǟ,M3%feLј }u M\A9g W>FUBAmsob,ߊrkhIWXQfl C 2LV(QT"tU^] t 88׶xCU>l$wU;k3zH؋)}Dc`G*9uM6v>a)J5YR׋XX1>N)juH)t9eF#S(%+'-2/OU.\AUi%z&*BxZWw/0s[p J 썍i1|s^Inx5|:X6G0??GjOc y}M ,,>`bw*pRc'QAb$V:)~H~َhk I!J13 K^|m|z{7=)U yd؄LZrBxcBp5t0Xm;`,v!t"itl*kxBgz/at *OM=AZУb}E"d+0%:]@[W*ܘӳ{v9mMg+%[ˣ,L5 ܥ2@S4- > -qi(K>Ae⓬(Nu^vsSIh!׾zƴ"]"Mgj0h!qA~{_ 6EW /]+xN G&T724-WbqE/;SxxFM}F!C|Fd(~>AtnLevdqH[ xM   m:~#䢖 9KhYvSϔ;{Tt!E2@oR\Y shnpp?F&4Ǭ80V;Suv_}Z#We HBho2SlC+A݊j}츾Ponuʎb 'ʥVsHt扢xKgj~Bipsc4=ŋzU fkP!TtɺnÁ9P#&R!-aFMM`u"S!iSa/?Fڻf4f T^%N]Q=~/ٚτƐUMF-J!{Ր[ڟ؜|v=)& x8ӪKXG;_fsxp¤'A YGK_hj1_hZQ0?a"RVaoi] үN:q\QỄ% @(KyXa56x*aqJ=B)G&4$ ڳh֒ _Eq6(fWj7 å%^/{ Hti>0gthLۣ|q+k}IN~A9u$gaD.LemO:Kv]0 Si9_J)]S`Fu&O{]_h"ү| "c2;6uڴcVJo?1Y&t` @>U#>Cdr""yv:{S 'X7(=bvy9 X񈳣?@ 6A/D YG[w}iJ9=S<90x?i~Xmvno&+X|oǍQ|Oh*u&h5/\^<$?A@PrMbg,cNJ)UkW1_Wa]w V !J*IZpvUV%&|r 0fi|uGQ9 %XK&6G% 0êЋs Xlس4|4BG~$6 QK2,`oQ6!O{m`J-j 1xorQlT\0;CZ-"=0}(6~'| ǏQN%l1f1qzu*_1hm }%S .{^M 9fSvi4͠B\-o ROE%jT Ǡ,+rP'4)֏%]iݦ4 \*zh+'KL&0{K+)nkO3KcX Pq8vwԬ*PQH;z 2w9b&DlIf^p)˨sY$3ޑVr~ZhA8>J!wyڢNaB6̊N-r ۦ;gkZ->dѿ4Ib(! U+!ZBcֆ} fC`Ŷ}WN67󟍾H6Z^nL6kFԧP? eny5d=/]LBP|~oet砆 jbM5-G!*i ;TxąAl ja13 yK7~q͠*.>2Ĉak3x 8f\U3U1fƂˆ""Vw{ qIwH`N"?"\.rEׄw؇K!.bI>qAxΦ,h"A)pc@!6{4Íw_/>0sL%=:䭒3BOYΊNz},]텚t!2EIy Lځjs#F+&?bL]U^)GI|؛ et#@Izu+wc#_)JTɕuWٵyB70~ԠJ4Ї2skd5HYuĔ?:YJZ & ]^N+=j涫b0K l>h"V'ZMk>i_4z7|6"T:InmrD,QwY$S{[h\(k }J~i VliR,%GYã6$WM [Qs>E4r/ b4l 6fo7*[Y]:dm!YS{ׇ|K/pa`Cv=8/ݭ}kpR!si׃ц tiSH9V/Z& ߫|T5װ S(rq8)䚈xCZijϊT{fڦBBv#t38jsXڞL9.fS1@QL<5}){ +dIysM9*(S?6;UN7=s,м-JO&BPPLhcaX\'*pB s\Yyp2#,G]$PESG,HxɜXȬ^v& lяeh]Sk) ,Š>I/~BJAQvnSRdPxVN4$37<i%L+ᖍB"S/n~2ou2a[T]*aݴR"ZE{ge e^ P#[ͮBy/]Jwvf4oqu?X$[-|5 [}`+]9`X`X@聻[玚p?eN!a>ȬC Dg =ż˜fFB|ˤABb?Rr^D.Ol( MLVT=Zp/uz@?>բ J7X >_뭯n̆-K-ؽ\Vmқ΄ $. R*2_9s&}V=\F x,r Suw7ReNO+rj;n+Dh/~ [ٴ,<ёzs0Ye((5aBeL7n:{:utg dg@ʯ!bvcXJ>{#$, 7 *<@4 S߰Ԑ⣍~#>'n*` lx?>x!.aAF[>:,6jG] TH(oL@}/X) =CR+f9Q2nnJrzޞ*V3f-umAQp'FQ Yt!r /FC%~'#*tMn4pڀpBޮreb\B5B5˭OB㑏t&IA WHE 2jF2foC!*Nf9MvuJ\5CYzT/&P[{LG|]&a96Z(2n~|/%Itg7Be1f>, Q0-fJIWzwYl}hwdv. l)gMU wܸSnCFE.52n&G33¢y h//aTظ͙7 3`:-x)byBoAwy% !L_핅sPuͰߪg:zY*af[`L:AX殤t&֋.HIt }L67BLPF~cCzʮtezuH1'6I }`S^-&aR1y?#[pU*Z% Ƶ8+[aRk 1ewdЕ~:ĩހĐĶ80wheN|<#.G?uZE\54+AB]d'qMҨےwr}ߵ*Wh/ HnHgi D[=:,zA5<_yj% 3Z+U#zv5OPFv2MeM{}O!˕_2Mk@-ŃWLjkw̩zD>T~dB,2iOc,15/ ]I~oZ{iHSHͥ˻5&}"n daq;| _m[꒲2&`sH&Hz .v.Gg>E*\^k~w/Yi$(e_R7jbw<4[ۓZ_B\ 꼤mIqM!!%xP8Em?|vL2))/gj^\877Tfq(7 ;^AGO\,ͤO]{23@&%g/P}DVn:vc6+;g\RGfVvsFlLƳg{{]'KWfdCP%lh"Wg_O' e﵁DA vEJeۊVft3D/r8R5Qqka:;^t'l!T"^WtI`pR@S:\i}, !cRF82K0d7]YAۣX&/=?k:1Q |+N,-󓀫sxxYTO'|SSF: λPDM$K=ab FF1@4w|7gf7Z'U򼛇uCe"scoR}f-`/%_)?fZ8.@ݺWxLQ%B4/" !,Lep3kaջʅ[A306:Ib5 YB` >^fVy[wOOVMivsDFq1wr wꑬU*ZVV(|$a :t>EׅM]uUEƃ[k͈7nKŨfLGUbJU"w4VE<˶A]?Mt~E'!$pD%a F'HtgYu/y~9r%ǐx5``zM$n?+]~}llA tҤ ЪUIۥ6X>A.&gܛdm$s61Ȳ_QC=@!%L{XqW(* ^o{BgbgT/q#jf OR,e:fc%tv+u2*]f\3l[Y?~;t(Q#N9mj!t?_p7jҞ5\x& m;~*5a#dLʋxJ;Ϭef܏թT +? o{ y%aBhah܄սh !2486p"03MFX\ZiM*;M4wD#˾]11u j!ZIop? O eӼ%)dүJC5]|0=F'cDɊ^sH`֤go+FMƾ{/ݫnoua5QOwUlsOlD/tw85[ ~*ԫL1}pJI} X mޞ-cAHDx l[J.Jna /ĽoN(>L @U<=NQOEu۠mֵ"I 8&Ε_9-dž򨠾aE \N WdwKfFl0Xt@WA㘶䬟yݐXv7Uu|V҇޸6NM{5"!3hW.5=W~V%^{I+˒6zOUReHwVen 7:Á[`da5Ӯ#IP!@gDomԲS&̕+51M'Bϲ~M+㎆b̒.((t:C8K2ݤ^.\) *C G&)3z -%ښ܄ eYB'tx !X5[줇p%?~jIEH k !̯y[-/Qk~rp~\=37NwHs .E1A~hFy*|tl/PUe$RYD;x)5[+]1pq(5-$hBAY):0^SRs^%y:ye>,gc Ly`bN* >UX S|,KtSt8:ڏaig.)84k5$Nw2TtI▚.L͟84es_^ d]&kA>K>Ʀ 1Lc%2GK\lk <  *(XD/YAZɞRܽ/+xr,(\Ԝ{q4mkL̚p4lQkE?,/->1P>ڸR mqh>aƚ`ঈy0K  w `bw,z}#4&ʂȪQ5iGQ/3Z򾯾͐O Dk'& YiAn|maf4PWqٵ*-4߫!7!< s:R=&C2}&∣L=1B[q=8ݜAkbĭ uDhK_0wےcM=l ;ᚋ|:ZK(8G:=8iW3f(9l_+JTJ풄5;%qcƼnB_k>+ r򕪒pRcz'bV Q7d 6uatyeY3ofL}r>ubQt4 ͢Z-W=勵D:0*'] Z;H=+%JvB J0?`AFj^- >Bo3?PU&d]=|feuU?T.p0Bj[&=buq;-yN߶ VN[p)WsG5vd wɏ0_:~Ec1PVA:BN[YRHgxiq/Ȍ˲GđI~4ZUïjzq󩴲R;B7g/hMIp^7g'5*}_ejou_{f 61v;rIIzIioxV]Ivzc:x0Ԫj Oe?" 73Q=!fXip‡ /a~"8OcZ5Jg=o @&޴QmDw PzOFgoO|nt@6oQd9I96(`n|,qV\/ AR:)=*ȸum@CSe[R7?j^# RF7Xkxǣ"s1%2S37g^x 'ޖ/8p[ 41m _|/}܍D"~bJI ﴮ Et|LT0k}4핮&C"H7\m#\д2|52R{ 5A\+,^YT?D22Bi} flʳb燱bIYH,@IRU됟BF $*'P:Y@ hAKp᳸'R"ZFrO.l%R#0#jd/]hT4g%I-"?#`.$Dԅe&B\*Ԗؚ~Q۱± -8 yPIM.æ0ZlҬ΄֜$Lʢ{gx|F.) Ee󒯥 Űm;2t 4t4yK sj m&Ec_HwP)~Qȏ}HDa;Wf8mڳަ4Sk܎亶c6n}y/84|:xzųG(À~#!s "a Q0AN'[|s1-0IXɔiov]ve5p P!k.>Jfb7@MmNִuЂͳb{ԭ'>awd}o`8TDKAGhCw-6'xap T|`GފN֮rJNBF,nuD5D0,ޢ"q`cw ,K :z'XJxdY }_N COe5c dl;Ȯ5t3./:3tc.>P}Et{6;RZZ[w-oѩ ZiU=SgX7?.+ [b". RGZgkUnu`Qՠ./lќMk]/=bx!#^7?!RŔaȧq4mlE`d:6O$FO/`I73q__/r*XG}}iK@{E@8!f LOL=TPTL08⿍LpMYҪ;{RbF|a|7,sfm³ DP]O\&$H<zZrP95!&p7MO81 γ"LtU彇+&M4E ibPin,>ŏ2,nH@IR8%Iag#VC+Az@Xh:i`Ers4@1yLh5:ޙF1ͥw9FmtљkZo/K c0L[hyf7MaH(#<@t!gڋx 0jU!Q ( ϝ<MDQ{F/?xT`[ ,}k#ASڟY>Hd0E4щC rH.?{ܔ2#ϬO+_#+~CBhQ]#w:C3zsshmOȻ>_$O~Nqi\A$uUmMԔaAT힏MS*>])wͳʩ#XM## Tjz~R*%dQ|:Yݛ!g"a 8hbNH ,CB~+kI|Ƙk{lF,64\*sW}ʤl@՜3#[׍R+ܛI4S{ZcފWϕ\%>DWVzꐙXr%X"=Lk7L +}.p1k[RK7\FVMnw)=`yw+D~(8n upZ i1za# $6Q 4{a4{kí܆{FKh@7TTΥd"U& LPy h,z}#ڊX8#2(CU/&@1+j7|Pn;?Aa2X1JlƟ <f1tewRQD">m "f)Ȩ #*ڕJW$X0&wy/4ъx2ĸ7!g|`F $q' U6GBKX_X*% 69jrClmI8(  P `ΚiqQH0Lh=,%Wt)6ȹSm֔[e|Q(u3IH[2=_|w WO#Z ~rXRa t ~3ab&aݩ-I>qFukrn=3XX&lX`67"hKM!P[x-~ݽ}D/,t:$( IQ>ȻƂj\meO$|E"XAU`z)cL\Hz4ކH}uLnV;V4AXآ>!~.uNpXjx1Ays9TϾ罋I +IlZ7ܲHG`4u2z_߇Ef#NhsMRxI/tIIqcF/@.=a0=E:} 9!fmDSpr.4~ )1kKvorv %7IgQ&)}4T>Dz͡o_?%(g[bqzEiqUN`v=D%!DeLjLR0]>8$e {My4-lB_Y1090 NK:? PR%Ơ(QDƹb$2=WN[K*5 I1nз]LJJlRBw6q$qdn oYzgpsL*!*)G-,e+V7^1@ihw}EϬti$c{)>vT ] ,&@Q}A{p1)R%E"/(8+f0GmPo֒lImp&+*'7@zKXmŞ9+I"NOh;WB%*gW;.aDih+t(XU=QXht+wǺ{e9YKh1zj!2բB)q[vOG妶PqFG:JE\˼:|.Im2@ ,[CK-51hl ( s%I-#[>,瘅k&{s7yc{3d| uiO4ʧ_ 1Ҫ/״:7daִcuzعܲO_y,2&hy2p`H(ZSq83ßG9Q+QҽS|l_"e *A'yRT5 F%5I>$FuC0+.fo2("7hԆkcܫuݘ8h{9¬_0v))}?.kL2Ma Ǎ,*4ث r. 0XN6$QPl>k"dʥvksAw>?cu=}nVT,fK;OPI_3t%kԦѡj!8&K.}ԅuK5frrٷl8ڀJ _Z~h3Gpc)^w 3ukb{MϚFB0_]*\8  @w{$DDȏBWI\dWX~3/Rҗ f֏(RP7PQbwd&eмI=_!5Ֆ~P[^n! IC^F&dB6{(H;Nu|?*2<MޝLJi/d@;f-r?NyasfRKx'}wϱ@3l~C4 ?//=a"M ƽ_ oFRbx-^tמ<%aG5`-r@a[晇fٺN);w6?̥ swn~C1- d0t9 | V^M-!k{)XTJh RRڌ#zƯlRI/ &*LȚvYbڢ SwYh<SQn!bo ӗJVhT_J&ī$"e /⟣BMdŰ&k@  ypkYXV'/9rmlp ̓CĘm-BjU)lž1S20kts@3c~=MLQ"Pqc#\p7mR`l)/X.a5.soJI&`#}_8dIo.5_>yLݧ\W sϠg]N dB&>G&:!ɱp#R%3lx_4 evˑ%tXV`4|#LX;|̦Q ;gu_"mHT51j nh^ SZWIUfg_}*T#&-1A{7F0kߟ~Ӑ[MN<~2ALJ, Bjy|w;{tC;zkP@T~i1kG꼍#7*}O dwf+vl.+;v+eɾ/@d|P4Ghs/UU7o#,x=ZRmC@X$kPy+ R@O K3Tn^Vy*Ov@n6Uu3C tYB10cتqV!S=6D΁Q]szZmcCٻ.^В: P!ixY8q2U@*6C5UdD7I'Sm5~1'#jRGHD԰ޢ 8N[k"<]0ByFE=g #PqjD} TI٭wQC}~] e"jC}3@/0{F2kdT}{ZWdY%8ku1\˔< kdlY EeԳ|o%++* [gYüJOt9 j@6>~^v eR+G|VNFԁoHm}].#Y@Ӳeu>\'5bMYl7q95֋5#+ku6XXd9]8m7CR3,v+nqƂ h0\+E\S[1hygI.c({3WMA},1 JƵ rD$Lw~AܛͰ'4:Lx\s/qŞXV@d>;GYAbf*4ISTNYaVzs-+6{ZtR;Cp3+FN9҆r噴ݽObkIV6"[s4و4钨\UrbPIgGY+ฒr)bK'QҴ _)}߶#ܩY'vB䊶l6S+%u;Hto؞k,0|u0mIɕݴ!zbZ`WvyR<\52Ղxol$Ajf2 1M" 3u Md> < e~w F7&)zY*O;:.x( m'B`0ݳz6|~ItmHݿ8~eG*xAF\W=Ps5WL{&8o5Ȅ sN}6! lkXJ@-$VCKGq#jW](zA}R*(i lSaXg.سǸQ O4/@?IWj3m_tv CW(UHEgar+lIxKݛRZߗ$U"C{sX0`?l#b56IjP(rXGEDJ<3('t_xP}w=u%Vd(᱐jWIvWb2k2_gՈjmK I;3X-n5:|#i#  |G,Ik%Bc5Šjq< 2ыԟz(2fkf0eBC1v`h1AI$Y Ʃ{Zo+'MZ;.2JFf,{09>0)ߠ͞9W,<Fᇋ=h sK˂wk0~\p^2nJKcSM$k2?@ۜaRǕ49~D|o j9siWl31>eN]\8ܼdvT+;AiY/)}>4N[Er65O3dhf3y y}_unoF*G*9c ؗבwvߐjg#k^AomJ iG@oD%\D˂ʬrGa's_)shm{$bL(ѲQϱF0/>,R\éd2'X TKIh.(ik})_R(&!_2C^~ܗrU*x#*ˉurG`/FV -PO ytr݋2T-^ $%H\0(Gԧ){t!T)u4)3QʘC> ^¾=ysH~)̓gߺHUy=2(Ts dԊv8_!etRԏd!:?YȍDӦ`"H_(#始Æ,*ό gzʸ >˲DbP\00R>/a/t1#3Pq;5 kcT6fa"Ԣlr]!yF}PޓLv"|ȿK"7Bvlpdj(\ ˡjUјxpM,[۠0|l EyWrtpҐrNZ]d6c-.?}eh(4-(C?tJtK 9qo)v+۶qUf⁚o8Bjl8ހU<*>>li,e9(>yImW~VQ(@@agwk/|IU\ygk7kl{T0<psꯪq y| 4Ϣeymh\o$Q 1g>$զ&6MXǗ I<6J2L~5'{ydJ.M5=RXYnT"u2iMC#p sWkJ]`s!_Hj|/WU$QPx w|W6g{qW1rX /oL&$W71V`k}`-_&Px2'z?9Wv7|QIK׻ep]Vc1o`݋pp\ d,@c3E[8TC-Bpdzq{0"Y;ZbslrJx:,_21\@'UXu FMKYB·ض'"n [(ή,K\7"Riۥ"{hpƫQ\x2U㦡 fvl2Ij6ߪR/KJN)E޻4wZvcH.}U󕝐UtTTITu@H}ڠgMRPbT<7#Ioz.I3liD.\KY: թu{/J@եif. m,a̜Yn~%D)DO[)G7_GMM`f<-]+'a#4 ? f cqAŔ+A½Uo%P!UEꧻJ5x2#jCеkI>cr#IΩ|ڱKg538=^%\Bp(ch*XF0^i1=BK ދ]@߆g^j<3!yӉZ}E߉~_?@ ^_ѩ!4O Yؚ5v/oֹ,k YlQt@ku2dN缊tqJe q<rk_Lg[2pHƫ϶] f?wYh+^=;D.%ܦͰxf;ݮJ]IUqc, rcr tDu^w 3v*Nbz7s%:&,lFϏMFbYxV$뉷x.0?rg/ /=YK! )+9EJ_` ܄kD@.S\Amx؂f"UߤYjyl/}z&:qx}zJnU `^%4 2f+TE&Rv8=}To$DRE 3d9ދw# eF8TA1.ƤcVL[76\,mdE2AGfE_)J&$PeL!\5:رoGj?GSUz5黣/guW:a=ʱ"48q,G1zQ%M IU! B!wWYp]8XpO7Vf/jBɶ`Oҹj(O`J3Ӄj`*Z`l+T|?!'/$BH8;7F.F8,P/'<.5%\"7WF"ndra&MDtKZ<&x Y]3s e6ñx6WWhrCF qN^[/Qin0㚣ŏMapRT^ˈ{a)և.PC܏]tO.͎2gH u`#Ȝ!H@'bihӕqf<ܸ;VC~`0k!?NW~TbkoG}(8whӟlK^%0_qm$oEQLp_7N̈́ :`dHߙʓW5d#5t }C; h3i(Kh [Roxk6ks*H#XwVҜ~oW.bEД` 'o&NtI`lI ה_ z9UA@RQ۠s $WEQxVtjލۡ (<8;%zhԪn#<FC7 V6"\_0W))M*b|CR*F_lm%̤`fIxsٶavJ6v(XXYZ 4;xflT9sI3 iXx<ҖROFF#$2\sOPJɰeB;߯-v' E %Zd> 2an/Qd{ICp sga5qR ?7Z6͎Pœ֮R>0. mEkz[Nٯ||J`;2{Ph8vD QGXÃ9q tƼ$AZJY󒖊!nv;-6L ?suRA{Y18p)7&]m5t_?j{e+ 8WW%砫@4{{,,8]*R"eE$fnF/6w>b:7eI}V,=:ʘXU~6AHڦ&{SLa٨ƙCeF1+G觲`%Bt7p^c٭v$c&H2rsܐS]6>c3t`Z}5Obob#Ly^ n _Tz6{l0vyW2jD?:b(sx}$x% }\oma7m93@+IE%mC`6 sB :iSc:L\MH)dvLk޽Kɫf!Ѧ:0 Fpmp8SL kr@!s򛜳F& P=4тYxB6}pPdj[Q632[WvKbw_oQ^Nj<6t\Gm;b3@!f->.Vu@EN~rF."aqi=U.zeuT{iKLo*I4M~S_8+-'bnm:25=g~ x ֤Kwum~ya~,(YMX;Q"ȏFeɵEk?Z WԱ `ǁV6eʓܒȡ7g7j3.qA\0M#̵hK:K l֟e]>3n*`pjœEN3_ތ٤*@&6Vh~L]T ,4#~A@|p)J5'A@{f+-_ven,R:w"bMfIjɱBBc 0='av~XB/s 4䳮tmBoCZv ʌL, BNCFowʹ޿Uw%DD4#wmGy<Q5AYmjsKM8d?m6N6X7.ل)L0 &ݾª/r>5T8LMoRNB6GV䊦AEХlhR"adwrf,fy&8F~;|E[ &<`GށepF"N5 @+P9=29vC0 jm'w1|:Qx mN(>Bb27hm\W ?q j/oh[K Ǣ}BIITAa5P8)\}2y 7=,ǿw<}Rnm}+LQUlFq͛;D:[Bـ`*e>Vݓ3`ſ*NpK𤨣+TV]$&&a@nˮ;gFn=wo6 er)acDG2SX+1MHhO"d6r9 %@dDP2*#S3C0Lf5i<,VMrUNBjb/䃬.L*5qttmv?Dj'& ؟=zD/c ?V]z."E3<  7)_(Ѣ"ҷaepZ\Jf[GgsI 2Nا]w4* w D\/Oyi':[OwWb!@p[38Ɵ +wBpw3xI;Kx& 6mb!Uy@ 𞢂[Y.w_`$ړw 0l u6kBT.h u;DRACWpɄF{pW9N,oist ׵u9_;3G/+ Ф{ azVZa@.㺹CV2`eۍC_ghw4d^UÂGO}m [S7^-)r:DN1C((DȮ55XJNBD5L'.lTRDžO9rLtƞݪLyB"p/<1j '#=- dM8aMra'Ye2fRY|!q&:@S1gǫ2㋠ _Hɦ[SkPc*pʝ$t$ _ tgϊ>Iq>&X ˒/q(Yo}^qkIV-go\sdb;Gz.mJvL x>i&] ($@V*TRan* jv(!uUVQ 82wUQR%/!7Rߤ1W@Vif''UB[Rhy!Ey#*uޢknT/37tUV$7Qlf:FddktDz0.ӣUjB\aKRS~8XW3nRkKÞ$g3`e RFHfQC ɥ| )Oqǂ 껚=? % uou:bN4f4_r % EDxSMax_?o#%otq;{>tߡ3@8loo[6J/|R`QsNLgreȫ{0/tIk[`kcf@{4cx??|zM9kP?}>\kڌ $@eOX`7.cbͪI^C8D2@Y(3`YH4\`M ) ~B˯2sZFj&H7F/_};'Ԋd,"-sy ܳ'kE۱tB]$:!j-C "ylt 4>nͥ/6OZہ6䵈^ qfx_F"4z ˋzUvn~' Zu5IJSg՟\[%~+kY9YBLjې r!NoSf$_^XjnOekBW)LBW(|""N\11y(-yC QN~ 1<@SO倲xVVQ`4ComCmNgOϔ׳<E~7o&no_q3䠞&и4ٲpMe@%eN[vb^'gQ]T5zB3Fdf!^"p#p|"F5d~Zk:TE1/zFus֪0zCV{XA*(O|SZT34 ?1.dh:RntazI2FEw )WL:n1 <~ع \ kv2M(U}1"AJR򕽝|z^T3;ϰ @"aU4/=5sAj:\9՞3\49ܿs~hhrx6W֠zLbZ匒|Q+f&,`*WۺXo5' 5kw.@J7 \ XL)6d8n@7 zt4?uI ldSpv[5ۊ07P 1D@5pZ\ '^q?D@LɝjB41>PαBy^=Iv#'=%,VieY^~-eʉ5rp%H[:s6@@=b-FX}mY@v3G?輼j9aoE1YknnnrsͷBeUGEPy.ɓѱ0\iƳ.!ل-k9(:EH ]If{6|YgG^0l6à@WS]sMOK'Ү7rciW Ae){{)env֠髵SvUD΋a?$ YkK&I EnB6]+$}q;I臧'sK1} a h 84átOiX|9nhDRΚ24{7ܛL.}\2մH tEBPɽ|_bHK71)U NKKC{b YE7k Auh1ʓT6K1HjL`~![C-'*5]# ނ>;sn 4Qq; GB;EDCBMAv+Cl(,hb^+3σ=r]XX.oXw"q֍d7ppB Q_ʎTIrN<'oC!sNOFMUOf * J;$@Q7dg`WT);ժ ̧ܲ6maIi";DvI(71{bdV̩NVY_كI i_**ag}XIzˉG*Z,С74*ZpY"ia`T΁ `)⻜Xӑ++y l'P҅L1Ո9uJv͔2ŭn/+mZ%Q2IA 9BOܨ dR( EM6Q!Db\ - ߄79T:3wpVv:Wm[sx+s9*mDn*r4e*X^ ֱ07m歎zI>` W$LX%!e:4Zd :E<enS[N1X}0vьf3F,{~ŷ6$$% v 5/6性-M[~9DZʝe]Ǭ iuU@xeDHHs5_¼`9Q]eR$aN eFh1$ .)Zl%tGsHR<07[u6w2+6ͥR`w4K܀k `:*ޢ?#\St٤{.ZVeiQ"PD#Qݤ;c츧bf(YσӺ +~?`"k"]edK>}*<Ȥ,R/Ʒ|yd`!k83 3)fT\I\ %nŠP H^0PSN K \=XCMj|8P,d(55-11`t)n +1~*x:Dem J#_7}{P PpCdza$8Z|zt/GHSJ!6$l3/CKCZg̋<ȬNZO3+HbI9ZCz78_Q;B}W eZrMx9Ȭ߈vVM\xw'դkdp9GLKȆ [J^}C]/ e">C!Sz2=/:v֛rM}^ fl>sOXdZcQ-J:@^,"BWZS rݦQ7_0o|,3_p6镖?J2L ]bعEJיVYVi8z3D+hybpd7IwOάnU]ZU qOe'@v" J%|AY0WJ!K; tB6?? " WVM_yl!a s$3tҥHDŽ| ,ocV}@ @ zTѷ}VMg1Y}{NV9>: >0˴+x[R̩+x)WQ4Y?d#iiTꩱ.ug:MEeVdxQku#)V_٢9-o11.Dv| Ql^饓}f_ +U8qO#)j@t Xߊ@̦du ԁZ6 5OsLTjj˟ʍ"lN<_EBȺ)N&Ky˱89)}~,j~GrC y *جJֆ5"JT/GD;G1+|*=ZSgӡd1XpDc7`=]Er1.ɒd m%4L,&ӫ ҢeM:칰PnI]xHIS%\#*bOD_`6R248H` YL0Z1qpX [7𡧓_ϴ5*dcJՒ~gm'Jf=/V|i;aϣ֖W&@.Uǿ3RM`Ro^}`o򀊰1yUJ`^6`ߞ.OUŸ4MO|Zah\o"vX\jQb|2b"OuEqʕQtU$cN' Z8 : 6izdt\'Gm^ ҼmXS̠Nr𫅦LdLr}tېo&kW!~W^>1)| lZ£A:Pڰ+, ܞ_mNʹw0+ _b`ptK&ek[Y"ij^G{1--i iۺ΀.cMi(gq' 9 c_{f*l"al[ӅYG´6͵z2$hli 1V^ilO^>G@r,{e.Vr]ŶW'NJڬSOֆ8Jcu~\xDkAM(1>#3yޢ Zͻ @d^ Z|dNGEpl2gWگllA;>Nw5 m! m.=uFeKl}EݒUJo1X֦^^zM6eEz:'DStPFBmP{ȘD*}Ac?D\csaKp,Bӳ͡B(wXVOƮ ip$BxY\@~n-*AΗ 0ۉ[L*ogdq(;X*wnye2A3B4-f0 > v~/8c||<BVFkGe~xJk gN$*/78!W ]bN )h_Ϡh#)ںmj4h|f*r >8P bCT1\kD9164k׼Ji?c5[ syTW]qapy Wb zU /E,<|Oӳ4U+=#' g/;_FiJ ]&1LȐZ#mJİ:ҩk_Ψ5c 2> әg,*2WQs1j$Pd´xb0 `3|)Yiafx ϡR-{;ZO7,GGEq87R%1Y\-}0s\7QtXD03 ft;]1_,&V=Ev -Z~;s;!~=>A0'9yUϢᅄ$!Z؛B.%_䴑 1 qoX74Sh++Z'Z3 :ofvkfЩitlwEX0\7MΙվQ-gtC#ACH/!:09Ǭe`mkGBC%u^VJy/a[.lr3\9*} f_elٖ~bNU~ 7z!zBzpJr__[/^L= Q_ vEOZ򻝱'H2ӧ+:ڴHTNߢuAeHs4E?.Pp5 Y}*ƈiJc1ͼMABh},>E-jdSh֏{d,{toԐeE'x(pCne0{^sȅY lŚs-6Ж&XLt~ q']p!g_.ccA_!Ca5MEOot0!8%Uα{:q]L*iHhJ`N*ݯy#c{|43Lϖ01+v\g@h;"ѧ2qHJɓ>#s2ĵ4C%mDAdp2N4^H7{\F&vpO9WDa 0r%+ZKD|ɿB-} ķ= թk2iaymJq?|z& p(RufzDCס7@PsG1flO)ګ5b)t3**3kY2A TZw Q!Z#~M6HEQݵ ;](W;4PJ-sDuX?ėEn25)g#+~W\_䢣걀-@1R* A ~"@5n ^=3Rbo8\|E4gM9k -@_ut 32d]>)lgRu~.hA4pR[%;j;zGRU=<(m9/#". ~)]Xւ [ 3BDgY z οW"Ga[Б$$uU9$R|0lYAXNl'kUfPr, !7RI ֫9% +L۪X!0{onqޜA~ԯ꬐Ֆ[B2ӨrxKX![!0b1l"8dy=^?=m9Np<&H4H$Y 0)B< >~ _ӳ+Mų1~oSk{ zd'k_A̚NaU XX1biMJg)&DX\]Q]Q)?cxeku j;AgZ$w=CaD@}*3V[[~sV{ZqWqb: qKl.P]  Rtn.Hqi!֌kꨭy|O}]obՌ+;nFUkPßm,AULiC,aQp.cOEKr= a%==K,CD@Bxuo\7^HFNFnwF/>ތžXظHAqYƞBSٍ\=QO8 0 4$5{C1U8wOHzc2ul{;yI k=;ڝTH"%8Nj,kKj]-wS9 5q^c)i@t⦚ ʒŤK$9j_JH<&:[3ʲa]+7fC?; տMFL4{A, LdRՀ.B!ݐ6D-@"kk+Ǧ02Vg9F?1;^ũflNȝJ9'İFڈDE4'|>b~O_ú μ۱IhR`c~v?<"YkMt*BMf?!2\( Q2HN.zT-ǚ?AFhNM݆Zdyr@(,_,Y-!143 ~97f-y &3+O"Jk*Q[ VO1PɯLDN\⏭\Huy/q C "ѠYưds̸t~-KTͣh(#GS6pF9qb#yg+U&x{tý#c q<|zq/d̪ Ϝ%JE?a:\a\^Vp9^/C.Iх&F]c(9qq3NaLhv pưnӘ]i6 qVY"뱚hvahRz1hi9G9kc/L25<@ɲݴ*@vhvH}R7U;ߔ,prb [1I4`=W:)i`Kpq58'k&BN"u?x!׆^yR+X,;3 Zs|Kr-2A]mŠ`_{[]{b4`G_ 0j`jc 26*%3>0'JS?Tr.geΩ"(-*8O ɩ +#.ԦH*W ʵ*vo{C@£࢝ǞnAQէtMĠ2&J ;<oBVՇCa$Z x_Dƻ7d8 62K#u}U'Q+(Uw_O 'ϾD,cZ,e#%4]G -X9ҍ}p gYlYf1M/_-F E q2g>;ِvQUs2ط)YQS;bzpК:ՁߙwϙDA!u+@ꍧ)vp~$Dw!*k ,R4W]V \o)omRkTⵎfm Nª'taV|D0NL@9^1fFþ It QOb=̌Bc\ >v- %,oJf(RzQfm5\gsN%Kd"s_ԛ^A^ yvJCk#dԍ&AZW1o fcO- ] [da%Apl?{I!v?q 1\$&T3"R<@]_'jЯVvT|*ab7 pb=79 tTxq0PڏOБ)ӓZ&H=PjF Y{ T]K*?62Qfmmgj-?xW8Nq)d-c^m{Onj8KaqYh-xT DDKo{ 6!,|mg XyRv j%~j&[,aM2 pcQh#W I:x1z& y K%!<o,ʂi*yjB%6N#pX>2 %XFD=|f&zbbwD x(=w@Zwj r )9+Z x(W}@/rYpD,[ٿc#T}݈ēN^ ~sSVZ8Phէ.):[󏋠zգ;_ B^1j};[36D{j.ڬ;j0WL |$ҌLz3PƉț MqR eƅV3."#MPJ1$4oLӽjmI-,Z MM^Upm8V@y1͒P&*٤@47U7vO"+%!fRޟQSF;OW&ׇ몣 ~݃Znߘ70m6t\,/ĥ/n/?DJ&Ȇ1Bm~ qYA2 K\J]֌kR9 uBȨr3rH c;vκ+YA=+i%#T.!H[N8j "$KkBQ'KGOI+ܹg+\ת Nl"ݎok]wf\R_Aңnxj[/ҫ:"b(/S0}ɛ*k@0ީFiJ4 eЛ8JɂF. :.`> rKrEN u>&fXл d7gN*tXKC4~8WBF/6zs??K6Ѣp%{L_ܮwLv>υm10fLDh{4Gږ7[ v/ʭv WWo%<".wdo0r 5f0tbmbE%8}-VDBzmof/GVrR1Ag2bPBV%ۈL|+>zu}:%YK.} Xa0"NOD K S` "ۛ RB5J_tۦ^IZ{ۑh)~$ OBX1Pnr[#KK Mxu[v#j4S8ў2\Ahu SC_+ҝ 2ТS%q5\ډvT?g͊ $ca$MeT8( mHk~4.M"MҤ)q\gY /@i˅)c4(oe-#AװKL~O^F)0U*AhU ꈈ"e]  "vBkk$+>s ݬf~Wpd&t~;^tAO_㭶> D'3>x_ևb9EtT,ðl.Bk: -Zt6wEN~QS*eXv I )Tw`Gh$'C Wđ+}<W]T|&ܐF3)0UoFU$̑ك#}! Y.;WTԂ7Be@NrB*`UIQ\m9gM0VDJ)r*c>H~!`A1NvT`EnnFѓ;X!0W<[>_R냰g6e }ғj&͚tqU2<{E[oj:VC0Dޫu(ؙ8@9>/?>8MZ2_-pZi: -j`(8Kx@lR05vE,OSf{jpU Ny nHW/]iD\tRDB)_ܝHG-A;Fe7d)|RS2E/nK}IN_*,$7p&rsMJSgd4hbXP׺N&RY)cBvQAUŔ#A׍Mp"K9N4үg5RC} H $ahD<2zl˖Hj>O%x z'B"xM768M?FfKq}(FՐ{ॴOD\\Pvg2\*˚nȑ|/dkIp؊ʄ*xiPƅl||EHl3H!Yޗ1jmH:OL_0Xa%L9Ymn苴$6 '?prMav%   WPvIu_:[ˠARH̱=-euQIleyt\{!\\ 7&bDFoo?V3"v(C_pSvq+✷E( a6@eIn(K'ON)O!0>[ZlW[dqd;}Vf'T8H:q vw t[*%=V:4H,9v's ecq-Y@=;ꍴ XDQB5S}Y6Tc4Syh\uow='(PuЕ!P3Cga}۵Mr_Z7}쬸f3ș{dk4>uuKaXzrBg53zkjP]vMV^9(qʔ+@x^¥*(]5&r kdgsV% &qVrmLA`mE<KeIp\zB~X~o2*XIN'q|hA5+Qjb*0)'Vrǐ3m\ F #oGTQ7okSיDY1۶!R4GvgqGҙ#˧z@[ C*$)d I'QbnІ0>m6w{ &vڣl)&Xv@NԼkhd<91VAЉ1%߂xxpտΛ$!p*kNm*r*W+h1_S^+ȩZ|FdBȮB |xAJErh~hBX):#ÎqM#; X +1}nMUtU>Msh\㱤lRH%[bȏrU=1ЊZÐϮ>PUQGqc'-T\ó; AԪF(O( S圾JQN/Q[uF*ͤT:-ԹaN7H(P[Kiľt kL|8@pVvF1tPw] U&QL>l?a@w,UmKqĤz46Ն_isLZ)8]C][Xh`X29^u&:!}%~"X|N~ߊcD3ނ.߈ӲԺgBnͮR;?8p<6ShiC`ݚį>6h* "aRp_H}*IƸLu7QYY@-I&̋=[0ۘT ѿ6=sǰ7WYQHN cC6TU,XVZq{ txZX~u܉uTk "K9f</Ҹ6cb\C-mtL۹fԠk&ߓh 8m< U`aƿD+`%dQLCĥ^}/q ?k0`뷊;=dU5SM1>atXh8)W_.vUG2uBXà\tϸ, GK{~^]ψue;⻸+9/qsVEGY ۆ+PH3*4҇RvE*s$KƖby&J֊A[ݫэ0zS~fE71~COUCxarVp׀.,MN6&rC=7tQ1)ane&-׊VCe#}1U"/zpcb2#:)<Lg0\ X\5>a{6cuF׆n,TMS8P[jlŊ̪ߊ2vݤR;Pp|ٗ8$\B7RNe\D6~B.yvV]T ڀSmm-;$:2YYsɒ0C'O%4nCe)2.]lOLW_WWxQDWEo.$RU*n+-OW:ߎ==pS=4Q{hR̝[ jدzᠺ/ǏS#Ʒ6pU*@֖ ёR.uš$<1ʢc[ [ҽ IlE9hEČ4hg> YS<:״/yO^?~.ZǗc O8@y6Y6z S]c@-egћ_=&\HzހTVt0HA#c d~F,GNxRc z&zhS+|}A corFޠ DgE2 ̩̫띱Kϧx+ 2CVwV1PA2{!݊x^cu%X%_H.}< y($ {VgtMZ*, Q UV`9|FlT:2rs}G֠MpiY2Mgd` ?G#̀qoU(VF79YAD&}> Ij$H(OS'j p=K:PKT ^䭗.]5?卥U~w #%H[@Ԛy@9I>^iSp뭡ZS堓^rAJ`R@hk"0kRINr,L퓍)DA*AUJg鲝63YAyI{wΦMwkb0#zgڡUH IDAaG&m!>xLGpi M*ISֵզ8dǑ7NIS#ābW>ffv&N!0bx&Js^h[F3z_x~a*zs.-B8+@[j8BiNK9H 6(⪆&>7WfrvպY:-U$qI !rEc}/o(CzL$GzJH?ba9ɭ t=; 7jZ{fdJ6Hq{q~`Ar5ԾL g[X9&nU-{)Ĵ{ݓU%u`K0Ѽ M>^I"AnL%8މJMEK"HrQ]VҸ?+GZSXN`k-eOaO~++EL˦CUXҏ:B<5 DrhvuwtyvLTf >ى5:4vbc 3k?Hd4mtF-婐൩R[R~]qL *Ӎꌝ(T- Nۑ'˳ ]2 28HLv-/} q:&Z8%8 0HG9t!)`h3|N"ʾBNNY6C\|PRNmN¦ȥ՞@j`~ʙ>p@g\ zX䷣|sB^R6-ɆQW IȶWmw][- n7RA]{K@nQI+˥TgQ J:s% u  >T?SDR xsLlh#]"?(˫i B EV!8\{H"00<m'ʇ9aÏW>}Hb+QMYד?H 5lū*'X#2e*< 7:#beeV(dүy㮲 DzZ]?Ie lMwY9_V;KvT@1;{kJsY^hX_Xj-`PT~SUӖ@:݉&XXb=v_hey70 fba|r-3ڭCP`K0!r2.LA(r]<>fAvrq[? 5vN/5HfD<%]N|?LNx/3H>cAnn$!UR|-V/Vu^s^FzWbMZz=FA*w["2Ԗ!;rѺQ|!W6Cx XCZAV|(R=vv~2X.*="OsX;k &6 l )mꑾ.E?:t7 #܇`A$i`-5cMn#doM񆉤evXV=GzK k`ى05 &(7}=N,g\<ͣMl2y@hZӈz%&O uoh=QY CSheyaH N*#"74WjZbޤ .%eW8,A9g{gtXČKy=jLVz4dZO[(bLnL[L,s[QJ.MpgN!qSqځ$E-iG.b,n4}:KvGcٜIt1HpʳazHP29'glK]-1x.}~1Q"'%!Yt +ds&j:$N L -rp)ah0uT'* b6ɬzszVN6,2v\NU ^Fg0@fz" <4f ]WB8νLIѧ.遄+^yksC2wVW^ʆvKJ1ɮA2MxԲ?C[sRȣ8KY)_c>AxU,^~8Tu9䎇cs/½G?#߾oA03JP83SEyș&BCaY Rhf)Q4Rوb]q=d֟Vj77utau4qmK1W5gx0+ #}В?z*~:K}:Q Uߝ I-#sAW=h/0AD o+˦L&].:`_QS~`vX;ky˅ ?}T2[3D0mu`.i쟟E: T''{ w8 1Kǻ璚nup%ɰKtz6 VMlLRf>K@0; K/ې^Bp)^ۺ)LHW+忙`TR/aHWG1>6{I²r׆?M&>\08.ޱZy l/o0Cxw3\;XNU㽏kBFw)yLҽȴ"7G%g-/-cwvI+@-PjMqQBm_!&8&z)ޜL#ҫf.mo$NL `*L(w#l'!qwVxNI&6s qFSQfepv#p g1H}s3~F2<]n"%eŌiKO$.[?`c/9;F@0#(8y-|JSi|TBnmaAmu|t~Ζk\pA#BҨc 8l K2*"Z*WcҏeP܈)GKO{*UaybdVU2 0 p@Ua&&#(}TǵG6[iêKF͝d5,i GVi΅hG[F[3@SV4NN?j5ԯϢJ2Geɡ?xO~\7|ȧ4U("};L%"6!'aia?^鵈P.U7DGKIdPm+1Ċ +2O>* ha{2>EpN;_**1ZEncJ'a HJ7R'?$Uux+ C+a8$6U~Y4-_ʹWPo,ywK^D4P}ryPc)8¬1 M$Aj^@~,O^]Ffu㜹s+ў"`IM>:KG'q{# kYzZ%:h 0MpL@9#>FZMݬDA9汃!_7Mlr`{a>=6fm\ ryBzN7`U9?t.+~|0k@~x1P`Sﮯ'ox%ҳ]OV (B슶oq(G4 %Eՠ721]w`CUɊ |h8P̖e步4;DH ;$fvG~,-b7d|m̔"ajOP >'(ш8WNo:-:KqTف~Prx\"dV![XR@qd:ɓ..(2w*AOY5 Rڪé/6lk´>S[1Bsu҅׶)՝a_Ó(5 k$ݛYi_=13O5@g$+r@NG+Ztm- PK1G7yXhMUq˩ٗY%.KS+yPn3= :K|<~؃2xFp@eRm$syΣBs#h(}^,\/w.w3cǙG^I:hMXW$E'7[ Ĵgt/-,dK=Z"j9bmJgRqJa^3\41NIv ^>5?!OG.-@ˠ_>Vfcy˓Ь b/T65a-]An)V-؄ ^[єp&S.D_zoQx8ȭ R,+}Z}ڹ Q-, ;=7Ub:0>-#)mFsјBy1 Y02 ѱ5TEx7)QTd[O?{.j[i=eNЍT&ExŎl&}'ٹbQ>' V8Uvl'-`&2qJM @ɩY[ V5C:O[R3$Pj.[rZ׽G{GJ,Y'T?k2n?Nʹw$ ~q4rX8qj SèH!]=BΩjqTmD}v gyd4Q#Qp-7*3UOR>]4mdkeś:DRz:·^B/ƪ߹G^L1P[9k`E`~Hҝ2*Θ:5BG^: cԌM\N>Q,,uo=N;H{寲n4F'H}'W'ԉr&opnƛAqgvT4:F"gؐyMdXqzE/ untף h2|6\gzCK#LjީL͙I!<dCV)t}eO=}1b:Wڬ #&~Y6(kO~~7LLw&#h(hBEE-jug7Q"ً]/qNTAsBEZWC!:N=/9zpg t2.hZuٺӔFÚqD3Rf֦& U[Z@N﨑=[4'pH7wpg,TAl!h?_KhٛYr@U%V̧c T # PQ:BG;p6xh. =ؓ_5ė do3\?^(i3c{ ?I&`#yr)aAEKEzBQ xݵsZ#3!g3.Nֻ\vIWp~5S*O1V Tm?,ULz8oeLsP< !ǵ[2ZeDžI" zyntCe>Ѷ0ݣ~m 6H;0~tk1p?2]"Gݦ<-!NL G4\[$?VOiNcx<"RtS:79-1fP Vʝ.Pq2@FLpYAvU$P5^vi,t@:_BbȴIʴ+0jfЄlw-Q#ZzTPF0 JJg)/<;7ct\nzIQzPu{X*O{a6g AnåXz2O%)eg7]<8pIrCJg2*9/M(RQk!o5vd lM&L(*m[HܠVa6!`gr C>a6ߺ5c*aͳdjkdfD@XjEu`$ QJ\#Arwa(8/gA-5xGZ;y{],MKH":/!DOX4\W5d}'6 ׂi>L2  Df "6MR%P}+\N ~ O!m˻4N!йy$mZ%/T9E6]<^ waoBHɤc{6NM!=ovL#/KS-JD`Wc\|f6]Pi s&Cu *?M&NcAfYܵwSd:q]f8^TW S)^TL!:+uJ!u~I^.玼8M/JƤm{E)C"*$S<~ڜGl:<>o RV;#.t"'u+9b4A \D Ϳ8H AV!a53t%Pw)!S|X訇-o8?<?<| Ű_T4Ճ3X}h!H- J?1&}?m#FjEHJX'V)Z([ vU?}e28ӦO-NelZ扷~8~1f5+w+[VX7{ :HÉI1d%]RhgΗ;ιVTn>;VTqTNf7|=bҠ'-o@mWF lZt󋻊D  2#W?cpu-I{1^<Ą} xbA]}4?տ`Qߨ =bf7~F ${"c<;v8|*VXzji)ðO-DߢOgzA||E}– 1!a$B{HAurC,N Se1C^#5n3}~ }I?#}oyeZO,`y2$2~%et %څTubLu~3N!hTe&rY]C:xQ@Q kb_جRL~or%2M $3܋ϖo@ÓG*,]pT{qoW }P.Yd!f=kq4YܦC򿋷6maXG-L3̊D[,Z ؎qy\|@$5Fnu0!x>flt‘惞p`Ų}፪YJف6(Aa]OY)q;t۱?>!' $?~M dt:Q|u3@$M%J.8/#2$]#warcOuc Kxњ!wxb__ -hzPYg=g$-c넆V-l3ۨ7~1eD\ @ruM"PV؛6P9++#9T$O:F*3)`򡸚[Í@<2E^vJ}%3Ca)h+(GIxC^i m}@I  r9(V<1Ƭ2J:&?+X xiP݌kFߤ] Uwc op =BUAh¹W,:4ѥDZF&jd }We̻Ka[E.]}.yqifk1CZF XS ;8my;l3E߈E W!e~g`՟ hm𯹇 \40;l)T+&>{=` LkFÒE..K8tBi $ 2P ?La/hڦ*j\>,o;+%׽,ۖx{͚:]Hd>7&.aaLh$^c^(3omw ·)R`vg\[vU'[KL Oo6ѱR4m~-gXdH @EI&d'Io Ǣ@vRFCD0SdΩQA ^G AM ""$Oh'l4. [~ wh ܝؓC%o3ץm i<_yPbSPAPceҭăy=}`;F(+uQccuJQYf.yK<1*pi  qG$(6p&֚X4b3f?y?7y:RW:ck&;SB,Ԍ*U!q zgYv<"\ Jnp:|pYo$)T n=\YSw-(\mZ-ﭜkh[$cspe?œnNQhp12NT &zsڞ'l\0RjFHC,ԺwC|U:?_>+R5@&RV~!k`.^X1F]]c#XCnTd!\OCƟZ潡lBPia& ՍgefFLm`iK(ҝ{OE8\H i{>f_$ GրId]|js]O? E'EA_E(YN8b[&|#Ÿ@9NvS/!dtORrOH1RG¦D#Y&! )4r9/rpTҤB" kmshx uY\h`x~J2k`~HVfdjJw6F%U<0 lAUF_ו~[s]aj }xwsׇ‡!899xee^ө7 і')^F)3 ~Yg-݂Tm ܼ'd+"HT)j>e[S7)M߯Ra&E9L jw\$ 4iPAcr̹JL Awo (ģӈUH6=72HEQ<`Ux6bQ~GH-hH?Vhb[(;"7{AЖ][.̒ r%V+H_#; Xn.q#m}|,T0)|ŇҗpJ'"rƃFi7bIS_hOp (k\έ+#&N``l1أ\ur78k,\x&X줲D vQg1v9].p(<t#$40dGaܤkp% &djT: ALGYO%ҘHjJ<7Gb*O ʴ7|IFX:^Tj.'82S_@+$#6|Smta.r<{KkyYoM8ײ={ںp-E@(No. K=cp0@+V\icvYQ;9޶_aLj7qZCrvrL\/$^tb%zyDRbLT:l0]tc5e_I+D, ٰ%:X7K-ZfpZ\?*o`;T7`sC4;Sk&3`do@)ddX!Fzua mop0CIןC1F~ PT!$1kW|Q#piBbVU!JAX҉B;r\畴ewp}N yVs}'uqx#l_&҄B`UPB}4yXpʼnycUp]IЭmfK=tswFKg;y*\ɜ1 yL-<-x4+Ժ׷:VZNt+_n Sp+w1(6\g2xR$[A*2]]X@w:?@N/JIı[,bٳG2zC9.=ƚQ) W{;-kn `߸{hwnV>^hP,17S32}PMp:@:~IxЗ3e:j tٛGnMUmCxz3hU ?RX%&PV! WpᩗQ۝n ΒDJK!`@ۡIxʗIӮSSY-{,.gXu)j^94 l V bƏ|e_`6m絤lTOEq!ey,0rZ,\ƢSQ&Z'tTVXLfE@"GO|z e_*F: =xRuE][ *A*]2Z-gΑ{N> >cQ//ԷW3"J ̷2#ղ5s`7=| ƗaiuyU^ygs/>溡ڠ-V_0s"{z/X \7smj"CUeȷq:[0hWEʼn5)c!y 1x +s |Oݍւ!孊)N[?Qv>P Ml5;һř4,54"~mWeN[ ^8{.Ulz4 1HſĶyVgLw㏳ < XNsU 5/O'.*LKveEb2RuM6KowǵZPgμ?I\G;6xB J0(jk-E9ЫYgӛ3uZ$gowab]i;=L6c:XLU(Ɋ{s%*.=%ԜrZ8 ʧvD0ֳ{n^)vBh5>إ^:GC<q>&3.#|^@zȈ]Wdޭ!4 dK=\gq_81=)yVaj QrOBKx'9dh=0OX|5KpaF+:$"=KgMHp7"lw$Fɬ[6bDۅ4g3I~p#sՄUx=lُ{6•ҭQ[JSʘ1_DwquD 8!tg_>4t eδFeDtdmZn9g_9\JX6/LjTEB ]\^U>gij"66\DH`yMB;|%"; @o1ޡ CX ʩ-A6~ڎYQ]OE^[S"J~J=yEPQ 컰(h;Ͻ\:h_@ę6{μLe131i>8`~aHI̒wANĕ.׽QwWz-['"#E ` #xMC\7uQr/l={MhJl#(/P2Vg0qD}WQ[x<[Pl?TU9^,Ts`$`T~hLJW"vhWlS<Хv ؝;Y1]P1S#+{\~\ӐьoSwWݸ%CΔ пbz_7QK(B0 Kx+%k BtnMTyUUo·C!0u,H[q 5RT\YSa/n[hGUA(%2z|w~CI>` q3:պG qBUCWig! lGTR cR;,=w 4!"̇RW>EF`.9`sȵz 3{ Xdp)w92 PFJFB@Z[#ZG,U*93NEcBKqY9z^dɵ8ZCd)EtSƟu=^?)-䪙"Tzlq53~6?f['?hѹ>ܽ'śBTPن%[ϕAb)fgObk:&1O*.> ǀ9n.֭NOc8ΤQXBNI1J$#|e܍FܿI\) 'X8|^:`@`k<)LJ־/x0z G Uĩ|aJwd c~mFZ' U1j'ه)w%C7#@M}0iXNpgՓs(.d$]up. 0|hlI,,2smK;k 9c̲eM g tL8rHq [é|hPj2nrWE'ցhxc)XnXsXT9!JpIՁu|ZED;w'J};Y3sDCx3V3e㸩Z찶Ciĕ. ieWi8OtSvG=\K̂;,P*R~g ]0 TkK8eܣDX?&/5cN%' $^rw('WHos#Q >f50Pq`7a;=WMKg}A Y);ƀiii(wC׶FfCt'' $C0Vyi|;Ȍvw7iBuєXRp{òT_G9A7*)ڋ^dpNBkF? $R N$LvZ~l,@b847iI$z&im$Õڊɟo^ Zր]R},3rz5^Ʀoa& A&3!A:1%fImmn p.ȵ¤_s/T20DQArC#[P^!@$9Abm}[iVw:-eM|¤⟭>GǨ"M iUGh%<~HxՖNIqHF@&f` R$Wxٔ\0_wEf$;s}iD<{@Z&64yv+Y շh6q ?AZ4]OUk'IB1н*yͨm+LqbgDAo #*Zq&zCН"zdlDzq2ʦ@Af$.^-[|(5!LKomВ㖭e._ch|~+ZxyWp^}wl }$JSKJJWCaJEaXg[JT%.zN@=yt?  i$ ]?p5e[5}-Up=Eʢ;x7%qqO% lT;DC!j_B$ݫzQДImLn?rIv̼xL-L|ːE'wa|.av7&Ӧ1Wo-J\ro r/e*μ)qP6r5 L}t갉[Zt .. *PQǃ(ĩ 5݀Selsɇ[Ez9FCe~f 冨͔}TPAh;cu 6r&O~ D4U x8v'+3;QR_!Y>1fUE :B&|VUS=&= P{ '~=BmypXxJjv7tCNU&XY&L^Ƨp9g 1&Z&ED/vIӺQ볚=HZq2kyѬ^J4sReۂzwAֵٚ-h*u{:5 H%D*DHj|RC31ĪS`")ǒϚH]-ܚd:hr~:6"SmP'D\z/AٰbK@sDc~V qblovm8XZdG۞~5[u ~MQ9L)7*˓` $D~ Kz ֥A?.>)z*)FQMy )gc ?B>GC^$YeV|h8K&6=NI+ :6wZ>Bz1ʟ % 2#,ԾLODk7#YǕ -ͳϘ=Do)Gm!ex `|p2Z'hXXkK#ʓgw9,Oݔ4P"M?c+-e}t|Ji{e獒NR):n=8lQYSF_t2"elX&?8*Gw6JWdhQL^Vڎ[BZJf6sD˖7NsT 28mWi@(r ю.sMmo8G;۠3AP_~Ln 5BF=7Y0e|HUu|4IE=G.&0YgQaýoNW5t9qw^AlR 6G[[~Q~=C1zEFEMgVa8IR ?ˁa9ׂ`?Xdoj@c׸D[KDY8 ʯ.r|² !?Roׯ-i}![4}m0ODAОl\|;6{@f5 *x"F 7AMe.x?>Y9O!tr,)^,l[*VvK4Lpfa@c>9B3jN}U_tK5EΪm BIT``LtMV] "}tB15lxj_g)y륌N#Ȍe S$1)#BSȀJ#\E@ $ u/Z &Jun훯jgjM%cдP&Mjys~_Vܴ491Q/͘*\nqkέǥbwg8c(`:-#XU<{*]fWcWE:Nْ8ؼe Om O͌񵾍 n ]t7 m&#Z;9n.p^wu_vg#F±_BXTGVֱF.h+\% at]Nj|]|M Sgm4LnNBC< HGJ;й>02du_؝rbEqH7K8.A;?gSC3h|,&V<-|ZY4<76ԪJBp4B@f Vشҫqt#qo⏇4ZӦۖ=TqN7a='m2S Wj%<٢e\'(ƩW 9== z wv}N ; 5E es72T8^_]𢡊s;}!9a$U|Y;Fʯ|;$YlhҔnhůﻨFC48ӋL*G~xYm : O71|eZm=dRͳ=a`lT1`+QKEV`*e}5^YN{%M}9>pL/;ϵbe;fa~%֯LId+OAeC<3B&D9ޟqG2j)%+54:8@+)XX iaRå}א'#}JfAM~O()iE[[,䄶,#8ְWD[:̉BapCo5}9JB1xʯ Vq>شep# oȠy$/QGVaĈƘ/PK:H+RM>@ h^ҳ,Z8@zUgB]6$-PXȃGb~ "zPcʀ :a,.Uz9ZkJכeq5&lOwhl"|| =BIaAʼ(B(ó(o.?PH=:(4] ` hc ŰEU/𱸐,J❅i*A}d`^ h 퀥nf,ĩDŽեrk~ @U,8gV֖&y뗛Z9'do5epFe-iY"q[pM6>jPGf4$|xVsh~ @ukJ=z4mpX6"  TGLYQ|l雎1e/4JtLGJ@2/ VdmJŎ;NKG@=KvZ{տ?DA>dh_t{JS6cBPeCr#va_{\2RمLgZ;0]5nLiVyBu{_>\[.VH2R}T .FpR^>bY^[GUJs>\KǓ$!g@*PEqqŁ޶χ0>'1`K?YAoX̸KgfnExm'Qw<1=Bm2fOZ`H3ngqK_/w#+ܨڢ_ej1>b 0o4c.kuO6nsUx@=zz(/|I5Sq*Q(b4}O7Il-a> Jr5Ș5خau5EUny+.^3IҚdGckxp[HXΔcd^$3-KMqz{dfc& i]NF;n@ʲ`kS7quADl-S ΜeOn~E+ypᴭzpOD$R*6oqq,rdƕ/"Z"! Wō id? Lnށ@ZHQ^HMdݵ4oЯϜ(]KVwO?A?qc;$h25AW#g+K*F=9!1^9mǂ,̐|{GAB2H` 0_Z?`Gg TftxoB8LzU5b/*@e1~6&54|(8޸vQfMwP;~%ͪ> OmsJq=hXU"DI ƧA' ._x;ߙU&?7ɤO ցǙ-4J1 őNӦtLe|W܎w/hYEӢXdyCL"Di9b`-Rjp6-6$Zr3wcj-t&Sew7fa8F<@ _vA gXaC vыR`,&h&$BDkH͊Y}:vf*u_E"\>@}6f՗8}?\!v_rf-YJɂ]t3LB9T!]T$\쪘UFYL?fJF$z]S]NkR3#D~A'6Ѫ0!ⲣVE;gGr`|mJDwd#hLL~(Lk2i \CMKۀ\:C~-r`od3_[t!Id"yЄp cTǣuLqxە^,)ǏOp6IJa/7o]5K_3SpYJSsN*V w%VSEl.]ITiXK >Oa[Z.^=9.YĐZsD Í(HT8E)ޣ~ _G 4b`|ZR۔UYoE?G5B8'NqW)+B*H`yQN\6`I ֝6Q2xaȝ(|E(9{AHeE/Ryh_4c%z{>kPLzk'x28y:2h\TtBIag;> # YBۼuO 0ǦKa?H,oMcJk^?xQҗ }hJ1KGEe?gp\p<(d0{J {8iX3ťQ, ˲M$LZv@dn/Bv&|S?]4ZxPadd!A0,Y17!\r0 CCbiSR_P.%-O >ǂ^ZU|i彨x  !%$@yÿak:jgÄk~wpQ v==!2m.^ǀkHiNNN|z%fo X` ]|Qy&ؤTz R^ږwB0oCx1} W.`98ig1@Xzvwm) ˂5e䬁ķ+|Ʈ(/CaPli B>D߮2+X 1{wܷ1 =qQeI~%?`IN$wA~P\)s@OQ́["Kxơ;wW!gs'}֥XH"f9*1P@Dhhhg"m niJ`/+ĸ&OlTE%dE54zvz+p/Jlփ6Ƨ1n f?VoTx 7/; z EۢRܩS宮QVnԛDkO ,x2IӊҁЛTt4N(s!V7gkq8 Wq :K{X8.[-GGd B1(ep4+Ȑ"wz5[u fc?hr.H "y=]AMD%+D"u_l=$yM96{jl6wYP_+T0[Hfn  v^x[ar 60{( XC9Օ& kBq+pT <*B0>kcN/r|)w#Ph`?A- 5bh3qrጭ%YJEpeXߗ2PUgБ@)rSA2k7W"V^EhYm5$L&?wLxԵ9sboFo B<'*w/PJiotLTTG êupmQʤn%VثeVh<ĠҭOIOu)~f#SkXh;+bN.)9Goj0cPHY~0?=VmwXL0:Q :5zʯ>lɹ([ƵpMWsQm7XJ8kd~*?SZ7B>Z*1kQ WI V`"cvJ}ٵ ?me SoDR;pK=jz6C ybEv<F_>8.{.:>aw,c"HhͨXzhkk*,bc+D9m8n 1~h:%t1lYJ`-ANs0;t_>ZTYL:5B8)R'Tѹu i~Y ! ΧkQ)ѻF>aLIiR'bʣ2c`n`f磉eo8Kj(PT!X#Oo ?r][ F<ڲJB2^5:G7f{g4/G;푦M0[6v1r[OYx(ظXKS2-`pv(r]&yXւ~yؽ p6ZQ ^|?7]ӿb95 n:L<,+"@|9q5˿J,P_*mG?hWoP5QO,^/&!t)*1\fP2G*+r~zښxUq; Bra%1>qS:|Ű[8>Qcj7I^c h mPSD8$o5Am$v+?Xts!vKx.fUhz9eono!3F-,7LH8 /J=$EoyoTiBGon`*ǫLqBO e#k\4},11ܣAMwn4d~R9spnGCR<Qsm ٍ*+vZ$ֱ>BKT2rᲲ3H73VMdJyU['DWP܋&4dR9h/vb}@@g\[@RԺ)/h2',MlW!p&2/#H]"B_G.OdeiR<@a2IDvg'2iIL{0C Pg;G\DfXDn5 M0-W1*QV_z]l`)yo 6494 ɝKr;@/ǹLQ!bۡ+*11 Lxٮ4 ?=[Wb #(%!t:S)cS8⎤*4F͑uq;+HPRv0f- CO r (?u6.Q u,/mلqH" f*~뫎Aj}L7q;4x=Ǝ>,C$?ߪKfN^x"0WYnYnPsv0lCd;PHRnRKtK|6|e/.gb=\ޭ2JWԌ4,L]k.Z|WNJI2L7\~y lϴ6Ƙ84CnpgLg !@STQ.tTdK0jBv>G- Iब때 M_Y?~QoωKWGq xJf~$LҰ)"Od8\/.(:C(J[)‡鳒NTr BHا.o#&{f#&&WM~_*Y 9mtv=6aD@[Mw#ZAʠ4TPwI% /4,Q z||X |pz} ] 0.Dǀ XMiʙ(UtUp>Uri^ix-T>:peʸ\ᱞȔP:]UgnS/G`w>0A VK1x8]-6!nӮs VN!,V[*RNSY Zt3tp/q==8-?l3z-ARRl2"Uh H)В&𢺻)O醠L/O4b)ƺ!B  x@fj710"< ݅4KBC503rwhW'ag ! D?Ufc8d3iƅGH)OtGՌF#hg:2y^FLP̤#뫸+yZ[(1T9 #uWC <äӤ˨FQŁtcО Fl$,_qʼni.s\cW7v9hqwwxV*qq6amZiMfTwRNu:jE W"U+y51ΨJ'kx0z[. Hػ8p: H &yh.Ьت]%a/b&<}O%t3}4hY" [eq؇Z"B8JJ2~ĥhPM”5i^v@ud#bM>;rg;(ڹX<(-z)g}ɝ@dh/Y*?5ՑJ) ZL^.g[ZjMM(dkxn3p-WaGZ};t azhz>ǦIQ2BԶ>D'E)P@@4hwuC궵rM ͧR'᫔$ȃdܺ*z:__a1{/<r 0H#y@$y8B2ungy ˝bcc%61m+aNY:ڪx{PO+wAތ3=F]f Pq>7/C%'Rewu-z)ׇtp.V7`Mr5X4xZ"OϠw+#$vƜuT 6[x3-Ja,$GW/m (!iE\mij|=7Ĭ$K> S'.u- CIJBoEgPvr1HGɖrT2)Ȥ X͏祜Ż;] 1g|K#%PUb䨔7"'CbyƗpt-R8<2~>^c=^Lh_KkɕD֏DQFj*ҰٿChBZ5CUW N6qk] 5v_GۯY&ir[oʋ;%?%Gx;ҢB`r~zAN ޔ8EdI3ȂdO7S'/. 倍bˌ=oF1TYl Z`Ăwe΀UcTB_ҋ @K(|{{&'j7:wB&]:;#܃Xb9>y'Z'*.iua?)zp{t~VaTUa3E;,nW!] se>`[0so>P]ߚ)}̻!ϱUM.Y0͝"Ga4̇mV634i~iZ}gk]s8H):k^5[S%>E:?Z}'{aˎpڠ굊Kġe4 vtta덞|qJ} Se5VٖI P"cNaP휡L !6JLEYxhjm[-3D}rO͞GK͟Mc5(ѣ%YÎDc/ex8͞Ϥ_܋^VSS[= -BjkkC U'v59Ew4viЧ'7 "XT@g/tB,rvxIN{*+ sS( Tѹŭ*;çZR ke~9fZh}!ݝA (Z$duscoBx-PK"%yd{!űx`iQbvkzYSge$Qv -:L h%n^p^f$c,iw2H3"G+5U0$6iu/57[WpCLR1pFdB8qgy9"&EJ sFoӍH&Zg=?b4%ET98ПByRCvK&d#N4i\[%MڃE]l䘴eh܅ *PͭB0 %sv;( !)_`1nPNL)jW=ڹ8S&"mO|kx:g vJTREuBoגWeO: 7Xv^6 Niɽ- 0;"ceXDNY7tfp.ko?Ej(SOEv\o\5q{4C,Us{ePɂkQ*Qmz e!5_r 9(o ϩD7 9R_am1ur(Z>9{^`R(&P_,k5 .VCzPjow*iK'!xs\̤P&,Z&*>ف4q&fЌ//E(3iI"d_tG[2}6޼lR%l (LI& }[gp8A:5PPD(+tK cuߍNmyY E:sh${x-7ҷyʍN2܋w& $2=7tw<I@:վf2 zm i7:lEo" ^ F' .E`RUQl勎9;s8AHN]\`=4w>&!` TS2+ݓuKkի`A7ok(TMxmHl.u9>lWPF%DЖٍY$c@kΝ@OF;Y#Eݣa>3wC )[ˡT |.ꞽXE-/*7B%Pz=oY9-d9S G$؁ I"h+rJmbV,݇f^j6c\%N[U O^&r#1XVCΈ^9d6TypI\R gGmyMip<wsUnmzh{G?U=3M(F5&3D.-#acge\<<>z{ӴUAc%A[ b1&fk6#o1Xx5FkO4dž)%dnAksfzz"mYj ݸغY;XX͐Q%rl?a"q5܁oYחp5O38CowL+_Z#e7;)7bw6HTjׁ|PwF!rK5)scima`fA :I?z8_Kaθ>l33.`9IP͵:`vZ6Som4yj\[q->/&:B>O6U _ EsGgz(sm;8\O,+0L0:B1ʿba \KloCF V^8Ppu#R DVX^:YlU޹JQi/L()ԡKv4VOEBGwbonl5\`u'c 6l.`5 >1>/pwvOkhnaݓY ` ]C)-w&bƠWDQV䮓 +TX qZ=Br } [ &@?4pM!/.w=@&gN!18Rk௚xqϠ:z4pvÓm'^YLjSmr4`f'Kݧ!Y|3..,~s …M;݀CȰ6@jo$2ժ2WzGL#ŋc2fɓk1Fn)15PxA!qS쪢Q+:GVGVP1EF`5tw|d'ة "NV6\L1Ίֹ. 2_4gXU|rF"=nO>ـC_l?b e a59)*VtW1NI-uuV|Rvs99:iCOIU90kO3E帧x66z\Ť@ƯrGZ͆(PI?=]P ңDvN ?r~ap$zAuɕ(lb{i:9܃ďhL[$GyM yq? X,:W\c\RT{n+II0ONβu*x[ϊV_r0;fξ Y8[jjJHOn0U V;/Gg#U᨝ocqY0"in֏ג}8!_MJ)EP,7FT\rɏu7N>Sd[IrWptUx?{}VYk=+fjG'u63;Ⴘdք聶d73z=E|%S>'@-C l39G8DErEMK8}4ma:I qɺǔL@jSb@ ^'D^0 Y[4506*>;q}ubϸ@L3{6k:8?z6ͽ %˛r{^sjuXr}ǚÍ `UZU-IÓ ' c-i(t ps,28tɘ2yIeSE({xI܈;2lgݩ"&*Y ܦ:K^FZ^Sح&?2-Y籐Ld?}?`eza  ?(Z!lg9 [5VjqouR|yV^Hp)HgJOU^Ӟ^XܿW,CC7 r,}٩=)Lj2@RFB@I(f9bU$DK+ngp9ҹY5uٵҩ6_;`k]',*WC꫒`+Ft0Џܪ\o<+hM4ZKհU]חDOF8/WE p]22p~=3'oAHĩP ?2na/vcjvg>u(.l*%ǘˁ]W0@S vIMe[phɅNNjx2}Oc '9ɭ˴ͨʥaw&6W{F\Bkޮfu7Sy=Ngg(D9N3_#8m?\ll)>ڳ|:h༉3s2GC]<6uEsYKJ$d[ !P&O#W; Wt1fPCb PBA14rcD W1 CSAW#{Usi'@4vpUjvԎrKH4xT2)Dm"zPpc3M j)#;n8cS^0z຺~ zr#Թ:X)+Cq[} =8@ƑEM1!m⌥`$HNWqg#X r% RYhvydS')yN[f_NMgnc׎3*Vm:%'}IuYxRsd#.K%ޘEnՄV .Y[:(4l=mp).V) #au)~ ͭOՇ\r*RЫZ,|_\8Cvd VH";0_Lh%(#,ٰD"OPM'b忐+Acl#+u{nA ME,OwX}-t}"8}ׂ;J>D(‘M.&|-!23?q]:5E6H;.RTT; q8-diLCbɡA@gzI(o#2*m+F?ݑ-ѰʍUoӳne5p.[Q"iqMqnpM3Ǭ5\|y&qжz]!y|YTi"_roE>Bfr]8.=?j|1Wm@6+izS.0$6 *马 A>`9O~Bl0p- h/Dz hיo[s_5,Łi>f0$|ߧ~B-ï]X]@pe"A GYl`("BKZ|aXՖi(b+͍o(y/l0QtL0Gb'h4s!N˻~Bcd]o\R%@c@8i4(>}]rʄ9|<|eALdƀ 9¼[Ř8/V&qcnZ\Ҫ8̣Vɧ@P{Y;6"*YY~ w+|G/8hRMɑー{zJRenSʣɡɏ~OŔ(4'p>c0P%Y ߻/"ݬ&?@ u>~ X&*{/k(eʭ h"Dbm%X.Y `ޜylOTRn,kPr#kO|UqL {#UZ:mx!Akw/fuRS]K056alChx-A^eHpa> gL^LpJ(䛟 /U5閭]SJv]9췄RŅgjoӓ3̻fkh:'¤Glꗨ/,$jK+'2t{'/Bym@$ty.}K$Bֵdo~凇ŏ(>u*!ȳ]lA}Zm0|~sʝ!la!?gۆҧ%2|4B'hkryB 㼪NPC2Y?n6E[=]mZ*Z#{64-?"1~NVw?^MNz9=窱ƩsmQY$(vB1SbRbLPx vQQr?pC7QR!A!{O!XS* 28,j~Nh  <Ϣ,+ !K{߸&jey1a\WGba< bc0 {צ K=9@6~*>T Z]W@)OY9uW.85|A,OJ \dt,W@ŀHnCwNM1 *]:'3LXϿ4chg!7-(3lvLJǟ!-]3 v;iKep Pt[7Cy0ue0&ǡ@H"c{"ISƹ-mRZ UI$'h jZmѳ{X0+¤TxzzPhnO-r#2aNbJ~w QJc#p64S:8*^"i.+sZג520bpҭ~$%$IgY\~0DiU=Lsp&MKHt|ݮO:&sRx8 <$)y& xђ)Ɛ91@:A e9]V!72miBDmND,QwQp $+>@p}g^7᛼|\n=tjӕPhud-|hVJ#($0@J?,o<1\j{uc7| o 6waleK,ȋg Reɉ1J& &Dq0]^ 3+[Y |E֜r-2ybXgvm7IGujg~|f*%&(-HCOf/K '~4C'vi;Aφ$ڻu4QJe{d8Ӳs ز̴ ;'XS+nn br$WW Հx?6l W K&7z G{ )$h^ᲊ}.J K_74Ϳ\dwgC^lhVH]7 cZXǞ}PZA=)\#{ 9Ж4}F`s8YLRPͥf~8<s!1UFlT=vew!6ߕUn1 HG9<_` 5-p.׳ü^ȩ `&kɆdbh-_JV兄H(fja6-I]Dk:LnFA?ZVPfmo =ҵ 5#c.ݟ.RBG VW0rKRaktQaTR/}}tpg{Fl]n9S7R503'؍/|,*0MP 5Rt呅C2u=|%6?aot<5s0o{nɔ@sSC#n'gKhA %&BC[P^K_n42  ӂic⨪=LWnwt?UԮgk#4eŲ;S$WeUiaJԁ00@!4.WYϮ/DU$66[p*YJDv|>)9|3XƠ G_ɢ:5"<٩ T  XXQ!-@,<{tqppt)n )Z9հTRkPѼLvd\c6(Z[xXu2⣠R+ Sv"FAXM"vp4@6=7K<*c ľbPYJ+_ȻN|7a@ڊ;B,5%y($wZ/T$V%[lQo #l ]>X٦(,d_;wZ-dZ퀷1XΔHlҞe"sY{Lqj))g+ZyS@5\ @oeS~Vy_ފ\g[ê+tC BΉu&bq$MJb}5[C6ҎEd ]`K.8 MU9iK2@'\ 1aa=(3@ bRO#?׫6UrPY[*r}N}q=07]cLi @#p6z]K2d*-.[㷶cN"I]TO4 V8+S7,P )c+ 9΍X^m-[X$1[d\ة ~U앺\$ÌRu)f]e$jkM p ((4^g b~NS-Sy(NG ny&˧.NHo0%>9xc6p!Kho\r6)!"nHA[#pHNU-֖lCVAq 97&S-4ZIWS*nG# JCoC%<*V<+4TM88f[{î%NhjhgC-ז#ZMtb_w~^?O]D#@s8&e_VT^7):l%HV;H'{ky_!Ej-tCuMU}]ʪg~Z롱(imްzC"2(VcSqC> SR?W40lq=)B0\w b9V dx;V;D=}I`jż0q^tO.T#$FAO&K;ߚHZQY0lm'9̊'t'-adyYE1*iws)7Ey<$ '|+gXWz8Vfs^ض _B O,u5O|8@q-z0$n,\% W?2-G""BYHύ`ܦvHSH$bLw\9y?JL T1$OLNDuEJzצд$ ydAȽ;*`cR%{DzFg}6{AKVRL&D쾶4e\EKB< RT!GtL~P?ިYД{Wgo׾-۷Y|X"\:f0h=WJ?я̓7="be 7*,|,1pd_%0m |׆>u]vsܯ4dC[&jLmMW r3=Q0: 1'"w=m4Fdy79#c4G@FcL/ᄂko}JL9ܑt-DHOd~jcio< bmڷI*q7*A\zD jЦ?j+̋_{k9[䄑~>c_Տ8u8tAL^74{?VK@YVgs_gG|sy^Hzu7!=Bt3|pX/[`JsOY ~ܟsL. rsٕ2q}I _0֒zP+ Ƒq!땞ݲ@zZ{}@@v>Vq=&#QT>'+aGЏZl{Q41ֆ=ߏR\ [87Wv*NjeXv 0v?l#˦\8?7IS67@P2#?O i2;i0et0+<_L(oHB(r>)!U-H׬^\<>`tZY? m<QލcBGF#DRҷ9فy01{tyk)\~(Z,V:,~&]X…ց|`@*o`5*lbV:hkZM39ÊpTH%JN1U°D`I@^5ر ^RKƇٵ`> WC\??GHT\{C;+W'D~! u/OD'g2H g\KS?xpۿ{Tu ~k'qQp'-xt)cˡ:_ Fq=ňOblW;хH7stIʶJeWfׁ fiwA|)mW5$Fvj=^o-P.Xy(k'| ;.)f 0ݪD^xE$qEB}8taMtDŕ1 ۉOPLdW5b}\W|!ₛMR.^+ɅoTT@AN<oT#T譴 t1j2<ةWK6EzŪ - f|Hp^?@KآziX"=r`:tC=}u¢,.GJg  u,us78o1"LS!k?–}yfK+}2ˀ%E@L [˖} P:WsEļ[aT (>9Bi0 =]]0?i )j 8sB @];Ȓ0WQDvݝ,b|S;jz܆mơ9\"9\鈬[=G"+^`#P IfnPx Xa>][)ڨ>[w)Cځk5 'O4?;T}nڔ8"!f("6|;?HRj:3gX6pjLJIUe/6TJiA7tUUӘb^2M"6W 75B%HU2 hF q@zCZkCc)kƚ cbX k_E |xGvU#T>4[t2C!}?KDh" {&T osZ_zMDv-b ;c{3N˲_KI/Q~49ZyDbhўZoLwU?^\GÏAO]?#l]ǥҶEM8)JJSEʾY"Nϝܙ^IUXPqXWy:8{XsA_(+' {ƜLks@<{q[tg=w1Dd_(,y0Wi)s)˿bCfU>Ș_UiO(@JlHp1w&wِ^۷H:c}6"Ua$!``K5jWTO)RuZU*h!()ֈ53#eᆳH"D刣‚La_e~:`vx5ܑԔӞ(::5u( \@Mشݻ\90JU I&yxawuE$ۏ)&N˶(}V-K>`N w='g(q56RxAg_ed5'<,OȣX37jټ&WdF}uWA rAtԵ=w[ck4%Aef}$g%݇? Ga 9w,,;=Z[y΍$'}6c`~@"v <38Ж49bf: 1gr>YsӶA&enrY't*Ok[Lt&bQ.ng ߿*IcfFNcoEj 4dXYD5$#%V6ɷz < ;B}:F)ti@s6Ջu©ʄFB$ |`ԍ6yẢ"2'9g`Mtp,*-z% HSv1;-e& )%ah(UH0*N={URwͪMFlqs] v2!;DF!԰$a cC>f#XeT6Җ.2QB /U= mb` (×K9\# `V^‡ˍpVdeAW=4Vi8\paq水_.3'Q0=3׷HKXM%/x:O%j7>gE/-ەQΆKcX n ӳƈoBM0=/"3Wd} "[u5>=N݁RlT9HH_:}+_,=>h2lO":۱#- '<[%ijDI.ӰUp O[}* \j,~! ϰbU[ cߠحMؿcuvC{2zo!@iʯ KpX k1''nVO>1lZ 4#U98]h%4hX":>5.,aTgiKPd[틸譳TU): Kc6 LWVD+6e+P󼝻FX})O;FL$ܷG(c)slukuc|/E͏S% Y^T=9ʒW`[F9dj-=f["QNЇ + i k#-MmY>Qmnz)48&jÊA0#&]5[B#@CJV ]M1wU<SJnɲFP٬pO&ձ:m1ؠ>A5o8~z\CE2]{e!%-pC lMW4}Y%Y"I0cWCV\2x/Ťu8i+2fXzm'.F[5^YE=(B,=49 2jU,]dCXvD_WO?@|/'C>E_jdS@t`:Qz43ٺC lØM~,<`w'V6 ~4EnkA%r&,9&Ly:~I)boUZ޿i ~+ӥWF4\vb R4PbQC |2Fn溞`2P7R%|0!E]Z < "ATU1i}l4 bV`k"lH` -.̈-'i*q+AlYLV-MqgTUnQbLrDǙu=a 7GH&-hC!1%M }hnzXx=!5݃R;6M|Vxw`SX=!JCNsLEA/՘Iw-p2@#ڬ^v,u4_RjV@4r,k|2{ZwjY2KqL3bϜ-W!s@mهPr$fژWvA7;TԷZ&)v+g#^9 M؄%3/LQBd}^z9e0ZrR0ўcfc0+E"L&T;$7!iOAǺbAILG]n/P0,.G?!cԄ3B"{ - ntUC ?=\ =~E,Q&xpVq,"lV!q1.C-]ߠđP<_=6Nt:W&/ /y$W !B܋Rތo58vxȎ^NcYQg/9Xk$&=I0u_X*ͫd$ZƐEՀf;U#Ch_ёAo(oH N_+ڧ[tB͇BXF{'E-#ad=%nrn`S ,db .43둃JAh-_i:<_a/U]ךۑgکZK#XK `d=%;R7L ':#=ibOWe*:=}=&NˡR0ϋOa_nO@^kZORJbY/%k S•HY9h̞_,AD+b3&vT@iHRm#XV! z6I /?z4OOg>(,D rZźSQf:Ek}'BpN=TƏa9kGs X/4Pȱ/8yYpޗ)ֈWpNv/E@84Vqv|F;> ueRw*7t6|*vF 2i'[ߡ`r}u m{8ϯƈ%Zz᷅ X>I1hd?bZkeBF%HNI*ğSIJ"(r!]kOީcxcm5aR_!%{gN^tg]|GAGu7΃j֠Ks &z9G}XEnaAukQK] :61&8/ tfH^ęr XZ040.;O!9SmAu\e01r:oP㹞^xw[6oh^~GAll3HnMuPW"N8GOMMf4hZ.iʘ㼖21“pq7^.ƏteSMn`pЯs= H&S%D$4`P;*߲'\tuݙ<$:MN@e 524 dL.>QR 6owDK­%5ǝtcM v:G~#wE+Ǝ{y,BJ=>ͳbv@GL[Pm+QfJ5Fۈ=cB6?m-?),Ac#D7 4'x8\?X,bKwkSx+K, <,EZsѪU-K+"b%m]_9&dYjEHQSsp7mxs8|p)4Wn![v6Zav|9B{LGv[*5%$WyG2]R&Z )!jCWBbNvk"ؤ,V3iҍ(Mybf; qs0vWfDem w[se t3 ʁQNV}[Ą[y%#!b pj'衋> <Q{ԟI c?֏C@Eb-@ *k7GT'(o^׼-2~Trg*raKo+N ELZ憍j&.q~6$!f:m GKPc]2,l5^n"nm=nv8diψN 99a-zP`.}bog Sy٢9fCH>6tO*|꺊22 #~eIJmz<(*ٰ~K jʱwduN`[~蝦<^mQv:v3Q\`t"Nrr;e]V ioDd˻W8Ĺp TcFg^6 Y_*pR_GOâCzb ,a+ X7z-9)miJlB}-daA3 haln+gj0Rs/K(PfѭF۔Wf&qV0%C#ZBxBX2_}.qq D՛25%C,Yؙ c,3#:px-5Kdq֠p~Ps!X$x4/'-M^jσi-gY) iwDhq/ywHa̳FHuC?{;h,>)Ź`w| d0i- M/`@v%'WZ"25Wx7d`>b]Zj&ᤪۃ,gSGLQB! .tl+Nq|RA$wlHS FC*oz" :`Il X %~[Y+mˀzt\;]nG('> _=M!zϧ Aer~5QvYp?T0?&3x Q!%i06DbVLϭ/Zvr"£5VL@ʾΆ}Y s~W $1m`z|b t2t֝V ˲ك`]1X~G+mx [B1sΝ" !c7$վ~};٧~Ȋ1ֳW_Ԍ¨RY(H4KB7U"A2(е $nW {pnn峕aNRqi4Bds3bekሔ<0PgD?4,R@=nS.o3P 7Ee{i:5k@7FBd>^(E]fM@V&8Ke|aY,&%mxOM7jbfJo姲>XfEDgbLyS8%w>+7H<^0yȋ$z(z:9H>wC(5:吊Kҳ]IO}]l㎒:vVVMY{)Upk I5@X8@Hw8TWXuk_6}S.i` B}g9owy2G$Â{nݧtƈg~V輽 ,0jfB U$J ~2p`o@?#`ݖu(7/!(ME\twX/ kJS(j~?Ō z<癩ynn P술NS[o\!FIMp1\GL Q{xKO_Unxt/j 5(s4̘uw!;"[fWj*D3̼?[8/v2*lVڨsU]N$ݠ:/ 3c1h!DVެЍz33(;brM Ϥ8RTY=vK1 K53՚< MG0?jS`\I( s|0s %Unb7քO䑈.T;ٮԨڐ tyhXT%]>N:9R,.]¸9D=,,͘*l3l8Tp qQ|u.ȝPo" ` ۯ㦧ig.E2O=$3fAlZ\ vÿΆΌq]AT4sqm3j&rla錁۽ƨRg}>8N;i؆10LdrUr{3S 0$'P-'-bdSvpHFGhJ.Q{^ȿzZSP.Ͷcɲ ,0B1t?) M"F1_@Jl=~u{BNCe|3U=6,VIȜ2AQ!¡']K &^+nT % ~oiGSc`{ny~Fc7M&t;-m I9ЁpEi= ?GoBVS-Ctl( Aۮ@ŭrZ":o'U7ERJ,Wmah:'!Qءժc{K+v<17Va(A)m<:n  6]WV/(,oX(D3x\~) }O%Ԑywr(<}kkfdvv؈%7v{I)v U?*H-߿{S!!>+& Φ0YALk Mst<~shRșǘ gl63T1@5*iABRSFW[hzʧ-3cLB59*9rJbPY>-*5;n$"áÂ@,z qm<_|tDr!R Y"K=/0+ƭ *t\ c+ZCβe=&=G r.Q+=PqRtB:co6# 5ʁsE: !GV$YzSBS zF6IKș!隅ƙ|[V16cK%')&]Q#eC@ڑUgGhʑ[Hgڝ@uI]X6 $˦ 9ve'+`#dojmf]]/`_xt R}A54ʃOYs|Qa?԰ *&?.G@F-Jݦ@|M{SqF9SꞸpƁ0G+pXbʢ kP$] wyL} ]~kyKAnO|\ *igO,dia͢O}u&űy:,VV*BAt˞,YQU}'ZXH*>i8(FMv-2Zbp#sH2 |2{6CR=Ѿ7`8[XDS\[K%A],#9(>ki9;L/^qsei%1 I^aroǜx҇sqSuD#7N}bFy " Nt ;גpiAT8Q%cJFDb:=U'j/GSh(: j=;e`s&Ymݖ4 ç7`)On)6 ;_ɺ6x"Y:G~~)NFr}d mjm;KqcDp*,zud1Y`\ʢ#4Wtb00qbFؓj+x\Y/mCL͹:&[{\ps=;jqDQFSGE -4 c1 ?ȩNm%`FOFMU \ghNyd)Lƭ>99w譐J;ܿlĤ^t/)?C |xjLC(|#m*n7{" (oo[+#BIy/jsvqQFybZF3 jbeyÑVJQ3ivQ&i ;X2PdgSU#P=YxG} ^!äJQS <ူ:fTۚMo:NꆜYtZ^ծn j%eI>v'ɎW5͘a@/9~۰kǽ,u*lVɏLO ]d.O_biYR5` pME7%l (@/FҊtچ*+nC1C94׳vn~bQc|=kng^ιSF ]b^/ҭaJh[+d?ivnzqFں,mw:ѼXJ_ľ gɡ|~`WJct>C~ _^ MpsHɅwȆrM!0R:0O;6..Y snt/g?#F}M>rEYG&*]&ĸ_\&BXkrME,cbe})[:}Jr)^iZv!.ό늏? 'T\^_z- 9eAȰf%F2f2@J`pjI.n#j3I0Q0ަd3^[EQ^h/e^8$('nP$ABi]Mwg/fގ4 AnRp" 0@G}#9dכ_$xrsWGbh{;fDNް8a~3Fdx-)'ur#rP@T;F ~'r%>|vNWV?t҃nI3up5C_{xou4pULob`tu=uA~ҰLb.&PE{iێIAA9vV-GkD``o HA<'B7kZ?Swnx+tmAu R$ARz#r.ӵG3_n?S φfP*X fٗ97``TO )b?Hw=֠;%>ꖇ4&e3irk$݁9@g,˯/W"cXՍi;;b%CTUn!`3nh؇|(IįYO0HiဈKO3q YxP*9b>(whZgW2(@Oqch 5/%\!}1H+zؚ;h1t06.QZJiB;䬀:bj.$GZ8Xp<4&A&W1[Ztx;NJabdU¤tOdR _Aس:qWn0YAsF< 9{V<:0, k\:H;];m-&Pe(w4t/k/}Ix]:|c*;tN"$ wn S!VgFrdm1àоF|;uE@&ma^p_>p0_5)3C6^tp[4(J h1k/b}q;TN~oX3yW`%Zɢ%AIm=쾃+0>&Vt#.u@#0W-貌r?1N9K#pvU]V|f@m&ԥ D?: i U*bbn.olgSOGҷ$ (Z>6'-?Iu.s-UA_Utʶ|"~L 'AS:Xqǣ.EMNܘt9l" NW6祑~)H?;pVg VRzSD:nȳ1Zs XI&,y }nMkf Rj&:ţ H )^Phsq6k3iR1#bG2HJ'$ebn< к˭JQ"+j0:^mSBfe~&u*\T" C$kBXN+qviD%ܥtnAq荺dN IW)xDŽn3 ĎǚUV#?uW'a%A1U,3)!!dnyrn爊ae"#|mQ2iVC [*ؘAqO*d/ch3O 3;B)=7#:ŒlKOy.]j޳"d9.r=Iol荾yOiR_Z٢\!`g9OxSo ۻ=#w?ׇdXrzVoUr\5/ MmFwF^ u"9gL}BHjoy0raGxŒ dhR#ܥ.7'%ߡ aw8kg,w8:vM,AY*/,wxWobLš,'qJ5 lIPOux@quzZ>ueGn fߍXZ5S>O(-|Q57!\GwpK͓GtMA<U?_}<\^zTYi'܃! է(gw[ە l@.\/xfTY农TW֤_?ՋbHDEhHe=+^oUQg B:@^Bq==~/=(_"f^oSȶ yH"6VR lGԽqmxhۨ˂HsEP|o ipؚYZq}HE~xVEbg@$r@4qvB8>ҎeIfPdS[ٮ\O1(-R/_8+HAEf`|J&xt2nE3Ff}b?cO\ Wgb】Z) B?OF# J%%"AQ>B` b޼Ë$e \6+Ǝ%A}=] vmK2ͰaH4ǖKiP^^8AQ[GYz b4r (%=hL7=Jdб\3W!T|jbcv_tO;& '"YXpRE H0ǍsShH&iދ W5df-5>gJsF%E Ŭ0 Vp :p/C*p)YF(>:E'6Ɵ]NSe{sx>Zj}*H%yI%fBQɃԩul.>6iy9 MI f*ĵƛҾI,s'/?ty׌zF}?ef}5ʣ6d4hRd3C!iy. ;ud`*mܣM L薻ܻyX\'fz\+ 3_3g.h1ېl:{duJߎ t :yzo+`لOHE?#--]]T=[p 'St8Vh;}܇B8he.T|[zdߢ'cK/:eCY)pZy0.ZTR A: ώmE0?|.WT }5_f(@{ó*9#.Mzʭhb*4)P#e pL@njg_I^}Y0UJ~k<^1W iNyc!|u(dZ0 00Q%f`T`[7 _tajkUlbCT,.&p`p|c1Pb1C܍R|ӾGq +홉JƘƝ/ ̳76/;df-|gCru92ġ3G(ԉioqIWl㡣t<]4-z52WS{<\Oj^#{k @FHT1$TO {^*i4N_KY݁hxئ\+ =%|gbV0ՙ 71ΣojUP%Ī%,lǓE6ٳF5kK*\+ajۿo:h{CRH#k\xijK/D k,)9EP/;f@/όF'Mdh=f^pQ*P2PDp k8 lR PWNQqgZ$OG^RqHmf[GU*#$ /rK9)*%?&WwGbU' B6_ٓԃmwat51Y#iٻ74_ȁ _p/ȅ"+q"YtE0DinǼVR0Õ Hs0e-t&$oWCS2X C;Qt[sBecɃSV=87KKpl@m wv>{(=aX@٩^CdX,G/ ՜&@r\Eͯ/:T0R*Fyp3Q',,^8WG-H4@&e~^J)ZCFn-N6w͐7Nۗe WW,V3 ^gҜ #ޕcGOgƺ ғzn湧ҀuЅ0տc+N-e\KBܬCbAϕ #iDr^ @t"n_ţ[ъ=U8-Mjٺƅ]r1#XyDզ-Bw7T0rZ̤"'.q[n1gZ1`b71bC$9DáU~0!FUq)zNJQ\YE`r"!WOGnL݅@z iK.'.9G3_ty{/&]XM(d υJ 3}A:73NY)n4d1V'FpD.6\DF|gQLBVCV0re;)c)ʶKQ+HS%q0㌳57GzJ-9Xa~Ļ~eGPͮ[5c#96.߳-;r2l!sn2ZO5}+sxPnfxE.˚Va ۡU2 6 l ";暶iCFiroLEXjoB즀o4A'?*q'y%Nx~sy \=#͈ 43 !yaZgmb YFsݫ |pZX趕8O\h@)oJ Ax"fbi虢nv{IM}oPB: ̥GmڭV!fOT¥55\=/쓝Is/w`,V7\|vuzڟIYf9W/jVfQTل?w)K9ќ{BF{b7ծ3ŋY9XcȞbVidwlFY B~"ToXvIȘVI~YUg*oѓ_,o8H%Z`}qy3Xp sVDCڦ;U20"o00t=He!~w1e*U@oWx$o|{Q&ʣ.A'/+0%D"`x50 DGUs'ۨs$a.GuExw^GT6O_]>ʆDl_SB)SzUB*q2<&|7QPŽ`cI7:HIْ Yxʡ./rqMͿ& 5/P\,K"YP\oQM6a-Aur[K3cm|+)AO`hwI9*A 7 YK(j &r@Cg>% /=@qk@ ˈW50pvM*vl0;VeCJpm`WrCs*pcCr_P’濒gm+$۱C8vzhHO7Y2w}Rp BWu1JX}mz$$B V5+ ,9yyCMw@]'5nHD koGber5tw/b%I@G0 lgmzl=gĹZ[/vjc7D7"VыaO-q) =d(C& 8XdZ'#yVi]8v8/y\i!3V rwL56w rhE0־"ƅ:X;-iOn "{/]\ 9 ~.FB"Gvw[%c!;n/ ;+~Ǟ^0AʟjZJϱX-.}^&qБ >#R0cY':\SXxcE#rQD9[ Eb4 FO&uxc=;ɫM~Ub®f !륝)w?3D&AA6qH$_ mffB< l3\ FYWeIpD۔2C wJ37sҡ^gv:-Ѕ!{ԡE -b6n ]Jhh>p,2tE +Lx-|<w(ذG6yc,↸!]X%Ea"[AIw˲HCT&ae)pz`UoD1* N'x1[nTYZ3qUڗO ݫ1I:<-._U1wpgw)4-jU]7-V]Ш[㮡'WWUsر@ .*/%Ds!`d?Dw dI܄@fJ}ӻBְy9f a1 8+|T:}bEy8WFzTe0`i iٳzUda3ak]dP#mG,J=7rȿ%W`萴&`@8#.X4ST)sM6ܰy{0!oLL#e NAf*n/91p hq^y!Rz])gV(Kb~Eq 08rw*?Bd T 3qz/5\ɳ%9)o"FU6ߵ+aUP_gQ*T{kZu^4X`LuWVSѣ ?lF,JZ=me]e*(ONWDnNȱ%_3R_w㱀d~ MC)0":pKM YgLaцy q8*궐>w'~iUH4tqKW@c }6˨lEC5̋2,Bu،K*K\ 2]F*S1501c»tOv ÆK7Z.׬,Uo:aPTOfh-ܥֹECdž!w^^^ѨРvJLF&7gτ5QhNp倸+]N=BVwI)YYVI\y''gJS{3 SyKOea0W 2mY2`I24Ԫuk /`"qBTezgܿ+NBTOI'4y60E_8!0 gtKe'/'nZCmur-EruN^.%L㉝S5y)L@FUsr-MWG)zC9V"kP[ qƈBY#<@\cnW8kNjv샆%˜*VFQy) /4ewa>1I v,iuJ؜ EK0t`GER3a2Rk0AI('+LIuU[ji 7Ew]Lج7؂ LB'qTAQ,I.XhP%WsD$Փg<l?IAY6fߋ0B]Yo*@8 RNT&(t x$İ Hamg,^rʻ<15_Ր#{hgTeV(poZd^VbN=8)T: E c҄涾 uOu~1+)w?koה!~B NKt=`C&.lN+r|mvstMgxTP NK |;$~RI@ax ?b0`J9?HoX/}YsE C1wOƞ:-Z֮M;穖C<&UTCb5*1ZgG٫d4-^lzo Aax3ȆX}f;5+2SWٙ#9X q[o,B*KlŝX4<e`Kv'H&^4vHc 0qHϿ2 %[N a  īӅ.SsK{P{ڋ^fv֟4\Ӌ]w( NqPP^X7%@+^R#'ͺP7S,CcK2u j]aVAyA΢@Z؁-k%ւŢ,j[DkeGfIBٰii~ a'uùsQ0s8(&/:I[eI^XʗVP $\0 N/4zT J< qժ&Ocdm; _A:d?HѸ-L XѤF.H3<\?28jSUQP`R{ZZ -6ӑ6@Je'H5J:,8ޓ{&Y!}?w+EfwsHV%gt$ ZF؊3ob:̏'1rh  (;*S* 43 46Ί6&4K ^$~"|kQJ)/37hV;uH[G4J>CH̻D,hS*lkɋ[x/j\j㳥,4a3[/N?ANszRgk{ɳuϞ9 ʑxT JG %FNP|%#`v#(xWCg#zAsRHj֓|@t _+&c{P-w C >x! 웗j ast8) xsV;Y?Q($Z41KҞ"^M‡)0c._)_43+ط`DIt5J{gArTFX Y !g>頻p$9d>_/#p̃oG~7ٹKAe0|^!ԩ;hޘG7flV!d/ɺ*{MYKƹϨpMy ƬB.g~?f΋7 mS_ ŷ7gaD/.@A,Ň ^ $GyyPc]* I9*cG~a8#:=L\'ZmF TkCu9kjYD!MC ynlu鯿yjs|]d\áLأ/\ՋN&1K٬ k&Snݠp;8%Fj/o bK3p% JNI7Y Q=[h'\X1aU[.ΩJ-SJg^ʎGv9Vof٥s>DH3UF3/nW D Q}hi5/ ckFUB5£V1" _Brɜ3OUG~0ocRބ^=+63//g]wkͶ/n{*/;cF~4]([&ٸ@KB\8_rB+U\B|lC["-y>ܶ)$Hv1Va -k⨦f֥DY.ͯØDX5]i}5H%K0OHOuy`zqܜw|'Xʯ4|+av5[_~fiM_r3^R?|B/Vg3]xNWuF325 ";'OK^ߵ>#Dq>u .R1)Dj(6LLd<X}R#|tIȥ@Xd+:!Bb"'c}()"bҁ;bK> J GNo,ЈpMզg"n\gۓpiZ>'=. k&BU֎@ `πJ {Ssoem 85'Om|OZ6«q受z9d5P}`ՒPXS9巁x-[ Hq6t"M 1(K9mHDvNJQ䷚ҥ-w,L/cI\G´r}mV_,E"WtQ xS'cQ/,a'!-~[t^-1 %)94>#ڶ]n ¬XA$"!4+}m/(=heG;wnUBr9c˛Y2 a>PB]F(پ-,`"ְ'uȔ\5`ng"τf' e? 𳞆 6|6"fk<|PII~/,!fEP7՝ʫ@hxExCg!j҉5*rqI% 3pą^e03hAF*ҵV S&%į@H1ĉH'E! q5 +癟ɹ"o.>dz+@Ƭѻ0+P!(Wn3ӨhYY"1\\|FagO`e# sV{V J"?sI{oSX%F~ '5[$4ك Cf >&ت;J٥Y;1NRü;P*Lr\Ҹ˜TXaN\qC[},B?iOw[U@(f'W<ֹ횼Q˕aHܙ+PkS`v'k|=)9晿{J4"AJrV/RggT=a)QxVϠU$P`}&`f.^Pp˵N9]dsXq>jK&zleZ*`i<^K GQ:ʁ)ambQ+PT QLLB̛plDؒ(}ۜ Bұe*^I H@ c,@<VeAu+ WL$ouukCyI9p wF9Hȋ# <g/ǜ&YX5CE418Xjn+Ʊ8[7$6gTyb '( ZF7T4_9J$,S~N:@`W/݊Y崒Y%SPy=TFK #69WE?H'%@u=#e"?ȲNnm| SmF4YcSBu݊I2c:/3N i`ơ"tGe,V(0,b4o-M LK‹쯽g~{PiXQcٵ@j`&O =UrKD|桬x1?u., !N\JT~4yFZ %߻8P|~2µ}`Ig}Н&] hk-dc$ M2{W @P-svqH#B VTQKA*"5v$N@v]C^$)h. j<#MPt'C&ZAF%:e;An Rۈ5&g7g*õ;Pqi_i.(.f|ƾFԍYU6޸{OЌ+|{m2&6߄} ia[dO,b $%5.k$?wQToz0%['j+b׵cB>RapKOĿuZC|#kVNw2Mychr*>O~j'6Ra4fhG$Øe{ݎ[ʱMD]eXlvɽxZĢXRRVwRv1Ѽwp?-@@L S:aW;; A:ǵ~!kslAe`$~'C?(.N%/DV揮iTO>-4{3@8Fsܡ+/T t r[|:*EoM}Iz% ~9 zcK,EBzf}QW?S7EfO~"/[zxWql@$Ak`Mh:2[$,:Re"AT,̲8^ۦ0znSƢwX( J_?j3L;-Ziiգv?g{%j Ļ'5ltc[KEIQDqX{pMy3e)/KF*p3mw~Ą㡘m`Up*su 3 Jk^ \6Q>Q?+߹-Ysiηy %1AZ4=3j[>xB'y Ux9nG_=\VĬށΊ1o >Xge;apN1K̦)_{:hg'#awYy%H|1$ REem(ɸ?Ua7nQ`aquUB;Inؾ)uV_09-}zf^螄0h3OD`-TnqVh[-!jWOՅMSL,@j~.QZs6DJY Y+y/1x6Z히gEs60"t*EvX RԦ9z$,)Zx<4 Ig〾;X6,ވ#cx[H"2d2( yeW~^,񽙁QV } Eۦ7,Aie#?ˁ|5Jcg IĠ .Gj'm"HN&JTH)vHQ8|qc8*.t0Dp\KY^'Zπny6kH>M1y>G8}Üŷ+v*q9nXt@KVЎYT|hln,241uk.feH53Lc,lk˄aHGx/w{-?&ߕ6Xs<.j-6<7{1Sm v˞}83v"q.MGZ)PTTdM2 UlT Ǡ>mAtݡU}'+IvWFk:p]ݾoϓ4u [mp4U07vc̜-G31P~ {kSe.fr$`/ze>%’ #FHr >VM%wR|Sp;S0~L`xaᒸBzrĸQoM CygUcj~C'8pSnU8>)Z( ‘#0C``J\lu&8{`/l`!X?3jѳӣ,tT6漞?l_3: < %7y *t`Q vrXؾqzĈo\%* nK,W'<ٙ{ved&kiSt}N`#:5G3-_nsUưa-ikvJhy>>RDɆ[\ּ8^g<:;*G"Q&L'WT/+pF枪I5V9vC6YISׇ|D1A$`WD]]K7;cAOV 9fDUhXIy:$P@K)jޮ xq؇o|@bߧԧ@[öx,?t3XFfIqAX׊w߷Tng~"F/£MsR Y >~iS6B'@'W|TGA7 pd@3|P8N\s~cs"fLA\Vq@b h .TXcmf_e,'b(w 3Ka}y&k%*3/ފ!a:Ok4dRY`e d,d˧q"~HovxJ)Ax*Ƨ;5Kc )\hO z 5aǃ+$V?5ymƦ1d Eoj /AbȊKh,'~A'=m{YcwxP[m%a7"N q6v ࢣ8W^[Q\+~.8*mHhj8hl9"F,@uBe Ș9[@_-붟5 G#~a\1EW$!:lp6=NX,Ӻe.(/탳=bG\\(BXKC^p&[UN}tzRP&7  SJ/0%y^ p 7{BRRʐef$JʈKBoPMcWχT @bl\F28X *:Y.P<>a?"^Rp/-+DR|x֘p'3DӶTjk=}cU«m4,mdh<62}ѓWv {yYde:2z5ŻXZW_4*h~OaL?єej{7ġXfc];%UpI)m/ |C7ҮG?&Mud"!DYRCL|輝iJ.XO9/:&B= "#A~xTR6Hly Ei{bKQ y3Ee-YWbbOJ"|Yv?X~= e NJ5IPN>'cjN0*wgGC(״iSNSă Ax.+oj(lsCВVm/NƧΔ*mQA܆uAAU3@֤J]6ɺb X:czgs*q$'3& N/zjVP%eUcE\\m b9d4DJXR tCEUٶ48뭓&zWR0S0[E$pgSw 2BΜ%IQ>-y9_dsp"Qq9);݉?XֳpN)B'b^04>N:ra!00(Od`/cd` D7|_Ȕ{a۔Apba^GIhR.Z՚P/O5WJt ?ô1M˸*8ZJ,ה\R57uP`vD58߅Ca.eqvydAn ]V{/Cz"Slp YGȝxXf.T=N#74G'AL}tԷ61p:QtZ'C^$7>NRڳ1}Ea%(*;nTs%+7d' Xr̼oH2_FKkN>P 7|*4#㽈_I/Ӧ8Vc?@0a٫)aW[9;vҥ.1(:0}x(cTћVVLn`!DG wxu0^! Fzyy+Ud-̞|rHnH|W$V~qAݒn"ċ)lPΙQzL5pnM[s%)/%ܫP PD?W-3 MyB{a;laBI9fSq !z"XGa8_ahJ( = Кss7a?ntos2/}ًӬ/VF$DP52H-hwaJ7ERd-ƅ$n8FvI1i Ǔ?&v{z-~D،#0 m(REÏVeGp޷wGd&7Y}T 'G)=(Td}c1.pe%p:{4n.W'mgwhfMΨ샓TlYPu%հ`!ZjT T|Ca8 fmܶLQmPlBnQWKGdHޫDN8SW9Rk$=,-D‚tQpLO 70O(5XO|d_ OVkFkxʼ {dl_1S~Qu$_;q?ZhbaWT;qT+)9f() :1Ow ۣzwi:J>+w?a UHxpEEC$81ǖ'@fya5xyVa-ډf6SR\jF{ bWtHOzۇR<'MƃݻR F;G2PLNahuWG`Zy~H〈2AXKSb/̢\VM4ai'P)yUrԽ`<S%kbaHО1_\6<{6̒~zt~ gik& jWuntR?C 4oH[S_%io<ϒ{LdhxfF(Nr5uГL5sJ. 2aUߗKinws'DYJ("-?ol2 -9q"|Ԉ\HAWvu VX(:֛/s˞6zEhi+K:w17^<< Cn[K3 fӮ[ hr,G5x'q\~X a %ΖKwW!Ù28ECHFQr/2FkaE#J8Qj#FJsu[l~lqbohLj@lQ?sIa9_%ߺK?Y uX7 lZj!mi Rhd2so^<(~|=1.iDHuѪ$,p@j-H ^%QVvАXZ24ȁ6i;O"Ҥ{16p=yaG"!:֤D폐H8>s*Q}ݿ_v70{>!iM1<ވ.BNqD-϶SZfhO|[DcKdm\Kp8KaΊxLTM`g~sp BU\Zp@3+yrg,s5Ğe2珸d #O 0?" |Cˀ(%4lu `}<@(N=mhh. V~Ite$||*\PBݤPXPdң@;r-w6.<ʍ675XgJzS'S}8JdpM*>)0-Vor`&{ 9:os4]cFa9:5rdYd'iBh=N'82*C6ܾ艅z2ǘ9B8㹊4'kOTP+v II5ډ{2eI@x8dHDl%%=b֋*D f#KN7RBsggtei'T~рBbhySq>A4{3Ubme(}?tYHqpith6 _1c4EAAakwEsM\!u[1O? NK)#,-ڱNXbei #h}W m-ǭ?ƉhL. xუXҸF4Ex[ieѧH?ȜWqvڸU͈& 3ɔo&,̑yC BNʐ.5o-5XJY5**1#ei![ۭDz'DW!h|oq-ܫY3cǒ`WE)KZ(kp=wA{7"`ϲ7r> }B2z¦^2N}'ys5eLF {G 99fUp­]B6 |;vM /@?Wx{7ہ\ୋav)EK`8EPdP%Ͼ@yf_>z_w}<>P߮j<9c{(}~}FzOA>J+.YK%6Tʡc3nxd%QhY R͵OInQ7!_5 P0z\Z|A.n:ȸ;J/R/#mS|Q Ƚ="Dפk!8%@5/ekkx$1c ƞfԺIVF<K'IfZ #~}waۤ<!K;sGSvV$q5ryڂq qf@{&D(B =jM^z9#qlMZTQ3b02t&NJl~k+f{填q_ݦx9"Q.u;DN AD$*`ɥlPۍچ{=ȭ]\='cn弦éEڗ9L}Wa.wHK igD0B؇gH<1{J؛9BxԊ q#C爝/zBI,}W$wh9*x=ljsFbFZ*X%[=faIeM*"L9 BB o\VaђVݫ`x=>OZ$t:wxF&kēk 6\+*NPWH@0epI$Òb-/!fYP]OG Apr#&x*؞ kd?f)×Gvnb|uZT>sZR> ̠·PηKMqeҗeN i(@40oi*'La2H8'85.s&)<-v\$ρA;\ 1h|]PYd/~bW{PS3RʏЛfRmwwr3[[?LW`aBEsK0l'99k9F(&|dUۮ:p;|Y-o([DϚ dfײcw<Tr*A[LOn_W7Sgb_'tEQ>q#/"f *B:LS<ơ|uF^xekhʶ&;E e勓R->!k-#6..ZBy;Fa5QTgXqw`0Y/r:$qXB6#SnHz`ֹJ@) IQ#]/Vٽ?K[tH1F[h3L7 -eO6lABxk=IeG*@mVNܾ`Nj~BݸSeAS/4^&N_ѿ7qH" A@E qx| {43H-}0xk{[ n 'm 2 ?]̐` = ܀5jvWDK˾etU.Gx"؃f/M)kAmL+A/'rNO.'ޥ%@ZEAb-t@Dϒ_NF0u~6]*R\8f$ PWMPMF#Y9|:0A//qF|9@w-Hi0 n;8=U.+iHFhA ^)*&ovzFeAϚxyoP5ŽIlP-xZSyø ~sֈƝMeYOK+cƳ '>K"M OPʜ?DJhFI@Z:Zv{: V2B| 5qԝnũ`xz_GĮ L;7aLz/R\8 AyL | v!_CRby"\2SJDu=*"-f&Z)U V;W;=N3%T'g0sur140')EHN_m^A tewUok\܄?bC+XKDH% jYGdjWⲒ#DX:V8Gaz P/ʲpTrsFFaaSPM_E\RjfwORԈJj0x$99eIzkF;S G2*8'y]%YiD4t4ݠzP ?bP l0ӅyZkDunI+,62[a퐢\ LUז5(X"  %l !"9y<uC.^h#\LL3-6U{BkK5 ;bX!u>i6Iv]-iKT7GK"y|̩bAd Јi~D2nBI ۄ3tQcoyd|~݃VhT|ܥ,Zv]?,mkdmbyZjWz% 2m?0.2 .O -LmW "BdzK>}0E_@Z(D㔇BfİAabVGw-Jevy 7Y)Ҩ/r k )#L.# Hā7{"Ws ӋH&w9< &FoZ+D~PIR&kaX_ka.(zM*2Ԃ'3ܐ#"F"/@n^MY VԩnUGpɅ^ $o,soy<nRZj4‘gm|h+SKoӉN`S= K;TmnrףJ#$k0#ӿ7`&{ĝ3|9@A!OiF,8bSx|79%AEF|vߪ\-^aTȝ6`)]7m6|:uoJzJpf+NKIQYB\,MzL"FJ;vڅ:+rЍG(JA+o5_WFo ;6`tؐ.T'Ú_ǩ"p3hH^-# VL~X5T4apTǫOg*^|5IkQJt{K5SQ]!c?lJw?EX6& 'Iq+s2MX67,vB }ćcNk59rF 0)=LiԱr," uO.q$ vu[bFJLBجMn};fKLzб(eQw>DRS9"BFݯPA=[;ca~ƃv-&+QyIfS_`rJJn Jٌ=^?&gFԿpTʓ\7V4cDcW;Ǧhw>:!x ‡~v~3,mzP$v~v:h+}ǴgF^A&0I~6DKX> -`]> -v^)PGU/P[#^ރx&iț2o/~p6/9D̘UɤD'55/ŔΩy^S Y }$8GOSSJ܇Hb74+K< ēL#l`Z{"\L6zw†`>- [q29 71mvPtzww˖gW3@un=*BUkefo܈VH@;b_9@ΐtOq0  y]*xdZUKFi{p ZH[? 9pS;FaР'fH\9ңwA%g(W}만?5څ3;nI N4qri;\Jo3 8iDWu:ZVKiPʚbQ|"+X}Za0eKiL]]%_ 10HU4k|al1Yβh^P⟂ -eʊ! RWbV|Q ZczD߈niB]$DW(ׯ<ەdTO1šD"H6]tДs2AzYyBͧHaLH48jGGI6u)׽u~J UpO<# Qϵ.~# $}z@;ӭ^M^=Cl\m7O|ATBIxbWҨ3$JHy!%]?DHi bNWÎc+Dy/W?Wڿ98udXɎiaSX۟O܂ 6FbJkk" #ߤ_s1O b0M,Jd5GEgn*H{-⏰. jq KY>aU%{r&^/d"9:7-˩X@0X@[ >d9~w`,XxVsSc%L1>+ՌS?Y!clfM;߈]𹏖ȃxwum>q&בEwܬ A[* h4&`o-9i\޿K^ug>SC;K>qRR_b`'CU ?š ϰ2v|jH`QnԠG -ŭ vd-bf 64 &_xQ>O+X~u* a yž:]%kE)9݃Q(͉tYGCB{TdW)PjAFo<w[zjٶp W `BgUBpU(E͜* )4.?oro[qט ,[WŪ1AnטOTY>HnWJW䟧`6k$Ε 1_7 Vݧ]aGڸZTTXhSMvSlݿmuy{=y8= 'Zob`] Q~Ư9k\GI|4ˎu*,k"cgUhOh5Ғ.@H@n[ a'rV89 A5^&DΌ \Fg.j_"-tlQ} %+/P? r_!+iĔ+E$|9֍{p^wOv_ՙ%ѼrA, 7)2"4=lWz}l `~XE8You<]^EPh٬HbʗϘ}^.eZQdNlrٌF.8]vp.PIl'ͤ\6]k̾OP1נ}M k/v on*Jh=jÓF |nv-¦״*KA/'d܌Ԫ %6%@ʓTM[Q;HR~9ký²ٕ \wlȧ~"Ui¹(|j]:42xAX`wWZa 5J=V[%?h =9̛IxnzP }_ }nARg|1*4Kl6zI kV-鬻0 V^M]scY<,Ƃ"W!a=CSʄZs<^RֲُJT(T^l]O',')'wIΌ܈q'V"%Lj*1<u3v2z[K43PN[j$6W3(;Q6}rp*pV(>ipzq >ΐ#mNV%>k~u_,{5qwB0ҁr()0NVp>p+Dh5t2Ye~Dy҅y>eq,O[v(BP8`.i#C&Ϋ ACh噚Nǒ>]D:`8<\~$uKl!Q'knƢTe|6$8ҢDŽ̐'%qҎ }-FK~Z3`V),EMd4ktQNհqA~=L>1}l ilj*Qϕ+!˙esU^{ğm!(:Gb"|?]ZBx+"dw4R}_NuR,zHǿB;lCs>bp,THͽGgCn9/I@ե5.`FØdߐ|^|jp[uk.3=$ a =ەMdUF3LE/1A\u7rvWQcc E6f i?L]]g &hV,he+?jd[ >;%~ʈu:_y],\=n(>`Hgi8[`'x>ნw =^A*YZn I0\k)z&]Ρ|H= E6UXr-Ic=ĠUca[140M@7T4'uO[~j`2֯z֍p&׎ꦭZAx|XypXTЋw\(?PTT-jp*z#]Y5K]Dz8-Z~]5d?!#躮yUI]řqqkvؙBx ;Z:fsw0& J xp T,y7MA }&0ˢ&"i_z:;7sД_-K}>}1N l+{]9t Qri#x_s~پ+h}U(;[eI{d+භ ' #}cA%kzعhgB=s|E7Q+!p ,v5 wkmPkJM:VKU- $͋yomop%HqіÉĔ*"G_C!Dsb;T:ڂz BEf*όQ?+it@V& ?nyYدQ^HWGeH=hE]t=PP/ʥ<0]p]|$Ok$}$ߍSF[r;/)1#S$0xCdD䰊MQ`uJ勵2&q??|UK.&lҒ.͋)6\D3Py>'JPMߺTydCL b+/ Il[+8ĨMU@F&clLF Mٽ͖ *k4 *+v[)vqQ#Xٶ4]`N6H>Hwɜ(L7k6MceVc۲FJ X/ꏊ- X.b>9\s۸ C HdXf[qqWFU.9l,f?$R8i4!L~[2}JPf "oʩfG_p3/_eIsW(5+Ǜ-F.p܍+r a-sm@ ?ew} ~ j12wg[ ߢT-}r7 bҧ&𷮾ɦC1llfdes,inb )E1㽬H_%}-Lv&jqv=iM'Py 5@NADU|:T;[~TRKׁ5r>Y2*6?tO\-$#ZX"uM,:wm{0%e:(ʗV-i3۹f)lhizq;q:(U`Ҝ 7pA{d*h}2BϱX+ڂnwG<9=Hoҕ9Ѝ7f[u?%Pt0YbPB%bxh7v1?}aLILrz;5n2XEU-(^p>m5*Y$IJk%MDfpn3N HѱEeSgA9:] s-T:M-uR&_OےWm\Jŗ: ? :lPpV;C+Fc+?U;5E>MhF*<CJ4˒UZx/5%9ffdWUth:)XA Fta{͋1,Y@]y ȏ)6WLf_+LR/1 V$R*G@䬋 0)-H}2-G)o)5=jMqHg L\˕l:^*}V@{G5[ үAFXe.{11ץ_4Z@TAx֏I7>uMa|疵СahDN)k)l Aͳ0?7(=n7Ws57Ծ;Uߞ^)M0ӆc}(YkYlnvpD X;đXKI ^ݛh?PM#Ti2ٗE5H~vLNg$E'K"Y^{ӭFhc:"e|Kr =5N<,z!V6/:VVN`l3[kXڈ1=p,6͑f~ :CtgZÂtgJS+g%2'SF2jڏ.SU֭}e>$>~2Qu2o$Of,D)`O|Y.D/ď<FӯĂz˄p KqQEËfAI䇷ew핱v:i?a*qCi(i  OUSYPҝ!H6Ey꿻`J٭>gqe`JZWkN$2٤]$/Ď)eިijxa(4 j-19q@h~yo^ba? X |!Ç!Ncs USU4ATsT5De+EƼi;$%5]#4iU%yg#iȃr| "BDWWc\qkiE3ECrryߙ} }T{gkZ$(6LY4bFߢ (Ob+5.kBK0 FѰ φ`^U`&N`7I._MV[]TDq])'ʺa2q^ BXg|; 56U${sxc?µ5K'}obƭr3C PU<ຏ{,w@a=];zʻ.K6o0z 0ASLKr h>!_ :W*>1BEC~=ˈӁ(gJ^F42*0Ye(@TFl"EO"3b| Rhӈֹ/ F U=J*ԁ0|`m60C/ED><"H7k* n=yG|Ӆ鞤 WGLތZkVn 秇'aJ:F"BC3Hn&߬ _hIzmt&bM Rځ[z (zb5>z I`=C?o&b>tuY%*(] ѺX<ϙ E\OH))%HA1>bX)[|{kuDj|k:=$sɌ7Y~Ju0͂Bjk(ܵ.q?1t2XpgH;:@lf֞+ Eaj o`z?#[ګIn<)ƞ 1Ჹ;rc$U 9uLLvbMܬX -_Tzj%;`Ű[Ye<~&NZ/8ƟcmZmQW?c,|/W^ЬGB g_M'it(:Ik?@;\2;Xe٤LK"#K9SDA só /G)m&fZs Dm>ċm<#TS!+`6zT J /XKDB3`[`iu9 om R)E6dWfwoJ,pbzWsۼbRx0SV\YYt աX*wsSx܋˜rrѸ?vcмmLPu ]7%aD ޲Ofx809@`4 )Q>f!gt1w t W~>e:ev[d I;K8QE70q l9Yɟ&ZA\~7nq{Ε'h՞V P-;XLw/C_M$Z/pr&2ϿmA_vGpJ:,T'c\EwRf\9MΙ`d@Y$ΜGIUtWcx| Pj^"w,\> :*Mj{Lӗ)gam'jB} W& :m|oR%O $]rYwrm$eo{5[ ^ȏOKɊB+H3ϲĀ(`y$n'1 _JI4I%6? DE.LBr q=N 5xt rQ!JbtVX7U0E6)~.xsAёGs߱_vE_3}7+gXy'J Zߣk.ʙr!lH/CUfD&{V"f(Atpw"8yw#pƞW6n#veGu"rK8sfwLw (ی ϚZ0x=_k|?ه 㒆B*_dU~S%$j:_d7 n+q1`B͠.k4Z?QB>+~ PU33xktF)w^jēdB2[_[Eqf,Idqmˋgc9%SZP>V_'ٓPC&Dc~)ߌW T-`o*նE2GwM ]J*J0֘q=kBHQu 1E$UJR-F0WTU+p.9h`GPu +i uPQPsc-@! [;brTA\_Xgf-RtՄ44͜|RJ* o:淅 A_W+^G&|z2(VZ&_vRwM8S\Ƽo+O8[56cL5jE7'+T y|pǃhO`tǘ7ĠcOEHT$^\N^Ey]޹ @od`zDo|ِFB2e2^tbl\Z1Y5h%fs<JC/Lа-$t[ìoTӅbHQ8 YKBIIR<=fe%.CLxel$a?b9'i3;:*KϬ0H/Z ,,ZaOmk-ƀi@>ƢU8+lm ijO;;"3e]0\DGD$$XGF^hLOv^">*oF|J'״P~w{3XHm b1?<}iѣ0\L1zHg06: ۆfV/  鱕Ț|1B4Gg}dIyIytѨYi;eҩMkv ȩE!h[& & wʹkn5vmt tב j[%qLojmP8R+0W1{#Y]rZ;8?Si҉UιPt8U]h}jl (q%J@%thKMwaf|-YLQ=`'9,$Y鳅 FgvN2D>GI͋j0;plt[U0Ȝ 452gS;n3TkoJmHb 9uZC{[ti⫆wƘuL!R%ڤCjT klZW=os!wkĈ_q2Fm <.yI'g9faA&_Li1d]QZ?8Řn"а^peY6Q -')=tClP/1hg]LqIa-R~gQY*CxŌc-MM#8m=q_ XY-@jJggCLWy4I4őY<yg~WW*&E00QO0\t9+YZ*ܙױ>  & ᠘ )=M޵@ߢET6WSD<[1[Xbhk֋kO8sX.ȅ7 ޑ\ 1rҠ}+ɼP3'yD7/M qZ^ ֡4 ad}8It=E;lt7i ;Q΃5&!OhsSBJ zCRrτ(1HTt Y1 cA 5[WH2d+~@WRuds00&b (v}H?7IU/_8R #[c&N9Rő{[fg^;tagǚ}Exف ` _=xYfR盛~[?ْMA`sL/AFF$O qN})˄Bաйkt6'Kƥ3M&Q> VTj4 ܜ@.,g.uwl€BйJ%s: Tb0]^shڑ)Fbԑ8O qr.XU0:-Ƹz<`5^4}zY1C(}cPT(;"%LxfA&y3}Ḉ'DZ(|G!bjB7>_ /ekvEz<^-zOYmj^=3_Qzbh|NRKތ_GV:Ŵ}ZĴXTsÜS:sV"tiK%JzfX{<`6m_k_ &NXyTѺ igjO Cy:6VU,4B $%d%I%Qʠ'0d/B*ɪ+daѧ;77 뼄@D :Złr~3\L|1\E0}Z^*@p {9 &8N@=4K/c7$vLpMY4^G`:'~ReP֜:W)Pc=g_׾8W=!/Yf ⸻mVxIeXt ٖjeii"U@=!͒9A#%Iul^T g;{r#prG=Z:2#IAaاoBFT_(7RAЩ&b a80wX8g /^< 0@ oS1&hU`NteGx\u0$LKb2m ra:m, bM.,-C#kj_#Y3GFݎ]tq sez\?{_:(*>R|'2A Gi6,u,z+k$mK>,QVhg0ϋ!V C) j28MgY#b'Ҡb0? o|y`״~h0|AT[d{!/:*T|zB7\0*TeCmU[`5d nw0=^k ksK9K[0Qamyzx0K]4F3,|&wW᭏vqİ.ofrU߾"īGA<%f}2 qr!Pr-?(tb.13-W8!ene 7oѓ+٧ā=HFu,kx# vp:7D~teLܽl /`c:Gi`r@ys`i.X16MD>.⹏`94ह- S&ݞ;gh+&_ag!7q4(H~ ^a;Bu0>ؕE1DD(C})HZkΌk$w鵁=HH<433V!pK2xFpzN,'@Ϛ0 XVW~*ӷ@;8TۧdF,#+$ק\֝U5cb4\i9d w7v, B)O<:.)ܟ4`^2#$;5^7O99*JlΦBr롱'@z<,6gʌ@yG۱9Z3X~䪥h7= #0oJ\6Yl{9su`% ȡj ̡3c`~-! [*UppK#чA/y|x!l5 "<8ۑPF$,)f,3\m /b^th3ۆh+ =Ѩ5kS=P &*`CTT;={M9M9F1 X.x7IܒIVᢢ@ga~Y(̣tQ"yؐ LJ| Fkgj'~7-zh0Fd7ٸ`l;q+6aL_uz+9_FG}vi{y|uߪ|Aʡ؇͜ ^eN܃TI:ןeI~wL~zȵf E*q;K^$9ΖCe;J`!b,IQUZ]Qie )l SeYP"7/W=%Gm42ac=0Qz :uY,xJ 3w :mɼ!LJzB"ku'\AA>^,h=dԭXs5E/ /Y׈hTW}x!R~Ŋ/P7b#-$ܔ2Xw#{ +!j./-7ԩaw1+/^b  Z[*_*E2R^=o<%gVmEywuJdE02F 8YXx>: H*Èa'V_vh l:>ݵ ;ISǎJ-Ѵyqz5ZSZ+ :]wJ>3B(|hZz {sccEcvĖ\Mk3\~)T3ɎZ)eP(qP䂦$'8(PY!KV[>e{Olo(+6J*ǙP3ctiND\bIYS$":'πl<jYg6r[>5_:j/x!#Nc̃ܟ6xRLTۘjIV_<pDb=WF.o;FwAZuo552tuC[:/2i3 o2Xx /#{BYn<,CM(pEnlh`@DW3%D YUwl(EehQ3AQe"Z#r1]Dۼ%i(uᄽIsĪl~|NQ:7_W*0h_H"4P HrS$,y*PW{1Β^N)8>^8𤺶YF_A1Eމ>l$S-⸾.xS)KWnIϤQ)նN.j6?-XO;l7iXAfq5)&U)c$qu!mRa sbtXrMݠTÿd2 B"^ݨIkW@4Q0;6r;? ༏z#-Ұm;G@cř]&R%5G钹pYP&0 /mW@9\XR_ cvi|#ؓ:*b3L?)5Y ! '%@+ # ]\'}LJeJaWzw`":wKӝMyW_=1 Z'{0dU)ᬝ6WKfjz, |A#N5k6@ʶظ#5@I[q0;NuX^r*::2)J6FHGO h^|i".47L@P$0大߶%!N,6&bۣEsOE&N>^C7T?uPaFm efE WD iͺ|uW;GR ifÜ#xi싏6wtAxQdUSD-Go1]H Ŕ=x_3˯Y-{ SA $oz i;8oIb7y k~X]iO[Ww a"cjƜ?C(C,28!n/3e#E{cz7M.cR*kJ,R$' ]]Kp ݣw`\i>3ߐwjX $=k}ӎ&[ֱrKW .妣{Ĭ@ӑYz U t޳}mdD L& DofJ3U~Q*Y|`]2W(S%jE;䍃hA3@7a]5:+gBh4&W*MRr)ld^ D)sN~3m@[dFVFadm‹r '{u8]*r JMſ y啑BڨF@b 41V뼧BDqzkއK5Ժf{MA-7*u]Dž"%j;0Ʈ? )֯ѲbǮΟQ"1L#%. dFdukkY`ѡԩsD>P&N#M>yrM*lJUaTۗ D686ASej5_#Ξ/i*Q(XD?.& h|V|z +GuHo(ID,X٘$䞫AW[EHl8HtP<-`)yc>p2Nk=wfWuluc3*wvC;tO: x%I|x2G&9`I|-t9`ynm#Pua]+YYɳ'4EmCnɹkL+}a311CG!W12턖BrZ;L,Ą4"E*x0_YWUaE|k7x *G 7EYk!ZKZܝʙR2Rh2m@VdǍ ubVR*#J1qPfu4Q30WV<]Z:`-R_JEN{fҚ8N8%bb6'FCd.K7;h~.#({QyaNi+po:h s߱)<tDx4ܕkp1%iӉqNC}6}_ ?X"s@CSPr{s@/lS)n+lSUe63-Ky͛rr臚;y:X@PA2`:(#Ʌ[Id[5 Np4(BCʁ4_s6.tup M\z:YQvaq VqqRAb Ml5ƢRl\l95ʘQ4(?Pk*I^V 8:EwQm UP=NV "yg (bPN~zE^i3w91,ˈ Y 3ڛJ4}y^6<((tq;Mϴ!ݯMl=[_(n3;4UWFZ DRKpͻ.O^NQD<J_r\8Pz- TKE4TE]]{fm߸V:PP?̘ͻY`lD\O?c} '_!DBh=ZQ >HIĩ qP{^-FpLM 塔vԂ$К܉!aJ!i@: SбK/X^'Z3ԩF/.S?ZSS)Z% +Z'~ P}<^ ?t_B7ƲA^'Qd̡7NUUw`٨}p(ܵ_RRd!W aUSQ¡ N74,qp/8["O1-xTfY YIB4|o'XBwJpӝ VAz>{m#͟ 0Y}GCs-d{cֱȂZ3X&زQ+*lh73pƠx\^ ojz-ʱL@zg)⢔&l- +tV niv,!R|\n KakY%9X; #H}Ա/*҆ڶu\yfw[*Ѓ6]ő#dLgTDeE<ڇ: oz+?D|/ T֩SݾKUtL+t7{9STJI / FUShi;*>A2f"Ik4gJ̼JaFjtf7_3t2mDs|*^Pe"m351 )Z7}ʁ9^_\Y|ަ']&.p,3Z&F6"[T9iY7"|('n},àbLn2_.E8Fj$d#8B 47`#(+K9,Dzv0'\oLLNm^@@}Yb EAPyK\3 PI+h;ۅDŶ)S՞<6@)`HLj~7yry!ޤ; -8`359P;g譤Ԝ.x5UFak J1d6Hޢ'qiJ}f9JPűp" -}{iS824[YFhj0[į)0#CZXxM7k콺C x]KƃQnMKILmP^w:=HHү)]WݕE]w~\Zf)t &A߳zr?ĸ!OvGq0(qYod%g2;cΎO r\ro+jmf$˕+ni(l2^0`&%Z5+ؖq+A,M@8]9l'G\#5iU3^D|ˬ)]&O7~5s:BK T-y׋c%vz9s 0yOA,:aUƤwU~W-(% QW]D_3B|f$Ӝ .۪$ϫ61G[aY[%lMI@0U'C\I[_S( I@Yyh|183 5Z>5{^SbNȿO@fw&~T?컄l89z B 0S y%vk\OqfĔHq%Vݣ K!p`;;; 4ݭyVkn}:uZp賒& XFxNVGg{ Џ/|wf~Bx~u?bW5vɕ|gPѮ 8g" jdJ`t%2u^&dy*F_ɽo.t`qF%>w67/DXu(߱)9V!E0m$+'0n{rS6?}*elUށ>6n茢[;Z2w4BAwP,}U蠵ZsP]!s d\ʲ/ECbu`Ҡ]n7 1b2 )R+>{7v0I*DvOmyXxG<)Z@O )I&5=; +:͊Yy*fIZ7u3}۲Hs&T6pqah%~#\9Q$>>dfM YTwAԴ?ł xF$}Do 9*S~|x^Jj P_oݏ<i5H;JCZ !"8y;9@O71pp[ Z~BV3|;~%WlV+@o\nT|q擹#,Rek LRf)KrzXeJFnkl:|>dY)Ƅ&E +('1G=R P0l @5UE6]"e;)݈$LG4uV˵>v٭Ϸ Д[u}"/Jűrf ̇]H[ZXEɾz9e@u#ȕPj8jz?s;#{;it;׎C2yH;2l!OA$h[pr/g>v 7Q Bvj:dk~Em(W Pc0UG*Owq욁kxP~<*եXiv!b?+ugmXb{փOe"P_"Xڭ&U8| ^dΩ{!~7Bz8PJF>k;!m1WH(@؈p< š }ƩǵuȦ?_ܹ}qjMP l+i-KѝSU&K&,)uC V㉞+.x,CZ `qE(hR  |Fn\>u_Y/g-LwG/?4`U.7{ ;ZryCL1^3@*%'e2^F? ڹ_.Q'!::x\Ĉ? ^Nnʈ^E쭔*ƽAc!NloX17ug/#z%! n11N;~j\Qn@XVWMjOX6G7*]n JU]pGERzhbDw J%Q|\'rK+v]/jwE0? >#o%I-}?G?x[@p^|(v0OQfT2KSD*g2B4PK!tW ڵCS1UU4%tWk(e-^ B0D>xaD_?"dgb4V"eB;#MvN>)B +p_Q {Aֺ\;( V%59Ky c@2˻ތ e:Ǭ0i2LfNYҘctg˶*n& H z%q*s5o炑}-@^¥-M]T5tP"$.|gfI1"yb_κn#l`?g6pF~1˞O]У&$#TO 2]ly@ :j ToqW1]`Б'@"]> ф/աMK~7anW5}%z+8G|R2I}Z'f;xjr|K(ٲY*)G4]1J9>JsNq ɟ!ZqY6g;+QGTAM(ŀY8"#bZ@`2^Mr䏖y/jդ q:]%ʱwSK[:?{{i9+_U:Nh|Wxm{_=L6I)*Vx'-)hhf18mISA2| ̀?Ufo-3YOcx"K>[cvCsf߹s7*0ِ,xFypgeBfxEAjjqI #Ø89~ttlVD7 A7k$p{Y4R?6O(H<#+ Y_h )(Dq65 [k@mgcHؘIȺYX ڸKn783 !O/:\PJ(A"RIf}> K4czZQN`\H%Eo@ sR²iw@GV~F;lG\u8soAfyЎ6kb Ȅồj;Ӭ?b+¯򄓻(D! =4?$<ٌqVEySmM 'נu(VpЖLwq0i~EA~sَś@&K"]}wJhM{eѣOpʐH~KqEס)r 񺿂 4~ *ث+8 x#R1 R{bW VfII矔Ax 9{)pl>=#,(<6:s1 tPW`yl [рO&}F/pWy"HL:ٳ D)`YA2V(.^{}Wlz$4 jͅbuZ)O uy&Ĝ;2fpE(܁9pЃ=Z'"]_2@lVT6403 ~-.D>zJ U .CNUFkgwJl>#Z@+ev\>Dƪ=q>dvb*ˬBWo~h~\9>l6G4J?’@U]O_\NgbW^_}Zl !놿u$۠U%EԟHs\u|`+Um =bIqoq+ӱ_]޴sJ<<_wD~g.T%n#Mf{j*Xw*taYb*1-J +{xaDu$kT 2x4#qGs٠42(:T/31%7۫o B)Y{]87XrGW!"$u^dHM ŨFg:傮?E_p6d)&m܃L1KUѡZ;e렑ńp,M&y'ƅƚ aZO*o&4\ ϔ@Ö_ akԣPY _ucRQQFpЊ ܼto,L|].DxC`5lKcKU fsIr`|:ȑlm'{o;llZeScIx^[[[&}CC :Eӌq)lh vTJFqSY@#R6Z+pb +r] 4sMm|;=[ >V/$2;$z\#oc!C.~8(<fvaW3=.W&q\b2>E:";.Y' `xt_ gJ\|(TJ?!G%df)#D*ŖD]Vgi,C|bâ6+/+ -w6ZcZW@F-8R&r%k{έ[2 %[$h}7`DŽQ\$^C?m%8Xf2J.k}HE */j7 pj/9]o:^54&cgA0gz-h#QfDɴX֤'?r?#=Wi./8v'9TFޓSݵPK7oe]*OC# Baj :*w'جN?.`B: D&ȖhzƺoQ tGoܹ31N+K50mO?ˆ*xqV4;AСdaI2G*w‚‚4t "HNGϝ:\iVĀCěP2V)̋PվKϗ.H!v"ZepuFYqǵ3R˱$$绤߬)iR݄ k\|2N^pb/NfMo 5W:?յJ0pJ30rlAB* d#DC yզ% Bنr[11NS6{FԅpY3ŧt5C3uļ 2gdPA1Zz03ݠ!k.Y` ĀVnJ1-dp0Lb8.M}:@mEW׮Hjl洓 hN@O\O}*J:NW 滙yί( .M2ŖYL>8MiU I`\T:gx& Nߴq$p:ěA->8~.jX8uh{sd~1#H^m&I]=Hx|o@@V*P"Ԋl ,P'U}ժsge,qV#Ö#BIi);wY<C BǺu[b*Bq-!:0Vm8!D:ncZ%/EV"_p[;ΘƦD./R=#wdBě9gh 2[/]h45dpzˢMVBLiC"YŽBn 5kzXb4C8|vG(̹Z:R9~.w8z~bӒTazULgJCƱ8s#7gH c}4N-򪨆e*a:1yH+u#D4D>ۯ? 38F<.o,]pƩt™JHʈګr#>Kbr0H/yl j#6ŵ^,f9[(7"$UnBRKDډLE/ng?[ȂZ{;ys#`]jT5ያ.:L6.Bb4ǓHyfI^\KrZk23=JGkS͢:>;<5Q:U+USi?3 dt"5ʎ*?}}= %?MI/Q&4㺠 5[ `R"OL8,NoNȭ8K^%+!(I# Ƅhn ܗwČ$!y͝~gkE84lkƠvVH K{딩6؟= +tm\ e9]a|p3&V^\2 )uAzc_59A}stקFĐ*(e(!+8d,nQJ5dU>` }Z1uX2ߐcx~ڼpU\ɩA[HD*m,%dhs rKW||RY܇bj1곜)$AQ'r_/F/'113r+9$7:hV`_6­'!$&U@~tHgKܜ"zi^),* Ibhy=q=,}~Ǐ`RAxHe8WPPD&[2C+cƁd T0JĿ$ͅ|??hz"?^ s}Bo 1.B6Öا(:R5 ;.MFNt& D\>*^ (Q"!eRrϐ 1C; "{R16JiZi$OF`Zo{mD,dEr֓|p{=щV>Baj[k&m1U(v}I=W$ó.2RPJb&f$Ss$e^խ'?ň(&ۊZ7I\hݨd1@OJE!3Oܤ! um$u\´H'.4.m˔~v.<.՗!';*y=Sgu1?kbĭ9`޼jDoOVd-iE}Ff#b k;دF&S۠6(֓eSߵ 1:%|B κspn,I2J*yBXk#!c"pjN>xuÂ0Zš,?wzlSUOblrԅ@Z!6G%gi'nz!tX3L)I$1$R%qsϲŗw (Zh7b+vO6AټYɬ W-Jޅ枮q2U֬:&~/$ N7.B:ρ!@/{f\8k F8r?C^.Q2aD*r?w)cΡt{u?U񜦏A^l"waGQR~q&Y-?km+ BMg #-Q=2;w y3ɼ@b3B\`睹N5e \HAUKNc6A/xH~upޑui8;e^5\C԰pGghĠw tӹ6`]Rj Za_55+9#*gx;sʳD\POt{J2+TnJ9^oa>, 1&d3w@Zto6f6J0W즍.uMIye)'ebSwSAU K)#=eiOORU.4 n3 E> mO>+IJx\O˱ZopXz*k[u<BdP3;xQ!~輋mIU.K~HsoZFlÁk#M!=k64}5g8Q{(@"._)e60_<.=)bdPEDzEn L 2ya>=`LJG,aSqrBkfQp&dwVULO\/%Hf$ՙd Y)6GjL5Wyª] +8ՊDJ)L~.:o7-ғ5^$dL0Kpʰ^DU n9qĨS3L=k)"V:w2gcupwL Vת䭩QMߙLiF_.*vw'|jTwlk3 qi h'X 9CtP,@64EjkwX0^5uLfRٿ{U67>UZ2s}a 2S2>!7Y~,SX0 ^Tz;]oC<&a›U3sDž6>%%nVmP]|* 䡱<ǡO}-D䒌?U;zgpIxm]A'hɡ~Q.iaNW2ru;P C̆ں"F$xC jbtRR{_K{P_f o ƽO#r8,׾DR m] e+JCWA WwKPNi~u%,lbi>#i:A3-u TOBZO׸;kB}fk@͍yfk„~>S‹J\Srg_DA"e>A71>7.Dr 1R5424G9Nq; ]nPE36T+¡_SP \qu[S|_Ι^{R!;h]+6aVǟ@b7Hr|u|ΘiGy6*8PnuKmJ Qt&j~$:@-t{֕`P?q#,l8QݧT=~w/px&ʙ↋N˂{nn~1ÐF0g%JT=@ bRs?\InK'Gsd4D{Q$/W 7tP&|Hf.kt:MW ++cID7Q  c%KFLOrVVu,v*hT7ML/e 4vp;^&Ũy&NzJ hs0 <ν) UE?Y>YMzbeW+-$/8 L)nJsYַCF.mu2Tfkr-)o39SfTF[?UpK`)Xg] yT.cHV43\hЊ+=;7[cҦ*A2  @\'55ED<5|.hm!Fb {twЁq1kEEG$eu@nɌ_ˑ@/5[Y:mTe` v9\h$nJ=Y-LW5P{ڣamKbc P5VҥMs ib.q'Vϑ4謘eR]ϰ3(3+]'CX W%>}[eڹA,%][{$Q̡@{΄n񎗣 bt,3!rS#jm<]jR 9aKJզ[,qJɠMOBx~bZW_݀3u33 `MMGWM6츶Et"oW ylr.ˆZ!_.Tdx:HY|RD0~Zu&cT&:\]C|*3kX߁sw"r23_97PUA bFo8p'=m o.> }31ER"(Njv2f~^SG# Egtx_2ƪ7g(1p[6}m_ 9o5F8dO}f˥H)f.׿W fHN{.JU6 ()=#JpvxJ`E݅BKc2,|!ym 8 "j:bQyf%I]m_Uә$g)dY:g5LQஔ#N"kIVmTa;ZHxӷR kN35Wo:.) i>Z1ͅf~PY ȓâG"޹KއD\ ZDx9]PRX!l ޞmH74P N0YQ6mH~+?X^5֚CmE(lvPR_M?䀠B8 Yޣ%jJA" ´ůѦѹ}?TW{D&.G.$̀AK3?OgC%xtWGj]\ż5b3Qe43dPX e?!Үsg>]VىVz< +WqP#iLqxAMZDJBo[mCNv Pޖw)hiDԼ|0Kƴ.U\{9tShI!sR%삗6NTo ׾vqNI62KUnK(T/mOqs R0ͻ3g|H|}ȕ Uan7bn؆_h3EkȭIMĔ ~Ac_ fKτ.g1?#\$!`U~mt*DN]Rk̉a)ZtAJ{ ѭ4% %u^}@DrP{ȱ(Ppx#( M!Wf /FnaHWu5+mLCe(,b>G%/,0nG9*HSA7G1 2cXbʩZ6\iA2Rai!8A4u '?w]?-im˜&Ê:W&̿`tO#\#0۔@>O Z(cJd$?;Z+z@+#ZQW\r;&b:QD« -թZ>J&לڱ_f9Ϳ7һ;]ABp=(̒Nd>SC0A $:. fk8-ՙ E>z2gK^Xl?@\Mȩ,<7K0?<D_tjUAi)0!Sjwg8Pn=3MQa%iRQc?i2DE<G^Ź0ֿ|좐qRTɒ a{x}7pPCiC&JH ٯV|[L o$WY:3]7wE 1Pf=uU<M"t]W?+KXjQleMm~.Pr-srpQ-Jϖ~I=G*_darmF"YQՆ+9d8̘mH rA9`*yflOl1vLOwok: OX1x(nήHNVb:suG)vVz4]k,Aq n { cj<@ZZ' o2h/3B ~(k7.L}GY!Ҟ 'jn|3/Sc'f=E\Q[mJwI*mSz&Z7E΁EE?j/HV#fA 2!t=w "(#|"! "HԀg*I^7R8I /fl,'(`9f? MkT<(b)Cb6\MWc;,Z 1*BOg- ?6`' ߂u8w ڭo {}.[-yZ;E8x1u+sch @<՗Oqq> NlϠ@2z,#E4i]D3veU'";1w^Y&$k/Fg8'[g9z?m#ZHeџ[)pmTŐqc;c%8ԃm;ʫ1#",7dk]$[<;`6,@LyxBշnYp=u$ %]m@Kט rq6 2qR+Ӆ Zz6*h+v2)ސ?KF]rY7R EvDeloZqWq}NV>h,"i.fW C̖)!Ԃ;@, Fk u+WUfت8Ioe.A'&྅C~/EmYajv?O$<'u1 հa-^=ނOe y(>QO!--1W]G{ٻl`:UmVbLcrh1\X.m'eXُ|`YgQt8C9HR}P4㧻ItKj/;ʊZtHzma?a55 .NGtVcMZR-jxp5mn<;rgS;, ʩ+MrapAnCVPF8GL~@)Eؕ(+T6)˲;oS't6F'(-q:T(`Qf*~M ts;,%P)D ION,)ΒaI&8ȕZ[a(BNŚT_6};4i;ĠN1R]:{rV_K|ZOuZpB(vVЌUJҋs9XiQ#:Ty A N1fvmb>y}RS>#Oɋ{.*Y1]s@[R]vt9 ;,#>GdX,ImT[Uŀ/:ΪA ZM: ARD#cp([Nx=bPfw8e7k+nAfz2(KDހ(,KT1Ӏ16~}@z꧅{ iQ-Jp~J]p[ί)WlQ>+ dc'e90ՙpW~QnTf/PBvUQ`%U=yINrɎ)>/z /"'DbW_S?eZ)n/QOO&)n1U\`sHf &rg!i26tAu^^BK>xUO=x0ux4Is@F䜺4iV_tZE+뷼&w>.\#lƆvLVEWDR Gq sNPM~fi) Kfcˈ@gK!4 #0(kɂI6մj Cb{xVMؘb$]w}圮"={oǨ[ة<vtZDj/b+ * p5>Tn9msOxH2J]mS^-yF.',=XO%ߕ'I [C}RqWuǣ'wèO޶WPRo1ySȤ [Nvu3`pcp_VS`f4ϋNb4\`mp6E9Jlv,;VI;6D45o5p{+'@Ѝ@H'R\Z& G[B.VY{h;5DƊ}>)1Dڪ=P-Jwm+i0M/:%ٌiٌ)CShPq5Pe1W]>{QA]B}^gMp01h3'Ԥ)xj#S);D!v s$J:M9 oi>_PW9S Dw sUtn<@޾? 2ת%oQcVrq^/bӰ\1㹚@a#PGG^l%UL1ȿ)- vKvIRxk Kځ28 IN2.$y9vΧgGX4AfZ.GB7|QWjV콡\2E3Jtj42yU4SOZQ 7_Wy;oV%n|Bd(\PMT^tDo{ObV'B42}p^}ʸTuThpJhoⴝ>18Md~4z6N,6cnB"HPPjDh'F.^:S n+ә!tkB 6bᠰEIB88ll;/ x%dPK0l%g%nFnI7O=ڍy֌YOOo>mЈz+uT*ô4UH!W,M̌Ĝ\v62Gbgzi>9F6dH[GQ]X Qn>>\7Ddc0',fm0ZZptdFD1#В+fYq~3mP6Ixͻlṳ`V-eܸ>~' i{tL%WoEG! ˭nu&5S8sϊ $oOIP ͊c&naC)n ˆ%HZʦ{b!Ghⰹ3@NsmVSdd7=unH5[ɻf0DTXӷ7u:¢E쓻ɉ<gO)|&#וL"CB$x9 `.$ _Ej 7YS`yyc%"MSp .Q gfc?SAԄBϋFC'5\%gxVCHx*0^/)MY60hGB]NE-AnK; o9GJ%o0b&F$Tݏ+j"Jxklp !sW! (Kk$*~Arut(C"770eOntc@WuRȯ [׬PW$quv|P^؏ZSg&&b0'{"]1Af<}= +}XRU0"ΩRtys쾤ܽwl o6|àke62VMS;,lV[~EW-G;{BσgBe3- ߬h SE G ʘY}I$x{ 7:zqLm#8bѦf <ֈ5ib?m Ą +&?M<2x -NRЯyy r4|$!{V8oJ !"կ[ZH|2c_{RALEĶO'!g&Nj9FcdkW__{wu(a;nxr3Y.~&C6v ˰jcg||Z\kC8Ω ҹ96RݗјR/ )jA4 g|bV3`'g[&GMBlgOaeiH{EGv|k*ĉ]r}nV3 ! &kgHQ Dge+=RNa2w^+I=n!B)Kl2)НcZKn831`Tw~*}y`bpD6tJ"ߎs0É78|j(V,r=QXSh:qlkFLvilڟz\} =zk, [3{ bN$Fw&!d'wa9Xr>7XHYrvQx1ptJ?p?QŎ&6,:$۸ӕ\ưYbXA'VxrN82?MBY GmPB ATxRpQ.xwRX' qO0j{_߾QhR{{[">ɚV>D96&f;=,gx4O浑XΤ.\/{KڤƳe[8,1 QOZ΂|rZ 8VE->wxs eDz P4g^[;"Q^yK# t+˸&:{m _ ݅ =8kAlateQ>}sQ|؄F<] =3ba8FBAD|?" "TLjt'0vP^_I+,?X?'YVGy08&e??Bʒu\ bQL:8y)n-e̊ϔ YL^wic&FjϤ]ёtikximO/wt C-P'bLptq*;S`Gx?7'"b{ hyX&,tDZ(g6{'k>[y7a &dՉ頃gYrϱ\NBhlGuH>(tvC)c!=)=őIuKnU3)WJcٱmzO[b[EM u`mK((aky>M-X)ط^!Y Lq-, eids.(I6\$ƇlJV1};?X9#V^`Ac\mG4:-:0 PO3lxYuQMPE%"@ p%y ul/fd.-!2o tb)Zl9Zv?S3?ΡbbRKi|G1BB'3+)_,px@MOfYZ+gZ%]qm^l m@b~kGy"0I |~N4K~W>;u\:uk8:9ҫEK5n|)Čcɚ~`znc[F8!/1-OAcCZ0\60@*f~gYt·'&{\^C} s Fjӳ7-|{ZM3ف͔4ܘH,-HY0:]T!3;3 yn8K5GgA(hb( 1lQ9F=]8iǏT^z;?#ce_aF Do]*޴˨΀_ٮdo!$]WU|Q#bWڼ [hc){m-&gJH>"鱈1ۯPOk}>ly0h|K;  㔚WoKw36$h1?LTy&PK+e -С=']M]&_;`,VrJg3ӢNzy#VZ +hXFN1XS{q:@Ą@&,wF@@jeYgkП(9W c^{ #y~0w>"}.;`ik8Lkb4'{/30G#-C w^t$sLH.ѳ}*w3kqbM$rK,y^-֦"pY!oR"X bh84TvZ{T+ǗDojΑJXitmQ ?z~RkH{MTH_9E-x׊;dom e= `3;m\f[);S'+\u <AJIҙI|[0𒛌 >%5UAeNXq=SH-+ =k9c ,vxxwʗN^93H~0gHa1AԝaMrY7 2+j'^)bBӇԖ7x]B K?RlV]8ڥmz_5hdMn Y6imƒSer A#q+gV+ϨCmq$"%Cx濬NgyLq&'G6;'Qҝ㭆]h0BRF ] \h}u.gCZ0t]o(e,V$KBj )).l %{pj+3n +x̃D(I>鴚Ί4sOS zd2։>1zOTK;Zc] v*L,p44h$t`) Wބ*:fi5"394?r?:TeI6L'q|wE}9 *#8yIb*OAڍ+?WgֳުtieJHL o/XwQ3Y 9utWb \;dv4nz$.ڲ.Jƈ[ j3wW'^s0CZ˃iyp/륊ghQ1IjoRR`Qc0 tE#,}O6s(ukIy=6W:#a.yRdHa  .VI/Ҵ)/|,ÂT"#ZZBso;I|b> a o0KS[Wj$ù?Zuwe7p+u2ć*x\& &g=)zdK3T0@Ykښ.F|"к9؍cSr 凞T& t|Qj_s# O*aCbD-Z8 x%n8$Ѣߡ5'GT4ٹhD*u_l ƕ.W"ϖͪyi˼Q"fZX"ҭhZꊧ:od^=Ա?5na0[ykq*6Ҭ4:1@պRhZvfGqgzPGvm"4v}q L'#!{[#O l{ήn+ms۠ wwfʉWf쭆W. x7b׭XĹ0#K@fI8bVMi:v|b#=$SbahQ]t,|L[ԭ!Y. }1;\{?p<Ӌq`-SH# HCa5ژS]j;y-ޛ,a*hgUe&>7CM*\24,B~qmPq|dӝ$o.֢qnl|'}H}+"OBMtlPT u s<㍏7#̀J#9Vmw.LVB3גF}3˹8olɃ:-VQĨu5>ٳل,\H3[X ׾i}$.#vJ YKKt5#Ho)l ᄬ rn8 tAHy8+$|T#=@3 g巗ܪ|PS\4a2^E 1d-;!A->5X"-0c07yfWs2DcVX?qi4ءF>Ym#g_-?8МkU8//HXM^]p181Aw%؋Tr?!z߰Prܼ0;kG6OQG}C^).Ə~V* C#.EH_w%>ڶ-vc%y5ax_hS]wnŽ(蘬J`V^Pcx~5+" [~ jz0(h.̚fGTVOb)G:O^{ k֍$IG<֫Cw A;. `ޓTuA3b~Kwދ=Q]گ0OO=@5ٮuSquybVoE'_:pA.ݲ\=^-#(Uņ- ߿7+c# ,`񏻥Ҵb6j끇`q|OSLqvtr\r3:?„27cZQӬ0F7FA7 c$qe4ҡwv~F" hPptd-27GS/[UX5 0Sk+ ؕ.h? 'N'7v^B3#ʔ3^,Ovd!(abXvb 0JU-4qS$JI貨8G}f[N.-0]PE 6o;̲(}QJGd\a[Mk}]7{WTr ~]9RT*:̑sAHdJ/5@AXlƵU@BCmLDi=CԿA~O\=Yk:Yl UyNX+1/Ƕ|4KUf(47[m}Y+V>B7-Y Yxa!cWXJclrHA+f$]~_g&y="Z 4lὝ-W0*_e>Ȋd y +/3p՘]diXSq6~ZsԮHi/[?Ϛ⧨ "bƸe{4^K+*{ #rOLʥ;;,{! ].IS;FFǤwaVZ[.i~~>2D׵[Gj1ny#3B>ֻ)C{>2۱/o>F#׭[`c^%Z* ETc`fiwҥ8ec,+$ڡҗqxJU'IР)."܊,$%#I)6߼L\Fpyǃ)$Ai$4XBB_3sMY)0,^ :e0zYnHbx4 P"xBva>>{9smBdB+ϬzRYPR=/ %I@2X%lej)L1גvϙԍ-r=#}>BRAKxA-ٛ#8˺#M]wcLR Lՠ.#岢(_]_+JOzyƬWB} `rr%z}KS:>A c4WED[&k;ѱ]7t, OǁY@*LUɑpqmrj)e8w#w0sDr YNlv.>rj̈ctn[:Yr4gFlJ_.,ul~De ZF8tX?Ael8 h1mŤ>4H>pC /Y=ޏdE'y~8vBkht .,\Pk7.`vZG39TZ*z#VҿL/aiwOiNI^s%ZdTw 6>&A~L^um )Lް =i׉8\y ؑf8R1+*3,.9 Kܟݤ.%/`i(p b ['7;$$COnF6#D7ď %Tq>gfⴸFO\&m|fD\ܴŎs>|ZA0S?XHJu`I݉>0YOe_8}$-90r,wOEt f~l fCxӈd8U]Ҫ/hLJ|}a#gwS^,W<Xז"%vJ[6qy,IL8c&p =n:%i{<٬w[:c,JoŏKSx{a9{;8npV{yځ}U߆-N˪Xf'X*Ʃt- SBYM Z qzj򅨶kѾ{ P܂N%/[q}IT$ ru(p9xJ"ٗVGF&d0+Y`уЯ&8E&$ ?qTs$ȳ(b,=yC9n_zL(JaXDGPQ9XCXβaCsyCΛ@ m J_+LYdoCUs e')[VGkHoD~| cxvevŢ*tayh<5.:F*urcRBT"QZ%lIS'qao9~C=v$N7p/Ɍ(FlXIEw]I.>^N橊jB, {r5"KzrB4 ^ XSR`guXi+{@K# $s8Ĺ4>IR6,뺭3D 贄q7B5ljEa@F3h2``tHW";BLmI)pcLglEM?xJDYD!wU\1j ܾw0S{,]hT nRfs2pYDž-F؍ e_"04m7iW?ⴚ)]ņ!KkF`*T̵1PN':NQA᭛w@+h0K5TT,јyV*pQ `OނQ,RA)! _ S:d998bygNΠvhQYFQ qɉ77M# p;&8ЏߒM@O"raN8~2cf́&0JQK2kHV*Oz~@ FYfj6E%cgmgO hAbybs+77pbrO~҅ua=`ZA XIJQ@gT\0; U}fF m̰PCrD7N# q@:@ՇL_6 5>w혢 6C'ss*?{0)̩5 YjWnkRpkJSNv+$9 S,ˢB~z T-Ѕ 6}ȝ1Y5'jKIOkw %ya6~aKl^?S:K" "TFڿ|[|aT7൲N)z %(r:Bw`=N" (gR[L۪]ȀV4N MwG\YƹWCCZ E+^gN:fpnw (ꜻxXiK/.cCnfŅ-_Xz 粦.*&ϼsZJѠaQg8MqՌqO~N&+8 cz5i&&?2<: AEִ<,*dNWn9ۀ.''׽Q oD[DD ,DQ6]=((dVr;/:'`b7C'B,97uR8\r,p\rD]"4Fb]^;jK$8yY~`%#Bi9}q!MhDfIZvCHͅ53mN5ܰVoBRY$DһQ3R^ɫ'ȥfFbX|ED6]馆/;3+w5hAaaڀR9X GJG0 <9]}@W{/O+q[8Y1w;NgVsZ;PD62vY]FPPy ǰ>=b,@ :$15cEe<6N^{Ȟy|@ҖxΨd!eeE5Wڝqs%NErc*j־URs9fn*S@Ќfuu:c[WiCt{5WO)[IQlzWxT-)Ʋ#N29jeiƧpꨝH |#&Wa|>c&a"d3l%žw&V>p^?3hbNHr0 %Z{Ff{?{4OYtHKi⽍ /vўi&Нo(u{=*PÂ=xyd -ڿ6ǾBzk%y6jw?4{+}&\sWٲoK`YL/0Sz[J1\1 ;H97:*$>yyW?clw(RM?&c16JOL-2xB2՚-~ ͎j?++ڪl:qYZY4>6hH&e-IJTE\!RyBiRt#5;I2dTE4i _"z v+Tc7+$' (;xt~ L% 딃 ]P[I-m9A%8a<}MW" p}X!'I7чhԈG}LpӦg.Q"igȕL}S;z%bIObVN<,?AfT)Jw\v> $r-בʽyls?!˟=Yg6>HV yy"I8DjwI'4B_OG?r80ГeIksUQr/Dc::_} dQ;Ѻ"Dn>Yb;j/RRC 4bLMܑQ3wqdf/HrJw螭MS˕YAqyãHt>>`2L쪇c70rZf)xwEXlL>i8M_v]Zߨi TF0d gv {rmh袴UVp9.ř($}WdWIOt{b/HmC^襶O ~q}__ga?uQXG!yQBjh}+x ʷd L^X.T{1i$hFEMNx} !Mx|u/*X9 }g>:&ķ=}ƂD b;)RъlD qe,By3c-VB Fx써N ⥐Nۗ%.*w~[8HKu5ZhWJ;:0:͏-o^9V س_=ACߪCEzW uRۍ筴XmuKAYٸva0ZC+X]@̐]l™!b#*NˈcT8 H)G(Zdch!oE>[ h:O/Ќy\LV8@qcQ(ɋL,Lu~VvH+R٧[1η摒[5AK@VDM8@tDr}~I_ 64,j_eZzÍHu'&_j|O]Wn M"_hg?0j皗~t:o4/ǾvU]!lb+ V4&=fj" 0NNNFOWR$>6 Χ9,=Py; Za$ ZG۽ Kb@ +& E#( S%_cLB8%<6dہy*9"ҔJ1$;PCmXa;ZL=+iCClItmBX9wC\Is]pyq)^8 *紙gkXYl5M?T: [H:x=6F}jV3&{or?Ԕ}-P ܛxm5X7# 8IW fd3^'|4Em%pdRۍ8?J+y>A3ʿ6Ce*ftN(֊&j}&vcP7rQcIx.;SY#F4}d"5SR*TLhn4_l7KgQ [zhQ!hV 16]+DF5~gm*vpE(p"v-]eu<ԶpழOd36g燹b nP,joͿ^c颜XES4Q/;k;2ԥT2^H^ BZS?l omRfbMG9't$akGRLLJ"Jr,p9B?!M)IQ@ pF൲b_Kn~3ؤ] ať?AlO׶Ʊa,͔*떗Fz(1P2?=Q,س>YK6N9UiiesJW%%J ~6$d3睟1 U яG++\C}}*dgJ.WBvG A@ex$a}|v,RC( ABW[ɳa;=nt>Pp1bY'x_=\7UUhK#N%<,Y7!qYڬ%u3^w%x9bD:*"Mg P2ӏ[FЩk=!u|dc"e(2P8qd,?Ih"<b^:g:U.xf"[Wݔ2;N\'-78AeS񻺡oMp$R+ޑoW.]HAk _4--HCABȮ?va$Hs>fL4Jwh((~CoLc Y!b-&uT1% }k&"yWA4seiR3׿"-9 R,CDCS\jtBMLlft=z C8|E+€ֳ/(M.Dܵ&;5%ۦe_ĺA|K1u#O-X}H ^ᮧOkG󴜔j ;s$qG |[TTպ Iciz))OڜmGsT*:F6%yh/C\qěrwBo%k0#[`y4qgDz3iȚDʀ?F\FoNWs] bq@Sp;/vP+@)O6w&0¨>I@(Im_6N4?(,;k&?[ܘ. jH%_,@Qଏ)Zo/kL5~ѓ G$QÓh[-SꃝX9;2~6_^bYPtsfv8PDoϡ$(^MAqSɟ]Ӥa@LKڌ].ɋ<.;g*ˠ|I=sFKrY$aa3O=! RV+ɴ2,dvE#g|Ra6=n7qq'eEy ^c桟a1.Y ȺBt2y l}#A݁w|0x.<2םpup%'>z 9Xo 4^|yT9K$Sʟ{s^9~1MW]v#l OYUElQ𼴵+X>W=e޺#s LPRTӮ.uB!QCe Fw#ɜ3pɱۀ+/+Q 'D;axNx%TZJ~IOɟa<< h1uw ls.%XEa%AɷH cc4YreG3Kpgp0#]8y%ȍ1lTgAǗꧥۧ@@(הpq[ M_c@v6L%jS!] KaBXWm7&#|rc*oIn4 EW#|2aB41gA% U`Vfr/e*o.E~0* j$F0!u@ؤ92^'wg疕o\6^z'R p?V$kNT-\-*[>bܨ\^12ּJTJ\O5":ޒ#[&}r~@ƲS!'+/!m  s^ Sֿ)4ʖSIs_tPc~^ (<ۿ8{<"+FĖl/^lÙVg8#'Eq?h(/aStΩVFתf-Vw^8Uz_ "Td[{* aK>%No qy`hJ~˩ݮy> b+qU[ޏUZw1U mXP= ",Ȓ !'7Kqjٖ7iUpW^HI00we&ٚ|6ʾB^z`qv%2<\"̈O.`)Jbm%K̓s/!H#˵tM {vEa~XL"S")E(ެͤU$% 8.` ,/n{J`Id`bgϠBd+&Oi;|lEyul'5&U3PhnlӚ'5ȉv`s 'KFK4􀘾fY+pMp7y Vl,*L498 WdJ]C>pB1uyKZdc% (!lk2KRwb-(v@<mSW-oiA5tKي|ݹ0-t.LŎ诺 SӺ/"]SG4&S[kT9v6e E{.Զyͣ Xxqs݅5IG״}07iQwh+t%lˋ*Cr on/VDpܨ0k,Q0DߵIo|)erɞ4p4Z@N8.7Wj&wyΨ0Ad߬D #)PW{:ڞ%nj 4;D:.m?6?1zm}Mq&1ݤ#Xy}s2Ş_ׯ^A2+w> 6Q^l>k0yǑ4 2(k7#ȍFv~Ti_xLd_fi_8qf'5Dzvyr4]O*;czrߨs#S:]R|y= Wm(p^wMBm":~QHC:N--X1wb1*Xf$J:-FSs<hwc^K'\ HZ"TEYo"QP(єI6nv(a,1<٩c@FԳB{J(89\`u%RU,Y7+p@P.X%N9f P@Fxiz};$4Ծ v@ouIyoմ[!y`6f\s\WObK:'Mnk $aI'tt V ԥ2ρS5!LT4HmA+xxqi>s 0ҙKz2Şywroɂh"JhDbqX~=h-}CtI}%>2~b3@4\Rŗ'uL2d :yC6~*i 1eŸ'ۻABH YH_V0`N0qtpHgr(e5 r""WE/o)^;1&ZF*BZ`ZnojpxP$TA*tQIMIA{=Vi :qSq9\xy I7ӛkr@0,ͷkpR؛Im$Y qJ'Di!L' '?$'15Nm)E3b_Y(Uh@KA͑p/5r[a#uj/r8Kjhv7yIʾܭdUups&ZjB/4OJ-µ߰ R.%BI"38:|Eכ+f>QBegvoOi)~ xD9\eX4;&-q2ٯЉ%J-)oэˡl_@% vŭ٭(VĶ cJ jrs&ʻd^n j-ii }i eLo>%”Se.`'}R0VdZO˻8|E5⿂N 5"0\}S*o퀙Eʳa~Ik,)S4gؾyj#aM( Ԧ+Ix㠀^Gtb#@Z^%lb-9'C?PvO.$Kj)*G+JQu~f^1tSς8h~'GgߗйvTfy2ֶ.4}J[06?,Wr*x9Yٞ} ^q}Jm'/>b ltZ?J;7/P ]kO`5 z!&nџ@ ܊R]̍Z?t{l_|Э̩j4nq#sbg4}=oe+|6'0\(6%6jSЎd+IX$ӝqQAqP/Ci-  ='W\!*w^7GN TUHmݝ  M+OGP ȿ!lve+4!X'9ڏCnKl%)PlLuKYVE䣜-hj!΍k ]9TS3Է}׺|׿Fl)jgЍboo\xwv Xص+N&,䝹If{j$:rM<Sn3[GBmh~bݽ10+uNy^N|\MqwpvK 6hVLX@Ť )r >7׍9+/3#__x_UuhjU#{>!J<.(J}"?%R˰i[o?se~]J{EIÇ=аoW_M=L|ïZ 6 |;:AHqNgj[wߘT^ kVtJK W#Adb)B,=&۔b|9p'x o#"F)lR0\X>Dʿ.AyGzJ ֣'V̻K8gyɒ _Qm+@|&&s-U `V_s>Nb2nGpSZHγNeSKI5GXYġ[N]6''7+FRPagźKZ>V[y#Y>=J~9/u^>K %έ/k ]:H,8q椎 9nMP͘GĔbPxLMK>@$סt3'fiʯr/R)I;OFVlT |Iu:('#<ؾhor9nTsWSmIrOޮZ%Dy;V4.yB #闑i@&zOI\u`CgiMj*j5 P-\= X~QXuH΂K Q /g͘bdV;!YXᴈ'J oq)mKFYeJ x}pؔ0! muJo^^ VRB@}TlmK>Fr)^/EQ4*q> 6)$`m\,` *8е&G{Ch 4`{3:1/ˍ-uT0(;`_duVU\{*3y)iJ`˜ۉ677K N Ruқxfo#o# CU\l؊ qLE⎉hB5!żDԃ;Dwӏh-"J!jtLfPt=7:/ovvNX? P4wc[E{+OOʳN@͕hB#h,,Q5G7_!Yg-%ns)T}GԪMx .67 .gz ~;P&n31z{tb}P;Zt(d-lLx2נ80{]e1r'~*ﲰ4ԻGL=Z Ns hY B#, c̠wpRÓSĦUͿ-Ɠ*y \k{}26 "7sԫJ^=<9w!\dH!Z~Q>|܈VbSa⌤C/,e} @ [ ;E&֗#ܑ=h1I5u\Uhu ^h-L_mo XI1B$d.!P@ ׁ99+}h݂ӵ֜& sT5!i7WqzQX:lO,: a"JȔr,lTGaJZWO  +D6Mb#tLzsڛ+R<7a$u[1&LD޾s/5`3xà~= <(]!-A;()06@-sҢm}+& 4p|"/^''AesR]=zW[(4|'v(jZeR\=yio3%yd^8} ߭5 ]]tu)mMꪷc+]i : B\XVPi0NP^u,2y|eLHU>z]PvӒ 1'tr%5^} &xe-c F*}&:D>!}t=56[^s>{r |Ӈs9P hOĻyjHUG>W~gA7`lXdΊC25TRsu| .+hxu:D:p5f $aX}9Hv3FYd(+`xXP} w^ <(H^8bdohUPH{4dIbs{J*$%(6MMZm:P2mJ":~ImKqnx|1,[X1/9^(}Ds"o*Rvy3AQ-3TQYxB?rPkxzu#Rҡ W.#rEӎC剽yC0NTLS J4d"cGd_( @HOWMx) s\ &"J4~1wcGAV: cFI [g'*<=ǼP/ܣM'Iu @ _x FXBV;I BqWj)[ ܯ}gd @~f,9@+Y:ӼHHV%0&|/JVZ EOLX!1aTM AY=ЉQmsq I)o=-=IwPiBrn`Hv^@ :zl3hkU) ߁[' BPZU h@-yqglv~DAG52ï+$p@پC <8ٗ/ׁb* o[>x~1P.@O[!݃!^Α?STeL翳ǩph{2&g;_L H&9nW>aKD!~0)<#r\k}ۚRtb8+Kixe3RQtg Wٛq'Q ӏ2AH罃و殔<oѺc]F>{HISm:OCr^h1q6O gw='z%n kYr *ZN Ta:% z{?J:8 B֘ʊSŗ>)Lt oȦF] ҹdYyTZ U-,C?9PT{Z+<>%{>P&fLBL?)`n8 <˖ sl ~]=$AhhGixߺD+ga~С&HsB(~[H uk 0׵2 G7|^f6V"w@}m-aeQq?š(ء_ A.lbSrsٽQ#MF%vzY t a|3eS*_t/ʬ]V~cS, @y^2z3z XͲ]*:JA7GPGGw*=ldPhmjb,$y{J2LMvfMvƶFijkqs0k +} cUi9덥' m2eBjlhZFxc3]$a!l߻>,:!IJYjdc%)qM`)ypZ4'NoʘF쿎;Z%r{ԅ/ǥ~Y9wa@( lt9t X7סZj"rN&zWJn뾧~l|pѯ5Yȝ!XFI-=k _ʥShB=%w2zM%oH?9ćps2pRbuR![[fSvE`Z̻YfJ48ՁExR;r 9AcN;WƆJR cSM+RNT:)qM!]c- [APWw!NVp])p[d4T?ϵŠ$kM[v RT͏5qU4BEn4?Ẅ́ZصNԪyaW=Wn HT05CSԮ̠}DT-?6rMw`$8FhOdwiܤnIIۥKyCtir5=Gw1 e]& HFPH]w+n b&3*Cxj.CǟX3;!j@ɷBN:[3eﶚ{D8|a2 i@D"Ў!g9 .YWJ@4]?~4᱓^y0%^wnoALk!0rg?x B00a1K{ +Г+hRH8sjdL6B6r[qHP5(?uuC'~yDAe(;1Ez!>Ez!&X6U[kj+#,-/gKe 9Y &(hWh0?w(1=/EU78{|;&0b{Q14ùuU3#H.N(DVVU+GR r "ԙPHnc$B^Mq{ÄՒ,fGf0}M~WpJ_L4AlWn&[$T|oll ~aRUD8EcCz>P K<ƹ6~вջ]aJl'QLpd+L(Vqp)m&k|ZN6h~A0f`xOo2bz:.!RA4&r`g>RQݞDұ&=Y}Ğ m>cDɞ,Hȵ:`&AGdc­^Yej֜_h3T"b]!QAq~[ƮpZiBњ/284KVTaսEX ]O8 nO*,2xk#7\+I$uj03e`L;Q1鶉R{,g{S"lOHZIXb&N i溺<j0ҵ]U,k*sJ֜wפD::v]>^s'C\ګ̛91-!;@/4mlT6x-{4riR)"dw6vLgo26^>)batq h˅Iʡ~E]?>kLPm>(tB3&O'Jɫ%~#̸ّS;!*@b@aLTI؍u>mt Xé+3&C#t-|T\n)#O:ȶ׺b@Ȳ ]p>cي Av: *UdHǘ>9ST7]v{"8֦; uw 1С5PocaOC%Kq*z8÷ P=4?b#P(7h4E!A, a M̂: s?Vv՚4m48d{UIT,4:d6fK6pat wkZE5.}Kp*-ۼvV.A͕ع]@&[v*tB;mt3jx}zmhI8w"Rf啍<:%Tz-(lWY| \tu%cWE#MϚ~cCƦP~{Ê4I(fQ=|v 6g-: :PIΒ異+>R}$|Oo҇3]}fmݮS|鶸tp춘*[:,Sd)m܋n'uŵr)dk%8NrJd?µ%N%hɍTy=߃NT0:蟓*09 _:3b_+OK1/NI 5=tķ۹HJTz(d7sKjR&_*|`Fq_ $ vB#TmNR*T+ck<$%&2=GR\mHGg~ |` (J/E.Gm_F֐ϗKx9sT~T7GB$RQGDg{wD+N0.P* om ЃMx7?b N ؞Wy';+玧z[wYyOe_)va Dthfu8F-T@ oDTKY.' rhʰc^94Cp C170IꓘP s,i69-L*V"Hg*_jM|W`?\_n/ydmӗvToFz(@Hع򍒔vOGn+q*&d>Sa]F=u4)$ʁH1&v*maUy)/ub'4y$`m[I@;R&1a=ޟ\^;b#gcdD5y>cmS{onD3)9 #8U hfO djL.7-983f@ 2T2ɓt,G15REL=? 0I*Ŝ@[Wz^٪mGcsXs`s^aos̃]dvjt-J+9]Po*kå$|ׄ@2hѨԠ$ )vDlj\m42ѠjVkZ#r2Bb j}s<`[ŤJLt, ~6d0Ǖ:l+YmaEP;#lQ/OvHa_?t=02l_sh8ka`~pˌORY ćN?0>Yu6 Pw>Lݐ7v

@t뢅("G(! = d Έ)S nLR#ovk9De&qVJ\YwṊ1Or*Tcz]'"KPc/FL@X }ט8NS}VܡU ~?QGP7A,l։?̝-Fʃkmܾ?[ rMaۼsԬ:m#7/\u}rk8O^q!lK LË?o>nIU_ Z^4x'4A#G4O8D[m*#}vfd}qFYȾfŬ[>7 0)-6IW۩>k<%K62c OKM5(Id 9KNȡ8F#X- ?ʊ@g+mb7hxX-IbỊI,V4}اqD:~!۳'WoZ `=doO7\1 4d^Ud@D +4F2phʀV_@au0Ŧuί 4. ;uA竸1FIU(mǙl֟'WjHx&yC\ĸGl -`Voxqh6()–r'G-vj/>O˪~uQ7+~s HU|>FAB5HM܇CFLBP˔~xF1c3z}й*1KkjK Kv e 8 61^ Dq^g F.LS/e<|_\kK[L0oLG vQ9:]w{i\DS].qRf$NQ) ̌ 1uHˇ:}%KM\ dVxn9Pdp&:"! j|V(cV yD,Z{1W˒v)tz6(g\!V&ݎ6xND72qۙJV:$Btxp}:g 'Эm=C.EBt^ړ˩I}UOZϒ/'+^R;+>yãZsV|%KAQ]e7Bϥ~"Q/Jsr~7ʀ?ܨ2 lβSNH*c٠<ާzNE)==QoCo@N_3u'_OK[n&,eN|TSn| x~tָêtK!)Bz)`QkKce,$ RތuSP0A+ȣÞ~)36&KƽW!?+jk65.dd[eF!  \,SŇPX1b9vyxȲ T~?blߠRůTs3-r 'ϛA1 coyW|4cIW@2Qk8 _087z^aEw;zĽAmƁ~C̪aܰ^Hk` hVۚR&w*-Q2NeI-I~CeEd}ŎDIМeۊj_DTDQv99Ooi^Q-@B@;~CˋRFK@iQ{`sH7ᯔ -TPFxxPLTn";,-*.aq܉RMjlFm6DFK]{צkwiOZ&Dz "ZGH,!&6=%t?od IEYԅC%)j6s fw2aɜ71Hcؤ!b5:z!ul8>Ͻ"8I D\-0L."9AS70r.(X%0f"vTFѻ~B$ d#ج7]bBn0(\xOrqvq̟\נ7Z%2{uVJPz8E/4ys#- ƁcNƭX:`ȵY  j4w ~a y'.(@X_)[0:x ,DY)˰, n+r>+~Ȓ̚Dm9y̺:ͲN-Ul<+NhROCe+K~}I0ƾ"ZduD/Bϊ|heƴScD%1Z}m['չ޷fnڒW-,؜Feeie ]H»WY oG,}KL30^az4sTȯ#5Хͫv׬#OIG@S#Β5ږ3aa>`*svW}%Xo(q΂ŘFKq3,5r>Vw'QA9 \[&EmdiUkʸD0さaLp&o 4E/u@%7 ݏ) {f 4/:IW!ZQn)W]9ۏ"B^dw˓.=Pƥ*ij=a&xߥm9pۢGR-s|-@qҭ)[a Y_+M٣@="h݇74fT E}`;'::g.*eukW0'!8_J^qPmW;s+&/ ofjR!B|?geJr<.Pk+LK4Vcݳ9ʻFϙq*\%|0 2I MS=nͶ*:F-?jPOךx&SN^W{qKc d^zw qV@yb+z:HB!xg>ot^:䳣Bˍ?ywZE=3[Rau2]^+zf^yf9I@İ;>%z^T/]S.$  %vK`W#(M$20O;4_ЏYWʼI a9~bݱvUyGo/\{%~R)VaШJCu0? ܊v&iVÙeBvb^o>_Uyh]_k~͚ʕl|]Wl4/e-ѷ'^Љ͜Qe|N jͣi$a\*2%v٨V֍i$s.wX T y{3k>E\ex@LܣR]MR X5tྖfN=&a4h?&.X`~Ʌê]T[=D*QJcuDv^m%mۖ#@JNl[^)en)~x:^u;"dobsuʷ(FJ/×#q\ފX"66wl@ eT;5~rL:'/#ՏB0@Q%aM7KaqWM;.jNȬxicH_[V,`M}H+>墛A|y==/HXp-oywZ{αY̍ rLMX:G_sE&B\rx4^:"RE :@&_Z ~_@@ H*lQ nRODi0[լ_&{iŹ?b7vG~QIW&u}CNʠr#w֧xWWnKC[ O₱&e l&01fvӆʺvPGۀ됰@J縎|αAQj1rMA]! {sr:=f | ^x8FL 35q x3 J\z1c&#[cl2_nsd'? |оq_b*)dyӆ|6k;| ń+2;G0.O+qd^hW0u)q Eh93t 7UO^jTϔ.f6B]E5ve EX7쓗,v>t3ΚD=eP>8ؗZ_5YlzR>Y)w8gtўӿZ[0ܭޔ12Eh(Pe~6Q[;b{c8RYg]T!+a: 1NjvҽP^gض ?nCyq(/$~|OaֈmLkF`6}iPlki_LXu+?7_h0K}RvE./j6; h`Hu"G XE[p b Fv'~Ji։`|A:GYևagc\NA$kPn -{"H 0B#w& Xk~QW}K d[@7\&2IgSKb @F7хMBU`Oٕb TwgөLL5^tBS<;7ʸҒf|ot ~UgԾ}L`1}ebo4_i a" Lr6uKŷ`IVXQTHa/"[L8d(Vq9Md`2ej:yoQ[5q gEg;1% a5 :M?joo%]l9cSX{iH Nh! 34%̼}ήR*D` _JՎ[dKfL2m9I_xS?kKUO&`8V i 9OF 3C6"5K,7 "T],SѪkp1E@pbT*݁ĜO35-wH]E==JM%XQ1LG9c-<{z!F(AAPuCPx3iJpo7] D0nmT3 cFѿg̪ ۟||>KX|י]g)4eğˁ*2"%V`ڌ3-a^Zv?޿1(}.5vطSc$]+<-C pwo74d~.T5AG&FhE#co'fA!9ҭٱZ$zΫ|4SuaXx,y leKes%qW*@m̴ú|d}0 'P%Xi<;Vz X]u bK[tq)Z;v)K˳+?J" ;)ߌaF6&\UPķTϦ(??4\<8KNcC=t#tQ cXƓj5c$*L5ҟ7@{, %"-I@5@AŒm+i/ */byj+v#*'&PjZ\.dY%}]S&[e"nR:cU~CKTvTn*{n!Z X_˲W2OPbD\JD7XC3T$K $?u&,{ن~DD.)wyAR;џ w[et3ʖ U- #OMA?̷r 'W>9(f|_@=4}b. "EO[i tt ? F|r& ˹}E,GWJ,GQݴv{=D-`s_(N `?ޫgՃ GJy34T ҈9]ҩ"%ߧM'5Aᰡ ÖR[ǎ"1̌Cʘgg^TM>.Ui*'%#L$b5À/Q[B1%<xkbF֠DF"?" ~#ӫ! 󊃸7jfj>4J izoG ׶uÏz=)0s]*뉖*SS­ӗm[N/.f2P sǙD3Qt X_7{nl.8<,ލ{[ҷVR3Yp?TRC^"}SRŎsNpŒ }!] 5o {X_f-# Ѫ7f1ίAL`a,*{]MM^;ߵtނ}%s e9,!BB㚕c[^(+BU;LG|cY؏#i+Nà28l<̀"]L!_PRb8U^-F:k. <ZyG84 ͋ݡy&=n@')mu"/U5rx}_n4OyL 3K~;qڿ !DlSY!ppcq kq8g$u Pr?❲=F%:HJBs5r R}T Cq>$l\2Tc xxY-'Ck7C' E{^.u$w,^]€ZnyZK2Ս<e ՗*/3D.yg'OUXQQ-ggCB`PLjrrjǢ83V,ǨF(wpPlc1 Z_{m`㈹Nc+Mɸw{6GL~#s&~зsQ]ui9J(+/WN$g.)9cڞ3҈"G[61<.JZ:8%4{6 _!;!:08 xjv-2xjec\WFjb᳆!Q/FS@'Cc=3ȬUaO]ROQisEٸԏ+o:Z!k9 ˯VE\.YNobs'bOAx9O`h#t&Vٽ9&?D6/hkv1&E;Z h|30gpf.y>9xn.T K߆&A ~OP,BvF7jZ/30*NX _{U/[hGNyRA Y#Y'uA >ם;ΝEkʩZ@/%}akˎ]$7WQ"Cp9v^j:p_ k:l ".a(SJEzk1bA)C bCڞl&\Vp߹!e3w/)HK9KVncҤښzzQHvM]`Wb GP"hTTCMZbXŪ£V+m.ۓ}CI 1DG+gIKFCӳDz"Njxՙb{?PĹ[_:e˜XVg4bPt#T6(&% )4ݍٸو#P6*=@|޳r*mM3ds\ea\Hd m P~ ab/omÂo(9Ϫ 3586K[zsZ.HH@j[:,(bʩ&" հO8胎7 Ҿ6\p'x0:*M}ljt 'Cidff]62Z4~M2IjOzrt)uho_&*wcfHa42<1t ;hTq?p\sd0\"!^O"A;T= brwN[d/N'#PI!ne4yD\CnzBo`g9;t ww]GNok1?ꘟ81=#sJk$h7!Er{C& c˵IViM5q'PPXøhg*sd<|p"1BAiX~Vvy5^s]W=0$C>d*`]Z1 !Y=iA m S@7N)G_v Sjt:e6)= i!qRJ%d(V*VXbNVY̥SXA%AՅS) ʖ!;GXJ`3_fbWtʮ6ljvHsAUTP 7@pH#nͪ^tRmC:to>ﲗSRzp;ɰs[b#4ܻ$pxA\k{௞Vчw+%i8P6dU m=}哷g{7*|󡜥&gΧfN7` X`]?4}aq`ou{ L^O@uD'ǭںƉÜ+p9@>(M|t%MKjX^Ԧgh#} n_b_2D#H%Z`N$gTJjKV S#cxF͌=5q[ ):;c; v`VGd>Kޥ֛Js _z脿Oщi{ȣT(]dH)g#.ZԦ`STUQ")B[w1U{;H=^w⑵!5xc%ޞ9pn86}SyH lLBb6u[}S /u\H}-cp;~'emчt).c)fi;B0|(6j Fj->ZTP%ED ҁye=U.JШƒUD&0B[Y*2C֌ ԺtQᙱE)^Ht|W0t]I&Qq~V0u]w(ʴ鰌յUb@zٛ4/H{YJpo _wӊH7۵=hVMjPX7A)SLa eu /9NڍǢJQEFµ(UE}DP'w 0mqQг;~w#!Xv-tn%:4г:+=b/31 Ec)\% T~ Hy^SBث.+h s.8CuQ?|ٽ+N=NH׏i[<5{b'1;Z;뷈w) &;2ObVwVzBg#-b6[yпc_8D={O_'eڑcd|'#HKF䒪>څv{\$^5LuJMv#]D!mF'ʓfD -ހ?OXN*c 6'㳽z 93Qc6t sR.ȇߤ! 0Kk]|R 0v^-q`/Q48}B{Ԕ/ӷF)5#ߜ:[NRqbtZdh"w Utqȣ|ƓF˫@v[leZ0T{0ۭ[*9q^[r 7&).#;e)-d=ie F!n%Mѕ!My1g~1Hz \3)RhZpTCQvcf#Dbo˯ s*[paSzlJְ`ҚK2 ɹ yJ r'P/|WqywPDG 9cLzeee("4{BbMc6kݕD Dn;59T--/ DHTBSR KF(wa qv+>*_o$T>3a(h尨~ii1."ÚnFRc"ζܑo{YΛ ( E$"]Fs3p9uA}ZUYX yW} .Ø<ֲEaȑ녊)f>BۀO*ykѰ:ӳƴK%B,] /x- gU=PIe*ݣby 4x'COKn\\h3%47܂Jj[ǡO9=E uTMR([ZD9L?U)tRzq4*\ۑDVWl_6C>,ѣp,vvŋS:,4pR  lFg<"8͠P}D߼CgToq@GP?{\H`ٖ }g,dbXӁT|'PMZ"<|%3րx=(*gbwE#j0KF9HDʹJʠa 3$e: =F|6y/7*}@%He8 +1e tQnrߔkr\_͆y 4ה ]yBzzC{fpZ9Ƃ(*}+ ٱ,}!YD `;w V0+"brx/#$$"_LnxUvRc^}hhn \XZf;]LDyuV~-Vw[mDz) s2fbcC!*?x O ~DMSD *SyL>9U*~SEf($_?G4DLcz#FR'JzahLL "݄b>j]'U*{Ο:r- ~9P }@tԚ`00&ۅ9l5Ι̩֚Rrlh(Oֻҝo*j1WKw)(r^GH R]&Hȁu#akLY^Kwln{S>a'z!*umphGovRݕ2RY:V OTM]1CYUng7+Z~EϢvs* uD?Br%W;y˾X3Yشg<ܗԆƅ47*@^D)Eк툤5 Sn;~Fg6H DyNh4&A)yGQVt8ָ6յ,4daI j{;5i@ELbخ>( ,d4*L,!lODvp}(+bbcÅnORDa%2[JcYx^@pGZss#+|'V.ȉ31Bp-'$̹a=$bhsqccA; GėN6۞ht-g]c͉| -X!p˄@FO_~E܌0GDcL_Do?͔0zu;ds Cs@{'Bţ=ˮF\͜3c  S/!0lu)\,:f䍘$7:6, oG:C8}5P0Pމ s9=ڢp_AWIH\}3ir8FO #5}ZMB0ڞ5`yt}7(2RB`ngCϽ9ԃah*m1lj)YR,PMk|h2@;9P>/jS"ʚ _{jG@YL .p!TAjRLQa 7:k !&jr)˯? H2.wrwBTEEթon g!-NxN*lڲPhiXV=4>nLl+HveWtb8A5.RF)Oolp&3_=kCpH^RR,O[vᇚW5X/Г(D8`u"8*T~wWNX.}Lθ,lpNMz]쿵LR>Hdcق 2"7;u[FL6yl '|B#[};(p.?c$ s0G0.·a:eX$4WNu U`|>F!}7-a *-t_L+.*oXa w#  tE>N :;2( Fմa"\Y8ǵc_uw[{۱4ﶖKgy5>ڵ]w8p)T5#y9^}Ed˧ΰ2ZBf2 }No䆇%Rv׎QlXH,k_K«A]B]L<M᝿KЅ%jnl7$^ t5M]Ox!oz29' #b@ /mk-Mϔ'aY-H@MwyM&m> ٌ@^| K)STCaPw(m^jkZnr)/.ZcɜĪÜ k鰻*ǷolsB{IV@-b6PiRhʽ z+xhZgX B@(9Kρ|F~|ƶ9ܣq~,{~ .`7 庑dzB"DᗼIZ="Yn8JNpԥ+L$9Paό{`tya_EXg qS 7/LK9'RիW{LI^3,s.LiZSZNR0Pu70snO|dgVyeAUvy›Q#g4Hh=N 8 E=-NqJ?[l" u/ Ӈ^sMJ̭^"L}փ{E8cqgB"ID~4"Gi UZ1MUP:>*xZe3DrB|Տ @-_(uKTq&7lwJf0YO@qơs?J:k6)VE_A=2kyk9FZ/˖!^ Q5$}/R&hE]^{hdWr F肐GvB #v("!w@ z=^$Z5_p1vLrzli]f>q%4t2HazsUe"@ZACJҿuo/W0e7Ts&lIoK@rNKhgzn3emaWsc]RQ@1 +'k`ݩ0QQ%Y B*8Z<8yO#<v]vU惗A]:L V urf ߄ݜ{ut@"t7NmXºX/v7~ !kU)2}r(=Qp έβ4(t<ݿ>X63d5C>ܛp[ O-1.Jhv5tFi)cL~f#u\:]= NZaub%8dcZҚMyJhXLc>@#)8.65yUNg~͔{dr|i cj%-;ǹӽqF3w4W}z%,|u)X d_ʁ->M~eEd`S=|*l=>{gб <^4l贠evfߓ!٣Gm(4?/n]Q$Bc &OU*_[/q:UNvџ=N k c\ 8R4No@=ե+X[ W/5!FV6nFmmTqB&X^!GmU4S#m.&am>ޭX>L&I*A$Gc֝ZsA VLFU`&ckSPO91hh$C8oPHc*j:ǵK 6ϒ)nϊNOǵ3/j u*-5=@Jlk>~oDBZ*k31fԿsrr(zv<,A}OlZɘM_W <8,tp꼱Y=ڲv`=lHg4.4{${H)Nfual=HIkw?Etďo1l(.p5Ŝ2(5ހ’!k%i9E;r+ff`Ox!Nӈ?ʰ2ԣh(Zbmx)yuHǗgj#_&T?Mؚ1RHѾqWmwnHL*~1࿮,@9 /^'i{ M %h`e3g9ź Vl/v\z&(릩zwχѕX|T:8W }P>q*/ #<fo:16߄tRK.x i˙||I- 3g朏$c4D,lă'tUŮ #¢ j0x$C+\ \iw^?%-=wxtaD` ֳS1#@!'?VU0Bفm@, ޙV uQ -}ޑ=3 ^B yE2:Y K{e2H<v-1$-y++RƼhpZU1)@-Ww*b¡6)]'" 68!gOz|(\xw}i?qH)j-xTS9|, )L{sםد㌀xI5z,RT)h)bz+]V.9G;(|6/ʹ<􍣗Ŧϕ!lv;@}˖jxyAC3eF4IN]Cn֝oa=0:I0L0;EiZԊ'f,o/J:Sc%@ĝ+;#j-jjܧZǢEō2s]QΑ͛^ˢuAB4LRoY2Ra{Ynſh8Ηk&2C!@>z\Tyrfu 4 s;Msh"DHxu@44쩕Z ]Jg^IٔY3 HL4a!+v;0:5cuYXF({Kb y?&.O3z)>?MsARAwϦ(W.0k{NǬ54z ԅ)kwNJMBLkטщQAWO~Wz-I4,ǿ:jxW KZÊ.R¹ q$wtU 4m|_`b+^ yx7,앲ʺᦧ<حf~yjg9"O0pyp.@`"kؔq`R #d:PGSVKjڅ6J6 Y .vq\ ZCҎ4tS67_cjOn9dKOFۉu R4ېtz~B|Mpr U/h-lj=jIv@^)4)pmWoʅ0 l6tX& B"dhTy%Xr_h n- "M0aXe]SIK|ea'Oê01ik8W\Fxiz("e -@xNѠ*)4W[D -1FDgc>,h5Gfi} jBz7zLVέX<މCs5vm| R)uqe-J}3NejP6 @% L Տgl>#`kٌoԮ^S鎋-g]LMu] ytƴy TJ8~u|623Z[@l=U~N; eeΛ쾼<湖ڹKw76]VyX1.{`fW~J#2v\[$YLs ɦRW+h >,BlgqUt㓝(.x4 OUW 2ĀCjl _^F|9 cuOF9$_Z;A !Pħl ~&n{_6O'ċ ev58m8 >T_dsAҞC)ZmFlln g^EM³g U4_FLC9bj+n*ƞ'kM,Og%헟>xU*&y$&! /ٷ^e_G(KKz?!611HUpmX$ v|Lun<-)s3JQTZ"T(a#<ȹv>%ݹE` UdzV mYɣaY7*^y;nw&)ιC9C\uf/H$ܧp$ozDT?I SA.!0Im*SwsfmVeh^&&ͶV+Em44n;‡n}1bx)/y;/p;kG#Kh~*R-J?#4RW&z~/-pX8%W 6jIRF :kw\P#vf_Ax*;$" yƾSXJUicL |n0QjRĕzkeF=k=zG:Wbd[cX+aZ{D2]hTǕ 5:T0o5f˙E%ݓ V%2#*F>9}]׹KOil\@B~iKɊ`?o -m91-Jc#5))smhbD cӱw‡2uLnb11oŹs2EΉ ~#mjڋl?A_ڕqa?ֹF"VeMkJ7$JoFW/L9U>iy(Y(:|;0U 8`JCʬ7s'oZÖm\ⶵ:1a~xƝBV ?Lj$:QUw#!2PQV2 g@ O ",ì'e4VǛܰ'V_;pEEGt#bRvװ?w-$Rݰ#â%?u⨱N[XŁǖǃ.z>v*ߤ!N@v#=uJhhiޙ=8œL 7=Ԕ^#G+|VN= FBk$y+Ttmk%`ʴ;p`|Vf]K 9(%)qK7:Qf9v\O"(EȘ3*tl.4̜Y6EkӝVvAH[%?\ YH0$)1`+HF%hVV \Vb6ǯJ- E{$D1K R*uzEs"F1YFT6ܷ]" -)Ont-PN&>?FАH!yl\+j$GG)R3*,w+Ip|$1$3U#߭\)(p'W-Sنdwߓ h*)+SW찍(HI;ӡ^P|XuHV6{Y,=ыIrM*sPV){ 6FYމfbB##?P?)|0j3̚-cC04kA#ƃG ^mEK#T2WP̜&aWΕ~etUiV.\d+F ҚnO\fXАM#6Yw?Z_$ɚ`^ᄴ>瑰ilH o ]Ԟٲ *:761#+vdŠYn{^1Vߠ2᱘]wTK:sjx2ƺ1'HDA֞V` ԳO=>6;ѠWz}5nHҁ BI%'״53K*;)$ 8A$VM9j;WHĩ=4Ҁa=,y}ͬ%ZM=,c>vuY NS.CۡoP4|G첀q\Jl/Xibzdlͽop.NjTe&B7@2~G1ShJѫCg=g4l{ Gçȗ//3GC}w!!6L:pEvMJ%dtH?h[NiL~%y:~>21Vl lcg ͿTʃ]:$J?_Q1@ ٘v͟{\2[ \OFKv.>eyF~5j[ޮm < %Abw/n.0#giVN5{%\ըم| WmI^B^j>4noIC5~篔Ysn?@ht0e B<vq1wFu >'zT4w٬A-ԡDlgM(H=ZO_2aЉW#l74U"H2(J R;7tW o,B.$X1L`AumY):}U^cĖ˨vT3' sv N[[$!t]җMzL{\wKwSշ.w-ͳ#0^u,C*X|>w{-lC{nK(xNZS-z>Ng׈2,ejtfDND 0п:'y*߶^ڄz\yȁA3W!r6*%/U\YP6 JYԤOkK(*4@6OZ4n*|uofeoI` ,1oUE=_!I |G':1~8O v7\:D䳬m6@k}f.aMbђ &! !LSJF,ωKo+@5ׇDtFJE =z~@g4)aae{,1P8u耀X"d۔4P)Vh^v &NzƫP£XjPUIҮ@zwXs̥ kƷ^߳~ɪuΎv4)!frNsL!6_w}FżvLR5 SDr-DT$ H;q[SRe4ttUo@hG=BD+x6N1;a y]-VŠ'sĒͨdP%m+b:ӎ?ot tE̳Ȼ2[U zw .8QI5}ywu34 ŽO**v~Yl|'+^y"ySN/Jtdn *Bx9HLyPv>ْG ŦQ.p^K 7үSpD\dzM^CF% CE)$- 'Wmq[l .9%x䖇/9XgJ "F~5-r;x,vXMDm%YDSݩ,Q5@yHZ=l;$5}]cο9lE8 XtTd2C}Wi'cTĪz5)1#b}M}s?d ɿ6¼nFe.6rŝ--ԛQ6 n&W091 fUw;D6'֬.>`ia7-i'm!=D7IF=HP`{ss܁,aA^TPkI9WZY}FG[mN}cݦcN9r +$_k钽\fUBiK9$N9"+]&_M6|B\xFώJ.Y"8HY!ʿ;4(^]("/wo/ԈIOJA?k]ةfO.1-uRd+:T,y/5ֽWJւj:5z+qEbYh\/awԖwJgOx7PƖTfc yɊCCHp -:d]vg!8FtA-6T?F~h {Hz^lY 9w}9 mFэ6}N{ZVtzU$L/O}>dsͭYu?>A֜ ܇7vWE.#x "NHQl PSn]MB?q֏\DQ[|j/ӎ? rM'uRClVr&AEWk/6/o)6ᅰesr:lբG~;cކZƢW牞cjLAF~V4MT}/vM;ȋ4m%e2 #4|Z់ ͍5}yA'1Zyb'ǖvu9 sjkJ$Bpu^0] 'Kl|^RAU25C7g%!9h A~@.u3ˎ bR?@oOܙN$/ "f0w4*}cV a;BƋIIט; #JRV&H+V}XG5؇C;?ÝYnRaay&™\]ft6ap:xEufs9W}kL۴t ;..ni IfeWS\֡D3z` a/(m'SV6T9ˌM^HMnUv caU㟢MP,W×O*.GnD)Ik>Fd1L}?QR.!È65]+d$(ޥN;f-#P0eRy`oy!-=ٳZde38S[PgL*lQIfW7YӭsP@oJu \3)7YFr?V6nH o\'] _p+B%7ee#Bv֢5$4 m WG4e6"# =61z߾N_]qŹ}41E]j񡧪t Excu욊QyɗVণ7Hv}0d]0)~b/!4{ġmnf4Jp3dAmpS^=b/J2 DLܝ9ѩ';u1\hκU 9Sp,Zۧ84de1`Kue@]&{Nĩ"l`hJF7[lbxl]j],^C;IJg5]EO+뚏q.;W2Iʒ[:N_%Q m~pc Ձm>!hL` q_AX'ӹէ8G !]+H~wgs"jlgLklSҰQ]2r v׶.ChWZ6BPP$v۸f IJCC#}3qU5w'Q;>+}ҕ9P , Ic g(e׆BN0}''<m 23r` 4՟G }ҁΘw5)wQN£h|K[f4`*PR2QE{~H6%;UYeDJ\oNMyJ;^o03id[&d;2XZ}֛q[N=7 $ &mg&Јlٙ %`8ohDI'W hʦSUHb^~g*E柸n(~ĕd49C5hf^|jZ-~(4B 7 xk@osB[ N ْD[\3AZ%k`="?# F BMS3&Spmk@LN\[[  Be<.iZ'͆q`Eҩ-&WQ|v't2e,˜Yt;|b[Cѵ%q; [;^h/UNw}Lv&|KY:d!0ӚSf?^'3%ȹгJmqm%;V#'{S |WΠw;Jmfcsc<}_$poN G r~,c ԉ¥٬kkTȨ1,=oӐb"MނPu}]V` hZuF4{C܌g> =' 5u+\u{ZNP \acc/N~'$>5yiX\9Z@WAR9j ^.E bR0aX|jR?ey<%5дE,[B#꾳5=Ww{onIiK[(Y7R]J6bwlMU iao,Nnߴ.)KM5fư=&飰&}dHLUZzYՄA|OV:#U+]J29`߆ņK,նtR~_R$ "&l`~+(OHjs I9:?{/Dq*2!zV9?v4ɴW韕k疆Bs~;V`:p|*Dh^%q8 H2y~ϘOI:}Xű}'7`0&@0IK_QJ2ȧў,=k zloD %&ʠ76ov#?E?.|Q鸲$4WbGoBWW|_mJ dL  n`= 6CQadMO\ E1N^-Y1uR\)0 <|u5@IeO#*JK4:ĝSEM-ooYV'6RQ&)HY-}rt?3_7~jS+Uŧ3@|/fI Diwmi@mlYI6]9!?wq,lP "ǂHGc$m:#R\L0gZ,(_&_MT}+ !>9aac?2?CTc{R8 RlvWk M{8IO("6g/j?eg 7./H!tLY΢/L>U]o:P%]W>  uk8 ]KcM{A/t8GvGa)GYd@Q 6Z:08t6p] :-^,W.|^!L^gI# \.|( ,n&'r-;]}qàDw=4F.mz^?( k ?+D{t 2őjnNMVWk @o~ȍk%S6!`p4v- ]Piᨣs/ArĸZDŵOL9HB'^C Zn;R @Bӟ,Ou|B 7]lسS+Rl0;w庌#P1$NuaoN>̺_kbPZ.69rf/hKKr,_ֿζK;G~j<r#`58<ǃ1 :QOz <_͕,@>#8:uRhR}@pө}c5! =,?%p G#X*5ud92EV#Yɓ<'՝WFk<hv!wۏM/r hƷaJiZGZ eȽ :\d-KxL,:v^JD'٭.: ^+{N1/%a,iX aԐ1Mu} N0 {g>Py )̙4j3ϰ ϦsȌzwY8p["1:#;\%5@t9n~!ȩQ"IXK+>?m&.@D)]b)yBfm+1mO}P !-,u(7o7Wl 8<4% \s"oBWm#z]"Su%hTܱvFx^W#em,͹8"d^>["+/*M3n٭ޯݷ.&[I"Ԙw1TTLC4w\^%̥[7${G錜k4Nۍ=S{ xt1:R@+4\J0Y(˲2\Ayb4j?[JFw6DT'<0^V#s\ݭvT)C\O?:᣶_@w9hx Z %TAHهapKkE>6{.HsgD6pYK.l+dZv{.M^}, kզqe=nQ)fTrWq۰#$3 @Gdc[D G0sOl*@9;܊wn=\{=6YڵVht2: 2yy-NJL( _:I;563%a}4~7i;6Oʃǰ:_ġ밁d,+E kŪF=\&rJWd^IGQQsy/.@zl tRsN&H.HG:h>`3iU@&V>ۘ\⬡hvzR_{|k?~x_ U~E"{sLrИ\PH`ji4 dt*%@4Bgޟ cBh>nS?%\*7Ie;DDO GT΄IǫIϭ񂅬O, >=2Er8A0jَºFZ0wR+:$Rt _6R@|g1GrgU.6|$ұjnH;>d)$C/"L0]9rHAep%5EVuhvadue]ō1߁>̗h1Z[Gv>tMe [;=Q6^7 #*=E^uz8e%zwP:NBҒbAm oZقPK#Mم #|?51@8e| eCnz5h9?NCQ G<@H^ěk/mݶ탄߼t>?c 6 47sD i*dbXe*x)de1$9V${N#QӍbt46a؆$'dY2c@H:BC7óTʘ +0'MBD@̔s@]<-b" :pןh]j5Z5OAӯ;:J=M18ču؉fޞ"2zE/]eǻU`n"dK7g-d:JrWԮQ:W;VTok1|Mu'Ne4K03[;Z :FQ A\F|s1$׽T\Yi[`/gRz,{!7#R)-6I 9&6bP4r~/ޜE2ެ{1Fmn!Z2NDס d?Mj綘!̘D]Ըn$7]Y;ȒhO:`7Ry&^*ĂUZM(ZE)\;o5;O ϙjF6~*z…}x'Iϝ`V"*:b,cPT9&I]3"%k UMuMҷPe$#S_wS#iEMa  4m&YrGZL6GY؝Y `m:Ef;xH Mdoj2| Jʀͧ}_0H^ZX O{L*}Q WBJðt9MZЃN\4VHk_IT!& 0mC0rJDc4a冨ߜ lA7RAR& :=џrZ&PV [IZߤ<1km0ofe ^5 Gb«uxƳe5 yZ7I=Y,/呒g6ފWj9cy!` azb[).?Fo ]֥׃,A`h:q83jNR? 50™K{eKu&#ղxsOxq1 S>x%G}+tjܬQ!T~i4`x mc&{y8ݐaT"ǖ4oy^ O#HsurOw:hF 543.rMK[i#\'8 $W-o # *-He%"A7Ť4:839;/pюdl*ߕ3 |&/"E6ϴMYM=M@RPC-V>ᮙAܮ70bwā}8;a~k(N׸Gw3R~,XMLа^M`5d]-@w*_xa%4C]Y4y|miBk|h!B<~Wz/ک51ΜCtӳuɆh2?7 /!=5H e ]>\?$F)]'Z7[ߖ<@ڔHUI 2l8Jt(S6&%>Fx)#zõ:,n!-cO-_).t _w y3(]KJ)>IUN8wDJ H0mMXJ $?> ,]6C5H #)qLd:s -lVKUt Y1#X c^؎ܷx/*aR9uQFʈݬB 1ẗ߻ T)(qΘ?+9@ ͈LrV{vFGI/kQ]b ˿kn/z5?dIcPMenx̣WdtܧD|H@UL4ML Am[VI/a)$mӆXců~֌DX^@a^ E̓R.@攃$a#qq0>6> 캌PA+cPU @I5 <+Dc  c~lT9Umip^lݏ+y<тOtv>,d?2eӽ:bxmgjVqBl5@M a`5.wYe)c0u 6c'aOˉ3 I~h 8^_`S;G,ۏ,{bk {=ė9׳uRS❢A3Pn=.OKcHoݫb']tKiedQG70ߝYS=2-%%~:Ff@(ZGEclAMIR >茅{sXV4uwZ~_l#:̊Bˀ {v|GsSx[Z#UX|TץrphPU3ylj:` 4z'?vD9ƫ_z'GwXI`3 XSy[Be|ݫYNɻ1Lˬ֘j}1Įl80x:縏@ T|=CD?2~(OLl)a}r`y, <``>bX[->LAd[a) l57B1ܵix\be*etlg %0[(,^g+؟IuNE`$~>adۥ!N}6b!KZidy{{ Y;MFOY% ~CjH\mےpw zͣ`~ 9{PֺZi3سzEfmkRTv0,A{,'.n[[NDPDZg )6`47c(kWTraU hѤՠw!r/D= @`C?kS{ #fdW~xF#Z<|qwt m;z]|oD#pG@S==<qMDj w Y ֓yT5dEYf[HZtut7yȰKV ?3MqY֬ BOȇzϖGh;u?]:=հf'vm2p?]tȄ"@XԭYI^(!M. Օk9Sžx+*=o%7ReB,3 {<9`T`RrywnJ~J"^"͋9TKo@ʒ`m@D@> (/`(=?I}1Ul_Ra>eja] sBhLS}ې (%; ӓv4a`?(\eY,.@31N*J_He[RcTx߸gG|!H8wҎ}Q|zXB2lE!5\ʼd~,۝OZŲ%XFLi1YCڌ4ճ^ԿC ўGe[ ^9NN[8] `w=ZxN-/G B@[ 5\- {9Mx:tKMJ5,Zb7$f$'X莜.aSmȵx^q\&/tB'owTMrx @eBey_g>|qC4g\sHM/;=9ն =P,TvtM2\A C+^0QF`v3pp||(˭8ohbk!с*d&pXb$@kuLA##c^tֹo RM.X/2]&ȖI }JV. Gsb|UZA8F%-k\jVSv50Xsؠ asGo.~ 7,1x 'Fd6k$QrqsE {7l9=%g&VȀp*-l𻌮Րi~233RKyM.#TLqr;,i4^!3jYVzt˘ 8j檇;Ao /Y1ᅫKIv3.Zyع!'aI( tL9M:)4Jb!ϴ1 ~7\7>M45\d2?s@NJ@Vh| 0'[&I C#;23Ak>]n+8o)c黸vmL'JOjA6{m!]T| 5ICG ,/њ[ZnWϢTwmK"0b›|9=ۃx\>u4;K#  E^y+^ƺhAWQ&$O4׿*8OUUsKkw[>=vnXQ!']kӼXLbU=BURyj~/pXoPh0yY딺,^f+&l&F>Y2]ʝ դHNP4yȈҮHQ 8+bպ<橰k ฎ+-F 0OI=*nu :4)_[?2p# !ބ7Ky}--`7IsHc#3gl@֦RˢgIP/Mf]`mh"L3vň>:YDܺL{zF>?W1w}= @$Gs^eDKڪdmc_cf(JMd3Z Sz~ gjCJv=xz/M[( 0dZ=@R[cEV]Lyي؉ML\is-3ElMAr1 Ļ{-Zzslͣ;{QFGd׾qǚx R74a'"D <{x_9n98dogSz)QP624?<9fK|hk$.$ UVtHq!j]-`fӇ<yJ9 z2 Q /׫̜L>"܍>%o!\:uOc7Enp@K}|+uoexA ':NlWI?c"TI&nfw'V\hS(4z@viF~ svHn8^]AMZұ G0_dwob(:)=ӘEn߈oEj^3. jU 3.  =JBKɬ&CZǗh8 ]caA#Mm0YtYZ跉OtNvc][^eh{_=$<˻ 'kn&,8C=҉[/8Xq0/hP90tX'RBӐIPR5 (QǧwQKIgIͼj 8"? hE jXnE\[ko _{RLYF/>Ih6usuK_r~yDF@g5da#}v&[~o;WM'dD,h5oc|?ֽs%[Z*8/1iBaZ]h}?7$XߝSIl>N.~9u;toJ18|p&Ae:<`sc^.qq%/gm4n  Eqm`e d=_dqZS2HA3K~ 7$j΢*#׺nc34BI@Me|PoWصjBVnXG37{`iW,`2MKQD /QOQx?$w/"$w .+]~{r<0MvDPSq!הLQgݞ)]Sy_:1r_fzyhP ǔ̝1_ z)K'Ut*`{1/`QwNËXHg~ Jצk¥&ܺ=0[%m`ἰ!?k(YmG΢#'GA_"Y0ZN>:} fCҢ L}0 O6II{A/Yʳg{;f).݀7Z졌>[z=0vm&5+2.'vc$Ab4oQܱ{8fįiy-i8fQ24(}d O A]6{PhTc\;H\ajઠ< 5@Ef>fGo%S~,i#W^^h.yNMalRA4Ev:$5`ʋ #q֓D+Lsǥ6gA ' Ur#61*$lyBn+g*l(^ڨPHM7r݆ AN!A3b(bC>w_}.OanrLk[&L誱(u/&_Q΂6p5RHj'Jh} +97p`/v! gp_,j[,O)\罨iZ"SK \qdih.?pF]xcAn5Zfؠ h.*E_6Owx6n&&eDIo6p\h| }]+ɰ#mbL{(Dl&7ʣYCBWFƀÏS߯,y4 gy ~N &Y \ਏ$3qI+R蔭Yd;M~Jf)o _W̠4 ԋ^#kںa'8)K"aJd`Xm5z6LTHD|JJ)0S}Xvz_~@i~.rճ|ZT] 7(&}wi(lnNK_dtt=I!GPiiu32}7B[3USCl9]p½X~E`o]nBSEMaZet <Ww]}5|3g?H*9='s~klh P\2JD v1{SDFoBZ 殑f<w֋O}{? 8d6qs*|#_^8D?G+Ef#ӌ0~RWE7iNLtpZ ٚG m:RE& "~Ef3FS(| QMHVf5Leb7銮UN6%F0VaX&F 'avZ37(zVԴc~8O/ܡû^fsh>A`f 2Ƥy%c/hD⹺` ^HXp7G ձxd\d"mMӞlN/ءX#7߆/^OZ`S :՞[ϏWHI\ɮs>Qtr4nҨlC$p@"ԭ#ƄL[.2'jXCꬉ:^tdT8>xK.s1b}B7 4,9dw"=Cq(}Sq(ͺzGVMfk4-tҀbB dG)$h%\!)Lmv@#0Y_k<6 O4C֝$JC[z>F=[efЯsD)ZA<ٰO^CE_ !G^ڑZه| ^!+O!Pl.,EpZ(` 5͑r0'OݲLS0|jdxI$Dp7l wJ:ԹXr5 8U79 /6)aҹlԿ r.jK:s ӡ?ږH@qSeu~ܟ[c=*6 `RMߙhʌCǯ,Otwax a0ϼOQx+} &_f^VQ}~̋"dIyk0ZXNYr+ñ)r؉G1+fzQ4GO 뱰BCBDKS Y/!|~-|>i]T}˱F^Ay%LVI2kuQÅVyDYku/)(#?#|3ܐyXw6aٰN:WV-)Ex!PH-_CXP$b pUQIɺuWmbG9 42XA7xYbbz䱻YNR5QVhLW۔s1tQ["~f gH-1U5ɵ5@'h!5ԣ#Ө*hT Cl@I1^Εuf?z8fXhBj]8&i8 !CQUÕڨTi$,t[lV?lU YÓ.-,u>dlHiMw/3g$qoC72&?iɍ{]3:d>ƌTˉMi?XFDnzƶ}@96anP, SfT T0#)581g#"T됢<{ WirGӐ183" svV]DncmAY=&;1yE=+؛+ShZ82\aaϡ1CS#8--?fؖ `aAiJ$B<M,._uGkPӊag(%Y^WBGha592Hi|Zv `(Dj3hJLB̠:&0L˱"FY~A&XF< 6BbgNVW"2O^^ !FjONj|]1oʈNaׂbV;w.`|xH7q7ﭟ s,$qwF(ؚU=9Ds0;?je Yϵa&<M1[h_{6U72r*Lً(؃ { YLO},M$=K됐Gj82`.^ \Oy }3M68iB$*3Q\tXPWciSsuN|fF6 6<:i' \U̯ȷ+Եڽ*uyjaCϰ5l%yJML;u됲1 $'ѷ2b5qڝm[#!{L-eDcVvJn O܂GR힋 ^.X /x.it~ p; '!\΍Kl=SpHmzJV5O')4 #*˔}w<>-u[XGXy!taj urs}7P]9]c$(+DޱK=m*CV{~LƄ5E}$bH^ݨ thLϐMDYY}ޗBLm0G ݔr;B=2C 40ܐͿj*ۈD9uu-SzQe͵0jő /iLKbrO,*vic?`TZĤL< Ю.k1KN]_z-C()MX{qߍ_>**)`-ܞ*$=Be/r"Սš#ɥ =5-*Cb#AwOe7^~uuDWfmx=`; 3jUEegz=}q[3tѕr'ў13ܖ#2 ]m\D!y"jR2qM/&v#wTͬ4g^>ߍ0T#< I։zUac_CbThpA]0E[59c}SObR9{ހ#t8[~Ϡn@Zizye"6!$9ڗ&wxy\2 :T;}[~D&E\{g>TTؘ>Aϔ P@ޅ"g7 שtٓx<`7D6r$={hbiq,>XEeUaN"y =P;yKҺv <B(D0mR2 ~o̮J~>[64J1ɚ؍͉Y4Sr>/EMOi? L~ :*Xg 3c{ !t3hyϯx<ެ {d/(iohG3)yZӐ"PB9/8U/ +jlhW 򤰐faB-4t [?R/ɑ퉟 ?^VUΡzsϒIH GD,^vOyJ:b0|cM_= ZwrV@:[  @jVMszR2I0E`N8CiuI_YQI;H jERL4J 6Y\=,=u1'?A,gգ|ţBWv {*e 3z[N45 t%\J)[;v#GzAoh<|O9{F^SlaִL8pNhbl3 yygf/ڹėىu _@Tj?I<FiaNОk\*L,qKșϘ`@RݲiNN L9ĸ*0Mu"&9/?Nޟ_,(qMkn {y ۟Pچ-|R:j{`z18Jo:Yߧ.G=]ZMn2P{rѼ_2 _2cc'M NYL=ڎq¸e^MkBMVޖi͋UE+}, "Q;:&B2;NyӺF8Mƽhn2/!4;܊:Eed[:ȡ,3g*i'ˆE@9⺥8Ϥ1C *>0&^79(2}a(|wG ɦ*FZŰO|}GvN6*@Z vUM 놿['7XxE ϭ1CRIV]=rrshŒ@Շ n2W_UJgd-{=v}u4|gN~@ Cσ`tɿ\% Ƒ.6cNa.>cBR 5=J9E&n!`{kǾL<_H V,/{a˼Pi]ܩICu4+ ^qv-2\! =cu0ꈟ9`,t|y#3iJ i~2 &tM!ݫ,wM|^哦VBXDUAuzw=YOAJi_\D͗-di2ﬕ)J+^̾`2N#vۀ&MtKyc jDau#R$/qaR}5ɴ_Ո»)i1 lY_}k'e]]#E pj &ઔ$bp30 M`ߐ",Z^ }UODgSD:z # o.Y*͢HJPpnN \H77xCU3~Aଜa.˞x>l[˲ŴqF_IG"?ԵY/\&<|tgR) V>/GӤ.vjAzOTƲ7m[M^*zϥ雰Wm WHE ^滉rEuVTd51Jjރ4EIRbunaX{Q`:9kS/ԖdL҆r!krp;㛭U˞i\6_8|EF;J%(54`*iN=ko16Ak bj19`mH@eSN,ۘftQi)]9B@$Sy s /!-L~x.UZ,^[0?&3P֩)#l~"q0+!讈"]N+jQx×~ͯ+w~7+8eXt"fʄ:.2[zcxZKծi;!a0{˵>`GaJMEВ&1nnOT|0*o} Twf\7JtS?zDõzCXbHoL׻Nv1O3eߴoja-LJTUVz揙8$qTIVFŴ_4tRJD DN{0K$\Sl0]J[«q3HUUWؠ2-ևc^jȯr;.-Y!m"ekNwC=jg_,\| 5Ͷi,LAOp52_X2M(dNyXp5kZUGrFxݛ:GF0K$EvwL?uWR -h7yp) ` x6)5EZzp QGnS“`m*Kp hDoRwIoۓpX%A&#iZ`Bm}@Mr~jLe3•v3D@vZ!!x ¯v 41v!,N Gcn`qvv1nb[v387Y@sROӉbnn[jN YcFAuɪ2//Ns [8%BD)8J@33zT-oLQb*d],w,cAUb2kޡ+wM))@]ڊ>8 4csYJ{b,3ԗ+'tic1$ܣ dC u_4ȗTu3bCi>fu/4Vvo?{@Ki.TL:ߖIpa}7 Q K}NiQf8uFg,o”}p/[))q[MӦo"zꚲIT۪P*Pة` 4y(kXXGP1Lbf1g:T !li0qό]Yod$(Qu6~%1^aǃIj1yd2 oHH3Cmu0MryF$I!LPyPvY-6'i q=DJ8Ȅ9p ,r35$rj1O /E*fT<|sNi2*[2 zLC6;҄2冩E(cR[~&N/lET>qk2[4lQ:*gpw`|+UFb ۓQě(8ȡ(9JKWw#4/Qᢋf MژyS);cQO!Jx~4#- QCmܧ!iNKcaiN=3lC&ITU F ].L{_V qc]AۄޱJ(0W1Ϳz8Pț-kB›,p: )0zg 4=yC5EZ*3 ki %Eָm!z,k6i{gmAھCZ>t*gzn( E< Vb*ݾ(YC"͇jjڀ-h9=ng!ԉa72PG6:%>X #?pqݗg\r#}g /{!_TC⢎C;S06uI0D@5[9LTfL|1G({ ~>ow |u@Ӆm|'y2Ye?ka4M2q^D;jA1Rrdr>mloT-5k02r,&>|` 5AT'_ej eҨ[&[l1>0l=B&0v4zfLt_{-zKP`Xjf6wbK`,1T i#Fl  *'y]YF&o_%ߨeʆ"0߭3x#i2O.v ^bA mq(KCؚTG|_w->lk d(gVMJ˰w>'>/ }is#LhjdLGbp'Kx]n4+rj_t`ĩ~JOn߮s(-R(\Rm |Wm)=&^~-Dž|mADB⩭᪔ .TѠ-!&L7v"Bc,]39ҭVL~h6[ L*(섺WUhZ f8@)JF{ac;_+ЄӉ;2\A6+mNgk3yyy$ϸm'-ü{6[mx@15rϫ@]a#Յ;}PZeAg :2~'H+5 h%j4 /ܳMDn3klFҀN:w"u;r9d]N(-j\B4`mw;aPB}ݾ&"!݄1_@PJ 빯&Tm/ zyh1,P3ۋpCa Su]p,+F^sgD`.,CsC֔$gyrjKi=j&9\ulذ0k)L˶l-lc}$+zbC-+>!^jP[X>4쒉qNd1^q =F%椎\Wӗ%3BƁ4̸ ;֤ -V|B #t" =VCf2+!ߴk*yφ&z[٧ zj2榻̀\2=Z>|wPd^%Lo +F},y`mm7K겋_D(M6B k, a:㜥=>&H E aJXN*& S% ˬHW6 뵏y/ԉ댥VLEQz$oJpe:M8̤N2*[%zhT#huSPYaH[ϨN@Pw/ ji6QvNӪ^ѳf9OgȞQ(CF0N@}lpg Ls5!S&c7%;cvR"MbFҢEO+vA,aA-%1\Q!LZ#?mqYI38W 5;–:vr_=bDxй0>4V2zW<&C\ORft(N+9gozyʎCQ0qQu5oS̊Lh4H<&joa E1D[/qr!3SRAf굈EY:)©B˩35{rm4KW5@B ME1w oWf| < clyd^(_x F(U!ۻ+Zkq lujcZ5dF:էQ.Y޴RBխmxMvL\@ \8Eiܷ.Z#(^VjNn}A.^A[5Y=i&JjHx~_'q.EU ?t%`{Dҡs?%l nrlXtAzVoa1lt҆X%^/&|h 'CZ92N߯%eZ7[sS4`  ?4I#Y Sjm^ߺd* dVJ B)|C$hZ>6doz{(l]K/ݑs )𒤴yV喅U2XfR^cd+Xqe⢌ڇõޝN8>p T*7%WtT>1 p,聪8%m,n8dN58!ǼT5[Η"!Ǎču.msǿm0_ݦmVQ2-A}gM_-a*P.*y,lLr4"jafp'߮zqugV)]JM0ubmq .$JzwpŷN˂Q7/_TZ3g̎O /3x Vo`?גw=NZO*tݎ9AwG/Wߣƻa &K"+~>dReWeϢt5Ơce9܀ط`aq0  Y|yyإO@+n}* Dmm{5 ;s}0Չ1R:Fnr.02:aWM5-y&A!>_ HG [J:4ǂ* F % Ts?]mٴ1Esn'4bvfKgW/_1Uwqʩ?x IP*cC]mpZ;g90Tc\]3,jթmSӓVK5uF0VF,[D%At/"Zf/"fDņ)wpXgW!+V;#acbG &@ h-Ι'Z-{;RW8eb Y3ݜj|Ӄk,RMdBgV:Vߝ^|LNs`۽|+H/Bi vZ?^Eu3qmJl(/.YE8"uٛ۠'yKjĠ)Ծ=ܾFHq_>}1SFOwo k|ks~~ ǑE̋("<}(4 5oU6 ]T!"mo2Dˡ!bNKՅ4 4ڮX ~u}NjBSٟS` }s~󸹹_JjVH&z k+z`4w3 6c>;$7o$z@t}d|)C (Ư;=ٌ)'}6mՕ8:7H`|^ZVzkva/9-1[rMiO)vLKoPhRڨMT s)F#T! J4ӂlJJpw]d%l*g&ZHn^i+ Ӌ42PEKY z AFS 2K$Vf{*&gAo{c?9Unōъ};CQW|`k F|}cVUmw/X0!K=3?Ak&"sRB3c7Ɗ/>7]^4h0qXܜFVޕСiF6:Zs+=tm.wQ&$$P@kB*Dݍ*Y{л7-z%x{6?& WȬ(ǁvIF^'?||33("M;!I=RV/vj2E.pГn]mRăq@,TC͸ϥk鎥ч7S 6|ʕAuP\I6;1z|OZjJM2/A\qr V ܔo BAa[mjsܻ,%0^BJ]VCaMc$ޛJ !@Ⱦ\/;nBzA_ wajGH:C (a/(*CmR ?aOSzwZ'qQ(}xX33:SU# Q@d2|PG-Ҧ"cyR?.9LFL= c8OOVYWrz_3fAy E;Cb@|q?D?:p]"dlN>P6!;$b U tQٶ,.}4L Bgq[. +U2g"aq(Y)0Xu5֫+F Od=k4+,d 5b-TtknMSدv*uĪ&+3}/)ru39u!9I?IQ6C} 0'L2T~c+->L/r$`9M_ A!鼑Htʞ3NrƱ(IcmV緪Q#L  + ˊ́٨♇ :)Ɗ}TXK|d>9HET5ou"N( ^q5rSN]-մ*K{M]úRwRAzhf AUq+UW&;G_6蛿F';VŬ+;9nȨhK9vZ-$3a﷤Fqk Zq#,yjKgV5UDe8[<(` zar/[*z\]3D9{Gm?cOb.k!x7PBEzណyTik9eT8L#(q}׹L/kB?6"[F=Z}y { nxcJarJϰTBR(ć5ȣ^jL,tAqR|p[ިT_x 4Ǿm!ĉd鋉)3zak;TݥH5hu#ߢ:& _[]O.LwgKؖxqR֤p*nr팤t0r9&'TSZvUQHEG}jߣbw?#݋`u֦q7R3IJg*  R$:ƱwBK2k C>> c ۍMnW\sQa 89yV/;%149^"(J`S=ʪ(Uk_T.*\f:2h/-+1X bO: hOfUɎ=_a|Zb4=(L^$IT/Vf,)$)l:XW!`+YjMSPCcbffH#NVҏFC;c8?ǵ9=i̸ k)͍2^/9ORnH+l+rAӢ;WHgUeo2DZdTOP,T־wOSc T82./Hg+!2ZudtA.h֎.?cA^T|}0vCBfvm n4Px<Al^a)ys ?ɛ|}*h_D)= ^ZZ Mh~ N?a"|`0mQ[?*QY{ɻrq/QOu+ЬQq ۷R]t뷔m*K3yXq+cQhD/6ME[e2n DHgq戲Bڄ$%H,d/:7Z\a.nm#̨:*+l-l`uD,odϗdIq`mF%?X$t1f$!A AUfLXdH3;VJɴB I]0Hvy%bY54f؁}` %!z2J^Q~rJ/zu xo/x({gziuRYt b>-1QQ%\F+τƧEtj)!!l#Q7UP&ϕd4bh鬋s5!/p*ΧqdU/on_jxSIzY#Lru ,q<\˽7[7t]KwMB=HNx j&0`_A5޹v сħ**}Wwu^`ϕi^W4G؋ LxP:yxI0to e:drD0ګvJktO#4*mnǢ7+NjIc$i_D_{Ai9Nɕ3N N;Tr.k Nv^j 5Te{ř7*y2(ܽ6բlªX;Qء&; cz3!)!iR`*3l`AQEhϹP}sVk !2eMtYV:xIk=XrD۶Lf4jj}N; 8#bc>ҍn7ՇPtsЕIe#Vp{c 1CbAUK\jAXp(LeIb b uIfv%q"1+0̯:8~y2oDkܙO;{QI:dQ`4dk> y=Oߐ4FHBgSwv{+nu!Iaf2~mOAhҪ; jж(p)lXVO FyqQ9K$p1Y1D5cA{tYT тSƚ 3FJvq)h.lR)̃2bqZm?q+9#00/N9럃;.u4wo0UN8&kvhZJUP} N.;ՒՃ:Q4SwKk֗bwY(͊ܟjpG+;jw(LZ}$.g_56. &ClMu8әąĨ/8*0`(Z?U>ljvb/D.WErHnV㦞m.Z`[YBP1.ZRaG8ScL*.\V^k5LoH.$ǭC:L?NP8,ЅwZbdUD}S:!3-tg(nc2 Y}%jPwji8- _^@mcLԻ_k)T~WpH1w4Zfxmm;ƌp0]mƔ+T6m.7m34|͙10P)Qh@!qxM21ۦz0i7pLjZ4b_%_ R/h&}{jvgS٘ p.(i[{Cd`RGYzybjzF} @ &^4n@EJ<Ɏ=`Tȝ,o'#UƏKk)$Ѱl5q%~t;MfoiKr}}}O)` %~&"Sd[ D::ҡ:ʼ ~1$Whl&΂RBe[sLU9m .w2pW{Gt6vz2:+q213) }o3X}4HpꙵqdP:&P8j)<$U^EM*]Fb;Z d0Z¤ݷ{{ôfU; `I#ڃh)I(o+(΃7i\,>@"daFm7t2D.?`{D"~ ˳׻1 cka  ۫CǕ=-hXX+u";p)e@(U>i$ |iE'ks<3u.SDw<8]#Avk1{o@̸11:v2FYf+b8t+јIa_d`#Y7HLޭmRV.]2^ZfH)l:brz{σ0DX|M(Wz=+Y/]! jVa۽AZ"D!dz?sX,Yym%qA &Mhp$|]weWV3f$gF-/k-7W`6 8V-4fW) *^:33gs)cTM$Nt7C|kbJ+֤z,W۶9CAH߀,{5*+W(16<,ڙ.hF*uҬ-~rPn3H bɼ&Ifu2YƯZܚh^zu A fm2i)XדkR,X3g R*8" 3yk,-.ni0>vr"?&{znWLӈJ[ԾJ.NDb? ė - Lܾ,^.䊦"¹yuGҷmK&Q\P_%&r,{Wz=eXi)7bò̈E31x%d'*iRF0sr暏Ҿ[܆c,JBfH l!x͘T̴`O)~u4ܝhr?G[\OY=AM"\ηgV#Խϊs0,ޔPIx71֣L_@=c[~G!Ic|D-EG [G1g6 )p,&3Ueu@kĀt'L:(h ixQf 6}&S,_uuP9qע"0Od+܃k֢gjēL٧i|KP`b SLF7y ຃?/( Xu&{ v,F(IcltMywQZuU#gV4|©/,) 0jpn)`]BY{ZZīfSDr#pv-ʧޕDdkԠ./@ndw! x=TCZidƇh60e@xy5LAETv 9K>( H̓i?8j,AvV 6N&V!R?团3J+DŽ6?Wُd4"zN\G%,2o`.$US IOjD(PIՆ#8\A V#sCgj`]<;AsԃbL3MJC/%{ٖOVDmdGEXQGewDrNA{ߢ47*,I!ǂ&p_@4|e\duўtիx]ʍmu)?uz_]ܥwz{PN0^}2d7x) 'JBr6//5_fzw$P BqŃ;( B?&: 6s'5s(o+64NPf_ۋsj5;M  t)GwOEi f7'zSy#H㝷0}/(gUx݆QQDi j@VEJ$IĎ%s"g8igtQl(`1DO˟lP|Ңڲ8 [=_>'`+&/z?sS:o*˻k qnp)5n>W$3{M6!h$ar@+ >r0,j&*Х`S/ -:ALShiF8WoiFnHY`o&b$U^ A*$VL+b(!܈Z2}oMZ mdVA @QV)ZN\eYɰelQ`[Mp oK@ Is4U%o7lFZe"YO``qR4D5@dP^79<( /*;>[&A|ӚJ-ߤZ)-}n~g#"^PeGH3h%UOC>sj:[UunA]/H.`TlZC> Վ[c')&+@vwQNf4knJASJ QZ@R~$7YvV8AgFzjLw3˴yD&Nl5ڃ;?)JxX@d)r+MP ɻAպԚvjj 5;b'eT?֘GgvO+$K2C󺫗zqD!7qµ _y>HCj}r [ov"{=xrKTM%Ǡe,D}1`pU)UMb{K=BqOZ^w2ew@_4>Oɡ]*sGt'|L>ѣyC0x.{vJ$tY[2(.I"I^SsM~:n6SD?zllNaId[H%M$euuhx{M<2F`CS/%MN`ZͮUQ<-h97i/5aa}1w@&W&l%/D ;j͂!H;&,~jv˽pe@U.SL>Dy$f)@{qK R驱l&Qk&4y=^\32X\k6L;JPmͲ8 JSxrv,*0?b}4h-$1/&VZ7:Ow mKͧk3R9 ꆕfZBک*7trK#c; WuXHgWz}M;j%wf>ͣJk W%kZ>T=B^:U,iM;dD8q=J~.0׽jKXH_| Os L*ǦNwU1ru̔g[~Qj,U0ԿHJmy]U`pȃcR$}<f -T;pG['HAp1|Ro R0SceƘGPߵa f)}7B,.:ħǷ)B$aY-?=1]b}V]'s]Gx2k$w7URU P$cr%mŠ{O݈ti#hSHORR4vhEpۜB47>ǧS !݅;giuUp3_ZSyu3GvkC~"ճi>"թM-_F\3ί Y!Ӎ֭E7,|˿@׻[sl.Bp iAF~|1ܯP%pD![\D~yO1 ߷YZAeDhׅ1+|evVAK3j~ԙnQLS%_PqR}NʲYoAⓔWϤQ`Reɾpܒ"D牡PD0Osa$%*%uka" 6 >%]lV(BtqIbUzu!9L)NFC o}v .^I^@[p|p on)jd̑ zcU#.N& gݎȞuM +9(ٞ,h?y. hBdDA6L4CT:ůzm{+`Pw?#Pe/^TZI" 9zg~Mt[yv΄@!Z-9k 1fWO.@.$LuM2Ŭf*4.K,M ,a!/<n&TՠOZOn5_ 2,y;-Nl-gZ-EHq81tSEBQHNBLՈj^jkOFG;8<o~nTFh\-)57uxpT/H#%{shY;וK—")h"X8[@N(ezX>1 |JN[`zeeGErNW,2>Θk{&܈B֫CB$@Ͼh.J_c~oRtƞƂ{1"F-0^  +Wi;o_𫨽_?0ߤH2 w$\, LC- DGh.#1}p\U/aQV@O]NZ) G*&x*N뀫'Z>w[P  (8{`䊰*@°;k֪uRiyDA~Y%!aQ)6[- 2÷@9(zx7P%SVjN4a-~nx.rJ<"~+ vh:ceWwdNB/OǨ]5 erZ[ w#3P"Ki9JA6A~#UYjq=e:&RurLIKf򴙨I!B4XWVRnJC-j/RI5U^P@,e|P(cb30wqR.vEb56kOGq]@u9|YQU{/J$,O>=:*S^縰5OKGHo,Е`g-S~$P._%uаC: zZ#/ EY@]>L2 Jáwo`ńdw _r>kGE.b'TЌMz݆T&n !Q dcεR 5,p1w}& $ ^; 簾R 0>tA~H*T!f+B$ˠt+P;:q'˻}HŜ+1 c>mD„m/ζQ|2}[hSh7JA/ŧ SKZ00zkx~4Lx՟CG#S0Br> xa ߄ Į\m"t^nN!p;Ƿ:YLgĻSy#DKbepQiZŐ\4K‡tyex1kGO.G|!wi*t,^ŋՙXcx8I"d-\ -+%ccΎ@e~"6Gxp5Fq bwYZrҧ@YIò3߂Jk&l FP{hDSiYGLʂ$.4&u0vW[莝yEGS`lr*mMћ:O)+m*Vn΀X׌؆,*$ƏT+Yg(a[rxZY&ȉ`gL4oQ5PgC`K/k3`‡KJC 1ox-w?C?miBؼ?G0YMe.Sek\6 g? ,\f!0Yb "hu24H[?x 嚆 v1zcr;M%atK-GB=W]2^BNnŬ,LU0Lj;E(H 4䱫<Ǎ1R'oqnUC-h=eǹd %|rPup%졌B1M}t.I-^.ylE"R4 !y7aY,Cp\L(|ӖXf'aXh\& nuvOy9kaX}em*Bhwgt6R_3qjzU&}|P@葤nA#+A8;ᆾ]Ukuf-ia|AH(3wf6+Lu"xz XѳH=]Sl%&G_D˩XS\w J}c,jy΋n;չ5+TwX r[)ncۀ#jc"Ijѹ~GAn4-҆E3sۜI?4~ZҥMF˞M\p:j/W#ּsύZkξo_1ik{R$l ,U/m:HFE*;0;NpFk%O6${:)-_ygڸ'f:2˛TF0[Y1X3ks44)5 Q9*˜6Eq?ʉKۓU?d%{O~s>Λr@~u2H~mٻ?#zj'5: 8at,,NcIn"]@6F8I!xȽڨ2(]&>W`jvzEWȩc,LdX E[ ]D,)YD@~+eds{]|0i՜XnHw6PӫO |ٓMNˏYW&ir6*{jvKjW؎n~*Q A{*f[V|7F>@]KCGYCN wJ}M\n<Vl׍s"aF.ݾVp0O,ݏlgPqW99oبKUKW#<ٍ|xw8$gk5+ ;]+jaW>Z G PL|i8eQ'[`tW+' 2=:'mvN@bCx?f|SrEx`opR[^md S^w[2rEg ҷID?ؔG{pQu>cŪDCbs**uKhuUtjo!U.v _TQlq$sAN҄ߎFp3%} 3s#F)OWtzr;/j, [4'nl7{"F@T<Հ4D ,N#{5\cxWI4FܝwEa`R8ĜU eDXv'F/2/SaOT[U#WXENR&Fxh^(nx^)U*P똨:wЁvu׻C6+> X?lWBu)Tm䣇fzc4V#u#G*%oS_r 0lp\GtysH9TFJqFY?)u8%%V'^Ƀg٬[#u/ n$ =O.%65pxU#1fS|<1؏nxPeo񝨰$}VJ } ":߃ݡE34IC9]+eJEOevUU!ݔN(`&GEXf%E^)C rA]nQptwjp,.&+#*)J)Қ\i[jo [W-/z%3\P|  ^E6}ێ5%R}NǹEDʼ} ܜrvV(-+O)d;)~P/&Gt9dic5Ī0RLGل\1l͙l2ej{!I3Kʋ1>m2}&r p%2Ń5!<% H]A֞$8jtJ*Î&5"M0PʒD30 7bd4r9qykA.`)6]>>9s&Zys?Y]=ZL !(0حȍVgt$O2 c,B+#^X2NUZ~ֈZru8X"~n%&'g{m2T]u)fC$qMщd6c]팻_"@p 'iUmuJzϙzpA$]%i+.m[i]8 E$t36\uqQ 1|A+Iun{y'?}ejQ4u ~S't- !yp\p\3EHg2 `U1QZRmHXe/],dYQN!^ yfUS93PP,KݮH73̉j:^$z T2P}_94 e@ˣA3y34\#Q)KLJúLjΣ~9>Vp%}!|l!Sݵ_7 ?!vE\nsUGo^=6+Ϻ33̯񠥭ϳBܠpZ$_@ڧ kG WWC\B+P>*V+kUfV:f`NxIkQ>k~>g*L@$T2L|h^V;xch'B#ee'DRs5l;FgW/d'?Z.m<@ ؘG8|8#w cFGVDeY?˟ԏK玼 6xBaB+Riq53pѶEiC+V(*2+f~32+[ɧ:.m͒\#lt@"ƞ.~w!_^e+ Z}IU* C%|Ғ'~ZX64QﻑLKӜ<OO zy%Fݭk;ј*q2Wyg IB '[Aen7qS\tYM^%5ANJ[0t6ݰO=,/p՘Xl/#ࣣi gpdi;t7#K7@W19v2yu /Z|mCWT[kB7{BXs3\,<۬~# K0D0IEBf 7E딩QdNub GnȍεR`Czrܤ^.ZuDV~nӓ ͆iuF${Y(X{(d_՝/WzY4WY]]%+d5P_b0iϡ)2<ĩm! AHq ! -yvz!hmNxe aJȔ0P1+yFG횺v] XrhJ7KJĽ~xvQ M2 m&8@#Q*ӸSf^ETѸЂT.)+|Bx- `Kں9:@_CMq:הi` ä9er*p/RAshY/cf[؞d̈TO)I8_U [BgMQ4I-ʸ7z;v76ajAuX7(n>Q?JĔilc 1^3: |R kJ,: =OrpԼMH%Y M)7aja>LlE_6 ?]ZkPF&gv 94^ ¦jE>͑\>NPU"{ 7<- >&v6oDlfƾqpr:u t(g`_CJmo^3Iex֒} 78xC@#i, V 2[+(?\d-AΞT!5Zp=A89Zr\2S/@WCJZPUD:DôJlK3"ՊpWA2z .vFY18'W'ɨ!dZix+@%2AmJKpE8B' z!ǐDv'Zl2D\.0VT&* =0[~E+|Z<+DOƦ4OK^:\d-FSG0-ͥ~4}Ge@!DkQ,IݍX.y.ďD ~>^D~3h葳6z{6L+fr\-Q!A!C1\mVn`%b6Qޯ.:#\qiY(mwjQN]Ӂv.'l[hQ@!AT+;YKCTe}^9 O~4.=pҘeؗdx(c<駅n{!xL n%BCB MDtSBYnm3No8Bi{:u[WN:'-̛AUymZ `,b}K1ye~F?qCV`]#ccT/> "/T ީ a_fy/tZ){Z]aS= ːvg%t+ҏ˟gx7^gcͺq3("ڲaұP {Jx:%3ăR!-1 B&ikKmz|@9p1]ogZi" gD@:a7Hm%ނ[DKE7Ǯs{1t4jD'~S{L-nm?wK'  su2)(BC9ZNmo4 _RG w^&:]M]YY'bXCv>DQam4[3Y.v? ~_ \ϱǯun8t:N E%_;OeBeXQ u;-D3E5rk#|;m UAu5.zL'H"7B76<<ףKtb/5/9ϦwmY a w0~uEԱqnB ;+cl7xhq,Pe"/2V4>7%A#5p'4'D!c8VA"K$Ϡ/Wأckkt? =\z}+ZvT! |mj>@]A.moY-ʳF@=/i50l"չ4fϢk H7%[J]fRf iKݜH+)9ݓ ,z ɖs'bB>)o^(F)d&G0M+%@9@%c|kr],HXAڗ܅T-J(eeRUC(Qc=|PB #\L>^qOMM9\QB~HG%};3RJOVǁlsOYwMiAH)Cz>bp. @ I`m Ml2StޫFǍF+6ƑmR!_XttNz,*Zoft{j1GС@CjPdyBao#,p d[H rC>+֨#gDr^@z󛳁@t))Ȗܪ+&B.L`[~n"I]f4)"a+̾?3woQ3n~R S,׼IΖ[{'ߞF@V~V4iʟSc ֶŗ=*8l'EcvvLɎ$F"K˹0z.\+pR 37:1V̀k` |!+`Z-uxBQEY_@HC␍\D7SA8V:3UW9-8eQ ͏J5{I":Nji}xmIK781);l+4hӂ0GMLmQ;3+ ~Bq&"S8JC3wZ,i)2yf2G<袗dH 9bv9hZ,Z?[< 7l|ĺ\` \&.[ ._a`osN"z`BH:^".YhR6n92>^hJ{Ҽq"A_{+ V$2(FlLz[%fHHލ~[Oz^ U󎐷MTO{UTLR[hDԀDkxD { E8a;TOBR,ٟ2$0-j~qs~fu9{S7,>i=2p *\g.<'g1m$$à|̹mFr?_M"N#|"dy50m֕ex[we5G)}xuw ?x2_;ݱDA`u "6]y #׵ j'P]?SNj4sK9JMLLrH=?pB߾aڜ|Z; =8n6p룛?+)o BZ=+ǬH}9+v~-p&b*ļ5`7/d!<& &s$ߟ|&;X^ՄIC c rʢX 2/72S94܂^D<;!ec!]|,>RԨVx,S=` F=Z ZZy$ov{OUH)Et7`F5 ? eVB"ѤN[[ ^UKeb[(ЖtzA[$.{s|g=soeO9RŲg_3%F޽ `zeD4h^'WQ [>/eS&}+C*,'{de3v!{#JyZ,oAY 2lꚂti.lc7ɣ-jsV-\1PUo+)k۫X:L"qn4_A"lNhg0G(,N@_G^oV?xx8bC$ Iocqȷ!l`܊[8q$%&è ܏;lELEn&kaL:WhFEFwU+)Oe@wl;g;RIX`l 6!ȶA }i^{Z_ʅDQdÁs=nɗPB_:I7IPԯv8e,ݷ=/}yJт$4J#9WSE|~W$2) ^$>,*){?`9[>b0[n ͬT5kp~ÄN\-*iO#+!OXLw SWRӉo´3K+JS<}-g9Z^~dPqԅ5q&Ц8N恧Kh!UAmG=!JzKɀ kMe&yǸF*N=TGGzBrpvw5(cayNeɵF^ 7 .Q \歷uU?6" vt\6d#JT`e(BҾ-AGQbΆB_q0n& EoZ2wm l];* ib9"jZ˩{-p ]{J1>P7ZT"][ީs1Z~J&{Ӵ պdVxfW9}06G̋6Ack )$ÕnӤ:]GUF~zxO? r^4{Pb5Zyy';Hϐh"x&J\p(| ve(ģ}oJ j(#~g0"MTWT_i}ޑ%S>'HW ۛ*fA::1Rgǟ`Hxv矱MI`y 'oh򈓱Z+VF8\pќ&ه9[C&i% Iym慟cAIFxs,)Wy$+̠杗Yf5qN14"#T۟x0]A'8gLu1 A\*]Š=8I;KWR < AHydlo_8‡T; t[l)5( tF F~IC r5]65a.ľiV7I(6)ULW?ۜ 4kY '8prɇ'x(ky]mAtAQG^ZZgUG~)n'QaY`oQ!,H}oKOg _іI.<eSC>s\`B~쉩yIˆR4{x ^h, =ej,?6%D#[i:0g[g%ВI9ejpX.rϳSTA^G'8–e[pq'ҷ0 d_pbC*g:#74 X&ҤWNdNi3owMP[c7aW({b;_e!(`Qȹ sup:?Mf Cj~EHPc`dR߆XU>w@$/}Py#_j{;X{2 .AWz[ΨL H,^JCӓ,ס IYk2ג$EzĆA[ DceA{e:euGa;aAՎLKo>b`óZě̪jyW)81|\ZK73y\H4=2MrZt n2ⴴXNJDى_zp`rϽ60NR'd _+)A@)Iu(gJblS]WDaAS#)N|2fdOфLGQm<6t?\-9ݼ^c^457l9:XoǢ,my=3Lػ5؋+K6@{~o67" ca!μZa<]RRf {}AETzoYrj);Ƌ$E⣼#~d;Xv †\)+iULyj)yF6(\hPЈ%=O,&QSƘdd<۠YeN;Nq¡R[1 oy\%ԫ.s:;\fkCL2C Tל}3Q=|BZTif7>Pt2Ua\W0s<;[qgTwGe) r eZŶZs|3pLn.äBF8<9 %X>asxБ,$"^s?Kh۠Y.ks*~SKs'v(>O f}j>qHULgڏ:/i;xW{K 2d85J3U05,WTi!8Bc>t`C$ۃ;P*ĒU(Jpy ǭBݭfhQU8IbK@rU'*p'L:Gj2)}KD7< ZokRXkg<&E?  $ic F(D]7})/tWRm.fFmZ_YWY=CCcGvПJ1SǙ k$ӎıQ,T!EWq3GG9Qws 2 ` 놜Ci@5m=7fEv_IWb0FlZsXo&i`~ ظpTsy;YfSHo4P+0TC "xwnk,ٰܘ_{\^iAmܒ"QwBi#CX ,y@K0W-N3> گ9cbs5]2c!.(/뇉zVv,lyPw%G‚)}+Ćnte'䷷N?͑7_߻5[g>Dl7ΎOZů=Τf e2X-6,OY16渿O٣KŇzrtd˜-qtL aΓ4k*D! :_=ԲEٵ|-Hl\_5XW!;sB(#uGp%!>>}wkWWY NU]F2:æ`jڡˑp.> r#.Y+Ti_V,FuAKn"0HҵM+R`'[~N3Cm6'1s̏޽VTEs"=0qIj^b&49*uF" 3 ]\˧?{)ƹHd\ GwהE z#5i)kDzQtHȭnG (m ~O`>Œ[/ LJ )O68P [<Kȱ*CܭTWlX:mpL~Ǵ0Y|K~y-]c uo}ݗ K)14,Ԝ^Fop@SD/{ 6'd06b$;awj"=_R{q/&!BeNWy*<)[)a m,}Gv..\К,K5nZ$ uR*__"wd@-3x +"H6eApoe__`f=g1&%@‘sfȉX' HXXo~#F?uR}#FAQGp YBIjKԞ!O;iVe䯫j f(θ>LAw 1s4Ҥ!b_r0AJE737ArQjV؎’[pdÁ I5dK#۫}("źQví]U [췫Wsuכ|g8 /ީmC|5ߒWÛ?O9rX8!: A_RX0du/kH!)ui8 %:f"N$|^ts+7B́!֣Q5~kqZ* qݪ%&a a}thcPh^~la*L[Ԛ3\ݒ-_km ۨD:TBMشrz0;Ё5]/cZѣ*sPWsJmM[5pVimrOz- K5q|W ;blgf,kår8q@&eNiŒ[*]*]16g9[\Z ҭo" +K $gh?)Nay~rIUp,>7'?{Ty \V8gMxhy\x; |-]E3֊8ӽo:+VH}=Vt>znQg[I&x)>  1EKj*"0$RbBq,^;lMŠc0`c(u1?Kny ToEaÆK %pCq69۱JkD1C9,ϣ:;Z?h-2%˜HW(;zFIHk>.)5tcߜrm,з(e綩LnŹ+@*5řV&ىB,?wK $G)R }Ts;zEd`k F]/*np"/=199a3?>TQGz3ϐGS9ymY̲^j t<9IL!P?'R h1Y&\Z@ޕ40fSxH׍*ߤm}RɷOA<%V{ǫ37n.GBmO8开Pjck!K3U[db)R_&=V&HHuCZR\C9"աuKc_8$uVv`"Y/>^+NIMTe+Yo(QV0tr.IgjH`j*fԖFR1<^a zS-ruqTȼvz퐒}" j(Ȣa9VGBgˬKR:J 86z *딥&7 (6Ș~=2uA>(EsW4$\/g;B2).\LIbéo6W  գ ыȰ2f-*$ɨ9̣lb$`ql R:* T2ق b=P{>(b|Wʽ+''!Jj>hC<@jrjm@ E$K資w cz xŬ.΁)WS@hccXl0>o)1/.^"TEHX49lG7.W٦vKˠkS%a7Y屵J:Yd&[d{9u(1Ek:tv.%4m+hSx+$7?={Wj+@椃EWv:zk ͂ypZu D:8*L b]Ht/\*K=B4ClEZwPx^ "$ȳCpVb9օ/)~Į3Ǘ2=1W,˰$WŎ65(r  /)1IBS{vj+=U?ZwiMگk l7}o i<:vMN0ܾFl#;U)zĀJ#4rL*;.s;b2Ûi{*aƈls<qm6 K\ed#6债Nё!y*nڰ1I D2Qpн$[NS1!UPk7 F!Nս.n~{@v7V23xTCEͿhjKj޼!ϡ2*QVVϴ(|co'f|!pkn5:+FW?sh󔫐 Q3H$V geU5ƄA7>D& e.&_+ੇ{\Gmi42 7"a{NY2P[oKr)D׿4^0(*斞v wV~QhRECwUrphZCO#P5ay6W_FjN(4܏gGG|zҋ?Dܬ T@|0R"W?[B< jr~ObV2q7o* <[g47=lcZ睫B|ƔYL`X};"$H8I:қaga+żM"/\p`;DpU!c4MMQz5i];]T{!3SwM 9\8#E4z [gk`s.A/*d-q_"_ Evu::z c. Ca8C`Z=Q0RZ]e-$2@jk|VˣPS2'vb$'`HGOпkmis"CS0 MZ'( * i7Roo| Ge#XX$qީs./6*.#Ql'W\k?7l9-DM i8;6|k`{!&}g|L@-P t."Ѽ(\ի/t­m)<0pGlC}VL!*+(|@RMG\\3YzVzgl c3$(5:D &b} ^Tt r}[q08򘋵%W!\/qfzQ`}CvyϼmK%Pe',i8Qh UPaKZ|bבX2쉞^_ۓAElK#v|W綕9@ qfbK@HI6vl7Z-hE1 0sJqb=zOn͡zWP?a |&VMŁA-8TLϡ'@L(wUM,FU ʟwAσ4(s[` ::z}NfTc m=#"jȨA3l)yS;U@؈ O>RhoI%vi{[Tc|rs'9>3K!@9ܐuYL~@wz 0jiSӕ a/Z^/NR4H+an^ {;NK ɻݻv7ӐxvF9wkuCiʛc7cl 7D?|gZS\8c.я+/gYìE2p@fEh0 n${6Xz`@?M/p -VWÆ+^iU^h>>(Y!T 1XnlYϺ-#Zt |lvs'!WZf_;Kg8#v4(4"޷k7ɪż,0h9ʃ8~ ,DqG=z&,n ^| H ٙ?νG]vnQ uOx 'ٔEOېC?;ьO;&U4kwΐw~7PŨ@cᴱթ(紭1㩤vyVco*tiwm~(B<0ڙ)) fc3ijMm +?q_;@>"͌;_ڴ( LR\ax\[$4i]?Vb0tP]/` yGB,/{ HF IA<]Vc(b+^ܸwk.,Mq`zSbeA\YB# #c,,wP9}MeNSȆdqu#׿U;7M J}{#қ.:?)Fl=P4'Oγk78  0D2xW.H Wná&IpOoيHS q:^szgbaA!AcV5kb5T=(+y;\"@E{K\5r,Zcҋf@̼p7~*}}s EtWS,}T &mPOBܾ9yTچgĶ)[6ߓDH5:0zٟ)C) S؛4|\+4jifD>#1[c%f6mS"QxVZ0S  lkC}/ y'S I5ONmة;iHMBjSS`G! kU ".A6þCWidXYF9&ɅNQlӂ.6.>$ cp5YkeTat~H~ڻ'-*p[fnW4 (8X0S`|gY}nZi&3yry6~+JMgH+&MO)x i\ P^7-7;Hn(&Uг0`g fbۭ檶,Pjn-R3QrKvU-9fE~k'}"vj DƝMa%yL<7d@U.uWV ;ZaZZۈ~- +Xф]rt&ڔ 0TiA%Mtdr/_j2=fBr$!sSj3Ϳ\bݴ,W+{4T\#Qܲ5ZMsuw'>d+x)Hf ;x=ѺBiuۃɊGq·z+pni7\fg#sǙ&?G-gw"qXs$C&#x/TYReaK2 r{ki–ߓ o^'H<]dg[,b`I=M2ߐ@ h∂#1x/qWM-NlK"XFLI7'mC뿽&'h@ϋc$Xڊȓ2Q/2o\0պu -)tC=#>ƽ%P9o!鉈=!;Ykt HW+rs4fK<2zFon?(;jGyY2<9*5~Fj1C6C01weV,S=ٯpn27HcfJWԥ9eg__t@HJ[|"AVDRPIoiTŽ[JWtvVؠ] }V à_Nw(ʫka hm6 uH:z.L苉*a$vw#XE/6bzk)\}j'qAâ9$H24*H9jPY~ "i}3/&gq1EQ+iGL0?sTC6:$ˈtU*F= (u{5]f_Y쐪mQdcř2lJ܂&r,SU'4)&ٓ#6KrN-(Ps5n.WE=˰>t\^\Zً ײw+^Z+ں^kܞEY/AqÒUm YzlIod1D1aW`EQ7_zjEs6ֈwte2D 4Uana+fqj+UTt45:6-W|Pܕȧm_ت u?Mpb.٭i U>Nd҂x%갬' *::)Nsu:ЊO1ߟ@w}7 jNߵEпNtxmN׍{0ٮQkH~`{VyOF3oZaxJAcN/Yñ YJ2[vn ALqO( ) FIdc,)lu!|(_329}BϨRDߙ-M Ŝuwi\BhhOTCs_))zE͍8wQ ,2`\sji H-f:8rO)d 2d,ts#ip6ELMs[x.cDnǻ*+j:A.tɫZdĺFnFfcQW_Z[zSA[Nz=AJ2㺯?8W<&hϕ<;`,n4KMVlh֖zvFKCOX@R(60?ڎ)g3|HbX˽ÅVn L'tWӳmХ_tA 1}c/TEyXάP/4KU؞Wk;يfiP{bH0QyRE"얧T9*ᄆ,k~h\\0]n<1n;v.}lLګnpe١W;ݚs_e"vH +#;Li0|`$=KGnzn砯,2Di%kP 'h;59)֌a;2f±-s!ۭUx}EBb ;ޖ}ߧgE V +>ϊz9z{OAtʢ@ΏtQ-Wh5?ՙbyE}7|LSJ8 k}`P]=d$؄0iQvbч:v(;zcA.,@1dh쓖 ڝٶ;Pa\Y6f&Bg ky2%5LQk4V0$lS>e8I O*mtsT 4|8Kr'mQ'wkƣ,<Z&]WA U<3 [ɛo-ٰ5s( $%ձ0%s# g\nȂiKWDyۄ0Ig8a/8B>p{ dln1 _zSVcq[ qIY!m=n392vn fFxd97a!?LR=I }p\q\?6mYd*{#R]$=5& ^ E9W -{ )$3vw8BMƴP[T/+YS< ;v7}BF~oλjumWRF| ?K=X8ʹ*q"o!]&l, Hx}BՅ͇W2g 6pV.4ŦG|kֳ@ҶF%gVYoFB*{Btg4fþsNWY%Aw;a+O ~|A}Aŕ$o",|?aZ>_0իU> }C6+_ J6Yn6և]d x e/AZ)hCݖoY[\cvo uG 4ϥL_|0Ewt{AM xp|*d_'|h&ZJS7J%1ڈCF5xjbGhkXWo%cRG[NK] ĐTV0!fxQ23pEi(r*h55PxNI~f d$8RãOMX=EG{Q &Y)+ zn,Tn99ٻP/?uB/frYrJT&TԊCXU#%,|Dh;4X[ _StNya+%|?/>ݔ$Sdto-H{%R(+8}y2PoA7vpCVqyT=-< q>|9(Rւlo_W#{!eOވ̨̟sw.i/)[N@`Y!~h+:Q޸$ m\'ʫ{L#WQI@cM%{Q\oY7xLYRk6yI䏃qxo`pZ*ص b]D/@T5ѵ0uET<(p.=h]Y܂XeaBl0a;K`ݶ!S9NU<:aܙ8oءTm6JXBMFWWV &MWji j$k8Pg}h]eD'{1cARaBx`o/(xkH`7Qz7koQ{Yo !֚:MiLo/X%]h1ֲUn+mF1Ό*v3 oN|NgE:JU{NhꜮeb_0/],.k<3q?SءS=Zo!@Izz6?AmxqF]4d̚tA!40tq张m*5CRyDof QCoSwEX{kcUyk 㧱&$>%6_"@sJmn[;A|ALL+bp9ʐNʥ#sݐl5 ͬYWpΒfdDb~mS}ࣕuvKh n =yf3~`z@ЫB.>ra䒁lnSLhi}%R`?n$zkD+IO&YLBԏE댮 i$xO7R17%aD7z/D Mì3:% lΑ}e-zx %.'i魯h RsNmTdw{{ښ)2Hf+ 4_Ǭ*, i;D*Ykȑ1B;ma3g9Wޕ' |ݕ*_瓦bѽQ]Dzp:7AX#3vbi>Fsw_`Wdܙ-%vDS DNڄ'[HO f7D^⧘=Z5nuᎵkZ ="v:[ C?'KS x2:տ>O $-#&*70 ӚJ!\J+Z1_co9a0>T _i _]Tb<6H$Hqύִlce\Ͽ<to$B7[ZLɷǐ^/yd2O=_;=w36yP/}>`U2+*D^u?ۃ}6Gbէ!͒S\BѾ҈Od5J/I{OWbon'uИ`v>Wݓ֊=|iljqrl )s6s*q%V{U\ns!REv}dO!V-WGƫu`"OaL''K:]6[4*] CL9ݐdD$~w蠓C`Jw\2| qQm7* {Ij=):naEk%}rD#(}QR"O{gxlBeW*R6L 2 7g7X\Mw.2v.( p.,@7MJbE'hJPHdeu%4.̧5Lg|G^j~h-aq&869o\x'،_,6;t䨶kX85HztVժsbp?Wj GζcfSM;|X}fJicMеٕ^}]dGF޳']^>pĿ HFp*]g-Pf肦1A`{x0_Z0ΩiEׂڵ^(њZr^R%ƽm+syl愺4[s5]x/]Z0zg*Lv&zDDce IW4+chWۖl'0D%*5*p jW`dVNcFbny:ϻs _6-X1qFԾ /mg6? нvp/v1.2ZrpR?EPTE C&.Юׁ}Z/L=#]ʠ\[>)DULg-cE6H9+](綋>&~$R9S/}/H'$%+QfrYQ%iYӫ)-Z$~-ת=ݜ X.m&ه*&"'9x`aBLQFxiΛO_Mx83*\Rq+EA`ֽnܧ~=ϨeDX]GRMmޓ(ufL5|ug`-+owWWK y ;CHGchpXK$a䑿ZY3ï* gNҊ]-hޒď9NY-FҶr]H'TRƦg8b5p##[%yWv R"׺yU .Q]͂W sUe,0B=6xr7 Ɍs@3D8zdvz@p\|broy-&x%9 |٣իa' Pĩ0h"fH #!(,VP$_>xs//瘶Ev\ R 560i/ҏhIDwo YZƎPyQy4cL}-N%g Lf[MQPjPӀW\O?׬c'ŨȻ N7ɀ_JI^xsnz2șy&}e2D|Z@TMPBZ*3Y裂 pTavf?~p"Ok{ŅbQoEۗ@6eJc׺wͪeVT %HݞK K[QXs*jM -w:Ǚ^Res!6Tp,cj@RDqO]L:k a&?F"sA]( BĴN%:E(rA$7 : Bb~-&f 67R,] л㵢ѕrPz NdSV#L_mefe)?)pc'2>aZ>>mE~LV8KedB`9PB@bzٵp,Lu!ve;|4- NB[Cv6&έo6`1Nfȁ:վm-rRpϴ= h=deg9 ʂu:Um3EnDumՕioX5Y9ǵC#>|i͹lo,&f!tH _L?djo#-׭uknPPCaM ;;>2=)sIgɁ[p-~~|Fr!f ԥ`۾3<<4BLX%ò !TXu4ka, ԏ4+bvY[s~WJ'h<>%c<`䛫*[*8 %i$M$"UAk޷yi5_!;:._(OQF&>2*k(Sw(ޥoyJ[W!],{UYL5\v 8β'~h=,W`8x%ހ9.x,9zrmnө9ӽX5f^&0/3.RQWfU8NO/ymzT۶L#+FlL~&~9Iv8>=ϳY.ܻ`,mR T^oa[^[Lr v jKHYmWP9=k4 kZT onYLhfWOC wHc Fk$~Ku+UJ [&V6=,hQ7قxJsVGm)>)K<&"+f?;`MUMjh, }-Z {nl(_P8 ^TԪдo Ӫ".4=;K5{6<_Cɞzm"L"2B(=mf"f٘m'D:TZS;O=J ~ŨaQ{dɰkb뀁 ߽q>N%()`uNewv$Em,CԘ90<. mPUd:@AղBpIDha6 DNd~2մ1X]qRxb7J:;|>~-@ziDqpo#&<~ 9Z͘{&q}J+Z7I3 )j@MgM rZLC+bhR~EI4RYRڬ]szd#54CqAdE.#D=8bA >0‘ /w<]Xj\ akql֙^'ܬXp[a\(X&8`2*Pꁊ͇SWE3ٲ+}Qlc!uhb [Tsa]cς@y~NөSdaPoAĝRq}B]o\qp sn8e>N+Wo^mrݻj^{Owd1[IB fs5(e(CvZə+*rP䯕K^`"_o,愂D;n-/ǴϪ{CTBY$?(~= W!l͵rzuJy ::g B֙"&#X,$28v/߰ZJbA=,7H.j%A 'up?ZY p$~DՈHx;M&[{?@d9=LQ+P#kvћz^اL^ZzOByp8 cd`O%ƆB]1z0*^Gd (ZM~2g`;vIܮ@%\G JA8Qj FUޖ6e›eywC!ܜp.QН3f93U֦3~*W6l,G"u` !jؘR'4\Lt6f{tpHsJ!H[2f Lq+& W%(Ʀh+Dڢ\68sV)<=|bX|,Sj62Zn_.iͯ'/}d0 n"jwm ? dLUepgb" FMK;|ݕ띦t Ӂk} ߝg̈́2oCLjyf~sJ='xkTؽ äûHThNn%fuyDB ޓiGn{bH3xXS1jҋR׶C 'tp<[<;=aFG2J+nZ]EqV6wq0Kݯ A]:@.tӺw2 D%, bOtk^ɜk4 r>>1+s@; i(I?zzt0E6/R{yu&Co܇BuA|D*TM}.[^PI~BWpae1__D0n pX#㦞0Ίw9#j '7 ]2:MjbI* D'Jz yw *y\8YN%MĠuOdzyq)pBCYvFE`dMd!RoInYK+zH&Y!dcĆ(?PWxo"Á r}>S[ {y$L@?uLa ~Մ )GIIxPj5 6_NLCZ++CY_#O\ \ L|ъMR(PA«IU7D'_B6х4N4nĻJZ؂k"khd g)XWNJvcN0!of &n gݝES- mc'×(^Nqh9~l-)*lGxs:2L2ikUN)NDD;)WPës:Xvj [AȎ#2=L_8KVr) 1D&تifwG7&J]Kb i[tb$xKq?]J9ov}r}/Alϑ'avL4AskŰKgr_\viCsRaq,˖ʴq !#WDZkpdC@&R[ tȐaka,]p/YqbOiOu=*ua|j4G;̔o8YosZ5g90 (W%p^=4|1Tcׁ8QhI*mv\X0[%@J=R]&\sTZۧAvQ]J=B7_r~6ݲ">Bu #&f[|āu 絉 M"5Lh8!%,vsds6e9a DaHlk4%c~X# 04URn+ !P|n@ =A#?LɮZ #Ǎ7Zh ۮ()nBNlFEr GK'ә_ e"v! 8GpWj4e|l cjWH$&>Btq{/)5GO8dGU{ZA(5=Ugd57a?&~}yCo(ˏf: nTT#sI#L*E8@%~0,e;T_X] m]to,c֢%EKy$Ԙv_g?'BTwdC&tE[u6%ɿds7XHm(&3Εo.Xjc(=֤#iwʦz`fa1C4*abd+IX&:(beK|7wJ}hZe{b]PY!d7 UbiC*X3pm!^7ԥ x 1 ϖP\nAM׉ 6 U0ł6n>|L(UR4Ԏ}O Lo ?ww`mE+ oʬSɷBjsVIL:D*"3S[m[͌Bp"-ZeN|!\TB{ˠΓl/夾"3(x?f}D9J6tsV~HR-2(# $۟~ ։`ՙf:hXzP`c6Ÿjz<9n;SxV&HsG!tf,#P%Z}Αq54DA5c\ ,T.k? 5D}mܙR<@ηBv_}"L:V Hbq iШ!"0gtE7OB^DH3 uۤ ^d38PVq`ppoN9d&gLoA}Vn;Wf"s31^Ζ: ~Z Ƀ5;E)V!zZ R&4xqG*QD !Mqe3Y BtfFB1-읮]-%Ye>C5vv.Н.셫\LUMLvk؅5WKM yo0)S+hN8wy@.Rjo,AۿHʌKIgpAfmx7q8=N.ZJSC81O7+CWn0 prʉny/Y͉@۸g|-vͥ7@q67jk;e}y2'Ĕ/g4FG1mY1 j} %t@m_9t3ٖ-/vo*<8`De(g2MN5Q(~w f[X}@w_¬^{72YU)fݲ8zxZۿ+`@-*98*p8[+bVhuV@0T{P~n>ٿ+u:E ,_ZelyZ|Y@ؒ5uzq r<QDl*߽񗽨!aVMnSx1y:qQXjτ}æԵ(|uxJ /MAH"#Rŀ5 AD1G/6hGPɲ.0W[\ ,7&гY(T:I(h3)uMd( 4dAw 61Mmlřm6=HG =`'Klub .fCc b&ە,K_@NY#n vϵ-=YN’Cz#rMczJPb %+y1:^zcqmDw=HhLeHg/?!A/$>ǔ%д晽UUG3˛;xAf!>x`t`3UѥZ`N5I   es nQ% ?=b˻їRE&< PNgI=4p+(f2pڄfbS@[CYnFQ'i~rRDL?w(!quqٗɷ#I(H|]iDxBYITvo \QxO~BahǍg.,\F aQK K$+]0ZchhIy*sˋk0apv{ȋӏ'cZ79h~%nU\$ 0X:sךsN-6p#:QUZz1^GG#x0Z97lk+s<j_ĭśӐm8Ñ)+ ']C [Zy*|F "ıQn旘Xw C<$F1'/ĹyI))=b.s}l_G{`2iE|^ڨc寉5CȚ<޹:b ǟs:]T doxN ]"qy'|[gZ@ aV@r.m8BUE`C:F@\|wl7Ew)~N UyAؔd>hZn/pO޲ Tv#m\{3OXyni_bPfy.0` ]#0h^F'<| [ l8t}Ym  w 7Rix6ɺ!u C9I@1kyX֮nqFқ3_r?ҜR]݃#њnŇ|Q%ε%VP-omG/|/PUa"~xp?hzHMo$Q4b{Cia&bpޙ`OP4y6.3gLDH^Dw<ΓS:@Оgй=Դ &l6:#_|m%WB"5Wx!&U# YІG`P |,&|cbu !Kv;Z∯&Cn/7'IJ=_ŷe:fTHg4&>9;?pԋETUY?%e]\-MҙpAxMpv>@4HNy.7 &֓/R\}!/zdmsujVD\[4 W@]Cմ>.`!wuugxABVS*BieenSY/ֶd#sj gG w_]Esf 5L҅ YtT9q˒v xidL 1"Sx>X{^mmφyw۪v3Ե[J[aWd棂vϹ΄^#wSC^.ڸsMCe0i mzfGE#dy=Z&XB,Qh Z\f GI˖$ѳwn@_,Z  sܟؔmt8jtqԻX,ca,R{X ѭEJq0wRwPADAu{"FY.醽 -ȑYYy|X(v/mߑS|:(۝s?U߀<Irַ ޴!D&s.7ҹ6 }Bh.D҄Scg$O⦁Ԗhy[ƷNNڲt5~78 M?aѕ.dmnD\5mԋg!Kqt Bsip-7 h\\P>&G;  ]}!\kS5m1,t?kcojF]Ib Rf{,!Z0g)C G%J3E; g&SE哫ռ1w\=X69%,M aS~5^jdi.t%gy\l= IYH]M [Ų}3 - _~at ^Pڝw 0[/6CؔdϘ=vo}ƹ]~ NwUV؈K(!@ډ׼;a/&bZ5^Mo 9d]sdpאx#E޿<ziK=DaFnrO B@Sv,=+=76ݢm OVcnОpB۴{$i+9I!"g fn%=B‹M\ý$ ӊB``/[MXve^J4E j|^T]e/6|Ѓ:(IʧQ6W=׵7\Gj[3گZ"%8xЌ "FmJÓ8Pk I 9Ĭ}}" yN̤IK%W\Uc+MèlМʳw:yW5H[oąKhytf'kԥtI^Q0O!!OW.>L0_!A<]^*Uj@Ҩ ˓-/=OGDܮ1pgKQ~n(T,Y7/=/%JmkP1&#aߢ^p_9Cf[otbEdDMx! ĶS:KBQ[.ENx=r"yG\@P5gqz)f$*L }#|7AFԠe;!Ł!J!x"Kqo'$#Nb+`_it979 -`w򱾉h TavoV^"GQt pٌ9k{9G]qlh_R;l".K6ޛPH@z#h1,8XI*D --pdv"s-939k}sQKA|dZ$)hH:Hikݟ8(^4:,޾i#' $ #w0Gw/(^Cꢐt6qŮ gXs1L"PD6-a\_m/]j, [lZ:$ v}sÈJ)uf 5BFͤ `H|]{hTx]RDe46*ZKMN>REm,$C7'I:M`T= {{B˄qHnhfbcsy'g^EIzMl)Rcu4y"9$7#)ȣ;7F>KR|y/-3~۹8'uq{%kV߹F,`,ēm >O5-&᪒ۓ>V2#8wƯl YǸe!凞1x'ra> =e &B @raP` L?սcMC :$nK0`*ØYzī<΃ͯlcPd&4Waygfsw K{uՆfUr95=WvPdh]0ɛ`;y%Hq01VltXԻAr ʦ(uж>az ps2,;/Ӓ(ߙ~k͢H68dxRVB?Z1+\\%pMDЇ~RI ER&y~t;32X 9e#!V`\tu9bA^Ejm#BpT;[Mțh*|T). (K+^.`'1aclr#C@3©,FŋB?.ृXy 2ꊞ꤄ 8Bu.@Ydna\3JOvoU Ͼz46^n;AO)e_Xjz45,]ի-yMry0gZxpfO:!Kgh:cne7D5B^bt?4rbkw[6G>ܑJ&O6jF=MΚR8& 14̠xep}d<w$:RSO7S:;lk.}}~Svt z$+h1l>%/!N/z폺~%'9 /?YP>[K鐫4cgJ?d}zϮ},y mwbԈ^q̧Kv|lq ɳ{OP{ҀѶF5EQ|Ũ7Ai[)^:? 5W.-rRubYJz%\*b n"#{g;ϧ-=@j. ҆ٳ;7wMj5N.0^/t޳̎x`ye1 h!W(:,o8rCv23Ф0X]#^h?Ny}ZF1W\tkEفOT\Ԭz*!8e3+`VԳYY9CV`)V4@v1_Mʀ>$G2:H`IѓO`tx+Og>48al4E>w)H:M3,-(lhAc+놄iʺq&#(Y}ٯsnJCZ_1QϨzHKTvu|ƴkDco_2HCreZ߇{.iy' S5FEV{H\GNAƃPubZ xKqqIC֏rɧ0H8)O ɀxS-wBAOӒݖ^94@8K9fm! b%.VjxMqdp~ɚzk>lt1Jt\#iR"jm|z˳ctHD7 -X0Kߘ_ 3,\vfdX٥y2P*.kmȉ &hgd|ck;sHdJr>|xւ0>yT l>Smz-ѷDۓ@c.#p H3գ/%yRC"#Vv8؊9@ .d0,nA߁Nl} ƨe?L?3t[黅8}}f/>z\=~" ,jԈ%{+sO5ꋩێ~+hW0Qp`bQ{|HtUQ\r+imH6DdY7\VR&AN͘7"3+ځF4zXٵSdD9 `M MDfbvqˆ1ģM֕~EY]* 9hEÜ2znx&M/{uZlfaRtݰLq⣨cs(hh›ߴOg"EKht]%^"ěQׇ.Q؂gI0˜ƭ#ٻqa0-=Y3&C7$H_#l9A2{BѮO'ItvxJ'ٛĽ_Eޡڎ+'ϑi>J1e =ME$%,i 0pZbO5 l9I!X ú(N8$˓N`Q=ԱN3A8U-:GOߪlF십o@Z5 IsAt/ú>n\\M~xԋO4gLCZa9'tːx $u֕ ˉ῭]H[#j-dhlHk ,w+ ayBXMB7T4w#PF,21A-=+iʁmzq*b꾿8p^Nq"{|zYh_TR$, ll,Y5ƾffdjejdyķNF?؛uXe._=ǽfLL,|V盢 py A'+lKdZ%q,&?/dW^41o>U2 V6cݯ*d2I˵^VZriGoj"lr'ߚqܦMm  rVnB荈 yn|&S ^mӺxhޜo0VNCC9ُDе8os ?C&8vdߵ*4BRD:גAp8Og:zΤVpW~e!]׀ ]'eX8 x]{ \=Bs b+DY$jqo_ijOIv4b|r2<~TchE[E4!30Jjx׹3cNLmrdB]>mKjn ʷ)1"b< 6b4: ,6#QNs9J5͠{L֣g{RlV;0AߟuYA`1f,R1 &-3bEI_R3-G~?r7a &LVțNri{;Ҡ#8.&f! o6VA맬#uꁯl&r?L (؋w߂[3++֗,pM8p0}Un;WNĦ.{P=vܣIjtp, u*/%!d'p:D##Q圈7 RʂM \k#:zT}7Õ gY.LP$˭9d2ń \Y`pk<~p X4%{]nxDHNw+_gq#Pz"}n25/ R2Yťg82lf!dP?;$DDj KOc(Gtu!Ee40F&=ō&-/-T1$MǴ?/~P"?WF}_*wNqݽ::STV)2Sعk,G2JEïvHiWhHrWxpc%Va'*l!aoT0h~}hGI"_\n‡RԛQ~*8-`3#jLXӿ\ڮH{ҊI&8'+L֣ݱ9'ԙ4q\*6'nX|%/k Zh֪Oʒz"e};?j Z/$9ztxîX]+E{,b9$Dp)$%-gN%ޣ\+KdUCTD z8'[+ O̖_25zh㶄 K54He "f @nCɗ$3|+n1iKҫ8ᤴ7mD œS_cdtvil|-w .C2H:e֤1=q R͈lE/2kᵜіjA@]a!.f|wtL,{ 1E[ANyLJ_!n$2"qW,ܲy,'YړJLVcOGTV]NTARt:BƳ"ϯá9h&Řq'a ZlN!7ȟh@#wPT l$7پޑJI=pi%NGE>}X鯘I?DJi]`- RʼnN(b z@UO6]?1ٹ?"'HU(& QqvA nrbc2Biq8r1O~D@v˲7Lr9 qQάYy+U%в:iFRw|}.zKfc\U%Y>-@gi!򒂦JTxz<ehrvGy#c6o8-/7 ceP렢v:&Apra GvE.-;-8wٷ1w@שvZX.+&-[q+]n;ډ0)ՙC-BAG&6ޅCe_z*Zd$FdƒXq,U'NTt&#q᪙aXw0 9z{)jo&4"@p.ܓT=kc@{ #x&~oX,9&.NToKraC[J(ӐD2bv G?u;=uJix ۤ3JL'mKS37&wоpF9J]w-2D3kX!ےcӋ,Ly\Yw\BSěV[_=%$$bIzTc@m9BͺQ A[7uw+S(e/e@%$aHErKE /#zf{_Rn#i%<S2lʀ( LxQ3=g5Q]6BMfnwdzr7s PD%ȯoأwV?*#LቮNXvU@S2-/i\MA7jM(ceAf w ">Zy(ā&ʊ<*x㟂ȴ4hϿ|3ՁXdzf ژ|',&rJu? Vahp׀2ʪ菂y&}.A/mF]8c Wy^4%z ;|'uW?O` kQq]T~~V"VPhrCܮ3KxO70Џ`iBq\dzGgK>\'X AP[A26`T˺;Yi8 8略>h-+~v]) ? |Z60N{e>wL\L&Or OJqpNoTrkejZz}z.Z@?vӿf&۳1LkigWC B&+K[*̗__B/xōf<8R#L3v D/5LehGr*&nHJ2 q4~jkT@iZ화f̩.dԭuk6[\s) *-|Qman[\{! >'V[7~9{Sݣl(?KJL"'pO8s)Ϧ‰,5\}R|Œ<8g `12!nfⶰOR&::B*"P}CKj#`W$7Z!Vj(~ÃO* O@LtyN}{~= |SsЫzTBu={_J̃GwF`4MS Go{2YWdb>(G ;đG,}^]xa5P7,(#B>as@IZGa ~]n뼝Ȓ MAX_Dm|A{8Upu-,jʆ8.)bԗ(xMi[>\[~jMK?!*riՋas LT8Οi(cTSB9rxL1vPjDG޹D0! o-NpE{,(a hoS7WKV}^Z4a,۳Qxa򺩞 > {kho|Rq[z<.z&"e[wt>"[ bAX̏Pdl:yq\P\oZ\x^Bt6 O&Wֱx c'$9 X~T_=vu^d+jЉX|GڨqSf{W NAGMQ΁=X! cq(iCʈӛ^sels 93# !}HTzrBB'5N_530?< r6R+@R+5f~w^0xs]5)N{"m%y[]Pi?Υd)"4U&R0/hF̙v[:+vxϽvȠz:uvm7;2wҐi;d,dnBK%YFZa?V-D"0BGQy =_ɦi1[BS.t~:0&)|pBCvcg&'B-k ld y-7u/ڼu(}K*ktk%Pb5PV-eM0{47X CqD$ ϼ:#?,%e=ښ{Â?Lsv!\;G1[wZPEö%yF>_|:pXi4@-t= *?-/ Fg|Ws^T;T6Y2x8Q?ӿثkNTC-n#Ѥ$9B]kS"8 v lߋϼ7%FFQQbKrW uX }a1ORTp2xw/Q'Q T8Kj`.SN0>Ɓ2L޻(L[OS2\ʁeMJ#Rg)qrfܪӵ$7xK Wiꕅ26Ʒ"Sf ח uwY]xp o:-8 L2sH,D&}Yzk?[p.m=k>Jx6k> OQ"%Ն `IQJ*H|{k Ν2*g =aWbSR0m! ?m'3.@ K"eA6}Z+e1l5LG=J+ B Wo (; n^Mt'lhjRJGj浼&RL|ZPnC4}6Wqi=~Jɡ7J 3Q#>(|q ~Kb,pɿW\*BҚ/xO1lH o.p~4m-wi^-tTCY>^s> Wy\UOFEEa(w2kl{[O0VdvS#jFQͿWՀq̾3w+I2=lI t݅ ͌fMskS8>pH_,PcfIe1<4Fs>3G93 ʶp-l=h 1IwdnD ~Yԙ~?T'#]6A*_0Nddن\;Eu0𷷭yX>"ۃk2-\:oot8q35]`ؘ~5+!XD.c(QJruMfl_ ,`% ta@'/^y}4{D4]Zԝ-C+їዮF58(|EDja#+uAJE2 R `2HLm> F?.,^w]a:^Y'ߔ'd1S(QKp-m$!h*OQwntW/KD?#J) RiqܨYc~. (SA56Ex6;6-b=^lܸ~g8oeF$65Z5=N3]IQ W7 9#CA(2wr Dzgp*^cKhxmU6OAsz? _Ɏ25IsD 03|矏Ec8Ƙבf{tR 1չ* n:ta+[vC bPWlZWépA[J)弒ճ ţyt3y0'8>\ih Ošż{#:yPY%g;.eb/vgzxϢ Qfȕo J&10QcezG^ aust [n$e'%"l+#m5Kh4oSqN |6_ԩ}VI$ɘ9}VCE&+וD}0I:srJ ͮ+-6<|9! ?G St{`CLDwsYy hÈ90Fv3-6.xyW2i4ޯR3iLX^0QE޸B&j,lC%=`bتVMD3T6(E K$1= i =d l@ mjKH%5$qOTvpIR<@܃\ uƉsN~{e̓UH!qy03 U.r[H9jcT>眇" ;_zRT ڵ)<ڦA`b:kk sr ng*$Ԧ1e1b^[~ XwrI` z7L U'D)[Negk9;/4rm b;w֙/w޾eh}匫RmTHTk5ttw Mn i>;kH ~)4Sw"d%8Lҹ~h(k? %ZfEg ̤ %xjAœL̠}$"QO{dR5MQSdSh) 3]B'\ʘS+RПG$&[&eqى.&}pXARI)&ݹ`!>ƅ;$Rg4 j Wg% 3$ZO-Z_c\W,VxvPgt7ωd ?/*MQ3N@Q6w'قbLv+(l{ N|Ů,mʱ ; 8pPf@,šT &*zSO*n‽vEMRU+/^[p^3}y504I&=xOsW$?B(P @lϢB3c ;켝&H2NO_`NA /U3u_qsC$cxr]x/p x;:V zC'6쩊lF+SA\ͷ#hpoibՙNʩIqZ=2Q`${l10 _@u^o3^O_J N }ϼн(w'4עi"7H}`T3\<)F@-n q0$:`vofR>^B$SGڒz6TT grzZ:k=O\t4 $NIg_@*:QG$R-ANdF-.bMҙBAh֟/efuaط9 YT9Q wX$ez(h(hݑyY$.һ6MoTvq%;yorHuoj3R)aI_Reis)SUðq 09@*e'!H76bUO PT= s@a"4x k}zϱQlKk>aw}Y}D: tNkרnuirрgsbZ{9>ρ2/s^191WZ}~M4a<iۧ=3Imƿ}Xgvv2pl/1VV3ri @%ɒkrS=/H#hC&oa;MeĿ63 ޢjkGD\[mS_xгy'*R`+RϵovL%Ca9 ^Ip?_# 1ywjs>(1r7VHRꨅd#"T%*゚îY!YlȭK ̰Vɘ~r#˭ !S10^ZgB1DTT):J4V+ͤP)CC|; Q@o-ji`Dmܗ2vϒ%_N@/x]@2Kj6,о~@o Qqnt[6S7&DE4CF j5pkPԉb[2U랏=Cyh.,%npUu O,;4e s p*.7I6κ3]uIm\01 c2{)3QG=4 O@9@gg\ݶ u~9$!mA HkLvfV]04x *$& |0so{A[ fJX(|j!m\:HXyy}.xs#?]HXN*T!2l304fnvBP go3`6#F`&[N7AQ0i3N0 B-»Ӹ+4~ݩUA5R E)۳2פ3@:;}t(rPfq{b9g!UA ; hynO0sMS|{)3p<hdI!]EXk Kqlo?H+,O9$0;cEIMR)Z F.7ևB+XXL)#4{Ҏ"BUh_zzt=$8;h87zͰtfu5JF(mk4`.P"nqSj9?LVhӏ`>#%H^艙wג]ʖKCLUݑ::vo_l/_/{ QYn_*/a/8}c4U.QGKb 9guX4?BԮHv]Cc yejXp"Eqr1V&2K]PjE(5^Cn_e\ڮѝ:z3$K3µlko}} La6vt9`oۆ]FAiŲx~Ѱl(|h?p3?JX&§#K\K|HN"]x-IMioW!3Z<6D?d8ԋmZczӉ0_3 ݻ zW$Gkd2Y&w|z-${i혢|x5},^`^1C"di߹z7յ\0Ӊxd We˴{>VXq7>(t1nՉMme$T䡓jʳDB~<_ΕnʳkzMQ2nϡy@8`0*4n<#pAӝĐ:V@=0 "@!wW|ΒXU~ vj>)Gkܿpr$ ЯL^X ! ZATu89ƪ>)`KZ3rV/92cM.I3O!Yj#*5iɩŌ|HT*gEz X7Yr>@iŴ1wBG3 3RƤ2mz}G歹5~Qɔ܁‡lRne<žV`R{ 1f|8lFB :EeG5-2˪vʢm qh\f9쫜WÇ3!]wvSܭcWQ$oUr5/Is{~}~`=qor=H4 &t5íSD7WI0&NN8ٿ6n(oHk5sNlW bڐ Wpm Pnv@'~F< x4&Y]x7w9l|!LR$ ؃[+&"TMtau W_҉]Q?6̦ 3AP@9* ǑF R0Ώ:T:zjƚ?_-Eru+㠬JqjҾT9Ð?ߕGJ:l4-RI- 冭lk?=֠ֆzzLk.+37eۭ&p4Rc1|=~MQـ8_}>fw8e7pb('q+)kKZeM4NRJQ eG9Ἠg3WrU,W%w_)oįO]]sO:DWjXŇp^az&n`Э ϘK tP[9Rj=}S$klšMёSQU%"1. ]g W焒u&1A1s8;Ma8nHVoqƐkyfϩj8s Tc[IBXN]hD˞&ۣ˶xkDG#wN8O8oڃL}S_P"q'LEUiw/ظU'E<%YDaz)0_4gCJʑt}5{d /vC>M"F'Šhykٸ9ٳ2H3Q3^.:3j6Ջx/h ؀F)L7KSDophiw ?p!ISUwGOyH,Q{[R, TD6fu igkTRW\g fr;]'s`ńT=3Aow4:ӹ w0e>j(^Iߙ l'f_wQE}MGNQ[{ )__UrG+iOaP9|oA C& hPM8@>U9łGU)Ay] O^|(Wsz3evxjRJ*ĝZ*&>|a?%Y5X7~|^LmЌ*]Pڤ++r;ƾ?+,lZpbF /L8rcHꟻ(6Y)\D ιE 1;s1-Nnk\c/ Ѣz?FY`[L$k&w kU G'sDm-Ar,M䈭 ^O ?,{Vdz bۜ:(o3~ (iLS\L7 j"|g簼pw;[]gZE=n̳t6iOН$)'#`C@%Ҡ)geJu^|A DA.j `vF*oD(颹"  zw Dq_xԗ`aA% h.v7.qy(g*~Oʸ!wI|%FPc¾xICRϰ1q{^4c6BˊBl_ڿ6-xyjB=~`H@7IΪU DbTY"瓥#>a07bw厲L -侹qgKذt . .Vo<|tFrc{n>j-(J} , 9typ|gɣČdUډm%EȼZ.CM:lx))853sڊ"T~8,ELܠ{Ίб4Yrt DKTeUjIF6)mxէѠ]BZbnuh7OI-#!+-k;tlW蓍nlk*)~GJ`ʞ|uEEUY-[y 5b՘ _-6HoUe2BiRrf|cx@$t>-cE%k#U~J8QwG4utW Pb"WZ 5[&14]03]hg/o#&kF`N{UF7Q>9LoOo0yV`Cd"TAm"IV *%pͦ+=M M+R  1&&?'}i)$xs@ [PH1zj Wb I1sul9R vF/ۈ~ ŔqA!:SdY) 1yXddžk':̖\;Ț^e)CXBᯒ.| (}lH!g4_ȥ@W:8޵-[a]4,5&]c0/Щ,8@zqUT9mŅco.+8d#HNםC]ʂ_+]B," OQOT)[<_Ә~qtVJ'6 1+cs)$r ݳ?HOJ39kHu֕[Bu=H8ӾToy?2t7)*5!^daj #^NמwA\JBWw-/`Krqo_|vXҝj0T=$vS&#q"LOGj B=ŋyyLB2jЏwwAUן chUw!bz٩~ڿY\}]wyRDFI1oǥ}W;_ickI3UIqo a`q۝+4fgm8jd̘g)G?ќlmm _SdpZJ~]O;NHw0F4! ޒ0n.OUcCsU`uRnԁ:쐂B aK0;H5MSm}K/g; JƆnduc&?;5 | jIգɩtQ' 2ڳ1ˮfZbH* Ym;ʰnLyu2Oh,K46{&hk"tae b@œ]z"4.h*=jFզujM.+X37vB_3&ť]>6T"{oaoc!~g7X_s#}ڥ~w ~*o12>) %dI7jۖƝ8a%ے硒K{CYT =U0Z3QV˽=ٽ%RVk#x]]f ye=lD%|\c[t cc]}c6P0l1R(6Kp{LeJr] (Q)C"bu7cFog kT*=!6ꨅ瑒X8*ru!O\ Ah0eNc H|Ho]Q9L7@Q2ۆ-59%yFͼQ @4|d{ z6dKe>Z$w|݁|K;6 et}wm=ӗ&}LsԺ $`آI/ {[ $"\1%'['.~c(h'!UwzNn"H8g_O᰽7%9}@-%w2˕,;6Sg] @m],śCvhn.I񲵏Z؍ifhfUZO; VnD ȝ@妯qkg%9T/`SO@N!Eax·7w{cc'{chZa@{+Ko~_ kV@s"?`YAĶ@c[x'?FI8x-B'>xix(tzΛ?\kg5]f{m愫 %_\":*U}x 6c#ĉ߼l,6ny+PMȣDtbٟΘ2+ţ?y`9%X%d8wd8#&\mn75n5L@2j.o鷅f"7nD7&vF55(3fgS2-*K!9kU aZ0 ˆ%A*Jĵ\2Hc'4cTdSBdv:S FsPj?[0BHZ~PT+.kV4fri@rQ3~M ؇ΰU"'V-$?r/zx8J{Az=+%ԃU" ߊHcTMҍLt%c;I<$i=2-Zip?"<8vf*LI0$o%#8ߪo;C38gh%t1A(=5VDKpĵ]>&4u(fzn;₞P1?IP(r!Ѭ.Cr;F٣DfC^rW1T> T}z*$kzދB|7AyVp˻XU5\+JVG@9N6M$㙵ݔ ==5w'h_<+ } 4'L0ptx#,ss.}|+zxp]x;ӹxis1ܿ~P?nᑋ%( ĔOȣR濇Y@vK\/4w+{ oh84bZ<ϒo+c|ƒmGr%h(d?&޷@ Wdi砣VS iI .W ܩ3quy ʠMǓ` hB|}b/*8S,5D͜tf?[?ƚ2o:. gcFjoZ5&kgKĥ1PWQ&(l, InXGj.MOE:SUެwgQ@/PH=g%6UUlUzjܝBFG :؎?D_.D*ar?.{HZ9c^f_4G†jyekG#,m\LiR51iҽdA( f]O\tUB_. _Ue꽒zt\hX-` o`m72^W~ z2 Y^B)@:}$Iw+Pn׃# eI0Te2+ !`Vm $7MQpwxgm"yfqu0ܥXj'y(d1JBku-iK[p1Hg#жύaEF!,^/dpPY,zPF$9_>òψU1mZ=)x75RB4wػc*1֋ kq*;v5 yܾl` s;-LugNFRѮjѕ}|P:zI ۡxFEzgq)LgJL"^1 ~4輕l*pMD% brxU(?\'X'6¯~$@,7g d[~9qJ { k6G0 ޒTx-#NeֈX=,عefx8I=3,:_a L*Ĉ>|zLB2JYOsBit"{ 6f|e(;WI$!6mV%3K-^ 3jD?DVxwo?: ;G6io*:;?"cˬ0U]JVʼnMZ 6ڎH-~Nv `xZ0֐Ke}HiT -oS,=yNVvۍ'[T֏[ PaDi݅9Qchx,OЩ$2(pE!"^ @jgvȳ|r@j% dE&iL_ p&C,eͶx%LOP:/xu/5i#blV=' _䕭7ޢT6`<)'=gs;0ZǒOH DSRDsie_#M{N@ƬizFAU`N)z^-_|*ys`٬@@~\Qr,ўڛii1RI_167D)1v^.cv`C\)Jaʝu~dnN/oػBGIaDn茺WWvۊ4Va?iݢp. &Vi( . {1StΘu)o3'-u'Q0L^QBNg!RGH%ٍa@gnh=𝇲y<"^FbV'%29 T#ݪ ʀ YHPVS_9\ٮ z(V+ۏE2U/ "5AUԱ ēV*V]RMbv+Jsv' ;_ :@7Pd#U\9:ڇ(aQX-&N]mxAm;nn$YU LC-c }-PN|Դy>wc 1@CRlj –ᒠI~ty `zd:;'ʿiMFoV9Y馜kb*~Zp< 'kzi ˨/kez8%1@ywwHa: iI4K.q7Bևd=~  a%Da# _;`NG:1eny?,~-9?B}(Sc1<]~ x.Kr-~S6sXg#{$s(8mZ!h3oGLGC'GKT;mzYofC rEқlFnYsIOa.U 7z|浫ϔW_Q/~AE`o;;[FZ| vhgwY%\v#@V7t|5jz WbF\P}xa?.6fF/#lb0Bs&gic͍y*|2^9tDfOKv[W[j$#NO׶{m0ĖRD8C=-t+JWNC#bW/9I)4eHUD TprMk+8OY i_z(N PyJ^}L2΀]=Lk-.1[Cض(*f=nfJO~CV,:23b$ihBM{ݬ_8̖٢pu-V] Կ;h~ Y7e =N2˦XP LfCE1皛%14Yl,  {%7xN.% M\|!Y^d7`!&Eۺno0-uG<ѝ;Get( }.2Ӆdڇsz!`%ЌZ`PVBu+j^tu؎Օٌ)P|BQt( O:=HЅ6N]8x6"Oy#P^uO>C~;&-ufŰ3x"ɢ @gH$_x%;%Vya'qF᧪g 7E7Q/2w6Wfs'I18t$"|٢U#3>TV*D7P!Xe"}X" l~iIm]GlltGplEi`yΟjb]N6W__2k. &=m68  T̓l?<8|ð1T@M#^ ;)%\B9WzC Sp#"FĨ޳8a1l@z7VPl¹Q:tGϔf&9ڰ_*ig'DfĐY_Iz!&` πZn\kqDnW$ HsYWf(fT b=eeL3^(=)AU,xytDVd*Cykf2w0]' 7lSIC`z-:ۨ]⪘#Q l.p\oDt7 ʳXzUK/R,Ϛ_>^`f#q&ZҾZv،M=*QÎ «mK|L95T<|Ѫ+^EEFܝح.q&.FJl:KHu58)* ot]Wp'y'K[ _sN4uZm44VȤ+:`|k;Ea+M>|4>u!yitdcݐm1bHmXcʲ9 grDoD!%OzÏjrÞӌ}P{ vuD#p7/-kC+)9/&Zɟ d |0B |y"Zꙧj0qyUWz{nՂW`DaDH&wcw_X g+|S-L20o1KJVH !b c$~X"FyohFGD[Ԛi7)K&n*š[zJqA~ѱ|׊l:߸OwSOjVXNs?PaO.\Jq|r1G Ed?>LAz@.Rcb_.v0Zj]I_2\8%8Os֜98 MkG/k孋S-Zk\0#v>k `^KaߙmYF-YڥU}m E\N,=ӝœ.`+b v }}v8(iUKlOUu?I܃iǛبvDTU uՒF45IRŹ%n{@^@A뗓<ܘJ=Ӌh@޿വR;H뿽q ޓ`F b%(@:ϏLs_"eY'mɗLTe){ +NJCkc{ ųN|~:9R=X3zAX-bmLU^E>7Bc4Č)۷ĵ+&e}[HyGfaѸM yWVFZ84HLzFUwAER'%( yh.ph }++XB%%٭`!b/A;FrYvAf u VY '32*]n$ADx` SIDN򲉶(*@f?+QvgOVәQɊiRIBg ̗+ӒSU FLye,1X%&]B' zeϱ0 tiD48?uPHuiv^u\/P e^᣼S}gH ϔdEZUx{8d9{56{֏AiҾ@rr axԊ'֜+\Lv#sDWZUW>Ru2'c~ڱꬫq }mԹ RsYtmg-h, gr̿'] +9y/x"4{V3oz=WOg [Z2D #$YxE~ FhMQJEj YRfUUa Ac5~r!a /tq6=eٕ#cnG΢" ˘ӳ &JAD+ ^|@d='xI2PW?d J -̐vC[ԝc'ϟK]- oZm% W_b+,.$5|d:g9a+bP8Ҟk5:P I:~X92}f~*0,rh86䐃 1pG]gԜ\gn1OxuME8[8Rף$V} 9EMR=~YQx1Լ;GRZtغ9JW5MAu-3b4jСmT<$o⁼ZW҉uڹ.B0@RVk |GCMfcwNxLUy9H[]DS*/EnWe[~ Vs;gd|3lP|wM7l6:uuO*y1]&H)6IlHxU אּ\Ktr'Piξo,~C3.Rv/o2%YY9|Y6 fJ8t=C:죜2nࠃc 3$.,..ki>9c9N,cK쌝 b<Ύ7-6.z%DUqM,rg<^FZBqM9 Fe>ȷ`XJo7V5c υu[eWƊ` &lU뵻-Մx)$[(ƀPu թ|AMsM}M S$,>Uhml&n2G!!| ӏ+g"j]y; D8Wy&u/P!F G&_^"Ha*pN_3}Jl8]u{K#_?t+nWR-۷>l9_P[0&!nY%SPq9'J1[Q{Ul8:X\yDQ2YfiI7_;G3~J{lMCʕ[$WVI*ep{>R@d[a~R+0NbQlr`#գ$,o"T; ΗU-ҭULѬb-/Wͩ>D)G'ߑl)M\@dEYN@;p-dwd)_x s7>M6>#7)GM b<H`h  n}t=7&J,SyeKI!XPC0YzP1PTSf7=biCW|> j:hUR'=5sZI[ylfx o@\T)17'(=;" pmLٓeR&D6 I|@ ۴9ʥAOL /ңNS?h#;n_ͮqOq3mT@j(IFbq{).W .OXĽll TdA%5ٕ"ZޜaӱGHS:.d!\̊B:a}m jo4cd©H}Ux4fLE1PV̒sIa ?빅4hEE($WBA_Ttj^eyVչ_z]IÎ2t:ˋcNg ?_Q<›)_Q-sʆJô`ãѲ-a_:'H ]0E  |)`Yvf7_K;\aG\p}9pX*o]JF`Rkk7!<ab~6 b=' mu~ܞCztֆtT]d|+E$B9 /:<[iiSpW690a_^LMe_9DįMDJ7Ozf¶]9|Gwq$ y!hwdD@ւKm忇7)<|>s998$N[QgQα<ꄱX` I!ZVxW@ȥۙ.c13 hM eiՈߤ/[oclXvJsc %59)_T˞?nL[Vkك ka;N`PҁYZa;Q_qelANx9Qb bfmF߽>դسǀn>WjIH^ 6v>"'eHfNf N!3m~/_,<ӼƆ:GoR`'On3OkƜ)5@ ĎJIj_0!]sRTN*5,LE,Yf2bb Ulw7^+fcrJӔ? = dH">p M'$)!%*4pƠB%rGxKҢբ睟ZϾq|/fޚHdU5KKen&1Fab'i1'fL7 _`1tx=?AnNT 9s_-8!#kmuj2mxU)(ǝTբG_jI 9GӴ(x|6H`< &bSQn̥A昚2>_/&]zJj:-nڍʳzjڦ]?zߦA"57&WGQo;IѮsUt8.&igFmbjxZ(E̯`;,vAUV>9XAQ1%VzJ .–>Sc40 -Y\7Aq.qHJppf̀ ٧?4ܫ/?7p0a0v@սR#[IWƊ3t{ J;d5m1R1 >+µ妒n尽Ϯ7T~.VEdh̘䉸M:02 즖& 璩ϑHN}1ѐhI늇xړ,G,Ac+@^0iu }/WtёR$"&& G5;oŐT5SNHCQ pO$\ ڝu^=Q~; ޢʻwpnU/g_[_}0i^Z \ď-Bd+ÇsQvǼj@$ RAyOg0GStei:'܎P\=s4gS$L>T_F7R'w=r5h:@a3f%j),%++"d;^mDgc6$kÌE9}!{pLs*˭@Ϡr+#l>Fi7AɄP ɸ-Vm`xPʾAz:ܚ^ G/M䅽UzInm3@}hZrt6? DI+?#γz J8 4у"B/ul.|PAQ2Fp8iT3/5HopcW(YP,owQ1E\w7U~-С o3tNbCrCu(>`9Y9A7vrM7"/9S!eԉȉP&)Z!=!9Z)]qc^X}iR =8'8mLF'Ȱ1ƻӁf~А"1e%Q_6yXNhȽ--ze -򨊪e&ɽ]p> ’ĆS0K818? 'cUyهY6ZFx>%ԟ; Y`j$Os bL e*B;#Hr_Y;Oy 54n@`ijz+2Y |HWS 橬b eb:yV+>hy+]}d C`{x.ݱ2=}:(Y.|(8}-DWv|4A/G=X&(͘ۄ0|3bl"2Wغ#\~kTZ1,u$';ۨ&, C+S%!0Qtg\sU7uNHU=]Xj1b#BYA@߼~oU:L*4NA˙ {]> •]^O5W`c. Y'~:Ϣo.{A^YὬ MjT f˹@hVozs;`I,ifkM!.w,k0,Fy#qa #7WǤ',{ewb/npL<1GPz onviuKۧ^!>`U:z#؇t,G C1:R']~ؐsŬ~~b#!*xjc2elqcB6k&_Yߟy: ?ϗ8M8۰{;W#& 򨪌_zGhWI\vm?lb+nF3tԥ֐f.v>?I_RI˕/3A{#%ېQt{jrtTѨ4 n-7Εlu?+7O"z\DlJ) ]oIAɯ`h2=a 19IFW; FL7;AzTR7&ԛ+F 8)YXm/+bP!#E'}9>"˻>EYA%̄\9a٦*zz|.#]c&LXE|jRmY۬+knMeMUSFL_y+kP4M.N ȯ;aP3-"Uiig R̝0u>c5JVZB$.#!ճ: ^ҩ٢Ef*eyQÎa`D:rgi઀#K*-=AVV >׼b;__V8. xyW[I>:1\_6.G_e8;ɉ8]t.3;&ӓFxl"b/{t<߉@p,--ھrشl-.!@g:|! ^T1I l2^ ̈́~8TJ!oCkyS̖<262?ztz+c@Rro/E-vݦTj#\Dl}=˕n`>AXAc}c^a0O2>j?t #D$ zKmSyWg~{Dk8.α<2p_(f/i}xflggJDCKIVC]-IbʠԤE!4AviY(:(ۗBbU^7;O' ͋H8;s9`Yx]Noeu`MM`%ϥҠÃrB;퉱5Vy#Ũ_gFMAG#b9ҷU7aGVA9dP4x7_NL*S~[1#m ߠf9u95bWt_*1!W|Yw8mN67`ȅrT L W#'̀ƩCђ9(Ja5'6z ̕eԑz ԕ2yY8fC4v{DZR/L+\afuX)6nbꍹnfEsR[QP?&]/,l@N4̭"Rc}^GĐ|ς;tR*  &񈽟yvT峫#hH1iW7ٲꧡYs_W<]^R˓ e4}Nyතo:_̘*kl,(ӭG!7CkO#D^noh'9Ga߆RYǘɬydAVvnZByCΘ&;t@ 尢0yU+DtԿ`Cൄ媙(L숂ؖk"~{xQ[)n>UP̅1S 3R4(qLNT[)}Dkd=E*N_w!LT.C1[1EN4gt)-"+ UVX.J"oa$eh|=gr#EIV _M2[r\Zzr>=sx:ʬK(dRM73#;˅̸v(Yˮے |ۋ Q1r~mp]s7]XsCV#7Z8EXto;;nSoO#;b/#eY`cMɒ;AW'-LΝ÷=_n胨O.aIsi¶ӴIN(%Vڍ6} AsW¦bZɾB;[5^" 27n+dIIllVQ 9[B}ȃRƒ6L,Njxga淕`aЃhBB(mtʌ:-lqzibip3kNB 7 mg0$_^.sͯiu4ʤ{a(o rIts[U3@vВXE *闡?PˍzX]\ԑ Q w% Y%j1AE^nኀ*#=*zj<,%PQeU{+J 0['D.5Km絚Ɍx:[iHb%ێ\ZO9@n)eC^˱1K!& q +Tfj7tDPVcӮ, gG2p+c{룱.Y񵓉%{)SB?$1qiK ̧i_0My@qGZ_Hf1-DzJt; ֧* G/}kܣԓ'wn݊n!x#}mL7dnmŬdxwؿHG[UI 2;6邸g{4vo4E"뛖KG$՞Wؐb.'&l h&p^g'?tP!']bMXAuOGsUK{E{\GҊ-)xY.E5ݡީФ(ج,`?Ig|_ɆTa7!eX|Xry_pEvOnQH\ 6Gib:*tN4Κ: sea|҇ĬQ;]=짺=p \GIӨT[YK:mAK+z|){ Y2\ݣq"Gb.LIp`ϡ`kX `b.9G`LE7vŦA+K$(yJ|zԑJ@5|ʓ/d3`/X lz 1o+lE^U}Ѕ<Fؔ߶ITU~ Ik<_٩W\(&FF__n+P 8YijQZ!C12L2id$ԳIuZ΄5Da{`#(i戟H1Yƣ!i1xK%`bmh| Xmc+{bмL]yY7 .a+1--}rޖ NzԥS7n$E zp[0u$utPM&IRa^ kVC ^:Lfs>j,f*E4qw՜k pN`R*Ҟ㍣."_qDk; ka(-r%BE+͵&JV0S;ZDM|(تX?륨u7@A͇1~_m!2 ~|`ؑ."YmNgr`uӸ͈oC*DXuEim0k}| i4"X [cpp }-oaE%|hۈoGdL/F#嚅8W^TaR oIM.K r:С9$Xʸ: x ɼuWk;@4dFꌡy cqWЗqjAcl`z\/ /V01K`M&)RԩU4uv@K1c;D-%k-hYVT&q};a7aQx[El:姣_ )8DT{ Yֹl=iIݮF-ĩTwbYK&G2$|:QFDQ}x~Z7إ/f;a!*iLM_w _(K㠯/ ~7Abx94g-Rh;Tu Cė{WEp[29]y @OL&%bMEOD r\'vkO}G:6ǜ%u鞼^8: _Ӈ]LJ Q;N as@@OO@){]Um(QץJꏝ0fHRT*gehn. s+h' `}.n.{%E( 69U@~s o$ `q|W\ݏn\)uMfF|K{:2YfiiIQtx;YMhԭ(B߉aGa!兔l6yt9脻_b"[`;MV8$ `UD1ڬTs%fzWYE#m\1}̵߆K_ȏJ-*:t&+ʻ\n-㥶+~r\ p-XFA7|]# J˸;wcmطzeQ Op͓#AY!ZE}đsQ[%&LOx.GuBJLF(wʴ^v{V4c9da\yùasM:tʄe.RGvvha72DE!enhGh2c~bskx)Oׄ3 L/ a~ 0䰠1m*r'Yj3y aL\}*bI8ՊX9K䰎XYcSCbC°oɇ(h{{y*rQ˾6߯) ~#<&hHJS! QTMMnD L6 ={0,Ys;dniܞjN@ft$wP: Z HѿqۡR=bRF EWNo>Vv0wdⳖ[Ǘvuy7-TΪ/8,5lАw-cmϒ˴v;~ PXc~mLqbܛKsUͭ4];oɏX'7oTC65;P*DKc}S<ں:Tz]iVΗE)nIUosP_\h9j l]G܂d w :i|l2r]ݚ(;k Wǜ;F2(G`Peȃ(/vPyml”FYQ=h> ,bbI`\NЁR_RwA-*Oo|j34Fߑp+tܐ-|Q O!5)뒿|ڰ}.?i_csZA}5뽛éB hvU~0}$҇#CHA?'pe[vG075 We{0ڋQ{4>y{u%C(f{!51w߅K&[pVvvD^uDZiEE݉bQ+C:W{^4NBtHSfb7xe0x]/Jς 2napTLͷӋ^7Ejj`ΐK2_WHzk+?pI,*29Cer(P`wFz>[Mh^-qkgS6=x:U U&U"Yk Wwd)Î 9ķs? ItQI[k'֯k-K}URfZY1kvgG߽*sK8ud@ծu-tQNP"0 KOXo _[;ov1st J/r|vjY)t1Q8X)J4!4sq#[E ^М,K[2afqMܸzr֒.b' j=H0ݕF+|6L9J-3ym}uӕQ#'(1,l_3]>0iH|c+Gej  3?i,SF흼%&JfvݭA-gQBW.)S@s=aN ')@湮)ja &Cs"BJ/ \9^a ];9L $IyIh[rdVhNu٘S )K.g>F\'T`J;*GMӛ, SQ֊H=@ RC{Z[u$`6-j%K>#dUH ɜլ=YsmWo_|*=4fc!LQSE_"e@T} E2rqY61 )To3BBK|<lz^=3]%0!̲hp8L̢cO~ f w?+ $7B C+WD[h%+mNc"iw-[MaF#ʌ+\$kbXvj3Q& Xa*G(9ӘЖS|S :Ƚ 2Am?ZԔgȹTuG}1]\dT\8 \{Fmue;rn4W&$79FԔֵ瘍r{B04`']Kwt5rۃTg_M3 fcF?v!A}2%sIvg/.Zk!f2myŲe6MoH`ί~9P x`'fFReƩ^JB9,|1~bLCW,XU"PmT)dq~]l2"LzȠ>"Dg9%=Qy;sb '[d<OԠ!"T~PK0s.ݔ;Y釔or(7k6oa?`ސJ`{ǣmz} ,SB%9S5-32n GW,OꞂ2)a5V6qvnv~ục>S87G6:5k~~ieQP=n, h>υmCct_`iez@ÃʏH4sʐ*= X2 `*|v5RZזA>ɖPQ *Cyb*֙MrWտ*j MuiExSpb܇2Dg48Ezw?Ousv wV6gv9e)1lGw3oo]?ɯFGj'"#Gz"ύ" *Z: &WK?9fG@Y*2κO&CV,.AW \ D߼;KghЦGPH*X;œ1I__׀Y{$3O%YwMMPْ`OƌM>;q#iX&/.(AV.h ̿20_qI;F\t֛,s=gn0wִX}NW 3p"qtj3| F?[*K}rf.%ko;uUɮm~i> iA>^P[ɥ# ,W"tCg7:ݴ3b~m5t;pj/Fzٰ(0څQ\!: $@ K"]9eN+4Gq37xJ $pJ@un/9o'^ESW_W@nelNFk,Pd5 cDV3K.>51Rq+G{v44EHrnO\ڠ2xo uHL0D+0ޗy^,x:KAJ*ŕç Pu6¸Ζ~J}.oN9vnls)+~Nlwc@5Ձv!#y u kCeT qTv<'d5;)d~][2ʝgZczVsegږCT.SYNl<X/\QxsnH@ۤiB/w4MJ4?v @h^bsg!*X ׍sco?ZOnEUрegj ?..^l8#)!~Aڙ#@j78;D"94 yn'zAn+'b? lw{ȉgdHLݜM'tݰ 7;3jXR>·v6 _㤾?Ϊ L% is7QboqQw^|.Vma@h/A2:#4l9Nk-kݚ[ h7NX$"f&YG NJR6[ +,ьb n&^~tQ獉"8,]7]Ȇ.᱓[sŪ`WLmroT-P8v!LxJnlU{S E vER\1@O+[gFLKV5 P,bTIWOmE]3h9,2J$J4f>pB)fZ xq cqC(@$SKE!8I=q}WAEaV#qg}~jd_yD 7J5QS\VC^+`;w]JB$ !T%Lޥ3@(/Z7'DJӵnBBT?4e@R8hؒ XOm2*uOzzθ t6~nEI5B*OZt3E,|L&Y7o|'aBli/ :bdx 6OU?zpn7yU{i|Req5'Tj218#d[Ig~u͸oCi#'a49Ψ|'],B—}<2E%GKHy W¢|JEyvNϥ&kSp_?Xɿ[jɾ !ṫ|4 L r@ALhR^_8-(L {+/4wC<_TxKx(&*l{~}#0qKM}=OAt J$x.@RJߗ$^DÍwہnqO_fԼHY4͹3 }涹CΘ_sM ]L?iBsMƨl)(iY>bAx]]2˗w] Aexj(J7"G `:a1z -%{SgF; r Ig6 <.Lm8{yTS. %(0fm~)&47t RovJ䅴Q&D7 Nߝ>%HN78a2>Ztڣ#`6%7T)],/IZ aN@q.X6Tk:T}~)&C\.t"QWMb@#i޵y^cZf<6TLEYf 'O,_"D(#cF(H} WQgL2{{A :d3/%zXūckÿtq/[ԠJۻL;ՖD+3߳ᔣM,vf}C`9=>ň_:-bzHQg? 5X)cl`|H_ }$' zӉH˨h |Wň:߄ A^t`~X(J%As]}"$ jq"@(*{UQv*Mo40bBܝ+ɟvƏNS]GMdEG77ьk94QI*u4=pz0歵Lh1{Ӻ1=] 5I/_3u;HB5ײZ3i gPJwF7ʕS^5Zb]oD }?:AXdA#fRt,tVjx &?H뾔z٤xӒ;1.wFW d&U⨯Pވն'I㑱:0Q$&EYFYysvSZ2lMpȵٴ~> &>s!c,+tH\{ͦ޼qT4 iڱMA-XN8j wNMGhgBT= z37oT,1Z&?<`+P?EFd9>xm_t|ɜ/QS<*\c$5nm HjIIGsdsSx-wlPS { ]ח_5ܶTʖ{μE,u#lN32J6:l4豟aIpV857EAЍGMDtDIY[xPY [Ȇ!s i}<<bء?NFV~kW>s !d޹ i|9R+^>}RB} ~g\hP _W\_eQ F6 T50`ʼnrD][po>Կj!J5e9%G"t|yrَ6]r;! {yw쌙 H̐`E_x^EA0B:wPqO>Jg^|O$% ъiHկ[ΪcAl4 .5yJbf$ym7k'dY|քu5BayX.?Kفo)lS)lK`|k%=~xpoé.F_v"B\L!pyQVҒ`'%S? -(juWf oH=/ trrخ]n0gǐE[7^H!y}ߊf&rS'd?yS"{qspG<۹N]ip.@sQl†iD]"B$#\ \P<(cGuTZ㏀tseV(#jݯA}!Y%}lkUl~11CK!cv%O!Kn8vˀ1G]W.wpL?F{>IP7W(:8|`5LB%ӜsM]F%[ S..] _r0(C͂w_B]=*dRy 5cp}_PjXEaPڶ>h6V%|c m{xlC\"|W!pkDtpʼnIi #Nv8(Dw-"%&}vH4a޵dnSsV7sPCX?+-Wu{_{%;ˡN$eѵ$ YqhrtF*TճH Xp+W <4ٙp5?`(R#2@3! scS\Cb䲴>j9 MaНEkgkFg$Qm Sӵ΁.̆čKzҧ`FqI }Aoj3p_X?T\!ȴ`iT8+L[0'ɱf% ~ɽ1ᄭPdUH^7c[Ѵ8ڬ@s) ) NQuj=1K?<VXjl ޲e8KJtxi Mhf++P:ɔEUmxrf {׏*[B%оyL{?D m!rU!~mixv( 5>#k J1e]!Z \T "kF`x1y4sWZy,:l[/Z z[k6-Ӄ޾͔~tZBu.=&6TuYxNxR,:Du1qhF; LԛNYd:G琡_"+ư,q\/>]ͯ gbb"cVEt]D<9?#;{GH8Rw D 3V{4yYU 7MCP<_@BHdchsnTpq嵒yB[jG|@ƴzڬ|z\&'ȚUJn*f&.iIqU28Y6zv2UY7p%G,pdh0%?|DP,e?H%+^x35T |&%߱N,AV,w+A)˖&)|\dQ~65{~&q,^R"e:_"&ܭInBs߈7GI#P\Ao:9|J5rb4te?8=9(|78\y:ڇh"5Ve/)˞b5쀇agL 3'u\Vd8.?z7AN; Jz{Ue"ݵ7Br>&[vOg`%BGDB%@|W_~`W#ڳx6\?>b?nh0-eNjvqڰywv<TØ,v_aX]VFiC˹vc;S9ǝ_ K5h8w|Q\h`P:Lx(3,z Ŀb"aq&6P(y7@1|yr\d! \ 'tmUA q!OufYOWùmNNC.ڭy ed?*W~Dm )b s܌Lq7v0'"ԮBNþ)ċt3lX"Iݜ\]fh> ^7j&p3wQ6axX=Pj7M?S};Z>&seBRgxYdts޻7R9:i=THxGt8C1K,\TY62&!$,xmWbx?3l'XenbAC%g~šp¾AogњD Q0 Z?|na\kN.1߬~}ޯxt}]cˈݑ nxǽ$S}dx4bD+*sLx#`rcג0*,G4;~1OQ9K R.uqlXAѣ炬zΩAo:=L4:KR^9/NZ.E}!,(fl0bkeRDdu%gH =9Ibp/ G>u_c@m+Vi7ʀ@޳IgJZ5y~ݔչ7G8dwO!XdlxGdǥZLkSkB3OHC?>Ng4P,hXA8<@-RN5g:kP6TYphZ!kX6gW&fK|יDw:a%|qċ ضd7߲ ,Z ۆ*_Ӈx UkߪeOls(@ l͋aesO R:ٚzM؞PGu:\{b)VC,@)(`lu [DS1=@_YȹYlGFd*L::]s9 ZEIբoI$Ǿ#AMzFr4H yajB8. kat<'TH/d=S'F!,`5*&CIy6ZFk{3;0S/^;RVJPD)+w!Ypezka m_:{zӶ! jVo*(Y;EbF 2mE5/#\> 鈏%cc*oZc@ Xxt.ՓH$t%℧m~i),+e,Qmw0ζo^0Rj>W4dP'DDQWR2xurrl32iHӷ}ߤ ЙwZEтGOBu g =O E˒wa+8&-C؎|PPIv9B+ U群bZBx pߨUpgIlq Yv[YOvB^wC|UUݓJE #{/C RZqD|~\+T:zTZ& S44 01/π݉w[kMbYr'<8t hY4w2kZtׄ14fG%M/Oesk݉xdVA؆,f Vk K*⥴m,D[S` Og :6֧m/߲"/1E~|Nj/`ɡGo: GQ vg{Tx]vRr n5Rw)v T/@dr©G {pR~ج( ߏ5DZjD)ެ#rKUzn"C)7l<)əO:@Y@̏|2Ell[!ʼ֪堽o}>f]V3ȃ)%:S[:#B' 2OO4&8 5j#+2AV3o#O=ҀHvrVIr< TSŃVu6Jl$ūRos6(07w\)x9q0˧YW[^Ph<6'nmG DA`| c9yX9}zLD6VWQ#Cgp)W eA4F>A>Ti;pު6HeA0メ㓝kmuf I.L)@$%zyUU6Ƚ5t ׌ҧ 'VګYmrs1KҳFGhd**~JN@ ZB o=zVGJS4r4:r/1}yYOׅ.ܹǏ?gr;nB|z W (1ZlN4xzUj*->2o#]͟R \CYqa-C%89rCfY=HDl i(Z U"AE>L>{Ul &7 ņ͹IRmO =LhD0B;dia|(:qFӐ+ -mrosJ% RJІ.g0NqnPwKNDi9xZ 9b}}6M>沰oƶzwX'~G'$}N5_ٞE=H6U]99ClTPP5[&}:a3 5!lSN)[5MTr^5t  d"v>HXٓkyQZz1_!c>UvÌM]A*uxwKY.|<0o)A: Y(Wہ|ѷ[C>ڂIaBsgefGE*F뛳ԴP@zIҺܦ ?!&Z*yԄ!.j["I{^Q" ]J_ܩ->\!yN,l #t*_ bSޮaeKfηt%E"c֓9s3W5=sw ~y.U 9NEz8+#2|t:wET]N?X]P-!~_J33WF)[TQ{nSIjj %eܨC1Dªي5ԁknvNxI Kzʎ?+osioyJ'b|:`{z!W}J``lId!'=XYbG>d͵ & C]2w,8?r3>s6CeAaPLp|-j "b8Y f6ȾN懵 >e(2LGг(W|0e)׮rCPŎteDK~=뇾ˀ{"k|䫓YjyNqB8rcSIa,R4ai#47hQ-Α"r X%>HE4ss<#ߋLyraDѩt欳Krڒ_MN,)ۏ³]FWz4,@Hd`hv)M8^jP J(onp1"pP0c{vA[@( Xl7>tHfi*حj_(m%F+AS0*X8 G,,Ӕ#o`7S7^Z=>80>ݸ%tzźi $AOa.Ö|4r֐Y 55Iftc3 ט8*N"/AY"zA ^-u7Щz0k,`z48t-;fvCdfWw BtyQ33Ɏ4m  EDŦ|Z5/Py|}Et|HEu*WKVu|MkN uS*lΓkD8HXec`kY%4Of$ ~Z*3e'}]8H@&ZtXS+lky[8l8Qygwf.+ɂkiW}gδk +b1Q,UV|1Sǃi8{Wa}{==pq]٪թqXf@η9h=~fЌB/??d0YSK8 iڝzz.'cIre岅G! BڮS6.nS:qDe"vdr9fAxΆ{,Z9E( >U_p;3Eh 3?`n]Ao}(xMs[nh ď3f`R$^-,`S1Jx[9ls*Q馅.ڧ/gJ n"+9W 1g'jRFbxnd+tNBjF7\b/G6ns#[s7$.>3᪦7xӮ ͭ}D$zBBʟf+v&[MuXW ǴP_L 1́hB*~ZP]'[c_s 2!J<=@tUci|g>YdwʕeH.N&8U$B%wVNJ?@׳XzGfoa75\ ,s~T]\~rNܲRB|}:K4n6F}4i sxՈ.{4' Γ/Mҭ/ԧ%&8D=i+W(@ q53*cI!|wpZ7OIUw evxrBE~nTm Xl͔Jf[hcY]]Z ! Hd]lRQ^fBXU~;:1n^9RyXfe);FX!;%& 2[^[@`+ǗO7t)EԭnPuh0|QmK-&P 2XAt̻#LŲ\? 3=P+:\JڽL'`.离cK 8%Ǎu܍ok+j+.I8TCsPv/1NB6pILp]UŹ,5k Sp Dpg|<+GuMډnEڎa  t>jpej!#5L-ϕ0qwL<'ȀhA -~YJM̚#(o">Vp/<w౉mQ ݩQ=yٱ͋ ZQsGMBQNp{Lk%[$ar !љ@⸁m>=Ecpfbhl@GQq>ݎk@0!h{"&A9/OUr׺X,G"d+VB EPgƱHcypچB@o'YG,3 ASDEn'<4醃IF=ZKz`[8`J;wo4eDz8o,bG]̄oף/&An) S3C'2Ӄe)"kwΡ ژ"Ԍk|oc6D lCDmzb{Ё0:U+cri &3Sdrߒ]+غ݀6ˤK9BgqX ąY [zX0 ?!7"o$͐DCO`S kR=KRzSaylvL_}Ǭ`%ͬ.Y:NnQ4uB5絟/JﯚQ6}h?I>֍BàvH#AmK/EZ"ikFea641%7>(' j\v96\ng&5rEiZak`ٚ%C3Gbb="J-RxhlNގFǡe )P5U sf,?`&:E2mDhT!<{)%@r)k62:lO?%Q 8&B`PpifS6l$$]+F 1k"3#28-"5u#FчG,_)lڣr202bnRTM'4<#W_Q* +&=1nBpAAU93 r#~9%r4hD@6F-O@d,Ե6Y6ᩒc JF. ;&/'f26Oz%u6K1dWs;EEjz~)h+5mԓ~0* mqm5EY[r'D02~הsB PfQ][>ރŸ@:Tn}H?5( r_E^tnp7 -sS[#2#N6]{wJ/d7_V48 [B=[ZMaPR6۽=JcNY!hwJ?6f2)=dp2Dqc7g(›?#p,p F^CxRvQdtf_HO+ Lu)Bc1\`+Vݵ'gbk+ tDE/IhExk =EKI:y_%zLpU?HSMpsfK\BM(j4huڟ̙7on֍P7 l 6>uz,HC+=dZ d$[HPv.*-鮺0 -f+'Q#qL^2q"9_ZըVMW3/ImRTkKy pŸ 9NAOƩLnx'R(_u @)43ʗ]HYl9p?C:~ +kfi[4Nkh^G쏟 "js)W;Pg e9'm)fgbfs!*ph5ZV2IE&JfD[Yu\4z(VNSv&gO%//u4Y6xA>^k(`f RIk3Y5܃w.BQ_dzjQP[%q Qwq帐 @lJM|$0߄8G z]3 |~S Ғ|ވKDUHv{w3BW1D2[2Rb,IS:g3EXyF\AsX=Oc'CTN]%\ќݥ9bde粒hgԱՖ0mP%W{}EQ{x8KP# ])ú1}eTc&EF Qpgs&( xRB)(0K{HkSzl& AP0aOV<=ۥbU<"@9,%gw %8&f_3qIIY瀼uڠPBwo b? B K| Rkt4:6}.דgui!w 4)E~1r"pа,v2D\2 ኂH2o,/ Gg:w۱H< n%4<*>, C8iLlu65bz٫CQaܜMu?„C5< SM3o bߍAG'yGM]FZF]{g]/`0eRth%fS[8x.XB;F^wZLl0/N940pu1 ! = Ʈ5B;+U(PPh}{F@ -/31Q=ԛ"<_H56]u/&68ӂ`*~^} 5&uSS&d(g  %PAsQhӭE"PxM9IlHy GkWbn(ANa`,gk1#BBv*, 0[VqCMS&t5p ˋi #B@u\οXsk8h9)E?vݼLd8).T:H)"5qϮ'tkx i&?I9&ٷ#4 yioY=&@g3%*Db5gu-+e-4jf*e<-$ ] `LRifͰ?#!8%EU1"\m{;6lk+!Y-n0*Fdd-#ˏXfzduƦlhe`Y-(c)V]wN0zq:IO%-_% ]OEN#U[v8 -OpkkM^mz.lR-OaZi\`ڴ~#C =4H3;\H-r=x (A߉2L*~":y1o '6oֱk%Ьۻ n8%$J3\yݪ=%/\m,}.:ex3Bs-̎^;x'x.ٿ ;3}?)L2:HvZ8d b7w\ [y:ޞ)mz[gEܲ+S!R3G^͐z=^4yRS Ԫ3Q3ezgx;c%]<7#Ni?Flh|n3az-[|Zwb!o2:_KW{E` ex+dM?. o,.p;s4 u&@x0xV! F)tv|eeăz D!/Cm𥗢 mrȕh2{rUY3jx `4Ɔ*Ya@ ]Ak|s?Hn OЌ) {in _Xlcl&\i V {*wrwSnG)Uw՟5զE^~B]1-f2R|ru`&]$CtrݖZ0{H$= '2'\EL#w ۞ j: CF71,6)Nkߨ1}"Y3ޖ\CӿzDYV#&xP1ƧZ#J8]1 2AZ.,mBT j-?-Y۸(G <\.JP++K )! Lصਞ/looNj:WTD-Վ?Sb'f 鿭K9oSMW?b."AB3e<npk $GRZ 5d6N#p?9"""O (u _d>}{q|O)bKkUw9DM+"gk|oz@ۍj\F>5XY_ O/ dYK*ElypzR/f3M{pCɨ.Đ-Lk)W 3=h߬a~KneJ2v7A0uh\\XT4 \v Jo`ѓA[߃Y4ԟ@QΕ"[>D7$}~zxi8Iٰ}Nf7F;ˎHсm/SS;4T TP)dYmyf0}L[_{ apv+\Qr(|q&(X #ÊY^DӀdTi5]S8yrޤ]5q1=cҮ k>I!//7_49Pb|yʼo'/JV->'tWH0Te ̝|= B#6 Y%P9Q"oC@E-Gj'x9LJU'e=li h$n1pqwmv!b/X۬OŇ;YƇa`U@u:,M7:9+@$tt?nnW}  CGTeЎTP+L7/عٹ4)!Ӧf\%ƙqo :eY ʩ./Ef%.5Զּ=MeY!EKrhDyլOqsEf*@d^(8C`d =, v>h6s ٖZ_nvo!bO5l(dRHsbs(%7qj  ;R͖ p%̇DApD/<;U8WNSaj h6{qtԂ5#20aH@h|dOmS%ʹ2ӽqv@"&&DM p*>J8qENҳIS&ܣzŁKY?A&bsj6f0㌒s4ob̨ &x֒P3B ލa!*j>΁ү.pˆgDx~]7>r׳WiP 4jkK.Sx'7F\q$yq$cn W>|x{=ŕE!6=͘Lf\2 (+*tnUUTJ!cPBwghϾ:j3x|jB8cKQI~Y;V@+&;W.eJxz 4񌋶y2MkbÉL7~pbv"d6K?ٽb._TZݚ47:R4-$-\+D#`&Iug9kiÈ],IE!6]8Zᨹ%lǯ|Tբ'l|(Zf=xʦ]t֬&T'?0:'MzxYHH)Jqx|C"scGv/%OwBt;v6`ݲzd]Ԣj0CU3~N<\W%U{渦i3<0FC NuSue; q2)LPa7 t=8r#cWF:6 dNW뷸7jy4}tPm6@WW7~*@-: xΨ 6בi0Anꫳٍ13 ;"^`- pM'(QKH(2qmw"yb]Ei ɐ]T9ڢʆM[n)_' IsХ}Ju er>7~Iy0mKe\Rb'pnccO>|El+aUG$~*;cR4S~fz LlY%x|z_LwFy4!>gpI O Z2R- Z3:GJ$2D_'Q*dẒ`z ίP~r#{`bq !R]-Mkցw!4m~<5`U1gw%c2w --l,BUi:P h l\f ֐ lH"a2vX <^풙ltvIBR,J6y~U4%J f`;(**ȓUsl$N%MTdU ĊZ{+tU'`a80~Vd$_--rY Bd3'Q]f[hPȥŤ%rE"x4{5vW7SNo0& %84 \DGc+%_ޤwTGxrO&ОF/I](CFU`zWĜŒxEʰClQAP.Izk̓]ݶ~\Б:GqM/vm4_עH9oS(lv>4l2GrӘ36 X`c^t 1]}i!{NQ6 Hi.Ph<;Q8M֝UϪ I0:g6߽KIke/i츯цO `-BGy&Oϋnu{"g*7 O<K8bKL-Lf\W!c|ctBz\̦ eaox3yvwPkiEց8GkzrBF΋EP8#'4od2ZX /W%]_ $`km7 [f8ZABy7ߒMW%YMӝ*Uz_d05H`iz:Rxrjk+& Hmu_s4 UIM^<j[Js<641^qDf0ʑvСm~%,ǀzfƵ)6S)MeIBMZװ3+܇JDdcԖck7~ŊʬFҽ;7b_<|Wx3i6R!*M=g)uenBȿd,`$wJم/mDdo-DUo/[vy>xw㼅84| |TԻ &%N⧻%ِQ3&w1xوz&NZb<"Ց0xa9ڗӻb9y֟G|;NTMiS|@0f5N5JYKENȷbnF~RVjza&:9Spyr4..x#)ETLVTTYtU\an)jXdiTvb/ TX'܃g?A3y FJ$ HtұWFmUA)bt @48FPg|jYMnt#g|j/m]M-<䭿XK(`FUfvlx]Q 1hyR}%%e/&%%Dy)#6K ?VKw\1020@ 8(7~6z3-e9YK3uCq6_MZL)~yU6v^(ҭk5T,>yS%p~Z*TBxHh{ ;|u3gI:@if%,:e%b럟 z"t ,hfSy2ɹ~ᣐ  =9RS:? R!pa0gϘ W-SeiM؜P/ M+pF=vPRE]F}ؒL!c< ȾgϝJ9{٠k_y|i;kV H[ج}Y)ZL'M2DsDYQDǵj؝Y%n8*f@ p]'Aj el ekYve_;X<"2 LXudM-{m\*Wqƶ J:]&22%*`rl"SpBZL}KF2ȕT19*vp+rX dIO'D8BlQ̾'VD_Db9YqkqHo2ǥ)}eeJ8e \Mmw6 EÁٶ 8@V?[NGd,"eT ӋcW/#Ҧ'FU d>pyZkWh~XZ6ȅxq. |x||o2NWm"J mkwm'a-u]j'P;2}Ik`[%d8b"y}>u' S^kІw*Z;G_.// CDIo>SY;* ^Bhy!;gTPڗC\~Ԛ3LNsZMx nsXc ?hy*|TR7;ϥoGxCקK;6tGSg-%lU1ZYOϐA끦1&g*Xnh%G /,$t $bl&|a<c0] S&:%0 _%gμ\ߴfawt>3l B|)r9gěFHA}*g+goX[$ 9"P~(&)=F_#ؒ*.b^Mg`A". dQ|CR.(NN&O0'e4hQyOhO\U1cTY2](qS6k/VtS,M2NlU\ oO|5" ZV~ӂL%\8bB/%ιBE-L.B/o.\S@k0t)mz';]{Ra ~`f?[xU1fRIB-ҫ_QRRV\y diN$y6"dN X X.Ww4pd޴심\26zbc"P;J]rG1kUqQ쭶*W?R0N۵jǠ+u%7]; L$NQCАxYv`?N;͒6gwcpb1U{u=fWjV@aWCЕ v:]9r_OƅEFI2^l=Sf0 QB0̌R,/IFɌ0CbNhR: ^.̎io^HJW7]{kn$4ma.KVƿBd x56 %;K סDpGpd#SAJIz r M;3?_Y_ֺ|K˺9 ,Ǚ7Bf]!q>7xvQ[IjdXܑOȂq׀K7Y^5VYDMyW^9.{7ΕJXcQ-5IJ[fR]@3FSv_(z n(Z~ 7pAURC_s#{#a8QVd_Yi1P bȎ0atռp.*(r3d,Nֆpyҟhgp 0Ud11Z*%rlKODDžT~1*ұ.': ⱷlϽ:!L|W"Е0x[f{ дc\6d%%Ằ]UsVmSσ|?E0>?3OH&ŭ/k͓dHdcb9yㄈ[婢eQ#UJLjbof͜k`aLb;W#s58EX`'uԍ`}Gp$fǮ?!%(/Mҥg0H8 Ք"0NiػU7Maà8yw_vKu@Ye8X DS*~k_y[Q.4⇧b;mmr6Wi]S7M TZ 'du ؕ~vMzeA$^4Y7zܼ"ۤ^YqsrLT& z=PU!1S9*9iJ68CM4>֨8U*5a_ꥰ1c,*w_%HY"C.?83 ꥪ⃜Gd'͈kA{4DhE6LW36Վ Ϻ0:L]a$7*MGGj|%7l;lYkj۳nO5Q,@;{BHCDyvKM`A(_ MFn?|\&2КO`:h6?}=Lmz_$(|YY싉kE%53+Me)Y3V-o8,Fā+ [iɽ癚G~. Y쬚" m+qch2UMM5$dftXe,$KhE4]RTxL4H;臊ԣaG{s h3zsc @<ڳ: g%c ,W]*mDC蠹$'hU~YX.p,˅I@}F3IJ@0oGgʹm sVrfتD8Cg-RmH$=Tɶ܁;~C=: ͿiwXǏfaOϋ'9VR:-e/HWC"qDU qr@ΚOi'Xɢc+-'-;:%[ lwUU022!>h{{Ũ!yK&;^Yѻǐ~V ĠPVX"eJP#lvC[wB3Big)y~g=k.N=׭*j1gFͧȁr3R Ff82g&~|@_nh6EDK58 E\- o9L?fB.ţYȲ| {w<?/)|n)ݧÒhX_;[HnXsxߓZfҢ31]A\?cwq 5&xeyi Gi-K'J|ukW.84uWN0{zK ?+]*EL5l!Ɇ*Ǫc J sb^@Q(̣1_&y7&{jAN83z 57i{#\']Rރ>Sʋwˊ-\2a@ݥ!2ņwVitAK_5grWRc7>1CW KB+ cF暾h>`kɪ:^pg@80TP8,> &ppm\`"صcⅎB}[QoD@L 贖NGW܊'3s- jΞLMWF}IQҲ<vl[⫐h7T"Ir&q+r$r懑7Dc 79LAd8L{]P}EdBc:UnVn;c.T?"e[= En /wqύ) ª8&ϼ)^yo`^:1xcu_xJMKIǩʣݕN?P#*L:VrS.u`.pW=9b[ o͆" XS5j珐1#ݯ(q>V0kӭiY{eM#7 L4kF/1kb.KFZҖem|G۞CD@؟x"?_h.]M]wPN榈|%K/7A鿨t/ ZZSE,=˻ y{%!ƸX!(s &3ָgm1m5և Ve]~3ll|0 #^on<*>IgOڷ)8{ Pɳ,רt \LIvQ)ɃzM9J&ji0O)E%lŒ s7+kX`gVKY]|Jv7i⒋% -<]?M!L䌹Ҍ2IwBaFyD^/a]xH6z'd怺#̱yԁKŔ0-!^#^'$%0"'ՁRR% K5݀?C/YN}eRO[`tc< 26a]/q+C(dsHduܦ"/ H6è_DS_5|t d`ow%"ޙ]7eqHƙY 먥=E T>odʨlռ1@"by7۫C7.FЅ>f,AY O#qQ~%+9`/MқwWUMw= dn8$Rh) ?C7UvI~x%+F+o 3mF~d:b A,;Fq[{ղp]2rbDwӆ~=WTZkZj8?3g1W~z-?~W4.r#)A'l.ţڋVQӳ£k}[m}"ķT*鸭!+ʨhkS[+m:T=⩶5GYz^@ \n*[mCw/USlZǗYb㢏,jf|98~a@VcD7.{۹r L{,\P}z;ʍQ#5],Yŧ|^,/%( Ax+ypAr-QVx Ι# ,%kD%h`5*3P9>\Q R`Nk_4ݵ طܻw)﹊i4hzz+V.ԥ&^"TDQG`[Zz2Q3R%O' @^>Kǩ]p3;__SUi?\zQATs-ǣo WHŴχhâCJYT6eIǂYJ-%:n2h%b'IlP"%o\zfm'^VZJ^qPJY]iFR"8LMG׸gvDqF4Q2)"G]n:\jB?Ws%" Z47*;nٌY-p~4=fMω#9j8K^\f &:yS]0?Zl=G>R( l*Wɣ3~>@lS2TOeҸ8ь<$كӰ^JVx{zI-GN~7}KĔٴyveƶOIkbvPå4%wmE y"B2"W7"4[1A_8M ̾1l>\J 1[T<Ԛg;~iCxuD 5fV08j(3.3@R}积T6>#PGR&+OwUMkqrX}kT͙粮+{_a,Q5o2lBʍ(@)0Y5bN4<%Iq E\L]霤i)ⶠ6uQ-ZW=F*5y[7@ 4SS^¼&<~HA:CS)$4i61ÙQ}nxWбc4kb|'T7(M+kf}/)lٟPuu=$:bLM_{1Na@LaXw >aT* ?;we`~(\5`q-/#!ЍhH7$Uext:O 1W<@*2!a96q߈ 4Q*T!pMT򼧴d}[tb %GFk-OKz5aꦱp"y-Ňyϱz,ՠы @>~V7Z( `r߽Q7 Y(,e#t%T~︶DŅBGb8i?3XDW\yVkeR9'E71ry2u' ɺ @5I/|7bceZʞa9Ia@#V8j'V<8жZ1$@b81* fw [/z-devS;ZG믔G^[tbQ{+È$|Ќj#xfrg%mЁ^gqUv6^Ep]dԧoB?\g[~zM̯g,(7Y̾I>8_]DV_lP\yWP| pZ;^X:uJ'L~:,$HvUk;fb.u {z k(wƸ0iF6/e}<?e;IRfCn!*6{KM򒊻b%v+niN{\]inBWaKСC(h/>[?94: >gaz%{O̤{6O;G BΨC8:h/G?૱JɝeL=7kZ\NީXpNd~hQ*.vsx"SIJ1{t* !iZ>]ktH"w͘U_vJ#B;g{qJg)k KdrΐM,*ip`5ұ>cR唏]v} jt|.Qն#sKOYfJ0؃AiedV#/B0%g œ'f,Sꁉrru.7ESe/ME8Z*Xʬ1 E ؕYFH`mP.*[""E~7 Gָ"ק ?9~>EAf?&tVUu"K誸'BWxRgG+k(BgfD9pIٖѲa6S@V/nn8ٓ `* iܹ%w% YBk{mV4o7c߉RB>=~Pa|O?IW.42R~ ־_|plV =P|VW?ڑ]$Nb8Lp&:'&{@+xVυʷ?+Q"N[zH_lIp⑇(qsc~HuӁo&H $C{:ρ\Lנũ;~3gAyW LnjMBQU虍 .`U9/جazER{ #;>I?yg9ƭطb/%Qh>Ep=މHAޣ;`Ig,tc6o$秠c;tC8 ;4 m8NϏ-*Z0pfvQιFPNj{axd+_0I,qr U )@JǛ.\Ce&0 ߡ =:U8OMq-d f f [27 HS-~Zz>ءCHzJ9Bͥ*v߉P< ܲ8bRAy3J fG+4Y`'uZ26$<~zAfF ~TH2F䖓/ lDڀtEW /saG>LsB|LUk:.sjk Y8F6Of,.9i 2CŪDm-ϯ8]ĵXRħL#JC9{gPA#1* I $A?jQ v5Ƌ3ݹ^OXgĚCwUli Z:Jm4wZμWBZY]i,\5@f'7xV`MptYUsV9T|BXRR Rqb_%aq~h̭ % "V_Y$EQ76>Xj-{¡@}Q.(`Rw?nծdz6^=sxE9/, aBEFS|ӱ4?17 3R^ƱEl ɧ-l{bSu|o pEnU-,q0oIļ?fafg,GG! x4eJ[7:g:V?^<fjhW67*`!MAaft#㿔[Bjc5c.8TRۓۉԸ2WfeјNsMkԏ{:.>>l[z7IhGY%~). GB_YSoQ\K*uLm<\:^T0p/hXc 0AAN¥ڬ-;xBdXUhG/zkDB ,S2e?ƣ .x6dœ^׍Н: /*"O0;K\tT$&dzV7ߕDz &bX@媅gY VeI4ko**ޘ$Y\m#0CHŽURU0XۅMQN<;3z U_[IrLy0F|ӟ~GlHȣ ɓXG|ᔏ.AjlMJѣN!:ʷJxĂ$ h4*ߚrs Ÿ.W2"^7uŒ.0rWmAL"RANWY S24 {pG$o#/mpHs`, D ; IUes{Ύ'ܓ jLN/!U񍫡02EtV)}fkڅXB=h(i89կ‰i;KILJ ;6aYNͧDV+''EPXz5fmش~NDy%Sܤ']aLpɼzd*Ubse!/V*)JDdZ`[cϒ._xwE <ݛwUٸj}/lډ (Q\+}5 H\(4qC)fw _ _!йs`C-0>4=JCoFJǴGiEQrD+)hFVa?θF䣔xaۆd적 YFTS*:wZ ;8{ʻ)ƊtoA1 sd*"`K3)>s7 AiT2͘)Q1 Dn6qeW?s5[SVӋD Lc(n!.N!3.^:;Ν x~{ߗ,הJ[,_nN 'q :1q@XèNM%eʡU;=#Ӄ`uy,H%3b8Oy 9oel@j!3H|ЊпKR.ΪߠX^(;{SDϓ7ضM^ Ej֍ڕrSO6VTj-p{-B' ꎵ/'MMF1'S_~ 5W T3B}ڟx_ p@%pĊr˗9Ř#/?6 W7(1aAIIp5]!ӮFdxF 1ZD.z*mz20ΰ=&3عT2qNkρ 1l,Ģ .|siy QVeKe*ߕyG0 ~)dp^sKU;ˇ.",TnL(F=CH Zؖ-4SJm'Ȗb69hil1bF ŏݧ(v]\n#ISW0=3`@x'x;ggޡ'HB8@ɣx"09 P19_G*=o`DUZCYR SJ9]BDC I`Cv孫ehS^iS%HZ҈=4+58~ m޿ z!E*qECPMNDS\-t?x|=fCIr&B{Y×ӧOvHby5hVg!)=p3JJrWU%!{J1]FH|K2- U:!ښet[I su6L_-bZ.eQ+.>90oubCc"ou 6~zr8;橳0ʼnOp#!p{T/a'v19T\_J2D#$bTzUFf|ePyXt [vECD{)iBoTwq P~w鐘|Rv&Z5{ua)!J|-%|5d_U6*\-밬[t~te|d edH+zC]EiNeYwtIԋ*2LX}|,(J^HNO!f-mHgΜ"=l•Ҳމ[av%"Φo6 e𠁆{LW8k~[w+ Z݅CtTf H[6'3Qt& %m||ڣMKSj@XW+E$RgOA/7ٷ30sTS*pEM&qp,wu?`]6P)yP$F=P;Y FW4 fے+Q"p# `^owln EN HeӂdmYQ Gն6o/ŝSc#of5 _'NEL9HF Zd( Ԝz :>ʻ AP1]l@&yDT9K5O}#TеVzyEYv6|$dWTě gjBT4Ui c^œuEvif{6t$>*q$-NAXO;vxG(+78u(3MNUKe4n+B6_;ŴȚU"g.6\n? OoeФɦJ)u8ցR/vc*kjcV~$ Ia5d[sx0hTl?,NI%|}6/7Ǥg9NE8tDW7Vo5=l,:cJ76wۛQs:4LGMG(Z~Iy9E:hE'+N i胝">Ƞl!?))j?*p_&9R]yqN[^%+m4[7,MT; ҍ$]ƃ 'aCn~h@d߾}qmB&H1m(ߥ߀$H6Hڂ*<[Q0v+[`K4CaV-ud--O֯':Q5"IJ1X#H@{4IqUgfh#w| a;lMKtmg=P :nG,qoO,i'Oԅ!7L(!~ Qe+= Ku Oqʒ,8ի7苕.K$%L 3VΚ\&ӎ<; w2tU/uP`Y*-A~%M Ku?c 9C$ 6UBqUFKnZumniZaSYw(&4CJP_/v'Ʋ-z~z0}EQr,T;,lO+:g^㔎(~DٍN8n)$͸Ins.\T{QS-K Dc OOyyq kdG]@7(Zʣz=J`,N$a ( ='gTia^܄# ;ni["`F\Zz]2;D42F!gLTWq{ /J/7 b_HeomE{?מ-B k%mEM T&#z{bdJEwTGQ.a +߶/woM sFA&X"܏.WrEk'#0ki0P!D1KG6?yc"6dop6RYZܟN;d像~o&ü23DDz7Q؟\aM'(H^t3P^.~Q {._x4M˥o=y^t@o:tS)(:`c|^Traj[Աm&:#$ MAv/qK u}[d:"rAU?ۏl(ne9K7v!b| k%77Ko (%d r{U*[r*<FYaH>ڸ/斪"5ؠxzH0<|gZ1fѿT4h2uN($iGBCW'R~BGD;?xx4' `8֛#[۹ (:7řîX*4)(uUss V],EtpB_wL?r_eQ!49|?Im]B\8nVG}arG`KNTZz T ރ8Ek%1?/XMΑ,;ky`9BpknBL:=*K A^KYi-Gnr%iЅk]PcڔI58,Et$ oO}ٖdtmL[4żEZ;9bY!%QB%%s{ T n|\OL"IG bf?;byoՈ: 2t׫/vxEo3^?gkn2I~hJa9,X5"O5""\/.cuQ5Ъܼ 1[ Ґ{ 9sgp @>uM)xa4e`t{5*C[`$$2s dV='e)%v8y܂͊]OC{!Ke rfƗ0&);۰ :J!FF]3*oD6O _K/x<9O|a|,uTnJ9h@=pO: t >ʿ'8 cJ33)X~_-6w-$) <@m\.TM:345WM(* R_^ZD8 ңmrbfAu =׼p|mӉ 'q:r[ Z<4 ƺ{zOyQ^Ǿ!H.hm`Dc ol>GYe)T AƊY#L¾q[1`9 *x?W*6( ܏NonZ/F9yĘ-F^0:6'EZ0Ό"LM:_Y=k)22H鎼H0[ 9*a8ݔc>0_ۋI(L Mkdc,1Ȼm>f-a~ޗQ32Qj'N7AؕEPsB nG!g0Lv? [nilRA+}YL;aqF]xX0Q ?Tl.?vI:)|>Wh䫙K\ oO#Iw,K.l >Lc7zi^ePldU !φJgsȥXP_T 4Oe*^žlaSc_8+C<?^%4ă![)gH>h8pĎgf[+Qi[N8 b1_0v|Xf G\z ]?]PCcCJxf#*{ aLh5IFC ;?olғlc]G E.3PTg6S46+i :P N0:lxL]چ󜛉~ql56ꭍYx0GIr򾾣7S0 fxз&2底_J~_B@˲U[I0iÅrEH?0s?C0pN:5[AL&)jw18WaYʫ~iwZq)J. cS8g.%c{m!PfyDI1堒 n"Cj>Y_:Qr`>4Qk9eYZv*7MNu|H9"jsDɄ` <2{2h@B)ٲUx6J2wubg$f)Zj^ԛWkIf8`^85,vxdy7z1B.ƶ@n2P֥OWWԊMc, *ݭG )DkccR<}< ,$tn"[X@p^@Q GT, ٩t Խ 2yW'565sA A# =+FgSɷxn N*Ul_~2]p}i); #m,Za=!dFWgF E)5iŶq8̄+<-LOCҰLs*϶Y<8W0 Iנ7w">+FԊ4h( 70S$+W^r6dZ}_zzQŜ]&"XK,NWh$HYvb ilt`3ע&Bے0kRR0x^AfS-n ='>fCl܆D;LFwaZImf '"ɑ7 mc(Ǽw 7W< 6S ߦTAN~p_BQf/}*t6sȦkHcxKڿX,|K2\hfXЕ%!>'Pi1xX\d1&#۵Q%?c:]FJ,O)NQ<mN+C?2-om?i"Qaq0RMgͻ2hʑG6 ԤK&([gF$ C4TVCmP, @$|z״r.yKu^r /{n∄=zϼ2[ oYْPoS=;*u @ K2.mzeM>UT%x9w kLpvP1'uļ|Ik|Fu6z'83oi"8c0Bփ.#Z6{bW0&anj$bQ `VVj&G$90":vT Olmj.X (I$W |-̓b}1Vanғ>Kh}4͵l.Ӷ*3XLbʠk?^&Q$6yRG70 sP\岂zY@"hpADc"am[VAz"kz N\MVuL>{WPqΌ;?Ife_~vqB >3 YHj+pG,O|`x3ǻiԐK*4LQ5fz`RyvR;{Xbd2I %ƃ>".Um ZqfaPzDќ9`1(TR2Qct խωk}mڵ xZRZXK)#m6ɗ}O'/% K+ {xG媜 /.5}3Rl响fC `䌮BOKtq$uDB0Mz7/!SOs8o2Ug܃|T~"= [z畑 姒zXDp}NOzW NX1̪Mu8F7{#c*YuzҀ9"v2@ ,9AOoa |~8Ot1Jņȶr?3͘(fǰ 'G/!󵠀[׏,VOa_$ϸ'\beľ)Bw0Z罎Q'9HKX'#"2/ErZa"@$G&~LACv͢,pA:UISM~Į4Mq.0XB>'9?a(@MKy|* )YEsݾp }Jg ܏թqC5KG.v;EIoj-)Xef^l!EtL.4o Ni 7$:N$a2T)^hԸp d=5YzDi%Z\$^\UpgJ *0 dMǀxXwtE<آWbDE?r!WϑjfQ.`}H0XᵏXՌV7:P›n n}8Q_5<66i]{Sl;a$8(Yܺi{զfv!je9I^u3;Dt# Qh@&jddB "pK m͎pOS_g2bYv_dLzKmDr5kqZ>h'Oi]Zӎ# !l6փO.w [ PbP"2nήּ<7![! 6|U{NjN}5N3T` so͍J;ˇ ?qv0z lX|TZvr7_mX2~A~a[Rr̤ 杦ݱ(M03d -"ܱg*%[bz` X&g%-pbit & >C8cbGZT~9"I I4JY;ZANnF>*A;@~.an]2ثUNI~}JEibǮB_<2[4̬/*Jxy7[4tKDd8eikÑm k%<-sD ͡|1 &4+YBj$> :'$rB&Hqvoan$;cb5+275}~AۈżC#";''J fX94`hvgj"Z7Jp,%2vzF`"kԯ%?}+˨kc="RAJ'ĥdKU leŒ3nXƨknC`F鐺]߻aX;eғ,ܴ c:\IOmI2Η=^u|ܛ??Ngg^8T,G] yS3:.#5=g6z%(VIsYRSn?pW%?31!(͏AlgJ] UVՐZ,=!4Lݏt-v$ic˺݈$N~y{T<2}yC.o7|7^hSRPCE-m>)`1eCuFOCr0F ee>\m,tCmF`OKnCڭ㢽rϼE!{T(THEݧ a΋JV?8 >RыVxJDtm ˞fDO4z>@x+GDoת[ƺ>HB}~x!z[o5`0RjM+$bQҌMp R' a sIbnzEBy~; T;jG'iēW-;ޑbTuOT^)htf5cX6m\n{y02QAn'j̡dayt.rx??ŠܼLj;!_Ga!}QNPŠ1d|/YR NDa"yMu7 'йD檑}T}.vGv4371NBdh{I֜~8X^ό/haU,sOZ .a l-co]J=dA>8W(;:V&GV(B>VnFl@taLSQR~|HR^ܛٺ6hf3Uq5}ɏ5w" ӻMQ%D׏M'|+-%6+&Hw:-#c7Q2ѤU ҟیhue_N>?|jZfU@էRP  +T.hQM#+m8~( %T.!5x΂Yt|0*eFz|Su0^$63/%tou]G'3W&c̝xbBv!,gi- b> M9'd~{M Me7.vI 5fy/d}AmزB +$*QW'C̚͏ٲZRO2 uK%5 BAln9wk`jV'Dںe[bcVrgs4#BQ@!Km-MpKK@ԑ+Vff^+[KM~B/ [Ԉ=U[k/n Ss;>!Qw*k"\ o{CҢ[˶fxp )_h@*}! 73btY3i[JGAwG!f' }ۖЩ4p,lBX_^3uQϺ7$8B#T*Ν\4XbzaՕ{%s'[7$+7CBW淽cj5a/-)lUxO6[w>EJiE*NiN<4KD:T3S&~!앿%_PnCd%7`t7$(zUKߪfNKb"zt'p)Jj%̖)s!MifS@?0ɒH}fAvf\%|'(;VlgKԼ+R?*WnʱN*J<ɠ!K))wcHj!Yw4ЏaR0.'l͉0酓(i0݂a(׮b#i0fkZPMhEN)5 ^7a҇’{"T%Q!Q+.Q $ϻ1덝4(ktKFx$ϳN DAg,&Z)j&XwyqX= e1~BnQe8,l KmiM*׎ ̫rB42 XU'u$`D^:kǔ v9&iC:뜆BU*T݇2$E-O΀uŋw_x7rA5 r{^}<= x7x@i\Zā@:h"QҵMkSsV(v̏d Y؇z(4C}p{G3zƹp,u`<`%Zݧا+#]{)eI{FeKvXfⵍ.#"W!fA2M%Rz58 צj,+zҬV?w uT[bifx!ǖXЕ1Y ZsƁ0C=q2Ba#TvTǣHE(%[ʁÿc$h+}RnjPLʮS^ 1d6i0s4IlxJ\ƚ9)w`, 4"`I=%~<1ь 軴^W>.dӁF0H+fu+;YB7jpAB>Lj&;A GǟOvsڛ2e5siv$-Ny^SR_{| îiaV̙ Е1ZK5_ÍU|R2A>lZ\CPLp{2 8űЪ[4RU9 )noY&cI[ZnKmRN8A s!wP|׆ÜTv(: E؎ǐ)J[?l̊!0\gӡգi-E(y:% N' cft/c4`hv,ԎxԡAO`_0`*kg]Cy$>2f9+@%-1"c3K՚l)l]kh-CHrZ 1.ohR$׿:_ZS$K1;k܆ch^{xSLu quC=s^GuL۳h< $+="ynA{T&2dB13^dq~n\"dnuߑJT&* fcasS0D.\DkN heϑś T> UC fj=anK)!ߝPb|#0:Br05~u"}UT*v ؓ|U"`^tūOb>9l*}.?iY^t灂.Jw.p7/⩾qG2xr{9$<Ѕh1:4CoRL?ީC*E{'eV>!}8k9P Ș8G_G޺O<|tOOnJ~.[TjD)ڠ8tEsO|m,?juAR"ũd^PSZ|6ӎt7K_^ u{wt|r={_F\ݾi6.\{^֌gikl^,Vt%91IդPZ<^'}eC<.P,M#&&w5f0s eLt$fbhCZݹA{a֓LJ%{ +s݉,mQWPTH[q^N<T4^XY+^sM/4{I N0pb/-&OTߡ`dr25ѦmVZV8ϐ~yzo=&u&Jx-HS68 8Ô -\:qyN>57K>[K۩}J93x+9& cͻg.ߍ~sWSd: /5#H\Sc.{mk5>'ځnuO mõ#f~ mZd@jC]F_GDT";6SjZ݆S D{Өl9aGۙ5G8ã#sKew^X+sDŽ ?T75@}W0LnSvQ}-8*hsE,@s 8R p\ӾZs-Εm:[@Nk܍nz +Г{^[\ZU ?2ޝ -굾,p?:7Ε׷h%tviφ x x#ǔa["c5 pFK:o!-vULSyzwYñ_"~9S%Xz^gş/\kwK 6oɺiqqcW n(6B \A.h߽9E ٟropwQ8}Zu80 tཱྀv= M6BR-TQO`+  +ry~sAIIVKC:eZ*uKvg=gX/J.ȉ0~,~dcZU49MALⷲJ(Lٽ6d)W $hCt'/&\J8.m IVi1SowV7h O0Gym̔31e ʢ?֎ -E "b-o`H@ˌ u m;:+YϭZ~`(]mШM0T]7o05yҊv*HDكDO'cpS]BAW ˛dmq Xk q1fQeʠ@"% (<\KH\:<ʄ+u;]Evbf q^$YƯiC4a5<|9R)}|q}z=ڿ(6uwrg>8ja ͕Z I0>Z&Yk>v^d'7+]-ƟNd_ԜZ`z hr|= x2Yz:nOb_ze ]O5ܐ`uR5ظ*=媺*a8:7:ވWWzy !wqWH:އ6+-lL>"w=_QȠ·14Vuulk-{ PY'Mɂ>I _v`42 dsׇ6/o<5Ma5 Ohexѐi.܄'U o@stͷ8\5-. h<6+zE ۺAf>>>ՌHӜq-g H,S=G~6H^*- g_ꖦA޹BWep,e^Q̈́\[ѫׂ1Yd318%IP\+-NƔSE&6J8j.Lu+RuP.:򙝺QA 4,1YZ}Dfb+3_li6K XbL͉dQ V}e?¨xDc11ړdQ]v9T5R9&Uq|d] !wZ`Ag EyCey,AN$0[ 3@kw󪒨@/OGf,ibOd)Ptk0\WfDn}N66ѷ/+S ra+GN`L ]s\pltGe)^a#L"4C9t#hbyӕtOyBLuR쪌֫,-\i1sIeBD%"dji6Vەeiv8Wb3w_β/ 8Ere T[#WgRG&7+yB0ci i?ŃьkB:ZeH0b?pQrToܚ &HܐR1۵ /E,pIB%X f !qFx(wN5no{yǁ? -ܧ׹Dk5CMToe374@6&d8,߹hw(61eU9E[|`c p{*Ư0˚xaN:)*"h+u5ܡx])sFۢj.T1B(Jw5JRT*9 JÎM rq&"޻’g/?DE4S0ٙʴ`/*57}$:z3 NxӳWИfı:`>rS3OF{ 9p1%2xtӍsWSα:pwjQ2vAzJFkB:thh%"y5m!ʹ#Y7G):FgB_v;Dۯo24Ʋ1CL_50Oөnɉ &ZKR)}.mp̿4W6p!oϊ@ ]7DȑO&E6`ŒadqX2;Q47fPjww4X9tpR֘Pdiԓ>ԒNF0fߺcr^A" W/)KItlPji<ƫ{Oeg82q\)~BMuPv&{d8i[3G88ˊT/]Orƨh'L'MW!ЀO|*S&>l{!/f&j+ hFY9k/f+T*AKқM.rZf(9g?2tPэ^ɡ"3 ecG=i lۗSFEosTk|yκDI kg# 3j]\~Uq)nD^df] &F%:B!Uœ5~bp{g4fߴ0U:Qrk߯1BeJF) l$s'@JN4@$>Cl1*檙69^__Йm;ލVH†6 RD I: e>@])C|M/9,n2_va{;N1tXd/&qLijR'p D;Q!7p BdMu ~-eLdn˓'CcȖ,!.aNЛXK' eN%LR&ɊN5jZ9H7[)|jv( M<$rDY2[{ݐ`(SW#( TYPW|.p۱ȿ,R,7M֊*A],\-g^&0%ޭyм!r~gl~뺞AxMsa0Ec]%9(!a ar\7*Ҳj :\Byu3&d :*-Bp듽ͫ0 bqvD O>(vl2(_=vKL; Xg("j뀕!J_vԁ)"݄&=\yե`ʰ?GqRt=xY:?$ ى\&tr*I0=T&1u\g|,^P?N'} tBāY؊IoOȮ-w" 3Wdp{yN=G,RfMAKnXmWNշG?w˿]M*Yf>+ P!0lq R$KiY8jJQJ05@tZX*$ql]/l!>"3;p Vp ++D޲w+7Ŵ73ݒd7w|:ˁƉ̟}=t\٘FYz-wA?bDAf?wuy7F/LSIYTLiU~D$R8`D3t8!(Xl)Nn Jʷ, W?vee&]9z 0 7/!VBO uv]TU"*,U;1:?%GHԁ6gcIXf#: VwG;TFteѸ':jpU2ECKq\˓f(jr$nOx0Sဓ"wZ|j~RA*`ģS!_{<7 x^@a濎a0xd*NQ.gT{oy274Q=/@-ՏJURU` dI ՈE&֏0jlgu<q12)7dktDBv귙i4 jܩ:#`t\?m*mFmjMi?GGk΁1Tn$o6p!O ix\(nO-ⷙq|:q+iU` EqR%'4m4{z:TV nJ>9s-c\0o6[dR+g7m3X.z60_yGy5GǤ ;ʃBKn[f1=>3Мѡ j3g`""Y|żYYAp?L*U^J( MnOJΘل)Gmi*xa xP:DuEw]sVt{\JSgT.QG`EPW{Sn dl Į9.ꋂ=g:sXd8SC] Whn+^ʓ W6LTct ,<-Њ_L\v=2/n~NQꁸ:3_|@fj,\]eÂٖW/5xE-* C$ & ΊR8PL%4tybdpQp?ߒM4¾Єk͘;J(a}'$^x&$6VdPoa!/H$*N;:sRL6Z {G7^ϱ;;prwREU]f6 hsGj{w]4{L2y!4夃|J)pjЄѭ㹙;(t?8T3\ JENoqK&-$vT3K6_GТ{* ^3;Ҵey)2]Zidӈ;4ߡU2̸X0k$ӊ057=G[M^kURw 뇚Qh4ƾgV#[WQQQ~=8ŷ*y j"V$;?<][prNdo*FVK8(?⥹%''qJ?Aa(3S ˻XX9) (Lv=$F;)qQ@ǫ=1`|f1x]5cK2hXIRcH5(e|INHڪ0U kH` t >[Q$7ZrWDLHj~&_,FG~ޣ M 1sU2Y6Mߋ2('^YBpљH`4BLΞ)ղ+=flyꎷ<Ƙcb #1?NVi3[oz#\4Rre|t*>Nx.ρzRnd d2:]&4o)#z˵ (7∋єuqf-=vpKA)tpH~HKv)<`Q03"xP'pijϲQ pϾs5G$zP+ 47qW8 aK>w`'fη|Rٳz=eaGZxoG×e$Bto0衒)q'{1ϝ=@?ps9Ilۆ$~ pZ$>_X.]h`,a3)h;{[]Ta} BgM"'^M֙NKSg5?g2<=Ǡ=%f(QB;ZF`.ߗak"p] 17K<=yw}DdD<ϐ~. 34eOaSEᩬuQk9ipJak8֚B~T,6PV-coN=./ɽ %u޷mS${#Uj en3>"dž!h=UFŹR8EY:#gmly&0my9Պ*EydH)lӈZ, w8T2.{B.ϬH9먏>I2Yᐖr~9r,sBZD=kve Heq%|X *y%t,%'c@!dCq1vh$c3>~p%TrH ";c %2P>H`ppsb5טë?<>p:#l^#z^M :ܯZW㖪]OzrӞ D !ļJOo9/8D?5'a˸0VPDSy0A׉[:\p_uTK4#jv'O(TbHliO_8Qu{@Cn1G>WC~Bw!:x)xnS:ܗ k_%j6ъ %R@\Ntfb ^#AteX|(TV}[wpT +GRŵS#l{hBG9C7[""GZ")aW c?32+z,X Ou|:֦mUwis^'+ࡤ~tgܜxHx1hAr.LOQiLJ=ڻ2Tۯ2vABx(d)b݌>Ъ(C!=2-u]F_>nKAo;P y[Ovm}C*e+Y/GG gڙa=DqUK&Ճ5p 0>.TDƠp`ɒop#ٌ_ŶPh0ڞ-#j-iYn S*X2^ Fdu/e'6&e]"6FH6뗧+,C.4D1j<IbWFD\Pʨ[}v:P&.ܐ E6a:ڵWֆ5+KpD')Zѻ~uZ2&/ ~)ĉJ ^}Qi=ΦhA~d7% lX"I 0zNo㱷x`Iy8fK=AzAF Q/;(3/]r[?`ɕfVftC~nбS珍#UVK=BKuДS۾H(/УC'}m޻~20G"л_!IWLl=Wj+)r$q輥ZQv{BzQp$dKAJvaTB]Y4!zX΃Pm42q"!e54b reGS_u DrHs SoGϨ?m{: 9ʣ%?&~GƏL8&fu{j7L7]C`(=d<,| Ŭ K晔֮F-.-;@|0J7A@']0Rs6ӹ+j+^Քռj}?x^0_`*3j̵KSDcHICD}kFSwO9Я+myC)M]+F6BI[\;[IP5F9m:9\XɫN7s^X 0\ANЯwn9<@1K8K}p妚o|#m_[ӹ͊*DzQ!%Cp4%82@ NG2HeD=ӛzG>|A(m_3d܃AN#{  8_G~Z&fץx+,B[/@CF)+H rBmBY1ʳXWs)k@"MϠS-="_5L0{sg2N t]x+D ~PRҀ𔨇u1i@as|Ey\qbc&ª&D5Bu'0m -l9m .kaꫥ€wV'#vύp.4m?}wiѿ5ϊd `bx`b3=km ABQN)&ɝKur3{MT^qGE"Vy,^3~phm"\Kw=M6mg(:f[X=cm4 B=7Qй!ґ9trTиT:d--՚:ǘ6wڀF:<^$a-/_lƢj!eN^6q{)v.q![ p7듎p0< ѺNjVƵP'1{KHTtېS5)dWM$޵X⊚v6O2ݮ|\>:'&𫆃aXQG5Ծ)}!#VV*{J̅ZKaNjT/f(yMr;^3\u_A%+ILm?5KO T0e~t,G/A m9sKU[iْN\t3d/l>/K͙0DQ&ۄS~0LSxr`ZFA)Qf,2=bs%;Hߡ Fdk#vAk N˙6_W⮓[!N AaXHJ\1N Y>;V"%0Xqq.>FBlsǓSۃbwG-PM-H,yj~/tz\`/-B2/Wlȇ+9eBOS5,[w+'ؖJe!cfhDmq)7Ǎ<ŕR| n}9oDU0h[C;2G+tPӈ.7c)ˏIJf ?/Xh(  #cw<-]CLNK5#C9nïf p WX{a}L[&T)e@ [{Hf4$A-h'ZG4ī^iaVw5(>K3[?&5([ڎIB:aN? h,UX&Kf1nf_-&br1g~!# !)u`*He)۩_ӑX} .7zu u0!KMY.ڣMWC:jHW*I*!cV#`Ȼ&k~B+n0dm˷4u]]>~v?:wG!ǥБ&,?3᥹/|_ʫEؒo,T ^Da%&%ă*\_`Xaa/nPyVͽqzZ@Ig+I4;=\cZR6T`=}]E(A:cL-Q\Ml = ~ٸ@m. Yk9 JJ%vuyz2uxMy?qrte耕{" zf-%Pg].oԍ['(Bvur7eQآO8ٞHb`0$Cf/6?Za=k+bN G7f%Lb?Ԣ/ QHj=*Q9lbq|Xn $*֑@vt5Z,0\"_zS5"F18=@h Dm] @^oXM | 74ŶIfTwC؉/lj!2=@Az` *sP|FIJOYh.Í%gG;W9+F,5d\Me*(%!c,"^4yH鉄8_-<%`)^-6VIp)9,h/sW#t%(F>rVILYevUO(c vUfptDO,{YSF[5~w-(}eY8VF:t!=!kNl(f?iHm_VN,TO`BEf>P$➴,euH[gJ{mK<"DžD~}{%2"Ԃ߻Nji8^%o̡DͲ U"ի'&y+o,=(|=$pCHy2d9+=`.Xn5H~Ġ'eu&uJv{m#a}d+>1@ˁӨn1]7"-lH#$rPwqFM]``?9dZ"a/KNKn@ ?,pu3ܘ cS p-?7dXKݎ?yjV`i!"a0}I!ZAӹYx=WKO+{zgrGsǕe`iR@[JL(jP<]>c|ʱd> lą mW1+fKuglӰ<<=&:SީF"a [!voH+'[O"h4M/֓BC1N1VG@[>rO+2+ =*ӀO$‹ae,&<%XYWptv>0M'(p04r{ Ÿۛ඲bqP"#i#HUH )Xo="@ DEiPkTufyE,0䅈+GE V-nAs_?&"L nK7G^ܺ,lB浚f/y$<=dCzm3p  2@D'&N.n\i)4iݔaWbg| -41ϞzۍDOXYm%6 Ph̨ N~ kG*д!$naƒʪH/-Kf5£b -.>6[``l,['$è@Z!$z7ix!S?A˅FW)>cȆ[*K%l28Jn\Eq'Oo 3)|UjF,@Uz x}bG^vs-`A{+jo}o)][|bD[tsUVw;{X%qyݫXw\ݧEiKneɩ8DYܓ7HtHX9Zߍ rĚ흠ą6FBǎK5Q?BLX`!/nQ/M3g`z ] ZN4;vD+e̗%)}DU5" d+mM[J}\$ӣV.treg*5O h23]˺`Ԩ?SZ2KWz[g8ƀb.qzL_TW|oDױvME^u,XS!dV-EԜIhDR"ll#.ӬMB(QD"z^ѦϹ{gNmDN w=qIB#- ', $NHԭS|PӚPbel~E1A8Bh'"^-RGð`?33Gblm[}%˝!. "ሱ U "3(id4|SJÕN{vv{~+lUïw>z)(ALdۚFLAe߯N_01y}o 3ndFa ]]⼓NNjt+5JC-GmL8QJ` H3¨]I?Bw!T[%.x 04}GNc@Mٸ*.uuv%'gہ̰jU!3;v`uQfpB`J<V.7`2Nltv>Ptwg&^:F*FZ}^F*}};5k& g.ם<_pf E^}Tc,OA|gVzREo [\{w=+aDL w`d5g628œ-E5cq|H55xb-0K.1fLJ*B\>@GH 2FU %~r*DG^q;W U .lbZ7~T^/G NͼgwXVg3$8ZZPϠ[%mJe$}gu8YݯHЅ"2c<,.(Rt¹Kxd,0V ן֓iK8}bȵ1.[cCd׏x4дv$_}_BO`ž;(*b桵N=mݘ~l05e7AM6Hmy|o^c~r?P)O۳,z\.9 醅l5 8א2jt~1s5Uy 0j٬z.BMƇݵc~kʮDB ֹ8A%Wʨelb,|𧯖@,^Ŭ*d[q OTLP7!YEP(u(pq@}bO. GnH6ȅ.H*hgK* +Us+fj/7@]hsԈ7|@ŦWÏŸ"JMk*,iwya (FH\xVْo H&\2sߍDh "~#LxSRx]>LJe)$)9]Mpn,lY1Ev#:Ve1p|u<-ٴH5Ckxr׿ft6Bwԧ^ϳˆUg2: KB=bna^#uMШr I9Ma0pzc;/ iڒzxrDGWd~QMX>aYnjNw5S lW?u+w*+-)rFQX ~`:FPDGQ@\ WPrDc R7h"IpZc4D{+u⻕{hK\hQe 8kbGyGj"D"j JuE+@Fߑ׫vT&(&,dя3eޭ>Ȉ2EG0z8,q[dN07n#"IM}Mބ-!oBOv1uioGh*ߕ>ڃ|ʎACH';qK(/,J #49 zjя؂L_䱖9y8}hQ]bߚ|^R7"*ŷ i}hy,ޙް9 [w+%(A xpT1{Z΋[=JM ܙf +`]껷X0:[[#rZ %.o'Dtts,Z913x羯:] [*A'v44b7kgi@EZ'~|hUsmDhl~i9#Ȉ?UZL*nGސr#$k%-9OQ1,ርB=%Mf;8®Qj#qޚrΏ xU:ij&eESl8" /ָ+m~p*@B (OMuvd,Z XlLuXTÂ(xg{[HJLy+\+_nfC$j3RSJ0|XF2meMCԉ#&iɨL z Fו&=ۡӼ: tH |KʩڐqHN 97H>*&%'( .l# B Irnbcocӗ@PKnPy\T])i,7 2-دؗV$R 7 ;6/|VBh2s>> {`9&ѡT똮LMIOC1P窣JL;JGmK;3B wqgOI;=*kr}lxH4n̕QzObΛ,gf 'eWzO*=rͺ2~:J~OkD9|;@ McicRˠHFpIBIE<|T 0 Y..:J-Wz -ɓs[q H}[+^ۧ )iwo.?7\X >8%9r^J}uTE5l{"i897=($$[&N7 ˭}4'ճ, (G N4V? n) ds<ףPPc$S'뼭O69r1+'o،aJu<+!1 euiL;Ψl_@x:9-ֶ;3&u\h_ F/SɎ\rc\F4ÂxKkQ$oxx"\u[x\@k^v o,`xVzkzdlЦ. O$5],*Dccp]chJ\ w!mp$6iXMg+g##-aE|~J+e f)nj{^":j/B؆Pb }'dj :2D+c{;mUUj@dͯ %"gΖ0cUHXJ]O TZid)B6[ 0+GH.꽤Җ7.D. u4XGQbg)Iޚ[hEް-q*AWBY' 0pkWZ `v.2 *AUqD#{ԷJ1%/V('ˬm>yoމt3 1] yN^v@mJƮa,j4JN]^}/U%edԞV g9L>Z@k)r`Mp,>ga0OVv5_^uui;JWJ>D\Pn/E`$.3ĠGWf+5 "![O$r\-MM۵WW@|ױzVʔrԀdʴc]7a`G=يXasY7MQ PPbM *-z,1YPkB׏;mӳ+f"btq3n:8C6s|ЧN7|. 8W?+OTJ 3ZL?1lT#rj-i%0MJjKE;$|*,>nmh&:f"É#ר&X*Ж tBCxg.H_\3ɀ<D̺çf^iZ?2?LנJnF7#jî.3Y'[;9{P}M'p} "D2ւH3$^⸗>puveǼ >heTJí+5!]{ԦOj?mOJ}aT× #aw;uzM  Wbp~,ӧfPUf%3gY:QfTM+{c5L%3Eǰ}o͵$֝ό?d˨D"MsҸR91V\Nm.E0)k_ԨntsbX'?2LȭQ|∛ڇBW|&kƂ:UHgnDQjXv"{22:̫SKg "}{^s&̪;7>SMG&²7~Q۩?ȸnuB2 tCq6 JمlS‘PE^{y2 Oo^xsJaz|F #=! oL%7Yؽړ 6zRb3rzhT}b#!av/ fZ6 DBh2[F@Zީb|fj4=; >AlQ%pOƂF&SjI[ "J`~sppf@*.S6M9˰ӡkʛyْnUJ>|v3P7@Ih71$\ϳJݡ /aPA |(/q5ќ4tp4I'gΐ1-Ӝz_N%t@I08鼟Ϸu^Zm}3/)Em"aQFJB2b.QNn?sHgQt*5Z ^vJ_Zm$ Fwbm{ŵtl>ض$ $Isg]$=~L`GJ-ou礂\B]{YZM`c+w,ڰgwp͈w2%{]ȃ).{[_xeJAnE`=8bJNو{ GAD/v@-nRy`).࠸M#ˊ}N ĺ`"!2ץm\yUca?HN>H3_Ԣ(\ = Oi}!@Uu2F_MT$QѺMKdؿ}v ];jW.*{t C R:Px/Z$q $ȑϘfNu#o5kN{dC1U΅@Lޅ{lfF_S,(g-4e1aez(z ^EFM ׃Eh>2 ay*tZT@v&gP~sמڞLltLrW Ru1AZ'˟TZK6z}lCEՑygp8faOjydԶ=lf{WxԖv=x]f|寍a'W`=-8[mpB Y6ZC Z fx+h_"Y\CǗ HQOц0'㯡]BL. GCrݿ2t=rEI ܶ-d&zv[№:>+&ːsqfIZϭr({ѽL ToB"*䐏8}tX>ơgx-6mzM͗)W3~-w4)$#cD씾ݽ+`"omH>&g[]!R$yN[גC'HBaE%qpC#!6岉g`[xgY&Y+JF67ּZaO$ofkclB6ϴm}b/߂I*8N\ HݣոCOL!knv>#z2i0R'Ӿ"0y v{tOͱ*gsVGiƺA퀩ru쬚Cio8`]QCT&!ŒdVP+9b#獨0:/A j#/r ^g1Qhe߉!%NG`sXx|'l&]E^$VVp|ֳ0wzlOS)DN򟁑'Zt^9"70L`O$zL ڼ 2zH^&n` !@Խ|c] , 4ҵ^nV\)1w#{'7QS$6eK-}_z7i6ݶ#iu+b^9huC:G)U&Z&na W\jm=bJH]Iy_ zk.Nб.wF.FvO1 JʭT>1hXn2:?+.բH=@ě;ɸVY&ӄ2Eƍ'𬤚6IPuX}dHAGRc5A-n[ﹹCBŋ^e<<,}Wޥ{ qa}-a]`Տkڜh(6C1r[ONzk w Q1sݾH)H/@+ֳ%O*c8!|`J߃2f1]H׿@ Zyy"v@g,1:vK3.l)YNJkY\c|lG"2DF(z`P VY4:Mon!YpFEB;cE0g\bYS!aJ F$y!ncx*U2&/Ԓ(m> j)9xΟy(b09]V,n|r"rȂWis؉#=:PxޗB5i_OT2YGC@_]}G<~lݶVZ7Z gt)UP}Iy-7a:_^x,]FE8P"hTuT%=g[*c<)LH䇌47fdfi珆M;m ,+,f*3K&+t߫Hp|^g.@F|,gPP7бB(jRB>-cPɜ߅F+xQM/.Vv1r<Ӂq0d Ҹ頦4OfQڇ - YW[/W2kb;ᒮ\,EnrU%$$51hc!Иd;cX(74BW}5I#}"@h%:^}^ѨP4oY*-dtN0eӍQeNYӓF>4%agdzLk*Ky%nAI@Jg$2ɕ]a, W?cNgr-p]$1NCZR4 AzCX-@65W.0Tʧh"p#_}nBX_b O,0GC}p$)˧ [ j zol?N#ղ$왬5 2f#~SOz{bs*9TmrnڞzU~pž 9sLm:hԁ3qt,@XȷL_zBgx]*PR]uʭMlR 7^2?<`<\fEXqL-EJןi YpN(%!вpT OZeiWS"H[5b_:,]I&D.E>F ^_`ug*pfV<#ʨDz1n5}<ŵɿCLiy̲ծEFkK2sc `Q6>jU?ՙ*Gd՚l0:;p48:-ym_$#Z}ylN.%G ,$WUxY,\1P7]lIT؊lQWR\\mv2&✉C8a-W;3](TIH U"!J%b$v[KOp,1 8'v*Fw b q-I d_kyQ)ƆlcaoS2Ҳ#1폜6x=YQ?t3fTmĄ]u 4bZF^oI_"X:1֭[LFdsȊOMƞ-?W}CR77TmD-MH΄v{$# XR`X`1EXq3ƜƟK;qUmzFu8r Aٚն C[Ο MV  ޺>ZXiddzx]_eUh||lVI:f&Mv9rsB(y d}s.C-s#;Ka9,;D^89Jd O&J^lt-iſ!o @(,2_Չ45.RCt/ygsq $I]l_MnmMp]0A8uL}WfaFZդ8I[ 8FK%/3B|6ڻtqGf۩o@sPMb<<2 o%25\b.`e.|w^O7X٢#4}7yD [ t=(+sкX$hj:+1+vJcf ٝX^b9ęo=fȼAH0T2DTVc(jJX8^xT[o8wlW5eHR 9E /޽3[DcJ+{t94Ǭ\x7z/X3. כOP-YiYH||+ 2!!Ǥᙐ^;;qr ^C[rA(xP77GA$%;6>S4Aj%~pi.%1K@>LJ<}4ZFۏٷ2].%ɯNa CM{l x  6GenKZ6e1h\Y(*##FR=_3-Q\p'cTR"~w=^$Q|EzR%SbcqV_Y fa(^WiEc_@j6P;YyT!?z2'a ’qZBj? -/k߭vnLV}̕xr)IujW"8Zui4я϶-͞AZ9;0 .@c!.'+\inHI-Jc*&=ouQuOIyL~'Өgg-{ pjn:#3>/B~.mދǕ1P&w۰Z:ɓ~S"sZWJ%5|@;5|&JI3轩K>Ψ 9*55u&sf2$pst:"!'z9'aʁ-$WKVT@vp(k2Z`zCRk[jbqv/`Rk.5ݠ{]26ݩKIPgHJҫ3oַ B,jjj!Dn_61q7#˨gծrxQu2'hk9:WDEl<w!3L#F|BN%fuSB%wD싓WT[y(ǿpI b&x㑾Q9f(A)4ZiAqpQci}/E5و^EX 죊N\2D čHQ=/(sj> PJw5o@X”rS §IvZC|P[+RoGGeyQj0Xț``" I |ump+GU dj(_RܑwұKɆ_$=Hrɦc?yS:UhQB=b!@!Etrfظ4}}?sʹ}1K‘XA,`[d V{&B痉޿prj4F /׏q}zVB[DŻAEHA)}1zMM #ʳ)ϯh#OJDUmzQPqHBf4Z|RIw"/H1`''kα[>O+HNkMV׉jΚ0w]*ɦ[Ԋxn I|,z |-0Sb`hfW޷X*uvthyyMNqP՞uxXy1cY(jf!ElZXFg1N6`+c"lpRxƀ9 *5S"ukŽsȅ}C.=ir1vFyS*pѝ0{lҠIrǙ\'\~ {dF>j+XO%/\$ۼW\Ѵ"Lh+m Eve-Vg+ {X럄!\ܹ[>xU<]_h[u͡\oN|uUɍxj]u!W)xSqUvaY3H:.Y{a ,/g)gOgdz$ZuZ ~8ޅEC=N#Up $$%IF<ƺAL8[>`cU.Q;|値>9r+)\GS$ܥ^ QJ$`AЬvnxxa3xPЮOX; aPrMܰw69VdJ3qs k+ ڐ aveߠ̫ϴŠpADhb㐇0bY^.\_̆A텨Jc_ِGSK^RBxvY3){ñ "1 $[lcUdDsbёQím-_7V24l+:!zM|E޶^/ 0/MY5ID"O{`ztzcʐѓŠs6Qfioֳc\ߏbKdD¨kdhEYH#T43s 5c r >EQVn d8Sc寥b;(soWh|iw#S@E<)j*(^ru揩e3^D73l!oꚍ~5 N(p=YRB.P\Uج*52LU+n#-e T7c}$ rB(>0fS/(5VN v5>u3݄^1Ep/*c&EyȸFCuR0-DzXB's7J<\bOD &~k/#;_)ĸ`cv`v+l1V(.ͩNfOۨHrKBv5Mbwv&KbT{VNa84Ɏ?- XlN|y\sHRj{=TE4[QHF"RK|l?i@4܁UPo=e7-5??YlrSG=yÍ《Q%w`߳T^)vԊe[\ Mg)Nczz=P1NjSx?k |PM"]^nr=(v{!I ௅/.uHnEMCv,y޴EU/+[H'M?P`f؂#7Lq]ra%倒m`ӆᶹ>7ԜSz.zexN ]\ؚ+()r)2Ǒh "\d ,,!lJG^3bD$ 2q 1:I88sn;#U%92{@O:Mۘ HGcJk I丽'W6}h"jho=~58 [گ؉h($F*6@}-K(V^Bls[;4V`qp''WGexja7D Yk!MAWŒ dႲ;5I]"ÿ xJa&x:*$,m7}ύk1R57YIѼCgP9nw'H gbcC eu'SToV0Eɻ̆m,rݐ#BaxC#Hil$-%fsOxrG+,!5a-0R@MjQ sC!0~sN P뭙6LhI fI!oE);<2otӺ[."GX}]RҐK o\٣Ќ.|Nx9!BGQVm]lT Rő0GFu)!1t\=I${Z#fn]|Q#vz LRfz385"i\UWeejU;A)#P==P>po-syHQ,s}Q98ڭi짳B@ hUeX! ɓ\ܴ!yNxKaɉdž?gFdSʆS2٫|4g2s@"󩫔 )P6B(l<1 ֱJ 06EҒYz XNo A9].Jfs )QJDB.1)|嘚I/1^,AnAT$A$ENvg)mߚ)b0+1 ,>^I'XxyiaQ>T#~mخ@) c A%>*kk[W"Хּq+|k<{T?K2^oFcwe;QBgfdR@g4ƛ0%K̈́fWCLNz=hn]U.~ګV7:HU~.c=uowu[Jcmbzw>>,xfVJTdȱ&W_@AÆrFy"E?1Zo!厵_% X[U"&Y%~u:s-jT:xjo\e/rJobBM+[Xhsbd|kƲ^c.Fi43-Xh B>wh>"&?s?,j뉓TCoDx1L2q)zIuR}҄9%ڔ$Q#(7y\4a*)U^vm B<TZj!JCbڷe5^Mr쑼Ї.4!OKae"?§jwv"R;n'w12פV3 &kUwIv3d5[Y/țOby]?X>@Ϗ{p-> %lg:]0*R-wiQF*|e D$:daݔ /'eV(.6Hl{?NN!Gn|nbJoEN9;oShJ`(q#&"56Jz J6 ڨhJDy%ySlQc211L\ 0ggD !kf?Y &MC=STMൠG>F4ȸpig p &lCd~"smSVW?hU@doԳ)9m7A?6H_DR0* YN3OQәV?Ȍ­*\ 7Y X~*>cPK+q8kJ}ɿ׳W _2ayHUCV}eLBP;te,0J[镙nAw])յ$$-P7\HzJ hK`hnwr~?=6lc%<–i[Lg} ld>7`RtǶ)6>iyGI;_q6IQ~C|:̖1t7D|N-=."\4yr ِ72V /1SJGޘ^:YC[R]yzb<NFӢNSZPx^^X!]lQckaK'gAgV=]O G-AY' ˬ&=Bb/4P|62ypo~)ʎ]?٭2p(F-G5d_٥C3ڜA91is }߅s]vXh~EȊHJry`'"h6`=#/!L8*BvBaG ]d; KEos_ җ}㽂SXuE(JVA'Vr6ZRL7Mpw9UC=î"rZ? zjf uE IcǂLO~9NP 7ڟGt[Vn@0b$+Z[6 X?ě"/ @S:d}_DL|dZMqb(r?4˓L/(jc1SqİZL{qk 0LA/M钋1.~mC5>޾wL?(VW(p&CG`ⱌGFD5kO.jl TrǼeXR.kJ9)wR@5؀6_4o,@¥g$d1[i4pV*ydgW;՜[qpݴz+@% CR,WRc/d3@;ZSdz*ӼJƋU!oXOOZ4XSggH k4O62IUROeFۢǷp*g0ơW(Ro$pa)ajU$`VSD/c(_ 2xE#x2{D+iCqrkA/ԱQ jѫ ~= |'~Ԉ>Wo)rC k0!l +yg[͒<[ڞuudR/e(E}KyUXTzҘḱk֜% }S˒CUk&ײBB*t:*wSI[yK0k~vBfMl*6*A;xhsjkNX!MQ>MpRU# qzA?W&.F|w%l(]$o-sGcGY;A"ejmpPղ+K&Ôx#2\9w*MolE`,h7% ya@&nfD?50\W[zC!DıI5?I P)TkDb2= `ǃS~)1}J iRsm$Uw!6lsF| +}F G][Bg0cATcR{$d0[:L"oi aU9nttt}6E4h:rƷU^\B#eDZiZ`MrT8>pM}ٕ– hP݈XI;Ir9DHDnH{r0M9OOÛ4}RJ2.aF70xpTS݀jrk Bݝ =Pч%]$ (m|߃a_Wb/u±nʗŠDl3s¯Kox/Pݪ^TC8niIwe-%Y= Eܢ@B<(X=B-߰!HiЭC>vW枘ycECv#bSy³zǀ) ADbIe#5BA#1j: ;+lVL,Ey)5żrߨIXu*`rH!O#AvZYSV/m ()iVkJҔ;H2e|Wl(0"f_Rho5{TM` ҌO:쩫;+DFL9P_7:Ԕ .EGŋGJ"5]ByQqDLFavBڱ:dq&vYwdW$9X}{$? q.x 1P}3tC*#]|eBj1(+ kpǷ[ 1Rlr~}t=ra:V.RoD}cy2KŃ2Ս)X!49{ŁZ˫LIK qAI`  d'Fn!~hFu-:n4a9E&qhr7{֟6\]ICwC] P[.xg#+.7]] RO;@_ קI/p+ŃT1Ƈ;c+睜_]%5 @"&{' W^#&*DB#'Ʀ !(Q|򟚼+ԭ9'q5ܳW;{^kbG񡦩@z^3s}t-c,'6Ji/K;/2xUGpgPyJt\ચ][Ip[7nN5fBHK& A\԰_՜4;̮@c‚&>x9^@8W5QG4ˉ `$ #:.+~ P9*.Y@`lj#}ojLŜx , ̹d6Ӆl,edx"BuppK)k/"tzc>k|Ěґ}0Be ޠmA!" ]9D'$¢!7AQf1QH@luXޑ7%&Uk@M %WLC1}ڙiFjʜl1F "artjTwnI0'IWb䊢f2I  Oi X I wR:bW{9#iy_#q2k5;M}%B eUvC[Vz98Iӟ؇R b+O#Q$q?(jc[vȐ]- c<[eR̯gy4O\C~fP򷝥7P00N&\O@*+;1,MkC0aiگ!_u/I]@ Z[\VdQ8.<;rZ"aVHd]Q}zVS]YVu|cAOp`oǍWxR(]!h[bK}F"iăViIw'ePXĹ/%n)J x`;؆%8§Qs`EOD V,6}gjHr>@ZO{q ;ڞͪ);U دM6`g 8Z85Bs=ɺLnl}HോU"{B$_0[%D4-M(htJ[FӶlԿn=u3jʨW N}jP_M]~(?ˌ;`&XƮ?} 󋀇CÞg(yW^"˳pƺ}ehNyI8E+~]E}eG[cyp,쎇0SSQHiɊW1V0]bWm"BRTU3Ցt"3dV* DAvs}__BP:$~ h?Ֆ$cݟg_0Vw8w7lq | p*!ߢؖгZ$djyPMYhkx-Q+!OWؚU @|r5IچMJlgxnT5ٚ$m/NK_ҶBMG!y\tu}Ɂx˫Z&1asWFg|Ng!ޝ`b2B!%=>ڬՄ~jNn k-7'{KFpav_/9~^2\D%3Av:JmrfC\ֳ*= J32Ƌ E;cPW_jIThGULB4B*HkӰC)}RExh1𫖶|}}ފJ[ ņZ d?8 Od$K {ٌ1`,"ai>t2,Z|"JAq|S*:.\:&_(xҤZ(6N3Jٽl\MaeG;-·r̝n}w:GOxޚaT;DAkCt;DLn<7zQ* Cj"Ӆq lթ$b \_πO6C&_(䘳=*>_~."N8ܹXT0-6WV*NjIvb DX;biUU1L!k;W s|ÙTwrv(D{Ne֩>p,}= @$݆KC^AxuxJp;X'c6Ҙ/,Q,( E>qM@=N>Nϥ8 m<$Iߋ*Y?> z0*!,Z/2OQҁn?=ؑwbO 2 3ly0&so@4eyTQBl2}Qgty7GkI]晼؋It 8T,'RҚ(RQxuޒ!⸫JP̷3$MWqt8}*zѨ# PQt@|-vì#=Y a~U0{X fT 7S9QR'V]yFLlOd"Lfy_' 8F!Mblb=G'͘hiåI_,|wwc Q$,WѮJy^@GZGK[sř)N4v1Ųor5 ة>a7WS6b_r~QuRMn*{p6SפZoU&uwo;8u\~rBE~͘4g6]o6o6Sߠ&ȣSP~; [K;voڌ)Άo5>#ww|,w}:ՠ{:ȥFdF^/2s%,)Ï0Q3hPmMV.,vVJv] 60u(wx}l7ɓz ZU9oM]:8i#_[bbZr Wj.di: @HLqP9m +Ŭ'԰̃5}( %r` }P8߳(=Z[XWR]{YAH=+q mŸ"Jk6lR̘~l,&Kטv̄X>+Nrm\71~ւI'cNeɓp7$Dџ㩂8X팍A Ο# X)(:"g>p٫}` NR" JBn*,qb 1'=;g)6ro9JܭCkڤ]`o7`E;c[)0z)%POП&a0mandW-wq.-({Xн.KQtE5|/h&gdJ7StXx|p C*Rsmm6OX>u°ɫ8b7:A&ֿќqhiS"x#QDSqkQ-H"Ozclb8 W 5T qhB܀E( *췉D1J A|p ER kW _nlJ_8YP|w2BZs#U))<h,qsUv>iG5$X#>ڻ=Gm'Z:Cc_S<6Qe, X:ѡԜM'k{%v!), 7)Td BPe*|Cz*uvj[7d%D Z L}aI)nhai"79R@ a|tS<-Z\Py2LvY1lA'2Χ`'U]z5A}#m6t 5gcՆ gqu,Ecz<] cAR_n˴U6ٞB 1Hv,CPrө5][/ u΍<d~$ #DĕI #5eW7 Ȣ{=PghKb9~3ZoQM '&7lTZZUzCm)&_$[G G*9KQnxUt\m(cHH6gݴ RoJPtc>֕GQg@ȸqLNޚ{;D|))D @Fm]pIO96j<}6MVBT%TOC&V&5J _M +%z8-D[g~;T+e!bp0eS!B/*T- ҟ@UP?zv[ ӎlcMSAf(VIQ`qF;'M0@9X)}"wukXf.}e0h<%GêQ/ 'Hj#E){Q#PIn2o Zx] Q"sc7G `(c[U-f3I$E!]QREXS'tlhI#E퇭E.e;%7xsހ9*ȧv 0U >n1=L$; fRU Uw2e&uz(D2a3L='}BݗRA ǥ̬F0 w{:D#04XTT<]ᢙu}TRzE"9_Ax*T.cOw~܌9ϷC'k2PA_e-5苝]?Nf9lS1fsRw}^ XA㈌`',}3$# G5c1zg7z_SʒY-(4]{3 3?TlzRF!ٍT3JB5(MSddw\/ G[+Z{PEVhǛ2`RZYqvlb7 G{dlD%hڱNd%=7c7$W2F *~kc8#=%'& -bԴrW.c_FD5Sٜʹr9f9:N?Uq/n郀x.مXa"w/2X+޳ R /H .VqGen.WNlqz Z ˞L?_:d}qŏL=8N [ ݠH&LF$4`~ɁGpaA06HD߿M{ <u.>~(+L˰_={%XyO@2/JR.}5,`&+bJA"O~26ڭ~n{<dŔYpjFk"ŎRז=r|,ukz=T<{DrA{X, \`~ \E)WBTJ$4CY;rW酔h\ ՉtFX˜4ًzüGWjkF3_?RFa~Bgp&UB.-ȷ˒/G||BtZmFg^3{I{;I^:XHB xEx,=-ޚ-!UV$۱݊GJ!;{L85wƕ}R ks$7f U (, QIf15Pvfݵ=bp4'6zrOve47DT۫'ZH!SFd(C2OL`=a$\vL1j +k 5k0B(= ]u㼋MUw_vnG=Bd\3lRC=drR5w- hPk&.u[Z=%%Ⱥ8aJuzr̙ʐǞГ f/SPwF|4'Up!H~Do](|t5,^XHɅEAe =ʁ:'-iRmE.Պ# hۺ=䩓)!^͈"vZ57nB0XBց_ Z{rctRP}wQ0cVG ݂^\F[+Df2}xW'98ˡL8^0Bbu?s)kRNL)o4iFV"mxHREbmN#v>B+h}N^9|B}K`km~ z$̻gшI%4AR_|defKqyۡg=|a<Vr_5ky;oO?iBSVxI PA_w@_x]ikfS~AsgX*%șz~PP_=z&3K3F`x}r=C>T.I)`S?D F*nw~%d@QmA>\/ @m8?9˫>WR $ZoT4t(P[U)_Q G.4oen!<ߎͼDtT܁=0֊ lL ͜ _o2.@]*V &%4u҄4fHG5dNvR~T Oe,-|eT/h%$eep[4R?>XQ-ЊLqZaieǢrEK6GY`nN'.`W'\H%N^)X|tΥH x҃ayF*z/q%`hJ#'Vaz]-.vR/ϷM;uPdH "V/]k8X P>[+'4@mFF\@ī'Hӎ鵕U¿UEY]Lw>)j^~KVU["me XޢRJ%?IԚXZÌ2Us=6#mcD-bmЎZg~SEN;WoZTH~PGMoZjj:vnr&4ukM %AFQ]Ȼ[s#Nr, Aj%MPKWr[G#ն@6׵v 9_F{%dSD;8[1yXyX`cJZC0[FΟdZp'#i;@VJ|k$ 00ErzCXK;D`yq |}b?ɠl<9_-!{=Lq+Ņ 'TzEO>J#d .=l_ImՋ8 EE}b82$^҄j]Ujj'3Ej KhdR1 xju@z;:_ ȫ հCwrLI['#?jF?Ya<ےl~9(A=)W<ohÿ9q((}i.4/Y:Rs3 &kÖ|NҞ[BL-llJ꜍J|VDOF Ձş B.~b@,?g=v uWoܔx~ZWa|6QYːuS1e `rvLRM 4 jZifKKO{pNAv9aaiO~̑R}Cٵ_b9=VD(P$ Lg12@1E Iм?Zfw?pQeXJm븵'Ǵ,> 6ޱ:5YԬƤ|Z1I_/G6(kbE ӟOp˔s$=2Trw(WD(Dy1$<^2ѨyA{6 Zs{^0߿dWwJ@ |ت $e!~8Gsr$wmqr O} rϹ XT!EWG)!1DrqZ<1ѮF:rg|uHD_*+YZS!MhF.Cds9!h!'ࣼ&;i@XV_*7S!,(K52-L{Zr>Ys%ԔU3u3;1O[o N]NOփW(yt<T-Rw:S1*<[,O2 {WBZ%HٖUY|!{6X,w9F&䷝wluk=8w@%[RkD'߽ RAǼN7Zжy]Jٔ7tdԙp`cvC}W`D +zQWMqtl~eoK_!X&(jkBklpI2*n q._Xe3L-YGS:+jBJchM?䓝s~T /@5μ4aI i/+!HWRQ{l{צ;}Yyi<(wHq/h~ɖErY!/iޤ(.2z̈֒1MP8Fr@H }l H~>fE\HNGA]˞d9N.ZE[iS\[!2; i|vIS533g=p!1KG` 7id;u꙾{@{z*GDKj,JA"3ǹqKd*o@/7.9.nDe[ӾE"\X^ULv tָl尿J4rG>10G/Zؗ׺{J,z~{UHiY+@d?Xw_AֿTBoQHC* j,bK& s:XܒeK{"VJB0}L,xsl:c^(|]66 8d&:C4M7_ 7q\/L*WoX>3òrgeIpU]Lhԝ]sQ~:zy(:JōJ4,K k!5{g/9F0޿ f Yy+Qc!s6 ^d-qi.U:'Fqjkc_c#eҚTU$*cd{m\X4OT.}}h}~~l % J襕j~;W>7~"Fq V9mO2.jrSɟL.{/G(UHFiJ0Pd|.?ʦ# `?"ڐUly?3܆ #tWf!y^I(/j/Օc %N˿|-) *@B/1Ϝ nczLBCℙ'(k[$CdI7ZȍAzOJ Z'DiG6S % w5 ̻̰?aq!z}зʅ B R\m`GW颃/byl-Jp6)hS˰T77~KqZ9?Qc-ۖ^{]fuH'UM_[I潣:@ʗb{:Yl+=M_tٚ?=v; 'vAӘR{Ӏ1{ О|? 9ď*>i -D7=̶!}3峑ה_N)b-7Kl4U}cퟙT݄~.$:ÞƞX~WK46 2֝$ o&NΟEW2dҡ"3q#8}+Ml8mRymجAꪓq옱=0J %jE(}!&hFSV+UC៳đ߫]M0bO )PޓԻ};XʮdQU CQD"oWtzߍ#Ž|w:P6 g݈(7j`4S?%ksl|B4+W(`rhwWUnV^~ރ<=+jyAuc<2:2DPwJA]Z?k t 4,pi<&$R!ZG6?f8g&A* >j#[+-*be*0k_;-2;Qk_0&:?n )ՀR|r>1rRߗ*QTvDcsC-lkq^0:ޑ^>g172Ќ#9LS5ؗ.& >UtbhQ8@TZB2{@aʍFxb̯j0 t07%(i /{X[ߤc{e $HQd _ƦGgxQ mzꇉ.,r˘<7e XVbijg _&H>ȣ?-ɜJ(ef^֋(Cwh A4C%4k`J,z_V)6Č韽z޻%mi;ڋE.B+EdQ%x6hjj8R ]eߘ72mL e>mŦ*1buNl՛uw·]MJӥDb25F`e%kuP1M(pjTk[;^Qد;љyڟo^SNw2ۮjt|I8GM*@#s EHf_i筥%0B*&<3r n a݌>id"=^^IB039/&)~ȞLKq(젍zݹ[E Lnܖ¥~9ʓ';tm0v1=lc/& K;1:WD{u]^PlkN@_Vk2> *.8υ)b%$u#/`7T>,l(29г:Wчvq\̟ہѶ;SKe$دA5xSِk|g}/*κ~UZ14:#+&vvbpIحd/EvXH>oyb;ֳ6ZjbgL˓1-? @tY g[`f2s@@qL G lEzeﴩ濺@L~,5VN X}Er;C5IzE,>kx`v>М<B"QL[W"0k\iY^:hgpB`[  T[zAcnVw;W$=xg"zki:sMPqw@ +-S˪g1c^Cnc\ $&T'G|4$m 7 t?ހ > w/zkB"q-98 U0^Mhv`L8Ualpk7dù!gL(٠wy;"6y.,_mW?9'ѻ17dO# Ν)xbЀ"`f)˾WxhDJغ>;4gQAs~DOћH"aDueHTG""t*4y䍩g]uw︠^}W'1tz.ѐ3ifpIT { G'RA㈢Gյahh <08f?-4s~`JP L|uAI ⡴"|Y?hJ0-0?&j+7WʻEVC8!8FO%]wߐkOoa-hmX7`_5 '"Fb @U`ܕ2sB.<]߰DeF* 0ѩŪӍG^dա4 Lr$Ѧ'TJQ:ۘDB*bۼðJP k}s%s4d"b ȦPŎ؇2*ł0:.`Bh7h3Rз!Sn?RE˜92 x2\AGAWZ*OyYM.[x/<%Zcv97!tƍq8Fu=hLd.Y<0l$U)- b|MVMq$Xy& FIvyei魏HZPOhjdgstȊReGF/Bhi7[{ߗe_xK N 2zp\cf!Cp n&qMaHľ[1 ֦sWw*΄閳Ujz_ҾE`q VCßAim98Ϊ3"`t#s0۶(;=_]evC$ApѴ`>Y?7JjNAPl '[qU@}"`<w׎txC??Eؿu_"ƵI!UٖEbFh6 bUE*$<~N6K-Mjq\ }+ll5"Țl۪S#9")nBSe>H[I?!ηr(ְ:dW?暳60YsDs 'Ybr^WNͷ h&m[;Ac4a W~ԡvM F'ܚE3D\-IZ ޒOrXZHƲj?k7R0A^[Lr5 &7ehQ`ZשM#6 cx`rޮ.l2ZD|?`,޳bwz"Ra̴[h `cac`$qރEDnIь POr>zcYMR0MQm&vk- -چ݆P#:%(i^Ch~ױ:jbЊ4׹s b{ ? g8ǹ×Hc֟,i*,L0&az9nPF#7Ұ”>_iNTU}AҀo2ՎPLKdV;i&lW98ZRGpF,=T* pS1ψCD-๠*_FtM 3׎n$f%S]~Y7A(zA&Z<¹u)'ԍ%@כvD:at4/C%Ҭ1O0?۬ bl:@ v`iepj8|Aba^{bQ}.FWtI⌆ToU~(M|F޴,3$~am#mr7Jj|+@'3.KӒԞwȣ4X:L?A ]kMbB3|SuRyߖk ]c{*i4O(+qM"ۅkpzExGA^r{D.H֠B*0ʜQ>"M8 S!@8W÷˷*B4c-d4 Io=|/s3x $b=]aYTW*ӕ&V]mڧ쒨-%,j 7JkNwDj] uS|6ynz଻S8:R`.u?[öO ]fLFkQkE#e +Px8MkdX(}75`kF9^"Svƺ`/kFKk04+Dqy:Hbl7bb,0FEW@> 5ܩBlfL fޜ5CoN2A:4NTSw $:ţIDv?WBdE/왧S+0{ie~%9643Y""'<8=Ɵp6MB'":"?Zux50ֈ}ץMf܍xzjlʕS(~Cv}=vթ9ndKME6EE!馳ND0-u9ӟvf ͢x_[釣{""GAm@'>,Ǘ |S GfyP"}2x' pǝneR=&G7,h1zI5{>C!'||م8o狦}HIQ רna:i[~qsB )HvlSIdV;Yy0P˙ a2!jƄHJ|{0NU 9dJÚܗ+#ާvRelL]j@C(&L&^cucݳ Jxx茷/>^Z!T8Rb۸X$iѭ8l$HFxXHCnϣ̈lGT~¦uZ/-|\ e3r`m[43Mj[n2F _KxrrDzUh [rlQPsmab(@VVSΫ†Zs@ ɂ Aq#NhDǧ-Q\qҧ(S^/A}&#qBz$|n|q wFԸѢ+8;\i>" v_n=LIJq:#5~{$p2tsu_= v: zK\tN&XQ.dzTAn5+;ZeAB,7ͳm&3Pt=Oz75gЈ3N/Ej." 'I{@cX^(`65Vo:z3` WNFd,rr+eVKGWo_`aB._s!MR&N] "eу{qA5=J{ Z<＀w~jt#a \Q!/+/\ܬ qIY#j} XF+Iě/zH=[CTԟOqz 9{ltgb;, iqWQ*}\Pe+G /y}]O{<>Vxv5aMj{T1jFOhb"r.WNAeנ~h[bqY:se1g J&cQ/S )+GٍT> }teݳonwOA҃NmGVkP{b8 ?4:<M} ZCrobc6>ĝ?b^#H 4`_&.|~I۵9ɀ[ZR@xxE|xoanѷxI[NSJueE:y20*Ճ/ya9 DX`_3>tz>Cz gE߲M,O((w3/ԦgؖQ}+5AEJk/Y6o0~Uz[)` +"#Yҳj{.Wudz}׋| `0H-ƘJ.e%F_u,R8pB-NnFdѸT_BW`4㲑,P䒜+㠕<82 meqxJyqáE!Mpb&4%dn5 Gp-l?;l %4">W P_YeN*u +@G/pWYzuqp3^E; *H+!SŠE-I=,)4̷*R8 Ϫ_h T #VfUai{@At 9qe252(i,Wx־=m4닖T Rڹ6#5/&p{hx [~_DSRnK87VQٞhNn?6)y`H\v@e=αt(IeаjM`Rvng[#̕˛b}M+EυȊ(6_?[+\󞳝u:.X1o0G FxJ@4v)Sx-[YNfbN-ZW{,-k&bn{ȔU9kT>S2WM^ONn`Z˃ ڶ$"ۿ}Rr# KiHtm0ʥdBծ ~]_TkRn\zD:DWn%XdwQ*:~Bmto R%aجG>TY|swo2=:Rdw `+RM:dm[ʽUtzPIF {l { z*Q5ٖӫݍ$v4_ cͶ0ma"Xlv %7i2_B%HB Bm]9pq ߇y8H\NV\t^B@X}B%A*`l)^ΠwKMaP/>4ͬԨi~]BDޕ(A:R.Y Sԗcnhv O^&HF v}ޖ1)T,;N5,q.l4XʐU[jx-;`d|@YJ%8u 7 _Bp6P\Q&-T&BMtfȁy?&*7kj}n3n%m')t 㹳^g mU^4Ug94f3WF/ٮx톔 _V4M9APQH|7ɁB)ssD={SKrQij1%qZxΡkҢKa#L:=X0Z- ǒM~g#]jqj䀩ZVt7݌\-{W!)}sdV& QLC@|ZdWI ڑ@+Jޞ+efjL=]&$y9z3f5`ڏIPC~\zFvrZn@ |MwF' P !T!ׄ+~=%CoHv+X z?S_Ύ  30bQaGȈ>#0AAV  A/a P%Kʼn{_L6ϥFMKox2Ia^}vnMZ ˟9z_w1i씜?hO q-L{wx = s晐]i~9AaCKa3Wr8d,?6 ZIQ(EԤ[?#hbCfO>kCN|FS:F%I6$Jka+4e?F8-oc&.TPaF$%S`X%bxI5g5*|_M;Es4nb LŽY tjlJf҆f% ѠnuJpg{!6Fi:Vǖg xpAKe\`RA[ L5 4>&JH$JLGXhMv) lQV!P{Sm '=R$'w.VanĈX*e\6*~*Xs_iO<ⅯplU|}|C_kt}00kA::RQl%$ dSMlӜ7I#ˉkXYÄ"{` ,.j8F-ö+ SӋ1 D>F.a7>ì8|rIAcQlilL)и–^v_8%k\*Y{ LRhNj2ss/ Ig[P$E6%ƟE2O]@!k]0o x?[lduz%&JAP|WwIљQ9'>5?F/2uE[d7>yI0 D=weEX-ŎhCtayq/3:=t|CdwS(@uWYJ1P!g{qAX lҽq[Z@Yi;?zfu:6"Gٴ|xYj%^ 9%$4^5|p,W'4ZS;鄽dw!Y=M Tk1[vy;3:aޭt:&ٽz!B05{_ Y_%"# `\kxЎ 0w 2ġ[`\m-Yx?L`o%/&>1H-M5 m2QFivg9`(  ୍w~xo-o7,JX=;#{@tRt4 P (V%(vlA)_ u;;;mmQhCM>l8cw JDy3uΞ\ xބh Eu+4Cٿa2ƶwO@WD^_ȅCUrd3 ktv=Q"?NTpywX3<1⒊D*!kksm7:_,' c3y hOn@^x%- 'ܐ Jka8|3i 38@ߝ~3%)hA4)4R6m8nt*QsA@ TC?!s935sCj1U<; iק:Ŝ`ں /!gHnvw8tD`oÍ#؃[E=8*AOB0VQA FˡC F_f~\>jB<0.tțeUfђCS. AQ/ hWnzfT^뷝sy6*yVkqusE1cjoU(08Q&)R"" %X&bU+[%y )sZx[Wig>Ps.>*/+X4,yN!ɳ-vEJymɼُDmX&!;_gcŌ|)!Hn,Q3dIk]yv|9,}o78[Ž?@8,ca$WhcL[8M>in6F@Q%b{Oq4Ks}I#h|X@Kn,dejk1DinZBƧ5˫< ߓ*v2PH[ЀZ=p ?&1=`z6lNu޳ Nn,?e b_ڃálKg,_%Β": xF/Y4_Bќ ]Rzn/ xɡo 9h[iveR߿P/+ǜ29+ΆkDs<МDOxt3[ƘS^N5+D޸)HxBkQVQ^كr}19%nИJF4_:6eZ׌#w5#@*;<*#Ļ7 vDA;gñh] C1$" / ud$;p 'BwQifPdS"(EŦzrơw vYu1A R-Ai5 DK=<2oi8S*kLj bhcH| 8_b8eKmEXD /-8ºz'a Py^0HK5sF}XQzz l> :wqiתּ髲 ;'ڲ%#lK<÷z!&  5..4t+;ituMNms;)8f8Nyp_JtUrbqlQw,s)0z #74$`,RGK`#6%%N;U^@Xs|as# Cc޿%LSE&s|wM`Vݽ2e|[#tF_wISy~6ES:qf>9\lm+ӥB\]ޱ7ɴ,9yx7P+^v@>#7F翎Ґ+;,AAci l{3N3kKyZoY]@w{~c=f޿ˑ\\4.k-}/M;iMicɔܚO댄.FrzTxu𓭏WoJ7nł,WˤC kʳMGpi,L>gܽӹA8svPY)崁q-yM;AD:SQr"?fdg1g ) #b|ĸcoB.zkr0tKk x}>H,J Fʝj̰ _ʬqE\]ɿKiGy!'l҃L z,k+lKV x税Uٸ;[Ejӫ:Srxݺ>DEZvz"R G`,dd 9o1ϰ z@N[L:z(jAIطB::8(DTy1#!7>ˤwn. 6)]/?/\Djmt~'.ۺ7zw2QϜvVȘ7붊%i(T05Pk1@Ov'PC?(pRxLVҔ֫-&15!Q#deU:ݲH7R0zҊh0/%9.r$1z[{0+)c48= LT}F#ϥ,ަm+ 5 Nh4:q̉IH  /!^ H[ -UӇ!M嫐/4QҢuXPz}\;KuSFAjƬ ~{(4s#{;xq1I_jJ9[]BSiS5E0|B*`@8]VZ8G'ۻ3LNM/udLx5LJaKV>4t&DrR 'RB|h!H:&W`I@"Z08~'j":W?"|Ee-]R ṡ|О.RG0_BsY,)095h +iҔE#~q) wʱdlly+ ),RE39 x*t[I/f)V' 6IxzqT#9޹G_h|.g74^$-t1iICTZw%{-bɯ Bm`X|盌b8Qh;|e꽾NPxX{+QVړc1/oY80'\+qӘ Fbyĵfڄ4}(dM>>N}Q֌ ia[|'+j-Z?3sXŰBG!{ ]Ŧ;]D~/i3p:$6pmjÒ dfE{=+;UB %$\LcyEbOXw,$S-š)bx>v8C*Ż˷}*Вmolјm:Y;ylE2cWC.=DrZV:^Dw :";a7Xo^gw0*2q- 'G/hu>#Kٔ3Q̑)\@b gU>Z$;LY9be{`KE{ՊZ9 gik T TԙR-?+q<넓hhXrZX%#oI<#l%{99%FIb]SLW'Nw{ʣV4f"J~ggp6c/W,̼A-F)?;2K vHN}<@dz3ZMЦ{@~Q J~av#DŽ!O,v{%}J r-)dBMD_~]Qu*~풂ɯ 3jا}^)>*e`o5G2+F HLt'pI5b Ƞoipz2mq+n d {V^{a%c+2GqbSq\mfUb[Ɗ&܏z'g9ø4rrg߬Ւơ]sMs)Y\Xb (V m ;MrҘ"2 1~e^ZĜ0ՍnH|)%l=ñ֒5 h/:;t0&pm*y#*:pSAEo>W+GK]?NDZBJ/)T+B>3PaO(3bھ//oG.kڝ y^Ŗΐ9Oy;1'>/'3y?_.gi,KjD|VcC'-;{;I(fb^VS_Ű԰1~|"I4(Z4-;3~%>GK|y5HH[Ʒŝ~%}aN4 9~9Wk!%b'(i:yI+>D?I$I<;|[Vs`a:t&W"6Pxw0MeSE2ܙ@X-IBbNST*:+a[Nj7' ud[H~9E7c?v~xH: p 9mؐܕ<Mq~L7.ҼS-3Xc<tc\B v{J gc_y-&Y9 ;jVF_irOـD o&٘skA Ywv$i^uo{@p` U}7TtPJ|kA_>/[2X|<7~ŮٖNEiSnɈU!I^k޻k`Wq&ppNSPHj;Zo!ԀHn^]$i_>4QD L029fdѶ0 <:D#VKϺM"q6u*PiTȠJ4k[@Pdyrdd"sI.Be IM&5qL) î*V{{`bG EJiDU2\4ciu 8:)̿Y lTjp|Ÿjh8z_Brcom$tY|4qbdKSW@t!D~d73ѿڌ,D@\GɫmL8 yۺ2P 3QYlP V6u Tjqؕb3j9Bn VL/0>::i{;!f ,}PY[PP@g)c!v`:ǜk8DE%c )@Ms{e*oR_vӷJ~j W<"s)*]us)nደ 2Q GңLhs14}$P9&أ_ ✄2_M^u 9?wQ&;ʧ:$X`E(6Vqn|cum{Efr/)oK݌Xjr,:r EC"bz&&o4}뒰|/U jWLWS=: .ϼ%JubӁ_!&Ȅ QCr5۴S?8B]3t_NvwZdHz>w %%YDx;wǝS6"E%E8r<?9ԾևMGZ;JflY´3Vi`;,;H0d}䰔U*Z=(QY1y":eY:X+ͧQWGFvVVR8ח̶ح({K㉫%dW:򻅦s?Θ&g+9 swهS⡖ߕɊ|/$Kc`&l=@h I3{𛗴UCW#oDEDIDnɳa7Np,ces,J1P2>%nZ'Y==OR'1ߜ\ \tjI'\X!k#`::zgwĆ9`q75Sc1Yr`潥uxQʿ<^nJd%̘C#Ⳣ9' tb"[EV([!:fJ~_TMnXԾ 5ޛ>XTs!M)]LUɩ {(Y>|—I$ߕn"4Mx{Ay2yXI@ɍff%ȃN\'znڝO5-آ%<- ͆jlXĂwۢ> u*b$)7/| ~M5 ectyCW gh _!܇h4Y{?T)3޲$7m-r)t{vZkw\ ``O{; "K ϭZKzFExb#K*dWw<}k̼of1 O#f)y2&( MPi$)`5YsU]uݖEajwhxIxC~7od@F}O|pWnZ\wuEҎP$hZYæryߡ,^“*xW:D$;أ" +ToZ7ӛ, PA3wj{^QĞP뎚Թ,.D#Z*52<@hW݅TKcǧ®f&qUe7.-e=,[gɎNvmj__l~ڏ_%g^V+MPM$q;YӗIһ5WX|:r>s t `4PD h rf^?jl/ڽCHW gT6)G"8nTV\d:eKy<©Ml4C[ ~%|lM( =Q|G?<[ i*l8 ߘ#J7u@SO㘪;ꍗ\Hl>O]b~C| [n Y/(1d: SD1'r\?ԛk}743ځ֭MhVV45l;5w$#/UF*u&qgq{B^2 r&>yڗq!WwAVuYGTcgt%P4ZHTw0 )blL&cJQZЙ351MtP$R3b![k5md&?NTOӒ}c |lgusyt|$.jwk1_.H;jl̪E7!3 VXcmmeظ>|QՖdT@`fO}+6w]!ZQG7"3SLG,jb j3E46 p 9PI7oRل5RĹ.a0l?0#HE3[Fy# vT%U201'˥(S.#nS',,Òv( FW1cK[茟eJQV&;SYqn8Xԡ_YPEZ <&O!lan2'5ہJ4 ,tR(zTuu4==O?53G%ĒT+>O$rcuȝ"w9m!}'k)ndY ׏+( #\Wmewi_jq%Ͳ s7y{u%GG$lGLzHczm( Wn!'a:rYr46TS: U?:0c&$6&%|5%C,wA'BҴTYka>VMwj7GT'v0,Ua tXǯ l#-[L.BF_ger( j9˙0 YQ{7B!k9W.? '*+RUGڅ~S]aDYA k('ƿ֏5M"WL'R5+A/Zo M]쑖a#&MPA%~bYfri}^~Z@=IR4˶'/8W¨>V0 ϵ*B/PBZniq6Xr.e:m{&pbHbIx&NaI4txGC"ÐJ "_D{3X:pSVMso}afR W};FyY{|s_cXNwM}IoR+-our'L=!OS</3 beE9ũ2SksDWt S h-2O pϡ!IGkkLBuP]ʕHP(#u#ƀ|V `@-1w 3mKݱJzP%p$ilj j2oQa9ⓇX2L䭆DM{63sYϏ˨ ~L;FdP}߸]K+ьAk PsY1w<)P0I_&OW?Uq==n{  N%y 8W2ypyfI6;_R$%CA8IS#5JwY0[^Hs0\(`FKq-( AG!jD*ab;IQyw3H+$oJϤ2^&߆c0a^&B6!E3TB_eP#:^H]Tl.g$ b԰976Uk&a=_06{_!PmHywe$GoY4:G]:.}a2].Y"ɪRxn*\pyER2$ 7 KƜਲ਼@wE?zR`=ϟB! |2- Gk־L pGTvSBqf$%^> O/*Dd/K>]hv|9v/]uzy# ->l{p9MNZэFNqV [_q d"5KJ2ˮQŪְtL$&OyTzJ_)׵^;Cd+^!.pUKISv*we_Ƌ{X=;D,2g\6? piF~g#RsR"PaÉyV`avt7P+YdgWJ% $d4r}0$ |dMa)W"Aagۂ[\"2pJ}Cqfν̙GPgW`¡(g̔`lM(74Cv Ƶ wVlqyıX)㭟ip~E$ 񎶆ypC?\=䌮f' H,|nF EV1u{t}NU^= BzHfxwqiM7E""Q_}) %7떧KRoOjaIIi̵Ebba[+ðph,U1c@-%Aƻ|35˥>;I8> OPBI8 A.*"D[Yr5d)#Wl @Atu{~'% u#&v:~1WOؗ.^w1~-QÑz-ЊL8zn){- ! "^cR61cp=޳ mzJ)T9GiC#oVwVKd?i2coc1WL m7. i%=2 sF \濏S&]P[(Eoȕ,bS(úCYϩ-6\9i' f=T;Qڹ8̆'?}/PZ^Wf. ~^[-UyeeQnzΝA<j'/g໥ʊ3PZBu'cY8Zts5{YrؚrN.C =*G%u?*vS'cb5  4 -M0XJW*rWm 3˝ h?ΐqyL$9ƶ{x/pzy +fq%;wzQTo>A ($)uqDvc!e\ ~)!c ܩ[N`ٶX霻A%dnq`4@3 !CHYM'_Z-j\EdGxS뻶(8eF)M,3Wd!A~a'eM-s#}kҼ@eWܹH^hŬbyw cF՜x8uW wYJ]#$jqǠZD=ɋQapSdu#ٰUܠ1]ۇV MP%𥰒ǯjg1&g {L~o|nts ꘱cPi+4O#>,Q-~TlId^{k=e7W_]{~MfX !,ffEC0O]mJeL\e`^ilɂ6/NJ_Pwgn67fMg9r?W IL/lݣVa}{pR(rqMU\jW}q?47,gWY9F & ?1sC%\'Γ=m E]&0<pfSCXj oi?ND 2U:0u'o BnB/P{PPSCT t3vaoeզN5k"`pG*KRari/ntcQȖ. _<\<h<4eQ!4n3;w3{&){p#<05_ZF~gٶE* ,ZxX)4FΠB@AWbPcN]`Ӊ.!8SYfGGLS2b s$ :^e,$aIy)q-;X2?ĖĈC烿'Dm,I &H4QȨs`E9 R.n:`rNkܷWx4 H_Ou@cRa a#z:˴xG{(b ]|e5jեLA#Uf.;/%mB⩥J$"IЮ9*]T+IzwԧS'scՠlOf ˜1@ Qs6&@҂0?ͩ|(_Me^ q'`; ?a=R~jt|po-,*'sy h8PUi'?QŜKc {g5BW'kj p?ujgBЗvK'#h]MؠX? 0V$#mAU[rVfGnyN@eC !ttٗWz< iV8}HtBv h *Kȡ.a܄ކvÀmgRXox=0>H 3|:\ՁP嘂\8I\d/j۪ b]ڼZf2Q6IoY&YjciK˳st,Q6ΗDzI>dYmvЁQW)λ`ƍdJ巧⾇Eq - etbe%DalxSnb+m IBJ/6:[ D(F12;9%t;Wu6SpR!Rx&5TFs]h ǁoDMd,C5^^{忙1أZ9A##У9Y#1f}f;j Fq`eL!ԙlS#ٝ ?5ѩd=@ݨv!mؚTݱE1%T՚ IEobx6TH70w_.uzvۢx[O.wD5H(Pt$6I;c?gѧ5Dc{(ɚ4o.&o=CTkf*Q?vpCL s/RzkmD@Te.1udHr'ZmwQ2mf.N++rWSd A}Lx0!Kbw``ruL䋟 g(\$"2K2+K]\vW iؘ+-Z&_AW5Y07tIx+?'dr+BȜF(lT3 5(LX67+@9l?NłcOD ;;]x CB*葿uNP9e`h z{A",ǟt`펿X15,zT0Rh)\(X/p\~"haoI9DHCj ̊C%]?k|Gnhp#!rrTfdž%]Œ͇mƌŋp!3=]fj3^w@o`\C[η v[`Eoޯ90kFx6!ZYXGI#$?SK/L"eV9G={>fxѥ,'q:pA*`Bgƙ n&(Gnˆ{k9ZWl>dY.;uvѮ"*/DY+f1~c1sB7耘;%  NE6u%RN4c:Ԃ۽-u+M#u tr)OqL+c_62u %;Ü@\#N#zMl,Ib 0+FQ>Wh{_;|BW[cl"Wyu2 (5J"62mC#OSJن$&uOZMYmff ;3}k*](ۚ(]^G'oWե5)s*#MPsTm'|e8e%:LPR]} >ۡl܄|\ H~Q7@u^>zr^@~Zrp *y$J90|"]qzOVI[Nb_$d;;әܜ],L4#x2&amlE8'qPEeG-D.<;DY-AVJⶤGD B AP|EI>QS$A/hԗ8o1 oä4&.ᦱY;H|?`t$ yJO4D=ŕmrO"'3%Q0:Vv{mZ;%.4{ iT&~5PON=V_jJ)/-/*~ZS}D=Dlp6!OpMGa 3_i$n#qkn )~)'3zR>ז7 + g $x8 >濾-C{wY9$-Y$O3}bPH˷^OCCWB4|o Bp\tl?T$@U6>:Y`5?^ɑKiݵP_~ptȂΎZ/@_J%y0s2[RdQ\4|!F:-*x%_(XY $' a$6*G H>W1W*@fКRT(~칅:˙T攦npW'9:w\`h8pxv, [4$|O@.tƒ(PFV߼Ro3zgͲ-ip 4+!̏^ gtcd«,b->迷[%kƘt/]瘄ٴ}:񹇮+;ؼ`=jJ^kT#}FZ!_zF^n}H*åIYI/VMøVAM704T[+yi< s$!C͓T7Ƚ䏃sLeU~T}(H1 J 2KSՏ ~k7 ~·J`;tz!7{ka~XV[k-54>e>~:G޴Fv\C:9xzm(7kݠ^ 'ubTfĜm|`׎Y7HQg/ {a;|].xK-04<&>Fz?XCl*28د컑pI*; '^.Џע4zτw uDq\wqIq L%hS]6?ڈ2M(2ᐑGǛ' -GVaE:3E.~enYC>f8 mǺ7׬sJfNA"TX F5_Z"RSa,p}Ne(UnS]Cw{ZHU`%3c<đ[#܎qGۋpCQs܌VEЄ$L j4(B)MۦAվV-QHʏg7qKOEhp%(P=gkΣ  u6kBAъf%D/  ,DpX#[&Z}E StkbD}Jv]a'/|YG71 b1DG$'v0K^`g8Uʏx4'LrMJZdO˩.%lϴQTP3FFKJ@\}V/8,O<2<^˄/Sm"?S= MZ8{ Jcgq汒0߽XP.a; DTg>`[VU+Vfrj;s')h;<cnQR85c&SװQZƭsqcjfّtAՃ(Yn$WSELШ9$1GQ;=9ʒ >s<7$ٲ]WW׿j\ 7TO0r(q=Sj?^(ç6" cȪAmK50]PrC1Dv5Y*qێ(n֘.3xH)FeP'l\ 0gI5-}h%JuaCج. i|nh*ˁNɑ1i%vOV8 l-N欮vUiRь 85S |Ͽ-2D IH|թA.m(IH/Z~BS+[KHnDeYpxD23~ONX]X_": lC6 w) I)!ɵ 2&]bn@|*sWC/N\@kL )cݡ1ϏA%ĘH"i o9pt6_o;A2=$n)/a2h}QAY aGЁae]!?ؓ酗8VI}Tdғ'OykusḿdZ\Y/sEZ靔i 0!U]\EAؾX7*7ClN')>GX5:'[Ѕ <}{Ux̨Pd/JTif4CZ؋ť#MxbZ3`ijA M*G.+[pJaEpAWy0n O.$+g6Qh]A#6W> kIBk^ <^[QTjEJaLӟDx?TwK%5p ;i8J;p;\h*Gu펝P mb:GOUrh|')BP7rwmdb-.}^10 mUU.==e0J `'%!k<Ԡ)-N@!LVq%-9l7g+2:j5VSnLJ} i:/B; OUA+vp6?NI&v:P2;{к\\qJRZ5IAs:B%,KPJȊ t Qc5DEn VTX2\]n[%!>[8m! W3;6)w+ SlOQYq,'c9W/a[g҉Pkݡ @ɑV4KΕ0 g`G'!ajE)].(u˷hh{V ˉH| gO'ʅXls~#s{!U=#Hʨb7*(s,xxq'­;~}Gw(RnEK:ŋubجLB-' Epxb0LC紨F:kx @pp[LagSCUu0nQˮuLsG#\'x+Qe"sLnWTu<ΣO>!b ahk0$iiË]Eش *PM :%HCƋ  Kb,L#Jj@*:̧`V5C(x/S0=Bdx}(.ϽwoKߏK9cu/>FA| g"&L9?B rh^5&lέyIV2l-ުk7ҕ׎ E-6F8=)͖$e©(h20Һ7|{QxW0ZOHoBh?&dvLhI:90 zդ&wXLg9AҀ߷J?؍>,NWeqSH;0}DVԧnл.#3̺k`=1RC?t958}` ],KGig|:Mwq:<٦@s%TB_91 s{hnͬ Tc8.d5*^f[v=.X%%%"12䏪b_U\! Aإ%'}=BHL[?7NKlis UbrXL"vc/kj@ՇUxa/68 4A?a!RM8ՁBqKIm}? i,߲%4?|vf59\l?w\K2"pj2y7  'F rB.2y"(Ӊ7p\Tb([=h? &K[ӯğ揂1\ͳ?DZۑLyxRn:3ܘ|\ enգ b"& |'TlFnYg(wYŏ ÊWU֡LI w2Z虨# K > }em3՞ c4kw>Vw蜟Zk~2~İH0'qbVg6xDȍQl78:G(! ItG6whk wPCt7)Re `Tj$H1_;6Eu?LƳc7ps&~ sP+*P1!HkaӲm~N0_CϽ1.O@4 |. 6-IA3!?S+nd6,ʹϝ_@;B- 8K-oľ-p=6=݁OMN293*$tU6/wS>GE|hPQK1` ¬{^bG,lё5$4rV(b4PV!-ɷkZa䅠I4o{"<\ٙ)]*\ v z0{)J&4#9vxh"uRdX9"8u!s|*#a_/RC@Lǝ^6U -pNƼ%z0T|入[s5؀KPd.s|͊g|cC E6Dg)ϹS:KƽZaV&4f?0Fv "漌BAd(j[:tn`KԂ| 1Ӫ`/ 1lzKbv P7{w`AF71͓H/ 7h{ŝy&nS;y-Ede4t%"j_ǀoF9&٧gXR$,rL3ɣ>ot无`yڃT.P5UƦȍ.pDc%+Rv?TZ Z N;2 &?4~K6S8")-] 3 ȯ񡲑'4J6[Qx3 0#=_,19$zHIa]yw:!] 3`#-\x hPX4{*"6.CB673hսNHh`ωe5G>HB'~pR(`2-dg_m8l_qft&0䴸g)ԙ%Uhf%3[Ba%\8j6;J+ X91tT{o!Aq@6jhP@ R8lT-!MZhF)ȴd@M°zM͵@d@JB\VZ8tZfJw /Ѭ|Σ9 |A;їza5^X vT:mC,OFTm {X9sSQ)ra2;G,ot}e;㫱}"؍_汁RST&3^7lt\KQ,h v5'8}/\==: M˪s_3~%> ާ,~[O`Ɍ\\3Wo5>whhԇmWB~JO<=bE);MZu`fOc ;Rk,>Ya]b R! RaC 9mQzk孑\b ϲH֠`C?(杖9vI[q4P9귎,[^E]s'=h5O+HmQm4hxE_u #X SMHl{~0v,X%Z5*&})m`X sy% ]uƺ"<2}Zp^PXEo[M$@ς*`߳W@FNc(,k1l#`M@rSX `S7*$*JUݠ \|$JkVXQ=MȣpL ]KX}Z?莲~|Ae .L&̘CO!K6?>N2PXnhx%AB\ sFRt襰#=?pPIr#<|mrM vGKVh__ Ōpznjz~XvRѪp ɢh[֝9+"FjZ4Dzb\^q<zjL8,__v UKt] =@4z=:t !֧:]{YMU RPzd1~%Ԏ{G Y }SQtYh⟬/Gê\=vt 3 A㉮B2&h0),{Z=憐af3`ƌe Wtm~x </{T&pNi R-yHש8Ƶ%ZchQ]X+ E*iK o]bPuu=#qⱭd+?vTp'7s80\J [&3j`r^UYGlQK䊏;& d_J?`n>6!S|ɳD,\ܒ; 4SNe>3G>"R:|K,}R㋄]@)J~,tT 1UzWI=|tIMQѿWN`ųDNR߀QNnYy$o0y]"TT-͙Lb>"1C,*R)w!U |tl6`a)s&n+~T䬌0YA:>+c-o:B06*a {%%.zs& v !tۥx -6*/";؊,M!V^^[fp$xt6@++$b&R2I}*ªI~ybB é*`\dxiѩx3gc?p \`Q&w(umD/|Kw'kZ7?IJ%DZqH#Ua9SA a`~'uѴZ$sg#$ufKO,9w R[ +W\^oEE4s(P hXt>H~\1!JEca(n- g#5TbOsA'8ԠRäi֖MGFKJjLT0/[b!O0 bvd㴪-$2ժ>Xx!guG^lLc}[v{mҜ`uBE!4 p@t"jwŪoc˱9gh+R ,/1E7U?uvfAß ta#yeeգQ/~#5dmLĂ 1d{&R/ғ_VOr$q*[%J<PJ~AJ LuR2o RĜ"XsnCQgoFhg%nD@ 9&2Rt5ؔ&; pO m~ZNc?5gW *C<&iJH#?lg=@Uqgm/xS,w~2m +dzLŻ|Sn o% HO$>D1:!u8j7 9Kh1+Õ3o+%R^]bT{0y8DN@!H6;[9%&[^f+n@F5O.c@ӝ5MIe38q[9p"nj/ X_˽E$"]E=nШ=u}ݟki)ÀX\GZ aT^ef|aI@cXw|Կ׉+qcGS^K!-M#%zOWTWQ֯v ʌ qgxKt~u cF89`ot3dcdO;›JQuP񆨚 av Vk}O'qU9\hHmn,NlzgD|?8hB~ԌQ؛s]Et8jQ}/͍T!7d)8'إ@Gf7[yHfS&U-G{씣 b~+N FݙE ,Y d">OIVu!sf11&w'(8CKG j$#Q\$`-9)f(p5&6oKRڙ<Z;јm`) ^Y%iGWKttX!%]yYA(-A4wLߓ&e^[@kH~ uW'[ f4Q LZGE`:;7EL"?iɷFPX+uW@ o~>%3QQ䷩ǎ2)٧_}|LK(HUk`w&b916C]X: M`y/y0Sh1Ԗ! 埌\PQ@U1D OwW^jkձmA+AMTBT-ғNc"'#)T!Er=J*; >M3q*~2o;hW[Tx1 Z t+znTQ8Hvrf=fFx?0P%~/h`UMXe6D?/}.Ig".7t͡! l|Iv!(m(Bѻ{I/sZwHCW(C0[TBNoH3!_"/ Lܹl1?1Jgư΢u&5yUJeTeFq"yy3ce. hLt;GӺtYC E_=xt9ddۋX_]Jg:@^cEDͱ6Հ-C16.y:gyc"yAZ2!ؙ1dp|!OC0YA=#I0tIa6op"ęa 6 ub獊*ڱiAsy4 ږo>p2 w;fH:Iz@q Bj(^6ᕇ#1k&іv:ȥ/5F':QrmsNd[ݒ ?XmVc {$4* C ei,Q#!ڮ C[uZG5%Lb#5~x7ۗ4?Uʷ{Hg(W>m\M UEiՂ9<;+BlҐ(e}5\(SjʥDl ůP @<+(yLϣ{ 7m/0?eG-9=k٠T!s9߽-XXRi*e[c@[SЭuw돗 tTǭ8)eԯp w xz۞l=Lɾ;GUJy $+UEEc!xLҶ 1neZKLqũ.U+%hŲ,Ղ}–bwWe*4m vԹBѾWMs>#,m&7wᢳxAzF:m"_[>Iuy "zpV=%ҽpaK|KǙCdRvKhfpgG'ASG"AXZTB^ov^IQ/7 a-:|O |k뿞 |& Ґߌ"ihoM E]Ն9-=9d}`/<oX!~Hv\ ?p c' $7@eHۙ=oOr}[[Q)#w ^歧N%C@> ;l[V \*I$^0|bd%&ry2Yd`^'jO?b{! h+ ֈ Ϛk]͞dr;O&%IfqBlG{*zc ǝ<0Lum:-vC_^"n)=BB. R}s2NU5 %B#Ӻ?Ws[z Orhܬum5淬5;c-4fspVbHARG?PC:rc0JHHl?GPY_0F`'cM؛# MAX ͊p4o8!qD =NiMߙI(u~͑Jr&jP DP[̎+qE5 .S7@3d Q:O~̣EAlѽ{D7"4M*hFx=QH,:|w % *y-yYG=ou?SX"62-:(g-fz˹$HvK{2UUlts| L{z"S?C"UeIX(4>d} IN^{`~/l"N<0bjۿ8տR 0K`sECXYoK@߰lЛt(oqWkyy7'[ma}+o? W)Q*}pؘ:M˙+Kj3}q2ji㓒Y>{@ЅY+ N!rE-/ GB+R*wrsfm&a*LdBeڰ63e2sÖ9eds^1*a$6ʐsEF w4k߁snjiq\sD+ſkͯqRF.PB䤚d g% HNWo=i'A߱Mȼ'I-Fy}C Ijž>-w_lKa>{S6b zTVlXdobj!XـGDV5t8ߜ7YTXs|,< _]eWgQ%ƪ]<3yՕ@A[DV^y^ @d[GĢ '+1bxV*\\< fr;|@1C5:+*jcAvI(#@DA ;"} &h cj rL1Wu!`JU=NǶH狇)u}IB bQ$ZⳁT@Gz=e1̶:o51,8!6$J\Ơ2مmKSs0=iPIj Bi~ ͝Lf!Wq5t)y:&@,?ߺ`e5#mS^w>G5v'8Eï󤱇pjm)᨜lQ:Jx@F>/:1~2H ,KMlXZhkΐwcʯ_PDA1'x!=25OO'~*ɞ)fq>!vk[uз jyWL4_^ewl4( ^tk5lrY2N\D]  E(vE+96ȳ%$HYLP]x<ap#4FҢ*ߣɮW@`ggȠd* +](,u kk2G`>ӦatBz>2!` @v:E'Q:NB!o74$jQ(F._\\L)fqZ~ ګhKW@jpYAW30+=b;K^U[U:I\P@m7Q3Zɭa8Q2FϠEd{k D3`C??, <0QI(M$^BPbܕG'Qbǐá~no{ /]LBxoeA6*ό;|8;ifn/)'8_>SKsnMхNY/?od> 6 /ѐfàZ9tz<\M C}xJ8X_7YC0i»h1:n aNY)H4w EDŽ:Ah.z~d=6 >b.w3:̉ED]TH_2bL(1h׼, UP+kp{dh_dYtQݧҠM{Rp|ܧB{tR Lڠf]SS2$ _[)YׂU<㣶v)}'@adKPUOOoM;K3r-麍yx/W=A XA- Kkyh 폅 96o,\<ޖEX /ĮIFڮws.>W)~:Jem¤dE_sPY_0)O :85x ~+VOMȮf@3Yn+U{g4opāa,m6]{G {tu{4"AzGc\ *U[mq1P^3dFydy̻JL.E6 62ƪ@֑<\N{TXtHpr!2+-#HCIާb?5 8 _,pFKC񒶀wC`Ef#bi .(Bq2HB9vo6^toe, J@-Qt-7#̒a1~7Mhh@bYaagR,"uwWʣ/`GRbk%lK̓ΧQ7]uP $&1}=͘0sjm&JZ&ާyHlʕI+NfG*|L+YC9#vednFԦ +hHpy?k.oaXQMԾ,cQ}co:SYwj!%"gZ#k)G J ;!U> fU qd!M${C ):K+4v;oS1-­W%b_*.TuoP9ĂJxlj`Aӑ cBI͵j1T)40op0.E1(e1<)sߎqn5CmOj0QkeKT9#i#l,8N>wJ,zSY3`;͚h.^4Thgkl3>[(hg]oyL_XKP@|XQT3Vo~(O-[F\\x狳7x;eWqr[UR;3'Nk4P^(_rO=Π/ K)R(n$&YX'u;>G*l)JU _.k/B `)(н8:62C^FLIҾ" ~Pį[fz.A^=AAWȑKBQ-5Ċ. :i$Yu"U<-Gkzү"17eO#՟!\mFIR ZYK5Sa[պsnbYF:52|6.\'X< ^b1ϺI9O]`qEօǀ=N6 .z }: CQ\Q}~gUZeI3ެ67rY|nP&TUH#b 1 -P8*څ"FaTokf_vK`[)_i ?WE uQaM|ª(rt.4@>:O\C&3'hJҨz8ælJMzkTs p6Mhчi`2."TƱzhއGE ~PNd^]מL!#U%gl:\s2 tU6eO(Q9=$,,WB,-Pze2#Og6#\7q]{ X:ExCh&?{rZBТq7=uّ@kґY/P (NAz9T\e-bh챹+ rw:ѻN/j_%_͢Asl'; GPO|T+!p"4OӞ]ux,/ئ>XOK˨31,V?(DN[j떲3G [D G5 풡O`f$G7 ^R~T# -^~ amh uheCF`;/LQqF&|-EeR)MP- nj|DWݳvcŴEZQLudL"38S${=v0q'6!:p7t5D_0ޭ=#o*U'*lv]tŴflcc #*W \nYvKT&ҁǼdy8li:x8%枠!hH`^=|M~"ew@' {pf|) +mس-ϪޛSKo|B#nŠ"n-Pozr=/NPC]ӵI]IK=KNh bQ' 1NR' Rh@zfACIiVjPrSz#yR%=ULey'* ];Pn?: Ini_4t5:0q?يewIij Zʻ9NR1gٛU3t7\MgA#\~av阴52*Jpxfl\J#s։[Qńw==̋ !/Xp"1޵ԲaX1N5AsRd>t: sJpK6 ;>fN$~S0 cu<*iH 0iB?]@25=U.=آzM$`QA*2*a'jfJ6avJaߴ`=̇acPgAGr[12 ~$~IYl ?Hk#0*B[ˆ]G?iB6wfo+d9Ⴤ&D69п-fYzx87ouFrA؀((K;<e-$ն2%$QDa?mBk[i3[!7-yT%uHXg'Č!Qq;("蠣vQ$[Zt^V-8.o,C+5$vX.eCt&坾^/$U-QDb'4]?lsI'K%NT!qU,&mԏwAQcgXe:h1~VܠQ@Dj?e=zыe~fmRй9ћԀhKk}@'S?,* >b5_WA\ZmY}H)@MvW'00~ۚ?~N! v()f"#O%)24[> u Pr:WBS d uk\n<"IɮMF_"f@7[LPdc?FDP~ FHh` UHzyg]&0i[VvMS9JTWiZǚA)[= H|s/S%9Cefln~wt!^'׫CܽuQHm_tUnUfGkLS@̹ П Ir# e9C[xJQGYCsD$yvͳCo8 |aO&)qŻY$x"p!~ʹ1=;lJ[-R)kt=ff-lzs,6ATJC5^Dǥr\Wɘ lJgq nC/C$(vf0?*iL1={5p+R],W}fW]-wVQx׹_1 %cؕƎA2#a߃Bb( N tw^wњصAnvSGfhlhnaACB1KwTCI2cn%Ctc=j:A:\lmʝ/u.(!ކ+҇%Y_AF niV8^}sGWmM C` fnL oj\@y;C{Cq%y> x橩zНTmc4=rD!~+`\5ʋAp!OCk%' _*Dh:e/]틇,ߦAYƧ4 ܻuk,X=DZ:wA.BVM\|3X]ѦO) hr~biZMWK$.sK8+?L)٣/pK jK 4+l" yi5;pq烳 ~_^{Cd4K=`[O{fgOpiDC Dna-?P:%S]V,&9<"&]rv=l]A໖˃|D+ye[N(3+si1i{k.+[ _j6DqB9[)|7tAoDW#K25P-қ.tFe)A DkDr;!8 ď_IngnuэUr;dXP=<%eha0|Md.]:=y<]~o3ʼ8:Adˢ*]M#8ŵ<)! c,J6J{4-ZA* -tH$FkQc9LGLdh;5W~`.ru],DVE&|Tl}-$XB^HSZN]c rdk/FAdG8C{M!qz gGsX,a4*x[/^K׉0-~"&%DS@9XN0~gx|(ze3GLcO+tWdV)-4 . 1YciI^XJ У\+>#KCEY- oX$31ZVFog94^@$ii,fL/IN=\v^MTvȕOݡ@vA~6?ג2ξӬg*\e}m;2HBNAZjkL{lҜɐgG;p }~l7 977hٳP7p7WW<027˄ #ۜzI ^ ͪՓf# W,-Cy8.zˡ"-)H-s5H 3(h8jT\ُ1E젢1>ÖjHlj'Hd&M EǑ0?iEsvcuUp%{uQDU4%Gђɵmx$Ҩ$FO9Y.NoJQLӆf׈NxV%U-l}:(rha@jn9.Yy>Df{&WZT(=~QP7MղG =1KF.6M 1XKMƟR] L٩%2%LNz2fPExtQdX}F>"^Ah'm%)X{<ؾg8r|OL[mua> ^HB{矆n^h/A?_ܗ`\tΟ0t\9_vDT8 QO]W^떖[+6|j(t8bTɨz#ӊ5H-n[X1p~.9b^Ў҇c}fAeJ7EJ$ޝgHŧeY@f1=ZԎmH^Rs~ΘkԭΔ!{1K=.J9x"F#XD/n477нq~ޏ|pBn߈bzr jKSj:#nі^vK Q Ula)0| I:bM}t,p|ɧ{\ߛ?+8@7$n\Vwd7Ͱ68xvK̆߭I:Yajj%5ÏᤸS h֬w9:9 3zh"=쯼E]ß(9)7%mc#RuބFtT3[-4hZ<*v(s%XbOތ"! &ߡHm*NYeQ뽈X5Ճ)篵ɹcN8r+jO,/qtٝ f\>ftLUw}%"c]&v@؊دďFߜ 5W>!yߧzsYjP:N8">G' JquI CX*mdbH'GX~3DnW1S a~ h4nEE/--, GA &d˔cV0oka ^DC%2hzIpFషfш3xV*je+K#nËfi R|@%X&Z ]NxZ򰮌E;3X ~# >Wnj&OJrAxTwP9DQ|֟"EDknXIڋa<<PƐ`"Gl9裐E`HA y%8"zOzVqҎ3?T)vcmfZxmZϺˍ]9Hgkp΄l! Ž%a*pĕ H*g*lڏZƜPޥGή<MfX$/!ȳGl%xWbSk']TwS'6zVsv78?\>) j(Iq\\e)7`{t|{Ɋo}vkNEH׊ٻt&t91 -S £g*}靑󛖿<"YcZVDÊ÷H Ś/ z%nWZ *L)ʑ-x'Ng/NZӧ/JI2,iˁɡz&uٙ`C+.ԁNh#1~%^.cQ(E[Ɓ E]xϧ-&]tCq{. )o.hb} L&O43%ƭ`&L:̣Ivt=p{O? &7GLgݝp4m[.oď$L3^xDzaEV"(y{8p <6Zt"B> w|?6V(lNJiϲ).uޒY46]F-8 e㘌C>Qo?=-֫:a~-pH-겳:9Vt!JMgBrfO/6Uem*g~u>\l^wO3cĝd5)i [jdkAOߢ0v+!#NZ#fk~=A9kdVCjgMR<\;YblҬ%->H5E)fSç]X!km49t飉ֵzήРl NQ ;YUƫYֹt!ܫgB 屩1Rrj'AVm཮纤~*0xS`~Gu!fąa׶mz4^5 %@o={S"H?#%$$P kEX»eN9[⭋_}=rT"Hn.5]A{h6m<~'&~7ԦRi!OKF9U&8 +Kō>I}VZU!^@Xr[6/C4{nob蟺Cg Te~SI "L{~ 5y%䜑( Ё=}Lϛΰ, ?B/E?Cw\1":{;N@ꇩ-M30;]: KeD(>$_^pm>\H@$6'`X5Y!=ThBŎMZPҴ|Ǟ<=18Cpd,uvs+ik&'sH}AIPh]mHFBS1IEϞmB"[o)O(~~_ql|}m\dU^DJ܇_خ+鏟"RUbc ?lǡ/LAeWQq> <*jSNQg 'W+@S:Ç$:LNHB07g2c#,|$V]gSdzJyyq!#&7Ѫi"]vJJz (jXx{h|pz6|XV~YzbCw_/Uu!3M4 c{QfV͙5\ӈWPECcj,am$&N 8c|Hb¢#9C-*|mDKe Q+ſ+^bDb#Ɋ6@ "}ʧ$_>П׽yjpvW!aj3F 'A詢: x+%bLy dwB="ٰ`^eڃ`C[TeqԽe.>C. h)e1r8CA/B"$Gz#Dq;. 顭(Rߩ}m وnZ,M#/e =ƗpM@m2ӆ@m+&[8v'G{r#hۆ-?6QNn,)I~AtE<*_*fHo"HNտfa69-t1eEqnẑL(k&Rb$u'HBvQZWm$k6 9R?ּB =zCуSa:9ӺsƝ&ogB&T`FдzijkM`.CB-+<^?h/eK~8{ R1bq{BpAݲ!kս8N B;j׃@ ԓ]@19wK L9HNI%vOCr٪(A^3zsV.=YW-Ȏ7RL<$6<.?Bݓfvdߗ!qzYGp#=!Myd;MC/Ecc㫂PhRmTi:ɏkE(*Vqҭa8L'H/juu/S`OM뚴^><ٮLz.;T%72 +S"=l= .o*1s0#&J2}mGi^sep.s.9pѝ0kR5D]:C3\ _KueXGчϡ )igYMް~|v)5#QOM6:#[7¸D heIڋgΫ,j~ۡCx CV)6.v0Y@9pATRPzv7 ᴉy,~{JGlYI9tTşXM|{l}Ä_f)c+Ğ KF]o,tA|37h7pU^Bx{K]},j웃7]XFUj,'sMWrcA J)Kw ˽nH0^sKW02S6s0]۟gv͌'"xӘ_7O&DzJ]\~g̠JĔokMG$rxsk\J'|; ,j3f~8 1ћQ,5L޽g;9P wYrהq`VF"cEh.B3Y-+n_G &+Og96:D3}X1$^0iw[sn1ID&yG4)XƉR$J+y}Lq ʋ=Q`c_$Ãz£Еk|DX!?񏋶]w]r@ C0i֯vB3TcDscQ:8rle4j9+`:0XcK}q93.kZO1='\EGy0FCiKкlاev. <һbT\U>g}7G)5k"oA,9(Uc sY;C{mQ':ɕLgۙH!$~VrQ km#%BJ +Sx15Kk$%aZػQK PjYQ@$R̋>;E:j^~W1Ga"{}>x<0TA33.p_Պb1I6Zśj!$ |<|TοS `C#Frkr'(q*Fb*:f=Q آA c qMe-έ]w褶2 VQYJ G~9!1P\ MpO6 !iXr' OD:uz9])P&% ҩ9ɚLgTnzba!H 6Yi/L3ء+l+0sC}ފ֥>x!}ahɶ 70O{!c2+;K~y7=F7^iS*e)nH4h)`ٷDF!kK?i#<{@g-F4CY_~F=0P>pҌ*qYZ +n$^s1mvFs!+Fq_6fn u=TVPBںVVv4]vWNܭ.V [^ыe٣pk}Η!ͣ/1 dcAUDX;c]!km=5 S-qFA ِKZx{4x&mK=aB\4w aZ$EJ?YQ (d7a*dԻ^™S=}K=qRji-&Pؖ ִ[Sє\ ƜfF=NL3T#;^ߔ_QT*Bu՝6MD3e O9!?!\NbJc* Iܒ,&r;ޤ5 m:0هa.(%|2`ykܕbH,?B:)^{ lmT˰!N,bL)Rv J~ֿg HGkNmb@ÍwlL%\eiIߋ3]nZ`؀3IҪ *ZԵ0MrRe t څ_.߱yqO.OHU= qSatlںddu*_d#K1>XfGWv -.qxRo>V9͡ blRjqu/+ `{k Wl.(+3QcX@}r. 5x'Mͅ )if:3pl[=]gNpE7㝬ſEp$K]tXIcpM!^`]^Yk3>e݃ޚ~N0500v쵺>`+"CZUBzUfwM pxY]ԁ`H9YgTfC#6Vt@\Gvh(դB41b {f2W|8;0f!龲çhޕ|Fk0WpJW$,ؓ:Џ)<ʿ@؈#^L@G-J\.O[6Gq*%ԍG=.H~c3Q3!m r Ⴏ (Kx=*!ƦdHZ OZ9C7s~:HB#3V3AZs8YiI7[:Y`*.oؘ"ё@N +qlkDQhζy+qMxϕAƋLifPTPMoRcM o3b}œ XѽҪ(c_ O'%|%˶_qs1.'a(_n<랙ڣc k `H UYOT)-lw  73(cnsD4v\l j̤gNk;WvWUU$9Ϩjiٙk;' MvyVvh07_iYg^DztDz$YnEʺ&rTzpB/,փ(z ׺T{gF<Ǣ(o~@x"'!ץWKz{~B ngmpخ꓍ؿk9nXP u`0+4 2Q~PdڒMX&,^$P ᑣ%Kʲs^w'½Ζ~)Ql5[O\CJ]+m㪜^#LOB-/R/7Q Z=6r96Z=ӚfJB2W ½l,cБM{Co vwfwppkJX#CR)m<X2( =7"7nbf`Q 3%?[ r-,iy2U%WItI.$Cm@}[Xaر ?FQ{r8Gvk*+yF ~*$Hnնpi4|2N]h79\T yhzz!}ͤGc=ANY![^^v|z7SD{Z:*,vW17!+9XYSkIOΌӿF7K3 '3dGEclpӏ"/27H."az#1!3Y;aR:ӄLP8&}FZQ ٨]xzFՊdї$26߼bœdv]95Yixe9~ $Ǿz9By;rWߦ/L륷}2$-,$̷Pg&㌢wg"H`gVژ-Wu'Eb(!taAN#  )6.W|f\Q:bEZ-|f&t.2 Tt&NaUCRvK]hW'm$}Lp5bsǖhK]Df؈#I,s1O9q.> k$*riӋjh?w2 _sd :5 dP%J{+ɷ&.6SRuu%;>nP$wYMd tf0Zs.3% R^u!X>-]}V"D?Yy`Sy߿ǶxGr&F&kO&ëE8JQdxlb5Ĕrb9L(e=У꽱SO7Іrq~d7U(,/ϊ6t {)z)R5ގB+R?5>lY (xgby(9qICcLZʤ"'0TR?K;x8jNoCnEDP(EDt='3ZVH݈ISh!]&R,~{LsRhlPw\X alg ա`>j9p+E6-C9')|n OΛ-͎mA}ܺhv;C.5# $"ϫKäVn>/=SM_'j%m)?12- \oO] {nw|xt}wVQ1gB$ۈl4ׂS?VzLr32z5@[I~uL`h;N(j+Rn1 b1Q,9"ey9jQ5TӸRz(^̲3y{Ĉ2?:-cТ`Uy< E08~/nbԞ3z[b+r:ƺ?ypW(KO뜋+WOirWwWOTuBy- }O0wI<]731AXy (yGUfGW4T{k4х&Q XvYo]  #dp?*e-|P;hmSrMcڵ} dV3e0JTr6?`+t,=ˍåNP~cC.\.)ǴXO}8rl^c LBɺG C2Q"3USvyUM;$a/pj2À0n (yHD9ݑHQ[ڌ. D\ժP.{C֭o| "߿ːPL4]G7oaqIAwN jD|5"ȹ~:1.bXVWUK=)##NTp> Q&¡zU?+~ZJ*]E`ӳ-8qr_)E䲋BS]rA ũڲ0wHGՃZT41/+M~RK*0 [`3F9M~!2^CAHB"%s Zѽ{9B4yTV߀WPkЫq> 9ڡhI~c1?E<)׮[ Ld?'q{4p)2\GGVŵ(v'Atǝgڤ} x5o:GdRfwLܩ^&(EW639w]=GMT2v&&떶xSfR뙹ڂuﮥ)H4iY![ Ҙ>~˗RΜHUj[%}h$ liKpS$kӈP䍤Q8IǨ&#XQ)$¢ղ\g3t]MITR[ !ڿ⺢k{rXb@`; ωs% e(AjwK[u~mR)'%I呅w}qFD bXYjWBfd?!1@P1vzfVJݞ,_ |crPrְI6bObL q?ELřb#d>iT0@1k`*o Im=db1'+Yy #H$ eK?ұ=SrhGA1-jː2oAÞI6 Ei(.i"MzQBl·7*I=oT>ـGOI XWu~Q BDlS=XIl!rS?pxB q+XpG,alBRsLu2?mgێsz^tjiDǴ W8)7·:YK<&Rbt*U#э +Eoy]&}?6*HӠ{#Bؔ(/}3+kFlL#d5#(mШ26 h. .>Jh8O|>L,FoŞd⥉%^VRx$X],,8OV;@MC޷YR|AYX?:  df5O(\m<l%a"W2֒9jMAu.Jކjn;u\wxbΚro9%.7ѵx‡Sc=tvbǗ}*_itG Me urLHߝY0]1%-gW_-'VH_$:Oޮ֦W~lܜu/hZm)޵UjDkYq$ (ǽ#oFN1gF(o=1-da,88=t ^\A̷p^ug$^'|`Y;L*U7H&%N1qXʑ/L;3=ء;IGe ;z ӾrF]Z¸N m9f07ȣh i?|(?鞵X;Pu/EGO-2H 7 ]0 <%Qdl袇EuMukǏTpAeb')9I/1ҀFRO"H13wEA-lqD>Nq[ pcs^5cne#%r¨f-=8<Eu(bOy+O y޽`6kWMpqhFza썖Y<,~ ehq 0z}F^XlU~[@Pry4OAq[aq"6y8 +7ДѰ*I696E)inE!OO~Fn/0T:v[7VI@#K.&UO#.dM:ˆG~efs%[8.bJN|Yl ZCGjn v" Toe49'=M2$?`@3W ^J`>-^q9[dz$s}L#\OTq ΛpɩVX ""q\%p!%&R(W_&CHZYWo>RDOW.o#~.C`:iIBRC1Bb tBR1wNJ'A~_W@G*]؊c.٠ .4jMN1_OisQڒO[?DN) {~,&-T\p^qR0v( Iur5Z*UJfM \ohc 0$2^?~j5SJ"=jn ~0B0iһ:R jc1UipCzo,0؊2qC[CBp;A>9^f``ITOc0¦0>A!#Q^kœ7c,X"r7ctE6 yvu>ZW2أP(b=?=.ixma3ȵTT?l-ƃEܹz׺آL¼(j$j%f#| OBCٲoCu@faMu7BV@dr"abU&~ݷ8=> *KLrQ6u}~[td9!zK] uN7k4iD }R2D36{22}]"7Mm[)*˩DNF6<\U!a#sc !!;Բ ysNO,KVU!P'q0SNcA&qҒ恞 +g =Ùn #F#Sͧe\2l%qDhG)+ȜYsAʚaTb`NIc'T>*(- 'im|TEQ=g՗XTF~f*{lK"{EhwwRהw PȨ쐫ZUŃ|3`v,)6T ׉FD@hL|t8T݄P񃅕}biK(?Y .R9g*;j "կ]Rp>4 ,Z ϥ.<;XKXH]K廰"r~prI%"ՃY ^.C˦\z/7v*O˰ ETQ>k2}ꩋ/ـY\.nM&T}P}hx|;`~`^F EZ>gpʼ%!*bfCD|/Д~IӮ+3H!?c1\ZD!g!5I_:B XpD{)f.u x*@7Uȧh {ց -U** Vd@eGBlhbOƿ}9(j}7F g[]sY+dg Qm5&4N^s"i}2uļg<93cǺ|8vQs3z\p"tpiR' f;D@ 3d=T c+}ANzV*77[-:sgLIg[@2ەLcE,\_>H~^}}Mw?X#$ȭ)z^"êUVHT]})oY:m"|P8i>Fn4ݽ:9Zl5s^v7|T}(xRmeo9Sl܏^ XZԿS\Ƃfh2vAJå楃Fca -.22C a$'g`WUN YsQ~8{LҘV"v A! YT32768^CD2 :Dtucj7kz>- I%xzjoaJ8ëKCd xWK 9H|}#8^<3ЮLD}H~cdnQ &g2`(usD7S@3bH=] $MDZI쎓# ?~k0"5o ;`cȰD>6<=#z[oʒ~&dH-U-TbGü_odRQJ䇈1b)b Dh/!WSWW'S3L1 ( ǜ1Q9mEa Ord-yeકo7|=%nip,}t᫷*hLwy0B'&*4:S4|] V8e"|p\ mb&WK{ʤ4^mg6}a"i>o*O *{_U}&B&2;xϡ⶘-L6c0+f_֕QZXvQkCZoSQ('$ja^7f7F%ȱzG#WAG K[9&cEkeb@C3HN󋚎. '}.Y7(C;`6 s 3$XZ5Й 'b)OL>` ==mtϊ z YM fgz8a|=gxgl4~\^_EB,v< (xr81AbSZ_0q|9)*3zTTP{Ho aX X M<G '͇lNcUPgugҾ}kN!. ݉?.0a޶MrEL@D/2 վ<Gu]4<.ve,eQ|A1(b0pi׸ؓ[-?fqV%h3+F5uλWitc(߯R \yb~7Wi핀? xw$=>! uCBFR+"k|ښ6P-d'ᮨUB;~|wmAL|cڠ ňx!ʞ=i(]`Ѓ*WyNr9v҅Vhod\2\^"V:*LAʵ\X#>y:#k H:Q+K/kUjVU:wxb:–@u@ #ŋ޵"%) ,^4ǹײQ0ƥ^jnE%{^R6k;h.k FMbʩ~Z-TWm$oLuD6OH<Ss{ fk3eOӁŦjз{_KӁ~NOAy/)*)>z?,&Ap.{M(P/a;^<5E88-mg{ %?BV5OƵDX$q>t^UBnk[5+t`o_0g8rȉ }>vŒ(@FAº bP-cy0OwƛCYw6FTYsY'U&jV P5NPv Dm.WNց,Fx`D0ZE;J8F(ۃz*ÝxWlpNQp?k_?~Chsހrv!%I+ b>@f1uU8f71lfFc1jnC̓ܕჟRq\LmuBB44 /HVch֦n!.}B '1_.ؑ6C;.ŃCw#lQ/T}Xtp!*=JEp ?cP $A p*S_n7%7=w*aVFP6jQ֏GSA1*@-92Z>QQ/(Vt7*M$X~ᐒ˩~B^mɀ';-O6R&waIz (HrL! IJFZU`U3E7e`qfռTW9]{]mz[SHW ry"pޤx_U:D7 w' 2V_@gw?n^"=2<2P~ H88WEOt,%5j`h3: yvy+EIǙ?p' .P\+>^ӜFuГ*); 9c# V3o@<Ĩ&ee}c9Z ;e y~DO:j#9ۇiWU].>DsUJS73.ˆdl 2Z92T졣uԐ3w's? 2#!.)AGE,kIBiX+sG aӼ]Omݤ,O<;@7pQI7Xdp+uy`Dԫ]LuM0M/-Fj8 be:@L1> -nec"k|$=Lǻ-D]9$--q'Ӄ>ow R~(4ak' ~u$Q̊3V&0%$XNmŅ棬czF-)[ƷdX,SU?ؠrЮ"uT!sl@!_EХl '||(\i${< !2j{mÅ=H0mW "Iӭd2RT dnY7큂 1.ImvԈOD0U@_Iiu|kd(S~; 2~䮏t^pʽkK}.Tj#5Qii(HS=Ǵ:=fRAV[@z4+\VPw.ށemغ꬞z5 `K9\EERk? $<4ZR}d`|SٳL6(FѤh<.Q):kB\ #XZh: 'E2cjGH֦ܡY|RH BI ^$T8MX֕-*LR_IgCz-53G8]1%S%XXfS ܩr|'lq78yqOV6!`z0"L+C`7U3,U2MEUk/R''zm<" 73~DT2S&-Hb(]A/ /'y.5i }n~#U=()UU+sC{"2(UZmݸN 94.(}Ԝcm3Єa/7 u8r2RʳMaz I 1M.1*BA⹸lD7) 1yP1ƇaU}E{%r.\`2gs흆zW<4[un381WXgO$?[ gꦏ^/\k>0 5fǂǶzI1>@C*w&ѐNSFI@ BQ TvwLZ[m)v\ߕ#y#zr<di߷^_zzq30 0q(ERΡ56^yMA|T E#LTz9͊N*pbt$0Afk=Va143`Q1l.؁Kl^5E*y!SQ9vNh]&ו51  p&.65{JYi\F]@M!#`̟-VDt.ފYQJЪ CIhkni/xy.O@3tc=3dɎ~I34н=  Ƹ 38-oN`̯t)3< 1(A77SRae\؝b=$y~&&Ey8d_e"QlJ|x5$ՕL(pX?Bصkpuh!u,:T2ھu6oSq.U4hOWru+DYH#t-zCjҏK4{mkך宍t 2n#YAJ+ƪ*]`paxV%(3g)tN|j'uC7Kbj e&ak6ӜE&vsxy}({: d%{ Tgy_Hk3NDg1X:s2Tvy4gkOP)Ggu](m,WU`ӯZi^-Y{鯲D2v^!lTrs|Ef=9z ?_\PX58ӰORK52Қg[ݎmPۘ@:$v#_}҆lt9xX)Ijì_sSbՁX>կH~V;A(l@ثK0{_bfۃ%n6=܍`ɫJ}CMI$ciMuz(vu$IfHY{5br}y. 3̅7n+X3/iHAR;`F͒ yN) XY6d*>FZt9 Xtm$8_k*(T50Xđ Nak_ҩ/X.v"෮vC:O4e$!IfQyGN%-wХ2T=) (!>OCk[Lϝ7 OE`šzPn G w{#j+}ي"m 6KM2=I#תZo#FP4=YGf@/m eM גci p9UO* uĹ@7u[ۜWrC*nbU.!d7Pn"B۬m6o9(y] x./AA\{5N8sB1⒥H2~>6bs7c0[ ʙک:3X~Lx䷆;xqbghݠ\Vv犃֖_)RY@'A 2cĮ)>K;YػJ!]\ᱜPfSsRNDUMMjk,nS}CE)q#?Ot?ZX\@X3&dޝ}~AowLz~,Zsś'R̕>2!\lF!9=мiN0diް+7~u*Edm:IOB'3ֽSufywuƶw,B*6r"[O|uGdvqXw0UB\wT3(-.)K;Z.y0fP/T3 EY#w<*r #*ͯj SsԽkܑdR H{;0 7B2zO|r#FJÛ6лU_nq Н8<("2)@ R*bΪOFI%_@,\ޅHq gU/qރd^AëւY5Va¬wwy*DfDi^EDn ?R))Ug",ut kxkL񉕷4^푥J h :ԓ`Z: !õQ+7/`]+dǜ >,a[bNFT͛ƫvxhYN(>q>V\c[*5`p8ailg J~r'`ˀT'q_"\#KJ|N@z(0zȚ^Z+䭄`L-Ia&k! ?GD=F 1{>aU{[tc'PƎ!V ?|v"$[Gyb޴z$Ni쥓ZJ}QaƇI3őWy~'PWtO]qC\qJnvϚK]6C`ON"ƲA`ggm eo)qeEKf]r)T[;2oX)-Ƃ+E-xq|m!B4Lb_>ɥ 44 .,h=Cm(`fDn^B-m94Mv(u!ٝ% E?{ոgˍ'VZB@i>dܰ~v1axXy_3W+ ,&jd!A%fb29'DŽsv\.l3|Viw5SIőǙ1uv~/h5J3.nM:Xq5.u5!+@r/K}~k $ם )F{қH'Uבiő0|&3-%č{$h~湑2! aނa5cJ:d.㕤/}zft>:\m6"c#E̓4ǃ]Mt\6od=s,,Is6I7''|޼$";: gFiU*5n Ie;57סvqXْ?r{ ⻪8Þ Fa3ph2W__ԏV0 {[0Vhda3锇[S:,fO ˴?)|>tn'35˩^#D-5|E pF%g/:FY&k[ Cd`C0^2 sjURZ3 J|}eGU+bt_]"!mW"(<:`_ ݌4cxf-;MLD+Cw0dKIQNwinkkSLyF&ۑFĻ$=~6 [ɱ7,'`z Ll=LNR;f>-zJd,P<|Cf<Ȧ Ƈ\ϳ:Xcvxk[tSO*rphq׬r-{&w ^7eZ5 #ٴgȠc# k%h&֑RzikN|N\4幔/n,FiWSV(߯QXDM{M}K*ZR7 ~'gq$>wgy{Xt#tr%4Z{ ZBnjP; űtځ1񔹝TxSSש'viMT. NIi˲O1D ._{}v<|aT$'ÈK#TF`\A~_˻f6 vRḩS`,yAkRCF_ y ; Rbnb@k`v"y  ?~} ~Èdg8nTK!=}L˺De` VL(bm j[ FkFn[xu} hڗ5.tOǭ)y'n͚[+TR&ܬO:!Gwz}ϴAbE9+'z0}g;PZv(7R*Wsx x &Ch__fr -F6a G"hPJ"ɠ|_tW/zo`?O/2 `ޟyFL֑2Mosq5TF&|윊<$#gk R=[@.s%܌'r&2N Cf2@MlטEm@ᝒG'}Dr,*t%^ zқ~åZ &mi}p/![~R:/R80#nX m$w^q/N\o8_ i_79( Mߗ`C,[ïBSnE"2ՙHVxTfexv*rނ`eJ{0/ubXZj׆֬{u"e.xU2xƮRaW{Q+g.rYиbmG6.(]Z8$n_uZguu٠:FF6/GMnU#S%̮w`I1٫vD$$CB̨o]ƙ[tHwS=6܍&$p1f25d+e=3߂0)@i23Eܣ$Ff9B70{ 9L!hwq|V&d2Ds eJ XG99B;d^czM4Gp-H~@GAb'ps#C'h-]E!lqf,MU:.#'[l/^^l~g$#YDEk)!vԧMԼ n>)IU:2G Ӓ8coJ`>xA޾dK' ňxdK0a -6_oj֙&AQ1~O^c +m{v:H'%BpUyv ɮd~N=VE4U{k i{ PeFv'ۿ~X+IG#3'Պ ҭ LaG!62 vpNɜ) ]^9db.׿ 7#juC_a(6 o<194]31(xˬ QIUYy?rR}jlܟS=5%=_΋ Zw uJ 1ʓ$>@KjW䐺Q&hy(VҚ-7b#btHq}ݎS̖dШ 7C aU"?B$l|y)2 e# eՏ$xސju.ۥdq2\ 2;u>g<$;>DNā7=?>*$n 0#jC$3FxMdPg";:\F4͞=7'i MlS^U$@|c2|Hᄒg`::"lRNݱo1kES׺Ju0s<QmpʣP+:RdFpbhæL xYXII K f*a*8[=2%Jn/ECiPeˎKEI7cLhLf!\9Rtp%,9"D[mb}Lx8аZ1"}8Ixnk~v}nT)OzBW6hlꭕRL3gt0{"Ɋ8YF[Zi"-3PVjZGjE㔴 S*v}͋"Tmf3miOʯ:1nY&?rOL.9(T( {wAO^L[\!Y?\ߏ:Py)tIІK?H[u#Et35>-)p~H9R^K;M튍noJuz7y ZO!Q'rhQ$j06J'<7|.pmEx=ȃ9h5\ehvA82&[˾,w2л4a tk$hs\ m,."UzÜur iΨt|էDke#CwoT1RH7(;,elCp-ϑu:JDy䧣@Lҡ [:}8M3 ˒8AƹGF,BC K\Cs'׼T7sͬ8]ȋͶ0g.t2 ?* _KA`cAD 6_;'XNĿu1ʾ&$JdU=䴀;jDuXrVw K٥bJ367ΗF`R`4#ʇgHz彊GNݚаM#'2A2 T2V{dhRQXq@ sMo;Ȥw-A=?$ql1qqƉv>,ZzB$w᪶'nA\ydu}cBR⑗3~XLoQ./{dyLM~BZH4+ip4^>).s-ftqiuD`ķ`Uܵ>CTIoT;'\̲^{. (E:U8)q ҦKr:)tct@~aߕ^e\xff4MXΩ@?my051#܌ݘl*\eyĊMTջSVuqeƛx-ޠB7d L%wqȸV+&=D {BL ԲtB>k&hM"}RMJpeHCCzo]w]C7{}{K7hT+s?qw77k]ɷHc{n,4}4:=! zHrx IyJь=\.d@2E `~Q#R O*yF2M߿9'7y)Zh@9%D}QI2Elh^*u~ ãB qw{t#='i"<(o"2c}7o4B$ $ojMْv)&嫥oOEtjҋIz!ܙ lu=e2]h"QV7ףŜkgtqdnVϩۣ)!Xq^C}xd,4[Q}(9a8)(OlT2 ÊA x.!19s{29IZ1^ݶGFȩuiZ-8,n;v ~/phdVbLr0LˎE]_Մ6:%r]I\֗s{W N.=1[")<8'hyB`: =њ%sriwd{2c@t8>4\A~@ǢYhZ%,S䷳r6%'J̋Dz"(t%\>`\cLX? ǧ!-^ OtA"O m=ƞr^fzTo0nYl:ɦi=c, e§b]T22Kkfх$onO =UؠcԈtes'^H&*:PWm|Qo5S_/`|j!6h`c0C"},~طPu(~Fm|u-. Qm/D7z}3s?Xn>=ؓ C<7TF0im ?`{PN.6Tf~~/ݎ&~!rgiy2c̘:t>|fvX ր%Y6}_$i< 3hp h6 aO%R-,}ۜr'v}5%quYXLQʴ Fhv]He1`}5Iٽ~yc3@aeӈǚlx4 .d#)1m((*t֜Uw(tx<[ckCJO`Y!OvuU bm1yXRc[/%)wi<[i- G# *: =h*б*&$I&pQ~#₩$ձ I<AC7RXSףytEq>5A}DɑSAEכv-BE{TP8ųzZU-4. "IT %gʢtLw$ mMنwZG xVFoqm^]Z^&Ђ-T՟􇬻=@ԝ; If}yXjCF7ҙ|ت&-N*Y㸕 \" 6b]8yMIlgڗ@ '{#Cf+y^'Mǹ+eƚ:C\)oaLyIJ y>`8_V= rȽ8rux w=,s\y3ґzܕ_\#ET()}4% AuN1Sq^Z5Q:^``,ΊDѺ#bݙ0C30 jLJ൓)j]h\Pt`q9B@\7 RnngbhIOԇ׫, V!A_<=4L!|$-,7Z񪥊nBȀ~9o<]CRpEy8aiױF4-2_'T#ʹmiޫ;S{M.i  M,UVP!]6 !qq?%јύWo{ZkP9FJٌ4 [1_QƚÃ!; }7(jI ɋ]lL˃= ic~fi QrnD * dvZsVqJeG|hN:KXaיԶKmŸSi!f*t6#DNV91Yh69R5j #%CƴrcQPV\]݅:dPұE(8 <ҽ<\9jOpGe߁NvEmҳ 6`?K&^yB6PP^7܋ձru (f .y/lo|qkDV\ayCCd|B ^ BTE eJYj(R,4[h$3h8c*}W[X ӴV@ YĨBDݺR-Rc}R}i4[TZlf2/0L=b< 'H>ɓ $kAS#8G<˞JUX6B&:Ff00*߀2B_[&ScJڇo6}օ"Ki2/n K~3&WF!FQ[ . p|&q)>/oJ<$l>Wfo bQyFq[e8ʌ0`$dF;&$e>O24 &:_ZUl ؟;褜 ̧5 xЄH"iI鿜@^"{rI;)[ Gp9j&Xp%V׭d*\QahYŢ%1QY؇$b4t#_szˇ^ N+O:h/l䠳 `<>f&'62V ̙p:!hp8WAld]E *&5~b&XYwr\zdu۠Z[΍pwcoYLML&H' [A}7`n -@<1~e|0\bUS5ǣAG~pm?%O]~iF_1nfZԸ\VߏU5Jd_;EFަx(Dh0/:UH aÞ9k] ;P 4Aw#_UGCoL.Kuk?. qEfy33Z`5Wd3<rHigu{x''+*-K}bY%5[z+ ;w%8 Tn|- R^:;v/fkxepj1jкH9@y3N)/T+O־$,Q#qu#O@b)R=Ms*}&qDA֔Q:jX4Sl F 8wډXrmO& m A^x^;΃ \qj3jLn,jT1 jPlA ՆmA,#?4lCOawo+N_ 'z MFٯӇlKW~TKєf4 }?p\k2Ju>U65S(y0xOﳥk`^_.l n%F-27]T|YljU6@:y]v4\`Iq^ݶEVL}Ei hKM]ػjdeFP*Ɍu-G[@J~g^]p VZ8 w:;E;ONYu#̧@voP[g^),.3}ä E}]P8L/uh[|ˆCfZާv mxnMu/J2xgͪz +uXjҁ\ɝM/1Ȕ>îp|590E]$׼.%#ԗ̓gNy,fw(ntanZ7&KP,1n62]7.H,&#pK>dO5 Zܻ?,yv7q嘗 8$1X\A@A2$(3E~>RMbkG 2jeAes G\? ۡͻ$~ ["f-2sFJ'*\ H}@: UqEa\Kp^S?}7E砏#iu~]Qק4 %Z:/e41#Ly". U\-zUg }ɎJ^ʔr @YMIIR/NJSas#ۂ=$/Z5u~,MC囔QI@N4Gy cV^!98U ,ud?MпX.C&xJ ݊7@ ;b5΄M iMYx62QiMMlO`dJrPBibxF_ӯX_3(#ImX.!kwksu*Qh(Y``A<N #0Z]k_D(q`R՜PU Ii뢾]dvϗ-lʈB9 xa^%KAAImr?1H2`'o?= Dدs9Zex_D.qEW7.qޱ7W; -mp,*ʒo/@AI'34OnmᤗzeGxp/ n$Kc}*`HUz) 3 sd5T0\9wN_RΪs{4G',ae1BS(i۵t8 uT{AH(lH͵Ae_-`sL L=V٩W+}ϤOނQ\EQ (Jxxy^ Tt#pXS~/ Ĩ핌$iX1\zk,-#Ҙ2u`n-?8o j.RԟLӅ DHW;&D9{)=Kg-Y@qj 8Bv}UXXkT@vRPRNt2:#{1_rLӪhXD.!i7 `1^Y`AWQtgW Шi {kFr PrZGdO4ԔZQx׺0>$v|y|{A˽r?b;0ϲIX[ ,"E#Vr5ж +`86sԜisZf?Xb<|%O6Rt@?,r&8=|`bفeC1Jl035=GwK*7z:I}-L 8,Ta 7Q @,Qz~2n o#>@w y+mď4&3Chm6.wZDnI^s0/B?w&f ;k-u|b8XfcW`Q7K?~X^> aƕy.8Q˲uI%^Dd,TX(;mvQK4 JTu^si7"Ssq~HCs ߿`Πh urK<ɉ~Ϫ ƱUޥrVuId@A\ަa ~LҘ6pll1HՁ:Oo-rj)Ysw>ZX5E-`>rمgN$5I(%6=3z:K/t~L۷y˞hYMx)c5B](C4O_F {ʘICڠajB58)iqQ*9դθ."D^Nhs'$c">[k)YW4 i껣=m.u>J幣Ǭ8Gf|[KD@J_(*r-Ғ4$GB^5-FeԤ:3%KG)1ܓ;zw`93Avϫ0!Bx)n }ǵElgTdg6Ƭx \ͷ#yY+0IqL6i}R? YQ%!GXȚ8o^k;sOۊu/Kfs+ݻk`w/dFZ͑^^흠7jKA)[.R`R(|p~\;%4E28N2o>S&-4DEd/> ol_w8 83 ou4Θ_ 4OHR&1k1^gCufFb3͐~_@Wף\e ij$ bd񮙉kO g=`iK@T9\}zF h^4áY`_f[]I  J`Noj;Q{"GSƨCj gաćhKy,}VƅWęaI bo K-L*υ0L.Q Sy$A Pi+A2̼Lu{*?! 4`p[};„ ZuLpIy8dh]iN=TRW4q7]p"TFC酋YzaC8 oRbѢb QbVQ\B?M'8LgߒF@Nو¼iUioZ3ml!% u}(Bk_ 8}-ւX ҤL}=sKJZZj ށcѓ^p-|(!Y^lcBůwD.O/KzK/ws+襖;y{V"|Npw;)i]:!Pm=ed%`v# izjB 1ZFcX}wF/ ܁(v|NHbskGW!B,%Mte49z$uttb S8nWQFB2WAj=A :C1,tGUl#]Fvjcд (P_9?^f_)>F?,b<*^b)G)< 6d}J(R:΄q`2Zu>13A R*? ՚b-ܶ6b"\>01@oLJ;)br1F% r:RClΛHc+dg7Zϑ7;o@ F}&ɭasE]frGb&3Wcq{ևr2b|tP,wlByɣ?ma !;'h/i!{50NHDKγF]_gCYyWkCIdȇOFJ džԞu2wtHTF ~3} ٸv2ך4;$FɸJǿO 2C Di"YT1B&.d:O\ĴyDI.t0IU"1: 0f#RPdJy\çÝ H֙]ԛ)\~8TOSЪYGNV.٫&C%iRWz#,qI~ѩtnQQчdo&PeJ1J ~pzMM>dQsZ7`Q@tĦ qk 1 i9񡻉OxV bAGnJS(U WߏH&pbffhE=A E){{nwHX&k( K]/Y֎IB9B 4.ܢ.MFXjoH)4)"Åy7^6O%2n|y:WפI3;Ŕ”B^2q'y65VV{NW'sgŁk!Hcڦgó.2_LS-koTq*l=/n- Għ؇$%A.^@>D˩9Cb<.$jWyR 脍<)yv=ak6Ȃ1 LU:2v,~x+T> va.v0+%x)̈ J+.beFI~F5z˼a[ˡ_h23 [i/"ń֜_q{8U=i1mnNjF({vpsnff zi95Ff(#3J./qTȺwImtB5:Q`w4ءԯȑrWqID"Hd4+ O%My^z HF( I'.!tMiGHaAio;o93OnϣK(nr)(Kudz7UAv1FT7~(B_ ~>+Ok$5fiT"q 5xKY,~PKױbL`  C4GeHg8)pEh2sW.9ȴ[zݖ{ le;w\[E/Q1L·*lKriz#W[gJy ۝_ʵ2Or5n;@8:@b]Hrx_l8VYWOGW͵?=(l񚘲>Oqc(pZ:7N2Fbb;n dwTW;+ 3(!#ż'-vfkKyjd}zz2"z%f~X"|XޜpxVizr %}c;}Ut2b8*凛H"%u6@}{bJ6),&X`-U4T{7bܰ}ë@~$0!A_SEH4SE5r%DEiq7i3f1\q1oL l]nیТћu@ #[FSY )zr`\jN8@| í_f>.:9Y;CwoBeJPa?N*|ףmĚ?z4jNȡ!J,{0a0K3C*rvhߺ2Hy쨲UDywrZ#S4E[ҀK}cBrҬj׃z7˥M6>JA"T/k= Iτx69s]k/1CҲshP%8 JWcf -F^o 2ӑu51>/2c=`eXndH0Nwm7މqwQ5a؊2#gKaIaK0'%wWf$_8l#7U?q齣Rf#DI  k*]IKY9V6Pq^"ʧ B.wޡ"Z niK)Ff*X[e=^)NW@eĺzrm~:iP.(x,v`&`|< ' P'HegYa+tPJm99Eފi| b5j[;J7|׈MPIGKAT5dq2F}Ê1䍝J٩'2Ao ~Si@[aECDvH]P<]ɖҀF,_m!rǵn,ρJg4aS(F_FvCX:ܛY_YՁ> /S. P# v4#bB@YYe1:  aF!78HM1.C@!ӯ"U8J:6A>SsϛGڻRwh9$\rHejXdMn%P+BfhyRf*䊥BOoKfEϭ^qC͙aWNsҠĒS:0926Y|pj˯soiG<emoAgjO$M1[!cU1#QaԞ 3}-%91::MC`Q8b #>1[ |]8s5ۭA͖E M&b-ٹ2ߗR-I<=$|~Aw~̾K^b5 v.PS0V^W{@K1ͦ wd1̈K1F*w]m{d|L6Hkx4Ѭ{p]=D^XG|Ͳըr! !B#\] `pB tNm +f2.Es?t:zK R3?^e_[&XSnfAP0g->-+h8vou䷁Y*oƕ($I>Cd$)0.Ŗ|UG"~rX ƹ/Ȳo@] O'ZF\Uo.ZԆ9]rJ d'MV%\yg眵^y*O p5@ľ$ΔHfę[C]iT}fAޖM#X ;.Ip3N3>#?.)S}r |r*Qns>ۓu c+=YAꞮA! ĭ_TR03S|y8߶E kRqRs"o4QF]ҁL]n.X5=j7m8 'k9t[Е%q[ќn~2FNw`&|VuG6 ;m giƒxv&+w1rLPcvtX:ٗb폂 B0nz_y,yjG(&qޔ%~B,8&h\y < [P܅O\+^CNI]sC-d.CrI>b:P^=ϥYSkl31eېin@(6K?o~ᎫCsa1QiIv<lyBXEXt% i^;|ǖ&9O6:fLBWrK6o1;@25t#b~3_ANQ|=+ໄFqRTѝ+mo!և/]Tqwiz׭ ] EJ 󾍠n ,16)L< a&{MQݏqhlYZs?fzaoEl{Zwy5l!xjP6-ڢ-Jk'Jya%\G>n CV$Biڈ3хycEoFHØEo.0dd(^ {hЎGKr2،qMz%UP7S8׹C+l\6`i~ZN ֖[7 ::P 6v1}9olr:5u#Wp歠 wq͍J_R^c*QRiOӫ= WDNp{rMzT-L1inxK4@?K˾|_eɦ\仢r&0P~ 7O\4`WUVɬGfSw+#T&}rƆ#]-h Z+ADHGi_Y_nD̺$-Aq/\fRzgu\LEg=fjoc !caPBE9ERqt̎9o*7 x؈+Q^K&P,m{σE Q b̔H'<"5wCā:M: jb{ $:;2I71,u7JJ.Oe8c/վe!dF3#I w^SbpF,:+_JQ{4E}τbB8:]zbp⺫5#.QEr03^B4d%DyUe&2lW'5l;ӡۜ..M4 y%d%hZwHޚ Jh!O8p}S|0_}jO&7nmܱ$NZ xE`ab< ZEw|ipߘ1~>w  {b(d|Y/nK.6}ҔI1ALn)(\aV7dV`Au{X___Z6EGf$G ~k{Ý%NKaDR^qX>vG">`y2)oC<,c6}ۜKI<jl>$;MH Qj 8Dd`}v*]3Uv21OʸVTq: yFQG~>68: @bFLI C 7k)XqOB=۝KI+gΈ[EM |"Q-ROm4YRC{.QS`s%ځJy@gOk(MNԀ=` ˻YFg%G\1>9PFmFɛx ڂ1CQU2O&MT5e%[lbDmUXuMZM$R1&sVtӶ$ 7/HQ_X N{St. Aݩ>8 YjmV+̏Izp?ĽPk(M֮?>s=zd)*S )3=\ļ"Ԍq.Jy`^& g7' $9duGGV$hKBr/_2mJ vBºXcb|eʆ24'7. !PO׹gbH<͠B O4" (H$#`p#$_E^)R71L*M9C Tc(n#b먚Hpje/Bv~d3/^L] ߁4%O`o}00+I~=}#UheJB7J( +p#} H;A|3uYJļ ]@:{*-s)%whgz0J{ tRb47Ld +NE剳kfY6QeObRm#^l{W= y @03Ͼ2͠E*/nCŻ{o^K]p.g~y̪r`^qTz ʲ X,!mq8-o~L&s֥+]xJwR=\2p\Z! _ >AP΍W.hCզګ K8Ӡƛ#{.{* z.VP$3ӘKuRъGU%dz^JG\w6`KW5 ~-^+ܤoN o+3R:O4sFr~/L4|;9V*Rx}M泃U %t>`>2t .2PY~ Uhe, )mԌZ݅R"[F-QFLd">)9&eLVj3քi,?51+#!KRXߕOyX+v@Ϙk ;xN2TƊ,(߿r,! :VU~HuPLMz"UyP<&59Dߞ+≳ȷQ7cn}:RQ} fIæۀJfm;S[᝽Xެה@U1 =J߆GUq#sʱ\sVj7{ι&wz? %baQI%nHI[j P*t0s\.Rp67$3eS)-+U(-+]՟f'g/um.ph峨h:i6^2yZP=6{UgU9v$#cMw sݚ% *q=j⒱-ZLH"aMP!Й!3DׁX&cta:̕f?Qq73Ѯ=fLeVF>ASXU\u?@Q)΢}xq67JW)4g0lq l(4]{_A!CUgP+XV+O!Zl"5&%܉H\2'/$:{{MRr'ArtĿ((e6i ]R0!/( ge {L/lWӐRTBlxdW,Z,ȣ}]`S'kBR\x| ʘ QV S1D~\9܋%XЕ *I니W3S45C&̑2a_6[-H!6&e$rcr@R'%n8iFle߂M6ԗ3.ّ1<4iA*&+=Y,9e$W?wٹ(z}1$9Hi))GZ5sb; sP2L K >gA')rB܇}*0œY*#Cxl|1:dP'xnVL%&y ȴIK}2Np9"eEa6fQGW3ߏ5A:}d _Tv7&htm.Y  (2_4V/G֞"j{^,uxXUxy?j@j_TK^ϭ}4$d0`uPj,kP :AǨA3\^w \E'^6%ꭂfEUå27 f` ypr bd ԟ|ug.[]!|+V4 [(X[0C80M f}A>*WDk6zd_iv~RD{2UuY-5edd:tVShw&+6Tn0~i5b6W|=_SL;Bl٦[Pkk^}Mռx`#]\!(BhoQg9wTYB;ij+V"_4:_Pթ=5 :g͏IP$G>/[qiQaZSW {i\?,* *i|؃C\u /S[`MꎞvlokB$疤_zC*p`1E|--rR;Jź1andCbEXF,3mhÖ@55_} QAdpD+=Q!s=H8DaÌ9?N?`hIP]\Wh%fC c#zwZ@)#d˸r1`q]f7LVY ;[lFHWzEuyƟr~!dD]:4H(hjgIpzY|!+y 0 \HOaT ]o#A*(BU+UBS0]?dEö zZA҃5u86f:qW>&LwO3!Xc=๯{Q+smɠeqZXTb̚(ΡBmM;<nr a<@$P2[XcLN*.RT-ܷSWZKchUqX$pjfPC#x5F:FV`mwO@O45#d*8$0~>L~w o ʣzAb7tE6<~*)0cxEH4~hX |sUL_PN21LLcrZ4m:L4e8EZa4X8zSls³SSV۶q]VR@1`elF{1XkئN`cpR~чA0lYԥ =M)9m>Ɋ<>mtCh '&g a}(̖ٙ}B׏ [ @ֳx3!$뼒^Ґ9€֢f%ahmd׊; >R1Nt՛ z3 ЕTc"ƄʯL]aOWPwnd9f)iU#ҽLI5yiG%$qkQ+g:(0er wgX첤-Ӟ9X+`U(djQL4;bY}~~Q`Am^wۻrWT>FffZVVK'Y$J꿗/ދ9.&hu BCu#Ӆ b"}8,Uw I@eGn |J?"7h1~{Ntmp8OSJRqJkp~.NpNܖkMX NJ~/}q7Lr(,{͗YLHUlE~"ЬEBQGl%J~e/e9[ U6 \Wk oZxH gSJ qiZeBӹiBH2ѓ]EFqo\ulip,ltB'"~>hͬ&\X3e'FAO=fH,âqU/0pfUA{ouBF)jxkP)]VOBdqn-Y/槗# 0E`Czild-+rnB(T؇O;ßQZKӯe*Ѷ#)Pʆ6ҝžVg'w H#OE˜~3YO9/R'GqUzƈ.fzL3jĎGAa 4?7!X1Ӂ5<8'.'esiH.@=(XC~nC.j|5?̨ ,s5s ueF%rpOQѱbE`)Z[a$c[9*QL9ed_ !&^qud[/aGg>_ +PxICxYt(iQ Y)>cН]6.Fu :s_{|E\va h=l1єDGcj]ּ3aHʦ@G*ASwߺքrL}u9ƌ}1f\qKکNz-gx?c \Z{߫q|8p̄Aގ/2wY<_w?~3as߲  Z`_GVGHmǖ&fR*A}sqİ9ew`i_k-jx)@X< /m c Ug{=_3^k@K`)"904U$1{_&Z<'Jܝ2]脨[0lj۝y"˛I<03bx b~(M#h8q]аPi9S xFrywxL;^$E 'JR6-#|!7@MvdѤ#ڿJ~i=6W%"59yRKo#%3Z?ȏdBSA׼Br^I:eRwhz5'[KD,Ř}ߋ= TDȞ+JeC,^VH]4eUp/C=la8Д`=4-j5f.J|:ۯ{i;gsXvGtު%;]d"1EԄf9UE6Ի76'FCbTY]?@Mr-Ij%(D8yg!(76>%K,`Oo[_syφ9_'|XF_-[ݯkk˻5 /.k贸s[ͼ42%j%ޓ{$5rmk'1eB:ؙq}WnD`~ lؾ׻l(smN[5{[] ΋k9bq/&-pR84l }7oCpF "• CێN.bV%i +$bFզt+J7E4 }.Ⓩ/]`laEwZm!.caՒ7f>49P fLSܣ4!БNٴ9ŸezdR3`sgXUf8,^PWgJ ZKa4 j 榪u`0X)K&QF>.S\*uz/1-rZxN@ױӥĉX=< IhWEsZF0"lg_[_{OEY| ǙP# ej1qfx8KORϡ> Q 3K9,M޹ʅuZ0Č_$&/RZJ``rB%Zl:Jxj-R+yx4C3Ca8гiDQc.XWPn&܄bW>]uwLt+G+BBxD .Z;SSO| th;%{X8U+"Uut (ʼEGKP* w(|wd,1U\(g }(Io¿Uؙ;$ pm{|qk|J"- x펿}΁7v%?Mhԥ3,B SC+Dlp KfjlԢe8e?$$syzvXi5ɜI*;WCq^E(RWV8͖n'ȯo6ҍ.жsJCU0 {W3j6FIQ O+5Z#D۶p s|?vu:Y`O= !e04-3ݝS8hyP_zO0qaݺ}n ^ vsvD%Fٍh0LyRwJ>xmTexR~k\*z2]! 毑D @ר\&wo_ ViFq;=1+-'d2r^f7wš8ۺI'19Om~:@m6 XOcK[i@t59Rnr6$zޓ% ɟ6P+qr Be^yj"@65$My³!x|7RbjW[k/PWeثLQ[o;|t]q UM5iMjM@z $sˬf\'YL}O/.aUY8YюkpQKvJIXt׭"e۰s!{mɋ"kɚa4[y~m)`sϱ.F'iԭoҬ.oG#\/g#bj=?>8Ҽȿ8P+kMH/aMnQz΃ǬdEe[^QS-Ax܊,~i^>D=9-#"膬LrO_n< ^:j" OqYEqmv^NKS0ﻼ2َN$o<G=Yha\Xypg%)梉C*Myg^QOI)P($D^  *g@6BVB%KۃwtlbVOHs r beF0CbslV@Ίf.`N@9֤ Y_!y?[hrɝ#HޒA!TLV{yc{"PǁVK er">.c/asXǮ3,sh7q)j-r cM Xoz2KKn?7 7Vگֿc̼:@eۊ7u8u8q<ϐhjJ7ܔ011Cau\Dm\vHɗҤywgg}@zu ow2c2 BCԕQ iDjx?K>oW"BQ%]vd_aDo =nWfp/aY&kS|&m oi͑c="qbyW=1ި4kfC*-R4-MI[)l2?e]j*DY{r@, u t{aa.HD%Ȳ+߾ox]<3BCE`31o@}p簳ꁏݹfLzk?t! jUxs X:yE.3nڍY,kΠ=kN[AnP!j-5|'T7]fH/8Oq n"~x5[ׁ]jp?!r`aJ9n1c-*:53+?hl>(4Kb(M ꅓO))/3k|N=Jۑ3HvJ|))+se!qǦ~dV:Jԙ Zd؂*I{//YooF#"irR ׆^,L<1QFCfaKMz<95sMe6%Vq%(BO<$\} _>vD<Ǣ7= (q K%uKKt*R[Ut'>_xG5Wۨz4i[)KK? a!"F?d ĩ`Я!c.ݜG$fB;#H/n 9[YҾ7C7;LSU楊tR3cGnxC/b{*ޚ|lmEux9jBuz l.9]>p5A D!Go/+9?< p֌u%VE)5_ R_bp Q8S7["LPAܠ3pM+T,Cfp?D6dv q,&j%Q|);4Tȱ35g(F[9SiHͥ, 雪?%7p(ua4Y?PNЁ&o j_`Br}fcs̄/Y'[,k\D!i&׌bQfЧG6NY &=[llwNr/Liki ޘ ||y4%Kbt-Ǚ5$^B_'JS%+{aw"FVh3"TOo|PBf$+A:){`Bf{%aT'=꼊1/d~J 8=W3JF"s)C™J:Fz[e"ᅡ' oܑHq-Cpic"x;#]6Tlf!yS>^Sjo#y{kP 0r%cl4vu|Ь}W/8<҅,#!!3ݏbq/4[O:B(aHDǞJRP=B@>Q7=ܯ.팕ԝ$?@!shѓQZ\ ZQفX;>C7Iq҆쑆dfl4薟(=Y! _j؜59h6 4>L?4{fWhNwb~,'0{ LY(IXv&}*IF`y1چД{ .5P @DIsͤ XSkuIiɷwqAyeWerYr*6DMH Yx-BLpL8H'R#<5n2M $~PU٪;яԍ{a򧚄r-A&NRPi.c/}XJTX<ל(Ln"pbݚQk,*וD;V&v<k]rAM blȐ _*]q;̽2 豈hĞ)%{PZșQ xa|B fe h_%=ijY fGQM_,6 p(+ #*pFwVF 7M;%3!9>X-A )W^N@gSˁc}񨂄͸M7B@Q0տl934Lhpݡ$qY`Lgd oo wȤw׎)С.D\KHNv? +Y| &Ca2Ki㩷BGEC\6?A hK۳WeQ}j04.j#lŞ~G*IKd`UԵ՘<<%ˆ͕œ0BIo2^WFZF RbtDH`?{BPtTaLnǡ}jkKX2x:ƌx$}n$d'}u dAѕHmE[KVD9[9+ѸG} :PIw)rPPQҘ=j5OLEf#a2hVc/N+p21a m4Eg-4 \^_~ĸ/'Q֔?Eqȣu?@"Pv9]wZTZ5fԜV h\ʒ)j+i lƅO+1`s/G`[CyV[ө6Sc$:*' ʦs?S6'yiZ~-cC2`1qX. ,z֘i<ՃKY[m-4??.ˢig[)17-dIT}-'::d#{&:St$8ݤAN#X|]daDP”YAnzGJT \,FL8`s+ c$bs~s|'v1ӟntGgb(M<^31(S1u`9,(Uءz53m6Τ#0c DH뙴 pi47nj?IdQ!z?0H Ys|%F~ ysC7aP]#ų mq*՟?_u ?^i"9ɬ1GPeZ"wUb+4-xlu󝓛;~9=r[l)RMpY ;5t]9פo`گ#?\9&L|){?ڢJaBRɍ۟q@Qe^^uV0\JE~#A9s?!캘LR~QG.*/츀6膖.[y2WgM(16HýݫX(ߕ6eH]Fvǭ7KM $AV* t_M +no[`92X?Xci8/zg;3,GS ڒkd1OŤ.zCӴқ\rzƩqLj:sȜ޲L?N˝P Xashc4glx2o@r:9&lBX6| ZBISw*%DW ޫDL% 8y7ȧ$g3oiz"{O8?n/O]F֌aZz|J-̿)/%?]=@%,U1K>XVWiQ֕W|; lGk_յI׿8T:j`ݱ?C@OzYkyA*~_ Ss#%:sXvﱌaE mNhңIHO^W򁿄 -҈ zSWƼg*;ݓ|I[{e:(hB:G' 2;f7bp L.B3/ +4cM `!Z ]_ .1')vN]e뚀rTvp3Q.H:'cŸAg\ߗ(Sz@2i^V R_r&Q9$w:W`ǒpx*#G닢fswHQYUSRR"~%~Azܤ4CAgԛ=Հ0eLQM߇z2e^5E['gMo ̩ͣcyVɷT!|B޹Ym',қhoN`>e {~2;m7&Hm9FU&e^u,K'i81%,RhDÂ?d74MhE_lyV x$8MUϲ3p*]J%<r#;zBI;guMfXoHķCOkdyӇzzT轖lSvӗ<PHf*!$FV7هRѮ], r:O#3Z* r۸T{[+^ ?Gr^q!!MGs͡¸PtD6\ r`Umo2/-Ѱ؅8 ''P/.۳]lvvD2:ZgI3Nir H% !]C`8qXp-Z8.n>5U5rLq/2 }dM~=``³xFlvĐj~_#Bü٨SY'_Nh$9KMWs{v; XŮ7"#rů};Nêtnt*9#HpV T5m|?LzMC|g-0gև 4DnNU'ti(HCb ;ti/s P\k^PX:?9suz ieOpAI>DtŀʸaךANGڴs$2L}(㡟7dV<C"YMDB#ʺL2F)cnޚP k@Tsd!dÜ0\dqmECZY$[zL]D{y#?`xrA^~ {I=>7F|mѓ]Exgc,..*y׬?5a++Z n.rI~nm$lR;cs9=..۶vy=+hbE}} ];_&<s`\_Pz5'ƪ.x0]GwvQ+ [DA49B1*Jhj%I8ÏJxblx>EH ϴiz,ĉ)9˾F}>X~ F- w҂ƮT%2Pc2+ʹ+g;za@5`x[& %v`/Bg3 [:L;3gpڍS_gtb4Y[\C0^tvf%>m.rok?H,g^exQԿltF D-9a,WC+lN%X?o5v#DLa  hWSlc*2w+AKv`1,#q,z:@mG5_#՚aSh%7Ƽ{[KS8 iNqKۍY1Yo4]d:~M8V> WL:4\Fɮs =p]ywG+4ܫ,}&N1 BH 5PQxh%̨L.g^M9Qd"Y2J+V!K;>s5Lt牅iu_dꈕۄT-"ncYCd%Dt.j9p15}Yj X3Lkc[.K%{HaJؼD:B:PT{dB~#fl= 0>]{^,3ay8y+\C7߂az 0L@ImUz4ǵv/t_Tl3y wGa{[U#*k!|ͻ6߇JSuz5SL.(~FGF ox#i0 P$Wih=EUm%ܹA، b%|;1,.GAP,xt z##e2;aO荀~yEatмwtvjJqjV)(TI7(O4q"Bkq#޳lsu2^Ţa\:qcCvh\k8q:S.mzV߬g&G pw1(/Q&qd Ij\-` OLԥqK~Nʨ#ܦs I'@w b!Bf~GIaMɠ8'6%=, $,EFH]؂Mw?j!W+H/Q Zn;9o`x۴UR͹JЇ,Mh$-_gr?c//Gdثr@VdIGwAXVIJUU\wPEv…ꉏE3fPΨX} Y(>>Ej2W)r-gBe4FH&iHp?, x&8 | g"赣wע3)wvq -o'P1spMw"Gyo! U5pm_pD.YH2nƎ@Jh"61Az5ă;h7'ńn4muq švĕEALvbu֏`wd9ϓRV"E(۾svkn|])"nԍuTCظf0VlC0({y9C$LfiV7Wxl07+P7ceSK`v~+=%^L?7Ռ#1w,R\y{.hWQaAc@N]y=-nJ9΀Nwscq%ESԕo̠%%u qul, x9ޱ'#0"ų^*kK -I~cuhT$Oh>;bߋ =kx! e$o<*fK1v %ߔZ֫l3VW,ƈ&H4 $olJ*߲hS7}+A /L_IS̬.`r{e|zU툽:A_G Z=w@j%()0ש2(;9@@^WQv:qb(CVFӂ[B.0=vd$j8"y _d1!1`X|OjCoE&&_Q?S>5߁eU$z =rZy8sǍj,^0d'j笚&R̬n8w0uv#An3o`@L& [3%+_j|Fky c}SPL\.Z7("&a ˌ  xDo,L^ ŧessjpLu% >w#^KJN$J쵦Pms[_+,WgDuyUڰiHJꈙM,|21ՎP_J^*D VY\)i #UsS~n+k_ҪLAܣVeNFeɗ-SbV-_i) /$YHn|@iQP>=D4"P" J;B/b'7p׏_ÆBbL7wƚzn \\tnN,Ö&(@3r]}?ul4#ζԠ^^nҐpFpC[ paE1? A0hM53*~@lw1&neu}JgZ eҋi}:=vs|UEԣ %k>x,bi v &y !Dd6DlA&/epCaA%-=h'5zV/+Y_IQn~J%FpHpoN-@q0թC %¹oLsz|`kOŏaPjG8RW v4pkҕZ2oLs}v ; 7& G:;S gI l @<`z-m X b}5q;1)niX_oKV!- %*WPzOI̙F#4>VnE)|-aX8wQoQdi 7zWÚ8*dCX#4G\9{>zs(&G:8D->3?T&3.CIVi].qf]RV=~|F XUn؉[8*U,nܿ!c]5m}DCw_'&=*I6a{fɗoJl\O|wVm[¨60cZ$v]S}}ܫKI/٨~xr&@q߁zo5&_#&\Do[] [)NFP%sig:ik7#(ehγ]o"jD:L}OfU)v׋{O4nBq+N (2Vmdk)HuZiv!7'e[)sϵqt{=%'R$?)ϵS &JuT{@OCJS-E#ϝ>DZEşomi6u~z@/YV. !y$L8ns2=w|zǂaAT|OpmBh[ @bٷjpTiەתՀ6my]pX  L̻%"E> } 뽂X JY͝iG}jF(+' ]fuy EvTAu%M ,^sc8*8edNBʱC%],nDD[1ZJ́G3?tشA=O'EZWѥ$^әP-CVJ6 d" %Onv|s(_=79͘7-li[ z|wSq@TBB%=מCؠC$4 mw1o.ۈK"Eœâ c=2,MwzYP+uv5uI=6܆pboTHl^L¿d/x7zP}$ID"wzu5sYc͠)bS"c2 (hk}@Fv1&j]mt. GX]!ajD>z0ZXUrayC ֲqb8^zDYS&OђLy񐘥A:<>H0s2MgX&ܼ gf[>qt8$2%Y Y!| + SҽRiTDKʳc'zGce G\xFш7r*5x?1!|YXx4 ME:',B6od>kz=~cteW5@8!N*7iqQ~h2Fc=jt`0`:6JS xχ_fMΠ۔i(˾O:Ĥlo,^+!ԉV>bWn=1Ņ!efl$ zV)Lfl,3Bq/P * &1QY@ʆ;jfmQHU?N^6*ke?,#Ie-@\0/RP-1TM7<8L5;`?ysW-_&`ҳ;*⿝ulh!?RtY6v9G>̍eRTeg(7dlFn+'ءv |k}8᭬O9l e_T [wy/ ?w=ivb7A|{ lN_$+ktspt{Y=nC>Ypтu饩jV{lw{*-ќ嫓PHܦ=8@5lkF?]/Ry {xyY^w>SUqĶ4$K!ΩTݖp&o0bUAJ3$nh1N[J.]=Ls$>c]aGXӑlx"}D2hh%D hyc\7k+b)PgHL"1ҹ}]K`~ѝ\BKg֡,:B!U-V9 TB4@7ZS!se_ؑl (o];׀f*2`zđʈ̈́KVޮqώlGud:+\z~GĕK!]Q U 6u{9ٯgX.Ž_ӡ(mhF7y'|M+ @')(pQHӪzRyǑ߷7DN,&xa󶉳^xRgx`6ᬽ\b(#bb QZcAM?DAYPyF5wnq&R |< >uW _pc=;yTZxl;3J@M _qPl"eUB>ʖ?H9|IND1mRδ$/۝sB4 F^͓@h 8p75~/ ͊ q_k`ӧMD#;:sbm5 @~-PC:^|=U`6">ơP5fN^un؀1uj;`]) M_mx7?ӾȁN`92FXkf}H=K2hͬmš7pt/bҎBw!{[{WPϡ\;{d́Ǵt?鞦h}FSTm\)5 jk ̕uoP?OTJ;Pd^p~S [3vhF *K,ڙl3ճMݫ5:"V¶8|GqK:IJċAc `;ɝ<0:T6a*juJ43~@ts/B8!P_ms ѷΠ Bۡ}3i5JL̨3 #7ݙ&ZH'jbfY K&*:FQ3oB2)86@)ACq=Vi՗ ? q3 ҀO4z89L,otȂŨ;m5eN4v վlFz(Rڤ|'gu/[/C'y]5@?fy gNg|{e~/ NqAPw2 5m:fC>fM~nl6"`ɴND'O ŔlEuG1,ߚiRb?\Z0?}L7xmB9gmtmw"ʶb,FvSP^cAs=bnSM ,2->ݚw,wڴjHLqE)v@߾2 #B4kq'J̺|Ю)$/yE3G<7j dt!PnպcmKslۦ?fd4}XL'lXMRx-j#$?[}'R&ըr:r};lIlj1"sE>3:뢦=p/ļoSibiR8ӱft d+Cc;.. bWʣm%!7`HZ@ ]1'@X[TsGNXK*Hň 91H7ADevx{ߔ5Uͤxv kV+r_T%N6ѕP}UJ` xIg$!B B UstV~Xc>ېGn7)z28 6lĞ&9*AȲ¦;}mAvf4iuP(ןR1-2Őaj f฾ `QMT?|l&eo5drH<"ZǪUTvMq]ſe$ aXMo|xyŽ$^Vq^D[pPK$ŗ=g,T6TN_-pPDng·UX7si ;cצT4&flִamxI0VDAR'hAi@ ߑ}Iٳnז@<3qM$j0Pi+4a!q$xa3qKmH#d;ʤv(ƃUEzʑc\od-_z,<3~˫x p9vM,@̠\?cz{ReCF7aFp!d {&΀OX[b~r ͌Ѩm^nAe'9.{J(auѓD\ȑ``}6q.t ]4J`Y~V6v`B ^@!tRS?]foY*/F=>VI4z}O/EPrJHBDcPs;2X}N*Cڠ)g;c4jFf-C&\_Næ9ͩ)WRSGJ33(?-s_ ]_g-aqd"Q(& ro]+y]I-,wd7ȶ , =l%'p".ʦ̈́D&x>CuZ– mz$߈FF'F#6MR̥)\NCVupLp2auѮ'5_Ntْ2DG7gyjxI,]5֔`@s\iOc7fU> 4g ]4aݤ^D:_u~y+Zsa#IЀu+T9AiO1",}(O]nn q-ˋoxwSƄRF##Ӽtу>( &4aMf)9wq*,=p#d_%UǩbM4:@lx>ʙ͖m۪n=k{(aX<‘D" D'd;ZUnFN,;%]q+ ME=B;E%_&YJTi#  55t/=E\e?HM#SlAANZOC >رlRg g똆%v<ӡJ-ɤ\tғVB0?{7{ui2@c@XWt o1DH%En8ָd}oо Wj?c(A\|S?b!ːkuXܽ6=_9sxLltHqGįus|& 9|TeGY4eTDb e@s;=Toe) jp⯣\#v[?O$qFv3iw""O@" J&m[h,lTa+KkQcu\"HPuekm8!-1uZy^{GoLK =Vs>4Ќ<:;9ze= ċ33!?xsO&+<Ăn WU9"?ة"&XDEl}6r OGC2fgN"H%tsځ`-4R~.>d"/C[ #xGUHS/T<H~w%eS헏]0V;.&{*YȺZZe>pl}2dQ{^Y -kHCi +2>pb3LA2!Mtx9 z&KZw;Qnc{[3֓7Mmu%`WF{C$;Ϝe3[9m<φڡzfNBBM%&v&H>-PjJ5q/Xx5\h2D#V s[V>Mzq9ŵqyk3c,(JRn({X3K^Gă8.DR-n 3pz|ۮ_\9v_CKu\䁾0ҁ:n(bܱl'~zVfR^eԀzt:e{, <I(*‡-~Y 'O0 +IpjZ>79REN#|'jzF ]wYhVG 2HA~ete\}wbM!".=1_6h$&`놩kNL>uWiĸ!N m p#Q4Ka sju=:3 tO^IdfޛL]bkx}I&mΐ4*7I`[5u} AI]~f {@:!QFu<3+) XE,",|jBy&ڧO:#n帋NK41 4z©w^A qAeőtgDS1ԄA/۳t'b~'cr8ĩ T$Nij3!19&?3X곇]ld,|aM[rFUDM-w$h)g!BA/d=$E7_/8˖eL{2E q$o=|Q pVSV C?j4)[`_ v2¢sJHFOXKW6GB̙JVwbV,Q4XW*?\IaF#Y!ױÇu%hDE@r~ ʛfC$I9?EX ;&:MS&+r}kru̒R%& oiɕq,p[ LS/:x. )?-Ք?` н@͈:nw>ƈPymmPʴ6ф%+Ӗ S/\VQ?ü+ p&p~dTK.NZXy40sL8p5x|;gOr4y_K͓O<Έga9R\a7p+>oZ%^vzA-Ze89O+% `зYshnF2o" %_}Pפ6<^u ?oY@(IiNMi16f$TJP0bHf柺Z; p`x-5U#&Fײ?#pt}R@ ^tATow^`X[=6h m P&Z5OkȶI),@koҏyo%9 szY'[*!fY w)oox.s1;Cr5ex"q:#7Aq» k_>ae/oIc7ah1JNL&+hQMg^cC~SE1۶ {K[f:tMfԝ ʟdxfhdF_#$$F+#ԗ~HN6zUTݎ ݸc33"0W׉ EV 4Zꤼd?|nS䡣IBqCz -N{? 60 snn#sSP~ҨD-)>! O̸o|.HIhq*OǮIWZ(.νjNuRB'E(^i*J]k/*1hmn%v@Hԣ!pI wM2h+Hv)IBxiߏB8ዼ,9fp-1$Au F=UH&[ӎ-K'f H4pU* k!'O#a7w6M=;`ʛѲixF~:?!RTc?VCI@xWWNИҍdiJt*Da$3BC̆ArG+Lu10$TNtMS>>O[cyh- {btHCSL]T<#•a?Y),xλGRŝtK>QAfǑQIo&›:>B{MUB|S|5%H# u,')2^tOx2¶n0#¡_ت\hl* h<S@\j;0mON쐽Ԣ*v(^'*·Jphϥjʆw 4=q'97[e8x+^RbsS㌱=ql 7u$q|=5Y&u̸X>ݟd» h"*U^1%G)bku˘RkjMQh,=$`F 3 d2LKuGk\lě;Rf:(p"!r ɨXPS̯Kcv8Bçbxb,FoHcH6m78,c [?ov`(!_O'cu}g]׍E0JSŅ&l['ӫRpzY0;^HltzsxIm͓%^Oxu]QᔸƷߤýݟ_W6uDsڦ+R$/w5AFEiWga*o-=ey Dkê^DoSt8Jmʟ#yQo'n LXuu\[$dyxPLO|(I6`[ү50~ߊs[xPdeog?LF-9ܘLͣrXyc:&g"׃Knvx a>B A/’V؟_\N%T$@qK7q;KJv TUU,%Ҿm)h/I#H†oGe!k7--`+v(۠>Pܻ'YPF||y(Եh: ,@#|k7G3 kL W4:j@-6d: _d`q9" qG@im:STãRac+d[݆jP&qmM[|=>y!ŜXnӷjWޑ9 nHq5rzub6q_kHsjȿL !9y[ѳݧN~kC4!|YƖzQfhZmV o1MAyϺ;|ShŘBB5K|NBj22}GlKlHT]C\n2'¸jv&c[գ,024shGU:g4mEg{ 30VRG7ĆX?3k q!yzwӺb)k,i;}RvW'"_3F8n :#\ 2}8a>=(~! ~˫1OO  <(Fל46`vBDOETXlc`bzʦK,8AcV}_ <~w?].qW?~ .QTG4n45"t/ EZEҐ$,0C W_R 5 `-7\u{fRv3Dݜ٩qB+٪Rlh.GkV7a>,:6pG̖;4-1ַ_|S:"*7V(f'P[&ʵȷ4TqEatuAcd[lbowe3= %7A;LSHmCLy9C| nJ"QbAiDHWʓa7A:OˣL[ li";;`gf Ux xKx`fNE;chY'^BN1]J0G>QAj^~x*8gOпww`H=.Βyf!)!8R &)Jļ"`(_]qA3awKR=X"S' Z 4;-ZxQ^kAt "["v祮z5*V!ic'tsOrӘ5ʴK %ɩ>UeҐyn wAY`6w`_3ڢZ[il)/0Х!!i嘉2᡾|beܡ vmاa+r_V]4Љc2o^iOMx.( Y[FDz~EU&ե02(|.uE(h݂ǩ xg^WAgjyrj+d܀z/HL6 HGsb &hۑd.}EkED(|35ٓՅUBi/*Ӷ|^#whUŴ{9[|bwUYe:fУog Dlzd+θg΍ 0m+^vרnkK#ƒl ֳs֒A&Xe*ec՛+?n+<;+ Qa t݅L!x84[ n`\e-vQsm^yF@<CO՞x5sr(#J?nXuն{efCl6ʓh䛨߇ 3XZ!~-Ur4ueO)0Eo9EusYt]`Ġ4~ e dJWxU@XU*]ܻIg&.܋e(|<ciV L(g}ʭu2 Np9jG-ɮ|;dFL'b]鬟KF!dmEQXf3ЬdQ ck(j¡N+1 ;!}DzvSGK{03ԃ41>4tH- ]x/K!G#"w|X&@`kᮈH֗HyY~ \duY~kÐ7gfPW߫qŚ~"Wzw9q Q2Ќ/'@ /AC]W+FGjGVO|!7222SS"ewʘk(ߤ IPp jPv[K5CXN䗎f*G!ܐ| fh;TqTͩ8mM%gG_Fڙ djBD۹%Y!$HpKsz84_r:Gk;4-GAW %4f}/l5v]w6PZK>ry@D~|猹N* hU[ý[WdX6jya3D#CYq#_^&-V' \u5偉Z ò͞=yZ0 )6(HgJy'H tU}C5&a!ͱbV:w?j (=H(ؔq|;-Z>ājȴ7Ufk,K$CK{KB#Ј>Ug^6k?*wc~ΪUYZ@7!:'bX}JøiJW;V0WYɲ7T614K`fR'ulYPVZd+ w7{f/ :Ox $k ]Mba^$9jz:7RXdB-]y,駢+vdnӇKT8tԢN/ۗ!u( P>Z =5#"yXWw0 xm?A\/d H^v֘9b s+NK[lXJ8eɱ YT:A1pqM9mya[[+ᄴD~ o f)|X!lak]QD=$X%<t]c*:Vlq:g\w|xstlSűh\eu<2qJXu~fГI[v(#A#cO'Jq}%ŎnXLPlv^!JW"kgּ u_-bRd PԿq!)KիpN"˃zOERXF**sVQ9AܢT75YN}A.mĻNygCkIlI/V_3X>%_!cAd, p1WrZ_ I4yav:)"Ԋq R\Q+UI5EpB VTws8nŤB8I}܃D:Jw1Γ|${F⼜ )qo@4<R8'ڨ4rrZA*br긬e@5X:1{t/Z6J%"jVVDԉ8# 'QHW,2ZgS4)NV-"63R0k6JTMI)&kRA]E۔v vG)[hp>?KŪ9"Z$Z{CѝrƏMVkrq>ZNZz%z#Ύ C.w O ȬW bRMgnz:)0gyn*+՟}=yS.ۉR AO珇$~f,*xK>\ V DMQqN[ȯ7=~*uN ~ւ]0K>_t#G$*^e]>wjTӖ鏀[~.1UIÜSK '84@^ ]*SB_w _ñ $:(\JxU ֌&S/ oA Mr$`8w-D1?* N2w }!7HLwf$cN`';ts/xρ[_JW&h]T-rqR!v Pďbp',9ܥƇG%d ;Ml;j} 5ZL8swYϏYHٞj Z/rQWNHuK"iL7ίXgIi[Vj.; sDjXan4Y[xØ"qϰ줹\ pF"O9R9wל3+F0ceH k)M<'&d{᧋Z?J;Hşǘ\t=5ꀭRړg˫a5r=2Tl.iEerGI(~9D;s2>9%9}ο{XDW$ ;tk漣2tIV zgB9jrL̉N'+d -(JP,*ʈ,wV* {&FO'>8IgPh:7wLw'yrTuSVVwHo*Fq lh"q6>6v `i^8( XZ?c0W{/$26Ǻ:_2 kKb7+}v\ !GL;y;S4Q'1@(R%ӯ}?We} r1ӕF9KfoG5"pgl{JWkHei| Ql;NP*4T B0I@%yMqQ/ Zah b $s-5N#_y9aA^`;)$琵 ljCg2Ơb`|dk8v'7R?JUC)B+=%j^cX=Khv-ޣqYwk2׃e4zmZ%ad+[ BٹxK_X~yqIsUvP϶g[#]vυV8;Ui/PH}Cd٫]Da1zC:&A۞*Et273]4H<#<:W]Oϔ-i{"#y Qy)9!&|ڶ`AGib2rt3or6rM‘;Ly$9t}Fow/#D ֋dӖ(~<{ewKO4gjDt|Wvf``BYֽ9yׄG~^յJP^5?}#FMeJ>Vk-gu[]9Cbgȷ{#AeJBȓ)@!1eF ?ѩ&)s?H3/kc^cI a7:7x/!NFϗ:-jOU U|4bdm7}z s.t(5}ۓ>h9>F&}ťR=Ci=VR!P# T qE+C[rG?aJmϢ-K+)<5䃿R=rqvt:WE7/jm%f^2b%% A6Q?U1 ocB4iܡjEy9.HxRl$H,kmݑ6z[|r'^+Ep`[K2<͝[fhpZkln*q%٤p bfm2T0f=_,/ RYHm\Vxu Dgoe2݀{(=gYI_E<`@6غ j:Wj*g'抝I:۞D3b鍩Q^P(AƲ8|uQVKʩg\ LӷUaFS_ 巇/ SFϯS;) 8tS'}ݝoGs[l뱕O PhRP[dDvmj!Co$:/>Gj3rfܷnoIծpTLҐ0xz%8jh5QW035;q3c gnUT_w|O7G5S@1Zo/Kd-*]VFtL%iDUAkL㭻bm>B( Rb|3}xp욫-4r&w29ԕ9`C7kʏ>dJ?sP!YH*<'5q %ձ[s%Iˊ4Bt}V *MV/"t1;}҅{"ՏCwЍPC7a:<1ղZ䡇 @(7EHC6ߍ'YfaS\BBd-`VgA z} UkF篠ƚ@䐤SOa5PwjM/8̰sHE,of7Iր:{;sdb--[H[n"]?Kҡw%*h>Oem, cIWJUW uVO6|jkIֺcfv;?/^QיִNlƢdiDZCAO}rVVpQ%iHPC+jom~ūc=naW16IYSeGykHiܶkHJ*>)rEY.58pC¼0'|YRԨ6,.W4(KzƧ9*c\Cd)/ 7ݷJy0gU K{_2^T,|$"3 #CźؒY+NezQc8ՆESL@xWY0IS[qƌ?9y,A^Dڔwx p j$fO&gs Vj*s=Hئɯ7Ÿ-ҴU'#T_Sp'1r$= GzwSMR`ɖR0tNŶB?,~ڴ2BaS;h:~b,}SL:TR lZr\x']_$Tr[㗯9,|蜄cTFlY\ZU{`'vhxՊ汔`Z6@SPr)^D3暯3~#(tjܯIn _v;+?E7wEDHaiVn2.zW[J;٪RrƨS$U7u~ۇkl5;ƻ Bаu;RNө&Z7ыPBjhlcᡗՂ `T7I*E FQUf54Edz+ZNk_ySԢċ6 2؂ߤ20^Y |Zk\Fh: FOy`bϥRPM}t8t^,Uu \M>Rv>bO@||ҏ3lLt8E i>>~ PLp^p!E+K4z LC,[wc%sN'1CBc M@ϮnA8z}Ύ< tfc)씜OTR}⊈ '<9;`WX]cѓ {1?>/{hbl/@zroDV(} OHrHO)vEr[z;)*lvn qWFފ˹: |x^?+1%D((+hQ9 x9 zQu@(08t_ް :FםºȒTL/lDK(.˿Uƣ,._a/}]-@uFB?zy CB8qB NP}ār`Egpi5]bESP YO0C|eRmӍTj} `\.c?N^+=%Xk$YY/vL3?@>Zճ=ItUAF nj\I +\SI) %>Ӟ4F0 @ g SD7L-E{x~xHX1JRJ$&bU઀Ď=A F~"Bz|pp [V5_W9A~7ݤ@2eX!{bh&šfHMwJF:(wLb ' f(..7ZjHNLŪKX`VAȝC(;fVc_o=j%m(&>46$D*EI 6$": pvS0Dܣ\|!QW (uaϵ(9ߝzgeGn7+q  ʻQo~0䪓Y|!& CP{`$H7 kdgG̔ID2mG0=k%*"ˁ |13xFB5w)8䧾cr®S'HjC/USٹR!ϿdpLG/ސuBK )ZZSM4f{{^J+C?A~,5"u/״iI=r ` Y;-'}PV$"k3&jKϵ>Iڽ$՛s< ?[1{{ b6bJ+oO;' a+ NvRfCZư˥5^v.e F " $ O HEp%{+B !qW`BDU'iOcש;m~ARV}qٺۘի*9IiEGd{:F-Nx Mಇg7ӟ=멡ʲڲx6;HDӾJ(ئ*ɧ| -zgRd})9kvLQʌ1x}L(*pOΩ(#ll K>u0wZN,ZRҎ]|;[b 1fqٗ0p~lBFtxɐ{k=h-0U, ,T;ǐZRbq.C4H6JNOT;M;Rk}XTU;M_~LE1L'uHNKEI) /RZ)wC\U2|*l}`壬xg SS;,zȽwQ>[n#hےj 5+hnh2BG>/av4 +|rfDb^FR] !@^͜f51œyA;43)E _ZDăNB"~q}_QcYrI5Fknȝ{TDAБMUtsp^pf S=%J=S/<Џ#I OJ ΟR'?o`y>ۛ9 A ~/&ly.^+_)~,yR1'iNӓQV_a#Rk܄k)5{Yq2wniLA֍.8 ~3Z_E'!1/U)"w&w hjI$}vN pOcys %7rڡɄeNx}r[VDs.;rX c:}`>fnw*iZ>.?)C=lk|AIr_HΙtMsf/{l3CS$)+BR r@/z5f\ViIn~0)Sit7A]0kr)nF̯cT`I߯tSAo*-phN` @Ȩ`gp1_8hK{IN{!)ZNz t!},+ 57=~R,od+.!tCxUgHY{7/ℓYy?۫Bmi)NfT`Va J{&!s1&LIPĸcf9qgH$[5}2$:՛ˀC}fC߆qC)bS ʼn?iZWNvEԅrtObtZO~$Qͪ؃7s<6>Q$8pJJJnj&x3X2οbyȜ{wr#öFG v)QW^3)}8Ld@Pռ<$Җq;A@Uˋ&V ꪙ1]#QuoƛZm[ؿ i V;%T֨q$eC.s5{ԓCPV޿cb<YNl2:|><7; 6$jT[ÙΛlCG׺j&'reUEdYgcC a%|^9X3(# ic:EVux[qJ7^*k(ѻj\CVP4u#g1QVϿ+z"3A"bd{I|R11ʙ*('W|kSh].:ug4`fDq`/F|kj(noa-)F^HxdIU]7uW;$D$55c1s?_Ţw Hum†û6)^Gcrw7(M5ZɍC='^^lmlkInJx14e?s]# tY\7I9 !4+DUi<>j!c#Hеs Q5z8`gR^jQD3cP]$;=_(AngHrx;Nq }3ND_ @ ng)`p=~$ᕿ|=ܲRlXz6ߝw qY#L;.nIMiE:@iA+ᄲjyJ3-$6;Q j:Z-D dW(BX7XЇypg eôd;qF$c|"U!ABj;Ϻ ѝVWpp/)ax6S sgwVt:+{r*vQYl@~'k>Ǫ]gy"b,M Fgp t=¥S%,S4S,1a+s4:K?ICl ͨ'[Ҁs8e`+ I]t%>ٝ[ 11ҲĞ f @,%UC+ՃTjѦI{B/ʏQ6⠮v٨r0kL-CxtCȋ MyD7RLH2?;gcs9(V][\_jn5(Uew >_ g!tF(A] 0!؍!j6%@vƸlou%HJbnϭ"_O2.r=1Mc`A99$VT*qtUX#:1~TeOCnLb};Hj1WF˞q߲wvVTt:+ך nSLS,e"Z2]{ $" ݫ"(ވHs~)~篮!},X/7m /R.HըZ)^PA$@dqu)Ί%VQH/t"#Y $%9N=VI"y%'ƶ$ h^Hmz7Ua lE5{{%>u%uH~}3RlFH+v' t#εhNKVfPp'vuHc{52UYj :?BVG>l\yCK'Hha^'Ns8 )f բUTs@, [:ji%WC Bq9%?Su4_vIgE82cd}^[5N&^{C]g#^TԢڶRyDt' tJ2(Ti&MĊZ>P |wgd^d3kL4SAhp;[nghwt^= _p]0p)[>ǘÞ}xT,I>GJh=iN>nj9Vm ;le0A:,g.ЌM1ErnRBtcQW5lo(^IVڈ!?vdεmdC[bK7rpc2֘]ijqװ%Rnu l9큪B%+*jd aLhNӗߥg^HD .4J3.m$,5m>.`"s܍ )y{tƳBCI.eFleFn^Y/)SZl$(p?w"33~eJ&G^ e!̗ʠ&\@^Tb& 2B9VCgXFųD>;e,WĔ(坄9/Cd5( ئ+kG~RWL6SCS]Z!>wDœ)g6l)h|ex]~[FroZݾ4z #͑_dO ǜw~V Q t)d_b~{ŷ/a" @3K B,lߊ볿#k0_;QKnj9Wq4I]{ٌtw۩8 C=z&aG6vrm3vhxGZ@J0f [UmOpS2zꛓ:  tS!Q;LE-M+ޤn I4{f֩,ׄ՗$mn`$Ur{ivwH }fw 1哯z;;/cxdJ0 -?/K䁔Ծ ?WhQf&=׭8.#) ?>V~ yxq-9"(,`D1#h:7vUlhC؈Eu||Vh'RTaF}>|[!bBYѭ#C<,j&̉aˠ"wPN[$?RK>{(.}R\jC-5QOԦ?6L.'d!xB|~:d2'X%m̍q*l3w4TЩM!ȅw,%H'Frg{?:/1<#kG91!?`6^! oąޢ&hS:\!vewA&;&R']{۪?{#ZG뷚# ,60ovt 똶}!ܳܬd \3H઻Q<(,p9zP ~IS^<$i[؝,qaܣ2CiV/{{>R`SRjָ(6R|kJ6d٫_%~Uq a\kN gpK3gr# Մī ?y&,a}sVJpߞoԠ9q- B,r~~s< X(L&\egHob#a( ~i9UT$Lv89(.su8e ћ< BLa,aF\uFV#Tkı!ٱzk4UH|r5gɶdԆL,DX0?/YCZ"poTwtyFL"}zŰeg@I-ܬ>@ǘ+ (VJ,ˀPz+O-- 4zn9N\rmmTsaCfh? tA_oV{&dyaZ*ӫ&W !e4Ms/u*k}tD|rS 琷RECLrU=Rɸz}MpE@5ԮMV7kd(±c3g劄`D\I.5tjZn$\J`+uS|HT.wTE|4 {81Г䁧;Hli 'VKu],佴A?9x@"|cxly١57zHn#AlfY=eg"[U3:)[NհyS1Э"y$s&"%+g/+Ņjq a?2:☀_{D!99lOQ⦠ My>LdCޜm^tpH=kg!i6SN M* d4'sּ#X Ha$f1a =q{a -!Z ]YFU&ظpa"28D+lO2>t>1"ߙmu7(tl('Ñ#mbIߔ[Y??#`xZ6E>3f;]u`/S#a Er<5)PEkCF~W4|C}Es:v6Gq%^Kk]k'gO}G`jOv7S|WhJ` Ց??RC5WzKFOTKǃ"qN}oXQ|;U|Y$1 .̴^cd.Ϊg("ߗYԠ%"UGzЌ1zqI&Pm-㸖퇮GקzʵՇ\ҝНjVjȆxޯerxD^~ J,!mj |?MmlRg 8Z~ <šik5e* %beMRkC煛ƔfU&6-2~aFԆ=sɗpty?)pDX/"# eS&uw9\gp4d0d(W][Qn_DŒH߻9A0Mos&YITnvVouRUebFuvw%(Jl` ۢGPx>pk,Lf>8!43Vp<46!氰Ap1qA2__ϛwNTA z>Y@p6Mb&x-#8B:,re*`e2ÎsxbV~VNv~\ {'c,F}ِqun"X ;.tM,Fנ?xn)'˓},8&p)M6욘PZ^@vn` =qS7Z k<}㨘BPkZ?=I>jC޿N[9[La!΀xQƑ,J% ꜻ  jez:OqCݻ;aJjƌj͎S 8yqr h);{X%AJһֿ=yj!o ?∿8ͤ">LRcTKÃ|LW43zH+ݰ*Bj1}~5k@~#h&*t&095#.qK4Xq2Ja ^Xwj/Pإ;|)-ĞZaUMgq**;zL2& O,JB$@p|6u<.$?Xgc 7. b,ܼLo)W-_*M@;֧ ~D`*- qGM=h\8E ʁ F3%rMhU&63uk9B}bz<Ի (:\\'w @#JeZ/)X$`e= Nz{@s۷1淭0/jžH5׮wц ? HwNR4NR?<}~qRn[#+~Oq!yK &=Fȡ SԓmY@nD-L^NDKjǣ)=#(­͝0S,FOZj3/GYE>v/oھW,w7{jo Dv+Ɓ7Be*UlsdDo&J%.X%_+.K_y0Ⱥ Ǒ[U v춘|*$PGQKhȔB~-H$d+O 0D851fD-2$jTpKry'Fx@23:94Pkc_އ\tE% LyuG\wˎv䎌4_5e)YV=cTyߗVE 7p#ًR3V!D3Q۹4cj"ҩGdNڤaOP&ǿ[sNOǙmhgI}Y!^H$Z=GbSW3`yY*o6A5(|Mr@4D-lP wq.T%bhy`Aƒ(+.=k*癬@K r- Lʃ8 9#BfceXۃ4bfPLB;c؋ѡ09 q1呴$dU[~dZeZXI?ooa$ңG(Iu߻5B 79薷$t ',d;&Bo:ڝ͕tƌGZˁR9:K"N|qNb̳DB lD ?ZԈ-8DKе/c't u_mNf u¢FAJI s;Tsex]Q0q>$7?w(J'C$l ?;m P;65T^Z?IA;. 3xZC%vdš78YQ\n;; ߝ oM"~_X{PJu 9|J>7NOБ%0 L msjv(mvY+$ mPdV-jC { 4JNሄLx;.Дw@ s8Hlx@L{ZC|֥'[ؑ F8|`ez'\ CQЉ[t=4WvdZ7Z'  WN m'jl 4ѻ (BhL"=ibV~F=wu )' pRB+wBº)Kbud5L|_cyC 2%f,] `[ƜBih޾ #hNIgGe'7TB\\d:P }H|oIkJA_OE {vnz9rF,xҙgP0<^wsMԩ;1+ 54If ,i'|]s7^EPW[\8N ,N)mYlڃ+)=|ظШaY\ąj46:?8( >;wok"W^>/nXzs/8vu.!,/ YLpP)ꇏxxb=})25,2. 寈0bH1mF&{V>̜*fɨhri" ӥ}hrZˇ Cbsn] o u1ZJS^=?qھ>J:G盭\"goќAo.А3q)Ix,ҩ=";cgU]"ӽic|K(SX9BJՕWO@Y?574x.{8 ml[iq@ɐ4LU 9^`š}+ {{g!|&;{vƦYDo;f+{oCF hcS{Rw %&W,q0P Yp>V?J퉪!ZZE$,$ζ]ty-+U#qxEo fLG  Nտ@%oJ {ғ2瓭IK k W#W< :t_y~fJw_qUbk[fwE+40ϭO;9) 4ް: }w|t^o F B|+a kkVx;sT!hlxuAKak'69Ԃ,Y$",s^>o5 SU؏C(w$/d_jv pŪ,dʵM\O(y j/$fJ+ _ƾ]:n@h+ =wJtHic 7nXF GiSrwsﰫ8d_fۿ13n/u&XAV:*eݘt!u(6k$ҝS+bYҽϏuͰO:v"kO<DxrCfd|$-fL1Ria:{G(afRŸB,N3 T-N=nU?%>-:cjN8sNhZ/#OXC.[OS_,ug尽DߎaQ?T@q乥FցGg0?@u.cLn2 Day?g b#feI>32^XIh7CϐCdp~}8+rP,y".s}_ilC]h(EbV]7V)t>87T}=3L]pD>0ڕE6X5wnl_@m,*L"`2h'p),@[|htoүT+.{~J{2X_dq;AGfI1yuU:ϔ6u⃶C&A4ZwdgEWnD &VH2E,}JTvpNRJV0J/"WbPN͈2c@CMg={F=2gt[26`7~L )Oo-݃ub 0;uIJ!rI*(ey0Ȣj+7R0aP`F5S#- & l0EKpLN]@/YjVz8^z8CfܮooV)˾"^#)~S,\KalPw2*`K^>XGfTAE/ ]L(#L M`kZ[].os4Z|0.ʊ%:"DG3y aB'QoiשG$װ3, H 9OsqUDA Ӥ2Rf,jYWS._ϖC١`h\oZ/R(Bz7BKH$.f:6,ʈ#Ю (#(9.ɴ ".U(+Fw$dtc5WTGUN3\@*ϸMWs0n>U*:DxLF{f$dYn/W9|PϚ 5G.Y{5`0ƊφoA `ѣe+҅G$E L>7m/2<01 ǀ-\a5r0e0HSo (9zoRfCsJ̘7ѠWiDXk:ffl}g4|;^wDX|._My",r6(5ǠW N,"[/I⨞WѤ"ѥ(tj f邏}2aǸ^ZiC#G6)ܶf8Òu8 7f6i0uj3DDSefDѬ5d=7!:NIյؚ^lJn{ѯst!=׭˿._pe<;vZ` `%SDt/;)$F^lBYA&Jj+IZ?}tSo O1x"h&mlZJcnX j݇ᙱjt|>%=-NF6}dB^~{eG4C"F)b[CN`c ioa [q5׿^^)y*#**Sv$ '`hA[֐2jDb$LHZ,!-vێlb"ACX$ڒnWx(PP,ֵ9m^+ ynKŦڒgIj Ou_zʬ|1ߥWJᩥ-#/ԎEzݘlZM9a f!^Բ"8>2gZ ՁKE^{x4Y#}'=6lx)s'Vx)PwSgu* !Pojό~ #D[E+T^qXZ %`JQi Q:p-5]BD֜8@g Ct9  I5YqnK4}΢'iG+.ϵC(ő*=&aKB^09W+ -8p0K&݅չJ6I}m42l;;,Y6|WykAG{O]bwqv $낪*E9c @SVLOec&4 EF5f&j-MU;H֊qp TwaYu>Q!9mP3Rrls|͡j~"#5j |MĽxD B %r  $28ΧB3rWR[e./OvTU'pfe:vח%P)d3hH[ I˂f>Q3\=w̔Zeu]^JfO{ȻecqwҒ E>7ꨘ` mnGRc?zRnt&,w>BMԫ:wJ5Nv@!'::3^ "gAxFB!ZDpDtc/b8DdP)t( l;8Njͷf޺i$!2i(HƖeVs$`Yj%B"=6=4[,ܒڈ%% -qQOǿļo%Ư Ya9%ޣ|}A* Buyۀ,GB obi(gT1 nY8К )S囃e ͹zHyk[.ڛ?L6ЄX)]zn j<L}eDu)ncGiwYR|˟má Rl*F o,nEU̍hwWbkE3+!YMߥ19g]ƑG|,X{IC˅.Aq`]0Q+ZQ:"@?^[`S|d 0?ù mF,#(3To_Lfdy01>w0K~&F' aٴCZ_Lqy}Er!!(UڒQW{E[P?) CH.*xfrYgP,j1Ҹ9mfz6Ug(B}k}8ܽC;n P(F$}+@~n6YW]qTF9~ӽRVTa!N=^fD_k}iedN5;iGP˔#mt|*Y v@dr1tpIGQ3v^ƇI$;Ԃ/?bɨ`uҙ돛U1&LόI]4K4"U̒K <;G]td;Ri1:A|Ss^@A{aN\B:dŒ'Iv$ܮo]㩄{7ƗR߉ (I|* l+ZIjդ/O|vwI@ t'&1*s@?5䟮R0j[ O;tG;&Uc LDF? JL覉n,CI:[).ԴOMN~5{ W.+TʨIK*yg`鿇Ơ.RUo'#Q52΂ܢm1|8/YS_ jj+@6ȃ8#nvp- YUkm(.o1ޗ#OwSrb5>{@"ۡH0#>}Ud)h{vx;jjh8B$fh! E&U¼5.7aKz=BMs(Ɂ2)>«[{yڳE,0lbRݞA ȭș,;4 sYό;̜) {>}ܪmxc~=#'͗lQKY 9`CTNcKm3g(}MkCPT 0D0 #S'?jx^3-HkZ*60eed[y;hɯ/V{v92?CP#k}JWrŞDM$YLS%dA6gKg6qeD%A*R|VH2m2 lLw5! d]9$hT$M0qO6$ţP3y#ăJƑ[ݿkЈi` $H<8yH\}V"VhC:HLpRU콆}{L WB"ZKN[Yyx(lí= -1#QK7ϳ}mpy\VD?8c=dTbhIM5AwuR dT\o"I*MDcSbF LjJ4` 4(r'>'r@j:{0W#V5* {ҏ@[5iK~A)9i CEY9#aR1j ~ zv<ki ""~L8W2\,ǔ%d](&Ҏw==#_9( O͌v N`ij1 x߽NąpT+.GcB ̽GDa Z4"=jw;WW Eml@0A-GK:(?ʐ767.-~Ǿ&z@0O xiRx0 ϐr_VY_#ĞIfjX ;\s3/rϡFUҳ$KJ8DJ !ŋḾz$P\rv2.wv>'):WPq-Z)jn+i\Đ/K,S|#] vӾ #AP[]`xlS@sHy8sIƞthׅ`.+cgD(yy2B#W3m^0M O*PEMrր)Z/uE[Mefe=*lcLSepH|߇'yB>+5ڜn[p-diX^n f, qB-E$m_2^R(7ekzno%=|'?*J3|t$j߿U HMļm!g!Zc0f!Ʋ1ZFK~NSj~Bws,V1m&}<\ut-5Vwm$\N%%f5I`{UrA1#gRm߀@.ZJ&k_O.b'_yyLpP&}̷rvqˣ㙀,/Fh/Oec^:/FqK$ +}Ei}59p^We6YӎtɇiJy}miL͢13:t't*Yac7kJ" {A^᯲[gy$>|YJ_lx,5fM]|j]P͌:znA1`M_36:TW35Slg?0? k;~2Mdh{W'.e T.ar\AH/(`VijM dAx-NcÐY.3"@t2@gN `=NȉQUՅ| %/%iЎM52Cff8W!zmЭ^bVzw7{ nrb"Crjh'/ =}.7Fؚ6 L(\2%Larz\ 9S6FJ>݀#j#n}D% sH* e[}ණ`g5cs֏ ȋ7o})UWI;$i8T,/v `X xA7wF2ԮrQ9"uQQu8UNIeycrj=f fNVAyx9N&aKgH6zpJXmZD8RZ?_a5u&1꒎bmvmBLoJ0 xk21)*c"nBW%/s0UeG<*lfm̈9@#[B֩w"*ʲ[ N\ؽ.e%0Lj;U=`7|~ҮA4ObљHgxLxGC^*Ȃ`oH-A<(bRr޻1M<KN雬ro:,I1pn8יYeЍ%aR,GH>WG18itgs?Mx |(^n=!:$ N$Ő'OXHL=+&:1M L*g" 3)Xb2} EmR@<^ 56%[$u?i;taxjNqGgf#]9*{ƣ$3˦ K!J%uh@ _;O`VXZG,ٛƣAPR*6~%̉)8:t\`^k2G:L{ANP+Aş;Mq~rrvA3 eu0Eikq_p*~=][cÖq:tZ;"Q9RmjԞvSyz{UP"!gxʬWtRo1Pn>L ܻ/IS.'CsPN澤]8Kbܓ0%"!.P[%7 'ًD eo{P#|QNu&6MuXॾϴ-CT798r-=^WqչNhfR.b{ [3G?_"Ks9F㑍u|}rB*tsah=& 0xr!|6Ȃ/|ﻶ.Nf:TUʶ٫⏡j*=79dS&+?g?p7)\29/M8t\ůoaΎCô)   ̵fDձb V7%M\d:/ eApU11*Zbf&ZVH&HT 9TvNOmb"CSy_YjͳNӇb!g^ڈ#C4 _N<)F!+0!lЃ5`Ro3ӢvA=WJf@{Tajw{cYi~ $+󎺎@L tw*w[-3FЋ\ϥPIUyؼ>i>y٨V0"3[kRMKxa?ď pgDI>9WsqmT#g^$M}ZRPFw>k^Yx/9Cq$!r]3)P{Cjڏma v!4,(OiLFX:Zsط NkFs2?yЪ6;8 HaS~@SnI`"3,h[ۙ]Zh  2vwVrq΅^Yxc\݀JW"4U1r)!N!$!6]l,ZJSDE6F0z|kyB5}\>^=nF&P;)~"E?NG1dTPO/8CUI6ɈOm*TqJe 9 | Oc̗|-hBtGпhN`ѩZU\ ݬvSXW4V囈ȒA]d+Fq-X:o~72*D[eEC*3D @]V6N n[ Y^性R/nYpYef o5Y%ի>g 1'>)>I nA5%t(2 4aVIOz.c Y'So,O>D܍.ܘͥeO+HYf,$&Q尙:JHlm ROޗ(_n=b i?YIa疗-$=AT&ߗxr*r.pBְX!3am :BfluE/2N4ltn^b 7vCkM鎎dv8XS?QR`(0iz6hnvsT'c*P*>&!ͦ<4zlΔ߰ n c'8g\%Ez{/ /Xw6r]qUIPX~9.rwlC@)yh{$4`N6 ^Ԣ}pVSV^]NNT`O_ZvUˉoQw޶Ð_=`{tSf3/5b*'B7k,iC ކdGTǞ6`]Va!FE콗q=uoRڃ#^gԤ_zRiNjF]XV~/LC"X  µ %ݾp6p9";hڇ5, '*6h,J', _ơ6l2w=RFǔ&en#ZW Os1x=Y;qi0@23nU]Nhq *Fs=vrCI]5PE +f-[׆lZxyfmv ia÷ ?Z.lkK f Xue/CF{f-#dܮoY7;BC;_%L"ݫKdZRDE,zC+Ln(̦{DB6JN/앴iq ZZW큉]L ?au $BumjӘ)A+ܞ[_}59+7&:vM29RS1ϙ^yk^oA~+58) gn$~mTV Z9yj#KvL ܔl M^^XF:_G|zp߄ķuY BKTa,䒚xhJ}sɮˏJHE +5o8qC46@κf :0_f<OxST) B[<{-hI; ZqR,$^ױƖW%E6PB6١ rCa"m{lp(ۭ/YX%])pnMƃ5R\]]oE]2yt#]T\ώP[r8PiZJ/En.z}"OYd `)x`=dKXMapSĘ6F!źˉT%|"e쎟k?+L*t~@ا%V6-b:lIdΨ Y*Dی=Hwҭ. H=W<iIW8v,:fJ:8L;?+ ڎDc5<Q[(tNۄ""DZCR\O,f| ([ kEɤ&Wa,ڃ}a* M($S^R:46b-![O%vs񙮽%}XJb̷!I*}ފHz\Wn6hZT?̢Y  .-fdUpId@ Ib/'uaB %>F9#xi&Fh5H͓g)cU Lb׵Ө*)/x?*cBnCtdQpړxFQm4-~<OYtjը%^vdj޳~`t&@x|D嘴 N(W<_G(:nCr̷ q3ImgR5Ao|ފ1.!DtڣVB*(FtȦ9ek1ըrIUH5`(n;]ZŸ  'W*Q4!<?ڵ\ \[L zJ{ p-`9 UdDeg3n"~WUmL#UBs!.+G6P.8vyX*@p5mFC#3-]!^S5[ yr_PUi71DB2$Q` @\'tA9N@{ddqqB4hg4V$ BwC -J^Fhp.$<#zs$0KeﻜjMX1M؆QqnGYl1 {fq48.(:-8Mvx¯ xzFT: k@B` b1-3F{xRdr . 'I;u{lӑE`C[i#0ngCFvb ^(HXt6mԼN9L:I@G_ wgM"4X^C1/'XQYcd  ji%,>hÌ͵ J"})ebƎs ^قixwXv}˔v1X].3#i4S&>:H"iVZ'@ٗ8Z3=d9lbzn3xmtsi'"Uc#J7grg 4.&:uvQ=/H7mf 7!X o.4qUE$8>#xPGYOPa=r"rF#ܒlvnldT'5Uۨʕ@H gfdm=<:wNb'1`';pFOu>H;wM|xm *!>M#`,Z6X͌^? /mRPYԀS6W+DDPp5힚#{XVЏ̷ܰ(ni3gfSbɥw]h*bsMzpjC$YQaKw'ǯ;kssZtfפQQeLddf6jupPW@e{J. d~@CDtEoCU..z$R.xw̚3v[Xf7&ʢjt^ xCߞ|)?RJ2z&bNL˴`<-d*Ɗ%um5?)s_u /祚'DIe,™D6B@Cf[[z fT1JY{qa'R(fuLZM}k!gR%es&Ce o0,S {B*u;"<7d?vN_pqH>baBΘ9ϐ-˩.Uz{N]e= cCPI7B4H<*`Dh$bwS3 k'b"^d|jm&g ]M= 9C0}5)֥T[fx㛫7lf%PbΜKbmu{=gSqT{lP|?AS2UmX1쐴z V8vK?0-)FECjsmU%vʲPҧX4A5# >ɂzhf,ZjdyU9b/6.X2GH?.cYnrO9_NdygK7+aί<}df9ݏG↶CVfKc!S6FIV ܕb3fA鲥X<&~NH!`^DG2LShs+nEဵoN^F8˅+~YPjTb5a,>V+f* [8X_9)VsˣZqZՉ|lw~LݶqrB=6Q lAh#"iz%I=E= vJ~mTh6)m}!Q18, {?.7|D{'f%;DƃaS8l$a tؗtiAa3 ɡ7 |W2jW "#-kGꨏB/,^.썝#K 2yXjZ=iR|52׾=> f40'* .`ë rPQ0"50} |-[ٹyk%:_ 4 Svobj@ 3EMf$b+`Ҟ;jh ]Q !Y c泱U$S:+Pk;C^AArXNA'\*# q\n*w!@ٰ A Buyy; .צ[^)5as)٧gN Sސ<1SxtE,)i6kaO>2P}*&"##I.6 Zv4&iri*6-Pugn;8F h21ͼ=P9 rQŬZdeP|D*VGgˌlbvsH_<7e>Q&uGHh4y$sb0ƚ慼p@׋$1،wlc̉v`2TӴ d 61_9XG`x5k Ż횊s-n$^%/4v+ҫ+9=|RS:k^:Wo5efnǟl8}8%z)+?O J162- 1O7ޕi&r9֓J?Eَ͔P<ٱm>~^69,zv.*L<>5"#NxZf̺o0f<\P| os_}֏f$ Rw>qמ -Q40 VFe Ljx}Vea:_^\E?"QTb7u3j''3}4%$ڥX 5Nh_ u~q/@Z;#KKv9![3Beuuy|iVSٵYG9{;-wf՚f̨w+z%/DMw̻ V: 9 SԔT3hQ BQ2dxe<wtʩɁ/^uwKIE=9掎б~3Z;v̵7v$sCRGɀ_&:3xݥv0Byb@୺*fh'kQ~)lZkp; , e6KìfCVat}zn5L";2uVwM_am(j/uclc~(^9Zz7k~_ǚ<W?J mR%34A'lw 2pΔ$,R{ Aw]hᬽbFKp.FTËaP"pdUN˼6Etp԰e«wA{"Qr1gMyh]lDbOc\Z%s*;-}8Z)GA6^K{_t"&1wvEE?xt .vͪ)kO02U[ګ)b{ҿz$ye7 7)ke~u{/oK=Rav!h'{IXl& @u2 twU+*2,3(i=@!HQ=[3-. ;=J*,nMO7HLeYXiW@c.^,c8a_v T +䶝kh&.&70ѕHˎt~= %KFTᑰf?Wbԣk<h*9npM8VT 9"鍕{&k٪9Ƒ^EZ9a s%G23,խ Z_|j;qԴQ66x(UJ@Z @џKv쟡 YٵHHDԌdhix;^؝{nnk5Ɋ1xM@6IP̫5κqh^2geax.GU|GV|q!qgds][Xc n,}6kF1ھ!nQ(=P?闞S5PwKr&U/*VS=ץ?5HGRA|SL?[XGIIWijjZ∳Fs[sF8JD.'SW y!AV/m09d!$;+5j9 dv,r"~j QApZ1kigYZ^+c5t0kT:Pp;cTJitaɐU`2>M I6SQ=)~2>%wKZ8 ]% byf1UB}:V9}Bw]if6IP"|s(/WfhlC#(%{H/3XLk8 GngY`4))Kh0) I:5JC K 22eJW]HzO!u2Qg?}8EJJ)hLO,mrׁ2gjvыg!S)@Gql eeaS830oq6qH,[9`,(euAaa EW 1<٩:ucH]oqZ=Q /9n;a6;n\ kdq_E~fow 39LS ZĜ-8CZ.+xZi`\≷tP.hȔOi[x2ɍ\Fg)MwZBJoPY_S֊̭}B.öK+ A3k-)ׁq^UQ[b|y?>$.*RW7矀2bfIU lK~ P0~'ʵO]1fWwc]rv_.+g~t28"p!e#4|\5 Ye8|տʸ^7|*P:ijWZ鴽ai*pT3ZQ.sQ r0)4,V Jvu97%X~ 2|繫DĽa5TG}eE Gk\ʀfvzHT:c&~`3]~ h jeAZ؀*Y(4J"7ХX鐖;*%]S->Mny6:㪬GdRjtʖk>&݄P]nDf9:ӷ"=s‘}Q3M/< Xu~zxoz:Fe_M!*;{Y@/c6 ?IZƞ(sѭ \ٷ%QC MiCߔ\7VVB@[oc-:^r]ۇ{uQX3gwƚґB2= =w˱΋Ȗh^Ĺ87 @{\I;=?ŶKdQŹϚifL% LFyǢ\sE@% z@Su ֐$YAc_%\)&,uc/īa> ۇsg9'#ϒkC"K6 遐DaE&u} l\bW0$eU!S0ַ\Y6ՏTD(ὅΟpk\ƒ :QbĢ*7h8{*`uöC{/C!٨|X\Mzʵ'9`2wt79͋\!]F~Y1eg4Q{YV52cd\9sRECM\яia BAr(F;Y0o̫`@MsUB%`U@\)y6\ǍP{֎}ݤwH5Bͪ. @=|:e,Q/%"S6V#Ɨ@7nkgqN' %yO|nIŭcFY˙NXJ,1@*KfHnG3J +g%MO$y`/WMiF 7gHdT0=˓ 2;{Q~}nOЀMLz%?El%xh3V-P==ޖ;6([fP95h\u}Du]'*m "G 7[Re@Rŗ4neŧTr|ZSx,\`;a ۤ~/V 6"}n4i@;eNH.3WM:\2`l /d\fwMAe|㻾_x.ιӽ+' G >Dݺ*,3r4/lbm84J'~Lrt5A3Ӓ=}NTocoU$?LSFU + ^ U I:CF}!X3t:ϼ6D5zuʾ0\5}Ww a6[A{.;殈yR΃N Җ7[`Ɇ-tP?, o50 tޮLB^;H2Y3^H-p"7p|ᓰifGܭQ毂JmXa?s3:qLp48s7zW8GB > DW¹ǕUqj*ML)`Jpmtki31&s3JjݓY@  .:*+qǙ;~T˸$O4=< {-"]><o@$[W󋾫Uw +YmRDmF(Ja GiaCǎPW Tˌ"Q:U/We b1K /$9;gd/q;JEgch LbZ=ő'nb$Ia= ӫ];>,ݝ%s벣U3XZb% :)c>֘56>'KRF)v&x= zbJ k  7WLY-3mJ9N3 ՐD 'Ƈ_+8"KmGcHҶfY/ Kgjcֈ##Ε^B9~N[m)ׇATH.u­nk!%R Ҩ gi] ˲?ACJ{RKudCWgW0~h_|G PK3/7vok]KѧCJ\#Y SW"bqT(WeWӤ5-G+般lwK"y[gvR (da7%+wE)@uV"jºFżw8eO9ĵb9OBNK*-fnKmIoͷ'! r ŎR ח33(ߩU]Dtli˥Rký6wV}hiԹ.V+mT4h]IBEqxg\ôK(I7巅G`Gt J/'MK:R!ju7mj~ (X+"v<(kC|a\ 2)O@p/HyBY&vˍ~~i+;/U{@`RdArk3ݣ! ߶uC""e.S6kZοRа6xœ;gM&3 h*#H,rjtl\Ν Q*ىdyy18A3>oU iOR_{4$9:f'umFTc#` KD"I mJ`$NH%Xtu$C+[c3mVpL}o8?>z"̝N"/R?g_~ջ>r+MF>hk ;;h;ED> {|r͔(k;ml&S-==/:O>A JYضp$3egТ+eUٞ[|앛R5%p0*kћ1e[EpJe00u+s?㼋*5:Ӕ0?~A4 f4+cե 2bMZ)$D2<5j+{SDMTyj Ů\hC yeU_We()kqϡu( `0memLc\\ߣs7bԝܳĄԛ󈫚2Y] Bngo~g'9N.euŚްI#)+2512v)R¹ӓ5e݉I{WbmIhUf$C$ (_˼ &4[m46 w?؋ 5%Ł1Y&jKeY湻kMXeʒY)l#^dh!N6%?{chtLfE؄ed_-ДF+lN#gq+lu?z@ǶTpp FsO MXBA?$0W,3#1z4۞8F~~OmhteU & -H*PP]ě+|&dR )[z#uKlL(U WۜPb͊'QLV\'/[AYBvR2* ]obHh9h9Vn:c9,#i/OD0WtP&r`%V$eUzdߵΙ{k[W5%_@whDKOu͏%z)dݍ(Oxwv) g%!ry: \`ph^BemѧD^@&\f3°兽Naΐ|΀͊D&p"3 mOⶢߙdgNоïrW;(,. U %%l{ Hn%Zc!IDUQ:O"a#NAE7=ҟIGŻu*(K/Yc45dMzULۓDzq!:3qۍ9Zv{T7ʳ|VxQn`3.RZ"/\.byps>aG|vn A|#JdҨۡHsAɡxbܟ }ZxqRc_, gϽ5DQGE@Jt!C~:NRt%~)(W~__O2# 8g~c/y8Y2͙NS}t)w9+֩(#,q5C6- Cjw3fىayGTͧsFAqH}^Y? `G8P"s˫m=lHU݈bFﵑIU/Oժ/tS'i{`o{+]⌯ $Ѡĸ&=\k52ztpGVWC׀d?[M.YH+ӈI6ߍD9lĬ1 ,D6sR)D p߫#@?_8М6 :dj|<+~^31=mj'GA A$3NGىvĩ_C9sֻm-2dHv2n%Ƀ\F= P iPE(KjJj r-Xgl3seͺwޱ:%<Ύ#CJ]D(# "T'JDCGQI]kAMzag%X`[7(4nQ\V>A/vdoC ǻN0rkӯ4f |:E)}Ww_=OJŘ]bo ,S]I hA]{ɺ0Ml0AM]\9ŌNRdr"2ΰ0c οe_DuNT%d7%j4B&ׇqb dx8̚urj_5BE Jfl-'ܔpN/U#YW~ܾ3뜺nYY6,` 5U, h 7 큗8b4gcz4f'S nMuفRU{ly:e0N@!_ǐh5B!OeZbՌd%S>Bw:PϴE Ɍ0 mڍ,+U"Ƙ#iQÅ}u=H]{nN[ 7ϓ:J cPlJ6.&\z0{a=? ?y#3?V{$ )572Z'yaz Vp붖nWo>=_ސn]lh Ufh2bonAɼD{,RSN$*CҗAg\DŽ4L6*9K% cFCgC3n1Uxc'1d "KhNò2;4UfHagvH]'pХbH{R,^'/3^񹩖\%ċ/F,Y27)kl 袬~&{U_sO\(P-hy] -fnE$ =0r|?/ҠWitcl2C !hKr]p 7=~1 C# 9dE  UO-$O\'܄ne<O+4μBOP:̶[vv,A7͉zLYjm1 sp^ N-%axVVR#_M0&}:[7".үܿSI`νW4̇*W'5pH$~N5*s 6Qʛ`^HHENw4 M1?)*%L!=/ҷeOZtq !68ǩ# GlEG0MI\:%_{5rL /ҥ?=hr`BTƉL7Ơ`߾lUn:l- ~Ij9:r=&C&#@mǭ|>L 60TH"xTcN<$,3*74rq|As͞+qc#h}<_0u9/VÍf1us:/u$nC8HH`Q 0{P *n'_efq8pxNA;GLAزf0VDҨ0}9WB%Q/<Ik<ǁї}w1I. Cf)JVrOiHIG/膳Q¤%SJ%ztIv4m֛{\~pa$<SH$N?eV߫LC3Xmܧ 26D"Up(9GL6&N25N)D6|!:x͙۳má= uKGr-1&bTEھRr^s^5/5}tبq7 $xte(fCہX.Uz,d(H2"&gbtuG밵τ4^n>3ƒ=J%y:^*(;NnsH{km|>iIu_ h+$<"f|Q؇9x'ދے?ilkfa:i2ԚTQipI,R&&XV&JDXpsllnrNAaJutUqrI)+ )_b|بxyɲ3W1;o `mJj&0Jk&>rֳi~6$,k>ElXڋQf'L$ok#E¨=!nq2{"5uP4{r`-5DBjaHH"MV ͧùq-ڈ7 1j0w*Eռ8 fd>3>lx|gP{9LSeO\=1`2(HGvܚ[gkև/"j2+x L#o\mT_|'9Lkuxa#]ʣ.up7KoC juPL SKԂ;&Y/( TdZ"_ž[c"Y*_rx;rQ}jKChNoD1D֯w؛{G̱S:B=CvMHQǔX8'D6(/v}b&,(oL"pqUq5E^GBi ¼N藘J/SLjU{ dUvό(KؕpjgCM`{3Dy!F2kt~wJqlm_۪bP2rj)Ls&copbeq>:PԮMRN-BbY1l%1,0~([` Vo46TSoL}BI&6hԍ7DjTד)kG)TtǛIa*dOߓVvt@\6iE& `7{^JIh@52up&/cߥv [ $Sג~ٛ ]kv8@9uB}*Eacj±X- ,S)6N v-tak@~B)Є.R_Lt|4KqZ݇1SvoJIYLM?n&2xfж (m,q3diNJ7 .b1LV&VMr: Ŝ.{AZ}!@mȆBcO7drU½aU@E2e!^TΡW H =|4_&ғ:vuwZ`X޷X1(0n:o~ccua|Dk#P،'ا2n ?fȚVL##n}9%ᔯ?!}4_B9l;ds܆4qOGgɹYrH"Y|Q̃"G:qmAOb$ϗJU *juiXɁ-uy"%%/e8S(͇6q29-՞iIGE Y'`Y)Nc_ʃ~4MirN"&&"niwHd3`$ y u WtLFu=5ǰH$71O$Xz5y ' χ`xH~d~>J;Z [`)!λ0q8M| u t7H&\Va3.f[8N33 I ޸>N ì* a!E_LS|.N>-"Oy kt|\b= lɀL; }{XXxg%}Y26識. G$eSL\Z׮:7:?UH+ؖHoNzK%pd1P$%Y{>8UeWF@)p#o(_toh~>e%=# -Kf;c6SR[Wa"ebWqv,Ju1{YX /`Bs8=w B L60/jI{`m,Q$vX8ųR,J8_{G]YY0Yw/fAx=*ehWi@7 O\EgP ?/iUl.2L6-`GC%FZ^uy):MMB5oU 0 $%OEaȆ-RdDVut@25/H ޞG+2J`@K&njŶP^M`Λ6N9WՄQhxx2a=Mb{%K7;G1-뗀<@̞N;^ UW"?)<Jh5Q oP-,PpyX\RW<ŋخZiݬz"xS{y'HS>xb9oI!Y02gwe;Eց5q$nFSf~N@kKci%G39u ˱g/vS K!,\~c ۺ9`$፸ƛZ b؆_ԓwIOKI'd}XܯGi,` jJTqGy4gtbMT4NLsO'̨6&Aqm[X`SҬpWёHIDRCe:_l|?ASp6"/ex5$i oŒe̋ 5LvwÞέs0) c W+^_(WB`SL;_2>>x8OsiÛp>󑂩ـIcL4Ox晳,*ze"!mH[ߥK;qhIƝ}Ѯ6`HYd1 q{ElH~Փ2zِ8(">{Z|krR>3*u%C~d8o}v  WI w"+8(:<>Bx?ߎ$b5A-OrE a14"'ɕ7ꎫ~W?WZ ޺űc "i%(YU x/h1$T 432]+=%O&V.@1@QMX0[wT/{3,q6٨c{Ae}] !B,ZGt.J*$-g9<+,aڮB'fժ@j[@RiC}KO%pr_Ƭ/v0NVWUfiqu*RRMdeJA=\3/JhPUFS3#Y.K˙k1cXb tuh~hFD屒9Pwhj1Ll Qж%; qPs3}O G; #:T$ay=Gn$!WՓR;v /+;"Z9HmԝzR&QOA 0rIm33N}>f"VDu+YWETQu'459ݢaP ~E-j*lw@}}+eˬ#di\2ܐA"Vc?2wS|v: BUjsbϬ2;0l݅+PADˮGNo.vYGӵ&o,_k*ڊr0z0FnL"b|BbfQs.X?*Gg0OyJҼ|بY[}npעſڧo{O d^;]0V3@^Ͱ&41t NGMz9 I"d9qQDZ~9".8&z) p_ι jY jtY4yF?JݠmJ ꬨ+& !;pSUIN_T`+})'<#03uxq1'|WjFŅW!(ו%JYubxt}E2 #c!b-;+*]El7l$'6i%.yxk'#:ڝ\o~ݕ, wOz'PrB{4kg7;9.^f@9Gilbٌg/`GtqU!` Spk Mm0fQ<:o _"9:fqId[WTjY{7cbn4G.)K`yDT)FD_ z䫩I\7*P%#xUs9'Xe2`34`%4}aX;h[DqaY pX(F8KR> phHtьA+۔c˽TM Lυ° #wbe+d7 )-Ğ@]TwRkWp-m1h?B0A^N>u K*)'}8G{([X) RlmGq/ mP Zڝ]!Y0c`zR ZE-تv1y QʛkT\Gh3eQ"ۓs^PHıLmΦQ_"Yuh$dxnZJ,_ń cbEAiiE`ޚfE/$4:N rr:j$YY@cxolu4pZRWP?=9~+|`ؙm6~ȡKA%G i6z3ZBǗ 3c)s kd%7o"ז|q%R(BGdZ>x&:@&Ro'M}߯?l|ËǾbv<?Hr^n4u8( }ZRdX[?Ǵ)*dB?@)Fo' 0NPǬYB|R3\mM?4ZkvGU/yPs!]kM큤n _s9f^͇42,{]AC/X&_MLPBjz*PCG|s9Pc$i8D;N|H4\Al̋D#N gUN¡J&CKm5{˓A!4wz^|Zؼi`Efn^q5"l :#W 1Ld/v7°aeKB5VfrE& S@ bl<ߝo>\"+U/'FAXruĎZ2[ vy6?Sx/Vjbf 4\Uc~2q%pT@{w ŵBvyi$r V_u:v:p,uBkx/A3;خt~K;0(qpe3w=CckP[y 92aCjGA46x v$FVYkiL;D"@m_I[{Ye~"֎;9PimL$ 0>Z" 3m`GԷqZn\1NRU!O?CEMWYQvt>s5E `};>dW /,OxNٿUb.6 [ĘIņ`5s+@$i/cņ4 cr5lֱ!5zd`EiN N ~^H3lF FyA<`t+ߺ+~>A^1vxqg qqn }eh]1 nXqr} ܧ*t+2L;˷t pFT /φ0 k7?4$UCqr^М"p®o>q,..ăW5 { rL_?acTWN2>y`z1t 2$!ċգ[iɘ/?Au,ٛDҮ[ tdoL pS;5 FD%_4(zմ7#+UGL"sGMܙƧZβK3۲l#=p; a]hMR?M{ik_%SVS]S) 䠞$ ,RvG;ն4f6=GmCr:^ $us(ȏ-:6u}^ە lP0PzL^0PkZr %;ԴYZ@ysasqEB}3&su6sz;",Ӂү,~[<M>uְjw kVKh`'Rrԓ19MQ%2旷µX4vޙ`mMZZ&̊>|;OLeJՈmcIG3״mx?@f4s;?Ű֊8De ӕ⾉عmU&bueQI굡΢jP1YBg60_‹*4=wRG{5Rܕ$)&?ξh>v {^NL fRGW)B!^' Xa1'k{_ Z Om0k3ƏJ*x A8S.֮ W_LGTq'ݯ4.^ S"ŭ=瘟k|g2J!о\Rp QѤ=R&'g1_UO;7 Ifz}`ڭoN.O8k÷[؆]n߷k/9:ݟpSА*%q0i=}˨0TW-E"Q܆ BRa( rRzqڠƃyԕ;2/.z=A<‘~{"VDYL$)~SQq̇pϩľ)'a&zŐ7M©px!‹d+AqVF(>/ϼ_Qk c]@JiìJJ˺!.j|혟b]<Žۀe%fk;;VQLl<&jS̄u1ރ ;!J~|-|GDhi",H5g鵉qkjK8=]{ R#5>!ZOj[L5ԞWe[#gϼ&-brRC!/'aQI, aK?@6xmH"D g*ZYNz^Oi÷씜Mf: 9+agj[a,6"`om8ʻ\aX0R@ n׽qhF> —Nw>toGpV>[_\|Sy<`ː U}s.(JsſFϫ3БrepurR[MKsK\kX:#)H@d-;3džnrh|֛?Ux;]cnaZ&v wt>!۟CQjr?g$b E.p; 1OdS_mv%Mr3$"G)&%k`[ 9m<3hl/L%$w~p rpLZ?'MCLyP.M8f.P[Z\ aQUyP:;9yG6t8>첳a,񈟤͟]L [gs}Z|~pZ-[3LX V%, I$r| ص\D_lVa\]/Z;Cm fƨLJĭ3Xu\C }uM5T_ rR"u֭ƂW`%3gRrUYnB&w.9IϺhBؔbC*O&IA򎷂׊t|5! ^ע 2/m.NʹON %'KN='c<XrbwҜn~g֠$%!ny$УP mO+4yFT}|˝>)'KD \o|M'\FǏזoCSiTi{zy⥥YC:lMȾXC勺{fLs m&le)hw` r=Ii`MUyW]LTKr= oÛBjsipo,UGgѽ}$v;ןZ,3gJ{0nQ1E u֕p'h (S8#췌ƺUo]\ew+@Ǒ; T}~Kfʸ|ج\Ajtf90BXRgy0 iݓ6x/qo_͌F)V\*]&y C^fT>@4u N٨Yq)}K42R:.ękKő/@Yʮ晉,jd&yxrJ°ȃӶ?{9ʍ`aFR03?'h@O0fL^^v! eI?L*/3`Q9٧Chla wԾvΑxzETa\ CfD^7V-ʫ+$c-_\?qjDqzAzD»QU?k C.ߕ q 0ܪ/nnr 4Rt.sAם_vBRYdOSX n 햙 MGZw61be؁z?K"a.}j uTk۵aDr!4-/&kdW&a j.G=~dJL+Jon2xL]/H5|mU 7؏>55/ě7Bo)wν՜x4l> 7]~|3#ڔ*k%{*)էTG<+I_'IO4 3ɉO/x= ՛B1h5D*糷lo|ežR;Ѯ:F$oۘ K+Hʚ/4˜BICCAp,& 4`;gD4HȨtw4f:m~hIaf%d>PBfd7S3.Y +2ȚX.>O 6UfǓe9xRssԫ_fa`D͹pjNt' UEQ9˯uX|bGz[`]̎:8bs{v?mGSiGboT!AK*2AW<ïw$@F(!pvR;/k-AD˂MyG 7b F ]ySH-B7eZ8,\etu }hѭk* bj&Ɔi9/uze LJYꚏZvHTx_Ĩ8hz<ȣ{o{G҆IwT1R >#(62 ێLK܈x2I%PJξkf(T;m2؝WEν>ǒz9TkARZ %1Ö0ŠÉ[yL{!!-kc<&phT@3 6Eh&q F=p=amṅA\jPs.FsS+Bk-'U>~63BߤմxW?G C; Bv)E]u `$;0a GE~ܽn"folgtј$!K{ =}&s`R4uB‰]dZ>]ۃFڭ=-t*;$,-d:u;'2mJ'vyBʩx&z>6u y-zb:OϜU oASrj.vVt]q!mlF|1NKX" }@/9o2{aPTAѪi'&!Aq}T ңS}ne,CCB7q%իQΣLOwpf$9꒞ ,y}pA]j>31a!)f$f8f|i~4ʙtczYm `GߋKLcZ*" ZìI:3͚`k^0\E<P+TUWjdm欭 2a";COj#i ]lA&(?T!hyNBS6:=E|UGW񭲁qXd .T\E8TXӢwYӽiӁu^Ys~EJWSuR9$/!*{!p˽;=p<>Wm@%!V$aIՄpn4ȷQZ.n.h UX5.Vwt_6Z* S83oϡ `WIXʃmN ң5milqk>&, n 8!-wb\钗XW0Dx*t]ҞO5 x_B0TlHn *yjnU\\.bQs}Ô4<1tf!$j !_f=d[hcxlʅ:}ܤE`8;C~U;V gJ˥[kUFy"Kඐ%c7"IfҷdFqDϕh Ӭ!I1Ek+>`ew Gqd ˗O=tS?oWK\m bC(`!3bQjӍ֐, QiWc}χXͳ+moLFk ↯Q4ySq`bĻ1f I˲Bs5XcȊ7bO#'h"#-|6o&h mn:f4ʌU-72`^>.5BVCX]ѽC*צƚu4qd`g{˺훆ړE.~U|=C]vV P/z<͋ eEQ(v2'>IԺd.!ȴHr#£_d%`.gs\Stm6:`'>@F/;lx"na*wx=L|=9_sBA2ny|{R?~ವ5L9*d/7 V߫DCnR jȬ=0 ) 苨ؼx a:4m[aiwMLF=8ϙAvS[%'e?KCe~l G WOmAbε`?*Y@NA$du9Ff:tig%5 vmq4 䝻"zyEӷbv ='x*Z`eϹ]fizm=8jnN^,B?!EP3Ǹ6Te`$ &Hp<ۍfks qqo736 N"BHVp9c*碛> i6A&ɣXq߷ߎcD\ %M|*Xte[ /~|cٍ5;9d# f^xWh-;L>q^FCVMjC6eӁ:oIa~$`~%ffyRKrNКp}%}sw>F(~R͒A+rSM?B}wlvLiL hNe.yn^xdgV{2GٟS`m%|DK9'&‹Lo5ߞ,(N,>ЍAo*U(0IZ*t'(E;~p~Ytp, y˜ ##|ZQVDצbZ;m%T9CaI, i6X>gc|7Mzd)e6+~폜phX `޾z!YWBq]2~lGѧҀ,u$, I LRf]K;S`f͆f6naE߫?ϧ+O9 fZ@38_&^D`fAFBS$Mnn۰Q}^:Ut4ڀ'&αRt pC~PS91 |fp}G=?QSuzz)YJ׃]VٓPC4_ } [SCknjND9oZ;3gY*~?]h`ˋ!ڮ fC|N$\E*Y5ݷA9qQzJ'Gr+IDJ\(W4?\NzӟdW3EU `"[/86Bf*]ųlhFo s2 [ɿϭ%:3~򴞖!jM/V_{Ca,3vvt͆ &UߵRJKlvZA@*$lPH>X!]Y>_"A:@vn<[*^ﮮuymؗ ی8ddzNYYED41pv,uDZSp#I%)w\sԌ^)4IK_zX{Vz`5i(*oƩsGQ*AIwL#%7=%IFmĠp@RI:(aPS2 mZ]{P{UFp^> خIz/&a%ͭ NZqpoȌZNld%! S @IN3o|c4616D7Cy4A_7X\yZ8!]ҏByaZ-*lg2=]#ʍ} !I)k|-lߺXJ YW3L nģG{9, x6pŽ[H׀j 5c"1?z8Os P:P/,!ٙ*~%SsïE<q&+]2IOTwkPωAj=vfPwth,07Ę"#AyL[^8>i!00•;řIff8Snt*Pq.mni%qDٸD {Fh'[?bM!2$ R2耭ȖD+0`uN0 _L:9k:$]6a 22)u_Ǟj uKV[ @ b4E^@9S.1ұ ?g}(}jA6'bVEQ0"7-eb&.#Vf|>8ݴJWg'pD_-Hq霵vvICPX2;g 7(a}ENH1K}NR*pM6a)^2ݕj)Cb!SZkYѳAg%wybc?kZ lh 9@GeQWw)>m< R\r"e#- Nw L) aQ!L|ya*3D]-3r#ArOGBo1$I*4tzu2p0F(Pvx%*;#|n'3vSx Պr w ޶Ȗ80c7.mrԫy=MA%.V!,s'=ğj'}oNl`y޾i 5k{re͌b- J%{<-sTE{,Q=u^FQZY`Ey(hom=n\bܑ3$~ƼـԵT"_7_l'I|v*<6AJ\@|cCeہs{ (vzbP^N{:H%u?V?lsa P;{viX]%$9j|ޙB3}玔|Z]-7EI[ l*UQp EC[x& ]"]ѕtMqH:}nN%- 7ZĪ4xwz#nV@Sx*GK?hmk/K$OVYo[S"h{H?P*4hqE͟>e&ȸ=*t@ԿkW<W"YiByuG,5e^m&܀Qt~-P" Dm |A"l-aLuO=^zxqW2{poM$2ӆ~@OvJ7\臨%E`0S8V.p,(G kX'4T|DTFy஁ZwEUk<ݖFBkwNKlC 0Q<%_n:Rdf x)Z%lYiC@I$zh{:GuDJ;T B +Noq[l<_'\ ~^iL~6G6cxY$ߐi=#Y`,WOjr37P'˽5hj kӲX%T ȍsU!=_;i 'L%I 'O0iєՋ-|m0Va\xAZ,*pErS2Cр#o8#&9|tV +z5e v8Ubd^:v@\_'̂pvmB6y<j*@/0€0z`^8]s}~ltNBh;h#h y-nh3f^gYֿA94D(5?NDM8mZ7[,Bc.+m%2Zԓ?|]85BT}I ,bxO3 l8L&LvK(X|~3P֍& 8;ϵX F:j`GCtlw-IքcE YeOS{B,oꞗԽI0-<7.* %{yG ^y$GF l(4^BR}oÆX-Dk0oKpk-03P͠FcQ5>&0 r~]|0N >_0o6seR7VRA@ uglo[ctp'iS !*av(d^¦g֭8igh&M}[گGKXeY cുӹ,,KM,D8BJˏ~wOL4emqP<8vZAR9٫sU'1JE@ޢt&C8] &[vKqzvSN>,@f7D24k8Q:< 1n`]W4B9i :qI<֔BRToVVlG?ܖT`L6R>!6^eˮea@-g2nT9+Ҙ-;b[vß = x菫~ ŭ6ږIl0V`PYNxFU0IƆÏnE#W(VQ7G:*D+4)Y/wX1&MUk8;T "TJDr0wL[!e- 9`w##G0WgZ%Uq9T[([I s#E>*7ZQ fB MKO`frpy߃~eZ#4kkTM|p4D$pYtP9y(]nC3"INE[)*je;+0:BJy*B_@ȴq9"Ÿ%᝷?n)E58fp&uJPN^*KP(D4m¿Rz]($ҁ>,O#J#ٳhS8X +e x]x)j#zV鮠MRaw#N l4nKQ2 #Q0DZW["Fv!~!YM`K. sVw]}|@[ y7Sl[kY$ 54*iu!h-CxӒlN?bKf0ETKzgag']h_OӸ, llɆ-0A;\BʎZQV'냌8oQ(TBQʹ,|zp{n0-.wSDi*sn$gcPRM tjF&s~5T,.hU7Iriu#<1` PTutaB"$Fc9ݰ##.m80kqnz@:^;a"@Sp^V#ITrG$օ`KC6St003V\F)>pcΈ3΁VZs%wiPK j--}Y\}g! 7"ܺ>"l`,;K?:`Q>"i[m6rwϰ|MFAsF em,J岘/E횇=Q W-E])xPFǬ5H9ms.Ѡk֗kTѦ6ZKlFCqa( TSdsqbС;VF"LzI"7=:NOR#p Ƒ@pʎrAȬQhdc<% >ݒ98NEbnqUȴ&[υ 1r;@_06x,)3#ʚۖI_vD{c$ߣ?:WI1i0;dV$²/o!^hXwu`:] S#}4OW>&$#1ſcWr#z9lon9RO&| r3 nN  4{$]q+5x4o@Qgc?mIcK_!_Rp#yxD7b Nh} |Ӿc}U~1JdHg"%TDR\d>e? Og$x(#$>_&tivO sb6f>#KtCRz0ɮW*9dʚǸѸ'tL-"qG uIizgsWUPQ9P̮95Os{>P*qhM3XHn-B',nf<>qVD-4.5A,ݙZlfwfPsv z90NEr/NiYix2ТNgkNh(lr.ڠܣ˔wd"^>&y|BUj63/fы_PgZ%-^d BuW*iQ|~D^ƹ3Gh-Z'x>3[ O;BH8Q~S-L{. Hh.4ai%ްtj%{ gUvg_p[j$(2بv+cpuvZЂ'MuHeM 7AoG6wYӤlS"5AW*5 \_7=c)Fh#c6}Vv٘5>>'#!Olֳ*0}p56[iJ{KD֒7 |{Bp`yz_2?xLQ[Bgf#VBYHGx՛ZӨ+JBs/Kbd`Ġ`$f Z#b qY\|U ?ce3eOXyBaS`x$YBit)ti8n77~4dR6`ṬOQ)NռA x%8M8?!vAqG \HȆ>|$FK J*DIhT 4Nj(e\zEW(hPz11`7_-c\*3eY>VN.ڕ8 YdbKt[ڋ9)Mh)h}#iB$zy p46юhY=w+ҿp29@y@HW[![̵]!gUl4ZhFќ?H0C5Q}h/I@v4aiRy G]WJَG^*Dּ\3eq)M7f XF?Xeb#`.,EsauYgh֪%jCv"rk*ZLJ96_gD K6wtq%FGŢYϳ2ƋP(IӚDҺs՛/6K_gi[}c,/ba¤q_NDi]5q>/-AnhB\eIەBA}i.k2tkz Q^LM= pnB+~P<6Ab۫}m`;CvP{Zz_T2D&Py%-k)/nsNCus>SU?m´Lpz _0kpCy@8q!:#q, 5:jd7xbgd#G0ׂ5fHd< tlדb$nű%B8zo@ WU++(SuiODbXGPu2iu6OR\X)!pĦG*z9a`h8E,l>^gá"%%A+/Aҵ]{P/0ЎRpB»3?Pa.稑4-\`=`;d%-xbK!Yѳ|-8  /اt63%fr%4k&c3l0p(4E)o$D}%܇&|@RX.t iSwLq [WfTNG{KW A:6I:8i "L3ܑ$V^NhiUlP%ʲz9hD$5xԋġOe׀Y< Rg;z(72;wf'Ev7`Eڠ5FYQB6 Ɇo;NF5M¹Z{5I ֒7Wп3Qʚ=~lV QH2kwcS"Q^JZ BV-S!ak.RS_cf]'$SeYnvuv- QQl)Z8=oK9Fa*\Z b+{2@O/ <0-󛌌(iwlq$9/ ʖ/$ &1{N-Ip&7A|=tUbl5m4:$?TT)fUNcM1tRGp|A3a<1ڪp<Գbb -_0p'b0mi+ث hceŅ&cv t?b8䝏C͂~D=K:|c|'G^}p罅~X5vyۻ@1Rw _U8S2eMguAB D)WŻ9tsǠ54`A8_CTjz]91UjL 1.n õJ$ G"B蜌VB]cbfX~/lY9lꤲF)`܄kRQ+B@꘲2-k$h 閠ԁ<+NK- DZdE# e\GE,@RKYptv φ3CT9@94P%ƌRrO 'X3Gm:ر$5`y`Rb搤8uj1 ޼ 6\dXӋPp6}wxJ<Z- >PI\de0U\1hD!5 ׯYȻzraC.C~6ۦC)U|R5|VJY-)nI˗-Ͷ@À~ł3&LCMH-2MOKt:{{^u<#<ܮ2>q,)ޭ *+18^هX**c*JףJhjD󽩞Ckn9.a_qi_\Yr=o]w?}R^b#"SZ<%Lo0ʹsu'x0kvץ_?_sTVo8i=̕aW^4?J `4p8Κ{˚AbWAk2,) |?g=9HTUR6%]/x_=Wb髠dq<U#1g94Hk f]v&yn9 q)|>XEh:Սa>EUϽ\k*MDyRʆ`⛍Or0U6ofoJTE5xZu,߯}ie8A &hK5}_L˭z}S ‚YьeZleq7!e])Įs!LK))@Ky֧]zok|V3>H,/ ™b|bnons(<Ά6c~cо0A}N0kh#:)=~sȥrvaR=i6N |\qYk0Jys iZ!dWȕl,3b$F/UB|y)٭3A0הqs\&#xVǩA7xXt~?'[%P?T&JWS" nੳny&5KaSk[L# oBmK؇J uWѕzVǝ܆|yrpa2Up׏]ZX !#]vC͗{ a!㻝쭻/^^h;>s‡ *MYOpDO=g8MY3-&=ӥXשju] ObRb>Ә-n<`On3T/sm=ʂzNuL-6Z6)!1ڛBm ՐfPL%uׁ٭~4%Gdj&϶\£s`dRցdL 0"S;H{ASaTGq5 g=Р lXah{3(N^Jⓓ\ndz}`TK*q/'ƋcTN6*B{?)ʣS>t#u0eRn&MW#Wa]mncHk%X1:iٵz("%[?,>3L[όr'|`KLm}2H~)3q2nM8Z7Hoݒg, xɦmF=JQ;[P  JVB0~=G!®ot']7vU*yRDmk[UNy_Ț1dݘҪ+f_j'D-V5sWJ>ZqkaR /g2q' 8gWf`o͇۸袚uZ}K[k,w8_B\*98%B"$hoتHw*(uUb2ݙ*cg0]W*K[;N檉@PyWɬ8 Az`i w%݇/:-W0mB~`iU>jRexZaILQIB]Rc؊H꣫;L1R6?v o]&!=s\+f"Hzz@)aXe?*xTZaU!y4YpzB#~>o2kdoV pZ_n4-z̔f^)tW`??GVUB ) ~-]4ż@ d8{߉k\]؇l.#~1/;Z*yJ.#rh&R_Rqx8#Oaq"}sѼ-Fpi}O,OFo6X펠ohAKK4%D8a؛^wSv.KL݋|,Qm)wY0% jl]Ya{:LH'*JNjYo֪}{yc=^3%jI2s)d W76Ќ6CGQI>+:i5 C#vٝ9UZak"8ش.n!_]? ZV>Aqљ:. .H.d#0Zx~Z)F<}+\&w?e,oziD1C\}*S[*9dȆ9RQcM3S\iл04׀W?S.:tb@q"$QT2$bwq%씜wD Ip+wDZ7ƌi#d yWXCʺ'xRS4 ';pXNӳ`gw )߻nN9͜\`jSM X }ۡl~`k`?񝼥\@'Xtu^kj} alx'a^j(s[Cw(;5=d[+<$Q&˞*h&@_&ZxWu9Jp9۰=fm-ۓ ($kK4]PGbiQVl⅄$fMG7B}`?tº SW?`Pbp.bG/Ȑm'O$zV(LlD(%X `59<tנڭ}(EZ&_] yozP;ƝT/0ɚP%Wy[tߒog B a/Ǩ%啽b@:=G#۴RTbthlTՃ\D!}?=£Fu8+ QaqΣ-z?8+L[6& y4Wz|tcCa Ou1F."x&MW"ea!Xw K`Lm⸃ O`|HլB?*(ګ,O /QqË>$$Jro}z~<멐/w(%IN9ᆙ|ES0} >W'ԫ1oU en/Eӕ“BĽdNyi0%8+clI88 ͕k ^T6LǙ^nUE.7<0Д`%V;Q\>r?rvObǒL5ذG'cNI*keLkyZ&/lW_T&IMa#!N@g|CISF .FDRVH~񭳤{2χ5;9.؛C\;_CVd{uJj);5h1'RѮL(1l',d-Xi"*Nyj Iyo$/" ؼ\O( &<-e5ʻ>G}Ui!VrL^6λ1ZJN5DSIdG]\FA ]g4BW21 90^6w=~p#:~ rMU|''fʇֹW %nlxUQt͍C6(,+xЉvئjBZ?d.%װp?)TJE=*Kw}}K!Yq# e_K5⿑qƸ.vGrFIüG/x%]a' P Ĺ7.3?yLl3xhgs<^8"J3j&wrVQzFB&]pq{RC>;`} "3s^VlFm: MƻEW)cB% ٖ| ODF!r,j9M>TݲWBEpw@ ` Ôg PG2^, IyB,eM/<\ep+F'xc!- Z}xpN6ﺷ`1; @6iwZZ-eSo ,Ff$yeBA&A^eBŃ^7oљSױr%qX6(N'/{?x~yB=x e)5+T\d~plg A?9 沷?|m-|!͉zb<VMؑS3j{gμkalYy|WIN {qp}Cܣd|`2%s nu5?mvB`un/b`r5-ZeR혔ΝRݹi)Uyx(*4^#qH-xWU42sB\Q\mvrӁ&i&~NRm"̎J٣HWtOu7Wf*#"@g# yKCkJD*uma Fnw*wl%XonJI)0h>YF>>n;; _,B 9ѐN6} nev>ѰtOtn J ſ,ǒGPwù 3.z=jn=ipMuڸ0K@$ILB_iv4 7-zaϧ=g.F-Z~,aM3l1~f#G"?K5e&VHL O{bLs]K~A+ LO츹SdXGLM<[]0Yv($tf2T{ 2v?jiyrUs-~._wO (l ?C^hΔ` P2ߏ6}1M C@@`1Ud M7Xd}>KZGwf۾"fʼn@oaS;@a%1`ߖ禆߲x|5P@5:n6]VZ*=FBVޠ gL,oƤաGhn|O~LFJ2wa|F^Q TUΕT_E,(vmCRP:N`|"u\oCN>@4j:K6s++}AE޲6x~B_Z6 ؃bIީVpƏN lz.y݀:~Yz ćo[<t`su3QE}iL/yx~2v y xdB=fq JF0"TO;GzIa4;I?zNQ(. RK'3x ;7hjᰀ9L6Q*,^%MÔ*qOOMVcWc3 $ [_ yA=ۀ(IuzUd+F(rU'JBoJ&f$>OsɀTĜ'S'Xt(Fa70֝RT(昏rF!ݪS@4-e:Q&.|wNYFPAq^RA8O =^1]E0\Qfc+~mj7F& vy|հ%}[G:.p>]KDCm\)O'l:4SIT7qFn_d5}NUL$"58DGǨu\*O]y͠t)"KFl6>~,+=dDk0Ia-u4[u ~hb쥄RW5(pnTRy"ϒ{CD(z簜 %c.玃?d:Tif \P_9͋uLr!VKU#[uo q(rm|Wtta;Z8}D;6޺GTg#~gM{JcCAyBFao\Oe0 PxZ$%TPJBg$f{9vr%6Ҿ'5̡hƎ՚-v.(t.x 2Q۶X9\+._(YeL&\\Z%l' \RFUJwu@vWGcGl'cypYi+=HgI|e6ȦIY;8ʚ"L"s )P3䏗ŲfXvM:~ڷ~NvKy[3΢;Bh>eQ^9B?MqI[(ɲVo%V(@ϣoاMFC4?W*. _/@I2c,ulH"W7Ww0\vQ?cׇMZ?6\ΟTsw~MB`G8-Addk  Ln!L0  ۶ h"jυ e cQE+ O{ ]vB /S0Tv<ԝʏ5NzC%QMu0:%lrii:8VFzv<r,H5 Coͅ]VW>B gÑōC'0^FfP#^U&;feQA-B ?sm(b\D0zXL-AB.4W о.i~],[k(-MF]eu^ U¹Bkx0F{'Ei'vۺsn,*C%>[coX<.:Q1K~e&wҎ *q6m#o͊ss3ڕͣB|Ayc:nAK0 ܚ OKȩ0j82W 5p̷bkLS?<]v* dѵ]}>8vHT~% 7*thT#c5E"=aJ2p^@2&)fy{%%׈}vF3&xオp Kq݆l$t;jP_ 1[[ qKFS\ED6`5Vg\-ar;Ɣ~s<|&lv)Iu#|GތT6 A H2: g T~ݟ] DOİm =B$ _Qڐ SU#QAmV *ƎH D9b@ Dڨړm$TД{ޛ-MZ;NF@gpfEozRe z0Gܝ~7chԧ$י%O/4NyYIR[q_UI0eJcl,~e+l[ƌ5M>=t"m mh>k5xÔ0h_V@}*ږM.k0 ) ?Z,$t -b'Wl[W<;hUTA#3A^C°_,v.E1JZ.6ם/Ċ8h8><0ӷXX_ nBǦ53((Y-V WiZS,jar\]`AшvSu;ky2Pw=p1'EK˜6m|nc\ /Xez sst k,=jL7MWOm0Ws ?"SK|JuR#,|ҷ"-{n\Kd9?*Qz< =3Wbt7A)c?@iG`#t$l:])sg$ $s;OYc,%IK_ًW>G^r4luOi8\`.( c'^Xs]XuZ(2 &1dFc EFmGI3^I/Leg&jC<+IKR8jv.2[YI+1>@s&F]*YRglT}a9yI<8v%Q&nӪ}UIy!W&3LA,d-,%;z9:;վ,Gpv3)&|4ݓK gB#H~tOPZZ^ ۭE}~I`iOH?. 1O먕P4=C@ګYYo[ #"`5D۩)::wA9".G,r!@!UMgs>lvNǶ$Ea@ PٌդnOtzJ 0pmV{f'=-KZMgo05x n|9:VzIB&;[(נ/F(N&bw {幏76Xl`3155HM@SVSϓ%y(o==G/*&Ԉ%;UmɅ$ {GzM$u,]^厞auj5jL?X V2⻨ U||xx*= owGggm ncbQጴwNץxQCOagQ@awE~n- S&'TVNxUNXi y8<$5B`t(6h-l8ª}̌u_=į&3Ěٙζ2ɂ*"( ʊǙ'ZՌj`-zU$krQn61[޲'Lo%=\S,}AG;rP dCaF0U#-]+тա5$BEnU)) !R#@+:$aʨ~v2Y}{=Ώ+ͰVHqIA. 0!}BUN(e#* a3)L.0[f{mP (uul^]>H{K" 2z4CP;V#${ч5X)(H j_BHg(x0WbD0  Ի~>} !zZiV{HJq<Άȏ[44_abO;*b ӓa|r53fC/n62~:P%$p{M2DtpNBcWԍlzd Ӑ:$d`AbkƸ )_F0WvdO,XB^K#w!<;MI"R(0 K|I٧!>=huUpG3܎W2)0-\>2iNZW?O K@L']! *B@O)6V1hry^)aX_mf|#\Y}z&)9ZX_AEdȔ`J LR pyf p t sӉnPi-Pl"zK[p8s24cfStʹT@^~ypvHaC=V`ER%ڽ/G@'%ϞD&>r_8f־ϟI~`>5%V NIN.~z|:ɞtߢO`qе?2P"*0)b>3i?sd!|hKQj AMnyHMі41XJ4Z&-I8d7vxʆj`q@KlQϸw@,,[Ykla~+I TǹJ̸Gg`[٥ X٪^@& zA`Bq&.$yH`L{Eb}:io8U>E\C_ xs,'h&CU ?0 {JR67A .j(#=ͬac9IyYf2L/?ȊqZXCr.HLy&͟Pʐ(8.rdd^alPJ2tM|+ڌN3Vk8q+*2Cf &qvcs]x}MPUs F /ާ(']%-$DN/QU5 6󫽰 T ҷz;l/De5>(B's4K:ΪDX@<4GK=sWHutgK4 FK]Ɔebb±דd+uku9D9HB Է GZz8^HI?WԹe Hl_cFݬ{57,I[#JA 0[ ~$Z=F>h9f`(V~@z*5xjԮrꉐeF<1cmMԊ#&@F=t` mza/u2.V$CĊG6 Ph9/qBҪC^Z6gtEYWyS9CuTڬeǝ\CƜ~ǴTjS= 4;1m~q!aoGy(n$ZcS5ᬫ\?U7)7d O.q5sfmt zuB0tY/xv|=;.ɧroeި#b~cW!_XYṉ](,񐠲WKqW}'.k 4/ ϟ4ɑcXA(S.7JQZ-ʚZzhx4aK6?P[ؒ{nLZOAOv:zu~Bz>$5ζیd4omQM[~mAq޹.Ee Rca O8EĒ[s˷pU Vר+*q}s;6i1V7J5,A+2\PQ9:s^!z T*~M FbLН!?iIS`>d8GUIP%y$ fQ d#ɴ?2D $qlB(ƃG=gE.F,DLqI 5GRnoˈɔ&KWuMbF%BhH*B0i]yRr+I]],9 b;}N"PyS%t!LH'Gm+~*-z(D QѝND68g1Ԥܖ4jh><O ;EU)  '@) uÞ䪏G[>x>cw6 <]e9,F|lo;,]> 5ۼ_җC ɧ_,Օ ^R+Jk6%(V˽6qv({@ % #Hh}NUY+ ;Cd HD  *R%9V6NBm{0 gj!1]R/(6&DARδ&- # j0- A+FF#,"j "xGRi?I@U eA%En;U|ʉoУ؀{0/"TՓfv{$ɫ>+4Ha>Rߐ&f$guO >Yiʚ^?]{foT +g)X3}?]v*̎ uP)Ʌ(Pֽ!7D2m ]5Ű[gnZk9IHf/Aj/Q7{܍+AZ Ym"**ӳ. 쎥XYǴNB|PT;#߇X3mXڱ8 G +2zdVU :fV*¼606 f- ?[6RaPlQT)چX|O ,kŰ"G4uyy,KW|8l22:;ʐhQ$p@bc )`b|d -g_kx$_MO2tFMG1j:%S*uL\D6rXu!9p\2yq}μ)HOE̊V٨9e0K$ƙ#ӽJeC1?v(֖bݚGy! + 5HhNd9`ETD>i)e[$ɮAx'eVQVH}2v:]ۧGtKޞ2}\onrCB"^Y{*BD\sJFQ@4al=g4IlJ\4R{@ A2^I4ZUnln$€>2 ",VKHw =DWzPwp0t>)F0;[~'ʓ}$c \ь#t+΅}֜1hstf(7{%GQaiZCm&l|{fzx`W|0f{yd7!e8?M꯳ DJ">BcۘߎD2̔u֒ >ׁVښ(1";sXp-;N$˶p *_w8=ōJozndv/$PuD^|D;M`'?>_~]CE/ȾgyW䌨*bT|A}+|D)z֤hA,[8ZA;|m7 Z ګ1Y%Z7]_)V5=CФ3y6DBd':h..L-;-Ճ?̗o=P $ܣ%Y(-y9쵶{?XZn%"UHw"Bj iIY֫Q,l{}wֹi4 FyߴA[! jMe_XW vekdPItU2J'!${;KA0j 3d<|k3/u}-d{pʮơ1ِ3*!o 8 ]IQ:v~,Ui%B޸%sJ{m=J~Uo4 #)[Uq h Oǹ PCfs%jsAk?f9S>NqP7JDDs\{g'/a/A.wzfg؏LهjE?bP,Vwwq:n Zp B@dsw3 Gr3]vGeV ii)M6NQLNi[`f;2^\I4)ӼiL23kl##)^瓯Q!84vc>=OL%יxTifLP_ck}݁n>*gV).Tc]Dafƴ[//v\73&_@E fIQ)t&[wr=H?Jމ[@㚷[b( H0bTc::ĉԇd#%^\hY4tkG}XJ0-of84`_2:ZAڻ<2Ct2NzV$33wyf%ՃZg6;m+d 7Ovh&dz@8Q(q uaQKq>L0J>U`fNDsg:u+W.7"71A?k&vqN)-6u!f|(pZe[GI6vڴ?iAc1=Ή'uᕌ'NS?#t-?RZȘ0ӻz>$zX$m@ r|asTs]|EDs eP&SJE53MY6@bni˷8"Gb ?k8m\m%ZEVW0f?.},{YV{ pe!_1茝4ybO.x\lB>36^NVFRW]i"r Yz0]qDgDq\JrN8p.X7a/D6:͸iY0!rcxKd}RbQEv)r`#u29ɱ&`=|mWq(}0õQ+Czz.OH@můw8^(_I&XH< }7Az^_xս<|< & "\8LgHʹ)u]. !&Amu rӲ;3eA;4 w`>:[cim}>J\3ԂGC㥤ecP~UL/hAD1c$eP׽]ɸԧ5|CD!7SvjpDbQzZ<˛|h[1/54 $Kgx!Z2Q&1"i(vE?'@K,<ʴ|w͝4@L%4".$ 6kCℹ Jt ;|{M(IP]0JZUdu9ѫtŇJoKaj o6yޒxGP+ Ħ]oA. PHuR5Wo´Sok1܃뿚J4e+(ɭuOtV`JV"xCbJ<K^Q.-1ÙSppiybށFrX4|S0j vV,EtA'q8| G#%yu}R/Y_V) \$H P4G6Ou"n wh1$ ƥ/,iW?!;yCZ[H̿ j!Ͳh![p9>J\$h} H"lKR5_>Z]#Pe_(C X=4AR{awKӋ1 '™lwN`3s"sjj/WA b #Z/dudIx2[[ oAyAU''k )WyBHYpET5][r@CU 7.mOI]OzVj"Yַ32:nue 'hqd,aM~r #I/mߣ#S,kto&.BӯJl! q$XajO}Kӡ{p>P7nq(~SBzܹR0A;;]wz4BReWw)1^TޝύYЏs:tSɎ,3ps0aEzx2KtOriiphqnG7&54>IqTPZڜI^m($oD !_'` du&S_ގsWDnkp!m%Q٭A bWX גգ?r~> !t%EG^cd`Iu'x{%=XJ1ugЙ}1fX$&*Rku'H/ԵܶUj#d6DžLˤACkT!V!"=ЛW$+wRb(CZ1}6 RVc7:ofм2b #=s!_ p8(||\hR) 3g!,Ţ㲄 䲋dXA]iwDO4vZ1F"ye^21|.]1ݱf?3;T羸(1<=c"ם4RhPӺZCya'2Ww*!%Qt$`^fƗChLy#UjƘ!\.|@a]&dGQ+ΥMdΆ$ ,NW]]#+ێ߿\aVC@5PYkbe ,3-D}{4˰vX$CQ"?[R 醒0a巿ʙC TBItw˜&7a {A irl8DMRMi/=x2N{CQٸ\ <`܁]#@ |߽-갃bs|AhEࡦTRD7z>zi-Z.;^O?th_rKIiP^Pjf>=ݠDfYc԰YZa k {>_v9CD{{H?ǰ>̠*oQTJj@ aԜ)lݧ; dKP# R(i;?Zq"\&-۳} ?ꑳf`Eyn9rst3vnj"T5cU;p(/b `=Du<0E_괳0h{ */p`ǴQ~"Q0f~MD;zb'utuTZ_&qC;2]%JEݒu.,茏.7Qֆɂ 9?vO^%*B>%rĻHʁceLx{-a(@좯77d́wWk .ԑ[b2`bS:EN'J=KY1-/Ty{7@ۛ}YTF>a9%C9cKSۦD)XWƨa:z"턪m R#ۼe/!cm0:,rrzэUDzT1#"]&#M:QxYB<{|hU|&°qU0Hep`X9,sI*\08^$*F +&S`w}Ez)G_PIJ3}wTDc 6Q,D:8_b|78d4Y_GrK?ML cВWEY. ,0 )g㉫ɺFU3YЀwK0aܢҶL ;LԪퟅBS@ VncдFBdkO pܜ:&UꑖVruscs@yStDkZl Pbپ\$bRC29 {K~d8^ ;%~+ /S!W3|Hv:a4( ߶c#ܻ4>B}ZW>}{cQ3I9YG\<$F5^{|n{a5jP4m.\XSm8z1,4"i4.H|2X!-a8+}F|$#M|ﭳJvzPRxB4/YQjY !l(mܤoNɬ&$V2)ExcG_}M0Z'3z@$G^kO~ ~"rs+7|ɰpV2Qf`-Zf0cPWc V̲#.gMO}A Q{m'㔜5c/D/ 'ͮ i9($V Oph+𳋎i*.V~N˛_ʕ{='` [v /}3 q>V_˵Wuo-wI۬ 9X ܏符Es-)Uȩfe\3x3$l:\yl#8ai_%]oTqj~%<gm;3PN!I(aT)}>JoԤ$!Aʎ7.Z BPz,e:pJuT# C|TV|OvUmTQGO,b*vdl.8V>6M"6L2(_EQ 5dK6fRɤ $Z &q8Q\J}2+Tt#a'B)6C2bC:Ey?:y LИ ^N~'gHX?PFB-~k?ŀj줵="V.qQl͑ɇq]|E{OAΦRk*ՙv:ثnX}1\Jo]%}}A&vߢzgXz $塄GJ^0c8d4PX%0ȩ )gE [:{}njBBR9eJVlx4?-0{}p+7N0KB@Oc$7< Q{26sgC W;"UGdVMO/VvLcV,G~6ZD; *J¸8x >TyNS̤Zug[Ӹk& )l`uA6T+Ǽu|r2*3x>Wh|4!ݩf64Afa7A0yi2}N0,MRAmԸ uIݴ<`OKz؂4cgLZ!bӾVZ8(ɒh6pvH&<飯xA5qTLQLw [4LbuN $[s~>ًRv&;JtYX;&='Et*EO88RcC!_m?n]6xA0MP.E{qM%#y.>ʏC nX)pca2zݾj:~PƮ]5WէR/|"P @a\C)ܪMP?7sgacv:*޵#q\:!UJs29oN-'%}aGҕ4E54(GiEv}^y qr-|Z>cQ~&1FVHj꬯ yĜ"wPTZŀzUP`H=Z|5{C}Hp|KD7J63scJܷ)R~eoJj򃋋n)A쪐A##I /v/5Z!Gn wuHIv)oO]_+΅.):4ˏvasJXK4czq)02Xz z7A(hЄ.,4*r4@B|Y,3Bpg^ɑŗm-hyBA"bM!-u)fBoԳ//@pS&R;RCG0Ka8bHfk6+2?XXaoclm*ҁ ᆳs/b{\xʭZkꈼJZh?*Oǻrtl]/.)n-|In'o 1w9f7FW1D+I<gKF ;"vZ-Qk A㏗:]8}9^@OFC@uRLٰd_+E-wӞ]<|sZ4?]P6ŃIH4(OUe@޽e$O.U[:)P:nuƖRE)Sb=u=4Y\MgC p`pMf'_s#^oЁX(ؿYG)c[L8.<%ˆ|t rLžd 6@b t@p@(0@*S\]Çj[@Pk%SɃ¬{%;O@1\^hKdj ar+PPYۢP[ ES,<->;s 㑈Q!]YK-I`%߷))^h=@Lj e y-!&4w{tH[4o/ G49'kQbE qH:4巣<6&y3PZev}+!J PAuRI'X^\*DAMuFz}~ 9~uR? mO}D٫޲ -mv<ȹ?5tb28R%@Ӵ|{3זAk@|gPV5 |Tc$<2N^gګO.%t)2(˶iR۵0HL=^ 'qƑlii9G/z$Eh@tlҲ8= I(9Q QP>KhihwN:o͖Μ/z To.#G+|xUiOm]Fbߩ/\و~q'zxh9˳)DY'IXJY*ErRE_'r@RLJ6(-:Bi[WY];K S-qP.̅1K;\"-$)g+Ƕ\բ E-12jdq w@ϱ&*$,3{a߾>P},)/%>:R¬ڃr֗T|&G8;X[_z^X #*9gQ\‘vt*/ʸݔo PpYV;l&t?*0j`7yډVLVbAʮ%*)_yJHI.d6 pfv7`̕+xPeֈ#1rAnҔ90Ms\u Ȃ5OȴR~@OA;?ƧU弞p+ʔQ\2 OI7וπֺFN0hZU5Hi"_O\ÆS+-ԼCZh{̞70g;1i H,fɶYGyƚ/,XF?1Le%p.@Iv'#Q=L4ǒW)zUah`[dW<Lݹ4Ƞ!=a߹)x T8b*5U%AMU5t;;l2|jE'n7,DeI2$>Cl/{iLI>Ip5-l*F#yՉCΖ_C5#ΐzMEr#C V_SoB9KePPKas׶F  xbk#~.GٙH8%]M硐3ȊL[u"r6DbG{;.dl.\ţ7YݮaNѧ=<{*%jb:cFff׃-vXp,E;ʼ|\ud8e1) p'x暑Bpp?4lpTstc-`gl&WcDJ^v4kx*@hwAQ'V)&3ˑ-)WgJm,VN|3gd/ E/6 >X Dv>*dK{3{X}WcaEZ:}AwnqC-vd8=Zޯ.~IyubA= }p[.23]B/fP;7붓Cل%@\^þ:JZ~!r|Kl8-L-.DI(TM6q#L gؒOzk @k趆 Sx.YPA&<{K WUTQr}߄ؘm`b?AV!gQ.okDKDθY lzfU9[||X*t˳EɯC z0;MXg"&!_@ERħ#jP,s]DL+'xj69UnA?p3f3_` q2CG;Lb_͛.Pj8, h_ҒnᱭT㌴.!5jE̋?~-@7Gn7^(MFS# 4Oι05K)sAm馗+AIHZ$L|lj'֣{IMo$zr)2Z#؍ԕ8d vNP;hkIp0W`S9oϐjR?Ud25>I$715196(~˟Aac)ר1ye] ]fN {|κ^o{2jV|Ҭ̒ZɄduv -}mz "4Bm{& VnlʼnKrwk¨Qү=1rC )W'6׊wN554H7\4eBFq70Q/e0}XNMaܬ(ADU!}JKh/~mAy" @?t&SR6xV5l<\'E5L?jPrw;X#z<+Pc_kw}THkKf"̎Dl* iAO2*uV)G>Xt7[j]Pdv^6 .ʿ0V4*QZJ;: pLӢ$ukNA$z l3h2R ?=g:ڶH>onFj?aZ\sB{>/YusH^TTQ o >"CpO XQ ?+ܜnIے+ʉiֵࠃh<sA Ԋ^M?_ WқVa*zMګ:c咑3*+frWudloLm"K\ݢ.J%z Mny բԋP\Ґ,+Z?0/&rS'ƚ{W'/(Rf(CE:\@0yAX$*H\Lj3i2'B9[UgZ""np¤2TK-JǷcl7 Hgai,Op=ԛd۟]#G0ZZQN<ɶP3 ^MK#$UKBz)Io>j3z>_z*tVd@4UqwpSXD)k'SukW0*Y`oڅϬjf79A|ץQ+`jSHJBO0#z ܴ!]i{>WjJi6!RAuW(Nwe0QF`K9ie~ץ%xϙ3ʐM?Ӟ \1dC(+Y¯􁮗UqUW>7kMj&!\$-?텖tp, ~;g)G>& ycuoZeS쵙^.&P9yz7 ٘VI/dkD!7#yY9z}?ko^nHa/-^u;;R5ڊO.w|HKI5Nk~Aܼ*"bTI~GƼyܽFMyH@?J8g*nGqJEB31b )ńbtֻR/qhayR1(rQ v06[.5@9PlZtn] %wj2R[&xQ>seq3~-609Smh~eUA [\YED:E^4p;y2X~[=1 zV[uۯ〫K0M"/ay|$(e \zp10 C-MRP3pTG#[;*I(4Rea;$N9¬1ah 1qe'ӀFM2{! & %\$kY|6JX։M @V!8D GJxF!A_hM ʴ$MS\+F}.\Ke2'p鋔L]iX٬/mxvU";%+'g <~2Vw($_o^|&sF;AΦ +~\Hk[$3:ǖ*ح2e8Nou+-J 홪$G::8u,:Uf$!QXi2)iȏFZjQ}J6܃ՅU3_ .1ubsWZH'HL3]ng鄏= Z h'~e1.$Q׵DrX [_`]SI?(b$^ &{(bT'ZD6v(8tC%7Hq&O_]JTT.A[],Z:<ba˧{LZ%&,DhzVu'u(|2) `q4] /l"ň2lA?(CS"1pu,Qς:)Im|*f,tL+' %׎iVc~`r@SHXW1fe`m Oph\8 ^d{Es٧bR!YgY›J߾ynq3O;Yz_a"7S*r]QѰjU8hYQ(98(`i]6e_w`=@$W/a+>&b RXIB|ˑoCޗ Js !V`H)U` ?Q0PsC5~XqJʵpKZ"HxgvJeK#5%yд T2𦍵$fJloDDo] P8t]Y <61*b@PiA8&Mvf3!VpX,CIWN:;Z}RE+y7QG`h $^zx/nw/^}#(֮%#(: 5%7Id;vTX}W@a%] GЍ6b0i)gqܤfbt >YZi,p%>3;vs$hazDXwآ)/];xǕ=un1K`Jˠ<~B(I2[<ޒf?=ΩpLR)*C5BYRX[oLNa T[c@tl;؊}60~3Bߔ%BDy<ӧ8s!i Ӟ>+OUwª+GP(CҊv v &f9\dh((ev w\@܀9'u& /s T62g(_X;eF%(ՍàY8DtB+e`@3v|α|LL%_(eCtÅ !1eCôS^% ºG?N/[kzrT^:Pj&m_ȁk?T[y0&ڍg+>5HE 3՞$Va+nOo6vC/)).b1PdR7yEPɅr"3H]T. b*Zo _`_z /oϊS+#w Fƌ[T),idHf꫌634xdʳꟃrX3g\k[$>ڋp7RJG0e?-f{(ڟ:wcR7yZѰKOM],V>ٔ7V7;/NiʘZlAFbXu1Z66E/l;K5aB>P*#pv0Z3h}{Cbل&؃+.8PRͿ@9߫L~ {'>49Je8..d"w{ξpG>%|ڹ"k>Z]yeWڬHfeX> _5Uzč8b+KCw\ JrĐ<5}o"X1ҫHUs*x{8*+u]e,O_ߟ{Ud܃Y$;X&BD/&]1IՌSs.0L8e8hE[Eڇ(p30' E>Չ:XɼN)dxv}a~37d7T::Dƒ ;<vo(Ӵ\^_]Wv|?JLJ1՚=R>=*tMlXCX^׿)q!oa6G߬|ƊuSty||E)1(3.lK'HКx*&h5%GاЫ&4};j>Ή闚er6Bb{A2,e4 va:DcuB#U dn@ C -G& ܏9`RMmzdצAޫE%C~HwJ`]_Ld ?A)^ IY~Oj\<.N׋@o>##jƢAʱWE#2>]^s~w[˭ӘG|B!aHUMt{A! ۩O'xrv'2j:6C@RS!<܎0)MKP "jrI3~g}81lXIk&e+qcJ{Uy[J Jʙ DەoFd\alsjwy(X vkAXj1OKBkm׫A¯^TݽW' JaͬVj0_5fV3}!~-EŪ%Tߘ5A|=o `P/$tvZ61!X+2Rtī ;C }[QI$J1r!K-Lw1^Ӯ9gn n7"Е P+;"U~~%oVLL] Z! 2q)'<v yPv>E7] qB,"{[g->˘!60hO;o;rx;5%ǫah TX;9۔Ϊ@mN4rυn!ApOȅhYe6s[2*g3@ͥD eTBp{҂|{p9znl $nC;MipE~)bx!O e n g0qjJh!:e@UVVm:.CO.l&%yV -%-wщv1&9:Wr^jF F?N_eJѡ9D1Z=˽:0k7. Z5^)Vr&1t#$f~G)l=%d- MM к=B,)~ҹGF ~Buokݾ/L%|vˮڀz8:*N, a VyN 6դ=4z.90[*l4Wd3mACY.8Po3Sɵ`XԀMAF ـ) ؒ /x1螔g}u3MM lQxqfr|}5JÀh .^; Dw驲x4"g|Ln}]8aMC.gB!uubo8E&O#QtzWWq+ 7[ :vtƎdhrp,yi/@z6B"gb%_`XHypI`3$7Kp"`ns=;%#ΫPF01>ڋU@U28oƄ6jb`inص)I,B"/~{pTKYg3z|'WGг2L{0*|sԫ 3SlRսA,.~y.I/0Fzh/w_Y{Bl(T*Bz".׋^u!0myM&ZZ2+iIR[,W%1*' LTs@[T<~+1>$n]Jp$U y.6gCi9 ?"ݠhxvEDuc׍9>RgJ1$g+ȹ;ʧ_ q]Ӈߖk"!@ B@2S+`=a.aSx+p}j[s$x}L߮*p0{ #O zMev֛UkBbXn(+E{PV5b02FYnM0#性17%6<6%*#޴0e V)Hi ` cuR((~zt0WA7Bb__8*fXfIB/ТֳKå !Ms@A`+x@cxcYxS.PV=d\(+FܦLNM+gTKCT7{z:9*vQtf sXU1"о_\_)ZᛘBh9pkӻkuVӨq Q䉴0PS'tӨ$\l{>.C Y䛦 (OKm#+zBjCH:;qe>Ɵ rMV',T]}gYVQEa vJދirF?:n8 NF1I ?i|Db2Ne3f`umYeh;O8'n'[<_dD wD^vqxTJo PFaEFÆ6 st;N9s3i0kpm&]\=v}{xX"]ijh؅H`WВViweAu2ʁC)B 80"V ̡<NJ~Ћ/M *Bl8ZR-Yˆs.**CJ8qd͉,bi}%KC>qSBg,|jREpW'][,5mU{|7ź{ђJS X/"'-ڍMƩ:lanRя14OVϵD04WSdR0 }_Vv6qG gdpdma2O^Uofe=+Rw#3_HH ܪbZR`!Ӣ {P;wRσ{u} $1uÎl]454cgdiEma|Oj;{;Ġ:S#QO[ɘ3?iÎӷPJ$M)013Uh#V')4n'[<>%n,?vIOCE,+1͸s_\#^1T֦0VPEmg7=\2ycH)ҟH:6FJ?1{3[[d1_%^\% OV'V jri{ C |AΎ Dމ&hL+]QDl'fejcȦx?,cxr;S{eCrVU I{uH4.&- @ͤ"nI8JbiRB 'OQF) zc)fur|tB*s[#j]6y/: $::$AFI.V!UCa=0+؎^A Z 0V|d~Zpg dm$,YJv $v@H!^ԮQO]=UF|*zS`ËhٺMOm܏:)jQ6ex[?e06m-rƲXrT/{)f'6 &~E۫"X&Qw NPVRkD* 4ɺꬣ"/H]GjJgZ>ފ= _qps7{뼒Ue7d̯`tdЧ+0/*|jtANuFִ)3ѧ}1m#/G>dxmHVX <{, ]4pYbUfѠ [[FkP+OE=[D{p2Wlw!Y/CA m)/3iь:|=vL{R?&25msӈocEoa&G}Hw!Up/q. JaLS={ μ]+RA[z^{\ ,w#?iq{NW)2J'8 IǴ݈b!Cᵋ/u#&VWi'oVi%b3טވɩ7Hʼn2z_rO8Uz;=* j4Ih?xJRF>;9T~2xXnc YwL(Y:" rՊM{KnbgVѓ>N xrjiMtſSWZ:F޷V@*o6w0^P-GtyD/ZОޥRE>N|[)bdW6<$5a}kwPq .FoKGbz,[rQ)p^,POXY]Az!b?QDD]Z{ک~q\s :0n4t :x3} z5.]iLת ?#h(JMR]i/x1\{hd `r?;AxǛ՘,)Օ`$:SujB%7T kWEid xS G0O'T:z`]'j־<5Z= (((Bc *息vu]њ6೯!8M|aG;ReV)+; QK\Tn_uXonЕ,$"|fiз7fwUMIQr #UOxafȚR t< 6|dM90fM=44ek'`T.:vUԋcϒο!00pK>例3MSذY(b+I] 5&vso Ei]ug\S@[;6ht }Ik)y"y͍B{q.~o.bٞcyH9~ yp9ꝱ#9UO,μϔG bn)Sg L}mKzᐱXbN_&y740>s\9#ƕQ-e6e-ˏ|CDSkW0{4lVavĶW+mjۗ>cJ]^M9"ԴPt9D^ }e'mNUθ[KWuzL6Ra&#5DR2L差c`YJj8)0t5Q0 80911l1^e^G2&3-`ţ{C6{HAhGdyBFK - BMky\FAzֶ'95.&w>uobsW^* K5=rlkN (p?SP|hXL>$qzj`=̲Ch+8,DsYEdfUMô,'q5PFO^ vP;┬_B MU)\jk"ߠ&=,*I|u|czM8 ,|3͏O;*,TU2]HL=,K\iNXTK +z͹GhRj2{slRbN?%gxZ/a:3{ xߙ!CeQPkT H=??.8K]dA$ ç? 2uǿE&`k؎QUPkn4azqDzW||1@-PEl ?+_ k gb:)\%*E{QyIjg99@E=s&{T7 ZW3}AXTm[5oS=JΆ6Q6W"Y5?O>}Tnv_位1؝y=|z;h-|'m 5(&'5[l7>2D*(Ky-~9VGkao vܴ52R VRL1[z$̭)ڲw&NDq}>'Qӗˎ/;I{`;TW **b\uf<9,0-Wi LF-#D$*TdCX!)ȋD[LmȈ,FwDfHIMãuOHgAo[ґv*/c;n>5(f̫sOѲ~>!W1K q>RcM#ay@tR.t^ PHuRmڑҶ4~:"e/{)8LcLSib|>BA]s&+LB2XyyX?-F|@Ci9g+J 錫myDGqd2\3]YA 0 gL^3g wVGq-\}'sC9mmmⴺ` qC p{/s[,N u2qwYRީ48Ρ`x˧c)/A8K YOm͐NMiy3~cynN9W-g3$CRμ>SJhxzH!B f}i4%ߡ3RRPaND FeSS} S̙SIsn\rӁAFAd41}]e]m1|j ㏭:j*Q>.NCI6օqTϏ۪iDRuYdf]WA6{3-lswrBv\ploR$K;wv4ZDlACO4MV߭ic5'D7;~@"*wu%b,!i^|Fߌ8 ogfƁ!?i(:à cݮۇLnX%Mm媋] %3woSzl@Bp{R{W,/ei/rE']r4#ɻ놿ܧs@%W? G.U&YԍҌz+ .ge^t.)cW!߉j4~44`ȑ[RcSj?]G8'Ⱦ),XW#4Î0-!u8W&θ84/]䪮WTHI]n"Vб~)tKڊv}N;N0!j>t*AUߗMlN~L?դq&怅o>Ppqt~>WS"kvaxp=".^fVp ("a'}vdfHYp$뙃Ô-B O>`\2 EObٝpvOfj%;8 UR;~A8̠s1/j||a`Z_;3]jS(aI&;) zK0oe7LJUv6+t{ foV Ӹ~X/cҲLR~.VqEo6YQŬ~MK$u@@?\Gfe:hf)# -ޥ„K_ecO5(i(L7c'Sq4S'w%}REC^3|#&tf}ЦX^R)B")Ɂ(` ,1ڪiN*) ߃%&cJElӝ]$>4 QY(~?r \ԟOj#DqNUj,ua&:R؉>}]=XMVը~~>S6`8iIхn|>x N MMk >'h6td<>KPUB:E|HwLa]#>cʒf`ޟo~60qq;~wadw:ҥҷX!]A@G??7 $^$z'Q N^g'=XS ֔zDg&~PjtSIV3.P'Zr/# s\{p8sysc|[vjmSט"N薅1kL_oRpBLbҁR5fOV$upamhLR\XX I;9 AYs<bJRn6aa;auL翲M(cr# CX4G~S& u_HJ1, 4"BZϷ6*t.OQc* РHKH,g$g)8\Kypi ^̈R-v`JՇy2JL4eQln;< 8Ymmğr.+N 41bH h' Ќ޻i%38H¾sH6 \QZm#8O"8)ΛDWX#%%`?gOg`BbiIJkf`Pv$̞ qH_3݅lX_i ~scfã=GGM0ub\ÀQfN<#4J)-*\oCH|V#I:K/sW#f8?פ?ewѶ'Sî/3wUvQ]U:Wf[۴zyphrm[iцL\H>'s1:2dA}a% ;E>:n@)MGv&UnY2׾I p!r&j_S4-!G}x/ŪyViq7/~4RD45c AC \(8y1͓7+KZ3H)x\HJn8ō=(:akCW˦3_E*24k9gLJ 萍qZ-6,K$E.eZ*Y)UuID`1RK[j4@ӫߤGJI&|uݪB'yVBrBZrLqvV2ОRTHhSLp&2F{NXm.HqSw[bΒ~E%|@$zv{$c:mkOQ$\/ttZJ OV0:ς5,߶/ڷˁSu@u8IJ8`)k3S+w*sCˁ$6  a3dۆ*}@#r oB"%.8Ңb?r$H94tu~Ybm󀲂ޮ2 ۈ~&pG =g#gJW[ƌګL5|0qWŞIQ}\n/C^B7s1_q =][ZC~|39Ado䖫=%ƪ6Sb } 4">Va %!<{p;=v[zdsZNS:3Tty_g}y屎LNBq RC"JkR?tUtu$ eeX;F_H'mBs/p:6s>T*] q`\ AG$py^$&t|Cyg;ksi 97QEn"%h|Y`9U$,(nbVpoeyxRgp rt1(%s\xKIǡM+`@b֖FUnn{PQ [$LuRCi2ӡ`@ՖJ[|@VbS(FS@m&N}HNjzFI*8aѭ1B"?C۸^I8$ŔDv\uMFpA~B>lC)_ׇ۟3B|RZ퓛PP{sGw%Y ԙ=y8(\Lg<\*,~Lw͚].GGlO%'5#2=cuL@D=s /VCd [#(w ï{օV AJZ0=2mvi &K F _nr Աpwئ kGdCv@X=kJh%,Æv(f:XTUIS뉆5|g3Mh| L om#= xi8syc_祱˓T&RLt9^̼ZsiOkHۅP:B 4-&QGKΧ<'2l=%DOCVJ_fN1}QI'G13#>&)ѿClW̹AAטW`ҜleQDbI+^nJVhCu%ּKt \Ue{mEBQxxyy m3#ijj[fZm8#joG\IWьIea{[A= $I9G !Yg38q+Xvr :a?h#ř6-rɯ &(З )ndpak r oiQj9.y}ߋ&s9ar͠Ñ׀o:0}~k#Yi "3c&+i'hVmf;Ly ͱq k%qY Hx2W [$[$2AFM~%,D0<=Zj@)tȁeoDӰ4nHkxf'E,.0kR_ⵣSF̩rTmVVϊX= I"Ay \|*!>dFdIlIC<6mvLfjޡ B]pPq0&LI ҳt戒Eש"û];0'PMPwI CsIW 30kZS-Q0> F35a)B EH{v6j. [j7wd#L|:%iiXaQB\++yيdPlDE`c *͋ aLDxզ'^%ɐPS{v=xבhv;@kc8C S3^t6" DelhN+ϓP*ן#k931am뷟7{DssO엋9slF`;Vqd.]yy)ԑǟ1[!~ϛ/oƯ$LLo_$VRQFVmJCUrpm7C5ΞCج:f #b/ YK#%oa P Zs[|wWԯ\ *Nŏ ]ʥy4M~hw47 xrؠůr%fH@Uqc?uW| $4V:Zg=g*|JFn"زn9;mX=ܼ.U/;+Fw:PD+/9HwpU\*ˎQd[vRWg־B I@<$lO&ė T:#MSI(s@voZ]5B.qٷJ&3uy ru땕(U@A%`BT V &::,Q]T5VC| 5#z9#Ude'm±|PPhtJE M֘eBv9Ts<6sL5ՙ?@T5yy):ap& ih[!쒖tyF*8X~ JLDKt݁ݯ6LMH =X;FИP?ʃ!FC/{޴k`(fΗ5(8)~C(ҖKV~8V*FהcʋCxHi~w֥`>ɼBqa+1Aa *y){9g!#l 7\ΡbRq͛eCybAyg0蟒 dQ0sI&?k`>PF 3f7EG~Rn&5DOkԄ2' W R8iJێw,J=-.FZƮvv40*Gy_rcqc]DuUDk Zi)rŅӪ IaįMK|+ g*dVQ(yV\BpJВ0_xERoBÓڻzW.Tޗɥ`|}U5PN>knXѻEJlUogȁ l)ԧ%s\x.^!3u3c>jlLuJ!Rp?e.IY¡$D[VS"V ftk^%_UI Z3 6˸=x kxu}nFUԄaL\ٸdEQA #!m%jjEǁ <)"x%-3:51t"P Lmz& qp썴vEIog\Nc$NzY\W!A_MQiAX1Ȟs3!^,HS]$~wꚏG09pAH,cVH R[X]'̎*ò;plj El ,~܀uiTs{+BAYIFzۃ*REkr$Оz$y0*ONc'vס~<ǂ^}熣iLJ~M_چ PkêM(@eX zOvqBY(c?y>6PGDז$GHX/Rn;wh{>2 ֢WEtܦRomoX0i/wbTVJghsCYWAo#yE܋&FNG.1C:\@XβlQj%U;RZi##p>:P\I}m,XdBEŧIs,TgDݤY*LO*ye%HZ'>c;sK +P,7v\2ʼUhPw(:9 Q`,}'Rys@7+g)~<1[VK,'j>3`~a!evflA0kCΑK>Qi-ŠO*bJ+RKwG<tR^40LAkHz 2$pZղi:*G}X,A-PFT2p QX@wdWo w,.Vm>M*fm2HF:@S hu D1sb歪V4gTtgWY+Z֭<#W6^~ >)yA8"5;2鑚5hT%}"I;xC94.w Xjqx]u ;#;v0BI:*q/%HhgĬg| U{ I &"<|tc-CC%!T(oм XHY=Շ-]|jdG Ced OX@Sha'/cVfӎL2<~nhN _zݿ=lEoOq & ؉oՉu<\'U!&i\%mCe@d*ۣU0φb] 4z8c)l /?=ֳuEw>Y@Mꂤ|pa^q~m*.jQznvwS$Dĵx~@5N+OgF rJ/FP`>DHДg9y~bq2ZMg0v{Yw quoNF}$~e.Kcr"uIza5i'Y@(;Xx) 8(pyd xojf TO$ip H-0fezF" @W݉SM `kB2DgmIsR%-|mqVJO*J l!6h8|P;z:LHAE)+&וlG nU@%Ƽ*O츷KuVqg۵a;IsoMl"$3}ٸ:J~@md?@?U@y'aV:)k"IUfTEtBYI5Ԡ. &.8D|q9UtY䜮dRuGv-B.DrK/T†&blx?|*e5 +țBZuuHg@Vd |G *lIz5#ߖ(~,Bђh1r2(8$p% xq} EaC M8`W nbO$^LK`&MH]V~GQ2H9U~$#4ey kRJzz{es;T|X Nս' qɼMw ZOX;_j׮+qPy;ve9 \CMN>/eÜ<TZ%CBU=aF+7- Ruj,(ZAk cɡl}ѰT8N:A; s1t|2ő[~xx#Vpn xЫ=][=7hG)aej**0ЉĜPpkv"]N NQvyڳYx_|s  m*/ 7@OƇs^_pCfN+xg+d]<q諂׶F07 Yi5UqD\1?!Z.=0 :˭LW ;ok!}R>b99 \/) ꒭w5\3)~C}5WoDxW5~˪^R[_ceyUOU(^"-JO>v` #U%!†efj |^& =*3A;.! G"v.? =#[ e\ ӈ*3Sz8[1s1ե'i"(uhК>>uf;]P[1ɮ 'hrC/|sz>CH(bS?jٰ{F}Ck(ۚ$8ed%G;n.sߗw42Q C0_n.,OpL,Ƌ*1͉}R%43t ESōc=][U<ÝTVQRtztڋ;iȤ*[.GItsg+;Pc x4ϑgl*[R.9qC8n9 ̟?ݰҷmh(ܕKk$-GPK SPTKzd:n I" +=3J't7Xy[Ti860b A H , c{/yh{@ i}OȗfX0sx=kWRŗ㷽&%Y}]kR~#!I}]Iz qȯW|< U-,f߮r[ݱ\ye`toVCbFהo}_.F]ۉ!&6Y@ / ^2h:(ް{ULaC2| I63'1CגHfQLT Ɉ̎ ˼9 P29!wwuP09][x9;e8j!'ę]L2IC\3KDpؗe=&ae9Jt>*Sw&ev=xuyAyzu׼ђ{L>=Dg}𥭱ѹ-ϭN7=@5ݶ}\S4%)OAjţ6IqB& >B*&:;O|ubp5E9j nw-H&#7߱nJ(x3ܖS\K^u <ˌ8\ E D aD)u+0#(:kNJ|_}WbZmXs5}0âd$9Y6#9x>(4ڭ28ou3]~SM,gI[t'29_^d> 8mN zh'wKu  ]Ȉ98݋z%o_*ΙU@]@.KHza ?S<(K3l){q +I>oyDxbqwx Zy މZL9牸\?`%]kI]yT͙0"5;6î.nqnp\R:/QϨ v$-cK-c7 Ĭ>aLJ;vʊ5Lx(D3Db1q,gt$>luK؆W߳eZPe vf"LWҤ:Ց"b`y $KU7hp'g휇ob˸reE}ʛ=E0=68O`oպįpԏ!}w!W?%Q#79u ,JE F}b;.@C6b3[@~D4;nMj68+y~a5?կO>M` k+LO8+ fD[6&)Y펣(/MfaoU8M&cY V|:`Wd$?2#*~i&<QiX纝JX d k[3rPA Ҳmbˆ'~ *zUjZf{UʠZivW/~Nz(̲Jmzs5ٰwt松FMN7zax} O5)J˺iWh(s\N&tX)~/\/j4׷>{6:[Z@e4=2l7`?t5ѣ0y0d:6x)X{.7.,9:#`/c2I֤KL`JV%='Cq_Ґ2ʅe=exB7 m{6sA9=Bj_QGE S"b3'ép8t)L{;ԩgFlzS`2aRY|5&mO˓k0:&対2A e0/yuK Rwt^o7g;8,EUZߴĵ3~XvUV9Җ"y74g*\j fzċS+1NwVpE 6*28I[>Ӿ"d3̚Egzg՝^b@)0XHo2|eI?g" kŭ"Otg3I3j3eN~v3Rzi6F'uHW4w֣K  L@ : qjh3l,z{$HŢM1$*Eb0HkK+{.;$#Jlae9EJGԪ=R\K8%Ym6.uff+r8#T6wnٞ q"t膞WRn@PPjD) qh%6礴˱ҟwL74 '(w{ɑwA}mv#zՍKx)#|&0=:|>mWa ) t!r3ƞ'bvd*uHPMb=-K9Pe(TI\.|7KŸTs @@DhWEn'S {Mq*)(ͿA_MƂ2~h'R]moAP%ssT=bdZ7ƘlD,O*1xn5:J^a}f(hTy2isޖj+پ c@{>w`lurc+s<~yܳ~Oob_r+:X- /^TcENj[nj:eZyփ)"%ޤم AZR呡E<23]OҜ!|,SSq[&gkNƛuӫjC`nM:L(ڸ|JC@P7?7s"k~Y~dIB3;Tj]s a/\jTp9cvm;AHTN UJ&H1rJSި3겸[e?jH,+n\Ќs]Ǣs`n |qrR3x]\Yh?jA cc!>BhZA2vT^z=F1(z#[CLN4zByQ)THQC;b:P߳@U6(^eU݅8%LvɅO.h&x~q;1+Z{NXRvnLuA-U7c P|<$,r*`FB!uGܶhDˢ<+y$ I/}Š_4ڈ"ep+1O)-t TbWRQǵXt2m']De> 2BWu.9>"Vq6{q|f oj=CKxlOб`t{bb§Mal[19&n˥Դ .1L*wl  NGY?s)Q?i*ߔ V.t-Ɠg[/mcixaM'oq]p6S 5k {Sa]*GjWP>1Qѻޚh);}8W]>8~ gC ʅHqJSLf K3:ʦv\P&!lXhmA?AfkBR(AŋG+`G2nQ6z,.7K#ۑ; -})eqqSߤ (>΋udxV%ӼMi#O3nMH`t7SC[7@!lA5(aDK:k58Ba!tkbOuN?ö !͞dO E: ʯqw>.d{ږHgA`*J }E]ĀWo:B\*Yw]̭ GHJL(+)clQ?eP֌^L̥xMH{ &e>=Gvo'Ypq}wiJc:9]phlNkNkv*'*$Hv31-1'?[9Mv֙bԓ],ɩfqڛk`EH 5]Su#qX߶l\H tTLzV=7D`q.?,  ~%e;eśCгs5,)=sAhv Cy+8YuCS9!P8wBG!v-g=N0(,G6> {]ϖPǛh]u*b9%HvYނN18I| bNR,e4(wZܡJva7$AD M^b7J3-4ƻ1-~#H(llj+EQϩИuЖ"k%y Yz@.$'F)"a3ڂ(x^烴]̀w;+`g81}v~ |N5e7 :BYBIc| br$CC"&cۛ,Y5j}PNj/FX;14g(!MR 8;K孉vpT\'G}{2`lKkB:ᚶ,W"G Id٩vSUa&05IBTF"Q\hj^(TS0$\T0)QCI~E)F#L3~|e<יcz%32o] .SY6A\Ys{B]=CtބNbHD?NNԥciMuz,z,Whcbf͵ <)_c/kpI'-?o:(h(6gWQq& ;'/yr -'LyuW \S>a7mqrn͢a oZ!5%8> z;cF}|I,Fcsg"pPī>#ߎ$UV0HD6Rڍ$ 2Ο5hg^p{1uk# }"iCB[kx4Wi_*ٔ=,6 ZVsc@*A3|X@:zP-#R|u v @kz\N*}@rhz9x"O„`<< L U^ x,m$K&Bgtuϴ+h"z=rplbTʠ)Gպ+l|kO[Ay͏~ri_2*`y5QV NmEY6%6tzLDVԛR8c`)ɥq8% Iei 룣ʍk>!ͤ2hћUyN7!&Q Kh,̼m=&3\7>4>eG{V",0[yXE<ㅮH웬-T-qDG0(\dHvS?G$*FF;pfYCFK#BCZ-KS!,o楰\\Az_ ̦o=¨&+hVISκF vy䡄,ZDfve9ƒBes ڻl'?X>IC?'Cb Jp׾eUR Aqu *7i :Q7䷡Vl8@|YVm٤ߩwjNFJIO`dcR0ذ;3^ulBdnaɭ;6X8`]o'cgp-tiC eP^WޚIh:aWX*chJoPn>mzfM0KB< 9큦mt[tҨTyKv/chE7z 8yɿM*{:An+rpn'dbl m;jIϙ9e%un>\ƺB@N"g_y4I 锤v2}j|1g2G<יYYnA o Tg|^w|?bֆFG*\q"fM4ŚfL Ń\Q sPvhAe+!$Eu)Lk/wsG5L"g%uRax 5,  Q=5V =.]KkJW9T&4 z4;^G^Y_%|<S}E!o0c"o`A $r]nck-"@xILG a6Fy8 nR ~6x6-pʐ1rOI&h7"T뼛 wc1'-Ur=OtvMǟRٍ9S_4'荛^!*l:_Lc*SMK v ȣ&޲Hx0A[싩 WBLS3a\3!WVU0fgcZVpQĭ`i( N""i3,,P- 7dSp۬"p?.*<>88sH.NgXSGπߖ/_FW^Z%>FGEzow7%~o/;CV!u{zs@yt$aoF6(1\eW P1vDK=mo&ܛ>諺l[FR tth>kY/ˢʃR@̈́OfO{(F* zC=@HW(S:j1 5Zy&;7q]cu{u> ջHL!i#"^>vIǸ[-*}䫸+0t\a1@NPÙqyI;!@UP- ; i }~?L|$ـC1jZs/ n nF' ёJ޿^tK9uCgdYˤe3z>q#}CEe^|fF PdEGD(*XDkdLj7DQߵMSM! /-zA8~1_wIn:&н0Ð{ϊnv >B&b *rېW2nKi0p\')CXwg(o<"_oNL6ok&Q5?KRJQIOKY^T]G@ 6{5>&> '6Ԩ8˟_YXJ 3L~lԑ̍,ڳ_E'unCB?#;G>z)X+}IWdJEO+?w@%{ JU v-{2 ū0&u}76}^ LWp$VR2&pp HșhbVZeg7GjCh"ŲBLJ)ÄDl-hLIWn"*xY)*[{i\2 ک]|:U8Ũ(P:+ P;Smp*ȃ,p];Aә٬Z es zu[<'li2p*'V 9Lӝ"r8xf#BUnTf )U[ 'ަd|46YOkV=.c8?a"m2U"n93taiQ7-RJbT:`PqƐл(֍, N$k׉!9ٖ^Ǔ*%k67M4TZf RtYMr-p]k8IR>ב;Z7G40<nC,>LR dӴ}]vJ}M8Q<\-4v@ZebB~]'BT@GĽTd8(.:t9=K#XK*98xhu.G+.=l {߶w=е-[ Rb0gn):I[;Uٮ$!t[HnHN Q鳬$QnǨ-M 9L.ydLJFj%G)&hP74l.̈oI]񍎴<ӋIt ߂NBHѬFΉ8g0-٫~/dnrufcZo -2T^Wo9S4%_#٬,%-qѾkA%#Cm5MoֱR@4y_b`Jܤyo1(1^.PZXo3j`A ?=?M~S1]+7|IlouQ #&9,LRkt{MF GgLt9& z@~jVagOI6pwzX K#de+lգ4_ |{J,/=m0`RuxlG=z{bm6u"Ʃh8cKtE|O 9P%@ܭPd ᐛ._z{.07y%R!\2 :j9@HO/q܌r1C3TTNmvЖ(}ᕙYܳڣq.`liuSEICІE  ѡhY{~2T'˛Ĉ?c㢺ru7YIKD_~F<\;TD?fa&2iѨ-OtH4і3?=JsRD,K`1@jwv^$#7sYA]Jg@GՌ+}u1d,Lp\"3ɪ@fV xض';d/Rdc0k{Q[ k5 QK ݇|'fnC8\(硿Pd &QxȊ+dhs;`)Mzx(-.8 "*f*;O*~^Úe͏.?CJ5j:)?X>sO}R|#ƔQNTG3-~T \C qk J_{M-#4'†ݼT3*' ״:XS6l*&s[@CW UzH$b޸Y ڱhl _$oCfmRgǔ!Dos=!{B{?lJ*Q#?TiǸMR՟h]%1WSNO Dw-;bN”Azv"vpI]ȦoɩکlC23۽[}r'eF^ԪATV Mɑd*4Ko F;^B?E6dKu(LQ3R g ,!HG[Sz!W?qkwF[JɊېaɘ !sFat- kנ "ܙR.@l屆jo{P f0ϰUrkT$Kb-K'a{<]HF8A׵mRB @sƗ<0Z:zE&0K#nRo 4=t؏ BD'2AD0pTM7\I/φ:"jլ}#?q=.p0Hb[]B4)׍g?e1 $} 26;OMTHuJgcLe5T ֙(K5ed>ae(̆QX&r ӹAVV5/TȀ&*_n:R`X̠N$![0o(uVF0q҈C=(gFSE~mh%`7ǎޟ'M>+I¥N5jؿכQ>Q'X]P3!mG!<5dFh=WtpE{ |[}q6-:Eoa_-^_`f-]Qv䩎Uj7Dڒ3߂]7Fg}w/,&nYv?uF!nQbB0HDWilTfN_Ɍ{,< Пqk~@ V|vpaYT3$4rD}|thP1KԏFuVZUWvS-N*{0s혈b^ Ug͵V8rG26.ǁ/(^HAƒ=9&|9āBa-ܧ[*) ']d(O!I/2Kۏi:\YSp('uiܗR۬V&St S0%GAwKia1_LX*)>/ȱd%ii~yY5<ZaQ{6p0Hp\f_: Ѩ{ 9ZϧQj-Dg;93k`zXRḀNN',!~ЖrWM16Zq|Ls"¹vq->p|~\*k* 3!qB<~Z+袌xb!(6h]JŎQD+Z"`\S̏r`k{=G4m%qDFӷ^ 휯&~[olue t)뢴 Qϝq`IsFcs2Pg.UX8D-T(p(m'|hB̟"4R"1?zOru)so|d7'OYWUFY8cdY  ӈx %B5 UbWRZWWoeWɰz>˞U,xgH_k3+2E peQ2EZ SAeŐbbtb[1ݟړd0hGO _F>5&Y>i,6AG&ȜGB|2c%jB%CZEGOD.ƅ,D$sf.$0G_e-%angRգ3!@7`25MmRȘ3>r-,Dxv75Ve8پ-'dg4I>^cq_2-?>w2C^I>(!{0m1P5w!OzA2Y|Oi%@3%1haa @9[S/Y frB[[/>Mr!>Qe%bwR\Hew7>?3XѦӔ',c.? ([u$ٯ?,J_]BQ3lWf1dI4=DRҜ͸Bs :/D˨ن%"AJ)&v8Ym)QdR>J_~CU 3CBΛ;i h:q\ EB0`(=iYq$@Qe"oZ>' VI%\f[ڳ(+bPxSLVgi0Gdc+A9X?̻cУgakٖ)Rܵ9d1~޵0s$kl?5Oܷ"#S[ &xᣁ)ׯs a>}!6BKVHDWJ2"d.}L<jzHHϞTl!AͻPCѹKbg<%̷I1_ ZDjYg*?#B:E[g2 ?.]!I=b, ЈYàRK ?I98 :iG55>&)5x^)@,j͘{:lژ\"o-&cщ\!gzUDnOWmgUh \:t : t|NTNfZhu؅ϯ2>f4 +2-4H¾XFEi vʓ='u070@S">-M_[YOFx;tds 1*/e}3?2Fna9( /}fZX4 NVL^:0lm-a1>XÿDcgo^cM4ZHx ˱tF͎/8aGqwLkmx˄5OP*UP(g"6 @& k:v kY6_&LF.WʈN-NG^Wn˻ rE Zu6pL(Nl ^^_h@Og?ޥ&=* #%H<[l5 )jv 'R3YYV[t/}kH)ڴ4!dj>w1rǶZ5T~Hm7Ow MZDP^V3h'M\T@V-< R<HuAkҗpޒlokQ[ Pȼ֓'Jrj,C,^m`&7F!hR+\ #*L<ٛNY:|:;n~լz֭5-tޜ {1 4mIe>T]+CNV_Xq|BXkh,:wؼJ;UAۦQy5[KgofFGQIN KI<ۊu$rP}_7G.l!IZ9. Ӝh25E J5/#? dyCaJFve0ҭ:M2| F$豓>OAR8h `\:o}jst#ugL[x]Z%vs)ظU0'Rpomqj$h\o9ػ0敒{N` Y|5/`]? o*x]0*x`@m}ԙU"\@Z\ƋQm\Id g)ú-|7Zw/s bVcܔgXި:.%k2M1&ib*>7d5˳[='rKQxfqb}/s)MўÎhُ9J0걺95,"|Ӝ'U;=W `<˪TE2ewX G. o@hã& 1ubOpeMv%ojivٿ8SITfjx'O9`yMMjc;90&O=&Ba) Aj3zqJ=.$z7U(KU9jy @ sZ&K #o`Cm0.<BE^tָk rbmY}Ʉ! .3hOԓT]*BA#1=u`6FC#ߣ%w% 1W|&Hs 4WH^wuAs|Jlo~gu sZuDL&KnI_!\V8A. ]g+{\)sk:9|N}$|t ͠%lR``J9]xfC1[m[d-?]q|&MD ؁#(G9 |7-/VA'-2WtFev3OL=&7R]!t+2ۤE-]4U[7XFFhc شB?y(|4Lp2c9nC:Q= '=-%JLa#U͒iH-9֜HK#Y\V!Æ}=u߇@w0`034FE0b{ff3_bHV7 GUdԉ߷=DгxjΞ!F4Y Ia/F Ӥ٩qcRy!Jldi5]2n+.Cō`K-ﳟvb5Ƚ)kܻ0{, πݫ y13CXIw] P,Ϫ(|pΛMEN7R7Rqdi4~TŒ-k ̜LۈGV.b^X;[7+\v9TW?HVEAR}ZXRev ]/<}u]`jxlH15 A =? U Msf_`kx7rdF/=)vdo";6yy џ9 =p3(0T!T#)P8^*nK6 s)L5uI#1:;Eڻ社-3Ǵ6UDe┸ky$E . FQq:Ak )# j}KuNu:2 HL^wE铵w]P g̢S:4+#E֭4lEQ[;B}8LfdŏBq (k ~D%*s7Gmy"Vh߂eC$WJ2RqtE1;0ԋo'}L&^-RB{RSBW ŀM7 {PR/^e7)I &gBeΧ55#rV{鞧 QY:- ׹޾eN3QALt\a~xƭ~٣eF>W \q##tyZ";5LRvDɧ?Cb;}G>Z;Y"*= 0Lj !qyxۘǐqAI'9-E v(د*g9)9 r*Ȃq(1'e*BF0 CWDr#jÔ{e|oC= >FH0;ҿ2J̰]{Lh_\BEC1Z^AL_ +oxl]΂*$D;O\0$LjװY@!&qӛ]y+9w8 xTsV+i@g`M}F>_B[m#G?IV3 ϘG5(,tW?|z;9OI뉰A=+toD(%/}|*ⷘXȪ!q ,k'7*`*6%`;4 9A kR'榕Pb1Q ] j J_ZZ@t[c a3:a %&U0nC uYa"iaz49Y{.XEdi Zr]@!B1EmI n&JN5ŵe| trzzMxmgK'߁v83g}4chPfXJҤ}Eis ? pek̗6'klkB, 73էW2,x3JDcS^ؖ #GƌǓ~3uGW, o |&Z>U?-ɜ@Z+.>-iRA*u{x)cAA]ƏPyW`晼Kwj}vnqy *A4SO6E8I!ķ%*1/9x %y )dI[L IH "IC5j$ =ú1= +. .~2K QvVMoPs726 -ȅi>(4?~tQU 5v-,⪙FM&yG7>|v'fkz%1BUܶ ,k(Ücٝ,!pTt:狡e ӓާsȏ՝*yz0aE2Vz[`j4*'"3R߃(f3ٛ tT!Ƥ+@G0</p-4XgN6Ate~-ǘzafAH&XnᨲN#Y_uOݓ`k[Q# &J~b^9I$>qP(* p 2 ~ˮFl:H ?^&G!$itY咶cڒ%v=v6iPGdKٳIi{mN?46nsOXG0CL+CҕG{/pjjL.y}:;&Mb[y {>U"nrKZl(hGnړWԑ0>6bG쥞Ib5D&=޳FJ BC2m51ʝ[ 5;98BoByJnmܲΣ89|]Ai `kŬfЎL 8Κ7ФNϝaK׊Gϧ7^F0i dC1,BH/i8CɘF笀u$p\1LBvpO7O7`urLN׷ɴ0{x][.ŀ`/j%zKPKDBvsnx.$6-Հ4ωmFqҷh4PCBg匓J`denCdp@̝ZxjYd.<85zbA E, ws]lԜz\:5Ӵ+4:q8Ώ"j9ŔܼUҠ.eJHXMowieKhtdZ-g>@ 0 ChTF{[+r5u9DxLG[ \4X݆JqBwLQz޴?bjB5x0^TNXTYs ۠šwE(s'QI6/lie0̚a f# JH}@0cfվvFio#O^ fUV *trà sÞ#TOMKnZ>ߤP"<:N"{ྏ' =_1rM,#VtJSb򳦝ܧvt"'ˏgsz'quFcl11.Q5*ZhqlI9@{׈- ,Fi: ԌL^X2W!=*vTLN  />md*iŲ>:ZMLHy뀌6V,H@XudDő72@%LV[5}R#HdYZwCJ!Ejɢ{ >B5lcB;e ) :=u: 9‰2*Qœ%r4vw ?w&%l؜^!̦k 8q>${`xtCsU#Ɍ1Y7Y!Q 8A" nֻPTK6.Kz9|^Ҫz+ 1>$6 ,ɋUrP5uK %$,JW99qT%kW&p??zI-dlJ ,D6wByoZyNٹy+'4fm[b& З|PڃzMAHƋYgGyxZce oKF$B⯔(0MnT[KvNDcnd1nA|:Hz `~N[= i{H-FfSFK݊0\Nt" q*/u+F,a;DL& O&z;pOÙ^< iY#xD;O|K)eA\F'l( oƄUW%Xj5Y(}J dt:^>Ũ>Ȁ]fٱ֗Tuٞ2{rwr 1Clvo@OĢe7 dOD!orb%V`<0E$ k `_sF/fȧFg+sY)M/ȋ;B,W]9a%+|Ph -T/]@co>R7[k p! Ff~?2ח0KOǜ}/̋5z)-:s-W٥Ʒtpe<`}]sy1x~"a0ۜ~,JIgIYkL4 ou)1DŽs3Q\a/Rwfa:u\g C^) 4'>ZPT2OU3Q Dz@(/yptd+yo/Md0l+0+M؛"Rϡ8!OmGa;mmìdpgbx=VԘ(},!~ظQ~k<сUnLUP0Caރ|+MwvRKwh s##KHKޣ;|qcV 7U Zr?8[q;.\ [͡ ֯)R?5dwd:$TX뉞Yg zCTH.'DbI#_R G_FM.NcqrC>c; kX6p y4j'2jet]yE."J:\z>frk 9PUCܤa/*pTcޤcL7Ƙ&5_Rp`#lEyɠLl8ED< JPE*Z/e4 A2y]ڤ8v^Q6Iu~aZ`*xw3cT&yvlA0 0l41`^h|l DG'#R{!i`ΐBkSԇ7XYftOk9d8\Bt'cDO 8{SQRŠ ;/!rPBU 1׋n< ɢhJNvF+_B8*Jvs(.W}x<lH/{F* csZgTmn5d Bm̅‘~#1G8WnWpʓc 6!VڽWVZ7 KhG؈&TPڧj,׷_ +Vۺ;>Ohjmr; aUS8[ӓvLA .~[nPA o#|$^yΥ3>worc\RRlzhLdCydNY68) [ꘅh*FN Dt="Lۆ([lۃ[3 rj/c;O45M6$?Χ`fU3LdBҝ<%DrǘDmnCbӊp5 `gN{k}@7k&7A(d8rxXBM>T߭5P-uC0d\X [Zf3K>4/4_2EoB K G,"џyҒW }v+M_2 |)b+o ɖ?(Ed=M!U*܃ ȍ\߳ɻX5-s/ YDmPs(H2.cj9{%CZI!,yoMs jʪN0IK5mx qV[|c շkuh<`q _LyW:5(wgU]1>`+i%,(7GfX$jqS,9`:;T.8CEBֳ _|e*Nb(z7y6N^C ;=4ˁr]*yvM-j+G~mp8]]W(=恺gcfxrgSt'ImVջќwv^gynǖ2w.Fttݖ_щ6aN6 y{\=$ iOzѣ#y4wm(9<ڻ/;')JVV뫥qވ@07,?]|/ Cm]$䨭*Fw$̓c/6΋Q=߸ev5*Ye8oj+'Q> E83,Zɪ<Sƌo(V+HfGf'k?qC`/ʄΆa!oˆ(Xp݇qGp|]CptT,yG;Mzj 4MIR.?h RУ̶caD8f<}$߲o Eb!'S˶9lFH<%̈́2q/rk@zs|{PL9$3jg𨛪lE0 A9s3yTh(.:?|VJޜ9|:oMOJw?Zk]CY >;W04߱\qq3%6O&)qA*-N:H;?PIb ƏAS}:R-1$7 ()E?kcOpK:FJ7?LYpq _#T!n^~ ay;_ZH/)s|:2 I?g30c\zБx[`|URrZ 4 ȕd.uI(l_J=x^ti[-Ȕ1rFXc,ik$ND/ 4 3)D1BI rМhV:m ^Tޙ0s*Ґ7l,sٿb2A-N sPiVkKq ğ ADⅥ܇uTȼ1DH.(AQN0Nf~_7oH6&O7Ey)@%8o-aGˡ5ăR`;K[Ơ9n}3_~# u(t`LdO:qͱ"حg(x_Fb}g G"لX9Vg$ǭhZ}*OWB񻶘4{fMXpT?ܤ;b(76.)=GrDNwJ2[੣ß&J Te1Mx*$_fHQG7ܠ ,!lr.*E/{(wЅT!X(x"L]zM1˶{5WS[ 3~/٭@@gڱuZR>|wL!|FUWעu3|KC N,yK Bt?̋8D^AeWFFh-BE{?Md(?Q]g~aW p" 'Tk:iCx#@txJiuǝ<[*B*ЂޛĘ>ĸf} DZ}{gC 1r Z*UBh %Vg(eгE%|`%)*M m%Rwi&=L Q5IhO9ԝIsҽ.[h|F4?Mͣ7F )Qb vU׃;/#LT0$\:[l'\gĕ8w+Wi !s LjKg|^~kվ'*3Uh9szۛ66)`dqIqe 7 w5V م:%r7ڞ̂6OQB_+bȽYߢ"EF1_ l vz̐aW RBn :Zgcb}ۯGǀDM⿧F^?b?KО`5TNa(>8ļ3-MX1'jׇ!0}\lcX\R,'\q)ӑbYE9QѮCOJ|E MsCu Ú3P12 K=cIPh\ XgNߜhc 㫓F8ܺ\d..G\[*XOVUʁe sa:}熰 \ϯugDdQ+dN[ vin27ƒ]4.QL ]wM?/r$$ isFkCNP(Еd-أ *6% 2?ݐxqsH#$ }PۘyQrm]ET 2̠?Y6g4J &l5~kGWYǠZU\[ xyWON 4UF6ъȔDvoDdNM| &Z/5fsAc~ʽ]A]q5mF3VF* )hT#cb^yw`x$_$W5I =!oUR&?[SCt>X1Q\ [xHZ_bZkI㰀7N oF1j" H4튬 +b^_.lcʭAU5nO,׺ِL ( #Ev;fP3%\Y,4z>?4 gduWamJNHມhwdcO mf ˎbgDx/~ms92|Ap=L( MXj};?êإͥ kgR闁J{^:ӯz "Iܧk%i'g}mzl~ gs~5/$yc>!F #C˗,rauFޑL|iR ]ݧs<=6{4tʽ;<]d*FƫZ60@ ɶ V,XEnǭt-g3V%%:~> (N&F ˬJl>#HWŬ'.,竞)\MSC"x[a'F6V/ hu:*5ϸEFo#!+CDWNn{b[ôRF3Bq' !yxpiS䲿LY>>(7NHGes1H^t/eУz뤋I4*(v5A_.J+_2FZP"LwOrËĸsT@fD1׃h ;N?ЎOʮLxUcѓ&Vh@"uF*zk4S#W*r -daF|׀ۈp,3K3qd5Z[KKT\Ӿ,2Z_+5!!<}^%nʂB>>T&1q]|('t{+EH]IJU5^;;eBط]뮛e0tGUJ~*jՔ1K "`}<3}xB6'MוU77dggR(d#MX"*?M*B>,(Jcd)5]X>rJNj&⸧C4N@3<64e37s'~0uB@ִMf>WRPr"&:~e8 -q$d 4{/3S&Os3Ye7lc.1 Mө}7k彔S#x !c^-WGoY|_W_ x{5OsV&0]7 bJx:2U,'&4 ʒ\e ^bЊH8.c `^-]*%Akhb0Fۂ|~j&þ%c m4hQ#VE '2|j޲M.uG";]jDBVbTV bXD؉hei;DFq%;TWP=>Rjmrf!/[]BPsh LU%nR^ ѭXߡNJD%՞U`X8 ,>PM۠6G[]ȓax%T |+i|(Vݤ {&c(Qp xĊkxvO߁Ŏxڬ~9D|o K((xwD !9܁<,-)Ħ^eş:\ppug^ءl Le0)\uLz.߆EH /7?MT|%tc1aͮs"8 cg;45vu.C8(&9$X N;$8yNHZ$.|V{͊Wwm{@vz4nsJɝX>kdn %$BE-h\=d͆V  {*`tQ'l%يX49I״5G^]bPY7%SIN6>qG@3CXLxs@97_Pbc\p \UPW)eDfs.S/f$3O"q~lkFYѴor=Qr{ Sf >5ى>C{Yr`4x01f;l[õ11t4]S7FR2H۸&R foR?nG~Ua~,@Ng+g>n$Fz:Dxff;ȋ s,\\{8?kxz?.(W,ѹ5Ć.@?W |yp(6uMN.p5=_v` }1eRQcAYExiQ}QꘟjByPֽ9G{uCR% lR}w<%Ks9GbGF_Zvܫ}\xfg,6A?@K8^-:nFND^S_Y m)0I. 4 XWLQ%]Iq֞Sx=|E ZR`-Q c&QAs`T]k6M_a;@c0f'bgЪMx1EhG.wM[O9B 3Nʼn_c2ȡ[@>IR,r(&ࠢ^!Jk=7m{PWޡ~F t`B;J${?`(I腠-^~Bw>]

{Ph"f{C pgnF5EFeXO^sM3fcL&-'̶V@:d#  ݗ(K;e?bI+ȇ'է\(9ű4$҃U y=GWGei4B0Jd~` N{ќ.wb!7sX|*ڱ} IIt0*_5ۦ ߣ2nHüTAإH$vanXfqKi疋PU<JK個Nd&W95 5VY!/"F6bL~~kO$ρ87l!jq5L7X- ݛ+eM8a p2O10s ˘\&ڎ65ݎ/RCÁI4{Gl80i|[AfϚDycl$ͿqMp$,rv'DN(VNĚ~HK"JX|5Ny>s59Pt(53,Qxo7 1W !UA+TA9֋PAQ.ǁ0.-~((C'$>0WdHQ9nkMo,^;6gWDN\QKQ33H_īvNnt{>AHm=\DkoXVG޴'.;zxb-Ih$pzt?1RDD|j8K[@Ae2چ|eRzy>{p%_9ºp-|^VGX&#I< hǡ+f< /puH6t˾(c 9#C7L2:\OPM#KܡAeT8 ԷaϼuuXā~F'aHRnf/ 2bxs0JTjԢ^g^:2×*9VŚ[ lkqIo)2:ySaT,(3:pun&Ӆ5׿0>(XjJښ}rkwFeUϛ%skӎ'%Jf\B"ВxA\*%4 ]~,UFDfrkVgvx?)XSlqu_ӷ|ݬ{bT؟.`8rl~<)t3]]krgprPmev$%OlA',nA*1M0a]_ADc?s\%} |E/Wm[5tM%;G,3~']u>˟8F(Mo+$HO?>ԃߞ7HCprSj1 ? vݏo@luu/wuIՙiD #%$T E;Vd]J<{ȮdECo'>HB0ď>*& 8E_fT9щͮão9&4z[YSJvW4 o?*6W2@Ügp6)UK\)h^pBLݐ05"_{c#:Un4 2 Eo'O@ONԷr۫a&x:3i\渢vR0e8i{,Y_!sC&Y%P5G&5~<:}1קSfcT^1ս>'9\.CvރPS kL9'98*V:q@pT)s2F/Jtbɑ̆ͦAB}vZxoXjQ]y7zkq57,XY1y| 'q%ԡ޲hF/ve,c̰N8 }` Z:9t^3K)>LM( jҩX;8[T{b6eMb'q 6^yg[*lŀy)>)0wC24N\f=f%H"x&iZ~6YT Vl-d+{vʯCr]| p?@6ߙTC! S^XhV`Vlֈ Ȯkrt D9aM^e_f印IRQKo_,UkZ+`84Ӌ6y%`iʈ¾>QM1aT?6ŭp'JFzkڞ;ؼQo̅Y{ Stv=êWD[¬1!V?I{ \V||}ɼRhC/{H\f;s?fF >$;qjTRNm \=Kp{u#wu5QDH,fA]a)U8taSP/O]gVsdPen""ە\5Si\WJcucm]d]MT>Cpދ-:H_YI?V9xucJUz19,rS;@ Qv9gJzLU[&4Fcw( _hl{*uP|qjxZ9{ظBɆ aИ}[V]-)4%UiGo0|Y%oa>JBTԍ_q(= dSb~hu\4Rme^C.DRXE)ʆcJF(n ay khiC.Ʀ۝&[< ._`}Hx"/}QmT{6&G*MN7x=m=kQORq{L6=T:SłaEo ڃnh 7{פ`X;3ki? en-+ }UCWq3sJ"ɱ7)wuΔSB,< "WMY(s܅xܬR>^hEL|5Q/S[9\86aNJ6Ev35^r` )'fB}J1y,o96ZKz^^oo @zBo&¼ N9B c{򌘉꧄HϯɪZ8۽".⫁Wa)1Iv)3I3{b. R~Z@9*SpȨq@S`G~^AТ_?37_{82~Q/.>b=ݺԐw^gi"W>b+v*HDt!ݕV6ms5Y~WRǹŠKm=Y)0rdia4Lxyineux8|Jq%=S#;BEu0 ckf(<Ŧ9a𼯁&?>n@*պ?g"O)yh&P ^ Cd+" gψ#Jzc\~]*]?oq㢭<Nd!H:+XLK|<5yoJǜIVˇHJrZw'p%n|^,\Ty<靯qC n!cEu9-y_pk-׌qLi${?]<5zLYGP?|bdq00P 2>F\ƛg٬XhE#<"]4S5!1]=/Ecq[(SC7J3-k8}H9Y!Uk`?t'Quv2u 'V1e^g׼9 7H@N㲚}+8~%Í3."rtIZH!k=?`Mug82#͛S" wKS+rE՝}Wlj.Cuwd>[M"H5 \HP >|*z a}nqa]1(jGqkNBq^`yMUu~O b_.i4"ֳ)l-5 G;dRV{h! 쾠Nۊ; a4R'' ; HFWk_60By5!29OYBb@r%H[؋A6%ssB<-;N>+IˆVv7Ǖ0%'T,:zpQM)Ln71+ų10mOT Hͯ°{A&R@0ڽ\:j,FZ8fxX =Ií&P"ܖ/ OF&m:K4e0g=pXf:歾s}6v)"[]){-%m?ҶO-;ѐ c_{_z;f0$H%n)7kqI0i:m~TUs]pell3t^q0Jā7t0RQz]jd^IVp hMb`3~Lߎ{p"[a6u%3I3Q;]M-[e#E,zԋG:jAX9l/(kpːttҒig6L~2?e8$KL ckpߋЊJ&ާ r<+{u_>kV{iYI6QN"G#A軛5F6X֛1ڹN6$Xٴݿu&v"ʍrhe^zmZMC3$Nj]"v ǛO!I+\R*+Vby|ej9?(h)[&%JK(ː}RRYLOZw],wv:" 7܀X'M!'*HATj.[W,~x_Tb]GuF"M޾(BzơQ] zCg/>:u~K+OAŢ(|b v`VV0"sí;?4xz؆˳nB"W(>`KP~EANvxrGW򠇓0o DQt'??9ǬQ3=n1.͓X `wpj'~?`͟~?-cz^bY.¦qD R)E^_w ݹ_z2X oRp"zdab_M-hXFG٢$­>t_Ǭ;8x}\}s_HLUW9<O:!2(Oa,h8/`/a|)W7|w'ʓj'F* b=Kʲe4\]f^?AB&;T|kADSsԸτ9a"E)ED{ޢ*ĕ3r#)+SӒL5,J6Ba3G֞+\{}|3Z NidЩa3Ai(Қ+L! ,KheILa%UWP= 9,4]xXo'n&hWS׸"/O(NwoPwYځ(*,z|?øEKiibX@ʞF“5SR+>6g L#@=?&VP;A @"!i\&T)u]5QV?{,C^bb!5|d) 6NҚp)F zc/ ; 1n>IU}oTX(՘TT lgl@EDSBӸճY/0\q!uf]j bI~Wvp0YpIH#IK /)t#G{|k)KwhDؽ#fɒ>NVmĜnY,sγ6 BԒ:|'hG]0Z9鑦ochwSX({CI0?9RK8nfn:xK;=!YaYr uĀmOҦb(8\}\A.s? p猠<ִ,ʪ`kR+fQҷp~Uڛ\ބHn7C!WZ5 $kh=KxLb3#!cGbm,jrO'ӜύӬQ%t>X'͉y|GU<@k4~w3T#2XZ,(sgkjFIdsL_ fDd8N_wT%mZ=qY'8;:1W-O}]ð{q}zyVX<0UgS@zTӗJI0lo0&?^݉)a"AS[F8#Sb"͵jYk6=7hP6 Dn_F;.6\s66cQEV? odncLB@NKdžxXHsIm:gu@cl F"# 0Ady1?!аB\k>U,0RY\|p8/\>)<#=0x%q0)]ri FZ93KsXʆrti-+W, ]Tk=!ߓ>R8RV\xC 0 _]@ѦH:M *E'|( Ҵm`k_X$ 04sQQ)A5wch#_'53c)J"DDzXmcKO)E%`Rs5??w㮝9`" xuNsEaX|R!g0:a`s3mSL17DSNF׷M8wF%4YWd :9j|t4;)HMhy{m`F{LmmƠ`Td|ol/jNt+*_`s}?F;Ia9JA8&;i *<^`htfB8eM_2M֢Rdh4 BY\ӯ֯_ o81?&a Hn%uFs\lɛ0nuDH&*3^Z!؞+'j8( Q?# ل`.Qxclj,Rv|}ll"s +]SkTUR yMT@@љ%Zv^>km8=dLcB%ވB[ Es( ېq>/vm "s)H~}BѥgӺұRZsR~;YyvZx=Nvti?T9"ɦ{}.|cK05T8:Tp>7gR-3Ky[9 {!ybpeXB)We)1ծԚ,Tz j Iښρ$cg)owl 7p&~6 TCF}zf 6p!'3a)+A+h1AH2*O{kp;u3K"5}7ĨM~Ctwx4*MW|jF$*E>[G?+qS 1\-_ѪIEIphe iUd|+7":fųiݳe*F :t>٭Io֢qa (&HD%BZ#a81O!3Qhf*9( 1j:jX;q1팃L{93HF2j׮rig Vb4X k}vH$,nv-.^g6Jn&y ,Qxkg`ET;f?ɧ*hv#:"3gO>oޯ9-J/y.qlݻwmHno6mpf43PPzdr:#w]cɑVI42}HQ0* wk@vB?JejO2Z.]b# l.1K0b-㭬rBJWE+*66H~\2f*.(OӬO }|T*^P1@x_|[䋯[;&:MRc] YW<k1m@3"cWQ嵀OJWQE4#U;qX[0|Hn$. ҎecqRLZG!\m%G0fMJ@+6J8S UM:tVF-ؒJqسljĆ7bdo&5`~]d1E=2<>s 1 ~}МEzVhKBU PZեN} IϊY\}/m+=vgy5JQ? c/'hԅr/N.t0 &+UQLV&M9Fއd+Ƹ4f8 8" qOPAPNr419]̖cU?鋃gMQ+rԑGa]`zi!Kt{~tV˲[Δ.I΄P+[FD=P}p!c\Exܡ!hTҹABBA~j0)!k-lׄL 溿jCP3HOn7b$KhhN2Z5ʺe{?Cz+"LަhIr_d`1Wf^gC>ktnÝju+|sב AD\C 4hV>>r}a-(e/ه0ګ!OlVZ?'_Hi1ӘrQ&jgGbUb[OX|{|}teH=RCl65o+Q"%XT@F`1Σ-0,yyh:.5Clɭ ՓWƩS5GGDO\5Ź&UVmz2 r~>z*ex)9\*cX)Y 4vdp32!\5#u[ۙHt5>P }a yß4gr(T<$e9l:!\bUƛƻ29nXF{l~<g1SMW\)%Ejk,@Dyz:6tf8"/ ,ϲr?ol2 Řn6ܖ^41Ћ$/86Q).̹?#f ylt o<<^דKة6Ff+8rZV \5nfOY+>֒WǙ诘tʫa]&gBT_r<ȤppqTWZvsE.Bo.b6 N~0:4ig(NeY|F"Ç1Z>nAMbҗ;C- PSι@})IėŇ-nXVæ짰_XCl+˦'Ml*e"A[miL[Ԇ6`<=X'W ǫ/̅2K <eFlBO#gT*6uW!"6b;= >r03jjhyis~a_L5¢sk-PA- vǫ()ި󹋝ꋧ$T"c2^.]7 )l%F."9w)9ZʡɶgP hFUQw35Wj#;cy~8uw$/*\ "{Grbjڛ09?9ǝ^=,:޻ϋ=iyΚ4kiCd'i79LAƩLXE*|(){VI[]q#\Sc 't!#@Ǜ@ `JaZ!>d?s* %Va0&sQ}Hpꤎ񇫖P+R:Ek(5W05AMez+,a]sdxƑT3`%}´ Sp6L`L|)D~'ظV\v#3'IMa*RmvѦPSinm4ꩼjl!yKTo%ƶl40"esOS?U޲N27n(萍Lf4|:=msj.U,+~NJ G*Oe'Ab|h#hpSl .pQ/bioK/vjTs ݾQ8(kyWlGkJxW/xe(Fa"竀Ԑ9?2}bVM,ƞsrQa}o)z7تa +^yزrʓǫ/l~ס 6yxkxzjggb\p n$ꇕE@U% >{p(2pʛԫ,aEb$,Mb!\eQAi$ \(/XL$l#l:LPgIO'( ?ju|7{p5lI)]{SQŌ _=vǜ0^c\Q'd;i{s' ̐Smپ В%$r- Ah0:gei` ypT+Bp\'Dzcsx&GެQbA ׏R\m!yHTҜ<Ǧ[t3- 棉~ Sb!h-02z'M$( SY䷸{kO^CD <-aBF{iRL; \Pm[8dcJFe/S`0V؆s ?_4*kK 5nZgKlN#ƒγXO~5J[ČyRR)&}S&;gD7q‰ѷz$նa,`;?VHqw@=r9Sgݯ tIPs>8r!4\E Y'?a\Gcϯ 1 )?9R*8ʝn2GHE/vNMJNpeI%n+Fe QM'_ewVb=YOCm" =?LgR;Ajd]}^l+/H!T* a"It6}R~*Iq&zNN_Z2OZ*?}baf6M~ F}wHg%On<S/[ 1Ƥr 55 0OޱC=,=t^@Fl{|2rc/KFH@ԽtB{>]v9(oM۩Of_biZz|zL:tBZ|&D ,>ywr︀ N^7q]jСX/"-<:c佲U փvV]wa; Pa9DwN< .;a_ؘ4̾mCuPGlEx yv[BS$;sbKU^jZY:4*.߭1&YGfo q/ 9mebދcqUۀ+Sp}ʖDty(@EJ%J}<~8d) |KPdvusm"Z"uϕ(T_//wZiػL= iUoo (AJw<ےi򿏓7"!R%d˽ߚB 7فa3ŭ,$̪DBKxErZzEkgZ;3(46d`ܝG"Q pX j^XCEI q,X@{;رcb&{ WzOBMlk0? t PlJBI@M-6D%*NAT{o<:vMMi6=7b0za#,R$lvۆ!Y+sGFُ} kr[{#Tzմl q0c P23>߸LPT;󉅾 O,Or:Cf/Dc<)Qb h|O+p_`Eu=NT@&5zb_ \.mͩE+ej^,%gkA.z7۰*G^DhKS0W4᧼/;;>HR|qr?k&]vjht փ29OXZRqZG\r\Xۋ>E%qhoT[Z"I1zšҎTֵ~>-sixs ]Ht7IQo)ŤO?-o04c'JL&uҗ4ҸI'ث{Az˟]}x0 8o`mncD[=աAc &1彧Bo8 Ko#Q{LuW;+a'fyvWAsmf\>%P$i/*juuQ kZmBwy^82x=<qĢ4Pi,va'Zn:Fd͵5Qm!bʼnE% EVU|IQ^v0zyh""-Li\Ι4f/ǻ#LGf}#´%1}08T͋(,-{W>Af 3׾|yxx3nI.V˹:˴k_R2y8c}0j[gJd0V/%I.t1P,\n)j*"SYX] C.ׄգZSX$yutGTP.1.#&ς0eJFNkSf.[u [gU(>3grG͂ބ9NE'WӪg{wD|G X$@;i $64; @+m\Ӻ&"}_+ zIA%oNĂ^Cj~Ǩ-}~$(0%('\ WC#߂U`?ÝǦZ7t/0?w]Q$ q"w[ڿ.܄ 9#([Dp,7W{U,yVѬl(YB'oFOnJZWyS~&5~Y68u_pq+lp+3 z3!h;qày7$4 5 yQ=(Ukwl7T[쏳,<91by(5_Q&NDD1` xZ[UʋI( |vB2w&Nnb`%t>(ˋ";kd8Ӈ-&wft&?a9ϯ.pFn'!ϷcY#Lۓ0HE"c!K+1l#d*TXu2m9KŽS4S3qnQY;#Pf*? &o0/$@{򢾦]P[b@w%QzV]oqG23gWiv$poց:#5_}hR*AU\Ip ^bi4)$ڬKI^#e;HBGۂ[ktiFXQLDW[D<=͈ NW5*}Qrk;cxm gڗyf̲ep6U>=AN2+P41Y|)3)aU{7 G\LF_ل3Y8.)&GlQ9uBn3|N\_)QR$ö/yg&з=>V8"ů4&&x''91q np:9TK跨&.R ARoAZ4<}8e.J'cCVEL^S:xÛ[J/Sz9G+c(vuIT[5g]dA*|L궻?uIZV+FSs.",kZBht6wL@~l5WN%ħ#!S,9^:1z'a0|{a{{ p;skJc ce{~ѱ}n g 9'o6Lle+aj/kH_:a`ySAٙVOuW"=o&NwY*&}Ѹ /l$ڦ$!K/o ۰EFy' #R^?(&OY7FS L@4k3aiv< 焷|8: MQ%rw(ݾH.p=\mzDMT !!lkZθ-`4HJ$S{WK m%d̈5賢8E5jZ5 BDzMSI|j tWA;[F;\o3RQ92,21$Ep8R_j^[1 {LfT P)D}xN-B-˺˝sdH\XagqjxIo50N A| :(nfvbaFof!H$̞П$aSoǘ#cؤh*@<} ڭ0s rTrxCߎ* 073TC75"E`BNTDPTu5ԙF&s}iuMԽ39pD~[mxPQ΢Z8U9w2wϦQ SW@ȧA%P|㮦ljfPFnνUZBs9BZERZ /3C;-YN`$@X.qJHaT55r5&dYBA$ze|5FF4- hۙdžώԖeCT#ijd*LMZ1aǠAN #Ǚ[d]? ռ'aY66 /Eٓ-ܵ84nb'7&]=B[$R:qҩ|T[,%HL݀$S9W8T7VmLkzZ Нq(o϶!=sΕ$ xclx+E$|ZޜQ.+{d6^kak3jǫ9AI#(R$K16>ʯ b\CyKm!WdI37R4} :U3<_f@sm?ƍԧb&wߛ :YD+-mmMw;m=~&"紁szfk1yfawҋF2?o瀔Q0ٛ``=ǢiDM fOTӒoZKO{bLY5vbVb7X u{*l6v6W#H*1?4, Bc%225f]Z_v4+ ',l2{TOR Iingֶ%iʮ rw0"[^fa5s2W4a~uhQe]4jvvI{xx^8?DO @I͖=t>uGaږ9B>d@LO˞-ie1ԜqeF&eSԀm_xG&s:29eb]Gߨ^d4$Ţadu'amMuج? JA%4MX闈K(›rNPZf|끎!.Q1i؂$ZAH]i~Sᇕ:#Z.,erF7o:bcDd-')W9VYMB9F4z3XёstamHU7$*8]̮[.YSG;a[jЌ(HG<4־OckP~ &Xɹ7t{I)=/z$/^]`ylNiQGpT>YՈ]7PJyZdA %,w$t*PY9*OqU7%x>#ҡb3\+s~hE9+l:*ԸxCR;N\VG}"0fTހ<|]q`,%+"3>ݛay.׭4!y%^m'g@b'uqfG,K2SHqh.?. }`C >f,{,ŞF}? b=^s.>veSAN,VHV di?BLĀ`ryL:63r†nq٨~O΄%]4,A-x#6ZYlw[=pSBY82ܷeߟ.N b +h*1c̛栤B t@bjj%TV[ck8 f(IxWZ˜\S([c*w+th[LN0<]#qV{; Զz)󾙃Faǔ?%q[WTz ?ȹ7=Q_Z8,]^Ԍ'O^L,'@[g8!%j©0mgTH+ˋǽ n>yS94m0f ]%8ɉD)N)KHڮZ*A[2ՎiroKޞa=^`|Uv^/6\|J`/L?5be&8cHwH[H.l¹KV^G%m"Iȅ ,o]i_m 7VfҳϽ (>:4oGԋ{2f۷2~rK EZV#nⱽ2t/K}Ɣ%McFX]U\i:96ddjbK{\cY$խEn2dmSX#%Z60g5RT@b@D/s^T ~ILW|.E3C8,OLUvgjS呗vyĈe1$~b8D$|4x: 8=~9cNsq R4EƱk"v<ҋ~QEU4etɱ ÕQIdӃF-n;kx;ˏP(E|==MԽ?rvs 䈓GWݤQBwq ]8 -mڵ(-t*]SX坋2<J'n{ d,=ݢ, 'ߙAq:ֿ*J*a%-7l8T8wC TBX*Bh5{:9&=80Qs8-b;6XBȲ0Ƌ0SH?$r-//(d??A".%=*eiyvS}RYM7_L/nvcYc!U<9U[0~,PX> oܥ0kw^ҔގwUٸ]% pћ&?XD<0_) VQVVN(F4Us7oza ORIȕ#LK·fIdάT!^x@6B(oa4Gb|V@L_N۩Gp,@$ ^ޝH^bae$նʪEm9eS  wh9jVa$ۧR]Vla>i&A~HVV,UPd[nf;`P 400W22Nn330*o{}C:a-E( k֡/(KjL\Pjj/c`ҹy>X!Z AR1Qu5v ҳ0b-fJKpL7P&e 7?bd 0,796yƊfV0f 1ԑ%-Tz:6<0l`>dv~b 8J@7E>`~>lտ*(ssh}]@h{W+#:uP1 @K\#Q+jp*uKEW k5ūUZ1vL@7I(62`aN0A )GaDP٨19Sn*Lg>y;Ø3QƵ0xdlh'Ɣw wUx1 1KNMa)NHο AX%+{tOQC+Nv F=vn6Al:ݵӟc~(b0R`o= =z(dz:vDԯ2{X冑y{S w&Ia {C6@ GXmf1b:P@BP{F(:tWۆP6,KRyk-ylkЍ* VԴ琉m$*9ҥ8n.zE#fpI2Sz5Ͷ'2{t9d*)vxRw>SzSˑWļXGn }nGGf0/TƤ~^.߽R=٨}D7GO( ,l5–`; F˷ ,C l&}tm'}*eӠ-6 YG;Bp/@`dP\M>q{).4,5+)3DsW΍{' y_ hVugG i#oHTvD JFz"j1 Iԃo%x,oMYJ7Bm=PN\&8YLT* h.2XvC~Z&drb$BG(Bh47WH׶NPUZ S?cv_ӂSJrnxI!ַFqyt,,  l5S02R0C!j]4:ְF,^%Ih,Je[/foa[1^E}%;tSlPmW1˭ㆫ7OV7Jy4Dlr',DJhFhp LKmQHp[)O: 34 Q#k]A"]X,Stw]J1WKz*-ܗhgqk1+_]-i75^#ub²[`"1lL:6| l@dhLS^qJu,SEˈa' T{.M yHlq= 9Frx}Ҫ "}b29 9)u?} NT#Ȃ.n%c֝((bf9Xq+Lcd_MGhjN{8c˘W@-=MgS xYsI&x5|]=OVjxm23Qc8#RD0YۂAA|ױKyrE)˲5NtNgxDA֣j4HdΰJ vpeD!UTb}cKlW4N8Z|H+-ِnfP"XbL~dL9G~D0I|1x p ,8ю*vz4-,*UPRo{t jQ]8sy! y)~PвpR7Rl\b2gdgCӔ5_V~,w{51)TF]6=:q}flcb3YvG`@}J 3.?Է@Dv>{D-ryR!vth}1;U{>9`.M4j;X{ȍzfzCz6{;j Of/+#X7!|XS"R%B]_˼WRgII؃WŨ{:kzw? ,koІq.e/uĉ Ed>n|| e.C ݔ!M>Ջv@8uHE7|԰ C~(ӼH4-m-b]ɘr8¬ Zw4?@4Ԟx?贎}Y;^M."":*meM *窄+/"| 4&hKPHA&8Ou}nU]$-X2'\YRDa(ycE1IN{/E+vX'߆үXx%]8(Xt hn:J&".qi>.f ,X/nBҜ:eh~^IûfX dnJ/M$[75b`86EQytzY1De}d]S,1(}8v+'ֿ:^3+ Fi1ԇX `@pߝ8X28Z,e3&3SS-''&jr 09yRBI8Ykm$\7r(hbag5>۸uN^4fLk5dBIrt aվXjW@2Akg렇}nth)|)uy<QDl6ۮ-kt g&<%iOu9d%iJ{G;3iË{ d42݄|@;~-0B4;W u)Qt. Eu7"ͽa_ Bc2kdo0?f.d`iDcL뾧zaPm: Ȥg50ǂfamgY[xIU b yz(^݊BU4 1sc=qO<&m%ÔÁd&D{͛Dt*+zqg ~O^D xy=17v+w :;΋XpЅ˽sq==O!+fܥu2g.~ Yj 6.?M5NǕ Ey+3%8!ིU;~  f؇OY$*6 ։ű^V uE=NbQ=yFl9ԑ1Y+$)Z#QybxZH3UEnKh 3f"(t˯[icC|OtZHor,v2>p`d˨k~_+s=p oJ\3_l tnH ɳ b7 VgovW$ jut}%b5Fu뛳yz a.Ir۔@ ЛXxʩJ.[; `r0Ҩ\_g%Ln#0Uū"فx+2p ^;KOǧ:7L j0|Tmn(o v*Ђe\flhcX}a*}nm"99n^qٵHiE8` g_>vfz3efF?k9kV'|XJ:jƟ@|UEgM̕-8]/-Zn\6sPY_dx%ZJC;([;0-h\؎[LZYMAgYo<",':/<)Ot,.9,ɄVJ=_=tp-nYy"b 4;"6fW.Y,݂ -2oIa59*0@(԰#>)?ďfsb-}d疐|ü VE"!`@ÓyB_p7o{h8nJN?E_@##s9[/b s )!꟭/%lAȱ}8yI1EV@dG%bV=}2STN9 [98f8msnǾ.ZV<A"JVQ1o/N(X:?e5&i??Tx9#!JeWHc0?wqqŞؠn= lQ TPj*Wo 5}ɾT0Fyީه9o'CH^.t^!ǔQ,sj"NMV}uG&[d/i݅*̽S%gmЭ o IP[jA~2joa7i21+ l{Y#Dy\8jqX Vx=!+/[]5nmi8.ucLdkv nK 98To &McTHi<`ak_o!= nk{8nnvrF EV,ՈUPkZI`oG&Nyt]Hܑ?($zp%GӼ , ƍ i}\QC:6.Xc-V:?I.zE_r*6bF%í3~0 u5A9z.|Ϙ -BWg"[JpkbtRu>k>:Gj^;WGID% "F* &8=Wc_zbﺰ/zS&Gu~0nS[(OD C=,a\)@ذnAA r`ҋB7 D`ޯ/i)]qt5鯎l*Fdvg ڝ PbnCX"4h*K-:y3gXMMelȩ&+#ukЖ—ҧǨJ~EZ#bfaShP y9z?ے$c|Yf/}OBn9H KG\52ʤRi5E~`f7+6|60c ]eh+ D>E|OƎ#6O+GMKl}tiw=ka_K`Rq4Ky SkqO}/ae4()׮u{=x 5k4Ũ_lYV{n՟?#'}dAiZXo/R5I5s,(A5dX<޺f#䅍Msa`I]4c԰hS"gWQ;O?+tnfϾp14[L93<9s~7Ko()+fq@k#n<P- VwuǮdPVk>nrX5gjD,ZR ډ'Y; :P {ƨƸnjxByM[9 P:^"eMƭs!Ian2v sA9{K= t;rXҙ|9!b+0a]5ρ[DB4ʆ7Kfe0|;:-F_]`$ڜN#elq }ƒ`舙V9j7/OMu-5z:LNf99?xW4k9f^eْ>8RD,p6ӂ ~겕_oїY9sTǗ5  X.DĚGBVi9l9 ]wݺA]vҤϰĠܫ{-8Q{T4|w/$;xSל/ 󟩎7i$zxQ()˕R>?dT#:|d %+;!t _Z>V\OY++|BLδ95f;0?5g5!)v5/rQ3+]KtoعQ5Ș9bE#'].-<"b&LN{2`*~J1wz6Ȕ*s_(91S9_0d]nƇa;@{395l[ᲁJj4S(clIJ8 OȴӼ=vaMJ~Swf3{Nj4X!3KZ58*ՎחlBu; 0ǿo| OJ{0P=pKq˦,5*`wj'JEWE/2nĪfHտ8Љ3&)$DƮTpSo$diR2#+s!X-QD\ʧ M eqRV66AZzjg( mV7Pw)xLzk0><{,DIC1jX2@o6"}Vr(σ%u0S*npmMJ 7 > Eڟג+]:HcϪ+Om*3\>Q{78oB%wB6q2hdk xԤ loɛu3U̦+",W5zعG"[OTD)*G1ȕ*LCr&N8oϘ0J .dSя~3HU=.^.ᓇ~ X[IzqtA*e `49zuM=3.R dk\_8!Aw/xh|G\\*/uKδ"!'?2~9+3Y!X9Fn':rtDsZ!5猉qP:TN8-7ͅ\GԔ9܈^8DGC9""M] /<*_AE_dyh)H%p6Ґ$lNIi]"[3#x N7npxNL'uA%")_֬x mY_&DP ua#TK]d VO_;}̾ZppR-2-TpWL`'+Ca pvHoZ\܆}`$fxS 5|tIĔoTCA4A/5EdFLp6W8@M7: wAN<3!  =;Cb i#RͲs2- Jz(ґ`,!z(GP~:k'Aڕc,u$=>ľr-QNa{ہAm|f-eo\$#dj1el`;Cdxt4g~MxQ_! 6g`dKYC\=2ǔ"CV ޒ ,0%Tgd96p/QKTNi$2{0tCIJʈ.П˳FPb2J0\;{םlܬa Fk^.h6I3x7o:7?VI7An|˂c_4dc^BZ/{{r, @i`M,(=+e%K,UN%i:&&Cr0vdO|P %t?ƛ)^{[Z rDfI4ϣymnf"6U鏭 z.>h$}:M(Jx i~84t0ph> bCr.rG4RyLC<Z6~FM}S<4'cv;P3 6eUoD 8;) ƤIf*Ղ=(ڃwm+NvvAbA#QL dmZmHcStYh3;?b:r lcO~nW lj.RK 8sxD;q\J/-94 qBbl!I!QZFeUVZ׊ݚϵ齡n}P܏)yr --I޳u}1Р03EU[;?mlvjqPZ¼)@;+_f#RT?fa]f3ZM黳+eC?WؒBBWjߞe՜G IX+U 6i< P A9R(-fjٿƽPo,Y!Xnm<:V}Cdݻ$ ! w!ex'sKKHD~H:^ 2z>aG`lcg:w^0o=R@Z]8VZwJ >+:ٻJ gU*S@RoLږnP lAXY*:q?2Cèx"cY/}4.a5g }Q1V>$.fB/MKPH/dS ADzM&N1%Man(ӳ{lxin%0Y/ZCwzh"7@$ Z;ΘBe~t \O$o3|;+=cp@9<"AC-YYÆQ0`>NW"^O\}c/i6Ur$dm^=vDG" FrYgѧ߲ehL@3r ;T)Qq$a$ÇAvI}&sȴd!}kbqZLDuw20"1edӺjxX`@GvtC_@8G7-qnDqhW'KDmqqPt m-G轣\59,B,VtJgު5Rz&LU9} Z[{>ې4`Afzamnc\za/"MI5qxhQ*ǂ鰝k~NMa⩤}-v9^]a1V`-vnQ[;V4.ɮ̾ͪHQwNC09HKQU_&lhvy"YHiTx% -;mdI)aĨ^9Q%c R tP@̹뷦S=8vM*U.UwK<. P2R!PSP>x[w'3\U DjpKVݣU_o^͟9&9Oh)iӻӹ*8$J =iwpHy 2!wҴy)D=rEZO-KhLJrƂ/| "`L[%J)?m!$Rdʮ^A͖w߈HPxf*% EcsumR\NϢZ_  =Mv(b܋YLknUs~|1kW*ɱ boGJH p!BXTrmؽ#6؉tP@f;|sjrjq--L.@?fFÍ]~vgnMQg3`:!,) DZk3)% 9gOP@ܥ0b]-B +X_~yAO!d5*5xA)OP)rqO hmdry:^ޔ0װry$tY),gHE!Kn t/f=YEOD0s4s:kIYqbJy/mQ8ikrC;.6Y'DR6Yy$P4̀R bRRbR%=O/8"!DwRƙKzrhŰx3u=ՎJrM tlb:D; 9nTjHzɮr7xL# ?-*<:hǡiS6X&I_83SLf/oà1x? ɸhmwIyz.,ٺ?#Js{Km&Khwԃu7N Jq.~d9k|HZߨY%NfLlЭ0Rsg,vrlT*Ukew$vL'|[OOoϿfejɀ~~߫ʿ5v}ufZtq+o 4ЮxIG m~=xM[n(w6s]B11|VoMI",Ih]! `T>`[$t/sf 37^ 9otB)6mA`V!?e۩Y(0:3(BzațSZM^B#p{kjajEש-)맧$Ul4񿙾]NS% d;EFz|Sg$([$6EslcrӔK'_fvKQ*7\ڔ º~/_G9 b QtmE8MBG̞4~p\:`6,Ԟ۝5 $]"̭ͩ홴yv˿pD$',X쒆 ʸa}꽺kGkX:dF;t0YmI/l41;ȇT%I#YuuN D,pT/(vPH~dor0pq͉u (5o5Y_ciɝX|Op2`u\w7TaNT)4m9-"jt/å?emUÇhնK\CmBG5g#ϑ|3Q$KFzھ9ޢ|kXݗF#D@k͞Bd>)&C46Ŝwm!n^-7AMHt\O.'$~{Ȉ<1;lW4Q}ffgwW;h${F;6!`gC%XVY>JHJ;JW+EEQtagvzIq/op׉5c*F(R491/z*xV dp|; anTL-<ƁHKd.~e#F]j1d%5#ɖ(1K"-#@/.Ν|TǷm9l~&1ܶtʢmO&jc&d5d܂LXFv>mбvDR?]Ko"FT˟do=Jz*ª0\ݷx9bg#{E0'+LxpXO0dx""PzvZi&u0'txͅ^Z]-c*"h4w84Ț d3 ^y,=DZJfy:mdH#, ZNڝ97[ 4a¡gXDL>FPDgA s;9;jboXl]p RpuoNju_ܭ*(k J *f7H]fvWAG#DUMC,/;RĦ֬&hiܥoX]Uַ݀0k*`Xb4ܟOf zznC>"HqjHZR.7!&[;izg(d4 BAKs$DXb%B k*h>!)Y (t"-bt @~ۃ}4f0dH{ͨpYyj^|l {,R-O3^+nPHO*+> Gf5hװtu-3 atj)o+\ߴT0]1.npd`*5#x56'5&*m-* 0)Td&/bZ][Zr> QnJp*mQy&u|Aa7XK8u ׻r6D m,Ν¾'~|6D8qf0!/ x>T BIuwfL53ȿ j PŻ3qEإ`/`YDb,FnmȌ\9JkuT胴cǬ#ȧ셁H2:УyEӣΈW/H> "ǟeXAK h$}#zjJqBw\8 jT i!׼x NI30}~e}{2 R0A ILe irEU~bzN5p뱜TtgcȱᖚII5@#B{E^aEiԗJ:c/\?$ձatpЇ@݈ea{2q;.yϬX%w[&2tEٜtGtь:ʬHX4 ??c)K*{\b ƆXJ=Oʑ*ƊiG*pu.oB13mrHf>jWغ{񏺾i|2:#x:f#] rȒ]䴗7?2/Jѯўt0*gFL\;)\Z-27 *Ri[x{1׽U'$2TȢCt?MA UƪVbԁ5i@d1+|D>vh5n0XGsnʜĿjaK&-dz~a7ec\xd1wE͒bӲl}z= O)I,cG0qp9siy0kZ i!O;Ri3P4d.M1mk֠}%"`w#4=ҧb*p{ڬ4piFG`wxk+T^܌qOeuZn:ZIʑ6Ϥp::Q4Zk82 0};yTuC)PyShTũ$87;2VG5U1[W˨p[Җ2{O*xWGh&g L7): ĨSiP;fZVGu-UAA ɼ)M?sU>r_z8YdaDV 2&q)KK;9kkc?lNj4T vcvmۋiVT{ځY }&SJT0ԈW]^hȢ[_^HpqNj&fpE-h(U>+LNKPI4߇b ۇۏCWv7׺P&_Y%53P{E <8 #F} zGQ3SqFb#}pۮ=]bJv cK^E`?5؟ O̭wK}0%y{R=SV^$F bxF@?A35o>0 N4\WIIzy$[Ӏ/9P NO(x(=zDh+ܪC/VqB}k補1M踙e zNޑk.B(r}:<=x(o rL2"O&=js%?+ZJ@6sƁN:W4 'h-D+/uoS]jr9с]K8fop@aӒ2սu ta9+^RCv4dRQB9Birʁ[3C]JZmId32/%teIIg& {椥 kI>KJl.(r^Vo鱪_LsIiGJڸ?NB"DR*i9E05bDߒԺsm*.YPL1ӹ- x^߿(6t궽lBk07-cn $G2{\2K^1l 6nLc_eXϣ5mg{d?5:G 8ȍIꯆ#Lu&hj,ݡ'ՇLH݉x`GAAqb<`s\a'Ǫ'*{+*ljS7W;n%ӷMתv8£mD$fvm%FfA!5sPW^+5^IJALYWI1q=Ukj<8?Q?ϿN G|EGݠ\m^Ks8ARL9d*&BS#Ako^/<X^ԪP17l!,i`A 9 "`铅 Y*2Z wmtDi# >ݍܴC{{h#",6;\IډV8Ld2|LWs6i7ec<@x"~d/ɓ!Na5z4>W.` Yfфgـ\zIeQ-`-n=mbZp) >1^" 奤Q--ԑf_{"pqxr6>`nJ&lNi z{YSw9q*O_x! Q(z탍>T_QFj#3>|>KMNؿ#m?{Hq+qК2[-{gz]JEK!^NuNc }JeQpnysӖR3ƻcb9r2+MRePՅ U"zט,9`]]FUW (I 1A 5S_V65"QcN13? rGgA6~uX_CU)Y_PpeuI@x Р[G{P A,M>8ܣ/07G/ 5u9;ː[^IzA$cqGdZ}h#FRR~'g!P:& 8𸊇9g&sSݷ3H!r?@G/WE2qNǒ3[ʟsrn4m\bGQkl3D#$羁(|CaVqf#/ןB*?X"<]`'7vXࢉ{ lwu7'5pY̬``4N?b느w~PU8 Yn{x"q={?Ha!mKĩ =ϨszCO+_Ta8}3o+~ i4T^@zuʮrA1 {jaorֹoI3dS **,=uI}[s3$t)ei ]]XƷqs>jw VVY@7k:5OOB N[wIE6P|֟|1p>OhPK1)#Ҟv3ð>KyyE*Aq;0LLh6SJ+!`?g [ 'l pv[p̀p.%`3NI+:e1VT 6ٚ ?~ʹ87)]a@Duu2WdI@, ^ f`]ǕQ$FF&6Q,+6]smF=]!1Fle>ـ3-^(5RU&hm=hg]z$"ϋνAfPg %ǷzCL?`d [2TYaGgrUKЩG* 4ǃLS ,o\Hni>ƁIDR3nkfE%kAn.qf2G24NKє{ྫuh!S.kQ xk4k)*sQc,aɽ)ņX^D  ~]gecfen6p>ASIx1zL_F xsTVn/I4q8ާ'?.HP;,c3y?mrnBw a!I{rIXoɧ>q:y3y@.'&iBrdvnCW'%Vb3|g7;aTmj H4XG ɏ!+pm̉Z ,p.VAA,kV3eFҟu,QQ?@ yՉDӪ+ȹ+/yOYoFߥŮS+/8C/#N9]mⲈ>>UT`ny +g0z/ 6[۞HwZ|#}Ue›nE%xET̆ ^%D[?c=?sS$B3~LkW*9` XĴ]z@~1+F&L@0aXTd/l0k9!?SDZۧRkKˬ KJPUq(a.i4hGpT'*[v9e`*NzC ;X|de߁cOheSZ;wˑJJm FWW8*DBPۗdzOGr:'d8>`\e708BO#)TR҉ěB LVE+0od$DLD^xxͱV]Q Ң VչU%Y"?y $x/(9tg0RyBFIzzk'ڇJ{Q7녆mE10/f;5U噃Jw +ᴢab33 >~9.D}-(IfM?7܅%堛Aw?oxeW.YPx=66wB_44M\$J=]̝f "zX;vdg}rXNTގ)a`5ph$WzjSieOU,W,f8sAσsxDˆaF}F{cfxOreDŽ-i:b V1IZGyb_F?7L93`c;*' Yo0w} o4;R+@+GBH\^ pωC jCV(7+=L^:sA0 퀊 j\HU3tp"TU-K 6ю?fg /4 )᪺3..S)HGhL}<7X36(gN˛H.t +]s4} #ۢ.@'j١$I|j~ghdpG&7aM̃,EXg_?Uji) #S@8ʮ ] Q:-cuٌ(2 fT WJqQv-.JOܔY6sz"ae0鸴5,#j6$m׳EٳK[z~?4kKϓ^*N ցxXiz~@b“c Xeć;4x1pҞS"M͉և/ O)Nx_ʿx;QdL92+bLe/%Wf+ē^"h72f֧ ~N"' ~M&uo8 b%l(af[ءV=w3/bttF$^[~U\,D?+ j춴^jhM+KӝNU>obd=4uz_эD37A?*=.Z,~Ka=x8'\nߤ8wtmxprHw}͌Xp.5#"#q/gBJqrw I-yYG2юt5>u&]3g&¡*%8dƄ'W/D(OkO* SjAd e b8nԬWmMʌa78?z9;VkK٨zTpC!wmTm[QuC%(*0Ht#Ι5LuycnѹJḀbxxMԉaeYC:Xl_~)uQ xUF]h D4ps! Clz.?!IZɓFv yŷΛk6^KzFHGDOCx?kT?@tnjVFN1WxH&HR܋ *ES`֖E@͍̀?:S<[^+j z'ta0!'L$<7iʤm2W`CD{zijU"F<r  ?+$Y6雞p_c]28XnJQ}n+ ž`7J^Ynq&(cGN,L3awx8@f#4%T Afs 59%l_ObÙM4F %EAl2OY5S\n.%OUbr?%/^E ˗8JoKrxH#hhwӧq4ޏ,=W!K;fNVꂁ^'|қQSn .m%L ;֩|\Rx]NѪ>&s^.i<|m0gpaqJqT|L {BŅ,CPyt@iBMx4s%gjA!Ʊ8g3aA0ߢw~x+ԩ/2}+ew7 )Ed+,L9[[QKC|!.9H]h"݂.}_GYGU B$fK%H-N؀M5z{&5rgl=Cس9ܙ](Khc5O ;7wO\GY'O8H7Vn _ o>BV"> ]w0v-Jࡁ!#Ʊ(_[r6 |>iU\ }1?/ep)v~O* E Gx]لԴJ%:yPI'<vDf{z:NKF+$cD̠tfu (օ.1Ӆ[K4B 52=lYv鈾d棩ݠzFVʬLߕVAc$%~" }=zF?&frmC&k a'un Jg|EO8tGUHhg0|/+-Tt|?f ) X.r>4DL!˨84# wDuUWuȨݴ;h&[w7s>G_Γ0#(%29y8m:B8hZ(rck촿$v2Lѯg^QjA @b4$εm}OO B 8Hk1fW7e},i:mw*]E@΁ߎ/8TRr 4R>*&͑z?(1XTp-AT;"Xu!oPC>*Ժy ,= kv%{xRoB)ig#1O|?%9ׂoڦ, kHm\Yn,n 49&A7tvY}C 2)qf:yT6MڣΔӃ4P9j$! 㿳c}Bӡ:ևWZː>TbjLIR0a1Xs{2AƘ ˼H&X.Lk\" 2sn %zQHdr{hf++T٤g#H"+0(~Ʃ))u 4Ay]<2K64qq' #';WiN}筥!  IO6XQxZJO [zVfG>&:47N>'L—liU 姩⢘&[q5hmٿ UA鷽tpQ W9J6O))0/#d?tup1`ᅒ0Hz,N6 {i.y)!ύV^A7~l{Lr|a;Puوq~iӯwCɝq8u?=68M ~WavE7ME3KiG+Y2Ep4 [ayj]dg^_34HS&pG F vCh>-+ 8oxB|B\7ʷUujN~A߮ e$s%t%8`[m.4$5܆ lI19?N 䞃A"cUe-?%'G['mV1rǶ0ץ:mMws¶`.{S.3[K&?CͅLN?4MLPR(40!3eIoڦpV]Gۢr$]wR !^x,yJLϼ#mlZFW+B*#F4JU~$cP.yeE&21_Y2Fi6,g܌0Mjo|UHɝ9khT12$ \"42 Jxw+;1s "%rZ2<|u>XvnHIu`La҆2>ui\HϜS 4@]aߐ#2+HVC iB{;{n0Kzs<<g3"K({" mPcl\ he[WzٸtEH Z֬دgoIpvGc>ymㅌ,3.vHǦ'zt7΢k-q RKU]kfg`IL" rK>/7weSV@TZs^61qOEƅsXm9(0y-]X 1Z7iˢsbi6W{P]vb| f)Q/tիIb,Ԟ] I9- !.Pۚ x5KK}|Y< 2P Rm ْa6yՀYfFX]lڅo}eӻI?-Ў,s A/*Qnw0A(JeҰq4+b6X0$QJh]s]dLϦD) *gQXKw*9Ѷ{qQF6:$:dsɑN+xƴeW ͨ<4& kGP-ġ7jk*-ߕ`u֨.Fza+o.Z   oDj=׎HЙF$qK=fhW > ߗ8sR]T !bv4pxSkzfߊbPiK0\Ѓ<@W}UFD؟V7{|eL.w 82YZ?tI{t{0l#Wx<@%޹4~ǀ+7Q-6Dw%T!@J,ls7 ,.on&9(xQMuKXnnYyVdkC5YB0;=n0yifs\dl+[A45]-d&LqQz#]1x@L"L8?…HGTP1 ̃5DqMVDxN?]P介`Ivb-uғ wU筕7d|BasII&T僷58:tf/WZ&+~<>Փ'狝\Gqf4wU +MWhO RfyH"bX"?]{'C^v1V,#8ͺ|%iafCzDNy*E[w{̦,Qv~/̤-wu6I>W;'urcs+30X!bN]% +t/!a, ԟ %Ve$i -{,,*H Ŋ*^:XMU2޷s1_,s7 :|2H9!Вi]>ND ]̛hiCV9bhHoA 5_WDDn)st0yQ &Apt$.EeZTOHsHIb_i 8UG3k\=X/ Da-h5d}\*01ԫrҶsTHR'gKzU&ټDg2L(R;vvB 'siAoq녯VP!ʃQˀȱQ2AԘmδ;Gd@ӍS&ײooc"Ϩ XNM' I~I]-=VU"Yps4͚:G"~E=VxS7=a Sj$%,RAB>:8AIY'-^L^h)}FG\}e54s63$6lVKIx=K5-dx~GQ4QTe m,20z+Kֳeؚ2HH52/U7n"^Cyo0^1fV>][ɦ }7Ōղtت^'Fo9\573ŭ AS# +q?S:3614 (kϋp,PƸ]--ա\7A=VЇiZ@b.iiJ")]6_E8ż]0 z4$fc fu"Un|~GJSR >@;NAtb꙳'ltNDtK9TaDbp3d @O$R8M'%?ҥ,5=L)UFH(MDolyoQ:3V{r8K$"jW"Hvc9:#څPzTJU.ʾF^5[G<2=,o*/lR(s]2;£ A~gm׶ W2%xm6hkyftM?wوke@1WW=\)7F,oU У񣹁VZKO`ym<8Y6ڑ oldcMg~xu`^*_5Q-F󚢡7MbU^<‹U魊)s: ݔp8ny%w}Wox´͠y4(&ϺdNHꊖblK`R|٭5!ͶFc, Fo_@y.u7a׋ąCDP^q>=;l 䲗8OX⯔`ka z4˕BM$-8Jbb誅EW72͋XA7#xabwL3d\,oW6!@pr=M/='Ȑ3plmSjuDAV(aZ7U[K:lS"x!J6x8 \}NB+I9Z:HW`b <}^+^qR Ѓ[ 2B=sވoNʤz,En9o-^IOz_}>%i8j((>F|XBJcLX_7] ȃ^MJƈk\(Ů{TҝpjW|p.So"īnv"?gS@-j1nn(-UQ$}7ƹaKJ&1`njɘku?xHAw m{$i# zk?3JiAkEϓ=#U7iz3Ű444&5>5feFw26^].v>51dlW/A`aLSI;V-J rGWiً{0lSyC@BK,.#&90_)ɯCL᩶lC/Q*Qw6c-%l`j ̞OmgcО+HxS-n=h"#\x&3U&6nXtqRx]tSnÅUZxǴoi 7SI0ѲwzvV(ح :~G֠yK[ ]O{q226y{8Jnh,IRv~@d)LKnˁ92'%>d>fV,̸ע:\Dzl,p)Ϟ!y:5XQ!r~;>W 5*c r|6ރ5 a HԭP Z%wq=xE pc5Jě̶K:wRnǶ%\\&Iux<]KNvBhl̍Gw?i."#]w+9cf`m.Bfq鈧Ѿj{ q9V]^-"q1JR R݋Kl 7y  a ( S& tYmoHr d̰9IW jknj\oe:=-GQm,҃wtTEF T# ^-TSX, W8(+y Q?8Lf4SGf>fu5YO+Z Mu~!t_ǩjoi,9}!%SEŚnٓ [BVj3/<]|xMHxLE~P>hvYz^6VbNت.Dp-i ]m 7f-e݇K[L69 !XHAլD FDLt-iy5 AMJFUSI"ߊ򲱶&\M٘#wZO6 SX%;aGq_Xseg<\CubsM|va(Пfڐ-؜?47/Q3 bEse1ᳮt4`ם~r &RS4sF^T]{UK\x0`iIkh"_Uz rӼpݖs`bK"iP<4uX P}g-~ajAb!)%ZɉDlh.;PESxRM@q &weJ-]]ɟw|cCC ɾ[]9.9ȩ:RbY}³ ;H@RG$Uh57|e;O+= B|'Ɠ^fk>w1Q|!pwÀ ]0љs-_Q88={#&䠾k}LZykNsi&O|)IY Ғ $Cp,p;9f=jB6{)kѻέc+߅3ab* gVs $\VTOh^!,'>lR|{dB8joY? ?(XMDp.$QdWu=חҜ7: n%)j%t1ot@Ӕtx#*M$YMנ7T* c4dDž"+5Vcx+1fGo\G>V֐豝Z}A@p.⸀?6ׅo(I_K.vxͱ[K4mf9ZL6H}a*=rIZGk>(K;y%'qc5p[[ߧU*ʴ*qYQEB$s>7ѹrj5k6eq_m*RDsvm bu~!+ӴZFtp b.awS+5 u71`dܴNX7)DŽA4oL0'tpU &UJ̅&S|''ή\^u7rrܟ~GT(ۿC})KUw3eG*auxovx/^xjƍgm2 :UQ^Uuu؅0!su㮲j_.Dkyv 6uMGm?,8(|V 1]n0Imw%&ʢUK0@yѱ$9l}9A'ߐׇ¸wqc׭B{ mFIrtrYe3u.#_ij7wߑ*.7JsG=ǭ78-(cd"2S C){-?OWt2ez T5OR fKgfae]4[γ&+Q\׻kŧ;?A: qrZhzgq_xGWP;Ґhق 'yNly9d=t>ldE&k1`շFJ أcD˅L3HՕG?UDe(~%]pP!luoǎ(&_fA0/YXONe9?чIF$'!W޸0("Q1$mDSq}"cAC'^[[ 7$2mr!n (KնUS5Y,LxNc("qՈm)n@q*l]'gpnxs}ޘd0ʽcUd8гEMhMkG֡ 撉vBO[|i $ͨy7G툁J|⛡Wr y Q+'?Gi؃0H\+fY=|OUau5aXz||RYrcVUq̀#g@I[i0PdeoSߦa$7-{޳.<ʟ[R!,y`>46n&rH@:ƱE\#C2DŐUÎʥȿf3fm hƾ\q CzYp>g ON%z&=5}@ӛo[dU١dnok[ўmrh"ЙfҠ}@l=`M[h_E ȧ`lmXf5RX!1σcQuюGG8rfXrbDXȺX3}k7 J=ds ]:Ta<+^TҞC@\Q5_yTr0DJ.GOZcT-@=SnGyq<=YM11Q>hPSIu&G0_HFME 0^w}4?ځ||R)nMضf>2,,VҺPǎcWMT?b-!2U<UMk'%3UB5ÝxקpA͹敛l ;݆ܠA[=l~%bVjg[TKSH zj)%̈h-K%;0#|clv`edI17T,ֺ8` 7ΩZE5l&k>cmoaFv>D}ΞF16YfSN n¥zZy2 u?˖VWU@Χ Er0 6f,JX쑲GF/Z~DKqm[@L:26(5D6P!U]DXrQ"+bN:ob\eI-^0v<ۃ{ƢTY56O%~o%pR7CL$Rq%3؀s:T%],!~fW AI2g}ȸ֙!T'4"UOv+w;UF%?ǡ$GB ȪaB,R$ח'H[mM߫ҽK$ZpfBi/* pHSGͪsrOb}g*oo C`:$vF \-T "j_ /B%v<RZwR =};} !]kCӒXC$?a#j]*JƜcJJk4Ҷ$b?\ ;+#\F=CJHK" І'"ռ23[y v(<ЭS+607f}08jLVU Tּ螆; ؤ%u̎۠B_)x5nWӉAs[}/ {UNЗm_ҁmv35ko_ 3&T|j8Ӄ&ÖKEYΚŬS6Ur_`sSΞ(;d%Ēzur2ҐĪ[?Q>ao۾޾W9Eb^c$+%ܒ}d#\FlVگSih]zld־7AvŰ 2S0HV9u6,jvuHDH YH~:5&w1꯲ K̑EnqS q *~H)S"jZ@FogCaŦrn;ۅ]OivG]W ;;=qM~ܲx @U KzϻjEhɗMI[]dn X=0t@vɁ7%r=` ); T?CX5WKzϧ Z0CEfMDN_ƊJ^$K6*qLt(ktLoJx _ S$6_ITwx--kWMg(vmP'$|& Q a^rj Q{6b/~,!8S9>N8#a(5xue7~M5 OOIVoaWҊ[>slz^nGlM&B/󕳡ikbt$.|:SìPU&OȬ;SZI3p̷RLUXJeEw1..2Mf WP o uhxRm3j|*,IE,qtIHsPLJp-JL^/?4E#>hrp|ңzf!F捞>nz>[M [[J2hJjNk at.ϊ#*NB[=+0C8,+Y"L-SLUMZx(B S`*><`U;ZLbP/u4_,*ܚ$% 1F-8K#Ob;~nM0ǝRazrEʵZ/&vʹh)I zf?ږO )47)JuEۂ D+o耋^p]*4gK w? Wa}\dg+62Sח?lhΏօjM"z UYuv۷8k*9Ύ>z㔷D@jxeI7$k\יN9GՒjOO%#pJp/cw#X.#u5-Q7ºL[oǠ924DI@_KI_5J F>1pc}0s*saJ\te/H ¡ZJJױx *8Cފ;`DpwJ mn+wI+u‹`&^z'v4&^in4_Gcy@O)zvw ls'nqI{'w!ur0;f"`|#ߎ[0?aVm դc?QE*"h͔;t-aYѢM#qM#pa1 *6Y?fFJ(YʡWȦWxVO- [U43 ř{VyRW^eBZZ6a W@Ή~]?[iXi HqyRH z0ʞB4TF2c UD{ bvg I/l5;E:q/b+(eQ5֛ 0%No@{+_;Tt'Ç5Z1wCN;_Lƛ4*0}yV[&X}Dl:,\:F*4M#E4-wo|+y ĺUfc2N9U&~>-a 2f稈Ԁ!ZXvt%g" 5r/OR.}2(S$o$.dUH?1/B4lV!s׊V MV͟ XBQBlv؏*~5.s)P^~wަ 6B")5K1@(oftk~̨^/^(k3|3U!pZ< U/Ą_3>G_܁=;"E]|A HKBMSw )PyC iKptW'j_KZ2-'EkinYjZ`0Ewd5$5xw#nr͚KXMrz5Dt;b(H\\p&{$H&uoslGO$yp"nUæ;(ߗ3RXju(}%k~&}<{Z/BOScS:bA\ >M:`;;1}HWWH&:*sF s4VsphŶ|t0: 6-'sӏg#@VX$3 *mp"6t` VlӿL> 3+=ѣ]kW"~#GuH:<4PdX&5FfԍRɬiAa\!ڭhz}܍I_4-dEʶϞ")1ER+Q aoHyoK s_t[;E"Zh=bI5j+Ǚ=#I=F@̑&]}Q ygcX;M! Й5FoXp Np'wc\,%O`YJK*f,?(MPlm݆2:X7 gu2`t9ҋ#{RmW6x%|0!3HE5Jzkƌ EKRºmIz8>n#sŨB]n %<$T_?S'9{nt%½x=a!6y 4sA +7;c.ƻF S/slVE*#9] @1WK5;9~TmjQyeI$,C9×ert ]Gxu*KUPH _\%Z6'Ѿ%YRGKmE r |:?KW4z{rcV([w}(5}$i+|U#0MjvA?H,n n"ˊ9 j &d00aecHҟcMc9P'Dh~6 l.5؜Ue:ذ?[?qSR\h -B9Rz _ݼX4#gBЁHjOX<\b,,1w Jd]){( =77<> d -CVD77w-VUHSTbV?|LlfV\53#ȥ0,i6o/B`ͶbU[+a(C@T6&F/ƉrGY9!;>$`䜃`Ѡ;ɪwM*3_uM_h0}m%L֭O[qCu(}xpRDMzUwiۀE3F+OD*v(]8.vx+i=0&-\ Ά#2?>X tK'ߜTR2`bHO_QBfe{|g11sG$C>r"A+%į1ƺ:('å@φ<4&"p qxG )<]l~WD#Nz4K N:1jkn_<0keBbfpŹ6TJ+ }?ٟ RofreRokOljabC#P/zH#X1& Pn_ƉGybFoX|@1;[[g)bǏ>o4X9_ I_x}hu\SԠH|2] ?>BI9Z@с:ۍWjT1Oh)i.6aޏa2Ǚj  *} t;5ͰVՇ&_ [$IW5.#Y~s q)^S3ޮw"q{ѾϾR˲ukR"< 7kK:ꯑ"Y~aUQXbKIC~{CgF~ b$1{7x沺-#>, B] xwFjSj _h{N "'/yFK)F ZӢ!Úڧj>H<5ϟֱ{-lp4[ɶ""I@ / )'ƔiFvܔ| vkxM*GO zp(;#^|.4}-# ֫E>_m9=V.uo #x+ʱ^Tԩ"; S+Q&X\Raޛ/K* A!4O_>L :WJ w@-}iҲ2yDV7$$ȑC߂N Œ2K'ݕGPj?+1+DT/}*H몺DuKQ3mױ9`<6Ǘ@Ͳ[q@pk=gW)ʠD U|.]q[^i]8OܰBV#R=lC7כ-Ϻf99(h|&r#J/^'L^E{;ۺJK~+})[c(C9+ml$Omץ{Y5hp P>qEZ @"yG8=Op1ޯ(-ʶ\ xV,~nj>6zregBJ t2 @{ٰK8X^=($az4{h?D8ewjò-e$0 L]k:jz0X7 ROC,iQǡ!?cJ&*P> wuL=b'Cwu3sq)XAQ0]|cƺuzfuyj"v /t0@&=2qq1\#luqWCrJ5'YRn h琥.XԌS'=j_`H=v Pm#8[-@ND0VI!]+L?ϭR;R窼2bƀ7\W"#(YЉtM/Qͳn[&N;i4t:+K,bV,Jd[F48*W8sd!:Յor P[վDwSs(EtPWMcz}w(iJn򚥤 C-mNb2)#i T&D u (ڂ8q~",_"BPpy20\ $7l F~3pP! kmB"`XעexvdK=yVv·j(D3K=@#{ѶJ8|hLӅۏ, LS.-,Yaqyd=OM\;SK;;жXA?߇&"`dR){Mx,D=Rc3Bz}I.*l%r|5뒍h;`\VGN:]Tl}Ę{[n2|jbS3f2󕹔H!Q4e/JZM 0޹tiS&5tzL%$x䕀nUF-np*5Z 7R'y#c<LoBz]|$KRZF~:|_7}`ҒG<z{:M|(^~m8 s6]ϕgvw4dfx(!kd ]V¦] |[=j[|5hmMa-ր#N**jg%rY q bJOM˺d[5A0koTjG8JvA :W$1jS5\F$E[p 6<`4A QғFu Cخe$63 F ; 0GaȉgGI..6w0h $=izmLT&3VTO5̤YS >B-n&)ËġzAH2@f=+әcݗ0w&1z#pQ!4Ǚ9^yA쵸<(LJ'UDvOʌ\`pQx4&nPuzB_:˒d+ځ <ߪbs >G?HбQG r{ fkCuKwsm,7 of+TO̓_r4q_o :`Od$dj mM./(a?Nj{5Ċ[s-zriSޥɕyh(7Y.#߀h9rGT;l읟"8LV( FCv$= "aH}m#A]N_[g`a ՇIDc׿)|gnQغ'&gIƍ6PZ\_ՂNM_widw#^Z€ʣ~mF eHĒ .Ay}U^n*X{*C`Sn.bp p57 Qf]b]./{:@VR]jZc@zUYf9KnFPiN !uW .8 qSPky?M`B"*\O P.yYE&:.^uJRJ]^b6z;7W*c7]Dх_eQ}4 5`s5[hRac GڕIL0*jlN{scv׫kS`up ~16{8rԴ?5!gGEH@˄tܦŖ_Cj(E`n0uwu77 .zMsJU2Lh$ EER@ZCT:uUMZ)b剫s;jSTT1y: t>Y"/'Y^oeKUV3'> ^w8E^Zfq jU+7Y(tE b֬E B:t؎&@29!¢`k VO8lTբIdP.(bx פM hܩbHzVy__ mDk@ۯ>FdDt 'P|Ԣr\ƆZҫɋkgpq#AFb-Cd,y&D" x|bS4|*!󿧞mTG([oQ~Nt9/쮘w~ p>L8syC")0T~F*2 5P>n]S.- &Dbӷ֙խaҺL1WБ^aY5lDg#Vu*a>ٯKeFGB W`+݀XE?kﺤgBA{Jmiɀlx>u WHog2vEծ9iձqO]lm<[H*'2r6CZ`XaF~.j&;s'a?y-%uc^腢2vn)r$pdoH|6[L.+wkJ S@D IOAT 2&4CU2+R>nC8Oef 39~[kѤ.N7@l`אHݖgv8G8 %.' }Z+SvPZń7 2#"~,i8?V|v2<5pԢz"O:,L_~D1_X&+L!*L\Z/An|!\H_3Odm!cv!/EVrDuYy.};^ꘗs~2Cu>?nZGha$¹E 6lrMrJWk'kʯ0)\(y a\Vt9JilD6r!F-dqK9̧jf:2r Rӝr&],S*|Ģ(ABYxPD=CMd9-"Q<;Ld (ڄUl/%Reo2%=g@iKœ€|C3(10j4l9v5dHCbXu&Q.f B'L\ۈ7T5k6ZM,I#GԵWuz+)ҥ|4JJwoxFiOũ !h<r6ʑ(خ ZG~ĨtPE}:j_T|e?I(=BtdD'tPMKy& + t%UzѰ%3qrB} S\58&an0˘VMigŰaTU~>ⅈ6"?&EoگA)Ib4CY]GJn1״Jb T>C")O|u7ue.]#OʁNkz'Ӣ৹~BlV^h"" gp?JS8w?ոQGZf?ݰ\ pγH?d8ޘ_bW/kxy&ԛQY"8_ߑ}i N!R `Q(+DQ:l}4ά,d;[rZX [DJuΗvIhhhKHK JSZYnIv|8\H rF#iX$Zr)sMt7T- O_zURz[)hTaT^x..Nu=Ӿ3H>'UG̟HbU\Z5oԩCKRO@;>lR@߾0 Yڝpc%F9=C%cWbh"nXܖx'2YkeKΠ!)C=Q tVXW>\':|z0Ͳ s$g 1LӏȧF'u]E/Y8MW+<30uk"+Ruoe&?{SG:!z;.Muh}LhaטX&^\e[L2HnjmVvgFdchV1$HuvKztx44]6PىYʯY׾9.@GG;U dI|W%I5LF3T$x-a³aU/Yi ^rKT@s ,}xh"gőb;󙞫LYo@}FMNy"X$Em틴fր=i_>n]t=LS\FrAdzWiJE|q<:\2TGQFKh+9qjk8Vz8G!.br>pv8?W 9-|QSe4Ú@s6%qh;]Ot~1zei^tHgmk_@#>]Gmdz6nQG0)SN$z,U1x }x̾J4pL'v#P{ ՚F*$ oiX6c۸iŏ׸>YP ,/BW{~"Zh :H% [+X-:tA.Q^C\pnNOOƷ mi磆1ʨMR^o SeR^2_Q $sr9%(x >@٭ZfF,4Za"aRt.} d LBM^cfD[8 vv$ZO.z5USJON >}=ට쾎qT-)̟/6 ;wLo:.!/Uu]m抡o"\@ujKzc}J_͏ҙro7rSF5K)n6|Gop_iYZ˅ ӥc*$HYˁ [i Xrxl$ VsmGJ33 Apf9YIWd~DaLy:tXqf8?ƒ)=$GiyWWcHAV%hӰ$k4?_ƃʏte"8 70OYf'H9y`]C^抻&9La,Nf)s~0'wxH'F! }cvI1C18 O2=xc U/1K%[`4X'(8eKvrqMQYWT]f2+1!EW;e(MAP6; IBǠ_DAke/6qb}lG);e\L)@9EY!ij#_$oCzhZe#).3{?L/ESHeBj .)fTn7 T:k Zv - P h+?plKJSXIx]PDbhpLT\Wv츠M#C06) +^!mOi /lIQ"LF l"eTYxiBcdQlX |®?Xak[2ή~Dms# fʭ) ~4U&r!OD; ֠V@8 ,_jG <`N ,CۿȮ^\aŪ~C :-b ALlPnY L3s;}&0.q3>hϊF 1Niw5CxeQ%  dDSяV,;*ިtp9˪c^q)Iyyo,eHZ W}94V܊귆yyi.[I8{U{e:xkǫk{}[d/I*}sMp2=m3F#׈/f$ß%:ٱz|*[1Q;Ed#zϑK[x,W6z  ?hzRa!CGѝ6LOZTxح`Po 40;y`JhuxȦ e1WݨnTJ~>9\v 6)58|,ڗrKaφ,[¦^ɷ-\;7@0|S*?*?OHJOe\۴7QuB`+G 8^lAf R0 ʺ+1DK<'q6{u͂yFEf`ƍњh?s`b;+Hu qfTjN琼"uRo[c|OjM?€|:|2AA# `Ӭ>a{"$+Ouk\tfA\%#M \gÉ%{BJ\\' [qgec1+\hjNG 6_Վ:Hn^X}Kgqvyyz^pjD\+1߶DQ-f8ȝP,r8_3 (#Үg-[F_A+<ٸ \yEـ*M$T "/>%.w0bCƒϬ TMud!1ƽDa]e\[(Gܭσ-;Qk`DI)U&sy54<63knvu[r:$"FO1F&o /E O>%1N]~ZjᅒPi,] |z6N:8!밡@U1WנӔ&c|>} CYLSA,.L=nW-&)gqyڲ Ns6;wEvJVZu\Ө1Rr{ek&ʓ,}AgEև)">7+e7k2^16PBb `1xTU;gX[ V0jq:_].6bF_%E6 tBQ+FG3ʧJqIT֬VNvw3xRa0+K.4 wA3|$ 潇wD j85= WnOeoSG %ǫOzNdqrk]hSƅp-6UQ`t#@1A⓺jz=BNx1W(v{btbN;^@#iEm@!3E8P7Tj;R0܂H@T, !֘n+Hw^}`,n^V2PӖV9ҭD `dQZ[E.A'r.ʎ˜.,p0ĥxg!Gkk8@0QjVqw񜩙kj-'}w=NO8 p0l 13@\_x6BO nϕa1nHnR2Bdޜ3f'>u~ܵ5F bc3I+(R˔ew+噸<Б=-l(c0T&):;c,0j RO5D&De8 oEZRE;`zYe.qلȸ$EX)bX1qhUcHOIpao4XWC `V/9y9P(ُ%рB(nPeF܏j0"˾F;IxL -Ȣ lL``w/\l" p}g[z2 ea1U>D\Z.vNnvطM{s䎕AGғ_GT/"&(TBOo  mZ^G-!^u6&Z+oKhٻeLj=y(\ƮCqJ:,V oqA֪w(ۛ gL-md,Mu|/gijвU˜T^Ln"Mkgnh( l~e kWy';uU3f(s2<:7<&F2ׯb[6lO]xpdA~gfOȥ+>t8`]F^-?"?H ۊ} gŐsȆcn/s w(px{[LьU(wļmO)Z&AP xZ澕G_`ڧ_{8f+`~mIr0;G7 9FyN8?(zSBVn{Vb(m *`9-uN-;\?}O$}騀 Q e TТ@ =zsqz,Ap&3~ZҊo?#'SZy}Hs n-*Ƃ̾ Br .#'jkiS=F(.R?V.ʍ1{l>V~qWk jR}d\FW3& PfȾf1H5P|_U}yy`'xxJHhRޏ{5D;(ײ;XB)(l]MLbv4(&-L.fDaC0jD3@3{FoD4BIVZR|%Zݗюcʶ@QH^m"Z OM) )rM {^jc/%.0#/6hMv,ίLӼ-3P<5@աԳ]vpiHIse΄ 3fl!oӈς*vo_n dJ,:~MCb{hvK 7PFVbi7kkq +Wbh?nR/s(zC5 sLE[_iǾ:w63ٝE/]--xJv@txM~k)<*SPxybOeRMw- ?W4M+sk:,׀-! !I4^ޢ WUܭ {B-Ώ~|%Il # E/4nﹿm-Dz2Rhg[gO@dL/^:|x\oQ`6Z_hL-X)&gkզD,x5$>sSޑ m=S@ ]VN: = %zu99WL˃._eઝ%"%t T'4/lj,6xV y)^`OKH6fڜ?ǖ& FLUe>alX]:Bh.)` <'o MyH))w_<䙳5(MVA1Dćay!i qvy2:]L.&0ࠛ oĬrhz5{ n.w͑ JvgIb>)#ߡ7{Zvp|K'g>[lծipV8-=4`i8#UEw C}C]#T6x]=yG1TmƑIANCb~Ti4wK&YwkEZ4i|/jX^Sk. A ܰM"g(vj8AfQM>BS¦PBD|ߗ% aو]iWXC1o8؎7W Ctxd7\VL7%\Q>B<7ռ s(_H-=8}Bm1c6}ec0bw^Nؗ)pntv,j>$q%0)މ9W*k8ص5"xf"FR?8Z`Qڎbt2ow-x‰:| T (_KpӿK(*HZ}6Uks0:*T78({m~Q#U$}*9l7c #Xʻ b/ݒG&gL__|z5N~E6!N;X6P7AX̙xO?Or1`X"#u&IIBiͨU[0jEg}ÑZǒsS#=ݏusRܗ:TC]u' yכG%gCDRsw*PGTNnFgPFԑlܾ[t\L jSz7:tK)?n,X(PebQ* zSb/KI@q!؃ #ңd)Ml:Ls"z2xt]'0/@ЅPLJ\ 0tXgOw! fW17xQ!Ŭ]qjչ1wOj͊Fm]+ ~Lͷy둤0ao6ٰBAjCcx&0l JuݹH1eGxk־ޖ"S9NXGG76?PQeѐLק[ّMrˆveK)w>%^Gi F<_n9"WZ[tzeF_ݙn9ۏ&XXo0fcvM ^%1G~I)q䠐l\][$VEdm]t$l0glQ|Ld8Ax`Wٖ YҊUCf&t?1yP` L ]˃{F҇S+5l(H_o+Lovd踋hDG!wUz~M8^ᬋq!s!IL.Adj]3;8G/*vZXiDm#p,vB&2MR#Z+5{#PWf׆/5I,V0SϛCB]]%̞ x\*1)1UU71|EuYom־M*[:r]<`Ec[BԌQZlMؘh|z8~Om3̛R$ KF&mpzGv.g j ̞q~ebUDIYֱb%1 lcǖ6+ߍkj;ܦӲWb0 Dsu#L ' ܾM58<^}̉c6.V/'==zdOG(_r> eEZW"9g#^M|Z\r;]:H"^?mɯnǧ؃JSJ"Z$醹S?= OCmr٩907NQj 2!f?im-rdϷ5?J7:ak4Pσ+CҞ[MͩtIk c=tЛ1$lV?G5R  #J iܝq !iU WAYpY`UaRIm]|[;rܾ\!bedX-y}r=B׏"-,;#hh/EtzޮV!f,'zoP7o 6|4:~٧,^2)/4Ϲڞ!JNx‹d_—3.7)ұptb~7RHA+o^lɼ̩ӵXJC_\T0_F8ip#rZݜeC-XA:yD1BqlN*t 'tk[SxaT}pZ D`rDV7e{-<9pӒ~}$Ie;똛p-#pI7*^?QMRD9W%DN=U)e 9z:9FF@LJuK>$EwԚ _gK_K5(5'%h$UjAh>V0 5Tt H*wnQt!*^"a3S miL?GΰTzK," Y PYZrUCHo !ǤuZdl3: eD"rF72--kgOs>[:"Q-EU'Dm#2N;Xv#KyJAеؓw(h+\e ) Ս+\WOfY̗6T>wn^! V9F+qsaȝfֹrq/ pxcra@Lj\ހܱur”ASGzN'ts`C̹?f2?1W`DZjsq.X! iR3DJ`8r-֫3m }:FuwNL@NU1%@ks4o4Bz0q;q/lX['#c{d/]ye71]Ddc#2r>IAFewE+Y s]筵q(~Qn9 `SoF-ֻk9M5%(Ch>Fd9]?'--wom /Uu.5hZСi$-bD7hb߁6o+'3Zfn "AO`,EY헕+Ҁ/w=I^[觳J:U-4z8Ibc$XnXa(lJjOt)ߌ迎R4f1ȴo'R+)S>"oυ|kh_R㶯M r>,N%jJn@.чk, f>e D \erxrJfo= ʼnВ඙^q1mM x*iΟe+8PP_wa9ōjp\2@!<$̫OU(+D7v: } w,ԂÚbLm6 hANe7[¯As30KHCna O?y畦PR $y'q (YWt.(v;YлS5gfZ˔rV_'ػ4FUaϿs+%:SmYws=m뷼hq!Y-X(Cr4`9 2So1_15K+A,n? vB2c nyQosqb}c8'.[-,8R_. |i0~VuOyFׇJuקRBXj72Cz} kI~פF) 7ߎ8&ׁ6oc ߄ڞWܚx <eTHCPԓ,- +7,o.Okd)v iɿMoĴYQ5$[ꎿڭN}dҷU [mT0rJfب^[3'/ZGd2{kqu>gv:`!K+^]yjtFxEPoJOC<Niv7bZT1D6s4!כӂg* AL'Q{7KpDUvKKcm!GhFCOE5K'dB>kR|;ѩfr-p~>uxb? "ԘDE×MV\kri$8 OڰΗ!/a}MХtH\t|x~*e4BiaM⥤ kPnpOyuz\U1=;3gG$>b&aAOM(8In xsdUQ`4rEބn(AZ.%iU˄?9!{:s{{ _uJ$":[Sz7vJHeb+!0HW#lf{m"LEŪ(vGD,h/6 ę>+PTJ1`+S4 yGxd,lNy!VM7$wM|rFF^Ǽ_Jc9ԇ[ 8A,-iLJ.ZIQТa [é|J0 Sk-bH5DŽ%8~2ozsp'H0EᰰUE ʛ~_;+E"PEKA^,۟q+7J ҕc97VUwCN`#?xTȶFy3v'nvdޛq@~{\oJ]'^Z[@8v0yĸJ bQuA4ry a]+2lV.YtbV=w]ҳ, ,dYO6j V IDʚKahF|'3֏=tc-!7k@}W㏏494s CZ-.5\1Is+ȯM5h3wbM׷WԪ< PJyi}5Vkڂ1=(($ne1ʀ3yj[Iq\T3 &unFq ,@?T?RS 3=O)4H&í ?@,Be "MrL窗Jhܯ,Y :e ȑt$@Go7:D~o'i,_A|G`lU?}b\^eʟYͅ=E4D(⽊fwY|ɖ%MT>%}I~,y]dG kM]nٽ/:zJqn [ dh qKkJ3G2ߜۙbuG,GOV>[&:ђEf[]޹tN!k\3ըO!j[Cs0oI~2w6꓊c8 p5k(j1)"0[a?<K[5z#'C}Jo}8G';8YɬﴽY΅E}Н&K_bU<>Co!  3ٞՂ3H#_m5[nV^0 {磀Yf] 7\en*d"o6[ğO-8)*&-NdKx,%H;'˵+ RFqg## ڿw_HK1&p3܏,JºDiQ-ߦ 0WJ/`F@w2m?!"sQ[ヒ<~* U' p7` ,@6hi0⮚Ȓ ,񌈰NLMr9mBHv9ȮDwHUL6L~eɆ0+1>"$AcgXTZۿD >ٓoN)fM򚌘/+<ƥA6Q9]ZMGGYtP\nׇUd|1+!B! DyKTXZ h{v_@b>9w5S N@sڼ_| K6%e[aKV&1t"K(~7(gf3vօ @XN^pDջ|z w2m'H1 zYDi4s䜊9=6cHEQVҖ1'7&_/*ۡ#y~5eŌ1;)@~S멆CB#Ŭ/&DX!E\I S>o0xoxu0WtRxؼw.F'E<.-M1r^UcYGɚÎĽFQo^dD,QK0]+M֛(~o"oeczl&XKKvSHP v"a\'h"zu} Wu'OMӨx1bi եW6Ƹl@aV?|Ĥ oWKuLr iv='33# WHu/x yVM7qP/fMOZocڤx@9s?*[=o*?{;cU 5K8Ʊ}7sl3XZhnYAI; ,hDJ`ȗU"nCAwԳlz3+a~oh2n6;l> $:xj=!tA^Dъyp)w[87NnUjA51*<=}gR;ª!_87т0?h d's mx3@*ͰLX~@}v>r al9FyӼ7u7Rgx"5/YxR.'S *`7l75}\~"c?kᬅ%?urDK0y+)i}9gleUz"./Ǚ/!A*` #%yc7rsJ\(]֝mSԔ K27hNAr|.G)>OZoM "Yz֯g:8TΪN ɺ}lֿx ~߾t=pMEA&\LzڶiܻfgN x ;d&rHu_)]HUa]Hӆ/A U[+<>MKMZ|\٭q= G-P \%ܐ.1-e f/G "ZTRܩS_ó%zS` EQl|f,Kˍ#`ԥ5-̋"ȡ S.;yoKBZtk}adˮr8<JW91-]!YiR/S&O~,ccbdX~4"Gh}@ ~ڤf ґ]B.6 `TB9- RX6?X@Ac`&ƍ=4oQ}/n| BrY76q4;/yFNǯ0gzE>F{e@,HVnw#2TB6WdIIK`  TcjVdj&{`,.iv}%8wkYl.$p +ԩ}^}iT& h5"$N ex5 ([Q}\Ձk,z C:qVN6#-h|_@) s2|ETToD'@ptWMu,OE=pR(!Jg{Kk9syYi!u\*u-&h5u(웰Rқ}`5w|{: *hv뒽{|(L TS]pӉ܈uK>@/) @RP2_E_ S* Q.l5K(:qHS+-;JS B) de^{'oYvTz20Ç/gk0#GEt÷5~4F_-FHhX=-_ z$M9LO+A@Hbge&23mt0mo"Y/f0i|Ə7ȐΏ9of^R)rGnK{`\̚C+mXRyK("i0=#IvV$*=LPܱIYFG3$~՛fD$x0ыK@G$o縇̰e>A>FO?ս|'Œ=2N6!ǝ4}.A޵H z=bzbJil`'8bI;0A!k,r8{~brr6}{G\m  FwI{YlSi)TIk՟;&&]d+KXW6+؋$5ZŠ|M|=9-pl<$\v}ѐâ}<`.,n_&@NFqMP$k&\BV @ޢ󌨪Gsc!,Z@3Sb @І-> 1Y}|DoHTLzŦ5/QC8f;mlD|n=Ȏ̂8Yo+{ D,ZY&< &RA1rbAwf$:?HR@d?.5^kx_\~'"ͧW8hgPo fFS~s#"WM8eҘN\JoXȝ#AK8]pS@a;1$GU_ -xV9rAj*zS!. |rZ I\҉P^9@Č=PU 88PG&[ɡ?ɤig} 'E8qOTΑ^Ea7#^qevǾ#GIAsRXl 8k{OТN9JuUe):JG9;Op(wB /y : 1*-߹x* É_Gj"u*^*$N%2e?A8Q]У8 ( 5f粛 %[qK7M_JJ.5iqu gvUg/ռU 4ψױX5G u`]kDJ_ [X2>N%i[Ƃ6y#=Ob}yx#G=dmHV~?skܾC]Ьqd줨ttߚb-Sc.٭ SYwҳݛ~1rQ5[ S+k3A1S ˒hZ< 4AA1>>i N>jn%Č;d"!I+f[:wh6&©K wLoD2mt_mx1":BK,{vѓ]99u?-pp` ֿKΜC&-*=%ER9okGxaADEwolq߻cc-_)Ug Y\!F:\F˪8֒ 5C?7 4H?ԡj((Qc@](R}&@y;Pΰe,p؃vVUG;UXC#P/̮mޞÔZ)=YGYy' 1_E:/ K-/ӷXq&<ˊ} @a'Ĵ:r[ELڒqG1}7\7]m`^3 jA˥YlvYƕ SO$x9x(,ym3w@<\`R7z+9%XL"ʨqVlȓ+#%!fR8s BaHd3rW!Q_= u#'EK)x+ GK(lvå\m*nӠ`X Qq nÖl.ׯnXx&Ѻ>^]uPTگEp أL͑ҍ .w!æѶ-3S3YjyY=iН\]؆mp0&O'2~fT=XdxЊtJ?1%|+,5j캎ؙ8',H&(Jcʸ-%13}pztIwD[|zjfItfFȰޔ`qՙ:9R4)_msFѽaTOwWv.$vQHvx3wCa iCrvWRcϻPHHM5x]M7'A. JgfWȵIc0R۬AZ#N4[ Yl:)R\;H?R/ ߚnۺOΒn͚fLct%6Ȯ ' ߋ?2pOùeaC.ޞIT 4v+-(`h1`x"WOTaBPɫpp^Ûʔ_w t* 5Rty$`#m90@G˕l'rX)Vv su]'{B*NWJ'D;0$m}rTb>7QGͧsZNѶRȉ5ZPL1%=A1ICKtMmEu&Y3O=Ujr7_B=9r*Y70=zR4i^ǔ;χ*,l^Yٍ:t.6y>y4 Wu͹3(nkEĆU%/)d{>"#z!Jd0t%^:v `3߲9Z'+VDda9̙ (cEKKp*#P-~g& ~[_|8{Ӣ޷,M޸biѯ` m &"gs2qyk[կ42nmPqeet?5Msms*8l\[X V쿻< {”+W|BgǩrXB>p,+{ 'F^}v5]J?|< $EѮ ԕO5~o:`..sM7`,<_IXX{SFIpŠQ S Rul*C3#( /u'C F,..n6h ϱ+]~JUK@-*b׹j1h'ǺOϠ.9vz'J~Ƶw' > `k.f;)CBA$ex{B7#`EMZPREȪEEg6Tl= D&<6 ]rg&;6x`?&_V1, v25Ud֜ <aeЭuIu-xn Lخ^0dt R!ZErHck"_8 #2&dE1lW0? R" qrc=W)X+  >mUW\4`JgdHݨK@.ن]}G"k!__j) *f-O`])P E-(͕)趿(H4:č(q;zdJDQھqO!a!/0Vس"$ o*R!DژAȿى9ȃYaOq~a UT룄9?S+jjVճobL /قIʪ9H%ZhKA{#w;[^]ĸ3^3eG~&d&ӱjZ}lOJw'Œ2R9xtnk.k ﹝(G:xav=i=-^{cVa.U11;$]*xj5sB6UR n q-,sPWW,_1m\ h\_8$f 58K?h ^#$:pgvcWq -1EGZ>"y[(Z#[ܜD-T)/{PUd짵rq[4;F7dzZp@ =b N#뷔@.nU 9z;&p 3%].DT<d^|Q>_jȴ`4Q9hKO $[3/;+r,5:t鬃a6~fL8Ms1EeE3Hy[O|`FM JbuG׵s-V8UAl\"!(<عm$,|Hllo[P 'SZ/]4#fZeS}h# b|o. ?!JQlϦ  )ָ<6IJSë &s2-uR>!%f (c^UCq=vx1+.<b.a(95=m5?EG[7m{YxYй)[H~ 4z0z=P=Y# ɟ'f^ yyHh$Kfh %:;lt%TIg:52ie>)ADU P3ٽ5%O}UlUp7zϓ-psla%ʣ@?z)Х88CȮ"|C9'R;C\8Jvn7~/oI4~j`/vδ B6DNLXy--"~йB cO$ dDf9}@qY 1_#U6ո^8d)۽`[8iN,lsGB ,\簠 AFŀ٩q؏:=֟ YN#kmi0ǼSarӟ< Dvma}tEtdFCoukJ89)-jɰ4 Z(|uܶ/eu*=BAՌC)1vWDo,A:Q媱o P? ˌuJ%Y<AJ iz2'u܋O`[s&kʗ$ǵYUR<#>/)t VWt<4k*-`oXt(TC˓VzL; />܀Baz]717)VMa;#ALc 2X \˱,br kCJ'S@{bk ōY0`R3;ΰncۚ/ `+zN]Xa\UggIR+2)JWxz%c:l&^pT~`tDTpA3 eNx,K#N<}eq0 F'Ύ1\ >[nJ]͵wv;m}D׽sqJn6B6r4w_T%{lNxJuv*I- *g3>b39Ɂ=*FeUփuL7X\K p"adNȀKT;{GcfS<50=`WѐYK|(fh\<g:ݙ;TS/ &Fϸ(EkS?a^ +eymtC;UVTI* / & XaRV _N a1-显]=JDPmݤcN`;,/J?r AKpb):G$ΎMeml$&ed+wC2L$H{\{ujk'}"{ t];03>ýTq̻c}W& V#*x[5djlx\9t* `lU7ACApX\'Rš.^9|.G\qiY1` n m"}Ǔrr2WwPZEϐy1MǛ(Os+"ړQ\}rEԮm5pUNGy4՚0Q%"#D5gd\ c4M#+pVb[E-N!ػݭfc %`6Qާa53oadY߼ -1rAE$f f^~͏kVv~Wq!} +؊ {Epũ __u΄fλ_PdϞl͵Ht$q%PigM9Q .\?8^xӸs{j 66'm-9dgY?rx).1q|aأe3iȻiȅHLB^گARZǃ5$M8g<èEsRՏ_Xj (-qR(.P'vҎUM{/`r2#hWЧD?!Ɉj4L ,5!6¸"t@d?wꉵ? ttփR5%[Cfٵj;z#&\e^4b~'h#r(x#v%Ύ ܼ=˻n2;R#Y":Cؑ‘Y|T3]wgn&]u SʯxdE0ozc1yl!tMewԫN'Tf(aVuCWM/E{TeJ%3 Ys"(96|y첡=؃j; bRJvvN8~= #q=u&ȁk, }$pCK }g~_Z* u!mm%(5<7BB)5Or 4g;uΞT~Mk Ӹ=.L$Iy0`Y01Iۛ&nZK>[w}7 WCWSNEZhO)wFw3O[^"HZi?)pc_5UEol }bajl=Y l~nK :`{R}Ga?vX,?\'YvکqA4-8KϏmիҟD+T)fuFk}$\P?*!|ݨWuZ]qNVcCg?k8s*PTKiڏN} +at <Y.8}K_<{׹͵Wh[kzիN랈oQ~*p#g%Uoծ>Op d ':EDl)u #=i2{_kZ|_eFu)BE $+6Z!ugdB 3 ع.B"_zg H5pE -׏]=EtaQݕat LN?x@$^nh!4N`˯$4!ޟ5 _Hpy*5o2Jƒomrg6U^;<.K8&>[/hRQF)sNlj]/&D1X+soD܆ɨE zjᗟ6db 2ֈ}Ω{y.(p%|rp@m=BĆ љa 48nߋ(%(RC&Hٳ j73hUAQSА=Qwl8{-V /[I gwVf#˶!  s̰+:J+.^6d5P8@Z1zO1|kKy֮Ux7>mNn!Y8`ڮ7/ʳ9%T.%"L}!Q!ΖGUF~!uVPI[ 9L*dyntEdxVUVRu=jNuoabzjAgk UKǤԧ\%˹I5J}SϔAE1NKFj6/bkQ|ԆWe#l[2} GN~Cq A\B`lߋ]Z PmɫYD65_~G@s=!%0z-Rྉ'ˉת@9A2y0kUNbS%smdMs` [`֛4J,z33D plj<:Ws$dw-?%6RD vCo^AV-A^rЫf)4.ρ(|]uD8,;ln噒::g[+5 LweY}d@ :M/湔]\[w05ݏkuG "b㋬<`itl8nyDwIs߈Kv#3k]$Lb[(dKАhǶk=ߦOz~Q]DUZI*pI9аOќV}"X^ZxVN ljIήY ̗Eh$~e\IJzFܒl2/D<%6}^R%,*xqU2ؼ^2 hB6@9Ffywz^vHt(.ٱ !YZ폏䱘+/_F;R9@=+(|{PǓIyIz(պwJed5aSN;cрMe)>zٌ.gH%.T7eDLFOj;Xĉ)IJ,pu:PpeM*y})bk hdYzr]95LD< [WCMN%hm'taMؘߵăٻAV?:K%1,N(cn6dii6A|fJ}(d9 vh>~e3SA_kX?#BOJ>!n&|kV+r.]zN i Fīaޘۈs^o^XjW>;dPdBSт4+k9sd:f Muznv*@ w1Ѡq 2y㕖N2m|@6=`u\+4ɽS1HsoŮ0^aUxL\h K9:G7i#āl <<$P0l ťVolXkn RE[ÙؖBAQ,1Q{ׁc@0`n>.9?<:9xUG۟`y"A:F&,1[ 30_~0  hM.Ha O5)_ lj4ľ= !I9l¿.K_/C\B{!5`@yDѭZJa'bW  IdF”poqe,qFvJOZ'?4q"ro} <)_?>j=ߘϊnBSZrjpu1hDJl/ 5by5q@6Xֲb̈́#Srp"C7#ZE~|jҘB-nӖ*4{qO6=FsFBW&)`j,&qv_*=raJ4$uAҠ )3Bg`#ȍ@" T7ڻ]>ކ=gK2ݩ ±E5VPb(Ҳ+-@;tmJfA6]з dS˞Ws^7ŭc~*vhE{/D kp'VL啍u:Ns"w } o𑲬[QL^8 '5? { ւow*_V2e\z!zbۭˤmJ1piJIF6ɣ_׃*M⦃N@c3=`_9& NvN"S| J̗ WLND q섓ma{[]2t g;hsKX`3Ўԃ@; dx O2JyױhH.BJ u2 w8I#([80R~Jam-dJ m,F~_@b PCW`Y8n-׃ZHe$44sA|oo]ImX3UZ&jN%bFIFG`7oNl_HX TkF6^=dȥ'/n6RI=0zr$"vgڣ؜DHa,RtWLf&Cx9^#_;cO iSYYp闅 dF!vȮqKJ\3 J"l*nM2j$yʢ_W4K2l'R?DN3En>]^iHI<*HB_J_lA!,p#.~OWԟ@x©-1O5Z9NWw?~$$Q 8{ږG>~e1:Y}2:b=+;?C4Q>?:: AЫX]]g@@_j`c#[I= (@0c.9aYRGla7Sy=#EoO|hyEA|M Sa A]H"-]y} X__ &D~gH!NtLze2fOO#se@fsޝArE\=sZ}1| X;|HwJZ JG9Gìj (e8g$-1:VtqтK Y$ = FC_BUDS/DDFjfydLkwa#b̆M(;(l,7Դ 9G"{YNS`Υdf=(kC 7}]x_ԡ*K={)d G݌j=-J7EJQM=(飶:hQ!<&ԟ./mI_5v$=:yۡ(G"a{'+}?,}Ѥ )GO:.-1p2uz5OA%9B 2!Ow P#50ܟ*8dHk] lL9M@򫰧gojM A{e=I>{3:AW3x~p*fX/&[uaᢡ.BA_58*Q=^5F$sryLU4.MnyZY8 LMZR|I? Qg IE1i>)oIS#VF*DC'44 j2\` n+( h:{ dTPH|]PŗHA(Uܬ#$E?MδhO ξ#MS:wX .Y1H|e*^!wuuPn}JPANT׳7m[KAp 2#h(͐$\m&7X&x OϚN؟mmV9ɗ9ly+kAuY7gCeN~!gڙAS8]snY6 `ƕDWuߓi$${Y2=" ۤQ[ i}_vY4z7kl $c"?8)qFWzfce׺I 7"} nm 9TQa.g!fC|s/dC4KKTOi@,=&$g~ T0'X tE^sKE2&'|0 m`t0L(Px .7_s抵]9*4>^ KȽ;\D~E!e}DđV|"|^@~ƚ܍؉R$o|:'m\hAhe%Wb@qRw> ҈N]HD<)w fD40-M,/uʲ8i`;$Ǖ wz/j׋Ž΃$}߄ZV-T Ӻ;w*52!;"4{4B䈙~cԜݹU얳՘DQS5DHwH K7Y3HVP?RK/ / / [L2kʛe̝w}]6tVzS%%|u4K]vm;t6{cbݵ*`#z{0ϬifK;rl R-Wgb/1YnzDD9R?h%5 gp꯿=7؊1J)nT9h!TzK7ch[\KZUI]Hgf`.lĘ߀݀my_JO̥ aW\)S$z !*zRX-/{O|}H/CE$BzOk[iex.m^Gm:٘4Bx:_iக%= C1bhWG].9JmƊ3Ɏq BX ˠMa`@|\[<?+1vaD3;qEif0=x4R)B 'yv>52fA8$ϴ8FAyMSޗgUV%9_$DSGLIP1f;p7 x8 MU6qEy1^[ ^KÖ^X#;'gC2s?6m31ao&0D`8Ot n%Z،7?+@+ʂcT&SWYxg/b8MKn6qiMr[bbQE0+m WxQ0"}fw]ǢuԽs:69c=[aD|캐&diHyڬt>!IKb|Sadzk=SqVU.P]%[ڎѬ APM՝Dg K^/UlX ifM %"^)t7_|JAY$IBH[dl)@mK( T(8L a*2ga$m7\‡ l%v?u)N `^ئ@񢬐&t<3> 1:;YZ 1B&Fn@tP/)L\ Q 9ếQķվ*6rNK@wYkhKyrVdiBR',&y@Lh/O\{j-W:^W`ԢvWr&i%Əܐćx#aQs!2k$ Sft.XNHgvu2lþEKB>Th:Ǵ5`%h>ӍCVuMRvBSMx xwq̈́m7~v)޾^˙*D.Έ^mT'Ѡ:UMRDmE"y]D.@бQQRx>S5KpNz>0uB :B l?]s=06) +b!jtiDLe~uj ۽uNY=ABqAZ]@K82&sֱw@N-uH\MNVX9YSC} .^VxGY1Y8RKگT籿wK+H6* XCIʪ֤'(w/J::֘H*+Sb0 _yKB"=>/Hkhe;.hPc1ԯʛ! ✈żזp TN^Jֶ>%Tѥi{BE\}dQ8tNAH»}{.2E b= r#+AubLՈZ'bgS!֘H%XNx4ԺZ5J[3,%qM*9K L˷n+r5@<ۻJZ7{p? xjs$6ˠŬ9Icœ޳\n8īS2rG"6Ly X;g Pԅ>-rrhx.o~hO/8rD}Ћ`TAگNh4tB1s ݇lsv{-n](*|B|RLX\2!^쒀gs9No6_DC_;d 7 3E2)\ sCeSy. Z)+Z˗KNpv;Wa#jZ;>땼 zE$s^;>w6w Qy<"<0!i'n =iS>8a(2v:g`z,O>Oی%3=7)ag;4MgyA> _H΅1b~ՄUצʫ(}Gq&LʭC=;H|VIos/$3*9헹Bq_zM&LZ~~~IH(Ǎ4"\je!]n4=6M$bE X)P"$֡8Md\dm3CD@׬GPrI; +,g$x;GNBVGrs6ѧ5@ aLF"u \w E[*]+jPpum¬7}Qlu Q,{"iEF5 9퐕B2pBax%HE~5)m#wWW!Y%!sw6&0Fz[TG< )d TX)ze`hi4>7Ur|yC{qduq !ݚϺބZHpjV3~85*$&v|y!OMRQ=h7<74f(}Zl9g .rgMs N; LE ^\?/nEP =9ym#jH%%7˪lq)GB*Ofܴ4Yšgg'%w{cI# +Y$:Yfz8uS}-&-޻?S3PrӵgDQbC"ý :FZ ڞ DLTfyO-ANJv5Ҩ$ ~vĎ 0kG6v'Qחe(:/́JÁ[d1i+& אqP8}/Xُkqj,cmX*w[!pKuިfI%iӭŎ*ʱo`RnC`X>Lsf v/=J\u\Nb*_cFH\ @.GA(z{Eֽ7)c5G~aѱ.f*k)hR]k\|m+tMbFwZk% "k{$\^&I8u 083XEOUWVo7eRK&RʋӧiGJjhj 4r_zh9vibacxu݃xڳhb"A`!LWe{Zci\#w/ay*RmgBsiUy5[j<}ЋUvy?+:m!E]?)6Z (T0w*m=R%Li7{N^o7_UvEjU'zwr#CRA^EvZ=Tw-)f,D|p+](uQBC6Ѳ\1dzfr;>P<` +Ϡ_d3uA袃Cfw{cr#|l~=9y2,i4]`05nT]^~ Mhh.Ǣ3stI^0cï(%/oK39l~|8}çO\}"^q 8K〲'-#̑'Fa;w4XȐ$i"]N /(}-+g RY wT,$S :QZpg3qYϐHOϞ˒{ o@o.jdyOለcPV$ǯW΀֜-b^q(.4 Hd;#;|s ʏ΋pEJ!& PY}]snJƗAn|sJ q+M.FZǂ"JV-+'9Jm@1 &'pWX~Kl̓3^ 1]{PBpU\JX S_⋞՜ rݸbҝxlPDcH/mTSdeq7f'7H+h#jIƼ E2oj=6 U SoNGB~J"'_Ku6f1ty-@cG" 7-'Ô9(oA&bLjC3nզfw[,ڒs. W\ 73m]0c efNEƹ`wΰ Dwk~ÿ[Ȩô"6Aph'pQWuc\'AsR75"G<^^xhe6N݇`H2M{dcT1P3!ΰC:I)^E\!h@GnE|鯚Yb׫Joju^ Ղvo3<0 g3n -rKh 2=wZ2oTUӟa/:*UD,׳ܵ З j@U&j,!\%.uC"m >.=(c$4F9x 򌾎[Ơyg&$l흃C>!´2LAKm)*1Hv`u\BmW}Kswl?ugY'EV7YT͒}2i͵I4 uMʡe$Wi(6jZ*,('ahS̍<ˀIoMJw XB=5AۙތRff"^ OjAA;~KH~-ûR9莤)HXhpxfƇ5`bFFr,e)\x5|ah:4XsaYVKGu0GƻiPz@ STxc~Xa0 S6tߤȏP:1U(i"e+I{1"UH#x[|Jd*$׼c bxh.(g_ >[nO)mR\24l$Gt%SMi(il ͹E^s9nW M}km8݄x:~J^{p:ݛEV5Թ:Z.|E m ]B޴Q!,B'4Gl*vhq oV1mH-CylI[%{(KKj`w@.:\[k$q ;!-M(^׈%T&­}#\o3_TLO $_gfڳɅ5\AG7 =NB$ 3KT @xS;tIwe#DKߢ~$bra1KenUyּ͒n 'LƖCr?nGbpKR]7mLTOB2Z%W.# Cd faǚŎL^D~}ރE]`>`7| B;F ` \`wB1 Î~$U`qea'(UP[pZgF8j/Qr^)|pōj v@#OS TH%3WF pEHp¬֊"^Q]_16IoM<іrA;?Kd0ժg/z |bsQmŠD(6\*ak@z+I-`gRMm*D|cKԱ~,E3دՒCiBHk  2ʰB)!>h_7o{nbM'ƈ"TT0rF=;y܆opߜ"ea^? .>n/ ѓQ#A2k칼ogʙ2U$ )yXa1[ԃor5W}P>7.ON̰58ߖCKԣ"Z,>s =jy]up]=4\kz(kϚo()B$y;tak:Br,sC+M*gh$}aY!~Aޥ(>%B(:*@"C fq"d*:073C +UlY >C|2ʏјO'i]14#`(aU`xCva菕m3w"J.."& * ybPU攫KSu5C[fnK\VLo^9k4'--J#9F, CP*엡iyVB VSK5O2k`SdcGnG9i7f&z}=2uKix; hL8E:-#fŊWRQug·+hztUXҕaNUGhrIXj(ka3ۯ,Ԣ/IבT~x}dZOLcLjJ֔}|;eF1ߵg~ XIE$$k;XMq+h~ u mF$_=zE >0寜RAImJ䢾ɓbVq򴪒0n%ݔك^/NĮvj?gCU ;ޏd8^ͪg_Cx-d`gN3Lbߺ.s2"J1ɸF.a H1tT%6;!Ѡ!ȥr2Jplh!'=ysW q<$j&/9Wv '64k,#u?{l[ 0HkY|[~DK3#|~n"tf ~xz1 _Z愻\sH 6Uι;ljMa`Z*h$[Qv#/I $۬DKrnY]RU]Og}IV'EHaQH@Ι=sdUh ɼÑHj<1p ^]L (oʫnY3z>  {GQt0u3屎1-gފZz9;x-ģe4W[Mi(:z :l;}ey44ņ7k,VVbT gRt?U赞m0CU~jJG B^ZuVSHթS ~zU 9knyk^Ad+@8P߾bWdIv$aI܆D1psdq L3W3e5Zn $\N̥Z5p7]Ǡ:jS~t&5 {[;Ǜ^aBrw{kZ?=Lk, BIɤQUl$/-'TSu4 .}`J(>cdjt(,GZn &u7]*i0=y 3. s䐿ںonцÓD(޼}G',; ͋R\_kȠZ˱IV$8u޻qF W+88Y՜EcY*/Flx ܋QA (tk} 8ܒ+X^ۯ:/R͸vY%shU呻XG.kOYiS:# $*@>vy'|bO\}+^49bb[Q{B2.\$ND-di;rLvoz?ߋ:p"oepjӰDxI%LGk׉u J{tF$c: Q%L؏(\f׋JxR^f7yWx] Ms$g\Ow:<~L&"ާNT&w. !'z4䧴]Ȼa9w ǫ:8 x:+ !_.PGEWYߧ*!UWF^͹?4k /0$N>9SԊEXJEi*'P!wdc e^ɃT\"q[Q}97W)˜P$e;AuQ/r).)v@?2jkdNLwL?B*Ppeu'1V jrg]4-w%ޞ8V%lSGEdI(l hɘ ~ʹdp=MO$_kfF.o@0's$:Ǝl-  s60hsrfuR+U'* OG;9 bR稜|ap@?/k73++Aɛ"C52VU6YIhh8w#Sy(Qk%a MG @Pچ*#֊n! *V.I tR6-DP`{܁]OmNj%?J=w@3| & g%*է1mZ+qlEe;+;+5AT-%?O0ޗޒښ((+ Bh;WPJ㤞Z3J&b|֭\9HN9l^vBbM?!wJxCsGw:A>j?bR_}A"NG{0ǝg,F?@_5q*|ꣴ|ͥtFT~O{zD%PGLͰ+;&2pIysm,u p/{'gv$;,FzE/ǂK0;:_P-)hwjx&֕=|',s GF(3_]}yncBwËUr%,}uvaLK,rg{K;@Q^GrM _=077|]`l%pM0k) ; q9^nN 1%k-J"Cж%mkn&Oe@/IV!<B4z0č0k>)ZA16eU΃g< MvR%`Kjh_"#(iywOԼeeq&g _XBÜ]Ӛ6Kn.! , 1WxEX| EM)cVmɽCo qcSBīǨk,jVukBCI126b1XSF<$_|յ f0 ?YIiehҙwTk<Z ӚE7!pVSZxYU,w<@&?Y-Į@P|9U-_9m ߺVy͵czEvw7 XTw!8QVDW8KzU4\Buw++#ˉ+M)G΃PU-38bP_W/cf^k'nR̡d坧HԒKFfs=իE5,Y)'oB"dPG]?LMR`Ӻ[Ǣ>12m> @{0 I9&p SI֨RN "-m; &+c*П"vN5N es V3ݡu U鉎^#ĵ~϶m!p2Xl*-}8d$B[n\U߷3.ƃMeװm;A~cK|a \ZsqHd|c?LU~͐C 9BөN}YlSA"`W?ztG䪇m_Yi)*$[={w-ػp;ɰEGl@3 H6 qUd{gf֦kX䘒ampaӫ\3]i(N]\]?9+\EjÉ-_ ^ܕ{_N#k,s|2PZ ARV=,(wM2>z'K [&ݻfKWi@-PsiVenY.c ԃٵ|HEJSbj7yr`McmAx~ QS(dBT9lR_nЦzO˴!D,'MKkmg-8ƶT3°>emPT]dӰBl_IOvrm[#_6Vt^l \qn OHRޒWDm(_@O [wV5o8ѿ/D_FeY. ukHjA@JiOq=H-k(8 < !KUgAn?P[꟤wEeFG]g_g?I\m'(Om~/?F))5nBg#kg/;Ф`1zLXZm7SLfJTf?(Lq,/Y#)F;%]j,|s|zȦPlo4g"k7;};: TFFF2c@TP˪?TT!&d;=5r_,f8O VRؗy q%2>o-gK槙%_QG$<'#^H(^n1XVo8H' ka=뀧 A?dOEЬdOmCS^313qۯlgCeic$IpEc=Lza_MQ\2wo3][Owm21ʪ@4gFQ#Xu]Q}))م*=|s-~?qI]R餃5^Ͳ^mUJ Yn>f7u?!|V,eiwT@OVL>ҲS':2rjD`h\e p1L{GWbeRl Z/]9L:Kz!9g{`;0 ]i7dF #rށYwLu' 2--U*'}tNZV=V^c?r?[RcC7 rGٔ>6J&x0 NYE HO7C0&:̃_v ayBف gwg3q/ %~õGJsb?2..}EIb'e;lߦX}0+w).yJ:<JC8?@1H{J(PŹS^ ߦqi~vr8ctɪj7-S1ҞR#i2@:y|%A Ms3-r"S-TTNQ>hیb_M4!q)Ok$Y5+k,ZiMҕBiVkm[xtu37GǼlћYuZ.=b29u0,]poTpv8q$~l17t0>S;J8P `Yz7Ui?MIQqA- Iic*c{F4h|SAXEhl@if:5 bJҋ`CE E6\: t-<<3ZZ?1JRΨł>?[x dVl}(4fw]u-#(u^̄c^u:7G(īGҘxQ ݶpnd9|En(^NF]m:Bw:8AHwdVq;^AS*3دS002fO*(ޅu >i==YiD6H족;sc sI5Ccdjw.݌ B=S )5wSNWByfmSfƅ)-}GBO7Qf9eo-~돺@-6~AHe9Żis7Q(Ӳ..+3:G= )oJ%0Qmncz'y O2o%/$e”6,82ʰq"*E4ؠmЮ$Nxw 0nH3sO ~C9g3|+4ߺq_ƕ(48BUp;vo*ƮmNb,j"WgoUyQ`\<u҉gf]2WU!n{r jܪO.|b"Yv*Vw6x^c`IeKƬ13^_B`,PiM[{[a|p!"sizffFL֟atS XqPLh T$8Y?T6Ž䊄eF.8Ӟ.=g3\zfWH`k#5tH! @N.v,W#"H/1*񵢡 x%e$a7?HR kCò4,}ڍGb zX\g8f&V/bN"WIwkWxy{AkTIMceƷgj_,u*DM{UHw/>@ܕ6ytR.[ۀ/굎{p"}dwI̲~+ -csJ7xj y`Y}H4TqGtC+&?zX̣ut՘2Y%"Vʌq]ځ:z,U!ΞgܕZi~T}bl mڠmh0C~ǂJb*Q63r(ɺ~7"}nCV`;6q>؀oջ;o %"xP{ߔ*zw$>=a\*Kqi7ȚQ /_R7u^Hvɦ7a*sz= _O-1E٨լkLJ0lI' 3<5YQm@I@)O8dOT$)ibj[-#?!lVSkTA*";MáVpXZLv dXVO1aPWB/?c4N%|m05AgfkCx'nF)`s8N1F{&4Z-R|yh,$Ô c\Ԁny}*#/jTj Z$lh탢;^/2#ˈ$).~N%l" )!LgiνDx >O!ģ2ǤF=8na:(`"\w6i'.X`m1}s@ܓ0,n7K~¢/v¦X:Bkg=R&; {%ϝ=0fvZY?09r91^jr,Z* !܆]zdeia몜|.M05D 1'OdA"q{Z, sxd*2 !qjvOMz{i?"6y6smK+4W%;$PMUz;}d JTG)\ ӬftKfmzmG=!GQkt܀+xޯ +mq] ߹c3? mUR1vDY1icIX4}\0ylan2OsT6 8'S6( r>}$9$8"Ӟbƚ H{He-=uS-w?-fуY4e+-Yu}ȷG?ULi[+LnAT}Ʒa KBc' of$+^Ӝ`Yʘd㴡lSywep^oKnW}~t_B(Vbd?|`,TN\j=3yČ҅Ʉ,'yk~ȀMpm,8_ZG ׾ؤ+su"\[EX]g/左]vjg::&Xz1/C#wׂl_{Ņ Z}r;mU3DmLY;͑ _t`\zd՜19Ҷf؇۫Β5wj,-.UgHUv˃Qr]NkM_nD3oj}h;i Ov+QAnx|UBW'$c- m(@Rl8Q]^k*f֏ GԡfȪ֜SJ̩%}_[z1τGaZ;hLـ!hR)g! O 3?(e cQ5EFZ/uHr+x`223;)79]HDi%c-x*odb |/]w Lt)X2cm$7$ěuU5_$&J-m0 Ff#n_&Q2c@u<…Ap-=f`UhmPΡ^vPbx>ܳZuzPW49C[.:uP"-ų"69Wg }ơ_vE"IŽE7 lj-JSBzt ?R(` z޿ZUݽPP~PuGd k *u ~F\gJ>D_+ ] Qn&7ٹ,GM4Pb0`?Y?ڦ0>'f"ŁG=ѦbmQ|_'r$:h*^R鉳XgyC+6fd*@Tr%Vǧ8Rёia+ CT%ֻjRIJ3i}B0^+_T bzt0:#|/+!~Y@=%Q/dmW Z`CO# S\c7eБ74@s"+V4[n=wd.Ja @8|l)4PZ*w>VF y-_@K^@d瑑ZZ7q^_YKUG1)źawdUe?H%8N7e[܂U~iw g3 |VW#5T{wTkHv[Q77rYRt&g rcj1>W z ۻgխM4"@Rs K lExgLPߝgxTsAFMS4>=I9WhRkIQr͒W s=.\U7@bQxhQh(yCY/ڛȗ `lKaœ^X[?݇<4GDӍPoJT "A&td-1oxy4+bMnJ*BZP`H>ruQpQ0_saG6Ώ}e^9!e?89)T,ؒk}rQK"Z=3D@LMC<1RLwsڊ%d1]$\Gyz՝.hT9'za_p?Y%:tpy)i{t"=kMFu7Lueεx] )FsФy y-U.t2+ε(uj,phT؄P'-[n$f=<~ 8H(~r]=mh&N\jyznqfXIWT2DPֱ(g9Ai%<giK=Ev穀,%mrlF_RS@Cȉ.6#?a`{4Qq켕2B-RI#=zۂTFDj+\<+5h\SD{C5ZB%}%GL˾1t>'b6+FhkKyt?̮yc]*6@`pv0XߕV[/XYvWINMY*5dԄTA&= I6ȄvNњ"0ß~݊7k*ևs=:IvFV[N:eEX9Y?d 'YBi,eV}ƕKkJgQw;a|~>%hX1h' ,7޳|_[vvVƨZʢ\2. )g1Q,KKf_ 4𸃫߱4[򁯠TWy/'jp|t:z1*5<<79. NtG0$aޝhJm@(\5WQanŽO.>,}R 9k[_) is'lMl'z 4.47T~b`Z{f .bXQbX X.j>ovP3SU- e̐.]lӒEض JyOݰ`)U$9CrvbMN(Ɍ&,4vYs _K-w"R=C:.#h[~)6S#Sy~:M@nioN9Mx[9I2Cι]7?܎H6WDA]b"TJ|p$x 6t脀ROW/]fNv h ᕲ - nfQǨ6ρ&M7sܚ#WO><D'wBbEq?TwxLBΔװuh)ox4^uH4φe +>,\@+:p]'=Z~ f1(ѥՃ;`Z(4/;]-Il0ܐx9#]0yGsI5T5?U!_[n"5妺s~ň@-o.#gJ7-fwHǷBt O.b0ě98`b5qҏe,z\> ϕuCO=hRI&V)(UFe9G6K<`I Uh/h{sDiO4bl^򩆟}9^ t[XCw*)BIvx-  qgP70Zi#HTHcRi@e0:ڛol}_Bazsa*> Ek)7)(F v\}"/]&4⺜4XݲX?q 9_2˝%1XzU(xiDDez.O>`5͡] ۭ@]Š}QSJEHe:\b  3Ī{B!&n!ׅWhib :s IK^Sa0SGiTO󫰀k !Cfx = YeϬiI !aŸ'A*ִM)5^m_aY m$!f}>Eд5!spbIE֣\ %͎&V3T>lv°x>yݮ3ﺄ8;_C+>zx1G+qe H!y26~SwTټM6 B:&.mMjJ.Oe{qXS,F3N<)vپ &ҨPX0fhh$m'vMt`XAw[Y햷z]u8?~`Nl9E@Dԓ}ZZWH:*&vNqa(63\+YpMh?DZAjW8dК)_|Y;|kY@ߩDA|8CE"xR48nE29hG@2d4q9;2xRVoxV앩|#럯$RR:$7/J}O!BZpt=d+<F/ Qt˾T2ex?_1)Uw=nT~KJZKL2<4%kXq9 mlI 0B\a}R'ulMyQ[@ՙh+3$S ^pm`Y^UzQTqhk8DJ=dכ^0jQt]CX`^C`j FRx}8Lvu$hdHͻ6`T3Ѷ_#H x٣x'c0++P*̎aP5SgIc f U=I j\r(Bn \j5J;neZhBB(FݦzTaj,'ppG`9 yEn&F/7IaV] W }IYjzD&իцHxx4N[-;VBs*4 ۦHW oxzO׮yTz1}rF5n  7w>ur:u蚓] *i=;FNQ}eh#%0R9vg՚/.&tJh ww8ӸJ$45%(Ke&^+5M-=g qS+(b\d;(5ZLi0/|G 6]#߸VڍN-6;W4A %; ?͡jbW5Pnқ̙ A :mq߶ 0CH#Qtۯ%1U)w=0N-a|4 }m5ެ2BK\%?a@q- gHĂA3};d{Uw9w^zϩu(i^EI*C9>-D=^(y9\NSza*>ZpODPF EUKpm$^uGh`sF<|B$W&X"^5WBr9S/DJЅKN)^*QRP vQ/ClG+=Dܣ8Zd!>܇,Vs eZBl+U‹2n~˃T@@0yW`%*rnZ8bS@`>bhPxǹԄcCkj.WS!BWyB6a@1qԖzgm9_MI (%.&޶26,G†7,f!(FVk"3lc16 5A=6Yٴx>rWII8M<As]{s{6f;G+L1omm1\iO`S?sl#Z ''Odd>K$m fGdiʋֺjjCɰl2f,8Z~a>!Ș PpOLp\O$cﰚ97%I=;yj(`3TAW+ϦB[Ӵg,Ƅ V E!䌮}ɦ{%)S9Q\Ie1y+!!';O9/̕A{k_b+?̛ r!T.,ĩqqߋ tpzpspGhBb$q˖QsH6_×)aƈ" o؂˱Š 6揵vN.Kk]&GdR 9POPqiNHz WdBA &DOXYsPّĝJne5)t%^KH@ rf #]\oއ8mEϒvZYi_[0YN4S8F)w;{s'x7Qx]ZHP yNjGnH)QN&D>%>'5!ǟ@cn'\{XաE(.._3(]NQ5ͥc) ~A␊c@\lp0tf@bcʍsI{w2S+|}Ěg "$ggR/_/\ ة !g 'I%};cfRpP)QWzLsM~PtQtul.>0R4*Bi  [0i|߷32ΝQ㵗jdi@ -r7+K޺FX頞ZC65q,Q# K_էts%BˏcBum[z/ILB\/7ぴ"꾘nyԈb4ewg-o= "?d2jqZϒ%L&3ޔၯ[T˂H(Qn8> X epn+KED&VY"-"A{'`:D]{ݕoE$}sx;f>r?#䫏:7uk߿c;'~;^|ruZ6w*r^cOez.JD+ہq稳?n܁^ _ՌlUi8% Ꮱcr4sq7"3_~͙yutQdp֥A߆6GD[H<5{l1re5֊hѺ/k鼖4TTÆPE2"]㉒.K]kǖϤD3L0d }Ex. +fQۥ!5Me{*əD0QmP2Aa Mh]u̬<7eY‡֠<_rYEC"l%]r;HGvSx&js'Wb8H.J{rC[9i{GU"yT`ζuma&>K1+V<3/z/VA:Dt%x:-:RV&[{!>.7t;w$g\Nko'oʃqLk~['3Y~/Aت0V$ ~F_Cvܠ˜Y_r|g)֌ Q*/\lc%un- 0|0[=wPXEйXP 'pr'zv\/Q\^oQILV{"- BlcPX@q]+7 tE$8p?8r BEEh(g 7V;-Ǹ/#f/#EJwfz5MVi-6x5KwNJ"QpFܢE(nDÿ˥z&ҝgf@-]3Ngn[QmkaJe:R1n* 񷁷P[K89NޡZw xL_Hȹ&lf}%I_>gC !әk8Xe#GGWO;7Lf {i:+B4#5 ֛)jg /*D\u gT )>c9o$~o|ITs-Va>d֟5u.*膄jv66UR13DO˸ԋiN"ԜB;-. FȄ,wA xgxL仭˜ (HzFSڔzeFػIB_ 7g"G\ʛ@Io-& rʆ4fזm`%(a4k Κ3»uPm :mP'oc5p{ P6vePt-N/{#kz1]ZҿiNUHT|B[}w|j'̞6(XYKE tjᮒՖ͙!`wX<>Z&uΞfŵ 1&VƛKք7ScH~}(W0l@}i7/9>+] (%p+'j # Dn5Y1mS.Q2 ,w)o"njWfc;bί%]"`wSx Rq‘b E8!=˿e8r.0+yO2s1̍gemBmkx~j) .tpߤe4;N+^%Z$1[=Ѽؕb52,Nm, W)0 &@L\-dBÁI V?zċI\BhZG;UȒOȚ$5KU ۦsH}}34ckmG9 sVL DŽHY tk7/PJ> W5=z* Uxx&bad y!1atVQz.R/rKx,}Vzi\Z7#e6xR>?,MֆLK}6F45߹hGJ@:XA6boy?xH/w>bP/!6x9 &r vxB~"++EqWj`1P섣R}}uTje;sC245u>(斫:JSLm`u-(o]u{P#l߻MW:ő_%y] +nKvvTCȦLLHﲜtf>ZkjT`jD 2 HJW0;hRYt^v3" )c<-n*sj5RO@vBTi1\n2:wxF7PXt+m'٬"Yȶ)石5?KOn#`.ɭĆTV#nc!6,JjhuT.f#=HIo7[pUFllOm\Qmi\Vܺ 9a yh%2Ɣ22FQ/; X!:jLPF-,T]SM4ftCPDNmacbʎ3w? Yt5+4zr99vy`c*"DY:+Yx'D>Пm8''9 V? 2rjd_-L K_'\ss'@$ǃݒ|%HXnӨMUõ)= 1J*r y42Cz؍Qj)&]E8mNnCdmV , 948ξhw7xnf7?..|,me a螨:lx8;}M{>Ds{ETCIQVˢӰ@xOnуD9Mjӭr2q )00|VYwb4AbEd,#U3Gh*sTBp$eA\Eƞφ/JgZZF8|BØPPӪW!P7,"VTyzd(̣TSLqjk4h A9ݘĊ+a yҡQ*7{V&[;[l_.5ryj5W1a\lkkOHHeX޼X+ 3 ;L}H6W.yD̼9 >$l|j2"5))m=NJʉuU 95J {.`fM(dD[1rvK:3,*Թnr ,*?D )Wrd(a$^1tb,HX$q^ m 1-;'P8D]]w!A/6bLeJv!x_3PC! }[#yV.z+>!TBh"d;i@L.crES7ـ6dJZ3XOGuY-:S1[TO+z} R dC. WZ_%i_:3xC0GFGE^ )P'O~7t7e}V⎍8bܦtjqoBlk4= # ˏi$ց?A Mx5"}9yV_cbRs _E?F oNpǞ^=C8Rj T[hwoԐ03-8b{gp&ɽ[>?+|Ў xw*E+k2bYNJ\f7#(-L!FX8yU{>M? &@V\杠=Vi,q+v6dQ /*vq3c)|˄u"ID(lѲbQ9F!56X*Z.t 14(Fo#y"j?I~wUnDET k"WeCl<75ɱ%\oC 34x)"35*μ x XY,V&FvKKzਢx!!3^!5?'6MTu}+L >rSspz*T _*Q.!WwP6 ~|9U1QSo~|څSi{ z X|"WjO.#I_ 7@û$D55TmY0̓u?uBNVsa3+ }N!jb䋥:cGYA0LVH8sSg`K )ֶT=*tfO1yLwRG_q浵 "0̶~Z IWprU0m ӯ;Mm6@Kd"Z_$30\ ֵ[B@pL B;pqqe<@`y1wu~`>y]" lw@(KnE{0q^9U &Cw6ܸIր"KڍquN<UHܬ"7C1KNS;)S xSdKjL5› &} ;mt򺏉֖@boO3O/RNMtHU2~~ぶ+jL]⃼"L M["9HKûLF<$,@#jvYtL9*"$2 >ش;Fh8 b&Unkҭ+OYW>n^)@&69YAv6p˺jb]thqFEl(es#>ԃ 4-~@,ָ #e6xaRǚ1#ܯ&j7אzC[Є -ǯCH#"#XMc)RWΖLi2B뗝pTAEcJo8|@ fD|XG"N:tAVN~Q WQ`s駾Ġ'eY<\HR8jIGkD^zbJ$ALR^Yal۵AX&Qy'T֋ M`qDž1]hagczUk$9?N- F"_\ڨ#Z[ xS-*Y-J Aƕ W2V&.¦n4H>2y7dab 5ax,~k'zњCmv԰e׆+!pd hq.J,fbH%OE`Y7ӾeordB7eͩ-E 5+uHݱ !0R|*R *5X8ݶX%Ǯb !zԱ{j5*JS.8 @zsѕImaؒlZĪR1ea|zʧVU-߉榳n5Zl[~+2w 0Poƛ`;;WG+C0\F"g$%PKi ;xS7L*"m$yN(\SWEC/ӬJHxh`28G${o ΄Ix0tRˆL:z.Zc &{?|1rffW?u qvs,;笣`y÷Ke6lXSыhlA3 ş߾9ӻfAFͺwt h$ҋKn^7:SJ:IR+Ca\A%\<:s'3 uԛ,u6Vg?KΆos@kCsl8/L8<A0;iQg5bQ>!{:;W̏g +{mbn"AׇCZj%O+5, p5{91ǔT޴? 1^t YߞwuH2ˌC:A3!i 5IaO 5NnH#J`l1""!:פ*~lif8N#174OZi1oW u:=I1Y֛= m/i0YE{r>j% !x~S =,KsS 1ݝsXMx_s6);ƆF %28ߣ9w`6o|{!Hgפndda9 ɽf$3̯.p) 0X67LCF+H4QNƉ 4R?٤P%isYog9TZ|u' ds62Ъ{\OcN0Cas(/.rJ$Tr+3Gx9#5RxBqo⎾2^g1Z"$܅jnQt24$[vQ5p B?B`*oa nOmRt#RXf pj|b :Mq}8"CHL^HK*"sRbx_]5!ꜘ:tS8O!HoЦɎ&{༧AЈ]jr#ξYM?M]+80/w}P_PEXRUHecN,WKo352׻lX\gByl@u-,T7)2IhC8(CѾmx iڊa\.=V层h4F 3qVQΓ:Tf43]jב„=,!r)b=y>=lt9S|Rl7JVv\Ę"Ϝ4Wy D4Wb#@@5oE8B) 67So]cg%ԫw67 40=8޲X-b8W אJٳcL~-[Vbw$lШ-W5~ m%|E^ > z،plO]9!LN*| ﴒwԚ= b %99?8i)d:7?K#f] ntGV{b7{n6a":zs?M@a\Fu4- N+=R떚AD 8h gbU:7U+AiBDu9Y2}̖@T;{X 5"Wr TkGe!+㔯%#Ѳ"N{>-*ss{a>\Xcll4F!$xyGB@y$>C!@<U!}n,!v՟&YA$"VT՞$Tna]P&crQé4؜^ ܰնY> l1W109a#M =z \>oOPdViV'w#ܳ]fr_+$`^1B]/%MzeV;.QQuu>&ƙm|W詨/H{6;.Dd'3+b堢<&Wpo\;9)yaK Mg[n] #+]i„.A Să8o1(i$\Ix3eb)^M<G Q0}~< *9:bD\X޻cUb'Y`پbdX}J{kPmC అ^*`FцD b%/` ~аrH&HMRLLOayFSQk_2~͢*Y}ɵ\<:l+B)ajѧ.֭"aFѪVj EC:>"u^>Sǃ=;'YnEJJv16]u:39 BR7 7-}Gt%[®?ܵ7IsBߢL1ݿ|ȻLfjW"hp,&lsaȚC!!fzW)U*kl$5Jy- 5cğD-QZrOh@Y.Whtj[`&p* U"Z1{rf4ةtImRP(=6fdY?vofYCg @dTSl5IqJUmm==Gi؎Z L%jMCu\Ee4JTbo3$k ,1Ӕ 9af8p'L8,f5gp^~.H3pB ,0-{]cZ\ԾfJb~pjsVcn4'U*.Q_Ye sҸ)4nEws^^‘@QEtTM9=0P"iHpqm.hH)YsIYc:YYCG''WėuUA ?0n}MޖJ{ONЍPNŴK@pUA[L2CjQ#3d5avl;L+()v5w l7h4ƢE7I.ppz˾-S> pR`[ Q@c3{8ר1!wh/Dj}lQH26?KWhgNۭoH^XXctU;ŸKuT E?RpxA7')t2ѝ !fK8w6"h݌YѳlYoŦbz<0އ|L(EN3TF&̎`]mj`>.lc$F.o],@BdN7_g|2Gftr9#%\ʒvs-Q eUYZR{YXVhSuIe~;ͶR.9J}9Gir38i6l9zIE.)xp՗fA9bPYCY ^l,KV)瀄3?^ㇷ-|Ynq,]I"0;ڶw}8vɫ־IPm10vd<6Q V3\Juô_< 3(Srd$$tlVB0b]h[~%ɵkz; ل _l {[S)Zor٣r417as$C>"DZݸ9_}0V$ uQJwFUs;9w\bfoW2 f='7]ȸ薲}k.|Y%?`#k {F/TAKcrsYq֟˽)%; _&ODo'5N?Y$n055B8㍐%%G7LY 4<^LnMwUۊ*S0s^S{Mbi^Z~$zC8lX(^Z5Ea.Ɠ.]?o :w >cjê˭8 M밑sLaDzjJ[~)a&j:܃R]+[_p]h% hEZ|`|@!ޖ맲2 @3M%"eJW SBVv\G7yK.H$Y1^/'? vYsṖW6q{odbbAm6R~|KGU77,ІY[NHcU0/U Se({{㌋} 4jjFV2ς"l_D^V _1; c#k{n:a qCp4ϴ{4;ТqsLKZEt'g ˔*E%-f󠓰 MTb&ULQ-a;.g ߖzb1 J:?6&Csjk .\`K茶t"@+1]J1`: 6}2&8'x,oNi񛮼|ZweHa[)E_HǍnÖy$-Beuz?gAAx~d%ljF㎦JqdGDQf+&j@XU+\=zbZUrl?;E{GvLT&y9bhgS%{@4*,R MŸBUPI0+ZI ӏtmÒL2!lP QRM4|3}^ U#K*wټmjckv^;xA9KCQwk܌kgT9Vߢ&N>7j n\VjQ؞'ucmܐka]qL7K~Ͳ AqJ.Lx`ϋOEMŦpx2FpHѓ0Q*9E>?2Q|ن`,7/ z,bPs[P6c~-;arysg`ƒ7붉f-s,z[yȇ]qaD{`X͈B/A̐aU&yr'ʝCBhM1h.FIoˁنml3ϲV|q H N-` g7h4Ȏ/1jD_SgeOYoHܓ_ ,}O˂$l0cDwJ>s7.r(tfz'D{ݾZ )&q\ JGhmbK_^ Axy ₎Iz?eNْC/ŋvv7un#3ˡ,[D OwϦN>- e'0 Kvł-J!d_p{<8I^'x4 2 )LM(Rb{ _/89HֿɜP="Lb+0Љ˸WVyCR9PU_lE f JmX Jy !v׾߄eOH6Lk3VgtYzpIM@p<n3!pbRALmڣ\ ߳=#8AN{[;U(\hC2\Nb1؟n[34w[MK?tŗ?|eԌilP!?=;Fj>qu1Ԑw^75ϨdBy^)LewݓURep5k9'P'5vQEdcW9\zf$aK~ ?c=튵ow;PUފۮW\R(DopkzʸBW3 Tbf@OmqZ\eG9<7tԚ3x3ft?f׷ѱV`|39o}F ^/;HN=S 6XYpF㢰o#Uq%_RyrI#΁r|XDl,1&*G=zx<2ո۽QA89`y6u x. 6@Lr]NB5(b}6& ù \ϣm/qn g-L ]#[\pbtNadDg*`dH,K`xc tsb*w(9h Ffy/v`[h;E},e\Eem.5 `Ib Wؘ6ܙkU+˵ $(sl]J9MA+;`୪7 U2cQh"\b$<q )/a=~bS~Ⱙ7VM )VC(WY-S6ūذV)} M&uIx绍(7\7 +cO-%miƽ0i[_k<ԥFwQ9˄7ID4VSYHtZ:Eh@ڗR=JI HteraBb\'0Ko=s>BmUDj0yw]fnwh_@K N 0=GA/$DhЌ~ pC\[?4 ov9#1"l춁Pq7 '÷%Nɴh|P-WB*; PeWw N8”2ά@5 ̔az e(kSd=^, CdQ.RfG ^jl;^X2`kVOL Skr(p ƱcbK:9*TAgg%jߕjt| 0z -.!6GKŗ Qj+|e#5ZoFLB^} #rHGdhFVԞ'VM|G<MËS!dUvjY-n#)v%vȃƚTw*_3f^v1?Twt^'P l& .3i ]jw?H(lltb<  p(}T,:v u fUzm"x!k322PM1faq+*ߍ㕚M3bca&dl0+֢ȞU :|+-svn"_tF,KĎ .Sԥ~~'FGI  dޛܓ9eS+.PT]ݶcx}M+RH萲¯2o \*! ׸֎8 鿞#U_V4OfŽXg O"seݨ@2ݟD\G}8P|5x ;tHD F(ʇĄ>2OSTmx!$e C.St]PdűkJՒ'B-V|+0!(IMJy<{ +U}ܙ%XRRKߠ@84aWHW Xѐq"* acNƿߤ\sԂXiS3aqLF! Xfr8M?0oL}cQN?h\"U,!\,0I:o,۩BZ?!7┚mT_Ee#zFr &)~b;,N  EQoMgfjZ7'Fr|`?bB"!vVߒՑAL@GV0_D5O*+< סVAVZaW-miHOu RPۭ'AS\^213{پ-k\ 6/:bҼ,؀f%nlz ,~9r {cцbR;hbߘ/]$+hiSrL4-^,w))gɐzIއnޏ6WSӶYu)3mșJཧC)<[C҉\bK-bފI "gOhc@O$ַ"~R^ K`/O[0PW4O(4l%cKiQr(Z $}\hrdP>\`83noӘڄ8qnt l2RM.{jWw|e!_.AS٢w63v9 7uj9k\Gǫg|`!V5v>DPʇͻ|bv6R#ZU; +۫9i%<}ħ_2*Ș6^Vh KK pɪG 8Lr>젹Ujۈ3Q2OHrfY{mrX-D۳6A2 QsJhN7J|*zL-xp@rW DŽb?7${;LM0lM9CAtmvzY '@āJBml9~K^fhn!<=gAX  %<7Â/hSo=vJ?Aّ<%t[<6^(?fHv|(d} yʮYMhyI}drbUq!-mr?Z|F )Q?['y}b 1ldڧrȸZױf~g573NM>{V'=9snD){A<8].I'%>aA%Lt?j\J6iIO$`krڅsCi?7ym"k9sp=3Xƫe!|T hBo*SJ@Yk{]ZTYvSGYG<ljn)7NwrPjB;Ҭm?!D[ē7#ҧ^Cl̫^ rnޢGiz,u:l 2m9]*i\ݠՕSuQQ:,XBQ$fnqǥ};2Sm0oyn/:@U0xBg,>Pzx`;qxt2IvGN;H22H;FmM3vֆ6}BO){NC}TNJ.mQ>ө4֟YD,ZdmgI{)WyDe.O"Ԉ/0E$ch'\RV*~)t ,;\@6MVt2fJM;RjTO! ߏ7J(4!BnKFXBWF]e>H&u9H2,%;Bs_ҙ]zȖr*L`7r85KzkbeFM"`JU3iUc/M4#XYE "t5J_B*cd垾,q?2[<˱Zl!pBSxF"̮+o"u8r%f.B/5ߣãp~)`Wt\T^ o2 s6eB1$HD<;Ξ >xͭ% f~`4vC.PU'7pl,֟/Uiit%yۊ1xDJ+(2C1N1k@ )tLDW*0 ; .;ň>P+DboYV_gHcE"$io]eSX"Ebo\7Nv{YFӈg5Q# #2X}قNh!s7QdE3 Pe]+f J8n VŨ؋+XsTG7ÂY^GV8@_ؕ>_Z8f:dAJ/᜘@KO^J%I?aVVZLNz>Oz` }ScJo TV8$E=ndHNY72耜X$0TDgyJA| hnR~v`o cZz.O0(ɂ=w(|彰 ēV(-vt6O@n2,01),<0B7Ŋ.3*AWO8P~I6H͋B=/ПơK௼A>讧)%JRIJH!X}DטUkKw_Z%cxUM0_#uuu1:E{EhHnW3+&wGqY?}KPh Y+VE]A"Z#[Q)Ӽfp$2JpLe]%Kq%}]hjn;伲5Tr#ʉafҊ%|H^+&禂y+uT$Ŗ}Hxg7uo_w{O@;ur$9*TZ'-[F_IfغNjS~`S}!)/&Or٢[SVVU}s!|sj?.T_l["؊LD؛*Dm]uR6%3ƴQ`L6_lBpTlbŎ*MY.|zy4Ԣ٨,\><ﭰWS$LX,sm,WA'"IfV)kJPNwv8.Œnvh+h3& B[(H ȪT<_{LX ϓ!R Ly\NQ%)iY0xsE-[޴y'9 T.QW^"s *!Rw=˥J˵yQ*g8X8ZϋK>A,c "I@nᡮ0I`0[WoKO8#"Ea_bbHm5rL (]&ȉ \?f\"پ!v$D}8T7^o}-jh&P$2kC fkL$MAK$iGcn]"Lb܏9~-.n! 2G8&H,w`"fRD4YZ:VyƠz. ϊ9j\CʷŃ1۠oINּrriVhDH*B"_Ӌs!f ϵ~MK'L+r&},P`^W&z #8fq3!L8-U1mFlq9:O?AydĆ5.Z{5)h\^CF^p J]v#:B4&9_՘SFߜ[*arhUo7AC8n/ܝg_ fY6h Ŝ|5Eo4:EHO._'٨IXG|O8bs^ I#A8DZNx e1D,QQR*ܾ' $cmsUWw~QgIX,V%P.,$JqHp!QϠr/DZ ruS0!ZL ,.O*ah=sqlѪ|kHEķXc`|aby*ÿ)8/nSZ]:c}KcDQ&?1ں yfsϵFv\ *zds9#I%E2 f#(wDfR!}5Yg2a#AݝjLr: V>BbۻMׇĒpQ=p;>̅ xZ7 *`oXD `3̔F`]DxpүV4?qk GfO/)v{ylI]kԔ]yz\p1@cqIyq $ g &]HNM$ƈJsqRA oj`Qy ӥeΜ@PΛCAc ? -O:wB~ֲXvrGÎ˪"^\KC1f)mItϛ@,Thh̙e1țȖ23.[F߀*ϫ;+'Tב!7Tz`b/v>zLU̿ L/ DQ~/GGpg.&/5:JyVOt:ŎDwk$Qs3&2)?w '/3LJ)F[{-w)#Mq $^C!M,7Zv_K0*`ĴqڂhmrEby/etV5Aj+#J<쓊U&.!4MnYW ezUpJjGeB!)HAkjJW֟U^di>U~raXptcX1ꓕXp}dLV`Fz¿c۠_l$$QYY A{La41&M_S%XO -\#ٯ_`&񶆲Q0蝄SسG ~raLhcUCPvW v%+jfxqw:("3c{p Ij4}|z#|b ]<\onZbң9oohL&Ug"a! d3Ms{Nup78Fk:yW3iB sbnty[5NP:( Q_&(䡋ljFVB دs R>$='RY`B릨e d?/"|;r7K?4w8TYռ0n:ŖZ5+R%4ΛKٌ{6z&mYMצ&\.jt`Gs+Z[E$>P4=s u+֙Pxmnʆ{n[=F:Ǝwqo*IGçB~νχ'(VVe ofG]8YwPrҊ2!7.ro0CzZXh7,*J+]C}AYs6׏f5%Lo)F͛$EP^ %J.zAQF3'#U&Q骐,UʊxKEQn/]qϟs9EdV,\HVbtb󃢈]G#zd{ڈ|4.Py~(HhI&PXJGn=;Y{&ph(Mo|/_M Q%a:$뚪+ 6IuΊ[<:k( co>"hd!UqO,mХKEp"!b4<MfgxU-"B&Qb;8w.3bxegнϱ8 raV%чTIJ_-K^vs<(^VҶvTo Fzo=[2O.>`*o_`ָA>( =d,&tWד$3ܭUqΥcN60~G~sY(b*gLؤW컌q줅Я+DN+@;W;x?ed׆,Qn9 `[>dH:,ܨtK`r >xDf6o,buGpmWhСOXpՅHꖽ{XR94,LhoE)|=Z̺ۡɬ"eVIYbv_3>X?u,7H˯R|Y g^|q hj6$/oށ"-RXYWmJ]64H%lD_p1.A, dIX; Ό`٭WM(p), o [iǨ1a[m#Ty*ޒ8 8I!^%Yw/l0 uOh}:XOMyŨ` l&KQCC( I/jm"?a "Z=f [å,UF{Cv\舨݈d=*kG({{>\ơl嚡R-*dh۴̄qOwik4 3_ZXyΌ=:9xuklBI3״Q>*JAtN:Cj^06 N]!԰3i*tSZ`xrwN)Ew]o^WcQj^zCə;nl!+ \Ss#I(2m`oU U/F8G9Yi֯Ճ͆fh ܜy<]/ntTdzAْA`Oa֠ywDuva_ $\4QO8GiZvG#iA9Uܻ\e;{gjYO9{Z"4!aL4p,Fw:Pɑh_l">;y +-3{Ii&;Hfe,BM"hV.v#& eB٣|:ERv_z^`߲05{Cxl7W6b3E=" dg&v2]ӋNʴ--` 6|i}# il`CST!`%*)wӈԵg]S8[vz ywJ*PW9s*f;A_!bVf\ny9[Z~Nc60dclș)]x`W8?gWT;Ч&-9HuTzfɪK<)y 5ץ;0je8]ƺ<|#-}IRކqi dDidOO6htͣ-eY\v c[< ٳO1HB@@`f`=<Ɲ1[9yGkF/:~L$K~ B?Be^t4cf>39rq:uC_BZ&FrLY2p L,ASyjM|qNI>L*1$%Xp| u}F'ЅG.XK?eh\9gXW'^cR(J_UOV5q!'ƯKD$ }u;М6'Ac biJ0RF#GxYYhٗdZ;Wt: GZ.?"5p딣hZڨֈ~~Z6䋬E!dy{&#Z%צ =DCSA( Mϡ4vkRV^GO4edÅjngթa|qD8&}K#!Ģ֣yJQRѤ5Kv{e6r pSdBYzk< BNL8_ ՗7E,UxG .X:%)/9h7&9KLe"06{DN{·MOx3b(}Zޟm@:B/C\ .K<]$ڗ50H0q8qdqF“+P3<߂E;NݪBU{|j_I$ B剌Dz _i^ 0 }F(ѡk/vPsR9b@#r'D hat7otֶl<)9Lpv[:|Ni/2c؛Uf^ 4l|"QuAEV] إ9Z  9+b= v^ =1e[QDI?j!ίOMhkrn2/:Kx<@3?!'a[&e *ӽ',l@,3w6Y/αeZR ׿tLaku"pz!GMPA_KFWqZFF!EDr!|9h>"lwb#oT@y:qFg]T׭k:)h.aͿ%/.2Fq[}™+hW1Sb N{|ΈR3gAb1#nYRklr}ˢ5sƋ,EUQx>xQoff+42?j :%>*T{AUa 1|+d_R%]8t?{鞦UG-vFi{Eb#;4Н=΀߱d>Z<<#T3hf6^QCJsc}}~юH:x<w5BaU@ " Xۻ٭__|Е/-gBqeþAjpW鰔Lgv֘{ " c oHOWD+?mNyaabfKFN˙:јs(҃+OUL~]ͮ{<@NŘg?܆Cz@m ~bPq<3{RLig6M叡wV>,.5ID2_c{gt!؜u׼j/0A8Nb]D^LYKQYSS?l腽.!$R%~6Yp!1_q3S_o6[b:uӤޟklpp[޵h0 mpr.-3w> `u GkfZ$ugF߮)`ʼn.*+9p{\NNu~m@P}*ᆇ_dAbT='m< Re nlvdWp67et=9n`>50<\FgɭVvm֭ )qn uT"8:pC8aB{^sӂ^HLpl:RBu<mO[a?IJ6fϙ ((V0<H.k85yP //WWGj^K?ʯ{KCNΆ,.gzBYJ'KL(*]{3a]~j!ܼSj&YF=cAfqZcUʐN{wOPU>Ps kv$H8Фۋl$QQ :|[OGl$W2AW占W Fa=(wwۆK2"礹Bz:A;mfqKV<'#'ĐM]HTHYDQryPx V-; 'FM3ئ8;0&=_FôRLggK ~SUg!RS"L%篃=>sμNdd}>T $eAWme^`>1X;Ѕ~vy_~6&Om6u||3uGUлtMή1lߘF ޼W+QA͡lQeJrfxk0貶;="F\ǭ_M%@L4-,@L`g%Ud>~Xr=RU{uw=$WFH- ´Fw_GQe^|k)૽7pU$=[?? 3w!nvr&Ą?j}cYmA?R& n2zcI)Š;e*#`kx1O%9e/t=0wTiszaϘs8KR{&TÐι#h q^`4֘ae"h %:tG#xX)jYJ"t%b%CǠJ^*N5PCf`}I2 Gn3]\=/b]8f-f6E@u - ~6߀<)$ޒnfan9_?KӧnlxO!!5`\Jņ{/rUܻID62p(KU*FԒk,fSN`ֶҁ:)\07M|) (fA9̸7MWK+a\ i˿v'o8]tآ5?&Q2 "|Wb@pfǏ TI!Jp'!׽ooe;t)w`^[:v37[d@)E$  OD zL` tf9>Q#^>]s.(-Dɿ@9R NP_O@ h|[ Z Sc"7G[G9"J+O2IYwO;1KސuS 2-*❴7IP@9wʯ֤Ǯ9Fc2Mmc}+& ǵڦu뛀iتsf;AR2l""-y-ܸ4)/`axli^pySoe|g[F=sQ]A4`=[8/Jơ$CTh 'q-jD  P*+E}RL r@XwUL=zŬ TRطdL:ڳ,\bA Z}{aZ 6WV*뢼*n5yvf|"CtLhFR|0M~ hN/ʹ]ݔ2϶,|" [$-w4+eTYOHZj)Iȓ7CdGҹ\^I80|̅$]hgrc>@TcB1D N;^6OkgM n8;;V7W_LzWeH'jʎk_c Ի"s%A)TF~(( :U)?3Z=dϐOqaq_QܞY+㬇nO n2^@=[N3MQN."V*5j#h-3'}YN>i5RJMNi~wxl_%SR8]G~m@Imv<ųw6eia50)uRSٷ:?ҫWђk 3H#y@';`D@SQ,`/wHU+ר)X@;wۆw-Q5k $oei)T]liuehۄSt@홫$RFGVcg~ ;EPH_[ {c GI" vlOG6-5u b)Q3Yn*9{ooh(>=wX ?GUn|IGtyB/F;ʋЦ%9q"EM?fzv I-u8|6Yg ꯆ d7yʱE.{/,JDO>\iȥ.hE?+WU0I]6Oj{ܞHwEJ~kZ߭[…-cv"J(uǿ/ h|%(:ٽb~@zUFfDs1'nA"PA7n̒W6uxoC A5 kA3J!Ƭq\ٴa}E&%%n<^cfkJNv\&p͞4@Jt"6.'g;k_[HJ/jI 7rvWâˮ1uM \`]wؑɅ[bZ %R q줂%MSiKĥp0oI .н~bG"Cn`('$iWnq 9Zspu=X£c k<.XAd%X,Kag@mXR۳^`$SPXpp$`2`ثd߲m}G'<+Wmu)oOXÑSތA(Pyo.48ǽx({`I&|CWgX)%̝~*G %M.(C޿8QY@5 [$r̽6tn3eF)tuHB4{o _yi%ÅaJR.28e}Lm :U8$3M9K Lk@7ܻ5UK"F dCF}hp|K:-q Y< "wBFN5\%+Z+kC ":$#Ɏލb: $^+Mb7WW[8hV x >;J#F#˿,}f:ߪk02lGF9Jh"8et :GRY^lޭ^ )Rds,/`>~O|F2ؑLZ$G;!O ?4MM>V_}DY?b?ZJT={jfO4f n =S YZ"hsO"t&:-Om*>`zBM2X=#<ŷ`8d.벏[*"(0!cu7@ Vqާ&l@?9>ꄤsjtL( lk㝠!5ڵ*r,ǡ _X+^2is+Z]oԖ9VpӜ2bgi_-\g|:(psx2~8vtұ>Ȗ)1tc@T 8ҍ`l~,2((MNZْ>y~f? CGC")9B$VٽIYvB hXdFMI_&]"$_$%zڂ|1+MΜbt`tbI W\ Yb_B@dW#h.NwADX}@$|YKZS\ҵB߼tI2sh \?uȜY Xl֣\qxܸ*' w.D<9<4r#~x/?BR?rp@sҹ}f|0x~^m2"]4<٪lKP/3[?;`)盆PbP S!# RU91\6d iuP˭Dsw,=awui/J #nپqche2H8 NCFv/t=:.P4oql yń B/fۭp.'[b"qia_1\pT~Wճ.zhF v[X) D :Ͷ@ cY&Sf ֤m6ƔAnQƚ|RMax#RnJ7!{C]u!r֝da`N3d:WKȜMj'Ր+ͱόp{?i9tے=Ӵ ó Ԗ48E7^NE%Q1XP((.DJjUʐ Eez%)pmISSVX1kT:WZgo;Q\<`}DG];;(Z;;]Sjյ̗o|BQ֮$@2]+le}6}U^m6 E!&N~-#ߴe>6rPͩTHHbyrRLǍXR.iFXus3b'4.6ti\k?o -yM0R) TЩ̋'9h%8.x{I0c͝$Pf|ϗ|TڂϙK|v{"գC_S)ԣJuR֡XbSoc!撩vAEc}&GrwiȎnq8_\.:'\׫_гˀ yWԀlkؿgz"^Fv̵5jTk3ȁS2̄p`9P_&ÓA*lSܔ=>=^a',~?K6gN´臞4}Yb5oQG c>tOs-.*+հr&:wQuӠm*xG.m9K -6\Vv౭XzYK 9f4|*c\nS !P>:DB /=T)wuSYߑxd}v,\s! Q=8ޣ(-8Gx 9^~j=փ>NL(X,_Rd465YHo^B:>VhL4a3[*Xpq$H H[(a:o?XU$:2i+W}2d2 icJ=~`gg}Tz3k?$_f[Piy"kj)^<9~I58䱹pIEry/GZ"\w>+` B#c@d 4`3e&q6-B80l\%?0h>8kfqC}xұguY='.ח&e ԂTS }o#Ԝ&خ7DmwVױ?J'!Ϸ6%t1{!L$d}8B&qq2JT/⠱ 4WyM&@gwݎa+;ۨ!|f7zd|ۀM j 4mO4_[$&ȉ!|xmA56O"H3[ugKWC>4?,9ٌsg 1MQ 1"O\ (2.Ԡ 0`֗cea)_.o]F3fg+-Ӽ@b~G_*`+en7 N[4H<~&?S7%,Bqr؇'D\D4&rqplDUM~rPbQL^ӇQ:bxHO%&P->8wccXP4R7?>>FOkStC:G4 2djaj@y^܅fG_R~7FW+s*)+uA6PJryWmP<1d.DV={"74#1Vc@Ʃ/aVL]dnTh8{ u8d0CGF@jUT*qi#c[ [T*i1MeTFM`W-= ΅\N$RP@:6" #yEm($ϩ*ki(:ۊ V@%D#6TS4Z>[B)^>56#~*^'V0EH^rEQ25]Ċx )A_kcY̨pQ9ER[BR~TTqoUps(Aݰ%쓅}*vUCTS# şb~_BIZkhP"`DVGOqLٳ;#ͺ bh-yEYkSO[Vy/=w)qA;iǵɖe19ڤzSW SzX> g^aGYUg]ыW--Bf͂@ޓ?@/kLc'[Ҥ H$^T(l$Q3g(| rnEȍƈDM'K†  mqZ,S|.@uQ:Bu\LYrU`͹lAW_>u98A>Jl+)%y9OI4 Vs&s+ԙJL __?=(%-BnF-vc仕W踨'ZqE#UhsEV/+L';Zc_*$UjS-juPq:Few 8fUV,UR~$~!Ծ ZRݫ&xmE3fМcL?.p{`&R@c@6n@_N@*H DzR0).jhjkX:^\H$,E 5O'Vז5x?rUyпQ vߡ5xyBd#-/FNI?qE\ǖsW cWܕ ձynqؾތWwaqAqn.8tǐi{`L7(Q=(c1I˛JGX:0U߉>3Ϭ-lbi%Ustӂ"5\0d)& h0\ -isL"5X+Y ^d8_@Rc@x5=L|{]Dl"U=iJ.Gv #z0PW"}9+>X-ޞ4 {Iyu G+6cz?덍ѹLM!dNVTA fӒaL5AHFhXՋxUffy baQ #w~ ^Z菉ٷdX RJH'3Jl.4XMu*_K^ .ŪN%G\uy>,%ޮm59k3^Ϲ+NXV|,@)0J{6IϪW{zBVćZk+R<H2c(-mP@. ތDd%4^W`ۜ@ʟgGF 2 hB s]]\8Y=;FZojYLilu*5wŸ[vs$21}LV`Yqn 8`f gu㉍o7"5kb^,(R:o1-*x8nW=ncm,r Mm,`%3w NqwOkCD- A#yC5ia gPyVCrMCHWZN&]Edk$'5q7nH;wFv-?莴vrbUљma8F#JǽeOz /{י EveKufFqi|C7vF(\hLﳸzPF-XF.)@nh\#\yB^F(HTBc[3?w81+~%K{Q](HN[-pJǚ zYRkCi36mշy!9[غ^P{Zo RŃ7v/]9xe]q=JТԂ1-:pi &wA 5̬CW5+gк -Y/h<6+vw[hfA1|b#&zkY2Q$"yS x&L%.c;kgy%J S]/iA2rT+ JTQ+|Q<`JYD ?h ϡ!cJ ͻ S,EzwfL2X$m\k\dfG܊G GǮՏ_oqH?5$@2{E5>p2mmTca~,sޛk+fO^6eF 7oՓ4$I[ttJu42x9oϸgqKaW$h~IZ\jAk)437''^bk>ԾW3>z@)u⃜Exy$YfLك˶@%*-o^-ue]ġ[0de^J# qX]h5&T<$%c \aa8P֥)בL"K󔫾|O=hL!hX4*uf4(CAF8E g)6Co)>LCQi)<[׻֍ XE ¶NI5F2z# t湀TVGdX\kڕr,+qLF^Yakf}g5 a hca(-N_T%0ULYV}j,Wi< 7 ~L73rPv6i6;/ +ۺB̭M/4| CUb&H ޮn6g1f{!C0[An"ĥR6{%58E`ֲO D#\3X} lQ,qK-lRZLd ]Ql;X7 X&u)e 4Lq? 4Lk$Y+>|_FgvJ{iLa0JJv$M.jg`e kd <`Q!,^Wf ZoqlEh 6# &Q;EXdŊ zLD7 ݓor1tu&)@2u4ގ 6 ^O{@Y^h$~:ھI  5[aVy:sӜ @ᲁ`\IŽ |כϝK޾2ﶻ+%C,ףqP9 ]=u=o@;s,4aP;R(,gWx2'?KS,l.thY,sy¨P#i΁vi7 =Cn,u}iSCԲUq"c2?Ӭ$ep֝ԗ,;,R7n17X|g^IPeSۤVbMV <}E]2 d`ŞYu3WCi.67EF"i|p rusPzʾO@ow!k-`!m>/%j!/H5w͓ Y­`ˁPO ),$3q8BKael[gX' 2ҧSP;B2c ,j8nc:/idM '^`e(6` leѲ8E@uf/^*> )z+./h诶ܶEevj:&MoJL$Ez!oiҎOoVt ##{#K=VۖxA1Ԓ&M"y"oI'3ŜW)*T=U QaseIy;zQ'ɗciWH06puKFMi9B =o|3ݐ#(߇\k[ v]1?i됚5.Mmev["&nIiic+r9p~'[iR'D~8:D>+xoR(.I(!  h+PBkrz <ĄdčsdRcqr*?[䗶uATkGHtu3WA"bCkFiiѨ"2+3f%%D)vuh x#&Cwm.[n3jZa_rG(=ӯmG@P 5̳=צv=/7qm6i!j5rvNTU\ӥoJmp3RmGN~ކ=`X7cjMϙߖX;b(Ca .. _  ^GhxUP4 q85杠F$.Â1-5'# Ha-;36ȿW>H?js%xVS90#krɿqa&Q%Azǰ:oI'u G}> {(""rT$ 3wZGVyJ4G'GLּ.m^(yD/d0'Ȋ …CĔsxajI;V5vOZ?]F7<"'I}uuOO*%ғ~eE-gD5=rj]+5+큽v<&@9PSNi{GFQ rNad m"KtY$%mS`gHe S\W$Ȩ 1U߈ 2Y dI|~pa4H a-7UT0HBTEU?ZD6%R]Bt̿-d' fiKS(qZ*blXnmP$XG"Sܣ|4C${q1&Xja}^Đh}x9u+݈0$u7?. S]zbA?y5J&?F~@gteT7J#٘jx @f3 Zuo@`ayT!ٳ4 '/ >8\jཽ7~m?_CLDt $U8mɹDb_r4D1*Y]y[7/pRMuFex La@_ղqa s{EV#bҞR]ffKsKːLS 1fkp|_]7# &|}xqp]ٓ= %`5N/˂s ALM8g?Uͦ 6K&rvb[`x;*ǤTSmB S6 Eʑ`XThs"ӇFH\фpDxg>Gz m4מuT1_dZwu^A:Zeuo}TN-L.m${*Zfn* 4KM6hEWNA+n7^lnG`] Ok d[;p]ޕ=c=f#,BNwT:#O?*{AhÞp^@ЃGW0p%K/gi}*؊L9 ,71n( /|l둦LؽH[PzEʭH-{}}fWVtWPڨc(SZ Zf,e=J\K:ST¼>O{ ![n9x\i4;M*=z6sORI#]TWwP%I'ͲN xh߻fCn_Z7"f ߪCdžV%-> ph聆veT/a Z;~JSy2>l;ñ`fT`X05`r:"wޙ/J_W%iX Yl >~1g󔂠ݩ,U?[WxszD>g%T%(bIk0gRM?Vi,E]zb9s[~)\O?WHKjڝQ+v(%P3~PZSbUM]XׅjkgAS~F\GуC>aⳀݢ}`8yeA60r.)Vpe6Ms ~*kEx93Bkqyjg݆&^J.I2 BWb?qȹ޷7/ F0|eC+!QxhIlaXlwRɟ Wj\>RGv˜GNb[(!!$;ۥ* heŪW9MX=n_+Ћ,J#?YT+d󥆕S+e\fXT%1w]jJZ_HS6bn*\@b lJ!`Ņ2" Yq}OhBFă&K=pK E e#@t@bѺ-A^y*txX!Ԝ59Piz'WK7O%]u x4Q*"qׁC`}PȘD/@]EyOk56G3Q/~(PL~.IWz !N(.[Xi\ c : kU5``szsmk10™9<*A$m(eSP#O#C9Bp³ [oťW*?S ;t?EI9ĨtxaA{I&mz`sQjs0f%N{4v ^%=.wЖ'?Q-O18&Ajyid8v5R F-j‹m=t!OQD 3\x_ZTX5D2wmqg9>0kA۾EzKGJN!pLϗõv|uAhS߰%"W - -xt78 7* G쾬0v.%EZGY%`.sIAC6;)^ӷ+oJ~!czs-Dn=Ck{4- V]gAoR؍M} ?V,po״y򌭒Jmss"j8wT`# .GnN #FOs@а>&Ma<Qd5v&TJPuZN+>GXP>UL$ݚ1'*s~%'yNkp/d O\і!}A mVXokRdYm^ԭ}Ih2m!N'WG蚭F-bГz1Y` +܆o Y"Mud =w*I)Y%-~+MeZR磴 >p>5"xPC ~dJuo|mVz4.=.{LC'ψ`TCb;T]%A=/țJ sΝZ~ < 0d1[}v@䛒 6-7rivBxJ[j-1F@:*-"#va]PKD" EX4 x:[%%/!@yb,(jX+ZIf5"&X3 ׁt):*i\ǸMo ~y,:& hȲXHr rԇ+-2HH$X]t{ZR:!%*2wL%=_ E9 lwt|JOrp6J1za^ ~zWsHnBه}-z%˥!t>kvY`3dQO?Za|toߵ6h ˺&z;Z;(-'t'3W]wӎm=YPe%#ͼ"kKqC{]Qgp}AZfڹ2~rtLfviOHA-zH O>drYxNB@4TJja:Tq>~Oca>, n[hZ׻dPm;?eU~΢|f>\pGŕ`oH>^|% b6DZ@nU 8J%|n|P&dRQqBV\u2Vjc!@9&Y'uy 0JqGuH `&L4XcdlY`BK!ꬢKk:y2a2c5ҰRx?y;@倫g{,@ ַaxB: 2V_H [xWxAz%jF 8J#;E2Ԓ{q۠=?$!Yo I넝p"H M_>vT?rer(ZiM-ThtpI7-WiL^Q0%~<6T;$? Ɍb+?T\?{$s9JY+}_N:hDr|ձ շm, f4t?'AϻIO'4$6EǢml8^ΩЩ-[Su=yH s R9v0*|8'*{̇b$]5͹j"Uy=asq^l^:`׬EHvHI^%q>w $ HG2,lߩoZ5p&e[D Ja[6Q0 ovsJWBD¦cn>j6~X4 ,7YyPOf~Kg{$-GZ(*ɔ ^xbr>8=O)Vc?V ?ᘿ`?Mv`$g糟q1XwIŤ䈞qOKpb}SwB=J~5cì9%w%>F3s9K4O6ow3[EX㵔ohO>v,i z14da@K)EyHzM}zpӴ..] YNSQul=} ĺs㼟xU~?rtU{؏~w{l0itDF'զp7 /7j>>1Nc ,,V0@n=0$|yO4[CwWl0m M_0$.>6T8:ͻ;ȮJ@2[:q"@[Poy/Jqf2#8(4EG(vnbEoJ˅!LӾ:2ˍ:So ~ 6 $at'&G`^s mXv\Cfb 킘.M qRque WɾFYo]<5VXuѥ{tM,4m12u {Tu9dYw ifm`̛@X4쒃ݠwJ`'gG&6YNcrJMf$CGTY̥M.(ɭW(z2; einLb#c(lw%oa3CG !DzȭRF{ * @yL-GHH!Z~6AK;`r%2o \J%J cfp.X>JT)zI=9x1f6/Pn6O/\$oHHY 39h;^)4҇!狥gAn4(~^ Onz`0xֈNG4yd&o5*P_ۏ0xnuʑJkRɺAs eݖ'B|Ղ~@F6qh~go:)yNzIN3Fy&@j.L"ڭN\Gl#kniq9kY{ND/MxQҏ>$8=ef4Gͥ&Bנ@flnV j~Ĥ-P,InEFCaP-#f\գ2#ݤAzh42_R7""jss|C*W}& |R^OIS4p1߼_J~\L1˷0gNelVS1& {^8Z9PȞn\UottE`(I/2SKӻ_>`!B: 0K,֙)/=~R8@p r6XF$+).H%lՙXr=HHDym<mpsczQ| pXdh:ͅzb_a9q*{S͙1]^c>5ܿ&>АR¸:e<- o- aD7{M(4tz*ua$%mpN 95[!b{@bi/c]Ruy)Q{DǸb9Sٙ_}.tAGgKcU g3躱|5E\A03} SB);7-ۨ^s,\>ӫ#.߶WFQTvb ,db<צ7GrLZ6YKIvxz83#DZy=@T+a+PX53큧FqbCUg Nj몌^(&;/=Dw 3cǰR](dH\ ;>KeRn($foa;K/)45jL~'N)[b=s,#.9:859<3z\`Go\?RtNEMѮZv}QaJ#+B v/q6hJ~U yf[#J篕>B[ZC@p弸_V1t``2w'1pm6fwhq̔s pid4U(,WֹzWQ1ғfyaY+j FP^CݛI~,߭A2!WFgL-yN~ # ,~p%64Pb1.?L0R8鹞)C3_P+W{v9x5P`t%q䉡5mEe^㥹=Ϝ{\R2FɣG$TBM\=K˱d돲 VCAHN^?"L,׵r+[S>V[g|U6T1K^8"X $(= yOVۍ $^N6:= 7]Il痘&-I,Ջb/T$U)/kȱQ(7̛z0AvcwfJeQLEFWF̮1,3SlWi 4i@Η JePN?T)f3qREa}$cNԚbBMg"u1Ł<` 1^zx6}'3ySg(eGf}fѱPdqrT 樿022e-L\r.[S[*vV )*NMsUyf&C$cS뗩XM&_n0Ϸw:XG+ƯyqTWX{?eh֟bNci?rL`@dE*p@M Wyآ*r 4"fCB1%t[Z@jNW]{"g 91j5hcqɬL_G>OC]xX[vB7sA:s[!V܌-FڙF.4oiF /n| $ŮJIw>JNmi Z>ilxcAf-AH%@3'Q%0|? ?;$oݴV:V:or2Ha&8%o¦t \YZM4UA l uz~n: %ٱڽm^(|)Zk %mS]* V͜d9Eat=TG's!HHaǟҝ Wf/DƮ/ u7.Znm֮d'QU.ԃʇ $+2+cwg K(gj,xI}y4jf^k0nX?М "51$R;"L&N]&jV^/= b^̵Hp/$6zsBu <)On l t;BdP uR}B%i{=ڕ;.rv+i' Ra:{P4;FrPtA"b,"hg Jd6$UrRbBEEE\g 7` =ŏ(Uz:bb3QL93HPZg,H&rkB߯kgoXݺ 1x@ZSsdtcϴ 23y$5 ?}X_Jc?է?7f.T+G9ڔ_Kd!R0蛭rM XЀ5OFxpiJr_Yt}@Umm:CmƇ8Nw|z2Ț72WE3rX_ 58PIE &C#45@eI5X9B^% V!#=uH>҂)ygVAA8IT0&rd$AZ{r@7+N~mhah\A<3@yNK[K2p G&I oWpY[i, +847)54Y׀Kj}فl'.w*/N2򿇾K/`%yCX>NlEsY@oUA;V xJϊe]iaT.ɃVlƌ0Ox.GQLD rGUw4pQD¾!&NpнNRI|3ZBc-QWfJlv4F]r9{%_ ާGb;rYHca`R0?aq BIm&bEUR Kf?'KO#Mk{' ?I+r KSH~_<29ܰi UROsu0L:v xO pגiVV`".3TK==IN0X^@L;a/ZC|*G)CKH…I.c44pXFj"R-nfОnrx1R2<8(-޹x |?J~5馸E?b<@1R̒ڿ'i83 [#\(0ĻPR?%X|>.l[B#K9md@$VY]DCr: sEW*|4# 3w6NFQmEPH'Iǫ7 ?a7@ 0h|Bm`0% Nqw"V`-م`?; o=Bek CM$/,TKkv0yrmb3n# fdfIӥ 2B!IŹz!WX7ev/ cEl>fdn%*ZR;'?c S/ o'x!RdC)+f#nH\C%SC1WޖݕϑnV!T̈]]l H4]J>][%r8w>ctq WU_o]A䉠G?<n .E-^d;_VQ>𔅳)S.C~&< xF60 fiajU*ߧhn%>Tݛrӿx@Bv$;Ŕzg;Ww"` !>-} >3CBybm/.<3.pQ#SBXMgDBd‡YU:#t#͎khPG8/TF^UOf&^cZs*;BeMɣhx8uvS vsM9!ZmN#L/F~- 69r% +-弟;YPv& Yu`zLIv F?E_2e5S%mEe*Vh2bMԓo$Ց7|Eˍsq#ޑ(Ff=ɓ{0`_%I}^oG$JR]`W3l tCv@F04U!@K b5ImeUfU nµ%*ڬ@}#m{<VWcZm+Dw~g4,Qm{b/ŜjAs^C@B*Cz`RkPnge X>)1GMbyIy>ڳ` /͂W=BثZ&`#hZ\]KXQx{2Fju߉j*6TisĨ%vKf|<1ZE8)K(>s*;eh 栙-[r@hfD!YJ1 6MAV7ONʪPmaik~Ϸ)&6yXo/x37rȭ*>|1J{܊jG/Z"Rjq*|UL0R$%>9۪ʾl[A[d;o KKߧeC|7 ( ^1_#z!ޔQO*RDVKqˮI:[ͭ9{ٜotڄc"^jsp1u ݝpT4Dnnq+eP N|rо&S4VI-*満P~u͇E'*\W7q@3R`M!;̼(ys k4ܔϥ&4K3^)iΆA§9AcZw&FK:vj_+/I}-+(qxDHZ궗SYXbޚKmK6pn?2GڤwWz?.s7"ZxA/_3]^k*ɇ?0@JoI rI(f5/Rm! ' Pig/LH^_s}o̔3S?OuJpdpq9'T׿g^Ei}Pg<?yrYscWAb߫m9m* gM '>y|Hww$2-&\j|Vv=m5pMAhmed?EY+Kch& Ftu LcV_xOk-XdЪb˞xx٤PD APo/c\4Ebt2sڍ"#jjOUN7`:ICŝ2M6GtR”m46 6ZP!7NQL%џei0̲y5K=S;%5P>y>R>kviJh$5gt+QXŇ ƃIn0ub,.=GshDL9qetjk1M1,6}E x Rss[w kK5͜-1j9!# Y0VE`t8}^ Ym)\3hB<RHkEXgȫ?3h䓫RS? x勅)Ihx =7QJȏm\ÓMuw'@ǭNθh1͹IjAiR>BTpjj Ho=] 3t%JWT0T-ˇ]UE|n靓ERD<(݇wjLBx?.]bjJeT_=@-0%<&il1vk5׆.wOWT_ %y''b)fB} ;_ X(d*w?EdKsWHқ4_˝.4 itN'2ù(' :R?[OOfD<3j6ۄ#Q+Pߓ3Uz(:ɶ>2 R$e87,vVbSwG_2Ĺk=fJ "~AÕ i"q7}9W<`YMQ.g>eFt>Eeh/1ߞPE{i퐆US>I^T%[vD%'?oj`.׉hRu^+hdr´tT mV{M}+an%&Zܲn/Т`*Rr$%gS6VB۪REd(̭顨 wY3Ȱģ`>3#Xg`@)녪cMa4=Bz˴,YJe P_wrjj$ V/'7-,]YcN{5阱,+޴)C\i&O+~o^+cP L9|),?3䞎qɆtXIѽY}+vC7o,geV7B;E;(h$, NRb9?rչ|3ȁْL6mi.FIch$㩢F3:&ݕ-zQ؁֑OO R FGiB vdV,Y3+Q {;z?Aor7u>:*~){ &nm#ϸ$=P1 *%߹=ϏD E`OcGO|S t$8 T"J;^ο zLu8bܒO4I#⺀h#s]~UyGFzƾlfԍ"+ ʜJ_kqraɺM+Os0ScT)oN=s Ux k')K㚶 7Eu~"ĭ`^ڄ ^?ΠȲ$KZq9 VFu1 υ%$ɔ ܙ4WmJ>2m^sb"v N4XƢ5c2h]Nc.;CQT⧸A=Q(1$dx9*W5lH;Ղ*'i2D:vJ{"T^@i+[r{pP *31N.ʉo0b{RwhKeJyU)dHnFl/Sa ܲz8~-S\ 冻C?lA写DŽ`- @vs4a 8Z0 Iqkϐ!WfT|b0y:gsY0'Za3 o/w;߳KqʪW#$/2zY:ilu묹Ro3ƺE+r?8XSΜq|G%ɊTu6HZG[U8Bbkip"j8a+8_')%'U9,VeҎ̘&f&y|B-`5eeh6^T" E~=gNHLjPEPk-p) -I^_3D/eֹX^6çA6 ;*{2P M~q[tdO竈Rݴ{8 rG/\8Vz96e4:QV]^ <k730b,eUKUN/a8ŝUt H=QY]F ɌϖmKOp%<=j?s47ZLˢ|IfA&Oe}ũSwٜ[Ӎ խH^<:3 ߈8Ot1V`WZ؞gA4MãAhBw* aYpnnQ:j~VφwVQ 3 c>K.8WfYZ354d0Ax7b0و6@-Nvm@-bnu9(agݾATaF$yDJod/k>l^dc m` U/m&ptͩ` _)Xdq!?J9}`xȮ 0%ϥD{67}P]^s=`'?w4c')^$]<ᕩcƒB| RȼÁC\sAq9yK>VVa[o3[mE|K7]&-y+u8Arm%:K4;:`}˻Ӕ&*NzNX ?l{ҺSU]0%=,_U~\0>\vI/O8MT'2l:WaG$ ݼ{ ʑ\Z]  r彀̙lZ3 ­(,bpj+;UrrFAٳВW;S7x5piL"1z埛C>[j7`T}Z7D+`u 鹘׹uADzOg ~R1S\tXd ԯ!#ը>= PST'\RZBZ1&!/A9gH7iJC(%Z =4[DP_YMh96ʬl6wě'*D\a!H.*AE3_@:չMX!sD.6z2vܢ߲G m1hF[{38FsDu,5(u8<LJjҧpc8Zibi^BS~YO$MP*r65'«+(s[VU ;>H #O[VW}7ހ K*O9Tk\1)Q׽?dݨQȮMMP ؂^iۣ w`\Z"Ly tyP@Dx.B/9s͹xޔ*)LkBZchBdSEI}dgz~h4IyYuA ZATnr^-y]+LDCs)r p˳gPQ6`h[;J#nR%«s(Oǣ?"Wp"-"C8ϳ b^:MǤ2nhSpc:쐶BxuJUE^%(a5l/,|0˔6j@SJB!2AW (+z%ٌͮKxJRݦ^oFJ3,7hG[:hg?0ju ?*>}Ji`?Ixث-)eh3}DP%up @c,iYQJl$Gq,6*jJzRM =2W+0؈4?2upk!ɶݳǮ/P X| a )wZ{Kpn=^haKp9'z EL &2쪒">?bjF>b*k!px2rڠ++é  SeRGؚ=St I#F(SGD\=ܰrÉid"3 7LЎ7NRJs;͹ r4vHwt 黓AN]e*ټ[qn!Vt/[ WPPeۗ㉉lxCǸC2!pYo+x|MO#ۦ(@69,0۲܉:Z`%9->dk 6']eFb)s3>tS-ez#A}%.7 |`uCpC^t#E@DiiSovUv81 E^ HsF1񞍽D~BE}/,pKcQ^ Vu}]J? Q?Oy[hV;]Ú=G0WP?سÏEeFaqY7jk6mXlD/ iUܬ\8&Z#\괖 6n&^)~.Gi;mIKE1ejSB&4@_WUW<& Õgz .5?9ա5ᩴar7B $LI"?UӤw1+&{5"iյ~ 8ER=NZœ7p{-:F:QWt"Ec7KmDK0Gs9{ϳ H3͝uט'/47܁lr ~]Ʉ&:J٘]DDX34攗MlM 3@j9vbvI gFagFr-7+/XGAd$ 0>8ܼ5ŴFظbBo} e?| "=,~BT죿ٖ~Kw׭Mp1DRHg@+Id믹[P?[Njt~ͻHКf1'&!#{kZng.9,wMt(yIRl iC!EQF7L"Tx .Q7ؚN;9Ƀ/ۆkc2}yFן P vuBڷ*qNdJIq?#Y4lɏ1QڛB}L8 v59R PO_nyZ`U (!ְ [}LOH0c˧J$>CUy -y>hibG;GBa%dpVC*1LurV>k(DW"yZ΁9Ԣܛ>v5Q{0McbKdF0xͺ&p`; [E \6:-_\ { nh=v܏ Iy`thQGr' SwFyRbvym' W| )k1}dϕ⟒Qr!"ũR.0pԂg@K*:[,cHo̺dWzpxձ'6lorxog&JG~95Uyi ՘5*ͫ>Ngv}eYnKFUTޔS0GQ^ 1ȉq|7LmaP/8JT-t]jx=rz]cX뽅fMo.hNj {WUi37^Vaˏ匾rDp.R &HU:>=L!`2'薀',Q1T &٬ JRхBlO.{uF-~emp I_jLpuVoe,R.&1 X ,KmՒIg^ o[y0WwBp7m4!(hv[뉉qxW,NvםǬcvz{A2t^٨}j63[>{΋NmOooЏ! 4 Rơ`!zTz)C[S+Әδ?=ϥh-_5sBb?q7867rdSȶNq:AmDī˥à|S3w j7:77M]!&F˽"cWݓdy ,M!>ATE9Ĩ)KυY|U7`_}|n7¬ъUsU ߖMNtKmtɐ#۽h[#1s2~'ӑf-g9eY39vեKzi0-i(Ҵ'm\9i MTkVBqEʸ9T0 Oª6Q역^812j<k:Q.mgP$/!% P68YM-Kb9 ryw\^,p޻E Kn𚨄ԗ%YA JtamD0M%ہF̂==EP-duu`|PԞlY(;ouTybވ[ #n"?Q) Zt^keR _?~Bf)o3 >!b[%Sf\rOұfu_?RdY'$ς9hA'N>))Y8Xuᒠ!+#tP@ZO2+i4ZG*z# ʟ (##vwk>2 (FlCn%z4zxsb5af^U5]]Ҙyyx{L |U1Ua7 hd G2 /unQԓۖHC+]\Gl i m ne1$$405AKj騠k4*IxGE*'V/"SӰѻ/.q9|g~{(,e$|;2̧s[ u(ܭ]8bfyj 1W"E"c;e҇%n1G:nQaIb+ޣ(mI3jWz_AIE"vR"iED~X ڞ}߰> h) i2X$qK*/(|9(sd K۾4" m&x#ڕǪ@@DQ/#πg'/7D4*? TO3͢m[Z@EXcYqWw!:̜9L+<#[z)1Ow-KNGUq +ziQR]:C^ڵ8޳(vJGFau@5ƪ!Y(XOAPAuIHä%U{dHo|lU&3ϏArAFp6/~(t)蹲G2? g|tčˣQb+"[d,œ9RR YFWMꜯȤc6Z;8rs ׯka"`e~c 5mu*'ۄ@7KA&WZT2GZrUN}jPm\HD툥ܖY3mr=2+MƸ_]@ڒFok<&NnE h8QK!I)|/ C^}ZZܨ {U!e}JFJdtfP!p=!% FmǓ #JEM+H[c2pw?+y>]+s'š q7j$ErW@_\rqQJ#qg1ಈ %?_۹=P4׿h;}?7)}TCPfײ\nk'3'sd_I}0U x;iLgƒ9[vOa($I(ߍ ϘQ&Ms T|y ceQA&%>O&ųe)|-S ?5,e"Aˆ9ګAU`Pu㾣^e-bh;R#߰@jjI0;aV3wU01hIX&W„ɀ 7ѮgSbฤSh,M.9(W]jֈϻ\tَ}ƀ4(h! hu+9lt'uP^&e^0/:9Y;Ac=~vDc"RQ+5 :@.0}rd0@G`O<7|p`S!Eo?ڄ͚twI-+SQ-Ræ+JPýoJ|V>gu9l C:4hQ_CZ_-V9,/r:]MNFSFRac?\R]6ѥ4kqě2Vi4-`t:uA:=`h53FutVPUq bTAxs F`Ifzڡ)/ĚlUQLӺdrjcҢ74d%z`EtS}QgmM~OlC%1 \МY!^E0Y-ܲ_hv}/>h0ed=t'ԡ5 IsYAA>aUBmP,ctb ARVv"4!UOc-V_+|7Q^^t\肦*-Qn?_On|gnk&ǒ) NK/bM}0̒w度ӐT v]Vso[Suɍܞ=(JKy dJ66ny|/vaQh|UxD6vQiGoޖrܿsmmAO,+ UHymd>u@N7r7Zaax^eӂ`Zc=;C8N#\b}7 +kUi"%l%愦V䔢~ޭ ںq.] +K΂ X2힜F_2z2W#mLmq1KɅULT'ٓ N^ٲ }H4anv+BcmbnhD+TNc& 0[$40x`$&G hR0I?~.׿q}!fT!P}lA q5y@lw"OӃ/ ~n-H84is#3"ig}vq%FNf3}(1GQUbEMtp olKWztN%cӼx Z;$J\'цDL qB4uu^h{Q0>&?E7ZI[t#ƵvDW|nӿ~ n0P*r:o߳H"eژtfJP +@e_m=~4͋˖IY,wqˑddп+4= !X\sVS)U-adRJwjUp:.+]99{{6@uW2ߴ̳ADff,]+u( 4;R\` 9[Uv:w9LyZK2pXJȇ.l5:G.Rmj!J{QgT45;#|*sńЌz[8솧~'g՞vMS9g{#bɘѳ" 6oVb)URrS5k Z'gzr|NHA{X$wE-d,ˡ"jKԱU$ 8h“APg ps.zrGU$<^*/Dl%2"+[<<f $Oxi0 Q2}ܻw 8xKCQ+v]h9ĘƷ',@ |M=$LA]c[Oa[TqNCA$ri\XL 4GGg/5'ӭ{keƏ r,d[/Cgjٶ耼1ugTk"M%A[,:&Ƿq*轤t*[h?`jF\TTJ|nc!L_BNTy[|ɕJ\{QXA, ;FJYS"Jۥi 5`\=ݦrڧ!P{hC.q0p&|X3d9?R! X*/I+ (@uoA+9K*QIv8QOݝ{-B]|!W7F˲_t= ؘeiN%|fMUnso<0/R pv}]^yXbc5Bgޝ{;ٓDu#W*Όx^eUwZ{RtJhX$ceEP8qNwu,ƲtR;aC_d>?D X;C5$t.|3eY N:ӻKܤ!tO4sĨ#SEM۠zUUFwL"!%L9{c *K3fQpgGHRO9HANwލ< ʸ6,0CkoGT^Ua>kNr8lzu)m_(2=^ R]K~lB%` f%* V"|2p9λ2ق'8k@-d9ALǕٸ-W}ud#*ez!IN E]/+K*If b|gڦ̛CLةs/ωeluHzǮ.L H}{ +oBD ":f 0mNk(B>Rܐ8dC[{N/وWC os`j/n8Q#PC< U~ppp\>z'juK }LxNT^d%hc6# kCfAƩ9xy)]V|S~숪3HhC7+KeÔG9 g!,hVSTumg>~*졝pTRIP$xbY\2y5|>Q2$j']"7"7֭ OP q ` 7e=54{ jsY"*tNVÓ8}q*%e"D?T s-0v)wK]3[gx4[sK4DH }\u#d3=~[.O.BTh C7W 6;H"X HmYZH-d~Qo}= (h)`v= l} |]7|RkX+ؑ쐝ABf̒xWJ4,EmpqqFI2wU.K:4̻ۆ V4jE&C (~޵Wz`wA»sLXEx}FRGJ[9&:aUx|=%wdg+{@;[JeY"eIQ k8N"yC]u>NF"\SȊ+z~ !NH'`iߣOra//;M(B2͎)u1ys$U+M:V]ox?zL ,r19wz>4*̯ gZBRB4;#l]+rE`36 z5nDŽfwNbᡉ8!q 1\)€O('!hΑh"z^Kq9$.bꞷ_yvbpB;U~ǃ_AsL%h4mˈCY*O-3ԚTX-Gko綪mr+`y[@NGtC[:!fd,}` O^Iّ}<26Uȓ))s=lT.> >5ŒAba:p@E{SԶ񎙱y0DW`&ݭ+qcއy:T{Ѭ(R`>w|X=VK].Zdy0%W8 J*eI(s8>)3mku8Qe~v#́-n2EDIqPUpICAQUDma;pFMƀ}( 1n.Ol_Jh^ƔRԋQ:+54 R[FdYI6v'ч5irqJjFwhC{g2^/SLϕi9*Lw$fP{uc k%hfhG;btKRDR䙍),ܰz'Dr1%ym2l%xpcDT[IsvK`&C + TmWa T)~ C ^b$c>|V/K#+س#i.*!6\Ӭݿ4C]G IɟZŻ5o_51#'6K^Tq{CiY]2YN)b'm`*ef Q٥ykJݣP1//)\[.Vg [QL._VT{–/)-Ԥ#ȩ+wZl’=%7hn_zrSBB*BN)?0"8\冭-Ny:b4p#Hp#U~r(rK*0ގȋ71>V q6d,~bO/&X#~!!eT0}R܇C}fVb8JM1P«9rJ|mWA=yC8y9*-%S~O% 7e?e.E]WrP߿l|Mp\rnVõ8$~5/N\W'?C'k*.D =Jl2scJ>Vh]z$t*r;-%㧯rǁs)#v8ΖQa?帘~Ȧ.4 r~{j>;R l c&OumC] %Ȯ|eX Y7^H~-+5 FJR>eu xp08) C쩊<o! qnHSQ89.gcH@GԴe>WSZ5d5je*8Wn?MMknvz)(j[,U<'!{;E 72ǃYA=a_xX0"8B8$Z+q aFYS4'^j4I\r ^2_J콠~ TO1槒~˭t+A.m6~}ბe6΃GgM]R?79΅X[1+%6Kj<6Ɏ-C1`p%֕b_6) .1 |#ɠG:Svp)%@2TS(䙭^zfqB*^hzqA90?=XTyx?s#(éj;~g# 8|: |51^6s8DLZSEh$!Oe)8bBրɍxs_<0ͅ&K)Z7?8W)}?;CbO~_4('1[ȬUOYE#{2WGe΋n&תNUf?7BH_ۮ6TdhZW~=4^A}5[I,/+;@Cxo$@w/6o rfL7%x/GgP ݺB~~Q I!HV2J(ʃoAyEQĉTq(5: 0H49P-,9r"?(~Ռ{6?j$wf!RTXej ]ה[Dc~"CܫH9׃,fȜ00ڨzIi1L)ECUعngyR-i!4xqT&c3,ʜ\l`o 2aAt %Г!fEWcVG}i -lmc*Hk&Y!nF ۧmcХWDHkӯ#鱕=飇~~'&Y VCAH*Qrp++FEt&ApPq(5t&f"yE] gXdvy3YGcrTDUo`J+5akG5]2!.rP5Tf2UH R_"oNEl}-ꦿ14%c%HA ѴĬ9|{H9JMMC]В-&I+6,^ݶ(vO {,&ꑸe1oY(_Glф{&D3&4q}hEW?P$jE0ԿXHmH7p6.q8Loq<E '߽ρmvKD@90ke0:H *xK>pV]8>kwQ{tZmc%xQ+S}Qag"-͓u'Mq ebpD}H9ѝf]2 N 3O -55*_V;\q3%E͓ŖjʽhP0!]՞(\WWLq@WV^h`֯vm'zi!ex bCگ&oĶ:Ux8&@KQmhK ; wCL ?O%k]v, !NnF\kc9i10]DBer5.gimLKWO<]ˋt[ܽ=vN1 Qv ``}3aL{GedĕgCnA=Y{".wdGa!OVKppjHeeƲ@0-6Z|ﻫ_+2B/Љ*SOtU}u_˾vn3&Ǭ~ bd܌ {P:{lfH J%en!PÁZ)CPX^SnI"Rs 0Htq˖;ilPfq_srnh.ڥ|&J?SԠesĚnCxNs ;Ķi( m 0:XKHP#9|DiR3HFYNxuA0DspMN]{#y)1IZl=/bs5W KʭGPs*)/S|dz4ym!F$tͣEŧ$3;L]aoE "/ԯ4hWѮXlHu٘PsIa+5ߏ9-da2?92+ - %8ntJ%FeiI<]K2迗7m]n ;ncTŢJTܷͽ@6fDK9JL/,dd:6F0z4fާ+?#>0?QDVGtQ?k>D&[THm!k30z=#aOunWhJav_^RcjjV8AUF#}u}zHY]W0,?͞z5I|!5*򆠫1 εʉ4H΀&(j`u;InjǪ` `lr5pR+C?ڈФqx! ׸쎢Iն2Εbj‰szTw4洄>:gU:l[ vMfHv+<gSýGɊ"Wb,5MV&/jic.d4U zLk!#1LfXS$T19>8#!@!14eĠ Ewm k@0u@e@k@d7x{kL?rD>$SQEyt!!k8]9& .RZ9>18&sXUP]l/@3n3ʷD<N]7U_V\w]0w3{Õwj8oq5SAÿU0;\)4Q #C<,hߚ~! ',5rIZ%E%De%C81%y `Ï䴗+uFCr&,D$5Y0w)ɇUBo氳[hpAp @b7"ܧ1['] Rv8 Vh3ẕJlQ[_?c4*Kpdɝ nAPΒFv!=4aڐzRwzp)z?|/-ň`vDT:I,@vC=!+BxbiB|>F: <Xڝ}//3Wx~TQVdřY`kY ]3GuvFԒ~}"JpWɅ]dU2m3X*Upy+lgb}n8]W`W}['-^K~j`]޲2E޽cOCAwهL#Z!j6;}bͪVUzo!4 AmM[ryR9T.K&B d{{c%;xv/F-wydҍ5]͡CG;N.20, j閯‘A`55]c`Al\"dGF݊Lu;O"54 H*E/;4L,M(Br h祄Ir," ?7kQ;+X&&ܥG(( i&&)pvV]TU~s-q<S+KꗰeWs=kP-o-Xu 'ۗW⿉t.Ʉ$URa߸Iil^bmkQeRzb>BX(Ecju\ss~]hbZ?c @(/h6)O+9u.K]muHcԎqm#ed;w$Y]0QeXZhϱb&{>TYsܽ_ىs% ik)E2g!\;$|zVLX%S>aU|=Iy?ⅷMy7-?*1ӻDN+a8s} /ȚApx6Pϩ(/{\c$Cj9-vWMB.\.#~ %*dFt^Ӈ$: gVYN?W5HKm/E7r/ŢShģ7){jIc* )WL`QRW=-mʴR kM"\o砇h׹lfͩ^3 hXpx{YPNo{ qlr^G5J?˺'W6QZZӀ"ІhJ~{GÜp82yxtvYR4b6B+R)"F+$B>O\`GbSDe3u{x^Zy =A k[}uv*7F aA!_IaӻdG\v0ӫ5(=?*XU%F j"%d O v]5$ ' gCpn:ޮEcN2|?ng}[Ck[9\g$]*%QRVHm$`sXW-T|P "(al44NYxgr&8LXʁ`H'k\z)w?@N7DfF1ƩiH9](ua=*V~K!8F,0\'L 2pݵˈ9],@O 4ٽϠk(e98菮.7@Ԋ=;L9 p#tהf/G.ōcΌBpf#+0+h'`LY ƶTrZ5x V%AZ Z|.Ŷtj/2nbwTJ\l7jd9(7,:1nw1Kl$qҼ(98JLɪpNL0 `F@fEZlK'z pp’CSw޴`vC "m-#oߤŸcB'|].MWI$M|2Ao ֯b\NJZs#(?|geB"8a8$^"xb2ctAw!0kHeil^qޗ7B.vUg_^p[ߒ #  ._ 9K^#Z,TtB<wˇ+-gHr83@\7yeo:̛`~#{.'bRU6LX}8DQ#e؟p}g#|WX:U~.W*Hg?^ݖaW>PI,/EVNfܛqXKryN4~$>*v1M[9R™42Y{ߑWQ,S.?/@qPrK[@(9zx[qWbrrr1W5E>{/q'lZn҂G@GƜ9 ρߣd Y@ r9O}qSC0}?u9mJ|ڌ ycN'[%fߴMƱ2QnL6 h@tvmpb6ߐ͞taóYL {xE$v9 ķA6tFa !uPVwR*G pQz뎑:35:Tı yEw'hmDZs)z^gl{K&ҘY%A 2? 6.~GؿZMZ-yb2LW:~ߓKuiR/c[Lq$2S!y=_a#ҵfq۫:M(NW0geU88/#Ti*@yƂȷj?@mxıu܂*K~{'J)=ZAHX:eڋf TTB7즑@Y1՞E܉eY e]EOJ b .]򮌠g6QIQl[3k׫QNU ??eg ox.Wckl5:6#!r I9ӿ(_J@Ff6-YM1bSCW] 6c⹶'`M뼷nD nkaZ#Qb>^h= 7kjYƦii36E>dPy?)|*2^ljfE QS`֑p$R%u *c@n2 .~=וDiߘ$ml*IL換ZvK$`ںKwV=' ۽~>Ai E$(f,]9ҙhZzNw#%N5-r!*_QYhzآ,zKۃ,hؚuZv d\Ac˅r%sҚGG13Pg;YRyZrjJ"8o,< l5l:¼L#0ə] nsuHSa0 7kO RPZ]{Ir.ޯ줔k+ 2}} T9EUQl~UʨcF ibNn5`oc;{3Qb[NX-G m*eH&<d'5ylHl+DC2I2hN֑X@xZUs(x8Уz}F 3y qG% (YvGӗ+wnp"*#~М\#6|y]z6T#c9q'1.ݲȉJ%YZw ςՊ'}?cOg|pĮ6R}UP djm+}_lsk;^vn{> lR+7z'D0)w$K q]cvPe xt>J]Qp, ,xe. axMYqLA 3Ӳۼ/W.!>[ cˑeڤR;n\W|rjp->>v(scC]c#]0vrvTfUxDnЪmDW5+ʂQɪTg"$Xݫl92-[|fB~Y"gPgdF%N%L"7ݔMHz"\/X4L G|P;u4;YG  4Q=c~f̶VǬlv6~xtd)\=QZ-Dh&_?ar=5omx)H }P,JT6y,1/P&}[X?т z}$C}r + !{Mms~=(k>=P5t۷q2 xq[nLAه0>mm19cSw]sBbNSt]8d)=1+3]1K=nV*ˁu-:$)uAc x;*$JڜcBIOр9g N@ZהԍTh{KS S,D5~+ %V[{wY6|ph[Hiݼz̏+{񅛪 EP}fb()cd=N3٫FqW@HSn2%c5< '-k/6u}*#p%۳1#,#gR𭅴 Yn@icz`h]6=U\Ȓ 1,NLT Fغv׈Sy' EOA( ; Qʛlhl~E+0#@/آ` XUьYagA9^>"&%]%83zz8 f6C#Rb_ChlGKme_dHc̢F6] ._21HXs7 ^h*H ;Wp:9_yV~mєn+آԭ,L7ӿ'%5M{O.uT4T[͈'F4n3?~N- 1[h};6kq xU '\ 1_-m3M&٠*ĪR;"bj^W#x\Lb ʳ+ z]rþ`=C)7aY}MŻFօH=6T]ܒr:J^0C.G% θ;^_ChҲͬ`-.l@T3քbB`7.d8)ZɀrlĥUE>Z}^_Tyh=}ZV+lV2D8x=*Fߡ-XPLAD@%g5*<!_rk÷#X~^DEנJwbCGs=l*A\ $rV*#vPGZOqU> S7:]ja' u@dX7J#vX6U=[fK-s[xltrڹ,JizWa-M3` 6dvXELn#`΃uo*ƈjoBnrY^3w"\cπp^f/5э;L;# FB+O8.F)C<$d[j~?h"$z'@T\n?!H%;CDr[4fbw_w_ZiYFe(T|Qϧl1 B*Lq?Q¢#RAGq(Pc0Wʷ9dY\,vw%9FssK#@TZ^mǰeab~<&eͪKXIl KC'S|MKhg \v}U=hz{_>JԴA:vݹRW9<q+ ڧ'tPұ|%!@wv~"5dvy8UfO=`̲{m± Zh[B!{GFJ%!3]Xc̬ )ە-5|?L;B؉3ZGJDީӖ=c5 g~D.55)G?AsGx<6 m4Q"$z\Zk L̚X+$جnS~X}Ki7cGG-T,qx'>b?k%vu>\Zx٬eurKO*]+?u#E(G_9 UnT#Nѳ]EN -v!.M?*z#CR%G/gQ3MwFM;h7;>ӊ7"x.Ib2'm}rh#DQ"j34il1Gu6ȁ @e,ªi!FOA^}a&R}ߞA38<ɬZ֥зMexSj {tZhlp_ڐ69^c5ٟucj<wO[/H(Żx X rLF$(BpAb8i^ Z_.xV`;¯k => @;xO{JxX]]~_lD>gڝ* X`pNWrtD i\r7>0ee,)Lult4Jc)@- kLfm!9PGO2ǐpwD^ ɜaM,Qi?0=xGӮr zja'!!V+ m_7&hg(.4)s;`)f 47mwUg~3.z^16HqE9쑜y,9H⨹Jz[*P}F^Wl4~-vWga5s!sE "uPb> 51xaWf֓ hWB,>." Lak8 O?6rhdoÌEyX(A8%* gB7vtIK`hn/YeIIͨYld:G_jG 㯇Cgth\Y]_UPMfǐFWKm^@ &ڿ|\|p4~\_M%{_@q;s#+=/~.#.)K,@"0 0Aүhu6A;v¹phaԦF1], 2Iĸl' < '|+UQ:RLӭ$020@Z0Z}^ ¤}΂K3;w/+M1'M,ebնl~Twn7 z3ځU2-b)_mJ r +>(}+)!3sx璟e|C#LJU8Bަnc߂ͼ0*V QyKn Wn ;8;Գ)w"#UR7|@uGH׍)ȶ {~4z2qJ^%p_AF󋚃~{[N涤ߊ4) _Z BRЅNe--?ҤTRyi:+/ gWaԝڽy %ٯ~@1/ q;qj@~.I E,y&z?._k$vn <*9JԅyY8˅äw; <. rh8dH*!!Mw7D6͵6 +4hl-ѫ"&/Rǎy&嗈JKlH51,`J%i2g,=SX,sY ^-ŚWJR=kϗךV[XT* Y{ds ]a?kp)3\,-kQ;̦Gkwtzb&2;QfsD(}^:L`}rrbq[Zw &rJKENJ4 b ѥ2#|Y {ծ@#R3. :!-6Ǟy?ޒA]XX3ڄ.ZCeCORGC +5qK(PKUTEQ0 9!!3'J|Q)LPֵlvWuAu̢ K_ؓք ?1R[/nő.bے>yBB+ 'nL`0 :">]E@?>;?0u,ӱ4G_Mv6]G5P^VXZѥ~x#>,15v߇9xJQ9^+ YimQp}%&.>SF,њVf j-IsPdo Zw? CS+)8RBma]YyBɫiQ^l?6ѧq@Sw91F ?=ҜOxIPs. 0ukREd4!&;!QNLvŜ7d{l )Rb {ZeVa! kэؗ_Xo: w=HKqhnx<[GT% ,8%FXS(mnyɛ6Py+as}pp#M;'kb Y(js/i[ t"0Eʨv!1CAM/Nt(ߜs]S$ئ7OU;1r}} C6^;wL>rĦ7 d<#Ɖ嬱Z}@Wr6Az]3nSH;6qC=l=Jل %dՏVQs&YsŠ2HV.ؾ+<)֯=wgWC~̀Xt+V}jMԌ~9\Wq%|YgIQã2ncu_v4 >'; |BV0E+"2ZȤ*vS֍*܎+ʄ?܌Yx62[7KR&tx I#V 0̩UNq>.C-}$6v Jʧ|8Ίe;=6rfPӑ'>rHWJ~hd6d'|v8lvwER|MvAmWY(:}B׆ޫ2Z˖v ]QgLKG9N3n}Aa}mZbf\ _a//k?4=y-Dֆ6ɮ\fMPW* RG-bM`˒yxT@} qI/;.zFJ<d:s]6$(X~^򈈖}$|p?E(g:JaѰ+Ӄ-()2apf}Fyj#L~V0`_ a \f~  xTK nx hҕdXYjς [L=%Q5El?M}͝,5jʣlnBvoR3P~tP= _"Rp#չ8pB\TW@HJYH g4/x0-ŗÂk,RPt ,N#fxwTo>8C BUJ'gײFҮѵaةu觊tzc*9VN%|^ՠ?.*Js_kŏ0-u[|Ľ,p_3/l'[cYP[5`$-ᨁ7lmuLY1WueZJ@]qda*^t 7\+O8CΞ'S/g=U=CH [iB(]^5?X%mҏ!R- ՟,zG|cKGʅG|\[Y0+9ƪIp=Db`^q+$%5BqJ6ة ;џr10u4] UI~ T$$gdvƈWU#}Ua~Z,=\eroFzo hXkn%" h!TWG7I3FMǧc7ˋa*$x<vpҼOn䂔§C 稖Os\3ˀ 3GSMzr-qHv/#s@p&Xdܱd֙ܨH L벓·ԡ$&MU[V(͛7Ugo)ҶVNS" A%rzvvrB/|"7ZӚm~`?5-ttVOŷ:Ѯ4:*7&#cnVǿ`fܬ;o6:Z?PIQԏ Z 7]LN;GZ Wu3!"s҇)~h-)>Y(eH.EjAX܄Ƙ]2̀O޾#'$LĂ<l41+ބA5'V0;{M,Xߴ(W-©Y*/ 1\y0T_y z@zVw0 줝:ucbtʂaY/6I.Gm]7x)Z=UkBƶc_%z$)"E0'HN֜j&ౡv6*9vAavD]уΔ%ty"vA r<#|D~2 rǺDExv[(݊oΒ>BNaHo>?R<*Ned9wTDV̞̌%w+/[ #d<=Ǥnr2#:v*eC }%PE%ٯ ݽҶM1Mu6֥N72-*'CsT]ڊ.]D@➸}eƛ'uj5`s0UQ16^)P$nqITmj=]z.LEn~C j6bժա.u[L\M9..m9`+"jՉT_ 櫼fftN7B%sP JWw;E;6XF11Q?, G!:8-wFUڃkYVJLi-)[/dhmHlWHkۦ)cQl5IQWi?-~T9ByJJUyOw4ی6қ># Ylfuqt 7:]{rg&I3zw~wY+*Sy OdW`8$>f9 Jz̧Ofd3i_ 1&_EH.'I0 GI8<u,iCtQ0K[0j.5 !qw|sϡ> #<*u2@-4!2'Ru-a%40y"4{4fV]m!_ٟE(L;\ܿkZ +` ϰj$&~ 'vC-jVÑ@R YC~u_IX;z\1Szu 2Ffa8`,6lDJt4RC\LHCQՈ?&0t6{Ɇ)ob{C=ټ]wD8;9}٪( aSkgsG&S G.gϯ:9ޒ&2>M_?岉" <&%=tMG1f e@VM'z5R@(SkBPZm]YZc@ǑbUbiu#Oa^4u@_&&)#`7_lO K]Dgz^;~z\Q{֦!QO: hbT%'[a@r{ȝt\£U26|5IK l–V5;5ESe{qubGaz,8L!?ìH[k~46.8#T߁X~anh1ODدbviↆ_2p[tb_) $]i 9">G ?yh(eNE8B,nޡ >Vqk! ZiʈB@W$$7ܤ=O#w;.1/SY)Cӈ?7\S|{FlH'\c[у;J:{ [ ,?%X\-DtѫAALP=ah1pMڼGK?3]8qVٱY6,ee7i"7~Gn.­?i*VܷۼNiT,rA,RtXnԎ¤Q/iPH[^o.?„Ki'jSx$ @{Z~N2t_3leb'0 pF+ ƏŊ@!hW rdDK!"JYc Vv7MhϼZ8e{>"B $ȯҀdA؅Sp-\jpFb4MQ-} C o?-ye3#ĊaR,W 4NJC;}TCcLt^!0ۋR֒AHQ h2yymHuB7Oy/^QiddzycM sg/HX<(H,Ta\HɉA3of7Iص9jsAQZ(+eInw~o_֮noJ H"{Q+"q#i*##TX`{Q87a*O!FJV~-"޸yZyCEcU6;+y \zǗ!d!%؉p(Y}qq2׹SJM4]R"zS9jT>B uBq VW_ EyLc"(O ē^HirSc䊣׆\#J@LYc' .D&s~ -'[54Jq1jl$gLvs~Aw[:ErN.g1fZdkw?<׵B IZXP QͼJ{?$Ww>4iFy$"Te%%x/[|W~0mq ''U]ڹaB~*MeD4 xI%+/7~<`KyuwcGj9Zߎd_T#?T)Rg8B@|Pti?x_x1Aw74) rywYOV~I >'r֔MiثV{mC@O )ubf |/~9O+I4:JD0bGIKoSe֑Fu؎[h!.6cMW,({gΞlfh(Z2_Cs:78, DFK'CS@@mH2?e'KP%"؍x߭T,Esg1ܹAE}k=StĔDFs>浰$Ȧ.scoK ߦ?qd~j._P0zW9U'}"Ɛ.o4/ŬQ%x2tꦂ"?56+clo7vzt&h-$P&̼gxݛW$.kW1bB|tc` c˛h"#RH{ƒAzn̏bud.7'{߷;",c!?/SP0z-"L`(ȳ8fѩFDa"ZN@S._ :UQD6Fa(DRaP`{]0rlr j-!B[9oeL.ٖF[߈%VBY Lm8"^mAMZ28ȇ^A:flWA``CÕW2":Lv-rV^ҩv}QxY+:{vN3`y7<~V!Hk @@`hDmxɰ[2KD$*TT)lu/YJ*njSx*&A .յ7 dϊ]  ՆF@N? > ۇMxQY9 u%8q~3ߞ#7Ӟ~MP>BEJ+v.+%ը^TUN=?~?͕] IԂ*y|/-a8¹&ۯXNi5Megk)*],5xC^##H k:æ[GK4ѿttꠗ8gD.H+ʤ :-KU7 l#c-TYlx ~X^HUBL-U?G9y_ XrSTkn!RS+[Ut3.imjݎ?_[ zS|g#Ho{~8k;`>264I%fk ṍnDa\LE K;, 6X)KcpS? N²azdyyH35B:(AbP l*94}Ut/b8XÀ'}s킢ff=U7GCOdv2Ml?{ >7#f]dT@;zǔ 8a$PbYXKFgL"vTPݜޙsx7˽hm'>-` s>~VMlئa8C(H0S¯g)= hwQYrFzkT/elR)V%YǢ3za*j]DV߳j Z8Gh/@Igi0; |kGH텮VGRB${Gᅭ|(z#M `sՑndVMh#߃P^*80}V|.i9k7c62}!lk.hc m7E#/߮5-"Q)_= EH2Hַ%J=*{V][K2yPdڲ4_8Q5 ̹nAbqϭVP?|-_9:1?.~̗E5ѬڱЛ/\Sow}tI0"jiJ~ bEgTYi@<-1R3Yu4i_L.W0E˓>*zf󛲶͐=!j΍WrE|ՒfᙤK!B}aldhK$hz!CӞ>w*s`0댭T+Ȏx>OնEvڠ[d v0YgG#8TI"# >pKJL1>~IG9c=`-Uʎ5LXI}3r0od;޽>dDz6 Pi̖d?v O` Z?ba+8jQ' ЕZrєG#S[j,춱llGl2O#J_ck3X8g˱ < K2~|U7ײ{|z4. w3– @eCG͙iGƔ2<ޮM~9Dtf RzH>h]n&-u-@XShNGHvΏa:\w%ꦴ6\h6?ᡖ4 /r7 $&8SX#V?ޢ#p1YE[3uOptıP#9ptCϔ!q_5z'I%j]bl,n=D_o*(x2EO>Ȩ~1%2EMRpgɄc ac -wI =+KEP`ЪsR s8LFIű #ےPʗH䔺9;V)6$ˇy2- 8-+SƁĨד]KoA7գ0 7B9qҋ3Z~)ԅ<4/Li@a+ _P_߀ BurU449"]ˉ0dl&4'CBNnGfo*V^Fj8v_qm6r? \j=h\,:1q:،ŋ)d2;!5*7r2.~ߡYe#u%lw#^N22dZ>.t¼G`hqK\l5;Ʌ( kw:-gxX!P>K _Psw*#ɚ> f#yUB$k>_SN]-fy3&UCO0 \kzV>Q[%ڌ*hba)^ j}j?o_jsk4{yRr#<_ѩ8U"8$z"}wɢ=i6 SDdyckĸ}F͠IRՎaHv-F*k8M y`W7*x`-DtB߷x^ E73Tڛ8jbljDae.a-,.u8ٹTעxgK %s,9ң]!%{k![=Oৼ}`hِ:s$p͌^L.pT|Z!lz1v|.m1*iAQ}I"2)Ŏb 0tmw.k!O_=o5$cWq-qzm Y Owy,V"Ejo伈 rɮ;~u\:jI+ٓnoh,jQ}nj}4-'@s+k2CIJ%B=<N|S܎sqx;5x\V񄉆 0OK(:\F0 *F:TsME}!3cqƊnpI8gkԆ4c|ͮ ׼kKD$׷vjt<'ae֚ܳ $-Ŭj2=p {lR8rpheVK1,mUX7 `:4vy hK)N\Z<~#}yiU7rwN&܁siN\gc,ۺqqDz1Gm;A\ s%X;,c23$* S.mD$pډJL旟u)K#{ 4*ј͇H0 oJ2*ѓut]EF%0Q#&CI/̔ ۅ؈68wz/5)V\;=X5Xw- XgWo08UWC\lwt0>)eP8W` ?ג'Xm} u-ܞ!)$ ރ 6t??_.Ng=ϴ[[4n 6 Z sEeo$N:;Gf-v (&;jwEJwtrV{* ]zyP`/5Ý/Z wI?!ػ=7" da"h 6ЊII*uE h}Qʤ_2U0BK n?NbhPz/-i1Y"wWlD}x̕o`a`6Oăt{o>n*ZĊM <EbZ6LsAM~[Хk}ũ%<)a'tGʲTj ΢cDZij 3MVP?H, 4 =•x[9<96;FL~WlLtx1P/g oP ¸4o/ @b)8ؙRv[ٱ>La*.JWP1,n PAַ mC4yˉbuI]_Ry8FB#%hLM`]:qA¸/ 򲴛0Y.c$ l1$]ψtΌ@ Z/mnZvzR7Y[M_\:)OGE}?ܠ s.%M˻Utw_Aq v=22 <"A`ajn)2GӓTd?_;bn!oxٵ/aIXh-* :6hp Wrٯ4./=-XZH[F΁&fp!O< G&:j8lUۏ.ػ Mvi (VtUG#d.aği4 \J+^S gS04N(?6P kX`3hyz?ՓӨ9PP-`%@iɏ dA;Jbƹ9T5 ] a`mM39%Y&dKQ|pUCR \TқI[m`Oc`{JuII͇ӂ̓fH(`--1N":A4zb#r58y{EA/aa`HVu825,(1`"2jw cѲ I9(FL2%](`% ]!<{Q@%VNt؛eZ`7Aj f|c,p-v!vV*^^ b60dC2;ťSO^V(>@!B;vpXkQmOQlsβ1Hw=϶*.aƾNK)D4~Seie4hSj<5Nբ @d/4R~p{ Rw'm"zYfķJ{'ZT )SH$/׼9Lݝ:r9cb+Û< PzLTT4)nD:b򧼁_v_arl*ֹ(C49$&O#S}z#vJJ@<+Z;2LGk}Q{XbR4D3j+AF[=#u óޜ(CgIb4LDQm,:=O]ҫIXXq=5M% ?V%?qt;@֕t+` D"i}I(( :0uG):ǫ~V[Hle '| ^{~u#DUFi͊aQLlj. )}w]q?oG~Kl'@d w56⢇+u:m$i0 9K Խѿr)?/3}K  =w`u[,Skwp#B\tC X5DtAŋ\rPDT'Z&' \*]|p | [6+ݐC<qtMР6kyɂh VjdhƵVy_ V7ƦL)83tŖ>Z=8 V~bFAq|fs6<{znN.dlh$97/zn7< dxA y7.UgȽX2ZA'X)8`jxYLΕe I]n`؆d2>>!s-oZԋd^.fM_oiO؂j)Vņ}=?0r P 9",E1 P'GX=*qL e;A6w ߆ X]rb.p'MAhehHKyq2B/V4 l-ArJzN+BP%Y_8V5eǠd6Ďg(:(@-TˍdR11/Uw-/X>EHbe[Yk߅;͈< z -cOLjΆ3FY 9q<#jĩ׬2/" 8OlVUY.lŕB<52JJG[y}D*n鍪<ۘAe'AFX+7L adf2(KF=&HigH78TAD$oj ˆ cb\WHӶ5' TtZcead2L'nD\mRifTx6O2 $4AJ>i)\ϪUՎT眉o+_ahzXPpǷuiХ*BiUq䏡N,?$jњCSQ v5%,"NE5砈ӎw*B>kZPsY9nϹt|0ɡXmx@ʹ`.IEH3`.x<4&? o_IYw.cG.}&K: )&dʕR KB˿2tQꖅ$M+lٗ(e>/J 8yԳHvMjFi @uDqz]I },O컹d(eWCb1[ok)#1[Q< YzќFs%v@_<>-/.%^j#'khCkBY3֕ 4qK;ͬ#%SQZ۫XWE,&T-v:N.k* x%2ҚCZ~ɀ-J` 8O{鱁#4YVܫ{ 2OAȳWI8pb߫%zHz1i#Gǒ&ӶsN*S ӎ5aGEtEВ)%Y[(Q{Uo#)Cސ^ Hp(܈?2iGP/^Jy]ݗ6zG?(W Zc)6OT42q {2=;i[X ZH2J<>b{3j7s%9j^>$==wJpmu&˕kOM[+uC^47, 2[iUsWcF;܄U6&b͙ 5L~4C鷔@ڈ_e Q!f۾/2BbZc.K)ka(no%27=ɀYbT!.eCe/ 4G_R-Z3v߲BA(+c cCTHOoT\a&&4ZDxZr7̈́*oɫ$9f1/Môyz34.YBgXE6_fxq[<#ĭH?r8\мJU:RiKq,h$pd,o*('Ii`OiC@@5Uɍ̬Vwt8Ԁ}53@?V:?XZ7taφ2lT-W>~gHsi׆- 1ڭ<Ӑ/v r<&Hـyb_Ə9=36:+I0U *Jc[,.bΔ^1'8 c5q| E|GU"'<#T;17ԳIy,mNp!d O07 p>8,S.c̘sJwz6%ۘ0 ^B'T0c9樶qP_>Wj _$Z :D (W^(âimW[GCHwdpE9Hs yrĽO^r͏IvA[;T ށgXJBgh4L93v.F7Ѓbn>>sZK$9֦=ʤk?+!fU0ґmz՚ĕ] ZXxvHZDR5g:[<,_dum?\@÷T2 =͹]Qr=X,\@)~@- oΦG:׬:uA0a~=pƒz"| £dfk맿<!o?[;͝FB)=^ybM"Nاl t횊N?vhrkī}DayYA#;LSoeA"?KjeAyQ:+hh%;uWZM@R'R}|84-{B:RK;0v/F/Im!f Uu_(7R K͹Ge]t >k/Ln񣊮{"rAas*A 2zbۭIMW_4,}XKĝX.6]1i蓅o0B$?\rKB4I2ЁkKH;u-(7%7FkQ4L?&<yS K5\AW̴NR %1=Gu`}VzU9P CWvMЈeIcM9T·ϩ4/hQW3+c`tz֒42#ppdJ=%N9x@C+D;~wkADzy%t1 W O 7jjCMLM0jUzecD!L;;24SF1z KEɚlb6aMâR)_s0+ 5vLK7؋qBO: V0#xp8Ͷ?lP>jAN B/4h>+WOx-%6яoU_^KB?# jSߨhkZ kh!j.u7 g4`<ùh ]֡CkNn-X0%"Sۯ٧oע 6qR9kv\c :Q#S-`{uich[/|C?N,e;RhP!a>Y]r0/ ^ `l%tTTg>9!PF.ީM 8 UL M2z:,P\[T S*%M^H?BR @W8TG2Bo> O^\cT]tJCtq0Fx>X^?DсxV)]{7NR^q՛e/)sA ӟb\5OLN9N=3=yYXS $j¼T˰6]?m+<0ذҙ[elZ:FLmAdV-Ʈ# {ȁ,9x!q5"&I%3L MRIpE4fpAj0r*D)*xU@S `X^m):iZ#a>[fqދ^)?`q> q#A4E@NdH*LǕGveKuB`VNEㄼ@ ^|}.ӕLjwS"wڟwŒΔi4B:;Ghl4]Rkd k sHtR fL҆C_䄨2dݬܻ]XLQ;kLqN ͼi@'&2ȽcZٽsCMM N(;_G`\LAwbgR׼ggYٿد,#`[c gIxxBR\֟L4-7j(T#_&Шl䷾/Qpd5Ôcz''!8V\. q 3ijUPq&E7(@G'dz@,S(_J+^ 5A1W&l$LG%f $X3JJ?C/;i!1 t"˞TUY)2_stm-/5B#6,)TAKݸc!cD!0~FЎr:ȣtɳٵzLQqĎ)\lBp FKOF@2 ("H6xhAÏ~Y\R&y"ڪVs$5\%˚ ~Xӂr  {W9[|7-SrCj)0ntSd 3YdGTチ# ՞UUJx#+a!eC%53@lj {e.~yI>\t0Ιsd4<Kam/A?*{k;?hwK2rߺVgGg&42x9-M<  eC}&rcvÖTQKw7Q{ 7ۑEw24m\6_ bݫgeWsMYkMZfB~!Wr3HXJ\Y{m|'dn{RdwĩM̺5hG~ϯg|poZ8/Ƿ٬=?zUD3:mآd$MM~=}zEn nV׺k@[:p5F@vb"(H?Ӧ+Ɋ ^o]: 2RYT6CilDZC ϥ676 'ٱ&xplS3&WsA5Xӧ ~z{ el쌻FE8t\iz4@ETAabI}|!H(T !`O璢˲!Gp&p07]{E``ϴVL)7@( U ]HdYw^\w1_kc}H7+Iɠy]b>&d!JTg$8<~OfQ}"% gOD]qЩI&"&NJynC,b٤|ZwuBH'%i#[lF"@г@PK.,<07ڪJl|νZɦ)ڢ8)4t!?1N];Wa6@ywT*PYz òRy o {ڀ[J?74h[[8TENv6b&  v ݭ_=FCͅtj=~4U˅*VХNQFcKLYXg(h!<3`[0#^[bbL%eKYIDOkaENC@;XB (Ϟa `x_H1JmDs#6T|r>*g\ }[peݭQ$>TB/m`J.w^,||ڃlR|=1,s-h Oq>_u?(:rD;{kr'f 9~7ֹQM T_"!?v,B4g&e.FgNhs)"*KA$q%=!?,xok6~RfuI,܃3['Sҗ[(|D`苯 ;RQGFf4![)Ua8E6v6$DTP~ї׬cdBu$r8 C$~6.'DۈJ4 Eә (8+> G'FPf|V{dŴ#Rə=H;riᏎed?w76;NS,P2I#ЫN}oAռ{4J f IX0R7$YCD+.7xLxwVwsWrA9F=[=}a]jfj6N ,ΖѦ=% a Gj@U37e_F#ǁՒAo `)j\qCrK~^>rrES$*ao3[{JeډMſ U|3L_aҿ֍@ש>{š_o׾Ib&q!NF3ƨ-_\_rkZ{^:x&Sl{򉠤% t EA橵;?n ^,E!Pʜ9,T$[x-9:E: 3`a΄/^ߣ!dd#+K7KK[-cs"~eU2+&i lM!j6j*4)f(&s= ИL*+XAImffo[&^"E9Ν|H0[S7FlZ$ڹp(ߋqd-^#fۘ[$==bd};@M > Ɇi?(Y 53J]VmCmo 3ƹ;7IwZM1rpZeˣ:vaC9~KW^%b;rKl@omL%Bhz4[r.7}gK#}"cAP-ڪ%qʉS6beUw}q[DFbЂ6I8GHrsgR$J`V+bExdc뱴ZR^VRϺ\ۭ]p bp˨[w[_pI7BLd)5,_yՕ7₝ejPM31uXaXl)Ì%ztO׼sޔ*J`ǵ1F/@CiLAH5?ӽxXKtNg!=dr8D}PjiI0zέaY;jɡܭ\ M1_Gaսm)pKĐ&葡.({6p, j]Z <` 8de޷ m+ĎA5z #w]H bOx#JE(c ZKXΥ+|y&lp&*{퉴*`%gPb_%+sGUOy!&`f-G RF+uRfQU[ ZtCƥcs){>7Mp rHʦ, "(Y" p]gԑvȏC xY?;nS>f0B0GKd#unRi`IM _+hKzdAe Ch27O~d1d,  !'HZlmWOZ/ Ct篶>NFOc'i>Ē]3UyEQ6|DȘjץ[~o_[:b.'Yl=} t-ߌ%`K4evk]{˙0[cg+f_;330:/,J gjBz%c|~ WQ%[TRWHęhj.ELS NV;̬˸7)XZT媸9Q$;qn+wn=d5 =I%9YS2ۚkXg6Qro9^\V:֠Z0qg8bX[3hpq,2RGl z>A xT5IM Q-Yv,U-(ހdtdrʶ2ٜH\ ؆X;V˪x>LS-QzLG!S&ZOR1^?f{[tΑ:T;Fؒ>pMB;P,*ߗQpXh)V sMf*VSΈf4j(>Gc=/mB3'W̔%硸leGOm[`&P&4aFaٮl*@.d=/&q, z~@Xn v+kӕdɽpNDz ɻAQ1M} [Fgנi tnĠЭ*ieBzV!}ωai"iK_һyTjwT)#֞Aw~/ V⭹#b) W=6 >[a?uh5x"tK{a J xv:rQ~f[@`3_ yro2h7}b=>1VSSͣ/`ohv@'Z&]A; `5)y]QA2Ŀ(e;FmA72=kӌI<%( u9 P0Xp%(&X/,;G]:P񪰀ӕY .]~6PV}=|w;wx;H*ITUzˌ %LPd*P{UG+ Us'V] Q<6b'mK8ωU<ջy02xq5KͅQ+ h_B":88Q&))6fgEilr2$.9lO!+y*X 80|8ChiCaدCRxi ]%ɽ m^WH[I#Z^ =A/ynTt|2FQaVtYdL6D5𵇚? 6&@J/ .).CW?}G746 H[dA0:Nr[b~n kB q\97CSX~/IbOjZvei}r2dLvCY`vdn\>>.|27 wݾ,E9D0K N&奨 Pɘ5Ry&IFID"љx]OK QTu?I`u}]:0vBLٻ_.Xe;MwQJ!_!SB_ Dg*tJ b4)F;ԌxO^eBh6<bB<kGSKA (I+БASώ=l{(91wc GBVЂ}..&|)m*yU-T 6~7]&ׁwlHGVf0p G3 tbSufnWS//ʑvo?WAĽ*Dz3H\-Aeû'Z+e ?swF.Oj !yv1Ϩ<?@?6Ia!ONS=-rM@_,y8kXw{R?ZZ67@1pO#HuKVi{6<15seEJ@a\郄i81HB֥{hvMPw^]8_oÃ2rR$wLpFl@UY)fΚۙQ.p8`}MEݵmr2J;e#I]DsF@AsB  :_ veH+Tf:+D1EՀmxlM S֩Dc? 72GHxp%”;-C6n, 5T9TTBJONv 6Á9^U9QI4~͔Oieu:Bdk D_ JB G՝[@A,M̾5jkXp. %vmثINGKXl"PC[ ̷Fۀ|̕WiW 1@;+_0'1vNBlhwZ =lG8_D,> SbQEV嗑\HbБf ~M[|]CJiH!P,+Icx' F=6h5~/:jܭ,~])5fؤcS\EADc (=+k%]պ[d]9IzLUIw9G9g!0QN$ _'QWdC$;}~R0qx-zn:*A#x=9f$h[_xT_+/cpǞ.XLxBk۷ xl$ӆwdA%Z̐tzJ"Z$j doѥ_9D"OaSm&K1ҕ:lH0Dkϕ!1 q+?ؾ4'6 $I೬T)a K7/ԃ`ijJ[N[r!> Es4ϐ~Je69I6FRg뚋US ϵ" 2 48Bic0n7 QM{J& V ;ű|7?lƸ0Ye5( 0v؂zODz1syCs{lpȃ|}-MKµMݻmQ9c1^o8pl_$VxDP!rPl8B={g0c|G+jH L?OԚt!@^k+ x@4g -‘N=8P^2SC#IV+gc."X$ Q5C;d֪Z#W-xxP}j덌A-ߘ6F\AEػϟYĀ-Ptt}#6wa'փ|)O$^Qmt@?1(+Bo _ye+.gq3 Bȼk1YxW dhn+%M>aݚZS3͟OHuk㜔m-ew-7,*9p Q |)KSs뀢#vi8"zv ``.v4\,Dl\2g*|G{"xWrO-[NyyzcNc:m⌒$͇tOfR0EYdw-h;)ywLMLlߘ)!|TX gU/R+v aZki"Tk@A%aby؊iҞ!/X8.9>ʶo\R4c2ioBWT}.#B0$gD T-xŵ_ȈRu ߛ_bޡkصoPrfc92P薬sx!>*c 1rr&_.cv!UJoK1{ңit ꝜV9$\X1j^0zj'׽:G/?DLh @Gt'A:t.}DEt tأb8U|썴~xo}1<׎/(N.δ_z쵨6]7r\ȱA' -™}up*!& [w2Y9MZ$7H9uTuj!CUy4O,&6D+ G!:i9=OڟyKNjyqW$%|;>aSI|zkh~ i E!" X; @u@y<ȩ‵^rB_܎@Rp}њ Ky7W D*6_dE)%({Li] 'PΏz3Y Z6Q8f0oՎ_]{ǫD;]hd`c'_6A a/>LC:s&CȦ#Dd 9r8&,܎(W(ov{e,Vꩭ́Angl ̰Вݙ/h !E UzFȱ='f%;|#PrcA}g"=z&}zޑA޻+Q \G´2m~8s[jRBB)~9~O#9zQ+es7o[|!,H<〳FTz8,O tHJK~wB/f̡:ctؔ'{? <͊r*[- zfm6QAqTٻp_z (#D `PMmC4\מvs Q>[3Gāwۖn`}b1K)푇`]e\(j.T?4_1ZyG8J%u`0nH1:H%LL5g/d A3MLM^@޼w=!&_#>F7ӘZ6b'iY|9YuO]ϑ [N}? ˈ Q<M{%#8Z1%[s@;\ݷ2{%Z#0nO1x( BՇ egp6=`MsvJ}^QPWO,RLgݝ/~ gojbe_ DUz8n{=I&@YS@پ*w7,/s4{qn\,ʪPLK!t<A2\l2 SN' WZ̴O_hYĸA>oEYXNSR@D<+Uj\5ɋC BDYiw互 $bW Y&s)fK(BHU+0\^R5@(d 1ʊ^o@$ WHӰ|) ڊM%<^Z o@l5gZZbo' iU7j3NtP0akӲ:IJxҍZIRPvg Hh6D_@/p(BjJ(ڽ/rYQ{lT3;+› ϊc)Kdࡿ&]zy,TG κܿٺcXǀē81)/h뮣ZR&.(GW zp f"}qP}qy/Ortjգ*Zj=4΅ 2ꂝD mw,aг[]>ck#4pCG"ԫ7T-uPiAAwFr=7=Ȫ@,ǁQ5ebMg!Pk8ؑW=9NұhI/L/mӔ# KCm"m0ߏϿ ueoe"o^#> Z\2H$D8}-ZCwY공A.Ia>!yp[;c],(I9&AmS<6,d-]l4K)k lSkRmNp16u-( TQ9 2 ښ|¾{g$4 mivZпfVР%pQ~71->daqwHL+ ^~=6\H䶏f4{zS kյtus2Fٷ3OV I`SyQ;E rw 4 `'*P:.*5|Zc[~6dюl@T{(8y̎FKUnsU5vԬ{@Tcr}L* /䁆7u_BQ?'BEX}xlߗ잩9FR)D 7 LnЯwWU)6QL&B0R1F#s cyaI <`j{1&|I󭺋 SmY72[$tHQN+XFN谺Dl'UZhrR\h.Ԏ7P<;s [KȺZTǩ|МC=O<) NTS2' -}s!8UlVHӨΪrBgu|SJ96poqmoe3%O/BkCqC p >.Fm+ks2P6Ͷc=KKo:0VK#dKW]$-epOY2Ɯ)gE9GJHDb 0O|#"!q"]%|79UcB<ᇩl#U4ti(܋P!q3q?tU%XQ V(B ,4#بL4IDe\MTD %1½AW$Nh0[JϗH:fVY.\.1I(T IZ`}~8&`>#?[lf<}3Sқěr?A=2~%u ٚWj#r7YIvJ_"7˔Y ,,95lQ\k*APY.xH2kG6ܰ. GFS:ܪ})kJV(9{ޛfuc@4K`L)KA8CM/eG/f;R cɐBΣy&p*5|D;r1gekQbMF>NĐ#?3d@VR6^iƽ@ L(+[iZԁΨY)3L%iThֱa^zYI$=PpЩ^(gJU}!̺<$XuDm t"wƍ]:E,:v耵D2vM> %0ߨwzAͮm 9^&H!mK#1dw⏰Q@HxL[.EGKZ7ҷuKMmkdAaJc޿9pcJ IJ frH~)RG _BI,L#Zj]0ӎ}1^&;if@_(uvq_nG/oQlĬ4B>S'cac''\v+W=4\"Qbr` l2Η1"2S_yI0FWWڮ87OSL`tw[FA v=b)z8r"SHhw\pH_jR*okL>7tl+ޑ;d4tE-g5ԴQʛiVXCL!S^Y98@ߎ<}ޛqUMBD³ <( nqO0Kc;*'2 v1PFf4skueAZS9'PS&პ?܊F GWm4vu?Bѧ9Mik Ѡj -Q~r A)oz̼9@xI'[wcTE30e {*d[;/LI=Ȉт?~9n.,uN{O#E ^P|^`۰b&="*[)50G 1vPݡjw =t79e +xF)ŬLb&ʝ)7큝\1yI"ڥھ\*d#(~>` Y:̏~L\-=2vڮ9k@_^j~$qF$Pdyj2J[2kH&w!շ? }HeՌRJ({˱ⶅU =г*sQIsV ģRJl4P4zSƧdY^^;3%vZQ caI/c]Ȯl$p˒u~ܮa^-9wlQ!;& DъTz T.e]k\%4HfH &=# ]z]s>%(h C+>Gs, +9sb?0mvb%= FH_0 sUG9J&_Q[ ׃;F5{?o~u6qo Aܲ&dwc -'& 8V~|NDQD홂f̪$q JQIr B=cu̬\eknIzsR[zQ S,^ieJQ2<  `l27,Znw_iAzFSf@ s$+eeIÈ3uzyk/iN:lˋ{2KY@Ea#Qj15Qp/fd?;H4p7Z8OrN&[Bߋ h|f!߸Jz ߼rFGj7S" @׮DQy x*Ki5_y\X#D Zx誓R{ゟ;G[H֝c<%fv9n6)(Dija3WFTF]Hb4|QWtf ^.4>Yyy0;YPo7j=NC Xz]Ԋu:B Q*w^f[9Zâ4ʮF]1j[zBۢ!=PAb1 x3E}Y,K X3@)iGՍRe)} P/X!KG2;h[Ba̯`~ 3i[yhk7ҖlbJBmیq߉ hL~K?CTwnH'qBimՃbW lKLSMx%!MD`R%MBqA;|!yTKp̒8ǁf7i6<DM!S{aV fɭ#Ӏj"e2}iاP|XVK5ᾗI5X7Q[ f__B|˨n] "db%Ocja\ sMi3]y ~,v#O*Y=:aZg(IP/Toe^:=`FM\t?z-:]zPI4:m>8n ]Rűr m`{Ehxn(.6;3нz^Uިr]*f2'5"5 Vc?82e|b{HA~ZBNl0o|%z(n:,-]a6JgC5ϞrmiB\ 3ṡUz|3Q!, D<|rZa^ƏY/0e2}^bO4e:Aua1\(g3έk{VObNna~&l2Nבu)&T}V.W  `4q _ARj8C|MwCͽk=7-clqtC&6<9=hgMf'b:")9K*qI8>QlJOA$(ۡQ)n-"G==,Ԋp&*=I`'<{@2DwZc.s{LjOo*]C5$T8ԥcv'n"fK9=4]iR~w=93ٰډ%)`ǧ 7;,pq$>1dAX +Ӏ2ީ1*I wOa:l#E݌ߊ]y\XoG|9jXqGRK5 iBBe)-Gx򋺀71P]70cv5I D9}I)9+iШ} Ѕ!Л\vkw04o| **D'M#w8ja%»SeDf/}h9Q}7uyP{b#~2Nf{j_H(kVW&x\+/"ٞ($п;^brѲrg{NqTCMrsŎ-0ӫgkR {%`0U _2ab>VY}:ckî30udF7Z ^i  Q TӈS?N5)Vzj]tDE|¨TŧO]A6z!i=~GpTKh|y=> +xq^JU(37=5[F/@r >+6WȺ2o 7wjhon[zQb`7cbpFG V'R6-LPh;u6j|+?oe?#P.;-5y MKOaē[)g #Y4믘sEsܥ$.kV%" xLa fXZShF]# nEngBq& ŖVDbÊzi}ܵXEMaPN¦vhUcԶyC"o)e| ,5.ĢEAqJR%{fMP 8ײXx`ꤋKJ $\6Y]#LQ e RNbɒ"698|9*K餼 6BSX&E:ƺfocxszAW"vzcPodx"_<;^,zC|xli{W)wvp=B18󿪊GF-=|# R#KE❻n& ?5F:˹G>I (r5õE\A8("׿va]꩝ hRRL~I*J4m\m<,U#.o, ]/acERLW) 7챑+Ripw 1ʢU"w=w]g# c.uYi=j"6[g;0VT9eTvv)x4p[w!@[٘<[|VqS(zG|3$TSBv0n˄o˛ ԏapAםV &0㱸`؆ȃ=[t!V)?ythʃE#%٤=U۵ Tڕ6#:s< oS cjx19=nfr#ۃW-c2$ǏqO~,8)RJZU2uB4D*$1# M̾,_LW5YArL$# W:Ix[c-x7J:`MV ^LkqZm1uz u,A@ ma|ƠHIwmP娣C@vcK9)g?*DGeʭޏA31y@ U=4B&8Ğhwv %v M36>^NH޹v*ק_;ɑ+Vz]+ q /zd*3 H7ٿu[skEb ݘ4IFRoK u rI'aS #Wb0w.cO 6D-f4Qj>l`vһKBuA~؏rE(ƽ'{wQr.!OU2n9a\iSgD>H8Ca1' #E]Xa0N qHp%SmQ/ &A3UPxXl}sC3Plxf.2"y웄V| c̑r.&we?#x-Wd/!cr/iH3)zrt{exmۆSl.w>SdQH|"V{r*K6lv1Q \ vUT.nok|J Lk~T{|M4v5Y3p9(d}=^/5rSKH35H$:a6_gdԞBrd>5wp6c* ^/zjkjG ~0{ :m&3rXNi\D89ƈx\~_6~zc<ĉ L4,HN^ž7q[q. |k 44\֭rY*L-9ϒN!vH !8\NwvWaw ko o1Pڂ2^y^|-F_0,YTgnhDe8Hk&bs}Aǩ串*h}i`ނN\MzE3<1IZ'+ Spu73ʾëGr7xqޖHS<+ .7*0T D"M3{N,Boܷ@/f/$Vo~}HΨJq"rQ') Vhkh(^x' 4VErTހ$id|0u3m2٦ᚷ1ًS(Tk񃟔U-x Ohw~g{%؜HdIv7o@5= '_y]:"N@B!4f>86S&oA{d4лgcc{KʞG0u{7 zD%rGmHa@,AZGHaP6$FSۅ<? (M=-'>"7cθ޴6[Jr `bz?¢ {ҿ<_>@g}>SXO71! j6TO+]Xa'4ZKK:wQ}_'}|tƦTg{7=fӾgJ#ՠpFoO)`S{ၢi@߮]"o Ύ(F-\H:qBbcr~0 Pp42J9WG;)c~BRF|v9@ͥ+OMb}Tߤ&? %Ϸ;!!Pؘ#ܝ;uO]F`zt%=O{IR/E*_&ٷ7&dpu\Pl2b>hW0iU4IM(;';ґ% 5k`G'}X %9-W NSYub IO؁: |Xl.k]筮^)+ P Z0YPIS^ -|(VN3ffOVvOҧEKx[VA-}a{cn+:>sqkQܸ _>"\/@ۢ!+0px מGx3O:@'ErnHApDUvjZى0O2ڿD?B,˾Xmx[Rl:V;dՆۣ:ԑcrOJ1קQ-rhej:]U ?EI²WH}7Ȱ.\$fC໪FR$ط4c8LT1?.Cɶu iDƎ0"?KNSȫN {@mM8HmoK %2"lHl:sM V`ﯝV~ғVJxFTMȢ]]Ƕ|tkKٷp1B~,w~E=外Uq . W:i͠n%V iw}4p&"JKuCX聗#"HO<." z{ߔ~yC֔m^WXuʋ;~64g[2B->'?&g/QI-6U7R ok$v1MR_mnmв#Z t,,x`"I+E*pO""N{Aq{#(Fm'dV?iuuEòdz{&ӶWiFYب$OԌ%k 5xn,̼0\DTWjX3wy"f=d+΃ _6+RLՇ X )rϣI={g3l z}2sU!\Kf4L:^+:pD.w4$GYM8J GW Bh!kV}\bOɬf;:r^mH:j9,6 $y4[V"&Na FR>q!D!)/'g,a6&!agS|@lP:4IxW7\ƶRŗ1wA{\P41v+pfUDB,*~oFPgQꠖNL,!t/Ø™~X|q3nj) VMԗlfpTHCRc s ZӵGG<Is]|Sz1+2J7`OM Aa"v䭢eI*3M+J%5 U?@=;xA]/Qc~|;Z?E1X(6x4W7N]-әZ: !FI hjLU. avZ ,痈 9|4Z?)>fjw$SF$BX8FCK^Ѵ Y" [9e ?}L3 -РohqѤO Ռ%9PS3j[V7^h )3T,dKQoerPX}A!Z p/zJ]wuFYP9w)h9ȍ{%M4J7A/hjY;e] X o}!ġA2ȁXݞk.divd8@7Q2{_bglrkQ?9ʼn\ B@FQL\ +N.'e)4S6s0A~_aW%6#Hu699A40J_.tN OE;*l=?sfϨ,]$+fdyJ[͔KC tv'u^YTO(O~m)#9ψ ͆`9'zOo=ȁk, LEr1'H]déiLxLWYl R䱔GR48s;~\UC5z,cz3|6yT~l /4 YҾHSGoDv_ЂK =5&p6U\ Dk ^&- 6jOrչH4;TD+z\W3 }c}kx\OLA)LCv6WG@ٝf25hhNfdMAxw#l|w'qOFGধͦ.[>xIc>Kbe dߛ 4tM!Du=^c7bʼn]¨TСbaUeѶEXVW!FOԿdP%m;whF7U|0GiPN)CmBnN Jhj+{,s_y 5q+#(eH,yE(ᒆE=/ckM+5_!d2:+&vAJ7g~Z@!aiRt!mkYe>!v{Φ%JtZ&Jr oG㤠"e.g^<7(2z$Yv\Fo;% 4;X^+݊ 9f3l1F Kק,:lIwCRZi8vH.M@rE%;Dsnx\iH}4=n0B{WhQX}SBi mAHKeϝᥓi C3ܿ})3ze;åg.+jRnZPl+3PviyMaBkRB:YK[bCPbI#._y5- h"voE0bsS))NH9 5&.ԩKW=GZdEav=,{C8GQ9昛 <+\/j bHnĀ2{O0`j@HP7-Aشxt;mX>m4~ٶ Mw'F I?" vA,cg,sP8D/e+~s(uf^M0N`ww"&P0igBzL:[=(Y0 Is'٠0M炝D{NGc*h૵VDK%g3VY>A60}6YM LW~iF qTRSoJ~ƾkdX9@B5kDV^U!%uP7B}MTs-0S`?2[> D,"H8Ꮏno.Ǽ`XWʩP^ XK~̶G>fY*?w6qlZvy~bEĎl Dֆa~`>_"pIz`[o{bvnPn Y/mBΠ!΅&_%ؿ Ô@"'Ej+|<0vN_NlId^ M#:Wq/ tE㞏eo4:H[sTZ\E[xiuFu]j<`T^׉x`Mm VsĜoJ,A>cN԰ `ܰr8Z^ěKڴ-0\d vbJ\&\[k!4+% iDc`xХn7\*/G4R'Q8Aͦ[wIRغ7G-l8rp{J1#j@7pZM+Xk͒qlO8"= ռkUTHuAjFg,hNAgZl5::u 5~> ? K^u1)sgA`&5 L=ùf6\tw#tze;!t @4vS[j_앶#򞢢6op֊,Ū|ڦU}p\N#A{Na@#*5Z}c|PI|iЖ6=h(b'Sy=:.+&^XPCz>FSÓDI,$_N3ŷyZ(3$PRLJ!GX30Q1Llx HC+ 7>%#~A<>!|!H#4[tP [ +gghxSo- T8*/jb1ufkK>gFP?> *d'g~Vi$>$^+ډv4M^CeWZ$+ ,r@vډX ' !'8ː^V I1m#DS.V' *!'v 抃¹gkYhe!Dxzc!hB@20.n3厝%<|2a̮rfA nKսvÂ%%77Sh8FWFr2ܲy|4xAOPi BIX{Nn,b`NO/e S$s WgITܲIn}׮x"mYrK&m羀2v6HNS1L[̬ H_>Jgv;YB+0x{ڏlĭ9C>ak?c 6~HG*0׺36yM >M>f FΑW?3GC2ݡ nqA>ۄRg K tsk޽ƬG>{+6@> e+9+tRu%ݸF'R'aOA"lYC1[ m{|UC 9@PV}kRl"s=rVe[e"ĝ͜"2kPh5jƍe-rUgdMJѧixؕߵ D8%u,yV:΃"6Fnu7gL.8 lRMm"0NZEt5TzVtv,8䱺 @˒%U9 6Jm<՛tЋMjog_Z\PCiMefdsn4#x Yr_4 Q(D?s@^"BESda-z Hy ſe%vKMԏNap%C AS?J̸\WAΎFު^QSzHɧodjh&!%bۮIVU LbMQ S}׭?ݪf(ye&8| ]P &j5)z:ƹ,'wL1YL`xf)u9z[u~#=wK(96 Hu(-?n~UPYY-IKEJEo 1sQ=! b##>vӊшғ9*6u˭KyjuSկ,_Ú'ѪRW=@6PK_HH^j Q4ty0JӢ;!JXjg\NN)`|a@\v;Sբ`s<ޗ]>p"2jj;X\#*a]KFYݯ>@/Y~].4W]|-a` ^ɰ#]G(ZYG Q|F7Fr_4$#O+@77_z3Օŝ/ DkE5bA!O;V P\fΜ$$l@M"  >Ssq!Bsu"Ia?1mP<]>Flx^cvя;Z;_Z6:ptDTayᮆV*_,.ץ#Ms~{}"? i%_OXxL¥rt%0ELz0P,7ȴH~Bw+t gREE@ |2|]Dq˕pߎNzp2I.9 L_3$6ԑG OS` 5..h b՗u@/fǀ'rf&x mtʆ8"PTnln~;O"vg9{D M'V=ȏGIy/&0XUiQz_CĸR~ߊOUTvP`Őh%]&FI(6,NJz jk3k^of<cw2v teٛm(SkCۤ]x7淧9*`&?VlcPS3*U K!`ae{)S(k @E0((U9N'N\:ׯ`T*$wQ84<Iq>WΪbr$*pHyq>;D2zQtx`(tsҭBf8#vd12*քBdas`^*o pLT^o .: 4wu1Hn6d|`/YK0³gXDr#9i.5?İn_fONu+- ]ŠOi7 @ mog y\ b(kemQoʁ;*YhKd_{Q (K#Pkl9[@PVo:y6@ѣ H áPX uD$C>$ADRy^LtMwZQrIfb~GN 4 @4w6'E@* Yfj PG~P_V^k;0Y>Kl1LЀ$:㟗MI'8~ *]@|4to\kmmdLԷLvF9zZ[Σ^;< ~RW/5C~]E-?퇳 &hJ1O5= wQ9&-]x} i/U.ПyJz00nsURNT!?'}p 3!t ^VVJtGPY= XH Q+"mpvwxɠP&76 iiUMzƽ([ϥb rr{Or&Y]}V:;yfV^bC. xofQ[')EC^'Z$b.m˰ r%&eޔXqA,7SX^F8QEÎP[RAQTD@ ;H_=og&є'Cۭ#RIJ5^8,v^ܶ*Q)L^3r]"6"|: 2 pBnOտnZ.b Xn @73:-'y5:!hQ)Jug4EKn5Zi?K6}vnC]bPe5wO 1=pB6l=œ?s1F ɃǷ< kRƪ3I@)fA؏jt!gg Di8' pKI`l Ԏ"3|jQàzGHEi lErKxjf5y2[O}q`hN ]{9BGHe C?f8|yqM(c7یۅ.v.̹ ng I <}%je6/Cf"ހF[1u>Ahx%ͭ!Fp_sbGT@yj@FrKD4+zPrЍ3,@y/rڦح2m?9 d*̃a=@%7N5w~Vv{jɁmGtb <mK #ߒMHFb6Zsj*poiW{!ѽ=h3`e?BMI{Q̊Afx4A.Cf;C" .HŒ,+e&%;c @Bad TT 6ZIR@u+1F,<܈R)}̖#]ѻ 6b?-T'],RQd攧vK]N)t`f!"bxQYB)08ÿj-8;/2Ny5`Ja4+PtƊ9+[ N6-S? a/rdhPVlX.iI8WSޕJBqHT7lpѶ:22;p*pR F}F>oM( 3'S] ڴtU6]Mo5w"JUlDY=lN59:i-WnIҠzaL=ЩQrXNJjUDp⬢U@LAK`iO֡Tu"'m(0"&0+Ъ¡S)"+arC!Y7g49yg{Ex2ۨy-%n熨AZG.haeajEj`϶kHb? #xuxTb:Jxihqk+0|9骀"VaN{L/%ƛB3ჿ3kyzM4SoNٜ,+Q@M‹{5^魩14{=:!f+ ?J2{\n|2b#5d̶ɢVZr{9v~ZS,漍R0uө/Pl%`e,z$ d6]AeV(%=mJć=46ny<+pя1w%l%38'eXDT5kv#c >pcu6]i% 6QT*9)gOtr"t kwu MdGh$?FԦT;ն7R vMe~aĠf*QxSeQDsqs)乥Zj*"ŹпePqί!Ko)JfI (eF38? m/y(S~2aY~ϩ4c=ha4@auQ"Q]-naw%:~kaփj&+؂ZG}WE@%8g pU{R3BcY͹2$yx=n]ьE0 52'@+^Mt o=}v~$YNI$;"X.[[mf,rLdr=q؁>@H83 [&Q֍ }@re_}c‹v*9SRWmWxΎZӖGL?]U >kH┈MCT/Mkv1r.5]aINr.TKb1tc iۥ!L'硖ψq8dRgm/7S.м^#fCHoWXwKܙn4:†@N]ddmH@nIь7g/Y0|4W-^<m% օB6%;8uoM Z@b ͕ ֡Vs:% 0yR09s;_ 5[Ø`̿}lHg5-Z1/>/!w o|-y-bI03kvSr> qȰ[.|*?9w%?wvט(YY6|z`'goXn,[t&UQ ۪#`XFtK##͝ {,^H @:=,5s"s#vK3Vk3b`^6%c:F1Zt6@Eg pHFڂeɿʤ03z4uϡ.uP!AYn 5JU1$@ VdQ0YmaskɹڜQ6wƟ+}׾(=i2or]Mu(4qQ+9_S"q:J r.rR`6 3_Mʬv1Es!*~>jWE+Bi.]7-r nVB G:rN31\}Z\pyh@(PaNkSv ]8:eƅ#AGhuv|DiPvY"ߙ fm98i0XKriY5/ ԫ6 LM*6;3Q΄x31)/ Ѥ ܃?^w2UMKEx3+E0"4XA3pDTT,Zr$WR>DdV |*sGu6&>\Ƕm^SrҺeJw ^,Q8vP ]K%1%[6+1nm1i6y ;Cq;ꌍzIPZTJnF[]dk7YbAxL8 ۚ E FOH35B޽#Z"KB<:[||'@p_k h6 o1~b.Қz<Sd+VokbbA&y竱p Q16(huB6MU?|t3OjO/DeyMǻd/|K}h oϡbnޑbJoT-R ܌$ǂC"^[U5\ק/t:TP jrӽMWfM'JVhOTM|++s8cZZ(=,{ҧD/*"IxJ!eI6C9Iʻ#)AxiJY]^Jcȣ[9pvc\9^ߟC ' "OC%`ҵ5%]Gv%{E>ɜ'} ?ɸvRR̈12EKRdg>r6xE!n ΤW6X̘ R^t$k` xL7?cz B2c~OЉ gQv@!L&Vs\^Bp"Ȅ/ӟ~av ߶^ ϯ6,":gۍ77|1kgU{=EKl0n]=G;%rcbtw8vN.'$6YʭBoFҔV5yaxAvUWn4^Ÿ*z'zxӜGV]*fIA#E> 8[&1pG8w!DXrAb4MAACu #Єd,dRՓ!d+]PE'/Ɋ_Ѱ=_$ҩ1vP.Il`e×=(a"!JQ L0#;U2\_0 ]phi^KeO42]?.~U\7{ٓ`[46HnZ=B'Yz;Ct7:{"NIVhBcm渾?zpgn'v3+*K[hw!–?Xb$%#8`E:75VUP5P"f.Ta-/+c/UA%MX@Vu*PnT%cYM1mmRe8~wQJL(|'QDsN*?̦^ nћmxd4Mw1v2''=҇gnYϢK2 @iFf];`Q~ Z.QcB!ݵ\iGx{+p<ٷn[ȃj7NA7RLJ Ö@eHZ4v$,pg9Qd-7[{]'\ĺtJ/_ٝYaŒ1I;nz`{.AcvmyҍY7Ki?°~T5Z j88[NLRQW#5)9{eBF"Rw‚i% %CTnmƿ }eb!nSؓqŗuvciSu1$rD^s- a@lZu@aʚuI|#t{Ώh2`dۛ8ɬ9i̐[ݟ+zl!WT' `-rޡlxnsSf4Qi暙r^. 6\KDv &zRV|` m ,݆q% qIɭh)<Σh1eiijT#% }2Egr2m;K]Ei/ L6I9G%x~ĢfDDX ̹09F#VAkƂr,O&donIArPp ~z0p8}b ]k&cX1a+2_j6%Q9Eo(.UR$v`P_d!GԺQ].D.>A!z2 Wl}yץbJϧ DZM?'嗮}4+nh$?W] G]3ৗI4. [ цQ[=hOG=/T_Pӧ# *Պati<5y%%B"XÅI/D.zۍ?sA!4m)w)W-0moĺ]b[@z"u>^DK"+NB=:^s^֟6xBֺo\&W]'5`٘T<{T3ڒcoJҸ)ĭ <@9[2XۋRf|M#e8왻E%_桻C=-ҜOHUx'oN$=xfdg'SL <еsr lk"ZZ*6FBzIGNtTMpm"a9[7{vc,ZDΦyFY&$y| nvB9}I?Y8=nj7F/yZ~P3|EReJwg/!7LUV2 u"suݸ 2ś VҷMثCe1"R"0P57cWĚ!PwQ* |_cle7% tk =PoXx8jnX&rhvq,BI@}ȑIƯ _z d=K v|iiU7@g6p0Uf$P#jR#C {jLDwUeEBl(]Eqcb2x/:x3੭S%Oi)5,GfiЂ#ca^cE4Mx~ {>E,A&xh.R7+gx4ٻy]7@#%yD074Iu 2LGAkb~!K\!-(?rĚ=K3>,G+׽q0xj JMnVu N@@.!ջʡ/15r?xerEU|-9JC?TKI_ғVv3r9Ww(Qf\v8]}FvU|EӧY-K*2cMc9 ]0Qm3Ojy,v%j1BI =4-R[y2-3k2E&'! /tyx̫E֊Z;;`#dץб>11kZ[D sֱC|6kjˢ_VSs,e"40[xbbSf)%*{2& <7/3 =\?NŹO`'b𵴚9[_!x~}l:wXz%0RU}Bm )ŀo~QqV)n#i]rRšD =` OQ T7ע)n"9D;BZb/|^spny0 jOdl!#=ny@suMtLws3ҳ,K } h( D*]:!|Xo A Z)(%[U`$NxjZ/\ЩTH!C;Lг8ǒ1nnmi߷q>WbxۭQfx._MHWhaiQ/h;%q}ZIl`yu5> XY#F)T8Xal"bօ3Z2-ފJ^s}j,9"/#ËMb5ēpoqWG\΢;JK Ǐ0afY"U܇S s/ [V SNƚu,<9bnu%m@& %frzw:@1MRԴ~S+g?Yҏ[ܘ-{,Rߓ%uPz21.8 kF]ӌl^Na`GCS ~RSAӎӄ(a}2WsG"1[V.4=x8uD G+xqxJ4G!z((0hA"@n'&Ĩ,pT'|/BIN 2 RUĚ@eMpk %nt_1x3 <ݧgls/چ)5faWo4raY}@o=d LIwA:]Z`IsQnJ+RWq RH+0~'Xnv=4go3p p!̨-N3Xgn1?L8SavMVKC޸RZv[;PgU$^ F5} ~{׫ȥb6F[!NB仞'sSKuE1e}F oq?6 P}Gv3דpJd]7Gb8]׬ 5ݮ~QN]S,d]E6װwW])rulyxQD|iEݷ~!Fj\ s)!֮c ,DCV&;Ȃ> D?$鶲B>p}wVQDz>~/8Y!hZD JE^b oiF~Ȝf֊.OB兗9XEDd2(޻U|rh'!o|iiF sZ~}X:ձ'1S')\\[~$84)[4E'qkw5׌tAmEZeviu7v*]DDFKs2.z ffAmCEg*#׀p盖@;߁8Ϗ"s.tj dquQPv3Jb"0%upAUC g`X"t].ͤLiei@' 69^P/J͵{n FpmSw.k}R2+8ØxkUOS}}Io[ >Ҧ<ۈ6;ˆLx|8MY >u\\, 4rG\O|E КFÞdY)ĥ2 lDž^%wfzW; U+fp~\| 2vt uh FV {4ܖޑV${Jdq^ < i xْsXruYX3vmaXeWJ;|%ѥ@݇/Ey-[<.>cpOvNJ3*8*puvPgN?0ѕ1 m;k #{7uU0 ;GZgk@/g,RV]^Ro/-V"}C̸H/bsԫ8[ɸXJ=nrQ+8" r+\',Jk_p4 )[ոŸ.@Z/ݒ\X㉻r 3D9b =p*AہaM \q潐c@Dsc՛w ?,6i 9!% :ڍ*U* DYrháOںoj:QųW:vWPx]7L\р\ݘA P0*r1#] +xLi(Ch~367='c\IOrh5 Dk9wBcA &6FM 8)G5?Ud^s0 J"vʼnYOv!RVwXwNHbz./%(P Ja5nk6n.]JX~XbuT/\ǞRZ^X[W56h&ȧ`'rwwɓbVS^M+NU|'5>+Ϛ4V̑ѐy]DR Ψ@o) #k,o _vP{:)V!eo3ND)bzߵE͝' ꕟL Sk lZmeMuN;j q trP|y~ 'z oUN& ZS)K7H3ȩ(Cl\.-jehO[^U7<<Ű+.Pc V:Q{ NM6.3&GC׏<۞XT  "4{K.>V E"IoQu?7I"|1TҸVGpg۠hŤ0Fk\arWo]ȞX"Miڥ9T($?Zh 㖱a lڃ~nǪC"^_wQۨ5?,mfD C_xg&|N#Vg ?CSN )~7@[2HvaC^ҦKq㇗p;>s/6BS vz䋀vm烧mB;:USŽbx1s`%.vُ"Ngg¼P'{RImZWcԸ 2KN:F,#1IUy(&Pe6!җMϯanzO.2`4XCg"X#]rfnw T$&#FH0hGOP{;1xSeSYaUiOaE*L "&h\,1-U+`H)'[wOùPێ#yTPa\PiahYeoV{Z֏n@abf@AO>?3PfBekv]×V_̸b ,~ݸ1mM5?[q'Vt ǶgEQ "ENƲ4\sK9́%rzexώ_qK=,bphI٤6mnaX? ʅ_ !xVU4 t@a@Cb  }w J3d҉p_m@X5]1HøzL j{@v @PR/ 4֥DZeWڵDAl">ޠj C|}s M!c5F}_q 4}jP6zHB1hI\, =%KADI,NqGy_&G*ߓzKs3g>ZVt#`%t Fɕ (G{10M?ݤ_Uȵ񇜻'W.2Sk ڒ_5^N(A /h+ ؙz%Z =zep/k"Vt)؂ҭ-(ML)\bT\Ѩu-zO z= ':ǏzKbSO߂R/׺ "/ޢ֯GRitZɂy%|1__I ,=KٕQl=G޻5)GU) [< ^ikV[z9c|SfU6Ұ@|<ƻ5 FojD`_/j?Y|gW J>s5QfC^BЩ_߸4Pas|fN?T1*#!I7/NFM M2ƇGUr#A,}|("in qBߢ(I(ˤ S;h:IeW!r ~{Rݍi`nmJ sPS@hGɉ$Os2\Pc9Py ## $ MIXf8>.$+baR4aJ `f*W 7lqJf0TjA(J,B-f~Ʌ8 8F{flmbn\WIƁG5FjRzt2.[t7,SQ&LxKV>rфx~_oKp6_t+9#cХ_!f#KlB,8{cq@e,q ey#Wkio Ϗ[١${`gzzMǮ<.Oz٣xXqbFx[4@=8 &Km7g7[3BqxESͳ$:I1{EP:'\0&ty!FGCv-šYWlVRFp\j7f;6y'_&aZ=JwNCR#hh2R TZYܣlM0iO ݂ʢb_JYLc"Ye'z @EvQtXCY*ul5CDTXܒ44ق|켃 $EA],J㛨$e!L~H܆-uH1S"P۫,;oe /9V4}IyecX`"/;*ay*ۄ?=mK%4;RfJV5rHbD\8e/JfɻJ-dt>T[cp;Y=5T-#nG<b Mvp@"6 M>P z@.SFНRaꙧi&iūHF6)"p l BeY& Q?VBbYP2] ,!Qj^+J$.u$/(ΰigU/6{3tHj-ڮS.}W/@cĿWҿP\z0y ml"B4ţZ%Am&E_U'rο)Y=l.s֣סquѭY0U7B$CD@+yrz^vTj>& {i3(R闖i{`Lڜ< {jLc|˞܋FM^m-]i1 Wd*j+tbzrcޓ0Qb LhR1u3m-&Y˶֖l![2B$Xew~pfnag'Id+>kr H9> b8g$Uu3Hza=w(BAu;b<elP?8rQ"jK8bУǗ&"Yu㛀A)(3 ?h7<ڣlɿ?j<?ٚ܃xDf'z:nO0} Tm&q>7Kg;W&ͳݖVuhH6Y>$9P&_^0`ңJy@HvIwL;sh՜b_B8>V3F幰Kl%`w6 hRhr<qL0g~ؐ2b;hFLyQ 6xj!/6‹/"TuQʛ\AfQ4\ HT)CmxQC/ A|^F񌅱\'9goN 84~6S6bTsL울r. 6݃GYHTx)H>‹AVQɝڰӻN"|`Nh\jJ@aEW5-Cƙ=VہQ-;n<0FVJ P׉s \\[~ƗOɉn< L!hs3 aȝ|hfBhgFu*Db|,T(*%J<.ߓދa=io1)l~#uL)dE;ENJ# p5+35C b^DP1lM]6 :+b|H^  mxzԞBfw[K6/oV*.wL4XrHFK u4ψo+S'xq;_BjPĭ`8\6p @tU?ܭ*n_}*!I/;?ey|BHo|yM H-?qR94=`V[^q5n,HF6 0Wbwz`[}gub(*$ f>9CxFBYt46(b7xtIJxtmPyyn @քKl7uv+/ 3RUg3%egd&}h~)H5A0oB ?q ,?@e&6d{%Io;3WiTxPٌbiht10n8@ sUmIoD m`/"@'s--`K1A},w*t|uOeb7 y(٬c X ,$c-MeERr<>ꍐ*d8O ?.~1_awЫڝ["qt\ [gĦ\@k=Fn\G+_ӝe(;D{Uv1֪P!-FKGAZR-^e S !pLUҼEnT 7qcADGT+X@Qxcg;rĹRۂ-8|iԔx+'8q܌wTJS 3!Oy6KP Jv |Zs _˲]=Y/PY6+N7cT׸B@F8lD@Bs㝥fouĘh|mc$P7;zc!5.#Y*"~sܰr8 AݙQ\np}dr#,PWW4Á!UW2-(OYsW1 {%Pj i:;2!g$ެ9GH,Xǟ_-{G~2h;@x<^E|ɰ>< Q_as(w&1*a0D24M C|:֚h۸x~ Ƚ79|{!%Oa) s>BbvI$*.\9R4uӌnrB& 1Cp = AKt&d7ˊ % ;UW5s|8hwGZ4^̧nбz-ж|)*-m]شdaKjga±! B*EОhYIWy 7 rZ XyD5 6uvh4Ȓ+ @zвoUw:&):)1@L1>xaB=֨؜kӲd'Ђ08n^o,.KLh/jIϛOɸOp?$e -P¸d\U'y5jTIސpGN8t QvrUJ6t(=S Ga1:Z*S)WuˌG;{7KFrKQd OEKOOfZoZ"lheBTѶ]ba=܈s;FD|~w`F 0V7iF?[؃y¾2u  Nb'T&VfJ:哪g)To*?8Qwu4TM)bk a"~S\L`] MUGQ 9Ի$9ď &zi1Mlϓq{bΈ}#Qz;OH!HrKnxTPC9^Wò}P]墝;řAR.N0qr{mtn~=l#Ik&8ոF$!g(_ k o ?Ϭ6B9 |ƴy".IY-˰ bK,D#1%X ٰ}otV:薙&]f?{9s(v6egvjm7_[@O=䃙DG*Yk\hNz!Y.!)| ];,{cL0 ~Xk3 " >gBRUmT!5 99\FHN$ I*4¯5wuv*o)g>RO+g+gN sL,:g,?} #Ҕ.67*4f'bje1et/hZpC0b{}ͷRq1AXeª&T%APBZ$XڡG.Iޣ[nnz.Bљgєn"I"=zѮ`9x磫ļ3X2hnrLL]T+g?56r0U;ۏEj\ x?ԝr~m|b𭩜euؘZP W$GqLωv 4)0ZCRZ-lBT2?RR8ˋb%`*c¨<0'wK:6tYeô?H„)%pdQD|Nol:=!gԺhӑ5i]>4x>:CYU/Lx>~jN[~P _@/ix j#k#5.U HPfG@ \W2n i5t)]_ Pjaf5|mdo_#eNLxK}6o2>~Ѥ"qx$Wx"H4HQCs 7#YD͸=^Ȏ|'%tҀ! Tk%L U(qkg!7^B,ɷ}ďiw8 :8䘖veMG[<"d2o|I30`GxB :0rF*߅_.vij4]t{('c%fQaּ=&v3)n.ώWa>B4Lƥ1Av)"GL܎BC[hTߐ6cO!2 rnJo_j% Ul ȪVj8ߨBٵo$F]J??"- V~8i+ !~(jN+M 2]&5?9LkI- ю:;6TzNf>? QLn!2p-Oگ=j;<Y˙ʠpQw!tf_M1sXIO>jIJ l:(ςvXfРIjrS J[sR,ykѵt PZ} *]cxBg, p쐛|vOp!5|O 7ڱndKU ᢓh Cb "n%*! q,sn?|39R ARv,W:27VX>?{QOЕTr0m 4\5BTXd~Q/٪U(MrirY +x?٘gx ŵs'r&5UM~wYVjJ$acJ3v4{JZ|A AT0X, }[dJ>"e끔 ?vC/+5e;~z2ԬF'LaGfQLߘR(dM&K0sTz۬xnX>nۘˌ 7R/^D)D[ٞ Z8I( V/p\Rp9ͭ=zbCx\썑@=Bj)l8䕺NkfzpRUmp\[jqAD$P=YI Y9سm?ו#ߠ\ŕ8./eD[>=={2i0*3\=FR˙ 3q}у.:!n|(W]Li?Րh ZE}mgQ Lȓ::ԣUVbCO*Tt<,%TL0?~6;}OҒKqp~Cn0<:Tۆn-,CAuz v 9bK u%mݨ2Ej+L*Df5ΞZ9ΰxl}JЙk!=uěmWrq[-}]fs ta"e~D҄ 8R?#.A{0nS\ۇW{݀ⲤȚ ;dOmp^R(p ] _N2g5A ԧ}W.}Mλ۰j3~`*2ةbdgY}"*t𔪞m@EP)*UċCmt[٬-c( D[3/ڻJ(۩QD{Ԍk9 E\ 2|ޞ RR&4y&|NB~Z/" !ѳTӃP_eyy!?:bL_q}ſҠ%kNP-SY|u1KE iF8A L1?Fy?mUko6fh|o؛13Ԓpb̆l#TD\eJCWIC7?'uDf[QyZq]a7JZϣqT4 T&BGX%z򛟻A֓ΞeqVrc>_پpo OV>FVwqM>A&owJ}VJ e%lA8@?c@p ,;4wKyPWҌ7=,tH}U1:zYk$4|`se5 *J;wË^gjƭfCi&Lܟs&@Hf4=D|LOwhݣc%o\9ODAۄͦFYqxoGSe[I+Yd$ ~C\ΛN xa x Lod }gC(hͦXޤv* oxDYܢsjaBhQj=q=d1Q8%Yy~}/6N欵Sh_x׹lӥ?c!R]/Kiw$)c4)wL۹ L.|+t ,"qehCc8 OS ^d/k_L F=pJ-F8WYm5P 'ڦfxe<0{_./Uzz+Q-$svon?qPݞhH^t(Y}Ǖr@=_Q-H|ߙV$V{IӉU`%{2XlN 9t0Co%o~нFR4~ X ;H@_p ]QS i׊@D"?ud +"y?VנT#sXaBүhS"S; Ж+D͟;({@s҅> liEšht;2۵9LFb mG_P/f4g{8[Q Fuz,y SȪEZ$Q_۽R6%pB9!2>?ϟ[I K7f )R6I5JzlZ~-%|,HG%F&1?OK~{.ܩSY@QD_;~Շۇ9 vU;ZW&Ǫ`wM4+x_36"%Vv"Q@-vo9>`3vBK2퓻r z0펥,;/?hـda\Q2dO_%N_90m-9웈_$3CC]=m4Ӕmف9md,O12@=if6Fɼ0l9Fu+uTJC!ђ$Uƹwl^b;T r23dlgײuo Y @FTqEF\k=Є}|Sٿh|#;I?ˏȭõqq!cmzпR3ks9[2h0$Kx(B.fmX8_K2*Z36J+CYPh`KOH]o2ֈ ~t)Oȅ_]'Lg@:鑕;e E6$Pvd8Fh-D?nM6ߏ:g,<9Qc<$2tBa_S2Q1z]ͤ[0zvZ!nJb)~չ0.Y젼/mFGTNȆ_h4E/~Ϛ{J81/$B/*TR};8 N KomqG2))L L#dB(FjG2R.Dݷ""7~EMEFQPe BLcH୑WgTH}`5$w4E#~?[pb7]MP9XN  ҵ;3aC8 7Nt}`w,N(,hG6؟}&ڹ^/L讯]-0RT豣{FyxM7nСU**o6Zۜ$r-bwrMd@FwgMmm콬ks ' }e;zKe$.Ƨ~Cdp]8WA*6(ՀB[dӴU)G.ZqjP*6"7f;J=(X^:U@xSg)BW2͐"ܫCy 䌀ELrޤF {E 6I ,ב,}'g¥&or dB;xvئctcDkB#6i7tsxODuV{\7JYhпw V$89wߙs[e݄T v+ _#bqtEA+[@!A¢KIIrsC|%:Οp^Zq3z vN۔}1=AEej{zo j1"3ѢIK9MB}蒌j;ՠA.jdP(p 5B-^ηp00{+lؿT-h4ύlDIʈޮor"c5 ٧J%,A dF)Rݏ})>wI(Qsk-3~f5䶁:|.xH,PY]ISxS?<(Y{rJge7 G(y% {49%[ꤴ R"c=81uc8IPjN(zy9ٯ'&^A*2+[eVx( h.ɀJ=~7s!6v="KLk38 z+n%CM5NF\apA _obpU!f5G|(h9Jzh{nf'MU`/~,=~9)G 崢#=;=7jJagNPpX\fFb詅ي5jІ’V(nnqsL^vs>pwTC4}QZ'2>s^i2 t_&!I+7hRL"ν+"PASQ ]{fұX:l8>7^j"ъq˱C>=mn 7| ^ p1H8ߒeŘJ iUaQq9X^ڜh3?8 J/v+1bQ6wQVN5 Ľ%Yj""bgReTGFk^:9J{I {/K6`0()8'wVȵ {wl:Hi=m%(jSly'ʯI0BF};ms'6_M~:p_퀳-9Zg-W):=,uu\@dx_-,;[kdkF1ȊծnȥouyvPIsߦQ4"^Aѽt'Tqxmۙ˼C*  *9JxEJ~ [~DIC :S ?z62H<7XE j@]hU}XؠI,8 4O3 A6ƋL0J-J?aڡ[uN'۴3Ah;8 ˨Y6/'+ O΄q0}CZ9$%w` qf؇*-_U 3;Vo! puEvHC/GpUFd5[ {Đ=~FԌQPr[0%a`pf&i#^lP'Nkx;!ĮktvbAkKC/vd}_a<.Cѕ0GD`RpqWCaMPaF:_M9fe}9?=!`R&WGx@EqK!jyvژG4l+GssJ`Gvs1m LŇ.Ӧ$_0'ﰖHj{n^^B Xkk\+0*3}*Y(e}`5$o\z^E,ܦ헆){En"7rAޛ4ЫK1ƈ$fGOoJ!8]v*Z9Fo0<5>HHI6C侸+ \ ɧ |㬔UU Q6 g"yhoG= mVa)ַAcw#@c\ 2ŻJqaGmm{YvS +Aˈ{f4|ݭQp?'q сQ:"I9w $xU;@{k%jlD\ ˕)ҒCI%4X. ]PĜ~zU}vL8StDt`CҼFT!_jWD.߰~EE#iM:nSS@XH5(sc>{5F%tON[dj2hӊ "ӪT>fa=m0WƦqI GCtѥJAKx'mgFH7OqSƓLq 겢@J>S0~7|u{aA$ iX]`shըq9Jk4G*xeiI-Ǫ쳚0;Sݟ C'[Hftq)< gVȗ; Vl~ 3DMxlЍ0L%[ r!p;$~}7%\Ƽojvk=ʼn|~ŦV9Ĩ hh ֳ1pkpAH؊,;}(!Foa)&N N>Q!3B;疣 7D*vjΪܘVXZQJs۴,]lk䂳 EVMJ>nE$B$B _K`Ȕ7JjK_e2iv1Oi_auޘ}ek5+Uu5x+0[H(ٮVhġb&_t"1zC! %tf?84}Y}(71?v.P(&GcQ\$^A+*]b@. {('tofh'p<9 Ķb<4ҪO  -U>(/;h%/ctIObQ .ѿq%`g1x-z< GH`ʉ\aőW!sRRǂEPdž׷㲇AOsТZ7 ݑSfny2fD3@h.SBk_.n4_fM#2cV&[_k5\ݰt#m u(@3-[C-qVia?8%\E4SbBދ;tnδiJ<r$6epK^^Ҩ~>uP%@*^&u1EbP!c TsAԘeme ^ޒ]:hDs5Q\)WࡦUrd~Q6om˴CH t"ܥkp-fnMjMkKg1$љǴTa.J."%1)C*A'n5#BbtK.q" G3NBM@;m8wIyѷ sܒKo1EHÛ:ƻNuB1ː1]֗Y >aؕozv) |'N؆ /&x $e`닡X0Њ&):ug{N dVP_ ~ j{ᰇAdrC?Y/y]_/<>f6*|`T;-zN\;軡Hav$shr>g]z "nzolgL[NV ,ʏ 8t NHáX"n͘0_rt pLgQG %`sb9RR|?)Y`# Lͮ!,sϭ9uPSDaq~ץDzZX%*.{l-j=vLY#<4U^ Ht {S4 DyQ^E)䪫rmsc5m'KfDT5yܮt"9Mf dK $'j7}O>OpDTR2.+0,pߊn6}*P6K"tˆ6H#>⢎H${/ƻyC9%`ft.}G.툫.?enW>7.r"- 'ܼH9W{#'A av"h”6ĵ&Mػ[fs#Θ\n$ z |j .݋ˣD?f9[`^?n+B1;m&#e_PMhdf=jxxxXC".qJ(Tx O#uhv'FA#P0 \cFEו+^Vi 0 A:Geߣ+bW В^p~ʆq^!|%U+!j& 'Gu5c eA׶vp cuMJ&Utoju ]!M:Hu (Jӌ@Ponc|h4U53ySD(o^PVԬБxd893=bzUvh7l9СA'\1׿~Wp$ }q1^l3ojEw6 nN|Nm{m~xTć0Fn $Aco#5k4R~@~nNjp|SFQwoI9&`pƺm NZ8ia|]V'k@L"Iths^[Q;w$^c&Xx^#p ]6GEadF+YS:?C0I,Qz@EEJT?u yYpF\50B67%GpciS6= D +a7e=Yyљ?)iV &h~"0~!7 S]h"xxjū+F'0?jV] 2RW, KS9 TDD"9 eɛoA3A(`AB|CKm+q\sbshpZЖfTk)c -W7qZ6`X6 qO%o6\% +JH~8wΦ VBD![rA&,@0#7N%O出ѣBRA*mu+<0}s?E{Q,n$m )|xRԻq,Y(^"y3$g[)c"^p1r#s$%,X;KIHUPH$ר͍mG/CY'^Oœ$ZL`J Ya,`w}E=]qg3"zP^$Wi*r$2g T"+}-t!ƃvD7*y[4` ,R.VMwNܴQ}`iJwaD/F;c=T,:J Ĭ& o[fI7$o$So룘aVVkJf vM߾y ^ ŏiw|u=oHCm3gFG,"}tVsڡ,f`EfDG^<{3^ƣU<䖩j܉wYގAx`gI-Nu6npW*nGGSRA<4"qjї )͊]tTF'n[Q,3XP#}U+7m|#Oy񃐞dmچoCaq$ةE'=5E* C1 ll"q-ů=gPXpR6;\+?jPi""ZBFC-ޡҮvs]Qnb De7v& t uSv%( KXAS?1NG/D-H@X3$Ӱcalوf;aY0-3cRvO09U?łKFO>9eu|#TU 1F5XMFhεə^&Q/,䧕X:= @1{ XKA';$8Rjld 8[/ D >ίb@f%ECZs-XdW@ eGG 1{Eugx!,۫VjjBt(i5 VeU`u~ď'Oty6󏺓o<>w}S8"h111 vۺyD|$_kD{q=Z~]oqֱih[);S:ynj?J!(S'G Sizb{~]4?Ҭh \ֈ+د` ?Mpz;N?-haQ|xs'MC`R3MҰ Ən gVGʎ;kKb~#p ѯPxǭbC(ؽg*J'{=fw$NSa0]l9ʻ`ŸQo.&EuQH$7B/w):p$_0wр!rLJAc A_&vAb[R^1,{:g'y1\}"ag,J5#G%8jj6L7‹{7SSMTl.a=N+6drX1uC+^:$~@zƱ(_] 99x(%,21'\|Y )g A7ʚ$ bفh.VW[y|wlXYI$d*T#dJMERv b'3US-.bMC-5;[y16]v ]ztKnel"2܇q"WQ84g:|;Q:Fs=N0MX ݄9J9y<'c}_' |6RzrV?泈uYJYy񧁤aH!UR9Fvxnڷɠ eܢUFE /]rԬ471Ol,B9y-Y?[6vYY#\`A5t x:u[HZ(3ƃ"STDų"\Y:8+r^p@ӑ /e$W෠OzO>N҉82tj n;s>l2p)*J݀ϓ ̜ATc(a%p2}~tĻR@67p=4(?X#ҖX>A?FUYjNK,4H] 2z;@"i} $W% |?4)=/.B۪(?OۦJ:-GRҽޫU `N#fإ| =A}W;82|IDPnX֔eC3b:ߖdiX|ڳ20֎!U 6Ub?T|#x9RԞ_(v2xPp,rM& [4eJAudvHwᮩ61-3(; ͸ɱ $R}t:/Ԣ\V;q]Dy,X8|;;6`)Ʉ +|lNxӰ AX1];9$` t|NAX'}ݐ/. -Ag !-=hsc IA>3Kg ' cliA.IḀq3c eSUC#0"S ԝ)9i[=FX *N>f;!pѺ~ɫcO0%MT)M {LFWO s|I .CM9ej9N&o Z/ݐ?;V/D  FnXp>!W|߳Mߣ|N^RRtC-vaHi><?4Zz| ֪D*E&a\±Dz OĤʝ\A/c ?|Q׃8zǮsWv %`z1Jȱ|2F;ڀB:7U/!$&[ H.jBLf-͊ .\%H?{?O Y3Wl\kkR+SThG]h56XrB(Y4QG3C:Ӱ/USS-<6W5?0;kɬBM]53SB)p|&g塂%U3:b)22LO%aY8wC.TGOsB#(٥#`_>NB̖뿸Aլ49)QjډS}75g?A@35-UMWY[)IYC5!hp.{Зw<%*D6o[x \[-Y@M@;bk/WNo75%I½Zi'i&8鯂+h"g)be.zA2 /"`XQ^t~LD.t<J-/<1;uX"Wz1zԐ4$0,,Ast" ĝf0K{&OE%5pBt?A {čMȄ`!;_ ưj_m0xP٤DJ(9W#VP34"C 6'nad2zd_W7l}F*5byV? ܜ<wpoܰ ppm]=^3dBFʅڶg؞{N|k$҃ ;(Ljǃ@20r}7bB}O0jg6X!6֜0=j-Ԣ x8Dl zH Ì%_6P|*hЍikL{ۿ$s56u!`ҡEn0|{Z$iw\[5CKv,JWUIfUIx滪 HɅ\qԱ5Gfc:+ }hS+(d}Xpm嗪r1' zQ=JL)2z\lY .Z}NBΚ&ii4Y+ =y-^)N{i`8ء CL(Эggll~d@@ҙ ޗ9e!a%:wH,s6ڢ3KFb7 E,#{Bg_KL+.C>ngף(:4Їvb\p~H%#kOby(3[6u>\jcWl.K") WԴUW$fmLR3|RiWFÉZ-z;g@a¿= $|91)4ϣs,_dX6%t|t= P2<6鳙S+@aXTkՏ`2x6BG7t8%C _pڄwMWBJs8GaĐL҉5 ab 9] ml_҇+1 |O'ӭKY=K[e"B@+L?;UZώr'wVhh.``8kB̩bOW+DG(n^0bԐl&A>+'m JUP4 "/s/ͭ1_!o9f4t_ODouĮU͆>rm-9`kvS˔x˪<qu!N,9<.{E<E|N1qsܳzNq ,z.WK_ޮf F^EafA:˛klVZ =nW^:+5%~ }bd!|h-B,"INbv337K?@4Vź[5h24Brr͸'Fz$j~!7 ҏڸNtKIlm f^cycel|y,kj O\3@ m)n?H.Q>r%mά'-zrރX9VʕZ|R8r%J>^fQm_y3zo! 2W;Ew15IGi`v󗌅}꠩DMDTcm99; fyʒG9^GW+P^9Fu+$yܡ买Bڍ $fXi_nǽH6+!-Jm/n!WDg] KhhLD)yd_ل0`0<>tkay˝&s3zykmYZ+U&!I1ⅰ*qD #KqK=ƣk t O drL8H+j}߮n:qCNESoW`!!jp(1l52t(*T}Atzs_sXh~)$vLRi`֚+꼃V ֖lw8 EY,*3&x]$"!7ⵛ)lg9;4d6%Vaq:}-ޒittUp-." 4%MN3Tuhc3Xc+XU7ဎϻ4"R:6Zv&M yӞ2ƃ>v04;IutXX-YU} %\M 7FN19'!lȊ ֏-l|1+"ͫBBG˦Mi\vaoh Hcv:yOBZ(0Z\]d54̖}Y) $jXN؂Z.nvuY}8T7[7Y8u&[ZRSdCS.v\frZ38S %( ֽ ^c'>^IoHStEE{l]l"|I'cH,F f'cy>>{ZJfF0|Au<^(ͩTUj'PaAQ3^UO8YlBM,;?.T}h+KXΑKÌzmDNbs(}3hEibP!sso`=kD2)Yޭ} aCeY`9|wƶ-m1\횡aH-5?yd9Q'2t9%' $&rs<' jnD]Hd0s'@$*{mZ87HʜE4~C5őATlHfPkba)eAŘKyv/%58jG5񽇬LF0Q~~x OB!xW(^X;ܬqqm V]i뫞rϟ0jѧY*нŠsBbkyxX)`( ǠdwwT0Rb9 h]3k#dg)oNl9v=ųx@\TIߢ|'ϪunA$W@roӜWx:.~çK YcMq&USB~)dY2۸6J~l{\j`Q t˸8W%XcJ#h4\Y_Dtea.ݰ:0xBύ,&^bq" +xOo"0ۧB hZ&MҜˆ~׌5RM,H%D\;ƈrv q7oK$0LR@{5sy Ԭ#V)mo{LkLj<$5P?I@~"FHriȓj;lI6nSCBTN -m *5J/@5r&sAhtڅ+np3h¾]PKyK6Nү  g $ב% @o$Q"qֶҋa>,kh p s$Z|%UJK~V99g 8bom›ҹtQ^ak-Al*8Y󥝉2qN1k*=]ۺ%ծHa۳ASM䀫ҫX91ʹG\zhv9&q<Yf(sݨ2>u}}OU QM|06_ɢc!lFuvX 74ۚP  e%@$i;7}l(Ļ StbGWd' f4;-jzA'!-ZPM6^% 7B$5 :[HqlnXD]y‡ůx%Iή7f.oG 5&59&ٙ! "0z%KzBnT n]s w Z5bf%)*@!bQA? o=eHQS-"%fךD"eꈜ3:V:1`d׎Rj$IW1n=GUWw׺*2;5!u'zбB57Ϡ)y@-:R^4 ?(VlbWp;c i䁬mJL8arTIR5.^ t0oS;x+7#Lt 6darLpl|E~An\#r1%v@ T vO#$ ܇>TՈ.钼BRk~/TVP DBB?`J-PآLWTo,7 wI^3eİ 9T(:!TWm.̠kڿ`^yo*;< QdMvR k.)SEfX0ڦI5]ۻ#gX|ϊV[ʏV]')'KTC*Z]4=dOg/+-, zG*&ދMVg/kζc{Ӏ wƵ_z^\cS{i %QޟQ)Bܰ>2h:&bMBNȬXʳ/) Pgˤ_̺*U*D$j8>ޱ-kbNPKiXvqfiWP͝塥SӖUWddsWز3` S*>{O(XKYU-b5@蚛NO=ɜ Ŗnr` N !rβ#f%vfYWY䱒$G%ϐ>=d:5ݏjv1!ᯎ'g3MZCm=@'<*.ՋP}"YHդo#v0M%#-^6E,Υa*]i;H (TbCe< qeyĈ$ "iH˭:8X ɴ@=vC8K5|WƤ\c|4jìnН{&w9*9Z.c!5#&urV |Sjz/HGtj9{$'jͯL?_*0$De wWELQ'MJNg#^^(aB*ǖ7zyߥc:Rq 5_J&90u$t \f%.&a4O6s1U#\TNg$Ui;Di7 92%@R E^JQ+cl/询P? a&{/@PARK*Aa}+f!S=o&hˠ0y3ɧM6 V"yцGXWw񇉌6>gW ۳ Oqn@&š 1kUDD^y6Bz`۴@GRȮ\4Vl@Ⱦ@ @(M,7I_.3V:Q:Rϼ ܓ0wg%xcZ>^, E1G v"lK]v>GGټ9g p( DI&Vz |NgXJC1Fl\s6F=.>'Q6?-IGa?yec=sR[%*%I;_NQ Da Qj %'[ofTZ0C sIJbE]f ֶZ,$^n0Gxr~zᲢ+aY5ײN¶OdbX;RO/,ֺ62% x'Q9z홌=:S! L\>Ƃ?~P'͕f C+,%dڻVN'0 ^OeQ]l·QV֚܏|Ju Q:%7^?$bc! fŮ( U8UIcz#)Cwjo NjSv=4ٲۭk)%-?}- ~ܰ[~ X8%v_%VRYlu chh.6 bviÖ$s^}bϪq(XSU2d53I)?L9W-n 1tI2# AiuS:-U+=}` 8wJ/%{z J!L5Z #uUw+.l&LC.HP(]rT'Ne[ϵDՎ_s \5)E5}VBZWpVʐl@-/9/bq/(8feC $:bv贞x򽽒rwăgMӦK=*8hW^F-)I\"0aH=/p)?p/ >{0I@󅳘U!glެ'aǂw;0FB|$ $\xvg=jW5e!HG DR9hl'`YRq ڡ>bDJI` (JY܇Yu9XF&78iqȫf 8ZI$QvxE]MgZ"3(CtޙwI[±-WvQAZp`@fbقE#Λ0>Ent!u5Aw ?a>} pߜHbg_fqUcXW xmlt1LKQKr%f{ P'fӭϐCQ^e5qƳm?XM+1.yLݥ\$ AK CIBzc])Oo]~v":$+!bn+S0ԖM XmR?su qN6Bk!ws \rzᴺx[P9'*}8j,(Psn:%W. ZJu0$937:[#l=I}BF8\ ՞(i!3r̓=-ʽ"[B `mX 9@B̚K=ǐ>2jWN Xm qUTXϔ3'q!! 509+DpuJ'+A̻<'.#*U~a* h{ '}vM5tU1]ꦂV>P(gBijRd}E\;Xpoc=\tSze'-̽zqwPŕmrgzy@oZ=~m׹ͤfX,zzsť2bad_\GTIB<;K}N#􇣒9ZY;>];w?AR)! qy !C@0kYCYJlܠļ8iK5/8H({cKJkQ[R1ӶW4"U(\XxJG ZtHé R{^qLZ]FͧBh %nα?^x3 ? z Fd\`>N-|UD1 Ac |̎?ɛN= ;M\"нҢW9o.y,^Y=ӣmq39d PI?M:ÀnJfDnmǔ3Ua(Lu3,zu~aНg6pEXz o#>*QXBPPTr&O`6ceg[-Р`>jt3hK_3`<nWӠ]Νܱ8x%\ }wQsH 5o3VSثafIj8 (q /…ʯCkT~g674!1yFܖ;MH5&,UB1Lj].RyFIFЮY-AM}\ jq]y]SG b9 $-4q!0٠%}'c-UpCit'-+NȮvɍ(sJ/yN'>x If+ёY#҈LiF@7%mbjz=G|寫{mWz]>39@oqeeL55co:JJq?ZfG׿E9k1~1MQMw).tqBPnL3)ۤ;j4 E` qLmy! n;^N` 7׆."!~_.oW;D"x&Z9 'lٸF|;,( sqF]~ #oU*{y1Hϋ̑,A ̓'Y྿EAtTŜI d!Mo?@:Mpx2'J[<!" tBwYeǁFa ;OKW,ՖrA3'k*\J^$k{anԘ:gS1r Z.T;_:/I~"ShX=)>i?vbh!\Ozp];gIIxfwXM"׌2Q.%9 n ;K@! @'z*P]0 ?7`E0}r?xm¾EM"@WFnsOkcuL<&'a}Ik̿E=88C +m4|:0 r~Boⳳ `TΌ&SS9Z^"𧥅-'KvU/ Q̨ l͝ZVհjifNZAȳ1tJg3r*uȵ?CʝYLjH< שyytdA'2@=FMh5HD i(uewG5㙪zێXS$$lO٩-xq9Xċ4!,4IU5[~ i8=^+pK,H(jz{`$̇9M9c˶2,pzOxY@Gg;-~Bdž$: a ]Bp{5emS=;E<tp`dtFD^ɑOeIC av<,?bYnP -.q]W(9葧yQ$.:v'fm۾x)Vr4K(4 |TDI@_q`)4^ ;TXg_7?zG$5yWL tye:WڗlCjxl"v*lK^ͳʡ/>R0!]l\/{&^Z._NQ=Nc)$V7)OɪBI_.bWf #d1a\ t'tT`-rU55@CM3^uF!E ;eʯ4qmU iaf$bW@f(03!GΆČ I,jyB8'$aCmd GhuL.@ĤțtKv CBC+;_ՁwCį*$N r ^:hѧ@`%l]1o0#9V r(4C׳L^܈jU+xy{"v2tvgߔhtt߼EBC=1<~S> y._e ZZB3/1u"H'rވ 32\]ݴ6ԩF0 Gޑa<+4?7!r' 3_}FB"϶312u"wyI/|*T) [(6+Ich1,k4fUX'ioD.=SRэ~Upa8ԌM =13 Y¬4v*},  Y%w;95\LnI rSw>B[R9J$Ȧ:SYO/hrs~Ut eKύuxn2<mpTރF&jV`v QQ'qX қʰj˱fT_i>/N)c-, &F'P%εͪʡKZz0kֳ$4@jKPH{{t5|d3N ufr/fWK0q x6Ң%ec&7rQ~:AÞ g;_kyNJh#D}>G(>" ҉lH0ԩQ`-]%CIsaMwt@j2E!QhmLN2[BWT_Gҗ_69fb3 xM 4Dz@ )p3Ȼ$-e6(ji]@1enC#@<,xb3z!vup'ҏF$𑈞BypY S )*׆rЩjDfQ3lmVX ΰWwݳߵƛU`Q}(ط[Ε<·.=v?cZĽ&Gr{&yDJe P!#-u ukH߁Iw:*c2nÄ9?'r( $s}),'s xHTNa%3T8{9'y6rCcEߨbnVt"Za & "5u ]R2y n?<ռtL*I0m= "oi$31?q{&|gJ%Ͽ1h& aBZX/kp_{y}HDz_jgh`&4z+켡d>PH3JN ^[ RX)c\ѳx6v@BOjw@b“@1o gB鄷[cEa %[Oe!c>&/KӪ{GtTfp,@a-B[gr0 $[%i8P"!O*w(3¾>K.Z4T-5|]3G~[}lUxv̧^˙\pG^Mh߃;uETv'=2pe zB&'3+T' <.LBG'oNe} +hry|VVũ[{=IѱlF"#dĭeS33)GC% KxW&mm泋T+%IPZMe:vp@%YhgW_)ju󴌍J(ndXcJ7⮷ 3D4&XCG=_nC!MBX43G#ll%ib6*S:r;ګ1W׶Rxc:# zPu8pNQMX~&PH(9-BYSd Fbl2@ιrpF 9N`u7\j/ٔvN9ve#oKW0z2#/"rn&c6yt j-ۛb.he(*[י?G|s8+)[܌y)S <:@fDT{@&/XuuLh# 1ur\4OcΊ4sba=֔t[ﳫ {Ӎ=ygs*9h?rׯv4sm U(&r:^R<;MF!OБSS%GNz̠(5v` j-M^n ū3 ON&*º12c[ ʣh98 X;Ab {U%%hV9=M`)i.|r+#7Z%qjUvR筮/I8[4f$/h;VST4Xnu:GUrR[1" AsBu.pXoj #[a%njr|@GluWvpﷀ 2ݥ/]wBduso߸2vh :u0 >%dN(m?Y. Hc@FPu=Ȭ/ew!raSe`(o/M\"zqtgVJ'yr@Ú2Ss9\U9=a$ ~+T'}ĂDȒy_{|[ e8f;S-$J[=./.-Fzbqy|rԝ迨gJ&qx͔T:1^e-#gɲ|2clJ!n6LJqAahL6(@پF}R>Tڝ>P?kfSȊ`H[T o%yyu4`\F.I;:+]A60*B] vv,yr%IW͊%ۂ/:$|=+Uz/danH=XK oEdoT\Ż:.Y-P^SJRIqT[|#9J+=f:5`MS-'^ۋ=23,Sl_㊜NB#u>dsu%\Y@ d5{twQ7谾QQw DM˃BLB4e<:^^[<??)*بs;];rdG+>Y^f54b%׿k5붥R/2Cvtb%_W;F+SK?ObqObb_s.Q Z+_klz6ꎷMQ()dYC(vL"poӯ%1}-iJYW {bgUtǚע/a_^+)DuU0;9ˊG߶?hJL>\~Jt. 7vkyLBtm~ag }>4B s}{rTT \VV#Z?uyhpwişY 1Lݱf:79_[&(qK捻!g+w\Dg^PǞx YћLk RBJ sN41fky2EDn%`~OaU_O }iK`!ˌ?V4ˤ)pԓl4rfTy/jvA`2x8a_wa0g#TG3}Y^/"myfQ=(BKC_r(,}PYJԎ*"± i}cݯ3"؞j <5S5IRaNĚ66|ؼY!n-+t#kгK"6İ;gA3ó2R34j;CYX-&-|"9@V39na;r e8F _X봂MXÐ*~j~WIՑA!!Lg5Ҟd Rm7ؐ>E70f 1+O4,oYW^R7A M8yX+Kd v=ͷ *GbP\eo# ^F'r)@}T`ɯf%BA R9Hqdji[|ee7VGXB5aEiS`Zk2LLJyFEը3,3~u<\1C5&(HZm`ą~w"2ʡJ2Z{+T6mwde=ę rr(qȭ1.d OfabB2Pʠ# b ;|4AG܌D=OK͐isiqZ&Td%c./G!%-BTiWC |=k j0a#'vFGrH4`vɊU`g5OY:5x4|| p4]H9#[fsӝX{rՄf时XZMk,tmR]~O@?Y)c /'M!)5aoY1:`2gFu ~2JTvx+iy.& 0**tjL3*uð,j;>v69UCy=1LIfLdz-(oP,|!A ю 9;MװW-PE C> إtȳSV1 #x FޞtF}:k^}ݼqD ڌ* X`6Iu'C& tJ`q]"}rˏrd ʔmsEy89ҿg~;<|dB%Opҧai\F0qěR ȱW'kBY]#g>n@,i"Ծ́y ccSycRJ-I9":%论&Tb}/T 5{%^. ?hW°rkSh/Y~Wm;;Sϰźc yn}( R@1RXOv oac dyy* m"t]$`}{rDEӀ}YR鲐W-PG/ T$͵~d{!b2 JXf){e9c_KB>4Cyi0!-5M'P /Swʳ6/4ݖK8RT=q  >XZ U"Y%9E/x}9HBD2Y@8C瑡0eZRۇ03DVC(u3rPքWؔB-{\>^0(حN0H|B8 |y 8k3jrؿYcQUmj ]qKz>1P-"~^ ɣ \O}sH1t,C~mQheI`L~A_  >Sgžc)ASM6pxڬcQ1)7nm&`b'Ш8;u b?yyVkt4lmf̈́7#;u6 9ݽD) @?,MGPi V lHsBm˔5V#{ގI2 nZ)K/y/!E0#H;嚦7)$&Jw!y%lH\ (( ){Guɶtfg)ed4OfM xfgfur][!d-rBTa|9#8=*?xmc̿{GlP5 b t6I{~($kb_Yr6/ڃ5ċڬ4Vqmt ~   Wᓚ 1ߨmyɚ]̗ ^1pήGT "n I2ysܗ 7@B!geHlȗL/%NȔ~LN>Bdyǣ9T)X%%#g B nYnxs"FH1l3VS?X$aS_֝׼XdHij #Lvs8hO=| g+YlJ?n}%2l+!?~2q~Էtum8b^9D 2R8G-:\;Z~Gj4~:-S({Yap%m@#;۱ύ zFY%a#p{-SN QM=\1F Xn/x F ⴳ)^8~0CЅ z>V%dܭ׹ê؛–kkM:׀Bib3 #' ( L-$1V»\ݩ˪,~z}|믟e&sA+cӆ4xϠAqy9ŒZLe}~ Mw Fg LnIaюN{ Qbv"rԞ#4WjWt(Ƙ"<tч彝'@ \@h'eLt4Lq{.hAy;p sZTYHԃnဴߩ~H 7 Ltm ׉îldY@ L^jlE Mn )"ny2f{Mz;7SlDbqCn5QH7ꙠءOU?e*܋ ~)UDL [& $4|Bd.{Jc,J$}#(` ̗f䦊,E2- %h/o[Fv2xϖAyT{_u3kRA,-٭yvpb_ĂnNΧ*=jsu+x+lm-rO"d2f28Y؁͢0Z,!K\U:$ i՘g9ꀜm.VnCYBJ^J|_-Z x~/ QSF@Iֺh 0aݽD7X ~+xO4FL-X#}ŁOl: mKҚw0.T7@艶)sܹVn1\c@_G:ZOA7^LzB9B2O_)C/mTX);Tu!ƨP O󽕚YQ3y-By4Xԙj%~|hڕFNk w&ge$.}sAp*2r눢<*BU]y3>X3ؿgǎ>ΞUx&/AߙY %Dkszˏ(dLV. $PUʃ /b%']r=9B+0 o%İ6}r-ʉ9xI%tn\3fq4K,c 4M$=tm!^ ՟/pIq$DܬUy; M=rGJUwx&/Z)pI$v|rZ?Z`ư3wU>'[U Kh茋'%X Y"x6oo_2 ^4fϿ4.!- hq!T.d r> UlyF'9ȧ(2^<Ot ACbSp &!a HWGzAr:6}eJ[ :M!)n XKy> ,P*g6̀W0@Wx^N q.$|Emwx}llnky6Z>ւa+"uJ&m6I>;/Ic`ywd'ʽuj bX3]}=VjX.?힅fJ(vƊ^CIBжDm"]'Tl7?rӳ_6rW3c{USZQhfvlZt܋1GP繆0o0?y`7QTo^wmf)cC}I& zr Sw竱)4^ IPv&%`Ȓ27~7N5R< ?+Dr#sJ%?^,LBbExH=8.̹3QB9B?2'Lf{n~'WYvd lUݱU%'Q%p?n)̗I63q+‘2#"ALl7?%\d>y~W6*TQ}8CFp֊n#^ RJK^qI,WU4N6Lm###~lY~Rl|s~_!l|cpd-XFi<3AEFêp!_U;bh8K bʧ!@[e”phY,b=,aC>}޹ D&AY^:fw& ٰK[ u2 e Πx~~lX( p:xr>Nx™) =4+Cסvqؐ2+=BnS3VO$XxomԮOdg+_QB r,362ҤTmE5vmTh(`f=08֡;hLZ&xlj{]mKZxfeN?ӂ[*(+W@F{2eؖIXL ,l PK˕e ,ZwpV/_M ҫ;| qpt>ZUfv*i6^>Xj}rPʤHMT\F%H'<4'a#!-f `Sx$nHNgLrX6ƫԭ41$BKA \n7=85k*$ 'q'n€%$B#ax0%CcOP(J5jdiQzTgJ;H'TR:p˜N.YyQ.eb5-lrQ|&V;Dzj:^phWԶ3$4aYf=h͆SdW? ȭp̡F^|GMT{HH|gZt>>WrJdG #m~d2h$gBir&i6MR-=3af(`N;. )[Vz0WRa[$ZN.o]L2pN.@^Jri@L1Q'o" Z+eiF媚D LaO;T|*@+*gE]sRTLt#6ppz"xD7)YGriꐣ˩Qc?8$# }Z5qGikýMV &}X( ;"^%;Q[Caw5(l։d?(f'Ey13QVJ1 C\zbI {TV ibHHhٻOOݒ4; {6hNTM >-DgF[Z# w<+>8xtܹQpj5#lz>npX=/{Ы%ܷ Gֱa"3L-BmhF=@i(`ܛ C\s1m|-QSܷ;<ѰmRtͮp-Y Hy$J09g_E]CSx}$EO͍,vp F`WR>LU:Bh!nY֊VAҐwF,  }=Eh4UPNo~Ri?9fM{((Ribg8*cx%rW`o/X#ԔmU7,LX@n R|  ȈL Ћޱh$LV@%s2;.嚧Fߧ9 z`XT0ƋR ;h0@2YUឩNN#jp7KG$WHs,s""jK,5h{ah6=K2Bgn- ʼћE?kFS|# ?|FD0̘LYY!"Zjׁ _v8?xTY9.s=ڿO漧aXuV-f,14(izb^ R}=aBQ\*jo^9b.Ws9,Ol9y>=!Tw :·hі? E/X,Cn_^ހObLŒx}D,*RVy|: ޹N9`~7Y7ђ I #87:S]6ҕU~;e(PF|wؓ +n"r#R1?5}`T`=G`OSyеa@QY'fYC BsiQ7>7Er+nѲ1w>OesZMاf}ʝ{S)kBa|Sаcz>9?43`q&߷Ο-c泘fKbү+kQt4IV!o"𧾯 >$&>}1|]{2q-+:7ߠ2ib˜}/׺\cv3%vci`| @1jG)ӆi-l!=: yGc:K5':a:جzl= 2'r~UyQ2-<(LgG9M1_m1 cR{O)Rφ# L{B)Cnn0S*؆>x'SW 9 1;~S8L1MR9([hlafaV7f:92ibܮ7A#OUgsm $*4Ժ͸Or`!`&uP&*v؞,sŁӵ?`'}P~hp1 (浀T(hq0ބ ]ȺY B31y. ӯ3[_M| Jd_:\ےoh׬0@T4 V98N%HA͊PyTm^CͭŮmicp:J)@SW"5X&WbE֧8<c3gtLl|kITeMЁ%%W:WdN؆+d0tyоLN!!c=߮$%!SYs5KM EXO0z9I&I=N 'x]^р/$FV"g1kIWi?l1s.8r|f/nd%(n[DK[}fdx6C8T=n\Lbb;Qᜒu$:2lLP74SMU!lohP.,gثX\{+M& Oecwf+WC&&చԦN@u̵ BM@x]nع$UQ ™!bF}u Vw,2j Kg+떬]<j2fKGG5&tԫހuZoj'.J[ʽ0!x eVaow5IEGL zKqͦ#my^vr7ʜrNDFGIt׾E#,h)1b6Pɨ]6T3YiO @ά(`4AfJ݈.1;{TDY8~LZ4v(|K5t5V 7Mt_I svao l"Ľ%-5WN5Otc`yFw2EW?f6nsp\9\x. Pjxd]ba An~<joW~Y=crZ} @;Qc ZeV $f|O:'$rir$Ҁq_l^FZ}5D}pJmcdJjl3鲕dhm2GS G:,(Q>ieXQl9}0UM-moj>-@~hD}}HԩUbo'E^O jcz\5tzqgp~\ӓkAojkE53]>;-Ŧw2va5pW6<%|D~3?Z%ȜYcD=P?+걞/IצorL_Z7:{ag7 -&t܃65bd51COVU˨ lo1p1L9 *{j"9A%N✀˩5T~|Py|* *Se>04V-)GބDC)<XK:wAi3RAcn7q_h`T4G K|6u2Y҅=jVע>z hgäƌ1?cR o/hilJ)]m 3NImД_ll {;%Ӡ,_ݢf适!c0j 6"C"8&(e5^=Jkυ!/o.Vd7۲P ?Otl@.0Oa)۾,Zh_+`@LPc$G k=;Z|ȯNeK71nNn zaۮhdӰ^&&0= =u,McW>eZG CMр $ B-WXwOonTEXz=?E>aΪ}>r`/+L4dߍRa(=|cqe\O\`5v;̮;G| ٤̨Ϻ\-ļK\uB;ȨH2]^ ,Q`!-G.|ú?cxn l,# lO"J`QP; Uw"CBc?'z\!]742rJֈaG.a !zm~j7Ըz>ݘʋR`T<ӜS`).=ŎkmnU} 2:{,j8o]EUseF7;jk@O4yy4aTZyХA(Ա3M'$La?X`bIAHw"apÇ})NأLʈy#ӧ:rN%!)`&( /03,4=.e ᅯd` S9Y ]vTnX# EUF"&R/? rL:2(3(Hb(rN]Hz@lBiCU.SD\dӜ`u 4(03tB'Aۻ >*'eaT}ko^/wRšA \,Lb¢vۍܾ8yU"[[OC]D0}a-^!MQr1!NTV !Q]/>U;  ºydu;Uv0qtl Q;ҏ0J1 7&ԣ.<{2hNV~"kw1(2 I \M;|ղIo&Rds?Q:q~jddƲ2Bj|BJYMX&fӪMk!ܮqupJΔOM-Y.5 _9.+xՊ]]B ԆqL䍶DF!e.\dnfo 7gs qzJF{>C\y 0?3oN]I9=DNVI;ܥ_OܬĘ}"fשbǠ^n6LKCNIG3B+M!@[KS˚ɶ}iNy/#ᥫu\Ei1ҀF4|W,o_zR6"Td"GQlTR]T@EwÝͯrNȖAp3Q?/HnNGw J txVlvitJC6(?~ ,吻tj@z d~>aS|&/IF9>Z) jjlU/ h u-7Ep粳.IG[glVڈv'o_<"Z@-zÄM3ql~BXo.T")ӛ0td(+1GV?SbPG܈VZ,R>=Lf*7h Vp" X{]UByLp 1c!w?x@!lj5gҕxX. ~iQ|ÿ}3DvX1_d G2z΃\iO.[2şcyX"  XzpȹN?l@_8ݳh7wDs1I}\Y N2!)8a f7>52=?8e҂_b b%Te )gRV)A2KlE>mRHFCGt>zOOݟ j_aXb*=$eluO5WBKhܱDu(E3J GCh$E?{ B2R0b+Y_~VfjYZ?K`ˆ05~|"~e_ FTQRc_1 bMΑ>;k.w,cSzniYS~'3t7j W[s֒G|#sȰQ-  xJ8kP8\"K~~eieALyw.]lJLt:Q(aLȹqw1rP0|$6*d<=SmJjmy^<8yO7[\^=A%K_[$vp)Rڍ6Я:Yq˩#@\s23Oa|vOKj:/QbRN}T0^řijs9#W/}T JTxAH.Vp>BuA>buCX*S"nȽ|߂GXvjv U)@:ey]4f& p ^lO%l#&9&^-q겖&D\)]<_EHYk:;qB`Fj71_5OW3*C͌Av{I2`iu|X!Bej++y{%DR3uNUg&<(.S{q)JP5ҀFGXd;) }\q'%kWH;>_+7U!?bMGY6qߺ ^Ջ Fzs.3F2{S{+=jZc6n!'֋ƺx"pe{zY|3ndC{B[52dVz.–Ao*!|L{G6aNok3- S>V#CGmdG-$qp\UDv#1*{y-*BLǫ#7gzf ]zNԹ$gJS<$iqN )3X|=!V2^K=mt3 JդM3Wozw#cKp# 0p GM=yko!;/d֖ .k~Q1WݯdM(<7~]a'F&ZuS ꅼr6& Zínk)}XM]ʗ*x4d&V]9G-EIm̾(,dQXvBl *{jdp`]ߔ6yT_dlTQeM`d16b p"pP]G!~"k|֣bhMdiҮ+i1Lzk5HAnj=5YGq@Dߥ`MK@ 8'. 5Q& 7Fq6Jpr\b3|Ngp*,2ނ{PL=/H+ }`%+xXfFтv MSj3{D8=7,vΡS~V=f)3{y[Nv]?kPtt1^}e^gz+ּNVAֱUy/#z 7U|-< C(uru Y*v{"FJ3@}{~dli57~|B˺&x0 YŐ=M #j_ry`zIi$ c#A_OЫ+!:$q̸+k+/ZO|FQs.nE~HZG6?n@3ڑɎIml)2K^剁k?Aiǟh$fu:hh.uM?Miv?ڟDPGFcs5"`rT3`OU,McX{/6+ DysJ:BBҤ6AUkz (-zauȰYsJ =vvեaڞL@nX^$^f \ں)e)EFu?wӁX`g8 Mѐ~.zY"X#\ñՠ M|p2f:Eدy!?x2K}1ߌEgc3u:_Cшc!kfSUS5es3Eyt~V[Y tc Zy<0,}>HhF|Bf彡2!1o!?\bg^̹bYf|O7=F78Ήrav_-}̹En[cwP v%MFE)= 2v176ua$(SV_l:#4=B:EMہNP:G,b)ѱ) %tHbI/e gP&,V(IFPlpNmLICUa}g" uϓ@$Ɂ;:6OW0U815bLp rȷmiy"J:3&.v?sctB d3.n5ֈBƒc5uIR6i%I8B5QOt8wYd p\:SN -?z: ™l+9L={zNc6}Ұb0ڪ,k "z}p^ nI@m \qð_yČoMx 2'3;/Gk=؆B;RݤPJ\h'=NB׾vı6 kľIxB{rA -|4~֖b.>AYZ@Rm&>{2 ylDEAE'+3툑+p(/%zQ_™cG>+(f9G%7-DؽX=p_nGkRc σٚE8wH{2Dg%4Cc4އ b;c$fe.[+uقwlqBO@EY/>Msgxj{*Tu[J"2ZHv0%Dpi/JY loPMSF1.|.cV/Y\g'An]Q.d67{07U|tN.BjDu*TV9X˛KGfVzԋN-++\W(u9OVb% b^DN@qIpu$ D], Z% ~60he _/StUeԍ}uWf)mB̦/(7\Ē8pHH{0o ILݶCj$8~{#gNu:F7/`A\(x` RsFԺJ8ڀQyJ)i'0?9{(Q)=Ү%B<dz1DِȳuKCjںon eJ!#rEE!<@j /al$.`=an.Q>srWL[k9_ QMD6s Rkс$mUX#D6k~7;oMعA T} mgK-vERFUTUl;V6#Z 4X*<?x脞uip17ThnA(-8،;31CMZ]B۾^?F!C?i31/ı=baR3bTfoQX]La/'('T?.F3Ne.rшh3`BT'2P [,!)Mi2/&6 ރVӺ0`鶦yp ر;?'S< pa$e][FWA+K8OsRww~ޮuhIˋ_5]w3 IrI9#ٯ* -M7ļq=0eE7==&|1?p:%υ4 +niZGG{@ʍH5Wf&PqϹ!:"s2:SpsF@ , :g/˜:?gpz7В{l.NZ!%]zMbd$_A7 p'bHՙXwxa>_RYT_1T\P~yy2EBT[ |@xdd#ryj-9;f2_>kS8BNZQ&5ǾYMGxHUZń0YR>Puj[j\9X _8c6'32_Y؜`_,f2څ뺹2̆?^JC7+gZ^|T; SZV5#ujs`ԍm8E/MV0ǐJ4:>&h\lbŖtv[D6aṫ~ A/$æY`~>?xDPijVҴ{׋LE7Wwй!lx=sj>1~$9p9%>Z&D{o6P=?戸r4d hƾ},&@]mr\pDcĞn/KGc~; ݍrAs/*r'h' JEW+Q8os:B33F6o0ȻeFA+nPKv`/GH3߾ÏÓ:OZ&ga䶉:&u"}I7jn|ٔh`aekԭG4o7K9vx9OcՅ7{hpgGT>9; N5fTZD77`A 3c¬8( "y4Jw1)kXü)1 o0Q5|#ӣc3Kp0MfNK!uV*5>㣲%'UmDr0 ш. rlE?OZkǟ5]p J ;;&-˙[k&8ne,$fٱV[1D%KSɕYS!/ȅ;4l6k`*^^q\Ws'5YT~b/bB(T.Ѱϰr ^؝Oi24iB}^i3&;.nU\¦݊^ۜd"P? Kz'_):>&JE;3'3OX`LՃP=d@s׮ܘXuq{[ψ78WR4+܈E&W}sȴd\d;b|56$;e5v:H9#6U.iZ d.R+Я؜%L@M{ְMC;3Cp넟||N\şPJI"jƷIΜ? aiX)hz/ِnc9S"B,[ؕ]=yUy er팿\ޕs/rϋ9XƜ/j|g1;4`ܟ;.a &ƚFK.le6Y Fj}аGG$fݪy, IufU&XW&yЛy*_4s)O=*S$묈6W&wZ9|EU|~&%;| 絛B-n=%Hmle6 7*Q' e#rxC:_fC`:J6L6$b-NWgjf˪9@ݕP! yL^DD 0+mq2,E N‡~1 ܻGu<(/;&:= 2Q ;|؎o) ZngM^\ P}'JGN؞&ĿTC_G+RH}V~ +eU['Df㱛qPΑS?#V$wx2?'A'N*@/l]|Α 7["c.%$\FZs0 0"D:^'Ȕ_gq<87ͪn@8cpbrF~I0x~춠z}Hn=/U9Șk$ȏ8Vr@*3Ǖ ԏ ~E1 5aHǴ]zwIr DߺҎQũ<6Un|=OҮDeqM An5`J-B4}G 4@ebG#Zk5F l8T:!sHM\_&0caO$} # `: ۣx%vu0ז)yPsg%(lk=hXNf́_#w1:4e3guk- #\<η: C0fa.>}0M'gxCfDܘz;w,asI tvX7lD ୾C1s֩XL^TPUˀZ]Z/޽wx7R.@k_/'kG#CD .yA\NPJW,k~r\ZZ?:.avAOv/z])fEz0hWhW<L7Kd>PjP0]XzłswX$۞[NiDx17zkk;S{ k[?FEwkp综;*2իhJ7nSA4e* m^$0ӦA5 Ţ^Bp" E-]5Dl첩O~֐K%j]̋ )D`7ܾKyga<=Qufp,db.y3LNxJP~ɗGv0j=fSga+)d3@`f3ddԙ-i{xVC+#bV'MXwh"choP[4&h=o Ƚ$"VNOD:rlk^0a)%lћ ZNKۜDѴTxC}R8q=u4qs鹇t;v u ubXG1N.Z25+zB+FZ<8)8kkJS˰ka=R9fB$Bc+;dMN4J GV6&&_E4IFo(>#nXrK lz`x;?{`S^ɜoꑻa``#xj8g< #~ST7>xU3@}9rb[^˭̴W(H 8mOѱ{`ָnu:sYY`QqQOICf-N%M:9 X[is8MG)i5e= xez&w ~ .} c?4c-D&vp Z vakM gb~R;? bD[%Weslh,7dvH',0%e#5F'nUM özȎEo0r>8$PRӾBD+hz<(۞hP|[J hϤg%Mpgpጡq,8`Ͱsm Է~3+4.Q住 rCz@J[wWMV.`Goij٪,.%=xb(GA)lXpqCViq0zEq1#iR9wZeK ~Ixޔ<nߪ3,^/b& NIg$fTsPвI)WY =`ׂ3EbIG"Z U1]9ALfau ׫mr lV/ ZjrHXzX_7;Z%5TZ2" QU<H4Q!Bܼ݃lOtXjh0 cV oXC%-L84lfPzӯʛ"S$_* y!O 'ZFhzV(ck~S5mƩ{uJHXs\cSvnj|sisHPMm+Car&G 8(k@u=۔$~)]AHɢPBy4ZWZl, ɜkGQ4P9sס]:e"t>I T(pA`A}D#P"g%5t&{ sEKz?ǖ> 4IuON*)& nkˌ!k򏜁DvmLᄔca-:0Z'aYߥ@/tc] 8lշAXJ{3 40oLNAaXwsppiDOwڮ:c*!dJϱ[ Kr +6\ҺH p;E㯦w8G5&M^ ZZ'6䠜\ }7(,R u7AIS{zBt"&\z,V<'A2ZYn03z(`,ݜo$8 㔹Z l@*ŜPS3,ˆK~ݥNCoiƠ*'%OH_BW3zka)Vc:ġ>G+]ۉyiaJC~i nj61j Cvh;4#P. ^M݉ p,*s(P둖qt>r~*L9N-/-]++ELn[yҜ4X^i^7 Vu))"|ckѠr.@tP<Ґ-9k\gâJlpz_5}p^ /۲uq kVbz57F[t",0sIC 8Ƀ֌$7@) [f'3:LAVGHil uN 3hͫP_\  WX"Y5yQγ=YL:N}mXŰ2t:}ݮ$zIvWsB!oޮӶS=q]m?cYCf&E8S:b@lUM7oh&8Xz!T/a-}Zϰ9G8a,)ZSf^ao V:ժnqԮ"p_\MhX#y7ԩLޙ2RIY3w+w`7KrcRAslk4mɇzRe]'*J62^\:_Ǯ=,N~YHx-D} ~iD<ڋZ k[F$ 2s,:r}4{: ^{6cٿevjDbzi$t:DK䕇NK˽ZeWMEoE镃Tl|\Uݭ FH۶ߡSO])}1m3]8PGML/my-$V36S!:4N;rp߬4TnNfzΊWA cKVN0r3sh7TOcM] bJʳ@,\8\)z|!B($]#7-e[5"$*}0;Cq?_$gn1.P͊h%B4Nei>  d0fgJ"OT$ybƂCbQ3M[7gqˢέƦ!KjNQPw64˩ğ&EOC[K" eBI[+\A\ ?ÑPgK}DnkOg4XFAJ SNwx8""`Sƾƈxvf991UJ@L= oi`VweY&c2x 0PSזRgg洯9XN*pr:-#{MnO$!8 ȢC|rkRM@oP^vun{h_"ߘ[u]ȵYIwr ]%Tp C56g 'M-s9wԎr"~t~ 8{2r<\ 10z4U t卭xCjSOÀBLzc70zBpJ"a}Ko 16Ϡ8{rďwz+ ^ĂFGQxb<  ZcQ†b(8Rdmk"$vc%4Y2oT87o+t)6(?k3篡Xch(3P>o\ (`2kM$_pHH rcI|>T:KGfs1R$LZ *GkSЏ!7TLip7.:#SZ_TwEAcO.&dmYjHk\ ׬4v2(;y(tIX!ȣ{ر\C%zqDj엿tSk~׎u*emY_w8: VAÌ@Ė^cGݎ.^D]hwF [)ۖDyTZXhª0pWdBKU4s1,:jއ#MHg< 8Qk3^.zh돾VxG?g,|M2R5$ Z` yۋhMK/'/o#Cq,4Ά݋$fNYfLrU? Aɠeu-yiփ?:ₑs5?mq[0MrN#[QB eW"M,!ڦOc\LC] f7-ܯWvit 8b=LW7G7b]Y>XV)#Hs-O PaB(,u};0 ӾyQ4Sv;c?aOGǰ{9@,EPkX~eeg~]N?1F1S 4zS4] cD|$8ߑeh0E!w u9 NלȅX/Dȥ(.Jǥd'uof,&C<.y6RHdN5d],wY4"]ߴ00A2[l">F2yAч>(67cy`;5TqIJkkαB>#nQ.>5\JՇM?|]]yc||nS'U(':t O#rVw/ϐB XH FnZd!z٪?u}]Z9|vɽ=nyY!cyq&H`vdb,Afs!ΆrɌ?^Oۨv/Þ(Z/b DcfkBGP)r -ǢD]`R勱{@@t#im^ Н/pxS=xuiO]uؚңvGkAwȘM'Zv9TrdX+O ^ oGN_L6Ma38 vhcCVq>Mf},]s0~ t&Yp^Z^)'JDu]64AjrX8Utkg>θUgm5'b \-jtW;@.GQ=$-3M t7ʅwL^}3+SB$[+8%_yũՌ|c"wIhjeCӎɇN2LcbX昰72 BYWQ}$/z#x]龨1<@QjM"߰ uV "-]gLMZ"ZLPa(#;uuwIJrIJ:̡TPۗ˵Լ|Ɲvt~C|ٳqnM=(G#)BF\ +OoRGF8y!/6Ot(`8fcyӢd9 э<)Up#&Mr@G #3 tA4T2rϦ`'ǖ;WdvmZG{tD<X["n$05x)]% I@Zp$`u7B Q Fu'<]SMuQ| S~qaqxD$XXV@W<dܚNהC@lp>vFvWvQ&3|Ȏx[}d^ 0^SjW~L9J9h3wn?mio 9:^_t <[x>$NCv:f!lqsLpd9UmTbdNe adj9E-?k\\ED`c \/] qߎ3&ZأӞ?p=_߰*0t5q)j$.@͂ "GnؾW k]ԣX$1A&z#;Y&(H.0NzrïU ωD8AS2wPu;~<^!dY}K&kFPRypb H7ш!F$cLFq5xvM1'hl[oS{;+dP~a, ϣpuė3GI4H3TI;T%m֒eNvOu^|Aa@ m !&=SaZesy//5ʃO@XJIc$p Zz-]MrܥY]`٧u_D- 0WN$f);g[y$]dV !8m$`;-C߁T K~s[2A^=o cͮ.^ 䶍;篁xZc_duK+ޚNrWF8 ptGy(Z,lb\U] /JXυA#ejpLhIIvؤXE,\CޑTm/9*0hS?_M<*m#t]svBqph @٭e0'ϼvt |WWM1`q6Sk 1@Ӓŕ]LcMF孂r8k^`Hڃ(./lЍp!.U bk'XgWRB ` /?YCkZxEخ&ЈAށ`*Y:g^#o55)^▙Z;e+X#*%&[܋U:\Ah40φɹyYQqŧVbs@c-~rYVaXFl^PLqS7f箻$iX/Lp^퉥ݺZ2R9n!MLtp8gm;"$A9ct39$8L-5U gaZOqԮd; ]012q. _:l(Z;,S#+Y>Zd !ěטL.X"E s~ƽ!c\)ED<\l߀W٘F̞n\xVBVT>f#pgtuF/iCȒ^Y1xyiZ<l}PVܸ8$$֞$ s3ſmK_Yzo讁{rvGg7a4HPZ ]I|YouMϲo-r'?@E#ɹtpܰg8TYsz/NcHM۵4^a}]iSIc^jQ v׿%@E` [JGΣID v힃C`3B-l1w9ko[ ƃjl+u*}+wS)Vfo-0HR[0/Պ7ٖ'Rz1 {b,PfX|M󋍾8ŏQ|i5=J1Nʪ%NwBON :Ɣ-/ՃleLN^"3 `V3V hvLmOͥ L b BH<(xYPHWS g&Qj03JTKϦu7Iv͖ [ͩ,{tBZ!T7Fӭg ֟+yeܒ[Ţ"=ϰE `4wW WwυHd0T5遦-a}roj N .QI/%x!*.& H8O+wG_+-ӝQk&nNP쀐GY,~QJ$V=#ks& [Т؇ڻ7Ht+'t!,.yyjd&]ipOmiݡE<˕8YC1 % Joh,tPHPD1vU.4PNJyÓ-M<N +'qˤ3iE;"xoeEAo5* pa"P(@aq0F,Xx~f_Y-.P6gc>HgЗp2ZqI/ i9Ro)Mnᤅ͎SV,T_~k*1!Nu|^$XzeKRJ[шҷrO:,˅#L#œe6LZ|ؔwDCػ_ڦmZSmȻxS/hJae0( e^?/G3s+)w_QcԡN\/ iZ+a䘚Fe f炾:(qd3x1US|*N 1y[`*k1\.UL{ <+/">ʨ/hxEX1{;!:LM6B򲥁2DW ^QL&׭iAc^} ^;g^A7Mp₢nz4#ӐK"/8- v{ޡ&Z|.^K4%ρ81|LyR^*ْ k{G{/Iar41YU}+\7xZS8럚>jOͭP@2Ρ=JG:k% ]OG4FWSn,q<#4ytJzF.mkeInѦ|T:ᶉI.G٦,qfVmXۭ19Q|NxsETz7e YZII"ɷ!{S{Kȍ1'n"GɰGo\Ზu !U]Fsn#}k-[C0fL ۞(Iv9L1\Sn B5[ێGjKP#>3 ݭ+_~V`+!WGhMݶL&')x+1"}C6h,܉ipdIAE$T؇tT,ȎpCe"ې)pg%Lˣ=NX3}^2!-ć(8!Zq"xei7f=|ETb̾xF5+GCO'b.`a}@xYgIlBjU$up6YvoВ>x|ig\+^n8xZD{_<fLY[BQ]bc*enMD.*w13PsZN7?~%=F#fBvs{z%3VInThsČ?U-"[reb"vdcΖpg 3깱,$ŷ'rG5 %h۬>[ɿmb-$ԄJefMRL+ q8i*+F꾁J8sI4?h \˖O d} 6k2Iܳ c9^$XF'6 f]RtÓ/FѼdE.|'E 7V.x^nהrq X4xr Agz7wYdφ 3`^֟ &2UҐgpDi_C MyDŽk4ȴ)WM8֗N*` و!d Cf_ H (E:!KY;g^>PS7;YRltzyU~T$f@]+ѧN/ww)\f#yՃK$Z4q5կt!35h.oOzX @ y0'WYR&}8 aJ j$8'-B^>Iuz J1W#J>&SGùD6F +h6][Zm1.ez y<:U0ma{X|ZՓ??8U  udƉ;·HŽ̍2H/+>Qw,ic]NJf&͡5Sv#O"(JCBo\=kZ|$S~@P{*Ԭs+t| M⨐Da;UAVh)mީ Te `[rU%Gms=yiN(H!K!@Zo+`qT:A]EN?9Tft1]!rY\8IQ!ɰAOׁdhQt/t$<zqdC?}qեo` VLN$籽C nC J?iS븧ń1^ F>HKT^?Rա9Cwښv|x(O,}5Ev0C+ bpdRɯ95<61^]1 Z`Bz4P2YC5VҢl+ˈ*2QuaOڒkx2I=xZz[/(?@$#mb˹^25?E7)qBP:Xa.7[5?.M(0sɩr [01tQfBӻ_zi^z%ȞhFh;^Q06v$^s@+T OVa`SSgLI%xWr[@/ѭC/v+fZ=ri4ƭH D%-q_::M`Ȫ;DfuQ1L< :Cgp^&cmP; ΦzZN!ҠboZR1>jKmlVp`8(($I^dQdaP=o̘׏~eD s*L ݳ-P0K$k+VxdIa`#ZXRLP`} h4mbwDxmSvB˕2矄Ѭ‘@@ Ď~{21蛍u6;2uΑ3r%X [ kgO$K />lm7v#sz}ޛ_yd{gp:gxR8ٲXxH lE$W^+wˁ6]S[ӭ3T8 Wf!_ j^Y[b}"G2 C0gN|.pdSWUC;mk3pUȬ_wRjN89bwA7)Q<%?wGd^ym_2̔zCaD>yhGBQ=xj٠E3D{P?+`_SLeP9U5~L+H9uϊZRN>&<4?VJI FZ To)׎HU|x+T@&'ҠHS[%J0t*("`"@AFZ^ *u}1cu"%.ǀ.|" j Jf|<9G@c i+%VO\>jgÛ2lgտ 8]Q` I`yKM?) f𘜔*/pG}_Z9Tnq& 7]JÎ,;KIO€e'N[u%2xi0ǵ'I-Ia~S!?؅Hc~P3z.;H&%SENg^}5 [k:#dyÖRE;f Bҗ7|:-*/PȘheeqN*݆'p`En(HeIfhL%u9Ҹb#7g]{`gMF]zӊ`23+'`@{6- +. ߌC&Z\7J dE]; wiL9f 7R#I6ed<;(^ڄm$t a*SW9ۋG}6C~_1MѺ1AawG7 ʚhjDd;i'f] ڐ4VPGq]6;Os@50XEϋ`ٖk Ӽ̍AsI4لÌ0nT SB7M ܪHFmԖv uzb !ʹ+C^saقh$ꂈQ(7#:HLZ#*株4s:|2>^C"E:-ή+ŤmRR_)"djX?VZ\QщI7naN x"tN9M&'"}{xt?kwkɭ"j~9?cuI}mBCi 9sJ 7 K8K łιHx3j&%oQ;τАL=%zd1,L5c*F<-RAN;;G%moo|_ nz[|~_@W 'P`lnH5wΌu;(-7S3U S|Vʂ<n|n" ح1l-〯!(UBETWn bi9";dEuT|]l 'G=Ŭ;\K_a7ʀ)I"NRO&[tMm%6Ū-t#*$,hT`t.Aц/u^Acm?udVǡb*RS DL=qav^71&gEEM ,:PjJ l)) EMJmV 6 (ť1\! IayX\kmwdc{Sj`q(g.;Twkڅnb9hhsPmI7|E]D&u{o;fhkZ\x9%{Wɦhf# Oe>E)쒤C#%7Sev;+xi IYGW/R 92$$ƈTp󨐘/n%}&YX:!R'EKoCa3k,"up-u{Sf X;Jccrcm)B qs]1Ŭ)b^keP):_R~nmA֪k,x4kq%B|YN3ȁMKGx4 &7"mȗ QS_(qQ5Aݛdvxp7spmfRr)- 2åk#b q_&O䱘/)DYF}}jg͸s/8W!$S00`!&Yv b{qJY(sus&gXQʀn%` ܭ ?gbZ -SbȐ h~B= l $KDho_~[@ަ(lڏ8Ĥ~89Fʆw ˘ Dy Ez ӏ̍q}vx6=v N!K+F6dIv.: ]һJc;r_يg2%Gr'MʠtǑyt / o96.=)x5r,d`Z{"XM"pݣ%лNwW_OvY1j"o}CWΞ_fzCdȜP-Kqӏwn~!;EܴI̦SRHEhWlPI'حkߩ4u}f[|~KZh<*? ;V ŵ` -OwRPrxBۄ_ɀYo&xa{ +ZN=)C^<9eӷB]X+:e EBvS.)*RpsN7lvXLguHlю6}+w-Fߎk`%nbF7]h>?Ծ(HPun!;E\eٯ)/y躔-܄TKjDɔYCtܡ&|K/ RFY%6 h+5&uI5ь{7$$^}ܸi}4R֖5a;- het"F B+@-R3bD_t>/˘]"_L;^Lm!pgvlWZ@.!5Q ȷtT& t$lOT i_] Wϥz=hԔ_-L}R'm0 ҇.mpgnom۞O }_7h[YEUF}7dw&-u*Zds{AQdž_@Bu> 83Rm JS'}z.Nzݽ! DʬWOsFǨBϢO|/[{d&LXLj`q`\vvMgd;(eQd#:Ba:!4oCL(ͤH<+b5NPi PFX>:ƣ Wl ;v*֦ԵBtnCSqn/#{ijk_jGѴ&'*ylǂ n=4}/U +lӦcRKCl jg:X#&2GyR_ j%łYy}WuYP z\DwSgJ/ ũB7MT3B|ڥZbby5ݚrGߖ記,"&mae.G!Gmݠ,WMSKEP~=f "2BXvR~uvQ@$щ+,̴Nєt SUsVV1aEN|KWU;X{Z=w>$}cfv{\lJptv)2( Q)')#-%[~Jx0yݸOCpyr`Nq\M>?5.:<%@TAM'V\q>HPPZ^fh3f+LGD=xݩZiCX>}pCΉQ:O h^\Tד"Y9mhI2ꌡ"'Pd4TԂJoo+1%L:ҀGۮnRnbʼn5Y< Goh:8{_k P=ވ.3I'!?N7DI=3ٻ0'H՛ o*d1{\?uQ.'v__WyqI-vMF≯l m^8R(W?\٦aR2 n!DB8~MS]ާ / ZauzZpɖ'43ð[ ˷loA)gGsɱ; jyS/w)o^q~^gU[nKZұEM"ƞ8[^㶧錼Inc-Kb<ٌx:"O K"AR!3bwtbLr&Aч{iY2i)Z/N?i 'F#XfWN:~AϫH}kWKՋtv|xj=丙I!ي6cP2ROHh% yU/m% mdHtqu׃|MUl'=</A;5-&?;bs+hn8^F4IA5 ,Ol9_1;Zy?tLst_vƬʻrx+h>@F9/ /)nWăgJOC"ӝ@`RtuE`C=S o&'lϑ֕]H،l9܋ۍ\\emN@˂ЋӋ\?ߩ"J+le7p!eguX)OdYJz@,d}6S.b'RiqB?}@q|DlYJIQ;;n ^lq$yb/c9B>B>Z#׻oCD@UvkZfq GѿV"ԝ9f"l^u3+0E.Pԍ[,g&_$ #:CЫ'3?УZ:*Xx BqLWu%_3R *iO|mk+e|`bһFMB # 4n/ȏ]ss\>m9:מ}oąO+r'>dK<۩O{wAB/PZ45.mAAe:H G}BqڻQݿRXu';& 8 saibxj?;R+ Nr [tY!MRʪ\:ITRfj ]61k`0F#s^Ndn aieN, Ma-sh2RYlNB%3dci3>leΪBqPߢu^iq 2`C}֡@JƑw|Д!&xހKgaԔ3B>  ]=k|##Ccֶ^~Rak+E^<$FD%8< Ji͍B{pHИ!LF0EH o Wlׁg{Dsz%N`0mclLZK6_>ؓ/G) zvA44qoC38HlcmbȪ!T3@iܤNP|Su[5Eξ`,%FiZ[)Ñ&²bNo_sT?w*+ 5?ă̑-Wl]5FR '햇2LMERo܆Z0ǯFO VYIbn&'B|5js&˧n5`ք~<iV.O! 8dN͍[rg''nuS97ݚ%"R$TbA8'3g=?-Q!#ʯWw+`Q6+{$j: ɘ"v.32QAaH7fydn9+IޖAm(MvOuj 'x=#kHAOVebnR×wɻJ&}W*-TNuAQk\Z~TX g#w?J-b:=ǘ [mXg5+~Q7ȼ_8/SڛGA9LB=z! ^VEIhH{~̖},m !HLŽ]@3&- *ۼ<MB} r "{|O*.t(oRqF/ rCl=%-1Zo% ~ٖX֍%MGϽ9^P{d{*ڑItËqt6!B'T; Rn_v,7G#/-P>5PMh[)=E]|= -nOiO5%4nh5?җz+(),*$\@=)TD͕C`N"l`;F.6wl(2)*D˕^ ΍J~^?_$ό.E7..%NcڍuB?MV5%s yRk#@4;MXz&D0eGl9/8ޗfL7ǂ/ RbE] ,UT:N*>5nTq io6,T[f4 *O+?D։rҸ~6b:eUaZc9 hp'+FM?,>/p.Ff Mߵsű@:l% u|r눑 61i+Qh\H=.xg[3!{suLjWDrO'e80|V~& oVR8|䤓4hJwfY qCO}}hW# TMpgK%d}/-,J)P|WR*mRWa]5FĴU}iPҚ1-'Phe^<-)w'تBDT634*A_neE-M%:xv*;&LᬪVع4í.Pm"Kc}A#ljW9rTV!-zvYzBD BgR7vT _S矡^W GLj{<يYPU |xPxh1: ~ʑ2QC/:sOAǬ󓹿+=۪"u> PJ)fj0\' ,qw0lQ`܍ :N4|rp%gCt }`s;9 [1FbA:3,+oh^]B<7RoH :ǥ\t7]7Q []q!| ̤c>8snYW.*61 !SAr>G#^.e;h(J~e`@a70FKq?ifȅbpܦ(eo߹JĨPUV[p.Mq9_C]M)}Ss8p_48fԇkf:E\Bn?8J`1ߎș@ڟo~pȺH4*g㊑0[OrP(e`,2'nS!?$9fK·(>A<25eF_hH̸ F]\ RWg2hkGH 0v dwyFpahK!~7ƛ+5uG'͆q-NqşcZ7أsm0[c|*Zmj B 4EUw,Jv?Oyb5$ y}@l@)_>RLyM$U`_ñI2Mr6~{SX~țy89~Ef˓44w W|&ePS6b@ԛ,W )9=\]\x VC/gpW&2##yŨ%i߻bvd0I~ٿYcLb1'*Jrf'{h)D dkpS=| ?}5j@P#ῥׯٔgKQa}f5d`)&XNR՛~?;V;x$lNT)/(Za#9৴En(T#5ʃ<^ɆSݗ ~Sׅ cMZ2oN];x ø: /w}Oy+؅}p䙽ct4;XՁ!.׎2S;=U #7ڌ ^ж'9EZ"ҿݒl}]P1NHlNBI/?=NY_$)|v)8QFx.. 吁2JUɦE)auWWq$H4qZ|Kqv}N!Qppd1:zƈ3 (鴒soP 'Йzy~uS~\`S<'k Y,"ҕZLߑ#-覟Лse>HDu6V[١ w$OڭC;K{ixf})7Ak <>栊 7<5~#idq%W 4}$ n׉ֲlz?o=;<"%#Mg*BQ0I>*fk!diVoWJ:m-)a!2yșAdbħUg4{)fLD1Рt<PG`_OBK x@i%R"eNB"9u+w9 Ǘ\^(dwf2,jD*l[X٦J MވCH熵W,sSe4E(e!8ݞk`ƣغ @+ rܥK a+3zmvDf y؂I?$~.TЃ`T^֬Ֆw;~?k3{;MhXh3:J*BdQgQ@S>a!K0]!쯜{b,H( N<|`y)ka:Dc3|.o(Dn$Wᒷ+4ūl*eHe%le @DP_o6wׅxN"W^LLz+XO-fQDz³L.7>~zoS w*DcO{W\G0(z17A Iqű)5!-  b|v)*rt٫O苓D+ ϝ={竫[6p/jǻ Ԧdv4R {^4G>uȴ_"Sn#{[T PPy_x!|=#$֘]DxD'N Y'>vP%;G/X-o}_|#H5 +23X~a7q _Znw.R`>㇛c p6^9eT,CFk ~վ6?LRs;m⪏>l(_6(j7GTM;@_'+b9XJ>s֫?om<7:g ⫈K6Rj^J%w 3xqIh4qv/T=D;5JfËۻ,&w!IjX̷k#ug,x6of;H 5lK`mPU>os Ѓ U43S5|N[(ca,e||MUaȸնz/T_?aS KWj7 X+FNŶ:./9jRz2Wj/@@BASs,6Q|+ 7o.ts^Ç3xG-ZەQ{c^S;sܥ;YHԝ蓽QvɉHX?/H„H Cz V ~H94 )dF"50`::B';kär^3S ш]tmٶD ,^K0wہoCHP9ԥl'6 ^JGޭ}ćcebfwޚh`].쾨h<: &a}BPl5lB,/RK+$[dG!lviVm7f,!y9BcȖ!osЅͯCu\"xJ-l@)$X ,4%,ǝD63d-gOLTG#mXł{'T9~TO/fV]2MZ_t8:/yyWE} n4^ N'9$\7g"%ۄn|sjmsƆ<fs:wᆱȈOQ5S]:PB8Ӥl)lFXh56=_)q6SW&]30jRTu;PSe1 j@W=_ ˽9p+-ˈrzX#Ǧ_gQ61/`5SvFmCX}г0y QX@S)TN2lPP+ %5ybew+ljRHQцLP]F 9EYtMxg̍M826mp1r6ߌ>ny|;Wh\i#ib?ӝ(;eP:!\geeQdFP~BQO>錵B7YіV'#I2\p;pƴ^l|3B tmR0yX惥^f#MZTKU8qê*18nd| ,z2E޷V#ꅏ,JhyUbV͢ʭ+NPM'%D;Qu:q omt!\gn䣇6Fsԃ (&WwL0.KiG=iMf_cp!*a ejo)x@XبTGz &0wgNMTm(DB#Vn&|%j /2M };oKF$:/8:J)3a|4|䘏++u![.b+6fzbX8(>_Vk+|RQz9 )-m~2X}_GSE; :O ?ztJ=9+W/ jPDv=RFȳs+:wgd|y 'Fsi&(IbWpӁނoF#hE2ג(Cm GMĔwW"7:r͑HG2TXYvEWi ҡϤ|w}V[ZB7-4k<ޛBG-xX8Qtzm<Ѻ4g^ <(Zɛt])D.f2Vm.D-UTu@HA3s4]*L=!Qk+N&,h&`RMԍAh HXR0wE=EK"aR82J%3< ։ף>ÄjY=bJ1gr$;aXذQ!FMݲu)>6IwƓJxs{6K$,,+zbo zHDL:O?&(ari"}NԞ"5a?G/;eh&v*D0.ܱa">ܝQYHZ(B:)PaáO7тiRiۊsWuTiQDvRC_7)GMϓ|g޸|^=&F;c pF6*:{F{x)-K!՟$Uרc족Pםc}*ߊW 0Xb׼BTf:qw^w2۬,O]EBZր~H "'>T 0ݏdb/M~_FoaOmQ&|#ށjgO5#G8ԣZX0wpЉ@L4ɜ&[[^)X _aP~ZyLdg1"b{yJ5a$F7KErfbB $e(~)$3D>PP֨I@SuPz|! ]ajp4/Xeڂ^?7Rt^ Z R&p:'D0!sy_,A4R {\g |{A8@/zK' Ofd6nЦFmZFqjN=Ã_i-D~ ?8ekthlƇ8(:"[DGTsq x(ߤjRx^$ST%6\+%?(+mg+-vMHk;CYBw}CbW:eoMvRhg'T%$᫑nw Tq(ֺ!8G\?LczҬx(//`pgWzNxuial^293U~M?a!CV|vͣPFKc+jKdX P  ІkTS.Κ D۰[W 6K Tu {^gl^`qqq<;Fw4't]'3!ߝ%w h3s zKYq TO vYa#Ycl.Z—L p|B{-E hʨKHVIX5:d$xƇ:ʧNtrs7y~Tb}:dzGcg9֋D*Ǽ (YkRN%6>wQ 1 F51T4}$̝CbH;F>)j"V3l&ܐ7)} 0IU)e9t"hT(d#cÎ4Su7 jigp^`HHcPrkb41F wU0tZ.~י&oFs̿AS:+!Y뛯Ќk u=&輓oc/c}@P%RQRpad;ʽeآ%R?`Y:oGe2qǚx%};$`vzIv^G[Ux݉yb|p F\y#CoPΚ#Kᇿ wZVQo7̫ߦX@g뿱҄a`/.D!]MX'rǀ Bُ^oEؑb(# 'R5xIUe3TG{V.C@::|I𙞰.C[K)čRLYkfy`X>Wr@ݍʷhD!gσpLޚ;] sP*-&B )5梅mHNcI{?(Ifo@c Zi'ALx,MS?Q.DѡtKLKݝc3'7[,fJHGdϹm}:0^蹻SFw;1e)ppӲ!;+'*j߮n4B fW}V HBuT gMƌy5VMO^ᶩm@iIz.?JWr#Q+?b9kN`>S\nrw1)\=,\χ0u:U6(Y1 X%͖'^3(z՗q$ kP%$3³33QSVg`/V1$wqb&BP;3* \cBrxI.C? R!2墽Y_C;z͵p/e JڲUΰ毎Zj\k3cZrW%Aa8G +JeGhlOmb˺bb!Ln_zvFHn\e/{sCX1Às>b=δ5ERM"[߫RdT0>u)V^W ߿&+A4Zpa#p*}=xq;ɺ: (ƫx#%'H1. biQ͂+%9}ƩH+vؤ?FMT[hr{k}a= `ؒ) phhuڐ䣼#Bˍgj $~Ml6„OAZ]`eUaJ$㦄be Ncི fͽ5}ĖrT G1#B_YYD~sѤ>K!: `B1^f#M^1h%LpQmL9-ieƦ}b}.%o)[`|m'̎-Tk?ǀBSS|Le5ԪreO9ަXfո";z`_n#f=U+Ǹi5=2 zgB>s#} I(wch@@ "b؁`3U'?h +bCA&Qzb[}`<9+tJ BÆ`ѬmrW}WSG/BP훘4){$PNrEHq4B(?cc@!w4E{>LC:؅>B9h6T6ۥƞ@[=="^n^ *& v5Բש%zLTƣ8.[𮮢=k H\vs ]AI͌tv>{<R8|j6,+vHVe9€ue'p]MzO ]VZ0̀B~i| ׻aF=q^-w _H_at-W#3C?y1q[v+ :A}Y@'!vS =!,66R[P4u3; 9]As &S)!1Ыg e?{P!{{7w .s膖MFSټ{8D yíqfsK!TOrTC/c3i poY`mdn\}vD#]o vu_lGyQ :K#6u=$`4 ٤ܾ0ǖA7eUMIthwHMiD3ڰ9;[Ԟt%zoy;uAER qtkcR hģP#SdC6Ktbʾ8ж:O4 ;岍x vVwbʤ]/f  o? wT WS)r<u(Es 5CЕnf^.U 3PQݎrvJkZ]u>Q+1X6-Y.ܭO&3@ά=L8o tʌRmMcS{a㭵A &XD)a!m2FE5,i"ȝ0΃.ЧSN/#;Ŷ ew MF$<?/iŐv%堁o{G+pwnr^&έ*ܡKK[LE;/!wd=N q9sس.-DLl.%g *;Y~*\h(S ŘP\͞#|ך5E۩)Q^x/ʿG*݋, r;'mz]*|.FWtIX!-Uz4 jT|虥B (%c,ׄ 05N^2Co\FZvyѺZb@Udi#U}Y(s=\ cۈ YZ>2I΢f_lH`fcT*x b#} fC#,' Z. *t) {~0G].kZVW.ƷbUS;(,ul-gg6*&RdЭ180m(KJ)Q 8"2KjBp:anW? u]̯߇M>{tld8*t+$u+ZBe=r3ڟ>Saql%MHajIKn>WHچYr{8d{$IW;\-{&AEPMwř=*VGMd=8l: yL 2s}3:n65ܩMw @EiqzL=.SFXneֺ)Zy6aZK]I(^!~3)|?:2<uJ/@s65>PpL5xP:e`%YO NU|S c~\`$ZZ,) 12 FN@ZPsP:0``M/Rٿ<0ls&c w] _P̧s>]+큻뻡x 3ޒmY磠 ƌuڠBΚ[bbn SO?%v^:m,Qnb p\UYZZ&p YR~\3\H^X 5~ʿ~̦Ky{3$G\9Gb_=@I}5t7O^h&4!~wap`UsxPQ^).Y4gu™"@R7eX `\c`Mɐ]XX3 \9ÀlбxQ\U4> !NȈQߔ|cZB-#}<~UdTmM2#(æڸN8-(&z$ jIY 2R40p6PWV^`B hJgFAP=03`Ľt7J%_gOGrʼn9%Mv3f{6V"gQL_&Ed@lY}JJ P#@ƢƩHPU?;&æ[a,7y)AstlѤ2n(۰V/?0}ݘ\Fc,Gq'*ȦZUs\"7M9 P=5-)cJAƍҝGx\E)v]5un u(:1ΑELo/ D !osSB;CՖT")YYZH1uDLY[l5ߜ\~G)X&s in̩'|Dww'4g1Dކ/[{Ǻxg>DZpuvܸT TO?hCu gy^"bZS*gwԌ^ t \P.aolt Dh:jT6Ba画S\ ّR5V-CfRϞF3Fɮhlْ0QϚ7fLAP2\bw+T 4\}KQK:V:-ġpW z @l— ×<{(-~U4YGՒvUvMLnT\[0# 7[;TkHx.|!K;1e V &sg؈sOEsܯYK^ n mPB~PG UZlw&,;4GZkH-wG^tL.wkTl+_D+[g*4k?,CpgE ]Ʒ5Kg1Ύo@9ud!.p C8덥܅&Y2d('"?Y#{jD7&Mcoc F3eaQZ.`˭[FD[p m*)ocH" қ3~ffVvs8䜏FZSyĬݾO9m)RL5+D)uh߇ʦ̴i5 :Xy3k _wEܥ]њOaRY&iR?ym40#O& %wƕ]M1a' =A/u`!pB q^s׍JQ*1yN#3*0~41<@EE.OƊ#ి{dZ_L"Q3DB%#~Ř!=So,k}xw t^tx$Run1P[&.4Pqab&@x3󉙨hY9_Z-~|(pR&9F66^b+@Wh@Qϧ]1t&QןkUP{\&zJӋ.J>,_oڄ(jTfs`[)_G8Kf E!.Bӎj>s0E^Mti#\] 2&G$ aw,K̈́2Q܁mku;v >c؃3#M*Ԅ^I~[b@ [_u+bNgȷOq$hgdKZ&.9Ԭ^y>1c']zbpK#ƾB-ٯ0-|_&XsXuz%-0yP``^vq;vLS'w1ͺdA;Gtס }KEg-a)cJ30So&sΟ q%J;pBR<p2׎֟5.?IYk|UGX>wXIBYAͤO2- #>Jܿq3 V, Bs2:9@:,զnU$QB|2_ 9D-)\){٫)Z%ey23 >vQ28ˋٞ<0'σIFMq-`enb,U=)Xv wE"f|E!kUa1x O)qzy!׸.CH e"חT+ Şj'X!7?5:+E^u\8ɮ>c=jͶnx8u-AFsm#pws7m`:D:a,mHv1.9`TR.y.jz4WBK2D8o4 mwO{IjLeTdhsWg⚰ևӗO$b^q @?k3@&șD3~uni8~y8/D>$17jBGmpw`pF뇗%pTVl ),o&)>{9Nl|]q"|s8!kZC}H~~%@([UTх#}!lA9u}(DyucZ*+)WW {ihmym.[9.ttѧWFx6dw[z'V*)_b6IY#3qV7VLpX`+O3F^CɎ 0N3ènW @@%\zM]&]_Oث4cW:WjCjӚk N$ԩ aBr^J~?rpNB'+ހo7yn"lax1XrJ;Hp%MZ1ZJqmsc6و&zWޢcV<(}bDU90={[@Rph5FfV2& S2 sC|UE݅atQd싩gB\{r!-,bpg7sddÙU$-ō)&IVX,//oj1de<{2&l9a0=Q ]#}2 ^{82^V{W'k 1P_C+<*m=cSR9*a,q2ԵKuXlXDl]vK!tjYڇ<ƌBp?.FS<˰ѓ C6,?G\\vFܯ@6s(v}=?Oi\!nr 7o,FcJdhv?x|?U7M>O-WZ8N6tLIEcQ mjFڡtf=dh^pʆb?4>ء;WAKmC H,^4je){; _@uass܊S̮0M˽}7 m+~ G ҆td+xVC%i~%Q5]d1L$|T= R-$_wt9|f},E`Ysr :wNgk”v&DY\%K!s-)Q9 N:ܷ_KBbXbmzOǪ`>{L&(ru#9Ø~m ?(y;&ȀHez @Ђ}TβxWa*5\4yp8 m";k;Zotvn`j~#0E?d1>L]/ EɡIQ>{o;ŷ4-w_":UlIsRB@3O~K1H~Ea'+TI/%7eqWxґZ[3WPVqm{n kI?gYy?u~\r_+7 9rL՜X;$%EeH{L. -ͮn+ao}aHwB "3u3\j](T`&yv "EK bAL1iUӨF9?һ%5hmw0V5ur;ܹ'4 rM~u٨b,Ct`kˀ=׉.Xq=<;V dk\0Mөl 9t\FCM2>/M(O(pU.k8gGv@&c] -͈3?uQk_;aݍ Vy >c)Ρ5xcNnGuwkǘ8$[9g:C%)3r45G5蝲[Fx1+$0o$q$}eP{u{ n3 QK<$:*`Hw;>I5m9bisv="}8d&&+[ |^L.-@!P @;|Y^Ye#TcqV|>p)!1x" uM\1NLu(>JW^+q!+qrHA͟=3TDsǘXTlz_y/ĈbCILPoOdh\oIҬw>]Ɏ~X0|3IK}0m5>B2YBj ̴64N:s)%xuO W`S`.['Vd~iNElWr|H쇲P+pX!R!L?eٶ0FP!\6LK,x||_`X5Bڴq)\P-M(H\Zn*j:B PPLӗ@ Er+l^*vyhص0(s|Dl%n!Mڽm Fi𔿠:jC/+orR (Юaoǫ> }n^'馺jGy |U@K(J`-u͌19þgU}"Uޤ}n^Btᆄ++ pOlB";J#gy n.+{ˆ'ao~Sf[$~`P0Pl[^e hQu: vv@IK(XXancS;i4b^^'.0ep.{L!L̙C O6v3WDHF*l{"?H)Ն2J7MR5"r~l⚖w ]u宒YJw"ٖybCJ:v,֣{͋E׈azv{D9 {4mQIsqk/fa03` Sa6HB BΚku?l@FU6X:!~J/*:8Jj4I7lлKN².(%"Wole>>d7J#$auKm僠S=kMa*Lfe X1-Ŀ4Qr@MFgjV̀XϋbVf5?lJ'ȕ^1t?HESsovbUU$;Ky/ $/q 1o}͋jL$U:ܲ2@4{xV]I𬂟ԐG^C [ZRғ[s8T . i^_4o Vk!H|ˈ12J[kDeja,st@]lC>dFuFK2R|ͯH^Kժ 1ؿ6U$"WLb.Ch-=ȫ-`(e .tP[EtIZ(dɑ}s8+ 4ȷl4?] 3牙:Հ/'x%(# đZX'uB?k+&^zUVF{wKgYU![mҎRAc43tB;إà W0R/#J*SڠպHg?AJ8kb U|l*dO)q/CdGHpVD~ԯF # b&\4h=.K?ӛ(T !~L٨-~qpZY-TK1\w{5${gv_sE9}p wi^NN49y!E,]6./h/aMv\5 PEdR=."Yz/A#s;NjMĦnY Ex< }m:ƸF'!-Od5*rUf C00ymG,hI?;iT_$fņ\^$D3p)!]ߴN zeD䨮*FigîTخ iXgz7RC4`қ^;X`T:u1F[bc-9DΆP&`VvYK5OVmdH ?,3Epf kIxrCMh<0AX* 9Y YedkD{ٲWCuș?Tc-lをy`2N*Wuq]}]v:XP%bҦmbe8 Sjuu/n|*®w;(GZwS2P0g*ra20h fLMŮ|4p6QAIjDPcA^ ۙA)cxtAz!#Ђg ,&Vν&HvݒcM|bNmvm 1  axn@5HuW1T0ԪSo פ،4(F T%NT,Wn0}dOwB~"ǘH ;M'Ѳvʈ,C4^ÄPgjcR".R޶My̗=ڋ ڻ+*]U cZdxVS_M;ѓņPthiM0rI'DJ~d8I>aXպW @}Ȳ>v D+z]w2v>!SKgNqNu1Źg4Er]u E͉8V ւ&BI bU/h6.Dv( M⨂"ZY̷f_pWGO #{õ?1ؚ 瞛vG=9"8a}A&ɨʔI ?x)"rՈyOg?zDXMH$zH61-<ʃY=oMzDEe85n~HUyw9p;=kb}z 8I AEkg {PvFC/$3^ ˺1j!e/-0? G@1ІN95dw6+4O~0F[i0fLW͑wkzL ڲB^"|{G3]B(Z|(35F^K2\NuR2^C&0 ~Y%"Q3JM. >W)B[z;,iH9Ҩ'7_OX8ÆΦIӀ~l?Xۆ4 0r*XAHJp#\^wy^1Bۀ@Q鈪kϙx2QHe80T 8>c P$! mؗ[\΋Ezƫ9 NQ&@pET\v#X ?$zB,:O:"Kr smB6'SrGVUКn@ŠXQx]!j@^6Pfwm!DU#,Tic9o +HxR3n'lꭊ}ʁ XpU~B8π}3Y`0gnp$9ؐ%PĵhO0/6U$Z㜺[n;g$݌p8$C W|ϸ`]d(a OCW{Ƴ nIw4W?]47͠02Ĩ.ՂUvPX  bԾ3-+X1O;2DgU! KVJ_ϨmA_;2K WSwCS ^mHk:~jbφ =2{ Ŕo/V@e=<ԛE?n%[GrA kCd(]M-Ir1)NY/p(~~UV>>|>`w$&I*43wFVOϵhf1' '1ݟAc~K)=ORrR7q`fhO"HLp%Gj#`.?=/rj˒u߼|;H7Z,jcD;U?X j0a7m{8[uw~1|7Ýh0|9*Ċh T<h$8{Yvxef0J?owۗ&@wI`#"St^FS&ܷzP_blqVEXQ=@D2/HDSs՞^md<Ө"~QǓ#oIB5-D!C -s'<]*ٱ0M;ɿH&S:& :B4u6spT ajg,y=]lm|#lK1lp6{@9O5(nI MH'"CZzE b(q<LX ,d9jrRu1ǻ@[[:Ց gItp k,|V5{Hֵ{WwjEAeq\m썁emZ}y0 ` wS{"{6oב/ZE@b3-hETM 1*Έi|RN؟xo߇f:~m7rẁŹ  hhC*]{o*-_vJ5߬9ψm/&qBLjn+Sr&Kpedw Ss^h`,%Uw$ftX`HE" ;w3?2K>r"RIqkM!u#=IߑnT}eO`(7I6̛[;N .CV;zc$-2u^HE3wP|OmCN`2#PzU\'׎JOnC.9!pZlO!=x[aXKntL_g#5U T;&C/ ǹںjjw<g݇nh#T d hY:biraE!pOX!LV_"E;: R B~mAɎlyQg44Z_:کQ(_ ]q!}6iE\w4 vHcPw tI@,H~T< pG6ƫCrwWy ([..yM3J_}I!,o&pXDp(d͈ySc*x{3_6qZÐAZUIKv7@x.dwCWNUܦe(%ʔ:_ѩ &rf #KQiDGve ;J́&qښ߂/6Taˌ9 z4d\U(E)t..)^v%0|*S\e4KyZ0A a}nfb%o4#a,&P7M4Oqࡠ$NɅ/)wө[bJ`w- Q8DtOR!ZSܳSdvP||sH(aU) b Q<+&3 \[`<Ɨ> G 33$VlnjOp~C4 NSݜN0I1)Hfo59 V/". WUlM2IGsY`aIi1N c1S/:P&7;Gi]Md뤦Q:,rF)OjR1H4$bjqԁ΀gYx3i){sGO׿lsŁRG.n裦-\-Ww+n.#ē,ٹ?Q=dߵsHfxU0%hP׎@C5k thSP.5.{Oux]8JHW0r SH2RrC%- T\^7|YcR^9tp3)k/ 6pb8Eu/C q cS+> =wb CG `5j΀gs2/?s,U_/cR#=vLhdYЂ>L 0[NxPb𾈠}J :1x[FC㉾*=+4ҀLiv;Mj4HgR,/wO?׶R<(ْDcCMbVR'e;Ua5)H`&<!Gi`꡼eR5'!$-"jinѴ0\/qMp>2v3Ya(IMĞ D:#(w|'M;On'Ę8$NC՛-iI VH>`KhC +VQxʙf.moYD'Ԙyƚ Ŀ7WFKQ&77tb&cO4Rͧ̂,>* NOgV?벡 CR:{cGSƩD9хQF 47M鞃~LO "W-:Sc(<=jŻ֕ O,Ox,\$*uơ:9_[ 7r|BJC6iM&8D01DXT6:2(%{$YR2V[2Q](dv1GnhZɣN6Ev2M.u` ,6-љYo&l}3-0T;ݚ$I% 4}7v3jjihm4fM@@) ]t=m !%|@@ܴwA*;qF5tN >z*/h5؜ʴ7~W-S 7V5/w^J8O *ps0:ph77U"9luVP5DEƆln By8ߪc$L2-=Ԭm1 r) в:φeٽ:}|yC#sÂz֬  Yl4VDvy1j4&@6^ |平i,MГPh5v4 A8w}P8MyCO, d ,뛜ä\|wW#Fvs~ovkwL6܅ xR*cO"z r#5(_o8ɼxL/"T_%@yWeXXe 6^MY>IL<&T7U&ǚl/ x{hM,G˅xMY(|}FR`Urʹvuܞ?}KcGٯ.PР 0hQ)zTV- II?n߶ƜW8aP*ގ*Z63xm ko%GoI]m_QO6ߗ5TD5pڎ}HѠ0&'[k4~9W533E{ gjXPcZ%,5pV*?QAthb$ҕEZ#nl7"8utt2|H}.-'ゥkVikD鏊AխS? ^*\)j$S/:(#K]6|*_."F:D5"{<-Pn ,pY,zҰu 0M>y4J TL,JtmLA{*7Cs15)qX#Op`m-oMx$rgSybICO^L:9 xQ5LsUǟG,N@4 z"lDABv6HPEXWuxȶ U\fd\噟Җw`y}Ye_0ߜy !/cVg9b*~cM&u+&i4nvi#'ϨX+4nya]h"}{ 7N((CqZïX\ky馋Vj\wqL&riEX@U!Z_?AEub- ָỨ*]nb;R;RV'@BGz1=0_g%T.I!UD'~-i]+ I0NT'3{uN%c~ Foy8Cy+{$d."+0~Y G_8{BƘUӦ50{k*me5P2M18#ZOp^|6D*t 'YBI|Ȓ4Hˮkȗ}Z´ n#x[|=sZ_0 6G#wu"SM;MPZA1[{ykDm[f:® 3q b^6*Q[ݍcmVxas^enovשry3o{졞~>z;mRbX :G#+ bvP`]^y"ɣʠ[Xez؎#Cruz]5ʫm9P`'gQī'(V n)u U_F1S~y\þsTQ_&2*(Rm- Zw6H;DR>b|bnfb-mJE1ZW4EfaIdEⰨ>)1 CX3 @B{oAN o%DJFtq0hQ c1YS4eEC8*{V3zE!.̟~7!iuIoiCx#D>QLa@U탓ӑ!^n e#8ͥp @w13`Ğ"=]eL֜:ƽMj9KJ)J6mig?s3{"wL"bnx-jSmW=b߂NC>ESиȭڱYhKqvE`NZX*^!i/; ϞBgzWnoу8G953 :Oik]Ib/l[}nO */C'~ď@٭D(O?k\ <% $s9 aŢcmnpKv}m;i:Mc5kϬ|zc6/!kRv֡\#q_drk|k9#HUH%˨_w9D9nq\5Qvei4`hTupшwWJ[ê2-d|qrz ʛmUtpN1h>֒,vcqj: t1eϹl0=VC޺gJ@i6ʰ7ƭ3*'N̘]F5=s,_#1,Y{߳ϫ-VX=J/ym\fK#Q%{|/vb@9\[F'I:u.wv O&J`1@#=C_ \KnECPr$pec޻d6L[ OLu.ѣMVד}0ȹBNX9]+=bR\U$R NPҔ($mپ)T  n9dĬHnayqmDvs/AVFY06);/t0 :YY76)L܀I;2`ըG~||kN9Υ%57 RϐYPx֞b8k6Y 1VwTXnVP/Fn6i4>2K&Lڇo+G&hB~DINYvvKP yx ֹ\CNUd䔜nJ%mNWȰVs aZ7@|:lHVRueZ!y^/b|R`݈ZGIGTc Pǥ' T}Tbx{z _x:U$*=]%͚Ç[ K )_*W4!ahfo%-,'Y0*aĤN1 pc0`D:O'͚-(Bsu/-8G\mcz"68?FeE->lo𭫻H#UwXHTڻR]?#fwrFjQBȩHmO_r޼t#xETrNH%*}'tE.]ɈUsy%pٗi< k+ƅu0S4g嚳bېHq)nLk<%|h Hf$ZwDdNuA⧁m4y$'vEK1^p6Z(%J"%(:1̫P`3GIJHk[< Z5?Y7qu&==F:Jv<$uZ9![rW*pYC7BEs0͂]OSF.KQcWxQǝ|jMu|qwiWb|δk0HatDX$UşS-j> Bnk68#cqQzl?+8VEր!=GytTO4 WRREwYH%0k|KW˫pn}1=IK]C7i"2eeB0"D_Q}UQԴuMEJeٌVUuЈ)GM|&\10jEوs0Qբ"̺1}DV`F,#K$me@o5MpR'$Ќ}FPS9wcJ5l|)yImөɬYPW4% Ԁ[S,D%_z [=iKKfY\a~L] % >L9mvq'r<8t|i2lKFt66vDŽq{'+Sjb"@לq]n & u >Bg9@:O1h8^v:"9XUIC-lМA$ Y'o6 DIc쑀ϚYyòTXdܵG^jvN?vMiTu";7#':5 A𙕣 'n.xMU7 %ٰLCΖ;k0lf{Q|-r2e!khWIT\XMC mG^]@,gaBٿpr䳉K\r6~%ՑLvO&hF>&Xk #}mIdc8( $ +wkT='3>YP>AboH-bnkt WUR8fr{aKs\ww^l0HѓO%GjF3q9TMߒU$ca,Jv)Fz'V%x\]NoS3˖M2VKbltX|qW֧_5uDs{->Ejx:+G;~YXb/=ap8~ xދaTskf*j ?۸u]H:Q6H .o=(Y>q5fdPG2j!P) W͏?>ݽ\{lFݑ0O!*Ď6xzA!+Va8'N{n.~tYvZq?;ʮ]Er|`I,[+xEmZH EWno `cϢVֲW))G&P\oz o n)+P|>#SՖc DA؉^"ԀYFᗄWRwn}e@wɔ,9_p)*Fg[83a]kT릗q^2Dzb](ޯfb!r% ^ҕj(YDM6& QD#0qyNp]L޹oPes#<5ݴ08{E<Z(QV+Ϥ gHGf=rQ(_[s1bb Z`]}f6lX`F&";Ht\(yVȇ$Sas;L)_YJ.!ܹx:^foR>ۋ: GPR 6-^|%#3}D;Dp<(/ᎲGz^[ Kw Xj#(d .&CղƉ'UD庬 åTIj&X&Qe ݢN 0>I-XhQ[.Ssc4jog(^1T7 £6v{H<#=pekG΁}d8HV1A] -}w%Ӵ _s>Z$Aا@vWP×:z8yBښA8:6"~J49Z*`Q\6Ib _}I)P^䠄!ʚN9:E9Q.i+P%f{ڥf4²9UwGR6paNw8v`rn8Jd 2?p;FwfeSŜmH.O~4<]%.'p ]8;+ݬ$&_1rY{最mᄒSHv ;U/#u)$e)1:/D+ٺh兺.L6^7["9Ff0 q3Ig0^ gKYp>ESta۠hDZQpǙ fy\Edlj&8UPIA0"FǠuu|b6J85^FKcVeI[MxHW V R^Qz}?Pthq#?Lwlh] X.p1#"$ 2to02@Sᆱ:S'u=;B WlSC-4L@l]6Fb | ,oMb2I*-j%M嗚g'jG3k>ϫm&Z0 S,. K@ҠLae3x@=@@lYU_ hA$AH&d}yR[( y!e2DOf5$2ːSMkq;I~*LcTrY%9*ly} jiatjdT1&9Ч^CMrS)kM>5|d8gɼ@Yc4ۼ*rV'k3^4$;毬A]ƛ5ڇ6joSV2<IYcg^4g( csU- ֕IC05U Eۜ.h{R7h.~bG찗`Mg xV( ]vU(5r"?mm.1%HtDtR&B5Uf^9PD,uQAFHކq7Aat~E/B_.k?n-~oAσb!Myp\alaʂc0 ܬxP`< 1 (Z8)47|2I6t[6ixMfE-<ӡd FB{eV!t>N IS$3bI*^q.QN__g$l?eT4E2;-9IQܮWT3ÿƄnO3('pz9i,ؠ$jluE [o3:8 ׁO宁n>oBLOa5i!l{6@ʩ>)Vh:diQȘT2m[ao,|~숏u|Ǧh{#zƑ/c'2#6@7>Kቕ;qo kfhx/>!,jP Faȹ7ւdΊ*BX {=5z5iq%\M]X2kc- $Zo'ԋy & H&5S #)hEE %c N!~^ii v(F\6-"1ғ^ޤ ucLk-yGE<'ZJ/!72-#.0ɫF0ꤏCƔ(yO>7=#+ͥ^Κ[Ԋ+]IVu 鰔r0"HX,O'>p)o4/!2Rͦ9? \~c0qyTȧ9w~3mfs͜Kc뇓xgI D(Z2u-3z)y; #̢ȏ^RיfU'dFD HjH;@tAKeJS$5u}{ ۅ> Sd6eBGͼhvq"ԗT(SUUQfcɹuׇ~eUhd;HJ) tgroC&04%( !4?-U^ [ām|*.j%##2gK,F-cA K  c)&j7 Ů@nLF4f}"3 0 /j9*܌=TXr,]9>-aѦ^D"S k K@Պۄ甃v!g]s~laQU3q7p98 цlT. TxZn)KcM IU?:DV\Dd)@(~ +q%9}&S]M+yhfZK/DF\swNW1i_BbK k蒺}~=-ڟJD G?K[Fd&l5!yōpɔ؁Ά?r {Xbۻ{m?E)S;ӛt!Q&FI@ g/Їm}5J[;Jݚ%H%'ĬF|XؖLpFDcV#'M\KzHϮ"_ƭλ綶 L:_ݥ뼫 y [50vSb 1<>Q-@G  9 7&\#LbMc6mS8-Xt`^(1G.WWÌWTy^$vW% 7.sm]>X։deͫ?ˎ_HG"lpF{zq ̈igfJ[a`XAepHTf#)d٩akADQ3qq!" " _k&7 3'R$gH;Ck&@Ͷ^˜vQ~np5=b5GeAij̷yxP0bm`OLﰠS^CvOnŸhYp6i֐M[9U}Kr.‰b&i,TK/MAG4ڭbYߨk Tڍ2Pq:Q~K_3="u\%y% 23Bu,D'RNxY!M8܆Ʋc.~ Su;@b7fnF2>F2,83 g}O'+k(K;|I&-LB% \Ob1yP%Kʩ2fk~0 7uYS0@&$ blЄ/\O(VSq$ gNR${:@ !HS?Kv3Xģ$q[Vm[ ķOÆO[4;L6vyFy+26k<\cƦ"Cl__:l tuF}L9 ԋ9,\WQ+cl#k lW_EnD}~'.DN&b:(56<$4~) _&c3r9~ 9S^K#&dOh#P9Ҧ;5xf^ uk/}!,D`C|PHy: s?7@hWߐI6<U$[*gUG^P 3^S<@u)bR Cܴ3%Ȇ%i6grzMGh ugcgDžnjeM'i$lg!w!Op})=\/&Դ:Ƥ[WX+y 5 ?pHWS CmHKG65?Lpy_)p(_2x^-␡.=4 ^kA9p3ћx2+A AmpcR<<ؑbm @+|*Eg;|r9|dzluS#*A*MmYQ')Pn\9xɝ*i Lj<𠈨G$+-P?6DQ.!]let8A5W|.u#aqjS , 8gH:ŧrفLO23qXj`m$!g|pqI5C6C 5OٯZtۼ}8h;j(q齚`e(xK%II Ȋ]{C6S,sy7Y&Pe6$Y~Nc_H㻨 m !iMf a/u8ShWXCl6P O` ,`op.eESD,rAr쓗J? +cE_7JڇzZbMDŽ%U>A&=CdɌ`5:0} *@;m¬g.̸vNHpC6Tb}RfM/*POQ'謵f,z)\:ME})88V\ lNdVYc#]<.nY6 B'z/bz{ 9,ŀn[ ~S/*8'V=9VT1=@Q@v Łgi$"TBʖ+V"jmyymZ5-_>(@ . o$4U̝&K^d8S9,HO4=D)D{=^50ݛ1 눶9tɤZ4[U{ "prՎL-ּK1eAuRy|>~j)eAbɧA~ ,P ߡ j:BT@-epl wVxROo)a@)D)P" v+bTz"QQa٫"0 VT~8bj7W*C$L1Uc%A#}TnK*$\A(b[W!ԩJXZFjMUk\|Dz`#gr_7n8c%lPꏉc(c`ZwT:$Hv22@ N{0d Ţ}f{ rAc|4k vi7qtx?jV00 >KPM洐D_6j"p1W.z(!+4$)THS< \hn=.G "^(ciٚ:^ݹ`ʎV앨p0;1˙>2K Ze+ӧݐ^-Ҧ8Ω6f?7yFŴUl6C+gHey_:÷PG,8ԑbtV7lVMoS;7Azv hWw|Ee8 ˵3siռhᓾCGnO>~δqP7n(kz@|3?c؍?OQ9Q0SWd-A{2WADd@:Q\?{ @е.h}X@I[G qMy|jܩ^E ZKBg1T%J/8YyӧYoSh7s|0oq6v0V4Xu ȱBx%3Gؗ&kdr3.' 5(>*+E t<Ĕi2-Ļ!.Rνܤz}(]1+|#ƄJ)C=%Ê"?%+[x>^R@Z=8V]nQXAFݴ2ַi| yd )A`2E2<\w>,"cWw$axUGdY[ 9!UPMmX6Oў};YtKJzWݒ|0@6pGf p6m aD)o4߶$'=uZ~sJ,O )8).,DŽhP BR _yl5`It4e\/ /fؐdelo M"q޻aY{w9#&:=_qp &yu Cþކdoי~p溪IT*>${f ܍6W#폄k`顳ͪjcp"^~>ڼ3bݺ ,8$g|]P ޻I!yXvF IX±aw6*kFe z8;mB13Uῼ\w ( )uI. f+ EO{ ]C_ `11} !X$G؉ߍˣˮnKn{J2LOk6g&N$I40몑ѱm}N ΧE-cWyD+!oʹEr+?0?2YƏ-3| ?lOydf 'Pݛ#E:XNRWh#p3 @cMS+EȎ,)3\"S؛8naE=8i@kO+qb) hflm!ʒ[WCW=W$ h$C_B3a$xMBv]fQ-O8ZqTWXboj%gre+&?G@nPxMUnHjI~γ"a{[|jdW\rL:Ȁ[-f}R-l@Ʈ&=luZAF6!U;QŸt^ >u1k2=<͊Fs]UX]V0[7ҧ?(׮쭱dƃU;~̜NX-y19!#こMOd WOS~Lwp:S$˺P8W28@b7ȺZKݓ9_)\U\rmKAl+o|~H*{z$-h!9fsJPe¶0MB'~.m)fZݓhJ{9;f#Z[2bTH?o-u@r?hM%z z 8RO1P?8+q1 IFrx KҘp|?O}+TèCih0 b0OgZc3n_Wyp9()m$]>,?t,yQi2ީl{gh09xK9ygfu#U#?`e.PMȭNwp탶b>Ys NiG XlCB+eoFzBƚxcMcwJ gFQTlr묿N>:\yqհ[%֩MƘ / IsdTŁW PS隄~]=u_1y%E}F[SjN77_@ߡnC@lVv$|xj2tw:%ƞj((^cjGrPyUCJ/X#$[Ԯ~GP3+ =,/=ⵅ`:,gcLW8 E߭aooCPp;/ٰB.1vq ȍ!(Ds_|XL.\`ܿv)w\LwdVd@-@f4<4(4qm}꽠虫mE%;&=Q⭆n$/~kf~ѱKg 3e y*ĺB*/[k.o5mlQfW]D5v˽Г$8 M^LEK-඘,]uC V: _}JīݛXjֶ)ƳFG.kI/eə)(@2.(,PWP2ZJ5,K+*!ܧCeaוuewDl`sCJjV8&ÂEa8­'p҆2P@UF 5O>kQd(J6-^d Ya+L]e!wAxo=)&N q͓V-c"$~ }?MSujz'2Q,Gb,|{X-;i|vҚ ,JZbhb9΅ᭇ"Pvr@hXv9(,>0@b Lg,;-My͗Z`-BG8<+nқp:XE52;T2E.tRه-:9MrrE˸w(R A"JIEqcK(տʟx"]e&jԉQ@DN~B8\b zԯ\oݖÑgA8`B\M 1| a%0)%TMaєSrݥ3F_BPbSp٘_=4jmv9OMsf'E3v"Y@A+DvH߽FJRg6)vNYQׯ։ ka-l~'̌cIfz4y~Ay|C0j^%"rUW Z0ڥ#``6tVg5oJ橅G*gw_ZWeń*9l"U8qƘ'Q@^j0ظͳuJu̚d1(;.G=ov_Hm]͟ 8:Fp;TTJi2d_˚@ M-VkA^aJ~Aۈ x[78 H,*cT2!ďHXWOm;ґ.8^Iwls,q*ibmsdIG<\N@u=Vo9[55-D8gviR"<1q0~^qȶk-jaBag24[r4si!Q9W{8Bכ {`vPbħDK|op:A^.cbjgնrKMNAߊW1en007eco!I_kwiyPl-`v̭ vҶ͔PVAg3"uOp/@WXsx$L-)[%}b葞0#IS?^fy:tfy>o=,x)*X̞ќ-ۧ*8vROW%sA:"JYVwhh`Ta*Z J.r[_䡙Orדs9WwgxT: X0RyʮR^~o3P7)zV\P…Tst{Pp v܊A0fhij&) |{!t1MGOj(/0mry!IbE6}Lg,%N0\G\W =֍j'=:mvG Yc;n}Lcv&ϽR0$O`!kS;QU k/*(Y۫th'Rr1Q~XvbC3vbijywQTFqg~NjAOt.9h )Qk\( uHw"{1 hGmjL&b`8[O ~>{Hms X,ӰPU|E]$Y*rj#si /+4b ;28'/36O^iIbyժm -&%E UڕPnfUaKc.Dzri^~҈jr O1%BDy<~5UgmwH&M\5G͟8VFteѺ Śy*Ġd ~M0*'v)lʒ "݌X1KV[)nw%oQi nQc:ݎ[zDtX+`j]eZ{YWSOݫecb 8m>70gf ˜h jR9Q%\CX*m"ptoM1̛H89\Kt#V5W#>"xR twKbx;8@,gNO2]Nuq/e.VAsb _j IV9J۩CHk >m*D!ȉO+Jnq{<3^\@l5q`FA}MNm̙mvdz-swքFz!ls %uqc]/fC0X`5WSԯ!,,'>(S`6!vR]'Hl'Yx:@jM0ԋ 'qpBZ-eh&ZPwRnXl@kqͬ#VMhϤmP_j听oƽ.ir3(. lsחGb ݕeD^^ cCcg=BI^mX[?%H`͸xJ9sa9+{U{S@=u"ybkn` zھI,(;ar#yDՙ]v)hŭJ壕u`фecWi~W{H8 i}[8gcc#[/vdBIJPF{k>] yqÈ87zVC~S2pqj\1?HI<>a+ WMx]H7}MuBWaaN1gJ5qOŦy-].7GȾ(c)].N,0n6؏T܏od#3_/!T^vGd2i@輚=Cra}GiIVOKz ^韄bv|Cq\fܺOrz> +X17E/^?rT߈'N+j@l*z#VY.3%裨w%,2L^/\J/ހOϞBG5"+~gUubj[˝IR|F`fA Ǝlb8h ng9ǰ'!KQ*ҰZ3 |Z ӕm-.b$Cz"Io @fO]inFiVxL M]k2ͳ ;6=Iᔇ.|sNq?3fL3OK rlAtj擗("pGQx-ԍxO)9­y M5IN# 9Fӕf9܌j/( V!uJ%GMGj:ˉ퉈z,HZp_@!U0 =kb`65b"2WQ[ۙOQƬ?w|XI!<UqKc!0̘^Wk#G䇁ø C 8+vXNS,/vTҭFm~Xu]tKџ4Bt5]>p#niV?ʍ0wc`<`Y#*".2Л qb]53@cIh yJr* w|8LX8֚^L2pe#W崚@W[S{,(k!Oeu'DFtolij-7: t=!)d;Pn5W?ZŻQ?chw +K*fl\WB>J'd81yћ~Mͨh{X DP_KzkWB ԛ(Z4חNed{=DdQv'HwAI"iI PaYE.?pEa"$~LwuB4[j=9I0Xt ĩiq4f&xjр೸u[&Njsp1Xou¹Bs"߂3x{ý]/ 9V±OmċJ 1+zcb7 $!VK^1SڸA-i-̺ W_*N@A-f(AE]k)?sjmx+JHMH#M34x+`r =^x9g %+IHg*\G^ wڼRKRj٥T'Q)~= mp,^q}g:iʹ(6ެl]FoCg]Pj0y`sI?p̴Tr\~c9>\f [Ega!zk--@9v2{3O7'g=:ma >v8TzT,\հ||qu"әҥr%Ypܩn 6T'"!|-(CspZpL64jKݠ_L 6Ueӡ8$y%G6"(- 'L%xUFIjEAd(DrK&!vRNѓB2D W˅r31 !]` jS )lɟ}f/<1@ReT`ƨNA{F#ad1I-wyF.+մjEGjXL_DIc R^JjUJlO}=d nȧ`p[iU h:R:lQї2f70(%!ThW(3d aֳ';^bRN}u'L$47ؘ?rȂThwcMҕ#'LQI@LYh1B8xvDWŃeqR1€`fXڻf첏,ta˹~-©b)8$mF2sYB%骭K zS+ői~i=b},\Ā;SKʴ[ocr)  3P F%HG~ehL,-m%D{Dž-=Id(gPXH gM8Fp>bؒEO>63GFE8%.V:X(2ګwnQGΖ ;8B|TZeV5;.%W̞ާƒiXٟ刖֘$vT?~0C'%X8zG!0|#-j'6όPǕ{KCKA# Ϙ3ǀyN dNgU(B;sKLk )%kdGM~V]F޿u X@hnިC)Y& Ϯ0\\&C}&-sQd=epׯC[;q`]߁BJ5SSs 5;}\cW NgJ*AlJL>*{n\QHBR ^Ӟ1՚`k"t5.*&Sj]ᰂ7Tk%Gv(xohpP.Ib=$_n[kU@I\.b k>]*HV>/?~TlJ.%hoN/J82ц$QḨVs\ރD,r[#g3ŃWx ]~)[>i1ޭ]kd= _LF`i_h5)H BaTVVw_GPmtyTd^|~ڌId |OCF`΀\JGȮp GїhF"*JfѼ6. ph?\ݡ#Ih9 ~isP+~"18| T:υDErRx{RߘZBZ;z}X:PfJw7QOF!n܉߁vrJv9*kOP%1lvaI 䳰,oϭc_bѝ|&)68TzUVI8F7 U.S 6+BlWFz r(!Zs}9|wA$wc$v;cX+> f nsn q bZhdrۨ&DGb]Ê;*5k2qoJG>V\ ,&0xve^I6MśE1DpGNQ|RUv.A)rWfLϘt۞xtc'T0?yX#a '$FThPq}(ɲ+>Uٛ?jVT*!x}'{֊Wڭy$:,\w8!jeM{.:ۨ"i]j3"C‡4r †:SW GY;^6Et`Qޟ(i]po<ѻO xlj1E}C׌Neu$Ŏl_^o|r܅lkIC#'7anuj?,ffY$='7ܝtFk铤ve~J8CݵPP\]T!$۬#N|q*E1#|;kK^!˖%V_lIS YPTV.r>_9fت3 gJb8-Yo ƁY IYh<_ІnQ+ úq2ON ^ Ɲ'YkSt`{h &cdfD 6~k/=<.,r&uDN6}5x?;dKc똻ky*|CAR[)VyD`\؁EVʷbiԳ4eܵ!$γXY&f63dg_pq$+I ky>ȰU:paJR*%I 8R_B?`NΝO׺[%,Gikø|Sбi*7Tvˬ :N|3{1S5G~źft8:z砺dKTQڒ/lAw®xIvk@a٭kg8ףF]ΚS1BT ? l;K𝜇TJubAt%bOIFYSEj"`#^3\A9h/lknXՋ HMNxۜk¿if)V!q#}?dbc{m22VG[*a$s/ԭZ@!ku1׀ 3X<"cF1B??*!߱o巢:'EY,e'~ 7?8όێU/6^ԥ],rjaEc룕l#?c$^E*k+T1رJ/z`Q8a,[::i{FK9ΛI#͎'q+LH*q>DjW/@{z.DpgvrBX9@Hd Cdi֤~]F-\Q9ZaEZr3L n(OйܬVv.s^`.@nbF#eB # W8 zA/;2l`nZ~I %WHsֶפjkA~w H8ů)]ˆjzQ5{ΰdUW(SeF՟6|] ޣ Tgǫl?7!-?n2"Dd502;,c0`;)+״N;Z. qTYNi(IXd0t꼔A$}wMŢnrM wO](p{pq+Œli%Y9&CANٴrѻ#*㔛 7W2H9,uZW\g%"p1_Fpd2*ۚF~_3)p; {,N艅W5o\-Cc  Oj<d}JC2`PIIUB D:R6!^L$GN #^g9 j;_|~i{zc@t+ CGh< ܗU*4 s !A疖}<ٗWI>N|73V 3>~.iIvwQֹ1Y[~֎ 0[ >P)ݑw[t5we3e峛aG#W0S#LB"X^l?7F]ь@]6} ?{͟bZr\YYFm W@(0*i 9TUL_17gFvm2Ά{W,=R]LcZsԶpƨLG3Ҽ;K{821頄e֥yz6šڍx;s 0v[ MI&YM@f 6Af?ZQX\`t Now,1 /sgվQ>EJt%2 'QƞC Y1,;FmpOR;Eg٤0%#`sgQCÈ-/2 CM(c}!G2ȼgԈyJ첝Y>H{lŨ^zÍ7VX d3Ԗ/[m?kZϺf{`v85 z$-QNӽub OFbqHOX5$_'; >-nwȼ7YhFo#9fGLJLEڝTvjxKL}NHJMw`*Ɍ$KK(γ&a>i^! !Ƃ&( 'N'@jf70+/-r27J4B]-,EA8dBѪ| J-AqM)t(1>f UŠ_t3a D-T X-4V檂^k&`t坨Yb pe_ 3ߎ X`ڬFc1;7cbV8%' @jVk:gd+T'a5Vk 쳚k1$@yu](Sa'=[g-ն8:xd=k8.H.81Iy w=B\NfjP%Mʓw,M4-Q%{}3:; ;Idwa=Xp{#T ~>BWن8タ!eáXar-w6xk>lr_ |V<ެ/p&MIp}AmDkr~"W*Cw`]>$xM} Mv;¬w#&2Ҟy=0|کf`Z?$nT~s-$:IGWz!L/WQpȷ9ݟXDHp#*Za7D"XD;Z8jǞ&֡cQ%fε~j** vyFP!!dVEUTYDk$_Y=/V7>`Gsn r ]Tx%1<-S_~cbr< "E/YsieN^C mm5jzD1Z:hw)~l DI=_Uh'/r3bGΈ>jզ %,HdW{GuU<>йd$5X4,>ٿHRL6~)!X[$~&A@I$ԶBRŘlJ.w0mD\gR*$ֽE Q;&^L U4f.c_*_ɰ>+EHHdsU8qeH_$I\-a~ώӾ$ӸjF|LRPQhMPx\ &#cG[l0 Eї&ÿ2+ϓ$dprx"s7Sh23)_Jam Œ"۸Ycx:e-u,xǴC*02OZ7w$){ojp =]-r$3ϙ Dhݱ_QfUNX$6|M|&5.-մ J`#!lYl6Q;kKu6iT̒jPbűPX\a3mL~:Arre}n ME7Tu j=3" bl3dui̧NEfPl2WeCI*O|b cI]'li>APX]Q}W/t{fLjlgvzfO/7p@̍V0}ag[w(Dfr71#'RZmeLT6m <|u[ؿV_9J9cBblϬYkB7o"u(*dlbwf'JXBzJC |DU.]I s118=yuX9\˶jh-MQ~#bŨ]A[}C?H-p3) %Z"}:d֭f*Qس᣸faJ„9q#\hk[VULMʞfP{[M)_6x2u p.k|P?!G6O ޣtGIy8Z>Xͮsvq:2 $ ۯ@eڼb?x]hrf-f1XeAS|{r3X&ƽDqq,L;uJKZe ?݁K4||uźշd>\{W]5aX *.MQYKFns{ ݣYheTĬ| :^*r:D~gU*6ݚO&jW_=I>g@`so=oory5z:F]}CU9X|\r妦$"!%ׯɾ/w.L EA3аKGl( 79 ZJeO3ZQ#V`:4dO[a-v@kڼX pYpNB"2O{2$86~{*fZK-%5/r*S"~g+P7!"z_1}nW>3"hVcXxǦw/j+*1"]qheiXn0(՟ n)E9>#CH4{G@;VtT+۔ ے*tIB-~A2&dv":B⦒孻pdxݟ_qS7ځOdxƬ:dl =y>V#8ap$PTkt3Wٴ(dFx_{*"x;7#"4s̒ {^m{e!굦 IbWÙ,=՚R,=nr,{9פ-AU@WQɳdA\1m)9f " i-\!WZ)$}Z<_*K~mr;T=aY "@_B2y{lt[a GZ^ lC74AN .H\M(>p[m)D-iiyx{`#3z\÷7IcBi %CQu #Q<ȭ$э;n'fH!o79Oҙ1naИڊdrȺ1h,iȝp< n i?o6""rkG]djȅ8a0$|&~0+B_c"k Ć{D 9DH"N+ ,߯VH3ۜ7 *͊3 WH#}末LuD)[1łW̿ )u=UC83*NdVgRkN> ]^v Y)?+_w1/"A IKHrsT0Hraظ yY3S!2IFwf%lvrxOnF&e`zn QʨJRW7xW8)NmB}%S! <=_::OǓJ$)M_A>?_oC~bf {.L&:V,YشX[Pπ6Ծ?qq] ϖk{L2h+xq,'ٙh :@HFE !y)0YmU({NI ǒ"./Blså Df;GtR:-3!.W)}lH7+5?vkD?彇d܆Re%lRw(]!'BAf59(=p}##] J+u{$B4)eo,F y&,/pwY">@`{KQ*-kG Pr]${Y{i]ڊJL#tУUy9;oC4ʓtL-)UM<9;Ċ*@9z;9CyD#=ES#/3rN'-QOD .d'F%q6%?+VY0[/>`(}\¿F)W'|x;'bG J\ɞJOU1Txr b~X[%(d`VM8D,!8ߖ?ځTzyCZӪ `LJsJ0AZt>*u xfp3-J8Wbk2[GuR)}0f+RSs!NB2*c שh k%[PyR2&q'^?t8%Vz2pQR{:l=!R#6p2 }B-IcN&$ eOH`1"ozoCt!%сA43!%nidQ6KSWڪ_Qceaz()˄-}ڥҕ*ܧm`- z\^:큦n%gq ĄaĞWU#^kSC=pBEd3o].wj^bq2&/uN D^z %0O4DHSˠԮԒ?  6ǯLE移J-zʻH\Vڸ -ɨ o@=1:I ͺ@/oB ~[`w#.~JM鲀4>i@[)XQ= R\r2@r|cFTYΐZqk̦LE߁%)Jx+u4ľ? OV%\q1[u2Ǔcg[r5MFӕO^Ԇ &䑤-[ cLGQ_pT;8443p> 1NrMkOi:riƪXVsc@oPça*y<ʼU3NSE()9*lxGT q5A<@%&U>bfqv<`069V]@P㽩qQ) ^&H\KQ|=Â4dɿmokdmw]\o7^2OlY%i[rc@s:-GJ_;o)E5Ȼ%"YBanICag^$됸։eL$"U B5~IW싂ڐ aD/S1 xT|j:uǟSٹhU3rWdUQ?`Dȃk_1;&<}^`G`CyE!ً`4w;M{r9Jsexö_Hz!'Ĉg vT{ALi. qE29\ƋpMլaEp!q6 ~DQ/TQ'epUC+ue}OwgANB243ͨ7ri0; "Ko".ior V-4ԃL̿ ېeŜ]&gA%”JH|lAnGi[JU97J yflb iyr 8`IfňWRMUI>|/<*CT6 [i'- @# bGnc[s]<и`E%kh^@5~_6 V}xR cr-Qb*(ĕfB?Ywh.:ç|X$ļv(HFDU[O/>|p xR^T30ANvoUŴ!4Id0r¾Ry äivN;%TBeJ923X<~xg ],* `39&qMA賭p < 8Lka,Ivc$btqS[˥5R#h+$˖;-#oz6qDpe$ = m3O I() *㳫ԩ\W)ay3躪(븣DZQ2%@Bz)? 67rH;yprFxfg'd>B /(zr㼳CûQл}E !tv\郎7k#C/BA!ٲAty0@Lo'@~qQ>KFjiorq9lDܐe]kqjk>i$ p5C)Qy`᪪MT})Mf9*kJ{RgM`]·=4{m,=ϬlC fĜ s{<&c-,q'8aF5yE^ rPu/br 10@U6JQ< 3_תA,7c.zOb"˄b?*r3=PUx$@Em$#iH?h"Rv:-$//΃"qD+^S(_ܭQ#c>;e;tE7z֛d Z>?Gu$swOͽ-bXς]^铩{i̞ǻ'?X9(3QgmA(kSArb´Nr)zO 2 Vcj0e-X4RvYYOSBfU;e1(|g $?+h礿;,t ÃD/թrGC$T#BXo/|:E9"z}oh B]=~m\@Kp.s~ՒIBdW{>=ܙ"uعTO_h(MBnN+Șv?NՎ% {l g43 Qs6)\P!9l? &VJaBJ!e(NXޔsy !a3M?wX)8=O̐NX]l;vWE*,QZ`cT$V?c|Ό0Oa(_?@ B8S)|g =[+zs`[VWl-zi8L~BR>: v1m<Җ`%&KutW* oQwU[:z49C k \`u Yqzy{6'ظ*B]p-8O JK)q@FD7V;)TBoœZT'oQm 2%)27By!}Ѿۨ}=wObKWsc5(P6ۄp߾ LuMŋB DQ^pwjS=ViE*y(W-#xah5Q -X'my$y#If=;L5k0wҡ! tz)l864Iut*{ϓ]fe@;]DxCS(fز?-! D d8fJV .w! A%( m_xw/eNzW8mVst ARC렡!m=l߮RbH".#oY0|я)ʁ> 1N2x0~I Td=ҰsaE#8joI_,+wۄH&xzRvzGX = +U(LZǧvQ",t $)0v2`yQ$g*D<"+ m=chH%oue118Y%loK I~ϩY\gva:E$!&;j^OsHBЌ +ѩ8\قzks D7  $c64uoW6pyDK3X{I6؋) Pky[@ 醫_v8;PK ӽ91Fa#a5؊zJ))]Ujo(d&bH2T:Ȣy'u2B#)a_\}+L[U r^xxm\ [g61C!9#ސuolts t,xKKeO8M<YfI|P_Q`Tp3%-҇ǃbp?#}/ذtJ|O Lr(7gPԜ r#!&t}N@r68 3,fB!JshOFҘ^,1<0;dw#;yJNaΓ[ 홐LA**ozJ8Gʽ&̩\|IT0ISΟ3V;M @0Q;Țlpcw4= ;.j|))=1FyQߘ½Q“FaY fw?Q tX]}~d? CHseіlT~mo6 XpPk0^|8%yBaO3i$$I9##pD3[ho#[(o%E|q- #IuiAH|N 8n2ƿz]&JVȕN̑ЦaȄ?JlL#Җ736hn* y|6v~!PV P*t<+# fi)uaB6ym4?KJ?a 'i=# ɭ9tUDKL7z =T^EiBIX:\DcLZd %L#fh||ÜiʺBKΥ@V~EN?6Dѽt6-}}OMVJ{ G6nQKŨwX1g#>'$C T]` `FgjsW}Ͷ?>OR.[K&Qkh2R3=;! e Al@AQdd%_6О V($RD@A_ 7F-ŁV'S尺OQ䍲۵ʰEra6pX$p=˞䩽-數qfwBXƝ1fGIWSu΅ȝzq[ʸxЊ;Ou ̹^kHF8ٙ$M6ۊ,A<9D|D?  =3ExP:lnHP._;FCp }[y&*m&un݉'˨5^bWc [|āk- AdѠ,IӨ)0V)S:QNiCh4W8Ӥ%i;DCrk ! t 'Wl3{[>\oiuxPBv\.җ".'`9繮Qy:G6X!W)9[(fhcsFj'I{ѷ*]EP#jz(xﮃW˝ڋJz6*aΈjGzc)ytЖm|R̍$C!-:!F1Q(9AR>2fıVF t dchIM֟Paq*c. [׭:9C쵭Xi'YvL <}_YFwB̹JI2$[%m85I=#onb usWa2-fr MUDdOx tM;-Z;wИa`ONsU^aЛWyFd2,_RXGk@}8[qEC‡__zKdHH9yHy(}`^piȟbA.8񺹈y|MtVK_\ PEmd~a"2Xy/R]J= ;pYl4GeyodP4_/YQ1*PW  %GGVkD:sp8t!U= yqv<%7ޫ5L' = gt[ziCV 'V1 `?:ԁ1"E.2B rQ`LjsjC䡻vu{ fA'֬jVȦ VbHKd ]þ$8[ @#oq.P/sƄ/vH%nRziod GƽC k}$ ~~t?AeF}-S͉i,%'*U vZTKza얬T@=,H-;\$w64Pf`%rQ1c w@`H܃ ' v\j׽}/bJYI%WxV +~Vd@Ƥ?݊ZK|di,lE7\F'O31g-;.ٳ^hˢ7f0 %SKMG 0 ]CTCZ쑊Q OӍ++0.rRunqk#$5l(a0ÛrhC7:_/qeXi5-L=9|VoH=ef}~}r]%,ׅ$9E>3 zMTOkLP_F{E #}jK3vOo巆t71!x)EhENOC2I _P:Ǥm=K9Cb: onI3x&;W{923"˫d<ź0i޾CCB~SZ4Kв`Ƙ "&t_ݸ7"1Ʀ&$ÿ)Q_ uW, v2ԴFUAAh\AAr<VvoݥmNޓ Wm1󸢕3PI+{>GlEm\qͦV&̢뒋#(Q; `7,JfvS+8l:Yɥ3lQms9cJ옞?hBQ}c3T-5~ /!(|0БhJ=Ԙݓm[}%@2~ƦMPe{G=aݱG)VڕS+LL~IN=_vɓ@Ld>j"gP秏eL?[g8lWAr\eN&c-,qUjׅY#T<8o-Ϗ@q=)nMEzY[,Zs7 N\;i) rLԽҕQs(=fscpte)yHXb@8^šqI3eRk]R[Ct+a=uyuRz!W nclɼ ?u.Vͽ0w=}+f$tSSDH޳3B 蛧Tc)v)@*bMMN5E :Mm— D"ط#{Dtu :92u/(RZ>MiIn.BwA0 EJ]a{`lZwP&_ S GVPxd*|E?|ChC(試ݼ#u/Ӊ 4Ho7\]U;yIF\k_7ʎDg=Iދ>j{yȋ>Q~ e? 瘘FJ \Qaql |9:Q;_M9-L$NA!8{|W3kDjXLPxt, mcr=:f,Խ#@q%fV͡Ff-MYO08 Ī*ɮLCY{=d?\{! xGߨ-:\2ɏMjcyWTƴ3ok)0ՒI<~FGW^(Y2h"H>KJHXO%:<%d CL]E^ӿ '=+n_=9߳y@jÂYFZԞnKUZy{{Qd{[E2KґiL*ʴ5g]@c9N 'MIP^5, VF%=Qyp@[X՟n$NSrG6_EZ { AeXSpR+)q|9S̎0! u {֓F-뉒 !La^k-uO-#{})눳o]g9jtCh.+.!Ðҟ(~ ,&0{}h61^RT?rKAPe_weZ9x/ lQnG9幻Y!moUA0G8à\.@_-r)I,.bNK#AnTPP@F͑WJ`msQqQM .5f\ШɊ L)ґҘ^BÄixRð3lM@Y΃7~,yX煱!:>ƍ4zU*MK]Oimb%=~A :5 9(YpUx*#Ƽuūւa='}h[ֶt@Mn{v$V^!y̦9H'g1$d ea$}Gaok()a›.DGS{nfbэt2 WHzM!x镨:f 0=W mD`_1 .A{۟zsdb cX,`.(l[ŀZd%.O<[Բ5Z4X*yZ@LWn?=8|z`m{yQr(f2K@kG28m( ?oU= r p=MVU=tP  W-36 ϊ Z]\~͎ƪ04.ɡ's`Λ]BLWTr3~FܢZ thx=7`.κ͊L~$r6lڥ' Wj$Lf]%vÇ|Fͅ+64bljkfi/Wnpxa{q)Z'Kx1Qꉶ nH.8G eؤN#¼PH>I4B8u,.SF$g(|J{S:s'+p|/~1܎4$Y)!WtʯIh!оx r^|;ttITCvvcEML|8r`Lrm]%h_ֲLq_TLA`!@>:WRI6(oaE\C#P#ĒS#nt _ŭ4\ U =%)zt6C7t|ιC꠿7Sy2l5TؾaW%1,Pg4K~hI}pU B*!OD)@dGL\x2Lc I -ۈszJnoŶ(_ޛLj^W)M3ʃgcЬ^.WD c!T4яWhy8)V9\H);>/tZEa3;(JM|@Q Te&}At^@ MffQp4<_ž";=ڎ%a0?B;;nm( O!B挮Q*AȽI)A(7ǫ^{hpEbcB]`Le"/'2# Q1m+D5r؄M8+Xe{|E69>fjsm(Yg E$脶 #jfJѲXtu =B}1qA/mȳRkZecE^d:ؚHz2ʤK3]OB `S!EkA0G0hR~.ot!U)\ѠPi7C1{x_D\\YkL~ZWb)4 L]Ƈc3K(B֕/JW}܂`Qˆ#kB"wR@ݭ7 ;Ti\dzN_|"e ! gԱf$Z@^|˱ .g?V QnFKmևŖ! ۜd( JPQO(!fb;k1Z1OXIH.-qS_ƩBP8%' ! _.)~Ozg8e'xE[-]q Y8UwW jGyY1), `{!q2!yPΠɼe!TыF q$`8 }bu5۴{ollse[*!2JY{XAޘ&3>&6r'T%:-X8I-;d;n\bAXQP(\9FH3MT39 7ie0ɤ\Qxf|A\$TÞ'iVl#>*+ SSե%-`WHW!bn$W.PsRC޳${uAto*G8ڭFW8_E%탛H_àױӢi'|˨~Z>J;F1p݅R .{ l4ZjyiFJqJB UT.*{*62}$,8M1􁡳aR,U3e=›XUA܎Ȥk^c+g ^%x [PX3}QVo('93嘯f?WYLFDQ%`[dKWn4h<R/jg%B8k* џzS1AdO.,|C>OՑtg#Zaқ F.pTFX_M ,2N5Zf3SVsCKL6)TH%`a}͢W֣47@% `$@ _ f¤XRA%4&Z'ٴJkARc3am}u5 kz1z2~žS9|-qrUS[1zJĦ'M3Pl7oE:{Mܘ򺉦& ߂k3F~)oj5eG>kz-lD r2ă_'q )1q˿!)0{eH*p2 "a}.C0x %@1W+:+Iq_eR=1lo]ύx867 ֘t%g>Y؞ SYv1jy+N,[ wJdDLޗ^?FFҪ_b,,V;z`"bp-:b}2-!WU}qG%W۰Quxv>%CpZ8#f㩸ax`o:8 ǧ4rEZ7$F6n$IU'T}ʱIrl0~bw]Jm.\Jg! .1 HnA:^}ڰXJĿ2ҙ,ކ_TبT8gX>MKOKgxeO%iz \uVMWùʂ^@mF4U!s  t{|BǹiD&v"hhB3652rӒJ* =gqA ""{Tp i`3ȩ2II&VY-gu p%9EKkJ1@h,'EfN&IwGrHi*L޵:G},&+ e3?gu֐nٿA@ )@Cf$}ZU{jl\8jOkw{J ^vw]flʟ;* xS(Dqqaҹ( Ol~/cŊy[W=D~SV/L3`ZpʄS1c[逄{2hBT+(0eCՖgWt l2p/Rk7ydJd揦jrtUKׄ;`:H ek8n3}5Y\?}! ;Ka n;5nb/V Џ;B GDQ߮﫻Lp\@kLIcS6|s&A"g K)^(Y:/+,|Bsz/yK%U`gҀA#o IX-s2rmF^'R]ǔ %d]VIk(q{XEk7EZe9; /F'2WPf#^$' .:jgy)~ L/:XG5Ni%T$P@)m5pAGj(.(fo&,Ky޸Qfh^WV{8I`~0"Ym9MVU4:Q={ηt I.P트٣* ۨY|^$],E4?"^tf0W"KXN ǡQ~mRtxoЫm)P%>|f^bhۑ)9vNf}ʽ0${]<[#@K??aoȌ/OW8&h=+S[t **U.^+!n췇k ɡ`jO~͍b˕We]+)d/"5779>gvu~AƧ W^æ6 |\1%q˥ 7"V{= e:ے^Ɔѥ[^y ĐS xIZ;#09"s+ge^Ua@U|EV5V;c~qiZB0c(z3ûphMJ;/Ǝ&hA) Q8ٲɿ<ʧ"wA4Mn+D'Cp-&!xz~0ٖ`on;t,يO'wUl}mlv>(-Nx٢jY]L1k@v$2 ,@뙖 >,6#qfT5Mewlul ;1ON6%A}.W$FqM5bffq~QznߏG2,H>SZ3dÜ\$U079]/'r?ӪD"f;L_YE2ڼ_p1RpL{OoDKG{L`FU%fTG;EeLJ8 K>O124m~~fF䉋@7.%mEGGl?Y{]H0AfA*$&zl柉5 pkejJ+r 15y-vVZd?*Ӎ}Mu>}ICo s'@WIYqpi>ύca/AIQ#)z{muB,WX=xAN|ʌq˙»rмDKZ?Pƾ ply +ضǴ<.p^Fwc*WoXR#̕\SSf ;k` ΨQ&OBZg>k<Q~54~ K^c%T ٌ  "#]cΡO/^Lq}(|Pscuv<FHͱ`7kr0k5)ǑP5kUßр46 !| Qh2r>TIm$/ `##j~Muf_kuF^"Udbb]ÚJ: wmUM F=iȈA\QIt~XiņUS=6NeBb,zz_Nqe+jP6DA"IʌQMTA·'~}QZȓA-gΝ!HT؏֌)',D #RVէ#lEOgG%ވWzǹp3ex3cy.χgR7YӸ|f?~ff.͙e_9!D@%6KLFF?3_Y} | X$Lwr xE޵߀18\=4 ~hxn/Az( w|@νhw)|6ow"m/0!q\^kc=|]ꡐyn?%[H-UF нS倞^," :8-}2‘)l8nm Ke$U ]+N toG֯^y&ՙZH}͑ޭeX;(J$ ] }2!mM[`[Ԡ]I$.E+: 0c[kЂ|XP ȓfT-n!T `C&);WF(Ό "8p*{nw KnkY ΌӪhWe?.@=9НqH jCJw5@҄fوrrýï'&g\GOG+$5 Ӡߏc `'%:q"(le^=8= aURj'`g.ۮ#M 5tn/-!ԱR2j$3 :LZ@qےyXwoPrX-R*Ra tD^Ҩ_~3B-g5vfpf= jn}s4<5|(~/(̷pCD9k?~Z'&#)pj%g5P aY/ ͹Lyb}3+BpO9cPe (BVgp C^y֜~V,#b ʊ|)JXpu75z5B$c3"*<j \ޭ>{({M@2Һo#^nuԇS[ՖWm]OeEv 獦تB@/u3].;#>acIE /*~u%jAvS7K܈X"נ gR y}N=&Ek+w^ /1] X!S]ApͿuMqz 3af)PZVEbM+sjm.f( wS#e@׫W 9AZspY8#olvɸ:_^u:]3>q>rpX;lG*ttz|ESWe/c†tRRme[W(sgydBi"V/qP&颊 !7hL^.JAqAB(FU) @p3#rܣC`h^ǟ,6|_l@SnLǭ#YLW q+M&jIk!fK{w"n";|9oIl\8bd[2er η}>;=hg_'G)E1xF!S 5A bn$f@ٱg4_u%: gGnz^`Tx(/&13M1H 7a[CA vˮ&!k|v;), f:WhwHօ+H6!Z}uidJ d1+id\y8Ftx]B<={2\X4"v 2*0q CeJ#d@AəWe: ҙ DZ)"c{|SԢr$hU!Cai&qPf0f 6Ks#s~YTzyiw'ʪ4WOX)Ld1&&k30g1D$&$ rMÌzLP ' a8&QPk[t]HtS_=#9UM.wa_%DuSo~K 3߃cU?Z) +6V`-ۤP^VuOI1o9=}׎OZ-e-vưZ^:h3|CyۊYsܩspJ;n%(k@܊fDc PptK֜-F"{.nbK R\C(Jļ.Y A@ AW.V,=P~&[l]lnZ>1+j&_NGDzX` )RO6zȵpѱ)ULqd Zt+ȹ8VH#Z1O*͇@``D1ןs|oysw$RF|Љ {ϪZ,Fʤ SK,]~xd/V3r$dޣYHYWwm$pr/YDʋ8swVn`[n{݆H4>݈@ ~o|519d_}$Z_BrGGlHy8mcqZQoڪ˟.6b~6p%phCŘՏLgRq}& SMQ)awzwIF ճsjwJuTf^&5s.o[֯18mv_!cD,42Hlo@?B #4P)O} sMQZs@搋vO-ND>8`-CqƭcJ߆MPua1e+ 4 j_!ݛMf$6鶬W~!AF{F"[Ohf1AZhǹo`ĄRl =ߗ_y}Yy-o%wFgZu>2-M,8xMp2xIW+J_zo:N&J1~jbYd \ g36@ {Kˢ[VO'0@njĸc^Y.U)Y\ŮtDg9R@;L>^!@7e69TH5 P@[:$)w;P ZB *JU'اipRFc-ϾiQZ̨o.cf_Lnl.N3ӭW@; Q89!W 2xra9&oc U442,}NV3qa*z32!dTfQRXs6x@pj uVpdy-G`M/|"^NQ.N &4|&ov/vq/]Okzs( (`e\yc՞ 14@TH؎!GD$ÂTeBx^62EӒEh6n-V })52@Ѽ1!1種&a$-p_ ,uԃwy e !&!H=Z EZ 'UKk5PjTцrGe8%/rIκa,g.;%3Nƭ[2M?h8HCwwLEҮ10s{V9t[kc1FI/-6D,ܴ[`[WAwkNJW5C&RrC Nk,s=.N9;z?EW1)`8 ~t55bbOQwP'T9{nY8-.W K4)˒ENÒ)4/~V"ZWmx>WDˈ O8X VqmzƠ~ BF.C%+u_%#29O*Ϲ%?ǥkvW'x4iָ%-4ݐ6PY?r6io֭,:=A.}WW~hoײjT(ibc#w,pt&:`J4(0N~X_ߝ0ԴP$i}U ~`ftxɸ&8nDx8(U+wGjv&>|ƘNJL$H0<.-sWӕ.ț)M9-gA?r$wj]̡k,79L=3ia5;/Mwn$˟]30]$? ^d]Ƹr IڜXv-7,-$0rK\װ;^PB?9lQAG=.6Ч!_YwLYq$IfXWk4 #~ѧ~k@7j!#eb&Q;cjGltZ-v9WVHΆMÔ G<3@Sj?=HA I&!ýʴf&@*I¸\(;Y%AVa ne:ߝ1mE(lpCٙO]dFl+^la KUZrC2o:' PՃwo|W$|͆SQL,_&.iGfh:P5[JP{U C WPvK G[8GxɅDiqEtr=2}DJ.A1GXQfb;P[8v^kC;m:0Sٖ")G*{!®+wH g٦ngpvF':wU 6j[_։{7C&Ӻw>bͅ, [ 'c3epbU7ϰԢ0ݒtR5?qgpV2ãE׼COpxׯ_I6V_>OuOBamb* QΡH efJ ȮG>KV/3'Hb֪ @!wap!x N"Rtlsa^[|jTk[ґ.~B?ø'4Q{'y]vЅ=iK@4Idw6`ƑCɯ·`Cg@b-HZ2 ޘQS Gb~")y'395wK1t G O)ԄM4,ųQE "G^4+譙!T>FfaK FIk" @7H{L>~IwA;ԠAh>_R ܝ+A1,Js.eyj(9@ ;xw9mZ>,AuBɈ$q:%47B@N焾59FTg&:Q1aBfLEj[?-5^e*d"Y!؇_\~b!Zs-ӐJh,.;VVϿ`dQnPOVݜkƥIM w'Ş]>#e,bcB?*BwCqgp[*N:HI+Ɯ!9cDIq+K˙+Y%~~s /4vh!1OTA)[(nfWgNTlUeݳqcKr QuNvUcVG2^^xEb ?(7H`n]k,!`7qI $3X`]TV"J}BAT,^U@}"mL4~<;*s YTWX<`pр/|\D ߴ(3abKҺÂZ(-OrohBc>תSNkU*N -.FH-B?C+t~VrgU>_5b Ac4#.kWZͳ*/+l $%:hϞv'pq?Vjō}Ψ/*(>H.{'Bt?%!.mja7瀼|>Wmc551BDqMNY{@{sK7m:25[L<ɩOFK@sr_s&% (†տoZ 9E^ 0a ~ٖ&#β6O6,*C{.ҏ7*"2u`^*r8o9nd"R?աƚ/BvPU & ~gO7cT?-P_y?++B~hP8sK"`5U%ٌ"o ȺvxGz낒2hJF#Vbaue~-.#hmy(ZWKAxz"j\MuZ~ט(;,l!/++'F(Hi!v2PsrZR M' s=~rqv` eWߪP,N}TOXUzWB lt>%fKw"^u$-,+'m$3RWVTN"C;5tDtB5؉jWC*b:R6rk:$lnkRUdX.y h'Ə\w9xx$!Uީ\?)&QkgN,pdx ^7ղD,1m7/ }MC6ɓ|21bVXe-QNO*o G&m?Y墎^H@v 2QvFn~!umTiw얦%q60-̬jצJ|v|3b ^j"ùKW@9Ծb'!׍%œr vW<5{3ȋjhṯErVO~~GF@M )r`vK2&rkO:VT*L+p6P#ɈEAAnWE3|ۣ5oXۇ3rq9y,rUsOȾݺ@UYkJ6 >t@. Q𠵛%ګ$GMӈ[sݑmJgd34~+?^ JJ>)ZphwTSuҀc`/R4ߡyVr]o2 d<}iw W6" 8sq> \ 9e;sZ\blg"yFuT4~iwp2Ĺ-_Z)Ps{{w!g6rIcȗ; -cjݙїiD( m ɗ}Ǩ iDy\ B gpI](S7\4+y1%-$; 57-4gކoE4,#KUB¿o#3M%(dؓ 3Ƒ s\o8Gdi1yӍlB[4l`:vʽnY&,wCJ5y|EqR"`#رAǻyj Bt'g\[/`#7CtnH85(I pbFN#md'~(XԣN[d]NO`/41>2tL&/}sR&(W fO(H hFq ޾oZɁбzɏd7Xj& 1 gs3Ձ.+3<[Qٳgɦgogd-M  '0 l_D9q" ]W+sPc+3o{~7BYw̍9 251$VvW]j4|}Y.rFMwe͂kmUUW!-C@{|,f$2XZ|(,M/_Ϩ=$>jO%Q` qDUȴucBF5T`i@#D([mTDҗKKR< =ƈ>G k0꿱;k5䩍ʜLxeb"t4LP ~>7mDK<%f `gh{6K0@oP6Jތ;Wx4l0p :ݴmÝFs2 8x bCUK=O+TH֌V]b/[A:noɌڇە8:lYv~ "ҥ/Eތ: R##BRk׉n,f -˓n&aӮ%<4/\)FhFVI {$` -$2ތ2E)X rme V/UȨq؜#{ʄ.Kr.LY 8isqɟV___GOzTIđa9"f/%Z'IHB$zx[d Lk Y30.meRgyS.=8 h޿T$k]@0#S{|u/lN$]4m콒Vą ĄqGL50)uk3NGS^u:sK4]yAZ5$Rkjď#Fڝ#)ôºR &f'|tjY|G3H4cP"WNTs7Eadn䉗4B,;CNs2H*/V0hwշ!Hs`+ [* \ ݃#.BuБ~eh_QI(\9 {O:D $_!5ڂKU;05\wGt]0cI!nB+ 39(nv%p&<0+]cMP pC)×Q$pr ,!0?@N-4DI}y: 08?dD.pV< jC\ cR1M([~UC\&t|oI4:CT0%\uA+bLIlóAg@:ms }7eY{XzXp6X4 Y?oEKz^658Ix};E2'\ ]F,pk-PZolVN%`wQh̫S\‘^M2{cp7w) } lɾgpidȷdaS? dG0a=hjglK.bS`ϣ]M @8P&j6$J^:~ 'twWiŜ1ӏUq Fdme[Fh(Ƙ9Mu/Zto+M.,k@u7_T =V\GۮGt.ï9 %ŖN$']E4v ĬX}&F竻e5S>-h|R"Y*id>FH=E[SU33[KP3%ƈΔ[zHa(ue nQhNM\*.0jl ,h% sbkcPH[m* }XB2`_N`7?.Mdz%-aҫrépt<$&`c[ι'=f '$A";BY*O&34,TNrr3DS.!W@є\Л&aR -!w6ss])@Xh;䓊Sꢦj_MJKE x1Pu1%wĽwơFHɤdJSׄYgBx[⿞'Yq~(&ʧ>c/hJzm @./*xgR ДQ\хǥBy߶v//$ gт@@cѷhφt%u>j =d#_:MV۲ 3(yA1۹Z 0)pG.U{sA࣐r+PX 4'7U\#m‡@1/ v+Bm^tNC WAoi:O?/Hۤ:;_ubBMlL8sO얕:7?)6sF: `edTVvgWᖐàǷ Cjc6@sx(? X 7N- 0NFZSFgp"Gggfh4~ĘL.xU6 6e4zW=XKna_̾ƳzՊ刖!Rs wiUF+PWD>~t(,߳baϱwrUY-ۚI=q*xyoA&zl} 9mtl:|VO|tZ'ze«bJļC,)ڛ 7QS mJYZ8JДUa[JSueG |5lDA1@J)?8/U_zH~دF `U;͆7G L@w9? #tC4\0ďvJL)%鏼\Xj|g~s`P:~qБ&:yRkgx(W !_Cw^ӨZl :xFh$Vt38 I52 մkں18) &.y}GG%顰 yS])R7̍=.bXVMQ4dw,3)tzń>j#BR>%*$TJƆ }isO c] uĖҙ*\@IdBe,(m`C%eq7 ̱Kg'edtL=;s)(NsfZE /7N<2ڹ 7 [!EPH&Tűdi^5L/S1;ĻG"{{SQV z0+]3*l8h9ĺ'o4BXYy DǴg#Hw@o[>H_a=@Z=QKR (Y8ovHdTb_Vg~7'QP<<+a80UЋ#bi@Z'hSS/(.Jx1+twk]bi} LSHz(8OI_Ğhxu3fha.R7}LQX|,ꁝ`?@Sl~9Đڽ 4% NT;%A;A۽^R([Le("vbjn~oNfmľTU^wfv& 1M7Y,. m{&9lЮ"na@#@'`8厽gբZ/f5Iǧ ڮh;85'_|M0lZ )QFaEyrrMNIoXv>EWGJpy@S?P+J"TMJ% FCNj ?;\`[t L_ h;εh~ &V(E Ĵe D!حwvBOQr<-"h1;?{ff|ff0X{gPio-S%Nң ߇uڦIr^Ty<)8euS =85s iOH)w`XX4E!\IJ/ +p6z0A؟Է:_Ǧʢ1Ȅv;BZ(*h e[PBE-y931ә5o^ o2!qP}NZiB]J.}KDnaRj㷄TP0 qJ,$4I!/x~WKTȸÕ6&bNKT|:I3NvT4`WNflEty3`1 O)9aTb]?ZdSICIu21#G>1R(N.ǥY!AF't[^zW> 8 G\\UÒCRF)KC:EAh A6ؿ:  tXnq. 0bD7xnby̲o`X: {,L˚+M 58@2R©n'^Ddk>(˴ ~Q{Lj"gSޙ;{*A_L+w4L|A7P")Q^ ^hp0rz<.#fщF=0>Si[TYi@7#rTbUFX|cFKI4s|$tޡ! Ց.1'e4 &H~@" FM2Hin|جe2,#7{r~ݤlJä30h$~ hhvTz J5CT?98o'.³䉲 &4Ts!]k΋Djd.46+ii#밫Mj*hv$܁.+A4g9u΃A A\φL7'UBڋ=&-Z?1DY46VQ,M^Ta`6ޞ^_L|Z&Log80_ lHnf.r3Ku:#ĸifpMN-;Vg0hF&/ |B>K bgZ"P(="lhPQc*UOk~hU1'lm YqG`?tê?*Vn\t0j@E 7қUwbHO$lg\o:ϙv cD:Mda(ql{rs #ki^qg#-%K XZҀE UFmB<\:^F:pz #Vp-'lQ q#'`aRn1Yp XQI "<7g3&{H5tR \_ {-VIxEdaĢ5z)^>}=bwԐ ARNϕ:) j2#@0h"w1pi7W;#qZ zuv@ _FO#TX ީxbG1nJsLAAA7PHNc!\\ϙí<abnl?ӀCN7elWb= p'^!@~tCCkSgm>bӁk!ZrAlͦ?Vv5m;NonpQT4'7RM< _c MG*եz##pALc0{/9-np|*wy\'YV#(@L|5@.^ UeZOߤ%C9ݧ&(QY=6*pW*,5PA}1 B-]]66g$wu7ڇJs GEM}6BW9咔({]-TvhC,7؈xO3${a#".Mi/V'WAe-_B=Vp&SN'O\''3}ЄhdRv4mEVdM5@o3|訥Zu^J-M{kc> _YpwJJABrڵnb>p #E:F)9Cbrby(-]p] o) vׯc*d-mz ~ɂ Bڎ3!sI%ȩ|!p&V?Dք֠!<옶q$]F9E:l$`HWq+X8gKۑ[(%P5c/o[,$se8{5j͌`"(rqy]7ވ4v:@5a,M{K<t#I j,A'i=œI:Nta;N¿DMp&)oqwU#|17mi  ltݲdP2[Uk{l:s ?>2{Jg1+9V)".kq,#&. T_,PX߷WYDjxyn,Z$Y?Go=Hb o-d µ嚚WC|ɗ߇❭~ B N eNwU=Exi E+_W]SnmtB$B7Һ+k VȋD̽ KZ}"OCe$j/1>"hcm;`"˖+&Bl6֞F%mp>Uh[e2ո9~咦Sٓ񤸎f(`zEU<iqf1^ JӉWcds#)0kFgPb#tR4d6J:`L~.$-J||+&'̋M&q:R ?!CͿqqeϟseO_;y{ ꈢPЇvt2># v})V#  &,DHBEj6mgfJiUө 6>iyEF;ei <-|Hն?q'"<+1xoJrMBމ {tTAjFH̡qbo7nTl<[GE8Ng/a@<č](j3ަ%-c TJ*! 8 s:3-;X`puv)7DFx -2K߰R7t8Ѻ]ܺciʉtm%%hX@A Ѐ7uǿ`׹U= nl*Wӷ:e)lXk\Ws;E`_cƸ1 zx w;WK@ jv`M7ǧX2ر c !ER|̦ڴ=L@~j3wTU⎎yE /R 5(ȥ/*'$&rƗ1j `+crBkxA5L+&п&fOfq(<] -z|@N85ޙln%xZZ V?(? ]6g9su` Pgc~|p 3s[S-a|V}l!Jx/9T*.ӃGI ?~~r]z`YF["j0 8th>e\|g5K w.N(X%nxӜ GŖ"yS!P m`+3нHVGPK&eCYp7'MF K#ŞKXCJ\TbZS}'=zmI8o*Y[gy/6ẘQVՠr_2Ggly g&3vgj𻩮L!X:BhMtVS9öB,l@fz(lQʩ7YQLx6ZІaa":R`LǁNäX7*tϢ4ֿí!qCЬ $юg ΅ؓ #jU6ca|Gd$Ԣ"K )]܀D=b$1SxX=sy#Ă+yrkl884MU61J%ӿFsfc{xa6c dujI“`0ysl32%g 0k LLv~?{J 7lO <0mhRU?J ZU0 bJ}@+],8M3d$3ٔ% |tgMgY7 DJy}_h+\ua 3J>2)?V`%,Ϯ\"W mSG(^,Ur ʠ[BӋ8W /"VˊݤsM?o%0dE lQp ]KdK]a$W?50LX]E@dV.V2y:b\8tĞ̐-b WOma̶qaBm1lObsI.~ G9)JHM?#B/k( {}P9MV"jP QOJl3 7@zQjh<šzXh!cy7rGF#T_@}+HwU6!hO=,\IBS_HW~iucK-paSoS^y52 txB)ต@v$Lh+n zfdo2!ڥ(BWA ߀?J.?mc aS%XN4e:ܗच|ulӞn[flN>+;LX=,bo0f?}:!uM4tzzQ[wlNoÓb%WK`}Բb*w$מo_/~&yFgI~Ɨu^Ұ}R=⭼*NOG-~4X~o-Ƥܗ4"չsXIcsϘ='YXm͒=@=Re]F-i]Sn5'[)szEvOPd̈́+O5S: U?©M#5mg>͔!&*p+W!H˳Boh]7rnt*#=7kZ(y[SeuCc\e'<&X0&0x&Rش͇|XZ/&]Rh-LkDt]*o,Ì]=յXC~u H2ilTQ͚&DseG}ЯÙ˵43. .6'G  ulUuJ| z˕nܳ9 cYGXvkWԪTkJ>?F2( `-:N7,_sVCCيbʱ˪,|d I$giȘ$k*k c}l22 {}l%w(^b)3b|wU4R3V@Ыʥv~1w%`qLpXHwhHDaXhfPu/(U17]0ҹXD;+,A`:[9jb"σM$2buGݟsnN0JOb5C1Iul`BZ_ Q+n׮йb+gqs'<[UQG8:qxt-Ɵb('KBvgHWex͂iýfWD ?,t9r0`YAw}q0qЧ"SI 1H@ā@ci_0C z>A믜M {Bsbd._vH;k΁i)t9+"HCrs֬nRDۥC O+ߕ)~&g gMhg)'~c| >/i:G%N?~.#2SW %y3X%n bCҟkΝ k%hԢ: o@ICG {V_P[6bu85W h􉤿R@_i)2$~d5wz)ŕ2\0# CVLW3PAgy*Jh,xsdK?ܞ00}ZB"c 8qK69M-ID3كZMR=)Fpc4Loڤ؂4Ysh(P{yO3HGɝdfԱ\M M9Fx݆:Cpg3䁳QY&0!B;~9+T`S3:0x0n5lLg- *ն.otHw$](7ߌOD+^7ƜU7,$dL6IH+&\DpD3&I$=07M#PqSsTXK7NIY{ { wYRT''CгPyt."3sHW^]{_X7mBD]gYP3K?dA=#T<=A6zP(+ReR}>Q<̡C(TQg08Ayz(<PF.Ԡ!#%n?3n K&y@MÏMuQzDz\d\0~d*\&J1kv 12`H)&*)NYlu,\Z7QlIz'~?&4jTY|: 4$> *N˄G?p?$琊v`R6 `록#NHu/`3~-As>?Y ˾;.F[lt{  RR:e- )}cԴui">(c#+¡PEpc& z*!Jm(~g0%X[Gʵ>VSZ1 2LD! (=D1 9\nzzs|̡?g4II&9'%S *y\`ɜōKj ݷCN{Xq%.ӛ3$ '. Nb"C ؂>۟\\?M`dδ(종"_dV 7_nMRPuV2aGN b u" :EwL("qQjUS҄?<>-iaNH0Yai(ѩ^DcXEx (`!:hQ__WGxZ[gj|Z9Q̉'V:;׌84%TaAhag l x2D+.yz;Dcgc ݹx'~V3GHǢ=fc,BgTMʼ&F`R 8(6.\OfޠsﭲuJ;wDk,vY< ~ųL֡ oLɤpW Pq^ʻ%F,5].#ȗ7K۩4B9lkpN75~̬rpUvwF MI,ȪeզjWL}*.(/XVAB{9S̼U-/qXP dl&ˇ;rU`(`X4Ἕڰ@t?,ʤ/|)*'VnV!EL^NWGNCqLE]ԆܟE{ϲeOK*\f$ikI8'`LўΘh3J\05p{J/W1YGHݰb}\]`?pe%Wgtr2&*0*o 3EzX `?>KQ#uYʈp n69!kv]f/!ZFNk? qCu:!p@?Qv2ep+sqiҏLu$K2p(V#t/l[(z^Ze4R{b$vw(|Ể W=uv/>&4zݧzo]q`ovY}a!1ɨcB-5z~c/߉Cp{?o)pc[%HX Ph1taa 4MVudaiV=W$B({fiG%.Hز6u6[4R5]쯨'0KB2vMr49_n+oeƪϴh./ * ~qRh(O5T<2L.OyH8*.!RhMC wO7o#>Ix8P*t~^NiMPH붊2e`TBp7XVяTrl9̥uT|}ѡ@†Ɣ-FmMb?@-z"E2;(`"`ׁMPЭ}i%YDX Yeٲ`o.Ǩ6˩Pf[Y÷իB;OD`T%L%kUCq }B}]o|{M A4؝X.^6##GbzweO*u/W6 74^L5^g ŒS MXIl<LUE&8^Z|CA4q ȠҲ2 t;8#Єք(S9w3~u~Z[G,&,lNbw nO"y v6l(ՙXdoQ ByMqdʭZP9s{Sw@=?O)Ğ3iFOSЈ`ū(/WLûRi#[%wnrV8{DE+`}ӫ%8bwf_[$QhU4{lFD ΂M:TtgbǶ~PV1`m컄ex((%Utf8dg閵ʬ{wĽLJKA⧉0ZU?R* E%|3))'p@$](2t<:"9`b,ĸGZfZ@/|+k0> K9lѼݠx8yX7FHzWԛA 8bM=4vp"\Ypq}dD*0 "T.PS8-'DzR Ϯ2.3N֮?jlfEQδo`f&t-}e'luXZ!!}""!ũWϣD>!mg# >1"SK77@ZDK/Ρ kc[OIGpf nS8 |BcB/* Yc7G"3K`duʝX@ic=50mo"ܨJ %6% I?coVzd ZGVv&)*h籂1js:a,K& pIwӞ:yNxd4x/d5oh|O-UW-730M ;evg;n)W=LyBH%L@4q҂`5r FP1D}2$;>@Oս Rg:ت1~Ga-f .}p7HI"K]P$HzN@TF;g!.T55SF$! 0S r[kfIQa@6tWv3sY`urS]X3 Wӱ87;5Z}8C&*4 nbrʖ,/,0T> *cFW^w==S;婺VGSͱ~.<ުs!=.+dbi ty*φ"^:mpp0)-AEigD>+&;Y{:$yzPJp#Հ\F]:Ŷ>/]LNinyZサzXPf>BCaS7mc0'֢K }@|}o\U_\! T-r{vyR|`sh$F$CGZ]/((HPh#Eg5q{˒1*i|b'R$ti8)aJ;Vrv.!olʒfys{uK]m7 M2^  !7Lzf?PqŽٻFN;9`Jכyiک!ʽ8]5K:#F_[=4A(~ :V qP,r9P/T3pp>D1up@<B;AIsL'ЗIIOCQv ܵܽzAG}&EF>B?=zxe7)%-R*_D,J-&b6Q* >A$,4ޮ r/i`ɤ. <%O7r-JTh|A&wKᚓF Bu]+mt*}{'/hC@'VڵO8Orey89 K:=Zisw٥ЈkZwV!Zc_LezI ?G|XTCtA~! QӕRUƒE4IsMk_O#D)0lb-Vjwh&Qu q9復yVcyeb]޳0|$'ѽ o(|=+ۏz83pa2,#1+u5Qы'8VɁ op +;$]{/>5_U`~s)!~ޗX}8 ?BOz p`+}&Cr1ld@[꿠rKJp'9:`}~œiH # (PD-<[Cf΀K@0Á(˄ E;bCW\ME7C:ЭikIJ'غ{z/{yH @)I-zLV2Xsev|6 p n w$Z#Q~p6v^z2 1_*32:`fg;է~&qrHGy99ʨ` č8 9{j3~'^34tqpV,;\:06D1SCcnoZ~ajٌR@z'8 Ʈ& i-hz{\SKչ0Ž? C_\,={jdk-X>t%O}Nm%Z`2fھը!a@9k%jR0^s$*⨒3"fL/bX_Zi7ogS3ʿi$ww`6?)[!Tr{A`$@{9mn8~MQ KuEļ&PHL﷣vU6iYd߸%M@d}!&F8~tT/}<TsG\u]/[/ zUHϨaxce`XQdh1/m `d1k6ƟD)UB E۪.ї`[DNmeW pjc9u҇kVC)n£5< S]kxXa d.Gut5.U"G{k>I!!"W[ek]9e`Ud!OPTt#&3EveOI?tP|_/8v>f|}jC@h)Qޕ,p# [ &e<Ҳ:&:ta&yjBXH$\d#5h v Hh e$"9%L<ҼvIr?4o\iK}+Q +mɍX~E\4 ɇU2[pl5̓V9/ խv__ބdUpҢ~ѕ֧hd-7KB3ԡrLaխcdƥ56%c+[|(ïgаjڶGйFKօVn4{[Vy)h'vk8mhlrn+[XŜ l7~w{DjVaض.Q`QiaVAj2ն\ t8i#moy+fF3Ybϲ*A߆'ّM7ڐF) R25Ck 1-?D4^ >2G%JGCr H*%XImInM~.G$:G}N_UTOm2Q/qbkEI1k}T65}d f5c:(.>-k+앍,[ؤ$zEDG$2aG)GphB 4zg *lj1k$mк AHM@; Nj4TڹjP=[!pX51My0vN ӡu#ؐNXQձUP`-3?lKA`' g skhn SX)X1qN2/ՒQ1c.(:'`\ЫWg؁7搬4fvX* nh xÔ] sÎp&%A< l (XP IڄE&^JNH)/2z"f冼"q_>&vAs#JaV\;XY D^88 *`SQ|Ĺ֞C,%'Gc% T+, $boio4lUqaKKY ;s0OWze@@gI }O\EG VQgm4o>|>T8\VwCS57zǭrNS3Rz;`BԽME1#MdlcXK, ] IlK{."Vn aL4<|dgc,jo~z4 o 0*D_ϟЍ!zP\7Q3}T D_KM/+-Mw7qP UT,ʙ { P@%0rxO~_%-:Zo:h97+$=W#=˩U׻vvV4CMf=uCa#~,TqFd"=-;7Kzg=ƀϟ;κl5kI)8%ZObGpiڌ ˓nHb,YHIq]~kcp*\^ ]>xFԫ+o\*FyzD@Ѩخr}x[%VM3\{?ZX ?DCv~MP?ʫZͬp y0"&Nu[Y]ȎDgnc:\5KAΤ3ֽ}x(Lͯ^5kh쑼d%+gWa ZHhUS`p:$||0n.S0DӗbwړtT#I.@j'9$T0=f:p+ù qt7z ܬ.Mzb8Hb'[u**nۜ{ g*x SsQsDpI=POH0 VQU0[PmtWR1, @pw~3]?,Sa!9x_HFY3=1/p`^ U5oe2Ku<}d`u}8k575\$RM0fDRR\*fpwɼR4toK1 TPzn )uRCDXzt6nr!0]h1z5я`)ab.]1m(tJV>;@9,8)J b!1ϲ w#pHOp\Hn;H|}9)(viM D[3-r,%魑U[2oٕUH#@Ƥf~^NK iJGLr>H%9Kk<]m=9է9-Pd!"{2A*clMsQYw: 8GP{8X!A텊cM-ld`6_옢r1& _4~ԗƨC(mC_ņwǿ߆ `X::xא}a>֧A+4m1OgX{oge-*N.v=/Tڕ-30PkS/D%IJwX.EPuh%A|s]p/K'ܥ1kݽU)I#@ʎEU>Mץ2KHaު#0ќaB^e =8;| dTc@6z4n(c?Z&֐ϊQ1154= (@W% C\tʹ*@ -\OxY#tjqq6-ޏd^V7 l/ ;Q1:()^vUkRasg3kg,Mc>$+#;:P(șd~@mg%:P-]n*.x _(Ӵy1)րl 'ivZ!5k3! < _+$BOK; 9RRA >3`B0Q=ev%7}/V-xե#-rNYz >!DڅYCJIrҼ/3Gծ Y-pzdD=_U:o\N{]TmF5\&NtʠΆϧ9 1xnw3_Kf?FOUN fn`UqL8;V>rb`-ᙥ'~bR~aWm4߀!,ғ8Qn_}Y%ǮcYG/P} }n<+ [tT(r.#2nF_nr@sbb|y0~?橾x|O|M2ٍ| nҜ;c+_z^ϪXhY p@W7Rs LX.6rw0}_WgI zq21iL,Vz4/\@b?m:2`5]|up.? 7NjV^iږt[H 2{.s|iqWwaXu2= G[n 柜d9^V6(+-i aaRKɩ/Ӗ|#2@I`H&Iً]W<.q6=<)pB· ! 6jYae_7$.hT`1Kl_,@ iVȂ mwOX~J"2ʣ# dUZ. *!Z ]zD*9:%KZilΙNXsVX8>T~aN,ΒeУ-r$͢e`AE7ВP+XiLg_!W(+PhIF2G≌# xO~[ [d=uJfMіX_pb/GORWְ7{d͎4 n뗏$)9w3SA0/wj8Kj&aoȼW[5i:ֽ,~ym!C C VĺTs kn|GDU)d#4\ʭc]k5CY^( yTEc/ÃPɤ1Fu4Cš C |1orԪj\y6 F^ ]uB寬Ox]rXamMaA||Uj?!4%ڡ*rhcpRwjN֔FY>+54 1!fɅ8j8ɻ)_]i#p(doH$h΍B^2H·gq!AQdMWÕLKp3D7"C dOw6[Nx\0Fu {m(ă?RjK#FvMz7XU5e>iKy֚rcKm+A׻l-Mj}uQJY|˱/3m 'Jkah!t;Ԏ}0DKJ" [^p$W6ᙙP UJIa,6FIܺt©Cis̹%2vQW Um=ǂh^iwyexO4 ˄!63TdL`H8ܭmv*bh!79q|{@CD_wT _6MXZ3* 6+^ml26iy1e-Egh#5&|щYȴwף *,dnb.VYYU'l dG)} ]<7>;ίÚeP!)MuI85LQLB% ٫xYa~~tSku;(Aؘ70֬,KXH=akA9"^ {Nt~f)r;TФݑF_rƫS?IJ̲|3Q. SOqv;i4g/F8ILaXtZcx"a2H$xYO~V#nĺcq +KPRa\G!Eƒ&ԑGՀDToӎ %K?%Jm 9VP7/*]uh]mۅ:Xk9ݡ~,' iİY'~揢zk$xF)MT-T':ẴsSnzT)lئbS; 6GR_>=殨]hJ]4%\E-|:xl3h :9Jsw})Igs/ -$yT[)΃!T'a j{>h%>4:RX@k۷ BZ "֚AW X]mA faֶm~P؀ÐU0t8o8%z̡N=Ti麒6~+5n]"CyT Wb7t#41?a4xi}3st)qIVY*^o2=$R~b7j⿉GF }'{67]ʓyPaqWOݣt]f\ϩ*Xu#(vXJ,MEh$)W!~A]D:Yr:[*9$5Pk5-O,Gw/";/URvXz8熼c45?R[̄I8W5t!b97G% b͏k/QR[q!V&'8Ig}ji:o Ut?~|گky[:ᮕZhCN x[q~%}5l89TZKHtԞ+5MItWު~onZE 070ysd ɨ |=F R i̻ao<৩MB@0M R.0+G W0ҙÝbE/Tu"\ `Q%-f?YKD\ygc7jjvHDкMLp"Dau|# !o~A]S!}}CI_eiv5zJ&L-J5E) ;!94{{@x~=pZO+T*tCaܫHxs G= Nl3X)ו ulV.րk8)SsBq0q}'r;;l^wAȄqu\/02wL64rbanY @1-Z7+ɏ0"CU2?뷠nA劑G Y<6SF޲kV%f5KzSAH"*cɿsW~z ? bKy/QFJ2PE1vy Fs)/7l(u$;t3yamh/M(@H1$2I[Վ$е7fRhFJ=ۑ{`!$0GqzR{;t;4 "ORɎqJu7ˈ00/f3`i%KH]|w:=ZC /q) Gr" kQfqɩa8\ P8lr z90(XF<6aiC 5z =bvB73_6SfZ⧀ ܪ.yH"MWΫ٫k3js9n s>b֔(7/sZ9KT1򓋁NKf| >-d4/?@XWdH|a}sG&_r=Z*zI2|rN)>Oj/:NJ'yR \iޠx~ĕ]|x6mukǤ K?Q/m_b(ypuG s^ 7#h+ GLx?Wo͊7%C}A*hINn[9^B -*3<SY`֣snnQ,΁bmĀ TgoeJ۪kxoϊiH44]~Xreba;2ueK] oB`!腣AOQ4<}OD@& jvKxF.k`ʽ?xrsЀ9XNwM zi٨SNmpMic ؿm3&^{$a5n esAY|XSb8g]`P<딖74-qZrI|DrS8>/gKlZ>f"a)ܯJv@qӋЊ@Ӷii{{0iy%Mo8^Аa,S2\=P7-ЪM, UMIOZZ,?\HkzH ȹ O$ߨv>u~P}:P#+VMWuƑurŗ/=CȵJfv"Z{cJ-z|Yy}"]侢0mqMGe6H"2[(Iސ=Ub]Sofm >93G.݃z` n!?>(A%wwzd-CR,Ż)Fȑ4=ʰ?YqwaBSxZ~xpK<~L^Z@M=؏$^r8놡UP2?R'$/cYk ۯHObkoV.>Z;WNy 経+&˕Q¤DwگGUzY-klޅ~vzgLZarfdž/$P*էTyM+>c * lSjNaCP 1~GLr |xhǟ>,mMyIJuv5)(p~%(_aQmGaQjhc8jg:by}YkwZڮҟxOep{3|$Jqxw60qL2dd%cx;p,z|ӏZXg_=P$nMܡh_JbXP Is"DžٻsL 7G V oIhܙv+._^0ThpcEFv3~[ orQ(nuu^],9s1*Ї+F {="ٻG. E?,;p ,[r L%Vc12pƇ=]\B(UGkKV,֞<O(vp#G;[ U9 _yuoLaع!m; *g"#h6qc261ɪ UoDttX!6ogL14wItһEʠ2Gd:Mj+Cnܥ7H>. GXr~K YH싔 ʌkzK&S)`sY\MZ 4׿t%xBc#,!":ln%q@^R;pY-`SRٮ^2b:)=tQj)rZ+ =B#RܿYƠZq왉A)z O9~:ZF a*UPLm;.l7v<ASI&>۹L7%vPκ;ؾN[t# 怤 ɣQ-%K/d[]&V'6`΄o>6bJ!% ,߃Ҷ0ӲM$pZ;81فЄJ +(.1 ;ؕez6q}##x+.Z5 \Fʫ >6cGo=eråJ,%{6/p=}~TCet}R<ۉ4: {Ur+ 0bECIv8GK UxO*NU.4axoE&Q#&ww'Dcū#{cB AoQ8nU wy(nЇ__s0OWT,_wM. 3N"I]W Yxڑl 7< Y3"޼=onڇ[p_|p0]@,:u!"opV1"8sWRu-m3Kd;0Y L'}fTi` T2?h;;^[mx`*lFrtԏ7ܪE ^^gF.s34] umfI{͹ m<_P]d21zZ gc't|Ks][S{2ު:uj u49*F2`O|l1":Q,#weQkW."F]FO?q9YOy2gj-/'4Q`*r 8K“x-%)Քg++8}u*rI5Q |4K%VB&{&c~pB(ٺk33xh!iM* Ja;&CPH}Jv:wnA<`G!OVlYUW ;uQ=S6/MG֩W钐0Y[+W*Pv*;S^;B|WG2GIh^aW|Io!x8<פ;kIYOވ/h@6gkEN1Csb#M$qZGØ\%Qdx;+4kG aK<(t=7jDA , &wZAm69dV`Lztʶ)A6ތw;,Zפy؈Iup|}6'때fxKt:Fo&jxˣ 0&ICr>0^5wˡL}W:Hv@*i{b ^T[/ Tb S^| ЖUF&W7JD^t0! SQE5jAيaW}:/f\. Ds6>ձ +Ы%VFs D %^ C^?t?Y` C_^Ck>Ddz6IN&ċ_D5{,4cGzMGAFXZ^*4dCLۙauݶoZu*B4Yh5>b@ZJlﷀuE) Y,"!mbQb*τisΟ}6-XJ[8~F/qorn>BZVw&Lf׳SeȈqwZsHK1 x+C0a@;z&8vLV5+%Qop"AGS|hlj=l*\):5 %.-`&Dŀn&KaGCEޗöY-"eIG\pQʽOMh$ z\. /5P߅B =K<[QL G.e}`K7v0^,mhvn^b]^[%cO:n`]>Aļd45WV:qڗ5hN uWhLP<\{}E |$#w%OsYoy,4 Ec-"HZxi ~ OcT%v NYRyu.r%p+9:wrlU3 EHATbNqizGFG;tq%4Z>ArOzTm9F0NYf?Fn|3WbUL9yIfZK iF{(zL 5֖SV;R(HT̲N=¾ HVQC92VąM\PȬHd_Y-Иx)+ssb*hd>쟵0˾MH/:~*iqsp]]Yk?\ $Yos*R MUDWJ92N) 1JBFv;=~Iᘕ,r騸:ˊ\x#L[x8JrshAȆa3NDۿcc[̪ᝲ~ǣx l<&dnD3 jS!5pbk%@,,kÚqnˎ ,uC~8"TȕD(M"#\n7r#I! XwI^ R{*Ų$m "UF1Mo扵r NxSxOѠo߶r,ʃPOIp6hÏ 8 D;Exb蜰XKѿ΀00,3Nsh&|=[b=kEkOŝ&9hn9!O{ݧ>Z6p}.*)lj;%V%Yq  FHW"Z0'wq6"K^=r{C`KvڡIv̉:隺8wi)r+!nG4CWf!c e<u1Ӥ x *v7;hWi@ T4==*OL\Ѻ>OӠ*^Mtӱi5= Zέq:8{}Dx&+UW.M#<of.;x33 _ڝ+:8]v7\ a>=X4Rh"PLJعe߿G/̙}HW%WU1A!4*;vاTSt!aG #Wj> zJH;fZkJ}~6bQLagGJަfI}tFtosOVdnbG:}3j<bCz{bPׂipU7I^f #9޲гxqH2 Q}$aOr~6uh tA7]ȢkBւ?ci"@Z,fَEX(R7*Ltex!cz8yCƗOrzP\ԩ9Q-6_1g,<1Xt_w(ב׀}o\}+0E14"<ںfs(Eo&{.0,:QJ͍' _r'-ZOV!(=[B'?/ ɽ@< B`@1׆1S:D>h5u K`LкrNhu)}P*kH\ʏ*ѹֶuN]-W!  ̪l /%3BHU#8vml #W[d/sۺoUB< k7sQ,X\eǿ'*Jٲw}=ϻ/g^qJ_3]b\{ef^pݷ8 t~BdWAV4S?[+`ɠ)^N>Hf`88ھ4@~"hkq6;OԘ"F @&-e6QݙcqRb~( 8sF KǎrYhtk^l[.l:TcmIXR0i"ZLYGLˢqYoMVUNGN}Z4ݕuK:6h&o큹A6++Ee˜j>ijsBSN9}8JqFђDvhZu J8ܢ}l)8c URcM\z/dxd<hOUI;sӔ`+=?A6c;y-{@AŞMmƬn`X*1\b lP8J(SRo4k"ScF+ÆG_;(`]-3uIiIW'9b&=xB2n v#_I`K%[t/qDN9mՁ%Zg,HXJ0&!;6|O2mV:݃\߄zZ2ig`9fkS2RYCRk̻ᬯ拱8NPou?ED7.,[^͊bOub0$'`;:4i@DWopBcM w,*?]s^7& pup6yS[h>Xqcdt+2 !l~M ~]TT, ;<蔬}Xl~tG1< 29s:?hƍH Y4iM` b8(Zob>ƒ?M4Lȼҕ"TB6r\<}% ǮÛk >;cHҞ#=cǖ跇xwHd#X55D$$&deH yGj]_(XE܅*~.KG<EC)KHP_P{z1VJ3eZ TnQ2v^")3nkm̨><,=[cQw)DDƏ?nX Q@F0Ug6Ol_ˁu1Tu4b+Z2;-fz"I}+O}";[H:Ÿ4Q3' fp`]P:>I0ЯO:L8z2#uoPU{vXxgȸLQ6]p0'sMnk2,n8VY+ՈozC3D5ʦcʺw.MФ@َP9 S _[@5wz:p_ZC0qA=^%lg[u;R5^3_qm}p)s$ycI_y'Lo,΁rEL.(*!j+@;SpW]A\s uP`Wb7Dr}޵ ߹sHuu^<J M U@ç,;` +,_hMEExI&ټWeV,=n{&D1e"3w00u PQe+"ǑT\‡ʸ%΅Č/ZJ ¼-rЎ;#FUv>\ 8Z;>BySq,' 1xfͺY4'?}Q㔄mlu*kGoj+NJP ?ݕRDMiK\EK PK)Io;bm7 ^q"5l {~;\*4 JGJIg۲bTc_@Q|.rKr~;/ǚ K!-#2*jŀQKl*D3[Vi Y ?[bo U J}saK`w/9-0\N21ϒ L'y,5B "Ϛ7o.)ߓxma`[f#Τj H fWLd]| 7nRb EOC[/5ᐚR߷Q@kWܚC=lw8ZT5>N#u`yܜ9rbzڨf.I}jrn ^Clٹubfr9x`<\.ItCpBn3:ȣ#CY&AdbF8{oZݯL43a"VYA? EdS|IMfz2_f,His^ V5hC) z>>`u3bg"FLzK !-)|^wqj8 C&#R}='bc\Ȗcd kjj &˻ Ab;:X|gi1!i] X7_ih5,6j T Y"΁R>8Liw[䵹!cɀk/Q%1vNcWѫ>zUWI>A_+1&2}uz  y(n٣uvo2+WU~:~`|>;Z OZ W5LpҠBa~ L&h+&e\!39ey{~LJ=ŵBT|$9 +m[ʒ`8!HB^aj,OeQ:]~s){5ފu)-Nzꮊ`YEΓHb:a%2&ݗcE5Ȉ 5{쀞I̅(P.3RN7] |X9viJv.yΩ>zzRE;<5a?ZlP@}Py6hC2y[O*'DkpK}-Aķ )lsBvJ}zt#e ~9y}¤zn]XQuɣNToc?`*6{?Cj1 5A3Ί;Vm$' 7BUbExlg-bzrr့@p~aMy͋g F4]:[*k}oj?G|Jo͊R{@C6 D@1HO~Y$:8n{;bKut­tg;r3} Łd^"H`҃z\4"ulFvRJw0~KGUy#7 J53`$ ۶9r:jccmUS*(-Z85Y9g\GJr#@HK^Qפnx] Zt;2j#|ҒHwY7G͈m&9L ְD}< 62||n;idPrU k22é.-rJ ^4dF^X/ :O2Yexw4笇C!{LyRY1f,T)N^yd&%@<6gkDnu(**17y2zo>~7"Hw NXu] ]))t k7&:dj/)2GŇ!'Z ,HOͰBÒP}_"7Ϥij#YPѦ7ygpcZĥhCP_>:DA{zz4 lL w/Œ6zmhFpaYpfHiN\~a_Q1J{-Fo0]N@Z7M'QYHyL4O̗ln7.rޤERX\՛NhASAn[zz nkow8hA?}xqΓ-D<ؗ#{h22 qeY2Pd;ED0si䪋Oݶx®)ŞD aKyS悉K%u&ja}TKixH(:8*^2SA<.elp!tRn U'šyads*K=Jvh5[pبD^|gF'Ӓy6uN RGFh6Ʊf yzf\V"ʵz<HK:!Eh EFP#9yp=Pϵu~Xczص@{C&|9ǀJ4UC@;Č­S7yB72w&T^K#Ep25|X g?% )>| ʠWOF2?lA{\emN/C*KQyh|s=iaprD.+A!rKd0> )G0APFH+bc.T<15l^% VH= ApeJcF{N;"J'*˖#_/Ⱞd?Mc T*&D.M~*JZR, -DZGQ6b6yo29よ73 (D Ԓ uݒ/c=NS[XzF$x$r='?gܷ/@Q'rE3ς`kb\&sZO#m/-b axwB.&:;<㢒 $J'-LA{l2 0+w|hy;53u/l0e0f@7s)BM狋f\Dl[mW!)G$&x,M QWi{LpyEzidw"C?ծ{S`35zdZ9b'*Ճ\zo ιg 6U\=pXLm9۲Kg]+uuE=;}nLz[a.D߬Y>5`6?#yoxG!ڴKNZ3o˞,, F)JLXd_aVԀϩ>T.4 B:RẍBɵƒs8 4|k-ճzS"\ =5NВzHذ t(10yH<8eaC5k( 5 ܂n=GIGV?l^~@ ,_g*D ٬pA /|Vyh25kB_ Q,u>(7[KKgՈg@}{GR u+șNVV6â}I zQ/>fdu6m0!A|_@|wYv;q8#esS@ㅝӔ>>ݍ>pll.k*s~dNQUnZ /Bp!puf&+VM0sxdH9u~t\݈Ʋ\ r >۝.]Nt SF~oqlP}&MWM1yTV۳gdM a&BЙ5ƻ$ )_cd>p|f)gdG6vAd?:%V>Ln'|װ[ @c࡬Xǿd(_FxQݕT(%#8 MO&J71!B٨U׿5 Ŀ\%!}l'wuCH|S'4ek&AW ~r砬Ƅ:YEocG?ӳs4`(GOwl8 䤆`oN43]7ܨ>Kla@IH&MOFP2#RSگQ;=:e>.y?Zo*^i( y\"WKn`JB} z;iL~9L?],w _,P*q`m?4gf@M3uP.]bLg%"Q_gJ60%L񉃈IQ9NX/ousśqBɝꈿTzu<ٜK2kB jCiL|6{IF?]D mfQtP@Z|X !,鬍B]P( \D\^Ȱ[g > l sv>e# BH^_ <CCƸډ0=9OІv%Pe'lX%Bl1#~[nOJ5cC8Ү<]"6=ҭ?s'Z;X = fU#2N$rlk>g|ۆO]HINvV eMeO3Ǿbv,iհ?ZWJVXk֑k%B{,ጣ`?#B-yf$GSnF""yCEغ ,L@ ࿩iPES9A;e!^Ԋ@"k`-T^m+9;~PHqrAƿdcȢ=8Pdsݨ1Hʙu>$ @yMhB#BqQH,-;2J+eS[VzzòV1>lI^~}%5Ctq  gc] EkȊιe=%`f1*wHJs$^6N7:'9Fص"lld,8y'm޸/Pي7,,/cyP +JnϬ `h -Ѭ['D,4&$e'KdY08z"[Op+S0D1ˣ GӰhMMO0hͤt|VcMQEFVNpX#Fg} TO6,7H |Mo8ZB*PbW$L.!uѳfl%}r =NS)ˤv>?)O0QBy:-`_hqVLL1֢N\C;xxvg xidFe)[0ƌ~P ~te`6ӶyXjߓ,q"2I6I瞼rQ =\}Ƚ0LEY' Z&G5#*92|2y\8v֚ѨT/1/Ds;"68gcU%~s 3/H&_x4[~&H6.N&Y0&-lPMK렮uvM(Xpj Bx( d7u#' 89'\ npv+,8oő5ɨ_k;+&1^r7Vӵt21Pϴo%s- 7]n[@ ~9(MJ*/tzl K$Sm};3 |'<޻1Jr"U].%.~$n`wH ޯZ_mM44ɲ2Z~*as\o5,E9?n ½}(TbM dfDL螲66lݎfߕg&8ʏZҌ}17wxbmxmJ]q4W|՝C$Π+ýu `A}7\6y#`'(NkowzԉYŲ4;."$Xuҁ8Xf>?r+Rj;YLOj;Rcz>#a<:R~l?`c5iLMѥC2"9q6UmΕ[.(Yؾj=v zmɟ$aVp#|0%e Rj@9_6LFߙ?"ʹ_Qz ۸H,,>qP(>+ 'c6&+tBrͼ*_yT **fxgcP3֝0 _PʱwȇceH|bȨ8=f*"f{>Nt'r?Eb,=6.呞M\GDVa_ \|I(Nb ɊNzE2ކu>yp%zS<r*ٍ*ēvgQ'Y"jB1L[]l~yA)9(^ҍsyR[Io~uUܩ s_uZ ݑX*?~~>(Cv_h|_esViA (Te]8>PС" O7J^ J>FddtBWs4#)v\ lL`R8$DnKEL5ɻ}^_o؇=hMܬp)! iGa]\|'U[ESaʋwDs2 r#' &Ģ^'6Yvf=8n9V#iz#Ee*;É mHҎeF"Vо0i0 }+@|!kE R[v"[20=km2 ; d|"n-Ǻ+_okL~~pOgx?ߌ`{2[DCp2lNQ*'˶y+!idh5GH W 3u42Q19 Q_Fcb-T7U,?eٻ _-z*Ԇt~ƒ5 V.}H Dp/HY䙙u7L^ꄙyB=rcb -l<\jUHnPWn<@%Z3Qp֨1@ԻomtbR]BBV}W.GڟW|]Qp0 _&+䭶FUsJ>$+nHv\ꏽ!1**H ˟J79=wf*ŎV}⸀ W;ξ|^[mz[?{EB$ 0dC7]ўhڛ^ Ñ?=MѢJN}B'$h_? LwwvtWf`3 Is9 =KGZ4{_I]`IooX]<2#'oߡimB-*W"'ZbÔ)&"@y!{Wy D/b# D%0/ Y˘Nvn  SpFߕBv_"oGy+t@!jI>"Ԫͥib}K(/H!p0o^5`fFl\zSg$ 4"bSi$(-]ezA'pc"0KFƵ>K uX:{xl"c E—7UYi~;'K ] ]"UQnB"xQODyAv1ޓ0 g(Gp+>ŦcuPf7Ym?񚛛d~y[ ZcB(cs`OC |oU'ġNQa©ؤq̂::_g)BrIabZ5oi@~(gʋc+cLPȯ,"l" bX@ѥӬ޹C1Ӂ51ڇ$QkǝP: ;=<1BtA^\{ĒzBїJ 9#b\3]+zlbN%Y$ǘ>AhXH^ Ck^u m9)OePp頉iҌंXLpG~}Q&b@0F. J1fфIlBTlnP3jH0Z0%ޚH ~ԵoS"ʘ< & ($ܭl"v 4_ g 5+P*]D.IPdx{ySn籉zwPGPZp"=$h0ҕU߷G)&Q_QN &91rծՌk[JA0|-᫿ m]#O)*7݋nz? C,FH,V(ASF<иRhW|b!* 8+v}Iɍ6^@Gg݁+sMw._C8)ܑ gu•W#,\=.bElB7.v4aI.\݊ԹS?a>rDen$#|dM LaZ*ENҒVhDˎ{~чr>Qa٦e'3 <ߐ $mT7\Vn -bB$Y'JA lV\/䓱0ؠ9* quՕÖԻ8$[I٭Qg 1lpyȿ®"  ItK$ BX-֛]HchWDkjd]zC ߊ_ sй9rX5d%u2Nr]0ʕ>_hyђ"/wM-l[Gm0%O)%/iDeE,MnI-"8a?ߍHXQ}D.3**.4R VaM!RJ;t2˼)yΟt'ͧӃuSAY#(縞ƻ<0-0HzO-1qre'# z _KWl n"YY3D0a%筹`;8&+{pn)4fbirG7H}t.]3AFM~SM)$^~ٸ)Ԝqr-9i/sgwt`47m}M:.bBfkHpA75ާ6맹SZTzbW1N xC6RS[ 벙91K%=0[QLD+۫k ٘ؽd̬``OU;m(v$?g<^{QB xO^M`/%Cel8a%zex1:6ad`{ÕQp5AOX?IYE0!։Ysf:D3iK]1t"iU~Pl'Mt *5Xis'5qJQ@(7!Fq/N}W,HpgNި}W vd_zAHj,>>eh9’<&+xՐ\6ۍD)7voBH\ǒA$9?Gq`G42i|'1x=:/2̖h/nuׁwZkU:B(cWPR%ǺeZraIр?Kxjx!POᒍ!I1:O!K7/luC^Wz5)(qF|vq_uIf^Oqy=!(3͕b)gu#_G mJ/:҄ƨj$8q&,vj#% [)Эǘ3YN]jWfr#V [%j5mxe]xND`jFW*ca}kN X@7kyZ ֶ5uvaZ+7(Sřc]^d_YП-¼36F=yPJ-c5ƨs8|5h-#=w15˧0k;̩-_aA𮚵BpBxCf9vx!.Ɍp!ځ'BD}K*t/OsZ ^dB'8 D/V}]#+_.{kgb-{5ĄI*usNLؒ=67+p ng.<+鳤lWjzODS}xZ_֪=mOb>oWM^].(vxQa$WU-ve༆ ᥥv `~kȝUzuV 9G`._ mڋ^e!e\Y#50ݳj1dT 4 &jt/1Nh<%m2Ip3x$ġ 7ɮ,i%"B?n]׊ٮ-mV~r>8V!=`}CB_H{7ɤlwO G.6}tGo6,P85`b,v g5-Zh ʣYf1ٚJ{uzK4o%txȣ.8__pT_12mWzjJ7Lnu8{3`!\}t-FME L~g>ѨMSGI5Jb_e ??NW18+0s:7[YՔIkud\LrE--ʹ3 SЄǎ42 |o 6D,F *5X!i#)&abpñ0QD\D*ɀ8;v&Z>vȇ1hʀae[u*gͣyIWB,8Ej<+??b LARk5*V 0.3K 4lz8ZUŸyZHBz"3E _~m'12,GE8%@ VE|lEv%AlU$I%[>C&`C%ӷ"?EJ&h'7YIBg2!߅TS?HjEZ?ڹU bTʰB##4z~Lߛj͛P]?+T}Le{ݭWw_m&E|%K*P}bb-sпW7=.["Sl ӕI4e% Uw{", H moIUJxY5m|#tT`%4KghՏ@p4g1Q+@FъFD#1/ߡ"9U5<{U$z$6YUݡ'ܝDp%^0GRf'\d~Ý,z.䍸qC 5$F?R+@0ڶ8~N\\J|EVsƫxF9p%AyVo ~s,Fa6v1el"+cS7Ȁzs&v /Q/MCWu7}l:%1+`)5?(14 K~{Sr';`HsPvB=pFasT@!'9hmhuH`Ƨ*9`\3@6νU@rgj^iw,?x!^IOVA ?whȗWd*:Yrp~:ھx#st+rRyġ ^pǃ\/ΐ_fӦ H97dNJǻV]q11OP-aط=4$~%sm[mZa9C$ިz6W&<ҶOm?+Wd~E-xKr5/g2MGC)~3 p[L:zal}j`=uT,o5 Ӝ7gi '6nYl%x)f݄|]_﮲f$DvFprY̮a[A9tP/i6eQsp $ڟ&ScYK/ʸ:ǖ0V>f@9q?,-wh*tKωSÄ -%9chJ&yM\GїC Qo[,(=. qA],؏Ъ*Jl[DpS[] paibKw7EsP S&rnJd'#u;2{~8903@~VyTmO&=7CrUbXr 2Њ40 E~TJONomo<JU^G<؆|b%'<-_ӷGV0 m>.4`e#wGR~/m][ۗP@k}x>&dƾX> >/I9M?m>Dp^׳r%<|}AP"K8}+׀)lF9tc-6( oQ{Pz4ڪ(1zϥK^tzpP(Q(_%!pԗeiJf+ Uf]b}6!OZ|cn[,i`e%$VDb{.' S??>> $$G%W_TdQ >2{68rH ŇBaܬng^4Zwh-U)UosVoX. Hk;:d?%#q?ݶ}f$l8Ȍ߂ҋ^l"hMA־tR[!3ػٕ̓UnKuxft;WLGB%S!:_ &oVd MZ&zYA{X+(k 2vk5/ݦxR3U. UfލV셿#ow1M˽nq4d!8]U'Xg:*9BN{,n0/I}t*s\ЭӪ5~nܧMl?bd;e ĵ\|v^{xѰ0S”d- -mݷLCmMA@jd= w<%d(嘃?*e6†}/Vqm Ï)X@YX5K45ݍ'B/jT>A<8'(<: XD,Ҽr^%ȗ+,6Cv_xw̠(N'Agh& 7rO8]6e"wӘOgzZE$v$Wսt,1zq'^L'[T'/OY_:🬘oۼ;Tc$ 1-$tZArM1~\̵`M?9GQ"!W{0$ݬ9G_ͧupBVx]$H'qcs,Bo7N|Mc#Ξuz_` BbSw>uߑ+:! Mrٲ_ O! МCk`4W㚓 s]^Ї;izgW E&W4 NIEt)OJڤH _:iIo[#&EZiȫt~rhšW.h`,$X+bZ/=gs\R 1JwL^Ow\Ny:'Ik| udJK3 p)+lA=枥5"hra"l&lQQ(ZV &Fʮc+}@VRXnr7c /LSq(;I>frpJYa*3)\Mdyh dL8$+A eL+SQ&dem*wPWق HEsL P"0AC#3Kb>ַw,"뀯;5)sé5м_~IJM ".mԂnS74"|_m{@Asaz*<Nos~o&L=DPN0\#ŗls} ¦`bcPV5~Ϧ;9  bvVN%R's|vS<^;f:/b2}YdIJƀtk)Qc[F>fjQφԎ` @= 4-@Db'"d .UxJԱFKdU w)9g5wPz@.6Rˋ^@W S6 VR^><@,PEiT"/qRT`r0.Az[qXuюABl66suFLcyt•I]u1nm(ek!ط q7/˄64gd@`_hzXU)4Ai/^?8@D?cx)%U, 17UYBY< 8E\I\ioTH 5y38->wn?Q9 pEj#8 ulY*ߍ{ '=V󚯵v=b 2ނ}iSJZ Nʺ-z$ _:7P0p~L,m*WwrRzM/ĝ/:wO8U,(ZlUJAurTQ7$N)ydT犋dcX^=EЬg8}FS:!A0*ǎ ~^;Gkðv?";UMaJ'Ƥ?4c5/8窩dbEqz <1J,]"@H)E {yiCdv?EQ5O*E]6K=۫&]1ɏQMҌt^=E*#ԦenAE>xpR$zRfB3G-.l>iW49NEj[ {AW-O$$Ma~ɬi2Mэ,3?6L^e!Tckg817/?M<\qV%ĺt#C&4Sgt,D&`)Z#М"A&gL.4a ] w#' om*m`X.Stt妊#:I{hkeݶfcޟuGycI 37Z n÷U2!Akjeڑp/֦^7Ö .<_}qvs{'r[p#aK}M~5{-xh&lRo]b49hķ0i$%NF,ӰEbFv$3^KA mذVN)BM1%ooCHP1sD,Cy.еfCPL7tK٘8੡ugL-.Fd)[O*(CTer,IuO׹SkȖ<9i Y`=6FQjT+ȇRLhiya_6ߝf+V6ms@(a&U;v+ mDP{}Dh*rX5kQ?CݽNN^xD;+i< ,^ާl?d_'cQ>`?FkegTق7 iVCL*KxMbkg%եKMy"eE?Dg`Ew X3wӒ?I]2 * maj֎^v{Z&UmBvf&c@Ƒ5Ms,w+Ӹ!O-;߃5='}b|^g |uUo } e&D cgva֗/ EvĈB&XDuJ_:q-G\b'.d{YvwⶺNAOoꑂB&h3BH%.+ӝwlǟua|n$2]>^Nh]`,SS}xq2Ö!)#HbЧC8)7$ 1B/`ݨ@{NR1Bt\oFL Z8B1+)AAfv(%26/y+XVLG2u*<L"a޵cKTՂ/7eVpOh)E=0ѝ ui pa=id[14;3EFSG2פ9xlZJT_OfTPpm.W?®y` ?@h;k[0ܜvW}p43Φe$LcɝniOLtog5)@YἼ|TM,5 :2{DUh AU9Vة@l>)gha?Cr =x̽F'Xw3 ] -Z1gAzX`h֌K+^ 2CW~L\#ZǮ'rVE])Aj}$V7{LvFb0Ȫ=-dV@a|elo5TR\'4 H tC9@"?EUU57ʎ+R3(vb [C&J"loڨ'WrUjN 2y<ཉVX+2 4zĐ4uJ}c93=ݪrxQVARF,r>/7ŐsJkCom_eu?SFz E.\p6|LR+$xPS|Gn1g&ǐǗ*ة3:$fWԠ}*];.FIp% ;tZKa} .nbZV_"Z9\b ˴{P L=0_ZNCiʅ.86iOASgn;4y' 9 W+~ C\tՂ!7x4 _ 0!`#'92îyPMxa(ew9W܎+݆]9E nJTH, A8$/=n#.Vmnj@*@gpDXfV 8X9~uQ{)ʙ[B`/zO?VV۸4]P!^b%J,c|H+s*@Qe_`* du%cb/G=@Og+"7yxšvn*]eWNHLg'+OF}CaÚ\mѣ.E,)8[DGu.$I%&=hb0ETKGwm4K@DG=#2jUh2ߚъJܛ8}JTRnBl[ZmÓա޶2M ƧrNg&qO~@̐Ä3~uxDM]cUv3fӡ)H^!=*<-*v6› T6 mMU.i޻SqPN"áwm}Uz[{O7K}g!EecIj#5CZۍ'"KHXq_6*k+ ^FYlR>'#3_WubwAo9OC2\Jr)s0wB^7O=50[3Sgb{.E6^!?}dQ\"?rȬ!ꯍ[ t[[*s]M7eSq7&/ѯzM`Qfi^',>D5cMN*?xvgL̡HS?V\'z/Pi0mA`ppF.vަBB+Jb4c>Y|~5N10X=Ѯ` ]rW's|K{?4ht/ƪ {%COpZbκz5/0ᕄ0, ]=zc|}DDSK3wFjWAGVՠQݛu0~8lT氦@úQqS:E}ΓЮčJ.xw*ҍn=\`Sn3[ӌ@: Mb <&“ڄ>/L?x4}) 8X 3 "e ɟ`RPѢ(S_`fR]xEI]'!!B$M5ƾR<{=wbpӰ.q15UHC/'KSZ{'+tصoS,i,d4RP7 _<͌&O)tL/Pĕe^.FMZ23(bp) 'M9wʅ~ź횵AG,݋&KqwP/%}*=׹;WSG9cZFҫUl 7o%-m@"CS+=n/ '..z(8Zh.Mm;",LD_ù0A_.~l>$ۂWF4F~1lUxvu $/BUv`z_VˠXOHn <;hP4t݋*u\ J[3T9RPl!]61SLZ)cf Y0,nqm*7j5^f\|tAU]ӫV>hqd$Cso?+V݃Bg "H+ gL>3 Q@.WR$JȼcC3}^PYʹ~u ).>@d7 4@6y[0h9 i,q#&Rw }heuX祕VݕywMYw I\/t?\]g\kެ;BfFDG۔Kx4U)9>q)/2d5erبlI%R/p|)@PNOB ~S$XA Ƕ~za"Ǔj)9YIhR hE_!qbj!l3ꭡ!yq5dl;dl0nmx8}ɭ<7d(pΉ}VnD^< m @\2WCwW`!no?!R{ H{}s3j,5OWԩ Mily@X4ߎQ;nEnّ?44:V؜3SGFњȮ;eau0XS[[?v\wKx56SkC'QvZp/+IB *6g賫 0mi&x%1-nfC b,cJAzBu1Yqd ɋER-\VdYTef @jA ӛ^ϖVe'Ė"Ifc"p&pXz󰏏Y*s҄D=Žc P kF>O=xCMfτtœ b :žh/d ЊV#0|Oo{+8)&u$] cy>Q0x&ϒ$=8`||CHb #y?l[?Tue4ErFPjb o*M,R=R/jr'՝ϔuz,{? 8AW Zhc@`P&P6ky¿0 5^wc,) Ѫc8KKGZvi8c򫌛ަm}oį|cCym3M}s]$./%w1ߦ_iӌ w` 'H{5N_nP^cK,$S^ }35oy !mXV纫4Qv^VqMxC1TĿL딳+h IJyU/&YAM(;V҃]Zjic %TeOMEk}x_7\;fU,lBKfsqNl|]@좲Gta*S#C!zuI${raP0Vw`R Fm&eP)F `b.Z/NIQAʒ5=0l3ޑ\PB]=^yv:oGnQh / >K1 6M.*]\ uFfr3 Z,F$ɂ]P/g0fV6WBY\P[zX)GVi* %b8PVw_ ۄuToD~h) -8ׯ;f6mZ owZU v&B|8|Z@|B1PWDJW|0$xjvnJw5E8t+N&85㞷xTYP{>\.3Eߕk.iG/ [Yʥ.ɨ]0 "|*: ;PO$@Eg;wtMy= - `Dg bw 54O*'cv`-7͚r7Byl҄bru.zLmy1\uj)X}5W5md@j bL(ExR\3jA!z}sWM*s'oH#eC4lmAtҤcuZ.RSiH~ σ1s9NZؓn ('#/ tX#YFiv~5t 0ZmHN4ZZzZ}OHV i%ܹ}O|T ǻ M~u,A[:S NlN@F܌NאCQ_fp:=((Nm|v}Rܧ1|$8 #)|h,~TK E_{{!>J8nRd RFH oNKx,<*:hw?d LUY F%1A'NWLN ؊K:Vo>W\EV5n<ȂAhMIXx~]*k?еkB5SOx̜[Z//cWLNHP1gDYnȏ1}#P 9Q. 7pxbD@=tCKn/Z ()Y=Ǟx/_F]fF5dl"Kgv5(OUtȢ$|=,k8jő 'Ͷiq~]ΉHzOB7ǧnXPHa֩|%kG{tf&cH>KHš5J% A:!=CހtbKuM c] %0tH9DndR.EbHVU;q8TAԤl%-;hr^dIs5I;W e{}uX+h8 x\$*}PcK{xO=A r} l3ˊWKQoLU-y3٠KJjf`4*?Nd/s37NM00`*F4-ʛ &3:3y\Nvm]?#Iݸp^aK+9Ը/ W=5'iCցPӊ^U8'lXdپ"΅RIX[ zV9~xQ]M9iI.z,4"% >b4ײ.hS㟂a>J9wӚj d{Q~(4}%!> nbȍwBn;T3ELGrh~D%86A^+(%MI-qQY\0{ȳ-Ԙ"|P|N?z-WE .g |Ī³7yҝsNYTv<:6sK@KKBB3krK"e' v"á >=iT6,+g~ޫB^sG%r<*jjzЈyteIDbvA=ꀴg Il(A*aʐi- GԛJșclb4s4لzN!` 7ek)TCy6Fة[PbL;pW=3lY**1})SP!6_dWPֵ,va`ylvRRFSG[ WD_^tpڌFx-R EZ}}K)UcѴa厁5؍?p]/ VZKW9U'0Ո%Wu)AKċ t#ZWeMm2Y ',e?W}9^1Z p VYF2Rtcn .$`C fh^'H]nV.9pMa҈ڀu#Wщr%A tDŽg$f5)\Q+͐|=ƳH[m wDA -?+"- ֓diDS[CcB@7!B:bc+ M/c\>]%ZiR[C|uJ" u8D|N^[!Qڂhە5q a!D#UA~;ǔƇJ([?G s<GcHp(笏kܹ>;JT @e%8*)*%NbJ WGh0-"Od?+), '{0X{?&x;z2ry˭ 0R8\o\9ȹIdsSFQg%Wj'Ʋkc[}c/7"?DB[PV*rȉ*nM4cJ0{\n( UT9V-3$@&eYJUt6^M`|U!vapΫ'eRQ8.$-2 s`g]  1`BeصOkR}; :+W]MŹ57W}DTUWQ13)ۖr _Y1ݝ>B][BH \5i'^R&'P6D.SDE& 7SHqyHkI(2`PQ, WCW;ޝPR2esVoDsQ}na4ge FJ7߾G[F8Oۡut "ӯ.O~̲7ʷEr ,R N5H_:ިA|IS>@wN_JNTDs-J䥨9I.Oe188lX:)"#*unwУ2;sgR=̤]hZ^e4I4 X7bZ8|t,~MX}fćla~YE(@!$9b-gbz׀#9hMO.3׍UYkX^"K`<~q;D0YJCe+5.^mwOKY{Ld4xJ+>S`?yy&)I3wQyF99h* V#`=#Lf:lL5Lrٰɛ_W&/i.P m9Vs C۹Q7?u 6mwλnJDfYYxal#=%mC/aMKRe6}=>YG* 7<>3X~!}BH*ɤ}LRůj_+b>A Ee2 #E4{DkZOd*тK|=TIyt+VLyrxm2 Y;_2^L D.^?l[/TU葶ALz+sy, y.93 8tg%C209,ш5_Oہ˹nmpE3#|=p xᷕ!O!w'9xFgYHkGfaOFDA݋at , qA@RzLf \JAX0}u<)(13!,w |-R@x&ʯl0t| lzRI|^BJ%=ePZXbWkD4 fI(@"p4;%'\?\9}Tª'Z'K=SU6uuZVj^?߭$V$}`W(2LB*sE 9uf[5YGkDt'l.B*G?F#@|v4¬?ҧ p˰[n8/7 !ðSF|UKB15&+~k2?e /-(D z7`hOKt te~B_x`1o'G|;e/+)tǢ|.ߒQXuqm3Vm=/]vUllI/[dG`6U, 86 =]-7q 9zUp#x fc`q53S/H+ iOv|0Ɏᴐ؜A\xӓu*F+0@j=~ί@WЦ[~,FGYT`BX":~?Gue3S 3V:MA9ʵ:n(֜^{L,+B=2>h>"^ԺjPaRBA0R b.n?-^_L`,tt_tlR>6B7F$őΖAM2a4XɀfPlgZ(Y|1y<59WKh` tQ$0JƊV;~rFAgE ߪyJ+ٞ:<O`H91.h×P_9J&;~j֣#hfJYEnx'6꠻F$=TP*{RQ 8KPwt-^A}P g5M s?YyB [`V6\rg ](JփB ~rE ן32- N!=`Pq['{6Y wzDR Ӷb4!rw NG$ʽujMyK]+qOa67U2t0ҳ!ɍxh u!H%|Qz;廄3ďtඨVq}`! +:#]I]]K#H:ufyIqmƿF 8f!Ar%lZCG݀ "w,4)a@q,P%+:M}7UBd3<תCpYlFaR7NPO}jiu\|+m0],H֙{['KBA,O]S{9 +5u( ]3q[3HoU&?-KK| eʚ wx(/VWudM NA T&z*"cm s)w@ SZr`iJOgml)zv"؂үv(֏V>jD7%#`gX|3"~:&̟4_sLNZ2Ru~/2nG~ckުeY7fi$`xfdN:\jA:0r(h&92wPg߁2t芻xjd|*AC=Ctp$NP^cؽ]j ,@ ~4PSPV{1˷w[0og{o r6hn܎I51"[1c>}.lV2#+)+ GDܑ/IelNӀ:`WG\,?(_Uu˳.뒧.ѡ(噼`[d"Y"sfHKq=.`=۸;Mj,5+PDIôB.Agtk-2F]9E| abjC耿T/j)w^f+0zNlxv6Җc=҉ZK tGCsr:ω WHHc$+ R@7 -Đ XA爾cio|(`=JBG:[S{WX3qFG #' +2?.\)}Pw'Y>i PD7GH(vϪҦ**rl0bd^z&6f:[f\$jCﴰδ/oQ2ߣR#( s"OLk"~>.ޑD(=o"]F: KqD^E=wHSꓱ F!<^{Y*o+T ݮ?@8TfrTsg-w~-"x+%R*KHh+~Κ=VSф/NFU9uD"`Gr/}tf+ Eư1)j0*(6IZIYj2[-8@]nPSp(̋У֥pr`չ3(N0 nb2g"uVid ֌*B"K5w|RE>w$1VAJk㦫Cd#{|W)I&AC>?&/RCRm̮L 0vZxR!(,6a ?XʒZBlid8+os`˔ <0H+0Ƌ|?M_ yl 5[]!=w(%9G@b?+1sدF]?RǖCQ#SFktRTRPo92x@vdi!I `0:$M/]#5qÉIs_\nkI.*jD [1Tc"xI,Ad,^0]=tzh~aZ9Zmx^xZ-FV|]}v>@i)kѩJi(j@$uM(]L/^0y4F4w)': p8ׁIB ^ՊYv쿴:LUEG|T3:hli]Z,9z4KK`:iRT;\Q$M#ʐM!nhUfH6)6j|V^󹙤vەa tQC ؇| 5f|uZ F:R]G CضY3zM܃6fF%_k"-2@AoApt%\Ea sv gj-~̑&N6gM|\˻HA249[-O@u:]y-u!oihJRpu&G}o%1\S=|eHͼe{rX83:L ur~DP B y\+`蟢 m䶨I!Ϋ~` /0tY@;J]A&s U2` YܦM*lIHJ?}W^|Iwzك)qV?;35 um;EG ۖ5񚘍ʗx``2kPc=Z0`]ET#{Λ%W>HbB=-P)=`&Iy_D6U~DGZiۗD +!;l)ru%UMn;ɫʽ kBqޘQTgt:!mrtX|gQ33!B  RYHC6֛wpc&2Ö́4r3jV8:?TPLp`N=kiˌe)n? V)T-ו*5%وjQ_Q_ ڔ2L3`̯IqwX1^v(׊X,e ;І4sirWZ*'&l't)PhZTr j l"ċRiQHk B2y!bA]!lJcܸM6o&FI N5~s)85 Fܣu WQy{DJ}oO$臷Džu iȺ,Psiz)'lwyjktͺ-1[iV\NG!QU/W=UzhOdB>ǔ`m4-5_'}P]Q,Tn,{2 ' `":d?P mYX| 8:>9نWjZ{[U@ZF5ܽf auW|.])I轷eNj lk;h Am2ȭ@P0Ew!h:hAMc7gYK[{LŮMek#_ N2^؍ĦZY#mH|ŵMg&gx,K#!BkV +:kڟeT_q"J_oŌBЁEA #U*_VixN!A8;E=Ǫ 9j |bU]ͅyLXo[1ʢe5Q"pTHg}wˆRߞ2XxӣL/xWx1Oq25-g0eN>a 72ۜÌ[E@R;qO._bl;(4o>Iysfo\LM7'%ҳ@ t%zU@WmjV&ϸ%9/YJ 2Bf`Z28g{?-O-\)S:fS]V+e}(Q}3ݰ+/,y{~U1 >c$KVGJ?:Ϯ&|òH'>,h زsLnXAn\0_8;MdmoeƗrY]Fm_h:#]C-_s0蕔St 跄J%۷1ik. d 6g*:&mX̪}Κ- ry}|5@<6VV`1Ԭt+6'Ka(\S.[>L~C([Fg7;ӷdt&L 19< 'HC:(>@H V+jRޢ .mQL;//Wet7PAx;q٧Kr{]2)*e 8z|~WP9aVU,=h0ySVڥ,kͽUG\]Tյty7fv">А>@Jm$!ʎ;Mn͎0^"Tn?ÕFoVgPO~ޭx%WW|5 &2`Fq15Ig!I]h'kvfG@B_lq.\`>M@'Ql.^fBVIB6\ Ck|̰ٯu4H80h92 # m_  qY׈!:d iaT6~y‘ i:>q91 C B}|(K1ewN#T(cA3{TBs0:eCEL(">3QR%48Bѿ&lb9'Sk}L o7p6M'@6mD\hz8PkyRSz1oŸ^n W Lۼ3S4Ny"`R6~U[ {؏DkJiR]8E]SPwd:F9k54pTȞS]ib>~'PշN}+pj!pCc X-gaH@|~dM]әR "t./Z{ !ۜ)AL$*ү>$"5Kܶ{t|;.Pڠ8d+#`Q10d 9Cat@WÊ_*},ʫ3 ,] 1>"xcFi[dh˨2fJrmNElp?,\.j :8#)4vXWB3<8Uy~@UraO@sMY _m򫈎iZ6u` lhtʻVt^e*A\_ˏ\yؼ5[Sx<,Nt8ԢdA EtN>W>R 9]Z ) SnAa}ǹV8c Q6MhEsQdR ?sDQXt=Ψx+7ϼ.Yu#ܭV˸O -[6\̉kB}Wו.R,+h￝Q΢&l \vXw =ΆWWl Eyaa-5ܾ"^ڟXKCNs}Eq*qJx3D(j9"uIy8z7. _ԡ{HKm6 jQD6u$`m{l%!&Vy $"lDJ$$ο+KI 1HOyb3f8XȃÇ[z̦:H@ [q]o\[m۲D=>)<0;I<ƨnXx`<&:ٶrhIaM?[荠yؗ{$hib T~mܩF1ئ!f*V!"LuQ ڕ#@&v!{H8]b;Σ({hM T>#ۮ%aצ?&2YplR|6 g=95 Oc2,%}3PSj/e`ֽWyG /舽=ܨkJty!m_xM2\-X` Ka6Zox17iB? un0N#~S#@1ؗcU+IYjk)?adW'O [ M{X'iK‚SC:NC%C d*/ɠ{*!~Jlo)`9/8t UbeuvH)pNA Ȇ-t& `G6΄90?`Lm H@+ӷXдW9 xG|Ei59HJ 2n[R04 mbw ob om](SnWd=:tw},6TmDۋ1Xs'ATvycW@bq{Kߩ.bуgX嘋D21 =r+-IQifڝ.U))̏rqпP뤣qBI}܍r55X5d/Е l!NRu]V5Xt4gbso4-@hG|q7zC<JӷQYuI^m)ʜgd1-wBIM[ ֶO RK3 +Ap&( y8ZĘG`av8w K_^Jsyc@ahMb٩KL(۠_#gqCS~pI$2K&MbuЕ(/#zMyO3h rg WeMFU2"9m~v@BZDgCt&OaZy+n\THVA0G޷X_!}ɞ3;-^$MT1m#F~6H6]"(?^l F٘"ɻєӌ=N\9|6_bN*kPG</' WDLz ~Qj@Ffd=H {VoUꡇ{11g+K"Pɷ)nOiyw%6},̯FJڕW~#fr²bWՋj,sZ?̨#dwyju|v#>M~Lo Gs:ITA(F?;v:3nY +y*;o\ SHUV+;gM ajˊgI7v;sٺ:Ԅߦ%ǎ[^"U`z@D5ڬHXVfjH@/ID̎Y/<9$.4P7&vR8Mڳ]FSѾIuBqKJ_Fv-Q{PD1 # &t|AM:!gt|)A;?rq ` Vn]jsyGN%4NJC xozx0&xG-@]|,|>9,DP^^t8R׶ 0yM +!UҝpDӔ'RTpKE+ fctʹ㊥U>%"Q0b-5… Bqzh0&\""'slk[yq _x @92ͺ9vg&qC&4Dd<7'pDlq#0ҩlpEåXp@{<ݏՏ \eVF xi?/ * ZFxf<ĬCs9 bB~&I7[,\2?3j 0_,QWϱ0 JsBG]KD#'ö܇& [38,:!XB B)diD0C/Xͧ?e%y릥M|O6;+ 2`BGU6AQO N]sQTo5J+3'_ i.'Ŭ0rہ?=3f"V/^L!e5Nr:'N56[EZh{5U;Z(;#FW;I OHҝ,_ND[>4 [U6;QTFL A_W.J̿hxq_&XNIiLCxGsƁl5:3m;[C|kօD~t-!gR_AזrV##<*Si7iZAK#JŅ.[+9ި--!G LbNTCk &hq,<:05k|YG_ApV ÑcK ,5M`kO#Q؉xÐ;s)W$,d_5K@|Q^LJ24BcmC0lWrFp/FdTO@V-}Z : |c33{TN0BN-IZ.e2x{`̦ی AMx%x0 fe|iT#/shݣ"> qE+%K$IY6O[UtIz"D4*M~CV Q6hx{A`*Fde!{/bR-OؘkJۅoڙ_\<[lvr5]Gl o,ׅgmUu ] 0 A.恤B(<gq(2'fmUEaq}FI#Ң=w`.Nuс҅acRhNNW䄑;GQld.+ 7Ÿa@W"L aMRx|?J˘%or=q I ҩh6״eڔߣd+M4H‹ޯrlk$]{ Rbe@2 }|et~{7.zh<< <Ф\J5H얇MK;cWZWݨ=br;>-p'l|$I7CN/䌢- nhM ['NHVZuB8%~ѳS@cAԪuvmɶvyZKVi:;le4TBij_*$68}~6I̻#!]Ě QM}ʹ69{2^.g3,!K[(:U(JM?xZY Z߅uM.DoASxE3:J)jgK*Y*e&T݅izv#r1{2`3Pv,jgcjLxwIddՋqXXX=>5ZAŨנXw96K8w.DFw'K&ph WC2Nq ҆ ^B6p I+`_$͔%WGג*[2wL}Ģ-7ّ=܇R01 >Sl@If6۹jr fAڽĚr#q3X~ xl$ko"i@J belk 0EQXvO&' V喯0G,k۩V$L p4 멟鞁.% 7z{!'8C@El)H*:hտtH #-Xfjv ~I2*Xu1Il\=O;k;R,o nLOrJuvjy[M+>3{4A !7ijĪ,ï%(a B4nEdKoS?4{hOyz**'cTn7s^!D_\%: :5G)L8'Q}gun]bFPwp+Ek[0n^<$*]}T6}0!g&9 "w;%W呂jlGYfF 9I,:O"FUmkkPrtQL ?rSn4EE?M !F2ֿ#_k+8Qo$쿛>]L|9Z=H'$s{k?$~q& v\kݨ%1DL UebbjwjO0Ni']v.iōW> n_6(*++gOc*j/{->(t"GCݛi^ bnc5p%#2 MqB3-0. t\oǡߧu Ms9UI}SH\:lC?'ۼBR <J8iTlfJhiyCGΒ"%Уuģy{<*hX"5k*R뎘s·~ҿeg4ǃqh>VU l4^YeG2ia?z /ّnwW7TYP"dD^>QT## )ZT.gH#dy F]!xwȃR_a.r=|<2|:`O͉~<)(Zʼn_V=.q?̖X\X =dʻh_!Ob$i +KN!kѫlA_,W z9fQԖaDA ^N߈#6xC?`wڢ,ޱ+xC4>p?AXX{:$r2L /̾ Vû$Tj|\*  {{R ߵu4hc UWD}eҷ7F(mȻwTe*|U\Fn P-/8&\&+4dZ(wGRvMY&ϴNqbI]~m}CJ @lvVZ`֥24hB5w3j:n?t1m3%x)nYc-`*iLj ];|n U™@.lXCUBYO`T׽,ڻAe9y]?(+c^ʊ33}S U.ulhg:a5'n`=lIњ*j1sŅ*qQ5mc#|T2qaܝ[[Df>7g G-% Af=U~imm.AIlqt]0PaJ} ν$ЋAK-[Ur=>}_BCs67?=|h!/,3Sw} *]^}S-M'?q7x خrmzJI!PO!ԧԐQ~y v̞p&VQt)z!~jSB3s#b!J:2}.PV"q._>у#8b5haW26&G^C A\l2kVmNB UK[Ͷ֩t[f͛20`d3N"O.ξ: $s3ɥcjC65.hتh}c STBJK"^-Ң/yݚP;֎ω= > `O8Vk:<UN8sy/ja&(mk09o5$ zn.(21boO}Y .B'ND*$D0ZZM*G9e<$+,;SxxD 'B(T&R!0~ԣ&7!u: k $;v "CmecDjTRfnVgѬdVO2ݹߨ\?\0hIwM$yuU[|91a 4H,)%[@]TA<2!>nsa gS+Ld)ٴ) -:Dhl=1%shŽ%j4dR#9|(],qA;ڴ6jñXC>k_xwM?q[>V3.UIa0h6$_-Urms%`UZwJ.5ѓgHOoyn dz`$~4wшnCGM wٶHpn}c]Dzd1x0/2FA U$?Ŋ)^]C^sh$!Ȃ<20/ɞ˩ BI!#h:$\j'<_Κr\Ø9~3.93kead4\N!i<kp6oZN 7BDmg^DTWtKVA> x$yR)x^b3xJ'ʵpKM/ׯ"Gg$:tʧp'gM˪JmwYkZ Y:$d n~ke=jk !2~D_yCD5[v!#WO"/z;o@=5SfZFxJ+mAe˱B32&f6 ŭMN?$!*rïƿnUOAO_\|;}7FfnuӖQUK!r,GPZ7},+fN6#io{Y W >Q@YlZ=wquU;^6ny y!*SDkzjh0́&#IO*E+EI)7ܰ(fbM@飤"(8x-{)P0V}E#kjt( x(Bhu`!22yixAy.-Ypg'nvqL6uϽ2S[M^zQ>(e)ۓ^{ mmvӳ(ML*ns^?{9"“F1/kNZ4) % }mLrO1/ØkGN8ۃGeβ$9`«n[ +f1F4=$'kN $O2^7~]\ jȧootd-z*NpZDUx3H6@ޞ, z"pKʞPѭ);mY2h%Hr8RI~)ZU]u">"(x(Ѿ$PM.1=VKLw#e"Y]@Q۩KPErX[y{0N, 6#D?*Y?V0{!>nܳ\(_N`ĞG;z YAkC%Kh{)VJ7<s@+pΉ\PMΊI720oL NEl<,}YfH%?F%PɱY{|p˓;SU 32Ms5KTq$19EW3tNo&Q![qBl:NN%Y\q`*PUX`[x\/~"z:=y E_Cm[Xj[(:0hWIJ~^t07Dƭ1.{ ž'EMQ1G~K['7(EE-M֑-M[257ح1NDJiϯi7 Ak$%[\ד!q65\ܞRۻ :e*AwF Cw ++Ru, \`ɃZiC>d~OxHu|h-~"~mкR(7q-'l$Oߨa},M(cx^M:Uĥ`߱l+*,˪_yܳd zYx Ӏ sKa~,F6`i'Vq 6w11۹2(B.- peAY.B`w@d0M5#hE6Q}U{ GDʋVP $hSzŊK+Tpzۮo5o$& N"1]ÔMLv𧅭fZt7{xbz}RPX!9Y sN6Ok0- Yy[ b7IS]>'uFKC_Gj)?Cu1}zl{߹PD(R ZY3q\%wK0VG$l]A tp36bc[3g5JXpUW35e <&GL}i|u 1I\Ude$Џjxgςnm[~rDб_Q7!vU|,r T9r) gb{ooP3=gqK"k"̰y8=~vBTv%, sפ说%v?bذ&ޔ\≲k1Ѵ4c#\t){ htKHAi۾p.#$fu6<{ ߵIeef.iEćݪ8L6DIW?̕Ws H;eՇS;=N+0 ~424l¹BIQGW'1}~3F5XXD-$sm7%ȵEG&o`rKtzs8csE^><]큶w+Am.Xbɪ&y&GrM+aDcU0x5|߅Y-2:ʖ 2ظ=# ?!:sJtv^I'W7Ȩy_9 S@CGG``ld7["#c<  O4F}}u[ɟnSv\%2!mɴM^%(R^$lOo ? ~ܮ9g@G1r5v}'N@sVr)":䪞YLrxv!Fq.,MJr,d0Iݱ7i |yB~ٕtqQ0"[K UO=̿P '.P:ҭGkrZjG?H6: 4E~U eZ&,B^>w2Eu#TO57@vA,[|>Ь88M7xrCpqR4/<l{+J.fhЬLKܔ.K~ v~d둆6#4-[$Az"kY'Q_e;`l!2xUJmwp*4C^N89t&Tad[%TPY@&o{Թ*Gr]PJ6*䑣ƒ,LDl]/ Ylf.Y#QL=k%uϥPpWWJb#ۂ68.訨lW~UKem>VPiY8[sܦ q>݁YG|VI%f+j0 >CFEXgD`JoZU ˼B {][+<@ٺZea „53 U)Los(kr}+Qk%?i!;a я+N)xxּ|pMxp !5>d}jMaWG2x%r*Kb -"^Лif#FBdad.)b`9\g gHlGQV2~"RvQK@)ZmhWYQ/ٖ׆~`vIG\%z>w,TS0k>8e]i8Ya䘥 dIm/#4qM%@lickyW`qD_־١5^rE4Hv|4e7^4iΑr+R+»`pT4\4{B .|h! Ք7wt z.=#=eQmˆ` BMt`-3\G76`5l 픪@>oAάRw9(Hh,BMq}S'vty֙j[i$OBML>4tHU-xFNؘA ϰ$/6s7K^Fb$eq}Or\K}H&%w7'}xҵ e o 'mtteuXGFL)VRM"(PFX)n cFλa' /TN|J6aJl#r{I-,~f!q,(ʯC կV/{:q)ȄwѲx wk^\`S:xυ+Pk@z#X hEۜu9DZ^boP?FcDɺ"#6b) SxRedaE#LHã%)shCuTx:!"öw_/a-*Ts!P(uDDSOaH[((39J1eu&fNA9IkqH,;Uݦxh8~ UY W Ue[IQ^ P>s}5[#HVlqֻ[~KVU0j{0!0\|^>TR~c^zFG`OV =c@4wGsw8F {q.n?̆_P^Ҵj)rܰbm[-6\˃>#נ '^ C>ۮ(SWud| XQ,2 x\y7*$KXl/E} U0 La"f4w:Q 挎Ρڲ̬1!2lfTXbY6Y-dn ګ_{s?VoO5s8t)?BM[QѶPAfEc/  $rȇД+9jX$<ܼ纀O眲o[bftX:-19]z0(O(Jg0%@SpǼ`ӚL:V[FGDvXŪFY 㭵NFS̻ӯI8*.Xֈf.~Q]Y8Ξ]De mg46 )p&tQNjdsla!g;åMDf+7eWeSQ]:~:cm&e t#%)7KE=>cBII*2#r43h~`Np Iʇ&B9 R 6Bpk؋?&TP # QYj QNs'm,zϬvZv=&})loW8֢$S5rA:T\<8E#(xyP&ȋ*҉\tMn=xaqMU)_sX&Kq옍/2c*;^(`t`0J>ҪT HbF5 T86# 0 4 ,1(5pn0-Pr!ΔOLk 4åObTHtm/U ϩECӸީл=H2@]O%Ve8Mv!BYD&mXԳ81X҂:μoJFz(nCEzHL20"jkKW vCp 4Mwz{.)fB"HfͪځtߣNwTl6P~4%IѯZm?[zqƤ_XUTzCbE %0R/;`Vzro;v i0*@bxv]W:[SI|k+^.i:CՅ,5IQ+y%9^ /6ĂU!P`"#tkt jU v 螤K}FY0)d1p4f` 'Sl @V` [1 _R^Z<'q 09QU_8aIZn/yt;ñ(@ |&D؜h>_?lv{ ;MS4϶H&ޭ9DrOܴB閨ЄK SyEl6˘'@XXH@pZhkw+o@|V$ܵ'{}Ҽ_F~'!Q`ww/&%+sݨޅ@K! Q2(`2ɿG#E  ַ.!ePѼ~80ϻlszn QyqKVLeU'T3_3 |X*?uTphyׯk{6Bߏi x/7 w&'Ė~s f `# ^=J2Rݚ7j:/ge_ SD N.ܗ͚md2$ e [<"ʹ%ښea,jiL~{Z2&uے{ZUD4H)XN]SqCO1bma $u̻hN|sx-ѦtʺuzDs@W YTRp:I}/jxRO})9Lf^Ȗ&N_h-Wu L2WTmB~$0U>eڣmxuiB<,mpn]O=F{ C6KL;$ެ}NwQ8?0<4%2(oCpH`sFջʹ ,iAdb$}q:d["w؁b-`OFig_ū㏰LMIJi':= */KW0bkW$UmͅYYU3⽞8l$gh 9M]j ˸cXg/VtLmlIq^&jZ]eTw[rZ&PwV=5N_ymޛr@qkƄ177(F''tzkƹiɄRv%#4ņŕV3zBV( W ]3_`l[UӐ NeE/@-D^FP@5질9ZOWEvM2ZBhTDZW|?Ԕ 6Y#fAVh*[*D`~c0tTg&u}J1w5!BLh0S(qw#$ X*@x^F S|=vrcUP>S!|uA90KF߼L {cHRnbKAIX)! B\8rƟjFA;vz,'|>Ɔ[w%mrP_;DB];V.MY*}}f?>&W7}lfljͦ ]~pJ𼏑㏓ "e'3rSibz^y@mՌ|Ba+ 'fR& 0/&)#a8:E*YPbjE ᅊۃl9 wIx,Dcԗb%l)&r!ݝ6iTн 66u.5vՈ S :_F٭k &˴N$,/Wy4[k׎*CHiZQMlGlVgH̊2Ƭ衖7ZC'6݈f*e!EUͮ.ѕ&D[g>9YppIBy=D_;Lt;Cc~TDx=1ؠ 6)D iS[4S p>Zf:G**!p!>@zYOyol}EytXS00|zNfkc?QZY4Ё:=g&r`.6,rr 2džA)m+SNCR)z5!JnY2;M`[Jr`3ז5_>RRB޶@0 PB>ZdٰG2tPԗc5!E ݚ]nQ9~L3R?*-rXԇgoCQڹ榫Ҋ o8 M5yTwN'1D oV@'4nTz|HG\?e\Pȗ;FVU8Y9c C#(#s;1l*Pz@$ 8A(5f_.,ӁH!n|":PGvrƜ'x3m4~oa_Ni~c i*b ;#N\6#o1DOHWF)JHNi&4T0\rEvїUǗyrJvC6HqBSv&u5׭?Q#=~㗄Դl6KII0֠3ϣ%CC/D3 &*euORk0{}2}Q<%+<ȍfJ :pM|^q჈K?1|iZ>,8'4` #_8OWtzpx>Ԧ3{%߯*N-ɺdɱO?l/*H1MMS:ܺ&ȱ z{Z.q.ScM͖xX$,ȇUy9f-Qgjna?zWzQU:)4/Et]S)SE+=Lۨ2H<=pQҫccDžL.ˇl?.*&WTeR c0r;33n7"H9Fs$WeUGO$K!ɟ޵#D h1RE_3Z裸Fl3;0=SU"c~ٚ㑧D}zE2˜fҸu_LIH.@Q0V P7i3g7Z[5&zBIGކ KQO.R$2aT.UrKt3EJ{ae"’C<jY.o1 >Ma g W> ?[;SIO56i$ t? vS5;:L UR&'$ uСdO<yʼ@WP3ل]T|Y4%pfM#m*_Է_t>']#HlDs#NIڵGwVڢu_c=?3{k2A:#A'Fh6߂.>c!~bެ?6ײۛ:?υ(cܨSR{!Pi>}D_!.# |/n/zEG;xFw!$UҼ" o"A?9ݔ.8!l> YJ$9NIQ uIrS=7~2u k))1aXa afjjN fB6._۱d4fIZ=e@N*菂( ߃fn8H M5I4t$H&HxO4`W[Kb~GUw3&>wq=>egE*5lKRI^-6BCIѡ}Daz "ۻ—)dSQyө}O(G ~bh+4UƬ tnZqUVRhTfmj~9ge&<7d-G>I\x6G QvJ^A׍, 8P|fWs蓼b(W<؟6!7Y f D=WY*AxCYao͞ !aX@i;~^\&hW{aӿh쀃ה5u V52!aL&|F%JYEoɑ>Nݦe)H~CzE B*x)9rtd>7̕8c}AF$ ЧݠgNr 6}WB974xv:`7)ҩM6Dr茂 w1]I (vAÛluYdpĜCi1CnD%>'{ /"%!ߔwl D5SURF b=aQ'Z]êJr̒Kc4n^E 4IU<Ȧ~ml#oR> |PCTn\A Fpw4[zWWIjƏ;8Sxg.O|oܒq M;{"+)布+'?C@uM^C=ǁUA^{`X_(ܻy,~5:at' 5"@9@8KQ9*OuOI2RPEaǦힹ7!evZ(N ¢XMfo%sYZ`C2rQ@ȽEqcy9)SB~EcAQNJ/QEI=C_k>8CCFGӭO`deù?V]N@8C9횢Uǵ}|^VEN,E^Di-qB:ax { W2_@E()e`}={WW'Ͼ+'";rSou]#$ kek H 1ۍ 6FsfBXE=oɜlEoL[i h l@Q*/*e*6 -L6d ysV9rN详&-Ǧ1I-R+@ucPC25Qgo#[GGJz?u NT,(h[$Q]o`G FT~r rm9<i@&\f0?i:Z knЂ[8f*Uö)f <)bSflۅqY. r ͏|.lțƋo+nZ ]4' ]XGmuwsL"t(U?F}e0r*IL2q%t+R:<@{j-4]5G.ibkk(O mUnvM(8EBCfAY"e}'~*ȠB$>Aۇ +. Z?Ŀg:l>'wՄ*0U䁷- 3Ѹb"8G(N^8XJEUvk@NXd'g R;n_>]1ҹ:Vī?udc`S3Cr2|K)T Ͷ>CxQKJwą6@aP FjDU?l} \Yg(61Nn>TDXxxܰvEA j.y6E1zo zm=!祅 ?-耠H:uDO^"' .qVRW(hY.֟"? ",1ExnYZR{WY{n|b;uvs N(2;j6](yw~2b N6cHLF߈ƹF$Be9zҰ`K,C57. `h|q<]MDn w@ֹ6<ыȰ`o쬰lߵ !𮻠k!K'`yZч {`=;dI ~ #KY=# eNvwKfS舣//f#?gЅkY7覛'[ >1%]Z%CK7YA{*9e(QݧE&аb~y!"®ꋼBeLi mʒ+5] wD)_g+`?E</ߧ7 f[p|k1p ozWwpOf9]]һ؇n('?R)﬎h t]m%]&(U 8Cx]΍HzWàHK&}6ZDdQe:3&.sWjӛ7h%'≬[kbTAU\3VZE%ԫ"o@]dB&2PvM-窭̔􌫃ۖ&0 ou*-C=R 3|\UF pZ/%tCڪ ՠS23pPSXc!,X;m-!.L2&{gh*{aRoaj;:,Eynu(٦ΏX#A&$)baEn2!l~ǰLyvEiȍTC1XW[(Ɋ Tp / N,(@#S j |bbQTgt(j({ niFBӈߤ0]#(Yc+ˤn7hxdQ'[׭mXJG(7-: Sp Lه "E>as96bgz 1յp$˫nסE[q&()Ue璊zQB]5OK.zi|NΡ. TiTgO !+;%@pwbp>:t;Q:L1 *4W7Y4 trԆkH8u 5J6|Mud?oel5C<l 㼚lqKw4xS%Kt g0Twpu$ow@!0:_*;,3)B( kQ= 8/&Eʄ` Y?W:l>9=j E4T.H0p*Ƣ`c?/S  :Ōnar?r9kAzӹ $WC%NkưmԇV lvB!L%)|A=ud,hM} bed\KA~Z_y= 3 F% thA;qƇH7P>̓2}vͼZsmz"/~Dx\n'*S@^=rmނ3 P᭽|:bxYʯIr AwtNNVN5晿P@Dfy\ kmkG:̴O%8񵓗-?dM٫Ӭג]Y`!ŀ[ёsO~F6nY ^{%bl\2&-nn:䫩j~RXhgdIT f֮?vV}8j=![YbNfĶB AtO3j8`^@@CH.vKÁcY7 >25$mڱģDtØTLKĉ>6b{fq#Kem#5 S{"ҜZo IJXv<r 3m/9qOVYG$ڊ‚ 4\EbX40 ,.մ@*JƒjU) s?cs]r[S?i6m&q;#5~{CxooA5hB0;ezh+^ӺJ `-(q2 W}FnKz3H|FHPP2Xh#!OznkjpOͿQcr!2H䃠]! 4Q^Ό(*@M\~{h3Gm BJl8,U*piOE%ha/O|!5ٷ0(au??\U=.+;8k@Zki fBr :Z搆_X&E\BS%[ H_\B_[*/I=/p\;uqoS`T ^=J9"B!2Dq`wAiubK͞jv׍9%"22m o`hxԩ:pԻ^d.}X(bwBCBm XlBri#,Y *Z뎀V45j(R!DJTѫ 5yLvmi PL]n&j%qÊWFɳP  9!?z)CVT6@',Y..z|äz 7D^V4\B&{R9v55̾^~(g̱H$3e2"f7؝AC۹:綟čѰa]LgU[$jpD{qwb-BD"+%4n|C^cF* -؁.i\0`0V8Iϛ3/d8ʷS&aTR5{܌P;> {e:< voi֔NIk>3߻SkTaXd{[TLbہƠ=m`yAtءW{U"i1&xxܺ GvS*ͪ+wAdF\42wS>2afݢˊei]u![ ێI BSNٌIwB @4~Td4hZ.KsE#+FDֱB.Cr43g:ABa62N 1JW mݙ/m>TjL'z/B5 ⾺UmuGcf˼F80/wBplG1g 'bI<8EG7G%ZI$Xs+mNUHz|t,n^^AB(KS@C$A _T{H]jH՘u ~j4m)2qH'Tj-;T[B0jX2xD_ W0M .M]Y~Bkm ]|r\QM;|`xCscV ݊ UێY= |Ûa՞9b҃k Sf~f,X^zRʶXrnux/j f>N)RRvaHt_`x cu|kTMj Ija֣cabUD )u';E2ůͯZP`m%.Kj@X>{Fu4bXI7Bn? rʔQIzﭨuڟ#ksrhx,F|;ͤHvpe{UB-lϷmo7bXYe>0 tn뎮<ԴM\2\,ά`Dw!!T8ʋmf{Z .(g ڛCʬ v۪Nꤌ]+z:"]-vjR>Np7wÁh#s9'qz}ݗM }^`#@ka_MO$Ġ }ZT:.?ly\ޔX, WPn-_(A ͆p˻u*}'|9riD6+WHxvr괐d]nڪ4bj I-ZNGoNz عsA fqQJ2L2֙?o: nؖz$T3UhV}OCL!~ݛAL5!ဝ;rԀ !9 TǽVjJQ3O+Ab<_KI yL*|>Z=DSo#ڱ&-2$ROÉ]p7Z¾凒(aGꄪwF (VJ琉\spR*AaCz]YCD-:nWŹcՌ}-5G4νh?8 q7: 4̬v)jiKQM0Up\ױv*/R yi Saa4aS鉨U-~i|%!3NЖ8z7#{1n?UKX*Ǜ2$틩]mAU,ݠ7gġUW1&Ʋ`"b:ʣ!~K_ BBu iZ>ܠ>>.[[ㅓdH;)9d`j}Fp(:Y"7zBm|LCDᤗn;W7=724Y^# $&SFo< D]7;Ob7T=^#$B\ҽT䙴Ĉm q76M+rǧnvp-1 ~ !O%Y1[hĆ׆;N #Jnk2LbPC*fo^]S]?#}#BK:UЈTBj̕oH#jډ+c{Ԇ bڌ ]%ތUN:)v(棑K"г|"g..R3yɾeTbB<|fhpguJ?nTo8Fndv$eҎJ\~譠GyWtw˙Ȼ|Bg A71^y?+JeMw!N+y[7ڽjX"Y2eˁ/w(A2q\\xg.kO^t>,:~r5guH'ӡPp[VqKa$3|7dVmn,%IY\QI<\\b#ta_xQ\=~vYP fLv?wv1 Lej> Gۂ](!"w8 P_1!d'GLg Tpjp!'!-#P= D;xx+ꆻqm6!+:WbO&ȩ ]{buĪ*_H/"ֆ:Y[{s+6,bI I_I'Uo:0`$;qLibj/ja0/G@R FJrGI&]4C!۩PaR&ʔBM#kQTXD]ySwN݊[x7[8':nNNL q0= `xMF<JBQ+mI/!C0zwdĕf I=OiYZTqCx9^$TZUs̻qE4f~vgF{M XՒB_87_Cj='B)J2Tl9O,˟B,'ϺKWs" ɧBg5K;3 ŮsAvsIR ~9$UBaV~Lx"[̤/C*Cg /oGf=j&+= 8#s8 H: [Hrx?eZЗ!A ?n呐ml'.k~ڳV1Y22^aKnDa?VĺowHvf]7S EtU'a]>KL;$5FB*4~uZa:!QSot cBqcהy 0,{y#R&!a Y*c{\i7`7חSȬ{=>9Qzd'u~P5)Uᴣg2)!ލ[I1dLoL[~ ȦȰ"or@k'[œIO_HKW:25BK_R' LarAV7L"ɸ%4) =ܫ껬$e/Ywڡ#";Ɩr4~=@s vbZE&8ʔ0[ קN'X.%?+2̺TX)em8֗>x]=Z cR|9̪SkZN#6_(:8C"[*_]c9P>%)<ɂ^9e25%F X%[!p@Utȸ;P6ᛃZ_f-eڹqmoE\;^gAM oehG=- b*I aQ9eI?"@Ehn'a 5cL /.I^y:ie8 SR6mᲸ$EK+.L& L U-15Kj_/eH[.^|GΊ{Zj<6f`ݞxyf7om#WhuElg98X26L~%M NThLIRaW*z%`9\$uVEpjt\֚St]%{ל_}聐nG[u2 ˤk5\VZ5R :k]`?9mXC6"GG6YO"Ўמ[n5w%q\(EWmϜCrxt?"%DPB8𳠟Z C;^M`r6 q-w`_h+ vNB &,Ll''MZ-`SH=- %"o7)wpҏm~׶&r~37ģJً r٤0])U~mmǵu_qTyR+i7|qCĹ fr-- AE6@3p_ }m uI^@5W̻b0yé槲z\MD*bWU?wf+FSD1)w)b UTd=M5lm /XѤosrj2\HRܥ<ﰙWا-أcӖaW ϵeٸڸЍ(C9.آb0g%k^8+>M'E U[ @j0>̄!̥! pj$<\mgFd%\'bk/䮗g,W ""E3d0s0)>^akPt }u06G,!H{%K-<"̌P*43Dcn.j-yxiLʯ;E07mP.7UvW>f' }*;"q % ^2( SEhmd>&5zNxj?i"HeFsmh%:>oIX)yi$-'Q*y,"d)|3 Bs0}}PgUu^>Q 5~r^Cqn}2'Fd9*[Pf8?5.!J(%i6 ԩltBsec TOv?[f}' {m4 2}XTBxό>_wJyTCT9u劈)lamu} VB u$P\7"leW}v.1-\PgC; =/] 9y_zV}Tn[)ᬾAQGqMRJѪF_)0+kC\9oYE8+GvYSdOw~",͑L) Ԧ>D^̆;򓶗I :KElX5Ao !N v }>)M کl,rKx.kgCLxZ&*+%T dGnS/u 9S_q Nhnb[ZEe- ~;Lv7?/Em#>&'0(2JBwjq4=pihr14%(\C d \r2D1 O|':ջ\s`v뉵fOɋJ,q݊-](!waU'+hnY3٭\ GoX~Y@텩n.Ei_i,#*gN 5aҐzc{XDo4.GHPlG-tH:_GRX֨rQ~QK W]Kogĥ+g Psy?="^ߎ IdMnWȳ- j+ VGtp s1gΊ]%$ɁҨgE)v&d' $eɖL rӯYٙ, )HΞ1yQޝ)zJ$(SHyd 8~q0ۇX~pR0Ju^_ly΋&4Ӏ:&MѮSo'?Cƹ^/1**.]Z:7k!Ƨ[EWk64=^{;JgS Psa-.`r*߈X1믢K1t -en')= ADAaj5t(e']NJQd6y2@XKlqmmj@Aeʱ B]!]UY.kl:GylڐBgeaLJ]Uy"O ({ឫꕪD:NX,s3{J-]/0R8OuE9[2H6eӭuBهE`@ ۺ9`wm"pk7_"7!l3c\2@ced j)IJa  `^;gm'Q<jȷXc6T[|y Ӗ8BTEEυB /{hBإ> KNTfhVOhǤ=5iUmItĞ6ǟ<Bi]^rI+ֹ!,PGMn>qm 'k.0[ & qNݻ E5srć ˽!:ƣK5#BoaRݼKO9m L'ntj1h<#o;y:6$PP*tH vGcm@J?đQ /~N}| !9UR~mCs (n {dYljdܠ 5:N~8@Ɵ>Lr_myR}!|JPn93,ylQ, T.3߸GRМ^륆qۗ։ yH$ UY5#D.hx~(;^kgCg9īBrlT\N*{MR].+Hr9?MB4.Qi8ļp]e:3i轭.~FIiGOv&.۔e`Ԑ]KSTYN_廙J[ßTq(/z>iS~yp;WQBmKaS&0Vbc"utajY׷77[jܜ&V-Qc`s-؃SZWDZ. 483m>s>Z|ZH ؤ܅M_v6jJbemB9ؒ0naDLoI@-=诩,w*d ]n8>I'ӗYCòdCG@-xybئLVьw'oW>Oڵc`5|@ 6:b / ?R|?3oXf>#uҘRV#k(*UjJdqZ(ѱ!Yaπ h?|^@ TѢ ~8yU,Ʌ|bve`ZIvBtj?`;xDejwSXcWƹnV2"4vLJLpю?O5+AN'Kwl@ Րԡevɩf[5}xDYs߷lxB $ї;"Cb![I14qIM0DW'jSDv=7"<Ef)"8x}{vXr i (G') EfD4 ΋_[9L:vZ~^>2ejN}Car 7IҩLE~{fkYY?gYl(6>8WwWf̐)"{"! M#gq0?$/VbdD~!]FA,?*OHE0U+=vMé.J&+kaCln hJM=d](~wVd{Na-o8^zs>ކ5LSc*\}?E[MuCI%˦snV1}QUK+ۀ+¹qSEhe)I lR6|@3'֮Sv̽DfY;?[_")-]LۆdMwcgc$w)8bB,37)I~FYtv^=G}yA*~4fξM)8QVj,Տ%jcѮ>dIht*>#W1 E,l3ɺᶆ3ޡ`E(e.ko(K-2-G)fgz{:&,v; DBFr4>tZcɹ1MS5Jr1y59J}^'J}/+3f4ˠ-5,c`exc`|x_pShJE6]CwnpHyʗg@ ߹Wm.-eo1Z2\\I}_JD椻:?qgn`Pfm3N}&alfCYiiPPC?>Qn0h=Mzlu_:~5fWH6F09o6ь4$rO֜9?9a$]"mWM=h`Rא# i.\3G}`0Wf{>7^X0` cMoGMPȽ;<yr@^ 4xf]?@{I֞mzx(e!iRAH*$V_>OJe1隑Wޅ e D(PDpy am%iI,%V&tVL VIzwh}D/dۿ,~}&Nbyn_%ًbhTO8wgn!yI ^62iηj7."n ]sPnm`VpYW(?m)'&;egYuE"w Bf lܯ];~s&t+HҰ+Fm# ++ 1u$?Մc uγ7yP}'֫uFypf)2* 3C,;$p+2uZwLFѵg&uvmK+ 7mwD{ QHQհ io.֫q^(E.!@2ꌺ̈f‹*Vp$ξDմd&p ! վNo]'")W[=򘾽G Z< ~cIߊ\0K=MiFeAMPsϐkBy%m(q4wXm/J"[p^%??82I~o;)qﴻ¨i'jgvS`j~h<wcĢzXҝSA)/xT|GTm-X24_U|TϝQ$)Eⅇ׹ok*aZzAێQ|Hnf]20Ag*4fŒ'7]sU𥵟oyT3-ůِ;ٸ@:2Z,p4VNىMnDXգ8[ fz}Fv6;2*`l?a\v2=ǯ5HX& b Nh; <@!qW_┒$z1BEl*7XJq.eL(oliDs5]kkk"< oT\1~-~- k-fCĸIB:댪!1. |3,"h $KLmzGr}{omIگM!C+\MI3<8,=&@~_>)h ik9B|3dx6;Sd~B|_71{fQSέEjj:QXjȽ=U A<{ki[pb' 2 IbUq{0s/ `d0y?.[ HKrTAcޡ <r(x ; ւٙȚ>77(%+(_8R {K]%xP\m0qg+Z] 'Yo @I0^9a"W< ix[YWu/9P2ՆU`vy/1uS ^?D-}f^v- Q%n5k|)wqNDz[IN8*>1[\îR,T4« ܛ1ss}_+rwWFSАfWӞsc%b\%]Tk ^eӾzŢIH D,74+_ݒ/UqjSX}ȑa'KmćYlƃgm}gFtTWkf`D2κѣ7Xgἒ_͵L~DA?StqX^tS+T\Xē-݂h=Fj7y c.ok*??`B~Q< W#)k:{LCx]nS#i}֢a#t@*-G5Wg某{˂5Zl7CoA; uI?pQ&njfalvIZZ;G ,Ӥ1/ EGRzԓ-YpJ,]|ȅͮJ%C4!Az`veүD`\mx<=H`2E̤ޥݧp& 3hgQ|qMNP_D]:0CtA_j|~ ;xC2.:!2V&k$LPrwA"0xME 8|z]24qMXm~e H kV|Is07 ұ?mA̛ŊxwbAATuFEʡ=؁4٭!6 G 8F' W֓@X-QوA!:\FMO߂QJM 5fu_2yA7Jk׀,<k,NEQd-5N[uiǍ>DžPangXCX_vn\v'( 4?OKO\J8ۇ7zJ&!Zi V UxqܰnO;#/*ÏF}iOk6Q>(c]ӊ2SZt.}~݌ܱW>Ju+f%=hgSbB2S&^Nmn_)N汭v({rkmHPB2X+wqOѬX ֨~%ic8C) 8C#T̎񜂻umuK-t>{re6;{x)rq(M2XY&g29vn!qA݄gK6/A1?PVo]ښG"Qj5;Vd HNX3 'aR5k׆`(z*S+>g)IteПm&ruru.|:dKTywgq~\L-O8<-T`3pzrfMٛ *զ~\ Ls. SE9 .XmȜN?δgp*O`s|z* E` !]kL͞= %>YT/=:8¤HF~0u< HR[ߓǙ);Edlw7%q`= S:ָr9BUkQ[{bf $Ubpq Ddu#J}KJHc=`]A\ JK'#~X=ߖדHF":H 1R 'xM)ʩei\3ui', tV7b%l6R{ł S{"m v#"?C([ԶS*J$u_#2\&G?PɵA9]#Xtתg$F0aKHK.=In$*\!ү ~IdG|7[8 Չ*ć2 GXI]AZv3+d}4SUL>.;:Zv/Vn@EI]M}%scXTQovdHyў7|DfTeFv|#USlEEm;kPDM7gaM$[A7_$C\f vzK;C"js9!~-Fӳ{F!]Vw'=EI[.㞾>*ZJPZF>BӀ?eH9:؎RB$"n'F LRw Bp_Y–gd$E}yv4G^'(e15ag1/z{EkwOK {6aU AzC"HjC˹fqυd/cR b%l)W5-=ӎV1(6`AJqWjM11x[y[FQ*Z$iOr/,.#.pݥ|pبbZ? L7\8~ǂ:k2L +{% P.*hyC;fEu@Ӡ=)wQm #΢KJ(c/-;ԮGMjk78FodžK4U}}g4*Θ)(|i(l6cû('`8YSc+6<ܼVԈ \>_hRe)&ʾRNpcptԉ|%,ǐQ(YW2N3.aU[,Tdk8sBJWxuFʫ, XD%Q^ [9:s]4vJK 9>pܼF _ {إg~DC;yyVxZ:u ,5Ju >dHn$7Oy\S)Lb/n XᘻgK0Sk85ЛvF\ :eׯQ(!&JkI~\8[GRW"\osJ!YGloDژYhGiLL&{86c tb+t:9fָ@{ d ZV%ozxc9 |KghuT7o@]V32c έP@E'\ 8M=f Ē۪Yk Kx!qe+!ĠsGM.ž**#:[VzgzUj}DVné~uF#qgc}s}4r_UKoMl=7"uigՎ$(ކ~89d?r@&q 3Կ&ॹbdÇPIWiˋ6WYH]ֽHJf/%aG5f`pti4ۆC?7a/Pg}은eG/2e^tEe72J]|xҢa_Zݢ}B"-'r}亢FaL!*7ۭ4k?nl$p֖Kts []Wbobɂ*scL -L/Ź5nm٣:j;/]? ޜ)^A\CѿȣiHỦ(RN>hB l}m7^;s4W:|P\b<*~V<TtPz/jt:Dv\tOPJI$p:!s{{Ƥ.G(?M50>mI7 )LdP/V%Uc4t 6⟆uXbE@S (/vx lr~?3p\4$RD;sqRj8aF,lpP)b ]|jz1ze#^ڳIµP!F:}١y6E_Kw$ d 2*P'&?^'ɵn1Yh7Ed.dOEinDk W-W4?P_@hR&;,an= 5+ nwP52Gk u6"R:Zqr'npR[L֓@w.a'NIm>! !\a~Y2C (Âb9勈YMysZLأYTv /&3U#\ ]˰rl蚞7Ȝ%J_.PoGQ#Ek8]qO>d;6pׇ}~G\wH$ z&ԥ.9 |k Jd\!tTIhP+Saa3埽0UB(\ ÍǟjeR~d qV,>sf  ԧc<t-3iuBpGa㘼S֚t8hQ,nvg/ WLTK"PY%%\XBV, ybh cu-@/IidWS׶dvd>'i"&z6)͏>0(?Pj"N5DgpUI4صrS@^&- YIgOuZ]3;Lð4,r f~Po;c]Fn &og*޼银)c@E큯FB=`C6bXUx w( $7@"yo"j,{bm{]M',[a6t1,)ݤv)h\뵾RedX2Β`DHC(6f#U/P]IqSʾUNN%51 yOImǗ[;.W+;zWZpQ w70BJ,8oܧ)FѓETʃWD(`e?Mz}a{7'(;ũ͌&⎍ͭ"@яߨ^¹tj{( _Bޭnx6ҜT#;`Z՗BSyBJl J.g2fC^1|D ~Y . UW`zU- r>]pd#$o'֧pC-%ئTذL٣怛 ~kIа[R1k|)WɅOl\ǡJ TPv%1~T )LR,spu̺b^md#ӣ'@3a;tJt4&y#]S=\b/몃Au1IZVh=c2Bw+7!(#m/aȇ[c;n"fOh H'Fj՟vQfGu*b? Sq:G"˓7Gcoeǂ&Ѐ[QJ3D`ȞH?:WN˼ȍ3C"N-i*'w=HeŒ3uzK8äQϠ>%O4kgrcڌg:cΖCƃ/FDݯ2_>ymF]5a#Yv.MJ짻"cB-M: \n++)l[D5eЁ-8ȞRoӿQ?N1'|Ԑ\8{D~" 'SbAmY |v:@2n'Lۧoц+#5ܧ;U9(,); `%Ī=G}RmhInʽ  ,tz1/j2Z>"/0:i$&Jy5f"X粛>;IWg c@c,~o]dLP.>gsJ:~+M:4C/(;ѵ弬&r*&v;(X/k…ߐد}qwC@{]/V2фGƧ?;x[B6yp6k?X$ q@vh.ҐrtH|BƧ/T[QɖDL$Z0KLռqksU-OW)`ڗTѽP}ɴ4:V# 9#VyΟ-'{^ Bz+ff``6ם/FV b:MSg#XnD_'Ky[žĄ;D@I"(fD|tA9;Y9fn\)oEA lqXsAe [&al3.I}1e>ڃP4tE9Vj7w:&tBb+e/"%Kcqqdo9B鄺'ш;3i|}RI:**bzku`KM9iJT\jeu"|nMGCG$'PmolxGD]:Ya6NvI:B2K¼ 7F⹥U.,j"{ oZe>FP?+Ucu2I+ {2Qb|C\3 W;Ly'ߎ~8 HxjAc"2~Ԗ,CMZjOeifCI{E+˜i\`(A  iii$KiU6 7NC?sU+Q>[\%N&U8G3ЉkZ^xڸxp c 9pQ}zpѢXG۳$}b/{ghWD bȾq=!{i$b=F{Uuvo"X`o`Su,E(A=*#.iѣ&fG-z{Ϯ#ϰWBW7@wÅ(X,Af _ T}5^_,Df0zi:d@i)=S{hl[s!dyF˨Pr1s:|]:4E$d侐|U~\}o J) $ T84i]3 䡩be +K%UCE q923hp4sZj<_i5ݮV;86t P,sq@4y1Q(C%˟/xA8ImB[4Uv[K]%S.ˣ)'nLO_JKhTXjEv\E2jq\t]DUY5=iŸ[k6Uq)$^G9_i Aʲ%5 *I0:備^rBz}TȞz G`LMTxbc8Zr$nM/ׅ99}eCaӞ$c'lZhbc?u:ѿ)$Oo7<M[JZ.DNAy!PJ#T]$q< eh$sUq6Y M^w1 +e8qx$ؚxm7:'?i-5>=Io<1uz5>! Fol7FS3Y pI\J 8g(0^Pr~q@10n()6 HyY1*X QF޽!qc _Qa6ū{]-*z803zXfP3श@)ڝi8#>@4|=o4jRz}OdV7˦Ϣ((UִJe'jω[+"Q_+6s&PKLfz=DC .(Я@v;+FR! ˭dې{[*Ûu/ŢwQn#K&m,rs')LzUKnFSnuQ^xݗ%YZ6V͂d.=F/Ak@3~ }xeܚ? N\U'1ȵ.Ǻ]c^P,..=5J8aReV,Z od+f{3 b3R cj[-P)w#vTJ鰖2FۈFb-ъz/,r,9l?u|zZ飦NiKС&7iR %/ޫ \!eL M#&I"(٤QAw{&U{ KfcsYsE1Ԅ_SAWn/Rv%V-A5<(01j8F ѵC$'E+'tr]7DI_"b9iZ0^+#LmJ\E͈noKl[ W:) O{ Aw9B4Ky-L >;˽4Y2ƟLaKa+(F9$U!y;R[az7\qђ^ zur;H0ߋ'?Ȋ5=d`j-c9 ^\L aAQD"|N9(jlb,I.ZQ{F0Mno.Mh@Θ=j IBbbN9Rr(֤Mrd_בk/PE9Gs]7Q;z>O#4ÜҖ3mM7c'Lqmq"bCf2@1jj2YüafVޒC)4*j&:%}F@|'mQ]v 䯿$΁t4 *Zг8Azyi ŵ:/66<1ܹ _>dy/mpxASMS1f;eR5435|ȼPjKTWax s"TG̣y y6;l̶n% ؍眦\en.rXhˉd is `OfpMqgv}#b qxP'iqfA8b e*I3a#h/P> 8)֬:ֶGͽ% o^!O`A})(5||!> .<>u$S/'xםytF"$0j_隺,-TrdC6JçХTiј~ƌԡ{[1驔9$s$+)*x4Mv/'|)`\$.4õq%ʍJآMv9cFn.+סީ(9 /'`ƂEil}j7`Y}F )~n(rTPЍR`A_nՖHф۾+9kq^ʧw>fI+:#$]::Al.x6'Pr5OE9:v z#31iʑ(^\Ix1oPa5$sĔs(92e]'zC]4V{bOfv&> X&?3%]._k)l=-l$ Y%+Y1gG7iLVk9ZQ7t{;EqSe!X )o$(baĕ*'Xxm+-Nr)!jJQ>WЊ{g,_wf#j 9y4$־o^˜!D* ROqU>!ܥzG'u ܭUx/H7nzttd YbaeZw]KךN ?÷0i35 h~zQN*/  $5DuQ3~:b8U`xop97upʂ>/iS oa$K7jYϟ7gQ?P@ŠDHzo`EXb/KVPz;cT7")9YJk,x,/sҟKh‘Du4TP L8~2>FmL[)Ȭ ڽ `4(=64Ei3 f$J/ʍOe!YIVS=8n $\-&(bvIRԸKbzUXG2>^8 .-/nС pTӊHMfJ!`"ΙMM:`VB u.ɏ{k"? 5O vއXIJroxݩIq۠[6_rMr*jNTmy|˖B˧i&SR6+j8̮oInahexBKE{k5X_=B73/KZFXHx4Z;L[x:iIo?y[zHSބ\܀ڐ^'X} bR/R!z}hfЪE@3 :[hH]/%1\-% JF)͖==؟x*dR93 f=A[-"3g`DNE2B.!0Or" ok5p!`MY %\.GCӡ=ᇍzȪޤFFcg)0mpeJ@6 i܌\Z0'J:ߨ93׋P@[rf1XyB]fZi}pWͧg LGf3qAZyZ) jy2'DkoRLLlapgX!##0SҎ? (o mS&uGju*mT MTd[zXdJpq,.D{yohfv6QuȐvDjyECtFn[$8+#%!lD4QC`!EWpj\0qJ6vЏ7 Jt~P7/0-gP+HqS<Կb<AN.&qz(99y4vj/F礢^n(-aif:^E-(~,# ;Dz5sJym #WƁHps.4s}KA3d$KRdƽzmP@q ^Xn*u{zd ظd #^N6€uaՏzo1|s[XǻVʶl?ƕ vl99dv#n:zvf~Ŭ5@]j\ Rq|Fr#|o`rQŭHj0Grw&p鬹39bcb&K P"trяNާ;2aN~gW(oBcľ1h >/6brj|])N>]Z8slblSӫùȔc'1B"e*ُ B0}akUru\zH.OB of'K܉Z7G`QLXNV&;72 Kͤl[+*|H+(}影-$D=U@ʥHBEQ.8Gt2:_==Xm橀wEդqܿh4f[/4̧xgRVpc rjہ2#<,%z۸_RՋ2Ro<6cz=oZ06O%w$l|)ή9{ Yzi=5'Jd)ktz%9nieᛱqC1cMO}P|ZMBd{Q(nVK&;{O {4Xq>u [iZlp7,gk 480cllAvRH X!`݈t. ".*Y?Cy[&KNQ e)4`t`ʄPlNTL Vd΢c^3wۏ<u8Yv P0a.p| dMozDNoYߪZbRuIe%q XOxhلVNLzdb(. ^3rQ '̺svp͐Ԃk"Iyaq2S_JKDr,5m-/_1~͛c8{*H@NcO&cϙc;;ܢH狟]7m/\}He[& o㢤ObYq`vH@7* 3W0a=9/:FaR9'+Mm>˳j'_`?tVOn%,>sܢv: _egQǨ#&>H#NI+N&F$5Iy;+ʗW hyNCF$2xDӨ)&K%EPEPtlIއ͘P 5fW9qofs,HzṲ* :CY<]`׋>zNtヂ$ڀ=rlD8౽qo~wJDmWEHm2QˉL IVQ@Q:IqG>&[ۧ:.l Y~"Kl߻C-X6 >&}N>m'a%|ԭesóPTfl ^J: 5$n/^KNga)CˋM RRl&m +3 KqL #_[kjSC99у8XAK4Õ]}a61LQ'~31}ˣחysArX'PJ(|mv%Qn_+S1_-1X鿫?qQc | oA0ˠFxp=;hC B(hJqZ!ЭU]!F; 3slU|HR5MnވaA^ ^%yI!ߪ N4A) HqF[h) RDڢryKPoeA.1e&s@em;F֧H ׹s@/%Bfݽ3NY$EG)-SSjO jO{焎 C` =ŠlFՏD+XM&K PZxk=(YGְV95 O?de<[Z[Qw2FzfK qgñ䳌W^PR0;yuČrO噫!w:WE=sDvj,U3R? k-Pj-7>T݆OA 0q93Ӎ:ܙo8<ͺ/2A>֞&HED.OgDحICTSH)KvS>qP֧zb֋Z{4~#9Jh. FGʽʝ]+6,<e(!$łe~nmf`7I oY^s ~ҙ.5(5D's{qŌbCMG Yj!ػg\Pf0^d'J4nM8D#hsYNIVO׼ͬ0߫ SvNi4ƍh8[#gԦ)K4D)9Kdds>MQu  zn9ky[ !!2K9OD0T$W(\b"C_MsD9,1;EJ S<+1vfshb/[r9ONsm+jn9EY`դ[._< &RLM>~Mi.cFo%ޥRb{,vGYٝ,s)6:t!KxvK/QWDZm  řqoh Wol~j<BSYe Z|PhɓTU$ ޿+jU $~x"#`HEf =Je!}=s0%8u"1^XHכWkvaPrד@Vet՛Oa8U Y4Fm#odqNL8$k4SsX@ ~j! ژE^`!2/LRCT"d,}m[J6ex GS%;Ȁ`ȩW]gF#=-Sccit$YEǐQ@aHIBAzr%4)Ӄ=r{) c.ٲ;/6CPwFԆ/+P?}%ڬ律L'L/ȉ\ :z!C;ꪊX_b {3|^ Խ+kxFÂzVn;K8]+ticsɖPX_^ǝю[lM|VJnY Qc^P/3=cTZ~楴ɝsB$+i;h@Wn4`e j}L9-ÿ$-S<@3J>j !TXZ{5KCM.ג|]=%Z!u7Ite\Idy0?W`%sSaj'wde[o~|4#` )ósOU= _~A]N!9ÞӑY]Un Z $EBښE:^e @_YLK{ GZu#m JF%-C҇DbnCwT]sðʬ8@Sp^ɘ\cީ#u-;愇~mfW`Wu9hK0{=5Z`&uy5y CymJqL"㡇!vbGNŹeW탡-ɴK;FF7R}7.:f\P e7ϓ'\nPF{đ̚r@rjd)~w]f8LXj*O \51UhYႃst[DUt0 'G-W ZDη~~d;q6zAPq(zWLsd͖m7ry)cFv}6󸺌1OQ:T)ۈXllY-(W/ƘFXXWzsyWɔ>_5k̭E+Az`1OReV l/hZkҐS!1M.>5(yvڹA徔KtH(Nʒzt_>YwxFSZ W3r+P244!0Kia%ˆH7CY/~/ DF-g@:Eʖ: A4J POcit79MWb9kGG)A-/rȍL1zm6Qrr%8d9ҳWZ'Y\ʰX@AJ eܧP0 \;hhlS[QN9|JvFpu';+ijK+9 .q˨6sr9#䲈i1)3M}Y`x@?vyn[8¤/.wjŊï`(Lw\*>c߀!v9pI}s>H|kOX|uR 'Hhgv1YoO 3vs8KZS яpМ5&\a>%vjٛ]GS*b{̌Up妆H>9axFQNȨatLKKPYF]1NKŔ@V@ {nŨk%vZ1:E s}=Bmoh􄑸#/S(1>Kt9wePbUW~BCwx *SÄ}͖o<\TvƐ`r0HjDޘOg v!~mA3)x; |v3(5 x&OWȑMO7ƱrL?GJQ`0tg'dP=ؔD=XA[ܰyT#^~,Hg?i$H,DWOSS!;Hjِ B9e#FhS AqzKn Q~5 \K4(on4# "[ׂNDJt%Հ$R-::w[gꫦ?|ZUu쾲Iek */l;C!IYja<SHSx[X4FE6A8!%Z^LkwSç::FiM&$ Z9x%а)~uFDjzI~4n]g R{ss\pQpT߸"f]-98u*NbB2aA4YTxrY Ǭ66l(ڧA>$sOdl*xy,j mD_wz37Ry= m֢_%pRḣkΝ]=  ' BVW(!Mq 02(xG^JP(w(lxEesU5]< L"k:u~8+Ӭzns࢖镑3묪')ɖ4ы[Уo|wO ⩧UHggV%oĕL&’֋q3=~J;rݹp7v-o`aJkfWxyI~_ʏ{z*N|Q Y, #^7VB l2oȌ/ˌ䥞٭jJ}o}FKPZX gL<ڃǀ;l+|@!oeBg0}q(\í9Mh{yR^]3O(6J> زx@%(uInJg3H N+M0<`{wV h;I Ů[n2P{M),Odzֵ u)?,.ykfuHFnsi&T7bH#U,WpZJ-EqX_XKݕ蹛Vah˴ʣB1Q" $b){(20(e?ZJ{uvd/NE02,4/m?5?ͩ'k)z%' Q3_cGNǛk̀"l}kywUz4(4t,4VKkƏg(8Ӣ .`z =@}TKI~ŜN.mxwm7-4ZR[q2]VlE2^G=ky([-\}^PӛR }ԘK!y5 0T$ TY݁hQ"{_ X(Y%h#R:Rf$jCkA/aR-U8a?Yr=쨜q(Ņgnh}4o;o}GӀ]ȓ|lƛ &M˝0NN1} h?&v*= ,s'!"]m5{Pgxb|ccFU|yТfa(Th/a0Sn=Pn);T`؈Ih-_\ o7Zhu,#*';3RbR_ D5EE^FڃkKnkÜD\&_b7z|Q'P W 3_En܇bgAu]@mv֛OEI/X|3JVxJ^50]r\Nw ԉ(`.Rr&>dБam_ܙ5-&40H!ΫwEZ3c*Hah_H!`3=&ap^\mbj*,5Xn 2H^ɞ=rt(蹐"+Gz4T`KE:}y_ړtcL#:2Ax2*aJ!{j:DyĠ4+˿}F'Dt^A4yz8E( {D.J@>|ԑ0  sfT9)FP<兼f =A6:]uG[N7֮G0h: <:y3d§(IA%W*RW[,aѸRy2 Fg9\LwhoNjҙI K>?nj ^Bxt cQؿ^2n+>}XOT Fp9g͔42x(rE![@#h `X'+Ѱ4CiE]NUE~uS5;q|ÒjԆM>(y17y(,}Q7t8Vj%Gl9|>>x{Q(v*H5~ҳ09SiC6Bj9^?toP R]څkTBop)jlBڼC0g&)T1yl摦%=4 f3PoL +l0o8/V^l@yD7Rz3툳i$rbߜ˅%uL@<^>c̪.f 61xb<Ede-qtikMWqsA\>Soϴ7G\ovo "I 20P^*x#g]1HUa8FE @ E5YO/cHVMr3W= *HV˟ 熥\GGN5EDJݿ w}v m+E8SGHq lvݪq6( ބo^A_yHqevvw{Ưt WTFٱcH$౤(d<5 % MQS[[oKqIr`?Ť9&0 K1܇:xwv·,֡ZJ%V}l@ŢmJʍdN1 ŖZ)!{R4uqREW!V.J]6s*:R)G R0*u-?ٌmP{SN%p!6KF>e &9B)t9^J/S\bCe{hQI UWCVf%laKi-'10h'kx}!+* O_ L9tw:Wc!+j#TT;:.yU%N\@ C@թ/*U!S >:U۪2!C;yFV%B;AxTfuhb@שaZ7w! ^Z@SRȄY-NEhRZu#"L{EfcС\ldJzwt1)yY(l#T{jʙ$0&`ձ{5VJOA" Y zw#1|`s ]t6sE=_etネ(!A"@"`}}$dT:>y@evcI=I {uGQ(t/ %E̯ nr\M{2Դglu*/aWd@&!opCq~a.Ezޭo,%XD{ڬsY0EƮrI;hpd\Ԍ,qϓ6g$}j yr3}^rw[5]̄9b$js T> 5et+-YK&L{" op`@:[H]Lpcj7;"m*Ut,slAtOb oHrK.Cqn(pj 2qԶAIjCJq)-X.Y n8g2|>{,1tG*[>=NXyԺkqNT|е?J?R4ͪ)ZLQ~NR]ٖ60b} x_Gia@䩤>@¯HІUV=7Czhqc"7,;z' }{JҀ鱑Jhw9jUnNГטi@L`T,yw92#~nSޡYEoIcTwQ%"(rR-)5vLDj/]ʜ,Rܕ2Vs7E_[#Jt>۠ݽ3oF}| `Oy]kw0Qy%"qlB/C`՚=BE3YYPCa߄B8sK@C}qwfjh U\|{XMoǀK|y&ťL1\7Ő$qhRX*lWCGR9 l",D: Fr@-]ξb|/jWLmI)r zh)\ ־LZ֯RK:X] ^93NRz R9pH4)+thMYM=oUBܣ-tJ 7;GQ(-E-%}ޖY]s``kB+e¨*uKq%)6}: ~ѯ LUvY8z7ufީ*?oيl02#<94RhjF9IK)}ObݏFPǂm 6v|3wcmyJG{wbmڜ" 4 z=fN©{QJ~BkpN|k6&\+W]=3@FM.ZT$0OqO46 -#KE-qg3~;6mA{:i#(Ͱa#H\&VA-RdC>Lpq?!yb?+GY[M{ǖÊ1{CxuKn0~ 2Jn!jUVtPQ*:x,b0uQ$ ~U\]XKs:f0`V(R–n,9Ya "ȧwQ\>UI׋۱^OLaѹ-!̪׏of۶*cV9Z˓ ]u bb ,}e SiA w燓, F 84g>Eg L;T'{׹pO&-[e '{]dx1H$ ]"V;Y*>tL}쇙3 _# .>1:.9FXSGo{=d!*պ!t+BɒfuK1İ@S%ܡ{gG Ŋ!:Jti{"2|*\RT}{yadz Qׂ0bbH/?@DG898efz$"Pef:_1&2][]A[1D~^TNot/VJbsk8xcZZyܳ4uT:۞N]`4E*g}lKDq2F0F]F>]Y@;1\}J™dXD}Xje d)b29hS)IL5Qeg|:ZEVC1ȔgW;\y>nz$ 0Ęఒ?]VSƢE,Tד0B'h WϔO@2|-ЛI潈+;O";$9[LHc&%( l=[b?HYŁb?cx-vq;ͅ^ 8,2y|511dp134[}Iqg?quktkJk~XDBF.UImSr/Ո;>Q[gi$ 3ٓP / ;U9\@}z@cYM#R-B.8 `_ RI+=';aK:Oߟ*ooW9لr 6E/To,ƽҿ'k[3#L^?O(n:NxiUivJ"3ՁˈeAd/LtJu&.q:JZ),dQg+? 0.E[0hmH۰#sQp6kf8 hh\3!M{dEcdXqc<凘uI49\|MPfFNN?e&ѫr[t=sà$ơ؇EKU+cy 2=8o6 +'-'Q-c(U7JiZ1(W.QwlV8al ji)ұ"]"PbabQK͂ M7эt<K(̀n\ƪJK)Ů&.D2vQBs @|r+w[g҉VL*S4]&ZJF D>Lԫ״0J lkZn}2{]~ĕ`*'cg쎒m*s5- lf195Ln5$:jEo;g.faemuHuȊ6@+5ps+BB5Up*H|ְrA"ʁb)xPj{98h@_0u=nDNr&ֶ@N} |PyHN{B(~" S ՐGu&K#\&ЈiG8B3O2-' %jA]&ΆR"طu7M.5[Bc [N'|)V~L5x *8.]B \R wHkǸuK.œx~=qޝilQע-Xm!nc@noti;ɻc_21S-`rzk]వ. &뻅p_Bl G!B_ !azՑʖ VV9Lt%tab?R24 QQGpV #).7WcF*oޮVi *D4q,qXЍJUt9>`g@ј&08Q.hw9g\YQO^]Q #q]\=#y.TWrLQKL\4֡v_b^cX98JeĄ 7 )QI -w[Ql1kL,4[H~×3 8-k<%R\B nx5s+R)JXamjHzAE`kLFd;wIYs; 8xNك Cƫ].:[ˢhDKRgP+8Ɗod [E2[P)9q ">)a.;o,`SEg*-2#3fN#Ys'ގi,_`L҇(4X(x=e*8-<FG#65\du^6IeӇ\UG) sP0}k:\iO)@' J[} qm3bQϿϨKn-k՞M̓Ɇ+]X0Hg"WY{rڻo _[9')?g+E= 35[M? o /ձV \m~,rGJhQCAa[1EFb>rBumOoag'^0ߥrXĘc١u[~>}%z.wm>7ez28ŧNKe -3QzҞ* 6A1ˍٚB= MA(~8uQjǔEmi~ g6@$&j;}9|w]$ K1|`bG=‡ %&lBq5j%USnlXm'SFޗ{A~^ 4Y!/nʪJY|fXlL2˥ԈJn51L1=@e7!)>Go |lj1WGob C QыfQ8$Ak{lF]ߕV%y$}+`ƍ40Β~PL.t6o@LNgeTmҞA;x0t;(UutQ;C 風xoOdB:~?! [̓l ds쑅@oފ !e%0C2y}.!vщB#HEf )^'^-cd7fG:"[_ U #Q[؜2Et,OX=vs:݌>U'[-yuCOe]N6ɔ& n.:sHMb߬MX"t=y`j:Ī-϶ҸƸ qb|T-zRFTO[;?0јBgK0Cb0!Lka8ӤiSCb@w28\1>i1$Cd^)S|塞z$+GfEK7ݧz }E%`JJc@)=j?yzBlYLȫjȞ2xz'|'XvE'hdgZk7w(x= $(ِ3}*Aj!Mh]wkUGԮ> $\J 8}ndZd.9/sߑ3 ObO@gU/i1h s|ö;( !̙3;%V+Ԓa/\ uWAgBBKdQXsਂ(G8C+|Y`K̰>Ӭab{qs^%T9՘OcT~ n/<~+Yg=d4xbT $6Ҧ #yKC~rh6<%g͕k rw.k q))X'KR< K5n?:^+n=^Vx"f{p|H9˅_X,F C&N_W D5!sj~wG+eqs*;<@^l*O cOx hgV(ex'^ jn vV=po88rGʑ>d#$ ~tÔBkiBSUo ~UδI8jIN}Tk!ҠULv_4o(O0dS@j= 4V ;/۷|sûj(ݽJ uY*ꕍ{zx_q=F!jAl˥篂:=`A ֠J=[6WyeBd2{hiJg! E!(^MA} ];C-LT㿑-:Y 2BCe.'2$瞌gK3F.v6zrh;s3[6dTz+B y٬< 6fEH '-ԙ3d :fPffkX=QBnsm/A.+8O#=GS[> !{kζhҘ1}TTkusnouZV<^ѲԨ!̔!*D!n6&k^⸺ zoiAKY"xY>䍧 t75A1'tŧT3k 6iMuQ,ͯ"5S+FBhC`Vo)qJ:#D28dLk_XI0o̿gc ª7-L0M/5E.-Zqq)]ڿgߞ,ٰX|^*7kT Q 9!au 쟵)蓏!]%?9\| O^jS_0W=X8Hvyd;jޣ`cr w?‡(!rqs0<0~@t/{ۅns@n[-T)YN~A :X<\`:K[E?Aahp?*,M#1\ η6y 0k*uu rv O|ھ֔lԵKZ1#uhfJ1H ɀ 5X|q8Bzc{PɌy敶jOk$IE=!_̐;Ԗ3=xbB{rdžt~U)Sj(qPJ9ɢna7?QTǢJgdmꞥ#[%Fte^E1ȶ<]0b}a` 9EMCVW5&v3#cba\펽ǥ59@^4t .L`psPԭ l~%؏ډyyh#C_`{x#=geD&hqWDŃă iPAQmLT("u&֍)T:k8ux  L%ukIhO |M}:Nt`yΊߦQgĆ┚1D WH ̻=w"DWb &ujg?My4aDҠ A?Rv A q ܅r?a LxU3 J!6 e.>Դἳma/: rFTODilL.5X4ӄ;;"ǩ7x"[Q ZZZ}4S36!HMa[Ew9sF9{؟2K %ŭE B4|T+VkT̂.)p>}sWv*{1CE!J Arľ%K>ȵ),>ӳ+}fWs&9\Ko_=dWyQ|^ =:z]ӎwZ=x3=+XRXkSґ$d̨-JraYt#h١FBWX.rUٽsuwR e@M KίLLS-8PgK#"vi㞁(;Fh\I DsoˁD!ohɶ֔#9ڬ9/M/ij,`uDm[z4T& yD0e(!^Xjݑ YwwԔpƜ6 # $c5}jlǤm1{Y*=XKƆxf[!`0Q ֵR{N8j d\>RZs/lӦ4!hAL8( [ѻjCu=AQ \kX>=w8CLۑtMؘ?3yU[M6Cb ZJ}3sϦ6fh2{l-3 lzt-x kϠ+Ww]pδSl?a7qrmڍ鏕GaWyT,֫|<4nr\ ~#,jDK<݈fJnddF~<МEb&7z"mSi]; ȃҮi[u!<\Uu ! ;2ua: 9[r=4hr.^n'rYFpk@wQ ,z㊅t$ok oo %xØg0|7tE(^_o!KWMSU(jm gjrt:o:k piZFL`Z4VT[)@CVGTopFY|xL?rTpʣ -.X|̃[" O -{D8ŰzQSr3%|povO4|3&o8X6͟*|86Uc͛â I*d.&Ua!:6";OZ%gBV|@ `"@ER)Ɇ?&k#ӑ젞%uXy0lKR4`y7H\N2DB4ђ'&0h:? ~PP _otMۅ1Z!c%&.4y:е Ps/fw oMU!0Gi-\ _\oSN^,z}+nƁ$i|z ? ynj vt呄z|p&۪" @!G+ݿ C8kCh>p'GahXG)x[k fŵ/,z5v%Y7|'XO|?|Khj;T;fF>>fXxjohrҰwx8Xt2SV9 iѤ{ h|%yX^o7K9S$P146kfٛPx=2`ZZ)9k4;IeMEF&:?xzĩi9&"^Gd.Ӯ]^m,UL[7TdFq{8^:I޲ yn`@W~HS]zGo쟟[}:Z:k܄Ɣ;(0/C .3[uyLC֓؎p8jhb_bQ;`(}*-@WVu ַml}vt MULiSe4_L밽Oz7bfp",VUC6[6$7cJ٧ RT9Sz*@O|W/:-:L%Xv Dێ}gNf5yƻUί&/ȣP֎Ad*K@ P튅Ochsyjd_romd[~䉹tZ+gzr(d;$<#GjV:t1Ok"g)гNyQt^+C a\oS[G]*PwX¸`k8/)}"CX`]Cڟ"gj%yр |2cҰ+jkJHB[qa_>spu kѳ).dwjҼ[FUxZϪmvu/*Q )cˮk~MZ<'ϔܩ\ ^$/.A~MPʁeQDŽӚŠ\NolG!y4,#ѦVJZmF}K ӐBVO~{Cߑ[pEmR/6iK_=׊D =<)T;pSR3#CS!U,كJǒ1_WJ#>ݍ,*^d'|쀳# oy@}$חK;sTF6~#('() *t 8t|)u*{L)zlW WGc]T+['H31; ;I tӐ&K<н9vFz. 1R,ZaPB~px)[jEAؤqB= :j͠"!EEz^Sg N٠6+~ẙ}Yb 6eA։`QH'&Jvt#\#cI(k\Kɖ~?l<*Ijjk/Bi{7ˋI=Gm9G)=,A;T܊eyAS 9yzzҷ*smdKUDݛ\#x?&$] `9<ܳ'\8 i뀓 >bc+@yG]ru~ (C n(l4i {?) Z-0@evpsXHgu |&&- a&p_}MruhAhk??1 S7B ɁՅZ )'ڸ(5Y,L1O@b[FVčh*ID#Kzf{n.7cY" ўD[}{ra>O!y3eq\5lba(D2_y q/]Il\i8w::N-AZPZGk˘!@* -wѽ ܮ]gލ(LGI U#ELJ+d!o^ۣ932|kW/ۼq<{p;1_K 2AGbbŭY3@dF1J95齓bvu4kv:|,fqxXu%qi2 jk?UBnf"u9 9 rs r07fin(hU̷nۿD㇦t 9Fs ȍƊ±?D !)B: +ףhwƔ};D${&ÒYic2 t dyN8+L`l.'m4P\bPovL.0(cYYP|$ "؛Lsߗ(={f+ Z;SiF%%ٖSCE< (f)ǿ#.7uan%@UHe4R0JkҪsbL=HwPU۞WU0W'_MuU|[ɛalbu(y,-ڃT2)$(]̋ +%"'pψb H\=N6QEk,Vմw0p`EfVO(l8HXkY.,$K JtTˢ cceksx@Q=y&e ;%oJTD0a > `V\f#"|_=Ey&nJ84Y=J+ ONy%-uqtJ/ &(At owV)'s~8g_ #dt\}A%wJwQC soJ=lHy߁ @jq!V"O;Mh/`؝$/Qi:!#yKSD#b 6[mM d]Z6吝sDE\Me+WO;}/C#d ꂷr sʆ+Ej,X׮ނ5ٻqG^ߛ3X!D}^Gx3C'+@QL鑴w"F)p):$+7 iX=FFx>d>vAWT h=T%+6~"K*x+ITܜ/m}?Yp @=Y`׀ BhZ7%EecB)ET憰Nt^k4NQi]<H<~|>jk޷M\[1+OIލ( dAG=`&!٥Jz]9dz2'}JymN?q3Q(_rs~|~1>ɢZa{>>lJuUЛ'p2?M)%@> A%yr*Z9Dr&"nc3ꗃiHp )ϻdֿ[%$g%f4 ]Ɩ9~b`'jBL1P@~( j ??$_-\ed;Ev3Kr*!;IMm05 j#oԡU&g.,w?f'89DI{KP9ZK(.OHf4l!DE7X/(DD o]ꠔnWW.k>UGaAwS:fL|5  O87pY`eYdG<WKV|JY; "8,n h3K`()-2@~~lT wBr)`f|7U48s &fTVR l]9t~z!> EQrR~7'ZiC=?8U gTt2Ja׹0܍ -H!)Hh2w5l02I{I`) úɝ/,Ϡiq(]Qţ#B;(F?vۦBb2 MQVG!i,hz%'@8XO r(x])E*/ AB %5 ĎWgI-qv&(˛1xa2Fhpbӊ"?. OJ'6xxnfv %4b@fRĀ0rPAW @Xh*^70cCN| /}jX5Ȓ=j %p"Tbhĵ|-dV?3lx =0xVOߧ>6e'/×`\(pf>s>^ s{ѱ-.x]R:$5aDKF2K0F0[+~{:il4AQ_"V+0h۠'&U"CtxKl!.!a+Oe7 AW&q<tX c򸘖o*)88d8Se/},9-2֖`KQd[c\y V)8%婜?IvIE;X m2]Qa8륁pOnPf0Eu(UW|$)~k&Z*1 MF -(m_ "p3aQ=f! ! YlM,c!|ͮ*!'6F~l!|U5i':+ta[䖁&+W XzW %+q3kZP fb *-^Uۃ(8ݍ\} ,NwP|Py54]X [ࡱHrcгYamSu:ensj9r)Ÿ'?k]N.OP+r}NGc=T]"p : h/Z/Rˆknx(-^wфhJ0M^ C#y;^i]R!Ɓ21y#l\#K j"%K蹵B '^9}[sh zecŽu&HeFW24; cW\hPct}7>=5o4Bڥe Ăbω?ng6!n*@˖53voHnՂ^Ƌ1P4 LycGCgk\zʯBuci\m ڴ\"D6LUŃ0‡QLڟ zy湞ˈ^ _`5e .caEc(Y(Ok^ىheC3PB\ V պ :f0B:x[jj+EHDI/8hCFZfqa-"Ɣ5 H0: Uv)ԸmNz ^PVq.]RRVLt1Uo=k:nWCXkt38n34CN+ةRoyAydoT ]ж]og^7 Eq͑:Włو"q3 LYDZ0%_k}$ }?VEX(i4Ʃ1koT9?L4LQܞsgĺ( _(x.OS$Rҫg}QE8r{\q-:7ަLF'mQ}ծMYhן\-?jl3߀nwCu?"֏k ˻fV,(fgf݈%39uQh@fvIEeLꡩDICw9o0Gz~ZmqҦ䫻z[qAvYP\8o+eґ"3@XR ĺf<SHlm, ).2U *J"h.!u7>z'͜#*;7ų&'sW$^fambBSoApEY0*Pq3@+EO$kI䗌{X(m朹0dΫ9lG [ZÌse$7RJHgE醜'ԑo'adr)G+1if' 51g VA~& *u#?!5zi%2v9#Ru 3o5҇~Q\4 kyDWdGss\FvaE$"z]q@2PI ӘI.;mmY(J0=uzam bSQBg_.;HL'Du'suȗQ3modҝXJeItӅ>_u!Ynu̷gA2 K(g܇ø %\l Xq.e2KԯNg(p C]gP-A ֏5 fY(U ͿO9>>|^nb/UG~K8CsP2CǖWBDC 44g@x^B}! "Fr?g 2}V{]KHM ʟKQZy4$nԗ,s9K <u']d+hXIn*C\Vc`d0iB13'֠S9j]qbzKPƱsVvjzb/D죒'K!; =Kn{nQfvZa.lp{_d8L. y\ [+`v[~euKdDn[Ҹ/lAX?E f6fʨŦ+"ơ )\ja`'Bhq+"1OSٷx,/"C>e=2Ϋ}\GN;G/֮!ԝLi3lkTKjce%{re^!Xno nuI-pæ==uslWLezUULg1q,L.;J[Wqв}CqtRUʇޕ ۧo8 W+ v὜T՛2xaMƨ>ݧ]yu]H{-}wg'$+ʇg&zp!}4nR[Hu;2e@/ltXk,a$\mYE:q00 Ӭd) FEbξ‰`2vx9^jQc-H[[&b ~۷|)'Ѕv}*DE&[Ojsb(Ϩ8q9Bos.*4WjX9Wb;\#K·ـJbJs L1m^24}MXS>wmn/bYn̵Bl >#U%/v26ZNb,\Dx"p ^/Aw{5fZڛyk/ԝv8S)g}]MtG5O"k6o(|SH.qBXtz?llp'1ƛIR^ypIdlG-[$!*ʹB6!luv<~HëG~7QF)'~ZY(bĻCL"9LΕw3 aR7"{"xI(ll|4$]=b?bکcR\z-~&]!IJ⽦EHfN2!ŤPteW+-T9$:gL2א= Aݺ!>hL4ؖę\2|ylyda}ziQR#jj~8cx~4.ePWVT 7ethr'@V z MP! 68$[V'۬LJGe126VĥI0#iR^W= z gP)S`~SSp H![OGFs2I ,bSM-DmU ֊JfҨm lٯ$JXk["Q }d 6{_h j Q)c>D$w*Jޗ[ ϫ99)@GxQdpGi9q֝FaH&۹w@ N>TƮѲ ^va1Z@"30}3eI>d/Dk|yK\;UPvS_%TѾ=3iW;gdT )餌O0]/%3|S~ o A$ @+Am؊NARo ѳ[S@u8|ꉀ>d^dޛ05ݑ[@Ari/nUu՚4=]idξ+6Pvlzr}Pqgl D?O#fhqlJxiUU&s)$Y]J`TW%\u=At{ @8<7 r v}ME~.ͳmXU^J޽4R{KmUT@a:,{ #du22K u͎#`V6hn|/ZIkljLRUҡNٷW+^ ZWfbɝFƆ}w$.B~nj3 հ"T}mʊ0c@ ^v'`v:0o;VwJY- {xzj{J9֍x$[>./"KUز.%{1; Ý.U99>}1 O@L{)[d4ړ:a(rHu8ST` Dž ,}3M)ǺqM&¹9 z{SG5oޙPth /HOrt 7AoϘrO!C /Ǫ3Q ICwU.3bF,p2q'"쮙#͡絿諐1 PySkrѦإ݂\q=`tͩORsM&ҮqLr!{ {u#!F!&z "ivnNxuQݕ`ΜF1^KD(ء2z  ʆ\L~Z 0 Zy&˴ӏTy@qv@cR 6-;CBlΕ%DFɷ=J ې9;"KHJ I9WpԬrH$kN-iB䫵-# >ט<[*kiZ/ 3ZZı SnOָ& Ls0 y@P;X(wA,<&Ml)( )f!\ø_AÎ+=ȵ ~֮ ^Ӌ*ÉCmcj0?N4UcuI P"g'ܦЯV#U8<]c1F_oWA@|R{ ;xБ;aA5=\:=EHie[]o`"rzj@(r?Z6Vip bh(DWc; jفcR lW/ jʴ/23}Ģ-݃E34 ,p#Қ}z0ӕc:Zˌ o 4 : su%wXRFNxnLejeRѿ'鬶۬U1Ov$2L=jdhTZ8%b2_X&.@ch}GxiR=bq֑RY*U$  UˈTzlOYKD6潔3F]0_ mpAi\9Zr×Ph\Sp1QFFWk po;rW'Q,]H7\LTG> ׂjU~lV"HzGlc}n Bܓ}ءAЮyS1nX=^ \4]Ցnī.eAQV>b\V7W/"rOǕmE XT,l/:/8vIƷbaɽ5[#Zt ,-<Ჿ7>cxъ~e:ΑeӍJ\ԈDœJM8Ǎтg)I}|E?x;)=Zcز׾4_P^Oba;l+mvm+OX˷?6 ͷ[`\D(7Osg̪=Qw2 pqa4h;mNeb֘9fW;XLt]=R/K9zh 8iylP?['.?uDB+8\\lH!(u\)N e[ЯE YCЗݱ: -MS0 їH[\:.Cck%r*<3fM1-1;{k[_[8I_źF#[TyE{aA[?FO>~c>*ޓs-.d"i)'8#ZaѸ,x_O\ NwA4 a&iIGVKk QOyڸv4)󓪣j}ޗ®óNs>1V^IBx{[λ4W7EFgro%Qar#Ks@V_&~% S7ejό A,jwRǹ\欯C$=E^7Cl'[<]EhNs ofVJ^@f0>iDgOr@ G}= ?wljn+/쬍j,vλ?p\CIl/F?JS`kE?Qr.iOj8%ՈryUPjB'u`V+,P 9૑l-'"w9QOP&~a_tj#9+T7zgma_ J˱Q-7e9VB,QFU QUMMO0|Э!;ёr p^ ǰ6>}r'@#b U9N޵oЪnD{䁟7xVg;`Wퟖ|Bz$Qn6⣨siXbmAXi^CUӎ!ӛyA7 Lfq}:ƒ̨昵l X'4ԔH[G4my@Em^Zz ߱:sD  g2ȓ 6*QLFܗl1G'>1~E͖k.Jg~ jt`L{m; ޣ]G، Qnk^{:Fk' |gE׊gFiuNcdZqh'h 쟦bt.v5Zt ggcJfvWMLn8>#ǬsRY++"W hi *qVHe;L|q'*͡6^Ҭ0>|(Osƹh23 ^!FPΧxܠ1`/Iֈ|^> # "tn!6K~Rc8LEH]!5@W"pvȆ}-]k{ N:اTIr8aز+vn#4mS+a K+rD~W+â4_ZНzHnS >(E_=PqBK5Zvv`2pq=y*E5l&<"c[8dl8ͰJ=ThڬnkXT4`M>T}LHh&4] N[]tjxb50/@i흼)̿ =/M ͠xc[y5.!2%)^t7?E9>]bڔ7pYWZd21& \^ެyI">gPG`yK.s崙B6zn40VoC/|82>ڹΦLE"R7aNH 5̈́WֱYYs/pK 5Vyn'ٙYs+m%b;YѦvdq|g4V&˦T-0(:dj}FE )\G}LlΡȂNgq^; \jG7`DD*+h4IѮTF2x_eGa1 -7Ys^c:`O_iK_cZWb-&ě4f{~CCDu9k'GwơrцV. /{ܔk+n(0G<Xؚm6kT@ݙW`S4lcIXm&IeskHoWO{&S zJPP3!*] 1V;^YCR7SԿZ_af?.gNl۪*>9F717'Q{W]AwTc~Eר06 ͥ=5ۡqA &j{TCu)~}GkڷR`',ץJ]Uٛ#O|ΫX`ᒳ돇Q8:8#{ucgq#ύZVL 4ExLN%aH1y?[H9Dx.Vvtc%cc-%uxccb5̆X U:M~ =ϧn4pFoN&Sdq̛$(N<'"FBBe-Jo[L ed—shq1tv8>)KVl_1c] JyP :T:: "4PӃCJGr(dlb65>^TC4"A(NW9(wt`؊'8`q:q|kiOAv@j_@4z1spgk8*V]qz5lmB9?y3C2;#]Tp' 5 3Nxsӈ)/ P~3 Wb]ڿ.Wi?cm.|?4'J^u1a״%c%asg:"HZ,a84=k=%eAB9u'R%^5NݟVˡ?MlDq&WUg&W,@iPCqUr܏J΁uUIy@nb&}q$a5Lλ|tY~n`֘q-Ps~ˆpeMh#Mɀ(%{{(\,ҫA 1@+ $.JlM Kz^NB4Wz>Tw&?H16KyiA9VnR)]cN*=_>_@gtOmw}m_JEėEQŲ8=攒k@6/5g57$m )=hG~DZyJTa \6zxfJ_/Qlj!JH 0Y*L$_+Vr6[£{+B2U..gAۯE@Ik>=ub=v4ƜJf_ci8Ɂ8#^ %:B )IoerY1!|d:߀i~yr,ELLEx6F"*iVg Ss :⼓P6)aBVp"*dORY;82_I)[Ѿ{\#UD)ryKokoZ!o1ğVuVZNN\zy`]a-U(\&9;F$bv{0}m+a^N #iVTBBeҾZ ~@\1l%) =cǵI [{qQ d#syU-c⍟G&@)brNSakAMbn`eV %EI%'D$#8 }7/P8Cۜ5#{U#GZ ꒯ǒ!G{.6TCjb(pYqv % $(pޡdu/_>xͯT_8meƠg?2;o<Rs|u劔ȷY S8nGdg$G zkZ2 @Hؑ ʩͩ{}$hOX!`@\1#Ukʣ1GI70IoAyĸwso F|l06NaA$RٙDWlw>.SUh*ORXӢanS͜jUy681'*,R"4~SaM * 5%F`aSzz :bxwy=u|ŖP ѝ3ݠh@y;CF;܍O[iwXfE6q, ? ~*ܾr1d(䩧m#>\Q k'IalF*e*!f鳨>9mjnb/)W&$ 5nO7QϞVJeH}hg[n.: CeY-aLr‚!QNO"tekbq*EfAkN`\͓ sg'ےXz5"IP 92T $q1: %`ßz}QQyOE^80,)s'&ae|WwlD{݁n]75^oQle '8sE`+EUYʁ2P$(ߑ(aX}|8ekqx/TL6b g {*_lz%_%=}DQfL|.8}b-Y]"*.'7Q\Yv/hFR2#ܰU`FDw3P3pxO "B%XmVz }1 oZAbO)Aw,3 )I~+AWqG ΄~&Aٷl+4ۇ~ݼiC7Dbg<0G#0/\+Z{?A:*L&؈;?&3TM7Î9HT_fjbm&>Ejw_vfj;Au۩RA Z{P15f\fΖ += 4_]1"?kD'+1J;0ckT9N ߤ顶ͧw / %b0Ͼ]Ml.4r,'Q$7 .hqDh-!thĸ|U_uk@TJ$Xd6yܶe1zY `oP䞰u-o V䊉*E֡ߒEՄS._fj'"WJ^YVOFC`֒l/ [$.tv< H9QQmN~Ō?D8dm s#9G6h7iTgG$CtPPLWOuڲ,_ej`=o54SCQ<2(*$j@Z!1fH6$.nzO7fe/xaKrkP!%R|C.݉e(Pټ޻zm1'B׼NgB3omqS@1)*CHmex]{Oޤ 1C;`LDhu|oO~;6i?PVoZEmlQކW}d&!&9&Cm9E/r_nliZ^d't B`Z{h1kd ֓l\QQnIGҶLY @˶Q{!c $vl`أ~aT\$Qk;1rbtg |7V`eMF{B'8SsXkRG?#^xsߔ^mAEV=+ O{"oE5y@^{}`CxePKA~/0|])v7ڛq3Pb%76DQsѳ_5PFcӡ]~*[5R(4/%tk$mO0pla,axFVoL+à&)Ih(JGN|gZLw޺1,pLGL 个u7*M~2t 0ZRM9w6(ݻ 9si=῅1 UE]i qb]no:wt0`Rfl`J-4 iݤƄ;X,G 5a uшcq $ M@(R݌$~\$F*]ִa#jWU+a鐇 ??"?漤JV@[',wHsMWL7SMe}r2LPfH,nV2eOt]xk2<|c,KXKiTP&! ZfY~bGD ;CX<XQ jac,~42m\!7I6#B#]x$}w#ÿoR| cm dSZBOS.4TܱEOcf\E n>4p&,MyV'&wͦ *?%$l. @.dd(4&M}}q^G{I\&sӚ:lVA,ZaeZ:Ȑ.)UrN9mpԇ[,h;pV$5Fz˓(s:4YH$y`XQXQ9LM?7mugg02b_Mzx4=1kXgWkr۱eVB:'[RfMp|jt}7x7MB~BFFhMEr RM&1VQ0M}סlX zhNio.pêx}o#־3b=L]:3ejzb5iZzUu,d޲CWrVCH%}nS`i Mz}8rϵB|Nh(~r62a(;bSᔺ4H>ZsFHTYyo8'!ďp2MF@|Ar{燲(|l?.y_#28 JG_dp.oҟ;(s4);ҧM< ɒ6Vbk];(H8ݹkg CksV&2xJi٬Οɋ5떐J0ɓ[ hRⱗ6H׿nvԓxz-nB\t`qxa\_[&Ge<Ҷ$"gf}{|l+0g6_E˨`6XzTKEd 1T [9" mK:+zvANCaN^܈rSJϘOcm@K'TD*%?/HgФ)g;vIN׾ 6#NTm5Oxܽ*6"Y8ktkV][t.5|*z?,C]\FU家`TsF(K>ƒa":eJE!2N`Y Ÿ,YXpJpFУLoS<鶽_T6kǾ4`5C[/}D?Ylh8 t u@Е=5>S3-kR]Yq5 ZY{Ԓw< 2 (̖N͒O( 0Zݱt( 6BPvVB0WܛfvzFsh8#s8/DM op?WPvDaL)U7.#;: T8J[л]$",dM $z dp hiB&ǫ猛:~z(`AM]RTX8j6!zL(pkS΋yK]g|1Vz{\3n:U ? tup{JeѮt45<3zH$,"VȿlH  @#Ep%S}-4(̔wUIa gqR+ .\;532^^7PE'4UiИQvp8s{GC$|މE jckj u'#b_)KCa$ǀGQ bgNiutkS3ȑ(Q^mCf}n9-9pb'Cxg x™,h Oel~B/] G_lGA㙥bحm,.zk͗흴ב@XPSJ;!l9|Ӯ4I`^JrqR2*@H0 yoΚ]8}HۛLmy.G_ rKgaxY4pl?ZvTV*;=rMۚC!q\RP)Ak}-͖؂krlP cEpw9툼qO;k8 [??-gGx$5O>?H86 rQq!73NYޒB2C}-3">#Xa* JJ`)iqt#݉7`1@E.6?"S"S%۩kAcݯtsmz^\MKZa)4 b}tW+$l?v82 헕UÛ]ŽD2mLNn-S<ñx &R@-x^|δIYQBbZcѬgyEAp\nҐ 7/C̚»CTv猤)q=0|B.L}#t4kM`-fN>GYD*y4 qr44!u )r0;;C6?3`G=ZhKiN3%mbZV$Q/`D[3]Z%~\&Iev\"`wwq>__Yع'wXXNǏ|t2z9uۂ?9?aJ:˂~r4_<_f TamYۛQ>.n4j37DŽg(kN Qp-KˡX}y#wvФȻqwxx 3^) =h 9a응&&ekZI ̀H/cQN0|+JMOaL .e'v\&zK#{ھGzɱ] <Q7DoHvc]4;DI~E@:#3*nSv 7i ɰr+U,9 h.3yվS.t÷\Mfs'P[2864y>31y8^wݿ"y]07#ֽԀ/o@Vp Y}Zޚ}7piT)8=Ȥ+*!h#,-.S}1W(s\~u8tLNL6(m)D~<ுq<0KY1qmW7K2"(][]|h@botM[kNDN5j6eաbCEҟ!=]L w/^Z#xDŽtE֛i+EtU/=Dg5syάMW ĚB( 億 7oyjsY_iQ&O/}>l\߼ "?f8']a(l@V ɑOᆩvGn_-nɁl%x^ @ߧW[Za# iD,toee;}88ɘBQEy>% 6a A+_X7 ^F4VuQ`kAt5q;hN5( X#` ]W(nٮĽ'?v\ [86 \r8BƸ~U|b=-fDv $,{T J4`wg<o8&aL&wqЩ/ы7НäTOlΆ%NzJ/+|wޠrO9րxOyV0&Wa*ix'}}2S:w^.f j@xdST9x[%*p*O4h=ssKgԺzQ5}KuYs]؂ڹA?ڒ6G#]{3@L/@lg/fZCX&%vk*V\~B~NތKz>ܷFp2'zp}'&S` cA#%J<@xMX?*G];vk$At3K!~Oz8JK]D6SF xvx1?N5u!vg  *JY 0l%A=$Skq.q 1? #G2|h|Տ#~-3aHV>c%<:`=xS!@j%0z}նz^|:zEesV ,pEccdPrB؊g>L=6❃%?F1Z)%-3hT=BfKK#N3FYW`l'&+&@ 7e;sg^[ :O,Z'(#|_=,牥17xSC ^ܛj.-TR3<?i/z K jAY|% YڱƮEm&ZyAp~,dRM{m\^bB jUXƒ2JO| Ȕa0NS*/`'>߰/vzeJ ,g61=f2uAm؀%U}io]< PvTCdɾmŷ2QnW>sk{CX!m2=SƵ]XA@WHz3t3c[;"#*p2";xM99^–}q$*6j:r?n츊RWr.`[5@.~Mؽ]:M6WuO,XDV;00P,?PݸGtq;e]6oC=6mTf6tswe.QᅳJȝnԿbsZA;#J^S!pÈ\))an%<b5;A"Ѓp^6Y$SSPnAwɱH:W>8I&T p;379f=8"]G?C3M&-xoWE} Ks92sT PyқɞWꩯH' q@tq`Qs@퇊P,!k${Gv|fΥL_&(xy=dCՋJ)c*BQŰ {`p [,;6Pa<p\T]CT) צ]*VoM3]eNkȾ U S^'!XV4. 0^,_*"n<:_TJZx6Pp \K}(鏋}͑W\wXJWU.$q m1C,687D4% 7t}t:2yfH:Ysu4IvM{n%,HXQ}xs{ `NB6ŻYBIJtlj5)Hu~ͧ;> jQ5nAX[OL7{9\ ӞG2>P:OBIapgY+iIh6麩cV tTaim;>=ēMQ᳜%~e ,rmvPB"Dӽ8Z+o9wE =& Lh_ofqG=|NtLB| 39M>̭h9DH1 LG,p 4=9C_M *S;d'Ty]B**`:ehFʽ8xm@NM'Nx"̴=S0|PcЯ XGHAhחb g({!V,u@d%,z3Ԋm 4NU5=q}2Fƙ∸+ktwή-yTSx#A{o_ؼX 5\d_ =DV6zK~aE#m2Gкs_ a2NQkϱo{7Z{|D˂ rR'"S5XNW[cIhPJI靮< :AWBIVMC/ W#} !}#2环:g$jRGL?Sw)XJ俫 g3s0@uQ+XG'<\a e?>N9rc"ςJ!}E. E9XxePnQnVup8hk I%;Fҁ‰&@=]մշۼ}ְ  F1xQJlzb؇X B@[J槖lL#$ZmDv4iͶRIn|o=rvCnj: Sړ> dcbZ?iB^@ʍWt(FSW`6_ٳ"Aq7|BijT'l OZ[s GX¿"jo6 Rx8vb6xN¢ZqWt?>%8ЊýfSF?U-cT7pG5|@TIGGe04y[r,CaLq:_XG1Qh(lBDHl&Yq{kD aIXAsUNR[oXPPzUgm߭Vφ ,z kיj4lr>՟\d=FP 9 ['oTQ k+1Ed-)9\x3A'h5v2=04 ZlRt+PEa/ k"æ}==A~yk={,o~ַ? E$٠? &T|ln\PsH^:I$e@k8\DtgwPu^E$h$A],ti]"aY $VՑ"nYa8"V%}!=[#; gW >tn)@@DqC"ˆ\ `}<5{|1{e )|ܞ}b2W! Zߠ$ HxTT^̠26ـgO`RD=L𹩲@'^؆UԊ:¦"K5 Ҽ&-Ҝ[&^`z!̰`uUa :3x͸H Qlw]ˏ*)g׻92qHIu=W͜f&O amiO8_O5pQ0Km': nd2e܄+_UV\[BWQ^vCkxs]x#Pƞi^$?^ B" DԑX }}|!5_mm_ /]nT0/4Ԉ[8t[&4汐R{zͿrG zLCm[18SBT(;LȢ<_Sݦ[bH'Ɛ+L<g6˦56*UK<2SSgU/|?Pi3duGAO\_$" Ua)LpÙZǦ+Q2)\ 9r)=#8THЂ9A#rJ:`1yS"Gʮi AȰb^jjTy?$wRSrEYٷ>ZmYjK>Ae t9S>u nsigNM]g : E/j}swy di&Hc۰IVc9\(n#A^AoxE2H$6u^)@p|nԱ18Ջ9]ޞ}OUv &^](Ui.j'dbG)?E#>z$3`'`+¹{XҪ  F8ب#H胫gHp3'%6b,Td6J AoH"ߧf;J0wuRT qH0 ^g6C.9Z!1Aj, ~4w~)D)3im[K2G7-{]&iwיqI23O m-ܽv$mep__J]q$V4s.> hdG?plD2 FRm߰^Y rQD{>?=g`i&Xq4ءFu9EѥuN|(h+{NVw:QLjXoaMHSDYV0`°iH`ViFcb(D6{1M*K #f}cMQeesx)p ,q0../k+S. = 2ߴfubJ>%?.Xn/>׻f"0l˼ρ5j{7*V ӎ*&A԰Z}:YS),kԕwx ̊1A OSs8}>m]MB JT}@fӁjGhspA݁ -\:m4k([{&}۱88I:`6fq/!KS+zUfRt\pf~U=ntq*{8c {{)oW'u9`-6>6b6Y7iln}~4`5H L)Np)cn8`4”͗!]J2fHe`Wv`TXCMA;~x1|%x^#}jkeRn5gB޿wX `mTPNqWd[D8SfΥ8["qƶS 4:EP}J9.dQ8H 6F/(Z(C^}u }KrƓ6Xli?K) {EŽ{[fnK5 ?1Q:7/Fի/4YyYTq < ?aVKd\S,k\9zQz( X3s{!4eNGX%n@$ׯ 岮#M_X-@V,pm1J.P&&8\j3:KrMg &G{ms 埆%aPäD\xJ{d2ჿMU MJU9[Χ=^szպ0:.qAlC3o u$@kLŀ1uWg.#;ey-e!eI*kx8|Z0cb#\kYPp~;Wr 8#֑%\,\< E܄TIv7}u[g n?]@=Bx+ߊ%Z ^V'7nR2pi؆l û=*To#y`l3~pT$lJ~nPx ^nĆn4ŲjY>"i¤Owap*ZE*=>ֵʘAܹePQvgVs՗2>_gWXsXP[~1IJ2JŻ탉N)ڠs>J(f`ь'd]ef|#DnYqVUyYn:(wxX;AzJ!`4㍙8e IIC!>#lg0ee#)Z>v<,cH2ɩUmӚyNOk֯M !ұ|/ 0PϾmWnU!%#l/TN w8 OnZRn"<| Y{gvtg :WUE~ HabH|#JP c:fĐW/n%<okYݩ4g|ywppЅi~FSCR!n WlaFC܁Kȶѱ@#iy.w<)+=QEf1N2]aH q6 -RJ>M_4Oz:zxluCT#"22kx?vG\)q>ڥRPyjd+Zb;пFA<ۑt|%_ v# \~ޛξWuzwRqgsհ%a'|!dKsv 2Dy`R81giiw:ZNj$LuC*2#ɹ~tFD.{Ya`"RIT/,XIţ!hm@VQp|lT@h뜢^5e^bs15@3BSW՜~IT?Ch2QwyMz=몣I ,tL [{,g.F7n wz>G%{q@dEhC2;Ep7\Nbz dor_N8{R)ҥn9~+RP-~i`*c= ط oPHEe kyg1WGim͂):u#W ƒYpʏ~ˮ'Hyʛ1l ʉdϣcVj@ Lkgl_ߗ 6}RyK$ ܤUpB8RtՔ[ǻ wD^Ak0m^@?HX!"Zoe USM3IQ6R`X9rD{jJ= GUhDpkh!,d:A<>L*7(1/0mgj+_^$فx?c{9}PM/ppK*rCQ+e\Ë&r78+.r|e;7w޾ |k,Om `#Ί:YW<%.S+ <8*ok2ؓm/&*hOE)lsǩxo#=(e*4C.s5|WgX%tjowޱ}FA'kQOs,FN>'VNU'?o<8J[WR"@śH0u%m‚ݧ,˻Fɜ Ъp%f/[Ts4:,ǩR G\@k$=M//:;آ>F9B#9>Ȼ[ y%-|^DMZ &RhCnЬNMbwZӛck}~O{;ki5[?ΖJߦ\e/b5=%Eh.8::kBU'M6 itolG]Kj8I9b]ߥ<ʺ6m `[p NP@)mۆ\Ic+\) 6զ2 DX|D*̱W| b?uf@ @j }@G/~ThNY5Kvj`U8諱IͼaPFJ2y8A JV{]r135%_~ܯ-TB:2 >x Uc;0SNXWx>y0MPÑ{WћAqLJ1GUZ[NؘKq}\uquIʘߛp" tT}ݢogltiW#pތK*&@ X^W tWzvA rʻuM|0<7>K"?Mav V&j%1󯬀x{\,Vph%(&Ij䔫)c͌ f4.XC )f޾Zsr(I8T).K` s6АU#W-|r۠*IzkĠjHX0D1$zcHU'8 aSH?>%(S  V&ȼ&`D,qI!6 ZYB/2!S"/f.p d{2La﹒>䃜~>DBR\[㜘_*Qy&AlPP}465ӏ3?_Je&DvKeڶ, x~h\ᇦ= z*rznRei@&ҋ~H#iUmPMB?*H_;xp4>SSYa6^X.F*( @Ԥg1 @dZ}Zc'kBh(6CiwȂ|ʵ;/<0()ImFzk݀:&+6niH?✠vnm۟OC{ȴ*TЗĆflݣ/_svʼ #̭ i.:H:'t+)D`@yPH+%j(yh ?V6fذR̆wBj09vL-'G4VqzF dhe!t*V qx+Xo^+h.-4t/[:g8L3FNx.ƯOt`?vI;zek]K~Qy<ȃ@D7]f#ӗң?IWN9F5 ʴ'1`\јZ>ӹ á{L4[};A?.D'SIPzlsvmӌD"7E|tDI5٘^4OM#|H:zng %)#$4r"DlKtWLs͟({NU9re_2HެqȔ(w!2yH}?4y;ZX, hhi)4ߤHnWo;z^?K*nc=2`j "Ԁ ~ǶF^Pv9cc,0;6VƔf-#<\DS9ո a![If,4~Hcp.L_W.c3%2ܻ ؊z% PrOZ1!,4jrK'"ĮLvV Y(< &)QM#`j0"jK&,T{KR@UX4:玄&Lgu]cOֿٖZFIYAƧ 'P ps,~k^igC:1B#m/?" >U5\4q4D[e1e̒ƇX 07i簍&t'(̟7]aځ 2o>^ᨱ6YGWr9NLI_/tl-sP1s&90Zjfw;yp2뗦eͲGz1~@7g2/IzdLoLWx'"-SBȖZ;kKN/E.eoyģ=BQ|2le &IZyh<$n èoc(\^_ 4]cǴN8qvnH‚- |OwWϔs@6_sI<hzq69֎>goLc\=:W*E\w~FX@u3Z*1vUi֝=ɲ ڒI.7`[r.1D7}0Q1]$6zzcrۼnmPj7"@A  1#HljR0P:qQDgu.a֢7XM.kK W ;*ZqU \=^'$VJqRN=%@+~̟<B Q0hF"҇91U|8ğ=43~ƸѠ:sWE+O>t5]^@O@WlQ>(׌ńN;'9NIK]|X7lcyd~Xym1 RbuT="^pYQHH^U |V);gfA^QRGcifȩ7yOMy~J :D"0Ҿ8';$$!{`#7))i ; ^$;KLmO=s.CWOE*ׯsKg)BO6sިyU3'Yb M 3uX}fxL-8zmՍ!Нwй8￷L%|fNy9:3zIn rϹ㷜?@|̟9HBR_0D0aWs{?8{gCKR7W4ɽ;钙na#^Ұx}6ylR\| rW7&q=pH|m3>(W>gVx)Il,ed)P,g]}9]qMc765g2N\/_ +?5E ~p%s*A\uz,k5~o1`ޣ[9kOF<Z sm+lOhZ֠ig᥾?6A]'":x)pL/֜Ԯ$>SpiiX XpG 'LVŢyefg_ՋQWI, /F|\)&m00a&F&N t'0R׈y<.ؑq_7_?0hdLznz+HڡEBQ9sؽwjm`=JYK ThzL?yrйQ.?',C$|13kG: 2< E >8 V/dłfYÝ{ִKe5+1N 9aRt$"BI: l />k`bؿ&TiX4-> x9H9 5XYqL7LC5W.}?Զzw9ɰ <ϝd@{U:J)vdq-d Hdnoaybt,1SQdc~F:Ynt7-?-CB@V! 7;jzʪrH<ҹHAR—[Ƥl  u 2a]~S"9W<˚T@?"Nv ålCoe4#- KǺ|F i2/EICoi'Oy$D9K.^!KH1kA**TJqКi [Bٵ"Ǥ:l{De9['տΞ()4b!¾g+{+ Ona9A2O]ģku~0M/*2|FO<Ë{_^š%L>ZځeM}{q-s`[!o.:(.n3GhB!!e09~%&E@Ӈ@S@f1u5d-᭬=L,dEP!k,P{<%/v/q&L>K9JjjihߋݙL"`vL3֊FD c3[mv qx%˅FyU՜c@]Ud~M[P=VvjzpHP:^8ޠ q҆i̘9F2,I RI$P $͛Lg/y~6G{@[YC~^h-fUOڞpޏM1ϔf~,ֵ!c8RZuj`醯#2u-6?ەܙ-9xv%e@p/xhM['wGݾPxs3d^5^s:OAKnl ? ;g1a%;/ɼU0ֿygi쬸G{:OULWߏL/\i@n)ïf˷B"+s0<}v7fh;"OqbfrHufV1*3= \mF!1#Y .ԑپc"ZeX@pLDJ:{f+,@SMг5ɻDM/bWh3(}$xPn ic5f~Ŧ\"w٬ѾOS۠ojs,+7*R6\}w2AkY? TRZft O`1!9!Qx{0%4Ztds:[:U ?qZ ZcZ!ٝy*` s茊@n]i dh6hNm3SZZ[-fozt|B}N{b"~rwզ`†#q8~ @A C2ܓp.;`Y'5Ǯ4n` =AL!y i nB_2C}-Kc x Lbo]vy#g8O88&oLDVxz߻hISrxJFި e5g\{sVarlF)ʻk>?">`vP`D5f} "J7i#J #UzrD:uFi'Č KN{R`Fh6\.^qtEJl W|I9:|+vɖK$.B%o:C/oer(E@4Y)B/Gf ᰐJ< v?Yg%pֆlp0Ҹޭ c6!CWhľdN|]=*OiO/H:1v@+TK!.Qh1^Ձ 9u^LN&V0&Ё=)mnpE-Qn*1Y7?q`IL x+!"'ɤz|$Vqs- xJxtcLI-9^׳}mr;%XѮzhkq[vi:~.)o\d4I.Sf ƼM픓"ꖶu&ԋG0oo: =h"v=pVvSvw5HKm~B.N%"H1 mos@Bxcit諒5Y򘱘b*4A_@״hZS\Y/ADmSV٠Np;=h# sV!tt`Ojn DG)\! pX=zN8vKޔfVժվrfWp~Wȕ:^˰q]fu)й8ݨޡIj.=CkA"Jˊq6<2^gJuu*XZ/oXrZe-ew̌А0hooꬎb9"{d%}8&%iZ$3)}5`Hq}$L^2pՁ_yBYȮ C ݨAmq35m9~V<jΏ{a9͂OKr½W;Nلk?cl?vf/osR(Qwon I+s=X2 (iͶ,y޴Y+@SݳP m{/vs+Guw)|9\bnX{/^TڿgziJD!7YYb(xML9؍_G_|kt6$9}ǀn,rب !I |`G[󝼫B7- 6N6S )ő4bgq dOu+>\SB99ay26Ջ߳w:\9_7%b^8 βl~p;5Ɨdn/KE:"?nb՚IXù}t&'Rqq>esfN oM&Ozlrw粆NR)􄟃ג;dL){8lFh]X-{qB9b#!d}ጹrB!MdޑqK r^ebZ|XG VХ ?ɝ&'{Z"ar9UKtp5 ɬzW M(o"/Bl2Pio9ʹ'~צ7ݘS 5i4Ǫ60 `lG J~2pFп@!cGǭ 3/kOW61]vD5?BO]FA,>,?0|tY/vH^+@ϦG>MK/ m}Cﲩg;J>/t]ɇ_wC[.\ё`;sf n$蠺*:[!ێ4yFz?|hם[=Pv4-IF@j=bR:zCKxW|T:j.oVHlK !qebR!)q>NX%GXF03 mL5Z>f q'_gRTiP8OWn˴)_ϘBO?ȰF83>̾bѣGK0ى:ohezCGJKᔕΗE~D6VlN6:s27h2C/u㝵ހH:6?'MF g9k\"H`F3i cNc[-_dN"wr~0TF{y2_̣) T( ~5Er> U*X9L|6YoS[mnE!w~A۬?ͲNOGJ*o.*(z5EXsTv몺>fw& Fnd^* b[taqR zKrzU{(ϠeQ#߼JV^ݑɧrg,TGSci7Zvkh_q+u|E~hi zprI ,ް+-]u+BAPCRN:/hr6uk(NHBU{k最,PF-B*c$1cϭl(]m03ӷa=&"fI?QjJxSTvZ0!՚ԱAj);ݥ]NJ4Ō 4C^ ՙy$$miιXLOa,TD12+T<-5EDC<@z-r&12|DO/2n`r3fiCܢ7vޏPPbu<fwO;]P_f'pb}t५ݨl'[0T?@/-OV͗_K<4oTTtKlh> &bP!JJyv2ޭ]S0ScnA6,̼6Rڽ?;Q Ta Q.'G,]"J|v/rr66nSݸu.ֽSHɋx@ϸ`&j+RavZ&"V|ͫ(p \neWmcݜC |BMf6W 3GT  s!Tǿ}:b-Vm,i [ΑtoNs" v_(nj*j{Ir1b&i#I+a@gT-@:0^́+wQ΂+ߏTW !nNՏ,C=:RU#hevS%Gc(biquehn\ɾoLZG5.z#'d'?d7~1 ;1Zp-8`*RɆ:S(NdQ5\NfE&MHU~QoF.IżyHW6fn[D7~JrSܲ^j(`CHx"DGK_f#d3^=fVW'YIB&m A+͓#x$w{ނcjx&_ O a 393?%cȻUQx@~*q_W >%BHۘ^:ii Dx͐61.KW}JņuFS*m}NEfb\k|^)~*|%b:P׶++a'6#7#Fj +1Ty' $E۸{{+J% t)_@2YK' u _㏑~껖,qGAoMЎGJZW.‘uIĞ@Ac!ClORߒ :DzIvbq)Yl ,?߉,Չd_;Èi+ ~&~X>-;, wQfݷ#;J6E@d䠫VQprMPb6Q *+;(J;V?R߮-M[s` gL{s N'UJX;:hWkԷn.3d_bs` O-7@:'f$9qTr)"i-< ۈ\Ğ"X uϤ$$X. Y|4]+GwQO+&)7e[yOM~HFnׇ=-#rqy:`O'br\֑rfT*`+{ U)q _CՏ;Lc@\[{Y`t{#e?̼$^  31Јdl.@2\\ǂnWͫn:JON=x]kQv>[|0>iXbTY9Eu# }),!ϥ3 M2~Ļ/a t3UvgH:Hhׁ2SyέśrIcwuűOmwP(ZhK^b'ЂֲrЛ K!fZki2@P[č/i Ja;A{3"(/ȉD$Ha)5;99haimwE R<H@j'H[,aꎭCEx Fľ$}9Jﱙ`NsΪ\5[N'.f7[`_رű< XաxBSk* Z P$Y>zďAD 1;lc .,nG]!Hf'`\ %Lx <"TP`+'bm&s=b lw~kٲ8|,*Sk7 N^8 kaYnql?**SH󁋩RԱ||̣p\kj4Be۸}tW@hptIQk)<sr(=P̺5Km~p1{фM#(N=d&dFכrh!oExaQDddbK)\ e]8ImL&sT*㍵|QiI2^FN޲%^*l} z3rk;\@Tbϳ$ՕCD'xBUC[h~m)=†]/ߩ;ŌEwDȒc.ÄW&jGL9BNtmNX ysY1)0 ܦ-wW]_ԪuHx3cF4R]*K*5ooJ6Дߪ&tX6Q3 '$> TͯNSϑiN*m~^+93ltIܕ2& PUa*"7*#ۡD^hy[:RyVf|d[*E kVPB }qpЇP]'`v{fS+0L-UD˙wNG>PhO)tvdH!)!2Bx:?'U91e2=9sr,q\R҈$vSkZ<]6zcw,)J[zC8i/kZ_Fg>s *f?Sla~~'x޼Eh7cGx*9ѓ cӲ选d܆EI<8`*-n< 4\_& YjT_׊2#-ZTIoz;(ucYB¶1mΗ.7EóuvecS씽&Ƴ V?sc\n96*y![k["Ou铭+w Gq/bJ4翩bY0퓘_s7| j0]=>E{+XvL}sH}o/Lcюy(cCFXwRMO]a7 l%jb/R?iC*녓no 4PCT9kֿfHi ^ٟ'2kn^[퉐p :lN-*Ai$JGfFΈOol?6 MiJ+`]:haIn_.rY胨Z/ہX85z督0Ax)K{憑:7斳5Z6.YR{nriF]8&-ӄJb#LͰ]h̪H{N[o%PfDɎNj** _*Xg` )(Fj`|2C8m/.wD:o'-.~=уF߂;2{lukT/}ֶIݜxj[RVJjU"8rOɝ2yȝwM B׍A ɶ9QH|hyZ7rAV.ۇg >O0gP,' kMudN0h`X;Fk`$8:Xo?z(ܠa{9*\F -]󌂈Y.")!;=8 ^Caᚴesqbd_Hrq*|lb+O%|[@Q0Z2)Y; +knJu 50ꉨY{H'}G<{ሒ Nů!:&:-ȁ{.65i !±6QI:wpXPQ:kfP<+N,kTb'B&{G`os|b'j:$`~3x>LB@+OH{ݽF%d/]fHIȺ(ִ̐ѻl\O mbҌjd]9)VTҨnkL̢1yt_VÙMrNAi鏷~NoZ΀Y֮z,Nz8O.@n#R2hvث>h5Sw0^X̤8>"5D-@Zx; UZoZr``7z0Rڲ<>|{hp`?ﻗRJ*XB+UkiĂm18O' ;/{ EO'Jڙ/3Sa%g/ײ1@:;|%Lᩢ} `O:+%9z#6H¼'~ opJ riZz]̯"`J eiShE[Pe,Tsf6X15qDF?.ۤ ǏE7?G,%.!Uy8J{žgf44kF{]L">pU` %{/`uZ*w<|N\:{q1H,<@ pk}][VsG%B3mdo#;؇Ш<{"#%c0f5ѵ$sip:9 mZ DB :3'QME" 5M5њڳiA]ii_Ħ 54FȲ#6|e>F6G7%n d=ʥ{{$tiXJ b '+W=S@VzWﶀ8wWT]vYcaO*XKrY.l=Զ&"):q:JQ3Mڠ"`{H)HG`UCnNPuu}Gh{ьVDd-f::Y7}wr^l"$\`z44Dٟ 6jTهai80 %0}?*΋C=^߯fUѣH˼H!HS?=ޖ_'՛AutdCAB@D*:BfAKyA[So8Xd(`teasթgP9+YOZ`:l[Dr"ba.х+J҅lj~zb# 2XZ r6CRXj ,B8 ~@LCc{Ӹ1g/$⸄ދ&/ tOF$aqXBvVy@TO^w0 ;g?hocWsrX`8]*3^q5EfG t=7K`c ܏ҳdWŸ޽P ^J̣ŋJN4SsNZʉ^

B+qIz3:mWH@3UC:K($7z8 p[`0d.tT19qEQ@~]GRF>;]Ļ@ -+K[e1`ŃϿ4{NzэcۼE0vfsFjx}!WT6PL:y2@aq336ץ0;:g94$4tCԀ49I!Z]U9-dw_o2 Y3~ s*m?FSfôUwB)yc* ^d" +kM ȸdHh|C>M4-SviybR= 5MM!h>nf6:K4[CF4(*R}Lҗs|WEsY=&V kB"oz A;T_t{W#7_c_ܶ٢1u, ?2lԑ{{]RFԌ|9F,QdHQ"Ky%EEmT%QN Z%e**Ȧ֭l@sř=UgU={6^ݡ !Bakj0yk3Z2&Iح 'H'bt QƺRTk'?yemus&휬hke y]r2RId =њip]g^ǎx6W4- &̘4{ėjS d0. ,;J+!'2"m(rFDpzQΌe(Bz8:pr8]c~-%e?*#Gj y\cy໭p?2@^ޔ6odRdO |,~|-i${aA/qRxh -Nloxu\ jltY$U-Xt\m_oޚUٓmm B#2Iʍx3%rp.T0]Ȋi,3{\cy'$Y8;+\~q`jQMgj$q"ayf_ߣ jƊE6n@T0 R qgF[#f"m#WkO.I6kA`Z=t\\XS'?M?3^;n ɐ.!26L/SZʑ rƒ}7p0gs"X\/@rGKRg>R0meME@ڼ QoY,#rEUU\CYCP'&s#S~v|<97j9BhiSܾzvrA\K M6k?UsiXq}(㗠hQQm):{G%G>=3tAi78H%.,Gf3ؐHu18ݎo(E3BN9U~S=ȏ/4i;%o)gsسN L1${(hVZYdWʉU k_&p.Y1UONLAz բwq -Lujŵe`TGrɉD9):xXy*@kg߫FW̬=]i>hn2(LDc[QA[G_nc(Z-@?sQem-;1(ف>墅_gȎ.D@]¾)L͝a!M j%wA2 p1= aV@lEfRaf3Ss?>ݓOoĤ(4˵6<>\X3]I4eڨ;'o<-8s =/=sUJͪfIc2oO].mU_!@x#]?pB(mć'f2BvYw,#xDC:AjحebweX² +g+QeӊPoTʫ9`@֜Zm;(OH2o X0`@%^+J#==L\2R>c7uhުBKR[TH&+hm{azWT)Pn>"Ipm*L2@u* RT҃r)eC zRax^kZk H}r6n}o4JGfң}nojBRh6Vd h#^SBǨ8ߍ9ۼX0P6ΦuV˲Q$Cj< $kny{miH?S=(`Э y}-E t&"ߴ9#gj Iu XM#^كZЏ9s `:j _U=…[3qG)T`U[otQBF]U.% eW D;m&e;Z dԽCul[fx4=/_ t>Rv[#&D\ CY/_ z7c˞Cn#+5353fĮ1("wV6%F$^T:*E2ih }J9`!'3芡,bBudL{ɟCy|`dd B)eEp҃n#ix^O-O~½) !fӔ<w*3L|) p,j~_ HR' }`юwdp CnL@+\#jҜd*rjR G$ ;MI<򦎰M 230S24dzLL @KkǑR5ƱciFh$ &ך޵DR7KĞqL[/U|#&P@_ JW%z1ac xAQi*;?RNmM kx:}9SvȷapTV[l"Ƃy4>f11CcP2MJދˢzH-WYupu Cl O] :'bz\l,z-!jZւ8viqwXł3d6Oq[ZvsnPW,ݗJWPaٱ Gp|?Fg(-67skLP}:sTk`ֽ\4{Li;!Ԯ0cw)c{(U$;%T9gkCD.gIG=0YviFuȨ =σ||>y(?=RCOX)^.b%6Pw"#w᭧"su*,^k9:9_^<m=J=<`v*]SWgi`uϪP -73:Ē ӂh:zm6ZL4t_hgL 1X/,A%#?>d}وiqڦ Q1V 0[STJ'maI Is}č5=qXV,wSYlr vsH)П]T&1azCzΌwv*8`QKX%$߮bwxOZVU2-_uÕELz /coGcbgmF{Zo/nJ?KB)g?qA''mu5_MHJ,96^5!u a;rRe,Px2U@Z`CRC^?[SȲ7XkES][s%3h6,;\ZUM„VإD]Aڽ Y*>yq"l90?>j|p])ebܗ(dc'2`oӯtQR G' XB?]mA-ceQ`EuI=+ Ѝ y/qV7uvqo}Zs|%V ofg ug5ͭKLɬ^ݎі/??i(-56m߉ؖ+hn*fOW>tQ]"dğo<+ʣclE91ld=uƺ<#ѩ0y!6AIrbxI~eƏd,Ez׾[PirGkF4&h`*,-.zҲ'~5W疸R  Olh!ߌrȢ/ۈЃ .`[SNh萀ABL͟w"8w=Mּ55ߟ$/a2ۗ:N,6p 1t "JoSKz#8t},7GRpt Y%%%^r/S|&ɛք|u?w=RS9](HΨ|rT췈%O: mMsB7;sOvE?\U;'0V iJ5~$݋h^5 %uA+_<|a[7/AWY *K0Ÿ)ػ^A ۪, J]8,?v}n8 "IY Fᅏ*hV;*dIϘafcg@?^U#ް0"I[ʻ39 j DB6`=Q\]T{G&Bty"4xyA`fu9|/(*AK!Z{ *yI-Qԃ2e7:hƲLn, @iʸ22$⹮>UmjIF, T<|! ? E+..]~dLMAI*ӛ}izQlTFz0/ڦk=:ʬKtU>ƹ+[@~ct-grRnŇdBC\?{+&bZYB&;xԠȀD_LcW ?Ok>E|bZ1hA/*ăGT!5Rlпt9 Vk/{HЇޛa(- L}zl?32@^'PSkh cBf6UHznZؼWhUwc2O/"l4pBG7|F^%4p#֍r[=T\1{'6!pM0AM)ï_CyRބbyrP1d-Թv ӝz*9?7݊Xe:>-RcKOMr{[mKw }>.&]o]3Z:bZ@6b=~I=8ng~IK('nX II4~% ލt1MoඏEPٯ0|Cer}?t2 Q_%6,,mL"5^ZPq=|br"I1siSt8O=km^RiǃBǥPMjXA~se̳AjMS^hp~${EA&lglk%X_vsw*WЇv\xcG5.sA;2?ԙ8ڂ5J>2DtqL/(" i=gϦ8ޛܽ/=JW kA =9ntF&[ˮufMD fIظ/*xdC~<<^tkԫ)ƭգ@9mN۰ؾ5" s} <~ddv;JJɽbeqĠ-YF D;p9÷ϮN15kFvGFg/$vMO)Y%~AK#y O s\Mb/ j9T ufތhl d$C~a :p4~$zž2)kan| n|h.Tloe):90xT?e_#HW<՟1~n}JHpp@[cmB:#G`dk] OTph:9,|ee4aB3Feտ8f*O8ـgˬ;O;5w<(B꣗^5j.)װWEwo=sw?!1䴭¬."۵71D) W~u6tHMQ@2ҽP>`|U.cD}3rQ!9,iD4\xb?!q6T|,U-lDӟjkWb}j )XkVg,_{I 82P> ICDaaH ڋT 7T6߶عYG|-ёVQ@?y,mլd 6uwF#M) |\ۿ¼jN\.3ZgQbsaN]׭&vWGD#J̗~@6!Qƹ g?b5!ṇ3; Bb9l!x8 Ȑe b`+D˞ULT)A!%EW2 o*jֹtA΅D->Ů,&r5\0nDf)]ϸ/[O;,&O}Q/av% ?^鞋 bwK9m H)K% "hfp|l8{6.Upۏ鎦F.^˱x?RKgAm:2WVUV@- 2䃋ˉHSuL`Rk"!gGuLX1BrMw aӆ^i}9ţRHA|ZQ;+j9Z+l*Ty+nnU!$;xBR`L'$.XHdʚ{pݲS_g)N>EG =})ߣ+S..^`k7G!R:}5 'GC>+WO,j||@2yld\FgP!J!9O?VSBiMEec(Rh8U2x{ts-~mY*YuE;vv :ٚr|l.~vn#M`$^_|Y;gJ4f-@ ń=jɡOR6IhP|_4\_覇{Q!b )]`PjjB v-:''zCԞ0,f᫷b'=#ma==ϜWURp&R8Tc2^pd$]Jyn|7 :rLg&xG C+][ N,`a<3⹊MGlb@::ǿd~^g5%u>Q8zMS}W?c_k> eX;$~v.[WɡTK4ܽK/~hXv¬~Kº#Gj4w|~lGmB2VVL`(!yW|5%. -^4'? :ePBGqf51š<+}yh)bR0z [8ا!-[t#Bl\/2EٕX]`iNV3:E|Zi4'S֭Q}קcDg𪨠p8˨'6p+eZشqa7uP{{<=Kmnv6ZK% fKct+{a1If]WA/zOn}-r? X!V̇K/fup0,:mÿ.^8m[h N~0} ֘X 0ToLFLn=iU]_E7G"H" ,_d'j`ooUxZͤ솖(ptDNim9 eZA ۽Zyyij/3eT~5yao&f%[ЮTΚp0eXf2?xL{.ߔ#{OI;hT& /S$O>2+*{F_sDEhD=AjWTR>* Sg{d%^rӔӮ0$* fas[֨^QLm.8xgG,]T/El*4"niTIKz8UqE0X}[9/]bkvV  ؑΰO⚺Xd~`>C̳ԄiXvpzm2x 6:FGNd;oLhq37I1zqLM,uM_ 9M4zhUo9u7oܳYc:p0eDgE DřTfQs,v}&QmYNx7uFڷy WH$7jN{`7KYwGO,R}A,g o>ռ@4s*VDm ` ;AmÝ̾gr % 8PvLR+B+̜s취U,QL7_x2xl=ㅅ421?W'1l6:0TMdx5xH&P2>6rS54n&SBPwE`ps%ڠ[!HQNJ:9r2ɍ i_g,J;ـӗw juo"-.#Zc RYAFA a1~ ..[G%v׋w4d2),| ېGլ[݊ + B"o'{tKqMRU~q ^(~;p|-l{z;$`Gg#+v s 7I '""F s @ #ΗMc1 QƯ L3U)gÎs^9f2-SU"i`kzJFi|^s:ĥ7{${Q!,  ˉW_z㨗࿔P+!{qb}lALj*/ec! YJ뭄rx P8s S?XMq+L2TumO^ fc-Brhn-3#^ף EAN@9ӿSS5ModWnY&ٹ ) ]x̣NHƓT~z&8!ފ^Ogfb%wΜw{vܜ5@zh%[i1]Mڿ/%N+ ĥ9'*7۳q5ZgFOjOܶ`OJ*zH" Nnڽu aD}r%% UӃDJx1 Z*̾U N«+- I7yXPr4w$б?VIBPa#B\ܸ^W&A@HlnGrF8 f<ߊ1_R*ZܖL;`*E=6O0?y 4ws)$4DKo!JicAO i%]u4}`vgdi`:#g[{/b]y-_"n{Y30|W^Ixc$^E7P!pHgp6Br\~]#MT-#$]z|AÑi"{8%qF18,;Y$?G<Ůac''4,eQ!"NZIOVY8(:D(df2`Մ㟵VpYEUnƇSp4KG*du3Q.<؂JC$q+ZF%.^3)EdA.49vEf~dwsKI#UX'k GX%0jMVM. s'Kt̅@7:Zi-)U&甑ٰy__-אvg7WbZ\yNr9Ue96^W'e1:@f ԕ@N^?A|"|KM΀Jkw~m#dgJ;M) Ĕ{$'g}TQoEm"{{?jSẇhL*x mstk֞bҀSnG A5G0gt7$A:oJq oTuk<~WBAtYHd -C'B>~>a6 y'5M=[FݑQmwLγ:"W*C[w(ʾul 9T-.!h9#;jd4b#'A0zxɫ|de{ N"8-}7ƓǀCpՁ=IZ!B]^3NxY,98E]tI"Jr?yLJeʂm\T?-B5pAD=\8Ws#cNү%{]M;|qul6OR)k=M42=%@g#b:F3rJIռm:MVko @.!Xnu2Ƣ*@NˮXuB`ad*=4Fթ6kŠkZF:qvPt|0#n}Iҿ;Շ#0 =a mExudFGO?@.sx2JAZ iw&ܛO -?|aYTs&U2N5*:r]x5cnhS| .гnTJ*EBHCGfM <|k}$H>0ٶ?m䰻K` sc~uaX_2wH!Hr&3}϶7g#DE(.XǓ轶"6Hs'/bbOwU_;%mTn/$!0eˠĚh.'öl E g 5F hgy{3+FL[ dc3ᚙ]]ߤcw.xj 5/N?οR͍L?GsQE`NQ0y@c?yHyK-oU^C걞ۋ^Ig{j\\]$c|6tlÃE-(^m%YP#֡K57sL>ŷmz47 (0N(wI8_ةɸ*.X7(uniWtɹM-[QUKz%@>>Kꥄ>FdQZ@q_J۟u~k`Bb&q[b9|45{:ʒ<_˧Ub~3&a*pZن,RIR-8dn ӭk%z^"4,<:gzc?T-WG)F~XVwш 9ln𶯢)~ghSR5B K&1C KSQ 62 cҫCR])6]Za $L%%by0+>,L =Լ=eaٜ[[ro<>4|02Cf*t]X*-tNM}6kNF@@#Cwpf#ɲ/~׉Zm2jh bWI>$H8(䕯8m"Fیf7;NSAiK Oޠoid`˪1L):8ϯVҏbb0E [alKG)ؤ, ש81 kxx=diDRF}&zkO 2$R^+UP{1(KJ_:Bɥ/sD]m JjIe i kݖG-=1 He5M>5p}MLj ~w=ԠEh4Zx3}u[G,X a~*[CYe!h}A4|ЃgJfqMlh[ˇ 6Byep !`agODfL?X!*0xW}@T0ZosAK"J͔4D#s0]ղKWESb>/x,/'o w5;E$+5c)t^c}H H,n>?Bo$UdzBjyϬfؤ;XS^]6KO;WڥN@j 2DڏgskzkΥ \5LB/tC=i\* T[@*##_[ҟƋ" >eؼgj30Bv?I(P;rBS@ϯ[}7;0}zy͐`SYOMʋTˆy1𑱧R/ԥ^{N"Jcz>1Ʊ >l{ٜXow!ub(FKi R8(3CsqԎDL("UnA'1hJ0:9&J;>`sh~W<4Ԋ|'OwV5e}=I#ZЌ))ܶu2;V쒛 6@JkA":S-|U(c)[Cqr5hڦ; X˳:jdݘ%fVdr%ښx+aͶXOtJb#45TAvՁ4Wj4U<&U׺meCff385/c4Wj]8hzl\!r#*fāfXt:N|~`$^S5&D~ kU̓OdhR:Q`|.j2V6vNL!7}ޱ(~;q1ͪ.6 CP]ЃsM^g]KS4WI~wB߶x'✶GL9׌ZƃN/BH'ҐA&!<ѿY"ӑy]R0֐J4Qkng] v|WzfM 52>QGJH C7) e0&fdS/>9RH/!*<@ĉeA@=5ٟMN uUN%0`,2&E*X݆LKR9r" !Y9O)ؽRAϗnʌ/ ߠt^6f$eTXCΜ zP/hh ND|AKS~uL4{u6!6D;YuϽ܀tw[ (֔#e  .~ w;TP#Ng#b&r+^*dM2-uH7mYT\xvɖgUOҘ&+Hh98 9pںZ&}`X=e)y80LPbc^}`FLB}=4yy Jq8]SxL/i:E$!t!{T `d0'NU*Ԑ#Vi~ޡ`J3O/{%sW)KGfe9w͉#-wF2IaBU'pޯljiڠ|05we0kuxE}r@ѮUVǗa30"=+8[{7*2B|M#Z$d%g˂"h{B~G`nϢ<XU2»׵C>ԛ@NN>iĠۤ(SE#{4t+ib ߫5ozYR "]3O0Eeo*i)OZLf9SlG2ic d`$=ncL5VEj@ !:s2V ^?s&Shf;r1~ ޤ,cڣ^`FDd󒖩b.Q=(&`+'1-۔fV7^ 50w!sێڹ/z )6:Rjc-b¶|OB@nv=: &59Wp7TGڼO==($ hsQI}4Zr6,3=k#N%NW]4V c.Z#\+ˢyIT9(&[}#*4%#1N}xYr͝-d }"g Q^ 6?7 yi[,]Ө"gQ)/kX`]mD fNQKIzW}< 8̛y 1XqA@a;1  N #zݘLbɨ2/Zr1BMqMh@[9H 7(R-'ѠIl@Y$}i4Hp;oX⥃^AEbx(5^]bMc[g2Md@Rۭ+UuF)w 8 ghs' ؙ%}ʄ"I ňehnҸ2c:TI^|!`̀:|Iop8ɪq&KnoR;≃9$ž_13HzS{!Ƣy+ 0V8JIKPaR+?rEu/K$NЙ{l2Xυɯn.-ScLi5f +\&cjdI?+ᕱ3ߋh7 Hx_[)ޔ}Y_[h;#U8e;i֫WC_"lgd&.S3!K/g/| bEؓmMHy $"Ђlt4eY8栲2.kFP}ɰH3@I5*w7,L7_]?gv"nqO0k&xn,ۤ6PB6,6~RlU: uj`ԈW{ϳ/963FϯobRк爍@ (rV.JpH]n VJ,M zxY~4uCAU33F;גnJT9D=Ogda B)X?1$L>-}1h0. :Ci7%*՜6Ȟ( WUD#>%8 ](m127$;=H6Nh+53©ݘ+9Qz^,J&Ƞ>xiGmQ7._;T~aLC|ҭt M}er% v=~P 819 8hpHWTޥzOC $xq5BPCM]5D{g"*#/-mʼn6Y OQa_p ` KJ_{>an&12ᄁ$Y+!j&۳c M^ѷ4v#1Ku7۾h.[;iw$58*JD,Bd$/n }Yqsmrj HfB[Q0DŽ.~f荭jmiQY*җv@-Vd)X+8 7K.P}XRNOuVGtR8EU5Y9d M5+#V:շ/Xd6) Qpm ECN\-a?2-rdbgNmkwԢ_đϡL2b_Pb뽄bOlk{*k{&'KZYqvv7qNDׯDNb8 Pו渐OI$#]QZ0nb=94窌Wگ*(nU)&x<^>LTxvr#@Y@OS39'}E"ᘞ4pN!zދ)y(EK~FWɊc%EU(!OK}pG+yM!:EާS2\/98P=d|VwE`5/I:'{zoOUZoS~H0j=HTk$\O(m> 7؉p(D3ޏxǷ;oA+r"7V=%-g0dLYYPVG ZA5`t!Jʋ֔h3ۜib@C"u|],ԝv @nEt^|ױD4أ!nMB!&_>=6=^5> W=t*lZJ%>ۼ:2♱ m&y :W#d|dGeT|&Kʽ[FpL>!ki:&]Uv'C䈌Aez@$3MKMW|? De|7ԊYt:{7ea5fu{zIȨϝ<9;6p_+HTN <o %]{Ǽ _#*nъ2z$ %tlD!3/,ȗ3i턲ONeMP)_;,xFLHÛh<K!~m(5)4ބ]E 3y?&UzmM)l 6 ͐:IʹlW|M럴'ЁBc:X><^3&,>5V7{j@4.U8ʈ&pk</-Ӷn"!sQHլrxz87u]x8Ӿo{BL_񆚞4G{ dW>ɽmV&I:fN"Oo&\;&VebbƁ*X5+c|S5{A-Ow~7f%/=@$UJ0(P.\/uԒ]Vw[=ִlD ׹  J(N/|M >.os'Ȃu lt::L\*fC&f)1R[=?J7;Wu "tX3Hs%V4wNU ?_V.UQP!`\< >`>ǷЭ)'Ym?ODŽް" eK%<۬8, jXN lR!8:3&`M}y\oܘ^;\lD4rGq|ۧwҥ~& x?U ?yphN$~w0)\:}ه P?\EI4P@ \2u5h>n%ly7WLyt)dV/ǹDw&A֥4뾐PfW<_'7CgC6۾F=ӏ t0 UﴙWJ =5gp !+b8驣7/fw5?C͗p,. cqK؉րg.PLRoPGz`^ά~WEo/$J'{#h%*핔ىPΩkD8|S]mp!Ϥ/l]]wͬ߱%\L_bƓn NGI%<*- `EkXK0dEMh@0s>FBřl0[qYY.iݏ wylCX6ɓF>>߆H'Q -uE a e}>Lr\zٻH}+pNV1VpYB8il|sV.|Y,"zն/ ӹBUW-^ 4pyn6RОuCbTQ}A)PJ}ۯK1Y™1<" d P,j@O%I'q\*:Nblbyff$n}$.nfuxAۏQa_lmOa 1Zo7j\7ձt3i^$6Wk@d^>k#l[`.|yns$O}ڵy)KDM.oR-S<ɋEZaoY9&9z\( ;*l4SkiL%r-Y#`҆6qs%FRs`spmyw@34nZ|5k3*5=Ө.KMe"d *\Rc7ZδħnLaw/!C!gc9%XW$܎I{;xG{ @d5W'1X\m`<@̈ DV+)͂k zk[ƗKK<ږHpN*1.Z=]ńؽS?Zpd[~Qa?<6}5n*`A S'%Kl2njXB" IeTUvf~qbYcbCI)OvJ{b 2r~<,M:U hFmUH8mr./)Bq}6},ӱKvϖS"/4{ZMOwZ[a\hA^eCk[Ї:) X:u,LW"56ӟ!nӅcF32urK6Of 7A2ϭȃ| v>H&1`o=Q.Fw=2;)֡ ԽH&On>-h];l R P\ZFKIW/7?*V`ڣ1rG{3K xi {uxn.SbNJvJw~R;VBe o|zRua,P[kP.po(uiJM5GMTsRfb8$ސ]ZF ߵV@^ ;桨 <#@h'~L<ne 0},x L!b싞q<uN 4pI0!"}n^"mYUq"]_aG̥!z&!"*8 >"A?YZlnc"'y*>Yq$s,4b3?Ĩ Կn.`iF㸁Ώ-b(M9Ű،lyob3u:GqpNw}V)w"S|E~v-BWR֤_+Ҙ-Q 0  w+Jy%%pRe" a+7mUSY*yHvEU{Qv(] Sg`$T { dxhN(qR D܍x>ƼQv yH@)'$jG G83#oiTܔ%I46w(Fj1"7ӑ>4ԉr:4pwR³`xlpJMyoҾ&5pD3ee՜ףv2HtF2ɉl긴+zǹJ}(rE퐱},K"qUH"0/ZTϐzCt-aI|j)U5'' ة?&:STm~c?n%bi1geRyHX(|ieF\Eر:Z%Ip\ esNj>Xr =.hei$qЅOZ ׯiw&qN*5F;j*9bz7`e9 !V*x>>?d~ EΦTqlۀRx M3?+4yZ=3xdY;C1 HL'o5?*\>\}9 h}82mmJ᮰|3Bá\ v![ īZq"5#Q!zw,Ci G<R;r@Ru ]7!W+n]53[5|/m>JE^A׳0Cї9e F86t9IsՎ>Φ~O=k) )8;¼KZ6ؘaJ !L!?BzMrQ5Ȩl\!-maS3O:c({f=H hJo;cMܮRjUJoOUeJW7Ś !%$ 崐?'JpNZs[{PDh| TBT//%w 5J2J쩢?a vRAXϋ^A*qBt}A!VYٸq2ojƤi+ D;"$V8wgH;}ʰR2L'f0iHvT [<bÜKP$nLU҈vtѿ<&w(:|%qѧy~+]B/4mz'hݰkdb#E3A[5h1e~BKe@Y߀9E KQ7RDF`sG+$L5Gp?y ^,2lx{!LD<%.#5}RR%C+'?ÍuLΚ|T#+X7E %vX$"1SjR4L f}-~io/ QXS=tm||)N8z޷. k&.Qt6fvIt@c^hk+YB2H"? ~Pe*x:Yy\4rl>HdgͶXixqVr''0q{XF`ٕʝNwD75Ru }e Ps|A/ 68C=W˪7dz,L׷q\'۹%ob؟ ]Xy5E2KE.A+,!.WA&ِuY?A3C7@:Ӕ8]-%:?ͅ>,cl])Yfp# UӭVakl DF!"< ab뫡x+> |RӥƄ՘9 P(M]F㿝MS{!lc?%XOgd^}o$2iBgy>?Bp]`?mnP]/E p>l-Ƚ/q#H_ u{3_%`p$wdb&FC"G0/%eqd܄3}) lj4VO0!''$U9'9 ۆLo 9pqlo!BR||SBE(tlQDɂ(A85lOHc'NS ܴZ0o,U،(lq-n8c[N@lA urXŠ( 3<_&zGrzPJ<=>^kU P+=@.59%:"|d *i,(U=o3gS4 ѵkT6=g{\.U3[ m$=0I`}e Y" W\]G#;6Tܮ! s>>r.&jRַOAjo-*:-m&<Տ,\vFfy N;>2L{P9%0PEc=0Mj``([hHr0QaU:og9Vu.uN'oiB0pWe?-hW+sqsUI^oYZIDbpwLZFwث$Ac;JĥMg仓AYe9H˞yuPl(Ս5TdsT`lBk} BkDY S1q'L&;#9sІaV;4)|\ m?r\N4[/][KKc"C8͗iz flHͺ8,Jؤ s+>0!x/?Yў@o/dr< iJDu vOLd>qa5P"Ԅdi|!>@\Gʴ yOM_~(j{8ƕޜ<-4|ߢgTrjth" zu~zI7KPO+o[5%bK'hNwOma{*UNZ1*ۖN)|gG8/|"nww!z'p6=LHu[(4a_L;?F] j9}NS;Z*vU*Fԝ $Ec (Ŗ :aM\Z g9 hC1πä5 *Bɚ &$PHCvIרTv$, oEJ꙱F:mQ#Qy2!7m5 )U̽_2=]v-sR'mocxYZ&rw#|$̣9'A[)SJ$"R>HPp yhw uSPeGya!I2 *3^.TSR1^jy>/ q%E~^ѼUX$s*IbNbOЦcpIŔ5VbŊĺ&og=i`C=J=k3v&UZ1iBVn*ț^nʜFf_mD$LB1&c,ܶZ_MT'Cd-6!H0$7cGĺD2#}WV7I?[t륉bڼbZ*HCc{$`!_bB2IgI1X hA]oVʠNNSHKO;|ɵP3E[Sだ!BpW}ƢAlH)4}73;MN % tWr_q} +t6ⵔǤ;u;?WVnu[*~YOVX&y.d؆ɀ 0sm6f7|?=[}R􇶋`"rA \`sL'UGt3)-X?t׿neV-^٠ow#rZqyj^$P#՘F;TnGg׀|g8brB_0'O]Iu J )7 $1(N[R6B.hxD\("c+KbQj=57ߒR!:UV&A7 5BM*9n ϔk $oo-~>&'EH*Ò۰K.O1zt̊1 gJv ;[g$(~.a W*nkzaF\x.#R9ӌ+v"y  ـu]zdcS &s Y Iδ>Raa@.` 6q2yVs A`tu*?ȧKخȼPęR]&[*roB~EX'/dA\ڎ*]8*@P(~$p8P k4fto=iX:$34k2IB^q0_}UY|-P[B}xd8$tZ膐3S5K!l}`u2&0i4sr805):|+;> "6ϖ7_Za^b 8mfSl֎[0$H` nUe%!pFܭFa +skL4Z;Q*T3igb!|pW4U> s.o/Nk\U6"&qesFJ3C`e۹EW[9 *-gAJDՙ /ë0:CJpYeW0ߤ 48W,9dFvx}IBgr퐪Q~jf6ni;UӉtc?\CHdߠg#b9W/R =@|n̦cw & {}> n*JmrkLCޏ!Xg~jzݥ >7!ؽד5kb&aX%Pe6Yk eo{n*qYFN-t;7wbRg_c@"EΤS$h5CrJ꘹@.6xM &~@*u6CM U$e pUO^&)dG$z̀!dcm =ΌGόM@zm'lO/{[7tsZ3LI޷H0,96~R:Lݥ(oW[I+v֫Tm]•vztP绱iܻgg%w!0HNF5 NS&Luỽ>a˪b وˉ%{ +WtR~$ K-U$w%$13 L-ANj?nfUZɈ_A;J]z&ֳԮ7菫HX˞`d~AWu~$`#ŋL4o׊!P4f2V?]]껮f.MmQZy{eJ0578jJ b!xDn$h }PWk~Dcl[M@g+l2y$`T@L^Yq$g ݿ?Uq\0x@3F6mmل6Vn zy$VJJhJ5 "1iao qѵn9h-=Q7'dDq#nI]#Ki#bd@tk6B+,8K^_._ze ')O jy{S`3aA H2?;ܱH唲P=ҐQ>EZI1|!IT#Puוp;a@} [8_*vtGK.n,kEəˡ/H: 3J*H{_Ǧ }^IqK*;#ӷVJa3^!G*FlD,|=}Oob`e \AvPPF%ńD8}%Xl1*0qru. PSwķN ̃ƪu1WM1 @7%ƫ!ƆyP6Wmg+UG`@D<1,jW`ŀ~m{'͘pT,؟wa}3E`Q^Fmb kѽB Fû$[M, w8)>2b fQADmWN#jV|N%^;'] *v<"_p롕V4~Nsj희M-"31U c=*Y6 @Q 2ovT@pNZ-ye Eӂ iSJeNMۣ,'0Pxa&OeA^qJF$Cc_QS^t8勖3[u1^6RA~eRH燤`TYކVMlnF'2!. x2ưK8p[ߎya)錺 >lN+=<B F&zt\Q5"|2 _.yʘZV]ɀsz}~!͕eU>8 =2MJv,p(欹\+QiOpZ^0K8okyEM٧oͰؖz՟;7.`UTgj*V;27%hsQ.Z4$SɬܛӽТfzɉ v]öqҲ~P 6F𔷊-|\SʏoKJl,sG%8>*/AP8n eByᝬpΑy9^a^"W`NUR[aZ` n1%= ǒlP)JY=$t)c^"u!8pGgi%\qkE $Jq0al={"g\(O +j]/IFGm, <Щ7&~] ^xt0$n}r*~ū* γ,և߉AC6<+"7^h4"5kb|QBGua3(Jr`X)Aevem}xÒRS5َˊ&3藶uxI9HxKucq a{v[aV3$IѷqfSRiH0r^ YaXhnsyl'숡nn! Σk"HhxNP#8 (7e&ٺ t)Jܭi=&~P'C!ֺ_VcJ<6~ƪr:rD_xy5j{-n&kQBZ&̆.k(W4 mq62L DZ(Ҫ,*ވ &?Wo5ڑ_A:u(vt.=t*x5S,v%}_YpC`IGNBx\'7SnFĝ;qYb0yHyua$|#jGu[#l{ps* Cւ^#PqG׍|x.w蛡&^ a #XG~u)OˢJ1TvwY)Hx=0p»§xT9`lk,:йi98gemCR%fAPynTrMDh~@sYt6ݍ9mP; |fOմ;ӄV-Wa-"(8kR\ZLg)ψS2 =_GgBV2%_2}R-ďݸ:T&n*[7vx\@8 w`AhGq੟g%9qj<9k \Vd)GIT;pHEP_3JQ5_mqt(|uHm[C1dC\~fR $!qbԮĖf?p`m%XA(&80{/E 4\N(NRp$T!#Jݓa@W?'lyrIEAX47a )M3Rp^ljέVmCYy"G:Xmߓ: !u)akS7IfM킘X?:. S?P# $ BLkqvZe`h["QP& a:n w;(;u=u(":2Iˇf0Y'=Rk&; Ӡ9?QLG96i0}?ىr.o ;:!y$I i素=CA߻hXb@E5A%{rAxn AE]\frV{\LO`B5a(̟V5QF7<簦X%x3Y &E-mV5{Y >U\WhHm{K٪ !/a/Cj91æyR}!:>]ѠqQP U}Gq9 07u 7,ַ"4k`է4E_UO-wH$/آ*~9p+B>yL~z4*hTwӚqFMFwfFTs#DY|(Mt6coS*U{s Kus]q=wEp< xah'V eG>X+j ԤYYI]=W+-*~QHwjgHm(@lp<|!׉ ~;\+MZuՉaG} rL `C 𭽨{ HdŢf俧vU| 2%䁼QJ/^e-ԃPư#s7>G?/S?nɦ^V F8עxtQʻOߑE];2! ŸqUlmrbG)njj׸` cr}.S b:]\Ze8BBtW$mv0Ι]=έ)OzkM nZFnn6v5JM;+c͸S/reݓ.vH \rC]m{+% 8$-^yaÜ#et(az@= ]7F,(}#=^{7} 1IWdR^*iؑkw#}xçoG}F<+poF=dʙ8|ɶ!L_r ͒_(D^KRXr{֋4(!K@Y/r(u9Ga1m |ȇ<@ݏ3$R:1BC;O=/w:Ԧ7?"ݺxߩS*$,2çj[)CMFRJ"t4Ϸ%Nͅo2?EFSXׅmՀ3*N(>%=gRhaXoZ:>&9A _R+bAbh5{)eq <Վe:oJ=My~WwLoudx \<=16^s+v)CFN:Xkb_ֱ5 A/P?߀eC\Xʛ#^sǎq2pl}&q~"=3Z⟙M*qT6`f1xX6|`?qMbnE5d.Йoܡ:;^毾CPt8sQa?0Q"&18|v=z W5fEb'5 14U:OeE(ˡtSRNi@C]ru6!4'Ի,MZ,cFX ڞ(owv[3/ZP msg.5 uw,JR鞂N#f,|J]3@jM6W7(V Br4E@#3-P>`b ƈ^r7Dw/C Y>vq![wکy4mcr#B>lK?b/Ÿxf*"/skXZ鯚lH:8X@K⮟ ~^/DY5J@}FSmMҁKd؆2kn uLW&KiEx\Zx#cOoɶ>0 v ~,1,>M;HzG8ѶA=̘Bq nWBWq!}7L]B$1  8y"E4oMu tLuñyٚ gWH?%]QJ-LՖ1}\gX(yD,kWDd9DgyO+=}I^7.~O 2pa1N_u>\V]ōGCҹݖ/oy(H>tn{üJB$;Ȥo)%תWBO%f縖,[PZ-QלqJs'^?p@N9W_&H+ҋ-g$ߪɚOA5ȠRy78׵n%gEugF9ob xnjRl"$91L,f|= ̽lX4EPK20[ǩbu̇{6xs긢3e@yA(Fq Vf~s?$}'A[*#~KUStWLڨCMu ϮitgfQҀ{:04y(dOA|~fY>OtdN̠rAÊ7Ex {ɨb|&B*S>zZj>ss!#q{^؆ *"%vuv6&:vmC ee7,! =社,sr9zKt+ :g\YRލ)O&9홖fZ&Y b! {=!9nDr&HN.TWM.NoʺOlѨ)u:Y,\e2@b:3c3@ψؑVbf6fHoQ4u0GvEԊ1>1*#0w5?ƻֿnRkEѬMY8 ߍK7e.)`<:k: 1u,eC7xRW Qb,v.3QW GĽҦI q7 8BБ` :/zE]5P 1V#`I) 9~=G9MŠv4!^" (Fx@daϰЎFmY]R;[^~ĺ*^Ǥ吚xHyʗ]BgJ휧sN{-?zHꍹ,C=Li ݼE!px-DA!{F2|̋ů'JVwI\B*??KѴc^TNߥh"F! ڊ.}[᷄Ikf^PzaR B!R6P[O4|m ߬'åwvl(f9(&bq_m++%EhUa3G nq ),m]BbJ&:Et * oM$ c#UN]/KYIW0ֈ̉1U&}n;o ZI|uJY8<v|JQ辶]tv q7{^_"sVG͹5C:A. [~iU[%=A OXi*X =uӃ?坖 E_4ہ¿Psr`j\pgnJN{a- 4ٳ}'u[ >N'gEL-Ą8g\wufE$w7vFgE:ThB3{׍g=GPc>'Ǒ0[D8_]J#FLz.lMݘK͡]j^J6ga&r-5}}C,wfa5i_RC弯pMCD?g^M@0^MG{I;y:tcgv٬E8º+-E9=mcQ->%*Sz.3NgDl&7Rp@;H!.hu̸Lb3bt"oorixOa`)c07kM,BK?\35њ&#FRN;UYz:eyɴ31XO8{7y1[XѾ?m%p%T^y`IhmBN<*mל#hBnqйJ{2 |2"w^Ä*>$x`Gq'M 5NjuzէT.&y?|.Ae~ '*VWv9:zT}6w.侃&,7Dũ9К1)3n;@/5O~9DTǨ^. %d3"ro&Vt.nHD^xz\7x|s] 7rS!ª*/8FҐmE e`vN4hB!J`k]Tev^Y!4$*T7OUFC6S;FWYMkxʼngif k25SQ$9sRTfMϳs3[y]OQIH1Si]a{;WAlervdm!] j8Tb>a 5zKٱe M/ *H#8e,McUp?⟰Yg) B!c ȟ돇)QOlsk3j4>P*y<mӈgU/D[1V4ǭ{Q,C*eg<<;Cl? oh(8[W \ I4cӉ*/$V>ڻ9_yPѰ>+`vlտ [rNB5U g%޶M psx%4X؉G+:KQ|h2SׄzH:Bȏy; (o!}uPâ2mnYwDVW3(\ZR;pn2V2HQ1K6[E!V ?\!bMbm%ЉYUJENa49%|U lJ<;{4xZ}ugl)"Hf)-0"9 ڣK$('EZƖ-XNCc6$P5(`|*[yO8E ,̀×A6)Pӽ?}WՑI"G\ʛsnm)~P6-YF ˛*>,؏[B ?Bq>@_eoukD~4,SZe!)u9 ^wC&G\Jao5N_jV#y43u&--S'bAV>5n- ;Pl<>*/EQEXEܣm!! wGh:dM ~ѿG 4 -fp66QxcJ?1QZx2BAyN#wÈudPo+'4[wE7\; zߙ -oaN;[٩Ua),:Zh١2M$zƬPՄZ/%"&:K2 ?JL *:WW j@!שz3Y 'OӢ5왪{j;%cͬy8 kAh(#\ r|Kz ԡ *Aø*:upec~k"BK -`)/}TcJou%D> bt3&4niNW,'PgʁčrֶߖIQ6rqUTtI fоtA,1쇳C+Gg:2VFi `Vh^th{ O2Etov( */t󾩭E $g#X\ֹnPU = 3I"ѾVR<6᫄^߇Fxw@Lв[Qה /ѹGz3+>lqr.hܓ Vq } wQ2pq=tk˟Vm]u#v9(!x\9-ε3>>%Vb?O (&  m%F9YH*>R1" &$+*O[pIIISZADIz7 K&6Ah1\A \Qj̳ -nqxcסI §r}눼p+3l`s>:+O䔉W[JB{T08E6>M]ƽbE |D?_`dBuW64 Yk}.mN;P"J7:a!QrMp1%oX{Β>]WB%#qJpigiݔn8UA.}91{g5ɋSwo|=8ǒNP-[c{@a8yL?#dl±ʠ|y>U}G:U-;K;oyD1Ś{u_k[ޡ`(>tз%?3z8G(؃D -| `>͒׃ON# ÷c܅!c`L*;<_ >e0Lޯ+`ajwSѶ֯'9dpc7ㅊ/zrU*%cbRE/ɏ-J:N=,7hGrs*IfR{C 3#[y{o$!5Ȝ忽+u)eڵ>ԀيQNǻpaZě,/ -7_F>G[P#c_|tדus8Pj^SL 䩫ko,QK*pE&háhUk&ZD Ǩ^ZGkI7XgW"ԌF*:ogɕ#*f=` k4b 񝒗j}NA>}!@:i2*%sW^^Z<\<36ŦQrLH(ECtСWu *W62)"ohF'`En߄^EIKq* 69GEȀN VpKT}FQ 5$w~3,S6׶$**oy=" U,s#H~`<'|uTH9OX ;tۙLm#4.^Ze3K0C[QXn"EiO蚙#n\wj{4VW8 8UI~@ҽ&)?9)+ 'aJ5TB(Mq)Nuh:=Lه1wD{RCb]DOX#XPbmaL#܇)ꌣ,/ #Ad^ ;gW(_js409icMFb"#\KzW!I-9w_bAe Z9g*S:LN C[ѣkY8|JijuPf *ço~*3'qsM6 Cޙ?ބ+芊 Y`c7. 쮢c)`+a/`w߈ֲ ^]W_f2|_qcpфs U_B"'VQlvrg| =M:ƥ4EfUKEr*߻U@=&AMkױ.h6i^L-&+*1?},9W&WgN3Pbciz+iI|+@( :k5רA; yak:R} ܯvFnZYG}ܻ៉1͂(cvC{m%=cz2Vs'Ҷ᳆ '~LbIu@Z2& 3.9 Gb&7^SygX&iV}9uRʒzmpC'ZMAv/R{yg*WucHm↌å h/pWsh;E$x(it-d{jPiL;s،DJtt̿j'[$X檣 T!,)!%P\%+.n WRɻa04"~Rnb8?@R7i^vNLy/'ȭ>RÌb1Xx#t/M |NDV[aKhL#Pc3{ Dɣ+MUvZÏ C(m/_Uq'_8=`nsVcxI!`I"M`4xaT`0c=: v_~9ymeV3:/ƚtPaϐA ì5aJ6/6:'4 r<WoCIJ|wzQ2֑ ҂* P@O/EeF o<]݉'Z7y_Vp:]7p7wN^ tzM30ՄUW``k+RŔtܶ(R8-+WI" ̩Ջύm 3 Z`멓TQRg`\эyEdQ) <K* ( U N֭=܉8A(?[j: rԽvd(@9 lDNu9,ɤ{zݤ8#W/shfYִ"-&X A~, %;j 0u!mo>ІX]:S8%IvuZdF[6JŐiW{љqٻr]@:o#r=~/üS#XyXr6uFű7=?RWjiTd) =$0d/(մccS-@y[ۦ^YK`y&b_^3{ d!D3~K( phmX?t$Ŭ}/sbQq  $2fAqx m>:>.PHCz۰`ܾ ~b\N#QS\ 6nlUa>S~ ގc╝Ĝ…Go VKu͆6[7bUP2!NA;CVlår'F$}MQq(ĝEXs*Kݮ5KI  nV%?]#w?J6=i:!_څBJC6YZw\7&|zA n(U@^@d"t;'9?>8](OuT7v:ĿD׮3TBDxۿxBI,׀S?bݭg̞n1(;̜JH4j1G^>BztRz"MKsNT.'pk]W+V.hUH C78;q\ :U 7Cw /M;g1?lѴ%)6_P0 3W]3=#P/ vSYmoOk͏cvϪ߼JlT W>pƹŠ;@;HnH"aSo $ɮu{*xښ|aN*'U%!4|wdOBoe; 4ȼ$Y֤ 2&Z )mM*2$1}S譴;\{] N૓ t i·،2ъ o= +tj=!5V;ɢC Y\{)K>a>TsoW #_\H|f34[{-U1eO΀nS~?D j6 fn'N0!ǤQA>L d^Uvw`7h,D8VH{Y(Y+,8]`;]n|WK] Dvt' NY408o[Zd!e=XNFelNH;QW]"vݱ=6rڗ-s"eŸZ+FtaY_U_Tݵ ,jj/2i.4cJeb:hK&ny58MҔ;}O^ʮ ڬ^7䰭 > IEbFodm!z/ceT :[5jV I)zuvG nQ3WoEԠ88K*K$k_;+o^b3;FV_ۄ.O]myL+'Am+Ж8j8 )k>0͘(=]PBEwZw3|%^IW%JõgL[ '_IRy9oνv:H]:Cͬ߈Bn*UpHQTdP1,AYǨT P[zoxSbT$:K{@dpmgW+"Is`fӱ7 {pZ 5V|tF}vi,(C9|K8&N8t,մlR$hF ?)Fu*&2,GMeH.HKiq&1v3-ss:_ HH͇ebJZI?)[&56wdfKI~ȼхǀJjrHH(7\xXw>1'{{5@O?ʹ^c,=DhSd*XK2#i:?K,>{Cirk;{7+ P@0CT͚9}!YC& M*so(P^Fy6 7XƫJd9KO'*(k}s%Y g2/SD RA?%K#W)ޟyqiwl){h ;)cyґ!bqep@ m#nX=d327GeA3~d5)o>8W( d"w-sR;搜u/aX͸2y)]-\~0oL>Fi(sg3w$-G`ċO8eG!#_ăy"Tnt&{'WH}pi Hij|^BWboí}j![0DU[)7v, lhp/"N߱)nЊU(9юt8}YۭZ`_'.e.5$"g&Yvqdh23!Ȧ:|iL! ]xu@UW6j*g;zS(}Exm"TķJELIdIGynbmOo]ӸX8,e3R<Г O,-i75jGҔ`':> Y  QPOpm*a$zK) +%0\MOnz&FX*(F m)zxe`[[N.` ) Xf0%fҤvs8tk -xgViv ' t>˼ UU#rZiU_/~-r'4d~(?Yx׷=URP5*4V['^^b s>.5ײev5i><1H/t`8%2"rC(mJ ~ME="7hM9>.TjSO‰jطh_h;88D[%;$+YwO ,\8T 7:8${p5UO;8IIp҉j%>I#&ہ+^" N, XAۖR9b8ς[Ӊ|} jAȾzOzFZTM4f=&d}fJ |=N[0a3޿%EmUʆPF3D"jO~shuI{h}4wX]Zoy1[mJV[W֝= lgN;6Tr B^,'\#6m|Vmy煳F)A͝ϝԄV<SHXj Zw``H|LwQe1!3>15u6x1&gIC3hZg7ʒ+ai4VddtM0+ka* "޾ƵM u4Hte/?>sZADf<DM4 P}K\g>F_ʜ j~ Ə{w۠WD|^(/kudHRb z`uU3Keg :2yrk.`m TɂI0"W9'&:|Xs&,ʭhs[_x\YoMYpܒF'%by03G%?92-nJԉ}*=]з5O_ޘ,Zk3- sxH1T]2Yb&B< |mqr 3|Ɨv5%L^h¯PUi͍`o\6,F׷v'mߑ4Bq[4e)II#; ZkWgy7m:\no俁؝LV!"C(hj +fq:[U\hCA v0IX l4/OMU&=nZYW]9[RJꥌo[3wݯ&A4o;v2(T4VO0oiւ?d#k:ʭ:,lpzor:`GA?e giҼfp?8y n-mԊ\=TЌAtH-R8@?wDU-qad[bF R=Tuzp3{J&Mş2oBElU;gC, =]fm|1ҧ6>qȎ=Om;xY3Buw;&i_7FiZ_L7O}8^XN ƫ! ƜGGkvzʦSnQQs(>\ҕ-3jiv(RHl*.;]bc]nԒ[*}p $Ku!pշ2L>ܹ{؈ȑ8%|X1X_Jgٿx-Ȫ)'z%*(5$4_ڻ]C=Sp[,m:`"4EY\_n"w΂zf_Bɏl5@JjK'䫮ۜp}%/-:v򢶆s/Ac3qIۢ:ƞV iP%V!GRTR^p\v a0@ \;0JlдS$ #k;P/(w\-6!ԝL\"BnnݫbO:ߓ>fI}~r>`O~{;@! (|wd3L5 -&8ر!LWg4>DCt u?)SQ]Å߻HL~A1@͡A%C8Z=mPK^Y&kY>ɨ2z'~+U@JV%#y$m&)K3K%V$ӕylb ; Sg[I \B*ݝ?ۦx\qiI,w)T. 2J/hFpLwY}죣u =2gTS:?,9@C&|pQ꿊gD'Bs> -7 -̡* u*FJe^ 2t, 2!|Bfrc$QVOQ#qk K7CLYGS.>i}ts&* qw1m.,԰9#TU->۔Ig?:担oK'rw.%P3Jm| ?/;ڟf@&㽉GxM@;?OeY*+i5QX_!ϏeQP+8).Wm6$}o䏩yk>L1l/t4 KJXX+xZ{boI.hM)8 *đm:buic6cĀlb @htTzp-Eqƈ9*c1b9+IlϟsI!9G]s"N }q<չ]QM'G8ȃJsyy<2s^vq?AL+ڎ3Rڰ 3Og!G}ݔDvKs$YT,aw涂jqiC |vhxzAqЊ!$CEj˳#= NY%d$/ B{|-s'!W\5ĖAVdt: YY^$_ġ岌GSU[=TV]%*>Q`[ 9L4oo*w  ˍDl rGc{"Q8ԅ+;{zQ)hӢ'lbaZ-1K5Z$a:V:_ =x]y_21Q5ol6RAoVfgI.! DUG|70(.`gMvս! 7`ЫZ1"~p1kGiHӿ⦐ p=ͻi&p4A0gnA1s `dh!c\%:ۺĎ 8wLbrK_{ZHB%G&?O1Ɨ):KiTՃnȁ] ʿ5'$Ms WtSa &̙+d!g6wwYʇQ㿦o 6I8S0(iou N*G1{> @Q@?.'Vld)&O+ ?V@G:q] |*Pi╠KZF. hY{h3PL)ǞJ, ,_x}wi NDJr؜ǵ[iMhd:q/0u5t 5 7,Cf'M~I](?}e3%`5;j[PmUOx(]S_8=gצ&<ц3ԡpGdbQRuw6+UtjZy#"@oSr.ս3 $k kvh kDK6[mo']! ?𬎔]]4Yn7a/XCW I72hn;OdUN@`Yfwef_je*AUc1ȮJ"fiaz!+eu4(xi}RG}tRoV*,|hh&u%Ds55R@HDYt%sF|[.ҵ;wņ5PԥJ.ӞHhB=:%B WAGӝtwׁ#j\{ 5N,_70I_Y5}ACfٶouUv,LJv/(eb)~҆GBŞ8W˗/ (rq5oNw6p7Qa4pCSu&:!1KTfwX V{/Y=e9ZIĂVڊ,~MKάpdw7QY2~TR@9WFo59Y$b';7!ی٣c;XB-7kb\>P}Sgeg)J׶hah[OW 8n@y?Z~B]`ڽ7(_n{gݝ(C)@V-#G E3b~"<=K`$h&2] u,آ2Qzowق=&##!يEhkdMM;HnB\w'xw\Ǡ{sYJ _m[*T_(Pt:c^"W6X?2j)ovj5},p-2]:ve-ҚV mcJfh{s1"bUퟃXi g87# qj&ن+Ń&ΕH!'xj(,pɍ"۬.ŹT [s@L=n"-θVuQ^9>Yc}'{c2:9Y =" yG; hiA|wȄ: VvJqC.e(6ǥ:~4ȴ><@qj+`.0Y4Tk"zwW,=541U"6}ï73mWS@_/h6☂Wˎ :;tI60u;Z \ D^_HNY\xˇ0coq+[OЀ;gz{P`/[u j̠GQZQ3@cH>[םuk^{,?g>쾱6V[FpE;t-{xDc) ʪGѰY77{Mۼ:i3 +|L'󨖊nZgU(lhLx/m^@RHD[Hi64՚bXo .$DѮF!ī:)) 5 ]SY$9`Ѱօ j&U驫6`/[C^/'Hrۦeh@&GX_XL)x!sbqNgߖcOf,3ƾG<澌Y+91 l>3`qJp[ .߄GJJYumT[L8WI)<-= +b7̿}..BB{W?jsޅ= H\HG9ڷzͿƗXZg~A,0k xdKtZ"'sĢDS#)xLS#Y$k+9hJjxjfoh`R>DnJUAne-GWR}wnFRdUg9;m{4n)֤i@+ʊhn|p9e)t@j߅8:A|pøGRq;E Nca,(r 8&R=*0]3>vs7\Gu]`=_8xZ/VT[ RjEw=Q쳖^S1Ll%ⲫ=$iczP|Z)ؽRc*J`0VL{Xu3]"Bi\WwUiփ"5vHγhʷuTqpO!T)i`$ aWRKxݶi}/D=w΢yh<%lYUJঌ؉tgul6 J5dMaZowG&d6iZ=j]:j0oBjÈl Dz̮~t,n5 = Oe"ۇK @foz'l>Rok@>H(pkok\{4o@-{ᳮ7HBO.o=Z-C`2;Kĺ)|GF -1^0(ADDK^9Wv*M ? TMy``xH(9+oqD`Ȯ ?}Y+S΂4W{'x_0@$_y" j?7jJSA' ܾ!<ݿa_I`ؐQvv>iO-4X;JÝϡtQTᬳJUXkb$iK%ySQI_syy]#kK zGWE+ 瀒1e?O eD\wJ.x*%Nó ϩ{`f*E Ti!Rqet$jtO+ #3xhO `a#.#8LבvQO(K~gk1[S Z:~6m!A0qSItGӤI{q)w v sل u2g,ʃ`PEd3v=>}r .3X,B+=wm짵`VK/ πI3mKGGyZnBy'H=m3N;vt؁?E4]7- (ȓZ)$gH È|͂j_@}M,#@oYaZ6>_5wWx~)ڌQ41C+&ǽY?1IV4ĉd@{Z낂ewtȇM)6*y-~LO Uw %L),3gkr$)Wvc[/!銄ЋQcR55̀n.H 05Gx՟BXa 8'WМu[c~ (#3?O c1< {e_g1?rBw$#@&{A;޺V :Q~"v_S' Z;fMQ,HdL2낅S[{gcٖr,_;E8? rV,Ȱ#W┭AC`Fggā2 ` &P ($Pi|BuD|'NEaxx }i0%;;*zPFĺW4}5FK-pt} kǡj_t,X6Yu %uu^ۆI:.- ;0Wqϸ0#ޏr5gf$ҋjh^01"$?|/ \}^Q9eL{ kt-p fq\`j^|'IGNUׁG!5\\!'R};~G0)^:%VLXz.f/q94+qݴ3Pfv}@uN2dӠJ6C^'VFMl1v} 榸/s/q#`u'oǢ7~ChxMoxp/{lB[XIYaw(N\>u3pkyJ$|.󙔺]Jm_Љe ^-u>Xt-<%t'=䢐 f.0#.2Dʤ,ҩ?Ƒ%8+p i~X~dYaV\pfsǻ~Vɖ 6wblK5K6ДqPr.Lya4a*f_Uo pB~R- yL v_[l.vi*!%T6""ql "dube] ?-t3n–ܦ_YJXٜ*†8؟evO+ֺ6vD\,½Fm덜څD0 k]s=ԯjmljڐ,URmj/N #VL w#U㍫c }Tl-͢eXGayS#G9cOD1@DK'\箂SM[9ӑIKfPwdk)tC%̉sy)ǬdbuT9 c"bU9_g߬޺8qIx1i I)#7$-3T[^.P;N"ZC0Cϰߞдc >Qz}'A1R"qc|$ݒτ>ħZwgM8}r,i!~Lsv%*TGo`VMтaR/;|D\)!Sί{Ckhvظnu~jE;<#O8O̪H6(u;n ` TBRk~36(Kzm~g0ǺMC7O*dv;CK/,G%ٻ˿;P!ie5 /hA"j=頼AK U=LHwU5pWT">ӋJq\*P36JZdT&~-|Fa7U>ۇgG5fwq!&Á!N^f!@G>Pk[m82D0B16T'׺[F랋Z >MRNG p\ˣؾe*m0`T71NɢDf+~2=?X7rM伲;nA=ꩺUVVw8.&/%_mvХBN7nSupAώnϱٺĦ_WxgZәƈ꺰pV{ q+f]A?93hey",R)t!bcegV? ѯB1+gݞĚxs!@[J0װHil_>LԻ?7 g4υ~kކmͥ)dVHWi @9[`6>LܧLA5[d>e7PewqOڸCcb-\kS@>)N>+WD/$Cw+r3ƺ v|14[^8Aa&L}iwWMbL&l@ywZMz{Uu}qҽJe!c|~|YMei-veqI "d5bYӶ V.l\nD$7k(uO )L~Ñ¿I$n4Ǔ@dCiChKD@n'_< EP>hv K]t AS\5jVfE4#7Z6x ;ꀛ#6|{#yJ-R*!qFח+>D^]DkJ${ { FM*=ќI.gDӭ'7bjU<$J[ێ1R>ڕ\09V@|>Lw('_CU5ڨW^.(c~/1mٍK`l̅ ?<\%;ѻju l%^T߱4Mm*uOH6&4rã ʔ3Ӓg9bWz;ia_&=%I?wXJ㏺M"}HlCDvӓG슯 FD--ϔ~IQM_>[{_-r/R4Hw- 9ຍv7Jy@ٞb E`m/ulLʖ#g m|=4 \҅~Rj;2oXYg3<_ }[{ݤBm^~9MyAS.1ZF\hҾ5 !3d/}*!<ku)M";o*]TI̮ʐ0H'V]^?Dy&[`nzw`"\߉>x[ ?J[76p}ےeSlT=D[|=@ ɳq d'`qa Pw F8\v'akW|NOsBlQHWtZeOkVr.%sc1aEc}][f{0=B#žͭ2>|>>S&&-2 RCn{y;iتVӐZ:1B<=&߉otTaEc۩/= i {m}9HU 9NH~dp.Wte,%v];̝H_\)m;$} waE*y=b9+DJ`ï(*ZtHoLdhNֽڻpʟ տ| ;jJ-IPm* ̀563j ݒVbcr3>"*"zēi08P#!Aȍ#MiJ$Pʻ 6Sl{WcZn Ptlk,`ʼnBɟ9{yexeRMvWt*{ | Ld$EwH}S)oquzBχAp{á:`) zQt[=f<)A0$YL3 %A|יB ț<yi۩^A8ϷC<=`Tɘu:lcS04"n9UU m$tHKcɫ^$'g&E~V u8f˝P=֥x!assg'FNM 1TTSw! rz+ULuE|F `p yVXG wPOkXt*b9J-<(tbE7R3x~k}$ٲi_[ kWn23*,=l #V?%;3o&!g,rpW ^knj:7 $֪H1$|^7 lx.Fw@ LDHwu'*TmBC݂gK4"[Γf(weW-!ϡ4[o6Ƒx=1KP<,^%"PC-0UX$+QRqW<b^ZňV`(>>wPl@HҷrA[1߹vc#.~B=V?YCؐ+TkJ15T02e]BoIO&10:%7$EvVy۝i'M[^2Q-DTӪV+ΐ-2aq49VΙNƯׯ~+MW{Y),Pv8_a8}jCL{um hז_|h;T\vHZHV`8{QQ >$+ (iԐB2*B'ꦽ^*=tj~~`NXY Y加#G諼hԛxzb%+~eߠ1*X~q]7._u) k~gF`@΄| bIŷR 7ϙh%VMڷyVA#ɶu5ȯ H]~#վDW̢U|,~,,0rװ_^ˋ1U^ܾ6& yNiÍ =LU ?Kp0YԼ9CW7]y9q(;H,\բlzRO gM~ ä޴oSSD|/`B >b1 "Vt.l"1 c qs7uH?v4E? :Yy}|Eb3JI ;OHk JI8AG=+ `XXK@|69ͲUQ%5.&2jQnuagmalvM )yui(\iҺv Yq~ʈpK,|zo'L0ߗO.-x{H3(}25w{m7pV_KidnU&vT4CX+>>B2DV@ڧ-gp$XPum]jѾ( p=C\-hzQd@9K.IAbxv/hH6 >~8/S4SJd,Z?>3$B}YI(LjE|. rnEŜ47I rOS578l2# [?M}Zo]:hɍJ?\?9&.`w67'"٢WY]+~f\}MmȰ_ɷ7rLPy?QGxW۫V[ɰbm'.kttP.X Z"W<(x gT.UEzDz#.XQMG F&`\v+-%[ "NhKӴ=7|6e,t9o7f{^)w%_<5 lqB֡On|C_ppsYj!V֯B⊚Q0ZݝAm; x @()\)0bX+>ͤI˄ yN}-"'uy`Tݴι/ Avӏ쳓,=F)(jd`isc;/2w*OH@pӦA<晔.x"i2y5 qb'"W.HǤYY0(u 7k,]ѳ5/) ʭpSI!M:/č:^j^ Z=KD1@ *wfx݂C%jQ º,C8\1-ֳѵ.NTlvG%i$.{vK:`>J:b܏]oE)9oFL ^v\ bǺcrN'C'll=ȑ7D𦐺(Kװz7(ygs7ftxQ/H E#u$:S^8_,$B9a4VԞ#q0οn3^(8,[`hz 7E%Cw2|@;[܁G59Kjk9x5pëJӣ[14+jrOZgb=+{NCzl2BEݸvWKɼT3"S#w 6]ͦ^GUGM&~ܤ||U~qB^iNfh4חjO[Fq m Xc%Tu 0)[l}{-,!g$H6ew;!IG6<`.bwwOr<1i`i4M}@D%U<1CHA9͙x.АDDGx:#NM vm'ĬT"d)Pj:zF\Y \%x?/mN^Ht+fL/ZhIUXZDy;5 ֛0pl¾0ّm+_ v.gmeR\oG8[*z2iAsnV|x隑^2Z [RθNԘkF |u.RʫYuɱw KkPHnFq_7ȭRpWFYEZ AG(mY5 ͯ?cu\3@FHQiXy)"L'7!3@e߃QU-@36e9;/%{Z( 2 iNYk4s/zwbH F4P+E&mJO}Y2k~$Qň,T>ZW e}T.:s@хvl9Qv0WKǴXp(3@tkugB}e+f}[l4V4SPw o= ČbBg Wp iSdXbhŻҎ/?8RfgEI+C㇂Aa|hǀKQe}jԳj) #cC hխOaRgHEkF l OK\{pȄ g !1NX>uiX.FciۃMzU TާP_Ea.7Q2SC3.t4"d[_<G^l-Fr3f63VXri0}lKpTqFh+R'Fri"Np|>kP| zW;@:6 ŕg2cch(KjB+iiFwO%}-,A?;Iiub@b9e5xsBd P Tzb3xI&+v$ZOr< y!oF՜5{Rƶ .8$7.Fq( Zm /%.Zߒߢ^< IwY g Ȟ" mK:/ ].o{2)b"xGd2S`w`ν 0c,0 Ab<:II'm.{˦ieGTC{ E#mYe@Mח@2W BSWb8PvNhhp>CP%}F{0RbͿ&*+ީIvSKS n,(g.z~ʴئ1"ڹ>?r`1+,`-Blz--;'6XXK` ۾=;9 %gSiV b6=ç)yQ"yoW][R+ (ʫR74hQ 05Cƪxkh sg7 +jQ%~%ErU(;%+G0{`y. 96X4Z&ƚk"dj|2|`GRڣH.de. ugRG˷qСݑoKE 3\&* p*!&㹿#Vj@]aAhQ < `MV@?JD W&?F|{AdX *2y"Wڟ KR),S׬Cۃ*F2mX$'e#Z@Mז>Dd{4~Y5~ U|<\5#E3e :)H!_m }ުljnrq1II:X8Խd>0O:b|< КǮY,/ⴵsu IP`ݳ.MQ 8.t-w> ŎKn3b@Q4;5a`|9 ,_^vU.gE \Db 'm1VD\~8ctG0?ZWֺ\RAJ<NoP?ph3~<֛#O؛@ҵw`D> 9A5T<.`~ v/-?]tSzq l?c . uK'o1a}X$UKծSNT!U/$Js 9qAZ^L.$ wYUD-P Q5NE쨭v_u_0I/>L:[T1hgUP! 2@ ޼ͼ/O2F?87\k{C)HNWkS[ >\ W{}!7tWK,ؔzH@Fu_EWC٢RБ]}+!½/z$V ݖWiv0XzLpɜ?(Zz[@^u*ƴzcDpPꢗX5$3a [٩ E5&-]R%^RQWr+n%s+ upR@  r5A/TM3 ʂЍO :[lC CvP<ʳ ɘHAPC\]wMZx[Әhťi 쌎V aGÉm+5KW.AiGV _&!KYtuጓ$$G<@⏍V2`\otkP]E[f,OH[EjF}ℬ;<8i*v_$kn?2[^v]k:s?g|ܵ?5c_TRVoN3eNŽEa*mمt~uYlkk>I sϣ,$(5nrf>ۗo>Vk .6]7aBA[8G6rQvDD7ZaG坏iܥBD0_R+8Lc !+% )OYkU(;*&}ŀʘGt+!(ހį'bI*8>q8VkHsGΡCbsa(q*XaBqf=q@Op)pt .T'+[W8/0c:vHfK10iMŭ7OPm/ 'VHbgeS"h4} Hkn>cQX9daӾN7OHz?O].K RꜲF[̱% oT,~ uT@*{)cy7M^Z4J'QϥYF`V}}"|:8i^utu`=~#7 L6R}L' INH@ALӢGge0} JG jk0veZ]FHQסd=:H`] MRN"{7MY?˷y~˃_ۈg4E`S SEhD4k$I2?W XMb8JS_V\s"ٞREeB $tz=Y0]IiH)D/6SAgk"PX,3k;|qdĿ(l^^_5L Ǡ0|#sAΛP8A g9t[Մ] Gkj?}RQqz; leetK^_ۓXHYn]_7 c*,aF)G5"F=RsPh'Of t ]qDW1!yV nCa9I^!' #vg-m>6d"8CK-9uԹ5ZGA+x \r>vƤq`qbIF'7B [m"DY76ϻ8洯spߌ}NiIڬó 7~~t5\CF1Y zv@\NOVvEo;K;?/) Q#8J%t;f*.m[ !uݯx.|3S֗{_%d [|B7ퟯ "0nq9^u rB'DNcTX΃yI֎/\gON*`;k/JZҎ 5MȮwϒj7v*TANJ&]R62.8Wvtd}1Ƶk"I"|MP#ߏ5^c9Bd,BwE/AK .>!HR_ߝY * iܡ`X" Q栭{Xˀp{6s2VrTJٱ|2U z?uzpRʕd[)N#*~V 8nn60ڹSΛs^揱׌$zѫL!;ͦѻm<+6cj,77'@\ JBBⴸ*׼3KlO✵MRڧ{[L+ϞI9$jr|iU]~$ 2- zC\ iV֣B8F"Z 3hvcU2 II5a>h*sb}XZZ8݄q/q#o< D"|T6Z } +ƹQQi٨$ۊ80hXbRqVE.}n^> G>OW4o*ޘFd%Tg2Z%bQVAn-Q^o}P\KNG{B‡lbUV3iqn)zIKi~c\ ulERf ЕO:wK"KڳӃSvze6*]_@{"L[#}7B6ക1@1;emh2uHO*qXsoxÐlv=Q}.=>%9|qxCsSB syP> *Y-=DP0i#̳Df'*%|䵲Nzɯ#bxG}0keף[vGa OݣFl?ttCr45祊wLJI=/?mm`Ae@u ϺUU n-༞ !в"<"΍ob>9y_S !ƃ%89{5ڰ z"KE - E cr:,."~A$7NO 'V/z{h8aNVV'cm- 1F;E͏4,0&rLN50Y m`@*(։=211cu2VS =IDhR?A{m_&xN0f^[Zb&:{Ei&mǤZ݆# {,Amv='CQRihJߎ~Tj!Ϧ;fv5 ߒ0rd(2B\F@+wR8=dR:^ݟMnWՓt+[7Hrdf$E(QLsMf+"JsG1[X|ag SENɾN}y@eak.™MAbCuFɋ>}^ꌇ6 v߰hFY3:z.RK~P8_Ώ ?E#}0XT)} _睡mTB0%sN\UW}[aI L SOᮤX4f» +}) +_+.K@n! i|3 c͙;?Uw$~ԙ;? rC|xD$ s ;Hwx+EBƖdSL>?-mWi 5nV" ̎sЂ?3i\0AH|iuS ׿V<xt)>/Ti,!I#xX/8#JѮ-ˋeg ǡKSaquBS_(0ڕk짥)bQ+zւ21}V%<ĕ G9/NI&ӖnѼ:V-ԧ'8wa%>-Qu ̒GKu8JdMT,/+b HZKFi$5D '2k2 B' 1孠䱎`ڀƥk>:P +pݝηg5TF5U We$Mg.U5fs Ogz9`Hl/?.@SJq֐:E # hkOh7}zd)Ԍ4@ٍsjtRR%AZ2bm 0=RzL em0Ik ssßPݯ6"i?t63 bXb*M :[?\[qYzQ5osL i:Y+< O,oOpa]`+wrzX)7;gk>16>8⬊ZH;NȋZcCs *tgvš­u.,1pt~9I7G';fD}O~z״FF<q)beSŮPO3VS)4yhji$~`)"yU,U{ʮ@҈0$8Q:2L^,\Bpeiz5͡BsŴo PC[AMOh`jߋDfe*5Y}f$6g Vd.W|M4 (Bk#&QCy%E?΀o`-{?0s*b󬓩+G ӕcrR,\90 y;?.4m=+F5֫Z] 2:0Gkt%S2zI+D$EfE@{xKKD Sm&" z"vkiQiE:#9(_l tm5Hôb=/ 77#38b~b`Ú ;>AlIwT>xnPȡNctDĎO0ܻ"\TL}T~f[]m USTFOXFYboc*aJ)lŤE 1+`'a${!A&m]Uz:,~`́pM"L4GuBr 빳ʫ%m?@Ug4%=8jR7z 6FGQ5H>I$}4 òv{uظTW=<0S$b~P^_Dp^\YjK,LYoϊ̧'Ɖ6\(-tqIUwXeY[)8@ wM%,*%*W=5,FHLZh C#p7vۏWa3dzʠ /yN$4[t%o4A6TGk}-;\OM$*Hx~a"R RвC?4ԑ*NsJs/sm},J3eIz;@[/j2sr ї; WCɬaq7IQ~Qއ5ݸc%PϬj] tBO4 dr0r:e/pu091+'wdV4&L[-41كpٿG;CMY5[PaT;Dy-'ahPCF[/+{ jgx?E4\C佐$)Q(c*hz;^}xy ^T;2~XBld"<9VEva N#ֳlDuHxή,3=>bY|?0~MKšE* # bϳ2(bdUMbпӷGol9Ela$9{zKЄFgX|t7G'QR P){9$[B$ܙƎL#52}EF~Ty&d)j Z;TpMxӤxl0M᤾惿T% ]u\}h(? 6&~ |ľx,׋&N}s~Xq9gv abɦ֜cP PI9hz\3"DMS1F[a_ j; 6^<;Z;}^B,x~WYT y"H >L.`ǧ&`:e 8, ؗ;LqNJv3ä [zupL/q4з9mY {7P.Bp2?2bޓ2htX_~,5pfuqH~!YvB{qI@ pPOuBGzF{Woc,,y;A3oV3 2 UQ5,qנ#냺fpI9E)Cܩ&<a =Kf8&; q%xw>XAFX<|Wʡ'g^WD u+RZmiEz9#wK ٗG~mHJT%Q管 (U6WFg7Z4Iy@)N \/Xꆕ W6l}AR)JI] ,.`,\n̚Kl18@}*:qknD/BK~csYOM\V9,t]ʯObS^7ɛ!~\L!w!spP[X;,M9OǎZ}ռ"F{MHr׃fz% U1QgM/,創z0u sꞹC:N-|/Ƀ R/}$Ð#B0 |)ST W1Pz8#w*M/\B4S&Pܭ$; /-[ DB'V0i_]5wj m %'BOi^}2btTu6'L=Mb1U{3~VhÚ"{ <)B!~4$ B236MY;}>C fGm^/`}X52rSN P댳-l ިv虛)M`] Θ eov λU{ŃȨ ¢׹H=Ѯ$0)%d'u g"@ -۹&9R7xQ>\@H9@LTqr7e- {W,@lN;UBso F@G+⇄yrEw s,r1 ]`;C/fm8_Tr)蟓7+dy>|薀m~1#+&g,9;?M6aU{R'2e u`"K=?hv1XD{ hly+b<4R[zi[UFvu.ve ;vEdyp8a;ozʆ㈑^d9aގr8`#6Bup$AoߩFŵewFfs31;mL`>"ROTgo}#4#ҵ7q1p@1EmQz{jp֒)J;.>#:8G0 a&;% B8 dVHE/u[t]2ǠR$C]쳦>bqÆIdĪ[ > ӻ.~vY,d?7H׼>db*< 9tWHDϧ~ t7!wӟ{bYAb'l"# VEoV * 5٘gAe|h׺}0ewϖ_~c/̺T&*S@U$`9uekNs4`BhcX. ]+0Kz͢졑g]Gt&L_ޠ^O4o(T:YMj1cᜇ?4✵zZKMr\#ŝSp?TS_.k>"z_rNV&^Q6|B ;2WpZ NH` `J<r]EpB:?, __̗2Fe"fF㊗+;N aP8% k;gXuat~WّNDeqڿ~M6IN d G|ot]L4R󋡼rM/&$ύw;~9 *'=eJ~\JٲYb϶~`pS*\&i›ͤR9X 0sP־S@(%!5^UAt5R>^;7x+eX|Bܜ2CRlViU8j_xhbw ׄrPf)A֮0/3Q] zFXA6dέm?Ձ]|,B-մZn _-Bg{9Qiq&^S)+-jڞ< ągVD򉖩]CAFY  +v4tpp !?C$U$u5v(B{9(<6}āN1#|]SfT ITa0 P懒e4t!j*73j<Ie5 AI[Qc(>^6gYPZ1É:~g9Yͫz{HZh3uQiv F{:EiSx' h^jûiO|Mjߋ5HM07TH.HybjM^4;CuPijׁt{G{2φk ,QS;5DzG,,Fq~xl=jM:q[m9[ b8%.NߝڻETk\=½\pOGAD 8ご ިN\fK: 2JE|C).;tcz'>s,0CS-ՙ8( DhI$䲠쎴5 N^)CN*#t)67fϓqrUChmat")GVG} 0{ө;¸SKĿ@}JѻAҡDznqS{0ܖzIuty= v}ppsvjȗ%Ʈ=}``zҔ'&{1;g G(v8kgLMlcOm@ț `Xb;bvj/4 ʱR 1κ(@P7W# "x`@wYɃqtbY1;bjy^G&UG$˝ƗnƎ0_5~q3cC h8mfɆx2U4/e7aXED] ;Ydis]ć/7،zқS/lO~țL;b y~GmV۔I *t}q_r [=FyRU"iHo=i&~jZм/ʶ9fP}r;QK\m0Ufֶ2e10pcS7U[% W? GT&":DEF1Eg90񆘡(`͊=Yr > C. bm $B(VcN6 wt"׀P[afТ~iv6 WW bOQ" 1'lޠ=V |oA)o3r$ܐMX;q1ia}@1~B:F [/dbUf=G o2`Ԩ(jD%½YA#C <5SWa{8~LIbR֋U]yβ:PgO]ы;U({־"Yj-4Iy@X~(:E0MtL i$ſ!NjLW#]w_װ2EaC}CvlS7,ՙ'Js)q^Uho? ABP۳GS,#!T*a>uʇFlod55eS\+3M}1aS;C9TM,]rQ!,^oG .wh!~<`VVUQ$*>r*VٲaolP>@}Pӂ0ٽLG-iDkPA~jV IBBWs)vwQΪ䊮CkBB oIF_MMF>jNJ?jU ˢSh} E}/G\quWN R޶xju:7)R6;gC͋Sb!̤!7"sUjw+vBzF کuN<T,zd5ΩM?QOw/OsQiP/.SuDx9"_\Ҽ'jo,F7/Dh[&*y̔%o.+J"}s*A g|nhmM @Ԁ#_XwFźz+͆$K7\c1!b{ _me;loܙ89 ػHz;ōxp:`UFmxɟnG70$beF č__v!@66J=\[zIZ>I;}d"db-zzdy^Q8#DHfV:Ѝ*/Dm)Lx(r ~ĝt$؇qm ė iN%]-A{+-RlՂ!]Mh|dߙF Q<Ō&:EǵmUAq},ȆCO+H.Gv? 5 ˉ9S>0sa(P]=d9I(OywDW ^utxFQҨv!\qF60'A'%]AZR_>(z9b%ƍ*PU$uT(㟷JQHrA@|w6u̜6%]ȴeB& vC,,~3JHerܻz 54 'J0S%{%N#wO6Rl[5JKcXEI[]F<u; U?W1@P%8Ǡ]Tʡi%,+>W gi7Jk7UΎRap؅[:tyW/8B!WjOji|/JdƮeHEӆO`W|K?tfY XtÖ߻JWxW+|5@j,\U:'q@6ks|$x QsAŬL0FtEvWtA<׬>Y_<x<;>hJ?4UH:2fL6ixERF2'H}u鐵 )Zz(RzheDz`tTeƻ'[#X?(ʫ."ޏAry'ݓDΒ2f$WWO#/ Wk Ԥ0QQeY#-ǹҫ%PDHP3!lB:&>la>Erq 4Pt]q:»^o6t_eڀ}Jw2\5`8jh'QnbZB{APxթPfi=ndWP}>6js%x pM-z!iYWM0 46fmK8s2?^<<ژGu|'Zwdʬo|rf}(AqUoW ,_(ž b-T+.FӸs \({( &u' FO+ɔ}3#xfnif?,$2Sg.كYX$dZ0G{'oˡt Cew8ݐ lMSou7[0giy"m@HE [Yȁ|Vbj^I?%+pN~\S"I6Ⱦ &%*}K"d~nHur.NM13e=RĜl'niqsں#\]c]"B;,/77^<ߚ ^c^Ui2-C +zk,Dq Y_F=Xe/uB8V+b.F:="<+G3 HmHi BBmdv h6q%gGdT"{*ăQ_KxWQk7Ȇo.+Il<l bt?%% ׺?@jE3|1SZ5Mٮ ׍X, &.r5 ,Sct`({^dQZ-j[6玽(JX}M0)C\UkYR3%Mùrvj=)ԠaY +y6%7I1Qn=>agjJvy7 a?ꞻM)fg45__ )¸rYHgƚ]ͶL TSCn;l(^]P FfXgadbS+wPU0_}dMӜ8$(@W]&ttm].Ǵ0nQP#Z)Rj~IR uii^o)`8矵)x.~w)]&kN@:%ևOyAJaKc[*'~MyQ a\ Оleχ ]z*k-ӄvԚKIpv9t#8lkBOCE(HAA5zu+^f Lg8!~@eR 2N aC-joJC"N a1Ǿ­ Y$xi'4ᜏ-?fT)*.!1l~]suF@?wic~2"K4"V'FL8&ab1Ba]]^So:㑶 HHV TbPcae|*WO&)^݄΃Z%8Sa~^$XTJ!bdC 2>,L^62jK+˜,b fpjG~;&r*wǰgz=mt$orQbيSxDʆ*M m|DL7$ M.1bvtE* D41OObǭ}#REl4MX>Xe>'0ٶJ)CMg,̃QijɃS2,<^XV`Ơfb\}*[N`!_8 ^} Bu wK[pO BJ*i_Y?XMXZj&%1ְe+y\LB(&פ>׆^ !hI> %F̸J _ l)2*6'(Oƭ9y:+}(_#>lfu X1J%x ŃXPVy]jj2/e"ba5=^Vh/^ ]t\~/v1Z/ ݎ+є SxN"y C\OUGjwE>庋dw}t^& ^>.dq}]J' (IBcAԦe7CI5TUSJ⟒뛫s09\VeFtTZb3CyזQ#Cb2enhTbmgEr3~ҞI\% &iXFȬty>Ψ(-pw΍Es"i y3zxdXeMB 2):匑y`9I`YqKjzKY}*pGz9 S9fP[Y$E휐&-fDddz?|vZntF%53߼WLQqB<$<'K=k! sgh r J6bvD5B3:[6 el0ݞŇ4Ttg,n+sԈs`9K6]C 1\Sr-<-ݬܙೢ.)Ho疛ttIǜG\k8Y!3i QĄx!/? ]ujm*7d.帳;R\IQ"Y*\aLw.*(u]y>XHHNÙR=?JxXAorDg5%ړN@־uiN% !I#"Z7551RGM_'qv:D!OzBwfz姱i[7;! Gy5%%ZuEu(ٞ 'AϜv*t=r3ydR]I emFi儡NdkةLxf`vVLʀ+Vgg=Hj JnhbƓFga4eE %}'ZLA0,jM d{^4SQHײ*X2ģ}r11Rã],XG(cM p/G_̧q:jEX%4ʡHJZ0i@yU`ƪ)*ak5ٍw0NAY:5dJ2Xpg;o)p)aԷVh!;Ga{"bz#'Az ӘWOH\2Ush]s^?؝9JV4b\R)k&QeoX_3GEƛXzaӎop'pj|c[6j _*WKt yJ%`NZvL]zk\JV,ޑ1\c_u?xˈ6bv%7/~vnʣٟ>JfIJ*Kg4<'U^zڠmF(> 1kOU'`6ͽ8ӮRdBLQ-E`'$\-ۋk2C.NVyKQ@zae˦'C&rm+7Fm>NP *r6١KnOL+~`k[verX;& bo%ADy<4Vn]KL>gF7Λ'='gؑWr<9`]m/Wm8伖-Lb A>[DiToEDrC}m0ҡljEX =Ї+CLb-;2^5'st9`0?_z&Ӕp"*OYlWg7Fڨ"_JIcQS磄Hx*f%Z& (u19@|]Ӗisu,t'1g:KY{r9KjQĉ,X*3U1ׅ3'Š+VN5 p沬t:R.' ^8s]LE\՜Z9{~<.-[I> V*IMڅBms;]{&}3Lr @Uokϛ2ݦ}SauW=mj qa%^M6VAw.!1kMHNY[Z 2CGPơjߡL)9H2}P#@KJM UO4JTW% q.B-zS~.V6y:=>)E~;6x*P0{)l릴!|J3̑f &~iF~cITr]EN(Q&G'jv}}&&6)GѺe }}B-I@OLې2njص9뫽,W6nlhPX=ijZLLxݓ<& $(/u+W93HQg[Ёdԫrhal̡*yKhp]>svcBYx[h 4Тj vrdtMBkI]4s#a].f;+J x 3z`үEe2wΔꦐ0|"nה3l_i+%U߮QJ`vhe;ҋŐ[ڨ:=L3 )'*cg-]%'M1iLdӰMQ5Zq*|]Dvt۵v ohTjTp'm`$YPFI0C̃@\V}($IQ6LHh2#^t\RT&xW2i3y QP@D5痐S>O 0w+y"5S|૤QYX>_ܺh吘h"gN7%?\|"e,^٭{F}Vz1a9Zg||+l*XGenZҾhC.o6dhgR'Ȣ:epAnKuO(8a@aXH#?ѮUubdE. :#J\;c7hVpha 9u*7 e ҉̾@[7Y5Y5A?auf0fBAJ]n]:4;@ 3xB]!eHBh]4GFE 3fbN-γ`N*5ENGҴ<՗nllP~&Vw 7mA?u6] Yy;{QHńLd(}XM ;}Kޑ"5l們96r>t1>T *fk;SCGENnailh.u?e]pc{еdQO6C+V? gH.q3/L$T7?i4s >m>% \δЌ$gBCHxrXユsYM]^|失mJ͋Fi(E^OΔ`bbU*ej}|l37.0'=aNlu_V!s0B6 db2%ymdܕq ǿQJ MT3qն&ƃ*I\i[X4j_B:2m '`U w/+4#R㘁 )Խw7olB.=Y3Z{#0dC<bR5l. 7㓀TtY]#Р+Dly5:Hv+XA(" T]ſ/mׄ\孥A(LяP,23]V 4;Ӕ!r#C BlE3QUnt2G#h[Dl~vعx^٥u'q&֔Ϫ?]<Zɛ?D&Q..\55k $5sAUZ\EbS02)Ld~LhTlM ^*g#y×0)}0BG €puOo?6Y95 dq_Ա.9*V4~ȴ2~=uzeԻC SeКV! nAQ$1/4t[\g Ȗ/2l OƩV$S,u:PI/c!ffmy*f1D88X' i14ܲdt\U@pgf^·S r՞-Z-{˥ˤOU5'Ҿv}#W;+}P3_̝ߢ#^^=:fwq¿@p^x%""ٷttڽdVWE(4E2ņ2t#KFL(f1SzɄ3LKH],hl'E H&kNyxf}]8NmWQ"KfA%LrIY]@ܶWR+\Nk Qda{,oVw*$yr~, !v70n  H@ Wʊ0lv&?OU<; 4QE͛S( n0U* .-gAˎ^pl}EbP*_3|=sC'3Ya]}).Byۡ!E.|TxB g;49Z7绤G?0bjD!xܜVKb:CWz bxß+}>Q0(ݝ.7y .4vci &҅V1/Y OjRrar}\{/e KN@ѓ2l3DRw#x8b;#҇Ƭfm)8+Ԙh R 8g 8O0c8I ׯ縑[TS-s3[{{SNžX zF,K4Fj1ˍݳU#7Ԏby@hu"'SX[ҭe 9Ģ$"AoV 2]y_ȾҶ%m>"^m[Lh3Tp0g{̴ JS}GEm8{uScfS D.Yt"NpnPmcd ;B0@;ygZܾvm3 HK$.gʅZAjm:L^[ <;P"VDeכ*(A` 3{L/Bc-Y\"y˰#claA#mq%社h2TJ)ڞKgz\Q'*vj&D}. G ):왰9y?DoPAR5]d'ק6"AelG%hCGu'yr)aLiptIsi9D\'1FZOkCɤX0FnqJFDuW~v)R\, `JxCoCjl]ޖ?onhm4'o!B1ZAIs[U`{ +r4D8I-sW@%3. /ZK ztɳ|BQ5yww6y}5{FSˢRv}_ -SDv$",\9ۗlu S1$`!ML.ryAҷuo%J.730 xz=#5trd;]5L2=ɦ\pnƍb(!^wwPSO_U~ìxf嗢\iӐqtB 00~0S>#2"Ѷx39fdsǒdL<JmEh|>@/S`z$b,3ܧ!/(!͑?S)!製q+=S8 *xnc#`Tl\N!S싐lJʠ1 _aWfIDF:͓L\_6/!_#7]zDLC$+xJ*݈V: fiZ*{g \NTBtl-ֲno;<eʈqwXe1Yپ٥`cs*0 3g ?5m#jM5eګYtkIVأU(*}$6ԡ:Nm4wo|m- BJU#D#͖Nh+ڬKMKB_uV gYQ׺o´痂Ѣ-*rn d,g<*H#Z$Ɗ?&:%+ ^ mY4hX4;fkTFnq|{. Lw*eZX6`^mvUlQ?;Wy_NF~\/RzaZ]= R$ 1/́iZi}6vLqxiduAۄ1MW 9%N?7۶}Gy ­[)V/-YkULuY(w2'률]34ClFײyk6s:hյ] /`;9g? 쬹B$> õG_qڅ^~J'޽:T>5oT\Cx)q^2X#q^c8÷1b!VF֙c;DL3٬ޚ܃_U/&np ==Y~$.}}l_Ƭ|>EnX0v2L'4n cFH'kia`"j>;^‚< 3;]a"L^yDd]'>П !pY<#"Э<۞fǥY pFt\Cʣ1OЄB~)VEVkc )"K2>?w{{dZl#&ӝc85IvїGw3OitJjRRzg2zK WsR5 -{-uMڂYö&67 9v}:Bzzo!\~! (+&bFZ AySh/Z8oO|^,x!2bʀRşm?:R.ug}-߰Oa](N65/_&~2VΉiqS" ݒ)BaAw6uj":I$n 1VM dQ*(f.gr/.kvO(9utaijKhѹqȩ&BՁlS U.54#J EBiT^(j -/uuVʂkqXo`e/=@Μ6#D<#A[t>6(Y%ۚV:;E~Uw5n~b3V#`٥^8FXugdb3({D]m,|98kVO&T14$d4tژݿgHofe]:sR:TPEۉ5*- 'u`5R,yuB U؏v$4a HȚ;,2=륏'hmˆ-h$^E[0Is:t] jpR^jҐƍM,d5g>J $ju\7P70HN$?GP}xBwƨmanzO21&Tz!֣ѐjiK-$<ۙz![jgn7"kph$R # ?qF!mQ;r?g'0zQgҒyވ* (_vVe/ɓj FSS` " /s<>~MiHM&)f+D0s-|且똵pZ%Tͪb=?g1̌ R ˄ʓSӋ1S# 7[a>aظk>Z5Q5 M ,.o0Z]4 V%5gҡZ@υpȩi'A9NgOii6UyNnG#&3ˮ)%Hu5WlۚMycӒmM״m 3[U$Q2{*i!eN})ܜޜ)<8^[HJ=U#qtANn90bPM[2FMN2/PiޫvZƣ8f^!Y/?ətIxOa+)L-)3|uVl:,;धl@;v@@z OcM?;edP%rwn`'l~8 | ;F5 ٔE|뾳`*HlwĸY:Tfg dR@8"C%Dz[z}i1rmY[¾I"0Xʓ9Kpĝ)vݒ,) ljs%ߒ0O֣E1 =.d8L.y0 TN$n#Dmbg6Mwqڣ [^ Inodqj̿I^`<'e*ニqj}N@9~_e䏚\wwtamgA/!qu 1 \"OO1Lo@o8,Ũ^w! v]:D5%-=$@mif:5pdWt'΂D! 372T{{v [O i~z瞽;\?OQ,"A#b0B^I%{^t6.g@O Fc;s`D0y +ز3 +!E)2Ei,`p*x^&`Gtz?9#6P2k5toRgX_8E_LFC(t@ǵajPA&arQN=[_-Jl)S sP ԋAw2SpW$T"[9V(kr>Q<):[ۗ4UftAY?g)0!GK(]t.Y E| :7dCu;zaI3N[OoxkPa ݱ#A}s=Ѵ "j =(Ҁn~S=hDLѱ z\*}+f;o/?n'U$WzZQ)DԼܯ?sMM3TTxd{F1oHꮵ}|J5JY+q=4C17HZj/.yWň~/@ ūԍ{ Az"VXa)9%ȎIvu칳rL̤G:sm=D5 g_Be~bMM ݼa$u^u^b|L]zPcV2AhHZ?]q %Je\ܩ*ʷrD9ˬcGtH VW͂Ivl3UnwJ P#4NwO%e`DPnZO\+ "(quV[o Zbώb*45RpMafs΢u,+kA?g UCt= @,srrs!cܥۏăj}]f<N1cs:N>f>RlX ܠBcuMTu|o rq'D DBpuN̙ٗT9ޖ OΆסVᰌxE=( MgRlʔZمrǴ3-TWT&?ɟ:3ڸv#bq Q)KTp?jy*5."2U4QQue(!+ }T |̝RtS쟐-5E10f?]N S ݼe,{d-9_`r6û5_ 4c=,bؠ[o98 stg)+6c8M D&(i>NQ8 f:L/$,1 g㕘'݃X2:UW^"TcH䚎g~@֧@gp} IY H J.0HkS5~nZ7`*W kItT]!4P0[Q 3ߍȮ٦;$A%2pC9 ǜyL^W sF8h"}X_?8i,hޒ Kj}{0r4y\U"NJ콱k o61|HcpBxjJܢ2LwCdz}hUpIH|\mBxSeY*G-kt(\}?(I1;X W cqϜhR0v"G}ڴ,Tlּ8z5a$wa;HU =+bxbا"CE4d]#ėD^H= 9}T WemʟZgIK˓p!F)^n!G07*U4)< p8:!x43&y.j-V){Ʌ_q reuq# rTyk+w|T#^HNTO4[W ճǼP @þ-,70rsSO`l4e VچZ*e=u_:e ~E~f>N!n]byAFub!CLNX׋avϕWiIkDbN7 {1+JY _''YL[i|ہ56y[6<6#x,jKež Y'}l6iєːS7 SֿUnF7& ˈBH%w@P Kpr3JC깕6?{޷>BR~̯e"?˜׬1(pD,ɝgcwts㍣U񳾆>9l1* Xbz>HGR]Cnh% x#l;ݬzy .H>.{&4*WTS]Կ/v4[ʭBg~J KYGBBuGkw4^zƒe@.K=pbuKn\Τ.Ș=Qꗽq >\!BPEKa|-eE;ƽQۋI8/;yF LU?O׺r.%6ܡ*A2,f-'U8ᬮ؛ LnjU؈bF7E<OUA'9.i12UZE&8Q6;Ndܠb9 醵>cWGf"zp-joif *aw[?W\p̓Hȩ;!7`E`&i/,aD >)#: z^ I/EѦlNUڊď-N 3G#-LE#QRLcNQ5r\36\Rj3` X>P(v~V =+DxL g,6B*EC d^],ץ-n%Z"C1jR&X};:΀܁D%L.4;cHO7OJq B[H=0lYxlsX/QjPEi丬=iHxRc| 0QjEUF-R")A+O4ʵ\R?S f;rDa|h&4>>ilYza=&p .P3>ЕçEoi8Ӏʖ}n`Oh[|s㠬mNCHl̪T:}ף}kuXi9ov8R+s",>0b"MI:￉,k".Ds# dySjmI\ȗLNoo0 sWX*6^IwZsǡpK-u+m  7)YnzM@n~s5},jč`}^i~}q~1}R7?j7A)<-g^"&ReFjs='5 #hb:؛=2K^$HK_YZ Hytx#uy_sU~@e"ǿnk۩+U+H[8xe=^f]IG4Z,Dk,Z %Z}qXL&9xd;,pk$B"zL})T %q\%bl;lbc6oŗM}B*<31? I{ÚbҼAf?nUy!WU =vs^S5|/x,H/IUxC:HSk n (|w} 7A(@T3U>|=h-LAB/ECa^>|5lD _Iм_%`~nXmL>y1OdU5},O+dR\G_yG NI |yHd?VU*JbPa9D|A# M{aYؔ6bZ=r'W0rAɏzH&czXJĒa<5ؾa;\D'PfJek zGk! |NZԨ#EA楀%bzuE?<}mwɺ0BAOY2[N$`i͈!S(=6qC*֡˦aP )ȓ1$Gx4PO:&0QDh6 J6![#1~UIUun1[YN0x_yZSc2yW-~\^#5rg>t+ _/F+zYChvvx l<&madg}F` 1}@j'HˈI|vZ%~'9!;爸H(Yֳ8(' j.|EoW[}0ڈWչ5rnOMX/ĘI.uepau7`Uz CD H.̛<ǀRkժ߲p%e R^'uÊ~:d KE'\ubr#"boHܺs\@q7iS&nBY OBɩRY>1]\>g(Id2pDÒ0]h#k7R[;u8(ՂgvF֍[!Ήs-o+e:_X AM(-_r8JMkͮ[rv63&K9|=#"c\OMͽ ,u:f⎅wMdFHŒ- we( +:bǺr~)YIaaLYL :0T;W3-7WAUn[zD[dviG ݜz,E_}VRtFK%f:K.7lѦ<ک ɧ7wuYnhⴕCy>m#uF"/FJaŢW Y{1+tr Sh)T4 xC*O̚z/{+s7Q}RXEh Gz;}5gr^3|s(@BiVc[XMʒ+BسP킼-,WV@%6p.lPnmXvVȽY ݊*݇ vB۾861)Q˩rYbi4OByEBOԡN($ֻObbqAnE%#o ٯ3sMd?Hb9NȫSZӾrԒZF >pB au I Fsr]c )HsP2|įv&S>;&ќJU|=wb&lߦ #+>§ n7EU98I/RV( A!Z՝:>0B)hҀC\W# GV=|zE#b#kOxTDwW"ml["M_L׶3ݘ 9qY"yZT]6(@㥥N6b]W6O#95) mha~gPJTÊ6|dEOx DGƽŔIfE2%aUK>R{zžA*n nr*nR1Ϋ(DgN5NKqp4wsU]uM3= #> ש/}br}9&9~c=-76tg<4Ⱥ1fnѹGi1D^Ux(\{T{3qO$[<˵!xiVĤ HO L Ķ:/BH{=Me|yq# :2[7w]hFTl 9 Q7Y҈Ćӑxn(NFhI(P'SBVCWj?ݗ'q=BYu.@$>0u1م3ndԣW}5Y}xJOULb*?^ kPm xm88':-r NɖfBH/b )ӠuAD'fgDwP|$WJb(/ޒLP(D8{{"gd*i(&O#Վu;k y#a1ŗ5Ȏ.Yy-DrމZs+N9fO}Xי&h' 4D}vx*;*5bҟ!morݤMXwQ dБCzC͑љf*Ufp4$Z?ocwXFʃ(jov={ʊ)('cJFWn$.MBnuiӁJ7)L[ғ\3ǀO ?`bo3 FENُe5kK!A`r~`i9xYߞUϸ!y&- 2߸D8?GhvBwW*y/%%k}~@Ȥ+L g7,Ei_fɺiwl:En4Byuw7kL6D=wmޭ4abHͨxfvZG,sI8 p'4x / D j,k)K(~2 Au}*.2$с(D2:ppWhBe`!0uOe#:skIv c7:Ue 7s&7G={RN &{t%dyW3 \ ,}$'xƯNg7]X"L4|dGx. ^r8h{-8ěy!=?)4GD?kh3PI+~#ń6 H*Z)$8xqqzrr\̢=Wx?w5tēLY@{D"f×DYHc,Ԕf9⊂~5a*{[ZQie#Ɂ{i6άBs\z#LW3aPX"ECfK){b!5`=M\ 3kO/ujK11{cc=ե\iW.|qg5awJSQO}~O%/۞N^+@m" #h8Ćb>ԩPg !kC* HDnZr Aѫ7mGvK)oG.k]Fw0V{UfJ#/ :ͺ܍;A_@?y1O#tjhJzqeĽ۽ylF <=Jӛ=P /)cRXxYdz혜\nI޲DZԝ2}?!%l 7_W$-Cϵ\zգF#Q/u "9lX]w b*`o[9|X| ̹̌[UyT*$onR$%,B* J8tq@ mT;\#BXymޙ- inXЋ.D0 %\Uq`4Pl300\}͎RS9#/o~[m+U6F#! _BhfC k}6wĠ '!4'.>,{/HF-L9Ք'~]_|;UAo܃^VnЦW}hr;k!ks|va[,Ñn1ag6<2R12Xk3O_RlXj%`I2s9t-x}h={@g"%nu&N5Ӌ$w8$u mm^c5?$;x2r&p9 UMb:0]PN6hyQaA!_AGδc,-I~n`o]I><\ |X`/3IO`6 tR؞%7ƍXra.%B"3U5#JԓMeM@+NFt[S}-]k_Yai+y|>ĂN(8yxO-BX2^U):1="Y8Xx𫪔&)Gܘ;O'Z?]!IyK`́!MA`÷ IaPޠ9зeh+%< ʙW,3]28cg2:$e5hB{(Ըgy€I 'G9ɩ̢`DGxg&{*k/ԅ2V8p@t) Y=RK(܏()93S7l;?!ˊpj!٘[a[#Vd/Clfҷ:;Br_ȘS\`v@##5PV_qϋ5HqY*GCWeo$j.O%Co)5K7`lzI5-Z81Kh~&_%?΄^u@goaܑ4DЩ)lO~lOӿ=@z8eBfGNw?08`uIϦЦf>1&jUhd/Asc7)߿e2I,=)E H?ҔuS"7F |~,^r^pSq:8mKh} N9~5ZFOĀ1e2B(]6?wgV[J?-twT+I'42wt><3DK綞ݙMzbW2//حFّh0D5SWi4y:#=\ $ѭ`]Q;|N-j&Cjf-ĘK^u_~AYJ.m~N`S_&U@>DEژkw_Tn5In(O[ ?8*O_I}@^JGLS%wDkuUe<4S\sE$,=Z!V;Aw;{7kĻr̜BxIRZ~QZ)5F&s4`9vJ]=, 'X0H-U"]M'k5Q2bO'C ӯFS|6Lq沩XI)HWp8Ś7]~g] K*LK?>*XgL 1x,>u G?|czF1䓯Ec*XuK}=^ZЪP1)MY\+U6Gʣ\G-}TM6Ĥ m3 DX+E6FFI;G;rͧEMvSD.{j !KwhW1t2S%f;Ŷ#/t\`u};&N 1͓R]Go oǮG|<4RYk,AєEfL"eBWKaHCQ6<[>s&vɍK UM۪(eCp9T2KwlLDx]8 2{8-OE4F7TZ|N,>hݴTd^s,85o[T&6:2W(ȇTHW],q 0BA2H-WI_/2 *At~닢'F0$OcŇc 83C'/cOT 0rY&mCEn% R`Ɠ>O]aZߺ:»ƻ&)i2"sk,_3!N v:YlEdfoڪ*A 꽶wGt^j5s./'+&- ,%W.j8Mnh3dLYLGm 9$/j=BJ@AI+kSÑW,d!g0a$yxqa.1->d<`cW]VSh+[DyR9L5DG> { c8&Dy+usp8}ۊ}ovChYfDŽ;ݬ5 fx'hzk$֑gc%/{@yahwVoce nZc3AY޼ąG,^ NO'v d2"OSooU"LQîO%\tKԬV Z8$YX|jm%Ry0w^:jALFo,قcMC3u* ȪK:$#ȯ!>A5XeT=|,n4S6|~Ss_e*:JJ:R&ԇl[hyh]9(P\d4=c.SvI(n& #?|X6ͦt$ԙWyo+@ l6%CcYr2 ɭG=$Olg9о?_X`җm$,L>cDM='VRƮy $\=ir(u?wTOvs*2v6Kl 8"qU:rhp-BI&: cvĔCղ?G:+dzM޶&/ǷbNCbbK FMhm1Cԑs\oill\$6j^XwXY!nJ6 s"di pYr_܈i&:iO6(5K :r͏Tr8j43O49;AĨynjf&WE-EV}nQg'DE G.r^-bH=t> _3 ?B9[X֟FȰ9.q֐t^MS!Tjz_rx{a13=X݀!3I"eE-@# Nu>8LI~! c&9 8o(L4g&e,P=Yp]g |%H*rbsTP'z ӷHeoH`[)lԢ!|TeVh(Wh&i^f>ll \Y\w}_?fh2#pPWApbS?]Z*܀nq`-1o{o@K;XɄ7M |C L 6),L"PvBrrqLRNBO$ݾ b 1LLǦW/F8ʞa6Waϣ5)穈+#Ua>DM\ZOBP =r) 5Z8~}nIރ/]vGF\@NI_'=2%Lڃ2B?;=n͸+s} TZl8P >4զX.`a#RWhtmKreSn%p'18}|Wj/$d)ۆsq@~ =%vowKӍ>;M=mג{z~ j] ts>>Ij)MLX4n%YC}O'ytKEuL  X!degSm8}Փaek"D 脬r絚9^'5D@heY lH3ח=aze]Rg&,28LOj%Rlr4S::~fG7'r0IT$-P{rTeǿ ukS-Zgp#K.p -kj}{_3A; 55`X&᪖yr4'GxgbQ|+x ƾ"-i~'@'fh_e-BH FKaX'HfbrPDlǔA!<# m j4ŸC ī:I(L8rQ(`%%? fZH֕_ ruja{PD4 UC]l$z0ֈFgIhrVD_VdVSnsA%SlT8?Dmcen||c1MI[y X=į*jr1[唌jNVi}=ꢎuTp⒨۩d{po )W1l hGB1O< ~~KLlMmBAy_rIy4{4oҖ޶Y',M?#[uVu6 ^ n/Km^.)}Yf k[t2,y<<]'14SEGB>LgGF=UD7mT^bm=S#O{'}yU3:׿CGJp >Ǧ7ԃ7uſ6rk`~/ GHkC g(]3Έ(V}RR.20EB-`~1 ]/!g*y&ף6gP )J|JzZxLPvENUBWsms$o1)6a0 rFWwD+mzAKLEBzo }m6q @j2W ܀$s¢K͠ZHxVكċRnpŊ/py{ZS3bod1f% q,, V {USB Iࢥ/xKDh?K@z2N}?Z PK뷂n˶l6 l.$Wݰ}TxUyZ3KV2&|caaVZ][*eZōɖȿ]=Dd/BXiٳ#fxjry:BWI 8oV5v>S൨p#t[|1wNP+S8aN }_d d\7&]2kb w_%yad٪#=wGMz'3k.qI]I$$ ȕ܎S\Jg %{@C'ZO]G53qݧ5Tߑ.ۯ-oϡ }ސE}K!Y3^MFkM܈fy\גݓo/U@RRaPDv) Eh E!ay;e"+Եvq<EXOۥJ(<=ۣ:ׄj ^T7$%k^BO @a2L+#?*$3_݅oTuA+p7; l[R?/!O׼}FJUx]TX˜87(.6{p]ʁd!A%A}s;\py{5uhjU"s§YW(>ǥbReOr:I $)G*;z%D^eYtm<—FIYѫaVڿ^ n ,":FɵPDrB3n!?`LB~} RKWTYpvSB-F}YOp;I,u( 4`}Al9siVqe_Fӭ7=Rv(~QaV|ǵQ{sSL1xQً!Սuv?!g~$֩5 1')Sa :<( }1#HjϻAT6~=%ǽ6G)ETyg ,k +p $uJ e.(cvVz5R#6A4wΖq@Tm ?b^|gV^guIHP]J k Y=DN}F@pŵ'G[rY8Z9GV.aԳRGS -}Y,qF*&97;젙0rd쭍'z{.B+_4YaSY2< [jM{k%Ck+>) ߚlTA@ud"Jaa(lS) ;#ps^=vklo1NDӫ&,̉o:_ǍW4N.N Sfjj#U=(,JDU6|. S:%0[kD DwQtDn0Fpcp7{E8c8h?h$TrA3 ZGx SPITvT13cѯ0fa͊EX-(d҅qʡ{G=*OƷȓIbUIa۰)b!_x]Sܹ}7 K voȴus|ؿĝ]p;ň*GaGbj[$URd$S _yCh4Ѣ؎+Y9hhX^[ 0T"b+0}Zpz, f=X3rVDBlE&6:SI]U9ٺ(!*Wb̞>DhsYK~9tK0ǛyʗGNBUV;?ɬ(fPM=D|-We;CR$NE,Yyt*JvF/wO<,/~͖b$LE(Bz)PWWlJ|uxοw#+Ø׳nH-1TbPbTbaqjUP&P3QXkշO61{ђ'[[Pv(9:^OT ,bkX15 Z&yp}Y he 8( hlI5~H9=O|vv,R^#t&[1& ī8F{oH!" w\fWRn40/dot]dtxQM' e!hd>§7MveTX7 G۔Wi$Cld }*ryb6'KOQ^n<^E9ͩ}(Ao% 4go pqqe[ر-t᳥4{5i⧤| DWְpsKHIC)|/(3_J9^HҰ>רSG_Wsb3 aHXoHmEMŖ^ YE򜯻T: :[t$QRH.X̻z=W5WE2-!KA#*C)̣|C#={tU \hLIP2%α1"I[<\- Ǣ\1~`0(f_DK#}i9̾;j]rOm|KQr/nϚݫ,6WӬ Z'lU{\nMƩϸʮۙvlhz$8aT0V+ȏp $n@OMIydvGa>#< $>&ЅT ieUTfL4l`ӥUo5NzgO@Kb*Y 5:ܷDCp5[&ٖ@99.qb\oE*&gdER{Z219-Vv(kLjt:ĀmƢ< E|F 9&bQ愷 O&PTW+v{~Y8& ÷;#!< e븢u~o٨'óx h0 <Vm<wIXW-um2m#kyv0$ԻZV+}OZ#@,ߓ(A^Gc_K X 9jDQWi=QQk*9 |DԦPǭVBiѐਮǰӷ^*zE9EɆ5 Qc6V18AL!A_Wf#pQ"cNU2@o1p2/xWYŠy"ˍ ~ΊΆ}q'uԁH/Ym(a9Tj`|#0VfCͻ^qNv?Cu p"-m;>$1A>y >g@f ղڎ ;گ)ӧԀRkˊGy[ >/N`zr%rGp4q.޻~s}]\WE SO `/4bSBϬb^qd(-x֙hr@6|'BbS˾w~Pĝ4%:Zß[S }()YŃ1GpltO4RR(ȧ AY.G~CT$Js#9MZm~LDw]̓m1AչʫC%];B4 B ߏWʙ4~$UD"UxUR+?okl}ɛ[*['f ?'1_x(&M¶ h]%Kv98Q!٭5zZ{cu)## z+fg1B}JɯhU7tk7ŷ&L?غUX^ĊTo ¯D R_Sp+K X ˦!.[_M+rS\=ihļra ]k'hp-TK?oxG›5}N.3{W!b\qگ4³-r$9]|_e0mQv0s1Zd1gy%M IxKZAeqLrZQj[ dqk2:E#E^vaVmYDɦ9xȽ9#jW ZЕK<<Œi0hL1- C*&jrOeJr >.V MBـa^fFNbz +7*<ߠ3+N{8r❯`9׋p r^ zk8"yB2d̄? D^ bTZAF\ ‰"vRqv6Bk}Ԭ8%IT)L⃨ߦGހIq m3ze;8x\ZIԂ¶O2mq~bԵ"F#b\4 HhXk9mO#4v!g!fĎ܋,>)E.Q;pVa:OW+g( 6NP ̈MCZ22GؘƎ 1C; ќZA*\!_ Iv\iA 92c;?Qռ|>}577̌71[NQ~u+88퇳 ݃E,Cp/NT!#V)Z]50$ŃR;^i #A7zhEE6SsBd/D@WiE>nmZ@:O9Ÿ" ._FjĎяd7Z!N2 f׷ &tu9S݋=(h0Z~j"EN pjܐj^e▭x-*n +\Im ƃ}GZ>b~FrwLo6nn ?N$CCz;%FTްЧLL9s8GV d+>90-R062̞栺*hV ͹ h-;AG"}2VG4 Gu9i6> /*,uUw/׏,P~tibO Gg fNu5WNMH,u2tĘ:9oPRCcr_S$U_&3z] φRzğ3p H2ӡ=40v`{uU7;0~I,*xM蘝4 SS":ޥbQ>r )q&.g/7Mο34O3rPdpeA@X)KwGCCs8F ܕ"ReQˏp3p%+( 0xzL˄2?%y/N9m@׻Qw5g`<- os؉ fy+ܾC?z>/QX_2f~H][4*6h+Tp2~opYWݒ3:p6Chs\l-&{~UV5*>`ܻߠ>7VܚOX3ȳrc`2Q6Ml撉t0`["T2,.3kd$-Zpߐ JQruThTPSdC?TkQ dawEX+i2z{1<^AD xG&o`~) 0G%*l+ PgG"|י}3I=dA 1=`XA1NlwC2YeU*_}Ca/@pW B1--~jٔn#ω|q0.XW=XchΓd7V5a/v;eޭ<҆r #Ȟhl$SϺ{x en5A_# Ta1A2z^l9&D2 X͜x\-{.0{4.PldY$E'$;ed[ N2u<zXg.`r!UT{iLL#ҁVȈg`I<4bSſ Mpk7t3S(XLVə0mx>} =[5}, ⃝xð8 s%T<#o bփPІt1&IJGUsZ3iy1g|?j x Edć*[SiE0\O!-ykk!7DGR$tZ8 lM2@lǯ{6*v, 5[ەP2+SzvFV\{}<>(DdڵL U֛v X cepb|y_6n?9i=^|qhRu 7QXpBawJ4pxĠ7gx&;&MD׻1[9 /71' ;߁#HEs[Unt~K绒rx{lf>X3 dnfJ(clU9LMSW|?|܊"=5?+* OFpެJcWz%Dz1͚J |*36΋D==jT8:'rmusNy]oT$Z5"Q3ddaOQUj߆k \^}H75}9-39Sw ܗ0wI!˝ dWVH,0ԓ_H-tFV(ȼ62Z 2oe<0Nܧ3|%p2G]ڸK3%=*O7w#yv[* LJb0%wR -޳ VDB@d DT~/q.=I[x(p2#APhg DA.l ^Tti6\[|@]l{3u͚|Ʒ>;<>+C3j8]ȉlz6 {?%w{j]Q'!"뱛wNNNX0Uцa`we}@6vP 8,H#iw^b(_vC[H&$}Zާ30hws?Zqd24ͽ(l y$}ǮH.E< %nD42SU#!qTQ/JU% z A| 9ZCߤ&&]%u$򇁘gaRLY,/LcM2Sok|\!]ڐ%VjYn_GXڋ# o8U7LJQ/ӻeIhHHߎ w8w"kjg,n,uB]6ç^NwX߾Z{`blS"mbrNÔ[XFQQrTǂH_쀧3=AlOxEe~ٷ4 y^(3NbĆ^*<;TwLfy'w"n }6ѝ D|Ej:5^me樋j a |#69 z1$,E|ݖIḄLen01OXq /"/s4bSbǁ:& ?·*')!b5 ¤8>ךvþ/1˨cm:E*\ī~i2#_vk"=ث4֙-beK>n"1pg>GeCyAi}@F0gor؅0^IVB &{xt1{g :1B[9]P: пԧ 9ȟY`هY_5 ѭ{Hp\Ic@T[} \ɞdtW77b' OsۍnJ(ޭ<7r̉uإȼo`7=QĒ 7H3{8{OV?'m%SIުeqOsަ! =Oa߬8yC|Rc1h^X*^s]\-IdRMx yr_H$v6C9he\YFu׽׆+eԬ䠑RjzIkɶX,3=̅!c.Tc B }A%|sߺnRT}0JJOD5;ᘥǢoІ9pf2p۴(*={|yFs&y#f#dDGhXUM5(Z=*C@{3Df<8p>1L:mX>}(WEa*>`1i::ҝϖV\twRUtQq.jy4 )'_rA3<Ì\xoqwѓ4z8Z0`o_`ϝ4EBYT%=࣊[7>Cک9j+GSKbh)Rkt6@L4}ĤUBy"e %7aCU:=-Yh+?uN\Fa㠢G~;˭)brRa(q H.JTH",no}U//k1f;In@@-%]*k—-^oIһ;0Ā2;E}zv'B/3="=aZ5te&K1^菻%rba *TJRHJOa~?ﶴ1Ĉ m<HR?HZ~d)o:1uE60T4=B2xmv`pJSSA"2 _w xU;/Lm.)+§ܘýј-}5=,%Frla2n Xs,[ӏ)_!#+lyCwَLtļdži)\NC EE3 ϟO+ 8+ɒ=QCS'߱rg 2&T΍/lJD(Oߔ,ΊA3Qkc攜&-V޽4;:S~4k` 3O#b*İ_g`iI$JrAcRv(7\O _,o:~KM!c1Kp!s)&gk Y:T`5\Z 92v}p@*c0BD_a_+\ dz>C(Iw9(Go{я j%IlZkȡEbR_{S8#·<˯υ~X"ybi7bO7 TfaU|]Da-\N.gx&~лZ)"P3ߞqvA^v[ =5Ɛkh*t#2ѐ$AV8rqQ*NAڹ,mSdf$ M+zL|o-,ts\m gD;ϭz @yWHҗc9K\wf*=A$FV;-m3#H z/:}v@Hzd#en^ :^&rDWXk Z8V"3As<2?#^o@9&^yJvSjr9+eM?]ŒKj.?7SuA!_ r% BM5n=OHSo-' YeZ׮bktL Am2v y^Z1['k)K„>rY6q6`r6< 9iQ iOjJ^ eV3*A1H1m( n?nsB:f-Գn!9 HFyI]PҠ)TG&"B{]BLM~XK|*Sw~8ؿk뽤5A"9d>$'v~Aһ7guH"Q_,;8U ̩jU{p<,^㐯T{870dzNE}B =S7> O;ױ? q{yҊ>8?'氥u k$u¶g8"-e}]m9-hpt h)S6%It(P/Z´BFnI<LD;rx :?%?jZ/SFMx,Gyϴa Mz+*uJ>D9j!"b%s ŞS;a=Y.ޗ^щ0Di!3DWFBWC6(hf>]J^oNXUː0,|?H>Xh~"{oh(vE—7 G7לA{ 7&[@/0,dxuthIܼD$,$e D^fi4l"'"@ǩ)܎욺l\O&„kڤd {Rz~Aj#dLo^e5\An\ _} 7J[ ɼۄ]o nCt(Uo˿lR[l q9.DñJ~:vb˧6t"fyLAjy wyfUP veCNȽE.5A03(ǪW6&?l%*<zFΨ:e!fgFU_Jyu{T!{U.Lz.9 D^bCKh *[7vLlKJKV+v1`Qf[/Mջ?wt7ZS6Wm 3mNz]%Z&hAkxC@X4 n}=$!+{GVF31ǝpbDrz_NջE>c܅q5Atw8d#-8klquptO 2JH8Q;A? 5L:!TTxsv緢!.l+ 3j9fwaZwAOUhLC֐&e1 'R:^; ٜMm=8-o Dۂ!i,t T4 YӬ ='A$Te]x-0@.;1g`ܦ$oQXpusBfꊦ\5>?@IM^Bx0jÈܼ84uCX S]\|MY}AZHS(?ݣ0Þ=Mx c IAJdڢ'qn; ѥ5"ql#xNDHJ&<{eNOgUp#RϿ&RUR4qY dWt#A3dsu- 9}8/m39 mb@N}#tJibi)COIMʨG@ Q1ΐ/74hiRq&)Y4m(&_[ssD#ǽÛ[Ƶ)ysJ[6-.EY;Kg[pˡ{VA3T7d~WMKPpӌ .՚&,zٲg@K>WMQw.jCFY~Lm-/d)۰t+n?iO~_Ax'yrK}pM1x{j(i3 hvi!JpN%/2+57y,xk@ڌmEBrf̨.*B5gKLKUq%HFl1*ST"dt̗ii70ɗ.uw4'_3nSj]HP&+W-.kUoiwGj a~N>e)[.v%lZV1]QIJ-cK=˕EiӾ=Y$r:x+kHWB/ :-Gśԅ +L l~Qtanq_ވD0(&ϼ]]v) ug82 w_P<$ϸb!nTȼfL,z/ݺ6 qAͮ i)eP <рoJ_#1(.)f~)<’րIPQ29h"^ȞĊAES5J3@bs{uGܠ E!RnR@F)+]H##[0imBӍ,*85cѠ̄)T2b%67W#?ԲELclnJh!9Gl6Ȼ` y<3J!^TZ$KN# 2N`&qI!i9Cx;䜛\r=p:@2nǘBLW,캣*h<,V0}qt ~aSEwVZ`6݋$k5 i@v_@=&O JGmF%v, C?Q$m;lZIPna煑v.OxŦ0ZHiUAfQz@F37 vcFf>?p^&-`|!CR#wada.ψEkگ1gn]>c'ƁtC5 *$>.‹BggR :!mitSku 1nFWنC*U̠jgE7H&;;Zhw*DA::N}֠nAh2uK9y UXsϯ; 3aZ 7IyaF/aueLQ<+xh紂Q+o-Z8@ʈ@qf:&ş|@7C8P/eL6_>gzK%`t|?>ǼE6~ ?Eǧ৑,Exb&҈SmiyI2P:c;fΨKw1תH ]|j +NYnc=%3*$Zݼ^iPY`iy gXQ",>Q;5urO0jHwU:#w;.2mtC{8ߗmɅf/$G9fKmOd!DjDLS(M5GY3UIA1㼛b;(([x↌ړk;' Q=Z6;3OwY]{P=ZJ;>qdWB6`V#决A~u@ɺvDxDJz|-Xˠ23s%9;|̩).s4d48&pĖi#3$Ӆ 1n=׼M\c4fB ` 3EQ!N2+sSu2` NI`NR[?'&CS![-9z8pC'K= z s9*?6%-Poxt DDBq%^xD觎LmFJ=E Ly|R8?rN\G P0`6w 1r eU>sb@d䐮j'f^<,*#:s;=֞V3} t&l I E 3VT 2}dbL8Qd4K;y>ZamrI˙eS Sk-R7*Hgd{B4oJo\mM?F4OI~\ +w[b5xQdi4ʬ]L\PWvϲR7'$p_=4 :%vдP֙zJMs欌,<9ײ˛1}I=,71 @pq))pV >R ?Gd0Xh<;1Қ5xz#bYlNk_|Ge+,A 2dRSf$+^P Xcb*m24+խ`3\V㠢YzA0Ӊ!(&O@c|\;cRP_rWֽSf@Ds5֬銵 (PZ_ژ'+r53{}gגl[e5d\`٨2P\ԩpY>XwO K6|?ܥa[G&NWS/]#?Jqϯ¦E9р,j1g믆95e ~pkd>BD݇px`9Wc?OQ&%7*lLt(- S_,ۏը=qxY%wXGc !7꣬Z]6h:?\3;7_sTk4Cv{ f0^6'-O؁ c*';AFaζOH8&Qi4CN6xv{\+7xYEK * wݥzs v! FLCK y66r9I,'uEmF.o:[6",H(Hz %4uFhK204F 8=l+:XNPE5`c2r!N khDjf~2qQD~7 OqA1O*2-De[*lT:ʴ91qR!G٤ 2b2Q~=5S.k]էZ7JphOϿԏ`藘oqtMRs`)Sr_>J/ӍnWjI jZ!9¼S>K!nwQI5$d,O&:/3=%<*AXBRHf}}}ic!! g2,0 F]"=08MnwT5BkqDgO]W qT㍰Z1<4B& Az0U'U04}yWZ-BVz$^nq8g2. @gBGqQJ ϤSZq~os2"pO_>)/ fn]WBЇ|&P4< vו(RJ4nϽ"0M-|*u`yQrLɳk a-B'a=WA.DRszꂔ}e^ZO&B8JfSS|mGw4_EtM)nt}եh_Vg*jc v,-sCWx>}vm[ׅ)گ N5]el$Ǯ^GW3 ?rӛHmU". t,R`}ēum"Ѕ>^wGKf Vk6hNB6zR'{C\G"1D/0uE0ʯ1=riu(M:?{G03IIvؗ۰^O!S0S},.fiQAHTpjYhRr?`g`YS>{MۘWW9 YTl~7A=rjs+է6 j!X-ExKj{-(Wɔw7̦F=dG&z3E%N3`}4Ѯ{(#R`@CioR`4",~P>BsC0[Hڙn:LTI"L)`Tct!%dD_âͮ +a,>L#ʠ`X6- :*{as pJ.ֿ]AjhVΤ,枈!3 { .}Q@Wl}/BYqC=zӊD8]d*S#~*Y-I~㢞 Z?jHֱL&v<@5B: $}RG] #4 Vc}ʳr8sx)cy"cØT)uBh#b\x&2cb-}D;,~˻_]X5* mɘZXdT*aa頛 dr¸*4~'фŨ> PT"o;<eG'Z߁m-Qab0=dSTBEC:  }鈾j4ZTʾtnu*S ޓa@K{˨O nح@RX7?o dCSsSn?ɴ9EE}S `D:d 9h)vQ8SozC``4eE۰ܦ3 6X iapIJD rg%a'Ё,@洚6v/~ad$hxE(o SQ0-A7)]ME{e*e0:j_rr Q=9>m;c1؇{d,A05ۣSZ;wg _)~>DswҕdC׍npubOnsU}_=/,Ϥki|@YK@DIP?b@( 4]6<4P/ܝЬޗ Ts#ݹoծ )ҾTuQ+)GjEdEyK6lxl 6%IwqE]ak>$>vT5ߎ Ҍ씹 6|e-+庹7R@C =bP#T\s1(GRNBUXD4ɳ/o3񷙧ەo#dp"Ɉ~՚*d8(-qQ]y6H [QNjZD/OSVJho6)L!j콯z8նBaw'| }g'27喲5[eZSK5Cہ?5Jm5Pb/6O@`p?(tlJD8 Ou:ixL)k?IӖi4o)O@݅gfϦ p|U(;iqCDUZAjJ4ԉzcz4ls ̿mQ?yd)dm&PA\ZwU9a~'Fl3VCq@\9 Y0+] oN*R *ޘb)MA A쬙KuhG=Ji _u*F<-+d$A CbjyIfYѱxO(=Pl!Gk6B `3<],\ 0wOF3JkO:әa$q L1ȗE!; #+lEE/8ԖMŪrQĻ2RPZ,WXw5=/,@'$鱕\( Ģ0 3M$^5q;/0cKM܇qa*$ NbX?̐t!/ $1 "BAP(MF@!ld`婚ef8hop\mgu 2ߜȱeUSOu2ZI\k\ڈ R#o\JNW$_ZOg|Nȧ.0aG][Rm)WGqQBoR)TZ)N0{>P>L n Lc1w>wU*[&hCI"YM˹ 6c;#E|G;_M^u-zcZU:6k!,9V(%T#lhxM.D S;5aZz2T[С$]%5+*P:G+4xıJ9S a=r`ݮ=yMܐe(*&XnLD Ո^U ޱKy/gĥQݝC1RH2<خbr;9[YoU._\BK$*n.mRؖ.1GɜIDD疻v 2pV$A߼˷ӥT_]ztUY'<˙}ؕ` _L 44hORNB~`:$w7grUm#"}Gt=Wi>n#SO܂MA~Ŏ͂ Fj/w-gIrX/͵|j/W!aTklt/EmdOt{NhGG 2j: PQt1n\8L 7#zEc nӬ\S%q!O.Y>kׯ'"VZeH/zW︭<=vW%؊jOpi5O(}3]Λo{̲"A>jC+'Zbp8XV*f鰚)S+Ѣa9}hlRG"cf`)w+_2l^$oK nwh/ b_Ȣt-d%nݹeoDwOONJZ7:gV"o7p7I)D(h6y\ކgRjDtOsZ^m .APչ|27x_OoQ)QYɖ :ӨRa}^[Fz'{sM7Jy[SU܊&Xk!boxIVq p'Qyx~K,DVFd88 o]\tH#:۫ep!FZ6ΎAS|2\_Vm)kJm0f@%j4ʚ+Fxn< VQSg,~u}QDD4L9upftuVi1l0P p[k6lLxѺ'( +շ]4LZ$&*ѫ8]J,;/+2:%zm:rg Qyňry?ޟz[L_40ih$Ct8z=vf;Hk\j$2&ATuE+ȅzDsih@xd?H0;,tCfñ v1yYV? :F^ (Kѡٗ,K+ʱc4!j#Gx5\w &md7VH üW[^/a 5P+?^l%Ov/b ? lAeVS/!&*;3DJ1,1 P<.yy ~ЗuM^O! ÄĢ1Wz1h [ NDw3rrǐDN)VR~<4㩁Q>;nJ2bJh=f:FU+`o$*6z0]jMuqjfV,8ކ>PٖЅYR\eB6Fq"#{Cw`96Fպ+!Za1̟g*ݪP9" \A'u<~UԛK,10y ̼mR+9w2%>?$b:Ug6Շ_Ԑ Ft=żx\9S?E ԾjZnOR@d@r  īoq2^uOH)ÔBOYl`6ϙ0{Mx=O!@$;\"үgçut'ʫhÔ3EOȬg]7؞ƆKWD?H]fp[u18T: Wǘ|]z$Ê/'M?(u(q%p@LAds#? 9IW)3]y3mJH92|}ڄW>=>)٢tU@w=R!_wL? |uViCyxRQx |]#V@? YGb%,8:!(9{9 BLʯ ^?vnĚ%V>Fa<ݠ1nXn4;YiMc#VOJrc˩$B?gM슁,NB}Eh#}gɓUZg^15ww s뀰^%^Q +i'Ilt|Qkd9oȵOuҨ]xUD_4K3־ 6vĹ*t m2ϊ%tC-["%830™*bѢ͍ύZ׼aE.NBPC;`l0.M4ʝ*=Xfbu^=IVh^O-H֤7W{/mmw}g^E8r_tU: Qv- [tJqbxN;.?ƹ(i5[4^/7T1E-[31o(t1X⫢jK-1G yL;{Hďni;K,Hﭺc( JrT#M98$JT 0FAF/&0Xý<@bMԃ dq !~|A"tya9J۬ X_i$Q Z7o#Mj ~PTQ{9"d5 Q*BGBOV%U/QfMa#k]ғQ0eaԪa7-Ԧ*` }Cc:cAk"lб|A|)|[XGSF9.eog#[>u3aXWS=NWw^^fpA(9K!С=?&GW5@pԥEp)88wow%rlj Gl?vƜiONB)4vE+^SaW"t6Ev@+":~l\os*38JH96ڷ*.[~/BLZ.ViA9Db P l~nw/Rث_SuփeJSr0pd4opJ',%< eIfH0kX,u%`fbpi|))SaFmh-҇Ã6nHuQ襰Yv8_6܄]~Bbuy%n(tLu5Rr C/>kEFuiǤ'H/9g8WD =k#'S+LTpqWpB. Y23,41 Mq~|q̭|U,(ǀ'PkqVhԁElfae#I뺲^M0DHiFC bdgjyAMZo`xHhW6d}ҕK)ӯ^'do[#-AXSa w+2\2(@<؇p&Yy554]";:X@JH2OD?лkm^b^حPp,}aZgI0r>:mD4kG|~;~S.6^mKgW~68t1<^KCzΣG#%-qWc~L]q+ n]Ї|(e]zD ~)ŶK'>xaX} ܃)pj!yoҕ )baaV%j,^#X]$ګr|U 88c83gx%Cc <GFH5%l]],_n[VJhDճyHiI֊GeQeMXߍGE(KRB9[# DQ.hK+TASC{΅exW@ߜ7Zlz rl~93! VXɸ\dxYǤld "qz9~rڲ;o~O<-G-y#{[ >21NWdinZDNTyMGCc{i ]ƛ-_uCCvv_MP_PlP"t!K痝~@gwpdzv-}q uv31 \g8م6W=eх\{ncu`\%n6ڈD^/Q'|kh}IҝlKz\k~ % O+>|PާxB١X<PjĘTW"Ycza YY|߭*k &[(va m@~Q9)q|-y!NdX |-HXYȿ?!Tn5CtlĞ[cj /-ҭgTy': 5>NWG2X $+_{>J]^2pybv^Vc!#BK}.HFɡ!H^aYu˅*hżEd*!2(Ed'َ`tN 4gG08lpSo P&GP'YyVn?%wQk&[ i\-Dsx*$\Um8G8CcrVOmκOjaqX嵇VxpB)#Q3̈e&3qZ Hh]v@?f"W+J:qױƂ Bj"x؆)uFQg\>Οu,*@TdcqT,/J/I̧ ^k)xu"7 oّH{Id?HF90tJݎ*7tʪV/N'n<)ڃyc|I-3O(HJBJ%I]i:}ҋ^hj栄ٌb_~} }DctgkB&O9"q\@~v^ZK9@l)|;xR21 ֔mZZ'Dx.`.w {!v)}Xx)MkD7}_lF^,O.vpǸgJI'S-@U'ee8XyVCx.I 6ͭcc +W" W ?  0K)D#bJDKaESS^8l9y+e*sFK{Xu6⧍t"cgK;ilb1RS(G!W:GF٘|ܠȜ_kBˈ1K3tT 8v2jCUnf'C0:{7X!S|nPR@s66ݪbK8YٱR|ωz֍'¥\ ;9+Z{~b`a9dXWVFd%~=oU|Dy`SvQpm}XRMfb%m*N`syi#|gy"J{j%WI,d()[P@ 뒡2p`HƔg4Bl0{k LoqS+LW|>g&57 A@)4ܧ8O謹WUTG}Ηn1Eۼ)"tKJ:ٜ^!3 YռFs.o-?UXк{ m6:~aTѷhqj[kfйpOF1k,Q*R\A%bNY<]TqMX~9qdQ.zO.+|_b[y| dZ>^;WhY?jPfD0T7)؟8`-h1uAɪ:-G"b&]g{K39[ Zx3('HcSz\nbUIM'N6de6lH68SzT0BCmڭך/2f8G.\E2(ːo엹 ccV+Qq}|ٱ\VזK߼䠺oڗCQ @Ix}˅:E u( ;9.>{J;ˏ7 PuO^~(R}*?J5|R*ɉ/N+a_E>mbQ䇄 לS6uc/YN}AKMD;xHg1׍>9{%t`7U ~ݙ2~1n^(Ixk[P&M0y0ƩS.N{* Li/ye/Trv1fl5>vDy!"RAt[``f+xџLVXثR aS0 zNwKԍ[h{ le[i3[r(a-;r0LZd[24ֿɂIǂehcAmWTK(Ujb-EDMDӁ'sMCUp70ٰ:ѫAߺcä$Km$LPIE;<3#jNf1V<ВdJ624 RO;I̦{/mV&`D2kο9ރ7.ۼJnVDdJ8k5<~d^_^b9xr8{9Vgy7wk6Lɺ$9lNxn׀B!e+KFs訠9Xr*{ABuЫg|ה4wJ7`xE\HǧŧCym}3S;BО&N/siD<X@- aqoDx[g4m/LY+h1ۀjcA-$ 7yGoҴX( blPE ȋMOd "vm dVt]pAc 9%'V#֜)2 F c줿ΐY;h mW$\P0i\iO+W⁐5QM5yx7C!3$@JrHt#RU.Hb*#`DH6nM`Mb,`ɱ[HMja[*@s {Q~'9@5s38Dx$ӊ ^ͩX,̵ңb}pAx6 ΅/{%Ym.Ͱt\tk0}3a^Ϻ( N@6o0BNSݶ^B-ySak/X.όT]W!]a&W"2AwHpwK|1@ `~@|Пcoi B<)'3v{*`gY5#S= C>7K;Nwmj[`v@\ o;B%h1U ˁun\jk*0#L5(Y_mmkA/iJ4}B/Je-W đ"\B+)T"wrĤQk}c 8 A+Us_bLqz#DfE׳8PRJG9pV$0nTw'xokC*%vlcN.Z5 xBLrIWtCPE.0jChh%T 2lޤ<L(8EޯV$HQ2Wucn2- /bג. YٌC6_3vB:TJ:uffǮ'}[ƺlҢUn97ÉpIS`qva.`#\tr?Y0sH,Q_a-0 SD aqp{,+%"k049i< Wik|FZ@04zXÍ?Lpk>)}ר&/Q=TYMx ^q ^emOr5㈓]A9IC0MBc~LD jE< %ёMzl6 G=R*xNj*`TJ6^09Fv!o U,=4[ =p}cVjxk[%W:՟hk!W>%`I因g|/Ԯ5 !6aڋCc$2I')e`-ebkM5̫:C\NVVd4bG yJ0!GE|.)@BD87MAV00/FEwtru@Fa ' ؚ;۔krMm)mx"%-{{Z-)cA3!?%onwL 1V&mS!P&7W 0+4jJ2ą$q篈YA-N,vGs!x@_ahx40{@zNo}Rqq/3l9?ˎY;ǿCԾps3eg~cX }m+%pWM8MЫkDwՙt20$ilwÇ E9ɇs9I}~ꔮ FJJ_j92:উˉSR(O w\QZ`}< vڈ¶޹ m{eźDZ6'pyY&?r$?X-90Ҡ8ya#|3Ir.xGRQ,j\$qe5ed9Sc%zeS_<2 oc?!an&y,oS3)1Dfpu S tΏQ[ vTŎ~Z}r0ty-R(:麃D9oC*ʅImaJFOy\pJ;@N@Z@wu +vLʒuϩkZ0k_D/FCiTG!\;jNo}6erIݹ- Ofďߩu`u$y'SƙD&%vU08j(>%:[D5)= s:\ߍ9wYlQG|1%&29W.> Fӫ&' /8of\dAiF aM?ج U' 3ڍqM-Z Q!"1ju%RAMnpD#+D9Bqei9XE!b%'LEer\j ]uLHP؍fpDxeT愱Gxߝp./l?,V$$Is}^cK]sEŇΌp7j_a›Juٜp7 ņ`mR5]+͇eB4bH>!3 wqFDq cREF(tb_.yNc$gJ{Y5'.A ؘ:I)VP% c8p}C'ZPhgw\{/f ׵7K{mthÄDh6C?SJ7IE.Åf~ -,՟+to2tpQ?QKwZEʋmfb1plZ\M$Oz8*/4 oI&o1xbỹ Lmw$O?,37׾OFE^hL˗tg\ϼZ_@Y)N/NYDжrxg [ T[è1,[r30 qoL40uCU<^]^TІ ohe&Ͼ3uΩkL@rurз)lw_65#vdZFO Jƌ6pnHSt,~zX$XsWu'>5_kǔ(uÀ:N{Fe.4[NbYUyc`0Ƃi4VtTŞ-v+Lb8I>dW^+ֈ[=F3H q n.VURb`/Q-PhWMZkM!dRU-[WM5VE.`&B`rg;6MԸ4$tCkJq@mrY1w8y Ae{%{|w52(Th+Oxy h.Jѹe-bV}X{C6mtF_G]MB7' PIN עe܈37l"k#À >1H ECN|I"OTCTc/V?mbu[V~D )hH\k>SVgyy0!o+ 8]LT^ز@ <1ܠ=rF&[oڨ.׊[k5<"j!$9\&5=H2x$m{ՆyV&@II; @;=۠|O0tHI!7 ]!"9k#y̮^Yj* ${#0͂Cu^d@?=(_Pp֗.vea̓F| d:}q`tKx+%pB$H|3N9iW+'X󘕈֥UF:Q\sRj(uOZM0%-SN/3O aT6 0*w/nKLWJqo* M߁~cCQ7(@~B)?rNoaFET~'5IKѳ *P6mH&F!01)4g8~^z 0BdtxR5@G Nh$}YFlq-WUg9Z?@o!2nU{Nn~DtFG%vDMՎJc4LbfhX{9[mX;}m{ 4XP=AsULa:{y92*7˖d ]=C!Ju( 8RؑD2 Lo?rʞ@1O|ٺXW*(/Waw7a<RfW%4ºd_MV$Ńp6zd\͋%ӶZ\{c#֏ E縬X JZHrn| ඕ,2D3'G+c};C6m^=qF2ZS&s'}quH#<C>O}xOieS]d@~άӐ %kWL/C|A?|=(KO⁻BL'HO]ziVҫ>^N3s'άm*딂5KAc9=]GJE j-~wi.)7?0^ZzNho#IEEplLx 8?^7~dOF"HTsOfHU}Xܲ=þ"06)wc9 q+07Ba{n˸Y3$15(2@oJZ'g |kg -d;eEJXj-CS˾I̶VXq|s ID\žzpKkQbiE٥MG}gnZaĮzNV^U f*:u77gط%JVvgJ+0zC~ܘP<3F߀"]ۮQhl*wHx F{# $9>Put0sߤޚ7л7q;Uv-3#}A~hK3\FLR.DAFZg*HX]{X[8x s<|OhƏ+:lT'ӿW~EDns-*~olErTZYO7wҥf sFA/"] x z}gAXAω3. ( Qtb4'hSC/jʅ|Q;4dÏ䞦4PHDr~?=T<"t*ɪ zH{eƟKnuP[t}ugWfIjÖkOV? ʅ2 V$`ܓ?F{9y|ROVobSbg^>5,* !%_ˢ%GjkZMe^"A0≒bg$woC؊1p3Aؤ6Y`K*sS9-CS?$\0*䐡p,L;N´{UnokD퐝[!QlҚ`M6jfpE=:5خLKpPCȿ'Z9H99[$.S 6 v4{e;1eqGKC ڿv'᷂8mu0%U{5E;Q@Fcum`҂T˵ >ǙGgո@#m:$ d{ʼ OMp](LR9#w'OkJ O)Ljvn==&ozCod~4Sж.J;Or}̚J~<-lz j0U5k+:pڒofϑ·,ȕu4ֻP<,]~d6 }}3pFl[)xOw/zJv@Ddž"``Lȭx#QFvut6oz–Z9jsl\t)\Ɗ@L ?Qωw[x{x UB0:[}%w=>c#SS.-¦6VѮM#YΎ._&&}u_ptvw76ȼrLʓ\Wbوn w@܀SB?P׿<RrO HC>*"ܳHhi5K=}J/qQ0?ҫUcnB8GgDͦ_VWҬwS'Vzc ʞRjB>uT/`)PܔLfN< KhϲF;b.\g=& ׏?I=s{rsmRD4=S 8[ ]`UPvAu.O}0оVaQ!lӑ 9w Gf@_C; *aeQ.à__S/WA6CQGCoQo?MY)߹/k%}2B%~mR#~OƍD۹.[H?F{ :#ݺYo J9^& Eb'[ :ZDRIW|02,d5am6KmS|3 `@Aq d\3WgM{gR< A!Z!{SwYk~MmpmZ!Sh2\[Sɨ-p~s!O˝P°7{rf8 :Boнr *Æ k% L',8!6Bwእ8Crl}+q(wdҝZދMrF[-PԘۗPQ?seFo1{B|Bz%OU$,C5;f##oPĈFª^9b7)Ao ', #?o]QxnlHI%WhM\\7bw=I:wܸM9* :)PyU\C Q&йsc)^~;9:VݴzOs8n90h,7B߼cvF:L5  [冔>w sxUVDg˾:-&>U/'[f67jMY/FM}GmFY[gFܚ;A1>tk#ZSZ0U~z0/I/ o0"=2 1QtBqR%. E^FHtS Mht#! It&K,(eWמmcl)fXd:pLW=.I --Ul|$p>Hf\}*_«xL.1sR$Zڊy,i7=C%{\>/PuN 7i^,u9aGKĬJY|~4d&zDt) R?gk<Տ-U+b[ #=#NL]iEsY'f5)J/o]oaIXp׉Mם&ZȎ@(XM}a{i~Rw>r4o)\&%hSdҸo92s^;U^ ^so fxS7`^կpPYJq5I!vs))ƧAOr7Tz7fݑN0!+l<;X2" +5qt*Ξ\b+ϧY S{ 7"ygFsΗf.^vN7/ `Лb;] F(nT(OZ{%Ln;B)$0,;lj?kNl# @ H)WuEBwpy@>_hRH4HW٭|Ԙ E1JUAɟW,qݒ֝dmsLB}Do1'zȈF-yk_}rzJ5qbrTfI3洋~^%'h3W3w!KV>l :߱Z%}T6,_7:ЮR4y&1z_umK&[!lÏ˗=:MRUL'f*ط_zKRzg@8X mgK'vx̗-Q$С [NTcS8TXyU`̱Ssxe맱 ȜmY-U1I s~|Waٚ[-b<զ_I=0RAtQc'4ea&* Ds2.Q.*Вޣ,@E+K{AVzE% H8=1{|x^Pʂn} )e!e$g 9N~(jUR;sAZDzk!4`l1]1@E7 }nkY1m~TӶn֭}?bѤүUG)XIV_ 黄ڥf1VZPxCZst :4IsqC39#[˖kYW0&~dQv Xٲ[(Ph,.n);`dZ7u\_t& bY0+5ZB;Za7G T4*8hUVbuAåNAG\_jv$BϹa ύ󑗂DfF_,=VvW9G!'NˈHhgT&X ۅZe6XT.~ j*FlO%QWoWoZUNA'T'%>+Eي{[Hy4[˟k$ p$r\rĹ=fV?0DBm6,R[XZbkc3+[2 .s`F>@.Pn~LWHӎ ,+Źj-7+:WR1+( # Z37mrCv̤ZpE=1XܥKbc @ RhS&bb17Ƚ٤RwH,\2¶1 `,@[Xpሜ&@4Yċ>^o`A>kY|+u'NXr>VSiAʊkb_͘ l p:85ClO֞f {J.KiXh!]5^G/ ._Ԣ)t9.nCOL&qo!UA**& iEQhƨpпX@SO21Vyl MJ&ea)O4e{H׭sٌ*mk+㓝$ 9щipElFUaIG,O5 ̴K>|cVy2V"P}6t<.W94Q[M Ie#>m),;=Qz\,`v X <9, K\~PYn*ڌc0E!!>$QO\ƴ 291= N/ЕWy[#2"sf/Gt4^'ECz-ܝmr`~4*U ApNa߫* dY{RlJvȠ_&(L~ vqSxZ_[1|DFӝZ_A"Y^CrRj2yA gĻ`sTωr~z}kJ%W"rKc Uf yqv$)`C^yKX-u^ꄥ:0p+c~WB#fyބ]FrM +̗ԐwˤY^-dtKH^^1R9)BEr ~#C|i͉ni.[,jSw}ƩȒ|Nmi\D-H#tC~ _.tugD˯QNB1i$4ǥ ^V0qL!|[ FWɶĞ}&"B2V 涯νwWĝ[9TmmUgJ5PQ"'R3I<$yzh%?5Z .<3б6O.Lι) U|S&bvkBЙ{=MYCFy]n-C|kkb4z+j2aHkBA/&2M PěbTyLHlmz%cUZ{aa ݜ#c]!Hz)}]vrAZ-\rBif>ΫP~{W1ӕG}TBŢs; 0BN|Q4fn*^HSzɚn Kz'BYďc^QS!W!؆g(ezLQH#61 pnjN+MhIvLrX:Բ_Q{+n?HS땩c{MqoyKF(9h >`(t@ի\%(-; :˴]8aš\#khْ-ee RCO/ϖ yM.붘ܳPyWBxB:'1-؆&'BHL(Dm FGy|jg"B8Ӕv,tG:8_I򽿥)gĜ /U}hwLcy_b0wI!`Z[@)4igo`gD=eŕMH-\ĉBZZ*@| [kmh[M},UB/7>h'AM`0EJhgoO=SmJ)uN(0&%Y3gG͸{;.=?aj1ٯ8P4o gئmN_QȦb| {$M YLS*0>R'ɘ m20yd"ˀiSCE@r鶦PXi] ;i$bujkVtS/KJc`\6H7!Gbi?$H@X1PHpχP_r3.rdK˜}(!~Thjأ=m5BZҴFJF- jK@9k+w&}~"ʌq\>~-Cp|C+;']h ԮTJ> ~Hdߴu-` d/Z\}sK$j<, "W-$5j@j0@t,d;)^K>t/HRׯ3La ‰!Vl~ #v[\1?f9)ʯ0`>Q[z>U[1fPu<5*o8),!4z / &M!.GaxP2%ΝMh GuRRG]%Thg#T=|Ue+`VDzH[E?Vn{2wK^ߣ`B3bjdZ)-$` )!]ş8Pp/CRR)+EQ̫Ob8'1gtFfƈ9.1$Δ`DkT  $:=Onޣ$notK~V/>51w%?ꜼAhfPMCP!#~-* {W"S-o%p2xb'Ҕ"XxO핤l@^~Na BیۙfX=' 2bWgYMЬJ*ӖGp13MA+z;tiMm&al`iա{؆6 ;tטaf@-| PY ?/kɣDXoLOy⦕7 D8ԻwhHŭ)=;:Z\5vFu 2ݻg,gCRĕŔ0#J& na| 1C`\Y{kv[hy_~Ǝ'xeOӒWO@DF7L(7%H4#׏%Wx"D.#wY} U@@l:PBzpSqA0KۤI yi'Z!x8yM͛a_vx͠ʚ#_.2!o`=p&ac?r{=@~!E(_)?;W|l$;xT4*QyƩFo$$#CA p?r#az88A_rbOqD@BC\tk1M#4oJ>GG֨5'uk3ؾɾl?zq#;ȑ0;dC1k)Vi4g<\En>:E;<lA(q5πm{/"-I[ym$/\("Yl+0xYAPb6.9BKMDSϽn7FϨlc:*:*?lh+hlFË^/l iSdJf,*0`Z;V4 \ kH™ȩ*[ x&↋s3f{/+NeTK{C)Z:F}P"{[?&}[XGzC J)HWTb3\vmtLgv(sqڽUAD oN;Ӭ)WD0/_dvlRF}2EIdT"dL'4ܩje{o o)dк`3t3>ڂ^ $BS7>Bk\6znCC7ѹϩ.r'֤ q 57 g] PUxeȹ\VvN6Y>]u 'fm^f3gD[BQݮ6}9 _~6%Or iC17?s/_苡gZGxgc38.ġ d7$Dy6 fJO@v~t 0À_a@q94(Unvєw"ſCCǥ-A o `t5t8OpcU` z}|k#"}*^Q#Jg|7 d wW i=e3.M`aY=Cm9RʞfV,%Z\ֶ۳`D ȇTfȖEF +u&>kƄrCLSLg`Q}f*MqR1n+t7EY%AwIi䊻&#w73Ʒ&߲LD]+1__f/8|9[Λx_ !%쫞p8\Um^9.v)##bꯜuu֖ϭ'Sm<,Sܮ8zD&$YIE 6&&|F.ME[)>O5|аBH" HdB6ЗI;5&-ϸY3]L?YM裀Lk<.9ޓkgfCvHIfgͩY8׶m/戙* R0rUXmvv+(~Bhgs%0!gN>SrFRJS(F0 iٮ z#%5_eQkh9ytǓ?\Ƅԯ\$Ɵ/XLƱY]qz9ʗ̷QխMgoҖHgA C hip~*oo *oL2"c&mKs+{䗉??4Dkca5tE9Մgc̣YLo %jІ 0W0- ڢg&51|1ӵlJ X:`󿟈uH!?xhv#G~)s,ͮL Ga>|JӼyh>i ޺ϛP=Xvw2y+LaRx9dܐsjx>t>*gpajfeTnH&Zspz}2E,O}sUu} C#[ٷ'cx^ beMe?ʟybwn A(C1{hRE\L}%Kfs\~(7qP4UR΅y6{-tW++M9WxkGě"*E=N{SsucpO_㒴<%%@+rOK~s1 GlsۡNP^e_}IU7L 9: !Mr^%Z~A3 ,ճs=v$4*KXD$Y:!n[OK< f 'lS$69(*"a)8[}yhoۻJ$CCfLS(t՛wCŸOL$O3T}{3F ؟F*"찧ƿm9ZfT(b^.EsdE SSs}MrY\` oerY{rѾ;ޣ_^ُzmZ!Q&VEeで҆ƧQǕSKRAhKM 8PrvYYmh;q}Jb,!QFK=1@VLo3v{t0Z:(a+Lx )yC{zJ{)a79)jޠEAv-RAHlbYCBUI6MrwBJ9,sMɏ@DUsi4{7Ͱ˱!Jc >{if7ǃedKz_UH*VV~]֚}wPU&Uhom s0k xMG8ۭ&.:@ 9/SehT 0yA \MJ}SCg6;גH uOZ&m) X8,j^Lwfͽ$ɬв ` KoT{H`L$k)jPCY(p;,HwRuj{?Th+ i[$ֆy;I^$|m R+cNߎS&"/:Qk%D4'm Țc0rvLkBSc/Ac򘸰yֱ[#"5,9u+^Tmב/1+O6jއu瓺}O~ɶ67;9LNM|0vӧ JD_Ԍ͢uhcD0jl.( |d <. )4vȯӏOFfv3-h;[UKy6aC;Эb>Wɹx 稓MK ^>9QdSX9-+pU17W g̮pCU6õ_ M8Y#C"YqWԤ3'35M ,.]?~q?4BW}9A+ tڜ䆄`^b'vI\1eǶQd'J|EsuyeZrJ,vdv p(NoME6H<򡶸9[?:"T^!ԭh( [M4Y ADpf].$)Z&A+i}:yEM(܏ⴧ*ןc'G9|ז:)^dl;̕2YF1pvU@bpϣ\ .r>5+x@cnTCNH4ڃ?3W*)iD!63J8d͇,~;ay#dbX>p9L z*[BȒZ)-{ŌzƞCőֱ2*6-  5QmDua"DKR>A|d[U[&ї9!fri6Z#"tktK=t_aٰ._)ctp.}6SnLgU ,G*eqdV;D^rǹBdP67 ]-7)Ԇ˦uB5+Jbx4$»]p#mN<0곝^Nw|>r ~+fHR Z $ЬbGveK]: )W*gZмIжCvGPNtgd\š: 8-.ިh1Ug{%yI Z8N`;Y4 t)K/HWvf!P[J0IBw{%l,U%cnZQn62?m]ɍg]1'Bn)>r<鰡-wb;?x@no\ބGje_tƀLQ/+.-<0ƮH%}Cᕇ41dœ5>ȋF6rT 86MgߧQo:ҋ1+R_Y((Ӗu`oOENM' /[5bؑs/d%ʉ✏v6d? _Jc1R1G}!yaǬ~Һ*@FHK!I!<=pGGTC􂦃1k`U `L%N٪E[f4~$;gϑni  xMI>ua0NnX\T*HntUщZw"gB  Xt7]t>XX֊ûS]&j }+M>qZO{ɸEkeU&FϺXWƿ Qkd;aFUPyѯ"׬R(t~j˝z&;U[x aA )Rh89ALdjC~tX@CS^p<]vd7S*>D`OnArHeFG=brgX50lΖTJ{ i%=Y͉=H0(ܶkA^Erk;j/|fp=k b/HSu9_8A[z7C"A,Β Ӊ!ÕTf`L$qp1X#&M=66RGw0.kbJIUxxGݫX@"Z%zRV}=hbRj f#<^5~ vY׳= k7يZlTF75%@?P{\1-Q^NĈp,ް=\)H| C mZ i[dV<."xo[(4P kE@ΞqXtPc#XG0ω637)0ECqpK`~0@#ǃ'`m # jVJOkmq&aki ./spQTM3[."kYeT-cieשnV @1N%.MAp EXpYUDĐbVX$f.<8+?d-D3Ap1d0䬲:եB'$hJ5ƶ>\T8Au^D[ Ѣ{w:k r4 agU ʎq|JoQ*RfJx&v/]n_U&uhl VMyYOfɵ ˽B6*1$E}?Odf}@\l(+6cB{!p]Uh@ʣpj;+['Y++]@]C+ SV]u \8% %܄+lblh oq5yT~ݼȷ^pכVRHaaV[@.suZİ(jI*ʸD] 5t)FH;dX "i jö+\ tmˌ lj lYky{B\@eؼ?cK&F2Ymj7Q݃+_!VoКw|2A xϙEʀ:)x!{_vGfQ. Dvmd<[IPaܴ:K~')Ľ3 0-}~$_=YBkaUMN?Ξs8+Vo@~"ow|)mw4b8q5^^<s!2@|{s?-SRUU66:GIhw;/N0\L!w~RuH9Jy.+͊hɥl3cʦ~x%pXӛ):W30Sg}ƩKG xA YE3*4{^WdϯE}R㆔Ævl }%r.}{DгDS<'/xcM¸{H=`}5Ѷi\xRf3wO.~GOvH~k+(<"`n5@` q¾H_"XiP2B6!fꜲ6z}G#R@/Y?ǒAA$ `O? ]tnFfZ݄[}LBG0a7aWr|9Ph9΂EDvLqPtJ˲FG 8vR%KQO;iRҦ/^CQHyJ)=f P("n>ilx"}<}LoЍ¨vU`D=}?Oӧ &5/.HFO)I'JX=a ӅkN!+^HKY0L *?[7u4$,nI* m<$C1ZP)A ZV>/im'gr~~כ<4S>Ze꾬WQ򮽍%둃*"z1 tF\ 0`^hZo :R2x#©ڭY1PT1"EAµ[͉UMu!XRA(AHnӃ3K6HFX ' #6S@Y,D '=j1˱DOҗ/)jZ {lpKBڀ2،JAD@j6 &&y~HiڅFaG1;QZ&9;1sY'i2}*^u"31Ŏ9Iыj [7+-GZo6$e&/'&h0 -^K9~j#Co"X>rN:L 241C`g0 `Q = *~vTք.g^3BJtS'F7;9;|HhE?0d Ie6CAZΩȴ4̰*_v8ǓpUz-yQ 8qE[吺V7:fxo(J!( GIA+ XШ1 Ç lo3.wT! '5 hATdXm{2AH,1s#`w*Œ|-EJֈ$%5\_g{xw|R,uYșW/V2N<={9Z_Gbmٱ YRxy I~z G3/6 c $HtM( Jk9*FQb3bٝ}BsXY%ݜ RLBI-a4j)wYn;5BN8 0Z>"3rbpP# D7inMd?0SGy\+w.PLdWQlZˎ"U_ΕTq,\1kiM$Z:N&_#jceE0Ce6XBW4%FVH]`]e88uJ~ed` ՎjLϜ, J~ץb5 6NV3ߡ$]Zy1yzYoyMHSb;[.PcӤ_튩p8ӻn BX;V?$y"y~d-P첈=Hv^&px1t-m?|C5dzο%le5amN rHƑ>-{~ы/czVJ 8)N V-+vj W\n)hI Lý5[rg:Nu>Sͭh` 5bFQ@$W'.Қ"#V0 *Ob%5\j~#Oys$ PP&LIu]D^x*X5A&F\} Wt}dsNdlȩqWfs]o!#I=9>)a{AqEmVvoD?vg/ *ꊛI_iʃ.|/~[BD[ %8)9oKGQK|m-|$2@$~aeoa~e1RO "_Q!IxxCtm%{V\~iPi02CT݉B%GW&>Ozܛ\p<>!LEz^#[z)µ]J]IREPe+44/ЅS1dnobhlƐBb8ak(j}zUA B,&S(![%u8# ?3|{?1r (R@!z Ov3~Ӕ^F zOnu;̭@q}Q8w5:UF>z':(B2%uy%g ]Y¸d:?Kz1W0g:b+/|lv94 [ rPP>g"O۫SEXLiQdŹ'+o.)=NPmDܥ 'tdsO>lXx&%`>jҵL{r-Obs2g^\D)\EP2x[ߛRtq⧧آbug=b̥w<>+ATݲHFfABvDB$ل4W^!Y>uybइjs`;Gi1g=yTh@Ld(%HٙgVV,lZ'&|CT|d P]]i%[Y4u9QFٵ{iBu7d2Q5%F:Cv+peX~yN$i:*RI:a3S*D9 q2(g隨f (NVQyVҴ朂e덁"*I8u%haWNY" M>XeꗩfmX~ [}O AUapʼnGyl(\|JXh>jѣ8hLx^>z;Ĩ*lwX$-ɑ39~ }~ > ZgIZz& Ǽ0ȕ$9d}oYrNɧa{otsk/Ͳ9HGkU8i [NI YŷJ/:DU&o\C!33C6{kTF$*`SHN\žQX \MXgO]:{-[%?@싍hԏ{eLü yO~4cʸSNf7x||T!ruAi7pTI8p!P4I}Z Zsr̳FoZ05FZRAs{qԓK*3Rd<@9D.d\V~=mʚLjp?sfF2_<-EB Kb+Ϲ tFfL t"f9'D/7C)գ*?B;,mszyk7pc{ңly,Æ2t͓o?GL"7J#"Lh4ܔR<9Gn^.rU[U/ڿwi/'T5)y3-mi[-P:|ܰ ?O}A@:{pHMJ5M<^՞4 i wX@qNzܥk\SY G{\]굍,5t(TwV]34N Y){s[VgBY5ӿ+G|"Cha06?lӂ?4qޏNNH:U\M${eS׵mr_d|>t^pF m ޗd/04?WϠp53;2 -E)*^JFu>@A3Ƿp(ɝ f=SueS8cy\IBͳ6k8i]txybTUu@{xb+"ZĞ16 >KQk$`'÷Él GƤA˷ !ݸG7+f:}%Ϣ6l~k%0~au[5)@ 23t;9`7LɶJFn(L$Z'"<8Cʽ ѫq|S(gHpώqԁ\Xϴ`[TYdZ0o4f¯ `Z4H:#LXrNJ`f{"rpGZ^(<^c|}O-u7Pؗy:%]!3o R2ӹ%J7D& 2yhU+aZҩ##P|UZf˳ ETk4Ftj>u.e4r/ A6L*niZzxcdaěb_L,֠-=NWկٗՇʀh𧗄 9evh7ͰQQh9[(-e4Oޫ%-إ#tzB'~qrIU=4r`[32FMuɢ =X~,(}-g7ngI);h:l؞!?:iGe+StiSdYwVl`@JiGLRi* E,)B 2 4u*Eݎ9îC3g;8k[h4&.7'():>MUhCQh1ϥ- 8AQ}}R *~ 7P>%Oa9X,]fMy륔 َpn mJKcM tpKrbşaZw#o@J"p>?DayoRf2om #]K+^Ӹ?X 4ۖrϨb \аcW:`h1=&vCM8pj[܈i75IL>Xjs-N5 :oR'tc%^ihv42M-,37 70B 6:j8\ԋœFA&lD(^.ÉqE%cs(G pѫ3Q>9yKƴ$h]ƲZ"ӳl'7ڼXKMD?2*C\Vu1ޅ ψݠ^U^ nREM4,556Ġ֢[hyv-g9ǡkX6'GJgWQ[fz㞛;`  JLTgqSUEqʃP`@6qC|\Y>*ƅfM:pȴZY\4 TY<+Y<]܃r}u}`Epm N: C(@} j-[6:Y ͫeqZ5(%2Q<,[msRg+V $0Z^A8 ؃5Ple1bX #` 9<.RZsK^ȑhJPK0:adv(6wQ A6}S9MDT ;YyIz;sUw=5.\Np0ؖ€Q;y"':FWGkKN/Y(HBAa*|Z'8>YƽI/qXn!U !2mRHp0C:6%[kVE3i+ٙ<,tAR%kG| 4ڑ5!@j:4m>Y0ۯ|8tLH:w1~=`3#ca&T-HJW/p%9=*;o1/`NMXb)`0AқKuL ^i3ݠIbA=V26n٭Ed؏{3p/ס"]1Q“?&J^e0N]w헼a߾iQbzſk#y&X-!6?r}V^QUl xxÙuj\ \-z$z6fѡW abM˱9]1!B+@1wY=#Osre׿0wI M?FzFxR$@;Uu0=k>^g ai6ۮ){}Y.GtK9 6.{xc׸\7|0 Vʅl Cˀ,fZWwrEL3 _l% aފj&єҲBCU zReW22 v4 kYlΔuS7=:|ՠ)_ޡ{lZ_oJ1O| #@0| SU7e ӡ**v ȡDLѲƦ'n3YB2P3=`|N*Vv \z Œf1P]횅ھ鹤rXLnKMT}? ZHP2;Xu{$熹 CJK+QO"{W`D?)$AgZr"bYctg[hw"`*c20H.VFI` /XF'=@PϹ֞!@+٤yh]VΣ E?.#ž>Z8d"{HP)Xllc6*ƕ>q%20}VvP$֯F|4HBvYtǸb ̒t(b8 2\æ$-Z'4"2[xs[w[GBk^'Y1t ?1cW e t.qԌթDlTcfo] -fJKfW͟0__KA2W56r (*%2xxti=[DVir$`S5(k #(c5m2Yrq;CZ*XY!f5b0"B?έC1a2Ń}ZzzG&CZ_G(8BPLv[MU!{9}/ ή|c2X<=V>KRɾ["ATk 뮊-dc)!jG6h0n)+pK6+5r=݋PVLv]VHn5~fTr'0!9J+o{>'p <:zЌbN=p U1ln{,|&{P^xɉ9ʯ8 DvqS8X5\CN$ߺ3C wy"RW⨊%24gaJ2l`(pBտU=+:^vXg7M*T7JnW#՟-Ώ@\i@Mrv myށ|KK8cE.r?üa~O !O7Ыw=՗85&V !@'EGA[. Azjóh"'@Xe(+}50a.(e+/B yɵ;qcB;=m⬉#PD"[^=Y.w4~9oG ~x&'$:ٳKsH!씭bzӌTPWE/2 _9[б[P<>eas#t@HxUM vМj/`4:#K=I}XSxiFWG=.X'[nZl'E +p׺E)?󱺔[7]`E_hc "MMp=S 8);ɽN-dJqO& @wǽ5@$d(k02lHԇ+hbEn`/RɃJ( >Nx8,|qVJ:Kx1jEYt"I+E,G[$Hu* avJ1>uAv"V}!GΨԩ - #9!$LeHƧ>ZB (^k^io`.eXVk.`) C}*%GH!mK7`{Y.9FHqy j]K_II!kXF1'!!ѓ9Dʈ@E2Eut`u+"9H"ti.=2P50 ӻc)7YHsܑ`dSqw\g`ʹBPX<]w$svw~=<&Gf[u ')}Y4DHkx Sɨ@Egv2C5e|rMϬ7-wh$ )$Ͱm00<=૯)N獶 |(5r9(T"[cvC EwI+h<95TIB\"_Il`k -&~8 mꚩ p i>Fb Τ5aa >!Գ.64*Ť  jcGkX"W``/A_xPU PLB`hcA'/-"oH}.GMB_NtPjE/ʻX'1){T-KYq=ekdRdfnlr;ՓG =qjtR5RȉW{g 3Ua/%MofWkAuH,7-|n<*X~I ۜx= xPЍjE9~WrRk+85I:iZ|* qW4oãk"4x>)Y$=Jcp`RL(w`0A^n;@k'kPڂq[m ?FyDN36tI3ꡎcӒ%{߯DgihxQE G2OA`rBtzL?D X%vo|񖩭Yv OO#w[I)0B _cLڜ!{!EߩcÃD)$ELp>ILQ,%j TtHҡ /rO.^"AK;f\UR8w_5n%縁}f2;W[JlH2 i7W80.Zq"x˭gE.:XёI?]|7#_4lq he};cFȓ%=D(U 'hTTi䘔 CJRДLj.DƛJu m?VnD8fo*hdo}VC;h6VNXR{`@I[Y6np0yFHb&p׈B+EQMġ({sZ^뼕/ٙӘ9' i3XE(',k1qFR&:*&%&SE>yXOK ։`o~C1"mK_LvA_s_J'PTش#B|౗ 䄨ΊN=R)RDhdoDYÔ֒m, :A^IW.<]igRH$Gdo[#vbi! AO"^kUb&/-C}M4,ꡟ_hcdۥ10+,dCDdǎ's&[<'{EooQaGvg=2tY@س@PnGX^No\v]kI@q~u_ a4V6-@^C{΃ u!dǁrfL~Ԥ,N^2bΤqXTcիHq` WU L|S"} ]x,V߆_eX9=. Rt ܹY=Ԩ _ìo$}mL#>JaؓͷyCs75 t갺-u4+4XǔSۘU ]q; ۆR H!Gu%dAa`0,}rI9'\ˁ8)*myVtS+X>SPZj*T53'a9!!F}SLVZmk9k=n[ [/ k-JBK,s>;2+ Uҝ$( ;i |-pbVWȧ9@*Dn6@ R?GK-^!>,`#CTp7&tћר>}or_d(##Fr)2cABf6H/hKcwjWJ@]s9uޟJ!S`Vq}f DeǏ ﰅ #i 5Qk#XyҮz$uYz&@.lnr$諣% 4CžԬ_Fԯ$<7M2w yߵ,zve}a1m?; A[upxqow3ަkOJGWN UKeWpLqsu퓚t? 7q6'NCg :ׄkl![wh*;Vڛpp " 0+v4ɬٶ:@cTcj7aՉK[30ҪԎ%ta]3⯽[(M]%"54c_]iXv+N 撝o D.䱴*T_!U28L.QT-8ףJ TZo.cZ2  >6T_͟o+-/[1(Rt=a&fAC":Ŕ#ia-@2WQD02 hz#pׅƠCmE|c1}Da ~cutn1Z*w>UH|;nt&>FRkz*SOoЌ6I] (;4Y Qd\' a5' q4dDŽ;1:dﭏVIlxgXl  !2WyYz8W(h|@/v.VSf G`7@tas˨Ec-LeM;+/(V2?A0쑦4a| ?xbL\Yx^+hÒ`6jA= ]{;/NscfIlᰞ$(Taje:FWLʗ;}j _(ŀf&o}щ&^w2Uf8/BnVr6Xs BD*6LF |1Y1O )CgUP>؏gHTek19ǛiG_|ak c@Lp?eB=m/tg3) O}ͧ#ǏX޽0r2(r"g-C\!@1GS^#:9 Be;Jua 2T-]HU s{yǏ<\PH5>:E{5Oh2C@gGq}XL:@2|VhYᝡ*XPWnN˜Sa!n6Y0~"ջJ1PѹY! wr=ػ؅ɮ @c9'TIMjə g&N+{wۀepuǺdFd !^.:1d!4#s'B^W-SSj,>c4JA bGjIhnA曤_Bjp/S/RNªFi]NՂWsI*/⫴$׽ $ V`Q$P,M/I5@}Xfˢ%h |%K:;&Q!p69C/8^xmJCY,yb0sf9ц#0=U9/XpGk WRI ױ;ӽoz$or/=>ř-";z>/S+Ow w\_P%\B#*(&svG1,!B?2:C ]v5EzhW_JpJRioBNQi"`>-N%yM}[x_kшSI@2L$~f*aQjc#ie'Omī?K^>JVctvy;ÍG#./-6W! kbZ33Un Peu/P.HrMp3%!3iDJ{Wf[aG+" rwwX U vwҌPkbu9hlZR]c;]mH`W.2:4uBM- *#ns2l-H60(QX a%t)Ihzq.`Zv".lfv(I5\ ]u 'LfFyWίEB2j1]+c~p#lVP Ȍ>>G|Խ on05uo IzEe|ej D"؍9m{x)S9ثPY-O"jxұy ̵ca/[X萗ΐIxstEhCn<7ϫmG E9KBV퐲fK`B5ڣuݯ~+݇.HF ;Id:plƑ!,7gm#Uydi0R s[] kK7b5{PɉJ\>C-zRvtS{ /-)fcޣ8|t|ɜn(Iu'+}O* eTw:JmwjzftUo{s!+b@S@NsZsM#SqG4o*\8W@'CDi1~BrOz.'3m#h`p@-8Mi_B d`c띣0d 7l5%^9Y~>m]A0;*=^rdT'Yzđ7k<>_cs{ڷWV˖҇Ǿ-2Do>>lD:*A](&MٗZd. JH%_8 ~PUYm ziq kXpai:#X EM.&PAs1!@r{Eg/S@OOLZٷ}|X+! 8Wl,x ۟Y+gjTKHpOѴy%^^ Y<7av&@ndRmg'2J\p_I8]R*rƎp@A]ʆ2&i 2!';߯Pm޲wB$Dq! 8t>(g!, C35%Xe U;6"M1*ղ,wHN C/=$꼯tg/LQX~4;1Jn(ZxaVUImp+\^,C"T1Y\瞁uQԦ:=K'f_S|6s9C s=·;eA&xkD*^X.WAW9W>v9BB9`.]WNP̘af]El/~*Žn~ ޸aNbxf:r;ě-W#U^XFG&K5CMSdEB>jz XޙZ\EAT W87p7=;eU1m*r[ K}Dgf;#s";q!El*K|riLMK#Q 4UU_xh[p 'Ln8P,ST("k oq;u6Pa-oE>N5+>E~"Hbs]pB2żfTYûqg2"*D0^qCԺσPv\N$C'Lr q6Ћɜ=#ky0H u%SjXF.#1`SN CMyaPk:&ft"RӐ2>;QkžOiY݃gvNmfD-P+ r)~T'IrG"+YTh<v>4oΉiBB\0zo8P 71}UpKL0g?,r)G:ALkQr)G:LYYHNOHяXe\L.[~?fG|h4˖"x6{)˶19Q^Ub~`' YH$2ZKQ2|Jw׈đ[:T3#(oh빏ž\ʳDq|#3wqhX]٣QE{pR,e <:f.LQB)@xQ.)biFaHk6puBsomޓYo ۾׉FcA0h*6z*$“Tk'ܯyÚߺ'fq]5XabZm5L ]SzQVf um )MALQ"ѳ Ͱ/~$&XY}8RpYue9#k mbdV{i}@Aב[)E0Tx VC?OeN}4Z*DJUsq﻾0'b^LD=3|N*GB^ĭ&g\{.uvhI? %;G Rގ&\IN})g*]kR'1:?P)Ra=8F:  .Ojb4 !ǧC4P'%'!M)xNSc~v11y+ VU#bla8N \:%Y4Cv rwn:| (yoV CPM$TFU;FnZ W'׫&yJrz?FH!xFNL *bx5Jtmgpr7U-\(o(N:uPpW~sr`lpO5=@̳,oDuBB}S'd2.NʍbwaT0+-`<͋rORK]Gnw><= K$l5FY: 3Rbvm݂`h!Tdύh/MHUF lFP`cet޲ /(N{Bވz3@ CPL%LkJcN+ԏ=)[dW)SP$:`uȹsqYrg%=)1Cp ?!}JOgUVipF@Ϗ(tծЪf#'ilNTZ;nk!W{ȏ/Q)4M6-D#-$ r ۉ; {^V!],fF!Y>xpßX1=+Wy8Y%#&ֳX8 ,W?9RNn?<{l2TA$DRӜ$]Ӭ[XeS$Դ\ګM vd5FW<\:w0K<*Qqc 0hA~R$; žN eGgQ1zh#QTg["_3.!TՅUUJ-2rIc3V_3Oie"Ou[1>N%_&b(  f7#E裛V֤A#J 0My, oK{J/iwJ+(@90Ӹ|8 a𦱔U+`%:r6ßɊfղ^@J)O݊#{E׉ȡ84J׵P/+RVeIRmPߖԌO-M-3YG} Ւ3Xԁ3VfiBq%_#oRdmt~Ѥ 0/_6>wY5imX*Htލ?h:ƃ:rH 5V]cfnOS*3e\(?d#QEu{s. -5(va=ʺ (nWU 74 0'76^ٸ{~m;͊oBH :Oq8H:L9@wHTm!g"N,Jҏݷ׋(&YQQyf K/Fټ;DxaTh1HˣѣEgj4}ލ5  Sav<$ks~+jэzdhv+ |nK]YS#G90]W45Ua+:9P+]Jv># ih$%Bs6&YULxõtnWjC^m1 fěϓW?]ٳ6]1_ư /uHPO鬧x=M0Fuq\y#RC{L"7G^Y",x HȜN]! `Ĕ>Փ!?4iRƈBmE8`@;57gl|[X5@7eCz )4ZR Ղ9NWFrc  a/ّI/9&eI$\H$y^SzP KU^cx:>J)ր!F w.?Ѱ';`;Axa8ȰĠgkxhzEz][ա4oaÅ5RQ%VcqQٺrg[ ,e9 7 ʎ ǝk9nTLِĎQliWf;̀DuI;z$c@V(5.f /=2^?9GES-%s0֪Ǹ}(f׃+0I5 d[_);7 &%7\eM"6d~d&foU]-XttMdN](\UAsFjf zAܑ' X=p~K>J7 8WèQLRsR1%1w%mL~~eS!j1G$!,9\gjlŏbCRA2gAgWJH:IKH[|]4B;w5#)7srcDGyXzKi{! Ó43TCg83iUZ@(}qt-yeRAt.<~:PY6sQphKclfZ*'g"QI1TD{ _,v?uߑ}NնT!q/θ2W 5#~ ~A7g92B_M1i MP@b-1F1Fә.YvbtH7R{пŊlTP+IyTF[L,2r M2'fiNȡLAGjX?6V {(܉:usDz֘PjyeؚnW"W q@iN;\,+x{nm[Qxd $6`y&yP Ňa&#_BSᅭWZuvP0I.$Ӣ]1™R`1[~j56#[I%c)FԤ(JK!^(bVg) Ls35}]h2tH*+!_VrkX;u&[!{4yjZ," u4)8TIy;GIqrߋP9O}󗩦6'n?IQ6^(F1I4-t΃8?:PkO\tL гzS} 6Zbp_F>FxV>Q2ɿg-;P8!,q^w^05=ho0]AWW-vՓtBK+\Gt  /NJ0_v5frM 7"#9}dBe~r&U"Ue1, ?AWzyR<^17ň29#>Vnp5n,f'eY7EPGt^%n^5}T6KHՕZ4~‘zT#}O3s/4= ?nlv X\"iu$RaZDuU~+殿,*}r!y71?x$DE-*^G,$M-sUrtFfw$6yȫA<ҧ0- w;K{s\(לͺpa:SD[Xd6-lf+rJzZϞڽ~yqC6Q'E1Df*||b^U予EUݼSfkO:0\(i?-]ݺ yvZQr36sjD2M{6E u r,B_hsZ D;KƳ,s`"F2pg)U[Lơǁg.eEqCa?JMfdG/Ir KE/T+ LtHZ,?˼@j3O?*A<IC%%MiGY;Lۨuw] ~;u׿A#ohH5=zFWSK~oΆ"d 7ƄST /GE{QH4:rtFz\ĸU],RA]BtNथ,3]>kپYtYO7Y1kx Ju8Isx }Ҡ'O961Tc1$?E~Jq8,j iic; MGGoKQKp +%s/wIL{EkX6+H@jxCJy8[2,|}t5& [-뛄VbQp+WB?41;P *UR?^y^>4NK2vOƼ`Y\TQ^P Ż+ܜ$\bmd&J0:0"Bʎ}?*%,p<< g!1ZI_=Уc9)uǥ wTa3ml[\M&hΕʴ MoKot(PuGԇ3E^ 'H R {{ ТXSȔx'Za{N6V*DتWg>,CRn0ZV\?W*caG7iXNY[e+O =)nӷ]t9Z#g` ҌstXK<=T@ ͩ_4X"g|A)dI(4ƌJA S#~Mi ڹ!&$^I>QϥA=@~ *:aRjAc,#$@6Qe|?^bX۔(t϶&~7]HEcX`$l2boo݂-$Kɕ1גKe Mr6q3ràල %>aJ7 7b2fقD4l.4vT66%қ[ݏm}b0v#-0T"\KʓrU?Q7zq^kx۝p["%T~8)󊣲/*q*#?RFE*WgM$̆ȻFOn } )OSK۟g9pyB͚=s:ponhs !~j#&)YUq "XHXjC{:r+pZfwٜGHVN7yKH!Pg({rr6n颵kbBfle7z{Eww~ }RwIڂѽ׋xg3 & /Gߝrp2ϧ_P!I 2`;g>64&t)MWN3ڠXח1Tfu[WhzKnFm ~{@auAj Φە5)/.4V7*wxY"0ō)gU9]9涟+[=ktq ;?6HO4 k't<H?"CDv*3^o|Ig!T_4[+BI՗ XgU2bVDw]ȼ^κͻVLc:T&+&T]*Df͒w\#И?>y$ Jr3nnK}Y[+j륛NfJF C"T'ТRAEǠF5z]_ N hYْTRv K"nS,6m__JE\>jWϷHEL 3P'f8уiKO؎ՐV􌎿6.ki EWKW,HN&:n[d7,XPlUAi2Tkת/o-ۮǜl\KF^7@\bpV~lQֵN:'׀ p:y2yCUVҿoM8ỉS`"bȧ&!@7<#7K59{ᾁR.EvOslF6"z_$5 HS>9 ((6ȶ5B{v.ޑ)|T0Bj v#|Ai7g >V}aT=8&\ K@ڻ;yȮOvHtB{NcBrKT}f̒l؟ mMLPH;ei_9L?_bp->)ᇫ_ÞI*` F|^& MF(ZS]w?{YsnhjIٽh:4f:%bjÒ`R]JČtK^Dz~4vmɬf{;u s)KwjT8G\%iJxrA"5xr"+LPmFW;=6SMPnC t-K|ٺ"x'dy6̊?$Ѝ6 \m2@qYo_G_REh$ʕЬJ&Ӣ>VQh0 Ier~C+D@aUJϘImh԰.!8uE8{]90@fgm<}5e)Lz6F$gƧ:?&<vk7] huKc|IuzZo>1,ꯂKLEE͇ Ǡ QG ¨:K}߭ek"hI2%hmWGE쌿(Gns!lt<8Ϸ H=6#RC:a ,s8nyfvK AI&KU'zwՔ\ᳯ;6~?"P@=yܖXLsmD^o":f>I._>-J\3{s1SPQjü^v1ehu)$bhy"g ɨ4%b|ِ σrmȎV]:UEuuYZ t 3[P똙yhƹ=ύBO0.k-aS5&ޤnf; /Ǹ:E:Kڂ/͈5/ok*ckqyl%<2,S]FImw+wdh% yT N: ֧Oz1~<" Fmó𱁻ǟa=OJ⍯KET:DQO%vcI^VW!0|xql=@R%Dz卨[HpA%K+`#$ŖiJos6qL%䤛{lN a=lf;W m&* OX4{wfT@4-RXȍU`O|}!t^NsXN*\o)m8 g7w'? 5Q g-CT7 LGB[GJ-+{_ȒvE_l}TAok9ۖVWݼ(Z膋%4c @ M;u*_tA_[h.XR{tg Dr!R=Nr*&Vk,0~I=Vy)_zS0ZNxf ?zs#kxYל}9R wS~lLB@zBI(SksVp3^Qa7l3'wvl*lHIiSSy>,ya=~T9zRku6XX>:~4©'Mu0w'\K.-G %w0 `PQ6'>4_~3J^:V`"gixM$J;,ޥ>2Y{J3.,`JN -kP~Pt. <ɧ ZH7*ƢZp[Gձ 7c8Ez%_[OZ:y14g79 1z0vY1[86>87ͤ'\$힚wFf{E;èEֆ$ࡇIrdH>o= mX+!1<'kfjUPψqGخ&mψBM{['RGE{.PDמ眵&:[2oPФ+AcTgCcftMQf_S<*ƇyeH2J(~42Ci[嶁++js8|@6^P<-@@BP`-[YYTdF"q h4S`*j"Blؠrfvچo鶕~{%l$e'ZSւjZX/8$t i$=$xyڢѵCoӪ6qԬbKZ6|M3W D!DC9-߃TL] pR.D<)M#⑓iT(΂2 d/Ӽ*!UTVSX9~V:&'soc`~z{|0?u S@VT'bNP $b j~WR1!*h8Mq#o|`Aϖu6M~118(铻wA#<'㎳G[Oq_0Mo dLK ;GTMmtq̯o"p߳j>Z&p9nM1@άJ0 x*In?8 a6r,j6Eb,O=G&%N3qfT t>4?JW\$ b ?#޴@Hgƿ;0 :{\@*^l&Ky)"3,;e?vyyG{'5&9Дq@Ww,E0ixDpI3v};Aߪե>LJ㺣,?PʥԯUpԃ%?^iıf?B$#l=]1^( VTo¾XJפ/u3a깽?Tz4.=۟JGu$35hF7U0oePG Wi_BEᅉ] nTQ۱)Gd mfs1|az&`*䂕ZKS`v4R@ZSA`kQʁPED+]`c.tXSk /l,T>akXnnz,wj>N׏M@+L=bDCW+^.\ol<-GN GH,"ĘS 340 W_sRgjlWELJCߕu[4p3MqF>ő T DVkjSp"[PBEぐQ!NR:>SHJ!%$-(nxM GOU8]t>Pv2:iRϯ:Gtc)1m/l@kD-6 tGM6H.M).F1];{3 %95Yvgb2M  :eU{dBL24WfیbzAX6B:Gv}voGxXɤ|+ťbU/gBuPѶNnYORZRnLhva݄cnRN3A=K%x 3, r)>Gs9cFVlyN.XNM9C6lTk<O=OAFHe]-.pY>F獸a'GSw qzQ6_bTiE4KqEuPm`@!JW0,GD aڔɉzz}FR ?n}Q ʠԺ үj6@ Gt>4!Jrҕ!RhԩG0͙xjOؐ濒[8Ud5J]lV/>bxd"Ӵ4mFvz_H3oCjdLC%~!6p[CZA3蚢B wHa?ޡ"zYi8*, L7dP[wq3*!k%!TL/ߠãY /@a-TG0ų] 'Jn.TV(#ՒQC-pÿܳۨXսKq:)deD-UgPm8rDI=UK:2tom)% Fi9iEOġ[#frj/S0X "O|N]6T?|A:5>i|˽/qAG]U ǐݢpD3Lh\2&gU_yk!G0%q [n挝ܸM5R J٧ Ww<=, h놪,Д5ۆvZSrL}@[.dzΰFVrL戭AHdl;aU3!]ZM~q$ ~i`d[[zc'!UCmHiѡcl|$ya}}J@Ǵfb$%v9+zfBNb*e$>5>dג2Q+{0+/J9 Di !+Z n#S B`;*xq3wPWgQOp-%]I<._+y6NaۦhMƜ_y b''T18;D_~,Z&8~_Y·h2uWCѡ0iW/S}oNx:>):|蟅wӛ~x& > V*o2hVunO{`lkmxcYpEBf/~\h44!؝ # >n8l"ɓ/ف1ݑRP#- bxtlMu\lM}Q5G۫4DZ:^!Gso!jJ+kHbwN?t-1aʜt 4Nm1YH| SHft3i"ރ;bąpdnzH"WvX~v^\~ٯ h^TPҩn č G[!s'WM ujjsh[kݽKcd#K3-`4 T_gVM^Vil*29Ro@Z4%'Q82s~8׼;Ͻ6:$Q ?g|e V9E:L8o#}NPXu"&Cd봻b/Hb\t-Y 3u2<(}8yf=Z{݆-^%uq 5!Տo%C">ϟ}ȃl ܎BEғ`GQ 5N%m&$tx!CmcC;u8#ar- )+Ll KZO5m r_XJ|uBO0&pR@~ K2*#ȡ*ovx"P,),ٿm}vlsxve!9U tTjUHD ;ڒ@ Ѣ`(v;昉j,i;zb<v %Em[?Һ3 00k8ˊu?}}>\ګ?kvb?_?F+,hk]5&y*Tng h= #֑־&ycf(noȿ)m%\zt z9)υfrW6jLӋ n:J ZbLXePr =< K3U[Psp0VU9'YDq<c_ı諡Sg1\8 ;`v.n`O5KJR3; BnӰ9^SkQU 5/;ah,sQ:[rhc8pK!÷. }b4a4(꣋>Kh(AwP'"H+VOky\ٛRG06|QZ}Co3DV6T3{t}!1옰m#ؓS*p,*1E/}gn/=% [PrDTQ,:Ac~74 wI1v]ټ}DszNViECL@Z5 PCl!zB\ޭ^P*@,2:ʵ/Ou<k %|~B1.G}? Ь_/+3Pnh%IgVn1 ~T(?ORGm~7$:>v.`Ѳf7 G"dJ&f*G+@y_=.,~\C"{vv v3C.Xl5 (&[Hgq4IvyC `5:MqW}`$sB- >lo TT>hu\*rb\[([1ʒEo$6.P(2S`R͸TATa +Y)IfYʃp}zrQ&62"䌊]z[M@:y54C^8]s:9ǸnVyӒ۱cckJ:>I]V?>:)E]+t1Ckv>$ O㠹 e3>I;3[Anx 2+jc0b3IZDu @tEF>AX~ӧfs.jiF( :{;[0۬~4C!?>߽x:Ь͹MU=d)&,`:ڌDe1 儢uIrvc ?i~ a bÈR*sb!8 .0 ݽ"֝: .t MWaPiI6־nin`*5ʰ^ξ쿅"G;1g|~M JaO :k#61IȓPBL,_œkWh"&Fq&^sG՜9\~Ou D,OJAL?Uq|S]$Ccpl}3zL2Z2.{lAOXSxz`wX= ,.[*dM!u^Z[ t/V4AdZ@n ;j!ؠHoElnrhTpW3grgiǠaݒs iƵ"H$%¯!i%ӚPbĹ/#_k]*Gc\9Xy2$njޢ&3j (p"o1M2~ڋrjKM,|;51//ŰLZM6֥ t[CH44hnFiUh{hG-|;'(&rD!x-\x$a !$N9~i^wags`/"q~x|,=mu/y(|EVZS |I$nJiːS谟H?h6;Q̬!@1f#QULum;wiY6.Jhh)/o]ˣ3P&m%a/u!vbD 1^) vu 5Sƶ?`CLaJ3Q+dd*{'jqGQf@Od)+Q`ّs*{(e/RiA`xw]]c\ Dl_n/o߅)w`5C-5t=WDc@]-F8Êx-gsZ,,+վ"ZDGNTQ֠e}yF^^0o awAg[~C i='F?lS /)BkFj͓{ Z|RH* M>Ҋ.,z*R%\Oą8JQ(@J#VEؐ(6E6ÛĽ Wzwg@ncyA?#J_! ,}A@?\x@h=1;OwTE"*l+x?1' cn f(w/E½X2e%wm23:7ZԪx)\caDy62@&C5ޣ_{i=ucw4NfS4o7>Em=zoJSQ J -*񶶈1y5ŗeb|\(^B8 l0$MQTإO)R_Hs򢄞 &U%fAvA:*Q+=?†d3'gg_Ʊ11ZfԋGNW]=ѻ>,z_-~ a߷)p-?O,S\#ښ;$O72:m(ĠBR˵4moe\+]ZtiI2Fȶz`14ĔYb-_֩Ze}v/Dn?'2:0 ;4 IfHD%T|%u^o v@f"N9"n)z.΋;>XșìR4j l0*ShK V*nEwG M IF c`g~y{/p'[I2lÓOV,CCzg8kn[&&0,77d=ĜwP͈{c Yk>iuN-ulSVxda<˿7ueR0…d_m-nP*gd%6cK~AP.ڎwdH#r'#C-3(.b50g5 go~@OcU`4m> L2q-}0q/pI\jkQ_U0S1"nL"0$)-7@nzhvi y盎9 !jQ} *^N$CM q=Ӡonm!ڙ4k)3ьԦ+yt?JJͤ?zwQzEWzj9bDM4Gm%V Lh ka{^V3 >pΛHoƘw3لm@USSKzKUJD !Cb3JIUcb_f pNx9 GdK wv2˴S߇/ 5U&;@ 30#m"W ؝3Fpf[}+ ftz j.hW Y?|YZ'Uc,M=Y̱d-: `|tߤ?!SUk4&!7j\ &̾/b0+p' QP 1_MG "{k?u T)3b6±4jŎ?SKQvFSWT3 93M|0S"SߚQy֚os# ?dЏ5*\Ogq?ҹxhR뀯OHk՞ҙK퐯)c".ܭEsq!F:C]tkuoBw&&+BVJ^B`ӭS$>q[fM_k"*ǷUe(/'.cj!I:@@bb05_/ra"/E݉[ׄ708Õ?"~HK?0 3Kjyϧ]4OnvEJ}-9hIeyZc y!"Cˋ[7~DVRv;:v>I)X pj `{z^_~+ou ߵqIwɈԁ%MS |sq~RptPlBT@>@uLH'xxU >|UعCE e?7Jdhe&, -!أ,7)7z3]J  5f`gz1& sTeu~j7-.d1Xc1drEx޷!(a. H\Q]2AYEXrJȲWuOB>wڿ(b<zw_cNn6ѪIDSI;=D 2P/pۤ !12Zҡ^0a &aE{.£0bȎb&D5Cj Nnn2 4o ؍CL8 iL[kDAҰfFP^< (aax(O4>~۠Ki~{mPqwjDe7kPi QR5vAzv]|lo(g* h&{$=.!u _F3v˟*a,H@-ޫ0}u.T(N4 f2c ag3i8Z+g/[SK؎K8t.:A'1HXK ]$#~&NZBxï{<;pVEx!pYZ$VU=VreP[j5O-@jOoq73UvZЗ1p"D}&vVEM G/cmgm/tkuuܪk: HVzU(Y|(Q'~k&8b9 ݝH->VKCC,pC3"D-dJG”2`e}>E^nc_TԊ+.$Â흔B] ;k3+ΎPL)/ ~̓ĪQu x~ Ȱ_K\]Hގ<uwa4R_Kg2{L]H\\iEȟW I+.ݙ'58W+F..8CŹf1UGo l #L~H:];ߣx#0?ޘA%VX/n;t.XK1'Si/#WPk WO¢>7OϫCȲKfo`]Z@4#Si=o2FHk`}n~M"Yyuo}*0"㒘> RFj]'SUR$[?E.ˋMYO26طiH~s06P~IS"#Hc%27JB;kuҒĨS>%{RlD c"1YPWZ醯ԇwc-om(I{o7n -׺^3Y /sebq̥k7=G#[{2`yi罀%_NV'%g kk*"#~jU@D_I،}avo``3E S6a `ceg $&їnPu]0/w(@{P| J|AaqV -j@ 4s:{7hc3`uŀӼ I\# %r?gQO؈ ǃSa&  ӉN 5  ψFK~xqD5z%#c/`F(i&ۏp{Xp`KC@t*8joɦWNs2ؽF\wЉk+Ջ4 ÷lH nZk:+A1(k ,`~kUVJ3p2"2h_A(;'@lNP!r`po4%;@*mo]t╋ GEVCq"F0OPfzɤtq@jŵ! |u#' eͪ{ʊͿԲ׫/wa`OABW*@~i}ڳظm?riusgx*]fЬ+A6Fڿrtqm\PyL @ك5&`0s=s_!V;<%2-qIݥu:>9ڀ9Q!~DK~u(k O}#q_ KJjp"{8Vk,ݩ7%Fp2ۗq`~. Ϻj3y֯DG@FѪ/r,n`7yvC`[:%|%!F55[l 3NWC=P^Գ'%gFp~[Hm(o$lÂɈ6*7E)j]QEUZ`sGc҄^D؟,J6Im_.QXFΑ֗&,YQP6 uG$`1 bI ĭҘ]S )X)|t^Rǭ`pfdqwSi|/$L5Ii413ܖyiLt>O{7:N, ?ݫ=}Y-'cUܽ!FtC.ܶO&m lD$)tQun6"g.ì3Dd'X,:Qs ; BVғ Eg57pZi;b>FB6EDXH|\~$Bq*fITҞ~vׁhFK!dV҄B#U'; ww&ZcRiב9XˑU ,0<<([1kZӎ|5S"0#bfo BW-r㽿X⹓Q ϊ\G2ƪSMXaUHNIP%OWDRUp)5A@v KvN [C`<'n2)5BBoU!ˀ `ÑݤY3^Sfև$+Dͅ~/2k)ΐYdk\YT+ _AJHMG*՚1UW=3|sn~cm>+({rtuM6-"F2}!/7?Wv<=^ąXp XIvF"MÒy%YF_&-< ꡊ܈s&R"Wb0W. 8Aj5' PZ9sW^: ;h1F:d ~DWNNi%^ىRۇ":EGdUqŒM(.7pvyl{"[^INVMz(L58>^WjvIa`ޞcGy'Uûzb|H&kFR~CHvbykyҊ1 ԭ=+:6lOݘ BdKQЫj<6zڏ1@GfɪT8[3EEr%ԡdX^slkNFl"dCNld;a\RNxCwU Pw:YjEZ yr Na00=7am񖷊@7Pmi~^? /=p`A,.< 0F"Ze:Rh{BE<=p:!u3TrJH(<ՋN,_ M-TZρP qO~e娵 KXrX onu%)?3Bl$Z?٨QQ8vH|=C(W98 slhfu:A(8Q ldrS[=G }>PfSLZ!n[1ށ.>ӊbp9IеrT1гpǀ7º~1Sx029qGڿC"A/|Vt ƥ[jW\[þSR\3aS#2R,q\5-RRWcr3v?X>~MɾyEeeF<'?Vp V a]z,Ckϐp+|N1Yq1@P%WЭiC#ڐʭ!4p0 mh@7/1ah.ЉeAyEqnRW!J/qRz bAQ9 =7-3csBWUP'͐Pۑij2oC Jt:>6ot7@uZHS\D.'AME֝~vE5[YߋC ru.rORkN^/Ѭ {y]t3B(P^^ ȫXϚ{3h;u+qŕlrm at0Hג32G6f N]>˖ ZT ]fHkߍ|ǿsqB 8UM3.PV2((c'q0˸g_RDeb1iLurib!̴ .VȤ#j >B1,#}㧇o뙼Fb( /\VL*!+Q4RJ=`1ZE:%QeΓ;r &ʾ+J|NZtmXZKڡU"(hBVcݸg^vܭC?-yejO' d@}f^kDŽM3aS0p:Kx:2/j+ϣ|A,9Hn2[(ժw.aG@髃NXI4.v uϵ~qr^ }[AV.ʀٴ_L,ޘKyYj/~9'AB:БsA..JoJ"KxgXܱ+>7@6VW:>+/n)/lJu`ߕ7.ML@BNK2C{NTsL&fk{>T1Jm>/oxӔ3BrNC:ZFvd:!;30:$ Uq Q_0|282 ?>]TUM4T_Vuԧ~ C9=2{hH!LI!`Տ2ן5$ALm 9 }I aE_.%?OX(e :<2^Kl8kds%>XbK3`=5pu{ lSGg>h>`[³ѻ \aD`PB"PT`>['&)Rɷw65ѣ6ܥΪ kPXym"_6jtb.Ɯuъ?`c]r kU$eA˒h%$7yEOQ0ӹ(P|`?vEVÃS^cTx9tb='D>h?\( T0r*!Sh\x|1dhk6#IJ'5\) 49%ݯmR!AlV0}I1Ƕf m[D} h7qb 6E9#J؇ރ2F.0UuB)F"ij~⾇fqy38]r7+1|TqJL'0=.|딥Hq˛K+ xVgK 8If>[ϡڥhj@qў a++nbz_Z`i9RO$ޘ@XI' j=nE5;gT@`5_h Mj>PGnἔ('~9w ;0dvX1j]Ϳݤn@;Zx*>ƲƲݥu;g0 KՒM% ZE΅.ohlsb(͌7oWoDCX;2!*6&h=4l#2g! b`&UX[FJ|GMj5p ŕ4'. Z+= "HOsn^"gm4IFPކGݮ`}ig}^KK'|#$1) ǃ9hjb䂅l!ay?s}L#?IuČ #=?Lo* [nυAs?aQ|F~Jٰ7crU^ sP;! ;)q1k3˪]? )3V9"gCoGž]Պ1dϑ@$DcFM4$'si2V5;Ν72ʻ10(Z$q")"I{mYuJ]&quR ܯjQ@F0,"1'p$+[AZ\T]C p}'6^KZ$NQԲ (aJ7ȐQv ڝޕmk`@O&N R@ w 3gx8W0k7@L|a9 ¢–SBl[My9(rbA[ EE@ G 4LAG]+4*;fU9V<QCc([~FxZF@5(V)eX8ޕ>l[DD)MLBzelJ(ҥPZ͍|<789&T.bYlYrwPة:f]̑\0E}!5aI|WOm;G?ς\#x 7Rف{gU2hb0EKeZ^W { @led\}Bs)JR6#э77!V*8u.,2G_v1нТk:ۇ \nrś܅ 5WHֆ|5hT:>f2=z?o4qڵrr['*`w@B*ŕֶ @0g#o%42s3GcגLbQ(=_)):nx"47{I5 tm l{&@ ]1Kt‘:NmYOEMEB۰xa,YLWV*D^dJ #?,Ak>}B•EUtTia6@vx8 hDJ>G{8Y=3,k>߱Ů7${cIJ;joyҎJb%W/Tfg )_|Ȫ¿|Q$[VPv #A,6|)mSO =_A fzUJ<8H楡dɓ{׃)%6zh)^}ߵ.9=I)U <ÂX}z9fE((%:B* nlwgAqfIQDg.e< s})h5iJqKìY;@[hy}4ަh˟6vX$yukFC I}k.cv"xN@+.r̯VЍ)KFqb/PuWN!T& <>[Z՞~11zd\AӓA~^MV7xE;I0uyJ\' ! Mj×aӺ͟[_cZ-I7POTE<^XQ_ܿ"l\yhPύP/h ~RKČώ!c8lS ٚ$ Gol -粻8.n<,ѿKcezJSQҹK|L0y2Pm2-N~\gffɗ,{(<0f>jP F6޸DarC)b'e u5†NzGUL un/\hf ^c:>[@8EDUtuujش[>VSKn;.Pjw =s;#f$<@a/ Kf%СK7}8ak 'ګ=OvHGġJфOO-_Bm=Xxj4AlIԵզccEw,vӮ"Ԝ4U޳S(#wጦL۟|=1NG(YU)_Y! opnC}[!ے_Z~jS]]DQَ'l_k)?Tƭ9e4P4 vo9=%iW&ܰ[HGAj\:cU]7/pp}]u *j cz0HF,CrtLgQjC\|' _Wi8Ls{;KR7DY׺(,}pWӾNm3q6cLk &' o)v+/Zu.lX"J6U$x"*ʈ7-o!h"!D5?^v(U=?RʙyO%"._rļѝ)'wƁ򴀏*V$t Pg},)a?H^B1yzt[gF(6>2+1DP3p/V֙muQkWzSگ0TGȶû =p0lts)-FSs߀7t O5Lަ]gj^?^s0[{̄;^0+R Ztˇ%hEMw&4*G==fG(+L+oD!5gMCڐz|>#֣wl%LWR|Rs%N8oǁ fzkցGF'(@#rAb>KȫNFZ.EǰpbDX,ë}D l%GQdSfadйmAjCU6v9,"tʌ"Ƕ5t,׷~$1+xTA`y>XN_[f?Z>%l^[O 9Rcz+]je~Jbz`No#~3KueS {C%i1xWDkE0TGz!o2xX"x,eKAL=7]h\Xq9 +4@x.Τ)7~{^ZY]E$Vl\^AMMm:/˾n%VEIfddS=4]vw+rqd Π+I I$6XmHx>_%VY+)/"z2U rgc1K[D_YeVq\:oN~#wu5:PKedDÙ8g/*nZulIY9'Y>F QW.)vұxym;UcNf3KӔkω`H`EȫL}MSʫ[~!&-?Zџ+l0e 0r_l^DVSلo'Ѩ-P/޶p:|XHGzF2,٩ j/Ȯk6\o5PDݠ(קT99r*!_NhJPft^B̵m۹ua5ؗMuO(:DoD<)eBYxm_pBY[QUyӀlB#-_bJ=5 #1=}7ʱ\|%#cbHF0*vp@zj笛ǫ LL>T2ʫ9r+gP(|ϝ/t9em&J˞HL`=C៴R$ 1v/HYZ21չ |c~B|@ZWTJR|)mHY*6%jb ÄL{ڴ =z猪MՉo;<3ؼJ)asyx8եw#3?f$2&؍>x0M2Oxz-8Eajr=ҹ1eT!1Z48B>GMG9Hc|EmPdDm^VjА~w(Tx`<á7#L~ιlp]7x@ʀ쪡Zy{@4;ڊN'_ z(@׻36fV}`U<`>EЃiI!bU6:G,O]1 !_fR/wsFw<3s*FAdž8VD,5v1 AL,x$V&kWj.fq L$]KS B_)&ÂY9M&A3MWӃ M^$7]2bӼ/+0;pRxC*@ضT$I7Hyg!NMHgZO1̈́i&T}%oKfP}8Vw8YlrfR^!.jF$ڦCå#։hN.-d9_?SB0 vͪB':ZN.4iئuV(!EvS n޵`<#aX͟8n1\ !}=!=Zk4:R3~6>>1@QKN۠ ŲNjb3a;6hj(B?jPӝC5ٱėϱQ 9OaqaY/I.fã&8纳اMQa6OvVqmʪW췿\`!1M(ϋtd 85v Pxse.;k +?E=y~a7 5Zt6LEm{.b͟E@P*o;GNK',-扆Utс@9טּ5e? N _HI$ j4h$;Ws6](Y3Lf0) CepiovsBѠ€AؠDŴ3ʊ Q9]V%[$s7+QWM#7[$V:)|p˚7aFҵa.{#5w=Q/ h69Xϣ52K!>y#p$ł@XPH]j 1H? B+_H\ﶧ%2)t1j=n!𒆤 X3a<4ajK58+SeNf]Js ̖n,jv)[vf3?WI{o $#}ǭu;ܞ~ : >?KsJA{4(~i<̗0s7a MQ+6JR˪[ #HdyJ,פPj({)PЅf!E!sb=i{ÔJ rn kM? [3ֲH֛ 2< $aIӊLWs\1 I-3IWXfU7uoMQJ68UuGfmG'b&'iOu$S'/zy[׊́cqKѱ{2zu#ͧjM_%`-ҋ'qmD>%b;*o4ڭOg 9x6:}ԽX0z O3o.b :dGQ澹UO.iQ 1ܖW8 ^38mJzyH q[})diǖ8zt'h!g$69Hv?QyMZW&QnQ >l ֿxW7ihDuaU {K.V"_ cysICI驛 3[$J+y/"زsi1 BF+[P]Q/NH{Msw#$]`[8 2_Z &IJ5KG8"W>ާUH"xK2W T ?+L5eRH%4rfwǼ!w_O҈ >Yf,9v#>Lq-sֳE,I $ڀs[׋  JgYH'2+cr"&r%[wa1gG10lRƵ5!R˺j`L9S[Y}C)—?ayG'}D5,,Vv_X+'ԆmXû4zdP52udۢbXO9hd %,׻+1]}弱$=I~5uo[FzKGѸ %3Cs#b{YTAh{W1#. PlL!gM8jθB\GU”!3 ? EKi-cX.-τHU(PX)Ed,g [542KmWenTyImqz*I-i#_Lc=L.i,̣J+:'^/%SF$ pRF;~c5,v=NGd='SiiHRK[M&Tᧃa:!%p$.^\Q`k9y5t &kY4ʜlP?zr,Vo/GGrܢj! mlHݮ -EpEpg-~h<0"=&g.fP.lG$/=׏_DJ nh]9sQlӳ+CY*J;7mq%9De9,u)fCKI%Lhחp=BaZ4~m $VSYJ?sos!@R>X&?bIbv-"{̧zUo y@]eC2WfzMo;n~G Af Ù|~n8?_96 ztZ 4Z՗8/OH},<^ HUOF‰\3ff3Fw3em}ƾhԑH4^\H}V9BWPWh~. L;̑I%(ZrB$U(qȑ \{y[ɝYu-t = wQ\w5!~]+qHrYc(*,ai(:?ÒGpvF=И< ,SDZfSd.!-pL*颥X5&0MplQ̧WD"S ψ_̉GR_LDBP#ӹ8<lq r+(5<ؓZF0dtF8@6:Oќ'V;nR)RL+qMA˜IT+ !*Iz;a0׽_%!qd-h=p_XWOor6N D Ȣ ?8%x(5DyH;So]yBC  ۸hOm&l~ ۿF9b̎ 佤ل.37=Zt'>gAx P|E`g,s`@}Slb: =p?"d|Ds Lǔ!LZ%"l61-wdr@P-BbKj>+Jqrf:H܅PM5ԅbKߓ>oeJُ?ɾhEHKxLZӇY=Ґ4 زZߥU^vn H/㉙z@N&qՎ*wGN(ToR JOuYLx. Fd5<1I8xKcX\<*vg[}YY`QyGGT_$X?x| 58ɓw Rtob(\ݼY wb!3ۊ(՛F RZB5`$y=Qu31q&ȑJʁ<S6jdϴ̛Doa"Ց$//α z 3C3 nۉHRGǣdjvtX]x!` LB/ibxLp8¶6^}ohjk(#Exٸ7Y݋Q\I7*ލ*3cd=@,ȂIj\fË#zNF!]hM@4H R;^;FiV\^:lٵy _!'j84$UmxnY "NfPH%My~D/[Ҽaih"6'>G+۾32O&ɓ;tuʯW` ʜB4p-1IsI;?PE %!tV>X1SoƓk^40v)l16 ç5)`AZ&T%bJ>{ŋGAj^8*s,ՂZϵ\G6ȷ,qW!]zq @*K oz T X}آk꺋vip%",pK^HwX43!oClYO$6\S8b-^)fMjYj&Y܋s'3lRn_+^-|VݔVVyͯ,] :ӌYpmR#h- XTAGdUC04ߥ'#a2ߙ`U1ڙ&w_$j魯T*`!^GfҠMdM/\2dDxH3g|\r9a;M?HJ l6˦9O6Tm쀬ܐfR1G7pjl ([uLIIL`uRGqЗo|tSaظ5S5EM 9}Z>9>Rx͌J4gFuJ=n-Fa@ v\=tpTf:;k#63JP >DIWyxl#d"83[nv,ka;8@g0make5B1VWZvExY$$ el'xtێz6P{m}7[3$7rW!sB)g־>xj:]1'ߣ@ <*ſ;=0:yvi ӆP"O N!@'(le' 'ԏlkX'Hk1x*.l-G6^if>nBC~9;L%9>,]hPg_Z ao+E+쎠dx4=M#dȸTGK@O/M-e7fDDuRH3 /rw Zճ[rA0vޯ!a/UZ!@Ֆ}[87[j24ވSP'|`vr;iCKϊ2SKΑ'(TS)"t9Pӈz,IIM x- o68wK+.2P[QxOahM'xMJ*^?֗jSi!bIa7~>@ߓꃖaTC;ZǰOC:> һ5uiVB[;gj\9`խs~p2kW{Y8ޓ\'a % >d(\߂ac)W^Ȣ`˴z|TURSTjCEa6tidd̫%uW qv˔2 sȠ"Wv<)E}, @MdBAMiZI ?Hu7~cg ^>C<é_όϪ{qdC{ ~8ʬenE6G کNw aUs_qy Vʕh/A Tnvț4r];MZz+[J#-RQD_ KN#Ⱥߓ =2ܾf,.CS}` ,sfx0д; AVXń]}8aYblTRsaoUD*hyE]w*l  +6(S%I)2vAդ3 1m0!LQjAPYw幑[#'Y !1;(aT+4ZМ0q)apbpzUOL=8SgB2jnJnw? {%BӖդe7e쵚8H޽<+!qcutI^(NqV§!{_Of4Ws3{wPmNnǤU2w=1k$FTXWg`o}#Sn^tu-$7/h{vk9%j jFPQ׸YGnj5"ruQ>2%kdel$#Y~x@| &D =`/{<ÇqtֻoڌR Gr3 }E\5Wzk[/~ VPߣoŀAr_1|\SzM+NX.Y!=V}ht #ic !/.i)wx>hn۩E؄U/0 l ʪN ĖWn soܻK*ja7a]j[xm06 {E_)G ÎMdn3OyI@(&Y랝IY.JC Ӫ(uW|nx负˕"ZK7 ;}C#/;'P,:ͭ6ma. !?lvގɈ9 ݔV뿂Iadݧ"dt+j1-ƘvC3We2n {:؅FDwifE- XWbz3$.agjCyLcLC@v~yˇoFPc9_rD,fJ( t)rރ[}z:a֋`lO{"mgT!5ᯓ;;>;_ds?! >ndJL ʳXxM)9igbdf4߳h䢳^H5I tR:f]0䖚R /TWankxzȠkK_?ٞC _0:,Y4X,eaYW; =DI8~Td*E^z!Y4meN%1+.Bo<-_wtJ1. ;~z,wc嵴0xNKAoB’gET1U兝[Q%DHS HWeWt@߶Ҩg. lLC":唩^ Z<~cQ%ya_l=NnY }@yi|~~G4f5 [rpsi;ѧHURaLX׶́y7#6Rѯ]\1\fRy8A,>|h;#Ihhrےn;T h,J$-%U}]S"-|<9Pe1M>E[x벝>zf&ㅺ~ʞS@'*,ѾDĘyS׷:諬+:↷lxkkrL.AkR'Dnq@4dܱ Ob~l<7`Z|N m`ӦiB'W}6CLttJ+ƕH Y[ h4@1D z kȉc;J"r^v n^ ^]-;s09["eB<7ؐ2)´v;e:?'v>q]-w6YY6> e!Bo 6Gsw4$ֻY*B*(:çWg,?dGO` ǖh|Yi kw"L=wrkuϫ6S@xGk:q>誠(7 IIW:iR'.W['[98RVU'ւ^Ƈg}HLe菱~4>xRʁLϳ9m<6NQ~mύL%cl'#X`_sriOW@+W1+E'`zdqMx[#|mϖ@kRz؇c'"J?ze;/&S,>jh ̀F?wSfh%#Q(> >}8П^& X͉[.-6¸YI|@O]^ɿ;WǏֆH=|vip ? $´N^Mw,n [n~q#[FXwE(<&u=Ħ1,^-'~DmQ'1Iӓ8@PYiժHbQUF ܚsr!$ U 5u[u$v:h˗i;piH@!wk{*B//TI?5#c|(FP@‰-G/5ՄzS-:0\8qv)BT۴Ґ W Ғ>q ]z?h iiir;Z%gy-! s_DZud{^gG)9t9M6QV&bXmW~+*t 7n|̥G6FM 8,Xaz>r/e|r\7ȃ?n7^rY4=X6QHb%d (tIٝ9"D9?*Јi#a>3#zEmAZN{9pcItVސ >k46cBH|rئ.S,6+e927Q@Ȍ-tne)@`BeoR?mM^ޡ=8ff;镝F0u.2;tNU 4~s;xj# ;iD!KLtMcwj_1=dJpdꅖ"ƧRuZw]mK~ SZ(qBli R7sۖQJb@ydG⤌J"4!qNmjG-} {;XM=jqexX<cIjobAJd*`%{`! W)8 nM3Pu>Ղ=dfy2<  Pp-95?KegE|CՅt4}7NtbjY&ak;1N7Ga^^Շl30ŴUw$&--u믺7O@)7|D~qP᡾FdQ~z rqN}͞eGo ]N¾u{0S"H@<z-ng4Ocq+B}%ନ* =ʃ6PH\uصO[7=r{+"xΙ΁7di:?ͨ3g<%hcwZ ј֙`Ӟ:D y;Zv%nJ6~dFnET6F!n '(HEcM ¬s]..`;NEi 2D7YUG_ jA+7^b1_Ki L_zʥ"~뼣p/e `X}0#K#$ f TXTyYBl ݟ@kcToX,)}S~98"﷋zi JřUEȤ起d#fL6ųrzU'q.<_cp?H!VS&=5{>^8Z /V+ fwؑKJ/N{N--*;(yØ,"9eAQ/T~7ލW]@ʎBg5߅!OnSDʮ(tZQC(hH1tn&Y u9;4?ߦEps$aetuU϶㶌m{j9K[3pyGZfmƖ)xRPQa|nbMĩZ4ABE  șx \~aZhY39l0k2t|$a!5m0UE4$zd/ȍ@FE:*Q@y//%z'A@]k@hd]J4L}94O4NC4C{.Vҁ,ژ}:Og9Bkl5fm*b;89anf}ljU3kZx}ͭ`ʟZkb #Kmm-rېc:\ &:aaƇkCWv?Ϸ%:VZVo~ !<*mj1; 5!b%f? .SࢆG WYg.c!:1m] '*CĊnןb _qU껲S]ϝ~!m3;b*L^vc^g g+p8A$e JM HcMG5l$.ym)xfdzF XʣXy~L0]k t ,RF OBrŖp 9O;d(eg g*B^`NꇳwcF_:*si_OBpVZ=%BJ-iYo T&jPKo|6cS!JKVT=13MsMYE)0ЇZmA΋N8%U QRm\f8R+] z ]Ӂ"LEGeg;6>O6ԖMcPF $esAQO5F*~Kӧ)_,W54dbҶ<l@ Eg}"*$,ӡ$~u˛|-A_sVꇊ _\AAx+tWf4N:4+78 ;p\7< JJȂ_GX]lg|U2ÿ"poW[{ ) ?sH+ʹN ^ȝn 5(8|HMzW{T EnJXyWpܫ#%$仉}TB ,L = bC}:_$(<۾.kKbWearҍuXvHCգ|T\HI0rᮅkvOZ'sPUn#O9Rut1 ߍ'3 '@vv#kjyB)pl]8Hɘ8{ꅜ:,R]+y]C_ʫknG"Xh7ǾaܞP‚/`}.zզtJ1]:$ yv+oJ S-X@㳩~1j@''մ51nDd E'8pnTg]u^GM*./XSub9.9F8fe344i{8&0Lx| LMm̡/OȴF^zǪV@;BBj53wKSBd 9=4EkAas1-TfLZZ^vsTR#j|/* 64t/bQWJ5 ܕ.ϮC~&mۯ W~Y+Mta֖ޔ 1}$_Q݌+kPSDYq+7:ek)D#38AÄbn3l+dnbZfKJ(I! aonliE8gB_E܅b(_"e܇|oU3,g}Ŷ7F#Iy!>o=u9(Gc* QSrtwWܜ8;L<"& %|re3U$"[Xb6BCϕ7=nR_$6 9{@ 5'ah H*?Y[`XZɠ鹭v:JNUҮ%dL1rwn_>?{8T%icRle<<vZA,P}xM u-KgKXF,A,^֝k`\~!}i;I:5jS DzGi ?o[fFA cNJfq 2Ϻhe !HL^o/"4e7CpTݜ]z?IW@$fOA=[l$7[b'g1(|}XD'߷4 HR9V3chc>ꁽ@cfnVB YE lxɺi1i[B|:lVvϧ"Bq+b Rӯ'%ܒ6ƜΐZEމ0򠱫PA=h2 ^LTo7E0K{C(p7">Y͸ `G|dfMjY~g?ۭqHji$gm#J^DY?lOy"RK8c]f Vn; Kw:f~1a)}nFX7KqJ2مY4NdS8?S1Rx81P䐭j<'d4HK%eLWS`〯|,CB5Il6y4S-ԕ DlG#RY7鵤XdGsVw0K){x^˰%*[E)e 9@yO| P% Z H4Oh3 zr&Z`'A*Łſ\^K5f2JYaYԂ%ho r6GQv_stUh i\G`nLtwE.5Rqhwnt78O' PaUGMIě{ɥYTXҤ7s+{p(#]fKn_]Ʌ+(a:Ioʌ}SH,ScK"T9 XJ  @J^hGңD -b/U*pVrwMwI?:OT:u[ .cNS̄5F$ {1|s9fh0օu2d0Mw\`@1_e*?"]*{v}KJT&^U=|dܞ؍.3Czu _& [^(yga)KB/tʹ#B9Kșe޻߫ )$@_6bJv[<鞴'}Y<8 S4q$tcC#Q^g%Ol4No)O F磸,KYd 4\q?n*IJnwת:'k5b+c?pAjr6`%qpDH]ǩ\ɈVB ~_7ϡGʄԬ[5%h.eɎG*Mǂ-~Y+ֆF%$xt_bnPK&yFO- T,.{Ҡ@j N8r{tT" B >ᱡkCz嗃z1QhȄ'uW746Ԝ^zZ+&# kZUR*}TDf3VTJ60]K*i@.l!io_1N~wnYA` J <~r*[Xɶ/zb ؐxOAwKX2&F޾ȗɦ49P{!Sl&?zr"v9>4b9s>aH πC/KtrWB!ľw0w GZ7_wQ ޱ*ZahS1Ih<>/?w]t7ǁy! =s]` H6MPq ֓jt (C"썱H5n*8*?A^ ?s'zX:N٘ Ҭ^=9ʗM|<:YNLwo H'`D n똲Wq.H<9$Z?kJ H(n)/:y<ҪgЄGh6y$lP-",2@y:Uwc{uvPoRl !}'{pFUJ†љvy?g +/}M"hpswheiH/%0^Dw%q2cGݴP2뵔+YaeYVq-amɓ%CYYwUb >%319}9j4hz45WX n{fp\ff{β;߱xA&7sRnoXO=}/;.r<fc5nL2FG8dBXSAO$vSԲ4IハX3Xw2>E =+܈6ʹduӆPFz4ڜם qG)cDgKDQ}e8APIzJz9Ds,t3M'/jop5BvWQv~@"ċ^cȪ)nqdP 0N6mG~%$pe  x+AZRlLTkȸ=HbƉ!vG#A:!߽`A!REk)Nu2DU,bjyXIX?Ilgֵݬ@Eptv DAԦ9:p{[ EQGC\ŕZ 39f -'L!164V[I<# ~ZrdD3*@{ Fbj|MG& (-:,d!6ÉYhrWlfHWDJVZiX`Sh62:"yWǦn~9jk[G(F,GĦp;>#2[8=퐌H8~4pfs& ueXHR/d3ZJ 0n(8vceו|c'6z# f B$@6!qvnv?ʄ؜HX/t "a̩( V?%wCDYϸr!gsK;6K;งX(RNK 0wl2~׵7#nة-wqm^L@UL'Ó5s{k>MmZ*#Jgo rڗD,OD_=X8˻`;QO` xkyʧ!Cϩs)d*:W7]/ȿOPԙXVps~M}\IZ9fY yNz?[]֎nrd.+TwU:*=T<.d\!ɆGǧ>'^6"T^9l:i*\=2>k8jpoI!)ex\ fyp IrBW8-Io{NoƐ(k FlvlDoOY.j2v#^_{ckZqLg׵gSoIĵWNȳ[^C8s(C!pճh9#vܬ0\.a~R5%"Xgd]~ZqRТeH+h\ ɇ{kf (~vmN/2G]v~9{9^%׈Y+'\z!HJIO (1 } 8Uf0).p^ t̘~r5 8x]׬ &xD[7OFiLt _2܋t3cFnyȉxu7ao}1G3._p9^ '2J:Qg&.Us=.ںNr5>c0*YfumPCYi3 7o:)xT|jck6n&\T'̜)}-rfA>Vp:oV"}x)an8' Љi,9]Rm U!)~@YxuPYf%ww1L\܇ ߺ!n{#ȴeԓu4N~@jvAfRn?MߺAfX%b&a4T}TP:ޭ#]!93)0Ljnmzwd +͛KQ e[⨅?1iSC(o mLtT7t`Icbr~GnOˀjz\ȶcV^[ZoTFz(U%(_lb>DzhNU ȣ ea \rLiwwjQ<ۈM:ҁ-(cv»PZ{iMGo pכՓuPNϩG+53RKZ.rv0;]Bf=pe]ɲ6> f Co@$/6QW~Q,;6}ɔ]MSPb^Xvs,BP.>x}p8/5#oJ*7/DHTxIѕJ[}3(q(41<ζ K8mt_d/9b.ѡv~ yPfoM'drb}a Mbw >< ;7IㅅKK\-&]9Qe!H- SB( *[Oet㲍 xr:祓^7b> .|Fn-'|42~j|a-CAmOx!nZ/9:@1E~G4O |-^ǖڬٵpL~+2Cq}6śNl3 @Ur|ce1iՀiiH/䓚,$ȽدMSwIYpdXtHOV+1̘x({=>ǿ8A <.թy5xfז|f;Kf`|GJ=T\PI}nrܛt'&{"|Yd,qEk5OWz'MD6囒Jw(xkk_C[~ЙC\gz~͢^Ʌ[A&tlx&k >嚼4,1Sd˅i0rbp0pud=SOWQā|DzVG>rpE(x$)-H/ɐO',itFZG[}I26o6 \[_x,8ezY)@DS%]ژT 80{p5:u )AE|NXԲiLGjR Rr sLju&y;!XGI3'q.ԢEn:8mR!ledK `u3$(T աec\Fo.lJJ?{~7Ҩ>,i32[%VÕ i.΁-F`[~{|\(Hߖ؄8*ׄ/4<=I$1dl'(.HB ).`1``6ZLRN,o"~2y{ƻs"!D夰eK;mYL:8O(L28p;[Ek$}/j~,Wd́`{ 207MG(٘w~ siH&Tz9Y i; R\(K](fԾhfd?^%Tq|s{w t$Ul,O@N E1}QHGo9VSOC/zU#M)灊p@쐢;W~Q^G"g)5́^]/yQ@]HK0|BxBo0a=>AT5"5QFI)C- 7$#vAIU@NOl&Bz.~JfG6 XoUJ}=8qNUP-97YaW5\PF +T޸$b )N?^ -a'[s0 yH&QVr(˷5lF~ &S #t ccrlO6v7k$%=42|K6o{|$^ʫjzS׶3t QYG'%i§k TT6raҎbX7G?kKS/"fkCAa0JVRd|i#l^_"?E2#*$]4(YTw1C{FPmɵ u4{Q/Tzy?%Lb"uEqr2/xm:' ]xAlsT G]gZ+f EdyGPuu9&M,G{,Jom럽K\<0HNC\?m #1Q3j SHse*ȞÌZ?88;[5̘_ؔR]ԥJjB?Tl }dX /_>` iRE'g4QcҮݢN{-f%F *A$f'iR6ujA{Ga+~ƄyT0%i@w*e.'_C~45<)cG>6K&ZTZ  Pڵ(NHw/DQ4JX Ykя\P*W߷rсnu`hqSk)#|[O5n2SojTK),Xy=2or|3I8/9#0؜?bV9$h.I{|Fhݾp="]2uyܕzh [_:'l˵`J}<hꡄs*{aHINf Bрa@b˰%n{Ph$P-!xZbG>)g;NJ֎G~U9R[iFRU&E j[T(d^mGRs6s0|= ~4ɃY7>*\q"Q~zڅ0R:zW.[2nt0؎( 1ί>>֖4MJ|4>P%KEFeAEdLM>ݩOb'Jy60oZ!:W[6YY0]}@GC&k0&Wx'`XUr9v@AjCA8kZOˆg40#k3;sҧ9b U k+)6@˦Os@h|[;):*P=Y &Y%&C9m}ǻN"P(]s=_AҔ6b`ˑfC䧊 i5nuz۾j.F E{Dn<bɲy`2_ 93$fQ+]Ϟ9bᬉ0%B{朲Uˍora 4g\(6L̴qs m+Bí́BnƴU5#zO Sťՠvnu.hڍߣk6_f𝳏(X2팣΂qIAY12gz1QҪ'p| 3fZo;}OǶԖfhh+h,se;Io.JL`k*0hSrqyugfݥ+QW,TMs Mi|mDž̽Pի+l͹>C dkm)is5"ףKV O3Ai[mB~Oۙ rh.jsiT zAԯ{9@*۾"Ȏ>C6&^d2! F %c#S[Z6/I˖&/V%6S&zܶ'.0K5X ǡȟEqj<"TdkkhG-u? 6?I:f.fg2kZ\Kh[j{D}8=;4,|gnOT|UB]ש)#6: dn|Z$Бolk5Qbtu9"ˊ<9wۺNn`dc7/ )iXL^لmxP~LzZN0+x8m\/,aW0 cqdb*p@'u%~`YxG /"܄lFH3wvC 9_9/"HA]c`XrDb9i=:o*K>He﷨5 SIgeMk|6 >d1EjWdee̻k53kj䟏0HB>y^AV7œ Baa QޟPhwA{0ϥwfUr,2MmXc :M#;H9EYvA%O i}N>mk%$觮'hݨOq_]Q5kWLAn2R6(+d,ϘkrFdzo^n!ku1}W^!r. qImMa߬/3hy?w-Yɋ\Ԧx>TXtH-8M6exvKu4ʯ<\R>.+ʟ-@ d99%-5j6-OE rEkmM2Reo@pdPrBĿX5 A䖷"]ymIexCDu/o { !n[</uаBL^d;,Ckw)aW`M\FT5ݪژۣd*Z,|%J| Ҩn sKoσp˝,j.f jqg*!ԒuW~;%ҷCȞQi. I>+G >~{¸GΥ1e|U_|R'EjRLSnPϽ fMBa+&;n~xb|Ş|z)G:T(qҧ[s0l1=e'L`B\0C>V 8!kҜ[N 3SHc ?CVO/M>0pKig;e0E;O|4O7# V5'5a0T牺`䶹6)Qp1.iӶ7^cKm2_A̺6ʬ~lɃX)=P&/*.CT`5ǖ#~zA!=9լ==l4?PoC\VDSyk~Z2>>խ6f=V2 D jL_Nկؒ1©:]QZ#z?ΪÐy8&Lk5pݱ"{kt PO [7{NZz~~>0b0N%S*e+S#In*oBsC(cCȹmVyx41N^# -my qJp~+t wAmN:"eX'Ncoׯt윩t+d_b.clDg-mth  2"PdsljYR%!\Z> E2hY.t7B,FpF3`tPɑ:@`;lCysHװN7R^t[0sCE=#R^ )qb>)_Q>M.>ic[5v>í/FNBI)޴)Iʧ Nǻ_}gLd< )B뭆481! 3KٌD$8DԾC<:7TIHA8VO,jT=:K-ROo2";*1 0{8LJUz`f8]3œsf-0{\ÑI3nWhygSpZ$ @yts  @W(/+:a#KƾF4ZᓆDcNs8ţYa" t扂 U[CDʎI4mF/t} @+FC~'2iXSzC>2 Ծ{(BӤ׃"VzuIG^7ҝhK4srNAb&oTӊ恄R/mY0͓|䙺\hzu&/ڇ1z!$x* Ʊ"⺨g?)t(l!WXibdOsXhJwOkTfmy2O :>Px [ʍb9+?(^)5Q1ޥx[tJ8%D c\s++ <sr IVYs2p R}T*r~? |-fn5;y>Q(c.H*׆}I#n!+1 ^d,G\vB]c (2Mz+D˿JEӟ@fϨqpR,c.PJ|^UT)r_$4m$+SM p!JUE3qΨ-|MޥAB|K62!J|ۡ"oplGݟXD(^nr!3%CAÐ . Hwޏ4PPQJ^(}V5F. %=ۀ)5LUM[+0ԯva ȸ>7PPgf@un\pS.I:ƍ!G쐡d7\.;ftO8nF"q/6^#ٕ~竕2UF1j*xI *?7#8B~9_rz妼YTb-'UUO9 _ O%̰s hFPdաL闎:2ty UbBݦm,{f|f<\V{׌kN-v\Oŷ{:y4^r17ìRǠ7kVEe lB$ h2r%r67끠 dbȘl`uG@x0ZVKacU=!-mޕO!lophc?hLVeY7Ȕ5 &1(+0=FtF5_^ ,En"`'z|Iv 08 c*WٻZnMSބ`t rFF:`= RmX:˼dm6tO62:l lCgUkBG)A@t.i/\ģNC](ER3GT \Y뷎}'adcI2ȭxR$Q}ңr0Zng['4n ڙᴁVl׳~5'[`mEKAjIS sUi?iTͥfYx#c~ma*\q<@q& U<13c!)!0:J~jh/jCVyB{,˘c\?.K=xZwmPpW%s8/iVtW+g Ի~;'Y59FxC[yrq ķo" gη9}u7W@s9z=X8.RCߖUr6| Kq-ii nzWNG֛^QwKJo7E7'q60Z-e珕8nIEբ|rhxQaDT8ʣ%/v^Ԃ!?330M]UCf xM`4z0"t-=nR+ La b;VŘԆEzi-%BZvs7әอ!>[_OÂVN9HeH^d0Q0yDT@=BZh cbޅ(ף ۜpb 3Sg0f oLipݏ8zpl`'06bP 2Xg97^u-2$ kyahwyG8;iCs"%UjAZwt*͏[_u pfm7h _ÐHCRB!꜑2^LPDvJ VǷ0qGZ6OWlR KnasAPI[۲PwV5ѹ%%R`UTMg1`zOJڎodi 9Q-'n#9$"zZgR<aTGcNwq8}փa'o ä+BltU,%d>Czo:o%s'2Dx+xj4!ixZa 67XK僿19ei-c"Xh apR/KJ/#1hgt{fuހM9tavhȎZެY]9ua=qˋc,p^eK3E0j &~Uew[H@׀!eKq{Å v=gט*:1[94t=8YӰ֖ȶ(ԥX3߂숁SXƅ@TB'ϡnQ@F]Oy/9YI 2g0 1EжvGl%; + uScRoᲒXǏ\>DB$ s#'Y[#_U)<:D}5߃ɾZ?.wK\-cav6I"n^JεsXAb!j;P(S LpI"#z%.*$yX aL3M^Ɵ4m_f%7tUYκ%!?v@<FC+e'sB$*Gà8|fiP bC_6 1_uKWnّ[Mx3ܣn+T(0Ja^Z ?\4t^]JĪ@J+Zm#', bt( l"B:t̬^ȓqBPMqå 4hv)0)o8^o669"h> j۬e.#)v-? >+Qں r[\IT/9y=r5?ݢ ۲wLͣN+sۿFh֢^\k:17N132 O|GZCĈ/ӟG_ò3ijVߡGǙL2`=Ba3Uܗͷ",T݈kX/QĠ *l.~1A̢Z"˔Iގ-gGuY~"FdqSa~Ywf; ,q_:;ru+q\; 9SؓCl(#8|ɻTkG-x0;5l&Bf'B/uNW6BȎڽzJ&>tl>y=+fTc0r(DK85{P5'/L1IFcY=2}!bUn o23^>P?\-WáWxJH nF gwBSOHad*˟c1#D'DɝUSPڹ۟Vj3w'Lc0%"yBT,hpcgǝLcK|צ CbY{qEAΒ|qyTޠ/ |SP-qHW"Y5pD/Gw:j8(>E&vV!NNk{ U&op¸DQBJfx:ڼ G0Q.~|鿖Z$XuXn%# ۦyu .]'8TJ",}V@4[9;bxT P!m7CtcNU]Q$2 "wVMa$lwdvև̏C(Nj^`1aGے}Na c@β߫֎[+d!)|sV|70٣PsXMBR;?PμX%@My/96 Hɘ0$ҠE7 <-,|]W)|4pO_ Ug_GkWd:&&UʃS 0q ($wN]D3$HزQsmu|gA3t7tVpd}71F˫꽒^ cmP7XgF)6[75a{zGrL z;Rsxo3LQ S!xFb&OO7[8V|eSv'Q9A>%6t?D4!P7(]ڢE&:6D:|jBF-qmIaZLEq1=`WG>z]U(j] [eMg%*\>\v&b\ȤO@;ƮXo*B1poU/0YeP3Il LWYBjt<.Ԋ1L G7:4MzS~YIu4DZS*uPFWKSiznؤK| DWӟF5sb"UD0:Wz4d|f(e%I RTgq\l)AP!>(F6`pMnI=rzY@$M. ثE8ɷR$ǣ](3E]W1&lv`(B_LjT !Ӈ㏍[\GQ I@ a?13G,"! p=A(#}.f@v8;+|tYuߜE#3;/1hG!j Dး#⯵8(rKt[B(rd32 RGoV?ZC{fp\l(h ~dz@B¬K+wӢ  r, Z^qxL뜬 PgW];U*w$#KE2-#Hi RqGǻuB1Uꆲ vHN6m:(OVJB˭OsԬVf&Ų FnE ?)_we1,Wz !F\6̕fW3+Ǭ jͮbtz˓ v $1u__kgJ?f^L˿u!XY_Z( ,ѾܓB贐!S2-͙Xc] %eVE/6C8ف\C ,J GO`F*)hxJȘ?<m5CfEUY q#ט/o=&<ϣ4d @1=cQF[obs ocA @9JtK+܏(bV5< L[;<=qR2yVr4~uL4_;6 7 $>!k?˕=3b;^۴Co#""ŎgI6)BP&o0N)MZl~s [[UNKP|SPiSTt]i($J{)wym2duf>j~>Io>:x) P39Sd gSNTb I%Dހ֩_ X>j }Q6 jR^4.H+%Ckn7Yjb4Fҹ#r[:b%E]Yr$ +f):UR^N;_@d(HdplH&S:录!=Ac T toۘmr-+ÜmuU6|޸} |yi7g#yO 8B wE5i%)U0:L +[h-ZM 1:={Ր` rH ,{O\^҇ TdY)H;ΡL #E\x0?.?ת™cMݓ"u{yf0Fڑ6y_T-srt;w] (=e ֒{!R<&GJԲw[޳|#6i}I!-Z)-􊳗JuzC.Aڡe_O>џ"%l^9 `߭|b QZì$8H#M>]>Tyf;$d?+;}8"*?VH_qkAʼRNҥB)*^BkW%*(*"rob'=əW0/0iU$Qjelыhm_D!ZC+̨e7̞,A"hE lmW-ZF% ЈUY=,.;WVh d >8sLO,m\APY 3GKE &z$ە]&WK&ɕ[De &uX=I zĤx1*A%0D/-~FUDGƬZ@81EG%!I1T`UQG!M40<4'**^nV2$}R2:GT:}QI]}1 phujgTttU -6:[t/RV^U T ^tj<ډ1\GPv˟v~! *(OqLϼL)W u QEHA"&2WH #`#> !vU1ӬLZBl(T(Ent9Zrt4-4-Zp=2}E,b] /B`h.ڱ rZGG ʊ[6i%$ߪvHIt^J3w9:;#Cp.aYq:,wSnSOSgԱ"O$_dXLe)53)M+3 /[6Th}fW5y $ΒRpp2l,:T*c E(:'Mxb01[j$UndݐzE&U&*! :;RGbZ voV 3:o =eP ӫKVWx%i]# /%-f]a||7*TZ.W_R\M0۾I!]t3}Av!Q=_X]55K`jmfQf5rs"L5' *9f `ݎ؝@|<^~*h&H:cU2s)UZG@YXN|K'ȔBDqE#-*g.ۧZ&2qOn;`+$sZ[pT]3yڝ] 6#Np0BQ]>p;tZږ-< M.rqOt r0VL3V=E%~"<=YU\v`3K|H>h(UG\ Jp}T[axeuF F}C3@cl.{ř֘$?z KɣI{ПmUg/EW[(@z-Q^n`qIA$ RXzY& r'bC |M)Әg4M^"<U P[. nL]߲K:S܋iD4PZ&Ϋg#gpH ,Pp 8|S<{TGb!,7MbVV<xp 7Ec P\>Cq؞A5р[)) Sy >4|?_=,Alq+u'##V܏*Q2I-M7h@ u=<T?s%WKy!2Lӈ-vI-)>ZCca5ҿu=XSkkdsH`e: o;Ӓ''\?n2àpU4$5 t,:T~9;:yH=7WS^gaP08`(thK.PVA) Uu+I=Yu$m~qj\IuM8cQ@\'t:Vh'_e .6:; |cǷ6 !}Uc9rf4,QFIJx-'g`92j |_7eD.Ei.o_w&hfrX';&V%IZ?M2?z7І9~D;Z8~ToOoY~M@', 2},M¬l+[,A"ZWjMɃQ|ۅeu4 سBl/3ؽ,|ݙ*T^ԭl6 Ej1=ss rʂp2+krfoC˶h*`}@IĪg5Xg?uV@sf+,:FK\qve|r L`KarE}f,\ٱku<R YLW)9$xD=D1S$υܤy枽rSD$޲=8㷋7+JȁE%m*~ʄcWDO ,N6ZխN$Z iTƊc'\kloVfx2:j 7x5V87撞j#O*:\%Ү%mZ6ԄWIqJh [zp,@YRHQmjz+&'{RsaV]q~9MP% 8t##ɨAQp~H`G>`ܕ#f3Vb҉~j+AE**qU%qU-B޾"?7Х<1E,чz5]i93nM̾+їd<?& ^QrN(})ԁC-?  ~q&(mabB?D5@IF5J#8XN1ӗA_AP\VHh;;|9qH~y*8dl~?@tj[P׈]Rgw{GVSq1b$EK[:h;Gn% 7.un;Ywi5f` e-sf$93zpi0}UR 7M:fwDҮ?9BЫ#W#U&Gj \?/[MxC=?,@KK~oՔӴҴ܄(KS\ e_ۋ䱖-mm9^ |̇}gc WL峔U9pBRKa< ᕸJ;O|oMjW9?s {GBifz3n82 ?͘z! *?)gGŲ5,ͯ <;(7Oo~<`ePˁ9eZB VGH,@B[-H8i(,U< SGG]?GfG)hf6?޳<]{BAmt_db U0zOB-|EXO(C%̪δdy_*/,ð陶$Ҝb10J!s)Z7MbVVXg֊{\*̴!b'P {ƒBM<*mP&z}R+aBؠbI. 1[4(M&nZy|=ΠiGWPy})̯C$zs!Nge)3R6ɪAOXc `,D5HQ}f :þ/ t)s-p 9[~bi I>p>TZ5N[C16& dFuhFfo]O^[C] OJSNuS]HAm\Ԍ~"8=/c@$بIgH'PH4<5ӕy˾+/iv@I%W_<\6)rڣE\ ^k0z(g N6r` HjsU4ƉB5=Tms@y,!NjX%_d`yf*չJ8#D:K젅+ J3K[b &?b9)@[6Z䛳\"lIrmBOt. _B G &V }fg? R=Y3oc}?BƑ)pSV/ [Fp4W-˵lsu*AP^0Zt-w g)r`9 j&!39RI1 5&&U',Poz2]2WT: GHEd71 O`FY ud2a.+Wbԍ>TJbAda[ ^Wr=,;By[g!iCc.sV*j bWt֐ fzɻl z.wxu$A*z](/Rg_BjIW7iM\8̹8阏^U-kFks7BryvO3gk{`20ط_8V<#X'REV~CnI~POM(Es p38bGF`)UQZ?*'!|m:~Kr)wbh~<&%@bwcMW қh){"zyt eA?vѴ Q 9Sٿ^eeLTeyk+WtK"=,X6RO'sD]WuLGSe$Q;'/:zoUH3yN5:ڲJ ]1,볉h¿MoBH8gi 4s5@\Oj;F++kBАʯaw2Sծ\X!9I ast=.{ze Xȇ_" Mϝ۔ZIl2v'/h:dXd$HacJq-E-5A$z qi+y %i< vJLG*n堺 mwy<<0ohVeEyTr|c_ 27x~٘.;[E-nPJOQT/(;QW&; %72a24Kxy h)a+h=<ݹS2@a8[ 0A;K{+D+0q`('21c߈7hzg;TDTh VոOTJѳ) ^80o'kNqE}49ZUQ%+Y BrPM~:ySrmߔ9_ũ׈ZAGl1B顯^fT g9i:|#jZZ~ lhl6J s+t#S}{Ӯ]oF:l4߷oii*B+<(*F WTݝڹ P vn/-SAHNv%w`Y&TD!,Ʒɤ,?6@(p+OjrsmM+B`gZY7@&B%b*J-`I*XD?E5fhKOuX-k2[iY[:Nj:P=f &Ͳ}"5SՆNjZ,El :?SsSsTs0lu Zoh>ˑXS۾(kpnt%8=?ŹB@JhVP\[gN5M>6ߌ0`W>55pr]흘`k?,af{s.R0յ<0ƨWlZepdaum: {2",KLٸ8N֌wt,Ba{ C&Q%1K{;TP%-1PXZg#;#I 7PdD&b0܊&)!Zpjn'`Ar#__eM Pΰj0b"NX-Y)FjnŔׂ р&Z=M!ls[)S gwlus}p7GP) 4(Rz΄,hV1Zļ{9/{3mg?ѷ  nC\ji1X`ͪ|1CcP-H,fʃ_W} E㓽Ul_ WtbZ\w5, I@i"?2^zYk\ʌ]6 ~#SdZEC$ξjvu$|6u_I3K&eȸe MzRڈ$!S3hmWb-` ?_T} C0KLH<0UB, l0WQJـ)M|$# &Cy)L5'W f)`#pϠv)'8)-F^D#S'Ѻ#]}%3~cu'|$9ڍV¢UK:`av׃n>^|A=p[/ފue6Z~#( N'e]p~`ke};}({%TPM,pQl߅וN4$޷`fW|6KQVɗނO=Z40'Z?Lx\{󟟋畯G9_GCJIM5ʮ#>cVB((KGsgfCa14^!E-=s r:')}hEF4թѲ#C|ֈׯ/@ּ5]~#nՕHgwKTHcX/&+1U$]<+`^1OqXkn=[!.T+Esmª]g[ eL4yC4CWҐBdo}3{!#vOz..K(5eAfuerT|ĵi5oW0#]_98z 2QĹk41Sŧg<]8ǘ ‘a?Cc۫u Gq%z*)\N6Uy͇xqT‡NFɩ"M٘munW- @\_W~E.of49KUPDCM`O &ZYVpċ-^niUGu)B|e?Nn2lL_]*0I V;ۿ) '(jaFR=z&jW%7FE+OFί/ cM@׈nF8`" A0ezd&YMaP7q9ׇ il4 <AYԍjr""3q2tũī\KtU*1e3N4!k+KCo^AI ~YrZy;#ۖq7olHE, dR$ѓ$"'[슁~ 8f[9VJ 36A~40{1gO4ֻ(sfHQ>4VߤÃFv>o*oD |ӡߛ1H/u@&~D zHVB\j0|h* *8+޳׽|f40w2z<,w+~{Պ]vT I`B&,g^;g!0sCPt[V" e`('6_ y5"wiH$3 e4z+B~Yj( G .,0~^n`d/3) YwiuZ$pM-C+[k{qtUv(lwwp 5w 2nLЊ683B:YTQZkzrL\;@pOwߘc7 R?e4jw'@tIVi6[qc Ǵ}_8cSQTm5HGпf|VEǀىRK9 9&PuN |1ֱ(wfو X72_iCfV̥x(l1PŲZo wR?FϹ}zC9j*!.00V?Ղ&Ղ(:; ;@"i֮:!b %>V!s"\E~f]I˅y=NL7GcO ;D_/SI~4"iX}ޗC8A{n!0 ^c zv]ug=l AK%h61f0=bd'lКg J/jyNNbHe_̷@d t'8AjXmVݻ? B]* )X@͐wQ78Hmmeq%E cUoiai.xmIKd,9j@0@q`/):a90݄Z `@ܞZ*!t]WEORBiE厚zKa0?dplM`kg4ۤ )v&pYC;IKz^֚%Q KLƼ1 AA-Ͷ;`9V2E'^eVJ [r?9鳡4dʐ{DogG}W2UzT8:i02kyU$>].{A6x'n:e*vIf^zB>9I$SI} ߞn jyݐ6_̂#XZqyJof=<QϏIKϼ'b/q*;'ʍ<μ[uUX/GAL~0Lʼ՗4/ Ɨ^AX+!͞s,ԯ% V%k5a$oJH?X9Ҥty!1}%Pئ,RXFrcG9,u恗ۉl{/k~̉WEJ%a v%_ -m?]W%Y$L_w{Fu=7atق§0e`| ȼgy}HTND{2|m7\ ȒGJ1L|A&9KfvEJk)UR^b6yϲ񺲭;Tc/29Șw:FN=ispR R HɳeqxVkpf*uyp%g `.I7 Ts 3z#y]hAiTZ28o_Uht,6̿3mԃ ٢W[K$3+cA1)u&W'kʴR1P{/ugr7JuB/UR{=^e9x8ttoW+'d#eR&jB5؛whxbņJL!3Fdo7VvR ]?!%{u ~qf; JXteak=rl++_l|C&ND~-:YHƀ4K*O2zIg )tIQ @cT>?Oe+]+0S@^?@݋>f]bΓ)>5i"4?U`2 %(oKօB;|` Uak)tuVHQH9t6pډ2+Ԓ~$iu^4p= *C\8@q\:۬<|z-L'.2/.e:.u `؟ݢ sE(]Q1y4$hu.z y "+)A+H2YmjM[@GPDMY0AAaŊp+C>thxD10tMg-oZO%(ep0Otrµ_nP2 X=+Q R$J}mk3䓋mn04OʋPՅ$>:Q%R>Aҧr(sM[ck/Ǚ,IuF?7o&f㎻ЫdkcEch!eI>Pn&0GB^o%lEn;'' V^dy輅Q@.SdK%*݈0aXؙ$Er̀=}cܳ q/7x>3l迶Ɲ0L@*[)WAFɈ$K:8:ǹpaUʜwe>չ7:W/C{Ggyԫ\xK`1=F#E#Dnkoc^I&Doyx(f%bM̲b^K?V~2R *Yyb۳2ϓ{ s͉]UMK\(dKq'bS\~Eԁ#Gm?nߥY/4.8ۭ y oAfM` N<Џum5{-p~UPWJ̣77XeN{$$-5I8c/,] c|M}؋0O}g^h ;LS=<㝿K8l/|=RRo;"2*~:74\=X zx\D{;0?QQfus3wYd?gTj~8gc H_xBEƟm t39e|XBEbݴR _V{x-l;fK FedEF̫,U 84f8miFD}}EFq kU;z_xbN fs&(r u{O>%*ӧ :m$G5ЫKk3CR'M<vor? ƯWm$ܰWC57fz|mƱrG>D16_#ڳx&rvh-$,tV#q:Vg7`n(>S/)dTEsIL,=aY9@/P.նyiE+R$0G[#O5f dU9vA1tf΅Kl^{0Š>$_\֒uBvKB Ie$" .MΘznk(Oo#-3 jl.D598{nfէݩ(Q2.1ts# /_dhƖ/j\,YSF!QR˦zPjL. w_AE~ ¢Sq=NNjW\VoV@_&J>::7P5Ͱ#M#dY1rns{eg^oc;BB;b~f W(L1JBh+)A$IN*~O+b$a|>Kϰ+-\扫{u9vCzk%7h@eD ߛx)Bi=(,.۔߉QAd3k('r!ERd񭇼(v7bM *7=!PM?D韉t-(%:.xMeh5…<"3%^HNԺ,iVp@Itt\uc|0TIBڸ:j~=T(^S& 9PoS_?ZfBp5} 0JEn?q lc^٥)#84/1d84u&BKnJ=$jZv@&gCc )[Dh_Y*Zu#qzuz ٜ$%l:qϒ;DpN;C}g> m@:6^9H@7̋k)עXe ;w&8)~ogE!byac| 62QR J'CmX'@b`GM|d"fĜ05߈ټ`[u)EyZ_-vڮQ;ܶ&1dq>-Dʥfkdyo4<|Cvol +v/ s.Oi?TJ#MVG# ?Q Y߄lWFFzbcR8Wc7m! ^͕/Eg034j4AgRДpg7VZ!> z>?8wH M L설 &Ŋ&gLȑZ  5`?i(4׽i )u}yM/ pQ k `ˇpv~F^% HTd([uLFÊm~XIWe[՚brx4+t=*&t QKipK1XD&5Lg ebhwGSicwy?YZ71M:*,&?WmXv"!JdܥrnYork@k:%mYvrV~~ho6@A]Xɀin1UAurJP3d,Z9@hf̬\+w8EQ #xM;#)ni3xGBo-ԙ&`L)dl1HJ'PNF.qX;");h,tRL2dWJXB|DH}f2*)&submwb/vmo o8G\ /2sM;C/M% KlU~3ء!CVg%<֒bf}:eO>ZG- abX4P.NN* Ⱥj.s e!f9dCin;7 0-G+I^Tճ4k5䀮)S G=JyeIߒy V^LV$읉(3g/JWB`_unCi?gVQ<(d?Rts0E6w!hlPgzROL`j@3eI8Hn|n!{Э%00JLf9b3DntZd|{>l9o/,\hO*IACP'A M0}͝I\"j ڦ2=5p剋NZ,^Od#WTO 3r\/_9Foձ6~I茜<ºt^H9YF$t|ư/l^wϚ~47E$C]fƇ:d=8tbc?eځ#f\M .wE#ͥjӵo#d軡~=6$"aC ;(c{,a%+ˋ  `nɻ@A T+x)`]<5LKPTA.iOٌʖv :FhǒP3GqƿØhke$ }.ٵJi0^Ǒ:~eY+)t'qu,DCFh.Eol$c6v1CM~;}Z>,mhuq[ q<5ӔN۬!4=HkqﳇO)O$ߘ-'m TʌuHnO͜Ŭ[ə鱚~I:-C^ފU|CU82oDn6]_bg撲5nuY I~'Ĩ' ;ȸe>xLb<0ꏃ Z]lŊc=Gj-!P;KV)Qn}Q>.{(.jP/?QӜs/B!wK'bQWܭ.3$ ɔ"b>hd߮wT9'WC%÷ jDR=  i!Im pKQ4s>9.%l aJ4ڶL?q;ӣC H7Cy-1Q\hU׬\ u?QN~6xc /c|S_ Dl+Y+/u2}tj,!^'>BC\ÀDIPcx3ˤu5-Tc-2ө\PnׯѱU~2RN?$o5") J8aH!I&XՙKӬ v=Jag(,АE$O4 0O%{j%`릤Xtm-;23[,cpZ2t"G%To "!ojש\g)G+])')MRv˝!kM!%l.iW'c"9W,OHTz?@AОb= {K[2qY2$gYttד먼BH/[y7:Wh:u'&y)Z'JEWqZ;~kѭEPѸU`eOmS&NEnr*gN\$֫0*~& v72-=/e 0+J~3AJOc7fwks ѡڴI;ճmir\pREOT`vԕ1`? *>L9sK9= @LR"fO~˲ ̪ ^8iRIO[R#ٴy" +@Uo o-0甉h(4ZxU7}-.a-偗\! esWAK3jy/.'{0v3+[F@4 O|v<5NK T4~KFM[OvՐʜC**z=ǵy 5Y{SOLڬ9ڢs~I)M0sD㺡hHFcH؇4R:mvacH]lF8?kOK >#6ɝ"1i!e/5 ĥxB{(]+5ud@8`JǁKW\B4_h$T~ֶ"M #4VqdH|lK%U-&Q`nrf:6J>7kumة˴o#1QНjVkQZ:L[kW>2mS$]lC翝&~_mp/nWנ%8X6aW^t H7K73CUT˙$`ffXVjʽn3g)̈́W$ j()T;LaH~>8k3,f!([\k3yI <=o mk3j Ҧ }'> Бt!JAW0@7!tآQWF+jUڙ$IQƨ]'Rey\O P>bʋ{*v)B:ٸQ޳3$+#%Zk+`H'ʔM#J;-H&ui(npqPX#)𲟷}+mR+[-*"7ӬWi.wjE|wP`)Rxm#R@ElEr)*Sl޾Wy\ftp(CxlsQPYFw}%~ X)i>6%˖5ֲ ";n~t{ vj2mKLCɔ)沐7fg˸8BxPtx/(6(O9NBB IQ| $EtȐk;XC@@+P'm){6Iw!h,y!\> Js))'4ى{CFD"Ƞy,>:SY)U]7juJ[TAX{m yHЕxjA{*pa#u ;q9n(]$&A^d-=ut9/CMr`ҷJ:8%eZueR.[v">VS(@\$)ۧC #=*U00o91Vn֤i(QݔKXpVKݿTaQԞ5ym KPʦ9Pw [ \$Hs4}wYs(gM\ N5:SFGs0- 8A""<@?аGgpYёN 2<;Z:a'aM3K9}Sq O) "APʔ-G@ϝƥ.FjpoFɞd=!o0aaXpqT+ ,ہ|ԟV(>Ҋ,L3sʼn).f't3rL$ WYT&-Е:VCHniB˽\ jYE{b'<&;yXKsh UrX\ptksN!g ו"+Hx4cM]H@`aY%?#sH|1)l3ΚXXY' F"dfZ-tq8rj|շCQצy ֵ8S%;vhB !GS;} 8/mWj _o|@wsEwjA\mn v9%-uRB2OƑ7_1}r,CV2b׫_zI2Wh4BPdb`|KNlzH7g۴?J kg_8u>bo {@Ř?g EihQ= '*"&ؿ=({ޤtBWѣ'w>b,NXT# @!Y#TvT(h4m9BhsF;zW(4/OU[_RNwP)yݺKD$k2( V&nPŠQ]X-)ÉX!*PQʷBB^3v$3.@-9"p wSǖwF۰ͫij?'猁ZwҵWioᆭ'c@RHX0FSύ;%m$ms=IMQm&+ΩoPhDd^Eb_<6PM嚥.0`8]|m4XAƾuO-> w@w] j5yȖHT`}391{S a46VL^#D$&)#^ Bgp d,T] z)X1^bhYm~+hS RPmpl q6pwy=b8KMEZR0gF7_\Q0g2** ™@:K"`fy4F ay* bgDtsV}v|W 5#Ή`t=p&u5Kf :F* 'v %(n܏#oH?Զ,a^`oqm2\dX\Lf.cJ!0Vv)4*$j(>_.1b^5.>[tD7T5ViRAױ- .dY}MPk@"ZG_A?d̓I0dέ(3ߩگZ厫a9$u"x8F*Wh9nJ,#Rnen7VAGw;0~So[A`Z tj NtAcq=< fRp:*qۥZLF\#M.HE͗XsE~C!&jrm/~B^|G*p8ruujڿe2HBhjgT&Ȟ%SbO.uqZS'A!wr6u7ZMGQ0tlh]cay8 Yu ._ֽ3S0Iz[tLB\P <p u_msX]=qP$d{?yi"тoHYV1lF/Fe9O+J*R)}?>T%Fg*$?@z%o͹%EU.:Ofۛu!ZX 27-zGnI^P_y]J+0z|=cro[ ?4sS_ސl0q'r)JH?X ?lRs>6 rHF7fb}m7F"otоTi4-E_Zg!);# krT:4QucnebZZ^lnͬ V37g g+f qhOZWhsHZ,nmXtN ,z=yrZe2x qBo<ܘs-ukcAn_"$g}y8KF.ˡ!BKByCxLB%XH'[ H)Po`hz8 .-pl 6c]Rt!Tlx yM "6ѝjE8ژ9:Y/Gx?g`=;]=Kǭ]iLDMzX-H#_]LY8mKbS/ؒD8׭k1]`OVXjr,zaIF}yMI2?e=BiSsKȣ9ZDL!ڇMA9)},!ó?7cЉ^7#IAvDo&QpY}x˚ϬKsE\PAo ep%W='Sh =D98I ~ R52Y#I7_+$O/fG/fZ5_DɗKgbwYԴ83%Y>5?pm}ctLNF)3<0~=xsT_(ѵw&$ n_` C#>;-W^}_,ɁP?KgxY)sgMJx\{X$VA2&zU0dhFHA hQ⵵׹}3fc=j W#M$y[{{Cp "g auqvW4:So~!1׾q% #Pp CZ[A%rS5 *4ρoLWzݝH{}c !YE4!2.J==e-mue%~[# G"Bmj涗쓞Y݉Fcۻh̒>Z E 8x&}OdnLAUo䫭L~N0Ew#r42(z:@eUϹ\Z,Mo[SLSN Ǥ3UVӅ 5-EhYuyMvEaßv0R^!6γI0^a0fc+]wsuTh8KO p3!9_V9y#BgXB$vr\4Z~wF>h\4ܷȲ*p&m5mBJܩqM+١)R Ϛk0kzC956嚑|Y5T8TV[m ]Jm*6/ x& L\Egh.z+*{5~KJ̖h?NHA4z|n%~|x3*]>~>s=Om8m ȅv*_ pQ0eE ,I 8Iҍ7{3*Iqx'cWeH_-B#~ö6~?"}p-kQx4' /a"/(2X8Smf؉}4/<]"xCt[ྯU3"La.0ꫢjF/ >@yՓ{˂M_}8 l޵eQj_rI'Zh:9* ݶvA( `aAt 'ӣ?Վ h7mX| PȶҒfm~ yǨ0dXq_N'oNw|j*"K o0aӳӆlߴoi@;ެMXT020K]/pLx͢XRixP`14w p:݄ExF0hi4)#(nCiFBUzd$@|G9 /,Pp,2frz,?NtI]k< lx&?ZA$=#vQ,y^~V@/ , z^M4ڪkhZ-'u`ٟ9U4ICpYLl<=c=q:vٟSoc(=vK~8:'RkYEfʷ~T 6i4y]']8wfpRH?2\P׈xW}2NMP6S}}:ҮA+3GD.7(t[gsN;j,'PK"Y}iTfןxsXF2p♦1 &ΔɺO. ¨-Gb"ESՈvuǟQ4oyDldgaZԢHUhKSv~yq-\0b:nS=ؙv?rA:!i(N=.ZP!jX"Y;u4v~R!{5^##WƑ3Kߵ }uy )nNO61s#ъXp3e P`&(ɵSIҚ-(V(FX! #~fsrg+Ҋ-{ L6.J;Mm՜P4YƷj])Q>W]3!ZS! Zf[+~=kH6Z)OgPL{#b52wHFfQ1}Hfd<=CWcԣq]/|-U=u Mڑ u9!G+EsΎM [8CD5=c؏ [oWK$fQܲr}c猯SUJcC-dW72t/dt  Jd@fX!TUҘҀKmdK~!Dc"B ow®;u>^:? FvYki|ƅc 12431/e,9[59q$$a#+*"cK윞w8~]vWwC\z rVIXC֣r' ItUdcxׄ3qmi-I9%ۻ2ޛt+>S!~N|e`2~JW=k/5v0!3=,fʇZ_$΄^R)-]$f) nZmfjHSTDB̈́[2\؋YF19+`?r`؎_mnG.;&9DXYwNu,[j3_l~I˯f]8"DllOls|eSnJ jψ=SԫE.b565 *+Lҡb)гc˽za_V!%v@ޥ '֏ZtFr2+Y{h;FTg)hМ3{͐^X Rhhc0T'&/TsܼWy "S{U(fd}\z51oEE/_n.e|sŃN;nSq927,XgΓRlsf8 D`*ݕen kCh_`dv_(3ތo45O;jiLil Tsg#c=Sԡ.za9;&_j織&iwm Pp$pd3tu0RȾe`Q0AR<W$r]węP~^ 0gTǽ37ȫ8ΕG e&^ ɱB* lC/a,F&=8](f{Ż:P`;@ Jϫ&c;d=~nJ^|@slHuv8]a4i$IWkמ,ݨ,<HLc e2Vo(akHJh )O|BAO1*G眊 aIlqM{b-C=nٸ{[~i/XvSrt@;PL!Sُ;&-up{}< fp$Ta@F2ȥ*a݇^ڌŭk9+cJVV)%UjguBR'}7(Ȃ%HD4Aha# GWzJauG.5dm0@SS*tD@Wb:&VjnfdNf_`ge[xH3$%T+Ks'seOvCU , c9^̀]C =qb4fMx9?z"*fzw#ah ySNwcx@r,Tό҅!\{,GJ5Ր\#(##')^b'rٹ(2Gu ^oxݏwiMy 碀7Y͒})\| MQR+ {/5imӍ{WԄˀ@Φ*f G ː-85e'QI)$!rlM>neb(, ӈ3j9E͏]N뢵낌`S=zƛ":E2eˎ'g6xg}Wn ;oo; )~V8 TaKߓQBzDw"52Fly*GcwY[_:Dd6I/َhJf7jhxHvK$1>~tzBUj-̣Af-eqdpI(dh"0.& T]?W"UnAcBήJ"h#[y乫|poR \/@*C7c'bx=僺zS06}QO8ɘ!2IĎLw秦dJ ~~0uGIO|I Lj'ra)Im/cd1um SE(ViYT-ǩD/XhJs,2 ą(w\~"pAPJ'Zҏ^0ʗ^?~ I.G61!;+t 8FpnG1V-(JGvȤxA??3 XgGƶ|HQM4؞rp-m$hoH$AYkpAtiD+gat4~WNļwW$x$0 AbFr8 2DO]w֘:EYO'MX(TL,p~#@Yn kx/2 hb@d4ʯ6agD?bs,1seH)t}E)au:3 v"[ LV8 TXC5 ރ.}eKǭ̥-qD8OpD^{47!p@YܶLyUfMԮEd!ښk3@V3-]PO{7S] y7x/des`jeFh^AE%xZ^C'DX;}F%\VG7B~|4!5=k,e[.^;mU+^L)#=ag+9ZG NT[dY}ʻ)uEWƽR6jH"j)[Fr]h|ƻUa5~2{yEch{z* (A H9{+g4Z3kьlN]3Y<1KI3~yHQ_ۍ e\B4-EO/M{1p?:vGEڅ, ka9A}񊎬:WAGp"^79_5@XFM0<FiVP"B \(W 3E[!Hf=C`yI9M/`gb u8nm|00L>hjϭZ5`idXiW J 5VP8.D9EBHH//$޼A3<ݓ0 :W3 hdy!/ 5k)~o)GCcx[|&nA:+#چ?zgƲo".LlO;Q52| BP1ªiPǴ9uCsfwri]Jk^VSo~I`nɿ9+D5KjpcӭTN^,JaHdR.oi\1#D^j&`*B;PRE73{9GhYי>!X$B1SjMkom.X]GFv=a iEìo}X()C~sIi,3b0R=yY fknq)JZ.YNO{HԜp` 6 ?MO·Vfn+mR,ǩV\itvv8"Pj`|T8C]bGGp/C…r}{3sKnt*^[pQ`o\Jf@|L9 us2T O9$\~Jl':F=Ws$QKxCbDc` shEƬ."ª@O)rǵo戴]˘)VlRf~o8n:A!y1&FK< ]0="%Ral$BJ2 =fdJRT}1&W gC3tUC#"|JM #IV3dYL(mSZGKm7 Ek& MT3pd rGRGDD !&kmƛ=Qe'%V:姻BWSgKG"jHB8J95}jgྡGփ2c옗  +JfD[]_D>nZMֺo5rH獚vwھ6Q2a0>BkLT5i_iETqBC-LDr,}H{4$a*=8$?G0JQ_QOY;ƽl0Cl8ܯx%.`R|KuEK ׌@(B';kS# @0S8Ғx Xc6r`ZE~A-=k\n2)?r$ΊʾQHv/dVߝL!DIu\8QgIuIWd[m$Ṋ(6L|5lL9f˥Ɉ-5u%~>fc)]@9XK*xЇ˽b<4hT솻JP׉cq4h# >JKZ+btN4]A(Rչ9Tj9%xvpd" Oݫd>nCGrG'PKޟxnIf\J #".q7*k̒YNM Ҵ/fd21K/o8>rթׄ7BOm|Ww Kwe/iX I s6X|3i=)rѲqVm$UHڳ_!(#(8IH{BʬEuks|3ջ3՜ \v~ 觽`<4tS|obBUF74ںwRzAoe{Gh7P0Z]ЇM2A"׏Eg CK -JW$~#艔"[ Mf Tǣ͡R1z5Qi8dr=-)!Zņ_ ~o"RJV"KKarU^%ʭ(i jgWڻI<1X3y@.:HGNMt ~0A}]e[Q) S3Lzm٩Qv8{)-Ӏn㔍I^@"=C%b8$qi)9qvފ]^&,Ur-14nI Htlc&6TW 6@N\ғ}ȟZ-BP{!F-#(?lq^DBƅ6O77G{pȻ Ee2Wν"~&Tukǖk$El{qHwPq_o}?Q;C#=hʋ4zn=8FN^lf ܨ\]pCt'd4Ȕ]yѳȞ2 ]kбlK)=k. H$`]6!poy٘\TiHT`+ ?tEp& AL_[̰ۼؠ5dTaƠY@5QiPrc~T,&T7>ynKΓfzcU:.g͑kOOj56[`?[/ &Q EY26r0O׼$zY!C7~C,X'\v|l9iAjf @:V ;! !X/FSZo>r vV3o 87xxwz3IhVt 3([j?LQaDVa+I,/>y5!n@ڭX3O$CBS+W6Rt%0 x@ר'n1.].Ipʑ7uۊ&mKgMt=91%JD"<)km2_(%2zpp;/ܼ;-;uN#S+'@f/T9$igY~ ٓ-Xޮ=bMIo/;J%%{[@0<|UŠ[x뭱 C)=DeGRk16A=wtgQ5x5iFtO҂#r ݔ V|ZCcoq#u>m"hiS/Ad}ʺQw*e$glvnMoP%-pd2B}= YoRy$P+ ) + >B5gK؂>v0oT+JvӖbRg윘$'lVHA[]@cPSo@9t4]DmE!\ɋ"kKkM& ZWQx:m=M=}Eq⩟~/C w~r5a ݬqSK'q2x^/8I!BDTEo7Y;&z$q3X Xel+xpؑt$ 6Q3M!-lGi]6q ֚̋j! 48ȱ8(oEKNt(-9M>\RmkXB_AӳK&dm1]eVK/z#XCG[Xf}>p%齷qdyr| %7ND&k?n}N Ҟ%U} 1Z[Vnmک\X+䮺H0lhKu{#Loœ&$weLBz45Ty昪*k2KÀklEmw5{D߸H7?tpf/`sHIU-(-vzwKy?'xśV<->*|P̝x~rMJ]]$0H3[tvd(%.|!qf6Y\ۀǁ͔ʉ;6|OgD'2)Yu#ՌGs^죅HFRw{X\n͝8yd Vw\^a[Fh#t[zJRD# \> d; 7Ϯm"r[t&r[' p?+$,J⢇#FD^dg-SdpD!L`awlCѢjpxb:\д+Cm[j eYo}!#齢Av<>bnp17N`w*sOVΡ,mhD0z?T%\>gvK/Ј:0Z`-͂#Mb}wςf"eB lM;5 OD(}Q>Vvσ RlMj~L!4r_\VxG&y\G:td+X_jy[6yfˡ9 6Ho?ޭ?ޡɞ_:z_&^1D5$2>&Bo(o;Y_^H v{=8Qwz J8 07@m sbӕ N!'@89bd<#Št6#[k4$_Xpxu?Te6'NWNÄ 8ebéD)=TEw0F~݌Q5#c7 }c11&}{XEjF+eA@TФ=ޫy9@'~q'~l2ӑ( %Zy1A}¥ܙ/JTubJ7Ծ 'o}_inE};DO=u$03jJYsL/ 5gXی ɽoi捲.Hod(Czϑ隇NLgj YNae·rdi&LoN\Au@ڀGN tͽRfw IJ68T k@( s\RcGzkI}q ]tIF LS?vAм E:ADrA٩ ?<,IJG8zT g*J>uIK)5:mG2;$Z$)1@f?l͢Sbq,5cF[ !5~'~@ؑ| (o+1pD\0tG΂/R֜s %Jel\BJ*#nk[x u1_#?ʈp=m+@M2o-Y9dyn D[F<"Y)[/uI mXmIA_|yY'C*@kfa?5aүkX-]qLM;$:r݂Zsu!^AKPmEo,UωA9nn%^""xT!哸UYIXکrzE3$gSnlie`y0a`짭,&c!iHgAo$rvZ Ae |_S-l%_P$B*[>O ooviDNX \" qMϒ*ݾbFZCkBޫ9 /Su4$7)O_]Q~pzj#xS!^7, oX( qOq{&T5mk섃$b? Z!xz%33odp>ӴF'h'>I8`$ G*n{ε#ۦsi (pj}#.u<g=؞g;h GsA񲔷ˌTsId]Y4? "&-/R8Dg[+ahD??ʟ<0+3HoN'"d6'?xJULD"|3o `-B'qP6tRWnѤ, UT3G xkGz> ^؇߭k+!SյtFtuD`U ^J˜ >)jߨuzh1E`U;"u|׊3/usHFb$%L{3Dӛ!<R ׉ ݿz=4Ρ̖"9iB_4_ki۹e'RQI=jٞx  h!4nKK$٦sB-HHnÂ|f8Țb'lud~ԫMn)@ҩ'΀^AR>tyvQ1^ h/7Pv8_o4[ 'MIX-꩛V6]'T'tO`/Mؽe7`:IGN]P j]04\qŮGR!dZE|K_+ Llg:7]|{15'5>AH`esF m4,{q:\3eBCHW81Hmn1PEl-$l!aꨆ#Z!5-"G~n.Õ{0"O5Rr$#P< w50=:bxmVQt=Ӛ]C`XǮrjOOn*T$,?7At\TjC%#p{:cq}F]m[پ/KɎX6m @@uyqE֓t2@K9;͑_ !(|4v.2¤YVB>؉oaYn%azԏ^ )XSjo3ܖ{n(` *bvvyaHvg xJŎDu?O嬫&CYui ̫Ů\EUT xDyZ[ĒP+2@q'$H,VFD,~^ljɝ|!r*ǥ͜Na^ŷu7Y1 Z&wK ۭj*.M&ca^#E>Kq/YB6:,Zy,jw❈"QBEҩ33~eJ03Av*:\`QօHld2(+G3HgV*ú^g$EKlˠr7=[cy.RnA%jPWܪk[x<աŨV4)mm2i,|M3XqڈPxV`8Z?oqcC ?ybn>Xyn-E ux!)#$- ό95"CDjnips^t0RD! k:z}v҄0=* Xa^hytXVFimH-_g0skzQztgyym+΍GW_|gke0 O6 P nʬdqG88RjF'㣌/Bc VOkz9:l&NZB-ˊhW SjaBwzDwM3dѦ*zg}+J;rQ,S|΃ˎNg_1aa4ݤ"i,RI3xhz,d&e$䓯U1wdYcG9ч -;t L{\_6xY:s:,cInnBӑ z\ܼ&qۨGL!^6+JH&BpogBٛl!s`q<`:Ta qi/`|59,V隘|{9~a;pdTo U+v @W%mg]N7#/L_؉Tv͜.!<gZñ2{+|K׮N%A {V?vM^(n*R^SG F=}/Y[mDZV$iO_w`Y= XΈ"-H䣒kx=r;@Sϡ,`6cjD .d:P.xi<ƛ.F|J v| ^z`6 za%6$p暑:AF^B?rv@)ϋK8YOFE$XDM¬&mX{HEAxCG[ > Meb4 fc>cWēHn6 2BFS~[[b V#fʻ~f=Z[P+:LbvaM2LPU|6mmCl~~wIm`\// O@Sqϕ L79qkMjϛZ"<#p>sv Dv`'[aLͳ)K #Hm6l%~Ut9G}l]f-&YXqǟO2)=`8D"#rY. +M=9:/gQ.J%Q,Yڭ:D_N0}TlBiSɧQh*p?j3] rܑP~~-(@IA BGjBӃeOjӅ*RV|ex+`"|tU:Ο FBf] E *#B|8vdeOǸg>*^2 c'cN=6jYUDe-Br!Ҷ%m >"zu2Ը.v)%Y5%̝}"MtXH`YRռa6?f@btNGanZRS}s nDMhZEV2!}U sf+ e!4%G61_w6#⥘&#8|Mg裮~kznǙe)X}ck\ a̼#36 iEvOGl8MWZl cdQ<0Y8…a&J..cBn Cp/WU1jW- ]c\=j]3__B4]L9,<.it5!㸠$".v%Q~f~Q/aԉNyJhOHļF< ͜?H!@)Tjv3tq_C?J|q:t\yS5ͰEl^"h ь_3qϰ/b43mX3M5W2L0!G?vi.˾QcT7c=^edMK`I8yמIc6ÈƁcw-a&Ą㋨aLe9PQe!Ѣ_1*hu23FGWڽ+Ҷ]H}?67j+!wqT~g'ۛ+UR[!Ym~ƠGy:D nԧ|Esu*Եէhg[9Gk~HBͯ`?>QWo)t#!oXd:D|a2::.x}m5T@PwZI%,I*e I?-BżNsF\OA%K⍞6;14!34yVQ|1̥֪|삽 06IMV|.a OF/O/91Lc&L< )6#73'7XpV~O%ƫB*D " 㾊1BTu[I0{,@-diZ$[' 聠>HxCZ|E5̶7r?BڄqLw%^*=FÁaRr(JD< 5JEcu* [ڭ#l%w/C{2ޘ8;#V@v&FTͭZ9AOJ=xfWv 106$NYRLDeO[,k,FD^>e tfp(81i_M& 9ő_WMTYD} QzoS8y^* /lq U?S$GTQbvsߡR#}Cz~1 mծ6-wz+D`cjSZ>-7 s*3܉2fՋ9ݬH;9 LMV#wŁ; 54.Zn?k?gV+ ^?eSkKTGe-~Lk;OqYEPİmXZ8# ~%:$,&BRZXP{wX~7JK$.lJ0'tP^&>X.@˛JcTFUb;Aʸ̧ب^ŁCe k+W~0RA9քo ǻ<30 hK0q#7fb" Dh,kзUE$,᭭ˀ'DQuJ)ٝ7>vuwdCf݅S0F?(jf`~!=^1% -""WJZ =IC*81Q.fbi}Ȱ%M}jvxxS 4I(v;_#moks? j‰V=U&dh"Q~ZDі6K!]SiTrH!+l$#e7\h^ǏY7,rM`\ ?\2x,w`]nl3GR^Ru! 8d+<)q4Yx4tq^3_XQvY諊t+ c_TzrJuV[%=7#)Br#^g'Kݡ*%os|吊 M鮪T8M]wbQejfC-5@f9ת;XˍGkQ%>R":%(g0_p#\^J$| B&>GI@3R5QB;™s9(qXي#ʦ[p_c" +MJ`t/yU&}֧Oh7V pGFN9tr4VvB{=i|Wd$m0YYxTeb@)=*4'WG\nܡ)'7 |H@#dl 焜r-ךR_B@ϰDH|a2%%>\agɉR}y7ۇcLQFt=7yjj%w ]od?N$#bHW=ثA~HPEײ6og)B,$y=. TGб= xy_p%}@¥ _d_#\T@JA!I>w^r<ɪg̩q-XJibRy",%.@!}\&R~0v( 0E9'Kً+'A$C-<,7 DbU4=\3|C4mt…ȡ-53vJF0`<gol3EK~}rbr'@~>kd;!է}'_k>W&B_MQ#ӣвGs`'u2pXF= YMh]&X #I bM.3>eܜ`yvd_fXAԿK WLΈ4>N|"u4n<@T1n/irum>hvn7#ߠ<{/(Il8)zjQeQՀӄCK ?g[u'*ap(Ԇ߱h╖Fk]pHB21egZl ޫؠ/.raP2~Wd OJthnIAۿ!Ffc lRzщ]hFvJm)ށ;[4Ec=Sދ'kXȽ8ݶϧqR9BX40B7~^jz<$yp蒯!LQ}$a`IШӒ _6I#b%OWzPVYIsfkE{;1c r=D+}k֒9 #* _ ;by*Z2芦T1*4}}-p(%N?<9&^fS(B%.3lօ~pnjyז%#$׃n N1RoRTIltH=1{A3qm T"Zfķ-VC)*L5*F0eC=[wkӠ lܝLQy(yJлI :fl4L}7ET}/.D35L)1hb*7#QV58p(|qeL*7$҉kޑr[ Q lGJbd&EN.9_y QS\̝n!IHE?\f,C9FϚGD!֭#n 0RbKϑ6`= q6gi-JZ {2תu/rܼ{c EȍV0hǖT=2@sEYa}}OAKz z^^ gw[t^hc2!oh7qėhzŲ0[:T}Ag֗,٭鳕bQwyV5%,oR&t9,M[ҝ\trM0JHB*m6/2:׍i hs5 ,+rcڲ$Y enjk~*i,[QfIl6D"Z6[acƵ"WIf`QޱT}ѨE'ᷡ%Uyאz 唆d^l8O7?6 ^f3BJ1FO1Κh#uY,Kw.TYaqu[2h Z܌r+hۿ5GOЬ PFi;U\LEDeLA(XL1|+=ǛhHGrZr[saLlϒ{Ǩ}9Yؕh 3i=x/s[[MMǒB#(C ť(J5rgfS"*p6)p(+ -l7%͟agVc,,䃄"[z;|xzx ÙVwEɎV!-C!%UoBǛ}^3@J{c8YMS wz3(4mV1J>~-fX&#C2Q9~B :J!جPڻttH368D~@yݠOif i4>,J|N;KqMUC%7 A8Bi#BuKTu/NNujcWtKpus$o= H_e;Qd3fΈ6s.u!b2ؒHxߠ~?eivyیa$d>p>GbLCAtWBh;is˱k~LfXd}#rgF;ULt(t,\_i5?l޿*f$&Rڣ'HU5> (LzT>N2r~9ZH4TنrEKɜ}jM- s)4S: 2- 98W`Z]y+[Jl e0'p$ *ބ ,Zo [(q+U_wO(=g5p@ 2~s~odn:f'U;C9`ya%piS\ &INB]%]:X>XY#;wz`Gb\oW!^ 4)<:_i+.K"&R/ ݊DӇF8TwxYrGȢBS޿=u2x5J5n*mKux\jHu" .M͍Ml" d H?_0sB `CKVާ n]Bɫ=čEDɛR9j=Ғ LLf6Q'"ԛ]#/ʻ=vk`q7 i[¡H⏾H웇`e/ȒbhKw9=D >F#t~s+!TF$%.0W.r:`GOcX>2zo>Vxr&c>O+H9?ܓ[g;*c:M* $N0uNEٟtw!C{*Lt٩͇L7-ՅnsOƐ ALno{W]U:b7aB)-ɧ=M)`d+'38ZZ(XIօKgmɳm^. ~դT݋p-Ӂ ~}oAM !qvƃVAs%d1u2+I(Mty_7YAi?Q~4'=t16?n-L.bT^ꆔLĂ}/ 3k1-}u]7H:]ʿْR} )=ٰ2,&:@7VX_%G%1X: j51,KbgVT |PDg7;~!;,`#m)?>>D, Nt²|FXVfaV*#W騟hTEgGMtg@ou$a@+` 9^G}]a3!rp %e6KTj "NI;X96r:0~S.xʗ sڐ=I`9Ϸ%p?zH3uy`+wGbaq֤w]in9i&h9n2eF3F5#Us9PX{֞cY REa%Py~А;|dzB &F>%~`iAqߵP1B C]k~;ɋ^ jx tS]s HP5K;GM!bN#3t)zhd­Zƒnko23CW$ {;Gȓ&PvJ~ˁcm 5y>*%9-ӫ^WB*o M#P|HIj;X}/z}(qn(y}]†|h%mN9cl߲?KQJCk!Da; I%2d]Jy ,nAሎAC7gi)'V+<΍NM#|qsXrC27GHT@ݥKw}V\ndB4} 81A^Tm75M6+4؃VXшeƙe!:B1@V "4FIIYnN^eݛt=U'! cM|rڼyZpT,p֎ r&2C)˼dF.9W.ø Ql;(jEcBpHeWz݊]M|%Es1/e4RF׻)Ì31㉺"3u #"8۲ t +Wٶ,J Su\mRW*Jc7:{7A!{\L-0 e''rVT*)~_YRh4"ʕSnsȭy98\'}֙S 6 .T7Gz"B\pI{ÑR1gE 2@.}ȡzͯbl\v]v?@`#{VJl a H) :zRj8RT٘9NlzƷ8zKCi WA,eL0mڜXdS=ldDW~`H|T:BwLan)*)ufVsgFsR228lܐ4h`4ckJ93Xf[5 T48qABĐ@,~kC F$siƟ^aɬ/f;rCK-X~(:ڤ2:n cZVԺVp|''+xz>ve//>hUn7ß:SX;nhIF1u9Kh­]dwa`Ec}_Bxt? euu2?u@B$ʒ/+ 03tdgB,^kk%ći)T2J3k=]+!=:b $lf%3wJhpB̿gq ~Ju%\IDig`OS{gu^c,_XIi#\|hH8G?Î9ː6BɄv^p@Ɲ-m2]J'Z7񸊱ߍ5&rpEuIW>bCm #,5v+~\쳕/AAq5?TtQ~r8!~TO(( <+BϮ, >&ȚVgzI"rѴLf^#7oWqq}l*;RXh3>c%IГdprk}ձnkŽ#aZI'ymb0}جmb4E`H~){@q.>ᲃ؟8wpHԖ8?~xX3cܝlTۈ[CG[|/NL6aXV߼aL"~xfK,?!p :U9DwRChqOt'tǢ^ D>hZswtoYHͧm BgfѝuιȆd${= &YR..v xWM^YfWB-Cd9~+V* SfLOD6Ɣpwf"@kp :¼Rәm+qi+Mꟷq BCT;uv 1:Sҵ@9>WvAO--(XoFLI%W}Qx1o )BU~B&x`8$9hۉ05Վ<,zf==KJWPYEFu|B |f* qd?{ tcat߬6i%ʵgU]qkʐkǩi.~-}T < zYNtl|YE@U?.? .p,5}GY^@r/LHVKG{{f3T#& ,|BA-%x(yeUքLj ~:26ez 5G~m!D)1'Ck.lt$%yvnQԔ*t|$إ.Y?۩t)$ ?غqm)L ECT'ХFK}23IcC.F%܀-p`2+̶Za! Iu%yJ%3|';6l۰8.x˽c#T: |F0[ӹKC)xfstoO&QH4|2|8UO:z YzVցH.V8\‰w<(Aj%qSV5n<}S %%9/ 1\ FYoMSʼDf͎a6]Ow ? ?P]59)>gV~WrYiziZ;JFl=1 pHͨ1%h%ŒX`x\*iu-s撞~0vú 1UСgA.EN/_=_ieSjjvxthD9rX͈Yj5|G\qtMڵS>4lܚORޥq\7XPrJo@kKHG.!$B6j{,-1\.Q.1֘3#A-~j#;bFuPj`v@fG/uH8U:~Rm\npN_ CØD9 @A$JOhtȑ+a >JBp{`i ZʥuZdb.iH~~C^ EOw&ola]benO=`4j䣟Lؕ%e 6HJ[fV'#Q@T(s0oNUM!`y]dc 5Z!smY;Y}i(υpDq3M7TCc2FeBa] 90$OZTFe$tz)j<Wv 7wyX{#V&wMH??>4dD6 ~A43D2Muhw5rZևvbvR}XMލse.hZi/CтC `-b#ۃbSl =n{פ1q|59͢$%;USVl"J9zY{P\`f. aG?ќmFR_`HSptr?󱛉^mS4?7섩qmH藃~ΐ8pU$8`j%;6I)ۜ4B[(Z|C6 Mw^suǀbq#tSHIqtȺ̎Lq,Lo'YE,8@w5G[4?3֦*C *z$n[rFSP[:HLuh`FyGߴ3 Ic6bXǶu Hvqi 0sz=Tb(="ȢP3y'-G耒<54=/٘ sI_st+lS{~ m{?"Sx*K8d}2%wȮt l]Á)-M]!5iGS v@FU}sqhEAW ; 2r:ԷjnŊf4f&{O 5 !-[8\%7垟FhhFNm[~䨵niK~TU"tSn*~JWPG.h%ז`!'dtQ=5UDzsҙZTXY4=",Ɩڟ?7)Z\zsO?ӧdlz`E8H#`644B`^)NhQ Dhn\T)ܦ)eS(D'HF2x`Ǫ ]cލlC@:#?R;đٮ?ri#[}nP9DB3 {#?L`eؽ.Ud\~4@OWxssePg:~R\AŨׁ]?+-ή1򟥖54${~ ҐƋTuv nX4ާK^2Hqyܢnl"Q8rvkuӃe8x NkuX1Riڞg--kevru')' ԣmBM)džE!,9ұP .o|IZ2i&Yra!|w.AZ {bHDB*׬̤11%I=m}$ :%+ĀtVhIQ4UD3JfoO?ixKkZd{zEl N1Wqv4ƐDCixOw.ŏ# jO4 bc3T@ᬗV¤:.GC2m}0LX)?SyЄ>ȖDHЧ{qխ4qŸ}k71y*= +=krzZ}zHaM|[blM̼L]E!!f0n~EbR;FQCCލMTc$*8 pL ?f*P:+G6is72=_ Շ?߫V %=,L%7l=2"L#Fq >i>6 F-)Vq@i᥯<~Jz@-ӧm&YG7DLHZ`68G7 R=t*EZ@-ԏ^*ũ&V(+MR lq6(xxO ~J-MVe PMSO&獁CNæEPXٹw%?o?l:L5ao~*;?z0z#WqEQ"EGq$:Ɠbdqϋb|$΢]!9T:2`;# VSJrGרJ/Ym9dIj%,/2scR<T2X0i'4=ͧiF7WQsl!vsY 2&5-nx<qE{]hhH̓D\~k9&/ZLng\:l2X! :QUIFXʶ]iMt%-*N rtXۨ9(C߹U%el'ܒ)XI_1kLD&jnJyѼ b& 䦺ATxK[\!7&?0}bxR.1BXKs,dNxFk (9XQ :v%^+J)`U>/t̓Ak|\ZJ4 RѯeWUlJviW ZxD~CKBhJ逹LHr-K{}{Ͻxye:;X17V ѯ7NN^+g jy*nRbײE<qQ{=7W22}%Hq~dׄj~IbL&[VB JY8n9"|b x4L+s(WJxj)&4}yq?KuSxB/~xQx˰ c+:pRyɕI\E>`ܯ3J"n!ZpWxH6 >.@3J#QyDg8gKxiLWyK$0-,ۂ;aW:v+( G1 qԏ'MU_buģB7_c.qV2Ŗ/-rix2e~%{k&hjj1fqQ#?@/ӽyp!K\U~>׼BT([k|@Ѓ&eHGahWd3y(p:.5igkklCS!Bp57IB FempO# G5=K*)»*2ewd\l O=Ɗ+tO)-0w }FM2q$v&Erቲ˹%DN$3\IjVy|̭oN+y76*aMzE &ԫ~pU^lrx6l}R45! ޔ iTf.LG? Zrw ځFjMdjz^t:+;d9턿83> Y99&q+̓r#W%D e=qQ u䞱b)يTnFF$b7.%c7}DZܦpPjQM1Is D#0bde;/?EYni8MV %]wvoj+EK'1deuENg3k(& {LMjJ:a/ixa fbcM 椉5]f=V}N^(Yv~chXXTmP-6 yh *myK `z3X(?.n.t!܍"Txc%\œN ]{ūwq4i61f-a{`^<۔ ܍[7jdJk}ޛr:IaZbk8rts͸g]/jZX\3$шwmB_'z7%Jhj.F߁'qcG|vHqE(uӂʆV#5/052z/Ov6j(C^;1&ebBJؾ/ E<:&E =F߃ݸQEs(r;s|2rdܦ]oŲ5T28N9UٯTe0a*fjDۏAMzrC3|D՝.z+ >zBhHfٍ/țՍq { (^ŧ!+er"I1 Q d62:;T󴤿<(?0Ls ApϏd<3GlomKLsX' &`S%BnIh@C㊍Ts82jnn0m&r2/F|QG n^3@1/Q٫7B$94TjrBȜ*}IL[ )%Sv#1yC:Pv'qb;a*oˬ;\|K>/H АXJ] PV 6"x ѤnpDp)_.w_2 hE2ژ)YxxҴzKݟj7WG\ iUQI r0zdlkW2M]Af  hKiEJDOxN`,*(GPJ@ @=Rq? &]~;#Vwfr%YP9Pe";6Ǿ B¸YݟZF`[ACzET"9YQbdlN~2%g,c~w /mC+"ɻJT筡M OR@ Mߌ2B i8VHɪjQhFPEiVR1Z/eZB8Ԯ l燦]duo8we\H7yQJ[j€Pu-~ʫɯn:NO'#=<=P QTFpV6kgCB@s{oƒVP AI 8(-lg 8ZΣ@iOMv9RNN`9Y[W{WRb_tL8zZs9ngnjk];AU©YoiRJ~=BIM'C`51)Iރ 3.E- @d>w=Z.wͿ$&Bvn8vcڑCAֹj3V:gP?ͼ$"9$bH$GX_sk,Ob%Y'] 3+PJ[Ky*%m"?ҝb:jٴqgws<lVw\Zb֨~T0e "@^;HTQaPxn#hf&xy#O13U\sԃ_hjFxՖ@PZ[JIPҤRPsrƫ/Y*3$9J ǂkC;Il_~X9aB~^qBΆe"K:3Ɵ`]ZSauH ,6?/D)ȴ҇GS7KoeA& H,#u)D|/^Njwd!,L|~qK}t)vXtuf|P} ߃E,ܠXzܦ| =C&,fP&L,8ᇉf垐a|k'ia`#;;$ f(ݘx#Xi1`.Xƒuh+Kw6 lfr ddWݣ1$@zTщ' 0rKgf orY+u}fb׈e6KTDiZ>DDcI-N?X ǹ(O$e&+u^qbO0u:]G L:w2sd3o|u.]|sc +S&\~a l?'PaJeqqi5E\XZ  25<^+G+Qennձm[`wژ ̗c&+-_g{_Wj Ab{_|een{;tbWqxt+D <`2 8M ?: xFF>E I 8`%49:SҀ4u?ejdtMU"ʃ_>r￷" Co2M "U6^ܛ{_0cgY~<># }VIs}_{yvd! [Ua@72dW˧lh7`13s|'\5Rw}5i54[Vںi]\9V%^2 \*Uo?=o2:*&ķK"=Z?M1Il@!\ mp^fmf~J86J0 )F#ogkؼJXteFQS*⭢\vl7%=LװH[W/t _]97{Q`ph[ A*ۑ`ù£^1EM Xbo dj/ztJ(`?ͤm"\m-$#MhL&5[XTPt ht:c1E Nlʬ2 ز$v_COFYo|y(.kE(jxR+!fU ֧﬚9\ u>t;S$R-1eEB?aT(SxD.X(!Aþ؞3-\YpZV=763_Z!86ln]g.c7HmO.0mޜudHw% 5榗 R:, d^@Y2j.i׾#rEe`b-' ^]zU$e{m#CV1n=КYb^+)O.ɘzR7<:I9wkڕn;$wC$8A^jOqkYo?s:ߋ?B>c Ox{"ab6w*9}V|@P8b1)#^@5Qqig(UUR=œiZ:$? f=H!6 V3o+e5MyZ.@}2WDGX><&.QEv"RbJ+dbR 'P<ᶴ"qyYɅã ?jn*=}gXMKPO,!߾k9~Ĕ\ZBcO?k~lSWM!#EJտMn1թTeMr+P|Uy%=vs@ 6Xx#yY[4DK sgrk?jģ#ئQ*95Dц`M]7Y%w0A* HjಚwY&{ߒsS ˶h ːq\؛)An UzDLMx-|STp]WP hED#g(ɊX=h\,ATLxaz jسB^ []|LD.-,F6k;fufVTӖ>ztnyl(\hZ SuZ{1h"(V6Ge@7Zm7iluP S@t<=o17!Q ^]GխƠߧzF-+.`ZgrtEdW&S-}Z[fAH69W` ^;ChLT ec*G"!I&* hH6#L΋[4#?Ӏ3{r,6jׅk(T$Sѱ1w6iUk;{\CRZel#  ]ZzTVk]e ;ꆞsӰ9ذ`mW#[MqоBMl˵5 kZ[oMBx+"9U2wiThzD#\x|n1z?9jbRLO Jst-%Ta"\6qQb>rShʇK48ߐb$QV{׶eދ,U=57>:kr[Nߨ+P߮XA/%D]2~P/gIf/Ym0a3X:e-'Q7?\Ћ}Zcz %UsI]Pn|Tz$v 1+ӊa1o}p""&mITE8 1MfIzX+WBaxםczn4kCYKcӅ~vEP# 7);<r={PXK~L[KIgC^m/[b3Ņ ts^m M(:ΣQ֟;=fӌs#zۢKH /;S6L߶^Qxdظk/9%;~p(omˁ+:Mc'o20bk߇wA 1hկDj)/-C.'!lҔnP/@3BQ&ӕw2`23نEvm%V=\R#%Kp}g1NZ|,;NS^|zGҵ2W[pĴ)8Q{!T ez⋵6PʇFv+\ƨگú0wG09-nvYӪ1Q[p-t:X݅o;{צpd3=0"#JhmDyJB2tdcREU`h=ضqXycb@!K*]W."U ]nj0S#W-k@&e}E#bKluXRؓ`eᗅB3)A{nMrh>fAby?OV-% iآmv)ieF)zj"'$?Ma6Rfk`P y+2ۗ7CELRXwΑ\]"g)a/QP64ۃvecɝŞ mt @J/͘H޷]/} :}o/mMtd(^ 5S$_ˤ$IjOGt7@Ê7R]&Ԉrϟ͗_GB#MO7C8yg`sx&]e\nغ);1ıUe|X1hBzrSn &WU5xJǧmփY o?/^u ~X(&yk:?;1//|q`I0)7e;0,kFK!>ٜӈ^cL՘6(sBNǍw+*4V0\MR{V`,@)5l?!*R_` ?>ގkE!2E_(]vS',L TEeؚ/R9%4 ӷxWSp?P$Ŋ̙DƌeXb;m·,ԿI7 rVng*Y0.Ji֖G!ĩA󔜨ișl &rk;4N j{a'Ov@ _-gҰ(8jKdeS9ɆIJEEU0.&avGV[ zaƙcjH؜*ys bOpFZ5z̹,"2Z1[=" FcݲV0 l6vxi4ܕK˽j* Xx@_>aR0&$duYlƺDOϔ\IYS?g \ %p2^<6#h`1M"( {zo΍e, Jj-joQ},8+daɶλpԅg/ z`k!B,lx3T!VzT™ £3(^!NPJtN8 Qr o00%4E OSWGGf]`H r{Qȁ_fR0ȉO0"irTE$osmSV _`K׆VA(ئ[IBLb̓|SRFsɞ7%PmS^SSx,xwv=>KgĦڝ ;e+~ҸaF~y7O]g]*mnsPS(#m&5{BgXU=QA %SAC։, 2bg-2`.̆GJJPtXz~![dSg~r\Jt??4UhZdxmFU+{A!d0ۜ'C{da_Ըf!?#p A"p/m/k.f BR+VIɜtaXLR!w1(;"?S%mxηmC&gƶU^9i:L7⯧OE(>(+]"}Cw p\0P}w f9ů9" [lBITlzE +ZZV6gK!V.ɋ^&D[z2=1Ū*M#w9ggf\~Px=B9~diOȣ 9}[Zv27WQ;,t'ϧb:˜㋏Kj8X!Aa߿uI{7X?I@,=]˷|NhKԐg)o@PzGC`~Q3$qʗ]Ď֬6gwJV~僣T/8J^TohGf cNR ʼn(/EK~ >Qmc22i9W&k'^z#Fo F{X˾1X,jfm+Y)RW#C~A!sQ:rz D?W ZD1݆V{84$(e91W+__2-gTƲ\z5uP/bzSZa NlöU^N/SlGW9Bq%a_ s&C'H΢^GoJy{}l |ݗL/i6#O= x^]~H!L }m15 n!w:294#.w,*E{ħj}^)}cEW@ृb1{o,`#a<*eKD"Dj+WF Ń&g&s>q蝬CaJ$zڡ$avn]GIxqYh0wC1-MLley'_9~u{И'$Q0uI9R{!sF{SSi; c$ۯ0[x ½S-F@Qzo bmQ>Ao, 7~;C3f<C/jr_cy ڦQٕ᠁=]Q~5J<#R5`.v,UzwD]Y ŌP; n%'Q(X+@,/ c8 PZUS]E,"sŒVvymIҘN4\{ޅ9 ƚrXP2<°I^Xd-% P%IB\7ע]/abH7.UxVAྕKbPO)q GS$|aZ0`~ñH Бd%rĽ'96T&lLU^o:G*bͽ7}GOxxnj5eFz"QW[|Jj_ Ŏ^az]+Pp ˢE$MrLE`Crm\S$hmJ_ސt~z%?%dt_A#Z˥*7`{9j?ep2ǂJ|*FACh=h rL*aڙq^ 8^h  !nj |~S,Fxd_=|h2p&v =;1Ht{GfeKkL{/tϳiM49- Op;}[Nl$qz'BuռkSǢ\ᮾ˻7.귩TjMk0EsI_2k38B' M3JMjR9Oݾ%9$皭4xؤd o:rh4FDUĭ{DcI)x sP8^W'GueP0g&K>4ApY" 8CzRLu4h4;gK*PZK(e^VQqJǣ?1)8zcQ,̢N'oj^;yZطXAkG+!xۼ`ꄞR9k6ЃBO,)bUDžnFg:\ք%*'1naAcBaF)q?z6Y%3a r~BEu{kփ2`A6 ±0Vjf0+pTRY4L2t+R87Xx%[-P wE5U7[J(xFZY|!zF{PIJU1FOaA^U<1&.0V =H&@WGh(B`]AU>upz\(=AY7TUGC'yP/j mscET~<϶dAW @< @F Qu=al[nE^=v}f6}g 64LW^Ʊ]J[%/#uGľM%a`cǗ@ԮIA7-lk^A,PEs6*@E%1Y-8JKI2-"IoI%Cu9QĹ ~)al!d7OK,RA?n'@ۡu )қ&7ق sG:Ww {S%R D oq`'\‚ Ko9DzZ4oOrJՈ¶ xSԦDfyuCAuiRp5̀psHhʓTxpL_'r 8nǞ?;Z0'P\D<%܀@4!!b̷p'= X<|W.#Ϫ>cGJk5k7>@//@: c#j,S˂kz|I\ D9)7D$d,efXհSh3|P8Wװ ܜR m`➇S"1=ڢRW+ZiʣC.4!V/|C~8 Ml?>I>,m !tN](kf'ه{Og]X\'scW]8Rv h %4',*U`Mem/M}bzb%)D]9*Iwzd~e_'{0@&`]csJ-%pK­ //\>?,.hSj`M}:fɴ$ќ#>8]qZ|IPٴX/~j FXfXz [}"1+tSTTBQjU%\ pV.YvdP&O V`"r=1#Y Ry!| ́@ ꉞ{tftfbk>=u%U;Q -6g Z~8eIFyk(B,lYm,(殽~uم3Co ȬD#)1yb8TrCz^;5aW,lAߝWjQKLtC0Xoe,Yx̳amuK6fKJ)nirXgAFoNzb(4>h.odcpq)Xe ug'əL 'xTgwR2ay8#[7fR .SvJUv  ) >lwUt>6WT[R!'eeܹl #ge WrsS&4C`HP>Ĺ.{]̊P(ob= 'qO;;*<6FmiN+t2~>y3|?St1 ٨S Wm݄ɓve:$ֈ0\*vf>GvYTi1 NC[<_"' t ?i-3}w:eME·D::K6?E(bGcPNψ&6yYw(WIDtQ<#38 >N GMucUlCKǬ\R176puX$~Xſ>D-QyH@՚ƇRdjd}u) ݳfT2 iH8fSI8:Y{kGIY>;hG%5o-I썃`%eڼQ2z7bBehNP0ƕ|hr V*"*)gY>x}/HhLs]`iA)fyY|I~bȄH+^*Jе9;R/@PZI)\LA_0IQQ޶JtOЗ@u7m$3N(3Hqvf^:A7KDth舌Ptbt3Lj`/ |Ѯ#CU/lĤTYB-ZBu JNǔ\{kElSǙoQcB4F7@%Y3@j6-s/1 S'J ĿÈ+A܎$~,rD]1(%S1Q-Zg,X} g>FhD/Mz?MR|~>b'EFнA (Mb]:U\1SzF>I :~5 uv m =H,/ގPC'%quw]'xii)ّx1܆sew#L@Y7-Ni|;e5zDeMZUjb޶=N6ftDԱX!vӼ&R;`'b'Y6iF#.#O(#JBЦc;w(VЂ/ei`m$0jR܁˨ML7R’g!.^9s{ܶK?*5ö@%G)aO &($]k) E>wIVV>SDG3s86x%cu AKz:$9|O@ͥ YԿ9F@@qpgN.~G:xB|b's3$nJY(_B[7ٓn٨S#Lb?ӓ&6&V/nTL7^GAT.y/?IV~n V鑤wdɲ`B @r~Q7ghzb/­ت<ޠK>rWhȒG1T{-3~87/ MɿWv~^\o-H å4)eD"+BVRMLP`J p,8"JA?([dZ Q\-?cSZ Y&'{1 P0:ZT~[5M/g{-|uwI+D~ŠVǎ~D601¡iy"+EeDYA법05//éڼ 6WpW "tP tr2t"!\ƫL^QbUAcvOFq·*n.Z:kҟ[fB8풡^#"תKl00cvJotͯY{Oq7M it'餂؍Q-niwXdYf;b[hߩ\\Ў,n[!Z7ñҰ4eF'PNqk8<-p!ȨtŞ0Üwi\"KT ùuNyeNylLHp/ ]@4IC',F=m`8+@Ó4$`[L$䲚Hvu+a,X/l/hĠJ-r@ـAuv;1ؚ+݂ĭxI DtᩢHogrX5Z,3e*HۼH;i7oOҝCðc>{p,hI Ĭ 9p LҧLȓ[lw4L9'_p+@9?6l=v uqWXCG,iDlzb4.sO' d4"u*1׵h 1:BQY z)IkO,8itS=ːة5VsvA8i"R['5>4)R݈WYu*HjFDQRbLSdӞovYp7 ̋^z qYD4 i]6OԐ!jUgr(`[WFe ~[><"גW$-QTK5JA;iҺ>\JyA V,HEp.9.}Hl':dcR#H#2w*Ѵ!NJ %d|. sG9cSfwn[p}0@cEJ-x 2]1 {V|.c /iYznw"m2Ε³ʒK9G9%+>׳}csK\؅EUE?A瞯ESbISi]v6b8\60O.d|C']: YS'( ,i!@>Q!}i-WP^9)c߁,H>.b pixPO6'#gOGwpGqaK k~l1n0iKO5ie8i~&D5w [a<H:fGrސ>CLvjtgE5:3eͩB!`"H4+y@(^gYM4G{MeH/ ™O%ynh:ϯa\M+!e׬тګ`'w^"ζUI`ka59aRGY@g'뱞07\hvIr {V\䍖~~(??A5tozHZG8O,b zU[EZē3MCz+z5-U Yy)h';}$]F}vmO6`rpZ Uq)vگp>WZ?P8gJCLРkӓA&r IfI^ jm](y72=X0byݵ~U-m&dUL(G=)KT`<{%g9A>dG,_^;Nvɻ@_Tœر'j+$3Cab*1dqY-`<սEu%Ws4|N]yjФ(Jm] |aT̗8m5FR|&C˭TК򾜊RL7ecan,NrI X=ȅ_I1Eöj4q3{^ %NB9A/FDўEN2׋̡u8VxmY/$kE$XPO ]ta%w8VǺMqp=p\SuVo8h&<a|Ume{#{sJU3ؙ\c0c~̵nŴF #Ai4] 0ZDy:u[#YQJU,}tD+<\hhġGY*I,m5xa_5n6AU_TӁ>hRÏoTglwBq~Q7/RuO2j1Ir +T8o&E d\/L=FBR 6>WI`r?#ue 9Ϯ4·Irqǁ;[/';;hgJ%gXG,۵])FWd|+HR-ދ8Kh* 2\2rYu4y5S[@[2;zg4e *C4'7lrv}Po*DL3(Bj"sV{pȑX"3®3jѓF~wUUn'6F߹&⊚ m37i5caZ52ap>9s'n@ "DgFΑ  xQ9(6KBcstVeq[Q^~y|v-qlU{'-悍 ܄Kϝ7P8!X ߠ(6>ZZ5W2'X]$q1wLqjP^:S}=!a!JZ З^KKM{ߵcCˉPqU(+Zo>xʿ#VfлуF(c3CvAঋhSҢuKn(򃻓f+hb+=ro4oRadeҢē/*yushS4և~``(|gܼCV- a/gҕڧ6|W;]';[qpMw=N}|U=H؄حDg)g].t5ʪf?~,ɦRE:=Ӻaha[\jT_ȎK#ɺG@Ǐ&mA.r΁\WXٔbM^ͧgM`l2py2y/zb#ګnHh|&%Bm0ȚL\B/# bsǰ3K~>2gԵ>0_![|` 9A,'S&p70{!9 0&\{ Hݜ.(Do*RQy\\roƒNf`Rv;(0$ bi EBAg{*=! wˬ4踆R`G(4lC?%ה;zx !0)\iϰ J6[U"nlN!h`AP9+hsFЌ, `AvafBN0Jc}HY@1ɚa+PAs/.bRl;OohX*m2T GA#Nd^>adF_,(HQ:."`xqn[ 7M>322F f%\tmFf\ŏG1)>D#+9X y ̓>ԟ]'^f$q2ĖNi6^NosRh!c~zjf[xoĢ| 804 6o8۶$_$IT֓$tÄ2Q6\p(:"JRBYV}|!g\N43t-pˆJE~;gIabʄQt䡳V'@{B-<{iͨ'~a`_{ʲ ȹztbԪ/7m5u۲^(nj1F3z+w$SLbmV9{ |-J/7۰}9eDFR Ŏ`&ngW/ld$2= :~Q'5ET~h}EawB:|Li< -\?_6/{ Y[Z9Maݣ8L^1N;mLK?!YTaF}h A0@\c65ʾW[K!\Z=j/j-jc5tKm#jAj~n|jC!Z=Gqo:O%"dرunF |^jjwGezW miaxgl[$ Eh?.yWpup/GW 0IyҤ')7XZ h9g~Aew_i>4.3uM}ڗgDj$.(.Ƌ1=Wz;4c_8|Z"x8>m1 KS&FU#bU;1jr,q+q&&9Rކ@BEn+-L yu[ O9:eӬ BCP}q [G͹*M'4q㍂.q1n'I[2|DK-L2nUϩᎀ)1ɛYZ`'?^MPZTۥڏ>zi݅a@3s|֫I8(e'R['u06mJiU|tG.gIltmR*7ie޽R(dBA݄FwlؖP ϲ+8T]6Q=BqƑhBUT/^Kq&F*PF('p^/2+87+ބUcrl >\s{;ND1DU2^镌۸*+~2d󬥆-d+'ZerT5zN>8'&$s3p4,_Dc!U3h=O֊TA2}վY8f2~q3 ~B)#k>%i5AI{̥5|\ t`t>nXvRL:jBԶ&*pKۼ\\%N> Khw wM S :.Hpau W`g[Mb\&:*7bvZ >{_]Y}@m;64 %kX"*0CsR>ҍ<%Is2r2פmOxR8FKs Vd9KJm|@-sF%{]fWF_t6iTTu\Zp (N;IŭQJ֍1~}C2i;j!9%łVbVTP nq\7_02, `|m[CɎyLg(b Hk4A\X g3ZA_.s; ~q_'<`Z3E)%C}F3:6wQJkb:g Ȟm鏮CjskWG.2M"1V#,ge1VzC!)GtΝޔJ\]oeQF7vۼhIli7dDCzt,p98Оר*x%O3Jcm=+pй~NQ ^>j.-@H0M<;У?CNYԃP*0?;8C Xjޥ˹r!Kbø\{!oD3&A8&pW0\%^=0 MFQnU8o e1u-GqB%\4pjf,}hYLUn h)K 6 }/w샴%o |)`( 7ia+kZdr1b'aX@&: OT.W675a,yH;#m9e+io/3kʰ+(5N=LYsmY+UM)thύ1Zz"[^SX*{TlE͇n y[s rI2%X D+Շ7ZSШXqch/"Yp×Zg|mBג%Q򲾐b/Y!dU`LԔ3D[ԥjr|qCK,3%>D a[_}aIvAmw6xF0YX(G"6Ԃc k+8IH*.>ANE3.ڴTX%zgru,<:h~qǵXޯYvN' 1\)n0uܡ{].˂R2˜r#ZnȾqѱD>pM y7!z\rv(0=!3&E󜂱8 G֍0/K:{ްiͩng7H/0_Gn_5$(ax2Dn@I#2sOp T'TtVNNHԉaҵ)BVlC9=985LpZ~7,1n2zD2&GΞbCxj2Rfzy[$|##\s5z103ɩmTzЏo1'Ѽ)=]Y~a8;\k!tIm:6:U~!5_q5=utE1| ߜԻ\*c=q'xSpvc[FsH@ »ɲ` oQvH$2[[|м|%(,sMt@wwFR`v'vHCx(.ύ0B9-SN"{vۊ酬7'j%ݶCb(>@ZLji݆k*#z9Ml{!9qK?3".HzRyp-DQqN!`ZJ=QUmj{?Ch?~.cv' UΩhD\& 0@6"!yY <ok Ň |<L?)?khlŠ`;Sk#_P*UBv.>BjQ|1yTQSA^lP'ub!%Bq'=Gt_hdVSa{^V#f} .C.)3{ 8<0Rrr>Pw:gbj)#0F!) R|dz.k,smU{= iMi|TV/\B8<$3e) #bdЋH\Gvm`xXVb&o4/ధ)< j@gS$[.2]YbhXM)GwΎ(0Gzxq M]`[N={EK6rYp?Td83 Z-j U:eMFp5nH, |.…\=ɣrf@]X~vj39 n-=3vG*}:LMU\_1d)wěDJmFS.0FGbY0eb,q֡5㋢Ql'ħ7mz{2# Ӳ@=)Va|щ$h>t$>ݭmMOfE: RKfl eB#*$:(:fl36nܧ64zTJG`ۗs>LH 2fI75;vibj7~,kzI[~Շ ض1<_ZW/|W8ٛ ^(f6)?wv8Xc]_EG^ GjH̶TGhrntX[Pа`oΠTDҵfivS*̡kH:ispMg$hs[FmoXt9q+ٙAWsW3V.7qO:[Q`e?8B֠a@@@>gK8_'fTmdrw{*Td Oa(i}1΂ f.S(3ofKf-@NbjynΨ н2KM/Ѽd\x~Vah8Gq:0CnJ/s'~]N@{`%JShk< /} ]n/ ;³ )݈ҷk2 /Ƈ25}*+ " N|xs !KhIDsݺrc oL3w"0LŽ؟rkV9tdBh<&R.KAŏ aҠvef(4r̴׌I`&ä)ЋsXq7'۬<ڳ]@=__t yqgm\4[1GX_7t] W;S?+љ;k&auIF z_+]& ^=s1ݬycB5ü(' Gp6>Eo<ӫqm>#1ĩp4b ]noW F ҭ#vND5ąem8f84ƃhv}V mNSgM,9FP+;x1+sސZʽ;zch"~1 AP)Ј?tD;t@}wfk;څ\G)N560|"1]tٽ|?e2x!mp~.ԼFŅaOLX;`w[ xjv?ĤB $~L2V=+j|ahڟ wHP c#*B,P)_jhYS3 pB-ը꾂VtGek !n*"w!Z3 Z."ˤr(%mRF)-zeU\{#zqP61z"3:eE %^<@f1 RtvymGøWO~;^3NE&Rr( >ͅ4OCfl9yRtbG 4˒(1kO, ,9~nKȣ ~!5a>Mzw!hZGzJm|ݩlj$~MNgm{'u4^~obAD}iIj&KUf񑅚=Qm Cwv;̨ϣJoDn)^,ѷߵ`s2^=%`U Nf<ӻ~sxyȠrER}{FO#uX8H%N[V*lS!UO+gEa:ly M؆U7̥>zgQEVM__MER` IviuỳX2$j>mHFOrX:;T3+ >)N@=RЧޒ?aU,/ ~w.}0>h1wԴ}vzV#䶏#);oQkӏmeƉʭ|86#xYy?X~L–.\@qe-=PP:x05=?d3d`/T ѯI5B;F ʟQ̫u DgFd4 y 0GX(Ѯ@ϐ *|{XH3AF̒51C-AB:_GzuwH"ΗO}sX7GCج=an#9x~OjhK+pH<1<6f8*F~6w &l2pZx/u~Y|bxyGXx= g4&k !RTE7}/@SJc" Ã)-%OzGgv5+C r"5)4@X-Oqv(zdC^*NV<2E xc="w7{Uqǜվqik-xϠbwʏB6Fwa7ylRo5 ;EӰՊnY_ ) I{J6h{_t⇌ڣ5{$-آ,LKʠuԶWI}F4EQS-gde<|+5<# !VLd >QbaSJ$+d i!样K.|ѤET IU~u`#SHͲڸMV5<(Qf+i*F**7m+¸ 3TXOY̫t NƻnA?09!  Bȓ ʟ >=2!xLs\h ,>yls`p ZQsắ"qKwaJ@r ,p|ru`G/4>O,hu1Ơ~"2p&tTHț4$XJ|<]:U%'Gʼn_j;:" *3>[{ #y@iffm 'OS?_'¯X tPQ"_s4"pudf b TBzҋ?xv8·L|$v9i?VClxL37W&N"Ǫ. g+5aM] E7IHgvMތ$bL<66C00`Nkab?ƭV#>ת6KiCUpnS<4aM?=ZWvE:&TE/K,[5XbJNl(@#F S]:&دjYj FVsf'"ћv|7y&eD/Q=Z%FAH$VI.k9J͞DN#p #*n M`aS]qBꓔ 9i䦣 ZI|,!{"Q w5ί=0ưh[7nQZrh,pL>-iq0+6g(GO1diYt$>!e<1rHWr)&U.͠uQ>.`.HiY>Dx77[wjjG,B,ț@Hj>2Ew{>q/-_ڿ<% <B/p;(ݷy6&R H{O-#k"hNL/nC 4o[ Ozා1Y$z6CA+M\2j>VfBPWǶ+sIΜFЂ?hRCHb-:@8,Ƙ2<*䳅t;[WHw [ [AJ p p.)wCH#TV:(?p_Pe3!vAeI8Lv}wX-ORc?^* C }M {PXrΠé%̟])21Ӧ"Nd j0ᬄDNo/02؋D7>WWյ!ѵB>)KƵ1ji*11r3A]mdhɞ5G*>%yTI,R?~WQvPV@mۊPŽmfG3 ]w+W ~5  /ZL9w_%oK;IbW뻂rΕ}ǯxO%Rd)L^"8">D. %r-~}=4F L~x p!əl-l= g2Lڶg /??iXe|}`FЦ\"hUz4#[]QBX}Os&JGZ*l2qLMtFئ8CU枾o~,ߺwK/L 7f1گ'n Q T-I:YēNvQc8t!t˷#Za)"! Z GʵQ jZ&̽peMIY4]`] /7& f}oVJIA&x3ԠPdZwEVEi}@c0.0%=а .kjzc-BS=N?+3>d|4]SA{hόdmVn,{ ._ Mf(orsEռ%f 6joUIZq?lvG+.ɅS^m#G!)њą ô!b:3k`oZ38\i){Yn9s!:wZJ4RPxi; cP fs.z< `N( $WvHHoT|͛O^fAp'&2 CD4>B[>+g^8u /Ƅg]ScNX;!~>!kޣ saGʕ)Z#R'`#~1U+ek)AB.F| ^_ֆ^j|˷oOȱkDmM$HwGզr o(xFҒ8G:WׯeK1R^NՁzj ]WVpX|x|nָHUI?[^)^&N`^wtDPKr®$Ie2o5#Ϝ Y6̛ /\FD|]4u3\mXLT6 iŭ6zlΞߔUw)5)'9QV9 iy}}$%$uZP2B `7`=$2V+Nu*R|C!oוÜ:|,r4|iv׾NĔ!{Z𗂡6e6 *p|E՜ 8ZNr"D7,\G je2`[B(5<1SKyӉK_TN?LNjPBQ ["н^G^JM?:9`VF_ߗv 74PcXmFm3<ԋJPAANZYf }F/|z$eQ9ev7zX۟oޭoOC ׿>|-cٍ4ֆBU<:|T^zq(f{KF'5̏AXrC݆/ ~%"'w'@KJq fZ&Y D-=XVoEp,2vz}6ի5⏀}XX7Vek zM'^rMy~^|m:V?;φtiYMF \!36<~0W_&R_S 2`9 Tktj|evoYbX1<=-ҟS>EY,CZ.źFu+7ž-nO%WD4Iu<7fp8.HkMٕI1 Op?BqB詟c֙<Ԫ[| 6wd߹f'q 9pһ$q)DI/-uLA(E{OZ<0 VQBMçv/U7^=01[;*.j lzyo-z&Jж W)Fӱ.}@q4's$xPe,0r W Uv|Ulr͒鍍SDRxWV3Tyz=&ʦa~4҆UY4t /m)$-(ȉs[FYNާf (\Z zP l( A4ս* ;s<#_7| hvp :œ7wZp_e}r#^ӥcTF )ִ w >W=|]m.:YE,PA͌QᵼUs~~6e/hO3\G4{3,[Es(n βF$p߯߹)p4 ډ3cM.jX1qDip[k&Nި4\0)-Uc)ZI!w{ *€}HۗOH[$&䡈Mw8y0$KƁ#CMIBS.Sa0NHѥ+OAysK9ݥ\_r.gJE S:Ez~qYKƑ lMHDnнCK H9]dZܻw42)-de*3{av Tw8LK Q< d8+~<:qԧ?wqd zD)߭鼰 x3?`״V{~}3 C>A;Ӷf1I4;8*,:vsn"ɒy?0+ʚm:~!2 l%`sP4mDʡ,9 +?c[o~ֳaqὓ/WTPB,#wj:seok~bZ,8ha@/ZƦ a%Xqj|h+q_>=FfvC_>Mş b +Tf*.)߽@D9Cɜx)ׄn-uL56hWT۽2|Ad)>F5]Gn8  <N!JC>[B.MAm~7{e+[q'zE/J5TZwbIAˆ8P;=iX~1ߠɇ$ P`G3;^TL̲GrYhV[(aHJinv_rNĪinS:JD/GmDHqx΂N|n9tbIBaͶJKUH{&Q: Ɲ-:r+/$8' 4fl_e0a4ht.uaOP%CDpBۥn5e47 29@ 1VaÝo0A8Kh̽ 3G]/)% i(rZI#`P>_TW-Ksx& Yv<ȁ!{x\+>#k( H @0] c28&z9]/QX!N:~<;>hABVD7*?J FZ.+n_h?+#='**}1G'._ "jO$B?ɡXڦ:r';_sF#Ql,ZX4/wh-\.ʆf<^v$!C987u]5:zZutTæzejxO(d{wL VT mx1?`r [y6>pŠi_s" -VBپ^h24xULP,`) &;8n@&S=cu-31x1( S\ORwBa^oױq0""#6RjED%A3-&ڹyk|p[lׇ~' 蚖@khx`8`:LøIrv[֖aTߝCg9?6a%(62a$ jHM y`mCt7Yu2 !FEnkYDF#a`h*ZEe6.AB0\)-OAuja#2-GJˈ_Wgxx$]B'DXK7F YښKN 7"]uVOPH@ڙ6|J~HQƸ?ȹ `43h O- ^TPi~2,Qg~>>GwYS+L'I]DR *a޼іectG5mrӡf}x*(Bz]ެc (qWXCuܴ[j\]^,M2q̊`"tŢh|nN2azaD6uG$ n5U&Pqc+BIۛeCK⵮Ak!Cjv#}Ϝ bQ~KVx[|x N䄭H9l+.s-o' `G]wZz|dDD˔v3vn[1*3[CzoHj/5gn+hv9V`bϐxzLC\gGB(Q:kF~9Wl#5[ND܃|=Ohg ͷIԨ=/p7@ LxD^E"HFzr |+f%tVc̗mZt2!-FC.<zO=Myn.5iMjȕçU-?Z) 0,`ȥFV {/`XRlHU#&#|ނ݅"ը_DKp+jN %5DCovr'șF[{*Fl ]/jyG.*fCY`&q ܴyAT{(eQ7=N&ڳVpn1GBs}Š#?@z-`VHN]~uU*r62{)PZugaB:]!ޯd^ 61ЪloTiJZt{ţ+|]9& D=xz̩|I/ 0~ehPjq \m_eͭMI&ldzvdsWXF_v yEy\ϭ'l*t찶TH'Ճ pS_y!GZQ y tzpjϛ1A=jPA:\;)Q5IBcrB2R]rHcedz*D۔IҒx&&eon5v"aP~Tp<{]z *l֦RoMEn; @`"Yj aHo^.>-sz#Gf?\]U.z;K@(Ou]T-;eodD^*W]ZBC9l+:8kCk%jVj$8d=CKub{:|+oF6w|;ex5=!ګXީ{|1bqq? itܩ(ӽ-~nS"4 bD0tL!~Ò}N8Q:rt͝-oYAήEշfRh'^NW/p}єj-R1Zj9, 17e?. r<6 yLR'x fj]P2 ޕ>ݡ=*1Ѩbg;/ $B˫NJ*"ioZҺ,A*.)!傔pFbVNc#me9qJ\C ,47mF1\&QiDhsDͬY D cRV%pԽVo‚iĩ{ol6PP+\^Noi'і^a_s1NQ*4(8˭4$NEP@"sNFdSCy?2-.NArP3T2U3tE"4RxkPOWd:~V05U3# fٌ }z vR='s#RrǑEvHZˉK_?ȵ|:R(4.eQv 6`T2h.X@zQ0m6Z2z5a؈-PZΥR)sC4!UBfu/[ gEdBE X`$tƟ[:*Sf})l8\1kD 9˨S1Em@2s}Ց&g:\2m@wpor;/o3ǥvj8GuVmnk͹݌1icHP x[Os[˽3kgY~ ;jcvq:K'~bE^n%Vʹ_39FX]U|MRq"1kF@9qxp^T|!0 }Hrshμ'z=4dJBy* ~NMO5~Z =F@ݨC ,)o_PTUz 2 2~X Sl1I}ZU@;ÜNd4O,&đwNVD+/XtRJ;4h[*n7wᠹiO?6Pu4w(GP.v~rȾTof,u)VLB_})D|pN"H`Y8>#]18j3 Nz:_>R <5O^2^gv-Ejx.߭^ur42.jx) 3H,0ʓ <V0ԯ>Ix翝gן, Q\-TAN`  Z4̺Z~_,d?ԊT#m"w gC,+d31 ` U$ͼۀv($0TߪZ1n@%r%Tn}Ó`hs?g+n.2a,Zuk53y/RwvS6; w\y&].S47d<(7b̋.l `O͔ K#7ZӔ ;gݜs{ޠΦ;<^1S}?N |nAl[/WS;.+80*vN-Xz(-Hj'9hk<|q+P5U&`3rSF :-Z`@ʫ$+[KdvF&sִ$)!2IAu4!-@2Nst*o/sq >=M! Oh%>WG@ i ?긨GW2b83c׾7/o# +g+KP-"D&ZHr^U,[>[\P[Bi^-7qbt0&#)fs*^`ߤ+P}~!Ec၌C44#tC)DT'ςV0WޮR稳QG=WtV[?LĘBj߼ 0 Y+$ 3D8{ʮhATU0K35\ʑ2X}=QR JmbX\{W-.Рn`,U0a'H)`v\ {b۽3jE'Sb W֫cuDbD~W5aX$$L 7}7W l C(˚|kc5/TToa=cxE"0R>.p:>d%Q[t}fCr0amUdo0b![ 'o9a[{|b@0?&.7 MQ=4 vPp|A5:~̒hɁ`I".sCC@#`VNx@|6FNkF4?h9UGo^*faF(F#QkKh<:^DU@S G `Z?LQ7B+O?AOZqY 4հ*}̚{8PA/]@*/S/|n"|ֲ;نDY55}[ӎ&̬t}4d:w%pKb +L{JLNjV[}-*<{Vl<&fq:NP'Ab64 b#ɒ\_úQ{tϧFt7+Ͷp:ed wRR4|TTPy,gb,uCHʔ?(ң$jJ&C /_ 摒ه5")nH?؅<ԤҊ0N~ݽ-dr1/~{'=SșŹ՟]&^+KUmj$Ӯ_ϺfLv>L 72;-vgD ޣ` $G]Un$~ pYhQ@N`gd3-99KXx[/L1㧂 - B$#Dbi<߯䐙^a˒ ^~d(ŻI$ 5E4Ct-TV4,]h$F DVڃ}h<{чtmmIsR%Jh͆#+ޔR+BVmic_7o}= CeYR.<-IHΫ&@1Qi#t0kӍ#ëkK+pZ^>2gj8_-t9=4-ϔ.!rݛv>>nT}WrovIP1O6IrR-B4>("iuNq/N.,]"%CoafPg$DX6gziat H |@!%6@`FGúVIQ_޺94V2@Bjm7q5%qKH2RZj=RBi’:pE{NqacA n]Xv־㥟aFMSZ@oeoV9T{žkB[M'@?-zܷ.NsQ H)Tvl7SnlUpJLf˜z{z9 4Ԗ77`PpQN@8G t_Kh'r!^ծ խ}~憫^R+׀D*cXĂ^)az+qHt\4_={Z_hT>GmrpnC Q[C xNǐ">-6 z.okuЄ4SDa\e[7uXhiv<"7[v9Ş?>ije Q9ys-oIX©hlHxoT5@40%isDg ZSxWy瞶}Zܧ}ۖ>@l (koypN#R&v&PmfS%8-7$Tޒ ?dtrތ` #8GK XWGMϴtRu%1n&!3/"$u~{ptgDcfYQ fz(F0-@LmI^Y%țmC[ Z^ °98+ȝ30`V<`ӷ!#~fWrЄĝ{s1.bK.K6dwʮbH NTAIo\um7 B^ϯmoc+ry!E/1~g4#$Y]ӺJPPV3UrHCӯwU+ yJ>|nl4_Wɠ>K:[^ -$tYn11vMg2kدG{"H,gqGJ-w6=^R6t%F孧@,Zp aJ,*x˺~|yJ鰸 $D⣼ WzZ 'hC"/w<$0:lJ%p]Ɉ?N5 ɜp|\q_9!&m~vvi4ֱeue1GK9 T\!/v )^|#XZ7Ӯ8 4*"y"sZ>ii5$BUW#K@@.sNhoeL72YS!KK K{)iɍR9[zXծuGOT2pXXb|3<@G'@\S( J,]#q+ E #. ~UgmN|0w]1 P̊ǡ3')Tɪ1XepG dXPă8?1Lj&7\?L+twc(B/!zwgq`Tz ";zƄ%r  yqx ݕEgHӱ:?ޟpUn1"H KqYy8Ci; o|j׺*_6 >ou4.(B̫UB uMAXɗѧip l=>ٴ@>9X9BC33HӫE83iݟ!^rQ+$U` >4616ߣF[xI}h"BKK iUf%N.ĭl)~m +'JY EaL K{T%FXuo&un:Te~,#9~#tiVү̰aso~b KoZ߀V(`g-Z=I땱xuPhJ~^=.W]  d?|fq}u+5ւ!Z[ <)LEqP2WGQ+x"E1}JjsnCT'Si(NdƔyE[|ƍ{M }t2c@3q0{ `;ȭ.4;ǣ薷j_V X] ?`:(+Z)r9YK|ѢB8m_#N?}4|d HrpE8}@Ӳi#?TV}H},z/7G P.jϦzbq$7]Q𢴽aM\GiRw"}U?/BbA9b>r5)OL?nHD@-''XwFkӳ; =W;k)n#+DŽGtqF_Orϵ1>ژN|'nS㋆ E1$^4tѸSsPY׀,ހ55ISH岃#b9ZUaP`iق7M06H"J( Jsju+O|'gA8|^i[ /|e-o rrϜ+j<$Ax Ň3Aa梐ob`o u~hPm>GϸՈa+>U oT d4;CTTӵ&J:/ 5ݵ. )Id`|.#] !{=3UhF`D^~Qq9cZzh)\F!\&\7U: T`3],w":>ro0!3n*K)T&R,). Atp,#)RPn!2nK=M;.WOdJ3k?Rڿ)#esڔ<T?)=,aRS +7^$bX\.K#\^3/^𝭯%Ó:`RI>s| YIa&*9OD+*^ZZeLfEZ :,vϨ]QTrNf³DlO.eJgpdߔX4~"n`-=w\ mr5v>9|/3P"-njrL6=*;#&l-ts8sDXlnA.c̵vQRQ(h`I{aAX2 t?qY' gi=㾭kzLi|=ǧЧ+bs5/|L1T"N7"$>U\ ei7sLxbZ/& dZ$>:/Ft**EhtAyƋye(S%qzzi*Ddz 5,щrd.)/@o7tGK (cFxZRj/_vr 1:>ږJ q\ *n0}QfE-0t{Ogg m5Ӗޱ"PmHG)Aƾ+EG[`bJ~|3.9~ڶaqɥ>QmX+ZuI=Td~כ1eUNyEl1g3GdfA^'ht 6%|4+ vψ97ΖT)@S$ǜaB)W Nd9X/d7sJzr\P xP3PN$t-Y9Ec8^! F?cȺ> :F汫B?(Ɯ'{5W B=U{^? )$o|.ƛC6D[H르 Vð`w$!~5 #q:lV(&K{I/:2RI¶ݔQ^V0JBene ŮOƢ|}+ }97'c7[ Ak\fO3voO%'7䨸hINӔ7נvq1aW˵;ٛZNas:1\ߏAq `~ NH}.k41Ӛ` eψ!k:(+:A| \[}) _3IJ h$ZO>XۏmWFdB(tӓ2sDYm5KXN${bUu~LjXI|o-|كnZ%Bz |h3%ԃH O%*8?TDMRnyYZ*ދ6"#}IP? *Iz xяꒄwʐ+{?%0ȃwn=hi%Cbz/T iH-5tIo]*~a5 b+dfgӬB itM+H`u* 6bPm6NkЊ~#_nf(ZKW}>M'땇PŃZ_qN$_ўkxxEBiI6o%TY޷+n -iJq o`?d:.PF>'fďe dh,)-V}(}#FJ1 k 6~d3WQΎ>o0w&mQBG;z= D_ ^q-ׯpnƮw#^5:*?*|I$+ۑFIVsu(Htd_|# v1 Swq jҹ> lV |Qx!}xjT95nTmUEȆmPˤ}ju_ɀrE_vq"/) < xqKfkrAɽ \νR ƄgsR*/:9s!2Y &תsw +X4g7֖ $6ϕKL\&$`*۶\&F.Wҷ5sa&>PX@-r!Y(q-ߓhE?9?~ U00<|PFu;T^M=l^GL7W7MЬ$;7i~xʤG*`} uKszsW_t2HP`U6R-9[?Ut섴h90zߦ:8\ 't?=)sF{)]*EN҇apODb63٪lY[p SтGpXz\ə ǩd>%PьSB+Y`^s2;ԑpc\8ARqy런068H5&]Z]8S'Ü3[|RP,oZ"qCŇLN=QUl*l8pel.ߪyn!tr!̇v<`;)9!2H&KY2Ƥ(ahL/56/\C]ͧ n[Mc! 1luE7dɞ-RnA/bjO NLqO:w 6}!EԿ hÅF7s@`v6B|)_^vjHzz-˄Smȣ6\P0XX}r}8#">g%i|Q9]Z͊z4C5۲7Q/Wdf :%:;#\FP]qF(5/ݣBsQ`R4ǘ]gW|1ڏ(?sB yē±瑖0QlYWZ A?ľu{M2b:LD>EC@q":M d^ID4DX&^!Zilhhy^W l"`ݣ+rP֒ѵ/s|ELT*ߨԹ[3:i$$dvNH*Eϴ3"-N}bu7Z('yy,q0Ml"fʩ}Wտ+pok"mrkai&*q,qC晗:"!j7Rh*{?sSuw7['i 24)cJyڼ|\mOXvdsCBEyLlжTR0D*Vv=lza?.0@8ɢW.2+7 ñ+8C.tUC:COTʎMh3GV\\s`]boÂw a:TwQܙEd! ^}Z@mƿ9sՓU Fnx#PW֓%\fh%IhPGXԲzhҔӛ ? fx]~8AS;dZ" PT1ˡ8w~' @ ZLĖBu^yybM+ʩEs(4D'*\襩ΧC{ !2d?zǤu2.(7xQU-(\ikr7L(@\Cu>=i&,! ; MieG]6jXxJޫR3@ x/IC ;a/\%M 9u\Yvn7x~Xn*5u'0ΤٓR?sJ%v2՚&BYa {rjZ vSҬ{2)# ]fS'~۪Syi˓SL ["ۨRj_6 Z_.tH ܔu8FrJKGd,IxNһu#iC8&mRCQ{RbVfriM\zts9]Tx "~o7/TOJ66<4({QZFHx} UjSt(}nimt ${UZ^mb.yh!E~D hgXS}\.{'r]<ň}!U8-b*0Ȭ>{U%U6%[G`*XM;׽5ÐH29"P+5g euM:n6_1 K0sk8=-[\XYТ[L 1̻"֑b2lSz?Ӟs;Se3f:gca}Ԡ8@gGjK$ q5ߘw5P|}ˑ {Zݵ6A9:?}Wa9{|C=]ӕ谈璞<^BX>~Ih*K {sYX\k|daߖ>$y13% [td&[M\ݚX^Y0q<~Ké1m ,()z [˵4:nPrްNXP!Vo ”Vj%QY=R֤uSqE5t1UTի T(ĥ߷u}A6L[>Թw*Nu<FݑH.;M~O@MHxq:PW࠻O.Vp](v\+( "c3,PT[y>ۤBq\$^yBhTtnPAű&Ķ"۷!CIwuwh[.o_T^MԂ#7\f!w ٌl.~6 TkOt}Z Y*_O?8F+3g2iha]k2[†.d&{i7EvfAM.z>+-Hs"#>>U(|Wkf@R#7HŻJNpS;Ny"$P+/w3ףםxugFA 70so#u] (-{2d(;l" ;4}238֚F/SN+;+ʁ/IK_K0CiP9.,n*-IZ& x<7b[ٚIy7*<[11>}$h[K#YR[YW{uVČ7X-ViW`Kغ;%toNP@;" 7O\Njrc̡fj✘;0}<䯃]}%Ȭ~t-ҡ|bjOkB:;K5?+R(LzLBb.%@aȗK'rT7Z\| <2f(:;S:K58w?D71N$]!v͞C\ɉz +Vզ>`y&ە&zE>ڥCe.[HfV*2 = -2`aOxɓb븭O[;odqPGx;v1MhvJ-3{ʂ!ev>^f AL*Қ>߶Ew]9xv[zwƺ㪟# \!F绡)wAc^`A]gdWK_AH\+_ +4oh FAWt= ^_ ף aqcl:xYx"6g;U-18mCoaWYF\`ZL~Q0Z/SUdv-"((:&hލ'MQ JFoVMA!sg,ys`,#{ cI%Msz(^BDYRuoQАAZ _WtLd%k;A uLp4q?lb~}Z18/ϦJHȆ(: a1ra]]ttZػ+bLiB7.;hW 9.Y`% EkOWs;ޖ [KIu~Sc@K֨QAlGxAomM6`eReɟ-Vc)ELR=rmCe82@ eZT }feK4Dt -f##+`W5C{[y_Cӧp;DKm07|g>R02Q uk>7FY3"b}uup*\RhTI{eƉe} A%͵ u͔bj3PUTj.Pb83-:J_<U1 6xeW*H8/b0dpSgU ˫఍x [ ߙTGϜ4c-|CBp+v+D`TޤLDY4PEtMkE75 Gkby͔"5t;s 5JKΉ ZjZC7.H^w2|0O iZ:m=' wGVf&a&PӬZP敂k}Eq#)ZpZ|L$%pܳRM//nr끖-otbb~;:cj~BX `@imtVDqr t輺l|&`*i>RI:T@13R ogFM{~LVq/[&.| R&ۈHiaqJ߱bmAGl݂|笘)X=jlqs   o'*NVeUQFwn/a!/Wo>\~©Lzsm!OIb:,'1tA=Hze4%j5Rjp4]ʕ`ьheOzJ}gA6coZpuPƦzp/UX*|ПQT W,w#?RrȞ&6{+9݀`+Kf*y67/^`8\xV>{6RNzZ^S 7Id:t^%VꯐcFP8l&> 53R4凈rzJ+yzͪ C#-|-*HrLe}3àlDX_ "&0 ٞٷvl+{$Y{VxY%t,DL^ O.N$h6}g;U$SoJe:sHv-<-Ųw'/z#v[`{IjJ IuDQpi!}|9u>勏 Q5ri=E34 9d"@)B-ws n x)ؽ#PIAAe$}fK4FByUU :xLo0F#DK0-ҾFE}{Pw6Lfy&Cb'o14kY(eٍG?e[g] 0,5RON> rۼziǎ|p&bF='!xThՔ'wmi#*Wcʅq.LsNa(]rvtbu-UAG )MJ/o+>Rdđ( {~%< j_J+{za  r a@Vӓ6Ƙ4mfA=?Iaexu]O2,/)-F&z07kAXUˑ(GMnv&|-e1)]Gx꭛.*H 0ǏLwU~,:EPbW$_! +hAuJGɞ{ L^ !Wd5hm5偟i;$8&7O>~_B#ܣ-L@ DQml^mxsBK߶MRk7\IlIE clfX)zOpBrH_G])7?<%WX }0_D/vj"-E>0PKj)0W&.A|O7%m̖Qh U%6|$./T{i[ Y nݚ>+'\0Ԫ; '򭖩%dž^9ъwq$܎,E5b3*NO{չ?KʴJ{LpMt ={̎qkWDD*NP@bcƏCph I$ ֞5eF"ho#B9jgĢ59XzB8?FF@)&7P_ B~QY;|oWS1!_^=ԚL0ܤai5=NmB= Y]JO >@{:Bw5ʷ2P{GjWYɕY[#:!b?}H+pI2jʠ2Α*) 4,gq+nI%gh8VvۜQ1L2;W7N+W~_Re 4FL ~W~Q% Q]Ɩ?[?gv`߁ mAc`"w9Yަ='fl\Pks7:I DVoe7:Z$,!TN\mYq9MA.Zb !֏$9#C>sFN^bV^ g.C#_3]^!Iv؎]UnO"8T І">GL,qE :,w[-Ē<_?fD+#fH'4YhwG|' *ru *"*?zaIȖVkm|P`X~O$}ܙ:{[z_h$.0QI@(T3|'Qf)gzl(.NT,z욫-0aF_QpE>v;7d}݈\ NCu+sށNlPQ!vJBW\ӭb:F:u0&IhxJQu<5T#!axvaOHĝ&'4NZV*O$\+wZpLK@3nS ;[תMC ދPֵ0@Qv ".o͐Z,AJh0 tJ^Ό}8\,捓XqFBNQ{9GJC 1`$RH6ӎ867vFhP%h(Irhx;+P7 ڱE06kn€3s۸҈ilGQc-HN;]1<n4-Y@ϋ͍C*+{}jLyz+\PLsGe ho*Fƶr%tOpxh6_ A(*2I]lNr+AݑAw_o%iA$ 1N]qOSͅYT%(H>6Y~Ԝ\L4!iLpk縬ϹjRjoF5l^ϖ&p/Y]2 C5eM0:$wiͲ^BT8N/+n0 HPGWZ*B'U򙁎|`'Oy75Lygb(ȰoTG 2" f|i7~.;4 ll[0Sŭ?^#$s)sO!@ J_[ 5jiY%ᅴ:0}D$1 _8O\ZḤs`LcwJ#Gޘ̄W!Ooq;^]-ڃjEMi:kY)L-(Q8p氵(gE1.O xV> 5ubC\"Yz]SΖ!`8(Fc*umݏG½7`&cKP=i~u(BRpX)i.,bNmh}HǕC-+BKXu~ܝ:qqxx&4v2s|؎+-kw  Q<`[Ep!XSC#|޴^3z_,egW x &WIt%8K3*S(+1NeFIiWɼ#T K%^fxImxqmPn! ?LR}*k8b-[p/G{#Cq6YOۡZ֢汢0d;&DII t&S:bȤ%HO쨜 ؆֧\c*P:&,^4[zcYd#q L"7HHWS/1LKڒ2޺2 F֗F9@o;X0 pYi{g1hY1dfZ?8~Q;[h+4mڝ),OMfL>rlXoU7SݟꐹSR/ɧŖqYr9 {'Mkn"8 /2؈)7yL9Zφ/YL4 R k;k`qcs_j1[$kDyؽA6C,Jͭ16`{e&w#u"&it"=gy C,:ޢ(0YdAaty.4crVDU_Xi]7 N8?:@2ZzQmU}Y~9@V) y\i!Q<2'6KHzRpH;@. ]6_;?w.6~޾5:3+oqgBf1Kb^@?S$hV~|,9iު"Uʜ<)1 tEv L _`tD[<訤ĮsQLۯLn(SzmANv}6pM6ZfYs/H]&oong`Zwc0O<#“H+/nb¥ݙs|}VψYmf~ԕ<џ$j+>;}YLy&B?;'d@,JJay"{@a8޽pJХrru6-/*e-v6&+Q05|yVfWp{HZIv}$E8R]LkcdR8'pӰ꼸[[Ti]f݁נ]#&-JIЕY[ncv1V%} SULXcԢc&Pz'H~xGri5 yx>w.V$3tgxz3,'0R'2 h"'9j߿Xf ceF[ &trhńJK=j\\;6+P.N; )EJ vP$U:GkA{]p_> bseVʗ}?dE ]&zP7e?nvIe{_+]R|8{!12Ѷ 6 ym7$?la6 < )x U[Ĝ18Y";-8 ~k!nGq7I (gU4F(Y,'&(93WNbf/[>ZS6+sC,— 9^Yee21M%ͭ+6 q]Jy3㰫|G}%ʗl5=˵xl $Ѓ`ZC{eZa:g]+*~miDq_p8񡄭,R=]~Bb2;l,r9Cu7t3mtg iݶwo$b?3t7iՎp$gs] %Cq>w'Gx9$&nAĐ )=Zl4((o/+(|Qw5 B[h_;qb#nzt60ȦR32V;zOV( 5ԡkL"$5mwsȦ ^7H H[;%F^hscPA܇h&~뜷f!S.{(3x5@MV}pY]-zo97BY],IX^cS-g&%|GjXx'^T>}Q*"\-NmCx% 50u\ѭlѣ4ϑJUn%?e0Ow.jiݠ^@y*6$ɮniύArj!~q`~h 5P*vpE`%<GwT}gG&鍙fptu];A-teAg' =a-F;AKW:V5"z-K8ͪewRE' H@truQ_k+(֦&R1ۀ7pM睊*\.ڋϣ&`n9Kќ^)NVSmLdJ{0$ŽUɜ[2>ʜU͕D&w!Nk/JVZٟ@]C[\;hs#7W2ֽaN`Fǹtʍ߿ gDOGMTBW p s(_/em$.n4֦F`8~܍(ꘉuo^[=wx-q1ZU7{n %>͂T۴|"^nԯt'@p1OhGrvPf1)pjfkЭўu-!)X@T޲(*P&ذbD~zX{>kZL@BӔiw 5Saz~=Q:ժ -"fn v8Sgjѣ}a C"9szy(`Mbd*NV%~sIw 0>mjͩ8 Ks" PU(>p{.^^sjBT^off)GB<0_2O>l%ppVۼ "6ȨG6 zmsܫM%,QR>v[(nj>;B|<ʉ5q Wb*QM2N*x5bhm 'M@G4 ܈6:r&xP>TJKP';j[C暬?ضm93{m.N!-,h)Z(5Vwˮj^,~;e)~p >S͐V4 r*r: !]*4w;q3|$^ǡ񉖆dNRHprP1ZYk'DO⟪tTQr }|:b$[X|ü qsc{4 FwOMÿUƃGq>e;ypNlT#rQzW${[BU(2'=3bݛAlB{J ] bwx` R Ԯ]`s)H{F~ԭB)E|Wq&C˪(]4@k&GQyb?d8p Zx9?)ΆepFnI;6OEHX/gj}(D$q i}=чoMeriAGLڞiD d )< :Cեv0gJߡ<#WXeJ{1 oB /x>ڸG L\5lt.̧tk"ijMvx'ԧ{@>:כ3Ъ-U(jU,keqT %  Htø){~]pXmM5*Yz_ǜ1t]qZѬyY'/2xm{X~)e*,{>>G'wv=rZT)Ls}6ЅS%qBv$a̢.+bΙe%!{bܻ6ԆKgtd!96?uG:6Z Z7dNV< H&/䂠2Vwi'Yҕј&')gцĐ.$;[~ M0WLܧdy%p"_-n ^ԙ%^ғ=d(֫\RuFu @%B%JL @!jzV1uoo\x,"n [ą.mcCc ?@d nW@UV{ʃŇFᛜO~P[ŕU"ߘw16蒲:o1qAΒR1Ejs 9n?90QEr͏Υid s!e72L z!hŲ s{D~pwdZ͐ H SaI3jqIxAHW͕̓3Хp+9mCc1 V AM7*eyRxї&+mǴ00]$rlsËB%:|%@ԴR+e>NRCв\&(g9.v+Lc" (&$Uc3D>+%HJ7A51jnPepQj_0F~}T)0F>&陇TP1a:+~YuǯUP"ZMqM̯DIH2YgoW{C!ED7iZ*>Y%<,k Iz}7(O7J}NsDSL t %*b}H+/&~m rFE^փ"=nUW8ҲOe Ѐ=~n~0JT&X܊AsNI@)3#ܔ4MI G||V0ДøXj^rj J]\:UBy$( Ǐ菓'FЮ9&^Q2󻎺1u-K_=H(o뚲[1x<͡)~;o6)Y~ mPD@z_#i`Dٳmȡ7Zc K:(*49wn3C(SQĭwc ^d@Al1\RС,vy[VLER`+VZuӒ@Ge 2vfK Nl?@8,%qw6Zf"و>CQC]){i"gwf~\Ôq0Ӫvj#iM^TjTpya/pM,q.ۤ #pA!7hPփIheYfw!?Mc2ReY-nv^ezNYi\R#C_b3=Әt~6+=dB⋒CZ+ j7C,M~4}(@?HS^>A*XfJ56hRX0 U)/; '_$eC}^jES%zFp78m`B(nKrYGtpkM*: _J6UYZZ;h47BL\Qa2܁ueZ߅ߜbOZ6"O1jvHl]0M9. !woʛѤ]h8 ܲqZfR- E{V+EYy.-fW%(D(ew rqyyHץ~fp*W8,ww7 p|wOE63(6 2 hg|9rn30OGj|]\d,)"NDqk8`[;:X[j,fcV/%Q#6 "Q*!laO~;TIe橫{C-k 9GO:'w-êhl +d'>*!46$xZv-]J@`zVJ"(6p 30rSQ+xaa_W#_HzZ1'#uXY'߆3bߊd hv q:DL\B'4\KAu#HJwnæ y04ArG39hx<(`׋ yOϏMT(Ew7QPX2B^7&7|a ;i]z|X'އ={2vQrjdjeięXJ%h ̉~GV)a'IXAd v@FԱ)=\;}+d'ySU(|܎z +YhH2l3i0]Џl|J P^'%]_Ui&p.wN,5'hF֧%EWX|ՄvCJFa Ӝ *|:;JNjXHX*7~H>1s7E$iN.G#y/ï6f׫?3G`Օ-H }k >XP?LT7 Y81Ř]r5?!WjtMKܜJ 1Me H9(S\ (=?p@Ep#H*􆀬N |*j9& ُ@w$dy֋6grhB,_ *F)8:b-[d5 paI%>rqy6MFJOk0O#C8U>T*nMwCCa BRwpܙJbQp~@2l|]D nLr. a[޶qMJlv(,+,SwNR29%;zN5j]ΝZ Y6HD;5h2`N:?L܋e$jޏ>.{T ݨ|*CShXG%!qFMhn뤠"d4[s6%CK{F~n4Bt'7(æKfNnz:5M%/UeZ$Ufp%ضdj^~o4;8b*'z$uvP uX_Cڿ`^n;\ _g Y ]#NH<c0u:w }ڟʾ5#HHX{i7MR)xY Y ؑj z G +T{dWVYzG*ir0r"cRT1zVw~'N=п*&Z/S^tx$E?Y`R< .wsfZN~( Z.ar)֎Q+~Na,sOw_N'Rܷkm JR57 Q4DA$bv w@΃n;^!Ut@m{S35\ ·F e0}[hw{M`6+^i1DaiZP72_I" Dh[|8\ * vFnի^#Q^xQbk+2a Kx6o*`'[0x߅c"+Xԉz `fQ1Ό癜j`< hީgG\֕LӫǑǀ<`>Zm+xQxaSJYۯǷyI6]G5uLօF].kâ{XtQCT].U;%Pg;{wtG!2Xwy#uqn{&?veHS+Kt^\Υ&ߦv;zEY;Wls !R\e3z ;B*@w0>]=$HkM~ 2Ӻ}AvOH!xsG.^.g>BnogD rb%ejk[D0!Cgt NV$kOڇ&q  K8mcO٥˯ DŁ+/Ig )!m3"J*& Ksi=gWwniopٗm*#{YY/7i!eS1𤞲'3n^|O=KټVj=+Qm?(Tt6Uu6F;K)~8% '&M$2[[8O \ Qn]Z ~rd*ͱIe唂>J~ZpE L 5]v 0PZl,ɴ韹k>#3fuI,a㱡''&$d_~x挋^W I8ժyGy' NxpKb4/&i&B WN:D(?~\H h,צ l B9 AZ톽>tu;`o%cNlmn9ijT?0E@Iamwz&YX?RHL +|YdGٟOn=ӗ9 6Lz«#/ߖ͑ڛ<ݲ>LZNW[J&G]bi{L.drrUkv?hmh}qrjxfנȐDlQ"Dכ"KW`J͗Zƙe[ 'ep)>IB0Lg kBzOce"ӉFH*~%G}:T}^VoE(CS;kYixsBP%xJf@v "Ѳ9L!9c6UAh\$nr\XZx.h# O\ȕlcyVeK3EGN]|?l;+ 57F^Pk\AșXQ49׵ 7ÒLYMW]$-(7xW7-ƫblIo M!MDBXM3v#[xN4mٳ^|=]k/[FfF \^Ik"4 R]Hi6EBB̷{r44z*/ՒǬ-^+*-KOhgv(xO SbrM6aن+͐yB]˭gTy}5P94cU;͢+)M$g-q} 9|~pCuws ;6]9Sm+Z$Zk-otʘJ7"̐oľoݏ*驷^_aK7=f{=x>pICFUބa2ILYI$u\=l~[h'l,]7QMF|{RE)ifz+9Ȝ8vPNiŗex?61L>֩0j {S l%E߷jX~&h LS:PGp|1~*TK2a,TF~u(''k lzvXRȿT@TM,'j Lh܈0{xqƄ<ժxL}{QkPKOyâ?.ޛ* Dg$YƮb>A!qԝwY2q Ud\WїSV?|I+ ؅̄QKqɦs,~Zz:d)hRK oe/f>E?1^""ST-RoB Up#6+O0kA]lL}4@r3rYa2љmb]}O?ڐOp\q!$'tbࡘ@T$*EJG@HD+Zn(V!hW{ȰKz:=Ut@ϥ Ba\WVuqY|nDG00T332J@K5\PqCr]-NP@qᅡ> ܩ~w^!z߼]! WmX}k9j$vR^N.Ca_b<7k c]tӶfd(!i d;Wԟ/#8:/+SnLk?\ Ech ^MdSL۳*!x4C]y"UNwx+T\~Dxq;Do'< ~j^۪_}7vV1LbйlB^BH9sQ2<N g'Q-㭀`}KGr(&'H׽zDG:t7Ǹ"sQ `w(uZS̃Eig;M0d T5h 's(8Ju4 gclLB~ ӛ{e,fڣL4b lyu\z;ֱ^\D_\'%;uETH*fmGJҖ2RYdrߥocNm.虦YqTN e%ޔʁpܶjlУiTjEވV!(Ff~ 4DFF򚠎ktv #9'yxDy_!h7U/Mg,"$ (x-odK_n J tαX0gò㔿0 a{NfS~wשZ8 --P#,KΈs"N+1 #hr'Xrw_Wouo(!\~\^Հ]i W6&UmKa倞y| %^v=|m.CXPpE?68_HO<9ee"ucqͦ!aCSM(m)0j.D#LdL~%lP = dϊf+tEݑp%C-W;VӋv_`f Oq0u[,BSXK߮'Wo)sTR)"f:EnXRs ʾ pӜrR|h;XX&ψ>sR@ T*&1ڨX? 帔<pP؜vt!sHm"9t%CMD|v"a'ܑeGrn& &gӥ #'O~{40qyR*(jtvCA^ɰ.?͝Füm;`8BȨѯWBΔssO &|W`r$g&_ZSR/s33{gmm֎` 4<5z52$u^k}VzJ?du_ѹa݁f=Ϙ(4]W|PH 5 Œz~Zy#*fH2~{S=R^cDہvL!K,D wC1E׺VjGϾ&LcạAQ. ۅ0,ߍbî'}Y *Uޛы|%VPUsL<0#5kk~_NH#.>G% ~?!ZA$aLͅu^j9vQ7 \f,Ѱz$T'F1o ɨJ!~ &5''\ =):Gj僵C@zY=9BiG_TwOmi`p#GEb朱>ApPu25%͒ACqO6-ԃv0jS>kך ;]j;_ p\)RߎVPQBE`S㽠,0M^O!])Ǚ#J]ቆG3bV:`&3?L#3ug=P~P?7m<L"a̭r( ꧽ!f?dcv!/.)5g.9ZG' Ia\/*`*Տ6V8.vjCvk<JiAC;ef^'?mykDSb5g}'\c-~z%б4KVaz Z6z03 Z4>g'U0Apªxly,`,Z2i2kUEPc!QCFzjuONDe3?h'~t *kQq5tT0Ix ц ;ze3QoaMΖ._HdDA:\5aho&oF ]EuW=Ўg2$m-Vt ԭyN{*;S|`;"#-٨!@-ЂUgo&TnZ~b]iq^<2!V݁/ }(X%.xl3礼pԍ%@$0W9k佢kb)V8ًs|>G0 ;ũl lO&Ue< $z9`ӫ4zp?`Eywj~O, =~ 1PNPچţ4NSJ˂V';Xv|=6Nfm28Ջ7Tm11`(; G*fM z+"I<O*g7=e=Rh??l XWASu֎p72srO -! +Hbg[fuZq2_ȹs_5QjÕ{лMS |mS h -EE䚾[*gC>&\0k,A$w~!*|LDiMpɿ- COxl4G'jHX{lf>YҴ+KH< Փ%U̟IU Oyp IEEtEHE#qYP&&Fk}6KL١'ԧw<K+ݿC,ެ8%ȼȱO1_‚Jf73Ki$(NJ,KPђpqzsrOj5k3E#HPTLD5gz SeGMSB*4:DD56G#8cuƺ}P"Ee`_jcuOTu=H\Բ,~ctP*s5vCoxF@'(zߊB7Nos?_j+&*5v<|:)1mz[]j=ܟ%TS@[ܾSAnhTP|=x/h"kQ njKMU&f$#U1^ЄzǷPc|%C5Kq&@58$]$mKCMrV/ 㴰_SŝDLymE_ ޤHh #6}FpdB bŕV;QB#03 ܪr1 H<rY7l.h#vw-cesP;\OEؐ6ߋ|:*i6L+LvSf7S~|c ivǫKF1~&k̎Kkxc+NG_G^tuCq2}mdz[@wlk7n0JO%%!Z jGf~g:h; 1K1J*)[qZAzTg`-Q,Eqڳމ#] +r2MJ YS eݨry R 8xnЩƼf9R1VcgZGQp-a:-ʭ4.:8ꁚ|6g#Lܴ8F7mj$_LƃO5Q"u髄,6KT5 (G,ʨr͛uXíh;leH["PY#I{+ cU#MhHɖGj"m/c՜V2h%+ϸkNjM/t"V0 6[+uJy[j0E 7D suGK_?1EV C%i?W0G\6 VC/5Cx9u?+u強rV5fV%^>] D5jYSܨTgMՅ+3`ojf0bQŨ9[i9DowK3iFϊbkGlvp7HVkѼԱ߷Ytc2z[?Qf#=)X7ojZ ym^s}d=[J B+4%f95{i F_j:Q)pC)$*;$6PK6tt@gel~5d.%N0rTi(|mnV&?HI BZN]ybxG /sКўQy{ٞaӻF.'EEe6̎+6Xu*<]rr(My0rv+|n*OE#A^Ga q''$ԑ [zg䙲s?‚1D? ZKZpH),djC7U:vI|x+ rI=j2\!)s2'5j ^Ob^$?>|UTdZ $K›0ە;gmϧpel򅴕jA(*!dHAn(aA #bYuJ"750]SjPo -RTSwrL9K:ll`ힿuʒUdMh mO[ehh\Oh@y mSS6|񙥕Մ`<'cX)ԟ[eҿtS4;‹]8$ϕ ')1qDi7_*/d0XIJ.y=K #gSX4+=UzlJiW-msIP8'ߜwAw*#:CΦ&َ)jd9([ŴA= :3`+12ٞlB+zV5p,J =^*Kɜm 4rRPǥ{斒6<;x _Xҋ G$0^c-r,ZGC8L[RGT<gIslkޙ4BG3ISbZ=ҩ8F &Y7g (%O$L05B?7^Woށy)0">Ij9.3-򃒧?>W& C.\. !1 5>qeQAȍЏ%E4vyh ړ7$+D'gaVjB r=i;6![Dl(X5Һv蜀db!hT0`EHwѼ q)e::dWgіc9<ŧxĀ7xk IHn~s"Ii}DT~uXy:S38tqbm>T",Xt'͘se8N5">' Y>G)A` Nߏ P .KfMyNT fJݺqI8[Hi5wd\]`YZMOY.xb<~X y "+ s{C۠x^}+K7g2MuJ:bI/?mرOVStHؙ{˴E É-¿Plqy gBe 8W5Aľ:ֵ\0n 9U 67^ҾH (W0Z+#O%w&p>agI`iqG!Xf }%F FY֙yb,pؤ}\&8S0C0. 3i͚=USSGLFJ]&fOI f,d_!bZAĚ\܁ ~`>pxSWԷdV>,4IP ZC'1ԧ:W3A3$$:&?Tgok+(jV=4܍K]쇵/gHVUMIk2O[tXh&xb@ 08s< GBtQ|#E[dM(/P!kOЇwG[ZZ hSD|!PH(+! PiS1𒇰*L=vABW)fHTMa׿]wT 1 I4 %mg_&F Ә,1_{{tǒWF`hg81םcQEs5Ur*ȧ/PB]oD7za I3Qw6K`V*Jo?'-_,{3K0^r@} ,\ RS-z: װ&?*Iu-[.SP<?vpN.+d=}Hjcԝ$/Coɮ,Vٷ@zB0]<{FyPhEC?`{9S/t݈[ig ]xAL9R=)'t tr/ пvI]%HJB$xo_ҍk88iUeuo L"0d y z%EVUkw%lm)_N^{+.(ϖvks Bh+lxbA1q:ȀȦ(Z{Vh]-R{}h{qErOWgQq ~]%KHy gD>oZ82m"g{3('|Onmg_üh%5E*!Y:XݣIR8^O/0|.4ZBLTr8jc]&v.l3ܥۉnBﶕۦ2UހhYdO!a;kydW9<XnȤ 4Vey_Ӷڇ1'bz]fͬ1]{_yڗr#1sKL%67Ϟl^ZS8SmT B0Nmbx,D5OTݟ PȘGH޿+RR)AƗa1۸3l*hsJMDvHhvZz{PP_z@xQj9f&D@uap .Tx[C"mDR ߫!!ocNM0TvyqNUg=Vz0RX+9W@?#AڈCR}|1RgW.'A[Cv||ey`}%j](,ߛ @ToX*8~Del`fƒH :+Pi,Ϲ5dTt,"dڠfHjX(~s@BtVvD4.x{Q?}Q`|h]Xlg`Жzf9I# qk/n8zd.]&ʏQz.B]rʮNtW db]Dw,–hF%='Y7@ 8,7"a-qxA P0!xD8wX  [\4߬g2UhZˉnW [eTSqG#΄ەm$Nqm$!IJWYµJtlř峦 O7RtXDê/X{5[!UݶGc^ce)ZHiJ`Ъ RRV>1i`XfZVKpoB7jrb/&|XMѝ˿lΦvTq`QF2)wID804g]|]  ÄVaGA Ӓe@i@GY)D<!~n:@KZ9"qA%ueRX̚vPpI ZarGfl-F,iy Ͳ"ז>>,Wޭ<5/y%^1#{_-k-; ̣_Pߗֹfo41 g㔦澽 , {nj} VO3<+#;/Xp: Pa͢ت;?A=L.z-Cc:Tt^:͍:kzvgy|k>\_C_}/Hu۔Y C1#z? a3!$@4h x@\Ɋ#,lZ(()~0b(H $ ?h` ]aP:V" OIrIsղunjӝAFBٞ!E'nx4jI牏CFx%VjoRrP[e3@.IkrpF %TYH0G.DovcLxaUMK5=`nq/Ig }lkxx@ۋ|3 E[{hn4|*\o(3Lr^G9H_&8LCS hNɺt/, {XbxiferZrP.Dȴ 4H»cLJόQg~A";Jt7bVGS*?5)u!Z륽':]x[wRɻ~ѵi ȔV6 R+9el#m|0|.xDQf{/@ -P3c^v ðiWGѭs4.&oR3* w0+fclbH9v >{ڎv/7 WUΙxv>trӿ#ԣBGK'2p D!)uXj{j5^OLr<:|EXA~9L6ҫ|(kZ35&;}1We'! 5ۋ|dÙrF|nn0DlZ{ 7$gAQpJHT&9>&3BXY<7bCQZӢMfxgi9,D^vfx4m]I( CN|lJY`fmZzr:$:$)=S_ڼN ؔp%uݳ@tf7`<ڗ҄x& l&Cw堁=blZH]$Pm^. DrdB]qy$8y q3yA2& SD ML\Y'Ǣ/)VAsMdvrjWNn%[WE^,갶aLr1nl=}JeG iz Tzw]i> [Xb+`<֧VG*Њ9Ⱦvk`-̰A~@2I9%Rs!e.^5:# lOh}h9LuXФWFFpjpHH0a/E/"~ PB@,Pl&%{w_w#A$\z^'8[bi`M+s-_,-#gXqrm;mJ3CB_Vsp[G,׾b~")&pkc\Ͻ3?ҋԶwťA2fˢX &d@N}BO%s 3ÔRZ:ܿ}ʳN*^ë6ǒ*DUϊ=&ze+C19@().[^pEcb;~tgYw7si}1wPS-ŝ'YFiGIЬ & >ub̰{ e_˶VE2yԬ]BlX:V9gOd,W>&Jyhڒ0 ݔ9WA!e3W]lwD샦O<]2<^fjaU+(|i5A1bgWm*EYu+3XE|'ȬR!2ATF(݁}|:;q eU 6mo1Q:7Rٝfsr0 {t0g%:QכXX:0 T +Y`,3B=#a[?naÉWpf<|s˿U?"=M_<֎Xw0{ JHv1Ea Qg-wj xzZ x a)r%Ng?" lD-!5.EN֢`9['7_t%`&/z=OW _YKlZiÍv ^9q %[@GejE44/ UD@o2IUlD- zэ}&S5H KQL_'Y΍Rׁ~"a%/mb7"}|e⡴s@"aQ`` = \UaFL8˼T]rߑWm(6W>@݃g܎;6ᬃlPIk8Q'ӹE[6D)YYGfvxp}Ta\QʗȯSYV'5FjL x{ .bYl; !SEV gXX[eJo  mOn%$'F| ^@V17{лo{ZZϊ9&6~y4JD!YUtP)%aќ8.6O"|j脶=|Ɋ/` I>!җD{L<oۢ0mEK/gtԂm}ObA+Ow\$W&=9vPٷ>]äRnZ]8m/c̭̋=GSjSO=߉ 5Ls*{8on& g fYZXtt܌EAL阕m' ]oNQƏj [3 t޸l+m:kk{*S5~ |^x՟@]:IY4$ R%v؛4xbwǷ~#XC HohGU,LFh"{)JS'u[W19ڢPYw[N_Nk6'OLl*8yQBڋL!{.cmngTV)`48C<^${nxbAL+߭>:f5Zs,|bGj/u3.Ћi<x`0頛J "+-|D3z9dZu_zn] эzc ƙn.5h-PQ (Bz~7ޟcjj&]T5>גo?&}Hj41ȄqZDT=CdtbI+ZALLIZ1:5 2'oQ]Hl=fz9 G3?ix~h1>[BptD& hji.Kg :TR!i.| ~WKgWbʑsH1eo|!kj"6 s sc,zM &aUh%0ߜT8OFcxgLrtJ M>+Bҽ[|v)# ʜmJ#]? [ ޥ[dS؊qG&b,}@gPr卜yR4ߝWQʪ:̦<9ѨYzļqk:(9X [ COD#kၭpzM$}͗ XtY&tٹi+w&kʐ~Iu#Q~YCvEU͜Nx,f]>mkx-: Fs)6Z:ugu'RټU#شSE68G^Wb텷8|hA ٶRGw)&[E4& + U\\ZIt@B>;;$>#C@0ލ,ۤɪ}xY3^Sb/ElI tďmMzCo-q'ǁUsP Mz #Cx.t[NVqPZi.UgJ0>7Ѳ*=I}3*< Z=0LJ]2vܴtp}ɁdAjJ@A$E2&yJNrM)Ln2|@y3C#n=Qp:hC"C<\!@R"K uF&@9;=2{P)TW'fb]Xq~Owtobb>yQzDw'-wq} z!gePpxI_+.?> _)cuZ1R- :n䞖 po +uw^K. қlEAd'hCfkIo/|p̽ ~ԍ†Ip&=saH׉џg1E$.jHSS&5ijuSc-sO*˻.ǁb׊oClz0mLbn6U!/zrIƾorqٮa@@pX΄r ݺYɥ"XhE+Ů 2`yxAһA٪UvV) YJy.E}DFlE` 4lUXyrcvo_|R7(G\0;][RהF9$ Z`^,B6vE?ݤ$BTEdkc )w@Jr 8Sj$x`P~rB7ذpjii$b<-] a"9brtM;nyhcNa^z!5#- ϔSF4^yֱ"diSTI/ֳr7{"߆ ! "v@rX.!s58Es](fg9aɢTmIy}I!Y2UP繋t=#8QhgM/sP$pz?Oذ@ֵ`Am)\E/-f<6׏6JIy8AM_8ZS![^e7rUJ0a j[]@ $WڟtA l/ zM}xjk6 Ƿ&Ot-wAK#˒,4%gL@9ȗ|"]KGsKvpZQg5 ﷪ԓDS[о ?Eӝ@kV2*B<%xO#.}kѓ7[l Mdz[$3xb(!w;z#H?4hC%5jJ"Qa}sS@)T0=YSTxr:%A^Zļ,EY/Ώױ&-ZpsU[UXDǎQ :@bxa<2)_qagȰلf= ]`\׸3#Wx׉?5V4νK T軮9ĥQYn')n!W̝6's4YV_rreZy!7d+ -BX= ԓuq*PSg^G=цF)I܇x@7ݼk{SE2UәS_KIq3ǂ14LZHk&]Xl Bhhɹ4A>Tj$;q,8(ruFQbjQ2"r:3AHSB,#(l{AV*'_"^6:rYHP$W!,m]b1',>WN>`+upk_^0fN88QnP:@FQ]j;QOK2kӔ/%T9֣541 ^+L@LM/``ЂpYDkhݣ:Z6oSyx"WG(y$$ptך[r- gMrGz;rqCpڎ76i2 OmgX>evyTN*)y[΄@ ojc.1q F0ANS~OC s}ma(hڤs_N~}2y=ѡTTZ:?M1UPG>7֘Г\YdkPPt3O P'<^A+;k ų`p*±!vbreuoeF6L*ͭVLwpʅsv~N%ZN?đc*-p#LaB~Ƹ]X3+]  (U?%Qq@0^֢}pD2ؽρdy>.,S=`ߎD 5d'<͒ 7yNR⌭EB/ֳu{NޱH:YO\o̟Q*0& WqÂ{ic;ɴ'{]O>᣻'[oDWRs0 &ۧ}v!!Uͭnͮ)o 7a.u.r܍尋d 2rڡ6Q>]mHA7!=su'&ɹ|:ykC>DMBI_?+=.i hO+~8ٺᩗ;܈"ToYm[56TtƷl`݅W211@$8V$_SB?섇hw 8 kˇ#FSSBY- [t^qԺv9&lENPg.#m&T=v`͵Jw ? AAOC#P_"+o\,sk'giU$E5J+~KYy1B-Nx),zY< -}%ң+ך-715% I=M9[U"'Z"A:_90SE/=O0]@"~K:t^^D.Ӽ6Z%R4`ԛ@!wt4JH,} *]QFF!F`JT;?tFTz6 i^]{Wpyxd >4"P)UK-2q0 $s9"4y_,^^pϋZձEspTJ UK,v-: t;ḠP <j9jHEc(<*G,r: 2 ˟^jA18xbe_(G-b1xYQ 1wW%S'>LQé9bIlvy`Sn&[Mn? m'JlU,۞ss? 7 yatB/$1 4-yg bˮW#3dN3bPj!r cZ!7qGՐ .W!{ KHTh`|^I19R(d lf P*֧WYYj|d]u,0!)"xm@88BZU资;0 ǕsZ_e sd[UVُ*նzԻUd:DB\&2[=N$ܧ“7`7O {5so"$]=,*#b)=..ބu`z̩:>w&jw@|jPM)|( Y@D;wD:+^}u0$ac\CBZ@HńgoUr<6QtX¶uӨ%kn %J JAgq ng*qƷ#U h[=s7_ܑJGTy%[-znGZCB6;y@핳Pb۩fO4^y2l5z\W}Zc= *n0Ze:y^9[TǞ(PFzK֧\sQ(wl"@:+Ԏ]v$|-xx.M4M|' "#;mLЀ((1š-$QKGLv BV&npP ({ -rEa섌;~ŗx J $P31cl4u,Wi^ζxk >a}{8yjJGP&T}K9u?}摿rr`~&/j2%=sT =(StJtƚHS"6Np Wn>X<k-b](˂ĸYӹs@槛IP +nrh4.gQSE$l^=iRb)}˕ˮ|~˥>L=G($e}5 H T1ClQ iz9lqIg+i_>w;>8#2[,ֽ2YEuK pV̖*,Xe8Rn5yQxmUD. B%K61uqZ-)ڛ JEn}q;yC񛠘s:S%jQ:8A5w{̯.D+8oQoOգՔ0];zvzSڗ(M݅b>m0Syxh&N|:U)Ĥ` ̌ށ`ƻ1*Qzxd^y>dĀ'Uw ׿^jBxK\6G;ǖLl*NN9.# !>תQ6{$M8ؼR=Lӿ$ڵ< Df18 )fѻHaqDF^9334K3HZwDE3<؁VdP#9b%:!+e+땃K u^S<8>%- #dM)pvJ[E3Do4KQg ucexULp Z1 f[8! uSA!<Yy u_|mPHki9-` v/t*0ybRPgJ$ڿ䤆#lpt-7Gٴ'3Յ {fQG֯ՈHiҝ6 ( C)8`B_C&LRJrUʠwh:O;j!pM5Τ]ȄӲUhNz%87ńNS'B^,U<,УҤvM0䂥QԼY.fa܊ݚhN3;LjXQ6f%kN[Ejf?>2zO\rMv1Kn}t (-\ŧLYq&k/9M{M/eS3jyOЅ97ֳ1U[{r6*nS3)}/[듙;uUw&_B+>-#n}3^13}%co7 [ 5 "浐i +YLq{#@rڗEB02#RaԚl Y$NVǶ !v?LF3kFC%+lRe% pDYZ(υo,h<$/:x |?HL26Y O:1|P*&9 9nLqӻhY2rT L|)2j2?e:@,L D~Vrkk+*$pQrburz*-KMupC7ͽјZ54D_BڞsS*~ 1dTCzlF0t"JO'A m8hA@ġ@WKFmc)=ݢޚw6.K4k0T6ti r&& |%0 +[,tz\?M}a] A<HN\Fjt5: h L2,Dcht~@y@*y:xmqU^X3 mqW8mNjγsJDlV3KdrқbKFlb+&j7έ&Bs}!$O}لk!꒜߾hԌ]IQ4%^K5%rh|8  f7b*%[tڦݠ]z"(X~ɈE)ZT1d41?؄)G% &9<<;p0TGHdwKl<+9]x7(+t$q8⚞IW^89B؛Vw}-QW/zAvpLƁ$je\lmW7{DhaP^˶2 "뽧O9:h >2Qc>`cTJSI 0Zy\|jQm# ZlU dHou5GÌ';^D?^L@0Q)3F[}z=qUPJ2HBֶ/~XF23M)S[^ :fhaPJE]΃6ܵ45HpN>(:6Cp=@>"9 im"R  sj>&Ix7ZԅnBe8MWĔr](1y)K[ y݃B $*JUuF僠` P jgPɐL3MDZ8a݆OAi˶S8k9tpo0Qh! ˗ZPHzxeoѩ9 %\^np1feE㖀=Z\ԛ"i ;֥:ҹ: l W9Iaت;"qaM|\ҶEnP"+)E0C׼V U|T"3x9#3+xM"tS 1p8b:Xy> ny: X|?9 =oF>vʸ 뚥pϙ1p;dW݋nZMJk.dCB#DF0kZ: -:ڸE"Ó.U\}ɰ.uzȩYo FMԦ uJ:; _< `5s󹰝gW9+ZpR(i 6iԄ0@Rl,Nt+v p1'6?ߪ ωӜE "э\^97[KzS+MH'S|m<5;p#&H H0G.2#osu+8{ zڎҠ輐BU#Azilu/%C߉`[cb=W'똜 m_I dQ@9I0aW-T7=J_ØiċsUR/NT fѦyPPdϥϛ 9Z ZuJHW-?d,hWYMMuN%gU"x>c s4}6QVZ3 &k=k ?!tw&eW;2OѪ"銬;rMGOÔBQG>#0SK7k$bp& wk5Ӄ:bJadZD#kj^b}IJ LBM2X t8?*ɲI0ڕӑa} ֙}(ɮ^ӻ&ױ5x.{*ܼa*I=PTkZ ݼ^=CnUFN_[p=xN2æIr𨺐w͞r@~cQ|gf#FRb'9u l)+A3Ia`faN@ql u]q68nϺ9'hV(୵TyfM;,UʣqEďϑ]p_UaYzf48z/kFEr<^`G*B$F6"/&_[v~ dԏ?ea@,h9]X, γ>0A%#ٮl-)Ț> HĔyXx@C؄S j\SSE;Y\<(A$ Ku z8~vKPU34z 3kS5439g;ۄUҼyW6B4˲FkR Fg ([;':Y̘RY)ɧF*3܇]\Lp<_xVh70k&ϙn!fS)Ygk[Ă A2`p?H -SЖE>!~,@8lc͈I$kTQO.>y^"}p$ ]]ذtPT(uFL^L&O2͗WsLpjy}) ou7MԸXNԧL0|]:X^>Wڄk3Z8LHy.E}P= NSmA2>|ڰ֠@өG)̔7@H$P_" j@Fa@P@Fk޴ [C}ڜCNcHH#޸;|2+,ν oC@c0A_pg02A.x#V<٘u$ϏG䰅Rab|F癈Ď4-$0ʅt*GMPz䴼-9!N A {'Nٯ~`|uoTfU?'ظA2L ]+w'3!eƽubPoŬpFI MػZ\2I}qA az":t4̚9QiW$<@6$sUi"UoNqdŭ9[К'*DsVya_\0-vLAX@{i<!*,HkKoI.Z镇>z-( M&DVz߱HP?oD(6:g>dwㆴqSB@ˮJ"HYhKDQ##J`ClCNb&cDi" t_$)~+@ti*~-S C2Oh* >r4 l!!^{!r8p4 0Rk @9Z2C Y<9xMxSL4 y\ ƀ  /RS1I|s 4:NA1a쇩ʕ?V{_htoq.34_-r8WzcVCQ<1),vķV>xw97fȎ%x,y75_`poNf+"!zwS[E[kw(sڏC晨vMtU%?w*,2Fni'b@Hi')NmrIeSw`͕^V[yHB_bWe v6kI2͒H*$0+~?|JLaud؍qcdORl;%9ǿs~&(iM;ap,X1-u K kO Cm@K0\a"gR/bAv h_-Nick-9|kuk \O]|^e:M\4A<܏b {+DB44ҿ</ScSیX$C/b6\ 'UJosKw ˚r煞߄ P'aZe6Ҡ̋Bҡ:X*XHl4$x gd͌z5{y> FԴ%ESዦ'}CBBm𰝲{a>5St{|{aD y 0j{Pמ7fԦukm?P8/EHTup OGc k:)0#Q[16eaN**o^T>0Uӈ}a B`"^Y*Nm>yp]0dI* 5uThB|7La5ߗmE1VY/, ՞vɊxcߊiqƃ5ktHe\S>?*Gv։xtSC+*ڇMKB-&G$k-%>+ b5`Cxc.?L7NRVJg/0Oj3 hRZmW۞&tB% [~ifWa_Fzw 0Q*372vIc/(:e }>Wy#6 n*PpCR} R7.S$'y q-#E/_~C¦^s/11QrS.o)UsfhGְh[fo9I`ghCJk5ᨭt;4' o<1T&HR'{Ū`oLjg8cB*ǯ#z>lU튃m(i_ ~l {OukH9>n3hqN'Oo@T)z 8_{5VSuNb'`t 2d]0o/dZ0((&O(}H"ľ##_x:7PkfjQɎzxMc>J̓2߮>rZ;mORjd7z;[t~xM?gCb 4vlwbDZ- 7xp݅Tpu>7C`vXn70By+-T|X]3|ڟ;繆SۇP<7ʦ#aSˤ2#-9d &7Ɖ#RZ ɏFqVBI0({PU J ?t }c4Oa#DR imlᩑ`b8d8h5lS ޫ2ѐ裌׊YwWSqKP3t8?HWHR5UJN;z9vAv3"nNÒ+ ,A%woyL p>Aqû(e%^ ~Jp7qӂdž$<;fcP`kV|isDRXG E@&^gM]vk"9 3k3W"NSo\s} +kh kxvp:ʽ5hRE>R5QD^?y~1o t+Eeu 6 ,|g+ƂXhfE* GPp.'"cZȹ:W& ܳ,8 r#ѾHllD@|@5{d .Q=2JFvT@$(WIK_O=Fm1"z &w3Qd@/=Vd1@k~G Z3E/3mi.3"izK*Ν|ng(,R |5FcNܹ4 Ivav}Oc VZO,5jQqm3S8̎LcAeQI9ɓ#D8xjiI$ fl0ù~|#@N7 BԢ% %a"/{p7O>a/>Bׅ[ԠB}-Z1=LdGZT FCrw3,È7J [>AՑН!.g.nћm.-3%ZQUl8S.Mq*7.$`}x7K[r5DqD놮u{Fzr bm1xq*?\.nB] BgE?P% ,='' ?=:*uŎϰ8 + z#?zJ'nHK+-Υۼ61) Xpsyg Lo0?v:laV_M/w35&$OVl1W-4T年Vs{4`W>rrL]WDOe5W{/wC\6El1OfzNqP>jQхъpPG0DZЂo*d5&zՍL)_BRD4O6dK4T%a]0Fkk]|ڬa86o- |¹FwjU cі9冷D:y[;޵ŋϧ{L ZRֱNfyyb X s1ܑ⌻F lK>?l),B袝 Sz#bHgv(!CO"mj{Ї\A`'9t}^-LNr+ g̻Ԉ3 &P@`*.>9nf\%!fàr e@;oKNi 9:IwЂ䩝DvcM **p_c M?!)[^hhK'C2i(kF9N{WPXto꾌pXWts ^g#TlwL<4[*L̲CclMJw te %dSwXx"9j>bmbtׅr{ad07^X aO9 %Zmt_42 [0?*|f<0Ce% 0G sBsGԌ-ϖr :=;7m<%2_&zlfS֪p2JNfrbV;CU/#GJ%8+4mL,D ^bݦEvVSFbedbM t!޲q 6YS_ O(jg $k%[g`?.G 6B' TXF-g߷,c,}c:)3qzxO=?\rv9j WlL]Hxç W}|E? p>}Xn*SI` s(]|2:Ξ .ĎL8ƴ! W@ l]2·?ޗQ1=y6S, 0N㺖zzݥ&B5)qm`)>+ Qxgjڲt ~೙opkFϺh0Nܸ:dބ\ YŊr˓_Q$8E'2*.0az2pRj۾:%wç_U 9)5O4EkO38JGL=N=-'Hn`7_w` ?dgar*SĞjяE{-~[ʓ "ׯ7B2Ru#U.(&:-IJ+^.!؀$B}$'m-"t.IkX/ cr.,p\Xh{3+ B)A_Ca|yƶܙ].}sP_AgE3uMъӕDžC %ZЂ5yCms/jraWF `"g7Ns^QenOyG\_aGE-nBN4"F|>$=*Kr)yTŽ_`(Ip[x$U [/NwI+3r MPCTXɴ|)AV7*L L/ (AZhpB%B?A,"&L#|.rb]h2F(I{";B2˧aat`>ftGΈ7AeS9 E{9T_{g!8k*nc,z87F^Zt;耲T1(Ro9ap shmz5a?,y,È6صZ+CoY44"f1{;n,uY$-g̯)rSc@xS]X7nP|.d*{Xm0za>-ifR!_\M0?Vwy||,W O?&Kob7ohgyBK\uǮLl2jpURwd<\wD#Q K{2 o5q,)1&#vix`0BaFk%V8Bl &3P: ?f]ۦכ5?.S2@$AY~j.ILӳY_~ \r.\y YIX@q<َ](cy(` +5ck/\cE'غ9Ƭ/FPV-w@]=%NKWL4-,.R Zjl7!&?òm^ "lLŷ2d> 6HJP?x!Ҡr5=$XPk%o.l?hgUj4և XFtkϒSxn$]|}!HR/f}M#U8> s0]23W*,mcY"FcU @ =\+FKY ߰J@mu ᡧp| &S)fق8pZpMPDKQWml>;uC- LǡSXji[|L@чaEAd7Ұm O]- 6^QFfߝ \*S{vߨ΀#a="Rx[e ggްDQdL,{E;?d1R |<+ sQI5BY00oդ9S 3h䎣b )|5B6͜1ȩ\x]،:&M' &,&gA:7:a͔sS0iy)_ݟUCWGl?XON 5d- vb9K3y_2tS[P>P%/#hKo霜C@vvLc?C+t9=sJ@oPփ}Z}G{슅%z~ti?)Xf 4H,46<q5W]谨d=;5Z`S^9GpϓSUaț$S*UQ: s)nj?=SPx: ?&R or!AJ"گahA!R bpOh=aS ,mܚvZz(QY &G7PX p[&96g!ͷ$e|O@hg(C=U+vsD8,Dd.%@o.yRx|׮ȝ)7͐HS.b)h = pwm,J7,%ٍ4 2BtouF8^V*ڿcbK1D4&L)l2YZ@]Nf 8 n+K@(ylؔMBA)"#'A2=ml&krKs@ldsշ[XS ?K*+I:{}H^cw06mb&+3+TJX;gAPČh>s~d.h 禀k`: Re/+2ZK3g~<AmBdƇ!q l9w>qQ?D(ϸQ/x Gx %:a|+L6 rVOɅQ_|>Ѵ~vU^ba>ʌ\(&8oI?gG;eO;b- g 7s1Z]O3ZaV)y,SuG,V$vI0e" Lj4s@G0BL+bhqj T@б*+ladtZP׶,E0>ɍ|oCښ;V#rXKa.*f,տo㶄sc\gu1*{02xjs Ō1q0$AH/^g>ip!M_-FBS0 `FʺFg&L*f&'(/~#HqnLB}?̤v㡗鬽jG̢.ɨ?8i2YÊ @~Idm=5$i˗KL\dGTYɐJsNѝ"ΟTp ykl;Z=P f+*4ŷz.|B89Ǵj0w>@MhۥU<YDOMaBY2KZ#KAMerSՀbWKOڳxR햘=Fk/Wn.>_ii9qJix!Ep3G̛eGrYxtVۄ5 kK4s5+N<3:JVr/R>؆c1PRr[,e)@iBR.҆e’ ̍]vy_P;'_dh x}ha1"Fg)N &ϳE;B~ﱮf$W͆נI9މyARt$CC_S3xůJWgJ 39E7̕yaB(ޖ./\PsY+M6Z n& 2iԏtVJR{C۽eyU:!6Xq틆@58:]Q`/E"-/f\R\tDv%}:xDmg#Lk-e.}& ~sR!kAN;:'{c|ghSu@}d~=I϶w=ꤕ%쟩yRtX}Dw!>>@uN1 h"?ƖApqIla>Hw֕v3@'B Xǘ'K᩷sGr}W(2- QLW|# 4l%8aۧ6*VR?yE$O ܳ <)35;h~>%Lh)]v"b#v#2!FeS= 1\M7|` Jɳ ]wQ : 󏫴nc*Gw3sSUyRw`5, _Cki:qM@'ЉK, ο;ºݜ1L;تO%_`X1fEx]@1ٖPGCTE}&w kçL:sMSG^钞kB[HiShE ;BQԟKmV`9ձ8`r,jZw)P3Npu8?Ol˫%۫r˛kw'6i]h9pLdX'zΊ09Sxthb4 ~Ax9ѾT+d7[R&yCn$d Pw=uvS5<)rŪf.ctEa;j7p)dᒮx%X10RDɕRf]tp #dr߄f43BST+rڊS f~/| Q}DØ D(8־J1Ga" 7~"Ai/iXƼ!(򬻟fU z1A / kbolPLxe߷i] 5UZ;dbvYJJ%Y$/<4\z`,׮}W b.HpXe ^͠ V7%KwtzWVBâV]CM"%Gvkcv,8լϱ QuzE|sM ޣNEܐ)cIHkmx:*4'99, @7Λs;O/V(Y80ɵ琖H|=+{CT㴬0E{'N;%drODM!9kI,g>Y~{ V-!J:8xU•^$SrjW7n*D{xPtڃZU-dP̓S[ֺjY*ezJePb\GB+:fccl Zctؗ0~ZWGmImPCtg ~A!ܴT/lߗ'Ar|'3-ZWax.W)dcm ^^m:mp?\pHH)|5n희bAH \= 'pc~ҸN$Brw?㱳%T⊝0pr?YOeB~E?T|Cq#6a'@e!QX +ra K?E0'}:c5Ifcs3}&sѕ nr'jB:@Nh$Y4L!ټH,*FvsxBmq5\;41 Qhk](Y057b9k)p˙ku>?:b} `uھ%^s>Ć@qIEYuίsQhF*v{NDͰ@=ܺM󷑲3pyn;3!wv.17eXD(aXdj!M fzQI:RHBociIR箭OnDԀ3HzA3) JwCB3)a8#^L`T#((ee׋-Fs3,KޅaTtjnx'OU ەsS).n&4<\V}dQ+K8CT@疇 NkAحCvd* G/8`]#mK%QNqf:'6royҡد6?,aKyOAWoӸK z:ޤz8k[ɲPĊNupΪf@lt]r!J޾Ub! i!2'nczl gEK 5~Mgsv0L đ ;g/G;n=˺MBVkI-yp?,r n$q~AyZ\c9EH7^"-WxI_F.C*$\"N)Ô$TXHƨPH|Dq)>3eJP,#vO;u`Q/< [Y9LIN3O=LڄK)vgu(U}~DPg(i#HЧ;^a(> HQW^B,Á4Zn;:p Gf|J{W\/Evyuxrt@PqYxmݬ}3f۰>$:&O`'R+^y8!JFY\H7އT ԩ ӲnСY+ t1SEP&aLmO3m[x0\jQ44ҝO(lf꼊Ԟ/-#fvo>c7R~|uGIzI~X6 Z0 VG\ c |BY|Z#^>Gn'#Q@tZ25`ėm2[g)y8Ics6zIG_C?{U tTD*Aw 8[S,AèJ~"5ڙ3 ,/|Ml Z]eZV[QhZ/CLdzܸiL H7_/4BobuCKxg|hn|Վ~# |ZU!I 5BVg?9Ӕw8L8aXӇIeڶxom&R枝+@Q_ ;tx%O U5Go摴^Fao44/ <l,5 #GDU6PJᜱr/COl[H=v(ĴP" OyÒq@nDSuRy)iX-q DʧPO`[, 9,Y7 #0~1^B~LI)_&,Aw}iUe(!^0$4m=x hB2.;P|y.N}]_m~l,h!kCTb _ ȱ++iThg7nW:[b:dVZ(CL@Z ?O>i7όSaci6Q#!bg )u NZ;]Zu,'ntGI*RK< WVl&yb`wͷH=h$<&P>;F{*^MŻR 9YeU)ߊe?fzl{Ѝ8L%2$!^~f~@Ge1)9r0: 4wWjI͈IkMw6XEȓqʕzv HS pPrS=8̵ ?4Ym^B-JuXYOM{oޕL:" tC~:By329x8 S{G\#ߘNRL>$mazº%o 7n"EnR< E5N'?f[.* 툤d?`y>Э@;|39FˆPRM :貛U$0g ӻϮېm< a̡bD' "ŘQr`M\Rm2V P|;'6!beɌԴ?wneANHeS| T VgH @҈.YZd9CL)ˠ^ZBji*<䕖rNO_܃y< 2H a_U1iw] vv{' Ƃ-y8ƹ!>] z ;ǘb_iƖO(zj/x^ cE_l'-iTKh~8k[䈷0>]y0eLx˗z3Ynìe9zRIҰzʮQ5]xЅ%MErJwaB^Zb`!/}RT^M=~ ߤ,mˆߑ)B*mll)ǫJp/ Ĩ50EݢTL.YBAു]TeZ@j4a|~+a+p,6=}q DĞF!9M 3~yj۩vM(܌ 鵬"[ PʇttWsIGaN6y zyӑ3 rnXHP8^PvؒW DezRڗAl0$KH J +IMC8(o)x_XYQO&K!yk%s&%Mu@Ś"@|X#կ%`7^Frt1xK1#§nL=z3۞_9Sϐhޓ1NX2E=Ҕנ᭄:`G_W?oW-MX_nHUϺ?^j*>rg3Gr2]vDV?#\)w3xAիu!gf.x/C*{\q 73=~V5bqZ I&;)*FX^ zs,g 3.5Ɖy*FG*V1CT !::B ȋ=G}N :LVG!'͂W&׍4W) blv㵧7 p`8MC!Ġ4I!5 >jO2^_ŶP9} BB3f"U]&_ma"':Y~и5`l m˲ڬ-Z9[8{?o ┽R|o='GW,R;IsNp}k@yx U^&wӍ/-|J0±fBZ"vq| |}]ͧk#f9t8 Mィ|V1ܴ_]ްO0Ay*4Mwǚ*|5H_.u_nl8`ذ#tk-/65dr jxoyU6RT"/cͮiU^|?{EULڲ/yLUL[1[^ ) /m@9)*QT[/s<km:YUBk@"i0jn{ZDwZ$?+'5dP0+yM)on#ljʄ Z$D_a%&*404NIeNvabY)}SF,f Jt)&L0p` km zр $AjVN]8V ' ){.63jfɰ;BUiOby8G=v)Ӄޗ!m h3v L4,ShCH5Kna?oXa9%~}f7AB̿p$w#/4-ELBU\ N!ɦ# OcpU KÏ~׻s`xp8U u#K?MF<;\Ć͖W_VdͧwzX|?LUQ[Ze + c;=,R7\.jNcyuxشᷩ5!>~_,PSh\ܻ J g兙 6zesuҖ 3/kח57L̳ (cߖ5! @q.( O.2<|[`/ ^drvN{a-("H,LK_\hP @XzuWKg!cvJ(8d.KU?duT@COl=Z?y[o䶉`mdwjOp>rÂh+nK4}=N I}MЉUٱ)h !f6_&Œ򆱸[Y vs٤ـ&4+vOԽ@a~C%*jRMk=8ڿ҉NjS; *%[gxeojؑ*|akvut$Y҅(ZX$*לԸ+ψJLvY|:׀>0ԦfB. !ޞtvh>{K"W8UP%:w3y5HMq!MFT'vov9B棎fAժ 33E`PĐm݋^zj?32?a CcX1 ӺH@֓0f,٨Zi&H%C[]4׃nJt Sf"<"ُ?h3P(d3yk qtݔgg\'չ QQz_lp0ċ:L cP'L{X|ze1-4$Pς8r|1I\^C@?%Z$‡Tz$Z8ndga)evA9%DoY 9x纖=N ʉf&QцSG.cn˃BgV~nBah:0m9C]s0DcK1I]4/rmŎ34󓥍_󇪁K!xkGB&f;*Ź?|RkH~R4C "X+P(-hG~3_hŒ"`7 318lmshyۻ5tTZxeq:ޝ,͕@v499& o+Ax㼘\?ՠ`qgIzb`{ۑM1gJM%\m[$I0t|̶X)L:FQ{N?gkKgqJ{sGHvri9f!=lȜ4BlW7Cn i&Ws0}~٬[V#>ATXR4IDJ3B  n×ȓxU2aȱb?_?أ&<8S!e 3J}Zl;*Bv YKg|҄c *݋o" G;C.{|t8,uRԣG{iݛ*3RsqNfMXs׈!_$*iMSLGk~wCg*%]G~ȕ]~m'璉J\Fkkd}R3GⓚB=jOϝ mn/<Ȑb'D?iPM׀y =Sg)_W8>!{yS#3' M bͩ T@t3o:wh'ՠEVԢZ)mqϟ?nE+ҨUO ̸щ릡n("^~_ c C¯`[2{=3= G. +Sj)43O8yӠDD'O4/!Go$RzO#$ե`B75z!̠d]nI 5aXr@= 楬QXjJYVHI.\l$/;j2v,/%5]!e΀Fb4d<!j1ڸ3#w^~,i0>*ɫgfRklފpbJp97u{:"-rLA0!bL8j1M~C7锯H'E_ztK.QqzL6 opNq1_m}W3ͳ }D҇Hm0YDk3wVOAIhr )Kyo` b f]kcn% ;^Z 1{76~j#cDA~CKhnl4ԼB-\@x3g_)B`WSr'?mJXJFՊqBitB`Lv58xX-b/ [+8d)#Z<쿦qIX8!ALLuײ#}]U|s*E⩷(%FX#IRUyļxqw[Ry>64Bqȅ8R #/{J7;6;ٵArrzwc6@EHJZl"w_vj;t?X)J|j5Ȟ]q4:K\@Ua:v?1[bg);%✈VlMܿ˵Z}0ZMbE0Cg!Gx ]vkYd0D(6>)X,#-*nWK , ~IQZI2  x~9LF*^ҧ>X`N &ءY}Eb58æm 2I#9G:} :%m3iZ{1^χҨ[iܨ3鬖۬@p¬z)d>oq(ozj""#lUU:|'Hѳ l3vn nuy#>{M H%˳~SAI8WQrub`U60 4Ű|nUE@QbBgVV'%tÐ$izo vh0IU{C-CS sPQfgPK6`m7~f\$g*5LsQi5q;CKJ? aN:֦JpB,@INVQ+Rӑϑx|^Ohx]U:jn]UqEmMz߁)TpL쭀s=Ygm4]@W1O&Y|8jmeXNԟ Q12Lwle88ܸxAf[ 9B\Ǻ͇ Q />ųi'͏),o$bDR`y{hӏ+{FDi}gSUW(LQDBljW=MrF b"<=p4_i.7- 7`9X+K߽UZ1JL5*@% Jew g&F6JAz ԓؙx hE'*IFmțo5G^.A' 2֕-{rt\M, Cy=ulqXyC31Ӱ# $J( p~) W#_)g/ՒbUtp7NkdKRJaTp(SE[n9R-&o8ɜ @! ᇣ p*T#<ժM"Si 3ԓwЇWE0lݶ̛rO(PE}Zh|2ԉީ.G_~d)Pz4\Hk5aHQp  ȧX~rFs(=DLF! bu@lNx~l4Dբ-.r"aGqtэ=C̖5r:֯gQC!B{t;=x<!E >76-ԆYP᤿%MsO9KFbdܢ&1 Lo# :74"K*?pXHp`uSWyV`/ R+}t`4:nS(ױ Õ&&ȤSECޯo_'zk>/LtcqxϦRWɠcSv\ B*["F--:-&aa0TF:Wvk-ʂSg9\&`v 3v@S%yR C@8tӄM|6XS@,ۃ8X-eƘ OG:aނfU,ǵ]'##5&CY H/H Y!;wO Gt%-..}f2Cۦb#oX#/Ewn!,P\}5apb(9Ik`Vl 5u&(Jxl8̻%oY|M&7 2)nԽ8P :95#<-vG$`8;ޛۀ%[4{.{#x\tzGh5ɿ';e5h&/ߋ/h0믓y|VÚÿ3`5f gR-K$m}z˘-'{;=[p+cU,qۨYmy&(*/A>b׈YS7zOz/î%,R4ɆI&6*e!gIwY~YxvW .*N1Wd|u|1adoñEC;x  xN_R 7ՑrJX~6봁Q5ԃIgm#8{[e." Y|&U&yg{"  A˂@ z]Uik +<.#n@_Vy&  1¢tZ~~K-b)ָF8Qc>ivœgҶ5qmw4&{+.ݠn;q~gsvc݃ \M"M8Lb5F2]eklqS52Bi^T-6"ρ]v!0oF:iըN*i/3Z;*$fx]¶KɁPPiNh_!WЪs,SMcH]67u,)W~ܯY7hrk;*xiQU-<Ot@r QR蜺wLoWrDۈiz͐LD/YyaML(bqpP7K[55:g>M/ 4긮4Fg`Fx <;z ??//|CvԠq׍ b PQLvuGF0O+%ߝDteO-&_JRPjv)?Y5G_,X. du]6pM6Y+hoBGɏ#}^oUaNBdWnJQTK%i )o`ѴԞt4=<`uB2֛Sik i1iAmSK8tAU|UG ˷NO;e('jlU AVd+1L 7 8)yGz~!<ɕ*!}/}}@-̒BTm%NFU4gdtz`i1b?NC?=fA,A%JU[ۼC+͓klΪ=6e&#wJtPe#Ey`(ب Yn p茲&O# TI>! w֕ol̆o G*ZjZ3Kx Hku"uB["R'vh!r*g$R/f/*qpqc=a7lG+ o@)qn3ɡk=uyU]Fv+bKwaS{rplA>cLZ\L G9 ,ƺ-PS^s 13FمTP3m "Fi֬s(BX>sM1cն@Hu/?h@b9f@ k-i(F |=[|{%X3@kf&rWo{ib1sc24+ Zba}η()6A _+Yw,ʑ㩯^ex@R%Bj@hFWe@قR@͚C/_juErpGilnvjzMDg÷b6 g>mX2 ji չg\~"n}V  nVV WSl qibLߐ2-m.Q^JXrS쀄 ͋ w ڤ1^Fe[1\|{H=wڻ9yM2T$xY4RാP :B͟t1NU\bBlS{|K.\ฐn6r1R !au..i0(gO[TKѿ>'΀RZV-su-)wcz4d{$/,V.9kٔJzrX[7z”+"v)~ӳa;n2EAש` (jYƟNP#wj]#HR o[.Պ.UyQ%8_^=g pʻ%HIwŇ(+00ֻIBڳFAuj;w :^Z:;E!Vn1te):?$tc8Ea?ɣۤ8܏dKK8 Tdf֙u̧Y&V2 bP2goSpxv8.7yuKAXJ q7BƪҪ SxcjV]Jk)E %cW>r!fX ۙ*ǧnwWd`dǼ/iG<]#8!i AA fqR3(AgpIRˍ`(o gl,p f3͛!5 )Ƥo)öQF/i~H9C}/IR_Wf傖X3![X0{ΪfB5?B =[cd.9J dyEgRƢ܎>QӉ?p#K̞},O噡F2ݢŦ)w  `KSz@p'*7<tfzs@bt Y2\mGkV9օh=;NUü< v:XtZY&ntA98~ %]g3춐XԨ7ӎ7!@.hb)d,9fS8w[?^aY5K98]K/b,Bٻ :1y)oS_ukܚ2q; .6 D/U M5\&*V'9[}޷WL@aRs(>"5I^/\KLA}лVOSzyתnSw"00ov ':mIit.`?d('NV5SKwt? r*{d- *N4 oJ_['spT9n7s ~> K M 2ٷFq$, "D2Ix+}.Fjc"ӥ1C'pW\k ͏c1LCӅ8*m,P9t]n'nm߅rпhO{mNOV20VU>/ϔbДmOk&F/UM~P.+NZn/&֑$ 杅i0$a:ѹ-yo! ٯp(78wANCoz9LD@t0I̾,8 C2 ?G1O}H}Xpd%Cs[o j$,mY*OM;BEQ!XYSg{s+ VjS*J]KOjA[g :/L^k {#EmTAIsuJI&K+ f[d :GnjI[J!V7*h7>lr% պiRgP$"GP9ŖS`8bAƙ"[i::b2EZL-_ysf4/#!!C Pxrc$|ra(zB*@-yR랏ůZfM 9Akg4W&{V)0KR>ms2}1"RZLr#:-<9S6ŽH%{L=BWE-м\ccr+!{(Tg)*Ic%Ê3f7m!ÚeILrV R_*@p_{v^Ƀ=1YD8qtPmt#utORԖ>tNkY/u|!9$f|RP}D|F.ɀ`_O'_tf/SX6 qv~) ".~];󤅞c@7.1Mő=aQn<֧{et{LY*˭6.|`mxnU-ݮU_7eK0F#ÿW׍\4ia .j*Ȉ$OBP/N PK yF<`5)c]Ь]9paoofȯł&(d3&Ac=pŵ}ݼPxN$p+ B鿀x@fAeRSqBSN*jA_1| ?@ )jE. Oxk(} NJqxNa.ٓ-Oђ ;+6ĹQݫ-X By!~$ םK<{Te`!ObLj[^q߻ϛafY%[mr+SL'@RikISf?f@vr58q8~/y;X"+Mƻ`/Ez:mZ^guXq32z26WmAfZ&u]з7Aӻ;m]t>OC,L ajG\i9tmppv<}İQHkvƒqo O/~0X00 wS} 3gpep_3Q`1!ho`NL=35`it[{3{Y wFB&t(a JCQv䟝9rv5Gא\E)cv";~hN-%ZXPsyP覤֣,pVU$V7+I@01(ߚ 3U{> I/FӓkJ:EtLĢȢsvda"Xbhֵe >DCyS.oa\!x!љtemKQk^Ǥ[(qwZ`b#$a>YAN Cib=1N)ludZMQ5]·!Wö*(Nl,>۳yp|H2f>GYvXAɝ)?s΀ɰ6Z\iqBeSq/iyj+t`e(KޠTL_Y$Q _H0 MkT}6=:(f56tcMڶ@j TćȞħig}P$ZHggrU= z5 F" T &A5mR.kS(K`+u$KJj7h Q2z䳤Br#zpq͞}JwdOz5ǃK9aʡ+Jm2"*.; jmż zG. T2X2^p󛙪+(K56bAJoSŢ7h/ "K 3 /Gz3C8O{ vؚ%sGa.qnfv,e >KmFwN{:Bp w;7) o?v˜hǀq!DCݤAtZ`̙G J}|V ̗< >W91/EJ.Ȱĵ6Q&A:`҆R4⽸#W 5g=`wia{Ñ3vXAO ; 5>]sFj<˛#:HU"3Cg$D*?blY涧 ,2KnX#SZ&U=RH[̢đh#92QfE:ksxSyK{uw>:3 *d9|_z)_ȟn M2,dT= 5n >H Qb>~-cDlR V'Pl۟|D;k4K>X1%Olpخ\hXj5WO:{ O2<A{ZӴHo:ޙ}MذhJm:G^Q ,ke1ȘTSqj]_ /{-P3`kXya&oqgfcaXc!`NnQ(r7'T C$S!2iz2΂}# **lSS:_$M! fm;OW~vs/fo ˻L%v)^z1ަCAw,)ȠN'&Ge:x@`fmг!(ʰsT%c0I&X-rC5viV,] fYi+4xk!t7pa8$Ӧ J(#}I9{*5FXHQv7Eo\ .m];>yͻ" 0!~݉x9!cr!Q Bmo Bzs]DV Ԙ(M>,QM…`|GauK$6M%d2⎊zչH$ wb5IHza|a7f-Pr{ni ۛ@KU朞}G⋇H#U H6i6JlX9c .:ō#QmFȐ'̐{wR}7TaXGn*a7dzfS3J b¶fx?+H1۱%IETzeUYlm.kU@2{gq$k;$Aۗ2 J>D~v`ވb9x=h$uH+ڵr+R>|zyA"?\*yy !؍30LHs=^?.x Rv֫iT#[¹J)7p?@i [?Kr|a^~Jj| aRH^x+sL̵ i-.uޠk@!'2v4_{IҋMZe*%*[1"{N2NPK=*2=INȢcqyY7{LQ%䯛]1,.XeկdD--eQGBp`6RM A˻ QI1GU~8i|D/6ͺ'QOyQZeg}IK{q3CQI%ܭFhcPMo7 5'':Hla2¡`N<]^{ƪ=L`-㵠2ב.YK3m߈9cM4Ep]C¸&'yhqC)&Ms6IZq"\"rѱdpxQְ }Qyu`kml<n<7p/ $nѰOc7SD?} HnoN_ ;lEbHJEusfK2pfп:Vuŋi1g+v|~ӗ[+30O~Guo·c=~ܻ\e`ʚ Q,bn~{6q} ?;P]r*įTRo7ufj V$cXgP n+;hUNDJïUC ˈ)ZvfKZf?Cȷ YySOla- /[t6~hi! 7Ot'Բ J+Ԍv dY@tb-P6DE<5Ϣ%F J;R%`~İHǎ*ʓc2"GE(CA*m T2Oj'g-C enT>pœ -Tl0|72[0{܌qiUC]t/>@vϧc"_K $~sQӗҐ=nt+bUb[ U3(?sRI!& C[tb$dr m_{e@Ć0P)!c8֪VY4/qR6ÓKy:Ri2zd\`~S^yIt-|m7(8F|HL{shLdԁqN'ao#в0eRV2Lz< "?0/-z੊z5?.xPtwGB}L=vmů!)VpjfM+F r@b8s(ătٮ>4.#Ml6C|ˌU-^++kdfF̏+YGs4( Kqɲ9OVŽiO\2ᅮJ0{޻=2rޔjA*KԦ ʊ Si+Lw<ݚ0 )z"B4BrTly%p$ ;ZO36DjEOfʚe*tw|>"@vi9'1szmHv;^9go^YO!GOv~"b zt:z U}SR@g$%I: gY~ejY)[~\'PP6ڤj{e! j5XB:.Q8B4vt7E-?,ZvTTU.U6d_#8?G*?f~Pv\ 2}\*k:OJ߱e.&I+Z{$`('`CGf$+!b$NZ|LfLWcXF2qu%=%(8n䛻nj  },jxLWz5㙡o øg) G:[n(%Nnry|h>CϤɜ-v _"jQ4aRiF|:QM]mV:5E<tBQ0zJOiZ6oշu'65 AFFy6Ao9* iQ@{)\rgf$]OrJxWCR8)~d{iG^S2e1J *9dA&>ۂdx[͞7ҺJ93y;ۀ:& "MM"U%)z"6Y&s؏ /Q]4/Š~cw|k9l$A4Ag"{;-o̓x?^@67S\̱C8n@72<7 YeQS%ȑ"aʛet Gzݾu SwZ/B6@AΙ)|$Κtx}c?RVC+ongOȋ(Lu.z rHb\MТ ˛)Z[%m[H=(H)>Ixpd=NH.!rMu{vʦ*c-e+%BԢ.D1iAx ԘɍJ w(O#\M0faxeeD0oK)`3٬GzOnэR{uLN VDv:5_Թ+P{gn>f/9϶+s"'MK- H(y'_: pt6c.zrA_2 f3KBB˔etT7ٳ;ƕYuL\jGy)o? G|,5UGS^?HO8뽜R`x1Pv)\pon'8(WL; ={("J$_wx# #2ʮ!ݖp0Ӻ*LhWdտ08›&rŷlD`U-βEVӁ b1nDQW|ᥨ6Kt12"SPG殄WIBVC 4Zߌa~ k׭YXA]b>%w*o4c 1|&?lN|-Щ n_0#@~k3m3(^h՟YYjM!I( V{HB+ %^ʿRB .:5P|+Gaf gzs륂^R9z+H^/b%^?u(hds[-[9= d٬rwKofqī9p}/T$p`V }^SƗ|^)]?]#D13t7.@ ( ǪA`./ ?8 Hu 5M jZ"z`QbO>#$qӷGXgBjcQG5KUFpᄆQ0^Dۏw. #VIM#VԻFrn[2r*-DŻkdGCٚ &\,]%%pMjYO{Xc)&OzILh 0\."XX7!5ToBcTFt#˒BGVr:e^Y%] q`ƥfT˜v1ohO&-dY'ɫ-[Pyq2Ν~xč# ֍6|vIPHcڒ00*qؐVunJ`)M9xF[JV35% ҨU4W?ʻgaK5\yKj}B*>,LEEb.`:!FnU^ kY+!1+h5@Zqֿ'ah`H>3MT><(ߥ!^jmJ0Pꚮk C9x< \j7p4LCm}"&M%%sx^jEA x}pEf] E5]n.F{t.b!X\cd $0Ύk+:vrؗgڿuۛM}oٌL*ovp$O6'|bR @Ke8~(cAZ;ML*5FBG&2pIJ/R| q{H1O^amkB`@sO3j+79)6A]`b}H?z @.Rؔx2(<4׹`gQtZwBdsc-֊[جo.0A _{o{Z1k> vJLc I䳬ZaoXX7+XuQ#ZQ(Ot& %No*Tdl9 "#OkA!&6՛^ nW_͖o©V5\465HHy;@&km(F!pqzk pm٥y$bO ])uN,*dXVU9ĩhL3,56SM42;*k_Y9V.Jͤ0E;tOl$f&8h2aI /RT:`@#3 yYvgmXW󐝜UTM!"^_ p4'D;F+8/ v˥lqy43(5]/ϩCl gLYpRA8Q${sl07'1:pO-)[_5jks6oE *Pef76 k@C} jTˋ5\l wq!eZt OG-F]ڮdǵY5i!$}p)X|nLn2& v.'NHf" ,/M&/NS54Xyx?F5|JB U`unTKo)sźr/8. ,lxS/ԕrpG 6 A` >d1uP¤qRKY3)Z--(E z [>iЀ܇6 7_ ; .3j}cy^x ۍ,SPŠ†z*\c2:1ky~#E:BeqHlK,:Ff]ՈmGc*lq8-Ȼ kj\hYR #$q2/;H1̪јϊ6Tl#ap8 0 C,#`< Qym%YY.( VNgk3" GLWO0 mG UQ3 ㄪp>uku|'^ I-}M Ì57đ3$I_ˤ_'Ke!!&gU‡v[ꥰ:&t%R4J\̠ۍ3@]OoTVGG.H vQ xV>p5e!p9rrDv,P3KZz.|½T}Bij~-¼"Nh'D!%U^01)fTxI1gB0hjq^R8tSQ4iΌDE9sA`~ Ϣdφ}qA,'fZz@ gS^%uQFY!%Amޡ73c;ݐ@kH[&-c0p®s2.JR7C?jy{{n||Q cƫzjX{,/6ܱQY|B>t@x90ι mt^Pݼ]섳bp,Iq_\ tUUf%812u^\F #yWt"0DYL#1[|&ImΉ2$%mag)9G=J^KiVurKr$0W?B,LH&eɷ,9|d4@+9%Ň rkvc)4+L;J \@XB3}c4x/dĥEE=X#TG]+qTH/ϕqr/G7>w_ԏնlM"GSgO?M4jW]Dl}/wǷ'Wկb]MujrD{ Fm#hS^JXYmF{4!fd 3r'o&41k_nϾ':8|RLZ4W41˯Z*o=:P6ʃj0elQi}:?[J>3[{?2Lh^%_IRR*rQJ dLpw&aNP- $?`An%m]5@&t5@lg6cVkՖJ/(E*v67uZgr ^/x-^Ȉ.t3[~,(Ud4* ..jLZ/=:"Tœb6%yc&//7{Y.]s+u6xq\jPBLjAiNZI 4[J>;R܍t"x +59zIj\B5`WS}M9#VM+0m iߨV'ueŷ\1懿o6w`lvNJztvAo@'}ÓݶU>nNH2FD9~67Xk)e9+ڋW$'<+^Wq!] Wt(T8NqF!,;YJuDΧ?9ʑTҐF5:iJȈ~lIXxxql\j=kGr( Wigea:&1 *H#tΆw5!ߍ^Kr5~ = Znu%\i\79m{/N 9ַ9IBZC8k Yy)ui,V\yK$[1<lQ]كl1w7cOȔT ֕^E{zYl'rM7 P,eU`>8pe[p4c:7/2//5=c RmI|$ aM4e< 2Nkė495Xgn`~^ Li#zOd#-Pb#í9G#aMzt;eJ̋w%;*L6Y0XQfeLQ<7bW%t dتk^}]+7&t+zqC#h0>1& E`bENC9QfD:iwf+\_4JH llb(A*'ԡ0% 1NcRR2W.n'\~9> /E_53Z7@vӤ-MZ^[@#`a:IwR.[;U/16̝+x kNDk\:;O!ҢcsE? Ҏ+hbL+"]<2|MkZwIH67y_p/Ge2:^_Ccx+ ?بڪ0$u(W^T\2Op= l ¡ ( r,/.˖~-X)uۼΣ UҔ&U,.oqI`<4,!e$ʞMۺoK+LE* uT7ڧm\d)˒..[hO'!5 tmzbPt%rbB¯Ɲs e,S U;IZʷ:sNmleDE1*C*:c) {SQ T#;a ^1q36 _yG-2)5a '܅:K6GBίG7E3vi6RjO#Y;4f۬q8>ώjҶhCP0ciD[j#x׆<nP2"\ ǡ3o[䠭aW6ٴƞaT*)a^ދ],1@hkAX;`|\"itfS"X`b|_jzkzL1: [D ȭ63Zo`ވ|A|.<wDqz}qʗOQ@ydO9n^pfp8.>˪ײeyY^ýCB~J08@a5%[Ѝl;S3@| Gӡ9B 5n"}Gnz4yӓkb=YK+sK⺖AQ,1KkW:MHRǵ䗚ZWo(`H"w6,r#jTl>=eQq#b`XsJ,6BjF83wXп8$%O z@ vB;X~IӜã:V(idݣ oKxѮ2{gvL qD#kȗtu.Ӂ.O$W7pGtz.5~K''cЋU|>\FBӠ𽠈&B_yeE֌!iVERCa=  F!>͇p/B%5HQ2UmԕF vNy;-.iz‘e!oKů>d=F?2(wGDzi- !֑ jsϪ[lȳѯ(+ ##0L[;ۜA!CʲaFFP>J.GG ]*Eml:QѮuLfK752YGQ;ͫ&mEbHE#_+Ih]W;}M`+=HL"u {>mR#yCk7yVgzU]iCsn {S$$|F6~VkX?F;,Mߡ" }pI'H)bzwػj? ˜ɔЂlI^2[2Gk΀)5^s^L7"9n,dP7L̯3I+($I%MɉPHXu؉rL;-DicOk|AFG9l9fIBEK=zȚAlYIG*BJDWѶmbڛ`F+jEs5i @~"qd'k1= ,9 ,$tu >ڋKW/'f_ik?ٱwjAY3a5]AZ澇_#7Y0ԡD4:_YdSeQ(w [ݏ<1VzDZPԠWZe,XIyERpx^9qY'%N`p<ؓ.K6cMnvrS5z>u$9dujB]vqw~[e'T$F/*\ 8]_bTp'ػ¹)1rp=}? Yiqz}(W"2IH!sDy/-Zṕ+ixp{_F|p})K{ȐJզY_[[DZp{&L s>mƊ-&rH/%K}gUW:bfwhqNTBxH[&{b Hl*3ttV3&P{ ۠hu;++sb^ +, P,oA%: o}T]Wbu' ѩnb(P"{ώ(aN[ΤZj14MAY Y4UU/?siC\3"0%ڞ#Ɏ)u%LDwKѲ@DWԵ ܣ2`1 \^eT)I[ZB;Q j'&z~,1TîHl5{'#dp=(Msiн171DgY BS<**Ҿ:dݸMOng|)TVʠeTcgn@t@km:ء6.Qęf\;roj|:䆌ޕ1lQuگK,ې*/F !ҧfgTBqª^9;64/37r+]4BGvdJ)ڟO5 /,Y+,z_2*%$/hbӚ*&} XUdO V0B54SEiuk1UuP24 {͏;]Ol:VevU{`Po?֣&tT{ѻ5b<;@ficɨhjwr4nz1Ӫ4fVG'ۓy`MSKǹE#sy_` Y+Ea)DVS)H [9HF807I,pBnB- ɓw1r0" ]_. žWR)l-RUo.7fexi9q8n~*vwABѬ<SO0zo/h 3cվSAx[";qd4Z TKD. wj84aM?&/kWHX ۀ[f!ZݫQU݁ufc[c_8NI~e@=pSxgvZmsbxRE#f,pԘJl0I9#}+3Oj4rs}~ճP%Ӟ-&Q&Dhr^=9ܦUaִ4E_)Y24~^)s@j!QVӞ*l,o("kKGFA'aWX7m Rd):E 湶cɇFLF"'=̶kgӮҶn;HJ™~V8az$zC`LkHUXCFFYk:d}' Y 1U6Dn{'6w1 <"{kEt[Ҿ˿%9EgL'V`0  Wn@56U&,15sdDIcm 'A.EJPUjK}wϥ/ e$2B敻׼aW{~R[nw];`,-:]ˌ wn I?:se"A>K?Z"јC_6_orF2o*o pw|K1aJђĜIA Fz:|| _JlH@ЇY4Oz׃YTFS&%`mNP$ !>`t\;:LSʩT ! iAfk.pT&fac>aޤ! '{ib-rYL}Ϗ?hpƑf87ٙܙ@cwd! 2"5 o$.G518e ۧBNp2h@¨XoCc-NsxJ\YCj -`85aŪߠ5z?O}ǖ4'd>^+ pDL?-W5LU#oh YO$kH,~pĀB"=,\C2MБYX9o5ݑ[˲;Ҁ2+J#8x=hWD1!yXb=)n(,ŰUo/};Z-rw4~,:Űbo-6u㦡@ v&eJ٧1 ̆;!.<3%~?5eG%uyqy(&pxLS܁M\G#?*M}_< /)e=Ț 8E_--C%PXM;t<($<2;Z/Hw>hE1ؗΗ<k-_oMY-3rHRu,=M:Mޜ !tH$\P{DŽDk/f.Ʒ JȏJYUO8. ~"V.Agz';Z f5qP?4IvQ#% Dx+-^9y46@|m꘢"+=xI(uq;=WᔨokN].q#; JiFJ-Ɖ%;!K; vVK}\#v6wrĚBy9y,j^Ώ gt?@qbX7 h^ӟ/B{®;48<Ӥ1pz'yb8Xf=(1X~TUXtW{`ٰfѱgޝJP"O$/.RWO Q?@:|k*hA(˕4F|R# P!+,RKX?ɠAA)GlOmj0٪ wǀX˴=#>T!yݾԫ4KϗCvL^Dб 嚈FN>o=."M62a4A t⷇ CmxhJG(~2y z2zP 78"ֈup)Y}g~>7…;H 60r3ZE[=.#qmǧwU^~nqr_0@u&>|C,zD[̲0ki=혹Y:{mv;УP77]Os~rTy.+P]x|l  r(!b&aA<4(d\G0F_d-K{kćpchDDJ:u| T'4:-,gK:|R3xF>gwN J') ,6Xp&ڮTy$M?, L @C\*'?IL@tB*TV-0_`7+"._"YјR RQ_bpMpxYF:4 o00DVꍏi;+e`i#rnu.i< UV'}TY&>څR?E;*lև"hrU89c`=𥄘$l$_/xtM0O*LD{年!Dln"lܭ+󻠪ЛnZ [ 05pX^d5԰MR/"\ uLޠ>'֯Lܭ uyb"έ?T}lΩ9!EX#)Ȧ ֫ )T۴NA'Iz5YZ5f%9*G.#(_фM?x ɵShnW48BwuX6\tGut( pWذU 4^(]櫇[n~/ ZU~v@I\7WN0TԾ-6N?K17yϞg/VONt8iGVӣk*G}B[dY (S'ih0 SVIeo\ۡ.wVG*db&2BދuL"h)vx 6Ka٦uq4MיREޮiwKUj`Dc’vX#Ԯ)`(x W-ha94|B^oT֛=I@Dvbb)V~;l!e(?ou@8 {o%?~jEjTX;8!P0G+ܚ  = Q 2CFBvRZRx$_yDqu\ -<w^)]r~ Мvf &!5/$b84s]iX& Ȁ4t82e>3kI{WE"IlMB; m )ɪ5֒9 gɡ2,rg!5mlLٱ8nDgn *xZ闊dBZK{մB0`n%5~%܂u8G*H9!JI67X\YJB*ݜX)>~t@}.A'& 7& Qd]ʅNŖ@V|xYń |浿ӫ <ʿO"%$^_Њ!N@Gcnj`@XʈȗxBF {_߂LK f Dwn0Mo]z*a Ͻ<9/>9R;qZa䌅>}7 ԶNܭ{qGo6Biar~BbXВY<_n SIj :4AZpϊj@+4R⸖c|U-$SPoiE_ *J{d7/Мѵb?P3A26Z&yl\Afos-"TA::1+.?NN\$Y^l 6u RNjKǤRrQQwP+_ܝtR{1FMD>z?o2/mAvLgD`7fŋWҥ!?(uoQЎRx?&*4fk3oO"[6h5LBLPDD[eh46b:fnd"F+:' ~%!o%,ddF}p1[ŲTb߂lcR("4y2U0\ѭ8,^#_!/ 8g7V_fM׮~4rqWMzcCj.~_Ҫ*3q>yq*xFxx3YB-.*TK1S>& JaNs'*|iTuz9r[_Ak>~۞:TyO HFjzx՟hl945 ۊ6up5 6v,%Ť;1U?Y5Ik븶78ybWњ9IJrOxUBϰvCjNŋ}u]x'iz8S!)e;Aqhl;a< >ƌf$͇6L뭺"* *A,,Iq[/eNjXd̥K6>w~} ˡ8ZyD&GXZջl$hD A?1] th`x[c8ʆU:@/,.Nm鄔%/d7 O{> [agaۼ@XdY=vd!MߘjkR"r+X=@B)Z9/$z>@$WZihJDT;IWd`z0 8he6rfTp8Ȳ:.$dfMἙ8ȤքTrciX6IL>fMC?Lm? q/)uMaM:W E6X4(7g@+VAY qۆM+T?N^XYzZ皏2xAN}l@hUf_"&\W.%fP[ҹsϢ3ozQqM0WZN|C76xXܹ^59('߶Q:C[SOP aѪ%{|RR~D* ͹\0lۊ'?\ L(׈ ecKI7yN&!ׇy|0]?/y,ܘfgqT)̅AN^Z;ҎM;T]#}^fi'DQ7r0,89|k*c:ZYQPUژxu17!jCVP u-m&ܲ8-3>J*w:PS"H>\oa&|D\^wxT;'iْ@U "'%LQ¥;i? .T؊( v9bcȎL%Ֆf񏬂/1KC×nx3Nf@I+4/ŧ5|лW~͡*1 HNJlR$5?k­7G ~WwEGzmW$?؞ǂ|@mҭ TIvs2,/o]V.OX`}Q^w?61}_rLnܼJi}Oox;܌3PF")&W oky5G>!7!RyT_,@N67N1cKyJzV\(L~z6e-}]om4p9"A?f}kYP6Qg>W#`jyXQR8$TDR ]kP!8 LJBI9/ *4V^˖Dbڭ6hUd 7)Ȣ\SZ3^-3$E5̿L'ˁ%5Q"4ۣ( ϳR H)mqyf"xD-̵D8'7XM x5kaNI6,BZ/QX$h{YID|V iNj AYrVێuqa_d% ~~n(@srY'8̽Z_PC$[e0}rHV%&'ّ8#"nUc[3|,qZ C" e &➨JIX17 jPcZӂ^ Tl'r]K4gbQ:vGhn}ʣ.ARhi}`^{ T4:i74y.Kd$a AH (f>] ]d TI_`zXd5 CǏMyӵ!@@-Θ U0tNN΃KSspO$I6 vCi~|ET MpB c+`[_؅ofס9 kB:^ ;YZ\K/I/ ]; l1Yz9!k{HMrc茾l{( r731nAD$ ?>cTd6Ry-cNp,C2:+*H𒀜ͨ5:f,kc6;1w`;ELU-y43GOxsJpKրV[dQ߹^oZ`F85dBb 6i[IP14)no&*6@ =A~+ yE"7~ӳnG.JBpq{j\>63n'K(e-#!aU;ClTނD`N:dBKE['5/AQaK'31 &'x k =Lŷq$`ϬnˏbU0oHJF<J@8W/2B J{2].I7j:/'{:ZJ#3r|WwjދG_RĐlEj7Lok5}36`vRnDvb4(~ YG5/oAbˊi{~Fp@ RcKmL8&QDv EB[^NE[85Y_2?=9a;5?}iVH+f7DNl]zPePD/a +XZ9K{o-5U6̜C!s[ٯ=ܓJ_R-.&D$+i9h3D1vaܺ!`Yo2~nX#N_g1>f+Diä۠j//)akvgwسJp,"C? W<kyZd 8ߙ`@F@SG_LT"}M eڪ ظ)91Xaâ[iE,\l0)gy'=ߺzG`U՟.A)0u032>G4M_ c7Y@)sk}9]"-tTWc[h C x%unߌv2 ! Y克΄n VuݱdJ~ D>vFPgQt*4"W3h:~nNV Yv$N+ (|gip{&RطQ Bn1k. %2*@%֩?@mTec(4FVzZO|}>}eXNN+L@Oj~E?NvGrOsG~tCQBK)i0(z{pdՈ,1֛\KF< C 6Rl DZbL}h&ټ6B !@åt`NN 99_!>£F 5b-T0]efPX6n f)?t#4fCdMGTy/ ={^>}';cCAՒae~J_ leC7P3d;7Zc TeL"9 s}9 :ώ@kUu,e.n 7ؚ=HUq)QSekە_\Lx<^{E!tjIjﷅ v2=^v*`6,\,ؖsU6ZCa~NH͜$\J |>`&=z|5~qEOn|KLR56ɉ?'2.Q:m R P,avCevĆw%9ә) vm?vug8nT#?s=wj^=W:sb|?ёe1bT8Z*SamrɆ^ȯXxB'OD>[bf%S֫ =NG'}娚Cm &\xܽkDK>$؋{|M7 \܇"17괹:Ot|5 oP6+2(v8#ܒ,LLDŽ0P;v^ջG3$~ߑAcg5Xជ*nZoy'}Ĉ#!vhu,R Vtm?rܼf.IX' ~tV*öF K=z"pD*|3A2" ;Ծt4`sҎ˚v>a-AwN~*AxyCC|5kM|jKKyg>vߨ(^@LMF̤rS|^,QX]JӀrΊܿV̊6mX-<KP_Hj3gɗ)Z[d%V%ndO}PUJdH, 3O8QeL+lԑ+&/!s[ˣ]W^m_/M2 TWz 6) q ME^n}^.ӕ 2*#SWD¤j*pgkro3S+n(R =?:SCƽH<˒cW|JLZe+@eէ y9"hFWOEJFȇ-SUv~l҆4B\ :r`fcӜV3[/=`( RhGhI6(e8LF@NxrFtq=1Xfpš@"#\$؇纊.+u:@:{O4l[eNh 9z29y"=B_= Tr6B{e4CɪI#Ϭ?'H! r a|gȺ)s1\jpwݕ,c- #`\J!(4/-Rreĝ(it!ƄyÙMjz 8*鼻< 1D/pkHk;jBl9%ebdCX̦S`{Mr=SŮZy6HpCvb` [o<)枑aVG#eOsǼS|Toθn&t*7}e#Nj׭L //?עFE)Ee }}.R $(m8\e{6q;fjz[1y^`({+>!7"WzүA^.y["T-r:qӽwxkR~LHK4>x=(6fꃘI /˦*`k[ ǚB5,(E'gDaciR>K{t ++; y4m]T6nN.ׯH][Ί]zމU<{q{yχ-/injy,sG uQ$^עKۀB:. Q.M(>8tb r힤 pj(DKςz3}Z񼀸3Yǖ3FTz#^{Nb-'όώ+ ZxZs:?5.bNpK)M<՟LnY}I:yݱLAx `XbU؏"=]*ɮC%n' EUA훴CGAIwa~nݛUmPGlMb[hxZ!5bx6wp}j\*s:ykb1D#AĮ`X sUyaVSw_d ȏ;ژV%`Ev͔I оD6m+s4. ꥂ΢]"l֟1 nYZ5'1wfM{ttݞ COHO9óIxԢQWhTVք; ktbf>hdsýcwwBG'(߶r8ƷtҜ\SmM MvD keMo6\Jή)Zˉq8)h1M`ܺ4S;|-qfpLo/F݇5#- ޢt}]s5QdOSFӄ> 6Kbʜjqۢ=y9 s*p"܎ihvHhW)=RoZ7AV?eCkZum- ]gwu2k+T 6TGoC2SX[=i<'f3 Z%kK,/%mƱXAfwī8MIڣZqpt8.*D&dP|#KգP!!AkP7=_18tF8?_yV3c2<8m& S͈%,+y2Ҁf{|9+וjWf;M2iiFë3oIQީy, ۮ?lP_s?D]@ bBgxo,76peCQ+#jSm.;Hu,r jTu 0ܲԹtw$hxMkbR\:&Lʕ Fc߽pxp+Ew;-zn3;AO怴+b_hsGr|E `Ǡ;6=^u3>%qM&:ҍy.~xC4MZ4/o@.JD!]J<Ԗ9X1頃xu7V׭תhe AĤG%ʃL-%Sf~)ɘ@Z+̏&9& S:TɩFG\ Y7gRbČ:o(eM M'o ԫiUaWH ;=t(-0 SF\Go]iY-ob]E4*9uyBF7t˯ijxq|T&cb"V*˘k4y{}'d2cMY0„Wm=L;RpnrJPpMk`;!Jétv׾G՚3i(Sa%znkՆ9),V<` xqST*_(!$qUg0F](+l d`NvlCL m5fb o3oړOL} HVhvI [CnU^ &Wt8 aj"º^-xq7zyxq:?ރ˟6_S|# z41xm] T݁Ŗh"J/ I) o\EuҾ")?UpJ[Zw!jSn*#o֫Y#+iu H89sSy`>Ͽ̺q5qSU׊ Rg0$nv?57ӱu Ӂ'N8` ^wsӭ$gCҧM!.J@vFE[NE3I 4k@_i};x9Լȶ *KEA)ۍ͌ Y'SLM 㭥ף(Bf6hsڛ.ZD; B( F.sjWˎ0.u(tS?!z5(h2Z{#jEn*"V #E]3g m4s2pb  KJ 7C-úw!36Ac@hA3=SҜ~)mMU!>R;A4ߵoޢ/WIyYѽ@EF=2 mZDSƲۍd}l:2\iaPJĪˆDu5_}ԤYirkFۙ4(ٜ#%TΣ=gy#5u*6Ǜ6ݬ];OV B =>_UXDqЄ,⌯H!l+ap|j'-zi{vLYE96/k\.)xXWT',4.pkN%J'Fq\^&&,bhgpTI% 9DŽY;bw^N2 @~{;\.0v-eOc!Q)ך'U4Iium}-A^*kGfv;u>Ie1S>z< ٗmDY:__^8,4Q*R*1rUy[p}+ ~:mԘ=āt}8ַJC(DPMߋϕqfvC~4Tĺņ4r0@A&19P=-.x//esUn"2`쁌-ú=_Ϻ>5,1`S, I\I2yUMql5+J, -[W yj'OP%ܤg$b?4JR Ӵ F"Rt̪Z^w켁.4#onraPk{.mmL`3=eT&ނ_dvXrgMj,rb ^ٽQhck}5;"q>Rn 2 o|l̩Oj/fEPqh`W8bQ`ܾ%ZރH~y@r#lo̮$c~OnZ,8= \y`.Cس_&E^3@qnspυ:;rQ9ѭ)0%'%' 5RY.DC`h#=2`@Oze_L'>"M!ᤋXr*>* /n`ƃ٩CivKu3IlN<_A0 aĚQys'"̨az?"gY3<܃ru٬>S MG X,_>a<9Pv@ D H'<9B0D?i8xRfX&1PVlV e%Q+X9R$}uK^)}x}2mt7փ͑4yų'"C"^,Y3 f'4yjH&?h/?LWeR orFֿˑR>t{ @Ct7)>a>-1|YLI*R:< $tڽԆϞ&@ЁAyaM&$c<$ |- ه"b=Ĩ$%AXSl," t:T4^49;?%%ڳt,"k,ܻBHM @)/4+Ћ< zE*Ȋb_-6hm Gl#/Tuk[ [Gؘqn;*:em[%aس3okM% K?Ne#-(.Tx1Okqsm:I`[tx%ɘpKFd9x8=gy;1YیJ#&Fi'%\mg;Bm@N# \ %bA53;@ 'lt52uJI&q%:ֵ(2&1k 3ioY380\oc۸:F4"iS߅5& S0*l@O2: uǍy1HswC|moFlᨺrGhT:!$7 83p4YX2NP!os $WP9Amu{Z9[waRiZ"!ޮ?"48CZpislܖM(wzmvGO|Gq3-+DZKDڑL~=D)p-uo;B̶/mԵ+N %p1vBuQt$݆=A@Lt$3A" 2Zd&cdBu.KBox]Ẃ@IĒEF=/G=rL͓"6BHLM5šGyP6k5˵@·ݦy96~hঢgoٍFO%cT?4sn Ը"{, #ɷz /nr6l$S%W~^D.:) `B[L 뢶YkH Wdb ^ذ^^Y m¤rn•.O9 WĦ\"AyrgBtFyh /alNEm7Nn>X+"D% i5ǚ0vZj"YoVqL`( Q_ sx.$%iȻտU9ρyl2#?u +ѣ;MLF/gW^fQcu5XNjsӅ:̗0eӳdx#qeD5l$ꭥ$x=ia>z6Ok5Ba,xG[He@':2 #mgک8cff5,BxWNeJe쵭tD z)ܰKP]\aTz.E ;ڹW3+ 1DLqi"= ՞Ej{4^4]*sKt+W{eͣLv\oڱ]dym]mV(^WEp$F|2Dv_KTb= Nj/`w-e4#1:ȼ4ΣxvD)A&ɉ9?& C2~Yc^gAY-=!g)I{n^ c!4Ga`+)1>Qš?]##NJZ%D2@d^{C2~T%!!kY/qUXRcE r4%猢m˭GiހneTj{K/EFp-. &+SRu"A,dȗ]9>D/#*h<{BE,:P?]T}?[>{Er^ְ)eъ=-I;=e|ז+Pi$m7 7oz%x>CEbP_ҵqV(!NZ5ҿi7 =@/˫Dfs@NtGy| 6=R|eԹ|yI rJ͇H"٫W[A}~[jN14I @V0 $^"5-v5P;Nir@Юhm`1GZ]('}A#K7&s>pfv-Gǚ?0yw]a%c^&ӳN .A8҆xhc*l)דal!|>.ܔ:)_fī}hLjXD3ZUp\_uH};Paq">dGwmiozPHOS&Cu= O8"a=9f"[&?iK ¶X)>5Z#|7:jsS8u 1Nx&ߊLbmw(0psE.˪FpX `'ӏlO"BTMK4hq;R}j+R'+ tzNלKQ^_j7HihR``f)42s_*R]ͺ=M6FNdYn( #oPшڔml+[#\F~7 `u:A~*vZ:&,Lu~'(9ei5ti3rO{ӞKMdbK.]a4SZt ̮؃aYag63mqQ[q!Zkuc)kKqx( t7gmcQgOcZFޑML@S x׈"W>\˵RǞu"9&mqoEթi^#=QG.eOλ(_VAy9 ҎO@Qt֪kI6Bq2Z-LyM5?haoR&TY:%$[^Hzͬ#ӚpJ&|N[fVZ}DWç߁Ckv6l53D1 [R{'xݰ\O`粒Vh+fft_~˹w(u,>xR)>b B}+=Ľf ؿ? Qo!>ߧBmA[0, ƅ b|aOh謍`ў!)1Ai7O">ޡĴJ'&@4E`p^N;Bo,Ƅ]:hheΥ^U*)& Q9NP]e%2fbPrŇ}^^1+KK g$ϊ=&ᰟE1̒^Ս->L FZ؍Ϝps %4cfT|'K@Sw7E"X O#b={M_q9J"G!U/kݣ:ue[n%\ CHb{ ~Ʌ,)x2ƪg~RoqR1S&wre XBvD H6vI\KN9QBh?R DbvlU^bEusΒ1/%6W)ݍGW1;ho`v񼍘)w؀Ea uL6W'n;<][ ?  \M|W_wxȢ~a9;ϰ8W_@Y<ܛ-D8 %u H\0 F.ljF?-w(; }=4{,1k8Z"36ܾU(M( YK8r=!ȌFU<N&,Z5 #" Wm˟CNE^nc5=A(5甙i٬v-q]>-鍇8"*sJ샦2e-P.XڬwKvȅ7܂N7o!ۛHcpw5رRB#پzLa+Õ=Kd[zRa^# G;"bXZ_6^S0pN bS1*G&Fʃ铌LM۳,lp-NٙuP><״C%Z*q`8Qވ^>|"Am@/%m cv#]Y%?ehRGQ? ʰ`F}F:"fZЯ| mȟ.P|E}f;GAZ2νBQſ{Lw3,4pg4G:Bi'z氟H o:8XHYI<+˼R>TU9DqQxk. 7nx}$\{r߾6G@S\z8sb,%CgyNTk_Rc, (zqz:c;d EUt. I,o:H ZUqGI"iP38ɏ lI޻F ~tzЀrj+%@f_YGF;Xx6B ږ(4A˒b uܢz>dh|>_ރLW%Sm0CیB-kǺpYD7ΗVm_0x~&Qwѽ&YR$*uҙq{)',BUUh>BR/掊>UM.]UN"w!6Fn6FnPḫ~\TO*]ZFTDox>x]Uޛ=uCZH@,)e3z{Dڹ) Q6[e =&.X+PqznpTK_{/QN U(7x[޴>iw"Hk%fMګ飯;Ƈ)_={}vmMB#"7*򧠧(ah0* |`vk.Z[n¥@W̚ԈABVhC[\ۚ.0 ڱ@ X6F8Iz-W7Z; }0*g*R fvorq䔢*K x0RQ>b&2ٷ@ wAZ5<4jNdlb}H!Gn_J̤[jbfv R1Qgb`R-*[U ^Rb!aN/RS@ˍ D>^z"|^CE CRۻ_gWEGvMm!A9wDDzJ?)3ܜ_xL6hLoN<4vϳ2|"wL&q@Lk]eRe1 :h O_<$uϔgd`{'lI% DrX]䈪Da-g $P;A6aH8Cnfy5a_,O}+5tav᤻cJ$Bhd5a :noC>]P98r凬Dޣ|a6sB Ѱ@*ڜ٬$g{v5:&l{꙼<|oGQO!,NQ`1Zho8&apYHc}K8̟:CAfQ*X<o}2@6[)o;ex?0qsdBcߊ+h#{QО{H_(UbW5OƤ]DdB#?Cs1ֱQ3PMB RQVG>QŚ"_q&HcFMzx&L%;!\wiiFKqUkJye5|rqoN6ڵl'=͏7R!treR֨|D~Y! [nS4NF)#T-eyeљ &T/rݸ%3Dž/$3!!!q@KbBgz2k9x WN!tqS3`؈Jkr8:)A1[(~D*Ϻk q#]oa\ԚUH˪񂹃4R"/2nt1s,(en$1J vxE(|5V-y?hwvt+jn=38H?x3ec2QS΋WqxiDXfa^/@Uvҳ(r &1Tp3أG pIƍT$teRĈ]Re>A/wTzJ1}yq${^|I3D~fX˂`Yˆ.jma+"9Ώid7$mFz=LPtD$aLu.xy8P p;ֹW&bH@XM_ |9*wrvAU0<R({|^f>Lv%e^O)SGvwD؛7UG%ԎS.d=_h8؝0mOxLf|u8UZ>ė1uQ g `G@2Itߝ/J|acB- ZLմ!]X3 4ܝ4=n-?Ke3SfčmNNz*J6hw&mcx{S3 's.tT IXe\јx2+Aq4=it)EKC4\Pq82fέf;Sa?iy,n057~͛z'PBnw3xqjRITh@`2a@oYi![]1b3O& t"Un34̢c[U) Ipr\4u'șkKϣ'3 u&=N ~2G{KE=33]*vBnLg17˦Ł`BI2Ŷ^s*Y"RG/=؟ 56&Fmf(yAq L"1m-Qx>B.OMcH zqsxxQi` ;{peC6.OJ鹲b+Pws 󢖕K=54[  KtPU}YgiϜ'S4V^x.0)nl2CEjb+ %(6!Wwu@vQ;`P=ႋ%G2'1nZ̈^{ȨbΛ֌> Q RP659^,')(JPQ\raf2%0TQ"v;;9"~510݀INg{ S};] ڤ \S2yjR(|+: YA#2|-dcMnB@* ́#o2*?v>O 2Ia ( \DvT+/,le =U-zao+K?w) iv%LovMpu}s|Xc `DU-OCS.SAkF6BJqw{i6z`EA3wӶ ܢ¼b{2Y[oT;4mClS8p>)X%|_u';罦8eDdǥLEw1 N"ɂDߊ!-9+g{NTNz/T3;+rX@s&ͽl)DGfv=ccEnvosdF*T]&!#߭+͸lXhA1Ҙӟّlݎ>"!wi |P 9xlS'dyS| esXˌLEy"XNc"T -#-#\SڊKe_PࢊauĴg?5VβN'HH 0vk3RSZy:dW DZP]e4^Bw6N,t qMGRnw}~mOCokBƥ/Yv!qOcL6tJѕ3%rO`:;j`fyMq&LH ywAДi~fY ̀$}"YxhP`͛Jz[~u~iNq!oBF/QZ~nssʵ4+M2>~ FB⹲Sdww#\zw.ljn@!I+OKjM΅ (}PNtyYÅobpAM u"rӯ2I3GP6+<K·Sb=p`)L(/Q2oH3^ϭΟ!D!Rgw3_SaǺF%9K2d)ȷgȄvl܆} !91B;\ rEFH^=] -VHf$RPyA<(oi]e$|qWHGL}<72SL77Um}T2Ǚ쯤ny #sx0%u_4ͳd7=g@ڎ,ʫyX81LL }m:DhcC&J4"6 1#9.< L鍘/no=4$aHM<R6Rcڝ)|T5MV;"xUQ2YƒCff!^bvá؋̓a ݝ6x@-al׍wQ:@s9A#;&9gJy,QnE6ؤwlg~^-S,0o?Svcsn|{^j;5Za)pSݖ iP?椨q;zL<2[A}&Nj>BU7goSQ(YO__fAu[8yd/酖%U;B&z.7TCHQw CEj1`nQZC0>N+eaATYYEp6uSS O4.Ʊ{ 8|E1%1ǬƜ-*$Ö*J*sVϼBnH0n 8$JShBXsgW=65c- ncHPiyo'խg ΕQ[K0. ìz#FFRd 5J8jwj 315wV{4s ҆7n{?@|n8 &'RNX\tDDM㱒81q'YoF[zh-1v}cZ\&_2$;h1 w7 @>Xoؒúi!0"wm֞HA^' ɉ{ oZtvmt7GE!am4x9ߥzUU-8p>BfҏΓfͼ&((wLadmljn[+_cgǕI ̨IRp_oC?p9dqʊ%Zc妞C12Ub,ؙW^mq$n7,M)8ָ8޺d`I8hى|D hǓVRb4Y:ҕ+{\:ESsU99 Y¥X3MǧOxO"RpҀ8ELdf2ʾ4NġP{xVo J*3?Le@s]0Ss5Yߜ){J2)8(rP䦙M ,`f3N8X4n g w +G[ƍ #DSB,y/:13ktgTRÔz:0XTt;nFr TMDV{$S/CӔ dKəBR9{59ٓ<䵆i18iϥ}8E!B:r9ǰIDW~v^ğHjPc[xG\2}zgf_;~$ѹv1戕#S \LLR۟A{$&cH )Y%.ŤZwPg;dpu fقL8u,8 j7cW+ڧӡm3sF7MN':5}@[5Oo_e-[|l<wEUC( "qF iեlećb sD<2Mqu>bqC.%:A3UL͖ b~./M[ǯ#a 1&tȝ\E# PRpYʈW8͹ ҠTYWקcBy W_VWUF35Zx<4 )~m9λ7)FJG:{:iTxaOFq/A1'f6m%QZ״)lp=7moC3#S!C( !*Kf%!5g0Y/d-b+GTRGV27u x> x fvJyٲScD2pL9Z$e$G71xe._Sh>VEtf^Rve"Cuwp#4>1H E\ǝ,(]ke "Cޔ6-YZiy:Chݻ 1ѻ9e p[\R(oȼ/7Dx OrI*pa~E~gZ+y s,~Köv)L) IkEWW`GQ?]|)(UsYI ܉vzYqe=kwv=T c 0]e(wz)su-"NoP7 ȱE$gp9 ^z \*׏\6ש\S\=3e!aZi1%5oڻru bʐ%N8Qt FP$g΁I*S# Qmdȧ[IޕS^tT4nʻ_V'?F= HH*he#:֨懴gZ~3 IdBۉZنWdC-KnIxPi^<FϼCzƩ@k)/uԠM\_ ݍT4gu$88|?($3|O0}q)؂ U!l;jIruӡEb#dqieg0EʷKÆ>pk|OIͯo}"^+9ӽ ##@,8@٤} գ彴쑐a8趒_/T?!!VۭX4dB\Ȍ tCrNDZԼyuƌ9/aiw{sX<&u9{(,makG;&žbW~}~(C{%7PK7 Ca׋kIg\upr`ew*5Pfqg+na* M`Y$Z.!c)=ixAR,'P6X _|%ج7m;_ɴb(8CӲxTDJ(c[7׉QgAkGo͈9V~⍙nT %z̚*rE] ҧ DERb v4g %Q彍i#ʛ< s"NO >Me|gJh(2GxL!uGcʄWϪ!k'}*Xm zf'ɟ0ib2˅|/d䜖0iŽs" s&)a'MpQ]ֶezѽEuIܑ{ro yX2B{$pvXx1!N>-sN/E -/ h7m[<#EU;dMn*ϿOϋ2ȡEuR&j۱kE\~`Av`phf܄NDxgoB. /![iVV%@{퐫I쌿mmh@V=>tI|3HT^VihTBI9i1R_ C 5Q^O܏+蠇RN- o{Oa[(ԈYs+6 r݅߶A$}k (9FJ҄j ,IR`;(P4{Đ$3TQO;hyLU ? Z|SbTzJrYW7=[bМWD AP+0;KO5|*)W-Afn7}*^umn)0^ZȅpG Sy 8ܡ98^'[x _zH1R~gF'qWWHb\}t[ @!>d[/e9E$lOy;S(*̧FEך&Ԯsyʩ@<)*FV2cS_L0k?bpJp".n2EgF|xAqv> en;Z.j(}~V[S9Dz+Tv2awE0٥&5LS6T,iYJ=hGؽ?dގ}AR9qhí4if?@z~}V1‹1☲TVy4Ğ3z2A`tV-p AHc;y<)Ũ>Y,vdrOAYW oKwkNra`zږ[`;ĐU]qN.M=Qv eKN*V/{> Rwm8˽zjLPX*5ND*gOL*hPV Er7V< -4sMU_`*p8Xi#[PlW¯++4o!ӯg'"a\umMe:$lsuH4~ N9w icc?pV6$HY;3<>>C`Xr]f0S V:>Vl)NG@ƙ;3ުn>߭6bG[@`VLm,Rc+QyNߤ ++9ScA%\ v2Tz:GMZd8YNjjl ,Y?>}=S&(!SghZsHTJ%iCi6,bZ(lezs]TݵX=O60+.r%WP @͈K>Iss4q"%MС?3ywc^t,Mx 'J湇+?4gv"YL^'> bng)lC$o@؝PlﵕG=/z]j%bJvy4Untobm ʹ t.n4)tƒ^O*qN[rώe\O W{',I. dez9%M0xDt%2!jVL+(C ɔK'\Pr$0Ͽϵ/}ufIP]H>6C*JnHcX2N 9\aX%4DH \e1=%w+Ԅ7V4tzS@-]AH0_O.A+m/.),2.pG~*+DIޕO1o0&oǾ)ʍLT\9U26 }`LJmx5p4ح%N߬,X{K@^ '}W*.FD,Y_ y}?-H 0ǂ6U˟wtm0@`d3)0k; ֿB8e)<.5bִM$?EyN Cu0.u{tPspt%Yi)q%c%dL?k.ƘYTѨחө]P0 PREv;:Q0pc_"2yXOOX=Sɜp/ h)=\)8QF%lӚ+sߙx~S2DjEֆXY9+oXlܑcޅ2I%N8zm*8eYd#,4l?c~N}` !~tfšLV>|jN)F0ԨҲm5,I%MM3]3Lv(nA -?M[UznYu+i {̒Cn j {7̄y@|KC[z6"8f[:~H >G+Www/;2R PT]Bzfpws|'dEc'YVzm ?Ӭso6&6 D <_ u/x}Pl:NLFrPPE;qu" Gq;:8aF,7+Pm,JTv׭M 73k-BPF eJ09h_ "OhB8EM$!s|〻?I1s0s(:\ȣMD#Z- o:߲a暟!-bzPL|b(w>C% QM!)it~,Nl<2iA^1ݻHc,› qhO䃿R?νe/3 ((;3M٘I-vܝ;BcXTw` '+[PcauЂPS9ޠ1ª?$GZ"%eZ:&z'Zj5'/fXjI`VGͱS@e?g̕vؑ[w}s0!W H̀!w2ToF^E)}؁fcK7Lާ؋O֎W~@?['4m\=Z$lՖGx93FW<p<t17A4z|>ԱRb"3!,+;0o};\L\@՗ :mNK'a> Ж ˸C,Zĩ١ӊIxYTHv*rֈd[Y7&wnh?#DYwe.ԟutY V&wM%Dp]":\Q/H~< aɡ,M. xk:h8 :alui|"r; uw|bDQ6H]TR:D;գW;a}(w[T82x#=Ԙ}g,p>ElYoWl$r HěK*gNt3B..5oヘ$&I|''bH ^ `PEQ}Jg'30K[aV*9Ґ\lx?aNj8V9hL%؋‡Z!-';1-c{'<%Z ݣwo2HDu L Ocگ>#JzҗqC+Yw0 rϤg Y@ kwH ՝X+xvber5`˫&]͐zhT=,@YB}ʹ[oA7@I%´ԛx`HpJVrWdEPL=nK}ZIhyR(qOI)Kȡ\8&̴5hY~&+k%`(hY.Hv-DDž l g*K eYsYȦi~=6;785EsNjlQۊXw*`C+Ra##-ucqMW(Tk(^pl!|=db \YJ^'<΂X{&+c6,=!ʚMV~i<3}:GoA3STs} &YMq\2$NUÂRې+p8̷E(4@3(+`%C@f;4O-Q5O%Q!kgpdkzu ~Ee%Xe U%} ,b;JLՎMcM ol;U%GSR?.J sJS2kK C*6Xɍ#^2nK {a>8Zǡ{W Cb{taFA _,Î╶|ٔ֔j7 JR-7,#UGUE!5Sљ1)P Ä7U"e QQIFfpu KKKkPzPWdĦOqC@u'})Q|&:W(J|<;B2=vo\3ݩ՛"xWEXT)ջIiᾦWGU-olnHTSLG.Q68}y&H7L/DgwO|XxBtlڧoHᕚҒm'&QA}428͜('ۑ$T):դD)s;31"Qw~ƩLw`v_N[H9aW!|y44LmKR%2zآNA#LDZQhd+ _W}̎=}ɢQ ڴqF;^RYxl_cn_߅q9Dp[ t":ѣjaXnuZRdI뗮M=WM;Q=IZ h*] ԇ/̧%n8!Y^ŏcf0%*͚~iUZ"{RvZ^ N Ux۫H Q_/]gh>.2p >fzRՁL(T9I}GFT@!`VK`dikJ2FSgU}FG?0 ~Xa5jÖi` @K8͠v1m:aw7DIt,}͖g'3>E^+rbWOlMioUa!aoWs_g(<[9^QIz.r ]qʌiysʡv MJM<&Z; (9`SE9Cj[ڔEtjilIb ꚃ+Nn]*&l~k gVčьxB [>:%6Yjgb­$GEqTFy3dK4F@Z'*]9unZԁy6ʖH&ew( t^LO Cs,tpKh-,ZiКTj a'kYHyuY{ܱ'tByY<+oWu'A`mnkuU+k0\JH:Կ+7nuMwEl_܊\:S0V'6!-K(3z6) U*g*.g mO=t\(ELZpQ.Z5F&k'Icorԥ؞xȵ_W-N滯.q )PG:},}'PO"v#5MdvyU[]z 0)rG: ODl*P[|T9YLW@T(;zJtw^ZZei_;j_rW؎%tlӠR\}ʍ}ѵO)#^)`)'$Gju 8 v%ï#/־@tN;]g~i9NY7G 5U ]n(r, p6Mk]$v~ 7ӻrFj[!뇒jZ{3A\KuCTwux,=gqz; JKT_.}*@2G5gLTU xݠ D*$)X`kDg2>8PqY:gM$EAkLPhDtAݚ9I/o )R(׆WTβNY˃=L3]ggq{ dbe 态 ^/>;X0֡Vbc9 h7tE->)$l(=~4#͞"3p&dCtgŚdЭ*jR?,UH1ոvDQ|W"k(*ad-=0ؒTWekxQ,h.?R+McepP*ҽZwoMlarɑ_dYop|i|YYxBn!s \ݰ"g,bs`qDĊKjy^>vS^<|-)Aߢ<+U.Fz-boyqLWhMDCFPdE, bJ^|۔|P2vِD\EO06~J'=:2#"1/MJggH.(&uϯHƋAJd}BAD3OE[w샠V17 *BZ#Qw DԘ,^ѵ;u4kI=fa|O3oF i b*Ygȧ:o#`5 g:+<ָ7r5dihgzP~ĜKnp9|mxYXa<$z /ԚWk&֎w.HpAԞgQa!V7az=OkT1jMI1hDon>>]|5KTh֮e!F{faEE@d`#F²NfFΚY_k:dsIoŵ'R*p?^^ZZ?X /6H-48LcEeGnrebRt ^7JDobco<ᴨdĢǍm>/~ WK3P}.z B$#'"PH!-i56yKeA)|"l#B̐6O`g+{A Kq~!Em#8@#Yg-;*bE8Pgo |,;82A1kլ.(1bX01= ϱ j2݉mȬ FN [ЈkAirZGcnN4 Ҫ ΦnO.|)q`JSS5klؖ6}+8PLog19[#^>'$B &>43!7{{1Sl=ZG3q.(a>eLc3*T=Y=w D0Q;x8~֕Ƈ;"J(fvϟqXL{vj +t 6À4QTO6ڍΚ&VbS( ;G{ŧ&yŪ}n(rҮ3"+u{]掺| şL" `pGp$%M;+p,jttǽկyi+~Ŀn +vsņ }SF/ƈzLM0VN>"H!u$"` 8v9S^` u6Vn#HT$!G`*tVz]AJ YGq@!dASՕoU.T^aM$g2__/MܮNs%|nN,G5s\jE21l5݃R@A~-FմoQ~4Ѝiaqqo^Lϧ%7FWa#m"1:@T|R#LyLyyQ_Ct@Lg(E*.L N_Yu߼9]_ɎUېބAwcIjwXajxvTgy kХ=ѹɒ.}B 'G:%K1 ]m# 6a}+pBTZ`þM_̮YT>s Ȑ|~>R2v w*U0i V]ۭCqs ̄u2sa"ϕM:|#J&Uڨ _-}hmXz5&"Jq/ƅ z:|\#(eh l\7ժ/I(_#%qVU_jɐ~*5`'?0'!uw7YWAP gqig(e=3Um eC:^McqYv^-7`*|Gd(GҦ&mnF;oӍ} " Gf13nҙEݰ{F,;WUsԓ^ԶCdi{'H}(&1h/cf.fY1L3'%筞r ;Ƅ 쁰Oy! [d:GTr PЖIOgE~jչCo2XK?={3=2-H$GnIqB%q+O(hDQ,0U0J#U\'x1~FTҞrqM‰`("Q ?'vL#MIW_E A%WM@j̳U,O5=ȴ`-GN3rdw[*(p*&MTuY:$ @uL>D{W8qّ Mbc_SPwJznpT!XN^F \ڲI)%|pLTA3۽$H ։`[=Ӈi{ބe,Ӊ'qRiZqtVm4Kt}JSQP-uy7X^|}eBDUr0\lgͳ3[I\zNI/k"kMs̈G@a?'72+`g<{0.<}<mѵ]7xFAK7d!| mS.WVc*_ڠlR!֟ ` obGj-F+a{y- ]Lpzl^.bw`0SQ:lOCl0R_]5R^Z:.r\=Z!@DQ܀L}F f_i\~R AJTprSvT~l2]#|1w*I˼l|6KGbY 2 f!'L.$ҷ9Ԍvv9}J _MD2=Jcfxl6 h[JE_ 502GiqZ݃dU/R:Y)yxo0Uh܋f9-͜[q)^D ^x%*ˉuTzy1hIq&qλުm} 9Rt2%$뽦Xvpfew?䚧+[YCMr}UR)b/"v'A>SX! (Hmg8\{YXL5( "Y2EQ 2H$q)9ĖkA]8 CZo7`ilP;s z 8 ~^AƵeIvYA"*T+8ӑ{!5=0T!{k:9S +)F#iV,j=aM_W- Bh~ҒsM\FO{8=+IcĮqBb+y+uQ{6S,[Bz}aOMccj8C1%~|k':>xsC^)\ r/AfuHGsxx$K@9l*cWDs/?R*^6 'f"|À`C῎}JP'M3Qp5t 5ZReoV,jrDT pš]ՌF Uűޕct VXdե3_#)1pj oQ-N$#̅g_n#5Qi!6Sn9CZSNOh%akyx6_2>(ƖQ:K hseuɿ9VEr~,/ Eb^B?4ߧS3 @0^Myֺ7bьjHc^j>kC G\ O<ʏ&$>  HAPs[?MWXdUk]駂 )Cqx?vM`Mr9, 5FSHplGZNFL+:k- GldV8WUՔ  (%~P(0 O؝k/d)[_!(tu $q p>,Zk֩72:52H kN\VC#adn R+xS*Yt%8;Td+&#eyGURbp 6" Qԅ * GRDAp>s f-WrV:.&Uũ7K $$55i=pWOfr@Qntxľ'$w?dfMRwJ{*uݭqK~ZJf6VuZٮv+C-MlLThYlB9DZYue$d( ,et"q-`[IELR mZc(7-hryIJx;)} bT_b%@AGd[/2,<1r 6i hD{A1x٤G^r U䛻0I*@䆬ELF8 d~W:g8A;^c܁ \SdWc'}9沺 2)KS, (g~9θQsڪ qܙkH=/mYחJ)Hq C̖ݷ 7LEpGey"~^$%щV;yMٰ~\eTS\=گZOT#,6@AvN1DD6kK*9=·D?BX3ܭ‰"y#.uw` t `$FǷ`0ĉKܗMǥ35"|VMR+|]#qB){  Cfs()Q'pXi1yPҶ:~O_HA챑+P"6w[PӠǐea@z_..m|C|ND+TJN^5P4WVBs@Qs ByH("s,LQĴ`~Ya $L Fz7A:O$c^Jl{+gs\(APC24Ƥ4[3?PңU]0A PcK'QMH:n&ʝjChJE҅Ͽ8^t!z谹CDڱ7*c^v(("h3>M_ewP-=;yMA獉gYn)YP8#=ȓAeMe32p ."m] ,|Kak.h@:Lț*C06KED32v>B(eЍ">M_ T;Kaًl#ш"5yJAVNHK D"$/r.o6*WՔc- jdS} .?V] %<0nKR+jeQ5^^\Dix'-j'iX?K&G$;V,k 䈱mxjmu9n 5Z{8-i3"E&3JK6s-F4|.j6w3 o [7^H75iSw~#=Ӎ(Y&H*g\1J>IC|UTD^k:⳸~$>WZQX:gSL(G fm짲W\{vއa˗a:&/A2h\b^C/.j#\>V@4O% ] $mSMhO'+Ȋau`tryeZ҆Η:΂^ ni߿q@~¸/1@=!A2<)IDCgPE(Ӛ'^-xܢqO4"K>&pH&/Ak--BR_)S/X"|u!]T! C UdZ%qoK̔oM,xٕsW8 ZL1 q0۰0s[}j?eSXh||616)zsw_Mת]JI^btc'_س\TZH0N%{3SI`uk/nQ.{|o]MT67ԧm@V֛AzEj^L7l7dZk]RnYkht%{%] ZRN@|5${YKzA uvRރqQXc[Xg})4"!ۓz}>a:$DiG3)4|ۈc>O4 =b^f˨mx0$j75͘yJJtXrI >C̗@\iPܑp\d$'}eE| ʗΤ6DÔVmC͇D<߾:/zdkYnAT{1%,w-c!&gӸzܾuΒA^ZdJl&>yH ڡF a&Y#=+\T0b}~eO6({*D@UGyPlxa| Y:CKI4f -Kﻇ1,;urŶȟm嚓KQ[IMM"/wlHdpaRU0z[מ9ݸE;XAb2FsT;f֥*4z#|ڰݍo' J9y_h.ʩ/˩)_.^KӻܠVd|Р|3s*jscczQէBt]V[foVE= p4C-,"b{AƳ>1UB_9l5? .R"v [GV9b;ȧ4R;Xf {Y*CǦ+'*b(< WF5;b,|Jޖ`-|lڄ+ >=DjcAiǨy #ީ*4w% }.NJp퇮]śM&Ux8J{ SqRd^MK@?AD]bY<<?5w(eF^wʽoQ=x==S-]-Q:]U|3A}ٱ 8I{ լrGӼb\+xl'q$>]Xaw{$veRFB {_:$?'xtNDAFS!.{XzƇ'ӄāU^硒qs j+P=|S-,n5B2o:ObRHs3I0|wW8}G1 4 ;QZ,Ǎ =* $J]z/>=ut欰zx#<.LD㰫wVxai5#LT3kD*xmMӽqINHl`tI}_urE< 5I{`qOnngaO/gܑPbOv7![Ua v;Pe.o6us,(~=u&)q@qpO!Ű5H4HqU# #ƪKOGokw4P-Vr9"qx#V}YKQ]>@ïjn0+yܐ C+(Mwny'ЁȰ00Fz[ԯmTۘ1jgTXFr|¤X21\ La黻aFyYΟ5PZ& uꃹVx~Zl\#lJ -J5V͂ݜ|UI֞%_Cd>Y&nP<-`'SSR%qJ-8g0/+>=iKO ў潂=:\*pn ͠CE۰ʮ?lKcdb;3M| N 5,{Egc/hؙ{匌b{ gNxLi=|uΫkں߉a`anoe6(:paڥGL|s4d@ꁩUwA`LYk "1uE$>H+-PBB8!w٦X]RrB 9%T7) x$'5B(XF|H+918 e+!(T3Sʩb6g{g51gE'nB1 G % O; 8b]w{Zص<}-F2O ol2^ߐ~`yN!j}M=4m0JhUwzf6N*,| ߙZN^& rNFurNwgx#?A OkH R]6\=Lb.xX59`3{#K$t[)d>bCsfv&Ya|ɾ[`KM[ }%fRͯv \QlݽzUyFs3evc8Gv{XB@>R#4,0NͪWimc,ӿR]UWYq;[4Ըf*/d4dןwޢTqo%Iot͢C[¨ ߜgQo=4\ ½fKg'L侏ei> Mú`&9L)?vY9tBG4YRZʤyBM,h{T_H :'!K,85A'M6DIӁZ %9D޿1@ObJ']D; 3B(4z߈0+ek@JFo`Yn`\'[U%d٢Hq^pO StOۅzy9ɇ_N8G*tu^dLQ=jZ#*lG|ܿ~4+o$mҼ9|i S"qߡץHp JXڭ&9aNFGmgwi4V!:8xc]5iR% 9k%Iڷ;^Ѳ3m r D[TT'撢%}_0Whc)?I(J#oZϥBh&#<fk ^M?aJ%Z.P>y22@T7ѯa"Ƙm1N#:nUj=0Gvxr UT# b^+r`N|n d( oxL&d˭#ƏEBӚ@>1d`U7&!8ZߒCdU'F+'GfdM/ <>z90W0S?Tdb/r^_rGkW inn)'#ʼOnEuBK&ƛG j +C:k~paW2dچz"L>k"#4-8>o ~y%xjqwH-e6ex; F{n Ar4LD CI|jbaVDSemDusHw&Rk7.T]GkiJ|9y/ӟk߆nOIGA]uj0pm"!%tW l/۪M z_zCP|.yǜR]YuKltiQeݘ܋s!jF\*}Q`{V c ګT#c}&C{ݑSYK(A?2\ 0X@&g7jw4.Kp 8ܴ^w9Vc9@ dΌp'p r m#1#DFRkoP/jMdQYG4=͖#%f;8W+S ~9ۭ{ 6 |PeFN_m3n-*^ "^soT0q ?d7u?߷PA#ʴ,Ŗ!Ms(r?bIQ5v}%#8Gq&1F1q06Fm@gj@EJ젧.xi?\aix#en;ZʀbejO i<^ 0gCE)_OH­pC09L^߶R>kڗ+pa #nE'Ey2M qfu85.v`ԙ52VBӵJ'4lXD]S|t=s c2=*_ >N}DX&EGL+Srb>7"~$nWDw)=`U F/t$QH.l)B4B7tDd{K͡։b0 dNFHnkX/&*jQ#͐A>51j&z ["Uw6P=tBiĸ`A,r5}黠d{Js\C²P&PCwc#K4w8ͮ̊ NL+{MXI77H %o{2Ġ;5\#ud1zul(-oA//?E+w:ځWUcUaj9 p )7#bϬ5_Qx ^vn-ӽp1n7> 6w:WK'i(!'H?1.@.ey`BǽQ"L@%;Ltm>QEQTV lVWZPC9پ%ROMz_eh =C!iq>.~x&~js70 Y04nԳ_@\Et$Vw!$*=3jQ7?*&~Oտܓ;Qo;S/m^d~/dI;Hszq9V =S(F0߬f@ FTZuv1ކ-v=BDb{ 8ARc ,_M4뼉3ijJ-5:X5^j,s_.~ c`}!׀V!JB0]:zAWD* *^QVh;MUJt(Z>ϳQBi4OXYv_Fw'9l.vrœKj1b&B#B#1ylu/f2.XxYdGZm ##PM qY]2@&=Ge)E&>! W(wY|yV"#l=9o6,*RN*0T׉Fr~~H)bևk_gr!-gtDgO^}.aý#=&VlU+O u~;ax9#2c C4E#fMM)*S :G'V¨r{g- C:@ r{$ '0f-oL=ʞ;yi^W>|+P"U~!'{dE?Y\7qfK*qq'0E&ȱA5GˢKqLXC^eTdչ3-g0 Z-qwzR@GApR aB_>D Ly?GĄmЪ6P o<6 7d%7:=Sw)J,$׺f 7i$/4vPmv5Qf<_ _3=UuVq^fQT9u" ‡*h/3!L EE( ZZINj$2w&y鿚mY{ Q#{46xq2>ŽY]*Hx;5성:nQ@Q/2x=ة; AcC&LEW2ye\ͲK  |H&8j8[ FX/ghiN:W,?W0[ϣjcnz>PaGǩ_)s A>̎@ nRIclQΑK!?>^}rSCX*MEA Yn;5G<[. Ls Ze2Qj<]I&y(ɩGСYz.ҵ=Q 6/-l-&&U:ݕG|09^rg/*Oi'\#^o8*E4ﴉ,Ps3[{PuXv)v{ВB ]P4? 4Cw;prv7m-߫Q~n=pާΌsB"uVf[0(|&늋XopYH{wT˔L ḧ^}% xWat2uؚQq1bK)ztX8pڤGBȽg/& os΃ʼ9mxmõȶHS}5lj̬z|BL;R>"lcȓ2]k7ǃtX~\gm'`?[k/y32 nFfb8IFM%U؏س 2#͖-P]2eHԕI?BT4Ĉt4CTtӜ=nƆ[wlrO2A!o_ :J&;v3u(g8b1瑲")wx6n+lESc죲ڹX~L$2c䖫˽˻ `f2*D<tCX6.(/'xHL,ERm¤hKiz[ }BANq[э'q1@DvE= 3 ~*[eJ$!#0]_K!e6_BJiUU- atcޝT~z{0"g4` ګN ڮ Fowyקɪ a?YXuB-b<`|HtZX|-2>;۸d@D7ӓfyi&|e̽JĈ6!RXVxbM 75iW.=VGT.UYIDP&/3`]pgqNXAhJӲX8ht8ec4ЛXnNsy}칽 kEB64 Gro葋7G>4 g)(N利\[I "O F!,K ê9\kcԛlBqI*JYy BC384䱃>_Af$V9ir8\yv$s4(ԣDMEtTw/zMC6}2%~>h,vª@:{h-$ 8|ݨiIwum7ƩD1VZ A")bZՍq#^YZ E !rĖcP].nkW@ģg2mT[p3][: ` h2p!T˝ap 3_p8rߵsAikt,Rj8q48b wע'4N.]Q\CC}]t2p:_Vb~W 2o?ޛX ?k W^,@|6YCZbCa7p4u}%c;y mN#])o9TS2Lvkm3udY9dAmsK߶G95wӕ|>.1`eUQ`K5&uّkh߰S{|òUs;%^JԑdY;kNYj#17G7woS D:'^p񃲤>gPo7#7 Cq'Xp$GXm&.Qb&Sr):#{t8D q˗JEn/c0| -.Bt!Oko 7OB$o5ZÌ;7A"%%s8K`1ނ)BNTCU;“qڰMIĔp ɻ8s9̰2LATmu؞]gT|EL⸟lrLnr9"pPjv6?s=mWJDǠtEE>E09 =V,vYrNO$ٳdn9e3noO6EÐ~>;U]@ }B((dⱄƁK}OICX92 exKFk((d dT0i)AA ZkHMDVHDq~< b9'A{Kŧ#i9HG4v٘9¨ЂʹX'pJۗ)u4װR;YJxS3 cߡNnx ۥ(qb_AiZwIAiFՅB`1i>Z=b.;u"26!t/y0HޚzKM{oa+^񐍴 P{Z/SCR $T ZqfL@iKClKIH P{\SWgARA9d^Bql xtEzb@aW=,Xک٩ =Ry{hAx8B1CV<̱4!bq}1\),"2GDñyK;G{,Z6zC]m/QCD$p(Y~WH,FUQ&Ȏmr"ty3 Vgs:'##uTm[Ƥ ~Ex Pdez¾vJ C9(3GXҌW$L YWJ?KqJEAYgʚIN餕Q(CIAVӃ߇OVh,QF&֢3zbCS]lV>WzBz٥ !XQ1^e˝n*ZO^Q Ҧ[B9'g^`p`Z$YCh(H5IM2n\*(1|7VNkE]UfIwu 1|},~Bl@侾,h%ǡBVZB kvim+c'S X,[I4EcÏ $66)k^⡋ ˈ~NK!8K^mCwLF('LKb~ /;I°3 /աĮ#P͍ؗR/F6{?MV^olaى::7l(: O޷c0!xtuX̥5">o}[EqvMOpo,:&!a rlJA}o\ҹSN5i"6qڋ>˧[C^"m9{XItFWY7C=oX¶\%!'!8)˹T%Pr&ހj7yTڬfT77QQ5J7L&ZO%6A&Em<_owK)&T+Hvo&ՎTJxc^l ?U>4K 5:4V $SH6\<^->UɆlRޕ]b#vݮ+N*Xwce]5&-XOY]aU75fP#xbl+?j$'[+)T!3].zlw Mr:Z: I4LHTyu*̓"Yu@ g0DPGٓr$,Fs5RXc{zbf#a19k}ݻWAwcOQ\nab/+*R rXͨF֩~ "|.O"M/άd5όͅ&^p%Q=dg 9S=(q,IMwc&>}URh '~pgLPvT N"ksVH715P+ .sim+le Ƃrb-l&=@+ȹm7/RaE CzO#\bp/z`+ /igÈ5vd$(Z;BTc:\XbeFJoN~i!Ed." <9#dT1_<ZQQB0z6;AM#| [2wD!b`i/MA(ѠZ z︑m*5h:9 0: !R!hNK/a[n 3]kK5t_493;ځ#HxQS{K 7i2&Z.\GEѤ)1Z92Ds:^i}Ѝ_ؿ n5Up[ cJc Gl{ hih ׺şӗ:nY9~ kqD%MZN+R\uKUym3b"Y/룼u=@z۪A9ۖO/;QP&a A]kS;Sͦ ?gKPHV87E s|[Ҷ4j!eӛ_Dg|S\7ER7hgoXsgg.1}+)q%1Y.'hA# ZE2zKI_[Ӂj ZW%gmN7II*G/M!QJ/ P>9XuKszFHp]ٙC 3\ɱ^#['G˯_v?~N)@A Sݏ ?:hu)}Hl,ctURD-"(h![QҮ={( ^x/Q12D.!B^M'`e)[dY{;+n|LeZd>Sum}Og:&zGf`;;$2c}(k$w`~XnW,@xYAU1>+2K ^dDݑ9УFh,B N`lu&n,5/A19?\%Mz4@-NpXh;éfdϽoWèF*x"p3N<8qOVϘ^e uM':$sGIhC2 aS!7yj'B,$t=xOcyK"%b,X=YCX3xk!t^C@7k=k Kd/= Z〃ѬKP١hq e "l O58ƯτF=d'(Pҕ;19*Ez6j.0Fó d:/'wv1"َ-U:{OǥO/2A@iH6/A+fBWZ>x./gtW4Z^YF2fd2p&SW -\H-HLGqLN`Wɜ/fg2?׻L}b(LI͉Cuhu51J/r&o$~k`0,&pϺZacbq8q\[i 'Ϟ'O9}U}vݶpZ~]VMѷDtfi\s5/D+uz~"ޡ6SoYQ.KGIBYK,p缕s nn"r\Kv0 rq[3 /&y XM}[(SMr" _[3}$c `xsk>K$,vtI@{~nޒJWB1h*ݼSڎN(ʔ2N.G &nMUoxbz3WO'(0ӻpo'8%E"i+6wsX#upd̤FIOET<3OtRɵe0 .wzP_R.QD$4N )o$ ;+X(f݇dZHsiK5߶lw̝ (x5S^ajEBߓ9 j;{Tʳǝ=?-40f_k>cxf=R'vR]V{cdׂ|^ #j;>Mְ&1u1z AU้\TTޗIT] $6_#y_Ӌ= &r_[JڼkQH s']<՘Zh-=̹x>"4im3]iEDq:γgOY!3>֦5'gex1*,] =vհᾲ_Q8F*gٮڙ\tX_%jD:j T!._cDӮvt UaжY$GZC [{7T#AאF@V+cp jIV·rȒ8zB52HOo|; J<{u컪: :}GzHWބI ]JEڧFW-^8?\jQԯSo)p.G)墘 O7➁n B N|Ijy#Aŵ{)'#:6.&볷tON zpa8^y袒t'N|+$ _ 8XECyKbվY\δ 0k@e+aYE`IYfhaWl4JPYhpu{Đo崍dĦ9xVd-qfeTP4PZoH|s-n y$~ѿ5 nk_EJ`L$L7 n\shyt]Ǟ}bW1tX&PYfk=DY+=n_wJѥFc5ϔyq!g:*anF*3وZH=l(ُ>MND&$5 NTڦp?[Qai˙{O)io[u4[ ժ`oN !OF>Ԡ7wZfB+7OgÙk&P")X~M\Exv̶T@Z[9vt~A=w|=]%`56evِ69@$)!K41;tR~< V@TY¦D A :h+ySvcR !U(m_㜬@C5k1$ /}$W@vwrpV1+s Sh_J+.ɽaUks(*27VX {5m2']%=Aw^yf6s쪙HoMy)^Ⱞ:6S@-fB͓EwZj<@P%Ut?ˮæ)? E gqG`ϕTEN Ym"Z+^"֓ӀNVcBMD֖l~th+atc'濱f e|o{gjI d獒HDguɽ$2P]!ők,fnPdw [6<O͛sp #bIA 2+ 4ySf-z %3D fDZZJIa!76= /k I$/tE*a0 ؚIE5}z'V]I윦{ڇo9>9@$,.RxpyЯ]P1GJdPoT|L"F!Jͅ=ܼWS((8tl_  kVg0/8 xB~ڰwC:SN&-dn*i(KɆ\Vrb!\ pѩPctq[ |-m;_uo' -+1Y.IW[ {(U-d(i^cx ZW`;O8F1EV\f8uP.!FZoqU6[ +lX])?c]:ˬG(vTme8BBյE:[0Hݓ-4S.ۦnlD)\ZM,ֽl}*&x.lj@g@E!|\V`UOQ@G\W"gvPKxzVS%|6prQO !1 ~E]ev*ZA wL-a_1 2(d=bMcbaKHw6eWm0'}U뭐BuTF))?PRM{N'VNz)-Q~÷H3s-j*DPM"FpAfUYp0rQFU p[INZ6Ji1О0 #RW6)~!_a}@Z;mWd𲎞B} d#R)8vRwD,7/ʦDӉbX$=p3[lLA5(($ZgԡEkJR-gs|9O$ht7E~Q:^$gY? W|\]RY@U>dc4ˬQd_W;o(vw= m/ /ɿ*j=ȼY_Pg:UyǎێVLT K { ɶ;aZ?Tleta0+M] b<B0)乼 qd%}#BŰY}M֭]fq|Oxy`h`8PNLF7Άr.lɯp;+rz50NCc9X,_O%WguSXB5G2 Ϛ_1[]ǫˢ0oJBlCp0 MܵZg7f"ZC\;:V8@9܊H~mL&cXMϦۊyOI" 1Šɶu,, ;E6}ǻǪyMkbd/)OO-_ti}g17t",*3]U)I)նH2_q j>yD|.1-LQۦ6yn$-#0`6mIXIEx3ZNcT>lT[TvU{NE| +CZ \zZ.={ѳf-v] u u[9$Ϧ% /~B0ncRO ͉? 44Eo3j@<BIceR%Vb!-2#/C,tDӽ.0*JIc/Rh{J}x;Y'Ty\{+3`7㩔$f<_F?̠8E{Y[0fS#ӃRvF;+%Α;ɝpzu@*e"%uV7?'UY80DG]UA-Q#>e P͟؅2}YGnty;HPV(ky忇/%2%X56Вo#3/<|MS-:eyպK6<ԃ;DKe-&̿zpO"دx5*/F*8S5E9m\رD_Y^zrH#¥5X}}V&} ߛQ-AQ]s2r}&De ?_1]]2qտ/U5rUyqT] a# ą^yERo p{2lS6}Dȝܰ_s+͑):<&9 rdT_>. aZ/8,ұEH.8 \IBG `VRP`8~>Ф4:EEf^ڰn,U;*–U~I= ,fߍ^rEoa= \ڷ3jMq^ T:a4҅OhRܽ;rh11$jIN1 PSOK1.Vm94(xAm!5lbᆪ- 3W4\^:t'5DG%xc:e:k*Oub>s)X6RQ5o_3C:IUw]0nB&9}! d'@B ô~ IV5 a.Z2gk9-hKH ~|ϡژ].d4pf\s 8Hdp+|yZ@?R( ZGמ&Kw th kw<=)3pk$LAN۱*Cgg2iPu=W -yE#Tc!- ;]L"d[q)+w\{IF=0VA>wQ;y6GvTX`S'z@N\.e8nR!ChK^B!kb-@&a1IەG3~[,8%|'?ihGx [!Lݾ,6&Y{\4+Z;t !ق/Ū7t6j^aB7?G $|w(#\;='Se>Uw z4 B[~jFXiIJ{Z,x?ܱG*ؖ =LŲQ幦;[Fyv.@ ʢN$&0o׼f奮BZe(ɞ-#/1]90x(;l WRȓ fo";(M~ZOu aN+C],GjzhvK̸)YI. %Ϫ` <*!1vȣt EA!FL9 گďBeBW&+s6{C~Q['nİ^#*#䍘]jłY%}];VeL(xlZ}׌d._\T?QZ1qv_@(s46~j@jO1s>ItO*_Vzh"x><<*T㪙E''Ldٷ?e--BlًQ|,qQB4EСZY"JyS-O`wW,+שǑp\Rtff {&> kƞY޼ u?qu\2R%A6DFƛ|YNc o.ʓgq!G]ҪtA2Pc=_[d ۪]GUI(gb!쭰=ȃ-9 e3]nUa(|r}kjr?G/NqKpF%,EY4죅P[V6HD3悖Fkq(a4`nt 5TeVK:)t2v&7i\MMѭ u~WQ o9oۇ&đ]M ;76,ng]Y}~t v!K(I_Zn>N T(e fgΝҞ'poIs i,5`K=t#4_JLp&8E/{fD~.@0tzr1oʄy0U_SReVKЄRԌ*.>DF߁zD 0(44RQ3? xTBOfO Kro7 R}#H-:`$!|wtb4}^eIı j4W N"),Qi/۲),s}z*c OY~rmF$& ˕v79.X2DqY(_ml>"gg|ٻ&1zHwWxY94 vX~ML6o2n.ZXw@ _φX֣:Ф=i>\[}a*#mRޯ8ak 4ӶS}sB5Ҝ In"-2&-5@]Z̳roFILgF$#Vm(k+gkExd'E=l}1T ɱB`>1w)p`?[/'4aFl/+J.rqjHnKqYپVܨo9PŃJH?n5xd"0[. McjoN3L1\aD>]@Bѡ,)<=¤0,iTOeυih2}*Ʉh`Xh__oώ 7.50Q.|ܨ\&H 4S(%~z(Nx7 ۲"=sGcBYPn(*2`]lu<#a" >Uu%a d{[u:!y:BDٳwoK_-%~,7>UgA4@Zn{\ DH/pE'yBd\9&&/'m&32o썓4JrG^+[l $8Sڿb/ K\\"}\sNlV&nq@=3% C,m~cmv$50;~ LX`=W 2Ħ$TѸE@3XtY!QPR!Af⚸jp~e)1ߥb,YfH;AˏJhlgZ>6nr1? 3%!qװ3_r_sXs~lP-?r 9(["D}AUU t#HO_ttaA-Ѕ|4SL|=u5eoő~{ru(@mr7%?;r3=qBhPڞd Q:p?ZޅfysB`o$gF iﰗLWHcLzh49V`)ʟwbG|8ˍSDV*_d$0k+l8mk; բAB~l_id:_Xy3l鉃q򋈤9rbҫƇOeNyi!eš_'ϵ`WY|B!mLY^+, *?7-6SPHQY6=; t2wN=<%a8PS<'|v ki˓p!h8]`򕾥mIC¼A<tȯ&';yS@܆r[JMmmc=1Cxu 6H!g |D_;@Coķ=ѧ5KNui>R mUʎ>:=HbmZ;mCt"Ae=6@~XF߼1P@n);~]qJ7,1G̝Jm>1?y~^T]6+g>ly_Pm,Ad3]afn.^ͳKb j=|Et4Ug;Cq7iP&il|F=/$Atx,]K8 PGdڏ0YIt ׳ y w.(G1C+X)e8r48J!tJKQsLQ>YVrgJId6EIp.Ɉٔ Ƒ3Y`!{qv98JH55Iu,y$·g轢AL&.hOu^; 4h] PSi,U2f4[|E1R R?\D ZͪJRT!mrl}e9m=(97bvt;YXP5>=`]]sٿY,3W+!/7*uzB2B:Q4g&9`yaٞs|֑tkIp,!b&̜ S?2H8,ߡv!Cgcdmܵ ]t {WBx`,.D3alE|9ԺSTY:{3]QtG!#/q~el'=n ĩ. O^O.|mAUtP?(ldX,')Kwsj{U" c(O'1TvpøaYfzEA}{^ 2ނMO](41a>UvJ4͏.֔KzQe>UQS @gnN^aه 'qwSggk$+dG7đ͠ag)o9rAՉڞ[4P&'bdTӯhj֞kt3 MKףG"=4Qo:k Otklw}=Fa٠K]u:i#qZI֏ae`G۷,9,_>OY&շ ~`npE3.r̳q:u$mT'bkvWK4TxmKN>#Dhyӆ[>aMKA 5&JJ {M5ٹR\G`"Tj fHNUy; 3U|v&T;ݱ`Aʹ;F{DGݵ N儓KȣzsDHP-&l[cȯP_T4_' u tB"Tc<:آ6Wc=;#hEL:<7}jvtl4A^ZkTZeLR, oi!_uq2윋 e ;ԪBKSZV#d6Oq@ܶcHJ?E>љ?pK " , OtӦXuj]{/qnFa04܁vB}w-O!0mt][㰯yTD9%|gJaH'U W' "rFEuh0d̸Zw#K`*[.߻$6:VȤϜjM*5գMek dIfѓJ l [ȣ@{8n"pWw: mYY/qID>r^?׿~kɵȈ>WιMir*! AGr=cJDͲ w i4#<ҳ<0tFZh` mL:XG5/` D%VB8ҏ_sGlySN~ ?;t,,"53s/Yn=dAޗDR3K 'ݱ"Kek7`GhksټKFn P Ty˔F9B,¿$+Νs~ 7[ [8*G.-澱Bcz˽8= ge&ŽxT~aƲ>9u)d- q@530.WӀ!y] 陼ԭhu!MT|,'$$f^d6C?euі4kV=\#MMCu-BNE҆S,4UK^z3zdYȂ+4k&8XF6E$lZ{>}sHx~6оbf=NExr+'Gi='i[G2\L0?TFt2B#rc/ލ=<!|+\'~5 Xtnf-X 3 ք>"Z]/`!}-n~D 3Bѫ@XO~@J %/І5$cס L/k =Qɞ{ͧm"}qxzt);kY[øABK?.g喽0}4s%^$1vg{E:Vj=CzK[ HjkoK}V`"E<>̯b򖀪qUgϩΣbM2&D}٩WPxApOA"'Mf\~,.Ս RDZfǰLL$L}6Ub8 xAkr~8݅?8; %=Iç5& GM@"\].o$@(rXmj%RZgAoصйpwV.F//x3HISi,X2)gqp^*|Ivw /A}xf!T_)`Aम:gUQglTjVO88ZRiӵN=BXFy>=o'm/YW-˙S[P2^Y A +_ݻE5!P=>w?v[? (1=g_r5蕝ss/''Di5{ecdxr; ^g8o5,.SKFԗ:F{K+ƅ7Av%85U' RL=. A㾥-XN9{~ϒ8[~Sx*\h!q O6 e$n.N6>?v Lʘ&ʖOZ _v< 4geD7Ν٢'T8'Lq ~e+F3qnnwd)7ʣmmudn:AXfc8x=C*v{eSǨ78(4.3n3{Q2 -DܖlYxJ9P]w㙯e@GI^aDƥ2jeu5H73CtjKn-Fo~ݼ EEf*A68I(:t3*}B#Q~JUU):""-& _BFKrE[=15zN;MJN1cH?FKTrΉYc}\TNDH]{S^JDO) vVh iv8\sz2,9yZmerk+_ 1lqSPW3aHoX(7o48z}8fGkyFBq׻c;Ky3bӕl-ܩ #ɳ6xC]#R酒:Z=&eD@u8UbB )3 mD{,c~Meii}oNFx͉LDTaZn]>'Rh_拃^P2dhOS^+' 3O,lXv_Bp\@Zχo-`7Wp/Qr a9$",ԛ*(hѴ@xap*GBujiofPx _W).0>RhmcX$. {%0ߠOPQ) OP2Ǐ~PwEǐټHk"h!utbd3_)@4خ:q4wsn_tQCnmMro( ΋ur^]L{fZym8秭!b+@"Z9x .vԊummK)١ 6ˇ` ߌ h4}?G##W4sLh) \2^ s|KyNmnw4ıtfah⛾ېU^󬹸8. ev^{1Q;MF#znŜwAZ6` vJsBl^ AY{}!bC0J()?®7e-)ܿ͊[۰}ӈ P@oԎ:LlH7VleUgeW+=S}ӵJO kPipR#G7CU8.[$z*J`}Yk2LF3a4Ya^4粱kջ+3i=+*ZLXjzwtݻA:?(J:BZă5kumEO~1` l92yE@0_ހb`ɸP5$xbYdK?sXe)4+`1ݑN5g<[L!ڟD^kٳ|@ZI5 _=l,c,yw(tًiMp Э5e## 4Sjąxa 8+^a42/}p{f0S!9 . }lyZ PE}s:Z$ee?!:/ʇ?jCAz-NtH<;sG9u0 REq{Zd%зFtuICKgg;ɝD1yb<]`dño7R0F`_9Rwi^| g${-ŽOA8,]Jm. `uwshAFһo!![|<q/OF Xe5;R@BL`OWI"r9IMqiû)I7͹K qӆ3 H\Cv 5`d*) ƱE+ҏ9Y೿O]qP߻4T%f?5CºrZS߱hd%)OA0 JosđrWmdt4H^+5#dEu7 tt0~G4I 8&f,q>+K#=2-n(2Eߚk|c^LI^0{4lb^fǬ,%Q4 W`*qRq\oTڶ)~4%:=Mg,{ |ECG_ ek,vs$uT_wռ?kY:и]:~|UƵgh34ce>i m {b38f"T'ݦ{8Ic+,vBǙ\} $id .-5ثg`ž3N)z\yQWXxp%H}ۃ/- 8M9Y\jmB!'#˝cMQl|dXA\l4>;m˝8ediی+`%!ڱXVʪ'+E%kZE:M3?USNKL872C^:̳:spB˄3L+r5w6L9F $=uOVO~#-@XMfTG#S2OLKꑻj^[^y:,eS*.ɱۅͫ)_!5` H\˘ 3nB΃P<_"VISQ=,*?"IxF->`[L&xBӰrF2W~G;#g}q-SE1dLU~t8 ւmvrD.tqx+*.. "&3̑W["st-tP^^_<=S>~1L8J7c>ڷ #@P;}Ȏ1ܳ *.-1r/j*Tp[w7Qh9Ԓ%e(2ZhUdloR"hRoYE!mo&\?{ռgT KUv[`>D[\/ۣ_[6~pXQ4o.!j~SV`jTv_S*(쳌f$U;rkm/-߁I/[ ~?<*3&poW/Ad*} Srxadn%]kv]ٻ;+y"H1Te9T0vܙ<$ #w39l ^osOITMocAEfi][%W81Ur%yaZߢwz  d9 <~gK5{wƺf$1r|+}g.&@9<%lsH`osmm P‡űq>WuUZUd0j\N aB%7Eb \SO<e^L򢣚dϓϢ)ڃ5D$ݔGo)%VBE=5qTl bIKu"BB~!tzT7͓"+Uq-VF:#L3KT4 }s:iނ(ɨW/N ^W^!W#T2<}y9Ac [@BSs{I˦w}E8z..{V|D^E M4*)R˛(w:B8UQR"Z[ƫly>)I|>v~HqLJ 3]Lqxn$uu)5S}2h"\e~}%% (߰0.5A)!pvttqs"m䒒LXSڛ2$ &?#8:iз~R?F}h!YV𯼬)cȮ.)JIL)ޢͶ <^H8a~FMccx{˒Ǝ^%IdI1cEnJ~7/z5Mvݫg>+mCam5u7^۫py .jcT?RAl޶|R:H lp;B`JZGM̅'Ha{] v3V)𠦍3'XZfQ`EPR[N~\4Fo,ỌB Mzĝ @q>K?+c<~(ϐ<\7ZeVPБadw9rJƕƤW$;d0k Z0UZ,n=JњT*ce^#xF)snxOI<0ݔv$ J'jщyXFY!i`jc?/x,z$gE=<`i͢W? nz뇨9 / rrp#)lkhx[fu`L.֛]~NR =s?n; 0NEugCڮC#:ϛ TRdyMJ86᠎0ckPqu:a Oz98HnUL1_n򲦵Q^)7D D<3 g)s"a XZCwPi E+B2{mL-ODЖ"Khn~f_8p%umHy tŸ\.3:.Ge<.8YkJ.nˍSX _am"xyXU4-]hag3%L-br꽠G؞G }Z[?L#TU˟-5y`Zޠv=Z$nV#:NӀŕNnǁ;Z@P ,'A R GbQ\Ƙ#] l}04Y(Sɥ1 vAf]:bKB g6bStiǽp`{CE!s9gCGb3ȣHEBlÜ-,5|%:%+Gbj$x0n`=rɓ~;>pR9 Dwkd9NUܽT4Փ㾙QtnlD/leS[䒉D4S+)!P<ђ*dUl"Kg+K;ige0H ^P%B-݂Ire6J~Ii/*p2K ĸt7ҩR)ҹnWc< y :ؾr.=;BIֻfMM/hTC {ywk9VG^``]vH:%#_"hF"/1 o3?@&ϚF =ftU=qtрs)S: ^;+X^!ܩxM0|L5׽MrBťUw-?3JR*0Qsz˱9N&}yG6q .r^\x><2`=>t4z bbp :b;_ڜПB3SKl]>_'#rx3Q'ޘ5SN4ͳʵPn>Egr].J81}1 g:&+[oVF6x( eI5"h0FTH2N;RXc^*heUOQu>-Pd{.B2HtGrK~'L LbA-`^RSjAbC)9eSMK,8YKiYXlŌ_í/~߰]-{bPY BF%܊w.zy Emc8U>V)?[f~5"{uV5)oT$Ŝ~'ɽQ Z$'\G{ߦj5D95*c$4>3EcR; #eȳ<<0& /$7jMLx k!z)TcJlڙbo.hcj^]"Ċ=#? ־ ރҼ.XMƅB0񟱎e*SEl`UbХeR.|oQS-/i ,*&ӗ:i5BWH4)򻋱pUT¨Ly5^ܐ͖5荴l5sMW dJ*fR'$1fX<貅&$+ά~i" 1:Z#-h2qzz\m9 u o| UP8rXD ׵cg0,~\߂1-|źn tVm#|֯; 2_z`ʒі,J޻S(_(B{}l[{ hlÝ% Lo}u.gQo"|X0Q|' q("c W=( )2V]#f縧W į:=0׷-MZ׊|nM7|2νZpERJR2m%Y)S DKRK% =~rwQvG;}wmӧ}ےu:$VGUP%]^9O*@E}*,BBdŞv pm7/ws70q` qq#pf`=VӲ&_u:,65ۼ b*OMj/uO-59swczgaj-F"C|YTZ}bDLI]B&owy>rCʁަF y9걾mR)^0pYI,}+YsWBoT2BoSɖ(E2PԸD}5DMM 3WS_ dpt\尬1 tCZ-PjOxz)%5VFQGf~@$(׽kL `sT7bݭe eDd\=F*QSd҈e'̄ A,pπ k;xt|2·uv 6!\sIZ:~3?$Y>R0;{u5B5VR|4<3mƅXS.BhFI;ҝhMR]gk%kY'[O~KĥNJ_1V`#_7a>})cӟސqid~ޖIbc0Yg6ImMEYIcUtEjj~fv9d1 aڻ) Ż9:4ц:AR-:[2M^X8,Nd,5@a3cz\OIiw{F 3(-c4ґy =zXm~$9Gr|xxm'Xo`bt [^0/dv3;gX Rc{ x J:gX;JjޟҼ3v[wwnKaKt1I Rk2O M3QLP[ǽU5G8_Y;)l!I"aV԰EuPnUxup<:% v)D/ޢ~U%1z*"+|՗at ך0vMQ3&0&HO[GxsOƺśOxJwz\z99TclwY^5=lV DV/]~zնA! rn C5 c { -QK}̃Fou:8HGFP@R.`QйɛmW >'T$}#|ER7؁`k]wH2p=PQ+Z91AYQF\"#3YM9g|* "]qBRކ')AH.+kɐܭC \9<d(TJjLe@LQ@^xypɂ)}鸕CsβF9=SSxFir 1OsIMa Ř0ʔ(XAboi j]6t[ dO] sЊGn0`Xݬ>~HY/S1Ax >A*mŇeLCs>R-C#4atazF_ wsq fUR1փTJ5%ҾwlM {< ===}j$,+5 AA7E73rN0u#8^kEƖ,Yh}O`꺯S $kTdA.]WѸŬd뼜b,?Q.2TS'*$u kt$/Z^zߎWB[l|5+qC9r->X(m9΃$RsZ#Yoc-({n_Ta.w9( w2={=tOf4A7SU% Ғ9,kС^tq /{sWQBmk&?e&$[=w]=*o (i2mW,p ]絳/jStGRCMfeF1ZdM~VL7(턒eKݚM$N/#fQsm rg3EKvP[$ |PZ>ͮ4][>[$LoBn#'\ _pK dei$~SZ{P"\`jd ZDBd'S/ ^eɦ:;ʤ,4q0LDὀv~W\ ']VXA8N8u^r`o1.{vs.J!j <'fF\o?Obp?#4/wج]O+y-U5Ut$>OR(*aG.!ȁVCHH왴:FV3\dcbJPS&FtHNlQۮ+wTl>:q,Svoc uB $P&'M {-j̘ l Y%GwB-v'xLy15F@Ĉ$Fa1=pe%).k4x._a DJ5'jbK6zoBIW􋨯Qhd-_>LϧBan=&|s9b]2ETVHMgq vTCD "K5V?J-%yA<"$wDrjڣ$JpIVQu&Avo>jn m+Y- $ka=cH^L3`{m5-:7CCp,g `&.Y ͷյc)BCH5֛` RYUM=@_EmYAJ(i prW}k8?">(ctUc~J58}yYX'DDIPHy`5xcR PX#$ &xt.t,Zt,ϧA>;Co:Sr[< r(./JAT^LAÕ]w9Xg%^ ΒT@/`5CgMxi7@AŸr3:O%QxD&B Rn¸Hsz if#Bc|%ۘSw< *i|x֦NUErIr6g?\(74ev@״E8v~yPS)oҐ}y"t_B/ ؜ÚVq 1d-nx`*㹶;sEŏ: KW*ÇISnvʞSmΒ7p _h&w9z>P0 ‡ϙᩫn;˞j%!(&H㎳΍!-_'P4mr`fx'ON$l}'n)2N'(hDkg!OFҮ2YTu%X\vxrgcsI[rˉ +cb%t*ҝt|E}J/[Z EvnS5-2 b ,i:XD IUȃ7.\d{=cff 0n`y2Ȑv{}9aUP}A|kP!}bl䏬r *wTW9f4EF nۻIWi`Cc5&Fci-TVMɫzXƋq%u7i" PcMGiV[#cNҘ._0ԂÕ' gDAu ?J<ڀ$!o(A\ }A͂5%o jp·6M\)Hos5e*uTdS#= p 7H}qQH)ѯpg7=GWn)-mս*9t]I^4xdu/@E\?,u}=ˮ4{C'3q{qt^tDW󘄁*XAx 1r# OgC%JyESDgJmC0  Nlf̩A]@r5`R2?ْG@FݛYr58UV kD:L0}?U7_ :_̛y#2J9xDGhԲyWyǁH%k=j+_0 T_%1.N]4XkM24,'+\`tːsY3Bzrgc_) Sćbz>ꈢf&v kAg x#y)B}Xj=x wǧd9dvBe zmzAQG7: ,J?̋EğȶYZw؇zxϜpឥ2 `qdA+sM۝r!򫫧)(ݦ~GA7unhvCZa120mb6>s֋rLi5!(jbPlTwKkAVw=|X qOpiVOof?rIR6;j;\u!+5Az;fRU y+Ρȇdb/Az)DvN ^@Z5p<9].jN4KhQzwwǦ؏F.}yK>CB:\w08ol٬ZU/B=Ŝ+CX`I%)OB.ܟfx"Z#oL}7wyhE:T HUʆws?J5؃vwj$7i^i8(xs c*CilF%ږ'rgr[ϰhq㦋i\k`[} 86[πtsFP/ ,$2ΖKWFbhzn{W%l%>ɁR]zEK;ǰgn;?#܋ >^8vc"LD˗(8#Bݏ{(u rB##>SM8+ ^H"u=lc9F~]=!H^ y +mpO{D&Fr$kY < uW{`? /[U tNrZk?Ql5㺻³)npv \K #A6$4UI lmf~O Y^ vհA`{*j> &KpWmp? mJ0n4c,RU^[P1/(Fz")1 :d{%C36E (ip,`D7Ȗobj 5ColfU?POzç\%6:< nl!U6kE2?/ ?I/۲Z}0݈~L&*E,8^3EAxzh*%f) g:y ?&HevQ=o@ʼnF)4 JX;3u*[,5ǛSY=ݿ77eYËh%V+5F5Tq,)N`mxFӕz%@ȼC ]x.kh`H@Ç#4L*+ pz$He =_Hos5؃wurـɛG%z553ԦχѷrM+"arẻޓo‚CP3ٱ v -Vq~7H ]_$qCx!<\BjlMYBDƉ'e40r!\/X@ =_mSw/'<2 j^uX 4b6W4w $YTW)R$?)Ĺgߋ!C҆U$X# 10̺epԆ/e1jH/᤼Y=ܞժOl*ru("Y LR٢Œ[0Bg#Z]miDTɆ}I@kw ; 11e}.ܹU_Opڳe, \&*?mGA|19+< }k|Əo0yԪKwNgGlQ/"s$vpjQ@ ;υ=-v[Z7yBG$T @sBm4_Kyio]/A~tLVibiED'E$HrUkRew'5oF =H?[JbNht16g'X Irs;(M[C}? t4B^h6(~w^Hf ßs#hC1a=)xZB3"r:֔ Ɠiƻ~p`XtqCbI`r!b-ntjR"ڤh}oE[6sZM4P5~23 Ұ u7J 3; e,(X_~qD&TNtRd8^'я)sZ'8@"XptޟbQ`?+Wy>h)8nϱ>o.uS5W`PY5DKsm5X  ,%i(e@I>?ϨO2fbFH_ ݚNI5ƜkɰP5b)j5IO_,:?fϋ\p٘ngeኙl@Ni4h- }i& v>;)z=9v{CzܟylxL*9=gs !q_|}HV.$X Asmx`7kJ_9V~Uy8˕XY K|kcMfPdo`L;gf?IAbA(^i]U+ ǤI^s9$[7 \n߈1JF`m]VjSz'e]|huT6Cӛ@!z -rlM}E3\`46'F1|KUڲ%iҕfMۍq= i>ubI:JF#۞KG b'_G.DA  #n wB3Uo~oB>,CeBͼ "ʠvEmw,.FT{/H%FAwpۙH)DqJ$'`b,~Q-mәOfǤ9* :6Z>Ÿǃ{=y&Ϟ?8lwd!dl0liڏ@zͲ:w|sHͺj3g0:4p0p@8Hvu/rK#6 ͈;a|<^@ +ȃ"KScm#?cYM}){憡D v5)!PTTCSġ:,}A ʸ$E !^?@"~5W7ajoo_C'+:&ȼdOd U~ Qga(ry4ǘ%3!vApȂ%W4Kybd\< Ey.НZShZibgP!zdXT{ሯJT :9IܰŦJŪG^ΨrCg%9P Dghh'%\urT缂?SZo9 |+Z:3 Z\45tws++|L}h},5P h(p#Vs ڎ $GӗwO0c8ʇ"`2rn<%QQCjF;9FA8TG LwRrntiʝ-cg`aZ L8@֊%! Eo)l &ter݂3/c#k5&(r\7@-Z)MZM$h,29O"$c^Gmz:g-khNvyrFJ$Q ~k^z3ത,p:=+Kw?AlQnG¦ק(vrLW6ccV50?i9 o~ m'l8pd.pdNbUB{B-_蛛XE॓S?<0M ::}|Oi$ ϖa3 &af)/bCݚs3_INg^FxBSQ,pS?IJ,dJV١Yuapn̩JgegTKuDQ)\?]Q=y@c -$XTbjrKKuJ_RA5̆քAk, ҃l7!yc$?ڂwd峛7O Z̵) xu --A[>spedc/A[n>{zXRԩ?^d- mE_I ՂL4n}\h 6[Ti{¼XiV aNH7h_ڼs*q< Hͪ<:G|sT4D)xْ d4*܂ ٓ5Lc"2~9ab[խ$GͰ3툸 }T-XMEbqiQے+IH᭲\Jr0±kO2'c.p̕>sm 1qNMx sݹ}B-j67q!^`*B >` y(kLj+u Pӷ~XlK%GJ{ M5Ї~BR!h?BśzW2&R`:ocꂏJ} oÐy8Z:l?w*644/wЪiP?dWcdCq蠛A3@=.ED6GH3 }!mDbūno%CaWC5B2;~3Qe4ssZKy$^>֐尊JiY()uBntKOrYkŞY7J m.*Rtu :8<6V\WosB:J|Zb1RoO&B@5.Tm;1HEjg@m'x=@) 3ey"z]Z_v3_R b!KR ar0K dJ\\rod iOװZUA0̓j':1~d_t^@&}ݒJ/l Q !ѣ1ԭ9&Aɲv9Myym)d380Oe `y܆p%(7]c?^w.!+ AH.= 2Lf7t<Ǚ*[=\ x S[ȧ{} b\Z3 |zX^1Ǟ&EÏєƆ 9[+M`z_ ws0JLsD^Ķμ.Lb!MVm"@4?Ą3RQseqH0U6Ç_`W,ԛFWNK/²tפUI8?MJXqI+1j!*DIfЖ(kei1JM9la%AȯH(TSݪ&?ě7>`1c"t.Uw8v% 0^2/iHj2hR UԒ{h!@c&߷dsRw7|,_z/,(k^H7/X s;Aֆ;L*rԴtͤݝ:FchH|E=t]:7^v<[<8mQpne.C_'ƽTHlnwv~O Ł!LqCs_ \t]oCy\?wo ʝ]x%y)-Zr\PP{h}iH Bd&f4!K@fV?s?wP&fX)zjm з)x:wD'Yv1y>fVujWs3lP0jr(G@$b팈f&pT&EN:S(iH2rY"ҲY k!'6;k!x%-OYzIUmǠsb%|nu.at TWss눿3.~Ha|;#^srIrc$%]~u|БZ+g02cGfa 4gQM}|<, #6;mX7ѳGbX6+H9]~g9h7oB{ĮH=k5*XO=¤Ev+ Ŝ┖7w!!:Or$gަCGWatr+ >M0i<GF["B:k&uMs1=lPnMS 퐉.Og\,Pf9^Osgu"QPDAjG\5aҫnS&ї+\7X| !X YX= iFE1TKf|BcR>/=4Kih=$D~7jDiN "tFFWѺp)]A$w$q*Ӎ:Oy_&>j'd3Ϻ--A{?$Py\~uJ-ЌsݬbUĻ`QB#MA(ɽmsCmA\O Oj*JuPA;=|WY ;8;k&E?<'2KHuQ:r9t iX&hcU NvjnbPnOuϸŝI-ei?bc\4YwǎVy TT'0dDTLްUtTQ)V0c@uaxګ֮M7np!s&Qb@9̖TPj2AhRbO~uojw G^"o7rPz[m`؜A-PKD0i舢db7WXiro "%z d%]=c؊EȻ.0P"ܒe&́Y>ݗ@Bs\sj\GS͢aC,.JvA;"C9rHCRq?"wqD%kU7P:;Mʏ\/C]l<}r;O7KN!`*u&9Yw\`_B{ ¸@[Oh6*"L,cC*OBk.P*ߌgŘ4׽I*:! ooY}i.{o\!rA& W!9W)O:w#A\ ,>eqxEbooh5z)~)NȗzGxJ5Ͳ2Nkula*4ݾ*d,Ϣ:pM{TQdVmbͱgqWpziIn_v{E.&:y=Kb1,·|4md ȣāAAQ+cj"*ZRD\VQ0Z bÙN=(y@AZ1S,I9:Blӥpp|i3ls7Gد  M= ;spۖL\ :#:XlWPdv> +IvUѮ7sq~/`׷[C>(`╲A/cNλ'=)7i67d&XgxcˏRF% ԫeptF%v8UYXB@ʞ1\)K#!aXy}5'ܸ=-4g~3IKÍ䔺gR]hbnrDߊjjPؔr;f3lK Z y72%;QPQeT9[ؕXho[*k{]4Xp/k 7Py4f[/˞o(X\~k6_7ȪXO1XKEb.Th%Ӂ9˺ {bCڬ&£\ bP+]LE ]É`B٧B }ep5$ݡ.2 E0( ݯ"ܿ|R 9N Om|8 }6 )X+!f[ B?Q&QнHEfБ?HZNF+XkN(+XeZ5SE/5[c[#1Ɩt41MئFvi(=Y<ȦT zK q%W.W_;%.\YĿt5u˨4s$WoW}X(Pk8mzߊȴ-fUT_!e^(΃$ãy(84J]*A ;~$ji(m?+fѡBxʺ)ezm` Y6׿MLl]O%hQr 5oUj @cѲ \n N<1hc紋~zTm!ez6r BPe_ˁA0iɛő2Ӳ!?SUY)1HHÀxs0>!%0q"8ڱrmWKW5t6#"Ӄ&w Ĭ~ۢ}fҵX6QL4EF Ruh@ڭTe33Q$/2(.S:]ԑXGQGX~aM1 ^-WP}F,@=V}N kH ~˨9/E=I h] $M2P0㉘iny_䱙cUra.[skt^PP  gsVW9R[=gS_P X0择'P zDͯh}՗*x WơS(|ͧY= -ϦVzA@a5lY@yL#٘t4 vǮF+9rǃlz]^\h~=<4?ITUUb8*h?vgNtm\3xׇ,-0TqxۯaW`7tqD \!M/;Z! k6j_~ fl\w2]FZ+dj}2cT IbjX0{ V,HKb\"D$aa[ч'\}?yqlUW$O;BHw3?`AU`k$_A8PޕI#ilvBzMV)$7P= C5k)mm9pc_ntD|YY1|IfΜw֟Ko-igoHb.p\2* $*7;9`yyG^ssFDᛨQE >*?C6@pRr0TRO?|^xgTHij`w3 DSsޝz:ƍŽ\v5 (_J;5,}v*be[k4/xEz7bwpYCf&qHrxJ.vLBX(F34ت&ToYlkuĬc]˙tq}ֺʳ~J*2lVDe]dJ5 Q&:Q*TZ3X[ ^ntſ3W^WUx,yܫ`עҘi,iCaW iNޚ4b0E&uŠc DΉ"NyW1(8ۭ{ODu3DW<(/ q1Rꓲg7i39NBR U~t)ewuL,"A4*OЧ ,'~1^9z~ 軒gՌg Gm5+YSށiOX.ns<\4o?"SqaUg[6N('RyyXm&x[8ʢzDp plI,*R‹xCC^arۉ/cE*QU~e!?U.-zS>^M\,Un+.8+9AId,5)?5 PHY3Hd&yўk6h.Qː1HJv, C)%'DC~˪k!ߩfqFPHpis+iR:3rGTȩ!vLFB( 5V:|c%J-d0zN)b[ahGZQ#k<51InΓL{Wq1'Q7^+3{7p/4^(VbZ[e9?Z B.;<Y2xdj*aIwXKil ;+a#|fnpBI9P0Bo-`"shE>!rdB'dW/Jn3ݑl&)0gcp%UhP%9syP!~M35w4XZ :9B XB\mfhA)ltgVi`9eWS5yoTp/sbWv.Mef;ƀj6mrE~v:E5&m'Vg \p(~{]_7W]c7ش4Adb~ Kf xWGo(aFkCL;mʂ([/58v\j0 Xbt] X %>ZO)X,/%5fl&kBkПTH%Ie|#Qbt,-r[6_&^iد̩ak{ :wGݰ'ȏ*e`6c): &59H|o+夒%w:֍\VGߒ qn"p5ᄆj{c./%TPvxw켌ȦKe+vtF"^!|%dXaqL": u*_vd^ظ5&Rq/>/!X=XñR݉ :Q>[,y\|慜43lΛ%Im:B)bm#VP%F-\Ȕ3JHU'dG} .Nt4U'].czmQQN$Q?Gf++?[SMbZ1u*em |upɍzlӑr͹3G/}V,+p^W74Ab_'E灛=_+I VbvDXt8u|p'.֑Cj,j"*>Z]Xx`>>4NEBJ$1SHi"i7%&V4 &v {b C)TbKY\RRMiډeɄ`Ⱦm*`j1q-XˈVFPl]W-I6t^Xy)|ޢ \F9!ǐTg"8֩Ѷ(S/DVJ{ 7pVP ', 0 W Ȳū"'/X˙ruGp@U䊧' H3XbloB3scpR RVQzw*sEawxGY r-c Ar X!Ff$q_6TfPph |DP?8+deê-jz_Aj)4_l#3j)6 ^ P26q=xdZxN1=C:xԈ1X, DZ3a=1nseKڧhH;|x{ gP:=&үX'1KJrTAc{@Gfde" bxu+o\JhJ 't\,Z8Dc̍RjnLRit_mv*< ]e =~={|ϳ|S}^2-D5eiAx[ti ڟxCF˃hxTG!g"=x4 H 9^ QqJa.&ƒ' b!lyK+OaWiyH/ "%)!%.t 6J8$b>o$i'7 Gǹ*TOJ#mW Zfw9ث%`5b7H}<lQ=Ȥ -{[S1to)6 wleN/N1㋫ ;'jS2~U &Io%8_+\B°uܧ!B},`d_0K#GU էƏ ^(E{qBdciCHV9[lROUJߞc{(XsրH,-hY kÅЎlκ |= Y%1' V]\BFrP]S#ɫ=wyFg~^aY)Ipiߠqh1:"\0Z>֣R$x_(9^ SC wjpS;wVBvLKgS;A2,C-euO}2%: r^` 4Vwviqe6C{3;唘gO'[xױNaJs(@b̗U lQk#iYۤSC|xUś襪19%A{l9ՀTֲKƝS!.SͷrG?ސL?rqzIe55nPZq\O%7Ȩ3Lp>I6C~a_L|tXWaX/3^2 kIޗ`Uvt GP Qu9W용Iɻ-Gpo)ߧB~J$F:9T|:ib4/:6psq7-T^AӴ#7K|jb !, KQ츍>9.F;Pu m8^{O %Z*'`V*#.tvTZf'ePϚY4t$|X(֋Xz.ÿ@ֹH|_Faen0fY Q8:Y/jKK1+cE6GWxQ6CLG (%eZ*qX0 %%~mdm/ ѷ / ߡ5__]^|sQvj o931@I—ZT\/NRW6m<[ȼEB%Gު%-R==bBhS%앫1SpfCn}/e+pdz~N@Gty<΁LD59t\$=[f#7:2Wc=*/7#+*Dj:)ڥRkL\Cl2Vva蜮|}e0dm1kjm[<#|=MaA wir 0FC ` l4{JQHfl\Aj[ũ,VTC/9la9dnHo*UTίQ1K 9)G+=ri#0! <`4 @'8ҟb" :~m=^툳+g%' K=d,Z$-8W;# 𕵪L^D { Smj+hPn\`ºM/û)]] r&Y#hYYNok)ީBi>Wwșb'OF*fJYdslBQ=؇EކbԐNojwU`;V NE_Ey2jr/K~5u f<4x8HeZ Q>κ&װBc dBOI}!@:PeZGY4$ zjD !IRtkH(o_QXq8ZHY[I-푄Iނ0m>²G$ݥ/EU5{q'Bssl{7Rrr9L|j8S \惾`.d?S&l)/lcrHx\'%L}kQ~mmGZsϛvBYk;+ c"gl-\pǴ3'"V` -Z[/ *CHZAYA07.R#DMYk"fhx Q8OdlΟfYCu)S!I@=)S59ǿPz! aXGO^0y9?o=Mu$Pe{_u"ɎNT~esM-= w)&X!0SIWPQZ͐rK7 i͍!ТٽyjI%$+璘i2yZWy΁>,~Ҙi; tB:W4us4mv9Hn-i,VNt l:X3; =$rII&b 3𓮭 \sI8urO!I.͓PQ\ 9r h,]ٲ*3"`Aܳ`ep5n4 wmP_gp!KQt?fOK핆GIҙk'tl ']yuN/`ytƭzQZY*P^}9ܑXu[4öD0H?˿$4͵@;KR oգ |;?$8jnTsd8Dc @)PW={r+\.TqUn?Mֲ՟l&c>đ ]L]֔f>R> ht9v@wȵ^TJ+ co߉]m\CRd4v =ppr/&|`Nbtu 󮤙z _- D0g$zbbe;.գ!^5,.Ps鄅"f7sHe.5]N|?#>l}r,2vB+{(@|vLd:f],23-ݭ mPk|7g# (44i8l3yi3+"Z~Z|uNut[͞v R;OP@PJjg-1A +;pBnbWB8W/u}Zـ0chAfJGD}X0e~62zJ'IN8U)eɉ)=ð"p&NlwD/iYWIڴ<,hA?7C$s! e2i#'?Rmm0WeHD@:$Y|=1K02xgUwRaWO_? xM&d8L k쵓 rY&{7``m.'P@; %z8je0Σv2DߊɧV+;:ae/_#CUpّmp1B(-C]#6Q-i@_bg`tokHjV,x^taJ\FK]'ic,3WX7;S+]ClS5"MHZQu4"8k+_?%2M۞P+ؾrL7LvZZE #3UӝLߏ 7jr%&,,ɛ:h9)b[hEtBsf.6O*eޞ%54;.R u yK?[j,P5Zڎ o 63Q`^m{MI#ޔP/ 'ǀDЄIj+";r9,r!xt&4gg>'Dk67mƎ:Kdt838E7t(@w8S*% wb<ܝ'țsd̨BU[Fxʁ|qg{}sG dְOy{7gkcjqe`ȴ?0Frǖ'3[lB<CxvB(_٦A{+8ׯ` o)Xxpйc/ `S9ALrB-23<Tr$4$$"ijҌb3Vw%㠴\$7ǯ̐JҞkUVd1ΤnvU/njN􂟹Ǿ0faB}$.a8!FAV(p:G*WrqzHTMUc4ZJuSZ|Р_rHsړãlɫ 4\_2Df-yJ++n0rYl3S<$e]*rodvu<rcǎjŝ G1;U'! ] IǎO:ӝ/"ygzfx~dNYyW@wcO]SGr }blsUUqXUZ#|ˠE$pO-o$W)i WV5 =ǍdC=#"ৠh#Ww'8%7v|{??]?s o0n -ܥ)pyV~Du4)v(ݍi |# fa "o;P[dLb9<}4K[UdDD9+&4do|@i)Px@F95_34L+XNE꤃~-vnw[ob&uK6/[gGGh^[k<l8Y^;a;$i&ۻNU\I?Eo7nj|~cJ@#iaan8\߭[Yң1Q^|&|Zd< Q`! xV̴_y*ƪnbT{B*;'^LB1N;zɞ ;x؞vT@qm tO-MM*P9(WܬI .{mG+xXO 0Ct-kv7s?b9JӱrO4 J5!ϱ]|vw^6KF %qb<YMt̏aǕm˅qad&[#{* F \N zkb[A6Zݭx?LK_>dLSG\TEpggIIt6n( Oͣu~hfcLsR? v:U-IJ:wT6"AC(Xy߀;E8ZZ$z.B/7o!T_N('?%-W~B:Ĕ#wnY)~R$b厭=+D!8[iD7#x0!i:E؇hjB cg_]."!B7cT!xS/ύˀU5tP8sGk>+;Г#~5puFl5@\zU`(=/j:霜Q#o5G8 %=ВyRAC!9([uL*n`-L%,v?vR !e.$'~g-*8(Vm;LhT,[qFu{IJ,J\!cϘ|SHdNgı cd oz'$ӌ"csObǥOkzsF2 }rӼL`bP `3.y2xmWQ׭Qҹ4Lpvd8+k/]Y&ЃT puڋbM\Hʓnaߟ>/8A>8m6!%?+2xF"|"heh#rըWw7[89f꛽|ݢhTbEWQ $*4%Y&?V> 첳z^망Pڊr&ij-]}? 'S? " 8[A"sAX+ք;hNm6 σp>60 % r'sOre2Bup3v| ɝ oRԻך5`QX헍2! ^+\8 _Kn~'lezsy% o >dY%L,ZwDjR'컃0ٵ`VHzD$ N)،]!j,"PhKݥ(%ws{HlS!2v@~O[P$cîi("=:qnjv|@tEj0F`kt0P`̶G 4ߦH #?n%C_/'/սR=1dn7 R!Ѷ'+m[LCTl>/\WJ:-YF901ٖlj'mrJ{q,5^6Z~ڎ繴rsb ^)^RSE[SD?)+M8`)uX}yD~l[zUjK$Y\5sH,hG#hGNx;V@#GU@'mG[ԁ7ؒCtC}{dс]-5Ki; fFD]s6t"MRk#Ii|K9VlOs@pjVCWq!nHiwB5sdVߚbFr#,i57=,=zB}L\O4MJCgqғd5IvhYcJV!s{v,d΍.k jH:daZgesNQ <%$k"&EKAO2w\/5߸6ۄ}e[wMWߘ[颞H|=s1Gg׵/̭ܺC_6VYТ8pDU<̿l.??p 6:e;8Cŵ0ځH;UM!݆_[L+F<aW ӘϩS(QldIB8Թe>'OXkqJB8?5px9>GsVd3]j_?yS#7HՃ|'SƠտ`RVѶjacS\kazv7& {v-qԀ;isB2KX`3y5o]d`tR[wIVdplc]'|=)JطGFk,5j4V YeWLx ɎXzsݹaCHIv+^"7~_([i0gS ^vba07*c|!36ϣ~̓ EWu!EoPV﫳iB}¦3.,4wֵGj=Nbԛ^ِи0Wъ gX7zpǕ RkLPkhBP̨ZTq[|kOJQl }SqF]R:;'manCшJk̾}TC\ )@:MnH\FxBa%:xZGmr~ Jhlщ ٴv{+=L`F\bʻYǏ/Z]Y:'ޡ9 sM0cښ\}Z%b1a!~ՍiެW}t3 la}aSwpJ܎{,sNE> j /wS:t:Bri_m/6IKj/RiT6X\HL{Ehd/r:-(K (>X`S<ٽVv`I.ўxH.tH7ҷ2 3 b>w 7745z$Boy,zH3Gr[F%t .p|_K!dW+p:G&@M7dxF[E\=M*[ȣlOΙNIDJs{K[5LrܳedBt~#/MgZՈ5LZWe |V9Ayϻ4Bi#x'\5X_tݚv턑 zĻޛENPcG@H{=!j\Y' ّ^dALy.AZ|Hy҇x!b;̣D(HqI|{Xn}GܐZPz{8x8…dՕ{wss{+h;Qgc9$j,C!~ewa5e5,k|sμn~Eg 41~tu\<'+{An& # UDH]VJXa9#jV>2}`Z U|UW6`ZjI#ՖsށGYLv"  hNu%hn2>r3f"%{󰌢yKVv-81挅DVck`4Xw5AdwAb4N50OgiK?t`"~|k TџZ\1tVՓfo7#oBػpy|3ELhR9>CSa4 =db$9z8'!h'Ďl>sBF2TqBS4/FN 9>/;Uӊ3* ?/n5I 2҂Xg8_#5 ïOEÃ<€XõBc]7Eor_15p`! 7 "YL9 re5xH Hms[޵'x/е;LyEy~K+SO9ܭEB3ߛ,W}|~T`]4G'o8T"VV́"PYjNWA57LzL.P(`0cJ,X&r#ʻd#?DÄuۿR ԼэsBȊwSٜO|؊+MA4`UuyQ"MN5={ÒC`f]=e+?]L/7O^VtJ=>=XQ~5fPN}X.ɥ})L+HbLɄ|$55VCngN 8DC1\y3M0/G^vo5\ÞL¦ qT?͍ l`~jAH(]5i\sdG>)NzlOY&KڰHoCvooTbW)Br_|ppązDOp:aA{/FfϷق.~Rܘ.Lc"O#vw"X(-u@M݆>zd?g7:kYϏ/kv]mUíEI{%hݘU3h_/k9e2,O(ItNdĉ@wKi?[Ȳ|SD,f0\̹L/P5Ok~(fea+m`:(z$|iM$ׅ0~z$&f$RG)]%ކ{s$ Fzv [@Ic2|)σysyF$Gׯ9#9bS3V gD*D6IE:}>/<_G *$<"GL0]Qߔ{!鴻nk3C*@P_IVKkz!zQG>Y_t)-EhD]1|Y g`d4Drp>>N5jbvq][D2EUhѻxZWDuo&Ⴇmz/CфnIUQYPAly,ZgԶXyM5, Kruz{~ ?njA)ov?Izm8x$Bmi;i2sV<+3 EH*">SȣIb)/6[et+3˩"pWR:܆1?<Ӷ:1^ܔ pT#uKj 4&`\jiP<-bT?:XG΍Z{cJ:ttYw*bMЏ̵)@t411B0L67lg(YCYeӑ괢 ayE +`pv/ZBkWe dpcHб kB!qYosЫYLSEV(!qCU+!SnWrr7Ud|3W/$kW+_ d͈Ls|hˎ3bnpIKj9sG8~j [sݹ7j@^3g \w:[{+$7v5!P؄e9@+I٢`'N^&=?"X9qIYB y <*t/Z'%%d.iޕB8USĴ|R0ዲUX{ݴ61Do6 @cθOc$gZ&![lG#k򇚣,/#cw##o|~w©X!iKOE@YK]'n=9HwG'Kdb`vW P|V~"|xuI\߿!eOHiGb;Bv,8 v!N.cp)`4x쾙rdfR2p{%Y׿3(g'XTG/⎘붵*d<ڏRFkm{\TA/+Em3⤯ <) qO^x"yaB AKS~Kx+1^jz䀓$Ǖ36^8ˮо<.'Fcaw64~8h` H^*YR%O1J"Txδ4addxs^Ax8FX<;"t5wV^\2'=ksɨ/hGJj_4'̷(@1T ءgGa4,tEȯ&v| Jtǩ2kp? i@taAM m_sDNȥⱕ",=B cf\(c:VY|xU%ZaJ73!)pOy)rCL%Q`M(6jض7k@e#gE5b@ ˈp6vOrk$^jx>OyNԒ}Rȭk[tiN=l_RQ~Ke橿/c#CPEvZٷ?/2A,!e]Ő%{8`[m;z"ج%̃dW 6 SXC+oc ܲn]DtI?E7&+NTڠTF KOe-m Dm{K!Ml_-ڿ,d=9_|a|׀^0(DoYzV<Mɒ,>NϨo&<`bNP63rU+iB5h'  !u,yP䕵kQÅ&(Bú~sfYJc;K@!~?8d$vJPa!}n8Mq84OVIȿ+=Nzn U.͕ ('(Y"hUb5j'k^ 0Vc%gtSvʯ..^6αx5e/s"0k !P>~z9HB#hO!aÿMhX1܇xůex0^jx'J\M!y>2Hg:bm*طYC,w;LZ8W_*`t>ltYd x1d~=K8Z&⩅v4$.W|NPS=CqMmݘy1+{z^LΎyeDw5s3%Fp 7 Ğ#$K+zj+z<HX1s$tVk'];l `c:l4񎍻4'Yf7/VVOa>z}ʎnO SC%_͎bV@ufϾPok j)Ӌ㇯s8M_'5aV53CK(z#L` #DJ1FVM)*SU]GA.0anڨCB"2 SKN$_`vs*%m:2ӁXf+lKFe4{ ?Q`i#Zv]y6h_B/F]gmf.T6VYIͥJUv32/VtԁcQCD[pPT~ĭ7[jl D%Xʑ5zW8؜qΫUܓ~?RkSgezKjAM~I\c9[Yuz 3 CWeX6'a/]س^y*Cr}-pjOwKt8{po觃Gc6eš7̹)ʘ/A:]I f`'g 8b^ eH,pI.R8.pqrؐ_낸!2qGDYg tJ֞57cm'ʹ(6ҵw8#'i*]ta@""-3 ;ʗd#J2ukrn[Kg#Ķ\#,D^.Ĭ ph:֛k6nŲ4 U'0< >h74fW0F mHUx oBe-䑟qifAuzk1s :}ElFlcseZUd>17R``e0״rmaړ.dRT L}Ȟ:iB!RvZf! EbW6Y)GW4+;^MZ Gy%[^~3DBCL%gӿ4!G_k “\y{Ʌ vTg؜P#. Hh|xn#AWpNϳ;)'!m`WC(MP 1cUv +:ٸ;GWy֫b0Q dclԉ@F(\0LdNl oI7lev )'Qfz+sܯޝU3uN'rn`p.wqC0Pi ^'gG7Yt;MT _^pV7W.l)rPL^-ȕTKX/r{! j Cܩ-4bCBZ_N"L#R3Pw \D%U( `;7o/n2ݻtgIU6mQ䭴D Xs4$ ?z^5ڊ1&j|=buFA*RN)(/=t ŗ;D5?yY,.By{@N}::"ԴCיZru>U>L2FrTv2ٶ1'*Niud}-H2}:LA iSV(-fi('#lheC u"*ABZKSYmK|/x4m5fO'3\ Kվ_&>mȒCn籞.RG|J93Յ?A5o&D\5myQn$Ns\{ʣѻMJ?j}(SpZIׅV/@;y#Tu6<%]>XUR5QAGǏgarHCe(Nwji0 k9;@Ñ]IzxhHbNy+<:cóL13stc]:a^ k[8r3;kkm\uH^'nX "}J}lXn&96_:6"CtՑ\ Q:./IJ-dhJ*"ō})g#؞ uOi&7lQkMu߉sE& O&l@n YWktIW ҉w HHh&.ΣXrt^oʫ3$v=jTf-gBf;+Zso:X޸w1xm>7N30wv +;#V .Wv jf*i=/1F@[UAh?~+2/fh42[~brK㇠Τ`'oz@|=$sSη2["AЊ@ i@Lj{W3gty+60Å(~nUCzk뛲 \3/q??<ma6`Ja+Ol1fb4\OOP}.L`, 7G@B.xɮ!~.vsX <4+P;*` 7̯#,mbM=NXqnՑ< J  |nPlmס`X4}X'`x?J xy>4W/ U68KMF{^ڕBpq#Gu!)6m r%ǥ³k&+iڊ!:cg 6(OA᯦u("WBNX*oQo8Hg{(ng٣I+ q_ E2 V&hg-p#Rf׍Ylr]~eRkwpaW/'MXH4j>MHs6z~y-,{q1mE%&f?r5wxڭLnH(n)[S_[87.O̦śi%Mjzt* % MX0ٯ~ej4<}N݌`T/oH EБf)|0U6/O0(==5lpZycGg^Ľς0C#{4҇6wB+d}r)]yN156K_wH_湗kW$Z(Tt7$x-8]`ܚ(мFݵ{)ۘ@j,1Wa$o5HR]__@׆ o/˾ >*s=f=PdctdbE r#ٝt[[}~I|]^A}aM=ͦf!ńOԲ:co,N&: $z՚,WLoҎjlp5١=1 }1 \='O#-57ӓ|@UȦ'ؽ n0ƊO-0o䗔`S"3>G]T9" Rל;5Xd=sZ40A{w+` ni i j OK(YQ/ 05Ո)r_1ͲV\z>{rZ,vLρq/4e3CG00-յdf45ܟx#9y $ѵ|}=<)UP'A)DjZz%y#:ɍOWs70U8)r(lD^ue/pHa cOx`trJTvh)9Ayfw .[/{ `#aA;u݂#6F҂_G;V N4ȯ|!NF'6J>U׀VҝY:O< C/^q|Gy~ZŎ J,Wu)cYݶˏzI ޲uk3^眍(1"HἐB]r+\|BHI7ny#jyblYXo#4$Mrz'7"'_̮!c_9i7\Ѱ R9̜RyԷΒ :+  ~V FZɘBhg`XبUl{Jģb+?F܀GGL @Fr"\b!/dY;߯)[Ub+d9ȩR5gtQ -Vwn4kS _R6$ݓ'KE=4CS} =5쮅7BL"#ٿ Zho ! ԹII ]U)KqZ}uzjl=J.m" n(z^8Cx!#E(N1˪8`Ō_gLGis{;]6Lʑ ˳i" 5̿$K2 _dS<'eqdtfm6/2ah}:ꈥ)"%LxWxčR/~&*%#tǮCIW5ok^ ;uRf|c{gG\!xk<42D' n i)l$ [XR8+<.;@y·߸8TkyP| )K@s, `{?SWat\;Dg\.xP0@2}u+TˍjmJUйb=*1aj:ueݚfMysigl: fX5\6?%v^>֩d ̐L>~7i~ "M]?غMax+}Vdq߰y#o SIsx 35aaa ˡXm,9CuWcLճ!_H6v=O\0{c4m 88OCu;mLc*^>=p\gbak#Ev*#7#r!\Lk~;>YYW6Lz٩)-hdLsET-5::WvU PIܨ$zDT7Y) >KTNۉbע3Jsf_a`؜K O;I'Yq/0D&c0K mbL*Euሚb_Ji1D'u-rY(\`?CӞjS{ fP+VSs -'#uG X(iZ8MN|ڼA"h̳hg뽓2\NJNu%Ȭy.GHplR"ުH# !@ *`,6 5P*I4шGLxEV?C4 Wi}} OҸ\ ^#uxn hz3xfoQ8=B +&9.ĔMuC A=Z:K;ShzH$تf\duxٻ5 F3OaJzYl 8ޥ=xgyFUqPѷY^NM_A5͋Ȕ4F΁dikQi /\}h$kXwqo՚ Wm'w}[ =Rm547>&p"o9g8:XϗEQFϢqՊ7zhQcBlUs I͟T~FM\ő{yJ~5Hˍ;Y(HO\p$K^'^6%! r%f;H1}> t] U!íC}5Uc1Oi6!K2gފS;˦o4os+(g--ehؘqVݗG%2Mfj=8>vĊ%=b-TֿEg:\Nϡ16"6>me:ƴH)ŝ3*WܭTХ NRft\ԕ' ;XqOVMp&uQFr7Yq&0  *K7w]2q=h;0faHhؾemK{Rtqe9{~# erd/zva(}XVYEToS2S#~ЇbFSv1W`!;4QMBM`Խn-!4B7PP_Ê-|a$ZDBRkb36 ]e_Ea &{ə e|'jcr%.piL9)UA;e`CFIrC9?ٻ47;xG([ZFwZA F̌vHBf0þp~Ө~X<3i"gny*B9ߟ_ n_u;@ S,H!RG&p0D ?\)c`uå&y$sTN::_\8z;L"%ԣju$챳z1$_K,jnr'rIv ő?2 jDŹ:EFF;f-ޠM@r靝}a /ȃ2T ;46aoVMgek_OlqHn x/),РTHX3Mӈ8zzHd%_.n@cK?k0y=H?Igӱ+ϮXXUE rr-4}ѹ ]b&U()~EeS'άR^cGj2AC`Q]T*C2_ /I!@%Vy_5#8@A>9a&ssq4ġd 7BÌIt[.Q8"Y,Kŗ{ %Q{$ ՀiXì ,Ȉ Gp?]Y$ EPv􋿲/ta_?sXdǢ m`2{L˘过Vg|\:-OPhlyA]+K/\|~EmϦNHBj+SvK԰;z\B JCis sENsZ[0 8vLGd,= ) MkjsS z^Lw;Q\Ja.?dWjBӒ#?`(0pv"r,;YH/SS 9.4=V$QslK/̨[˜ 0_6߅'ʛ06En6A[E IhTl@z1n ".:{|4)SU|% M:bBBl"Q%([® ,TZ ܪrj_xWD'0Ntpq_y&؇K&Ĉh?h*H LrV7Έ;M:V?_$;g:D1 ^}iU&3m ikh) Nbu" \lkB孵\p^p$Pb`GO7lǂ%0 pQj@W/QpFPW|;$͹ʈaTZ<4E4ʎy&s`sj(;3 t,&Q:eW#: fNd)# joŮN Пo0˪:: Qvy:B j!oEWHgL5ɇk'CʎyYELQ0ʻ{J ׾QꝠ۳po:|H|SEgQ)a"+PՄ r򥒯`:"WtI*J$' /d5.SJ =/u=d#I4+ZK}o+1BHV n~`SGz$<kKA6TP ⤱JM #1\AZ|{Y҉Sӧ=8ЬTԳ)ҌqiezKy*Mra/!?GC0^(ݱUYa(mHt 9'PE<ִu y{]E¢0<|Wa'IIY{}*Fn\V%v rГ Q)Ss|VZmyÃ8`kUzΧn@Uo8Cp^( S fy.E29ȓ;kp1e3>TCn*q*Sw|f]u㺸fFp۞ֲu%{.|c6&i<̃nnXWج+isW;7\ڲ < ̓1Uۄoڽ5}joDMzch^[x36\8ikkbJ,vMyTqLB$QGfV3M_a j7k̽CM!E~=d&~O{ƉӑϞEp{'ј6[5-rctJ]ؐCexl՝^vY-&JW~/.B0(zP0ZfPRJ{ţS= E*H|~Cܥ*BKA5AH}W]\#ZIuJBDb3G~o0sMFbeUғxKW|+QQHmn^U;΍iU(j@π{~(zi l}yfe2m؈7+>n+C\#.گjݘHG -Ԫo=c-("SC҃).0Mj!kc3_{WTayz, SӊQ?娆5mⲝ9?-2 J ZvReY K\\^ fF>f`j TlЌ*%&88q #{ЃQ({T(L߲pm[r 0Goya< {Ԩ185# sh^s֮BcM72N[QݼVD/լ[P2i+}`nO7}M:$: hrCq"Bsf^*vuI>L̞%M&g`R_O uMdl0 Z$ ;$^0M ta7ĝ.|ﮱTyN.Hw|NIKZp7e'ײw@!ahG\Uj4EQMCgTxx٘ڈz2/$Wjs3T,?PryC(]]Jb!¼؇#cVUƦ٢b%V;pa9 53ZXB.oPnN E;C 3Ub.7Ns*.צ5&4:v:nkk˩I45 n ?9U0Ow*%?"|WX4zPPR8 1SVݓ6 `OBѾ(QBgx&'WdeĈSUΪ&o ;ڃ A!.ûe+jL?LNhB鼠뗈6_Hf}o"_d[OVg-$MRۢ1)EL z˻GT[ Fz{ѐXfe*džlGc/s\BdqSmu`a*hi,)53ǫA'1 HuFj W|e߀ؾm7 y&ݕduբ ޾$ߨIB/.IiOY>@PzUEJ1b6wVU_.R,?"Pi ) d/uLeubLLT֔-,C3C 1! K^01KX"R$"]rMZ})<dTk [XbL5r09kF Pl8̍>'ufC A qtF\!T'F zɨ<> .'1?V6M`p@;3:>T#)k~ۡBj<)${WuD߂$@ ߻aB5Ym9@IRx/~@/\-}ˑue/£kLm(-rͰsr:ϊ _k -Ixڌ/I92 |_f UPaQ oTɃ^B.tΪU?n%4,EIsԽHsmr_(lǸqv?n,1 P2|VGPTT3<(~n.WILIP_z=RES5*R5(G s].qz{F+v!|V J`BֽzCi|c7\甆z(2Nq8$+\!W犁{p,>?\q[-E*q ZW;&^Uw#OA*$#`+|dLnXm҅f&%z,1a} ylhe@z#NJɹSTQ@Ab Q0"=Gfx&mY1hG>(Ϡ1ΒxB)05深i4/Wg.uT}OUbDՆ@#K{z5WIcMhaPaS[>ͤ>Nr\ ǍW#Jp%O%7e`'v,&+LC¿*j\}8U*IpN=V<}l:R"O2DN0s'=.̲7Dlr9&M?N/e xYRU a>EIbI/M]9 m7|Wkel 66>HrlLn8"8Z ?vKwbWD#-[MIXrvmkJf, ]No|\VY>&l+LJǠ,)ݹ4DlW}pez?@8|K̦Q bA%C1)3zEUCXl~r6&9ꅡZS8XF :(=|=$YY+ܾY;'3f{VDi:<7  U [Z2 4wgk@[u|䏇-Iao nȩAߓ)Bk-A;z.^nuSX&jҗ7#b3,נQgOT̲ ޷|jF5w@.45 E\ YѮcx(y?m`=< Oڬ-+Qt)Vlr͊JWhS~zv+ "A* f_ @&]JwJWsQFolTDY5a}Ab(;NY Zg֩,!s8xGld(h!i6#1 ;˦Yk(څ f?nfO[u87L bU+.6gݸIx[bZE#Yf~ $:H! ϣBlûCdMyS*) vi4mH3j cthx6IF)S7ep6f#N3)dR4]B\Lk. ǵDyeƅ&7l/v^_{jIݕH86~6$0J?HiN @A]e/0iUO/vX 9Qy @X@zEli'H\lJE~|DzZ7k@ue*oYa 줭6](=hQcnwXAV(I$wm!j8s|]i1in^2l` 5J+Y7\\+X?hyNTģ4p;+?5ԂuE^M,?`[Ȧ!F/fMꏘ[)'"r{C$؈ҍ WjZU/)XaA_xgO)#F۸75&8c  D}]=d굗3evH O/y%c|/xTXVG] BM3$PThc7CF$ gFTfwb Z]YqEa/`S71ׂ3ނ䣤`0P0tw*۱"*ᛕ=#!*O /RLkGߌ3UڣTJL O oI/>y<׷SP6))=g&:9i_:{g #B K QvmPk?U>*/ńКPr"(OꊴSUi$V٩*"aF{YC3h]UPY(<*Qx<2d[Ⱥ+&N깥L "8]-g^y ùf,6t汁U~A>Ed!"\"䎸"lt+T#GPȳt%MXœsWm3pD!椙/aJ+an ̼nkPOMt[œHa?&6wGv&"aMUUJty G{UL$bu*+ = jm}ٟ5[%Cç] 䶹7@X_߿M<R_ e(/{i `# AEED| DEC)h`^&JBN9 WB4X!_xwhfeq/ҕKMP/ EFUS|`?^mf3BO+g*ӯsotF &ϋ3YYJ\~fnVў *$qǽ I-{z蒻24M8D XG$^WFp^8Ij Svw(3]MbRIx8f(H$ eU.ٚTd[g|6wYFZ:(ORuד_bduȾgP':BWYn>aDiMg.Gne\ DJ22y*5Q~XU`3+Hߤh_$dfx}==pN^( +>RB<-@B"]AQB/fhdk^e MX.}BD;pԒȿE/qp-h]t4[WVb?]L5ۂ55ud֜D* `"T"x..5WA hEIR:}$mIǣNRfdq0.8HYor738x6ݥ{*'*#5|̉?dybC>@3FS@='w's^J)m.T@Ԏϙ_i׈FlkeG z..e!7.zqM֞nр{>+*#?b8n^}%l]ޱobkr^˲Doa;]To.Jg7`_//F&k_ieᶝ-*O q`ԡtQaɃmggӒo,I;aJ#O T'(5졬N_e|( n#+mx41=g3TleGXw|e V/FVH !gM$}|< QCOЌ  {}ugXIKl\Uhse9ySj۸ř9l:'@NMP4lD9̰GcJ#WÝ&ujnG.x49`(4AVR 'wN7Wú+R\> 4aʤ~Xg1y*Ogb,j*v'ra'ҲtӘFkh~3lԵ3&-(3Ι(+'6ˁ9^qD'5TgQyԸi4C:NWT\frM\Ďa5Gw&rj}C=RDtN";36Cr۔="VqZ(dkˎNs3=iˠ8O8i M)m֨y `bqĦ01:1:8XҚ#UPߪB1Nv]H;pVjx {Nշ߂w4/^~vPS+ ,B&cvtkG \>zj^^te3UN0E-G@E:$Ox"S[ocϗf;8I}"c8܂atm FTȌ4u <º/}(/EB}< 2 I4Ig]tϸ&-Bn(a[ʎ{<#UCe2_PӶcGٝS˴%sIgȎm2Y:K=b%[PJ>M[BUqȿEg鸻Gd‹;,'Nyq&IDP&pt@~`*-skQ[#H.@KCr y&W5PH@ G}Kj?V.&vZNmXSXrut'CA5(DZVD 4̔6"e}{B(+] ]KoqG@s#xٖcayPtD&Hu:q*AH 2Jr XY( x~@doa'{E^{!ۨ53Ǧt 05VpMPW\,,j]e5yk'79MkhA7o)[%Lew`狀cĈ '-(p3H0MȦASM$4k<&B76(xH'9 "}^q`!5HDlIl6Y^"s"݉e5cq3M8|{$O*`7,ΤDj>YPɒ| 4<\ZajAlIhܼaKu  B'>쉟j:3n=;.6S3jޯf^1"YKW!6ֲw8[3[_|L<77Ǔrg7q9 vmݠ)uX=5}کi[e"0d|# N=)es(4Ħ$@drv)bR=Q-$~L`x0= ƬYcVr!2ܗsa}_/bhL)eB߬U`1vh1lvG+IKTưe݃hϵIɥ~pIVW =T6Zumg!s5&{g}[.݅zC;%  ~_O2/|thZ(!Jgq\0I35fK@ê ,Mi9}~jz pBp?@f*R{?~@j?8{`M>OH]u@ތGGtJ IxɫkֿZۘ{Dݼ@KvQQ#2I$3#cyDs КV#aI_;&RUוX`'Jю3mxHna^7va +i-Bwæd)I0QISӝ:c niב +荾o,!fL~i"1%^SAax_`~ Z`G έO\l9M=~t fM @{-a1U=\D3)I{9j8Kii#Mܟq~fq6Tsa 1<]Vǥv/feh29bۙ%f}`$dwFhJsѼc}툌a Kő !~xȮ^d3)7̝Wz1s4d˖~+Md/clG@[|e H@/"7G,.}M 8)yXk  2R7i8Tf.׸[-Ծy?aQ)NJ4V*FwORyu$A Q mS/boauOEH= ԯjCvl̦ReS閑$lO1A15YI#řRx w3UϤ-Lpp6<ĀЬ6$쬼}exe`@G  s7Ma8`.:~ˏkpΞ-9g4JB.bCB0&RR!T0្$qr?ic#LWƍ#c%\G9EsNWEɸ{6.K @`]V+Hb>>ΐniL)ˆx!n*uݚc93{o),pTdU:!oI9F$[/JĆkZ5T ȇ g]I,DqV٢}t>p\&";!b^Y!)bgl@GX(%i^Kb8ptܕ-bsDy砵j)l 1W2to.92B|79ʺS"&8<~.f&jZ+TnFG{# ^"'u" ءTroaU&Ҋe`BQtDv{NUEfg }WLkIbpOKBb4i!XߛujNXt6j?jiV,LDa#5Nj IbWgOӪ8>7)N,pcͦv_[|o50lk%%*Ș֦ X}(pʀGfpabd蟰dr'bv`A(8[?\uj@L޶ΌZK ۱ثm G%vK5G 6H)a:hb3+IDrZsGFX曵Dck{ܭC\ti: 1uQ!6Wl3hFsl\7ܢx[y#IU6c)$f˘* Y$ @o/רn0Ͼg?{>BMP/(Aԗ*SC#*WmL&Νzt5Q9' ,Kxo[$5,\2) j߆noˁ A]_ܪ}5.z&1Zdu7b%ٿS}#6: m1}Uo_^ZsX(hه|\{@Bޛ}4@AZ'^ ]l[K^~Ux *} '1Y{vSXGZn8A5GH:~ǛNd7SXĹN )Ow0Tw"|/Cʼ-;i 8>D*JA (V6Yg|Iy>>Q+γha]!t+*l_^ ?q]N6?~zBKf~D"+Oj#.h`EK0fy ^?8mOL {="SI#w$מ30nj! - 0b?IXhqG!5*-׆qzt+'ho/"0Փyv{^Nj?wa+ 4a֙yȚ@݇O` ~6\zvaF.BVkx}7NU#\%>zm f*>kHi&zֆ{^5܌7a$: PS`C ӣM+c"ѽ0N5 #xmX0iY{F >3K˂`U_އO-Όu|"K aQkd]TCHO]7n{ Swm~!^)t8ޝ{AM&XUn[Cy=,u62Va5$d'ըoe*Ȋf[HxRsu3O3}v[a<{Q7+׻y>%ua[ŭ$˛XnmRp$tqa$i$; LŐ)Ɨ"N/i _zϋ-?ɢئl^^Oִ^#af߇/2g'!ZM~ZşۡUVuPlEM MwEU1Α>7%"k/KZ-nwl1KKL@`z޲&̰x5.&N0^ĝ^˜u9&LqSHBۘ[IkvȂ,Qb9E}5 ~M‚ߘ=jzI[nz҇;3>o0kI 0hխw?j:1laY ws@drf͒+a'=}l%-l5a5|2F}sn ; hj<ڮMv?gm%/olGfc,v' UYR8s,]>Sd3FY9u+ 6=<]RQR2_,|E,->$)lLT4uMyfg@Ao}soS%?1x I H75xJÐAD},}GCKݦZӶ&6[ Uglfńx9 Qm?!}+Fޟ} U.X[#6JN~mh T P2C`QM#45eaYt\X/ǝn 9``T:$ּZynS4b|s{)N!cyDU 7ŠkE8VIqŊ9mvikz_;2R]8#fd!d3o/(hlw/胦 X@?sZ^7g%1(,ÿ1)PW!fSbp.B'ʮLfdx}U1:+n׆"T W7\ܻf h5E& w "^ Q o=*ĿǡmJ|챁fhޛ!2#&Vp[5z? PB^5z\?5U GE\#-_g( OUË.||'EC}B#q\ CZ]!iZY&"tz]rcnB[flVxz9Eb'|Nې |C2ZmZI2M.v4:ä VN3 Gx8 @/ gԼ=%#1.,ʶ#re!?2y)nE|e qc\cU]IQ"&D'HH"Vpcorg6L1/ -F_!N l;y1چ>輴h3xEv_]iphЬ|:)8GOԈk ]6u;$Ƈ.0ɒ- D޴{ϣ/I>k$p|~X1Rz\)de+y7y(TtF'oT1CsPݛ *Xt"-/9QfAЂ;.J @U7}򛨙EE_A!)##[btk8IFO~ɖϹ H]=Y~‚uܽ~b XxcDc)~a^!X8Ϙ{@%}F&Rm$LٮT Qc/`s<"mWaߍ>/nv\]J~7@8[GM +'*s4n5_|4wZ 0d!8A*)l-`7 lIh/]x 4)Q\"s YKUz6B`TZڪy.ok\xt^11zlTd'eZ6'Ry[tr?Xp&U޽sΤ{Ru"EhΡqph{̣ٗƀWT @[߶ O^[5>TpA_[C`M_cnK\q<'=TX?[khFOy0.AnbXT¶ D戽b7mCJljUPhtY?~(c0ijZ~ ;Hk4iL`EC7cZD@Uɒj@I ,SL1-'/>h$v~ZGK0uqYB[kZg!6+a:]`ȩ&ҐDkD9Qu(Li#5{k4aSՔ;E#w_e=]W6܉_V͉LgpO pYj/i`CwKhŊ=O+*ǜ,EO834c@i2KM)f(9=Vи{ס0/A'@)f%Mqn8#|[©#M[Ʃ!Ib[ .u Nܱ79jkifwg9ʃ9Ut17\'⮶\sЉiVfx]Q} g;6n brAdK4}^ާ\>_럓0OD&ێWɪ](I2t .i,rz&'o?gU;׹+oo I!kR7cϙk@axtt"xC*PfI`0$F<ȳ_nW#%_WXZC#2qdr֧@"-b"q Rز!,pX#+~ud}|b?ǰ%.R>Eat2ZEm'r'vӫb K9iYHG+.?'kj`CK !T B*i<@*12Hl.(x #B;]LhJ26ZPe!O4ӸIKuί >)&sv34v` +eywSPĴo,@1<^P)Ҵj&o=P=COQw/W!>V+,+7 34 oJˋf+M2=AHuLDaGT2zV(lŌK(VN:(|#ZIi$]WQ(mˁCUs~ h)v,f}Pi_yQp ae%@{,Yf[PB&w2p_˚VQht؞ь1gwAV[C$+Cnn2q b8WRxT6ʾ;a{J}t!uU]][%$c7R5FnمAQJ:>1o;ҧb@ "7r*+ f!(QW9ryI^\jEX!8c {yO2ewjB~&`6J0b'gl4pVMeuGq5Fg^p IvF3"V{2YMh"Ďq}xrƽ5ٸP'!aZV|_tE烕=} Ix8Ոl(pMu `sf5O?w6|N`9'$`Ct?Š)_9qaQYsޠǻn I/0%{}m3"I7uV=,ia Z.U}| veՔOJ^"6D}vR"].Hw!#"y?y7[F%\Jj?]+\ó޾0Eo|dA"݈cT6OJzd52yGE!i!y>\-n+<\_0wψ7oQ \>7o5ޭs)L4@,>XLcgOi$>C\*ޥϴ?qilMŀ-:Qnd#hD I:d`F&l)nc -fF϶W. ߮ͫQfm`2#} +Q[;VW6=ˡۃ%}j`8?;??t F}W[5Wͺ=+̣,%pcEx0̃J#]oeB^[ E'҃ᷫ'?uRD.<ͲF2 \QSѫ@]uo@O euU0J$6.FK%@XB\எ-\vZEӗ֪1:'f]x@gN؂ o }-WFRWʉG AnW?]lL“&$ )fdP Ç ?ޡ^tT nů'el#i%y)-skmw"mcEY;o.Њ=s:b/i-'Jamd6np#}΅&5+۱ioJal#"> qX> Kh[*"?|o^*NV@l!ڛ(+ʿAE"P<5 O*DBxD JnT[^8'ZSFm<7h&W~,Cg[VFU|#3 X;TLF*Tݖx7FޓpMT%Y8AihI}NώrtѰ^+e|N!%CBD;Ȫtsjw@)H@"(axs۾x7FZ$Zo. ^mt'^ax=-gjG?(?$J6o4Q/ 6J$h`aH+4/fSaU6 k7T_`kXsJCH[2jDiQ e- B hS5_$& ;#߼8<('eypkeBz{F2SSxI#3[K}gQPEG Ț۱,KO]@TΆDuG'']y:1`1D\)B?*JYumGfv `fVSɞY ҋiXyuu|N \`cάP] 3ZDҩ6?>y6 ٩vtCso|/o hIL3]B[,hV@zLfHJ8(3YD#mĭ},/.?JJ2 dB\7N&כ='狷 ÐD@M+˱7X|"Ea?>oJ EJ96WVVzoOs-E3?|⽈yM Ć [^3-b|I޷_Z .jaL F7TP}-$AQ }gt5Ϡ9&gx*{cY'%.恍4볒ʎ "BZ_)_tl=2v N%LlPzI/*ڃ_ku.8$]" hF-?&[o;ѷ"F ]jOQo-kc<@Ǝ+o{Rv$cjaH/jͧ{jIlԟy,x ,R[BJ~qczjti>1 sSڮ`$BM Mzo)2:8ӳ4_[*b\BRymyvvX)68V̟[wRqvNi!QM bC%%6 @f1+ tzފ"tQVl#8}/DꅬUyc*gW Ux/d=?JN,Ǿy=."@=NR<q$؜pXQ3w]T(p7rA~ j hrTݛ.J:޴ 9sE3 E#SZyd)c˅#ev ^sY60r]i#Zq`-@Q75OAl(߮BTu@cR6 uz{ۃ{c-m[&kH;Z/ [m/opt⑦E5ޖmn0HE9kĬ m@}z|zźtW :*R_&7g 6v8n?8h42| A0) e`ӹ3JG|-4:"oi*NX $5D yN .DAucHRYL|$>Z PQ~C*Pmn$x$TnVOHEғۙԪM=6}C2B!{\mRx'fH++qPxJ89Jz̊n*mD l m~/!R] Xl [E*u^I\9.BT:/#}}&Fӭb K \[4/ON+6;D>e`PX"=zw1pSFi`Uu?@Wr5$y'1b.L$E-Ɋ^Q1dgXqya/Ds #{ Y4g?Q,X,%K,` [=M:-rk,۵`~ħWV  knm,h lJYoR.yK]nK$1mCeqeH[$ƸCNAȪ̂%66ml=ԣ+[_"y0e;K\f|#BgxGʾ@GNnYF]:ht deKꬎߒ +]&M0 =/ʠ!oM"Jؕ#UZIYg  )ns8ED8):aoC&G/)#D67ʝ%fYzI`D&ߊAj$0;=Bوe]pcVbH,P [8QB#-!aҹevgA8 GQں9skao A4lP)`:?sU_S0\~1*`sԬRĹ ,PeXe{.!?rjIk␣k;TGܪ gkyX>$SD ~ejFb>i(ck7+AJN20[ñ qAMpp2~ϳQ{FwuQ-`H]t3#"Q*m1FoT ~i_nh2O~*MJNJI}hm3Oэ-AJGN$EzZtXnO],,[snA('D `qDi b|S 0{x[\zC2l?m,jD&J;l6dد %jvq-#nHfO[eY6;ns@~B-}${-Li%hh8j SH+>jSC)~WxG <;"QCQVrގ1 [5B064 SP"L rnuF\|M ^5mhd]~SxLb! K~Y/&DHox#0ϊ<$@ sz|S&rI,gjn ]JHwl&{B]ҤT^90G s䥌\S0nw!,9}Ob''l=EuG <[ـ]T^6G /tNƫ2qjns幫m CWyv)Crz98\n4_seOWs^k)AB-1ІbpcwihK77\fq}RCőuEJ^::Q(ٟ iZ&%B+QOtW)f>1 KSHj/Vlw|GbP]gJwMڤ(%A\WրZ|>ԷŌ@C&ӄ[*VYeSNTXj>,\cA,V.mIcؙRiuNL]OQXjc8Ks6Sžh:Y5RRc0;sRD%qf`¼$.a z5:z<2Lꆮ[Bعݦ|g価%Z cIƋxüvA^(ZG A^86;jXKo>,b`zcOиj8 QpQ'19X:SJӨK#ۜ,Ewkq 2*OsN੨HD9FAc,!ڇ5Eb,Ued 5 RNTE6iEV4B"\F~@0// Nª-YbX|?CFP<9+z/\GZ!"'=h"~PH,ֲ7%Obq c0 rfDsan5#u[ Dis"G(:%Y]G:}?G^ q@݌`9qoUQVR+t#Bڇq(.p3)Ƒ@yvngާ-=0]pR@[=Xm ~̋Uu^gY@o7pӈaw<& d}=2џ4EʉV`(^^/8}wB3qC|!M/HvBex5」*DvKFkѪ&Hm&kX0*~ rU2~ಀAnWME@CrC8;$n=3( m'%Zn]('?X>-\XˏIILr7S{]=FOE:( |x!ب߮tEdI)&{@a/q6*|CdǧnU@3JM9yIҜ`CIU![6G %A 6[G{𪽿cl:{ZlUZ ٫UKQz$(+'A.l &dB\F<OI!fg'2$lݍξk`LGwLON5`)G7DndFyv6?rJ?t waOW!նQ'YG2:be[rٸxdʪ3'pVPpJ%EOG/FLh?sx#O*?Gyr BUN[Kq,,qWeA6zqKv8s?}h~"fvQ 0WI!wg}#$xad<>$4=M]=*f/Bib~.Cw,/gԦDyp=Φm5MQtd20F"8wgk]]zek$4\@ y$tD״_ڍx:Bm3zLf@_ca$W%A0vB40`߻%~94|=6$ Yd6uIr '2i]!J ^A1+ l1CǑ lpY)!jd.\>PV w |ͅxF _J`5Si%4}U蹔.ZGAT@@/Xл.VjP*0ol/~3'@2KKj9?/-2*k.yO]KPx65Bd^&-0f$H򝋳(÷fѡx(Hc2BidbtB6YT `-3W P${b=?^^'iZ!,olvGkW \1zߕ'AT2Dntvv0&q9gTB]-qbJǶ kTz(eADܙ4- &IZ*Ztn&lk QbSP.Ю'<>rWOIKjJV U< #O?CsTnQ074V:7ٴ1)zCaqxrIN~ zWԩe  >vHQPlמ]WK҇G99 Zp f[SR_ٟRVƖO}!r#=s=̒I^ܨ m2 hljhNYFkX7g{Ӎ¨rD/ )wg6=BKdHCAn>)sSv??~n֤PȚilK-dm6* Exⱅ<. # z]{K\ig9__'QcfpYt8Mٚ9܉V@**Ekv|o1n1x-'ќ1Rlr<7<彴ݞR(#U5. 9WL'tބІRq1,2m=ZVvû4TQOlr1_eg4+mXbtx}p+[I_h {ˍsBMOe.Dۥ1%\QgӏyLᧉ5H/-/mc|qަZY`(8'xQ [ug@6N",s%j:V3;l[$KKsyx"ZFjS)>zmC!!Ͷ[^8WC ̀X$+׃:Vͨ elF4 y%t%%;9HG `Nu>;sCAR\E+ ݎey'qRg,?y^I3q$\XڝW?PCͭ3BlC tg YHQ G0Q~N+k|.x~T.iOwͲoj(m Λ7Gn\"\U @:p ܱUj̚U3@UJ u`$d22UD89٣dx=hHLt X2_ox}qAl(̠B=U&1U,}Ls0}a+ݒP%jځϴ 4 LE,^lLfi%Jié=&%N[Nm"+Ӌ-EeuQJ`asH:{0e~GaYkмXaVp&jąͮ`,2'\ߖ*jI1C }PEs O%L~4L)ғwYؐuݠŔg6as,(LXs/>b 6.CK4{F4+w2{$_R9k+iv^B5t+q,g6)X;õd\#f#}Rz"^ p{K/TĜ7(zڕ- F{fdءQ,>à㎱ Ah%m4sm1Qj\ΥpYI#BtvQE &'>c`d>W,,#]9,/hECZdM!$J\ (LnU1"QWFZew>0() .yUIԴ|9FWJE7A w,fe5W~.&gjT9 tdoc|tmQ~ W@;ke5-6oᧈipq9ܪN'x-EߝUy%?5v~GQ?8:Q!ousɉţaoIzQ[fw^ONJܕE-l 5y)rޕ[3kӂ*1| fMnRz7D St\0$8q(.Eb{>eTm<[U\wJ*V$7{7TN'bocoEƔ.@~LG' cG~.{`+@b$=r 4?*63aVŹﴖa1\2g ?e,};P-KQoÈﱳo#4@uo\,- 4ix` XɊTC7W`͵?1Sz;k  `q~I~7kΣۼyֵKMR5vs>.sk' л>)d'NKD8oh[ӡpkck 9^ <};O9<cT։$3`D\fyu2ĢqZ[֕/- .wrUWNCps:2gӇ{)Hl j];?_nmN/g#2r^s[*o|_Mz;t hok6e2u6ÝL+.1+d%>B.XHUw!+(̙xW/ ךZ*l q1}nNէoQ4/BcD}x =IQ3o'>i[( R/95u#&:x.Ҵq+t[6,,IGѧt=r󚾘:J8"?d}D5ONMFD}|ٚ96马j'|Axi:eܛ{]+g(5@y6brE3pwDŷE ߍYvHCR[EGL~PBd&ˑ:MKD+q'a7͞ 9Qܞ.V/v]❗?l7𡇥WT֯2[̌re gAzy1 y7Q~:7A=혠_Q9FZ`=>+1w 8'o}(\y g~|?k}G޼yFؼn ^_x$`~Zq^$sZ&3ϮcP-xh[Wk~25(_K8RT;RoWνry4!c^\{yњ8rFM`2Hu$U,w?pR?-ӬW˂|[pD1!y/F 7?j I+QO\ VSQ~MBk9~|ZRU>QBWp|z_l?n"⫸l( {gUСZ+0RR {|FU5qۭ.'Ka #-5}?g6[,(g!P'6led YB& jD%\ΘiѢ?L@e]`mnH ʦnFk)GEǂ9ۑ[e6 ^. t76נnaȿ.v)O&=2Ώq,)KU|\WČ>z!m%iP! 9AY!ыrU ZFRH,lFbD2_uΊZ`@, {^9ާHr84^Pxxđ$yeēꞚ-B&Wc|1_7.eʕz# ݦ",U׷[M{w'͗DyW["uWJVC3*maRXJuo/,*NiQhVPu|> ђ,\$Ky2na%<9 9x`SVt5gaT6+K %8ݡ^ ha}ax9m+7q 4 m dbS(%O11tbe&t 7 ("`?Т\'8wk4dꙙyo/sF7lR!VйIMFTw*4B\hyp4VY\bf}Y$i͒-l)t ém(0U$WF'ݕDSZNJhIEnMՁrྨLid؉m ^ܿJgfgzǂE˸وpES0ϐz>7" Z(;~L*ˊoy<]pUYtc3"|ko>\7$Kqe=&MIp[y s$qvM"V#c#D~FT2#tax6/`{_ױʤ6S^8 j1%g(O]`u@zHևOPԝ_jW}ښ{8vzc0o(טݳӊ%9.N)s:p-fя5E-->kY;, NcO{<3 .^vg8M~Qkf4*Yy{(^ruR:w/jn%74֘-~Y> 鈝l-Ra%~/!먺4ʭR.^&u#-Xx5x&{IĖzk8.'9Z9qR7rƔ~N5sݲ'ϒIkC`fd+e.ϟE@u{t+mWEw}IiFa)x6,r HV!2`uzRl ]! ^Ļ윝KVSܐ+MZ;24~)xebbCCS'#S Pd^n?Gc٤bd l8(N 4%1h$m~Zb-П=z_twvO#P\l 󡓽KN ,xJ;!-nUtBfއj˶X"Jt(U1ӼWm ɵM: XPۘMpD:ie5*Á7RƔ:ZvH2zRb^5SU뤥׾dabk s)Q9ZPڃW($z_!f+i no[KՔm";Apr9/ 2H?e-ʘ.3IuI1l1W[W k#/cSe͎J$ @RsuU /%gy^2$~\c6Ap1sOO= X՝dVQHƉ\O+#i,\Azo,˔!=CdG9__n罂Y"cP|ܢ8r k\᪪pthz:Ī3>iedGo.{>{Oڃ(1; oE\4^вIx pL(o\*{:Lc ぀h.ޭ{>mp<ĦO2BӽQ'2aفmKc5YaEؿDi舾=婣y6ZZ_\WKк>qU\ {LeVb)2vr( "ĽC8LO}~y`&ge[EѲՒiCQt*s3|H"@F!-uE<~4=emi쎏B=TD;ta$8[Cf; j(ۀ-hY{0$`͌R/)+j1/R<+#SH0Cd-l+gRO"Jݜ ( R լZ-Tm GŒ#@?ZB=<þmNjpg&]rSi?MT"x?ڥeyUaC`0:m͢ AsNx~caMS.%rQc.|W%)UXnb.= iۢڎؿ? :RDطy oZb$Tt}gD+V,wF87-˧\ f3u 쭋Wۮ쒠{5FT՜9bN:+(bPPKPQa\<;ٜG3 'b 2 :\T'6Q<%n?}92kbp3oucM$FE'.4ycfˉP@61roHάolKXp"=O#T`x~Y(Vz(IҦETF&lb@ ) ԣɇZ_ے42 GP򽾋MyO~gpaiqte~`i"ÎqCS☢&,dhrv~r߭N~r}֧cS}ZR2,&VnWnl'"e4kĤWg06UE6<~-E_ -PN}. Lƃ@c8[ƅ$ %&s؇}҄)@@m@)T6QJN@%bOR%FD: diѯ"io *cUpvin 3vpܭ$_IJ!Piiπ(7dKބ*$/,9XO%%.u}qR &ZlCT0*_*.µ؊Y4u0L }L޷AioY ͢ONB 0}x"J):AgFtw^2Q z8]OApw%ir_5#"wQMv]D3ԗdKrZM]&}hfHڦ}љl4(Լ> SZ倈r+C1'qOR k{W-뺉\zExH' Ώ  _5b;^-=hN"R #\QbGVL"|X4)<ɬ&GI{ILqWq'ЬM:2:]I:ihۋp J^-g~0φQC[umc|H gᓲRK4<;؞u}:m[f"]tbeX9Fgtn\ 9PW9n䜜n㭊U7PTCu7ӽˀ1" y*%8 A A@\{Jfi@K{eIScu%~Ǥ_DZf?FW4uY;g27JuiL R&Q80Bs9 pHnoB6toZibB]WlSdP@;[i "KI7sgRYD.@Nк2AT:ӋlP[?fs2OP\nVGAGŪސ3 JTCpd W&u|z33(0 G̝ ߫7C[jz$/n*ImUqto˒|_IuNj{:~b-I!yS|3@+[jqM BFjAqٖ>W]~h/4ܐuPED?s MʹοDi/gzRHb6pySwr~/5i9R~@[*ѕRzmz.=+!@OY!|O}9!RlfXSOmzPO,n\~?.3|[/i*񯺵%E9Zx$Te1Rp#18 BTc.$!~ `Mc=D˗z5b8O?GKZƬ%=EEMվ!`e̕P0V]RDS)J"1G7Ns>ї_w%뀧 9v`ܔigQk>vsnhߜ6&_M=p](2SPؕn2V܈wR0Sf*-᳂bTᱟ%/)ܑޯ􅗔ŕA!(e;WKkpz3,'Fbrƹ.[v ysmtu~HjMA%NHJт)_tzS -qgY5E[#Pm e?h"y2+Vu*Js^N#N9bE(yVOuǺC*,ߕ "P2roR ˆ`[K%=+OV<)Uzr'v^RN+1:+O9t]u#ϐE1}P7a6D&^yg^{b-nɊY۹>q+br յ1"WBe~qE&ܠF ЫrVK֙EPN5ݯW`eTTGkCOw\ 2mZpTW<`ӡaL:!pdq !ABPoC&Z+(Z/!(?YDOAl0ʝu@Lcۂ18QF#|`Hcp 24U{}d}_~ g' &8Aһ]L\GSZ!Ԣ Rz)+ uv$oic*)Z"UW城P Q R>+NpЦIGIj r%!Y P2/B4y{Ps ,͋k]]^QCY$cqv#"f ;;K^My~7|)j(Ff~EE]xTÂ9{:r882W4{!!\mq~)G3O?H,1!(aH7yuT+q<0 T Aa&^Fӗ ]nT&cS|4DKUșl(Cp^i"Ek*mD?\uNXQSvJIt3'QQ&KӦI|&_lɁ=x;Ҝ¡Estz_4Ԭ(;_'F~YF5/iӷ 32ipcq'F|=Tܿ e(g,K+jKk?)zRQT[[/6:h99xzoxXx~dz6F^ȱhyB/&Jmn9ѣQ)aJ#zg!PkN;-2;ۂB&yC DC]&jڵr]'yf4z}vfS`{:"˨}dᶋ!Mʰ-*Gjxy=E0qoΌ.;&)$|YJ}W^h*(t0K(8U ւՐB? brfF-5c޸͡Px0}gj^|uM ӓ PBтiʼt/Z:ȉ-X?ӛ"ok"Vo wn[TrK,Z6R?s ԥ1u='Q6Y@3D꺥_|iHBlA: +qO"ʊSDZ`I?YgW>_b rB3Sk =šue@PUc !e5)g-Wلv+uc9.+\q)vYp^4Q끐JZ`dUP8ǷX>PbQ,kHh(}'?yOz{]V\SI´90R6IN޴$_O=_RCe#( WLԪ~/'"2j3(õ|]v-ÚǁU:#ݿd4{ Ơ#}87%i[S{hI$dc)D+p'@@[-]r4rlw4Ց@Am`F&^9 sjqԍ[5Ņ%WS f yW#}ώ8OE!L`w^a|ŇAp-~gb4Z:.#N!^֔P,5:~4wguLOV3sq\ 0Y*wzT7fCE-'ۦW\/xW1@φfCչL3ۗW/̯5:RIǽxyS330Xc~=OGwq"eb$LZI@ѫI[h $pVa(y%?RV)NP<i;P|7<;jqV]A%! `^Ihoxt4n(%|$Re9S` 7JpVn7cFg܄ Mwt -H-LݿĆq}( 6y!^/,$X fX8?G|uUO|0'xmqYoC f$$eL.qqogA,m\6Ʉܨc7ۺ{|2`?H6 O'c7[b,+gh4c'rpКV^X 0$t(=rHu׬AAZ8VQ 8q5XuqU>2S[Yn@4;{ gHJ ˥E==BkQo}w SGCha-Am=T)ɛ󬼠:?ۊݤ=fƮ -.(YoVD! SvEh%lۿ+s47g"XsوWiDhU~;f*˸%_8!ATvsJl '$<5}l~G|.>ο[:,՚{Q&>]?;I3\ Ky>JQŐ M-;zcN&WU[25Ԁxg83nf.JNBZ8Kgb5-0f% D| N~xhqk Wa }D6\-ffIvLEٯ0 c l,h=O i,1fr&oj4С+$,y TaW`~/Xsxbn={~k'+)+/7Wh&)%+w?>s&?#>?NTxByy]d<*91-50ZP"d] kARs GOSJkhdTf!d>f @:!wpҝTw2\nR?a(bzo-ڐ~jVVR&Me1!Ju"@"Z(PiwHt"F4E: ٟ`,v lg {ToǍ;Ȅhgؐ.h[m3E=CdY"BQh?YRysLӘ":[-NVV=eVT(Z&ABO_H(&nHLтJ`{#C+L{$osc'^%b Ui`W7w/c?wq[N49Jm>cd c'h~& ] YB i{B%dL`uS9J4Oop"pɣeGkfK-r;FIk R;"RI2?NֈD3Mi4@1=mlҜ`mn2tϠs(#WPB7[,?3ZbfQ]I?XV&/h0еSDOCK(-2Np S|("Wk c_+2zVkP'%W!֩=8Um~~L,C8omzu"TBuŁh1v1UoRe=ВtzI.5Cca`gfYnVDIFrLm3el:x6(j=>#*svx%*n#|x d /B%.ask3/z3C8m. T&t0a*Y!#ERM{)QFKb:' A'S XIFʝ-N٦)"Px%~x=2w]vCk5njܚ>pAnS~gf #qNd)~9*x04]ńunfsУ 鯨KڝKxnƎxSG_xwcqP[3دwEaîJ^"ʈwh :kкkqeHa臝HyʿS7XFSDˆe|: 奏f"ԛ6wbrui@D}€ex/1[ 9$K.$½894QugIKtRd0-֭_暖n*:\KџtPX h0#"G^9k)L'Vpv7$9~GLwGzL;_Xv vK-~@W4>J;ŬcU tTbuJvP:T\F7cvvs6r&`^akG _ho7^M)\ϻK'!uƢP#u}*W{I*53 ښV_Nx}CT67&?9j]C-0m՟N#ٸ9Bä5QOlP|֚Ysu 8jXL%&0]%B e4S PĖIof{zu fBIeWuۙ.L*mrSX УSS >dBՆa]) t ԭ)DPd/*D;{P$4@ :͠uhsqεLˡSHNHT$H7kOQ="쇯}s`Q]+?kˏ3A rsJ5sX|6?vfuPMR?=6 B @dkZJYLٯ6[ùjJ;B]-YZF Ɗ7@n)r]-֥F)FrXW&vgGl?5l -9=X͵A*(\3OJxn[O(~CL-MBUl3?ݮӶ2`yC8m!~a {Pr-6Oj7x{poKxTBBf҇~ *V@83 Q H @hl3TEc$bXJWp*UADp+M@k9cy{w >&W{?\$ACvnDJ6)o(qz)y3x?1 |e\_'u[E-fj}/?Y;U@tiHcI R*kZM~> Hų4kiof͐=g~7.w}}r}3AQ}Eg -_)޶>NJ"MkNˍ'Ye}"UZб|Y6ih]9)h j,9S/.ṬaHVN6n ,pR EjF ^ #\OnI_G ݭB{)tR`ԊJo^D3:_1, ?ljp1xT齉 jE;*WcccX $F3$^GbFGtbzH!ټG-gWﭙ>𝃙s`Q˓m۩ΥO C YaR O,7ipڽ-CFY^>#k+bǢZ~R6Q-$!E} rnjxn*މ}&֞rdhӆȥcY - ׃Z n %Ӂ=Z)٥\ВKV/3 S@ \ HA,Ba_&<9[&jd':b;<"ʉ_'9X71j1i2Sy>=OW.b9R[K@A,Kț2`!;.r rR555q`.UJl#puGcVK!KЫ:zs+8 :JlQ6 @ox؏"$g-zqd3 3(& iO O>oe]^o.U`[Y}g3QT ЉtBcQ5ҳۂ Es 9Q=K `5&5);a"^Ŷ~uX{V׹hSڎM/wn3Nj}r]o2x36LgIK6&QmwgWHImրR O(j*<~I{@òMW϶ΜSc z"n}|]nAl7 KcPD3(clѺ?&?V?)CA P]o?前Ww$_G37ڧY&\e9Eb A5mɗ8wmf(34>\T[Vu< 8"Eħܜ<[xkMy$4RT0Z -=8"LԮˏo>qӻl*<\lۙȘ| `+5Z R&2WC)eių3Gk܈46LtZbR\B ɸS%>fb 9ӛ~=m}~!)R+ƅ9 5*d RڑlP)w#WUX|؝c"l{aa-@,6f7=IMaW0HiA Kmjo /L~_Ph e]^S.Sw/%]Ӈ!]:%,TcÉOQAUz1/c >F~9'0`n őFFCM~ipL3l2]aK@ '*vڲU[>.J#XΒ9!w,J9 'wcLɹ~pV8蝕w&-Z_4 i< R7꥞RKĠ.uΜͦzAkw,#J}KpAD9 4W ͿḄ|Qo(aˀ[T>NČŎsH?>eِeْI`c1qՅA4a`"XyrM ^=9tUOT.ᨪŞ].m:C6Z.c&t5j]\i|#d%ĮPXc.v,>a/ g]w%9PP s| N ˂CJNLK]b4E(/{If=]v-r)k5; ]K@ N-HeaQE$bĕ^$R0)j| A82|Lhf|t(o_ X)ԮLst6YVҶC2k&מ4M]iR3@d5j0qul8|X1y(.ScbYTl[B0DkPN`?k(Q򼹐(Σ{r A]v$e siMP(>/Ar(;d@ a9$~\a0,Տ%~ygd50<] ~ p 1V(5C|gD2*tT%5&:袂^e1Ұ\ʋPU0U}/2Ӆ_~zvSY_HXCϫѯ*}'h]ו\tdzӲIpǯ0%Hv[,Ii6LK0c$G-8Ohj%WFG36%J܏(:T9;t+ . TrlQpKfݜzTT°׋,A*x)|T~]8Lhf$;{-TB/Y& > ï9[zZΡ:;Gie冂 Wjwm k?vF FGIɛ'*Lg?>y)+gB lQ1m.]5 6歚Je*ώĘSvu>uJYw}yla1U$- îu⼓Ih*]HhdV/IJv74mZe ޷/xQ.5"/"܀B2$Z%3Gh}%Aͦ oO*7)brBpN/eB>\a("^nNjN7>vÝE 5ޥ }.r{*n@#Lx8 ƖDV.+) j1[XZs։gdџr[r&%3/#=-$NR__\&Q&_Vv :2j[cj} =gC/8cgqY/pP~$Y„<#L @~lD=ccGs"Gן8P/"…ܽ1RB%Ni6GA,L[ ^NuFEZ6r uu&9 @[Go:m22о4yQ2v@=1Dwg~봃:z=ޱg;{[[2vni#eSw8muo3rcCO$WNx[9I]J50t{9C {{G 3=LCWi5$#s3>SQZ9}Y5=à%]j'i{r `E|m gy&lp y]j(zmuwkNS萘xRvЎUD\ 28Qie)a!wif{ UPֈ2~|DD[x $A~T;MzM 3~f/!ۨ'ߊ6|.NƵCϨ3Nʫ`vgqsFrf:D}[BVB;/^^3c*J`V392 ,.ŦFr~i _6Zbꤤo7`>݄>0JC#X\{:&"4@_`"FbΕ޵QȈ]J~(lʘ[p_Q7;PTo.Z /!T+ Ivqf=Ƙs; ?,684R,~}͊M8 #ݯ+‹U?3OKj˱;MBLbRŮiKTpX)t刹a \/-p 29 1\@ .z?X9Xy1h3i˳>K$vdbۢ!gIg PN-ؼ;j\5:}b$aI =sT9+gX+oI_+TiHVͬ2ݧh.pzF3v䇭.HKސ >SaW"Zk#]˅J1/8!v}#T>P g Smd. l< WH;툟fbS,eM7A hHI¬"{D˰k8E7X]mo5Sx j" ]لƵ15",`F3ӷ'At/ޝCetŽ*ޝ)`hM̀$<|Ki@RM$g(cޱ]sUz7T~(/JMkOۆ D1l')~3 =Q'#[HrI"Xyp{Ә^W2xb)i<}C'A7w6u]+!e7ʎh2~2&{"@V*eE>*x ĭ6 ٙ%WѬYi [Lx #/cgSxY`4yBULnED}hU $oV[U")| 90fM:4f3aF} ؟?ր_IxX,19#gbK&K\%ECDtsS;XPGCvJ9[梧/-Nh[Iɝ7p 'M(CχI凂`JI$߳",+'9@>O,W2ꯣME?~#&c2OR-eHw;B_V /&]iS/ߣE} 7*ӝ(Xl( )'Fr3|ToE/" j"v`1J]A,'k)ZO:u$Y}ΠmTYJuUm4O~MQB(2Y <1OJV]{y&uZ_WQ?t` ..kdr۸hT^Ekw}`͹WpUOՓRFV5M\o?8a. {mmIpE aԑ H. }Gy&V [:#b& <io`k VPk:N6xR|"RI>j!wxx᫭ A,`3³"=A?צ ZF=(W\2HڗE/h_D_ 57pN=sWs|R!ULLh9ԋV~qC =JF$(Q=+}Obi^qSr{:,-^107!YRpB5,֯D)V+:~ Gqz;Y\HNMgۅe+qήHQQ_Q5VW%\HZ]/A 0cq@8|x~ށuHy:_6y/̬x5s܏Ȑ6fc O=Ɋ'14C[К8MK]BD2fIAM"]zMѹtD;M-d]` R;|Q<afyX:ٓ):UpB4H[/,iv W4"<-v厤@p"[4i| GNe& 'K;|rW_Y,Yj|}R?#pB,K**.&gyOH-Ki"OSabj4 KiZBd{quF8Tmm6aBG@9:ybNI5||K*h%gE&jV%і?бJ!KH\DĘ.öͦ\ág$e[9m%8pm2X<b -2 gCYW6fЕγwx|rd&7<|ժWt ZQ-ө,jQ^(''M{^8e-κ|o.lˑ FfGû="%ʹkeMt- wiӚ:5c'FYst| ۰:1g^J^,(]\Ob%@|H >MxF=ܛ`N,c^]>Cױ ٪Q "w0Qьr;M_Szsb*Qh5O 6zWc@ `+9k20F6>g ,`ت]B&kE^ywUؓe^WAFWI\Jnˬ'w˩nB,75`$L6-6϶fj@8Y϶bUd{1OKnz @/~~KzGIPDN>y҆oVda`Y"!~G7=چ_&t;.6v՜ V4MgOʆ im;~4:L/PD$b/T$;A=| Bh_úa+3۴6NuT;|t)\ֺ0 kk: ?~4ΫֲJBKÊ8T05W8ɞ2h<|&aԞl\bSsOɡ܌Y:Kz\+ӄ(j# u` -<+ܽ/ftr\Ur*"P0w (XVS[Ym{X5R\?%XmIsft<6$-AIsSPߦϿ]T+x 0X_ 6b"CAph@-ozlo/Zc=AQ-F .GT'O8:U(=TV뤵V>*[c!ŋvk~fUhz`9CԝؓЃRTG@JBv!KۚϹvRz"|ӣT M="V< cVkbOPw ܉ >6lo+<@QN~]6rڮj'tBlԘ94eb@S ).KAN_n3Y]+׏2^|$ӜJڢtsft5ʉc{Nǎ,i.i34FQl Dɝ xwՄV]|8( b,,:`OߠZ Kw7*MHHL{\%C0v!"\]lSNFQg̱5qOϘ@blņ z3buyН9ş gsi7(7ڕ1fL@lgPDŽAf/3הݺrQN`:EςCj5sL_4lVXT'y֭)FAG;o9N:ڱ znQY#U,pݰU@4<5-s,'l1Es;XRL)tEZ3tT/3|4t_T$,WIhؓWZi5ެ:LL1[A{j8n%~Y ytpŋdSԶ[ɼz@TO[WO:amTãh=xWsW腄<;*EB"T`y^1 .Qť}v*`ɑLd>NoEP1UfW%X_;\#Ll"UOf;i"s?be\sSVlOv&*'ҼBV+|کPğ.3xWdhYsHJBt S:}ar \|D9lWF{z᳒ nqȏe f nAB3[a&9Eɿ¸_=2p/JSd';__&?d Jl]vh7/X 4ZZ=5v^D)n2GrͪDݡ:^JصSN_ҒcWІ Z*)kc.(Ӿ#Dd cHO]t[cY }"{JGI3avȺ,jt 偄jff܀?I<{1ZqlvpLc˯X56PgDochVj2mL_+M9gi{*cIE__zߵ8T4*"kN<^.q{n%\EvaQ_yl)}7|;ÆTxarg~|\ɒeUA aj&8(A@^ hªb^|L7rTQϐ >]v*Sʘish ԯͷ&8 ZTZgn8Ⱥ[+*P|EEs _*nѢg , ͙v2ri!B`=NW-d$|#~2vh$xEؽ_z1 "~6,ǒ04yOr]^FMFF먗ODg_g&gM}/$yyUAoJs]=hєvCm^*)a/_1UTVU[nb$vT4œ7 ֎<_QQcb3?-gBlrtG>2oCTö"yΝ#&ƛ YmEwCҧ"]DeMHF iBǛH%΁Ux0JtTK_O$F%oc 4T$Eߜ7VEn)ft -D0 w, Gb/#xEoOH!AwBNχPCTN::=Y^H!q4s)ڭ* }Zk}_*T0N6-OF[)`]Ki„GxoJ04poUhZYKSCSMQ>*+1j+"FceK<'$`!*E{tXTK?IQ$?A,#0}lgǐT6J*ਗvG+T?TA||lVp0c!D8b=N'h7IY$qH=Cd"#s86g7Lz,A>-FQ(v3 X? V"euLl!}[35úvV_ 1mDw(E>V%-"f](ivTƭ(znQj>LhT%l!v3\.d=Ӗ|Px/sI,3T;Sy 4Xiax"\}Ex$,&:r{3Tf)>" 1G*j{SJXc0p7. ߚQd]@5Z!b[{ݕ,Xm5eNfdµRg)sK$5_Cmg[LId^ithY{WnDT hKڒtp#d%;Zq̌tݻUֺ[ܐ&ߒ,~dX:D}Z>w08B_w=jܖgVÃ_[t DEwK诘WH~9[nW:kn,DSzڔp=/SvH}~myH3V$iRvű@+ TfUK8p3 Jw׏²X涗f ߖobx]BH?K$goa#AXxc'2&`ض'ҋ O{13dU~͖hPEK*%GnMk:/uqzB`p`t3Yd3`HǼrVONԍ(ѥaIЂG;U_ǯAhE\4^Ofthn3ca Gs hoc5㝖A94LgH- ƥ2%h!Lh4mh5_9α'mK;)[3ŗYj}D3Y޽\6z \g@Z=!(si v&=wk7&{yz} { ch+XwUzmD0*sbPWDJ0Au8bH[n>k^6-9V,y|J `o1X5U+UXCwg^B9_#ɶFI1B>ɦySl' _G[?_1}R?=[Y"VQ:v}"n$[ 5 }ȥaH? Hc ,tURۤFl5JO6Hƶ|59)AtT0~H&C=>){Evs Ӣ,U eaJEga؜Ag2$7ݾӚcN#*#$1 nd ݀QHmJ$Ai@G/_3*ÜAW[ ڎv?ͨF )IYD,홦dTM(>9lv"4%v`{@iyB&,u2-;¿{b+zE:3bxJu{s"hۅ#v%s,SMlGǩޔݡ(㕵 Ȫ&:[C-%e "vaP#URfM[yjMAXȾyCҬ\ ÐF pL}ޭi+ X$4`) [/qҽ}X|]\"!?<^pZρ?N`ܝSL|sГ ;BOjlzx脻SSJJ{ɋ񩿖RDd#M6`4hŚk3= !~<*\LB8(vp"w3*85XqWoP|Tcb_@駵:mUwpC6柯3yʝg%m&opлRNF©.@0<}[(x;ڻfهU&!;.rI7.m $)"w(*Q;SF%OhnXp8E3^ w܍n oiHo~y=T)~܁OyGM@Zn{{s|CwY6vHlU'MiD!+Kppsn&QPH1N6pUtFg 1ˑ Ǒ@_4֦#%R:#C;-Dab\k(7}!8gb!%MygiQ1--er0l#[UL6l9YѼ՗}KN^҆,ʮdMn`wwJ >3MGD 0E$I6adZy9}Z39~}JMwIХXBSe%ӳ>O,T Ur&-\>B9Y?s $Ǐ^J?eGG=@(]`(EqxVO1ԞO;#EM{5;h2qd 4wltQ%zMFC炧SqRGZ\jvg U>݀:``gn2%rf5sJ'*2/vk"I,arm\KCEIq.Ko;*ȖeHDp}Mam-NՉ8%(O^L.dGIpHōP _IѢ*XnۺWL`|9o*(M@^$aծOQS'3KxF?2݄F:n]S2bp$;Sz@j̋]*7pU_lZq{ Y7ow^V(t_W eA%!!i4+}dC݅3@B(hzgs0+YûDW^}ҏvBQ0X9u=b|Z5r~$ޗݜD*[HɃEg['ZGoƸma|A9sRʅc y~ >/3OkB0ě{~l[x3љ*jEaA a7лƧRZPlG ID7ܯ"d<&|fW)s}LmO%ymo1{PuIK y**#ĤG T9oҫ-E࠵id/Lbf{S|FR\k |V̱@Q HD,)~e?z4sw+T"|f5"XJ嚿+q ho1lCd}S<Ւ+1KXU~(roazsm%8d.[+&]^DM'FMJM%q\5[:1%`8r ʇriU?0Pi'_Zό 9gB~$Stw_;pƽ܆BQB[#$S82bJ&ERXz, (LSD~"Lc#V,н`S.v,V+gSDr#2 sy}A{kzFmA:5KҺZNW[ެr_N%ݩB' b7CJ^f#86?x1{؜)0 ;Gܑ+,ɸo7a#:~@/O7 9nF{EfѥS_GE9A_{R~T.C#h#slň0HG'vv`6ewPzH:v aTzӺm𖶺\"ܝPp[jpG@p!wڗW٦ u 7qeTNYv!o&0?X!CA;[[r CTE̘l7E TfD`3ۀS2oQ<+jsp(VFlj*m`J8C|'Lɡ[b%Kg?'T%VTlBMÔ_~4|ۅ[Aa*9+U(8X 6h-D _ӑ;zhXYaQX7Ğ# K{킃ѐb,ߤ?Ё5aF6roŠYPO5٨ HN*m${ɝxbhO{ޮA@+5cUuS1,b|]= d2dTam%}@]B 2qÑ4Ň2{/hXtHE0O֑op%(Lp<ͯ5;u <{Ɵf`6vO\r6ToԚy1ebodQ ՚ :28EMDntX.?E! ׸k0 '&Y;<*.1 bm.;;D^kVR4k6f&d)-IvnB8sNR:j c̿2 (OB-1Њ_B_vqՏ /k➡bsȺN|&Moaf#_5[I7@J뿫DF 5k^Ѝb. 枑TvB38bGo %C%c@ SGOs]M6d hY 2h v)z\0{8rXn[u4<wΰϘTX** JgUUe=LGtKz %EZFNK3| ^fb80F` -e<bF"RpZcB7v9>wDj?O#ЊZЈCUֳIX8?Ndԛ[}%XVB%OxfNe橺2E7Uq R eja]3!W6tB,zB fJT`*A*m(qk&<OϬїil@-MAbBu^_aMf+k&n&ؙ<6DF-HZؓPQ@gB3E3zkWD3ڗfJ9nQg#^NnF=oAy{l4-?D"kb8 %R֣ܙ7j)~k941K^ߣC{<nYKEC҄A$.jCcڂ JHtt>.=W n7Yl-Äbx::fS%Lj-W}ȹ&g0Ќ;s(W@?*O$gaI˹C`ych_=5ѱ ՗WJ[x@-BRUuR".R!`.[ٗTaսb'~,HMwzlt?:Wup DM%CμnN4c Hgn24<#rHqO\Qm,<\W0Ҙy8]ECf#'yk%#95{c!UN ! Ww ٱ[9rf7F^4e#PE7MNek6TQ ø( d=j(L< $vg&m Ǵ5Wē}1y*aQJs\gǟaxqGCzq,NFK1ɏZ77۟.sR(= +i*-/in4·u L[oچJ͖.hMZM ut 頃H%F"b+y (`U:)m+KOUiəGѐƸDl9t3%65x'4M1ͤwgk||_ӋOz[-'xU#ެX nDda_eМ#Ez M^);E^\sRDȿZW5+v*1 wKuHJg~C:C`BR3\;4 چ!lt'f嘶?r`6u>[O ?BmHE|nBmZW H,ϩý؄Y$nhL-rn [ҼV^ I9JD!E0B}Elur̃\5<|BkƷZ$*%:Iq]M`Up./:5|9_eZ$P櫭rԯ@=c!6nɍˤD1Ne>]7:Y\.D:Zf,%p֪j n9䨢mZ .WL &%V4E \a7{6ߑfxUW_@!-'$t*c (G-g[OCܵz08׹({Dx[9:0cs+dta=8$N߫ſSzZzF/vx}m~E50CXьo+SXdsѼalyb^pd)H9<DL6=)˔ɤT!fGаK,'ywkd!(Hɝ%RL)@<i6P#1M-fT0uCw3iH~?Ըl R@jK_qD>lGُNBC7ag"yc['_*EI-szڙk(Awgg.t}n] U<۽M.<'Ofv6q[Wf%~jE҅eUL!CX8C1[(:j}TSX.HBT+ /2sδulx^V>̎p"W_i3pX[2G LN[rkE@qJhQ&3,ia:fx>eo̅,"X~WiHY>7EwkQ襟5#f|ʌåsˈ{8t~H`Ƽmɢjkd3udTIgofҕ͢PoSEԬ(G$ǎKA Ps>h` "ZlDAi=:`&7۰4r k$J08VB(J狾k\5x<>5GL@%ɀ97}NNnv^xͺ_2Z4kuht9 |Vb+g/lueEhv٭ ;+.HŽT+⟔Kglr6Ee0nY{7pjEp#78W ehs7 HW͈F-8\iSHa(͖Fy ݑQ"w7Wq#"xf&, E55O`e!r)z4ؘWY`/:=y7_0A!y4[ b(0dq>~#Hi a^$od!!(~|N[ADŽHTިd&Ts0t&eJ^OAǟ^:+M,E8t72#>c2 DkTK %|c;KBАҼ`vx.ejuet 鲝mwTIukt0"; ޑkOVEu JeeSJXI@Wlُt" fGu3/ G7^kP3,ĝ:s)]}N>c.Sx'd۬5.jD,1}ȩ^^gO^sn>q=%B{{3||lvte{u8@c>HΩqTYă*7?1G­ ˯yG*C7 ye!0CH]H ^ ҦF~෡ {nX{gKЭ܌eD|ߚq4&5N&Q[WۛkdVHEM@ Jq.k[N4gz#,亲vw}P' m(]>B{74,X4?ܕ@Y63602Ȧ+)WI P\!9 G8ID"5&\OFνy4U=Ziw<=^%s_=!^ 9Ark<?2 M-S|LG?/bӖBd)>dAdh8<ޖ,2-S= lr8$>3C2fd|R@8a Ф I' EdD ;v\ OMgI\hk9c `5LOaHL:~L4 >W/32Bӂ4ͻ$aŎ!YnEP5ѕv kĂ/CSFK̩az̠?L<臄QS®zG+fC(KO&d##E;ڥ\1+)d5WY[$){(C1aS'ld^#"|B$}o4ʥwc뵩[`CK{ ۷j!D[15oс)!5[eڅ[}QLTҲ,&3M|_%gcxO!fR9s>+3}yvx  3#T`4|i3!z4zvz2&_BnYQUrpSjmnX* W%m =~ cزeI^] >1W⃤ڟ /uT/3`r)C&0\EeߺػAx e>8%Ѹ#ͷGkJE ǟxMj,l6 |'sߘLL9tS4@C>}&>xQL #N _p?bvI9*dh oDKHN~MgWGkX=@q!7#O3U`uR㋹1k.8RdJRmTG]֧ o$/ّܻzrrL89Zi M] Hv.أs!&(Kg;V­4>ICJ&y`jH݈eܟzvϖ8?)AP?cWE9öb֝KqOF' Xh}!sp(%6[ͪ03Va!և[-+Rw _)X^Lz$3'}a1B שJsxo}1.޶T^V,MqJ*;.XթE>3 CGQվ}#y":3VBY s6Jx:Fa %"$}@+*NS u ]Ńn&_szM#VQ!*{eEr-_cdZɾ^ [Ef 9/ Z=Al(ZGqvF\?%QUqiW!v.Z\51m|O2EANi{ Tڒ=5Ó EK' +vA-;VtJgHm T:Jvşu j#/gh|Αc! N8 eEL6tPr׋)[_q'n/%M1;+A EѾůzԖҏTX.R5尢 Rb<0"C]gnFݏSdmZet X/\ϯ2°Drxh#2Ô-zǕD!V.^n qDQrB"2<+E O1`JtղW:zD@;UԜkx;mCV5n9_wr\+`'U3 $^6A5Yz7yNuz/ژe> [gZPBȮp`_ncȾ ~?0ak醯b8]KP$Wwf)ЃTx d44)۵pJ\HT{O "Gu%\F-/|m&t(s=T'Wȷɽ$%.d)~*HQH"$ٴȗq4Zu[@(C*bN`_"ֿ@'RBZhW-%)0ؼ=>&& y-]J~\9_rU8s"v'}㎸fBö )_fR6_+_>bmcȶhq8*Ί&kb4K_v$1#W>ׂ_Mњ 6}_e3ffuV6턖֘jSO0iX_n$:?Nѳ>1-UC(NvWN#ܛpdv ["JkU5 )}j8܆EM^׳kw0Pd~ȬόvŢu dgHvik!Ͷ6OGs?hpwqCvRB^uiRC>d?_ʆRM|\O-S 1 Q0|v$Ljظ?)rC3eeyxZX-Gq[DMy~%@Q@:hx_th!J&&_G̷1>*/`w8 bG oZuוL . uT(`5o۪Ŀxvȗxo?nB,G-'G}D-z%|>=9JiB4#p*ˣ <1v_VB%X]֤ϗ}+^"Hrc?a#^e@-EUܝˋQ?t GD_gȴͯgRDXlUL!tĐUhm3O10&ObˍbJ1/fSBh|ވ ~6REVB(*bqk8E4`-UmϽ45Kwd Ȝ`Ϡ@Cm6 Ʈ\Gwu1i"czƴZmăNlobj]YQ-J*Q_I G\mdwC&6mhn}K$f`k 8n :qxbr-HsцE6JO:k U߼Cyì}%2??,3a*BY &xV"Z>8"cQP S - eULd+*Pdt@_-N6 , Gy$w l!HkA֧{=|4Y40*8*G {N4O $3@QR)Rn~:nf 1!aCZt O!q~IT;ʔPO;ӳ‹>R1xFA4eӕdHgy$@r~[a uZ}FcfM=wx¡<$[x"RNzMVoէː9zu6ʀ1;"?$ EԖ9AH= Lv7zƝ%.:t mNA+!I )Z}E21W<J#^׵fWxִ8["?_ Eo)[W;:!QWs^6#|$ s4B(λ`LWvX| V]tnưd' ;N%tɨ 'BYNtEdaНe> V(i/jkZ>? &~S?++'F h+KYS,!=K_[Vd )P"9M *H`ZY©R/TeNoòTridM1/ ;;R]s)Ʒfk#zu=Q3?U@8I8=m.  \Hmdu~G1&E 'JdZj'ŭr$U Jy"Xo] 9ȱWiUHmcX3gbgH= r߻K +>C>.'~>.+EtܴS?рɴO4a&@Rh`!,?.-ߪjр'yA_)YNKdȋܣP& G}!W.NsN3FCWh%ώ)Îq.㔸\-9Mb-wr3+yo{G_cAb֕c=ťFAk:4R lpݣ,ʕxz3[7Ѭ;eNDޛ(ktU}qw=P)_+\볇p~KF9Q#|d*O[ yS}5F~q?\28Z`#x&> t>S]8.@q[G9%LC0?>X#U϶V0 1{7{"Č]/!06^* t?YSe/Xg>Ak$9XB*e" ~M6y"\(FL*],3ِ\,Տ 5wasE ǽpO}m KW}8ȕMC8B1J{ zw̿t a;1u J,썊xjZȢU9vkzls2kMUɦ BMh;{\L=3#Y<duUY7B>ʲ(TnfKp ԒNAγ!sl*XSraR/M(6B`:@۽Ňi3  Zҙj]T *\U\M:bKniվ>hző B#|ȂC3=؁fZ>4ZJO&ؚ'NO_F9;wܧfOo<n!23z6m;GnMAҼ@3Xڄ:;YAʋdkBL{i =;H֦Sd[ǚUTܺXC mYy?CLaJqM}+c*(*]*`ZarЊ+nceRT: tŪ+'yK!GoBc)eT*N#ixȶ:mc/kd@P%Z͜;_I=-~b(&_, <w*-{t JBN'5nԸ{$% c܆HyA.]=P\vb0X`͸'w]ЯPh_YO.ʨ7xR8/c/mC5Hm*0Gt5ޜUޭT鲚ғWkĜ(58"Yng͕sY? +Up ו:+Lb As/n̒p~ 76RQ~/ _!BRͥu/"" xt}j޾#gbUOVBMԩdWr0p6αv.=öpq /0R񗺕qEB9X.eb4_Dž`56 Xj_V [g_.lm9ׅ2(ne^+Xu|-x{PCh)E>ְ;7XMp[:G\[yfOyVK#Ĝd ΥAvH(aĝ}Љ@טO77ء\5AN݆D$ #f/qRf!PdHA.N%`ꬼjFlԵ/$PC _>2v mxAʈ7eКr7,BM[`80렸"Z2VA`W1uaxIsv|yQHY;rMq4LcLwl\=>M<fp 6o%O>ʢ" , >RE![hm'FU1F>L^_aM _0_CZ '̡[D38{-=MIب~Q{}6nhae;}-HXuH<6:e>~& s\(5͏B}%B(QhhKGEZĥa2D DS_@<~`Qn劮Q7/[?HR>W/OD69]NoN@V/CϩjL$Ð.td2PPgKg\'w 5ukP2=7Qs/&:Q]ôB7 7(C&C\}, ~9X tD㭱:bvi(&: ͫA&ye%69ڻAr)3toCJgh8]ZE2Ƽ梅Q̞F $`:pC/~>2H[63ʦ; ׁmlU-|]nF(b{‚;P4 5Y(Ƙr<Ɣm~2D.>",:,jiQ\'78JƶrolB1m)* HG?hM_Fˆ#3n iF)#DB@plc^^5eHvs?=|a=#v2Wqkk.rV 4OrQ'Kk_Wʶy%‘_^xn# ^WjE-蘛hVQo'M%ڻRk%)~|r}wڿlEJ9ULOљV A*- kU);ɽQh"VzbАZ}Kw[<54%<*bN)HĤ8U 9vTQA %Mp0s֞hNND8Z暋`PygpeMXIИ|&* 7ƿ?6BšI6E8naF䑫c$CZ aƀpi $A .Uכ\qdB`53r׸7@=!^l=aAw^v4O҉^>+6r?4J_AĹ^;1N ̚*j+v?̴mSik$QiƎ Zo,7N&ܢШ03Mh)O p c^I.6TC/W&~ 7M9#i:@iZF͝@F\PKujRGېlpHGo6N(#5;%E&ĒU/ HOarW![~F݈8cCS&h"Mdgdڮlxzл|a -^\Yr`ZI E{/>=ַr.Zxr+He[>"Ϫ 78-it.1S-:7|C~sB('8Yn_h)ĖC ܐq)"^+`DOZ PyA[NbUraYGB̶P'te&aPj=C=l^1/(lerH݈ޠ]r #?׃6?ViW1z#63lf(|8`ϼ-t .`o-l bLc$IZT'LZlYi&3x%d'F E${qm"8С@3yblFi1R󌢤|8}< S uX{\A*twԓJ pnc6H!h5i+Ҭttٗ7 ||Q&o$zXѝX\87 ;,oωr' ̓}< 9]ܔ\L}F1Ǹ "J{Skb|xQ H=m֏&P#+T@{N\9ueܦ~?DV2MA(6O@S 8]:YAIeJ1nIa6ͨW\OT#q2)'š;WxzP2T0m]ycװY ?._B:Ke./.Bo0)ᇄ}g[:vw2Yg`W{0eI\~-oBY6 TRI~^ ޴a&)݃(_No"ž"'QBrkԀ?.΢0'}0,?>:ˏjmCg&Z־>|a%µnjp}Smr:>~6vzaԾ3,Fd;Û8mcI.Te)NyuSlc~ϛAJD_m3ގ+WMvU==p"/P~d]|bXً[2H]6ToHTS~1!T`WMٝ: }[o}+i{Z?wmk#pK2!uޜ>Dӓd)/Sb dl. KȑV0OU|@;ܘCt R;jrlV$ ܒ\}_\crxf-Ϭ( ǾU ^S-c帘E-MtƖ{V擈zN.$mܥ]/,FhGEptT`o|zkZ L7tTk15BKJ]ٮd|(*/>z<-Boc\;OaHɍ xGn`g+vj|:1Sq~ӏ`H5UFq#[7{y9íZʆC;qO$I(cU_pC}#+شY/l8m'89tM5:AsO,},i_;GZZO(Kn<.Q!bu:_]ϟğ۔!/^# 'vK#[+= 0(jL#xkD3HZy|4cNDAWØ\WXlZ>}hH_Oo-L/|B-':H6,8%ęjΝ6YwSZ_p -ToO<>k.CtX.gK<יb]f\QHz#ug3.Pc8`1sG~DSa"էELAol~ND_&)sDN:UXPq>*^MXhܺq zXXni+4#nLMwރ0LU3$G&҉7_vuLr9ظ&ʡ?)}Fc?h: $ +/8[N~{]2qбbOݢvUҗEHHv0g_gLjP?#";9v ۖF^3Vﳉ|"ٺmm.Z7!DC8NJ bBƭMUaԯ4 Q=2g_xFPE0 5g#pRLyxrTDq{0=۠&x`TpQ^Ph0׌E?N)Hrt5h2 ]DɗK wwd˔4\4 l+kN[%8ۏa 4z]6G8`aE=  #7\]UND?ؚ9|·(nP:;x6cW!PG4Obؘv~"VG|Gp gX  yc߻@o3!kƝoHWƅNQ>% Sを.|MRZ`$A?p1Z߯ÑcBn${WO1.SVѷunE?55Y2 B2w`bOp</K~mrdyf0Q{T9R)R>JQ?>bO.3@Ui=ǎ5[R#x9J] {դ}6W䉱!m,.?H6n!Sħ[qnCչsJc䀇 '{܎AgF4(8ϤJ}1ySiP/Q*{(>ttv<@8j[x=@+T(=є^!wQ.yo;uKxnѭ#<0yS~LFZb!aP8ί {!JW(RwOhcOA,uRnasd@R{\-g`$ hFB&帤^@O꒯^~^D`{77mc9%j#CwN}nNƲm. [tGב5Y(rv, z^o'sUк1Xl&cwjv=1::5d4z6b#DWI׮Tqq!1cEJY"lex͛oԆHϳ`P=2 ܟy8;@KXAEqKAmzejXvhj -veJHԝo_?YzO*3,td<[/TRJ7@WeA}Fm@.a .kD̤;IƼZ2 Lubxo%eM7:EwI@L~}4u}Fa aݎk"G=|:K6ɭ qJ8['7r$߾8OT'F4+QO\feB:wGgFMz*1ӣ)#+uS$i?v?)R4>ky _eмeq; A=Z) b>z/TZ{]fPie ȋ3|#d6_p1d{Te,U5~gaҼgKߑ>6nCESnm8CYD7%/ Wܞ3nlf̑|SZ7DN28^1""RtVa_/T85LvʗǮd\Õ4\(ԙ1  #:ϑš:|$F$[%>YJBK s$]eQb[Pe.iY.Foa$ܯ|᝽1Z7ۅ?=#dL~^ [wVX,,3Հj #>1T@62dѸUWVnJDQb+ 6dؐߧ(gJqHET"*L-M'Ph!bê ,_eފ36d7$b!.չN$*QV8e,a&ªӌw'$3ӟ%^zY/a4 A`Kmi.}id;EmTe{,ܐ#fF]v(=SfYKR\MD|RZmmZYK#V᬴F8:p0˃EK!zh>G6`[tnϻmfjyNipgK cs ^38y*x֔/|'Oe-e, ER g'9:HbwKA nks0 ,JY jQ"4.p6%a8E`AwgsrXAyr獪[Dq)+)74݅A`Ha<^WBڪ^%c%H4.kӺgZ @cx}A:HȚgԦ\* Te 94EP(i>R>"S(3×F3Z%MvN7aiҊ5=#K^ʧDžmI1x5|g/W `E 7n\ȳ*>*j)Lb?0߀E߂^рhA]Öp #!oI\mh ~]U=1ޫe9#`Ɛzw~T܋fS18wBd{UnBbvS tn2:|xԾU\yZ,#٫v^j |`(?t-ITV!hRcClځݣ&hpT%}zlϞHZ0rQ[/#&tШa[ ,83N&DY OfۈQPb4*.|u&uق "ڐT}@-c 8(V^݃V TKHSxp0(f @LEүnC̟s>*AjgBO/^[9lF^}g?3j|))J5 L]YJW2sPki_%3kv}m&C&}HgNdԌ^zAep(T{jjPq~HE)l|;al5p ҞK8K.FWS5ğ(ݛ͗4rΣcvW@VRi ɲnԅcn24LPC-6P'^Td:A_S %a -5`"4m}lw?8pZjδЏҽt$f: jyY jYPTXе:I},53vGז?\75c/.ęhcx"~.A;j&CH2|N *P^mjj?Qf+A -]dgA8Kd!5Qꉦ}o{*K2#e2^ !(Akjڔ-t\KcpeT+qPծv}[M.R\@8ABcee:ϹBTSA栍 wɩq1rRR<ؿ&}lxh#6J1$k0 Hm/֮b*ů<a ¶TApc~TӂxWR5t_KVSwl<øݓ?s;Z_nC >8n|'ІGEKj#ڸLn;$,r#L4JI'u!qߔ$Ь,-\5ƣ?;b^ y&!z+8 Hq!eM 8V͹ ssYr+͚ijQ7L1Xrq8қ{Z~ytB0)dh㦖^6EH`_+[5dv1};ȺV6 C2JJZ9w?gO׽ļ=m[vڐK߂҃^THJĨ%k~GXAFN F< P"ojXקF/m$cl"Z4zq>K̐w?h8M n8J>AR?\}(L65qi_]wJUdƲ'B߲^_ =Dgk:#PohQv;uLzf9 ؈˰_eV L CLi-MU熆t(AGǃz1s9tSnIުkCY[Xza#(H&>qNijvm2Pk'Uf8rq8W)hCJwas"Iun/{W.PSYZOgYzV7ja8($jdbWU?LwF gZBF<09xɖFSjhOAf#'c.EՅGݜڳIXhKHlcmYWERf(7dP &3\G(u}/Uo9Yc ?lBK.>3՟uP+|\[[3 qY3b/ۖ s;qxo~W%T%_LiYJ$ߺV@)PVY]TthQ%8vW˕ti@G:On`}U[/!&D\RVF ɨ{Š}^$a.XH4 KMcX4xt#( N䵡=)#Iɩ e ?H8a0$8חw,f ;ky0mV1 Т,Fz3fwY::E ǘB[>wJT~v |-kbUz纾p#N‚i- >/]SYnͽZDAbf{aX%ff0u6%yϊ>o(#F<S :? h4G9O~z9ĂEslBEOV5:MXՇw'Wuق\@OU(֋4]3@'FM}$l[-R@D>MCN)`7`Q& W>bѺ}j@ 1-}܋:d\r%G~%Ww4Dz6{}6) 'xZbh#NɻB@mhRtAR6Wk@ 8bٿCR[w2N1`̉m%+L=ٖ˞*/"bΨ9Wkuh- 9"y|VlOV8pFw ]'|!Ko+@~=_Wt#8*j=7)wڸu݀*Y1NBjXȈ @r8xq`Ǯ J߄>V#㐘<Itޚʉ%\OՈzB&U.)9<|soTXv@FM,P5![vA׼(p ETb.@KDG;sOjlD3:m3NNT 6Ad Qތ:IfnbW)u̹y_  6(FLJ5YgZÃ"g,"׍Y.dy,[~Ÿ䫽OB֥у3FqU'M}k I A vsT6.: FT\a#pHg~iڿ y_s\4@ 8xC_t.JE.e[pPT>5}} lb~*Z˃ǏE;l6և,rwmOl@Ȼ{).)~%\<7~~V|w8opK$ X//wz6)LU%6b 9ә͉L)6{6_CzuU T4McZ,ȓ=lwɅh'*q.ls_*-ʣTg\4$FoЅB]}J5~͍ۤOQ4؛"gNX? GzXaTޒI襵Hx]4}`EEː PBzoe@oVje$6QWjP7y&,կ˛ZCwje qhMt%GfNcmiILG]XgXҗ-3B_;"'L52ը whaʕnR&*$կH;V `r(J8X"eMAkBUx}" SRh1 m,8oJ20;&{/ߊpo˶)S2 DT*g)$;SРP#L*,Ks~3:VUo{a hKLu|/Uo~3o(tf^Ugҧ89jLxxuqHT)۵}ڳP>yRgqAw7:UX 鑝)&;tqPqQPZ|9^q#-40ô9Wьfí;#\ kC̙" Mj|*NۣE:IӃ8D D^2iL D@z'h 9SDPV.I}4Z9G%D]udn!٨%T3~Bї_`OZBI\` e#{3W1j$@/&/J=}7ȲCpxw,\7-Um-lP2 GHnVЩ]ƴ? MKgѢηx2WW_/_ײkm7!g)%j:T}(zx7Qe?PD ,BM 909=n`HtH/r谻3_|N"nx]{XO@^")vrt)*VXˈ= 3d}3IJ _2|Z*czs)+O,g)R}㹢f&b}Lf?-7iĈS-/-9EE=lD4*p8raQ3]H{n$ھL BM-2Gn=HFZ#QlKB*`D<+Q{^v̜`+dG6f/| 3ǐK\44n^E*vg0rKtd>UA \>1)P.n\p7c ȝ8xQjIߠ=,)rM8(m]-Fos~>jEPD[Fc=Ȍ>i< O۲wߖCnI'bAV`}~o'OZj7׌%PGkʛ \Wq;^#;

*k>2 VM>͍gL;?bCyGkj6CsҐJ+cRW acLݽP;8q:BPɑ̪c[2O'}]4%UW܀CN1>|ٷV&uq++]EZ:<)1uwxC"h=^aUMpEa8$wp쫘SBnѶXElMS61\HH|C%ЩLu3M0&vGˁKAQ)EiKtqc>i [c':),ilMr;\ET[*<_#4]]-7$-t /v&rlkK& M3k*OK":(ݕ{K&uY/'7k\cB%KDh6ץ}KS^z.;{c-<#&ŘM* [M1ʯ#>Sjb}Qs,n?1tfޤRj#u7̩߮7GOU@kWvf5q=A–];͢zMojr8tcOb 0eMszͯPuApR,sXȭR̘?&`u.1 @h8KKYw0=0^ ݡJ/}8UKFtWE[Җo=T:]xkn]ؒ>AY6QUVP(eF8vU#B_XHVbS(*/qr]{ɞ10PQ~&:XUIR-+w ן;UcS}ɞNWpRIADJei2wѸ0T%dóBD::m]DzSQT;!,ƍ(\_oJt?gO;fɃ@O 9 |̘}#>н1T_.xj~XP:bYi۔+P,4c~֫ hyvoSPlRVe3|s!1J\ӣ.*K%:lj=9N*rz1 ب |GYv{#<><898 Oj#P1 Ysmqp?iUS3,mvz[.1܇!? Ң{ .dZ"~WB=~1@tFpbɯ8QmnsҹEucMY|OTR`j3gпyߧ=Q#7գj! gAH!gKn)v ^Oxѕ_P?H3m&3%0CDD&b %@5B=LsʋT&D1z!v -KǪܬ8Vgx/5\[ye{ ϧ+c0i'fU0r(]^N. ! >k:++W{JOO7{o_lRc$FrE ֔{}R^`/Y<ook9]ѫy}SΉ>2羪'yANGڨ4=e?!o'M0aֻNa_6A@JPhvZ!uue~,#2ww9Ű+Wnb{C[(e*0>lhÝ}C{(sk*X# a{y4>(dO30$<;=? iFU{AbH@6Yǖf/u 1- rNїvV5/ˢcBu=* R*ۑ g#[H$ȆH +~ [G30PE{" |Fud|:t/!? x֛dЫV=іɅnUas&H=/wA/ O>e`nϼ(9& kͿq;PxүCb%ӎ=Bo Zx'DR NPG{jREEB>5:GY>w];BׁA\"zInsΡmΞQ5spB[,ř)TA`ᗠ ,SgAտasd԰ e*ĵKߙdO֖QD't0 R;#`'j܆Ϊ-,M$O``Y;'0hZﴝTeqzV37!Tq]1JSx0KdCȿ5٢T4jm] k+7O]?|\~6e! הJ `Uc [2AA=a "ݜ̊/Of' #)ڍ'( 5_mf< Pb vGz=z4(z= 23RѪS|?ϘK"qA+*eڱl6:S;]k̝nJC^{2.RANdc|aƻ}Jzy:ꡎw+*2e` BǮ4M' 0D[5X+C٨ߎQ>B.gJ)V/jXR6ڼL}H,ssbLՂ.Wy}ƬoxVaXG,y% /oc>:RipyQXb7If du;v!bx^G"۟%pJ*D]}MUCt7 :BAP? hje 9K+@ւq,9ۑ[s܈R!EwIFB c#Õ,n|B߲n]l~C"O?6C+5rɔVK\K+?P.//]v=&/O劕+V0H.aߥf,bZهk %a jEm%븒<\:|;4k5? iFԡ=~ t4z6s5HifFm#٥xýl}Jo5&f0{A t;R,\8eyq1,=?DP\2(Sw^Z4΀Қa6zf9Ptٶ=LEIAJ4]Q0m(>-ӐZ6-EjrK~B91̧ d;si?ֆ'Q5W/sfĂVkl,5䀇Usbq![jvgɌńd 5EZ658_)ȶ'`-9.0Mx''F{tV~!&Td0",D9jYM_EDVDkAMQǹdSqа麶]xJmD zÐ:,NH̭-=,Cbgei(l?9. i~Va\92 aG 긏uy߹v8.Ӛ1jHAj*KUyS v[stEkS%McX:c,gJ.FTsnx(*(E>T~vR?*td:YP!D7V8Ds8O?7ӽg@jQo vwVGOG?e8t$-uqԠ/]p뱢*nv$@gL)=\z+zVkܺ#v LfoQ`;2Yb#Qu`UhoLXqۜ4qil#B%vtoڃ@ռ_G/kOv\9?TXKR%F8B'@Ԕ@XM=R.;z2ٙlӟ.M"' a}}GG2cf6Z&bgr&${NXu^,nPu}Ol'ڦP8? bL-],fIFffAl~!'=zj톝#VRz_8qIm9+^BI@~s\Mfy8@dֻ59:be$N(o퐬×.NUpe@XSɋ-DKxH3BVop N<-2. h+W]h ]r-]FDeR*"fi<65M|FI!(_H\m lCXcyJ/ӥ,RDAeW2_/氲^&gYesX4fՍ|QXzs(L&uv. f;,Yq0w.o`~|ݣI beV/+҃1R 6|r:ѡruF:͇ =b2P"(tPԩF/ KWEǷMWi$%zexH(ˑtZ|ğS߁3ԍx#Vz4w\`U%,ro@[u:ObAǪ^55N.yF 11o;H]-@z Z_TV)a(̞ G>og5D- ?7R FΚiưg"v-H OWϋN-K" 6ԯgen;J 6q׵O5Xb:xp!{k3{IA;}uE cmIKٟ,'&$hLPBZo8ѣ+2Y7>5ꜝF(OZӁz}{A4ۨ;d{^$IxYC穖RcCOqUy (fzY }]>/;Ϥk:VFOލT).~fzEN&.Da`"}` -NˉdS`0s'yұj87V`o8h%mPqאtFJ1aY, l2<%®aIxR LC'E1QSxob*mb*]js~X *X rZ#P?JI4 O&fU<"Xwx|U=jg;kHK{[* T12Kf!D`2b Oآ3 ?mt$|DC`h![sPc%g$FdHrW# ϒQ$ε-z\92Jo|8tK_׆r/ WSX +T/;chQ P͎p=F&r3t A_.X5 wJ IyO\8_ʾM%\?0"~դH-' e^uQ2KT:^&ą4-5cK*G+Fe M~)t0NاRRY1+̞mh[= FA)^{N304Ӗk_1oMHA޺OnfqAb |54?F 깈a,uceEP^7hTDET*9wk%{z^͇A_Sb0>Wg )Gvogdu7I$5=O ^CHl"Ș[D?nC:0ΞNS]խ[Ka-C?/K)b]8 mr/7yɇDJB>}et SeR^*YGhZ:r +RI¶x/){%¢ĉĬ.ThH} vˍӟՉjāZ4~j$o .nEz]srn)<l]oc'Jڗ(N1U #[Ch'"玡/![F`'a? PzL0e*ݓJ[6N+ "qt3&:ӗsYPyƙ却4Tljy++ 0\#Wd>!VVU*o~TUi،Tw;,dvRW_h6ҬǍ1'N)5!f.H[%k~7AAoi2Vt&;S<qniJ/b=Y ?D ldc[c+V(){m>/ۣ̿cjR@&"챖i" 7&wqE~+4!~N֫e eٮ8a*DL<t9 7~?^LՇbng`?p*DM@oIV7&F9ȿ Bx_3Aed5ǯk ^F>1 2Kݗ8 j/tq}c2IntBXDp)UY_ ~b dZ^q$KiĻ:c)WH Z]ojkESe_36z2:| k{1&}PqS69MaRR,ef$D{UD|&C1kc"Sj?Uϐ Z{.ROGӡu7|z~ 51-AЊSh9TJW6u8_ZcP+)S}>G0klA^<P.sSRUk0mjU6PCT!'HGG ;9 h ,vwpc+%@v=$I Ͷ]x xF1<"nz*t IB  RC^zp‹fsVI=(#aS-$

cc8;6[b'@r1pQǝ҃gg!-$̍{(~m{11ybrD7Vo `1[@TDaS d0p)MA;*ytFIE#8W<agUwn}2S65BBN'O._3u_ĵGQ$k.|U;W!K&jw'7nd'c !Fk4D:Kwp!LN'&pVLsSiT8*hA[ d%0'7}4Uj0LHc1#_6쑵uC+ڪj#FΌ]5\Zx1o^ 7RDQU30g 1x3Iv'quXmy_cI'^(Wxc­>A~8d ̩' R,FmBvixk.Y *1ܫE rj!̽Xw 5ߘt?]C=' /a>txT#t-#N>,i x*ҹ3~lM0fn,xN^>oҫ9=mIܯ/Y`ȒA ۄ>c]e(r#х(_*)bos(I|ҟoZrmji |X7_CZ(N\xtz^. Xl`)GW} bCoUpO' :j#`Q 0u)Kb0@`؏5mӵ6ы;wP2~Ǐ3 j2S3nd]/3`WtHTxF>m*zč,"| ΩOjم`5S el^= ~Mϧd-KpD IC!G8kC.xX>8K7;׃ʁgX",\,9)m geQ,+u|u|iVڱmeR7su[%S/Ch.'Dұ=asǿhF:\3x Uxq4TFn~h}af>IGdQ)k$jm "P [M>P6 5he%^h06|t0}`[ٔ*xYo~Iƍ mNEmMQ;1 JUYv!'Y=N-cɆ-%E/'&v(Y^ mow_4re$~x+ijކ?{71hG ^՜@1Ph: IKeVI4 1䑫M-D(Jn`MTHVW ;"!7Ñ<5s+j6hn-)βYuϠ4IKܭ4R`XW=**<QYå A >Ԓ ITⲫv[}32d?Q'QKbV!H H.FصS/t : ؟m$.x0m謶;4g~k+6[^uP1ײX-l8R 2 5&3kDxP;,|bhOzs|b/]۶Ш.kg|e6!/:sQ4*D]WLrp^z0b\A@ѰhohS()"Ll0oɗw%U\l@ФT=qO "MBn_a#~d:{?fz^skVE,B7N )}fwXql Q]d&U ;r8Qϱs M@/h=#N3 4NYt'_yKdn=zCϿen:#s?vMʻOT+D(Ue\ݔ2A&34#-xg>pYa#zB~ wC;Yhi^0T0De8Nkw>~}ʻ?ێI!_119ѦlerNL裡f&!Gvz AvjUԽ<%޷hg8h*0_ső=G([:עh6e?HNmwbPô6wp'k9JQ>;\Ѝ?~289Ȩ4z'-DHk+G9I9'v^e~.`0b>GRD J8%xDvq.3cY‹Ri`Y)[ )-qAz.^bK4akǃR̦E,8yfu8ǰ)'ARոmޓ𵱯S+[gޏZţ_stU0cNVyB1v/seA;S_D0AfwB`=k /ԐA uÁ?2h>V2P=In'QɗS-!bCm3y&KV;A 4'iLr2s.G 4 `9,+8AJq[Ӭ8Y8|&߫+|(ip2*d:l"Awbwn*2 0Ѣ%ЩeY5[u2ovoyYr;d:1^>71 n8fJ[CrFFMpK{*6atCI <-}72="84YIec M]d/"&Qϒ#,WCљSA%n4e$TK=TA}Ǽ/d.qWA=\[>XO|3Ȋ.Ɖ?I@]b^!.T}j=' 4xQ1LY?n_w׼O%SiӪ.mtD 7/S}&}CD;c|grfyE=w~š>yDn)v])1Y,5H {րVRIH, }&YU~XS{ٵQܪ 8GodnLɭplp\mb:+5co#CVekϡfdoO#$K -E}%Z`/ю׺((MOjl o,,YB&u1`_SpdSqCڦKA uiPvxe9m&Pt];5|rPC,vzKо eq&LtȜ7~=f#"хΫ=wڅ,9_x ΀;&UڝT]Z#7:#9n3HkT`Zfٽ20t T+d mK6rGǫhr,~:NT 0ӒޠJD)`+Deiԍ1E~R'X¿@W8;v{Gpg`#i 0,t+='k ULܱި,nŘ}1.f.gC,D?7s3@e9PO 5mcn"L/Ji`5*N3MvBUGĜ;dA U*I\^o-#(y6>}~ L#1.ÐmhҾGg 2{,  l  AjJ3rdf63|]W 0[`;aϑhսGЙoBHo4o]%dJVȲfL<h|TW6g &>ɚ=?b4ep<1&Oâ1^3 ZdLsɧ^1e;0%Xv>I4ƦZ(aRx]TJ>oaI֓W"YTA>b.ӾP6ILƏ2H!rWvq 9hcᠼ ^P5;Cƚ`{Jг@*볬[L`mNi#+o7Ѕ( $~a@_ΥV.PI&%rP$+Jd c/K~|̵;(F``sa>'^G\U$jW Gk9ۗaq$ ds1 3Hk;QJQ*S/ |I.2,-қq#r5"P3R;9!lLn4< FgՀޜ5jzJ(&Ԙҍ5v Ae6pua7m /aψvfÀhjZ̚g_jЃ|L"B0!Nw7\jfY+Bɹhnl"$rXJC6ηfuJ@=s ?kk`^g>M.wr 5h\+݇xk D3ho@:n$sKcQ墘p9[rl[:;ogZk.a-\@}I9 :zWxS<\{Yan-#ML-2'>T^vZ/^y[ O~tr=WtD^`[uG3dJ+YXv'y׳.i2g\joݞK16a)Fv6<ؑi:eqCN}W^eȬImWo!w i-M6}e~B\oxG*@\9˱3hޞJ(.y& ި' lP=EdOO4vC8q˓UV.zϥ?&q1[XS^jS- g茎R 8h^}NYy}?2:B\@p-Y]m^e}ы]pcj9"~Sy6o8 IfAt[S]?uf]FDh(Z`[ۋ.#y?2L 2b%v2 %lFg}b.8us^|7{S L o\{oEE q㇙h9V 7_E e{m> buaj.lZҢ<-㈊F^Y~c| jjzd>q,)zO$ E}Ʃ4t2B"Uz4ő%:v-I1壳A=EIG2@'Db!)qi,Zm7Bۈ=*@*q)ߪ4ZzF^ @ю 4:Z,{< V̧fOzͣkѦ;Tr$p Г/sL7>5Wue.!|V UDx^Gx.?pBG1Cqʠ35L G3K{3ftc "ms`mD3*@"OO1,GXN1-2nDi0T"D~؞~uu❇n և- ;TTwhXپ̏ ƻ0Qmx͓#InI Hj{Vf<0a+?ׂl Fp0d@?1I}adP&񅾒8=!A@1I-jR %@}8f;ݠr^'ʋyu NrxԒM;P{tJzĵ'_j S fIҒd1l[UE, @oEwy(Pq'#22P4ӖOŽ*)R TD+cmo7w̌cyRU 1<姃R)7˼PRNSwݨ=)M#"Z% Y?#?$py1#_c4:{tJO@ UPlS!;"Z]Nb̏LK'8]Y5JG|A}|5,n@ʀ[91cʪLU6eu8OگGaD[}a\á6^WIk| M"^ob@qgB 2}϶Iayɐ}BXBk\O!o$wB=M} 5HȮ I~+*G *vH&|?Qsg }gin9!Ao1v8|J[0UEK:pC= 8G[\}N\pA1oEbTͺi upZ#axr @c/dA67%v.$lltN.GOwbid+a‰bAM ̓x)Ȑwe$*Fye ք ZTg-eg IAcVMa%:g&;,9!wNs%B 菂t&&2ZFFXT sSAј>QЇ[FEV(! ?IIF{2L!3 w"E/(QTl+z Ev0n^#C;JAq뒨,[IqMJ~t@^9,KmSԟE>3HdT &0TZLZOK8(!0~qH6:JTbh=s>]t تkZ% pJ)Uf)Hvxſ9ujhCv44sxi\nVqRj!ܹon΁h7C|;|&lgK ksJbfITMΫhi''_Sd aß6i6xN'>jA}CFNTiHn!Qp.FcOAUqۈGPBj?#~:O!Q6>nb2=> RD!hme삿o](Y>)j XӊsE L"%{?V0 h`1)5 R?L0\-*[E2(T'N>$Φ |g&D~atRO~kx!_F\pϩP$TQoy?1+6L RJbsR Mdq5^27ԊZLM3#aB9rvs⺫"SXU|'uD2d:j@^WFLmqax }} w~(L啣yeFds?k xD[fWXULwW̶f/#M)0#B]cRuo0h\ah9C0b\2@T`UEteN%W.= {#`mcxaץo}H%`<pidIVahϸF`UZq *73QTQ8K/A?G-fOݠ DT古pc|eMfbuo ʦ@G_Riaœ*D5܇XLKilc GUAK7|vQMʨq?!kӀx/":H8VJ/4u )59#TUcF5,U֩C!" 3#1v0Dd5,gTxa7Ko%z,Fjdfnpk -_}|t ܃ThDfat<æЖMдv&7~Ȝ(>yےdP[J5˾‡&f=DS&l@W:"y?n, .6)R 'Tui*y2Z{qH%DmJ:6TiHbgT~*k@(qS} <ĒYO%&.?zPkoӽbAzYIP_Yf C>x(\)hpĔ#~ &s>H i\KPbTIিC^[l'dV 3)I\cܔF g^t߱eb)O6Foc•AL 4;ldh-bZfu( T7עcصG}RͰ{qe*6!MI}Y+ֱ~TuF ԓ[Dtf=O9hyBVozf%SYLF=D8SfJwU)K=[Ɩ߇}BtX[ 6Ф#Ii71w0'뛓4gygU=56S sX^?sN {/UR[:c[ja499˸H`3' I 38A`( vMoL#N_T2&A{KNrpWW-?|oizKq +PTEܺQw. 3B,ڡhC:aNy +rKxh+y%ix< TFwBϠ:LLO-Pu]rF!5e\I$G-ń=|Wy 赙=g>k͆ D@,E=_YV[hRyF ;Æ Rd۩c e6ǻF'k۔L>R_G 0]$R\  ̺I0Y_{Ɩ떣 F?8OejU ә ,_'`*6"b?-(<8=Hb6%^o7a?I D),=V#c\NZ#F8:wc\?2֭%7:sb 7R#yl^0^U:\V3"u<#oߪ:1.gKܨa֩z, H ~2%1DW@!mbnK~ÎOgcx[/#LؔhqI=G4![ae V2=/W:DϻYu-n`>pZѤw)DW'd@Ʈ9f D'"т3m mHOo]ȺN_ӷ7_+ZF'h4)TrX-&r7/y6+L1)l/xÓbf8r[5F`+N~2zRz#|0~fgY_q0:W >=+Qj-wYM|)al oϸL8䔝 " =e#W wYVo탆.-grOp#@l1Zs("IS!HAWUV4kן9}!P*#f\{VֺO @ex5tj `]3^(Xw`^_H0y1`3s*f|4ͅW%>tƅ;*Ӷhs5{P{2|(x4l*L=y󕆛" @qQww?uE*ji$(@Z$CCxT`:^bL-*7faSËg'ۘDc SpW.t?6M'hxq18,ͥ0ZH y_K"*Ea6vfA3s(5 zc0kO.AeLd5Z70M,pk}*ōP -K}Kf̓ GW;=7ITrSsy~g 3kB_~)ث0++I[bIIK-v|0 P ԷSjb@|._iPN;}O'e-!0=rƥ) 'Ñl' ߆RN~t$aT B\'*S:b6'-' ءRM'`$hn 7 +G ]ۗ=/> ܩq `3˴Ng4Y!#n8!TY ]tzw MZ]~^ЭH֍TXsoe abd COUS9h pvZq%,H![0ϮmѢ~]~\6#/TKh?Y>{%-AaK`iI·inv"::FKKmчU"ћ,0l,e3 *,yM<=ưl/|;72Elw2#sg3o=ɪ%Njb۷μ0#OEO 'b>O(ީ\P28l?C"PDVSAb7JY q4(5)юN# ÈS߾+Mg~g%*^5x{;IFfp+latW/Mϥ¬&VwOƎlS94 4*S9 KIA'Jy"J`N~x| [ tRpU7(қxk{vdF"3_'x a#4I<{ xv۸>=5墘|ލ ^ۡDayZ{@3dkm& -x^*"WHE*c M+#g!.vot9ziNx~pr`! wm./= {24nwIz9|%AP|YeJ[1i= 8q!BzKeMaa@UA7*>kmI^V/K)t@%L!2 3Am顆)d M&(=?]^p8H;FzOhz5I|npfZjGsZRS'ո/Mo)NvM18ĵج9 +ŵ(g H(Fgrv?8)y3åƃ8BAhڦ="&XF#ZD Se g4i]3y ;ذd&2v]n+߻SJ8NjbzX X.TXEIT|bQ!RpBUZEf_`]R=烔D_jg@إ4m?o*N#--kW>Jޜ\@튯]`-EXk[/鹟$l6nasp,{TcD~EP<T&L{ڿE?Vd^3aЧu?ML8i7I\kiDa~hZ'wz^L.iG^RIۯ+^@Ɂ:Skg׽dM%ysww 3hiH%dn~Ez1蚺edRëyL,]߭ }4<%v^bTո*!3s6dK,:T6ww_޼ hP!c߀ uA&k9mtJuYWJݹJc%T<=# Xdw<ɗC~v( ܓ7 &XrjKboq> $֝_9U pv.a8`JmG@tc~ޅuyiݩ,A~\~`>tv׳:r2 RU&`E+i EIpt1uыhw8gM W\% 3zAܾ+*^@wcjYjYGס ߭}, /0md^3ӀG,1}02Hʾʐ,cXqhQtXQ_NV&) pr[À{5GtNBbbS[ITTT,YG iQF g X(=b"I u@Lz;q+nil-IpD=U`phwr FA۠gI.2 :Ԁ})^ۃhY 4<ϕ{U WGNOb1$H~oLzAiX58A966T :KJUnDŽ[P\3؎ <}9! #9dRe[0Mf=7l]G|R$P=HmBƱ0%EdzTmS87/@,L|F~BK{۶w vŲ "紬Yj#[ H9oSU[t:ˎg9:H?yQժ7H (=bAE2W%P?Xfe$GV Ʋ5gTJMGZ` wZ`F8nl[=T$H D1wJ%!:ūu\+JʡO3hccߩ`LZ ZE@R5t%v4lv`&dNx\m Hz{\k, 9UY |ם za z5X/F[N!O> ( Lϴ5K$V\l叩D?Y"hKl`hSA0 >~a[@C(Xy?֭,6=Jo%K0ͳz*v}I~/T_ƒ02. (MĢ|zu|٫K{.=%ffȅ8TE k.pP-}OamLi' nZ''EurzGg6r.%&, U]DP;:}{YN H-Z /إH^SC.*,Km Fޓo;Bl;Xᶰ2p+Twc&Uz̚ jww(vX-pq ό8D3Xi_qTmC- PAtz/}e» BP׋6|Oɍ;7++MSG{`\f,Qiơxml2g8]c9nkLj$RRd)B ww.+];r(nIr. $B'C>~&_zro󂺱PWx_ J/y-px0zz"%\\i6; Ϝz0urs ګifjnKKlECq(NBۜڸv%@2%Xq=LpM^=N=ߋလ=!j0 ygظG}1q̓~^]wz& 1_LҮ]f5+B؅5d$,k%txC#H>l opB'[\6 gd0b[0#/e洰w>j?XOl>V^Zs|MRٖ{Ӥo/ 8Gk`w쀓F{@]).S>yg J:6R*4g&^%]+gM%/_iI,\;!³_a:^p}˼h=㘧RuPS$Ǯw݉ ,FA6{L?ȱq1׼o[{s^Ç (c:^0{}t+7] {vȢ1I|*\sJ_zIQDAud Z]^@*}>}oYۄs8z\OFko?"6@_=0 )M Khz*:S&Qq} to#ϐג]$݇b%_o(sfL跂>(r̯ e58MhFIn/9oc!cK[ }VHwZU MrTmYLTnu@r]<(PV={4l~MKȊ6Oq yT(?Y{b˕tz'^!~)1m+`M[9< w迩\- &_@^dɐXN r=G-2r۩v񸣹d Nf:b>ӷ-/J ˀ$cNZ4>p} @ˀ17d0JW2i_)f)Pz@5^kO[\4SEsՊ2f}1 &- 8xIG|pHۡE( bI>sp f*"3`[h$GINehIDǿטf^ U8-SW؈qBOD<|Z8ViNeryoA9ofsVú\*EνǟKoRhnSQGCЦhm2~=%އ?;8sË'2˃JE@ޙrD @Zyg7!{|^,$ZueX\{3TvgS+}_\@z BCd4D ]n5烺@u+\L{9ڑ| ]5{8p,T]vo(CpXn;C`I`Tn 3_yҺ/iXf݁5#׾&lrvP2c6fn^_u$ hU' A-= 22&]H݄[NTtڷqia/?Sp٥\S8i+f,E..&NGR{#),nQng:cIiyHHCn?Gc\=N l6dW1 M`ks%RstNm0A]kQX~`F(GPArT%ߜ K],+L]kp{HdH8`-ZDlN\ aMLrT$-ntӘN%kUԖDI!'Sh.ł|& OO@&+5Ep& *l.0z,g4ܯKp#'x)gYA6Wji=[ЁSa/KHv0}ڿ6o"OA|*,ѭUT[CaOLz .f&9FY?(h%žTiyv߸t5M犳l3Hj58V954rq5] '0o aJEoQV@d{Dz! $|3T%+>d !32:ysS(@}jm,ۙf1FfO.[؄emtAW*}d\~0)4h.F;,\' S/ w 9S4;|r?DDC g]z*m&3HfZ]EQHy)}깈t5U""?jJILDCBWf}ϙ|?:Es]v:oiD1)xSq)K=( ya&:tn)(ѪoUWyMGbD`ep̛k&H1Oz4>]zH7`[_|f[Ԫ"T=^dݝkVi~@Xh\nVXA]buc!iVT3L- () 4Qp=R^6ӏL],U6)[E tEۼUE:4}H~xC%H|l_>e¥B/Ziig⿼+|&{"/duyIHo#g֬>C& &i9:Ww]P OBY9Ѩ6iYf?LpH0?4E)bqs1 6~ -Y y( @0 z Ͼd,ߌ?[a*|1eIث5{["VZibx<fږSPb,:5H[_Ú^IdPmЎZ31pP4Fb̖_FF3=f0#˅KaWI!4BP>ei:N^JN0[}rxʈJ9o U/][ |ܩn:tj,vs|Tf6g5i#5XNf& a_6!;w|7>{kY?A( aŠ -(Kh`\#|喥W㫁1Mp5g#r_gnP~\OyC8 OYZp1vJMćqDr*эubuw$& X\uߢYnV~nAxdsp.=BWdh&îoG$</S q z}pch]`!Mc:0hPGmpؕ%dfC3QQL'G֥b{ D!=Rώ}KPWL7e4XY7k{%#i3 ?U:w6(^DX=nd_lɿaSμ>rO2zOI ߋ~?y>v 9c/U% WL#? }ve?"3_0䶔)Z?Ξx +I hxS,lN>F%Fj74/&Knz,H>!?;2&=w[3uݚ(ºTTL3r؜6./Gq>˄fѹ҈y9pV(o?D)/UH ?S;ټ޻ Uߊ{d&!9|/}WkggOFÊ]aHhq/vB6}s0o &8GrT)QA*Ta4K %|Qu}RDb=w*c 3E90$ǖEsztZqh^CbgܛD\7LRI`83y[%d;.~W}1!Kl~CTڊky6L 5H:8|#=1RەOSʵ.YH/X~e|B1A<5O rEC!S -DjpA@VJLKfl($퓱SV:ηQ`)]k~vI:M{8Ϟ甎Wri2{/)AxoM"´ 9Q(u-\Ra^P +l^-1Ǣ"՗٬{_S>G2DGYdֶ?]IAv bz8"GZxb임mk@ 3P ,>m u' R[̺G@E @xcsz'ۚL&+vŶ{PC-boKjgCāPe?*Ʊ-Xp^|EahOdSS!Pa0/{Fނ@I5xԎ[|búp_d?.q{3тܱjtKzOHꑹp=}Ý5~c2lpAћ`|Ku/,C&֘H͡9 Zsl)f6)?4mRW%))=ߘ#|$5E'_FkLLq8n$b= 1WU ֗L[]{aRl[WDeNGMn ګvf8+xWT׋E &NG"Rq+|0aK,doҬʃrx6`U4el)| 1Db7a6;>p9yT[||U!s<|̂fu55$$s)'"m+rػNrUͅfmxU;N ,D.}4Q[qpgGV&=ܭqQ@ntDIJKCB=3I6OL1LExעaDT#ԈLs4]:&=m&( 1k4Ξ=TJ. .zgz:#W!z'.6"XS"\} ofVԶN &h[3s2ܩE:8ʔZu٥qA-b0r;˝}crr>-NB͂)(,&!}@F|=uIi@Nb(4k絯eb? PVJˮ IRP`c\ԖhU+scD>6i;?SC*Q@'%' G_$:hr498Jdu-r=}WSuc%[Ahך=Ybgj*& W.lDlZ|{6^.$jQQ 9"᥸v2SD3t~=Vh6r>Y_\ȭSO0;\Edlvt;pjEsd<ԍ2aMmi0 [B׷LUYЦ`!UԘVHɁQZk*6-sVQPg WnvU/'}l:б"*ψ+c0h\2]@*ՉB2bLZWd9Ђ֮X~z[5ŇMnʥ 5 ӗ/4Ѯħ݄)>рQ}lDPq8T} @8]+F){s|[^ͅ++uc"[}Jރ_\@2eSlv%BJʘo bW6qV.yy)`xq[_%]U<5ˁ{ÂX(U`7H+OCH,AM gUh8\j- wFMڄz]1uhA9e%LmQ< §eo n,d\#OƘ`W,b|8Sl7b# XpgUjZBO;#ѣ" Х"6ʬװe7GMKyEF z\Bo N1~5Jʒ=D5y<ױdtb7A.?8ff:& I h¬ΔK!J"ٺHo>ZuV$sV@+BHkDDžrkٳ)~|1pܔj)OsTdsP[tdh{+~Ǫ+72{-ydmE5'KHE70A'ycihw54J|zߵ.@y4 NEp`9TNji+?qs2VʘZ{G!WUItX2,Gp]g75Q#ʵh!$'j7Щ N}$zGU%Q(۵~s,o9|U9}\i$d5[,@ӥdW0 }7hw3:df gb䇕$l< [7iC ~7OgRth$q_AS)EJ|߲+4k;or9o%ˣ2o6zL$86w틕&e$0eb欷xCPH8x&4,co{R*fc;쪄`F*qCv_0ir$ϝX-=EzPwš$UpFf\X,Njd_OM1?E  KsTlo:}\0:lPF@?y%BzEz'4p gsk'<)=? Ҋ I]ü甘&'\섿J|\j3iB({7hL 2g ; v}wAzSng.՚&ȑ= aѬ2~_HÿI7ÉD`?kCFcV)ީ8oWovxH# NOZ,풢醜*arOt ȍ]YagP@xIyc.iDL|Խ,nIZq"7?;?&CnN"&3<o e,a_sDÍhXXL]*BCk U!(71!4&@٩Jt,g|x@w8.kZ;6Ƥ0 N`~\M] ri)(r 8YVrSaf4?/hA(ΝʻʫLqz w`FHX|v:/9dƘժ #T 2G-`x<~0Hw״qu}Ne:cdwr(lLa?Nq8| հ+ M(QFp\y5 t|&DK&3^/IGI|Lj5Эfan\p9|.|DtR*eaSf0"Ru?60,57&Ud]I\dT-+.X!2驇6IoQK|wȒϙ5-XUK|$~1߄Bă E߿HcOJ" Q60ְ.F He)`(2ab y?C)Drp JcLEK$҉1^ͪB SCs2!/Y5+܏A)6xAܪ@G5 BpU'dw,3`=ƂsyF5Ϥ;e˒FtBХ,G4{qb W,t?,=U7+,}ffZfQ1&Η`ҥ|yB9\P!\m gRf9g ujT&pa7xڴfk`C޳JAj6#g4>ZMh*g)k6HL *Ӱ/w4][b0WOu0Z46\?c0rؤ\IŠnߣe85W?ȵXO0$?T;S^ ͍R>ǶZ`?j(VĽo$n\ N>ӠA<&q Zd #aNr Eϼq֫_\ﺱ}l 0#į+Ъ8nȻ{GVXq-rL(f/2Kޚ`m' !6C 54^s*~oֳ fkȷ!^M.ۢ#$(yz<}ou}[sFHYX0Rgk߯T̊Fÿo9#*dƉ8+.\*ƙrOGGR<#lAx XDŽ㟒9HFS\]aUТ޴zXOY[])o6l?in^fwjH!Yphs tz@oZ-$L|FoL,7z/*[4c<_B [Zɓ=e|.nd/aH\eڑ١TPF#Sƚk^r{'AF &4^Bf5Ф1DF7Q'CeQkCCg+AY_KcU…ΈJos:Rl]'c9 cׁb&TBǝvʵA,l6s,U(m|pp1é0bC#6(cO} /+m>W~Մo`xO0Ey T"4 P~? 9>]QU7w6T+Kx$I(oN/r0-"j8SkPkp!Wn^gc:bA0/UЍ(z'n? >RB@6aj6~|"P|Cޕ9즇U_gFں[gNOWXJqi._ Mx lóedMOYLuJ@_+6 iUCa&7~DVJBR9tJ:*?olvBNLa2ߓ.s'D-;VxYMlﱐ.ᘷ-{BdiL` ]yZG<|"| UDaXeF-JU =|EL8צ"'qRULI4s{3P0oT/u׶f&L7lWիQ<CF 2B!bjr*u'HX3vFʴwJ-Aw $/kAd2V&%R"խ%64K^S! \'(^ƒAEpNT-:}(ݖUP]#.7 B.Ѝ4^ۂL"nK&pզo߾==*ZCЬ'OO  U)(mfބwt(6:XԞ¿o +S{Ґ^I:"iB3Eme@,K;S}֩rQeKDT6bӑ [騅 1/̘pOi0#8x[<ɦWaO̕8lw3Z YZrrQ:$쩇[#r)/5d#R "f&kI %܈(gZյє.¯)s d<_Vx-HF/X،Ai1s"U7S@aKҤ!XuGSJ?b!ҳVpfп93Id)Uc#Ю&-7 d6OX&0zZOѠE?55EʐCٿpgeu<8hn!x"oNW;N ؟5 O҆F95 t\JʛU?l!H{1*fT׵;QJѩIe#g~7+6$`#z.!}!WU9F8DL9$SR~r(q^絽3wb$|r#IsEp<([vw2pMdĮy*9&ڰ>6b]^@Lq^Uz%BiV)2I_'Ԁ11dUr7Tc22k 6mWc[^JFQwaf]QyN ૛0Iz>DZnv1e72g#5"Zز6Up3)1^15mCE$Y27Ww2@cYdh5:S$Um0bwg91X'd L4gn1]$KF A"Yf\cr!}46aMQ1)M$9XWHRx8vd*el@&BV]4T9ԫWZ Ң0COOk){]* o>+#EUI=ⸯ뤒ERЪ7@GsMπoWi/Wd(EYOfY8q%gs@a3~[Uz+^OugD`ʶ,/4C %P<}oZ g&joWs3Xc}pշNƔԺh]+zU8'4s>ZU$hM-C8'l{!B&_2>^G1]uw ]H >2k#ڬfcW` D-xQaFh@D>3'k VXUT k/xT ~0/ۆ <]'-)Ql+Fvgqjw YBIvQ}v{$*&n2 e|8-Iw7>1/KVm#,bn4\6=<17_^Pgoh9D#h:?1Ʈj&<>d( ]/kD>W̓c.+9#-Lg_Gy6M 0x ]&X8[=z&jJSVrt^uJ R%Ke'S</ހV{r4Jȏ!~}0Nˤc?rL ZQ6ʒf2@TT֟w~> N/ ̦yo1{X;/w)2e%T9w-Cjw5 E.nJq Uyh;q` p[F|W W7ewEK:Ibٞ ѕKJJA'6Yt$>vd6[xk9S-{WQ`2J*NbScgh 3^GrNNhu%(U˜24,R7C#+Կ9Y&&ޡ«:Sl΅ m'pQ.H5ٍ`r!$`礼״KͯaAxb6^b8ٴ㱯uYFS/!2 ^#i.g"'rN&n44IjD\_[Oga~)mGu1\G& }ǻy0Pk7T*SHcZ}SD&俐~G &FTͦJ`dxȾo5-rkLX-:W*_[jY4IQ) sEcc2Apm},fw-*bjeW\T7LmӁwz֟Ǐ *Pi^'&+␮ܑX]*B÷4a5܈ˏgc~?1($ y ӹ6b s Np3ằC_|i/`ؠϬ_Pzsnec[7&LM) }4$6gh$vh:ƜW5Bx0{8"v7D+SI8IEwBV1+>JԫEg2:k#\@ 3-2JȀ-G>l&jq:`6-b& lGU1>FAb4Z9q7+f˺d16I!mst|x37E.0v.甆g&8(oR+]Wq,q %lZ0p`k ~2+ӹӀBi"D)UQwY{sY[ υrm<Șj7Vcf(DDw_oyf\hY.zv|'Vk%clX&ˆ߷MSUjpzM`/%ROr=O.t?)ũ?W$WmEw@v]]y\bB 01]}6G~+pbz(L&uLUk1k񒚄J9I܄4ۡWE6$t5C!zR)DSh I^$")'~P{LR &x5I}vP^KSa^b)9造 6 7=l5n=R|eR^v)&>!Xʴ4} ?+aO{# `cWg$f̳<# '[Hy(=/gG|:x RC/8!G-2/(ex? _46V8d[|PR5+pw wAP[u/Wm `a{av}@ڄّ ls9[PCհіbvVn'*_nUL_Z5 唭mqk#~1 $0˅L!p~^ׂi8( P$777'I]szu˯24IRI \)v%#]3 hu>vFÀIמ&{ MQ#h7 i<m>ߠ6s}FJݹL-${C1m5Cs8ii޼mƒ{TnvS0BbQZuw3u"kpeYz?Oܱ'Y%3Ǝ0@Du |P]T$ʱx 28Ur-_ӔB,if=%TA,# fdBt2G^̳6ћRHq eK#J[d{F!CB],=K;h).ʳ6bNgHҐyW^"Od> T"I$6(~q͊vGAPE [*-.{m̺c7K0]8w& +4ϙhKg4AdoX8rN+&.6£haNDy2>AB2d$M!{2!k!&}k ((aa:xLYeV[-n"K{oԌoE.`\Tu3YA_ oɾtZELy&Cqߧ$n32cFQR[lbЅf~iKQ]4%R1/uhsp d3'k5d:̻NyЖQہ~|Di'|!mtHMOd}蟱^BN0圸¾.w?-i_m~*&T #>l?n]cKJ7˸NZ~z#.d/;<1hr{?LhOy1)0mjƸݰdJnYǹw{"9G%#)C@8r#35KMx^@z<-YCi~ :%~=KY '+o=o^$XϵGӚIt t̪Q-$&pqf p{:νʟ[P6cK+f5}Y;)w.Wxp2abYOJy\;;!I߆!YTK>r_C6 s\)[*:-k4?2 S ¾ͥlI /3v;4PQA :; ť[t`m60yj\d#`2(Az`iᚰyjsoY `NAcs#fx( 3UuNL%Yݿ/rnj3{q 97P @GPONɩ dyLr1qHQ@/.Ԇ#`RlOGϱ17jQڟv pƚ#N?LkrԓIh7H!̀Ah6룲#TBVh'dcS\Iq0@]u*&.t}Urp@R45%w憄5ֵJUϨesc(l} XkiTO>ڌ[2hAn6]׷Wo5 txסӔz.9Dک~2&OJ13X}wY#@#wj6r.XKyx- i8[Ea-VJx{B˕}Hodd9mT-g4 it}@{+wjr[2qL9Z z$G18vO~xb5/Mj>29{TzOMGJ‚tB~74#:ҡp9_3Xe L# F)A IL^ T F{]#L95>ASEU>v / 2R"ngILx#L6# {72R%zxte=ͽ)4H:`N\qG)35!%kF?*.NRc+;VZ&d w|bR+$[hQkP ByM+S ?^n<MX? $5S3D%;F=oNEb9OOhVH6~Lut]|!|)|CDE߰߭spiʏ.{vjʓv>fFh 8[FrS^>;acߐSRlN<.U=C&scyx;·CӠ< |`}[,t?-:᫨fM;kڌk̡\Aa!~kd9^M0ϴkuHb ckyJɺEe^2r\Rmw&({Wla=KHYzۨ(͏wmJ/ʲw${l׉wEdt%)]Y.bbu 4b=7Rjb&Hn'<)2R g\ELG &mݻ$u@a㚈#mJVO<Ǩ_PP+#N uFЊ0 ڵ_A*ɛ,N(K~ zп1"qر\nɪky M΋+F^|EQ }bugu^;5s5y+kFGLs04{CQbfģ&y*v=aO^kt(Ua>^@?p<%jjvHiBc?$WpDvFyi lL3J5S6&WdR~7AZ_ѱ:t țrS9 _ݗQYga%iX:Pb3 : !xƂ cr åF%w&V hPAL0./X݈}.r@'&t,AOݫ]7cDw?fFA9FV-xV~՝A%::5o as}yCAtUrd&/[Зϧ.S[8)A m~p$#s)bx#y̙y 9KT]D;sj zd(9j[8rH]yt}ؾjuLI!D3 8bS/ }z #⨧gAͨgǕwgtM T)د~bmzt >:_Л??k>TEn齋n1qnZǢU;@-hj_x@?cH8}f;aa/Mk< 1ulX+ϥnl/+٨|`lDhjzٻ\HEFBu^έqOAz&478yMfɆqX3s b&KS$Oz'Iwo]*L@fPa*ַsSS?t8)M#V`Jl=nZ5`9 뎢.2ٻpYc+Em=+`>$}M/n60?"Et}hQ6V|Ƥ{>x(]xӗN@r=d66 D5hg{~%ύ'2~fTT1^g\mäz#i /OvO^,ShR[*% ZHy1' Q.(~&7!WyeNO,ᡅ6{Vk5x b$`"+6j=mWa1@Ƌ'ܼ,Mx/#$Co*ZǸQ~Gex8}hvfGpMB 0f-J+R'Ă;lGaxC!\D// L9v l^Qj}餐M'ՋEKd#标ç_paԼJI*O 6U$B6'^:Lns/cV6 66NIrXL2חb < Ӕ4ۼvX9fo<sh vS!y M :YcS 4] z`80wwbQ)0#\2y\(YCa݄yz8θ ]C|.%Ib͵eT~q:k|Z6: eY{ڲJ!*̵*B͍7å}ȷa"+{&Ms% Uф_ Y"ǑtR"f$xEkߘzc`I2kRF(+iZ-Ҟm!,EjyRޚ|S +Rߣ*#AOWw#anh|T qu87U}GbpN~fe\14Υ՚H YGN/dqx~x0D6dj'+qcaW=tDr˶LjuH} g+sS| b;Y׭ -mQ *V-pǖmL7iDx| ,;0eΌ]-.1<^4s-\@;'Sf/5)>O]/Gk8dH$tx1BM;[Ī`ѤX"B\U>2làIPlw@P|'}>a`>Z<`VV2\L_Aݒd魳PÀDAB`HJx]F7BA#2ȑ",?SWl.,c 7I2 8?m~s҈Fg&+]:fEmH}CiyH7(S4߬ѩjSbSL&sd*SWfAo WC8OzVb2 =ɖ'3c2_nf юֵvuҘ ۿf~K{sfȢU" nՉ8ɞg{A'[(4Qimf\ Udl4;uE7[0Øބmr$Uu1ynD0AqDEäɦ*,"ct?RJUJm*e2nE=tLj_*w";-[{MmJώSgk؋RVz9#Ljg)jŠ|`M_SBW/!_"KOUEcBYCaL]lm)a3 +v'VEg4DԲq=1ZgŠEb yȅmɎmѮm>.'Ih.7 :OIVDrÊ/)]DqD/nSj(Hv3ٔk`N 5`"!a<yFOK}KX4ɍ g֏P ozʀQ[ȹD z}ް ?_6C]L+$sfvlP^]lb́UPtg[&II;-U{vhp3o!δWz[vuRvHwhT&"w!g& fǫ- _-(m&/ K/L/uVayfPϟ(YT}Zޱy;!p8W{y 5B{9J^U=E)@I u.goIqc?Qfĉ#Gk5gkyRl_=?1e;D&{q.C/3aiuRO6k5V&Z ??ӌ.'حxʳe ȉms fZS"}j1Rr I)Ϸȣ Db[kyfb\*S 5)0>%h>RbCg[J5Ӛ<^ ^?$B <\)APdN_@_ע*j.k4¨CL烡9XvQx 5יvzIw+3Q1 L#ܪMQ:@9v8ڇ?fN>YW7J}!@>!QK=bARŌ_:l;J\_k3Up[-mҺ&UT{d] KP"Qlüw)geDjfh'u܆mYdDD˹_I%܃uxqKL}ѸTe"8I6 Mb7Oaѓ*>C_gxwl״ԣ:z?V\ko`ڢs.)?v a{n~7a.)K(qѪ ήM#P d|3/r`Ea75M&(`p~RNY6\nL+xWLhLpTv!rc(yWb{-rľ~,`Wm|GG#%KMʩ'ђ@e *SH$78Zq/GKz7΋Z]]/נqЭ~_KD6{Υ 2 k8{miVʓ1n*CT޴c:#hc ^h%)P[=|;V0^6"٨P(hpɳK%%gVY̲Dit}d%cRtCMQU)Er^$GFCިԷW|A"Z3]jKvG)g7Ӳj?\T<6J--N /.kkAL!ڠcq@l9B)9R\L_*JpV03i MQ +I^ķ' FqqhsjEBVl? ]A f@Akf+se9*!8pVc>m,1ժK(dd1H R ϨJ.IYRk .}}@r-h'C,mr z#cO)^32[S(@gx a>A24Q.-1mO&9:_D,,a82t"\orsscZper 3u=rrG=Y : p|ZzJ0QPF~5?/uHy .L05M1JiIc:E@E `=0PV_ĽavuF(vz)b؁]|7e/O^ޟXRAkmSK6q]&k}Jh]͘@v6ƅ9cz6Ob2'.g)43u}]׿qs"z{ CvҤkÂʼn46H7qB;GzhrۣmǸ8 AhOP}Cn0 ߒ7E$|><Mi^09l#BLOAgÊZl-\C<GL}n˧v՚PvK~\~N!e7fרgWS R1T 8+U]Ѐt` ڀ4iH+`#~ ݭL}fXmw=;tܪuҘŋݔjo3tI\3y4(^ŪHX eZ:\.GVM4mLƨAʰ ]j5 Om~8@6FlɴdvJayK̯#X .`52i.<!$eU>[+K滝LD#8ۘ?kR|ݢĖԤ8mD+"xn~Lk 6M}$b6CR5=:kq݁FoBf r*MNJ ,_cJ=ZX r(ObFшxPj*J0X,کCy9a±s#I ~6M&CxJl?sm> 3! |p196s-`mJ44Vy{[bO?uНqSJ\^qH/dw[ Pk( njcԭ8޹QKMkrGJOU-laLL!b %Pz9#' XghPga'`SĒ1)ͫs #~ !|fW&|倮%ާ"tRVڱO+Ciyd[,}aOR2͹ҵL,;] [G@8--#g*XaPl15cҠ";1ľӁJfIO.HE$DD᱅hS43,yAt0*_O15E_4u{MˮuRm0]93HgFA18e<vCk_ M`k6rk(8iBs(dpc\jP>1ߓDK4#@w˳E.l=r?2!8'[uR$@x)4& $`iS ;\ߛ <~?V`6s|kr$9OrN%!,mVY ؃mdZ;0yZoZ\͗I"Q {-N_1;\b 7::vË7GcuoH*& lkvH!\c#hktk}o@-qXэqb]֬Vs/"?6kUv w* pLs\h$tvU#'GIyD q_l{ů`c[Ũ2+cN>qGO\E{0LQξ:QY\ (:z BQ)JcrK~Jxhۥc;tTDG~Atb1 ,&+gU:ytpnl^>jtw,ɗ,@e@FЌJ8Q$p}iiYWƁ,>ʸQ h!:9 yEh6|`'IUyjp 2vri0F,`M^{é~Ώ$/yQe # ~!Zà~*6x? ÄB@`f)[?zzmXeSR_•'y[9]`F%H9д.JƔti"Y.,aucy1FANkWSI=AB,coSM@ع8ih6[@,Èzsb1Θe?~kzB7^͸x:."'ԅ{&Am5bKF(="ɎQaX.4꿦rqh;YS:!FUuѭ~'% =f.{Q߄mN`+\ܝ&_ϐ#YL0~?fu&ZȳIm,1hH[ )VXCn_Ώ[K)0 A)ǎc눶-bankf'oФʏFFEyDLI.߉ZX~op24g'~'M|_;"A)Iݖ;(87q(D/|t<|mΜ:LkZX8Ȱ7hwFwC23f*yjD}Ō'"f}{n仭/Zm`c2'˲={ HaAmf!B,:lfjLIC>.HS+[U:y1 ,|)ZQHhkiMFT1DSUo\5F潝dGQ/ZXSa1UW siܠΫC9k($1Bˈh)d{i#]?{o^l>$M䨮8O*)dv/r -^̇h;UOZ@c6K8;LYc|9`3LWM)ܭu!EGnڍ/3=v=Ar5,$׃Ou)ttycT (8xLQE;635[4u{my>Y'pZ[AC#P*u9u.m3Jmrf&653, ~aISC,4'6JHpV]/FYP;kfK0A-V(zB0|oXvN.z+0^]D0 W[`-K#$WwsHPlLM':- V` BO<P ’jsSނt >y9HqGㆰ#s2r>"rQ7cr k*>F}@lj=fc1i^{N'y ƌ?Ak ,!(ɉWm܎YX Ho$O%WB)rKDY5nDǐilUU(QE_ٝ{ES6 <cGVU-C4Z.s^ !5֘w@fϢWNV|;xa䮓~n!`gP &kىxվiW֖阛=6*ʑvLHEE9(@[C 'u4 _9gOmXnR$Ip_#PǫﲎV7tB}r-|(iUx6&|#'#<˕ F+ݴr.q2Ig%vx ƉVm35u}ʘ: 4E`.en9[jBPS16!X"+GqVwhfԘoi#av-024LQ=+cEYht@" Ik$T {ͼ <_iU}ooCT9 0d4wr4`X0jj};8[hk-85([omIm 3+,#g \Z b;\1 "iNJnJw&⇮\;` h';/n=,Js}%eA+(] 6[t?? +9([XK! D_M@@Ib̫zK;w:<ϻ$sVY7uXY~# :x߽;;6j?މ"̒V#$eK:N;1H>bZmL*6X׹2!Wp@F Y"K[h5RHC4 4+$ݟK3 R0/fcמkc P`V!fIʖaSo^CQk HA2ߢǥIzىCz9y&jƄgcg?@~r 6#ŤwwZÍB]U#Pm'ͪi#" E,eKGU~\򖴍 7HY0\%L6UߥR6khK }?M~m<46jtNa^  Xxה<'bnB}xeb^tC P\.2o8L$B zˌVkQZwVS89d#53:)H Jza;KQMie3 `B86{FJb#egfa?n #|U*AU/#9`Y]=rƊGFHp&2[ưͰCgssѼNb { RWk6vKVb1uuj͢#|#u@lqj򔳪[2ĶW490_{#li=m0AȜ9C6Gnf-\v`n ǜ.Մ6( DV! ؅+Ys-'RO+Jks|@a`q2By>yfL~rBO1b|[:#0`$AZmd.-@D)!8Tqĭmeqqu"ǛHlaG`ddEćjIkltygُ_&ZH=Ar>+u=gr@?->oG$uo24}AS̹AUe8 :#i9&f^yb_#_h'98+89*40o\\?3 1T (>:]M$QcF\[ARg8&PzRMqYE1 / :$ 8\;2~AC۟lUե܉M=h ~䘋h2xWFOO砕P}FdF<8x?ox/qϬB7aRZPnv񂿲4(rnK.T?ǟ Z婊P ΢yWIq?xV6upg^socg5Ff$xIfaD&ʳFCsنwꊂPZ(/ JLt{QQqj1n~t<䂍-_×笘 )^P@y}`0Hwˬ Ze3\ UT3C_RAPdoq`|{8<9U~{2mQ\gQvs!e h{JVɭʞ0/p) CPsy+h(h&H-3t^İ`fFP`c0ciT<;y6h=~{:4OCRQ"ϤKH퓾ў| 7B=*<Ʃ?ap`. ('[` X q'jsIؚ]~Ԟ:=U;yb9gy[K0E5CIJP;PW,g:E^.Sf|Aj}5{!Pĉxxٷ&Wi*o=-?Ӳ1 V8e)C'Fݩdf9x'8KV^+Q~5it f.{^8c2@h1AnH!%4Ofɩ|X^?U wYȵً|QR.iA򾬇h}\j(Ce}޴ѵ`jJ@B0[Õ?fГ?[vcO F)š+Wzp>%!=0&ăϲŬ4#DG{0jL\! @?~cb>hFe7/Z@ogb^Gٿ :[-K>3PH>,bԀ&r'uŐȈ'7plIk(O",?)QzU!`+(RV᱌ lH.,탃Va #$W,S.0܋nF`䷲Mk]rA0E0,U^ #q+k!^[x]J@h*N +bzܱBc(aaL5^PPpvaj~eƀ'ؕs8΅Q:>zxôp{=# g8} #u%@gl-"Q)8.צ%GPSmlF'`'[՘~XQk'e,7<|P:4@/BׯUANT=) o/|a$QXhTAB>y\6fwo ?3tDEGty=sYakVڴFW>e`c,cl`:J/Ɛ2FD ,r ZlA^9ULUfIp/2z<R 5P \1PʅNEϖ*. cP-}SS(࠱7lup-WzaK9UCzbjNQ |׻W\G:Xvqn}E~v5z|3rDG`g}+tb_;V|>ſZځ[Kҷo`ֳٞuXp\^ֳw61g@ jL緵T3Ӕ-ҹzznܕHÙ'8:ĸq'"8lo#&WҖ2Ix H&}>f$$ oQ]]8AGoaxȑ3MC >\h*"~l:+˦>{2*־tu¨1٣I;շ)MUq̎պ,^ʴ$B^ rkn1q#; smӽN뙕R/(2T5hg T3cLBeBAg?M.M VN"t:pi{nAh4٥h?Gi_nt6̶t$a-*YKi" #N-oH~=gvPA7 8B ~ $Qs&D\g:Rk((#$ajcBRփhģ{iwbfDU0-ozurnK}C )Χc'XnWjmkӑ4桯 uMԠ$V{-X{!SV=B>N`}1BߏbpuEs~qF;M o9$uŕѥ~G,~3,=<";'O\aRwB츅?7iL-.r9<ߜjH0f~syB >>CN0~!N hҌe6?6)]cH+H s*_ODtZdJ27]kuv؄`NsqH¢f"k}=arKx ޸9Z(\2 R|auAY TF>]';Nh&Cj vgԣ̥E5Rr9\z9˧`x8R_B\NH @p q@>y jY9w]YV5Yab(c~ d0A/R ,<@dBT-Yb!!rbU_H[v 4Ƭ/C47R?^+30'O&1znZS(~َojP E?*bÀDk iF]VQoغ7q~42džk0j?a}̛ήB' X'v:fl`ndع@-TF_zP}?"Op3Yt#kQm$(dv4ӺOi"X'1 bZ5%SЉ F۰UqkƎ!gO@ =Z(k"(|,:f,жJPKF3o g xB =?@>C.wNXŞ_vK|՜@*gS&D 3$? UN"==oX!kOr7ק [/9n t`$AV*`;L!*:mN-9|Oif* @1{$ DpvTw毭m3 ]{:l{|>eӮHz?4df2vSf>Իe( GX%urPe]ocK` %o" #mϾ'|!UC:Q `Ɩ/`((zoIIh; ^!me=:Rb'B*!9;?ً LB7 .͜Uƛ(U ǦdA<@_z"1Ig[o,L#n/FYť&tJKi;5Ɠ/5?CmH17"HrdDB:B LGKyջ9hbQZ y9w>\hㄾ]ِ/QrN-mb~wK¢uDP˦g7f3xܥtc¬癏"~,qΐQ\%pwT2Ŷg;!ANAym<#كVo$cˡ{l'oIa~YmZyR3\g1pk!Q#CI2$`^q!ygyRv溽t4[p(gqY]~p۲aDz4VMCPEc5-%o7 Vk~ F4=e"S>\yD'`=Ca|Md<%0b^GPjHN\QkҘ(NծnOshxAr:;5.gk:F!@I 82}h7JGh3'bCO&TgIX:PA>o!5dc,*cxc3QtPa2GrZYw8З!uosKli[[2HI_yD?=l**S}j}Bs*_@;s $`['`2=RT W>mu9p;y}J< +Q[g4 #q\γg_Yb~h8.G!S-Ug?_/kƑ^|' >1v ҅p!<1UE>9'R >Jxu2iD0 I5zf>^u@YQ`\LwfcA}@oe,KźY" ȱA:Nؓ p{{+=~W 'g9 ]Mk77TND}~?l Uаef2Swe#೙E7V/_Mк2mFo8E.HY$0˿&^jYDaǞqMO7<4&w/-|qPs]YmX3A-,c+Xb,~8>I#@q0fx/eM?3\j's8w?-(sOG/G7\&Xb&KIa AɗT291ϖ Tul*Z&C=U q,I 7)~"TBO|*{6?'e~jN44o;aB|!D{J)f)@Hl|O+m%S^TJE*4gQ;Ugų6 wAp 2(֌I@)2M'qSaЊ9^I9(zjWflQbw|E`P0 ;O.ŭs^ Qz^Ȅ岌UөY%RrVKrfX۲h vE9 ಸc"f] Ւ $f\Cf4UC,LcANKC'~}g@qx˱h 4vxh.pL+da'B=2}|ߜl Plֽռ X X7AqXyWYOܥ|u7^}[@pXڐԎ!%{Ēt4/_̌J ȳ4;@ U&l!qNkd5C8b+Wƞ7$.E p"?Z;&t%ۃ[KR_;0(/*ƥ-ow&5 Jq( uiV<|7|&CBV\Lphbk RHL6:1fרmaWwbRة t?SqJ><&X u^AW-w"%٨,'>[Fjm7",-K %O˙r%Ӧ'6Vu8zqP^!޷)ZG - PL;$9# ) HܯŎp'ƾq~\vj`3"DM5ϻETmȔ8_,- ybBQ5![+ ĉ*y'rZ]1DLa~v"uF2b$ZJaZ~+g ]H;V(,>HsBGwùv(^Ϊ,AP;2^4G=3R Eji z2Jo\/8籰[,xDչ[ d!dpApr.w]fG{5瘶'O'$7WfVa1VcѕRkY6oӴ}x!7nMos9Dߎ04KQy~V%-SjWCs_Hh\ s\~ozvr 3aAX\ ũtuic> +P+rtZ'%n ~1Ԡ~ #x>9a@ é Gj&0Ns"}d))tE`܅2kaT$L"?ew#/2Ns(E̿s%O4٠i؝S ,kBL̶n+q{U儤^@߷]~g9hݽa7+:m!WT=JZ9n_ә0uV62k2PҜڴfOqȓ;;˜P(ikZB5)9\}ˆɀpH 4#tƼ_ͧev?X J`5^pvP1i]~h?8XL5o8NxcAb9+`mAQf@ٳnXeA#,Vd"_'x"E|SMz?lp#1rDϚu7(Al/nO*ۃ=X׷`,ƨ\mև;Y^NVQdGIdӧ԰gsVG[c.q1[sx2{UÖ9?Q✜VeIe_):uHTi9it2޹DTRg˚A.dXA=ӪNDІJwM4|9ǜ|? X-FIc@R75IqJ{)uBZ}i,>"DVt+$oH࿗ i-qߘp,E/X7wϩ%]"o{ Nl6&/eBmi;ҧF ,}]ݽQ4j_LTx)GG"hy] R|A;!Zanq^fʄmb -xk@0,ofn $z!=9̏_˜C}pkE=o-ھe]!#i]y_}4SZރLR x,p\I]z̴y+_V{b)g8r˂_7fԳ)4I.Zr5dc>R-gQ )U7at?b$djy2Ttϱ@^lR(O|,B8 TTdc( 'Ha}-z؃jF' $۴(N@.S|ȯ-l%V&jhj< pmߟrV+"F˹Q ;InW6~ +{23DÞ:^ZQ,ԗ#>3 ٣*>b@.`cr=K퍨'才[eR|?aWWf"bB֌u[ !V_X@Opc H%P(( 3/E[@Vh\m!ue!ڼ8]OUvKVYxz?t@'%|\א,ex]QĽ : B'ڒ_|ʰz `jc0Ēq.4T[9kFꆓKȄe-7mDͣd!"(-V!n|K@Pjv892/79Kl!5/ͨaIP[Qw3~*[Z.pB칂3vGbNz~=1UkTtR59c<_sf W?"oSCqP!Ӹ ^~s5iv9 -BS.iI]hV ic@5WQҹ^rÚ,BFnfٸ Hz])fynL1}V[bXijv#$ׇJ5ڀ6x7ltV ,uJW~5췬E6 GC9;"{p n.A~ЅYFPn (*OU73#f[|Ibǝ߅WL1}AGZ}dDWsˇ7A6 pZ?wY+צ4s_3Y@JfkQ_;-L;WZP(*j@'md:Go /]:t*!ZdDq~L d2v慮vu]R2DgqP}zYt=̔0*kHmJA|b=p5LK ߮Iё4@(. =K”xHӕ4 ^jێY)jcŘ".֔SHu=mxvݽMҨ\,&E1#|`z}2d;aٻ!Zdg kxsڏEc0YS)6.aE`!]u ~㠐Ũu"+̔iyX ') 4Z.IkFynO&~Ε"sN75|,;e=Z=*X~3Ѫz&Xd:ذgŲS* +֎4E ^T'3$e>.%<j;ySSB') ɳSDd%"-#XZrf{i,)R9ܐ >H޲K2Gs'7kS)wh=8EƉ66Y]QB9}qBj9Bp# sP?y0LQRڑ/x{ ^ %Lhg>ٗcm!\pL 4ğb[ڽCQvL)fAHq i"oF#XɘkH&]Nsbqq|h9H~ (Z޹NߩK,)z#l?<4ٝ ї=hnGi @ sCV ѩMz{=d! PyJ 9'ZОugov~_p)w.E߶:cޗ:&]k,d̸c qʶAMW:\iђqgRԎIwbMr]4dUoW |ir\α<*їgCR=8(*EO?A(-\fWfF6A .Wy|v{kkL9Rg|Wx`sTp3 J@qc9b(FC (Ҋרf:?5Frv[™y_J zVEpiLvcVCs-&?ޒrN;@;6DO䵥]q+DvH=nWQ|&@Xp~T<4S>2CM] ;;n?)1}yY\Ϛ597EpTda];mq\|)l@0b䘩^NX&nF[2ϖl44upoإ&-8#spD$n6%Etz9Y4O BB&\t0 ULR<>C dR ;z;~`6[ ژ^TGof΀/ 6q?ە̜9j!K;wC:%#HB^tɄ~i(k]Led܁<ݐx)|LL@C+_^D쒁K{HR砯1AK]ӄ— W<&@=~QjL6YQCT ʸ ( dzсu[yD9 $.plTr`c[._:a:_DGDŽ^7 퉳rEs$-h - Z`Jᤫ5 )#lZYtױPWZ3zZprf+:Jk#;-FCP*c#6jEӷ1R6&~uhp#kt|`4yY5:pH8wNlCr24=f~1El]|;.IuUքǖFND5Xhj_fx M^M* + ZrErȞf?~FsaUH3r1b]pɴ6JMe{72_}W颠9k*C y^2~znh+RhE|[U ' ldksNDJXv_;qT%}`Gre98uxG^PJLdx37^r=@vI۠ ~tPG@6S@jɔ>$$f+=,wL1-s!=mI9UC76m&KI$gj "tIFaI6ߗ*';rD"EB@}UDK\\Kw:Rt`vl&e)u^Yy_MJS4zrIh|:1*mRRj,Ze  |ٽF}fel{t IM©طC: #oc$BlScA] %e!ɷUٛ$Mgvƿgpm6.9IuƐ>{ ~+jXޱmwgrj{޾NDR0!L%ؕϘ"8vMB.NB|7YNWЖq3Hhf4QҞwu+ZM*MeArP %[7H8͠ M z}HUx'd IIuIx ȩݽm\ j [ԞH*UjX5;Mԇ݁6qv-[hInBY;pIP>3 хcQa.F198dGM wwiACYqcvGR֘L91ԎƋH7keռnozx&D$#Nkzr%@MVrė[bc:VjG-}6x~*9]A qэ@$&e^w0Qx #qt- s:MolT̞Aedel^TaHCZ]Dx0#b+%]WULI;BPcE#]n$4^*RaѾc7lr3?4Xi?Y.bت~XCg կM>tƮBO2``Iim&7X7 G_ίsV xw٫U/r, `NCM( E OG ݛ{DnMv =y"d@@z_USPc犯eSK؏=W4jO #N9xf8WdgN΀8As-)8>OHgXH)>T:ҬQB~[YPbj)ӕ)ggcA͠q{Ķfڛgt4\NXO BAQ}D+*,f'`r}V聥+d1?t 2CbzQ -!|es_yZ9"Q7JO~yJC0-&8(zFjK _u͓Tю_!Dϓ}=4 J}7|eѰy 7oLa݊CT+ "m)3p$~[\~A>,jpY8$ ;$tY[H;>0 MFjܒcz:/W'8;!\>&@?zd77QW/ p&hD5}WIGkXçl FU>MeFO"90: 2b?|IεΚc x!L~]uZL0ȩ t^ތ6fp\sK9 V; Pn{H﫛#s XRdtFѢ5" N. O(!mW=8Nd<;LȟOq4o)G 6Esz}+6I>ռn!`Bڢ_qpowU Z=TO;v8TXT_Q\+||<7O䭶6e~ !3ۆH;[a$w8)>o=.wF.agT_,grZJEf}򈊠CzAҧ\XՈ5(q)irWA&4E\frV _؝cWb;)mڹAd$ۮ8ptk&ԙ~g=cbւs".ux^EɄz1<{;q _mr1TT; cSɐ7lL|[ BF-+}L (` Z\Y_CF/l6}A0["Zѧ_3]l@TA}{9TΔt7εok]` x\R q-.a?cyYG@k>Qls-I3bk%D(͙e)RCKZٓUUђQ[xwI3I G_dO` H$%j.)@z:ܧNNGn OtE+nF@4'>WV|t^gmA?݆HsNbHMGoE"zV'3oK 'rD770$o'Jj l Ҝ4#$Al*#<أUz6ȩE-NP €Uf+eBuK1oדLzx^e 7Y55O>i-sgbϐd5McQ*þ,j>_CTŬƫR- M(~S oN>ÑlNQeA-.”f$^a4̐DH;K`>nQRe KsqD2a怛o47%(|.CDI j[\d3œ);eB^ӏt,S n%x`:]Io@Q=@K#- ژ\W#8Zǹxqs6l*  QoJwoЅS#GlL[ r]$F&OÝ,BBmm˸ܦ3ZEU0'2`u݉F Kzʋ>\8kZ]ri5/E1Z6[.6B]ǩU$5gp 7 !D\I'11|Ӭ#Uݡ5)5J" i3yꬄ!}l.1c 9CyJ·7lf𒨹-m kՌ7h]&y<5U-'16wS+L}xm"k|.-6>AؔQǜ}:2:h̘x4Vk\R!wܲ_=wX@ݽLABdL댦$$yǤyn ȞLq&'7  ja <}Cھ.וvE=F^5H=W}/غRdLL`?(&Y6wVx":1~J(մsWN{kjMv+ޢLo^.pȕMscm>)/눻ګn4Cr]6JhfK@^_Vlh4 7d\y^{i]x~mA|_Н H uj˚i`;UxH!-d:.s[-X.FfF4#5ߏ OTԽvDee 8D@ rbR98Ya;6i;ZQ`9K1 a:1t^N̊%Hv&-BEco_Qa5\K dUnb{vV~:O H]\Nӿ& H,hFf56Rr dWzP_XtXkߒd񷭕¾|k .%{C@qDġzpPI[gyo\qszj@۲/"/{z};hnj]klm7_ 7} 1^sH!VArB(_ŐVvZ5mb d1pc${&HO E~)B &]?;frdT8l r uIo`m;8ױB"8-6~0TYՕx+A,گP9`i%/7Forfk/;ٙvAzL/&L}H\J-9J͠Y3,p򹯔5<ܛd%Y^UEgQc%+Jbȼ(m 0d@xFˠYh@Q[AĮ/Us[rœ1!i[l*js-g!~Nh6ߑ Hu&HO-N|ƕw$r^1rNRhAMd[ä1dbг/f@-I">@fsQ.3]*.m=Ѕc%=ۆ`op\Fflyw2M\_hMȂtvCҽ:f/8Rv*`t[o3gn$n8Lt^!iܫZfk\ :e ӝFJ#;L}(hro,b `REhb>Uy?Jw ~@ޭU IgG^,* _ E"nCj=oJ=]J1,Fz_\h*Su@_0$8"䐠 Yb ؕL+7J&9~ޫӑ h۝d4oWk1ms'L|kB93ubv(J|V 5bS5eqrl^_Yd)ZP>{Q("\ّ{g׊/̿L_FXt#i%ĞdyQh Ry^P #t5VL¢\򌫵y7(0¶G"á]Gm*V@?E %N},x0m^Mlf,$[>~iجĞfư VN]!axDiἐ;Ж-HKj̒E ^</6Jgk!plLY8Q%84. ٧0H&zC%dqSRj -v+1e$sE(\MÕ5+a橏1,&݀ 6Vc`8V$|tLūQNS-M\jTnGVt>h`?0V 3=u`H-awN ˔!T/# AkPJQV˙YĆRLIψ4:9,nT0y&ᕔk yӴ O+cį7iLA2s#r1Um\b)Gu̥8裴=Y{t+Kٸʏ>++qsO@d ޢNj9*n ;\Nນ2,zboЗ\7t/]/B.&)Udbm.GPKOKLֱjl^-dzhn5շw Lp8ђ/$+ϝoG0Ni33")'tigHŮrءqW5\8̠N..<c\j0@N\V;,NǓҘ.] LhoNN58%(Xޟ8G4ӷu2m&zXg#>=>c5C1Wfxs 5(==ry!T&WD5 e 荀]YfW GԆWܶV)R[< #]i<@_ v.%q& A{ӄ28jƓ zp.1?XZ#iHU]XU>fg1oR=ӍSXcp +eMǸ_Κ}BfYA&XtfKvN-kyV0#MЫ<7`bxE_pE $|rk DB֤2"bЦՕmyg7(̽ӭL0Dևn^ZUdT$_;Fuh]G1~7jNУҭ \XܣrT۟mLZr{tl*ǫdNuCTokI$ X<М@Na54Xφ/B2=׫DWj-" 616CK6 , 3T>?v6߂%QMyiX5b/ek H3;`|s |܅P,qDeǯTY: ]K0/CAaC xYlv$Y8!R$y[!a dmN xLJs+YŎG+LWfz]C@ۼ\.ARv6ؑM_bg~!iN/eFYX)RL:8SN83'۾'ɥ@ذaukZG>,SS;0Emூw qPؼ P̤Dfi/QvriGz #U/+&&-jh_LƹVoѓ /?xR:(8UL6?75E/g.ݜ"5R*9_} 'iɊǾ'VS8(ɺy}+dܷy Чs1]/bRj{kGDDt^suc@yH5FP/4V|FWxx{s! =ߏEsN_%@-%,IM֋;Cׅ)hNz6n®]Ш.X|_b3>zJ=>v@&!na_0Vxրr@ ĩ g *5dmY#:y gq6'cb_"bKgVOtJ:ȍ@خ>`>"]YɃun/6q'k ϫsܦ Òyw |hgݟoYպG9UI{Y lTFv#c5zIJJ$pcL;|o 9kE@5~$0wH&/"A:. B}s{Masx@e 3'EpEk:q=0u0U'NUB"c|b;}`+=QŲ*˳b\ T:\r쿫jV*|K`0tRo`LIΜ7zoJ!c <ЍΧ՛}Лs0>OgdTDΝUEF{-BIr S듪-b84,.Х=+8m2׋y=*^(f16vS5&>S4FpٶS_jqh)ghS3D1X,^7mF kT7l=m`-|fYSlJnߔƕ Yq;˶bUK^yj6u%VRk4ktYG2#tKҼrAS <6{wb;;Un |al2R{q4d[?\Z2 DJwpDTrE%s_HX}p?(y2Pa~AEM,gJ\XO?7E:7\ xQJUtTUIS ~N܈{VH DXA'"A)yw!ۆJݸ+MyquI lyɘbsOS]E86qRl8u0 ے 9SҊcHeM*cY1VNDsl>3#f9CwӵIα N:H+t'>I +Jq4se4^=uw3Ϙ;FׁE()f9IK[Φk|bA^D4]+3^[8o(4 \QBw%glL(gqi=r2,ݬ-=?/Tn=trtaPglvj3[*?I1.3, $ Oԁyjb Qr c2T6GфZQ l+PLNʠؠ>u= ͢MԭFf{D2Э,Oa:6J&#qPe_"Kb.hL.c{jC΁X-cufBUaM_39- L__4~')_OBF kbvAo tas5Iv}tf̯~g\a41HR gCF_ldlvmTSԋ#ȢPg8Yg?|x/BTe<@E;׀f8ߙ~JkESJI-~CHN"MJn#<|X=I$hSG6ҋ Xn1oTS0І-6U{EM.eh رl t<4!d; ܊m ^,-cT*ȿ }}g"KZp|;Gʙڀ >5v{BE-dIv24f26C "Cx[g\2 |=&ؤ{d@<G6|"E&#|5ǘ#"}KM6I'Sk `ރcw=JTYھw kD !R?wŔ,NXc^\%wm.G31\g`n,㖐&@dB(͔SZ'e Z"ވA#Roz ,kij9kFN6ոS`6U%ɏe^/]CO1mc!ai*_wmEy=N $7|R9;:2IآSD>?!z:kbwخYr6-w1=Ϥ,~T̐/S& ?׺wgAʊ'B,&F}D\[Or%D <\ X~ / =I"2Rކ! Xk KZF~q}Mb;ϲ 8?'#NMf(^Дt ,4.G4)QJO1Q JG.],<{8\>F A+UE+I%Mp[zk(+-%Z33/<3)`Ik!̛\T.Nk=Y>\\YVS⧟Ƚi;F@b.b/%Nh./bPhZ{L${܇mZf~YJ.OfUuQbB7P=ٓYu1 vAgfƶ= {7?p(>![m$DAc(:Q]FDՆ}v{ u{S1) `\]pn;k@ 2eA3("}Xb 3.pteS*ʒw]ᢚ\ (9YTwS# 1e$Dt@m4(um+*0@g}%1*I#WÌW@-)*ᝂ`tVL+Umx KUە2bh4|f] im7m`vg`6$i#G:?@JF@:Or< ӀT[.n?~TS\ds1 *ݳaFOJ gʫ8^ Hf ףѐ:mhHPAmVǼ{0l4@#%[5c 8 fq.y}Ύ&I)ӿ27,!c4cLFeV0_KU~⻬]/U@=V~EuAȰS_*r,f>KIQ+1'8ȨI aeР{E \!"/UM&[LȞkJjk]Ɂ@ )i9;hE:k/+ Eɭ,>a c"xq; cCG=MOJ>-oIFE<ˠ_pm?^w/IQ a :~X8^mZrO+MP(xH33?4 X,)֛!I%T; I{/hUuف{ 9Md5rEc4{;jcˋ\z,ݲr~pR6@VXV-\ѥ6Ґ1&H&9Zֶ,Ipzj0uȠ_Ÿ vZgc\%)ȇF-g<,b洼;$U]?Q6A9 GnGFJXLCZw2Yey2ڹ'NIegJUmT^OZV|FǔN&%5ؔD 2r}&=f^t:y(؏8EꉧK(n.[[]U.FdIg+ta}6IR#~ = CI 9&q5 2r./W~XӲ'IB;ɇYai 2~(kJ@Li!^n}͐YS\A9G1kz)`Y';.'_mӺ.|61f2lyʼnl7:-?ID&zTOݩilj\>ORmĿԄ桒JU5I{F+zש$iP$u/)uK^X2 XIF0]xZ^vz/ij<^v S8mHQ*{ƌ̊y/:PPz}@k*7]5FK4X{S`~(/mh!W4RL?|kf{~w&gZz!T 8O^ͼj|8oKA<}LQ% 4Vp^H2ODWLWM,T7gz`JD2zȼM.S`KĹ~7: p`mUqLy4<=kGCr/n[Z0YUKEƮ3Л\xFuQo[!*wrعFsC!| ؇ИRlꊰ0urK}7hʭ1;{tNKȉtu$4=bBAcyDn] Ҏq5+. .0RR+g&yk")n?Cf(Ok`BǗ2Q̙l~cGL.îB|&/ ΃Y.IAfBES W=6-QX*^ŷgӽckHF{( K _a?0#3A4Cyy"$? @Ǘ BKmE W P/ؐHÕouy8k1I|Ѥ]QStv nV"Z?BTDA\x|slG_vwu< ڸne2oD.Y:V@6EYRHY/R(Q -{Ϩ3d۰ue{df!PxŴCY|^˹v%,1;YDU]+(L. .'GOt;su?lD! +Q*– .,RX*<xObxy'HRx3AQ'p9g=U ɭ/iTxiep#Aܽ9c3bfceq01Jh[]w*qvLvmddv84JޞfuED|.Ĥpրb)>]IEfz~ Cxu{[ nYVs>@;e~2ѦNemVL˳\9K؅A#`@RD`/m*3H .,_.iu8ϰ>_z$J6=9Om:~/ $̪Mm:[9 jN7b ho- (,xq-]GSgn]Μ ~Ǚ.I|.Qێ>@1=_*ѹܜKA:n/hmfY!=<6(A. B)V+HA}dڣډweđo,j"S]'a%!-(QI֌>[&&2sJQo=[GM/H{b莛HNoaX(:N867NKy\H&y[άmBii8)`&hh1:8vS̔*ݺϲY8INM3c>J60YBfD*սSF0n[QxcrG[{LDt[T(ei/ _ͼ>͚r ^ ȷ9jKJ?`/hqNG0\/kHdfiEQ[Qxpc&)qPrd,)q螬}vC$/##Z9C}|_٨Y@vK\Gl,vVb$ lN8GDc>针(G{l(=j: 8\p40Lr) m{5(G&Ә5c W%T*}_ڲcDŽq7K0IS;Ь lz0],G~>\b`G>7L˸\8T'$\/ӋstJ$49a% \g'hQW<,HY~N8 'x潠Enl@k^O {u#pfI#n3獏c@4e˪ߦ%՞CUkSE%wYe5{ތp N/O'S딹Y0рE @PtNp{%|_I1T2i1X 7ryʱQ=^HmfAUmOğFBGULqNxY kߟ({ʘQ{]ȩqQqb>_@\Ez$GBe0-922vd6W0 f} u Xt5ni": Bǒbwګ3-vG| k]RW$͗NES Rv!< Q.+37R(^2?ni=)$ b$hW͚px{?ddQK\v@B#AGBvT\XL|"zv'*L5#oFO"vC8,0=jP;hPP~. # Kx3@y `jm Q/iSdzPψ1g׬ป5삞EqG&`-Ihr`!^76bt%`M&ԛ0;ȜsȢHMX- .Aqf/,fiN@k *]x^ 9@ZqtߞHG5@:WD*&#!Xaa8+&$j_[,CjA5JެL0^N].:'3aZ8`Ҭ# CO ی̅R^J%ڭ=Lvdh6!-NKF#Hd-,7~шOZr c;٢V` Z+|c"`p1>Pd9!rNf䁀 dK\epNerP'sUc^SO_ `wF>cf򑕘Ư{M ~^4Hݯ EH)Ԑ$gAdKewd=&g@ ,?]Ʊ&3}3APg<;]' "DhKZ\>@*wYLF?dnh]KNjFo*-!) d.p#Msِ;v?UYu@-B2S%]g[hkHJ6H/Q#ț;lۑݔ0y(2eA.oW۪|m<跺ԣef d2$4Үk\_^Y}TnY\?x17w5ҐzN6NQ q^,`(l~ e;Pv`* ͕4B ęŧEvrY>6_9 mT/ewk~r#-x[;V2t"tgftU,3oU/xOԯf7OkqZK-ڻͶ!Bg> o| T,:# >(\bNQ@9i|Nx/;_Fe`^"D(;QW-L܎m0}P#.M@fL?t>fkxoukfŖA*XKlȦ.\auOmeBYV=V4/V=t  ꇫ_Z|zq#&Un_.! q&0v+EϕI<-ȄDW5@C/tQ޾)b"܊:mj/^Qo @; '3onn-~-y6:&egZe1X̞$sY坒g!;XF-A{Z12p.D]V\tCש_}RZz*,%nW#l(4HHQCDs^> fnxBala-I"2JݸjNھ)q(~%ҹc _dh[;a5D(bJ~2S(>F_T׍h o]ͨ/!RhLTN.nR -˂Lhnџ%ԄC̖Iu@ gqXj]~Èba񇏼 ,F׺Xň(\үl\@>1,bc]_{sDhna_>ZęoL]FW<2',`ovAR(˦f=/rf,7.s  ;jiS&B\tң#jRHb># >Y˥tsޔ oiF+SA?| c(#7sZPld3^74}{Y$4|fyLӁӝ! K=yJ|cdTab7f%z)GpZ.ʘߘWeYr'y,@=-"kMHn6pl~G׫B:E.صGBر& A%^S7x "Bi;-Vd.8+FEˮ>.owsF]߃뮻Rx_j$g,ֺ%:;RC˭tjCg،?XPD•A0p7:gMgl+,]te-7eS^%W\AxDW`rRVgexX3]e.Cqۆ"1Ctϒ&C8 KL傿JݫOX&N7m^ٜ#=$Ng}Q1GF#PĹn;},㼤ud6vW>ŸP 5mk(d"y m~,cT5G mQQZlH)R?ձD(!{0 D[\6T_A` 4,HIjpL{|eF;w(] D16443ȑ< •@1qɩ |hsRED\'b z?1hRڛ:-ޑ24|;4Їiζxow);WI3\狲֗ppK.h"#,s+th!UCTͤ;I.XD;42ӛs}5Qӆ10F^ 1(BR.,T|#`+CaM!  TJ/ggE?,0DžGz o5>[߮h,7] оXƷކ^rȚo )gMc79)JHa+T8c#G? l ۛq];Üě9CY '_c&+FjM;`Og[:#JR#8:iFLV:m4#O,|1ij*"F_;HXv^4gL8Uzmk/y&ôa0܅hso/ZHmN*?!_ L~BjBtӄ%1 ;h!K7bھ9stVӹ6I>=iTi#31/ ?A\ ]kdH419ԫwLCo=}ej}+._Eo KUzG%%Ak Сlɛ'izd&SF>bZҌG Ԙ.HX8@ eh\hڦbZcuZ++pڝuFhA5d+EgivՆFr^5²ݐAco7w;e]g,r` IOp +Pqao{WaF A)yL=丳"_ΐIOn\piHp6z%IW%"#v3]F!eb1ѥO0c'HRZP;mcrX?rhʞ@ oq JX*{?A6TYtYsD3[\E!2\P0uzkΉh%*H$Gg:B~7(sBWr ڑn0hH9ۃ.\fHOe~P{0ש^'^,βІ~S%q]5o7@TYe})NMuOs:|M?E/a)D_(Gݫz %ǚoMsXL \gf  _M$@Z/柾u!G^rFm_&Jv;׼&G+̵V>̯33i؃&k`ȭ@UpC-i eY-)׸ 166ΓmL@ %hZx3dzH@ޙq> %[$vEڹIW\I%n|.G<NJn*M@pCQT+,[F AdowU#[?j~5Vʾ6mcˀl9"n1Dwb,>m'"[#75Tqzl7><YS(RԎ-4;w㑞b'*yEP|Kl6qo 3]"Dex:BjәA)0Xr[ /|[ oj !5s]NSΙV}';Q%4Q~<-ݧI1WrGQht-v[RICPGUD(Cmv&.pA)d; XM:m ;jd% "qM ؝Gm@Оݐ V.⃧/J@թCLVN$VvE2Yބ$ JÒJ>NUVx{&u`"qڛ![EJT߭KooHEE t@.1E~~0\xGv%zg%NLgn{mu OÌ'N`q@<>dlHecEzNaiM E%bG .lSJ[nUSbQ a!1O?b𺈖__@@I[ #0{ s~\^%/F>6}2ûHumlN{xmRq;a:û0)O:N(mPnDR115ӠCR$*4HL%eo 2OxV}‘anltnv kQHBg:=]9eK5)HA l݄:<&j\:릆~q%" 6OQ[_Pϓ.|VjJ^C m Lb2FVzeY>蠙7NI=0c9oС9(˘Kwo+Y>vLj0h! */fJkԊ iXC#9'uS />2ۄ4: F)k61:0qْغvqmj'.~R3,ݒ-Utx\jn'HrTVŅkMm%ɹ=⇿T-D2&2v8HދY^_adw&bd}"bVLn(/OU5#@*~eO u ^AẄfӛ68L>P^㭆sYhRQ6uCH.\$ED:Y\q?UQObK }_4` e'|!4.햜69R0ﱮރd`xQ9:薂,[.j{}PnKT[RUSelyz-ɍγ [rr0 N )*T=_Hp_AE k,c{;6JϲkF&7wMP/;]-ڍ %'%+\m}lӥDTLխ5tBۓ~m+ԯ 堽AρTެCGy~hDjMHrVVV\ 0~yg,:) rڴעc>@[ÀD [9wZ^Aa{VI+G1YX$}Y|GrS1Q; S;OT䘞SG(`;4JnږR>r&RK½Q~o𙺥xiK%Sυxx&r#!W/ĊoEuvdDRՊ>㈯رlf |%O$l/rڞМ0+E0 -q^W+.GGoe "bCԟ6v7ug_$jz5bn&wk$Қtɦd\kBub{gIYrZ!fPSe~9gӼO8O=ҵeZϥ`[T6my/~ka&ۆ}= ;`Oy|6J-e'4fbjцt+bKH6A@7\nzM%mX݀v:?}u_{\q^XO]*[/Xv%L3N48ŻD_,E&,9iWS ; 3Viˊ%@[53 j]ٍDǡ>,އJwINq YtgDpƿ<SM A)k-aC _аYt =~+è]nA?;5W@CX4Sca d?o,@7ڵcԡ*,}8G,,+̾PQp#ШF;+1){9VZ~\Fd 6TXP?"VX=k !r1l>PeÄCSTbc̎_;/nN/}&)M{=@F1a^YD,oո*OD8]M3Eo!Yµ^B 7}M$ c{HLѝ{'ן[^ m[ề/'q֔ qj~XFhfEzk~%^*ل /fXzj8|qG'נZxVYؕjTjlp,D[oG]џ'+ò%ēA>gdx۹CFΏ{WDZN茙yav#. %i>r)m?f6~c,2=̜ 'P$1En ʗ"?,Qъ#ࣺ|'ȡ$X5@hإsŶaaPB ia_klh-ytɽm-52![=3:7sxLK0ΥsqQQu 5Vœ@C#"sJ ݚD,^@n*FD`OdҘBQuZfPu{-PB~Q4Db6R$s&(Kz0zX#B|IluS8nلciK -n''7" `t ]FTewͰ\*Y>|pЉymJfB'~*^Xe WCg '9ޞ>C4eXT vMc=VAFs$ΰ|Di8dKnHX&6<{i$&pWk*HL6v$xjA$ߐlM!oQD4Qg8LOY'6ו-!DBwfFGњtJ{v/Hq6zM-3'ݞ#i ̄eǀ5n,K ~^n9M-%͘Q#z (Oۃ]U*k&*W>V9\k&^3rɽ%SN9+`ܺ~ ?vNf"!TeV@~#W!኱.uT1o xoŦ!OfKa Eͅ,0ߏVHPwI7(URI?C/{T(e;8iZvXeX#ÿ4Vb]U=rJ$0вALw;>xf+ s~^D9 O)[cnv(ܩxh6C8p34MY\Z`L nG@V(} nwo蘶|53T&1@h>%oz1~A5*~i6ŌZumL7ϳ\&Ut7M"iJ<n#~Q#`Z:܀ac yN)s\(f9Y&:I0JdnY9 kGa^Yvu5 gn]"5ΈnݝEL]4 8B Kā3̔)88WSonڢT:y(kKJ3bl2/TI X^REֵmT3WЀ5xߎ2oQ冝0(R_ԇh\5Qwj| .aIg&fD_codN{ |XI) EO!qՕH [},H f^S\H:<dJ;ױ88cDqVWiH!U$Aw&n;VFsQqZ40f"\Hy>a+.@4M%?̃h cM 76̊+Qd>\fBlP8]y+}gvQ+лc¡+/ 4eKIsy-5×|΄8]XE] \R 雡* ѽk;ETt:#IF9T=3pTQC7,(Р0'[8<5 ߭7s Lg7jYE4]eoDϳ!) ]k1"Ǵ$Z8os_&H#+( GUL` %lUz[Ri=^7LdhL?W4TzBqb_1ʉe[4I|c- V!GޒP`͘ eYnLb4#zv+7دu_{l;rt%^ŧ%>pc&]jE;;׾"! FdBQ g~޽_o>;} ir?P R=h1(-w s2^ ;%zYU}&CFS:aB SQG 6}>/x !6{e ONM-g0!F 30>̶?=@ }U Ut;B]D1mB妱űE ;uR*stX2C˳ |#uv[K|$$h+r= ¹p`Sz"s!32W7ŁG"OgG~!NiT=QO[\aیG;VaWv\,<|Gґ]I{m c y7J6%p T?VS"o q>Kkx\2 3aZGtЁGm\A'4ntzU,8ԤZ?%2K;?Yj Hu9CW}vݚy܏b@a}8p>Jj/Œ:]siQ[a^\UW,kS[a>mDbr([=9>{g 4y*o[gPSk2N?A+cTƵlq rl' cn0xDbѷKs0y6|yf)(^wm g?DfHӺě9 5,Lm" vFub0OHS͎} S ݹb^񼕎'^y'H 7E:PՒ;N!~u$THob?jT[H@ }Cam?`z8pHwgjes 5te{RM n*knBfٌٛď_ͪtaj̹qd 0svvnaQM 驳Hnؔ0[hi12eP)@ =_20+'/ ԃq^ VWr(.~ +큑qPj͆^α2Zjį\Trjk݀pm Ov-{; +suJʽ]rJUia}.va6|*{>)WA u_!Hi5HkV>66+y1 4qYd2Z{C`1g€:\Z;ON 7]ڱ v'Og:o,{KRj)H;(Ebp쾔i&ٳV/[׆D6&^kB5 BEv-O3'b=dsI` nV#^ T%F;[b1G5[L$ˍuj%BL~Hf i];Z vA!\d/A=qvhzTKI/޴O s+>j`6(P/H5U픂zw۳Aٷ
Y*9l3Tp~D@d?~ݯiZl >?BhL lG_C]좖xyb# K9i@@*yI)͑~KTn2={F))bV[y_~ uv()kn0D m nH٣M]}.8ߘ7&f?{$  /BZHM֘D]#cdٮG|S{%kn{l__mMF~9P }UCrZҳD!;݋BbK{0lB*?O53=tjE-WJvmںwF`''fRhMsַ 澍et%PΒ +axpQ6 -GM=O@|Yv†6/u$vĵr3 &bs)tA:ň N_~U- if܂ZQ\6Q7Q< O#miI(B:D*b'َJ% 8o5>3'įo4Ðy%UCUJޜdq)aRW*k`MUh3}]J$#$W,>& tI*.n*],$ޒbrtfS麹Τſ(dLy\nÇCqy͊ߟG(K% MUhc(Og<1,JB98Dʹ K7ƈs 3Q*ؿmm;݋c{?a7"Hqnag@ܸJcv=RARԮK- k < |Yjf]#k9|rױ%')Ibګiu( y*'Ҩ^)Z֌4cAA^~mȊnaJ+o ;HMH9 G [zv8Y i'.oӴ*͎t;wNbjH06*>[) hyhexr͛CMnԥ9ʒQ덫==[p]pCM)'j>зV2{ !4>O͢F^$HA5 \m˚!!9)MŇUV:뉘žre1Ģ) [ln8vձ@&Uj8I/5HOefRb@[y^c'/ &]SdC"K]*\{8`AcPkkblE:8ļHi< 3Wr:)}0f_&HGBwWsVU9۔!Ս3`mZ&[΍j  Oz1,υĬ(TqйS ,jw.'nk$iw $ґocA-%?7hɗ#2&=ouB;nHJXw.bڒHo!S==LjhIN }gClZfk_&o #ӈHw0Z;O<yn/7fJ8F@&s`<Lećl wZâ#DE,|`,*n\*5DQ"Ѐ'7,^oztQ8o.YedE(NRO )uLS)e(M{k4E\޽.Uk.]S*>xU_ߚߔ5lnf;2 4|nf"oI-HH/6-g^C﫹CSŽ>dD_yq\uS6`rq9͏t=ũ?lw<ד$ ^9-8.Y19#V#uX+hs xc/kRݫ |,>(#P)F7^a?(cDB5 z=|ե%+'o\녋.75WFU D\h5X]3[)spzU^mlטtNmh[UҜ%( `( ź wyT+^*SvWQLyO#+Zѩ@=QI(_7qD|,N{u^rprVmV nhЭ$:=;̄ljRBqL sݣjY2`NOcbG a PX8/i;A7ՉLTHVEm "pKZrۤJNqH]cY5/fݕ͡5 71~X:6LͲ(w|]Q @? "ԐTH(l΋n5Aw"}R^>֢:6޼>KW.'}403LREθ8jJ_HȠf\&qAaՈ~؀T"C=FoRmj%^"3xUcZLxY2z;{PO'p*A;!UP b2hO~QuMd,#`쎼yp3kLAǻL#`Āu167EcjKfy38'-, /Ky"#˹"faL($?ҙ{uԂ8&D </-"K;uiE;WP=g Vyz=rŐ2ĉWTEQ2(@k.zd*20Qc>+,mYQċ'_8t& 1Xg[cQZfG\DyoyO9D #q.@|xOz;\Yd UyzhwMR,x odI>OгnbM.wUxzҤyC_}hpOuov{p26\S f:H擓BƳ`s''"XJk}`&N3D!n*8;prXJlKUQسj[s~dRg[@aSy_v#A\OCyYT ؁"Zas3;<)K(Y o /o-^7g0;V`I.ONXR% [Q]Y5EKf;-QfG.x06}~EFbٽ$6Wh߄E[GQe^t,Y{aº 6'ys$`|?4)ˏw}!9 <25mXcRT3֯LaZlQPKLQK"S)f8` b2Ml;U>S8JjvH8N=uQyQ`u׭h 0@6\rUmV(b74WOS1L K1cS=/|Qx֍X4h JG/zhenVտE- G3HT j|=kM`j9uTN965(+O ~qTҌ}?M;JLwM"|׭[/Eػ觺(9/IVlPGo|r#q[Vڝb;WL_Jyܙ,BO䞏$RqZ-,4qyRFn-&~glCQhM=|C`ΥIuZpcWcg20Wp]zܳNdvSE@ Ǐ E@6''0<˂}U`5 o?=&`UƱNwR㹄 eND\]*P;\(@r|WW6}k՛.E} 8+%LO%`ӉޥK =I~  n˶՚3lRaSķ. *p14 'eAET!5GyQ [Ԕ%H 9k {& )pV09<jG^l2ˀ9m wt1%wuU[d HX Ϻmfkh1UsS c 7'\[csE1 }nj+&kBaUEx1Ve6/}g߃`\︍󧌚x&@ }*Nڂ^d7k@'V( Ayi& Z]p'p$A|҉I:\OٯXn? 8kvu7xT7UIVkvt#"RkwRr.k=$^zj@JO= ]!yE+voj"6FO "c7Qg=!2}{ Т8+cdV[.S.$q@gJ󤓅]L׶i^ )81]U$2@j9ԙ,)# Kq :$J^?97-FSe:q#Hڒ߮ͭDQ :P@Mg8xW5| )Jů%I*3b~)/"qa ϊ^iV,TdX.փ5s @uX_cRML*2 @ɥP7(J~DO,IOԞ 3#Cg!l!$o𓐔Mђ{5e3ݮ:?MF]LS&-r^k@[x2N`ٗIv?D>u?y)l{.1"-UVmDKT"-pY o! J/ht| :6LEA.ߚȜb!ȣ#˦K"~lXes^n\`GA399bPCj=tLz1A2"-' 2|{\s u]o;?TU;=/0]ЊJ*ecKis+%75d[Kd[퇥A NJ\ԙہ tW?vbJ?J%ߊ PDJ_ZBcKi0H{ {;o MĂ}FLnХr'FZis_t?dI?r ,$3aA-` lH&S(9PtF+7ry~~!}-gu3ZO?Z(-)&X]Vϊ2sP{8]l|*m2C+-Fxo$HeOǝV:Ӈ[;~DnJĺx =[6vG|W+x$妆Er샺l۬8UU2uZz@&%f&87XΝbtQ٫AG0ݮƚ}7#Bb N\\C?|L 7;#)䥛GNzӧ#kກǺ"̶!؃[ê܉J!3(ZRhw޽|`;h[:?-wf*i^hˎ~mSgZs-QqCj3Jjs"Y{^;!94P7tp6 q.`M7YNȥWp̉ 'g"Gk~!xZ!NqvnwG*^>J-LKY |7 * hjM$!mA1S^f&*=;/Q?Wh7Asyd+лUp2I"dwuZ E:e['8Ii{_Q ^HsϴʻKRX-nOak24JJu{GET-^c]#!.}Ꚛgs:1x+^=@"1~* eh\W^x[vDaݑ&[֖mW#a \!},]>G}!]x 3wwomҭL,n}X_!d ߑj ɊR[C wǨψsp5¹grRdŵ=ѥA-9{ma}Ie mbZ*LMJx ]2/  qw2mIj4G,u=i%bX3PojIG+d<֪Jk7"{b9IݧC #)9QiS&\hr\SLMF~>rߴe{8B0 )("-?!Aѻ#(RphJ)g{iϻevK_"|l#vE9 Y. JBO/D,8936r?+J,O'M0S ȧiF&g/:K6#sјlU̘V` E}Y{UO{ CvgJƃ EU^ԞJH d`LaE[-|g-^EKI& 7 dTn4ilWb$v$X5߅^P/Ed Y)cizr:Pђ a'Fʋ($Pܮ M7k'}`zT%$܍;!vzŚeq Y8u3e /CQlEeB!, NR-QْZxr~V |D@ɔԃ+~Ton:;S`b; YW5O]}@ݕa"+J*+#Rn*Ww1ˆq_ aTd* ɍFz}B'|4_7^oG^T I_] WG1U{*!ԇ}\\@d!GX:8Dy=%5BwE: /:C p~|X8:~VHկf˿K/LCz d {l`&;sx!=s Ƨ8D+1dhLL䟐)>Hs)@f}ڽ.^MSshv%w-M1CQ9vK.6#hY,:$Ý.&Dp\ѷk @zldXIˆȆZ>OC]<>OEQ O'΃wD5k >vZ' s,*y&igPa;8!5B@yQg :>KN ݫ/2s#y.cw=Νa@TW~")l =ekW4U .h_,-*x^O1S﫠;v\i>{b5Pؗ2MQ\GGS (6 ŃwfBho*tx"P%<^{xfZy&g):v?I JL/Ɠm+Ugoo+v_S6HxO~OO XL80K5l_Cy MYP1D󵝳P*<5H}މYy1{mupU)GBͼE%mn%e>tڰre  :`[L|( 9eY5:!%_5lA4/ڒAUs-VX8`Kd2Mr'/]QK@ LĶ 섃1~GHHzMK:js%Xtno9X˫I2E C59ɡznAn$_\HҭYmHR'[6,hd@#;{)l,tr ;tjE\/T:t 1 wx?JB^q:wm=eb,W7CM,1lX,BnOկUn* 4% gԺB8xd: !|$uO8s߼\5|ػh"2w#-GRr-: =Eo U2çC&K>u\%'WloV SZG8>MGHНiUS5lF i/RJ6m#Jlm%Ĕp8\3X[/ukt,l7ϪUwв6-5iS0\gTߒ QMC[[k;#h8IP/ E#6J20e6G y)}xʠ(`A:j%insA%W5'b-Adw-<5F`Iwi(%p {L_48(@|gJPbmCSn*% eyԯIqWWsJh "4h_1{#.98T uy|t†[%WWA@Set^9,’.Z]!ul]GӔԽF?a™~@oCO"勓# ɸkɹnuKeBfshizmCpq>l#/ƣ=Q{y1l\R ƜnUbmM77͐|mԙ rR &?$FR5*F z%ŕ+9\'YNv7~`X@McoKX+%f{4ϵW]e$ ]J0 .M ]+{klGҽQM֔; &?imU$r]ôV;N#oX@Q)vq<Vqswb55YӉtf}ٕ'0B7:aV/;W3|^vicW|2+RL16֓ EElZ}p brJ"4 %C9߶]9'TF&!Ah3# ?Z2' r(~|ܑel#9xHU'd+ʡxQ}nхYKR94?%|xSGC5XkMhZzi%}!+ =8Wx bj(ڜjRl^Buui8bnG]P^u?\@3Ĕ:s@m=*\21AQr<юv/ "i&QD:VRKcZnvTUvwȧ)wrRY,Tall?;OFM@ko2-3{ dUU ƈI2p >奕s7QNG,;TpHEk̐8i' ߢR7ZE%yPWdpNpL^Un[O1kCAd~w{(|0K jĒ{b<71iCvS$6_9s2=?j_3xx8,^}uW6b"u`!Ϣ˄Jb$mmwm+h_z(xtnm޳'g@K5C].B3Le^ J$GTa>Q1R_OA_e &P,pTJصav_; fSO `u ٩r?X2]u}hliN إӺp 9*VjxpCʄ=Lu1r^#FLDu'Z@%q[=jۧ'eGCQel];gbCBt_¾  ݙϠ l=C!n B7e#s,hF/Z}>Mb鮸5!ZFt%`nTC j; /%P4Q%ռ,iQ?謰' n_E9=r>zkEÀ\3fqO&r\B|rHZU o^ےyH=[ش0qd N{0 0 ڔIY9m-wǖ ` k1/\SG*..9_vP3ӏ w/k v"41,IЋ@eg Ҷ6331\1p0! t?9&~g]܌U-z'mvbz=zZgRT ȡys83|3 52+0JC4e r.Ns'"H f}:'>4q*@IP">9[@&}aJÍFH+j⪵P}s ة!:G{J8):Pqg9Qثm*&nxN]!gϠCBw\ū#VLb&z[OHZ-&P}QT(*KmO{Ig{c ApQXxCt<\ r `|J4`ay8crtxKq2NXb*βD+e6׽V88NԕäSH{/^6+Vɂchb՛ Qk '[/_.sw5}Ε$U? FaDR}nC&oPA![m_x$d/AXIvYq" %p2.I8! 1XV7+=w^-;kݥKnp;^?srD)Th~.S]Lݗal/K~VW꣱mХ{%ӽ>d`5r|#ly?asۜ `&{_c5V3[:蒒K(zH[vj W{Q|߿R7<*n F*,>bNM+6k15,nHmꭳWEY *YNF=kmyy>gE]'kՂbaJ:k:_,ANѬ[[#C^C ]kO -~DQڵ=&6Hfoa`7lt>+ >Y&R׍? @~M$u) [A ϤoX?[TH~z/!D7X3{"޵b)dd{ Aףنr'ےL r)c\~iwQ 'W>3n'2ۜ\/̑ NCh^^Z? ;~{)$$f%Q&F)[3g;A_F$iK>eE%PKWy*ka1YK`CMEpvCCa.!A5ϣh¼e u! lc59[^~'Y<E*uR(ʖW,h@=S|6Őuo|E7u#-VNy !=pQj);X,]9&8<Y=IunH)qx;WIWNڝL+8ȶIܡqoMq&vpZ<2vr]SPnlغCϙxҐlWaT(aځ]H/S8O&}~!vWYFwY=b0W\"ZV{mi<+\>e3A7㚰F䌓-$3U #J'~"Xǿr#VLHJLJ#飌G+K u<7[d;T:!c1minLEWGq21v𙴖ÓM[<ș., X _Hclp?rJbXJQHwW )c| ( }e)D{ :q,lmqXyӿ{PѨZ \$D9Cϥ qKLd~sk>9W,KgJJlg4-k)U~_?1U>'~!V:@ nEJLߡu ygKjˉg'IzЯ[6b_4Gn^|08ltNVlD k`lRLSNdCpj x30 sg:䱫/Uob^|g r8b^ׅ{-L|!lvn4̘6NWPrFsTIDr}!t]vf6 [䏬W WIIh)S\}_rёʉ(=&1UwUp0Ȉ48 B}ldfTlFODuoI]FSmU~JE@}*X$qeϱqAj9<0푛q&ɲtGA^=0^K c)&LWt7)*fe+m%ġ6&F!aMx?l+\g%t_}yJwhx]Ne[9/j eN[D+NW*:=vAuO0AD6zo{Xk57p9F\HLzygşO#o6c?\Q]pL`fȿZ݌ -V+a6AA'!NwF|b _~DjqX$:IWU, vр, vs)akskE)u28d?6)w#6,GJ̯Q $:~/RKi'4{'";I%1 D+XTd2VO3f| \ɊrɁ.*U<Xl]<]w||V堾|||3:rӸO T8|'D'Dsq1ru u-%,ЧJp@TUv7 ldXwzo/j8 9md :\&h35M /4 οsVq=d=β?h]T_h8[g;dso -(tqv$ vs;'WqBp?Oc'I&|c&sK6n զ.Q5Mu y P<T1'GBi?GLN; ixJ"f~#rY i@YVJ!N0Ix:Hw(5_ԕ'_mƢV6J7 4VJa"@ &s4?pTme9w[>;׮3,EѠw"V߁n\ke9ir=vԒ]?a+@ 8%zF4^Rj+\`rh{r\m%d术~qK$go22I?SBtn^mBBgk679x/R;%bWLuV/퍴7| Fq6Z]7t@" wqםI'+ #}?60?ɴ/v$|~EKѹ#B9KVը^gY=E8/TP.cy>cpkhHS!'s$욄ۋ zf#o=K?>'>zAW j@Pve .]0BPB@4{P@VR8fduyxlFn1eEo#`Wٜ`0-H|2[_Ri=,QN(#0c${4S]Y#aex%S*wD1}boO;c"4VSY7fb.Gz:&B- KHneRa^ dAYO]O5 l>tQ;PJlOl"rkў̪zX+Q/Z6 Lz_HANE1*aT=P; Hv hˡCZwIqǤM32xZmUUç8jtOuJ)5i<𳹠mjy.ԍ]zpB؁hI؊WETf f Q?1_̀*)a?)#u4 ݟ_GQvF2\u12P5|)w:7Ek,odz'Tr$H9^W^yJ9͎,D'߼;|ope)fB1s}B$( =A1f$B(XBFU7 L(-7fF=U&|1}JcS} %-)٪Jf=lW$5ïTb6)JH}ݹtKm҇0~A}݂>S4' 3WIjbGM4];ؘhJ !_˩*B-7_j _X͛_.=+`{]p4(c=N& n[Wy'?ĢLj+'ѼyHU=1#{9LCGE]gj; v{_S;e$`&D~Osg5(2Yڤoj%ZoJ/?='+cdCY`g>j98*Ttc0W`ę>L*ASMdI:ƀEJH//ij 9g]36.FaAVp*jՈ x@NEw'Rt"5$/u*eK@F)@Ϋ1;5^^ fgo-fQ*|Dgؾg .̊{3Ų Te_=3uIMxw@/;]8t:5U ]/0GO=)2cXvWWMKbOg-1^מ'$dMbx)^*0~f!_:l/ՉhO'ؠH.~=CjҏySq;{+F5zکċF͋BQh(;yo-x2U@q"_G)BMP=Vn2;tX-} fͤk?7@,dnN.5:B<_`95 y_ѠPcHy2,E5OCA=`r[݆ 4ɩL)V8Dk紏w[iplQ/syɅ"WyA'A붢RGIWz4iJثI-.^ Y cl6uḤpfCG&5.틃zhh4yz">7sҙu2l g_g$Nw~ c$E^=|1 K`z&zG;oe{whSR҆NSU]v Bqoԅ(#)޵\m9um.Ofh鷼p @{#*6/a sŬtb vozpjfGY\w~h,Ն)fAFȺ*QmXw<+uN+? ik=+/߮5-rcI{y7}(~=KlF!d ztIη 0n X1|ܕN>H{=}ڞb^= [MIK<ԝ+kI;CL~{;j^*"Z,F*j6蹝5{ ڭ zW40z_:PӘ XJ󹣼-!wR2G3dw%{?izip A$h^)P 3ሇ:!z| ) O_8}C}G6{0AdcTj'bيLLacB4LηaL_z\m3r8l@7Tr q ' P/  ֨Hj> :u/` 闥&mףFS@ k(Cgfd$$wh1ZO yf2_ZeiF-2]5S KQY{liH>J K Q\ug \%f8 Wc]a;~tR@6  % K2$%1UgI9?D edI?\+ܘUVʦC6DEBAZ& $gd[ܶ;@iCrhd8d .(Րnd|# pCkAM'$*~ Ђ2{7D!AU~M-+=_T`?n)|2=n9D(Jbp ?m G~Vnژh"=JP.6Kr&2UD=xmRESq $ G~!JcX3)xM*Y:鏄q-$/PzD 8Wau_?ܫI$fV|¢. v=ezdX9信3J( 8Sgs=bh@5 (Xe1}yڶToD3CO{NwY ཰vܓx ^Z+P*LSqZETA^rx. Vw{" Z!VSg^Vٱ(EGa h#̖C%V1z^-٦v)l"S-[:@=du-1(u@ko"JSG|]yMy%o[-}!+2A% 5 ӷ>Ӆ&5%1/CUt"ϜAmlw6IK6[Îe*u6xxď҄ӢIK 5KĪOJ&;/Dfd)i*eҝ%vtR)%>6~"I_p?<;*!6j?=ar[}a=Pe,__bOrnRA"$6kdrSjh*$ə;ONw6?$x~%>y_`:8y4jf Yss_+}۳w'\xG~wr(bbz?|0g='/kAB#o e^?z7(CHYZ^ H%4SvM R,P@,"S&z.t2/^]e|>2c,ڡ߰l0xEQpFQb(ݸtnM ygp h5hE{d$ :9׃pSLVyFg x/ke E7XaTB}&Xu0ݮ$8_eWK e$Q,JCO,$Hb{uyy9 z ,KF9ʫ)m`ˎ\S"kzpfOp!Fm"k. Vg;p4Fq)C䱘'@N:<E )V"giRb\^]Pf 9DŽpK\P$H'LA`O5S+aIY w5adr_(ɹE]oc|4~aU3*N-)0&;%g5Q?= pG)8bEP Vt+B'X|~a]cBhTTm)Nmۊg≼v3.6&hpJK ԏe7 0ʾQ-x ÛPH<Eg$6M1~#<r]B'ٴJtok'. ;z+Ϳ}>BgIn@{,wtv)Y 0IGeɝNS;*LJEF{g*Yp_8^^6#jnFTY⽪<^eJjGz{i6q5~!"" GT^\ |IƓh(OWaɣM{c 3rZo-hqA`ְWt5 ;'i #)򸫇pqfjj!!;w)^ԸQrqpƘ߀O6K${kp:(cTj` &G\ uqp`v۞K譥Ź8_恭|R-X™ށΕ,k(ſ9P4mqUzEκQ Fb#K!K2J/qw8N@? BU2 ?eYGXtOuVŸ-ݺe6X1xő7 y';9ZK]>-rCYda(^nG껫NEqRל0`>1A,PT]B 4;H#I[]K^GPOR?E1qr+Vީ=7JADQAu[r*:8oN)VEU3xvdؒ`v ,:=v֧LFiţ>]QZ_[{LE $hƏxMS@&o0DA0<0e_إ$_@ڢOav*ӰM9\e Yp&Ŧp袐].~ cTagŨ!_Ty h"qL_t¤ȇX3bT- 0EK+$:Tv)/q͞l}"4+ktX82 %Mbxa"-8肤RXãL:2"`Ų a_`su{qD2!rwI݋{6/fv~ 0 xqʗ+㽫p2o2n,1֕$3@:oGL_CMӍ񢛢nT>_ Cy7  2},L{lOZ+)| ('! Sa(K`+ oԾ ోTs栓vNcOaoB t9T)c{'>h4DXÎ v"/)TH}fPb4 m}j2_ZנGfS)"[ؾRB18p/&(B‹Mjm4Pi'7jZ͛P/eWH=آΫ, َ HC5:fEo7$4Q0cQ}t>T 8i`Hv술Lx]N#*}@XJ0mqօeԒ`k2?cӌ3KM)S\kF}WXiŃ+a*Nѥ;CO8_~_~1&/F蔤{M֚6߽:os!#w.R@%Lra;l?- ()n/;e7yok*wi +2벡wkM4rtuM:VhuN G5U! ~0"#PX{Lz[ިZx DQΔ@D]˜%MX\$$EC0)V 3yTDaenA;t#z\OڴQ=VNJ}pѷg|iHD18MPbb蓫W1, GzHsEfaNH6˱5HzbM!Uh}%~@n}TD,*;Ė1z=zskg}i QZ$XHLPYIr'SqdJfx6o2R 5QvF=BG6Ծ~{i]qПS;&cݢd-hpkO rH@f f AX4#j hv=wfV6=B*o<!i;ĿSU}t;T+U5D0`z-)0\bO\r;Tu<1JץQXZ֤;CESYpB[:|Zo]598N\b2BȦp3s P#΀F$,ȘI >i Ef^H a,=^f\GM&9(PX!g䦤۴ȹ ^e Y\HDr⿎R|c&Av^e5Շ̫],r؂R opt+\ I?v.fVV50 ՐխbBa;28x~eBG$ J@TĞXڛFMӸl85AChTG}K)6 F;l1Ή) a}LkwujLyŰEtP;HJm6= `hJ5Dpt n@ @HβX5Ax9k%%/#!N#Q%Wѭz0;Dž* 8T+5cJy`&Kr ڨ GOx7kE*gpqz^?3L'RȢܻonM+'7ⷄ/ѕ r?(GO/h/g^-m'IhOs V?P^/ߠpSm2r>!HC&)q4= z' IT̺RQ>jԈ WvXyJގm8=ˮU`tzx\}:Hr]ZbF %QC= FZ/Av.FϬ'S J&'}0?4g o[Ԡ>g7]1=f _UDGw ƘGSOgTa8nJqzhEa#?k.-8w Qj?ꔋ*A5T=щ'GKAc*Ęx򜗜^dU;iO OSuhXX.(UkqMj1S\ڊ]B$JxCneR04 r(}Ւ!rq|NUDc).Ђ6nEFL\~>qW E2; x駿ht"qF7Ax1Fo;{I{fҧW7a_vԍTD[0o`xL2YYA0f \Q(f⯶Zw_wT>DP[I:|d"{,ywm[c9 _ֱdHL._<݇j9ܬ^p7S`pX+g ݃v0:cuA}xkJ(>Xy/%{Vڒ3{7=Ѱd0ɏ%1#@#}E1]]rKh[]_8z{T!vUj(]OS[(@WwBTVR:;R"kcH8#;Gke.̌Va\CZN=PG;T%r7Xن޻rOb۲hrb$B-S/I C'.FՖ7e%2F9d9 ;!$9^p^JCUG>wQp 2 I]LcPMǦw !.fR≫lWph?=t2eN> `QQ2q#H%'mx]~@T~wKy;F$NNVCLbګl9)W1L_\Z:qdoOo^DIQ{!qe.%W']eSE{Oʠ:Kv}UQ@H _א*6bHY0yc5<5 Gv*BBa#O =B P͑<ϋn~_TLG QKSjU#zW7&APx\4ǻe3H; :d9K ^ 5 0Lzo>.}>y77A9xF35L vcM%hMqj79 }>)N0|"+; )Zf07pťCCKT`WNM[(Vka Ȗ'm 8*0 ~Q1};tS eSW=\ɒD( E).@H2kclۗ~0PK "FM%/Uڣ.ߡCD9"_RCU7\Ke9$c/l԰ XRDRڈx:kEIN.g_UC ,9]؎r-.[`( 9Tn/1>CV|qi[s[Pb; Z5 Sr||Bքqq*>Ac~P4p5;GkEUREiq0Hbɲl>0*)g}E?)(y{ɗ Z%bkf m\S.hGnh^U ?p,^dF->e2hH?+֛֑^Tq+T<%g=Ŷ&ۥ@}QZoH{X|)\ 'j6r>Ds] zq<P|;ܩi{y$* y4=q12^&NNE>p}UFͳﱸ|H J<NfT4NԮ+C=~nG5+ 0Y2h?;5vʝ5ccfAGx /w'(0!fI{ '|v&N&sA(&{#=߅}ށ+9y p@CtIǹ: nFA @\gC7,+ TfH4ug5dwnPm)*F hż۠LFO]'da//cI:.o;,bqj?8IJFR&4Y);?΋t/TixMSu΁lý?0y=IGb直IP9zP8U\= ?%Yc!0jӓv;W#Чs-9!!ܒ=; dt_Uoukv a97;w墾Py\,~ J!B{N˾A?*\>2wI7'In`E'zeVs,_&"rȴm!eohhCz#:I7NO4zn=UҍbS!-bt1FW+rq`mղ䱻V^J[L{O؇ȴ?ث:MCZ]K| T}[y%~dqpOyde:.CH֠;,!)/LII_X \I)?wΡ~ g{"iWc̸W"sf8h (>FäHSrC(gԢ~FdcbWL,6 Vgϴ%d4XKH5QhXk-h-!-4qABo˂r?Y(*iV}3Ay qK}Y R(`nOqJI)mTި S7%Ly2m I&#"ӠDMn;ok``,#n E1Ckߩ\E@gH  h,('\\kX1=]#jۄ͍DŽji^̥%]Umer jŝ2 ^e6e9@s W DOZ0>kB⒭#6~T,qhwmJlRQL\}h7OzaUњ\ĝ=jh>WfD,^a|9ߣ{F\k Q=4<wYw:s)*󤉰'Vi5C/_SULHUgeQk{@gcҍY@5V?$Z>/oOQ%tL ђIq*Z̆gf=!3Gq~֟Cg %jeF![˨RQ@wyu[R sZ0thsr#N\Cq̘")F%_pDwQ+|A71TOX4CÔ[Й0aQVK"h'T<` NxQ ]Jo~|لz2 qFӒkT9{9^z\iq q`zYAk=;ԱozGoSDOxF5"F?Lf+zv;p(ZtGz.=Lˡm^'hq^óa= N%l>墵ٍjsl'-'-Yc Pцd8UڏcMwy0Zl.VWm@R8Q$#z@+,?2[Dtf߽@0G8={Df@%ү~Q]2Ұ"`D`@= L1- V܎=4p\7R ܴC@Xͣ~;} ^ E=DW4&y =k9qۜl[m5L()#xӀ/ Y(HiȦrM7Z΅n~,LrƵe5f[ctm*-i<9T[ 3i5n% AYfZ%!_ {J@s^/D~sn}-]s ǓWU(P!A{Q6jzhE4|UuSVj_14h_AM'W;3tp+O45zTnX{h:Z\z[Vܳ89xH~dٯ+cedzZUY:EGn}18;|+a~|~=t..03ZuI!jn)q0L60{wVrYbu-ˀ}ʑd.h6ٶ-)GZ*57uoEd)C4Q[pj뀓i<}ʍ@wYwFGeAttl徶2hWsK 0{Gm>}*j~ c!Q|>}xq2gIV.,6"3^d(Fm;s6Зw5tZ%*׏ ^XX)(9wO= Ŋ!0`w Uh_au+̀rF_3$;\Ɯk9ps2m1o# 9V' KVAЅ7MlK9!p' ɘIȤlD$C8? (Jh۬D4zvc~Lඒriebjc돺HRܢ(/QŽEAC)kی N4#{9ԄIȨ6]CDžSr͛# ~ˌ#vp T=b1W=j91P掲74L>؃ LRDxӞ ˦WµXAҔpeH&I %&d^Eb?\&ݐ[Snչ5 W$+ v ͑_ ڈQK QZ=|(xgCㄲ"OIJ> Sov 0C:Ѯ3sEV59]w [߁~(~Sٽ5xUa:^g2#{08<.7Uvۑ*.P8 FV+iRn5 QNXْXj5Nc7p[ e%Aõ < 8^Q/nig'/pzV6Vbqt< XdXmg lx.r^߁գo꧿aRސvԐ3qd}ejdEWnuѪ\UG]j5NLKSݼV*^)r1}0RqGrfoYސ(}Mtkb]4ˆ)SsN@2KS^LIWt=>oE ?J["MdgG!ʕd&[' 0GRHUGZ K9`2m{6<l٪?ٯir\~ˡδa_]XԤf^Ɩ:,ZZ 7{.͏z=&3T5׶p:H$Pow{Ωy2vUޓj*r ңb&txR5S u?;?Miвfzys}1L.X,L /d#c 5Z[xX,-021fvz<)a* v){NNv\jr9)]=&\?Qd@&)J6hX `-'ujؒ~Qu/߿k.T)'•}ɖ  Mi<.M}xy4҅Eٳ%u|wA叓PoQZxHBy%DRKG2Y^Td%Әa -w1y󪞒lV>Hq([A s*OLvQՀo۫-Cqsc|3K B@xQQ)=,.wH[CudUYFq$2}>-2cd?|Iuf@շZ9s7YPΤ9aYugv! =/RHO0*9w&b+WP:k vcou|( Ş]323~j *`"t{5p7s̯ @՛ LkS X8=,:=myk"#gfxo'qaa8ç$oQwUgEJm^ӧ/Bl9Gg[oW2\R􅄿קov oѩt8Fj2+}%e޻qϬ˂@J( 8<JSA)H_5u=76 $zՆs2(FW)RK"b{ɀJN {*Kq3Oh:ۿ#R+ {5gwj>Iכ=s_`@>P gӕGEnH9 ߷%yG1^߬t;.4oG {ͮWUw<~–lPt[$&KT~C:,PˀA+gO~{%KRl̤=`@(υ2+#𑍠 LA.R'5ֺ:^xⴙL“ ȫ}EјX!.pS\{Wb_Y!dES;#) Rt"=p=9<7c=U^7!x1zYgmGrC@1xr(ݞ_dSw|79+qom~c0IZ nCA|3ڮ~r%Uvu> ;&ع|= V2\;,T_sCì3h'qՇly3lT21zS [4Js$wdi<֠ \!#0~- IIxKY ͕t}Վ!? bk* s0!68*XO4=N%X4vֿi6=Rɜ.b /#8t,.>yUf3hƟ %#&t$B2K^6 {T ~\ pQpĆ]A&.r"Rb2GFv@+`d?h{saÑ|d5$O J(#~#ȃon{͊r۰BadHLŻ<]~ŚyGwAm BwP!KGc\1zW#H͗V.h[[@vv sAg ;e Z$e?gX //7L-w8,#0`\`eߦu֊{"1tt%=#rd /͘6 J17.Ir0$t6GCM~ 'X1b@?,u4R.- jrpݕ}îdl#+S߮;Z GKQ6Pv@2;ҿٕSjïwP&c$vFi-MJjdl8b@Nhkk(5lr@_; hdKr ];QX_Y&%R+aRm(] t:N@M0g~ CMOWʬ|~WtT6D{Еڶ0%%ޣȨd`?|]<.U >0U8M*Rtb|0ByIDBׄD}D㯢TscT&ݚ@дa^yޞ̓d=KhOn &8 C%~xD8L8ūX%9cV]}ɫ5rtx Be C(kYQ_[Me֍6mZ<ݶNsJRyMlz @ǘyxX|A[dec=Ջ/<}G/4q D_bKkh.5Nϖϴ[Yyݛ=Y̚Zj*{4S&w"OG]iCHTpa,ϱu0 Ag.^~ &` U;9A(Ҁ"8 }k OOYXG1&cx(Ĺ8]""Gz!gWT0 ->$2k6dԺoDݻF[tD|e}=Ni8ULDOLm{n<ЇFST3'k|MaQlMW爤P;-&{aǯոo~l}MTb0|˗6!(|z |\A:BIyAy\jpZxAQ ٝZuG݇8"4z0/"сL0t dR޻28Zcp+b/^CX%-/f@sҺ G$X.Fua.Jgrn"8[kzρ̱U_6oI vDKMbu"ǁvhEA?I^cq1xC0o",GPtĄ2^ iCR=~MTo_8̰jΤYCs.tbB%/92ՃVd=jFka/XumÞ& m= A1H;`: 9lm U| ojlvB*gxX9]UD&s:qfYJ2%p^J-]3H 0r^nRb4@tZ-hF-R'>&m{Fl@<O:&F7*ޘҮAm~ "$>?]_ipLԯ1OѮ}xM/Dxi'vG#j s+W|I||Mc CqrL&jT4R|]Sv<}$1k`nw:fʤ`[**ߓ@9S#OH+Ud;HtΌacRLNtl)4% |*Ft2,2xAYdѼ6XgA!y 9&H3T'A#WԔ@7ˍۧX0?jh8o³Nmʺ&6M9?)^5d~c IA<Κ\ѷ9/Eܩz\1y}B DPZ^ѐ0:'49hTIf-Շа :e\*Cz CxcuL5Β['M{E`V"Ӝ^<=1 :4pNSH&F?WfV }w@"?k30D~A @GҴ(68uE#=O7ݽwS;v\POOR&P'kpp'&8_Ys26KäK"xY{Kw)g<ỼͷJMMAY*?l̴Si&Pm J$_&@F@ p GQ$~ i6^٧(w d37iEn"l=ih\۠hAr M^U]Pqi}.}X(4y߱7Sn.k[X1#J8Y`!m!\XiΠa[q)Ӷ2L(Zhe06MYqiLC~"AMn! Ry齠=sC(t5r`jMkb?"- {s*`UC_ Ua#rENEx4%8`C{Xwo͘bW>綾- ushiAn>jex{bF^BԜ mc`#9e%@|,O'pkIS;f[VJP2=;7w4)]{By4D+ k&$q`YE;3LqÝNcRj]G˨oY@z1h?R fx߯P՗^hUMG&`#^۔JwK6 ԃy%7 Cl) O-[]Z$Y++𐮒7H0Ԣ |G=B=L'"R,1Fp׻\5"͑ol5pXl3x]Bf9){?z59|!K$cʕ);3;*ž#dڭ4g*(!8-omt6KӦ2X+ǖ&m0e!55G]T&pʰyd ,NTJl`Ҹ@c2/c\qA+V^ ĸkh\4k1pFgj~F4NFq UUW*3^|N9NbU'o\#" HҺxa[S$ S[Ny>qn~[5!~G{'^ @ !'v NZw lYjN";fȘc k`ƚ Huw!˘@o9P,cK>WOK#V;Ε>Զj~2QKAW|[fHO9mr:5| AtF; t"X;,0h-5Efq!c4qS< G_qS3'OƂ1T (ui ʢ"m;A!y瞩z5 8Ձ^v/(Uj&hL;Ϫ5 ְS46?G@{gÆ!%ݿO$6szpS] ^5L.QmPO#heHLR;#b#2wPJIJ</T2 vؘ$-Uv("9 iLLa>FZ[G>.K_ʑO²:ъx]yQ `XHz6q7^<gp迪o"SlOZ+KhTR E%5\%FkYNB!;xycشA~(CꤟFU;r@׋_yJyz~je*@ K-_~+r<϶w xk"M L ʽOC\tܴ +WtPB8gD٫O܂*B , S7A0Kc&sgzYkyI ¥K l)D5Dhz_D gR~z(~.Cӆ[SmGKqp|muշu{EP$*c篵a>7Q"~B|WƆ+m@@;fp}(BP^}+$L>`S~C$D$kM=%͈J44|<7I@MeY#ޥ+J9ͶwK2yPYo'5wu8 ,C\JsF$e< S'Kynѽ{Qpc#<15  p,],qCԊ!4co< 5?PՔkݦ1>ꮪLK&*2=h4_y1XX{T2vz$ctlui:8)2Qqf#ZU^<8=wg[`lBTJqu}TL#2Ƨ+H ?UAknZȳ0,N% *3 X\|t3z7P(w8W=PVдbSlڽ3sOyEML:q8ST9C,Hzae;- : Q9TCPdYV,!`zɖ1)LoS*h(&ciH^M/ZLQuGT1;NoIZn[q4V%*!9Oi,}f~w*S-cW/Y axhʽ?F {ߛ[ $J8}L0fDl~saeI0RnGAf[=2ND*}o\6.2d>AL?$a{( *aڪ$.v4e0Ģ|u P7ʴzgdYKB̏r#Gq~'%`R*&l:#mZό1^>_|Y3n"v80ڎS(t _w`$Fȃ|<Ҧ|IbNOu0C!| JtL{Z^>h[1|¡OӃ$#F"M&=v7}~rjW*Q\zN&&UlD%ay.+;CƛrZrgcK܁PܕiHr)Hm!K&DlAg(U-;>WtSWh W2RHwswN(JGI,CÝ_ژu-2լICv k嶋˷,}!0AAC!zk1;Ku \ YeX7x`czr.z+p8yLo)̏)K<}}d xD/#+kzApCҍ8D<aY˒L˴/5]=~h$b'f+*^1՜t#XԠw^q%Ⱥ~EJV{RyrUdd d䮓n^@ѻ},* ޥW @x1eJLSHfv#STDKh4,A]FNvOcJ  eo+{uhz;mJ51|VݨI%V4x bfB:^587XNw=ڵί%/гdY?Uٺ,*,vhŽw9,v6t )n]VI0Ifhk4*Gt M58UKSt3m-^wGƢ T"Z%`L_~R8vCdvdPW,L>c[APWqi͇)bv\ƍ4q& ˺C*Y<-5lJcoӀ{:+d@ٷnM _F / yw-0&Y>6Oq(;6GQ!5e˜E$U0}m6cG:< %_@h7J,Yziq+jaU<'Y72jx~fk=TQWEp2+FR=5z cFrRoѧ+}Z= Y!2BWQ@`$nAJ=%JƑ>bIr= \*uC\ CkTcE"IipԐZ9fL>Oe̱.rWgJu 9% w ,׵AnbB\9E=&ΆF@5~ِX,`oTwƦH xҤٜGiBz ]8Z*/>ە Q)m e0URCN!Q7ή/bz Fq]-&ShDg709B1yƅ_t_*$퓳MD@}nt9 @Ky4GQ. '+ַ6''5]x6*-R_%0 -["7蒋ɍ-Q}Y]^z8 ~vcR4r9\(r'uYY#fFހ#HNj/f)+1 YOXv;%7=B7fS;y/_AL}XOve1YL]A9HA :+` Wf&?)ǽZ2p;#BeV<ɕ|6Y7pdkt(!ޢ;E0֫y7H=klc]`%ᔗ)0l)04Jʽ{K|RSnfvSZQiOl>;" C[.v쟕;|XsՀdFAc:fTs8+aۑމphD!p۝'F>ɔΑTk:(!]e!g ˇ@N+t :$ƛUwx/\x+Oi5_*_!9W ޶++MJ%iQnTeTz@e[f5e<6 ke dUg[z[t -A&.Ņ+;RUѲuvlR27hssֱ zrX6.MؐOYm,rpCF[6 t"m.gZ7j"th5hM !KȩĢnrZн@^H4 UT37Qo{nq3 G c6-к >{xْJ)\?ΧMgĝUKܮ1 cIFWΡ^Rt>MPO{6?(IksNѣ>sY `lqUiml˙n LW<a 'C.mo6E!M*q䱰LS*l|f\4Gtoixޟ)|䝆SfU Z[A ODC'75nNkUW҉jho^fEJ!K٣%)q9dw%yƭ0 -yw~o@UOzYbP s !br3QPC906H%sU>g` <Ձ u YND̳9q8ϻ3L4bH푣JɀWE[`T&g4ictq^|.~5oܲaC4vk]Ħ$ܩPqKMmCB3Q2m׺=/fZZQP<=|J%I ,}bq˓菹&r5,@vSޫF sFfwK]:G8L&զ" ?g,)/DuSQd.fa;OK3OӗyЯG _L+ՖMXm}_;ʾ٫T,J c܅ uPGJr\C >Oli|15UD5 2uvݘ@bF/|U@:a N\\f*|$!2O̊TeycXNy@T}X\($c,x'$jӑe@CVΒ j-u+iJ&Q-pAp0=pSzLҕ V~?t!;y' )*=Ty EaԴ.|ѯ2şdA]DEu>^}j;,6KC3kyF1xtƆc`~H&=-<1ҨݍzeӖJsEsp{-0qO6Ϊã25VGtMӥϕFW굖o-e/祉 m8P&bk#mGV7cˊa}i9X " o3Z\S{ *<֨ń~o:blYs~smSܢhP43Ѣ]O]b9 vj,fO& /ϔPYzz cQH++>x2n}#LoY$M `tٷ/NA[&qߴ ^"ғHHQSL ;K*(}tSJ'%f}'uSV [HR!uvi eS$ݔﯟ{4;ܻmaAɰK;A:sI:[WlW1[7\F&~n'X})mztvp*6<[MF XҴAg m{b޵Ey ]eDSe3[iBBCt_] ~2-v5C^ilfbmyt{~NEQ/wn rQif/wo?E9Q?}K8)(^ȓu}iR< {7|I3DuەWoPVή'TIU2#Υf_'OI! :fQvr:q\p¢O?#'i%x1 A{%2G ̯`GT•[-l^/Jgݦb-|3'w;"gvPf_Ǟ؃u#9evXIbp$ KSH=&ҵӬ qlk6,)%䚽/Nc j;8tmiY 4Jz6V:f=W~F[A9HD(vmI5 Qf ([DcCb2шa87l=ZݬdҌQ?ߓބN%TwA#ꋣhwRɽn1hYQu7iF+7VLrf"MG0Cf)9VJnX%@RdŠ[`bWw5` +kݲr"HPuQһR';MbQN:+׫WKz{CPڪ.#kWPL^*TiǨTL]] &A{NScbpGVÁ5Cc ջ,qxDIv|˟sx]s[PЗmju{ Rux]:SGydkWK\>̈{ lP9h 46j͜~F!pGܼ2J OD\aIr JUC*{6b;o^"ލ?}tE֜,ו5Hq+{V@J1p+H=K]VCOXSOssKΣݒ.%35u-ȅq3pNfm`ӓYݩ3(TZ}@w7@cGScᢻy d2fbl>ӇlhPܛ_?.R _eb_I2m" z[ dBbvqneOˀSۑ"z PCҁG +rd H #8t>Z|0v]ߝ-:=7lE1lj"@D #[ w {@` 啳.m+"!zO>,ji4l6)[P.Nln׸,7 #z`t#2j3,%TS.S䰧Aڭ:;+6%ɑ*r`Èt UN|ZMgoZ)USsK|Q+3LI bAl:8T.-F̸SsB~Zão=\NԸ9Mӡl,]h\x?L(;GfƫE"b3`7kqyAsO w){sN<#Y×E5~] R-,q|!)Q7DWS%)zXH =mcN\ZW |;rK @?uwη)|OZ,D=4eV >/&O}9~۠c=Mۡ&w60=rrHk VgA %!4Jlt2Z sa h}3+a9.3m͊3u)7Mû_9[ hC?j)5^O@zFCGfŕ+qeKעv!ZWvAmPSLi1gLx_&4d~G|ۉU\|{-Ptf$'N8Ź|~!$MibO$"S8E6ȥZiHL Z?`s v sM"ne*(8RՈ-bFl_?Z`+ wyH ԿʧK Oq񥛵ڛ@X%Q<+gT <6T3|XWpO.5x;|:e׊W)/+,dlyC;% W(P0A ̛3@ĉ"{*r[ =Er/q,ج~OV1]aGN+zyJ~OEXt w@Av=9p-OHaP7H&g[B @{mU7qb'OeZ[^W7Cn=e wF6g4n}L;?``3-+!Gηբٸ0KXD_|\JK$Y:_ mo\ؘY/1aa?J>QL}ֻDKpw[{ĺ|8!ڴj#U(U;uӛt#*f1d]|]yQR99-qSsZʡJM˄vIg}j]-vOP\Q 4rOΛɫzٶS=sm "rN@_:[Mxx2]Ry2x ec~nyOФpjWʈVI| D̂"U*r*=Ke?qTG^%W ZQUYBn$po]YtѬKK>uífE~D e4޸Y"fqu[RClk\, >% "*:rE@ nJZ6^ A3WN̴8Uc yZ|QNbA Nj@Xi1{q >W&&#>Du)1}I<)& ]]BБcUd?awn/OaS%iJ. cGl3r(B/̝J fe[@ -Zf}f rk`#DeAbQܴS'r+6Wh8Lbn%KKc]3оӕR]8Q!l\Rė>LI0B>W2/ Q <]9z&& '8QΕuXZ 6[''*p*lbra<څ2pnLnSn *5r 0|rQ},T3@&hį#flcv򪾌C-$ڈ/0'f? Ĉ6y-taё6tj0. R7m33'0oK#pKb‡0ySfvBblާ HHDAz5J#PT PҫԚNБ6PSU"G5tIj?r,U`.P 7jRI$,Ѱ(IrkD)jct>U<(vG-B??ӁEKZzt򧎙AD%(23l[يP1| [ᘳIcW³Pذ|2hvu#U:G9"Rg=3/6.aJ,V hޭSe)k/wOPU&! B {: ID.۽Mu\0 ުV$e}Ј}E{xqR&-}Aᕢ2ouҔ9EyofN_9I! DOa߻`-oN5gI  <2m>- ŰhޫwNN@<'&[āszpS9|։y QvS*L˵EʣI ʧ &P,,U! ԃPR͛I@R#4:-ەV/M-2_U[@SqW@.0-;wa1n9A!+9?̙ǩwkmeVf!l*T&ݔ7AgN"l>|Jc_5NDђqއ5LJEx/iy3( --\̻HD5azfwT G9%RK21Û~Ξ A8 @~.PzW6ⵅeeM@ˉml H:sYP08a& J>9'E=y7jR/]Vɻ8WȣtϚLr;{"ݵR6>V_i޵ j JZ/Ny?lˆY䎄C<)@3Dwܸz|H==c !'/ĬQ5MYh+%c!XGs q* JE [ 0yހUD|B$]ǺKY q(/HH|8)O&,2dɡj)I?P}%@ |r$HnϱoDlm:/5KF&}-ԬЅ`L\>_z A°4GY$%.& b/"&8 <{GC,uJÁDC>{/R5[Ml؏3B:&Yw 屙U#nAldK(g5 [B2coG~HR{Ei᥹#G%M7P"XЧ53;%xƛS.G#m7?0dU[ pV":xV{\"7->Mz~*/4=u[sfqW=E6/ҋBah"')+yoycHm޲e@R6ѮЗ0p\#6+t_Ӯ*L*5ޡ3$>_`vF}ux QeT1.vvm#]٠-.$'^kc."Wj<`6X$g xwg|{6G~[E KrUuM\D+p!Jxj61siЖlV='=1P9ɡj-S9}jv ~s-nݛ:LwÕŠ1dʋ_8wiiBkF|(MciJUvy7nd '1Z$TQTuu]>>?6fo%A./M]Bqq`X|{'QG I*Pl.yG dQeNK@N6̦J Z3$O|jc8{cD < ~%Cn?-,.*GZ&mr5X+կ}i]׍8]wa9/S$^pG mKޜ^@T昦DGw{%:d-ݴ6YPo>h1ۇ 94qFdh:z'7MAZ*W,rWy9ㆼu.yc쎍b6.Y{_FR?9eQpgU[[E9dC)i}!kɋDŽ^Oj8FN&'*e`OvnnNxgtb#>Eju+#bQqXsU[I<;K`q> u#dELYNd]@DneNJոihLS$v+wѯ)OHΝC?䅙m lb Tw(e \u%s>]+/P'doaˣ{{ "/4ru:bzu=HD)L@5)S*j~Ո]MYɌawREߦq `%ډ3wo*4SmѷfG~A͸^:T܄/)p"=M:jIBO{q6wL*ԲsRjtfYגX }cw 5ld@\#!E32;L,3i#U-xB& EQ=khoeRfU߬&>(p$ BH sRO VLI VtPll\@MjԔ  a9UX?c\mZXۙ+2z[uϰҋo;Q,Ccؚ4lϋ Yz5[۲*2|/-kԽQB`eEQhҝgL0Lzʭ&ݐE{[;3RG\L+Xs-KM`dYN,ouf [ތ/D ZC4XY[<1V:Y7h*sb6KT-VE>bX-%Bl(wBI_A.85Ңm!ڢ.Tk=hgb`j}^-f~!"PGgDS3.q(kNH*KVAc+7 jt"/Ece1!uzo0WnCø$?syګwAoA+*Ho!s,uk~} <,즇_y²F-nA(:r$/XkQO^M\d}L ]&[fVU9+B:& "4,Gp#kKCM?o/Q`4lrKԩbWrFS;o6*Wyr,zǤpnT{&ϚI5a'|2V2sd vw]Esdi#Cx*߱ѯy~57r_NŠ#dװ`8cWO|נj#V}HgttA?|jq#ҥze1[E6Fe± ︠.1fU9BÎj zRGl]2uy^m5lō=^;'1oIkGCM=hB7` X2/:Bx'1yRʉi顙FTK<޼QL$N AE M$45o]/1@5A1 `Z: ( 0FC\ |ToJXFPɿpGoÏ1Ip,ocebC%de$cF^lAOqX>/+QhMJz Y JPBP~t4])2 9\59es IzKwt/ ΥR,ZP7.oZ}Dv9%4)R %Fnze5{ɚůt .tTƓ컃Z{wCsnp2 Oe -l[¹ ,zNKQ):UH-S&Mp1F}/usTY] E<~>g 5L_ӈ7dGKt]gZay KJ=_U=J{*pNtȵ9l5XX؞+)!8 sg)X*ZCB6s}=R|>^gǟX[j1 Cޛ;mQ`!Oc0_CB(QQ"lND%fp׮{,ԑM:= y6EV=.qkC̖qw $If|6ձM$ťpeb1)c)tnkPވ )c{{;= 3f^=k=Hd.R Kx7i{OȪ<mU{/#Ѻԍsdf P3 n1OFCQ5VwOzWPtZb4ۅ98F4(0S7|(X&L}1-Ύz3 z{~5!G;fED/"^uSE* Z ^E2PP6qeOUT;aph ](?> 3oKj,Qeo {|~ Pzm owJ~\ Dd n;:6~SQꏁv5#V S۟zKsck*PT`۝ Y )ۘh|̵aPyKム1kT1ʚJ./_ZTՇtmO/Vi]z]]#{o TؽJFUn!ܛId_Cۍ4G9On7S.ˆL vs<%`l :m"}y"iϧ^J35v ˮ b]&1u;ZO&G'?K`6+ݎqIY8|/]ӗATI3_Z!rZvBaί6!6LB%8lw9Q&,9*Cݼj]$b^mi]4 +R^mZSdV?v=yտv\x'38_A!E;M? rυ0…K;,6WW oXהO<ed$ׇQ4d@N`:e&muJbۂT?iRF$ۇ(H&N~9 0fw])&Cu'\ \G`T!Wݏ˷ ;z.p y_)(J-B&'swunz 'a0*I]; P-_+4q_7`Ǚ1'aCIIF e^G*v_NV"|Ùu>xM~_Vp/gޠ?%ٮ!_.Hd䬬]C@JRЧWߞTQ}nնrC:l\;NoMl/|y)g =Zȋ(3~dNCDW4A[…us@AR+SNf;֜>\V78glZ!n:BDn^GƄ"Uv7ܙLjm*_:&@:Ԧ#^K"`f5WIFn 'tͣmn7[$* 3~,vN>*˰10ϭDA c.W@],mږBEUvccD qQiի\'ddҔ&mi|^2W(CMnM!AJ(Eq,Xr@ 5*nXs]N(:9U5ὂ( tKԍnijV ˔prauCkeK;#YyL'`R*^+ b|N`UU꟧`X|Ng1fdUB~&Sf-^P!WL ťpns|;p:n $9Og -qO1Df=zTQA6tE7ѮɈiR^_桸TEfH$a{(3S)"vret"yk`C^p2_Bg?蓸O{n\*5{1>ń.wW$d ρކ#VqG=C Fr?,w׻&b?GbUw֮C2GYBsCI`Kq q5G!,;D5w LOsWe?IN$fȨJ{Pe2;F (nI-Pb~3^>㸘Ȏ}Gyi/jDYƵߵSwqekMG53WbsQWE >vDRMZau16xtSpx83U9 ư&~oI>^qO+÷>5>zɴ%IJJ̪#=`.CTӨWmDߪO#HøK)/+\-K!9Hs=\ tqZ'-NٌL!Q}{xgr 0ݠUh6K_ix.K6~8Έ֢za`)7 T[ԎWx鹚> wlV!t&BXU _\$H$ rl$B/lK&zDl]A%yg)c^{Gd%c*6]{-n|"W~aI/a^NֽO>ST<<5V@CqȌJ9R~cptWI1$q{j[4*GS*㎞*&D0k9'<=S< Җl?% 'gTadoOVlؖju[J,ݿCq q8&kՎ]=~*E!u72Ir⒓:**P !l/iFffʆ-cjx'"йwv8Lprx]:Q < %_|xl/q6uA:؇>~Β>%$~8cGXiyCV4TvSFY wQ,f_\SVc!P-ޘ*߮V`=NNI4#L3?x"ґKR?j;[f?҂G%vMVgz8$e~K}@h5|jƓ)Gx xfS?ÎMmk5*h6hyRw1×URS' }gEІ]&X9b]n]erU0 Ui{YV3/OCSQј / S5%rt#9*[?; g韾6ҒeUkS]]Gae}{| FMTry(ПrB.0rX<8 $v %G~\Ci_-|ៈ9'JR ,lij\7f}rN~ī˷ pa9K[%5ñڞG>DxjIF1g?;yjSde!B][F╻Ժv "`t ;ȏxtk`Tv-v]>[>$Lg?|67 C,Dp&ީQz$&B]֛a?qJ~:i*bf~؀:5$-[LZG@MN#ȁ8?<|o@WMCnc?f2\\1XR3&^{Zd.X󆸰UG`}yJdJ10h a" %K ^#oN6\ hR"\LyЍr\o޼uFlrZ?*|^a{r.&=mji $͸t$vƂK+a?yMɀm\PToإQcms Z8fbrAc[BC/QݼB #6E xNҙdۉ#ͨJfq훳+gtqT/?ډ1lKV D,@S5%x:Yt"k!=oۨv vxpVX6۸̒|g cLƐH1%>t' (^!sIhBbS }i ވ5UFPc8$؟9WϢ;+e3sqx*?Ge3|L֐'JL :D?+oÄb-2$ӼHw܆Mu][G'~ޕ2g0$׆bȨ-Y" r*Ƌ'M:z[hKp+5QƔ!g?Ȅ1J.f)Zň쵲.'CgbVbZSgfK <Jb(04IcmxR } ϸ\e_mjO50.Te* ^ɠk j1W0vi3Ty_[Iֱs+ƊZ,`,aOk TkhQjاzΦC{vuVOPY% !`TxSe Tn#Ƿ+ pG3}5< ە;6AP6>3<zp9S_XJ%^vȰ?kxvh/vۘy|kw@f&Fwo9$76k)v\#۾k|GAfj&+ܸlj~|]X׍bV_xa9A%@i#c_X;Fr8A{#0nMFfv_ ZV 唦|:ٗG֌[XJmw$^TeU;]=?RoL~c#&P1fp;LUzkYbqb9>>4@tĶwhQhn{Bp׺qBI<%%V5[gNҟ򵎭e|z:xxJ2 _#Q':Bk CƐiwjc3X36&6! )2W-_NA񥍂9ijIҔ*tыT,8SΪ]j2q%DiFrz7wvKLtـX <})Ahnu+(RͰU,M%eKtA92#`/jWVF~%5)FO<ݮ﻾IXȣ݃ +|hr&6TM #W>Ac&l0*PF~0^A$^U<XPڱ1wn-a9"zTEZ|)ϜbNH'cG;>jAba0ZsIHbТ36Sg+:%ԼWpZe(azHNr%*"Ұ*DB r6a ;؍PQ61ƲJow6%D1O*Vɲ;+O+I 2(V6ݾ )2Ym0AsQ훸ff&{%OW[6ҧL NC DsbዔOK5Pi ?hz; < ='Yj tS[u+Yl5Ny jꢢ])}ǔ'r}S5^ȟ2=ZaZ .r-[~]0̓dE>1Sdf6$֛Rq6Z3[y#9 2RюPqZ=0cT O5Ym`ztrq5~BlTp{c#xS+݁/] `BǺf TGakגR}t"]nf߫~6y+} 2/Y:Ā7) Be%S0[`/.84k)2̢UV2#db):(HG]ltiۿ,e0IonUF?]B8=pޏϨ\aM'5 cM@oxyg)̚X1E|iCSĹ#ld8~>K,a=™IN_b9àVk +]0(IT7}b`om!22옏@KmYl:#44O#c6kJ`"_' 5ߍzj7 쳿 n4xGR' ۣ8j^#bc2 dh"(~E=<$)ѧ И$n(M<;&mON%+4TQr;'rוb6;"JxRt/75.||pٕ;R4Zc#3Aƭd_$Q fMlWZ h%rr@ -n>`v3noFT&sfk=1Ҥ0x:P8'Ym],|ꊍ|UtGJ-h4v ’h>B_mG囈==3!CÒsR-_9s84'<%:y.Y{v`4]76+E3 n~tョ*偰ó=$u%T! *)@,i_4 !&y@Z{<-, A%F15rߗ fKI(v,H|ʊF}#i.iQ- GI !2e$~3*S t^6K/ߓ}}zR PRXл#Nes?Jj$35:uX3gP߮ eh"88xaOv*)"Z #Ԝ`E' S^b&Sh:[%tP7Uo『{>q66 /C G\G9fWS%#Xrp~! r6Ѐ^ 'E? 7%/4OTw3Oa'S[:YZXCx4S^1>1mo5rw}6x>^m=;pѥmՊ GXh{ԨČ}򖧺tBtGϝqYk͙ʵ&;9PbksfΏ XYDVF6oKc e E=7" 3!JcwCv8lWr jlngKLYFŗpMt@>!ȯK.Y@o1Rs<~?\?{?4Qlζ1̲;yMjwTOw}?F:=ۇ1lA:PS̳ >Ѫl$ ҃8ˬ'u6s{xN6JL>%/@=׵WF|} tILmӦj,I.|9&FB,Fz `3cpcj@)ZZӃ; ;o,a:rv|fKzH8#U,]VZ2u Ը0!S[ʁvO.N4>RL;e$JHVa.TVi)b-_&R{)p+le2ؚESjnwGq=x/mL|]3i|Έ!?0Ȅ=-@.gOzݶ`Xu_jPi֔2Aa .STۣe&a03W}V֪:j?ZD3qYM! 0V;J"b-{LtLRg”cbirDrTZ9?d@uAͽg-зzX/`KhDa:yGKN 1!X:ssmZ6Y(} V.Km"!yI;#ߤ`*tj/ޚ^o.{gե &Rm 4Je)sMNN{w9Zx=zDs?0h0s#a2 L=6Ĭn {yKԡՙU6uCXo9 ɣ3'd6򜩙t)t.$e}wwhI*mUKRB 41fW2Elq sX̰x^ +ANb37DKYsU3A\Ih9!ybmV$RP8 ONGCve_zOɈhYy[p17aAPSEIQ6dNbшqJO^xw%8ƫl3T[@P*-< ]m1SLpתh5t2{T{%S~J`4-%ۛnpEWEdvԉqŽ !ȒXUݎ|=|DmTb)If,dVMàdU Y,3xوAjUO2p H}QycdxVJ;C:ݡYa2v _'B1K#ǒ["zC`y"e6 A.J+2?QSDTd!О.|~_doqB,E bl6lJceUlPv_Yk}bY>_EMtiq0vCƱ7aR>#޷ڪ#&- q*k&K!O$>K .^v[aoT\)huC~Fgڦ~b궯DCG~䘻J0C% -&^[8|1~ Dbeܳ/FD|N@=X@8 $/yG#"^M9zf??-C$oSRSgW&G5ql(ܛeHmѼ;ֻU0* @-"; F&O}z0WQ̣!Mjql :].VS2 wЦ}KVA {^3iIjH&8u$@7n&w $J IR =Xޚxܯq4 \JDً&h6pt̻lo\%(lxށsq0uA+.{;2Pȃc*i9 sAVa_!,$b$ƺbRqL}U&ZWH'w1qJN Cє1K_E>R'ٜ_3|?M᧬kGuW0؋VQ :n*IUFq!I@t;d>kT [[~V2Zͅ𭊏tXW (lv\bo6+ ٳKץ@,ħ󸾰ɡsj3,?.DATS 4 aU*X)⊔I @SU ǏC/ŞSW/XkwH)68 2gmW󆲢 Øej)r~Mkφ8 @,9)w5*dOq.44B M:e/ ! ż40%R¯F2I@| Ԫeڙ!і4@B+-!KaK}J~2qO3:8A3>LPAežEtrÒA",::ܾRa8Uj!dƬZo2 6@q]~t\cyZ {MZ`{;;wo$ӚּDd(kK}UFɾ⛎[[` 9'n=a4J}PWm]uf 64 {NoZqϷ@e*4)\eIkkz]*:<@|6L q)u_f ~S4[#]pąF7^C%inyO*CcUͅdU\aR`]ŴI-k,|WYI/]{n>~ў83e C!A&l9#hEA }b<ܐ3~XdqI"L91tH9qWſ6Pa9;&M?rf'CKKyT47pCo0p{soVMa˄R]K2O޵Hc4Cz J1GXq"n3⣑H^j녃ܭ:|Ю[)9]FjV;3gީ:wZgi ~9ú+`e]gpg. 4t]>?X>Ƿ#zVP 9ō H!Bjw~؛1 x qBJW>Jcoby ~^4&ڠ˹"R4jR݇m-5/,e_5VG @Y/433L{x' z1;x,'_z}'4Ɔb i{#%pnz 76-E#\?AgMf>e`&Ŷn?ka F(˖AWH((9=Lh?;pZmi*eKl) ܪk5_;C%S 6NG\)s(d]i˲;w7/&|qMѓZ֫¢fۢC%7Rѽ*nw ʚ?QnWf,#.eъ IDFH0uJo?w>u<ԡ峿Xe ΔmK@R>~huV\;N8[֋nrmc?Z5!V#IVyz[{2.y~HXYA8y1"KV{IKv5TT)ċ0ˀ XFo_(4A:ʦ]jI QkԯuvbWޡ5MERvlA[jGŠ0Lo\\5b\_FRq@Nxc-5W ګq"e.JmW. c>( 3L!wsú;n1ON +=¡E7{:pE8qCJ^-\[/M=_SSIRovݭ,Gb =*AQ)hbwcb0*G,Jv6ÔdsU'KuU@:y:aD?:P[kGlF,'d2^o޾wڳ9Gfe0!MQI|M}kEw#&zp1ώKh?0ח \Œ@ru Fa7̶0YM̀֞#& r.'%[7ўzjrJr ~bFӛR\,csYVP]FÖCA2LSGTo,yO2_qK,F`FFc +.ntc!qWn~ܤph8fH`U_Kp' s1/&a/,G {^wi:~)5H:W?C=U,2!8(xb[:9bg>'̼ :~Ss5>.;k3HG#GuhWsz0 z&%5jbAN_2O~4DP.emRJ7!%>ʢ9*4Muj3jϨN9WV ;SdY&)ȖYF%Dt7_ݬkRoJU|y/C)ʯMWB 4S̩@:OwKQ}'~WLJPp_+.%@l;GW6 =ye`.rą^ͅ(C!z?\{ҡL #eDB>S>@~zF*vXy:6"KR}C_(7W#oz)S|u:e VNx{.VLZ})m_>(f4eiYy&v ?& `7K 4T^!/<8_+گjϿǭ%uqٲbnPyM>/`Q}%h쥌ƻ7ӶG 'SkXXl ԨE!,̟[xbA3UR5[zTx&^*CwI:(%S&zpjȱ,`U,F&~\$%y!na2~22lɉ̗>rM}I/[@X2q_ӎ;g>fpyo )0&kxuJޑ%3Qz%w*esl¨aC="d][U cзV$sQ\t]i5vLmEdaLaiHcȱ $re^~~*:l*BDòO'}g' FǤ0Thf|6-y;*7"|Z"R$[&"X@M6h&6_'W >FIvP]j svHcaLJ\G:,O,ƖK8 &}zxk $T?J]s3u\{ת¢*(.wg`X~CSɉ幔LV%v^F UqyEHɘ˹5M%}݌|Ъ2+܉Q6=P&a `k}eds<9ApչG7C)D̎ϦٝTM'؇ouIuA8S&KycOYq0y15sgTH uqH;jwe;{ySt Y ^ 2ƻ{+]zulZ3\Nõ?Rún&UZo ce^A$l!8%@z|QLeXkk)jvZE4o<ˡMY/|>0TJOQ)KxMFP&&@l~rʤFVHt(s-!5VL=yvFM;5sEGZVyM:DpoHH MBj(" :B.֓Ԟ@?]\c4kޚY zr9.785zĴ^n<ؙedL`L٦3nlrjo-jܵ EqwI &0ͦΛ)+ޮr/X j*jn*hyc7fn[SYzڤ&w G C WWFf… #ݼΌ8*Clug&N+n+=TFt,by1k .DdiVQ14P8AOǝoA3BSz#`Cw{}ʢSj~ na\T校 R"kcy$e#.6I|f+Q;=wZ8ەicUmD )|f \ާ :jG qq96clŎ@`@rNT)d~ĒiGcthxV"]:qߤO1"38mn h|l4KD?Wj?@t-Aͫ /%K\­L0ENfEWtJG|c:T9;l[ Xc1A' h!cNhA)=+i;YPc?H<ȏO|u^l;c kk[OlU*rX4duē%w$55 LΜXͦi /[#*K}a9I@"xޖ. nez29Y>x;,R-cPm=L`аbtCMqaxMx^ǩwAВm2[s{{`*s%Q<)֞ZTCV?î̮Z=۪-ey[SksFa pP  ynRK:= ]ģ /];xe.M4  -7UWZ7wm3֣Á8 Q/L g4t=ftyn2(~2|M$DOo,@ |;yio3TH1Din@vA>Ȁ3t U ԃޒ<aMzrR?!Q=^6~U ? yݫ )+h r#/Ym\(_4ao_L$h*=ҰZwΊ O~_:Q>A/rs;Vdf &} }q\d6^snp RF?vlIݵ%sfzf 0iu8}tQMFM6xH`?(1x%JM'5-,'$q0ܘqo@!4} ܍(HqJH#'YzM72RBJ}e1U༼qya~]opͥ8 +.Ԑ>~̾+vZ溁 C aDzLF9Hšp{/f494zܱg}O$ѾؤAEgHQ" 7qt!W J+Jk]cgpjv= B$ZcwQ(IxuL cCsS?U7Xv\҂EuxW4ͩ <+3+(?QjcX/YVг{0T&CH@bV*y#h\6GRSc;C{>q&h346N]sPRyط_r!6XZ4'ogiRD,sdNlWB 4UeSoD\W+E2":QBW,70C >,ib?<ך60yxMٷC3G: p[AJj</!Qݸ VNRSPrTY4VuX̛چu6)&K‚]t *;bap)jF+;,rmUOxw='WW+DMpPgTsEgpRžDMl*ư1|n/PWu/z&rT obmFF&h&jDK'wZY ,Vh[+42nnF;# $h]T p6[X.,* #&^|Wt+c8QrgdL76MXsa EޢY(P7xF ˘b]tuԾt:7D+eJ㰋e/U2p:2IMϻB)xL鳟\͚5-shYS*=80̗?5m1dq!ydmC՞R@(^GщlEivT w8(i= Zۊ4i>!7 -, tDUb4 -&\v?!Ǯ@%]dvik 0x볥 [nYqO-q`dm PO'|:`Fefl2a>r!ZuLK6{RSx,x=Q%0j\6ߘx mvNFp@fF6^0YCO OEY${*aHV:9sqe~4{AtG7mvS5Jo'mijtڳ4BAQlŠd(.`F7*Z|a oY _&mL\7A812pN r(H+7#͕t_12mI)g2ryp=o\fPH9 J oʐFV6`ěU*hДhG0i*S7$L"&ZcEq9!X];>{)i:InNY0Zh{r`Oݜ)Z՘Dvdzk0^Wlc 'y']VA|e֔T ӧ)4 " Et$T}A_6# rs9]||E}T$`p3ok;5ZH͛:S.3 vI41;~.|"Vn=yRdZJ{)xRLNP`f:Iݯs #KgG^}™Lv[K|f &ӎbZzl=HP. Ĭx>C_dUj',Th'n5St Jƛ i JB8nřyz>9nV8ݸCB7<5MFF&OńЌ5pOc&ddX{0Hh,%Dɓ  ́~Io&`-/Ъ녂NkJzߚH㵐QqIꏁŭƖK>"`{miNQa//Þx]x ik\p@;\Ckqsy33ռ0jMRYHù?IEP'Gg,?MWnYP(\A~jA'Z."JiNWR}az'Y2gqN^rC1!cs|m皐Zqlbb`s$5]!v`⚻ߺ7h|p6O1x ^]ԉ `7kdi1%DVRɁLWH⦲u~7¨֞ \>['S?4&b119ϣ*߷&FuND]T[}H:aA(@7DA0Do:p_:߃DřWƄ.p^W٤ƍ!oHLǢ , D;ba>ldAzZLR%Ms:LvqԐ7jķ@%9iٜ ]#{ۥpnn;a D9% .VEP适s@w$^G橔vju5҃34RhFMuO$%}$+/XAٹUv1;\UY~kG-""uE}W\/c;2dkEk.s}?{]_ÙՏk!nD"q lU-74%L |k/3'YdNoj'!3c$݅0~l4C;y;-!h S"QŚLz=79 }|#WmZWJt9mkϙϪcSBU Τs, SP0KcL(-ɏKz$Ma# iEIkna9ٝ*ۍHK[/Q w 3)>h|^)8wfJ܍TMOOG Ճ[7#bI)4?QRu\ծU_.ekİ퉹Izxt+nod2>.WCwL;) alFfU ϭy$^Ք%{zJZaJEk c1|i_#H@f>#_6wp+B.ȴq}$IOII+OeIK\oZtߢg)|Zi˘w8.xd{ Z'K!AكI8wwX!]_i>˺?ØW1ӆbsӕ\avX!u.wجo**Q-$R#P@P*EPՇw<Ε.55vuDtҟo KisYӻ40ic$v NLDmىPM&#{'ImOCv 6\Q,h3^ 2#YҖPGQ9d2Դ)_m0gJg40wG !jr緲/Xq6 5){7+q镜Zl)@\ 辌[HW0): Ydn@8^+I$#ƽ5>C3ưdzKU^IukB9+f%􎟗0[=vf!wyAZH!_`W^4&ϟFAJ ID1Gae^t&c HM03 %mCGKxvǜ=a CBӵMfbmh3 2!$G!qj 8DfQApHQH/&!\k Q 2w6yԼ߇~Ѝ3abBZ3)FsڼQSTs5GMDdBuY뎈G04ic2!*!Ń[>M}2]}QZ\|^&4b% _e Bl]&Lz_\# !)wi(:XuyruXvZX 5?wXF- L k*jQ o F~<A{>hp lY",O9Ҁwwb"ysZ^+Ƨ+E//e@( b9M}9~W-΀>W)FяND%*z,z 7ʲpșS&Zxy7$[# ڑ-JXVcxlL1`W6cbhXUhqh $=in, MB4\\"(D0E$8Ulp\C1_˰[)qI@NB)liLznN$j`ܔ^>XP07wLzq~7HJ?wzg׊#SТEKM5~F/ɼiWU*)eÇ-b0K*}kb^w$ut"7^Ů7_+%a2^`I;\gB@8/N`|.M3ʻ򾾤wmLaL@Hb}]C*Qx|Z3 D` dlk4̥!毴}T&y&} `rLtDPFF*\ڝq}!Rv]Y4l8vTyt70.WZ%]fI0X9^T&+є;BPoAmȳ6cmVe~:m꾘PþȞT&lݿ Tn)vN5E9=y焔V&tV cUBC"F3$i;%{JGR ,iKc3Ywrjp*i5 $]F/7!ӐY&>O>.+ d깷}F?ުC9zxbRaRIh,pXKn (fA!֗x"D^)@嶦;uԳkctΗcOzUXg؅sPz^3DN1;虝,~J&+VZd+Oʲ\[w"r>6EQbdmAoJ݉&%zK$I:*.A?r}ֲUe=TNxC gHFpy/$!U 6YnHE{)]JJ"NDd zϪ"ӷy55*>|]@MM?O[6$m؈+#(WO"l byq!d //[5#(:fPŮ[^">tŘயCN IY4:ʍQHlu˲9%Ӄ1niw>n6.AЉ*Qaئ57.s] Kdz[<+YJs/LBK#Hp&髶fV=re* I0C v aק#ϓ7M'G,l_WQTĝݚUU gb`p| Ș'Q2#׺6e pHw )nc="ᜦeSRl|KG1fO֖ދ'K&G MjA?W3*ܮd鍔^9mآmEn î r[U=fBZ.5tBaX('d ~-ۚ rjl|axsnڜV{Q Arq̷Wb+S˝X0¨?HC 1k6f/3KOyR;cLDR^k jRI{?͋5`p/ÉpY)o| |7I~g'R^P^21(7Ab[&T7wCB#)/Gҿ%枧f4h] ;SVuE4EX*QT0\j0*XtA"b9!IX` x*G~Z2Dh_<-/=ߖreH㢒BcԸ.Kfi娣viFul94FWR |Xϙ^n =r0VV5'#ulLt\ a#Ѧt016M[-n JF7]ys'^AU5(yT#|+0i,q ى/S-^k8e?mAj ׉# eIaL^Y2~OG&~VzpŽIK+eKҨjshzbdkfvL(NR|<>@u7Pzn:bhԔhPYy8ĞsÝ/ܘB&L(HR7cb42][y5N2g^}(^v4";,,IPR1^2Zn ɔ?X2햅nKVyAHX$_Ero. T?HJ1m𭄴gg2'),VE&Bk* '95([S~DƙMV _>ucb\m BO xJPCФ} [KʐmIu< M H!'{bv|}ɥ*żn%?5 ht8U ڹT,>`m͏ O zB~u\xGl] +XA 8Io[2,$Wcia-2_Y.`Ԭ4;Kl+z:{Pz&G7f>{^D.38!8s"d>4>.`!c@8@mO[>$AY s>l9 {( ˺C\Hii)XTǘ+6&6y<_%{"ΝPn yHZ 3#W{6\`1=#s4mR&6JAY4!BCEQsR(nDQf&Ӑ jp ͇"^umO(K&EDWM"Msϗ*ȟοY 2żPr {p#1\Jv)`~ g#IyB`?3c'U8r2YПazׂ=ظzv9b))[]9IsȌeT- h6]y] ρgx?>kh\+|փN}U8Fk{qA).kX^#uG e#uuw?NAhwS4ҁ@hF9Z\6W`8[F|э@tTkZǟdrhW !SwƬn^vI|u||"A_3h1׀x@rб[ $܆R&=hZۙy윾bz.@ U& Y&&BF[G T^Es},?&ЪE'.0\xpŒ742'қsfD' 'tAQj$pQ&R 3 ʘɂɅycv=9Wf}ϻrqK1!Ə-#ğdaG>y6v;m9$"̅p{zqUY3vŀujbh؟w 'Yu`X:o{ 2ą`_Zj3P%DEoy Qij@$<஡E G-x6wϊezsU W@ gXAQlR@ 52g0i^M#0G܎CnQNxP^P R>zI=k!aaL}N._T:׈x"h GQ7 hyS53n <2 t_XGuB]`7 :"6؄@^?_ \REz]#ae$Ky)2iLjE4,ì k.hIxWog!;䠝 кXG`@F"Tq\v!~ϡS|XP7qvҲE|r%l P9:xUi,tֽ b.ϮềZGJ%zu# bYقO[t fx;xdY\ _7]%$bdlw=nr+4S:U0-.6 S\y7E{<4fJҵލ4ޟ~i7, oԵ@i6e_,4?:^KmR)qDu/3hn 43V9m3'D;/ˡ1ke79Y#tA4=WۑC4GD>8 $0?gx&]纪6*y3D`'Vw㎧S9g|iMYQB sC½TmueP{*0;澺ˣ0ϛYO ss0*vCvƽ3 @gf2Í,@1 $B:F4_E`ku ~mQ?ԭK7Lͳ~@NɹA=>s*5"ڕ0Bp*hXgN~ ?"?귕nIuE񉜱먴6nI.Ӡ^kc㗚 c̗.#JP_? ZR2=KNblױ^vd;ǒdUavsO׶W_H/Em33(q]i'?$:F3z:a?u{Nr8E@>̷*K)@8`oh AůLwpYZEטP'1vjt68727_hN-cb*Q[F0]"i"ᲃ(iL kNNEj"kQ|NxTɀ7<BWL54A @Eٟz3C7;d`Q2l {q:2Re5 :DzKlVjPtO_s Qkgc97<8=F]!<l~iƻ O:" Pt6'UjȣB'fvz|u~  c* AȕN+a)3Ee@>KЊq+;񜲴KszsD 2|r9;)v;BvX᧯'n]DNAΔ֥5wΓOmxTAcxU՝֍灛4mUAbF?+z~Gg̉wKhZf1*Gh9CHJ\Q ]QԄ0`s ȧ8dI!#:M9wNo3j.|ޯ'ߵi=87u98-(h 8l 05[v1u(m ?ƌ%E$~k`ta#=v<[d3_2E\gAy31:~,7qaѯ &IYWQ:HAÇ{KuZgD/V VzW;僔w5\JK{3i!4Ds+<<)B f(=2ge*DSNUt F$z!SAOH A 25}"㮱# mo]mWv~!\%XM廡H_ND59Xui7sÁ}i@厏@ ZҚn8D~P*3Ӕ'lߟ&uuF#swTE D(RO/pepok$Wtya_/%^#ϓbJ_5d>ZE.$l&Uµ;8!\1y>f׳Iys9'`A=m6(CYɛ "~B ?dG&sȮ08BX)*Go ȟcPW "/xc@ܝ`DOgԁ3vZ {(KXz \2'avcFȄx鯘 |nnYµU#X|-,€ `^{g6)Pq~bdЬ=a*3DLPM1)}!|v3Hq\ M( ]BV- 3M1Eܔa`(B<\Ĝրo_Gjê]M?>FLc N۱|4 N(M,ǒ^8yW=HWLG3Pts&Uґ$ z_*K- pgw,#s" g@b򞍒2o7xp,twػͻf-A!Sdj)6.qq-0fdwM:ΣK">H x&P>v-Ku>j[xkqoy@j=h|ڞ"W/QȱKǔڠsB>a?  J&sФI{әR^.!6b%|O꒗eyb84c(,7c ^wt ctW hEv xbg#`]y|czWZYDGek:ʪڻS]$T~p ^7 @u8\,VȾǼ\m:;Zjʍw]IWp7宗&6RAhe\=9\,Uɯc,WTm,5R\ofΖ~Oczh~:<p9a::G"Lu-cҕ˔1Ssƀ!2*Azg1Ƨ~r˳\5gENOV*.:uL o@qd!'jT/ ̂VZ[t;eT O]ރ,d rSbq1 r%< l a{9^_bTɲ.?/i^qϣKJbtKs5?\,x$0ߝ#_}H k7) 3! 5^Q,mj/@pVv^jl[hnHo ?Ny38s+_Y3N^(gYܹ ?ȼv/`p(f?2<5mDu1Cm[w|oS#Aan2J^)j[ii> ]4v+ qc\(T;r!+dAF7X2YU<ɏ=ZdCҴJ~z; ?w@!(FWgi`(bp7c/22L≉ft&f򂓃Md"H蘫Plߩ) 9a,xFCp\ 2罫ęa5x:>)}Evgh8!qT@fd+E Pq?[%t*+LpHNzN{܌@ !&MXp #k)SIv2bR$451Oz#g\6?+|3-nL_O{XznRGE B#aW%|Oq0Z~*]ڑ/QB>f hᬟhX$A![~ DQ\J1δ>QԺZ][Cut|u 0<Ȟ9fsA]@\ҬN.k> z1^B,ekE缲zy{2bpۥsBnP-kqf 63t:c\mMS\] |h@~{MT|s4/rbmϋDK6AOe?ef J@`OF - ;kph*@IQ^-u-Hڱd1wDN1?o2)*-{i@+%ZK#_Gq &ל> ?X(UDk'U;|3^pi46U;_F/@R}R{!~@TQKΤߙEem =/8~ ?%=SFLN2~0Lt!'wA8QM;*@<X +Kzcnzu6DED2Yے+[b2^P3ěBቶ@YxXg\#G LF!h.<['Q}XᄊRWxsb-o{܍9T RɭL0lO^e呩|x σwca>%8lBrKxLs% :a'^ #3 7GCŭNɷE)$פ+*-9H!(kqzs!.2s F3DfZ?c5xu~ !eNRPTkc@լz+ȹoRħX&ֻy nn~OՔڙwZU /g֢XR'/5x2ϥq:w [ s+yK'yJ? w=^vB aFD͙Hu0Lr9ePB8 0lQ;}PtzhrVyf rJw/үKḡk~ZƓ HޖAAk)28[Go /Ĭ?U 6 2EpS@}vL4+z{ U _~(o/}rE.bS3Lҹ{[#f( $!tUl HpMwǝQAn~ŪDGLa)"+Ȃ٭>$c0KʒܐO~ $,o:QXNnu-ZO_^]!䇈l+;vAZӱ*ow!*2`-ƅĨ1O I]lO&Zp~(&Z72h"ޖFU;ҭk B9WRXΛk\7+F]`ڨc.@`~зiIg`aʥ7oZV襣[b~t*+ s<ʼnK" K0Ce'ǩ&tz+"(G",)DPҷs?x=pw?o w=FRaMhC!f |Eqt>^-q&-?Ċp%a}~abn|н\$a6Ff "Q`v|p8$U%g`(Npxߡ1,E  Okz1=&1NXef IJ83cq.R ez`g'T㤄&1խ7n#<Y0A]R-3I9,ڝߙb՛_q͍Sd ZJR" Z:dVD<24o]KsN UJCy9lD~bڸzD5SU@E 00$`V#6f~vN1F(s m}/01{Y >\֮G6MUhʷ< V~Ũ?цxnUh\Ѩ0b5`l\w MuwzK%)бU!_"RӸv`OiPZq֠\溶աpv z7u,c9h&I?}ǸKO "\nnh}+8de1lטl*ab{Щhj5i)#)LTրZn~qJ1]d/sIh 43w cp98eO^JL@@rbc0Ve')mS2۫-#35i'6rM힁qŏBbǢ}55i܋7 +Ns-B@H643,OY-2 @- =ݤF1jĦ.ކngD<*rҕ MWc,ٺ"Ϳ6{2s BXi5dnq=8WG DvfϦh啒輫,[qhW] 7)uI if/rh{2] ':i|" ,I :hQ\Mh\wg@:w``Ó#j&U?ze%0 o!ϟv$0~"cX17o7moXnҠx@ĹZ `c *Jz3'Y!n.\Аq-~mNJW?3B/0#P?"!;9Es d ~B{ktLv;bnkz]Y1,FbrZ 095x4вz#w`qyfE/t}6/@ &ds7Tc`;eYPg! ۽lrm{?אi"֙+;t[(U2CNQ\9$UQt&)1 NLjcV|?ُ!,b%omE,$SE֋XVZ`w|\]WSeZ|AS G+qbbA*ͤJ8:^k?NzlW Xb<ȣݿˆp k1lv/PEo`w#NjUJPX1k/uL09 w sLJ10(BkdvgMg#?@f?9QWezg0팊{ P:AK`a~lgp0?!1Q.ԺH/5t%p b3SRHՒuC^pjhE$Z9Inp 9C%xt6xs\[pb͆ 7O.Bow]y:Byxv"A&7~\z5Wc!E eak̫Hs^s@b. ɾ4ĺMY-dC pzy 3GjFA)`YmFQ3}Β<$"iL:$`|jƔ:J-:\7y%&hRƿj0# Upgu!3P f} ttr*/VRUtu| AӔh 1(Ղl4~?gdH8S5@W7SY "2HS=@ ScSHO T\bJRfs\q7YSYUQ3PIlUc7揫 0G ?~ΕJ|P%͢x?ފj5ٙN%8$^4mN$Uc3!;ʪYLՈŒsg^h@o9cz݆C~,}nz eJSo#jx²qm.Jѯ̯vR0ea *ie#e\+}@vPBXj%[ɸ崝O Ę|픤]#}@@ "NM4o f}\!!HS̭(XN3Cȷذp &NA}P3-(5S]S[r9=^5oHĦO=(HŖa Ʀ3=D<$t4"j44_fѻ! ^;^Hwx۽T&D--JElа4~Ƙ+" Mr)*BKDl-Kՠ9q^e|71~5PdT8[l1gHgYm؞rő6902 ,%AGj^uv 7{y l#7<  +6k58/"MJ4"Od*w3 yc5\?H]YO XNl.\iGm| q[ '~ݼ4t+rŤb~t~g6 ō* lO&؀J2$ToHH7h_1@O |$؇X-\xiovMblOÔ]Vt` ?ZjR.@ UD2%vLs{'K$ad|qGME+k7R` )8#sgL%5.{hnY8yRͬRj(9F$H~GDAxe;CwC~|K? f0pc#KY{D']Ga;7E۵L~,>//AKFuȋ\i.WJhFmp\ ce8FX9 TBMdtn;#ծ_b*.{Abx ' $ n{S)yVPNezV@< ё]q4c%kúLo)ns\r'5r·]yS , *|*[}_ʧ7XL +X\ ;y^-ų]T5ƘP9 {כ>Qyo7JӎkJƟZ#$69;U C27y rO\U+;u[u3:Q }GgCn饤馂%l%s߲y|P!hcF>qy"?$7mzJZׯmix8+\wQ: xm`LՃğk+b pmS\GS@ aws>1.|vbEKXo+[^7ٛ%t\ƤЮ'R&v"лT.,I^q4ZKX>.1@F?VׂD|-;V*߯x h} :WX:?(yP"ufN&e.C!WOT_>ˇT2b'36$l #ŷkK< V/2c Nv m=̳OUh{.,ߝܽQ+h* PP!FS拘?MҪ #PNsbz&k/n25aQi!^0V+Y8cjjC@"ǓKӡQrDhpf8|Wxɞ~mCTq+e ۮYЈG0h5!Yf&o.`]"B.IS_/^+Ia*6@XMpc-5Wuy"jCx4ò'dJH*{e_R*ZKZ q)vQxT˾N:&|%SC-}|( ?*jG&*rPFUi22-#h"JkvDњYF4Wglqf3Z.%)DNw+ۦo[ѕf ҔȔ)"yb7EIo0UiVN@9*"Xz6g(gE&B[>ڒ twv+͈ⅴ<92q[:bo7!N} Xa䪊>Bl*FV<5j)|$ O. I񕊹OSP1ŧJpC\zl\m}7Ͷf\/q#SJė1/fנ2шE øP "ŠLH(@Rc gIg`wH2'y$N n3/g -:H! A7ȟ&4*(*ygR"Y!rGwIC/efbPRmKƓn$GM/y:YV9UPgm8BHH@QiU5V ecwNlH͵Zh WN,8&B^GI7Zn< >)h0>Y#a྇7ֽ@u-*2߶{K&"J,O'Y6̻g2 (+n- .ʿOlsЦa0V خ=ʢfXY}:xS8GH =$ [< WRڇh~oAdLh64)ZmCw  αbyh^W'Nc,{ѝl,3<3tSE"S`Fktڡ ‘+`iQ6]ײ*K#rgcZnQP!9ۖ]G! ;^NJg.Kn G&A+)Pw3zȨi!o^P^ϏR;'P6t" PjP}f>6ʺdoQ*,FۦL9媪vŃ|mWg9jЎu2zwJX)EnA;x8r^EoO>KcS^Ǿ\C*y&&CZ҅}pvks# \(r,RTI/f5+ .dX|kTs7Cm1~쉕mW=wU(~kyH*:$9fX;r(&#=&\1iXw7Edl$@ZR ?8Oޮa)۩}+n&tp|ΣjZ#IU*tDēWG _gI @`)I,:17BHBЬ\3bXA@A(V>pV>c#8wkXV/+2$vəF(m[OD޳:[| HԼ!>D(a5'% 8Pkp*EDkaPc]Do_ 䠟p\WB~[>IHsz^t>Pci}x5=V\+TV ,?bkX֐>G*x`GHMukHSQK%P ϩؼb-l?_S_ڹݝzmtEJm#Q tK"~]?_;r*}LL7O'XUF9~Ӄ ,mZ 13NڢosEL@].ST4+ya҉_R$B2GlR,6-($:#NYJDc&mĽQ;H?N 6,&bc CX# i/aX/qp4SeVc3,y^R 85Ȭx6i}kC#n 1^`Jr^r0 4'?y<Ӧpr`@P3qPnpGJoWʩeBC6o>ب_22pU`#Zl(MβT6Βx˲ω@63<\AtZw)7؜Q>9A10;\C<m>mT72!_4N}vQ- LdY 0i]h]NZ؈ǃ4>r f'z3z7(*;c, n@.o6Q}N*3΀Mʉ{99x*tY=[]SG[g^v>;5yԉȵOg]VT *<-]>E1݀[kyAo#1JN*chJnEh6l”y=9Mת5I5Zr_v"z;TE3d"79Aj#YmBvXΆ?:%bj"x0qNيxh)Z} KN$>\zT;]Nu2@b{ZHy&#*MZ9rFM/ŗlZb79w3An5:g>.#g ^F!^xtkdw'MVY;F\ZsQ],|9ո~C6MWRcWpeӘ'JҊ`MjZJւꚍ\ vS>zv3}s`]B| c^iPГGWdG^}PXh#6\žpu}JGmaC(pU+s+I^kJRb$gYZ1̕Z +NVsa5*.ϭ_c#Iݩf\i<|7j?D`Q! A=/ItXoVRE㞍яRɛ>m!z`=Ok}$c^h o/Rᐪ[о7֢)pMɝDavxv ő4x{0T,0.VrbXѱs.,Ao%U5 +X^b/39(AMitƿjL"bz2} %Fd1M:="܅8Z^#նL >y^L1K| _R#{4l.oav/*G)K^cY6rL:=}da*6~G>У)J%)Y=%qZd>ilW SՔLA+,X Np\u͘(+ɉ)_۰0 =!ae&zehRd*GԪrVx9: ."N|H7?Ot`!Pc"LI+ a?TI(E4jc_;hqhku0JL B6\t毪T;,lb1Qeoݑ~&ʾnk<>5O/OۺYpKA@{:q FFC%ͣ Вsa=8j5g!?O'3mAzш!,Y*;^ˈIt3pCag=-}2]u*#v!? jm@> ףiaa5eg`CM^N`i$kb/_ oXZz9UFl˼i1wٹ o۳!'"F5qJ֡@ǭ< X*tk6e ~.ܞɢ<"FgQ6X,M z[aVӾJMӮmuWĝo6M?}V+PNL,7O[cwAgՅj`a*Ƃs2v]sB};v& wKz̉: rlD5\pԸ鬠gZkGRIca$<0#ag0$mYٙ`uɩڋ_t tK,q  E"NӘ.~bQ 9.<[gFyb* }#e%ŵijOg9lL+ϲS+Ez8YN/0ZYUN_?oq tnư褫-KX9Qޝ 61mnRO&rǼ'JJ:\gVU,ӮU[GGlEV#E*YQ( XId8Z(#@4pҜRѾ=9w$k 7p0Q6.9ɃOB}'@`B MA!Q$iWҳ7}[]s5,8͈bk)8U|h5g!5ԧbV1H{,SGmzS]i!?KE'&' 6"tfixx-ԗu_N;%v ^ɭ A:Rfq,y4B w_OAخiտfrc)qWk7Y4%kO-آ: #L˓Z???T_W^[x} :aoן # Ņ-^q8| A)+$*`Pʁxy|(ցQrg]%p/0LK_wT7 |Je6כ;{RփȀCbw~WjmE/yNFo>W0SMLqDurؚ_A5C݉rH:ڤK!L;9/;`4Ἤe#KH&5X!!LM*`q`>Cϥ_׃l4s(ho8% ̫Gɭo! Zi{甾QB.?w^a>|HcVG>-&yBۣtw?|H=uCg!InO6X$ e1zJ'ҽde[\(դ1$2?(OO"ܻcds,u{L:.f۲j.y?),.=4+>??C%\j|AjZݿp)(o ݀4$UxL)'l0= ~$VK~@xqbϓq"S Z6\rQpHp#SU>O@M |C-Pk~ T6[ d(]w]+xـ̀hyy³L33/,Q$?M7zGsV⚧T_$U"_Q CMU#23vhwD78_Io>fOxSl]b[;fJv5=̈́ #~uBj9 rAh@BkM.N e%ȟ`k˿z٦0l hC/'Xx8 E3J ݵEiQyC;_eBl#{<-I:Hؘdh0OFd_z\/wAx]uvmL E _"de[PjἽу"&xxƇ&$ŀ۫5v%ŖG Cp'>w8M%ZWT?j4b'QIxmv*͌}ev#Wc4gRwCF$\:Kd9@gvEαR<.[EX]C^_C{dFP.k [ǚxu4n M1{p jԴ$D^XӯXƭ Nسҍ4~jaVQ;CWj ԐzTaGCvYcrK.O>CpGԹTaj9ɤ(%':@Zwȑ$6$Q≮(BvC8l/4^(Ǜ| 7̑ 0nضU4= D(_cL^Ec('8Fjtݫ{2+*Ό|g5zz({2ZQ>#TNG,)uHabOw8kDG%6zJvD=+Ek?[t75/5BM* AnBkx\M+|4$r?ܝiogs}.-m,6 ;ǽgKW8Pb(ϸty2,\'#pcٙCܸM*kC2z|Oݧpl7,5]8K+$pe+@HJa"鄴y;'F5Դ;Vၭ#)O;#4V+gs 2QJ~[1vW$t_Y:0da$j{ިYѺTiz^:b}5n7y~ +<(<IVg?@G6˩D,Ch V, 淗Ynu"S>N%ve(CuKZ; ]> ~X Uys4~goTf̹`|$KxuF[O {:l|^OAJ23Q&UNܝαӀ6Pg_gɕca\sKI~G>sh oCԮױgo\VjpHD7#22tQPٲ5OAGnpY s&/LB~!zI͜R!p_t0'P&42;z \#1pspSF7[iZ_E\ey4?*)BTK@Kc"Zl0a}Y߄?`'c+ˢDsF9XS9SVΤݨ}J8z뇋>RC~P/Z}N S޻>='tܛJTGpR_=>rLjɽ'qYY CL`@v|m~/87}k/x9FoȖu| œfǀۖ 3!!H̚A.;?Npfh qB?`ذ?XS6.VafOC4Noor?օJX9! |Ϫ̥8#-{gd]I[:^Rp /͏pӛg^Q8>҅_D5usi@on=Q4<02,͉@^y8U)DH)S0Tgh0Bp@ T hاt3iLqp骛jq-977s,t VMýD( <&1+ éʔu0P1~dMʗ#Vx&JkVZy79?nBzs#}M&Ù^Mu*O"%c.}NiP;C7 0e#(oz9^dDڽ8E_X!4ٗ Z->X<%޿0wɂ8$&J sIr³0W7m>b$\2a;d_F2*91\U81,%Vb6Cp4]`L&Rzơ9 dC`yи:k>\k؃2H5DO)})|KhTp=S^)vu*ԛDw$e:`:`#}\/RvZ$Zu}Zjk/3V4onĻIե2ϭZ}M 5%~4;fKCZ`[{W>-+s[.z}MQxĺ BkW˺tE_~ZhޱpҌ\o5I׶v𩆟Yѵ=IlЯF=%?o 턩B,f)Z@>)uP {K'\( h]@.jaT|UsHu8K)K GU)5Y>H~Gk{za^M-ƕk! 950\0Vpx^ 6aSc=+Jb@snLR!O٨2]A) V[J%q)UGb8rMQ *>:2qsdL*B/vʅ;WsOPIx%IM8'D!RJw$fmQZ!Ez[7DN d/ldA~W$5I{$Drb~nP_,m> `Q.YPp+5t$X f 9z-GLo&2]~3!/ъEKX> stGQ\uk_*%S#O%.!o9! +.ST*{"JIXJL| ji}e}po.qܺZO-nY XaPZ?^`X[a61՗XK*U_WumL/OP yeng_ Ti iD,k@suu;|)o ?$ t&f3YC2Κc"O{u4`-t<+ecYe7?<~;/d7ҋ>xF-^%<X'ieWTm!&-YE G:=٤~蕁ҚbLfRqwع+O6C!7,vw@V + 31_>}Fpti,@)Fd,N;AI3E\dH:Q+^-Hx2So]2(*6q<=m ='=6< ,4FAT:?Njҹ<=F˲$Fr[ݻV:}q䢃oPz~%JW=+ K^Oơ.xoRp|T9KSo(o?"*3[UN#̨Шj=" F׳kGjc05ȤFq:$$˘=ټF5y4ۿLmxpכjAr.I\S@6 G)"j[[s[9CJꄨz 6*f XmLy%)iC yKJIwVͲk?+_׷#Mp 1Kڎ'1*-cȠDͨg1cbN_/wS7K0%چ4k>sӖfđ6''Ovv;:!yd%/pN{ONW1F>Bj@]%w< hEsǥ}t7a7ua_{1q1J fmJ.jm_o/,Dƞr/u[ /M]0'n7liz7`Oa'݌[ GÔ$؀Iе}֏&VV-AY]8&@"R?,7ڕ^]C #Ŵ3zRyifWt)APq/li3:h,G$TtcM·1]D3=j6 !Q♗!&n;B.:_ E,ȁ忿:<\l?;8{&eS"^9kڈZz;quCu1bLٗYjPF{25Bɦo 2V<~ē1?:QlٵwXE)l`LN./(a пE<,G[uhZ|ctlb:&XD̔zHM$ EOCQt|p=Й>]P+XųeTL;.7` ǧćFx0ēDV Ghb3SL?~®AaU&@#Гpʴ3Ѥ;5)^[B(lTF$>% ki;\ G&~o !4ع^3sE1eڏS8$g󆢢{xF8- Dw@,JIZlJoBC6ƖF`G8S(JVQzbɳ7*t^̀kq wsx\rr1PyL+I }HU-5+ۉ/"3Wy#$Bzoo=c݆-U>?4?~xuR xgD+|Ҧ8&LYګ|6 rBy@DhtBۡ\'<@報1D_*w˛&[R~jO\ 4euȦ6WLW-]]Tu@ #{EX4,0 l@Bv;EK>\.>L)ПbnC)Ԓň"NGi1gn4栉^  rm?R z(Gf"'"^|* fg ۖdH Cbk-Pc!3yF% JO\Kdop$T$&}[3[D>*!0k%R5)e3a&oPӘŁ㒟4k8P!+WLO{XM N\2dGgr9 Vo hwKoh}+Mݔ x({[PfPZDBi~oCPCni5{^*XIe#a1LyWaν +^i48'cLZ2m(z ':ى2GC$ ezuˀ3e=< ucqk-fV/U%&*C֩q=;CY.bX5!=ҧ0]vɁ qHC|t`b5&.R@ÍiԇGj W^AuGW?;YVwr#Py Sѿ0S9l%`og8(R8}9ܐ,2_}(jfK0 &h~h2b;OFCz# 6cUzC\} #崅IT_: ATeVSGj4 3R<{EB#4K4uq"S1;c/^CNW]e+"zt+!԰/ KQ~HݲWӶ_.IFl;vFv4#<?5:7]PŨ T"{%p:,\)t  ,5r`2Bѱż@ߨ ~!%:Rx墧(ih\i*s첀'`C' ۥU1U <]qҴR%7QG2LWnfMi"Q5,ij=iؑ_.~NtgQ;vUQ^@!M䬸ţ@ڨGrF`Aw'rq.UAuygJurb6eal,,a8!`tW_WoTt/tJ@Wai^rǵ_<ֱԻܖx6fKp =Ql0BmOk!,gx{ȿ}@nL]jb7>+_[R;ĢќF(IoJǬ|?+hBձ]0(s}AEP")Qv}1!dmS:OlUۉ-D n.gw=klrZ&+ X}XZab,`EMn[I=朁U VXXT@= >H.?PX,C r~^ts0*B!Youfa"P`A^|9~iƆuT" 㭙)C=kH$2Q#c0ZGV, ݫP~&"ے;5"Xa 9Wm:>>r)y@[# K /:;]r$N=Qe`Q&]Ïk"o]Mo3X$Y`9Ut|gGm82W"<)t-ŮKtyJ;`;4 ҹTken*=S< H݈NRƹ 4;h9Mf'6ʌiѮu9IbGV.~r#HҀ U=́L ]mͥ'RhZV\LGx| ӝsc&4 @|O{Uk9Q+"*;0\DP' x48[ ):QG뜖Nksb _ؾT{\B-h TXJe[ʔƅ9'I˶%(EUHR|58 Պb^ cyl`n@c﷛seG Wxl![B;D_ց;ښxܝ`xwوQE) G4K3|}a-r~* F Ovz~)=r)a)zʳl-XGH 3%`u=X9"_3F|U躟lV-)Ne Y56-ŢNj\d٢I Nj_LȽGO-!wa\6O2,-$ݱGvDKzhS,XY~B§4(D8i"ehJ\NèwW-={Zgڧs|ϢpnO{3E.4{6?v''}C9TǿxBq?:~:;aclmG.GmxV2?QUhG`¶-Y(u˨*.֧ZJjCa*[rHڽ,~xJN5S @`Y.y>ط(AЍ6zCPTɥO\Õ.̽q,>P#XXM.Elkov}7,D;՟n3@&iSȄL,?H8aa~v%cj>΁h,)y/C69">_72ccW;yu7*oX延04G`.DBW(QQ J2D=^n }:幼#;~;O뻇W!ѳ qSyhsY8w`l횤'Շu-JCIB8&h"ePjZ=AwSI3O my9"-Kq>\tR7pH7('*;XJ⊵0q7bSR!OiP(e"ur\5 B/s'@Ѕv#`T{={.:ev+zH3]D.‚!)vZl ^/q~X1LW3ۦtjv5+=?+SAHҁg٥ a .??r¸p U4wi83IFL2\Hv,p|ca{_e2K۝qm.*.;'_<S|68~}+C%^;L^h&bUꥲZ?瞼Dk$$ 8k{g$<丨-W L|FzIi4w+8';'@>y_ A)_{3kBY'S#eB_ q=>_FAKg@ {0 Hot fLN5^ϸp,R]m\8(qyMĐXߛ[93>+ŧ̽Re%wiM ;." C: 0NK/DbAFmE"BicaUYyRgVL eWkPL`M{bYxNu*>]KL$&{C:my ʦZm`or?es8 æʔXfP;Y6[/7,ffـWN,zðrDvZ37Y!X\p 0ߠSnX>&qN%H.й}N[i뿇g P1L *d PL?T=]QhM1Mf.\|EC9ؔss;-SEǗ8;ܘĘ-9ZtlVl2V$o?&7b:6NmaJ2wx߲_|7K#H҂,a2"Y-味c ɪ7<#_i  O!b<1޺2?BvCMnZʀ#^Oe9R>ǎK2쵸=.R$P0g̉YD:OnΩ찧HNI`fÛfї%vMs\NLKR@%qo[+' :v }FP CGߺg7\lNMl^A,Ro3OK*x NS $yy/<ш}:6XT';=`3^rSiZ"oa,Yi4#XBT3F\;/Vm05]-$ꌴ26mxCϢf ™pOkń bʫy|ZΉhQ&mm!`)mx38(oό#%){wDF.,;55rVMH0cŐr}ZhO7dVMf.^[eh'k]ћVs57qOMVuqcPhQO Uq# =KKqJ:kdanDH[e{ca@3ׁL*SJ 'g\1*uh5̔>@;,? 9[Q/^r/]ag,8q`nY$JgR^(R%W7B@"kWT b~}l n\ %kic?R5ӜQH^~+>T_sb P_K,J#0Gn?Uyˁe.TAO'z(0sZ uy.kș4 UvU@wsb/[F"HV,Q(|кײw FqF5FPQ=5x9Ot\z FYM)_:V&[YyE!qݞ!?D|G;쮐+ჰ#t,893BDx a_=8JwH4Іd5_QL]GިNl[T#hI ~u7c\42]e4`1WA)%S$a}#*Ċń!: sI @a593'PhQU P$Tб1k o a)v rlb-rX5QӶgaą9{8s× mpޔ]?ޏDvq=ڙW*/Kt~$?SpƈRV4=ٽ X`Y}\a=a5-T1¾osK(t)TyEGy3$d,f9! :TRo$S{5) _SF5JUQj4FӬLP ;Aۮ--, 4͜}1)wAd?NX ,h b""&{BE*ATҸ"'w agՔ}." %Fkx=<<#KYk~|i [6g.7]C}nJBѦ(6z hƗIgFI GA'd&G8)Siz@{1̤M{bd4%o"P!jR(n׾]M@GúqhnnzW#aP VLU~\O#- Yʙ<جٓD(Fu9:#7x.Ȭa- Cڅ*'&k, |H@w'W% h2quSd5m^5W| Q=!r݁/*}(ŖBE.]dp<@zEY|//ĺCO݊}(j F ,rtS(Ж y<@S$&R|U 7+>b $48LVQD]Q|j6pWvӰ#ߓ̇# YW X#ѷ1n1VWʯiq1{3e;T"tŻO&D(e,U(bHe2?UQtl?sӍ}ʵaX¾7Òǭ6-`k9.Aoe +@sB@~Oq"(*LD5)!gaQ_㠍EHcoLHiǓ1]i&pWcؖ/>bMn2=964.RM-Rю.S Y+@Ct%pMh>,·a'bj\N8=C\;9*sNy91GyũFȎpl?f$4i;^>v.Cְ^lI+u/h?:y]8*A"$pX.~a1%AjE#x"Y1uv#i\*/!"*&+=bIAK}ʑԍZaϹ.l@aݐƫjrGm}&tbP@H%6qNt%-# B" akhG=0*gyKh fb,^uC5~460"Z1vF&rWNab:4[W"F' 㣭h Ȋ; %Z wIˆ_>.QөskU7]:>D<o:D PK`h(..Ev;Ӂ.e$ YVe|;}yRM@\$@C;m;qmGÌ29Oĺ'(ym29Wؽ Nuøۛ2QW9c|{ַ4iw=d\] :KSDW74IYHyP&<5h%V[ț76;d v0L^8).q7tF7lDE\{3&/֌^ec&WV6g_}ڝů!¨,|EgT^IG|EaKUS.&e#kȹQ:!˝z'#d:&6;}:ӽoc -Ebjzd3q'~.3i4A~  Y={՟PO1HT%:їAm'z FpT8 @g^]qk$p/%/!(a S9aUGT\B(y[6Y˱6t*.:T%]%0-nk d+>o\BT !CNdev sFLgjR7i2sDe"T[hR2DZ'o- ty>/]~­pGy?IU]3pT-G`y$xSL[hV:!ξ乜6p+ cg ^7'bjIfqe\_":YdhUlP=a0o&Po_:Â]`QX#,0D^ x.14Dx~#Wle#5<jQ{s1I SPL>]Wcb4Uw4 (K35(}q rl?:qEY3߉A{'?B;tx@H)UGo"?0]?l^G|ruQhqg˜e>U2sV4 .s-Š7?p8 "J "iqM,bE#sA-c{;-+XPB37&9|ܥ8 Ŝ}P {D٤n3{Ŏ`01qrϺ\4 ,❒Iu@7W׊FG~nBo2zJ*_f>evVg0!x)g;dl08c?A‚@А $G VF9K ne"՛C;&-Q5Qf:B\6݅03 6E&mqeQɘI;*oxZ tC1`|hP\R63IQ=-0UÈAcO//-OsH)T4I *!DpvÌ7,ȷ`|r& ?ϛ wm q芈-ÃN+rKFfc*k[]*uΔedGƧ;l G%k |g;Sk{k&'fL瀥z'hӑ5#X5 Ѧg3dJ)0(_X}DiN'+CtH)%<&h߃5BODA%ߣsȠa.tH=$veHc CiWB`MmPUZ!MG tcSkأ&P.r3&34H*ۆz3sb@l9gF^z+Tކܑ.)d+)@[ga RiRY7<@T[ikyv1-mgh~/莌mvV4j~Vo%+b6: +Yq쐼S6K8mgBw$qXK qyLJ"@jH~ԸVHEsyl_Je_ЍU` R ALb^W68ra˫.`C>GJng佊w;#x Icdvʇܝa`^3^k =S5^\ߟ+35@-/t=kx%+˶wO>KkL1m-JliZP 8^%Ü,J7Q;`)Jh,-焬-$\7 \-o<49PZȶ|2#:NP%;|.j^W{ Jt]03;KE1{]tjdʄqd p/nCڧVʁIHxh<6F?Oa*%H,:FT7i;93zpLvȚc֝kFjX6^|ţ p2p|{yI9Y5d oyi)ŸRkl}S/φR0M9e@rG8ANuU"#,wS歠io%1N+ (2HfXhqDG8wH*(sߵrP#_Һhx(t?hXz^кkltXoOj hxhiW #*XНzsxZʜh)whL: O>Nf]Gdqyye}Њ ,d01u͆AlY8ȫ-7q4;4,wutOV ܇F+ .XK i urMݓm2'fkqLRFK|sx9oZ*@-C 3|uM;vMZI#/`ms kJpK Qv,O(3"V/7jRiajAf?*t`&rD'{EՍY=V9e/PQ7m`8Ʉ*t4[Q} =\f)ܙk߲(8 Q 4ŋ9920[8Giq3;y!,j˚ sĖ0vGL3o֜8E[těb4iYabUr,C&&W8srF-VX .)%TA}O8l_Dh<6o/PT֏j'uvo$`j՚m>%z{*lYӏkSġ/Ǘ0x3OĘ-=C3fz>}ٳ-ټQp&Q'Dֽ @;CC~rWx-§JI+k''{{VդB2*GԮ9 qٍSB:yLhl[n˟6Tm2qHPx ^چP6"jZ)8Ƙď(RCO#赖ǔBdWСCxvudR0oJ75rYDD'>ф@go*'l azazq5yz30 Y|HY!/`/;y7 nlMGl]?*kx~UG9ojyszlӐe9P ZT~&.=#ě}ThI1I*qKTE4BS-{@8l$(l۵haĵp\xCJKKWϧQy^]4G.w4@l||PVFYbvpݘpiKR[Yf23PxKɮTTj nYcI4z5{n-柂2tO/б&ע6Є\df?\;⡿߳Bz5+ь?GpE ݌  +_"Ȇ '2HF-Ж/\-$ 7 ^bp2Q{M@^oמx(+e#fEvϚ OžTXu?I8]ePJ7l*MiAI3Ie2EyQR3&D%B=[lܟNdM< |{O ئT'ȶBC= Iv^:,!~S ljCoLv;Ta /Z%QGc:`4Q&Gen[ʳM҈]0+?Y$*nG&bdOcF𫯄$_"iTЬ fm""h4TV*ʰޑ"J &OUתjde5 u Ђӱd3\`a&`vR_/p܊6+șؒ #F_nE1A da!-$xcpH/)C>acBqk/_bJ;nnt-?H''%7շ"[8H7+ڛwEVeLs7l2X;/m>]IJl![T@lr7Чy+əy;<}DP~R"IKqZU 933g[ 9Kq}MNwNC95|[5{`ѝH5mma/TIαoF_at k4}I"`8}+.0wPdq!lJM6'V3<58^.3f ]5 cG^v4rцo4L%a SK1H T=ޖ$P" Dj86UAm*U~^&Y/!jU:7U y71% yќ`+S^Yž}fCEAκcXzOrrE7]@PFy9+^vcZYG2wX_#GOӯaEaqGj+O^-lRuY:cnW/=;u0zD3Ŕ%!OA!a9b%'e]4X{>hB͈g`2J7IH[z׌sK+{} rqv$Lc}MOgq?kpGJAy9_"?HDޙ3'K0Ƣl<O87i$$"%]^Q٤F^)NYo`1 {sGk'^;THN ܥh*#dMXϖ@-oߐU- gmО2bE`WTJT慌tKBq`nܻ=fCdTBH7aW^{5<A,F";[ w ev%2Nޔ TMQĸ_V5#،R4Ca'SKep]J^p`#dȰ{m">āui`cK EC1H\lR (AǬe:&]ZUj;w7<]6Z"ݵ sisf84ZAu!e[Z 'y\9"Ro:Xid#ݤHM YGiTDr5k"6k5@ТFrU*K3e"\v);Pxopυ Mz[5A.eE$o2Y4aɏlMTI\Zu֠ PHcV7Ӵr*k[mm0Np&'cYP4&"' Hy|Y> 2hlT8:kjtC-YՅt5By lC`ϑ+@>quJW- MTbZLIuc$b7L-'OX5y^^eewjꩁ3TeyPG)}<*#|HT?iE m2AWxط럕N<Xb;l'th>&n@@^H)Wdn\ N `Cj[n?m`^ c1LW/ᶷjWiȨL#<^8Bz\15uo6HXjI f~ 6o?Gi b>9)E\~Et V2,`UqΛk*pY؄r(. ЏWth:#4DxA6%>F*Qle1أ l/{QUv0@ٗbƓQn;c[ HDNXov/DD$G"=x%4ܰ6Y1BYX5a=Ij`_qt "e?-g4"S/H)'+nU)~u.@S9zKDV"x#YF8K{u1ֹޭla}gҮᕏ CH.1Sm s{ hbH&щYvNhN̎._~B.C|w -T]0#~Ks<8Gs'6Di$yHlc~8ާTH/3Ǥn?2TG.:Yuz*~{`N5,$vl$ڈ(6&W(_LdžbqExʢo<֧ B|ҟ  v>ƹCCtJՖ`O3W݄ ^ I$\x Qsx;|AD.hMu  N!R/K>*i;ӣW`9__,L|yFJ{Dt1; rp\=- ~kQm/T۴lc<*pzKV.{SK}gPa&‘W lWwQ-U~V5 2ul i ֫=0D4'`kϜ읩 6+hB׏ z'rn-=zB?U`vkWhx_AwGMx+ZC?+F!QFZPQAڄ>*?,A y?Ŗí""Pg(P~Q`RL;)5 4Lq,D"TJEGބ5o+Xy^o=-/#lx{9IYJ'١Cs( ʒcA{G%o! AwR`l!zD~w̲~jYw8wŪ}ȒsDS=LBL*STՊ-r e6-cQ1yʞBJθܪ\4If۾DIyEUw /[6K<'a\ISihD2&rı_xf#;o@|$ԇ"9д,KLEZ+X 3 9cIG_˄>;l^5Ꭰ@&9xbNPYRigX xO*Xṽǖ!/kvݧM6R"Bk<23>}l$|\j?J zsC7nކ04£Yd1+V&雯d-Gz9ߝzsF;5 !t:)]/Zb!,0ӷ G< !JV2[AeR YK94B2ӭ rEגM0_^QX]u</l hkIvL:f[9:T͆L>"2tQK9<%1 ]-&S37cp=ΝsM3UqKVjsy'?JQlG%^@(8Yg"暊loc ";Odе1 6ET|V#pc.&t2LHj4 e/a;6ᾛǚI3<-[qP-afvf+ep~e~0~?p:h>ׇ |FǓ̸ˁdkfҟ#avި|s\*#2a o&j>f䖁Mv ܶpFM®YK|L blJ4%g<\]$&9QRZx448D$m`)Nv3Q XBEg$7ebܛ{%& (񦍀ei6@;9`*|#@]0v RM~`ip^Y]SCIFTy7PM C"3= :!g1PC:uh뎔KYD:̚bJ{UֹcΘ8CY02{G?SX8N _&Rp`7pC&`MYpc]110iC=j-2~$Nyl&5Z >y1!51PV6=ȖR>qyu\L,Wq𫫞p^l5*߫_mcoSq Vm%[G6 Il۩^<63z)fijwN/ DeeVtY'>6!ܸ,AtAJdʠ$cuw emP2ƴ:ւ7Diqts?X^6xί;*BsҬ T3cumq#͙nu@MZۧxҠkidת^AslHeaTb8Syʌ//W: FѿljVD{XAmƫW* Lz;؇yN*vqc I u-חU62N] ayN8nZXoC摓\#S[΋OvYV^Zp&o\CO 1(R^ ߕ\J^T.!b-H[͘"N往"ోkaoU3SZVKR[HG\W o\@# \[~dΣ.Ԕ)9Z=~kE^Xx &:1pH ks K 2{jV$1^{S^p]cyQvfMMk2j(g 8'*D1x-/iB)f~[ju%M莜2MhVmS\zBj"KXr^KR{}9̠`O9U+ziSq C&}##ڃj.KU ]CfwGXmPO*l>?*CC}m,en.591QڈД96 KrW1kCLW.`yM*Ֆx/K%C?#Z / TvV[Uw;[.lu+CAiGi;W  }"13mq[aqըEj/ĵY.gR<9e7f缃.qv˒Y8IgUWTp:kGN>20W+ clcΏpD,5k.M*ѵb25gsl1Ȗ4s:e(#$!/_e}~ yߍlanD1% XJӿ*ʔ @zw1*QAEupƘMI>/A %Y[ kN7duN[j DkF$,dcX 5ٞ|r4b7 3In3K?-=x--lmHYd.dٻV;+:sR㿅}?6R;8PBW_/83O*L:q?yW~/xm@ "si=܆w-鑮+y!AUl?]w!6/-4ZՋX~3іPdet<`-=ZXMg*?՞̏,#Tt_~SNvUtB;j,(<8 ez#P{u): ( Y8/G"h_֯hCPL f}8(P=IT}X =C,3tS];/JdoDOפ.]c we:ޜ%ɑEс>@ O8ƾ-G d-Cqo*`QyNIQd__J/) sDA3 Ew^z@F4B? -G@࿊uc}ݥ>HϜ-agLf Z4F d_r'&u!C[JkXg4/N=z.{Վě_N+ԏ}B76+( V1!- SףFNr{BHGE81Q͗!!#XF_9b>8v,G?3Gqh5(Z1~nTa|%WF` Y_ʎi>eP` yy\⾔ TPή_(u1%6bCD-`u=oBse"ͳbv4C6$#lS$̓돺 ,3D0EwtLZRg,kz9/BB6!D;QiЙ9V|WM^p W$],m/ wICc Mj#qE2֗&^LU /KJ4eDĽ5mߙNTف^<fhl,MaI&*bze[MYAtwxAٚ2X&ёaѕrz4+cIje# 94?g3=nt!NԵBU{9hNZG3@]lshHߑ}ߔ/utsPnJQ2A|d [J:YJ^ :/pn׃G(N'L4]I>x cy.k3 bNIHL=KK IϦZ &.[qNgR|Um6gbp[\IڼPtX)UF[!:Uo\u7o-V㼿Sb~P^։q"fsVmI.`.teu>?Du=%1!KJ۞~ģdVm f˾N~Fw&B|z6J# sS% d@Ung7׎KDGuzj:Q0ЕJ?H:BS̡$0/ Z=%ƄP4s2bvX1wT(J5 {@G^C~RJ=GYY:FKQ% &k]+7HRZPHynOXͧw_9d G/(sO*nԨGk|ƂFp(ZS+'tn(kT>pkl5چ)q&Q/9M7˫ѡVi6JM[iH<}\6n b,BMX y&Vt^r<3q2Iz}bL/0]םl{Q>IU]wWcq0Dz17&?b ?=t@Zi&D(sC`9$Rl6{ZM+3"7`\;[ۦ\`Z1k4[G/$/% ,d,[Ɩ$Tn+sj^}Inly43snN!>$ tÇCDNc4hE)+~eNݖ, އˀ&J+ l:f Ի.#3y p ,Rm~ƕ/@L` Ui4xETge?jajTޜ6:󂞔Tǟ) A?#ELW`j䕃 ?!}`@U],=OYϹ6Lfޑ2OKa¶wW%NvDI$&pyiliճy.ɆVZ&PEac%g⦯(4"p#9!fKr@) Fpm}a3T'0&W1lZ+pIM?N%vHu+qu&@H)%'B+F}y65luRsحNdpEPdݖ?Yɭ@q+:N-_\$,B`(Gu6 io\=6t~mlW1_Nkߎ3PP" LVpz@{!fu芣AcY=[؉Bdc>6kj"^˦sڏ܅TiAKur͍:2 DJi{*0H Jo]Jʡi"0%e4;X|pg6 aڠ`>|VבW \o .;}X!eK1 zqg{%`- 9r*"\'ۣA]u$1V gy#ka*v|=2#B N -r &L?+J=Pb M`%<,۟ϥ0M&5,fY٢Ny",tGL Ɗ(0dRw ^ nnZpTښ|+1FTmMrd'\`D/X'kp6 =xŴ/p(ԎCйMG{;*> P +6#tp KũռVx6 hckŲl͑@8ɚ^m{2qF:$ޥ})J ׋qU?Ť޾-Qע=@ W|t*G`x#ɟg $*+ :VqHPmO991DGc@s#^j֢DXs9 hQQ2?VHĨ)ߏrFhÉOؓ2a5i# jaW2OC iEѐa<@Wp~KrzCt@yIoUnt\p@'.nf$&&y"zz k{ 8NN^yzT0}QPv/"!;qB>&#cO @J]%1`ߝgU+Ma"9WWF2Sk!X%Nd!o% h]Ъ4H+"Tȁq{J^qV  qJu[ݥQ&5$  ~X=wXv>5{pl\ȜXw韬Xɇ/ƘKؠu6w݉m,:4[y{@r]Kx7#UTZ櫴`'OQ!wb']T_# =C57[\ҹ~,jrtvzUZq]rꢤ=;}?Wkj@hI[đlxB_h҄z]Eb>߱#<34ƠzWj-(|]7 (5i/_1 : GnB\ _Vh J^OLjŷv9۫')<'(:*yx G&6rr. !a$8$Ƌѿ cKJ@cht.㗰dVAiv+nvO˺Zn8Ӱ+?Yi+![Od$ڋa1 'H I;F[ ߋ@Þ)=DA/F0L8_ pF \|N.cL&i}/ژ;SBԯdHOzSl{ELGIvtQXZ)KNkr zؕ% [^fv[mJCʖBhIǵF]d| zXIY.1ge+X?\?ԝ̓8Dh*+X(^eg~ Y,xd,|CHb&L)}mnƎl2f̵veI)&_E0?1HWgQ9vd̀ѯd]StRYbY4hQa@ڵl묊@DJV߾H?ϴ |nUGĻp"4ԩ:} *Jo-|ik7!˶uFoOUa1TY4Jo,() f/93+fk!9y-)Px^|Y+@{(օd{.>?md'|<+R9m44%FT-*!P+:WuR_- 5 e\x|;"{F=K6dy-Ynri=<5PMRWYuvi*>=*1:pn߯)^ ^% Qi6Aj (ckd=OiyLDք&mUU~Υ,SZMD? >@n} qcU^asVĉ5#r#bXɋW=_h ohֵI wWqXyF >s+bݨUeq"#c!!|~ +>T2f 9=$"cהGFn`3)NqK&~Q&y۬1ؗGWǩepϡ W" )lƋmA hRovp J\p߹(lEQ9v\''Li&.Tn (< (Ruj]AIG@n lZ`F@hѵ:M!n 5w1ڰ/~8eߓ#}kZڰ+O,@-c:8ja0|/G3O4W|:w7^J;vcvP/l&תG 3K3*}A0e};DgcZ-%΍Y+iAM!}iJ+6,nv|uk(0C zG+ y6!hz)qur^ea͠8K3~qѬn QPuجĜ BpUd3b %.75ь*h]brub=] *g(CP@=fC JX]M1lgOew* 4D;{FFiy /p"|eF^p3MPqǎ|YԯpȺU^ >/\3JO#:,]jK` K}\2停 {VC~㪄;ՑA5jO*gՈi |[Uny(`-8.q+]8q3:lXȋm?;Aʤ肵kp/뜔L#d>[E"Kx:PxK`fgOtP 4ڳфm:dv/ f @?2|Cy=>i~a[Ά rl͞8d_IuWpȪC )'KH@%iҽFpS/:pY&(~$]__q&^a~t{v7,(3I뒍}5l%Qm5SXAbZ7>\c]gbJ4q=R1K\鸍!Bdpvn* I 2\&o' þuKYv7)s Ffo|~_ '^q}m=(<${eY$THH/l 4o]Y+*!}">鲾K)܎>7w ׇ+FhzX#-FOX|REajwD%ڥ't-@3Fז=9IJdo*JSvRK'Z/nN=2}Vx~t߭\?ZɯA!g$ G61YN}DŽvXC(}<7ȓ5%Y F-#m kQ3"/E{˗CmR: Ky紞7m2av4q? YJ/ζsagk?\rw#F.DoHM?>_{vQ$ړx}@^oU^ te8ICM/GlNQCk@[?w#p(ϻ4%![b"pz2Pޣ4|(%#^2 8&%5qM^^sfCXu4wP%bƕ ڿR5/8 H'Xu||BL=2S[y=%xH;gf_kw1@_qLPtG5{A=JXC6stDgmӊ֌z9_mvc1zW7 @KA*Ep*h{tOc"+ʼ6r\&<ĸmCXz[FeͰj|vy&Eۘt<FKJwN)hk-0/Hx P= 8\3kU{}2 9Z]Q 7f o_QWXzlw _ăT^1liU,訓^*gB>+mTh 0_f<Sh^9?)ߞn${9!?`LLurE$ FFD;!o2c+Z =m6]ͥYR'0BtuX+B/[,Xݫ$oHe`oLT ?1Æ) t2b^А FHQV޴5f+8T8rGQ H{Z.y)m3$1wT,47 8|3g83Y}[PXZɣ{``a ZFX. |2 P?@6l؃0h-W7V >'iangNs c3VINܮ[g=|ԙX/ 㯙nTNmĈ*,v^*3l3xxB:P׳H_Af rcψ3eߗ3Z Diirlʁʪw֪j{/N4=!0Sd#c/F׷)Q |giq%]`eshpHq˟Kfbz: BĎ@2T\r?4Vt>[ME5}eMF%cM~bdj~sV4D?!">WML]\ f;W\&O# \ًhiIc5"[u!09hI2vW#scq@S^uf%++W8pp h`QqsFO7PkJOBm3Qh2R"u(;5 s|\)na%\_V#*Ce9" H\R JxУK4,X|'I =^N3 &ɧ҅*F^Cmf=(9 WeymbLl{rӶ !9j~p 6";ʑ>ǀ(Xk!(KQmҶ+5r,IELV"2^l[#4LU_pwS~8L2 w^/)kXxMn>OFzpF gsIe.QD쓄8]d4-uL'삼ޤK&,sI^atW8jOcr;Fqn܇h\BYOuWRqX0VM@jh<R2$P|,JIY6tTk-{YwD]-f]!:1iC?_KłЯVbS]g>2-U+Ęû.6jjsKh5AF/I6~Pr&+K L)Q,%H6@z!bߝ$NAű78:*HB]r[>.I8_ʟ}.nː%P=V $Wdc\] o/NHO)Me7&"6ʛ; `)Y Q~.>6FڮhT39MДGjD.bkyJK=|SHqzbx#(xFA%SMl/ >+As5DAd:w?9Py *7ֶQ4r?XC/BT蚶]9&ȹ_T4ݛFmg_J&#M/,ݔUje}`T5 RüZ Yu8 cMov*+K#1O;-:'F QKhG=H? #!2NQ:HQ Qz[{ɜg d%I(*E'Ui )=aT8y `O!@$R {:ϲͷ\|i8!z K 3 uzs9FWUXz #F|V xJUV?b KoA%P>:A?Ǥ~%\%v4S^Y S_M S)rG!$֧D(N\"v˔LJVnpJۛqI hfg JkmpU?eZMrtⱜS}pԳqQxy޵S6! ]}yw؃b( 9I,5-o;%?h?7>kWf4@N@L[YC9!{2pQspCϲ'_Lfi9Wϥ}W0r32XWwI;nZf*A&vr1R?n]9#=λc7GtM/ ?۩_CmN~* DHWR$Bq!ob@HJ@8`'Ե`#Iy R~8`$q"N] Cp-5FxK?qwP̴>2.6bk2 ь$+¥y[v;`¬Fg[ia!WގhvL5f|NHXݜN=\,G?7D)x+r| DDC8t\1{1hf&pFx2蝳P\`rtd]b+gT$~3!fp8ЊEzj'}f~yJRLDrEFSc J'uhwE[tw*OO;>SaR.=S/X x&udU7Y&БɌku.awө.sfb>GjQ(Yhѣ*ͧ./O*ϙg+LVR:B|o1iɸ(izpp2.sZm82n0i#ܱIsMj%zbvaM̘#'n@Fa8?b O$c" Zή %D }$-.no$I;3Go7je準i1:.DLs׾秳H4RzJ':V߬UPhpN#J |/hL|M]Ѕ ުcCGeO@]90I3tG#xTS"Y(k.o%g@͒ OS$CJidHTKQ#ܖrg+u1Xt2W]%Hϩ,wн Et efyl& mW4}YHT*,)Fj~m0! 4#jm+v"5Db|&*5"ӼT) wuqJ8U<1@=S5asy~?t<.^Wv+cc*_t% > 됽-fGحR ~%UiIineSgš/T0rCYDD}wcQ 1g!FX?AR l<4&[ /4'<( ,"A#$S:=6{zs9;O|eӿTqMu@aY # yPueif# F1r]{V@Y]i=OTPA)]Xaew_ A(6Aw^" _C-+/ )z|haP!X݅|8֯iOjK˱! X.O0nR)Mn("UDNl)(׏x#s^i&Jo5*{Rks< Dq,~:%m` I]gx-Xδw+}U'tC'&k jfdc 5̜ Fqn`O C~ .8u O|!qܨs*  B\*5;ԌZGN/!ej,\C6^ʹ2Fz  XnJ x[6/9 7~:G N31F.Ȯ|/m=gET6#=oȋۧQxڤAbu"zK!ETs l&ĉVky=ϱVUV|tgaOe #Ƽ\xLW^˹wK _!bD]ݿlazӤ:lgAxnO**^oyY"aXdnO]6s60C` )wR"$_oDuF@dyUdX*VaZp\ !lPIoN+.s_wbp|Ѵg]oJ`[#cΎK !g 4hl؞fr蝓[ќS*r}}np!5 ^J9@SHHݬ3ɵA9Rw['4gCo5u'YОTOT?ar  *zN~^1^pϽA鯻<S@>tmd׹ +zNR]0~^Y n(!WOG{(A:ʨBgMByjiw+.mQ#^-P$AOC@r`4E𽴚wܻ]%\d<8Sr4NKMֱ&X3Dj TY$Auj*IϩF;<:LE!D 1NyIuSnPƯ,9x~jVQ&Ep%~[d;tr~bڱםÒsO&ԿNz"˳9,tCԘ XZgK]AZ,k4iZ`2d"S6dn"5!Ť@2d1b^o;iI"//S}l&-g=qcq.WwNRv>e(HPA.{?)th\t<)Yd\'G/cJpkV+ʱ_Npdi:(X`䮈E5L)8^k0k\;m(ShK;EC( F9ؠ"[ d*ɜ jIk-2 >_ōU{@u=j`vqe/~zI<}npK^yju.zԺnHBm騉IQa *b><{(UM=L $q#3taP_}9>m#)Ŷ~{io"uZ EtfM3.q7[.׊™2&kP2 U9@=|Lt"/mn!ӯuϖ+UosPj|oAX-I|/ީќ6d۠MX#c7`7DbMG̀ U$iq+pjm>0~}XJ9+'[>>1z8ᬎYI>EhB<h%gB a<`# ~r}ց3[(B' ݍQ#LTGkfc2M0"kzw0bm"GT('4N1n pGP9%G+m!5)3՜m_aAB(V2ϊЄg \u"tKLOKVuqޏB?c>RmaX˝L".msw x̾6ik;h0sjVNn@W2hi䓁NˡjH1F3gD>"QÐ+x۵i sbHMS~t,WU a#CTqnOUYב-X4iek)lM¤ j%BOn^ 8;G ӪV$܆`+e, hXeC`!&n1_]Q9-QK1in܅y,%[8aҹB+tc&cq%cCt'2ZZZ2lKM߭ߩp7;rcVʬ1e IbEu Wj@O~tQ*3v9 3z]dAc}8+x5 nO'X ̍6uwoӼ~%Lꥌ82ְEʰ)aaz}(X{X.=:M(B{5n̒hn߬fܠ[;K̳te"} 3Z,'y5-R149w&.FiW[7>+]s4 #^CinoguEE\ {`4y?  q>SȖ`ŻʳM }ZT`z߱lGS`{;S A4S81yO&.\jKA=KZu*'xpzw0{rĥ{ x#ƍXzgdկ8 ^Ȏ5 H#H27lD쐏|8"(1 Gaf)i#R܋pKdxk=KXC7+$nrΉ8ia] p?j+[sf.)ZCgW~ 5/rl7RډEJ Ki\WWr~2uJn -CO ](^ !8C(zuEtP8;X:!ٞB}ӜG^fD imzzq"|ك=@(%teh+Z%hc?8^̫8%KZm#d6¦AHHob) 62\itخbJ7Q Gs,_g9@g&~@>V$Q~k{0|qC o-,Umb#p&Yk%(0xH-){͚ ?q&Wl*g1eوwN&rr'MX.#H{ei@aWCTOkh˱%&,eGYnlVcek=Zۂ#wU;H<` aDdѿCGqThs?P QOڊ#ch9ZlLlJ8Sp -_O(y 6;Crt>>KåZi?eQ3RMbeن6EMy;8yiie,Ʌlx^"!m [,{ h w uZ$YQy>1CoZXFE\;32W߹f~xҫLIc}6<5@ |EHL)MOe{𑴔,SAD+?Q_bSg$}<2!V4& ;obDNL1j (Ȝn^<%PaR@;GKn+ݰu!#fږWTzagޘK- ސ,ѺjYܐ)vTjZ}6OvU5rjqJUe#~$5vZ̶=pjD{'`#62OƚY7w_iH,Ȥ ! v2LtY+hu⏪'cF0~4&"2 ,5\ iG(S^{ ;h?P^5ʽW(=_N\M] xRCŇ׿Q\ ]J!+Aۘ60"w `ȳO_6kG$ ;)?$:׃հv dLQ[8aRoԇwZ+MuL R48vtbT/5;|ā,ll$,n'=_ezpCYyz zU1ln|{ER#JRdZHi -'(28NC(]0ϕonlF5.״E7p-JzIwB[Z4zzm6u7"hiH?#*K 3K}d"{4E}W1lQ`gބ'ҕ-!04'=NBn3 *em4nUhƫ|G~tv9AS N_#sجrI'_( s.8PR(;h,h! Q4 u-2ζUZx|@.e7ԥAwmya6is^I*ybFl,f7pQ:T!qKs~DswǣRwWk Artbwo6ѾfTJp~Aov8m j0ST4!lȒ,@nsH}2M ,Y%p-M֧7dUl/FE e |!x߷qjDO"{r~Z3s<#^R=HҤ8~wj"R2>kc,LmݪuM,] m)V-PHԨ!QavO+w>$N;ڬT?._K0EXWeCR:eCWW^K`I3dؖH |"f!H~T}ajsÞyJBfvքVIAaA(zq u M\UNCꋹSbpUأ"[gB&OrnTPᔷ\5WԸaG߯մg)[cXd+ w͛IvF -9ϒs)ߋ`Y9T~K4zټLg۬福Mf*6-hU`cn y(3JXK vT99ez,Iǭ2J~(ҁ?hezFnd:;cBNrBmm "5 kF W\҅eQY_.ʁ&Ǚ"\i$ΗN+˱'HAe& ½q}UI7T'ч|$hK$IpKFL@ۚ eL!vZեUN+ˆ=AvA>mJ"!HLWvֿ!6bsk`Ŷ%UżݔrFZLAYxT3U [Љ&*wx?4Ib4L902R}rس3ʝW#t:DT ˪BnsBx˟j:75 `68oI(3*^06MC3 A\]Ya\POn_eeuVg*dc&۰9VMFWv9|y^mrz&|~E]VB;B>ŎI2 2 K):K%8g%ZAlt W8<K HyP~з(QʏDU5neR Wݜ˴yzZŨRe{abbfQ-vF^sqKsSuGIgwSB4 90>zgIB}R1{0iX$aF} S$gŅ)+Uv2r'׫B2!RXƻܻD CMKq#XUdȳwKulTZL#̆A:ZOIӉID}8 ab ifH”¿D>sB)8wy_"C!5N 6YO]Q s"{]|ӟٍ&礇>!/gULߓ)srl Ja wA4o;<8M1;T} X}gTymi@I^ttJo@x P5B W&ke4kҬx@',f Iz'96'KT̍uQLfk~,83+p:kʴ`M0O6>,0">~i*Dȡ՞ AuƫT~#*ޕWIz"0糄rACtx7{7׍cns4nZemudݬEQȟ(pjG?o%2)ҧ7<3,SY@1,B'Tq7NV-g;8Ľ>4Mu4 lNuuS;6AA6*} ]v[6}mrzDlgҥa%_^V'''!$lتl%q]fk*>ESy,ܛ3%|)$ 2@+P._EVeŝnkNRBF.|r6 ,ݓP?ADߴTRLv՛!7:;9TNAR]eVf^A)zvz X_,&a _B I+/IʣI[vr3h]~q!~seYTX{dҷY[Ä2>NVd4hp[Fq{]xR#C M) 6 7E:2'hCW ;+g\+%E"tW{[(ϔDh9 4  =|3\l9ZSvP{>oȊu4~#%υpcƪѽNw%4v gm6 R5)Τ.v/]IH51Q)oI蚩pY^'~\E0PKU׊PcѰuiƳXzCg_=F EJڝ͆^TN\Q L8dl 0P VbR2ҟbiϕZxD~@y7$&ș_=Twq1/x[LqخpX8Uz ?"R+A++Gz+O@S%2M_,f52$YiA5?Ő?ʛɼM<쫃ԤfݸHODk9 3Ffb#ne3*<}(O؟ Rz3l A:C]9z\)?+vܙM%̦/hxwE_ Uҵjs.Ϗ9FUQBع ͙bې2;X9kV [Pq3zgf@!S2)-VCɴJ96$zlqwb^n st [;7w=&euK kyiOh1q?Ԥum=},S- #MY+#퓒OŠdpl0w*:>NE[:ˍt[wjTFm yPoo "8!{ߣlET4BiRk(m0KYGGԇ6̡)`xNwzz79K.[(i }[!S"J_&,FЄBPzcxz\;۸@CIe?hc j-Em%DAܡBdpŒ$}Q ."(f[?, M9yFl+[ǫXF V=8p:j_gSz:t1ŷ/7MrX#ڳxv'Q^HTzI]w|?n\y3K:?VP&+7"=\1n`Af}Gg6z0\E".6 an\?8)' f6fU+E w}xF>]l=xroFX٠[Y sѼ#iIuٹ9<"dM+uΟ>\^Nx)fג1lWx=MHr Ʋںsjh3Jv U[QȲ&0р_ܬޛĻ_"< bb @X?iiߝ.hՇt(Q׌q1P{6GUfA}|z/FَsnB90$BJY\2޴rsBcފ;-Æ' VHnL@ine *H <#-1):rSg3ɵǂ0n[!QN T o&Z|ÍS*P\>ljR%cцdZ0q"' ɗ^boa46AϮWfJX­۷K">*0+A)@}޺“l3Q _W)hˣPRs#2c1/Un m3?`J%Yv`x#~4Dn<@3,iA}g=N˺'ϣb}T3V;X>o# y^?!Ll.r^>uVND*W}98N,MǷ5.-vcoT4D3W0 $}/Av/ `R"DSqU/5Ee5u?Z+Ba>4Y2 4G'kT6l{v SgReJ5Pb:#vgyef[l~о )"pbǻ»2]c%=e S"\1u +π0 slhDv&'l#╮4,q o#_1SBDY>IP-wW,wvBEЮZ;t.JUP{k*Qo5T)K) rϮ2+I`zzY-78MxR79 ,eVeUNpmRfA2" P}9ډOX_3 W|SWeeG75zV,:^U!_AO#[?~ycB9=Fⱺqv)Ú8I^MUOsAaj]t岷VLٗ*M`B7j1BQX%x"6&6zfhiŠ=>sv,%J9o#lpt>w}+ [F!N:j뙻)^+uMeͨhJ1 PAT3]q(.>>|- +ZxMϼMV|UDx %8%֐6ڦf|`$>y4`wldN}oN?~# ًuװ3[V;ΡCaEt0cLlj/.G2 A(fG8{ص̚vx-lq.!bB~СSKR`o8` =} ev{+ŔL,qp|V_'T>jΞS"9sLzPulNnQ˥NrDFoʆ3 rc*E/#hPFȗ֡%8>87Zz;!&κ{FN4QS)+KxG bZ%M d"7 .a܋ATy<w=}꜀OWo6c01TX` z=\ld(7 ?l f TN8k\U57?nI3sQwr{V_)jJLdWx}%NV7ugRF U(Xj[sPS@؅%" BZPpT ͎)Y r*9PU_5GF2s`K{Hz}ɀRYQ dpvf/f ŷi;7 gl"LEb^_ & Y؁T:Y&սx!l/;%\/usZk£9q cxߺՂkӲwOtݽGOXSX{sSt&?5X9?nˑ>T~Uwe &A9V)U|Y U$]*;^E`@"bx2!T4|îVFtzW~ ǂ 7؃Q`Vq|;(ĝPBՌ^G4FAH2rfD`-$dW("ͣB3)QݗnZ`lvJb zɑ*ɧ稯Ga"GU8-xhK 7˯% q7_Q|+3.yo8Up|uSW嶽Gv|rk(Qr.N>M;Eۻ$}p2NM4ﶸ]ػ{D=P: VE;iK`Ua=n  @_"`ΑbvQl}}(ql)Eܡy=oւ20KnBTn2FD3: nGLe|vP;9-FYHԩ4Ǎ0f`@G:T:;X=6,[>sOqiΐ+ZK/ 6d;zM+͸21?{.c#Fϊ0%UI\?֊̩h(X3KXo_2h_dᦲsu?-ٹUG*tj;)"BZG0<*s Ra 2FX2Z ?I\ziYrN ^qʷi9 5\o fN@AY.n>Ү'ϸ _c%8t ~A,\R?l9h`zs(kASl7a?(X lf172JWRNyu4h("/INi@χb?8d9mm%"Aghx_Scښ=b'Iv`o3#Ǒ'Ri ~Κ[+f}iDv 0BR6XU)d m LR9`~& stЀ!8+KdC'鈾6ytZo2 yNv҇<F_lM+,|ݸt$"#JMF3J{ynT-ڍk⫘ Ԫ=!䗝`Gr@`reX˔|L=5A;BK0D$b."X;Z,3['ك_68+Gc M#$ ]@nA(K(S19kO:+Ϊ;H]ӯgpg7jOL$157* 8Zc 6نH0*ۗԴб6 &ʊ`{…v>n  {:i&rZWcQ@M zѧFW{οXgEY&ÄV 9"Zqy<3PÊƫWT!K S-Sɍ>zVU6OHK id |Y/X@w /~U V#"I1}\eJעqJ7֔zMeAҵ{J׾y3-a.<`+2*{)Ro8ߝ~4j) 6cbqF[a(= ?aeK?qŹ /z1},y{nո"[äTkjS?=e 0]RRobe9n.Xgr:|QXSQ OHX{Z?~](UD3dj2xrS>ONӞ,;,'&z#NvGz[Ew졅'f7.?8%\g=q>1'ꧪ(g^}l9>S\r)mÜ?;eO{S -iHr~[sPyU!s@Cr%R,ݒm%|xk +fR^ˆđӌp:)R$?J5b qBo׏7aG沩mT{~mm|6[4dڢo 9FWkF: Y|b*?5mvFif֓xM$:1%DS0۱j2Y4t1 z;TՍxJ}+[2 v璄3-5։.eے]R*'qc1v 0̬|*A[-JM]dRI1i a1"V{64hfc6{_MA;f ïCSdyn>7ReU aok`3͹OKh׷o$-B\?Nܨ,G3 WqJBdOX#8ny I(A =K jᘻ:7)1PZu;]Dg1Oc.v'!XC<vgzt;&kgEO$g;>:0Ip!g'O: Q_(=شJzPZIg̎T2:7+ejxWFk&r m|5G ~K$Fx<-ÃalYG78ԠDmt1D# BCs/iP࠵k "2k*hg84Xc O$[#Bww9$گ`T f䌪-QSD3A$= sY8]rNhdg1gEϋ%^·?2W8oI *{* .:"]s6n4X#bgMJ<P>א!q4dme22:佩?sQq}pIem#q~dI^,tlQ nhb JMKw3"2-xYZqjaK`*mJ5t1 ؙbA|_"u`CjժΔPD|7lu(l fW1ʵVm~5P =eTGvL,^RN?#Kshy@PmQ=wg IY j<ݮ.؊}rRǽ;0U0e)q[0$ c Eҡݠ @P7+%6XoǍ@+ul/84JNeB0J8aFv)4]fѰnx f4CjHtǯI_X\LJW/dj1= 銅btBD@GMƘy~{aO#|9r ^'y xe%Xi&ɀӵi72bNQgɱȆAc_:C3=E,!0oϒ_bSxtѬ%0 =w|JAM+#M|H">a 4FeD%|APXhrg"߶FIZhF ^뭴MaSp^A/B!Fx wom&߳0?OJ2MH^WCoTu}V]$唗"9nQ,4i9ѰxB 5&/Bn^"OzHx{rTuDq Eu2_u.c_]X&-/毌.Yt5€/DHw{"hXIOt2A;M}Eqy^6()Q 01?1[u$W|H 2`,(}D5#P"k!7hg^p')Qf}'2K# 48,;7X}ET$`99N1nb$:6eUp\ִ»Ͳ7*CP~Z):7/p|!+Z =@w#OsV1<5x%U; _NޫiA(ϖK|d>8Gy[-ds^. 4˩`ZY_nU 02gEZ~OsfЉzIgV8 0ut }i֍XApE-wi^ܼ^$EɲʭĘxm->bɑU˨xzhrvͫ=cc) D,mbjXi`9\$ԤLV3Db\U ؆l0]W$p7$U*`Vtt/K_xܐŬO3Vd_z1YvO6 aT!Ր}QxcwbA`q-٘e'=hV9Su[6u#Y0. P{py=Qt zeMSb6dg3!b`hpC. I@D \$sHIIY3?S;oژIN{Zs)ċO6%!*oϒJ 6A?uéBygrHܳ~IE'1oE@R7=fdQ.W%|c02+yc.=N T?CxbЦЖ} oV;A&7 gamP&$-.eI0l}Vi^֌\3/f=aemy3 lҤEn)8^ˢz3Ysy֗~.[>UyXhh5=OdNYP :ZYAy@@M@'9nAA<hUEςhK0ɩȍ>oPea@rR։Hn]v[xCP}ˮ J~Yyw_bm3JsREvQ) U ~nzG$ _7 ae58$j0oAx9n*wEi:5U̴6й:qXfNHR \_x]$ʢ)*u麠AȃtERxiݑ 0vrhj7ڢ>0i8C) ulCg`iIKc#l?EJxx=i0mxfë~?3_cB|?&A9=A*50vd˫|p M$`HxxI;N#* 'rlC*na fM[f[33? /d%ƖJ+݉Y)J͟!]UdG;{_Y WW1H*c:%>"D1C8(r:/mZOpRf7v.ٿML-YbxQ]~p1g*^4VƼo?kaO5s3(NYuV@j=T{>k*KfAAe&ԕYHAS0NM#].S#Y:ܤOV("Y߼ʗ&}$"/ }qR·)BwMqqdd޷R02@`j Pwq z˪ + PX #pb1#h&,{1hH2Lt@$-[F׫싪wHZTCbme˃rRu=ƘHdT[s3HOA [3ُ2=;4ƇqOٟ}FH߰a8QeO@O McwIƤȑX&dz)QV-1xnO\g ?i'eQ)zHA`',~  Ґ.I71CKCUlDP =>xA~L!?,@m:gע" C0T\0`)lZw#>5y+/B3:I:^=&ZcJzRðCͿZzqŖ놪dR&5i^ [!̯V!$qE O4-gYאN:8Qɥ-ǀȇD-kPohgѕ.4Rh*S|y m:zevO}WjbaQ !Se3 Q9 du߼ L$ (^0Y꡷#9A-hHw?+jtը,7\p1#STZ..srkmiUboEqҷ&F`0Ft‹?>Ldy0f*L:j} a[!O`t@@'"ׄkjt{p(wrKtxh UV|vEUtpE$+[޾rT~;`G*5GH+y?#@|K'}0n@@GzHk`;$w=,FZ^E!RDKq/-y6t/eoBp?FO:9HtkԱZ|숽$uf\:|~a:-KB>7 P㑺Km@,.5ⰨE~(g/YQqxI<'ۇƅթ2 xiOE8'ĈA">)9;`._$H*4`eos*~ץ>rED>0X9A(+.l?\b{׈M_9DPbM5 l;LQ׼_Ǖ?Z% &R TEN(Zt9\vlt+ҹC09Em m&8[uWOp ysgNI3~uY{ocs2c@H P XYNQ{EG09wÑ4bLcMXO!g!xWLA {i[Pٓ(ڷDi&}I77Ȝ2aTZUzq荟:rrH>4PmU\&IYP"%Wު5Ĝ eS!$cB`S^9^W 7x25r Q$BVδQr-d0I-k樈yn Zϱ=@)p^]jkAԁ\3iXV߁vX T" ||Ěh !]Y(p6E@pzZQB1ڬJy нĪg0MyA&8+ET"Ҏ9CNkH.e:l@tǷh{$ݗuC I45'@e(_Gjb˺9˛"Ayf@z\nZ=PM"`-@"߃P'%1|BLЃcY'+1^kK+Zyw1bT@4oJ0m;hfW`dӆg瓬oN 3&zW @w)k'O?c B1B C~7ΒY^['L< S6󡪷8.A/`~(mfNHK&CZ&1˰ŭ'Hb`eY1"iX;f =RC*;Xl{̂x"8n0<I*&ؐK:lyrbloL >I+e:lcԔ/ϖSÐ7dyFQ棈 R%L⟢mq9Ӹi<,ť۴1~`Ӳvpĕu7vhTy6@:֟RnhDT-5'+g,{9#ްgp6)hAg8UڱG!FdZ~]ޛ޳TIEn>o{Ag N~% o5YO h< EFI fn L%XOmdvatZH}d;ܺLR_HQ=Dsm䄆1(5+ eT}O?/v:4tRYwܚU4yXx?-`,Gݘ,m#[v*/ Yt*`dNHlX h4/y9_aVtu_O3nynJ*vgIT%Fׇ/7rjO@J[bwH= y>W7qRgFcS8[<%bz qV`W%)Ŋ͊S&Q3@[|wkn̺}4JW`\L&!(/"cMCkȜD G诽ٓs]G}l y/Py0Ø*uKD@qƧߤčcJR.}گeX\ Y-?6kT:/I/e2Y:xo5 TV NѤO%۝I1[GS@bmHxzIgn4uX5" "6کGXFAԎb;6 )m3}#^ SC_y0?~j*9DFI:ߺ@>k=gp'~JEroCn!2)L LnVr~+[~A-"&~j vY%6@&I͏^F,6cE[M8Vj_ 5h01ߧ#f9O^@$V{F",3Ns 5-g)Sqw56=]xfU/+p=ym?)1(#cG+JT Loe7y' zM}b`[Uq|6K=Rnt].:=;5'u޵ !$4?*!nH cc]*|8Vpn (=<}TzGuvPƆ,4'lAKۊl'vHIk_! M4=QD98;6VdSϐ';Xl !Z =6y dIUUY/Q]..*4@764<u<`--pq"h%ݛ`"RvFIt_eMk %(FʱQՌe+ =q_ iBY h7$׵Ձ!ɒұ.˽"^?t{Ah;Fnf7:D'!>L_O2EGSw16T"@K$IM6VιVk?i1b$*cXS7OXJXKiT. i= XEL: Ix [J|rk{,jͳp{L)܈!ɦo@2S1xbn5tmMlF`?ѭ}:d7/.lf"+> ㊟ZH9V̂.5R|B(+̌#f× HM/&Sv j`R±aqnm^7dqkoE±d5oXLyaWݱ0 :Av)5˭z g x\7~)wT$vl~8JfE|W5w${@x6нi7]lI_E>Yt|]wJ$M%dwY.(:[k4P)w ^kU9 8s>E\3#'_T#+#䍰Ʃ/j/DdrY뺃-€}^lgKGzsFy $_{Wn;1\,c i/p|npyK̝zL0z;/P{ύ]`f>+/fWèIɎ{˭0z8%AYG7}$ k^=i _jͿH%k R<3}|`U Oi悷qn2:Gꪖ>uhrD7En r6'&M]7bz_̉})Vx&@e 9 }4슫_o4Rm^2LN!3SDbj?}#R}:*S; U 0A VdK(18liz*OX &|+#vG";b6D?W&[*NLp9x fFwYgY5b<7K(Ԗl6r Ơ әcͣC$~*Yl#hG@G/ 5f;R:aq:f'|}@ܷW 4zpi)e92< _e1;I20Fh(ڛ-I R$H8zރNיG LıKǺpj3`J2}G_!,S|QmD78(m'ȠN[t15√δ^F^h (|<;xz}_VM3v=;ב`SȒe9iD C1aqUQ.z+q ,E&Yq-(ݜϦ9l6>CVvuVڞ LNG%>䕄Rᾬhm:`dAJ-R*^aQu}8Or,dfժwިZFO'w2a%D)f?:^@W 98~V8˱wg"uL}g l=k%XS2v?.pvakIJ!W*QT1?ICS|_7~߷!ts]\'2 , ;X60˯/992+ބCa]o^gc::*iUl?;@たeь͂D͇i1JN;e$JS55' (P97wb9ȔFV-Hإ[%/IV:B#J kmM42~j>|4󽕠30"ޫkێD*cu5/yMz&'7=E)p]ݾ{Ejn.[=](<d^w}o-C3)ʻb#,YFA 6:S)GSt&8_gϼpaiQ7YDQ3-/<.vWܫqF'*:@-CWW9#KPXJt4tBJè }<= =7 RS*%VREX+QhCOt <9l^iW[ކ\eJDY`tLmxIT;P6&ma0~kAžf|&<INabrr= "|/C(5*]uOu4фG55du5QaQ[BꤛQ+RGV`ع6I[ o~g.V%h}lcg;blҚdF!_AQ##_5eRЎ `\ǧ*+ܴ=)>^,lҞɺCӄuYQ{L2><ͫ|Tk#kFS); )֧[#Ev#vt$P =҇g>U*m5o>wܼxc*ǂ\2˩-IJ,6scrO Y( ߏ%5]z qVehpsͥxku]e/ژKF>Ic ޜ#ه>w[_1i9U~# ۔2I\73!#H4! J]C|\[jI8%RPyUƎic6gs#7IHzNë&'Y䡜.͢H#' :SAz Bn]29'cزjsǯQ0`fyרEeߕ7~ ~KnU@ {3m Ǔ`D ؐV` d]7+э&D 5N+J-yoE=okdbSQT"V^NL $T7E'7MbdޅwS }jlXWnlyZҊ{@i_?K/d,`BQizJ¶=9`=l_,"-1T٠qjj'wB+919޳qc͍vH~]y^awe0:4 b/vƾK B#$W'S89c е2ѠѠ\tPo]nX0PUv+Y=sOEdwmX K3(w*sCXZi-_s7ׇIUGB `# aJoy5R8\YɲU^Kt]Ϻ)=/fx2sض/1i>:\ZδDl/vӖs8{`DIRέ{n*n\wibT޳I dâlSJO@ /]e|s|[ۙYQ cΕk,Av(C\ ([n(֨ Ë2--|ޜ1(cj4wp h_LªYK?=/羖aQ/%Tx9sQX33コH|-2\}&JؿCY p pqb69]I6noi'%:7Ǡk<[騌G% ZwT 41ByP;(kgr/Ŏf>rQqFvNER\CF~絛O]P:G2`O)ԇi)q>^>y։T~ܹfdž-xTUfs>cbM5dTj[3!T&â0< LWn?K4k2QG=UO^׻3XN'w5.uS<[:`Kυ%lō?+DVؤ1mJX 4R+q#̊$96" ^[u;?0}=J$2@>9:'C囅#B w7jQ;pnpb1kB`V{@VZ%{ۘTL(DݤTG,X D >#aix񞇕<3kywwXJM z᭷0R瞸\sH4ྕ5-(eybٟkhBs+Wy` YB\R&G',6[Z9vz`%Yu<*X#WdhQj [u͟zH mlSqK!uVLFmj3|<^r #tLIB~+[f=džIfjzne&MV J10Q eC$2(%C҈47%F6Nt%/x[2ZxPy-,7~ Y[kMFd*bm/4x֏ ^Нc$W&̉Va,zerVe#iq6Yה\þ%V}Ϣ-JR)%qEz6 'KP7!k?߶2Be (fY('lI=wÀ] y'T:wEjbib<ĢU 9+Imix`S\f&{3v8{J ;t&&OcyMXc nnfE섯~'R @ :d ;^)/s}03zoQ}ڭ?f|wnh/VMT [UE`ƪِ! sיwm.%$b\h 69J"ڈ^7bU#߷ACm^2v@D>%!-_*ꈷ.#Dϼ%9Ψ,@o4s"R|(}=?6*Foz)m#2\B0>śg4IO r{6VEwP`%˜g?]J #햆Y1R,f}'`veĔ,t)'T[gI?}pbQ{]:*1$LPF de.qD驋58 V2XRB)89~~ R)@!0L'niP{H |ZJHwڒZT~x(}2Z\wqso|2=Y~hk8{2 zLZL)`65nwxCFg,P^LABoЙ5Tê栩To@F2롻[M,Ium=^v@8H9aB76\IpJ~~ /@;M[3 ^ IWծrC1ȞU; V&/|P2*v֦Եuc޵ g2~3%CXƑqj@3'&C:o\NqNML)}8Տj@seqƱߛx/bC㗧u;C-D2sSwn,{mDwڧEYkޙrüe22CJ //,2h8T ԘcڝP\<`)[녪ҵSwbNaե-U^n1DSNc_CB(g AsG)1V< lpCh҄Q00?jwx7O@YrvevVAG-?ngswCBMȎ N8(*&ؤfpB<:U;F%S\61SuAc9/3|[4 &#X,v!c]{=c;ݝtsփqVw9XPBae*;q#p!.Ɉ8AvTf}-0A\H#{Z}?fdVJ1(a9LHܢ%Q9P;k}vla q£xb/wa z7 'U]דz|PB7dz}|2>3{9YLAie͠ ]q29> W3 y>*Dq[=<@c(hk4ux3/;a0,kjGf0@=m6b#m -OYt1?"SʃgQZ 8'ÆYJWZI, Hf×uKyǖ(kە MjSET5;9vq+md/rE#KӦ _L45LRxN78-,9eFG0izq13Ktqh lb^?* Cfq YqlkG *^N:RwtYka~Uw$4RPKpZaXl6܄!N $(3O7v )fԂZ[=uqTgԎ| t O*%ɯ^ӛGs#g fPn5ԋٹpዣT 0WQ+oRZDdl@"$GzBt#~wɇ!]$ܩ7Mm]0} m>G̼U: b5) wlj"tx MN"=8LGw?!ԯϰ~K}NhpE.^nuPs8pkV#Xa“oté07ĩqrUk\7T~5C}c|bS 1@H( D#l/G0Kezj LT2lLN/6%;_m}6JD$6Nي2FxzZO.X췾}ABh7R܇0x+&Tޗq.SF(qTb6NL#hص\d6/Mg${bL)о^t껂90Yʼcܙ!02T񸔏yaWc_[Wkͭh\*?)Ѕ,Yt5nl N ޼Pg 13*x\@r:qU6gAP^~mՖQqƲ)w̛c* ԳdP F9M~9'y#Fs=ET'?y"B~7 1GAL8 Zd9;%u97-C"A:{UPM( c<5dcHIʊ}| U޲'ԩ~|>2Qq.'鼦%–KE&Iz<whEC(fB9!@GegVl_~'z*sjb{2h@aߔnl&U=X Y+viben}f ,;6.E&Y &BjTEH韜b4-ag [X=/p4}`6Kf&9E?He[1T2"ea.e_ ~+/}6ȀAD] b2P Ұ7\.Bb} ϫͽk벒2S1>a_WT>@6lvy4IUv-7T8qlf><),yIW))V[ {J4i{Q]֬ՇQ~{A趭9z|RZ3Eˏ3Eb5yp`{3Y @>YY?\GɩඎP Vˤ(7#/og&EvcɪEc1>/ #REcUs G^\&m0q~_s;h+sb"7: 1\۩n['{wqFS·&QyCyx.{0@`#NY0n=Phn*i b |y`}߇#$Ō͑~ŒjDC)9ϾJ>~.Hkm̈́ϴJsJRMJn]U["HhǘBB" ҝN("ff.Sqm 2:\hchN8 wW/@O.c2HcHqӯ K1GKr|;θ.Lt[1H|Ik@)I*}SE ⏮ϩ 8r0":H+MH+Oؘ#S.F7™Ool(-p EHh3)GQe-A} 0բ? U*%o .ʀPmƆYr 3Ѽ쪗`+bߗLj-ʚzWQt܈"Srɟu)pf)g 4[p#?V *CJ}i%&MDcfk2{̆N0!'U*+*ABdz;ᕶ| ҈%梈ZqO0ܼ>ٗKۋˠؕx/#m~@Teoi; S[S8#µ˝u _| H~jdEH,%.35C8TOv>7Ew%ܷW v. L;z8W80 P`TP({Ӥ_ASREJH47HvHE/o6RHQ8f#x(?;o-.3E^XZ1 q;)O ln{"]T%c0L$=A'* < eQ[mjKxe G9N/݄Ƒ4@W5.-$+4J61RSm5i]_Vo!,6|- qm2۪^Jl?(EC]MS0GY5wD Ɖ=R~(N1V $fk`Pck24) t=@6ٰ=L/.Gy 07~@4}G]L\N]#y4;xoŪRtJƹέ̃)[E[9}D $<t y䴧w[RA]<$Re$mDVĞ.&G/>zZ׀ k$ꕄn컈!?`RչRr-v FRzYNd-5( qZi" czrjDP|SHsq(\#5'VWɋ%%@FH\y=]j{$Nh~ޞT EG%CD({GKClXO`dtiإM0`D'6FU&ɲ&=ےtq®:]S(q_J \RբɅsA L'8M^L/ YL%1 X5 *pU?q)pO]rz#mps.Y+[W_.< gf!*MpC3,qVK˳=^jDHs ĥӾ-_?z9j6PM^ t;rJM]&+^۩o~ww_D)J' CZ Jmn^C}0GY9oj6 RM{6jnq6<| /2A’ %X/IW>9!GPHZQcl{ⱗ[ތ(GR>T0Dh-SKb6Vk5ĄݺA+'Ce՟+& m!Ay *&s4 E9*?r5$YR2 ~Kty`(!lB[{u@hIp%k36l`0d8%VĝZD0>F0DZ2bs4+3\[OV!L8m{\$m̺<5פ~ƑOXu|w̔|Y6L*_ Q P y5 ANc䯗*Y,xA/cfHtXёvRn@>J. Rw;͗j>_*FkvrAŸRQ/U 04X XOoR!ص2* 8~?K$C]i); TXUKQ=V ղ8r{L'.iKʹ|jU+E$\\H]:OP"bd`D"XՊS~͏4J2?`}1E&Psj*R夫v*q׸ma4 w>,O݅HhӲ*[ȡ3Ԁ.7=GOdר}ro)FrBXn e mt2eHp[IZj  }<|p;<ʴZw7Ѩ00kuAibcg|o2X4O3BD S FkS~XZ*r\v%؛rqپ<ņêrwtl' NW="(ftdSuwR/Iq!%?'!#SoO@5ęnmHpMɊC փS{, !s{~SHc$eǂGa:Ml&sKy("j9 g n I@C?;~:'꘸G,73qHx_DِԟO'XBBgR׫hPzfE='%k A4p<9()K %Zc&zĠS~A~22.y@<ľd먪8#~C}%n.zfu dJkU9W2ܕfg O>$^.nrTc)34& $d8ͩCdgĭ' BT5:$N8zsƺl@s!k^6歨w~>n.)-5##PZq`ߣHUP+n#x<xYѾ.q׍ߴmm7% >N`bC}/V~ \Lp YxR3[ҬY[ ;$h,"G5JEQ~Ow>hpD 3vvط.n}BS׬Vc;gG}4f+}lI`q6t ebunQsf[m[Kbz\rjv'*XR<~sstv5>*Cjgr{w߾Zd!F[<\˴޼R@o°zmH2L4ת5x X%Ωt[aZnTqп6f؎4ccCKSmUg]Y,"\UpJUd\%G` ƿ,́GzOc%ƭ2vTW+@~Q?ϥ l‚ D&g@WdV1=# ܇׋pd-c>TeVv{X N-d3.901C)8xFI/)PtNJ L윟 ٯ5۩w*+ޅ[p䬖k,] PPy)T33Mk溎4/3%ؾU `zm6xtJR KgDEoSCuewla % U=%1# tq{?0W^cbΔ[v]8T{hfSZWJ,zT7zFH _4UN@*0gU 1R)5AL;^SРaǐ>оn=E["7xHfoJÈSfAO 睓 (NI1Bl!?‡4DƒW&zqX~phI=Щ{$$y# $O7|J O{!J%BH/p5 4Kv<`5E9A`qQ?5B"W*͋mdքUfj|ʂI%#‚SX銦1$*}鋦j+r,Kz{JzFcFW&/-D8 L$?z.)5HJTX7TpO `~:}Jrr4h*i|4TQSM f)qJ5HO> 貃/a91"GUD}%=KJUb4Ow g۞SƼoACvArkm9ajl>ӟx1g*.zaƯ0/)@cp!,yEɃ73.|0-O rvRo4)t-ϗz'?P`ܖ=˵6zW2ul je*RBXр~p2'l P ㏕棬JɦD tQ: PĵBS67gZ?KבwPq则A }C.:V#^rx(fqgq{<2:LOucNlG!pYlQZ7h<7fa:/y:Zt!k` 1ĻRÙ8 {:Yef@`ZqRvǝ ؼZD'6EʪF Mڣ^p1A8_ b_t؄xjͩϛ,FwՐس,uX^ gnو;c5DвzU fG2hE.51v5mW#K |R9-{VWWWFH, k*E_،fjZV>Twv'Dd\ÈP 8liђ@as:!"FtJAS3?wpqr%X-h&ޚbAXDFۦʍ\Dǂp@cWsH`lcÓ3ZsmԕT4;6$,]d)6;=i 7Az~L4UlIyXTJ ῟rނCb(Qg,B s&xA-:Gj|sD>y\%;ۨ0~G~W·߾BH?-^˷0%D鞽Zmi #Qo:Ff (gA/ iްej\4b3;ﱻy=^PzcD.3G+I|Ī^: FU8gf 9??`; WM^gNK1߰֗As2(RʌcfAb?c(JJQѨ^9֭n@BWۨՁEs=]"Y6ɳGoPƮfF觠*@"쿈@&#7)"8倥S4=.aQ e#BXL=ȑ4= ߰P".XPDCr%9 1OAf;4އS/$ĩ2Iqgz^jFNb)Q1P~} N*&kyi~C=`zOH"|}͙̉P2b890y/s{ "1{ VWX}aJ&vbđamxϴ@w@f5 W6}b@xspnM 2!6ӱT{k/y2F ^`٠}b@&  "?1S ʡRxP*b 0-%lW%\)PAe&Y!" FR7DXS[D.ܔG{.-F MO%8(=d@R%v!BKZzEKv)35 lz6*LT|iߵK!c6 &uPf63{Y3sdnGέ ׎[Vf(A3uQ(sź4N%O4VC8VwKh%e>L-0猊>Qg\n[80zbѠF\`YWMŤמYLz_@Rأ%@URLv[<GWD*?p` 0>$$3"'K]cQ ;y1c^wh˟|#6`}!n!YU*X/Sl7X=)7QM3,G-w ^&z9&}hf[ $ rU՘%Gޡl9J9h#Ye(ˋ@:j1{$Q<12PK*w&Wmwȸ!2(jeؓb1}׻ÁcgI?WyY( ~/&S(9gTvco2d Mtm2KIq3;fVl|rλW!/8z ְ.x *ϥW4/෌&֧z>Mhу<(Ā- AaVG BV)V1ݩo*.0a=,k1lou<3ϛtsE=9y yZ uMDPXXMMUO*2rv󈮇ғsҜyA[VwOʀתgxSN*fMT m fd#lL*M&404~k "C6*gX 4卹Ď}Y zzWɏ_1Y6;yIzEF)ʿB] vd1ۯM3xq6<pJ\L FTxF<spiizB +њ]r b6N{X wQ67卡@V@C`Jv2`^" (jbY|s/3>}+ o-E^/xz;9%YաT@\D2̕Noe&6ZvnlJ܅v&jgh\v4n3a0jAƶ +ȁ"F>9„Y 8.֤j:: {`HA|R>%`W ]\a*$ZVnLj%3z|xYZsd d؇ߡ w,񛁹'.-.n#EƝy딹;$=v*_wEkD1k4 |r>06,}M #f[&(z?%Җr6˖+`aPHI͂&^%^Hܐ5@VR$#t둠eĈ<Mq1}q+؞40۟*U@`﮴B:xcsy`,b :lLlr)L\T!L4ͯ//vUG0.F281L2ČN[X!7>jSfy]H? ȬTՃbMMQ"N>R'$: c1wB:W\瑾ի̈_[rsH.k:N =£^8y:|ˊF >JStYC@yPpio$hU(jDމzգO{6og`Cp/ep/Jm`7uiDQ2W:|l5^E{]Q&eb; e6alNk&p-Y_J.hx+X(lB;`ե83@exH08Vl/ǩBCj7ѱYI >`< 7&K6KQP_y=7|tjb)݆Qm/4@1 -z(EM%)[BWj"NQ H)%߼Z-SȚ* 0/=!©lUR [܊<|owW{R`Gmz{ƸWuЎw{?iJ %_fm0гf0㘥K؃$ҏs !4Ml {Blk9&QOIǕ,h `SNB:u| J|}+>1_YI%zΡj1`ARNu>0qmcn?1~N#=)H7QpzH4|6 8}jIkJ|hic}qz D ,Y;)BLH̓[vbRm_.2ӊFp P/f \O*k./@6a'΋F׻HE5%>h P C'pNpFmU" <0?&._c(IR;Ѷ%Ě Ha'p:@0ױѡk%0}1 @r)GĕOjF5l<@bT[ N'ؠ3p@yZII9kW }BB,ffOcQ#g3fgk>vBlSLQРl-uy}_ z GhiMؤACnko˘civ|b~WG~ "Y7;_&Ago}c +.qErLm EC^*H_dC`p'ru=S۱JP)W' D#}8 L_a|9TA\G7s|lx-ƥ1՜\*TYEXsMk]'5>ț lAY&5dc.uwZS=ib gE$ %wB$CKejBtQ2PvZej%) eQFJ&OjV>Xz#XS5#+ COK#'w-^-G+F䉰푰?zvFR}/&h)*z;'cAlI@( EY8m$,kgLW\wnG|DxΠÚ l_4DF:,ɰz=/F\wkIa*Xa&~B2A玄ap?ˀ 4w(\WܒoTwH({k1Oqn揔*Hk\[[Smnp| ƕz} y J&ښj4s]46W`zq4Bw`ꈲG Rk2T5J:] (PJ1,s,JtG qޜ6&Uc669K$|MDЧ#q?CILۉb K;]DOsJ=Tt#7ʁZֵq|;^eͰ~ҿTglRq>P>]o@{뮶*K)iXbq6Fċ6ac>iX!9O"֘hfnZ*UMLS^k]"b}SWVMVoR Ӭ+KKϰ{NդYpeu!Rhgrhw54$q4嫞&hgo< o\d`ZU!(i.{k 4cnOV3U/pSdJ5a^]wLJAH2-wl!zҲM`ӻ޾ SmplH/KjsF4xB2:=mK80!ɸS1F[(ՙnIof5B#{^P:M}]f9yt6lP8abGrT1osNt4kg=ĥTl[5N/ ru3 ɣ_{&鑫ӛ FȔ×Y6ۙabīcomk;A>bävܴ6l-#.!1cAOM=Įt ʑ]ۍjz .޸Li /粊zR Q_ C<,KPF%͜tyrmZND˲(gy"L}`: h\ђL_wGXODWǪ7iֿS1yāPxLY['i}v8;i||S0[,"wu v=xlN?ԏx' r m&FڪF[wCc?Hϳ}aG6@!|%4xRԡ9 2~fK%،aTCOYm,<* 2D^EX7HNAؑTj4OOS?l-eb'JkvЋq,:ks59 k"rG؞` qyE@nqX}q>$xj:`Y!G OBq3a]@tm9!|^];M`nCZ&.ts]|I1Nbw )N/3ۻ2Όw }(UmyΑg2;V/=LVh&r %G<3i.1pcj_.Px#2,FZUc=Ӽx_3U ֺI{nD@*Du34WH3(M]!EƱ'*udump W pH` &3n MϳYY}UQ|&\tRBk) HE\XC/㸣PB4i $cjT_HPO RL_|F@JH*2bQMO-oO#zo\ ᬉJ]B5R8 ymL]? lH^nɼAU}EK3gj֜ĭt>USMܘ5nrVƲ&'C BBS9^[&+JA\'} b fwo?'m<HSwEFBqXԞ:xࡋ5 U +Ӑc}!@=)XoOg\.?(Kh]P5cޗ--;O2pC¶Kd < m|!('† $pA \+P/Q [ /lEբGN R;ڕ? +.9hK{nWi G-Xc6v$FJp7H/蒝yܴ]#z3nl .3"eh 1UZ:g^=Cf -fӚČfe,U^t^@SMkG[O.87-gx*7"3LDf<9u\ xc\@w¹ڰpPjr\82;:" @FWo _צSnvUs.9?g4Âio͚/:IPS$i! hu6T+T&ϩy& Z}l1G|5Wג = ҈7>33;*'|DB7p=5hYe8vf0.._=S?+@Ñbp tZыQj7)OHA{Oӹ18G7_W{ ^%Cb"l~@ds6PW jKiYUF<"Qp'jcd2T,;JDc2 | ϸZcA pcU}! US(|GWY+i(L phEI[s= :Se6- yY30qKTQW-b5jάO7[=('9 ϑ1[~ЬvLSoa"Q XIMVdclQDYqsڤNW@U` SyRJVڈ2 A )zPԗ.%ng.4V e$uK2q|{Ik1KÐ-Jݜ23xPƲǃ$c7ZOS 8@TǪS`'t7vzRMFuZ۞ˊtd0;6Mfe؁OxTz)XD[Ɋe>KT^wsf)Apb-M.I"D$Sʓ i',Le`lt +4T8/mKk6 [m#VSKJS]FlO=5/DAŴuw~k e\2;፺\kL4+Bsv܇FRs [- ɋY~;sۉQ6oƃH߶$ܒZm_~4a J%Ea>#WU'NCJ)UHX' ߵQyze i~XUgۖzv4풣N[X=HJHd >LO~?I eʼj}yܓB/̱Jp(iޔT= ^+ݨR= MXЛSK#ht NکFhWJ"Rn3.ikd::MA͉ܧQ.ӟb[z`x oHB Aw UEa!n@oIpozK[JoM Hm|Iu˰em&~>;Hj"̋psx)s<5ss?-p9 C$Tj;G`8z:[f:\K;IU;i;Ȇ {V&]EϢa6 u/]m >Md:upn̼^$~bra_tsc.]preᡫ) Uhn9õڬU"{J 9Pmل4\8ՠD~Uj`.9YH"SʄiF1cJ 4?Ģ>д1"L@=F1Ӂm3 :*:&]#dR";=F:f:*rL%R=^#\+Yp1?ۘ-afZ,V|m#*jM\ͽxViFu1LvHSB}/ PQ7s}e-&C!&+APBiw"3wz%PqfAp+7$LD8^~@\;\tbR:_֪)~`.G^-zBJDn j+ 4 m0ש U;i7#AlY,DIF0hUhp -ɀl-VC-_2?,^u2w#6=q;)@(ς泌|b<J4رD(x|o[Ah8AMz憳f! 5Hd$ V0DF0#4p/D^\(`6 ki#ȓ#^nq%]<@1,TwJt;u%Όc 8 xcXu@y!;<5N@<m*L" q7~ô"/̫΋+rgpXF+X9p"EI W\_V1f[ݛ)Q'B:Ueڢ^g²9R;?7Äz-I>K4e|3]lJea?BCtY'Í1累4$u۸+.;&;d G $w쓇@,T`2.g*cv|ld5?FoqPuyĒ[ǃux(!{!0Hw2 L3|썰^TMԜ > a?qyZ jٮ^qц>dl列d2ylp7ؙ<>ZoFBOҸ>}s}+z> =xf9k>@:X(X#Db[Oi"@Rhx\L5>q yo:Wsd9O M1I~5zVfZ] qV;̆{JEs@7ČfD\'h>\N onhO^G:XPdv;\Ҏ+ۂc2FzݲQt>t`aNFw{noǽ 0K 48^똕~ay,Qƀi{-qjn"d]{"=u/E)KUo[2`;uY P˭M 3IP P9  :qB%tO~[% yЖ$@cYULՏfu0ϯҲ\`ҩ,WX.BUb-^*љ'n\VxR`SF)GBCO}ތ:v!05oj;avw.?Sd]A(yNovgĞv }pcv]۠gy8vkJ EKdzth`5Kѯڝ<@âJ~<?d!2wj8}%o0ܸ"!?$ًzF&nBTw&Yw8_[wN6Rʄt.d;E_ s5O>52߹[z`od> ;(zR@О} g!msx _@Y66oxOjد^xULF<:]4ƄTJhE@ }fn!p \U[G#6ԎR}6;r$< oBXy 'M0GH K\w/ "PT !rNx \ȯCO`R4+ㄥxAvے$МWxs0)k-d tIz 1"tn^}BSHPT o 2Kxzf.&1'w+OWb\B*~ 4nӐ9GDQ2FŖKk&/u{:N *o%'7bw9Xv|E?NUnwDN}1N-c0.OC~fyZuj?8r?5f{"@&Θ{%;F] Hb1+8h(86[WԌ[ Bi' <`p|? 2lroddهyj'VB=edv9lUj5||هW+gWL](E:V K3DвZsPD¯w15)g-)BRT2ZGt"=tQ_P$.SMq36<`Ӳ3t?WRșFU&.ʵ) V洹'+`.&kQPآ<%oLPPKO\`|G Ƙ+e;p=֢OKQ䴥)tjC/>yO+C [Fէh? ā&AƗ4TM:&_P۬Y0+^B@?3 !g <3G{;6#= <`)jtԩpF  yNb$ G!׃6JpD Z\5M]""|SzP5-I)w[Bk /1|Tɇ!oSt"HRbɨⒼ?Ӆ2َ*{8TQ*Op@sXȅV&&|0G<rV[p2hv,sT(`Ms6(XT*XrΌAsLDH9ꤗa U*z*Sد[W^cॖ &YF'^ 'hF̜4rQ$/̓[qW?&&91fe'D{}~.vsə87]qDAs^#ZfQ3h-LR7L=hˣ<D+p>fkxÜdEɞ^ l`Ds'b?%cv[$Gj \`#\yũThi8n3)"bsÊERhDҏ7B}brJްqf1pgp&m"uNh ʕ.Vtn8Ga-'-7|U <)w /=N[,!z+ПݩWM)@ (÷`|'u&j:sKգ r"Cfˣ͉Ox2a딝 [vNjBb8 `Nέ<fj垣~v& 9j1]V5͢۶)0O'7QQןAG6bY/T~;bpgiTß,*b%asETEѐ=O7J5v GX-d~iqti8,Y'`(klIZ0p:SV.\ɨm3^>N7 Pvf_[5}z{L7PFlv:;0) ie+)ᒧ^~5}!Fxs]B/xDV]ҋ'>X$bv&PgS)lByuyiS07=;• X_W$܅}3\'(ԛ #y3q?Kn&M{aG-︈xj7UB/ hХNWcko-@Ϻ<"4o•W6TO5>%X4{ZқI4l?c܌fr1Faԙww7.wGC}ɪf .638;>oJTCG)"ط[ OZ:Q_zM̩ fWLCKK/S.0ֈ#&G`2)ƥ >cJqT 7y`"Fʯۤ#d^+Lб-.$G4'H9J|wp[ $ڄ*My8zSp| <8Q|vf]Ju' H][.m +=Lc l*ҡè4y9@WGh_A%߫Dz^3ݘ:@f=48'ccf}$ 1Uݤmm&RfK8gr*^H4ȥB+)qPPܞz+Wg|65N P^:dor%ŧB ڋ2}':vn7wWBTmg7)i<i~dҮ ~b#g*~ Ƈ)AԐJ2\ CWb_g< /o*nJ%2KCsezܕXh챣iҠ|sHq AXH}Tw:저`9V(woA (,DG6όS]@U}O- Iru7Os]{ܺPB|u\{5' Ӷ9S+f iXgApbk3͜B_l,UNh ^lY{ Ja ΐ /gw{uY!W~ .l;snxԼ*ri1`{lM_G4 l%d( ;ͼpj!n2FAПNwvEK WOk0i}^3d%//O1b2/eu`bDzWbxC]T`!3o_)Ò'OчԚ 8x*Ȇħ}9b6*rEF^)߸#:B̝*(J/-I%O'u/kR a@pjlsdEO("Q!0Iۦ mnzg楚[4{_2uJuWlQ'o6:g8QTYQ%ɢ8:8X_ЙOՒ]ܷ~Rׁ^)ה4gpDy GvDծ$5ݛ$5}!JDiF9rFZgh/8ĬEQ[Awz.rB]Tb#>5:%o cNkF"c oH^dHKE.*+s*e^i  y6D:V}e ̼ntё06 cEKD"-bhn^(A3|Z@Wri!CMO 彮mʯ$2)Є]0>&{2_ĵgrw$:O"Qqkjb H8[/2Q_! }NIRS\q#´OvI'+CTsQx<у[t`$$l"0)m/%N_("|툮s0ΠpvrM"PhGw1^TnDm1j2]H!KV+σv |dﵚ9\ 'Svʗ!bv<JD+p@$i"`Ocq([u8>FQUQ\-c?D\IQq1\BACh$ X%ڻ}#:HTϽMC̩ϏD&â;ކ Յ4e*v&QJ&G\ g )oAv#SIb*M'ƯDpz18]۽Yܮ3l6fH느^ܙ/s*d6Urhf vCv{fJ힔#XE3Iew(X‹BRx8qӦU_Tj}}둞όJg3~y k0a$¾/6Y+B\H+qUZ Z=lsN_FPVZ Ї(>ؼ‹C'tJeo '.]G]lB`HED>AwZ)ueȋ(T b!l*}N]K%PbwC"$5$,ڧGMw'"rMľEY:6{>AGC}jr995,Gדp{[0 L]kŮ] V-;y 9w{ \h2ľUC'jݜ$H֮P0gX#_Ao9{#Mfif3/sBcb ȫS[v!j^DIM0RIdn"ֱ+ 3r ˥MnygY]wR"ͬWLb(s36qH*X_}.ȞtTg7u[JuRH+Yc7ãPN M5&@ҿ/lSU6<ݨYwjbt M44I!￑8 v78k$9C X:ϸwz^,Zm_YAt*NW>f;90Sj)O~ *G]aJCpfNG5 l:2O_~ Tbc> P92 @%F8}c%4旷xjBA5(n ROUhciMtҼ[w)cA0Ec@0Q|OUKV&<-m+oӨ)l/G tn|s\eEsxAxF"ؖAOF nZWŢףcst-LuF:S4&"٥1I9LFbaoc/LFVgQe2_ø{#0b!t"-csƙ6g$W# uAm N7$hÀxCkc(8k_}$:6az6 %ɴU=&_K',~̪ڕc34n$hd("9AkGnLߋ|#ml5 gpGnTnн޼-v@f vM.%H)L}^]0`F/w Kzߞ,I,Lrż2[>7eFTdjTo`iV2^ł"*Suˉ}Vvk!+<(y&&lM;HEӉ?} T%& q f%8xG1M-1q*$ͥ9"HС"}Q\lE3 ?x=ϑm$d.S2zEpB۞cBC, xh:`#ȣ?K߁ʞ bD6@|0!sG+ѫW〜[>ƿmVch^윱_CᆪD{.gڲ~3ˁHa4n;FH9J&Vss<)i.-[HNQSڇ@ `X˜Iw&l<Щ); Q['D5h뀱!SI.U`ŵ)F^=#T b&Sz/_TP o6"v>}j2s-RPN|Igvb_3o~,#Dg?#] hzck_(9dFcvbi)|{6 B| / (6MJ͕I3֙77|> ޠm:ZLK^yxSU:سn 4 *(Vm+-` 𨎐wp\Dp0Pf!](?CR$o&`mORHYƽAfrWꝲ\%k ˑ -Sc@}[*'c)`rӑ&07+" r$iKp ?-Qa I:fHd~ ć>҇,ft͏`i#l-sE3NG۳~ y-dV86YLO)m^th&KaL:1ۉǸ)=OFRg fz5:ݴNJMF;3plĉ_F""q-DGbFkHր&=}L7&N_v(aܔg_8i3?E?@` E-6Bh+ǀawkk6 48x?̈1V+3zm+̹S4D&f"8gΟCFwaÏhE:MeuQ2C0k=>5ɛ8旊D׶1\>˝î ӹApbBYUyl."RYOd$tr\'(6qP眊;$3xXkBr]*] GyPN+dtB f BfKtHiYd(Z623!au3R<׳yȒFӥ j6곤&%R Q+J )Rn8|!]XDSuDf.FnпٞZkR⢪j̽u$ٽsTASJ#)yqܸU7ܥn=QXW8ҬbhG,ޑ –\VK &S|yˋy("ٜ=sGt >|Ct<\z +RZ R #8 smȫw޲g.5!QF '(SKiAg0훾l%{줼Kvc$4O+ m0%gN4%FtCokC\H՘LbO߽U iAim_\[/GA4 X#)5r8-ȵ[G7R å񄳯VS饂6+:Y᭶*rzf NW^v$]pW{d9v6wnb ωӶw YDyy12K#q*д?EPաNAlYl021obIo#rR QOyCgwT^gO vЏ֌V|zvNvzZ60+հ.M&fʘJfNCL~.$ 6Ԓ^' szxOjdqKX",AaQK la1@.6oO||E5Vy]BrumjiKjⶎlօ:x9;ᎤD~s F>mШҒʖ>/Fub7z,(Bfpy#sgZMTM`PP/QSwR^t".$|#O~<#B>"Y"RXɐUPpz(6"ʽ/#h*.N>iLk'3&oK|#|”L/j0%M*Dvt"8zH1W+ mtոghC,ۋ4XcSz y[^y_ӫr_aLs@'c`| eUzNUX54g_OUq_U4O\Ȕ8Vb W# R j`^# U N "y?Gi9DPޓ,2hSK[^adI*F"½V;t#Q= 1#Y_X;%KvȔ儠^BCtv;nTx>x̀6.: ߾( ?@ޗa>Bo"J)SB~S^QWW@m5x㕟C!6B O{Zis+/^QUIOH\]XBoXg%7uB] #*eͮܬ?6]+bkSeǘu0ⒹɶLo*Zoϼx$~Bl)e)t윃Gp_Ozcn2.Z4}6%wz768M4[xCWȹGVyYshڻ9W+/GeZxGqka3_ Ó:9ePlZ?+Ӫ=#E]|PC| ̑r>{fNFDJCo4=F?WcQHXT9]A5ȚN֦[-B;~O"YaYLW:6 و%A?¡.O(K)اqY]3>AFHg149}RqǢisʈ6 ߝK Um6:yTDIsU?Lms $`?Or\RjCMV`o>q -7fSGQd+ 6kU*%+8C2Y J J~61qf5T̐C7c,>źgYߦzk.4>_0 g'tǗQׇ!d3-TA+]/wE?S;܊рLvM.s'<3UGO=^wG]#+vZhD}%%Cf6HCY-txr{F- F\>Yim5e -4HP*p P{h5։>+!O:Y/g@֗.i zV 0,>jX%Lx ^ͷ}B޸o+bMǪ{ _F,r`0"6IFKtîVe#&/ѧD0 n(o^B3w*}jz1G:>HZtS[*b/oAހkYǗ䍎G$" ;v,yq7wQҼԈ3fvKM@nock`+iթ[ߕy `4 ǠMKoЀL+ Dk!i {>Z{વV_BiQ1 C9&)Lrp9^b9 ڎI1Ң{>ׅx*FΣf4 Ň:,[aZ]VhsFDa:X`}M\$%; &|~ g84V 0vU+$$L`&Ny4w{Fcg5űa!_ oȞ`^q (&A: Z`F Wx&(Q4u\NcRVM6MwQUت.?{&"T$'Vr֟U]9:£gu.|0\{6Uy)T[,!,gCP&i-b+wUuFku՞e,u\ ШUiedXn__%rՕ 4.)@+)i*քg`L>q̠h'%Gĕ Fra*\NRd/(*q W;uZ4:ƚ*i2! ˃($!r!#q! ^IaU価i~zR安y 6?=fPb0+a}Rx2C#(hP} f I;G޹sn.Ҥ,^KĘ($YPLW 𜻄 HqpyCݤ2l֢y4jj\2TaMGj}m;8=70 68.s1HH#Bnk#qY}iKP^Zi6 QϏo1R!^ID} pf3`>x:FhWfՎyx YĒ v{fW  om`m5&<1W/"n3c6Jj+8mHpIW% TǼXIDeIl\[XXWSgsNJ%q6g˩='2|gyg#=<$͇z^V&XQ4(yb;꯱o|!3~OY p#L$V(^/ ^߂ 7І;ʹVq5(1 l_EtiX} @bqӁGz߭w@eI}8h*b;*ϷPEEB-5$?C#Ke}ʏ]@  7b}7lej>>UnU'u@84@yl= CEn͋qY9b'TG 3#Qӛ\`Dq!W+35+tUyR>W<sWx">}Ƙ۲5ՒI C {ƽAc,$RpOm!8]GRkԡdsZ|ktU߱_=#gP"5 U1j/eS ,^o/3]Jn[lC8/,_vY'rV􃥣@Qb R(ZlW/yFdЊ361D#]o-AFD!9t)ړf`z0Ijq)jx8/(TyVꗢ'x !60-;=ݐH,&jN*X먗IUg=# )m)]"qXdz>U=!F~5}DkRqY^Z>βNyC}Za<_@3&&`y[?yO2t',IWhF7vTsPluhyJ4|q60Vӫl3KQ Ax4%Ol4o. ]r~?4cN UB:)sm7clz! TwM ]鿤iPGuтצ7v|Y&wr/*vdwta:xyǛÉܐ v?6X~^ a)Kg lY1$\c6x7y`%{.,ń,bPwZڠI=sБܘ7nn`]><.ѿ 9IT_OK-ۣOр_,|8 ?x7ӊp]# VN)ΡY4%ao`m{U0Z{.&)8II](G,x&ձNb20 * 2upc\ŃOjsŏIJ&LjE`kå?&mն ;b S$c2Mi[bSHYsR6h;~x}ځ$Eٔϲb'19~*Qvumth.j} Nnl\g_B7p[Jr$QO8Jayp+PD$D54Rj32[V]FZG: 5Sq6e =h`PQ0j_yI-c?ۃ<J'LqX(Oo;|?A_$uxnδ,8-ͭ,G5L[>J&b3%rF$gq`7rz7:(!Ҏ&d^"Gxͅhdc !m\9Z \W /}%T elODw1+]G~36HHXn0ui[2#x_w7Y?rhÂ~EgIHrRpJ,C2~ aWkY!?{0CAdͪdNՏ} DZK;өqqv6;,JVR䨧L Ywtݒ9+` #(c!-$(?rt, 4t. ~'0VO\AXHRXN.n E:g`bȩbYD n#.͘* 3 s*;ǬNlTW|>#^dfbi8yr1B3x Jaͼn$Zל*h<=IyT3#rQa@oS\OɰEX²z1m-iXQ̃C,?yRd0Y | za b r(+T<%ZH%":ߺnAᴗ0 7bؐ ě (^-kX* " a3/'qPD+ELeK]\6@kId^p-a~>22ݜtnP;7n7yY <l`RKj..k.֤bl3cbl :1*o?t`EcWHl thԵ~!Eа5k&yd}V#ad0h0 QziZw_@Yj@/>0>~smIӛf )_&2= T&D __lf6!O>oMb΃H#0;H3XGʰ;1@]r 4* ":IńmM@ΉWj~1+4M$ BkOM,]!_ BuA7ah<BUNW_Ot OR%`1ƹVma~"|NJ] "-FKVIE* ox&8ðr>ǰSf˧54+T/вYU H`LZ95&}KP%xps+ĩE-@at՗YXa}tZcbB{=rq!U-,59"Tpʌۈ{L6wImwA/|gb-ţhiq, ka$P0]UD؍HZ!zǘ$ggnS7"Kn]Pc*^6 uQ4ⓆG!A4Q09 Lw׊4A->/R.(y _>*li>2g:I=|iDZvߨF̸6jlsC]-k^emWoXB(\Dk;ࡥc}nlO3g7Cq.!nȦB)`g}Zj&h^BUYr;Z\wyʰJp~ R62>޾$cd\1mha}%3R9(=TUBX:,Ű.%G U>#i^$8Md 1] cfVEaQFTvKo˗m&[AJGFu/#'P) (옪70MP*}`?@ 1/ ݂ ~KU9QNH"r->h) ĴbTFM+Oٯ,O;G"JG/3z#q hïn/79F^1o t̞L`69'8G~?rG3%9^#'q6o,9 d /+BdʬdQ dl KTrG/o]%HV`s%x~&8jN_B)+&57[. N^ o*Q[M;[p_qWk\PF`EȴNp-cҾJg=Vՠ;Y*X,SMJhؾ@P O0SCƒ7]? OVmu= _o:e@^M 1$bכ;`DӿVHŁ. eHIɸՊ-0`J+w$N [ށwRu{i2 lTC˾O^t0[˼uHu\^G :):pnG2j?>{:5P#z _GKCmAA첚+G.^&;ePNyT_'H҅BJĦZQOS (&~xwf@F5#]1ʘaYACl/u=B7h$=.p2h(TI NDT%Dvp!s%OZBB笼B}% +bc( |A/֞J.utj'/} xt [w<`p+'m=¤ej( 򉥊:RgvќU&P˖ `IHx2pIs w=6z:w^jX 0BuSA~(8q0#YҬd0iľqꑱw7V Wzl|))J6.@xξ6l0x ƺ.K+gﲱs#4^wQ :EqɺZcO 2PKV]1ϤqTc#1g=}pɝVʯxSw N{U17qX7zxVwl_idzu`:5)q^J_}t[erjIjy+khvLU{dSA䂼86v",HJY?iVQ7Qq'͛!w#P8sL8dΡѽ>H yuH:.aS>`np:\\.$,zi>O"__3rz~Vwן +?_gJ*9}[Bo~9;ıe i{ǐQva֜  =Ųq $/7g~˕n#>(Bb!v!USWpERc, p0Q93`,Q8e 4)GMnUWp6W]M¦ċIsޠ>b;!h6vDUp<`%|k0Q3Fy@Q(;s=EIạ ϛzpЃc`fk {!SZ=0ke@Dݎ}*=ʰmf^[oEBrq<>\p/sFg )+-49"W?3DQ1qxj d?R.蘘[H_T]+8ոHe)++(JI[$"U%[w)੻IO:qAqMgI+bٳUXfcfv^ 0:f^(; O?2uwn<ĽXw5G>s2̌|N+@-Q$a4wdYJjׇ;,ql$ଉ_R=iQiH _YuNL~;ِyV ,`$XC{0*Xw?SjfcŎ Va`-?xn4 7/ҖC1/5tھC{C2k,_6=]E}cjKې0R9%6Ќl?wNi\ .g0o'8"8.aqFwwnҹ)_5ِg5wݵ/|>~u H5E:1XQDT69GoM1DQ\Tn*+%4ANQu-"I'yfXaN*R ὑh){7C0i͗M}6 hMqi !8&B9Sa( WCaՠfƃ? 6lMR0?ui2:`WR"_KǶ̡=Axv}9ˈ/N6qPO6~o0%և '&2F3[(I n.EiI$Hu}EFjYԒxɈos[ ' c/ ᖫg|xҹtZ4K$++;s Q J 9bK;䷍$]N7ԨJLNiy˫^<@L#gu"}:E5Q<*|s1kMЂ߁L!ʛSCԊHCC҆G.\.T҉\e|{^>H:B3LR;: 3NDIe X毦-xDDxpTb>vQi.*"(B'kM\8٫Ie杠]G!!c%xTс5T7VTa ƨ _xS(^Wg|臿5tN', 216geJǫo412Ann|cJc"m)&qwwB$f{*hЃ1*7=Qlgt%sl-*)$ ü#u#X:=wbk]=뾍[& XkD ~ | #wD[eA@'ۿ4&DzT@YS&ιvU2 Z@Ɨ[rf/iT}u崩_cᵰ2%HupQ 8>NLi0qJM6Ҁap:AH'nC-ݢ)wR:t]\BZ&7O$Tf)OW#_rJ"6 2#\"ծҙA wc>OѤ@d\eY CagfM}y6S/YTa妘wȓ_@Bc{0S|Dxef?q("es!ى[u'~&Az0Ț| JopO+u3,К\l~mϖ_nx?c'Dg3UxC 5"?ǍefJˣ`qI[hL;vrҿu4^|BIm>քkrC.õHA;3QhNml }a U&o94i!5J԰^W897}j/v΅;$@R`:'p}k5.cM_1]8j//BW͗L "i(>mGم i/֘75ԕcuQ\Ϥ-z闳0ydn^݋ _}u{=f4 ^Pm#^|DF e毐xn M K5Fyp5txf1<^ƺۅ:78b)L-쎖]% .z~F\#YϞ2Yg)\?,}KZ[Xv(j?c WLu5E>(3ճxlpG?^P`3 o 8T1%Xֲuɘ W({.lN%<*@guu w{A Pr>`iUUG~2Ĺ)tN#[,n;TBbRf/ NǏ_IrR H="܋pUiU>)"`&@_Q~2zI?zxʰXU)r4?ƙ22XM-,Th7".rx$g5's$]:5%Ɇ}͔t sBA}Dy0ֹE3yaX gF{72P ʽ%$p]P'pF%b11| m3"0=@o9Cͮ1~ΑJZSN)w_lI6^v2{^F5ė_T$kPc 3C7VH6CZ!!eWXQIӆVgp rtCi"ß^JhiDd)Xw&MzcNSJ۴|87/X/k-cE䏭xc'@}FZR)} 񖀕vxtB'UtFvS$0fQh= 1?)5;֐yHE9p2RVʕh1U<#5JDHV41nH\t좛+ˍEIycLy')[} V՞¬ dw)JU 6t-P,G玄 _ @uL6aJp1.mrJAs[Brnd1hլJG4l"iX~Pc+cbB@ܻFLܗ=b67mAꢼeMIZ-m"|u y.g,^fZm`l R(J]}<-G'!-_1$3z]cFaǯk:Qu%zb{m.?,τyI`+'9%~Ĝ]`$1M(CSQ~fA+~'74Gġpg!/IW㮞e>Bk]œC,&p1. 8o')w'R}ͤ/"DWrPi@jT w_֛=PeSϓVYD>W! ;Vs,"]A^MK(9`x0 V4mZ}i]ρ6KncwxZ!j.Ao7ueOV]uL qdc &RjY\ťw30;%T.o$mMg6\X?OB櫻R =qꘈBJt. xYPvP/$%0 Q ԸL[m f bsp)% ^c9vt,b%`䝌 ~*¥ ?FvC4 )ɸfEI6Usc%ܻiQQ ~ExQ&H^fIVmQB/ @. G9]j}^.Ѷ(fH&ƵyM1;r&72۩1$a/Z#0g: [5)\Z\TNV7lIXe;5p舴.TuBכ!^<lN|y*93c7xkVVx-=)'İ6dSY \Uc+ Dh0. IǀC]QM]c\Ja P.6!0_t0+!x F]p^4^c|m=/n3i +O^kF!,^ߚPn7t7[>;jK+ ^y[J_ʶUtcBz9˟gHN4(j_YW3R گV(:?Vnp8GBu!BjS$oYk8S{6>'%Kp06U[]^YE:1[KM\)lŰP ;3'@ƞE(BANG"B'۪:ܲ|:|ޥA›0+Gyì*j]0AX"RkS~?C>; 2_FRh.3uVMm /.6nyc_+\ttiC tZd9Y~c=͖q;ʡ\GlE~̽dP+3tO53lg.殧2+v<\ *!^@0c\}#E++w9[@}ɀդ`E2A7|P{(W&8ζ̤ _@?e <ֺZZ3S# ![4)Pfۆ uƖVmN0D^ۜJW$.SOűEOBVGikz;B7;g p& Pl4_dVA"!݆/@aZBdOEv0LOBn;pF{1)D'''"qӭ"0jVєK7#D}*z>fz(8@G {>0$ޝ#IOΆN/p^?!$iTyG~x|;Y'V9ȼfG/l٧S٫6]c-)-d0{1 \^ʴيXljqtZ'n+t%B\>HW,%rŪgK\X{_cjBu>d,Ójc #!zH]AV~'C^`h*̔iS H"!$OLrE\BR!'M bͲt VH xa܊$v`)A&j?#4cis`Ml+&[/t͛$g!0M5ZU,a>aD벣|.c£[$Vs))9`>IoLN om;2ߖ0HDOϣiB"m<4]R NLQ"n.Dv+8Hw57_w}D dRJx7U.jR ew{j^LOKK[7 @ey7l?,$y/V^.}T 9 Fă +RtplleYxI.bH%IB)Z$& pl7Բó+m .5MwoCnT;*bE4!Y=dejxѶ F 7pI78. ^&qc5xYD&>Vbb9G4Xe{#K*#YZ833]8/z:hӽ}},SU(Pe r&Ȫ1~6#aJcW#gƟb 19EʭXcA6JGrUW3}``ep@ZehZA"'"$,-g%_%gף?[1j=5$)XVN].Q19e]aLn9HIaR}휑tq$^]5Z@ᱽl)nFSh0=60PA=p{]{;h& mqJ E0?؆3HzJKAg%s}*]F"j3\{jD?0F\$}aR]<82h02oE_%?}*όv>ZrL\^K)1,0aamOYѸXb,\kRѬk"B^?\f,1;c"ECQb7<2_:u<ގ 6J x>T[ I1_o0 ?QjGԭ˥]*!865̪ %0YK'l5o'[EsQ&%װ=MB58m+aRA/`(ٰu@ַ0k$SVewEL(3O$$ţc9Buƕ@lmRRRij<֯maB޾BJfޜ}Ϊgܩ5AN[m7ٽe7|  U)׆ t{Kcek-C8Zxi/D7}f%ہ^gq2l_@-T‡)Y}FL<(sF7;!*|!гXq|+`HA/~bzКC_-,braӞod%.OCl~2+JYGꍙWEf>XɏT.v*f:slqٽD {2lE*Jݴ)1 8<( p1jbi\'&?mtҙ̻C*Gw $t 2ߥF^7g :)q,Eͼ}!EqⅼA}bAפ @ݢ,dG;tMoc>;Iv101Cfim7p3!aiAf d%R%dxF)Q%$WM(kCz]Gzԇ* ?~ء9SqcI`j(E^y0Ŏ ρZ2Yi/kk63x٥`s|̒|5dY D'Ta -Kg>e/љ=Q6lH9# g]YiH/pcqz1QlAW1ȫH<ʁ[ˈtrq fvnʳ,yasP^C}Z,r=k~7m*Y EMD,AnE|̪;\us Ӧ I5 +IQ~J أl^8v;%!dgwш:==t:O\ob)feSR8fOĭ c8x]fR0Uٓ)]u|LbR10 Ny oi#Αv5γ4Q3).: j$v`G:# hܱ2/ɯ^qB n+>Ŷ7S'=:Pv WʾRr}=fSdI\IReexe^G0@f;buFRy{HLpUݪۺI ٨oNA} />m?#rL%3$dq=^€$:wע< cR[NM+&ʙ͆Fۤ"a!mdgY0MMʪGBsIJU`})2mƓ ?.ױ@'0$ gHۥw ڨXι $cGo eFB74fbۺ|kSR؎m8ףɃmS*.E%yKbocnȥBm}F0}ֳ3µspblh^vlN!:qt \mŞHL829 pT`|Ig[(L]}sڹf|%rΗMLгmՌ _XE=W sMnO!51(- X++ lS #LDaܭʹ<(1!!x,U$h+F'u%M~?t1J3jL [sbj:c,(`B^O_Dp4zz0hzIj7;A2+{mR8GÁͰ/℩LRwT@WTYxm߽á|Lܥjh"Hܫ=IgAZj#fid7X mVug;i.\/+drtan­RV"v ^&~L7;EǴ:CEOnc=wJ _Wq}ތݬT`'ʃ4p:?TdY;Obb?J[/1]2''N\} k `<^vE@M\ [A'խO ȸ{hP/"ˆhKoyG_.y,\g5(sN\ZT.|J0$LW @ 䧇~TR>9Y@v0V@,Miߔ Dgǧ4:`:19)ǿPDƢb8^ !~Bg264f;%K EnN`1 1Qɑ*cbGq瀺YXLZ *Q3{I4$<'5!4m]:'kݒK\]S,a#{ p)mz@nSH$^Z#y9Q33fc0J>]V#O3ք;TaQ6h)F %|a&߃8Vו?OW/k c6sIƒ]]eVJ~X.jd=]lTqe\T6ц4K36Z[%x!hC4ŻKgpÌQcz)[ΨYiG_^&$#Jz/c?^g*\עS"︫zH~{>9Ny O> XN YL, ϸnXۚFvÎ R:FF*f;_v@BX+^uOՠ 4@11ʹ')턈<5yؙz{̣+G kN Vi2RAHȲL oTJOB!֡ЉU6BD54. HX Vଢmiq~Hf(p@c L ]Yqc%`) 1]!JGtGx[k)_҅SKm$b i>CnzC%DvRJz, ? g.A~QAGUdh3xNq :`K~JS_5õJ8۾ۉ9jړACL+"~ĮH,Vזe'J}eIN b?F^a}7 !]i کN.2Wt'jRkZs ?9j! WG>Yt&DEͲӹtWѫoV'$L05\/|_#0zY%FLRtw1.B6Q9&KB(j/wׁ?$/#4Np0 ,TEffގׯ*QOEp WAdM'1$ww -g%%!B=_r%feG}R bUB!L2;x3M+'v v_.aTBRD#htgsDU Ee/ M|luu4䩖2Y)1'Q) L U$YŵNom6N@sHu{'Kx+ts#Vw8[!:煍 )xPܿUE}yuߩVs82 26=!~KqA%rPXrM3aB yXr[d抦 th^64`8M#, `{Z P0E)2bC)@ ;BZu5Uכ$ Yj6w_VzÞ_ ?糝{ ^BN{5g&yeg{}UGYyDm 8_Vut 2~X2G Pqru9HAG%㲨׊A4hDPG%m!I'i9$q/ 3t6zBnz"y%">0p $ڪXFHwCT2БRbyeQ nlto 'wf;wR@;l;Tdd|۹W-Q#M\j3RhJlRoZmo &YY&]`8|lb*[0SOR [Lծ0Lo{Ccs p!urlF..2/&岽fQմRk ЍJl9P_֏ŕ҆a [ VϮbvG2m#[6-Xe J;̳?"آ2>T7jEpͥ$/izG~E(Ι;8\KeJ6mA=J:CV|S9]+0yX4HKhU,ڣmjp|n&Vc=KU 76j!fNmTb PPZ[n +)0!A9wJ1rn}y==?ʃ',\Tc djV}P3L#PgUF,c{ah݀E}G>s.%i{MЕ}8e<%r;‘*౉D7JY(Ne2SN?f4z5^4 H%? mtHc/RM Qm鲰eEٲn>`e[=w+QLBU-sq&%o䁺!VK$d_J|5O8溧̋u+'|h 69s R>UnQ͜ = ~x;JbZ>|ܯb?:;<1M"/:\d_-dб$m" ̦_ XeoћvtMgԣ뮭.`=ؒQJ0URN۽ѯO@UzE.GdWكVfuB \Q9!*x#x^i(2PmKkjck@6Aԓm: K|_iYr.պild|K;oxx 1j2Շۂqya#38ۄX俁ACmf⒂n Y~Yj (=Ts-ϙCAMP/B:^΀#sA:]kQ ?@oLZ6fkY (G7t 'ZdQ R W [n.f9d4M#8_dOnt(A%3mv$+0X)Wp T2):c Oq;m~m 6klMYSY+)LU` Nn2d?|PPl]t;Fr1i0Q[#z[t'߳Ϝ&iS3Ld u q[>}ЂSh*I1&+^Sef#^vyRD|[:?׃>bS$^X>ңV6m,Y(237fET• Wj:w<\+{,22N=7.,Ftl6Wۄb7_֡<@9EH]ge^Mkgu-h}]Ŏ1ϣSF0D1C8P낐. \N '/9H 1/6*I4R7讬tY2n8EbsY|~ =M=ks(/?oĘ̻ Ra=&VɓH3 rmkqU0GI?Hc i%h!F'vS-VݓؙK~J9Qi ݦ_<{vjutsƨV$jƘ]3';N~7.9+Μ1\MI`ĀPu=ޙqq}GJї͊]A%Rsx8TfCA57ӮpM8f ric"6g] zgV12LUXNw&q3w_فĜ2^&M}+*Ƨ?*]`-O3@Nf.ERrH8xMo/KDw}6:z]nUNTeɮ:~'[k{_J t⋑e-G Mg{f.i΀rÛr#W jOWI/ti G@ AZuNݏ4(breȝl|2;2lWw/FԓksF$lNvdw\S ?q"USrH3tK)y*Jf/1Gw IZBsI jq6ؼWk<|u.L-δ:q䳊k&н1d@I=4kS+akdlp-/~Ag.E&$h5 ky0q7,b]E]gvQ#S󿱛3?%|XB$Cz.G{;AJX" NEYӻj۵"wQQ3M-e"\ K"LAMN;Eӟne+2V<{%zG gpTLPn$;L.W[%g?~΄z:tHrU!⑾ɴ.]YCӺ܄>NNr\ޫC(%PʲgY A~VAh7G%8G]z㯴㗕))AY(R^Ilw Vwf}(\džN&teW$uJك#Oau^kef4rItbCmC?Os^-+H8kz?>]PI*/=u^$lxrܞʮosS=w!dFWidzz腯ITgRm$K Mi7P KcWvA7Bm $C?Әtµک9|b7r?W=t61 9{}Ba'8{ݢ4ɶAoO Y'q9Be:H/#<{7\T{ :b%:k#ߵOvdRo?-cdzՆ:ʍyǫϱ`-_sTt1+Ah$=lꨯ;+&"Low$ea,tuۜ/9Z+ߑҴ-ׄ$/*r! @g;[{N՚`hsx[߂ &}QRd[_51 .,|$~G9)^=:yvCuE0Դg_~@J! R?1,hYJiӫ:.1'_0dHk@(A6eE#S[ 0:ĵ@ 3V8wiAwK)@,loqh2R}xƉUy c^t*n HaUhNw{Ɇ4*^m=;,k_f|@w*{MZ~`&cIV6i,_ +rrD'(KmÏ~ ojkOTg򊯨Ө 0RDaLяzz9˔J ײDQg,g5u9i A'Z ;)0*y$59i\K䍃nI7oTcN;HMp"s#t(LYgj2M2נ>M9ؔ M-mg)3m}׵<{2Xߟ=B'<sGj̀QAfC]⁈̗d*/jÞ",ccjQ*'2]o4SíD.L@~-JԆw̛J=>5WvE$r1l'?>cU2Y.3\9͐\PxYWĄ{Mx([þG1WYhc X2QY%+j唘Tzx2%|VGְP RHv6 G8_ȝBۂɇ"q^\R: =Y9><KW(Œ-wڭY2ggjRIATR_\WhWCt]YP)2 PWbr7u}'ޢ̺4k\~ C='q80a"h%8lwpA8D]T_i1;[r>*p,d3 |D (N^>>;v!׵n@#칛T@WʋtE + M7R)%X!@Y8kzq v35q'Rs)oq:| B,Q 88rs'EQbNR۫9tBP4{[woƗy|~娄QP^t`FTW*Iǜ8v)\-IXm+.qgJ$ W챕, ^Wf]\g&[ͽzʢ(key?X4\NTdEJwN3r5 oPT;&ReEQ^٢0t(t0:/P ѐ%׃'tg{)pSz($W_v2{%7;xl*=3 zaMz.!Vm6-^^؍ٴYl*Z~OiAo,s)WFgix4qU) )- WmLTv 9*]0dE0Ia+>!Vtl^]d=\ག"4 ;Cz ^u{o0|>ⰦksԸ5nW7]:֙5Auv+ ;U|b O-=nRG.9uC/8qno^և1?!Mܠ8cR^BtCx\f72C0/ˮhå7 *Yv&mWdb -kQOߣ>o*F^=)mUbw _8h 27F$Ľpƞ&QCTTh_V[ڵt!2MdFC^et*>X:#e$V4M]A{*QwZL1i5 ]>nU(fZ%$I]Bp9 =mX#nO+$ygSqL@|[S'G17l"oG?o4/7[o3W1h \xE:8C`L3kkGl[GKU^\F^T߀XuuAY)s[ guE0\3M,IWAHhOز$8DwE;ߘӓ»4 be-mah  SתM`US[E2C+Bu;<#3O_k3i7Gz[>|QJ3Tm(Z(l  ;v' ; L!JDbDi M ,f"fK2e;7TiCژd’{9XyѾ '1az* Kk3e L^Lt*|ƜS-w de,le ^< HP-:-t${("73FZ≳J7&P-/`T^M~) xPλ1|ׁe*7x5-}zZ`ɨ^Z-ƕKSD?X9>ywؑo, }jk5p#fh c^U "9p#o:rPcB2qBg%-gCJLlc\%tF{O 'mqVk㮙KE&81ƴ}? ?1\*dĪG/XЦYg/  '\䔚/&O}?U\' 4,]AIF7w Auy0 ˄Q R~M1a\a|eg`ӫc思L暑\ {:/HC`W4n,t)HJ6XT-vqnhL}9cѰQd"\ZHs^z%3sz^  I~:Ujr:̕ޏBYOaDjco7_K 6hc8AzRTB&UhV[,f櫾!Gi3 0&h-G/kU$Pn{B$-=<"@v ׶&[1@QU}ӮѦp&m%dAy_k,<;&Ozto e6Xyf8=†uZ)'#crO+}ۋJ4\o-an3TC(HE7WIA)WTl:')/7 3"H,>^ug[Żejԧ>A__T|ɟPD %YO0-uFϊwPYDlM@n.FGeҒS}jBW.2e8>&+D-s3)~GT1X)lQuIhwۙW͟,4 "X]м59NQ^ad:E:,y>)7nG0`nu\el͋rSE䠬tk@ C>10jՂe!ikj6o2]@ 0!Q8?ixLM@"4*bE|/A # g}xzZ".$3Jp4=&Mc2 S(u:Ioph#H zS =IKR"zߣ#˲K,qjVc AO&%f9X0E m Ƚ.s޹ij(;.Sj%C~^8߿tx FxW7#b)dG4 _h+b`EvJ$#JL?!#!._QX%Q?aR REe}% #@>͞qp\'s_R2xV4>OC@}+YKDKxmH$uOS'% A*>*|b4-榭/kU5(kr>mĥ%>_&s^a  0)܏R0Ҡ0,j{xyOa9BK qMf2ꉔ_ [f 5ÉX)mW'<@@S]7anu=IAv!608KZ×EQy2CyVxs?nv_< rŰsH\R|pȉ=ig~7(amY"a Ej7t9LaMکQtjZY;zпa%`4/{.*SJuC/Ξs;YR Z*?+spݏc\ZWeӟۯ)C= X@ćqDeNrrJU,ZycsvPYg0AwΊRYP#p-ˎ_azU:"~oYK\jˬ `-;vu pa ԳJ&^Ĥ}q;{G"@`bRAa:уǗ6!lQ(]MLmqK3ߴDssLc夡=/.mjjZ =$ր$c%w1.5V3NY^[̆e"[SuHBwZ #=/f[V(_P3TlAlRv#'wB7!3<+s k# b<7,u"5Q?jkYgXjħ)#H\V8X, $R/;#ۡe<.z* >:dؚ75X-7sy8eIC{vߍe-&0bblvJ8ɯ>j\唵/g~+$rMI2˞"UdJtv /C4- FLPER,d +1's>)+xQ@h':Ğ9K#+f fn zVp*C/S ?@ cxo\J܌_d|`LBtm2Ш!Df_Ng 02pk 0k2r~bTVgi\:u Ul67dkKnp^~~_nF> +9NXcn_Gc4* h67(g׏ ֽ坴\N_Sa;yHYmϒ_~DB­d.>7]jTD4E\cH2Uм_e3+L9HŻp :F%%:D&&*z]a3nSo|\sYBYcd] ڰd3EE z6pxp @${Y:CYeYj Srl3# v&?$^X , -o{>MeIRi jl})f|Lo4@$b؆qk)60ۣzWuJo|<_:A2B0W/YWw*F*h_8:Dc@eH-H0'Ƶ)I=p6K^ED>PUXRӸ<,LS UO+Ч\9;c[! ,4c`q٧b(Hv1)XW /HKpƈrY6ćH]EISkya,È? i-vC;P kmCՆ}a׍Um%KmȮi !L=kh.*Rh.2v'̷b?ס-z x[jK\K/jp?h5l~s^d<|;cy#3K"b2B#kk TrBo JxIW{/ӎ&e_ hv[%ka']+9UĻt3_ E#OXfihc&0G56MKr`FmoՀ̶޵GO4K{L,EgrOXuT6l1&BX:*4ﻌ\*{# ͫ5+Rm "584iG _<=v 'eToK) aqx81Ybt7!)U;fڤIy?3etqTHj" 6-סd*jEul\gdɣz3_]\nTO;6}_s}r-gUl v4cXpBAWAV+7`Gq2r@v ( ~'RM 1]x1NcyZ$}[pIP} plQ@p97ׇ&؜8꘏d菵/2v&/,.ɑjn0-,%N,[~n p+4/ZH}6?#&&@vNp'Sdfb߈%Q=EaIS?eTE蚱lȻxԖ+l?I[ش '1[M6Z9z^?}0̌`;';*CuX+wlk6*q6,<_ocs31%L G0Vgwrvx5;2|ESZT@RK" ?!4:0i?Pp= :]-|m`?<5yJcڙڕ:#0"dayTO1L:5@O\8zTw hnVJqøi kbP_ä :HL! WpIuѭp+ z0MD!j#t*䜤m`hу._z-)DVw6zH瘪vln C7~fR068sxrcƖ/#Ntت,5ۈ9/^1PEoMUiSY,6-'pL3󴈨DUekXҫٛ]Ks]K/8~UTXAԝo0ܰMz,圜F#!I)[v$vXfȇI,uor#9T*2\(7Wl`So,Œu;ΑS>BUWGF% ]mdLM[&CyuЋ8[!Kf6ΏCBTk};GuomaɄEoٮP}k!Y$6̠g߁\S '3Nx9⥺E[uZwt@x"8GSt/ϼRwt6n+i6hu}FO @bǿLK8X>x]x@Щ* #tt>2"v-3 a&"g u0( @OSf2N/Ս%fH>L]o¸3xfx-w>豵>-Nc5R+X_`2Dd7j; `k `҅>2 %] r]GA,Nʰ+%Rlϴj 4d*Q1I,rў');+i^}3xmfR}r*7]dG{6$pA>KTrf$ Iԫ)Tѧh 9_VvxN1Zo(ˈnkz_cA˫ot%Sݮ_}R獻h9eCw btn=eSʔ&Z!jS NQӪx Y%ХqchQ3HU `ڏMW}fd N|pyK"FǎRL*=Qz't2'-RLT!MZ[weLZYއ 8/1l/CԖ`HxFr(hFo?#qaņuEQ; 7w[_p:0,SJ'<\ݩ= HXK-Բ]"I'9-m2B{&ktFΡt|]C R2_5(M__x2l q2["]4hlO "1!&r̷Ms+A%C[Dykz+ 5{ǎ%S,p{=ݱ6Kt y}1lXȲKZ+dLR ޺6{y@b'Q*v(Tf$6a]v)ËUL&I~?[b6.JݨJ9OiX٨;&sqv1 MKDy4 )'+yjˣwI]L9VT {R4K3h;7Kb7~5i0Gӳa] ,7ab}a?8"cph+iCS T?2gn;.A}8ٟ=Qd]6Go|h~NhS0k*'6T l~h4akTݧ.$h̯Zo{gӁ`ןpnM8+,@ZO%~ow+k=,*}O,l)UUHhJ2^[M vt]kR N+38 q@.Ȕ|a΂Sv Şy$,QwB Rf6t"P>^ SQʃ%:oۻVzkXRX"pt>V\Y,&/`tُZ5+[_= R!Io^,}TK-$n8Y/,,(d{ -Oxgg8Jlj!ЍriWH1O7xAT"_2E~ (5JF.|+›@ҫ˨Cԇo ɔq0tTBY]' Fw?a^-hH46RַayD'n2\l3YWF~+;|…tk -΄;QTkFg90!K=yUiorބ'Ϋ7iOBxz2Am1W@8-MZq^/Η&w՛wC4]B /lЗ4ϳFHpTR?G8tΦ阈zP9" We<' 6r+Yby/E1k'qOS^8W@ΟQQ?To>Fn@I D,VRfvP hGZ!sIմ^ Pr\HMcN4z(yR,R̎lQ-b*z\UWW;zBAe›XQLϙP4Oļ?XmJᩓ̅&(Cc(%zx಴U˯`%dSwWȡKZQfT3\WzS ZOGQKt{= xټng(xA2@ #StU{ _o-:5-`8~8JD%rYx{& .Df!8Iz˪N+s-SNB%) PxH/R=6v_!{a\N3qOhNdċR56˦:B8-l;5W$}'1oz f!j8k [3ub9t3.uU,Zz!`5zcXHHuPYe Wq:8/$îp}&>2)ݖoKHX2(إ,;r:twOZUlv`쨌Iq]ekltgE2q6Kފ~ _àФd0#rl! (ŁF%Za#f|&X>xMG~hv5y=cѢqttK)'MQrx ߶J{X4@$pT@rW+n=, i) {9"/^NKѧ:]{K sfXEөfgbs&V`V$ֳ F^?)nlš0Q)gX  !&æ0@M&n[ms8Maw Jah9&v4w=QL!wSJLrVcah9^ U50 :S!w&Ю,W0g\Ν7-t6_{ԭB:;&\i#]p2^7lF#+ÇZU} 镹JDrDi4ϹQeb!ybDvCqBc' t{BgBUhE4oSZ֑GzS#[; ]-'!YΙہ$\Fq{EVdaLH{.3/H=`ͺQLM> +7.'] |mSf^J7V:nf;KD:Ȃ0l 9x"=ʹ̈́s*Hgc+ 2~ϰ x1< 䥌i굓!sl(Q33v֜x\)s|VBMxRQ,XZHUxt_aKO-u͂QiS|&̀Qƭd BMBg1wB <$=~p+ Xܡ`w(d33DInM!_c3@8?LLBy|OE!ni֦^x>NMi5UQWq n<#NW\铋Q&:rpJ5_&<{.8((Con6#s޻K-2ӲhrEIYڬGܓ.#h0 ǒg\WJ)^Ѽ6v b3 f+S>=F~ #r g%մPI +'(ͫt+faWgHP7MAx:vi %>A }1| z4/VǜKu.Hryz&zPAQ|/x?]'~T/f\UȹspBE ЬOp&gR]J?;q=>lY61)fBY{R(L&"{K`V M&IXBwC=n,6]%E/8 G8獩-̗'w"eqZ'2E. ;.񴝎a+%R63#w%&=Y6R֧,`:EDe,NnkYe?vaQ& Œ{ %zYi=AGL._{.CՖS$U Rsi밵\%R w~5 2`65n\|ҋ7DXW(XmB: B;)bj2{@+2/ A&[gӧSa+\  xSFVdZQ2pi_2DX~Usk[%&̹ qoR&c3[2ud߰P' ҆(!F9Ck4t 2fR$d o{l tr NQ$>Vq>Q'%om &Y9^q'$a;^6#9Wmr17d#NJ}E^m/d~t'[BYr]JEw{n`>? j`ؼW J`́]s4S-ԟ;% Qsll͜KX?!yeR8R|z|:6| ץq TҦoWn@n&+=U{TgV[ٍ5N;;C{E͌lէC9az{w{ X\83ahN\UqZ((0͏2אvT{nSUt%cai&h i0֙y/q>$C=a8P;nG:{!>%LM^ isAZN\eƂQ$Ǯ8Fz!QCd%*:?%\aܜ6K(?SĹ-ڭe<:YrT*rk*$q)krAz6|$gb-Wu95g~4s/Ub e: Uy۷4^P̱AC2faH6f5#-":.QazS^/F/H31+ \a~|ib6p $=I'`%5|2,~ 7$5$Oi?,劅9!>7xhֽlBZTDUy_ډw9}>jpD*!᠚ڡ;G,Eg!ŀ`4QB mK3څa0vnϪ@TPFM7nH2n~!W!yEσ5uQGƽ8d Zj&,gwm*/Z/۲!.,cY9{֚ub1?# V?n5jB- 9!_H2&KTAU =#Aa)SpCxgk.nfܷψ!s]xgL4!+%BV$$N~0;QM萘DB^kC3 in"i[q)X^gKl ȯ3S뗎8 )m8@tW 3GgLs? a<@ԵJd[6J%1 ssdd_O;N]OEa)(TYclMPWAv (q Pt(>6h~MLE[S~RbR@u{? :rdvŎ*X;hi+R => 4Y= %l ;6uG4)N"?0t7Lp ]Ĉ)gŃkYYR9AAl5U<\ [ >=kƎ>[_Lu(fHL,KvtB\:o`)jHGs݅tuRDuD*z`e/H/ !n^Rr03^i2 (5mznx6Ћ,,͗xcرpۛ*`?v 9RJdm#Sc`~$4X"ngW_ela ҕ[r8eӴRnͫ`Cüb+إj1:di$47G J!תFc7+ㅟV>`Cb1fKI0Q7z $@2ynUrzN ^_qWhezċ`8X=8H~tiX^k__``f̽e K `A/T@ !KSAj ֺכ"Ӹ- 5ʋ lI 'E=MpvYZYa; 9hbezaN٢ br2fSZ{Zrv" ~[']?0{)tF5W<ﶎq=[ BHG'*\~ݡ*x̴tbFf~̘} bi.dᐞڀ_h`ÞvρfJGl1eJoKE 龟0^FE31/8b]D@gmx+ZҗrZ-EnY(K$H,}uSW5燷C?u%k0i$;y'4 VkV{!/X*U=1) ci7= 8oMn8?16??W2gf6*%_;w/(C".{8,V·Zc hjrg=աIK%XLޏү OPpn}6w!+t* Gq@kB1\n3ϖQ+M}Jcl(ό9h 2`qql6tʯ^/}Nץ\'W"M*=?BB:LK[Zbn{"DHNo'97!c}zGLDϾܻ 7F*vO陫¾[} + '<)USBՃʋ 2vu{{mMslntL1!K]sSTТi.ڿKrLQU7˒i3r!QA{o{ׅ̭ڳp?'EAGD#H%%A YSZ| TPÄdS%ءE@$W-U3a.Ew1w )j1Dq?Ixyh*fYҷk<u4N59ҔR}`rA7!3uSuFR<+I*W>|9yrռ>Zv8!YjL at36?h7& ?CмB;BC"ȜOk;`p;|%p<$eB{L{@z̵aWu_QKFMO9LCY%s&tB^rV#ȝȹ#Ӎ3wfCsM eMEY>Ti 1/$oZo"kCx[Td%i@IMӴϋV"zQhkV0ꂏdsxR3D W#JC>^Ky7䓚TjSZhpgWK[*b,c[lVQa.ZjK__5I t#kZw$]7ĵq"C`(ͻ= nOz,.XY}'Nh^7|s_Hx/c>,n'|FX#{ۿIv[菦F8Dު5&'XGjM{PUb?m%ؙq2iC:Co ݇Gd$بq=;)'O$# <8=0"u6o"۱jd?.k|򑶯$_eni.&*TpɮjE8gx\N.x1+]dJ5V(@ݭRH॥Ж9lymNJnN1/ kF)BmxΚ W2<[{+W{Q|o;HlQeQ]|S`C#]wR;RTvE0oQlsPsjm@y6sCvCHk*4 <<$1١-ձr{{ڈ鲪ҹsqfmq@bRq);_010i78-L+Iu* c&/9FiU @" 5;ɏsba\%SO ^ڽN&1`WeWq}Olo)ٻNu@8rh 3(U~)WP_z͘,J: v_5c~#@ox׻lU,nR߹d{$?52L^(G!hug\oפ4nM/zeeݾQfntWME䝅NyPa[k5j\Ci*lL2ֺf/Z'B؊ћtڴ-p5]M~ ї] ZkzONg?ܘlWҿcY!9FJZa>RRthÛ6"ݠ 5г? 2 ºa-=mra & :S^&;hy1 Wv/*{ω%1[LsY4e?3>B4DUYo^??.3 k-.yRwK# z[/  u"sq2z-Q' Fg7BYj &]qYptMnO[*(A׍A]3'o4T0dzvSzIWq\Vgs .gj'| y8I<Vy˧ȵr(˄>斘6%0G+ '-RP Dxg%o CUOCBtb?eqpRlQ(B,i(e"SE-}H^&3<]rT{;ܟ!))wR M>I1fp }^D.0}#C̓(u$u W<덠/( nv9Xf12* ɰ52%PǸuTilC%_DSGDkx)MZkn(J*G|!";sgN.qJ= 0A!6u\c HK.u~G= cn{>`P|buNգ W}2*w\NF,= "r H޳5Fx њ1@< hKm캟rs{tS''x~-[C#ف31Soykh Yph7,hTթIs\C_E+Ա_ [횺  mRڿ [(wndH\ y#fCMu { I )c:bMl 3$8qUe  5\~.*62G!2a] \bf»% Ś@˺n-CfZP⫄$BM@N1m`c&3p_;Y cU3A[LpZ3 1ޮ_]Ð"r݃G1o3 <'ș"Y^_wӱCta)Bۻ Ҟ2ϦꂹbYOZX?i_t/BYDj6e ~m7,VڌȨRwFA|ŌX"˩hSmYG-~{厂v4"ٙ$[D+/75]wpI/f;hC_PŅ /YteY^KyvRiuRf+'PYwG4i%l/g=]ҘQ(%f ^f/ՠ|>]?C'E|CH1+W%o=Sݦ\`w]l[JV LS]4lG-ӺYΘ$+S/"& *#6=uXu\Ւݤ6F)E\) kjwM#| <6Gt[:Bnw7%< b4m,Ge[ᘦC[Qx_ ʗWa*ҳpkhO9rM.<C)\aJmF^0x⩫Hڍظ `Re  S <88 +QAvoFJu p^>͑ʊXӇyCk$_`AZVlVIwZec㹄{=υ|,P!9g,7BAHNH&DBuX¸y:kh$Rʱ;oVqxɔhV{+x=놹bpr M^W^kVY8L%WKE*E*HR|Cq\kVW(˂3V5n)A 2߻]?\iPH^mEՆHe*B!o< "񅛦j+ӛEЊ2,Tm]5X:̋y#Fk[}J+@O SKlS0Z:99eO[;Om]mbo=>n1쾳 )LաA3suBiELzP)f #i֖%8WfffvDJc-Mx%h sӝ E/z^ԕgwEf ¥5oqu$hZjvtᐷRe3 i̪#?DDw'Jԑ&Y* 0f9QћSJZ:?G ΐCbpqW^SϘ35r$MG|dC׏2*荧b6?Ev ~q*UU PiuXYfiS8SG鄽,aACuAr.BLy:3<&5q";GD"Q+X&+)\a'\*Ϡ]q.,)T胓Q?V`Dzu>V]l~|]4D Bg}v9 P;LɹJV[ M\(v/{+F*džY'}*9p̠W^s:{&{VA}!I߲z] "b:/,\1P%1+#崜dO.Kmg=Cz0,O\Q2krYWS># %q i(DLMvKHj¨R$(ҟ0R+'Z ٘%ҴM[B'ͯHWy(_,RSqw0k7,'`Q4#ar{ŠJf=h~m#kv3yu`c[O T[{IϢ1@:UOb%ƐnS<0@=~P>ٴ40DlLhZ9ae<(3< !?4<7|QԘ>ҥ(N&m Z/4[hP,̫ @༬y,|cUX9fy꭯=ܫC/cyv֔9eDʡf_j/=GYXS%ǀaL#e-SvEN3o:{HU[@]? ĵ=t23ym>(q FfMA78$:lHO)4ђ[ͧP*r(&E]7!hF!MqBÇWqX&2ƥ Y|uP~ xjQ5:W=N7 ÚWf]|Z/X-Aj T蝃k ,)#w; m DPj<3EH1m7_5h1b/V|P`ROo .<}c}1)K\R ><^i-I'$)5 Vk2Bs,۪O_*< v) j+AgEw1x@l-g'H06̼T$I;2P%!CXA7";"T7aK4'4AR' @\eW !0*P`V 陉= IYRdfr(8WEzJ'Gkurf8=ǽ^jlmu@|LA0J{>c\(u$+g.-:ZkPMVx9`*B W4i~jO+4TťsպImS NdyM|ͣOJN쑓VTqr$ )-ޮGTj2z( Q_Ѕpq/QU:$?2w` YuSMuH 0)sUtz+ ƏشxA)$O4B殣LϹUd\IjaD^#~ȝ"b#u ^b5>`,C 3lvMG,5!aNnsm;mĵ3}Nk/>k^Ø|/Ʃ@<8d[K hQ׺P?YK19:" 7wt.+H:z6@_$Qnn؅F2/x|7uSf5@u%+d'^ @ 7]Eb2ߌ=bn[9`0.sh)o;kWG/LAנ+yr% ͽMAdv4O%R6OxǷVNbţ(COU+ځfNTe&b6I[ӣi9t'z-F魯pʧ&#ֽ+C{>Xj5!tl'?3ņ~HbmRE ܽC߿Ϗ{-y zLշjEH -o=o'YN*O^=jYT hHZL$LǥZlVc&,[^Zfh`nvtbإ Op%l7%NԱ*KH~㒛`*!;OE{Q80Fb "07&'O, " T6[PK[۵piybUՐٝ OT ,pym]V:KJgE$JF]AH2w*ZJl-s%NHKpτMe4r֐:8xC/Fq|2˂ pYXp^G }՛Lo\? H"K8/S%aQt ?o0r?ߴGz҃vx<^vH@,r9I_DXݛ2Aw~aH%[9<[OQ @\@leވ,A2p2>*՜.h%nN_5 X 8sO!vHՙauEn!"zW.rqoVu]ձKT1ΎUC۽PZF쵙zwauQR zF+$*j06ɀvd,?Zk t # >kQN)u jBAy|DM?[Fv q+IXI$=C3Ed3 8EU܃l@N:Qo<- Brp#ҝ̤wEQ< aq ju>i)F#ۦ, |c'oVݗ<#a _w`M:n֋2\w@ jn58"h'_.v% lMȠ,"da MuqI]]>.]WZ ڍ9&Avrĉg3x\S[Wl[͎8B+!cv\L17vW"An UϹژX$)ZIJdd+DR(xk7OV.9рh)4)C}ʱ 8BViLkxt4膺-g4޶u1IӢͲwykl>FY,EKڦ؏Gg9YVf='Nw*#mNЭ,RТbc{0,(tk{NMƶm ZAPБ}M+Y$=0 ω{O!n` \ja-slm{uwaT3O*q.r՝lJc}9`l^xR]HEzC0ݠ: A2iSZ 5_Ⱥ 8oq'w 5&|;„J 7{o#R?9:\^>Ɗɻ:L?"ޕzPͤw$Q}3_NpՔ6k6ȸC\ 'Gai!en@M(cUnӆ!~4d,[Uڥ([$L1%$ϦDYI-\;$_>126v" `uF؏̯kJ *)YUeذlRXe8>W`MjPnj(&8=q}D _Y KcٖpI7oh|To+gye %?|6F%qcw3[lwd]ytfLYwNTtĔAZ2:sˇ;u?gV]I2'"Q#}t,g̰[q2$_ϼ"x4o}u4V5'x+e.֏lv^6?ݫGC&*[ձ0$һ6][Ѽ 3`|@u|CFN"lTʦuGF~0?I}H~yé!/  R~V+#̱Sń?*dg={[@d1{B1KTGW:*dЍy# S>K4N5׊hrˬ!DŽ3z8gR"FئJywuVLA9˻b!UvzX`)1⯀AD1q\ͷOpb!8١{M W!iJ10Fy,l){tarpe,•,h(4uY0Tk \" 6AlF!?_nxA5>Fh=<vhe~:mM񏗡6,j̡#v;KTǜ/d4JvJ LiX8F ةhCASf0r.;WYcwT& Nff]̳{_Q!DRŇK!u8UʬhVDpjpMּ8xb-)$e\Urp3|7^}p$^hVvgHx~RtY<g(ӓd9Ow$ E^U:gG[?Li5 3,mC"n߈;\=!6[~.Lp)zܼ;%&vS6 > "Jo]h߽<1=@yI1_Jy 6[WCQcC csFQ%$L-,PO($|;eٓJ[>L]6[~FHF}d/yF?IٍCNJGG:`Ki7Kn MQuPy ׉7sU@a݂U(˛JyE J7J A{#%hS"ڄ7q;:bAsE!{()@ز_WV̈#зV?`7U272DcK%Ws衯qwo)̎#`1W*`כPfI"ܳ{MMu-^<4fb,ϋh[#g ZWiO@rq*5Zf +Lu:Du03>Bޗ| ͊!60ƯB٩`y)A6CR{g iTbNCk^_SIȡI:DH oQ#Jn0#NςAQI wbzPpuC\x.'y0+ލgE#]Ib W +an ]£֏_boƒg~X(Oj%EqAZ fVcL流QԻҪs,ƿ2I|N%F GR׀FYn~8{/(V[#gD@t{,WP!uI$ q^b$'#!S)\"IqOTo_69 77 MP{5cy)MFlyIq/XتŶ]Ufg3_3/%z{E2Ut\PEO&rYҨY;hX,ȄldrQ(۾pV<}4Lb$K?' f_79)X)_(2#pPD2QO"|q"ex :K8!Ng/n{zCztK9Kg%6wՐLbٟil(7؊jiXJ F S5jS` 9G7OC1EAVcl:qR&4B(u#rٚ,+=muZ=ZMHZ).]' .rRMUk)=)Ǻu.\ \)}ޠ˶PIS!x*%_\Z[Q>[3pƀuô:[u,>612gz="wKӜFCdvJ΄M]wD5O}07i s"N\wkϙھ-#rk֊;j2QöoxtbTVY)ՃД`1qSSI|!OE%WA5KyA-hJaE y@Q">[8`m;y~wJ/lW ldeg&ѯ 2uM*?TNV:^ɯVL0ſJom"`FC5{܆fq+Dl:715/uSv]۔7sŁW}4!+ ܶnPt6yݚ7 s`,5lK>󻐦_*^Fyա/@sLQ~?? qSE:gz&rT(Lma<kaZ-LXM)ύXxѪGI77Eai2>O}z|\%]/`RZ !0w:5؁˄ȟs>qU t1ѴYxT0b&3AbA铸 !'MU欔~%Tb)h*(|X/f2ˆ'{( ^ *ۑ#enKќ<HXWC+NEFְ N_eV;|6N+s|hD}d $)@Vu|D2k#(TN91O-;oG !Z2af6ήZG(~I}o˂jDN 'v St3t stG p^A֒}t-]"3VVU̕jIY/ݴԟ* YsRM@s{Y._3u>y0vIз&HZZq{g鵓, zߑ>^*S|WCe{^&HM۴mVtn'[z]f #31 _ -6OnyL'MƯZ-[tx-,q^ndؽ\^픾4i07_L;l}%o Eюc4n,w\K8^g)[%6#aHY_t%0iu`}N'dWnqį%ޖ TG r- 9> iGC$%"TaoՉ,vNB|vKͅxG8 [EdJ<(I3ҵq@ltusSW*AW%tiCQ"O| 7HY7_n../= ppXE_l`,Ò3maKF^=lk5$y<yrg5)g2*lH&A \+'5"S65UzJ+T}-}[>'ZfZowz3VA2hbi(J|V̙%ge9=N:j+lTnO@àah],mat9c)8Ls~ f[ⲳyt~QUWZGh&Y Vh9pDVhnN_4"Y/ˉf/_|Vv,/k$gW}2܈@3$cʖc0 Aq8R F>1ypmRtSaѩ NIX/rFay6tpPBw#m@T!X,ƠT(R4 ǣV8\KĠ6B'bFĂ^H9%qCB9&.Rc0UZ!Q*.csvSg!"n%U+0O6A~J|M‘ZnNtL⍿O>_W#dQkK^"X L[QSFj7^ԢͺҪ9Ju-eco- _0G-HNy`acT"+3B7M!_zbZj&L\VsW2kުQIT9Ίf-{JP`><]B,<潦3,sl1 r,Q+^sv۫jz O2,Cc a+?n0e3Z[QvҍޗQJ^gl#=@Atm0gfd-g$ j0BN1b=ʴѼZCo$u%+1Z ()2\EYd!"HJ޻hV_(B-T8o镫r^% qEuh8_y+V v%_u Yحq8*H}%q:nGc},_!qRPvp* F^o5t"w?f@TƜO"e IZB(PCMTS^Shjoh.ws$R42ݻ |l|~@M5a 6ic0|li(7#ujVqJO<6ni(h^U$ʝ.;gsm4g.@HΔ`cwl d ]/{!I '2@7o9Q+=CECXwJ#QYA :{+/̿PYy:;[ L{k>SnI-nlR8EªvAC9]H =of?h?e/2݇B !j~ilBh s@Q۱12"Uh,O<כ DC^J9EMt)L0ES~Kv]p+y;,l.Mʟe% q ʠ,>DB$uJ9:+W>HIAxW&Ɉ4m1ps_#'sV x Xۥ6u1܎+h)FydVω</g R_,nf?LijXNJCo5^īn,FL}8ܣD./+12W݄ AJ6=s|pYqr!hiXzҘȬ긦3cuv:ج?I&aDpE !0Bt f4n!!dPLa ?Ѥ#}Z] |nk}!$=xXUeyC iD$؝ѫL3WXNqnS, MoR'( S$KEI@ʶP1a/Cf/kF)n6&os8CyNћhs$oK,Eu5ͧ}0أka91V2@ȗPNiXA'Y 2]K!o0un{ֈk%cR)z$]o<߸ e{r'g#JX2jvb28Y'K+i)~FQS\n7: W#VA]x`<⒄ã2ۆͨq%6 7qx U6T2R2ӂOxtwIzu|kcly~W גog;&4 O4-~8nmPdEʘ v]cJT[CFWjdg?С+v6nH|%S4ϓD3tJffշr x=$lr_B@}ϝNzpJWF̾i6(ښf{\Xk4C9_A1OMx-ڀ4^p[i3ursN/FQrԍ~z> svuO:*.)nLr.4OգFp׫%ցzh1GG,8*>L^lmPq@18c|~Š,rk^J:Yqv3_) S_c|`䃲8P?g9񍎧Bm, W:t_9iۋRO]Ń~&# >[Zcz/`[E+tV_5OxȒh+:7?aʟrF&ͪ2~섡 TX?m/yv@]ʃ0A}mߍqSzҽ;硥P)nuHyI`;YrP Ku)+2E]+^ܾoYujâDp 6dCQ${}AEN:jń.ۭ2z%}/#*  VV10Ηr@DHXEN=WY`u'AMZGǽfs8Dhj=D]%0C)vak:ƻfW orLoYIyEV}Mu9 {lpVb{LtH%p_&SEP$oRZ[2RtFM(I&(߻pM[?tY}|ʻq Gt2y+Yzh[2K^nVFC`*9?S/v* lJ^iBv͚ϬcbcK Tgh6n7AV~LOr:c⤍8f.SY.JQ~[ _- @_L!rDhLv9NS| } ~Ôb՗^cϿ~>!M.c+~Zj橳D_1S۬$~mfj<;]HV1Eҟ찱!Y(<+]kIcV<RtƐ&̡M}/BOREy`e͐"0D'~; 0u<޽%&fܨUOr ̞HqX;hA!BK؇nOɕuVmQH5뼚N4*[j>H2iC]>s^ݧϤ>Y0$2[\B7P륒o pDh:3$!;%q')1Iȳ#TY y,b 1Pd4\ܮI+ӧf>: V{r&Ģ,Q_JqGGq2F%*l9Φ u@{ffUEV箯fmԛ[bue$"dr&c8KrtBl]OjE@\GwT7umcw4VJ) &ippJ,,HPBBp#=p"ĩ&,WR^` DAJ*/J•ݓ+oUJPx˸{4KA^ænjP49s4rV"m{0cu-ow#e?)+$'f9l:m+q-iȯkwusd=48覯Z.邆Do3b/}&лR7t Lj6{kjO<=TX%((Gw!I1.p.gNC\!)XJfeN% 6M[Wo 鸡19j7^^Nw |\=NE z|^"0o ^35[z8NJ/آj=5 }蕇X'Hh4= 5Fw*`]8x¢N'qO"[$4m|{fn)Y5!9 NI[؞?WA"7Y с/,#+UEMLU%;}-+8J#ZA'|u2=FY=xA~Jj[Vpʲ|]?.!~-Y롢..RZ i7Ψg\5T+ץ¡ \4&ȳQe.A`| D֮]F7Q⧸: XKHH3k~E36]紕 $*>+wQp^2XQ;z: Ɏs)Qs͗^қ|qZG8qx ]-]+:Uԯja]epi7f] M5ϔb<j}A6D4澸c̢fw@LW*L C/hs~nZ,e< ?*9h¹#>s/.R"#x貲r]޺Qnj'N{?}# ѡl*+ThȎq8aY"VG6Gh з( ͱ/ \nN0~Q:\x'1tLz1e!E9iD8ќQfRQ/`^;Oն&2,ߚ쿴R{fMLH˚&LgpH5f!)_<+M1C R0ķf!oUK~'1ᤌGw>wVsk&duLP ۣej{;WtH O a\dy9GnMa@i7F}oFC[)1ŗ a4Q"AC7Xڢngq2%WD;8Ք/ſh_rԍӞM2p aLf va+q`<eG5#8o;ZmjmU6` #kA\!hl2t `m.O&^N"0Q5ݰ8w̩.gV/WIODc[ nYmE5F>a>nv7w^0kVJ1HC-|(`C.xhVH%{`|9ăKG_?| j-֣ovb֛gMOΰu"^H9@g4 k bC^eV-uo"]mOFU${Hsp'0ÒȺ0S K{J>T!E˔Ԉ'DŽ "cWb`_Am'6eyi'Aa7avJ+X줬DrwҏhM}8%=-kn={'垊8(1c9=嗚ƺ˻=i>bǽ=HxbU f3*X0`33k &Mc()xݔpPQw&%ItJ!$N\mrM}dÞXObD~aA>yi-4RX$x}ݡ"שZRK폹h°I$C#t0# \w7r)Aob힫2P)*PdE rJgdbZ)ξd>8bRO@` gqRh.髸sOْ1/w=?Ķk3?ʌZ¸Jԥ u\b.t-w,,FzШKكss;KlOqc y[JfCa\ 9)OlҜ Ñ;ktgS'MJq:AhߙMw$v&`C)&R4f"kN>hPB-!xOg,k.PT:lYpf!f}fa%f/RoIe|Hg draN C Mo{aaSǦ}˹j pqºE$Zc 90;򰅶uzԡ`Vg0j[1|R0.y/3]e[π=[z"*eIF("%$hX\m]s(׀ [Ҏ̈́T3k._?XM[7|4Bw;/IyxO5ZcSE)ՎoRo?˚RSo0=LNVXluQQRv%«"kV:pe6kVv!IE dOkq࿘8'B ?R!luuÛ!+u|Ö7jac㹏cLD+3 Mah¥QW0B%l?$ k$~bM ƧSHRKaߴwVo͘=LNyYx6y!_y[ Mr;9']sa?U!ki! T4[2v|(8,kC5~ SU`"s{:bN5K&ꌦˎ1J,=iܫmZfكE`LG$^`tK\hOfzS`&eǭ*Q"a1t'È\.p~eڌC v{Acucjv*λR&"W!iu(C_! y_4xLm1:''.1"jК pQ YlhQPjdڂU VfZE׍ 1Mv JK-.$Ox"P-k%!0eB+- RQDsAPr0jM2릫~8bLh31엒(MDnO=e|m5[svoӺ֢Ru&nJَH(E䷔IThD/Kc,7}EcWI& 6rfS1\;S)}^̩qb3daA^;X| X+4b$V;Jc虠aӞޞd'~Dp; Yy(7/ڭsy\F Һ?+!A&Y(reo>~^LDW"=e:D0j~[dUr6Ls5h$#'2 P11'!#mƎnغI|'#'Rod61?&?1={B^?wbԪ~8)s;\aСY,Gϡ;st&ˇSRfZŐk5׶Z JQhE:%79kljiAjTgpi-]Vy4oc<0nlr!PKkD z0mIdR\ӌ?OOֆQB.>HteYb$e̿^JXDE!HΑ&FcqSs$nV‡cdlg8jF!g|4-kHLYs?EP?pk=bQY 7njh΢dXy[M[Uq%ԅۺX5%7LDQ㫆*6kthF+"6n8l/0~=W+Ԗz7Nk S%[UoK?j<%j~;&y@s!3[o]uj?:S{~c)8t^m[EvnvT0ř 7IU[kzN6Iccd򏠓6('O ]=_1a5G[w;HeUOgW؋#pUUQ4l4ZV>K>ݨRCqZ@RLJ/?V`|ayS>7tٲ?M4v6Ů`YטZ"V &N8 RF={wfDŒ\c1T 2Ji;c-&\^C>#QFhb!nxaw)ȵba9P)vY|;rʃ9Myu&v{n,3ЫD]ENT2z;ŝI4qQ=2[KYyJ܉eIh빉c EmK=%CL!V(^D;57UNwO}'HGӶN^J_/ MlqM9ћ|=* uiɘkU {hIikc ?Ʉ(hou(2'Kc\I2 |z;萑Ɋ^Ɇz(w , >ҡBACwh! `Q0(#=/b-2Cgx~ޞQ sUR:dZNqc.3ړ6:jj@GPL%sE~vJ,%FٹJԑZ:Y֒JJ=岠@6Om+V u|^UKcRjNC0@Oca1 ז{vy,Vpgr6 ;- ,=2*r"spgv d\\: MO$`bT!e|KWwti.vv$ Gsx?`e"Y#2JEES ?'fHpXɳ4sK%Ϧȷh-kJz:ڗbgY@!QuUV8n!}¢&J)|/ K73ϯ^ ]"+ mL}<*͋hpbwLCJqix/tA5z7hv53, B-fȈ-ZWă"T]o(l\YߺD>p*~ R$1fQ ]Lre<6S X"{݉D=N#i^Uyڋ(s0#``wQsWss0C4tW 2Gw/'r0 GB,uAEqZг `,6E#T*++F@j7)l5At 5.r. 4Bڙy꿽7 {\'8W_O(7j/@;|MWӏ vas0'hu aWg뮋RB)$kl3xPZ2^A&שr"-߄ޣibf>+@)Y̔H٪]/nP09'1vi37pƧiAM!V Rlݗ'q2@4Z»4 SVDV+u5h)Ӿ:+L2eU%7v1M?e`"e7wwh| PE'bNT?[f I,6 s!X:&un4/6W?e0^Գ4I%«3ef2T,z7Y5[2;lS {#$'Έ\RRrX42j;m7ka{ς$.(":5]61͟5#B+U*r<lmF;#RܭJ$;uȝP :htB4wpRi0'bݩPQ8kELÔ-81~cr{pQsvao0g-l$] 4i(/N38F )  ΍o&2%oIubu~2&R:%uGHθ\v!>٨Cƒ*MJ&.|G0u?,\f_mszRm:4G!,F#~;۝d~J3-a*_-{xR4HҊȍyP 4U")7M3U\]{}. f7ZPyahOCTx#-!QbLGFSnLx&j 6ytծŰc?]HZ](C#jr61eUԣQޛpÿ~N|TM/tnt4B4Y䕁]h_J@J/&4ji}|1,aΑ}Lnnf+2dCgx+՚c}q 6Hl\ԏB<!L`R!()[$i*r<9z4Fo a#<*<;(O=%;f"[FrLS[CSר `mxN)ZΛA{ j$ `Q':npG+-!7fi JS_I.`7W[{Wj̛"I5ÖFgZJ3id 98GLAmq(&exjEkr0E)JL @j{XټSDz F7+$ߓ2ks?*CԞKm6]MA ;)BY]Vζryy#G\E XIu[QD˧)PLəIҞ)*BlI|$/;e&u4h @ޅbowmcT_~* @-R/>_Ot26t@`*%5F rris,$aaNu.`RZ>iTb]թ+Y=%״=V34Iaq\J?Q?CjC`u-=f1o݈Guґie *RiL5/˩I [;Fj7o5;jA؟k5k!$@ll`)op5/ ^%u2W*!Pݖ,1JQ)p炉kq%Uz\ 죴/1I* ybu2_@ wnT}]v-bd8' NUDA=b$͚%P<_t@PB1&Ց"Ľ *h92 ŝD(  mANT9 4l A^:1)5KH1[ JfNk,R"3);cN?[ ڤdm9$$B=XIKϘ`CR7L_o$9rRJaCi}rG^-zV/r-#NU:Rîv{X 7Ba-u?Si2QEGD}k QD:R:hA 9XbUMܭ1i>R|^8:ᖣNhn2=}b*n|̟ZI cNҍ[u K7!k#V*(v4{J~ʤXp. [/TJ~ܛllؗ1(ܘE]mF*|S]abi ΐUo"c#E`nTWnm?sC?=-Cf` 0!]K$ "ʹMY󭛦<CAQ 5`OuˮJ^@aa! !N$d]^ݩ~a')yg,yuD*F׷%6i۱ Ep'8<)SŜ1:fz\3eDu&XӦD_lu'$yw4nEF_8*% GOL_oŭ˴0EыA6QO2bmjN|Kh5_%Vt-kƬeυZi+„t@;mbK T-h˰ 3~UQxv0 s.&iM*1r3.fr qk5Mb7MUscqHUv[:I g@ÿ'mmjlF*@m y'X=iY40 FΰC=EJqzdߒ5ߺ_FAhp3Kc:E>Tlyb tTOH0EغyROǦaY˸a9lPS0?xsDʇZ,3Pf9v,*=<Z%k𢨯*V[87b~+Oa"%s!­_C\b-TS`b({%fw&T)5SID,@Հp|h^҆eS|{^Iv:u Cʌ zR`G-̡O =V e1FѠc1`< 8<1N6$kRSlJ[SLDb+VZ$EU8cȽ^A&7IWt^eάoSM?[oL8PnkH 3d]Vl%*]3xJŒ=[]gjUV=C_̜8 'bJviu.$Hr,$ft(yWǭX_x<E:K:fH(l 3Y&樬}\idvc9c2cd%̸w??L۠~'56*H )*CZʰ(p3j>4bHN͖To6p} c!n_ܯ>%Ak$gqe8@g7w7ԓ~$,Ya?\s󩰲F1*b  ]8.PI9'=oM|NljSǤ3pom줓 !j=T3Ip.8W˂>uRopz|@dԌ;mK?lV. e]X Co:Uh:StVJ(5f){Vv-X#MlT͇75yNNOxi> 1F?s祧Upw n~(%5QjH7w.&ZQ繫4{bwCk)|yb)owigh鯃sn¦k}9,x*Xrt ƢJrC$T;(~]ңc}oH2BΗJC;׎[a̷8.,K_?o>^‘ -|M R;H6 :Q0b $G`8*Mh&#)ԡLڝZ ׬1i= UH Gc!p-65Z[\WW CGPwH7ut8<1#}6ʿy^iceڗF|KQ]VSGAOгѺ) @RWH t ?Q-I2[ϑ~]l@{ij^kP9&|F?UN+欎4 ?KoZWX!HqK\RZm3V+bK[Rݐ-%mL?|$.!Å+GS56sgez^׈m)$G!dc{{ͨ<$MpvWӦ$[dۻwQJxʕ<_tyic2! JT"OYHݛ#XʁLLFUv\{ $+IV1s]ƽ\"@`%ޕ%Ѹ0ʑHv.J`֢#χC0{c,9{cƤDOQr!cty-%3$/r͈J6z@A74ePfIwnxruTÍzq?OJWWoJY7HЋei]{L$^_F`FzJM^r `SOOuڰ/P]zGe4x"=Y޸B-yRLՏ[< yYLWDU@vRc8TA K:W]Oծ/j휢O\HWp86 T'sY[Z4 z$O%$JB2 5zI3U#ECM=``RXwЀS85M{rپ"T |> 7?mki*+u:E-I3Xsv7Jeb#X"NdaWȡ+uVC"k΋~  %= ``2 d*ͿPia!Ӿk{Ng(Vw;_6dk$<\e4ݾo~A_H7+ WAEsɏ8'me}ycY(4O "L`$y3Rdv"E͓E"BV(g@ ?- v_r5܁+*>vrvLכjiR_sq?#bf8@>)"2OB%ޚU@tzϸ-b} ?D43sIGs:࡟'z TWo(.)dT\  XNarsT:5rr'VEr*4A+vnq^eßL) f@͛WȫPd$UR7Q)6w^Lr] -RހqABI9A?.R 3^WObuD%'@6tjo)yW5B.p/'; {2c7:u1Z*{-2޲B*6cXSL+,E*pIӱ3ˡ0$Ś߉.["OԘoeB3mߩ4#B";U\CΫڛ5@̑i~IT+d ΐ._6YAo0gx7|A7嫷dƊ@wY!pw<ʬUO츱#F?(9,kFO6gD ~}͙cȠQ?Y"]d84@I,Y1 F/G0;PN0>GKW|I>afw hEF0=;Ɔy> /OrA >t q?veRR(kP:~ˆQ=C hZ%1ed Wy8% 7hpLjDS`yLHM5Bhf󛛘Y6yսՀQmP\'͜):7Ȣ$-kcҀmQ}w_'i.qSjeYIJ)!SoGi1*7+8ϙzc*JB_ײSSbFjAE$\6Ɗ!@g+wsh )֢_O?vx-Ԙb a*8@n#L6lsW?:θ[Ik1j=<Ć:MD*+^REۨm3&TJHPl@_,~ʜ9791tJ<ͽ̙٩}hz [{/!4 ;^ީx(D&mcqnW:R / 5 cu0P78d&IO~pX HE |G Sc7@:?Ӓ(s>bVyO ߹& YjiķkU))ou3&#2)FH O0[%O"d6%tA&CS"lKSsYy'ireU'n %LiȶOf320rQaఏ 4Tqt{$iEAbrB0^y~&yG0e!:ϞdcVNvX] ͗s9Z*tg~$qh;u˘U T?.S?Qo vQ};sVY%D+b@H%1[dVcImdZa\KH+x"61cZ#p~8[dܝBWjs6rI`)Mڡ gFBPYv&Je& ұ[ě eVgӆx> \Y"=%`^]'@-RAVB w{1.2~QDc5I'[ڽ;@\`@WОW&NWƋ(LC@LU4>wu:60fLM!!ȵC$.qUW9|=zM]Hv-{ hsuKNՃy{{TًNE-}TV ~WӔ5Bw )pQk4}Hj)Y]gD\T? gh6d6EP\^sh/&4 =U2 O4gz!$Ƕ='[JV8Ci5|~S85/Ju87X$ୖ\cV—95؛N ҆4x:85:l~!󐲓ܤPy&M_oE6:xR+%hĢSR#>l(ʦx\i`İs:d#Ϣv`^aF[ӠUCəDFr1(_GWx-Z&V"ſ$0#;vnvj:<1=FxGe6 ^zNI|ӑ7Q3:Y2x~eLΔ2y ۽& CNu:_U-nGXt :gw{ۚ0!)>CW^:pTɓ0a#XȉNJ= րKM/2;cl ;zc *P?kغ(- >KAKn,zAu|ܨ2LڋvFR:p\U˄fC,(*8S &R֑"pM5ZDd*Ue1>] ͹[p}j:;<],>joBO] ̗ K/Bv>,"[3ymDȫ ۥ,4x:c|Di+͉A12t=1[*8)\EHYJ9!_mL+apt< )n^kBĹ/ȋ)O>2%+l.§6P{T" .{?u AK6m*=JJU;+HI^kҺ ]dE[`Hd96&x%Ee_M(:o߬vުM\ćkYJ L&H/M'ka_ilMAٽ]UspYOH}?1/X)@YkWi"}R5Z:g\das wxi`Y(B!䕩%0 ڳ=5Vr* x_^"=F !^(%BAXSi쁦h3FݬzaQJ*NU"x3\B1S ei4}xo-kQ55}[\)̂@T8e T:J&仠y410EP:}`?pggWb1v$Iڇ:E*kdbE`#4Oؠazv`xgR[ Ia>86Gvwa}"RlYVUNGY0&6 Gǵ|'vg#-|Oq4T"(B+HR2[ O/>FSSh·\yWa/Y2m* C ۊ_afV)>!m/nzv?dfi(+W6eZ5E<0Y3Ot`HsXy_dUн:Ut,No&/2l} >]D+ &^$H Yë3x)S=݂gs yX'?o֮nxߌ.KiR!4mPR+1bkES/ti&pi7v5S[M,v%5 բ@lZkvܿq/\an&Z]ml#ݴs}ul{K -_Gm+]B/.mՈJfğC;A)Ex2d5O b]1c(5N{ bKD%n9e'9| S; )-#EÆ4Xݐ z;ˏq(n̆rq)4@H-KU" >/S:%4g-1-32b+ČZ })U,Y E#_P&G0L1+IIE #t'dnF:>no?mԽlVO'+oqV)Ӑ: u"9Gd;jdrg,3I1{ia{0s7vz=&ʙM.g '_[sNøhBax) T|e:LKv5On;yJyz]=i7fqۨm_0[(խabdq#z`Ga LдіEs"($8KfZSB$/Ӥh)*e)scQUd-tU 9KC]:q$~Ytڦj*X|oU?FSWT@7leu X}T(@s2&l*^0/[Wc=.qR[kK]Lm&Y͂{Tzo$?`W}9sUawO{ )\rC!6 'V}̞#M;t, 8[~[գ͌wP77D;=2֠v!XHHu Ox0o;J2Z+'%m:\=R+~@j䗒U-`ZzNal8ʉGqEr$ 1tHV77uGmYm#=M-֚9~QMZk?2Ļuf֡utdw \h̰s\b$<B0icyk؊}z/.LOҸ>ĥç&#Pʻ yIAvG#hd`GVˮWB]|>,aX$wc>8yt~SG]r-\|@סUrw ߧMHJg]F\88 useZ+IkPDR{e0D htm {fk E B1͝ן2~Ci`shAK>I:OUmA]*L{"A>{daSYPiڛ5e]#V~ھ F=hؔ :j? L1)|wvp>j}MLڀS?W+}Ln(Qq}e#\?wӎ熫n}=TVÀq?T&э*% / 9 2q ;݋'h~]V R- (:"qPH{p ,Ɔ\4אU"ݼN)qLɆhPk.&hj|QԯZO8-N/.li/C3vӥ}V6%5Mo(z$ԁK!+M3O37 %Mm'&#́FxgYMHr>),tr!AOkpi͎}[ޱFWԵ~|YkFZYPZ$"Ш܃w u|R6|lNқН7$Bk蚸􀙴S2oGTqsvO(7|Γ*u-ESqt뛝3#M * 7 ߸Cʉ^w(a.T>x95/V(#utIڣ̀I= ϟ[숭KuԼEv2ܽY cIǬ()j^ߗ9b30Ҥoڥ eޗJ*:),Vb܊>u]/mop<~@<S֍!o|-[kk_6:іP i= E٩IV%E4>ZxZl dJQNI lhʊSJQSNW4wlFI]pFCD2ǠU!6ɓ턀'Lz@-S->O\5`]?&X|Ý:X]Q*l3ܦ K+(w\Wiv| rD!O+izv[i oUu.$کܭ3nK^Ryl諻 G]Pc3=B~ė{:bDU\ t'⧇ q4-F$xTD18D}R3|ͼ&X3SM)뾷(?%YWn,X{ Xm B\[ f>,'\9B_boAC{Wfg+^Ĺ{}OBj4(IϕK\чP$]qZs?4(ngVFӠ l<) CnkOQtPhmDlN0]:SC$zlC+RLatjzi4XZ+s@dio k .+v~b{ro6]CFnV_r N~@kL]06%CEQ5AXkTgwFyt6#x!hZ/*r!K 8U{T@lT|Dtw9#Cc,vrdý\$؂FuԡRXO^v8}n!}0I (`LUO~-BJO,d:* [d7H, _1F"q\=Km዇8L4 \ jirClR)t>|BD}aDnlonPu{dY%4|_ex8a}.8-Yܫ4I?5o]s؝1SXETQ7"8BCگP~xl!'~]h@ BN}cSL1%:h<@ 7%lq?,Qft5ڷ,) SߺT\Ll9C2cD.6}XRlt1nS2D#gp}+.zTrIfm4=:Wk tԛDXM`aqrVbc&R= v"=RgH(n +$#Bh.bYDX^Y . 3 Mjj[WƂw[FQ*rF:젽֋ZCTHK0#ʦ1})pA Bڑ`{x(s[-h%$?F ]_bAVxGҠ9wЏS~IJ$2@ຊ[fSM_:*豞S1SvJw(1ړI*<] r)>W7bYId@5Za\a*lf9VJP]{ '=#Xl *Jx&G V:'$ z7#hp3Tl"{9贱&PO-mX{G 9V>#!##ݴO зfં.$f XS\C]7M=PFk+K4FA-zK@!a{#>j'򖦌2x592JFL/E r+M@VFK(IHm)+Å/H&&?\E՛z?빅xaYwm&ߍ춄Y*aIq5s1p#PCRdCe_Bl8i6 yWt CC}o3 k.#nފj`6Dn|۪%XZ: DM}Ry#Z&id 2` ~6n$?t'&HX1"}]"Z0 JڠKu:7J!s5YoL籜j . 'a|}S׊&Cc;u7|2 TJHWӣӤ|7EHPOt`Q^])rQv$;[WH mNcLW%Bjy|vzL^~C0mTr̈́G/f#T`ʮ\[F -H2o[4Q¹BxjH>ze2;&_dmj f%;$ps+ Ѵlo1Rb]23nlC#"20F(8s#MFbs26oto"2exk2aA* OQJ3<JĬ/GڌRlp87y)R'76*n5 [Z(ɨX'0BҹsO ı=jns'Ah0~a_w>=2jL21IrJEK!M#ͯbPE*{3lRXU,Fm6=Әs]JÏfHiZ\[֐ ߻-- -o'p.z6Ljbf!2~Ѳ -^D бވFdp7YNTs$ߴW J78H#wRw$)j] ݺx\ݒP'״pYƀ"\z0|'Vb{2P$1|e?W!<ck ^o{=3P@2݄}R|Wf>,I|m!ZLB"-1O,ztKt`&<&I7̂Mk=7Eq}WNa@avRՍђA L= .c;(p-ќȚƗ)SR Ǫ)SlZI2!BT1l=S]5ʍZ{5w iPuEj<f-: D ͳ,-^dz⏀\5bO׷Ufj X8Ol+jzbP¢o=lgAٽ~!۰xCms[] Ny͉gDi& J(+O͆6.Q,ŭMZ=՛Ug]>#EfZqb4Xta":I(rR-H[A-s;=GFƁ]f0a.”Dh3YQ&0K6Æe'Y/8K1Qs}\Б H")e]TaUĸe?wh6s1›7R(5}Ϳ!Sgټ! .T#FrH7&q{Z|ۋ}̢dG@E֏Aq,*u.rJQk{쫿vAE* iG' Gv `W bU%͚VfD1G7}>Vkj46K Q `Ŷgd"=?K+c?H[pP#(LXP-4w=o'@l^{%pkRr4E[& UdKhw`ޖWj;ͷ7<&~E,1O2ayLk# ~Faq4Ό>@ּwnR}J ہZbڕF9 p*:"pPcEx o En}3,#.>j8x.8SI*3yLh]HRiu篳|WE%Vծf'bEjwʷd)QmKn2}}K@]@(*`daB_k`_KTGoY>0_?"4V>4O4JB#Yyd遺q ȧ&1&u}"|}Hd޲ZYyPn>8WHaOn .8n -+*puf>~iP*R_Q*=ˣ~vv:qwI隚:qж1q"=FcQ| NwWŏFD.< ?SKa6*1@@[E}IEoRPߵV)o.TiAQhROG&R P,b~[w}Hfvw[{ )h[M*atqbt+quW9\ʱ"'y-WXhXػno_xIXDbY3Y۵>!>Xm'?ccJR(e< 2h (H aMRT? :9(Nj͹#c$ڙ "WNA89)=vd<`XpL{(+: Rye)/"q g0HG[.aETOTR{oxɯB}K+SywW;K,60|84f2µM.W; ]!_UUQK#t4sCE^SKk09 -$ߠ ^[:d:S]_S2r/삊ʙſ134_{@`SB" >b&ώ۶V]Dې,3-1>[z HLkrW>G5/5&pm7m;Lm'׮xٞB` ?x 8LEXkeˬԄ|YN(Ӈ9X ٓr:6k 4jQwz@W86Rc(YHE܌ؕV#RRWV6cs%G3L BH)J XÂ-f^k]>"%'CuXfȝሚShcDB f"PDog$<$eNҫr 3> HD \A^9PH2 pCVtw7ԈqfHPS%V7[p]c0'%gZ/֫N@ Gӟu5\~_0 6יFr!Jcy?4w$~Q((}S=ic)^AČ́N!^o&հɩjPRD0{+,'CS}ޞ^B#x{vg B,4Jcc(|-32yu .f#A0mI⩷FF8sr68܇dl\,X&5*~%@I6qb<3c3>:'@|Y.-<lnj|.T'Ʈa=csI;;$zY쥩$揸T:RɛiHqLxA[ yÆHgC\i?Ji>a1OKd-|#^$ sgy1ӍseIx$(:R Ǖ>κNdѱ!'af#Hc1(Z8mLW!b˔Hb?Ik8h!ADE| fu6ǭCߞ"Y׸59E:՚?l6:}6/!uҮo$lͱ^vՋPܖ=i,.HCxO57K#"" E졫19Ʀ9uQ%<]|BMx$K9 ]?zR7iw$ l؛꥾r6cZ;IorS><}(;%zݽ=ydoxZ$T*_KfIۚZk~AD%$a :0ld^66N9h}P"PF"\(O9^@j4nc mNR/S0KWM@_]l~qM>LRFMaG>vťcz 2 dEٮYdbKCJ'{[ĈF&<.? nk6=-ۯh_~X{8pkߔ77tRlYkʵrIdŞ2R=а&^*cǥ~5s>24~J43E>& 8ӈW@8A]ݼ~eAJJ7f#UwEMJ!V(jl_XC7*a~O>iw8i<^Aq27~G ?sa|4|Ʈ&vktImEС#6.*lF X9NJ 2,訨c3A3_0v\`bP8AԃwLYKxemWWrIOb-rf|\N9~ \gOADIwѺ,-3ogek4`H"م=jV|*sy8YMdŸiz;~ыuuVܰ s͛*pJ3|p3 8T.IFLH=[qOvdqaN/ԖG]Wbs|=4n=V/Pjjҡ-% ݂^،G/8`.G}8)5f@^hk;DQ"&tm`\tN@yNyIA5&fl, a??h$r@,Gst ]?ZfJ *+^(utn=Hyex:+z"3_(laRlYSeb 7FG+d܎lK\ :]&w}'49"Wc/J̀^ZARjyş;†zj࡛K턕䠾07sm@t|-9qhR[K dFqɠ[ agn5c+ "ްRb8uyIc "*5X)V7ai9 8gr'7C9ΟFU-H8Ljy}5ŁO!.v+g*Ԣ߽aXfC.rC+#Tq.~SDͮ0%.jdȡg?ꧡ&פpbwl_.P#aېږ8}=#ڮh@1Ϝ'shKj-ߝv@t]?D9i0udA"9n~wӕ *%LMMFڋ}Ftj*j%n&k'yhS31g~uǛ8iOڟ.+ vKpnJJhRP5sS׆e0~$ë́z1CŅvaqi<0_|C reb )R;UM* w"LlO3Z yz,>ŀ %HYSh<|6Tk3hGrlZђR&lj1~$pjI{\PTO5AyY  '\dWlAd" 3Pc 6&+ w@QS$F/|SIw%Lh$lijKCZIaݐ't-3cRS{)~*x~%i_ .|Y"2Mck^ư)i ,{մsD b6Jd'Q˱%}2*ҧH >b3MnN&65,s˞+Pٶ)<5Yܑٚ e3"B?g ޟB@C*)yfR|-*-tΔB|J6 [Dmd 8(we|ټ =XG$Dw;Vyw ˔^m94H5@?SG)8Dta^8]kHDb@?R,[=]k^(Cat=C)|O7lVͳѬI-]Jrz5xMurv;Ѯ&T`։ +HR:[UXކ]mF0-s0Q˩ŕz Բ luxoL+7*?'6kؕ Gߣќ)2`%GQf(sa ?H-ik}% 9\9x9d:M(YyI Nc8g*Ӈ-,+3·@͓_F=WNFQ5B^c\IG h'n?)aޑBdaf7\evRW `Q­ei@X<ċ z"B!zn]kcй,c&`y-ڳzgHv*=³7>-O뢻`6t~t ,\ihmbBͩzo%XtJ1Yp40Aa#&+c(E$Kwv#:~K/kE/!ӳ'rm5tq3X*9=ʲD4I?u$t N`dݿ/:9:nYwنi\H4yjϿc07'޾>f;b^?Qb;Ya ~}:cˆt`dVO3 °gh]n\\hNģL:W=.:-\~(Y%DdAwבwT-5AO2d41cS.fD̆AޝNv/Or])E`IYUWUMJd2S%.լ⌓- 62u*̲SZf@C#4cm|2v^BL- '`ۑ*xN]vKX!];GM\CG%pe>Te"o/zڋP{3o# BRy,L|^5HHxJKm^G-컺D99-q|"RH}U,y2bpӨnC;%T^ӡSry +pTRof|EE hXP1rT4ٜ%[G:1@U4}wF묱xs}ѯ`mv㓧}e^^;ƛ@ї=nHq7){E;%lzTA"B37I^@mqrmF,ɫ_ۧH8Lgל#3d gE%"'iYc'I՝8TH3A!lUHVuU ÍF e-i ! svAe~FU*Yl_jr%?Gdkܗf3o} t@y<<ݏU}Z89[W r pt4UEih|MQ8w99H+"Lb5X"+(JXG<NeކEw$J89+I *1$ֽ3M؋eͼ c0}  [rm'Ϝܤ@fI?saRQO\#cy'Q ˦&z%2C+22//]NC0t$ILi2xxnE2q-Xa|vJ?k5$0XCk³n=䞦AϧZzqG吿v򏀷_ \6$xl[ZD~'WEM%2jNr+v==/τ{F"!?ݜCOUHOk6e1#{#@:Dt(J\84_j{Lc>ueQ{jV=ʹg2Y1uxCİl0 OĉL`PruRdC޼ g>>oUwg#@ᇂA@iw_ $">=='dK*E2Okv&џ|<>5eTPgG;öt3Q^ <Ö$( BAv"@1fELXpFdu߼e?5͚ܽZt*`p lbN`zbWJTߋdTPYq!-\ej!?.FUD͉`(zGDg *#h4|?"=dv{%\B\1WWr~AfVkz@"Ht!>m]8Q"F\'@V:{m)הr R.92iq+V M֌Z\ǔ:=z_ݩC>U8gз Zš!Փ 1?k?ҁIհ 42k-zTnuTiINuaf3 z!nBB,{H>HGe Mh'ÅWW_UMBf$i8\cKN4DNXfžOGV٥`ٯ=-N=ZWqnƢz%~#$B! yh¼G'i'V\_L^kfsaIA26P3Vr7%cp*"l '/$D7ō~+ :"hJqf' ՈhUhK{Go*'-G4)qn/e)ԳƩ,R«"12`}+ndR@B[A^ē8 $CJhf^#vԩX5R !ãTbB27za࿪mlw+A^M W U%W($̼9v+Cyab@Tn&;v:јgEp=q*C3M^%-ozfLAvxͳ7`uM'C2e+ߏyI-npp fs!A ̣D5L^֊Kk.x>dw4ykd!=()@6υ/UdtnA 狺P:(4P_ȎУ;E1NK*tP!|hSaDtefdWIj癭 _N1`n  K}#ۑS *4*lUK~tJ7!d%\8q +ԗrT'[/wjн1[oXe+ m_Fn'{{Xn p(2`'ҒNSk중dcjV>9.>w6ÉZ%73|s:CJIT'X!5&@C yc~|~LT>$<^[FTak5UDG{SYxh?pȎbAH'{r^;)pLʩ3AҀ3 K f-6r{qBw+ p[.^)ol|}+m-\dԇʍΤNGP'[-+Ę=62O΂cENͦ{1N6JvcH2Щ0eq6]fJ$kwڣJ[;3$TFQгVG^aQ)が*t TA7}dٔ9~Trn3πm#}q "io+a5Ew9 /OJ բyQ wa>h%gў {Q1g 6Y fǕ.eˌi/Ic2jP-~XjtD2*޼+\̹OXQ_>yYKGJ-J?!GQ5`גDUD 9x!7#wV\T| Vm$l|ҋx;šcoNJ-.X&r7|b!-z/#QyÈr55^hV$*.۔Wj49T'v .1y}Zai~fXan8(`J)P,ў-srïnBu_SaJ2f$6' 뇛3xƫ-{їحd εj8FU$Qy 3z2Ta_Yù=Z9cqg~XvpQw̿XT s DOJdǦG}R&&GX/4e0OAĨԸZ-{ Q37A.`mf,fnӹG_,w%#q^2w`~FPs4]Ai6}>8`9Yj! *߸?Qo;߄gMs/byZ5rRGad=fECʼ F/^nYʀG7AQňy9{R)^,8n{_sou6b k UكyRI#(u$iQԣ:xY% p'~ fUU,T3IlϱDL*ۙȧyJOᓙ<^p`DެYA̾bGL(TTⳊ6 +3j^Qǐr}H`ͻi YЩSb`ƮN]g:%Kix+m@mP~۰Y^!Kt8jegHE3!v~-':h6 F6k-|@:+t` ZXf<M~}tR}w'Q9jޕ{oT3pl9z-o =&,(_`hdP!:*M(֒%DfĹ$I\[^"v &sj~zѽ&:$jĒ>Ke%r bvJ]Zfz҇p+ qFvgaȅAМE#RIe%66̉@0hB*Q? (,N#p#/> NC-K2drȑ>t)un~W(e[)~xkۣ!^С\0PBcMi/UM0PXG47窘*C `"F4P= ܢl3xM*Q6S'9OEa<FT#q3`bwTn1.붐i{XǏaY7d;'|YwDXkscX=0suT)@q#ySpZ}ost/_u' %XY 㭱\:dz bwTvˍFC|N~3s&2tK¤乥/eu|!>=ϏC6|A_ rz',Mc.#[hiKI$Δ=XMx\,d\u qWǠ?!njX.+gwh -UΧa AF(uWivClVq"Kvd=\:#=D>z`Ig+/"tQ '(lk~Y.6iϸ^:`Ь]%)̖nb9$b2o"]gx0W3hE]Xh?zGJ4в/n96ұ1)ޤ_K>Âѯ~5R5'໎n2qOSiѲ I6]~Z6+iyxBZ2@2ʳǧ*5 y@?A9_~{vI ?xqF _38gL6+`慫3jfiCLۈ^t%DIl%si9X~Ϳ*n%(ɦjf|d4Rm^Z]Gj+j@^++yf+l-;={4DUڣM}qDW>i|5l·FKq},tHhT7*/Si+0'0^ViPT< ݳNcfQbr05=5 ),[SQmf^ } gṃc'-[>s!2_ }klUy)TMMqW45)>d6+pH)LDS zǶNؐK)hajݵ\e$M)X~N*뗵T1,ik cRxm^ d着 V+U(?} 7tclPkfAC^Kt=VzӬQ+-չik{iHHmk(L.Q5LDUѤr3u#L5I!q\&IR@U[-ƐaZa3'~݀x W{бx:/fz#pB۠PJH2qSYo2&-CgVZ&DmJpblbuBA{?.20cKOYY:XKC!jO>MC&Q [Lu(0-CJ!8 [U, ^8 k\KIoty# s;\?^pK! 9!1*%ێue3ڭb>鍳ֺN"=q;)g/:{@)p!'t~Kt$dԂ:3 ">D7(k#,ȓ;ncClE榘&s1'iX',A 9t^$X"^>AA@̠L~#e'|#p-/qǩ ={a9.|xրTN=/ I;$9pe>yu%fbe@pYEWCkO$ZШj 3*Zwk/FNh89]f3NŵGf-ۭLRj e8DeÇ/o}.5t#BGڧ>[EH[4BXf!zXW9hw Z'Ӑ7 LMQ^^eZ!E\ U%E֎i{`c۠LnxJ'¥ ^S(˻g>($oyP%Sδho;>Ot-8t\+3e<œleo#F~8M5Kww'(_R2c_f̳X멌jMl\2=,#TS,7[ʝF|te2 44oO/1#!5$B}UG,qfM-3x(ietriĺFDhL%݊02l^ar^c D pD z,%/F聜HNtf},Knnrhu`G jyt:謼cU}Qup@Y֯ }0Ap Čqbt6C/MN\󦝭HdB+جW`^"%X#pNjCB a/# I)=`Oɴ+GJ(6 4|@. 2h޴:\51>a ?oWx&aGW-۽${~cܱnM2Ri"L!0X`mg.uӓT2f"8thɛהUM0lXx#ZqnD"U.0c&VdN ~hB*F s4B(]dv4Ię҄r[#G31b"xd Ew=9I|I*6 %u!CWE v2̂}<"~(i@OE"*y5os1 h(`c񉙽t39l$"lێU "]LJju׎ݬ*.fƿfj[v&`Z%f^@+>C3tlnPr>Yk}5Rl+#luҴ kM==j߿6CȔ'2/Z2¸lIdPҼ?Y)d@}ٙVi(7*G[03 Ϗlf-B eb"_$OԉWh3?jUvd<%`*wGT"k*=B`8,)x&n ]='_{E,<7%{0Q/k N`+$\ ܥFfUH+z3=PpGmV;7p/ҎEH/tK5 v6\y^7d_%q_uEM `%y+(v{@Z,B8gDKt9FUnj *ň1Q/PH0UZqX.H+ʣlɭm(P6߾DPu A?])VwIs~)߲7IWj`Dq!)q+3}*DQQ)~UNuY՟X {Se) /?uǂpl"heҟ׋ V[ݛbƶzHo-S2#hXў! RD#7ѡsŪMž=ڜ& h)O1&Vncr}"0%t|E dv=x"_ ѰG²`dWJ:OP "JV8)mӒsù&dPԐ2A(5MfgO1YVȾ'hI aU2-#|UO- kO ˘J`E,(gK<4/7Dw#֔$(Jm|@,"VYheJsCX$TZC 8_Cp,#w[.w-^.1JJ0f}0,;}@RCx5z8 Hj QQ?J[+vJraR ){#SXr7nY¯C/b^@ҰҘTY -:B(h9>Qgr ;K4&YZa&*dJ1Z\.$@jL,pk8Rc1S΁<+ZۻWLhˈR" F˚b،N}1p3::YK68"/O#jACe;99ήKSz*l$`d'dJ0K.\+e"t {&BVV|"5dc $'Pw[#mLrEMrgL=Uw-7ZP.p(&#d9͟=WmOǭW^G~ 4sRamN{1Wt<#K3&&djjOH "Zn=AdbjT~ؾ3ׁe*mzFa7pDljQ iUQhX~ 8 &o ό5ikV§,BQ>!Eu_ Srf$у1 91㪸&"/e4 1ø(Mfؓ3j ΣPWw˲8^lq3 Ud-ЫR٠4q($y.627T*m"~ u[#ITѽ:@l)} ZG2}PU7D?E閹FQӭ>D@J]]Fc!T֒}rl9 {$Q'CXQ;ؓ0hyh{N,UW{~99'( ;h&ʟ#tVuIlYjY2HQH: hCf@F>m-_NڤِQi#jdɱ=Q,L3ЯkۓQx99z9?摢H$aX!yÏ7En9nhK S7*x?FyV[Y.R@H(JuYWߗssy.S+hP#uXuǫ6Kݓ 0fV>k,*!M«Cx_&>Hԟ#eg?YF;RfVdFv W\J+]l)пWn9qMT|A\\|>NG t7mk˷F|*5C^4ȣW{+\`[>Wv谩)2W6=U,8gҕ6/2ukn=}wl;K hйmS'm<ȟMь [/[( .kMp5CE]-J>_A| a +V4|$FH09ϧsޝ&@S;^\8l] TmTωefW_!Ut{|.fh,iqFA,9$*z= w5`8L#p@۔ь;hⱔG7_z1˭B6#g25{_ |w'}mQ@XZ^;y&Y"sc 8Ϙ^GE&-/O}lhD1ho,'ɅN\MuIiBW6;exehp;ښAMV]4Oծn pzsq%)>tkQiNqx$8N+gP|KJl"|wq*1eƣ0tJ-iINq5SfL9vcM&k FNֺ 8q~x [F)$8WXAZ3A:aSn])^gˡ5/wdIq#QQ݇t\$=h\m1eY)o%m,0!.u51-'K;w mw;MD|M,&eV}5eSb[yk2xE^c4$!Pq<#.Ϡĵ~q3_q}+^xHCZ10Vο\VS{\(;g:ᔷO%`hEQ/VHȍG1SN ("w*װ Iwgr" V{C'XoXJ.,ex D_L03{79Tﰭ II[19B˖;hT¨+ U]Ѽ+H [*Co섏 Q'$̮(Ám"G2}s$*!'-RnnbH;@Oj垉2&- 33V+k7?D5)a2;<\~TYc_Ҽ5sP;禖Zѽ>yJ9p684񌸨Y,饀a+^p=~Jxj?@DlF҇Bl3}h`KZD̗ 5 I 8Ga'G~`0W$sya5D#}~pѩy7vF~BbLQ1C\*$AN) $wX*\!5 >\h*[bvC6wU$z380y]jϮD?4b*޼fRYLZ$Y7"Ly7ߎeH r࣮+E.`d]8 $ 2Koa];2B (_Q2 Ҧ^2c p(ro~1)HU[hweA3,5^ Y [aͰ(Dx1cNЭ\9 &+h_(Ni33{(-Iڭ^ZYwO@ 2vK"i!C;MK@deƪjz@A W g(kyOt(,21U 1os*88c;6rH]$M_NE{VT?Y KRqҞ8|F&gDZjÃ;(K'&.=B! j% )!]BMJ49m]V̏RGY&FdZߓ;$\̅t TU6؃v*x/sN"z'(i<ޮ^-z *08@_Fsj5U1ݩ-h,u9y(' $f?TOź?y}sjd. }9zx [=~Ӌ=67}/D֎2c: -Rk{h0`R"pp' .%VT~SQnSSHzmvR#z%Mmj D6j1(:E9W%#mr}Gͤ(m: w^pt+.|T}zx)bUǺ,7+ ^2꒹Z~@ !p9hzD誁1cENa]2,d񄽉)au]69[ + 5B HW',F3Rw1+\|a绕Nk䙙L'ZR''B* ذ^1dd2aۏ_Kh:1ze NIQ|,}d֋w?Xj1lp&^åEv#rx'&z'm bk&Nk&Z*֚ʬ}quM3EM3VDt֋rbGvet,(RW_Ol/>W'S+bJ4`V=n2GG 櫑+~kj97# t>TU~q?m8—5&Ae0>j00{L,a(3uaXҜqRg]U"-EQ+ r5\hbLs/ROta?w>Vj7 D7)ARox`%}Gp4 :hy97OX=v2P&K,t]G}Yf\de<&(;C(qم"Lj Wg}iXkN$IY 7k08$fHwi;@\ݏWI48 !Аc],d~7L3g2p|b06m5z,n,/%i"~rTAjmAM)t*%\kʍ/)ul;bevϕ,9%'ڄ,4^!0h {a. ˪-nƿ6\%>SoLWk3ʛ 2^^A4)5??pkgT"if[O3tyC&R~*zh;iYz4/p`B}v@8X<MA-? S9Zؒm ēp7u@΍&;*`?KJH=y_<7h#u̖ԣ> 2zf~E_TE%(~u`W"5S.aPM呒2΍9m,X6Mmeu`~Uzp+zR5*BwJTO_0XN{_nW{cX $$*sDLNz Z\; cuUw߅(U3 - |'Q[Eot%]5I[֑]v&zg^Ǭg=g yW"Raz{4d붗EEW 5Z]VՑ2dO.|렸? HXVuH{0Z4Ǥ"]2䁘8RjuxHzǏ"Iv"lF4.rI4R {! aV\Z5Td WqP2ZEQLW5!gYތ qOsG52?Y(-yJd`a^N HgC!L~`Y'U!7u>H^Eg4=Xq xAͬ9?6 쩾c0%]l!@9FZ҃Ao&0-2`gt<ӋP+;7;ˋ=]+8B *1h{mhVWc< .*p>\ac΂)]W'v5gk !%]gqCIz- °gݝb)pH nhuVXs vXI툒bga4, i-\|L?kU]>/6WT^?Aję m<,ZS/joZ^bM  m~l-+uVxB1.q-@ԥ5HmeE6KаOou'n<8$˭ӕ/6F6 ֥* ̗pO77H݁TMSdPSfqㅕ^Y!GU8U2Փh;Mm=XZ:d87fۙL~| Dc涇Hߤ0 wTzbdhYlחvʳZ,oH/,ɉ1:mŌ3^j6Yڻs nw5 *df:m` ҠAJ+yS+~Z٢UqC@f}E"g}ѯL'P)4}ZVӍO= P=uZpwbIg꾷DyP-sG[NTjkG!B*0}Yʶ?GrBqnwB`m1Vf {aݑz"'FhsF/C5i܌lh88VЀSqF؉l")/wm9 7An~(HMRsϪ„LBS7:CtK>$E jҺϱr-7xS~owHb/A 1^^RE(dNKj9Q6=VA jPMUo}#r v6m4Dd94=o͚Ŝdaଶqe ĉSBkg (lnRcV ls Ps\C +F@k2RTOք{LaGXkI8/g*X.8ʎlk9Hޡi`-,ij!D>$M0xVo-nQ9O(=/;nOE0&`m0bjKތLV٠˻9.fϊF,>4|ǫiH,{oUG,}H\yR* bK# XFۂHA{K慛uoPk .&&h%c^$o+p[[WWfb(: riuƳ>ͯv'1ɦ0x&CBT\bкTId6PHe@s64%; v{9phuu,6p)wbf-4^[C+ŨkA(3%jru텣Kzt uڝ;Wcec]G+PgӊTrd9ڹ𖨊 ̓=qz(J$1 Z%o1(2A1,*0ѳ- AE khN B0X WJ1irj;t8w?!S Ⱥꝸ=ڐ֞..P1X\HI)U3;ʰT-mXtTQ&φf]udHarmwvTҁ3d,q N-j)rvsֲB}`p w""afn]|0|όV= mQ^OI.inz$BISj+ w Db1!,Zd/9u/5dˀїq6$Aȷb:hD v̄̀R XR5izMnhΧHX ջpUmyetm0ʃe7"jJʃWޝw# F9sUZOx2yU:'Oן!]TjokWZ|tN:yFCG=xVLV?6uL5.he BIM7ޘWoD@IYe:xqx#.S?SO zN#tI >N9 ֺgt)=)(5|# ;#8gsR-ۃ<6gWֵ%lu(Tлij),4Z"~5ob~$p z.} /P=cmIİ$kb A {koO3U4Exj5X2x0QF[±;]9Y̱ŨU `.UjS*0EWYjA OVuȭX3zlf >??)J ]4 CF> P[%1r>!q5QXJ%B8ԶU}~y+0).AgS]yl`3VŲM&v0ڛv3h9LZSxCK~1eϻb4e|EXwއY|փDU=Wuf(GxOue/ We 6D{2`uOlde BF\wMJ'1A# ^!M? mmOTTH'PP.Bǚ[>bؽeJ3yU?* 9p $ҷޗʀ8,-`dr蚏7 (epXty/X0J;:~ н[u6q@lm?&CփoXrU`Ms97K>WvRS;]u[RTM+:fH>qo7JϝI<=&m~A/D]n+T(M]N ]cxRvɊ|Ւo/f67Ob>VtAo( |l6!}xӌ{w(Jq&|>tnZy3 cj ȳDPǻ V25/2dҷ@ȴ`VF5gy(\ _jX @ H mC$MyDZbu2O6ds^8ߞAm?o$%#5=Ѓp!aSM%[%[ I+W fsJ_avJHPv~R{}o.8 A} 4k1k  i\:Nag oL.J:=2_{,X[-I1h&ͺ$Ē6_~]1i{kb U+Y$RT=6O2deŰ-us Lj1'f*BRo0)4dE2P`U_q Tb']֦miY_Wp WQ>G5'D|638e (b@}:ib|$ $1؊Ku@E3;pѪ `3<֋Y|)F 6LkfWӣIh]HI|Mi crQvڙXӔZGa/_!|^^_]- 6qSDtP~5m;+V@W9 fKl\y~%N&?)5C3-F􇒓ᄿ 7?=D^θxYh4s#/o1Ax"ȆXZGZˈ9dva,,:&ݨwï{&LV!w\3*doc X}mwfi CQerǬQ$@>1"W'mD|t'\Mk ZE@NEx/*ަ!8 0;Ό.X#ܚG2ͩ&jgōR[BnS/@)]cV{AU B>;X-#_- LEq-,(>IVRJ4^$Sk'Hf#\q( =87y>rGkP˗vu/҅\䲳{^ ?$ >ش#d0䔞ݯJJ,1Y}dq~U`Ҍhn-@UNi(ˈK+Vnq&RzѻŁQN,Ž*EI{?Ec%p+0j L/7P n ީ<1#w5t43x@гmx㕋mw% 3a{:4 biAh9hȬ\voy!ẕp߳] eH K3Nّ_fe;IHxR̋wa~e\_S`5v&ήѢE ƙWsX~Yh'B$$,IVD _nsY0WQ?)j5 _1lɧ^!lS1 elDhr΍36 0WVQ*p@rQ`H?L1&& 2;2Nۻ% q੫u%ԖS^/oU@ yr ^tH\тʿ^ˡBL; pN\wYiݾ1y&@ U2Rʮd Jbh~eP p84*'W{O>&@~]w<^:2Nm9u.q,>Ck< T-p̭>&AE'vMJ2)VhHxM,V,^ꄓ/Ea>ɷv dr܁L@+IVۧNUa8n6.2bchmj8Jjh bR#HtfYqj ${ex^k#8ZiEmʪ.FWA^0TysdyI ݣY`UbK&`~W4j {xg"Ә1&V)[C軕pFoo,l*ߖ fSTYH 6m,grطɹcGA&tUD~g,evyVF"5 m# JH=Ǯ3:㽞jw1!pk{^ \H`hoyOn5PyG?VIITEi 5`T G{NvGumro`wi:أXb{&B6&393o`=fs܊~-Z300XM0,Z%ІקF_gU$Mq!(Q8+s7Ԯ[jE$)su8`im%:[B% zq& X^t;حwA) g”")>kFsjHXw2˄ (9矐JQOօb- J]'} ,_ݱZ1:[O"@δ4lLl3ӻMvo;5AwF I5+l2R'V,qp=DM)Zn⿤(}9> n#H1Rpv߫HiD":1a:x0[)]ocM1<-:=G|N;ꡜ,}IobR*)ʑbl?&:c̉lWbfW}QB&;#@j;\nNT_AzHwJW~BmVܔ:IMP>ooG& +n82,8uCyA٨:O ծcF&Nݠ-lcE+Tn|ܮM;4*NvDPW[V7u_$,?AA- =gOLSV ~8ޢOdSiqݔU i}.Tbjyz.6<BcCJ^?qԇKMj0i'@ 4VU۷O 8\xtXE`c/ D~}bT ^$XR.>wliF,jԲ4m7밶Ӛ['/]M_)+'n;2@æ4Hxln]_N+<8Tz<8i*soFZ{T5D\!Er;fAo¡eURjE%_`_Ͷ t 8Kl}!0v|&j$.}wv%ׁ WvaYt@ vCW߳ jjB>JJYZ&r3X/HõVs|cW3ozJu'>bȱǧ 57p' tn g-a9Zu\|  .bAP7"B#NuUmMYӿ;zSՋ勵y wܜ:uҋ-r*~"G#f6U[FYdw9ksꚁVAJh3Ie9O[JFz(=XaŒqs|eg \;aC2 .AGN 1:R;`f-rѝh@Y_J XD*&a8ن#c 3''}ЮNI$ԈH!hH,t(wz**!_s SS%l$fɧmyHոWH9UF7Bg&0?1ju SEꤟa$0HޏȓP%q13y+l YjL!%?ޯmaMT![ Zm?WKCe'RiL.UgOeYYdzeT`1^f#*TqSN4L8zxĂh^VU*,&0< 켇Vֽ׌x93R,j8frK;xrꢿiRb0My 6IKl3_%krN&eIʽ~r#<p6m,B [O/\0n"vAqL1wpۨ[6.yPd)u1Ytܷ>MֱNAzaC𚰹`:q{c (-BW S/U.!IgϟС&S5 lFno8+ ^o)8n"+pZLz7w YؘsC̖U3H?KZK_poV1kgq2|pV_SVAt) k$y_vIbpܷ:a2Rr=>ܹo 566ghpgcB˛DUIx{Tp!R4ģےXEAK}ʧ=7 2}Q'HL]p,P׺rZz7Yo18=-<+k)Ri' ^Йe ?ynԁ6'v_s ;j B%ݨ !Er'xyJ _dͨ}|TjPt=C"">ēdˣ䅫:-bO[>+PZKɧ!e@5xm %u0H2Goqj Z[DE ƱOb11fJk"17bNlhHxV ~ SU~G`q@I#OӧJٳ=@E4?>fα:v*bTgh^D]}V,vZJwϢ1{Y{:`Xcl%"uc,O}GOD׳Гin~te6%Y^fmƗ aȴ@%d$츷ƟhfXM,+_n!jsw^nUܺXAd?!ŵ~ZC f",0E+$|(H{dKL ĿH^,;{@ӹ >H)tU:9I,W ɌN$ʯ cFP/8XѴ jjIVBp >y=Y @/ z<,DD;1VkjϦdʓO ѧOnxX/实~|AvayN}JlliS-2ņu\L LN0[da-Pą 6nȶ7=kE;ٷeIȓ̡Ccb4Td"+a'$5^ "KkCr/A+UX5|-}leѓ<)2bV35\I#ȱvaOH0ST>>gBO>y DɈO4RTCE9e}4{O0[z4^wL[U $*[zS(0=Ƒ'4jM G{ `ݡ _m{1[9p9{1DMZtPf+\_H]ȀwST1}&ԅ뾄[N:Cڶ."R  Knӹ qNr S+b0{NˤUTFZ~й,:".9^@ZfoeiHjZt0xtÐj` jE72q.$z!!!6\.RU@ӥyE 6fک^zX2[#Q!=88ծˆ\d. A І/2|%w?*кws2Cj w&mv"w"Orؗ!#)hIVq0#00"jrfb!l)GkBQ"eIuQT$Ո:u*{L3G*H*Pr(~/x?ҭY Mwԡա( ^'~`й=8$1HQA0O?ɇ mYWR%'V%|/R n“=*cF^ѐ#p rγ7dC|CgRČۼ)g3ߧ"Yi<;#z].D֝gH nmF{Sxo ND< g\aIŀ fqԣ{|w2ڮv`kdVz;mabBtu݂> fu}]حMDE"'MGHqquP9"JGZ{#p~CTLO /di=0SCt%iUW}W"f ؾp4Tր4.1EkȵɬK!d}Q] Lb~M"/ZTU*obQ"J7**/@M1OĢjT\5$s`@t̆)|eX~={"JlTal¡wv[u^Y`eQOO|~[@_NA,+i^ݭ]%ʷI fۜG ogIS?䟕K/f>g)cta,Uˆ]T. ~dsʹt/;xTM}f$y~l!oߧ:;-_O%~`,-}HGhi|W:O}麷{G,rHmL\ e.1-BMx:#{4  5MkŤ,!yL~51}!4&ؤCI$D87`^ dz=JjȨr#GA,4 +Lo͕b|$O@p6W^`9` FEݹ!=u)>ggB!=ژcz-^‡A??15ar4W1.&лœoh #bPJj6ePͻsUn+.FGbˌ/ALw]L0_4ZozYM$/I=KP؆GYq}UhcG$>ޡ. *_sՑ940%KJkDq0޸[`BQv1=!mX,,ſɼr˝%^5'#ړiS>T&~y`5(%CIY}0]TFYw( g;=٫ &F6j]4vvZD*8l# GS f xmW/]-wA~&i|EupkZ2`^0ALg&Zr[_-Gћ~_,w*GHw=a4 UCYrŠPS`37+?a`!:}b`$⢣N3PaOBk Vuʸ.!'E&D5(zy{q2'RŻ^MIysfw⢲a<I+l}?Q &H^M]:57HjK8VJ'tKl!25\%_dDQN=?)-"r&:/znxՇሴ:7{ֺҴK641\Mc͛1kl(F9pl6[LYv6vjI:s=C~[ ol~1*zkf0]?] PDv>*gD29:b~CĸyB;LalU:̳砘 ?77 F[1gT8~vBw`۬^Q7O J.u)]CTH6sEWRё6 `nE'45eC :i#NrSm힉$؉brbnK xT9?qjQJ\d'cS/:s^".=>xb~c"W:Kڹ~1AIڭY qG`}e%zמur$SuP^d^x+vi?O#G-p w #%卸y[TBwΡ52Ue:y,ktFÖe_h}T jȍΉMeR(-Q?dzCh!QKx䄮8i/0[5dԍp/h tlٴ^ K11OVgl` sN=N]IqbNWh~ (}/Bb$̺dbPG~3|뵟ޞ*E[Y–[a|sOT:` lCQ< <k{/LWfX@:+3ToD =R(J7%&Rld! \haLs =7{C$;eq\ʜ).'PAS0~0SGUg}inc },JأF aĹ={f]us Pp2 I=u51v–Zgȳ_8Ihӧ8娭lѴ9G͝RsdS=]67s~GWBf([hk&f9ް_,ߚݮЎ%DF?@~&A+.S矷>Zmk&,M|qu@@;r&R]?;փGRSWǡ2%I_y )ȡ]K*q wK0 dkBvJuLX]R7#!3&2 m^8Jp-sq7+̻F_SW((3=0ˊ,?PyԼNp\Aݻ Rl:I4ocaE%LU"mLW!Ή0o5x7|_8ilMvn{\ݬw)`l{lD$XGqAZZ4l 1o}lKȬkOLQc;D ^"@9woY9Tw]e:Js$;OsNH%oqTab4l |SPf<==32hdvG hÅ?t?6rm?g>'lobSNrGpa۠/edj0 vXd8"&co[[ILٝ~wUxaݑ=|bR.Ljq#T >ghf&ZV!{BdkDPm[wYqb 5qtcij ෕P3T&/W{Qz|i|ϛh= kVJ.p iWh0NcU;KmXB@:E&M®2 oݚ;ZZK࣋ҲBٶqvXeZկ HIha"-~PLfOz ;SDnJ_!$EVdcUGUOa3wг78i÷lζB/<#{g&YQ^HÕ"Yѧ2BH*zKwm{æ1pgKXXgW[}6ޫ* rK("#C>69+eMJ_]J<[K8< @T \'ץi[7';y1i~%ou>%&Pd_[Z \r,J2hL}uG5'Y 3¿TlB^N& ^Q)'ن˯O UɿyG54*qӜpK<6rzS+a{Zʝew)4%b $jQ-8 !?÷$ _ͣ~tOKGuBٱt Y)`$v2fxӴ(P+ȼQ! ͼ" @Nhٕ,raŎ$Yo=h Cw-LV S<ɨ؝m:,慹t6ۓ0EFfD O{x<04dڗȻ4 #/#&b}iajKٟ vx{ܨyxC >gD&7j;Yl(DTŸ=CQ mMC[Lg~,-n]|=U/Q)vʝ 0aM637vV\uet99j&)sލc* -f?SM}Ye 4*돢FȁZȤ,K TpbA@ؤk{AQg6̀ELdM&|2ћ̠W*+x{%r*`{GVVmE΋'Ʒ87H72<Gm&Na SpJ?TiFBYH쉓q]/cSSTF8@ oTnvBHD+ӓgd՗vk! i8}̖3Meerw@͓/}uqvT} -v;mS 1] X>hBfT^x@hYIxNv}rXdt? 50~gϰ$2c%; [h%ϞBx@ⷲ7L0 }O%nK0ΓUЍSmJO3bw,;Y,Y!0Z̘\i~Bm#_afRZ2 ׈6! !xgΌ[Q؋|oLhGl{Хsu݈fd5$# g.!*۪ڟϨA2t l~udT4R" k~"08(/Bj;fnADzBׁam1!另yp>,IX ZJ7ՀjafDs 9Lg{;Lg,U!˖N 3=#V_!b B$W?B.c$٥s'.;|:|ͱXHi'qGUBG. xBws?NIɁ}~"ߧ: Vy$9hdj33giV<@1ŖF 9evh2[xyAH`y0iFUzs2?oV遃Y?"[GvϢ[a޷Mu>ky"KgVv$3$r,0-2-~qZtX/XQ9r:N<-t2ACg?\<:ފSaz:nU3PmmE˭BGwoVI.ד>IoT+Ce2KR(LWy^-ځi@iK[S_~;g^G1T`wT;GUdU MpG> @1 R!F2n(r)zc<$rNC<[R2+\"+6k]l!9<X%KߒPE-^hF(Ϲ^eU/GJájEaDxș[Np"`PYd5v+j n9MZq$: "@@7, Mm.zWI!9dVsE8A:@UHkϼzrȰ4#.vok b^o\ mdyܴ.uۖ@rٛxsu+!XIkE4Cp$nSf(܁1q)Qsڣ={p0wCľGۭ]8ɀ5mEcZn9-mFdt-׺  EtZfWb<2}nCNE+ЃKnJLݠ#iڠbL¬RPzk`#Ϭ`*ӓ=|Gλ3$]27/+$^ATMPׄ%;'=p>N2]o8W7RjL܉0~;NOE=/RDKn}Dt1tւ6Jd̽ffgA0Wumaw}--4mCf0/xȣ8ga~:./wu圉r=ACMޢƽi [@rms6}chX$IKw3?_/k,/Q'rm8I >Ѹ u )H'l3I]97̻U>%˰!8 bz|fRԗ ?nP98߈VͦOÐv{:W_|bJQԄcɒQsØq6\p!hch~t{ J[w!9ډKUiqS3Cf&O| We7ЀuȐҕ%`x܇&-y&w,TYS2i^*n _g:і(]5YҋU&aQ }S#WeGB2HoLiXL)clO8kj {>uSIp'M asV)ɦsrS'+d@vV :=AcGDY`þ># a~DKĄxկ>OBIVJƏNgLiR.Os,Pմhw֯Cuzִ[z"ǍcȗSh5tQHZQ'nMk_C8 PE|ԐSQibꙁD!_JhmdO2:órITHA4yJM'(\ lE~* q>q&]Xuh;DAv%ZuXRJ[d \A!}\q/wyo ]UQy곝ҭeݗbnIFs貱i/ 3u !XgvMJ\:l?p-d(r D7ىX]$lX1cuD_`˃>$X{6f\=#g[ŐMʼnuk^Tv_Nw¶'!^X۶<5▋@1FȜy5/e@7d 2Q. 2H<7ĉ37ն"x~a׷fO;_* pO3/DBP%/:r%D=B)n<4͹uq;h//ڳd  XAhw}a%biab=P##s8P+Am/rPw+5'E_tHY|Ic K] d:y;Ԗ/MH =aFWǬU"kLq.WgWcGm3S;s`zg$6(ٷxzcq OmCE E~+@$]jv#'D ?"vejMN:_HH oerOQ=!!Q+x-ʵl /Kt7SRFU7 EAYwעާ@nB֟^'|lklrjƌKLpr5:xI5ªv~[tN֎@oYyAc,wU}WDAGݶbt2SDZTfS (6x(@eD£t+Vqo5S˵Jf2.sdlS1r[n)>RH >CAubb n~hk6Eu\74o}Gj!|~ձNf49ΆGiLg ғe#4“[lONdeۦ!A:U l7t(qN7fzed\ ƍ }?),Ic@Wr%N]ͻ>fܒs?l$vw2|yz|56KcoeUDfI7|U&H@3kHhT:^(rA5R@|.S c&֓6HG|>ؾ@& C1㕒z&Fव̹mʳDw '51RRmFߡtb[9*Vǽؓ7ԗ|ʄbɲ[7LS˯VV!RV`uNZe8Yub4?  iݩKT_YKBY-aZwɿ˜$c1ګ:t(4hU6VoU3G-l^ fng}a"K^iXpH n|_t֒aEL|z?JP5=;NB"gR)BVE2D%!^L${/ZF A 45UA٣]2QCYޞ@Rb93CB)#h_ht"*١ȁ(SI&L\(6f?DkdU w%,fƷ6I0cHʠMlBm4+nxM/`t5VVbZ/d3TѠk07\:M64G\?E83t|JǒzC8_R+Gst8:3h:՟RI6zU##Ӳ ɟS4+FmC~䦬8ar}w;"` GvO2]jfS9]6u9O ,Rfvp뉗 ݖ/󀼄蓵c[,Y{eWcӾ5`{y%R-՗r*jrT.]Yȫ1lȮU6FgYJ&,Ch.*㔛B"G`i{/V|}ۜ_o S'0K=8Ĉj@px :f Z& pfaƙ{>ѕHxXnP<4+Ԃs 6  X>u~[O/9S~t,B.x:o2 AYA \AxyIG@j C TVL"4{ ުqxN">̚~\V」Wiw4ـ+jfgwkrt@Qu6eY%XX)'Gn9(~al_`5bU]D61a;ܴQUrƕ^:([Ww%Q p$JkiN'w= xW"TwfŴ. \R׏Bt|&Ff Ku @ s\BwG B{i=[mdi@a8C;nnMIFo5""\"ޤʗ!Z0Y["EUqwnT40#k7'?2Dt#?k\=( fDHbJ} Q/Qk Zx)fՃj ) &e} 0[6do~c[e"֗5#W|dA\BxiNF*J-7eqh;!r-4Bmp  A 0Q lji U(7R8҃G>c͇ 'v8b!ZYR:$Uw rh#o`%DNMeQ"ˢrF$EɪK&YؠBr=LUY.1Ь 6SЍ{!f[TD7'lJV^yܑty;2-i~þ0 d 8tAX3ُΑҌ9}$lTMm6(_.V(5"V}*Y=Wi9T2,`x uJUʈs\a7A?¦I;>ĝ^n0w&i87`SOa9]>vi7M l ,dFEu[$wܼxH\H6:ݔe\щz.T h?R2ϝ-$kݷR:{Xu ًڗ45 e ~p0؊xByF 3Z;^VMJ =4ydz-, ( \U!AwUK8%|ϛn1ݹcncniOȐAEЀP-1n(5ȨO_j!bO8^Dc`Cz@\!**^I5%=^ŝZ³cR X j_#wȣd^n6H[v}Ćs XהbA|tx#üdFН`fb n,]Yf4R/ (E[(m7 &H`T )`Do2Wq!7+,02PMӶcx:%*U9C1 6hy fv?*A ]?;}xS×2=۪y{,~9߀۹9w\dcrYh^ <V*󟸢'yc>/@FvNy!߬ jan/]qufEqm] 2S9`n3K4oZ?϶^q:y( iQFK]z  \,'"D+8&uHJb/-BGBC::=5o , *qJ svL1dEx`R&wLz,0~ճyAY.zZ t:-!;ȇ_o֓uύQ4 \p~j1UiX[Bzsa2R,859 #~XXp諥wJc]o Hiwj`m?/>@<8ggs\y+ºmrXbsx{w+$?v'%ᴄ38ĕђvfzWөPJ 5r*oOON|T//>`:r\aߟÊJ!pQ ]1NF4 9+-C^b_ ?É 0^\Ax: CYh|Lr㻒FUjۧԔ3=OWcIv!_( bI)S_a g`sg'C/N${]|APh¸?Κk7]dB$%ƴDu$FYeDOOdt.o&׊i}l71i?6uk U&DNJo#_XK0PN L]ȗ:D VPNFKJq'U*vW6Ic+>+JYԥ;2(~ CԟߡZZ0zcIX~zAb&9Adjt'Py„zsj/.m Eg  y4 4~IyJ/ٱ-z7? BY[y4N?w / ,=.=LeĦ;FQ !> e xUqlD=6Xn:bf5VҐgV4-$)zV@ cՖ %ml2B=AXX$ #eacγ٣k_!V}^nwUi΅EUh>eϗyMӼ < B<՚ mf8+E9n<Op, K2bO;bm9@hǿa,pw&::_Ё!c,p%C%) ӗN,c Qyp $hv*&t 2b#aB]'W*%n9u UseR^BHhբTnpHx;M^J 5$“ QslΚ\^nC(ͳ͝E8cF~-[*={h2ϐRg]MbDىJ9yF[a>(n402\u,M$ү/G:R차JFK NPsbf gK^SΒpdyit0bⲆt~5MF~a `lC(>:×C@crŐ*@85w%>f ~~3 Ȝ1&A;tLԧW $80lG c@sJoVaiiql@O-0H$#ϣQ$qڊj~33auYYV&=8? %n'iZߠ'2*pRVO~'o`i<@ D\LB̮19)#!ߎk˝]s Fi^wL'kٯ7U&?*o c`@}%f;\{1j9fj6͌r~f?!mKtGyi/`0%YM*y.Hmjl0Ĺ) h3#gi+ݚ*3$% ;R~|yh-GJCRC Q%NXНUZ+9LU3[z:i(cL҈Ew$@A ue0;[u_{{{X/zvQ~֗;yi}(jsd/L0ٗ< jCa7˘eP ːRm05v/- =S8ñZmĴM@С# cZ=O h1 yr ؒ_/FIKVrCҹhqWxIy&^aT%sF%:4}cH~'jYgOф':@gp'%7zo÷8E*7z6i,<%s  MGG IGt!\e^;Oӛ, 3%UCyu$-}5vϴY5+ICEcpo96fvqޱH0OygCacjI41"d%L~1-Z-4[Pa{%Ί\MЏ7wOmcׇäeB9<B/ %K,Ub481)  e+M@Ok+ !lExڽOB 3`U4H. H)Eqdj}`7kQU5Z(rQï{l<-$!FP-f~cw?¯,tz$3õ r|<;p<:Z"d7J Zx^_'2vGS[R3[zFfI\w[sƹ G< 1 ^[YEP$i,o/B.7My(o&|`a͝cSpruΟ%y7MW ]{Z>ي@L`R]R90lI݁&&]˿ٝ[GOGv88 `#ZPc,dLx~]m䂊 |b?r)Ml>k?/yOY 4[7_~.QEo׏sJ[Qpm2nUP:vSO!7>? 3G +.R |`.ySR8)0 N:pYfh؊گ>IXއC,3L>ږa2cԍ9<ĥcswC ҮJT%% ҀA#17QSͰSηFV0JXN ӱ*O̗!8Q޼݉;+ٗ%j~2<1$m|ɀ0dke zzL߳Al]avr:ss0i#ûd_ц[<<~١,wPF6h٭Ro&`Z@GrE~:qߔ60}mmI`i' L>^ ӲZͿL~a{W+vVm~J6uȀ"> @Bz@;7x.Ei[.D|#\;"U.YcGr|LE_dKҐ)xDɅ)>5xͱ: ;Zo@q;Gb>)G խڿs!*װqu}J n/AyT:՞"=Vݿi<16 lЊopwϺd|f>4c3g!7!Q \nGO) GA[ e3`]_z5eb!ߔ\e3Qozmb*fi4Kࢯio4$̉5*ب.-8:0ýE oQ9p6VtU͎9xs RQ5tl#-(vG zhfxQ!Bbhf1ATA &s4W1&^ "Fkz(͸y0h5x_o{x^rLfõ% | Ég[FZ{8?,=ĴL]W $g#舉D崖\ Ѯ7JM:LJ$,j$Oz!gQoD'3Ϙp nMrcjͲbd͠TYp-#o队 P%}4O;}i jQ4]C{S=hsWY(0,08+qe7xm>U/{}G/?+Сlr{$djg#6Ln(\R’s1_8#H}֥X!L3#& l VQK9B@co08;Ad+ M)S#x3 >KS]:Xj$P u\+5*/?ڀgLJM#h; O}@q%"PQI%jM KYU b3Qu0f"7zݺ?d#7ǸO>ũЋbZXwZటVp4k*ROA^>uA[QG] eBAYohy5Hk!Ћf"-'-%d \=ϲb6I!@4#:QDFuiESP7S3Ł3å cԐ$d;fܧ;ׄ J[R'i[4f!N\>|Jz0+?N %E : i56˕hn)\C2u/+ !oS 4:˜EӼȳ OŽԠޘI~-t?.]4Rw+|B.&F>P5rdhv7:AF@YV:`\sR.^ ?5K =uis4 АNBFN0`[z-\d|SBCp߫Jͽ!;xdyVAwdi8Q z}EYg_m*ZAֺCt@R@ t02/rK-v3BE6? =1WnXAyDzaxTeʡI8-%}㉳hVwՋcf9z2Ζm 9vil=pkv zX]+h+#|zau=ti4jt<.;ꔢ RrZ${|{C˨4Q}hل l;) ][C0?(,G'4 L#'Kc\SMiV)J!3 Y(1l:~>6!pqs1L^P}/}띚xc].X&mI+U}/D??V\),l?n`.iբ]j igc0 "siU%wpx&/u쬨a'؄ՌKkWYa1P]P8`ΓҷhcKJ23T#Ȍ'LƧCs .J.@66O> 3*ӖL 2VTVNxIR(.oL4 d?u:@!N$G-s}va[>f-l}9S6Ke Jl>bh=$D.C5=mjr^+1­ɏJS D7^Q󜫫Ri>-L2ϗKJJIŒʥsu_`y4Z^NpW CUWRpREg$/7n%յmD^`iq1+'32\ k@r /qVT0h5^7H5>j(KAg'@I K7j cUE?2.;xw3͏LLK^ܯ!}zoչ/WDɅ<>d7UO \HT 'ݍMyo) 0!eF:@$pW21"Iv+-E'ͱP^iPLv4۟) f;V,=$o#SP*D=Wyv7 lZMztPJcrx$XNXE{:ןWcOd<}G;:"4g^UG8)5 DaAS/i*xƻ+_%m@#hڙY(}G5 Al ~{jªyҶZ$CE_Ӈ)OI|]%F8Ytd(ɺa6q!i4Kg/[<'kyIV{N0!,fŃA6i3^N&~]md мJ;kjۏ\}RWFGe6"hIJIkS8)IT兏I$|ci mmWu! XHd ]$|$Pxa(fdr%*0Q?Ċ+6cIZoxĨeUDF7X޳RUɤd7(cXvvO5bƖ8ި'F|Nxx ]'҇̍gL 71WVD]Li>R #F<67o81ԃ}w4Af&S?ý9yksɒX3u FK,C; L."a֏Ω$9C )Tk8IOA"Ưqw0>i1Cdxb#bЩ'xeĘ Jez{5_;/R?;.qiU¸OcM3_0(T65/'hV91`d>ieSW"w$Ԑ7ﳇ0#i +)5/j,e~|cZG,6!V44HZ9yCS^HsxE?%h5rYE-bJ`|Y0J9Ed_6H3I_Oohpyj%jn^ y-Ok' 9`\P=znJrϣGbKZL00);EUPf '= nM!ȣ *\sz~ :h ƹ)ZrSy-MO5TA׽Os sb0z7ݒD_Vp)5бv81(F^z8ێ˛]+.V\:heɐ)Tuv7a6eVH;|2Ť!pZ8ԫT[]9_LƑ/^EQ]P)w+ej8rT#9 7kkuU`EJE M!)TB 7Py!ڽ|Mk/y?KBg苴-W:ܖhYF`kB ށ)Wt/ފA˯`|}v ?zeu;e+%%]yCt! ٷo-3r f Xgԯ O2 I}J[RYޑPkt6\__<>32Rw k/ү"_zU>?O1<9Q,*P8xSp27,Hzkzb,Xnr3> ċOL'kv+z2" A-H\Ic t mO "1t0C2VoU撕?㝇^n/q@eI3]+`8E6r<N.JAh4EFp6_ :˗o67OsJ^fU'ax@ӟ '$/E_ k;J2A! 24 wyjY%Sut&M{N`ʧ{g昜Pgegu71raeD9֞ڏwV*d_\Ůkݯ!]BΧc P1#,m;O T/g@.?#֚S-J:J?_A|or#mW.3uORb0P5|ґ:"c' ]&lu/]Y6Q,'a syj$#A)M _svRk*׽3DHH*Б9~epɯ+rjz{ 29iؽpaelXؽ756!i Hl)<ǖX",(y UZ2[gaR Ì=M@T8LeKpSFs_ϗ=@3{'ws M[Ht-ynJܩ a%>Tlt=\|D׆O0RؘOdY-Ɔ(_ zBKJh =K\%tJ(;,k46 @8--g^Ah*zh}s DjQExѩ2%e g E[W%3TB c׎vv"9+ddD6*9bѪSML,J2On21w.ܼR. bD$ԉ'9yzcN&ĈЇ _GKq=Qn ߼?msW<Һ#p&Ĉt/8l"](ڸc.6S3YuZ8I抿6{:(IV0V󒏿־F:{T,^wh|iT}tpS+2*s]gJ FKvxͳbҌ(oN4Jqwഷ څ%C'KkY0yjdVFu=o 2%1M7K@X'\ '`tpԃ N{;\JDզE Gr2|`#},Շ$AʅWuvg,1N3WE 2_|v6E $W38f9) |zV p싁vz:?YBZˎ9GY6ܸo `RITҡR]2e@ډY=mΐ9 7)-M"eqO&k$-Z07LJû#gp,y4޻¹Ui8 O[.xͮ 'K{/D|"oI 2VT+2*q_an9WqL?^nM3ij ᰨ.ºk?M *=XJ b'$MZrWH *u4Bx,7 ꇰAldK+-y0(wp?3YTLڍ*fx0=jHblF԰l Z>xj}ݿfSoiiлiÄU&EcHko7aw+~YGP-mN{`:,q\fV<:ɀv~.>s8\$sԣQ֥;'rKķR9 ~sR(,cKP֑a\#X>09~zkt&a{ Uⅱ|3ww wTަ/62Ho֎NT1LD&1,f2-|&r{Ril="G~NDdt!X"XQpJ"^>hLK2MvQX-!U,9bJ_82Ȁ7ر1KB[F99+gp'H@'/67`5Bn!h#l.̡1$ =6-gJo|R4nY!|Eث\] 3Nr.\4ADl"fQY/2>n@(x5_K;7 E }>۪ $}t%F1oBQ]ͲdfVKNDt ]Xj{qMmdg?u4\`"0!z94o,"E؁2 Y c@:RX7xG(Cm.5\RtIWC#E'g["]d!#hΤ&`5o|L]IhЕ]ycDNc c8v aJ(`YwЌȻ?xR;  Mgadw&/_;R1 ХL{eC|Ϝ/gc7ZPT[~yBm v t5[ܳ0\&|_ض3chv{qs'>xFf8cXO3&rpo_EpÈ "rdXp2K )]IZ;[qp2Ռ`X\˜D_4o2^bXxh\ ֟"b?<u"| 詆mA;Ai.E`X`)D>N{ yp2 \QkS Lέ*)ٟ#M%ćU3 ݹ1^ȤIn!(/P,GG&GuTHC=ά&LKy i(6鸻-M̗: Âؿu'.$JxpOMԚم)` $¬f]# cߍdW7WϞ1fɾfԏUj/uCO-w'-a+dNs [z͎t= -sGޔwLCet6)5=ekh{·0xC)j\#I]Mŧ%IґtpPn}hK2˼eה8uQ/q"XVRFjo_D`Z3?|&\|N7>-+sS~ L6vZ68ij nŠ`4˹p *=6wpoSS|0sMAώ}*ט{0!7=a4;²MSJOeě5eaޱPCp>sog4V! N s6T\E;6kA dĥjDG7:m8ec7(ETC&f&tՇy"~JdCuA>w8=Q /Vy9\A?%:*a``U1X +\4_jy] |p?/FLޤ;] -dC%N\O*=l/b4-S8}h[cH2U'GҮ~kqġMY 2GI!:ROSzD޾e'\ȗfk[])ו[ۧkt\BX^sнd"bF#ܾTTG*Qs^M޴Y &P]c O= `,'ӥڮFZKgGJ]MWS!_y-<*la=;~Hh>7= s2\5׌B Pl s>p܌ٌ ql9YoKzp]UuPz1*DrQ߶],൤5 1;PX!R0esC6{4XsJ:{ZRq_D8fm9P:B=Q5ՂIK_.+"Lb)`Eab_K[|.y=ř£1OkmTu t|^BٸRpX͞*ܑ42ǙW< i91۲deQbpn4* ~V&-,\>,' %3mLU&&Twy䁿FL,{ C89(K#Ĥiُ3*s)zOlIi*ť*h_}’Lm8-.GY99KhcxJߡIĊe^H"(ƦWÖx5TZ46@db(9? f$s\jMڶi+Y#(Ie*8> +|cs8Uʉ8 (mMܿ.b*lZ }bw7mVCMkt '{]q#c_ $nVuR~uP|45tÓ M3 'F߯PpO-NO;)/.6rZS[,4֏IY(% rE&rʆH,P鸢s|FC Dsk"{dF2ysV;h5)?+N5R%8Ҫd0mqi/W{2ʄR#7޲2e  1_B8=X/),J@J( FV]4L@Ӭ6xy͹LȔOa=!즐#;j6oDPި -23u ٱ;exv^pˊ:]083Hwy-*lVD_-<tU0>4ȶ[PQ}`rLW*/x7]͕ j-e1$KDrlɟXu+irP5 "Rtg=]hq\J$*u/IҰ|[`쵭6յ<ݭW<Fi #Ղ))!5)|'u~U(!|f} |WQtc,}Qۏgo.wt_#c47FbI*M'ŔiPȳǚrs+>a[7Y,?z#<& "ן'mJfm T "|EA3JUD0dBD-yOΖx w.5_ R䇺„ "gs l"XX8#7CJs+GU-LeZ~)px$#ejxN|H 7yʰMG vi]vT̪laawƉַ""o%);~u"4>'_yUܓ%rp"dŋ9J%6DzC!ۍsəF{6EM>snA`ǥA1 O;eS eceE)Q(H1|)O6><z!ߊM'VJ[{~ ҟO\IwiYw[\"}{l?zW(U}P3SAv3ק vBySS)9@05E96vF8 wCquO. RQPTgDXxCc> co3Bm_|dlkvXo% wˊ_;e*:{GGn;`$QESn(xEz93rY.94V^J:lAT6T<;hK\|[Uٻl'}]<G-K/!b5VIy E)Yqp:5cЇvrn΄h`5f$ 70 rz2F\JEf+Bvb\v.d+}x0^J?lǩb?4]\ E$GJqH܌`~1% Ym}0l8 LTc]ڪ@B@ -J>))+jW.v]ըE~haH zDo ,[skqݓMݙCT~dSKm q-bk NwXA< _+)[p}Zל|t6ȳC}21t \w&ߩ\$aQM5 :i:&v[Px?LEr<*66@N2tT!< Ө &Z5IJy.Х p&΅!5z(+ l ѳ0 _I,Z U@_¾6@^f70h͔@'kaS5iG5_8[nG'ĕ+xKRtҷ?gx ĩJ2gꐥPX8NLk}}G'I =V6v4--,ݳ[Gm;Yfo2Q*5]q^-ahoBE1QdaB쮸vWbfؼ .Ғ7|6A|'yJG4\% VH0G (b=Z^`'d-Xk/ǝ@#h:i7d .%[G 6:g܏ ڎZuDNęa-b:'[tmڪwAԛ@ ˪uaK&wM YrH̍ŝFin-|5L0E]e}| 2/ (ѡz2åE_;ni] u :FC[pB,ఏ-M*P)o0TJ:Gd>ҹkVQܮ8Dɒ;m RٴhOUݕQbmګZ5+`FP 홅} CGen¥~SC ?&`q;Mj`qI#ؖxNml7o-h`D+e2lrR8F1dd`:sNH7_Vu@S?~ZN hvQh}h56kL(r͵G~=Vs 2@m.c_6z=ʞt-؛I`n&|giMv-3KLǖbc q%ՁR&c~^F QI~ RX˗XXxQaBVK#mieOmr ꒢E؁&{ nrGl \j8Q1;`Ј)X/,A!St4lSgSuP=6AV\ {[9{ w\$8* [k9L vd7+4qv;7GlK!#e52og@g'$EhFۋO[C*Q) %ΛHҜ;UPCI3Q3JT,$ɉ@ED|7O= 0: J(r!(I&/qz-"<*[Ї.{E5!g۬ߣy:Oxdz-Ckx qjXO4G Cc[<]!l}'vg hx V|E_Y84]X5<(Z>ѹ'$ڤo4_l(ꄷBx\e7TeFB3$::0ck&wleOOn"O i.w݊CW8kPD+ܻYKxCTғvKe'+60t`Wi8'I-{6& c=0t/ mSsL{"<FL7ԓ2| ;9 bO5eM̸43$PL2=pb嘰TBqGDg$oԉoIDX[l5pkJ'ϸP@fw ِZK3!$u)C7}R h'z-FGJ 5n^0?h; M}uM}3 .y停 j)O} 8i-JR &fRE8ن֚k%seFS(_J7ݨ!߸1GmV7N`nUYR@er3vX5М_4aN8/xo`t]i :65E0 %J}U_mVEKU.J.A)0{ƺwD{*Ŕ mgn6fT)m鲨T"Ynn˸yjsrwbAJ4рV y-ְuz d{YQFV(=`'oHV.J,;GQA1΁6ag]L;/ HtųS 7jӆ^϶m g5XUA*s^GliN@Rđ_ f/9vqҒ(o[A'*{,7B^,Df\nt)D*{?/ z^T 'Y韢IrHj'*ܡx1Jt 0 D.3OY &/4sr7+dޭJ3{ YH f&Hp LƐV:7Ե_p[~VЖ9ZkΤfiV,8[KIC؝J?#!,Gs*:FWQXC}^yq\giʤjc>ʿÂh@\gz:Ge 44j +aMZNvژ @XT;1]udWд4`b#DBVج#rOơl[6Q)dD\jU^ 3O9Z>{4"ĭ{`xeifh[zfXwr/\N((V >63p6;{. kXr꼷38D_ڸ-wW!;+h?"Kk4[2<e#眦T)4WNF7S(1V#ypڤ7rTۨ]iZC!sPll'6~kw" Rg&egkh(=('}.J-{َ:褴&b~QH}Srv-BPEg,J/U:Ab y6 t뺚IɱwnCLaA~s}/v:*2@J3s5{P>h\>IoǦ%[VRO@j}R@iM NOAd%8]Ƭqf(@N+w;f۱\aZzmM[I}yd$YAx3=Ѩ hѫ#D;NGqoV{ͪt.zv!P' ݄&qs$~ шU:Ckdިghe. ܅]%os=kL8i)Ƥ`^1xyIz,?&qXi{oв#?<EmpEa8S⟡) -O?ϋ=s5.qd) ?y 3/`3 a>ƆC4w}xfw*Brڻ1sH/%ah{,@-rL&eYҳ:Ԝ\%%w'j>ٻ". ʍf# ߇d'YޣUȉ}ӆ#[>Kw9JܻDPE۸$Z/Ⱦ1pu *C^| 9܍pAȕMOtЂ[9gԣZV&HsPX# !VRaHAB5Sp Х&IL7 \4Q+6q|K43~.3.w~3iPId.*y/EQ鱚="kC6$"ڙx_" L4O`WM!F9}M-]$u M'A6p)RGF-~oSmtLȄ|+v_xψ0YB]ß8翄/bH#Uo\B#ƂV.#ш!ο7y9Rp<-!-0ƛ'nD|:{6fZyR@Ͱ8qU!FM @|l_޷VRsjuL U4I/>SRLv~%vj,v6O( L V6b{.Ґ#DPiw+w`Na%H`(~q/G;qK4 Fd @U貶=lQ:cW-NjO )z48V_ʴ5TkF{Hq|"]XkHw͙2p%d^qoE-)SAG7xKӧ8pof3!D8/3x(7\\yٕ VwTY~0ANVw MQri*FELIT, {vKWmۡ%wz<$sՐyyp(r]:ʍ.:7#)$E)a U4ڭ3= hp#XuH"m5HbؿVz,*tDlImO] Ԥ|G)) CI J;e iaRsbz2…JHy$=l,2)˼9nn7l;Y&ڥ~U=1'SMI3vʝ:oGg5se/#J0]!ޠ4 g >b_ϲfs{0o};U>K;֕KdwFA{"eA2&lp[}uh~Qz!J^֏}pu`C3ZšױQ_úIR ҝ)v6[]Ir_+ s<* ! O XP BƊMF;O"X/:C-ś/X. j/TFt̳VHFH>H4V&Gf.Z\r#[WMe)P  3w9А'*G14KY-:@bycƈaVϔuxd}߹^gLi3' &958 N=U/h7ޣa!X}P!S[稧z&,UyrX"4^t53/k`~)j~_# Q1$YB;b 粼+agFr#4\`Ieb$uCGAti.p'q>=!\oٱ\_!3Z{#Ѳyղ2a! `ɸݏQ䟋mE~X-#J{]^p1*@ŝZiTU5'<*-~d66UHG쇪: U4fjZ\d?y:rwqz*f@LKIJdF6)8sdMZ6X ,?[:neA*XI!\ŝ43)X;E'N^.0S4+@iS0{0E%(xPиS3m&~ kQ^ny!8nd?+2W472m)hտPh`";jFv_`c5V܊/If)`Z$ګ>n$@A`Jq6k?+@hy5+M TWCjHou"a߶5:d#8!kYV <=ri9 궿؅C8a,Y;<$Gz0Ss =MbxB!NO3HHv|4AԒ$dɎ* ꐁ?c um7fMjrPKOƸɣl {$RTp!.n+Q{U+w]4%|'}obMIzOv>" >I|o?^ڪ"y=ohҪRa=i_~a+wPFj-yz-ߞ: fD3:IGY}N,P-XLҐ#1M&QҝJP4Ȯz2w&dڹ+#b.zWc'0HތX$J4Gae3 e_4B餹 7ҥXc OaR3mg Bj4P-ez`1Yڧ&u8/s&%]OW5U{jfg2!;j( Dμ*IHG%F:s1IU(\(on[΂Q ֥yxf2`f"-G [z"B'u{!!?⒭Y ^NSO?SF\t)3 d'sҘƤb.Z,@[Wr-1zu{&JzxzQK*ڝפ L@ 0~vq{_Cccy"D12drV "?`'Քu^9V#WY"6ˡ&uSowYkxL!cPvŅE~CE̿G "c~^s.VL @wTђטŖ.-?i5䙥uTێ34PpA(}|:2DJ>Sy ֕k]-GsB—m;e∝P~dtOp EyV2Iѫ1%Dv@%aw.6c5<Wk HAݨ]F`v$%Y`U.sm}1jt< JfaN<6 DR11NL*q,"\-.8o5gH/֕hq8A ʙu|aEZώT$ʒݎ6-k}Dk ー/S!ybl6Qeܑt"gԿb3 ihmMMmz_CUq ,bӳHxV\DLae{A[(6(ӈBҗQ/uPqS53YomWe"Ŵ3.SvjcwGNu@T=Xs^#tXʁ:?ܥ Fy:m~QyyX" }$UEqR_MIpP ]O8& 57d-@=Ԏ]J2Ba-Ӛ `{JrDbcAʎ< [W_7 M 7r؝VI3:90E}xf!74u=aRjBU0 XB \,xJN/g"תI7 X}; W)]ZP9Ɠ գ>RL-(2-AX˜2jijpk1idc"x coq0Q=W ^<4SX( q?eG CaB ^6 MaGe^#qHO=fCr\BvL e8`HΕGm_>׶)BJ(+k g_~ fښ!xYc;Ǚ !&[zl};TUz.5:2*Mf֯z0;=m ?2lR P d l ⾭ >5:ͦR?|/>rGC]@UqZtNst% EXR8=Dʝ!* 㱀3ێKx#& hllgKwiF UK<. &kgtW/#9%Ibٓ[C&C|ꬔ9OzaEvE?r[ (o4cF`l:eyM_RzP ' d,4_P <ɦp >HT9$%40 5xp>$BϲU0D_+$T@sQ.~zVnH*Ϲˢj_hTĔͣ䑲;<&>0(vP$UL?ﻕTTjJfjd%~ttwe>n ׁ 3P-qzJV|s.z'Dz*PUɲ:wK078~몊XQ.,eD8 ̓C} QQG% qՠQ.FVfvy*䋒ȧe+ m,7wW>a`s|mZƃ-G,&@$}kaù@xdj  'y\-"ԴARШ<_Ճ iH(>L}ȼ~SXB8P1=O]'IJpzag̃J 0 f~0l7s ("4yi$O!}D+~9ѺDe v!lkmĎh }aדX ֪XY.\itKrXPGzl oFj"c%V$um?Mf9hGQfSAH]DH 8g{)Cbw'h7Cgnw/T#8F]s7_CStMU7#௥SjjM>'xJr8B$Zڡpt YNuwsfIpxy!Y7n7_F%=/V(6E !65[_S=&F^ PG#.U."D4\7b2ahRzm4sct"{QQ3dveM[wT|},{⢬zi1W=е7V=mC_NnDO &p0./tR3\ny3atPh]ԡC57$QJҙ1USN;ښXE(-E:֐C,Sg G)5@xȠxlj_SX7WC"Lwy+sV 8q_O pQWsl6 z]XnLpA.Q}T#UO}h03(r[׎qN" SȅrœWhȼ@Ąǃע^n7Z,OeHB'eza/SGH£ EgqyZplW&. Cd'v i^ĕf"@ W6(M`gݰVumiְXᅯk|5PvX X uR%-hAKeVO D+FBEyKz*# / \j2 :aKEo ݇lZtP / 㟶Jy@fRx+$cZZUyq|ʱC-#/Qn~޹ŧJ(X~$,35Kqr:7^`7t~Q35ebx@u8_4J:M?&koҔkizNiɀdO̫J\<~Zڗ 6Aslߒ;eW~]"𢄤zǬ)c^Ѕc4&~tVV*;:wU5n3/A |~m/NpU3E &&л}AD9Uq 3:X\nb_t7pi^4 LF=eѓY= 4H |"ݾߋL+ Q܃rF0,4xҦQOVG^@·p')#YjY0 g0;m'nHgnG̢G"i_u=~bb=_ (lmO,$uqg]`G$55۵p c'ʞ uVڒ5eD^iy`oI4'ZuExAӷevIMK<BDQ=jv?LCvᩐ PbU^1[kse"w}Pd110_FyOR~*dIme/34/#l&hqkpJǶx"Und>/tr\V( ɎBwu3R춚iQWu8b%i؇0y蘿d0>i]qw~Òt)U3C5W6P^,BbPώ{Xu%ʍCj|X wv/HCoQt[[ȷ5S _xu4-:4DfYb(?^- cBKͼl+PNAxE}EHrvcnA}HP^n(5K<=/wʭiI<{§:5ފŖ(4jC\}|N̟#Ui/^2E{khᘘI69pF4iGٍQ1V7=C}KpX0X kg sRv6Qr󜘒i0>D$RnW(de5'=(b% |hq4;'"o)D$%~aSw 7,θ9. /DsEߟ^>ܧ/Km#ɿu@`X&զPtU5k}?A8KWo8.ݞw2Pw}l:ʐ73tte35κ+xt?Ql[z'BKDiXd g~@h ޏDu}˩"(oz6 V+(x #T̡njyfmV]-LIhj&LϤ63󀪽6]#8Xrh]u9`CI NKqmaAPේ034)N_΍т6PKh6II8)M;MvhYi n;D}>Fv/Ot'@9$E( RSRUD6͗TR9}H,޲6Q\#ĸfҟ)CҷtS 4@L/?v{m,^P_Vz.D/ˏ~*>>!-uj'$Z't|Vջ2z4V(:N4"S 3)yXMѕyChċEq=!lpE^\9yS6F{N21Q$9EhJ Re7 ƒ`_ٔ#띅g۬ÛG8{ԛN5=f7$3Ac?_ȞTz!ԥ̼4$*(䣆Ӆ׋Vq~D&TC1TOnk$žܿ.]gݟ<,5W U.rbWXd &ܪP[eusU6 ֟ӁhD7MHt=d@fch+ڸ6|lUr8%׫YZ{\ˉCEh|o@8}gz/Ng0 otjӢ7!>i l,{asЪJQ\zLƥqѕYQm*ls@wڈB^,jfqXPD~lyۖ綍1^ SB7ެsUe~P:5OgpVꟂ6ZOYIn`mO`:Ӛp@wLe AgIߟm ypS'0]IX@€LYϯ/O':ks_ڡ^\.])VNI΀C+&rS>y-nJ-65 o6[Q+*׽"u}WoC0`]kTR[褶#aW8d{A[! 9-V3\1˭5->8Z15lWFbQJL_EOf?yZʗ9dFwh0Os9xQ0Yt}"?~^oTf^cы{eSTB<;ۍ >qwFiO\ӈ!D(x &9ӢV㬍թVC@D:n>(n!DO/kV:$=F0X\ V}̍4pCdo?3i!&e i#;C5C ;]ĺ[_2t+#2x浦LI`g߀C}J`52mc$R1>S8MTRhy%y cf# R /<H  &t+yW9egcf/ ?hXǽ!cP-'1ة%` 6/b#0;%xakFJ.J5PQ1c̹(5Oan[ NF{<"\*N&1 zEtߢpLX a`YkWnR9* 3#}[bftS'VTxgĤ(Dg%mn|vr$IUvd-Ů~/0EXkn)t&`ySx{hWGTs[q׼m9( )x/ á|oQt5a U~QhY]1쁖%&qVc׈5gB;OtݐYvi܃X@PX_87ƍ+!^+i.m!x-!K𙲠+=56DӯiIX|iB WJt_Ū}.X!{1hzk`B b HaK_%H!W}󄥡:K&4~c|ԏaO/V,IqjbӥZb?L"~AIʾ7[ ""UuP`$SMibb>$YhGƤ;n-խ:oeuȶt.\il'bxA]j`=EQ-Z̊Fl?zG.V)Ǽ^jDL }iq_q!Y9JLVy6mJ'vFتlsK& R\+:<#6+SRg7Ӏ.J˼&OX7N!mEDV6>mj7-pȺY~ݛ,Jm(t}J$8 VIK0y4CNxPeݡ{t;[>g.Og~#0d)F9UZ]2ȢUNt%2'u9B`ۼl͊-!*\w2睶 $ׂ"W_"Z4Cل(gFu#urR`{3~I*;<4ԂaKO,Y_}ՁSc}nFĚ޽?Ĝz¿έӺ9Q9zaPaRd(z%ԑ7@U=[[,zv# {]`&0Kj_Q7z<|J^ɑ5۰ɩC5E.ʦU3Z3 'Qtȕc{W}~HM*"-Pu ߀C|BG6Uw̍<[gy}(oəPY$Xx=ƶ8rPO%X[Vf>ڶߞ-:!X?.V`^櫛L+mJVwNCkN`*F(1YњJpIξbC\͈Kr>Cxzm&qv<~, h>fU|Y_N.dtM *0НF_ vh*N<=C9;},=Эe t{yc=vїrpGkoGUcrY} ?^"[XL}$=K8${!;20i Z۪NTGB(X֦[yKg5_}%GnV>\$o_Н $u5|zW ^~m+ܽAtpP"9_W6R^; ;XV##Pu@*Dd!msbk;u1dj4bɐ ,6R/||.=*-G~f[Q$Y?ceD FŅ:cc?6s#dXĆIS 1e>S_/ B8NR񀥋pMk݇ϥ# ]l4T zjyxq:YF#yKNE!_m^IV3'2Xêv,b!r]Vg4^GYɏa-HӸ* ĝ5DWgqe@}dvr~{׍ƚkDߘޝE_?6 Y2MMTxyoIud:g87?QL/x.Q QG;16!zg$?Uѣv ~'yD7DӅ-caV7Q m%l;eo:Re? Wvvn8{}j0tv 3 S۲$5F4kzB6(&EM>U&c^Ņ!l&9pJUrI}綊:}C ;{$ۚي~_P?/svdbOVQ}oӂ4WExiOtpb%.Gݱɲ='=?{=?:%Te@ӝ#OvOoI9^OB Gek@+|P=H7?tƾٖ:8Zcx^ks Jh24²k 䆗 4]jM 3!P meulp=`f)Sr&YA-^ 9XH~&xnvY&BRk07i;Fg!v/If1`tD9Ӵ(U w3%¾Ѿ\SADOv݄;!5?OCe}W9C'ml#e7#Kh2=R!;TΣ-~Ý[io. A^XF!v8k/8E襬: S+I|',w雍Zi<9Jв^?2Ŀ۞B-X2S)V*|,T7 $9Ǐ-*yNHؿohCeG|<H$KfCK& `LhWe<'buja\>Fo| Anf. zBu>N ߪ GM|C яjU~Vj,$sºbUt~'mCmo<~-u>M'[wOh專I[SXYv+􏭀si8%?sH%i9hb'^fqrEmo= 1aj>)(ׯԪfzVU's [x/99?@DqM{p ǜ @oZ2'zdТeB?"3tRJ< hHOb8 vt5Fσ3`zSJ[ٯh%.(:tG&Rڟq4g|6WMHYgP"풍nmfZSiY8Q'cEb9%G"[$z{&D, U]i-ǥάHh }V;QI_S42]|Ok*td5$6'U{lE / k, p aW}^>~}ՍB(!@w ۵jM#>N-).iVؼrKOlOR!6lը;K}~-Jڦ8u"f/1TMv_[QJ\ѱZF- wy1x`)o)s?zLl];:oVe4ix)mvzT/DIFŌ(8XfK8c,\("m~Bb#8dUxhϒ9Lo28Ԣ%ؖe{"*'U>,F4LĒzvvZi,=lyzEOv3_KǁR]Zri-K C^Do'0\sq5(X6p: EP߻$|OT=]g-q]3tw w8i8Lϰ!B,j6@حa7d`Z_J d(BH(,5lF[hm,h9yւH ' ic̃g,3~H&@S!h|Te0HB?Du b37_p8'YƯ@UD'% 5B%aǀ  35m@:K+&$'#4yVJ.qwzg 4/GH[6^G鹭Xw/ <㹗O)-U@"#̣gJ*MFhEC{30 0:`%.` SbtV?c,<֣;!4aPҍW7\_@.a.=;lIJjlb|[2Hk!&n))֝LұhO'Ln yD,og%5(`hiw7ϛz$ZobEzqݴ hGCܜ+WNKT'werM5 2tL;ualȂUnzẘlTUO\Bfs;fp8"T.FE= \q!7ỤdEm VcwE^:n}<ۻ"ҖE ޙ>P=MA.1z[iB(#$%1?ZHdMѪ5-KGќW4î'kXLD">8LS-2Ec;d nK Ze0 ꄌ/5JK=Ip\\Mv`:1PS=pnƘRP6[7ܗh߂Ⱥ#{jWBk/nBVc65.gML]ޘ 0`< iXO*K B{B$ ௡э =aqim_nt^Van' ͛:֚.)vtq>"GH'|*$L).pYryxd[c[>#}~W ?m4arUC}0~%߭tFGK̷ 0dNܛU}cϐ Vv1F/?򀸏Hc%U_w@lN/Z`@}]>Q|oEgPXLLV[UXi(~S=i[xNp)z~)CkrO$S}nW]j):΁u#ɒnm-*o^ ΟtY0BQb'}{l!H+^(컡81WQBlҙjX<˗]Vt&KX~v8;#%F)Ԅ"ڦVӃ2_7L:m % ,$R2l !~*g:VdLLݓ{!˿^"?:Pyr$A #Y(W$j 9{RsWTRkx9q]<3c-^vrHL0(V%|u8 ]߱*{,/?s'MC)7/΁IeW;\{;5F(%F/2 s}D%C9!>gٿwYnytX!(u(R![vqWGij4mX_a]bXF.baoj9ujLҋcmِvIk#f@/FX' V[Bkt^.HT6!‰)/ Lh3UC*fʾ஀5fU|jM`ީQ?dE ҂Dؾ0,~ ːBwU3c*sDYs]qr0ULHv>9;7k7+k"@fdb_ĸɯ|wbʹ@ ֔A5ITn 6k`2QxDlܠcYA կGP$?TI< ms:ԙOR>" !_lcۋzGe+J`v3d}듷SY9;2qx[y u@vK$i5Ȣ]`n:N[uwj)E8 "2 |@(!Boł^F֯\%ɚz ,2?з|FXeG>H~h6hҪj=!"13ϭ M5nK(5&L~?PxKA+F5G~b35JlEof>'wy5c^5-⋁[w6%Rt8B.8J)$bo _:ee: ;yiI^=R"B97/Gf~*1oӞpj Rͧ&+=_N4Kx{E& +Ӎ 1G9C.'&Ѵ0BU3[^oc"V%@ +;K`d1w <%9GFlt#VRR{uL!%%j`ZXLo}s('/6&țqKRgV\cd⻼ ]{ӽW]]@.Kay}1 '% /*4ૢ"a!#1 º*8K"F&5=l 4-aȅ<-$'8s;V^Kꞩ"h2SdNRe#465`}v/H9+qWg/BhWo;)ʥcϲ$g`pO1Fp|8(\t^4!G9~Paۙ%IPzbev"03Cb\ւ4& G;voX&[ِ+5})d":Z " @|] y4V>4{ҵLnS=*zjvg,'u~:W\rA8x\Q` bnT k!ү+W92X2YчnǠw>a苙ҷ6? axtK%C %2Ae~ }ui<|RHʬy7vbNO 1-l zZB@'ec6@#3erh"~hpMl tu0KTॏYa0,oNTq_+' #H<%m2$Vji]UU]+ [3}ػC0wXVޒYl>:+Ydss'P8݊!zFEƪ/wXeTlۇtD^BL aPz"DKPM纉훼ѮG3GBSv4pTD X)rBjl-vV^GU+cY'kґL1?afQIV/-l"z<j#櫽?qZ4IsYK:<eKTG0 9ߒ}97dJA1Koɓ +ȡlxrҶAPF;ewnQc[xȭp!Cf"W7ROJp^iq\ȟ/+hy3N8 b}fƵ])hal[G!)\ ZxUz).Jf1D&Z6JOZ0muOyZXBg%t>g鳰ݢFB]hsSSX!VցϤ%4MI~Q陣h䚖}Now`MP1T#S;wV2`J:q֘BuG,z$o ~;Tݽ?n.Xi :P8F#ѩfyү!Ra=Bm0ljذZJDW}uۮ^zx5qY}oYHȿT`~׍P5OӺX"B*՞F@su\EٱI= g`,N6Nf^v *f;z$qda{W]pavi""XI #yZ ۪p)흢S'K7bǔG;OhPSNMmu28 \!1GU{qjm<\t6jf7~dG˘ﻀr=$:[~fkL3S(DI@j}ts[G^?}*>(ı._U"'k 3GOE#bW"!wxx8]Ѳ*ƃ$"*'0u(n̉v>U$K\^evز4A3ˍ^ /<<5Uнf|`t%ӓ{pQ[k YMӜ&@0 bmj6%-%ӗ5״MQ胅%2&d,_~$EU譆Ƈ鹫t] 6ޤKW]{K[cV \StBcDZ6u5p8s.LnE$ly^#Bufmǘ1fx\rhzn*vϋ7/ݾ,69ݒoBCr* L̸N }¬,/lb___o>Vό~&=B^jNX@j8BQ$.ߪL@}{xE7A:i L-GHFjKj63`  Pc!-dѺ=) V5?(l<~ 45z.oٔKDOy8Sѹ/JL(,|kvaWW>hǮzܳtW^]HJ]>IVՈAVqBAPNLI#)a} @Mʘ:*QLO~@E M"iȧ?]4{K?VIoW~J~p[]!γI^lpUYS ѦϕL/j"lmg1k[j&Qed?o$q6ܔkco*.^ פ[,z[eZ}KW %;wEl"6dL:`9h*3q5#ю#ޗv/4y[ ~ 0f(eJ#PFۭQuobCpd Pգz>:%0 S#ۙ<5&;屛&\k nA tۨX+I-een W$8ueݞ ~3?v(&H!آ`͹ppU M}`8TvEUtqlT]6f6L;:y@`,Se>:|k煒7,}jsnaqw&m T3Ku.r^ٹ^4@בL?ґ4] h6`ոwYzʯա/k"6 =,(syTLTc$q)3QaD#j1)v@9J'L܄q$xcut=a4i:Y0~''[NhuSIb*os4kHtPnJzsro?}J0 m;*%*)RLϱ :7=X>)7D  V``r)Qoe Cx"RDEB?%7Rܫ׫) 5KuYn-1o1/ZVRIRvSS~<J2j>\JhĶto[>nÐzP2$.'X)KI6XDg!O7Dx0!K' #x[w|$ n %_#t 兗TU*ݓmui,W@wVyQ`D (66I^5?bkʷNJ%H־{*Rju+ Uy=Mj \qs2,KJz|Deb 촕LRm1[TL-l~6!}nR2>7C-H6ʉB.Β#@aښy8'h-y`_Uv?J_ vl`mN`L0\6 W*Y%O'h'RhpyK~(@gTaq أ=NӓwQ( ڏ) ׎nq^CiRYmH\ @]mا&0vǣogynܹ TOk1}"cFN>5yu[ShwjnčuZ_1oJBPGndN&uG jo I;"[Š7cyN01N[;VΪ;L虔Պi D _b9~1$ $gkVf([M mI37uy4?#vm&yL1HPxNIZdoO \0cO8*Dh P0<#+"'AQjڂz3qbf݁~ZS$PNB6d'q&V.>^- 'Ǥv R9aa`5g\ G.!ɧp -a_8 k%~ L}O)S%76$sOXza֗$Rb~S\(c`xUgLS=eʴ%1"c0Ko&f  ÀN2)E\|ҮmNymh ;T¿Yxpf)s22w\3&|"~ieMr&] z$5=@Ň5),]hw3vFCZ Sڪ5ft0nN{ zH#qN K:x3{7ߣ/2y?u(=gvQW6m/G U#b0rZH1X-?iz |@_/ B ry7agmz6T ł`t) &cEd9608&ް>tSZ[FĦj:PUÆHmo=HJ)I.!A{5UM#7]_^>TDQzEnLtE^F ~F{zEi556>Z5q_ɨBAJtdۆЫ-gnr-C!@0Ϯٍv*5SkAN0Oж2>7n b9y? ӥ1#g"[/Pp '3r5]G Cq(M֓T|xG§_V)9‡^rޫoR8sU crЕ.r-8/? 9>GϐE؞a4ڪ# bN뉖+&I4tIn_6 uv(4亩 >R9jzEjGYiɅп@WUN7+>\Z-ndIJa6`e'Ci`=X%([lƤW¿Qdp'̴QGi͖$~O`{ N ?T{<]N"n/()򰓰i'*~%poNSY겺љXz*@"{,ta~珀@靯KW{aWnWj_]PUw ܺIT-L+<\`z6'=FC?av'6 ME_sZ92̭_.YhrDpdvQsoյ(j< (=|+F$^tЫ93""+CP|F84R[]֎y %qu^9zJ^Olq*ރoaဢ5CYc8\Mڸ\kk6hݴuua5q>6A&h^2t%^d=n;r#) s:vT[DžE{5N%ݫ_\}DDFEqyvZQR,wNBr(SUE ԙ5Vqy}Uw跃8#vNqܾΩv bENH;==C`&CiEH}i(dkx)Uh6G5gu&Ƕ:/M^7ɾZ?Oۇ9%-. /bť\]71Qa;z$ kDix-C laG94=](pmf?|f@!t"`8" I1┾Z+Y!v"WOǏKFھF"@ I{ K]6Ҡ[>&(_TꥯYQW2-XEZB@V)Us_k}(BQejuB#5;CLPK/suy`Gk7sB.7|@[G3b ׵c oA]v#ִ GL: .tUo#5svg~8Vkcٓd@<Ըv]$nC8wY%|Fƍ"C%x` FnR g.H2KÝ9 p,bNJpa8LT62ڝj$ ް}{ݘj7' #`䅊5vSف;)<.1z wqıQzgD╅l#-8%m)o #,܈2A_3A`^ߛ4"S:Vo%{ώ2kXg>r\#);5ab7`_(@3=)Vvk/j ~q뇥x'yw)^a/VtEX?G8*~pUz# _)Eyʽ#YHA@:<M0.( ^z׬6 5LŵGW1Їj7OS GJ{rΎ/~fp~ /H*"KU7&SM!w!褃cE%)3,|Xurԫ\dO5Gl *gg4O(9lj11wG7q,N2l r]jA<{|x Ń,!&36{e˧Çg񎠰uwz \g9>+[c`Q4`fF52aC[wQP&G\w"uGwb񵩫%7z@ru{1 &}`Ԭaxw#:ni#rT:QtCϞѦ F4{@@m5a`ӳ/dBCg\n4Q^(y;Lp$#?OlDMg'xszщ/Nhh{WƟ9/67xV{blk7kyq9 !U8yzө^,{TKo">\H/ʾ_P|/PeM.~$aMe@цވ]b^D8׻@pMSW | 1l xgAJ2riM4:ny نv㍅ LyRqD&Z%__|DkUl0'4܅` BwrefF83lot&r0[N+Q#( Y SGV*;Z70}piW۹Æ{ s 7wyd͠z,_ղI*frb`(GzOaW5zr$e!z$%.k~ְ&3RV@?9qsC{B0A%Yc"k5Ƌa&ݙzuXn]^#3~6``>C0EQibxH9۩/^gi&e0hWqT23T zv 'xdO:,aMXc>&{}{=*dC/M+z|~㵥k}o9oAjTn~eToy}\YIr`d>f҃DG%zj26.|\ו~!dTH16{"zIr.@^ˑb 9?s]-%Ǡ.g9G+_z^T4aUnسɦGՑ{nɢ|d )>3^iI*VYX_ujJ̈/ZC4ťꆚIv̭Ibh:fԽ̤+W'o158x!owqZc$yd_ZaY/۽bG8% [.,ci T&}EAZc~?9\aBt & R9QǷ" bOde?AsQ̽W :ҐKmbbu*eXdϭfb.nmWitԀtHyb Qc1rP2͋.lY>k-~x|h ~:jq Y͉GmK}dhG#U|Yw!IV^Ak}=`˵FjC)tXk5nswϹ'9{;x3=@y|3SIv~b4T7k Vq0Q,1 pidpG椤qk n#O^a6c jT*p”Iܤ~,GC{9bbh[Md qY0Zy &[S|f$l;ԭj(=ɊeV4Ab;ng!tC&*lN$ݐ4Ϣ)C{ ~ZFTp? ײVC>cmsmrP !AwImȃ=B-/LcMu}Jn{3vb[9u2lײH,P7uϵa{(խ>L{ϣŏ/%s5%gv3-lz;Z?֓5ᣍNQvsjVfBDrA&֞mD/P68H߹U7ipJJ2``zTu:q9l1ԜFv(l&KMx>G8/:'p[˕:ȳ.p}bq;Ex4ь! $*8 =#:ć[h !L88CDa>^Bwe֋H<8EJv] ۧ"-.7rr/;S1\R3棱 'O:Use}(L .sl($G9-V {גZf9rJy(?;G@e(Y(X"-U$HE [K :YB-:^dZ~zP|8f|ѷf|_zA2{FFҸxo"RxaͲb5OkC'kej',yit}ӫ2h=l\:20+OK$qʆ̇A<ն]gG}o`K׏7(KчlҶxޡxٙX2G $nrHǀ>M% Aܺ#G_V)TXIc; joM=%7Y azU[6$Gt6"k;v߲lkYg*,1Y(ö ݜ͆o~CL3ForI7T8$"tÙK yx! HZ00FJ/"eE<\ԩҠQvӦ(M2o9 J%[c/;5Ի3xK:~$m;CӞ;81Gx>[ /_KMU1B0pj@!~Z#K1|+bX4m[p8X։>7\zBf ncY*`a;ςT-rLCiׄ@姹T5o>k|C/ڿHz8~ރO_V9|Y~H9!stG<*j&e MW3Pb[[Ytd>B*4(7xCh )#x_z:լu@w_3ez5:أk/΁tCMo -)nBBfg"KlosgsOEjMq BPإO2nDW*j{׍ ^'N UwLȭv?Oޯ wI}kqKz?͍ŃdEHQ˖E;ƖhF_vqJ+@%)땊"/|/w"EC`!;2Ҽ ['QAl[>\ɷİG)ܡ@ϧb=l Rat,dbHo']͂!Ӭ1s*[U^ BzSn46$  gj>mtγ"OӘz¿x1fOcGS9Eci)3"d\[zz2B\- dэ|z<}NA L b(frUreeĩRm 6)8mAqG@h;1j\GIǿ/8bT;{ѳO*6%gkhEn=I~c ';Kd2g;hCgLìUY7W"ɘ2d!xb,b{>"ٝݏHN6{jdLXl~ Thln {ɪSF;K^jAWQːB3}.zFbC[)*DAYqeb 1 3!i2p+@I%ZliOh 'y' 8o Ehp6^ܢw79\nq×sfeX\ǕEJC1Ӄ0x z* .I@Ûu(C46˳p+mEԚehs4b kJКV` ɲ*Z,R>24#iP67L>wxW!T |r=MRM%I~_/Q02ԑ)+!Dˌ 4У/s:M,B/K hGưr9}u q8(g7q4VFdj2Ԑ&t=lP0B"}FBX|B?\f]eWTh[LMoʡVnQQJp ;K̪vQrxL.oU>YMУ mǤvO[ͦx498$/T wXE5>L8F7j oT![zg0@+]J;}BnK1yXHŭƒu2 {Po9/CQU7+V_96P¸veX״.+>*^ʄfZ*X%)SEOx1D:fL?­>Ģ=L|~Â̮!i;%uk8TamXśz(@6wԲh.Z \./7,vz(5-RVEHpy$7$>ɝSX봀$oنi+ys+lEzw=͍iW3fPݠ˻%'|Oc'ڰOIYS /Zl||5EM<~p#sŽQ R7@Axyg;KKЀyg*OegSU Kq9&_'7g(""w^ܷpCL'YݙY U&خcἓh~Q8 t(9CUv}),FLQc OFv92t^βAReJҒ^HK8s)1@yOkd^(tcJʬv@cd YXGqGlGY6iv T>@TDoIWn~^%nD fGh]hoH^CU繘Q%Z%,@1\yԡ.JF>y/=RDkjovvA*Xx{]5t| WjIUSAQѪ }Fh@LEg|ra{nF][$?: 6 xQ ||ŗj)dfCN;vDz".TbxSR[ 1?s=v}1M.JQټYɣu&_ l/$J"nxyR| yֿكP.@ sPIxhC " rE{,"Jam73 vP_.7Z~) <%L(w_E[XbM²?_Aq V$}UQVSm@ы:%*I-4(W<ݗaMgrD'&P7'iJ3ς4x&+!e`X7K,fHu?Q'M[`LsZcI(#/S'_;dQ S3vt}? IJlIqvF8:sg,J2y3il;[W(rpn21tmИ j5#K=Go>](aY`9}Ez|ү(\چAMW91 cϮ2maLo"e%9pN}tY#l "thwӝ&i%R{_aI VȣGډ b6lCODtCdp@Ql(]UB}Nf.>_喫'M zvXF$hnV0`3\&XzWV*  >ƞ~p$id5_5݉N5K6 ;y>SS81u #O$1N{?v༓U V]a;7ZΝĿ/^0l bPK*PҌ]q1f\fvU:0rƤd\8jE*/¿bMF\5v#LU2/hPտYߢ!7Z5q3(ӖX1䡊"WȐқ}^gQ<#-k~B=ոkk+sbk-E%D݄{º-[|) a#V;J#7JNeG~EyM_. ؋ *GLz$s`geWN콂T@!{_5{-P  {cg\'m`X?ۢ+kyCi XU7E#<"N6 ݇(0o;VǸk|l6] xx $?6/<lP81~@R  -rJgJ:a.Hk=\.%nXȍn[+I(lO>iE=,eqA4lr0&-,ij+~:9Fev3 w*s8SK32XA)+dY:Zc<7eR+$&5'?l 37_XƀO-Řd5 yI6Nb1gs"P~Ç Tܲ Ɩ3=)sN*7.*3t|=X7#аa*{{KLqL3E]5ja.u}yY$6WRxg/O𺌏ЍﳫopUC sB[ 8ER9jӷ/לV5az03,/Is`IF:LXɯQ62-~TC|}☟=&ϷOT4L 0p -uZK2H(35I$j~;q:3>{JL*W%YDW P[UM.Xg/:ԂD0)r4Qkk5VY|:G( roE#6п࣎&rО"tSQr0_R,+* *&կ=\=H)␧@_lv" 42o? QuN)i/5/Ll0J?8ARyyNZQ?*ӎ"*ԑxnއ% . 듅T;L6SS%3)?xiə0KS9tp鏯" dӬIh:1L+IG# ү:];Rs-I mqV {uM/'Kk8T-2#KA|.OhJ/>d` X1A ' v=~yI [E Vca@5Dg޿ IBANwc B^a#tNY7ЏݿVk3rx 1hZeI;' 9"'M_δF>"+K9o)Vɋj +݇Q6}Т;>K=7pj zAaͦڅmQC[͚ >/DV:ڱhߒuwIu_ҽBHoC&̝9J[0tͻl2t+Z]vLgx]3\V',XRdb.|LT1\`ijE4Uron^7 Ѫ?QY7VE#DeUVBzX@d"qZ6Ɍoq)Hka.xNjs%@ӥG6ЭO/j 7}!>q4׳bq^/0u<{6Jд_P=`оuS>(oV&A]_N W`z$,({m, Kj!X9˞}9r߼v-XV\"X~\q&W:>L7pJ2T!KK)ZRo3Hc_rF;B|O27Dپ6@;}r="i9Y.q+5{QŅ*>-|HES7FI)KwD*:\X0gҪz wtkUX(:zYGZYZYS^ߔGܥ^4,Caq;Z}WwG@|3V%k:Z225}u$(d4.hYH<j+$O.Kׯssˆl0&x4CTVx<Ϩ$7Ab 09|pP鮊 8~(KV p1z xJ@DWLS)~cU ,}T+L qڲ"X6r8RA _-pFܮόK*DȗzEOޚ"^44xιEێT1FLhʣQxByJow8Xn]e'ۯ}sd# iRTZ ?͢<:K[&gq+NlX/qj7t~!q?`"M 1_{Q&9{5ѷpMu"NNʠ1x8nWdל,meE.2H 6,'±5Y}9G" "#?5U©ȃ!T)10>y.qQɄ&e]@p=@P);8ϝq `p"-c&C+%LgO~剦uy;Ee%宕5_\uG,H=\7(eOţ\wbPA;8ĕAqq|j.Bn^s8,igiuj&7, ;+䗨p1q𩂉+;YO8",4pyBIerM9cpȓ2re|Q8&I(AAW1FYKqn3rQm0r^ޜ#:RږE/jq-Zlھ<ͧ~L].?'J["n̮i !=O풐se-E[6![ +vyF[FشՑTJ[1Pt/"=bF!ŗo{`is/ԫb12C{|wv_s³  ;bYlMAwƓ70Kؤ* ff́b\3$E6P^D /[N|MU#ҰקS@;" (h |A_6o |GcvI23Fq뤟(_4Xft\T,6$U$+HY@Jڸ3YEXPz"yE/jz/ఙ1$FA֣K֝ñYxqZo=E.8N]Y6͠ݞutf&DJцNYzC* @xۘt*!VbBwREPsMJX"ARuv͐@ܱN(&1~Jc배a83+[!QPxo%iHW,\Hu)l!&#ħ6JH1Bj\'j=\[CŮh?Q q->iYOQL>> ǁy~UH ]c%_~OʸZ6ēnz.;өg3XFNXpJ mlKE~7\p]L0lZ4BB{_zMp4ߵ)C؋{%Pg(w17LР`rVH !/m.su:Cv&Λ>z< Me Z.&LD8#m`r~O[vWpzs~h~8=1_l4JN>ŏދ+$%/4{@i2ְ3V~ًbR?lHO\3y):~O."@S:lQ9}j EvcVp?}fGd]pB`9v4 ^!M'N{3}~C1~ o20zLXN&+ǦP_IA!wIv,:R$^ihwpXLoc \ǔeBvW>$ dw΍[#n\Tu$8Dߚۓrl` 66<t0aA)cI:ٚc׹BJEoWz://[wU zQșXfѩ oJ&İ kiyŸ mwgcmu?bI==Q}()aP;;tOi-U4gz,;[i 3P?kQ,O3R9׋Y-1wP|'ar/d^Fӹ\+>}b ma`o3o$㼽ͬ:`b;&w"ck?zfwEP Řŗ )w ZEQpN"列000O/I]= ZZz(PЮ~^2k SOԿa#fCIFWPHbE%pLS.O%+dP}r9bH~i}TD"q}d#̤-,4 L%͵Fqؘ y7Pvc{X58K¶6Ȕ,/_eh@l\FnOX_KPI]Π+7b.٘<^e UӃ;a!Ō+DRÃm|YZan}STH*eb'\>!!G)T9i{iUZe'i]vBE88^~b~]ar,DlW^>f',N\lGm;``:X w+0}Z,S' kFTAI%Lƨ %Qq* ~C-ğ^;#՞/zmWф~Qi젦)4ڙ8N_w3*;A0)VtvR qɃ 3ϧ4$1O -$ʐ'Yaέyqsm̷̅7ftiBityYf5O=Tc~Iu*oJxOϓWp@ WǝT٘W$m^ ?!b@~R.+^sn"=oˈ:0.n0,QC|4T_|֌Bc~0"W(f _?n!WN6@/<^bDQhj'.V F9 ڱ ja}ѡP?eҔp̅&oHvaZjXNAR["ϠjNǂVxNOq|~(grHpֽE_i4A!vj ֣}R]C_~J<,#.}ݝE`Hׇ-bÏC=5('WB1( 'q쌃4r @+|Z6h%?Anmsmp 76_L?,{yp68J+PK#s u3h42N΃4HAHq3 M 9 D [M%JIt"̲UO&(a,S':].`~H؎sY\‘ΦџOd !uhl?0&RȊLx^x+{YeA.ђ\E <:9Dg,P` D HG̚MJ.XlMnNa%r%0xaK}XʘioG(UVYj556m%)(w | ƳLMⱳ ,ߛIfmlce]@O6W5 @ c~)#'t$*ku9'N2R4F/~<쿨 '%)YmMj~uFĹH\"%ԗ+Xkn.3P23SR`OGԠN0]&5-Uu;fWFVSv^#B'Gz 1;W`J,prd  ̳%kԵ*(-̣B/ս,u/baM{OC N&%cS~asA%)n{LC<{QwF>iGP) (##FH1Xx10PVRצRmM kڊZش%;ApgGPxhd0Ԧ #iW*@NXGyspՅ Ԭ{P Gh.F C _ ), awKPhIj{jH"u[")CT'SF۫ 3z44ȭOJ#ؚқud=Ag`Z:2/y'xyo$}?Hm*f[O@a?Ŀ/\lnsWی)Չ(,lCl!{:(%뺙'iQM)/Zd-UtCԏ(6d׿?tE&7.ezaih5>Y2r]"~sBr8t.Tk^-]hc1 &;A~14si zfqAdY3f=ԟM.I߃<̽rGIX0|iʏi1rkH!Zlu:t]I70ݴ 8_zmgN"Xl2Ë35.hZ[ra6RO(ބV wS /"sfK>66 i Zݡ 4F;RԺkTC$)T>\mH[9XR9H I<ϖYC-Ӧ 7"O ZhOܘ.ˊi[ShH=xmT?~OK)%EVfd|V+-gWr;)6 h4!\P$H&3ׯLp2KGMJ/9:>$>}b%ƵCOwB [|սyK rD-$>FS冠;)#A)KxH2m)?6PQ,6 ka95;"[x V7rI#I#Y s.sO(G.C1y׫_0;[3I婂r(_&1_36r|Pgi7ܘg_~b|8\5dC (~$[ LBvdK ʊ,'8mڃ@$I(G͂eQ8Oع9K䃨!dAre|۷m8 <]ʘ^*MUN@3.+2Ő_L`lY7ER}18[giVVZsO!gR| DM,Q_,Z gq$cʵ.H7ETIR?FÅyruąۚ%s6pHo Vgh[IJ:MJg3X P1؍CEX֤lk:~(XG\bɬ.ωQ~%9>Tjv "x#&%`߂ō)|IIjшOz& WЃ2dc Yֺ:#-ny4I*ڢv@d|6?"'e}Y}{{;DjvnBxDW4#s@0>z ^3E:E hq]f K,- D&gvz䴚bL&^ ό 9c!E%Or%]Ys޻}*:oJ};06GV#絺ˢP v= K>@퍁ҿkS%E)+)̋4E ,Nn[RkМ9۱]?C8oASXQ|fDZ깣} U9úy L4i|k >Pz^r|%p_n 4ˊK558r@[匘-r)NE-[ n4YJ&}چwrJ>C@@jN#(BqCu$5ÉDZk&Fy x*Xw@urmEme+Lam+c쳔,#Yb X'S%EDD˭Ќ]5fT'r*R&Iq-, LC7^T%frLITW_E9ķZQabzD~TyBmNgkF t%͓~\JSC[yAgыL\J/W{p/Ȣr?,Ҵ9IukE86gҡ,1a9W+yBޞHjƿ%G w!!ͩd"~:@@ݢ k'H⎳3۬WzO>ŝ1`_Px?UgåyUpB9%JIU igbuvZ( (lZr4lHw]UQYE]&TɁ9]H^"RUz)rxY3 _O>mEعthߖAz$<l9/;^P=ҽ7֬]5#[&4q"J!ߞb8{:Hӱ ?KN@v 2{TtcJ #9`)E`̇teΰ[=~?1 Us>X\;zS^CDEFaC [@ajNGI/[\nwfSDd =Q ]˒K0NOtW!!>b|<|OXߑ]DE4C ɘ*0E1L'J⊈ i|5R2j??3qjN1AFv5'}~[h}WB ˏ\O((qKTÿx ]M@ i#n^LpQpJ%""es6g䈷P@_ި`.坉 `%DaT>NwBGnH"Q$+Q.:8Y!ynض}ehv D4K6< rTɣ!m"\yrIpğ = 3̋¦?Л b_"I٧ QP't]cMTFG K77ۮ2쪋u*WiR70LnhbzUm Jl@z\9:w$(>FjP 0#M#׵\ i)#b Nߔ[kjկY(. Cz5iJyx(id B4nFn F-^C=F)q[7FHK .;ýҬ1lOhDnXj2 0hH38_ {Cu(!BhWڳ* C$!ٔ𖞶"wo0}'rc+7 G( $1P,|oߗ%z,D>z!@;̒I-}?{<ǏFGewC|Tx~Ʀ/1d@P"iƓ@ʝxL/b(vYfъ3o?D9PfgşE'h.@[,guL]tW"1 CzA?J÷i|C冸p~eR*2~r,r}N~ZQ=}U7هc[x0X@^_/ 5f%@ ?\?UW/8"jGVUiV_jh\ R?C-l[5-{ /m *LV]\gV,~7sDצʥs[/Jj}yGE_(!Ѝn%Ėnʰٱ 2M.lD-t&"\>z4tmAU\ߟ Ϋ~jؗhR9v\H4TJΆh PF>j\x7jF~Ȟ&yq B}7DyR?=lpج=HNK5af32v<7 ]L)}j͠|x oGC3 M^pEW< (S|f+@9w{}׫ȱ]dkӫUYj)qQNdp 5/{ 5g|;IQ(؏RN3Rn :Zs|YH~bwҖF O~/Ci&}|;X:XCяWT^L"Z !`։E_JrrBÜ<l @mۮ&do W o0,CG 4)Z#Y*מf8[o$mDUAk\c̍մd^ّ2EC%Շ|ʀ(#>'_+=J?n:Iqٿ{ P82S՗Y].w,膴(8o;!`w92unȃIIrua9*SH,HFCTM9j9orJ7t/mζtfdȍCq)=jRa7s׆=Ý6H{Y)2Ugid]ģ 9V*̸ La g-&w&NtGp(#ٵ_bm)3Qhg)ލ]3p0j j QK,Rc 5fLZr8׈mNe O_ܰ( /Wz[1n"Z9Gl:5LVG') x@vB 7OQ7o+BtcEƊ1Yn a2 \2}K2z3ΑCЉX]"~RW > iTh_ʭ3+wP+w#68x߮T49qpNO\<$Dx,ؚؒW,aJ"U㖠 x:ь-F8ƭx~9ڴ1f@@zakE7ԩhY@ |ΘrvPy\&k5 ٹ{X:׳evfULB|Q $ ӥQ;bUoѰW-us%Q=e ~>$./E4q 9p|:Qd[2>du|MlQd!d۟#T(9Gwiwji)ZGJwlp ͢ԫUvѯΥ4ǀ3W:<[kYFN>կ97=l r<0aux[h5K8)u=@) ^k3mըEL!8MVE"--kOu"yd۸!p'/| EifpsӌRc; j@g?StI9+EhdչExj =2w zr-qxWYHocx5B&:t"u!'\l #1p+.'k'u+\pqS~]aPZ}p+jBړa^~H3~ )V( 2}HGAyԎux7_҈f:/STV()㔧Mq6 Yܶ[z'ʣCkN)R5~1!?misJ8s KAD6'*rr^HHb"RLoԪ&sCbk0AOY䋭˒MLÿ; ]bLx8&uL DVx83-}(2,#9R]Cq'O)dG6\vHOl'1ӵ\"2i-ͯ$!f _eÖr>0]xNKᨲ☠e[i4|Jq@4.oK0dž2ҡsNe$U1 Ёo#*Z8K IjZ`Eeok޳J>ه^$Xst×B&DIDKOS:J7-V__Fpzھ^{*˵0u:Z,(5ivLT`SLɀ *M}B d-c,`gꁚ\ (442xcOmv)Ez@f1 w0PS@>WWG\J8&ͳj&kQSxÍtm$D#ZW(ۓ~˲Ӗ0T(bV5^z?ykF)\.[lBRިSLT)f,Hr"&0&2Yril!AQ8Y7bG%l䪭_9654=ri*'T|L6kB^@y#}$?b@%W(#kOll3NoyF✏uizxLdY)rb[i IQFmSK f;NQ kD{SPcw0Z`c3J{F_qvܣ ?Ӄ`W ;NY "s T_rB3b$˶W *?Y7ôBWDZ$:TCR:@P.kzPD+fdR! 8&'~OZHq !'ڮr^mmW0a6Ig?5DOYn/9%VP֑V#8BCDx1rk fr AԠcXe6٧3ccyx9DQn(s[<5WWt@3Yj2P H mƽ% i (f^<+lgN8$g_l; EOR#]e?Qz,|Z V7p*0Z7Wen*Sr{myGV'k]TEu .F,ԷÃj2y,f{HFsB'm9iey2^7󳣠c`V5+뗳&;P]/]6Dҝf˵E=cVX>b@ LThXӾ<6.{{[|̆s\:8 O}uUr9BFY4ţIW8h^Å]z8op#ltB7\ hRFBn7;kH?&݋C,t yh0H@zs',#vɋ@DQEX3Nq:HsjRh Q?/F.%ޞ߽jˬWY>aݨ6fiԞE[9!Eu\XAݠA ‡LV'oڸPUֲ`<@noaF7 6zM\)s 3DždL&ۼddRG,̡%F{xz`39$C1G]\{'̈j=N^beuR., 6^Sx*qDž*gkkH0f7hS,zˌΞK5"}𸱈۩]{y,Bw؅gTW *ԞK)k۬ݶn_%L٬ HRh d5|i_ $"9h~hʖtM'Fs@.p˦9?梚\YQ[/=j@Uk|)+m9qݸ_8" [ZPBg~'v=j%C?(vKc鰫/".ۜԘc֚}/9O0o=ئя_.%y&Zxl輻6x;X!'r* H)s_W/)(EX<\A3[Ѱf{xejL6D~,=8طˀX}#dz. ,{X{>9/HԳoЈ݀k?:Cdp#!N6N8Fs9_͐XpFTq.o=c.B[;%:#ҝ4a٢]{MǗv5 ^/3BA -1}@o}yID#F-2J%Ǜj{Fss{SD/$JY<ȭ(挟5H կ6q=gkm)&Ub\KBfž8%s<¤v>d73 |Y\{ԁ1F0aeP͐Z H)jaI*>߃ď|Be.MNH ,-ce`SB,,(Y{4mcSxcgH_] QE|5!NX?+Zŵ޻1.h0R]ZYh|b<'tN`ϘBA! 댧Q0<Z#`c-ŒGjbVX~D `xǓv5,FT ,&<~p>\bho,0LѝZE; ZZa8&"@B>`];hթG'5n3~Tj4؁T<0GC}ixxr*"CſjwrY5c \o tI -_: ~ߍVPҷ?6(c«UCt[C5 ¸jW!F(ycu&Kd:`q된uJ+mt`o+ёR0w;P'#*S'ݕ 1.o\WාqT%QE)2`K-9s'AJL]UtEk9SD#z%ԠfqE}?PĊ.4A&Mۨ^mP+E?szw?A@ܱDźվ^Zh|̳g#G|eXʮio"H4|5W+vYEEږs;<5\R%,<-k99!?ҳx*>VldlI#2{; % oSwGhT.4hCdkjlG{#A|A!JqOe/8?%\2=˽FܨѡDOjq%~ 5įϞ!օgvfKNa&+ &_cv/by*..&$$8O IsiTj˹_ДL>Yd9>uv5vb+uMJ43uݘaugz >N͓]&F╹5U'Rfb Q)aB[kȩWKջu}x"۩a/:5 ZйlH$_C gJHV+;& h] X:P"x6g1=>FuA怒;.0.frb IID sa7b7E:txٸU1SQ-e4Zh^w^ 2b!_';EXjW!}l8Rh> RbLyA<~a7pEƑևCБxfr# Qe &+vM.AUH~M5L(·H /֥l*5O*M$bn/u/IȖ!ϻ8)}xl( %}. 9FXdʪ%i(?Od3OTvg_iIs <;n*G3 P3 I|q0ל,|'o@Gf"v.DIBlwr n XI^r@̊o+&19o~s/}_$"5Ⱥq;tp7T嶍4HdPfiݬbCMnK\;^LLYi'yo!io<v`}K|+ 5:Sr`ׯ$%m0#m7Uxmv47Bhw渗-0RtN#f*@mmS2%*Κ..FCfAj4\ep<;EsʁP[E2CO:ME/)erB`ʿ oTNށ1`O^%ܞ)˵.蛹"-9~~)= (TH[bfE P4Htp{Mε^gE.0|']Hwzx~`mʚmLjh!/vVz_RwTe; wMD63,kkIZs1Y^l&TZ[  2e_v0Y>7UWImM?[!7qmc}%8%J3̤O`c ưpWѮ Pk\8Z@4lh+HI}+zh3!Z~?h8pzq"k6 (`<>"6`|$pU#S54Mzd[n+f< Af X1Pn-nuT:I+z^dudr| MވL:1r}*Úbg+@$X$%/DeYiU5&g5=$,qmQ%S)ePSY% vvH*}e~-V)4D0aݹuƊ5s&ۼQxr7X j?4zlnw{{%x}"az&cQގ]Q ϳi V 7J}/(-l=zz‡ T/WL?fD*mU^<< Ԭᶛh=xڛss-ILsPUMhW2+*ҟ'T9f#_!2m^P$߉>rnxv]E hD㳴kG'hSWܸZ'8Win}T & FWop S~Ld⃛Wp̩\jaG,@k·6|acEB3>M/?&IcUʞ!َHS:=s.=8 Zhz801IH]>#;Ls>#[z ?h_,.[9:E3 zv,vhD4~w%d58ڜ9J7Yo76Phnpߧ%<0lJcH>{}7Rr%T6ax ƹxx2!I:s:;,>t D rn#.HZV%x=1}_^I.s[p谕V\oS]FW"_K^Q{'c_ɯgzԑ" ;uI`鴺C 5fR/>v߸΍9'dZDp)5nty9:AxO 4 8VHKI,PρP6cZNSK& i'܌16g" L}Ndg y[r/T[ˋSJf0 nnS@SbXē)]y8XVZt-XtZbё xw'Z-rp<`*/XQ?kw:.ܕJФQ7ĉjF8|p̡ߌʣ4{| ;v *N| ^) kVgM-<2 `Cx,n3ݲL d^㓿s؃(ȕ|s %s;uܫ9&\nuOhDCSttxr<{8I0$"aD\ djChYMi+Au0CW"5`PSa~7|gJ9T0mmMFZEWNA=.yI(5Rmg^G/IӦr/h^8DlkܰjC.W iʼJ+} DQ;W 5`(E꼤PɁ D]B3PFƽ۰?җnlB[0&e'4$^Ā^Ը'veW*&Vq"sꜞHH$fKMW.l~KE8Jؐ\r2:nTTp VL%|B0LL\}N?Q/k<Ey@@0~rVr3<0c U㸔0Bk&2ΙN~wk[ 8i֚1!T[̗`xȉk Vk,kt z,fNr8qw>{i:R_*hMe:MoD2`ㆤz+ztDsZPU-'K?aR.G2@G31 %ݎmzpٳ{W\ 6^/fz[#Ғ8$lmK.Tr b ~?d3jǤr$ga>݌/!!Q!'׹d H| mD#*>\Pg3}>2D19^1e=w;uO!hfZQhF)soVoRlvPʆttyQjVP#=m3ihZ lFE!AI|zzRJKMzB:})~xtc7fsVzu­H~U|MTWy3b{f̮,ݩ9`a7-{2:R.}a6H+$Tʹj 4(m8_rnV*_ iZB-V6MYȰlADzb%̥e\5+TB(mMuۧQsSyQM]Gɧr- YI-GʻE'mLTvgaa]Fi "kLlᴰ#`cg3[vzyahs?ݒڡ+M_#"ZIwbBj?ugeo4L.NIp?4.aG甏0-Q*DX浲s3xQ?Z\ǃD/;#fDa# TX^ѻ, 롔IEJ}_?͎/ b }6ڊwiDɾN?!¸8 4!bTyOuִ@dy N ]xKYd n^Kߐ/8i\QSoH[r exRv&’-Pk Ci@iυ0LQQwB&£3VZ\`"!YXn؋6-^NXRl$ܬtT-|E=Sg]Z;Pf>_J춎s Ǭ-`ktdM`y7Vxs{g aE w= X=cCjmrڭ>I|}上oM^U"kpFGWݪ:HVS0EhXg8e^}˦>wjmޏ'Bof".+^KH6'pp렻-v\K)$V{p6`H&?ԼMm|e$RN&_݄|9'"zS=;x-ꠞrm,jKLMd0oRX 'Çyѓ7f.UY4< &O~EBJĕߠ +ن]._W|6z[*m!'!l*=u. F WH ~2ZWb坽^R7ch#oir͆3FU`r+0?;5oDR@%x ƙ{? "a Kq硷;8Sl.R1>w?el"ңZEBA̬M)b]&6v[|VvXNb^LdvHBM4QB&խz6<{&Sa^P܍7._r2OL]*tV݃p$AsfRYNkW ZޤRˆW3!hk|%1'LέzEUJr5=!_cQ JY537b=b3oP& b'uSUK ԍn-wѢzr0T 9ؤ5{_YujM9:u8tq̲~G9\`mvKV"}ˉgA Bnt;Ptx9k}A1T)IڊB8h&9N*Tưc]LOݎWwT;2~rDK9B@]Q?HGpx6iGx0"X|tZ;_i\( 6}aWZ *<{JSwAzL-ŀ[ajTgQyqM /tH9="ǍAUb3RәNYa-܎QoUfca!QRo{EEγ-szu`$,}݂;[p 'a͊+m8}^=w Sʁ4t.0u=lR( JAFa$^켋1(/k_3&kX:RSe| "oUQvesC<<%V2,A} u~[>qd?Zn (G-8crnG0;^\ׁ:d) `M2c &bZcIu8iQ@J[*6XE43< sR/ya&L|Ku`0N s9sضvCFicЏ}Ys`mn2Cg`%UlH#䏲@,fZgP[2'uAw\=&h$}A&\$@X8Kwa'yadJDZnW8$ϩ&CS],E5Ĩ# ;1`={%CjC$As=.k -PgE=܇%C<IK}I2{hK;x {~OX^D(n(kɃAt,aL`Uyna;WrN|%*4.Ca?W떠~㼍VQІ6ZŜK5xohlg֝LCt- 0cO$Ls9F@܁w^meՠ;Xxv!-r445#;GJr-ޯ]&+hb'bh:9r 3)rX**S> D5~wpDz .Vա=PK9KxV>CTvo`'1 VKx/V^WЕ$ScY9zV,^"٦Fi922q)lYpA)&no!O0}yh:9spngXa;zጟkiY]vj/ Pv}Ā,`"vAespN=8zV?e-&)їC℡W y]t:{m5rݽ}%MKtQQT l"$ ܼ4g_P/]~}I\\W)jWKiӔl}$S~R ykYZzk{\Y-&ήw/p!I_5HZ:D3]Kelߧڋi1t>?wұHdKoJm4lOY~k3"E$Z(:0BЕ!*/ҰZ%}ۄN' !fZ+@1)6QGwhWf Mښ=]q$ɲYYS:k;5ڄP ηθ)RkJ6ytd5(/=,PkGŒ!D4j(6'}WM$ڋ&|[tgE[77TQWwU/Rlc).IcEUjVʩѱwzlBxfL2a[gi+o>8'|dyac@*f` .2@?#}%8b6g kH9Zr]Z/#Cf:ߝջB7\HodÈaGb F dSeb}eʞ{U\[TS'xTAic, Mrէ>)~Hh;U fYBqWqSIPxivq'vW䍂\&&dÍiݜ3gɆkkx iKN4Iu{ǚ4)Qϛ,իhTe+As@-M$d;|0dϟ912rS}"W=y\a=+,Jx_QW0v~b`̀IuPbfZ. JόU]E]QQj݊T[c08XI"b*ǓkE_P,i}k13cq,Wyo}#?"\ e~hoCG9xd`J)UdDP cUo8|R /@S$wT vv;Z=zI)ﭯtj)9 $rU߅6_Զڍ*9ym:A@o@PPOq'G0j N L u=W~Ag@%+kVsL"O@4c%9m; LZ0:)]v.HTP`'z=H1o٪X}!%>ń~)!58kVڤs%}=c5-[Byl2)d{fo ?wNjX{RD+ˆ o@oa)2-E :1xԇshi8y{҄a |␭c$iȲ6lW(`b-HP ;{5u1TwN Zî#" Q>2s jx.~2FsXb|SZZJ|fK I;(B?J w*;V7#&myE("L^{9t "+hp_`8fO6vL3}wB5,#6i}yΉ0{wJR Qq%$C⛸\IEYUdł'mc-Z^$\=ItP0u:a4 M#4й٨q,xCjbN^|PWl>c`4r /5sDJEzFd2LyL*2B#rv w?zC0hz7ܢAQ~ua$ǓN^'>Z[<.>ZFg.eRtc5g|$(vs|'T`;1md 58ђz9$(+0EЗڟN:eOl20,/B.ߜ w}5&bl.])w#~z,nBGçO0]T-q/|'@M 22DKk>UqU.WNx08:cFhR(}GC c;o_\"7Q8FvާByO }ycHSەcf;oLqe \_}~J='PMIFw_s"𳲐/_:ɏw->l} €q<_fNh HH`a+NhP>і5ж>p]3γorPb /$ޱjB" M1&c?WaRtvb͐x@ 0|c!lA"fn IiudWRzS⻈>Xz-ƔfR*F,ֈFDފ{IŤ |egr$h%FaO覈[dRWbڛɈa`h4>G~ zD+MR= w;/h}EQAX@2n&6,b;f4gYm)`,R"XJ/  6>c|,:v1 LU f߇ N, # LWVҞ, QJw1m< "42 VHoH\)!AuvjwפYYGQVOǙћgP/t(k{|>[h67ЏOgg:pZ)3ovLi{=# aXlR>f܏Ў5_'ikZ W6.t1N=΋51BEobm8 m9Ml*#4]RW CZZi&K$ $7/ƒyP98 Y){!alhҌUH/JQqAc&>eJ(Kȥ&sYC}Si 'i!S&vPS @m$wU>o$#n[P{HXi7܇(^76kwE`,y}wA1-W#D"okXIAav*k-;k}V=i.]T>AABO%~;<9 ̕g,^`ٹZ͜D##mU[/E3p,F̤/6<99`8QUL$H5^ިH{l{.-_w4^ ls$Kݛa7&_[duI*:Y+,_+67iDґ>'( 9juyRhWFe1ضH:S41_V,2|j'lP2c3ck7g8T+fKP?|qr=L°÷:; m-G {W=Ŏ 0\φ9`lY#nO}r#W+ռ֣C i" #>L F*^U}zrk@2sHݍP:rx:IN5r<^$e.njCf|/w4VWu}|mo8^uBPE#?}iSg| jOX:>T$c 7;Nm ph>U ̿dY^LWׯa>6\)qLĐ; /VC@تŠv8"21DཅV[Li[Y]=\߿PS?j]dPxydf.Ei'Y?K\=.4V{&' ~mWX݄Hr7NE兙)KF2aGo@]j*loĭyؚ+t?"h, iP -DTCa!7Km;mVZ{)_Jo:U?֋?bcKN; bמ<'7 |cl]c$8N4Qe&"S 76^vW3nCi0ͩ2PZ@Ӕ\Uq6 =}&ؚKΕ0G*uEpx>Ƨ!V00u{.~jbIw :\ DXf[;E,V!ݭ ]xV~u> €x ǽy/Xyi|8ߐ?j0댫a[W,& 50vM $5xح]>׷'\ 0j9a)"QZ1.x|.݃%!Dp(S, +SВ6LsNow=J?OHĈ`|5[.X2TLRVWHш ~M1~>̦7cZbB , M;;+ﵯ`1۩.wU>}Bh/tF(o9;4ՍMJ g kPA[K`IQ"T~!=T8I ЕǾZ].w5Rc1l>H`5wag@`׮{ܑL~c7ajEbTvڙaAϜ- wa7s5¥Z,"d :pR,WarpO5#~XD7_ʡą{͚GF-:#BK@Zr_FVCtHggKښvsMLʰӔ,ct;~WЋ}k1¥GH-fs#62*>0Da0dTT &{~ѹ7ig_A %|8d |MZdBU{lBus:FWiEjpyUC#qn5P#N:~=^0~C_J?*3ĦNs YGECd,ܬ}aj<&yCՓ|OuVnD;",p 'k.K묇y},V42lN+ 5MԠ dKn M)؊M0dRnotϭQ>2}&R+'"BA@,1.JR4^ B'4#fPkN9|qC.CЅXf&;xdIkjy/甄yV>f/ZZat ӭ7Q¡b:bNW.>a}]x }5 V8U+u$\a oPjryZ׀H8b9g~υh/ߵKW9UP@TX~2G3-WѴ&$k؎V\z}&T5.qmfqX2GUzQpt;YJIHn>!*{}/hη^MGcR^ִ0*Pjs0 5{΋= y Yh :=RM2@xy*X2, K^@HbJ=Zꯅ3Lg_5Ac^^G>*AQ^qD fbkXYaUˇx|x`~2j^$j?aIoܻ(rrFf4v($1Vb7Gt)5iQwqVtg|Kg'tM]z3mX)pjbeޖ$F#y=ղ) z1BR:J]iΎan8AW 踶v}-AuC$&vgDs.bX@KQ NҺ/.b,窽mz-N,6 SsEhۆuK9}E|{;m)zt!oO!vQsiլj%g]>PqE4|2?ޓJA4jZ߱e:)lI \tJ#"P 4Vͭw壤*W~y>kB)\> y; d2{J?9_hC"~[B5P p'ܳu60uRWdoqɇKX S00haGM{FB~Z/Z( tFJwCMw b?4O%{p3O} !7zo"9LSD1ɫ9aMXUGR "3C2 ,ӿhbw#yɳ+kRQn0nRwM⩕9t-2(Gdưk_ݘ2Yo.ֱi;̉W۲C֝|ӱbPY<-*ϑt/a!i9SH1{.Ak6缄̆ƽLr ڔUsd.FsXʱOyv[R/%41;KqpQ4݄6H]A>:$戛m$|Now"u$q㊄2a#DֿZpj@^dۀ(2;XlSvdUpIfnh}!FҠ"~9">'1>~ OYɊBڻbDu0>-kSʓ]9Hhi7w{YꤨcB) -%TȄ>)G &}<{ QЗaU\/I[)jŹw˜2T +}2s/tu_e%MhJܒȊvTOhlM,P>Oy*vr `:dbPϵNpA])<` vn VBACRqGi.o K ED $WddDLe])Uug&f"49:0c;E͸-isj}  Ȧ>٢:AvB=DH f5:<,Ձ;~&,)SMZPb]Ij?)4lO7VͭZ&LYZ3u 샏^F<>ǮNP$Z,HGSO4h!j$m,/~mlH6qiidXX`s7k LKڰY\WwSLc_jb'~`>b 2 kUHޒ0tbi[_ax>T{Mg+ϼpTKҶWb!PP6KDa[﷔]P4i C;y'*A9~ɥ!ξzJ /[>qyU(W/7XbXnׄt&~(WlsƘKDWOnF֩>1nY82ǢaAB]YKWOP$0̘_QaPްn ҵ3k>ӽ u ѶzݔS7F&x,sJzt?0U'iWB>4g=].a}_7;ELI w{k ?1Xsҿ8xZ31n!1KSE^/FUǬIYRa?=#P>+QC]#*Zc򊈢0W屠{;~;`?,O#pPz1f ,뎞k$[RG7xMo>BHhzqee m^QLYjx7NX F}uR&_X#4eV++#mvC̢ahPۅl zzR]t6:APę+x>Rq > ^QﮯQR*^5O@;>E3j=pX 'XQPӫaƙrb$%(->/VT3]ZS p娄ݘ4wNpwV*~J.(3drvC*~Iv7Dkfc{^}  ߥ0lVp/1,Աynm&Ymq .;AjuK6RP :\c%Rq(/"fm m|<2!\!tCN:8O72]P{NJ%!ᙊ3 jGI Q}iX# ,;8nF-l\9;H Z'hXFJZ4T).Fv[ay@KFgH w<Ԥh@Um{7@Zz Yu8H좾 [@\2Ɂ,TR^nf)GܥD$в}P)2DvYں%Q (>g4O}ƄwO,Dl;kn?G;ry%G2wl~MM{,8ID&`ZL)Q39UAW] AG%zgKH*eU)š"±)ίmFyfʸ&D:f6WyG?:oG16ǣ,ja<@h(Cd6ʁ@}+B2*ݝQNM)6C3: q'Y^v䄈")9'>_֗! JwgOXZSiɜ$č.9~HxlLI<)'!]k».M9_] A]C~2CW"~WpS!JxLk%]Q q++T!®22^:/{YηH+Wǩ`,>ţ/-7PH-olW'1̞ߐsnw̻JH/ONsgPD^ կ>ɧk~s. OgC|:gX7͍x6q}AmgX"f~m-?[)kN wb#laU&1rdꢄKlf;g=5P:Ο˩ZguFH\Rvs{*m rAJj!g j)X&^¬=k40 MQy5y ?6zd=u͢ɢh<0[oEJᣠGs ךG|v~LZ~yZfB|)5$\nǹDcxLQJks;uö^N$2Ɂ4=#/GRͱάTm)]Fzm Ic;l΍IfE(Nl@QmYM+S!cu^F-Ouh.WZCwr'_*(86WZ·v[$ `QǍJ`rXLĮA_]G gywPօҼ 8u`DZ0*jn&rb{L $J  xݠw+}+Ugk•]kg%֊M_{m& #Nk}>y՗j2dK>3x:Vș,4ial B@J㿘#!Z )T,3'DBpw Ӹ[ ~{"[icQ)g|#e6暼̄IT"[70>Fϐ [It{8\ӆͅ&0&s]Co/ {.1rߠVP}O3^8~$:h $Tv -ijd 2ۇ Chkؿ4",x#ml`}tfcxukE۠YR,^^0O~ucmP~dbKe)dž>+H`B YLA6{n.D%YS$BqoSh7Uy/u5biZ$QH.!FSN0*͟47y_nS[ wBnp13JAbrFj1babyxe۠eh?1~X-qZ͉o}hnV{b 05G /t#\e#{-֨ 3")jnLQL*"Ľ_⊛.4J2>z)ljF ZIvNOdnHyTH0@=v҉LG+dd>71k?"GV$y!LIh:-JW1:B٧Y4&2ĕnV$ufeSYݣ!܆|yie5ÃqK 2qCeHJy9+Qcʛ%݄ܻX`vE*_;(bn,HEܴ9VlKw ap0?ٗ[:+_z $ڋ ]xđ5q&1!_} MbtĈŖQueFi`[ݼBrBԪr(9vSaƞP]uV™[sK'dᮍ9>2ȟ<ͅ!H2ֱ\*2KDCdn?% Xイi;L7vHJS(.mEZZOcΠđzwT\Rux.4.`gED>χ#hsQ Oqm@a#)98yw\[W`O_;q=뺉&HE Rljr^'`%-ƟSnsLo,|ٓx]sxw#8}^cRWzCi/o7tǟ+%x!~Hi2>G,[͊ `%@IW+u[p'`A~*:(t$BNߍ͢x#͉lnK&IFU Mx*Їĝ8 ϐycF 4; Ĩ~6a[1rȨ& |8Gkx_]^0@NwvaBqD9@q~D|%?x4@~9cATI4 `*4Za8u TT󘙊k$-+Љ !yc# 3EiNhއ[_fKѽQD+\"oWa/o>˟w$3~Imͫ[{v.tllE\S U냾/[HG+5FogAfC_)!А-7ѫ))d/w#Oe <ހ leT? ;9䧵p[ ‚݇9;L !D ,Qiعi'wjpRxעzNݘ< B_!@gqsj5~ڦqZ2yG{L OQ!jޗ.*Gngk\L/ǨtxYԨۥ#vBrNtzÖfqJ=Avi]\ATȨuOhmYQh@K` nHV՜C1a!Q9t5+8 Qv6rHxB(AgQߌ +A6D Iݳ6e!i\Y=C6Iל(T gD[-u_ZaEb-LPcʼIŠL?Fk>SS?rB$B(VTU63X%6seY`70@3npK@('Ou@vAJ܀ta틨'BW?_=(&cJE0y3#,  # EXFl@1z %GiD}cqU͈kU=RV޶2>,ZJg}0 vR+ւ3zq+MzLH'ڶɶzt^ǁB :€Aį"TQ7M4RsTU("~h¡.yrKR8u o8H?3LQ]9Rj}(@)`5'L,eY@)4XjA` A7Q6TןFh~OvqV -PbA[I\)g1J~^Ue)(,v(sYbDjɟӍzɩN^/ˏ&7<-XҠT! si#/$8HXaW^;&&MdoFF^- qd,YJ@ eà)oQt?(,pI; .O&8$vuuKA-քZU_6N? VSkd{M42s|-MK/]̽ՊlV!aihxnal#IK D)5ޚ#fs$o|k^[N.XG cL)pE2vYj ͉Ƨ wJd'3>ڸCkaC-ΝG E|ohwswyFr2xڂK%eߩ,'[zhhsKWr[r jVK"TD /hWabz@LDaıKDsgR(S O~f.^M;}Ϻ2۟WߠۆZp“c"ȋnҟx=dnrدHyNtU6Zj +sz[Ὅ/Lp*E<rVKGIu˶OJϦ'0q+l7_b=)i6YAn yOJSI)jeYYP1$xEG8(OڒڂUP]$^Ϯpd=1օ.(Ǽ1 5ؘaNy~[nSÕZxې0 >I~ǍW%P;mlV$Y+W Մ*L*fJ6: BrD*i )Ȓ zJO8 !gëz | ";u˙.R5!=G~c_[E>[]av$%e@rEm, d=6l'8'_t\floWR{I7FطYa!,#lˋ)f̻\#iM}oxf.U9%}dMc()Be_V~͖G'}m\Zs@;k>zn bLiG$p\nQmb͸ӓ"@q-Ǽ8@_#qKk%J,нKn?qC|zJ \&ULB5كDZP`wsz$ֿpjxYsͮB^=Xe_r<ȇ7ja)T:,M O"&_vibAg9 m'Pg|n7u$c]Fͼ֮[3tN0h@eQؘ\04R6Mim+0wh~fDEE^pٖaoSb!]-*jQu뻙4uډ`||F?Ep'ʴ.$:NPc{ҋr(T٥lp}շWS. *|  4Rp\wى 5DT9j 1˄V3C\g| {⇰IH%X(uܸf\Hͽ.?yFтTUI&w ,U&Va z&Z[Fz!M`சf ׇն^pUQ7j>vbY[D|2ڜJ2UhEPB"@vhD%nyON#WEMK\9) l/i^{ ܵ(_`&x-GTeAo4]T9)Rx&[ F$0s5FۑAb_ > ue;- 1M{)v²`4;,)$N+6ϴ}5P@UdЎ^3RK0\[xRXaՏn2AQya{`vGn^ͫ'BC&%2r0Wh̃H^JI]R 1R }0:1#a݋-h0 WM=s9@)"VUoוwyWs0vn\+ko䶲k7V(b[C0-j[d[4i uŠ3E ΆdWkRQ{ b-y#ԇviu}cn>0gyq!Z^pmmMGYTjd^߿)w/fbTA,_K*U@Bұ/GWᦀNuj1g |w+Id@(_L@:Mu ,03ϙΉmio}g*q<{d}DRgMiZLQ@okJEl}NᑀPP*k & .0l75H5VǵxjS~#yn%K H=R&~S-`P;`ZXq>oq~IFVaP4oL4TCOB m~QIj*j~Q0͒uKMdgaA%:J۰TWj \D*5<%Cw~t>pUacѺ-J%Jج:x~O"O?xB֏i M 0ĪJb+f׌!S9D2^~g 1^K%IP8o9X2֥L?c ny8y$ pR6?'6QRfM,Ey}6y>ŷ=~Y27^)B-+Z85xh% S N qzhi#N0, <ٴb9oY|q)Q_?zuAu%n<#BTIJJ|zw{~g%f7ηaEAr|C&I%oQ Pڬjb6 ~G<ǙyId͛D]DR~]6ߩ?3C88I2n^'a-3pcGY{Ue`?fcмX|V#͚H?MNe>a잜m,X|hKW!%/!aTlW za<=&1RfX BC^? p4PrS41 B`FTneƨ"gJ-陋NL2%OgSǗtSӼGFmj4ip},*# 2 ; ^`/Q{ C~w*L8Ǝ$:ix?ۨ lvFm89w(@*@ gVO}PfyIҋν^o_b#n&avl4X4T ]>Km0OdJ*%* 4\ wzǂ, gƴ$SxEC6ڍU;@}`;р-iJ n!3 ;7rh\jf"{A]pJ.Ze4h* oAڎ׃]|#E^b'35HdT +xtb畮P~tS_&4Mu|TRS@U-ZElO5gh#3nߪc*j5ŠUSiG7mJ)߮E2y,kaԺ Raa/KEGDJl;@Y jAlZr>9gp돟Fp^[C2mf@(X0Kh蛉ZRcX@/IY3*JZ37Mf^׉r3B{tD@./-Nނ8fl|迪 ]"Ce&5 T׶Jvp^ݛ+q4|L}b}7D+$v1IˀPB%RZe !03M HKLߠd?zXp±w.f9L|/cͦ$!we6;oƶ$b҉j َC42̐r yT#e##$R_8`ߪAYo۸ jK' }])L^h?dNf?W s+E8{?K߹<`C)u]8VSh@8b:߸7~՛*( fpsAt)Q#~ Sؒ[8 ciE,{|<EC./ @S0+(ha );ɛ`Ƽ,@s%!UZrrI9'h tVԸ\5 'SGYNTDڀD.S.k^NrY??ǥ3 2lDqd`֦7Έdo׬Cf&t ,h|Ap U"\ޝ%?'q+ /Zwz7r@SyNX푳 HƂq Qܾiԑ["B a8T9 sh#(s1/.y (;O^t.]B|*7\0꽎%] L'qB,WBEd @";8mienQ:ٲkЩbjmrbe ˋL3þWv7~hbB$ E*@o _]"a`{yp?D3-eƔeimʨ:*,9yjӵD4+4,+OGHI>V/(gcx8υQP&CY' tۃ^ ^D;TdUySձ;F-;| asoj%狽T>v]ϤV6#($ KN17 .$/cW,(%xO*KS]aݭ,`?h ޷|_i (jdth$GuNLQ䔩]$fN5@dͻ}Dnbg6:X9 #鮉젩=twj/Ds^Q.BtNGBea_K46W}"wYI#3xJ$#P'/vkr^nvz ˯۩|.Yq4+)Zd_'<hEOCa 6::GRy@Gw(ӷ{Ý饭3!uJ.ę}=OT_Kfs@ !S }1) /Ipjgp9;yUV:ȫ-H TD{`=:hi#6]= 8)fx~m ?>~0T)\ʫ`ެ/pH4bmp^C@Ox UO Q]zTPE^Fޝ㮢 }kZvf[O {Z!brr A(~=imԤ̋~:U"NѭK(:S/[i9r_I}8(i}UeZXGD^sK -x+n4=]BJ'[t6Vmty2i!Ӈ^zq`I[4ONEjg7彞|MS䠀 "5آ8N.~TiA˷lgM{OnbuT7tX8v~Z+ 􂢌}Z쓒Bk:Fh,kQ"c~~݁I Œ5 )Uu}NtOr!vgXHa*vSSGf1,W{Y!yN?g8!6 =[HꜸfXKZ`^ga \=O_ WSF9[T + I2| 9wK ّ & KN78V:\ڇ-imQ80P/6\>!^896|TN0飺to7KH#8V6gu'eTDP#[o.Dfny 89 )7 L.7$Z|+x-Iq@[J]f#'-MyCH H0~* ]-JS;,M B0LXWomjckw>lwDi7J;cpNe6#6PҪ"{u;u3 OIV;1~Oe <@ֆ0"+N([)hh}I=n3;fVe}_[ahEdp #+kh&kIMAgi ]XZE鼖ThIYWs:jShW;ήug!Uvu|sNKaJn%@缢0SDYHǤ/j1z SOwq'X> DW+/UC_"R96&hոdIuY#5_ v 䟬*+9n-0/A8s3-Ѷk/O"ojuQZ=g5*@BPJ?"\Y!zF}s26nb.KM&2NR+"W";)$ l(Suw|ٴU8MD!ɭWJѼ*cxC b~Ʌ(LC2*'HX\};B϶6(tFCvX4ؖzV_ 3OVC1dڷ p떳=G*Iy- ){P,JC̜׻wJBgtw) hllvb*f,,lF3GWi+Fq&!cY_ͻ4#_ὊWčɒO׼f?we5 z7F!^5=STř!i6(Hwp׾X[5R7 h;G"9#Y?jя_IyZN2  ={Q ٵm+ wF]$txMN!VА$]E)D-}ky(8xv*9맬J7N˪n ۠dj0 &E|)݂)6{h.H "儙]:nY>lrt<. b=Y?ATUnnQLK]^W/k^cpɊ[cKPG2GaLr]bNq` {˝ߕחB=_u0nʏ.',Zಭgs!Z.0 u": Ὼ\*[pP`W+c"Jߏm-9-/)]͔b ~F.k Q( 7ݺSP(,oC%4Q]$:eڜ*Q*+/ً7w8GBݹzT1v'+t,g ;Y17j/$,r XFTyF3&*hLH$OIG#a04{% sh(ִo27A,n:z41eG ;Jo-0   MmtZR=/tAR :+vG^/XPY5D@'j6Xuma- ,»c,ȕ|,y9@sYHA]ČYD_b k_Ѽ Eo80hnS+@ 7R&YNJ'Üff WF z#Q@CAL@ØW XF|ki&[ woa^4^:+Kv246`:[E; #c=ZMAI$y]>}H(X&H&߷3F oe,[-jBq]Yd7i>6Q}ye20RlV@<| xs;7aK$ɀ4MУva:mz,UDz݈g'e)EǙ1l0Kzξ߆3A,w6PGoA 2ER %WgRE .x %rjCrz (];Z0۝ 4_y`D%],ƒ×.nZ(i;?і5Ȥc/*U= ^llYpԈ)X@MVsPp)ս8B'=l6NY=gKF]N5-Eɘc3-[Ir6k?ݯ'~'$< @h,db1Ic$158g6@7 (.OexҳJ6{9C93-lWV3IYva)7X{:ԣ{EBdǐxy"^aADx}I-֌v4fH3Bඟ0ױm־/ !خcRXu#G(H~}y^e Ҹ@y4p5I>C[:ՃR$]t(m/NR^1sNB^;ץƔ5ff5,{&yuVsݟp.SV:`g4POݧ8³cj=-3y@۪d5մHNolIfzQgYFA<Y]kboFI Fc5eQұg|; Er4 lم t/s.:A#MO8fo6% MK{ep"]D*|i.J Ŵ2Ӄ2Hޤaetz5=R`l,ץfcLӮJ4vlh˵AkaSh%F͛yzB`|Ҳ53bQVWygI_r7犓``: --/}EЯv 3W*xՏOl4BWaX> -aGڪulặ <ĞpNLxA\hnCR`n0aݟoFMn~3^#PPKANʸ_>@ڼAֽv. !Zwf(?꫓iHHs4Hyz2 9З2~Jg4%;8 ni4N$#s0 Sjh l^~ᵅ#?_^\O1,E'SF.S&q |m.Tk&rE_!yetlwO-1exm&LG{Hs7Ge_Yx̛a,CYY8nډSyS:n#&SVq186(EW 4|CԹav <-4Ŗ֍s_ f4/d/+!00&NWSN݅I?4?Vp2U1IHZf^,{Wx+m7.tt=p_Kqc%^ԅҔ%²:!k4+~#~ĞzZ|h,+犸)S~ njjU 1l֊md Z8װmK CܤIvq0G[E_FA\q?9ʽr\x>ߪ5 zpL_Ӆ]8e8LZwQy]=|TlW+}xzsjTh{LB]Q*Ž;1hF3t(ϵ ?sWV'Pg%5y`72طr栞 bem5!4+Ҧ2fת0CaBIྛa(-"_cUQQF&F9)M ` LO "䱸zv~0, /cGNuh9Vr~ J?vH;9['G^{Z`.g|Gi̐6frPVE+|S EzukH]eXwV֍vghY?"gTMo,|d]o$.x2=Мq-wonX+l. =1l"^:u2A0ܭ4 |V;_eCpSiN '@ew!Y85oav>r<Wƍ$pmW1S2f\{J*R?b݂bMk'*>n0A+@%_ѫt4\G@,az*]Sԝ\|k5:N%ƞyW$ȁƋ R<y[Xqhtf[ߑͩ98VGlJ @]8S~ SowzilPޥ_/Z" jMSǢЩR!0CNM&ξ0xJTlPHO2EzIo6%$)XYvwp[ L;t"&2}bڟMƶGcd߾W6P4W" pk%QU'hPt8_R@|E*Cv2rÇ**"'Ԁ{ z?+0!O(h݄!{Y 5FO۷EXk!-jX~=SlٰuͰ|?4T V7qM$d[.F'8dEwΊx*%.`~jߘ2dY)&'2$4Gv(#xipЭwKt@or'.>SWQ0Zގ}<bZstܱ2u6HbA=-men$1"smθWUD\;8IDҜCզUjRN)gŷ{IB37vC)W%7#R";tk$WJ?Ϲhvđ7-30UuO[TGZޫK\7EV_qP-J"0vmaӦhMeRΤdixyNVlTXS?{ AIm8իs@K*Fҋi0RD9F^*5hu njAUVw RΓot-یGFr˴ eUˡLIm]flF:A,[guŸj3{|e])uH$p]i{&[X@!|id6JfݸC{~2k$.ZT@6zie˻P;vUyN,wdk}{ 8Xј`DM[P>rJvhʇB+'81K0grT5S鱝6Z8ir^qE9=-Y90+xJ #ARr`? @5n! HӶw0@&m)+taIzt10(i6\Y5*6̤#_ [HcXUA aPǵcÆyK*"t}yN33EbnU+xc;ȫ S@tf@v[4бYf*y^aCJIxiQe @8uԩ2Qy4T%Ljkdϵ1;٭ji )J,9w!YU< Ux޿>ۓq#ckY2S1G Q qSǼhrkM;i}͐C{;5Z|W*]0& [CBD:7cpw9&PqQ8ޱBY 6X%{j~ S2)B ԋj3 '_-F_Q\2й˯}&@f>gGKNGHav%棳\E瞦;\)'CKt*6\o u/Ή;e93Iqle|omg˟3:̰Ъy9+>Fmt`ꠈ{ IJ"w+VǛۉfvF?Y:oRm+"aiWRf)+V=j^ZG 1YC,*]YG t .b%7gS2˾w::( `Q<4ї?j.|brj@2ҧ&ʦҥFH, pP]7bۯ{MK`Oknv.>UCc) Y|J2Lar$:^<:V4߃7aencRjn~eߊ'{s r+-C]^hPh捡߸Fzbftsd}ڀKVlrB}5x~*qC{^7em Ÿ+L>a=-kL5fLBl[ TiJ v DfH[IUQp)If (BS(:\ԪuIt 6k',_a@S)`X&Q\dSxnS|;1`V%e~_>ftZrV>EXFM @?vQJ10]Rx5sr=Ѕ;) 1ƵAarsZn@(sI=_&rZlc'eAiْ|Zd%0..cK?JeqC21ejn ]PTjVf߃`/OC$d%S"I_-C ,4'>*z{11!j='ZNx 3D߬V w#h'5N%2 ʿO˯lt>}W ?vL-n%ATrbiӀ6Imrɱ6O^z^L|5Vԕ8ڄxV'mm NQkL~Y'V${~vk¢ޑ V4KIm8}ͅ4zu|f(&UEbxZSԑzmK)+p^Bꀁo:{~f}6 #+[OLjјV!YhBzB+5&[n?DIcY&M 2[2W-OvW=S6/}7c$_]Id,!ԦtJpٽ(&$+F+뵞iM<p),N^m)>+pgG`pz,dD/2mU 6"{~DwS;"Cz#t&iq!:x6DbvTzUt}ˡU֎ |֯7K ZKv'ӗJb6pvf-pMСg?, GH"aD]y2ը@4T2i7(4(z e:C֏Ϥ}Ygrf QJ14(Ĺ[opAEsjXJLպQ4 ҕapR7qka:F>m]AV˧kȌ1:R5,k ӋCş~}Q[ITU\b F)l5NG1G<$-LUƟm3#Us :~ivwo\\/aMm( %8%KS9S?lgKӧ~!_xv Yitġts䒵%:ԫӲ:ga^&$ h䳖kkh\󣊪ΧnHpFEڱQ&-~{"X޳ `T.ԱBRurգ#CIՍgr&bBIu# X;0M9Ǣ[PBKVQo/%t{7 &Sȝ8Dp[!1G!3  :FGz@Z N}Q9.?&7%:jR2[雱TsQZ/Q'&iӈU|Ik%6Zj]EEZ =Rc+Hzs+߷^!֓H8en[l%Dr3Jab8~ܼ>ܽ[1c<x$Τ*HIXӾ'LLx2wE_PLhVVPqt 9\$[ ]<142S|w76l 6Di==\r_ *8Ei6RjgOX  tC\EniW2Wi{t'[7'C >8Ͻp\[ /# ,B@ɮm*䆿QOuy7 V[=%]S4AH㶺^OHw<@JE`ڶ ;_-~~e0W {3\[7J P-+oaF !Y;$)d 0xRlwHw3vv)87Ӛ{SOȠu~5SzXmbg>IBUXi5%K MW|{G|Q^yCwfqG䈫3VZ?رn*~'[jݓ%N!sܺ_ԛ9$Gaŕṭڷ UJs[n|cX B:w^r ^=* Lݝ0֣LՊA.*-|@hdr3RK}0ހT'm&$ZbqΈ#L)4ƙED1 љ% qhPra;^hάzPu(6jg( oIKd WV q}uNgUE_Ui|o&b xN۴ݑb}vޚDȧ(7Yo.mEe/Z{:ad`lM3\ Yѷ8KM# s{ P?tBĆH\ y?ko 846Q5I`t)\Eyw^u)`g7vM7>EE8~D{_brnNJzD$iSG!^]@c$l92'Te-7 [9}`G 0mm~UpL99y^w Zŏc{Ofǁܤ=XdUa.0vaؚ,آ9q1-z]A*J:0Z>!;q> VWΔx'e#~Fg1 !pB}` RS~K 2\OT:@T|'BV tLt+ Ie:)HgDܾF5Oi4&f'z4@怫ztɳ ݩs|/lAӿʀ|,]߇w{kjiq\s~ ݽr"<](g-Ui ʥq)N»u #/tn2Tng0h*4DA܅/ڛi8{}e#|uIofZrǒKjR n! /-U|(HD&z$%1G\#s@ʵA R&5Żk:C@ށ&_uEw.jhAb7Y(-SEt҈ی_ iӶG^0kbB'8Ø?t0i>/Σ  tQ)`,1cbYC^@ۉ: CVF[ЏlR7溺JVpcC`p|&%H{hTmn6Ø but.P }5BqY_0yMBJa٭]UœiTg= 9$t/mJm,gEZg7 jQf[]|SHb O: ܟnh6c@fw##p?de;Gf;H7Z+1x*т˵r">q!~ԭ*. =%)^iJneC7qPY#l]?[羿kBv9&wh#mw̩`1ĤqK5.^y:mȬSjޑQݡLVwǚ,Dl ~=Ro(~K_"6z`C֞,ʊ^;ɛ)o LzYDzsdףȹöNjC`Wd&̌s:=?S\Ò֍=Ǝ i!9hXQz{4|lN\c5 m)+zS4u<4fte,o}Cd^K-MJ_[@>;s W(~qDWUD=,U2>W57 u!xދ\D %`֕wcGA.z8^-f#C.jgLVY;8&uL}K :8=%7H>x4]Au6IsSD:[曱qf4'߈uM2uGv`Jz|;jwB-0 'v ݪnY}UӔG% dʝ}X'v* MC&kIb)]gM/*)yIYH ~}z>#&!@>Me  KcqM˰u \竼I= w1-rB!޷RJ7 82WP5yH3F[] x\~~x&> ocIxbvS"? Y։|KYÄZ]$;m?*btɌCB'IEa10Q7\w6Z"gsqIz?W S~$Ɉ_.O z`n(<:ūΟne|St-W+vZݵ9wI2G)-&Ӎ*^7g^`ļ_!;>,\Zs@D!*D*teG/8fzw {EQ>ti DhZ#ԙWx!ǫU_83`GXyƵgҳgDxg)ZyGbX?$+ :Fj2t i*R<>2zcĐtOΘ#Z\)>)5D XS"IfR;~NQ veߢ5%SM8_wR^yP.5ZYTpPX} *9&"O/~}m(a[z-4kkzj ^k!Q2sɯԏ᥿*yRdw]=P])W2Y)'QdtP^zU M_=*aMAd]6ܩIsOJvTK7⯺1Kv?޿:٩Ԫ5{2$ W~>5I!52 5k%z@|-&I#m_ BW*F2OM7hu+;WEUu~z@GC{S /B%/]tT#hD4K:;hCEނؽ²|ק[e<"MLcJxLxc`G0D64!w?n@IR6؟A':4J7HBB:)H:/kZҼPU+$ӡG\VV]߭SLqEP4]D/rt*u9UqӯQ gK;n iBـVو)ޔbZuh܍I.jQϽZـ!F4[p @]yyB:iet,` XiLt7=XXx9ş=[3/#g2ZIE:ޚ\ ȰhhFyKe A} `7ߎfB9hLqΪ@A1H  KV`{XffCο+}D lݜ[]Ulv.`^g[rC]k29{ޙd(_r4QC}VL=N:0'ȣJ0^f8B|Fa;@{3D:1k-tdyNF8G)Vu Ggt,\zEgMG^)HRuNM?bCtjZqxhf8"'o2g,R7IQ-u%<E] vO[j Y6Ю2:L qOMs%p[i9W7pjV(\XdɛXڐyџ 8;R3]QD*ٕ< \ҳ֥ܼRH8o#| lQ1{ :lKn YFq܊pȃC|gHu^۲Du\?zI@V8lGQS6%]Q*wGU~&ތK#r4xYJCie Ao#8'yl^iSu>=dۯOl-9b.btϼNj(eu K0N+Ƹ" ꃏ_&v#43j3t$m:+H kЯݐrRCBa[T*]Az{$p&Z<@גGAe/%^%BW;)>OdQ^2O,1n9ke%`C" #qgHǶ qaJ9+ثCfBF{.nÚG]bxBU6麑y.wm@ %qw~ ;bǾel̦ ek6b_MRFצJh!pagV􃞿 rj?l1( Aˈ@tjukT`o#6ÞxF 6G.v84 ]:a\ƭj|Rq_p؃4D g#ұ&S&3H :~LL\,݊I̕-Qr0ԳQjRuEJ{ۈ )(֢zW5`$| y45Z H`c[?a;ЗGqԥe#Ly~cHnG_''v4mH-8HmSaw:h((@""&G/(NzO#yZ"A=Jj f1|VG\j$ysֿ?hJvw3{ˀ{ŅWx3`3ZueӻX}NЂr㔌66⢷YLƠ0S6mQ H(ke؆|󶧊[*܋ MSb& mD(!K8a0>}AחE{ѳKD۵L-vqCA?OZq% _Ŷ!nkO"~.v7dƖHVRdZ|cX֬ J;_M&.MAU.6@kr 7Eh՞ v Aa;\(NYmN$_ HjZ:*-ggBnhu2QȾZAӌ#\TEGБfa Њkje 1֮'{@,p][07{5x7 /8cǿjƮZZvU`!b^8.*wɀgk. *WY4@*Usa"ˢK˘գ O/:>JSz?q<O\HI)bUNt@eiUp-17IE"&*Tx%ѰdZc K[܀G$D.,@w ֏* qё?dчaŵ8w 2*гLjYL{?zJ@=';J%f oۀ8>A7yOygh7ixC+HʄC9,  RHzVЀq7]iƪA3Leȹ|4t&O)rBLbeq:W 4AiZsdNx c7DC[WuC|0}Ns7Uax D:@ݍAwRl.[GSov2ɳ ]MT-YE>5Mx^,WF? :26N@HcRŪm%jwށ !}`RK'!bHaZWTFHDU}Jfy +#oni3Xyz[@V S B0&M:`Oc&@rL8s8.2uL Ǻ:޺h&«:.AVU3{"&$}3U; *,HPa@44mTNTI8YxWQ ۺWCwQ-&^R_oCЉ8 %Ydk.pM3WXx7B/~ 0Ҩ~i';^ h w~W歯liN@p(QNF#^N׶O.SrsoDj&CEI!-QS6Dt&}9HSJ= J=ĎB, u$={9)ߴ;7O ]?YQ+pb{VI t{6QI>"s@u-!Kt  O6ҥ[`o^>9g-=DF #]ҍ G\|w>q@ )S;ZWR [}c(KdΙY!1 KJ>gqJC߾rxH $G?;`ުr]8 %s[@I6t.2%`{@91LCU!*> o'H4)y.=(.Sx<5ԇs__2cNDa-%АojvmQڏ5='3j[6$Bo㟑hg=)sr٢ -jm=<ߦ4u:\Lz|2P[T!*X2WV -ɐI.LV5@k<[´#I˜lFyRuCp # ZOow/Fe(e wq;X7~A +5XT(O@\2MEǪ4`[|L$Yiv?5ӻ(^>~/$wVjԽ9Hjr|tu /#^v,8uSczéy[2Jeك3Ck ^yxRsv 6s8a@$I= l̿D+J^aʶ0JBA[.jJ)۾5WE5!f)Kٴ->(;L):ul(`Nw|"zQ01Tɕa $wyC {5͐]_8 0@.y] ,ɉLV<6HՑI$l֗_ N( w+fZ,[xaGy3xq|3ڐBR^~d"c>ԦJgTJg;*fJ&@-)BH:L;*A2-;%4/[Os P47YsZ7=vw}[(Sړr@mZM>DQD(f7$J̓Ga-Lɒ`|4t} EtVn)&~^%vh;s! ǹRPQ&hy7ư~9EUfHD-Sm/.IFYG KC!鍜$oYX"CzZvm}PU[N;p퓉n;- }'bexYb@&/u+ -ranN~㐘ߒpWXj9$GȀn/"fP<[IC5?7Cϥ8]?HEt"X@9;@0ФJL̢/QA_,!<O.d@_|ZdV'/Q|Kw'a7sG1z!ʩhi|y1A<ѡpw3PWe7_=c?߁oo)ia a^!Yw+ҥ\Ā9¿>'/$LZi|BU1}ry蚐ҹȣ +#{L?کE{Q&SAЬ+'nJX#n;$IvNG8jn4xX,UJkrx~(lv|ҏj D~hoX%R%2<C F!q |Ek ~^՛|q&oM$Px:8D#}2zG?\dڦNzSXUBdЎw[*x,xJYS+v8寪pk|Q٬.p5`=w[Aƃ2l&2`W(@ YM(:' cU[:\oǖDP9 X( Bz޼/()[uQfNwE>;$ "pVQ%'΅i; _W? ɧvO(u89p(\ILܤfy,DB˕cO[1מRn),ƇR\H[^o䝒d{O/yJ}ik2<^f~z7#B_b_Q5L8O`]?݀C_rA>ꛅT9^nRYǯB:MV+W!CB&,,u xc+FS=1.se'ېC1⺣'>$/>-Q[SN",u{)aEtE 2)# rt6c;/FGҋaab!727F16A8GU C>^?ğ7bL+@]d_$yEvn nTQ'Bciv[*lLu˹>f"FǥH$j)ӕA[BI nYc/=nh\ !`!yU,9B;MN̝ C0D3]:0ATkӒ)oNAj*Sa0hfs )ĮV%[i"qQ>!oFL/8NU*bA4/4lٚ۔+4 X=fOG ; UD}Z"@:yq\ZMKYKwUrϞN`LFe4}aoۂxIp3:mk5ao2ykn}Ti ky8jqe/ r/w=$03tfT(.$#f< |kO$@,v7gOpk^SRˣ0ީ E*tg,ȁgjϱdpɯ-:(r;׸>f=<"jborM<ċU8=>m [V4#)m.WSuGenOt kvWl-xVC}c5Jn"9,K4f׆I iP[1R@7A71Ѳ f\Dr- y@~'6s1~ $t1λ#7CkܹXauW34euWn{%tH/RWkzgd 07$ RQ )Mmmuioj"6 Z#0?y>o^:)EHggb:Eim le;ztk(*c#sO`eg2-='>/9(1o0hC"d3`Mϛijȳ=Y^lM}gZ@ldjӦbyy&@]#hin Ŵ ]O#p~2FC ^Ds=6(c-2?v3du-֧u5/QB(tُgD ؿ[.XcUe=Eњ+֪C'N'ܹPYv4:VjZ+?yy^NQ᪗6,OzL'T!2y7 wiR@sU ?~i!R #jS5A"eWq2P]>l^l҅T dpW>[exBGP+l(<&-q oP #Jqdm{$MR-_ 6T>2&wub k(j1175^N8Z/yR? @Gg$ ]lDX(ގ }59\vc]G6U "g'0Msؾɼfs>aLFWIȤ95GSl?KU#. zq_'^FyJ5ZD< ,sz\nrLjpToMO[ sc5)MVneD^Ct ~IV )" 2&ߞ v[[D7  sasUL7|Ȁe (U|+!uϖ9I"zb{gUeL/C{ѴZj mH;Ba*"Nx&Ś?_,fG<4quzm]cְ}(غYRwX@B]mE,l&WFͿ(<;p{uLB\\&(5e(䒣,^jgRpiOԛ:MUF&{DĽ)/<ūrܻ Zl 1nӀ+h8BC{$!>6BHtum!pESrMhjr a߉0mo)ivu (wy KI1Sl7pԌkF!B=I2#/yW|<*/)i `;bŴGH\A4 {hŪEQj_.jLD ETQ=?U0}zc!,Mj_?M,Jo(&ݵorKVQ( 64S-$3%E:+ vք)Na%^Hey#K:v" S/OE{fy0z^X>/fnʼn/j'I1wB \S_C.] #+, [B<2Tz+H=(БxZDgR/ *3ܳ/3p91Իn9Z!qٹm ,d5 eެZXMϷx y`Aۛ= y{3]ҝu_  RDg_$<4R"f4T>׫I4Ŀ;g2eo+lmګhKYp'Io#60kbӌ}#,!KNѣea1Ѣc4j]Cf0xDݒ֍i/5ߍ< N.sG&7{R v{4F${|=Q s1Upu% /#ZIl|"f7DFJ[i+" g2(D.Ys#IKB.365+SYxT܍,ƽM#5з=n ҷ@+<;6W3h(,c#8>|djƇ۞/YO+F艈&Cu@OӑJOvCތ` O>YPLς,C=(ctfjcz0@r++dv,LƔ MA^<NjTUT̋s4DF^ѩ;B2ڿ8T$Oܘf@dkKAGDT)\Ui-V䮯:WTq C@!q,a+P|P,%&bJ={ +Kh( L 6O||2MiMMy0ĢҲe~` p,'{6D$߱J}> 8\h ]$nͦR6VҘN-zv gYr'KEPz{i(D_D=֨c+CVfλ9[jRNOkRC&p۬Ӓkdkes{J3 R#jƊj{!zZHX9&}7U+ڄec |:"JB2!e_9#}qnsd?K!ڹZg) Pܧ5Q7`^A;dm޶Q)¹!tSp:?OL{:U6*Rj0,`SXIJjTt-\ɜ*l}`sc[&L- s4i@,CtvwpmuAa06nI~u#-,Nn^e*QHZ"X02Hw#$қ1|Ϋ0@O2s|, 2}VTඵwSVe8]Tq&B H ywgn"։5{y)fΙ8bFԏ/Aָ-&GO&7ziF eI`V(S5384{D.@n; FX0LX<>C>hw䢼.k^W We^w.,=f N 8jH_QTuf= dȖwEu 4<':eqt O2%Z w0`Ou-j93ညV7+ky9OF #WVhW뎉?x/d6n:\?/w}PwYS N ˟Of,p" p;v,Tro#4~VDo`fdZb]0pih؜TM*C'6V&v>E;a2pe+b6(~d|V"}[$?@3 CFq3Ȟ5鹙Rudݴ'jE,z `nˉB`|^u  oqXԌ- m \*gUݿ3r Y֋hU6Zύv<  `>|s_.݆0n?B֚-9 Ҭ*r~q+H1I#Da 0l~'R uyzҵO~c//WGeX"AMc<%SZ5Үn,:(qbttFr]:.g+)Mm~YNYWQ$3Y@ p GBXԽ7_-|:=1enE/υUBS;{;?Q&7ĸ ZJִFڇe(Fz/#<Oe#_t%ZON40œPwD\ +0ND"Qn>G-/AOU]'p5 T 3?a81CFKuŶ)Q=B4RspU.(PDbm_5BXeh*Kb2S)8Wډu fԝSbZ|ɋcyQrzy(p&hVi&8:/|PrGŞ#M5eed7bÎ-eD=0 q;h329ptdF~Je_yٝw\v LO<`ąN;RFrB6 l|1"{:z ,ܘIMhfzpŒ|jͲNɭ:̽7RR蹻]F],`rJyYV8ד7>g0luJmv%8|shzTHX(P1P١@Hom"ЂQֆy8 ".vav/pqJ3k];b'Kj6t Tؽ(*{<w?ü.T["U]=cxM\P*lgۖC6aC~}$,7Hkz%PR ={Yo_ /ͽ zިM  )nX0Fq,|i{;;-+Tu Cf d0cuE kQrWRYVQop/˧-)vƾOX[KDPKA敦\D b>ynUYM]D(/ ȟh0ڛqˀR~WRfdE7=׺n%̍ﲱ3QoJ'DQ<%DQi|훇8'PSZÅ[n7/ǎG̲p:8pNVQű29`㍟7P)SEQ ɒ|kg8̍gܓ ʆ0mlPZ,*W *GY,C9ѦpG=Nw&',7Jm(ݶR)4z\MʶFXl2w?0U[}S˄4dJW.EFuHKUq:Sm!8nR. gFCd2&B{ڼ`ltͭk$>J-/x?G TcgFu ҟOa1:sqW ^f뤦F0-w p#sCrF+a*t4֌]Z$]I`TiwN\֫TY P @dNT@v(m]1 Q#җ l~*mK#D?%B'~kuIߚOR]6?:YEG\E'A2uFG_!"'T*+T(+o#2ȋ,vЃ̉]u~뙛\*[ڤҋl@æS*0Lb u}J6ǃe ch(m[WΫh}R=K oijh0dZ54k=C ` k"[R@?{ ]jq}T'pr-Lչj ?2k4^n;O ~ҰV2MCކ;h3bTHZ0e_ӛl0al{b1)> dږRjl:7۱/~i% ͆ Ll ^GȲ/5_K؏t eOq+%kڅ}@oIÔ ]+Vår.r9.مsNȡ=a{ZgX+{7zZ Ki.X8/&N.@Ipf\|x!lR0Q6ѹA<׌ -n,R+h LhfG\Cg&[b䜞b|HܨG[RYu'wug P(<ǤM%)YFg mӫۤۙʫ5-;˶Ǧ9 qB;7HKtz2zWԈٟg2*" ԽQW6D-vOf _gHKbLfmw3U$A+%Aђ32;OG<$w<_ ?gV.n4R qHiM^u֘Ի=x񢟊dRMxHVc!ID4DuWrAȻ1DNΚ PQlFq9` :3MeU= 'U"^[fu%nE_lt#W{WaD:H&b9 ~\fק-y~Y;|Kv&ušPxz#YQ7#;$],31GtITd×zMm%GDju_ $:z`jK[~"Zz/d= [Lui}̎MX&9ЗǺ{d Wei[YVOQPJ'~ ̈́4- xCJ[5 >= ,r7 qGMKꛦK2C}ܘZNJਚMKn-O/.#-Bv =RZPɧ'x0 C@g4gA@;,SISʶ] "Gw8U;A1I`Kۼdqu[>Rtx z6}vxU//tu^K$ zcԳ ; MʬdW\yK0)~< $A(˪"je@'OJ&jd+Z^S1bZGV˔ F۰# *Bʶez=2m5[I }>])G=@F[Ut]3@%"t8*<=>G`J|l06(`Bs3PyMy tY޶/a^J<]MeP iR,2jUcis3uNoQRw^yUш ICv#~WJB^li<)(&#W)M㪦O'-CLХ Hw vǰMx;~\;v2,Tqn6> NDvD$Ttnf~p͍GF] ?h#emȿxjbvFY\u)fizV72tce/ەPKM$^@N_."q}хMVB>: x1+f0SDҢ]eu?9ōM4Zī4J1f>f'885@ ɷa$?&z/ K7Y 5_]EFLO ط~gcobC{^KxAPc]ݗJ堔~0"ODG h kg,_D=a<'^y&L`ZodO6=xŇЉg.[Zq2^KC\b'LRuAF?#2z&-d }A\8ƪą#GsZΦG ƿ2"Ls]';6'_YHO~1޾g]sGqŜ>K"&m^79/ mWUGk 4jM\ӈ^YwSRs5-heոZ^BZ^ &>|2|m*uz5UpTSKe`df侒 E9W~MFx0y]6 I K#8$ir|@G",4)BFJY_t:)5cJ͐ߗ{Zg@ɢmd1rJoO {滼v~|M g1JFp0},InXy@*uIi+/&}_X>HklyFW$0R] @G!c9:t+f>IE`X9)rn;L0@qv:ɮ5@U9ހ[ݗ5bgO;g5Zw&O }Ӟ/Ɔ x&Tvڍ_TIO}ByR҂f?uyck$gaF3喝N1ef ^*Ew$=Yguߵ"ՙAu4FRz9./Lzm/r$k{SٰGRl:C):z9>d?Ovy )N̥mjSu-tbx^yN Dya̰ #vazWb5l/-+P+209]:c]QX#1fᗔ]%e]$> {|Ɛ^vv!b9؏bi qn@~c$<(qT[|vSd9NwxT zGbDK9f#C\أA<: hH9_"~2+S~7~003T3C? F0RBaf'&ѨSLN_aLmcg 7̿ghwiBB8hRCUhCeh,`zo?Z*x{#GN4u6!^:0P20k==Fl ={ sQڶW+|aieq#S.L!X/bvG|+" SR+usL_܇w4C݁ʍvJ_a#S@1 SdoQ*lRʤOpx4P)BbJID9w\v>]a8'*%m_:F 'wۏX1;у=+~Q@R#SE♪僋YS0>I|wқOCle:"n6NFB3,hGr2}k*dsiݺ1Q>@hyyS 3TPt@+7Kd_)*6eSSAWcޛ1 ")䒠^x+T(87#=$jҧ ]3?wwۊh,#ﭓ! c%Jo >y?c"|,+,я/a",=o]r.z]oy"Ϝ']gCq{MeSAմ |k=zr*On! $~0*^I@dҁpv(Nyk}ΌḇrFHpHet^< ,t1 ; }md AofwUwirŰEO n?{,+/fy<ݲKWel_բH wBa| C5Uȥ?e\;e~?3 AwxI9 ] BWH, uaFm ozeQsQޱU@X;gPH :7 eE n b݁%йEl8#N~:􄩍\O *!os8"=70Xxp5\!(D`Ẁ\NԻ'xM t0poX.Yru f@e<[5'i~ldl$M[L i#:O?gh5J7r_In_1u/bgʣVv8xiWI_r2$%[5rW8̵B"f;o3$.'FêB"ثk&TRdcW<h錍;҉?/[$uG}FĤA0Ho 9ҠRw&Y?9tBh@ Bxi% e )NsqТHODsט`ݺ5lHXG@o~3  ur?ݭQח$08WsF&q1Z3r CD&S0 ^aU];EVVt\a7hwx=w+&mގe7 `ѽ>;Bi=Xi/wzs%Gl?v7qÔϼ,`GA-f [b'[e,DJ]Ȱd<4nsBmV +>}Ƒ'+ CTM:픅Iuޔ&7,u79@a¯i2nAx(dz.mƘ4VzWdV פ'@CqWCKފD~z7||+])M[t zR4;4W\gLV1e’Xק:N0nÞ04z%J0f替ta@]2ZaX^1 H,1 ϰt.elxo|twN|UIœP*-=+q9%HGtJtCmU8 &v`{o +ک-R=#' Ns#]a/H^$' */.|`:uG sB>{~.sjI4n}Uo8@$n? tx5Kfˮ\h 1݆n>j d<#\p}R}'*U#p:Mu"n%tx?BY^ H~3M\#jYި.+5ۜ?ƕJ'.(ڇߐz2g5Hҗw3fWXL˗{ 1X%dJ': -YLbZ5uVc3 P;!TS@ NwsW;5sHWUgIy(/V@h, bDŽ֭6ՏçBK5, Q1'k & N8xqnw#$eM$K-b"S?aI1jr:;1' 㿌1:CS}tSY2 qFØF8ژ,p{czaI]ñVzl֥iC(d! W Ud]G!O]7yZgI<;xJtr^6&b?X $D6?`woBxEY5P5o]h, }X- e˄tJ֑%dBcqM: RS'#7p$efw[[arʡnhEގxܣ c%ecJ nbߗ6KTg5߄$!4(} f;7O'UJK:S 'TB!uxcfy#?|_}7cur?Yęb.V%B(i*TA5M+L/?4ϼ஁.CiJ#W& y b`^Kί-1?EIfj^^Q}$,Bq_@|9'9yzV5؜*.7LCI: -ZE sј*n׻%ѢT#-u5k ~yU E>3啚g m%%>:[(c5?}ӏnMk Fmxz\IH昩ܪRѽ+T\7d:^јE A^G KtѸiYAXK$PrI̷s ܟn*7){M}V) 6\sZUZO#\D䭴J&~Ҁ́r3}Վ MQU06DW(Շ<_6{,i?e`ݯ"-" @ibD>K-$JXx*/)d\9s-y)0V05=jU3Sk$m<3ucg2'ocx^o["q}nU>S\W;.BX[!9}$N@aS-RU;T|dɥ1 wdZav `6|17 V.ji Zk]{4|FwMTw3u:t,P+~\/?|>),_T3'nCL(QlY$:t{O 1Xm1 aw(sk"^sww4,>"Eiǝ%9=ٔ~Y-nxv @f @T&'yW̶jU*́:5ߤB乨&{RQf}8!_k ZkhFey`UP &Jz}oaSq1p6\!ȮP|"V# _bh24KH5[ʙ&&fIZimB~^b*+VQʝGrZmLDod?֮~ELnǩt8}ٟyQI<Ƒ$${skrT.g #i?TpF~hK/[A ,']K綷%UEf8:DM7%y/s`O~7+R ?SjsG pX(S "M9N9#2L((pWlҫ=r`_m(jfp\t:PvƤ_$PR >,K;;  |@ݭnS1>! P<[Qyp߹Fή-q+7 < _cts.oz7*rV[2<\۲2͛QHe4*yV9>}z(1"9 BuWL7δ,nÅYwidv+ՂLC+v[e +%ACwdɸ$\pw/l/ՏDl湦)KpO*lgd:=X{͕4iϛ5Oj;.iC8݊*աd)'t;l: 5uxDѱN k]E P!Es]V+][5CL:5_:%c^ONF_6]@֞)e@s>.%Y8OWdr֗?kP02+k\ea|ܴۏ(L!¹>܉`Q9MўaZfh8}#"zO2g }aƵmLbWyWG/}p5g}nPӜWhЏGF5fUIPQm`[ub=Xg V?:}:u{%M-ߘ1qpO%?c5Rܯ먯!n+[-J%6Cv) {ϙB&I]T(hH>V3ľ\!wccc^Le) QW/xG|_K-i+4<+HcHd~ر}F,.qay%Oi (&,=Ep5diZ@n9k~AWi_ƽHCR _*?no/ =f7~4.{SAtd̚mu]e}XhXFqfhЀÉ=-% v[V÷.xjK˪ |;ߞՑ"CG_}倝2x0~Dx[I"K'b"BzF7wJ!7)м`˧~|Q6뻧pv|Fw4V=+ȴ0~C.$OjXֲ.I=BQAXIݷ\uF|3[ BWθb5zIY(EX1 !ĈaacGK=Xh+_p*i6 b(f/y:j{Tk5xj+LY?̜O`J?w83 Lϩ$<FgtLZx7 ץ@S[L̍{ I(ZB^ΨO3 vkaDQZUmS}*|D i58ۋibj݇)DA KJ2J9ɴZeYfhH0o@`?Xu$8e (fu8*k 4+}02K 8\XTߦaY~g-%<SDΜH3VȘ̎ȏڻ,%&5 4*5d=~>%-dfPčމr7ˌuzxP1dqIkw& WI^59Yri8&W7R96?/X2u2$^̀*C_.Xb @n&;/nXۨzřDGK$6D;ǠCKů U$QӪ[ǐ<4-GAB,yO =SmVGT:+%])H4Hƨ*-<u_Ӆh0H ղN8۫A4'txd 7fWQns"! l6=MDNY{fs4Ϙk%FfHvp !@Y&: |A\NsI^H,Bgn +~卦|pnR"{Obx6L]gVPel^nMGKQjyM$H#wwgY׫۴yUaIkK),Pq]ƜH,?轢FQ"cZQ3զg*q<'Vxcx]O@Lj!K|QYrh^kYS bGcSȠ[DV(`٦mQڱ`r{f R{wQѾE7 /";2EVׁ?Ph߹leW9049ahDV$CQL$gە%Qz."ԄQuP>ڹR>AuȌbg]^ۓEL0SO| &.ꝘNZ,\K㱦9KgSZ]zNuXq`2(ט:M4q! "/n)yܳ7OM)8v.]G`KHQљ"ɜv ˹Yc4rR5ǰ5M:)Gߨ3*U&螈./>QVJة־ G>YұF1 >rҢwqwzW ۧ] 6c!=1=|sh1UzMh~Xϋ9cyejnyM-+T b3~n}*ʵJuKt57:t0Ɯ;0#M/P`@l":S!d| ? 3u\6x pxJ+և/g.M4 7]!`4>d J֐W-F mr k1 g^&'%PaL+Mߒߦl9۞<plga6יc/TZ|0FJ":xJWL/ڇAutWwV#uR,(ko@|8{D8 |8ˁYyp";ʆ m@wG>!6N*!R@Z mͱ?ĩQK'cĜbtP@6"!CzJ=`@x7!f{{DB5ƹQT#Gc-%J+~ŶgejL\ELZݹR# *Y4<0lG b ,'hcb>)*7nsyjhKΗڟJ ,!/hf8; 'h V($2|<G bw%;.I= pAsGpw=RB^^o˻ nw# =5H68C(=ͷ}P2n P 0 и LJ3CՖk(mY`V A T@wWl+Ԉ2ge374 s;-3d-hb^zybE%r@pE|@ч 26Q0g>`#W楞KC VvP|.u!Pvԫ'5OL.DE͗*عL <ӿ<%czrK0sB#:c.Mkh-1IG+m} ꒉ5 7Z/bo/6 tu@|U,NO};?8Fq|=@he O05tTjw(x[: ^/ϷrE8 {[᲍ALU}P h t8=;hlGH٫hO?iˊA/w@z|k=uR-Z r&eG#\ub`eaR:B!h1 ` HX;%q<-Aˋ>8 u7!eE9|BUt9Gq U:ZM^t]05-*}0}TvG8 )A/ *5E]8~,(R/EtX* :m zgi(`B\]k<-o`SqPxzgXi3(-&Y tEd-=6#I[GP85lv׬ )dp.)Rzfq^Y[ՏNgo-Kv/;_bQqf"6q] oi_V%Gc:y v^@٘b>׼88nG_kSĒr! >CEX [ OfjiK'!4ίs$GnR(hιS M>Eom'c3xOkv QoTE/ᄑ#^U4?fcb&(1kQ<ܱuB  OQ&|7irhj΂W&QT^MU D֞攷.m@⸅ծ+'oL7&O!nbXVK#ŎC6$ `/ڸ͖Eg،dhB[ņsb R~ iEM"pN&O(W]@Tg8BmoM9>B p~mqjUrT_`)W ,ld^}HZC+œ 8+?$tL=NZ ywV8e -9!Z/f}W3@5vBKp6R\p'M EͤQ9o`${|әE&Lm+u64!U8D\"= Yf.0\*=]vnGnd;bb sB(A{~wLr_S1c:p g+cl׵ yR6P{5{*Q5Y Z_-8Nǵ#@ҙ(8QxMSvd*+~0|C!8V6"4GsW͉?鳲5Vb|nXTyvTVig"{CD=%Q~8uV901\Sb /ڝ̅ vkudq|PM3%3j˷aJx4.聑ÍL-ꂾm#.["O\ yzAE<U3[wo|?UE%Q}#ӍjԸJD?랢zh|:"9G;7$2OB#kn~qˁԛv\]V61m_NII4L_ڽ7>ft- I[pآCbbR*["?Tk=wfHzū ōި`{1=t\Y{ jڂRiYq0CeдE7L|7{ZNA3\ʉI&>a,ʋWO&=&' R?א(07fWHZa4Pd0vuI4yh:\1.3FK$NcOu.D(pW;r 'd/oWP nA0}߀C*9|̔gyω%'| ++zPxB(7QaigAR(gNVM"&AavD{;OΨc9fj!\j,=g Nrsd,A T!鐞 1>UV q3(/J}ENe"FfY*PI dʭOa3#o 4o3 :UiLPFžƌP.k?'3ƎՁTHu"Ȅ m)anjNT vLZ0 [BCȔ%gYRji&0љ3&t!^ْ;(:˫tCR9 R^?!X'揝`&w!h7t:Xt{"~:q;@Y/(巠YMKvrX̵^ۚ7 aMr`X( yIRsx4ؚ,s3GaIb $: 9g"~)Ii>)lS:?Q|֖)~:׷p2>Cቃջ;€718d#CF>c^{x џ]،HV0Y r-Lu4qkW)C^"1HhyBN 2&o\r(Zk5N45?^uOj[۸@50վMJ[Dd!Ίgy}b?ڣ /1eXQ'wU9֑5:H#wCTi#@RZeq0:wrL+0qr 8K/,Ik7 Y3 B1 :`bHnU|XSp$v䰟UZ \jN9bm`cK UJЦd3˿c]}`03?OD&"3b]#&FrmǼ-jQhQ1fi&?';&X=HUK8JYMNljqb) wvK5ho<{= ?#bu*+̃쾨L/*ݙJPώӼZ*ؕZ{ 4zBG>Cw p(j XyU6_:Cl h5[QVb<6}XNW;rs}q?VǷ.^,oXP R/e G=Ü0&}\MݷCux3d|Z.[82SMhгJ[ h8«m Zf.3"p"? ; L%*l2|-b%1/!vX/Km][ OQ%kd`n0ddQVeU%P^2Y(Ksɣ(dB $vz'vXR ME{f[A A T<]Dѐ/x=\ G]X~{cZNSncPT_Y4vD;f~>dJp9)W:Ysz5|"gNaXWJY&`=N0ᖤd.;yz'A Q q M❭'ɥoS`Sf(ĜZH{I3ˢ8SJ`EbN]H!yDA|X vAVئrao WV$G8XUP H+Ls%нh!GT #Jm#Q>hfΜL44](%|U,TԨVԁiDTǤ֝Yt_Vâ˰0s+|i70]˙Ĕ1[/i?wD${/oA.6ẙȮoPSR4lH[?S.ž)~bCSHh%.fQQG)"dO4VJhK*1qcK7`aߢ(+9;k}M`wA[QgsLV)irbӀНHT)%V~X/Jyj2:Er,u?YZJ[ny$$66 HGęhE~e*#tm@?bURherk3֋'5}y˴ |hSGIJ1)yE6kW8E^O㮁x1SUY3b+Uؘt3$kt3X^b(m?n=+1UnJ>oDK?J9vKUxۋ4 w9?;iZ(ĈQŠ),G ggSYKRk< }GVeTg݃W@bfRb'f @P&`saC"p1hQĻ►oDr/M b"jX͂UR{p,E{n"ԶrZneAőڂޝ|7qrgzQ7#`,l[Vͤd|rPڢ'Qn}77M CgE _3FZa O>8ϥㆴhBhAgaC%`fM>~tt-u p5WU \F򎿘*TQ@4A\Dͷ)*QwZ,Ps`Q%\⶧ F4!K j4|nK" $ KZOG PPF_6T[;QxLjpǼĜpNd^=2:EMɧU+(KklZ^~ ̋HxON)1**p}';[{dP#Eo>Ftx1_{?hF[3 'q< oBQ1ټ@Yx"V0%-c pp6ԮFugb31-`υV6b*)z-ONINϳ>@ErK=3SdI pK Ӫ)|;yb/2<_jyRfrk$>mEk 9]瀾maޯsNQ^iԯ2n机Mv,$2aҞ>i4=ʕlt֛Ru( #ާn 7.\V\33_)B۝"vbb*2pdŝ|YiΞ,tE%]i'˥@"'nV7XO `mܐL\G jS+o Pă4KUȞ!uUx~%Y |q\& 9v+mű君]s%9@ʍ@;zj@$gY18UK4;2.BSƓ޳P@a0G;\J36-g--Gf}N~3P_QӢm/IZ-ͭEfK-)H;O 4x%fu5э 2TKEeJE!Al7w.}wRs,OD"x⠏~NӓJ;||̰$H;qESrlxhp?SD^/9YxHbbf4X(^vC@vvQ ["d68Lxw"y( ȤEΚ65v_a;!j{doѻ+0MncUFS Щv? ŢpwQS$]Wՙjn&-ZbtLjq);jܔS2PZqjjG8n-Ùe|@Ƨ/1 =avJ@ÐkB06T&Dv5;zA#G?#J\ Z[PK] 2δ/yss-x1_liŜye2h#jX֝U\oJ1w5QGDͶn&>nS_VE{JؗGڭ lgHFާtx gL0x `]aMt:PDyo֟݁XDq,R'P:xBŦ"mWݍu(~˓yPc{'B<9F~s^Ǐ;/MYDKsq<֖JFEl}@I va_%9EUۘM =4\?.E>ÌH`w,n#\؃)JM2gK:G`mThŻ( v` škp1PEۢtƽ7Ji߸9XOb^/)ws$^Se*?.R,< j&28<&6w\m0űƥC*2nOlbȼ 8ꯃ!_$>܄(<H.Е!T6f':9V+#@Ňt6ɪc=068;3IJ4,2v›Qn^e03̉N ;M6t'Z%CŤ/P!InȋSSEo. R/?b4ƒ?m5XoT2AHsN ?ˉ"|RGXvZUI'©zpǰ)~oK\e8Z@kvh(oΰߋӘE )yLؽ S'3kg1I2J*nz갼pa"h²Xq6(X3Z?1k BY(r8C4 1R!E/|͇&jބ,fiRQѦ'GT86]D蜀P{O{fn{c]T5aNؽسهCfGɺ!UX|>únm59T@?)}eEkV@c|c9 DӬT;!)[p~nEJPl߭C`Z!,O|EITR>d)dYUP^ծ 9jT[>Cy,Ywۻĵy7V-x ?.(Xm:Ҿ4?* H@FN-!vsFKщ! rECSnzzMm[ɮWpR'zIVP)2*nHKT֕fmCop=7B v1Ka7|gū}`Z1p[{fͭU rb;v>79Msf_Ħ^ vǘZWFJpaRC&ny.ʻ}G\? P%m{>b%Y<Λ) 9)m α@i ߟwYw\2b|pfxv2j9ܿeؠmÆQuemc%j@^vң ;n#rن6(Hq@BP]Js>%%X̨5ޒ\}me-lhKefNs&ifV] Lr̿KFOR9=oA3l庚]-EU ~hRR^K#kG҈ x9IlhfX՟ atP݉ 2gN1!lIr?g;[Qo=E;)18mew/3}%wk&jh8蒈S2 ӛkU6miVa@Mr'Khʺav9i3&7*`bxV;4K0bVUf\x2J`Vѷepc̔ɝw)x_`3 ?M2"' sfl7+QƣՆh E8q?x sbl&x]e3rZlsa1(nS^WT{5ƤIGw?斧}\x7T,c$ {rYWAM Mׇ(/>ғ9[B$%tiػk N5F-6Xto53STfMREaT盒iԛp80!(jm2 Atv.\y,Ƹ;YCKFwJFr=jJ|+C**s, Ҕl$C2Sƻi=pÞЕ^I9r^{7IQ*DDv }=Q~EKBe)/)0,!]a̞0ʯdZOkucl( wQF%wQ[SQ<_fU+ Au08zM @B'{7pG"F^ĻJIqgu5fGįZ`j(31!:VT$dV @O㜫(F+儬1|o7NlN6,ۻ anzd-SI&I1"i|[y1;ugz7zPl b\Ք+TT]}8\ -P2nAk׹ҡ * suC4=ׂW'Vuh=A{4?Ab=kX#ōUL]r`}EnJ,b+w@qFA0k3V)%ĭqykU * fQ\I^1,)I焘X~i/]m|nB~[ϋ:.=#fg[Pېg9J9vQ3TpG觼Xb)BNWD > ~΋ei0_CMHR'>~ -8Ou|ДHc6iÅ櫓9ʗTyMgpP+|VOM`PfVпleX!`:|4>R=MTۭk𨓛l0@{4 Z-M3\:CڨU zɘA: ܴ- 3|͆.Qfu{hչ6橴Eziy!"k`X=:4 2+\G뇛8V&GY\U7}ES.m;,DqDhrB>}j*#kbl=wZG Ul|m)#]0!dy̎>;hHY+E(˧qА`(`DtB(;+CWq4N$YFhѿ.DTZiרl܂^)2/}Rͦ2B{I|&4 6{ q?m<.3fƕ]Õ<=,Q;/@S2Zi N_` S۫  S!}O˒2O!>C 'QG[j󀄤FZ:jjTǩk_hʓ8c;7;ɕ]BZð o 4C\_/ቦqf3B Xѡx6!8N=^cL`y?p=|,g/²HRAqBZ~FI4z}<1h$F O~ۙ*0 YFa{"ă$"~ 49 ^Vjt=U//'P0TB9n+Hb& @o,`(1QUCʛ܊!-@ [i̖5yhȷ$ʯMYzoyq,>";~(0p]kKPJbͺ(q!4p&a]8\G?Jg-@Nhf"%eZq٨'%JV4[If,&^xD> &LPֽ0JF V))Aah(Q5l @8gKP ̵@@/Aŗ&Iwg%|fҜև@s.+Gb\LȢ'-E<.]0<OKBװ姑 SbQdqBԀf2d)|,?%gU M (œ r.dJz$(AB<4uFcFB%BBx;0qi2\*rɠgr@W@m(3Ux{:];h<=["CfU%Һy#4%CQz-8~y\;ǠU"T3VHX {\ine :X!M"e y9oo;Y8*C 3"ۅ>z>qXoS=Ĭ 4g3k.9(0n4M;؉_+ņO+*<6;c˱>%ڽqɺ\6F-҅x 2 (P  $m)v3} h n!_"GSxWDJGeǏ rF1h\M(`>k -][ sƏ9jP'vQaaDK(`VCe>&,]ͭiחX+XO_66҄g2HҔVD-yLo ;:XPطU/Yv:cOP~a +)2'=u ^; ^8Vl#2k}ijk1>Fkӛ6ЙSEԳLE1C[v|1ʽJOwaòٮ)kX&?-gnfb+>ұZ >9Om\:RGGh*]& .=^obK7;ptwAz?rDC$IH't_b@_6r);P3\]2Sݦ<3@)7<4QyIV3żk&(?++;詊{?8  1K+y  6¥A(˾COX^>: 3s2V60鹎f\eDtw4|BCT2%"U*;Q&rjS9Yaw("J?%Յ&!SQS0WFDެ{MQrD")І/ T *q6mZzڞIڞN.ĚeDa<<ψZb"X:U^Sب6j,e' ێ^ ' ]((bfa•*F$({F: '  M%0"!Bus١:@zMy>vL |Wi[~b>{ i>#_ EG &WRZEFZ810,2nҝ I3l`;y0Ç~kSYbp& :o5eF?T1YPe nc-ٶu}@H\fC* P=śIj6)^\wC hc) Ra)Ex0q@s/R*ze?N{~NɮcC+ ym0~NtKChJ8wQQْ>y gj+8MX~IN<ǾLQs {p*-4B۩]œxpiiАThw0ԎK~<pY'4T*e]M;͈WPJEhA>v"0eKϸSc5&=be0k6DGdVq#,eD^:=͟Tu=܋yiE{I,Z 0Uag\ϼ,]U-pX_N\.?yDH:U^4?ZJ >Vzb)Sfyyg#eݜ1}9JN 2 p4kҌ >?C!ߏPϹ(8y t7 iP &X _,7EQB(%uꗚG$d)^X#t5#KIbGgmg.7OHh4,%d0z *VlE GA4!+jVOΕSKވeJK&#L]Y׍=5}q5ey9/l;= vJ`86#ƣJB[ !F?bLmS6Qn* rֺM [*=zftL6F&DVӟ/sx#j6ށ!od宑J&96YmM(Byx9h* 0~/"DEN#֥RC-:e]{: iOImS$xXj;Ϳ x~)cK$*ewj*~gg/\(bN踤7Yh4( m}EROB^W;6|g+(l&Ɠ*(:HDBbxo&5 _{$?n#T,/؄MIHؙ*$f`23E9[Q/>:sb-KoDڪG\' cp"t_eb Vh{GQW%VdW<>Os P=SI ̻ˊ%5̽nXkHck{2w(D~}ZDφ )P 6<*k~o;asУ\"$I{x<_o!>:n1F 3Z< xopjXWSҴOwKYAhP }GM9#{rDr,¬c0鷎qj9d{ [>k>h<}{쩙͡.ᬺ7wͲ@=+ct 7A'w oë.&GJR_u2AlQ$k @oب?gan3||!U~auU$ԡ !\`U\㲫ށR*ewRovx|&u<D߀|;'nrLL"f8y"uec-jo]l$'2 7/N M6xH&)N@ ' tVnu-~36LJ-qWmQehJQU0 G ൷ pK:&`}1S+ʅ % \dSnQX[l$53D Ryw_#F[&w%L)W?.[dje ĢRap*[8Ɖ=W62j݈ J{17%FG$,˰B\p*f26ɭb]vl5_ooei=>7f-Yu=Ʃռ7z.+`ϝ5fWsIA§ULH8 c- <YD|X-`P'[ 6{ƐcR=*0R]ۭcr~֭(m %!aK79#N&?űѱKViҦX[zs?-i KOg4xM(ɀE~_F pu0]QNՌI\,QsD_vۚn`Zr拦OGp;h (:g_ >.9Db |r+4yK p:uVaM!@M:("|NBw - {$-ݵ[:?v؉Z  }`!kPjp}~_M^DۧSOqD2 1ÜTWH#;BC _ (̂:\ ǝ9=v,b$]h4E j[r"Z7/KX(`j (YMswpMӃ;_6l0n\uJ@79Ĉ,FKwi^xfz>=.jA-6u$j0Q~FBAآy#&hjl%EcBVk>}c ̖1Z 3;hi^j'EPPlZWCq'P 8" ov<+R ekf Ž/Jh5ؕu!a \c͸s`uMyw!) ޤ$oR5[ cDۄuEeyM$X>5 㧽i@6!y:7A8l;RQu'RSo/#֓<5mypDWwޛ =>`Dۈ!6dw@^7J"l.+\@侵W^ExO  NAjtJZZd. A{8+Ŧ1_.-$LYQz,Ȁ4W1يXxBQO?J mKTGܺbrw' =d}( bR5;{$uD18."v<0 l\"fh(Pu "dg}b:ZiǒIS3 _tO.Sy([~DN]ҨEn<^{CQHtws;Jѝ6O :JmQˋ7_7%hu0pF8FaUqXLg{ E s"]7kMP|5G̔Lq_5mpa] sQGA í`$ Km'l>~'%R4=~Szȼ &Fu(Lߞ5-ꪏHL9f'̩٥"?_㏋QKfAvչP4UicHb7R:6 >.hi=$|7 bѻ" 6*]ɲEެTof1=njtծ=$&װ]hC{Cf20!ՕIJP/Vj[=ncUdߋlO\A.LZ[YS:9@)p@+nCkT/ CF"6fD餲 v>J*{S^ ) ,v+b =(+_pB$TjkY~" vhUf, wSg6eL[IP(ACBR'zW .SF 5=dnkNцe$mo*z^_G!eHu+~)K~u4ۅ%ވ"?iORK~ BV~V'H0u}"Vpp fv @R+c&k`TEMwy 8\ KT@J/ Lw lUmUSC'[E&OmZ~OXf FFT&|Kɲ} ,ٍMibx} fާXt~u2 W?"C%Оl u/OV^BTV&ND~fRd3{]||h|$hLii+$nZ ?Z<䰔Sc03XJ-E{H.Z2z KЏ:_|3yZm8E= cS$'jXǺᬩOuyؽ [ڲGg].!&vu7px4C֧&k陉uH.Sq5o:dh2x*#6cX2 *͛KoH}W{)oGƼ>Cڟϛf?&M_dյ;?1A6bq {TT&=[[Ş@yYNbIqjdQ2L"򼏂H! "]*vzm3s\I7#EܭULCvVu'UN#}뽑7o544g4OVb&ܑ'남P߃X]X+@I'Y;UzNXKleMK|8;4FPv 0@Gߌfy쏍69N~L30vL҄'&YdýDƜcPui.}bJ@V]2HaAK4CG"8<M Sdq"兖(fZ5ǁ4)t ]ʹbj Ƙw{Fʱ-B^5۶!\S$/A6 rmʨ&(?,چ&uCpMTo VĖKm hʦWЫW~M3ņ!=f|T-̦$g H1dSbPRRU.q8e(%K8lPi *\J BE-h,tZXo1M_ئ-Yk!͵y3h,sXs:kv<*(zUuJj3C?AYz9lɁD @5ZebܖY= {AY&f0Y:KڥQ5 /_h'=4!c#&1Ml4u1"͹}. S&C92G> ԑ:-,d+J/S(^$v ;{v@1 \UH<_+/ҺU5!q12xtpDXod^ӼtS6o 7>qY*9F}r㪶Hs6,]gkf# m 5+a3f(g.}.k!lU% B!@K(Q=??9/@S*v J͓Z$ޏA!L5 *%q[xz,]x+'2X 7{=JDƇQ&>-`z}"aK=]DT`=PA]c9jdbElj)soBWycԑ1 kc[߮"")WLqĎE;k.'g|=-w챘Z=_zTRҘV''(nL;P}8703~7}+QQxS6ڻlrxI dU5G4F'ÌT#|il'@UQ'1i&2bdsb\`q[ud]@LyW> $3m7̢ˋK n ]⬶tߦ|yVJ).h1r2 e>mi-ri9z 6/1W?pϳy:SsXmhf~A~p%]3F>jXj,+}%"FA"b{ \jgl4(I%;̹ qg7/ǖkRH!rCSjp8_'DJgmKe,I>*3^觇D$\;dNڱQaoRR#UpKx/cnD{Pje0L{c5Mcvr9~;VBvwoGqp告(y#1T^ʱ=at=SBўu@]Fݛاo(rG69SSзH bCELa$1~6`_@dZ~]lD4K{K^!&ƦqHxyMg(&RqZ$7~孄KF_NΩN<7p7!6GdR inA4H~vQHZ- ZDorԐhTUΰ4ݪ?I5jW '>< v "d>ɑx9ʺNFa˟ةR:i1~÷ךsnCZ`w'4, oA5e:?^;DEб}T(lJ& m[ud%Iv!?gt<,HAFvt bѣ~JtGfl4=XM%kj¡6ykCSq?oCsn?iԘd8zqp]40ly z׿ `WiXv`]]:x!M罵Xv.3&:!E( krm6USY{L`:o W~u3&j%[C($T)nXVwnhl]"5FeIyj-’>KA#`d ŏ&GV,>Nt7kna-#H%^2oqM󽑌{L'^H'p`)m]8Ӻ$&,uׄr57q1?KN@}Pm5˳$PpU!ŚOEI(;"`3B+TPІd^Xv9=n*1b?޻h+ØI R|h%'*:u1љ4Hy6fWlRz]x(NY5P(b7.oYɍa%jQ.tρs%yDKrO'f9UFGdD5b}Y`P7mKp0h|߃ 7WD]^zZ,`{/#Z1iNEus#6yRU:D¾-Jij_l:IQF O[cv <zN)TVwvVƜbW}"s2?qZ&A("˙O0Yԅ{ xz`cf%f|poMyGVBÕ 'd-f{% bM<|V &9. fv!Wg oQX5zfdu:\9 4Á(r f]IqyYd^Ш{uEC p/(:Ene\!,vV-{FJ6=5FoR4h" @L,EDǍ b}g4D{)5Ӑ}ڑk6͌.`puu ׳xEX10f_Qo<=qIJ{zVvX^Y~Z W\@6vX@N D.72y #$IP[820e/ 4G`cKvɵx(BтC/)v.K]#(m;m9#]/΀u[ԄrN"6=X8 \޻{Q-+Ƅ8^ Q:_b"V"҈$rJm܉W^^p0wm! 񡏏B%d}Bgu=M#"ztegiY O'#eXLl%/0/~?(~p ;? ~60K͓6ݏ m(Gzs %f2dPHBCm.'ҞcKMď'woq0_&u)z0WO +,{R2zڢZ9ZzqP0vzE%_GIP,Dv@p>ԍjȡzA3ؾ[-;*/)kK]2YLrU +5x~?fOh[,ǣ:](F 6`ny''{䭣ˌK*`ujC``]uZ6Z5Ce|t tlxqrɬ\VPd*6|1+lNza'瓂!YtAh.٨GG5iGzą6wM&EjQ !Y`PuKn? r(aO7jBz_mM,)cqY\lc7L7zi8XwFnG:]w Q|ϞD4Zn#"Ц%*ƂȲiH ӐBf{6&8p);=\ ⡑|F@(L4 fHYJ'=%\fNf$4jL͆YR<& Y i8IH+<9' $ZNn'X+\]3rrJ+HBLJ`Aqõ*1ᵊyIgVP_T:UDGf/Sxh&mYU`l=}9!0`Dnu$}4= 43FQ"N=8*6B c.OG@iEIANޘtn =q 8! ?a=Un[ wG|3xjYquxW?''@A(qĠ7ڔW\dz"6ñBDv Gј `!Y c[Ǭ3fXkGǐBKt$񰅛 8Tk>2 W@JzD+ҩ U<|xMah.hg^fT>m̚4:{K#*(MT^nyt8U_l:fgjړʨjyoøPnqN`_ٳ-yx JC[Ŏ j wk˓kFqjY#T0JΒ#e`CY|r?bIdag;I+W/I6=80h8 ODD%5v;X{<0%#O, ÀȻM8q!zu &c?6<>$HX'OHg }{,g*E]8!Mk˥ [2H1ޱjs*(a3ո0碕"rq-U#NQ/LA_>6 TCXM\K ۖ) =qጥB盽Fh}<K FR8h_%~7&fNxa2rHf]f HerVSBv,Ty1L Mt/O/v?cNNP7MδFPGIY b puNK{Arچ.3.M/- 4-Kr$îH,]63pZx_`dSu# 6?9 6!=WGb_;iQM*ȵos ] um*V04+Ұ(t)~>+G|ˍ R1,u֝7Q*_-ur#ѩ';H}"&6BFϽٻWpq R? "Ye-v2TlG1SGo'%ğ3a$ئMz !3mMے$(:pF,fŖR&D'!1xq]K3g>֫pt[WJ ?3M]6$:[zlqeU(D Dc[e=ّ6bϑ SCKK\Nlm"2ILcЇGQ6é#`.mRNinݠȥhX `[k=[A1p ޞ2 h 4;΁,`{=BYXɒҦu 'EEܯmo }xX0iGtb#@d*"}ݧ%xAhTxA\Jqt* {"Ȝfg}qѴkNT}& resoEUNN01U<&:KiC^]n`g3LmgM-/b| s3^* ?~iyȽp~}iSSV>xNL#fb3zG )h9Wg(T}[O'kHhkY0 8UȦ^/pEnsi$٪:` b`?HZP(509O1c6ZS~@F"kI$`[l}(@p'_NC8myxxIAs=mUL{vemh9@3lYbpM+]SȻ|39嗝2BMOضpKa~1l M)tłJ *蔹0.gW/+|A\zNT,/洟%0Q}GNnki?# {Yv>UꊭPw# ORƚ詀_n[#i֮jk[%91:ߞTN M҃=V<=%A[Ϙ]6rDAmj}2#9=eo׈ԗg[eF{ڰ+j?Y[^O ,}/- Z8p}nȒqU,z:҄sK;Nᄇccߓvr|ھOE'5Svo3&X{wje@6cى$C/t RB}qT* >ɖ Ż#K^m9C)5ݖw wOvpNMYS [riU 4 Pd6Hf̮!3Xwz*#C1ћAX`UKӶgs"l5 T!b,l BGcvn y=8^c>'d{1%M=MU_sti/*GFcҏ 295q;-Uw߮.#K2lg8E4[Rl@6t6b^ E墓RP0-NC >Ye˧`%]CI Ij#(ݺ:h~ׯ}@QiNd_G~`7PD< _k,^^Q^0kqr9$e~E9#g!Pp-:ٱu T;qj}e|~%WlPUTsXݻ 0 :x݂Ơ@8YK&*!M4OyH~Th`)!7!ڤ2>?aC1)_eVOayv~$y$Hu DžX@^fv#erd]Dl@|#\ŞpOCĹ5w,(Ď_^d1(̍YmspuhW{*xH*Y'V~oJX@MtC)7{eJfW s5fp@}31@Mtۑo1=Ifc3 WEziZ4$ҩ3/n٨ceUt0f [< yۼ[AAv+ъ8K,u}#3vbDsR^cMb_FW%$=w :WcZCEy*dr4i K-֞3,U:bme]h\&6{g;4t {Uleݩ3u^ ѲdLmb7|_F+[1RFnog?M?4|.4e^<BP9zIb{ \.8s`h|2 v1Lq #T v.pd a d`Ls!fckuI]M=;5(@dO;K{A̞AJ<2{h'!H2ngp"8du"9:eO5Ha0C7q UBKwv#?6+y+chc n4)E "ʈ/(7dwYG+Nt.Ou`GGPF?&/cOyHF25d,[@x~ +PwM*$C9-vvpg*o1e`\.YK2M£SPڱ'qHz$΁0bDg"ږύg;oo:Е8zlfBg3xHaV́5BdpeGY 8aDX;XL%E-LTwk,Qx}At a*VvƄ!2)gް= U6Tͣ.R=Bh˚Q]5[wc'QR2b9DGˢ@۹ N(n=t~n%'_q,LWN|hf"d zb(CgK3/?^}"|XƙnΡ(MIRjx# GSgYQBlE ƀpVjBe&i d@ bϟu8o ~ 3Ji,{Dc4ڊLꯎ/d;ŗċ7.);dbtF ;@M>Gu֠cl< kf~q*3佔؀ V%DžlJ fؙgqoSz`3eRbO_VѮy4hoFå/X;,Ἐ f> PW?@H#ZͰؓ,j" 5E<~wXU$g?)p`lLGI;Tϣ`՟K% >(#R;}u.uDAO'(sq%m>Dm<ΈysQpJvSj̈́DE?{٠Oգ-_/N3 #mP{ij&&i-ğ"ER|,` hk5+,+Cug#͖\ݪcklcA8ʊzZ쥯ZC^dU 4}Gim^pzh?xA^}Y͖|g-Ԣ&`j:sk0Fle@ x=SSNmU/){EdҴ^#i+6b{{"' ߍꓯaU`LwZȒBH_?10-YmCfu4RXx W ?M[ܚLȶ6} Y6`#N${8`7CϹ3J4qG_ط 'tcVE~J=P ia;St v2$&~P6\ƩB or[KUi a#rV.*2 B 1A~hb:4kV0*5Nj$>bM$툳k65_$vTKoñ`o1ÿYcp= -yJ.dÿ욻㸷Ȫ%lҥBktтCTCz]QAo E7Rn)|֘ؤy BSjZ]{p2r`;5pT"BT"VC4xPC A Jo^ Ȭ]Lhc[M̡ 2vyq0Uy|>نuNZ,`jG{$Hp{[rC@/16nߊ٧A59*Rvɞǥ=UT"zٻ 4=Pi@aյpHoA/ˀ> _wd{LBP0StϏPjxLASE? eH:_M^d}3W.1zCэQi"0b+ALRF]h2AS2{ rhn{#j8ml1eP ׯj׹)[{:;sQ%at,ۤjq#2TuQ@:K] UXe?oV'm I$EaetSX޴ & O-Oe&4SpCd rJH5E~ڦs exױ3| kv;.S'B ϙxKݙ,C5y4!00u/̜4O#>D營Kw4~'6KzU+}ڈqf|CU}Ǒ6N悀rIfPN&Z/2%Ayhcү)H7{J=i[h+rd\'f C}/"^|4 VI.<.v^{5H_n -j!&=Τ_-Ts\ VI|DtXηQ\*TTiI =QlطVP|Ng}IDT,~l7mxJQ" gU,VDf^QkxB(қ~(R1%tN{> gB:W3 ̓%5s*3m.Gdz{VJYD-3#L_!vO Aӯ LώfG.͈ 3Ig@)Ppi^6[d{>|ժvsV;&/6j,Y$b|p9t8]ek63 M-m\nokWmY;g_=G]- I4qKlnxy(',Nkpo_YynۊIfʵշ-Ol*+Ղj νdcvO&9x@߄j)}! =abW`Cu3Yʥq]b" d7څn"ȊjxsJM)b݂ !o/*^ޭNsۉ2K[> a37}#ZyȺJ̃O4}4ޮS ZSPpX 9Cm] KLkB jӡOR5>z&21ЭBuK4<&,r%-w/Op!ANEJQ&Ӎ|I&Z g'|:|]eDvEe.}wzQ39ߜ-CMv|{U\DØ9(Ey/dz{m{#/A֕U_ָ^ ~̲"لx]o+hrd[&[+N~ iYww WKL6Kq,V}%FkR'?_Q }Ww~ tG5;RV`FT[X y M0! h*[%X[}piIO3)D.xbHk~bnYY "6~^BCcuy`م#UPQ̆~/zwNs- O\b"ұZNW7 iKQY%κv'!$B}VԹ^?k-aM\N"iĄk Q!a/x[` HȾɶd,9EKzƮc$66cC"dAA_o4NSQYA.b9#W^jfm=áb+-ZJͥgGS\_Nˍ3 R]v]"} 0-*bC-G=؏; 2Dn4v40hz!SxHk|(0KKs^aB9T]-9udr@n JcoXo`V _D_砉YsT9SBȮO42}ؠeͭsc9J9 z:%BͰ йޒ/ Gh^|YCAgs~Se'g v9h 7<.G{ݷnwtWO=ɟ$ yFuCx qi<-_A59,r7 ٥\KBML,Gniz|">l`HNX2x(#џ/,4uylpɩ X A1̴ g%ng=~U1k-I883ǩ>l$T$P΂Ms $8ou& :m 1t|sk`և ag3G='IقOqv֧C%#& 1d> NLhCxy.Y_~ԟ">ֱ̈ o G)*YICZbg|a7Xn , A%ۡE[jS7tF>D}ØMa6)__O#.v7an 24"ҳSlj$t8YڷƚJv_O|ގ)XO4+Z ]C^!hbϱEkw*ێp6F"_[1UX4Um)PgHN̺9~d!ꜹ3v_6YzҞĻ![: #T Hr4c" fZ0tְ߹n̡D1vOIXf3RͰɿci|#6*괤 hC任㞍6]&$W}32KM+l2;Kaޭ[к` &ƈCw`}=^N5 v$xb|\^&yԇ,~bq§e3#fN S:lӵ]Nl6!F:ζ%v4<=ZzĿw0m ȑˊnEӒ[?,S ȐFJ:AȏK-lؠ!. kj,.8TH>,xbG<#p/E+w~;e}__=7UƖH79ht[ď:RlP>sd-`e.om6j-OASQveX{i%ʃH@UK{ 3ɌFƼm)W?yq^!^wSSVE+.*vm;ekFEP=`[E/eS!!>ʶ1Yƚ`?d@SƗ?O\~Ɛ/;iY\j97 ^VdiѰ jEFIn NG%e&6|!Ī?Zدo0yQ~taجtf8^iʖ~#5+NkLi.R)Bs֢Y2pLX moRj%Lhlc%! CAS7C De Ij']ݥԲl'K1YD-q%J ~s7?>Pu>,omHވF䏛I!K{ QM1g =KcJƫ*o\2&cI,ԝ^##{-ᄍZdped[[0`9x=8W._CNPs"C~c<%j_=1765lZ,;iܒrS#H&?f%e5pr]ǚ4OgpAnH?[aRr\7A?gK:E{I C~[C[I`0='5oD)iNPx2ʸhL[SRTly6di[|/s *6Kivr/\>Xe>.- lrh޷5&_7*{ZM`"9"fo  ^{WBF3-M@Zm=A|S +@lZN5Vك\w!B=KeFc?x]-Mg%Mw>{5Fr{TIu]<ӏy~SF̷Q=yC{.z1ŦL UTD>$3,II'JFA('CKwopyB 4K.ƹ]knV1SخtlO:@`ݝ+rH?ag5-)M95@m.ѵxEM|LN'cvkt;W6 P. 0 ˻_#%>l~2 *Xpϡ$ _Ů-*,mQe$Г&h=y^[] TGݩ@G#ka辈8m-@n~̏#B }H)MOrFi9*Y2wXn^v)""3\%i"mWAjXŅp<"8Ft 7ª[Q* ć\ȝFTzC1B8=vmNG~nƜYmef1{u.+rslT2)e~$]UrQW &?IH3#M5}X`k5آ.5/:6n<ӃD\[3>ְ9n)L֧qJsL4dQ.|08JVbYV[d әr1lpd["FA3xh~l*2XF4r<יǦH%QD%2ek#N;-䎺|8͓ndBh% ᪳Wtcjr-hU%;l42=3c1j iwiQ Ai؀`W%ě߆F8z j,c̸dmia, + ,mAdV3F6~{K_raל'T_zg}Y:TؕبP`܋ F Q5kre5Gj> 596.,c)Jܝ!A-m![Z^loTLPMܻ>fF#v(1RFXait㏻*U>JuKе;Qɇ~Bpr![4<#ࣳ܁8aI 8Q tQ'%s0E}wS'R}y8? (\ύ28kXbz ~82jC el{f^?tPKI"=[KsoT,YLpF?))rꐌ69A+ Z- I~M{ٺ˧և$]h'6(jCݱX$1(uGW;|Pو=Sq/n'X"3< F\Iϧأurc?:2e&Bp*~Fu&Ga,g}deSfbtMpyi-9T 9;c> ;8e$cAG4m- 2P1xtT2;>>OT4%J< Ãn*).bS)޲gq)oؙ|nrvHuDٽ27Td K:%bkFXoeveW󂅈!>L\ÈevԾtW} ,0By\ư)qF@Vë~t5w>/8tଜO3Ɛ{=,؏35u1DLΑ錻;A`4cWM>7@gd76iqg 8#kcl,zr?}:ͧ F5-;D5y98 >ĜŹó'QQzN2}eL%ڹ9}1_N _l[ѿ.tiIY[z`ˍz"3\ָ?>I>_ b!pLLɆޤ ma唤,kVq2#xmHϛAukU'QQhFx۞y\y;qL> JHOnE=![HԞʵ=/'zu x4âV>_,7TkcUv rC!: VN#ɐKdgպ|sQ;,1(XiMB^a R"Љ= p (v2 kۦJF,3HTM)0PcqML hNyT—~'rc%pǻ2lp3^PE--ϫB) ȊĢIT!ZEij3 N,&,/v&U /&+ Sbm+^3L/l a%cN?VņM)ӹ8469FgIA aY/Jیי2@Ѕ^@-v5un%(n$ <=+῞VDl ۞,-N}{C .oi鱖D(ӵ1mA y֌] yD4;!}hxO CD@7mV]c_'g0\F76d&Ay*Nž˶jvNM`N۷^aqwsS$aKϠh':^R=]p^6pBQ χ;-Zk4NU 䃸4^u"C&o[.XQޖ }ivkxQ%BBHOS2,oe sD-KށBqQ\4CIo#W k &{%{Ԡ&J[ߌP7݌o$e{r< LC_6g|ޱqw S#mBU_f%} 8w^0}˟|j؄ t e?MykJu5ӥ6CR@g]"R'Ч|C^Em$6V40=alslT_)QfƬpQnA9Ou YZYOũ9Yo\4uWH&4%>_5ZH"5b-R:V( N톾;(4B$AqشSUg3q6} s|܍?ҳ~:0,)Fٌ]Iθˋ_vn0!>AӾX =e^SEŮ82Ӻ/I'HNP{xx|'/l"Z2y7Ft#U!4}T3eHf^6glIs=COY܏_;3 ?~?B)%_>Eȡ._Zx}tUv-o4y5)gIO/e莆`zu@kDt H%c " ,ϰ6¿Gk ЛKSw]hf}v<90Gm:@c p1#YZ J' ߑw_yDovvsA>Ăc7^fvG[N%XLdmc5_xo0qa@^sZ{<'>%lLʹ@g~EW'zMBgI{EK^IRg7t9IEr_ Qĸ*b5[ sI`ylo| "eFLTJ; Z,v~2+ߊR1XYw7 ͠G7tw>c߰ޅw<-Жfv ir_٘} [;F*CƃԒwg&7QShkYī zنe#8dd?tԘ<0PFy8'S?hlX )Ch"IC>Y΅P'rнd/#?;  uSòLd\6ʨ\P G 4L?Tf.A_*X0ri0? BOy5)fkn@ིY])\تM&.VZJ p1,$_MZgYlFN&|sau.*O:K~Z3l#!h+_4ېOwףSx.SRZ(z%䌂@"Ϸ&^8M=ol1iVpVBYXxW׬14(4DHv{!yTvH,o»,fssyio$Eq9C._=L~4b\8L00*+WZwC17ύߏu&G%pO@bAQ_%۞Ž'{p%*(.GϘ[@xgycT:#ܷIbK^\dSSN-n.۾e/ї 7 }Ǎ`5 6ʼtA򪒕؂CDqEǑcjwkn0|A`SM:|$oL'MZWkƯOXcpΦ2RY^6Pp`tt%6>ն-c~N|Z$篤hmQh1u_k^d [( jn߂]ڜR4idxbv %1[ P׮&jx|^SIO*t/ևͯAݮ,y 1|I5 IE:ɪZ$&w2[2/`C7.%Vq:Bh_i)`ӑs'bM{&[xE,WVZO #AYH4ys2٩<\s!AGxw4: G3å M`+36ÒfGc:n>=mlf?_3vn bW%1u;Zõ zD_<1f"'\q)7bqzX*!/Lsw3 8PI EU,6s;v@OP7LD6i/B[S$]8f6UpUmළg ^tpme:^OOoXM@xUȌvH%Yo ٩?CA(E1#:;0S3WQ L`e_3쫽)lZqMVi!y.W[]9%%}_$7lE07݄Nb$qոO*ϼAviZu;ԈT|V2㺍J'Hb4%Emt}9ZL| 9zP*MX+7@/[~R\~RtYIp %1%k4Ob-32 %^&¿R"/,zFw%%rP. 6| 1ڨoٔ]|;P3M]ҧˑ`SXCF?e2ZU,2} "`R@  uYwge*iٺJL⤽_r"L'S)㗆{[aNSu"Ɛ&v <{'1%˚ rJ̉# U 5%gM! ͕ CuxDBQpx-Zpxv1U^䔊bʍ*]uG j*TD }Sˍ 7rU16^s|DP^v2&XGL8v k{p*׍$P&%)%=X 5>e[, '`rZzP#¯ Jf yL:|p>1d!n6d}%Y˛K/Q9bM93|'v~HϑsuXnWjpoBn8AȜE i6x$vtsA W]g"t?h :PeL4\KT)<_@L4] a(4, `Ӏb m龏bGpc:yϠ4_Rx*dKcMpɣQrryȚ5㠝b? w"ʊ=8eV5Z&T'|\˛yҜ 3pd~Ob$o53=뗙hiR6#ѓJmcZ\m=фYY"!ȋkg Wa$ $;!?S*<)ĸS'RN0EFPO\C#xY_t Ro}_=M0W`y{ja]\e24@rqĪiT}5dAy#h˲/5ىx혰`wb=8\$y*tMyw?ʛzo~K/Q_JF o~#W$+ga҆%kxUbDW3kCQ f0{$RDDSr'?Kޯ/10]4b-f7ցU=֛XSqܑQӜ<}[r~v_ _?ueB]L";RyV|mH8dhx APb֬،L%$]iOnGqe&8㏔{CE%ުr SS]`0J>6Tؐۊzq(ڳt6-+-0?,4›䊝:SYTL-cc_.kU>=B_r 0T(3iKz&`x1 U#OddSmvp[dHD{)ɉ~IM#s+TT> mJ);MvΪ9Āk<㐆~3>*|8ԟdM7SyCCW/A д7)5u2ʠb 2P.^dB3C]aOr02('`|()# _'a踂M/egyw̎7:djOl/w& ̱ M: !< <UϚZR&{l8Ϛإ+j[p|ԲEM&ҷ:K_uyȈ5Q6h@aAV~ˏtǃ P4ףɗGș'G :3Gx2Ŋ.rvkܽ4 6z;m4"mByߺjgdTrW{-{;jJl柶"֮_wY >kx_ :O 5٪*i[iPpr>  =Q6MrumLԱa+`QW, =lfƌTjFr5GSoo3ퟎ4ٚt*ZTNky6]*iو+@C)8lfN<@Rcm6&& *Krݚ`F$/Xɷa!N@O!=\8zMhǦewE,9Y~JDNry? \}aX/y3(fJ:j;eٱB)LwR5{-Т0p TUJFSGv]ciIUCgKx&bXV0)J;.Ol$Vc92|l|oNtd/u^%(NOPCNՆᦎiD0Mfj2NKV S=?rB Q"^~]ui#2nsR6ɷpPٱF|@p ~oP!QUm=m.rMfetbZ[ҕRf+vRB&D7S[VNL"h7Ǹ ؼ74+;S4:KǍF]a'֩˱ (Un$fǞQVu+(pgRv,N]ӪxL&5Ì4Lv3&Ê3cQnawGhӄjt˂F#dC> 5a&&{3d6(H=n+rm_ rR ɡݯ֦/x+:f_Nic€J_Pv_/Ű;m\w7dkdZsZ4TԈW ⺓`K]ןuH2!sH\u8\\>5gL AK䰭4 qѿflyCḰ=/X-wnwK7'Щ+9+ZWm~= ^L7܊ߴ׼'FbV3pc>%"7']ЃK ^E {N+1qܷF %QvtQ@.$ʙ#=polt(f) Ѫ; ;PmȅEij\.!ܸs"\i)[tѭ;TiZQWtGT/ o7gC|'e6܋Ze< /DY8wʌG48USM[/.TZIpI@yq/#yi "Vf'`υ2pjR&d3 (w"dF /lei#AO]$J꧀ȉ~*!V2YHYiRVT#ρHߛbܵ wqr=Ԭ< r i=T+ _vԡ(}0jr" 2BĶ8_=Է.&\={;ՃKs2Scߟg & Lc^9ڬBN?++gl , ( =WS\4FԲ{@2PWbU˒iT-~݌NŸ& {x9QQ[hoRg!Bڒxpɡ>kPn39ԐJ  0hBt6*goŌ]"0,SR$:*Lpj$SJ'xY9'm)UohLYWߖcFrFg@u[VۼpӠ"$k(WBV7DgEi0aXV4q7)B}֬CV\{UMs(:ɡ@m[m)-`rvKlrK1~'vYxP?v#GjW`R9]0H9~$F|oob-yk<ìI7 /,nIo}_뵤&/>ݸ畳Ur޵xO,no(d+|+RNطȧ][=12%LK_>XĻ߸qzOdN3ݨ FJ+鴎=JA_Ѓg:#4xPt(~I o^r^S; rtbt`yd?rt`HI#7vu!śYЏH~}V>Jj݀XaVOE}Gh!|jF0\Gy3"ʊ9Nء{ӏ0][RAmd":je\QY|S7eqׇ^z**c # lr濬35nX{~o-;_0)8k J*ÈA63Vq븘0U8La!tQѨQ/Lc>8%'F=yB^u_['ܚZ~`Mۼ{\ 5=?XF WMRxPrSxYàBh}rut9 ů>lcH$<1];Beݹ&%%mDQW (]X7 OvV&fnNнfѽ@#OuFՓ9Swx#6tJaUK댫2oO|Z O"q41Ϧ.ȣ{#@\ƪ9UKә遮 #O==t>mWY[)0 |h1oAdf%?Tw$ɥ^F~F~",,do;lOj7T#r /#\??3.tC^Z؄μ=jV@r◀'&Un03AF4of#qSB!佦|F0AMaME~(8#X*5na ;.\0uP!Z ]{&h6=`I݈4rQAL:#ٽ9 ]fqh@^tH%F+n|B]۝Z:3{-@di"Iv^)ML{W sA1 kԇw6/ 9я)nIv RoȾi:])@M#1%7f>?Y&.x&H65&|c.Ҕv%oEbF~9 "MV:4TFW 7өWt?lh ƱqFX;TE$3=_]v\?N2=(,k3e+7*1nRvhV';sUWnAq3Ajt,xrosx%'os]J?pc%bCYSSvv%l+c4J= ݅hw?7-Ϳ\n=ƆH٤;ܕí.{V)w~@Dsszٷ {XҖWQYYT>Fw 16W\\i`7SuACg?=PY)$q. $2釓E3$e^^D5>v7c4Ne&GnDGݵ,.r5s1xiT-M` TlpIٯ.ИĴ!=,߷gQY,&WFhVY a Jr Q4bDd մn/ e(xX@~ h|츟A_/Df` 7Kr⛛ܙ.ݵ ϳH)qȊG•ܬ:ƽKP"XjK͜9E8p@;lX*o7s̈hc Z-&v8%)bʝ6 'dsmܠXM~xg)兎 EE:%-('fO #i,Wɉ+Q-Όs*0C}߰ծ}$DrD_=v%vguvn&ᖌa0jh19+/%{,Qé!pn ADLW!}1ِ<ڼKƁXMvD~ISELsmmkpk&VRϱg1 I!%x* uPL߰hV:rqL_N-VqfL "&~Sۆj81_(2 ޘ#\!PSoy'S9hTi~B_%BӲ A2YO,9 *#}q:w/,9~hc@Ԗu _8kE&䂹 qr#pNA ,eB~ER.U–FY۶g2I$菈k]q2|sDњՃx('3K>ZjNQºX`bdAœW>B;݀~ _x^B*V$,#5]ޟ#"Ͱ;O viB}[؈))½HăL! sKH5IB}3Webvw\ M~+3B*W e}7fm4k.[:083U}d󠊙I})0ڥgDM5m\F"p=yg%b W( Ф4XfQ[6G⬚".{fJsʪHiLIwIzN@c{倰$FNID~on䛄Gr<3ZpiA9CԶ&?]iET 56ʸa+T٨e`<^ 5}%j;S\~M>Os*djG=y'&je8g_)"A􎩒 D %)G7w`FN}qҼ'yu}U 64 N"ZtpM-潺+2w H R|J0kpgא:rLueNwd7}L7#Vt~pH_nSROZ/S^t@5v$y+E> R$+ +`D>Ȟm55 :1moƞ?8yrn9qu`u+; C \:%POQ_̸=7ߤPfץh|cX%[|VMҤբO_\0y>䮀CYvq*2Ӟ0fh^>2TM !NtqFyq{`X:f57;V V]& =) %S=8W;5#S p7sr<[NA-U|sr ]t^cb BvZ`c,SMK<a3[.Ԑ{<j"Z)`.b^#р^}|ŸCmJ>4>=XGpDXρ!s"ˀ.^uwڥf +cJ&ia$|XʜI.OmidEQ>ޝvm.!4ϔ̫go[YRUHj+pȟo:3w1,K<!KDYQ\u+7?1A*NߒDis<Щ\JN"f4+PU;뺀.U#ׅF@h I VO}0q>&t Dv!KpMd:},СB[!TI1B0 GMe:{5K6W 7~i\+{t}]WHgbfuw To;rl*/ΐ HnhZ 3 OD1d y̕;\m&6 $R+fȉ._Ċ,DFQxiJQְJZepK\~ʉ]L?XI\HYFYRu0*jъz3*B^)idVaVxX KK'w bR//ȑasuG E1G\)8!+w@=9<[n£Z-M -ӽ}0ى@1SDbQԇQ&ڇq_V ?,ԕݚ URVԊ}?{ g2`SA(V a-YaQ).YDiC9 ?Z$]4L8(ĸs)gmB[U~b:9 9i]92ݳ(m.X4hEOʵ *1V&G}PwjDcL aeK!j <>Zķ:$.O]_XEn激((Bwl琖AԪˇ1{pTC32ߴ[lx\YX h$@VSev3-OAY_i\߹5o+:RKm-K](%Ƅ0"USm1Q;[_Y)fZ/܈l"#߽GI'_fCDct!rG |n3q,ovc_dU/tk?2r-0yIQ ϤvS! ev' GUX-Q4/_?4^x#)[Aɞc"3vfpn -ڶΦK XGeUR8#ZJ Vn`Er7 NZeܫ:'#k95S9 [^הJ -OׂHo0&lTP2qh6,exWx);xDHC:'t3lsPC4E_]˘R84zKDV-4o!T)3=nO 7Q}N|8vl3]*鞼Rg\k7{%jcE"XmJJ[b8+QQ ?zj0T8O b|NP\﵌b#;# ^"$KaN0~8ڦ<%Z]|$%8TR4Ψ׫4Ik5˙ q_C$Z`l0AEs%ʁT+lM^ 8i<Yd\2*K*$#- \5 fsxr0h)=c> !3,ebFI秇ToAs$p3ꮻ; k:3gޝ=#~97Iז}غ?71͌S(٨)(ԝuS0ǒtGƁ!TqJEݯ{ [6{YZ\ ~4!{v EZ~/݂2%xn'#&_)8޽PLπſX!xS! C-hԼ>R-ɞ~ N} !1< CH~ 0.)>F,^IrĜF5ZŕotHߒ8ShY/OY0'螴e-+Y$B}y£z|ܛA`ŀh1HB-?b! {;/LL_l*%~ωQ&6ǹƼp+gJ¾a7'~e_=O pGÇ]EXe>j~AI5/UZT4s zS?4ǴnucByA7zԲiV Ql&s`#$( 6b@ ^[t41D~&׫>=Tx?pT̜]/-Q'"js.W.?zC?~O'H*3Ke3M;:dSP'NidN\7!:Jk<пfT@JΗ[73ָ9`P *<@kvDgzV:^{5 vOexY?eQahx/..#(l Q^pjƱ%YܖQD]a,YKw3.x-Υₙ/ٔ\^gA'`q_gw;n/ \M[Ls3[R_ %PQZOyqUO86J 5tSy C@(JyAjGz2Lr3Pw9~ۡRKVEOeaTeW_״(pv3P-n;[NOfRxgZ:b+sl|Z_XPVn9[T߾U>]OFH5I;G8Ro Y%P*W|jS>?gJ1i^/1R>z% ~`dm^ ǏԿ-;Ta7 ՌZ6z?ƉfkLz_/ҫ) Xج-^h>a+*J9CBZWuY#yCb-3}rv'W(Z׊)yk]MPy:'Ż!En@:87MxR@(*N@sF;Ca'T)GΤT@ldY!R*&y#hqm6]-gb TdT}[hj#=ndd,]rCĬP\vrCO7h88(+M-^V5=gJ`uxx ؿpc2lcfpλg R 4hN Wx8)?o# PtfCdRٜTs:/1ks̼e&DvI]FFnJ:L21õKNzB$Lj3 0hM=BU&#td[OўӘpc|`L3Wr&tmv#FkaFX M3Lw,HpmS i>t&G/֢j2I0eHgVWyt >S#u\Dޥ,AWzP@tPj0-gF/>HZ4kYHK1Y}2'eF68 +h/mk#86?G;[fuHl($&5uم5Ӑc e*a,M'';{|₦P{0͟ ar]l\oܑ?QO!HMGKu/&:ѪKT_:wՒұ;'=jUE]>{;7]?= rEѕ#F,klFe AtyTYpŅe&B}D*V C.$;G?p0pn"?MMS͏Ši C!Pь\^hwEz{hWh^ԍUEU V-#=2~헇eqq<3T"ע ,e"j@1Mq5ǝlDHI+( @ΌeA,Èp)|ִLO!w=Z6*7;Mlnīk 27hy[? h؝jL@ IԭgkWHUS ('*Fոg;:^$l2zi,ޛ,j$vy\.UV}= ]yY78-keIvO<"<+i8I9{S/Y>=_P`9?QHm)x+fMY:LEr,NcۨP@ēĸ)guc9LycB<]%p;fҶ* - vK˚wa/$L 7µhD5s>?Ypf 6F(uYDU U\;^ٗbB.Y B~ ffLSZSw]1.,0<|x~bry) ^l$ybb$R2F9X{)#n#&0I >L!weI+*G8}<'gu+BK~v'RИ=@ateh҉ԥ# $fǶEX/wz:,eKrzŧ rN=3 _ç$CPҺ~LHz`פ^SɸgG7ZAqA-<[9N@cDd X m$N R[nzyaHIʈsjF)ltùH8(nڵ( >uĸ-1G"A32];.&_.狚k;p9I۹֒#/C<7BA4b<(m])iR|pقXZ=t%`3ߚ>:]qۂGblZ-Zkղ/Oc u`6i~+0}@@I 蛫˳UPԸ^ՑCc>_.4] ^BƿV(1N`yNXNbWx}ݷK&8} N ,2Lj|/}*y_ƟɸXG`}clh {6?͌-z6|L㟖ќ=ˇdJwk<h,ئVKw1L ;/u}SYPfXO2AGܭdz4;t~b/=L&⹛9RՁ%vEY0ϥ,(Pa] HLJȬ$OTZN,((0PD5[vg =&ֲ8j% 囖XyU=-x NZ T'^} ZPͲr\"9m̛tWd/@dQv*t YzWTOplgԭC GEh[qg0pr8t[LK) a_dew[J 4Mj'Tz@ꠜh-:KSݪVN4Elmz`Owgʎ6gd>j jgimˬі2$Ö5yFe]#h@,D&CaXֹwٻ` h5:wkSTv;8㘴_Y26䃁O;ղ/ˊL:"k0L#eL J,޲&kT!7GXmQpu hqP\f)uSo*=RQz0W-ȊO 9Q&d6NϛԘܦxٔ#Oe =cFUDHP6vq>l5q*C"c( >;3양Tg@1U98B%yi9(4 ǖ(cֶ;.YHB嗰!aem.*,BҾEx/&#=ibxAmeNG $[^Y`y<*)2`skK1m#b>M_ƫY:s5[?$sd8#^ys.\~xTfZ>rNsU"|oD@=2[:02q0ՆL^^`J+v9#d5wE;X^>C>4l0Ega綁ëf)׳[sz&8yy~rjH@h]- ΰh @&ǭ'Gѫ>@Cey;R3f+5jtZkX3H\c9 ,*oNz]8B#VT++4nh=Qx,Z*ilKSIs'Ejk޼~reTM l<0_]r*6(fV@RfȪB- gLy=:3gA="9빘ȒvwQ=n -kEXd]c"IFV?1oil#mn@jq6ᖻD[> =[2C5;-4}Z v˱A`4Bt$+O .SvFm QlJ?Ror߁+ zQgN.JJ|Pc<cØȁm!/;(gw( i4ZƮ0GqC؄hg hwuG6dڎkw \%yN&rљal񆢅 AzA m a5RF7bCn3RN5jCa}oI=% Y5xxf>cQ Ohz&6D񁝅1nV2 7[pUstk#CqE]ů0qD}0@]Nn]><Ƿl @M'_\C!?AWz1ۃܷs>/ 5TqZ$-I6GFڟfKZ$ǁ6O: 6*:=k VQDΠIʠՇöfIH&c]\%@j$*#d͒5sf'!XoOg>$.^ZҪ\ "o@Z8gx3*t17%Tl"/Y'$JqJI^ѕ_os}ȡ d ζ:cf4hE>,Iϻr2l2V'&P8@s_b@o%Bxk^8A`0q&57(N:͚ҜۓНfN>Ɛf:c1'%iZ@2~M<{$ɝwXTJ܅YVcܖq þt]Oijr~O~E0b87MAy0}޾{3΄R~5H%?'aY9N?0px,f<6!|yubiŋ!VQx ^d`Ca)7꽫spg/w_bAR/͏%>jEBbȗR&gơ٩ g ֓f7.X{mPTǂn@vG&H/1A0@? ԓ mRLou0[Zr6ܱBzIEA+=HM6 RBˆۃ-&j9ںƅ6 ߌ}"5+}BEH1x+Gw* omƾTZ^Hs^g-X AoVj#Rk!JC#ps'JsEQ0?u-Dܪpζ-V_N m˙r/LfC!DEzsAp% I_~D$/5FEw~ξ|@ U-HUHZeCOqr^6Dk  r#ƾ{ogOe k/~jF:\hĶxp^{e@S0&?%Nդ.)6 =6[G!b'{}%$ v[ZTic5` λчFr58tGbbYN^j*Kd;Գ)+qNV f(+x te[nRwj"7_r#-6G)?qJDr:\N9v MT<:$ Wk&Vˍ}ώD}?zN&*S 0:[# @T.b-A}ʉ쾞ZTvÞ[bw\S/( ]GT}!G9Ϻf` 8f< l QaH̄íΚ[Z4~c@SvAxj{5"!wx2}_j<@81FDR̓/w6dρ`VjFAlvG *O.j׻F%q&eb@-lxp#-(@x" VG=[>M VAew֏k Oq[1M#Q/Mi=3eTr_A Qw Oo48c u!K% >~ 4y..tV LU#_FvDz0w̐+U#^\I}nrQǵMuLkB;:D s`fU~5-J.t^ڵyt”$,В]{Pxp,´5[, 9=T |2Z+5cRfqoH6H+X$ٍZ.帏>~gZ+_aU9[O"<4ɻ| 7z[M` q.f]>j"Ev%5I:>$ǡGM*75Ohi]~DYk)6M%M<Y ޕ:|¶1z71}Gh&M̑cA|P$') ȁcQ}ι:x15DwA:,W7 SE2q4u7i[ԶN[ ]Gce& TB Z,nZ1?7מ0#6-cb3>U;ߩΦVy[/ y\^Q(Q)[k~tel?ﮮc2}uWw!Md+,*Lc&pZ`3\W-_&$G IJ;08&N<혚CPtڥ }"c?14'-1с6aO?G rSqZ$e* ٶ nR$+`LVYռl8(7_D޳%MWv's@|} )֓yAR7ŽeO5@xnwlI7"6݉bt;&UFȘ"6D33>3Opy2*VfcE.'O23ۃ#$obB!F\)_B3JPy(X+tB@q V "ĠRDm 5A@=E:31gGQ; ?C3 iCb?[-mK[UG`}(4t:̡m-˱H!E(vv(t?ք`5YykCJJB;%{bEc6T.Q]]c< hlY[$gxmX'G(%BچȂ&ľ&â6{Yh?g^8'؋ؒ)%'mAXpQsV8pB4ݏ ώ7$2"(+\ D Mգ@C7(m*ͿrnʣməI: } e-/9Xh=b|K!|٬yW=4LɇEfUvi匄&،OKȕn~ܐohvXw5$==,hEjkԵj(8M&Gʿq̕M'?y )Ta ݛcU#|.n8G9kƤm KCɏ>N: \<]#H;z ~usMoJԛ4HUUcZ%A#Om#K?1} V?=B\4~zr+Bb/7 ) X0 %3 oHf]!V3̹aQσ.k^dt#l3yOx1Hf&h 4{<Q~GV#<+˜]]7jy8vF~gAhC%Pv 4IҤf>{߯Ef(]0_ T^- _ψz M{0-h'[LFɒLjv1̉i *6&ٱGi4g-h쾶f0=k4'ctˀK1p᤻B,=QP_Nb;9!8_˩xHbdGo!,f`+s߭hbd h( ;J>jvrIbsh {`W)CEߏjJ_p2[X ~qſQo[Hjsa!|j԰RO#kb3?7lPjS(FUk5G=h Y5zGkQ&wI}ސTc?}0~PT`=,r@:vp(sN@\UJ 0SB]2s[׎ŰOᇹhyX?+#VЊ #]EBC>'wYcA-2_&6?E8asl>p:K^dzztk_RTtfR?bv{AW\)?gtiu\pGjm|-\G:ڊ~Qu 6SNAM# ϳ>}iZW4b%WLkgԊh[CP4 +;pz>N#LJ;9Q;F =NH#xɔtXU 2Y'opz̹~1 [3Ja jQS\n_(k>rts?&ޜ(dX rҘ4Z:IV=*7aQ-=4JHfH: ,㈇lTxv߳v*\ZN7`0AJ3+ PxUX ^">X2Q[`P^=٩Q*@ W,L%U6aY·t"0{Xp 8zko!4L. ܪuHZYx>A X^l0˗|D* mrCh跊hwcXH[K^(ۉ66Qzm>7  z,|)sD Mn *g]e`7q(l_{}ʟO*يտR6m= ~>r^gLLs~i?={5T= "ZTok^?G kA,\7Fe\MJT$pA `n\Et6s?O 8ƔdΘ ٺYa߈{-.85!rI\h|Ȥ.I{FuzU-E} ",BUi EKҘ .PrPlľƝѳ VJBjaՔb<̽Ďdt7^V\XMsadz2Cn!9(U.W-2THwEEr{NsnҷkD j[~ OyjZ9M,'y.5Ph pL?񆯗GXSĿsۿR(& .2!㬨逬 ѩ{iX{~B~%N]( VKm"m7d,٤NKXVX 2.~ܓXNo%-$5[d7aG +/jV!GZ-oK+wys-:}R할' '^dyp}ymU]/>KFi<5Sſsį$К UUZJv9i(frwz6aͺU =+kzK@2r*PFs[=H.Lh 2@X˝vK!X>QfNeތ-.5:l!dN&[c案r#xP~OI*!6HgA1#qZ 2ac_.dO`HלnD[1 ?87w4ypjN$eH% 83 H ۿ=iޠ^8"hz /8M [0@$h`h Xq96 )!+]80?]%9eA+L|8}s"bk NlECj_OM8=ݲ3iA p׋§*U!=̤5U#2'-N |[DIփ%{{,jf><+ŊmB b;n-M;FWߦ7=jmЙQ+_ ZmbhĈ OIC _}rc^DIXō4_,z}fE3j|{-͍*mcÁR}Y\?MHSڷEV-[ϙm[l/c|A$vDIqrrBk/u@hsy 4-gбjm1}/agT. rƹQO{ ;&'uF87{6n#m fL[%[K G),?JT1۵>tZrH̰he7}֗ ?&)dOhZ.!/yrȄc˽^B̢TSFgh>] @ߘa\ΡAND=Obp"u>USɍɨ /.A,˅M!}cb1#QA6}yys>)GuxOK?*v.xs$MZ>gxxR}CҍDZ ʹ;YRk32ȞIC_ۛ_t&PGFe8%q2X+-@j6mx"V[qNָ)T\Yu3EHML4+Cd[Rq gujrEVL "["#IF"\H2CŰ87ta<-}kdEӵ񭝾Zo, (-J߬/ٔiu9ag=4nJ7G{&NJt9:3yK z1lvۨK,-FiT 9uU_:#\lɰ2+yJ:z/XG^g9ya3<|fnmm!V1i6ϚK Rjy{> HpРI_' 8r|S< "7n.$(9[`niBz,)Tsl`)-.HAS {3_&N)..1'`nz<,JYCG \70kmx0y#n 1waVfVpkޢ, FZ<`:?*<[[(w#&}U:#:*9羾d=W/ePm+'?~ ;z,6[aڏ͙3:WvI>6ÜՒ L85QJ9A;(}[1ﹽ)Yy|)Yz-40l!z`*Gjzdk1GB08ml $]憟.㴧KҼGQM"& bs*|@Kcx σ\RLvVjī-LEiO(<1Zmi}H=ws6b= T`7-#.>,ř=N_W"`Sk qEϰ)bHX?k< 7<,K-"v; lViʌUŽ-?-8]!PJjD6 Q<6걚|9T/q`ibSR播3 %"*I뽁% Ͼ =hA P^"@$B(vWdOkSZarlvNߒ,.3Pwl* {6 N&=*M ㅗ+[`lHAQ.>3=%]/WZ'xO6Q](#1=/I>G(!Rgz1-M:E1M3PaAf;¾]QuYiiwA>ᏖԶq_4;b#9ӱoY^8tPHΡR`9j,eqp&*l?2-RuK2o>ՠ'^17EQ |]yǪ?Y" B*k?!r$'JH#")EIx˸T3qH&;6_~o91v0:t}!5NˎBbc]mQ ;FhgE~f?Zf7_<[`yV Բ^ξP!$tQvejƀ˝&a}t)H_:UIwXFuI,eZYVUy@dW&]ň#Lv R%FgEh*u%Ȥ- DMܝl<-|i6iu P7Ioԯ@e %p2 +JX 81A=pEP Ћ+݊4*v;"%ۋrJ$h8۲4H<ě]P1U:K:E?練 +#y(ق ErV@36](!=zHW<շ|/ҮQ*[I+vQ0[V$#a;] !hxMhv4NWm0{{x.P <1~P%Qoٲs܀{mIujmVGEvm曼iBH-]I$IvGlԗ$*Vˌ@M#,4clnNzQ6l8$ٽ!=fp5.˦%t0_ҙC)74<$&cK|8 ך= 6L~ iyl& 8ķhC3 OSfG)+!S"Sq=n [}E54E>f /:_O2Ib(w sƁpDP9?Lmi4V*E>*jlu0D|0=x؅MJCӪ!m#l<h3N6(b*~ T$7|K번TX`׭θ8:o`')λdY ?`%e4qAZ_1C?>0WXRg" K8 $^$ tՕahr?qyV%QzNSbُb\EʒÐ8}uaz¹8C{t߃WhQ?oT -IswA`cp+Kshuv^ah/hT/sV6Q`, (6 l0HhpODŽIb;6kt@Us?St3wfxjNu,7]cUbA+K}j47Q.-N03y- #ҧNNx[ie6OU_buiWL'hf)U耺[-)wB"ȊIwjTX" ZT|G&Dh$Bwτ88k!_E-A0G5+w۵,>9t(? {'D,ۉɋ7o  *{8yh#Com@l~&a܉i6h]gTӯ gz KS/&Q= )aqHY#X$Z_i\ m悁r ڷ9Re1leSd< i-*r?V*8ޡW! )Ft ~'+ Oow5N :bL,VIoLz^lCaCŋl ՕmYa 8,rcVMtF)%dd+k2_dvL6 mx cN!;,mⰧLF#|p8Z;Ki'N}OmMvyNCP:Ǝc''rL]icrr76.ihQv;4U/Xbl@7s1l 5.8TPl*2,׾`^)z3^U1Ԩ19TR}t~S*4(X.N9{/-Me뮓LK{R}ɈVmN}MJhrȚ7EU9#aʬ'òoMGҾP= {/g趩ĜIHqÇ#њisUl_ۇl3HGׯœ<|D&ۿ(zڢET Dg#aXsK瘊xmUP}k+κ3­:n*#h9D@)VqɜmVLj="kZ~^0l<@BBWkͩænT5| m$j;U&D*m{x[ZQ&fճV XXG^:.Z*lv?~jSF$b:w;\̣ýC iԟHU#[-lQd2 W'q>bJK 04i迱!X\@n=*,X`2Pwy'?q!{Nx3rѼW&|^Ѳ,Uc5C!j$_c>HCpH< P?8Hp' b;m]er7Foe~%HG |B]I_ԑ#6klm2@cͲtAu7 ~C!}nɂJ\a# .E52ajHޭܑ<2NhJW/+>nDEF1ƞ9?KiTJWl{嗨P/g1T" B|X@j{&ΝKotMK !^dovzVTKqFW*8,HԓH#u}%agVbS 4Ch k 4TPBBb~{֔ 6XA+^N7ۈ,:Glt`2_Dq (+8jxFb>Tjf rBԊ)M)~‡h<=֛gmROY³ )dgme*!R qa/b%H>#}2ŠVSD4?ŕh!6U*̘S}LiMG&[Ngҹ@Nr?^ V~5S"Ua:[$}ru_UG:SgЦ^bl|o a<}I7V,i)V"XsXkU/: FaDޓ? ]ΜBEyaF֠r t|P }ge>S%KIeϯi2kP Vi]kwOʥZ( 瀹mIuoB3 &yF`RʻO̡pEA6ơ0lczȆƎL6/զ8y[lB hpH\8)4/1O-H/KK*) M(v[v=!/}jF/F7 %nWdUU΂QEـޒzlnZuGyHzsFBH]sZ a˱4;XF2t1RE|I;^Ũdt*0Gh '29RpO+"gUq?Y|.+Q: 8dMie+|4 /!_H^} u/M_9:w @56H]u j2#`!I` R+_j4(:ZwQn21xp2V{+.>'ǓIhuТAi֧aC`* _?;c$Vo!!?>Tm~Z?Ij4vf,@ۖMÝ{nS{YIvJg|md,L ClOca㋭R#[ȵX R 3uٌgVU:Ut (X|Mamm E{a#fؤ?14\T6߉EM v8f3[i}3ll | 4w}m/X WRBp[7!P8A_أy4I6! % (]Obxf*cxCe$d4@bgvG;jTIV;lDYVKHx358ۈ8 SԧLښooRІtOExudrb XPUgyVfΞ'L\u& 1nV (tɣ ˜Wd2vry6,Lz&_ aIit$.m;SA=Lz, ɕ3K>BlhL+ Sf5<)G(T wD=2GÓQ|jjiMWroD%+ztҲmJ*VթA2LWod-Lg ^"V |_u7|Ȗ x;-[M&FTh9BsJw{r=JyCtWK Br9Yo {zM_kYԘ%W&@@6.8mf"\k7v 鰄]hywc.ifN|MPefYBi>Nav|&guA?k)eh+sHyXa\Y* v$UtMfnf"N9*Ǎn{_ |> 0} J~3X#ҷj|c1R,eաBO C^XDTC6 R+m; v(IGibu~NLAp{8r:r{xx=rəF@.AdBNUJ?ݕX'3PАUmB$6ݩ|R~ ~tQ\u򙣿"V`;\_\f?rD7]THJ?uńܰcJ 9az*d7ѣ>ĶgU waMN0٭9_(ة֘(ղSi~QCmRt艓BY^0~NhS0CO\xMbź5>[7vr`CcS(`?G<a P4/ҍwsX^ƿ!sJuookw؎5Tii߅P by#B.W;))Y!cJ!ZJ|I| .bI~4i_ȰY 5: (h#85_$L ~lPtpoDB.žG U)N(aLrL(Ma6][}ӹbY>?bqd,DbhuTMd=9 ݕ_[!=`?;KSʼxxbBǛ-84r鬮@XnE :uفB(6@h4nvTR A+KS42-C?F]0a+gp͎&JEٔZRe53`}&aH[*9ğنH,9 F Go4Vu<= FHLQ9] oO3"-ϦC-H1 vyYVV1/f,w&V#Y`|Wq0*QgQE\;TV;G(`_+(:4^23*30qhz婻LO|9׵߳'R̡rDc(eD;dz]١.maO~Ek 6 FXmξċt@f:kPm$Q e2jWDbߪ 6!J(ĄTQP [x#+;QG}lN8WH _\ew.lЩ6{V ] OG}|OArw.vYeؙ.rHoH(WȤ9AN56wAC :>,/ 1 J" 9>``OYʔ*o8_C㧢V4@mUsKFOph+, _&a_%v^l*mgV=dĉ'gK:wp(P< ݱĈL1Z[<\cbΐKͥ3",N+kȧRe.900H T- O&aBAn^-y39V-yW@WOyh8Y^nHxXA84}ظPvC8%~ b:?lǩÑ!Z'E\b`AdDXgWƞtg>oMciΉz%c Zc-ճUp!zOC|(74WaPJ?<ćY6SfiT/h/cG+,9EŚă:rB"[˙M H1z%)e%f>-鑋raU(K/h鈦Bz[ ^eBpd0;y6띵aO8lF`eRϛqWнlLtԢ{lJV*gJΆ>y,L,eX8d->9ܾ}̰N.˞8AbF:݀5̥ =X||1&D)3PFB l?)2-|󘓢m?ƢŤ!ElVi,k]4&xA 4St `;k~>Z,0;"V14*4R;!#yȚ1Zw-iN9'!D7;0aX L@{MÐm!O7yu"GbKBEPQ("TSbS>j׻ȑToDiKJN2/qkHs*dmP3N,fk x&"ܓq hYYԕZ'9d*^]܏:fOgRjG*\Stt#Qc+L'@H# .RE\'v>~x#huZqµ i|c+ݡ]LMm53h X홾<9!.ߙm1q06z'XE$Xڟ|'gR7xWo-v!F* nS\}~"L"[ _>.;#n)#@|}(J+nFERKY)|IM ~DRA/ylWc|˨N/v<=VdQ !JF~.:)9Q0G}@_f5fZ0_[8Y ]'A6!z@[bܩpnB[`$֏`-w? 8H +:hm~G 2D^S)ژO10cxM@-,[uW"i -rSV3b[!:-oA@Y[I:D2*HeUsTd_79A%tD B1KC6*d9KuJ`bC_&P+/n.XmZƚT i'p}o 1heJ}Fl.1 ec^L:eOet<z}xVYxGx(MYT<)8>!t1v ȒPpE:2(mMlg!xk+9FqZt!Hg0Ĭ8凊˃́a,9b24ܯoC>}Xr.GG0# #-J,?J9y3JZhޱ.8E0h69as ?"Q @LݲaLoL-RgpHK*55{ڼ/qOZUuʻ{WHV>Ktll [f c&T\cD!rLR0]dtkWHH9%ة 04.7rMia `T}oŤLNJ"vrnډ^Xŗ@KvA`N'_d i$$+!pB!ÃmNh+(Ta47zѪF~Nm7A`\Ip:3o}}wh<s㭾< q *"I7J\RAdb罻d>}NYY5u};8JH0>_R$˿6I|Rz3Zko0ʺ{Y)=]Ɯ _=>1,"v;/:!n`{Sbljrhxܳ /*8uVhw/G0 Œ H@r_YOn$׬FcDę81;^V~Rdw]*H8MV؏'^t.Z·)nik^ON4L~jqLOG~R@O &\̉d _}]:7jL56X} 5]7RAm[uؑ+ZB1W{SlUwiU5g<5Xma7:_[W>Qc9'Nd)\+~?/QyH2mClv ^@d_wޑ?P ? ߅P0T f{(w~8c`8EWEFHݙg"awA- T}A+ ;J gI4 R̊iOo&5YYJnSl rznpI3qz?.];瀣^! yedV/Fu:'i;nB|)R޳n$NRm: p+ӝ,ZE~M4'm2oRd=ؔ~!Eܼ(w $ +PEGW]%o+1t/F$1]q1:]Eik=_F`۫W%h%ytJyUYftgXс NڲD[^=?l$#Oį W~ pGsWB$za{mӼ$X3˦=lv[Ey !! Q;J=n̍AšotG q-c6N`wp3yq cutn sϑOf3 bBhxǩԘ7iF`NXR~k)R>?dfia=Y~]Vv/]"@+\J33PAP~ƒ:k2{ Nw!_GEJ%o"ZC׋4^$bS]2 thQ+ħFn""ce"^^Q gR p6g%+}[ϝz,J})8=K3E=D"cpbFT׍$,=U>quEH(s$^5I"i5AGbBŦT ցI'*G"gܚ|eύtwSgPoK_wJs+g k>BT-gxHuqU.|F{(e̊Lh &}>G:AYRk[q ~1Jx 2DY<'ٻu`<gקX:6QP7|tTК/޳zuG@h*+2`ۮԢþP4$|w~|==o9Q^$kCO鷠~T~Ay:i}??h4̌ɱ[_(RJE2ufےSeBct6Z ?dMٸ6st V}l?j*s(+Mch3Q@|;`qSa,Q_77S_-sR|5G'l]~7u̓ ?d/m.ɂp0$RT`e_! ri2>!eP753"RhR#I$4!<;k BYR9QPE>nM`}D q&S:Vԍc_;UN5@ iIB$ SVY g7ZE]> Lz~>ݵ[PS)J/:N6 7 Ɔ6WX8Khmf0jnJ"rE3O:%^;U0WOEj hrzx\ƿ֪Q$0jPW!.nN弉<fU:fH=ALLukf3 XTQY J[",k"'}va}nN&l(C}W+a:k<<&gil|q?^{6hݬ~K͒%z싰iCӢnbcR"wz?2_ki$+a%)*Ap'[1kᆷ5B=?,60w0"~8ܭEW -Qb`JJgUhe3OYa]>@Ic\b#F$5D ;q?MwJY0H%F3/RThCˢ%ia (\j3)eB酪m-+2ooJx>MBQۈ=("$,xu.]fL Zj8l ȖfuئEE/2$Zm^ņ2ET*J 89@̇+;}. tP3B5(s!iVJ!PD[4:W=K+ܛKO@:@VJFXG qzQc)HwT%ڠ])T 㷻aN֋ {cG_$[f+"$eV7Wh"vD,E"k$;+ gCU_^vmqZ:;#*Dok ,E~v( ICKIS!TN,~WLdkYB*T}f&q蜶 ֍p)OX,73nu?(xL1JJ]=O^'/Uu bk<P zz^t?(FJZ 9>vN<5 )]+[=/Fui&%M7_l|3-jԀîtkr/!2>8ZXmfb\6ߋ8zE.>]-բ1bc K!D>&ȗ /yy#[Tk(Lp%yM.sEGb/lscbgl_:K04J4cSg>"QcX!t |';1*UQs' c!?!]jWlI\w-Uwu+^]~zYbżk*mAO5jhA Jg2w$f%م| Zz]T1n\RSgTj`7Ii{B +ެi y>U WFm @26h>JC fmlqK#sBy)qプ$23=IO9ZxlO>B \6Zd:~B^o_" @CN3Ajz&-M=tu#,%S7k 9e2;ic2_*Ї5nÖfG+!tû3Ay`Yx\nii ޤ'H)Т`W1'K,+L>$bM+/Vr*&IҤ">7 T H=MTOKqGI"{/ /o<;Ε- ם,ܷVі|l4nK/?/o4I罠qFс%8BںDo89L8ƒж"e NBk {W8؟q'87W}Xe7M(EZZZ A)*t2J}ڙfT![1(_JY 4O%3se`QT}j3SZ֗JX@u<*FAV3We!MTvZܝ1踜VjR;CUav6 KO_cACAꤕ N-/-7xC)-m1S)7s*Xn$O[ Z+]bgTZ =3,@Pb+ e#ۆV+ zwvhy 3,#8*5~Im0dZPTm'0dkU2wz.KwN=wc-Ns/oCLm,=WXbµu\N `T<,+6!7o@f `/+>Qz&h,KN>4s1jE`jAGP5-Tv]b0~Vu3Rjn0ڎ= }snbm2q^oQ.˼[۠{r̰M H- gxTEIЇa{Oӡ1pE0G,rFQLrFd(HtS]cB];ҋ*6QU "B^LTNzha GanV f oCOv{bc 5f?J:Y ziT+KtjMd;x2u/e3,W/]D8!ghؐPy HM$1V:h]T.,vvpNvЉ~ mZ|НIb9BZ|<N6* E@{rJ8Br/hfA!:{mA| xR/G@o#$DgbQo]I{6E @x*A^-3rUl/v=u<ݬ !t:!mqMT j._’#*K/ZQaբ/MU?e/tCsl7*]Q1:p5_?ikW8 ̿04 3Z :b/VCy{ZUmw?dJ}rz<_~MYXX< 7 J´Q^vl 1sj@EM<3(?+0CczYxش"H/c˫" Z7B:)WK*x\Qd1%u1ĀRPl^1z l[-(dBiYFvVW.Hmpqħ@ qUũv+g_;BL{EEIxz$f?EEO)k|]. ڇK4E:pE6tg yM)ϧG -?t"%8}iQ`cprt}ÞÊv.ߓj[Wp'\ZsN&XMwL.*Fx~?qSiYS@+C=] MeHdHR[~Pd|' &b "W^}Kouz2x0j;JR{/),NpoG*AjLY+wh׭[A{'=;f5X|CM큨ym,{ oƃclMmE!;T%n(NC%T$5䥱+4 2 ]%D߽dѸMɴA03qR2jF:P ([.&v h.M9ZxDX "0Kȕ1d:{4ן3T-EؖU>P; _p\,WmB)]+V':-qUku׿ŊxWBm-~ymaz>yluiLd/NZ/*aWH,yS,biΙEBRgL{Grv5~3Peɗ7X۬(:"TQ1 dU] .$>F;r]>awT),ZT daNTbc3>Ych{i{>,%y;HnbsqMu:ZZp;IjctMYVuwrƎD.YFrU*%B *YBb^}+tAqoW=<N>StU7mEV]W& S;GNW vwH53[H;YlrUoj@x`Fv>K|,IK[l~PFGj3zi/=\)3֘`ފOV9e5b|qVP,`˓n8GhM&HM#dXfFa4[wq.Co:FUMR,hFDH!2\/) JOSF#;ӂWB,&ؑ`% {?Gy61MSVӎ`psOPlTLOE[;LT +~WHe  BZi5 Pyt~`%5&Q$/Y!3 yc H%dŊJ%zv.}!u t#0>!\iςoKٿ:kQSW_KOVg*c#K<4YzTc']*:b~M2R7(72R06x.M.egW6mpJ9Mصkϑ46^uU+M}H4AdB[G>_dVKF꼎('r.퀐LDNYXbsp>-:1 gI!*ɮ.UYHDQ#idXHc2]JoE AC\|$i&Mpi"T=!nA[gF&r/aГvtTd\PiEfK0a$ ՚fД^I->Czi{Y.ʚlJȅ>PaU$NQWA/"sJn;+ܑbIfp치3KՑ_v 2pEN _#+FơdDk4k(,a\:y,nY!9`Է'm^,52i$UXO] ̫VZ3ͭ/Y|Ib Z_ͮ&LX OS-g}!YB]SسÈ?c@6~wnN@ B?`!EJȢV\ kl^Գ@Lg'A'ǖh(Hk wHC =dStڇ \j  D\\%qH:׹ojKO$@圽@\8F`Lu2$WRpFWoʎ%ӂA[A%txm<^~)JG;It3*; dZj^uvJfฺ X_W ɽa_8 橏g G刭@O9./k1o:7N9~4v/>AuڃT6|6/W2Ą O\"v$,X,&bɳ .ڳQsR{8޴P ȳzU4fUeyC?\Aᑉ8>±0iҽ+Ӕd\,P,@1pETu%U ^|!7bJ}hJ~J|;P~_!n9^LȨG[4mԩ@"m],%}`~/NT H3Fw,GH A D.)E\9|~2ɏNϨ q~]쎙_4Mޕûbe)>&7)1 Tjr;v W`6Mhn%N}g f;ޓ)dagִj}[״mVB3) IM)WܥP@j)SZd_/&ƼٜOKfk %NWF,XN& j^\IZ"O `*9(X=܀V{q ;XYq9$v+򒇺 ͚wry4&c:y/Djz;L^&$KE4<c(ZrIV@/3D8jI?@`y5C85/.yO ]m"Dzs!8Kya+x7'P(L-H^YR.v6C $Dx7% J<z̢6Ur i$xgU)M&l:suT=ڜe΁l1ŧr^U1^{36Z ,y cL]l.lsJ>bAhIaS~wNڥe'b0eR8UWqI*Ã&P {ba8AF?&R:z8&ѬEK:HN~IDmUIL)lH4EY!_hVA.7C %1S|!=zbw9RwI #m4R VGzB3׸/w;ѳH <%/Mݶ++{OhS4!j]cT8CuǕH\#)Od( W|9bqe+A{ېm"O͹~@]Sވj-2 ghKL3NZv4'#pSyg' zͳ@JOE+*sr'v 8ΌoH\~MI򭰷RrEӗJ l,TھYs`B i_p]hTn6":4[+E>8Rc$읨b3"M-&coLU+o DW< (X*I,Q+D r1r~5oOrv+hjHպ3{Jo͵f4T?B4g$. a:FxȇAi _l'vtr)Gw/_h8e|Z%|> L%5KpD[ȃ?`wIȝꤌw nab?Po9絠#@qO/mIKLL_xdeM+ btj~I˷j<^Gs%5+Ⓣs~ Ft:β1y~1dPTj-ߣaܾJ D@@7ūu%l7Q:EFC(9$:/@KH;W'VX]啣TeM~ HzLaQ{Hr) @ENߌ`J6 ™31襕Z?aiqqU_IۡO`rRFy =goMgZWx=U'ps'~ڡ1Jjr/|S%`Dia2G<ǭ}sNa% I0E/c CM%;Z~#'gSW>8uGjv߯ݎ]UD6v6a2kˑOgA].[Ɲ &Rp4ż q% Sypp&$ dzٴ$L`v:B5/-  6QrP2~vz!Lu&X f)@YMxʪ˂`rn`UwE*D"M w6TlX<̰03qdI:!|RðQ.2=jdr_?T 7f*=zbު|SҒًws>60vd*:bz/8n1祈?%pJ(pl^ˎ3gQ6Wi0iVʗџ=zA{d@`?1ɶb<ҝa5sI A9ȷ c[*Nޣ-հM ]*Dua'gA `R9JL($:1#aAN8-Л=(ٺ/cסd/ң!` :q((˦Ľ`-Y 1s¡(l<&`9c:u(u ik銗U/M/0kN*w|Aj1dK'6"Δ!o.eYVy.Toy/{nfEo-`:JSVJz m44Zś]P4eSք;[$U`e-I>1ιɻ@r۟L3=WjYT!mٲ\{~Vbʢr@¨tU&*SB5;DQ)EJ0t6moaݰH*"V,-Nps;*-1 GmtFѹA"e "QVb{{zp͜1Ѩ"QKt:.1Mԁ uLƍeT=mȬ4Y`0y .\T/+?K.jmaѭ#4!ۧ!ˤhGi WxcH ',D[=Zq SIJD߬ eͱR_zanv=F=9 n 珩@y,O!37%>4lc,7H4,nq!1'QlQ{ůc8OV;d; E+Z7~KKO(W4Mk)C,bV> A[ŝ;ܶZ`RwUJke(䬖:H/Ѹi,PrE;86I!ry[{}u2-+͂ }P4kPժF_ce\1@:Z7q6U[(PPVs-EmP)]'D`-H xU0lkGZJ5݉ޚRz:d:Ș|æ$}v1d+LvEҳğq\l.ޚh{⫾zh?x5O\148€%b*ȍESuM\%pe.{U%.r͜Z&Q hz)υ aKk} ~1@EFo8j "=pģM'[= WmEQc1 i"UfRڑ3>Qgm<N#_PL H_X ba-B,##h3x.kO871?}GUo՗0<( >?ӱ!M\[ T(Z!̂B'x&+toה&QԮ~3/OVSo=o7ZIyW~nERA"nP .sYh 7} -0n5z AcsV ?fFxлBV2NPvtv/O>jU;E]$Z\ҽw;|1ۣ1&iܡʺFaoўr߆rB4򫽮BSG'Ǡ6-Kӭ(c {Y>$T8M.&/0]Ii䎷KĐfrL%78j'ДĆ>fKYL@% )U)Մ% 3os,$6_i@oJI`cKC.O>l+(f !W N_㊉b!۴@#E`VNPr!BObft4RgSq(>p^ƒm nPd dA.Wlqj \p@A;)*Q(:L+ T(F&ͱV|l?{ب,RwJd~W70޳CV1Q]VZj'Uwbģq9NYȂGPnKXsJ.3r,!e9E!KΤ#tGL׈dѥXD{oȆm#с^o0܊H)x7Sb]ǣIzw/~$4Ws:1k ˼85 0z߇oY z0Pt ue}mY0E-)<Fz6\[Waf‰c,۸Smٶ$GMJwǽ,Pug.xxF3+T .L_8]hWBjR_:I(!Z6\X/a TE#l+@Fth*k瓸L{SX9cQ5%[[ޅsӔIq|oޫ)'G6rk6eer%>9f{h:~>a=UPz" 8B=bk6Q^j+|'j¬?Z?艅~v?s 8ș kpᠰ&/X'¬e~ΔHgYgL&t(U4МE DNF$޶W\ yEԨ4 ~{:-"%TCoK-w/)4qzVgMT R*C"_$Wo.4d7Ɔl/x,YfkAn>C|6DQx݂K0uNⶦPaYBUWq)B" xh|IqBJZ`[ vFOo/ %97yL,΀.|:썟Wz&7eEa`2|c3L~%t1}=/_`;wxXۮ~GdtVlhZ>M4_,[X! Vc^}z*ޏ.OeD};y5'V{NԼ xq8JT8^&7ni!l킚MY/; /s?2 ƍ*!+j)Oܩ|x/U~![j|<]Wt ZHK@B;dr=-w ~Ttj1žCc|OM9#K9h7{)lsqu>q;+۪y13NЃ܄BhmwT%_d>K m8N=e J#5@<6_/I1YS{My`~a3.@ M-̊/8'%気U*q2(Qfe*$֛reZ.oǞ;4a[dϝ^x" QhQj:щu+㿡dEsH6̡9qmC݄()pՅhaXC!K3}Ci E ȶ|9aB/Xp@3EF{(DՂV?\ 7th1@7Z5SwgJ>]NgLr?(h ,$ٺzj+L&M`G}um'Ov"qfsC~}DPl}C`;6$ ~XUr%K gxŅ-e(&*6A&?K)I`e.& .l7Nw= ~4+^kVB֦wJ-^ 0ێndo ZV? BP&ْżmA$JG &66i^ c.'N:ڭ1ρXvFMFwC~ #odX׌u-"?L+W⮏GgwdO} :qt!~Og>;  : ?3 j8zDYvE/8m)JRgY9ǒL'to 8%D'kea)GC Jp ir a|tD=p=<<5;[㙗BlsM!ly:I y!k Evxk'Sj?"1Lj756m[j:#Cs=sx:8@4 h)'LT dt&(RsQXS\ԺڅwZt&T ] 1b?V.2ǒ6y Dd`!u6Iy+dw .CV Z۴Giݨ.X0J:GFxjYU0Y3\V#g5c5-Tp{Z-^k\ kNK{ʣ˸mhLeB"Pbh_ KI&OP2B4H(kSTb|ڒx+qZpcw4.vcD*j#$!緵.ft̹kjJ-wi^,x˵Q 1%Fjvrqa }xxդ|zqXs6>*L8+|󀏨 XGr>,N+v4m)͡욾n66To%q17v4 U CgF#10<6'l`v('P a1u?}KHdP{t=G4fc"=5-EQsi(ABnaP,_%}xJ4P(5)(J"'ʧ1ҞʮF s\ZB!Vl do.0^em] w8~gtAY7USsj0Yo6>ȶH\^=VB+25i+玸G6)%H2r̥LSk^8՗4?בW(GCF.t(+S &- ͒G1 Rz>9A6g$oҫ`p܅c'fJσ叮MhavP4T @ QYA}4Ԕ?5[XjQ;\nk=2MZ ;ѸKÃm$QL EBىWWlMYgnxəK}{IEiib8r(P*xO#LoJǑ]c&dڅ?EASNqȐԵal̽5++8Jy[So(\x3v Ѫ/vؤDT#>a12N=f/_A f4 }ѡGj:0ӋQO孜4B bdתoR0i؁GgYFLb"L5y} 7K^u%RBCZ]QT*w(cUeSj ];j /7Ub"2h3/xbMtU/lcɡGg66"F=O:ߜvW9ՔKVx7,~\zb^ %@$g٪/7PKiH$jfE5  ߉N6ǹ*AK 2=D9!f]E{ZۭM.X5"khDn%O[KIn! ~6H׍a~βcT{ѭT'*\+DGP薎60Ayÿ:'|ŗr=ɍ:?zie/?{D=V^y: 7fϻ]ۏg'>!e" ?fBu3C}mUKZmP@ _+:Kf]L1NaUȨot4fE߉uZ"[Vb]"Zt;wI"Έ.:Q8[}YsSVZ7#ab{"~àG`P_:5i!mR"jxa|#H}Xrg<@j+Wk\pi+V%D?褥u 6DXU(I<5dP rR@U܎q1e Ӵa#i g%!(Gd$/b` +׈hM0y**x؇mRi}6yi7![ϋ6abZyUW:.96V2g[fs&}!!2(. mz>(#>3mf~YrȟZNޱ bXB狮vL6OLTn1pUҜ-GYPm!CflmOO,XZ63:bZ,ɵlg_5sF:QOaBcׄ.,$X9P:_{hYb#.J3B>R2t@' BaFQOՔph.SttЀ幮gO%31:jJyQZ@df-.Z-. 5d/ ~|? Mhܮ+N:E. O@'W3 HBjW^FV !Y˃ E9q}@qȟȥX w]:=.Iq[ ;OaC)Vlu[Aj=b`H>ۑLW}5(ﰳeUہ۶XQ"PT@2r{2~<38!X%OQ_=x\ؙh%6{5sK~1P kiXYLcYmWrS wo`s| ^݃{GO>#Wٷ~J=lԉljH&}VގPYd@4\Z/t‡>q뇰_7OG9qC/9>4^#?UY*bV۬뮟ZyцH FJ OÃM^6٠c41t:LBɞd}|a(r:X ѷ!ɆKbqӂ}\%yz~KJ~*sW/g̸prS E\mƒO-c80sY\!S&̡脉o)߈E-l\5O/)V 9²㴔4~Skz|db z0޾X.{Q/D/jW B`@ h{IK5Ww2wDZ֎Ldq l_=OJ<^E`lmVAKȂiȒl=eǦut3_Db.W8ū_u`\rBQ푦h*FWβX%_',[aD.4ʡْLY&G@9etf,ֶjV-f&cu4tNU11*l-Gn}xVc>F3Z#̆C𮏷d+c=џ`xygIYP!I?li,FGm6/, n+/dmG#[" ٣m< %hKIJn.6>R\,!|ZxVxN(XCxQʃdﲨ{x8k(I+'Vw'N>F-3ҫx>)Oc毋A+·ZO/҆SG 䬑 s|:Ss\ѺcK)Ð ~>4b=<ץ:W{);f\jd $#fſMShԟ k#r#D&wV>EMkrL`^ aXhO 2i#Sj N fc jݺ4d(,yyTDz9~h2|vobS穫\Ö MنvwOk&m`fR/܌Űu ]I3qM4A!޴?S4$kI=|(M%$Y8kN;)Ϻ![[]՝i*%s˺Ki@{~u8`jW ^Jeo5O6Z H Ixy{+^H w$ K0U;fOZEhɫe xckɽvGJiZC;;[mg6a!q!傛wȷ3&I,o0r8Lb ?_?+j{8F 2`\.pV-,޷s7, K*mGV Nt6F9& p'-}Y˃i6I䜹.qW,dY-!PaD؞tW7pVExy yYoF5Ux!tu ǑaN=øpr)d!va3!/e1ښGZ rzaQ@A ?oźSkltu%u!t2(h78~AK:H Hw:6,y1z}?e "p.?5F3_4jY0Jז&uPXs7{NCSAn$Bfݐ}ql.쾭At|nȐ9.7NxTcOδ0 (#lQߗX\փBL+Mt f;giYXL) avmlw#k k;>";..bzG XOźx*7JE#+BVquj~껣DJ u@T⤾ncXq9(GMtלT+vJ ڤvCjӧA$:[OtC"`1+#Xj9Dq۠-QևNkxgSq0)uk f7AnB$]dXDyZTEǥ( cGڰTçp6^V~M:x@Kd WyRZX&t $Tycct,YJz'7}L|meٻ w 0NLV7#xmDE[GQWEoS޽SkrH)ŀv)_2k,#cy*Hg|9gnUYOyl PIQ@ŷQW[LUwuAB &A/[-zLmo*]7MöTҿ ^M@~uHMVA`796_ny;ΌD{5`pr! q],R+L_ v[^Q *A0YسYES#o%HCp/Vɲ40j'"Hȅ 2 Ƀ/\ m`B0#L1Q}F޷T8&T?Z\8Y{Ay˦[/uGil(Iie9rQ%\d7ʼ2wO@};f`Lm [G^% ]D,MeAQGޙ&[Kȴ J UPFmBZ pXŪLURLT͖s]Z܏M4߆n\g -wAl 48 w먞_ӄv-2ԒS 8?h6"%mPw6čO/V%2Ma .' 4wI7b΋Qcm `|;@|Hx El2cnޠC8osթyggM.l[DU=5$'`xe#vC(ńtbŵ$hYh>WS=Qػ9UW7ӧ=X7Rq2sT uM:C0yIah.:ajV8O&;#qٜ9LHNJ/h) hxWQU 䪈U\+io*m &OPLw ssΫ9 YNoьUþ?P(: "[h j +[* ^]V$*G[ɻ XYY=BpRC ޺ 03<b5^Ar1ny<ţ4y# #R65q/ӥ$H?s#1J)nޙ*9P#C29%xsݫC 1F+ ~),]FЃlv>ov4|K*:B~U<p~ %FytWRٻѿn,ƺgM R@ -c,'?"ϲ /u6z FRG /7@i_q}`lLys=mkWj"Y#,&Dx%i€d J 2wQqs$AD Ս\DKщ50h zlN;i /}p#SduZX/y 0PEtatQyuY*)nyQ-K}v, p+%n\}ߍRn`MR qGɤD˸$r!1d>^A\g :>'qnj#aT*oL}8aD\a/|&vI|lFƎ 2ku_ncr8#d71x+s_?>#h򺚙{"IXR|>7gǡeW}vLG-yhG"=/Pߜ~C1oV 'ޠ\>Ȁ ' 7V$\ۆv{*:>\DѫK|L4jzTd^]:G+9cM}_5Y{VCU7X=\3-W\.]º/i?z~I1yTt3I 6eV,z״Ǽ_nq)}DZQ˰v7]Xe6=;f?H(2ҎJ F'Pvp:ZF4J6E4sB< ZR0&뻠vRd2jĦؚ Z؍Rߎܿu, ]P + X`+g} 3T#F&a/"p*6dB["ңF+yrҒLA%!naJAjיC}"-=ϟ(%ëj7'B܍UFȑF?6z\ z7]U[ޥ93 P'*TCX՞I?}ƠM/k[F:BW• cܿvWNϘ \;x^qh|wS_& "J#?vW.܇9}܍I:p #Ip>9uj "M ?ytI{d2;C^qT[#ȍv_ !-{\&їPu؟̾䂥M+ (z맏m$8TN=O߁%Keb*QCY ]*'j B DocVaܪqK|JL և#S *p"6\kaJ/RbS&9!T،i<S P MTJ};ʎt4ve񈱑/Dے舖"H5Nu^Z@+ZX =ݝ.Q4ИL:D?:dU=mű(Goכ&}ݦN+kr8wpŗ pe4cRr&ӺoʼNH Qۑ%%? %1tMaq6Z3@Z\X"׸} x!o l ~Jq󪬟|.BC+N=DR)cz~XjI(4.J|onrZjA  /{ [н;\tblDu v|CI2H\ xÌG84cl%/%9/*Q˒+ᧉ͑f"eCeKv)@cry&_ *DIlm^uk~𨘕VC\< wRbfj|М h{M콺b9*;cј YoC<dfZ(^4ݺjmBIaHlm[㾵/]wBoaOhf=&nSݗW 'b|fD a^I=4ןRB 5Kh4EoÈt]1;E8Sϛ=Gei2>&<&d^|>UPʯ,g߻- @2=8;g7LŠI\Lh9;•; g}E/yK/oUw/# ez%ʿwŧ]`SI ߐ nt"گHdr4-p-i or!d{W䌛OB8No?ϨSɻɪB 1: .8>i[1MzX2Öٞg =^ VXQü1WWgW)÷ޒ H++>&86 "r6* |w訋s(A[#9ZC}y@Yc~o{dEfJŵgyQ\(Ֆk;WIQSkيl*ɖREc&0-0r?aʦ6x(52] [{q vl\QtlipsuPuh?[TXABmotsB5}MrYk>pŹ~ߢ gTkjg'$xm !  p?Z(ҒUPͣk,B]\II1}}q=$j7[͵%|MPV [nK{[lF:L9OVFu ~Fhv"e/pqձ\FŮ P{+s ́13VOhFYcXns8<ϓs*]ZN;2BNĔh}_cs1W}I>|S/x΄oGBL#萵,YsPt(3숞-3=tM Hm8<,dDB{`4C@t7r&e~9օ_NĐ4+7hyNQ#?V)J={޵!& `}J1'Bs`lQC(ӠNz)3$4«j'sZ1 6YW-چǷ[~Yn3{\勫uP9*s#8V Н.nVIsw<Y5w&!O^O%mӊg態!9{xP`> vQQ27n_A_S('oҎFĽ݉bc&dZ o+9$[vϦfЫG9!1 '.:VCyz=Z^0"*..(Fe 0*FBՐ"q!٫gn@"qWaUEh6I8)_Ce @7Z3a45t Aj9fy4D1.Uϕ5 M@CCP<T1R2AT#st]{9BK+>{ )q=Z(mS^`f`ߝ~/S"{ixP%*!5◱M-6JS ءAWz|C %u_=l-y+M,!3Qyn%qRٔuNһwxT+5C&ڛ#0P-.'ޓ$e}P5Ǟ低XQBBrWVCKMtp:ORlɄmh)\7cɿxҴj| ߃{slv K/VްnOHbK& {ʠ \ ɕ>kM'óQ5x.#b{$=.:T5#1w\ǵyRYG~n#Ke6!I@a'_s0Z<ɌD`b}Ac|<`YTLc{A*z2: !^4JEAi)Q4i*ݓsLL[T!l#~}*U^Zz]jMqlF&WZsoTF1To :Oaz#9^pb8g *~SRނIeS'؊=,S6ac5N="`/oX9J*]_3@14Z:8aLSa8iz(_q2ZxTf98?J]Z, ^Ob/F@R*qϱj9m0ԪsKS3)RqZ6m8C:{pOZ"|HP_T< mTz80g})n’o &n7on"NnT3%,Z ZЇZn y}r%h3M,šR32 pw‛=/Jxc#ޠ*tNp9oOP&g Iqj֝wY8C΃Ӣ|>؍jP='c-WxWTd^,q&CNJWkzȴEî'+=! U^kkp źHg_(.WUf}g[_&fφ<1 P,n}2{|zA:D/"["t|J;PuU͹-"Ñ:ICcl$]t4С=>Sr-'D =3}+\#O 6t"}\8}iHTĴ[0'HȮJ#-lv:6g$sBZ+lruskv),r2bs&G}Z%P]Yl * Cgmb W=Y6tM'!zM^NaSEOt&{a)*4I ͠sdcIHoiCtsF @} ̶QmƼ0QꄷA㣪4<qѤ(@T4dz Pq ugoV~|&({jN 53d T\fSH9&d \9)qsbȖF?;M83gÝ.&"R4u+80dFbDSE r59[>pҢƫl *s~(]`C*LhRVC/jЙJ_Zو1:?1,B:rpo9%H`U vg9VK]'+4dRە |\H|!(Zݮ~;.*L#i\!%z ^$?Bo 7Ԃ6RXL|_.98QbgqB/Q9+TG*m_`c黤O]Pouf%qUU5ȗRl$1\*|*Bx'4 ˧lz8.Ƥ =VC m,蜏J;0>);T_>:@!YX!- VOh'a9n͒ZLv% 6Hke\8D=,a[5i}o`)>x.܆6 "2/4go .7r$VD )C vzYdϥfKp_.!|=hlM+Q bd๓߭sb Q t~+XGIWc:+G+s69,>Amv i!Lu<_${gT_֪  :OYsL{ nPP95I澸X8sy?*(X(cN5Fv`~4 ߄hhl"mBmIK$Um"|nkDUWϲ"D \@"Kà0!w_=N'c3XT"6 j+#X}K @cs<x!=H9X,`"%j_`)[ paJy>%Ii٧p+Ľ`(Xr׆oI胘99w2Q|2H?2ROg矔`eO 3i\Z:=OsŚ~kA/}w$%3C#P/syasid.WD Zq}CdkL8:TurMz,^og tq|ԦP8m9EPzv23s1X:`M= s2q"l7nRjIGWj3u<3]U]mNu [W1fŇIUKh=$U ao<@9Y4q%^o/PbG1^1b6co~ {b5BɵW ,]/9Aոb4FwtO)$ӽ-Ӕ՜~(u\B:) lad0ɣd&4嚄MԸW|:8x(y?nt*JAчhIm~Oķye2mmsb!z!s  4 u#+gސ5q[bH;6߯QʽSSTR ޮRK\nyJ[JUYS%QM5kH1Nԭ 4O_Bv@=/_xC 4:.!8gF%Y綤Z=X*xyEdFSev;d(:$P#̉akƒ H "* ިx]SE}S.eq%,e IґV>-$!RAo:l,URs\VrN ڱJ_xsז0@Vs.E_!{S9rwI&ȘK7M_FZ sQlct.xc|QM[?@_X>Xԡ%3pM0~mX>dUX%s5iϪ|} E7=\8 -ZgL4p鋧p6dz ?PU4Nv ~ïPY:2[ {n,r9orjj˴<]$7úgE}f}L,̼߿ntrn@%$ӰQL BSz:n[S-lE+ج+݋~rPօ$*yB5<Ր2K™Tpf&::k" b,Xe$'bSܥJWb6wt70ZS(pIJ0)ܛʬZ闏u5SWgI {!}`=pxT?qZȝG%_s觚vq|Q/Z(۷ I׎y|_/ vܨb-ѧ'Հ 9W=.: L)3<m2Ɛr<}*_Ohb2Yvg$JZ2_;#{? @ҪLqS_ @:@rpM;wlׯ,QK<*@Lc9wCY] ˡu/ϕ2>Pגm/V95u5خJ,? t'ZAz[%.B=J!r1F۲-蓟HRq7^mI6[mffC{+@d!dO}X*]e%^D@ 8ؒ<~x BNVk71) jvܷ#˓2/"%yb& )`.e 6F8/W#풻^A{n%8w) Q$vSlZ۴:._c^H(xOp# ^wr7唫lcw N>皡>Etl՟a%%l\ܴ}mKJ3srn$oLO@8>IFPOLxTHbZH#reևBbwbiEp6瞁mn]*>}vU./J5^W4RɿOLVi^TJ7C+#e#~С?&= YPy,"!6͏:k*jsd?ӮH׀ϗrX-ͺ'j1`Or6]vZ,+Tͻ6K Ta;A>vƒ5F*tr2j/i5K~CP|FRSPvtBR9T,g:dC%9J7F!\,P%x5)( $4"\Ri\E+X%'%vDWb fzISP FkmMaP 98{9+TFIl2wT! q3:z *jfN[=R#|*c6/ɵA!K 'H'JF;>?{i=H4[8.*iy'#N5#g$IBeþblv}a 9Ҏ]&@._'5Zf'YB*X$[D"" +nwIlILFڀs@Ekz!ceiOBLф/_6\ExꈨBdOmFb0 afh7$5}8 y}c&NJǏ$վ%)s>ֆ:4lhT0s?u | #A7@B2x7qg'IvI(0 LõIue RrU&cj)f*_}8MԮ] N˺~P#)d(Bbd^ k^ ?L-Ho'`2ފXs7 LoM tL4D. .!E ^ZI/ܲ,E* g}obV<Ԓ S i',QΠH$0ɠR-dP' I;H4 p*(%ESkZSzڧ ͕wUy`Or ^H{}8DŽz;npZt| ߡRz;:Z &O8UjlΐƩ1M.m*ၯTq_"lnfJrQ`PZ͙5*;WsjA!:O^u6oDU[3zfL1!#MpXV>BTt&`EjXCTs\iĭ eY)kW' +~(n'&NgCġT]+IcZu\J|6o@#L*^$P-rH6A?UԿWgz Q7fi~yUw˷H~Bm)x\ˠdiƢ$y?@I^թbUVs az`la :yuMXm@In#-xlIA^KR} bv (-@d:͇MRM"@k'*̽42!5j"vcT^x =q=:A1G 7&T wBg7yp!;/3 r7-v 1WDZS/I@01unng0{/WnJe+_j-3j3UMF?YМ 7ojT-v?BT!qaA^;JkG#f'mQ"+n)Xdwáa$sWS)ƕRl>n!Wg$u}_ YϚ$xRkwxgsqeSqk=(\ۖis<{\E0O(39Rx|<`AnY\WdzV[.Gp'!,]e[fED^Hu&Bs Gy0 RL0?;ϢM^ɽ߲37tylHbw̾yx(qFln{xY~|+qqf ~BikdνY/TkA5:UJw- Jb1ǩ8ӏV 3muz|eV1%ۨr-;BFnZ>/m7pvBm:YN E₷m+ZVx|\r:n.xlkg}D!#S̷` {8B,:ϋ E _ aD{;/Pi Df(Ҫ}ojxc*)g.E|vچbGx~Lȗhd-OJ[#hRhBڰ WLL 0!9ѓaY,pM~}TF+z(Y-aԃIfϷQٙn]:٤`X S\г>$&}Jd ,nU7KcgdX)bEm:ylo2_ ЛQ1ÿO1{c{i+P2>Xz}7dՀ{ֹ!ϑPWӱ wdEn"GL`qMs'Vb74]͍I䉨"?+gtpVEoe)+*V KT8^]0K2ˍ/Ɂ>iDP ]n;EeU+3#&ߝ^[R.m@uX|(Ĺ [F 7R*WGiÂKf}=B;uAt85u#]ͣkCJcQ~y \DTD֚|C5NQde9,Oi@\*RS-T=ԡ~mq/1q!ϓ(IqnK*A kX:䴆ښ'ԝwvwॱXTs;:tK08gIdqsf, {wج=8ڙrtkI9Жy w݀"oOi({F:̲_v<}:eQ3$Y3ltN 0{оГlYtR5XlbvGnEAEUud@0^Z=l $d]N+1<{+;E5S]udTPڧ΋%m:۠\hxY<4^a))װ %aNųPյ}e]l oz{+{16#q6̝uM[3HC[=3&{[7ʪ4'f)y;;~cppԂDs3<% 2/cNBDZ"mmHjO 1(L 4ynC%\y1NmMn]Pbo/oGI!X+eH>hGz)9Rj- U/X-9+6T[ vĞNRkBP,'5+mbިqL*ѥ- u#-_N;?$(~`e@0h2mGM;~t8J0day9˂~SaO D^h]`OSBn.w1G7ݥa$!{,U )uyh~PQ}?vh7v k_=DC$Pcf?΄{ַ'q91D>g[In6la}KP"# M)7G hp(XגuXNtcTY 2ӮƲ. bW„#'/ohU Vr %[h_3Ƙ[e',IAL+7 Vk;~ə#dBǨ&cK&.ki`1j=P |6h6mUkRsEF;p2Vޟ$T({';J$'2Zp ;%Q> hrK.>]"iXݵ*J 0U(_&w lOSGk,9hl*$I |-= Z VKp`Ph.qL@ķ||Xtzv"L;%04q>BAxt:r@ ̫BQ)3 3VI,+2SU%/hJRjJn2# ^ x1~e(Kptјl} bCh6#CH_!T4&~p 71Y@ŶaoVHOrh4tچ$w Cʼ+0XB^]MBL17!J!?|q|@ȋ WGtk%C7Xt0eRBLПm9hڿ_Ok<6uD3B1_;-I0S/`B'ٹd<@|Hku*'`^#e6u6HMYUo_-Nz.[E[][ mmמ .fm&^JuRЋ c{2Tnhc᮶gox>5D^5DǗ>4X@Eمl?|q+#R:\BJftF ON}r 5o:}94Z'yF4*0I<'}Fn$ysrJ>( 1c?tV:R0JKsq!>%Xm2 '\Mx#ئ^D*UG2A+?c˸fxQJipE&3x 1f1jΛ+v|0IhP& {#gʤTrBj~]^5ںK׹,F]u'Cl T BbB{GGҟ>Y8 1uݵtypbHF&itD)V[=TBݑ,{0(\ԨC% d$z{V#oO NRBi`&ߡ cA!4ǃߴ1V.ɪ BNDP[[e^6MHܧp'q߬$GPjX x*J+))BG:7HɵA3E]]Z1F$\C;TMp wĊ#t\a[q<lO@.ʙig1< <|N dS\yf˕ei[3,Qf#y&X]dmEw?Tе 0얯(5rեՕ@uv@6!J> 5E4: U:WYgjD[U"(8vG&UE1 gs&'lmQ`M@W+%_)ǯClb,tLdü܎G{WGB1H[4\LkNv(oPd3pOGF kVDb/SMgI=A|EOСl}fdXDD+/L6O1eخÏZPy#Fy0:xT_b{\=]0Hp&Ǥ{M#M~.tt fW_B( DD:q̥ H?=]cy`cmFWMRP8QIA:j3U>b;WPPmKm\ةqm8Z8vZ&Wr>AOƚ|cc8pn죦)[ U^M_qϬ$ԓB`f L; qI2VMu1y⮆M׊_Q8; "RMn[Ő-{ߑgنu'Ɲ{_N*fg[춥e]`dESiPA=54Le;.,%#F8g?k vQ8 0ts@M-l!OЎCpsN96!{UƋ[]F=dҽN<$gCF10ۃ.F\jONbl{6+F ףd}fflw,]BߐphF(LxɆœqmI֜陃~mwWc2u:GRBWiI,0X[ ':=cVڔP: r3䣠H+:k~NZȦӐ[$HApRN$7,SKĞ5lWdYN,qQ9[rj%(+#m =E{ x觺+zvI >jj{t]:狽g% "9ء|_3 Ϲ"q.J߾^|4CSj.Ib_ͅñ*sN`;7%xXT:桾y@McqjkzB3. .fʑs6_HKC17ז$/P#:$RӱgіE*A#)+J w_\K (c?N$eޚݿj<w>^'֙3ͪb8aD)TG0L#:lV>OLʕZʶϩÑҧ8Yĩ^u\8´{z/k*kտ#x#$Ih͔%Ok@εm">D!O"*`}'m L鈄UeDWiO U 3"乙:EƦOM6՝~%؍M42Qוˁ#Ue.ؚؾ59<\{N3l|DP~ al_GæƁϵMjjHT/8>嵨L.ɹ-Q5u'Q|Țɡj'4 >X !A bboLelu);@ U԰;?rBN0 `qiw1MoNuS]t{GWHDn&;.6]l~w>f2PwYWFw6[ܗYl$AvF3ltB=EʱϬk#-n|Ncܽ1r2*i@W%B PvG?#Z\ ;'UP=A$~ǖbbgnGedx7՚Eߌ]m/^ʲ]ؕ6[6+Hrn!_yU!%q$L?K|)da([$P#%S4zHhYt`@'Wya18ZÀ'm5m$*A< =Hh azڷ2j;F=Y80DMzlPp3R__h"~u S~{ỤT/v^lrwD%BŐ!pHRW)ʩ:EfzS_2{12ИrM~7ꃡ2L9cS[*&ǃS]Qjg908GD~PXIp3s[P'A;eMV.QZ"J(88NyQiO#aЛkyD:!x;=~:UvjHeP<^bBچENH՛6IɫN?!p5ת`w~.ywx$##×[J޳Jw )t.Ȟ6ҳ 1z#Y 1Q=B@8췬+ΚXre#wE N͆Yn VfzٲINPX{vMx*{́2ȸ[CG\]ˆ'47W{֞tq_W%@{U_i݉}[[ɉWsZ )$QsYADCĭb1ѧSIq#C 5፼GQ݇2E!Ȼ^ Z+6/0; 9F@Qpw?zí@dȠZC zq^;q[CK]w>lz$>Rzib8)=\ }ŘdJhRBl-}@U(ournʼm'bzM</ ~x./&-+(UjVU GZk&jTGJqIuQxRǀJj x0s~3Kagl9%GR׹+BM+tEC֙&:tHy{Z]#a$ t噪8TA ؛re6!~|x"uFO+o[; u/ |a nm,^{F&CxfJ~b}aud Cb[O])8ջtHUJW# 81%h8ldz|SaNo`y!ӚqmPĿ!ZBgm[ + X}{J\bfF(PqbWW0D|?95Ift߹{`eqi 'oO5ýS\Of"ש@> AtbOD\( ]+} 0ls|ck|<7}.J_(_sOm(6̚אd7'|)5ۛQ}tD%N-5^tkE&~])l /u7i!~5%h'|p\:H!t0s3P^ ;bcɢV6,,qAU42(חڑ|]biUO'Ҭy]&N&a.B1eQU:$ muB3JRhϡ?ɤyv",-TS=+aX M෥#gFhPa_+uWI ;!@EH Θn1YOhB(0ؼxl?.K|#E0=ҠunWBH.PAވ%g-],sweXZG] !j<={`6M]y09i` -,`s=:AScidZgn]P2T }'Dz7_bxVel@ӀoT'|]gdS؞뮌gw!8NfBt-@b^-nq˙H3&%^-ֆ&响 nzHȕ''_P5uJ.BD%TCGOWWh'G6\a4۶Y<727z5ki ``CǸ~'JUUm>Á߁3ZO} RCe@!ַԦN/rx} %fZ,uIa(&ַvS Xj!HūV_O[ .{KqKPW(B䬖^m:gh9i<̛yC7Tar͋!K]iNj S9!Ov=s~?+WT%4ע0u;- O ȳq#z'Qeq,([&m  0Pq^ٮ\q1/PO,FPtGWlZC/v,e/} ۈzHhBiK6KđI8X 9Ʈ&w gOE {薧"w.c6 ͪBoZQӴf4\N} ҀCI/Lm {Ka+?BnK\8t5RUlqsZ*m)&I/i+|y\^6fX- BHImHCs' d*xe0/^.5v8=ڑK93 | C?42՚/l&j1;P%׳O6Ӛ*1;@]eBZG/H:eH仌A%Ò9oɨ[&H%|阹?.Cu*\(W)s[epW C!xY-a9߽6hٔO#Ozdj69wɘ>@EOMV?@/, cs sVo'wLM-i3`M/q;n|~u|!?d{k"]1`ك(g#ů]D2dy+y_~`pb2y&@^?[{ *@d@`*XwoFae[_e8`T%=s2 t-qOۭ5I6MrJ|ww!P=4{v4EcgBΜT2G^[8;QR '\|8l^o}_ zx)rȊBrZbt˘8ሪ:ܥ 5=Pʮ]"^Cp+i,ϔ?ͼP(B3a%f8wqs{95z݈ᬰfڰ5D7bu4hF]ZYݏ1_ "]uFeK!t,zĻZfk5!Na;zh!15wf]׀W\a;llfI7jz?F}dgOb_9Pre% eZVrZ6QAk󝫊˳~g}嵑 Ƀ9Aӣam%F'3BWʸꢠϰȸ!JKu eŇF9)߫1,0,RTX X+Lcz([DN5䤁R놐9*aZX QL&Kqj_kn⪴71ԫdy :+p ,茺'vXe-LKiGVkX|!#^y4 ح₸lҿˌgD⏂lJNQ4d7>XBWS,+xrǿ8W,HK$Dl-)x^$ >*%u_,,H#@_Ӄepl"AZ/kjͨGn [^곁o.YPڃMb݌F\9 >O#oCj;nJE qLOQ~caϵңJ v\1 %f{z@1/E}H)br Gfδu-u{fZwWo;͉1c͋ޤӤ&4}ˬ;6NEfe,oŽ CaeļZs x=`2o |cYӷ _rn `wR 0uL 6c滱{O[ %J59}h0*릛- M|왡&]ݮT<0tN틷,UMbb]v봽%7A~v"Ϣsh{O`=(|}1~  DUwqWG 8T(6?X0˪_({.Iޖ0ѮlfFZBhz?-%< eqFX$RZzɆm16JңjÕ*A~56@@ rcވu@7E Rz.+j>-1^<#:hsפܬ(xu,d,\2[\cK1fxi%8(8:iZQNGegQ ؏/&~ö!#R% 5ժM&%wD>5)re9YH莆N*"9s-&"dG'0ul򱀶v \kl َyj& `#]崋:ivzR@7w8*1Q ѻ zT>FEWF! _jdLĨ3}@ eR1#0Ͽx6 ^WY~ ^}&rR 96u\Sa;SL*^ aFl#sIQk٫H2ŭeƛUf@o0HU+☛R&.ZgXa%$kshԂ5FG R_<X:':~3gu\7=tģ'>>?FO\Y@%kK4Rw.U4H U^PpYfѳn8kNO,v cij'h$aӛUlgْbҧđOk*_l:5/0PH耤9')#vϫUg o.FJߪ IH^pfWLTԯRkڮ),y cyşpy k[LtfgVtHq[3)=K0P ġ_ƒ]~̋eӗ#Ĵ37ɫK؄0rl{Flb2{eHml*rS%6mNBnƨ~ٸ˨{GYgE"Nڡch3}c@ /+TUU`]wc,=a9mjX :zX9DSV:UǗ-pM |Ydcl-ܟD#m 4+ӄ}hs37z]O73=GJzI Vu[ջzSUe$qӚpuğuskVR.ώ?vw=\*o6lYJ++``ݻT>15-.)f4yQK阨s!_6]\5,?q~ֻ =۶A\VRs §{"I!U``6{ŤUPaez̔ urϹFiw~~InaN֍3`zμ'Ƈӕt5eq ޘ *NO$rJ |uw}v;&XPW 19z %6|,?t=@i\%r裏7%})`.IDL~3?Kjq[NEc6}?sz^)-lB΁g: N?t YN Li;=؇͈Ӑ6jԻ06rV722$!ec&ߌRMVc+IG}DQXI*WGk z3bk<~6vF*g-nnT4s=:둧~]>IsvX/YjD7rֽۊL8yuקo&DBSYW+ܮ suM#1, L@i琹,!&vY_V~Μ9OaIV)nwJ(q?'%1s5\)'D5s  S=\9gc|VB xZ4N b5+D "ڏBfa}HQa<˫~6Qn 1=$j8ۺY\tfR*$kyyMK #]FjU*]`L̟k3Ic} CXM&B@]W)`LaqaP 6> qTӁ-b?sj kI_/ expm| VH_' G?{$6PcY}0r *(l% ]Y;Ⳇu`I968gs6xDO#.KS(.°9ȓA3uήcE XOJDŽTdT=J@T30KD. y4)4c;2[:5Z{<|s@ӓ^ -_ SI!IK`7՜7B25{iHWl㮧Je txRkMFܳ,J8J| 26WUqKV.f{C|xԧ{΄$osm&;ݢ @9$1,fœqSkF7w4Tqzsd;TϗQc@3IҊuBGj4PMcZUamtb޾0toit 1Œ7m3F= šVs9:Hꇡvf k0KmuJn8UIyap>3* ˏ^9xo1aX۾Ü>~ۊL %jiV[?o,kekMMc3j@P:vppraQ+qCƛlz<{SUv5H /"T4cz^u%::LƅiMf_2񃳄lZ!FUapXW`%˘dB;HPmFd Zƒ̴bQAaeo[}K~,G7n "pUJ35/[#]vK(3 Pgk)/`n,1I`D$hҁy=]vKޝ[ѷ@n#-Bϯ @}%B^Yhp1rn?`l oӌsbEzȐ_8$\ ڸB$;6whHzh1 pWhVvV̤  HB 1/#,ujٜ1Rd_}O # 3B.\~Jy`_eaMFvhE)=WF9gj"2 >0X ަlP*j޽;Sblcpc8O@==1ɶ0S6ee GFW}`裑h՛9d(0 G`E[+ɲ>5NQ*;8TTwkgRwRKϤE%*feXm!4eAVВ7S@z/P8 Q94B{kwҿ2OL?)F#ry=(s-H.)Uo-Us%GuCl$҇Fi1R-7aZ] 3z +;=G=< yNy'<дDJìn_c癌~=-yBB?f|{nOdQJN[$50k;tۯ>e!Mם. $zݫ5.U\IgTd"UCGj2X|E@HL^y 9&:=KY(8Vhi&RƑ ^pBҘG-gHijPL냬tAM/:. m{=*FS-[j uoo==zHqBO܍UG~!J4^SP 0jDsy< ,r:g!z^#g mՖcc7vxdC*x` ,^Q2VN"k: pNMr)PHw)ԗK](5PpcmmRբ\c ]c ,^%:r+\mIm{-FKT I(cpYJ{Trtu1|~q4칿t/U} i(WUC.0cZJjޟD*+*0 G&j&cݮ1!%u)\J а8ti  XԫSNm7H A'imTQ)9!k"݅_Ο*x4m)QM:"Ք\fd]H9D+AnA(L۸ʣO.yD6 0~3jʊC͡@ry"XN3?JjMH)N h+337sJx 9okܫ3:hZZ7W׎WsSg3쁇&n +hIhBD%EB-bFjȏnC[dXhe?SݻoAn/MŤ݅U2uQ|/z[F`۾d s2AcNyHֻH-:;[RD]/Ƴ f[I voN/x_R=?i"1" u3hoWxze5Ux,?^浀uo\ 6 ,_/f1VGG +4`Y3B+5.oh +,\: DJZ,!`. P֣˨&$S(D"z*t~"A@0:b˚I'叕m+Y~ʾ2Ogي6̐U;۷0jG4#Zur~)?4Ң3s𴎪|;/LN4gXĭ!hAL4Ӟs4AAx,KV@T 1J)[dzஶ֭z{kKi: 6缒^=9iTg6zFcBS@#%(7mm~\l!KXLC֨kLɨ~d{& =9׵ZSN9=~!)ι,k= t4 eJ Evy?!V{:NS7U/ƪ0+lmxSWs۱ Թ ˿KG H(z("$~b' &Ua)ϔ0F.r&)Sȿilr3l# GE#_`k<P~9Ob2ŒrˀrmND!|TNfLEt gdgh h~d&҈, LO5&o21ڮEG$70S|__ sesyA ce͒;Q-ςr3X+o3ptb!Yh贆"H\eR^.$V4<e\mb^ [Lm)NA/uPMN+TLQXxk2&Yb%G柑XF_9 S^'T+~!%:9uXe/ͬXP[H+@%+A-~@ 9A50Px̺/r3PXރzpHUk)*F k}$f|B NdGoG'.`C-8D R7W+&lygh_'C>vhW;~x;*b~Cπ &yb= q.=ژ)PSF۰">h^?i~Z@#LMXQp9.DS!?2'Jg \2vkNƟG蘐*{[fON 'W-_v`}61E4v/y.1uB2?&]"J"GKl̺ )O!GQHBS}bWk!UZ٢rM.]7ѮV܎HB( UmK6 ץ^ .(Xu͕bPԈX UWԡ2Gab d/MoKI$RH1jZFWGo<"p~Q1.g=a@רKF< *6Al]lZ!)d]ˢx1U#~!:ھG10 -} wDwb0ØqFsyKpXA^0-$bkߴ0QsJ{9yۇ*zMLYh{-j,cL]#9|׉w;Y]Fn# r{ї5b2#ȈyYnm엽 6105<|" =NE8ʷ7 +`ˁrIސnO$G5 L>7{$l> )8Y6_*\&;J{0(e"7l$ $Y$[߿sNy+ü%M"3L[By Z Zx\ar[Dj@£4ęR< =3c2Le/{ϓE y|\D%ݛu.B1+)EwKz ,Ǔø#:QWZOք_.:ӭ[4 ⇦-s]xm]sӭt`_\L#J~~t vloϫ5QlX yB"u@D\%+"Ir/kdgIć-bM ުG|*_܃ v-DZF>9[o^{$a*n.,Qb}f.'ޭVcyxՓLdHCI\ GTģ.t#!?Hf & WOCOܹD=RC ]''bRsFzTZ+tl1S [?)M!(5X#&H#@;%Y{Gy65[Sk꾰IOYx=XHR]i[U⹫_+&%b!&­Λbi/@?!9a; U :I~$n=%WfQkh(Xx GYx k3N3e32]Вc7LPUVSn1驃$"Rtw.SCo-%v(cc=i:,t']yz)C$.VB3miNƀG٣rqKǢ5gOp\;XA MX A5Cie}( &u#M`Q, >Tri+U8̠zYkkA0_,Z,SCW4/ARj:&"Su r6v1Z!/N2xBssԎO-ube% iW:z)zelax>3hJah! \ vT7Y$uQ=im v5·х&FSEesu>JMv>k~f,NesxX9LT` iB%chN,đv뭑aS[`^;vAtLZ |NI P4]BBoY=Z">l6>Xs,器.}:Z <W1XyW\:= R)A6]MYiXK Bu@AE.uK J~M<<%K5찗(dj9٘2I0N]J ,Y}R֠ 0^1 eVk~GMFp$ V@ײNݎʨ{4*a(QC{{ f~{4î&S/I#n 0A3uܐ/@{?(,A/^*&i*t,ʱna`3"rc Ns1Լ\F{TnuTzuIRqE]6>q.빆wÊ]s+<n},OaBiL1?{dP0N8فT\sV͗ pJˈ2{d=,%Vm`jRR"̹Tl\A 3yBWႝ?,6ZdqR}`N"n79 O1B v@,1$2BS:Ici'Frc׫qN(.{}Hv\ݱ>/ήhvS?۽+m vy„N?E'^Sw`(w(/1:|tA @ݐ0x 9s5y\~fK %֜M_R/pZ59 @ݔT ̻(`YF,AQSä* w Z6iXl]ߪ),;\X\%/d2{ uz-@ࢡoSYr afxDLY1wflh85![=fvSVsOu'' \9 zm46AF^2#G`W,rۿ>=h T}?jYe?'=x.$$ =nRزl7"F6^ "Y.ˢxـ [ DzJ鋳Oqs~eW\)Ӆ=gzM5DN0p"_,ߢޜ}.Ii2z@ Ac94aa8e<<":4SȢu@!o8E@v?-6g PVV8䘽Be'XTvC~i{k3U#B""9Df(mRtr,9Q#5o7Y瑬tv]d yd(a䝭R ~}fIwG|ˆv^m阶|3ih#WA`1"hb5&5h ݲ'gN.1aV@BXA6,YY(7mS9r|~Q*6e£qd2=vVTw/g}sv/ {I\iL˛wǒ<ǰp}}iM1)(<|=6'(Z7{k|SrviZ^#jiE_q9=F{\{d$ b 𭜾:o]_]`*BoOV|^YZ 7T#&1ƁN=B0?U'^3B=nDJcTsKxFc.,73D'L>u"iyxJBWg+x@D|ͥq%xtK"s`2( jФn2T c`?W_IjZIri6x7x,Y.@6zTh ccߞ&qN<Z=+eY׸ ]Ttɴ^P?) ̈́˲hNt3i![(> |\?ٟFN'w̛/. ꗑ@BY…7K(% -Gi }uɾljt{X#`R+6>|G:eǗ(˜{Y?j? a%Au9j Lj(+Ρ""ᅪGb赫PP(* 6yzl&ևӇT1RpgMYʈR=#5yܴmzuz5$EKV;\h"TIt(lГq7<+1!!fcH$wʞh{Ѓ&NfUڇI ʇxmX*VK Jk,>C8Eb6nOI8~TQ%N!PVLP;Ow9nk-^No- lk0rrA. %(|-jAMc<UaWb# ,|7T}qY"Vy9Zo =X  5_=8ẑqCHzlUhggM3`Jv0?|x/(wG @#"}"v2f^'K}N'MUdcI\2R4e} +*9spjs}mG<+?zK T~3qBpTjN}}=[&(}ǯ5=CO9v1U%VZDLrbÚY:3|;0SDGCI\a$Sk]Δ6A7PEgW8#F{$bc 0T:ԫnb0c5o)S2c(P;!dn)|TP2*LkҊFfPx|)סfd-=|n wVu mmfg8ۥR/~+$:.AegiS Е; Ǣ3R!9< QfIR4"W 7A%i?;"f)?Xt:@tIw:I"{f  6lkdԴZÜg{WCVe傀s0u1+wG \?+Uc_?jէ\'@(SXGV`B'ߵ 4לW 3,0;u&m( t "r\I,{qx;ʮ cO98ңVGDPOzjŵe:'IFYT}^%./ԯ<"k'Ԋ }#ˡ 'b\gGu⃅wv^uPF lEfZ PNֺkFQf Rƞc04HEXB@hlhΎ}!,KvFcpaP;M%O]|uhJb:6抪뉫/y.MG"I$& X>fWDViTt9$UC´[=D1!d́ AV .^0 [dU3 Gi3޽V5֜'};mǮS-6" ei~t;i]- Q+aZ.I)(zV\1/7zE owbƨŗB2O1j/)]vo CgD{ ie6p6+v@Byk.AbDbY ?uwFRz@:7{y.$4@l^3L@]p>q/İ(B"2y!LӐcVCWF?ԉEլ k ,_j;yjJk.o"T6&>4V$Haez8 Hzn( o`f ;V@86BdXE,ZsC;y\C`T}Fo̲P bۈxGY 脳#PmN!X#dUŷhk+ o˚/}9ᄏPp=R,N%W4y/;Aj*ƌBp%'|(QOR 07bHh[־R6܍kP`DC nﳾNoOZXv|PT[ u9%TB͒*W#^Mͺ]@ۼSd2j>('h~@F>;!+b"NXAR62nNNn^W*1(B8f_89_7!;0Eej.ݓ ck[LXdY/bQ:2(eE2Ϸ;5uRЅ})V`zy뒟N 10\zXN~3鴔!X)D›%eXZM1t\_ܤG\sb$q}T䍽9pK) _`Qwn5Y0x! {'UEG3Y[3gh';Q1pTR.%E9"bpR^dY#ЕkW1@娻 ;t.̊v 0ͩ3onGؙ+G bS10i 8SV2Dt#^[ EsȀ W/&ʊeJM\4Eߜd?^8|1媉n~^/sk)mF#+_{UukrǤs>>~~qXɏh˜ :'˴с(U..~2U*}t˱ n6 vy!P#S:Uu2`[T㿆*kNKET}vޝp|s6z;W;X=đ'憘Gl_wx(ȧ]vb 1b)e.X &cHngfu|`O"7]s*n/ÇUqgVT]vGIB"6qOr7ɮ-(]$dREk!<Y ܰhř"s旤h0h&jXEblmOS`Qqs[AQQZtCrA0`Ph}>F9{RwӃĹ(Sm>sĥ$Xyav0F}n pNRz"Ǥ,SI90~tIU^R_豤bcoW _ \./Nt]l܋PA7)q[0a*3lIo};] g[D"K5ewW_}Gn]s#@WVl׍ZY-Bg([ 4Y9ߴJ>V$Hng7z[IPP ]fs'g@Ea+U-NNja&IJVJ9l6755o7~;fr:Li˲d)/0l]DmO3 MϜx&Et UF]Uz^_%\UӸAK9e%1s-x=0L~@>Cѓ($_LˁQvIC3haTcx53@ÛUh7/yS~^5V:?ȷe pxOn'%p_F4x V2OqT/CB#'Ee)'{pT爢?ufO%޴=ҏ@l@bg"ȏf@*Vk2CKu]07`D~afIR&%qAVmg VyHlueǪ$sϚ:|pՂAuI%sg.v%@ X_mP7 Si8oيIwOl2;٠BPf$2G^ݺ : 3 9c/D#G&D5,6li_ː ;~nd8nȏpƵQ|`Bas4盿 *%?=TOÃ4]o1C+V l~-"hȻ08` ]}ZX)aP(2d.z̴%BPFkW!Vcd8z-:V(:mpe)/?ۮ:;_C򰫾V֔ d8\Xo &Z8aPl/j* ˈIZкM>JɄpv! 9$@% v Ip{d-5~dOT;к[tY|(8CAFPY=R|[E!"09-h)""j3xHzhK"L=\1XF#.6XAygDB_y}@M4!f?,ƫ@M(exqފF=!<[ _{ԱB1`*J?о/feW+%i8϶VU-]Z+)4Jx=P{-w9|cz1[ܡl4/a.F͜@pf'¢j$#U‡ylH;5D{:ع$NjPfW+ /Z8He$FfԽ3u'My 6h ~@r"ST]};ʹ __~6& Ds4db4Ej2#WMXYj &I &xw{<'ׇ[|~@&qӧ _*%%$ iȍhO^˾ѹdcB4mm_]U"u&' 4xf Qd8U*CBr'oM4aCN{ c Mr\TW6"ŚxF1Jc#LKl=+ s*?mg#@6?1ė@ܙ*9\^i+ŌcHOq.C̦ 'ߵ54e\G u 5u.܌\K(>`cv%-#h"fYY]OQg3PK~TXӋ}` vݼ'^=U7&f[x"*<+4eye^'/םC I0)qM-T?fzVQhrg'EGmC^czuppf L͔*\J/=9~YH{mZ8 ;6\KzbkV;B6PG:no_]3Ir̈́NMFEb={ׄ+xS߃ U1&pKVO?.`(zN%lȗRHz.G!?H:Y /Ez:-F]I6^5jhMYstNņzIӳ<?.Dl7ؖ,ߨgD xs^)!hQEC5)0UoNd} 7kKz&dߴD~s:~B +[wzJpnrXHmlgŰƙ(: t0U΢Xy+ͷ֕c#FJS*.A#я /dsҞJ &B\T ,)XТ`FU>qїrs\hjr; 2zths7@핮CEQ h@Gz/ zޡ.XI R$HͭP?26s± ]w wcESC ~h~ Ap@ዾnA~^ʫ &)~C2ޡ8j[i+Yodd2ڗ:=X_]~xȯݖ,js ˧w}<,aIDF4n)&?+#Ƀ _WB>9.Nj'ҟ15?E=NJfB_}f]wywPؗ꙾zvI"q(~SNϠI_2FՓ=GWWl[*aG!44:-ZuPÌ` y][XIrngtiH"G9BYN@IP?}5TĎeo]"uz.z)d$d\߬ GΠfLÆ+o[tǂ \6J;JḐ*'d.KMeBH 6EL' a}.Z2 t/]@ (e} yIolZ[;iȧAUuPƜn7_Zd-)l[+gJy;Ewc%3 MMK͆65z #ifBrТ2UĵSXۨ!)#پ5G€֟w;y=׻n# |df|Xru0doQ6Iul˨Ԁf؀!sT4k$TS O̲{^w͚+bDA3j)\uVqt1qݽOk} xs{-vlR %-uAyӒ]v|<c hBpl& EhV\V_ԿY3Nc_rwi0=04F1iz P^ J9GA~. _}X]7|=!I"餠kC]-&ڷ nSn{"!1!?C*J$q՝Z~HVN\}Pо84x{B`Yz FT35D0`<}$=1ZkBwM=m] t?JKZ%qFdՏS6H^Bdy@ g9T' n[ ô!4`mVy|O.WױO3ʺԬ;]4bܻGPTi^aof R)pv 9L8v\$ҁ;sqq-;tբ42e=WJK3ߚy繪;$uTZ[ EgyQW5 ki^JZy[ȮoUl˼R%e Mqb+Ys%&&2LɈǔaB^ 099 ;|b_Eu>"QWxTM 'U]&gt}L(iBja `x:cG6+Pf47EK*GlydrwMxhw)(qI9G}? /ÜqPp9,bgC}} p:"/;+HFGh!95;o?;RPKSɬwȏjBqر=AAz LHٔNI9)6ݺc7E k$H$!h X9k~u3E2|>a9㊀s_3oK7l iU$WԻC@ݙ~6Cox>#< %m@>TpgV a/>+יyKG oE:(V-_f!,n`e0LL.q8`*L+׸T fm_4|~@=qc!bNA-Vd:@y#m 3q'N-nRy,d3 _}oMUdQp#E[G7eaBZj#jc;(en/9" rTK -]JK^t)m1{hmbZM9K[兟Шd6!ˋBl6T; _F_Y ,JW}%aAc;6 LXja"fd|dkb¼kƧrSf XhhI?"OPԿ yMmIkr$LL|/f.Gj.rQVވ WlVѥZ)[evp#ILsq`LB5]htץ =jVyM{^* Ͽcؔ+?fe,|U=h:v2KZij 3kƳ40 M,ܓ@!\߫k8ü@#,)-40/{9s^*,, `gٛmImԨ1 w ;NjV' d *-,\ مjhs67,,;N!;# xr]@|ș̰Y1ZP9/rJ9l$'˼@Y5̃7)>-Kϻ+ W h09ʤ ÷][U9/me3 !y5Iߤ4)ugUnrCc\@mN "d gCE毕b-j"^!EȟwɭW$ m-=ƒ0v:yٞdKF`s}}=RuLhொ^?v.6]T45:'gT<5jBY΄j4JzSql^J܍K>0\׽pn7UVrW`uvF&@sԯ﬑ ]/~ Y̡;ܶ䭡ۦp%:?:G=Dw(+.J1~↕cWn\W8tyݹw(#$ۅ?Qo:HҼp;}ɳe+JWOgpb.+VBdwLjL\KYw'BQP/l ҠW3[DRR=1FOe B_̡jvvh+g,&j1eN z4ѿE\Y,&5/.LJY9\5i)颔R+K%m%JfyJwvMf@ju3RGMp2`¿6zm?pbk 2B$B gUZ iв/& 51wcJo᯳2FH`2Hw,TJNWcr8`%|-ָag4#c=K`@2˲"?pG%TLo_SJ2B0~:: 7+?zY[1:kkuG=U$BݿId^G`U0~PEp:3PtwЩ=S YB~su(mhO÷: 򡽩2󰆚lj%h_Hf*:{ABk=ُ^;#l,pPh(|!6mS 8Ŋ2ʟF7r{9@:[E^ǎďcz6LLiy-֘(?kdI7 z⹻6PLOE8*k9N=NV!9 ̩Ɯ8E"^韑(hu> gÌc|TSq=ؕZC>f6wV`0Y|1Bձ1˦YrGiN8 ˧C4uw'KbU}F.#į4>%N4_z%BsX!+e{D7d.|S@d@}l4#d7!m]G*vltyC ">c i03era_Ӛ42kO5`'0'hzJvqU'XY_sxzZUFzgݍb<.\С=Q_it& j4W߳9X^5%Qeq%iÎ&aDq"̣INoQ)7vy~ 2FVVl;A0rZ&u9,vP(KRK'Ûi0;JőF٣~S6BBbk6hMꃸ3 A< :B3-d`;u/Ɛ-Jٱ gD "~SY L]D(G{XJT]/@}29ٺ H z-" Рb(X2*(nPh ?_R)q1ݟP՝Ӵb럚>1v5nkB$NRMzj\>W`ͻW^ѥQAxWWբx-e>4ǽƏ(ݞ| ^)_B] [yؽM3T 9J('{z߹raـ`?*Zs,Uܷ_~iir :at1#=b̀즱!}Uy6zUasn2R9]OEmK=j'3KB;|!KSd(NC!@c'U 00jKC2SgzNɈ-)[na8(. f)ɟer8--䇓"Vqc(ݠwq;/57Ld )Kٲjی%.8be$GC8F?wr]5r~뭘)d}g|_̨p.lN .~gL_[>, ܲTZՠn~ ~ms's\[MyBTD҃qZ9RuBrKN)~tr|Z]Pp}?73_bQRvIS'_T|.kWU-isy\ 7hL/b鮝q9sJ9Lq#+'hdsWP_a6 nWa m?Ah?OD81=X}>P a6m @F5M3*av$<VdBо*4~L44 0 ȷgEY~(~G,HzGtk\*61ou ⽛eCH6>vpnQl@\?muz>uȆ o D\=hڀeo-&롞 5M7j}ܨt{<|V1VR:B]&VBGҟ5ٮ캾!^Xf 8<;3]G8 \ġ^Mec+C3u٘o}B` 5-@l,֍OP<P/ 7R|bomy݃{t&N_4YpdMnK{ "hlyIgy|5 tRw_6rY[%_it%mlO/lk@Ӏ7qb^Ig$LSݦ恩,L inɢ](tU K+Q%{{.DAtUfWLjX)KHŚS^<F[R>f#y* Ac&G M/4/?wV Lc[q vzΜM{<j%`3=ڵ;2Bx49ˆAuܜ*sf یV q+bt;Nt;NS^˧u62̲zUQB7A:VC۪DkLs+%vċ]ͣUp뵐hWT̆kx5lTSVsM`$|7~x~u'!&/Қ24u'?ZL5@N'(]0LU<ʖ?.0<X5l`!fly)&l-yE G})j"*>RUEA.fkR ;PNR=<(`M:jRЄ']#LqX/fmԆ C_MHi㘔.uޏ_-rD p3ھD(g;V B/uPU;cG~)c%Z(B螿hYvu-vYKaa߿5#:QrSS?z=EG0:Wjk2 N Gwpf5Y1"om?UOx8BvpW>&0 JS~b ϼV{R@/l jeN7wȸgWccߖEjv@0Ο$0]d5# ۢ.V\N)X6 M`IggM&QhL7iDfAdl):(9BɬlME%Q Hm5 V瀑d;)~xU+}ek}o / 8B a*x)cOJe,gA`F}*r$yQ*R6hԸ/67rFts-#8z}h ]KN"mb(֏!lWķ>zjq)ӾV}L:oa!4v oʏۊ쩣mÅI=q|]PLqAG/g^!-%%⍨IB\/+uH_lT+*Vn=oI Bx$qd9/S$RvoGd _ j`B`*$MěB2G:uk:r.'C{02ځ+V[CAl󦫮223L-1=|ߥk4QOB,ACQ5ɣZ#1i#-T:1Rh L[x r6ǑceYщq}Tn+Dg۲. '#l*__M(Ow8OFC咟0}@ Ac(Gp}S<)m坲{y?}2c4>B/̈́Kwlu((">uiQIH@d?i!}1ae/@,;jZY>P&RVt'_έ?͡q0I7#Y[=ųN՘fxPJ|OVI't_pАE"QƟeW؞I-_ӥEVC^-u:t~SK4uFWeS MAf=* lpͶ3xJ|ʼ7fTލ|- Jb:}Uee#,'VifecZ[|<7qwYT]qZqrm`M/QFb"C>57(GzL|I='| qVMGdqR,pe B?QS3{q^_oXʠ$X*#v}r4BpȻ\Nm,nI.^ƆMV\0CȇaD"*Ba7ܹ񲷸4̬}~4ݎ3>bd/m4oKEGjZ.,aU6CQb~6 uDA@GqxQj7 GMRz>Wn{Bds`Ph/\ r1G_:D-C٣NO0ne}?:&![3 kSv;]4'M\lNW}U1YJF7=#1hPh[*L۶C7V&$ָ16'wk[EGt͐#jZhg`3DO3U^%&+Ĵ |^y{ Ls5$2qQ-t(>_2VQL"pnRe>F1 8Տ$GC8Թ^gR\COA&[xIQ3 3 R6(x9εĂH_bfnȹ{E^nyًA[)Mw #}|eb,}<稤klAiMYTLv FH+`k:?^Z̈}rEp:<_zȯ}Dx B#ԥW) qOۄubuvird^|0 :Zdum?xX\)𻙳E1WiNBZbX#fL%zOHHj%-JIdƩ i+/_͑;9˙8Ib~1t zJw!ĩIx6+5z; x3yAqځdלJ|]QdR QI^RV[|RmP]老vYm}CIdwZX` +Vןܢ%j(h¢);R@GT`x5 [>~DװgQ4}R+d1u=VrJ3ޛ Et=RVA9tH9c)לpKR+!HC2{kwp-U: #AhiI*&BKNۦѽd]oWy Z7y'Kⵦ,AMCceAA7"" wI"2}ژr^B?47v66gAw4^(=^';̀jp-nUP4RwL֕^һ}8 9D|idL<nj"׋S ,Feur=Lz†:RV?[yo$sDhF#pQ*ɾiT×uDg*~lXIl&"d0d2chre`hbnaHmN;`cR'xkNAX]{UKe%0]F "oHjE,'a,%$" i2zVU ,w#=% ov.MWV&a 1ydn}4qYI:/̐UO`W_:nDi$+M rjso4wFn,crř 0Wb%]}i*;{$P;fA1CZhNG"`AF?@xS'$;+IaݤX9 x .}ħ7`j>+=$b%m̮w׭`V`M ~j9;71Xk h3b>81 |¯Y@Y >(S\{$갉?S:zJO!=7V4E&E|6b5VA-@R!vߌ?t/@%LPtۍvjvp~鸊V{%3o;L!ǣ'юZeaצE 儍pHn^?R6.k(SAm;]vy^!SL/Uhx䤃 V`\Lf n!:WkV\avCp(q@yCwy,M:,|+#ޮg3WـsY lƇS!A)):t;6t2g=+G~`. r\lIWk嶊F_c`˼5vY]:h0x옵`W~9m׮"+oX0>A9JmIFBR!pQ>PgakUlL {xOf*Zwi'(A$np" ܝXcŗ-6jmj_xDz:S)/Sۉo(wTa2-Oױ}ǏGI+ĭwx`V@UsB=sۿ3-qxЊ9_֛"!,MG$&⊸x,MNKz{)AbE`lf MOǧZyMF)e)8S0Y+d6N~uK/J>@.)˩Xj ٧n%o !Oy` kah>,QEFs7Z"K(5V'e#|dM@K 302FE]dwhSlc|xM.x$ ,/DIHX w|/h&V 'qRyl.l<0\xT6 ȶF-/ ûVyp#NN s/۵<@zG(,bt˲Wk6?;m F /}2&7V9A) iJ)iF]A;'ĊP;HA-x-$gQ,M\-:OE7¬pk aDse|jqj 95i} Kkr/*/њX[1 W@mXֱ&!~l\(YrdP 1p09zGr[P哱]w*"2c2h@~қ𓈤cM2C[*'$Cm'EjnFbO٪KdÖ>BΙ<{736@b޳1DϿ.BCF]SHL}FWn,JhRDS,ώk\mcQ@8<01Z3M" 4 QWNacy>-VAOnq=3t66R^ ~Ybl֯hEb % +UrmpY`Z٭ "Oā%'CnUsÍաJlNE֨sM-2HDx ,~)t2T DW1J]{d)gk?@,f*R A׿l#oJMCG|Gh 2WhlKaǶx%\0@OIeK}bje3n\vU1EɆgزDRrq j,j!F/'Uca6LB{ 5[gُҵ U9/lUS韉-.,Hau἟IƁ5 8%Q [|)L_ܻ(6:JkfΑ6s-ҍAeGÉL%dO\V%202S-eEr;s9]X~b<!QETQH (vf|.:#c/@f6c͌ʹI s f4R*u "R~Fx0mU۷/ [d0Y 9vR~TkO;IaQ#}#LM{u7i62J(afbz](\9 \Jظ&dV e]r2sF= +͜Iu\1VbLjhv.pFglr}Q ٪J4}Fkbbֹdv5lFr;cAچUsۤ~hJ 4430-wԡfFЖ`Ե.k.w |$OVsпD.PMﱊe< T[2W/\3pzBbQ](fRgb >d^dks:y`mXZb<^{Τk p ȷ&+4n=aOVA3m&9k9c֨tՀn*]JF6NiO?4)/q6L >ѣ^CIJkSQ%qCSR<9]eCfWBdt+@3Z!fT`'/fP>PltL )|=clԕyw՛!AFPzܫяqeǡ-oR>t)s*&uT5X:q-j2e3Q*~6p2dE#}_$Prcx!)ըڔ95~հ\{ Ԇ4UmMp\&. dmz_(PYOG}pKS:o`M5~kI|({f0:nmW5o{ΠͼOJ}\%7o~v v@"ǴRup8Ns%'3#7tVt:H.O 'W5!ܺpK . ([v%<,E/*oe*_~ QHGVo% =)N { |6rBd .*VtҚ N-;N,C5>UԌ8"!5T(46af\Z}2K@P-O1+q!@*jAF䊥ŴU×H!܂ŶL+X͗ĽuGMRvzTta Qv^ )0M͔ 6puRf 'ٗƇ*k91 ({dŤ}hmlPc k0OkJOv3 fw>KԽ#>_2&rw1Uei߷J9fPVk^r.̽+*% 1q 1!HprؓxV}zsGISV56fncكK3IܼikcUڭ#{@/s;b5LbakT#D 9e9+2iY1̈́fC4p,/H.Ịjhr^.B:hL g\b}+WGj]㫁v0TC-U-9F;*o:e g}CW04FSp+9tdcVb?u5U,|1\CT~bUx҂2gDCå]H$f :/Tx(4H(Cb28cJ 6D w|‡-]YN8Wʪ &vx̿`';k;Q^i.8a \E:i%WcڜK1!GyyӾ>:1i 鈏9c/z1o F0|&V+ƼǕj+gqjYdf;?/F3 "C+⯐Mh-NX4;OW];RdqO>d+ahM 3nm` oAh2v|FIt 0gB{.%A`3nO6f5 tЧo@u $#N*1Rۻ*G_O a%Yt=^!>aFVjc!Jp艣bG3!U׿C7VD "BHm<z= I]p"޽Z xzxOSׂ07-*/[|7A$<ӆ@?t;VZ{%32J+ȷa- 5jY6wHJ VB6mݔ:ٶ(IX < _h)+GY!5)*` #r.5"k۱L3.[D6*.kCu)xUQ%[E-(p 5es4eYrs~tH1[gr\cޡIyAHBier4,Z;!̰j0)Ӷ]2* ai6%_d)JN:I!E7׆Uu\!M{L"?;SUj\ xB$j3' =z("hM0ݬR!`n9 up _$a]2OhBFu>Mqr0oe$wqnl r1ӂ\.O)(Ӷ+h[p%`oa_)3b+dG魨4J-igr.oqN:zU lCS:@<`\Ӡs~9'cu4iqw07QI<<֧pẛ3Sȅm$ے+ pV6Î;My֮4s+DA.~-xEm8< 3J Q 3ؒ1+ߨE<_^y̜C %\༸ H-L9~NMw#DȾWy%q{GU76gLP!x뮜 x15'gô%-X+E M6#M,!okk&?0sf ,kFT7, \%#WEs// 3JՎĠ9DRt!`BRҩ@sFW/y.ygBFQTtZТ4ϰ7t!}m-uܣnU@q{*|d&c.`O?rNE +_HJ=d@\€ f&<̥fHbJHɓdY3;|'k\Kg(P).O\.׈6+d~28\q(|q_1ŮCZ11Ͼ-<(2E2(IA3C ` <B襗Vm/| FM:Y@{sMbՅxR6o[pgzVNI@iZU{Xli?Gga?7dHg*Ie2 MϿ(6EGT {jK>,\)lrW<ɿ7ˇ^rtWݒG wGqq\-mR}w(]02,w?ߗ 8~wna-:،Zm-Q %~@')"Sٻ'Dtҥ|s_˔y,Tu8( A<֕gpo (];(|^$yhR .Xٳx$>~̀H}=| vfM0=/[Poj+-ǁZ MwiSjPyw!8cĺ Q;٫U Y5>E>\(c s+bR]OZҠv#_M8̫[3m%^bh[j _Zt+|B:0[F]?Ylv:v@? _AѷXNːW@NA>~ո16NmtnbbU VۄX`e>&q85ārT1v5MA#߆T𯯝{*a#]t$zlߙ M#ss ^$s=قg`:S[Io1 *Vo t 0n\QV&W `ym81ꘀ|lQfvH/"rFͼ\OibJFz$bI -4xvO@4Fhf"/]m>X8潄$$<ז>u~Xֲ&鄖RA֛zXނJ Dw2~0WLjiBQE eimo Hߩ)\sNc_H&a܌X d+څ\VNPcAhB"x[Z"z>ٲ Dtka")Dԡ=|L|cۤk!f*^R9K-V(CWICٌP):0lWG J ƖXk_"=xbV4(Ye2bI|IHYt8G2ΥLt)=Eכj$#7W-f{B*xIz`~f#wEEDV?xyXhWZa8ײju4T2m4/.3òN%Eb[>EԺq|)W [—+B-BQtēpSduKAبm\9˽&DFO"ƴC@aR78p5̫`/fU14{63tي2Ԏl){~{BJ0n5T'8Ti?w4H9wp_!0Rd𡼃;li,_ *o1̲C,w#trdM󩳋 ue9lMΚ1&0 ֶ*nWW:SEhĴ{}Q|.>k` 013>U/^+o!ѢI]4,<)HhiFs2EF$/)sEyJЎ[p!v4 p%t=0o27V.Y96xbr6ߺCHwC\Lk@ A`#j[rxn7WP R)5''M,:CrW5 ֍ƵzڮKhTm7!~m t#QР/}7G('C7 IwZׁJa,ΐ5 Ej8'ν'M35Aoc"95MB.}>F&ɴ&nzg9;9 1;ʐRL%CPV(ο6kU$A> Ñb` pP ád @$칻BM<A«+:M\9t_x45qΝUO`ޒ pj!VYO)֚fwzD$8ẓYxgܽ b93(puLed 0I /p9T Zx fȌ#{!EtZH##}֛d5?!ք!E99dLn¶đႭyW>*cz W1ŕ32N͗-/=1Ҁu >6ȼUuvbgd[bpиx2K_y/߉l=!בy"yKBw8Q!*c꒎VJqBBq8OXQeZСPo]cHpգF:$C8gx :}Ih0]3 =3|4C2Uo% c+O}R؛ A"h`b`t ߆D1(G{yO!Zػ}j?uQ[Fʹ;I3n  (լ-*Gum4]r 3.erYy~#?:̃PJ3~ ꠑG*(J,~)Wх+P'7!\^&^R֛z1n֚TR%1LQhK\M@l6{# ' D}=ڴ8Sayx Ku %_Jo sKi2 l3&0jM8mDUHft{Ȩ~Q([ ϣ&MRZ⃅x&4ꭜ]_@ڇP+m=е'% `i1TE<^DŽ =A^ս6(ië>C/)")}WF[mrV5}vGVTz🳴fJwq@OoEDUqoe#3_Y9HZ<Ȣv>ztmi~Fp|4T%fҾ.P c%'ݽV^||{OHQ`of7Rj/?DF&k]~ͯA3fo4 }L *EUxmT{ikc/JO]ޜQ@CdAGĹvc9s^>zıg|Ljae ;]k;f\`*e=`~51ąP'G<"ѿjL,Fp.:GoeqJ ~5ìOsZ=nikE $>d2o6,|X]GW{җDf`*_*F!-@y'c^vr@ UHZ-I3RK ~2cp{ɏ6OCdp̴dco]~_,'^A~vV *u*xkI#BCPT* |'p4s=" #0,Zİ$d3<إ~TRS%mx40w)h.t<= ,R i< l2J*&m*mB@osd }A ZuEg/i֚D0ouEwlQl\t9.@R)9()9=J90YȂhnATOes[2|5pM9~m&MHHдU5R5,qL> oc/u8>* >F_v{ 2&mCbC)T^f ˨2}DOo#*M?F$x5[=O, Y Np{Fg]tNJ$=SʝE b*I uǒtY$Ɍ\93!cB4zs6j8wGcAKH&dQu77d* `鍝vNsXjfyYed==Y"Rc(RYQHo]oyK.4vû0,EX䍹:ǘV9԰T$VgI.EͼՆ"Qp53J~Z wq_-9--՟c}A>ξ-՜)\ӣ{ئ2<^ڢ2gNOs<6_zϽcJo7T!O"xzP 1:e GmF&uzkzFc1bQ,;*n OG ktj$ٿS,syFp!}H%Tҷtb|P C_~0/:G8 mea<&L c>nM%,rfE̜E&Ɯ&:ygjSn͌Ѣ0xwLOX) ץcOE.t8k[l@VL}<|JAQufW2^oSҁ3mZiz7]OjK,}C7E|aE qj˼$"fS? ڭGnR `:jRzîS ~;5oT )b7z%R/u@ҳL1d:Ҿ9\']UZ/V;3؉!hbRFȐ׺_şꅺVR-v +w׋`; X~e$Pxjy2"nW< Dw#b#bV{v/Ńު #c4m/`Q!qp\R6S2駂ԇ]xB ӿ˪4&n` #^;~ސȽ!s㚯f"9/,y И3Vi\<`RBJFv½'mh)7M!pS:'LeQ.8` CR{-0 :̟t=0=0aQnE. g| TRq<|$m lͯ $uICHASAب:)9H?}Kqh4!%ƒAKJ':?D }lB3"Jp'?4gLs;vJ_ytތFgMVcp= R3I%7>.PTECpO͞}w@0܏S)B>ZDjVџ!B΃t h# zDǤ~5o{(yf*"'®y=qMLk,$2Ӱ^2R b#F>VB[y2gyb' !f9M` 4O6_p{p4,jE:{p3O78ؕKNZ?_8jܸm=FRXЇ2E 'C6Nw^m9GtڪL^lqYYը=UuE$y6|8?QSfn7 G@v0<-)Lx!E_f¾ȄEQlhS/}QwgP;! c"@+Z+WSŅ/ɴu4ެwE\wO:5,[/T@u$drE= ‘:`S[@j×@:W"E HZ$q5ZHs >8 0 N@n[`MGuc]b+[)Y1bgaVĸ,V֩V*zH[51rHE!.xJ/pȚ 9iW#6Eߑ" i+X%@ī2,-H%{k;+elp'$V.$&ZEaߎP`fGp9%Xd4}OE1 ]RO,-sDҷHAwiĞw ѓ+ۣ U޲. )nhlm5'D@n,Yo\?&uK̄g=o&az!,6PC}I)%|ęf;f<+#bFYnGCf1R$d#M Ra`[Xv+#,*Gb)epuUJbLg<!%8MAaME#旺=e1" Z9|16Ǣ_?BKbj}ӘtvG`h_ק *+̽fZ!UYvIltGKW^5\sv̩AĢɮ8;8.~h]d*p^vȤqQaR}BTpj8Lvy챳Ev b{&<}BpW\o TlH13}Ӆ _Y/csB?y$.B4e|!dԝH.o"5uA.$:e[5:ה4/5fU7k@\(FFSB0PٯJ%>aanQrh]4o8ԟ~|EX $'bi>Ir_M6t;;0Tt#j2&YsUcrj}pgHE="x7@0Fb[`K{H* KDED~]`t|C3|iG()1lLZ$tW6“<~0o)S }?G"qH@&M2co15`${7|j9cq'@*R@-_G:yYfVe KIϩD*4_4D?ēl2!ib~)Ǫ),A!vy ٬9SV}X0\Xz"2ܛ;~w/\`yZ윁͕KhK"8kj4r!_jQ{.Yȸ{wzf@u]䕝B"G\꾕xi$fsHF|Ml- 7h,3uZ[T@&ݎ)ʒ<>HggψOԿ9v24sMZ Q/NJVځE %׍FlLмe(v4Ϝý*l#1Y%[U[ca)ptJ-y3o=R!^ uđpK"gTJ80h2v|1>P_A|~+ RM>,D\)x #&:GTkj\PթN.%1ǝ[|f,BE]ȃRI2}EV;K/GGx?xƴ|綅FH_[[fxb|=YgpzL3>IxV@ȵC0IJ4fvșW]Wȉ {+r00 G  xK:k:d%2-MB*'|golw4PqkkȥXGQ\T,B1Cb` |ezV'/W ȄǮ/ꪁ:%g};9o-1ĉ8jtPb>ܤg[` Q6ñ({`օXFFW^-6xΓF(ԛ8<yǭcYGn1DMDww6; 15T\ 1*3V#!~!Y`-Zc]ݔQ ,p۩Ol\S ڕhTKFm:!c!.ziN}vuJ@e)! :++JvCv66N8emR=/샌9,v^l[sXSRD@2y#ފ<[iەC7TΊ77)Ce$ѻz=xݒ:0FʭFBF!4(DB7͟/v;pŇ^RDҬK#L6Q6 ߮ಮ t5#G;.b5ҡYI(pF0*>krT! ԑ@K mE0 #j[-IeM8߂q~Ly\8@365ǠqԷP̘!dgXq5TV5#4@/2nBʥ7$ar))tvhH2sd-n1>Ǖw̩x}$@S|,+zo5'H ĘӉ_mjxaO륥B,]FF{"/۰gypaM1o /(ްVUЉFQXĎSDMt{ 3ZUatjEQۉc<n8EYLN]8h%:vO?v ~'lR-bbRUT7(<ݢL #.jIӛ[A` ?LuE4"b`46fq-祱?oj8܋uTB53(n 'yl-!]}G/`AjqRq` tFhB*'Oznσc""YrD^h}MQ8A-| z}(k퐁2.yDO:=yVt xu=ڿᦓdO! {p)\'\LejJGg3A|-ثhWS7b.B.M  p{['SZK?8?ZpG;E6 X.ElxtsY'k^p8tz۩/o9ֲtIKdzAI&N?@K`ԀPwG1=xn*2qY0~?qzGSA¨&.T~q[ܬ&\]`yW+_3zғg.㭪wHYBRmqw2A1#&trC2[U2ךj^][Xb}LU,C6, .HQi8a&+ëiGDjc!>qېkRxffCHwbABi$zǴ\rr.Ƹn8.Jz55-] $CYjeLJD/_v\OVM旅VpR^Q{8ǫXUK9LY`:͊F/[h9; Eo)d "!>&\@dc0"1 ZMCװt H4fvʑQ={+auoje=4&]a|Y]]>qVi =Bn{B  V7bZVAYW38C/Ku%8 ٳ);t|'k^?UB\lt|il~8@u7tQݠcKNH#Q9͙&_rX+dx[6Lc 9bM O:@f (EC~AjFL0׈i 2σB-V@k|)dL ^ }Ƞ-f Iæ6(6!B gSNr]UbKd T±礲y@y>uQtf#4O?,~t^w+K<㵌 z-o5|.?_fch,-&vd@VKeݭGa3bzP0-!p(fY__Զn1Oo_V v| E0#CgmZӈ8"whfz=Ӽq{NKW" 'BR>xZ?*RnINaQM"!"Kxv9]Z%#T('~ % H|FU^N7Etʸ$F`|]iSak,7`>{~PtZQ՞1+r{\.x$u6=^q;UKF QADȯ~GЦM`z]]}ܔ:+ LWkVĈ''zKS#M9MGqldB"8m5!.0)wI*]z""?Ld}s]-r%_!E ?g5!d-AA_X[Q]hȍ -]BEOP,<%i؛Pp۩9Ӌ][ܐv텪nlSq%̴>SJ9LSlyp>Zsvl$`דCB2PF`2)hWJDTc^!;Ju}"1{ Ch(6 A,SX/"2ƧfE8fd>%E f 71d8ޫIʷǚ 2r!C{hi|Ȗf*qO?:g h^ y|[3h g.j{0Kd:^c|7N5nٝ[Ӫ$v؋F.!ї)d}u5븴\U}%3 Vf ]tEQLӑ]14$`Ll8 [@rԊBvzn bb}AdOhXL:m kO!i|b>DzߊrikjT$7EҿDG8HbRpڠd^p ,QZXu ќ5^L[$P)nfpP3W=H9Rp.W9 *^Okm t)A}l0(E>=1Hr۹Ql6fHI:`Q 5K̽=+"( 1_3:TjX># ]SHs,&U6ADtM?A V ձ %rg}8%=upXЬ>Y=P>9KIҵaӤ bk4ڤ&n6U vW 3,Jo,L~qJT26MVIPP 7)Y_);1\0S1l@O)xWGɱ1놦,IsvS;4TٹO.W`Rc4[?><F~7jg-4^ U5/j$POG#Dq+R(qbq85i}t)cJIDb#Og$ >,5y+@C%mE@%m2#/s+8' k6ǯ{T=ǔLZb no  hۖr"+-Xpd/~1\>>4׿2zϖ=nzUS>.zzqn;?f:}@'vQ^q6,F[ un78-;4*8>*ƳiSik6sȄ䪽Sς񴨦 u 8} Y1T&9Ub[]67:mٗqr URa!Y"k皪M} yE VOҊI[( GS>>!u /ZT0v)SV}k?[g_557E*Ol~Qw H*! MH1|\Gy\%r/]754gf<8~]WtJ\ai: 1i_ A} T#Ka>N[6TH=n[VI7?-?Ix!`v4 i-(֔RO] B-]60AiU%a2XQ{EgO9OM|g3:RRX΁mե>V=dpswg8Y=LH.=xe#sv?sX,Ud>^!&(Ʀ8!}PB^i:~rcYiRCEdpf/D]7vUNK]* J)Gk Zy8hޚo5.e_=>EM@ OOB:=D^3F52{LqZ݈K** ^KxHB+/ /YXÓmԬ^0yq)fϽY4SE҅8jFzEW2Mί>p{,cW4ZI 8_4o0_N]>HNPY e&<2^\,Y&I~wI0V:Ģ|} Â@E ^'tN:12i5ONc J3Ns||3ࡲKN~=SJЩfˇJ^T, .GK|tԇz.TbwDDVTī&kYDH,̣8f7[X 󈂝Dv4B-3fҟl|Ajav'x֞^%M6#=km/pUN!!lb9JFYˊQۢRP52A_cĉPӬ1\)l8E2")Y#:m7,TF'W@4%)]k",RSϾX7'lO*)6 Gpl 歲͋[$–2`d9'$ ^6Lh&u"G TUN@eEdۙ㲝M ׶JYC0sxnc!kk׷\/&NOZTs~Y!6&Zʠ]6"WSxO,PO C%S`3m>imX*75gEmWj1PWiQ A`Nizj6.{H&!>U5l)P慏2-#eU Ir; F5 )eDM u=^:ۙEw"FY:mڃ1H$uP D՛&C 0<{'}6]'VҶ聦%%9Mm0PpP};sؑ!vFpXzaU]͚D$2P)}mZPE^+Tr`ETAvI@*+9IT |Pa݁ hKR!-:5Wo5$qa@L]H_ۣIc{H=yT#""`kC#@']M~Y$d$4+) \bi?);G;8b09ED'tΪb'>Ț&6=qN}>&@mXn|dIIQ0$A{_>5hەrQ盯a}ŧ-Rts*yI-1]d\N2=R0W JOs5IjѻgeYxܒ܊A/p7[0: LCnj7S'3Ђ%Kh&^]\in USōO^ԐX-pMWάOˊ\l/S1DT>RtEE*-xÇs)gtEB Jc[4> 9fiv%Aa"3F3Bb)xv˘<^`pZre P "! oBrՁ0rtQ͡nQS׷8d S5&anDj`8G/,w?RaK Xih$m?Τt@g76ŴYGOw*D5>Lp*O񬵾[T(W dGIi9>/VGF4C# |wKEZaJl+/^ƣ مQ\{r置XC:A1LLg+]잃z™fh 5jf mrFCgq4ue&qWΖC˅*."Ьd+ȞԶ?ޱE;?ÌFv K\߭W׸k>H'p ̗]HS<̀ďfx'i6m*kRDi~ɾ^ÝrAͼTPXU/j:X&7aɫjوlpO;}J +c-sXn:;A [<2ѓE[v֮$:;E!v3|̈L MBe4ۺZ#$JSh͌O[wG^'tkΊ{/QymiB-JsOwcj:[o-7WGC|HN"+onڮŢ|ȫZ= ''W\xEf=;K< S %ہ?Z o |5'O>u1?',~ɋN:$PCd~1U:Py.wћ(XL FNAyd47 c VV> KZ%\SG\6A8Ǎ iGV\Q#;} B\0KcZEt7a:*0~xSpf-K/J8xQcQ4G3}MҰ7VϗE9 1:v. fꉄ; ?>]oSniyO(<x eɩg|?>>/sv9}b?(SOYEV(=2Za_ZR.Z+aDqvԫ}(vMJ`SOo.Y^l/68,#(SSQ dR*H iޟ@v2 ~ 1:BE_լcU!eUSH.ZLmZ5\)5yF¼.urMQ #YED:&dq0,z(G!}H d\wuj# w1m@^\饐6겺LfD]sa1,T>sA<`GIa0]D }rTT"+ ;N@ >G%p2 ?Cg7XU1 ż@A"$-B!((Gfr;r =j@10_}kD8D, #%%0@1N􋝴n] vta eVWS-y9ȸ0Z#gm_py%@$ oJeLtKHec+TFUwt ^xNo)z [3$Hs$3i1J$JOKp`dGMQ&"U} |OdU`9P%v%}:)G9 W+?EĿuqz!G߀e@OD; 8T"]FNJ%z -}Ifڙ;)E$~ _tE&6-1ħl5ũQf:AӜOwME8QUt`Eu[pxԨveʽVvd1 QsUX ynޒmO+b40w|xІ`~wՌ/d"`jr %l xOze$BqiEFv1;f!U([`ZJ7Ն`BsUf/fYv"5oGd(]}"ː=Х1uy(I^j۵n=A4K#QFߟ=:tT!Mj\IJnXбk(o?92p G6Lc;tj\L%O&eTӐbĨݒ|PHIp__6^]9ӭeKNrJ9%޸PaR0ɗ2Gʾ{;9]'nuƮ2Ƣe/!8IFT8Q4ӹS" d2Wh72^G4^FxF4 =&/]A6}ȦƂz!\Y u&"tCB#04P)0a/D~ 7,Y#ov(R{}]=";*Ⅽ-mXvjI} FEcuCM'h#VSety+ /݃P#c7w- XvgY"nogswuWM5@%x;).wV-MͣxQTeˡH 䊍j—8 EZ ͼѧ d冭mha GF>Jy6 3>M*;$@[N{30׉u_[OSW\/0+Qٳ%p'$2ugEj!_wl 6VfQI!Ca]4RKdN |E֠Ǻm7ŮّׅG :I#y#85^{SK6ڮr$"!V]/!PrZqp\grɑߣf YOـJ[Щ]XFjTH'qqAW rz+tVI'x]B+6C13~LG{%*,Uu8LUh~ pq-Plԟ(!q/B"7VAf(puR̯ү,y*m&`+0Ge2 -ɑPx?ñ ,%BgݔTcw%a0WK5}70q%&_aRxhi‹?6Ym/w[BYtr"8@2hʺe-ՉGӊηvh%1IcEqQs G+"-ydM(?f kl')J78j2ef~De{ZkaW,=Ѹ)l4LDM n3qZP)i? b3 ȡY 0C\k{BE ZTL4ds8fstm_ H+RrzQ&]W̪U)hLwm Ԧ=嘄nuL8|UX3T֥AS=*a#^./6WWu aJ6Sm\&P^Qa]Cx+4FXe1[k/^9 sb- ϗNҜ폕ݞU 8^S=x:%3JYh`BހHYĞ 3{D0? )vtV2G.`%^ZKQ̙lUl bfp(RŸc73Wu [2ED9(t?S9J8EڴZ'K`la/GV|^*wmm.H%< iO']['b+ j< ѳ%6 }-u(N*Z?TJA)f(sZw;\O\ۮWq8.0#ǥ:RHv)+@,ۯH,_xB`އ)=~mdGg "y9sZ21f!%?/u: |PZ!ƽ!)_Nes=`jy|CcAue,d"aX>/cz {8"5Z>J5qܺB3q3KbfnZw*m5i7?]bO1:]Dg"-Dw(}G@̘,>EM5!1m/GAP|SH|[dg:DuWQ&;W2^|1^h ailgSa (FU7,R*50a[)T0a2;r;= ըZ8阐 &]r9U#D.zi3IXʏ%*nb.)h5߸B `!" ` :cnjS8 }9ݞu_g+̉sܝU{,vq\c2 8iRЁA|FÐ%Nzϔڜ,77,Y"T_p$eB5.0 Y^\K)ϐT"sIR-?\PsXab9?uX)v~ ,hG,5yfVǏrI^锦s+oMXizZHC*ͯEqkwL?Pw֎\f-ck~W!,ea}_˺hqp?\NWeTؚ^x_~#CVeN9{1[ )ыJ% Enh{,|Pǫז1)MNT#V*iO@*hni}d/_X<73,ĂtAyhT8ڿכb]u)#g#}>믠CͿ؍ Y\oChr' g`385RvGU Unz2QT8)6u[}4(v̰K 8=WK>朠b8˺8=4=q~9ة&lKrMBųЩ!o{?ΰCp(Qd 쁦(ИK3("(ֆ[C3D-߆bEQ!;!z3uApz8N8 -ma geg(" ?/yo[?>v8,)^R>*`zb3zP&! F1`Z,u5ޣSEƐ`׊7ŌJK)w]?B ɖs4n+:zgrjYE܇HýᏒo6ziӗ',9S ~MT\"  KHr$ڼLr {lU>x-CR;~@L#,%h";S ,avJ/eJC0:>N(bD- {=򛁶j7=b [XZ!eV,XHN&53@p}p:i CYM&>!&zp 7YlA6jZcM[L2VqùU< v[KέϨ0ՊÓAT K04ѺzѕI!)ңڡҒ 1J0MnTi26H-u (v+'IUIwgl?b\tbνZ27"MZo#+GQ?ۄqesg qݾ izV^:!`It*NT,lhb< ?_BҀ"d<;ՏďNnhKL>APS]8GU]u|ZUORϏ>wedho['(2o>(_wyY#-2+ 7}99# nzź^Ȑ&pb O^mu/:;cqeq+ֱz$@UJ c)` f;,Ru! wc(^@~Ѭx%nFD}j+8}gv~L8t x66Xʨa? oPzfv5)o/sʄ XmYp5hMҤoo4sk38Q7b ^̴ؖd=39%GU ,%:jW&B}vT ?esΧm 7@k1j(T`6W}]TCho-?r:$r ^ts#@^CE5JWrvͲlo--H˺hM 0~`E.X''ag{uzcFcWegy ,빺6RC%Ft|JD~>`ū))nv"ej|Ҋ#a%WLk?f| ?Ea1_?1r8?IcVѻO\;]z|'2]@B`/aY[@^Z푀`{Ny}eJO,Ы;ۛ*=R rbޥzc:ŗ(.+yu:plnf\Y$ t8Ů oEXKZIv8vA~>ߌ`K@!-DԹT:n#_/'§ƅ -.@R>6=Bm޾Uu~AXBC%%YގT ݠU H# Rܚ_ߍT;ys"SjLD]e )c)C,Mq\"7l[{leBr=VIM]*;H_E57$~cKu8+5V0VZsTzR'. pFoDPB<1:_ߞ)" -Dݗ:+ɞ#(S* dAԜՈnW#ArjȧQdIb}ңh" Z$IѢ": T*}23vȥjǶnP^nꐔ]%hё^"ϕ,K.'h6\CPPУ2''X:vupk;WK/-/!baWP08chP2tzP8[Zc:X+fON.{G$$nL. s qC_ %s踩ð]6 j2"Q5G? )JDf/4 ևJY8S*M`탊 银ggyLh)G?aEtK3,sBHΪ,vzMO^b1TF-w"n4Ƴ)uԒ'MCVuc˯< ;;03ͮ*6(mML_9aL9 z#$K8TΎ| J7yB'xhЭLh5IJSdEp$-{ b\$!sUS}T*_,u-p⣼ɩE989Ⱥ]T; # ZA5Is)L!.*pj3&W:z,]^:/UmJaUp(kVy|p x-sw=sEm͑^b$C>$ðhPX 7r_C)"b/9=+-pBK,:)ª%ּOAʶPO̴Ufpc)NZ|_f`U5b t}Z&cѨ/4ҳQ+ylG(Ӛ><* ?&}W /(iՏU(՜Fj32VDꧥ_Pya'IT͊ʚ)E?Xe0$6Ψ*^o,^xʼn5E8hqyc_Sgzx ¦"w߅q%Ot/3EhZ/4 ͽ' 8, +n+攴Nz2rt9M]=P * SyE%}Y-^oN,Vx\ ڥCl=-;񕤴PB:ΊG9r*JhH$ᤥ^?nny:UF5t NŖ>xT0"7,)XP,.]'sﱽKZ mp>MzJʘg$Щv\/[DcO,%?!#5O=YvSE۠dӉ=S8r&K-C -J4dK nE6c 1P8@RR]G G>w-ω[`"' -,GAlۈ \0#"qºa!$=c`"gö;64/U&]D25ިǺ+Pzs.UU>43=,U:Hժqa` kGV)RB^4vARw:_=oXoS o9Bjljr2j@$8db%yhgDS{\&E^hJ.uS1\rTi^&+c7 W`1R/20ZCVDR)c6jꔧ9;C]/)'bbO"j!1@$yvq‹6'5MvhdJ9.$QK u) ʤ[šG)l͸0֧@ Hi2L5B(1!hny>JEa1h]zIcune|49` ԄMR^6.6M dOKBήsVök>fXݜ3 lC+4_QVV}j-6}H-9](Q;Lkbop+ڿEm<7z=ň+I ~C\)0c_Urbt|!Qmx +23Bg9\ZF,"_dZ#deڰBӉi+kXy`juG46ggki6qT5\n+ɒ+E}m):"Ad&~`~w䳿3WJQgZJR,a阔ҧ#|D`A>c#QAwW Ǹԟ kSu-'eG/_ƗC"Ms5F| 39m÷qYk)-XV&(\Rj!JJJ. =|b?~c111sXqEZQsVBؙlI n5uU"j9m4h*qE2Z↔0fWT'LR;kTcg8x% ^>e tou8Pm|Jp k=.9'Bŏ28.0O*\uh`oj$[mO d"!5)4"q`e1!NĿ HNkrkK"F ZL\pɫ1ɇ ;wE$%,*ޮ>{v>(MomO 7JgPiCS-Dvkˍ2`n~pd>M@HN?Ӱ'IA]ŨM#+#0_;Msx:I?`TwXcz0P ơ(R?VR {¨ODb&!O~|3E+bo';bSmK >餉^\ {&!7$l~,Ғ(d-B/exgĮyJYO H-NwcOX" ?]G{ ^!SEAm G$x×1>ߨ$*ZcR?Li!eQR?~o; 4lTU}i.ҘSD8 ;"-hDΑg 0{_TjG6:eɏM=ʤ3x2[iac( R׍L|K^2Z]zag@ahu .z\<)w S~dq'N(7% H:U"rW9G+D \(=h ˪|Xz#V,loC.2/v}nR&׬v&%9)kNkڌ_"P!2> )eÌ&wRǾYZq_))*gx;Mʘb<оO \agFo^Uɒsco=uUY>ӈJi*bnE-% uP7U*CQ501p? 7u"K﬐Υnݒ onwYɍ[۳A1NES =NCKla9{B =]ľMhy79;_%-dUwgPxѶ߱M|+H\ vqk~WAYY-s5*p܎i8tѥ-r7adg@Ed \p!jZq0 <epTeɬ^OOkc?vΠFɬ Vot^Y)Nb'ߢ"q|VRz*3\YAܡm/xajL̚_2kI :sϬ OfTJ?#d$pu؄s#Pnqk6Y4/N#=u(~w{ >Q{ xV%'눠A%j o9[_}=`FG%Չ hђ\IMLE9Ԁ1pkdި5ĺ۱.%PI}/4yȊāMB=` `t--Äq͉ת{EY'ԈWDroi@J½C+\΁+ӄU*Hf C;R+vOlseFh7X%W]΅WПFZ#naQf[İ5NpG=ze7S1rs}`]|~!31ҕ}Pk;grJ/Δ@K\`WJrs'Fk`d=RAXx ʑJ֑ȺJ=/|C e .հ>oH i:Iue&K4}Djʸmu2xw` 0F6tMET\huYK=-nȹ^2V&ip&m- }QIQ^CoQC FtށT;zNg]:bkH@puӾ=pqbc8m y:ҕ}SMھ=2ģUw"/1I4Gnh3^GC_@o(r#3gT(Ϗ\ŽX~cJ.J9ГAt^Ml xc+W]ADQrԠxtf<BHF[~-̸nxPkWFz3ek;#ɾYȓ ~I76̽$2)P5G&sZJk.ʽڨRߡ?4DcoQHWK,v !B$מ\_?Hg]%]sA{=X 5@E>,^:.=/4ӖXf0׃Qt<藕w6km3Eͱt!g۟(غ=:M]׀-8D68=|2'9&L`<\}G}RFtQ*tR>!X䳖YN-,7r oI(!E?z@I4GG,O쵋h/O'ຝ"\w=x͈y,eK/RMRxjG/+j;i=l̚G5ָٴP59XZIf EN.~8 nEsȝFauMXFS8oP%LSXt4?3Br|i)l5T`r>&)UA rG1wF@Q /A"HjTY4Wk#SzeplZfy t2.iEX$o%ik匜I~ AmO) V{d+\u75 \6)iPSiD9ysGd6 [Dd]ަ?"\=nF hX`? Go~ 7Bz+Вόc641^{z ʁ3FKfBj&mK1ۊ.~~eV ]BuáQZB #?Ky5SޟA]m=ݣ=e.+-`} S.}]2T]5␦^[Qm&3,(Jl<UL!̠ε٩+ug. ;2t.-P֜#9k܁I g2ђsPcMNOO pȭTGmQ[eWqU,h}&1)O&S!\yKԽ-sOD (;PvZ/iHJ7-2UԨ}| ~d; 6iTGy+︠Rպٷt:iSVG?FI{tezP+7I6څ+&0W'H彮mׂudZV⋇FT53Yլr&!>3Nk)864i9ˍ\ZWeQKB%*xO>(%@D&je,%x>\@d01Q3& BE'0$LKЫ) \+SX9BtlK"#.;d{e/.V)b[zPz08Ҟ&]zK=Lc4r8 )[`SG*e |Ɖ*+*GU띨Lplb4qȘs?, &6M?,Lrs*i"bLȁNc_c ToH@Y{/4QTU o~2pplYV䦺" Pc vqf<Jx\ԭ{~]oyҨ?ȤDx|a^tY1 zlmv^RFD{B=Ix5]T}!x@jm˦EGjbJcq@OO;wLC嬉Wt ,DێE8.x(^> o/V>AQ3}ɔ]䣞Ycȓ -Z`߳{"{ հ@jDf`u lPT>DoB9_1.t  mݎE3z{?pt+$]/Yhs_&mO^?̒<"g skNq>Sg#[T!#A[0sB!|K.j(҃vRYunWⵌY)k3Fm΀|W#axB/3JK Bof;0dP9䂂/ X=  `ZVyJ< rvzs$S;yȰڐu=NqqO}pU\Y'3 =L^<(yoQZ{$*۲B[_VjVGj8HlLNfdy}Pa+i)aJ=u^q&yg*igrDvwjP(7OwLX_qp~$Xz+Lf> k1⤗Օ%Fښgk„ @LlEk]CW@$Vn](e+Y~՞85Xn"Ո~ї ʃ"@@6_3&l]-*vk$nO C*@V?(&AyT.<Ǔ1|2Ћd%e ~ BHrkp:'x1Cmpӡ(RYOdFнԠd#a=3Z1 ]Rj";`>m%pQFɞD:{ {u_M+U bOKam e)u#Tp޸<"K[WnjOmz s]ᷦ@@|r'M0O5tA1uYǵDUp1ELH)b\e~W40D LςaQɾ bf/1@5ATp)z!s_A$15Q}ďan y^IVf!2\g%UѝFkŊ II%~M 97Z$" kW?<@G5ReF" N֎GٙuijIY$}Bo>y ҈UUs%Em7C\'4]ANB_?D Aq-pvJO*(E(4\>ٙG1eH p$LO`C؍poIWjZm|P `+{wP8p% 2یjBn0-+H“~Jۘ}+f@G&XQ=;iL'G^q",jsXӑsb&lQ6w|).$ p8Qĥ `I:˦$sb=mB$+%g][>;> \ * kS6J\.A~;+yGŊe+F^ >aX*DAdvs˭׈G+3lTj%GC.RUvon-cfPb|#Zt}$hwy] :J-D~Nϛ80qKIN<&P.i>Z4;\^0uː FZz;S%ps.XhcEq}-od'4%xw Zg (Ԯy6pCXd:֑9ȊfGp`5"w{>r`H[M;Zx)Yc+13/wF?W21]> Y7BzY[4OhM,t}??H&m0ts.O; Lȇ [}XW=eqxsw)o1wb_kmT^|%wNEI>7': )Zm2)1Òwk ZSr&GɲOXm`^o(Ѻ 5b3E ]j>}BgPkl q4}LN|_zp2:ъ:*>rEW HsjvpE붑H[0zJ@{ MLx}k6{ƛrV⻑d5C3=!~-2S@^S{+KXYQvI_8!ɵ0x:s >G&͸Wd19'#ʭ:^Zx%#  {3ѐڜ{x\'7mw\x&=*&_q/QK\"mwѱS|/bReWiJS?GPL)' D'P] 7&j&|.jaމށt!5,Z~K8rmGc39Іy a ,sJQL:IWI|}U_iٴ&TD%ehr B;GC"軬P (۹f8 EݖU WdyXZ| jBx!$4c(g[3LĮ66]'w?ۜ}͂B2N`C/JOuFf^?8q.`h=~#pa#Q(fٕg~ۈ+,yQYDRMAQtLҍ;iցo*cci0Y?[iS }R϶iZ &(εSP,}eTϬmٍP(7/n#бXhm .?QR0W_y:-2O=! +9|yu9J{:y*W'ڮ4-8 C^ysՖVh2S$EVXLP@ϓZ*_ @MPxfyp4h&bM_j4yh t>AG0Y?3م*s]y3%ɞ{J F?L&{,{㩳gh֟fu6bqzjY)rͩl5Y^Ha(|Pu#QV.يNuF,mԂ`v(vZY5a'vĊZ{ ~_^ð?lCr0[ P浓9k;JL ܧG0ůQBuTG$Kd9a)\VT ϧ#xGH/ybڰ:jdkVFV/)I ʸ11'8 Vi0ĥ)P"T:pQj;6?g^ iIaQ'aHx+82 LǩcT!&> &5QiPjeRrkI:29g%{]f%4pj\qJFo'zl&RiXC.ϞD^y1Rp]I9ڇ(?ua59GNE_A?oln/B$b7..d/>KaKO;QE褖_ԈUpL /.ѩf#w-* .VK`  T_\WM' ́2tee;h-Bk*r?SXhBǷβʚ\؊վ|qɿ ::AE -0`RYPҮKT'CY٘L@eApc8  m,5=<-q:WvO\؅a+F8vSK j(V 4 :׋$ wBԊj=N9Ԫ+$A;LZHڪ蒛<|lgx}} kbl ߁1S$=^w&K7>B6 h S'N^:3 RG|c90a"p3AX-V*M;Bif)B{C}ݝ=RlR B\DT/H0K܅\ESdJ2EA2njE)߈#C!K-1k8ȱb)s6 YM}io5] x՜Ds?]5. @݈ , x0'jY#x="s!v9akQW\JCB%݋hL.ԕ7 Pg a9[l]atFbcW}<% w08}.8%$vCWz[p|P*Z)~?$*Dؽg;/w[adK.MVKC\Pah#eKR$|ku0a#8rt,v.ݠ%Zk>edG;UYx{h'|wAO԰NP/źiʆ|烨 G~bm챳{:O K$ R{&f&)M Fs㵒7 v|zT9nZ5r{Xמp2s,[_Uqy݄qb̡E|tExGp;漴| V/AFVZH{HY R4A$'ނPcyEzPr>`,|czr0W ~#pGoȹ%LCwsraȺri >3ikHAnN%u* Ջw SB s )nG^*L+hN5 -nNT+yS\NZ\:hk& J;**) 7̳XJjxJocl=9_u$n9NO>r[49y̕_0Ig̃,wEn\_r>ֵ*`hO=nmD@R1Ehѓx:l]'M~FSsLjg·&k{PVr0+y*/u}eQ#ξ,w#fDX~}!c3\W5bK Ρs=N-Ũd_ {hXȼ4sJ,SCzSY(C&#/e߀w{wVu#. smk5Gչ$rrzc(GEm5geR8:!$Ɉk".Bk{AjIOE}6S'"tوLeDN@%mAI,ME?vSX@81gF~3I)'JνF]RqOˋ/i~ҽQђ,+ en 6K̜TkK+}8B] @awe m?9G}Ka DY>zEϱH ӿc Ե|0A1O)4KAd^b؆5EpҭJ^!#/TRW@uAWNu-NpkeѼ֓Y◟]nast_p.՘ Z١ޢ'¹-fE>F vF`5i:/zl4暈þ86mfpel2&/K6:mj׉{~ Uӓ[p/YWia%?s8TKQ?/P7MXe]bfi7ɝyQBU9_AtROkXmui?4꿙!H:I=-%R xa!=D,jγ$/0z%_Ua"(8<8xL(r+gV9!0oCF| :\ZfW7㕛ړױ GYGNyT/ fg%(`.i3fQy*pNըh@Rv%v>ee-S1+DHe]ϳy6^WnUOU 9uCqJ>wL}_] 9eHZ@5X̱F롢g|:ud mHa$iw0vQZ'mJajWh Em'.. xk^Ƥ}RӹKcA*7& Yr*jQCtTiqPCw:PL<[7V9+US+-_95p,@ݰmcg$Ki%M{t|<>@!ZW΄Nm6Pqy4Y ډp$li_N|Ja+BI'ъD.^` ~Y.Nu@ -u{:Q|W::8 FWrm,nߐaOc kLg,wsFd(>2egz7\9ikbL~}]u$ЉT]]J#U9']'L`  @],vpٹ$p}]u?<ӿ&L ^O/Ht)l;Ge烀xL#0InHEq=`&E::}*ӧ MZdQFkZ"꧑0q<;VlmջevLӔw\izb =㿀^ZJ͡mIW[B n-,Ǹ#?ξ,=@p,ݍСb!7^9s =t(; ^{Ёk,2c;Ͻvp0\yɌna]cDqOY]u$چsw)kt5h%?WFt3kqbJL ZsFO>fm\ܴĈDWr V,+FJroR`R c%ȓ%H _hٖY1Wr^K/_Pth*O"WΐP40MRrPXxWo@R:Dx%$j~.G ®l+n&ibd|?`>lmoT "c[t\W,T0;e9@c ˱T_`L5|/mY WR`=߁B-n~T/SL]htJ9z"S"ESvVgDhI"40*Gu>W>w9Ν%00~|A۶8*J3bxe0]̾2Pov}!\vإ˿?(SnC5WW#s_-&Y;7JhؗnO%P[fyxJZՉ_lUXүR N'"5-:h/^FZcڎq%x)>| ('4 (_f߅>'M RO,~B'qtPur HF y=T+i=K;%J:tC.`?(e/  fUypy84|+TҺΊ-m2 ],{bRJf%/Sr&AM mTx9XER.ϣ@_tudj،#cƵHH$1l)~H o:1FVqn.RkA$)SW)F6ڌ6$LOCrw?f8h~O/[4jhjU# |SlD.aհڐ9}pv7'lCw崾}zw iaE MΟFA7})OA A3P"_4EOYA gdqJ鮷a! xڮcd=紈{Q Oq<oRRy-:j(eg>ビOfژ^ ᤍ30Ծ&_^s'cF71Kon}.OaLOQ#] !?T3Jӈ:=V0L)({ !=EuS P.dHΙ"YwN1V# /xFIk?WrI3w\Z[y0QL{80ɔ3+eўό7MJׇ!㣊|sm~/큁hZ/T̹RWYʏzt` e d_p4݊&>?? dx\ÖV@۳Q ^XD&קpJ\"yVU RIKxŎs]=PhIPt@Ԃ-L5W7e2;js`M(UJZ0j{ςgCGW{]lJ1lhey6fIntci ^ fȾJb8!!gzr(\VWZhJ( ~>2# a!uttK>1,_ì؊Zw3%= &有@d~bDzHZu?N "CwLHz0׆>1; 4!C.QofS| J 윏r/a?I o-?$E؝bz l/# =EyPN=YpuE&yx'͜՗?JxmfNen,벼uB۹>pc|cɡQo kEcCeJs`i>:7M%%?!Y6u*`W&'IPV-؞"֯@ĸ 4K<$4%C#t:U+ZN4JƨyR-OFZEJ# /K4}5Niu叝K#w'Ur fO}! Haر`#~80O"sa-UOoq6 2@v-+To$7jF-'jq=Oz!lPW&V̯QxAwboGf/\w~uܴS#ѥnҙﶘYXUuyWcn¿!bAMlm*ۿi n T?E\x>v:da,tͣ=l5R_7T"ʠNFj}gxC0`J> NGDH '1<'D;{xQLNbe%%A҂vNZujBj)TJd/V $IhL;\̡T< 9eui1F䶞>3^ u|m#{Yn,@Iip "DjIWĜɃ47K~Tgyܧ]LIu;! 1d,X_ /;?I0ST1jFTd kq7Ӊq,'Oo'lhh_HLYF1`_w7OZI=dzgTT-?bG2mkbYqxk!xRz֖~gk4<g5k1[oӖ]ТXI!UtCH# a֜`#)*Kho»9 ?J'05n|eO| ʴp& \nP 9e2b2+7Y.vCZ6u7Ҝ?# ؼ$fj*$vc.P>.Hc?UZրG[f;_HnIVJWf.tC͌! Hy#SX@9 a`p0*F)HfǖQz%]pb26b`lyx"Lt2)^s*,"cOKlރ2°0Xum JYO`R~A5$H{P=8˜5sעF/I_X橑2i+\tDrBW<:fd GdV(GG}Ͼ7^Rqg32gvͼbIa[YƤ7[4̬m27;?zkJڶ@%-O@:T(M?Z܄Q yʫG6t尌 E1k|EGqy= j^Pgsc3g{_owBmiH kܵ*a9U.o$3 |샅R 2_?Y5jC -ix?].mUW ߲٘r$%]n΁V,Azfaw >866r~JOD+ B:fR+P6¨K&Ok'7>YL )_5p$o #Mwp}x1n=._^,j4A(ןX^M wQܛ/4[#k{ܟ*%';۹p'0,:/7EA>־Oh4@m8j M^mk4j|꒕vS|i:{fL:BrJD-/.IǞhnB6v2rg g\4dx[yC6qo9/EuU&}Vj2* s j؎7+á:ѩ-|%Ϙr'[g ݇WxTݡA!vWr`h2/%RRTn)MdPqIE$CR.TYfT[o VTRg-d(O)0o)Q_#c)񖞉'$t\zةS5n'ҼԕԀzA؄C7?^"^ujUϳ"__*4@TgVN3+k?}4ya9g@ 4׏i1襶yۀc9le+v޽%n): "(o܃$YAu퓹2S1T1\P'?47 N\k%,+5tY(YGFphڷ(^g&E52˙dч^#q&KS 48#-Za4]ixC2-tEq_=¬cO8 /8\chЃ2|/IH@u Pc7 z]h*IUvDAO "y0#tr *,D7:IFI^Ȑc);x(cpdRm ^2F yk 2Br,Ca)S"Bm}ywm FTzk³j~v~9vPlv8qv Vw[ό֜3/ޱ"@U滛l@b 8-OrCN 9ёHAUrOAW D&c6 p#`{N`Pn&茱Uih"6Ƕktjk UPSf:`AA!40O ]6/6Fem<"9(C?&*MV:ԭpe4a6HRs Wfl2ueI-OpήŸNviĝ꼴;cu"iuh,7w{w/7@7C{ d‘O,תU(/o1~y'cmtf㏀+DΎWu2ܳ-DNf.l@?z3l&P}Dzڐ[7F^D  PO O@30-ˡOT9,<6)qu7g=C;߱SGê<@dOZN`H|^q~97> &iТA9h c|^_.TJ]_O#w2DfA/U 锜¬EЃbTߤ gtEwu~ʴ WRv(kt#N{ C9viq1SW*;ݏEIx fxrx(7)N^ k^S*nLQMu~-fU٥\Prѡ:0mv`QF/^l=CW+Hɦ-WnF1txP4M%l{R.5)I\TV)s.CvyǴZo=ld , '$7uXM@d.~g uW+MiKƫXVv^rw'2]#PH5 :#=?SVHޫ <4AH>0ĽVqף$ Z`g^$kQMB}4nʓkr0d#g:_R~/4Z{B؇ܮϭВ6=V f*5Ќ\R9OòJMmJU@b0ʪ-@Зs;%t-tHsgD}OpY!Yvȸ5|v;YRpF2/+f+fc zw킎YAKFtPf YC:eYyRݞ!|5SrvrʻzjHbB6`鏄פWa ^ϙ2M}gt 8k?m!~(I0/R`׌t"PMlKw5S2W Xӓs ?$oɶ!xQg1T4cuXG 5p~nBGxp4*Owث6seSe$8;.F:h{6)nO0AYk|P|.}H1H3C_N`:U8*ɤ}Pb@{ю;2߫BH斵=P꺶PGK'YzryYsұ 4Im_5Sٴn"v}E8ҐitgJ8#,OaQ(n2tH'o] 2~i6|S@[:TWRdŸu 1"e, KP۲֥ћ@Y7b;/ٓ+D5Ԃf3%i"a`O\u]`930$LG_ұ[$*չUu}AuVl+3|Se9gnDyQ{JzB5w$CAM-_H"rÓ:W|ݏ^D3!uNy-(k9fP{GGZU8r$86pҮMF!Ǽ>R$|0,[[qqً606szaջeFI6EeuW_hwR)eWm_ZM!CҌI"*f)tw^Ld L W(Xng\s[l vjq^9.IxL*ѧ1W"bW/um_*nX}k'wy;+ꔭ$hɍ+6LHw !ϋH۟btסΊeO[CK9L81N@W(~~yyyTɐa<(5(fO L {l%׏=fŔs;<҂xI;'޷=L*Luq#3k^l;U[NjZ'X\j{r>Q:dp`V~%Ҋv4ٔ踲}3罚A~|kCs7QJqcȦ./3֙tJu5ӛa ,>~77i ]Ek[+<>O3܂[7͒Msj@=-)f[pϸa({t^~+WS(6 *bnu']cz!f8^S!2OiM4[RZ y6Ep] A"\!^/堹$ qf`ə7ֱU>6`([Nv=1g\h_Z:8a8g&g6eE u|fza,p#xMF늰@\PS9e**~aaRn^NEXȭ Kz%K?wkC_A-ek齸Fa29p:pbq6 ai'ޯJ'zޙt3k3Z~Jqicd2U]@zfT`th>;rI sl"ݻ ayFl/MRSv3̑S0T}np[90ՁAzoHFHo+V/`ZjhV{M +L@GWOIJ^'j]V܃PItӾ^|>`k7W"+wur c»t,e~^S@ 5\7t *(o"ߊOGmlE܅J錣ٞj?Oa6ǻ{%Ū!΀j%鑤E\FbaIb1I~}uX Ռ͸ޫ ' gJR&3a*u\(fij*vxBE8t"<^Es_I^5E^c&gywKk'2 rހskJ3  6d΀#)d'Ә)vpotEM/Q{yUc4o WȾ:%6:I{e2gK&\߁ xtX 6!~ژm57_FzQ#CۦjFdX,E(}4Na)Q7QHa#4@ +YSRfP+j3il:z{|Hh&G4^̜eF+(VsiRWB^XOؐa8uF>m!dv2Dk’-Fvݿˏ/ٓD@/3WROWV[R%!$,b B* efv5ar؀r: M?VeB^L'p/):2;;>1=xotkEvE<.r@Z 1t'gnϷ(JDzXjH mIrѺ?k Dss(SOGzpBqlBo[}=gkl{y;AUK( 1풦`ZɟR)5@B_Dҩ@֎B8: Νĸ>ga4B s 7Y~_cgb}UEH{ 9~$hξŷjjǓV = @Ht攓8ٷBt%=Z~lj$/]eO. bl'欟 5|&k'!uA3jL]KC&\q l؄C1;@P|z};z<@؞l>48 y`jHYZJ`,VbT魃q/V &$PSyB>|~rZo55g`rFqwZע7ڿ4ilU&k΄NIvqGg3 ,4+H۹ *{(EY` 6XZ&thWk`>=42Gie$DmH&aqN*7xNZD_u\x$8-أҵGp1ob=2 E|=s(v"mE:,Q>^~E7qbj/AO"{ГZW sW/XairOj›|Mΰ1wͨKLoe3^r戗/n`_)S 1:av:&Jf_/p_{7ymg?:&MN_`G䵜ȫSK(1q'a7bDJ_TѺ#ހO7-ֺʉh!h*Xh.,#^chYz3-<9PeOsЅ]}xLg;bVcN_XUvm7㡵oR=ΩiZ~0vUogk< >.YX5bL@͍BU d~G=}EK}MP.4y? m>@ϳwS'Ǩ*pJpŔe'!;[/;`\0Cct7@8Z<ڽ%ç~ :B,#3*.4WI?$z\ʼnSSI(LЩ\/syҭ=M6jrD VeO-#'\du1{g74< ɤ$8V)㪜 Dz=h UL=ݣȍ^="am񹿤7+ʡv_E!Z\M{e[qA;qLT|c4Oqo0w 4H4%ϥi~&lƒO3CrĿ3`UƚߊA{A]&\O :tpSD(X%R+d}yDkQo}S0r^9仁V3)ųz4"[VNePK{K]l@;3=|}+u:5@Z\ל+ )~ܥ2Wl(;U!]츱hn~/٥g}yiwO֐NB7RZϻI FdNݮf!>*3D_q=,vs}=b#qČOg>!k=ӄ-gb1uXB$zwЭ6 ~>R եDX( 5wbm]KN槺.ynKE;7 lrM@Z?dltha^k$rCfdEWnl__MXJJ5cB& EaFSa3T2lIҭP&i+^gĺT,B7@G:c@~3Ғ<ٓ? KܬHܱ0ig5E>"G)eOq},A"p|U-띖3ܳ&9lKX{MϏ(w>"҇t5ž`<q8?,MrT$l;a%r0|vÍ27GAFnKeM%\ս`\|OY 4Х ==Ն="4aSwQe*wZŠ=4Ӆy>5(9: ۳όb"cҗ"ϵBx!>O:!5/ ˨{#Y=- S-DJeMŜdžRI<F n~R*^(i r'{%ߟp-Ԝ3[QZ4W9GzdQSH]<1`.Q{[;}Էd~V՚+Cy|jd5 qyb0aeI{wԸxP53`^,=fM g`gG[Zx$n3=("8;oi\h[t;9b;[y8&Ή?eQs:Gux iIA5֓ld %9^vGb:7 IcDmNKH?1^Oy`@&BEX#NGzu;3L$Ƈk|tLZbw ʼ/Tɚ^(0ieyzk lpD7hЌAz-sX+IzNmN#v׉@IY!ݽ,dvZv=" f\+0-i^K&/&D >O Df&<l%Pϰ O} 2dκK$RϠ*hi[Wwʬ~ʽ/=O*w '!W[ 3l1kdH`݄L!γ4)7BZ|΁*/]G,<|x!8F5He=E\ Z*/p fByFzQ#oly 9쇮ho[-!WJ-:vn`-CgЫÐH! i4%V|^D#{HALsuԟnalo1?G}8(mh4ƥRz:sڈ8x܂l}WJM',x=sT¿Y6⨼Q^ ؝%^ o.-g e^,lHAan"Au68z= ۨ0== 6uy0٬[xߚג!RP3xm"fҠ'7e9;]!`Q-LcvGX/Z pD|laKŒF`I>qfi ) YKnOzUfV-D ZXAK"UƢHD# |u(ٶsM RDUc ۍmsX"'|4)a$6aΔUZпSvZyϮyĠa߿5aPi`(TJ:[>+;CȞYuZDX S#%r?LSDFMG~4kZ?1^hZīҪGrKɞb fd]FaA`Lw?e̮Ჿ[#uQ+RMɈ4BM,5B}kG(?Qu˗=,Tqq " gx5u*,!$G?0%12J <u,``&FЃUc O>BuITl8+iP_/˸OJ|49Q1;O_]ޙ//Nغr#'ĔaUYoS+pQ|v_Zy]jéJ`ϕv ̒}YvV?{۷y\ĨLTqו_q U[و5~.8nhiIi<7,oju4+~'..=a$m{4F28o-1苽q281[5aH3yRt6WΤSn\*. ?+[Ny&fU4Y ×|TYbzZlfWՒ]ܘ-mF"?ѡ8*v vH-yzb{ATX|hmhl=#8kz>|=mߺCQԐWi!&֌v+y) Dvw}5O*IӧĞrtċ}UdOyyZ2l<O HOy9@:(T|~gi7 RaֽћF]7~KЎcg8?Mg FS$e ٰ*{uBrte0.м/YtAn]) H>KU b15{v책bۉ9Q֦ CXȃ۽!&ș1{t;WWJd!َd۝0a" @q$`#/NZumvD1bDWS156PO8 .d{51Y%S}fUZo.ø,C$z%- 룄뎄ɿ fdX2](?48 p0xt-0F [׎A0) pBWw`8Yeh Z[ 4Y脿}sqNөA0>;S\؞X{ϵ1?uQHGR~EOy%V ɰQj8iG4qT+8<P;tMid6&kl& ^51D+Dgg={A5ݲ( >'?n R`k/#NTŕbHVM K{`=Q3wjԤ-ß 31P2۫ƒ8(0IzYerqzyX}-'>Qb}jrBEAӮA[ۆ&y LU` 0gƹb{JUO]<Jr^^ &5f"\oGgSФ\ @se*1)Nђ|=\u2Og+a!b%q@i>hLX.a^G-F OAz-$Zv2T:I @QC`NGǪY0CZ]> Djw&$Պ>'??P|ѹ/yj'^gcTлBeDuR<___,PG IPDخaRz9RHBYyEX22 h*o'v;ߺ?@I#Ȝِ^Lf==A:ƮAㄅ7|7QD#K3%6} 9{1/ΐ_XEU0RA_<['j|: )Xk'bvcӎ xڠvۀ\>ȬAKg|LQV3FN :1 yk0mi&-A:P{ԯ@pO6t%FC-:,no Ҁ^dWO&8/y_Y*_dy7Y$59,Q[0mM9"b >|W`ҡ J!X\qʊ(}3OOsfbe/qmnda^k%9 |EdUYRdp^jH=ʹL]{[tX;]zg0v\X\ p%ح^ϻW_"C]i*c[ƶwI=0}~,o|h!;[4)3B.sRcI*L7m b~3$p`aͧìҐ^9"1>PVze׀!D O"P@]t_Is=0=U:=q'xs53ҝ-zCZTh1b?9Y02)p0q-@ DjGl==P@Cmlow<8rqLq9N?X(*EXαA.~e܊h%JuݳW PswJ~{ 1_NgF"{~Vw:]qߘSk6D4)̍Y:6i$_;L]=FrY4{t6 c}$]viJ܉ujM#".YxWBw>* zxe?ydB.3FƯ,hr԰O[+iV&,{`)iu[Abzb<)&Wtӻc/Z.vf2 GqZ0gap5JU]yuH|o1PlAJ^cj815}rk f(Zc5iZW~<ԃ[?B,iO㢍:MQRzssm0d3T{nuALIy%# _ZM셋ʒWo@>! Xa غs!kDz3Էj RKܤԀ GYlRK~1ˡ&7VHE9D]ȹ*%8UM|q03ٟ4@ 6,/?+a؍sK[صuUfa]3$A(&DE+T+<jY҉YT}7<G"sDXfM!d`b5 IUФ],ɴQ vՈ4@a`-9|P[Aq%M&ڠ |@ly 4A)oӪE98RD_&fz<#h dlkz˄!bSL^V:C"t 44j71HksnѲSfƢ*k~TɆ|eN|2@e2ɳ$PfiUO@9h@ܚ7dE9o)#19#S Ὤl \LJhc|}Vk)vĬF" z4K&q2)@YT^MdsHk?aIWjz6ϽiӖj8a0~1Pƫu:jw/\&ofC4o+ooGԬBVu? YxH$dnXPR ŋQ0`ds,[/]$h (vĨbp=]N51e4Gb8),;j>D0av6@[b4=?ge֋H<^L>FC1cd"Nhȍb=+[9@S㌏C.GP{#摖 47hF!?e\V>yYj (6(-UlR|:X33ç]ZBlIo, }Gڳ_B̿է,lLgW]rL;zU9)T"5E{c Zf֚KAؐPli G<_3+5 N#Bk\AbxiL@3:x)?[{K05v/bQU i4쎿Ȅ6] pȞ4q2&,] vU .i[hC:UI uN'"EՇ/Ϩ"gy

1ȅEmW?XҞ!)ir՟aw@C2V>O۟!* Vr^ QfKVcUCGsWQU!P w63R3ѻaCD:G|+P f*nB?xobvT+zqG; ČP Ǣ9ذg%q=nU?B`Lپ0}A<.UD$ }z$4(DB i*,}n2 HUM% ޡFx*Vt GO-%7vvs;zD%ڵ:6"M$ 㢤&!u.mi.j/khx-WҚc+cÎL:F ѱ$Lڮ|+!D[t,cuKNz Ei[$ >Ek`UiyBJJ12c-rF_hUVҪb%<>εxߝޖ@JYplg_,l͘Nj)WGI慸;;c??J勚lxpu3"]A mw<sޚ$\9"(anL©T59ӟf/ e}KR+5kbZk " [[ 0Nk%6h|LQzPcJg4xV)tM>h(HMrHܲ\Xn(/"~`9u~ js* )3u4.6sQk(;9kX05NH+aՄ}iLEIp*yfGo~kz'մ2+]_$񳬧*DI'g?OW& RO"L;gҖТև5u":,fgi]gՐ#mHuEPbd:bWl@isq[peFp釠a+\G&H:z+J*PuA`ـ(hGƌWhYnڐ}CUr+/W^˰:5 |Jɑ1쮭!mon$ۊ'/i %樄 b^m"XAϯҶYۋVT4@B Q^Ra[nMaMI~4aX!t%gg |؋2XdlaO8otbbmv8/Z5ZyJ]Y)ղG^BB>nkF3݌cQe$^yi!Dm;l͂u.Cqy~d!l(W0Te#Fa⢪|?hs'3B^4,2pӊ5AD17F],H7F2Z)odjTx*NucxO9n;i"9LA  ItnIJu%y^D|ri(7egӷDz4u T Hg,!F秕5m=%CdF]$27QqR 9 Fv} Y@mEH}5]*:r@"Œ0h D]C wF64#suM~\oV }әfY;Y{qMnizhĎYaϓAM|0 8MokHMd+lfhn/8yLLRHԩ۳rCv o|Lbz0U<>GL˂$0$5ˢoBj^sE)b}-iƔUYPm.V/OEӝXҠ.Y703k qss<@3C`s?&{:Aە:l}>gq=>z@H1z@cTnɗSi !#RAѢ!Ѡ5*X|xN 6^tanbiCE(Lwpb*}=XSA#~KF|VviXQA:n}5'a.p-pt9:.}ey$3%`qLٲo}QcoHlfH̏ȩO^ !$ m'ˁ.W6c{P*2be^k.qiV[9 QԡC5&OR޾ BeNAD{06'rǞ0 7t;! XgIH["&R"uDOBm2,692(ۜscQ~kŝ1JS_0Nՙ}MD2\"')h- }mqߌx%conVI6!o?"Y $6o3AG~Po'V), ٕIѝCkJVOM ظ3{gFdco)- ⚃;@x^ >w1H^kץqAOӅ2tj,wu' !M}(]FJVCFwkۗ 8\J_rO <\nc%+sa( m'0WƩ|ר2q|NoGL kyʸn-a-8&JDDP`k;5sfn7b^~DC: hň]~&Ԝa Q /9X4X.o`=k%u?DCvWr(Ω g7nOP_aWH=7AYb7#tLbIZ 2"0G C\A1bb libmk쬤v94,AQCgs=v gZRuWiuf6cꌚ Woʉ3!lBc y/ Fe]{ى0"t5[e]MT3<߇!yzyZc}9o4?u/\f|grc] )v(y :9o! >`ߒõk5w{ƓJ |F $ctXz\QKC31ۼOYEFfLr=-Y3?VAW"2;cP62dYbí"=A\?ardCXΕ1qD)'Hpą);zP9JAn B5˳趧%' Fo˔۷rԁK``'j-KԹa- ,Ei,OŔrDo,y}@Ck%Kl˥76)b4ɵIY_qrn'kؘ7@&PlXe.WcD{g"uLժ)[@;senjGI6naˀ&(Z8I/HC`9+)dVwL٩/CCެrN4-L+jB*?RK[:';#$EBZF;Z@J POjxaҝ?U͸KpoF{*C3zt;HA ^,:fYzTyh)uTQEbۯMx?ª@+on8ZmNHi=2`{Ce4*sw難-,FaG}%@UZb`Hg7T=9{/wd벁3kjwUr< IЄ y0`as%Б0^{{FÉJUߜ>(?۲]e ]ճ tS}&0w79a9,.cIQ3lw:y=5XË' `;#u'h]y 6&8OO vb-`- [Tjyę"a~ȰOMYHHr`iJO&X({bɋ)ufvj >,b5>3d8CWB)L_ü hCƣ`9*DC'槚omUH%fg뻇iQ M9[R aI1K*__<6"Ӥ9o,7f[\(Ze&Xp+Tᛥe@7c{+Yʸ: \:fg]G~K_~W W=׎TJ B"H! laegG+w4ײ>g݉A[8]~J ^Z GtK]A85mj;dϰV$15'SkmgxM|抁 ah3m :K CՂp wBD+?Y0OPbлԝ}"vf\b[1Pߔ:H]XKuMGDO^޽%V'ȕӏ,E%'R=|i/[@!|7$n~R4v6MC(`L4mC>:gRZ"võx%6L}npblї3$"3ғ<È쇞&P JvI؟6֟ɓ,>'r#6BϷ[ 7xyyV5P4<;gmU]Op~Dhʤxi3:/kl^sg>O?|8n@?}OJOڒB,Bw-8 MBFԟ̖WҫD%ri _ӢXGhmC {aטμxZlpÅdbKӢ5b`x7%)0h 1>mqӉQ{胇`rfu' A}'[q[\ TA97qΩQ h@b S(2Q)"POk2H(W8-z@-q'EoXl'2,Q$rovUhYĪM 5jշREKHv h㡱EJ![v# 2+h⺓JM}DSU.z*3 6etK\ay'LY8~S z>MHDTP8)yR,`!fz浪J~f^Y3Ŀq|M)i;Tc`)(zc{w߲ %"Uo>bQMHG:'BD\69R=[/.طMCb#-Zv `^G2 sB;sEx#w76i1&`;3 ^wjW٥q\]C#{7Q_[@ԗг-&kvq D`2Uz},EbQ.9r:%50/|f7;p R7QzԻYL4j&z g}ХE쿮㱩ܱ"w-9a)q2SD:,4Nuk7o"5Dxt4I2-$t Sqt"PO^zه-,!㬽Tvn(7P)Ki*CbQ1Üh]YebY~>^qV] ŝ[F Z'%;WR0#`oY}=$.%M] 4c}X|9EW}t cYyb $eD'9w d@ܠ\@&Ew6zjtG]38o'4f;'eh}4a)wk9.;-.t;\=9@, $^RA=369zن7֮7i>q]N?6]rW7N;[ۻ9\2A J |A 4Fh,3{^S l5>'%'>ِѴH;]';뀜Lf H*t\?q̧^Y]Àp7vr T*nG׌>Eߗ0MB#ݒ:Muzϑp?p)07Ds j}0B{:f<;l _@,?fNh[ V"f9 &O ~("J3]/~|n)9Wm::XvAhʺ!KʪԆU\K(chA\`5|'_os$©nʡ> Z(kҎ/ {S( qo#A iED8W//{b4O#5m -RU 8u%S1CgTbjq h(!OpMLTvFyŽٞ d[('al\WQz;mU .pEGVxRQ\EosU3`XyDW,Bktƞ4ߩ=eLgk( w!PqG)e$xv"ҟa]]mJ3'*g֓# Sq^ΤaYƥGlgX[2XcM@hH}Fɘ_,IPdzUM&N}ZckC=q+`NReܦzTʍ(+qԤPmp||$ :7d!$JCZ?;YX T~KZ",2ݺpm=܄R|݀ ʄrcl緹fH%0p\a .!-{TCd[?Nx T+wJ,%cVOi:.:kفOSYZ|YMn.Q9'ic@vOS$>";v%"ŃNz"+Rf*y@u?Z,9YSSsSoJ |61"_dҖ-"\(X!o}̏砿+wD={_dO䦞|eP&00$}D6N|Q!KF1|_X8Bj:0K(f UȒ';X8xmy] WhX;FA5^'-;}rhb=^l H d&/i!$3X0vn c 킮vnea;0]G`8w`ؿjneyV>;`%r7ˆˢ4E{4CWQm4ݙr`?~r7%?\l䉭}+PWtuqA(>/q-?KuIV\.^rhrwS3MS PdBJK<.Bjc_CSwX(']{K`Rh@ ,Y >KgeηzġK)6~Mnu9_4R1HGEYi粞3 S ŅKІGD[@ğP<YFnnS? !n%`o,)U,M epx]OZ}m)!V Ԉqp^pΟ @m3uR;a%S_:pLK8 ]I ceFO W,7P+slj[uϴ--֣HYB O(0h6+BCu"QT,WÎ @Um^܍y #{u;hc0%uo7Ml.R{^*C~u3/<*=eI0ӯI%!IZ/] Ze l 9drO.@~XȊ%l5_UPahuL31}KKP}:)Fyzef`Pi IL^^J :GVae)׽{!|Y*axcRT6B'_φt@jS ҵN!X<ﭼ[ 5lAifMJj_M[A_ xGf36dzhrY}6g=! j c|_)EfqWEF'1c|j&%h3>߽*`njDVHQeT";9:#%Ņ'E#)q0IKy=JlqOu"ZqP4T7)5Vm|g@S>ie҆0a}guE@~8}],C@Z.ۗh-ZNEePva<ηP4%_SMQ#'E&~NjFָb{ .(V l6ѼuZ Yst$:ee#e)>d.,so7p$?pym!Tjv\FZx NAv\[o`}> 3qwXb %,D ;hųm)]:sRSP.AՓ̩w=83hI 9Ԕʃ`^-cE$" # rNav>?onAU!ڬ!PS&Uk^V(c33~X )WxM,x;*j>UISɻOxAhA"FEX^񤏠&(KN(5s/)FK%KP\P\*B)][@2C>9E__lz, OlB k#V߲ Ϝ~Vo!2T bb^%-D~|B8re(s _t$g/ma8~?+ њ$=3vlcѠr +v dP ^Y wAp,-@4C0ɖ$m7{T蒅|Qn# I^5.4L{Х&KlI'!bxz4Υk6mm?žic8yYTF?93WBFBMduÖ/U8f55XS M y*Jk:}lj4v״H(#ʺK*xMʝxY@K_&`OTAC/D=#W*6&fgR_O5\w$+NUڟT;_l޵?Kƪ;KE9y&B1ɿ)Wrj扩ƒ>`3>Kil혰Nw\P7mm[=;r!if2A_|np+`MU_V7b~1єYnLVq,-z"dAxq7Rk,]bs-%oS'D|| %ylT :{`e#d-ڣܼ_3^V6LM,'tLw@we/H@957J@Ph"u j AP%dz3D0$ԃzQ)$-bs:1 1 ;g~_cz3Ȃm\;Yr;;8:]vaVYa@:^W;B[{!jƚDžp+ d`p1EVVif*MPamL;T޽8i =P*]ޮKn`r? ;ү|PӝM{r PxI[υpnwlWA6v:7YUI0DE &|*vtm:ku4"FJ&jg1idSa<7>-ݯ;SP`ߟH-1W?1|8cD4Xmpqn_][Pz#~ ^"x_&*րUĩ*YH% cA$6VA9u#()%[杍/HKoTO),k'Q7pH]wa!S Ws*pd,ʼnH!lj(Իȣx›^ВKAv{x1\H*㛒Zoxv\k2n#<.jފVrh`_ )k̽8Z)FkxJ~E>!>؍w&y$f.%/I%m[7!¶ ȣAh֟D)|z[w)O K3l].T21T1skQ\Y1y=',s#]B1L n݆us'lo/m"i +ҷ\B\}sjn8bJ,%NjK_ >&sH Ɯ Z˓i׎;23'F%Wcs %$H;FxW63nb_rb5-*O1P=GUh5Xnލ%ؾQh0vGo& 2ÆQ{k({zVgW寯}ɐRJH9aQWpfΡgKDIo战+1"\rc,e GDF? j=/?2/i,_Z&BEgƊ2\wWL_ ͉m J'klj03 Ay [rp2:o< \XpdqҶK.!e0 ?zs(ÖgfS1x>BDګ \Q>L45g2p+Gq\M#rs fl}E.eQ!'<^DND_$BC";NO^ʜ.$ [(މw ~ϢNI, F|j߸ 1>-fbinD@ `rtȫ+I&CY 6>1m&x/˶,n8AҭvNrg ۾U]sB>e4GZ085g1nCZTRd^ȞqCìYT LX#~*δ@ j椂f!YGF3=-STz3] Iz==6|s=+{uDiڛ(ϊbb0ev܉MTr~C]e ތ J /z +auWtZ1G/lPSy/U%0Wh61P Pavv&BQ'+0Q#5vY;!+w-iBoMRO):Wsz SkHΑR Yn}mˋmz ԩA0>YW5SFG'Ek4 Q$C:kIIdJw,`Xzېe*hs/3GRk5Ђ(x $YئhN^" V{ܶ¶q7γ,`<+njٹbD; ^9FjGٙ1CNԗJvEO]VT۝\G )ɺ<{D\J KX鸭Vn~VjڍbgSJ/0J&/O XC}ϿoVcrq8n0f792P׸3<܌N=hDymB y()b>!n_.ٱ\r$_](~*)tjRU a+F-܋帯U';πIAO7qJ{_4ϙdm^b֞>yWӞi d!#h\:!rSpNu~&9"wZڄAF AeBO%&Dscrx =͎V6iy9+_*?]y^PbnecX4F&r0A`<>_;Wy^Z?)֊#ޞ!sP` 1o2 95k勖K)'&!ЫwQ$NN֓7|)#R 1 wwoHA ɡdF6qiMs ñ#-NW\pߴ@sKoB,tQ+ɗ7fE!wʀGVD5zֹ gF("aɖhr82R_&D:ā(Wd<)F˛翋F@Uky(eNN'~`ַg>v 4 Pӡ#6AGy~+ :éV{*GZW 0Tpۏꄱ6\)},%]qeuz*6yfY'NR6GD6mI~3>YNEk[\EL&Qc +JÜEV)Btr: ?B|˩qSx%'Iy,e+3 \A=3[šYVJ%Ǯ,l$KWT/}Y2%F ؈݄҄&+3#8ݼU#Uy$dސKQ])2)3j4eџY`= E*Of]jyvrR9dƒQ9(N&xPOA}an^8 8H֐:C! ɒMsgT#i| *0.!Q{UΔAMlruՍ} \HZ*&ND(T@fo7NbGn b3 dQ5bMLHץcim LKl%/Nf6b ݲj2P'vXiUfgDY y w˒HͲO4ӌ׊ˮx:52 !rՕ%3-M״sDQHGrx`rW2C,zʜA|;[jQ0o݉r<9٧0)Xa֫rJŗjK$}~`Mҿ&16$S+p ϰZU]A\kqu*y8Tse՞~1/X}ltBik`c_d%Iߏ4h3%TASuz?rᗸG!oرߚcsbġ!t1څ 긯d \{KuIʾdNe , ' H}4nNԤxE[#"lF"UiҘ\M`!2~mP?q(iQ*,Ƽy=Fm\^߅oʐe_q;@/Hߺq}TPѾ!ӛ$AyR4GI Adr;35dN72?ʎֿBbJ.sox{/)w0̜59{ϿNCӊ&MUxnH "emL71 ⽇'ˑKw1$~g]םP敭ƺB-oGۅ*456}qk`uWk|7X~y%y zD/V4ۏNceL9u.nT\lyC9qo0I`d]oA@?:d_A Y$yG%a̒<jpVd9Uwb}0衵b1at&vVj,LŢ;T$biAIBr>KJ(@w<֪9 Dr,LqS.1me+FxDMh QwePXYp+K 8crn[{+[]/ a.s%{ $a^+a!3A*[=T<)0p1l;:[:Y]쒉I@%20aR{F+ŧǀ5T~,5րx [^ޚo hq)HƦjܣbQZ=C:O\PgRSsclv^<Ʈ6CaڃkɽLuZS 9_8CKOa|k~ɓ$U$ x - NťsL@ʩoU|Ѿ\Z ,I eOY7-ϨlM%;`JgYFl(' ?-#m9as =%ͰOTFqK,5a.S؟J@!* B'RqZ%0WvZ@Dhb)87-Vav&AGt2L=S2͌*}[@ED*܏`d![-a.ڢt}^Je{n@ͮ$PVg ~'~& %^Z#ifvc %E9BbL?N4KSlQ6Ѹ]5-MsB(zD[L*$y=.y{bfk;XhIR}?<*k^/ix{V ʃbisƐ7/ޡؙ̺ D&+b瑼"׭pMtGԈ+WdXDxF̲Z'0OnYğfA=q=G'(6r oS uqWq)"8DX7ΰ]xt}t %'W/N$zG9D ڇ++Lq?K^ۯqMXpb@ 5xF**El6k&%t#55[Y: t|R0W d+k-ߙw>E6; WeV]54ZIvKקY=l2ӛ,f) ⹿Y&UFM~ 7lb lK֎7`J6XK %LwWo"{2dn]]t~svzO'%?k,_K}巭E>f 6Q @SK-ǤD P jִ]TTn3)&kR\2SNšh)?>d? _ qr=C#$kAP>uC?B# MQ1=Ce;gg,Wy/{qͰ|}3+!X>8#S[e ՔUb2yܘ(tƢO+{M I{m`"ӧQyT[`l^:ښЩH@{u6[C1;qߘ{hQ.8I!w`9&yyl5f 9I䡂 |:XV,L}wϊ2Yk8ꄱ TIOvBw}t^7Yۥ>uMtz=iG^ձ !5DM6/U#8cݚ!݅%EC_4* n5jʗ8/1M'c`ދTHP@Jl2d67(qc/;a`NhA%d̪΄^AX4*ѲN=Des9[,(0i|jaܥ 3O:x[OnW7gPʗC7@]q@#f^:WKEӴO{JhsU6/NYTcQȥܲ̑8GM5ȑ=\:*J\DrI}&ƛF]xӔgj N|b܁Qs`H1'̲JaXJAS'V /;^=e1@FXo3Oaʤ-L%F"s 1S8ra]ۋi 2LכVAX6̑qVZ76A5q\Izv`m'wǫ}< |띈1 jY+<Ѵl+n8~"Ejꥀ,^>"F,YvߤeMѻ5#Q t5[G%v򥢤ےmi ӹKwcyLdi(:x'->S8 :X?hћLI}N?I ,6th{juksķ蓆;ۧiuZgLh >>gK.;zڽN!@G㬇gF0M)ϭߙߥМYi+';5J K9uQIr)-FJ yd3_A8^!K7lj-H<_'*0 LY[H#,"^ͷwu+┩D79Z5^2]ZԐgڂ{[m=tLsY慽AD[SկaASdNP(Ft÷t<\Ji7@)TD%"l.j|_tR]mB"aEm&rLRDhI |t泏l& Y~;Y|;]%L-5BE|-;VZQ2+yE=%eQ$Ij4 r#Ƣ#)֯ ^cshQ}Ӗ9 J;"oKE?n)o1H?Zn%LN_)CZֶI9>ؕD"w:X 2E `W3nѫ3x!t#tWq8FhŠ)Pm"p/k0br~"L;ss5t jsUG`<|" WτEJj[`)1<-,vیl\xBQLKTlj;`|Q,Z/[e&"MeuPa# U[e9k5ce]{'|?ӯ?W^^PO(Α1= (wKż[mXxhzWU忁N ǒzn"acQ8OR<}KL^"W$}L`{[$s9 mԛ8JR?<5=V}r&Anrla_L0L e2s[nYP]a7w6 ?3G曊⌸X (RԣseOf榶UfH(+F ɪ1M4pi޼ߐٝ,X4l·287-«s!݄1BZx$q 0G+!7Z];1]Fb@"URXՑ~7]M׳COy[+)'u4MϐӜX夶yIfY@ײ_ӳJ<+X4B2e1Q./#oH%Y="lIV_>PN2]6k)1S9W#hߴ~{$X n:[Ip("6by!͡:81 iFH0^`NFh6qQ MS~]1Zuf^7S&%^ .MyZICQE}cT=~I-h'\Y<تLy s>>͝]  ڃh doW3w2O Pk% /Sd7]*p `\Iht[NfџM}T<ޔE܀Nw=fL#%n{`ۚuU~ WMK_h# tWF?rs@,}$/CS#lߡ(sB.\3,]'pf?߬Iv 7pr*U[SެieqTb؝N&V! ȶcڧB&8ka]"CDB W=Ϛg9|k0ZZz !q0 !ʷv`dT58@,)-]2mkqa188/`XhSB$; U/D{?x X9ZޣvBgůf5s#q&! f5碉]J15-.] ˥Iv 1 .rƛMT_4'rQ2f##b4yk `aӜwŹ1}UQ0,Y MA {d$.ogsN '3 tXGFd\̄ޥ&Cv9}*h"4[s>Ӹ74&@5o"s' td$z\U ˜@l)E:`"(_g>@q{Kܚ^&>o] z_t걈ЊuRY̠h %>^"]ϳ>-q\}(?4fxS9;E$#HO(I-1|I-CV5vrvaM֏b (h$_3 *HN ]fkxYJnb4Ri2&+Ϡ|@-",*O>3HfMTs/f]Nm$C6nhﻓ "t3yjQ6&oo"\3 :5Ղܲ8[,(Q]GRX%ݯ钾>z4 }ZD}&>8xCIw*8`t)&IF n&g#w# s>doYQ<\M0_᫶>v 'eY|=L { *Talg@kMf߲FE7X0_HYX d!kB[r 1P- wԴ-KRѡ@nŐS[oqmOk$oQ|}\F:V{sN:YO"".Ј+]~x}x}/W>H*#均{67;MO 6ϸb5ͅHI:3e7{#몢Wd!S|M# !tTf@m2"Pat>pe\qQ<=2齫(Ou7e9/xP- OoQoܼ̊yVn6`Z {ZވaFsOQ''KVc[NVRdl?dY [tw+ݼf(]p5%'ޥ[H{t=3iZAa+"ʚxjKSmdk\F"ԫ߲ vϬW|_Q_@dXEG0h=%CQ^߼jsAA_G 2 9d3/3BXJY/^úl6/^qНsW }c?!D`zWqrb2-&+WY!K|OcGךp Iwh tn1פ7uXᛱh!`L{zVq#g%%eൠ{> G\BiO.߈dXx&dA&YiX$Eb?S3`?k'UhRb cE6![of4 ñQ9UI%QCNW!I屃F̔2Nk% {^شY ^t9<ޡ~8LC} MhP6s71d[6嬲D )fWtd*u&J5_*oIlM2=]L!ft # Fj,n͹f.WeUO<5 1)/s?fKt2F+!̨d~ff_ˆEۤ_1LwG$G:N:M֟9^ -`14Rg5c]ѼIK99emcqT9 Yۄ*S7 _$?jE2,*䊞ִY3.`ntruw *خ@T4?P^ (n[FЩm6VuYًG!S͠n /UU<"Mߴ-Ma-8`?V?vPo};D8I$?f,%'MfXv6rQ[cSVI(YVcLOTE1$]z13,_k$1:O}*4s^Y7LS' ٥hj2B /WZG2Mc?)CDGN Hmc9_&}B@swΗKS:z*ǏrpEB B9oO3mtaCG2~,}wO `lB̶҅ڣM#_^EoC\8Ju\. l3l).3htP{k2"V ת;1!Zq'YHnLFsFE v j*5"ԣ~MG}\$3:Z1Űpqu]aEkS}_W- Md4ISCcz`[-QY ܘ=#h)}ii R}f8 @sA 8q.۳lӚoZF@f+\ k_vNWVb4M"UDvL}BrQoz".*WT$wM ,[T-30.67.xq]mi?l|Y}j\'eF\'n韥(EVZ#*/J+W[)M &AU#+:GW¶U*޹2z~e#)ސzc<ՃEW)[w2T7nO4Ғ`ڽ*9U=8$Ptpa|7$U|d0tW]$1O3rS `zv[ Z뗮)I27 w,SWmD5=-P@E.Tqjӎ3Zn ˜>HV>n"P&nS2Dg'[OϨZb"݌^jItAYn8"QV 90t(ICZ @۴:Dt>ԔtjB|bߓ)Na}<|kkи,6£ %Q7U! vǾl =3һ'Ȫ}+$hjPq)Hh9j7 LxR dQPpJ4L-]a4H"b]QcF֌s T :J0}Iٗ.v לt\uSeЏl' Y+>u,4UPydEԴ@A&B$*Lݿz_0yG=?'|wK%L$p }J"+5XVj{xqn++z5 qPNmuTi R{=0D1R=)9eoSu8kK)59/x6JL vr UY ̍@3pbϪuUvd;A:VybY,pWImnEdLVK#aCћ=}s:_Q1V@LBٖd**ce(Otl٤*&tH-ʟԾ.pEEӿ)&ѥn$C枰C:'xuϚV2&A"}.Cu2*sx"~r8jIa*꠱"~\([c3<ꇟv8IgKQ'Se)悬LORγ@P&|ÕCZI]q^wދj&h޿ jК A$"5?tyk v?!QvRgy[!5 ^g N; oXІ@H_Eמ6pM#d͆J.E3Qp)M".!E1M0on!X`pWJWeC# n1/gH}X6)'9j\;^ zSep62}u6pDY8sbԷ85|Z#Uw6pfƧP͵ oC vcuή yT{b̲s_xL&6CQq> NS.)q;V"LUwC -YjQNPA;w ֟P[7P`Qm|A!0(OjY3. T eqhZk{ww TLfA-mE- u^Y)CaotKތj~RYeqd-jm_1l~`Υȥ$}ͥ8o$fnw?@}`F}y#4&L@@7O.^xg:@o{פ0w$ڔ]6(:QR-b)mVs"B1K†ֱXJ X0@tቡ`i5OcVXrC q,?NblCTLśqfVNO*@L͌;JtkȊ)(\Rp&$J}oܕ qIE5/sXcUO KdV2>˛R)rkӈ 0(VB'@/B-dǦzxXGPC eF.yjV[a'2k[mXE@TBA-뇪Q"Aa (`G\l.rq %V R$l`Wv_F$Yrʡg7ja4?5Yv 5>b%9 l1;)GjT'y; \PMZ&o{Sso 9vX([x#O&x%?O8h^7> s7`h#EW7XN5Ž4xd- UkNkƠR]Q⢀f?خ,Fٰx[4 4~elYm#MsݠE&R"LFSw+$jŖ2+GuGʧ7P@2Ӊaf-~fTnLK-hF*~3 D&h"llphő6]m`I# *A!eHVLKrj"ʞl>$mVU$Hͷ뷩1vĝO wq6+ΈE*/i/8PB_n׊:##1empsgšEL렱׷ǍK<Ҿ gݷrM|AmM,i \sa=G4:<, u1eуƏpMYi'aF>+cY8Y1'chM^*yĊH\s\dA 63Qi[SݜKri3eҴ4@xAy ?? eߛא@Lo5I9%Y"Tϐ‹-r7C_?U :-]MLSuODã ' z`U["9q_ec|$Hθ%/;V9шMu)EtO=rEr'U GIfbZ36%8ia0"3ـ;CjYv}W.]V I7p#\#a<~ *rQjw[KC̖,(YB:H č\xLjb3D47jUPЀ՗JL.;S1Հ mJy1ս /VCptof051ׅm$?ΏKZ IF4)j5=]gJߟxUzS!aX)MW!& Aa[xhI횴x i`Ke&00m;a&eIN[a|hz]wGI;W;9g-O8˔*㏇w<9AhP*3Htdi׻x gP3S _:%?RC͍<ćkwP%'MC+m}L/xG`K?v9ۑsx9.P'x(W{yY}BI4&f,$8HI8 )Pe]c+R!ܨ)_!+#Αծ3Ƙ7wvLwDwm2&LLg0W?!nsns?)ƨv=5|y;Ԅ~ KNy3Sɥ--Wv}vhwuG'yN$]i|PZB1iJ}R/fAQٝ=._W0q= є_T$G,[PYsw:,#pӜse)Op<(h6: @;oe?|youV)'}-?{`ӣBJ *ҬFO`q~|6~.TgFj.2qOB!iүC,3q\8LUO΀4X?K ;RLw1._UߦPIJbWg\[lUzCHm!-Q.`x))Hu!X.p& KtkHeƹ!VjTt y1l6+V,X6 buZve枹Gl{2?FtzT(sX[EY KbqXX`Xpʕ],3ouͿ9ӧ2'"Q ٙ6aO*@5yf>ހᗿI.D|%NY.L$ϸ˳4jEM+8HBj]X^3m9孛8Nr5w8c9uW㭦8y2Br[$B\c^l9 {'h'jR,pAts)S4àrj>U>qaVWHve%b>1kh۳C4> L 7 ww:`B7%f/Vr4x@q0Zd[G za|sy46.hUct/ެ h:m)U\>:%U`$ĻHm7(G:Zp뿂dAgk_~w2F}6;*r(^\/3Y)"@e}H:>cm^;fݑ#j. XTVp_F=u]ܕ TsvzSt5beQ>~|eG-lkGB'Z=b(м^D:1%V6!@ޗdr3|!rʈ$}_hFDj5ulo욈&=ԣ`g$|XJ`meI,+殘)+U0Il|CO}Ɣ@C0qɬ~սM<|e\"g%a%1_X z>T~]GE g{kA]fmgJS3 Wr<-o--E<ѣG+~̉/]e0n,H׬ ܄@/43?Yn-spx:d 0'+orf(Y.t$ƀu/hq $G> !ry B/ Y?$^g^ǒq*qs!9X"j}XIV;m ܐ_yU$k:h h7zžZm ͮצ {.pZ@V^"\9mcc 5 TMa%>#[P@lKrƫ.**9|uoLn_{L"ԩ_ zŎ)İ-f%9xb2KNHegP4QM|0]9؂޷4;yF6Zǖ=y<3LFIt ܀)HtxS:%WbSBf )JӦѻĕ pɁnf1rĬidC)Õ̝vo;J%3C5GꔩXzU*X醒._^3ƽF^7&~NRJ`OMR'#V@qQG`,>xNQ-nZ\/ӍJRE 3̎8?]}zn. ('tAa!c#>et_Z'E=ψ 2ch̙WI kL ÀϺ_&U֩fQvޘiIQer֗ ~jǂDBaWƧ߳-zkVT8t9%&wnUz)&S*Glʾ0~aBW7`R-70Te WCeK "*je} ~2AZuɁ3&NmN[%UFeaqUNQdǰkvƍdfEi8w X=x{1GدNN\ǃxm1GcshWOt쁙!VL@"yjD"Hv 4B! WղlHB)F*SMnrdh5vq6R (1.oIFo)]0LF^x0m XXxi UoNGY𙭙`:%fgKAliH.yU\ RR)I==2 rO"ՃwS/(?==rAjxaSu5<ϫ&T1_UJm`juM70(H* \WRά5`eQN߸}t2eC՛ƿ ~\!%v̩LVAx5#' δ|~UK,ɁZk#C,Sb@9FD"Zs ? !bڳGuK`).]>gQfd"09$Y4r>0p:jbaobA9tX7%_QNæ. .& *U%X&֠?'2Dh0\Qb=L{>OsuiLҀ Lj:9&D#+Ծ$8OUaǵDDZhc^]>0QTKF >5Ds۬g2B5 u曒ZT^}т*AIjJqmUy6>]aH'}LWAqrl$uK6ҽq9î#dbukQ5^1AJ{eB7%漇 }jaS`8}9VhS0@T,DjMbk59AZK6A8 s;{Ua?|zɜsNɪNuӗ4C p?wuqX6dr}Mu { И晼 mKH!GkQ}YV$\ߺ##=ǰsߊ6)AR#F>.n^4`+:O_hʇH"^KPc+mulA #vD*Zy/H{ c])~L>/hA`-q89vaf"$3qQIS?dBojZys@Uq j:Mi+0{}BxK'S5©sr]$n围83ϔU iO~&:Ks> nf^W1şy~mQwǡDDͷ!ه~a)'h Rc>|SZL 9Rg R}+VMEuv~?|yIm[5!NtG &,}$e3x~6v<" /?wܧ >bU 6A!]3ǷNRtAɗ-U['Od'>[R|w[t$D^ *Tx$XM"8lX"B-3Rv[%Vޥ'O|,PڙPn/58 PN#5j?%9/pB/>\^ ,{+֑e9lGGZ9@Z\6ˁv<6:1/ o7 kepy=#@ (A{8MqgмbK:}Ϯڮ:h8Q ||oTֻѼ\x!&kM&6\G/љ;EmPςiTyzr~-'F(mZP]%y\htw9Fx]2|M>cVlɁJjgٚ5;B+5|FxXR~g"i34,N(Q$ .+%n׳fO$Jt}ԵqIt,j%ud#x(-vVT¶z'i~ZvMx=/h{yfc|zuARoSB*¿󇨲Ϙwll}Z|,xwc:rrRMqJC?t­?@4R)|n[D? 00F6M`KˠiwK.šjw<6 l42JpJ}GdbYZq_)B< N޼1èp pM9f7}j_,]"a]2Fq$4V&_MbN1d6N3K(`ENxF^mg e;WDMif|5Dzuy ;SP?P3{XE DEuQ,Q'.uUdlӻPiTēE9n^PUЙK~Sq˸[Ss&o=_KK)_*'p(t#e B= %GTYAv΍#LkBTf1~Daјw'=%D8cG'[ZVTȘOW"s'`҄[;kǚ" }aѽKϥ!L,wL/Gp8srm%~ 0]6TJum:a Dd =<!~#Sc_!2Ou{zO 10dlC:p` @^D.s-[؊F'frREZSQdC_7,Uuu|@ky.eaȮe\kvI"-zScEI3wkk=E6o,Qnneo92rΝK8Т'6$|p+:IC "F[; ۽cވ1 b>KU$M=DV:(UPsBOr3P]}'׺,3pRN3OJTG$ ^Ӵ |m2McPChKL?o(n?4ZkϞV1&6šC+"}Iaag3jmgR0=/8ǠawbgUQ7 =t0cowu`ۘbQ%ΧIB~ć2$⟚&z&<7{>Bzť{Πە F*:7}ygtb겁3_^MQywwk@ 4ㅛu żs""%5<: 5HFznBVځr(Ф!v@QN|(Xt gs\ Kp:#%ķ'7nU"h3ӆ8r~D<^x~[$3ImIk:ˁLx;vw(l. /Ҋekbiwp6<>FqK.4R}iOOhM8+%Al"tnJA`/CO yW`A-jJɯ~=oOgp ͺG:,ݔ*Gj]ˈ˄vU_ЩGʁs<[۟ӧ0䍑K#EYilY+xnT,W!<7$,2yM>\ZbJx3]3DhUD +9|yLn3Ʌo'ѭ݅Z@:31T>o+۳LًHۚc}U:-_GKn~ŝAYI5mTH%$Sy[-s3#|<mWDMqU_jr :]A#P5*2?gp- ~&'Gx? &ޥ )\ëࢇo&v3#LRC$m+sq P"=HEZǂЇFA<~ppGN&L4Zk-8,A Džk$uJH{m%MO=3Y̸Io4tFY'fEN6Lkυ #4Oԏ)09ؕΏ_4! Ӟ{Ōkר;łP[1;IS{輌u%KJX-x"B}_9MH׿ߦA׹W[DqtoFEWA(N*Tl_b3Gak >xT:vRKvOj%'Lbv=}u'?Hn0H Rr5:tQt܍ ^؍f1aj=Z(N,O/b+ f$J܂~1Yr#p,[Ab6ŞBD遲);2[DJQW133ocndIj;(n۸[{ 3TqǎXx k^dwp` ӹQh~(ߨ35]Tbh 7/"K g+'քy!Ox}=af^՘8]H*qvHLd8^Vπ \/a~P;SZNkCBFk@E!"Lei,8n3*9`E @ /0AӉC^E{@c !1GJ;K5-@͵OQsO 1-(.zX8|4ف3}!aSV ʹHV9GՖN"8u{'{Rg6bSVf)ƒbO|A/SpVU{GнbVfsFORC_3 +th +B3 *"kj Mx%rވ)UВo=&J߲ 2e) sC 4e"VFIr}~-P<IP{ǹi#7lײC֙/B5r^}*$>ګH[%aU˂߿U+,=ګf{N=ke@;Ha/c$ 5`W<K879๿ڴR8UW9(@~y@$PTCS-+7tosUϜ:UB@%L03|H/7eƅ]RvW*_+ʾ"_l\*"܅lU=lhP,=6Mneh2(Gs`u^jvw9PǮ}?uImoi C~hm" wS 7}u.,쵼plLeeFwuQ&1g13?#3cWREQ|Lka`p"+ZasnZ=cl@컻:9d]}jz؁}Is'2|1og]miee^T.ȎY  8b CވL40B轎e?XjNjqU4be-$;_8b)^6Fܿ2o ey()ni#P|h9 2c!Ľj/E) -|= 'IGyC:7.cT={73OJ)WU9;9dQ}Q9]oWR:+#\` EfMgxЅE:Q zīLocy {(U_ՀQa#S@]/C!=*)N%Փ2(7h8VK-j1\@E7>Y~d%k]fq4cA6Tn,eE2x FP)sWTߔl˶ta|M7Q'fQA w{_G $ #t@d ~:)Sk3OOFӬYZUjI|E"vlgB#+Vñ0~3RC 4P'8 3Ȝncu̩~OA hS Fހc9Eǽ*uiYA~_ʏ֦.daR!3NY|R ;YrXqZ1oܲ jإo<9C xR)?4O0-hSՐdkVUBdC1):] &fpMQC5|!@TiJ*&c͒K&7U/' Zn7w Әq糅$v3ee(2Hm),')kb KR~2X+dvδȾ~v D W7@煳#K$[6j|aJ#mL qͧ۸W&l;{OsBRH)f~-MX#UsOkh7@ojwhKOVVا& f? rܞ#FmjfM'`SI '~038L3,;6̸.P`a\dl@b`}*IȰg'}!j&0SN.3mDsFIӺ`߬ In8X'*]50=K9jp=k^ Jx)5R*>eyϭ'bNYjqxNVvNh漎 x1nbL.zTSmHڜQ{'>A&P#k)۱wILrKoP^Qdj웣^>8Lu0O_Fgh Hhy=#zzހX+Dl6UWKJ@oi#N]Uq ~`yY0J潁CtC! SZzn#Nͮd䴨jgQuJ!mתuope_ë˗#p !mzrb>妝:|+zuCe@%-Ȓ+2  R!|}G*p|lCwA\/_L@#aS\x 1$5e(4-ʕ{](Yz7HɺzFӘ8<5&Nmŷ_V+%pHؗXpq')>1 jWgQrṗMU3xB,Ø8&qd@EF.lg0Y~z(cS6 #H*IKR願d@($Rmf.ɪW%㠳|6aB|,_AdL/1@ a¬IFI%cL|1((z[tG 9?dq)PJs";qS߷1v ·U__fz3,_AJ\:K@gA{ΈG;Of l~KpmBv5#<ӡS[쓔x0ݸs4<aK NuufafXkMB5nDGhiuI+6O2i|B-2"*pz yT7f4ZT.ukpP J/ !)דj*Wl~"KUn:S9) u R hY40rxM'OJi1cWݖB+m y2 @S4ZJTEk4 ܬya#Svc[`U7Z@xU7tL1SA^q>`Qf5o2N9;tXLepfƐH *#XهOZ~` UD: \ ObN>LwZJ~oNx F^i}7[V6nXMJOFf=lWsD6Exb](z gJ7͆!eAó5.mQ{#TgKd/6̉J)?d9?Pɺ:&xcB•ZV7,ż3^$JIÐ|1PWIQ7{Œ8*-3p1MNx0v\slTqXEDצIefg,ǚrĠ#!v1ψXMᢒCӫd_._Uxw4u5'vv z5U: 5RrbX*d ņ<@[i-^slV93ϝd& JCm Pu^R4\qL1N\U A'w@L5f`=AW;k[,L˝D&! rU~c!q'P: 2n yzG@ˊ7SŃ&[3SIa|D(NM ߙNż-imT9H~.gXel!m{nI0ߔd6 G!dD!,B;z`޻enwouqoZ=t#$)~E^%Pgj>S-ѻc Q`te/ @ľ)͸GF|e_Pk uѐPHnfW`rs3s,㶴M<@A1C@y ;m$ gN1N%I4!NzT,}CazmcI5 Oٕ  FzqWvSIhYFyStണI3Uj`Kq n=+|b.-C\Ljf-"v05 )OyWhmhmQLxR/u f#^luýW\>f9\HzEMwYҗ6=:` eN"GaŶjx{ [)q0UG-vXZ&{Oƶ/?רr\T݋C+ƹF\IVMx9#b$ =h5)a׆M*H*@uX055]q 4;U9mSen^M)-v(n`˫(|b9Z㢛ݢ[~4n3O۲ٍČ}㡲)7Ti{Z\W7Yn֩2鰽HoYaϱUIԱ+X Mg&imgHc$J4d:gp:.a;xطZ;Ɖu7{gz~wJŔ+>)qCenYG ؍< o!};b5Ie ΰF,hhL\&J@O˫lm9ҒdO"֢ 3a)4-ħ?Lr15NE4wy7wXћBi:hV/~6՛ [4kWht^tLw5;T Q'_o/iN/3=&l1@\@ "r9§M#̄r57HzSnPEt!9+V̋LK&tvY?ų[ǞmbK$ɴ B*"ĕaɷ ]^6{Q"dr!l>N*S;QM3'Wo=Vtly\ZN VbJ73Zͽ-wA9e a1&"g2ݎ2ew@+ (Bg)N X3[L|=%+.db%{N/2N;+ ~RǾ+HGͪ*PZ8+׌T !fZ B 5M%g.-^(&؜1A5t1S É  fP,q%fğwI`~Z4%&] 3>{bohHK\x e>Ԋq\'T逕Yk.R1N&^eSSVT뀲o]CH2u&i l st9ni7/+Ұ\+>@[x+6 M-D+U}@t'.Lՠ8`MǖMO-;iΒQW;?)Z] ol<3ʺJ!^W`ٌ@S:1[H8 t [UW{ 7@?B^9-H<`w;TuxEfBC:-Ҝp֎V2$み9zD[цH-U1P`Bߥ@ ќ Kb DYM69+G k4!K6 + ϟb9825ӶQ կ:i,x =}/H\_^GIJ[Va9`r HD"*՞Y]Ly*r>x 8E\@Jḁ&͆Qf#{gǢ c'Мt9 k_JGBoӻxv8G?"> ~ R[v6tM)+q@1GR'OqPNoAy-邢Q\Wy x}E8nKc`JHxr(Tmn %C%{B)C*C:.fqST<Ms6))Ϡc<5%{9 %E&V02oB~M5(=T8ӗN A=ݫy|4O>~2̃#mj =6R/l>Rޜd&1&L]+='5cE_)mA$>\4296һПoؚ[ }Yn~2$撔y#%ݎ)B\$mVKAS-:<&j Q$L|># HsC2WtELDI%Ip!H7B|HA=Ѱf!nֽ,LίqMN;=V&}'0H c%Iyl񀼠p)D,سjW}/I/送iy,2@`xK! h|P m7оɁQ59Nj'T8Tn7j~ߟdpoa1'}v#,z֤Y,u1q Q!͏C .+9k؇U -v@Z!PħiHMBwű ,G_m?PCV#b]YD)/ Z[mi=0 e;ɗ>KnHG6s[Qܚ!j&En.h#B:ON cUﷁU ꢂ =^s\)qқıg5e݁QB:'b>m5>=Ejߤs#,tZ:لB.|`LiGbwȬJ#C⛃TNEnJ)@O`91V;>\J*A6sڌDX&]M՜ڼPQ&Ɯ"0;]rҨik/]/foE-h̉_ڧ+ .i*f$ARqCmܫ1Yl#`cşԌT%MҔalTf#< \fZ+> _3TD e26OSftY5e+΃ʞo4KUiۭ\q:P2/bK#"@:ߗ>z#pGi`پNZ:M^}@r[jbҵPAz4qS1p)5P[1*4HhVjo5 hfolq VTm#RK5ȦЉ#?yG (YR-hЗF#'dE1B \ԺL&?/gQ+PsvCw)?vzI ;G83? BH$Rey' HdLBئ? qڑ M@߭nO*RryK1:eņL-~H/W̬Y@x!^X-2edhhКypaHpTJ5*ufbe겈.~n4 8 B&oPN~飏zuO6`@- j?& yB\'qy`;wQDYLcکK~ :@Nݻ\(̸E:Cx|dRGŽeɥu"cz G@q"#,dy-97t$D=JIxC"ʎ%fM!e.{0EhF(6VP@k!t%hhcm 4i`RP*gJ0<0+m5p_!TcmO^OGl㸄[Tkl;G4fd q'̔v袸8RG)#=0Nn0Kn9^I06wږ S+tiv*=ht3G>~*=Q˰)b'h'~XhPbȁP:TxLQ|4 ǿzkU pbZ *#>Ŷr}q_*l::Fv g1Ty+h1"iu}ѷUJ;{>h6{4ᕱD| qKI1 LMYcQGv!玠LY䴙Y`ȲچKn+~cՂJ0{u&jYѭ|x>0"5l@d-?'AuNJJXPGD8TP ̼?Ň3vׂ7KZp2_%[X&.`x.~I3fr6ɿvB[I|W5KRК)OfcpÐ QJ0Ι/ciڙ= ;_\$؈|,5535>&8m45b[ &I*:qI'ʃ(t#|ф3<slxjbH܇9>7ZQd3l LypޣNZ:`z~[d>p"az'3U@`_]'Piyoy*a$_ߵ|dbM fmvH @9(c?Q8.~iia)gAtTXʼ+rJ~euuopwxK3M\R=D0D1׾2Lӳ<$2Fל@8FvSV^x ?BȢbmG&H &g l<%DÊlw!.x׋뜅5H? [CkvQ. Wpne9OԒ'o&n[Em7i9g! &Os, ܬFK lVL0sC3%![Ч[L Չ^L`ꖙcnXFDejd|oЄO+)sO> IUmN^/)SdT|GA#/FɠDu[a9`of\D9VʀR+y%v1+rϸ)n~J{G0"pf?G` ˚PWZIXalRrwgnUQz KI8@5ͯmglN2v,;q tBeȖO?i9co` Qu [Ԑ8CGS*#F@KF̀@ylDͤDvԽʥ\M˔4 OTg򭥳MB=.XKgQڂRȄ$W7s8zxk-6O.y#HG NݐES7>v *i4@YggvVʘ}l;xsrgS>s1>-ovJ$\8AJ'yG!tt:-%(Oy48!6]RC,2--r¢[4іgF=șT] }S|[Jph!q/0lcCl? 䧖11W#Cy p#շ*D30"q+ӻIU$ p$ڌ~3{g꽮QNo}Yb?g=ԕr5Lj.mW4ru)s"2JaPkI<摜YDJFa\9^"yN+unj(Z@m31iMbnf*QZ z\IT(WYsuTW"]~Y0Qxuӿkz-uyO;m&V/?SD=s0/\҈cr4?+f]P&_8۩ ${U}*<9Զ+OSLED8@V$GP${:i)W'U=O!U!w@o-)L04wdJErHH1~C4O8nd$-A{0ȑ$Ǽ8*A[.Z 2P"VH[p'OI"2GciM !I(yAFBu0T|F @퇯>f0,Z1J^C'ڎK 2 T; lAʠ[y&3lǏO\^%at$a̅ %{a7Uؼ|{ "/kj;_ž!J~ܓ"wd^AǾ|?xY? $:ud{S–fـy}>mmnH*B|hSfu@d C Q*x`A"FhѐY]œx ZϾu5;i(<y z(^Ϋ |Žٗzb?6i+l: Rx؆C b1%^RI!&.SLdd^QQrQ79N[=!#xJ6n}Ovj6:~ Atx^4隊ۭjz0.rŮ8,ü 6-/ 5LDxVQ^)V7e$Z3*le7cٿ IrVy<օ\i0qAg|&'s\Of1!9Jd))Pt122V8ezS0i~ZB?^!ةОĩ,UL]|cZ埄""EmG㋏@v_kA1`8Ʒ2WOw;-Sfohqҵ8>,b|+&ߠ*A";UDq`& HHyUظOI[p2󰠤w7\i!=0Ge8hlАڿV*?]TV aoG&V9YUW̦wusu5_:zu#7ISe[&P8 8?9!'%r]jj4xL /ҁɪܴ.@osZ.3 ? 61󕱾[Ⱥ@ `{:_'NVq̇VݨNf%˴eޕE|͏CUq &n;>y}zzuI/вx0(\z1\S "ʓVǟRY=%8z5*jy%cl7=5|5'S&c|>k~ k!ocGX+=k嗼/W!waevvvM3n3Vt;Srr( Źky+qiCmF~ޜ/20?m%lHbUTiݚRc!;P~l)W EwamLUtAmN!i)z* 3 vzCz`4|3ѣ{[MlHh4' S2.2B퓂~9ff3ˈgfNjqq=po`ŊQ[ ƬQ_(S m4 !DH(G>=-unRPJx$_r5 X2*U }xeI㛂!mx$\r NMŎʪ̲qB8V@- yL`iU(@MuL2SpڡT5ځٙ^A<[Wz"K[XucW<DZe67pnqvT02GEt,/j= Hm]*ݓ醮9{܀𓘧qNS39h>"_ ^3*\p[oh%Цa[o +-`%9G F:)kORrvn]/RB2Un8TYye'%#@7i.CtW]I Eh`'oZ-o}9Cq{IttAAu>ȆJZ@^Vs9tĸy)ƹ ,{64%2S=Jkrk&Uq9h݉C^K'PnHHAmw W'@ʤv5u OeΟ-2i/3 ƼH>Qkzep Շ hz"B*3)HoM I`G);l}7$̖Gbᄜ$4HmQ"_fq(Ʀb%Z74]͓y qu_ hm1` O2w_` ]59~w ~Q!(q^"UZ} YyңlbMݬ̓UD~IXjq0W"a9OfE6ʗo=Qxœ3DikRMp6xҺh}VL q$ ,J󱏧!  ҩT| DHXY s\l(V=H;TvQv1|đ&r1|NYާq`7?IO"l6?m5} ^>oJmg}#.R+BT = q85i:V8%gRq% s2:QtJrSbZ]j ;6!%cq{gVH4ՕżB2Vf¾ơLxĮBaO­1Ě;zkj${pkgK?ҙThJU} uo6%̞ Np{~'Ex0.$wrW^Bo:\t dƚV݅lc?h5rR> _|ͬU f=rLH/ wtz4%ALOٹPNj iֆGyitL# 1!{?#ثsNs8jyyխ+uAJ9Ǯv!]h\]]Tj|:Gu5o nm?hUZb&Gr/_cP>= èDH2r%LU S #rq,Rn*pCRƣ|iӂɜ5]1[ KʮbWe㦧H.[TQ_B_@o":̼L~zo&7b߀6ڒlK*Qު<[_Lo 2HT`j~R!EcoV D[mb!"duav2I$NQ9x֥4ԓanZ׌Gf*OvqWcckک;>4'yqrn}^+h^@Ia?}CIFWn1{ [y!tVݙ[!jm^ _H:eS oxeZf;6*SE  UXNK築J&.n"8} BHo q%m{”:/c{Q9f~ OI"= o mAwtB y{lajʙuT|]hr_MYxʍc^'clO̹٤ヾekKujI!:'90N4))B4k ~Hg<͎W 8 Y9ZYw}(q栧HK;|l6EP/$=Elz 7sw 3@,.CcCb؆1=7R6偻y]iHQo%{wyqW _GȬRǎ?x,ћc Co"h<ȴiN-v2޽bOfde5-oD$[>o <ySPGJj\eSտ#%آ,m$ ۜ!wH>Ml6iy6e!C kL1ҁj[G s&7'ా6g byحhr`uV!B c܏V*sv"hG9@'U|X;wnȵI i'Ir?x7hf$b22֙r..P`c@ &Ϭh<~Z=6}5>x)Թ> M2RvK#ra9 ,(kwqS_)W6`5 !U{5 PMMR1@T+QZ٨ &fB;,av`hMmB3BMhk|qniN`mAU@j4fz{eI5w)հeB!z dfмb;jխɋXfd&P#8 Qk”. E_˹iQ|\B=|QlFsIP"TRϿ)q{rJH }EY}tj]>~oݹ1,xT8:mPxAP13_ QWt:%]'dqTOhcoXt<&x-@X<2<6MrXgHF.H@Q,N]Q1k׈oSlWSW^Ê]Һ536|FTv͈o!UEck-BfO2:ິpYN:xdg2zt$ $-YBҡFi4!t#g,{- 3VA-v)VR@)U z,lUU_xeӉ ID_ ɷՈdryJߠ^g!$43I ):ǏN|tsS0a8KvnAZ9eHZ~dß7N > X GIvɷڮ^#>7ĀlB;,뒥42zf{@FmX"MOY |KJ5ӅN8 7sǖ#~UKp{OVI &S 9$y`J ;,ԞGbQ&@Ԑؕ3W_y|2jXԔb-q"kuqqt[,}tb,%O6v**σ6,`Ub<xx%U~@@l^:-Ĉ䀶y0RJK])+u3]rR\쵆| ٔu.>mD })sߋYY` mx.3) (kgݧ(3vB'k:y !;Uߜj&sK$ێnlyǗ[Y@ ֒(ݰB$UKM:mnwS+EY}/y/aO3L)Уli:@y]A #ևΓ@ʖ7#2%lCTtBF|(HnZ>R9 0ףaDcgf4@6Zxhh#+V':*5Q1 $LZr3"JY sOJ"ہe1wd/֪[{}DQ;%F_p MO [>9jbT7ߛ S(g(r_7|Sh;A!<2upѵiX`UWĠΎ̒θO6 @tz&P(UA#{w_Ol#ِ6ɡ" HbI2j\;.ݦ Z9x{sUpy,DVzGu)No^)m!%^иhT/:: X;j= K{G3=g$g[S8_E&3WvA}2)\9b;Wc љS\a4ϣ$E)X ?_GRGMghurfhL Pq4(uXڱ"_8W}548_;R1nYQ)Ƙq|rY>=nQH9aj]~ $4` *|W;8fH'wshϗW7q L-+[n7CKG $E=cb :B8 ȃ4%wI3Bv<%ČmD(|!2łꀄtlYCژ:Nv3'~H+ZsPk?B%Q6I7 n61"V IO#Eѧ(r7x_}AT G;>kt4=-8eHq0`_zsuʦåᄌWUg2ڶ[%D(K_YU+mznVl rF[d=F^h&MţR)@~d#5/ɚ&Q&LKӿ"$q_ɚ1~c^9֔fQ"TֆrAzӆZ?DBS\ @^' [_ CqEU^+חYVoYaR)!Δ>%5{Oi^mR z|- 0GX%'4ąB#]b%#%/2*vTףs3-MV&z'g9,:j㭤'`fܪ3_,3wYw5:LV^qKt+rVɵAK'@uxd},ޟ7Da.6f[*C}3 2F*Vu-x<΁szA2*ທf~Ge"Qnt$ͶljT^ξSt)-o0TJ$8Xw @uY:h'nȆSЌU"pm;T^mBOv@;x3 ,UfilGHކ zn9@H Mgb@DV"l'Yλc E_>A>ܸ@1Qiv;7Y^j5eU%Rzɠ4,9*V3na!XDUL[P"kXPC`sIu!٘7je>ʭO-0Ѻe@mQ!n.\=].x* FBIs/v _8"$O[=E G?VfN6YqOo>ru fjg)1d$@49"44DOWֱ^؏Y=XIdtShWcZm]٣N!E\w1}(s<(nkUͮ˟aʑCŔ1I402#RS; uQ3`JEHQG}dמ`ɂ{Ӯh'o'LyphF/34]p@-Bd% vX$_w M/EP'~3!Rp.k9!^Zgѿ=(&џQ„H.VrQe`Ǯ˩u)Q]WAYdB~ôaԥ%2&Z3 *#ބP}W( ]~-wz.y3|15J~Uŗbi] _z *s9|0g/qM׽KCփPasQrieBk8Bt;hHlۏΈˀyC*ʟ3+8=|5+*_Ycqʬ;1f̆Lх^wH ahԤZlGc:IGRGk{“x:+('rk S9> ԍ!ɳcDȟG` nϏRֆ$)~~ʖо%T"&RC#M+JP'-.*8fS[bc/} 6=mqUo!C ġe"!1 aJ4aMHNLFHY7U*J8{VhJkͮƅ=2>wKj׾:Fo[=hQb*G5}.TLﵬWmDb{; k;jw":ixUT]YW(epQQj'VuO2WV0Dߋ,7atEګ(1Zl\,xZ% [IЍlT]QY|\zݰQ+;lݭO{ kY[1h`ژ}FY7 |>VwZK3{aURb/m]V/WW7+zW2>(ODFa.F١NǢjb*^Wow5\Hp%ܫ_y{PJ0I2Tyψa5L7$}\;u*}8z=Sm(=,6ː#B]k._jDcX)y980R b汀s1ҘyFIGg!:cgP`, K:hti AN|OP^S5[R$ae_Tö ;~M] )ܫ=$/^,F ֶ|7xcMYj"Xc0ѦogמCbĴ6(w[b"47;D XNbw7VlW;8t}8MLpmM/݀BSɢ|`!WI۬ZJ躛N5t)哧eyj&$2A`(AXbWNWz+{`'LT;/rc.#IxrmoJ^N)eN.š5sNCkWD}dGc*02-|3;C"Mޥaa7CS"%r2g}"AC`[<㶱Ooop:6'Q~m ɩ[ (/I3{ۇЩ9+G&"~mE43u6}:SXbSuR&0,旝YvL9ǘ%xfr/Ѹ7{nUFx*&)[@:_"_ 8B93+Ԧ %u.)\lꡨNId}㍇<~K*Zܴ/geR>f(2Vdh#vb*bϚ 6ے /.վK6À8]IrgWJ((0.a]n|*C8B`TH#3\swg.EJGs{H7B;ِL'gFrUBTSh=GǞE:Q#uǃQizaz܇8}̷90aBd0Kme 2TNdנ蚿vjN%aʣY<S,#;ȵfWkTP%JV`X`֦-kHح{:R+Kb NGۜ>z7(khKL*@I`2zȻB^ӛ#p˕:<3'oګϊ~܌EGJT[ÎA\(1d[fdPagA1ɚ&/C#μW%^u zVMui.w1$2c[0#Uu{ d4E!758¦&hxοc@-ײ_J|ƻDS Bs+}#/y3t_Mi&Jȏkc> zBz#c2Ǖ9ӂQ=Η=y/jڕ~MqC?= ٢*Iĵxi|b3 SPGDEbDשT8*S#@P.gb/KuDl#;;I 戓 u0/Xn ј`قe/ViF[7;rV?z{J . MB@ofe~zeq \X^p(uz\LQaU98S\?rR) a L\q!>u϶p t2,-d&f;4d|HE4ߏA@|R, tCC pG=uK]ZΓxO2rMϘ 輴KMe C35Fe dbPa@VPf ,[mcŗǝLؗ@4kp&-܎eSٝTG[Z^ "]s*{j]%9ZtD7;z)eo:$sQ)2DU&4[cϰ^J#q'Н .os)-k1|05wPx|+0Sth}c?s7MR*-rS~'Q'}B^T>VaP z.W&-})* 9\ Xo 480?| 9m}+G8X ߭5Hs}AOʡ8{u!'(-hlJ}%/Z$һʴ(M]PQ1ߖ@S9oܪ;n_W❶:OZej/ ޾3O^>\p5pջ,'HQ e݁aJ|>Ǵ# HaJnrĪB κr/G*ՙ E7˸ͫarã >ldtYzLCV+Dr{A|:C |kTtdmTz֠"蒨E%[\9ʣyºV1 0F3{rZۼjuо Гwy˼طr`7!Bt\P`[&1U[xV$7Y l@JJnB55=-w&"^iCp5U]#8nA$f?U2u=fWiaDms $//|Y=ϙOaY Yʤps P4BoK<<匎Uk?{2Kb" KS6gLJezc ^F8-T]0VlѠ&W Bmpz`M6Z}BL7銯bOkƯȅuK] .X@ц|;{A'=Xׅ1v"<;ɰ~Q;fKG"v|W]goI*rM-Q;8Ak7G3?o4#ף;beն s'[fW'r #p*VDR9G)+v~6y׭0N1(YSW;&n%h_dl8w/LctU ?%[W\-tc^%lwtݻ}*c]]/u4=s7/@&o'G|3AC2qM_5u dI2>(yb5hB>G 8`tF+[!|t¡ٔ `x##?kndܻEN>du vH7Ϛ JB;3 5ϗ%Ge˥z)XeyOXc+Ϭps֬b,KH VOq'"pb>X˳0uG L*,(WG$j:(}s61ocA/[TR>jN a7q87ϗNV)^ƊIZ̘AR}5'`]xyT#cq 25#JT?34^KK] m `KrcsNhRZ5*X=3fЭ:U\BCUNC,'bTVqK5RVVvLۖo XE5z ;*x0:^ݤw\K~-ݩ: ũOã vWb,1Ljc9jbx |Gsz~<';kU0-֝HIphtWrIZ(?nחHMY SNnҳmVZˋo!H-4M:ܶlQf} +8qZh]ZZsLuγlNDIm; gNQNI}>[ӜqfG"{.FocTo4lz>DI'rv̛11n*خvF &*8R VպzBcF_)@E7O@ @; ?~Ʀ* n"3dYurbh0+j(j!tI%*¦} SjO!;E /zˑ3ZJ@kZP; 49pG[02#|t=KD!0KœB:@N%A xy͵2>6T>7;E7H g!'a-U <*@nIp~E*ɡh5yjbP $'e rF-+K*"D_>w_9uˌJ|U,:#޼.,'N%H34 tZ l Q$).Q#tڱ팔WhҼ2Ikru/s5֜Ho괍~ovl21ɻ*p}yCE}Z".?ZU+T;B9I}[!p]QQd2H\VR|;h8G5 XJ1}\CUZY`䇒e|ZErVNX}pW(qeOAѺܣ~ B0S?ۑtg>;(V\]'+7kL%|5:Ԛ2)bp=g xI fWhĆ܌Iٗq3y4EW|GAi>Pӹ~]]赁fSP0uU3h Ж24~7t2.&_V-0[q9{UtDEUoS6߅ ;_ R>pK⧯4G!;|Mk6^~k׌C;B5!M5>,7aԉP\1I;) I'%EwБ^xUܪI2k+ڌưYƙ念(spyMrt}RXko>N Q#[5jM!QP+cOtsl?{q8+>2zQ+]*g,סP|@.J2\:kqYG5)TYUyLXǽAYh!$&*ʑâ^g)h^XKˮ,0 ;!5b{W-=b.OTGwu'[d9!#pSB1!pWudZJF߉#ͣOSdug& 85WK@l= սZ9*`yhlZa;ƕZm86"B ׃[,ZIoKvc3eΎ'-f~bKҨ4!$tKGs }twl2x/.AzuRD;maդ\[tedB _{Fn5LjmM;1QpW|K/o\=ұh@ %_ӿøI.ܑM RMfc{^B oK,H(g:}o=Km-k~b= R$~VsۢaՁق5IQ~^xnUjO,4 K~ii pŠ>K8{mVq|Rxnz\)E}ίKBň7FGAe_eb垉NOyh֝5i\ں d%NmjGK&69WM ZU㻼h1c\!c2l:GJ& @L7Wj Ju{摓v>zaTmʝ_||Evf-V Dǂn+1|btDZlYY k˜W|l$Z|*eIOXŞ<MŎv(8 n\NP&IUK[pD1f.*e3DZש_OΎ8h"8Z0QAX{xW(kPɼp4DIH"ҊYg>IM:Ho+O\cbV:t `8ȶۣeFOc\*v;>H)H Ot2~:ɧށQ/ΕtV~`!cc]1>N;j3f8#W^ @zHеMe۶*h+xX-eٜ44)Ds%DsVAGmW&ޚ΍sTO}X?-V"[nFf~hύy>Ss5;VPCp?q <[P7~JICp)^AP p38UsI#q=V?0uPe k&A^jn{6ri)[c)^ɨq~ҐKn4cGF_ p9M^E%'^_P[Ki6GWgR?'#Ɲ.'.v*L }J: dcxqfed킰2 '?"K,4Ucnpܜ6=\0,H:ÎI>E#ptP|lELՇu,u ڲc%*NB"_#۾mxb5! aw(cVA&7NH ׷T-Yvx/?r}Fz=P$ҬβtVAX3.Fl=Un8#dvJM9@BpS`4{,v1IM NG MF28>խ<7|<`%;ɳޮO/؛Km|~ZAVx‡ %'"o@U̸bu8{Ia|'A¿jI4YRLrNIO|Šx5?y3)(y'A:3PXZuI֮Tup 1q>~iZe8 Kو)5h3n*I%qs/*=䪧 K/j2L`P/Ƭ5S=8_˺© Hx+7h`{4es߾ca7UH積/@?ԗ)hm]ɮ,(wm%+"1);1,DNu;+ґ:sO¤ i=ZLBb,Ķץ\LJ [y0 QJۊB6_XxU-nILiܳ'*pba ǖ@*!`ǹu!tLG$u: 䗟[^ŞZяdJBށI_mN5nZֲv8+Y+af*ly.J,2x8I.lGwSWuǝS7PIwqr貉':%m? a"w"; VJTҚI$3bc:+M 9D)[9Qef9rǘǮ'=pIXPCmf=3yՋ嬨OwE*%n[z*qQ"GJ!c=)rOD\i;,yJsjIxg1:q f0.]; mm34fΠt٩ u/S@F;wO͓tq}x^i_A3pF )_11xsxGN`%*]BwCҬ A乷vRdŠFW@qk,?J+%d!*Bӄ+L YةM;v}i7ZYY!}3 <_ByYg@5C׼Lj>Heֵt"N:IF?_2=b$UBryX>NagYVb<@5D%Ҁ@3W* q!0%ՔvNf3FEˈp]W>@<)\&ʬ\"u$dFd7ɕWZd1e!LRǴ lpQSCI9,a4j$gx]i1.:AzM:4CƊ6|M>WyXa]b}~4T ^> >3;vbOp+GI .|@/^`x0JT0G`>6@l]ػ2 ͇ y{9YVo4W>5eG*?jvb*g MyDaOªzܿ9&5SWuX7'ooeo Jfpn**hG_sՊ"\Q͢17{Pq{E#&Y"isnT!?ID  [*@% 2,g5V \QW:2/8g%95jg,Hz ȸNJ1P镓05# NY< qN\~E"ұKլ1,69ߠ {Lp~WQWwsS^|:CGkϮF\o5N\l[j꼆|7Y%=K!ʪ[věhv`U+nŻ ɗmdtj{sk*8i`[YWt| XvY$=H:dYؽaLm.7˕ɤ ;vZMtHo{e]Jżr8#E0TDwQ{u['-rj0}U'_\:9dipJ<~>⮎G~r<=cYwV jٍ20%-Y'7o C,1rj-֩g'Ѓ3׆R2).`M$%5Ҷ$DL +)݌SuʭY$Z`L\Mw6Xp )OX3ד6A[$ϲH!8ۚ>IHq}Muù $#] T<>䲵rv5.hEV=i`6 t~·>R5!c]Ip\LrI<2 Bp*lP-РBYbRpr ;r+~d`z2ӆԖd(@ޢW3hz_t/|ztN!3>z9˄k{Z@9b¸w|1Ϲh'U$hSG8^-R`(nV/jN%z}JR ﶨ' |.LV5y<{" `Ϛjh6@ D ZʖI=1\x!V}GA_8Yx^yO "=qMLɏ4P~óThyD3 aQ]Q6)ʮWjwyRWiڪ{%B.tO5D/ P}sR j8%]1^coO J!4w- o3o\X'p1dŸphm܄jA-/D|Q !Urp+:d\6Fu[1 Oޭ3\A|ȿdD&JTg%D ȏ$=Vr(A!v_VjИRjֵt8 S$( QGh_T{!tLT8&}?xs_ eͥjm'(hImBseI[NrD4N Hf#E˛6N^-_MA綔1uVq DiҸ;ohLw뒇E′d|UNrCsKԘUO7SGcg,UO9T^]6iMJ|$Xu;+F) P? ɁQenO4[zh}ikuXvHZ&eX:(>ݐ`P6m Jl:qpLZb3Z:wM3tE OW_Pࡶ3Pf8.E[JqZaM9u ڇ fJӼ-JsrAk>Ti GjX QqGF=Y9}uݎy>+B" Vݗ~õCu炓鬴,gNA2n6$f畬]:]M)76YY|\,2-5J9Ep>V{k!˲7pOԃؿ1՝k- *VCg$VZmņص9qJ&i1K/l7b^jʶ3}+q|YF\x 2`jFuK|o~dY{ʞˆŚ{ 95TݢљL:)>[Y@5FW=P#>GtY纷1`@7q)9[OC!h;N?0-sH=!-@1'ͺ1VOͥ3`\- e2Vzђ>kqlА >q2vuiS5?|OaW -<kvqP2I?L `L\ c[W''; _G=g?~\Z\L Z "JkM^ȵm&y|1WReK/c?)*т` N:Jofm|9`BoKa?=`ep/gא:z:EiM`ҲP+Om +`)<{>C}6l4V雸nnX ol1&HnzaNA ҘVpgͫzYڞ"s%e>j׉+<s(RUKVE?ڞ\pauES,}ʌ'y'\a U Qtΐu&V'N"o◩xHחG O=[WkqTCOCU'^CR];a_pW:g;]TWšLӧe|m 4GX; & 3eXFAP^7h*t,hsjHMS¿'cN)$*JsJs)A;&W`kodęOiLrV*H VD A<) c޿Poe綊E\>P۾<y_HZ%t4K'E/a,Ar!7SE }q1r'4D˟QZs;2*k6%K5l=bghx2Gh9.!R@Yis }yʑH?_wJ%˯_1Mى<5;8dk^S.ң3wĪsˊv\,'?D>tb)S8#[v>_i+#})o0&^Eqસd!i[^Z)a\B1<׾@ve/nT#8㐄j+ ުڈQF Ph Mz /jeqbF !Y.RZ.5<ںEp6c{(M36oiTX!o(ϱ6mMC>&Z-AQDhUH%z0qDPJ:KEB=Kh6L_#ł\튀6E\;D& ڿS\ݗ8W(Z{֒4+|oq r[,n5|nS6!|*ljm)xUdw-w6/bi7D az)P 23#!o_|eҕtU$bV&|Da'yFt.24si0?e$B>\R#6%mխYހQH1 h" E4{WEA-uZȶ..y_ҝR r:J!BsQpU|-rwZ%Sk`毘'rATwX @.C=g#b55Ű vS$zwe)4*' r舩ɯsK|CqF |&bSGZp\uRe]킄XDq1;9Ց.,:KUR^J{޶X|,RY'oTRwH͠RfvIZeas߭g3\唻'7MmxNg^E 9Cri !|Hɡw.9_XZQ2LΖGG8 X [9y vvE2mAUp)*X{UzMBC"0f~~jՈxĒO131|]M8ymj-H  ؠ ߜNN+W{W: tzƜ$y5YKyVd=[ַ#W,A4YBTQ悳QDgpn|q ]wx';~oŅ?pP4'wDZp]a}[(g?2#ؾpZ5z~KElkrS9Z]qp ёϱ40"ZB*G:@cT7($ܭBƵ=g y6e/MQo[`4B,* zMۓZc e{4rgw\k#~^P(c2,n5YOS Z&t?#S,xu\SeQ=pyvҟ|YVEJ"CɢlDX"/70z *3r7le^Ofχjλ[k r}z5E$mA ћKuzfSfeW藛^a.5BJpxZ6||+LKoVƥPɍ7T~,RNc#$@Yķ/0X\ r+:ɏk\ *c~j27I+Fu+e!:#U\"[9GvFiCtC1*A$aD7n*R3dLB7>V_iCpEVQGް߃?Ga6q0K"NĨ3T"Ph">5sjwy\ۨՏ@ˠTOc}eGeJHV$0>%-_VN0dzxk_` nYDvn\"Ȁ+E] Kgf?U``I'Kl[KV7A+Ks6a+B"﷑(:7"q-O 'qu4Ć2C1G 1B`= n |f%~R+^EVUWRB 6rj]P%C=?Pv+k9.L[ExS0̄{* x7`/y4a-3i(n$ ⰀC*<ԑ ^M{,Tz,7-Lƣ@I0MԹͭ~,RW ݐ6L?c)}3=渝40"}U}8FUL"+L_?vRmT3 / -^=$XT8+z$oqy>"j +Whj; 22iej_L\8lWw;_-?7+hBIZա3e bU;]ؾ*9#FX1X8scC&!\o2P+|I8!PxS#ֺNtQPRwlZbvn pn#”w^%QK [ļTKֹRΛYn%jg*2Y$DnEOMBX7>mMF HiUI+A MD;:1:vVPOJ3D+`njCzw0~%sMT &9ǴXߐɭ!1n ՛]T\E0̿g9MCuvCdȧI"K< nO4!:w9[,@Ƞ.|V~qDUj9|,)TG$+AU1$AvKoA61ok☓$D' ƩSj mI vE$> ݳrُdoŠ;}d92[ѾåB~/S֡aEG."v*DqpKUz@slDʵY x=DXY^)xl#\(t +$?'F%" eJqcCepb pI-+H]W{g&ޕ%z@cp<1|n7k]'|Ũ>W3G1] uhX~eo-!Zc|QznZݿ^V&fMjdVL{cIOqjF /eim~LN8M;oUǴ%} bֶ&@j")2P"oaVpd1s+j,rh#@1)yXiy/RU]'?H94gcE5(1Y -w(3̿(g `}t9/ eQKeye[eQY :>+@hP*s'CtB XOԢ&9x5[㪌Q]``qU!| v/aN 9..MS gz"E qkO_Ռt h>4ToH' pݍDNqQ f w*^J &Xe2Bbqпkr}Tn"~,dGD.!ω\ Sua@b->&-fܻj.Bu}Ăl} u^i}W<;/EԴu61 Ap٪~pui4<Ϫ#?Fb9@f):I_zU1-%X|o2wD{7m'xnd5j_@Q#󱶲 nY-ܸjr.;eK ..lNǗxhD#<p%ǔlSD7*e ' w@5\W=D{Z/cijŐY U{E1 .SE6~ܕa(nQMisvQdJ<#qWt'v|~9;L;M`=z>KI87e{Z$2ڸ]gTNYRHÉ釪9' ݨ풖t`xdBt7Mll YE/j ʑ7 TbtaK&QgH+>"U-̀:zXӞaF'=w 1Ij=j'z>?kaih jvQOrv3L!\^W`F4ԑMk4+e#1x8|L-}CUacfpi(k/Ҟ)-\p,pYv|xilttV$Zdabo1?رjݹ]va/UwӜ~fϸn?CLuہks!]4Jk8yE}ϸB5F1CZqOqP{I4a>>6Ms#>L)S!@yq\n_Y⧌o㚧+S#3!NmuV!V8K(7pi@{|)/zdKP=nt޺Is hX%{WVѷ}F:y|h[#d;AyEs?eV4K=:lxDž{ވfI(ǻ.Pl#&M|KҌ8飚=n(A@ix1yJ|Ǫ|sɍ/A$B \>g˓Go 0$aWkQJM'9rx4d-J35݇ 45<0Zґw;V)(HA{{2tę!kkYb>rH*[VN5! Dֶ@d;IɧÃ/wl4)3ׁ<_H2.z`gdjF %bÝb}!`2!e*0N&]QN_`̭s3y`P`7OJ@.ߕ3]@d^EQE~}@Gu"NMb`4c"XGPD2zçx7dUShZ9VTQ/^*,뢛u#Hmu : Ѐ{ZU5oR=lπ4; "eBMĢdKT5(q~4&h}u_Dt!2aJ}oXL¤ihy+:;"Je_㹩Lḛs T-40bԟJث.\&YH5`+&;5߁Mr!>Vhd(! V"g*)c1+o$L{dj0uKlcjC.;i!SHؗG*z"a5`A&\G8#{PHD_e7+:.(EQ]=" V_R>i~}p[O,dH6}f.ӡ)' jx+&/͖x`1.Hz4^~YpOi!xGqa{& ~Rl499KUA%LɐnDrj\ރ)8wJ;*=vmsyyGo,.,;@ #F@"HzpitcBT̑ǿv޴wj>Q~`v[-+([+)j'(nmfpt!T,$G;^uŋS5G`fS,6mɐ[II탏x񨞟)q'F7O;S- E.J#@%җ__IІ%n`pрS'fu35Zsͨ)sCk[0CtF-,:Q> C:q\u*#=4D c4gر5_>JN:S7kSRT垫&>"TuWv$Xzܗ!^*O/Ind.J:M8V2 :LJ3p"zV]م ڳ.FA !Ҋ7~=s.TX%'z܄8_#;Wi5N(O2.oZ'N8׌G9+[&N  Ղs\EХx&{5u$,L[|A,vH`F(v=cԊ,,2+R ¸CGn\"&s22Zٸn`uPvU.?p{\΂dE:ٓl0dBxKx {jc2?Jq$)뜃k+#Sʝ%HY*<]oj|CA.[;.}0%l0?:Θ`t݅C̩% )NȈGhIi~1OE-uJՎB+<DhU&Wt)W R M`FrL{sx Xܶ%_(T:){SA⪓A~]α![ihI֧eߟ?sdtsxmΥqD tgZ$!䡺rt ngB,*\!5̏liNsw8Q~W>{N~F;6{ Fl!0/T!W|biRr佳9. ،urh|,:Q09) ̚@E'/wA7*()s3)obɀ7 Ὕ?Q+[4-(ϵzOlOMOHʋ9:pq@^4ܱ-WJ=6R=7CXً9+w7ac}ôt2`\N }8**|_p۷PJ LHqܻGGRd-mm26ߜK'7Vzl]B.U.5LY4}PnAO7rPMٲ QC[!v]$7Oi0tpɲP"AXӂURp(c9q%'3ȬT\2XU( ŎSq)k Iz$,WsMߔAc$GfżiF#e\=Gw^3nCbP#0lyeuxҀ=!Z&F ^B߭2'x$zk %t4 ,%Go'_&1u9ռ+FiKyC9J;ʪ#n+%cӠ>nS~35ޭm)8汅ՐxܔDRlqx 5uĭʳ1BZuTړ$sxT7BT /RF, bNcݗlPޡsJ!mGwCǽ=9>G'IڻY-5 ~+ 9cvjnGEw^u7Lg ?%wUmAǍXN^3aӚDD~,o+_*ͅ[Kɉlk8ЖDBPEXW7l\#?UwE lݲFNgb}ovQ@;@W9͝<߮\~&'|p![<$bVޯ2]#&NgW/M;vM$4w6]¼”)!q$4Nysϟ=@+ !3'2Xt= *eR׾N^'8\fu290uRz> O;=V؊k_1pX(NS?$`̤eB+XTw. 78^]T-Ze`%MX吪K5[Kٶ8Cü`Ot.6`5G‡F)yt{%}p(Y@Iw 0YlNO "vnY;dy8D0Z&γn;5+dFx5@H2DL`;"r9" )!!Sl0ʠ_z-/\a(kfkVIEĥ̔⚻Wɞ{s@`zDa^u=|)SB #I\-K4\:~G_ěWG{Y"b:XBMC˾v>KPR$a?JHx^<)}nj8wUt[%'u \?f zˇ1YbtTd";x{k3o eBOr@B]JU:s5A|sZԛ~K95z1mkӌgA1F}g8xO͞˳=\5I'uZ6fl2g-7` $Dg+h v?u|;S'N&џ f^ 20ۭ*D6sͣ$.A$,{\ ̙vyț ,{>Y9mG/jy[`d`=N=]ǭ@L O-T@h1E:H_po}n|Q5>{HyXFEF2{W(dd~_t ښ9zFN9I@D-ErݗCp!G~jgjѩb# wԎdC˶5icw&8ĉJ#:VŦ~ߞ. y,ٻ滩ᗺ.Y;oCn@0:>[1yǶ(Dq{-\bQW(!}sRwQt5+QYt^l̘N;\)xy'S{墒NŇ}aKd]) 'wa:*>6l~Im>wwUdPG+3uSj_6 axI+BfgQs#Tس{jp*t"g9h}䬖K:z`? r2ƭGZ@ǛaI,(ֆw8bЮeL E;KUMqbSއT \VO {@F8CЎęe8e20h q^|Z__-s6ő⪕bֻx[rl!Q~ x[O{zքz{ӈf 8q sI.u/7mXi3}oWd1,aE_ʈnaeA#p3CNU#͐+Eֱ%M[m\sh6">i#_B#K`KV3*y#h8wWI5 dg hrưX&t Vo]g~˰]fcӋȺDz#7,ћ PteG㤧zz?@+tǡTWLʗPm1Ux C-*ÔMl9O)7~'xRqVj!̀iU @-tUy* {Y<uwg&8N^FRd"/+hjLWYܶK4K.'#9®1'sTF/&dXmVvYaTDW8c]#UgG5K[DEgbk ސ,5~.5[NNU y?>DcR ,^B^_2`;(ҚG54;۟ͨP5Cf^~5bFqkFO?DN_Q}4L_(1Qw.THo^F2,vHtL|ZGf'HçۚsKeaqp~{$ O޹!U5S-Y4 mۘuF,9H>p;LGit]oz,48TpgO>cADJ=*hSQp ";L$_OT:?M z r̆JVtp MWC7|k~2V`t= 6<}f'n tͿey O4 hp P*(@|*JsI|Z<_΅ӲIU>i4J\w&Tyog_+,9f ,k^:'GθVGR/m&n$9s}ax^Y|dmGK\rXl?u<0? [ql@r].#2(\6a5sגE+Iq딻Fyo޳=?ާ^k F4tej`7wy\y);Q]4s˴ddýx^5v{εND܏"hG_(Ƨ_%beLh*ڜaLYhMxy5xaBNL=[V?}6%ÆSA-+aɧἡ2)"aJQ&jQ#f-0N GE8Wh+it a71 ~ƭ]B\dӲlәM~gMn}mlⒽʣ) ''3՜w%1(y!Y޵ֽgՏhnľY/Ip^ЎSXMžlg!>PN`/X_`VJE6S~.Lٻ%)vZ^hKML 4hn?iP癑lC$S M02.v`B04d1?*٫';QjwYRqv& (\ذ{AOo`DvQ S)š7 tI"Z1GU%  F~Dgu'ݙ= )xME) ժ :Sܯ_pb=&I%'-!};՚3/u6}񅷆ѻ/ Ezz퇲 &s*'[\$T mSʹbV<6_ 53sJhUgtDd~"8pW;eE$]&uHyWz OmYOjX+f ;Dœ_S@w>VkBɷLAB8ykLRo,I^5UҼ} UoqPc00#cGȧ \ݱ?++C oNw,\6[%ީd6FY`bwPpE{>>[q"R;gH1:m:|4 \^0!9@ds.̊#Pv9PUA<#Z\~ xLk>pڿBՂxqH;_bYE'rM@0T\B|CJ=631DECh2n>y'Ά/:ߪb_e*?`Gq3amŘhI} \"E8"#f"69c O4.f'/vVO Pb\LQBZ[ոͮE"WTI?ScRlII k+f#[)P::~eҗߑ _%jy\ɪ7rpWHnH`&8Z\TywBEw)N 7s׭#[8{8mED ?f+dg;CEi9=m@ՆAD0~`$GM ńuō}K~}1(Kه^t9k ̅Cj=G/Y_5FPYFo<4z*o+眥ˇWw|H0:k Fi ۼ8J'uj_ܹÌSFՓJ!qd 뫋,~4v]V` ܁GOV %RA^nYk2]TiX#i :^u┖n5yJvᄹiqïo]C\7׬B` qt~ǀɴGq&6q"˃IrHLWDK Xbֱ_Q+[ b/̏a!btbRs RlY/;ԧ`[t"~G >&W T6If\=>,-KR usjilrV&/N*D;=t J6zS 0u37(j:钾(I3bLO ً 6H 1MF1x kW:XgnK} &CJ[NmM8gŮYn5FϣCtԗ)DtVd|ȣ󛉪'lqh yB'2y@5f6SfW8iԛvZ:ѐ&^>{>JX\H'[wfHAwAE0ڎqXVv{tuK_݃ȶL:z4L5Ԫv[J<95, ~^ՈϢcȍo\]̙LOx{RC]PcpQ 8:j9fǓX-9Nܕbа:Uʔ 4Do% vgkEOȥX('(u^-8}-]Dl#Cf/m,(RSrq3硙vq]=2]mh!;ũΘR7kv{ * Mr^dV"M{nKLa1d{.&%]Q @դBWkwcqӐ)E?,E&2_Fkl&A# [ZljϢ¤LV,-3A~^$1Gd۱qqt)n)Mib[ͦAMO8qiË ܧ65lY{jt65&3$ ֪0^q x:wmL=bt:sl0d~½?bL:` >+:B$lT=@ <ߒŗ*j2VW!!uĸ$rۇK00B GwƎfhgє2**aDQe{Ia2wXb²;yamG$-wD'Oa3ZtЮOkhȒj?O5ݓEtt="3 G5 4@HLu^NJ@ڹɰl+#+V3D䩽0ظ:_qy# ?(i P0J֖Źβ:D Vu ܙc|&YF"XwYC4N,lѝSaY-{suP)|}9Bd$Z\k 2]i,6LLL>Vd[gB/cmt sepE; m* yW99) $ur`Ȫar>o<}~7pyp :ml/SHcDmRc{O[.+A r}NۄK7 6B tFVպB<%ܦ%sR_dO$gc=yfmGx+ Rvs+QԬܽc o7UDi">|>5]["o1nOgmt]bF:gֽ9-֢z%F8Y!r{?_(DH4A!nSWV6uq{UK͜4% =N'mt}LIċEOuWMJ%j$q>uiDh0h`ڠ%beb)zԄbA-$YU [MWd?%,j-WgQSt:JwNetJ{ W.Ql1G_ "dztdnFt,MaU_Upgf.Gp4:Bh̜!wJ:R щxM 0]7d64k@kY /am}Z %׭5JurZї&O-PK\A0餌Nyi X V QB a|v"n Y! $,]E@Ǧ]v ?c$`Jנ6dIwFy@$!.d i-NR/ElJ4:tݮ^e)yO3^񿧏6߃yoQ̬~Cpf: dxa]nE#$(WS_!Ƈ~[we _ox_#OX c1G5DΟ C$49"3̳tI|@ogSs(oI07Y5o̜8_4D] h__6rWy @CR[y1r#ƒGf}Hx֬yx%W6B95,y&'`o^hk<b'jVW yƔA=S]¹鼯[r#A8rmukZ]wWfG4cjOKP`gU\>TV?іoǪ#N>Dvx 5f{bsP$Xx^Loeڇ9s_Xn>A+6 %KXO!"={P0}Ad^q4K5)V$q̯s'7%qz[ Þ#*>%M鳌c(LͩV΍?_((vqG&W<9Gnqt.e HTWHG's{$K9a7 f! z' <5X8x쩮T"Q)>~YSHn Ch~Q1Ђ`uN񓬕׬rrd>&ŒY2sqXqExJcQ*mSuOy 61V4c%;*48ٙLXEQ.992H cp55DһZa"h5q%s SP||WJ>VY<9Z\21#dX>e˷`N#՚Wo_} f棱E^9O !MPTxВz5=/=8YD^Ë+czV'uv;k,e.@ kvI"zqO"dz1ہ~󠤁k#j+^n|%[5zItVI+ Š)pfޚX9#Gh 0_rX&(J%H ZѰfS"i~ٲ!ܼ^U;uV-1~G7Ɗ ڇNۋyp7`I>3]1v{!&Oyn4]ukf"SA:p;~D!~yx( HZujM9KOS8ey֔*σԭm_}g{'܏^YH6֛ 2.J8E);11U,_]Ii+$%p%WYӄK.u2 D 6vܵ4&/8EIXrE |ח{ڝ1+'Nd4@i=xji6Zf6Hˎ`1T}_?&x J<&P#,N/H{1s|0>IJ-u}MYMpdvsdB]v@'y'ZNܥ/҉ a[Ip[1ʒ0FVChxil)Z t T lXloKJ˺77paRzM;  &tYzQ MYD)d#bQUR!2~9q[ lO;5i5zxlj*~hn MUlEGOZL sp-5R4N_zZrWx!1D+,wufx)d8Wn_?w{%ҾGOy67f796&gwGP@d4b Y@Ʌ#S䍴~vqR.Ln~MT?.x ű8z2w胄S^D|HlW8\XyQ.+ ɬrth-P{% );EW1.DT$VgYyH<+'zsI.Bƙ ] [\ЍR#6[~oT.ܽ2d%C2/8aHWp2!FM#'KoP&9!MƄ zY x7#(j3.!0,kicz?6oLC9 ?m ׂ82pEtP@KRHp<$j\ڥ]}S^uh,Qp:3ܕ2Aq; L!л]2.lP_!D]lkGۤ*Cׁb7L X}ƣi,IP)FݚP թjVw T4EhO w tK7]X#p#zBJ*Ae_`(_d81M H8i YCRnk% './`N0O웛RYϵzIWֽ!̮llU,(1ίWԧmOD麑cXTUjfFx#^hIUN0U^/C \[Bpc;W&w?gj6W>h!l-^1>з71ߟ%k(NftV7`vV<}e+e:sA+pԙZi<@ր 3]Z*%=.jMQoNܖ |aL+Ɠbx(:Ԇ+zU]lȉU֌( DXHyGaggOgoC:!ۍY(RȠ- qQxM_NӳM׊k+tAY J;ǽ=# ʶR%r-[AQ9:$nG&kܖ@VGN4}#hP͔ [CqBpP]QnP݂R*RҢ"@\ C)FeEAd4*cDH}8h2UFV[. #nHcn)>d6EbvPڬMpEJ7U|Q>kWe؍,\c'[ q_M@ ,'N vJ-S<%W hP@RE /z5vS7mV%(y_^N)3Guav3>m`(Ԗ.YEr'ûYg Tw":Dzhس!2<02aCYClV"@;PC$\gߛv`[~LBrV\s2;礯QN[ cDuE e"Ém>~FggǤ];S@N~7PnB\!NWN=1U +s v[LJ9OH)_vE\ 0m03^4+d[s$AwSN#J؉8E#bϮNL]&pU'B0;A6gw"dt@TR3th Rj="aO/IQgOQj.UFCU)'^ / Xܮ7Lxn39u6`'t r%ƀKyo]HI7gFBk"Q|01>o"(*{9_"ɟyERSɅ 3~M( ڂZj/ioeu`+tƭlWelq(T Laxȩ?FmŏyҖgvthnSb m1Qe&{-1mx#3vz+iNLA~a큂*Tb~"OZ=8{{_dDWlc/oaǣK`P6MÓXϣ݄5|:|l:.- ^J{=E2"+S EWVBd)n`+i0)أ<%Ipͭ?Qv yECNvKz;a2'DCƚ]yM_X4(f%.MRІmzި8H9̧Jcچ뻴 0-`ލr>uDAB  3(F5 V)9sy. Q2;eB_®nb~F(! U6nX.@env2nRO`Qr1RX FiiEuQJ|Xu(aCg$ c/Z%XDW;:yY" YNc DfN_7Lp✼@Fιa<PDd>R6汜Q'kwn? 0+Ʋ򜩰\1뷤׸0%+J=<fj: 3?8w wW=ӵ|لPzT-H,|oV2ҐU)f/Ey.N_1׍A:u4K^Y'J1ق+Hnou]X.!iZ&@tg]262(O03ໄM[!W#(tD;~_.6-vNL͑2>7BLKqjx>]$z=r2ig +_ 3P%Lz,V8ٌ"ύ/568 O2Iz(1S=JplX v^$*U٧u qL?}]?6Ū$r\(@-٤ khO# ` C"tőoJC+4,;<pv"pPU/ Yei0st3POi\.~ܾ qUcq2A]by&/9z@>pF26wfc0mL۹8f%@Gne qa"T|=xh<]#ۿX4?5Pn}t3 ==fɽ|dqշ lEC]@כh$ +F.X.xX{m]KY*A߭ BCOvX|C !Ckܐkf}$9Rz:NmE;/TS#W.E3s IC@nJiǔ][U)HuN$Y=É*Ff',y;hrId]?2R=SM¡jX. *f|TZ#ޚV_F Nsݽ{^ vzט7f_E`;хl驹},+l"KP15qz8tk0Mk$Լ*0ulm*byaI غOL bnN?y6* 4p{SnDkMnmROԠJX'Bdtu`? 8.|&3c#(&s$u-fYY@qWZaIXS.":? ^YiKA, ,P 4}p5F#-Jd12S@H-9L|y_ߺtjAj:yG K~wr4EQ[F|_'d7x4YeΰZȶ=݅Pg~6Wqݍ'J H>&~G12j`]|sj1:#MPzvmy;@e#?JXx+؃w X,4ᩪ#F u2-5'qQkN ȍy" 'kZ]M6]QS i"vz xg~.UZo|sVŶJ5%I;p5*JNNsPٲ*h5pAcTxh*:Ie_8%1XH3ERԳҌ|؉zfh ׾Tv{.N҅fWg#P:F^4`_.CRN6E<̐pTaopj;ѽzKvOcio9Zb} 4=uiz51KCËM׻\|<2+ZXނhq?ga9;PBV`Jz7wb[AUj[cP#+l 3V"|ydbez0Q!p#$>9N)۳~De9LN:y]*rD俚[i)> 5vzA900> f'h#AbgSt0i 8] G @?nf38mdԨs o"8ûW`W@|oD9bB`7Něsz4b^n[#ӎywu{ʶrMP;so29ݾd^]1W] )/6oYj0?8|dBv&ӆC$ngr uԮ;Cl48x`_jh`0HK K!ue, Bpß[kI@M!xg?t0ZΟeVd$ܠ!2grсIwGEcbvE A*~:u[ig8$tN>wR:r Bnδ'I*_ub2W+(MFso`L-ÙQ-13GU ۯOZf+d0~Zww:]FvBfSxX?Tx#egJ$n%*AGsׄfސ5'|l+"E3~ř0\QM!nS6=ЍPW8:]{&0ObAz˚AHZVLg 30Ce?~/ 6[By٢|h7rC4:N>.Zo @[z"v ,|׍k,܈ X*eU_LKMMNy=y EC6y":9A^Gޚ(|{_DTܑSb eASOlB}6>zp6Xec>G:9#c6VwBQR/LO\[w՘q3J5S54]7ZA@ST^_8.hOŏ:rW1n\ip쒝PLqMgBwPIu" F.TQD֪(cH `.HK o]F濵+teWD 2#r4 nhRF={~`us+]>tOM#DC,ms@7QVqsU!2( Ƀ6K~b̑/8[ $8'K 瀰-kWB./gSvSKN"7\8V %OyqxЪ3.8Pvf'A %yoP>kK2&JDlV8@%ijH,aha e6-ƢNFJBKKʘ(5<H"\mM}DcUүK+-8t&\ǜ<߹Q/>M:JD.ouXvcLث)|)q\47^IsQgӡ[:Z9o>yX}vQ*cf !VnF cjm 墝J8ҽEET6S#|La,wS 1IdtHyn^^k?BCR/;mKϰ&;\eq_r]p&"F"^{f9 ΈÊAQ@ѸbQ;It ]B$]u3pM 9Wh Sꈒе$,g2+b ސ咀ZBjA~*ԔWV&3}{JUve@jq aL':`rM9PVi>~z,MGשּׁzM eC`Ø׆4Ueï}EM B † a-~JP #? 5$Yz~5_)^x/me?W=}.`-dv@riصebjt<1`]B.'\t6VqM{n,r2M-l$"C2u"%ƙÏH&rěK$#HxF&͇ p>)"UVa LQ@86B%V5՘2xTzCjpLk<[`"(mઈsnuaޑgڬs0/C0}T ҩڢ h+^4[sxl&/@J[eHɩ\PBm˺Y"t=D ZQ}:l!і,uϛp'Jr]hL7%VUS?"_4OTAXz>%Y$N8-/\o"3WS8NӼqg6VClIFfs1!BRř$wJ9j1&(Z >΍z1MTOdڒg}! )D(-k0ov\ oAt,7+R 7рg31=;$d ˛S $0T3cgyO^I|$uFb'|' `&ϗ~ yENQj| utY~ۤx iMB%E,}޴m2̍پM>O.G:f,hZ$&gg{fI"䫉XYV8+In6 O>VnWFN: ["X7Vrcps_ " /3u5 ?Q\4;vPaA\HJsP{k i KXve?oRaZ/v񃺃(D㉦Y(XV'KvL>4>ڵI .]ݯoAL_k~ږ\f:yz@J.^ &7?vBaHIKqw ljNp=WsiZ}P22EK~S8Y@_ NĪ(ۥp+ S+_{^@MD\Gs䷌Bg[ΰE{i݂#&KrnГ AL<0OE=X,-zD*8T\H&" ][D4鶇G5&ʱ0ZܠUPY("U*E!F~QG -̨t@c7:¡ '#@*cM>Bf&RX }~M=#$r~)fFje>KʌLf1bT'Nޝ=?H]\@} LiݧˬbBziH^iwX+͋d~z)dee[ͥ fLk֭g~`Ɓh1q_˱b^Ia ٸcNBHcDž~|iwv%(2) LZTbɿ c2slQas=!r%'JPxGN[Z$zO_Iy@l(| U8,^(:ҎԔ 7Md4vNҗ^tMUN.Gz؎4cŤ[~1Gs2S'=;nk`d&@kg)Qn׾gN ˹3y7, {l[GdrNwlL%a:Xy&G4EK*uIg2aykD4صmk̲s憂b$B $TqҩS?Zl0P%L?: [2E6+M /z0U[˧}3%D\fmw e -bB&a~JF:KVz^ {8,pN7}bOHo췇9R$iR+)wé;@R<]fqHCvuf0 83:vauu}k3%Cg!ϷQۚVAV:/6QO7'-EYnM u=lx5G}1"bj(ZcϪu :4 1K >} Z*<}Y)o/QƘ,IfbX6EyA}ͶiGo7@?Gh" (ƴ_9DWbs&GyT 'WoOgeL78= %Gu<ߦ- P_nG3A1W̖ۼ1ኔ烤Y9氢 Pɱ08( }"\G-T|]Բ0 =I[,=>O(_c᭮@VLw\2@Ǎnj'S7 /yR.Z>۱" z?-qߟ%$ɔ'Lg(nkɀ5~p~xG?~P)o2pyf)Ѿ^E?h7V+nk;6YxB/+"L3p3hDGn_cyI\}Sr JK  s? ]a6o&Cκ4hv~#ꦥQIɎD*\U xw;H4 ㊻q PUDVbE PF!gL(cdaW+o_JyA-c9Obe+Uj`:bȕc>hK[ mlb;* YΫ;o"B͊us nm[Q RIb:KjprON\En L 3~9G$mU:b#=bLDW_NgrwH|' AGSlQ l|#v OEFpΙmOjM ~~hR h(gu͛h}zu%gJz32'b>@ ob/sw|go-@y4WUv 䎶S(Rj+v3Y-LTj^ >BnsKR{ `-CCZ6<ކA—3_smR-,J*Kyjil>{Zwe/jFݖ1`g@,o~W"ؤOm3QHaa]T?YP3ǀO5!p8?[O3I} 䨰vQ >ͥ_XD(8)Bv^E{Rb LZG:% $̋IwT"fxe7";j:`)#\73(yD+[B \RoIP{.ra6Xc] =(VL5d UlzEZ ?{Aj7t/A«ZFCO"'Yany`g{ɘ`Z_HT]@?fqeThV OƭqW6PZRZڥT?ѤB]|h%3U.z}tuLɌ`QnXL渪#yRGV b u*`X>"P)x̳N6[[]^Li˼īy, m|B п+\Yk!ǧVF޸WHs+<9]H}xQzKap[ q7H@QNdm~E:j~c9 N|+2r%J #yGii6 HbA|4UVd1<ڗL4-e{dG >8wAM sVCD}`OasP/ '8l@!jϔ*EFvrOK2ׇoldSNTܒ߈hd⻘[c&kנlm]y0_:!.?r cmg=G)%y`\>|Lx{|ɰWryjH۔0?XGb9}-06ύSaB5y*4  uNы.X]w?Wsk1J8&^3tgCZ{HMf;R : j݂  na{GҸНFR$ʼn"*ȌmP )_QTBGfFM|^}a3tkՏt< tS̖2Ѿʿ'Wev +2;AU'X~D^UJgΤ`!mek_ظNC@TPkr2`X>GA//Mıu=~\3,Ws\R6kgVTa};姪ے,nyI4;,Y߳ 6"vH/a_-~/=//jy5t/(OY6>Pd|,Vo7+(uBBkb"N2lzo8*aM^V]p q{g\W:yy )@E<7.($*4X2G[KB8-y3]idm㉃x@IKJ9E07h..lǰ5"h)t⤸yy㇐J 4$&a*\}6e1:=Ə1Q-%\o7_ዚ-kD-kDZXM?Wj񮃖wԺ=>(,RnW}ԃ͒Hs&Ӱ=vaj#KS+Pyerme^^^NLشy΃*mDVX{ԒrC{sխ|z(btKX0ffK__ I,s8SO /Zd7Nc)lII׆,lQ,jBbYq-d(;?R?*dD W臾u}"6*@ G}4' (BM喧r{?]t6sY a^>xIemIH9nw4F!jw78U6!/G}{oĥ[&!8+އo5FIV Vegy:N~# o\J7%I98\{eC)u.SӠ1wW$c9fT='uԮwG)j)9'LWlă&۳ja-SҐL"J9[8JMebqZ _PE/,T*{eQZU(3tK@lR@t'Nczz9jbHn Ƒ>J; 1L)QQ,I,X!~.BİM'&hM^Q${rW_GP§[ɝ{3x+wQ5ڴ@$|M>sRE~*QSKJ 3[mGS9Pӹ{!CBZ/ )־h+Vօ]#19}eXJVCԆ-BEPgt[iȿR^4X-G;g(cK5JU~,U$zo!)|`8LFEdԙ0-g%:Ԗ6gt޷U}EWibϳmN#>5H]{z|v)orZXu~3a?5&{JA=U?*QW*Ce$ ̢yItzcGE2\Ng.s?rs\@Ǜ씾rmM*)rd9#}sҞiYCGhZg r '].yzWmC!CjBz^dK(# 3[{6*CJ A (<2@A_A#u"'j f\;#NpȊLRK^T' @)o]f07:E+6"HV I qF3E&1=iXr(a0?ώ|IѺ) z!l}5]/ xh ڿMyfp_ :eʗ*6.gFw@ gz3"PB,V!bM7"2wyOql +Y<ޭd5[N\E'/EGO#KAn?G7U±ܵ3Q$ o]~\K? Kg-dl@A:ѶP%BFn]{hReuI(-)^1|n:w޾1OhCAq~+a\\|lEb>Kn gm]q"{M6|=3.I[:jMmiaYL?*\C$Ymt#S"IG;b⌞wbV OCӢX-m5Ú'0ޞkS\dޤM:`u=P zcC[EbM[> ]Ḱ}gFg'vŁzVyhn[ΜO;m;>F5>W1@5`Ty#/@K3xK#rߪm(jNxLqEhdR븒b;~e]>`7g c7 E7NO;O z(O:=7^ȿ*@awRSYGe&&y3 Ȳ̩AQF4/ )&\L#W&+NK@ PhߒBiR%wGi݅.rcS/bTU#a{8%D|[iv[mG)U,~0_{rlR%% b=i5>Pi!(s҂ֹ0monIX ϏSOcCwsf45{i.dM12_[&w J[]_}2=w5P3Yg~僤b`뗏4/rŞX,ym1󿽚}Us&cX%{Lٿ ~YHw!/7&苜69JȒ1!pgŋfݴ.= cbv3z!֞LR1ܼMNW%HP˚mJX + ISx?}d:Xq>e\/bq" e@ίbTxr!JЮHopDyYqHtۺUpkr_Nn"Kƴbw=cBWIj W<ȁ|PH/_-NGтZ'X"/LE I}х rcub2; }mi 7!W`\z)VbЬniPcUY<D_y'ݒ 6]݅=ѝْ(vae P2y/8sփ_ Lx0eIgowaªt|9"nЂ'%Yv'-\z},^D ssO g6ky_c1g? `57pK;jJ^Ik~vc0_d]w0N/Tu"E 'ky/vAXJ$[Q:V2AhcZA>"P,h^ь`G* {I.`6[ll91Y|kѿcFtQb BIC٬S򁷟$7^GgL@[<=(+rӇۮo m~4y{KzKU-J!TpGrX8BLL,A0WSyNaiD@ZfX TPeDe_柵IJXdxMm`M.fp%yU$+ezu(o¹~UWS[#>`#$!Y] EG ר䴴{هDTN !tjo ug G[c2}bj6wLUpE"7HPlQcX9MrƜ3֮nCJ P2p:DFXF /g^-tb8Il0?y%`f5Ilob.4`ˤ:0ȯCsx%Ⱦa'ByLPESL_AqNg4*o"R̀{["U/h͠)1,2|&T^ aN3nx3P}/k>}<q$yJ,}_7_\$ 18ctiodzcޭ)սz 5nj:?oC i1d _9:F ZτH{ NNSIHWm2y-:YIO-t+ cwJ'k+Pq.Fr7.V i O)@H ̗ XAAueX=k$椔(%=e^ń_3)<|6c7c~[N*hp%]9 yo6 \՜yڻKQFg`Sl@8LwJs sX{/~Fm85ŝ΄^?E~n65XZEPS/>J|f isj?Vrr\, di[~Gba6K,bxqg3cS5 0$y/|AK (k|'.5JsZ ۀjeGߏYP]i- Sp߻0t1 K]n=׎1'DkVIJsig{ Z|TYh9-5+EtN ~ 5_ؗ %-1˼TٌV[sfVqGE,ͪ4Fy@5GZ+Cd;ZCmɄ\F]␎nI$`Q+(݈ nT+oƈn&+<žxDWORSc?6/2gp'^t|Kݾ4C^8Af۫/l)l9!x n$fD |)AUlka\8O`I[scT9C:ܘ7MyɟJ,UcsN;axdoZUb?qЄ#!鳌Ϲv %ƕu{h#O~;-!a܅>ꢑ}.ƫBN *h+V+AI[bcٻjhg/5,qOQxY&`a Tf6?s i=vBt>.kҝ>p. ʌ.VJT9aE}J>t"c {lV;(4C_p0$r_K`*үWHap[{ͳ؎/Y0%QՙJuk!i࡭|H;H`%.sv #BV@1K8Fzzks@灦ޅi UQi;  B8z ~Eδ$GޱD$4D=|"KwA=L>z831۠e{RH|" ?Cwz}bu+gjdenKAD^+YyC;DM1 Tx=?1:2 1X/7G8rjPSxnĤ93}=ȔSO=1ξn*MN_ me$Q !C.,}_ `6(𮀄 4 =1\ʚ UvH%wzl.K#Cb%q!Eư~bA' $yے}8D8e6~DS7 ăX%$|J6%׍qcl?mèH[5ͤE9E']I7i!OrC̤ '<8yy< wOXV6}OlKi˝_VlRDʺ4!P%"%w>[/$}:EY4b&c D9J+vPkIutW3q& _Wh1^ 7rqOEVV w^)Z1:zN%۩b)k9#)'Y<pſ29]uTψ+ҨXC_'Dn>g ]h|%ed yAfyF},N?lpJ{j0`ߵ X]d"SDOƚ4cyM > P{؎NOddɲn&M'r?S[3@ʹݻTqyFgHz;E{qVnB(.df@Fp CpBcNI%Ѧ}f )cc#>@AYfMo]UcV]౐Yc̚P_x6)n|s<\,p,k9)D˘yyMsRw-\c\1bJ83;w -+{‚,g ? HN7Xqt%A8Ztb+9DW ɱD7&QPsM@S $js| :`'Uv=A-t,>a[u ֠HC$]VҖ3BcS~}DZ,/:ew9Hu0gK/ "pU8u:;jH YK h'ծj.J+c6yBW\`xoS>]Lգ@d Fy2_^/1`  ni!$;gahk5[ !x9+!F Za@*"fY`ýhB.:&ۥĹ~˯J&zh4 &É-ytpnB(N}_КX0AQ+UY߉ۍ#3I_l/8,;{\9T7ޒm.G=:,)~9azr-9oy{xQ'BEgh-4m T9]o/W<ُ Z3ȼWӹ5SPA*|lhB. d2gƽ} *!kπM䁖Q#)ߵ?2Iyd5Mφc(ODELY?Vl^M!".bSO8髣QiêlN` TD`$k!I>EPbTKYľJJn EzmO;-* * Cq|ZgNO,qFZ9G_ZFc$G\QQ",QQIqs@z2rU-UiH+:bQ֏mrޟRۢST+>3 "sl =MþrX3'i #S'i C CӎTu2lv)㈯jR;I+d.0bNVmBISun͕t;~hg2.e&Vȡ×ƈzaxGo-ȹ@371ee(jȟ tpBv@L +ea9JƛD7:8{ptxQ |0l2_%K]k6LJZ,2ԀH5Ljp;O 5 :Ĩ/R5n%i *&9<$AeΆ&t<`6+jaݾmz^+ՁثQfD1LG9x35]:N&xKI|q*/3@3ڍ\Jzkt)b8I>{gy+Kl $:߲uNxvVXs)W8a7ϕG,h7LJgqidr-ٶWCoP`\gye<^B X'M^6iF( r`JG : JB$g3atIwrc뾄*=PɆt7T.h]vc?aݳӺB}!|Qj|o5=ɻYh~r ]E! kXT&`ğ('xA5\Mjbw+׃/NI@GR<q4?hlX4^Áj6ro7FrKy6" OA#P9tdҐι su%L{oO> ``3ǾtMQXSɉr!'_CwG"N#8"t\lzN)au%ZkI֘ r>͚WjYZ)5g/Cq;{bcR_;efؙ*}SRgЋJ,Ǻs2Yƍ-6LI7a'KEKJEN[ UFL݃i5y'YZA) zeàuK9,w brG|H@!U-+]H{OKf74%3g5FTpv*zl3"rh !#mxpn wK (Noζ'eKW]†͋-_)ŨɑGUe s1OG߈/_o_+d(/0^PmB23X]uSoٓO(siƮ*v4 /-P^ VކCY }^m_RMT!q2󔎔#5sM:kf|n[KbOouMNД.B_@kYY?Q*O'KYjS#7>XyZM{߼90YrAx6,Kth>:f%W@9iM\<<~t7A/15:8&xcH Y# ]Vh*L&J5gtA!iL'(Y"MMξ (Mw1$5 D{ ?CVDe޳,R r=2184DF=XӈhB?{MCubAxaY߷̊P`Fօjk>>3b)Qq&P~'dW]朾IATQ jg%"܀䱈ֱbߦV2kQ#7(HqغL/ L$'Mf _Bs ྗ"c#6! F(LLʖ}Zip?)xE9`WrEy]o3 a@2͠s9'N'\꘳,yXgcDDss)k;Vrx.c_ͶE.c_(9w; Xۢ'o"nwj_ǐHg%DtE|.69HbරՊ f<OF8|Q9'exN{̕bC"o3dF]_k9B )MQo7BW**T42ͫ@ʁ :m;:$w$%xy\rҷw.kNyU"r07c5₂e#`_#UןymS`lϼiE菏͖ƿn f½^%$g!둜Q"TKd';VbP@]buPRJ2m\Ka6g1v@? I@p7 _sM{Ym{Qr[PSޑ7 }0^ң V#*>~%AO_%D  \I;vK!ދ3E6A`#zK@{tḼqex˜h< Xnn?#ȅ9[>D#bЃ-؎ ܯ75`QT. OD1"z6BrMECdB4/MzsnZZ*XYV(@)Ѷ{ .G(x8EfՑ.֢H!H5jR;A*38XC3Cph$KT}H(uFډc3eɦlJɣwNh.{ۿGئg}O@?c+д7{Qb [}9Xu6\|VXMHZ E 7 LRU xPEJ7r66jQh \wqv﹨nk+yi Bu}!W}37:W쪷cl3(4)̡>[^EIaueȯ,܏kv΂I)U)%AoWtPpmEmnC_jPea& V0?O$X6uTH L[hpTd:)ĔdiH>9qi`f?ӎA x y vю>T|z^;o7|^@0 7Mڴ\%ڶ?'px}yz[ƭZһj|O?nNO/{N!U FS[;U= 0&ЖuG݂jD0)ZB41+SyLY1W}b9ZDiDi>Y[B`[ WHݦ4$p|V}j46t54YF*àCV 510Rp~7f)z!o MJ׻"~s~ .(#c$9q5{7x 9m;705F뮺kED=I%Yp ẽIgv =PCdK n^~UKz7]Ǫ'Lw^?"B>_Pk{3z.${Cod~(P ش8:"%3w;U0ʓA5w|TŌi[p6l̮ߗ 콭bgACVD(ZtFS0UI~uVW+@N:bfo 3 1LGE.ӛ/3MUx/A6U0xDljB!{3Eٝ P]x66)DT be>*C]hXq5d1-"qԞ}DvE Mp1A-XqV1KmQ빯3"9p27Ŷmk|A!:p ޮ&NLy^3?+H,ѕ"G܃gx◦rpfK='syFz#@>(ׇ VT 0r ynTkRlKEv'[$[QvE\KeyE+^_.YV#y(+qnKJM^ozIJ2Oأyb`GT}Qᥔ_ednٌKV֭ԺniАդwKLһݻ!xɌ`y_ ی)$`+AS*5X;e#;!^ OLRuFEH=_]d,Z!;nAU%Ʀ}*nXw<%]Z2l[%/Tj>3U{fY_mߺo'"<:J٢1; 5 AAΛ=7 }Dhv x_'CLJT|~/ @y٪@0})V4`#3 z;,%06\nS+6 qWG8'x֖CQMvS@4*iE*vIkZ wXYH12y>\LJ JX4S:r]ON6`>dJrr_.Ufw9S1N06ChҖ[1"S XҿiY_4 9Ɗe,ܐ^JɐK4 ;A8 ٝ[;bT S,zۧD"$x6kSSʰYeA7H]/pn; cu>01ދն_Nnӑ[v0ؑQc˯䨍\7 ʳTZUZûuA$`,JWL5B'ڞ`D7&|fT,IK@9á{9NP2t[=|9g>l.⓿B<[6P4]9\sa1q1팩݅=ȳzMo;y>͢5ne1@_o]ӌB8N|ֻm2eY]3ߙZRFV5S.uh uN׊ 0Ic)y&~HEt_k&ĔebVA}){tϔ+X>c&>_yMխ; -q6(ct:]('Q6Uy7:Jp 9bA#m"=ogDh`n~Cԯ XRܞpˈwϘ'&̢FB\}MY.OEtvZocx1)+U ]p<p"/МΙ&$Xp ~X,i9,E %klQyҞO%Jj,wx`=I%dǓlpK~"<뢽X[9C!5xv }.DyRKǘlw ͊Y *#q ɝTo;;:FF5 8 ӑ'u&mP\+=GxzsXrTd%"ܯwe J:@KX$t 8#E*uadԶU6R>i/:g/iGros4Qa )Œ7vvfr9PNk6+Ddu5G FaʝƲʀQdl/$vS+85 T|,u}*S)(!YCZÅ6 @cr}o[ooi+~N6f,a;RV1BR8G6$ำWquՖԹ']oI(RD2GWį]؈u@#pdRn!Kl$>PIf}qKق?@Gj5!CjBh @%+^$Y(m>s)ljy\+d6Cw6z'N6FctiNy9 -.עv[,fy`DZ!+ [f%QIbR΁,=u$) ?h8~T tthG3Zma%!]Bbca3{vhR}*3E)z=]+>.yUb=)=~fD6\;OO[KOZx2"1u,|(l=]RCbfui!Ñ_SD4x1F€ޒG2)6JYލCQnINˮ+n&MR 8nچyۺĞnN&f*jF/#W[go$e \Ho9pϗu!4~lEm )[v6,?m~E}R!+3Ei#MR%>-룥gir/)zo;nm䬑JL&Nݠ%%n@/ (;jz6O8B?Ag7$u:}b_L*3#D:x1#6MhA&8XdVu7,- vюg >mc Z!Q.RbMF,&H#ڗ|Fc9akk_v؜ J|~ G$;DWֻ`d ܴ3gZ?y-:~e |}MP*0k~"A_] "V=E:]'q o*{nv H1;s($8Uzb[|EOѽ8=ްR%bm %$`3c8]o:av-3>_Ĵ q6BŜ}i"wR:'>\j12o(ZxmE,I(ĩ|ܠ?|Z/fLFUsWeXmܡ:EqOUAIY e;Sm'"Ԉ}HWFm |2%ZUpZḳXZKeNDVR5|{n2Rǒްi! X?T&;y?.++Rj{ f 햿|؀ΒC~~@,GQTn( L9JhB-m$bFEv8|eP*23PUkp)Mg%pVT%_c%ㇹ̔J[Ya'QH uwB3G'*WA$HR frCΓKY,ЙaYZ!r) sJx¿oa;prR_0Z_ZA|#5ks/W7ʺ Q$)~cmv_U9ógxsZ~SԍD CZ4Z京4oe.~[OuНX<ۥ$N.Ww]k+МbWqQ57=Ezw~Ni]ʐs A# :A6<%lSeC~?N,I]y3׍ +N1)Q n$kJ 4YCe8񝁓xE\#o+eޓ YWXh8z'^OVXDPD- O;T?T~}0=M')_N{fHHˉ:$eD:'ia#^Y->AݝmGփI5|Su\u, ;S=(BTHT/5g_yD@m6[LSХZQU7ra;)NHj]5?-E/5fdxB^\C/C.ItbJPLK)ڷ@A! ҎQQEe]|HuVmiE"<l{ gDcV)J)g%<0qB䢱ee)" g禪B&kFNh$ QmX[ [|<0ź_wGIƗ\2ΑMGM) % wb7cȣF CP$fE' :<c4N,`~d?w ㈄>1.y('cX>"{QC'@xYL:"Rtvނl$:,Q7.k#Coy^ gGxit<0 N95OdۥRېK3iS`T*<ls&7iJ4B?ox[gھp|f2wmMZK.1ͷ9%=PfzㄢgYS ||ɊJ wy8u(:[r8 QRS_m*piqĪB%50Y^~`.5cfZZ5{l&ˢn<ۦsRlp8൥/ĥ2؆ZHx QgJa @گK8&lEeIh iI6i{KoXƱ46i{KF CɆuƹ/S7zt`4 +/e`_X5gWJ6'-~26C ܮRMf9SUkt/Hp:G0S͇C /ueco(4\цnOs:+͕:|'"q_%9,8Rf_^"l+}kwS^#p4E{|.s/ÊlW$YjO8= RFMoK-B{ܭfЄû*"Ԡ( |\tZ?&92*CH[{{)cfP$uF=VY`k  ,ߩ&ԘA`Kn)`B$<]h#g\+{Co I3~SZg۪䄆-UME۫D ̾4Juxu Z::ߙ biCqzF*TvM1^j}SiwQe54!# ζgv,zQ=!!Qwӻ7fa/0$ o+`aϟՑwGnW gRKJva%a~K|lǥ$" `PiW<*<*Au$CYo_1%JMZ}Z5ِfҳtҚ^CJ0[/nlj.}aq[8D;:]}!_ MSV+juTZCSIZ;.{҅/ѡlaX28jE-} RD̐oPR&۱&"[cyb d| {nq+uy?ʆJbJ>G$hu_ &s}&\qL=]Mi҅q igPj\ÇÎ("8񂋛;!#>k#߽> _5,4M _B  C^$& AA&\V;}#i, &M+4 ISJufgYy=_ɴv}XE8Cd.'xU*oܭ _"~SB d5H DFC)`'|Ԇ؎όԓW솀Fʱ%Q)m L ІTNEegٺ(;DBq5%xcKYK8l/վp_E0)\Fww!S?f 7bL2-zxrR Ǹ4>_0 ]QS48q?4| !}qSQXy)[z7*gy1a_ut8u>{DUmu2@K-I2Ԓ<ú}[zBnuV[ >OKDeQGݬHzc=CTr~93H!V})t$Y͠R!~ 8*~M8dJz |H99+']j@H49R?/.5H'GW<$n+N{/SmI3<^sQB1 J2גi *7ךnN@@[_z>5(F&KɗbZr: DSAڐ'oH6aD41嚎*{ J}!4P.a.ylo:˾}>p kz= K#v| %+fn\͖LG*y6})DR uJ>g|5dpZbY^쿁[L6ɤnI| ={l'l1`"z&&>N[¹;zhnAE4WNnO&qU/ҵ0 %$YEzW駗 uvU)gR;@$mi!|rYBk,j)7LA6+YBĊBlα/ETxF4kj6F9ÎM؝f`a[Toj9>ȓn(WMަЉi"fyb0f{eh 7qh Y~-f5uY0/"m Eʚ$  =?74:𝔢H~9 `ù:as&ꞩr㺉-|TɖƮ|ӊVo`{dwѳ !@q7^,zG*o}y2-=0oe&캉-3ĚTv;W `̑ރζ!h{9g3!cQͣaIk0竍ޣF:i$.46s2O$j41raqN5^fm~lIIHJ> Ӫ7kldTIjFGzV| Sa<NJ}{a3U=C#[DpD'aKw.E4*@Jݘц{q=Uk MHQ@(ŷxQ cZm2|S* 7ؔ %joyog@iz;rA.OŚo6j Z=>rbAL!76Xa+gDζi`1HC/N5+Lsfg".;gsOzϨ^ 1/D 0eG&@%&E>׹vjgdtmtޖNNKV(x"cl,^ilĂ.EpHϺy(+_J˼ݑucoil MTs x%HnC病}Gcg%?DNm(I;KUK< !K^ )H@[ɨrU$|4_063o1JJpRtk2k!$6e6oƐjơgr&PFV21VZf^eScrVQ ӉCkv \iBadA+hf9}EՏH'/o@Yu8F@X6ÖOFSY6MR8Sk{%m3)$yR,cXRqk)흢kw*-J~x, bPB,~x Gvf-}&.as~c>īMn{5ƣytΞdo@ւ3sgT]\ a<5(_6 CZQt xぱ =[4xeUzpm{fZm {`+Ǯ?iyt,bhc*ٙD@%b=J}ߛ+bW&IP[#um H\'.bQ ~={'w 9t3A|碳mu[\f5n1˱?#'Iqe3-Miƌ6WS%v%ACHiRP@pB0 Rg]bˉy1K/Jޱ[Uܟ54ꎜ l;VCЗרe6zx*,`<:5YjzڞPWErvLl~<9dkr7>7*9_jBefY:n1.a5A =RKX; 6mdAkQAX~|1!򫾧:&՘.e9k$q:=&H`d}jzM"i[6sf~~ktKeX8)02#dbےVj$xJ9`Rb'e6ќI&P_zЃ-uۘ@g͉| fhV4"XUpRӍ@%6Ry_{R>$4-ɣک b2oԸ x$J@ՇO])>:}e{9q-"Q*;~U-y9VgJsl2 ݕox@a Ͱ<%yE%bDEw"'= ܀-%Bۣ Ec`,d Uإh:odS~MPҿ^RȐQ(wWN'CcYG.u 2l**{K}j*ﯽhmgmtܥcu&N$SQrL׈WUw1{`Cdi"-S9C@#N Je[DW\L)ۀvʓr%;5F3xRvF7YccX ƿ#OߨwV`^4Jc%h7aT|tҗR`X~&2槓 8+X!6RI`GV[zɠ;r^nHմK!u17&^*+ `Vp;P|i%Fw#gڳܴ[Ey[l@HgƈY| H'[_g#4$_/$qA[X8;+|h8 Kha !.!i' Tm5S?Tkz5:mv@RzEhk $'Cfl>hAYKSoc5c-KƗN#r(__ =Mf {pmdF xa<5&D{yoW)=iEP$&9H]cG E8\ moƔZ>d.̘Į2 Qܲ<>2ΏY߻@F42:F5rB Xc'D4Pu;5 qj4Y <W(O^D&[Cw`^eE,g~s49Tnh"FSbypXh#4EDB=o. 0IFp*uv@hnjIE1Vk`YQ^飏8,uВ0c!³d2oKvL]hӱ(QNV*ozoؿD *{BwpKԯ]1 zzs .?=P([AxSP=zq IhTBzt&"vƑ߼4u_\S(m /!h+.eokGS >ɢ0Kfms,ax?U_V$2ՙx"7g L7jqرĦ`x)Tz@#qЂscZ aHy8Li}v$Qs-|I,=7c!^v/Nd f$:&,P)K8.jՃCZ؁áeڲ_OWJwc#&*q8ǚ>qf' xN&|E&^ËـyB479 i(`(r3F?O};hIPHBe^<2QI   BjXƶX*GZip$: Wc QU SajY^ra]tV8L,j~chU}+{+ջRC7pJ!M hͳ0(#2+UZ-]&~] ӝcg ꘾8˃!.~x1)lu+Z䖧^ЮB-8wAjnZ5_._$wXDں*OB?mb5'iW Т>qش-4jYMz1wrpia,H$'&Zʜ$Pںnu_=g5pүt5kf^9^E (K\vKO Idv):*5ΕOuy?<LHqe u}v ᎎWiw*q{.X'pŋBUU IY.Wѵ1DAκ|SMk0V-< QX680jړBpprqjD2%߯eH,G/JD\:P,"a>Zb̢n. S- =~ƽЖ-(bQ9UyQ {qR2ZۤCN;|saЖ^dJ^>?6WpycI#|";Yv%!\*޼M7nOc>w748n~%tx^VБVeG%/۵c&׺ drJ#zj7WgIjis*'Ė`W:M?_8<ٽLW$6ou<}y4AQ׫%|wWk ۙ Ճ8Oԍԉ.`hvermP~~"K^K DX-cl V*M%#-|18ǘ{HqEl^W8Bl IrhÊ^.,`FO@}g>'HVQq·)Qty`NQ,!%*nΫbS!u@PNUkfDL\4)V5alJ+g4eDx߼> !gm7WPZep:ӁDM#[+s ҉]vQP0@d b$"Җa:*%V.p:У}@ߒ9WA 㡫 $)$$I&?IrX̂-1Lbnz=w<bQ8v ~`_zP]^auoI}ط:tHYqZzcި͆:Ȩ.Ѕn>]b(=ZfOvԞ_;Qɮd5I_[ eAr5K[ 6(Da^ U `/+"d@S& R*'CSuڍD8Gh ͡2\EUd[j/paBK*pylX/ CE]A5ǵ/fe$>V=6 ]RzO7Wŋ83l]Mw1B<(ZIh\>h>=t*%JGHW5E rx/v5a}"v~SZ{&MMrD_96$ی~)E}1A Y9&^FG˰}Xs<ȵ~~ܸ6`7 ,:fs3{E%2h!*kE˲V XK^ )Ů<{"WaNiqNͶ(7j7/G5 3H7qBX?0GTqO@-Iؠm0܇,^L3n;^ys9zFukӹwleĶd F30h\Z3B/b-x0lUp3EGXxV,f噆6ހ HtX#v]뙬/N?IW cs|+_/J{($E)Qѯf?6F~/L@}^dmjI6Vxlsáؙ7TJicoS}tÛ/pQZn;O['@s+ʼY@Ǿ9wルJz0 e^ ]A`'u+B#LWQ)n X=t}"Y5E݁YYƮ:Hm/sX /?9`2T,:Ewyx.9~;67r:zT&aVȇWNjxL=[ro๟&8>XR sJoW~WzGf|W`0o@Ud0,^1 7DDk ̏͒q^kM]*Tm9[󝘆4{Ewm"ms*d h$g3";vf ꀙ㏨}2˟enXZizK{.5~~-u ┯'r}sFW/pGf%wצcpY ʄ6;&f{aN-_h\uAͰS'Һ$" EV+em(0v7)|ơ.>C?3=MRy tiD&d/{v^M&~pc_W.-\jխĦ_c'gma/U+pgw4.8]iiKGHԶM[JG/|fA'<ی]  a)IԯWȪ &iҵ'u!}7+j[BeΖHRiݺFU8L\y|Q!=Ҏ΋vOךTsO]q ~y-b0[9+*ϚXr8|*-[w0ͷ>>SK%$#ѾH#M(ʊAvRp]v+AqMq(=`9APVwDKH5V~)/8S/0Q` c]irDfv{.гuHsX5DI@}٪P[i>_,)#4\k$M-v)OBesRn2L,t2쀉2(CmvG)[A ͩ>MF cx8OǷne9nxTRRF| `ԀAmpxhCl >w m<Xz®մo׈ )|{Y,9W)\Px"-Ӂ:bGܧݣa߂`o Bb,A4aEM|Hm$}Hl<[ $g~E*r[sAIZ`0a"v՚#p';M oG410=W0p𗝔(HshN?sҐݵ%pF>z刻~jt`gsǮw#9MݔV^rcD0u''cAyN-RWN%xC=5Y?_Bt"نB TL~{07е7?P))fu9tXB 9i N}~г kH&a{ a]vd=l^ZGаy'pTyC'/ 6d<&j3uKMH9K+7VU$Wje(:0|aDž2\We 'ּ'tlՊk%L쾅6b@J `=dfCg=y{j'kF K?=ŹKDgk k/7(K n?WPLM ,}]+UCỵRIH;*ӄlr5UP68FP0)n(>"HDtX_>+G[[,UX-y^^NjNM@WjEFŸmϼm=#'W@܅wM>wreljJ-/99p.dEE?KS>Yԑ[`>`IZ&|Fg >%7&¯{KKэ Q q23y/,{N}=cIމB;*+lqZcȣi QXMF_& ]e֌s_FLWf89 `-S9oxg%٧5)*cJd{&i&ɔ@E{WɻF|u_uCIb4(?M.\zF<(2z~F7}#PyЎŁ':Y.)H[9c %٪;&h_KDS}( Wz>#,6*1p nҫD?N!7͵tw.}vi` )('a*Mi:|Q'%:xGR`I}(G~d`(;VLfY-MdߏRsI1Ov S8 6u] $;4W+L|Vd?EĴSUƹDp\!߹4nv? .{^)HV+ @ݽA/*wP VXr˿<0iE{8t jHL0T5Aު:֘T[7 z#7lKyY$Y[hBF^b_S*j(3ܨRoikaX(sb#>gOԘϝ27 pշ{XLRB Bїb;pO\Ir2a;E*9 _p)%j)vmmSٳᬊqp6D6&FrOF:4F@Zꭇ`}蛀44|tz[#:'wA$21<)*HEa!;IIуHk޹[[\qRO v&G'v̻g{>ö.r/:SOA0V3H '*i bq̏:xsj'/`CpG.n4'ޒr6~e?Q; bE,Pf;ezPg@ Wg?4&~M몣;ԹB_6Y:◯)SKHC]2EN2|Abϟ[+QW oп٨hEݷTmcR*g{e_DGˊ(c.:Yl)@vb\0wH1gd7F9!7r&W !F(lAA ԵLGX Gxx_pkj^*U-k47bϿ^x2A A8ŦFo]#4τYǸlYhR`ڑXcۭDu/ MGb k jv5cGi0C.w 4zۊ4bqE?P8W㯇S,2k^Z+sޒ]>I@y,o^ٿ?#ղXdp+sї3E)ɇx !.# 3nB0T7OUVq|WXcy)Juy$-z6LL7F D#y~}++GeѤ_f[3IօJVe0ԍ[AgDüHlG"+gI-`@U![fTqYMNԋ༥Pg}h (L1v4ju4]TQ $gxGo}l1)ozhE" ܩ0p@"&EwIVr4Yh)<s'bp; hdOCFrCZO7jTDzbg]DXa@(l^VŁMnĹŇ2 bF+A S,W@u-$)Ty]S լ[uyLo(.GVe< z2ga zgH(YO4_ǘY Һ{4Mc:v`zZh"*uГyW SijiC|k1s s:L}1Qq !A\.cL*P-@`Pw (2g ltMrp^.A\=1$dٝ>geDfhX҂9qU :>SC< Fz*):Z%sU4szc#dIp*5`dA`g̦ڀCr ''#7ᲊеjiď/Wu=𲃬٩\;1& :[,h0 }3J$3G$?9FɩoV@pk?dݡrzqvX՜Can po+ݔ̔ :m#P1VHp%^L alu2=QM{p+"k00@$&Í ׄCj#b]f.C>>͙Z0)261LfwS"q;]KY@D&wP?a^64Vl*nmn @>ǃI7e vszCwDb nz 0]vDqLP3ӍSt{sܐ b\R;s揹?E>uPS_d~Rk-)B'QTs^zin#m 9==A&>,SQ#e顽插C)Ⱦ8onύ>̣j#W4Y9Dmqpr@SHI L6FPKWO-Z v= /х/pj~)lϐfUsZV廪eZ9sbpehmub BSjfn!k>~-*J`[UrMNJ)P b?wӥ3}ZGD`mJC<L^9܊Izh+DӚL)5#6ɠTu{MU7Уev f"Mo i8Ĵt:Fr6\N͸+%f+!KEEԽ[3-464-fN)ZN|{Bf$>/o睏ܺ5M\$C] ,%:'҃S#4H!]̐ /[l8)U3gYhg]mDD'0|3Zz -bT^#}ZŵTNGw[YJMǶX߸]%h?sZ-R.(MU~c4nj ~#tHތ#5B){CbUBPc 2T_#go69C2q5M{$ 8ɓe/jT3 lK}%~t7h kXe{@>r?K{H 1guNWg`o`FZi¨ P*%~o)J,=-bDVN}$0I2e{VjВ~ jFI wL4 xDo`AsMgyK6 jv ړ" au,,6Qae ILHN%1sVD~ %gtyd(oELH Z85),~ܲCe.xP-x)GgnzPOML7.(bl tl}Bk&?*;:?$0*Ts.x(oϊ$ו }P2D&%at̓=OOö`FBI&":<ٽRׅV۵"񻕧/ R&`S-ғvo #\ֱMwf8Y:PmDK=}/:ipxat~v~(ܗ>}1| = ~" h j/̬quDӴDFqDb9h|?nr]kћqxV[`(/#eAr|&a>uIC Ak62~Q7./EWODĨvғCG5dǒ7Ck'd+; -V{.=k`\S:cip|< oK*?rz\**4jrr nSVek X,0 Bhؤ:?c֔zq px#gK0a`Yj6w׹Bq{~*2gИe^sN7>ENbd)t .Y;EdGr Rem}-wHИ) Uؿɏ .H1a[(bP3 =krӌkz @5IGk 3)9)2Z!*0d^*,)uAo'Ƒ"#⾳w8=]2u. /?Złу٣(:m&[H*8)x>̉MSK|ռb7%yۛ@ѵTjH``:TuB= |OVl)>/쌬.Aҧn،AE&w[6UkMU'ma:c[ Z,S &/Z3߬EMsi(+$}({g+ƊpHJV;92E{t῍_qfq{+`S]Xqk:s Ҍ)1&X]prhskiCkbz9`T82&n&ƙL!]{ R;HQv)șmx~!9Z7G@ԝGi;vb5U6C^a~ڋ(8%7;f^Ȥok`#a|G{@r~ZZcG+-c#^`oF䏪ئdX#*(k!7KND*2uZ2J_ dx$;V+dr1S":oG(9 9ʐ mmZZɅ7uhSg:>!1=%V2Q7vV;}~<]tBN5l]iӒͦs1@q 2u;5G"Jܴs !FF L\Xf^^ԩ`J>wk5VdTH5wQu̫-Tw''[S t=n?}F"H!,w]OKI&\!Ϛ SMdds0d|0Kiy4[3 yܖ+S[^ Gs Cz݊ ,]5z!={&Ib>=⒍.Z?&p|t_ɫ,&%duɼ=}2W 8''aǩ+ZT]n0a%nyqmF6H6y웣F[dFn6דi_{ z$ \*{D41Sj0N 1z 'Ru'ѷk|C'pV1KJݒF> ºWa x1 sj#vUO^9[FFwv΂B+"1: cʁbq30Y#G}!'B_9u V=syQBdNq/^ ~oQOͬYa4']-/50(rL2j|*2MЈ=>)(@oBV/n''؟VMx]4D +ҭW(<;hV^(\tW6:CFp_kEH-mBy8uSdݵ)uA`'k +YgFPϾt-Uѕj}wheHGB⬩ʋ\<ڿ $j#xp"Q&ꧼXz??SS3r}z1̷-{݄|MC-! 3Tg)fj^iT>6@(C]y#!frM~>{#6x + 1nrע5dt~2 =27Ҧyu.zMg&zd!\E=!+l:â;KgH5"U&jwm c(qjTos1p"b>"L$2/T'}ɫngը=6c$[ {!SejS0^ X9KPyT3;ؤ~D^e Ke>NrRwwbOjk 8Yrr.q:72IZ᱋DQn'pZja7wabůB4eAC1:+zl N!]EڗDd`nIRGkG?p1F)tv!%Ģ;xGŸ7 rIWьQe"$y 2"`75ey]~4 H/4Q&ŊX#Tx~(I^=Ԇ"ܡ"l YcJ|$pXY1zG/gQgW92@j8,4YCK7QK=qڇ90J A 5 tTMԘ:>ZTbk’4gEjΫVecjL-Zߌ z{-ix(F*yrD,qE=irE:J(kp X- zeYs/C6[VuuLrf=ECu}^Vr.F`|oS%&Ep|vx'g m+&(gS5}cᅤg7ڂ6E eɃF}@'ȭ 3"|k Xe2-tߎ.ڍcMY(= HFhsgvIAqP/_[Q-pO(Dcb<) -=8$\B8rPyjl?C?`.77{:"zu=L_)+/H;"(g5֏ּ Z5~V/)eŴЌD4@ddVDŽ'ʶ?&D.F)B<*XEOD .Zפ%#S>~.t#dGY#_аgst|d?/a/3~Y8e^hszM5 x!ـ>>J6N) )$*GkJ§{B!9ǣAz uW>^[M7,GqGԗ%clqh &uoe`]$]NδL%u*X qh,Qm Q7);|eFß1g %lE1Vl]QecxOa͏1veBrԩPqO-Sf|p46o.j ǕeZ+hW$@sp@ș]>ޖ^Q"c@nuwl4KZu(v,:-( { =H]XwovP aNJB1#̥C :b^<bfۣn<˅zf_,gPLw'v7 5d*.M;%*PwR\chId!<ha (8CO4OZہ:@%'.&eB2(Q Ztzٵ}3msChӢy]d* DM~|=gN; NG߇f %٦z/Kuugӳ^ 3clPg[yں ydfksu$*./0%@O'  C^  5zD?OTvXBw| =0`{"h aC\ ;q:d,a(}ĵ11k_j\ȢHf&&DVՎx%D aN띃u |Թ#WIE]9ňlJ":CkϜy8訚p:Y:0ۻ,RŽ#]YkYs&P7IhuLd0gӄ]=G*DxPp yǃ*neg)]3mOv L4xIE$@ {#=_/Ͻ"!pWWT`Tf|!; B"t(  ^j[o}gDc)@/"e `6qkKd{xE'T^*&g%~/X&w"EqD,e+ATB'$l]&Ju [5ϊ3D*ݼ=,ܺTn'mk=<e{6zdž"vekO$%O"^G6ЬܸTkLˑf7~=QH|h55+u]1~_/:0)\j&`7Lq_t. N2BГ~p# Lw+#C##06H%G5\DR9R236zr xlҦU:Em&xHsl8+V M% {i5i&LVI5,S!U 1i\N# =*#uBhۥT1 硠|ki0thZ0OwhbF.i*Φ*=T"fƈ=8RlPbCj 4M?Y=ՐՄVĺ^ЙNc[$1E6Ƿxy5[lX?ծ]Tsj\^KF1vjadauqoQ orsO6؋M#b&u2Qv7YۅiC'A]z%K U|sXDsM90N w֔ŵ!D;=ɧf"ODsN Voy1A@ ڪb!ƢQa.LCm}Wh;5~!XT*J1G,sP(KVw AJ\!T s^ r#AñT mӘUus dhu6x}[xtDԎzf F۴_3K.XS4~~D7 C]Ȅ,*kD_FMݹX+QepPD0NѠ2! B J-iCXǓ+_{kpV|T8F< Ap+o6O:ybvU_ ЫݨKب*%Ճ$iiic yEThKBiubj/(NV7N+͒si ܥ/y8CN5ue[MTWU]W>Y}I]*N~3L'd`vKcL 8/zz?y 4dFDW|$/|̯<< -7(/FdhܙX{N\uǶuEC* m{"?O^ }9=>&7oM+l*Zcs1zLn7k[x3pi ZUH=MPb @[t"Tgi2wO \x; l2.MHst=1Nv_=d<%uڋXgzI0gޥPv]^aV?EUd(ŒBJtukhRf@lm-M6Q ($8 }DL *њ=CCV2kH TIb],8K&ЗRO$oPpIG /J1ɲtߘwx$u(<@f &q;jRW"%݆, g[z;/vNƍ3l˓IT?YFrK?NB@|j:%?XƾaAr׍٧DŽA>߆cX4Qhob7RHG<Ը(ZyF&p8\u9Od<kO D롥6eAy'ã`\ϦI {xEY=biL)Cs;q $$kE A-|>L;&[D{Yt'")ίmP6x"#1HdJd74*kT^dDeƓh*TɎD;wٲ n\ t㛔?-,k&G и60Iuަ#>_ N-,,D_Az4H$欱?Fq+9WdS ';7 ՗h/O@B_1l"ߖܽaPW7,N(8Uest'Pr6}PY8%۴ u:&:]4pb.(1Hde:aX1X0s8}=2/wݍ}{OT7uTxXs3+O:rOp<1`6C ۢJ2xI- H9Pq2H.-m D1{;Ԥ -pwYKԩamoDz~:cWcWE0:5& N_~Š޶8ѝFϲLu8k)i2Ӄk"R#eQ, +r`4ui\Vd.{\.v~J0cVd6YGl>2!,/4]zD [(=,(MƠ(glvzDKaQغlky;!{CU@KEk%5\=)eV>!ߊBX90ڇ1?PHO<; P=ٻ/cami#ej*+4I` 3SBs&u͇,収O@8c#P$ Dx~ǹ'8ˉj/ۓ'AԱ5SKH'1H*Z 78G9MAz{~FկWeo4¬&ct Z(zi!+۽kHdFesB(VHLƈ]7N=*+?"[_~sA\S>O²X6>,H4zF,0\gRقspI.IV+v`һp 1a/BMߓTE,*t8r`-_lB\ Y+d}IQՇh8x]z^Fי߄8H.#Y$<>+1rú>HܡA$fDSb:)! Q#Y΄^Y3}*zF^F|Y'mQ$ޘ7,]4^f룹Rq4Sj;N}9k6gVfI?]j'sgIԖ?E(t{i,eU9cVKj˾60s*`Ӟ!4 d:vΒd{ߊˁW`W90A^Qm,P 5k> Å=y!ON,o趋%@'}}VYI.J:(E>Ufe2']ځ wRSݏ6xCGcj>'!  RM 9TK+}GTjN?g8kg Bc .QwqFO kv$KƏoф#ԶDIRsrmc$+h>u-p 'N.)%ŤG3g[ @*MB41"Gf0Q3% z4)0BUs"/ <“plb 5пm>',P ! rsf *iKSxPr'M@: eDϔȂaVzs zJ4z10yfvj^>z}W`Ѥ M%2VȺ]tFF#[0!*w\x: :r 2 ߶RU߿?:kXaZupyKJyϗd]k{{ |I|u*H*U+l?@N$BgМ$AtRjSFaQRK^؄f, T L#OgB'w$8p:W^-ӖWdL  kŝbHϬђ&q0R>!ZruB{zBƼկnbN\QRr(uvsO)`W뉓AE)Uj?vwlҽHhMM񏟵8I5;*"0rL>/=45kE: F-VLZ=Q;~AIJUߋcHB޾>Ep4 '&"C S´f';IIgzC `ʙfllYY 3U%7g_g\⼁"kc*VDi7(6od1nin&{ET* 4eX<":Lh>FKy,z9V>;1sCn,c XͺjMwM,laCgO1b$5 9)ARv8_>N b`UVldw8hm5\ ~(cX=4w';DȽةWq>e;qG3#ȸȒtхpbbE*yCӐkX2]y(Re\ñPDQ{2oVcF˪%n.?tԑbsBC y4 $76 0d;8\WA2by*\7H^W1.zu䁍&jVz;cvV:'. >+U4ZUJ=jO8Gt^KuN~)+o]ebû. %ߘ@'SJLQi$NXbG ڢ#[tuqzڔ\zk鬨JVWR1/j%[q$^DF{ͷ=F4.R^1:2zO0ފNu}Q< Sxs3v C/lD|'R\Z3j=>~OK$9;>ȁOYR[|f?^2m{Dr7677^"!aZdLH# ̈́ {<!76|78fԂѮ1wn{}1Eu#)[ yOkfF ,1 oܳG̗S ;piN-NV] 2բ"Tʫ}qv^ `" W,s/{'3/ӓԾGpou j Bפ+<F }GCZB7Upeɥ[= k]4«CO޶f E6+ :.%ZT\KŲ fU˨w=BYO!lJP牦T~zUff0hB= *_o)ʈlD #E-J]f?H~i@5Ȼc ;VynFA#A#ߦ9aZSQp!}}p9USߔZnJ}t|ճPnjU9V"dG 1uX,Q bŭG1DHh^ r 1e=vClviv#6]f'kDQ76s̝ZgCKTX=fIGkƚoFT _ԎRn9K&5:pzA}fO]'R]etmWunR=S*?1ciy(a2l.&څO I NVla|M> W̺be,Aߦm0b$6]tlI8yݚ=,=O MOW LAO1 ,Ї >liFP;>șk,` ~XdgC Kʧ} 4*Ĝ#_U'8طm#o=^NƳ5!Lz4Tz~M'1bEHmI}D|P; ]nE ^_FPXУ(nV5:ֺ.ۖH֟:?#8n\!Ϙg*-)o~ZT%+Ği:}"ňMfC1^Cnΰ/Ď<Z}Mm\to8u|ZC^6O 2BVlS#ztϑ0\N hs\?B*z]SA_&z-$@ fdw 9L<~BSƐW^bJ\dֿ^WWOB4dK?XV+i]N#}lsj>:5sH3vp+(5ӅJOB}a!F!M2rs>Z` _{Pꪥ$gP }}<RKEß]d wB. 9kq>">ݡʧҎ/4zJ 2Z unV2͑=@uUPʧ) ǘ -rjŀ ҁ130D*Hq((}[wYf7t8)sEw{GI}17Ya9 Z~9c}R H6+K~n60~/c,9 ),C/h|ܟ\k#7.n jʰxsg4ήc6TŇIFR_urk3⬀E3z^n! .NHԘKms l^i=Ohؕ`]<$ JC֛F钕~M5 ݵ>*!_5)zz`,Iv2rChVp}(ʜf6S4lyhqAyv}29Q-D #3t[PGuƮ݈nAH!V3 }|QkO]IJ/q Ͻz垢Urql-s~_]X{NC6tC.~Lxy1щp e2yL!gee}:e7Rۚ!Ák ٗ1@Y&u.^!i(`PrGl$It',Ki偤LZ(ބ 꼮7M ]z hk$3snTfun1)E6T{\̆#Aw:!4c=["byn䔙\ԸДcffOj籖U*#V(7d8w+ Rd:{t;$ySB7~U:N ?}/˿{gfm4RZL"k{:lGE(n(*b(P8e 62S z@Q D{y˱osHI/>riǴL[b ͹9zd- 2X zIgM>u]7D@jDS-ҋ$}0i. ߙ{]7@Hd&J#[}ՎMHZ!}:.u h^EתMzOQBp8^֝p%;&%t28!)hAXb{JW1zԿfPATN# R%SE RD)`9^_naIӘ)sEfz%yLꗬz9< { GMK?5~H"Elx<.vPmɼ8[K-Yhu߮ۜQz+}$@Fay%wEܟG~su/zʹG$gOBዊdKo>c+>Y k}3Hw7M5ۃ {P+7I&^h9Xb ^"4k;r6?>$5؝D13̹.L67rz/n:ETK`uq[+FNec8uWb#heuV^yWLEfcBտgw1w>0<%Uw|yx҈3C(CtQpY@oHW&a5lpG#.r߹}?8SKszXߊ)˺\X NBޅՒ`ZW evQ&pdP!ETkG# -0J\fsU` /x)!Cq٤Ku{!1E /Ҍ \z<*UM]I0Q/~$u qem47L99 _DʼF4*]OeB6wԆ*zu[`U56.XXvvgeQ sIa0(Ѱt6tmZi ԗek%0QgYfܽ 6Cs$oP:z/*WcG3/\T{`hu1R8AVJkfܰqi6uP{Mw6)kp~lt"P5I}+r%|280 EOnu1Ε;z:Q?ۊP*_t^fԗdr51I͇~+L+%#sX;2UWM5H5Nje`W-!^eg2fxHO#4}}XIJ $F簸#WrY0 @kD ; :(YJTr._&f%.6J܅jT/࢏d24uE6J`u*zH^<1h&1I=:\”@5-WAWy\EU⌅`DIisO92%v^?x 30rKĖنX 5mM^nu;Mz.Fi^Y|t6s+Vlb6 Kȡ[W4^1DIJ\ XfH[(zCZ|j @8 '}!3j  >C Ske \/>S>QWXǙIOka,\R=dAPe.Y{%Z?W(T<{T­,eVPE?W9"c 1 jIdh7Ol$(XZhڗQ8Mܕ"MT(L5S ~#/ŜV($lq-HC|XSm絏YCk/owd׹B0]hS2`έ<&_IIVW*}1-@FPYbE,mt|jA gWϙ B;&V~jS#nSw2H|J;br 5}sCǟp!?pA3! nm\\O/=1ۢ~GIndwVxa(9ɆD* ŷÂۀC.8Gí>2K>0x1uwg%<"lM냺Ӕcb_b L?FǺgȼˣ:)[gusquna a;V18SktЀ3oo;}}9\4p둣ߌ1( c*B{]aW..Sk{'cmPU;ಯȓ/fxTƖ-_ՃS](/ kJCo5 ]dQz,*Q<"WOΜ3m]OWb1b}~*2)Uu++r{rauL'&$C<bڐ< et_/ {I%eYe"z8 6=Z3!Qo͕xI,i+І?M1(8g~Ph WXhjֲUm4D?r  Dhf7S{K{yV4'C~E@_!`x!|MizHvSNm67aܟ16IK޶MɠNXwBϞrpi{"Ojj~/-oy~,1a%5D sď(y kw$DNt wp5|5v((6U[c?",=nZ+ADp=psՄ"cqzTUzRGo[Z+N +J`I6ۏ`FnzȪ`u n(A]5'J9gb8&ɡ2~yG07~8~i`_y5y%L*up + >CF/l[Gګb YVde$~jn[J:˜+=X|Em e)TM?.,;%{y \e$iL29J3$G%ƩivjRċ&75b]p,ػٵDeϽս6嚈=Ik=KF-킇yOTh ɠGr(w}_Y̙{QP'u%I @QI.> J +lC=se&ժw5d  a~zy([]9a_&dcIs37#'\}ӗV;AS8\9^6" lD~ Y:;M  l D6"ɇXճѱF6CL]M, (VٽO]TeI ֨1wuuJq\9te!hjK@~ׯջ/;I7b0 3㉿K#l o2$!).I49aN/r'JD-e_? Q]Rj&r WA0XΊոAD;קgmEQu4 ˗]5e{ZPy|rxZM2PX@PډG;`D?t01vg;vq=-JgH7BD) $^]f΄ڳ Co>'(ǣ2 Ü߮ :YYg@ ~Tɍe<ÚD)K7<xP{VCI8'qI)T YR mI>!J3azX37lې< 5rˬg=|4{6699ttX;aYC_m!wLƿ*=HqMO'prH8RR+b *Ki@ME؜ƿb۪Nݮ-aV&~5Cvus7Yb`bg~\Wc"Bf)DNt֘7 ؔw! B/&j ZPPr?l! IR~Nwp{"*u&u4_sZ E_Yn#"^-f&"-mF >%H(|cWQ!]&6 (ȃ<5|JJ-Snr^'Ճ*/1w<浃,A%gӻvws1@E8ӚXOsI$ݪ#! Z=[4- 2ny dJ;u)AY{43e܁Q -q}Nv6? _a=Ő+@T]i(qznFsXȯ"e%⹝]`GFx|i8j@HMY%"zz KsWO7qno9ΧդR`.)F!Ru4a(GNO2JK5LYD&`:W'đPfZeƷX,xw=O} T7:6Iu+ =9F S4*),yPrэ%+I|_r nLe!N*jeYn4a5> -X6}f:<@@6]&.dJÙx9gSfv|.S6gvlbZr$=5ZH Rxn ?=@mC>]WhSO/q.($Ԣm9 ' ShSE}5%$PD*I q܄X1gT`pNg,SYfKC^`0D[,f2J р9:J F_K^#z)'j, YL+53v骅JhV:IdjY]$<ݟՅt5]ڒ>ĄtǨ~mXa=Jb?sxK,.\# jQRov7/x3afOϪJFFE' d6FN#\VL5/FQg1XOd99Yڣ/^inHܛnSStBjc |q"L鳌,YoUN_k~ώ7flRpWzU+2w)7Ա; $?/nwAOK۟4%I2q)4Aۅ\G;vixHuۤd8Un&ulE0@A'ҏvO爩ZupM08RRupďU)T1 $x X k>#[=H^MCl1O;$eɒefMwv%%)upǭq`l1{YWoA~ > nE{chKq jDg_ 0D[L$u&SևHID^WP{0oaeX3j }ֿ3SڈoQNZc}^\?np #bs5# LJ|66 ֔DAʱF>vlMzcD@G-@(EEk` q Kw\ٷo [M.k;H{Ăk|Cz"K[ IŏWP)~iQ1ugНl1ry҉r$4Ax3xi3cpI4{9*MvW `,W ݋70nN@!PSJB*V2A{alz¼+h7*><5͟,σ*ʩ ՘' BQ~ 4=]nKI guU6<0 =jdEX` &)XFᩬLWMۇY/jN1ElyZiLW n8zt̫JaJaL4>"Rv[9`4cR@ӱC3mn({T4$"oUr;gs]VTtexCML)]EiP14|Q]9JÖyMAD1Ʌ`gB>rZl׏240n|0\"K;(a ѵV\ϻYv@~o~P:<FQѼYE9#޽kX\ ZF+Y>$ſ.7xڲ,qs&vg-ȋ1Y%MBgvAL<%TG" 7D3R>z7`?nkrIyuIF%&5A3z3ЏKTKV~3 >S6i=wқu}΀N RiUm<*q⊸䂄`@Ā9daN~!;j%ag˖B6޺4Y-z2زx`?>rH#R!-Aִ%V$g{Hg$vAǭPC%iA,t;1ĈF&L|Ma\ Fҩ֓Fj=b& Q6ڠ>m){rrhcŠ]:R}5[Qn&jPi6U0AECy MY1TՓ Y)%yxO8vHJk1n<" ⛖ ,IC7WPdõW̌K5l;~0UٺW+-zUUSi:L~o 77AXvL3%SM"!hBSKZU=0ǽ-B i> V\b#j8G]V當3An0Y4; MWes-r-j0~I=FIyp{qٷc~^,~j@]6a JVAS6IbbaVv5[ d0 W Ed56IaaK(;xljz=Z&vüT@$;ꟼBHe Z&ey؛W崄gLr8.cޝ;e؁Ri{U[!+A N1PU{4?Ǘ9uv&k)ZC!M|`K7qc_W.>}ԿfK}y4  ,4}_;C\4#ǥĀ #:"˶J>/S8zʆfsZ~ќ(Pl'P}+K]3LO> v)B+H{? 2Nxz 8.?n sLV }Q'P;]Z8iEQ ,n^,su 2}8&#;!/tB8-T{z KeGb3n 0evN,vwp ZD1$]L9\rcQdcDm%Oy UQFEXsU70јQ?=8ۺA z,`kR 8ӡ% KB!=̗zw"3hsd5H8hT^i=Β6B(_JZ⊗܄;p6Hu3vĴïz~\>B߫jƏgɼ,3Op&$ :%բQD{i?5䱹XZ\y\E[1Âp6YVfoh.V\K{!;=o[KXA ^ .=ȫ5,>PnsVx:cӦu.LY3N؂s$[S-V+2{Ruaӷ , )6y G48̺nh5lDW4R3vDgzOvAtzfރey D}wwX3hJ$\ʩpȬVϵ-]9+@LGb!Amsw"5$o=VNW?8{; .Cl.n ́Xw?%NGcgy0_B窏QsHK, E[;,.%_>̷iV:Zɛwxn!qroiX]9cd) >y =$Լ)'gZ2@K#̽ZX,.V;Sz1_w h<6ZHm)uJ7R0̫[g y7Jօ.6`z3.\xw6X-x}n@9.m ypxnpо*}LSҠ/,*P0YT|Llf▢"gxg׹kk (tUKH; S@3$&Era5&GX2U庄Eu=$f,d'f uIy{G2UB+׶viXV~윭ppj o ^"dFxLu+R~MS ր"͓l oWJd3ƥ /9`={.9ѪWKMˋtzְ1$Я,.ߞ3zhWOEu,_4ppI`-w=tqqr>jyq$+u[A1gHut :/3يgY0_:l зBIؕ>lEt;;@־xmG}^+"v`;빆vϲ($JBk 1 >bzi "xM5'pUD&'VޖN{؋rsPߟkh/=O8nXqk")q~JN<* -!&Lc)Jw7(Ⴥ!#ԝ[H΅fx ,m? ](Mql9;{t]N(<}XOtJv vcIW.iWȚwBi&SxVyLixt`,JGNkqfĺM`,7&=F՟xu7741= !ċt*UJԠFqCeyA>@izX0(9՛@jX&\kZcgQ)Z`I6BBwCֽ%چFvH/;"ɸEKx+er;k`mP ߄A8I)*CvC%y `E45/X`CyTL.'ž>{DirDNf",ˠd>,b-rA@__&YslS` R Y c{|ዤ̃KǝE|(2X:7=x66 Pkϖb%~sȺҀBAs}Xm m;ʼ.dMnD ~?f+eβyK|uCb#S[h>%|㭵ro>Vxi8:igw$T@0A#`b|z5a›"v) lPj%]VV?W`f:")X;B_7N9T?ϼ">s9e [ ˺Eq=Bw_H5+GwT1n VY!hHͿACv8Wu6:[Epu[>D h5$kɚ WSc` ԫS`}\L'q'p ~BKH /|0PVHo~S2P89YDtl5R8d1NE\ul>|N]YlnXCTGX..V{׽zs#hюyI\"# s.f nLҔ&GyzHyȟ_|NT~Ѷ/l]v w4[k'_%^ X18fpڡ:v~![l2LYCy9/(vK80Rդ4@*aXulDCb^dXF>p6䃵P _-O- ]0=4GÀזH~#G'Uet2Fy4K $ oFG¨VL%.N^ZQp[R~]>20"3T\c#v9:8fG|k餣ZP]6c=4Xw_S`_~[(ٻTgW FL ):]/w:::(m>oR޺J > 8g+ ǻ Ӎ*~pU&)/pt/SD)ޅ 8M*`繖 5"nŢ]-"2"L5hX9ՓvxP)0Q,"]-Ţ}C%f1Q OhiB9^*Yɉ8r=)KOqn ʪu@7lr"]ڃ;| `t;-1J";Xm5w#tC^}tF2d;}W-a8@0.CZHίyՂ?KxUX%eXzf}2H.Hezg8ql=H\U+Hqط/ lծk=FCw#[;VyQLf~ QeQFY?9큮-JYo8F=ŀ015 ;; =Jږ4aGLiAJpH_azт55c⿎.|LE- "ݠK$/ -"Gt8S+Yw`mVCɷ7*E ?eZXx1D7$ vRA0!Ss[ɋ ;MsM=h|x%voѐŮ~je3)疂3^csZ>@͘M_)<艛Zd|ݲ@N)(ہ 5~LSՐX]AHEZ,Q5qKԂ\lR#Fl (yZ*cx;LQj=JF(xRW_G+!ZB9G5oC:sD5h\':([^@<ǦdV>@٨kKи2?X/ڼaBv0F819 8>)$1;iajMYFskkhYKԨd>7|ג *4Of?7TU82[I~L#Ҟ2*T.Ua_{k,΁!H5Qʅ[-ۯBAړI.K]v<(|f$xS%Ql2D7Ƌrg\ܰ8H!om~9׬UWTſPB;Xp/`R #(MC'3(F۟3a +Ǖiˡnx?q2_#~:Ap!WA`!h~S=#553BVQX03 mڣ}3.e SH~@5ר)5)@U?9F S>Ռޙɨ=*oQsx Tc7%}¢Ϻ [J;y=*¼=|X!M zM!tRcmѭQ9E!ڢIYVӥ:,knVdB^w0l *̂R& Q*Y-| lރhm>`h辮JYp_%كQ<) 0Mx_$(ɀLۋкa36_xc&bX/ }:yy z%V:LrUSu1n8D(;@[#b~F C*I-Y֑ |ZkrxQ5N2>_tW~S=nv,( [h:9e̪_}LWvA;F+s p"VX9=[9!0S/-/Os͌G:V7gHܬ6M,P?..V2Y'`:XyF>|1OUJ`sLqqsv\v[X[]q|0Je1d߯Bt!Rg˝X4 ]Mo~?J/#i>di?$&ZܳHy \0?6oSm^xpޤ6 PO1x`s=1] "fUl)uVfྗl k"<4f(B9eH"i흻^asX Kcڮg%qB*D( Лe>Zyxs,fH]ԾtHĊg5.Xw8%$PjɌĆZ@uZI RqW"q+-w:ė\:%KNm>=Z#A G{\^єTҤK*J܉+6>L&E0?*)- :ƽ!sATynz}x~w4i.&,+T|| sm/ *U{.? )~};BɿҔ)=]f99+F6g\|x'|f,V; =$)G H[}*{!Bh{ '?GhP|ΘYڿ WX4td^'S_}+!%F#@{@{GB,3B&e V3`wǖ]H:G8IF&݂`/u}g@Ir-Rf`3jΏHQ0-B!v}ztTtQ_h aRw ΌB4BB^(9 7.X6;k'tX"7T`ͅSc@*7ke6F`pD"FDTP0L2Vg8Ŀ8vmyP󲝰HH.w$SA6ud\dOo'OMCVɺթBGjf: *aI0 幻qu5dj[5wlhZjztsW"_K BVzOdmU WPpy=bFɈMCYdܓ KֿF] MVImO1X_+-^ss=n't9̏4Xe|`sWO:Nz:ș ~e]n9Qllu ‘f@%يn1fH'ԥߡnC*IXUإ@Dznx)ijj9v=EH5ڍe^}~%WsK> w @ktu=էc]ʤ -2SxF/J[萭Cwj68H+D:Tf?6V̓\ jzŚOl|4NT70FWr,&\ zRjŨIo /n\dH9\pV29uupUf0w]GK{.jAH "'L?gޔhjnDzgu F?qo`JZy |CNn%mI;}+)o; Y:#cђUWO ,[opǹhZ >󹬾_¹T|T?[z 'xđ}+! Y׀/dY 2UQ"ߙ{P65P4"q@,q 4O{bbp=9jk*k\LԸb6)*u u@mKU \RXMwi˛jr߷ogw ;_TM1Y '1*^Knd!kk鏶7܈ -B+9͹"'ҍ ؚn[FyFAF$QwYjfIzg4-sV<+\7ॼVnZ!)IjGj>3iEB)bБYI{( M𽸠iX]߾*ǤQ-GY4ˢn^,kVSN#:.zlFw Tr-PVΩJ%%:j;^{6BLZJYY*!Cq_Y~DXzIrOqԠ+R?pt' )fxyB~fW"%0'قQ1=PT jH[tGI0o4!2K,^5Be֙>XЗm35eN1 "#e A9㼮I|:Ӗҥ4)Wg3!6S)]v5,`pL:^)ntv)%Do(alM/C#j-_N/O2#E4rh.JL65?(mZ.sUee _J8Dnc:7m_din0g{r\)-[6Q.>ţxp@?5؍ gQkUHPrFQ(c2jf'{!°l%PkĜ$,>I~)"(p~D~$;Z~@ǣQJ+` 82-9<_8=m L4#*\܈%$O'Z >o$c>k;y\*##22,ȸxdЗ!Y_.jL@MaRx҂ HcL3ʳ8&Sqoyf2kXr;5MQCA`#Ka:#)vu[aJ~9Xqj8rdO~d$?dϮ7|Q}sZ1( rK@ [_B&6kFw'd}ODņk'šIHspQtZ SXsv$-.R}fIr% 0 H҃Z\ڞUVDŽ[k#toO-8įSЮr[K,dE`kZR^,vy*]mdg{SLe{. /%Zg$J*2epo>osvM$sKO-ѠƔϢi|2?De@R{mCM3Cm_{+ݴP䝎h#:pmqۏIYKaճ;HY*`LJa$ aqȬf:Q9ʪh@ѐɲ-:Qh3 ZZݏ`Qbw#V ɶIq. .k;^c*02" m%=R.;AV^~g>?>'(?+zT n(Fm${5`~B0)J%z 2YHgSQ$}KN U. G) rjD7q8Ph}I-Cp-AroG*H\zXcGnԝ?ҍt䛧8;u1}!Rr~ƚNM{amc'Ԭ=.jiέt[9P/.a3 `ev$gz?hQ$8۸OsR{ro`I9OaIwWv5roe))vh~>CnHek|G{yv ns$џLq:՘ #zySknEM֐hS9燍*+zZ|Vl pAN`l5&Z $N}M?O1Pö_vCtEm$~F+E9SkDV=3B׍"Vrฟ/:܁ڟm„z=jPWΗY!)W{YNk@' Cʶ0 fo97gA]˖)-EL:_٩D( /BvGs3#о&hnq`P`YTjc"Kg1nz$$=FQDʋS[D̖[vt7G(Y=Qzh[ZJ{$i|& VLVDY<ůxk#$ǔᛎw[E;B3F^6ɕ]?..u_/6r Qc ;某 X9 ?y` Jgԑ _ vFfnkLM1k;;\ڋm\x$)9j7'k&w@^]c>`#mS_AUajfbLp Iല%1to7ru1I<Q_Ms4u$ 10cθWj/'.ȑOmZ N[ ?I(=SzEUܳ!|P'ID%yB6)}"Xꔪգ[)_Osyq6Gpm*|S$&oˋ۹1[&6@87kyBr6lEM}(tJ9z5O9&F~fM˝zR1_LпH?D%:z'0H;ZbPHtf3Ekxo h+T߽ YBY:NV̦ۏ`R\9dq.InQvowP<Ꚍ#1HfIBDǣJS3!k*1XELֿu79ލU 5[/k}bxYA8f R+F%]_,aBF_PLP].>FC\Yt0:if-X 9Ali* i|Mg`80sɸ}JwA%.γ6%,MܥʸoK6Dd;!mtLH/|x5Be$[gqːZif #^lmDO+fRXa!*z[ts=&z<Sw7ᯄv02\;D2?Tt<)F[D*iv~Jԃf#dbK(ۆᱲj4֌ظv+}trTFvJK&1TD Z$qpZQbۇa-GR ?[ ( 6v3 Ri YB$)r mx3,[E<_'EL.wobOCyͦR(!MHg0n,R>%q?{BQZy-^wsqg2,(l{pLiQ8ղFC;0Q-0:90^ YmCW 7?E[YaQddRYZУYYFxRAWX){+K&x;$:5fF3;,r.F.+!ơu!W|^GCC^ZҪ8f 6%I#P@Y:ȹ= IӟNkV:b >1-%båv Hehy2cB@]lZâSniŃu; ZgmõZEQk Jz 6 oK`?"H2stxk[ 0:f[GKvx9c0<̘ê(ݱ=Efy<'GSw͂n6Pv0#wAztv^FO߳NDSgiD!!2 zuǏb A\"P&,SJ`m_ipz-_Cy͟C?,Pe6HP$ˆl6ņ(3O!Jhhu37 ȿhHHk$FjC|7x2^-kH7,+ijRg6 LDK🤼%a} G_#r*A4ƟatӡΝnO0O+bEtR43Q?Bs흦tYGz`dϝyi)^ kՎjuKp#ݠԏ6(OXȓcC .,LсR ု{L?),hĺ2˞5EU=#(hIR4v.٫ޟW>5*s 5$M'A|~_73T]Ip i3]qa ƛyղṶڸO6u&xn-0Ѭ% V@ P.^7B/IAi>ո_`v#+}K 7Caw&,$fk@Ѐ.Tpݎt;9ɎnIu!!q><ȖJ^FnH@eJ}7Аj8J ++2 kYJmg9!JGJ}Mjn. 3qW8Pޑ=Xk(2gm `W0kd9] -~%-G>X%7~NSΉөIP=Uvnr]Qk$NUWؒ{d,I[ Yq~e6y%w: W`*{ZS(;)o6attsѴ񨅫P 恘c@ I'+*=qHNp-F4ʺw r > hS#uL)  k9ܩ6)*tIOJr{3nɫ{ Y)#) |kZ"H x̸yy ͶG[Ɨ}4-L c&@Bns)W;,rQݻFTwb]g nw ^o uΚwlX ˂wF͢=?NzuxpM _ײϮt y'SrqhrUb"rl_Ecp"Q|tzw#d{\T S%:YUO++ 6É@;YzG>ٸ/NTFϷ>OFBhS%'N[r5eAyfq[)} o2n\)2nO_H@hxO7~ӯ?>84SMDOL{"tVӹZ"N~|̼T'TS8e&0R(w0(j ۪.վ{1U~@d<*io'ki(?ײ͒OLJQzKHLn[ۏ+}5<+ صyЕSЕoB18zh0nY2R2 K~kPɠ~9vP*)ffks{@ĸҞY5LFfTW{ "Ho?9No$Iדx,K-HBJdhdh<@kPRw\{^]?oYAr' :; k3ujs5c@򔞬DW!&%ֺVR~J,*SZ9ŪVir'wGHgb#%0 U[;dF#pckV_NS<18yL37^ö96z jR*atwTA 4a yM!Ǎ(7uתIܽ ™PxPɟ),׮ q@n)'=*7:nP Fo&k7X (q)޻k4gûoj[6 CCY%\q^NzH"U! :?`wx,8`__Bݻ+s 1.ob.*X[#hףh|\Jnp[(S" ODDqoE Wi`<שZ A#Ŕ cFK+XK!J=ފ۵2WHMuH1&1 Y,\a)-rqC~~uhu_vX'ɨ&7c#H)FH5-Iahig[f X0ۊB&GcD3jc01[:zoAB/<}׭#jk P635]# 3>NXAGr bϟ$$/BR/ 'I)+/~L[ LbC:24] "VpN17gwl"*fƑ_ZNWGF:09N?NMGGeD`)x&X Kd燹ׄcՇ͌@bev{Ji g{5 SZ]d]{^n=99+ zCh#S.WBH)=zF%S's;SJT]nhBo$\W0#k1#lPIbj)PfwD\-exY5[^4l$^ 6D'T0fI1x Fur(|wj 04ky|PL4Gt 䋪c2X27(ɪVy,vY~dӻ|CyV-,GЕ4UҸC/bG᎘%'CuZu\jk}3~D\{,j.itwƛ4=¨ŽC,NpVSҼoܥGNwpfşqc QjV8' ڜ߅}`/ɠ~hN WxjDb#$8&1cb rl`%>sQ5X<޹UYPH.inX#gLJ ZĶC$Sޛ%03{I@<M󰇑J@5r/׍6I젗.>yV0,JW<3V卝RRAPXq ]NP#dsJ ܉eK[9jwyf0C_Qq;yODyN]h>͝'. ~P0qu[]n,>UMOX$`A~R0XN*x~fo a)!(F?$/sK|""yBeUv/YiU; <2J/z? i4ZN֖ FOw2tfI(ΐ}w7@@kg 02W[.F|gMkƘ$gJQTbQdj';d@>|Kt}z^J*YwһU{KFj5WR? # 2Eӿ qc B}$*FPy!MggsS\!>D:򴰅ѭ%t@G^$MIwqvNwE^?Y/;omXDpC@]ׂl{ڣDEr9s =1~+ך0H 2YJk$:5j#m\tˎe foi@x*R%UoQ,)R9j煍Fp.Y9L"ܞ:퀟{D% Ge9e`UZ&+*(sd{ʦ61IrMc!+w"#Y9l@rjɅg3Yx$cΞBR}Oqa9Ye(,5j[2,͋-s^EFȀiZ{q=utrD rl]֎ϝ+o~b/bǴr,uRO|) 20iyo/K4p P:^u@IO*2hc{wZ}(DF5A!{-xf $>XTAPީ7w~0%$QM$$b\KPo*7cM#Q #*,n3J tm$l# +%[*!:,trTo@Ϧsz\3#b)IY֎~ 5O.^"]].%<ǭlEN4m}2ЕzR| sx?:.9пbBD|Y (#|Dx&N S1壍KP` ] )m`ЩtG揾ݝz+pa@p?TaٻBC4 zL/@.ϾoL0Y-O"آ"cZp$W:Kʁs`gsA%K{ /4ox^\ʻE5a/c>~n-Ay*u6|Ǎ,h*]XO5LBϖW7ڤOb"a @xfKOm1zHšú5@^)y"B4Z }>MkY buGxXڮ|>P SCf?@zBV۾!2^jELoYU"?\4qp+c1Ȣơ }䔭'h.MLFCTB[ '?5#&E_ &jӸT{UOuqN7)RIJ2%*{ј-yK+*+0w7eԸ}C-sIJU:dpe۠%G$)BcGN\Im׫H* W_cD&wwi'yԺ!5W[〩Yۘe{3`fsB^pvkoװHim"ӥ:9HbSeHʱ3d P$6!R˻>]%~/}ԕmeQ(fAW =N=㌱H  tBæM'a:鶪 83:bI)U^,!L3Nb9/q0%@q]6kn34Ѝ)PuT/_i[sX7ږCU;. Zg6.f6 bIY\AzxMTjfpO Z_}DNُnZƔ/!]͋GCD%e+1Q3CWM;cV vi+혤AR{07jSwZѴsp/&vɞ'?gwJH}QpqLg_{tʏ#J708' 纪 b+yckaU۶j<~\f@` H 1;Uh+u1T7,ԛ@^SX`D,Loј\$r JԬU~..H4r*H܌j%׀ƗNz#}ZR>BN @'$ (I 6VFyɸo@͌m1mXSrrRɐb ˷}3#SsΛHc&J3i9P$n)ِ_+q-HvU'TL".H҄}w3c9=;l[2璉0/=Rb#er8π92@{"% gW'#tjto,^D+`::0Vnh8,4p 4ϘiV!e:7ri?~,.EWȶ3ݠ霢As;io6IT|sڇ% 4l^tD"1#y' g&=$39:g^zeՔH4B u??&D+x*UK"pr`a*(;SnWzY?qRƇkAPgN`j2zɣE/vΫ{-Z9)2[\[W?ZbS':>tmy4Z̵4V! 8tAX z衷ӛ통@xM3X6!ЌdXBI0^s#1+Dò|)ˠkxzypCrsg@NǵGLmp=BYiٜ,n&|Q q%fvs&mdP?:$.1 <6%h(h4^PIpPzw|fϙpib+QR_7B(4ȃmH>sd` v.{}SeܨEE:CbA-EaFK!XGT)LVS3&wem{Lۀ+x>@õ3Ri=IҼyx)r@։s*cv_H݁X)pS8#PbLMxS6g6.Bft=skؚZOߥPgEO AM]N>G>e$=/=I)nN h&\)E,@ u NPrլ:Zh̚Cg7 pG2}mn9kƪGV.tr"i钏WޔU7Bd!tDvц3QmPTWa)驯ǫZm257KOʃחs}9܉ M{h}.OB- 6KufQrᬋF+D讐~Ť0P5g)+ĺdҋe9Kڬ3Y5Ol.ttJ,&` !cʊ>}TBV ͼP)'}{t{S{)&k. QrU:܍>8Sd:&(*a›pj6n-1x( cB8ѡʕ4hAiu<݉I7 WRlXхUf:f`?LxXe*Cv|>(WbEqH;1 gbUr3-[A1~Vכ(LҶ1[۳]P3GL>$(wZMWF(/骢ԣ $IQxi XE-&\=eSBG.P-)4&'tF +щ~m<q 8~v<=9/0M )K[y(&}𽄐Kb9;C5Za#>.nby/TAѷ֖Ģֵ<}>D׏F{x:Clx9rjW?" Oz 3?#-A'{@6|r+uJv5/iEQCV;E!_8;5:ea(}IR\QW i]ƥ7y\bpaR̞;zDB?"HG@.q 8w #6x~\|o3I#yw(\iME#ǰf U4臒TdusEhqhO7N:د5GFo KlJX.;=r5MPv_&EUrd08^$U2Eo!m\ d r]bvȿ-2jM{RRa_?͂l6{~z 2ؔVI`%@=10W0tQ瘾 |+cʧ rWL汜^C`Y^x*sBR28MV fRj (eRRfgUa^ɸL3,ۉ2^gg#-3~@LlbFIϼ<},I{'xCN,T?IT]w(d5GKv|sD3qUXN<9ԙ o"+w\`@0wE$Ԉ}i[&七R_uH9PޕmBʳ#=7lI MjˋNd03bvNo3-8׈ Mv%='MOyˤޤx#oK3å,}ݷjbnɁ>LoΣ(!&/u:О D `T*zEAU\(SELj*=!z 99gOHƚ)LErM/|/؂p,\D%& fF֏(( ,E'Gihf?Jn(~"EY9x~İ}AɒnUÞ=9߯Y ~]m3gi}Q/.0+Fh~6Y p! -1R=U# ELddxjs7L}J7gdN(^_-}]OW3*pk U=8jک0[͘%0kq…d~/P֩Āz}Z̥q>%@.ؗYͷbL b ե8ݥg"bdJk%!)16w.u(۝3mؒzo)%5$UKT(&+U11O0dWՠq_Fϱs帅CiNwRru~ d0IP!f'+`w"l'פ1| yx7躝M #D 5X1 _v<<@q^CO.0HEP͔`<0G|lf!'8Zq>j_>XĹs0jÁ=8?7ADaʅ 4oh=Avݤ2&1LR8Ē[y{SJAYş\obX(Kݍ`7E\ڷY'Z")'C=}{JV~oT Ic}˭]=.1zpk'z T썊{񞂥L7Y$f\ߴ~a8FF{BQlJgI;-%E"Xx6ZF1JZ6ߏ0d,iF_$#T3"A/d`d9kԦIvd V)|}+!PUẁp f9[bE2T.NP(hZ|- x̘qp67cmB'jOz2tY^= ƇU =LL\X)LiSh-Oܮ>D{x T^qǁ%]"#Bs +:gLR\LHkeY7r>{{?ď5%QZ0Uk9֗ ]m'Oic8 Tzj23 -eaR `*/)VT%*?!T{L(V oJ"kf: f/^;m gՎ[<@UpHnjr7| lK}L=ue(stvP0@i5c鿈=:1GŞ|k#$ GUP-ls `n0zQ} Աt #0[fv|jO Q% lA5Ҽ0\=IF˼ sGȺ2O'w蠍"zwUmTxSޘdîr6{Q,j'J`u& KӄhhO'YS ,Gxsp] ĸ9$)] &oД4gY;#4(b|-:|n=ǴHDް By"6j?EfS;J֋, rkIAIμ]cHJ81߱P^ k/w ;>s=o>s|%L1=v 4'`ʇ[~wlRqlhT9odiyGKndA6:?E+Q۬iC9H͂ xH 󀕽.]s"Ygh_6~ur~17ĺ)z0=-#GoȞjyյʼ6B»Y}e*˸Sp "ˆ$xF&%o!.'1tJo1+M.|&A+jk~ CISa0cm_9?o{63! /NDp}.W$/QlNq\V{6b@\Ab{uBEyRp{AIEt }嶧MV0:ɛ ;e)pu<~eO0h8}B-N(hmUR Ƕ 'ZKn*]4`᮵>oTr\)>+ gɴ]NnXvyq g:װGWDB<~D0AGt oHn2lͨGX2l|bH7n6d ЄZc(mKcGd+) jT)»qGLn(;^w=d,iԪ'CSX Xv#牨H !DžFGEXKgQzB>DIE7Fv'&*F! !$#'Հ(c GU&"g y/Qwz #TJ/ÍZ+mW4WU׮":hapI5MQ &-w 26,H.j;dh7 R7{]B^yn"NFLOPREԚ&Ϛ$H8ݍ/&ГȞ]FS槧s^kΟ6IpMY[se55 pxIh Sd}=JbR J:I:RbZ".n ^Ջ \8Ç"E)$@4{"K{^O|tE!*>8! Dixj"E ^Luޣ c5Q9DTG{ff/|Y(ASjUFLs""`w( z@ʓ;f@ٓMjn G@b%ND Go;\#u2@&[g{@4V*OR}+ޕ\ 5f(# 3˼[_ Û57HD]Q=g\Y ,K@8T^k)f_^zcO@f}JeccoDJfiM [IP:젚, ڌ^ Cz=q @`n8 &^Ɇ!ރ<ľ~bcis= C)J]<;aHMϸZ?M|ܩ}AXibjlؿ$ Afvzrezv9;ǰJ+"db}œ:M`1&P>FcF~/^aR+LXySEs?]Q:W&"\1W]Xf=% @>a`[|2 Œ-Y6wT 8.g6S=o6J+ߕUFJW!xzMmm{s*aB ;uܡZf%w2ƒ*l D[*B+{AY YqlN9EկxRь t"htd1 a]̪7p-dLcrۼaJ{<ƍ tέq6%Oc AiN˯k㫒C1@(k'8 r{&-LR."#'-Cey˥p/XfBqod6G_Y{[Gw!=F2Ct 1RH;bu[2"}qVq6fcD6UQb18XHL]ud*@K7isLO2,&#ɁV *gH-O @gd5v -cyE9q-yR0F+ǾGz2)cqڊ|5^MҌ ,},?i8'] 5kN!+wzx퀠eQr6 ai17ֹ[@3L3d]Iz;t*B 9f [L0˄zi/Xn %@/ѷ4Npb{ h߯`Sڻّ,;|`n5i#ǑG_pP!lY4`dZ!X.Y2ʶ (x^6罀.mtFWDdhYWbyчw㕙1Pvel~,QO2 \"E㚀 [O3foVufur/vޥJ+q/ieBa#)I|j0Rʱ2UZ'%ׄ+]#CrpMrŭ)D pK{J絅& 4C/A'HduQe݁{F[~M)̤`B/Ȗ:S_40k FyL+b'sk?QB5ӅE͚a#nnB mhڢ6@(3NK]B o{nD>0$b7h*Q+n`B%k_?c\ :ptҢ5E)hG)5{=k`%" 8sb@n`TrvD>J!OEA~of 1T |MGK8UD5 E0ocIX[^ro'X6| IH4V{;rC hc9=8U9U( +_pBfFZӺ4W3=b u0!ę.:r'o_ EkMgIchFx;9U'DuXWt}!˚=eNl?"+iCLSL-gzK)ŭszIR<Ƨx\ċ,ZqhKn4* l=|B$$R 9r6c ݫcMCLŶ R$|2h"추wxj-"cbFmgFBĔtk{$uED爾c?e.l}&%zECl{U+)zpBY8{2yzJڍ?9Xcs> /c(&~q {Mv+wݎ% <M&Z!H$ĿZ1~0a~6.RrS('HdiQ[{<Խut4T߂d#zGY6}$,  H$ہ0"_>$,RN}XcԸ}޷W6Z ,!"lrlYUiԀzTz (ge_%uJoKU#sD\ϕTT|fUTv őD]K[Uޛڰ@ !_åD]1ǹO˘':wo ]{gʏugǿ*Jăm:ߔ'o弚6h/%9[ƛv9^oWϮT~AyR5m`11 djK{xUc pZ=cHx}歂[Ka U{`*//|߽\hdR{̗d~԰f2_:|9(KzehgqU>5M*}j;~Biϋ̧{! ^b>k;L%]cȫnoQɕ u@^FکӅ$W ۾rO+(ϱ]Y$嵁DfrCOHܯN[VIhH CE_*[$v`$szz#=ݱ`?*D.ڬR”+R}$D-Y(N^ŰCXcv -]%"πv`hU|z VAtCڒ=71k=q){ogfVbӴW 2Wr,ݷ]%Pؠ{h -[G%Zxs`azniIje iKK8@Ŭ.Q+JqK0y^7cb;$RQƠFeZW rRl{KOq>Ҿ /k4nDb`9D" !*.B lڕ(̰,LΣѹ fV2=jf h 6fSݛDCTqMҙLq{t!,+!uHؕ!tG%9E7 84ԫ#|TקoLRcRø%Ν Bx_F9kD>T.1:QjOWxaZ˶Vȫ=S/_ FsS5OC)k%cKK5t\{BiD0tֱ3,Ĭ[6=XFf 9 {A~X "?JՊXe&t\g~ϒ)&M`e${]&&@9\'-O٨d 2|K}GK 9<:5ŸT! j`d;q0GPJv(X"nw] ܬQl Ua1,"Nce_p,qFcy&˃t%#ƥ =ek]ssd[YfKX0 .`\ i;.T`"fvLɻCUY $'eEauk:}Jx[`y tչfRQ3]-<=Otp~st<(FȰ]!īHx8)KAQKa%$]^Y#u%H0ӯ\(!8귦:&[&Ys" 0Ë?E#π+fco HlG6~ ^b0~ iĒQPX@um\/3f)O t:PNp$m_T[ޡ=Rʰ 4Nwy:$S Eֽ.URAj< 顕m9lvc93`S[oR&OR[ f}p`8$v54YgrB`HM@+ ,\cw _ua  /\sFWxE (54j+ OM@ep v8 ]+č6KKQ׬|xgn:`S,J[1_p!8I?NH4y'Ggi8>轲pHW0֝5%t#857UWam.27.Σe((DωzƪQ`EؗQ7L9&6Lo~?Qޚ',M~;ADY">eL6QQ&ّ9M4R+N mR9zLؾ۝ $}A,XGm1g]IH3DKQ;ms {,4hp"Yh6,ٶ`@yaG?,`J,Gq,Vu P\Zpwtk"Mfߕ?P2u$=Kcۜ)NRoYIym3aL{,Fڳ7, TLM N$(4܌WĮyљ0u[a0z=w!E+f́P$ KKWj?~\#4$t|L`x˅Hሙ* '[3/fzE饒n'Z\)^N&{,W M&X+|Uzw~|*Aѕ/P?IFy ZmRDz ybi^~j{Xl0<',(ޜM8~(;en{Ǿ7DhT$gUse46jr3T2ɦrv|!pZHDͬoyo]· %m /0^~Gh ݦ1E[`ZѧEdmu# ߬{4JM5mcvglņڠh!2OGlįֆI3Hq'=F15qhuV`}zX' 4"\ ;/ ޜV8+5ϡ2GYzbm_8QAtzvл?7uGgˉ_X;eQߺVŖsћ6IT6]Ɠdl&Xlsϖ]R|!Ehk]!.UjfMoC 5`RGlwLdTAOA Dȋ[fe ,I5V F>xug&B@(sbʸP9&]:=Uİ>^P]ͯf/ghgH,c:~xɏ\ZڜjkO-]I+kcH= $ƉXJ1&Ug2g=$Lvaȥʿ7,*Kbj&Cnyu:˹KOw 5~]]uUnGya # 8|OJ[twoL"WqG7@ lȥȇ^i5%R~wxiE\&d@F%-zٕ<Ƚ'E2og4D2byڈd'*gT)0FQ}"|`J( ҙEDUL"[`H-g~F=2>*58on"w{!ȣ` lKnLϏ%{+D/.RhISQڀ#!ٍ=_[&x{’c4Cy74R,(U|Œ@<)-6I!+W 쾗=b޵71c"đ3DO*JxVoXd PW#)ĒA ېL,fжeC#C݁bɧh0 ? g:oKMBy7JKԯi>rhӘ]n66-vARZv#!mt캗ZiKϧl_h^dt R4VawЋ>@ߩwܡ:91D~xF'O#?PmLi‚!jiud0r\[p y^4[R?Ebz7M1H TPQ(^S GL?j]JZm+z7l-]LƪpN?'gMxϕl&_Gr[҉7[zqP :}<3RXLpu8 ;w'L|sc8t!nF!Gw:.Xgpcc-Wςv5=#”?>V$ᾉѥN+ʻKeлa ~c@ }P`_ o*Enlys%!>ży]- 3T ZKWŹ;MR:nL \i^Dg<D k0y |ܚV=dUo>WsɆ?C-B}j/kt7B'U;/Ze < 9n5*$O>wAmwB|(ںˎ3'gz@JPgϻI$C3&<$7w2fh/15R<%% hԬ}2@=?l-9vrMI뭇9,v15;,,2c!A+N7h?~ZDFd藨HiǏH5_?uaZ XXsozԢ&v^u1 uxvt.ӱTd7-MSej9CHc4_H in!W Z MZ nZϯ;|fv gS0K(JʔW(;q9ם”Wb|#UDh" 6z1'(déP|w2Uxe3#4 u4ٓZ55S)A:Yȝi5>d"m~!FUᴷ0'' xbۦ KJ^inf~[QUCGyxpxqkW]Gr$^gT*9%1$(-a75Ο. y^KwɛװǻE R2d8?(F {M-vyΟ AWZYڿ a7]WxE8yuhp1 =*s^Lܽ&3ы4+Q^,jUYn#â`ǚy1@xDC-,, ɶN|#~L\xҪvuRYEeA .B)'N+{zb^K &k|56檆b(]s|[5:T}[(8='Uؤ֕ Y|C{H» BШCڷtM'JazGkuDZjn|+'(Bs:{'óܴ gǔY 0b%AoRN\p]&yAsko'sO3m;y(/? d/e'@Eyv"2_ &Q3 |]'gnbRyR惕I[xfqKiEYb)u7=XOG™]oZQH| b~d&G#AXNj,o: f21Ei+ie=Fo#~e`n/wDdZ7)o`hX>;vm$@߫ 'Pguf<`hg3VyDZ.Nh0!wc/+K1A8j{W*Mp,/l?Ir%Mf2:hWZ|=\1΄Qo,W'RO_~R 0dpp#";qSnjB0BTqWOGE,D;Z*;:1ж' 8=1Eڸ#h_9bܹR(B`SB 2 _73Nx j%SJ_gk;b,v#цa|ԫ'oxQmXi@;q"Wޓ/}'1-@ϏѦA ,^~bbAp1-V5=q*hS"[b"7T,E+81i*$Q<7>Yk $ `ɜnZWbyoɧcҥY::7W>W9Z/.1J*Izs_pq;`qWUO ~di> z7` m.sH8] 8A)lT]_{G<$_)+] '=bDz7GJ10v' RK!6u;L%Wj`[p4 WZعE7k +!b,|} 8?u6-\\Fd[$nӁ)r3rtE<@&nkܿISKQKD$3jogqMy^K"~,TF?a:;l-,g&|HR [#e|!|SPԿ-X.fVhKf *}͓#ޭnBGFTtɆ fٙ=;οz&1:gҀOGr *As^dҗpĞ5"M %ڇphL hvzm6"p:#$Jx?X4W7J8'_Db$fYʋD(J g7{盚ع>DfK۠ KǐVfC"Cu73; P E II9VL%'NVhᮊILjౘ En0RGhX, iTnP+9(BQP'fı&"U yTi۰E-͔3'ԏXwpjͬiP S.pipͅ>.K#@'ԔoHiuR7"ρ`:]6>0P VS tgx&maJ(;=iO\X#L0EkpehrG_tnhL.ONU$iK6u`zg~DHSُp<0!s@ZR몫fwdg~ۖc`pPg(#US% 㣣;!0t$K>8sK'|7ڨ~\ (0RU HohXdε{6\qW#mR*%#@H^jVMNHrlF,I_kp,OvA%LN| }ji5`-~ cHhoK]L*1/2 gBSl^J{,)gZ݀McsBA))e-;!5x iq|$M"'gф$6ktw(2vߒGΛ.' j 1!׀_'-B>S/*^l;g5X@1٢K ~^NxҺCJj,s?8tgp3tS WhQRdX M[nn ͋ƉW6K?sp;Y Z,"&r?$H: -db39V}>d ZX]r7%\"4W-I0 э?i-GaC X"\iX"xB<z 0o+Ml7p@39q$-adPs}zrEqIm,O*p* P lzGa&ܢkQ`ҖrQ@nEUR-*۷ z:I0jxT~ 1hOv:,Dwp\o,s˱E.R5w* #v;;lL"|z=uglF>Ӏ'E*Z(rZ Mⷕ| &ӭN,Hr"}W[ЅOXFq쫀{Yi_ց1bUMe)y_0@~ok[%8bF!r#8#dtP re'X*HAVP圯[vb 6!y6kh5_*uEDPxrQh,0SH@d&W t_)0p6gtWanA\}Z^=3\yEz!(4mljt~Ɛ8{C9JWq1!WzSa0uL@츼8QJh̲g"I Yx4?GS@/)) ؇=JĝE^IJaPc42EGu84 [ !%I+GZM{DžK4bK@%BOߔE=[wzO,.Ӭa]'&ܚ1y:γUDK <VZ=柼\wK5V\%YCߥPg>9[|Ț&6~{wb(qhwC#9I&G9FveЛ?cche{vS/dpCR4%|SVC1(ib]a[ـ t%oQF>74;A\6Sxj..͔sP k/ :Cc:nmAp#ib\C(P40kqsXEs9H"UËjcEпtWl;(ƐǬƕxoЩa*K7=*44Or@9~+UəD GeSatlfu 1EV*ҫO#ԗz_O~(Y0vYX\{~;&ٔPTsq+kDdt%c*~,@0{4ɟKoBekֿ4_:u#ƂTYSRVos'@Tc +Sa1pt-_鹈؞/`}?I_;CQaksڲy";^WP&/MI1(ة2D{MqX ًaewWγ#Ʀ{G>H%̊KƬPB;ĻBK4 +u`{dz5ez ,ELV3S%Y3!̄[P Ip0WڜZƤN~w-R}`ȓ?h4%I>ck3D:# ˡߴ\^ҙOpzE1dD,aKR~:_ՙ%"0^0akt#tu֓0&?nN8ϩa3^p踭h6rW6/yBo)ilͦ' !5s)E._qދNbD6ԌvȍxVY;d~msБDɬ*&$7>)טAm KES-"o #MP!50&t]w-x *F Ez HOW!qGzTF9ç{|?0+{%{~&,JtF׍<%~Ur;q{# w_KTH-QA9*^|P:v4yH+Ko5w&8ў{L?LPvA(| I5:˻_AVCӓ.7o9 2@ԃFlj?YwiŦ'ɮ{@ȗ{ y~tY/4<.rYa Qᕘ4 07B"d9ˣ]U2;tȁbnpzcPScL2[EsV(h_`j {&4Dg0-#l>uS%!>q=``iQEOsJQ"rm2l 0lfҰS& TCUV[tFLzhqq O7B $LX&!N{E*u#V%;8Z_2qafzJNX |9ԡК(>ID}qv]QjX7$nfTHkހ2܆E0K2϶h()mjL2.Z.z<]ۃsv;8!7IN?E~6#ɭWH\tLoۂl I;{ Tz؅J:P96dj1Q YfUùr:dYH,m2Oxc>D5Nq]8*YVa +.&3{cHiP~s~3۾e*}[AjtbDtXXsHD$T-FIJ*HcP|=^sy…L0 Gtww74 ڏ29N "qc8A`NT:ny!u[=VU->8.v WkM@k`%Hj?C7O'AJ㶗㘵)5Vh5kI 2l[PЪT0< -`H@m+.㊛1/ᑏ<*s^^p!;D S{F( ~\ƎC|A W&c̛D!yZZhCoCpIP~/FN%Z/fb7|6PxBꆫ,=Uc؃ܷih\@J.m[.Fg2mGH#:MUkn+A[ Xst &v#kFe(_߾>v[[70l㷷X9CwDŃ҃h[a!y01ח{wCNܩoz瑐RP.,}GRBx$ $V](QAi8ՒBe1L1kxXamM$qUXCPC<1Ha_R.9@ rvOY If&rCRkSMD%KEKݻ7*L[4ݕD։tFP2LP9RWg~kW##YI3WSk'OLpa6{ClJΠ)mv&aDEeV܌hK@nT{ˆhyVՒ gI@Nݫ}ir%p,5Za5dM;#ka(H>/tiYr,,Lmk{:O`()Uk413 M>>0>@y78j5Dj{*SEb+/O֪/KU`qEQN~ҲSRKQhQYK;kZCE J"ּ5e±e%eqZnQmXGcWQ\b믁@Klk\8&+}/{xt_8J>}`BNw.7~RԥT-9!CʲJ2 *T"uҌ`ouD"}k~g8"D;s[#eJA'>zH/I9+:S\ur!pUE7YFp3BA$tgxݾ"(\lC b@SJB\+rO,wln+k_)E N!nit8nk̟>49ˋűnkyM_LNGcKWb oj()` 7'?pq4Iu5$Y]*Q*(vK~J"4|\Aw3% {#Um1:Ҟx4djovji.Nѹ=zDNoɖׂC;_(Ǧ'ҼKPn?݌NxL94W ?g7I8}&0 C(W)ʙSA"!y8E4u3AG^twC5ߢ/-EeSGe Q^'q\7*!F✪LlJm9S"}kT܉=YMR}nKY# *&$sʶ@eKo׆a 3 U;K SBa5]V@Ǩ Ǭe ZMq[V]MSP_%vQde)kc_f.-z^kHnh/z9fKE;VCEZ]"rT얍>GO/C:kC)n'O3\8Y-›$ٶ4Uo<2"HAj_I}ϦNe_Gs" G3eW9 JrˬLNl,=  sՃ_ µYO]?[fz,R&E ka /qp#J82;޵ϔz?@zo [j\ }#^n0{/OQu~3WM$cWj*2mW=ӌWcKT_d[ FORu0a6Fam^mΆʇ~:jYXI^$eP?R5IT`AkaRA+^-r,iGABI"P՜&CߏvCsaD ̄ovYS1E7qT +XKI : ĐIIƤqQbJ3(JbW**#5&`a0RhRHiRhtLE8P|D(Ozmz;(7ea3q4IIy)W{G s>R[belՑu/ȃJ6OА4S-4kc',ذj(nzilۇ}I+rƶ}R"?ܨY!ImCTih?Iu;Zv ]CUST@ɚYYG&e(V}u3YkCKj"6IT:A[Fa܎j4\NxhQT_rB{w7|~;r1PS-h-5?C@K{%wi<1|kƢztPrqȔ<Io\=q0ȀDhz Uqa~aty $A9>ƺfvǀ vUCXt0'aN= KZD^V0HOgQl,6h.I!kΙ+Ԏ l輻7ĩR ,zO술b9$*TddIO,}Λǚ n`bae_.w`~f~jNx{2S*⭵Ȍ 6.Ĵ-$}yGѬ}bAHF5]Y$1otkV:mQ{n!U녲8nO"IBq(@B"?GTKNtTgǨ@udc3gY &%MgMof+@)&?]䕂f((䁜s#Ba&gTA()InfA8zZ: ܕO'X>f)A QVp<4=I+T*Mͯ!%;` cp)qi.M9?Gw׶8Zۼ¼1JpT|hv9o[HaмS2{-TDNt" Ax30َ+^KTC(mIw.wDX|{+?!vu (ɞDQU9:c{be3]/xX;T"'!dUTge7.)tivRIL1+2[O/?aC 5)jv FiXw􏱮G[n?GP^Cage 9(f&): _M{ "$h#O#/_ *Zدkx`#b3qRj9u!/l?/dBq ^R8B79 3,J azQ{phܽC}B4*p՜ vֱ 6jZsL1V[ݵW':_?"0`=x/ AuwfT*tZ/' )Jz+^#Y {Q%GC"Y8p1>DZ=} !*j  6N0h48={4ʑM^qN'(r4GCP-{KߊfRuKi1V:W0uE nG"etbLʬ !1{kA9\x.Ȧ5S{ g7q&ut fMoy_|skPhs2% Y pU865b6o)!;N@ CcAeo2qX"+ 5n紼tFC!g[,U\yuop5Kj@ `nt_}}vk X"$ q˺1 a=l$=q%h30n!qxg?ym9 e~2mffY}$>:U[<W^I?i"; :kh \cmQ^Ҍp4&/OGR6Uz؛[MLS=kryQxefv p.4`+4DW{ `8^ƟS+BU8Kjgڡ$NJcI%Kg]YC,FV'6b  *numT4Ԥ-0MGVgsɜ;Tu7eF6 \]+/ zא Fg~ά HSSSjֶ]Od^$:C>KHG7 ьZ륝x?4t6pʓ1{(amO>4Wv(=~j‹=곑P!eS@}[EE$tJM.ʹbPR9yTF5[v 9la]5ϒTq[ҒבDpWk U 742 =L,a܄gm>hiP$^Ӿ!vh húQ I6bu0SV}fg4sqF鸐d{(0@]648I_.lsJ Ie؉glm4z@k'U!󶿻 3 f 99q~"c` GF߱Ȗ=ZANO+ٰF< eG9HK+{k+ O4YKe:J9sLzS`Sؖ{纨B$[G492漚zK8 rcS Aj8z7l?c ^޳LM7iqEs -L\ťu6CH'_M98ѝFbܾuk(ha[dh]u[Aa{F,'wyk ɉ )'YptohE~;t#4@r54򠎆Ĭҹv}tJ0WMzz,1^zG`ɖӋBvU,+t'O쿾Y ca Ih%PA)t:lm/P=vC_ʜ k|yMoj :´Jp½˳ o3Ĭ PVwi^y/a _=[XANHx/>"w t1e:GGiA)`FX>2nv"zI7QAElxc+0]IaM uubrdӥ.R9 kV;wd l]tNBY66r%j6ڰ] 7?D \[L,LۊZAq")H7Z USc&clYv<`AZ4,ZZLNY:X9>C֍ybf\xfnYMhA"}r/ +n0FIT= Oq mʅUï4-cI&Z&xy\wvc@n4x ކ2f&fs V3XR-.*4jYZllԸ#J ~0EwWQOt㯑y UR-s\1g7QLxK|vCK:/k\_E-hV~]Ȍ罨L_ŋ3pQQoǵI;?9|1>YacXx/i*BȾW P l\҆Ak(^.;d|MK=ey{4 xe',L )v¼j\[[N8XXOkb_)8ac+BED2ܲhz9`jO䛄%Жwo}UzAEUWBQr%vTh#_9XOlpS={u;:k[0  ?[)@ק#P~++q7"ԛ cX ixAl D11pJZ^< (*LI'if%ot@;ۮdIRfЎdLYr%=aV#WY'X(H\«vEjنl}aɔBF)o17fƵ4g+u P!!Ƒ2#bQ 0.qbРv$±rJ]9Kup&fcJ42P(!(ջ' ^mWfq!!?JPo1ϭJorlwF[\PvQFU$| A:6x )yaMẚ)&yHև gEJWc3UOB -I7lyhWG1L4vl=٢H>2GO٤Wg .=x I߄G<+eb/eH֩K/譊"Vh?[CrUȔR6#)B]OY{xWdg0m.G" Ri+9s^ l2D+!viXeбK-hnǴլN %x%UMzњ]=>C9ߢb'p4`!NnZ\ Fz+oe ~W5" "5 zҬSu\4_**iSM~*x^6wfJh}9Gg6XӪjo(ag:dd #֬eCdž"Lj1skՍװ*ﮯ|0}օv?YacC/q_Ȫ,, HFzG~Un}g2Ovg-^ǼC{|=mtdB1QU6LE~,{kbtep G&UR._;Qi0d)Є^P2e,*z +E '_s5BRE4K42yOi/gzc;,~1фR@֨EH݀ gs+S6].u޽U DKz7w)kkUq9#}Do{ɵUzLN]v4z~r1'~;i=?ZӫRNk4,@wJap} 6h8'4#>5}*7G5wVjmzE)B߀%aCIQ]N =WO%<iTa#ɣ ±W3^WCEtY*{J*ìM`On,a0+P1|B'Z7plwKTb+!7L-6ք`Mʇ}f{ʛ6f"#_'5hTiu#cW w`|cq/b;~b\;AK믛S?tr32 N$D~YTeϪDZϗ[;]n Ħ@*Ky.'gxzQ7q^w5禼wiL@ho.U NƨB~|WEi?HB%dSs dף~Z_8;}&^r &s-j#-(5Ouwg $$u9g+!sZ6~(/'+!&Nu&#);1u 1^fD!?b93:6N]lEJo+ @(7~Т+t} J6s\Ͷud-Y"|&\q(w}MpGd׋0 PPԛdt<ȞV9ء/F03bm\ya6jsVQ:kt!*Ӣ%3ߟ=(k5@o[9Q͛MXJ3YJ lL࠹ºhyAllğnN9 l!mkȏwĊf3*vk[tնgSe#]ŋIE/W~Vu !Ş n;}iRsU// 45Ngcr@',\;G-) bb Sԫr}TW?wUdmTe y00L}G<^Z$=LSgMfcJPԀb.α_v};лI)`?DٺQ$izMfvo$xʐJi,YPamg ="@!;|:p3MQ_p3_Fh<8lOb2p85IfwA##X%IU ,{v^hqߟ:ոueIEKS  rMĆt%#$ E$5V^lET^}#ʒ/xj8$mLTW tJtVvoyGw4,Ӿ]8LUgB!΢He53ȈLpώ]Et傆HUg,"ZLa1a^hnRK_D\1YƉ/TӴHmmȩACFeT_3.T@G]0ƟmPbeAE"xB.]+ҸU }0#:j5 [|EoJU ^N7`ql?l$㇔: AuLz78$r狛%!UC&6׾5)4RjZKpL{#%4χ5e/}sfvΪObbS(:r:490z/XWz!y|O@AsAUTYsMjg&GO۔UQ6!`p`CfE%`}o̷Gx'4=-1 14ã%Ib변WLPnOûbեKKجZYŋQ7^hj妶K`,8UVQeuUVm 1m]R cu8/fgiܤUkJƮt5x E<2]s!3S9$=5f_&^kw:P.|XLfǬ# ON@6FW?a][I1Qv/RVßR}iP:B٦W $MHuT蛞g$,ʕ|*ݍ^ `}@ǰW-&X2qfH].D}+8E\l!ggb=SP\:vo#m˙Q|{sT[#5йN_NacH0+&0{NR`!{PV\,L$2+a!L! :D7 Pskٵ{* OJDTll{LL :s ʿR`OeŘ[D]׬N1^}2@ԙ yl+5p;)eS^rRCMŘ'!>=}_tcj5Ab}9EX*xwL2x=F3]|riP$~$VPU FKx6"R,dkD]m&@J6av} RM < M5X?/@\xDvtBm37syd 6חfRdk'1!4$R$Q`3NlepEuE'C~+rXIN&߸sNJIb5OVʇ*[vOY'ohk5#/du(BdJQWaS\k\xM!,ȃ\CERጶ5#(cx65dfpũdoHYk=T_E ˢ|"> ˙qGpӷu2jb톍*ѸqoFΑ8I -IB,svKAim?_415It0+WͰI#I,כmy] aI/䆌V\8Tβ#K<~4&-ˣ8a֛8|4QB*w G.H<5sF%!@\'Mюn;q90bh˥]j'Q)O?F Gљm?,uRJ>+|e}z r=a{Pu4p(VFiC$wBy-+xᨹ90Pz%L_[|šPbWLJw F2Zm&D8Vs矝:*₸y)H,U&w0ƬZdDEV?f/nItH}b3dvӰR K<Ԋ܆fZ{H|AƫYOaGLR.Ssg|Sf|L/ݘn.I擷I5NsO݌~ $2 (fai"Yឋ"P+Zto"8Sljɓ)Б3Z mZو~lysB԰.|zT## @cw{-!NMsNWŘ֌Dp ͗.XNj:<h*daJ놉~x:QCQ S?%'W<]I-eĽ5m)GW>njΪI(vtUQj7kE0kQGmk]e,@<`B/vɀR)y{0Qw0H)Yo'd8+x/u- @O>Hj76w ߏ;K'qYìȐLRĺЫ\ᰑg'1ːn`jKH9e k(L}DaQj'mqDqr oziθ_k*`܃ *8/S9ipx{C9issj* LdMBnGUxۣ?¨Aǀ^9xe7),XmJ^H CTCFo =bck_+$\ErD<H,St½mĖ5Js"O(A1d_"50֘w-Ė}A_)Мdru_o ?9KT4 <{0f*2˅ʒNe~}IPy$pA30b ez_Fݕ7*Ko8S/X"&ͼ< &O% SP7)oR+ek%5,+fw*`dXYt5*HC5 ̔Q?{m,Dg9θPXFp5C9x^?=o^ X쥍?7Z0!qXR[2YxSdj03nƙ?ţl9=&ޟ_,!& 3+{҃ȱ o6gYF?Z/ w+$I|:"Jh٠E qƏ<I $ c&)cBO=RT^4Vk݄צV3Ox*^XMɺL<^zbkyۍS>'cQXE2R9Y)cV@Ҷ?#=z.=Y=f~m]JȻLj%(/[TDD[d48yJ d_j>Al mU}9'(T|YBInqfd*Z&ʺ Q3>>d3F/(uv\rAK=ױ`9$ v]1{yx=du ɂ16+u >ZIHj&B>1zh<١^Wcjgv >dUQ@)zQL? .+ϱs$ƨ}{6#p^KRw߸u [%n𡚮eBձVoU:q8qJvLvP \@/ڋýUeF~qBV0uK+Hw} 6.q h@zӮC$ZW*;))vcP^\L}GRzv}>Ț/ܑq1Jl;'Ύh?ֈMFdPh?GՒyhQ'cJ0~!~㺓F9wRBLW?o1D ;u"qk&L)0Q#,29>.~e!%ACKJJqS o'HHt#0.>9-6?Sc+{<&}g\ ˎߊfr&PjG X WLHԟ<Z,T _Rcn{$o_c*KN(qO1f{vG ZzZ,U6$B7v3 Ey]!TQ.,DN,NB#!q>9ń}C#|ЊsraIl5AìNU%A'`P#9hޗ9^)HAv -qN[)*9@-zJ5mԺAzL0'6tر@/jzj,(dk7+<{` 7Q OYb$&If \2qgZ)yrLa?qc-QHz ߚ: P^8{ucWH+y?cmi gi윋=Zޠks8]dG€ o(5ܲVx2[j2S*>H7'@YG }$0(qFl]Bh<`n\2zp섊%j֐{")`p!l:7U o 5D@K IݩCN(h`.O bǦZEeT.#|ƭ`T  ?"[-@ճB~pQ2 s6iNTrx~U'9MYݱ[f GesaKZn`D&T&RڟUH&N1!C벙8btC(#õt#!Z׬ WthӁ`"$N$;@s7XZixWը*d uxذj"̽^_/^g7[ԇ1v$/ /@(B\qgN'_RM* .$%=Yy&eJAwX$>gc+΁J>D"7Vc}3#-dy"͝_ud9\ +!x<=4#f(^fo36$ ̤S\!C\n>O7`K9'=]XFGO^x5lW^0vO yp&2T.ZzAgEqè&zS.fGLgA*X>qA~ƴDGJ5na{v Ip㻀 ̏vvߋ;z0?HU2| B=a(oQ8ɗ,_Q@FH%/rg"Au5& 'VoAvŵm*Ժ4mv!}JK]l}ѩ\Q.C1Ci%؋g5cy@zfdot> sy! j"[( 鞰|=cBt|;ikv6FsͭnQ"otZ-HdXexݱ ׊ "л.gc/;ZIi2G֓ښ;gu%2 ravA`)xk?6Nk  ^b(ҥ^3vF&(DpYd{?G!|b.~a7?/|OyfU5]('}5#KEe[ z.Z'=ףtHS8#hEK> 8hM:Ȓ`Ԙg]aP,ȨRlvM~(B ¹ w5fau:ZZwI$z^!W`u{M6#7F{N 3T;Ŀ/jK,Y҈C.4 e=#Pf0"!Ё fzJΌkR85 . b"CQIY ÆQUICTA 0"WK s֤b+u&Ͳ oBH3ˮ8+'irR}ń2^i{ yjT&sfN^}f.]% MCro窈9{{z$ч+i! %eGM$ͫwbNޒ1>%˺n21~րYV!`9+Gܠ+x{2-mc&mf$aόH}D+V8+7 8LӦ4*ZjHoµ Z~O;ٛ$Ɔֶ)-睩YcrbG$% |9&NqRSZ%QaùH-$e5(<uTU XVH_n'f@ZKֱ~v  L>jqy`R#Iyͼ9[O\v#5z{uLl+S:1P;Q+?8XI^Db7ȹ.:#3k26m³fz(mW.yRHN?'6ys}Sp&T&N*9ۓc+0Ca=1{j]fI)@7ε0]:tq:x_^>gO 4m׾<{c*H /_sw2]4kaЇq~nA^`1ibZd ˂*9wM:>a)d; +7"Lx4V=($2#"A3h.jE$kfeM/ gIƅm,b- 2RLϮ8ꍻW*~ǡ|Q$UunIkف i$KΡ=y,Y13gӡ51m"@/2 is̜ܷ'' rOGĎt c✰@eI ] %wɆ5ec֔$T_6Dy@tV˯X7ظkC:ʵ 9cB^3y*'!q+qU/)ҽ,_/~PynpEiH{ P?8B|ybٶ' `WEbY 6zF #4_l{WL$ 5|/oAǏ58niD,e"#˴8(Z/9h(UWD'`Fype7 `5lJOGꥲ?6Ꮇ3%zlL%%/n/"t]&,A,PpD^l;$h'a!݉IKV0α03f杵PC<6ߠ8DGN${ۉ [c _葥 COE.C ʰqqwj]IL cNPug niՌ|lNk!jF\!<#7E-@ X2 !fӴL|W2Bt1#~gcQ_{ik0.J BWͶDP3BvF}})bd™jk_,5#|[cM< OQ%5϶VM?X^j#\d!c6I!~!P3jsIg +DX1:, 8.sYlєEuRTe^<"Ilsc8#Uׄ6&_{H\Bi֦x< 5x?fMO]hT,+EMlE#_ )c EόTb:,yN gu^Mڬ-ʻݘmrbb 8H|2PNlN@\ !ONXrȾJBQ| dGWϳ4u ^>&3mH:{(aVw0킃~ʾ0}3vy -+D"3Z0&J%$n0Ft0 9FVh7:IwLæ5UyR=C2m%Rl`!8mPBN㒚\!!oW뤕9~0I^!Ӏ $r3[^?F'(v #:\H|j@92=XJ#lÔR) N y@>0Gbk,ܭxdCR q2 yB&CnWٟu{Ԍ dFG.=Zɋr r -g&]wo'= .^^Iy:kF>]c%Tn֔YBQs-I 2p={x6FI∕]/wtGeR0P뀊oMt< |H[C/f u!Gx6#yiOLpxir" .Ӝ" ;A%ٛBG-nr_u}dέXz$2I[Hۍ WPsw'&$ϻqh8§[m ScY]q} wotmv/LTLSIip9M aPqP9΢1}+A5ͥ[W e3W$"{L)vHN!fpV8@ꙥ_J: Y5kta'KG8ܐƬ( `䡹̖߫#%Jņ],Faх=9Q)tux[?( Ye=~G*q<82Ux4u?Wl,; P`4+Pf:9Y \}ƌ˖Bߐ\Ԇ{t 9ؓN0'Ph"È% I z[DYܥgM.zM ae!V!CvuW4Om.+/>HweE!bS`@ssH#J6g~-zZJc¥>)sZY%Kunr%d-0Aq#u{Qdr؞{DnS %ϛ4yK= dGZq \&Pީy _pk355'^[s:ȅ[R^j=­@T%"}Dhl \g-o|b R5QYѻEf_mA@cVTz(I. es3Nxsqn%lGs?rS'kp8\?*7NV}jm>$.rv@|5:|PNvNҐkbobQZ' J*30L5j E9Cʱ S̰v,Ъle/pJgCr1z燓2& BkV x;\=JEVf#|RKM8A< Dl01MN{z1A!ٴ{i׸ ʔ,%G̕!OTh >bb /_}AJ Oie (D3i=&dl;p)r6mVTSBq-*fe T8hV-_gႥoeKr3;y(\ǃh\KPGv>YW8I4Z6j{+v%'Rj(z񍺘Q66Z|rsGI?`Pz6~sV(mN< X9H% 8RЬ:~hyM͈TsCgPe¯h{RFNݭiH.Koأg? 7L3Fe1q/ L%B9.RFAuM2<4 wV0#B [< ]NQ:e[m0p,"M%ͷL ~}y*VNibkij͒-ju $Ŏ +T]bxD *VK&c9W;rMɍʟp8k[ȭ*]Y.>U{kluT/4nX&. gx"hrEJptnb# )THVTۤIr7*!YED!*&Hȍsv2+muæE RMI|&ЭjX*unV(cD͍~$ ףp4nMscGtU998(/\2}=jFbD޲EX24OR2dIyLgG篬*З V'csye-πeޒ[n O5SzzIٖP $k::5|۷/XOL/qqYf5N ?%t>ouC(62i &=y~|_8NqAQ?PQxA@lj6h(d4|˃WW ԯf\BӰA"4~-g-#GX\zAZ5zW$1c[ f,VvF{3J7')XJ`WRP4AK-༖#^&\UILaSn 6(d=#(J|q?xDdcr" {!>}(ḌgMpO&= )S;F[x"vu[ /+%,"Zcj.zz :jQ0+(Nx걦%MCpE&mgɺ!$nӧ1 vɷ O5^xDr!wLJ/˧ѡ"x&.[up5"[ F眝zTj+5v[W+ ]2CBCXpjIdj,no[= AhOPSJKW?/ ͑:gրPI)/yVX~-cw؉=Z$ƹO5%%oN.nLyp%aC\NOpW"󥽝yﴄTg+̯_!+t>'vM2c* f?V4#3g\ $ I(ucT@ED}`TP0Skrߝz[@V*8 *jgеU3;)9/PaLPKE_Ւ掑fj7?0CCrr:[b/{Z# k !<^q~ A8oGᄒcŽZp5fzY˫Rk1CxgOw)Rn~yQ !teŻwZ>t/"3#VX0/&v~J|^3A 0R5k(6 "-)qe;Miw>::˟ @7,ޣ91#GyAI_fN]= ˀ:hbR`V* M P6G1vAix|yk^_Ej GSgÇJ!#{; `4gm{)-VZ &U2QN۰|YmCJ*h+Qp#Dr2*QB0)@Y*O1 Mj[4Cggds4sGc%ۏPT"  ).ߞ&nyK.^do1#R@ jIeZ%xȿCeew:.fPvx=f&"(ɦ^]]̻^||BM2E ]ږL ]YReDžn)ۡ:*(rEV XR?0,fTp؞Y|t$*d{ >'8h/ {_קWG_˷&/܆sRc{9\Nߌs7W[`al(|y #]S%6V$t-% O/R( 0'p P+b,p |\twESD[Q n~хf:9t`_Gn֥q20<1I1DTNQB:ȵ\eE[,ں jrͰaH>f ikzC@ZqB$MC1P/]'e,)Δe[fU!zDsaEX`3pS4a?xDt WOqhY8k,[;r%PitOJBl.qɰS/2Y3&y푩?q!μE^X??{Ů|.VRY/mXqoƩrzi /zү*Y jjCV?Q1CBF5(H}[bsWXdb??\΢q0SG&F=-sΜ"X% z&Sя4֜+u > {k[- W%DENSL7Z%<"LX"^}, svJ3(?i%!>)W9q4 yؑM( >b5%YtY5ʣIuMsXvJsO:80Mbl@M63CbEj%%0>t7q}yۉ*$Q]Hpz?uDA\ ړʛ+ `TsfaOjN UC8xtӎ0BEw]Hsh*ճ_x~y#; 6m"CӾdo栛iq(Һ{cMO^5FCQd]E5" ƐO)=*KY#31]@q@,!?D#/-'BVNEZvU(ЃcbBRӋoHž2!TɄ9[K mwvUR94_)=jxP ?0Ugt;p'>Y+<1{9cɉo5)mm.D0Wk{ʳ@ 3滜$-%fyb%%E~_oco"F@hm W;#jYR?g!hNKToHf AID5fZZK ldz'RH헒?E+Ι:|= F%h* ?]8b̊jUQL?X7jڞإ -W/ K,9vUu۴0C-lchڻ՛r٦ !9C_n|w *BŪG08a|^T<R$F5(̼ EΤ>1$3=J + ?GǻwxOkv;p \EFb`=K)کEN]gBxl'נ'Y=_\5=Vi8ڡz2t! "h5ΆXt-k$ۺ.~\FfOtݜȕtYD ^C Ǘ[Kށ/̳#ri+VR$'{tJܺ:ZhqLqp2d :XH:xwcc֫蟇ve?'TŎ_2QyF^{-4/ tTOSXծK(+#t!{u-r$Dπ2ER2>$ OA\R]qM0rκSc”9_畻?ebFjE_WrjiRnp|/bRO{`š_ܳ2YNjpfH'~/8< ;Xk^.<94?t laCw*{a "³P#)CEN+Vpï2lT`6R7unȵ.cm QeP"H7%WB[ խmM`>;MSyӰ Yӓ1pV.R.}/+#5|:#eJQ#l%d!ҲGh;KDyrؗo89AO هq,ؐjM+b߭fDl PNU@z G!Ru^֭ɯS-A '2N 9aO7 =|+@7tbr &y4W(E~$cR@"%<5ʑJ\!+p?@Sa97Tp`Srȸ\yr;K0= 'VEytڟ7˜Fxu?=(E?E]JHfXnf"pg)EzD${'QMR׸]RE%-7_9 !({tWN */+uֺҜI/@qs|ٱv9|1P\ e_,fP|GKH~UN 돹uG OO *Dq80A栴>_[˅D; 3j-|=keFMYEFahO?6d]Q*`>Pvݪ~^D;6 {<8#ҟgѠCcZ/ c߼DK!Հ3+dwh<;ý:Jy}MrrEq~u~ؽ 38,ߎ [ؒNZYtWm/㋅@jZNk:qƴ -2g`=FەtAu8@:gcLh#w7"/k?qzT\H!ԫ䧫0o# Dn}qPI";TOV| _dqHَzi z ɪXogb1L4j+?%Uآ" RɴβOq gyh8b}@*TZ?M=ucT;Gy_I5-N`9/y;-(wrG{0t3d_[4]Q~X!)"4[onaapF+b%a353fQYN5:0u>͇ŲФ.^$E-ߥ}ج1c*ňsy,ֽ^F8w&wMnA_xR:rcxo]Dw+4(@>GC4Y †װ . &Y.I;@!R$ ɹ|CcQ{uP)c|Cp?X֋HH:2Ucz^?,ISv%@8 ;CkqWIvz_@"э@qMvu,9.S#[ 1,`hn\g4jHLUg< \XzSkK}n#S}]OiDXV  ;%YpF2i?_K 2fajAa VRV{_OsoD`MN:zANa%76T;]X&I]O!B)Ls>a:HH6^1*_PXvhȎ` " j:Z>$ S^E̓\rW/h2c$ȤfG;}S.{!tDXAvQF{H]k&tO 6L$ޚ0}<Ӌ=%H 1R=)|3RuCr ~/'%YFgb5Ue:MP`W?gvHRQ/bL o+'GfW+)k|dFV $-B|/Ic(%S4we7k(vZ7NaqaNU: 4i*λS3Fd jr {]@7\cCW Q1a~u| c9[*gt qӬ ߺW,odc؆D&2b睴îPxp*Rǰ:=j0m3y%ķGϮnF'Ҷ I癚2iswM0v~K }?DiǂpliFO\.E0N,! #d>o}" 2YX6ti&7IaA%;ٸ*:lod~S-ڕ@8a Bw{vJ5X*qVTilm]%B^Zĉ$ vݞy~T|%cag ji32]MEBuvny}|ɨMT-9qJ>`YPMg@>I6$i+ ի`h3${//"loǫxмpTO!,6OJ<ųσ82>I5Gj| Fz f27r&>B(]׌:p ś+5C3y/K"N Ⱦ^aVN H!uT5&J&:Xl/{pӮObP v6|TRl@\_K9 ]zyU띋U#ˌGQF gк\(ܷSg$h<3oh= jqN#D#biLju#5Gzg*j:l\,az߷}TsIX9a٩!F,( G{认WA.2|y4'ꎣpJfVXm4㑌?{Gql=ym(ơ<PVbb)2ZWG@`Z A ;`j`.nԟEW$HS>uy] Ytp{y`r[7&`f"A5^AV}HWHMpdpz{%tt7d0 Z=5uO|cф۶kM~lS di![1F@STu`敟@5iB^k| #~6 XHcH~0||#TPHȦT#-EQb ?Gr0[ V&L[֒_7%EzΨ3*Kі'yiֵ9w]"MrD/z!'`5]Hx~5,e{R[?I !g:﵂jESΉЄ7BPwzŌl,{J y̞CrJq8hY`rswZ`V"dV#1 (p#^UVdw==//m!#le<|\j=>:'$h7bإCsm[;w*T;m![="N7SMө[ Xgqj}Y9ʡE5eEodnHI-K>{-)X`RIq*b5Ұ+ s=^Leb#UxtiHf_34Wq&HZaf<Y2qt߃ꅀbSws8# 3#Nd8ˆ+`DS=eVH:ު&n D| gliñ0 VxԷzR A9@Xz0)ߪO-)@~s$A[ pkr&>%>D+.aB44,< d,XT/!O9Gs@)J/yue])yכB}s9 !k`%_Pd(. D?rm .P@63+h.YHD2g={&\hş !0Qv(mF3p/Fe eo䙘< W8L,CZhi|Y*L#WŖ8vqUW7Pz?cĤZ0-nko_vyOECׇ(Dg8Q+_.ẖfptMliN#u>mr_7A~UBϋwܟ;1`YBU!*sNc~W! w 4ZwI8~r|uC>kYw d)ChU"YZn@|\%3c_;5 4 s 9{uCX Iz† Y;zgtoTυ0J+*7)%gq-6$ 9-DZ; a]u סWNZ{g 2ƒ1RۭW%W+Ocߤhڮi}mC%mOQEڊ|3[?IUvɄ "iT`FcH1?/r&PPIt (Ez7 uu6_+f؊ag=aBݟ/Kp22}i׏rL| nuƃ6UUCRYAsP(X&+=oTn[lN܆cx6'3) }&2ztJ ê\#sqB]JNMn2b{P*V3Q-7ԥRb{|ȋZE8W3~:?'qaXMWaM Yƨz8Z87QT1I_ܗx~Hj4OW6(Xu9gux`/np[ |0x|gqZl#)9 _!4 #[j"d2mQ#m+7`b6\vڮeZs*ACz:O}FIgnXU9 sJȑ G&P4m?=&.7a=2V7 ' vzwą|j6=VRWJ&[,DND#գVLzkmyە)VIō-DzL5Y{{kB8v}DBbalU(Me^*u N_t)MTGOH|6 =\vSU,j׸z#ÉsQȟ3Aʴv*;M}&JqD3"A1Xe'N+0- o7ο0(l PC{ՒT#4~FFTVɿQs߻q0R%!@+¨CFD16߉|s[H713 e ߡvu:NFa * xʟqhew. Df睩`{_ |4u6̢I⩋%ࣧvy(гs %mB"d]rk^{^_ȃNcvtͻ@.pg[ WHa;^b/ JpmV֞?=2tZ}@Q:&EA'"˜L v.o|2+m0'(4Udi8 j2g*fz ãO,2Fx16L A/C ӣLpzFj{{VUm;PG4W3>=>eO?Qa-鞮6Mx o[z4"0_?$KjS^ ZfgT2e !l(E!ERsDQ;Ō7'˳6-$ለ$=xAUݶAFG>sǵH~24~"[ݨڒ'8ceFQxq^4pHbe966!RJEQ[:A=8ApI')^XFFtڠki!iV u.Z(y%XR{ ^١)UJx>Yg ׽6 SYa#ǥjL 2ⵏcH~ )ˇ$ @>tUĜc׻gKٔY(BY^jс j]a~3D轆Ļ^8_8@9pк'z}xdqLq3f&ϱʷZDiOlX)^zg!2׃؜eol\Lv %ӎ BHY؛w0M85Kzv4y͹r;"as(?eӳ%|5 Oi= W)\9¨ߗ+c _g{ͻ]"9 awEv&K|?!(Gq bZAP'*]6R$YFߎy'v .!Eļl =TVRH{:rQo0HF MQ?iLD.[(k$L mW fy$ɦdPqec0IPB1 4m8 NrJ[Dl|GUU^T/+:E>,Ä(jQ=ڨk=&-z\sgX#џt1X-[B7GFWБe_H/CgN0AV:8 qfL{1FW/P2VжUP?.~Y#uUd9'e!EЏg'GJWvfٕë3DGnQHM(۪7/;'tt| bV׺ ګViUz$ϰpw5:-QԊ-+K訸kV@>܈WkCL^R$`mvW?MI r#H{6ԩcaAB}7<%ވA4sn'LpFH1*XOBė7xuHr҇Rck$'/ f("I%= 0 ~'/L'4= ױ)9U4 % _[[|B<չg.ݓ'ơWZVE5- yA/JL{|yGZz7w$*$E_Dž&3[=D + [tc* ą45 ]6dQ%0N}>*7ǢtG‹֤v(N4L{wc3T>^P ^ ~'rяX -w>ƽWִ6s~xٶ9T 6f<'~U١CS" >߶[Bq._ՄdhPbL,CkhҊZ(0LdkSXb7M<'>\dY}Xm嵥ybR-|G$xL]zUWZ17PhoOnf ksQQ+.2yD4:%b3fZ RrD2 ^f,~D"d9IZ7PC1`&TBJt p}r kӪ"I+U\RQ!z['~˼>U09 l{+_Om!i_K"6-cLi`nj-ZbɵJC{*+ij+Ajy4n}?L<¹S7?a:MuG§Pr\OeacpB|BVmXe&.b5Ѱ({_3+yJ[Omd`Լ>lu N{6+ f~&Ϭi.S95F1;ѓ[.k# \ڂ/(BUG͆HF\g\!U4l#+S+BzF_)ޑi1 G| _ru(MgWaGIE!Ax ЄtG 0PjZ}>nw0*:>Pxpf"SRhQ˿J[{3D^ r ٫.=mFW8&&Yq}bP54 hXv 9v@ ԇӚr&R|j1iH!ONݭ!C1<҉ˏ4M;x Ң`Qp1)nާgl.K42PI2~| ɏdRJHZ̩EU7q1, B<liaJQ5%"frY?Rj Hj붸 RvZm8 B" 4Zxq爒;,Om-T \6CD=]'Kaw Vu]0 L2H+6ɗ;+H~\~`\0t Cӂ}gT|]tǪ<?Zӄ1rQTWe;-:1K3hg9٫T42x@?gMG)afz$/!DBk;Pd81+I|GE+-M7 D va U/Tl4 >0orZEu ?KyzJ7d@^;DG2#0Z!:3gXA K.wT(n!O$&UuI+ȣ z/)0`β(R>qPduObj$*,Y[<|=Ǜ3Nm1ög7X܍M9x4Lܠ:q;dhVHpy5=<,}}.lU]SxA΀?*2Tȕ3/"G(1|;bRӰ DWp)Ex U:z mH5mXv)j3HTu>kQ*ID⤪8w`wisq.=bU֋G((t!}p5:>%'t%E8磋 ,LJ,<-͓EG(VoF~*Vk`:B&4|~JJ#mA t<P Lӯg*q!P)̧ Ȱ~@AO\|`>6.ux֚\oIB<A~3M6~r[*b0w0\>.T~iPH[0;E 흅~XOF梗p7~)۳ȶ٪M6j}p<]ƿ(C}bS&Ѹ$E]tAV!}9}cjӭ><*Dfra': 9fq"z%=C\ͪhɺi*KbAC ٓ@>h Vm:B_k,R`}1^^x֢jsDv B3W ]3QuXۤɽ7Vf_ltsUoL_NWqzC><#3>M|ëʥ{?AOOӑz- oR<`*tW1Ϋkp_*LyB<Ӊ޿P(Yݱ9(g>:ٺ2Œ+ק̛Z3Xp^6zXH'r*- xM)+_>U|X1w7\rdѡ#Ch`~4zFϠϯboV2sx$u@hBs /KŜ5n9hmW 5ܬcqGI7AX~<5H/ O<-l zs>(I|)\? ػ%E׊WX5luō&d@W 8LCE!BǙ%;Vg 'd>YU[A*re^KH jԻ5r-cTтK*1I>BTJ7V q//>{W|m=HF=_؜냟V:1gI:T*mr*A}߃Z 1ʰy1'5BXydgO~wDc<^(xJYuc6ֽz_1Fb5:#[ ^J(O|Jp#9뎠E6P<ɗ3ax&]%$D 6>&&!12 `PɴrBЁz?Q;&=v%f?Lc1+w [ Rp~ $j:OgrRS)9L%F A y=55v1[|(M=!W;`;H}8oʰ5|zQ[wIdlD6&01Ȼ |NdܘL^X#1Lfb_ ;U/"6گ!Ԙ6>7 ,GQlB[@ջQ]cXPXA(PJ<γY0ms4'l$QC;h<ʿ{ !>$@5ߢA%B%:Xfqk!#zL3V(vIam%S`-Iwޥ=]T\_=6"RҘۯ,:JS98̽E(=kl?mI jɬ1AhB4f~{Ldes1e`]/aYKsWh^"bizGIx( 3iAɻ,*jRy@cYt^;=Pj|vz, _ֵMu[^Yψaky1Cn0As/vVl.X\\TI^g$Ѓ J8_`F=c#OՀ\^ 0p.le;aDq ( EAq'p/0Y^&nmQVt"CC~i0)#{E{0cA " #hOV섳>5|;:R'{\$jk3Is0,D=7 Bpy`$`6 R09E?} .9l4Z~ERDEcfcI6:o 9;uٷl uys jA T=h[CG++uPɕ=aB=kx}B釾@ep.qY2]O+XZ8PIa8-[ E`bkGp2OȴoZ{ɔO7?RtUtϯ:5uel~ /mIf ƿs$9 bM4xf9k܈UEqB^].q~}pZќ̳z}L.Tpde]Ig#: D4C{la;2 ibMެ飛 ˅3Y(fy$F =YJHl Zd>9A4iͶP0=2-&J.Ȑ-T;NCe<(A#v}qL2QIݳlTI\˟R5}'*\ m2tbBmc< kChN]п/4"Ey&?xH/?:[VWߚ?ry-.=Ms,b3K߮C6ZWr <ңSbpuNOiʏ7ΉbߩQѫ&wI [&A9ge"%2Bo {O7pնzeYѓrr_}}KL"yfEoZ%( P~G'摝C_X1%w}Nhu6?&WU1-N d`&wKr`LqG.UHK~~GOg+x&I^=5r2&Tޒ"KJw4a@yx%) :FUCWs8[9\sP12:DCKZﲬY@}*]ǿ'Xkˢ.߾e.9)^ qa?]%rb-5 tF$qo9.mCFeh8 VyrBؙ&!6noճwXYw A'JnJ9X:2mTWl7$KJBnsUcܶXT2vv IG D)?0nuX14aheDro8Uku2ʊzzW9b614m,2!Ѕ(X^*$ɱpYSZCK^uK-wwSSh- / 00,Bhj"(),=5~JxTIM\ g6mH.h#?;f&ߔ^g3a{0r1ZH9=X,бgeiAlnQ;Qv1fB0&$\)w$W|Ht Υ%j`⧁ 3( J)"GhceCD+tR m˅™2;C^l7ic6u%w l-3J k vӁ/q @!`L xw@ҝ&|.vX~2n'w3Y1}.|ٴi?ҷg1ZZ$ܼfzV M?fJM/2;"?ha xZO>|wQGn5!{ 0j7>AX=B^ca`OT7GDH{ ٖ2IHy/޵2ϰx10Et WnL'\>xC/y)n-~@yEv5oA7' Fɮ' ϣQawFYTX7!B1zQQ4䨬݂^Abeu\S-"bE$}d:y?j?#Q؛]ۘ71tuvbn`$ _F̜Fى^sQx-Խ^r' " ł;h2U rܵM4ATm{Wnf-bo^t.G3o nqjiɧrq- g)DWtʾKz_%?H˖)펏Խlg2e—,H}Òc iS_uͽ BvM[Zbr]8Ejʛ\01fm&kM(kSqCS:>Q5'ўn42FA~dlo QeM E3%j-1/=6v6J#T~S(EuRwxj2nkUj`iN)J֧U5G ^텢U3õlNbmj$2(VH 1HY2/4ɮR5ʘ7=sh&jIJ';᧢,gisۻ\]|9 rt8`, No-t <]= +?϶1R HM"w a:7$.n*ud(vE)[J%DϤ1|:]f>&W1`n86oؗrAA`!QC<By]ċ?pҚڳ/' ӿ@_޲$\ʅ3o<+Wtug P]rMf&;}5!ϋ̌k1>su CH1/#VL76d*%\3MUّئh)MǮ0 øQ'p?<{ c,oH?< 7nZ1z[hIQcS Gz|ƦLj&{>>$&Y {t:"O>=Ob>mT4 9/ ԂvJv"A^Sƒt{o|5<N>id{V]Wj]c.a"$rѤ+i<߀HF4d+6ҧ`ѐ55VQKQ2mŠ#RteJ]dX-NOa!{v1Mk +B_W 8~3;r^wBY켁:=L{<˦H,2e G"< .:Ǣ=m`Y  ĪeUG׃)XPy6[ Pಁy#F\T8>|8''byi$ڍcQJ" S 5ݱ&ڙ D:iX+S'\`0eWa"ĸ&ZtO\kT ʹ!otJ8^9Nu_v/9V ,xй(ʱLz>SN9, ;+NV4gZ7wpr=dv4٧XZ5>P>Y`oQ; d§atH u:FrZ4ZS3aU&YQ̀3ȚM%PC t,vӢ"KTo|q~X>3bO&7j`O=W_]-·fafrd>)WVrH^ wfMb\XV^󻀃6*kB<Nݪ kRb&X<͆)ϭ?6A@d d&eiXo KO6$,̄d벰 RD7;D+./6`U9{ٶc V7(3|U ǿZ4͹\/XWܽ<lm0wQ(>L!qx)fe)"{Ց-oq_O[kxS% Wnx_whaA,t޿ a'XTkܟ-+04_o= sI wS=zBv&Ei:U3HX"gU3 8LR8.JK' Yo+(LN^Wzt1;@cPS)E()VkK]RГ1>p}O8x"=C}W_T[Иmb@dDLE$+#E/"G੮:ۼW=q dubyǓV62eo~&C" dc0\ .5/A #T]Sߏזּ\񖽛^g[)eֿ&8w{V 0ZyXnVdiHuW/㧮;m`xKAVYxIXmc|[t^򚉔.Fi''Ԝ#>3:9`"PEnP9q)Ţ'ݹf)'vINkp -I-QIa"2stOsz@=aVl\My(̀m"u}l׌ ?3:oJai )mWժYbm}/Grp/\я׋ e"Џfs"|I46}<0Il@=*4p՝KF_oQ26Can4?d λoiahN%.vR38l[IT] 77 )- $Duuw]8qdaOռ&€74&s4 @x{_ ɮCUt+s:h>&A}Ȭ[QĄ_7řA1(hJO;bvVvސ,d8Թ g"Pą?:-PV6ˑr\|T.l);X*Yӓm/lPdA1%)*-7cJK_Lr0yz3I,ico yjhgOo\&^ء Pq4БJ}5E(w=θE+H"Z\V-̡'E)<`*ϓb~ @n< 䤷.X/ʋJ{A{Nyth"Zn|Xظ̏h%t@:xcd׫lh{jgHT}d%uنq5BR]IMI!Y--n$a g3:M3ipƊh"#؄FƘ}bx#+)E懒 Ep9Gryl:*HT @|SQE1"5kcH ~"R[,?&@.B=W2lT֘i6wlJ.nb^Ԗ1 Sķ5 cof#6c8LxBT{yLkkN[xv\=^SI߃+o?A5iuTej{ RgDz6ʰc˱:%C=EuD4^ 3E qZ9 2-d!ǤsK^XZ.1CK[%5a{wiWD$0pl17`Wn;%֨uvٛ)i4ᙆM.|UK >> [=} A9 İFt&f晐ڤB߻ QbH/i-TL\fZv؏X#= zao;{-wm9m.1~@OXXgc?Y /I ECGIx;zPEJ+̽Gd!bwykt.{x]/伪(wa.>[d[b*޳UQའKȠCdO:whAEtW493(r GI =P;M!/$$₿I? sR5;dzS`:[/Ck-';X<TRU 9[;XE|l'EATLZ] s;?WfySrf9ӬE*JzӬDbsQН4kB[ag؁*-lylepZk'N>6+IrےbQ86q$+Ly张~SеR,Ns8~ȲK;} fhucdMg*۷;?}Jp,b@j\1tcs픀 PaKm}/٘Lh}>epfSHeDV@{ PPZ%p4~gb|+=z F >qx4#]|a{rκJyc 3[nҗcNvP|>&u(j`ItP$x7Gχ3CLk$,VubKp*\n$b]nӦB^xd seR0/F68wdqa%:,ˏ:Jc׋zV>DT;A"1cW[RGlH$3%Xafw blA[-2RK_["`k6 [xj}Mjg@kn/s `5 !I&[a8ڒ6hMO#09rKA)ʢm$e`WNiM@f+T]7[Q/l0)EMRV.2&4ArJ['kDsP|ͧC& < Q:PMLjܲHƌCKꓯ~BSK ߶SxFN7˻)h.QpxAGiGLKl-K/wo,Mڋ&3+?/j $kwfDҋiœ9B G)C8E QK1F/Gn/"thn FRr6wx_enJg_EyVIeÚd&?ٗҝaA#C]MiD;zOS]/`GR#Ud#ò ]+hRn~ |=ńÝIK(oN_g @do5(FpTefasn1*շ_qKSvI|nhR\rz$P2yUxRb>~z: g a,c7VR;Zк<˾/-kaR{T \)uZZ5@|$V; 懎Ɲs-=eP=iga$Ϝڼ300i`L;[&SB GeJl$Z`t %J:]ڕTY_PJ:kS|P]>ȡu0HzG!j[G7^&s\hE[ z33F xT :B)1 ocCo9o aXϞVoP!󔇀HE%ײNpO'XAWȏMzD|?0'5eL`C-I3d%$acBo0_$|B7dܩ7Pq(G+ݮq0*]}Zrm'j<^:~;e"em0z{^JR~9oQғ EXZ(&a7븆S(L,>/^2ct!NzǡЂݙ]B]Ċ~{j|z}zo#;<$f8 }һZYS6&oC7y]3Big؄lzU9ʺw+ā&Ϣl:9}itR^=Lφ"B骎DBx,<C'Qfհ|30,z]]:3g͗@>)/KN&nt4U:!]O"F͙HK?Cae~,*k92v@mLpmE5HI$>oCZA֣ɷY7r^؉J>×VzHLOv nQ|N5]k.J&Ř t$WM6qz䓰R8j4lFתnu(2=*ksN֗2@l@O 6 VfL t_Af˨ wU$̖l2yQa̼-ץ!NWA&?!^fp?ƳCfjJK2ƅG%hwZa}W0oN`WдEjw.՝&NTpT ,Ģǽ1Ҏ :aKP1# k */ޱq~VaGӰpSiًqdqvu0/VXƇffLkߦp{Ue_O엱%#oC|Psy'l\ihSХqO,lY(/l9-sT5dj<{7߈n3AM0S{,2IvmM<n;Iq.J _\\⧞Bs#Hӄ6΍Ո~wN l%e'7d(OU_#C˭O¬B#r\}U?z+Id=[N"K/rF0u n)`1Z" uUg&ybJGz ~)=4~P x댗Gi7U ,WF؜- Sdx] Bs~h=>#uBJ`.{T&`s@Nmc'kqhB]FUt~w/湎堲`>:! 9 Xd_]lLү`IM!2^vJ|wE~.rii?= xݷa5GBtuG ]$RQ`ú=}kɛѳ5HߑUT} "1}VEb0Ԭ8ra{GfhA9zko7ep9.JAAm2b'+oIO?b?9{>1;ZTkkPy*Db(}jg3R[omXԸ.=8bq؛*B) o65綥ZlAVDh'>Ҫuc4 {KTuw;M8qФ5+٢$vePN*ɗ珴ͫȧ62,A6݀%>x+f?ɒCNem!K#U%Pg,YKH}7z5g+ؾt#GckY暔.* \A +PdQ(L/3vK*Ual-qڐ5So@sm乯T$*c3Ī5 e[ Ę5;ߍCwIY+R'*E밯5XKpv. 21 o) N~'0p+FQˮ4n٦lRFI&4oנ&=n Y ŢaypsǗgp02y䓌.N *^tiݞSDzzӚ6r;QG7FeF2gH8!>X}QY%CKs(4.ikAud^~N ֹ`L%b^5'~ʐ*L<:bZ^&hN; xt/VJOOZ V&Y#{6&qbZJce'*<SKtVoKӔ3jl-9~NM  E H9[Nd!jNR*. j#} }O[0R݁3ψlqNc,jɰFi, M9ق`Ɓ]X!*z4\3`&Y 925]SK2ܜ_.pvB-FN=p o= 48‚3w-_K<5a@:1뿙>LiDfg&9]'*NQhҴP/)0:̚p$KEhܣiA^fӅ Tؙ*Y&%|"f<dVyM3|[՛&oK95LЩeau8S~7K{˵ur39(5WtyQhD⡌('J lj'pt*G:ЅKSij(4W?c޻jgo2yzX p.4 T, L6[N4l iOK0 BvV$~ TSȑ)IIZWk6쾦9";A,(o3q=n;' ]9ts--憵:ebxmHܚEA4q|A<%qq}ݪ0'< .E1xӛhk4X.;vұaA0e<myg/zw aj%r6v: .++f6"!IZЦ!Z)D xG{${k,hM.E΃98Bo1 2]`iBE\%*Cmh\Cw+5QH7`6CGwD3 C[Oݔ6؞E).1|ΝJ ?BRѝٮfjg#$A1^}V:ƊٷwH$8<g@]M-5yczCLeEM,SǐQߤɩhʡM _?brl~z4?gԇ7vP&vnap8䬉_5Wv9BOٝZb?8d$\ epD%m2&8rC[[XUGl'0?О/G9O+ܽY-YC!4фi2I)..'Yp'4yǧ 5jIf<)OX1*"O84sܔn(U)VTq-6jzIl0ޫ0]ZX׭>GG6a22 6NZC9 ]{܏E!_\] e}O]Z!%CV6M |vLn7 mlЭBo47S;$n$凨4+MD1<+? 27UnIќ~+&njsWWHoڎWn*]}ܾ|Dj-n)uZkǁ?^Rhr6q@p _Q#2t2VRxNf/;ա#+̓sݩ@Zrɩ^Yu=L$fuIe%xdK~^^k$|*kl"deXۼqD;/*ڑhȉ!N #H=N2 .y^MTSnnBxJq~]Ckm-:1tjZ`!\:nU3ۖHY/YZד/kstum||=1k,4}g պQLsa"|r ]?j3/jE#q2T.ބ Nn[^mգ(#E |udújDu*LSqπer~IFߵ+6GB]y}H` %oH{ >` L?#h| 1wA((ͫXXqItb9c{`mPQ'Sӭ͢U Nbj\u?馠*JL%6lcPvvV9E"T:j9bbw1[o1s=HюQs_#W?T07C{j"-^}LzW|[e]So`'Z5r:j InDdHūE,.=/o%uGd6QhM˧tG5ki =K%q ش ޫBUeB^LpNp/t.Bn'H*SҦ 1>AtZx&ϓ&D*Ɋ^2J4A`=vO*Fg`]ϒz |B_?*+Q)r*yRUaSGGzN=u:o(cf ;7oة#f|EvavPvͭ`؍X6,8>_I*tSOja6Fnٸy{^D8Jm-~'J#-B[ -Sa4cp679<3;"9}P0k;엂zLa\>Dl 0 7 .ͷA O:r&3Xl\__1gSIBm}PsOŬ/mDwM;?gj#㟵edXo'VE#ih[]JBi2ܡID勎/S`A#s*̠GXOp 'Q3x2?'J4{d+m9ژ6K[;$ćƱ̨{UstVt6: HeEeM0S*7E5}ى _˕k>'n#s%o-ĊʢIz4j=KR=IAgƧ@I'/jgh,o5US%,jTYέ=(UZn&6)r*\Dɟ`u}@;fRjῗeP:T! `Vly/po04,A6cFrG_РtsXH:_8XgͦSfPB o8ФrFȋZ0Β7Ijl厀İUe/Q3Y:%Pw-p.Z T R"HZ^oY x%4 H\rNEqRrDigɂF]s,dm<XuVl_OFndB9^;1nk3Dxhoٯ{jJ>ѻ{fZE/tޮ_McM))1gC?g ڝQc)EraxN0 5dow\Z_eAp Jo(F!PUb;7=ϴLtVݝx.g$0?kT R[7xdNf/E`B9:]x!o&5v=|ػU`=y Zn}j:NkR*IзS-S mƽh8< 'KlDMWu]qV%MaFq-2VUmG +a$/.7Kt ysP%DKۖsʭ FߥL3F|(8^! "–k#nE:-@u GŊ鎧;~7 .aj1qHTʙݝpp`fĶNz;a=:R.J5CՒUrq/Nɇv7Ak.#k֎CR:vճ޻%?éD*n& 1 ~’SJR+p_`Յ =8ԩSpϊOۘϼ&Ptݑ"~g.5btw6:u@Vmp1acL?_.Ye!;sF37GM煐H4Q\Pk7o9ˏ0"_*^"43ZǶP΍Ra1XOi\}ۿ"q:dڍ6.EŜoc[!Zt6eⴏBoܸhEewfo՘q$\ 1G]JWh43]oNgE\&V#t/pSԵp:y"meJU\_hLSY6($$x#4b%Dy;v#0(Eظ(rjj`(jɵZUnu+(i$6u<J&<7+FEsd=bm_-rm`n:2C@RHC0 =wC=UAJFsȪD+4,`U,, }@W >*9~Fgc+4z _iv0y.ێ::wN+ z2q_83AB֐p9>| P2tur7U7=kv%r:EH?zg |xn 3hh}I͒0ᖩ#%y2Ҁ,r]voV8 6%Ҍk̈Ls?WYv]TRCgT|C㸻6wKZɇl uv O vB_@R^_V1{)Iם\b%<:=p6™sXd> gzk \K|%Fc9ĘyԲǹɿJ#]6ªN -8 B+m p`/D/.WXKyx!k7xB8!Mޡ.ʍRNe0% Q)n+tw ˝plŋ-|f~qE=?d-C~~[|z*Hov'H9P2_{) S4JEI5bFv"V^0Lb֎0T] Z1Ckr֧ {'n(t_a ZCZh 6yYeR~R$m 5ߗ fv pEnXDj#f=kN.DW=`Y{:/h,*Q8󚣊3a9Ң`_G̖WG?B# }H'auY2?әp^ f\&~7 EaKnT[lCֵ IA@< y?v]M`oeA+.r= +t MR:K,4|kPMix^GYF&Lf`vTCr~<Qr"⿈i/ucWr?!$C5z޲|X/=w=V䥲YtVȌhb_=U)0;7I5[4i`Ek .2ז􊖽ai@rfxY8k+^= j%}4n눊MB5+6uBϲb;,rM׃ʿxjvн_ #|qz <I] t%-NNb}VAWG{Q1xbѢ3ºEhA':0!C* 5$( ?.ilBbמ)ItYB@[wN<@.,GiD5KXt)knR?^]-E!eʨZ EJuJӮXPQgO@${ .v?pH˿d?D8qP879^8ƈl%4$=ThʋH%bs^tg>h@JH4l.֟Qg0۶qb$:YDm8vƍ꽠ݥ]aSܻa&f䳷x(##y\ >L~z'AqyXEe[-'Ͳm~#ک4T3-%8RIP7'Xco+@+D ({Q+[5^xj$ :QHd O\E;nJ@HϽ:$Lf1 Hf=ʑ%fXZy*oMgV)6i9% D=:l0.Oc't,H8)96-O7vX`37Fd;*2&xS!6Iq Ae EuD@jMQs푉 Q@N$O<)4:S>k'8)}8Ȝ֘p&w /}IN;I^wM2El3}p(#x} ;ۛk`B ֠}"Ugu~\UG4q70JI*+\tO*c⺇;L.AozG?+/[#+-w+>=)NeU%^w8MHFJmjv:D3=u1幊ԙ LqϓV0|(]=^LS$x\[&~HAGekg۟٨RuDTS b6ܻuHZ@U)**lv 32{Am,̺$u\&!Ok6V6kiLCT&YSA*GM{s qt rJ'R`[QOǑ!TU_vjR8kt~ DP~ܶ@*Db%AIo(:IhkaoN-ãeϧ\ NSњhCçoCXUer@k_cmE69:<z:5Jpޥ #3xx(ai(p/: mGL0+6 Lȯ]Jm =LUe+oH#[No RȒ2K|Y&\ִimurVP!@) }sv{z1"};G+BG3;LU7yLk 9;ĵkmM y96P77%*sRf*Eu. SoqC+g"r1\MvŸ&'ĕ ATrƶoxP 6@J~c;*^b%̲Zq`Ќqqd{9fy}+x>F-nNQU)2揺EL'6N76K"=LJF¥9#GjJΚy_A|R `ת>JM-JF:Pe%8p L6tQ݊ w_zusCп?ͽg[vKȰOE|Bzɰ 5Kmg|Xohl'#A_[vK3;`h$^EgJSeHmx':咊5U+LvA%zW.]RYs1F dh>Y:M~DЭ6UޞZY}(Їa~Xʎ\;XY`wD~ZVqF[@|4Nj )Snkt b(,9窊3ȍY0Z ug&:#w䅾[ޘgFotK'[ǎ<.RtCm?]45AжfV*G/]eThPvY UW>z١j >)LCrc#fЊCDRwĕ7?Tjy㦘31w@eޮ:k"܊GIBcWeѪ 9V|E>YNf﷨D32$lrϮG:PLıeˊ%"8Bsel?J֌wkFo/NB 8ŤIdU5_Ϫ32Iq;ƴFOȮrOLH=b_r#6]߲Itq;m#mdt{4䈏a kܶa3Iت_Q f C4G1n|uFk3|]q 4)BOtu=?%,n_h: ZuJSX@dDs7 E90Ώ#6Z=OqU06-0- Oe +ch" Gm=+ ͡sUlS&Y9I!wDi"[[O|#)l ˎ-!:+8vVԗVa5ai8}/n]C9=RlRU"3'+R:!n;90$-{7*rb;N eZWgq]ԝ/Oʷ7_*i /Zn餢 =Ii̽M,8"FS|6s=UO[c+hux>j[qI t,T%dǷ>fz=O]&NL$Ks[bxYa~}0ZivǮ9*0Q8wi@f[|H70 dMoҤ)01\)^.!,"`YX¨r5YR% 4NOa8;kD~>BQ)BUU;QWBڲpaD&9bV܆9ԣUp%+baOV-&lK0x44>a~N#VajS=KH+qXF㢝m_}֖Tᐋl3} >fϸ؜Am \shR=)$NThT,$ĎK1{}Mo::<~*^Rޘl( $Uۈ =r/7!ۇ+Ep.ŷ—v{#0dsznz<U eC3{7.ȘUz:w. pE=Z˵ONA "KCȵgp $fp 78 ],3g3 ZV}p. hc)"Wfr.zW Ծ5z,˃g x  S nK_3 v޿} ȹa+7LC΅KR/GG΢J+w{ff=eec*YC| af tŌN'Z|_g^l4Z.IAv~-HWFtBCp{Gb޿td>yT#t+o -CuÛR,12(D hN c h` jǬCeE?3z+QvuWTk*Y`Is1>ɓE4$!_cdBg>`Y%ʾ2y|:*M!eTZ\[]}A&]13Unئg9xNBV͂/7A/d_]K WF(Yîƙ>XOiM`}Di~yQ{\WE=0F+--M{R%ys{%Pä)7)BpسUi0=b{wb#Wzp'PVmӘ #+\o;KxBZa֝cvL?MHv֞T ~|dK$ j) K u`Һɳ=7VjZ)CnZX?EkT~oÔu͙Pq'e5;z8ǜ}z>d5c` 1)_y{: Y;id~CVnswt+ƛah~I%MPYXo=Lw@?ǴNhJ08+a}[-?#e\sET2FV)DLpYןIhP ~q\+Iоz_^a 2|=uici2~sf 콃Z=Q@7{ JR0EpB8Or.B!mrm 9H<5՜:_- IHbx0 @D_óyIr6(iy>q}8#ݞ!W:DE+9sm);]Bd|e^V2<X|} ^U^+|CuMW^z㩿b =)0Q|rpc5mwPD6~>b+FVΟa+ܕ5K tڵaa<ʺqt4ǬBOiLIoijSAWz8 =CK{8SiT/B\qJ^"=ǖB%P m9ν@9whYp(bzLj; ,,A9։ `Uޟ6˃\RnHwF=Bnٵv,Ԉ( G@5κҵysq72- p5peD*ۨ}w$EFc/'(gӡ&O H&ΓcEK60@Y['v w2\" PzwU:a5(X~7tsrԧ;v'<]Ct? ƗԚWH$i@L@EŒ<,NOĀ\ut6_J|>J>+UJ=()"ULA>ҦVrd_u"^OZ7c׾c avUʛp:tϳtaꑾ1{ ~mM;zfvkĥ&"g3^|gVlSXe()Et5׶ɏEPyL,^S픑h4-@.~Pf[ IDS?5z Y'KhTOmSTjcF NZnu`n [n P1QuJ.I.'k)9_ud$[YHwLBFU\F[`cMnv*cC Ūdd=ڴ(_Ž>n#BJVfY7 ZDoH}`Cڛo\s.9Sǃn*4$ΐ%ùqz->%@N6wrž6ű1G;1&((09jwvwWy=UEwx<ҞP%t0qۏGMh$!)KCӫX'4tΤUO=1GT| {V*m %|o5nv}٢!xfGcΦp wE}Y *X"uneJ5ZqM! &uls+G:447%.8Ԙ%CQLjV;l53R%ɿ\>lGMx)pXլ@Z=jb<\@,=@f۽[O?jko l{ q_5`GZuWS)PkC]C y /~]XL,PA[n\ l'u HCri9jNs' B;{#셐.'\o{NcMN,ǫȤ'v 'F^ BBhb)^9ʌuT⦟s7J)}o$˶EiOW4̗ߵC^'L iL~qUoI "|/:6keSbW5ki4(sK3ˇi'v޿"dV'Ki@P2Qy&ŐL)N~n̹]N `:|i+#U~Gt;޺nv.N7lOQ1cH"6t\+Ɵּ]i\GЁڭi@L;HS-Ǖbuİ`O^efvm1&v5V"{+Z[7D*mu596u9 uźW?l\d(2Ϲ|@YgFϪ* @GyNb4\k(cE\lf<%6c )b8\fF(&`w6(yJM3x˿3)Q߿U7bZˡ}dzZzwP^&4 ץnnieۥx;$g8yWE\׊Zz'̕P @^Q<pg@L"4Ö@CAw*IOZ6Q}g`KwOlS0@fr<ݽ¸")%ok[;.tؼ7&U!COڍ^1W)"K$nj5OJX:%RAmTN ͸{qʶqҊUz]nn.Ql'}1L<+67瞠A6&ZƅutGG" :FKdФ_~jPf=W$-I+('4y-w 3-óJsl}Nq >8frm4]rwmC :7JVQӗUcQeUtQgO_-kV 3mRkg8cRˣ%}*=M*}]Sw;dݏDWΒ|c!qؒ=" "c°ax՝oS|GIߋwtTx)nF 3ȷJG+#%ȱ]FGLP Pw#_9=uP0VW$7qOBV% O!aB7ŃxA9p3ɯ1X=||Q> 9h//}iz= .Ǧ%|k\H(-o׋>MwEwrQ럘pʰG#jcGcg[PgK }Ȭ4Z<ٳڪѮ@ҞGLgUsqbW2[“F ve͋E!8 rቌ=+[qP}l)p?yʳnHi #W&Ă(L I%N:jw(# i:2eqn6 Te4K|LAb4qKM,_yY }5NB!b`$C'U! Yb w,[N~G}MEi\10eg/.BӮo` g'X*6 z>⊗y-&cT 0w6e͖Z*?O5ehJ(M/xI!>s7znzM{\R_ЋMP]\G`y`z`=HOK?]g~-4$Bx{ԾoJHeƎ+XNth]|(LQꠒЃ*HkP%!lTh!IUaEt*գL~UZbK U*-!G]d%KBA5 .EQi&kݥ[JP qxhh;w nxT6cv&u;n5Du/Mۯ@]SO1i;(jl;N8ʁrOg%rP7N)gcHVCP\{f*Ͼބnܖ L1ZCSH _`їt'XaN"l!Nv6 ȭ>jI? [1aBuO8LCdU% ~ZEl Zcdp"ђYr5O\RR;0H;w1UВ}ebPX 6 Kz/H9|iUY "a7L{i~RlT"5RnMfhxS7F֨y46g!םP^%欦`)EQPص ,<b; s{=Jp@:U +E鰎Ӭ[ ,+Jf5uQ Ҁb ?iI/(j_*7xƙocН9 zw$`y$g݆ܡ[\SH~׊JnZ/gXHxfB?ӏT)զNLy/=XT!x r uΛʘp{JrYє|Y5b!KbٮVqrB~Ց=vw"ko- m"|Dť!6- HTO^cf \ !Q"Q?[N{Z(pcxH *YtdiB^ҥ\A{"PVeJw{˨N7sZe}7ZLpJ՟>P-̲:9x['af~'0:MH&Nj^7vH۫/CH:PCe8QX?GT=Bv5ϙ ydDL%Dz^7D(YɞCjNjүO7[g nr{AB'/ojhԋֶ}ArtL!͌ PU{vB\Y[W;bD\buj!wiDĹ}KI2^j_ewV.94dݼHo v*|hSVޭ-1MVʝ[d C r h3Vս]ޘ !|BS_w2[*j:\SZ azi D7|i*GlP7$nL1)Vx.(AnB,9}5I[E >* kƧDo\~a??H/#kvO.#-qIui=1~@Xf5mYu=*ARL` 1wDh8(Vw̤{@]on>GDGO`"k,W  gkEҬ-4+WFK%`q'NvR9YRVTDH(z}4|%z],7x´gaʵ[0Ʌ˥Ch7%~c ΧWT}QG:o\tT۱JI-5͐)9T2wJZ߾OZ@$OTj$ǽPBGL >?^S0ȹe@ ekBWt86 ?u*j.O^vxP|ƶQ69]$JPY < EŻpv@M F_: f&8./e۶ssE[KZ7Xj6BHzY(wDQLf'i]Y'32rK-I`likrN)[H7KҖsgdj.fO2.ry`&d aH65cwoYir=KtC` G4?^lQΨX/Uvyr2#QЁvԇJ??[}# A:Q-UlC'uG iYMCOrR=Ů%F6a3?UȍtC9̼q))5x7J^.pf" ֝DbWCA[OXaU3[@PsLΔ0R(`uSVM_8f7z.tӍ0~i/  o8T8R ~FO"Py.hTN֑У"K <"  _3TVgU]q;ԕ[i\y-xd:^'}LGwh>{DD^'qO |CP)6zȮFkXp(t}Q;Tl.`+r-HFʘqȽ$2 뗭licֿO6a|(8uh{*/Cr;s-mT9)n~B=Lpq~(XBtg6.Afr =r͖Cg-t/87+ę{e3 AE{!W4(.$@tjBa|1AfOB~9vEQ0LByj)gv1_@etb:Cqd0`M'"eX}?;:4*}y(u #<Ǖ )/y6dp^0j;wYT]ʼn7bۗu8b:]W?nqd' +k:ID>rLjޯ(HR䁒gF(;< N_JG漎$!t+@;mj v 2HE ^^c9xBu?n<7_<Ut).-yg$"Mf, Vo|whaZTyCH``c6*ۄ].k>Y`B {gT?ؑ4?CP+b @f-㸕ϔjZ>*Js]|KSm$ÖCBkFGЯ.㞺;w fr"4{@eLf9cA{px F&'@EpfX(7vjM @)~&9ghDERc4$5psrr\&?= ^v@B6QglXv*;3ח.X]÷$S#HN*H~/$YFB@0i&sq%yI8b}q+o(IJx6%m7jt1}@b1Upr5g(*@:>(L_V)QZz 0jzpt/JmC}%=Pl<(lj7-S]ǻ1`%"M>÷{EmJ;nRkrr9#XPHKAu9U^|΍SR]2 P|5J}Uލl+P1UɊ$H3KK"㻍)\UoS0q{rŋgc8 {R 醉$`Ih NlBp* i(?z<ܔ,55ȄAɉo-E9?%.*`8UTLF|.u l8Ľf VxcTmzLpN'5&ܭ@$| d~vyâ1AV~"Xv*X^U+XI ?Nڢ>Je>Nz5;'@oyPF,:}1\+^6ց3ny*bC;ٜ!Y~@4m(gq-AX1B9-FdI\:U><4@x9#h}s*3YZ{h\si99P?5 s&%Cvw. /5:\$/A;T87ЁCO`ݛ% GjaDy2|~_7{JۢٝP?Gͪ1c1]Q87]h{dU3Q}{wqCOpw'$_x1ŗUj% H,\=#IE`3bx%8*jUfhgV񣺩;(45x$X3,lo3\V\5Eq6`ـ,3Rk# fB'6l" 3v`rF hPh҄%j2I~Z.i1BUD|(.wIn3OCܽAb'=dA-W_ _: ?T1aF4(On ^ YۖI3l`jQ1nUYJ 4pC|= piF;:3LZgu:=(Rr ~m 2Kg{y2^b͇JcuuLMJ$_2J&r@Dk^$I jǣ!Ej% U(9JWGDױyV6oU7 |9 p[[="y&ALNR5ď OhPX"wy"T{Vmy/2-I6:E{ER0JЖLO=AOү>"lXَLk ל}!u?% a1\$hq {@LĈJĕ~HDVzJuTˉs\;7|lp#qލI1d{9VMm)!9 tDlҰull2i೬ ٘a'(`|/5&r^mSq T@'MY!^IΗ)}8avV-p9B$.;EcKN~>ץB0 @r8TzIr B044>|^C @!s5/)Ué ϏbJn4RpJP<5wABص*3jDt웒uaљc^e:EyFi>Ԩ4|mЧ\7">DX lR4Ļo7Ai`gvVF4zRkL8`O==2+Nxø4HEeT,j8? z^j\ 3QhN|IYo Z4*) }@`eC-ա<@>~$m\aKtu;ҽBc{T:t<)!Vo?x4Z{0 AmAqE=r>w(JbⷫMOyΆ =d @arKS)qؗh7IO#!4L/^~/݆kVh #Cac $wTUhp_oJYE(:F%Vhx-S&b/I#yD#ɐFuc>*} mտeYЪQ75q* LVq“$I'ߠ QT a亐SF?f[@HChzRHմ}x`@qKza( f0Z68G[l8dȁ'vyyF{(-u4"Smdfj JM5tk{p/%A5?c;$Dn4{93dh6Dq'79pnj/m׍ېMC ʞBL? *A1^kQT;j+S?u a{t! ?5jL쬋!brb2L^z/C옽@қťF.=ߒ^K|*ƾ)zv"ra;U ;Y 3ɡF MPp^ISBMg/eE&% DvޙWt\b~M;Wo0rx2`}qϵ1z8ggH)VYkͮh7VDQtFL͚b~~?P%)hC)3IT!d-| ߽E,Ȧ!頢VCbN*a )_]^"vl=`մqͬnfl07q$G,"A-.MB8`ܖ/We2*<⃘wwQ ׃w*"`n 43^L:/w$ں 1dz9f"bX ~0[)qZ:'8BH\V*]sE]*gBz08?ipp!o8^T\qoh'9dl Ryvl)ϔ1ߊB3i+:[L$@x~wO?N ݓh(](ROx"!A1,^ET2{;a}ԴfLf#2sȆ.1cdjd=UCZLj&DpD/ރU%캒~oE`7|hjDݒ3'"ᳯ_ ǍM|Yh t27,cOw@ETb0SܲEExxEDi% 6S` Q55tLzJjCO6OJEAm#`2 KO9P Vb*MV 6n.ûR'Eµϕ_wv" ZUolW9Q">ܨ>^ 9eBٌ7D7R ,IJio7$33" 9)Ƌd8ԕ@K.UШlp!;ȡs|ۨd hys?YFqvO5m[Aju6QSZ_0 : wLX|2ġDγEo&^\<ɾ4m,m`BCp9ZW+d ^n.,N^2|"ňmŪ@WXGVX. o Ik ,v{#҆FSUsu+Z x*Yv/AK ~:CͱC%]yjXT@\T0AKBꞚ%;)HSqA(<* ^^'Fj Hd7:Oje\}Ҫ+„5},ό!ooʟ9< |R w /<<5!R_+n_ :"Z6S0wb!À$p#}?WTz>#<|ؚˡ8uqh;<\P+PR4<6ց8q͞2C0. \;WKE a r ;W$]C_ƥk(1xscG!E7ҝ{V:c )lhNț؅1IM߀Y"_~ZKUrhZYpjf8>4ELoV!h5ՂY/0]%H',yO!Mn2nJmR<-!0  ?EvS8 )}Y;>n^>Ixfg> :Q v`|"9H~f/F\!sc3NWIϚguK.2dQ*Y~ޘ̴,A\藗 {b扷$cid-B3m#g}>A0YVc7l2omޭd(15~H4&NljrP!"E-fT\|L Ub C99[zZk\.F\&βJ='TX!]M9Zty Y O+2:?RHoGyŚxNװ2!yD#,E y=YV"9YTP:Є,õIx˽jt#_YAxuli8mT ]U ]k;i$H:f{7dsHw|㗾dzcey`jU _5&'r[kzb+FZQ;19gWmqPi5olCg(n㢗}"ܰ ySdS1)os^5u9:׍d:]E:r(Wޣ.&em MT(^ ^Q~;%wBFvB5 {7A'}!;abե!R `*ll/YAN.$HUڄiǫlӱ/[a{h B<&} ZSU?Q88Ou?C?*YЉY򘺶H$.aUs#*mJHFChw8t6ÎA5JjE髙åjR{"\āR Zү Y904rP0!BE͓K+Upj0!9G?y sх*֘bj^.Kp:o[fmQnx ={~SZڥ*?Ltٲ)/[pjj"1I^V d{\{bH?Ro{}Gzd5iAX{v4vW㷵ve$)Jr:ՌvPJ1xɽ,xQ;֋ԧt>)엱YQ=n{>R#bq&(k1Fa JF ;ȼ'`424ʸJoeOy \>Qgoh;'cxs>}e7a-rlvlK-)7{ A,~ujO}qg#"CU%eQG ^;DΕyb ~C)XaFdtkc߉G)ib,v;@%U =XayFnBok{$2<}rMm-7}iN"D/ɲK o|%u*Bz=1 ~QAq669`i!ƈwMtmۢkakcf%rLҩLbJ~tbb 7sùm s") ˍ; m6U_F\_,To/Zޤ)]%<|=mo(UϧìM: <\I]<\ %L526Asi% ]B+k^Մań,VO7< Т'$D(?U"`+3Lh*<؇Rc.i_,rmdS gvx7a_IG$LL7v$]8(?Mt&ߞښS&;?;9&Ih>dk'o9 z]@s CS"Ԋ# h\=Qe 42>kJ}2&>jD<# HpNR&z`6tjqZq6XY_.m堗p\3(Y3qrRSXΉd񘁨 'y559 rSEBX1l52~o~L[I(ֆaY:'1wFY^_R|/x#U}b2͆ Y57J:y  S&ʅwB5eށK ؓsbCل$.' ~n/5dH*b<Nv#y3Y4-ni M| c؞vO~ Izor}̈́OP2;Cd06rjHdiijr.*X~轟v MuH9L.-s iǷVUϺkn_x'5yl"2uj:čs>RnG0q%`$oB(ij]Lfo H\|ABemyBM4p/ !47I@E:؊{7%UAx a5q2%(}̈N,jՓng |UR4WЋ 4j+%c AE&=!i;0)a8"޳U/]f?zI]בX^F5J2'Ci%P"}ǬsߢAxWqT'NMO楻Nt:yNy/qL)y!-$B VӨhfZKu+Zh~E^Жbƍ%11:m&G\=N~J; I JZ%{k g-A&]$J)!ٿyV`YDc з.2DXt|sew&l -YB7˚4IoPn{$Hbcȋh;{V#7 N^/^KuFBL\&g ]$UCw0|26˿ v-C$y?Т?X.{qm"0ZW,il8DN0n?|~u43/yQJj23`U0 9tM(ZʚwuS'yɡ Day OAp^ݻ:dqJ` ^Zf ?JTAd+ꗎ3^#.Y#Vp |/eò)#g+%U Jw;im &V^I2pjN)wv75P 샀e }7c!$yy}f+yV豉-٭Jg=ѿhH;w$!h°\7dG5K*,O$lG8|a0a[?Mi*ϪbyV4^q/kh>8> K֎8˟f? <%n,aqto_r5{矌@Dپ?^ ؼGj#7 >엞%hAɄ8fb^ i^ JD/&*q=n<)z9 W\L-9Z3%W/gAǦM@z,>Ή9֎&H v[LeI i [x6В/jj_mHYՖpdGe`^;^kUEP)_} }w35F+~@~p甸%m$ZNIQ*,}$nؤk'kmYx(K޶z&1g!0bhϜs!L#]7ֻW3u_ZWkYފ{I V?]#Fdk w*Ӭ~PQ =D)T@z)Gs³c#?U G1ðݯ ɀC:-dm\p^kSPիҪg51{씉돒>905Fs|Yֺ~s$$ ?;"+9Ĉ;AQ\F#/}Yo:E)42SnZ鼋_tEL/Xa,1ai+ΠEjYӝ;J 2_>0D6Y [s+/گ -y"]@Ɓs*$ɦ2`ӌNEӋY<#)ȹsK!' 1 L9.a&}YWCԣH;${FI)Fe @aw׹1醘u8;91-(=J})`ese Ho݌ƚ11 Zcؽ]IYp;tggU_o P)@Q 0O,`|GY 9\d}Av:CB;9&H~b7h,nxjŸ 78{ڕ&Ce0#.334*qNac?^M,8M3=郞AQ˷ VPmxGl^|[3~>U{i m}%mc~TmN' v^]Ny/zf0/9~kBO%p|Z|!IB_a!Y3X -QM^m L*֢@Phݔyudɳ C,a@0 76Q$g)|N 'E'܌_}%e=Ֆ-"r[h%g0"HQ.Wr %C(BW!:mEa`-[8א5aх w/D;se DAY)/5D(E(cDW6J~|'RH:5;kZзlڪqFj#RbsoeXpvkvWdvWoJ#דEb)l@ަMsx#0Tȇ2qwv>,dvFˀlJg /FDp5j"۽a'axb[rDwA)zE=ɞGt ߺvKY:o1m2T6DCp<4/1Pkn%<ьF9L=q^܌,|v_tDUΏU Mh$Efar ,U(i~ovD}<\#s1ˢ* .QlJreQL><(İ ݉پ^jvMݐl<ެ!Idu8RjFD‹!FDB^O菈'ag<&LrdЬCkdALJfsvE߃([8 3 >0V(ïQ3k58^^įM1? J]ґ9A0zB^$JOD}{N#Q߂#VݒsGfxutnXveZ5:_Sxm"v1 cP+Zg?іםEUϲBl͗/wLBF UFXKZ !"t*4m53UP;v&bCb.Ef<)/:/~k?HֳTFDCA0ō>bsa`3rc||z] [;bg[_vIm?1ۚbj$Z\:qӍSeesL2("mtE1*Ů;5Bk+굝[ 2/_._a#h .SDv{{IwI᯸':i ww4P_=)`L鏰\W6ۭ3iPO5VU-|%V[$W^6C0d|nOJzb'b&w~=fHr(U-0#>[x6G{4L#R{f8klMrgvBFd"B$ey\Mzۅ軮Ґe9fytp wGD/Sj IsĠ1uEŎ"u_\+I?H/oBuO3հ2=pm6TMטT]xJ;+B(H(`}-jiVJ6jZ~h>O7< r#< i5}aj$rTMe7T hpX՘k=_m^o_N _rvbkB ^Z |ݞ8kw\o\TßB4(PPc(*^3t{ Ry|`:id@.뭃}}gIiGX?>;2mlw펛 w. =yfs!X-ƾJ"?sXgwwߤLBma4\rv3QZUT%l\~4Kgrdi ڟx"LRG.5`_bi(*O%OJ) vJ\"pԢwg+¤tJ∶9Qo1ƪO0%(dGSXkY=U4CnQC ?='g"?112/G6? ^ɅZm=o&j؅t)"OX?,U4akHC W߭ӱ*J/Ocߡމ6Yͨ݅cE(לc!K~n&ߍCAuwKܪA5EYmUYY4.rKLX$irt|kD#N<䃥&^w蟃0fN+ApiC%Eg~ ݔ:~-鐇$#HuM+o H7DG~ģ ç[6hK:E-J3p)it?4kΆ[icWofGqMLùؓya>:rf6:֝hう_(*`u ʙ';C4:wMv%^zC# He/]C,5#**Gh &{h8*^vЖ~ЄgCFQupXсA*g?þI<|PK%فU }Paj4? GOoe KzE>*gs O_[UXk^+[C^,b3C͚g4T jS05-M2lM"Hi8`*XҶaL >QZdp~zKc6FMk'a>E/FmH8cUÙa|@@Q!ue$wlRe-l~[)@_*࠳aMξ+SeGZĹx4J={PciV\ۆ;^$ ͅ4VSj*w`KtmBc&Y+siR!$0kxe ?[zCojU21S\S|Ѡ#еek_hސ0rh\`n ! o5S-'>ijJBRN%L0L8h5O_.\Eftͺ!U,1 Xܷy,l!P KRGwm\v0.1sa"@,y^Oh'/5s'Sf]tgOa/L--)l/yg}>}ou;+:zf 4@T9jz]K3Ib=a,4v/eV2kx`_6`•be-5'"/#NibN<;IVfgl̰> 0U(s$*GjYjvt`d"hRt0\6Gl1BYbj@dG<5I:`_:?޴KV9w'S=nlV@Hrmƈsڧkցs ݮ鷚Xb8?.yJ(Ԙ){?1iI?z'$jv !1EC2~ u~n@( Hu:0xZY,nVR0X`dNW/x,pʣC.pwbSCww*q~ּ RO6{+';A&5Ȫ~pzTUjצ dUˏ' /4OhqcZ`#%bXL !bĚ$_.3fjI'5aZ%ɖp >Žԑue|89W WA(}$ b~͂pOdNɍQ_ }Ce^!⑹ D-U%м})ZW&]"~QJE1k)DDubL$#}[ *>7: X>ks:䈂N\{짤i틋L5Z}L|J ;t cPQlWу:FXN;HL ϺiNp fc$W.H=RɶduIȶ*r>m .ƾ1ELFͱduH$<.("np@>wքq=aHg= aIB9 `0CNc] ` =ur74+߻7.ZdY|Php#ٗf^|DC}!+_wY-qka%Vrjl_# lX6OU&Wʺϐ<`#x_ WK7y[YҦ%x-\nWgۈXȉpCx3ѣyJ7)W@ 461h YH bm_r5A7]ioraXJ{e5h"eofYIT%f@NkN G|ȱ#|dQO ~ynT/Dp,4{[[2ީ{')-a:OP q_@K!}^ňdɥ”._1j@H( ZH>_h9wGWю3!la .9H;N3čfc!R=" 4ćiخuϓneVqo*p^KkAmbNo). c~yaF~`,kfG_bBs?\24XbN'X׍֣wl@_Xl^CFlQO<,+ 8κ~hf ;:%=N8~aQ@E RTK|Zu[ݯl45b9L.so7(lH|xR`~*z࣎4$3;8o1ho./ާI^`X<$(|>f$bO z]L3"1Oqߵk柡*ϟ pAYAH~48?'02=nU>Z jt;|`1GB.`\\|@ӵ Ӣhդ2̥ؤl w;}q{kS6&*=L(P./Rm&dQ?fCCqWAp_t0I}mJowC49oqmpOK=hҞ+P'u}oc"ٜo({ y z25%ԯ;.p)$#-6騿DE,i|~ޝ}@J(f*)(tM~ [&O%՜5ұwGTlq,qWw߫UQQ?{Q|Z8vA<:$Aya Ĺvq9'ԭԜyT DS>͗^41&pgj+ps\OYH+WuuBSu=ϡ9&,3.d5~zC;^D:Sf/=eGKH')[y9qcij+mMH+s1::VB?>PИM5V!o lrvc 6!)7p1IE14?m 5rD'Y zuw4v/ޔ}-hIUv(<^H20-1 P9_@_HvRl;xo$P /H~WנB0VŽ> `{HL]XQ^ip/c&$g̴{ cO_ðy{'y&,*I.e]:_'qX'Y; m@{pTFZ,#!&t&TkY)UZ:`\{ٿE(%J!†=iIgtZ |ABW*!h7m64C>+ŔtI&` 嚢wBa&J+Nִ Hbkq)YOH7J0 X1NssȚ/Ìm8< {=j k#_!ѡXd$k(hXʥuo!'9E@8 Hhdz #3,>#M0d_n,,wz< ^Dh'T޹`CRO<^h/̉*RF:=~8nkRms4*_W)lh!|Kn}=7";p%q"FJ]p}B }^Ugw<W;ZI&1+E5b"rɈ%)I')us4E%n(SYҗw+axͦ6](zN̡K{a`j(v#&~zũu{9]`V\e#ixY2],}j3X,n"r|D YnuɚCxIs{EaU>0( ޅ#Ʊm~R# _*.E2&YbDDT}bVK@.:..OsF;' L:b)Nb! 9k,x~Bd.Ls}!L%_ H>+D 5l4FX6 wfL;Ɇ%"ȺV/8Z}fB~?D\X$,@ț+B>oie@ڷ`.`3A1^gtRbE+7d-~aQ9ZŞ\#ܱ$ 1V:˯:Wµ$&nb@ fd t!y6,< _g.?xtX“q[ F$@ٵRiMYi/Ȟj=y#AGy91- $/2[J&#~ɼۆXDn(LAC3kq U*WYUkf l(GziHPEdwj޿T7  4⿘gitb~"|s@( < X*k$B.)Mbq巧LdԾ4\z\5g~RAoҒD"zeR| Cs/y Ĉl*RW J16!e2FԱͅo֖ɧ y.$x{ ;|#cysz ӗ@ plWSơKV6{\-f6&'q:ρA4(^T;~xRY}Щ1`|uV-JΑ3:F!cPWiTwhYᷫ&@ѬcfmM%iBwGeԡ bE* <7Jɢ_z G?^,P! Șb}~y|y[:ķfGSh8w}ʰuLH $HUS狀rmr3J305r{Eҝ=xi >S?+Eiz&! [m^ބK> "B9Lkoe,'aT^4avHKP N" xVgCn)nћ>, IYܵdfՆ/0)Z>5,*[UU:܋ޭ=,P#HovtJőQ0' ]/)1VAhh FUdaLܼ +Zih~0$M9[,>Guc0UxDFu1l2aޚgAb9BUrGfsҍa7؀]:;\>U#CXZ/lh˔i)x[W>.bR$F ,Q%+ scCQse] +ynt4a6.EtP-{}X\ܗ<XeoCnB%Llٲ1^dz5HU-*6_/­U``Ҟl]nIw59bcv>RS'|w|a0b#6y (-R"aZA2 >/l D΅1]:wS_s((8٘!(z_||$DMtmM˟xA0P-C&ٽe?G s'oԂPJvu~M @6S Ahbm"rFD1(w>mJI\ap`@ȗsī&JR9MN~X ^P͐sc]"NJp*"E@^0lw$|(-;V(N$S%-OJ>IP?:bBe MWm=I_EP 0O^x0%h(6^{nf EϸIgkKÞ􂽳kfLUXsc0*Oi[A+ߚCYꔝwh [ߐ< <4<^u18ڋ _s:*OXGt\=rUئѹݮ.' Am_>)) 90vDxa³mOl${Q-sȗR?E6emϪ\Jl`Kp$#amnMcJڕ] EDJ 2Zy,aMnH²"{y5ZbW/ρ'c|4N5KPS&e0MPP 0O#LmDZqkq4It2Pl6c7{̐Ri+89";L/L/ckQ 6",ע-o/h;iK,n> 1W& ygѸP9Kchu~xX΢#×&+;w_bl#=)0(fFE!,HcYJ/c> b[*xK-XZ)g zM \͊7V~iU P3H4~p eaw{ZW<9plcp+j–?y`kܾ\;0v>!_%H164R!=A)Mu9'%])CdI0H LevUcC5d (Dv)ڬ Ԯ3C?e.B@AD BhCPavK $>$c5-\f&ᝌ' gD]yLs?6ҽ!𛺹A?Pq#3BV6zkcf9זCz%!EBeJ.@(cg%[kD6| %jf XZ"C0UG`ɱ֍25!kȽ) @:OrKCoAd$T, +/3ZddS눸Ҋ`WnUI tЄ7!Z8ك3&^7Pf, 3d> I$;<ڸ<)$qaqeK*mXUo]}nQ^LB, "Ӟq sAMS_y%䂒p>:&4 TuC-l ܣnIH6 Z?`XS9n2@FxU9W˪MPģQwkx,]☎XʰL4Nw^xH-^v* 6  )V"VRyT8GQC*NA%Қ;,2|>޳{qo cnP]Q uH>D0ܗc5\~,Op8ϸދtKrz߆6`7|_ⅇ*oBPA0OĬxo<{0n2i\F"pa' E]RnWt=}y֜-q8 l(TUJҠw`P敛D!ʶ#S Ww;S>Fat*1kC}q}(76Lzmݭ4Y^^ƛa.~JG(h8:Yr|[ qO8eYQ[GQٷf Be As[yUBD..al,-*^RQzxV] O|Rxï)@gG~u:%嬁UE@_(qg5GfU"y0.~o5Ar ,jɖgAIF" dDg"3[7PS2&gÏp-!"a,Y %`ce22qNOPmwp\5?3*w"ZMB"T* E*EbWWq#tB5@ 0<((QYYd]+-Ge{K. MW»Un6ێ+0{@ gS@a,b Y ~ڕS_0HǬc lœ8K#1ٚ4{1`dZR=]*9d܋$}'7%b?fUy*/Zš)`A^{[}̇kƺH0!YL.d,$B\;+Dgv !Xq*`-; %V|_gҊ[W=Df^"(slC P6TA{齮20Cc1v-`-#2O;n߱N%Jؿ- hʿ欺vӴ01#^#E7Y'V})t41H zc?)*4ې՛Xލ ymWX _ MDץqbM3¨oƃFޖ$̹UC2Tcw鵎\d zB Yj/~[Au[i֍TCTbmf.ds``|L{½uO.x F?ӿ~ĤlVX|X^P\EYK&7b*wJL Lڣ#&tEDMLZ2|ŶRt:'}VݶYen=$*hS`î' 5 "nd^&r4hw#QӯD-a{'矰e9됝yɲŔ?%0IֿJÃPDD/q[g*N/భqY,SANӝ3B{SQ(e8^z_h7";MYAGNڽOT)HƔ]4` zʶeafm9]kFRg1|4Z6){R9vg K% p6rY3O{WeH<ײ8Lm} 2ج[]=Y y?_GѨKn}!ve䗨] ?|tO`ʌC93mhzi@X/,¤5kf~.NxSڞ3B]|01lL  ..4@E3{h =--^-k0x@ltu}Rhprվy_Oy?a':!aR i(Іtގc'Y'oꝀ"7.  4U D2Yd_̺! M  ~Pdd]!)u:][\7`cU +nQr-^6ʁ9LG9mLoDS'ҿqbQ&5[0uޞS-o:|1+HΣ1m6"Sob2Nl豥Ngj ,;Z?+ޝ9TVm`"/~1DC=9&o+_~鲛 YXv)ZvuƟ];[ٱ7+:w u &ghG=<[/Kp'd܆s1 ]niQl'V߂yʌXBm!f!)ݨ/ AeeLj`F )Wđר}ߣKCgLo>tMBPiZ VM%H#rK" ѱzAKcOBBJkKE eyƢ; lV{͓ -r\q jk#qHԂvhzxX. X]hR "Nѓ cD_Rְ֭ bH ch7X&m8D0 f&zqX]O7 =چ7:Í PBRfo(++LDoG>\3n (tOl fh:=4 -=pNtֻ;B"j\8Qr8(&H_Dc‡u~?U}7Oa}̕ye6bF>)ZƱf>]~OH5FY[S)z9t3;+QC0?O ~a䏯5K]$^Gش4~~5k'O,bhMiZfLemYϦS o}+P~Bq =}ƿZU>׽HE7?nA+>/kHҒ# KMǯ@56K8Pfgːlɸc_H>D.1`n:5?O!~8$S \hxW bt):>Ѩ@ @ eyhD"+\PgeL"ywlL8'B?i6:2ҹ[ rԙY'!b֥8DGX˄U/S"ˋ/jʔx mAu@6me" +7,~{IMd:5|MAx\+`pӘ C&UiԷ~HE`G/`U=z(NӤavyDc*!S[y5PvG`+Me1˶"GChY r<~*+XJ vn*"X ,xX{/;ӟg(`PeBlT͈R$\E=HG_e]ڕKάJ 0XՌo-B9i`i22CZ[k~_V^U*SLfؚ߃oRO5C1<ݦnCw>nFR C2K l+2m=\X?tFqr⭭ֳy|]7h$ASkhK*˹+:ȋ #NF+wHI~5klL)@n=WO:k-هj8jw9䭩ھT|n\7"<>-q 8N?D'8+9NH_Hݰ>]c~:Ѻ]j x>r{^ Z,*FQA/.ҬLV=9)0R1pD'5^. ,YqL HҼaہAcwHazxtri{ʶCX{oZLУKfNT'$!Ȏ0n]_XX5ne]QJ۰k^ŖbW]' T-IːrB@%o5,U2)n6"Gcشr_P@8$+ jx"Q@A*h5|U?(NJR7V&L 63#%ogBV CVE`B=l1M>p Cz8QEb6v!LWn28vR fG?F[ &K"Z>PئvI<-*ȴh&WF|\G [BɎA?_ {\һ Exlv Kcardi6}Ϝ#"qGfkp bqKyO!xq|u6X 3!Z{#M0=c Ҩ[G^zf@ 3\ϏGԿ́m3$+Z;\fJ7,VF@tsī2$piЋ8/tInnFm$a5ňQi"n_NBW s5Zj zr{fry4fSX?-"Ia=g3jeG޶T|>*3*4@pڻ[P$uF zy}8Z͍fmBunK#/vA{ F~O ̭gLr9 tIE 7Rwh[#IB6Ϡ>)#ot.cK@6^&%Jg'T ìX-X]ބ^V,$ "4hQM!垡 [{wǤS5RL ̜vo^ 9v|-SD*$Ʀ'T~ry`ϲ\Th޸xZŀϘYg-(?3LYlejHqQ~'@IːS@0_'Bt9K;' QSR 6}щqT7OF '/ ^Ob[OU3\9)3c6bοqWk*O T߼m&$͏|Š_|7dRݺ(s8T; ;G6f'$ 9KޓɳTx :%QWrw*$`Ƚkd˜^vG3YL*-ی3q,nʒJk믟 ttr[+$fuHK.F[bSlղIdT88  +:B͏Z+e(Jlt {E}͗=clJ*"')mgwxp˾sE\Fr"day6yb"f%fkSw?<8O W/oJ=MT3WṔ7ű;GUC yX&4Rz1]{L"[.+-`{B.{GsMT/P3ߴ{]BCp.DC>`SAݩE ϼ_Y:gh 'Wi^ qP kਆ ۇHד!2ArRJ4a1k}|I d9 h1,55?=+r:^Zf=OuYq'g6\f^XКIv2 K;QD+$vG.%|55WÒ zSk?Ҟ[aTOjJd43 ig_'ӈ֛ekqC]sE[C0'ݾ$[9!ZfU#8VMSk$d˥wJsް(~͕Ij|dwSBqO%ۡ::`kbldw˙_y.7SV SOǸњ.xoEEFƓqm3ysSHt:Y YNƾƢtUIАN ٩S/_4<}&uR\5)Y5 :MY3\Z/c рq+FO: εk-k |>Rn aϳp (=uGopVbг0C*ON͢75K]C!U5-.6nY3sO(%ťuac!ZM_;}r}0ñN!lntk5ZkɘI{t&(qM[albfc:\_9b0V-%gD_Wg?`Dn'Su^1܄Ց@4ҍ^hDGuS$ѠC}>jwMr}d|\Km A,\#xS1_Q6F_"2:; Cr?YwnvR"&w!Z)9IxSY%tᅟ ;' ? Џ{q9]k~5_(4ۍU/ޱ&𑸿:>/[VUQ~В߹6Q7[Ѱ^Ҟ hTIY{4Y Y9 ;w U,GDlFS7pSMVmP0ZcbrwSl*AVл!EO,{W {\Bƨh&Z]~+8 L,ue? BeC>#-4 $ٶ]}bh\lqyD*@F4Qt߸OL \,̈́-ݴeZ ±ե*p&xřZݩӄMGfzs;`T0=/鞙,m1\H, 7o˘TK= ,l5 F0ŭ: /g3Sg=g"Ol.8ESe7 !Fe!:h" @ *qaS1%N_0oK,YI1}U]A]mcЎ.=@9 j(fdR `~߃kGoo9F)$)l47ø}awwOa|ۘm o\.}1־&6"jPy͗^~;24R2a01pO.ZIQ"}򪇤 \u9J!W&@Nl@#ЄƦ79ILa%DU7LmTrr^f%RZ#9#7\˼/K3Cm $D0S*Sy8΅Uǐ_6_Z9lm؇7>(;g8XFa\k>U p1L".&Þ! 'l؀˦# R$9')}_H/Xf#k€jGUk:Q-,(X%D8bӏ֙K]Ǒ#0I)ahdPĞs^m{70ۣ̗plM4N~-VRöqQʢϪ=n#OCNowx4M9*F`=X !p@w(V*T KSZNeu9KG"VZ$Qz_4@ #\ U]!]hLEN7i.atc3`jnEYYČzA럥e ஢*n[|D 6_f8m;|u茷XW)b6PhAk,&rk 39>V~?m` Q888}??+BpO=rR sو82d :(ݎFܾ0K-hF=,dXل+y|O9Fq"9yMoOf*jv!y&za9 Yw |\=h|&ՠ={@ضSؾT+iSPl&9먮RP4-e"@"F[-\?sSd L]6@C<_RZ =V4Nʣ,BYbܘ-]*WARl}r q= eyXGHxZ7.,O!AP6 f>1xz6xr- f0fI*[ hv3~0sKU]-9n]{Uޣh},&t b&~9c;5NA]zD[_ t.nr$oI"2!Xv}X?n2:."4{%%6cFeRL42df(0;GT RV+~3v|`V5͞;;^%_忤 iw{.`Íg{!]{c>8sK666(ՙnaUƯ.} wkpEfy苁lA 9(Mbp $ BƝxfZ-6XLL@x:3Փ@icewlqI2 9=ޞaoU>d 3!kap1}}\ti.Pl cNx%=)ˍg3 6  OR8}f'0n_U8qu8Cb]s-Mo4eMY} *= 04E6R# #–fK; >ᬂۍY {K㕧`FĘ8Tev,ʛ*4lPwdAid>$i)>d*o\l_0m59sنש_8tMz% J!3Fe2]4XEV[;Oص'hctQcSm \[#Bt07a?7";*0a,Lp;+!a3C7T]_-e?Vs5*H2<0,G^AtOK!w@2qI3biTpQSSC:xڙ?yI:4ד,oaRr E_YF9KDgW^zTi[OkaA]f̌| 0c%8H`h{on&}mF-L=z=Np% Ń)7tcMZЖ;y](=As\NQ{isksSTK!ǽ1޽$} h WzuOY#0y\wX8Vj$\;J5GB `"m\$B8Rrc-;]g=+'C[JBÎ W^;ye^دMtze>: kKxǴ ( zkm!\:z'.\b['=(只2|q끦 A٠ͺ ncW=<'ׇ:+o#L@9(-S> P$ݷBIT}p^yج,4@ˍ_PdOSWǶ%:OKv[@ rqK~>6FQ _-W1L?A UF]$=#c.T:|lƢyXlfdO'6gheۿ8z>}'`,$hj1cGj?mG)eAbߗjM>IDKߊӖщLnq}s27fC_U{fq(C fUƸ?8 *rNCkߜF]a{j& xpG?ox+gWQZԾS޷LE.,F^]it b fqﹷN- ംi!ϫ`mxi* c'B'nޥ%[lVoAJ2'EYSޅL-[*E^@Ɋ7@C# _lN|LY uc<&WşqѨ\ް@6Y[@.4Z@Zs C,y3 W"_PA%ct#م2;GZƝ.'%T2%%O y^V<%m uނ>ܕ5Jy&)9zؗV)t#*@ a@lS|j*\i97## D&x۔/Fԯ EĈh\#l8W95CY%?RZ Cսvxv1dYGa3#ѕ(.WVibs2= x$ }4Ck5 &W|7 v/2}jA @gⷻ{qQbW a>{ȼvPEY\רgl)PYNt yƋpq~i,厙ʐ)Uh!8`نY7{F>lb@ܰ)"qO82Ϟ7!OK#j_55;z v|{hjr Xwb|2',P;'L=}h&r|6':X5NSgJ o Bhsvyx`x`h.0q&di- J$?xz;C~pJ>QY84s/iFj~Lq#@yy3IǷph#A>Mb.-^$h<9}zNWQ359`+ȣz }ֵ.-[4J !m ͮtur+LnhRXvlYQŋ‹+,PX3Գա 58TyH s,I hVA31Ӝ:xO˫>)^l5DAL)>׮d`E*X>?`A!ݖ3f0R˨ԛeb>A~zߐȓ1YWe(5X7#Kɕ}W0?`\ @R[s\ylH+e~LA>XJuCaS TYM">r| t_%|k$S u@AR-@BB%{șp^"FDٓ( iw5.g",=MlᬭH2mjVi00*%At4؉\1 ?ʠ'M,vϤ}r ҍ50(4>WxNNoPMbH&a3{LIg; LM(G5w1*F16<|?|s:ib5sߒ%,?t!QbK%fκOi%tf=X[ \X3K<Z&WpX]e %Y?^nNCr\ƽlj2ɢ XQ\5CӖ fO铥z|` @r p>Ģ%*>qalG(qw5޴PPfE4=!m^7!2wv&fR`,_E~w= B<a>:.R"t\I 5?TL4 z 561#z?6`νl4ɴ̂V=5&f K;hQ `F WtCP^bjI+pX+}\ʷ`u{.# oѵzX`4@,/epO脚O;B)cm}_$_ ՀlHD>׉r%Ɇ?47ބzsĕLB!KC{cڂzu4I6b5X6N;qv|,Ose]ŽP`$MCV!woFCLgT3A9(x! u=8-Pwͬ;$b{==LDk^]}g~Wi$sW _Klld nW;?Ė**BFDx*\Mǔ7kČD"*66wkL02/4 p0~ 3;xJ"ɵqOʧJ#8OɐhĄmwTI n*Ѳ 5~t7sxDɎNzɣ mlM~@%~ʚVl,|h^?.Y3k>QMzP _u+|À+P3ɜ8pgF,Vx/ J_H}%zW~KL'l"O^60) Z*^9e~ŹpO)&jc}% S8@4@mt}.r?ǗR>kDf!N\uѹrIѣ:c\QAg)AqM>1E$2|Uw#:$Oۧk2|6^X~ŀn u'6.[/X\D;pq[|nHyp_Z D {av$mϮ"4V|JlFz* ׸`$>EESy a5㊗犼k!tp՗ox_vc*,%]?W#2ҤOgN/G ümDP=@Qw̲V* @J^b[𲴫ʓZ>rƐ-RS/kTOmTþ_3 _./@=F l8/Ә p=#ٺppc(c9M:*a)*n1K ζ ps/M ʫC.3,lYF8!vyg'/dn;6|ޮw_JNՍN"ePQBB+Eefe}:ޫXن c`6`1KA-m[@ڡy`ʱ]-VnAi⦪\!v%/[G|}̣M 셌Qە )bֹi%ô3*|[G0-V<]2̓ڑD SJgow]Zo8/!ꔽ3bSwv ꎰ40 1+U8`tڍXY~$]{9\\uN'"7/F1-뵑\C|@Ra鉢ڎQeJ< ^,qe$ac8ыJzml("?4 8xIjod\n쾤ugZ KÌu;zG#6p~u-$*t7 , jYf(JFupU཮hs+)NfC7d\ N9MYva^E'h 8ͤ,lB+ϩLSۃALn1C57A/LL4Ox1x8YTؠm;34prW1y}ָgxq6@5Fg[zNx1v_!z'ѕu?M1^x׏zm^*b\)y:f{ݚÊ0jf. aPW-0ӍꋁhW8(-H5H=͛* 0:e yKO嶓i:z$?T8Gr̍ԩ4tjK?2Z(jov8qxc>(\wΧqc7s$l^l 8pd?XjH\>1 7$2%#Ht@ Q(foLF-fgCR?cIxTcPcߞ֚yiJ;mʢPw-mJBFӽCm,?k,I|pkh]hW,N2 4>Oƀuy;&PJԃd߳JjE*<ݰCz%dLuB˩fkX?°y@p*CEK'1T:R U%NsJTr~}X3jzTZ8%|>RrIAI lD ũtyOC=` (Xp`*̥Ij}yHҁԔ+c#X&Ʒn"5}k628*H3c-]vMmFj ∶l33YCHc>t|@< _1̡r -?㴓unr' +q'7 YVI:Ifgz^]Y5mdD9$>Z"g8sP,w@1uhW@Hlwhk)K",M[b>}^l_ aY6g1$?_#O!4Ab1 4h.veAXc?i0Os*4h>\;hXk_6ڐIl0 '@;ǝ$\1g{c@S51cuH:~Nv,}{tYjH͚_vnlXtñN8߻9'=]yj) 'j6W'dEFOjUp'JŬ![t۞|nԾq ؓnp ;dNRb(zZR<$;?u4FPf~^Ovuo;g)Є5<87A;֔\TI׶p{]I#1,UlJ 6$ 1gE}BDRVyO4g6,͖p0ak}$[Kj۸PUU Ɠ!(]E7vZ%$CЮYfAf!{[`cEbT?ndT]nWAP{MeYHrj+2*C` ;3=\4::&g6&)sgJLn %"~#;(eͧhQWpcg(4!o(f2KiFTZ %4 ѷ1d!{~֬Rxu%X"O.nyHy\ic\Oa ۈtLbmöw=@\+c*Xu 7]˕*sV!*qQP\hiXY[Yv5fed` \o"0GKAᚋe܀:(853^+wh܆P(ZN2 1cJHR A𪹑%vFAnw-,D4=/?l,C!BD<Ӷ`( >l[I/ml"[n_"(j3':A"jd];Ik1I^?xT*_ANw6*bCCnT&%]]ZeF#Đ$ֲ:t$hP)lL${1ذ IUVAiEUeB-08)EK`HoOb:ܱeCa OI;IfŦ&•WB0i"/k0Z}EeeݟiDe$|*pTw[~5퇆TY)a/3~G먫*<ACk$޼niCw=[z8LP \ѱmLX}ꚅ8X;@H(@~#t jA F?[ g3IKAxw4@0#zU-(jjBSv:N)q8xͿns9@% ϧfvgum졇Չ:Ca4Km'Yy"_j-6'Hד^s:WT}ؘ0Fծs"ʡܲͤeE`V"5a?hA6Paṽ7{3} 1-9$>` dFX<ͭ3ս>sg|H]h험BgaƱ~SwnDb:{zA9t-n'iudzGzp ZFܧ Ǒmc1K6G`.@'nƒ*vǺn4qNK:-E|I /\(lXJLY,YC5_{*FNPFbI_xa;FPo?Ԧ~ 5Q WuՉ4CinG6^!]_"v ꦐHǥ?g0BUbݻUsԊ5r I SiI? I v7M P~xم^8v@v8ӹ% BOn3XSűs7(R`ZMXzfN bC._!e7#0O [7 5`e+K0Tqw6gee;ǹ&SZ>SOL-lYq Rl^4 7F5}%uiZRk &g Pa^6 8kZ9p{BRh)x0 4fKL5u@臖 qrR]S8;ũڿEaJyl<]8̮B]+͈ZSB|fOWħyŝxNE#F\ej|`ST {i,kAr. [MF\%Ҝ}G@2{:QviɨX}AOE4imiBvkQ6a!y)~  *^L4[Ԓ&4s,U-;`ZX3ĉg-dp\i)'*BB^F@H`lSfEwrXDݟJ{ds+fkUOʊ zoUV#Z`=WsSĊO [La魈!9Z9?rǍo/S47*9δ{AYDVy([M{[Q* @A`DdQ48E Ze_XTÚf\| 冯SgǢp&CB1Zi!u;p;-IZC|f'f v^jһ٩yU}';ʀ-H ;;Ze陰R -$Mjha%%rjBwUDNy7=)_S؎ ̅zTJ0W٧bv#_/cȂZ8@zȲy)qϏɏ'V;NVՎg)+݂LC&>e|<œ;޴+=DT:%[Sh>E,E (~<5Mr:Q!n@L4&&:Ek- w PQd[?Tƙ >Tc@ ˧/:@ Bt&%LD\,oУmdv4?X1$,)'[J}o4ú$_yZvPLO5œSO  +F{+SV,W6̊OП@KYfٯÅŤu>HZ0N0xAX7MCg4*H(i%V C~T-B,%s?B.o2%1J[j2؍9JYUњ%:|0!}6 u(5pތ%{k5U;r\,T;ˇ{Zƚڑ fߘ\:?7oea=t!c߿s[H^M7ZWJA<92]W"Eʀ;U`4VhN$a  ±#5T9)oOL8Z,#6$3S/?q''OҢU,kׇ(oq7dج-vlX{R To&i|ln&oհ )(D³pq,)7ɹ莉OGN\UPz#@  dtqަ~3G{C e\x6N'r+ V'_duK*$z{0ĈJ|l[to9h#|Ѣ!/6KB]w>tX(\!d;Gɹo\~ j_b {mt< jQhdѦ`_*#r<sN`~6yl<.7?ClF81^MaW "'O  #Cj9 τUt;"ɸR+U*N(zk\6ȧ*!Z sݸv8d0vZ2NDŽ\J|@^qG׉HXC[΂6?AGb>^K+Rr<}w\Au{tyJ)#^Aie@RG$kQwXqPx>Naf;N &ū S?VQJ1KI@b-׈`:k'GK ryC3< q`;ƟŤH3ddlrhA`Fo$x, 5F"3=!F1֏q>m\/Yr"xr&drs2'-c>DFҮ9̕8_Uhi`AaW8Q*z&>6U(,Kh>n1_ՠ,0?ȧRbn2ge[ۏV?,M g\Wb} URd# I[cΊP\& |}r/xMA~V! N)r㓾gqj^(5KT uk&pLX^+8Gc"?-`gQ0=l|i\C﷮|sBc;W#'}noԋU{=c^S9%?"['(Tyl^@ ,\ s<^bƉA_ %/X\j34pc27-P.gڠekOP%ތ{МRnc23=kRKav\Dhj? ~ՖuӈK[qeff<)Ƌ[@}+Dj%*wYqt[x9ZH}l#lTxTƫ[FA=a%{lOJ<=Q6NVV)[ݟ{Lp]uOJ;HDәM5&kfX X@]0RSc y&"1!4ϓN *ndPB~M$7ʷ䤔Ќ@+mp4mS.tCR,ص\Dy/3(ˏjwŌ)D ZNaǰEb1gc%'Kpn /xz^vbBA7^Ԣ@oЈ JF ̷v}/\VB6Upq/rr1s~X$ϴ> C8Zx ⴏ%ZsI]ZIdWKmr3M Ҷi]L0K-3J Ye]WOBvf'B]eIY?O'QsF6 P&Ҫn/6ϯDTwi#,4Erqa?0gͧ/ICX+"9X~`_r!*‡#qODpD{-h$D㋀e0|֒k ;OD&q'8}K8Zo6`Ks|w Y>铳Q1Y頲e[b/篓m+ޫפM7G[:P.ƒ 7'UYi\ e#Vp['WDaOp[_mE̿3>Mȣk".nZ_\\ ̎(3ڣa'n GIiУ\R|1a9ڰgcUBϖH҅<烇 bt~y@ﭐ ײdNs .$\Aӹ}n`˙GK1L7)CbӬ Y@rU'VJ%}lK+pis֞GZjz0|ʗx^:b1: zmǹ9Z& 0я׾( Pn4X Ӷx͸ڔxXJjikd^(.h5ҔTcE翦^QUY(. (=6ɟ[6[76=hCop +m\VM9IBf<| oPȁXH8+qvP~&;۰6%m #<9a5ZK3h֖^"2IPZj {v11\8r*qC!ͣ!JM~,o`@ʻoht{yo(CEFU[!IZ]Jt^'쨂x+ufoAǢ|ga-f]X6rc-+CYŰ"0x#x:M lWR D hA]@^ [hp\v4DOpzQB.Rum7nnSFf!w|Kq` Ldt*_E<*+u̓>Z@%M|33<Vcl~aw_AMXvP$/m*1f^D<}o$"Bv 5m` -^q͑iu9z}ʤ#[.׶>%Mʆ & O4'}qhzy|RhtV^"q)vnB(e?M;&nZ6QALL_֧+ w$73#weW(La2HnqQk` iCP$-H)=`8E)T̈3U=uQpiS-4ނtC YAlAٷk8Q+O1,=>ǴTG!X3d栮miIц CwWƒF,WRr+ P:twD༃˽ ktY`4 ͛k)~皀 YEk7X&dV:b D-}Gˏ_qeWQw@r{O[#jF$@fC?ڲIs]U&%:9K>úԤϝn%j +K)koF _GX-ҝaiت8>y_ k`=Amn ӡzR _Z783m]Q=#} u.[N|hNVg|aΜyWPhv[ԑd^q:pCcU< ɐM heH'<-GzbTHP<4W;Ԅ-MgSo!?Dz9jSǴٕ7]yP#QaV %/~3>WZ8y!pR_X>fB nWxEXG1f 4I1}Jsߡ=t@' +(q#JE}I; 3/ 1.}xQ7Jʹ j`EMG3L*hAais 2 X!l  b \ _ggGz 3ғpa`8GɚIGD?aE|l)fs~'ʫ&J̢QLYdtM0o8rnAOJ8.R&fp+ eCKɃ2u <֝5jZ*=$$?FEҀ/7mvиcbӡDciߊXAEM%2ߩ/~"^r-CqIq.Mv۵9y)rJGi,x JoIfE-\ËE(NF!BAC/za@Yŏ>IM,MrbMcũqKE#g $,6*]R`lRE1^.brj(,DD ৞2LfհR"&^ȯDZBn]侎lRoZ]Ǽ$^jK$^d-U˹WxP#0ٲWCu>rnSS*'p2,3JsuN tH4Ԛ2zXkk0fQO\he6Cf1Zy('_2šHl~d+kVspن/4t3J~#{u`'g<鱑uEi<#ƹEccr;s`fJV`㑔zuW*ZɈS =u#o5 :TMA]A*TRԏhՆ`'DDiBv&/HܻoQcW%*[.nHb@퍗#3>dd&Y6 % <2 6F3fXA弗 ><*bO*=^@0<PU쉔s%.nq)mqOhP9`(zfW8s|/k塪0@K"?Kd6kƙwKQd49mbD.Y}?U'8/:k7)r3sN1̶0-Yh:<|cE5*k:'*ܠ~#pݵ--!>W骨yA`BMY|+l <2gp%^Zѣl䯇6X(~74ޢڂ7aW:򩀖NǵE$qӈںwZq>"(wƶvr>ؤWx C$ڃ]u2-.ڨI=y~AoL0tΓM-^Dw&X,ruTjyrOjcR2{e.̗粑H5=*!;aj|.J\2Nފ`Q'XR,xm˩97֫U^`(Dm)osbtc| Bb\nI1".!j4jK=DV8>eծk#D%8 vZOWtΞtx:Nn056Vw+D`plܾL\V>Mw`HåJv$ , #@2yl@9[9h1~'ɕ> FuT&أB#Xo!z"S]瓪iz8Gb]w2J^0`U<ƵrJ\SnZ]𫒅aXjrKJ1PXʓYOuqS6a0q@.:rꆈj),tv?pvŮ#L˘ B _>a- P8_# 2\TC)k,)4 u/˕#M]/ GҀB+GR.S$BWm7R3r9u2Jh*ͤ[&{p fFҧ_R}7dy%ky8' 思  6bW9THg Uj&qR\AY)c2xaRZq, a^FG& Ң[5KK̨s`YӬKBlTD=|mTwuVj%Vd9i SB͢l><~.# (̂%^M+BkYFY0h(`6)*Tfx2nR@/umsVN(}>&?@}Up^{IhMst>gmɊ=AEJb1=&z^:^v$B^EE K3Ba~TaPvutNQuq5sly]6&>e\gA9tL'.hP%=X,hHpTHƧ؇ɜ cc_(oh>/.<-0Y݋B:H=9j6*plFfSn;l=VAT @{%1`_%z}}vk,;p9ĹyZ KSY T}Gj*V|.TzzZ99GJяmoݫ@rdYfRub/-&^K5'[gQ7s5KGI.g٭Lv tuû pI{l2NRf K޿C) aE; MOhH>RXr\<^_U˴ϖBuɇQlV7)#ڞR `n.49 ,t%elM,C*$ECqD_KGK?C `hg_o?÷,Pl@kSsyU Q/BX'˥P /ʗ87x]xypǷj݌Ne"%{' {h$Mh߁(;/-uH-i>n ݿbphvT v0R.w9C߄HRa}PeHPlK*qWoR/\!Rԋg@ M7ͷA[3NW }K,<Z^P>FuUG,cLFRk4ŜѴ7#yI #BK1hsJ~0 V EO0&ٕWߦMb6e}\l&,bs+Tdr(ţ`V`A0r_"}%sxWQ4\vJDT .uQ4@ 'HL /G Fbf3/D_v 8|SLe)͗*.Ej*08'kˊb>#M@ {j J9ħ4Bz/5E[߾ҡg0bm&&t%? c}ރ@aRDii&]o,IC/Ăh+#`9c0層}DQ)OGj*]j' LM)'՜[pg1^5v`Y3Vc>05b%#۠\c&CUBhƈ{nGD>xF߀ٜ [M~itAp$…a]f}KcK/#ĒsJ{{9K/i Ǐb.:ݠ/s;@E ՄL~O4NASPb:U/+`k4DQml?V8l% 45{+:n_6 gU'E=xk7~]*ץ pL6?S6N)T4mLHѿg/SV'Blyںya@(}q;l5C_q15PGcFfMRL d W5uFܬV6G#`|I+.y6v=;8MV6ή|@a &+f;knɮZN0ܓkԖs6$x/~8Uy՜wf6FNSҙ6QHŝ e]zw% wp X'Q&901MMO&~;N6a湙]U_V #͍뫍zMudL|vzw rDDX (v9swBXKal 8v]ϼYb|h;_L)Zp-#n }xo0d;Kiuh#˜[ L]g74+av,}WiԜܩ9 gdt^Y^A`ޘQTMOl>yx1"k؊t ; `:F!?0TYٚ_r6C;>WD )]~5xЋ@帾yGBWDLO 8zژTl5SjWq׹]oi ae,REE۫g͍zBA!\yݠhº 0@K֘ºSl1ٿU'c,@4XNqu&}X*6۪.ݿHiGXf)cS+W<`:mCm7BO^6~7E*pOAM~;¢;c)f.PKDڷ> 萖7M^>,j)cY߱:0|彸zhfZ>__At%zэUO䩪gQi&dҙ3w [.(Wr. h=F=T'FC$򿦳 0y  aego/^:$G~.4Ƃ xC(nIax&' T-7\HDy&Ņ2p8w%ȕv>l`rT_4Hi-BN<ȹUɎ)抏0(X S!Q LdW L6Cg业ͰM9~g*96Ɉs<æhaJ yFR cOz&([$ê *b%"y"& K%̙ v:`tm錽 YyD_HynajyZb௃'dG.cw﫯q_%Jݿ8r,"2T=C3>(di|{hVAOqhmcXJOf;t]'TXp5Y d :/aR_MCZu+U[sTP覗od7bҘxhDX~%Iz'|̀nշ+NQ q&mFn{6|w63LڭGV٧RK],7N`,؝AǟTHHBW5m8%Y'e`ԀE.Zm (~M'Xu% |F+L_ܸ!0 4uxd@ MY4;@dÓftۃ .5jL\,-x NO>WS5lb$q8m_dqB'|l%g7)O"+$-(Sw"O8pA]}=VtYN\xwdrG^6g bj:mގTllnmsz f>b~;E'*g˃\+eдf,.ݡ~ p $S+c0/K;fm *M0sK>@!f )U?NM^N^T5$[ׂPs3#ӏQΰjWщ%vc UMR]f pՀb'e؟ry4& 0[U{>g*ύ.,:0Rbd燑8}IK2 =hN$@l rrpc7I\qjNk7Ga{5DcfUW 8}z;_PJ(nh}<}~ھuhF{øR)Vxgr_xB0D{kS%γbx2h|Zb݄²UQB dlDӁao iʳwsu!mWRɀpmɲRQSbv#12^{ `9N%|0.:PDlj~\X{k &: A`c^ddJ.W~p=Sb%G%{ݲaenUwO2vY21Bĝ _"5vK_ytMϙ3N7h#[ID7I7&%=1箷Hj'oMKGй$(-Y$<mত&1 9!1=&ZM{6V|Tk [ZRyQh;exFd‘-8x():D9lΖY,A^%)a=VvhQ K4գ[ J\J /k8aFtVeNVZtDwD6AUQv^U+.7ݐ^RS!Sje5xS y&i=38rMaP-̮vK*tC:4۰KsW-X]ɺx8$<`O X/m rWR 3ST"^a=ʺ ]+䙱Vx{ [-|)3k(̯)Gs|}+)%ѲYaD r6lCB+ _ O*aR৳H5Z/ٯB}f,C".Si4cc^Xz$*iY9']FRUoȲiCptaG--j_G'g s!&u|B'~iK)I AסeʝF06bcV 6\HN:vߗѯO\ 륻_#}9}EFT3=Пn KmM) 1\&@ƩG]E+q?%_2`fY-kNKwk#m!BOŐTB8vUjsFH|H+AJtұ6rlj/C*q:nT*:)ziS^:*ha'7Ic&ڦ 6goz47{%yMLF‰[["P`Tw8/Y{TN);۝ ~Hް)("{Ɲ=[@]#[,WT}dϿB~ꋓe>V(B֪)26@tkfĉ{i*44YVTBHo&K5wnW#&?Q'/oVR.yւHnQMI7AX=;J?GqK߇[oɴrIdnϹuKGBIXzr@ M4Ge[pպT3ַR8.|Oh1/!XgOIرWԕ}NĈͰ?4nqmқ_B҄ k@ߏܱPJp1ڙ9?lcvB'gxff,| ͤ2$^&_izNESECB{׌eŧLeτ&ڕ,A`(m#!g^C]ߖKjf0XgM V[92J>f@eoR`JfxIVO5GKVaQ6-~8Q-i;!&( /xq4f&}w?p>ِ1/eL5wS:yF;.$BDNON [&י-SE!|J ׅ7 ƺv2eLt ň_ J }9c2F OC-›؝ğUdZm, ^벳*v(#fT9Hφ ͪlx>w_y wx2ެNx $!qjU~${G ]LyI(?̡ '38P-% 6l3@SU%1$ծ:V1E`xź %^OR-!+:RRn) N15 |~e.:ďl%< ?G;7@i+]J9r+fƋ#NC"H}4F8ё}|(,^yEn- Q ߛ8D+I0GA@#Sf+?)#q6]acKjj\3ɰq)r۩YcfOb[?y .){K"kbߩeJnZ|޳-h"{I/wQ=ddngGdǐi%Ggru[J!& E:R6/ V=TUfDaM9|qV 蚓zBGѩZUt(T2RpE_hH r;ZPPv^`WWl7$;ҳgޤDme<컋הs"݃qC_k1y}GY,S]̖6ń= aL2F.VMDP+2[ )TVn " |c.B_'VqؤJz8;VIcujjxcށI%kҏ` ۢlΪMsr$$a=)8cF0n'I~#W%)\T;S7hcHاeso|dop 2ZK}]qg!=b{$h3 L)Vr`ƥVeKhx ]$ONKn.Sv["ъ I@&C*Mv$0ȼ%>N.p [Z<-PNv{tUz,>6x:yF^(H^ I`vQFCݐ'H^ҖQ;G9=qX:,rr?83eHCuԕ wN4cRHƮn9GiW'h/U!1x/T)5Ҵ I=M=tfCq#;NFʢKĞ^$vwib/+C/dI'k0gbOOC‘غ " ,- w }%>).SqO-&xwzq=|\ҷm ڧvAxy弣ҙe heI%ˀNαVmob =G<{==v-u!_޽z(Yhe›Jx۲Q=`uXM'wR L;!toj@[!7Q8ڻYF#Re7N|W-J"̤c1]Q <*ϕ41]{.J/;Ǜ Q[Z I4"(0-2(hV R ?]e{h'Bo ٦z43?0JXR^ 6X2n3^=ɟw-ľ"3Õk;Gt2icd>N\a*H A^5moоW؜Z ʇ#ǛjjPJFCPM[uhBjWkC~=JwM[ٍTU^QhM'tK7lŒc/BʠTNdl?!f6wFz Sӥ ״Nu}{%/e@.0] Q'L&ڍ bt=rd7mjN(_Y≅X-i2;A-qvFR`{< #i%^]͌̌$9eD8uW7V7n | 2 +_G7,nڴ' K4/lͅ=FȮe ߔ@SPfj"`UdBHQ{K[Y)Vu\`Lg h2{S$w$scRYv7)9htM0giD(9\`S3Ӟ״}.3DAF/1'^[ ͅZѳ̊Z݂|g `8}jE d(js5fFEOJ%)Bwǜ=FE05l(4ԪиkyCp[;K*"4ucMd Qc' cSajP~c׬Fp6=ni\qs|27Q&/sU.M~(я)Ի4"w)d*D)^}*Բ ^og+4),Z# P򴹶هF7ϦH@}ФFzdCsZ>S_[,f),#)3t:BIg ˾y8]i!)~6p~ h@: |V7+%KN %LZ3#s,6>] 4q|h,?L݁^afq1cˠ|ݕy,^$"LlzIԖ9Qɲ/Y yq2Wĝc.sp@V k1e gFG%,jl2Re:,$иXr@*/q컸 IRj*wCiijtEdM0),q^:<1V*c~SWg|ѺwtVlP-o%O(mi~Q֡Gey`4- ۱O}xٸ@.|'Qu;mT [/#Cе@C_/eJli_7[p1"2yWoJ?Ww =$FxП P+dRdK="4A\:LW\ ./y+&, {lhEĥ3WIpPiO} &ը bb*Y.eށHi*WUUSSMi08bi5Qa]A"IoWN:IK\d6p#6'G/A#,a>W璖O2 y5~ҏ"b1PUZ d-7MP8,+8hʢZ/kd=ni1-z!-Ra)b{r8;OTJ?G]vO#>2J2BZ&3-Aރ oAxJS><+&,2#@$ )P$cMyɥw G ދn@|יq'9a/Q(Xt kMOS@xI>@}|lɫܜpw6j~Dzл;h诶lnpSOJi|rGXfI w%R~xK?#O ܡaqtmopc*}m@DMFZ:,~T`hN0x8ZKb:nhhѽ=:i ~%F;B>߆U&`3&6J)ԈV'0&WzvqcY RLYy ,8 !E/?v89/k/EO/d9~E{hC/A@+m33‡@@z>i7B]qVz$dU'(.cNhOm9'jE$>Mci猎J@dՏvnp;<#d]5>ܡr@\ at@0)LjJ~Aݡpo*wrٓog.딻Kk p=4cp_Ȳj (Pa{kFvkD@]+4 űVxI34.i\4n܁D -:MHN%*}Y)Ey|oڀB?$ΚB A2dBGsPJL@Jzwi.'nP{/pR2g2MJITa~)Q`؁$zk8HdRVZC?X_vcbL$9-zrhuӦʵD nຩet`n١[63%2su|Ȁc10蔷j$F'3qkHK_XUq.f{ݎCa۬m| -]ͅ M)AU.Gn7U}[޺5q AbToC0nTPbN1Ǐr5i0'R|03 _|da$~?M|`|9(Y eWf(d8>Kڈ-F#$3 nft7`1'GOq%ܸ|gƺoOٔ < (ef:NS9 kqܞ6ČqAX9pv4uw>)፫+Cvt&W솸F#B/;IEeRxm7ftí4%X}S5AH&ǭY]2sW&R2ǭP+Ԣ9hԜW ς(W֧fWonaH"mݡԬ/]xgӷ7!TvF@r AA,cTGq<>lM)BOLD$`4ko2J曐]!]A㙽ޝ@,^ B!|iv{](=RuIM(WZEUtR=Impt ' iO%6uP˪ cMG@4[ص.;gr5p'n\hX: 㝣# m BG}0} c@ pFj4h6+`\GZ /&RU W#w=<` F1v|`h3wN>/",mLdc/jj.mn@\`AɓŜ^^/ Ef K_6 0h %'% :_(xi/% Vl%U~A{8}/ɰ hZkC .mƠ'tvq?u>/[s9KDGJ c w\]v"dQ5Q 1f@wUrPٽ{Tɥyra·̏28F&PH[fnvG1HLў e੗NFy;}{X uډ0PIT$Ǟ;$"1\[z9G K;vo˳߸?S+:LA uBk7(y0'ӯҎdW8`:_/ï>DAٞ3uBN&ȿ- +9Ź:-8@6#ތɲq`͉FKFEtqfÔ""zGc|),"N8&I˫MZYO[e}KX;jtt4U꒘1 ~elcEC=諗Q࿛M`;7Zs4sne9wzZxJ1A X nv2cB#EQUd:B;6;Ȍ 3wz'dl7ogl8oБ9'ABthwD41t@$* rKG!MnM6`bìꇧ%B1٨-Y=hk~T4)|V~<T/+WȮ^ⷯa)ćN }h(Ϫz  /.m-=6Z nD_0D_1S} }[~„Nݻ~1G3.(0gsɺ1)s0$p1PpGwS^u.oa_)GOjQA<PMȄ˜6Ѱj}W#Qgk/l;hH4I]V}S1pT_g< oN+d$0_!S! }Ab|[OJ:JZ1{[*>tÆivPmF|Mt;xIi*Nk0iپUZ3hx!?C<-GUOB;r e#BJ9mt%(ޖbAKsW / F --3Ab/7qdwxTĨZOC_Z41=[8/ftNZlgY R@=QMp9~!}ϫ,zLjU=y[No'@M3 IW<w̩.괛*KGc"|قDc~.7u2= ٚH;QΑ"`WRƄfP=H@ɾf],jG𽩛 em"-6(|'C ǃ-Ʊ)v`y{JHNzB7q'}"#aqQk% Kw7xcXMVKf;‘z|yڡM+.S:ڽ'OjkE祱g좶E7V-? 8ɬ~ESRhXv%?;PlIIcT,Ѣl0C L "07Q.h{:_'J=w^@7Tx'Lӿ`a@>h֢tC5>%:)q" { -( |]N8"Z03۫gj\‰8O`$g[dy^[?E-R++6L}kxVcI-6'kq7"yt8 Pg1 JK b10C\>\hsw. L`AX'}j6;_YOubF1B^ֻYȬ3) F 1n"{|^*ZHm{ܙw&Ce'R雕`QAf7\mtM=LW A|u4TkNhE6vV`{,#eȷwbISX)x}(FҵH)2"M}J_aHAlt<N°]w鄡HA,`uYo㾬%BtV ~dEd~siZӶ ھk/wmU9qK$< 0ShO,w8yw⼥CI!k#[ Mڔ*:۸mg' i^L F$+y:AI '<$PPXF hRXTm(nA4'og % 3-CA"7`@c̣B8~ ,F$|<`$1-2ZD+Hpk#M&d3 g~s(+^=D o%nœrhz~!pzzqu4ޭ')/}Y$eRtTkX6y&Vՠ_v)Zַ1?+~#4uS"=z|5.ܾa Nx-4MgEU 5߫W8/K.K)תe5Q]Je5fh8MHwhH{rrm 0 @$qV? {PBīaQ G\H߁пE_TJk|AJ ת"V38;h߇"2 %A;$V o;y84 }|e5,{ хߴI2-V|@='L2lW\B,:ܵR/d?f*phO _AP,e4ot5RkՕAW6%̗N ĵhp7<Ԗ&}32@8i~ª"@r*mݣ qf\ VDk' }Dr@>N2~OCg1d&Cʂ,dܶtѼl5 EAn?AΆ7K=etn/S\!z[!1D_2>5''x3׻ٮ3Zڛ,=Y{@nWKr3f|2eoDׂ#.^pv \ 73~_sèC4 P񶀛4uWcɷ4&J5meyQz s 1ߦHT@} eG EJ4ULhbA PY+= Xt$v+ZgPpy0X a/8`Hf|e2:5&Y\=޿C-ߑ>1(5K/dmbLT wwԮ@W*~pQo%M'1.$FGOkWJPMz*MӵCEhq1I[X ɹl-oWNbugϥ:Y z۷<[;MF)tY8LzHؽ5 6tAc_إuxoEî"3ˑRN2>:&Fd7ZyHqAF6.~'Ҽz =~\lmzt*Sl`e?K\c$C EY.@ܞ_6MݰrL v/vPm3ءi(k\)P#ݖ@"0T `֚5]J^ݓx(^~HD{\ZѬY5eNtc~<3}<ȹL4 t<: Fb$]ihڠ70q4Uk;w BFdt UDU% S`ԩ 4} _+ecةC]gՌc׺)ɜACO\ܠS0O tf&L͎qj5Uh&ԋF2S`δnx ^[nj.8jIhz!p]屘6l5ȼ0Yl`D1 pPձYhՕhDSz-dՌ A" V]=CDהlpOz@;<'?t>1`E w$FehSAXk7-8[1 dgKM+HAbњ{Rg(icUCc7|cၵŧ.+Q`kBaMxurh;ۛl]F(Ip'JtɁ-eIy"L5} J~V6闫&l Ë_ۥ+|kD2{OLah K2P7U!X<{N @Da(ٮ+J+:YxEٟ̿kn$O*;ҦP*J'b$RWgɕ^őxli\6âC{c&5,׸Ng*)eˣםXAK9q) 4Ouv_P\ɷے:@Nܜz/ 7XnCVl0?y(ͥn11'q >teAR]-ZXP]tFsNEuV=Prh.x@N<wXYs!g@nkG[kF~Y-[kFC/YBܠUgFR:>G9 }HnR1tᦢ4 3tsh6~v5oL؊@3d7,QwZwͮ%%s&pY0詺ZյJiEc$Q]R`%{>j')#zK_W:2Ly~^'/ybd=8񼗉mqY2G~w*.U`61![r .El" J{*"PnˇUJl4Z#Bh֬McRCބI?0. 5L#Л,yIH:pGd.}]:?`nd f+tlmGiw<1g[Z;ϘW9RX@`Q>f߅>{h@[8*Jʴn˿Mb[yz^{]ekyՋ-1LK+w _ђw FzP3^\ kQ1C5 U9QRXna>BJ0FFCOGN'+IvBB esŘ-BEGꙞeh_ܶoB;uP:_$o)a+2shO,.j*iU;K W.-ƄT7\{%v'5lT4;R|qEA .3@}Q'T,,i\}f3%y>1r!006F2=ߜ\,H.ٞ)$Ivv%9]ڬ]xfrϻfGIU_[0YqCvVJ΀<$fJ'@#&d7Aɾ f"Bc]e%Bj)MwLMȃ2T(Ku1*?B&HDFVȖ'qT.6-7Pj3n-ce~9|$u~ dXqQ˩(0~)Er#VE_ϔޜ$kzImN=(1lV-%C).HKm] 0|sq>&Y4l[BC%Ȃ61uyZ)j%v H8A*$O[v~֕2 }rT'.SAqwphc<Ь"ͺ$ ž)5#՚6tve4>2nqo)HpYjعԻi=Vō9>G._yB֜²>((Ri8#O $Hk6jaɱ݅ȐQ/G,} nX.gokcOѤk w55v2,!0 7I>z # ԰@2UX"TG/jAEA(GUA2'JEWk qw]13=ѥk޼.g~`R4{qI#L'(QW}umB`رO#Y*ڠnzI>B*2X 4Ŭb=adGy,3G?NGpp@5ʮf (#;RLD*p83& 9YLcFNy|e4V kj71& nͷvmpaiQqPsp¡2?",X P;No5(9c-Pğ$~>ۢ:+DPUg5Ղh斏)~o9`O*n&hŷ;-N.ڨWΉM;~%m7XǶjyÀJ=s&7dRU<ف_QǓ jEޝ*{3.g<n|Ŕ52sCƉ)I˷ P?>8o]]Zc?*nʕ3zkZNS`5K4ZWǞ?o#4&y*2&L-WoFM27 }'mxl+qJsx3Q!ԑq{rbU`7<}ػ-Rdˍ)@=iZ,CNsBrb}Ȓw YZ(+˥tK` ,Oh +>D\!a0sSnN,?9#ʄG#scauC ?ܱצ-7U~cCFܯV,}\e[d/( LŧF1mڙtqMzb|wj5"N}tMweosc5FcW`-)V\2{#AVTsr@>{G`. b1ghhpOQ#FUF|G"*[S<[qWX-|ܝ`(n!n =n~y%f)u(8FiJ"=ak_O6ԌpDAKKa:0 ZXbp3Fi !$^ib+ EUsוf ȶ8m-1{6oDciD>\|UW|^,غ ㈠TwNfO̙7Z>v>ev{%q*)]N16}֝KC.>+k$3e <[\i[r5Tc2I\*)d0f~_t#;u(N~xNE觽Yx{ː, t?n (ک<$7ˁŖz_s`76׆P\-]Sâo<:,g\3scx(y+d̾wnAXcvrKՍ0kNe)>KDij'3ݟ݆cC/ԬHɋ4FEˌӶ[짬ErYn)F7%!9 0`WfRLRUQ6)7vde",TaZf6N: '.>xeʙ2M+=ǂ܏a,#[Jf_=/߀5&ރ[+ڬ3lf$Rr^TFX炋Y3=l0+glM~bϱU=$rwM (#A6@sen~' 7@'0׆! cyB`((@ .hZڀ5S Kn5\JqXy%d'ш#0̯(4,T7d\aJԊiB^x:V oitq;uZaD| rMl:w-=xLu~VCL13&ZU9e. ǔ̽O^yx#^_'*RC]@*gM.^u{sK@/ +ˁVE,p0Q߽w~waN''_}_O]`$8qSe_0%-s&vS^׫Di[M%NK]}QMxg`X"u6(+Wnti_i0;!߉Q!vi`-79 F](aߝtVWbiI8LHSV6]lx֟k9"׫8@6#e+fJ< ߹IkA*H `ޔ_5zXQdܿ(=ҷ*Һz ;_Xȱ-ch}] @d:&Z$f nbrI {P)X›*t/2/`fy%Lp_*laiv6,>NwѺc'%:f'EajL }f^RdLB*[3lNXK:1x'l]Umhd,K(1D[7:vQV_gqs:|XwA; |. bڒWP&7m-zPT>鶺b⦏O^pG`E1\9u(j?u[)hm?o[ 1ޙ0pvcq_(Opr5u~8@ɦ5#)ip،ot>G[j-/s]ZORDz8ҌɟvLA鈃گ-gf܏vi0UHU))'F,/Ԝfl3PxH2¡VFAn HN.|yZ,"P VBes*YUlKmô |3} G]szIREa{ :푿Al:seUPOQ-)`ԍ?{ZI +MAKgJvg$Gj'#lr^OpxN]<޹_.=w0_=@A) `kD[" Ȑ>n&-B;x]v`?/u-hYl ̲s$r6D}Ӯxݾ=HEb[^3tهx7`}]2SL($B- lE5-wurq(T*W7)a`nێح6);h 5ԭP3,:5eů&AL9i,/Δ'}#^31^., peVY>U}$7P;d@fΊ,?Lìra]^G;) z$D CaGIEQ Xt)Tֿ=<Ɠ=RKCvrߵ]a?kƻU,**f TpfpHa5 KL%| 4֮lWBqomVH^+]R7;"PW4?DŽSw"JBk f?FQIO4CJt |c*o VCdXޔKי/@3]~1dMB /rv+JY#Fsj8Z.=%Џ Va16v#RYvFeOz%Fyv)&z`W'/bPiNDN Lņx{MD%J:ꊵ/7]x/?}Y5 Kbыr a9Nӆ;tyA3yK3L}iBWwos*c2VUڣ=*>>j U༂L3!a_y|<%!k|& +F6;xlZ+t18Ʀdx:?xmNI^ cE? Qxv ۍT.S!Cԩ f di4GFuդ1 wM7̈́,$8) YN(KdP]lD{>R J O*b0!_S RՂD[ 71Qgw%3Yϯ_<e-5ow|)Ge4Ad4ZcIȵ32IXXzx Б :/nHSҴʛw{p*e׍~ 1 ]=mAڶ~pR",BOQrX? b `QUd]aFYe0ݐ'YX|Z^~25Z] ^b~/J]Qq Fz0) ̳AVgZ*8214i_Jx#QEfEk.yyZféNR|HS a^F?K]Cz@߈vCY׬Y\ru.|}b $95] Mv_puS-UţS)QE MHBK4UGeݖF Uu]!Y0o~Xa}Ql\wm; ^nD&qL2~DC6%o:N]dj8.?h_n!XfGO/A=;I@ TGڧ;P6K;}a\T/]r,U GdՇcڑDS[lݹbU #"fR]Pg o^m񦸴3)f^D@F1nwh ²cu2(0uU[kB3xW1 ekԶ_?j$t5OPM:j[t8@k2}+VFmXl12 9k6 q eV9la xPvmĕ0dlw6@5mJ$к7Jfd6AFl:@4[Ha|1h6vQ` YrvDf$H"_ ~idBzƻrKTg6]hU,l3Ym %<"smIM`wk+TPΊH< Yh6>BAϐ:PTN dpTy(4~8V'Ji ߇{\.q}3g2וc F#Tw?뷌 r]fd׶rAq1b+%SUv.5㎄A_laM_oҿl-L&RN n<h$oo_|K%79?o'/C6G(A/a>ՙjWI&nue/ f@RF %ymX4иZSS~W`偲Ƙfћ-|^^@8+$y1lpCH< l0IѕyG 4 Tuj绺 uGINIɔ#8z\yw'<:C=bhk:mZO}{ayd-_@vJ>VS~"iΈ*&Yo 4:58%k.,EX8AݻdŰ~bɵj / wuH4 3N2jo5-q(q ɶV]څ׮L2p55{J4)7Ft_5o\T UZt7QebIiC4pGM4bd 㽔9S4~$bsnKώM?6hv"ORS}j~ô u0-indװ|a!jfZv|5*e`en5igFT.zUO}lGUrh %B /T{0mݏʈ `+?VӏyI79JIPlV*Y?;F>BMԬ^=u*D>+eѵSO׵ ?%3bN%!ţG <8%ؕ'qj- >,d?ǯAp` ߥ~bI,r,u rqښŨKa5|tj8lU>ij/Mp>.@x /]b/xmА|Hᫍm3|ure?u^%\wmse/6}hZ'%vg -N-Z\kվL+3y6kU!f$Mv" *kWF>%EQns;5E=YXS1E4KH" U:;Zb{zJ0uL*=`m3B4wD_b0? H#^6n$oG|H?kqhB$؀l; a}Ҵ1iv`); mZRq&kFmpլ\ey9tŀ\ ;Vxn)nm2c/Mh4c6=%,V/,b27|۵1xñ8jʐlh\ ݄FiXsr;qX9S:lH')Gۑy"ʕK<#(q??gtCv1I(jB{,?I@V10kWRÐyh8Z,F".^]jXQي^~Kz t׵l!!Ì8.KĀb(\]2`F'aU44U4z'\w&6@ Hw1QO`W$Ͽ"O6mKR$uY;e&j"=fԅ!{5ZM~[I$r^vKD}8R6>4XB_g{؂bk_>_ ],rπgV.0԰/F1m8,+V`ې4̻g%?T Nc:I(vfHם׋Fs-[_kT^sr.\+Wk6 BV 蹋 qܷ'BaDMgxnzPZ!b뿨DXxUZm5>4xH_.XlmqmBɁ) 3Bh{+Kfj8Bl$2'ZW@ C\lR,IϹxḦ́C?Ikz.T6\|Xy sKrlܘK$|p &w=8CXT TuHR?04܍c΅IסB*7C偕叴b(J#"jVb|:mwO¨YTNნ< ŸAH@G'rWũƚ.E -Q'sb* pp:weW|\k$I?r]M.0 Ug1 9S8_SLsXA|3R4s&Հդ^mi/YI kQbՔ7O 9ƶ:}.I=0+/ׁ+{T<䆓W?'"͉C>)FS,ՀvܘG |jMی9h ^8Ü!_{2~Ȫ p/Q|bDtx9zFuĚ<؀ľF0i<}"zyCH*+@`o|.pW fl5l[d^ɩ'D%A1$Q wڋΕ3'c&ݕe[Gǜ%bfd{V `o/4F?qK"ɹ R ;^ HaYӲy)pFq}4}*by@[ͬ)\֎u Xt-1:\OY~Eݚ#ƀe^_)5n[&SHfՕdH~̕ -Ȭ |j垘-YaW~Yb4%mB=!򲀱 yf^x#/-Sncy8rͣsVrcD_2x/r.VqO%'E3 (0.[>Y<"A ԗ/n^YHI ªzKx%Mޙn1iLwR/5 XN)2dU!+hC;7\2/L+1)M:DP:,ɵW\ڀ?-ԬA5++}cм2Qrq٬F:i9SU,LK"nNqg6a2E~ް}XLTg1!/d'|K0 j8 ǥ &Aɴۯĥg߽Ck+303׺v?#S>8*6aDT7rd19 >o~F8R.2a~a T8U'>;YUJ@hkTgY)jk- t,FcIUY"Fdr/<^̤na@+(/_ǔ ? Ѹ lP#ƻ1`[pGG;'19Y'LL{YM>B;bJ1% < WI>Ru"i}yń uN(r]>QuWs:2vST] s%dӹFaSc8N`m<<8YHz 3Zx Ut3cA%ZMZP/Qxnӵ<2qC^5J|)y` QDh,̫wb?>7b㭻?t/,CI2f  鸴K&1P撪A_صl9/AgEpK'i"!P^K&0xjFG՜D$;[m^"IB||kԝG6i87'>PUS)9ς=B8Me&?dl"!>$F J+ kǓF 6ZnXM"b&Ju8Nֶ̰Q?e7QkWsqlBUsJT%ΗT&q{fUNNFYVBz*[c揺]5sWM֜@DUsjCS+ 3Rg"#sudvRYA^n d'l I%{P\#( 9Jj/ahG$Z?p1p}͋%څ^7qS cڟR 9 ϗLy9o (RXY \92ײͪf V.+î.؊1 fgXh.uCUkĭX~ը&׶)0A{dQ"ҡHmg[psѢךRVZwB2]NSlC9rf~v|\PGO^ TL@'pvXj`(BK~E6af3N~뿢 K証bؕ/1.CSi90ou4!{P,Ȫe. G-tUiW!#b!gfSH.Kª`4$BӁA?7x՘`qtΟF8U ѯm;-2CZ_QVttJ?@_o{XIcɤbZ8^[D2kYB+s^[|ԡb^z=NZ*?%DM}ƒ&Da#>$;Xjt쁚`ϻV%bIo;qDj/#WਿW2iomи`㛛4ԚCR z17,J~WI?K~0au^1fKo7|nHh󗡑z-}00@BadmDCFI+>tc2Q2ze?Mȭkn>qCSip\puU^(v@Pㅎ*+6 $DH&23;51 axc{ ~)Oɭ0OjYlEEA~UjOX՚%X ;W~Ov7(phl헰 g  ?Nuf54CM\36y#H (psߖaY 6Z"d9  ;;uDv/G.>[vD]* n5R& v:h9;XvnCK04|)m qFupZ(iތEYxC+C{m 3jA?qL˙vlWӨ43I~c ֞!oSZbfյvoR8II^ILy։on(R*8wCZ1.spN4 oOⴴ^ <"xb͗ VS.J{_S?OM(dm0bgl'%3xZjμِG&/"MxʅX3~.6"e!$FLR.j@Ee 1PKNf UTFa 7YSX>wDhޛmN3YK"/38IJ(V="A]C @yR&zG'hG"## dϣ.Q!y2Q}!L*6XY>\Zg➧[,}z~%":>J:%Ѥs^6 uӮ10T@NSM3=EJpxy%績*bA| tF=!Ҍ)2KvRWE9L`Y?4x\W=S 9  h5yEGHf1ew ɥg`ql4h,Kam\>NdE $G\f6(JO_q>WMk^n`Zc'雹v? 2GcKKk ˉpѡ̓1y~Nu}1"pvL",jŵKls 6l|_" ,v\:tn KP@tZ*!]DM"73PH<=_uan5y7GtN gC|כ`VD<@+A: {rJOzH{AG]zБf"rIE*&ݴMnhX:\W2l~F,>Ab-E2e g N1fYqxW40l8aƅ +~z gƩp`x)yjfolH~jᩨXqx.p!N,q _@u$aTK. FKBֶ'1 V Dq F?o/?J'%Kmp04n~X 5Xaʗ)S=١?VW|%0R5Ȱ.o+!MFصN{CE38F& R@ tq&p@Ev<ӕt%JlWS+aݕnUpphvd+w``Z9po%n vҞt&|(#LA-6ۉJ=YK+_S:|0+)vtg(%J]ʐ0\!gz>E@r0|̇3%jgfK2un/2$&&{c6N*+15ZB7f.-/_34jہv\wj(}h|[P4Qte=>KB(΃) zzH~j㜔\(A7G3iThr)BSt]g*lL2n ~q[@bSp tΪsMZ덤&[#8J 2(HkWf+uBg47Pgo%!7,儺İN92D,NwS?WY\Vf71gF>dB`Eքh[PkLuּ^c+ɗFI4sGe2b@!ԩ7pK&V' :Y.:OG~Nvo 68)FCtYd5KFO=8R=d m+6- bvl V6[D 9Y'?DgАS)/W(7<Ý(Z:'jYCy7]Kl@7Μ"ZXp~*ueJbej{/!6t"{4Xz *XDodPE鸜 [4$oUVt]zfKm_/YZWI?_CkCim"":J ,#ӧzPԤ֝,hhC|MFXю bM@֫=$jW0pUМVpگԟjb~tVxx<:K1'7ԯy!Z68kPYYtVSqDI-婏Meޅ _/8p 6$Ԣ^/8VG0׾n_4TJo$71x!42@,xxxJ%%S~VIFr,KH90^Ť? 0$ӈ5;7DJCm0Yh d ;DcYdJ=xqOVh&C:-Z}VvpX[zyd w9 . k270GHunVмO082;)Rhƅ.%.J!"O!y; E~6<>D%Kf6U}WN6 VoPM(yQ^MI~ma@2Nڊ!hcKuF45`Jea;V{P>p O`B?wgDGyTpxdJz{(_i|l4;:–w0gbZ{.r~o՝NԏzׅSͺ;]5!<-Hd Bm<'R'gʶq$V3}$ˈJY;MxdqiR2p$M]W5^|36`x?otf,ۜ^ct$Pd%BT6:zafAΚ$-|l6!~8 ɮ) lN𿫢i*4?eOE*n|L2V`@L݀l%&ؕES'Ts8ē{ۨV,%Z?~<, )a̾QW*"8,Tw gzv{>Zs,O@O=wJi")'nz Vh VoIN ?JpFH)j;i7<~߂g1h.(tOʿV2JI%A]ҟIсA(߂k$52Te(F7~LڵuvRS?4[6ρU*lЊX] 姜DC;7%^Hkɾ{Ԇ](HQ`CS걕O/9U[R‡5QwkLR&iǕrrzPw7JRPn*m&΂0 4,ptsp2C O9"E !6IَM 35`:Ӿ|,Fd5֏͜nz UOFL , `]柇t-?d #m% Z~1/3R'D>-4DxAozS܌):JsE8" Y䬦hDbzWV:w.VX3Av63Tot?ϐ^tf/+F'C_ 7^kt Oi1 tD{|hhDLjKo 9ԭT=Aӆuy -mTH6K=2(E7((nϥu~*b;`E\^+$n @m S^ߟFɾ݀%_DrgTy^ YGG,xu!W|nvy(uC0K7֡jvV\.Z<ezE`uat2G{ .\Hu i!c^ =cym  =t)\%0:9@[2o%B hfٞaTeK&kIxh\F|ǛpihQ ܩ Gr;R^súkc0aȩ0X4]a}%M.NEr,VB݄-)_n> :E)f {:IϿeRVY0VZndz^5LjHfC̅4c/Сr[Ը]Y89,d;V V˲Dڹ 0X=Xp)NQϮoO0fȳTBGdK7k?i׋NQalo΀WwIK3؂c "$לN Vmk+eBf -Mzkvݨ&܍CE$VB-{bx;evu5p)bL 5D=JEė@P58-AHCD a>j_=2T Syy8S$}(OsWzkLpmoƜɱKg$]~>GWUԓLѹM55W=ւm /x#ͷ6}PsQl>:۱dqE?/+1Fjw\ludd}=?tP6'5H[ b5q~~e`w91x ,I9s_!x/KnC}FCK>K8-z}ǝ~X0gdm-ʲ$ֿJG4{~WHnt6^-J25XPZmN];UɣІmUf7,Vb90BBWP+El 9h$45r}%܌A< aj4 D&:lԅq)`h A_+#ǽw]—h.-$/A# qc ªg┩\'r#K3'f RCK_ݴy==jq.X"ZP(36-TD`eco}d!A nǟR7ނnz:=wӺ8Y3SJRuI WM-Q[;NI$WC!:b^hxt~!EDZz%8{1'nH9m`ftoF30յl,'Jxsڕ_Ltsr#6[VtQra㳽t / ;^pkf}0!s= &2Y{6 5 {ͼI(_qkLٷπM)*>8rǮL(K!UCd x'< /<(*+?zopn3*Mg &Ŷeښ8OהLUH " PC:S86]ک̱lv,S }UŻ u Q4t)Z-ЙW@""2PjQh4`H=+Q*chLcyvCdP  =n+0TSC$np=RKQAM0 =a._4+’~}4#;w|>[I)E*3Bլ =n:tӕ=%cϯwMdSyBS6!1irduH胲G=!,06H$rX^&'?:3@8LTh_~q>[g;}Nڌ JywfH;|ZhQS[cN̂+ 䣝ֻV?BJpOzkvOʫ ?Z*]BvGNrj01Ox{(?Ca0SL0Da- >f+ZU/,x,޹Wl5>Ӄc5|=h}ey &تEI(y59|UF\^8Pag:.UHEσ_X)W~ &Ѩ3ޮSH''m7A/6vN'RR^F W{1Z>\  wU#o"AnN7_~ Z*v90z3U"LB`%c0LKG6^pLcvQ@p,&J܏脑p uC8BZ g !=tKECWNYsD:'c_mWar!Pbh =8`bƘ+ڂ(X'=py Ics=ǹ3; -I.?&hzz_6Y& ?Ԟ5̪M?F5[!*7Kkf:OӾA9bb ]#7(Է%Wak`NQM N&fzA^:!Ӝ1 I?5*Deew@[B0JGd M"͐ܚi*3 YǷB\ ޣLI0m rjoÓ;, 1geG|bLҝt`S|&D8:DkhݗZ>ٝZ~\ gwk30hɩ7/D¯*9aȊaUt|-[!g⎷9nng~cгHPTp͉,)&)a?:F7'+Fsng (3-"T5!77MMy^e+ txm@!\a$)Hӱ4 ?w=Xʳ1/}G:\֖8/p}|(>akG9Rw1S%bT3pwBسSR{l7[W6{Ζ*X^UR$|3-i F;w*#Ha_cڥؑ1Qoߞi>GQ+E$jz8DQmO\a;X{'#D7]rXNt8pRa|~赢#<7YS;k5ȾN#ҡn$ TkĊ8s8d 9 9[}CPID.;F&LVɆRbXQnۀǰ%w7~x1vl"* s3VJTx/ֆw$!aG˖=>~}GGurf?]{桢 téqaOaEM_O=9K-nyթ٫qbET@6KLH+߇c|UGA}@2DçDe/7EN[{C.=4ݖC%WDK5Bm CBw]XF\gZ Ė [`rzߟQ# =ZQP@[ 0_TvDEMDZR\qg?{1<@ t&v[A:_j`xaքٝʹ%>ul <9=9NE)I! m 5(.JށȚ3q8\s2~0Ip;F_75B W<-SɀW<71bX\i{=j?D%jy&gD垃?|~pEo1 zE u?s5ݦB~`apͫPucWAp_UR{tŁ<Ss,7c_Prj M /$r@f)eώ1n17mgPLj.b|+(1@*!]DP#ݳ?P\Yb@*ӣ've dϑ-NV>nR䋃{5 ?~\Uϒ~:z"g>cWᑐk8:x ԅ(S$rQ9)35J^$qpXL4\M8.V0j?CA-UBiзyqL"CIͦ>NYy*/Qa.O٥` Ycϛ\ Щ=O7ֺEűF4N|>L^L9 qj/0Y=qw$n=܄Ps {FV9R0B&Dkݒ/>]Z^S%}UZKhd nCbξE͗l A'j4zr2I-NYdGtT"_1mfN=TSi4L\Y]B@@䂼-XG݈m>Ïh"M(KldTmxM3ʶ m-}>_izx)v6+W`BTFɻp:C~@{ $7BEU . rv,P.Pµ|(:|VK"R7w:9$ݏgqOQ0 Jry7샧K^CZӖKTB* wbmZ w]+߱>S j߿(7r "w#\R?ANȹ1E_1_K%YAiو"6~HpB8ҳ>XGtHRW.4x۳;QR[G7/`[֖!7Fqds´> 5͸g2d$#0vrpz\f""l08nS9_}b2C|? DBKOi@h DF#96%ج\)9Z|H0ƿkM_BOHjXfNAec&e3*<36t!fHoZaa=4mHO=4)<Q0gj?/ Q{:4=6g3}Ѣ*rԾGaѳ!E;*GSN _{58͎ḁvπ[qݔgg$p}=Jzڕ~LC7;(EFmNLl84Sku:K=hf5g@_gKFވ &u"b?'y^5sA5jz40WC3g#8]hgn=#5g7ǣrBqW´== 8`] #/*4KHE$#Vkآc˔ B~ O[,AU~\;%첓azJ>QKPE)馨 iaז\r_HcPU5\8H:xJsީW#b,}!vHqU;)]}^^W%l=7cR艞&c/8ģrI$itQ/h [wZfu[FrR:ѣ9Iƺ^!  DD*~vAIL.V'M@%GC-7V fߥºǺ^ڶ~^&q|^ 06J0"?a\(,Gmի8Eef;|}.(sfP>{ICqp)Q[|ᩡΣIAr2LW77|QGcL߉KGps*WSJy=F-534-<[A"d 2oBe]z% ISRǸTOyR,vhy_,2T1Q%X$X,zʍCAb{ؖ`Oө=RPx2g 0dZCWim !IRz&IFğB!w.y Yf/ V\RkkF GB̊,cȅgy'i brօazdXnFCJȁK>c%HG&y;]G!kHY.5/^ ye4䕽KZ %VZnd\rZ:.{gKV~ÛSȭcM'?*mGon1Axf `i\CQ+^Ū^x6@-rQ.SzYvvb;3kwqFesm,4R>u7ө)v]W@ףr \XߌZIb27o`ı;á2^eH!@3z`aMk.,iZuƃH;N"nU#Q֓,#+DU#L~ʧ7KP:yKR@ %X{yhEn7n?Մkq=:$mڍ 1I//0.k3Mb~c85a3!fѬbQ}`*ը/HYWne HcRiiDC7uS¨[ZxDžXPs'eʱP%:qOgW \$l95 c Eˉn6hASSJ&= /\:ޟ,UdP/]KuQߖ(P`x9#XpP_V[/ +]@=tHXmV*Z(MϥEN'BD(\cٴgQiLUPp`uɞc_y0H,tC}պr8=)6FAd-"$ gq!C0S~kuLѫ-LS L|Is5Ro9sݝZET`z}H7b 2;ۺZ|5Su9TNF (th@zVxMS{Rml4M맪kd>>UVI_fֿct|H10Qf$缶H3IT rJ]&JKV\`O~KJ]Yee7E:`bÌxJpRGSa)ic<}G$^ F ˔5ѢE pg;5r<85J7*C6z殭ըMtjM iEUtDmR{b)3˛œ@/r^F'v}f'%R)~M;2$^9%J-@wr+ܒ*-!}s9jj P?'zmJ,A8E@78 qZ7X+UmxbSů=.A:?GW2kM)c!Ŋj{ySk>mx/92ɫ:CCXuλ**ߌ~CO=dc|_k8`ekPXDk4l.Qa%.@z]K1|p`WZh(WٮԌW,_ i>is|҆9$]yBFLPpG`@J) Hf%}s Βv:u1z e'oӞK?>=MYkE(5/Aelaʗ ?$wyﰥL%}St*_k]59 UKғR$f$V҅'akt]vE(`Ո..#X" !&Bg]re2&5<xu6ݨ)W8ϊ'njz=NAn.Bz>]kb@ޑ70O {UZ,"#MR&!J/bM8_ޮVawx3ugL:s)2#Vb) }AR4yf-pD +NtsK5m[(i]`S,AR)ztpoC17N ,[)YwX r;PM(ϋm/=&VcDsf7yla!v_6źxlcgu,)vcɨ ,V8n1lLs}^ppO_Aߕ`6|帓7i](YS3ҨO2ioj1s_KZkX>ozw_67EedO6X,Ỽv2R3]3'Q69wnQX> _.:!zt KB Fh$*#.@KcTu捶~!TXNnJAВb'gPen9ۧ)zϙ/D;YԘdRo eQP[g0td8S[Kc>? xe6Z,0JnAeBu89쀈0nG!oL2YKo]DN{$?Ylݺ81@1p1&x(?jowkr>I= Ƅ#, t=iFʰf;#aau8V"QAGv?bMN3\X}ޭ,Q 0dgkr}|N%[ kvש?\6.}y0ϡώWQ>FLJnZwyKXR2c1ArY#_Cq h'i)/Ͳ}JҢ5bv h-tO#>OIFxts9 t+4!ŽYk+@JŶv+P` SbOs#]ϋEω$u cVtsrE0 ñYK% -?Y@)|-Ւux&\M 8q.n;b8%#e~rJ2BޠVK^9˓K*;䒁~> Q\臑u>lB9Ήl9R Ʀ4 (Z#v}U?)M]gPTh[lܽq_mh?U: '.ݳSrUt]7ns_է{/uД78{o.nuab%*Ȗet(ccmlnߖ-pZYօrk )M %݈d"Gěf]BGrôDnv$dޕ#|Ha\e O5 C9+>CM\6Tp=0e: 9-O3 LGPPG e$r+8UIg~ѡX8Y_?9yʺڀvj}A"zQEt(MNg%ZtBģ;jd ^ip9U-!*N[[&A|܇rq)in- 1;Ly\' iY9&`uDs|%dv3"5jٷ$Rbwuuon̝] y!!TK冺$`$3 IK\K-@>KoB5 ]$揽}8?0O%Pp2q;=5'#w1NOIaZ_;MThf9&} n%U5R8tc#S"~rZ{ժ/_Hak4ǨO=2O{ .]6=%uغ2.}HW!l")&'nߴBM?/mZZ?IC)>[%![7M+M3hkAXT5b F]Z;+UA?W %MPOǦ fICǮ]E;Z{FW:PNΩR䣾T+ 6{nE?9]>3 H!;ҵYY8i)P`ڳ'OR60iЧ{~cK4Z,7ui_qޠnFTDjW ïv8EwD?M"[Q&Nc'4l5dFѩH3Y_x*dxaP(qcʪCHH6zlKI_LNa?87պj93LM@c|% kS{nгΩX a*i@|]}i ׁCk؀q8"]I<49?rG4j$QwS0,͋9/+q+M7Br6*(r7h`/ Fl"SXiPՑ%^wHNjz[P=Ilt T}#}'t{T`-6MffYJ_MAH{GXeWpiOӳgH'=pHH'hnEv^#)ﭣaKٙbW_Y (+ʍoqx&1|Xds ٺ[K-]F `3'%i?,ii^'m_KR\(.jE^qm)]}_=ӵ)sGISqݘhvx"x|0̬if 5B!2c3@ܨ4bB8*NJEЖOv~怸#+':ʺ/|Q0mT y)T3M+k,~)bIA"Rv*9*Zi( rwLgXl 4-YC$PM1Jք/,NwRؤS'TT1W"|ubbԣpNyjmőY-+8l%$=-"'^BEXTNgWǺ~]R<3Tc̊{-gP'>?,ϔR!=7/]Js Ti)Fb.wb#[|who{dNY/(XA@4 ]m7j}ӊ\WK4H>z97'qb6yP5ZeW׿a' u&a:y‘}aj\ř 1[)qoUz)}Nt^/.:A~C_o"g?e"Kl#NyF.:-K Vz:Ggm̉R6rpô3aPlC 7*0;uG8db>,$/FP8^ƹJ!^7c1+' B}c~QL]ƕ9sv*hR8{K=CeGȄ =gֵ~ԏ_We.='7\!`pu8Ru,-P)TJsx I8sFaNffRwD|*Nz1惐6GoNHM +~kb d\:,.VI )fKNةcTQ-wYfT :tCF%X"pbAi^Wo'@zi~W?`ʅ\ iBec5fSH{oErl֘فIuQ\ea:>7K9wY}r.f}nLN aa 14jT[J3 X&S$´7tw(Cr i89 P< %5W%%K,G a;jRLŋO ň[`Z*S! -c E*ci1]c~Y!R96VRAFT{1E_!YHZCz d"^q\A>_to甮g='96&IyNwjfVe KՅaÑJg7_NahR]p mH\VW4)/zq,?iM$&+௙d-^T儏MMkm[T TR(g< ǖī2aEc&v^^UŪ$Q ԊFi7!k{*+Mː$ Wc;M1ռ/i+9o6tk2G-yAc$N Inc'+LC"qGgb@b1H2U$#Nҟ8R7EsKo ( αHሳΓɋj[=|5L`wښi;nU"a,m)'l|Pű\WO1!;Y6/Hc0KM?rEro||3ڊX uJ suRq{鼟3 ;tN,{}Hr]y75a?P%n1'wRw!^ÍB~l4 F?@tlJȨ8[+8Igc~Kה^2ȢjkLH_+oԫ;) 'q*Rh8`pϛF릱5ms}}HTK8X<Aae}->hzw#NCPW7 )*"1}mc2%J|ΒB<qWeobnQ+e)% L;lMBay0䜱^(4hti'ecGu2 )CTv;Gr{avZ`"h(\wO# VSòDmt$V\k RJ_N^잨b=mCB>$fLZ: q5sJ"\MzeEt58MF 6!Z_*ZZ>gV {b|(v4=>S]>r<I}M @i~Tfк.kB͙4~ eSaV,`%pv t{}dЪe('-MGiy] !pI/ h~cw.-6E-D?o&y8dp贡NQNNgm@D v$dfaI.dpDq8tiLjD_jh8j'@&HlI#$7nMBg|8q d$yc ^H2-ׯ"u/>EWDRn$ ܘWzo$@Cy NM!.;#j& Bv_Dx\َ`q>Ziba[Qq^u8E ảgT_Z֪Q$ է~2G)[PASɨZdD<${g%``0BM1p;2j0{ӷH}c+9H]x67:]YD4f>\=tEVuQ#'ҿF3b3X,=Z.Dx%6PY<0\ 9r H?_'Zf7o@ou+zd,I1*_bDs"֏{:plgt+i/W3HH:5qΤn`X^c/evl)׌RR3n>'%sqW@F*ˋޑIZVO^R_E7Y.kFL1"y`֗{s΂Uj_!\3po. î\THچ ߪ N 7;xOH8)VyVvwi&RF^X"P# iV) UiOے3ӞCKVͭ~cSS0}WAKV/^B{vެ91U`5/T:HՋi'`e~ص>\yn]6O}0TH._H%u6C+p*r@[K\<*럞"G! O،{*֞sif~Jo2jk >D rxR|rBAjs`4ܥuBFՏhN 7C`yp?d4V&wݠ| @Z>'ICs\g'ݢy9Kߞy;Voi;4kD.s+/bzؽVbKyX}9񼯪J?2ak}*~5fuǢL>QB? ib; I*Ի7qpۃzO"v#8x;#>bIbk˦p$ Sac%c?ws3 9U[y=&x1qԻ51 sG](~KjXiJv-Qi,r6.`ʤ}Al.U|:63 dN#sWDe\rk0Xޫqu֢[#USoEx?kNBjXBP0>4a"i (^9feHvFϳFq-:go}||oׯQTĒ%k2I̪A.U X4K{a t?AҘ#$XK`Nh++{ 61k#5>vaV ct YO,~#ue1u ev0R2;O7`ӓLzz J䴣7Jc[29!1FVq 7Bġ@|5y%9U׍m;|?,w * ϲY(R,F53Q~yZMrk (Ֆ ]\3ptZu_Vo*AF6V?L=b[ˎK+S^h$";,xpKa'K(Sr܆<s6fJ2ůeG7*r muYWOdǺcx>kLl K, jTZman#*jEϏuou8 K}'д:9Rd(jت~a-h-N y &Wo({#͗*_ 6iaIg5%ѐc;'vܟ࣮*u)B']jbp((Vzw еދ3)=|7,~yMUY)J0' dJx0)PGK!nr1s)y`H]D95״I} ,Hf-sYBWExE;M Q^9AFn ST4ީIkVqะb жD;'MxUkT\5,T#Έ( jqGݽќ!6^J§L `8"JLsO|`Rz. =3ZYrcHf^Uzrȕ#y{PD6U5_7`/<SJtDC/,[7a9yYHY ")ˮ`+DkB %,z@0`_KPߖ}++s(;(բV n- ʦ2F (_EG@%urQS0v;朵]/B4z`70Ó~!o*I4{kϮA Д׻oKAe >ȥ)T8G"$k6a8SkŪVNtyOF0]9ydge L q|ի7K@PMatwu>LF^_i];4\/aзEŹяM%)}=0~蓚ktr36^ v0~zA9ߘJAZWV}V}AH6o Dxsd&!qT`'qxb 6ȦdNBr9ĘlhZoc~[+4W2o#n%/IWl3ZZv<8dI%+EdX3!%ߤ Fl礊- #/li}vlې}zIK @U֙rJ0&w'n'b_ɇjY7F7ƌBeC>{n EfWNd ;5+4H7m{aUZ O D ˪ {t$"+_9@%}`<*i=s6j:Ѣb1fvGG)`PA'Ʉ R{ȡP%,2A.v` `R1bla~l?߄LX68_ʼ#Kn2 7A D`\lBOYD-mBś;$"J|l飗,Xp ( 3mFޅVtLz#_nGML"e4x`*h39(RnsC/K*Mc6 ?35ʖZίTeuoGC, 9W2OhI|:+Ʃ6levc: F:j7vZ5E›p7||>cX폵LlО -?e`X_*L0D|dx\!V)="^sVi!8 |Βu0I&F"Fދ=ђ<1e|VSu߯M6*R2=f]:q~â^kG&R iYhgfÍ"?t?mm@r `AB~JRHۤ9^#|`4}cek$&t$ QϾeX]x*crS97ަ0fMG)ƞ4:s2bƣrфɱ^A9LQ8BԻOKž@k@!6eoJZ'ڪ ԡ! qb\s !qR=ݑɚ}/Zx0pBlxqsro^9W.' RN? <50,QcaMJ.JwȨnF&H—r C)7&6ƳO|`Y/YP+K66zxᭁPhf2gN hL֬kgm|X+ޚkwb*z˨}" @=Aڄ Y>ȣ٘'k`v㶁ϝ LxWZu2l7л/saYH1`g'yjY-Ә74|Mdߔ- S;s*>zݲ+FZ֜iC/?* e+N2`0~,Soe0qc, {tC8)و 01?-ߍ9@pՊMI5{X+91Bxf,4dbX$_˄0'NVStNQ 5[4zU 4Uc"`m=kOD+2v$ܯFO EO6Ѭ;Ej2ZTo6`Ir~)/!bXUn֓%q6J9)>`im3LddN*<28Ok?|7Nz슸00?G9yei-l M^QjНA o&h(<V$08"LDGibGPoQ?'HEJ"99$˩{W`Qֲ?{eD=ٯ&.41/ëy# -M!K&gvQ9ulox"0.<|WHU \mց9z$TQ$)c3isI1Y:++ u 4|ȏzC35&W5MӀT/D''aG<<)jT}D>H1R8nDayӊ(=t$,$\,BM#M#ԫk` Q[YO) J;udBM*"  69$F $ُK7#M|yh%'k摫׬[$s]M+"(pin>j:#?\2tkϐIM~l"g$,Hi±i {~ǃ=?qy~t_FFT܈۹Dl'Y&.ww/uFhOd=J46$m̰? jw[!s 7ʛP(̂xUr+=rޗ\8x`"Jy}9#?v:,g5Ibf F #Ly0:x˒Y-F>@(_F1i|+:2eklJBKilyAV_ 6&@t67Eczd-Lh!ov#1-Q /ۅOq`!MYCId ,C(9=k"~QX6sΪ7KU60"/.cgcghr^[3*\%cUC#- btiU?o_[Ɓ٭A[h##ǹPM;Y}]"?3eJp1+ad:ޑUƻS-xJ=h麹z^m3{F.ʭrݜfٰژu\88ʰpAss;;GѬ"X)OjU9TTU~@`V,@ҖN֋9ˊdABU 8sұloWdc3T&0PeeR',.e6jefJL\BK 61^w񇨿?4AIz;3}O F5_Bq‚ŮhQ&LwSbN۵k^}l0Nͻ/' ™E E' w[ d@]Kg>\UOf|tQ!l@94@ŏLM\kQ 1stԮ8v.,7}e+[j-@/NMrJ\Tp *݆㸿)*^%i4F^Ytf)M3NFY2Ir?W/ecUG?|2[d}O]`k+2q`F6'\URKʙ'whOVr7 ǷDH>x D,_- [sr,Ү@< +*;\_;tS ü I#!9~@Xy-3Zl{2` -iiz۱5S, LymsuO‰Q 0 =SxEe}k@|xclnj!&Sr5E&5ۨU+\1Js2,y~Lvp%H}{~': Wi˫Ę+YNOl\}| ͹l9Ґm$N^H CiE|Tgt.f4 exRw *yM2$V]g3dPo+ѕfiA1tBh'i$ >k6 ,z.&yNzB_B>|(;\X4}lu/uVA3phVy8dW|}~\yms-\]%vm [v s 尗82tm)>=>wVFE~VY91麷o")w?B,5ч㣪r\ VlRmt=U>WxL/GF: {#ZH$$D$iHk8X$KqWֲ[3*AlG+twC1~C؁ʖu陱ۗpiCtqΡ%,*fff0t?/EeHWJdj7햁H,4kS$m]Fn J!oR#w-ϴP)ukca)߀hoHpmkLRw,b}p]DBДa{򡵥xS[mh@Lb;i<p:W( =xjf ¿ 56GWpc v\JiGG.Qa 疌SUT_錅R 5]Uȧ؛qJWAo7 b$Yw4oÞesNjs:xv 0u&D5.Ě\S)9YfFe<o I2Qp5޽k q l^Ϙ-@r$W`G35+R<Znc\~@xMyRtĦ΀8QKj9im-WD4jL ԡ/oM)AJK "UjqoeTˣʙG>k8½1^c\^G=7W^PI:S~Z0l%Ӥ;<% @ځϵޢ|2Yo #rɐ.T'jv==X)PXi=7 ȵ ۹F  owdh:Ƞ{d,eZ$o+$oy;ɹ`Z@ 1: 7.[bjmK̶tb#zE)kUA WH*€,Ŀeol7SZ":Vz|yWyuƎ^]gf4"ַf^X?]ȓm3=4R%IX)? 6#6{l!.'}WY&3ɱDz ~G*N{#նcnjEp`-rPGqETß#hkBb.W@X`V$b?-5ƥg?853$$P5oDª8n%46eC $'\z ܣx,dɕa},1aD%ɡ@3\ey"y1I dUox>bv΁y_8u/*h:aP#т-;lgCZCjoBFɗh5 i Tvs~UDz(C`%aR' %%~`eln̓d>O l|4 Rƛ.X)s j)._auvlk 2q~_2K@~)f /qIs  .b\-^:eZ3=".?:V_Hw-&ҦTQĊ92®ȶxDbM¢a*1XRV"[*hXQ~lX]V=&HXOX"UVm+O=)SrVf]c i^>8!)A FsV`i{b5g![g_at0H" X>Mh)̗!KggU~s]9B{}Yq!!8#?! u֣9h*q.3QTJ0Mc4yT}" o2Q6ѦK`HY$8k7Yʳ>>zSM7|KuRk #@lP!|,d^"X:R% :Dؿr 5QuD:T~{&@nAJzz.t#bP>=uGn,xuwFAo& 6 T0=^#O$A6VV& Ҳ F)G x6wA!Xuڳ 5:DK8b 5W|5[<|Ɇ# KQ5 1PKpXT^ HgbAj??~HfR Jbb&sթ،7j=&}]R&ģGW= ̅(<@fsQpN c38Sȇ( b@~y7J_1{T^"i%2X;j{if68i[u+a] 0&h QDiG=KD}/*JgK~~>L.]dLo*oiגg)w"o\ˆ_dVO߶҅e Ia뚽.ӻqI [tD(0)(O-N`hLZ˘_=g7Gb4=q ٳygn|LpS vfVVKKCtFDC[32kRT3YуrXRk-䦿9 N 2X/fAf?YIݝRhG`M ?sH*ռ]Ӟ] /Nls$CO<, [XEtԠFXKaxZⓃDp5W)#? _u>KYL2F;acə{ܶ6m{,Z[[ *+SYbJ3&5iAZ^ Ay!F`e,̦f0: X nYtM:.b9cٗ DӔ.@h.a?Yft0,;Qϗ< AEUp2Y~X}]iR^A4;`Ni4[>0QQǐR7 lE6/hVx'3bt c|Q;1^BCZ>{]w5x\iA&˲+P/^Cfқ&3mѭ7ÙN'oDF##I}wHWFKHN4/%؅_墇Xvy6ۨPiV]i~#4Ɓީt"o,Tqug2̤=vS(kۋg*U8Ih4.M-9"~mElη/z1+ wrAt̖~ѻf^ k #k9Cmr :KFM!vZeqM*K+i  U3=P6ݘ!E%*)S}`smRX!׿X?ycxR QZ>k<;`}1S`I>\>g Qѕ" !9[u?S#URUϓ!AL e orW%sg2bE6]t? K]mpʩc#. ֹ'7CڔPfexet_D%/)XTYUJJmXhĸDIdC#usVSעװU`Gp5#UtDs<ւ0$ &/!ѕQ7?RINf08_pL5HDr4gXdr' )l?)\hgr Žy *T(xݸȃZj$'-}rjqu0izK=Z$Ԋōc_W% BpfPh ї&)`cW8*a~)\gL QnT>B̸I~GƦM1}\aB5>f}ťyUMR5~'Kgմ:56RSLQYgFp ڷW|t9zGγ}u-V[  j,W~WYmS@%r2n}?ƅ'U6s9^6Em}:W/SaRۏ%R&vw!8vuHE.rLՌX.;$7w#7P| vk L^ VgQn/&M5 {b N2esD+ =W^Pn$ED@2 AZq(gn,uK~d9nT\CY]}0?qT=IBPJ9yn~zheѳf☏h?Uc Bw"Ql7R-승ѦQSSEkOxrLP ~kdԷ.HlІTIK@ ۹A}fpSbVU\CC΃>m1%čy/~̖A[k䰻>%7U8. =ui8:UpDN:Ќ $0 A.:D&݈xgb2j*,.My5#R.FxV2H >҇K2 rvM[ /l' kEq 'hK$NW/uﶛ ӀJ -[۩<7cٛ t ?zQFt\MRi]ȫ\3wit϶7/UL^QO^ 1UNk wu!'xɜLKfP5',Liy9rf&G|c]XƱ9Yr'+0;q4),^߸$Džw-b~۾ lj:@b+"p.Ioe!07K'6m5w9oS,%|-dv(Sqi9,.Q%*XFD`y"*@zsEXT8L/˽zyB̊Ξ"d1^D䥽'DV7/Q'.PWݠBo1D^U DزH_HL.;Tn[mCoUV)v)&L6V*#+hocLa4"A+K[npq \(&!tpDoϒ Rb~?dıCq/GX1Z0%""hZ(~ѪmTKTT}u kPX\>^wS(n2ݢMllR{cE;bYޘxz+O}T9@[bLh:.4WlQ,U1`l+:uLަ(FKRxOX__規zx,ièu dp-G`oa5YDsF0Tܰ\Om'\Ib()т2!aTeGԗͿp[Xw@jҶ-oJhHZiG`ùj" t!MGy Odhؖ};u2lїN`AtpW:(N áJb~Oĵbhq:\'zU'Dbý:$G(OVq"L2ݙfEFcXf:o֭_$O@PRI3_3 anʒ49Bw~0bcԀcTK Wu*"mT [BT.+DS? $;@@:H!dX:F?V~)sCD@?Bo;Qĭ()̬l͟c/( %gxiDG;` Y߬b QNgTy4dw#x6oW&:6aRvC:P/{|sɽa(fA3|S(xF>EWTwlȢ҈% ^WvKiO<+klÏS25Iʤ{ zcVrbawCǔff!'72-}pUsvsOG;@Ͷdv=|'Z\"cVoH$G{@%#Str/Q/ѓCWܺLݼU߰n Yh)4WkcF?J14}@" qpCCiXw_ݻRs_2GLٌ=G U|GQ*>(2 ,ǧIL"`w9 w"mb*yC/RRLӐ#U.Aqo#/MU GqXN|M(##,W=n *ݔ%: Mɶ%ě/I! C>.qIyGAz,/IԀc(q7KOTIY98tC9]'wrOQ''c'@59vkmdta ("bxA+]բndօHU 4' LCnnhU_QD Sd%iU)opQ42^fbkBcQZc(f2ԨzQwIg !NAT GR ތ׺ZJl=@XM0_|Ɉpc069>$g Jyͼڟ{2(hnY|6|UW$>cW45w #f U?6ϩ;7'wwv8 -3j~{sv4:f,::ABwlx&49yQظ2E(2RqaZo =S;_$U;NG4⓳FJ-GYFI5 scgԵg:~੏QeC& GI*1~cUViJ$"~X@ӄIKۛD*F?/nqqdgh,!;( ~zdW_ R JR֍Uݢ:qayRUU1*Qrfq3DVwi,O}|muicF=I8T2 ?YX˛2ȩeT0Ћ"~/ŽJpy)Z H06rutl{l<bWJDAbm-!-B/A׋_kç91EdUo:*>cc`9@I8*-]آ~93 d l̯O{Rx0Z)Fe׋;T"VĴkƅ; Gio@z2B/YRECžm/)s+PЅE2uYt۰n!պxv%$Uj cUZ * 3rGpفG8TH$_Y <\5YDt&7PG@0[`_oݤ@LűˇG}O 7c%#|r=(=h:n- WzB|Mw-5*5 f4JsR1,mMKD(K-+QKbEQVv1&5S(A s&]=Y6d SCT3d$`df4֏{jh@s2e3-̯5_L3 x ͭRB~aYAnub>-m-`S# yח \:ZGl%i-j= RտV2{9 eYUqaǷҞYl,z|X2< uu=;ź=6uTLIk7|UN 0 UMU<'5@͠ߧ!mh(EN8 8EbG^[*5K DI; Si{s 䇉o?V|"w ŪDʃrj#mV [.;DGe޻*k0 #V*dtOe!,vyBʺNؤ[L&7i^~b7u{Bv1"7G覢C0 9&m'P_ٹȬH/Z9 Cֻ42f>i+/*Jdgm ">E1̗ Ov 0mEZg.L .#NMkF%j 5i} /wbp6Ӎ .d?>-9^GT3'N֙HCщwn7,qib4@tB䤋 ?L,b?uwQ#6>`>W.r | uqWⓒ&6Qz)aIٍ T[@,]U\ɋ.Z׸?h%6՜zR\uWtxkY\d^ҙv[+g*rZDv޺2CVpSVhmгY _*P>`ծ^"l0{ED(A/( LD,J7La,΁] P})!N" ;rmZ~ ~pE4L@X0u‘qP!t"wrFA+;7 ˙*{6d%yZ0񓚝:;ֈג.|NZ6c%S*Bٶphki/_etp+I$Kd⤑~NL24ʼn~b*SiH5Ԓ0iq)z1~0m0bDPW_WxrxVCWYHÏS%L2-H[9d8"&e1T>QӨ(twmiB-[8K OehnJHD:kM)'[rڟ+\_ק?=aUe vQ]j)Vj ,kȶ˗c] U`74+C32LOh#؞3Xie\]hL/!lieҢyGO혞djt +1Yc^KK$0z23{R̵ `U{Tyb-%jo,v[M"tf5Tv ].Y7K41RbFBJS?!.Vk5wg,7g-./.u>^+<{,*G˽sPufЙjy\@e#SߋdE/}ARArvg`DjJW\jb"y:''f1߁L۩LiPb/ "x%zUZ"2ahG\[ .Yr C39"_ď%#æKJ2R\GX-%B3Z&`l3Rv%GQD%*rT}G=[٣hJ ZCoCWnn|J4NwwPfOʩ[+e ~UsCϟywr@-3Eܖd;31֢ȜZupXJ( x/,,B^X"j?H.$ 'Jx[}(Ϊ*3"֣ăq|w'DO)W{t#UU5WL\߬FR f]*\|ֻ73?aOc XV"-aH0r60 BX-N&C8ďŜ6@7&8b z=d2gI_Bd(X3 Yq@[$%Y׀>3XY_ȼZ 2PU}׹|H˂9\x!g9$ X~ ;3M ⩔"ʝgQC?o X9;WZ."IV;C$sOE'0ñ^<֢ {UL't'`" >jwg $iD5QOHk*Qa*)$ݧ1dA/5YӲ^_%'g܍X.2"SNy&K 3hx 2]HqlԌtPͿ;Uu _¡*Mjz+ce໛j!=k.Zg۾1򙝳K:p,ۥxUra};uTF1;0ThJ-c4~i>I@ #LOř*AVIqaیπ=WU{[~)?ȇa^: |߾[y*8C4vAƓƱ,Rm!yWʝmUsԜ+68З a/2Wt9*cr %Vۃ nak~VqL:_5O?ΣjsI>la$&zԩo.ĠH)hYrs>Am-}fdMH6|ĉ8_t⤵VcO|e$W|P84VEU&)Ԡε uĭ0˚.u &~ @g-xvp{\z19<<$ vkrquGUE:(U2wҒj*z=c͙vcKncHt!hKda!XirB(ߪٯb>EY!߱,-gC~I@eץѱ2zP8}'˗"L rݮ~.4jE ԝpoY25WI)+ n`~lȳ1!> =DCRhX`;j5+<ƔƺzA\-՗peL@ EŁ7 + Jަf&a9‰[,Gh2yZǔ۽wW'ފha$䯑I]{5# rv|ۘK) , Q, D40E8!Z-I^ jbG.BCb4iaU,t( mٜ!,2x5B{ż$DQ{ ޵KS/X /P8g`%N%lRPxuIlj}m$sJe[nz1q׺fH[HR&݅3lX8eU Sa {͛PWK<{(A\A-6|f qdd ěӟhw&S'&QJH!h2aA0^<}3Z?zmLc)Jw7+AF9e. Tf-unu*k D.srCE1~3ڔ%0EfإG"[Ip`_VlBPsqUƙrR)Sn﵅ZsT`WW?&Ԫ(\IB,Cc=\VbV.]yU -̢}c=.O+ih_ 0xM+q-9 蒋͞Z5@HF**t۪UQ8oqӷM[&&dIÔ=6n@%U4]3JƣzY0Xns;=^K16x\ 9q9oJWC/I~;9"zKrHx`u_;lo? H{݀d"`>_#.摢R|iQZ+{ &ݙO2cw:XhbnXh]X%7h\_SdXcN\\!$IZpg(tj㮭V'4vVm&w͙!5]KTu&|ZY¨@OE;_(xB34(f~G}K= tQ)U"t=K׆h+y$N7FEk[FN[ݵ!3!̐tby88a;@֙pe@G(ԃڔm%ӓhs-u$E3+ԛے˨ +^ݟ0*۸lu&y62шVG IF4E"BUzaigX%[M;\ғhjz6kh)X;'2 5*c\T(u!CJ:A*Ԗd~2'"Zqص;ĈHٔ)j5};7f, LJsMrǩ{V'yVw%To"3-*)-T{q9jT ;{Ymͨ곖2eZ9b?:ϰUFXLfLn:gL/d*Afϝ8/5p7K>]ر2f=c$w0}*:>QH1w1Q4Q$bZLЪ1#I'9{ mEgQSlի-,T|#[;Rа*ooܖ2WFY\цp^4+Ζv@-Wg?PF_M *l"`=֣z,57 I\y'oc XZyݔP41}$y W%)Wk~Fj:h4s{xr|`0Q$Y?]6`ᗐd/9L?bS+Ԏ3gNl|IFx^Ce~ixL,wOlXJ[Lm:ФJ!x+XSyȖ̯p))b@6QiVi5\gvYѯID;z~eTsJfDG9v"|Qs߫H6hH4mF+J~x{ݑ)p$`g %{+b~i/95}C_1%m*ЅPbtG6P(Et?B J B;-4\]N2`{"l;}ฎ0sf^X`4R[tt@x04MNz,p6N7Byk8ο/͂\%4ç#@5હ0w^."ОS%&g쐔о;\E$i9,kߝ{QmEaK\_) 豘2R2x`O?˲&7מkᐑ.>MPXV_UfUu&%װ薎l'qUt 5HWt6 RKc9*wS?<(tv(ën@.527y u0Bdkeוz P0*w /'aj81s(wH)uu,pp߫Z$7ҕ$hyIdtI>A-<!d'EsK0BV^V<`Ӫk֨5pZ~c/]s"kq1~275cTM824>aHݞ*? Tk'][%fObF\:Bfg4+6Nt & `ZN4Ma;XxpE%<-(?"^0 \z݇A݅Z.lDk ]31,~UnN ףWI{sAM}٤YH\h+2?w5OM]īi\YtD/~ŦN\@`*/,J%+Br!]>+a+%OwEU@t^[#T4vbUi A$kAb=R9b-%XIFjB~^U4_9d7rkoQ3D]Ҋ*9 GټbRv֧wtr49,FV b8k 47YK>.o$zD|u; t[tB2o@ͭ}n܉f=}S*?!Bz(H,fSHQdj?jB1\eIkGdU" ϝxB>N?s{j9%, r~״t+0p>g0Nة3TmfD=c)r˟c.gd)BFVyQ}T>A[zpQ>[]v |{$FYn8d?*kyQՔWC&LWOj tTVF_., ?荢Z<ڢ៑a\T-o#Ё?9%aays~yΝMD?b]•믮g,GIW/7/)*Bv/wHlN)e8uoDEHʮ9T"KtZLφzܒS(]/2K6HEJ!I*R3;,:I{7T~ =̞auʥ|YƮY򠠯pQm`gQIԧu^y%a& 9%Ǘ5u4v_S.Ce@}cWq`UvO/?͎+ #̟Cd2_,Q˒rQ.1>:VGL7,g!_g+='~D G6ĭ"2)8ِ6*wbeYOc~bd Α 2Z/(EW| @hliM7( u8-[pپ]j-Zf[RҮl##&E<{}=uB/a-LJ[mj&EYn1'~Έ=Qxv^/-14~F%q1/'8vsf r+*i2u*bWh #{hn^&2+o[FqEDiMT2ٍ'nã,9Eg2 e^,kXK*րto ]X_02,,\$^+Nx 58]|󺸴I`u*mGQ iVO:Pbe\\DDŽ[~.jL7'] :nzX eA1ڌ)Q?ʙhַ. TԞ҇]q24 ɤ{i;~c_ -!Jnw\ x ĎXq*PЉ/dP$9-T7y>rsǓ WNdWn1c#A@H++a\A6c|FTsJ;@lA!国WwC|n ֋Pv *F(Q{K&biYR<4O@",n_ͫ XRs^y V8_: δ/2$(Ww]dJ4DPm3^~1=~ ?|nߣ?yv5l@ʋu|;k6jԻѨy"}%dZ^E ASH L]zK hWlj#T8 Ho"(qnjЅNR`NjcBq{]<3LgKւbЏj : (d/-/ n$gaްL L>1焯ɈmlWL u:',l6ND/IQCii67Tn<ָԎ炻ަk I|%<ҷ'aSzo{ NX%#Ds~ixR2,$e9^g (}d),Fk g2>Ub- I_%~<-I0Y/>&@@gFWtUhݰ9UhV,$U:{_. ]QwyAoIt`{*Ϲ/!0TKk1zFtR-Ԑ#USpM<~ $Vd[wbq?F>)Em9`~ͥLz(oLgx@^"{))慙 UzKrJA=.(o_sh`i|V!u>BU4m }ϐ5_0pbp_ԔVF)!(&gKa &'X|gSWYq[!kH4̔q +RiU ?PP#O4ϑ?/ycw4A3 J~AL9-6G"ަܘH y_N%T+׼&1x;Ԑ>]*ogOQ's@}G[V`*0Rʩe+KeI:fD<ݙֹ5mfr.I 60`7,t"} $|cޤ#G~rшw-04ZŮ^[jRBj{˼th >E 3ª8pYďL <4NN7/.6dZ=g0JUc[ С9d/Oܰ]3#WqΜn=kP UaM"njac/aZ,RPv 'eH*5uv|42鬼%ԡBZjJH$d\GjӳZ ?5TYW6Q2d+% \|IJnnjO>'IZgg˻'^ +>gW{{C yXZ BT|Ϧx06 ߟ NYz?jdN᧔DBp_D7? NkZbTk:߇ot:cd%C=Jj"` p Or,_q[V˴Kۯ6;+9P!078O.\=TMEGIyfF3\=VEI#Tqɘ!8~y$:IOp%V$^oHwF=!$u&v(MǒԶ%Ըn9B8}p! H*x'rW&) kfK?;**S%I*Ei)zvTI\΄鲫qYg:17iaNUo2Ώl>0}瑘Y:F>ToZɒ1`1%u LՇI%fWxHe~}fe \:8)w56/klG|Ί&fi,nz>}įϢeoH  OLApegZ);@ P3rҢBoV|YA QYK pa]Q:X}1G%׺7F.~}F%(j|! eϕ+ 6N]:lO@Y;''DQBj@ zB9b'?x>rėXqsO%ܿKqXPz'zQ/A'cui`FV+̪ۚyp~Q9P:+hR͊8tXȜ ߠPƈ!Ղ'FƢnuE.rpE;Լ-pT.ݟD!  szƎJL^b{~]$+mR"dXj!uq+YMqRp|'p=m*ј_67'"˾үX$Ię'TqDL7z=-b x2y=:}ȴ1pS&[c"B)6LE7wT&Y6aΖk8أ;yվNU}IxG B(;7q&ņtoUqG#SJhNZx*W#.)J=hr"p\rΌ7>+c)CqhB,+ҍ#RJ0Y8֫(Q a(w"ڏ2!"9-vz5TTu HXp&/]z]6!'? Nv81<[M˭vTI8g]yN4DesaBLZb {k2''/:YN[:6R',Y {* a CU!ކva(6b/>iӦ[w[Kniǃ/+^?3l3ٚږC0&`碶8{ğk:"T(wOS~ńC W}3)6\fy3k\67}jXVEvy2y5N."s`_RnPU#zJ$uL$n} (c^>-^+$.S:y :G% {@?XӍ煍Sցޙ"7,f4Ţ"%Խ, FZ` 9tʉGeYq[,>h o>IrpC!+?d/ *fDxMr^JPgx7eDdE86.VY;g=rF9hgїwj;E&ɧ,{U7E*ۘTRvg[3p.^t|mR+qT[}|I}%6`';Ԭܽ"C JYgz[;ءԩ+xynw(@^R% Z6.*x4ƾ͈n)&1+e\zzkVQ0,@7D&մϖc[ԥ *ƠjU[`(zp aw> c˨ۙ~يR۲Kz MLMA)DQoס‡dh*Mo#-}%1F=GrT/;W Q 5}'kfpU>z'* C>O'RL& mWΕCq >,Q~j8=ϬT5.YAJ@h2[!3u^x\܅n)\f6,F?ov%mע OƸUzt.|+X!IƔ+URш^sD:GW%CB^=MsI^'1?kѤD'P0O_0>ӼD鞡N$ )k;Lw2y1 PwϭˆM7\] M[M}Cxx/XoJ3zH%PMߔOfsZo}SU^4v侀">R|E@nȤH!lLzX:aQP݊to?u/P~Ü 7 O M;R=z%q9p@6lV!I$_'abݰsǞ_I++p0c|t:֬uU$2([:U8g]W^kVv LE 玨EԀL!@fSLƳ mqSd)84^"V7` A'vN& 2"JJ3A-<ɒMdLQYX+?\b @Wr NwgF~^g$#ڕhM0+}(> +r笹s$O@ Xl&RW> e#S@։S(1C!N␫X;Mٹt H4Pi8ZYn+vƼT}0vcy"v^'t慅dFlmLV3܌B~j1T>#?M.l'Pr PΠtO?hxWIX8B^e)3y8 rZ.Tb-gs*ɕ4I 6`#sr=̶H=Y+Mxԍ&.HpFV+eHܣq=K;r\FFnzTr̶ǼQ>#:e'hށ8f2XOIg6 Tm"531 C~-Dva~ZSq>L,* Jɫp\)\aWovx䪽dW{ts%(ڙZEc8s Ptf^* !;nyY-f]z;q+բDl$(g~?gQCz%ڠssMOeԕFHOB*f 8 uDe_r?Lw/0;B+&3s} -6FjpXÜ +Sl~!Sc4֟<N:TCXzzGmIf= XAup~ϔk Tb*CYO[U<_T/w%'1D?=+dZB<֩qysɛB5PGO0 /,f/Ѿ7B 1:-wnEyj7NLW{:1SЃRI)JjׅwV4čm #?(A2beq8c8d&R/ 57PLԖoܿNJ)Д/zp@xN3vJxz')fV(Ľ'ROGC .x~Ltxp9΍pl;5OSA0*su0oTW{.o(>Q\wkXpd47k%|=973ňpY=tiUIV6-ŻGEKr012Zt1R$U%V8 I%َ`*7wVvz2o$+^grvP7dM7ON.(^E%⽜yttD,(|:rag駇\ܪG=%$8Aܷ@cȻEҤ1o݆Z".nZ=cF'!8չUk?SET@IYY N@ `T;KJM#0 yb;pKnđ_E%Neq u/賃0=*ČEFq̇H~q&|K;Y@\QEen+isr 2=;BVs}rܪY:g+F6J#fXmۧJuJ(cK$[Nc5S7jvEGD2qre#3hY& Q(pbeWw Vh``3K,QC(/]?WV,V3i^IV<e6,$]+KTjE;9`BMsx(= 4mvK|!}OqWٲ:2ڹ$ğ<^#$A%l/9[ȁI^^q SHN7|/\%Rpv{\@CL۷CFn^l%IagijpyV!\[ leMv῝C|VY%ϢKWs&y5Gq(Z5~dHl)o-5nh_u="B<h,=Ж4~GXÉaq:ECcSJżVz @>3mJU+.!u7ʤ6ˌ}OȵEpYk"ZS.Æ]yA{. 7 O[.[ sx(21SӯTŵӆ*3Ba:SLq*QJv1Kd@䛃̟Wa)H]jYFL Ƈvv.4݁vQa]u*M _.0K |#~ia&uT _7ɟJT,\Y5q3p{°è{ Pw:3:i`Te,sGȍơf5c5:mPe4]~ĵ'>/q^͖JPG!b"|IJK[a !1goILԈ }dx"H isoxՠHe+2ta!LAyg^!ه$8U-S֕!}*#2reZB+`qX`ws.ԟF$ҥL@vavo]ts7w[XjnsJ bbB X-XDj`Xht&Ŝ kb߱OZM7S뵯CM2auxaAkuZ5 ^C{YEi̙| Etr3q pM8jw|h0.=21II,bL'ݣ,_R,4SP$0X.MTEe3/1pLLZ. tm)f:- Ouߴ (|y!Qqᮀ]f4v-49ͻXB"pUW219RiH\o r 7 ]@6W9j@W9>#} iTL?{\%>VNӜ9{؇X^}84J/=F4Xxlqe QT˿@V78H/ԴF.Kb9Yh*]|cx<}CTa{RՐq0V3 =H8 !(AԄo^N>Dz ،S8Ɉk >Ll- xN;a.ECJ^`~-P]jG ]|ʇnj"\$p,EE@4yRv=(Rc͏("볹x/g ;eQU3:v XqD"j{jxpa s"~dx`wrJr SA4R#0 G34T L2WC5hΤbZ](`pVQJyg$m=Jzm;r 2u*^b-bbM1l4\iZBݖYaײ o'A=~[Y89hF?]"rYx e]DI%拨./dS9n&'pLDOGv _|:ց9m0hnB$X-.a(ـ\B|?0Ixk?ˌ9m:GP `.ޖBQZƶ C^@QN͇ !cFY ND|[,`nn٢fډ7yy2Qn{ZcDx=j[ g$ 42ĶALL;K*:aEC~}5AxZT0< knfJ> G${$ ˲rݣ%&.uR墘6h( .? /ȵUߗi2 SAݧU1A_K.;]DRӂSW/>#pK`=UYx|Ts4l*&n'ӰNfΰ^@+9."=F*B U\g^#짤07{@T.TMVdfQđPmLY:M!ɫ<~$6Iy Qo]r~1djU8oSs2'umˣE9e'1Dsb!$(`J?CF3\ AH7D 9qG^ȥ)jC\ћ_ֺIė{T)AuO>xI-{O+EN>,Je>ZJ$+|DPSItV-ǩFhLfodr.AK$T&S#ecCjҹ4% vt`)Cϻ(g~^qwxq|TC\@4ežurP敀x*jɓ9afub\*^gl蟬k]RhLQ{qK~bYrNMqMb}VG5QZt\DhLVSA\YEbpLJ〰9ء%^x}afo4n*cؒD ߲i_%E{OA_5'gCT҃S+NWtS68K;I^1DORØƭS_ %. 8ɰVtHHb,,9fgr$V3J <"g뮛f9T(#mzF^f;rexqH0hPs$_|HM)BFQyd'?%9WB]ȁpi(Ka9̢D2X9FfyՑGk> ;rgVJ cq-<ÊΑUF`[Eb̌Y9`ĀO@63Ѓ(i1? Rtn/&bF!p rM]h$`Ҙz9 ~Rz:P ge#%@G/Y,g!Y+:[ Vg0Y38TMZi<2q.h*|9]57Mʘ4I3OYm/pK3, }GZYyu*j@x H$KDV5w}zͷ<͇5%w>nV=B+ Fۧbd(qi]aCkG)6 VEiɲ.L(w_2$J,X`in ^1h, uBuOU-XHg@FoW6^!O҅ ן_O+fl欵W/~Ig yJ!^f&ObHv/X'b*])4bʜZ-햘_ 2%Y NݶӒ0tE7Z,]isIv!Sڗ s2揄.;؇?)ހc\d%o,_Rss\U:K=CK~ l^v"į 4/["]rI$[=J/yfs# -->J!&Isc?/pEYo!ġX i+;eZTLz߿u\FGT?w_7AnAHd+{TݛA-E l4Szڕj+w[m0N[li-K@$p >Jڽ6 E!<q S:+/x4?P19 Dbmہ@ OD{ƒX4nHoK.*:lq x1Ps,I/+=x*lpn j:q=p:Uћ1]f -0 `_c;2t}C։؆ D+s:cj0 JYL21-TT+{8#dXynS '7tk ))ߕBpjb\DoȎXxDJJZ|@ذbd4&7a vBf?YQ~w}(qS7@Zn%Ƒ tNʒm3%װS>-(ݭ>JDZ~7cQtB'7jݑ0mqe{  hxVU|}۝}٫FݦdՉ 6vf4PeH-mBEYhEZ6LJ~22,pgeUMcNAE8A L yFxvW*rB."lDE%J|\ Vg},~J?G  P:v$0 t{e(u&do}Y\ݽ_nHj9r}k+LjiJĚDx)ų :Tm{=#R8><4QkdB* u/k)bVH$Cs7﹠?]P ~G\e-~vfA8bn0.s.=ȵO--#/àk[=g}$|.k焲z-iݚ9rLv {{9,)Ii ʨJ|}O P MCknG8yQPc}ܶ}B!2x&xhxVB6$KEH޻KZɘ|> |gG1]bdy &Hs0$mR3x>\pes…@WdQ0i5(lJUwlC:N*Jb>2h`QTI* MA񚂄l2gD쩌;!ǫ tz,dVXW'r_Ay"M[d Ұ2gɧ[=a!ӪhcUɩvX? ;iN7v6m-ڹR(4 ~ZOva>m cRSL>{W6 xR)LݽʘHqX%r?q1-LN+ExZHڢ<;].5_yY.ñp7Ft|Tc2jHF[ѕ>o✃WWnHmop<*'cc"jV:Kx ar)Jx,.eߧeWmTԌdg;_]x3Pr0M]DgA 4!K15'޼W}cOFƍY~x;׉zZ"0/W& rBEx%?R2c3 .9SY,&/{W-)M>2sy>/aB~xC|i4k$vY5hŶ/ k[\EtqQNƋoae۔G):l," Hsg.#9ofie\HmL乼Q $k[s<Zkgm1jtx06kt$Dj)e@+=aR~暀3YG˜J yK#8LUfc^)$fs5 %_$GQ@|%P0 Jgڞt#"f>vH{[0-/eAʴ|Wff2xYPFo-#Um(!GIBL륞԰yQ֪i"0'c7z92m:՗Wް))]Wk)AZRG"8A$GjŤ2m"'}bi/ dsN RWx^fO4'NYw(ɷ'NP훁M*"WH ^"'-wXX%ww6v3q&4sq!GY P w<OO6B^NqǻLp~bh 9~I^OH9$uaSyW[TK?$9ON_ j$p/NsN5:u0=M9)9,|4iݺ1I;:iy!ŲKfT]15{-lREyfeGDj$"߉Q #0R َ>8f$eIiw،lE?;aIbǀ ֥%4BI5M^OJU|p!:Z)|B.k֨Zn2Dm:ܦG5k2;/i*kd(9`lZJ2]1 ʭUJgNNߠgp{?ӝ'apGtϦuHHZD"Ι92kxGV*6=~SZcEMBbR}@$uɨI㼘Țp;Op@]t!]?vd8]s6.^=yF:=Nt^k1K!aʄS:vH| M^bKF#bQSӉ{Z8gdVt7I"ԶO"±!63xG~L@r |L6G,q`e dn/jXiI>>䰯&) ɲ\1_HCm.QcF8i"v@>6߽T@Yhh\,8w7ilSªWP+!.1c}6򋦔j."L/Q,iF͗,4-4]p xzcƠ':툴œ~#);l6jsǙ%**{Tsv%{.~#Ak XngMC(H#5&ׯ0$7Q7r?KX Y'˟hd_`|rR^+%i~_GcjՁA+ Rk;pc s? @jݔ)_9͉f1[>`ZcO4ޖ7]I2J,cPhg~̺vD"Z~j #f ij~90`+ "P|b_̵$Sk{e1ܜez:h^< nꡤ:ckAE j3̚F1;QB!-$ X2: ,+ҰcK9(@Q>yi6<Xdz|e|a>{E)tOLjKWH+tqrlZsA"% %f 6bG]h [u'4LbB1VkM+2%b4"*F-| ,fd_ZEu"6dl<y, y"lD0c*vp`ձDpCn(;Qi1f)h]FLyWr\ͧI0o݁F\'}Q i s%6&  @AveWhlJ:SvuHMJ90+Df(},$e˝yģJ!QE"1 >h }(\c9t,֣޿&[Ehj[{OhjtwyXo9c"YD !b|5!Uв/ ,Vz>+жihI’V޿GݪtT =+30ek4l[ޗ5TJI_clsD]/Y TP9ҏ1qHwFT=QH}JD=A^]7N o %lKgk"L;)-" u{25ꐾ=8'f0%G|2Ix:h7BljS01-5bT@A̻i)ۿg_lު %7b ௉T'H*"(T̠`Ӽ^$&ŕ!!EؒI>xEqN-~z';rSOTJg{2B#vA!*!/G;f+zdw#MfD΋U;K+6ok N+fF#jpyT`3!c|@ )VD7Nv?〚v'}Y_Z$:K(7m{;#YkILŽdx0`UhVSbS2Fh}Ĵ b-d~;#(Sr['ѕ6r_.1M(;颃rWKGݪcUd Er\fs+Owi7~$3`Y}|P )o$8B1U]?u)y*|ίE?guD%"47߱sϜ,z 辔  -TV8ݵqVgUyɶu2Jb5м/zkwC2*V|f{U,NydDl6mNrKˀ|NajSE'9U=t/ӗ[xh'+ NY :,7![C}‰oQR sq5` JՀw98xK]b"+xyBIR7&DTCxJ7zF݄N6 űC򭉖^pj#rV[8w8|:ZҒ0]"jhЫ|pxM\#jRߎ5vh sR š!/o E>\C0,ND?)$ė%*]ާ ޏ)ZYV Nb &qVPy_qig>•HI:nɡ7fRN3gU?|q(9.}CbtD*VgbYSKc=F=dqaF˄0y.t2٦lO&l e/l4EŸ j6Ϝb=OxFSkCsǬjX@\df#LD,M)BSE yiK! D]Fp}<g/8!ۘsLdԠ![ :?F]Y;n?كgPsS/gM>)C#2<~"A8Շ`]vSNHαC!obU<G[f.BWUSu̙˂{ukjFmjlveLOƹF <ʻyN'/#so b;Ҍ8$N,.yiFNIM\{x 8=d͇-ƶ&bA(sEq_Y 41qWVg(C@ʟ L]]^1WKNb7FÝV3;3]`aŞ_hЧ#FےS.WbN7,g͑F*<hԩ1 2A "MlQCTuJW%so/*i{Tu8gydrycZ]U`̈_[ǰ¢;)ZnriveUoC2Fpw::ùtI֘Qz7WOɆ뀸V*]uon0+L*H>DX 2f:12UԠ }r^\f |@B̀epSeILY!^q$۩oh7-e*0(nܼn ʂ蕺ohKz2{QĩYF$HQ|ÆI:SH)ǫڌ٨"+}M\ 7?/?HM)A*Ø&#oMTvh,#? 3U絠aِ !u/A.iβe<=K剻|! ͤ8gnwNnR3Vرw ذc-B*r/:5TD2Cq)?̋oˤ ZEuO*!lQ8sUzԌy dҰ%'5s "c Xֽn)ȡi `Exzխi|{?kh] L`-/WOI|EV|؟bFoݠN,aX\UEAIƐW#5C_Wr ]t̆N"J܇gE/B!#vo%Ns@g{[)3 jqGl'vv^zi  C#7~X) qaZ7PrAp#DTAt 2#fھ[0"5XD<3ߔVN v"inڏH+*{1\geI)T}dȕ(O-5(NJR ACa9*jb%ꩂؙcE ;dx(oq2{׽ˤ}s 4jGYY^xF>Q;Ƅy.;4nP.cPȤ=1I(j9HIP >[Q],-oᩖvkti#6uV"pcKUstt?דLg8x۩.aqj(fK2CS49BSdSeFz$(615;N5 MW)l!f{%Nmb0ɏ:̏g/teJ#[Z`Ր%(w-՚9"BAbG65T;;lσb~%1ErTz{wYia3bE4Y|?:W\1[6.|B:1:`z2"- 4W~&7 x vB4)/= ~]`,94:L{roYB/xeVJ >Ƌh7^Uup~Κq6a%>M-0F:5eGͳf zTku-x;;͗Q[Ml"T*J#f&F|(} U.̿$3f&kg>J:wj:Ł*>G)#CfzFMLϘNJ%CUViK: mH@SPxc r4hb-#TFMИ_]#ց5ܼZobnVC2#E0`H)md9>>*JZs̢&#Ϻ#qfx^ʛ[PƜbg.F dO&/o| 9Q&qӾfHMT(sM8/G q3"^.8c(/%xC+*҄12/q<3L&B^:3 ^ KQ:1VA,+;V'DtѺxؾ,3uI5+b#€LYMٟV(ԧ)ΓQnYֲ^D#~ 0f {ґW*u"+(>dl^TiۀW2-j'ڀ@PלZ iF(,UeׇX_e)Z9 %^HIey< TӢz?VUH*h!nFPh@gšff$cpgE/&8vEVWMi -Y+6 c}X&T93,|:f+!!y_M.hC "`:LoMTc)nɼ-b8#3i^)mLc Us'v m鈐 $-_>,&OpxƳg&g#{88.gBU5VkBaV[ Ex|vglz-aGjiN"hXK]^2pE;S܉ ^=?,3]BU`< ѷd.l} Cnݏg9_+ y̢.Uez<3Co6iu8 TQ%[5S6Mg>W ?ZBa۫ם.͌[lHHv6?Oci%dk㓍ӝa ux@Zk獓~y#P +eS_c%?hS`KfFnӈQD!qK !I/Uo8e}:Y``BN:X'vmhcx+tkkF]Tj0bCaDqvǁOjD5䊱UԙJ.r4ŭ_Ч^F, 2)o gpRtKv# ;c1/9bm/7q7At6qQ2zCV*sҩmtSa55pZHȟҁ\DXsqndqYڃe㥹_hZ+OL=A׏mb<L%_אvR.ɡ5oEq3d`!}}MM\XͿ&i"32#j4!͇kn!G5 4gscYp>S+񵲬}r75u]ՔS~֭P3b؊keB N+a['|5xDL3O$rBͿnmnMA[-  O%zmdj/]ޥLKxh~ UH Ho+EKʧ-D[#/6'Xr)5FHܤ+tiZNjR_KJ=1}dJS~[Hbߋpv"՗ 3Y"r)'U|->oQS)wuokXm+@Í@֞L3{Q\,7^fw?q'4ErޙdOxfvw)t5@YVЛMݯ"Na=LNBn hER2QxLٌ0ćp |.6A? $1Cif }|wa& '@5 ř! zI0bCCJsGYT$^o3~FZc2 `A<-EYtAB"GCmb+eIFa(n $>@S*_#X¡Me6chp;ӻQi+܊gRX&us?3G0fݨصg6[UGV6̒VJxA9a$Я,E^'h7EUeW( qlJ?)`Bœ=P;0yV}蜵EĶʻY/eT޷KEYS)4kxS{* inJ%I5rzRWtTW*{ք-140-W@P(NΘQ9"+ūCN@%=J%.UQu3 {.82oZ3#*e#hE?UaAQiyFRxT`B혺$!,)18K6UiYc+.u{PMeEaZ&sy^}歔?ۄeŻYv:=|Nٷ23]*G[d *w ;W4^y;nP>٣0Wd~&DsJ]76.XD. pϋJfrch 4;я|yX3w}78̟)7*)~8-6QeN-yb4YM9\UzM:djdY?oyjl(2 1'cįK/c9ϲ&iz,4`[D@h) 7Ƭ"8tR3$=!]hOCAsE4iWߎ#%w8|ʅc|Ec#0RVޣK a7b ?ű#@}\թ~k2'5=ju"m`ؘ"sÓN9Ml*r[e0զl%jHƙRpotO3W"fM9'e˙{;0cF/:_E*rxV1RҩG=˙6P" zi&&T_ >t:uaK2Rprbo47oQ~(vln>416G-m?ai"#|άyuՔWYg3MvcỜIKV{\264÷?Ca*ɷspQG,iIk,Vwh Mz.lHm'P-8f6L<Ё| Vh>Bp)k1Ź6Qr.鹫:[^__sh>X2ph ̕b\^qY3$Vqz#q _Rf ':dM |( ͤ47&,9Q?NY9;Sa|S["u%Gɖh~q [A{V;o5y&c`n2<,"u>E00#Օu9e0_։)YrfЦG^Ϧ)%+`;)\Bi_%&3m.8$َE2 ,& ^?$", IHkX猛/RʩU'Ns!)dtS_QVt[!zsɝw ׆T\,[6 ڋDi2G !gbrBtY TE廋l-62QMtJf6- $O%}Po9,w4ܶlJ)M| 2l/'_ꓱK[@(]uv$)KظUD0Tƥ>.go"$qL¥S`7{EJVk:mӲVZS p:5ml)aF bU9~bp,]& .j7$_GahOpX175 ,~N7C< Lq޸< D(Mz/~]lDD}aEG`ci xPLq5 TѽHu1_6E𦬆 9Pf<qwB}57d}^}=iu56{71QS DvLk'FƤpp/m.CC2lCwhbӬG  ɗ(m+T(n&*NR#a 7WZ.Ȱb=?QuvHx}RXB]Kg K<]IЏhuH*>z>A.̖ Ɲtq%+|MVp߉,LNhR$?mo]&6Չ!&Pe=Ql)b4njJi{GJ띕*egS[=XO&ALm^ou'i=-*MK^R(|L5b7*= S=2 z~Бf~1HmYvҁISwo)J;? ?.h&i (OCԜ$yZ #U)LZ JhjP S%_tC([̳YM:uy>ai7X*l3`p *R׵SX=GкTkNm+L>:IKMr ^&W%CmKp߮zObQ"0xDiO_//[rKUQ8EOKsui6}{1LvR;MImm~@b"|(r+ Վ_Y{]tm[,dHxN޻?>Їs5A]2YC lYXqV?㵌7U31fIdxv˽D_<.5$޻I8!>H)|Mdt)2L9*:w<,]ZiT|1Z.JI-3} Q#e^͐YМƬƻT-(PX3k\$/*bM/$ղznvޫH%I[ 3skKFG 2'V5lK]8 w )wt1g鄧,BN+z5mipS }( tD*S~Ɛ6\vvT{wV,4\24gm1C}_NO瞟-a8ո " ={H`Z&(p@t,h j KT׬'Rtljږg9.5IteʭXU/ rnW`fC:r:^l&k!  "zcЉ:KoT{'mI h"}BzLozVG p .Jm\«!eۊ3qg-"g:*(n7ipbZc,p>SxlP[ƅP/h8 ޾UN  5ۯ1}i Fhx \:Y)t|O0&Iݸ3"sDl :}W&PBJ #IL2wbh߼f:>^"(9ݵx5(Rs~#UԑFBӪf¢)pD@NV\Y- 3.,h8>3gU WCҭ-vQ*Jrb /$^DaƦ;RS'՗ܖ* ٱYpU,h+ %wN0Ln(ag5quy?a/>M1EA~2v# ]09$u%"D944 xsQ_ņe6ĻyJ4xP@qQ-q ZrZ͍jhAѣh髒|T"N& 22c=%s&q jB)i:Z4d kZ yb|'A*h:^h<\kb@?F-9rBbXU3+dO{7wk]R'(j ս.BgBoIjN&AZ78Q:]^%⭕p {%ΟT4=3na|(^VgQRrl@x]L Fw@ ž%x7 2 Uؤ:FF6a&z 3Ag @ :Of3gWO YZ\u56nvvtX2O O~ Dvg_bp =0eVw8XJSv2-}u&N1DJH+goU|_Cįۍnvl&RN%~R"ɠRR6!.%" a)򐽮vD7~qQf# Oeo@K{`lqBc~F`^E~Ehwk̭?n+D$*kVCTe[*y,$z>w&?ww^g1NޘA re胥OJT Mp"զ68gKB[rhI(O%E-;c;_K!#3U2sĆH^󳎭9կlpZk&d_"4qu.\?ʨ,~\ "S9Pn}o,=20no.2[ ,ѯ%v *|Q(3WV9AƋhВ~ٓjHcȨz4p5C`j2W,^o& *5_N ̸%MkpeiRNYh^BZX{9oVXO5)eE?I:{.M4n`  wޖ~XV()''}WSNJIF(_J`ދTylǿ||4 zMxLs(zI7ȣ@F؊tѧ$a)"2 (ɪjմZ@AE`7E>J5 y>):C}tMif.oѐd-c*%B-:qd꥗Ŏ ,W.h/~o9T98YaVg}ӈkg#(?+cb;#6.K9n y-(xz  $ 087{~VrK͜ 800Ipr`uܨIeE%נjȍ)Fq!SV]53]sE"i̋4$ v*DX:+ɾm^(njku LW1I״q6˦?`7?`y!iB] -/g>Ъ컿,!g<aik'8}[9[ÙXcQt,_f&Tri %xypn9n@7z I _4:,x3: f>X;tK?Uф#C,EҌl>?y f$ޓ›:i2_(8@z#J|\}a٣ka|4 chͻ9> ?t4Lj$$trv ڟZK8#則\#ROL~+=zmb]U;U`_W o}%4_5Xi` d3GdH% bE,jG/o׭eP/EO4yQ6 >,(,[PY%,OۮMO;I(ChrӪɊך/"l0q}u8ms"SήU\ Ѓ驇+yÞm:.O+ݓ@Va)!]bPڞpǷ#uh\t{^CZ,.z3;DZa[ fZ@zfsQF2WJeUtգ+(ز g)D$X0)wa[Fh OW":lhʛ!;\N a^auϊfK?zȆw:IitNr.;2]hw2x+.w=&|)x',}%HfEf82˒ur' bR0h>E4Ă~\A!DhŐӏj+ڣm`7 xK{5}:kkr՞c5WmF7+bjNߘW1 h_Z4h/`!_?}8 oǝ/|Ѫϡ :83I -c‰em=#I % ,kQln$.Ƕ<-l8G]&;5?@ߌK`mʙ߰`e2ث3ą91>2*V3Eҳy ɌA^UxF\K e7n_Jg؊P٭p9a9ʲ9A]ug)ZP 0$QjP5[Nj4j4܊QUBݝCG-鶳Cn7b3XfCUJ*!.+mNٯU%(DSϤ ۫X,YW큼O }nF`=q,p GaenlS62O1]!k'G!)R%SYnזCSQHI.@]Lu'װh:l=J _[Aׄ-*2Q(<]}Z›ă4~/MƨI@}>de"Б,N)sGg_G",od1SwjLj >͗&'-y'k(ȳ:rm?QI(@[31V$}K:'HmBs2{'P[I%C`N}TKt6{@ډ9HcqE |KzeT"z%N=ΣxVCA Vɶ&=ɾ]?&lbT!oU{7>(K(H0.y+jVj\]J愕>ܽ~ -u~;mٵ">!k ^_v#2<8'<-[eBOхZߗ3i~_yom ({eҁлzYCY|ZB sR"Ng  T-u˪z'F-3{Y]{X2$s&Jt6%3,سǝpZ9WVхh%*@IrKCݾ]e~ /ЇJ#_dCd͏/zl]`F,AtQ}|-)n뻝1'q:6+X9?$c4ذH1(w6H=0sSki q;,z`cPwp{jRNYXvKߢO*\u%țV7!~I Kۏ$#F63z=/y0]#py%O=:?>`(6`k(:%ۍ1~}p&m\V!T=k~u(B+DdCb5G]>,g#!-puq8`xM] 2⾔jʟB{JGz8 J'.!P ,up'2VZ%Ky!$aV6q%z?ʠ4'n14Zn^)K nGo M#l 8ݦe9r\;ltCi6 ; Tӓ^{}/HN@_/@wj`0%=m0 q _VD4N['5\ע 3*F[Bꧬ_V J49,lF n%:2@kG Bۚ{+>=- 4p$wݝ~d6$Auд_:fd\LӱWi\,|x-t8 l%nnRij0C?˫D]?7.U7u;JwR4&eHusexiFiJ|BQw]e7iq{Au"sN#ڈu>2tXf:qF?běr|!ˇ7כI:+ #فf'͕";ۇ?vIv:8Z*wb=XUc`=)fnCܨozF~)6Ք2^AuG-5jK],&%DZoNeqkçGTaw}ey+ml0v[ QVskbbo<1[*&(} ߹mXrn2m9Dߙc۱<_QՖ^ [N7gȦ .]T}b%ȱ&ɯlK{a@{O^n/PZ^ ش5!3EŖ` Je+}Q7ϧ3E+i.|yҢ,D=D#K{| H- q:s_K4^Mrj$HE8ˉB[& q e5_U9jcɍVD#U[ wSR}IYޟvR!=]~V^$Zbu}As8s,QBKn:W|#*ܱylO7Oѓ}G<6؜gkZB/^W\%c9L!r-JOi޳4䶦MN;u#w2.9h٤`k[OPA7c*qr4ڇ(%?Ra ׀Mt^jczb?+^,9`4 >b @@;w;j˰4p5ܣ6! Ô}~#J;c_5yݥDtL21$U k:x@xͷ{s2"G9i~"? L{#PK!, )9HwF< 58-6"|irCI3XSiQB\pjQ>eWbnɳ1hϲp?JP5tu׀ LG6=kYLBpƛЇzWҒaQ tWq\gH&Y'vuGc 81] KtdS-暟+iu+ J39M%1X,떾zMr M^pi"P#F$%i&謉D_UEm@05uب! lwhBx\cP=8RbM[)c%8 `B~)(jWzm(,R_m_.ĽxI wƯz=Iv&f Y2J2E[ d"9@p *߉2Ԁþ 0TR1| A+QAoNDGhU3/%7LFL[؝bp?S3cݻ0ʻ|}9]LmS 1D~j@kzdTя“p@dgdַpNV elߕlGFeˮ-ٳ.!~!GCI5(!kܱh^hN61JpW5 ߻ʊ+4je>hBӼ{ cT5Nl\PIheGmƥz/R/&:U# WqaMLqኲM~ zTQ:SDAI4|06s!i-ɖpw~olő낎/GPG7R%u@E{;s2[@01Qa$537H9kTf3{ǵuwØܢI xM[0xJ@cٔ9k ra0˻K"4;wJ]>3a@wd~'SHύLKAucBowi-D6|P|ĚmWHiH p3)L:EG0S˄]>=1* >[%gJP+ޣ$/ݟ 1;~XLF-}h%r`fQ nx$Q8ncqk* Ҟ&6~%u4uÃ}>LKw ~AXB JN!G)LXL%v\Z#Yrs 3MhJ-J󷲯\*u8bXomEk4s\V'x/3-Vfߕfze"i&yj-G`J\݃A.#3Fqf9HNZv7"3Pa GnoW4>˂䲟ۏ˸얊~\BT/ϸwŸH arZT+Oۈ{eb6r} #3z/5?UM^]~Ŀ)HQ#qhcR#̉ G4{ #opj2ّ'  ;ĭxrtTǩ[Ejo}K8Rg"w.Ζ`GaB+;5N{l ^K2[ʶC!H/|ÜHuѪNs·mV_K9W@ gfhi wFmr\PYR-xLHw2ihM \s<SQmA5U10EG.88; PyBQ.y k<ʸSLivnp >6pwIX)#!&HYqcs_2Dݻ.zdUuœLe1uYjiPKhNXsk:֯5wjZ?\SWU۩>赧?ɨQp)rZpEpu")q`Y?3 2e\@yOfMM_R9^mT:e b"P=k:P' );K\h*loOFH؍XX"tx/` \+1 d15*+6vDxpc\Pg71 D/<&J+k@{"K7.3 2zXdNZäL䢤.n#UmB/Oh#$?NZVh_ w4("k4HNgUog :6 3FVwBYbͦe6b" ӎ9U;z1\, Ͼ AݹIBMc}`J irv94rHPwĘ9s߬ЗSW.6ܿžojiZ(J+L㌨tëAcs4Y1Y6pG3rYJyFO_ru%2 ;Rxy?kF>ղx8l嬣 ){\g;tgPIGOaf LܿjֺQPd`uGWf0HYL({f7Syd$G\RL@rIm儓QP݄RLĄeZj:aR BzzK6*%[f%q{Q A`#⨔V*4Pm-(~w=Pޡ;zQP rg=wGUe8Z)<~IYTX\[Qrg4Tu6yTo%1b G^l)>~ׂe#Z_3gg*A^Ɓa8e>ѿlG+1A('7h Vvm?b%:<5| M82L*=t^Tu6״o{6`*w-Ol1ŐNYTx fHVgs1`y -َiՁ#sƹ7x SV8Z{:\}]BW )9l7D(cGbjIݼ e$#vqFCJ[xi@ JC;V#  ΄;;Yx3&1wU #L}Ɠŋo}a?fb@e^a6]\`2^.3ߑ>$50ynrL{a kH2(R*Cϝ Ԕޟj6 Y-:^x2N"󽧀oŬ?˗dym 3RMepcrTe/wŠ@Ӏ"jaxܖaZ H=]_\CCi]t~9q~("Zj=wQjh)5 =T<(d}G_O6,fK,#ޘ!ɓV .5sEhr?xǷ~LQ`LC/WōH#Ƞֱ19-ںמ04C$w9iaJѥԝ$ZXOHV#&5g|M= 6Hhe~H=jrP/]yJqɍdyݍ;his%ZPj/8 X޶ X2V(,wko8G`zk8MqΜl=@d\t5qJôޗ( 3 +bAULh\{CQFUE5sHxzA\*`IGDf'Zw nA i)m Iʩ1an< w_\]WG 78B.H o:R?=[=py5s= ˼}mʂ >=9f%+ dv e,ۈipw u˩!JG0_WJ 4F_ǧKgؘLV`0yeCVq(’Jnh-&}02ΐ\WBM1 W8oo#~|{<"@(:ktW.hg Q@DT*١UxB K9T-͞4`eD̕ ̧=#$/ikw%Q&|0Ms%6FεwT"OECgn],*WrD죩]{V7cgJݪk=]=FjlBriwb1lg% V]{O{qX`ʬƽϟD >3>,J)ZFW<~.mvWx̩aXH3Jb]rP_„OtAWs< LgfD4匤R$:`;KnEt ed}`yAPs}yC9'GSyjݵ{J<BCJ R (VA^ F5Ȇ:FUeofW)2ހnZl:^2h> Ǘ6dO~;Jڣqhyr9B(gVEY9hDc4Z^@#g3كy)yu6U/\\`87JO &7~ mN& e>a=0tWkZaHMfleqאeVQheK igd~ ;rg}[齆Jp-$®&ޘ!ȍd/,4P *i+3FLJ=ήFKZ 4cOͤI> .XzDOd_3n!>(K}EHz$.B ѱl77SfGwzU'gE?A蟆t'k-3Z} DgTN zQ*{!ASU`"f~3=[5XE~a颾W)TK#KGb mtu* ™4ceeH$zJ;>'ϟƉAj~ nõu-8Pײ-jeyaC1ˇ -w>Tt ;RJOYVK#:6ӻ:%pbsvOkeX|d|{21\)\=mH>%tZI5j  #;jUF@~G,2$O֬ݥBӚroiUVcR#a穙<4mC_c،0-bU-ݓ ͈ C ~)jvJ:_d/jge4ė?ZgSI*ePE%-rF;q>jJ.(E.Jڭjk""w-n$ӏH Xφ|JLvl_cF*{`y޳ [@+U&v8`-v\@ dJt9c~9^C0bzׯ l9:?E?-^|NJ>u2兛w__\,4=w=*ƘȡVUt&ˣ-dÕ>njA4x$0'$>\`% \7cm 8t$f4=' $zn-䦠i1e+qHL2&ap>PcbV/].qEST^]^*_;ѯЎGK Lm|!pѮ!e!$ Abq AN͕VeDKKN-N{N[ɪA EL[+! *e۰+8!L╱(IS>`y ZCv޾u>T{zXa HbD_ҒJ}_P$V|ʰaYєt9d$nkWޟD??A×'yc|!L_&d'-%sRDįl j4a.ǎRSݧ9T5/[ ;l%yNlVIn*@ʾQ@"'mg, ;#8pđFtT$Ո"R2n:f6-){`ec&T(gp@3再|;$aזV-m=Δ+e;b<j@T 7eEPjsYKq8~?4j,6֕mޠPx-9T H?wZ. Lo\wbɔn:ڹo})+G/7d!okyAgyBƘVʝv6r#{,b2:djMN[xN%; /s[^ؔ)jCPvDw74@M!=&P:+یVko|RÊyKS'fؿ [@t WT;]6{K&hbTGW~!NہsؒaC mL3K]fzݐU6 ]J#êĵ>y C2=KLᦇ2nKSD³T }-^F5+7t6{Ն}m $68´ 7.P('8'I5D@Ħ㢗 dd$߄K(ʺLpU=tik6k[x2bFrRBۨ/q2l' ~7ف?ڍ }_cS+ϯ^<؏D(3O з| p~myhr2P[ TtIakG]~{+>|ijtɧY&Ѩ5&- [MU:$A8t51*\j@4rd?<vsv 4#\cBp6p`7Z\T '8j|J`kUkDz^7Uډ0゠ (je>b\ױAU@锬Nachţk [Wۍ֓g$oh 2 {V+VEԣEa~dx}Y%2d+&D!_5upr?;ykS1Ƕ̾gt&6z]4^_4>@WA.eTV,/@,Y٢ᎎ W/ٲ`7,CȭpPx:9 $ҭdhÅC!.g[3s];% ӊ/ *QR7s +auA3H` . MNltԭ60VIXu,?T"._wzoguw_t5:.ɊD[v !^qL!J&`{j6杞*qYA|(ś5&#C=wn"a4Hf!m5? j6\ SCIR({$gz0n/hϞ+Leu -D'+RDY6 Ks\ ?gܽ{#n(PG2- u])őxHHhbcˁG[6lZcy8RGMzэ 6O^'4HU0 s2Ny&|ئSWX$bv3^)\I'O$եh2_({qZ5tD݄'+MHĐruزGU\D xH )H B冦Ek]&t$(c^h XO߰˹וo_- -.:z87| ]Ki.$ϖ*z,W@cB'2Xk*P؜~ ;Ŗ=S;iLicdwz}VY+U oA9i-Y#w"ТRRDܬ" !A* Ssݞ%n?kCn=0F0iv=s縦x/ӊ1F4$)S ,ߨc#Jչ: !^] %T%XWp`x]EZ,U$P̥S<}M03-BWODyђI 35dL{3H%0zډŕxJ Z3 U!̹SG>S F/~,b4Q:,X*,s|H/7ٍ-H2 7 {:+΄@`RmICFuʾ{9g(oO`s!qf$bzS4%]ko~ nW/(z"(Zo)+EDWAO隸BuE<8'L~p*E ֊=S A3.ߥ uJ"]k/&ל+qHSz|4q%epP&(O_>50 Q6},A?ƹ=( vT'uk~8(Ҷ4=VR߳>*5ʋ:1P'0z Ec]DYR DMφmǍu7ULqtwvmMl;SKq&2XсyH*OaVӂ+N}:r1'p$RھfV˃h# 1w@rR9EZ>CqYϩCm␞Hf/ݼ>-)=y cvC;m{޴mlԃGJw$J=g H>{`T_Œcx޵틭5< ' iꇠ}V(tsTq{:pqhhc!]L R+AA[<M n@On%z>o; B*I]T g)_! :a%Õxׁ~ׇ8&oǁ.aꊊeLPbl88l8 7 daRdz|V.H<<:HnQFZoɧF1`.gwN'2aT'iHla-wQMĒWo|,Wcy<d`W\;~94U;3Ga/7׼e?#dŤ>alN5 7W4 \D]"8% ׌WO8}A KQAHeIlh9ؗ~,% ƎJR,Q1ѬF$&h>zfdEy0ũ YJ j/[|Ld~RA>}CX“fb!u>:Xŕw?1b umQkú>0q<־vsxbV\Kf«{ ru8 jn:p@Ȣu8 0Ўm.%< qGZ tC1;lj j Wcs ;Ik^QF mS.BV߿d lr(p` \w3Hޤ+n T Z+˂߻H5fc%Dc/5N=X} ہ"VJk\ _Q`NM~s00s؁ktW^^7)G4~ `'i:wi.}0<fwr-{/?Tb{F6' )lqfҤK:wטPƯ]M f9; Q)8x[QV<+ҟ@W`%ns>ALLc.+ c{'Ř,i g!n\{;z?Dd1|;_iH2yUWTU|N5X f-ȊFh<̞{ V1!WcxUl⬚O*\1{tkCWLwʥ6߆Dlliv XS !}~*MhQiQ Wv*]1v4VR27aRVJsR-Txc5vRxQ4zO)(ڄӵQb*XV,m`prOD&zV C:JUf$}0*v PӐꞗ'oj{|dk9]D("loǡ@!Ozڬ~Xx=xc<CFr xx jҭ~g`F Vk CĈ Vא#%Fys|;8 $"jlǨ;o8dW>гer%<|%Vnh:cW >~q,c+ܳo7u}`p-5YX,^Wt#*2. qC+Ēb2'@ Uޤd5A_c #VNV)+@hxm>d\NhE;Ehe>1< B˚4]hr2Osٍ Pɘ v:etF8[_R,yve]- 5K]gMtMgp,@#'@-8~loW"O %;c܁-TVv"ʽ㍅8Y?&J3Z7a{Ogw>d=`Q}29GBKTKP& ~'bW*x ,XJp iVM~*y#քIJj+GI9Hmʽl^pykm ZȚ*RmB4j4^"~AQߜ ĺ7,~D'hG>6:Iuݷ_=>/(vQ[I]>8ER(>~i%˹W%jկ?su;pbߑO#N^w5ɖ_Nܑ`kk&|W,"_a(^`foӳ%u}iL<)G~R9{C,f9nd Tf=NZ ݷs_R!X6Sso0|OLA 24o "䖎 A\1حA݋fǶ1p -.5HEju':Q;L[S^w4XsR4s]wV|Po$Wy26:{ORlsgwaS~kU C~P1tuK=DU}`oa `NedʑZv]a IQ2J]S*b.uWqݗ C^2ټ6k^j"%WQPrY!=/GV(-Nfy2jP'gQߜoSIh|x' -;}to=ctYR5i&?" j}L h,c0'ܞHaN,v(:sKHAr h+3P'$A.'D-MDH%f!NԀ}wi){vy^S_,g R.97<,*8m(2/İA)xH-ݟA!q4C( v&/ ݕ!Y _(i+pw8Ma葫xMDV7 YT1%ϒz|p\WlodP./TʩZ%1Ҕ*xr}ki ߆? bR(O%g~ OqD!׵Q6_z vM1YVBP𲌃$Tb #QW<MU<1@T,vyӱI1q%Pv%HQU_YqMGDXq75?7/a )=|+2< G@Q$_Z+]`xk=jQ* ݝ α&we:}~0/${wx}_ȯҢ'QXm#jX BG/l%Cm-0kQg[@E ^{s5Mf싘mIM.Id)+ojRec_8o7 [&NW$[D{ nX&Daٲwp4)pD! Wr DtZd 쏉SkߊO]ʓ-778DFxaJ -C{26 c+4Cof"fsXΤM ֗?f7,tȡudK/SȜױBv8F]x5c~8UUxї;T-܌y|:2TvQdqER!&]-n'ҦtCl2IѠ >) [G' WTEg?/OMh ϘRaMSUn C=@e|gydqz),╻3>q9P:l]j":; 7XXk=3u>`u~+kAzn|o)Lrըl*:PkqHW+Cg,G2c#&1A/h/f:OZ3a{2㍀oL6ͣup'}ʛ!02 Xラ,QxYp%:-bΥQ` ~-ã{[YieƄz&Z8Q/!m+fF+BKU=ƏYE"n˚),D^6Gu[FN6F)J|Tf^8>4NܫV~l+BgZSwe P͓~߯)+"' $̋'1%Ćx!&ǚԪm=:%&ۆx3*`^ \?K/b,Tz8gqU9lBH!%Kݼ+oRXV-lSk?9f{&Ul2 7FGUσv z6DBH8lӫ~w OϜI+G R^tlb'leC\CQw]+Nb)c"3Qc`4meg`dWFEs_p4CjtB@ äCڴE=ק8-mUKs+ҭw }R/]8"ؤYM)7̼$m{x@<64'\ݯp o}x5x^uzbdJPIX-f| 󨼖ňq4a;0PǷenK88{ vImO'?w"@k+6afHcVC/#TZ$/rD0a5S {x8S,]ߥF*UTO¢]s6{5vѱbMm5e^G247pD[4 UsV8"_nrAp1,|=r$PW/`7TmQ/LW)uuYy -EVb|cɰα~{!υrbͪiڜ҂=j\!J^Ohj|KmyABlE3g#LEKiVnˁtn_jD}>_мm.Vyӂt46M0 b%9 qh JP~&?=*~1X~sUj'aP*yTK 10EĤq{Zm'-ioaAֺīpt㟴QJ#AWC[YlbR^˩!jZU+;ѓ/j6 >!M!Yo-'j2$zr]xʭSxKۑ`HIlH84MPpk{FlIˎ! =]6m[ qI 7i5sKb{!%NJqeI#n.|`4aqFbm^)[$*"QPpbQG1]nd ߙn?G̊(ۺo}yC*qno8OZ P(,ƻ:,Ly)ɁѻA ۀK늺ɭf؏B[\bTºLLzqp$y[{y$,r(dp c\A#Wr쵌(LՓ1tS]H`Q RY [pwsetoJʎ¥wR*Ei3cDFώ'}=q'LeۮGw>"dTh4n+mPuf{ N0!}1)m? >ҳ uܾI!J֘{n X-0zovXz ]/{U ӱg7Wp J.!"Ϸȶ\ZHYrUo(p-9-a9!1&PC[u\]7v)Gvd HLWL-e’H#[2%)LgiB*."N8p)apv %3N{s]C,h$P{dJ';y/T\bQ?>fhDRNܐ;'X L@&b}[(?/'6q8/)~]9|[ -]΋<;Aevb-B+D 1C/i%ltof{U<TŞ"WDy}%ٜ?PS.ms)(B$Yb9)4wR||$\0f_my7Φ<RotDӡr/sڗ&nm~0V ">J@H~ I\[ӞtVPenN>S*W.(U^~@P ɢL}gU7A½mp8@:j1C= 6mf\d~x}0;C"Ety"-pz/FN(Rkcό&7$N)S8|< xŸQJ<5!`žBZN@M55<$Ӄ%gYĤ]_^*Q~eoA&djwە+$?4$8Ǖ,75z(="n~ 'C3 4sr7υZDzr7Am_BHC[綌C Q|gW֢$#;D) ~ )^ Z tq]M͹3[>!;g6˵C(rdY{XإdZ`a8UX@7QLȶ@(w)t&%o(ߊhڿUAΛ"v#sSb6*f4vO1o0g(bOT(93{7`a-Q:5'AwRb{0)e)e`Bn= ඣ#W&%):0"ӕU7&>*3ҙӱ|5PʀWe>Ϧ~~/G8bZ(0u:QY2yN<Ơ DRk/KiW/;swJJؤWC9xC fMiP1"q\h>|4^HD<3vI*`\*dP55&JH1BR7 6s!eH*)qḾDkT8UɹTjL9L_*B ʩT`Qsn3KXX)G/) SlUn/M\m/=<6G]. ,س.`5M^`LM;OmĄz!E&Xj,Yrs~QI4 Omof+QVbqPdaLU::Oayy6]sk/X|F^>,P? BW1x씾r jB.8IE5xG #||@ƥ^̳O%"Ʈl^e0Z͐oE*iJX$v;h$NF6p=(ᇔ0 VáBN9)@#He?!/6H(<4)Zwx8a&bmW4~YvXzʳtWwۼZ9ґbXw=ԏHA=7.01J>}z욀(!C]N,`qUS#B:MLyc>zftI5P{/De;I6rmd:V>?}:*ЕOKdfx^{O^=4?{M1/Y=tA[@c g d-X1ua|3z8~ԒὟGaOdxY~F'X;G2<A~4;C/ 6q^4Ug+KVޮL}hFZ4 k5IF0u=ԕdhTn}1;z'jyge3gP *fAri,am|s]pA-jsDTi4:x.VzZc&ء.,4pwZp n4G rOC;4ED6aGNB˔Ӄ'@%> PDKL!wjTck\N#rWU5Wxh$(^_LT :*z蹵B7wr{hFd'ԲbqS-Ec02}iī9Z } }hȫՍ& i6pPa|pQ>Z2RrЍt(p܌Y1FsX? LI_OD%P+C|A8#UG9 :T;+>-Qk:IB5}`9RQ,e_)[y[S uC]2qЯ#}j\PIl2J++`WN$VyU6HUEÈ+)]/ᅥ#7Kj=6&0댒(Y".8F]= #\M~Or!Yg߱BL^2+>4Z,,*_'V^ƠL/S$l91KZ]}{ a{R0'>o88eoDdz֬/tFZck3G.Pԥ"Vd_3/a 5cN$cfa DIay}@R5 3dQnkqPՁ%-#y(5gOY Iȗ ƛ*p:~fx Z1->.HY(@rN׭p0%ZH*Ek>Nl2y;M&_dmhm65ҒL9$*e)ǻ%x1ʭV5d?:ڎ*82XZgL7sj*A!- w6EW 3S jRCfvkp5sy,F5mS* Y=BPKᗈLFTI=qa8Q-ؠY>Igݠ%qɖWh`Ōܸ(\YuM:|o][CC"5IU諨 =wh\."Ikօ蔍sv2_oUDc?%UlE0LFwF#]spB:Xzr^ ѾIul'(շs1D[Ṟ\̓=w+׏0¯ `!ǍQ?WB~W ԟ0|ְI $D)-_O|󮇿b#H.Q=gFD%^&3c܇飑ZLUnuEf ܼ |x2i`",lZ7Y!-S}.Ȋc$$Giq}Γ$#й J-e@cv"3FfdLailwahMB>V@C)TU,PPsj@qZ/ku@6d1?/#Ѭs+>7;YIŝ:'=l;Lq{>r۵1vX؂]m|{2S{ XO}^ϙO6)mv{~(= LVBe!.?œw=f'K71u6~ռ:qIhMoL&YB'c;>yAӦ\0^ g tQ[Ob9R(Ek=KS owǟcsn7Es24Hbwz{)>M_(,V{[㏖aLw5?bh]E9(TB{!l$Mn~9p)dG렦ne*tESC=A&b(r^z:lhL+ϸUU}\9%2' d}wO1 oGy5]q6(B.zjjܩ !:@jPM@6cMж΁`]ZTwfwN%v+5dž9;g_k\ ={6 0fD]M"[e9' PY-cj/8N R8@@XxHV7,!# H0A3jZiym4ON_݄`B6IWv3|h])'a҈wOh`A95?n931ZcjwO94Y>+Pp43Fxdɇ;/ʫ̵ᕦ39ʊWn`e1[d?\9F^X] KyEVHsqǟSﰻ:x_6bz"kg{h<}z ?I(C9_0"*-ppjwi.7Od){HBqh ΋J_KZ(ʶ{t}LC$Zt#=(QB*)/[]fb'9XCbIv 䁏ݡ87Rڕ0uuE5:ndp%#pmɹXIF(I$A?젃A ZY~KfSS`cSWMhuXe,MU@n>R숛#q^-[V:$k8_پ&$& =Xc;؃13'Z(q4-BJo)#g&*ཀƆHAg7(ѽnbF8} 8"5 Nl;A`iys "c{~JHzt[x{}څ#$[_P#ەjn 0unjPcb/BihoroЋm 6\ik&l!Og :|&r=fd:Jq1_w^HtԵsTz͒+ح8˿/TbM~3?ak}*̎X-0ং% ȋ)RazU}DՐ'Mc 3F.3">0hV ;xŐh,sh a><ذԠe?Gkm>>th=e\ɚN"e;P$N$K;8c(> sWR87{Jǭ5߬[i?˜YP"d*MFτb WӼ>BՈ+@,ۓo`F" UbH T`e8I`AE3;|8?4ZKzώw?t C,opLF௚JrP dÀz_ʓ#ic3h#)b^&Xr۩Fk7YOcyN R5SÛݮ?B U'& פm%,,[("@ 1UL&=pI oqvMW8xZ˭9 ɮ{ 2t矧1 xLmN 0oy"c۔,8a ^JCV̖7l-K^C*E 1: Vm5k@cdIcE(~'tu+ɽ1 98(3g}0 "=YYdSUfDmuv[וcm7{$4>-;4R#Y}5å4G[Qa"7rjs8QȽsͿEQ~pblNZBK0|ImBECqap.@/xIϐQi/pݧ*__ßUq;O_gO-CoPٻ~Tnj@R|Q#7 Zi JY%<5Vj@gb+c@d?1nĀfv5AHoچEdd)éDS:ksD9R/Ϣb(@5љʋw!Gɇ'h \_kTsI MPilj^\V9SsR ;|$]dSJKpBÇzP-7 >Xß~>ӊwl/wG|WTƿ^Gi3o|7@?cz:]y|p|KVbi<m(bzm![;&6C\BvFfHQiGqGI']iRk-ُ&Nx5ݑ1U<]"p܀с{R$ȆT}kI"Ɩ뺷|Av֓:v.jirPl|Nbc~^{V{ѧupHGDф@X҅iU^`zHbuFzXye?,>$$QFu}hњʼVp A|>ZxjɉFTۏDUtZ9`'!y:m}E5ܺIʂ ˞?[z<)ft0⟉6#)( sAX2O5U"F&΋0>Y;\!?9L1j!0:Hyʧ `&_Z"9*Y'xr߉1߮aDӷMarZ}REyTV==Lag.ﻰ_;D#2jl*P M[ړaX%-tVozc^3BzN~*]KW͟V/b\Tl226f:>/Szz."LN\Bt|D 9~]onr3sͬȟ$B0} +.Z[YsD#ǰsS R!&Mnc6n/d27>aGB#4c0 ~ Bw 3V=P*=5@nIٻ~; 4E¸:we%Xr)n[v4c ڈE#%"7)$S`{pP/0ڎWoBk#`&?r`Q->2s4U(^L >)2Sܞy!Zb8)$sbҞ#Mh(&"󕀘|ۋZB P_)KV? Q!9u"%-76W+ЄF=N<9幽<+)iթ -y#`zCchN*"_U.ޠ(/DcBH1|űzJ}<Ö#N}3nȆqAdh֣2=$1=ZuՓÊH?{ˤ .as!˜'no }SovaĤaq7Avt!A|ggi=P (NgFlVNdwЪRYڅs*+$SgGرާ9-^Ó.YK V|7\sG9t߾EWyg!j+zhRNbm}lJT2F{[mYQ@opt@?oWH}2=qAs#o\XvzQ:ߕ!__1Jvb /<p5iP,״&yFߍQ&mM5gɍ: {@M"#, /Cʰ%m>f)ӛu^동t ]"iHTsz~u&*ht ^BQF:3uh)[#f÷4 /{MbD!&JPlB/z9kҼ#K !S9ie^C!DZԻ/~@jHʟd2R`#swj<7barjկ'ݼ4t͏q0m4ܶPu)qUZ!}DD>l5#k1MIjʏ` LH;ZiNҼCk32(ջ9_f'#Zm#]h@ނ1Vg$D%U7YtqNanJ{{ػGET5fRZG7_Ĕ V)_3 #w )7?isd:Ta@+bL3oIG3Qٽ}H^G>CS@$`iga uC1$MXxxBdb+=k$OU-BǍ/!>?`QZ?'b'qiWtQ2"-*WF$LS `~F,.n6^˹>D螠x6|7c5'9\~q(*d2/5'PH ln"7JW-6 ½ag)r 2S^_.9ևdTEq.Xf"2> C=ktY@d?o_SMl/j|>U%ӊ4b<]6NϜ mGLXC׭a_ſCv?ak| :6ڀ7j-CT[|AVI\3iFi2 a#e7Zl$MwYe3tb[c M)w&*#v"*jwY#O_\pF ]y8qv5|`۸аvqt}p5+Բ3STupWe&u:1w fe*R)/jcNL`k,| 4cBě W{RVuT`RiWrLih&8k di&:T̝:yTCQ 65E&St+dt>yNބ `@fw߃XEe >J1F",|F2t{{[5,w6iU9" >mFI!$6)&Fxl},_.pe >I=Z"KDjA? db(⪙n[ZG-&zGJ_lV hi'+0=HΫdwxY "%]7ѢQg]g3j8Dvd=|yVUK6dlx](o^krH7Ȗ]J$fTN^TNEkd}5B~y/a^ݭș(n%ApMҴ8[йvsn|<kqniQuƐ{ޔiÌ%XWp"<|_[ɽSfrٷ7lm>FXVP=ڝC]sx9 'kZ>neSg߲E>^lFc/lΗvqxG|i3-*%GnCu VuKM]3Xı&?.'d54 toayU6QcB(c)̕28Z:3]|xdb5$E*fmwȌˏVj 8\H yTr n_2PwrQrU5 >tE'Ib7EGIo,׋|N#IphYLF.p7Sp<@eSIkj"uI#1@@ 0dDO 9_{W7y n|꺕X@1_5WV4]q@GKtk`W__!ީEj$H6cA 68׮Vٕ35=&CNʵ0̝]"4SP֟pұ5mġ04)TfƖ{ni*{Vh`9l˷- "f3Lsaζ+ 끳 5rRgU哣7Sk ѴjƉo6xlK6βgϫJ˷M"w8 #=``&+W3e!ڡ`De_du$^=!1&o,87sUߖ6=޼<‹3 VD(We]&;kfzD0e4vD@cɯ PxeS`$4f0NNN*%&\*˘}p@GPEiKɁjuf ubÇ-yu K#V%Hs}nRӸr`V7 Elj\nX9dO=|J)dꪒ<D(x ?qt*eL1.dL7`k.>Uv]*C /R%׮)(IT,s'q$tCPgΒi|axߞ+עzH3; :z|JPwdN`eXa!0LjK3 F@| h$gRtG8P4Qub_;񫨽O(ì0Z"5H']زjr{~xab﫨AqF1K1BvfX(v_+:|NyP#Y!W/EԷա +h/hql,Z8"32N'0LE=KIӦƣv&=(!XǦ7j dB\^B * rb<&AR]oDZƥXn"HŁR1? nN 4 텉B,Ț#PKIa#/G4<:p㝧#ym͇ }Ó,2|2[؉Cy~H)14lmO9"u'_4@,=T]ǣ4C{n8KCdojI;3_L|C;( cM^^bki;<#*b,d>nhAכyĒZd}x} mo`I ĦS ~tAb.>m5˷%c|BYG:ZgH *6jZC?㤆)8Vv惸7 >H+-o#xFC`s[!bGˬDWzDtsN^Hٓo:VϦT W&9,Ԝ0SwfcqfvLےI.3U/?K^E $CH~:KS [1Ts8q۹I1C$K33%/ lE鐐ٓ "gy8$ƧgF9[q$LC"f*|&M=wٸMV+ḥ̒f= H125"2?Q  n>ᨸP*M (6? 6]1r=l *hEޱ#eB80f2(ͪ ,@"j+[!sE(ݲ0bR_V[)~}I2}u"=+M O-XxW?4˂1bj7Zj537jMKWtwB̘xvD.̳GY{$U$6ՆsiuǟWK;!\ t#L>c ec }u&|7N #cMCAbUsGD~>C[ 8h:; BPBԵ_"V'FG/k"`Q[Ԏ">K 'D7T|+;!]Vd_I_φ@9PQJƠ1ZO9@a!z5v5/[Ydѧj- -\G]yǩs>6r9lsWqt,mYe͠H#fdn{(uj%/WF05[@Zzh]w̧dv@Sr4VU0RU'ν0Әooo T}Dtﺞ[d3Bv72*ш^x#Oh2t)[IץGyICIT3;j:_mÊdXӶ$PU;ZOh/GS_3aUX%ճ\wꝵ^onql̠2L337)sƭj9A7NO!9P[SPnM# q _8T0+ڿ2h3U)+G6*.. &|7D}Lg†{"< Wr@hNYo:؀Ϥ46%ćnr%!Pl,ߔ}8L@w*a5/931|pc2Z F|?+[-gWuE^|@\zQ%2 'Uͪ 1lXɬ2/V ?7JZ{AT~2}c%|S]çK1@5)ɃƊ`N/`99B-_&pQ ͋1 Ztxi2X"mmÈJpLq벧jH%?bꋑCFctفkTڲOVR{h<ӁDPJ&G:JvX !e3 k$N `cpiAqd~$E^( Kdй9od>C}T;K0s/b_p7Q?z?&.'@htVJNV`Xl?/=;F{)ƒ!bnVzkfbP^>Ne7gvc9XSxA,t:M(j4En?Y`4 lQ[D'g@Aekî:&ȗ{!iuc_^~uLph-`si;ZLvL`C6^nԟEPfEVF H`_bWqcRbC+ 2M쾞\}I ܁#FMރhuْ; c>zJ $F)*^c||yfMI{H8 W'#fn1ck2"rw|oGՠYlw@,%ZTaZ BN7eG$fVmͺ$k'tx d + X0J5V(T5}\z22N&I ukZpx~^Ok2la֝"54LJ2*.y;'uUf#FG1wd1ՔHj%dE;s]gPtphzˌ} |hJܫf#D>gPAWĠL)QYJV5b|5w%gmm #Q Y{xe:>r۔ @b9S+CP=C9" qx{3 .morV̱@DX&Z.{Jӱ$L2idh?Yn5m1t|8͵Yhw@k9㲦JA.~"XGmC/9ilr q2sڍf؏WjTBة t ѠL bf,ŁR/|MKިǒ%~ &;(Wp:g6]_ (:FVbp~728DsX:uDOycX , pؿoٌmzK):+Af\fuku8]Zj)v^f:*zە-v_k@QKUIfʤHp=nlҒ^s$q^Qct0 ]\3yUUڟO)sj B, Ba[(O6klSU81m߯x^8/{ng]i@yύd.̺=ӧ}krM5wнnP/͐Y(R 7T?Z1!CQ^V!X^BUQ,5pjs!Mti?{Թ/=pO c])&린[ߋxG]TxۖH[nr TݚB; h<UDpFnM_hgف?B|ioi-b:l7-Ɍ6 L([.V`a+mF#ҫX~WށlӀyr%7/D0,d\}D|(V€dSo 'xUK`'S&~ tWc jyrlw߭"mAiʼneܟu=Yy#'l[#XEt6.3/ac\=khO}Unw,8*\Ulp Y*N47^)?{t;dd^/_b4ѕ3GgT i@廹=ןDx#Νwp< {p5z,ÈHMc*>{l:IbͱX#U }{\V"2D?u]IB9t- K࿵ld)F^+@~ '%% |se kT몯Ď9 ~%5DfX 0p`3 >@v2fVy*&odAI69(iRRD+]y $u5-mW%r=vs[,kg [":xVfW㷜\]=S,;mliPy<⇰Lq5 F7 sa_2 5iZWQb2Vt\JiP@u11dQ+}-_<(岳?_ ჃN{xh)6o1v6|ȬUѲѾNvYc%7 J=Hj):_Fp8,9Bтݯ3u}Ac)$P,] 1 ""ȾEz&V9pӧKP| Y"`p`940Xߙζ,P1 BŴqJϝH!ol\U]02 EQAQ#f+^0 U>;9'Kk:>!Jĸ־5HVe~:ݣ~SPjGYٸO EMAޤ=7fx&RQ+G0LsV䝦\8G~/ v ^!ZPc4WlYtMx'1F!5b@Tt`^beyz-i1ujG6xK, M('t imslSWn0xf沚nzKջjC%%lRtף-7P4˺BB"aH7fKrKÞ7ZIڍ*JRnEbV`*ec( \3x 鱧)⳻@Խ)3bhq=`a3WŶa񃟐)dkxaZ;#bʕ x tw4#GM8tI!OT|52]ekML䇠 VऴqST9yx̾>,a@p[7/FDwf)x PŢb:ԟjs @dޖ6]0ms}9ُ9~Bz@#j\]Pr+Y5Dgݍdk( ObMge'A-՛;tlZYhݳh^F^2 M pG.N\&8Wy7] bWMdTOQ uU'һƲ5fuC^#”G+*tE3_$fZXDGgp y@~b0hY̹xV[{I_+8ӑ:q="D/pl&@"KPn˟/)0Q7P6*<^=]WVuRX=.+t ꝳuTa 9lam{Z*vxG ms+X4ozt<s!๢~F3W90FzNU?u{XD mM?3m+78lDHEJP8$)韰Q.lrNL$$Sџ!c3 L1B ezd?EU~(D[@BUtkkW%!pII"Ǝ -͓丰Y-5 e] 4ډ{{ 792hK T{ Bg +sUMdr?i]dH3̉LOރXi+ݽ?n}aqT(06Ф`֚){9_J)'V:u*!Yp n3LO`Xe N򋠯 ruvOxL-7]XY>J{0(,clxHO9G _5j5HL:BaȰzf[Fj+_>lbPq~c~ KgYdzJI^L5,mfGy \X*ABalNs'$,LjOaGS/N+E,ua*윐(!@#}SgP(yP]~Lj0R'o%6CEtVK,6(G*Fq_4*֎NBfu /®93@pwt18+S-8%(>IYOuE/Ft.'CH$)Ee|9Fv ^,`GUB4i6 ]@6הSZAz֤|VT-W"_~)3?5Y氻` _\Õvoһ}zkV]UnV:<5}d@V"}vle%HfH!r&j=AϪYD}:φ!KF{R) /zd ~pU僵!jlm}8uwfn7`8l 4\Ƚpf>.Б RuX %:致,TH = ztI ~.9xfPVbRE lb"Z}(wq;6R{HBePua"ST#]fnTd+߼ DIEC*3dY_a7%6p͍NJ̐ѩhdP9vy cCwM&4Ez*4︞وip:1Յn"/A}!Z_۔ xGTa6DjLn%;L͓o# OQP-jR+]L>-FwP`%7wY$Ӯ7Vh@K,/vܞZFiS-< .smɁ&M6MaIKbR5o؆N=U=,Mqh' c=^( .6q^g8Gv" Ktgd3ףAZ`BH.U8DAXx0DAZD >A5R%Dnuaƅ #[-tq}XXBhWvY(\By ^oos(T7 c4:YhQGof@|Tm@[79UM0ess*v_ S<4p'"nX.oK:"_ڪ.Qr:} cCxt$Gb2W1 ߶\'@z.6+;91u*_Aޟ (Dti,<u9˯f_FR/9uBCGto哗@w|/am"0k3> Ox8ˣkKôSP.GxŻfxФt{5 /r;70%n;JUVр*ddaFjF 1-z& dVKwfS"v{RzĪ܄_dNՄpUuzd¾$ ^ףY:7j"50FMQPĢ}|,$%ڶmnݫm0-= tD^Hi%iQS䌚w+MޤFEMvL:0"Z 'Lv.,7ElEA2yϜuKE$,?knXlCIU։V`Z|li bE,'N 9[:-Cmɶ&“O#x0mnrhZZ}^&oUl!&󻉀3F~.wkG+4n-*O6%.61-T4-7{L95 ZȒ[V. iʶsI\X#P0 ,m&M $#5~6CT8Nƕ]IBܮq_Q@\\ NlvhrTD|$d}jlP{]Y!eٺ 0wB}D4-dee7tZ}vΫYt(w#0VGxB~e@ɦf8D'UFG*GFP:Qxn[cM@*ʱO}\q~y!Ggiҁ[ohc&#G~;F9)E¯axSaZ!G8oH)UsN)J.Z!GIKpl(VT VõtTG{Z|f^jBBMVk!(';/Tc`UlO܅cku)w |ĺ݆9V{poq=.ruXJ G7MՐ,d'κ\Ygwd! RP)DhLqk/08N2τLO'Mp?bN}ICu u L3\; { ' *{Xi%e^ @YS?[Nxmkkv(;+&R=t73Flmb4„Qo)=eyC|O-Ǩ?Q&j%F(3tjѴR"z\rL{ͯe9GrO?ʤРRj!VխW.T,_R9h_ -Tn얬.8apH2G-U@EW:}fV]Om%uUP. ,Z{mnc wE+Dx|`?8@bn9ֳ)H-n6 7Ϯ:8T'i;:,_wL|<j FlkG Re!8b&@f8n#09¥p{ûl)bUqgͨ:s 59M{ 'PȜ0: OʼnJ={MtDy tjf.8>@ -o֕`iܪDCx⠣$ svM.p[:Fb;•*1XŧW7 #rD@֘7ku>JSEDr(BΚx-n cP{b~_۞9 k_eJFWNy& WZP!~lB%@+D X5k\$Hgv|4 Nr|i[m##~Ʀǹ2qPMi$"Z~G8 nW\}wK 68Ef6 Ke`G)2.DNHf¾f>ϭ΄f*3,!Z1ėZ>q49I=qb,ޒs' 鮾񂧩근J:نGakDs*+ 'hL1Mb8b7͠|3U~kR哐BB>h{̼(lcݍ=kۣ}.L2Wys!ɁmruGLwŋM_drC2~h|(kDiar.}ξ (lꂰv+,_9bpzR,=nnଐS] Gco3r@(mks ޣ/]^>/i7tMk9 M_9%W(uJQ_X8Ij7{R_A>]uR&gw[Xm0rZ;ˌgTr}e8B۸Ixl Q[]ˎ%]f+cYvrZ#4>4ᚯv|QS`-kj;6wAFt"0u]N3hEX,ߐwP\:f`}~ t5U9YG$no7v{k&gK%@w:Ѩea2voP_t.V9iϮ>֜RBNן]fה].~.8\BSƾ+ }^ʸ~ nUnT7rrS̃'0 fh9) :*2#) < `TBQN[#>;vxG1C#{_pfy $BRNWH|}Ph\Hձ_xD >*jv5>IfX̨1kE4zu1ݟр70+$)XžT 7ʃ)zZʳ[.fsTYn? M8oFtb>W԰<У%ՂLūh+Cvџld8/qt>ABDv.dCŪ lަ傆tR*Q-} -X-g&f-qήïVy1' N 8? M Q+t>NvZlu*F= G[&s/v`)K&~14^3K/%Si2Aݝ~"'&@r )(\Cu2vT'ѱM'4ǾJ I'H AEA;/2_rӟ]IOG>cP ]-_hnCE:,r<MJKKHy6aU.6ܲ=o?TS$}*TE78JTyS\Zuwb5x Ix{g۽T:e&lM >Ocvrt-O%_{zS4rFrkH,\a囚r҅ `[mw[M7Q}^HS&%px,T9tZ۹1~\V/8YOe=^5SɑF-Ԋ.-|}j} "l5,ls&y}}. 8 M,coƗU?y|[!~ G(y)cyep|bZN+VI>B.rsK]\14xPr?]D`qr$.O_H]P@;TŜ8޵:ʹ;׽a}8#tIRi`»|5VmfȠJX%ND }_k561E8JnZM-ccv|Or``e5[cKGL \|PEtFk(]N -Xw&C `2CøD]j܏lsUG2 *Pv +i1,n4mj+SL_ ={]pkcР0Ne$ l\DoL!\75 ]ǁe/-Ry$Z~!BPv3:;lbhmmwFqLh_jB˷b2'HYP/=%>7=떏d KijնҮ|_G~W!a{*Mb_=ʥiR?&>ʞxJ. 9Q;TzrtI4#\Ը*# d dpAC\?m1/plbܹזu|,~f-teL_4Db1^R.3C`yj}F |U3yy|Zjdaz*]*9?'MxqU1 ;?}&ytm! E:\ĀK)?su39,˼\%Y$oȥe]SR`M%c&X**py&h@-,JWYbHLP|r2?ARRfЅV,GO=AwO4(flP^;R4q^_u3} SmwQ*iŸNK_宒Us{^6kGsȂO~HaY-"|iBP,x^+,Ir?,f!lf7k&xDBb 86W/ >P s1ea ^7Hgn/Q/{#ElL+s>Eֻ&2\(??&;FـӋ(LplUG}bG.邋| m@jbC+Œۈٹ#[.4ds@6qon~'~3o0˛mqRY2^j0Uerq[Ӑ$tnƠ}+ZGVLQGf컚6I y{G. IeM0JD+C谽qDܛ1SnL[A^)m!rٕd܆Se{vbz϶9\2$RUu1e]E?Z=ɾ})uϊAӡ[T!XpYdm`] Pt"7tW@ݑ{Z4D@'єs!H'2ϋ@&?P(!-R;ɬs?݋A1ofeKi*0Se?;~Zh#W=^ i5>F2#L:FR]ċt+Q9>QEY߁Tv.uw`Jvy=ܞ"W鶷O'lnB7 ݈\9k;"<kN&6n]Wxojg8p !/6WJu{D!%ČdGRG^RjLdvgdA:GoWS4{٢>0H=ҰC7$;t}naYغxQ"MˬS'r;.k"a3C^R(\͙ȷqQ(ںwCQ:q`٘D_VҷU5 gayp89ORjDBb }Ύv dauu\[8{ҹ֞DHD#:p&,}oee@<'"\ y!8R)bܴS\9'd gCk{Ϡu B*S[޿X#H3Gy|#j$F kR;mpҘ\U5SUnPrHkr¸B8JxCLր u +gы T!!j[-GJB•n&˳)5#S1X$vnKr^93y7f.T*hZv쯯P **Ng81BTcNyd_iˆJ9c0EB} {M9/>6"}5}@M!Œ;/ݰShGjiT*bX*}JXM]=dAYȫz;I182Di0?xU O>]g6{ 7\.XFBZ~ uZ202vsDkzQOb&モH ~Pa \DS92z:-ɡV ^ܮ}tq/IvA궑qyrAx})} Z>A9, Hk< }aoeS n=Kk$o\:&:zTmuD."춢BQ|ۮY+a?R"dD{em.8C7G'¹ C[S)F CQme.@l' (B: '"<';Y7%)ޘ&i /[|Px0!%SVfri `b$yKs?zUr_^pշs cec:Fa[IG|evr6ޫl0k)`1<}v6pfQiz)5cuu_6xxP(d t)9bB0kW3 U՚-1 ~b8=%f,_sF'|ûTLP v`XN}LrU_B 2G,Is ?s"]񀜋Uo$$_<Əy (%ݧ]3|0i#`4v )k(*LkOP\}HP+դ3TC.I(X z(>si= !,1~ ?|\R[!Rrsn}| ġhEǭvӊTxQA:[uH*_P}l= טё&"7> @ `tccb7`N[>GM`wc xo!둴2SDC$~+XɄJ+sW7f=H;gƀH<&Sɦ-,- ^+˗>?3()iL7&L5w߃CKq;~di-6}k;qHu*^pݘ(qcFd\]Dгd-hC M 2g@WlqRi>߀a@1`r G݅aߓz4h;q/hRnSwE$Azm"!尃5c>pcH_\M ,U|vj.c"ANjyMitzrwǻy~fy!Y:oq4s3FXzzeZ ʤ&^@f,rzάRE/q%?hT9/9P}:xRUs<`XBMJ??F>-~[nlsft+h5fmUmqp֊+Pj^W)oG\:5>Ҁx61p1M(۪lV`TH߉4}Ju]Q`2o:1w&DںR_$J9[tFܛ#W;i$E,NeynD:$iSXX]n,$,sjU`dFPmI\ق/,U4!疥ehJo'yFbS vaԣ~bk%C)ڹ0g#Dqʡ(F{%Yj )ڷLaeK; 8exS9&*P Yn)/f.oS pXQWؙ EY Ăy &ZojdݽW_*J[ֿ=v ]YչsJ\kة$@2 R4`tեY'"iaK-`EqDFM%դBB]:yO/?khj#%B^/B<'$%; e{{[|V9E \J0%GKcĜ F-'uX\#`dLras{  | #61)Ne`4,ͽia0boŬsC송kb-?~%s]DajRMjJ۠@1  1|&np Y% \fف8!&>3~kx_JqF#,/c'CQ^1c12taYd}*xUm\" RϖMG Y o:BѬ٨N.] pwdw@.ݔ膯alݪzcwޓcw ) Z᎛wwnM];}đsQ1ejR#΃C/ %:/-Y@4o߯zo{,앰$)e>`bcEdʥ~ L4ia>H R%E۶- Lx#?Щ7_sh7 vUЩ֝GD),T!M;+za}`(<[\1:,ݨ-Hna(]XbGkT#M?1Ū!*OhS!/;t^Xj;N2G5i@JuM$'8"[ ,M)˖ɜu[`4DX\D6OĀ 7((ƛw0(ćwgO CQsD MRg(n~Y#Pԅ 1hb_HtW;B#Niae#ӈCIn(ě }m_SSuXA(B{u&"m_M.-:-+h<3`֌RGza2, {D=.OI<I8-Sc% j.'00r}zOk1ƣ靰Fa [*,x Xr>FL3˺K}zr,вk^ ]C{_?&0 ɡb><`O<>#RiE܅Ġ IS{4wG}IuG`9Z-taR4d_ MtZM-+5=r ÐAq~ J39 R- E_0G]z0J5we>kkxQr_ z"Y`b9cnu$D 'C4*6gahӶr~9*&H53GN4h^2^%TCrTQ $cZe &'(FKcF~h3|/_;vX?c\tEu o+k-!q-@.CPbcFyCMrVl|8'6ا=sÄedoZB]+^M.?KoN }ǤHxG FQO|pR \N4F,֬w&*\j*> }XLf7G=uîxh<Gʞ!l贙<7zB:h>* /  Bmذ@ܵ;$Yd>H q2IJ ts;wMqˑʍ"jPu#9LFqԾϨf̰PE{~FO2PRԂ1}Ў~x6gk3UO9h)L덐OZRQ;3X:D_[; NNcȽ$y'>B f4u{1p#MiF^nW$VPHpN))0sv1/cq3 oL} TXzN70I[ԕd̈́giWnT ) J)Wc,G$ .d`== űl@?wk,!ha %n`^o4Tۗá;7fí&^"q 9r) |{|TF+w* D9`4_/i eʒd4lA1mC)|˂A)ˬUK".x۵\hfɨnao(#o1TޟK$qDxhmvvvƽ_%]l:Ox.݄#@ij}0$b![Ifz֑~۞2n>ܿ1AVk Mo k $l4zےŘ9fn$MH u]Շbא &E]MQǮ75GRVsyBx$Z*+x@zUK`w d,S`|/O!HhXYQG6<סio!8s8&cS@<]7{.Vl&t&b~^ėXq}RF>k. ˖61]K pctE3%=>i~^2iC<1w53鼢vZ6lmGT`"?qё bA8s?D'.}XF]Fw-01E",BdoBΰ0vY鋼ꅎ=b7ch"~橡^`X(相KP.9$.^Dt"5w*Z{li-N#*1&ܽ(E'J%yQy xf؜ 0FY qJ>46o\ l|5ؘR͎D^/0%]}SK<κhAe"1`;)&CK.Z1\8{ܓEڭ5I>9)qw,Su)h7Z;JhŸE`K]Vݬ5H:aHU-"h)HGIYM%(>;ܕ&:F4?nU̍.(zyyZaWg N"b$prfkR2;%cy 1񑬇r5x3|ʴ1Cy{,4" m@R< D>8GfF.uh ?9ѽkUb2w[>2ĥiֲ%"U@`Δ[%jm)X\G5T%9]@i [=9> ؐ/`)*ZS!4~t _-sjh $Qdu[ZB5<{- e=_2n RWd*3덗H߀>1T9l ȕdGB [j49+03ۙoz#!Ϊ2N@<c+yYhp>OstmC{N?C^ +X ?"~)WɭY:LG^?(d`e) .NW!ʌJW C):MVh[XQ0&TmWqJeK^tz?-&+%ܪnR駮_ _.d$s-PƐ* Agct(JԅHP2SqG&vlISSQ>2ۘn+_wR-,eC,advA܌(VGB 7bȦwdRCnb1O$c.' 8K1#iڦ{HۓuoH7ԉ D Qպ`MvZ:ݫ&x:t]J4Ա!,b64Zl*Dž;ι*,֕OpMU{F`z~Ұ1~Q`sqЦu0@4?ο/iJ'KxhwZLX=PxGŲ\(`>^7,[<;?`+o96e+Xi1iBycY{ s/ůֽ]!6驕j4ÚCottjnWCoN!:3Jjx4k:$ N2+Y*oEo).ib.j3Xj$6L!41d͋e1 )ojh}[sR,4FS) X,MtxOd_^[&uiȃ7mH\y=#ySt&lP3z͵hLs9TvGhtoE"|4zwª}zP H~}驻+Y|2!69Dom, .JMo!a="16$q]VԬn[<(x+b+sjgeCR뵛P *0A%^ MZк|r8;* !ڸ99#6'Fs78?@*g/]-% AW#i +GBR%0 QBm4}PGi1\cҮƆ4pف ev~(h?f6m'=&Y~VkDu|2yk|EGY}@?' 3MKBQV%M]͚OlH\Μ\Ԅgzϧٖ}t#rI Gxcy߈n÷#?˼L9鏓e;5ҡ^f!Ίf(&-Q}aͿxiĂ"ؤ x}I/xA67.~/`8d <ݣs GCW bN':P6HWDMU]_|r]^v \aKZr{4CBs^it9|J@~.vXd]&9[09ϒD[Pęcʐma8'7G;Ǜԁ0^E6H8š=Uz ϺgAdXhPo"][{- *dE8՚msfȪ[@<@lCȤE|#HWt 3݌gFi~s=O.?"m(63n;(4718as**䨲簡ȫUWwix2.B;)X#ugKht^@R=V%}ئK9(xh,b@α<|XưNUBS,wHUݳAy3ɰQ5MBmՇŚ؄B4H{metBvh1C%::}Be . hh"ywjuF(mk5&uIA}? GBGqޣ֫"j(h\ XfY sz;Q@T͕Rѻip}#~Pm{Cy'fdgsɪnn 1\ ]n㽾AQ]K鱤!ϯb0' trI6NHT%S*I4Xz)~SB'U:P^C?N>.Q<ގ8pu^ (Z`}9ZsBd6:*/[H=RduS7O2$ ~@e.QO}6i^DB:'֎cxݵ[oB]PiSԒsD^^a,/xo%4C6B$S1T2G 9Sl8qkdq紵iBTx19%Nk5$;/,ʬc5IRiB0B "K19'ww!MOl!:d j38at׍j ͌Qc'̠cW.\O^K)t g@Kz^Gy$4I"AP@ZD'zd7qNf7WL8n]Â=}0Gb T\ IGyGSٽ*e+uuQ R1>WF4oAE >,͎>mkw̜~ :&˸,iq r;^kg_\{F05r=2PS @gY0OwzuW¬eEf`{p>(\'I W}/9ux F?Eyoңa]ɣ Ϭ$(RXEX1(#+h!E`o:q9QMY Foj4 WJ0|̤%B3U&IqpO,oLj& U2 ,;Z+_+t~AegitL_T()Fk5bܣc%"Z ӮeH e剄33v#Fޥs{`]xwhz>Pr тʀX%}k>y,]B9/6en #i t\ZW8~oٍ(¿wB%vdoJUSD#`6-x?p[y QMdcc$Ƹ+Ҽwܦ9o!Hءji_؋zX2OV~ShDB\ Aنs] +F8+]Ԩ]0kbBЀ` $Fn*w0aН۰iH d y"]5|n"`c䫳_W uJl+Z'eޏ gВSXLav Ġa+L rf]}xD"2Z{{ QO,7di">j3ʵGRgo XsE_V8a֣v4 Că L_ 'Z5 쟬>dؚ#Sf[jgeYʦu@K*.wv>ALJ_8;Sqg'Ηi`Idɾ֯eC>]0H4, ku)k,ťE^U7.a"&M#2yWk;>D\+g{!nrγ!Ps_ŗ["Zy ϱ9̾R`ٌC!T>OjGKm g v*H\7Uڄlv+;ګZ_#ZiFtIBfls_nu/D_y/ `eYúнO?=l\WɗF{<ׯ.XO|g!>Bb8|yt'nJ.@;lj1yP3I B.ϬGA:9\܈ \J-laW ZPMڸ,m%w[k-.|xa]έCK Ы݈pIEs3uixV)@s0y,1CQp)Dz*V fo"88b`(4Ar ՘tjE&k/!{>u8甍g7Ed6P<{Es+rSbZ S=җɥ$4hez~Q%^#_XmUsA)9kưCY(V *e1[OXdL_qJMc-و_GiKe#5Avh9`/"5+q?&X+/ZqeD Z=VM+e۲`hWDyJnؒln F=WB_ty]k~]YᰏL^26(l1)+qѤ%Lo~{.T-&d~O+ !] Z}8ĚRX]p %k-ݞOy52}B8g#4EG]4dוDz w25MQ%8R"6b3[¾` P&<f`QeƟ WIy-h̑2^@r_&<7krf,nvp僺7ژ G @Qg\+W"|f3|[;F&?s#l+R0y2 ,t]eW0BP$8~易yyzoq1z! %Ά\,΢A/WސWZ2S+hf ƃalk)u!ĺV1;'F{ `)>sq3ĴGTZ7u0|L< "zfϙL/Feo9{',oMʯ@ٮ3NkppT@kLéO d Yq%9[n̝#} '|\5^7d2ڸ1 WJAFިg8zCeW 솀#Z6;Ԛdy< _qHY5Sv?#yt12YԦe#iDj@`B]mk'PٓێŢ;{qC6 ?*\0ZڥÆn]ȷv vf.I kÀA}ӝHLXr"3Ѥx4>0Hܣ3S<sCrXu2-3áƱf>aD:v *^Q2P# 2UdoM"qVJa|К!Ts )G 4e D\0JAR. [ssip'5K-jAe%&K=0~V6UT:ɻ//sxso?{maT&7¼ o$#qrԀF q5W.XvqCrALu/>McQv<:PbW⺬1{!{M\f=g{mvk8ٜϘ;}eFCOV֎r4̛U`݋jTmz.&izANкm68,xK uy l&GLΜWC# UWϝJl449aCR[w*-ķy0~&f-X\*VۦԶ=+b4)215Bgp;5U^+@۳%=F3Z?u"uFg z]mXH *\ېL/BOzYHK+G05\FPr׈*Nj%CQ6;J9ߪPv45" )qaAQ`Lx2EHk,nk=EMBہڃlzu 32?A߅C)AC<*Ep_zܤ#/[׵ SyAK>pWa0R r"}iun( ETD'ݝ l9\EȠmwFKtЭC^}xS5M;gcuw:fema+C$kꜛeSΉ&@.66EUޝЎaԇ@/݆Pl!Tw7p/lbr{.?k(=1$cE˪'&jVuТd}~?i5nX 2ͷfEo $S}$&a69Jg뻏ijv7_ x m~"tiWYD9Jz{Vwc 1?/y*D$M8Q(PSEY`^-M1~^34ɷ%V  |UmLk?%`Si@巬*]VuY=N%(EyČ9 W>M%/ <ʂ8 7$.S%J[>(ӊ 0V˜#J7n6q2RïF+9]qiOKMʒ^+?4@caޚ,e;=ưuGvEH o@C7ŚM.׏A7}.hI(CsO m+&fҊ+e9kGq݂nEjg9g /.3?jIXtCgvPZ+4n(֢n43y#Ͱ}5Ǿ( i=@go4pa /d>@M0YσlJ7ڱ"zr٠6%Q [;0^:,)"^ArlJI o>[ewu#E(5($I,<,@zܘ 6]zSxx0L{,έ 2ՀN@Md$cc9,cPQgOy(pkm5N2`#g!S`ktS0Ǒkd5Þ]^v>JH2_7l匉Y郮ʚԨi*Ëɲ9|JS1@/؎Q]D:hTQ)` XR3agb8y@|4Dqjjj5q 4W0Qc%/i uYÄ&rv4q>-1)^( ַГ%WhOVbHLq([':q[ճzG$\{JUMAyݓ=bp!ڳzPB+Dq/C !Ҕ[ۙ=K$:o7R b{b*(';s\YA}zTi-♆F;HB߲%gzNŸ gWr 3m8|u۴+TΦ'f}X9Uz ?`%Ecg(YT#",ڼmh֔ASl/l!Mݪ~A-AWҥϫ΀; xa_<8.- HTLL쓧HGt]AںZ. 7!bGrݦžV2>bx:%iy4Ebn%xWN_\(J+IDhyPLbX,`U"y_JZ&I 0PsĿ|}*%"TX10ϩӏJfū[ұc;o>J,%Bhr.ۤR޳vIf98zgPY$6a47| , Hߖf* x)q1$P :XKf9{-Lq8lXYِ2aAzC G U6#ETG=Am=w">Kݬ2.) ^ `Y ؞gp:.`GpEkoytuT}UggKc.t4ȺjXhs7U/};vtz9kH$tk$ߧ^̫#qmrFfą}<)XWllUݞ_`',O?k{#/{b»wY51v|N]K0ҥuqeyG:e)Ai`C g쀼?SV$0/95^Rꎐo 8{C{vTLJ-዇`qsx!xwxJ:D`:*07QI/7 &e5ađsqG[οCrKۗB (Os硰{]p;_iRٱd?6/(!.r=A=ri92޳։Q`Ț+x kMEala'Ϊb wDX#?nV6 0ZL'0W 3BV#"rjZ 2 Q eM7kYB?m*\ӠϼauڷZo֓iB~* X뱓ʫ.,ȳ+b/J.VZ>ÌcE9 ,l=]w) @Zy~G'ՙN777A2MTz-T%١/;vXfkduT؞>61eVA-aͩ<^=!HoO{܋'7v0JK2BaD`οI"8RB82b3@̈Cn .  Bw&lJ \2xv:4 ?k5B&A5 eqwr9hqJFEFpҬЇoޢzl\v؊C1~qΟlj Ufa`~=gT|#GwfywwfU"LG:%Gv6zEi_G Ys=e6ئ:r bこ%iE:al: p{^D `އ]2.?_X$]H\l*n +,ZzZ@[o0\o5X=t49cmiQD:m:)aؕj>gf ,m K|=i$HdtW|b,w=??2<q1Sy}}Y(oRc:٬cw-{_FhY,:4͇Kk.QSoT8#PA 0]QQRf,*7^^S𷄮TK]R%m!y^IA :(& #97@03S8' GYw=9sKν)Qҳ @EesT%lْ߁oOK'njsyqT${ҨWxO_ĠwQ_` ;+,t <(PWvӱ]_O%bBQݓ?fB4#t 0 pLG:tu.&?U(ضp$1tA݅2=H3:>Qiܱmz+ԟ@S */E]Pn&3"0SDVT}P!nys & ry:b+«Gv/ស Mw;6vYQT %dnWNW:)m<xrT"2I-i]-#'^#*ǖmC k)Y|] uyN+o=MoK /$x]8(\u8wGeO\ 6ȁ$GpS=iSݓdiG`nِ]h>F]㚩+$Pֹ!ŠttD褳,?pmHGw0 <[ZCH.|mNrt8t=S9}(N{Ј-:ܙ\\XR!V;biJ'K\?`a3h Ħ/4sr5+ zq@Κ\c=Z /x4e"c{r?h54]N+\ϝg5ػ/B {3xM-%&ߺZ.vPJkV%I@ߓI :9D7ynމ'jߛOrWʞ,k_t~d"~vhNpR&K2㦾Kg]OA|W_<8u,]8t>޸Fj"c@ iN#xR߷m 61)EV :@drk7+ gDF4yU*"ó?[)x:+5gû "s__ܤ.5<44}8-M0uwY(3e#{HL-pmys- 0TnW ?G+M~~1[k$.()sSf8Bb=:m`t%WcFK'1mw 9mpEI݅:woS"!ԝJzaK.?֧xP=\2G)a.EM׃ی圲KM _ճ%@Aw9Ιl­]ňƋ lǢW };α5jX ^99)a5fiF #-9!PtIo;cܖn; xIY}M`Ӓ(,.0 mP{vZC%xB:+I\:Ƶ5KˉB؍Ao"l[Ĝ'ZofqAF|6&,;)=W-]G+tf<1U֭K\}L;3"ɠ}s{y[0Ɇ0X=r-rZug|UO R<]$ pK>gyWJ X LQF,wy_hWPp aY5Q.d@?L߁3H/3(>ӗ25.W -HY`:%g\gKev6DK=̰WLN G#w6ڊ>2ox{>Go'J|lZ>G 7@ ؜]0A?&X(:kP&`H5&0ҝh[F'%EOHT[r ɩwpj25[OVOW,^ց½57MNoM9-ZTK$?kd '܏vcOE/-Rn1# b/'v1Q-IdOl 1e A dzkY8XiJS%2_Ah/f3džPs=+R5ڧu 3/ʹttVw_&i_4H>: !@fy.ȟ d:&A T- 03u|.2IA.erhkc_WͨǹQ}8W5 Qpj 9,jHP]_;8S ,A b0Џ52ѹ$r'.mbD)o8JD5O- +ޥ33sK wzHrQRC63-z&ʰdiafWwչЂz_t[; xfMVZH8KHYB$;VYxi 1c%H h$F`W̆ɮn֡J8߅I\\4F\ |n?yl @nca'qf[fEw[<է8_紶/nFL9,g`H1JoVEZ<`ӷ$CT 3z,M9 ;^LCb%d<2cJ_<=E!%HpIǰ*\mר9?xm$GS3VIj,ð]=ܗwײHscHđר'ɫFg1EGk]>Woh?mysޚVl&? ,'ע]_I(EڬhrҿӽH(A Te^ʘ9ZXəu,_&5Cu @'WDWH1]u brlhNn?B1ZNŊHFK)`mSL*ĉwB|+,ߥȪq%nH(Ƭu 8D冕M 5x?SY"_Rtir2*lk QAa+lCʗeHT'aC]S7#P4 A7tG{c$$MdGKMn 5ctlr1( DX,Qz"0EP.-]Q7>d ʼȬz.A9;j1zrfNJ}pV/;ghvȷ$[T&Ri\yB"C6UT]r&K DrAyNbYɈfT@4_h+awěE~(~,%qCKG 0<;PބX)%ȫߟ{Qv|RXuہ]R 0i[\3EH'報x3۠#K OdjRQ0L!i+;P&)J5x~= TDaRj=^|Qo;6ni.rӫUT#dͮC3Jx$0:RG)|6ꎳgP]I ~Z00r H=#l@4 P҄0)-oe^4\]Ӥs7t2s=!m /b{`’ vR,5JC3Kv~M*f(/ ?eYh`p ܤcFw7[,@*e^r-WvZ"[ڛ.7=qKJMyϰ#!#Nu|'MR@ȹe2.3ExL0k&Txc=xI(0e`rNA&__{\<3 b(FL~[.QϹRP=]dJX%Ko8WJ4>Mo,a誺x$C6vq1A~dHJprV08]A~ڵ$diD_=En_B:44"˹yvk+rp=CzI߳cFp)E hOx ѹ9`۫ 1=J00י) ߖf{?jQ %uȷg.5D:ネ |I:s2^ mbޱ]{F ]nts~5GBW"}yvo {:4Pn[9h 96]Sx^res<_*NRSF;ZY4ű+A;Lr ؿ.[i2gC.})g펽ӘI?3  c8oܚ8}Վj0Aof3zw.cn CKWy'ٜK Dv^fk gc)ˍm(fHSr]0m%$'P}xz .됚& :,R5G˽ppUW}d+e˄-]^g~ .>(ZOx` I-WAl\,8Lq n\W_|>;}WbIÞ ePp8il^Tg6Yor c={d媝c{ >l TLL9 Q[ٝ6tRvREX[el[l!7m}7EU D&q=(rpL8klc8]oW3(_̆56%+(-eԼ|f*{.ȣhO6j"X(+A1 @SP_<cDs5@mfٻ$-]) W VʾڂDZj2P@,AJ)}FX:P=(jᵋN7E֘$N.bH(; zTzw+bcf*~8c@tr1Ck#D`7FrnUwR0Zhɦ5:< ﶂ‹l'l%.Paf/܀@'){JaT +~On<)~=qʖAmO t$?]q'xϚҺO_8L'?娹t<'U;9 g˅=v{Ca(;HK[Ftpo֎k߇V}*H.wROKHAۋ]Xu}gp [``Շyib.prT`dRLS=VDfL` yS/!^QCJ< -:OvVUnghw 2SXeYa%Px(l/@V1 `i$3G(x&"r rڀ}}b" R;)kR[Y_θF!tBM62^IB.f8-F7u2|Gf?\iϹT\/`-XZy4@|H5i >߹_0>/$fÈ#Z$ v,],7Tu5sY`g83IiBœbwgainf[8s?.k;ZuTXr%@@2QцMqvRZސP$S{Z_Ax^P^EBH_k/"5>=/VI6j6i5*_O¸)g9cm:tduW8\Յ`Ϥ̯&4J=V.%/[eO\Ub0|4p+M \TnH f?C+@ Y7՜0M1`<+lˬY #sdl)EX|`l9Ӳ #b6>&}D_xP@}"o3FR6V?=Q)={YD{^(Nf.Hyb\(K]̺ Nt335730LIPIĕ82W.ef!/uH Cl"Ƽbcb-?{kYY^՞GwcC&rfdz2Y,C_`>ˁ&ؒ  4зn奟&p^8(KCLٗ@1jmC9[2EPF8%aþ,Wh|XX_BTiڼK6 h܋F$;)VH-\2e-<`Ԟ|r{i-b0K111XƹՉ X J9 * C^9a J}XxsFmJ -.v {vѣts MUr.;qV2ܪ!Q[C83.ud(j5f/;#4LkR肩:o ZgͺC>wGǧ&!W<9 (ql5awm9+M7]y+P-W+͠}("l;X0~&T*Kt)qNeRg+CY?pz9K0 TufS<|5cI9΃ mΛI^o}=pA}'FlHT|ʼnw&k ԓ\YQvW-UсNg x<#Vde˗(h ҋmjM[Z"UO7XT<IgbQaE}ۃ*^ R3:jhHex o8XfLM[HnWIr%[oU]%FBA)2B#<,6 hrf\ tqyL T(ΜG ODځBWdhE hհFDϘLs\`ԭAW%^bAZpAU6e /!NV{.ޱE.Vz`Edƍ蚇3o֧E=:̊*I6@֊ I+mkfz1 ǿS6m%3-,i}]q,yO5Op`0WYod ~-EuyjO0KEwaO-"]9Qh]h?gHRǩu\ڎm(@ӵFV{ԽɆSJXnǯlS!!06=ff!ci\tQjDŽ<1R^V}?%RB.Z`g8.dMmZľ^WZ_Z{l0P Ԙ,Ś/tx2 Ň## 4'ۍF@72ͣ-9ZGkfxT[xO{BÚ4E Uje. e>RUE0$>n33re.mjuxҢA/ p7CR~D12_ô0R1ċpםab_J?vR Gֿ9 UvR`;%"fk'ڑlȸN*M=V"ػOU;}`EWwT#%>LghCnIG si>pDr"S?\R7` h$e{\>^+nn*AꇋԷZof2)Dzb9R)hK)7$I(3HO;St-7WY(Rr&(1WB67KԺk& jZFFri7.ʛV& 2_EG$LܪԄZl'>y5M7Z~_ўj2kVqhD[6̲0krↁ{45y7拘?kX=[~2 vRفL˰ktVYHΓy ɭ*liq f"GEkT iUVf|Mj6pӞ4K,ceSSt.K;U +3T|5%#*mE|-fm{ Z\X42zkؤ1,?˲(CTED0{uNN(|mAPߗ?@!~ؿٽ+TkP"d>wb 5tn=~6 sP{R^n8d-Dn"#Dj.\nߍej9d|hMTWY`\| v@mc6T1*Ο 1@L%V$jW2A\x'xL=U+u`44FQ}91޶_`@ S$w^hVϬvU2r|M68%ĝ(8%c-qT=142.%[}ޭnHL:<m'գFYB@⛙RwrY ,ʓw:ǐleܑp3tJr6CqP @e &>Zmv(LT{r>ZaUMT0^?9eSAIvg2IɫWى^Y'#h~G]_tpc>c9v}UNsO?'r :?|10Z@4 feXd5w5~0rtEHvS!WSc.SLe^]¢&n JTJ .܎Ņ=Oĉ&%]ٿk|.ʹ!2Ux.a$uD!Q-4F %$*x"dm*!%w NHXUnJ8#\]<dV2J/B*%sL`Aݦ-إVyU %?=;:,<欯<.6UE.닀Z@a hRRA`b$J p4+'[גԓ:^f5猚Np6}(F (@> >5AMSyW!ۚy.(e)lEQ{[|eeF-RVfƱ(xɡ`COZ~qWܹyvWIaϩ7$ lBi/GEwʟb :<7Vj uC0+yat$c!9sr`ۄIvu}y㉂Y6 pf0 ;*,>LRc|~,_.`c.GUEUETQ~ ΂:W _,5>bK?>6W>AY(RlJ77'6(1x~rv%xRϟ1x:A)$<@E%L[0$1]ؠ}P{>'0n8~9Li!ϕOPbC1zfo"3Eo&Oܶݱcvc3zYGFd7̂M4JW)RxPWj7X8=Y JLCj<˳+T_C0M Yk60>kU+ޫ͑L\6<|Z'-W.X$Kc":ΝT7ꮹhVԍ{e17}GN mm\ɕ֮hWhNq>Ց8y!;&;>J[ܳ=Dz)R8=@7 ;[}С Q0l7L'PCqpȃxt0ꍲS[Č[ݻ9?FLZ,#*&S:]m\jJ|RዠmHD=SE͛ԝg;H˜(ZR\__r 4ڝ%q`hHmxK^3J÷!7Ey&&O'6& ҩRmB$3rqyCr\LXUaj;2St+4sHFǭfhrS(灁v DngqivfE{@{(YaI?2?.MVqȦzf@qc h|70d< 76XP-Y9F:8=y< 5φ T 5o稱 P19WXI>uܩ[̗^XWQ>H~ 4GC7%6'McN+GMSغX5X 'b;STOĨ5a'}w5b|0|{V˝q`(!YV5LxXr9.bc΢>!=N%3S9Kw:QrNHDϮVAJ7vD`xj}MkV;äR-2}D+R*zOeJ#ҫ `ns({ O5&/\I (Đdr%7f3) ( هtl9kHxf0H+P|59{F%/P)U k.m<`-v$0 A7GDtX Q)RۑF4_Lb]Cp>ZK&il~o/3R5r )gݦgb"Z7IRݦuTcOvp JĭyMC GOsno ?H } T?ɷN<9V9HykFYJr!Y,R`]c%Y=[/$GT"%} Y(kDQ@ '}N9ǠB+]t{ V܎C.2#Lକ3%0xgOý9J,uDmn[[BC BkHi'3 Tv9BC<1ToБ%5ϑ+g#. I@O4B6mژD|w0 H$E&y+ި szK`6jBcՍshPnU6kp7Z\Zc][5^cSԤFl:na7p9/909I`LLJޖNRt®+O;{R4AC#h4 &9ԅo`&PVA*!t?#&afUȅHKfT"A-/a:*X?^ny`!#/2t!jaMc6߂dn B h^^>9vi PEsVȟL(kW*Ʋ>$(r;kñ2}KPfOjX{~XҩE~͞LPBC&b,Yh wCf9EC#s!Jx߮WkDYR;*ي}c>M腸Q{(P Lu)W j.WN>r<FNǒ&_9hѰ; YD8L#j@-ϧO-o,f-"Z`P_NoP;G#Lm`?\ZE01%CrpQi: OM,b 7j]Ѝڕר"-K&ӹ0ސ.< rg<UZOfϔ+@ eJ*}bǡ΃t<1y.օ鷨xս*  $Yt-$lA$1,,tl <|xŠ[kLcV |w2&X4ؓF!W#?J|-X_bC5uLyÃ^dl7^zhZb/9LACxvM1eNAB6&07G$xdS6┛z1ܢ˔u+E>7Ky== x\#f=IukMH(%y(nV$[ @)Ӵ1'^35i]$8x\,g;v3¯K K Yy QRYsWmBB$;I }^Z!B_KUVSxG=#4ߊW:z%­7 gʱ^D`wA@k0LmN|+4 ,|ھQwvzjdg|xD;L);œؽRpfU.57dгd0B'&Z5=O1r|*b#Ri]չ$A[k Ed鐰(8%Fb:;.ݙnBp^2LGqb.ŤÚ{]&rPW㘈_~JM8I`A Iiтg4)^?J@Ӷ%tqWvtO>/qMBL+)Hjf!@z,= 66eZ@I0p&6AGW ˔HÕBtP\z, onxLt h puraC˚#- f Lg#Ve_A0Ni Eg~&whl\5ږKs\ʂJdD%)`roxӲ0yd?h21K;LK(B{SDП* U|%4a# s[`d|fy%h|q6z3(ˆns %lyEih`*^#"Y(U ʂ*?潽RWl! sܕ^C˱/#7 Pr)K`lt"{c(h8b6{j2JӧC;"lm,FUZo[8j|&[7nY<NN*6 |x3 R#2x7>l~CD0g}b`-w﬍*,{\oiEU&&I<̯+\y6;҄J}نQV)i;_01/;!WNE^J8YMZch`%խg@pcJTu*EAkz)͗mYGdWrǓY HM:{h2Ne}˛/t;qZ~ uzR8HsocٯRmN纽IWil`Yʂ'?1I K.[_&s vsa1ߗ3* G4=a^k'"Yֈ\wv  bEu-[Eҹgx: ³Kz­)볳+S7M v-H,xZ0q`-֯[I3!ߖބ{2dhzWh͠I#t#%A9WWn{+${^!?$pf?m\9]N eufb}v%=]6gߔX~"Ih]PAsjz?#͊}%GK4д˷]lzy|%6IA1y,fm)gG}VUs=:ݱ:pPR|zzimWS,+NFOqww68#H-ŗsͰ*K z=AᵭgHp TmX4(̂S͞t9@7Ws˥ƓtK)C\~MΐzWYtBŤmލ&?;VɇH#B%wWETD= EK`߻OYBy*.(Y I4/@g?U)'C4nWG:@k"Jw'_Qx&9ԥfܠqNigkA,Sizyk26Uo2 |0. 핊H{0diHpUߧo鷧شV;=mI;'JV`:\\d$yp)GYQ\K56p5yB91SR, ]n˿zJ5Lbi[;Tk6 t T~ƲKbX1ISI'\>1{eT5A(̓t2ǀ2ցmEn#s"""E e5P+2'&AciCbʉ5Ws ! &tjM6{KH~8^@ ^}@=銻X${;F62 1"JD$1DõsP4nw$h Uu/1A]Ksᅾ3yfQx>(MpX&怑zV!Mt⫄΋7~tNyA;Hy@$:3Ϧz| z>r*}a* q0QD1zL[u#&j4udIw̩k\xm#gTt;1W)v Xۋ93s9az!s>˱_H" |}N# I_\< 7vE)#AYq:lr4y"Ve +۵8jY4LA`@؍X0QZV˥.j nWO#ݨ5ƞ^Zsqؔ@ʽe!P"P72Mg yNa Lgw/gAHNgp̆UPeA|0x.ڡhx^\sM!qs;c @i`]u&FS<}Ǖ47`p {~!F0۵BɈ'Fpu etN= _Sq'U:̤r ~vG#Z ]~`t ,OKY_ؽ̊݁ -KF#{SR3bVep#u57R/KU#$sL]OS̵yYkBHS-j\yJ"t'}@&M~!edcF_"VWJ/ȱXR-.u邂q%iqAos(iDUd).Z QZ"m,A+/AwU3v? \(iz[*s;RTj+u|RE'Z p%' a*N*k0 Vrb/O0:T>ky 7.0dҗ%SvUxmmsԏV+&7bϴ_R\)䎯1RdG. /nk"Ƞ+R\= r(]k*GFYlp֧֩TRoqu_{k#I:nT%ܯB^o8b%M +2iWmqfkS,t_NFv :0߾AIvOLm"7  &rJXMj]lv;_ oHO;=O ӄm Cj?nK2sΖ1lÞQϔP+<{Vظ\~ZpH)ߧ~cpM RŃP͞7*%3@^\B9W燉'k OK\/Nrzi犇53VY_"sӐFZz&WDջ$vw@^@ JE l#dh SJv$%'܁k"x.iS_Ƽk# h{Z 5 -1Ypqahwfd&-d_q!0pKm`h/(Ƀ6R>$͜jv"vlUhYhLABABڈw-,J^Dxk*i9δNhv(~v3T[k:e-!=Pl`.6bl>{3ٷjm+_r\Nmtf=m:=١灋%~9 \``BOD/}u# 3Bhcgl⁘5j;.^GEq"#Ȱv%צĞ.{S/kvHgjbWxΪaBh SCeL4m9;\NarIڌ5gO"T]Xڕ##?wH7-Z .0<0sF|lt`uP BK92s-#~RٚM|d2hf(MƩ| %QFmY @ֽEef^>}inJ<qOO-pAGE:[_ MP1L~עo-h  ^9kM~ֈ5u*2p!^'"&y4se)<@09 5 X $wUMߵ[+wzX;A-jHV hٻkKӲIM Qa4Nyp iy .c,wMp1޽U]z!,8HFLP !Op:*"ZUi,KsǁJ35?6Yr`lu<0tBzceRtnX+.!t`e=˧ ] tU~vb9ʲWιJE٥@iF4dWg$hJJNiy1)'GE1XJ@slT q8֭9cXk(v$yPr3Ⱥ Wk?XHX|]#$d1 # #~NA@2@hZUxN52 @;ln7RSV4mN.!MJ-nG p,7zlA3A9QL~3pc`! gۧia+l >Ĉ͈)X)AdF>lj C +Nv⻊B=\(h%x޿Cׄ9[cr^=^557˲כk|PTpA9QZ@ }luÔFT`>Or.Yh|3 1B-.eΡ6* TM81&fqu)biiC85]$hBAs"JSWH"4߂޼wqv)Y]tIg%C(`(,a,-'3?Lwa;(/ BB˯ (/bOL!;_ B`>!2nS̾Ѿ{CE|j P_fm/Iv̵J$2D7zӠ`oмP-Jy:mm׬GSʳQ&ӻ/ܥ zfKK,uiv(İX7!x ['5ZOD @w}ۈ-;<{+p@OVn>Low: ?Mb-J g[n1|XsH/!8џ?HKRIMyhq'KyhwyCY}1Lk4{W]=Ҡ p Zy37qVDb0!06ڷJ$vcPz$%kONY%5х|7g6n٣|tf_9SRK#ۿee H, /unʆ4̗ A\ e*T[N#DDL`"5J2G0#I_f" Ul?Tmz}yv4XF5^& CNM/עDa=&ywֺZqNNJzA8`].3>7 ~坘bD?!ɳ9dsUl^a"s$9H#k8#૾VAq6^?n;1*],jgC*Ժ_7&?$i'αa81 @\sӠF1SMj:ynbZ o!R^ F*3iii5Y5ٛyq-=cd?R wel`y6F,荂 I%HPraHP;( l0/3u 7IZٮZ&}rXA[--7q1cU?~Ix%B(㣿|/YXbC1vŽiR{=z?9mAc)VR`U!fڢ1~Ӵp',Fq Eѵ$ai<xwh(ꗞJjLƧT*X}j^.+17+6lPE[[_$4-XkZ ) impVUl8s4|肎(fӓ/P֯ȟs[OzO .॒2ׂ{I#g;H$ ^L=V1ӺudK^6` >JI=j\ϿSK(GIu>yw"oU鸲e_CFyl`R(x- zmS2Kæ9.Wˢ_4wUס% g%+KV0HwFRa04 @o׺,Pr_f m#1+6#i p]߭ j?22Uk<ݦh?"_9r4Stj ?Ҍ" ayۈlHlg"K_7_gGg8"!T#^a4ƍ.?9jÇrv?&~Lp>+Q6w`%d;:p I/I]LM ,I*ٰ^3۫uK}¿ZtB-.v͘S"eKh_.B-UZ a gKzZ4 a&h_u3Q1 #}@uF1U*{píH?}M9n Qt,ɯJ{gr C~ KI oUشY]B1MѬs  &@xIJ6T ^i5æ'Dut  SeDMKN}\Lr%n׍S=:\>C;}zT[yz *P5>`Lp.I<_~y>;q8 g ;y@L$cl4ZfV* [ %<5iZ=E& Ply /ynKy!ziۚ=9k LzE|1ۃ$00pq\2աq`Kr&q!xL(> (%ݞ.VI̟m!0\+4e}Prt 9!D.?ǃg% V"kQHiL^^P".:.l#[(Q@FLALq. xK8eYx~ˊl”pj6\(LÊH[[Z:YmlD.8nD`?%{5J.xID%LKTW! 3(:d3XAom#J%KjÎ>T\SEK*2=a%`=\NnraʃrQi,N%gJa#<5H7RJHjؾ70og@dd>9i 5;-aZ3=v(cƂNC a N2%qoX[ eTQpx=J)?Xw䛑=\}ǰ\7†@a*U$T]̴EX Ŭ3 .2l֞:R]['o`^DZ?O+y5 oq?A0uh$Frl^_z_3ں b]'w|ݖf%_|e!I̧uax}+F /=N#|KjA3X]40+\NYw:EVQo)/75f\x3ۗq鳸]/S$Rq|zTO,wK{4<7ƽ@M$MN4E<#WC ƞ3NBclQz˲)P9XAjhaBQGfxV_%==൯pU|#Cj3 6pcѻͨJ׆ώ"Os| aaˈ:aqd}eVeG\ 3\Gy]ŇI8ڗأρ,[(EbRZ̭2C\䳸1^ U!IEoQaƫug0%BG_d]]cX=]NHQ,؀;4v n)|x{{y)9S (4ZQNo rh(vrc_qR?neMTiq Y/P'ٍC6^N bqgaQZNhdW Z$1B]l,#W? 9U#Bx?LI֓[U,@dHq_F ߴ`ub'{ vjer!|T ay+;j`)oS ZOI$nVԈрOcI1B+vT+Ucnjud~-Ԍ$y DA3k\7 w+8/;4ga" {/SFkj 7e-dF=b%@Ea41j;mB`[qUo1b־ ^^M;H xDI;oUg@ SN e_s~5EM5SЕ+SmAT?3a3sDc(J9]%(8 5?Z#t-lf1R@;"VO~pW̩vcPSs3~ no^nz_5E;7%ƅҍG%u *"`Tfo zFAБ$HL92/h#p|[7Sg˝mὅ_]kݫKGAS Gg^*=T`:/}_JQJq)M '^WY\AsQȳ!Yb/@ZOf\^5'Pmd"K #/WH ~z#6\Ymna#ag쩧荏1Cx-9d9=G5/imc[ 9C$k)\M""SVAOYφ]uYL8@)"-@OKro\ie.'0'65̇f$CקMb;[/~.CiJ:Ir2aMB6}fL5x[* G$EqU1.iRx ^ 44 -+HX; va#`#܉gC=ԁzTs@^'b%;2rb#EkG,_SB/jMsA{O9*\6_J9J}#h: ",-IMs[o; u¹n$< FEx[y&!)W*q~!bLWڟFܬfdKK۷\ދ)tS'^'n&2{}s ^c> nqieyg6|Gj@EMu 58bߚF,oO̦51&\ 6c(\ŵ8"A"?5ݤ?i8DTW' ʜR8Q6Ԧnc9Q᯦[b[5}'"E⊨bU^Dekt@idIްkgQ1Xu']7EFt*wH@AǴt1n ^k$)SnDa 55ٮdXqs*oo"-Tp|oap!X_TW 3WYB'UoxhA9Q{0XKv<5Ydd@,s2}q{~L bȸ@+97P<3sDMm {$3eW`C);t;)rGh=I D G\oetLJ5Y@V8 ;܌[j¹swI|ZJDwF: =.9чx&>w5F2!pϷv|e| HBuc82 n#*:Y EH_ȫ)=$perC/כ2 X={> 5?T=t MEϥ??L:4ö3|jѝPMГN f$لF^y: RB^wBrԷ)D*=s[Iݺ5lGTzTDA.1 ne`%}Y SnSrLaC1_O#8T ڡvkdA)6.Iפjҟ@%͟Lꯍsuwê?{+u6ŚiaeE 뤩 rQu>F;crћ1vdw♌exv!]-[XW h .YE`$ۋ3{p[$y0ZY…ÑTPe~\u(.Qtt] *1^5zI[APѨCwG¦oQFtqTۖVbgA@^}r C||.OlJ(p-a0,3hb&Ж WuJHh\.b&bI!."Ž lr'̐OƇ,9M0Q뉈D &oUʦ4v?\ ޼A3CDFK megJο| F!N~Zc}tP" r%]^Le Fb+H8e0Q'ό95C{ΚlD`Ol򠤝HhV[ 8Z7f%U+d?0頶qJc 2rՅSҶiHp /Zm!ҭ/CՇ9y"fKʘ/^%u`*{q}M)h$Cs혤n^T03QCB3_ ꛄ=9nhXt' Mi Ѧ)I »`tfR,ۦk^VeГy,z%O<Y0~v|_2')ΰ^ZӦ|<6B]ոnSmX 4|`D`\{q̂ܦ+W}Z_o1'??ɺ^ӲF:ݑyi,mLD߫+eBERq6poå}^xF]hԲXC-+!_ʥ@p?0W"y/hڏ|44. s%XN Mb\q~A!\ C3[Fɕlɗ]]̰v"si>U+hadz}l? ڋX2At$|vQ< ۭzpRԹPQH)4KAL5BJ!27)m~Kb#1Ѐ{%?Z'H<3x#wW7l&E 1 k[n][T+U\Pc}.޺жGc9Nٴǜ> YX5nUj˄h@gCkzHb{iZi*D̈́FD[~Y$ϽӘ%FR)RŢAMI lp@3*𯛉{AYt bS줍^ԭfVqC9WFq*$ ~R4>^ϟ؏YG9Ge@Χ&eD Gq,E%u4bvruq!J4ȵ7$ @ȞGf ~_:`D/#rPZ_֤pd, S5/qMvoe`{%4k^%w`>9w`0T_X;gXb篠rdJ.넢HHt_83l |Ӟ-rQJ g6C1,}a$i֒[}H:׋I__&{YJ&6\cv[˱XK xGX!\QtB5/+A;ÄC*XptQ۟2)=49W1:G_#yȩysJ҄MBzv[`?P" CB< \W@UU=Yrm : TzϬ! sdlmW& @\˪9.ӗR9a-R1_z>igp6UV7%wD4?zz jGl)r҇R]31#^)C ;~YwQ6rWwnyh9,W@*v3&aiUL9?т-EAw_)xۧ}~#f.a򽱷` 6-o@EF=Bo 5Q:܈0w{{fL$[)QB/n4%ϒjGdC{o}hBjV&'*lpYROZ@XFp"1\ȤbM'1֨jzn͍Ebк)ɣx &D b,imQ0sGN6zvz)vr6{va݇6VTB΁rӧf|{;* &P>8u e)0heG>(u1ˑϮ2AA_/Tu8`q3\yy +K3N#Z{xO^e5r\ՙ7Ot9>I,LQɍ%aXc1.~aيvsY)Pqq4&8>YYjgHU.i&ڨ\U[$.I'<B" GZ[_欏ݿcǩSYaӃ -=!i e82%|S բџK7#deeDйiϑ/ۘh&kEXxf&W%׃/~EVcih `K5,?xSO僇Je--Ws[B͢5v)yTZ'a\VTD es\?rfj j)թTW6?a>Sڠ4w`*j>(-g9N`&[lj'LAn 8d32^1qE/5nbh}` J M%lpc#:]m?g.Vl G I,9U#vR>#/8w,-gR:~& DX[猜fD%Xc]1HK㚵9d{Iny3H-}D[pXw,|-9Tuu zuYAiSQH,^nEbo \#?A6&S0R冈z"͜G?Udm?-fӂc;빋@eWgOB^ܔ0#?:o [Dez2Tƀ+.L삂P,*! -ڻ}g;kn@1 w糔8 _~ej^ LFP|&RnB⭦28 >+A%In9lwr>R |R>VMYGYnI>VyOn"R#BiAâޠ ga|`=ũ kfBZ2cC;|z,e߬뱄rJd\ jM%cT%V& oJk2 d8^OWRۯ+(q-,'VIk,+3E`<5E\c蟥|]DY L1,Ѝ8T>O_okf ۄR=rexWkфqУEtehֱYgPxOSRni0efW-̅q߭bd4,Ar;[ 5vjLږy }x&Hd3#rʻ'!e:址Qvwn)zFAaɒ֗R[8qRk[*V:Wq門Nj"p:y1SC! s-bDq:>17I:dZPk E]] BH"AfMgj77tfj<>G+36x:gGp_o'F/&aG:G}OZwKp3TeE,^co`z:EՉ}r3;]=~[# *rOl}@Y,_N}Dނ8W_{ M61ryn| shخ)PC xKeS4گ٣?(Nֳ ?]OK´bE6|[i+`G也7xW".Yx\t8nʗ|qXsH \ӵ)q*adBԥQ~l)qc+v֘׿ڰh 8-A;]Γ=(IY_76z3"枩KTN{4Ç'7*X4M~Xݚ߶u p!5(`+upYW[n)Z#(>iÉ/m&a_U+Z3~:tϪĠ?&T(nfE̤i-oPA₷'@p0'nAj:̻6NkJ^- o0b; i|P}]3@vʣ`4dKr+^1衶jo9%<7c> 0Ir6)3pW8vU4LOZ:Z)yR[Fr鬖7BowXT׏<\G1cg n>oڰ{IM8^uzml (O=$*S"Ig~y\:ܠؔ9Y*)6ivgϹ=pY,x^F <؜}'A" sf0:*!·9ChT_j3Xe)mOHbD/SVA%Bz'XxT7}͸\B[cl%3Ʊe cqTɔ.O鱑ЏE;Q+uO~`ҩzxj`y? EvfPҾ~˨2V9N%ӬG܇\#F*՜v5&5 |heQEC`qDád݇"DyKwBqcJs}LlH/ skW|rgǐМVk2 >%X_lJp{.],vVq-\eȞ_ǒSwA<^P*) s IW$&T{^Yt~eǪP6ʂ>|QH [h\N%Zx<6VG!-U-``m@NQ!ڳa܏mUMoR6 Hs ֢ũjLDaيݜ_0IUeA4n& n 1jxjNj@װT#q5>V(C q"sȽT :;G2(%9y /yQ;5ZǍ?mV8.p6ςh%|e^]`>o8MemN=T9? z{Rb!UܴګS,=A0$MWwo}"*JH"*5jdwcAΞ @$[G30RwУxC 2A쑈N@B72jAdESކ7PF3ԫUOEA),zmFFٛiX[0l6m@߷@#PQ$8*xPWrѽC3 vN62Bl8"jw9)^iT6ӟ0~[BkHWK֟;V|#ӷ fn֦K= Sf /e>2J<~jd$ /OBq/yn3Cl~ˮNsӋ{'fvU題i-M$|E~FA2rMɷa.:FMT(  >YYk?8|hn^~ ud曎*^Zj3]Jŋ!p5x#.1!lԃ--d= ׍2N~05m~g`_!xO"# ^!iBgV$uZd[`l]OYZJܾ̞Zp?}6 )Iap/a eI 7uE#em[J*[<!ׅ2)t (Wg"fSgWn`FMȂQw d@s;,B[~DM SO=  ;ARQʌeVQi" 엂}z|9r-7K,b&&XUt)3m7Q}FP'>,&G@Shܠgb_Sf]e0;brѰ0˝7LEufRφ^Q*]tHE.|X~f5 . ҉yTg>V%L4B_z=g5f A \@E"cRЏ)yѳs7C! ,"0s~榬ĵ"D)&PnZ@A`|8л%B`*$| XVm/"]OxL*H|l =0ȶ%MR<(1NL ٥:TӸ}^HݰDŽn0k&_7QpZ\̏5Wшg?I(p 0m Oi»Tޠ>ŴW{a}E/d9Z.ݚv}lq}iR'ԔAE.n =`W!C7G^cY'VĸD#(9[{Htm:e_h$Hwj6p]kTgyUj6X꾀n3\ֺv wIW&q .@Z;PA{1q,z~H2 ̑#&:W=ml!Ӛ ۹ E BTISxڕ_(\}x A_p%wv!Ya |RhM yC3Ѫݗ}1 9{R7qj8YjbM>TK,\ՎH~T*Oc[%:1ׄioϷ1#w t\{b+tK!- D#jhcg$]IHF*¶l7VYj qB_jF[dS6~B}2&jm@% `a#rX,ί9'&eG2DBTK[V.eJ8B `ˣA k?uD] DL&}A2aC6CBQ m%ڦ*K݌ ъJ6t),s dG;^m9 MYS7LkMxi I=h%hz7Z6Z őYv 4jS-W"WB郞 qj \qiV-IJ49q¸c|`|]FD \| 5MTdt)VX[&oH)ѧ>((N;RY;I*MUvN,MCt̩?lT}+au6 Z-D TϘY{>POT =V:MIa;(?h<-fl_~]O|֒ha;S<0H@lt^JUc1S6JCi>ɠ8ZlEC+cIZK<}I b2UE£l{!@Dl73)N&G<ܼ~ >۝:8)?K^fa7>?N"eJ0c}t^B앹g< Sw FX:јS+-}/5ۊ~^~1=5N:B$&LL@c`>]GmN\}ȭmg(ˉٹ困 2V.~2'.@Dbnsu=Fmx}^Si%[@ghNeݺXZ(>sL3”&MBIQ{˜ U8L?V%kz̮miƟ؆_fM)߹Ѵ6#r zHɊ=2d`D2uL ȣޮ㓤 dIvSߙh$jr#Ο./Eܯhwmd:wsR!r^I.哟΀HH:p̅J'%HO%g, Hop `$.!^q.ЁFq`D(bn]Bx f.%k⌨M4oY="ĝ֥HexxA" Y|Z@=Щ6ѝt ^Mm:U܌!cwB] ,Wz>Qyj>^6exS?=W49dijc+iRadGH`"MEkx""EPGFx C É+.1esaŪI(ݢc߾(5ǻFcR9$bp`i<KƤ ~VL7/ P7}NݡNohFXcgs޳fpغ$XԖFkϏ1uםCh@tMnN:G7JVl= c ە] ?`Gɾ5NZZ+VUtI ܻ;-(fi΀}~']_{U(inD1x{P^օsbef;yvvQr ++fYEe<5R;ܷ\Ǥbi)-e '݈Kl;|Oz*no%S)'.|5>)p19y I&ypX+J'&MJյ"*X\q:zw@T48ca೻3c:!b ,4r;71~elm-]i~!61P+h滒ik8\VTC?* 2 "[Gj-[a"#>zNS 7o-Dۂ'͢Z#s* w W+Y:om3ԗq̸[!S6dV2 _9\.'ح @a?tJ~XXz<}ݩ 1NT8^mԐ寢\kP:ڢpJU9dhxm2d&V'Ҥ $f2cK{2`WQNr.6NU*5^-l.6ی\v@?&S wgXJg0Jq2I qlb I+i/XGBIܮSRZ,lebGTYyX&]yA =OjPA遟}l2 pkt%MӨq~&ycaFpD_ >[qibm4uq+^ӁT[~ Kr(oOW+WK%_,&^]l8})-l?˿YEȪ葦eCֻw1IAk[8pd̈́͘U:`(Z'[R/fbWPon#5 inq7J*fEM$%<䢏G.4s9YMFS7SwQe6=#ʱ-yCkIɜ/RR\ti#_d7,v1cû#E97;4 @,H8`ޣo+q/O>ʉw Qɴڇ1ULݿNըzB[3=-b;] @9US#f:J#f)DҞ/|+˘Wn^g*L4z)̓װxiRBX{sCg#I%5}] EqAY>l>*qߡ' 7#I7#J!MzIܭS9RH6Fͅi]\¸m=1o`b%nhTz i}6*3g=UwFc{[ȗHK~3KJu@cc}‹M~58IR\ ,f5 kMtm3+Xx\5:0y<Ζz.)UﺱOT@Yl8 A_S5ڑ90gOzmzuL$!DCBo%>ؗ`l&F탿emk`v LiOIƟ "(B!bF>%7_?Z (We`49I؇'=Lu.vw;hq# n;J/iokGa*"D5gDq)Mi@c6խr&Rn4Љ_b;w06+,}ײ{r-)Bx/MS.0{rHvom'2`F'9aMitja^RM[L;#THfkZB:])x{;nԮWL7V%rPYŮ;K-暈0;@Cci'ȴބ>?nbSiOʿ)z|bGԧ|m0˅$ `bd5[mY Dž&ghn4-[saJW:wYcΑcsQfq/wVeG<:z*Z$&|9zi{0ރInl#`ʈyض\_?Rʂ. ysz |mCx"ezf=TR΁m_/dek蹗@hL:CHXjTwͽ[SKIwgjJ}j H>T: 81Ÿ*}hn߆Ua|ͻcîǑcSf;:D3fUXe]]3b.OHH.6E]0q3]"YF7Łt&@r6!~/5Aw~H4tCqpLŠNcGjvWj~&pA3N}H!3.Ag+0n"v&K n KOETģ-O *YXWU(8㔃ه1He u[af7&C~ "5 '<(ZnzScN񘶋qo~I\ :a N;=ߕ[e3 Tᇄ*p8/HRc7=}&C0] m{x^SWܸC*\&dQ?N[ 0 e+YJ+58jK|b3MreǪ^*i8mXuF^뾲 aBa.MAqUXNH9t|z:v(Đp*>̣/h -7gI cKNofn\,+hACtg~QHmL|H3s;'F1 \knNn,] 9ɟ2p(\¶HDf(g9T`3)ތ\ ##R|8ka62gvh%iC*u;⺧ kGL>å!t+&6Qa4bBLx\Lb+܏]*I ,V*Šx^UtŁ˦ȷYXh.s Z^ u߉=Ǥ3RS2ح;נ,;@>Sҟ{$pRi8zrh>IqW=|Μozm764~SK19rcxub(7=ek=AvF k *8iҊCڸ犞fTsYck{k{2P}B#rqN,EϤ P-?A#dw:,QÎ:o+}4.4Djo=Ptw?W{9Z}lAԋe]p`Ϊ˕oDl P0HQ}Uu= /#F% v<+yē/JGb0ŨM $J@:?J> [G["?@zV$4Ϯd2Ǐv6]96‚)۰CI8T>I@_fx 3db#"O`킧xf @2oEBm\ R7z9T/Ꮬr*FY+ Tϓ.Nlb1XL5W y+ /.i!<W RMS4R wi^'i<򯚙z0ul\2N&xG"TqExo֌#p1rlbg(\6#R>`Ëւ= EY B"{,l_*.7W 9Ayh);`ĶZMPJ,1Ee.SPlBa$%*sXGd.yL]Ɖ^79!D,d2W|fb2cLd d(I+sTe˯ S9WJ_Rݑ|2g_uPx^Z/ ~H;ǜlVeelg!7#|V@0Jߴ~GA j==pXfc̘67y֢Z^@`Oe;9"m)5MO(Q"": e+'UFS!䉏"]`rI^_7BqtXS|jbLm]?rIKR#:_l!8NY8;k:AZ(NDGUҵ~#jq03nBr١[sܿvcs;hҐ[I!^S7#o/9:Z>Eg{0:s} ߞ=ĔQ{U7(w_a:31c?SR\jƏ7qTXǴB&͍kXjC`s9M&G8E /!27yKK3%9͆b }uyV6USjX.4N3wHp-;Z %>;EuJzFq#u~Y\_n (VxidʃKqJdOoM:]}z"dHS:kMQ~{tN]@& Wa,'XIžiS}+y; uNHP ~ ;pYF&ۆI.kb7{' n{p{66dwgnVւd\֧7.Pʝ{*9犽QZ{&46Q$. ytf4|/K=Kv7-lU*GXQ[sBO/& 2Sc`fUV\X=vڵ? @qd1jv5lH T]E*#!߂{P u7޳f߰@>3&5pʭ8h>wiUH!/CT+e]Q0GU)37k<6C=  4~/UƥQٚ{h[ߝ NK*l"{'$s;&_ 7Dxq[FGVjI`K;z9Bm)Hfg>i73+P/efelVZ_AXQ?~X?p ]'e_10U*%}BEk[3x5m]:J>/*ޏߔ, ..#HZq2 r4NWwǎ \jȁkfl?.VheН7[c%h{H(g3T\we1 Ri]NHSA+j@ VNgy?v-|\h3垱tFlu w~4Flha! DgD>=:.V+?86tRs@— Q3eUV둡،RdZ;/$|hѦ.?a})  4@SCpS/cu=ޤ\fJkΪo3EuV,I`7){zr=0hĤ<}Z5G<^l#0l? aGp[Mݟ~")a\jdtd~먡 T>>mIQK55U « 42GIt߄ԃϖL6 1;z>PsI67c"J>)F:.e@b/,k|~/1|2_hea'S\AdCxd>"x=q FRNi]bA+!YaȳvjP~u#y@- ҳ:Vi-V][Jڻ6GAZ[+ByKɎu{ggto  ԹK%Ԫ2Ͷfh;"Y;[.6)[=_?ځ5K쵑!9ge.VG[S$N"R7VDE'r\f\ !2rfg-$Zu-VF[@ C?-%z%vhMy"ӭ8EվH-d?Q"C%Ak C;5W}CVx0YyXezKΘ9k>~q9uOmrEI(.@(]Gh:tm+I4$Ry۾E;pd8]]Sv,#5c0I˩ZN{X_l!Cv,F52k @c -~F}KuȐ԰ZW&XϵhJcSCsbPN JvQ/u!ء"6o :D:94^׸ 7 M(2B4`|hϻbi-GBXpJ,ڒ6WJ @uXMKx1.6 ͛4WWӒ"U)r:ا={)s59d8m]Uף,=l~ գha-\ Ҥ̚#pH*௽ťOuArֺ^=&}tnb| ڿ"7R.*p+H16 40y`v< dETck s# Mc2ԮFDIF ,nmp>յނ>QYa'ydd 9f'1wˮMQmʆ_Pϲr./p p(YMJ+]{:t 1n ND}\0z -_°Yh^R{r>NI.&躯Y{;iv'h=~pkA3(Q2z_6n~ gxՈgHg+LiBqr0}R,Nt9n2;@cPYCufI<`sԜc>.C$ٵrVZ9TNPN:]60Gy- Bx 1ҳ7\Ń(om:$C3{98™"m*  X}/5t*!|i,g49{ȟxQ|Q$\Gd.f\|s1=a΄(mnbDUĆ:C4%) kQ'OicqL]zS '@CLx n}r KIy]=Ygkn*x-lH#f$4JƵkHWnr|-Q}{qMA| V^n%&`=O`;/F`~_SVuց#).uu5R6 ڎ)җ8_,7Ɯ]r?жŒ Dh,zGTV<,Hq o[ri)nö8r Q+iƬ}2uT]Bʝk@ח3AGKE\OYk0ԌGVvpL3/qbL; G𚥍A 悎NqaqVs= gS>PQiHgwL5:~q TOǺp6y ͇dz%hQ,F,X>zAW 幉"# Tjb$мc}2&-'o'Ԉq0ykSI2 3z^`>+'32"fRvF6s!TAEM*%,BCРݢ8sQk ۢ5wUԄ'<SBP X࿅ԁhj mq@ @:-C`ZI{;yS"ӵj|S:ZFQDT6gsltݝy5ڒq*GK8,%@&Aǡx:2/w2@ߢl} K#pZ5@Rm{?4DGToEqP,zĔ˿N.Fg-!,vy+3tyby &gm%[BK5Ej;M\x3*,Gƣ& 3bƮqeHzL,{ jX)j~ԝе~\4+nFRK'9{Y-m6ES'xG P5w.W1q z`Ж$ &-lL Wuu>o72%'`~aJ2$?adn Kr`ĶW5/]B-H;ZyJӯ}Ky>E\ʕq"U>&h2/1|'7i!jR׫ -Tw/M:\IwʜnSܬ%歚SLj 9A.}%`"zp MTݙMNzwMVdbߦ5!;ΌSA(nFWׅc|{^'q&]ong (.hN4vao2йt R_q:ˎjA+FlsN2&;#E eoj.0[|+u_daOlMAyqŸJʣje,ݱ E.o-̒^zHCFXDυExiɎS^;Q,DyQ#.'{ΔErR@!n8T/L*pde09oؼr{Q* tnku.Ӄg'SlR.J%2E5 ʌMo7)CB00-IWR$g0Y/z:`DO(bblu2%Gq ϰ͑OT< 7[Ywsj{/W_HǢ>q9Gv) 4;^Gx+cQ($96V)0kRlh2U/oڑmwj%>Bj#ëô *X,zPrK:Mr Wg(>zV/f/ގ1wu.v%&5Q*Ux?Չ| RY&|qNF&N1Mu6Fw(/(^_x {ڿ D1=A?-%x rb !+ ?7fwK5Tn 4c}ɥf:/pΧsc2ג٬)I;N!?IuMC1 *)kߢ^/̋萘uϚQz {l}}U,]ZЅhlP'5_kν yִ >R&ƃ1Ti9B0u!u/4!̅F3gٌTM8nr48Ǝ>zvrQ?V |{x)&g{bh,ϰ/1HM+ (;d$XɬҢw8;H$ao^V-ᮭz_>9f<}^".C&K9gC} 7I4ڸ[),kVacmGphXSt`H78z 3& |  +AN(Pn("bib̳ܳiQG]ijAU"a\zW ݙ9o2'3Ԋ_ uhU ;Wb~UcHl<F 0#da@UƏ@o1M,.ʲ!d^hUH⡀zZܼoHHx)ɔ@!վN:>G~i:rD,&~/cT8턮KzYJOҼam}iW`wڕ䬅f3}Կ&4jߓ72f~kʻ(s[c2x䊔5m$֙ C)QJdPF^'(Wi䵳 . }Rz)ȵZ}}>7" u.è1^e(ÖQr"%#lO1>B::=Xz8O& -CN;oKdMŠU gQ-tGR2Ig>pQac;KdYꟗKvzD’Yh*ڹ5{'Q:8Y^azӏ_ ,* ˖(R oYŀBa*%m'A9'F,d&\C؋ 3>"L "uv2Xpf8nW F?aݞQUuϲXgD9:37Ҫ G9X^l/c2:M `E j4#_!'A{H%b%ea fAQqx;_k/-w?qer&HkzF]!{atȖf'P}l53o\&d(g-Әpg`JdWG߱Κ`p%r`wVkǐє"}Ė\sm[ȐRYg%n&#[ iv0FޡUC\F.2bE۾ s|o=u ݩ J|;O@ep*g4eGͅo[jPB ۓL#xl,:DgӆB.<~ sn>;s!'{Jy&q~/G"g_+x& E QYyPػ+&sĠ]᳢$,v߸@Bд7Ub=#FIލK~nxAc*8BONx:UQԗ'㋭wFs ,$᭗Oq.򁻶݉ (l_ײBOfhGQ=qB <eZlMRCD#^݈^ rIN <#R0*604B7 ՚3Ie8eYJ4XqvOh.5tgŕjoqLՙ{YTAHf^А[7%"t:zKIc{WP Of8V50KG<})׋ n,JVͺ!gg|U[I vDQ_LASoiɊJN_f.UDg]}$K™S"sƸ9 7t`#\2xldb@}\USbXUp|5%1σ@U>vt}lND@i3fp2بH cpo0EzqxL($v3e '-MV'6răW` ʢ:q9ܥ!V^R]Q,'/wGP>0n6^H$&W4Lή<ɄέՄNO}=8.Mpֹ0%ENa)홨gʶ&"ea쟜70?N0}%fUOI - _H8y keぷ"+әt;j.ԑTSu{Lb5}W'Cxۉu&56[>sAC?Ny$ Vq99 +9%ErĪnJH4d>j`˲Aԏ'#嗤L9̓sT6QzNFkFNΦ7H)@Hhv<JhȦQ$Cus4}i0Bqi(O (urrm"DI>ñz0ݝXo`H7$og=Ӈ/4ҡCÃt7)%˄?+J;W~8|%iyJZ G2msәZ(+*K;W7;Wdw/ަ+QJa sc [|UwY+/}1^\xOW/P([wrqQq11trq%xQ`뾒H v-6k!6j5`bj#[ӈR$=6O)6qCy1Zlh -GL371_2cYI`=W)qgB4֦}?8QK8<<`bN= F(1[bGړNnh0FshI|VƤJ=$FH+oODeRkI0ㅗ|ڵ.5īst!?p:kU FP|l$|Xԭu̢Lo-EeAKVƈH{-5M072x vm. Myh9`"Z/KHYqVu XJ:zE|4.OHzs;I@zrhdTb|Agwij 4wPyՓs\=yR]TRW4=rFȀ 59>%]y=QR3ǻ`wwuֿvdFЃ}톊X6c .f,rNI#D{4wV!4X,#'=~)FcDLI1կ#m0 V< ?y Bo? v)["QLaV"c!" 'n_Ͱ!-"XV!99l&c= `SJZy"m /`tUQ|"x4B4ŝI Yx;hLLӉBeof"Q ؒk#!j)pQ[1cTx~II$vW<.3^4Mec "0;ӸݳRU~ds(Ȼ0J/eM.K[(R޶e771t6y˯ZZCe%7HF^%z=GG4^V~3jA O ĹvIOxu UsFkup9tT?$P?@7G[UE\#h%_z8GS, AܮB5td>FtGЖueqCzBAƯ׏{\6G 3wZ% 铗#PPҪ.=q֯֠S!nO~QGGctprY6ߑދE[ߛDu6;^XaJNf8ÜuD$G\y%+N$HPX=v.Q"|4~"D(Y6u{f؎>ڀ5\ؐbx=?IB&0pG!{B:3|̜}u3&?[2,AaO sbVj7?Ei8ӥ$ {q]g!1h*, y Yt@bJ8t|`Ĥ B0zE{:t66SMG&r-*=XX๩]-"˴|P|2PI6/n_7DL#Bh >lNg zq.:htF:%]UHspJ 91p)G% ,71w!1flCj,?o9wj/~NE0\*R@JЦB> ^pHa&ZFOjz]Q`Zqoh{D@tR$tv5#XG䌟)ԐC Id;200A':} P# ^9/K($PhMxT*ANTG@cꞠaԬƒfl"q ِ]R#)ߠxHX5c\WW7 BGݢ/9\W:!MH)N\@ߦ.ZhTnF04$?d<."-V?EMeh\{=-so})mfd %j}wru*聲x𢡄 m2%q3œ(˞<8fAGHb|,\Dh%CZϙI`]ȨJTo+lh_A\ ϛζtvg=;STwz m5wU?yĸ91, oT"rrB蒯λlJ7piՉ< #zL wNjOiNVмT纈zXo_k?)ÉyNI  dwlV~vDk$JȪdE {uP3)GqŽJWB Kh92yd<;-ԡ.Ѩ\vI% 2]'Sзi!ۻRhn73b{ʻ'I}ѫ*g-çcJ50Öy*]>4k3WbGsiCr`D(w_\\"[n )RdղX~GoF?AgPil:ۣgس1 \`ҹC{d Sh^޵z. ^ZsL!&0ɹ)& %[g6o)0gc~ɍm_u bߴ Ïe{s,KfvH}O $cke45 :sks &a/i,~b}C^r7$ȩ#ԹZ̜)ADաm8s(auk"&v.mkLr Po'j:@ )IP͔BQ,[46RbtQ) ht#ZIHe})#R0IЙN<~3/IUmY;Քn:FL{R/lDIxЛ9yfڦ@uG0@B"f>&eQ(gauHF|čfPk!+GIl 4^gJ\k!!OZ ̿;D%:چpUӯ!; l]$ն HڇzV2t+?*ZqAõ.Bɤe c\@Di(H%2~&[G ǹ+e5IeFO1H|z{HLx.s\.fj޷' &U/Z:V@5G%f*K'PLX(eqk7~O~r(d]l- )4 uE&)_X srV`P T b09^7N&" :aa4H2Ŧ~n)I:s{2ԲeyU dZd{^Gg-zW[[\Dn:p9,?:fjÞْwf3bs/`)HʂGL4R·ȳd~4IΚwRmPߛ"q\$k48R3k%둝d̩!1J/=SzbO*??Sj5L˿훢?K۠hӨ1rܹvs;{>SC|7^t¿ϨSdxA}VjUy:JT>(ڴVJ+e#"$;>n`vz˴z} *aNóZ&;A(tFXQ~R td򣱾n竱s "͗>Tۂj2+[|?=::C^Nخpvnd1wN{njb]dqSZ+_76+NϢzv,r tW}{p71f;z1L2c\|иȦ>#n12ÅK;< zx+Od7xc]dF4>1r>M>?zqKnEƝJd!~UjЗs9kEMK8(wV8"[Ƌ8)+6: 7AT3?z6."@B^0cB5T܌*ͱ k O49/UELd+5UJ003~\@L)n|i5,u#Ň qQ S>ifImُN'LG H8ib(7[# ?m JIX߬%['.8w>&~D|>9H9OQW{)>+-~GK a߼%i=3B BެY)xER36f#|17ank]L=g<,FFeBed}Xű ګjX&%>=֮ͬPL,;3N!7k 7D(v#NLSg_Z|0x<ƎW:`Giؓ=7&y/$֨ۧlʸ*cc*Gp78E+緔mNc}*o_I ۉ5)FgAd㘪zk";!_VBNg&=a#XNTJH|XXj/[z)[&CͦiGEŕZx=_ho,C fsֹህmEi:F/bxehAŔuBӁoO *L+&[~{[tGТU+ \qYkʸ`g}d\W3Zpm ZurAuO;OQ,,nUh ۢ*;C҅}:B'sH/!`֒/hisܵm(9X)"8~@I cR٨_ֽ!컅IN^|D~pSzXEsxy狥PT xȆr NumQ}ڡV׹^Glh{".p%Q;͋[r aw; @0Xx;›yAQBƔ]2N+^aKƶŘV^#tLBb6O) `VI3KiRJ՝vIpDYc}eU7P6yx:2Vó-A]Z[{GtHdr "֭VMwƉ=Kp pU"'`+REos<=PEeS9z1ȖHN"K0'[}8W/x+{.8&a'(S|_RHl[U~SwxX|Soa5TdJMɺec;EVdV  `nܴc;ʶI9|I6Ʈ%_򻷪cz0↫Z>~ W2:jY"dxCkZQG`5õ fҞWaml SBhDWե2P6I2 ם旘z*K!BZ #`|,߶$xuugN ٓZ*XhuL;j+bb8l)`aꦝRE} !yI!A$~Q3mo^-! 7 Ċ檉UPK]#[v|nx!6m1$2ŭ{nҫ,|?H- [\ث|g5†W*ruJglN5|XF!u:p+IAuL]}?rta4))*A|`LX߷hpuIԪԌ8>|$H" SG;E\$Tƨp`}-=\]#K*?}*6l0 M'F}d aOÃ2AEf8 FDԃ'鸲=heD 4WǨ-|:eE.C5K)DAw+F 54d嘆?EC0D2gUVVͳPhɪ ݳ/- QZ6cߏWѵ֡ԔϺִd>hdC?[{{vWnIebZBaKr$cbe|$gvxu53"?kfz/Ų7KfM82O07qbQB:ԝyo"SÒfKPV;g|ɘ aҕHCYs8~qKmE&5] eAAK'ZZ+DطLI֖47sr@ld+WMs:֤~FWb9KdY9Ѡֲ˧ʽ`k(%+ ){t2ɇ©*.yYvgAqTM (?\*%l)Z  A Hm>wkM%(+R$D#mRpuHj׭O-'"'nY "sdm̉ QCKeW^QهYjxnP%PN\0{Wwp;_}\u.2Z8{`z)ׯR'(8"|(uxfAtab߶F34>J%I°&wNPYs Lχ߀VJ|U6x  c\̏|ꓒOC.1\ g܂f[UF>_l r}VX`^yfwweHU[ɱmݦOXL8H4]_&:>7m-S8ZcSZ/6/`nF`n<@.t 3|#]59}9 lV&{]"ԝ/0_zه$y:=I6Lxf 4 SQ),_Y [JXfY%CHNwmtiu5^A=4! ΁ YXsn,w>7VjC~>OڑRtG̟nD,? p|Ycҿ,n8XYSCYEp5=,s -oVx8G&ەLOC_,)lݻf)dܺˠ@{t~+H! K+h`-Z';TSȼ)LߗPB*Ali\rؕ޹qX|N=YbSx(˓\AS)F賓wbF׼t _w!_fr,& J.yG{+3VO; 4ig&ebՊztŖ-yR;AOi[GW[m PjfZ.#@~oѢ SBRA$oKy}>3VfoQ jۭDdh"ݬ1ڱHsH~_FK:%3lC3rMB3"s!c"ܚ, jUXR<EV\'4:@nBWmj}G81;IIxN~hvJ]L } y`DF(N6}:wu(#̇H}dt?T3[n pA1E@@ ~ ɰ):NI+ ~h(%r/spo* ~[sN\cWfCbL$u?J]i[1/d_6݈mb<KEwbh o&xYYΛx>QnQN@?b I ߘ98Q D =*aU/ yG}~8>M`VdT ")V,tK@07yGfl+Vvs~Mw"æ xƆʉD X s\=?"n'˔6`LÒ^PggJm+Jy(˫> ,3[6XSحlh_qkhwѣTZ2Uj BSJ"Gk&^8Y.ڷ:d3'Wj FTSaXOUO$dVjB}xl+j?Ҧp:IhR-X+4 W4t&궘g?+xbPU:[QŰUCI'ObXG؃3W ۅuS~Jq,\ғ\nD}FOƆnFG]3$+C7^6ٷGzO!3@n&jUۋf}Tk~Ù7?u]멉,@`u1gL/ɓTtTĒXԢOTEEm |h4tt^ɒ[-Y9rM&]xAh#;} 3^<$w۸7K^4Fry ;X;/3Nךm[/J,0>V N|G7,nL*,ZXD▊m> o~;7P*to!*D_8z@I`P(_uFj5׶Q|nrOAeD8:Ă0JÇ$oqWd~`Hw/Oh^̺םPqH (ƃ3KԸv38mvlz D'?L *SiAJm(\r*en([~U^@rúI0o((dI@4d0GmUr& ULɄ9aMEN@(2^ZX#E`rnnZmRrFI_>*lpN>f{v'{58DEwsG~A{Ye:v"҉7ͤZ4Ƶ, N-T=mƉbmB0ֳ4ހ1"te tDx E췡i"Hmwbkx4 :INK 3$d-Vwm@3J WΙB?NL+UI^hu5HR"_a;E^QF~Z p /VwZOܗsGonձsHUm`Fu8u7(9Fk: r"j`CNTlggDṙ ۿtP X,cTLKp4*[/Qh #|=@D-TpIw ``sh₴|}݀[uG+h_M SLbyl VITd2:+f]R,x 2B+Z9P۱_֨kW0]p*ϏD_Ku^2p-+[쾌\仯UrD?&0*[pJ Z@ۗʘIRLeaA!+~[ֺ@5K{%agm:'AA "&R]BׯW*;dGˍf\}?NPJ1/bq)h֧AmӼ0zM7/w/35I*@sچהRٽCXP9Qg{|p @jpĆB^>_䒮hsoPIŚ?^"aD%uBUq}&#n82I{ a}pq5Dur\V74 2+Ғ *ڼOȟʓE<\~ol'̆~@f!DL lz+&b*]x[VM/S\0}ek$KzyU"RDjz{y80l6GHr>d]KBjPy%)xrt&ոܦ򆽀م֊}zvyj} *Yba8G7T ! A!))++mX4ImmQݠ$6j̔5IMmj>ZZX}`E`*I,R'nF1R0,e}Nr~6mpO!K8wP6N +o\AAh񥻧HZ;RWgBU &om&2oV[9ޟ"*gF&8P"jl=siDW%A-,7}2pR퉏aP ?"?cm/%s[] r)rљJ~b$p|[;\D("beuX) zW.`/v`d + . xlbNք^tE4@Kͻ o ySLaǃ;\wcto(AF.idڣYQŁ_ (hĹWLx8},BKQI|8D"TwHWD5ukF̠SbrO&[}9i DP>)9$ʈawP-fJ$D,9`P9VgoXĒFb؛3^:SǣXt!LvDБL({&]tف#131O|MMM Sfjs5DqɛPAՠ݆ tms#;ŷ%lb}+ t IFp撅>5nGU Lƛ`Wrwq̼y_;|O74ʕk kԺO) s,k'袁V~.^ ~AffulC-3z@d+0+!~|h}?wKp7XI"AǓa26ѡ ִ@/՗6$(YK4Ŷ i&b怜>fAZ e_KJ$?bvJN/k MAInV LcГ?90rY^Cs흰'~<@wGoYyxHfq@C׫Qx6Tk[^Ӌ Oh>Kѻ+ʚv|2hŵk>u}.Dwp2,pW.Ak=lĢ'hC[Gn0V3ηc]Ÿ:f8K(Գ(1NOfGiF*BY^F&b:h=0XYW6sHg{U7锳2> :{9wlɻj)KV8( :TͣIֵnpzh:ds"OX>9m<Ծ݅lv\,^xêhkmFƤA2O^Ԛlh o@E|J+&cCs>Кӯd{o~PgJ32`@ ?uL LjNmז#W* ZG2[, 7&HP(w!W,*ԃ.6lGisٽ rJKaz~-Xi(h(4m(XܬlqB$ǘ,!,EEG$=3)μP^DEFc <#5j>)!I|xQ&X5(% 9ZLݚg˷AH/? َ֕!+ w9aޝQhLKH KG&@YEˁFFR=Q8SgVPºO;'zC9V ҟ:#hSBjbzM{+/M ;}dAuڎm(7d?&z(ϰ~w_zӏ4”~X˙/R$ &\=4DBdE>Qx ]a7s_[Lt'zLϾ⪱<ߜ`b&c@?"),΅-6J<=6oW=UfAmh&f?^`S^z( 뀍*%%ya6NTwChF/]s7-,go9ʘa6Cŋw?^9x6t+!$RCr豥E휮W6Qoh6^©z) M!@t7y&gݔ=ԭ ]ǔ#t.4fYD^efd|>0KtV_7o޲ KRtx6~;`!aV% .b/Nׄ҅%H݇Yp&p${MWN-+:(ڧE iw & yf^: dٌah ySx?#ȆG%Wوn[˝$ >JyE<+j{#SH VIָQ. ަzmXiWaó,mO&q2b+Sn h4sgx= >=]LG(ᘋH+ 0~./ *$Viwh^/CدGeDcճz2|0g껵)lV(YFvu-(VfYF 7QZCnxg(B#3$j].,@g?jl¨dlfwRЫ{vFI* amuOhղZrtRxge'.>~D9OEr/:-h?{2xtD=vw';)z/4ekGCyRQga`qaV Q1 0{Tv *GZW!2$H nA_nUa冸vZ&H?]s"``Xǣ>wsOOq{Aq+MWP\"k\#F[{p/Lbf#^т92 D3@93)|}eЇf e52 >DAOD9$ef 8朿AJz}BYB#U^ΐڽ✢fGs k.E,2Dzb 9yjDxqɖ>@lB4{!щb:-|6UH/4arɂ}Mg6C%KN VF]gm ޼vt73@kGԱS>Ve@3_jxpDS)커K.oT }ۤKQri!w3J#xX,І2"_ yS;,$YL^ɎM yr{vReJ+zlMɉ1RbzVA"GgyKU υt:DlU~L1uzL1yDʀk6?g-; 3~g%n[2|T(|րz}b6;52_OX )Zeq2RLAzO7r$ ۦjqHkX0?@_WԔR@\S_ukbw_ amn=!!t̮FET3mg0Z01l l #IC&My=b G.)SJQ|у Ar-CcXh;UKw9Y+8M70xo#!]tj<01[ΠbP˽xSx\imʓJAWׁbVG(6qrgB0 ҍ.O8 rRxuFVS^ i}zHϱdφE2r\fS5Υt<cbމ=&1,!J*\Y:>I_PPÐ;Tړ@W:`AW;N:ސqDƝW˅ Us6#y jz(93cOW00nNn[snj/lGbE0 R1D =WM7>6r:"뙛՛?Muaz1Dʮ+.9Tɽ'݋F[^n'x_lf0bynLn ^Il J~gbH.:TW=bm4V;RT2{GTEyMskG[ppɝrU!fȳVOR}: z_?9WyP}nh 8Qƪѻ\eb{IA!֬{ޝ$m]5dXj2Nd2P8[$P@$-%9ъ|`T Kn:yo`&*ŠDȖɬ}^][DcBLw(oDňxN>Fs5Z's#xj#YpfLӈ_VT0CFVr @kArY>W ž*v ̓#Fآ&Fs+A_0#!Vكha5Mu5_`u 5!ͺ_+ْwSɏj~:bS;q|8ex,&lR7sZ</o~24!`#. L"=?乛sD~hhU cؠUS#5w-XREH0~5" 74wvӡ7Ii+e缭i̺hɌb[kE$|jIS7b5*X9v$L`9I斝ܡ7f3{XTY[z",Ƙ6Kp4c` ZWis{7 u2A";Y?hb:d?;An̒gaQVss1Eps5Qt Y-t7a}r~CsrJh¹BLE|b@fAzaɏbQ:\D?3rGZSA敒ܱbA8CxClkUr4U^EPR0* |l4ʭ=L`5w=y2B){=hѭ9Cn]P:sŴ%*̎*[g5A ^s׵E3?yne'hHnYɤV+N܇c:0DܓgFd戴D f{ ilł+֭ m! \܇5K-dHU\4ܯj[z]sz%HXZ PDHw$pcz40f0}ʥ3ætr1L,s֙8 LI2R&޵F4̰a3(iʯ&!R۪-0#\%?Π,fW7 ^JH>t@@)'mX{K+a[גk u_$aq!|=FF}9i>+ub:2WkC K8 48ĸ)q7~Ƣ/} p.꯴S_2?nQ+X'1MuJȠK^LftAO Kv~A|`~si?gv[z5X,KtX$Vlm hWJ^LT>BiP>-0/EGϊf:̉.ps)"vmAc(%gD]3މi돷׫DqL?K,˂?aG kb?٠4xE},OS|QCUsPW>~x1T%TAz6SFlM0('@4֥͎B@:ɜ|,@fnരg8:TvcWe2, =0X!3qV}+:FRwX0 hJl8Br='إFBL.+OpL]]06;*U .a܀ً,t9Bu9C{}HtͰX8EjѤoz'rʄ|vhަ&XkKB][¡ B뼸DWh%LsMlݭWmNfe!nަa!VHAp/{| #N@ըJ,, XCמZ lErER{TBEn2R Ck+t'Wxe\M★™h^?" ;e< 22]OxauL'A'|kB-/{DHUV1i'Ff<,*6$DuE 9J7Xee''8^HfCy/y!H,6Oir!ps_אBZw  j!g 5uX;;,gei~VD]g$IET"*pC3[iϞRj e ^gPd0f%:KvoԣK Dž2M 0'c@Uz#vĚ-n*`teuˆ@1[j/Sd4wWw}{N'C%D#xwÏKtulY3ilP߇I.9:Kj nU{%i6I yޕ )?/>v҅BV=Ew#ē+@X `wk zI-Sb/?lEEK`F{WEfPhGo5װ?s"7N FϚ;*MP'pv޵=XC5UF,{9}i;F6g ,*z (]s.ق0BWw8c4 Y YR0*lmc=iAq.^#aHn%ÂYZG5dYN]wVݎb ,ę]'H -<N& Paxg=#Kv-qhNP%H`@[kY]m@b%D7q*1Ɯ_l(xKi6;;r=RbqaEe`+qbl߳yKAD_- аqvGi:U`OW"p`] ώlPQdٴ6I˩H[GnF#y"*BX]3+DNǪVX<k7b%kpO-!̍!ά13I',{O]y}Ff-O!K8U->r1T;UOD[g%sdd1 =WG(uJHϧfcu[#/.k&=Slc5F*oUz8MD'jͭHsc7.fBzYU4T]R ,V](/#$y *jEka0,'+sH8 I 01L_J/'tirNk|[%.TLA<-YEa%IG{)tcZBsV@@GqouEXŲ`յs%v6VU${w״;r8RK*aLU;ok1vxEtREߜu>.3}sdHdلńD8t ;l -g6_GPī~p3{{ͯy;hz=v(@Ƨʖ}a_'g|H@jvSͳ[ѶWA;Iryh_ٔwbwW`ɲ d'[ԗ-9;H < cUT]xJ$v 9+ yۋ#ѝđqgk?4D)U kM/GPuoox[z}oN*o\>KCmcGJ&B٬Nbeœ]\`.<':md<(Ɲ 1rƏ%Qʮ vb "N1YuZZыer͜S9ɷ'm>ELD $xi=Sm(\s4g?Hh^뇸:=F5-Ɨ'ؔ cN"d0IzAv`2ԚQ>5;Vdtӧ}3/L&!  #« KZm~d\B"T]&DPUδk b[$+WtVϕ[ ,ʶ)%՗n򖭑)Kc\y=f"8W7ޤVCWw2.DIy"ET6݈R*o.'),9\[)*Dz,mi7ԍZ##L4qLDnOi@t:N}B(ЍR^;M,&+qe;!بr} t@菉%c%?%5ْЂGj .yW xF{v? uMP - ӓ=+9|d!2 9B)zEaq ㊇(Y}>Y Xn1_%P,-:V(tU4t,^hy癊z"Fh~鱧5o<$ZEWq7ŭJaX5V.?<7p<>l9b'\Tl'C R.a CpS+Afmؙ%.{r^ӕK. c9,Vpd% f !+Lߟ'~1,% [VG4F j*\z Aͬ {Pk{-r?hi_b> *4ѫ[@l+ڱaO߮3}~">':!?ˏ RUٗ/3=b9l%vO@}He >ylTX5W-ݫUwL!jxGQ^hE*{)p<֬,[K%Ei2) 吉wt_pce*-Ȭq yY'~\ ¥$.f% mmǔOtz~(HpIK,{&0>.dLlZl4{gSl_⒈f&ovk}fXHvpYxUjS,(2G^ĢAq^Xq71@^KǎC3Ph?37Θ.mzB\18o_j»z]¢%AT†.(IRGHq>#M{/"4zQ`**AfOzdŊ'l%$2OIq2hx`=ޖ-WG9,3|?bx1s}6<(TCjbOR !uQxRMJ755;g")4[!ʋhn: ޜR0;kSNB/y6R}`$ٱ {Oif}KcD$_b$7ub#qU2? -"x^3>TU @pС(q0}x S3_Z#;<.Ur FžVɉSp!،WRb5 k(= (t'a l8, y8 hx4uy帖*="=Ix2{y6ɳE,HI;SkIUavRk"f")XP9;]O]L^ #q*rzLEbx^ɫGr"R= @f 頵"o% b:sm])5̟ &ä! w@t@$Ihv 4:A)B% !uX"kLB Glްhv1OC ./=56tyB<<&7!qVx \F$y\͂.Em-*7hE.tE[^y,H,|a㒳1BಏzZuCr葃 @$>lC -ˬJZ߀|픆q1ݑ& }ʞAJ 22nBx]ԤStF״ 0’F&D[o { 8Xu_9d\TxM#!MYjwlVmv3p[DG(8@#8f5#Ux}xᨮy Ści}wAؿO~uP8SߋK*i֬My6AKZ|ctQqg{5i/< uCyVb_{ָ#]in`.:" V:s>j)\6KDRHg}!'$,]RU>R`e S Ø Xm p)[V#Ӌal{;X"T@⶗ ?nF(>RM b/KǜP?V\e^}!ظIfAe R-722{-Xs5Ƀ3. 5+,NQ0Iru.dU]%ɖ>_=S=8qǒQA6w:c%mAi?RDhve6cU+<[9!GW -^SK;[F-$\I/Һd, >H3*(DsGϹ?oUKmʹrIEʰXK]ʡ<,;:0:,04</q ³~qD-15w̜r{֒GA] t=xϨ)>Hv}^&? }OfO|YPes 'j[=ARc>+L?ue#UY1(bL|5d? cM%~]F_g6^NjÕIoeVԒ9"Ř_2=fdZ.<sܮr`V'2#pd\&^G Ne4W]^ vVSd5_NkN|L0<E"Ef WJ1@NnJm}q?> A;}LȔ09ø/,)gӺbJ>KL@/vr`}BßX<&!4p;j}ِ)k| :7!GTtIoרkV6ZDɮs;l"+~O 9u=ODIPiFJDnn<3'(`%Z7o4 N)ф+~JbԐJۏ!' [[A!sl1D՝M!׽ %\r ~vd5>|ױ {!K[FlmqZkf4_>1Wf@2`s'~h>>X-d{]Y KG@fڃ ~E[KXo>kylT6aNoRqQ94-,!1@@ KoWE_C1 *< T;Wqp85r=RJ:GxE|^6g+#@7RmX>x_G-*{JOPՌ'&G ֜UD/qsC4v g+ hɳ֬(〆c_Hѧ~DAx39ڿ_Mt,fL޹/?jD œ AwtE}GBΜ;:4;A6҉ \1#NCyƘ^H#eDMGb &(Z@&2A)p>TF}E$\ǜ3J,x+CWKZb@行U'q( z"1riW%:Ȫ9FM 3#cX:5v[['vF\ X> Q4aP&‡V^1w95CSmМW5L&T)yy]a׽&;H1E ?{Q֑fVa~֓jGKS]wI3New:пSG<䗱qE=0!-[55h`13u,k8+'0I#|玤('&0KuGRyut&C2-wK8P#^9V)zy6bxC29D=Q OcS~8ߦa!#;GF#ߜfK/(QOX1odLڿg`h^O{"rKX'֙YӀOIԼCL\#d7U0cNaʆMR̶( aLĚҜ ;:Y]; MHDgٍv`_SS՘?t7;PXb =TT%>]o$fM\f0%d%FmsCU.,;۰`8^-S.CcռFXupS{ݑSeKX-ۍ߼{9GZm1Qj< z _/X̫]VMl,\Z.n~z""1K}֎N)[]6d~Atb'~!O!*'Ry؛9OZ_m BL*tMѨO6L%CE Ӗg+Ͱ|':ۃGuYCKdfvEf<Ͳ!S)h^L>*ڦ1QKވ|=iS8F0ӘT)4ן{SM@ ({ՐkzDU i4Yvoqb\9{aZ T u0kmn$~қ!wq'F>D֗kcq6q#TŠj+xM]r;dQn#[GM} h'Rw#ރD<o\8>Їt+vՒdo$8gvoB.hTP3Uw.Q^QY^"g wLvVSΧмI~+(v,_*mRD bnyrN9tu2R?v YbsiG(w. c0S]pVQ9G?;3CjDo/^z,3S?n3m9?B)ozZSr0DX&}j }-!}Yt=ґ<ľ<]eL%9XA)50%beE' DٳA;:53Tbh/chޘWdݪdt=a/0V"&pmZ :)# %z̢/-AЧ75G +Me&m!HI .^DLrb@6#9 N[F+ Ǿ]frnh$rgK[3I?$>{B6%5nL:lǪabDE3YquIZbz!ؾ$Wb >W`9&;ߐ#Y }֝cLZ.T/Sjyp2Ccϸſj׽.ѕHh뗽(7'0U-q0+c<* A~Fy xCL^G^P`mOjx1d>n1ٌ,&;B5K4F\ K?1sY۫ kp,xnMAݳWG|u)s}6VۛCC\rb˿_b`WF5)h4Ot^!i|q >6x3D[0aɱZ^MT|| btJ;`V ڻ48VUl}/.D7CggpQcipn0nb7|ى\,O(5)e#(4V `? 謁#>}sulcJ\S Ou Nt8Opb‡Uj2N dw^qTG]CȫY71О|Z ,$4%w 3Bi3;LhltuvρMHHpRpC$k4a Sm w63;z D3iS.'[R7,>;6pNZ|nq*kل}'j"nQ!w= J٦MUؖE\WVOԊGەZoYb~Q1RV؃) wo hATG;퐸Yo={Vd'\C)a0*/9a, O. qO+QDs-U;{07SeO z)g!w#1v`ʮV W,1 Wuq[\3{%&ZLs`k%q c $(ϊFcC |?{>N梦G:o~:^6)߻E@f.kj60,a$x. gY='6 , LdgW1ǝT~ J_ی@צKpS8(L"R"5k׭ЮOhUѿʾR|IPD{hia.dSA#d?Wv"Ƙ2܍X]3y☶/+Ήx5d8`RNuuTXl@%S΂o!}|j@`uOVɵF3O _?f\퍫b^X04ވijjUd ʲr lP6,3#[ OIX_qI ݘxa.t?B{Y=%Lfƕ@|д&_i}  |͵Qo.PR4"Y۽Q9gj^gsn)MyʫyEFܖQYוgf_sɾuOQ_ɮWz@Yr-vF2C+yo&'F+̥KB}#;U3XfH1$Gȱ(޸XBL]sJ1O> [/Wz;ϒEGF+ͯII)y}5s٤6ݙ1:mIMEhSE6]X ֬yeԿF,]+oL`V2yv]s3B8.s*Q[c7ex5BsZ/K%+2xȿJ@]|IW)vhx5[~)/w< bsv.8֢8Ӄm4#1%6pV.cC0/Z xcw4l04rف e'v7c}ǥϡW ۍW#1gvu?{^wV3/.7o_ H;2#E43we99PD*p_Zԅnk[׃ƪBDfRR񝝖3kݎ2÷y]̗qQ6]MbZDeDnl8e<8D!&YB3fӗ'`Kd3gNHߝ`4yrr< i tp8"͕Ae(/Ů[H?[Ԟ!%$.I')ډoktXO/q .wRMb|P$CJG Gy9@}{*54V޷6몉]"6Ӂfy@#ϧw`ވdDEe+9TÉBs1=Bgn#*kpHdc-һ 5˜z#%%%%E[|ϽDGP-{tS ܰ>4)!68ʛ߀=LyhyI ciܤFY.+do`ʙmSVj|d]l˥Ӧ$1fLLqwh[.h3Ӑq$zM3]=w50ΔĖ$^cM'fDXXzʧR0Ns:$#}B?SFڒN\J0:mmv>D {/Q9EV2@q}H<}pyf6ܐA>kR^/Gb{=6ImFqߕu!1_5s+Iy H#rg=_E΁gfQ}o=yCo"]2'kq0쳢#E]Q,)E m?qGT Qghfsűf!F@ݶ83A omkDvU7"c_}A՗@ub+:2%mu[eOvMs=8]@vndؔ3Z2B+yс -i\_"ZKeg\TΞYg]bsb> Ҕ29aRﲤڒY%y Cx֢}~o󗫀&S/9trMpH!BRhX$<6kHUs #~x:c%۾ep@uyZo1!#3|;(]2b+*w u_?˛=! mdF>1 ۚ~ k ĸQJS)cTfIn_Sco ~cWQMXբ [ hlYvd]L?2ݠI+A8=f{pZ6t„Ѣ x-cs"̒@:67]mBO4~@CԅC > tIe kU@t*ǁIS Aߡ:7ʉRU\wأiUOM')2ԍexSj^s-< yH7_Q4|׌wJ>0cރjcׂvhȪ6Y U̶S=6Q#hwY؀p* ػZ"#)X7qݣGE`U\*Lq5#W"d1BlLOqD1ߣ AKLK =@X hP["x|i1 YQFS7C֜+~/S4j#1r#l\ߑYGG0%g-n8l iA,]wS jUڂ‡(TOWcܚ 2%91T`k Wr Hh p. + ^oRGEPqc/B\cfp=nmл%bE[u]hәpMe"NU4O9I8|N̎~7RҍTabZ#_ mwq_q3#9 ͫUgY1WDxkͱ^Ϣ]5 ݙ;_ pPfsC%ԤKކ7L,L*%ᵕGY#S(ݓҌxҋK,CAI1*}I[ȉ>%T!,bnSsI q, afabtKP!0[% qgAldWkUhH"XX0"5`mݿrG` 28![NnނYy0WwECǴݮFwaƂQ:"toYH)< ;6*,3kgeXnyBE/Q$%9 q{Q _9)`RN$O(w؃aU 5Rm#fUa~O7YxմVn+_6d@zb[^u *$JO:ޗx[1-RMWDtAG3) 1)ϳ0hy 0:z[%]я'%N#w cNFM,CzdZ9FN qӃ ӺNrGc+Kiգ">TVQׁ|V/瑈8)g p^O {cRĶQX.2!|z-+wr-p.J언RG8 S$\#kl{'q` %N48!'Yr'UGN/qN`,Ռ!<5 iNF64n.sU}UMr744 ]cS$r[z2m V8ހ,8V ݅$ g3Q7ipa*9p0+O)gqlj"Jj#Huo8sJ&#\'}튴Pd.K7:8 3$;#@ʝD\|(۶1Yb8W,=C5{%JdA h{?(}Su0n!Kk̐^w&%w[mK98?"4+5ltJc -eIi#e\rv?Gon8׎`uW˼ &D&eU"mvmr=VR.M2LG澕`濛pkN f [YQmO`p_~r.'!yGr*F6`H+7֟L^RWiMpqӸ'(E)Ž߀tˈ̿YA&.f QHN^1 "[# nbr"j+=Tl}ۿJtqzI>l &S3j|B3I~7#Sd8^ 94ZR $u*g 8O<`'Uͧ0"a'{|1ي0<}( T7aKT LRX:"/}~ mVH}n*ZZ"?a35=#ӑSX* -R`w ^&]3YWȬ)<a!y]'lfy:deF_-j>:-83xZlxd1#O>v#~ة(>[ :k֔1')a$;MP-qҌW ONS^{7FؽD %gJ#RcvCJ<@P,cc^-wх03]!u0W40 l+Q{$Bc֑{Aά3&go̯fMH0š3w)7tS'5 Ca2PTWίA2DY̴ǀg9KWCX5܇f "ڄ@Z ʫ%G@a{:P0Ꝩ2>0.+%Ɇ1ո)-!]c1X/c\hVE>wȰ?T9ژWWrA?sMzhi(m⼟dJDNA&Y?/6I^}=^e,U<4^be.!"7Ҕ.>fIGL _hz"B# ͣ0Ϣ)vU(U6R@ЩA;yKgޯ䞅%j‰%d>o{⬗(% h5V;ز%݉T>\ę =-ʞD)Iļ-٠ pͽI=zT=n)BASM (3}|2xR@4|T{= i+]M; z8H=^e2l%a~M_=l>`O0 Y +õW;5H\oY*Jo,y c:\, !#w x&C.U!]Q.l8v*e) AR6VRU?A]7>֨Mv8mǞL =1g*''bC daE7ѵEip=nwOR|(-/,q*x$cro?KRӫPb#iz"#]U8 B \YQ9g3]M?]#P)MvW /d1?gVu߰+ߊ_gFq5>`=fCϵNo X@W.J"Z2vݬ]N̶>X/|Y_;IR `](%5([·lWQ7~DDə™0qv3# s+L5`CdiuEYvA: Z}v<=`P5? ;ޠ%0m$p%^tӈ><̝vp,dw>z$_H9fE`^K3˾ekSA* pbuK kjx$o5q -s4)'m23>g֐z2Gz3 x2RP$'+|[rFH>NQ5M1P#)~\+ϫQoRWNV9cn Dk*TWIPԧt;VjHaI&V=(xz^=rp&cxj7M{:4ꜝ0x'NBS!K!Ug{3@< 3+m})+Rhfz~|cE쯀r𲙓4Vfd_SZ).RŔDljc6>ŤKkc+JmF'"aZh`KZ*f!8+&%\Mɩz4 &>{%YXi? Soܸ~î r@A+?E9aAA~C} &WˑM&=gcOQ&5 ~tنEm{-pu>~Ih-^ыm!qRmOjhHAA4Vw2\x  `2QI|3huJ|u!U/ION֡i!?o}9 [d"],E}>?ŝRp8T^yz&CcPIӗQ:⑿Dz%- x+֓`NqrmW:@c)Q7뺼ڹ š4\h>l8,ӡ!~/V|e/@["t*0<4MK~9Xʓ1;O\YqZv|hN- yTo^\^lTFg~A;X7HR79y?Qړk-}ktH`a?3Ž70|Ih)rn˜ J g-[4{uQ@.M<JpkMa]س|{TRQQ7[5*lsxanaՔ$ ͦa *LX ?h;gwti 5_1yrqTdMxVzM9OUMꨚ!Ǘ˱iggr݆8L87*sR1($G|x;jF7%f`dl|ۉyfn831 [bc8QpH*$l/FE)JF䲓ݻ<&ޖ ywUlv]X.:J?5[|бhӻJ38kF$2uBw e fO #Y? M?h(y/]b IP3t|)o9 lzt4$ڧ0Ii\")=TwuE7f{AO89FS/z?=/mQFlg9ԧ*{o+w_q6ESϏD G$сY 4@jrN G^슳ڒ;jҫ/rVGqe!`w1ޠ87V$:e,Q~w,ϖ[2(h϶嬌usm[*ɨR 5:Edh+K@脼| c# vM{ӿ:|QY_NN(I1lP}Btوh|NwbVՁNs+r I~S#RqC; CDl $J)+#9M_sS$#ksYzt= 1C~Ķf!tImtE.z fw} 2uk],iav{Ih|ӿ9\:X-yy09Ǎg dGa!ZͨS:kc!w@9N`G$1KzvQPLk*$CTbi]j8]zپ^e?-߭ âֿD\ť4c^(g>ݼ,OsO%7?0;> Oa(Ebvp[ ,9l+iē6v6(e1@1CɠR!;!z^IjQ'},I0YU4WAv"TU* f\jywVvW@R8M/׽7*Yq# hPlB|qs/'lnMBoSi ecѠi/_kb{yEpUY5z1PzٷB+^}ys6#B=-߬P] Ι?/oD1pm,33MX2/QŎ[YLaMouƽ0| ^}4]%v 'H$- ,7s:QύYؔNL cdƬr#Yϫi//?- m<`@d~`dw`vcs$ZQMy;_w8"`~_Qa"Sq8xTi;0oL*K|EJ2j ^0 c͖^⁕\zg)MYt@AݵM˳ɇ\>@pHLq!9{MT'WTPk _*"Bxeq׭yFJxrM/s0׃pdXTk;w^Āk2炪VA2$ك-# e@\o>/W>m7('eaР.3n8݅?}gJc Oyans azL qdeCĝQK }(6dI$v6XY},_󦘙o*_WOzı#9iSz!zѯz=bc nc;Kfnn( 3gb4Q*YMT$gX#Wrj>:G\]fj |ua~4=6;,!ϐ0S< tj3::.T_ zŠ} #nJƀc#2ͫ-|6BVL5hE[A7Q%;MD1\z:nYnh-Yކhx*1~~AfZd6"XXMp`}plqt<У#bND(Y Bؽ4ޑ$K (=?]Z^`ϫxϷ"HsR٪B!~E&} VXf> x!{S(tWSg!`T!uO=QoP]F>FmzassjpBaǂI/@0~}Fdësd{&~~#ܤǢ*)r'kքxH6ގO}@k& ҂u_ttpLN?,Je7,S`lt5Y2vKyi2 *=1-/A $To ߳:ص&}(C%Ł5Yˆ1%tz=M]@DΚurނdsqf+%IsVЩ=Åk|N2ݝGŀ ;|r%sB)3:(|N}Zk̙q}UywC7ЊRfC1޻>Mf+t9 :$ћL;P1GV#R*KvNOyBq+Js`Ԑ_u酩Zt.CIAi䮘4t$X,H'({ "ϒ3I!Wr7 xڗ],?%A-`" F[f֞dqɭUHPzً;nouSIy` ݻ`z;U7M\gM;Ybxג\~;_鏈}tMag,7vb$ Y86yjSZ-8`xc)}\k_xd@q.5h'$[ն|R yXM izǥ̂aJrkJw,J|KA3AG4θ8?`ޏ}Tr_T|=ÍtAS<p{.L\_VyG2BD+RujdrJ+s&ͼh }9@MT!0M`QMdF`-(\ZdzyBcLSZ dG4#+F&}C{ ABkHj `77BiA IׇWJ <0X5iedln^H 8V8tQflϰ2eg+xxVkSƧ*%OX􀻘 Î{QPu6i.k2UY˹"2-[i\q0kыP&זFoEv[D[j95}T r1>qPB&`*o@י%dz`?O\Msz8*ճ}M$˓ao.Lz:۹LP:*N"lee." ('о`r\C  !Leb{`2O-$LE >ݥ?!'鷖,d@&%ЬxqE*$E;Ӟv׾Sh>yU ^,<ͦuU-?dxsĞ6~m߯2[ rBPa+"U^Z S Y3Ǜ68bpxCю b#*?4gE#Xb 练n4q= -6h?/xj1TYGeR:7bbĈּU+-`b\h?Q]C6Мצ3 #Rw|~ϡ+#Uoً( $+,\iJE;@,'+[jڣԠ Q7;7yB!F5夿1C}qz8QOYW(+B8 Pb:)?1>Ԏ.\0̖/;#=Wz6`]F'<`7|rEjm~r^MC/k:StM%o]qe& Or1^C:7uf sT.umX\8,Gn9_='r@B?:O=a`S L>LҋfTֱ/ѧ"H'q ё_u3r?]DZt ZXiCkc2m۴]p. LlQ]$52<<š~g0+c6|^y'䭇0dNheY.PH†!wn z?a1n1Ie@f'4<:EF`=*Ľ+R*kItK貞>"[؇{=PQXj]䁵 vrtU+xtlN%)fw]4·1/`pNޔrkwa+m'ӨoRc<2Zx"@ [t R uQқl 4ˤ߿W6 6ׇژ--u<$ߘ.)B'^fdA<PU17'+2Hһ^"TBh"Q2HhOqe"OK&ҕ΄W[05T;钳RUSiM)P1?'׉=!W]jQJuR4!\&Rhryq0+[ W2$$I16gd$ 5N~`-vQ irW ُ*R:4.iT :$]nDxxX#)!?RH=80($‘]AQ%j$K_8j--wv'wZ.&vb#ͳQ9/atKerZ)|p9kУ u0>kw/Ex!@dS,L8l Vr e,@Q{]t Lytz2J%G-*wSHy#z(}qgGz9mzҩ8jtyټ%C^_Go 0o[ʕ2WfA ]u7|sE P 0Rr(tn-K:P  |8vy4-s)I! ,CuLYzG)56+sJv0 iHP u}ZO?_f}ƽLj=W>D4x^YZ;gp*/|&yMtr\p( ![K?%#%?-zwmv,4n]^y7DߊI4)=eW<4&*6zV'3KՋiHt#x?qEF|8駐3W=?|z׻>Qmqq ?Ӑb-0c(@+27pڥT*85)q§݂O@d+5/}.z46(b0|XI|(hE 50n"Tw 6%ØZtF+nn8*gD{ qX44x£yݧ^9J!amp^|R?tԣQApj*0ak4UkX7#aUwUz݈eָiR a1r/L/P4|<@4Ԩծ{U8O|ooFS<+".rY'PKkKڧZHsGxQWQ+<U $n0"A#< 4gA?ⅉA_9smSK(ΩhP6wWi d iRS>')0#Y`ʻa<$ж픘-7Hx芌痼ȵ/x9A<-.~/txU R=N 2p4C $SaL}?9 s0?C Y ]yl,P씂RЏ7г*"< O-s5i!ߑ`T|~%z&*2IlIr$)\b/eQU33 4pR^J[ۖ#6+[n!DZn"{L.nxx7Sw:F:K 09DmPtoV|3V]asfv*/yg3sbFH NtqF;\xE,Ljظ9^ÇD/uXN-ZmƮ'٤aL7Tc'1׳K!5\PԲzճKr?Oq};{h0~bM{:iwW[HㆱCpC4pJW#ֹΨE4ȓ/&Q{c60xq@ n~wC7O*kjM !X.D$-JXL=kGd =6I9o [Ifl@tH|zt*VȄH2i[ .Tߏ~D^p1ǛH+TF#'NWlկj;o *{2Mt,(uMpeŸ$RI^oFwcBBi]co1Ub{V Cg$>m׬k`eLUYޫ# p4-1zT'YڈJ aahuⅷ?V*K3c[c>ǼIH.mpL?i_xSa`"##3Y]"qpBGcXle@78Ln{3@A0 lc|qRClv /XN00e%b2 ioB\#Oo_8@+<[|Cҩ@APue}H79Fv"H~rY䦂wޮYڛrA/Qp.e$+%|Gv1[+/cUtUQVpG1Գ֔k1;R./yAO$sbOu袍7ZefH@Gjp!#`4PG\zFd2_aUd%AvFrnad5 x/] N,G0J >A-^uM~DytoBL145.HGq/5%;窢"_V,%/( 9PUf9&%#~k4O!Hj$ 22I@fJ$>^ԥbh죄TqLd 4gxHU'iX;JXA0Z5}/ 8-k[3OX&޲ۖHHS) #V7^cţ",bltzÃDB$<>i)';w[aMKT'!fxr$5ЪW3I$9vI%UR >\ʝDu= Tfϥ41vq'eU3nŀ胏4m'1 i4GŊdf< "p&h atU헊#w&1GrCQN그lp6n %BQN=IP<0QŒU=ʎ"(X[Shʛ(xb, ѷ]XH{:^;eɁզo994UҦQP/M6X)=B`]i}7J nFsA=ɉi5$bE LJ Ӗ;~ Sy𢋻 6]jb cSoGpE M7BeY/G0ӪmN& BSv(УPSAK>y1]ӷ^k!!ȯ)%䦺b1+G1[}p$ ozGO)(&p]l8qj?{wA͓@үG6;T 05Sq擶5U.BgOƇYhPE."+H4ŷ؊gK&cie6"&NM Ma*渑](DRAu}WrT#(Ŏ; S乪i)DBvȐ!O&aw&'.gy1%j-{_)ӿː]1zbHW-lW4a(raK#[AJHdKoEli 4*T"*5R;g NlF`Ua8U.mػzP9zHf?i 5av_7_eBDp7:&0*I-6E{;nfS:GryoΐzW3jU3[0@nyɾ+*12*Q+蒸tGw~Qs:%9-EOf.H dGF(p+@Zh,(]Џ~!YjY םxpԵ^~<.NqwSٵgv7 r)�=Л:~E rV1(IkJp[ƐK5jL`(_wee -dӌYK> +BZe`2MМW頕2M="#1zB&O]r9WĂYhz-a؎@Ѭ! S1?\H^=;jH\+$U%0Qb /lR=<"͠f~u;ZUzK1ISIQOutEoKuYAϟy.Sam+ PK }db۽2S24Dqf ͓Ӑr>G> <.7Z 7VųΥˮrX \j4P0J\U^ŭELvԺB,>pfXa41EeXpc b7iQ?&|ݕ-8ֻO6|^hgHoC1C`Mk+` +=I[f5ڢL:8],:Q!CwrMN:176,?*Ua=kJmڤqw@Ar`nL_f.S+[%q.ƷXg$#ӭ^9$?ik%5rRXLl}ݜR}(? v`L:Ϛ~9@mrkj>0i#-> CWCySҦ2O=\Q ;;^$ abۻH.S<ɘB`ɳKp Հj(eN C_XCZidAD@q8'*כ ;>\9f[g}w}:6W~e\7W@| ]a+X*[=$z&5QG l-G ̸Y-23ā"7(nk<iL&Ks*te3(}-3~ߌ78]j2g {[ZAǟa=# KB SW F<O?-%Քide8ؗhxwt :!vX?fDI%.GVd~a6:=)gZPO]rM[mY I9,zsO#Hݔ=}nݺZ'8V޺/!qy.a†c] dm ɦƦ04p8ZP'+vY'( S~L@V@ȩ| Ҩ9'c۶DgƔϠd# b=ޠZ=ȥ1 #OX4MRh }Ø69Ň$;3!L]5^޷gnY,O.j$uBG~?KbWJ!nIҳioTH5,o|U7Rv!_OIwHt\=HLͽ ́ph$%kElDlTRf_Ń٧~rR:uM8?^I`5oSmU_Yqs lrz0~I#cBo@,Q -BC| ڤ>ů#]kDEkM1ZP~ͫQIo^YkGcu F։v) $_jǥLfAx! \ ߌ&43"IIMU UUͽv>ž 'u,uزv+Q qvλozn-=NhE #82kdqg$>c~<"kjmpUJUY¸⛟~Ō;f>l%?E@sC"%G(>>*-xΖ fzJcL35^Jw)p5 3`S„trY7Ih^١`-΂;G=Lб +E| qԇ~h4*WW1W%xcNB7 ʼnKپl®2o5z1%"n'zv曵JB!~L=>T- C3/7HMD'VޅV'ye1`3!HƀJt!Ccũ=RC#1hZY}Z-Zh& r~P` d9\t4?t7'EXïo|kPJ?#2mt7c78OggZ #* ]PU~Bfї`m.f\fX x'@JIC @]ߣ}K!kڨyW.)ʁ0J/|{F~֢#Ui)1/,Os 6+9AK|J`̢eH;46ME |{{煣Q2}5K(@|Ze½G4v_I@Yl;gߐ~`vIin+f4~2T/s!󓜄ΐj-_wh"|p(uX9W<IL+*p4bkŭY=z#i1\9 T%@x&V긳8b`.RKJi Jh bk} :dͩ\=AN:lf]xSTTKI] Iv(l0Yw&Me݉F:G`0S_R"3娭7ȸc?c{=ei _ N7/}AW3pp(L1؜Gˠ-[\A/RZ*Dk2&)Q:rb,ӨZo LFU&*`E_:||=+%D"K>)<(FTz`L$|RGo?^5#q|r8NyQ-al~h51MvpE9lY8 1;b yeW{СyB6+~ZG3ay~YY,'RZPf3˘<_xqTݹߗo8پc ΒT%];pJQN>7侎 re|Kv"6lŊq/STYVܪԐhBr=H!YVZ8g?d'p٪@O(BU-~[?_n)rιI\9Ǝ'* ́6OCу JPx#hb_ eP*. ;ӰYqvmQ912nӘh{)YoV3;j 3jax՟,$l56fF/jݍT׏׊ 48^JU^Iyl:xQp~юmզGirmEWk%*&l=8Dc<%ucki-Mt:[IQX[ 'YFҾb$2#]PbO,K/SA2|*Mߗ"u3,`q(ق;YWm䲲> Gb7fzQěH1/;(JN+0Ƙb#XE_Q+Ub[Y+U&!|}~zuGl1e@:JX [+|WNs/e~o=נ+H[e%{x @Puk|r-ף_h%j*p+$Ҹ_9xd RvGbKE4KV%n8jŒ#,g L7Q-3f~(\/+NLWyr,TMCb0p07E\qo.V8f-c@]KF+K)F+$M~4+4ڼ^$DjZ";09dŽ j_ 1м厼CaA/{z wbƔwYмS)>R(]̰ۧ:Aф#?d?fvkXiܺH\z_c}-fm&*LU jNz䲠iP{mY/;@"uxw732~89aU(1."0M#HM:KV}krLEӟxn^ul TtߤԚ!hG'Ss4U7~]y{6̮0H4k#0sT 8>v/;$mQz{v˃< WUDR䴟0>3.pJB\?DȾQD}O aCh6Y? lmCOLfZ྘P. S6I4+1Dߠl22=eؓ/I>AܚV(y &fnl"t ~GB4Όr,%t):6OoaT,I٨" 'EY22o!&s)L nX)'n)O*g11;VlB>Fg[Y9<WLi/ A6i{/mi2"C(;!PF\R}@9HGW W[ˈ{Wz{Ҹ#a޾Hy6/#.4ߑz B#p\(ɞ/Ƹ2oF;vN`CߒÔ:\ѧ\R{Q#$GZ~x0`A MmUR[C}}!x3v ۗ@{ ;y*A6fz.I>YF"KIM>Eb[^DT)`L>2RW4$eLs&mk YL8ιcs:c]h)V%Vx2 !$n2Nyv ySx;j-| i#^!LKPI"֖K)7 PE>M}KwIUsAVꙅW,A 1R 褞"ޢ]~M(ʼn)rpߗIdxk,-&+za ϓ#yq)ysNmd0@Gql*2?rWOfMF}o}Wo=iwmRu~5CwoMA4HVEI($s|!{ȷVR,TBhXM.GEyf3Xu*_V0j=f. 6 j*߸%/Փ2$M1scMέ/Ip5~%/n ZX)y0FO< ˟lz5={.p qA&Dx+'"-8ի@Rp=K"ZtH q ,}&hQ \)  YSu߉}ڜWUH2X n]QSY:yw-t峐; ʒ71S _3ǵ:Ȯ$Jq0U^jerfNIym^hAnn\J̢}"AeS |2B>07LB;gP29EBDE54TJS `WX{u#$J{'p X+yN8K2f^CXJ'"u,!֣NJBG~`~2HrF/>$#ϦA`TJ iP~$~$ eio7zVMq0jOd= ,>kݶ|e̖:@ll< X!ݜ4Y5Il'CcdWh>?=ȟ|OU.YCA1Xm ,"3ǦъGV! ̨gJ ܛtzÊYjDq*Ӣ:{:M^?%0pJ7B aeĸ *>R,6etNDj6>=*F=E)RpA;WcPqchKDp~fz”ȩF4opl*;lM0#Wa=aOqOB\zUԪEFpvn8|f#Wp4\4Y^W&SB1[ď8Xl7-]hXj ŸGAũ5]!Kejl8V+f [-OCez/H&J 7 R}B})%畩|+Q fr1hMQ7Z^sH.K/{~V7ZS eDvD–>m޶(\5ō\֤zk v24#W_B8]^/stWq..4a " trcE|\B~r/)IQLY#{C b1 f hΞ+_ 6]5Y8!nD-|0a)af_E:k>S?ɿS_aM)O2WU:iwB1ފSbş-[L[/h~Aȫ Da;f(==|2(3I7^73?X ;xHi/ Z*)E¤oJ2P?Fa$-hvdZyQ2 dM${RhYGm { :*_|pU(SW `!-B*Џnb4N˧4hO| ,?6DT%O˂'Źțd+~Ѷ$3o,f?>r5] ﲲe;"F%%  UQ:2{5{ikly==E{?51y|$oumFDu@2#{o>$t"G gOcUHHڵ-BJ.b;K=%mk`MwA;߁َQX4;k[Ɨ"UЮvD{m s怀c?W~wh^wG?@tmqW{TM#$~E ɆHl|= xܳGB"e9q16lzՀנCb2)ȧZɲ.$X#Gwxޔ"Qb`{EYs˚*/YT\O,=bQ dʻMsO6mLis$\\;jhDE1(|ԚRucNslk6C :}@~bF;N>?z>=]݅+(IjM H@Xk!Fu7jjxb K?wHlxM$%AF|ƩO/.(=7^0\5 nV%ۈYђa׬͟[qeʪvjLaT̲{8ݣ:ŔM#JIm@`lTxR*$oJ>#ȪlUlV%͡H1|sMm{3,$ F)3abhSHlHoMYexy)`\8* |e_3нE[m VWn%!s6Q{2s'\CcIڅ4͙ YzagGY-ky:Hb|Y$4zNF!F0̍JjAEDPAjջ[#xk (O;RR&rL%~|K8ߕAгwuu7~6{u= G:l1v+C;[k޹6#ɒMOBI\cL)8sb8&¬4ݵ, r]flrМ9j뫡g[ƴ?`א:.1XkA!t,IJ~p+U<5ޅ6Wzm=^9j)ix+~&9cCAu1!i"-(ɑD%8 N^B >V2u&L6HԾ[@zI;Qd/ES-q %@Z@ DV%J ֎a0b V0޵oĕ$e٪h(II}{PfQϞ!5[gPu'<[b-),;dXB vs3L+m~?r0=XO4Ȳ}7{Fs*}6 lǍC챠֖өNh:w0μݤħ{X}8=}=g,JnaCQunMٳq ˳x٦L{Q^)3VLvJV)rDH#+upد5mbl$a]fw,g/dz&M0?5PrY_S v*>̥"N l~#ǍvվĹ QeQ9B |ݢy;76GIͽe/No?lHj@}bޚ;D vbDv&yJ)m4?-'^CZQ<)v^$ gIe:PRM fzˎ%gLtPN)tSPeIyEB\nԵ㫛uTg_^e_( =]hF X RmOdz(`p-H/73wQk_ms d 7r@dPNWͩ?G kQpOR%!`KDlA_W9mܶ׭+VڙCbtAl BwZFU fCGvu|.SFS]D_!/g!2 if >٪˹}jdJI H#1^FP y33n"7Xm_JC# hڃuek5 3/?5_ߖSE۱v.4 \x *O@B%-yTW# /'녝P95B^v}TXd9ZcirWOsS`l$z[SF܁rԫw蚇IR/Y<;Xij#-_Q8'>3*$d 9íXlfcuR ^UCT8Y%r;?mb$ ؕ%R#0j>a aպ~fy+k%C>يq/<\$78^ pfPd eQecShVr",5Pj)|ˆ/U`Q.4T0CWqA~D ;nTOy|y `'I9U67F>#0q>F`ޜJk!+/ӟM1 7K} aQ$ 7?AvT=yb8q"hw_Hk߷Il@P-d<ӟ,o{~b.y$t-cDJN7a{3~#. VD_Y}6 9v sWBu7]E}vVe} s g4`K!=-I},-',+yKgB;yOY@=7JN_,OԼYN@J4.tsrr'_ݻ@WKC.HwQؙ?pArSSj$ޭA\xn4%r"f/xOh VC'7Ĩ["j=a7lp_$(2KϜ) ^CF}3롚aO޶(1:|~}:ۊ4I\!yuΑ %/8L$m4U\o3 F_LYcnq7=Δ}@t /Q |kA:}I2^@ݿRW!vO([Sqa/d(g|ajW, ]圊M;Gԁm(N+w-Z I"[iOs&tqح۔ ӑSATL.͏U݂39qڎ!Ү`pR*}/gwǦ_d%NjQߴjvI3Sу^2|$g"fLYRQͿy) AOlvOGǺhC$TZca 'znmn*nӅjQ uܶgDn^yT0|`%VNS#dI`*=:nɃs/Iڳ~-;d3$^&oV'u}aHb[qY.loUlKn'^s)|Lj8&Bv%m>*RnufmζnRdcƨ⣍x"lЅ!!oWI nע'Fb+犸5#T\ݲY(m.~F*%#8~yu[K{a40ԖPf 1S1q:LC"AYćFέ=bPbVKH/Bd("w.H(J'!ǹCaMW=t!BW= [ZRCeWUQZ>~;Z-3gc?SHQڸ꯽B"7餴H\ICV{`!B5_k,*$^bS=2q癩٩(l/-Jՠ},BvW"!p."F'ri[;X29|Fɹwvp"CHfu!/ԌJg/YLmbWPAr"$}Lzφ_ub6MVAލt- Hڴ;28!p|T;h7<躗v[+* JJ/_fitJkLL\J <v4sޞpk&dYԙzV':JQ룄c&x?oVq@IoQs54a :6!ƵPS h7QbGK,ezUHAt7k{/Nsa7wFҫc=&x,Z<G0kO{FZhBl,Wo>W¢AjǗ-8<qZ3{T=%Hn;-pr +;G;;|ږ03KͦF;jZV j#1QZVẸnPƖ5 'nK"Ֆ0c5)o!ETjU\+cpc:9/ό_~$M^At|{W+5lXu_@UM_Ch6k?'q}& <09VgɩG/݆rЬ7m\tY9\ȳy=S3J,t[ߘdϊn%O{}bKB:ܲLfpQ- |]_+}=Y4S x:c%+e;:@S]o[*- ǡbbQS gQyzM43{BNd: 0YI^m2#>V]/o oa^q+[U>Ul ,aB݇nb=#z?HD W+c9ҥ۳)U~ HVrezL@n csZ8PtHuʸP_N5iSX\nD WtX"I={-M5U?V k zyDWl}/sO娱MYʑ@)&Xj_f7@cX>>ߠBP|$=@TLOP8Gi+uV2M_)aQ1 r,+wLSy88J|uÞLތ[YgFS+n# oEa`XDzdV׸X4j=[Tn i R$msqՔJR$y4لD]5]H@ ltp'` Cf puhnJy-WW|/ǘj0 $Tf < ' 'B]&Q<3sp 5׭yc/Un@S3ZFUPWݬ:OP v/RDW[~D/m Y +^%&n")& gtq#Jwnϛ0A0t_Rh>:,A;2P6F!2壪M:K>}NPEE,#TQ`yR$KTγQ]q$Q 4 *-=(.J8%?Ibi):+qWǷQY)VI)^;E\. #cSƝaJکT9k a ᷥ! MT& ;É2cХ5s$ncPV2 4 #| ! =* ߄OĞ ToZUBJfCW>@:d('u՘Ysh%T4mesKV’n4*DE9 Js>{}S>N]5)ʞt z鄼% $go %>JN, |~\ 'i~KHf/'ǁE#kиe'^g5h,V:WCu/ǯ8c=Ow$^II.bnd2 ̟UYG b$Gl2=e]٢H\3Q ?hq<.zU$vnө2?I^#Kad{OQ :%x4}ɺy:rhâO`bit2ՍS ֊D<$=L}/G4M /Ï)do̪atF^2 ה_)?=U!Ӕ$: TZnyЍ{!FBĊ{TVh/-_5aS_ZgdFBP]^~/<ō3n&¹rq9.98@p+0y {{LRz r) ]!> sl?wߜ\|m/YO'M_jHA/((rUiK`CۆuV9 wߘ"x*ia^ય5j2 {BLA/9oّ9=Br9tb0h*wH!m*<RHOcߘXWBYF0 z_\D9:1 PTeY#eN30O|w ek[b2prǺ?=,žZi*;! fcm4s7<#}{n@3z6b5h6~!Sߴ0X + * wPŸ ^0/ V,ho]ޱ'|ˤ7uHўgHwB `, ֕O҃E4 KfCcHy΃je0: J:ReqwrS>y2xޥC}х?.?g]d:K;Í͚eg5 fjZ/RK31rRp<=Hy;񆜈dIG+vȺ6MXS Se9i,A+"Wei򲰷@B6:ǥ]/`&u_qrZޗsC⠿U4{T#}Ϻ3-Bͻ8z(U}u;++iktBέv;2v$L{.TN ) u~->zcz<~fTֆ;˶$"vlUի܅2{"%p8:"7u[#K`P~{3@ZJra ^Ҭ=h9d\T5?0bGm m5ioz=IljGOYnsV6tx 9H1j;63 vkhjwi|ouV.ߥߑFwgƸaD =Evdױyyy쟥W< |;'Vx3=CutIZrJc|8K$oIus/,PjM?3] )2.@9?C2ݍLOJ괦I ^vu=I{JufbVK+sE~Vj63o_u#+QTWE̷-"IjX _ /4u0#w-* {EbޖzeyO# jH7$^w:lFM 5U.ZY p2eύ}d! Wث÷^1_ Üo o}ޥ ծlUі"*Ki[{.)7g2[CN兒qKb d*t{,K/` 5p ;,>iaY=RB9J)05Z`hTn`R)=৯JYo.dC* ߺ3o!to˾3'-hƛ /Y8`#PѸ}OAV^r㝴8 & Z-zvWla<(@εZ۹pBӑTv2^H:Z h:zjO<]!bWs PvnM%kd 1dcqc<4* +4Y]]cؤGs)mMn;6l&wUHPx0Vs#N$Ř,* =#4@ktjRv*ub,'~ѷ4##K', 8G(#!.C:^_3ˤ^tl)%҆KtGd]ЂU{eY;Rԣ_IXbk_O&b{_Y"TrEtB2XRj *C}t-A߂O.;Y <2zu [뀱h?hKa/P8T:笲zMe S%nX`dX0CnqVK'0w!Wwim2& KmVׇJ֚jɿA$^b Iӧp#_&X^ 4l :lb9XXR5 g<+!׶|$8|,cdH{_U:P[8a(ڐ:0P֥ &T4r8u 3M|"&pϜ¢U͊-K? nDfWx> VPY;XXH˂(X1SWFo^s:5fO+#vb@bڗLvܶ}5|N]{/;][hv3Bw!&-<mgף j&g7w ̊:­l7'#kU3>m]Q {ȴpSɪz ٗJź\6❇;`K M/_0لIS@V-*T۲#tdzY=TOAd%>>l(Ѣ@~qUcU9=kV$挶_1S65)Ws8L#k8U/1cL}Ɏjg)?vP-Yw :w?Qc]? T 44@ GvWKiIN W3coTT`MGګ;f_ʬdrAj!Fr:~8_Ҵ@,Ǣ$A~sӗҎbLtbo-.yW5=+Pך$~i^`SMplR":ơIfXV(iN{dC5G#uܧ_cs|F[Gwb<[wX;śڝ$8Mr9bN賠0fݸ4wBv^eV[܈ˡkvR& ~D59pwƓqH HZCEADžU fd0~ 67g!$9ٹK@B<XRхWt:k3Φt6=}}5zO/?ո&2;N _\zWjA||u8o^ڈpFksR@12`~(ȳ*<4DpF;f=9cA̚y LFE#VV+%&=x>], ̔5whɊ:=ͻ) uf?r"zݚͽ'!IWڋ(& K|Jq#SZ_l0^]GI-U/\fQ<@[**,d;6 Q҉Ao9CQ @M N7w"0įlu Q wy7^aK݀؄9}`6bT߱Lo@`iO>IzXlMys8]C#'*r,SՋ9Q!Ktq3~048)ާqCr=[q8 \d,=P0bcpWԨU'$)0h'`{1*ϴDȨv_|) Azq}DmpKHmٴT&,7'N} B8N3"yx|UeG4Fݩ96IcQoL,i -T9} ^O_s l^<45,40G.b~ sxV~{yZa-4 %!}/ $ע%0bWD@rU'2\aYT4ȀCv;N㴫杦I_[yգz*J&E2-ȠnзEoEz"= ~.#_`I {cGR[Z>|y(t^4  6U6!擑x ŰMj&x}q*ŐJ,POv#+gP]h|NW79&\r -inp*"ћaYtԸO;:[DstiKȪywL* ?%fso@]}Mo$ʒ(wZ~^3B.F -02"v uIw0Xy 4" ֥&V׽Qn X'@{*`'jK3yvl$`0 ONb2# ~^Fw1pm *ގe)<Wa۟cJ2`fLi5d湪.[&}.g~k` p=?%q41ژm.O_Y7W8ԪO|OKYkLhTI|:&/$jǁm =Ѿ13.#%A+YЏ }XR "6 uOJ `:AY.URc2:L@G^Ho| HPh /Ӛh,"XؚYKe`ܦvsE guj݊+ WV[ͬnp> wD!ZN&kZM6S^*bVqm سTG=q~`J"9WRZrHjI^4&a?J҈LgS2.{zNj7z\{K3ߺ1eAΪ|+̺U 4~{ &dyI`gb؃[x$yf1YֺBfvOgd5r8ىop~M7:7 BtZPBܘW KWD C OsC$aV7m `Wr\ T4f?%Eg{٪ ;;rb3/!-[=£ϑzdlGm :Z@^.hE,vO /hMNn\ۥN:X|r@̝ٙ}`P.ޓ!+ 4U-MP͖@]da&(pMUC<#G\=gen3oۖ`6c>t]+X>Vqq> GZi蹗狼\J'+W38ɴQi3 kNP8$`p̮V1kWdޠ K R$\8!!FF3( kµd۱ ƞ,vQ0i´xO#}0b?XR!U+O|6Pg»?лqXlۨ_@Qu" [9[w~6 Ȝp]OWER2 !ŝˀC)ٕrl/2޷3wJ3vDfw霏o| ^U"dq_74 ?9b'% k}5#3$%X^eZ~JE:wb#Jd]țٓ]aQP,C'vSx8B/ rgG=.-#ƒ?ȫ?Ɔą#EǠ{GMLҕ(F;tw-`7:oA6"&bQ?-v Y& ,q}f` PƧ/P1[r0)Q{kHs!1 5-}2jz 5ރf܏湤 }]e#$В<q'StZ\-} !\)18SBn(Z9 `Q"U&>NRtg%`S䋄t< 0['\ UQ @5e'AFj Ze}.`G?Z^PeL!`kQ @_zIy/խ/a$qy mov> ݐ0=e pľ;j끾|ʼN+hl0LLN8jR -?)B#s=$Q>HMgNjT)BO1NIXi\7uBT:΋Bt-~/ jIV=Zc[$ht 7wshc=Fj'8vߎThR5! ™zD$KAvI$yh M[I>&ƊLCu!MujS$=JEMAIP~ vdÀ*h81J1woH;1oKJXoLKxM+ǸUEj{eҶ攥7HXԼFOzpòa{j6,]/(,讙?En|F# `@/Ro{OaƂ}u}-)|jEdο==K|JjLgxֺvrU2 Nq /O4?(oVaEܗiৄfw]u[xvy G1JА$B>)}lsbԵUYɫΩI%`qDR7{%o9oK:p bMմ-s$p |=k#)uj%nHoB`vLL8Ωg, w+,HY?fЍ BXܡJ|.-ޑ@>NYȱ5$m ҖyT؏>6^`Λ =&\OP sUk&~ o'о6u^+ڹJRtV}G8C>x~l;d Ե?5&S^ /fKft:~N'u<`ktN:Z {Rf\=q?G$U¿~!NFh90G)nڢ3֤Ӧ567u _AM|U ;ӗ>lѨѾJ /D |N&۽KVR>F=VM' 7L4ȧ(7ڬ1NʿShe X /3*5v/g6yM e!cD酭/tE7СXBI[MA[4utz|LIIGu(D^qW3OfU qN|xݵL,^K1~WxKiozeX0aq#5iX4꾣Z6S{%@6X%f<(_a)׽oMe{ 0^RopNE3Wg?nmoNաFױlͱTy̢Kږ1aq`J.E8m*C*g4@o;pڜ QqoPԸ/EAo{j@k1>Y:M<&oX@zF{U"sף+ʷ{Xa9ٽ. TV4v'DĨzt jZRv@}hu1b,d#MsVdILk4>Q7Mcrn2^l"d}+3i#6i1ҲƁjD8i d,n.[u%pxK1 ZXXU+Yr)tb``M]IߧA#P{( ,Ng&~g wfTg9ΰ˼) ) wz ms^}ޔͫ9[4SLT\Iqa#>TeLgCƤ-)wc5ٻ5L["`쨍_^s\A<h=`dj5|y(v5]xk/E!Qî^9&''3)-RRVؑ"Y ܻgV崪!S -V%#MrX!w lqHH?*,RFq MF&9>p궠1ai449&?fh z(k]3Zʚ#kfEnӦYO(w8cg'?Wk2uOcS:q`̻@z=v`IQ㾼nj`^|^n\ⰛPi&=b8 EJ-z\y>3JU:َKFcm483i aPe>kAc];H4ȜQ ,nmJYzbˊ=VMZ.Q'ت NCװ@ҿ`;ȫtv]wС'_FJBF|p&C._ukqN.B'mKT3e)B(g]9F cxn%=uS 7@x|L7ۙ_\{$}R_}02Y Jdu'5z=3zd(spV8eqƖb_kyx'LX֗+ÕӀ'dC.Jv]CUUA(QTT{e {{.b *v/ނ@h;XQƞnxQ]P}8!T3FKB?Zt2k!Hc!}pmcײB\<-BVRM<&YKݴ*Igfd,+_X R&d (P%ХE/ Zj ={ c2聓R! }3h 6 0)~ݤiE߾+oi8fcӮ{XbSHJM?A`TGBO`q,*$?Ky-B7OuǞx(|05 S%hE?6ⶦpaqv^:BY"8rnQsv_p6RB`V#/ Z#'((/|7.U0[JwZfB?} 7$?dF4aQ(@W({96X;H!sxNT *)k 0xP)1lwMp͌ *?5@Tp ־7v5O廧 W 䯃qG=|G|x m=X?;1/{!;ֺmP ̊Qe_VdyW3qV&V@`8#)STU9eQSs`'qPq}Qk^U[Mϧ <:"8#_ƃttzs\x 7ҥbu-n9Eak>ek_A#Q^3T965d fU%ȏY:3ýʵxvm.r: m. k$'+ooO40Ji?`}Cx w>05oBy`_N(׊=U+KJq)rG=KJ8g-`/&0_D NbL'7._U3%^Ӑ7\rCVG>qv`4z-Ͷq L0QdZl :+v尀*ְ5ϛHeHk۳({yp$ªCA堐ez ֧̑NT_Nn? a0{nN֍7Oe-!#{$]s$QЯ)Ů߮~[=ldg+(cHea/dYIY@6i^"?b%qK-٦}oJp![&ZdY9XQcoz3k勥h6XקSvz5!k6NJOKany^H.=?5L-ʇ1mwZ_$Ff͔<քw>Acr8bUi]V()cidiLʍ GEP♯M OKiqF tϏȧ )Ca.c]bkXN~"W&$S؂~ "nB hзNOc%x6=wFxY4HE8"SIQ&5}ufI2LiPv/*iVBu&diܒd'<1Z!jZ)Fdx pB>QGhθ (FI DI"zʏgY|R  9\b-r S Xфo,}c8ޗP?&Wç҉.FLjٌ.AAOj|*j@2c >^Y!WՇ kY\UYe{rNb XTz7kTC)+fVJ,Ҷ9azVgm(e9Չ ܘ2/9uI"K?(`e9΅K<=y|u 6lkt(?!|1Ez)Re)b"veCLBTt)fG>O&=7Ó(Ie)xtdoEN S)dև&<=)t̶ S;r}cCS 4U|`P=C~KÅ,.u4">qO8y#:%9`T7THF$"4NDunQ4 Wue%~B#ziTWJSC3EAjYZٞ-'v N.aA{w7>]SQ8RMp)Mw #{"CO^sR`=l zbX.{a9mC]L rH,*! {%K.:i#fѭR~]ì?/sUeӸB Z` WC^NiJm&nU 5H7U<:6)p3j͎?|Qh ޔo ;]hrGh+*Y7Tڒ&D)z12W}̄;sMW#]zҬHzn!?-j,Hsz=/ɷMFys,5KMH4P;H8ҴH/$C'F(= Kp;Y]q˚mS<7) ZC8.>~`{i5 lx,=!%Ю 9j/<)wK-xYXBE?"G>InGxhBz ,B{o4K!EHiZ0^cJ0a;ٔ>~/[,6n6E$La +SN<I9i)y1u"#T~ObQZq7ouO #6yUL=H|7Jk( GL:;Gks0˖Hxa{#!}BVBEVlF@gysHۯ)ZqI"l#^cޞUA0c!Nk=lD -}7t܃{;¦Z~}*(]qŧ{r'diib.)=k:,"[ZuǹFim#"+b*Y~z9cxFmK5QOm.7"a&pgSa &6 A&nq< <m4:RYW tb`A\X:9.Q\" hZhswNcq٢Y<Z['r'Po꽷^wɪaRJ* v pl O& BK&\7MOx 6N+v*1N& ZyZ9j' RX2ySh`CiaYZ,zE{sgK/F<2aJs~WK7F1XS謴NR?"ΔT {\j|)!!ÿeT\T C x(5?~€m`*&BG7&KGWXw=a5B3ji,lˑnI*32'& %m<,&g<%>. YOmUc/>%Jy#^tz ̩L^גBeIGӾ;)}uR#;%%}ũ}WSmSO2`],Ea1ɰ.X ^iô*_/ :O9!ape~~wUWڷ1lEMi%f ÄW|^#rM]o+0X%h5 ɬj(oNH R1z7D?+^~ =RwwqO# ¨B, Bz[K<3i]LzX-5CV0͗!dD61})K,:> t"3$.> n=BKHG{ $Jm¦fU@fddUw&0[#܍|~;vd$Bqog1f^p~AwvwìnSTDȠ~7,}}80c{Fǫr,C~9ZkBk=$%]yzk6.@Zh5 Ԋ Vc|m ~;yOnKklM? Zy7an%Xɂwo\$iBűmNא`}zmhNTEє|hj̼na"XZta3&9. D]dZcذ{iFHJMg`alѴeȢGoȔ fo* RBvp}^+1|\4=Nw&{t.PŲ j d|b:zd{xQCe[Ov"JKgX(" y&!4]:^#݌bcgGedziD1ӄa؝7Oilצ<GjT{B`kQld.~%x)kRX<(>;g0ː\XaU6(iǿ]2ZsHnϗ3AhLe3TsO"ፚs8%ɰ~nbT7jk*w?++xy-cJJEZܯd9XͰT7&p ]rU^>1 =' PH)?@]:L=ӾƧhmã+i|tq>##py^x?  ;m_i$ 5=,SY/,OoY}*#"tS1]%٭͚5kMT {ڄ |k KHRBc> ~?Ⱦ&Ї|QZjX}|==gEwGVo2Sn P]̰TA醯g(S8D=_+{a0%?E;Wt8luAGFwbkc4x& u |"FpTNA{-"5Ut=J my-(2.B3jbb|3pq"\Oo'9 QpvI}ϊVB) PIF&t\5(8+}@!HI LxM͝͡q+k{dt"~+ ~#-: qG%cuG>ϟ/j,b_|-{4W I&)MݑylnqHK'JD^ORմuڜu ~B"1$Ƴ%+$';{[ >| "ETRmjmxR?#F l;8?,C7a \+!?bU-7*Nٺ!O!;ZRk7)0| ea \^V=wez:ѮRA]&B+( , I_ &vb_)+@\'/z#(<ۻm= Ckkb>4)$oQz}AN^h.^`^7RQSSRSGozΜL ҹM8++nujAڲ3t8)YÓvh1Ye%\-> ZC_"{xm|?,E[Z7I tÍ'cQez-$)7 nN091v2$Ort=i7M.+sPMz|?Wl4tHI{%n1L( Z$USJ9Q>p< G/̢"ϣ #bKYRdj3aˮF 4#r)'(s{ >.+>m ]ksx9<+Z@;[d Eʸ\m(t[ber0k;AxrDTD}_э8* !dS=R ș֒(Z[/q},k5 󀍈P&r$"Kw_Px@+v ~2rI)-.].P&(Tp @_#T8@r'n Z?8\&<iI·{ ŵ",=@rki`6qS9 .2:ߵ]R l]O$ͽ~P.%奊7N< ܏PC0EC|)"dd5\m()zߺtU'-DrBƅG%Ĭg_ u7H(z_ X6>T8HٟX,[MxAԣ]48cU#$nSZDYk>'PM6ナs; Rˀ[j|)&z {/$taqFݔ~rt *pKUϬZu!%l3* R`,*L)1g0ly}t>TY]&_<9۴hLx8KvD鏞<̼y 71$X/w~eW~V:kk0`e6Z1ѕ@$ޏ>xyh @6l VVby>-8|+lR&3EP DSe%UM8.'HVgcC<x@QtPMhn0 s[eoؘ̲ Ҍ^65+"{>#b["_0}!< j@0ၿ.}m*<1Vn4yИSg=qa ָN`6tl_{Bq Bodhy4xV"EA ԡ91o.)Gdj;OOXypԆ=F c+flg ˣȋqyd8sU]I.A+6Z"W Y%yq1;oX[jx4M<{_ j(,n8 K5`DkTڽB^9IpCB3TC8ӗS &*HǍ'SW$ O]L7-mӰEsFWsUl{Z@ 9 ks24.;QzCyuO6ieԣo_Lu6w_=uD4_6 άYAVJ’ T`x9֩1 _tS(6en9 tx34ɞ1! 8<D,u 3M8>mi쥱) gVnT[W)X y(K~Pۜ+.sɂ%ED VߴUfkPGz=v9\=yV1^84 [TơF{^~e`CS9*@J_WWEA^9˨+ȋZjQ׃~Q׹9# `s NwP2d1:b%<ֿ:`JY=xi>M?TDLr]U^{BfX]>-ƥUiH%XYj={]Ck~]:Lu\Qn L1>7TYT+ 퀜|{pނQʐՁA8+ \WhqAjv6h<PFjn4Q\>wNT˵I'5>=CǸ_?G[︄[p#ܻ= njM>/ pRErAGdf[ƈeFbRb5+.XMg N P/?:[YP2 [̬i$ uNΠ-C8Z)q7^gvZ} +owd5*X0ܸ$Yl*dwE ; 'Sfb5wn/͂\Pu.7{ 0Tv5&>mgbjUڴ*"ST@[Fb~i1Ȧ/f.\2yJNCΚhC҆x1xBoFr >H=xk oV:̬L1@ky]CQܓ"ۖ #xyRRQQrZX6iqaVvWN!,Nwq_MhCL2dYA9Ajqc{?1.?6rO+i%r5 Br>~1ͬ9=9َp' 6 7YD;"m)YuȿϦlWH>UL';2AS7Y3:"u!=K`&GA%ZHEaNkc0y.~L$i/{R_(5"ўM҈'9rfTɟV/&>fpW2S(Uz L\ֹ8o3薳V`vT PLLo JGKj[4bU#N D(w~j'TA~꤇2>7D$ N&lENT16T)`#@!Qb ^bԨgY;ũ:Hc$H<g=`]ϻj.6;XHp;{Y7u1'L<)MYDwpdzCzlρވsvg,JP v(V"ٮ6IswW^c4& ~ZJz᷽ivw=$&/-Hs>eS,z<=lӡ=FpL"}"l_XHH{m!ڃ8ٟr%7)8NG]"1"u(s wLTyŅL=R3qSc̎;E`}_w4AD&`mY]r _f˛Zf>!rfi! 8Zퟞ $тˡ\i It&kI,RFE)jT3@ _>eBkÃFwL8Yɜ#WZ)x{;?\ڢarCC\A.K #!BZMkzT<'l[3ёm7݄mc 2ϔwN=*vJd5Qκ=m@5D<\ZٔD, e19 8Lg]zydL|D =yikyIUT`@fho]+ȁnWUE1W%TzEw^1<vb, 6f¹?k p86|P}Cթ{GI491CF*TŸ|҃IYȯ?(c#~E}*G;a}W8L~EO'Z|r  r[~;v'/^9Z/`]-ǂM`1jk@#7?1t!#4D=f= ~0o穉ݾ.*9hϚukw9 FLw\, Q.{ _ py. ++'6;,5fAו/D:|QMel  7,zުyC^yX`\_D,kvzF)x3qCIuQAAyHs 2W]jQ$CDIp'V9LFaDZ%` |G̺y #^[a琴 3VFe7K@CP*M#%(^X^slJTYܩ)]8U8 , bc8vM j qfv@fcDi;H(-MO~])e.~+&lV&Mŵ+@[<Ebã;?%ӷ#ǒg g$n|:WnP96zηWmkU(G̭<Ρӳ`0JMUL]{Oܻxs&u@鈖e-@WK(9\dR x5rE7CO .&8Zjm۳7[6/n$1=o cv`j{WYɾh jxCSeotZX\4gDι/H+Sѻ"ھcwdH}7C$zcsDoGυ8W⺆N{nmJ;Ho{T}Z%Rh8;vh,MaV4&pA/š=~g<=Epd& вg%lr1ϒc]>8FɆ""~'tt'CU7-6|܁k݂lhcEŇB%6v3PS󱦂=8J&Bgv@&^M 53Aăw_b'NvY|3bb &=t^@m]B60w\3 [2 6gsg(CR2 ;[+Wlvʒ Rm Gf؍ѹ0]+KT%:e^|ѧ,z>?3{BC'ԠiSZ(Kt'*>|E:8LvġsCkDk!U/^{v+қ"FM9貸nP켺; DWH zK^8mT8EF_.<駩b^ePRCG$oZ߹cnu}HcB#}t;g V䗾^޽G .lqy@e+s}>cfd8q U.KYEEΈ|\P. v µs!JyYtiFIp42/t1U7MK~yDo[:O L&'9taDDg1h1hǑPg=shgDt^舲 ON+/Onn Fj3/:FUue(e:#m7{NnؐwM5&8xĽfp^]55wAõߒj z{ 6 Wɋ2vi-(݋Bk) KSvxUZ'~QF4W>E?vҥ[r}4mC'> ߲r,(C'*54; _Q^[a9N~K:cl *e*Vk.ePҀ-qPo7J$븂ZexCO2mhߋx|_HJo5pE hMz`rhmFqr2hC?ߗqF@57HoR:_}yt%((!8M.ćg4ЪpkCϾOKǼ8U͊kFVb`uSӤ^,;Y J{l$i3rpʌj:;:oFvJMZ~%;.GR w*nC$ъӓK`ÍD}N,+a7;Gu"Urklo 2=u$*{!picaatL#`jGLT UڒX,@#4{ᮠc߇% #{qd6 q?]".CNj1xӻ`1P64KĹKgU-f53Y[dCPÝYgcR8ct*Ϧ )gvL`ȏ6R= ́Y-]Tь0*p&_AMU L;. NZ}T4#(S.K| Yto(٩ !q*L W(mK + ~D_QT߮ fPW_?#]hr ?sE789~{/N4ϡEw Tȋ%%KE ϫ07,BVv =c}Âp3!+4@TcɅoXt!S|\hWQ]uE˓_ljnJ(o?(@La2"oXN⯫ ~W-픛[ё{gɡZ~c |BNv/cʆHefur\:&Q$SM&{h `Ux0G Q~+ܪ (bJ8yH͹'L^Iؙ LkVM@LmAl: 9ZX "ƈ-i𷢖Q_SjHhRWdG)HPǏtnN\kc:' U3vqH4.G2[>9!xԋ Έ92tRҵwViĩ[#4&8X|e*C B~Hİi߬Q~e[EOfN>B8L'T`$ӕZ69s$I\AK35ښ^_^еuaS\`yO\Ả;x)Ơ^UGٷ@d8lzg4?{2eA`ؒ«/? `WPt(. bU,CFq&O۸)GZnPh2;](HiV`S˹/ijF1U%1T[P@*UdJ>k9Z>όUA#?Ȧ?P;p8*FAC tJ/|G;9a{@&47ҊqI}x!l7 ,`޸45Z`&CwLW+B_(l%:GҧUt߯dGѴvUpI8Z(9h/b'K4U7ʘ !ثh?GmiU9 '@;wM *\JwɣbCo*0&M.w'DJBX&_RAz -aJڳ8]vGX[|Q$ ׎tDLSS`uF[RK(c׃EYڹu͍VQXeU1jMXV%pGZwHD4٣.7xPN> 9H W]- bΡԞD]isw) +SDDvjB9 xCj_V2Dx>o&(7c0jǡgIR3EtjadC!XCI *<1 fOKN`:cÊ2!ihL=/MB+69Iw(wL~S}T|!{ -=fJ՛,_‹<,uT?wZ?((%Dz]Ɏ>/+uH.g3{yK M#. :*>:تiEbyNNȱ x;ٛhRѧV"t+yQzFTIٳUVɘ{m{Y zXsG/<+͸hlvzwWfŠg17)/ĻQVGD-U>ѵo? :rۛ\vMOuHFǶxakӐ|J&Xj %)|rEcz)$8)$'1NLqԀ"R% (]}#Z`)kǪ>'+:94dGą-yc8ZR{aĖwL>YTK7:lR8*0~/+"g5k)#O^rZM Lc,I>Q^)7}-T(xlT0r,ֹ)|P9äEk.\l-*hq:d "T  Q^bKo%S%fxkbdeżm)/Q < J-(rbpRL]0[9˫e7Q}>DW'&їY)}5/ѿ&[}TKeԏt J؛lg+ag^ ^! MCÈƹ慲PU=`S ,P`e[yU xq MX7uPU嘫m YLLXw(*`YF"&Js PnN#rrKB]_$9f:x {؀6"(4!ow4HSmjδJ7KD)Bó$QұA c#8$p>>ΆF_~Zb4lm<"6o`@PgPhf&*!dC.6)jMW<[^S6\-a$?s? 9>6 𮾎Kz+oso DKʇzI ^('Qk`YV1u"M WzYq>|bk!Oh7Zm ROC ~V{sh̢|j#NBrw&凌xB\MgĿ̭?B*m_(/S%hx}DA?es 䳤7^`/ 0Ht?U#@˟|H9 vƀg눣DZĺ z]) c`o#S_V2 VQ+ \iB SUU7hC˶2mXM*}Zd/ˆ-,:wiZEsoa}<]?"WO<-LD4vn}ygBgt>U..$dp;*})o40ϞWLw/lp cC :)Qu Ń2Jh@Ag| ;[ [#"L~6!ˏT4/aj*+V !*風d&[yJ`ʼ/z~,ima!6oXT♌o!"iΆ].U-.F ʽŻb -,iI*lje&֧Hl3 1q6^ʳ~D]}3\ Ҭx1!kqzho;OxFn>cHRMf$k $8XTsMpby9vMXZTr3"3d1Cci]]#fD]зW+8#;T!."N۟"<:sҬ6y^:\Ce"?Xf 5qzP[z­ A;"7*t_S_D ^bcY){;〺#k-Z34dkΏ~q ȽZGiC]IydF䤞"CC܋Unܔrq=߯}zmG%#} I,)<08x]'59Pڵkeh$5 ơcH="kߒg2Jz:_֝$R[ob:-RmQYgH3W/EA4uH}OCFwЛjao]tRV k>.hmC@5mHZ5g_evX=ρ6u "JJԫhVXl!X\޳~l/) UNqMTSWx;rcN5L2M1Z¿0j7FJȮFX']Fژ}!w,>eg =Q ph}"蜜ˇ?V$@n < WڏV2,7\cts-%_c \\qR# #L*巺]4Ydo:vi~ǫu_S{<^b75#.._ND)u 9G61p\Vyhc&mJDN5 weJamF3mZKe|sWSѻPFt .~8%Ւz$\E@ʉ}Μ%KH8S#,2iCmh;Aex#l~*HHT%$ւB:+,^o-؋%_VaW.Ӌ֞N|vǠСuo Cgvȑ5e9emON ÙMBΤvU)'"4UHf#|KP\ ɮwR] --ZB NRM#AwL5 .zΪ]+Y$ Հ?>Y\N{Ҹ̊auTW)30N J!3=~+Lѳ:6.ov]VnčQ\:Jjly\ I`a Q{=mls/Qto恥J_CdE̓ ݚ`1AI|;Kxt2 ٦J {E['uSh^/.Vci8YmI 2$3O*K\cQ ~Vp(^`ꊂCOO#HU\9SR2/WjLnϙO£F١::0k`I9!L"0}JRRՄe@}z]D!d =׆aR}-@`$;v>H6-z/s=KQ鹺lIJoGϳFbe7 b0f& I*X~P`bt\# "&G3:y\组Na)9^J%/(FSi|]l%]v !?l,'&B [FG؊>$XrP_m=g#J\#Ω&WD*T7j;&[GFO:'7/w }9lP_Ӥt @ro>$kF `,t8juz_s ZJ!=D׃EB!-ӟNvxi- 8ޥ㣄!V߼-uPi)}$Gt K+bA),^F?>R#GPuаX+d: 8\K|c*2Cl+/=㛲Ub$,,Y/}ʞSB rEy졯E,҄djM+~DS,`2({}ѡA?"hڶV Jyswtw<ՂD_k V,:1rtIt<#ً'9yu,ݒtǔ/jg%ҋdh 1 Z8k qgy dK<Q\[&4 y_NCŚ5ڭm=AkzW36h "GJg,T>p >#qOr~a/-YWR8*:?NSrW.v$>S9=&@X EѬxJ'=]׉mΥT#7U ۩L%.`SG~pkAp>VJ,XpJs&UMpFxe]N~N!k-6nO"/eD/=McAj2\57o)$\$5nO|E%kd*@F+t6=`Msn&D&ZmlkZEFܑ;B=k1n$n4Xr}[8ˈhϹz¹;xsUyz,}ݽwGLư%sՖ%L)Z󰏙~7X߯<[MOÞЁÜo[q7cF ~bZ>cɤ`5E&P3bKp:t?Zw5͵we[;~F+r#sACvXXkTjzU-1 ܲ0M{冕.ߕ-ϋ]Q G}@'#c"*h wq|#UO X_{{1PC{bn?RnJ@""uJ!VXel^t6_o7sΊRkTШbi`)8r~`߿r+ڇ ӝLCyZ^3k[,Tmb*?cӦywN?dÒBH` , Go)+9Bf_ݐkXM,=`ǣWa@6J!y ={&P{#qld1m9 #M5M'CɲP1a˻ߥ1?oن^k.NAFdn[IJtiwpєs9k]L4B'KTw Ls0>śUmrKS_ /N䕽ݰ.kmƬC50sVq6<8ʋ&stV;=.\ UV`v:2?53DAbf<"Iu?: uB:P\f!=?28ѲΖU!'?gbzv^C0{F.Z.?l֋8?T[smP4etǚ ^v:`3љj=;1}eC8-a/'|1M@*èCgYN]g$f!rneް?!k=kH{MrkW# r-%$wz3P.*a٠`nI,6BgRK2ibZ/ ڍn`.]@1taE\ 8R->Z{kMe֣ft)@"dTI͢`'Y $=@#1F֛c\g;bpp:K EFgAUI=4 BH3"B=F$t_p?LP `(G7{DZe%]Ŭ2\xXzʯ2c_|H*J:t-cdd).1js$cZ/ YiI8rg~nBqQ:rrh@Ċvzc&c"+<' 6z2ɢ*dwI%jIlM8ƍS<->Rj1˜y?b/ݭYKg2h }sp޵2jŞVV^}q%c/ Ge'6հ~8@{A{!EAEWtsz! NIbǑ ʭNN[- p+/7(+`mք0T%4W&/Bwɣ4.&s$ ģ K]Ȧz3NA~',-aIߚ|Z1ReAz$F0W148hBfRζwYy(G2 7$b2T}:]àh6cb Jyy6 ɪ"N2۴Q}T2UW f "03?<[5.A8BH l9^nZ|ef YJ!rcދ@+Gd2jW-!(ZiVlyy}O1Ս^{`=:a[U6AψV=8l|%ޤ"e/tfq*R ;[ܪdKf_,`'HZZ&g m8Z/r-rk,<ARplM6_#/ySVaݦGBІo5D y:9OHDyN 7|6j (ę(4?--hCVk+d69bҨc/Yqjuyӄ;{\eU4H 1YFQ œnt!-ѪVLo^fu+e!>^}c- 9K]55?/{=vո`E{5Tg͵ӲezRtM'N`͎'{lg/lNJU2Εjd.hq44uwbH9ZiT p .F%19z1REА0aŌ>g}捷[SK˯AC.G3akIEc0v\DDth VW{@6GHnol!2߭d"=d)$xmDٛ{ܺӡ2XTz+MP=z$NK~xVp D>faPU""HTC5,,ejETC!0%0Hɮ&~ 6ߨ:ѻKaAf-r"sҚ꫎Sq-a ,8Ҏ:l0+0 [m32j+&RBq!ڤ3349$djBE=|W?nJ/U+jz4B:m_/ՓH4P^n|b?oA_MyI:ON^K޿m]V>_CT&qoړ k_NգΜ4:"Rpdo0̥Q d%k]KjMMw92Ue{S9MS&4C%\&|ڞ*%Z}=]+*? ;`r<@J]ƋQ{4{K?8zD HRכڴJ45ծ26z[z| C*=4?-SF]J@iK/ʂS"Y>Rb  vSGQ%;ULd 5F-nS1/F/_&> GIok"S0W{3~hbS[+$!}ϏKA-ؒ#=p{",( 2/X2z5F}N>]DàRv:RE!oP}UzłY5VKw@.G]gQaR7џqrS/5~_ãDyt}'븗IxJ31'D5M!ᰑ'VQAbl*}5 Rd@Bv5kmik =AUDaE5Y; oIl"&ؚA՝O>ݟ]$3MbjZ7aF[匋?K~q+ :!խD\_o4?1m^$o=Ȱп uZ_V].l}\/ DPoMMFl'%Dt㘷aX9pQS.j !w;sYUޱ/ Qз VPtw n=N}w4_4PM}gг$aD{}52ǔ21QMD^F'.O( mr!d)Q4&\9Cg;6p-&jS::|}7~4W qJs5hu/ࠂd 7.cGiqfWŤ>f٨cYܟ_uY(;wD}9Fk=VoG(ڕEF.h1RE7^t=_Yc~Vok6 7WO/a|ɯ ,F<~1`$i] :vQg_YycLY>2vX1]qsZ8[*R̫G̪,bJ9xD e'Eq@hJ hM9G֬h g(^b݂VfZ!|X.B ʌGN!s?j%f5UӐ{M8'= ᧔ P'qڐ pRK'Ki Sy/i[?, %Y”;g:"7Ѻ ԟ͆tdi?-btG!=*FA];ܞtC2v=IХ7'ء D: Eq[zOt9} +Mu{dq7ޟuԨ<ʙ8FJIz H}^yuk nD`CJ&˧cFbf:k' ը>6!f[1au"q,׿}K!6_W"fAS~()y"vJFV~6>XMf(ϲ5,o/2Xy˿C EM&_(eօ/Œ;ᬌVڊdjicRmOGC(HL|C@qg,Vv.G 7?PǛkSڂr3}}ráDl,II}!27RL`O|uո_XA<2uc;\FӝE8o=*5J2ߣCk#B!pwԡ6 Uo3mS{6ՔNq쩲l1u/Ln'jZ󄜙$ZhL:= ƺf?J킭>,"c:o3}GA_6!Xf0|:KW!}S~ I!Zc["ğFK2e7ت{&'4Ҙ4$}cv[0`2@LDHω4d.$We$7=$mHv|y$ rq7DA'P\gPӝÎUFiնIVIq:c8=6)[@cү]@ˡg2EsDMI] bQQa.(آOy[%0jL|EheY֍N{yhc}i !JGE:xCL5h. .{(LؗFP9Scq~rq:?ҫј)%wIY Qnnv?NJsy];LJd ǰLO0 -Mma,OpҷzK;x0P%5JRM)Gc;ҢI`JR$`}8vW"h@gjR:@[R:w^UvQlػٮ{Oɩ1>DX^/Ͳ*bNMډ۵Z$?zM@}~qX4J .3 6I9,rЍ(SAW1 Q+dG kd d{Kr#~6 Vim{yodzhtKHpRrTrsX ^GW)G+a5lYKI D~]r~G@;x@N#r[=3tƊ#),wtX|Na\Ґ q;Y \Eߎ"4>21bZ(ёJkc=MvIG?&E_;e`n}2{Zx[$`V30<6G@op'*O3" * 70Ȁf0ZPBge"?rTo[c0? #YL8wH6<uܦR)eíXY&AP{'gՠF\xL_TfI|GSCS:uJy՟:҅(eӰ,~mADעjab} Zsϫ_ͪ #בu۲(.Oi;@&G& uz(6`&jb1[ηStf-q')W&AevSBtE.J3\TDdY0mrx|dWL,NZQ4];%`LZ v"aDC'bl֝?ؠ2kiB:of]+{ʽ4e#[bE~Ht 0T^T `ǡas9Ǯtj=oC2aD($#U \LhN R.!cRah u?yŹ{~O IuO}2ť&8<0ĵEA{?M@~jTa} 2/{(T2uh(;$]dM^^}8݋OQ4Vʡ7*FBx"|"4[2Jc#*w֤G&'D!J# YOQ &= B}2[FZw/E_'/}@AwPB{<# ϋ|X=PM<dM 9*ptE~2Ms5 F1g"vӹ/P+~(r:2L\ .ww)M߄סgLLrY=iőB ?V8ZV w;G]^L ?޽9\F)tRΧ-i*לI ޅk/K? E{ZNHo hSOs90]~N5j.0Ҹ~.oeGu8/b" g#}h h-bV{ZLVUjQ[ϷΔlX-N4;Ffn~UA͘7J!MGۻ C? {:!ya7ۤؐ&ԸД21[ۆBBXtQMBDN'־/w0g{B3U5UJt5W SO兟}6chɀ.nj֏&I^sM<L0L&Ɇ#YH>qua>P߃RKB`kՃI+ 8d0Btո4rbmKASdP{oñ~:R쟛9^ݿ<>QNs%Uϳeq5P^E( @&XQ lg/@%q °DΌ+ƄDJX+(Á p%0|r Q%bl P3VgMѳ;z͠rTA zMA] ]=b ixw-exꉤSi򔹤W < ]ob;X73KHN00:S;xi; r;OXQ?kSW$su'S-v@3hpҡQ}yD!G=! MޣT쉮?~@~O*.8 󁴤լ,RˮpM>tb(_vvk8zYhP>c6e`K> LYVVluVd6CuVZK[e7pۖ5|́nixS<_k{>o*φ^r`Uҩb>|u֒9#гEH{ Sr 3v[XY˄iѯ*I1]Dtl3xhJb8[?j+qZEQtX@wD偈ڐU۱eCqrviNS%>u (Ul,})IX=N #>咐j}"U7+2b7?#)uΌA;B-wu|3!ewF,&^ey~vR5?wGj%]bgs=h6׮Li᭄2ٺm~r\|+ M423 ׹c^L뢎нR*aE^;Zf+ mDD=|s䜳J_N"6 {/[CiN|Yͤ0#7 5w<_x ‚bShД~ld4 u*rLK282%qI!ĿUI1!@0!KG \im+ёw/8o1;-HX4_'j~||pU^RVݙEiy~e\c)B mQr \RP>d!lP4W:P90YLr{d.4^1kdIŹΉE_-C~w B)ǍԹMv~Y3D冻^}Jbۘ.W4=-PE@5 G$.SO#\Oy6RgQQ4E-&[\\WL^ƄOY2C;GZ%nT Kν{ 8z<$N*ԉ?|5524pv?\gED_w,d%UTmykkj3T ubÂPNk~d!,ZufȧxP.g1!ae* I9F? V.GU4<!&,ا+ڦ֗^|4Uro=N󉪣"O® I{8Aʿ[W켅J E 2k8)79  {wk8gx]|[Y@a\<>_ǸӘptx y95eЯr1W{h^"q?9- U'FMqRH,>ֱqID萟xXQ٪rcE o8`vV_7OkqDw>/j)k-&d Ii@07DTF C~aza 8()iƥb,ܓ8Č3 m=&GӜ=m,Fdw1lXu͖9-k E$I5DetX6E=Gǚ.|wx7ؠ3±TzBqU0'wy>|KJ9eJܭ1 ?a2c:wT$M%9?ȇHcb 9%f FFeY ؝'xۦ$ -(8e~D겙x3?LE66IZ*2,15/ ftA0@lMT ':nq>Xr?{~U]T\F9.z両 ]T4fLh'H/DۙzЀbV3㐙+AgI]t[*ؔb m|m5 Y%#A NZ¹;zt;ncq@NUhi5S ' M8ٶCVh5T88o /IEj5y$^%*$]WlIq[0F,x^YgkZR9dﳭv"\Hh<=)cQ[|xhk}ESE#N*[K'h(͢{JlK +kzlde2)]#ًh6cRx6~l^K~t~ts3R萎Yaj0]IYmY.N3wy<e9pa:05h0[6.rx)=F,V`$` :-s  <&G~'[HuCG(WBջ5N@tTX&^-iLϵhZ}g~º;jW!˫ IGDmi b$#D/s[%b$'y2Kز;ؑZh!nѾ!֗%DK?:T4NIXM!SLw_1'"|sMBF엘[WI8%@̦y=`d35ڽp_6|e/0 /e4"-Wź=u*"nB"{oR9࠘r|mWDGT7¤QM Ly.]ע/Lr{GDŽVa&Ta+5vCGf6K4 4fcDfFt)S~Ч[?VDjrWAn6{N8AvU:8A:@y/F~9X M=z\DWr 7nZ%yz- StýFry~EZ>&LvbTB!?0P(; N:!kH(<#_ \lѡ7ex@ϛ>nu3]fש06n`tf ҃%Fhd̶"o"IWɢA9yac|.)8VzЦe{R]'ԠeECve5R`Ⱦ:"p7ĩT"K_gصXQMzμ!N*@ѰiܖsזrZQ cy(a4.2*ߏ CMt~-BVtiboc`&n(On5/U}Ď]մ3 ֩6ЭdWKORgDNfߧaQÇT"Ĕ⍔A<ݚZ& 2q}Q,6Xt7t(;p9 e,K-Rzn`Ғyd!H:k1 W@?1jV8TVG?H*ǖMH:_%*3^bIh1sYm@'aYp}Ln }ȴmz+x抝Z*a @L1.tҘ9w$O.r>sޜʇIp7*sӈý]zcӖ m^]NJlxSL>4kĖ" <ZB͆WG [C9֏@F( k{F2 i:nd2 )! M)+ L  CnKEΥa2,*4P5RLGd_K@̓SEN4q,^.O0Ie&ɏ0Y&EySVT!y k&ۚOlM>9fuL6fDh)({ߎ8]DZϘb9U{J$HAis!K -Krv3lȘs)+NRQN*%)sd\]n]^\rt 9ǂn57Qh1u`B Lʪzmh]2۶?*Hʐ $|^+[ ?HGzRNfN,,|$;=jCF,TUTY wA-;M%CKqYlw6V HGh3r\B&r _iekNa08d Ax;(jM}uGmGDdtؠ2]< ^_Kyk`;we`Lj/^Ʃ&)c`ʖGnGf}95T ?Nq .056G(_x-*uRL1@gV+N@T"u/ݱ[%êL'Γ#LmOGk(r~:3*ҷDЌ_ՀK [Y(nD(ɫrCp`/ỦH)jIRya> SobRM8cJ2 Q/i8-poNE;woʍf3$gQe8?wpV׏/?Օ9G(*QB4J"C4UdRH0(E^1N?PL"S٢ $8w{fx} qoowBȰ&^44u*f*Y3Yck$R}@r3t!6Abf܎'{i=]<Ⱦ)<+kj~ 8j;CRmxFUMVq0x33+$;QU4( CJj6! ]pZ i9\MfUF0Wc5bWTtφhrMͣ~& *urZd/ҡ40;euGlkyL[~>hg`XM "A=#}BLTM7U>`u G%W熧ؗIȧNMq+Z)],kt} $t. |0eR< SSz1p%.Ofay0qu&mz?cj5%n~9 ef2Qz?_C*ȣof'?O%9ܜ)+vVS? px~B=׸xxpt;,`oBP >K&~Z$ywڡ 4֠DFij^Jb_/UIpFxxa{ueSYV`.1jęOWa$$W_LtNS[wvx0$ ouZO2Ij^#)e?ȗuH 2EUaB`cK%\ HnO>lt_6M>[!B!kڙvvD ZFf.kJG 5oENt s>Fwq@pjĂ&(`sP> )8LV*$C]£r9{?tXP0;._0f%Cy)2X\xqvMrԺvByPU1yKpnO>z۔  Mkk#|m  H)A־Yƚ7a6d!0IEW-[YDރiX[V(گ~*ԏMXH1@bڔPoʉhbݫw VjwIN#a锋VRCg9x([ $ ΥuWwTCEy9 Y#b9! )BGL>DNEb)D(4K'ƺ.\Cy˃ܲlFSnצ݉N;Jr%}eIӟa SLgP*zS`n"oܟYu6cbT`n)1Ƽч^$\,cJ0]2?Ue]ls\@A‚W2.Kr2U'"(3/j5'mi( *Rbiޔ7}^K/Djo%v[9$n(9A5>sk)=ZE.2l[yMI*D#(bVF¾r>ϭ*$ؘNar;SITo,'5̥t.8k[35wvE;(R'w(t}Hm+AbeĆ]e/H1&oC|TB3cn~&pG}+Xݐx^ - S pܥE'CF8FadW˜-.v"I@V^gU*9>T*b^VGT+grS[>ŸK]yḇbt킠oSZ(qܟĔ4 >BI5'Ke2 3 g]mDn'iscۂRA?Sa[N`t\y}7htDS4а)-Xc7LUڈSRqAsxdk.U2v3GU̍&հ6˘Yљ$iJunM% w+Op>/sT* A^cm9v0a}X5'Ls~3NmĂvJ`dFOUՋp&B&|ou7%zpfjWN!$?gzeK&*(a!C6l$+;߉*dgcI ak!_ed)'DFjEkz1ItSiL3 ]j]/ghm]z< -`}&| dύ97s dzDV #,'@]Y-k z׼w.J*c1n_q5TVa6J)RjK~<AZyn͟X1w+*.׏7<(3镭>yYQ|-[l9S(Bv>D 0B'D߁:zRo7 A+BH WU 8"8Pq̥u*Fldfo]z;؏X'E)U Ϯ#@lmlw\=6Ι+isrYfI!u4 ΏJu,^zW]O˴Uq-z3z{4 11~#xH~0`xͳ*U:7m̖xBEX$˾ػ՞mÒ,_d3fbt[v߳4k0)`*v6;u tC1җ1ACtlz<QC8urn-}3x/lA?F:?W&_{3^Œ#pbI_o+=,,e"~g#J=|y j8{AK80!D>[fN=ip5]v !"gc-ճ#>0\U܀@PlnX0с.N b5ఞIB˷OLJQ:(J|dBjL~iMDAl>59hN[ˏ~H&l ngMq  > G ļ߂uz "3Y?0y+sZ-{ |h~m9)4vgǑE= R:A3qjGQl @2oM,.ʒW(+ ({iO?NWac_ Q+,ET7Yw6ht{!*8u*5%y~\ Ҁ`$K76XFH<Cӫup vmk_W;4'ޣ|l9xۨ!< {(jQ̂sj#f~Cpѝ 5wcu)Z$bi\% ʜe8] ÛV1cH,?0Mߗ[ CrDt%k-χV,ߜElF6xGL%J%bokqJYۦp SO7k,åכpp=iPz(zڎu,F&z0rIJNj)?9,v@_L> lw9ϖVB^N]bx5xb"Eqm߿fZrt|CaH E8!kE-`類ϷgjITt bẍavWDO 1 Kư݄nB 2ATN2ATr: : YHYC?.wY2R%NOL ;ugWw|3>L-V$pXmAEwם5IPB!@`-g1H%%2{gBJ,IM2 -Jڲ"]Iubd|䐌:Pb[G5l  7Ý j 3S}t+/o\R /ڶވ/*.R28x?]/}YJPj e9Վ|GkJcձZ!d0*ʩl7sO3\>S~n HWWN_YM//+ WYkE]yl"gBkUA}$9̀O?ť^0)"%D;3CDjuꨊu^3x`B1yfVH3gG8T%)w%fl~;*0fKBՅ=o˙IHݯLxkK~7dnMkceIi :M8Labq0)u껟dt,3s^Ԫ, Ҏm '5T*ǩ j]پ֏Cű`{ ;Mz4XH"]g9ȲN9awP\H;p[ ,#MlS(z7xƟV?6|&SsWԚ.p&s[8-pﹳz'{pv'+xGĤ\z3Zl%LBA[r5D; Dm$X~ܯ|Z-V10uȄo_&G>)Kﮀx-6kiYu7}tjŒ. D- a~ӽ`g6i+u:F RQA&lg_8&jmTG6]^vqB !$,h7/WOoD?8o>x&+T!En>xX8eJ-v!?3w[TdVI>q˙<ݎ\5WQp,V~/[CҁF!XAa}A zl&2CWO4PDۏ[.> s@*Y]q )98Z]! +(~O;w JfNڳa0 `u'4 $*vu R{M“܋'`T$ko2GSѕ1%„~.Awԋ8%! YX&A |%4' neu>2zWGQtvM+G"|7Q!>)'!(“hӞ2mB0 ^LψLS i+ Hf]ޯ+w~D. 2CswH 5H#!?gS2D[uQЙ5x;wD_1SwK2s%dɇʻ\q:~$e ͋7yčB{$\hȯ0~$@_1{LjJ}'X a@D$r(OV[A\Q my^]rLs ^{߱(N+n4KɃM HЇTi~k^ON͓"s}bYs}:2^yR iaymj`ۺB0tzL`0)/=,ZOV0\ 72'ʮ-=?t嬐M6b6*Յbij 3W d1W1t**BYČ[Hwy25SSJGu9@x\L* Y y*ɛdr> Vo-$xK5:!d*,\nđKUg@&r'fR Q+Ѕ央~v Hա]0EHՁDC|kl@Ro(y*[I=AGbl6œ*>-b(qe#e?Gi͊3&ݼ:$`-|mAm/J<[]a\ I[C>.Ԗ-E_P0}^zTs彫# M9v}4@|* Z7hO`Q O6L12Z㳤a qdLR{@3nt=j%5w%6Տ}osWNpӖc֎>CZT {ʌUI[ 7NvaZ(HWě6D+z[Fbh Uǻ)LnفYW:r RabZ_ZR3GbWyQVF@  2r(rYYpf,XwՑǖugj4FVaȦ ܧJ@iD P1Т 1VD/:Js"WL@MR~Q0KI}\O~P5:lg@Å{-aڂi˥w)hz 9vzw'[$~7grΓ願.9&4UJVb9vosZ/J']0# 7;x&$g] lFӫz%De*hW9zI =As--G'm2u|j )HUP䫕~6|V%{7W5.Ɏu4g]]h wZ뀲DuB &D W0@Т畃WT>VZZ#CMB]挾ܨߓbՓA*#%X~:a/y'Y;ACW~@y終! YUUI147Iδ*ԑO@e0!s̐`u-Lbhu"؄#5gOy2Y5B S$!+!ybbazS1>Q&H!=G8=r7'&0x `$ zh[{d~I7ez(4\}:2ŇYNS r}\?ic79Cpx /Ci1IlIN9[n?g6zY7+R)u<\zv+q@EYv֙G} x~ od*UѴt!2?w!F^r3;`ȅt 'Fi7X qbf:d`o=ی֚ z4&, dQ,0aY {'dmZZUҸ(f1nοܓF{p+'>ՁJYHh(x+AIQޓk=T(< DU6b,$rücƺ/ қ!B{ eh,ҲrQ5cPQݢp(1{C{SњsaRIy'~0ipbnzLP@D`KiukS$ h/|䐠Iբn6fϡ7|S 83%{qrHL9BUU^s@ͩЉFei RRo;[ax=tEhnI=xTd`;N2c#Wl,ũR'FaSCUD"vvVn ~k13g)KٹǧC~zv3 iO2gu.,eW}$ H tn[[=P<hLD*8ǦߊSd\[q8J(eCg n_BS}OkJXa:_d[:gXQ)NsBQ{D*8nChW96veTSWܛpʚ/2iVHȁHX{3~Onc* ёugœ6/nk|W/|ooMYo\=ʬtsXR!.Sφ1'*JR $Yc4puor}wӄ bldu)bLiPy okաԩne-Ec@c3IorsxfS6)x=Mqq,*LP\ϩ>džn `!I\Qti J9 +)]1ZaW5.KX׌AnI>0^$/a0LsKWq[w)#gI!iWt4uqa i?_/0aTqїףȼh2LbDIQF& f1]@Oϛ}! D#6>cyY$qY{p{RV?./ 904 Kԡ 0ƭ؏.уZLvQ<579| ;VV:z/k)a!I"%svvox#(j`%zDeLg0NPX GT8zUͥkn?4emVxc+5d,xzE԰P xy Mut qXFz%OӮ=iL5Ho' B@(t< [gVrAy{7JeHOq"2|˕I;\l7uH aS]dt^b~0YQM(ehҦvs_%:k`(ꌣ BPNQnĘ5T*w󙑜ug곬L)~}~X &D- ',25+a {d́_Fƶ& F!2,*gK PJ+A :PU^9ɿ^W^ }Y۷LUstLAtnf5J<6o$듰WKRXtV[{\.,C>@B)}&׸ rvßNٓ}puu7TX&]h8IfG^Iι"jKX( jX2.x֌F5d׏ : -+x'4֬v!o啶أ@AfD"TÛ;I# a,~;3aƎKNNgVP~Pie,Y]ˊOة(4qSmY9^9.4 I }O3p7n̈́xEp[[~jlJ,C~0#9G.k ;rYBүJa\)wcD,9&`6=ƷY2Ա́TefفZvDNH,@Y"lQ]81L O[jW:a-Eӡ"l1EJX !C!X(Wƣ C/f&]0,lH|KCN:8RchOǜz(*_@V># QKsDt iC)xŘHklIoQn5+2H1'0-}4b|tj JuQMG(~KВHmf&lb,VʜM*VӫÖt*K+q)`b$ EYm(7 ii*~fqUp4{,"vc1H{-;轌~S\AX6f`!;|y>/ZA$q(ݭjPTφoy*_g >VYq85K{ucF%]]#Jkwl0O^wVQ+ٵGZ 'b(N6$.P &3D 1ojglҠ+9+uOԕ#X\qAqފi;o jueBQ6T;,NFAKߟoMV=I1{10ô! bAc!8,k1Ƅڎ{UyuQ:'Q$UzMbNdS <ا[r]_P斱RqSl(S$¨ nKsgFY(oJVD,Ljƕ.ecQubC OH;R![rЬʹO27[4R<6Ymp+( i$a$ϥQ& @uֶM ݳr16% SE+Ŏ:KH}&0w˞pt5*kQp&r'y}3@Gňheq:;E:ʡ~eN&pq?`K#QBjV3 Pr9VzScKc Ujՙ~> }C#HlY{s^iZtCSkX! tȩEJ쌂c[.ucyK^^wϧK;+Kr܀7QHՠڰca$CQXŕ%.dN W]5 ឤ*R<<Lݷ@Rԁ1OLןlSa;5xfiedf rGBvN`~]K(l` _%s YdjICRa_"m1H|GΗr&/m9Z5; 5Ԑ1V:$*\^XȧG*wCŢ3A.,ԓ'#RAT4>GQy` 5@k%v*O8X:#7.6&)uFJ>E* o"K6D}[=Iɿ_0jV!w'Diϥ۵`yTTL?(.Jmڬ> Ut3![ RvZA58|\Wv5\:9v0V0>ϱvY-:x)(X% ) DlZj_d;xC#{ႥYt\85T2f봪W Y*TK߸ ^Åe\QO0Z*Va~o"X5Z;]hywVm ql{uѓkPeYyP.rWq't/ܮqM*N5K7xy*nI}tj(n1U%᠌Hd%;}!d%-I1j6¤Zcr̶.^ f*A:ewn گJ2*|8^͵saO(i6WQPt xH8#Y`*V }*YH0WQl2MӨ9QC GPc.U sP"3o>,1Ӝ2VHl ʌ=2`*s"#Y. 5)Q 1=_ohq I>W~X +BJSXxIZaM.<*[[Tsd/T7esI: 7l{cX;e^R(q%jGIqIުD3Ğ%F|qA6{ww^6(Fn-foo80*FE)amx/Ѽ2D`Vϭ(Vzeeq5x3BA}eЮg`p̨K\n]Bjt]TBJv-ɏ^-+C}piN wvCb6/U.Rܟ}#vk7 "[z2S ]ή'؞XX 1@ Lh!ꂆzm#MIɍ `jsdJ-}$~7ǖ bY 0m[Uهkg6Ί Ȏ?RFH\F_.ZR]c$?"/!jř1_=h Tk[e5mد^FR6ܰ% x\84ZRY/G9!@Gcd݀^tK@qr鐁51 oc!ņjd8 L/_%8<[+%X}o|؄@Pe` " e8P z-ca B? S}O:,J:/"{;$ Ok'5,[هxW%GfWc?AdƽOv:8Rې=Tr|h4]w̴vRR_t Lܗ)[@+SO^*J鲍3 !&],Fv:p5KkYڋ|r[nAwvB^Sruvn\8*ZQ}wN #ast c UU^:CVP06er! m7狱&\TF'gKagH1]-7MP9-Dz+fv^0]K(QA $:s[lY Qf֓g>+^8BۆH6Di {2 =b Z#k4k 1)}zτnï6w@Vڭ&?I8+@qఒ(^ZfT_!sXp襙Iæ{9)+OFgLFHkU7Bq{#BkKZ7xDEԬa=S~S|oXw*n"#iCG8O,Y'ȸɬWnic"lj)H3(`W>%[ UŋƐj^6Ls3|_ (FDDC# T+`3TOx v/wPo~?\iKnd smAbM yzunu )p~6%qt.{=r{WI!l8hrÞ_j >Uu჋_0͸+n=L)_1Y:.;6!~to^xQ>oֳÃn[wC܂&rʬ8.,'7]n с~~9fX$2D~@*6&ͯ\WĶ Vq~ ~ >jm11ٌ}?L+ӫ0c-gE#4Ay.׫-Gc q-!/% ʴ!(<1d~: .B#ڈzf} 7S*6_yd9ԮJ͜6b$Yz'YĹи}ໂTK0[ =5$O?Fo ˥&kǠ6ʉcEm {K͞cus3:`tt-a`^q \\[a40= pZp8ͷ)ȏ(v9J'SOSee0#9ҥTvDa`SAt%5v}S`TK*a,]!f^;W e+8UD:LU@sphh*5_LT pS T~KfY~vf=Q& ܥ ٩j,jLcl(}lCcȠ˷ç9s`ސ8L,M:>̑T@z…ԫDp0ce t| #?RɰGaY|p#`wr2]okB'bp:mh0mk+>^t*+LL[k{#H)Hɽ,߃]SyGP'.3[2|B,9:E|{l6oZ@)b<LϫcΜBsRIr>.plZ_˕*-;Y Bь"lo -35x3͆jV徚!7qt Je,GN&{vm\Ǽ=ɧU.pQ{}D٪cbJ|w}c@$ 9a:Ȍh,,1)d?_] mr+ >!K7&eE""?{19-*T=PlTPTA|%DF´vfWWXes AX8,* שO4F렲k MM6: Ω_\$|fv[aÂ훓R09ɳWi9KS0wȝ`>o i` z^synLâ!*l 2%UH 5X0Cg~+ MCL*XiY3lwTfM&|JկkQ:@rkXh&1s@&NzGc6REeīf18I'`- G) WX5؛z.O i.<{: PG}tqR⍭GK05wv MAVUVnVU ~>L›wC<H?ik:V',ya@dӵ)So&,Or.ю# .oP .8pjeܳҞ|GǼD،`)5I|SwesO0 \n;ɟm{^!c^os0R_/;6{*U2S** 9iG[ѣ|m3XYAe3AUX7ݪx/?o~h ~zzJ8 Q0Wm{J~` )#XۃU)b~gE + 6a('pOE] cբ5Ӕ^J\)nC 293mg^$]/S1+NU$Ѣr"ڮZM0J'fMZĊL#")Q=b;)=!:pg:0^isϪok&gcBH)8Ӥ_~Q #xt=IO@t?矜]n;8^?u'Ё =)׾b'蝳3B\DŽa,<~Nfy(T?HŪ^۰p0V١%'.ȏ%}PRmkڌn~icxEPo`7[G9!,q[.!oeWp" kcUjF5qVbϙ 7 bC,xC]sBX|J:pfqb"O步H'p4|VK'M|rʾSdu[ܕꭚ(hT6˒Cd79eFmxcBj{XB'-16ec)J'oH %Fϓ+R82>*Iz)pY6tj^&VPz]*ndPbd xqk>Bz0g{vBWӺo1U_Ahi 5,pk*Cdw%. h녏T G`tLrk-jE;DyP'NJ3T)Skˈ#\>̈́[+:aްs}Qëktvv*3 ޒ4ѹT}ӭvtm:[=d(J"]Gf\7c6ngzZԺ:h3HRsnQt'UD#}r *W 0cx J owŀju%ڌ"#w^ j.e_qId 1]3x| !=oUut|1Pi4iY}AdWjr l/UܟN^JBȫĚZTLw~+C bDv:ԭ/bU_T$:CbO% TS`Nz1Xq}kV˛]jz5Lb6(Pks/sBUj%q2J;Qf`UV\ }w;3{k^hlw {5Cq pAˤll۾ /Le;?`ɡzp>/","l 7F_TMD̞B3;pp-h._5v$$Kl_7!E0Es$R>žhgg66Z`l^Ň dN`[ fT ]#:T l >UAJo #\̥&6C h$(B^rA}C?ceQٖۧa,.>7=/##QW򵟖y]`Ie]W.6@;h["k`ǁ|D& ihacGiR?inWd ڬ4\,֨) EPNm9E0Vj BEy<6 VqiM Qk tg~շ^T.Juqg!y-.uv3!RAp c7KrnUMPa 0턆⬃\ UKaag 1! M`YZLX2a{]ژ?2j}p % ҏ_j|W$Gt/f4K)f̂ԮJ4e?) {LQ*X,f:\ݛ“ LgxiEb$Qm 0rd6AKi_/S]9ZW12<] Sva h}wV+A4VNWfVsthwd&bY(S>BvhkVޖ; o@%U#?(ZTJt+j2Jÿ8[͈t\xUkM! BmF1!yzm#EbG,̇Jw>0ybFxƬ!]Bn~'n\JÁzpl7.6$1ȯv[am2=jٷa#ٮoX˾iId$\g954Hgs(BzBc@)PNs7$q.hEy-.! ]Yzmt#O-BP Xnݲ L]o:;t601ӢF1;JPsqlakB܉`bRD;k;UPNl_U{4saikK2ykp,epLk|hE_5H'DwapUH«XwP[n0?wd&UC:Ñh_<")JnJݖ7;9_]ݷD{r? &\Ktic&w pPJ9}_/8Zo^D Hi ި&-AJʂ1\S0Nyu@Ϗ,D@E+(FѾC_)@ş`3rJsvL,JQ-"FFTMMI3GeEEZBv3 6aP;?ϾЗ4 MHuNBk:k]m?_+-'iL@)0SɞfaA:Nb!$<Ju$K Pd~8gKɳ:Zi˚e02uw@4r:$f-bٖ ZӄchN;1ߖϱQ,K1{CGkU3Qѯ~Ϣq9_6ʎt`6kT&|[L3:63uS!}NOQ/ql)qӣգwQ@ I9Rv&87ZF߱a .LB{1B>3gN# L'+pI/⳧\J?M[ WJh w]DZTErksGXr^[Co*rMy_egev6U8ӥZVGXco`ngvoSpd ھz8 REEafwX!B= [&e])!.)-68R3?\Yf߶;oO>uBOƏF76xw8>u hoJːc- IT=~#lhغTX jQwJYAo&Z|87i߄S&;\yy%3VƦuc87rcd3!r֋Q8@sS sdA&tr!_yg,%WkoA ['I#˽,;r2$J  :ߧ'={ -΍d年sƂ*KR#WU9Ije 6Q@6 8^(ފy0J>h#tVbΝ%wNAqQhӘE?[3}Fpjه][eVF,XSw՜]Fة,=hx:[ i)uC[.xoRNi.z!uo^3.2Smt;-]aw.Rّ3̻/ g2?[k_N/09t Kb[~BZ"8伖 o r#6Df,`)W)uVT%=ˬV_9ޣNy}yDێ ?N {Ѳh}ږo ٲKt2̂/: x`xpC@\ zb:P[TwXLvjL=dE5P`Ly}]nKCf6gjl!g5 n  0<- 5qc 柒"U,ӿ 5Q8B9&Xq9REGK4bp%ׯY;'W =XX%vk`z@NC߇TQm~3Xg2F.Tnu9 (O tH٩=DmhӶ7kͨB5^~ 쉗}J9|%{*4 F~k< _IE! ~j^pbuaɓt)26+q4d9ԞkU+A.ªWh74΁ ~vOpcݩi)&' #-R<*'sZ5'jVjR%*4&3W u@Pe2؋I򵨏vlf})}卿`ckTduF6QG5~g2&[W6n Mgm_g9`[P60!Z O,,2'J2( j`3Efnн ,W0֍˪U笼;#NKGBF0s#tתiG seaUR&vD$p1QT2O3_9VL Son@|3oz (<8PX{m̟+>x qE%8 + ȑa)kcs֭+4z9 >ZZ2b>YT;T t7vif`)]Gud 1}5FxJ sPNkK`0O%ʅ}L|,Eg3w*hv,PۤMթ:ن|~ S(ͼȘRZt )nR|a|@:j2mqӤS9w7]6e8dRB|scBV^ وu YA"&=L,xvi|\IQXZ7n!B,c9rnV|[Nfn+!RQؙd(+6#?N8sAT@4]s!9R 0u8rWpcBo>tt v;aWUFV3Z9q#Ӻ[?(8hb6[g&8Uah_uaqE^쵫a36BRh+4I951Mq~M3Xžas/zRO.O޳f|6צw8U4vZ5FKso$U>bnt6"Sk:#|jiVSA97݇<M7SLfR@N9Qt N Xxf!+$K}Ӣ17DUF1]K} W8rPv(!/0xҽJ&p'@y,Me6\d ZBVP}Y˨5xbȢ|+OQwİ(\3ìў!),)v)c_y81[Yש[5#Qji qEb|sBN#;ʭ{bpDW'(ZSK l*:{`1GR C; ޼|nBMr׸y8Yr7hϗgI.m13BK9¶'8<2>a0*X5`/d,qI`'.J}< C>33.Gm4zohiҷ]5tw] !j ǔSo &(v'U.hbjl0~j F!m}(h$+rt!mT4T< ;&Gͣ66$ {SM"' Pً-ͪ-数VWɯ! ԜZx証fU Jzs6Q[ɧkLDLO")߶[9tʓ#q2&UBkUtrp?c)Uv~1{ VXӷk~;O;B[yZ-Qpڣݣ]b<݆o+@;\yftK_]ڞƈ}2uyXchFCE3s&fn}8Emop,*L`/dlAN,0t, D7~IjF3x`8J&~Z}u$cP E|Q~.tD3Z*¹/Dl M\>ܫJmK~:N;,nlGZvm eG諨:>]˙@ {,c']چ"Ez lK_oNg䖛^LOsRO +PX)Cݥa]: o}@o՚Hf)Yo㋇̑zD mgCo-k:*ak#ٍi u-q7G2]=N< 0-QƖU~ 3+}!`QkJN~y sm͞:9w sږ'r2 |DRq"JD;}Ɍ~:#2oBƗaBP^*AY$,s^ diz; 9 Ӣ lS7quYL: E/<_讣E4eYau-w.x&衷ސ)4(gZfit[;qVw?FH@% |/ %{}pւd_+VAUltkB`tչqΒMx';?\XJgS_)Xidj]pp 0. :1wxڽnd0yuIa<6j9QF 麑bͳGE-SLs4n6;ig o9JTUAT&׉/sP([|T{?Ś'k>HAC7vfWo骞ҤOwnu2R -OL"VbƶDT/0DU;$r| Dcl;|(zsr]<$8 4Vg9*{ؖ?\hNF~AC4 wOҒ3Eo}yIN.(>ҾqP *q\Z@X7A̤(Ch⊲1u,khx7RxpUObfd/gcmA<)!5tl"֐ c5EۘCjponÑMu`X؃8ā[1>k3zE RY:DwàlQ:a՚0=Z^AN*ݚ.֚߯,c9j1 w*:-JGhI{+[vіm ٫? 1L0RRuϓ1]d0cQ. iP끦tS|"'ͩ,}[ ^a!!@wyuu"D+{OlE2V3 EǫWAeNbĩfMTtkQM\>bͥՕybWMuNc·ކ+oɓG@?bîpd۞]bXhsHHj$Ԕ]&S{8gTEШF }_u/nQ\GjGE!y@0nKDdq\)Ea)Y:-5<9$ si7T_{?/[HV빈9u_BJ(-bkO`CuE3D#Bx q}&]eنzLbR~7Zi&撕\L_bUk-ytA6+[fJ^r6/-# l=MRZ4Ƥњ2͝mDETu|a.(¡G{.^wvx3֗RݘkmN%&|zU:׽)EQΡnvZmC k2\ڤ;̬{Kwa{ "U }u5EPMj,h8GKO(W 99^Z6KčW \zԜs`2xd7D?ƝJs𳛒p X$v6f~ ߐMl3ʦR}4xYK$<g 0 mEZ$SZ7$Zr a!f (Pil&-c f05eiU A)k*Rf Hɭ'>U@bd$8:5@|J}>;3e>>iH~5S!}HQoFkô|Pr?,ptRl=;5|^!]$IVD)AiƓW A.+Exxka +2Nrc/K\%ݾ轛& -Vܮζ }?}u3y|"|ݐi}5׸Ӷ>O79J{~:,*挴'%4,;"SZ)*g t ^X95Cq͊C2o gT~YB8 u GӟR1o oTCp%Yc,2}Zr8*g?{1GZ|6c Ҧbqo!N T]iRg[03KYS3@0 TQxVcKG,WCJĿ:JMUJ yP*a﷊͑N+) 7RC5%ҺBw^%DQ,ű </)hldppl=dl0O?NxPAM}?#+)Fb1hb,0CкIE#rva1qr7prׇ+.n%'-QӠ2],JeBy3K<&oUŸ&2^TY3D9F! "¶>\mg[) Yn< H@Pg(ȖRf²2:7,h3 2h{2tw!o;; h -#J70kAaC?a[1ӣ =m' W:,tBݏernKov (qP4ɒZ৚&[\[vJxҏq ZI_zJdg]A@I) dK{2@"u7 M/\Ktʳm-F f7x堳JR3"`UE3l$}~𯍜jYT|WSq!\6f+PZP@^t(T~XD| <cT:]w{w!݊?*w0O"y: ۫!`mB@v&V@T ꡣk\`DڎsoRDA,Vt=KI+'P:L^JmɃ :#u[ՋK-4L L[pˢ32BO_@[WR. x<i5m]6p/eu5ѫU/MӿũL ع [@,gҋ"e"`ݓ䩀xnAm` A_BY!d}f HH*|i-7<O }AxVGUf*I&Xz έ<>*ιL ^44m7r[)qLL*AhT[,% :2,J:c#qsIאOlr3ᤩĚ㶅Lsf]w230*hOPPuey b@%v8Fag*0Ig ?{=,6 昢 FXA VeYU%3Rs?iֱUmw/Ƞ:gBuFy &󋡹li`AUad'Cv3ז&uX|JkVZ݁~W^HhL4 ww:3"3uI󉑐v}rU75*A1$8s#Hfq:>1ɪTURo;;]RTOJQ RCY64d[-*h(]TVrxs/)yclA V6 g4f-l!`R 9 8Y1K tJH Prۡ;)VM ;1~LHi7RbϒDj܍vfLL-a# N؄aJ3 ra1WlǸh eqo= 0$p`uM:|]L u9 , bv-X:Bj4j>>6;|!kmFt]Wzd;BAouq/ζ M9˃˟&*KMc:%2-",bZ#UIߣDLHkguҤ e@!bhdRA<'; ͡/p,l\LC_N[3]Ԑ1ՁmqC;RRZ8ŵFjzD{hi-J= t=)I@a)\h_#J-J]^yQ=\O\G[1(wF.md!?w*L'GS1|SA,>VPzGi )zQ'%uOJt(rrq4+ZDlķAC!`x :- \,ׂbn#2U7jv( '<#?v:OX//э0cL1 vPɸZhzؒS tٲhD 106+DV?[A_ibJx'S q)0^LFƤ2(+5@yv h^~I0-WƄ)&4EXw1#,O/efq?n|84UCc'D *v_fN q;-}VO/Lr~ 40J;+&؆yM Ň_=Aޫ@8D<=}X2̪|@TDGU~PRڃ4rX!ά.Y;F{e7DX.q=l:GW:{hSkWr"׺8i/_ $JM8VDǪ8bW2e$K`nB[09.I8uKn؎kB@(Pkȉ{ҵ+h p-L¹ݡOA sm1 ЦAI(Om^IPÒ`!-̑)>X|a'+ o<<X~ZL =yzzq é#wBw;>!WgʚӆQr,}/K#GcedSw:$f6&IUsPD5lUFhTP M8yLdI+wO 31}1y.X8y琗ޑ7JLGOy{!RicaAL1)0t&;P%3A5ZBCb[I8>{^@6Sv=:5HDP}Iɫ\"2iPn^OE2TܟS v:yS֧Ĺc #T)g4l"MYMέ)h*yщE*OV  ao'ѝb΅2E)Ɂ )Jv.-'~ u<*ȉ {$y6|2bwfW`pפC]K΂~k/%4V]l}8̱_U$rUi'A1_o=kl!FFam:oa-JawkjF2'=P!_wJz~L՘1k-wŨXQ<܇hlB O6x<#y;U.3516G 7+&{nu*4]z nƏ5-~-!̌%\*j$W Q c&rl ,ʧFV1upkZyw]R,R!B TD%SK"w:MbL "pw$0CNBkV wju_sn$,O-"ߠȮ*d,~# ՁvZ^bz֓+J`M!n*܆!e\?dSwLXlzV#4VhV"GW(%mj]y!/-͏RZS҆#%$[Ykd ƺ N$O:½O0m S| Y2TTnD(k ץ, φqQJ3^~>:--(?ܙgQ,N;O#~I`E$ƝcR>D*&mk,v%W;/4!ۖ JF}"kPjZmqL_h `9u>DoKZ D"re7gH,* 0ldD9dJHycc-T ר3^ q v) 8#.r#Wjڀ픮$ A)+lB*qoosI\u☿Y綍oh4h翆6F(&rG FU%xQC7%^67 #)AmŲea`*OK2! WX~kq.W$̠5#L.o\ 8/rKzs ݴg;ƓT&LGVrSk/s z }i]NѦh͌< LW۬RUi<`(ba_ ( ۲uAH緄\Fno+ JL!Ŏ5-ƥt x>)bD ;E}=G+@wW`ŝjeLB~TՊαa]&8ovcOũ͔(?Xi=n0 uE & x䙣6JX|qmRvA jO0_\]y Yx#*w4f7Yz_ KO-Ꙏ.au /h}r\ʭWC_*pya?`@ޏcMsN byTׅg-uLlQi',O$6.9AjPl`Hc|vp<(CJUFsB^sLL3Na=m&>=N}U N>$]XR ۄ=Ә]#l3ih;~/R+]N M/7xu8sKae*;lRL+#o3E-59ɩz zސ33ʸvwbXeunZ@(|Dx$m¿Nꁬ뙢t.0.-I1\4);)b|gkғ,+'oqX85?hnï0iAjo/HE?zp5'Px[hGcAͲ-$paK͕ j7DE?:c+L J̱u"k0J ZcswVlaH@Y!d6 p,]o>'EC/ƹ/F]Zaj@MÇ6.>j'eŕo "ag]1苔SEJL7I!' ơ=fGZ'sF7̷7$?€ z ߚ1-0`߶ȃ}fwALS̮u˰t8Jo@[3Mf7 l2  ӉbY˚WXK8xNiG)bD{-EW?^nh;/-t;ÖXFhaaȆ?)9-KՊ$<rtLۻB|a O yF X/qiDŽADlx K$NOR J imHkٚzveoKx}b8-Y^mS"i,%ldZUlXbWԠlN)s-VV4:WکVM$&1SֻFFiSmvoh50aTD8::-ԣyK}E 4yȠQ'O٠vgN\˜&|Rg3y4j",;p4(#QN[?V:?_9V鬏gR2(>\]D`FA5LdϾs1WbzƒC&U&dXhiUPePk-iRYO2Gm0_)wf]_KkU&{5ctci٨O1{e_ΰޖ5y,NuF6$0\wba x⏰: OR>+D!vn sSxAO~p1 o 4{@B+Y R`FT`t9#ýVp%+*sC froF>|: #fQ؈rUݎsԎ0h)@YW;)=LrX㳃m<Ʌ5-X . H4@3>uT*d_ c]ezGmqop`u{G5k/;,u:.o2^@ ȫ2)_r 'n *!a-q Y?4)e[6[-WIբ+cNvlyi/YzQ18)+Q7UU1)˪ igj-^`fd rt )THQazT[u>jnx`i7v_3n v.YvGd^1;혞 ȵQIZHHp}ޖP]bQAJK uA  If$)W-Elw:k`@ .@`D7,_CKo9'ب[!_KV7qnR#LYW\9f4tmL)듦-)7DŽ'iqi]*iNRNR5BܨP>.xL4;clP12ڍ_K]@Cd=r^΄"6t=-`i7cxg>d;a(*TSs!QwaT{,8_ $5ovO+JSl4^"!#$LGŒx|#S՝Y%C5C Õ&BU0C,87 sY N+׍ gCڅ7p#t3 0=`- A[l]{gqHǕVZ-J+@tI1`:Cȃȓ?IJoь@|۵)w4 # ;PQ340VssI jD==JPJ뾢ZA1MWPK_\Q83IY\<2Y rE PżrW?|L\KD`f!:LoRk<_I `2,``E6q zX< 2WPF\7#w@:n.}i^ w wt#LW\ 14$qH!誊XY)}6|.\op~B# }8[xݏ4 Y^Yp>x,_'vt(J)z0hqrnpF@rߌ@>UkfK8G;bj]Fo>LZ^@+y Ă>N bS&m ƻwg_zEXf"?tK=Eұlkvj#wc~Hkp LTL4Y&CP8RzG@}Qp+Lnz8cmU9HV˜!<' Hoc*(ޮҵwG-95 %oh"z3MnA2U=%doHېT|:%N(Ղ.}$#rD6Fv&??3̧ ?ʦgOVcivbh+ 6"V; YY2edܜcW@vUZ1%n/L-^,Nl|օ+O0e \`+'WC; -pcH1N&{y9p vP%U93\h/:Yu.yO僑{vkDNXd3G$"XVbᝃvk#}93yɡrļ|N 7ViPMYWg/ڙEKx xBe<э@2ZDDUH-n,5`o Ph<0H98/H6qlYh,J$&uAz B+H/pX>H˜CΫ6L 鴒?躰ྋxok>(X.j#7ɶS[&bՆ('#b8g`7iL?}.}TncbC2[F ,2.&"OoROx7FtVSdӄuͰt^D:P,! *_h'ɐS¿ B P:&N%Zoצ6#3^r_1-MۆgJ@[3HN2n^`aRO<OVEn}}%~佁 6S M :y;jbn3ӈ8TAo[Tz F{tݷ~i]&uUmV=SMWs4ec6Kyf [iic;VϱRnu/WӈZЏ |Q5ȏ,]kH}1H|LFۅ&J:fY4Q$Gmy` D#Y2d?׍Z-рnqQnDtHwe(DŻ[ly{`K;.|鐖0/*ش+D-NۙDʄT;[#35c_]~8S%cRJbS7[R>yV'=7e$鰏r,a]M?0 3EvbwATQT P,Z$:#1+/IJ(]%uONmhT>4²ۄqOi5=q‰ :=Qb5t sx$-c Ƶ|1$!b͘E60TZ!><5LȲP\}L $d}PUfsZDgj YwSt1LYNpmT(s.YClQjӣkXDy$']ܸ3K8ں&>l^OЃa@~߉[:%D hd{(\L*kShBrllhyrK9̋pG4/v㝒=x:tTtjB6vįTY݇rNbF. o($f# jV' Z[{L#AUC 6!ST#2Sj3;jDd;*.dtlr|/z6z:l̆o`$wbϖh#;'<ڭ& Q€s *H8&q8IU@$ /,ݓ^D1bBOc>)jǢZ b// zݎ@o<J#.*^wm8>+{&mE ;6l2sj&R]]~ǭ䧇_CD:0yfKr[G5ZsoON^J)vU[gmY:v\ɴ L=D-:06&+tzN0*2Dg]AN:&ƀX$AwR"šs QG+s#ءJK J*|BE|MrB[*qT=ʈ. op{+΀}tut+@ն3 M,SwBҿ znY8i:7?ߑ%Lg#{5%[;LTԃb@ L"b3wYlrāz]nuὺEFz+ZoבC"<)Wȳ G%NGoi"c2}89ExÈ$}6q *s û-^ J]!7hisn5:4ua¼HȒյ<*jz1GBMW.ߋ8ĎQ~IR*K׷2|g~Y2'(+4iyթ,S+8<=l=IfhKtC bx_ೡMA ѴB!Eo&JVE? ZupCv1 F׶@^3-YOS^32m%kee ph':G[,5+88hH wr]BԍOM%6e?Ѕm^; >uvx KEp x87H!KzwRWyqeOoS}h+o>?=|C&} 3A7M~gdPz:m&c2HX xpٓЬ'N0tǦsFXSV4X q {].ʵ_ԥZ\ P U/=_m=Tܢ[E[{CnW>2.S V4 Ho2 !ӌVdu*v= ǣLjb0q|@+xvy ŏ3O/S$34WiQ9CM%_mY|&._pr޹ooUޖJeCeuyfbǭ69pD3[8Xa3{w%dKs\%wH"/Ic݌M-Ib==Q%NwR\V $wN0s\05K[*i,ƟLm1)JsutZK9(a\Q|n 'JՁGoZ+57uL%%w]RH5a9<. 蹭\pP*MvX78S"Uz&%=,49sG`!1qЮDHG]H"Լ4{ov-c٩)[?nhc%=hp5h0{},W&'\:*&E7PC.6')SExx6MnH~ҭqHIK)]=b :xҟP\n0+fἴH_F'_kNt mO!UP|k85@4&(9&@Xiq&ғĺO y2sK@, ڝVzDJ{v`$Ж,,!6ḋ<*RT{9"`LڤG: 2c <̂-(=Ҟ~'LzZm̏G\}ї|Uwmc7@=ET{5!ݑ|[DGX`nASi8cR< eNI)MI^#XĐsߺ^v K>o-ָ֎u~ת"djHITaz}͉53tCOx\M5@+]i Sc0_ ^s9r?n~!k|:b.6;L*iZh~WelngN >B/W6ސYN ~IY`[=]L1^S |6$ q6ӱPA%_MaaRT)A#] m $ofP:h*q4թ"]f0l}e#ϸMsƚm3D?9 &Gz,,|8+hb 6pU-2!F=@ܱD=hNJfS[~Od B*rN0 OBGəM]!JXr`צҟ A)l%7)?%JL_tI⋿$3Pñ˽ݜvP3d7ís4Ǡt(8 IY ިh:Vl#ҥ> mdG~#jbTLՍ<:]kՁPfΌ$J{ھt,+j.DH\Qxg/̎zS;ea༹+%SBg^]!t!anSV8hNg|gfuj5Eu-M?'='Kw Fl#_tXptEre!b)6S4KT 7^K_%sE7 s7޼hƔ֡(ꉶDDKMX_@)^rwRD="Z? b|You.rbG[,0mD鸄:vd"{LzE/Z~dZn~Cz{+e848Qj`s#CXC @2^ K9Tp&7!U! 6H6ѝP)}7”uĸ}Τg JaN;!XgjCؼb[ seMH"$!{%{Jx"-"4uN vg$*zHڄxh?Fn>WՆaw_ d d1?=2|6W\H.A3^XK//ےx)+qZwr]~: GoNq`#\1B}SͿwl['<jvJbWlw8zz'Ljq=&Z-cU`lY4O޹̮B'x$-ZG^՜JNU$bkkǼs I-BY7q-2_[1_OBC&HVi*>g ~c9o:ңvQOI 1zbt}#Dj[+ V<ZnaN)'o]FE2;I!}wW C!.U,O ox1e,^""`ǯ-_v=d\}^'u(h D1Qؘ4qGr9w(|fz@@@x~,zݏ?&r9{޾Zt C@gn ͦzRb eLxe5&2VX'[Q P5ln[eqF0 M8[+TXj s n<{4|ZTRu˔}ff*pb\sxŠ)hqeMR[[; P`e8\+d ((rCw.*;xčvTh~s7ӿg7",.*u}a \S3EbѠ]RiC*':+Y_~vq PG?ňmnٺ}Ykh'Ƣ|2P_Y`̾QvRzSAQ5}-h.יeX 4Ft}MQ:w+ EYV:S$JșUKOR-f@᎝Ł3&[]<9Ao<G,x(O!E=ݤ8']"hDLЮ.{ I7݊[u:Uȗսu'kxt؀sl13w:'!lė(, J!Bh9[AM!_AIk||Wݼ&֓23{T)yx8=W"sa?,{6Ō։ zˣ<9E62/nL~,U\6BuA&?J;~2}]WIT=)}L[-wyGd8pJ(Cpx̉6J%lJ̪3I?C\MMXB=%jj?E S9$D_*GnWtPV Bp,!$KwqZ\T7m=sFS o;r.Buh(Cjr2;ԡNWWXNmzsy(gq[ߎ*LhĹ(5T*o_ݼ2OfMX}Xh݄ Vwz-Pd<9^q!%Lp%qx>E}]t= ꆰR\%s(c(#vB2  \XԈt? r~B참n) 6LZI{a3,A Z"0H0nᒩ} UղSxRsGDM AT%xрqr}+`m{A"O,sqj G9yw]ctpd8U_C g JX$Pk%iZsu8'#ɓP07:| -,ʣe"szmS!DHFbIQH%0l4OY8i[f6v=xhdžELOI6I\ܵS5Dbq:Z 5 -M1x?ׇM0 .f}e^BW%5[&786N3aے^5}[mkKhnbPBUtXnd֋wrIl6>J1j92?mo ~p\ZȑS?/.;.p,kWE,~gdDvlA/}C1::40w%)VP }Ic29<.`#GFsuGAвOx`JXU\ /,jq3dWQ~жdKܡRa4UEE)Cm,v{x1pĨ`s{%AA0\e#u'ؠ­o˭AVK7:uƬv,:=o8dXݡc)oPvC>Y*紉dX1c+APl}fJog*Wy]2"y0+^"˭#v!7FxL,}X\@ʢv5K(;&5F+Js)0KhP!p3?3ܟsRT=yl+ NP GiwOEvR1rtLA4T&v'^\X\ڢ Q%klvϸ;yd:CDoO7+ƔiG#;utOZcXֲ|M?4+9>lGϤl@釮^8Tyk&yaIRJ )_iT Dxݡ]smg衠<*vz ƛ# SI3v.Jϒv}6T0XZ:_E ]Ogbzm1Q2C6obn,Z'Z>W'rq -F@)S}IMiJYZ  UF^0n<Y33C,ETyMɢMпZܘ_{\W+>1G}o<5S{9Enr!V"3s #3جlZˇC. VL>v 2Fc٥\*Н oYfǗX0z;6J\8ƪF\^a*11cWP=]!p&CN"zG6\N=Ns?At xI3"0)6`L~则s`exJjRnvjQQ`Glڹk-pdtB;XQ%a7@A4ZCGm!t2!C֭K$^}D (29Ɣ2‰Ǽ7%]g_qZ~#7ntve!Y- 8oVvϾn0>x^El'LԜ@Dh(3K5=Z@ /z~%31r;78D J\W5WČ{Gg%| :M1d&Ähm3 -YoM/aJM_&cNr |֊'g]0Mugi#𿆚 *^춆tșl~@-֏nβŲQWawȀK={NW ;2r*Kf67Â6K澫OW+ /T`ܴa*Y"~ 1p#SGA\]<<|Lٰ$(hutV7cکߓ9~W;T41hCّؔ>`c&Yw n/+{k'TĜ{z+)EGT7j+UsY?9? UL{ϦI(x"'`#HӾCA@- FOX܏5D"LQAJ{ꛌn2>L!~_4=3Nr9Bar~2焁]x˧]<5' õPO6bF.)GXM|ΒKs/&W*5R[LJ_7p _N cG3ĜR)vT*N503!d, ZHX%|U+1[]c,-*؂r}^b9* #N9{a@3} Y=g,F\HUr9E٭~$1g&A ʌ lcx"6)Fѫ̓29x:5jz(DIAGyU!}P!,QI6A2* ەӿ-PIB rr{uݟ@|_b qD@Z=Ci\3J9-.SuoN(>QebW][7!1,NSVXJ^qc؈0_ٗZL~cwG^(8u$>>XǟT ujnʹKJ } y;=IHWD&:`&8lWjƘSX7HZDA&~ X Rs>KSpx wX ]~S m7'KY8tqCbf{L>߳>uGmrWcEg)w甼c Y]<3QT<;]:$EpWOan ]`r5?8'9b+]BB¢lOx:ᡅ7dY7Rjl/&jPftouD| ¸V6GmԪt1{+%kM(%sB$?;좮Eje:D-qR9c[r:q T2AR߈H-m2V1V{P^P*> D.PU[knaE2zqF_eXVyKG=cLH,V1 }nސ_n`eG_Fvi @vta@kա,Sm"i̊P-%Yy# !XJhʲ|Qҳہhaf$8,#)BS0L"lvlp; PiP<)v S2QD~?wD1$_sljE͓ղcmMU}U5vd1?-b6wd]/Lwa;"y!)luߵ#)ް,=wAa[3AWPf_j_y432w0^kɗ= (#:p#QH7v(eL:9P{Va$`%H`nGi*ݒcy :*(JTQk-DbDؼz~II!,vp]fKE|o[xƘқX|A "kP7 LAY&:zI:Hv.!TM"ղF7ǖSf/N鿶Mwpf@foL2> !_/dҶjOVSjwI*,ǍXk9Jz-NFm37l,41{|"Y2H/=|,$r]C ܙW;iTȃu. x;][t("&1xj%-^P1 a4;ֹ|G쳧EUe aao'~H"y:M"D=+.O/ܫ}%Zn.ӴJ1\)ϲ +?F[DU xo.+F%Oy_ʉ{fMA#^fvqTDeeO{c8Kzn48cinf%B؋V"gÙB9kfDJt !K/ECmJӠYñLy\AvٞMSJ1K0Pi`hi*i0]#P%:pMP(y̧br+' -VP#I ]SͯA 939kVrq%GO;1K\rzUOhXaIN0lN`ˋq xj|LJ$>_:Fi->`h)i 8G%BdOzt42uF1;AY$]p(v mNY)"JlAF^$4Pwf_#&3yDj.V%zvXԌAZJLK_ЂJ-5{l-e߇5+7 ].$'H/A5Zު$pKlW:*g+zo;ϰ=ĝ?5C7 6mTh>NQ ^ Kx-WR_d11,z9:͂IR["cptGbEVX>Q{O18ۡuokǶ򎫥6茉]Mka!h: AV uKRS<׋D^R!Cead{p@ІwE٘`* ӌ9nAR7m>GY= NY RgBD靷i]CȖf`Ŗ $\#:jF?XHTGQZ-1>Giim L:^O*:˛:4d] = ; (6gm~MHM)bon{z\[?aQyWJare%b9{ yZ BF~R_f=Xd<=J݉;%R:/#p>Ws>""+5Aޫ|pU>˽YF ėY5}_+r0KY֬x/+g}YOKB>Y&9-,Q4!Bu+ x\tOhT="|:L K{x=h%fc eSAӤ03_:O篏cs"seJ y\!w<:&6ԅ8W};9$cFuVLٲ*ѕ'M(zÊ{8zhȼ '.Wc0?1mhp *Zl< .u93i% ަ1gVc~+ qkLb〓w9YV28[20hqD#Vqn\h$?V"])'d4ݺ]^nEdqB(0ԛƘ:L|ԟ)2br#))FS^)/Itg#ìY\,ҞdvtS?H歧D%I>h!{&잖aZZZ\`!+i^_P?_tK!yRiz-zSʼ x3X8H९1O?S̾Pƅ&ɔf쎐''Ar!"nVTCI'!Sj%{"Q<;3Q١t[ێw]l SמZkM%1σ}7VmErґu_,IV,M6”=!\4iREaVRUY3,K ;}ZHp~k#]6N(ﺃՒo,L\.ջ!2>lXoB# 5fA6jh=OlB7~? Zs*YئBWE>o ej]a(",g9ޕB2L5n|n-um/Ma9 ߯w)\3/rb7eEJ ) 7 _UȍSe@})H{w;+]@`1ԁM>z9%⼚zakrC5`ٜ 15_ۊ);+\^V<&i`ieh_7G3P0XBO-@[x6T(C7nzWŚ:ؓv{pz?)uՋaR{c()_?_-C0ɮIn䑢6I}}lݐdc# q|Tr):$Lsk&u@{S"G=30%8BE1`9z賉s-Y(cGtǑAiIgx>,Ģ}b{2ɯQk1R[mړU_ _z~/j\E)hF=߂b,d6O`0 .7:DHyt)[a6qځ1zGNg`nTZ]mgo{X.&=W@o=mSM6e=eSD!%s6C^%Xi:&ͯ\$񺩚g 'h|;CÊ,FB:xQi]ZE!IS.DE2w@%]U Ŋ}) EK7%Mʹ_\`i@!SP!' Hto3c#cle;Bu[]7峂cQJȷ}WqqsێX|=LIgчT#}TGᢹ$$>Cg =&!9˓г:p?ɕ?XEdQ<-K\4'Ѫ铳RчAu 3H>MP ӽ &+1{F\"M4Xq OU| 1f-9q;ڥ#n18ϖלֲҮ>|bg?W4ݿRB[IHт3(SO]@m8q8ks$Py_>` uefHw_膪G%_9DTa{;<돓-2qH[UIKwlCP`TG!ΒW|Rs\{W]JFFj1|W?~ Oԇ8[x`i>`ZA}X&L}amg "2iq¥UaYoM_!ǤFq{~1\ѿ'Rm4Sl'{dkD_4j1 .ԝFŮpPoVV7Э2@8"f-ک)E0"qv~Mb9[Wg,g N[C{AKBfMi:läyx0]eU[uﱘ̜f8w _#.!>þOwyѤʖ cQo07Ǿk޵"ilX)Tf*i<*!-%IF͸< \LW}SfPMZ(P )o! rMˈOza eᱡT1kGOrӜVo0q..d6X,g_zȮ.OdehǙ7$tՇ_c4EtL9Z<`0@&:T,w鉚C/)L%Ew9  d":B3oH.At4rO&Q 'n;xo(++BcOLm)Js%UP8qmsvF6 o00`F"_/Ph]4}c*?%g@qmA]U+諲w K-nV%⡼5jhC)2$qUϹfd+Gy7\@89Ԉ_z`w(9NY E$̝~s&!}N @E),S)ܝ2?g7ׯ9) ?X_gپ(5|6Bk7p4'Q];gJ+t>8"KD pG;AS郝snFA"kI,]i+JDX Ë6SO_p]I}f`h-8(_$o.E_u6ZY =FQ4S)$-J|e5(tJQ>#xD{}*b8yjix'W}Gtnڿ*kAʔvvt#fsD<eG!qv=[!h0\~ 3"oWZ2Im .Jd]UUtnl \c@XRD[c_&(B$(Ј̠Z8 Vr<ϷealQM$SZ+'t?Ocܓ!&v!βL (C.:k_ZDٙ:64UWW2t%M-2u#JDM5?'N.ԞvUQ*Έ0 XznL9^L ch̚;Ihꝫ5;T͝4LQK  ͝_a!1Fde+YEN%)"!mfJY'\iR'1Ja˟!'sGl4\k:M٠5ķĢtNT*ִh4 *k\;ӹ掏GҖVZ/̼>Ehh@[|ФD^h^6f:WHE |7<L)F_͍Q#N㊅Q\_}j`xC?~Vx7 a;> [P~B^EGN"|G) R#fdTya5~xAd ל~~%ϤULyLV8bJ/ÙWfmDt12G,6)H%`˿Ğa9KZÎp2u|4 =sp<{7.^d!/i'O^b.e&U=GYU\M(0{S_+o6`+NUȸT~Fz/1,(yϘbq|#ǢFR6RCŪlNFK%f ػKH/N{ zZ:c6㬌Ht4-2ufF=9{Γc&0Ûܿ OY8_f ),3.cjyx8sLcQE~#љ/3A?5<2YĒ?KcT%A̮[¥~yo&b=a<:E*sXX0Y_BiCyMhUj`)`jwN&g9~﯄5.O[ *cb>kVj<ʂgjPLw ( NO;'~t֚FlV}{f\m14=oY[9-:o+%;#CC}C=W)Pl:T*ͩW| c|EDޯgaa!htĿhbdWށ@ОSّEdT֡7Qp@ժ=%rrpТJzy90<^ҶGRX Dy@h7/J 怉dO""Z趘VЯlqty5XPVsp!` . @1" Q - 'E8AnoQ6@c ^w8g6WLy4l<%mF"N2ePU}FLdDשʹiilMlӅ>T{>l䟽Fhb 2Oh3P\7]f\&8] vՊmAegS 䅑ܦWfpEnK/U#k;s`;(mhx'Đa&B_|Kw-=DAĔ݈9Bfibs6A:22`+H[Q27a{ͳkh!K" +en21s}Cn[Pb`nS]Vvp݇i~0G)(ުYdO%Gc:=@3g_7d9YP_5B>?_mP {?`lfPOib]e>&Z D6dҥ)X*0Cŀ@Jrn̕ʝb,dyꕳGJ`'i+3B+f0F ~ }DACŝ]ՂFldހjlDl֏F\zQΔ_\ݑCi\ySb_a`4D{6L !tG0EUO0\A$"6 m^)K(յ%\ׯ-p 6[LtalRt$P,q U _[)J] 4lΙP ㏸ 0[ p!vb$'1{s3l6 b{Q*(} kHrzPK"&8}PVA}I8b5>*5>URa捋JԖog^c9ȀJWMZ+\N :;~gtP}xz(P8P;ΞD/i$yTEG<Ǻpf(HV2Pդ(Er?b0;2^.sVcisb5∆8sł4@㊼vjG& V>/Bs,a::fd'Wcy:ز.rIJ@}v }ְSށtmqx6;.Ie]ӌAH=e C* g'\WdURƜL1m~ 4 1;q@Z4e,3/Q~;h8 &gͷ̣ʚc¨Ue7Aꃢ 6ds[Vɷ-P&چg?*Oha KY2"X/]ddUHؼT27ikĶS7vKɸJf>);V%s(e--?K ?X!' ҆ײQAO-Fi.0 3 IW={;ƫ8"_(/ M.2TwMDEa(^9%p`]G~ZVk%ayJ>.ApC)^ d/1.qagiP eGYtp+\zJbWFy\Q Sq">%maK&}g!xE&?U)[HѨEẒRlnǖo&I\jN -Ϥ1(mzĸfX/vؗy !^F5,o"sF7LQ[CƏ)j$yoXԫn U025VnZ9-} )6䎥nr.YWA$qSOU"s1yßcn qMS2FcHrt?v#&;#6dpVK兒 V[u䰋5"Wc[@~^,JG(QРÅ6"ۺ t~U4Woʀ,C.(Dф^0HeEQ62]% F鰎^?n;[ف@OMdW͢H}_x^rh-`K^4M^MDc8#5")>qZm`fE?);]F0Nӏd;?x>љ ޽wbafQ2yW6@CVƚiZIEMGJWK #*z%W0Ol9j\WgPk/\fpі7->p)/wW[Gw(*gc pT.hJmZ{&,a߲6C 50Fx[壹x={l x'U_~r0*"I Ş  '{Xr=-O|M$tGtwt,mGLq0SA z$%%br!8QV/Y(y߉賝]̞¬7:BдF4o?*~*N1i5@Ycx063z+ż̠(9يbeȋ1X\tImN?Nʠu`}  !' iXFl^pKHuÌ:1\!{?[16PgT3W'%€!mUQPĈzVBA^[AQH kb'nXDuV+J4nK;d(hki(w7WEco19pe)_QDL].pO7\ceVsUz?5f| )q,Cp/"k X$AӦ~ӱE~/{ρ曆ݖq2J2[>oZŏj(҃ ";t}.r "5XwhgjFY@jVk5y3@,|={8kq~E]s 1S>䒱ܞnm:ܚWCNnh/Z.9x}+gV~*)9Gd|$iWg}c/NwsJ=WcukǙo/ BjUHc{wx QqֳMFG>A,(9YqF2 7Q%|sұVkj*Pyos mG,Vp?y]|@UVto2^(XQuny|Vwl=f,ӈ/> m (ygVk^[5~g% h-.>Ck7eB 6$+60J؉R ]ֵwh6&ACg#H/^yu^<$=j (U%F[ Z\DGBOw%Bۍm`o;8)׳r WS;iUbH5PP(ҝ%5FࠇdF_΁f&*# ǢW;ynZƖভk}L+WFL ۆlEYǤqߥdt*V҂顆LPY6?|I> V;X@0jYf:<]qa@dqZvJ86E͏`9=d&tm 6ʂFA~գPs7\{eLCM?s90ĚqHW[iZ4RtՈrNb~`1տ!LPD*$U ]`4cƿjPsoyK1hf hz,l$X}V:؋5 ꫭ7/w#n-&AkŌXCиzLALE†ĘÄAhz (S}޶؊!lT8)&4qNF'UTqWtX m/ ǧGdnHWKރN&"c]{BJns'!W%RZZuE 1obf8SI̝?’}b,|xضgɞ.FߋNNM蘃|"wuڥ?O Z֍vdj]Y|fC}}olg OYLV卭RW- ?՟֙-h9ϖ^9ksճJLVڍH.T1֕9R?N:q&fK? %Y`ks?LF[y KNL̡$=D(HgӴ ;D0ĕE>.Җ oBLE=8v> ,ث=YD DioJ4g"~&X’'$x 㸓ֳEr A1y ^=W[0σo3 ~2)ݼ39 )2ϝwG$u8nʸ{mIML %o?\u͍d]OofThf ?[!]KA"l-RCk0Aӑ[CI}ك7>y.'q+  88RY''݃-zxe(L=ZZ^~;zM'Qk_tb 6[Pcxd.Z)iKB챜0۝piLqsBۂu,1c:0 {p0h,hD`]sRJ7"B~4M_*,'0Dk'@ZHҏȿ b_?h%a4ެKQmg{x'Iɑ$B Mp!6a*5[rVХ:ENZO{7{lpEX ➋+ruG:tAbyY?a 0l6E+R|UZFONƆGf"V~;0л6An3 J>ADT!r:sWp~]ż**0{7*(EkT 6K=Ҡp/%EFL@E:_:P3CemV=@Ĕ+=\1;x+1wBSc!>UT?ʵb{`Į2~bDN| FMau @jeoFJ."yEsrWQ_'V0wwĽd_D>[8=DΟ8|A`*TwnIk]lB{ 3Ӵg5C97?xP${_ׄ_}J#aiL=b1n'r9K`G˜#ܻw}b<0-̊$ ήܛOyg:MM`ؾ"EWJ3rSD4+O?B1Q|;+8*1Yй^* p,^3Sw~ c;ܴ-3) V:z' )XV_5KT^P!ق>z?D|XheZ,!c_FKNjyr$U)ng.'Y8@,!~ ђ.'r^^B8-C,3(5bT],+O1jPeOcHZ8rOS_W2!LV/XVj#TJIIJtg9 .0דF-l3 )ƗIRĩR\SuAjnOKtX3'lc&X*@x;'d\# ᵁiS@\ӰfdBE RN>y$)+[u78S{sd<V *]ӳhPߐ8JF,6rsL.vf*M?Ų(}2kN X1G\QR:Z9 i7|0 L&-U|}v;+w7D2% =cx>xdhEvo(_&b^kRUҁXeR?̾|>L0bsx2ay$>W,|0lĸ\/: wDo(57Ҥfpbk /+~)vruۜ7Y&KRr.X h!tv.au'{NjЎ)ؗrG,Kᯁ Bn-`y]0q6s zMq_mX rR973Gh]䨯p10*MZ*ʤ״Cci h* Ă`B\9 }tyO Mlg:B^ߣmB4h{(;o*RoPQxx-x =QL0nNi<A&9h-jY7|˛xG6H1@O,Ep?-= ĄK_0F$z.cyY1Clא1w`gR?oQn;M E逿c<$-@R?o=f7\w.N=[\wyveܼr6Uw4M`R;ˊ,rs9~#9Gg?+U-8j^u9ÿu=u(ԛxt;XE!]sWuaV5:@YGy:=^ Dkc[97$n;}_ᗾsݠzDs,uB%}gmo̼5H*ތabd?NyD<Ι*m%_?۫#.+ZJ,3ouNlk͆fíV]Ϟ 3'E,\ &wt3(u;bR') Zz(sDopd|QH|[KQBpK7d^8&t&)ׄRTJU]1S b uX]akыPy3H˕hC+F'Ѣo?]O%?((o 0XqnH~yU Du+$iT@Qbw-#kS&lBHTy^렠:Ǿ|>zN%7_zHFw>u3"X&*[:~YW6֐[,|W햫"ۧ+%m2.T7#1@Qz>W" l.YBDPy7Y{mjE\ "3npLv2#H3TJ@!`l[#R$*0;SMVh/ݬNi3F _ c8uoX{Hn,7jn!+} 2Tȵ1~ZqqIpX@Vm ^(МP\3҆s\AlBbbt y{7%_ vp*gXVW1U'wY嚞>r˫`2 ?#"z&&s7mi5( nSړ##ڙvUװ?B&f߂11wEk)Am A<;As=Υ<J>ovM`ߒgX^CbTj1w&mhmfBIz ~;ЯV84t>\&fͪ.!7$~W5 l'ǁM|$FՎcs_ 8sheϋ[1,h+x -fs)m֧9VI6||ƽzwCHP.d͑Yj}Ulgƪ5`Lu@1:ݍn !k8/ @3 >5ҏh0aQGs*;^ba`(o|?,ժ!kYIWl?e? a[sTW$PgysnO[l}Y?2V򀟜ťˢ EotyUj g:Wzڧ\b88`BػrTCc6,z%"s4e- 1eF~J kIG0*3e&ེOem Qu*-M8Fi!qҙvoc6nb-:qoVS)7̳늻5_M 4) G8D3uWd< FSdM̨$V!| N(/P-2GnnJ6zl=[\x> QuʂxN4aʳ4^ [3´CS"u9P_LU ^3'F oafJ^Ï6f 6#Z FjhOQ)ښق lgzڢuA%\ST\1 .$A'SOg&jZPWyS洭H++g) B=&.F,[u@>,5@ A]XƶEXSVf:`OKv3)K\خ~`bE4,(FT]޺T߮_a  sf;t!iR^NÏ4`^íemVZScf}`Y4*wb :1T8rX_;_LJF5A8_0ka*tVw46O)?d%7%lÐRjs:Pay\va:BpMnF4T]bގ<9 +ؼ8u׵Ǝ;pC&͟{T#~'e_*%Q/''mARA kO]/3|-9c@\d`x$ZD]*T8 ӭ)ՋLC KυHPWLbw!An   p9nb x'@(P!fv\:j&Ťrl1TΖ) !=QUu /J}WYX;/\bu걷 ei:dN_2c8^I!ck;D~p3%gx9ghQ"dZ'f&\L< NRҟ;ϱ90֢{+9}Y9m*E'(e w43컇v Fa PLq7Xӆˉ^SL. il.,h`AFų AuUzs "/A>P/Dr[wrNT5Gߏ$N!TωJ"!m>ZZzh`4$Ҡ%yд?ju'g;ӃfR, 2/:W WNLɔ_*)p4?JF~ک@㨘[B%hsrFWU*R ka"}]Z)KfAg-=fF3bM-{Ak91"$s PT&.t6ϴVKÏ#LmvdЫ8ϢY%?J~ ʴ)WރڋࠧqMxf>"e-;vk$`0qY|Tss> ='8= kB|M~-:W|xINjd8(4R&vx)ۣ`̄nig_1g;Lna^G¡#']'J@K䁱]}73v8Gk8o{$\!TUR H3, +v) |k)P? ]uPFؠM-&`B}y) _%+AOn&nC TO} \4ȸ#'/*᥃\dڢIwߔlYs<~$T4XBF;%66R'H^a D2w_qKH_b+EMN"թׄie}l)DynM%pL$mz즛o_.!h[6B8DŽVq'JlBᨶg v ]?rgUO͎#6w0t?2a5/AI,$)XP%uźs+xQ:u]<ьE Uz<~+@x2f> bzxςʏFp|N3+I;԰f2X3( =W 8e7!P#ߵi;) \BZeù,Ji3±V)mLmf&w2'ywTZ ]A\muH n`oU$5afֽe@=k=&v@ k{F~wP5.7iDVGY(R,UfXɍvQ%i0:U4(u-698XˉFu:iv;Цpd#N4aCBei]2prGAyilӠMdk1=i:Bξm]؟8|EE (yUN${&/rEMgAW#\8 P<~gVſLx%#s+}& E9} ~ 9ar{= I5TRܢ8(ɚkײ{#xV~ >(ѱƹ&5VhBq=j?2$a4Ϧ;F/fn,Cil﫮W% |bMG{24rgՖeH2!|;&~ه!`Sme .J2n-5ir^v A].R K=|i2'/][L&aJ~0_/Tx}Y?Zd6K~0>'Hη 52-|wTMaR*m)4IAdy”F:nI.cohWd=ݵl4#*RJnѸ\kҔ<8.RK1 Y[]r_aoe>btB#ii:;hŀPBK^ w=`wQ8Ӿ9Àj4{ f6EUݨU2 ',/৴`j]V-!SLq$Hk ¿hIH! R@ I@e~}iBJl0p QIZKyU:Ƈl?[U KZE]me Wv áOsCۮŖ]Ӈ6BcG[mY\.{F--O3,pl#v}vZn]F|.ᆷS 󔊠::^V7CV7mU=W:k|r _Δ]Pq#,\Nm|Хk9R2Z =vbj5SsAMewǐ:ٓtqZ4G Ȍ̥6-l|YY/P?ZV:RspޭlF;Xɀ7cgq}Ql1QT%XA3OQ٭ 癟Ԃ{ܿD:ߘ6j⠨,zXADAuU`A4ǑpDv!0^E}(\p>ХGǢg;8WJ&A<ӊ [jump踄iB6=&H3Aaqkm[\[biٟTMn+v=ms}8QTӾTdŗ.~ | `O0L 0W$ϐ}-#ԽPť弎[3 9txkr1ts Ő}jcvWaë9~ w(KiIIs-c& `re3X)vP(UI$y3!0aBuCDYGߐY'2õˮ2%_3Ӑ`W/ խuBŽ%FLno*IGD窮j{@enœ 9'bkYUh "CW^ڔ/H6AҷLy )l0fdi`]h/Utp0tR9 RD"B.ln?q}|iPu}_XhXE wH`f:&uQV&*aղH'.E~Skj18L (L)a(7©iS>y K=B̃U;PuGYGPCFndIf$^+18$9a.g @+-8=<>Q@xnѥ}^+xVɡ ?G U$xXba’jG$4Ex"1=p:! '> ql{$gu&Iވe˧!Wn77;S M2Ɔ`628:map'U08A4&l8vxT1=R׏a#pKH&99_fN Erf^ڇ#&Q7CwD_ YE`SyqAY<|ae?d HQ_sr0 Pb6) li"ӪVVM#&9{!'(q 5lĚV!w9´|1 Jc}t!=Lp^$ 0 i×i7r^i6 KD]$3I:zͩ~ Q_nɇjO䷚8nZ{U^Su&۳TۚRQ6+ţ텠7Ada:Lty5ZI )}Q\:Vt=`lQ5Hh2nD%sjqbz60 0待1|`BH N~tʉ̳OQls!5\Ip>=y{Ȁ>4zCp"'J9OEqF8Ѓ VBllFw,~]u] i;)ʃt^q7I&W0i0>)CVMa2qpcc7W )> aA­ng>z꒧9/1> ~GeÌx 0֕ kfG?pXjUflrZ0`8Ɨ4b>Τ56 U^UL߫x2ƗrOQDǑ]TA_`1xY>Շ-\K}F7phi!q#6:}>ZFڪcf clF ">m eR+:tc9Οx7c>OvEԿdh8a %sŔ+\O3 Jrͽ"lN Daݧ?ƫڢ")7srk8Ī<˕2zb5-dlIZ JMbJbK?}g :Ο+ a3BR5 TTn%P cÅ\今(gPifz4Du=~4;3I5p[lD1' :A)5POk{՚}?WW2iڲ"،mwMH8>"nj]ߔL6jOLDTOV5;nU"a)D`Q&O'VLŰT < fj PEW!o2O0m<զ k'_lC0:B@:_^Rm$tX8]}ESZzH"]qOhEibgz_,<ձ4;>&$MY8c<>ku?[N濂77uk wJ#:zs>]1R_r[YvmDeK+ۑ>#"sP_S@Xvj揧_c ^?1<Ϙ>[t(ݨ=( $Ӭ{P-F7fa97 (6+ZGOl yA@-nn8 i8BW~&I oZZc3-(<汬م 2 LB#at J,ݘjƕǽYP73(lϦՃ~`$W乙j 9mt!$FMޝ!t `5E&+υa$kebnd$%~\+&TZ12}"f_?meKvsgGͩ"4׆httzvN#fs(*Wvf~6$|JVXKG (&{cfԆgU! sMu&?\XWlRgNOшm.&`umy4z~{i:IE3/cl.c?T$WȚ Hl)J4!,XzbXs6w,d8U3IbJJOP>M}(ekN뇘Ȯ!CiDžSa='X)61mo:)FHl'搔]>0V7U_7:k뾏 Jv)/PJIXS?[ao&D&XS"ٓ`sb-ޤ7ܰ }Z8Wl,lRAz9FMr]O "u̷(edw M n y+MD{Eh2(]~=Lj$HpЍ&oj5q  %]N)ݚic|?+%}5X|&yRlg}%1O0W]R#@A5C]ċfnm^ d4ʞErް+Mh(Ar14;;Wl ֳ;ADJӐ'g_ػTAUFg1>G q+q FR;\$X8'Y:ה:?$;usZ;IŒAV֩crk`n3iI'8]'23ɕ'Ymb؞~;HQi6W9k4B !rIUj08Y)ml\/ƶLsKo]lPQ^5"U-,sWT s5C ;b*) Ÿ`W59%BӖ\e4~.酻xJ< mB ϒǘt t+vFo[NCŭ6>ZyKf 0T}ԧck0b|+P7y_ ~$T6hj/qc - w>d_=8^S{ /0TkH#:,tܘJ$KzNop$lhjX P u{QMU#]De`dTR l! W5&ĉ)[eN<1ۦVTx5kz!OyuOtHV*Clbo|@$E:>ڬt,[bRs q d,U! wjw}zzs|uruq'8S=,\:xzskρG٢V Ϧek7!Z!۴9(Њ`$mFS.B"oRvŀtk-fOCɑcs5337 9 ľ| 2L#:7hc +sIJr;n8Gvn~!$v*S/7뾗Ld8T6՜30!ZWC‧LPPDk%%hzBHNpE݌if@~{[st m%]YF6>L D M>ԘSԚ,RlPN2^۞N yi}_gcd7B$@y8aw K9 ع'NQ<0M ECteQ*ztE*&SB%`p oY>sgQlf\ץjM*, CjAQXC"XA\Eٍv[ރ/0e ܈T.٘D2sIBb~CZr9vKM2C)=FM3%9mUO #^V h:.@O9>j1`SظʣVM3pFB2%%$) |X9%ҟ]{ʘJMVbG~-64d6!Pwf=kĭۓU)4ݼS+>1Je^!DC= >yz km3TA$9ӱac]t s֖ sɬuaܽ#u @! _z#eb/LjE \Njg_i #CA8l&6s#|2fnOPl#2;JHH'*%֫Ea @]h P.8n͸H"/ ֏\N(sT׏368W\ހOL[(B 'َ $K۲o r ǐ^liϧҡ-Mj!$rY2w\3+FVIP-4hG^A'Ϗ@z*U+{=Xc>j8Z݄N_Ӊ^]%gު'&R)WzCYk_ -j o3x<h17&B#gLzy" ' I'TT2 \ }U9(|KTw*qFꞔnlE̘3̕YyCڤCwaK GN/#L|# @:tM3z_ю"^h;q~rbVz42ȨĊR`6c1X*6;dh4:cӘI?kOA\^jtLp-_Z"}kW"i FMlq-0(_iD(lHf|94u3y;;`僉[TA]+(_i1m1a:r^~$qgn45ePtD2TIfcH#u?VX5+#C?31垨js2`N]KP1rw=.**G|IyL VWmWRů㧧#+( Pp/h)f)]H 1z>Jd/`cC_p4tMz^ mEŷy?/Dsx 8EW$%^\C)K}Q叙67-LC8(x#0pW{i &{|݂w[ sƣ/= `YdBrVs0i^0H\ ȏKc Jc$e 1= A[һPԳl^Vv}%}ѡ H=E{)hI =TpPiNɫBLk`:osЛE)ļqm*_$rX]c(?N.7OD_h=bO> g|ˊa*6pMq9_*%MVSr6Uo/K[`僡l ÆcvsN17fARL)xEQW\w%Ζ$gd% c:T? =?Y0d~z*‚ye!"H?/\|)bn XL(7^em56m5ĚgNbCPl]OQt4v37׹lS)JQt5⸷7v4 FR:W˅%5f`Yf :؞?L(36.piwg[N٪XwNf !ICuKhu#8%X:"w9xuTHMI1fׅkn-5&d"}m)[[~ I2NQwvfvzSj&tbBYMVFĉY8D:C˜|Hq0N")pPM.elƑ#tiŵ[+A:\d4˔d#毕4fcz 6[,8 w\-TDL[GE+e3w '_ %'mn{T]O c0w(A(6Z?-CSL.ѬF@Gkw/3)qԽKKug5Mk{hݞ/!oOYu N@Vv@6io$ 6²IVn9{!v} $+}zBQMd eb(0{G=PH'u|(9"5ɣ;.7oK9ޭ(Ie QěBA;":a*{r@T@" &#p[ٶ #?^>ZNXb>0f,z-FYY4k @(M1UyȯwH_‚$Rσq#BgV R1Ƶkbmr.2qOդ[(Ys7I͙98ѢYE>eqŵipyz^-J">E.e7R|\DΡ)ʥ@QJik2'ڷw&OUXV1V.Q>AC)SK3:c 1%d>p}Y [fD:0HslX)(Cm/dg05qlχyyE&{ P#A~QDz̦_Sİk?~MNEao=W~HY1P4߿r; 6heVvr;-]<H#Ğ0>ySp7͕'w[W%;-DSQ5IF2q@})ormM:UY2S%1Kz g|cxʷDG2%FK"<(J0 ^ *%|@,"#x^OеIoDzrlDkѵOp1H1Sĸv(xAd4T8G<$$ٽN(܅Zuq~S띡Գi}@^8'D#Br\K2,;VZ{襰ւj2/d Jq>Lx׃ //@Y2m}c~n̥-X rygI[, -ͶJ~6n/⻮mFHlUﴍ`?6R{LjynM 8_T57?Z'58Uq#i \$|Yu $<&D*=h FK,H3iD54.gYBo-< { %||^̻8p~>:ntIFN[' c*~JE|si ^RAhˮ@FuNb &/-A>H{/_wg@juN]mQcq9[#Sw'O7]5kk鰣]ilR_$Pt Xً̑rE`݅W ֘w@*~J Bc$UD4< 1W~Y0WVb- cVMcEaWh -0 yalN Ix^6 dyd3Ub Fp<#9T"4QvA8r` TxbE=tL ?:J-;饝*d*Λg. 9S*._[Jh|=ѹxG_-jaO>Q N=L:y&:vL0{,T .W̞z~K>~ҍQFb (E#aXwr7)'U#uG^R2w[]ΏE]mig(ĥ?sm/T,35^ kO<&q j@Yኆ A}zhFlh){ؖMDHj4s%BU_Yjt'$[ OV`=Pw乺Zu5sY҂RN7\:l=zH!ٱW}C-lߣ<(ϊPz7B_G\ .ydsRoί!ąEthwB{#n"_!:LJ߲0dK&6{V3K^/Y+])VU:o#Ń2E۟$:to85PB*jjq6WggeT@o&0lfPڕB Qd;,`_U $뜊4R<3jƀaW!)dg`0׸w "ӓU{H^<,"9vvF&͙!#Ҫ~"X1(o9W)ATikLıphr)k~ض^x54q $,yt~LSTE{( ߄"5QrV\PA#M ]KY?OnT/Tw3i4%`/*p66P-  q-4=")ҁ*~k]k yjnW0)7#a+vM⯲綡¯ - kOdJKv 6?zoZ,1x°vaЏ*҃y,AE,36c2NVS|_cxG%dB] :O٠?C;J M9lkUi=$CFkӢ̾~(*T Keg™{2jPۋ9M`sb*B&]ٷ?C2RsDYª8b*Aci7~#:gJ.v,b.pU QSmBEJ@ cE2(v?D<Ոd68lkZdB֠|g0xSVA)Sn+3+Xx~'D Apmb~$L .2@+C3bWkSjl4YyOĝ*P!d{FfTN=zi']Ntۙ'n}IB'CێԠ|02tb1 ɺ=1*o6I QiN#pk bomG֡^z:x"uGyKM qDn.$&`4ȓS5B]t< ܍I08YwmaY&7tpb!t)WyV`CtX#twqg.(jzy}f[Wk7!]%P}7C`CYWe@dno vrP7J$۫w+z|ؒ_W6bv- I8cˁ%9Rq0$S5u[/$ЇYYϸ;۰E90k_`DMà%s1][D偠bJDԉٽ{[{t[ Z^*wu F;6/o~*09aԐvpv`.&yJ9ʂ8tG(]A#q+I~g,gePt˙1fmi]o%Mpjg({ID!~@0 u<PPgŘTP~-'DZSSlVP %ɔLB4`ԇGO& spiCzX'K=SYh[[arj=z•Ci]v:W#o+3v-VgNsx-[ח4pjUFxhEBf9ñJZ #_NXg+<2|E|U;%3x{k"࠽v7BQң7'Qovek.%0tߪp_EDkuhU0k? QEjNS;VJzQ7wA2O}Zl(3_Wz8Cnn*H!q`B4}gWsi4@Uɂ_Q$3δQI-DAT\(*ݔӲWHDGԕ6]6D^4y'g%5:@oҾj.t?e3h *3[Euq1k( CHV;᳊~SCrTXf&>PvM&P|?E DcmAʱ71llk}ƻG7i_7,yϖJfLQuzxZJJy&ڰ!%͏VLWE!qOBR*y2a΀r*$j ij7G|oF3Üf~\0lH}ރ)i'Ecb3W{.%@lFk>[r0Ym:ʳ+ [ˁ<B'jp#1@y۲ {rm8m}DX4tv7W Y}UZ$WhGX˘j\1V 7ڤbrpUI7& "aI9Z/k⾒\?Rvy Cё\$r2BD#gyކYg俛VhEa-qc?oVD۔rBwfDO%Jn*sN"_XE$^ 1 =uoр15!Qdd7~3>uB۽&"<?.Xk1]g2bBœh>)輬ȳI1)nN37E$I6bBy BfJ|z2lLj{ JGĚ@gٔif8z@MW`@rpG7< 0?NfW6(Fn~Hun ǠtJYY_ph,IWO[}^-4G:Sa0{Ԥ0 SX!:gp∗ ?[0/[b/3Tr\x"Kxa3};$= x)0g>VlpRD9t Ew >Oh/^BIi4r|}A'4mwASJ\UѢ;R#7&3,h@[[6NGSL;'#_# :lFgq7ѭQ5d6lRd:DtNJr"E}>(!18V#=nI2J kR F_X޺h SAVF>9jv4}z?uJ[";onnCzyhx>.ɢV<>~tGb O(9R :B DTdJc-EfE^U\cL =^p| X[#UQǕ+l2-PZǿ8L0Wl:M|%%bQ؞w`P=e =SDwOBԆiMJ \lz$zޥy1_"+i"򦄫ϹS)պ G8û!vϐ&9jcsTgh]u^xxY=N0\)W>n-7'(ޅ;Hd=m+b9vI𶈖jkIشDdKBcGdMwBV!$ͯ\H}}6O]Ubl~mD%t/*ۉf_Z4X *+ҎB^,[zHr$7ד'BxGfgǻf?t?vwmGMz)6$|i0# so̘ ʘ:淿z9H*w'[RZB7"8$"Z6kLz;3ëYވ-"%$:4F(ȑ:wYCc+f]}|Kr$k hbc~|ؐչw?:!q{2n a#!ŪGGbE9n3+5p$Ev|wv3C,úm"!) {\QDŅ4 뾧T5D&;6cE[kXcL+Z%o؂iHݐF?"bD^r?;2.\D67&k1Gx K@ xou:CV<9%P֔2*K3!},2p,MPnn$w@ud w.HXK;s1F^c-CI8kך4M/iNRip{vJ$H̿qMXB KwVen,YQ@z];"ֵr順³ʏT[&l?R*,\+U@[r]i N^s?,₋Fݢ84AIlYJOcG>n~YOA)uf$ AFNzگm+ӃVhYZ> /F0T-Lp *Ζۻ][n0 hjݦ.oMrJ0j}gZQ+aD$FѐH'l@^eH+i?o% դsP tſoŴN>4ܖ]lD,j8?Vv#̩~{ \wj} phdDc6~Tmmoq{Pk%_ =SB>-} d3H=i?BU3 Q2TJ1C2 ©*AcLrw_E 0̙Ƴh;Q ]a1ߎ @ˣzBQ%F~BcycQܯevƐ,S|B&S,cS"iÞ0Z`8!:,ZnuE2ˆGg[)Mv5}|1_0(.0JuS%,D/w@7+tN'n5{te7?Oa1/P0lF[L< {UjDf/Ib޷1΢tt,mWy3ӓH;fd..gI^94 4Y?W{Ste5FuqƼbȦEJpy,|tRlҎ>Ī{FRVfx+V$DdqAHD,We0*~9nfj;PHbSho%Z$O>pi-i*Iy;F?ӥ&Iq9:x1.^1*[£ ՝UI=="Ɗk>Qruch+vxIlWuPOMֺ}uw5~'a}>^daX|5?͈VÕFPhKKU169qI<:#RU+ I!xA?;튨a^j:l_ Gl3 >`pӤk$:4u CY/i@R6 ZArP/&3W<d[YuG*0qN64pNCϞt{,Q"y%HUu&qW}+H8A/@6 -svZdG"J4v Ѐ) rއ%f0GƤD-Ii WcQbk$z.OBi9^#Km6[ԎNժ;Z |~"Hx ~\Z>=oV(\XˋV'lnYQv*ʶ]@,SsHJr&R$ IgP^_犸)m vSFw`CRa֖B<")V^9E_ (#τ]|LU:֙V$ B"EǟDJc͝-iE'ӛ$fW(-` YJG+(`#is>t1|fBlS۵ENᮿJ`cS)߳|IysD69J%V{k89#L?W3w.c{?Z_bѥljWFRLЬy Qեɫ<6Qe[J]y UFTZD|Β *|MɺĐ V*XT]e8;lk:$NAV5)mwBŅ/fzu+*:B<ۦrcgE"S2XxqI";]{oBuAՔ ?µchD{cCB0T?[@|p3洃NK#UnKk %m߲%䇣f#a-yL)A5Y4GOHׄ5m+aqFh}0Š&{,QtN 4GB|r2p"0b|=xfzG}M&,l_yq mb̗4ڴ׷Rb\EpMWL֔)0u k-lPw CF1X靶(-\K!tC4fNNj}:cJ^\4rЁAs\;l  `LiމF'0!!ji{VxJ5`]=w183=6rE -QPޅ]p<$h+;k(+ӎм^/'g#|(oOŰ,;Sb>FJ۞/G>yY 4:=aC/$b2s>ONR4ng6Wk֩>.N8zW":ϻ<%Kd8P=Ѯ,$o+ J:B փX!J|Ut\74oF<[%V}u=<K1NWB [ʘL+l{9=8 k;f3:d:He{ =R612˭(T2_J$O+̣<7„ DBJIqG~|{n~iJԈvܸGNݗxorLELd: f]FyH9hXT2b_vv Y]Qʮ:k4L&!X;fT7k,$Pon.?`V_>̠Ͷ#L=YzU~pҙ#ő3beyA>~f[ )B'eڸ*іxxӊ s&Cu>1mUU#zt)Vtǚ>OjFH1Z'';S+N+3òrěޒ`+٧x+M4dٲ{a6c#i6~[W RͣtmT9q SC\{A_)4m$吞c~6<<%3^_4L0ļg 3APYp!G9XfxUtv&oGN@s8+p|5.O='E `5mqDݴ25 nh&k[? Yd7n)WIQ"'/I,_$Ϗ߹0w1vn~󕻪m̌zc.{V*JcNˇs=c>$Ql=6낿?ۉ W@XPѪĘ8/yiXwV^e+u!fD0r+J9Vj1@C]6xh<,N[3Go !YUTq–M>S1_Dg1d@>lsk@p&W\CGֈ踠bYy~͝Uo(C6|0HN~ߒSʵZz: '"lò@ {vHiOj ջONYMF8{f`Ko-ҷypO.3|B4x], NdM4L?]z g3u=pr!j RLpƧI8EHE24!k)띥n SL[K+ {ذ~l,EB@0I͚{lmfuԏxOs X  bGoܣè MSއC]VugEXȶR/a_;NwxVHws/x4 ~0Z&r.,lQ$e݄.ق.BN_U hB9j<ԏh!^vc'ujlSKVvy+QNro%coE(U#U4̚3C1xA:|Y,. `[.f:M/pz|9|]4EmBΐ0@' 5~JّҲ) ̭5ȕqo YxT'+&@ @utQY"g. e;g ED9YdjԆ7XN=ZԬF e>?GGuʔ'q^/g(gbFe8SlH&>kT45qO΀nziC-{ r_t>C=æV_LtIP|S|猫g")xGcGumTaJGhikv%R~H7jzwD $=4ھak/]*>x2?^}3(Nu.ik.7ISkz`qpó>"Ytt]`0xDv&J5/BϜ*,ٿ31@Kp[1SbE/a 0LQW'4/#ղRX+U"}mI Nqc w#<._}S'קkf}*6,0I lM%0K/cQx"|- *xB.=UV=l_V&DKO9&܂,s{"X>[- X["΃PT6GZ.d;zu GXZ9s$2ms2"p'~X&ՂU7HLWCbqiIQhy$1;LQkW ]H_d=n+WmEomgpF^>4טokKhۂӪxMg%`NPhY0?<wDyK%DNy#}jFm"'eXW F_%NDZ4pc> Bj2]qj{}G|ePRBPF- y N'[] HT*̛[;FН~VQ cQJ}gEz\OQU> ^XέyR0G2KjYAMŝKG9CN527AI׭K 5yӧZ? "Qlr/,/oܳtUF7S'p9ȟ2鴯"L$iU(sA^hQ}.EU!Ĝb&h5dO^?Pbe(p%tM>wS[90G 8,qte[toOWr($oG7[)ѻ^Vl [p51ѤB̧YQPTuF 2y8_邪~Pmѐ0oXr`b6rW {1Z*oLtTByS()#;fYNOn#B;.ɣi#} 9+d|20DHn̑eH%gهe@4~Ux1^sbRL.L"v&&ԔQHR9|܄dG OzFl-:1fqmb)XC>Y0ſ]ُ"q͞jiYR Q6`ZW^/:&F~*OvY~ߑ1,$pp&n1h8&*#t!j<}G@rr)UHT~,yjXU%'um)6əMEmr.\[ }ܗWNrAAz<2t[Q]z^~tKsVS>  kmGqhI,I|@Q/o)QGpݱ n/ij"t=YyBԳEi=ʔ"q7=ǥeM/Si HL׏hmiIZ>KEvlkwmufg̼fpz!0Ŋ_gZVxluX%tuPs4U 0*<>}HL@A X-6:DTod-0 \0¸t=,V(DH`[.H;SdFчiW_%=5}?D3U:==N6a̔CAFE8WTT9:H+A'?[Hn>1Z,6%>Bf\ q8 WB8r fvxԬ PD'R)=N2g8``c2K#8!I;q'䖚] Lvʭ[#41_r6gsՀZMuOid!}ʍjܳd)*tCyunüSV \98/шL_#Rpe ug"_8u{ZZ۩x㽖kbfs+2V[:Ǒ8QR~D:c6V8EmR $ukzN Te0R>=ʬ].E|g@"C{\< )6ϿWfdu#2he78v|#^"0\i O %پE,S,F!+͵9l%k+/nنx +~Z[s5(ñdKE;lgsSiSžۧa{C'^K#Mrw9v61zN98Mk26YbT pIe/UTS ~"Ư$ *Z'}A`\[8%?gvjypVyHYO~Ӯ:rvjf^ƾ6bk=?84Jy]2ʈ‰mr …+tM@O<ت4>;Ż@*i L`n#|B-Fg:\bxYJ^݁iBgҊ@"T PY4tezd3n4'"]rEg)6%_IȰJrkviY\ |wCD3$Z_S+hXSVigfAYZ5&HH CDr4 Jl;U\ }CvsC!aY`Dq[d|Ci ̶Xѭ}龇;G3tJl>5tMV,nЇ$Xd+Y96n}kѤ!p2I-&Mw 綾, Ap$OkWRPIcy[ T]ᆦ#fo1a9De7t~M7疠cBB޼M3ʙVn$av};x@?ŁF!A}ȝT3e"% 8/"/KebŒ ?sǬ[g/ѓ7RhohLx6.RQ<5X` RM5R; Pԙz 8ZTEg7TkVD?$fkmMe4ܛ۠7cKlt\!{t1.z:M]ҜwrIYCaxGwC]L XkawM\ OYBTy `w9GQTH#˒ )$y'Kֹ8QHǻ #LڏG%T7u Haw`k?_V Ӻ 6?JҺKs(O4BA _P{NVoy cꨤ^Fۂ,yYen 啒@HWK5MSk=]$h; B:TAöddN47,<$n7;FfB?*o\(Nǥ r]$t?6sA9MHn{vbZNh8~hgeYp\6A+5UiPLH*zu`GM`ݯML\3³zĢ;A§q0Ezs~X' Q~kc7pRtjZ az-ygteJpS=ѡPOQWW2}D%}Kg#(S(eK=.FvU4"p|P\pᎸ å*ڸU;w&3Px3>TSXEZe˩/ IoyC0hWy3ča@f5E!lS6_TPuwńݙ<+_z!?f,J!`v 1k.?uIAoT&H@]qoWH#K%2 yp.ij/p e-I)ˀIϣV d #n6c*{eM!Ĝ'T/j&o;ԇϦ<Ҫ1q0wr)W^O*O^1YrjP $P`!1{kۋ iX|Qȫ̬sC-"C>"/ @ F6>} _ Gdv?*0l+ d1$-_Y~97gN\̝Lg!zIj운S?Ϛs"bEʚy$^֧'&Huk~A 0VH^ D<I?zX6qBC&6,数NMqɬL_^U/ɼHy0݊u J@x](nTFa\B u;W=lbK9 14?omĮk8A9;6ԥm^ZXdT+#;=/;+z+T1E=|Ȋ9l3I񮐱/jZz#nţڿVB{DVIߐ?o'K {(w x$ ~OI<7qCnr2 AۍU /s%6}R}~=Dʫu[8ܰ>( 7R։0Q3q`girdJYgcOTy m{N ҈LU~V4U$(]Ċnb1b C|#w:)Rs)O%ZuV| r}Bh%/bVj4|dSMZeM7=U:t=ˆIGi*iK lR$xgĘ,bKV%V;qhl4w#{Pn?XG"Zr.TNh0 h~v)֒c -[S{υ9kUBT_Q(<;으bDoYFz=I.?+vmX9?t~RFJ`){zw.Q?zfW IFh` 7yE%~O7$eqF0JpVlޖOsܕu@窰}X0S80P慸ڦ<J.֞nlr%|c6:Bz,'r{McZ>CUGAdXF*\{!%$7Wެ%>*Z<9"\395tnϚ\ X->/ЫIcNNBS-"qCv'ٸsZ0dmz-J<{n7+{x +Puo煶6ffQ-bNL!zA0>K?Vi13[5P2i"+?ǢZf-o;ED|{UPɒ]]K7R=.okSEiHxZrNanJj7Pշpcf wՋGovKqm&H|o0 Sz(<*tH*4򨘎c!^k5xдK CcIe;8;yK Wf@ԬjrV!s"r2 KL~~B}xZsFҷv$KE~jK0,aw]?T7aUxd·ֻ6r\mvVޛmWнF$V -\'**gH{eu$e L0Aα==ldp6u |pĸ1ŹSs%\f)1HW -skߍv~9W+or#DWZ}f)Ӵպ.Nݼ>,q!@-( f@a<8&71j`ZFX& $s6`*c FkLR_=^uj>ɇGM('(\v]MP1ڧQWoD6HBeӕy.BI&ܵ&1yuF127=Kis][V@4|kzwj>=4(Mg׫iAIS5bvg ^OJFN槨VpHJi`g/W C4fFŘ%gca <` 3)^:x9Hx?uoC# J)XpձvN>=nL#EŧO^Mp ݶ7odPΩC_ 6>ELY'z f*Ȳ;{>;n6+)сhXm,##"lV"v7ZBһ%zYƬ<xfؚOTin"DjYI4ĄG^XGrQEa+w brvD]Y(-6| !D!Vӑ'Ѱ!Ϗ[Y^Z̆!8~BmhoG8$_!'K ա'T$!z RCqms]tT`'YI` hG= qO:/"5 N>n /Rni r)O^ѬvwDy> 7$;گV[1%<mj(OC-BqMbnGIl5cKݽ@DuQP0xX> Gt){ЅvԜ~yܽk0 v`)=_vTh&FxVm15}*J|&"*MZϷ^!FhUJ*fi m'l垂TW [5Lzݏ~vsKu+Vq#Em: #ӝ K+{>yYWQqn =þ=D_ȨI1$0" Iʈ|=kpD$[Ѥ۸ vۡ 0/1J =Ce6~cYmBDZ%doA) OLڣ6ARZ KJV&*J:xmmCxٸ3^al+"c-Ae)[t PdZpvwabWn:4su>g;quI23 B@b>hbVjص_*94\ X$&t*5эm)FF"7xv|LjU#  VVA4 8trΉu%.;K(ɜ·qoLgا`60v>p"7  Kj_7'p>'%gYZ"}~/CYj,+1ݙ4CkXߞ6eʭ*GW'uM3]Fm8aU"6͕ S*&} wnd<fGʝs_l-(͠Qo;Fs1J_h[O;`΂;;|ʣ{ъh€:-cUwE'$=iQCzh (V_r#rH_6YTerQ et]& =h3]Yyg7wWu/O%txӼ*6$wNB{J"yAe]̀p#yi:-I{8DD{ ? zg-eHZM^%!yINA@|V+ؽyi; eurqEQ$i`c~$262ͤ*M^Y/^%&߸\z\5嫩,ZW]ya&!ؿ+NUK1m'g 2q Id]*Ȁy;?(E|@Wq`F `GzorH#FȈ)]\1oեsߖ=Xt4vwz"bhrS#2Cq{[/Dz̩xʫ o4e8cv16;g0p|mMqT7#TiCT 1/Aa0 $bl {B85%3% 'J住P <Ӱ ]k[[U>T6VųWuc}%"4ƠC:fz?0I1Ƽ(L?s4lt"xU^:Jy *jE3ve b+S#BdƒG;<\.P.hE4F=>Ec\ NzW =$nKZP?ά݅0v >H.9º9jgHDk9UHm!;(>&dظ=&MmIs `p(~2g|ar"qNd܄(GǙ23?~e `aq᳖oN >WsT z?cψ1zmMe5?U{M2*s},^_)_TjɦUUcwc,\Z,cos@7Q XAK  y-/ډ嵾wLK| xiZFof_igs0I"̴j9Sy bb9ݶ7L6 Kf>-20yOʬ^M?NF4aԴ D(<埒f=/?󒼵^lR4`БƵJVKV[0U,}Ud t ";%9zx$_h hO" iP( njũ!qt\̏c{hm~ bNB_3MYEl`ĸ6Skta U"|G6fa1֭gBoux >8zxq g5Un.̣Hxwf{Zč_Ҳh6b.cVRfkFGk"gGa:)TsM v: u- 0 g $32){źh\ir5BR{@oewox[U[b(GO+ _"Ɗ`-pC\*|="ǿ;.1CSCՒ>,*B* qfd)sw9M,Uw}RAp hEhUI\Z-b}S%P_6 `U0؁.ml_>tHnDql'k&9 J-JH#xry҄YqG̑A&99œMiy@3Œv-2F9 4(V@uZ:ȄrȯQǵUrfꉬʷ0ީW^k/KpODR?5(ȗ$Ԣ2g$(n/HFzL@Ͱ*KCoX7>CX0ώ!ÏK8% %W(Wr0NW>!WZ6)Ӹ'] _ A>+0Y֐nYf//Y7!1@}&Q],x6㦥\ AOOAmH~ǁOL՟{̃][f`a y:g; _ffP$$ J›h>$4;aȷ4k<}E i|QV%BE~t:G ֚?մ29LO ,l%{;UTF[ Q$L W{p*:&hAGB66:YE ;Vf=`F׮nKZ=Pюf5bvȳmfW+ 4 jg-R}%[.J&s{Mg]>ҭQe?GbU@lc%Iր̞}btnl)R2¬]}<їa{1˩~Q͎Cp5 ⹤& Z5j2}ra?{s=tC3Y^c62ÚTi>+K\L;1!YCL(nK"CVDDoQg`G}\Akޓ1ui 3+cS3ew0eR%d:1Cx-LqR)2Q7;xuTl ̈SdsX'.QT~G'MkI& C ~"U?/ l@-M4 Q#Y &b4~AZ62lH ^-ּx&I, G|roaD7T\Ln.x1R\2#_`OO,g,zN9kb^^o"s$9ٌaDq߹,&>61OFaf MxDKEu"EFh7$Չ'K:qrc5$䭶`T i9!PfBQg6.2 .ςA6MV(8lz8_w.'udOH8>? w࠹ u+(Z~3>^[y9&ʗi* $Ah,L8~| EN@Eȱ NEI@UgucmgWs^ZS!DQLE=.;.nN ؘ!u<7P V/5xakmv*xO"˟uŞAed; kS!`]*%ȅOr|z6s`b,BEWaPރPrt. T˵&gꞡ˟q@'Hr0i1Vy5t]Sܾ_"O)qcJ^,&9TT/DXJz?=G rAˤwj''8bHW-M\ n TUf>I>1DfE.i)/3c  Ъݵ5#Cތ XOE99`d% e#IŶ$ +(@nr3+ΏN+[D~pgYo{;o}zȵsPxB9kKwrt*Vt# /~8 zX#Y\;ͫrA+i ;MYOKwtC@Lr19xQ4*id3k-V}b'~HlrYzy,fdT?a9IjP5ׅuFGCf4t-Oy`x1iQ`Z%Qf/`m"(t9'HFBqX@#>hzhDPT/Z2q#M$M= [Z-*U?Qސ77WX )θcE/]wuClB=.fXb;IWLt@ɑѴ&?$3V{/^aN,\'nwsu{DJ>w"m<#Ƨorka'CG-{&QzHKso7Ers:Nn{839?_Oo^k21.:R񴌳vw{ =Cs`vSVbDμ_5 ar]&)WNAf o>_@(zj5a 9FDqJxrn5 ~*dzj6ٮ #Jv-A0y^׳Lf+???)mV%xfxك@p-d{NyOYH !YJbU,(8BoV–iwU8ڐE9D,1}7#$ lхI7)I+P4T$ J.|R8g9[MXVhEAؒ6,Zq{H4B#sA(XFci;xP@גO\i%FRO| [zP30Áכ/#g6=vV4WPWK1b$JFv?*֏H[HQ(J8(w.Dm)]*\hgCPr&(3#x92[tms..G#',)Wy0 cœY@%Uʱ(1~)3si͑36t#?zr(®}*%зWHg*Y=-ي.@9^%hz6:+C/5ΊѸ2K X7Z,E@U#H0;POߣ.GE@LQ)puٵ`ť !??JB妊ņqod-3HN#ծ5ͯ-d -?yތut=!儧 oܻ`[:|Eh.^ՐUVjB$ xD!Q՛iv%iPDn k$t']>&jX.rfoF.; hG[jG|hhi U‰w [vLgk~b4IB*\th3>Ja&q9_PR2ҦR J( xn'(9C@|ѳʥH(%9-¶NԞ.T? A :sK*YaE 5^ u`aek{䙠{ O;ջ(9an['aEsUtsG}5ͺgG?3G2éW%Gf:{8$m=GeVtfֵꏫ. dWp8}H&;-=xy:Tt}cՔCP0$x7cZkCH7 2,!HjmRT)57\jvfc`z.E 48* tK0+-#Zrx7aU-"XHi)o6ۜi1@Yc e=nghODF ]tG tV9w6<E 31M30UTbC1944MkʌH}Ӧ;2hG-+Uk[! ݽ8xSTб,o:sjNkV`{ӚD+oXu5wDtmpp=ta1įMų8Zfр.e ,:Y4@F/C}P1t̼``#ˡm~bwKa9Z SqhY'GŤhz*ל1O$ zf#NdO,K%ǃX_%V, j$R?k9VƇـ$kW\a3=&("1DQ.(J8Jd tg.N(/]֓=m$ͻ@W0{.!2Vr;JZybRJ09* 34x\VEvGVnV.q0[ڶڇ g ![˜_sЅHЉ"e""ͤUxG1,oM0G\zt!T%  VU'"?ؘ걕EҌQ7@yY&X6ĐIV$ E2q(Lr:_< 1CڀU? p"f@,*@' ##Rq::.Z0½|vB3 B'2 (@P midP_k8}?ߏJU %NFKQmۅA^+"ςvoK^ uuEtITdP+ aݜCwR} {Nt9`R,TyBB9/>N[a]cpӝ9qk+έ;_KoU.&Mj1 u> ] 5766J섽BxQT pT_}h*gtНANvQS=V3+}.Z=0X>#1;&UN:)C,Y];nA.-mO/ˍYΨ%p`#kjdVq>DVJD"RW5㽊MTkPkLCuֱK^@9< tX1}e: "/}VZnD\ !o'wwT/V# r ۉw{<^u-+jyitJe,Bm9M^R'\5߅j盵p[ m$/\6N7 @4w K?`5=I&ŶR/ \MF 8p}//e:}ۭ8;# -ɯ6?-9\ p Uk/AZeDZ8uv^;~q!D`H׌t5l r] QAC/_BY=6KYUѷ" ܴތ}N N+~ZI`F&5RgHH2BٮbVE *4>SX/i tvhۮTH?<%׾PGJL.5cE%C{e"'2l,DŘ{ 3 Zb_]N|[m .\;@`൮cx"s!TZ?rYm Ueڑ26MOA5MctJ@/P@A+?9!p+$%`gY~ ˜^+7VXd `>9=`@# gY9ecsxTJ?D@]"!&uAodu^ ي?|:H9Hv;aef?躸 ^cܪ>}5M5ZUw!$ t' эe4OK*v٤Dv29 wv11/-]%f6 o<]Dм(AG(gxt GA4>Dͺmۓj 5}tĈ 4l>+saV:;]L2[gP>c|g?u$Y:_T]Sum:[z{ꆍ+glu $8SfmFtRaBl(̮3*ouLMbkۛ7SlPltWv^'v솑=Z2"Tm^hf Oe\i}ˈ`n(\{1Ri J;QiuW<3Td>w)o5vBv&HD?_mDN%ZcgG#m"Z@-'>?ékUiһ*"sm29+JxG_=pŎ>җ\Ȯ̶\Z@X~!Iِ2b8*JЫH:t4z?= %Rc9H]]86.1d/D/ĺn׏ &tк!Kl6ki_gigB*=6t2̘hrzsj$ amұIHw边c7R@ >Bul ;&ޡ 0E6iA qtAR0u`fڃhw;M"W0\] 7>`+GEjZ},GΏ TC&AˇeC2Ј} vSf22C81 կу]oZPH`v$f,VYX19F.Ilr)d v+Ʌgo?jo7j7N!& b&ވBvU:coDG,gnN&aҏm71g4NgaO23AYahaO.`4{)139k,P:n]*¾dw3oi21 ?A]PA=1}F0|,7렇> !G7[R=Tr1Sp W܌aTXbٓAC9Y "x6 l =m=WRUK" OOC[9b`%i_^#zfB9f^3p\2*@GVN9|zbmRdž0deGit< &m虜9[ΈP!l쐠U@::Q)*͚ ;<[dsE$E}Ş) L` >VE^b}LƑ5zOym"u85pM<.Y:^'&Ʌ,DzrnRɞYf~3p%?0dX֮~N׈ GJs [)Ԍ27p (?^As vZs2u YAyRZ'J[ƻI|e6{|MSCWrLTn*s 7Lq d*)~U֚, Mm[`ٳe(BldBY!Q)3D[' b=%#XDA9F9zXܘo7XU }ql7hӞD~C_k,wgdlЉv:|EV%+(f !1<{` -&U?5do-n> t>'DJsu VA)UBjgӼ{vQߓx t: .~m"Z/fǗ7aˋ*ә] TL'a!:q'Sr_Vp1ågCrW#7 b,BWJG/s>Hs=:I]M\n-zidSr&x L0;fb\KתO}Лpn$Uz25ˁfp:n =7D7 3LHl Wb ˯aYPyQahV"ɼ]F&l 4sf"/eWX~p {alK&ղ(R=[ׄX a5^0;ZM^u(U:1ˋY{KZ *Y|pd|\~{,%5l9|ޏLQkuNz@<~ w&%!>zc)\l-a{8vqr,Tjj~N #h,MzSVK 3mrX(hHaTFB)V׺dӁF)FEԘ2E_r;KI"X}/F+c(Q,pe-W̓<&3 cjnr<搃W]pMg\=9ߚ}QX±(a]5Ěq,͊ `3.Mjxs௶L5ri J>ۖ ݭK#4 ++>A.6|,Uo~/ *$3pKrjəd/;xL~ i_Nw "k# h%HtTıIe"EUڍȣϞKmыMH6fcf#[?XaAޕ+AJ|A1cbjI4U,)坚 _=7XNe͑ńTWLŹ{.QD {H^raHK3_ٶ :$p B#R/ԋ<4_ %2Zl6JQwy <"&~?mjat5$$phxCeXwď'f|XX-v1]^gRi;|(AeQ#̌})A9%,Tdqƍ*"֒ǐ þErf(y%E3d7y*(>׽oi1 %b=T+Xo@EbJ_XԸƉKHK֘ {kKn5.<"aFIx=bRYDu:%a|ԍ$BͺޘYW{&Z?j"tC. :ݝR'wq5:b`gi iWƘ^4,PtBKL] Ud(zxZ5)۝>&~ N܃ŭPQ\I#KYij;Y/a##ڗf=b#{es=ôBPRZH͚3(NwHn| )D"fXAAO%^E"%7?"A`̗vDSU.D娧)s2&Aw6-oi='Õa4+f6u;[E b.[un%ϓ#8Ox%Xz~hi+:2!V %b|:}bm-$3eV,46 =4ګn7]q9",R`zID(SyN}t/Wʵ֖#Y-W"qgds3bc;Lj$b[b壌bqZm4}$bm@Q-5T?H?x]_kʛoy+CD7%Oy|=:`v>( Y2gF5., 21[SjHm",Xƴ(Zp-)TYjn7}..>1}lO`N[,61|Eq.I245 wIdSϢǁ"?]&ˊ#K۫9"[z.  eV᱅$۰]0vASaZL=WF|5efLsRf!apwE&YK_Ynk˛[H޷f˸D5cd% V{dGu||_爖»p>]^m=m ?/E%.m.4+lNn_Q zaVCIFwQyL89k8F|[9Mo?2*[1߶o3ÙB;lZ_<5H ,׾Zxo_~^bԽ{3hTWcNbGnO nT , #!P?zE g+C} If3n"SOeDLU{ Ks@|!!M|yc4F"[^6ݞ8O"hE~\C[@T+ 2L%&T*VaTvW0Ԗ`R>FNfL̅[lvјtK%kdʇՁ ϴ^g9WAI%󎕡p} ysV10漄ɘ#dtC$jނv`1y^0HH/x`?Bq w*'D9Ih[9g$(9;14ǽݗ_a묺Hb+&l ʅorklEU0ҕ5]LVhe;˰TNCĖ Y0ݢC}of[Q0D@B?!503ﺵdLk˟BLeZla 眨`[H+VP5pt9.cezjM X'} #yvLxV(9fQCFYia #F|7;9X`x)=MCED2D #PSmLAhZD7dEe<~c/iF9ֳZp y0E[SEgǒl 4Ny7$"]o4kCrx탎tۓ)dÄ\;;\_ B@))4'oaty9t{p;e0/=n1(~ 4Ph(R(/{& Kȴ{ePҚ ͖nc] =chf/?ձ4_ g [¸Ny4YDOSݩ &9o4"|?4:x?@Ĵ&9C2UB'^qF}C,Rx ъ. r; ʦLiĮsrq1RR_F6 ZT.#B@qd[RTEC"Qo"i/y>+S(V)P㫏f^m|؎^E)ե!ǴDuyQ:)yoL֞JxCa*pruYv~z \c9U\iLcQ'&$pD&\Gq/+#1-%x>1-} fC;?wl) SԼwVÂd\k3!뽅zUexEtSEmBŖO+Û;>O5*c=Œ'(:Ƥ4u+)c#DZ<:f\`=#ǤDemSQbc.L4'ͧGDk*VZA҇? Gcꎊ>8 ^%Dy$gֻ$P{kʹiNjSUWhqv!+ lg)KФ mLUܤ/Ib 02Ht5ѧh"N8ѽR(u msGqh蠟a0dXl Ѓ /] \HC72ź;PCa(w۫ ۚ=nT}ȕ l%50Ef -Vxxwͱm(@{{tmi8B>/bm$TJfhiDȽ=]X7 =dC$=K^ou lEk=1hjTWIhu6λ].<,_{M̃'`&2\QV%8ʭ lĪMXt\YQsŲ(ݾ}!ll7TWouprߋk'A͉xj*;! f `ExQ|j C_‚ԁBZ)2pчp% Vx n/0嘴=typ*SSt.U^N6es+cmS E:U^yT m)'̤24l1\Gp$ܿIS=he<S`{Fdi(Sۛ |cM?m 0ICWH,=q④OJ;ٱhI,f|Z($Wx:2VL{>/`?oKAGF VXuOK/m}jjv@Eȕ&:+⚲=أ/R ۽=.mBYGKŁ[)u[w'm:x.+k<\W|L7ת 4G,J]IF)&edO&tDR[(،s-=+nn4>Jn%/DE\,)@J<8mm͎ƙԫvi5=([` b4o&15†H0РŢ|VbA%XEɊ9zdM*4zb8Ѵ&X%֍}I]}xˉj*؃fW>&,(B%ZchȝJZkTAt(F81pOPOf l>!:ZRb $%oȄq1Bﮚl i㱥81Qsvɩ>0gTXR[qw=n+e\L8b?cIVjһVΚ:u~O-;]џAY{=l&Q^ Lz۳g6E ;gA{-_/^P.G/cG ⦙۟@9k-ǡ hG+(}lJ'-Gq..Qpܒٻ%}HkҺv @]"K EbX9`Ai6HRmBJY;)gDMԐX3RuI\A+}Z*Mf67iLzIcDjCLn.~-_z=[mrYêD^MIY埗$z&|e,=Z6'0$cr*b|h4#QA?V2sB9~t eoB?vH6cA]@} ɀT=]0Ѣ3K_I[R|rL`!ᗱ7鎺!5b]¥u7I-!b5̈́|F [41~<[KˌE r ֬j,-S139 >_AYYd@VSPBsL%I۱-B3Zܐ&%C0gRʿ ={G&Άl Z;jg v~gU|欻l䌸硑ⶮhkelE}: P!A5{c1رʠ%_!nஅJI8| XQdQ|6f55z|y~ziF(LU X1']{F d %- O_yhRt|'aaQ NoZmNZ{Ё%sʗJdY)ScY Sq ( izycvPN}.jAjn|=^{S;<ϼ'k -Ju+w_n*\aDH݁5<{4w?z"]\5JKs1r~;4N_rdsFCKƮ~?}5|2'67,t[؏ڙ@F91u_<R7u;suVDLps4 Йdg4˼}Z)~2uBɗm*ǟ U7 '[&58Mhi7~k`՘ב.`np>fHVlv"ff~hn|]w[3OZ)sE?ah䋄/ωSD.egƴhk]N EI r[FbᆚA{lȵ9{&rMgpՈx63A1JLP*Lg@ Wk 1إͅS_o Nl{L<"wȶ~1%Ou!O)U+ߝHbmZ+:*pDݔoe7UǼN:ZKܵkup$c*MPv7t^^ +g07wQ_ N7~/2^:trm9ՄKs!{F-J%s%ܯTW@+_R w.&@T[ͩ S:W-{ <'̸eeCFwlK Yp*%4Z"HaX߻= ~@=>{ N2Lzmmvk%n>Gm[O߈5g{>OE?SG?O3rne|_\<\%|nSJc1/7%'uЀObu3.r&mA6CՔ=;L8ѡfw^ Ej62*LpH^Wz `ﭔnnR]%(Zz?by1 " U͠㏔@z%Csqq\(|H稓@+!X¶ ~ cϼ-g.^wmz\xihowJUKm9>Tw@IVəg Qd[qOU|AQ`ܺEptat7*HNzfj/ S}3|dܘYjPh7hy3fBAn/K5핉:Ɛ- pkZʽُZ01>HrN= zkg\^,ˆR\ ? ,dմl}I,{|+w] B~3Z O؍rRDsH\6^7ͳ5;j&?ҎvG9]݌aJ88; tރ5l{f9\wË.ţY845M\ L#;lHk֒Aar 4¿YP%gӜqkee~d?0;aOWGU<%EX{4`H SyTV52ʻ|H/0?݂~Xz%4`}T䶋ZY HR,$D6r`tJ<ʬlˑCH( <<o~TPV-$4?N*T`!r ;WW$L" {,4Q픿9qO Ɏ=@ <Yv_<)\߶,Yk8 qoXJTV_82N=&i$DJ[Zh-8ȫ! TH2YAveTͦhbU BP_8tXkC׷Q'2wjgd$> YJ03y9%3rG*ګٕ58ep E7.Փx$S/%}*R}[UH S*( sLaڑIRK>z/}&$^XkMko1=MVsq,㺰xMkujZfRBR "YQ7>F(fn}o}8炷o%sOha4nDHxPU}~58\FM0.?DtcR(kCq:jս:f~4*yot <e $sQXVse4޺+>S Te+J)[8MW57ǎymhPQ%RK+`%<9zhxO@c)~|1MTdX"U 깓Ȋ] fT>"'iVrU._aNE ȝpgXچn?Wސ=4LyNA:J䎆ODwu7ˏhKc^e2f#-?DGvXh(Wu]O-|Myg`%jX8kwzl!F/=f)YE۞Zj_`d|b*Վ'E*~P ٶNμ5U_y:c:WV]mL_[Ao.b]H2^X-RG֍Y#)x}6jB:`hh#z uɐp Jn:Bt ҳ-]@ܲQs}ɪj kOӍk$xouP8@ɏzS\&bD+oUa0|RQDC;n*w)R n1Tma`1,ܫd*9abAQ'ܝa+SD;a<K.ʇˡtmx2L÷"w[_ݤNU!n#RRF6̄ oO˕zcVt<ElhC)U'h<\?~{908M-E" Ă+7?glJ:hCt˙Qәcyٟ; 9{$ls{ff!^IѶh6gmQ↔Є̌ô yģͶ*1EZ887 a{^I"\Z`.L{,3sx j.1r v`Ņ;)vdNke ?VS.D98n\R.'3=nOleUӕz  ~}_a03އ:|7 \G0_DHO Iozqu#iLF#H p)L#]*gY|CM/s~-zUu SD-M;[}VNLdg9h$jgb ]5" O°LxO>,"yn1.)E. a&Q3]n%5T7AhxcX9G B/OeOȁD:h6 4kk,WDv'ytt>K"Y{8\7@ TڟE0d]R %"W[xO>3ɣmFD/Վz8iՒ &-6 0Us5te2ۛd0;19)ܚ6U 3RN󭧷kM yG]._T#6oP*~wsw΃)y?a*?]iɱpZNLV>|>x펦 thTVs("m% K#?,<ADX춷HX.'"l,4YjC/@ ao("MF!*g[ZL -^ZD;P*76%ރۯQmЉҞb\F/Cj٩Hށ>@bHE5Si}#<` 8^W4Xb+ /X{ K֓ QΕ!;9kT|U{>ϐhx Zdlq#K$lz`J7i-"l2w&^UDp<- ҉#W:˟ |ᳩqBIZO`MqפQ[}Muq$xC8M{y ztS R*".1⽡ whɬq])qyG1C' zԝZ%C?^}.%.0 B /U+FV7}|U{uUEީ]Ze+wWT2YϿlRp$"loܼ'''n_ϵY^~EWIH?Qg1Yw pHersQ2]aVȏ<T|RͿWDGҍ[yCYRAl0^-`kC\zuo} qyuYj !'e]QLENl ~T9cxc)h3_>gCij˔QbVLjꮛYګеDbV!+=3C"X.P#Up,m2КK Zcزwݢ[= *Biqœ/?u:W7܊xS?D- 7j 8#\"< 2pvMƽM"۪<.39:,I-B*m`CQ ){B! Z^_S#ʠrm`'׈/M#x)pWwi<~lW.$<3ˬq֛g !I֢.^j UWq%Ud5}AQEMmlP=opɁmźl*CKVQP==@zIdjINm0gX;0XXڳ=j8&5ç[KU/ w7CL% u"^ *Z)ӁXGFd-#rYD:qIzP/OJl.T؜sUtmLRN[}w3r\lx@LcIghpMȻZE "q|*T.Kވ>"-y!7LC:&-HE 6{pEp J+{P5Ƥ!SC^ӘQHU`V{k,REG*̵Բ@τ*<$ L3SH9- w ֤> nAL@GaZqi /rRz|ht~KrKQ,h Ղ1 (?yetygoUZMZsdBPGdi^or.$ܴVp~ak瑜2TmW8lW"߉}2 0՚̦xZWG1Q.&6,&7`MQ;Oa[$/7[xP?~++'1urxLq&;X7 23Fgh_О>>%fuxR#,t4%h"QVfIж9/^We;F$O; Xcim+3MN9]8TnxhQ93\_5O{N~}Rw_m9 iiӂ1a0_ٛm꨻y.Yo <(W<%$!wܩqŰjeiGWdq퐍Lyr?-TP\Fiy?X/bmA/!blU"r/ TlEny˩HdQRd34L>O8gA豠CB*9[c?lFw3%rǢ9OǼIA"{ӔFJW Bwb+53 pxrζ,ڄ &f 3oh];HmZT[0Ep){ޣ *kٙAܭp\eې=F05be)N6yCe*b73hk>Pow]jҞt,/vrpH\86FtKbG4kؼ5f4,1TD ~`L!2}|dII7v}QSxrgWTje[+'dg~;w#/2 TUw``Z3)YfV%%œ#NO%{dTňe s&.6ƵS!Aq2zA^)p[M | F2/ǰQo]Ma%:p%Qu ‘H_"C]*,C>V+;L뼁9kO 8Ir)6]e7Z0^=SWϏ!!˾_pH߶]=u_"ϖnASH#ep.ZxoF Ht$U)GtO*6 y +g¿xYN7pD>xK$ḯBN IdH=PtHU"hx4!Tqi#T8ZhJ56- =qwX"GC@v\UvD#U[j*|5`7K3}nģMR:&7sYXӍ̦L:X$TL6F t} q J`Mynw}*s\hRM#.50|YGg/wb2tmm'wnl h =r &jFUMt7T5$KP[qa]Z18^Ĺv(OS ,񛱆10W5|;'V;H (!k( ˍs68aP Rxgs닾qwc| [3Ldfm!4LО/<*uՇ߶'THQW$ވkFkoQ.1skHkMl&^.V -ff8^t#}.~FoS?eW Y yFUk3fɩp=`&.C3XJ&ZW7+ z&0;&ũ`9geN\\\!Rri׏Dh]"Qš 9%8@63/*?Q=%9Ju^#7cl0r;X\E |Α==k@03 J?yFCʨ;rT@婖冪$ٮ:P4mX7ixd>\2V/2%q*3D"ϭA)o:,ڌ`Ub@UoN?\(` p5QWXCj -8UkS‡B'0j DtK~e3aل[EM.i- _LXb>QފwBic(iw"-G5&u)F\nQUHY˚~a'(/ | F A cVpc{?(\}O7M`8w++Yϲh;GU$ ,@gOE-&!~o #=j^^JoEg5L*󄻏}S]TVF項@EsTths >76 L vDLF@/*tu -pkr]>y@қm⚕aM _o/WC"=Ga)n])Fx.zJu-4W]鏆Ѕ!LS/7""U`O$:Wۜ5XMl S/tڬS<- GuhDuUpx6yzM%3Iգa.YE_ǫ zJ#0eFJV%#|޴O ˃JIQ2إBSR`4:EgmQ iRjaaQ&7;5\} o*aZKC& Cb1We=NWf[깿X_AyLrh.riK?OW=yS1Nsq.{m:Q N\B.%ÛW=,T傲(W];NrS#Uy̟ !Ģo |z $!G(~o:B>fgZG;Uڦ=G,a "\ FP#DJ'-͠kQ=raF>M**LѦ :'${F!ԅ+_Ql\0Vi\PrsX`X):+0!]\ ,"AسXrxBmOІ̎}C[k0ԩgNE`U K +t36cSVs4_g0-R&~<֋FoI-$9n37ϭc?PTShCP(jx`` ,N^a+Z0 ]ݚʧ zF{W7" 7BqrwvU^}E/!%} 4J6eSC1nxL647E9-sp:2¢@IR2jdsB6];w8ǐcx p"=_Y=-ાa@X հnO%O*}O{w ;H)y;a/*~o,$r`F/葬B&Nh\,cjq*юt"_ch@ =T-PQjz+uF6]stIw)ܶe۪X&t6 xyO8 #YmsnsC96'R`{Ҿm7VNzvщHZqTqZY`̍|2J42(r6G-% )qbwV^bFa,M< {R\dlJonhݾgM8)yy3dC\AwԬėx^lw,<$Kz^`P!gWOBзW1O?eWԹ7x=b#2B 5!A qJaٔI70>`.QNUqS(Ӛ דp_LsCL? r-r=Z/j!1*&SlCc4M$[9z+5g.ylc?j*` F%=;,HTYxq6'1_͊MX}?.JFIfRGۗG2.$cw*] T/LxG/xTlcw]44%"e*0m62zŨi-[ͽ?[~Gf1O E6 ERWXNj:: P9 c~ (:9pzҸB"q)?D BJQE-ԪvX Dd`>*3s'`$;ɊD A^b+6rֺ|[)7wn2=}+>M`54V}{w٘[Pp)5LRYM[Xob6-CB$:&o dc q;F$TfmB4d;d']>۩Cc̊~.a~>EHK}f["nznbڔ7ċ>GǧY6|Z5 k>vO" ᩺њhamo=R{IeB"v GJ6ImbL*v9t=p"ǘh2BYH:ƴ8kVXwh6j`ӕ,n0}Jo-LR<+ն:N0z`-/Jq^ f|E*rB|.nU%Y*NvlCoQDCT0!{Y?:`R4 si=eUDEL'^v.ؖk})+_1D_P*buec>}Rgۥ#"uAW !ƪR_6PӾ+i>0itO(k&lLVeb{@G֓?Ί6Tʍ|7G=阃TEL.Yݯay?{:(v2f F!2ñngr{xYWE3Ci@4)цGDZRo`u6I'w4)b<ԷcDYѹd[[tP⢳K=4xb."3ƘJ9sz8iQ,f&߫\爧@`i_YN0APP0'uUa|`[fQ%r|d Ru}lt6}<_;UrG }B _0 h=ݵ4cVn^0AǓ}Sk :L-ɼm0J.1/LvYy8hqiF8ZBˬ~YׂxD4fn{Box{IkV"TKSU ;  hlGA׍ 0&h`&3ĕo=?.1MC:GmsYt~bCZE.EGh ;Zl@bzƛäZZJY_拖Т=N(NXǸOªBW`zx]Es:FjEJkݝ(!l ; [T&qx{/Ȗ9///Teqt.O}ăs EA1!,E} p'uGw7=g[ɂtA:M5"os`Ř:FbVi"|y1Q4AE>]:7˂tHyDtv%Ly#zäġdj+f.0AߗZ4[VcZ|%^cZYM URo\/{/k˩VP71a,m!-wwAƧg\Ѯ^Ez JHH7l&}_;9y͒"*3a}]"EMI\ݛH=`'!GۓWK8:ԪX;>LI蚜끛%D/o&#>=֨ s]_U+: wHuuOb&+UƼ <Լʃ~ 9,d(7֟.x GG\iHGJrc}o+ :a1ݰfxr0LyGvȒ9XO䀋a9>g 7ٸȖxt;^52hv aUbA?=ɡ&GMLMe\8t2,'>Sӊ VzTذt&jV_iʼh)y,.+zOPy*6+c۶[!VT \"~CNa =ܮe:؇G J6.jdLAT@ P>'aBwy#LFT .9C i"F%͢1c|TiBG KD(?jK{Ɵ#ަnOA}+g<q/_5uǃ3;mC|]P?TZ!m5{QӹSk!yVs!^b07k` cg„UjQlUcn8߾kRJK}}ʨP[n/:% A\X©u;c[6W(}-E5M6!hP1e>SI5bq'J["FPXg7'VLߊaһNݑ~̩8x{P9ӽm ]=seW_|$Br\@vvb孍+^s$-`R1*@tXT<];Fd))^))з";5Bang8CKpcFSu"vBW7fhĖ"%~<,/X]>\# Prr nבC|44lѣsaUtz|l`{HZMxFE\M8jÅ.%;'0̠yw^,Sfod҂k,|,gX%_fo=9aCy )X[7ӵT|4\^q]<#q !qkR]PLUjTrzK!A !Qճr YG?t 3/+扳7nmHyx%Ϗ/A3OB I)Ā]քNiXʥ2x ,޵XIwI`KA zUF#L&ߚS '(Qр*l;fq>וTy .o 5ItEpOU \ dG+>F_n{)l+p0 I{OdJ< $e|$Gi[sh`@C14M]cཋef }h diQaj"d&oX9+~C~g)1Y(*4RT)(U޽q-A,Ÿ=YrF*+}_+e=·O]&PEmixLNJ,xN遤\'pS\e5BdwQqI}s#@$8 m $3UE-n3|Ԣ|f,6O Zj\MZ3rRȧ] dLyHW*3{$BF ,ݰ)RNZa"SY! * ~Ov6y.PPH.bT:OXPtL {'j8`D= I;3 ;35(ӵfBEW&d$Ȼ+ɗՇuJt+ ձ8 HmI,A5!>P \9*9򳰯CȞ`tI# Fӣ\WA\8['6Ac+q% %x݈/,VvD\Pj"Vl;+)O&T$<2>kh6PyK O0Y P9Ȗ d+7bS1^Ԍ41hA>o@e~+t$wXp(M?/`u"+'ˆQe- ^(1wg<9f='?\;X.(9yiu7"m"=+)ѯ=/<^U%/{M.+'3ݿݢŴ=lnՕ?kX♪㖹7۫¾J[Tl n#p▂̦H#a1oĂ7ReZIH[E3,"J5+V.`1 Ln;ϙR;oBwo`՝$Ugv];㟿vu`sCtXEa.f5"q;3 $uh҈hV],S+΢䀚43)'r{i:l(U{ΐ~R[!(KŪE[{]((R}Z&;5F/`FJ #liN"*r觊zY*a$4 "(Ugt' ^\Pq%!k3yh,A =QYݬL\Fa迢Sdf7h0~cCo_" oZ^D _=qRN 3 '=]z<i'yz|i_<$4kɪj҈"r(B!ߦYw/d@f̪FA8V3퇰i&6IZ$0Pټ!T <܃3J>gBRc`V_=qseL Ӻf|q-6H޼ULYJ T[`|{*&m׿A3ݟ?~+Pg-'Hٸg]\kMom&BːK AzUߠ3Pf[1 ;/biYzNUhTX>"uv1B*]p\}ãǚ@aXU.p;t \(zxt-QC0 05Ð^et\ #Wf)SE F'r٫Q7BwrW/Ej#Y^x:Uʒ  eFŚ9pDk;msHz{xVgБ6QDR/QemH>UL=.F ?GҴqE5ՏFQǦwmwp`ج/P%P^cz>aS .)pM¢3\&0Ӑ U0ҢfjCff@ZoqlX0gإ'>~;)fFR?U|_Fl̪ Zl)]9DZM\Csƾ$n>Jȃ7W%ƍդҲ]$6s(ͅvw3JsR~*QhE}Z:v GѺ txY|aBrqW_K#wLu))=u5#>s{seY+H|WJuf?fGjM֙_84;%D}./IA?r,Lmb]z瀟ӧhfS^P Y+zasUTl6I*uS)D[[9Ȱ֏R/woUPjА|(il(X\хP[2\PYfMQ?Y!xv7Mqvu禼☪֒@v]QO(ohP<Ժ2X#S@#%Xr Q 잹wѸj9;$EnI fk]zF1S+!$bCn*i٬2R7xo0ۢK}g('Utb2x7s-Wyƚ 3A\ GJǐ.8y)ߕ K󥞙pkBL%^qgE 8SdzyM<۴Ȫ7TMOmgMHv94f;NG֧Qb0k.kȇޅ;m4xVqOLvLΧ.dNOnێ|8];)ףқrpl~#d]d?c.| d'K3LVN }RE.[FLgd{dz2u'[Eh.ӡ˩D̩l;B3N#zkLRdV2NL/z gV 8QV~lsr);3C+[B?9,HQ[ ABqޕ+C. *4 (=Z;49Df?fŇ#@HF&K ܖ@+r%LJg@KT AW_KS T&㐌͗G+U)c_8IZjIK%VP~CM!c$<6sS0鳯Qx_԰ 欙~ĮN|:fQׇHȁ ?S[4!K ֙^mY֌((R_9f[C%Z [O*JW7$'7̮QH>)G,X%62DFJs'ɭ2FN3{Єe!i?33EAƘW+QrK[mH!|eQoKU'Eޖhyqn!˙A~KRgQb㙭}U7i5,xaB_<+XbtMe%MzUA /&ʣ?Ps* me>0y8DJEc!H){6\lR%:xi3=O T7>,92[yE rVD#Ż\vӓO9mdbW>:({F:b9y*NO^f0tF\%:$0k?Җ=uNHEj_C5pK4{VW llv-;5‡fP='v8>}!n4ۗ7UVvn)MߠW'B'hl(V++l/^._wZ1x6KV ׾KfsB Ls<럵4^Y=cya),5kz˰ڈYT^ȡ`R0/g;eUmB* 8mU%woʪj˟$y;W:1hRȜ{ɁpH#ŽvI8oNR0eeɟI`YHI!ʤB'PšjN7ļ6Eg?n.@rF†vމ.tYv_ J*Wg PiK)ThUuy%cp`>L8;yW9a|<—Ձ]m[ g}}Ƚ=:絜u+W{+:x+7ߋllC jr٩k BRTm_HR|9 Pgﰤ19֡@d;8Rþs_ m1.b!{}_@mE(SAk>%H c;~ȸ |ӥLhQbgkV0GB Zl&W@lNC+d(#*0,)^hX"H6Nxz싅;upHߜϼ=< NNJ5TejnIngͯxPbUO9 d+:/X,fJԈ{oNґA\ZGy0J6Glƞt ɚ]Z9cZ||Q}AZKfv'LXF;L1;НH墇#жMT(= Ǜ:ɫm7Z;Bd7?Øq! IwFkz&,5d*]=ծܱtaH N96Ys[r@jV  \kʛ%Z5CyZ):d=J0]lkz)dg: [v[u>pu=rͭS9@0n)Y<\`A^$RXWl |:v^=G^{#W L+/֢'UD}1KZ4IvDI`_iL"'ћX ~Eſ҃Ʃ:L:HLo\#AMZ vvEd(P\^fy M~?P^_}('w[FG85?Pe@Jy aH `ׯ0hSv8HT79Z=S`qSFre>*#e$BKqt!$MqD&W .i}W?]*SxrjPo~CdLQ{yN%&!0 aJ.rwE*x+D)~V_=(2Qt["nw}AUc$?X"yF#Tp) `UwO%y̎Hi"%C]_(۱.|7>{P8./+椅ƟNf=$*wF f;s YZ<6!u2ACBD,54MWj֕acʋ(l([A:6ZǦO\5J|Ɋ%#g1i> Y<hnR:vNW'\Ig?epƩw*N&uB^ZiurWڼʍw ޤޑhV[^_^IqxkTV`? ]ܭ&WmJĆ_DJbT-'69*ݠl)'aխ᯾-ՉS'/&wJgѨLt|P8!Jͷc(_}=9=39[ɫLmU҄͛Lk_=8nw,#DތeDʚ)XʼnLzN P03L,6YPOoG.&WjҾAT]i_^vBHf*Yw[fbA[bL}ZV(8I2;2l7߀rI.$Ъ=*s ,IuNURE皣1?'c,C|}$0.&6_튤g^'0w}=*cR&'pn^nwSv2b+iڥzXs`x\qˇS~HGꎒ촉SARR ġk;t HO*l:Vn`RI߈E/I">fkL@-'锚m~e&YsH:XyZ8o;Zn Ćͱ .~\$ bgD[K&o%v{\s ]Pj:cbInO)d| $u[ J' jPH OOPv1tK/ 鋈 l1u2'5D:Ƙ@F=iL)>2Xκ 赏kJ|O\yiŃq5GY垅bJ hYxmJ ?@:D3<1{_-<^6Th 1#0[jV;Fw vY.LBMmpɷBX^^艞Bl7%_yCDaN򚞞0B3ƥ@=&fIMiPJ. o0d VZKp>)Ot;]EkIA(ݯ҈:Ѵ[sND㮶ۀJy1TmEVGҿBdp%𣗓slTw\XbBlv F֋H/iWg\>_3zg37ds xp ,.Om;".a#-\bޙіg\t7#{ ^6!q=t"djz}7K(ϭXL܃[/4'-$U-|}HplXgPgz#y*0*ݺuk6a_ys:KSlnBXӧWk`F*$O$'贅 ̨*1j?/αI |چgmsԾ>gk]I7jjdx@z*~򺌏wϗ1q\20:$9;G>9(pI7Ũo6W|ށ0zk\@+*MO8 b+>V|]nI[+x4b[Ro7S[9FE0*ɨۣB eqB7p41>S-9Da5%;BVmdȪ{?%! +uWAц%Av++F_,+jv|?yfW\ aO=|8ZRW\PFq о+T.=W#m&P8ƻW#9Z$_;c:o,l op\XO[c d皀Qh@WU-1z`͵MRKѼ*spd"%!4Yd߁XYFy @m&u>zQt&U9 *wiD\fKȤ{tUb4;́$]"P84aap=:m(zqFZ$| W_UR}ď;. [4 p>VV۱o2[_Xh=agrsѵ$ˠ(;R ad\9_>,nѶQ86:P,xMl'3p ~IfAVO`*bp[v پFvD\h}%1D#s,r'sncXDdcZ{iZAC{AqfNt'ɥIy:z73-+j3T3ۓ&ɗw@sb2ß/mޟKҹx6`/hZQyCRW3bQ>NX,;hfx҄𭂬".%'XL?.]DI*3ix]FJ~2(T9b|X7MSקǦv2HBEB3` ITЈm3"F&^L9g.jW`k1jK:9Pxk<"'IP~% f(۽FVvv;Dӧ>.A5MSIj9bZǟ~eFa+Zoh^oq#Nr{[ FVǓAR*I r fP0Hf=#Ie5L%lж#,Rgp NX;pFq+/s{UNav0/Klid ї'> ̲~]z'@¢JFo<KuD}<TX=VjfG^ꅖeLnO`7W+yUd1:VtQ_[ `4tfܼLl#+U^@Iăgr2jq#ļI wMYߣ? #en&=J'[I=0q PT~er.mF~J#Ϧ'@D+f g@ #K{?u9{szmԘ^k gmf&b2YhP6ZkG').=q2VfPB&E 3/jY~KtlJ< Qf8kpYZe&H4qHAtb4{"ceXig:+iz So՚I, VcMw\ (9vCY>O%/xPG9ugn6u Qhi3c}y|F"gQ㵾w_4@X#m#_aې:#N5Jf(-gi"hOr!Pr[l康YԨcѹH_q$>~ #n:e/p{r<1'k{Qϳ\'\ѴYYy̴Q(7kZӥ]װG#R**'S1%PiHl$ b_,d+%Zb]#ޱ?Z6xZ?乆kqZ{<&!@B'tFKI#5vRf:9p_[w#dBZU1* >8$kpfw"0b j?rrwI2xN׭˔t8tZ0{P=N{:noHFt}(^^gx|BCqo%v-I~\6=yҸUYlU6ȫU I+8MH 4[fM(_1ɀR=+UcfŨޝ {W\Ne˚1#R9*͛ICC{>]x&'J{]H̏P(8s,<32nrVLt<\n'}tO'տFߏROz F7ZƁʄU, ˰k1o.X2CG sÏ::25űYK?1O8VߏmȧNf. ' K^}M.lB~ R6)yyv,Ϙ[|"<\_Y9KHEQoސ'锗囱=1\U!! tSGZj~9 ;;0DL-&nwGN!/jc90Im~8XJF -e9 #'O.X+mD>=0H˼g' r;Ǖ~ljZV*@ȈnhJrybŢamuާ[u1&.=_ʨ{3z]#X.(Gyu9K^!dӐU/ Hz:/Qq< ]}I}\jK6 xqzX 7FDCBAkǷƌl.i_@ByqNw\#`GH Ν!)A6u3CHm(} ? VuL6%f+dhrkM#|RFj.64k"|R*L3=~[!tzh^6q6X%Ěc@"/$"{40{m%c$~J~䫝 L9dGzț}=R퐟67"d$sQ>co]C GJ5Uk{JvgůOތ/|`0={#RNă-46rˠB \^~kus{?YhDXTBV%UCQ ־ljeEတ7x z &4^\ߵȹQ=eɮdo">ρ!A>??m4P<L(|e&6XsDLıɠiaѯ7me8ʱzظWdT@j|,s<hm>w.x!}Մ(͘Vqa\+qMʨ Ѽ]DmUs^(ro틝!  ychU'jMgu|,!nTuS DHyOJaBĻcR>2r^R>ҷS5DSַ3Q[< IkQp 6SˑrRjwN 7VPD?T'O?qzAm)!D̡}jJi^j^|CL>w&tĞn7"NY&t UWj0$Ө2>r`:w`/`jl/;~ƒ}>D@ p. N~QŽiXcu5h1&6jT狻}%|UάnuHXA @|[u;W r!Wk}q]sJ8+֗JU<sl *Vjq[E;.EY/suEH{x| d RD`)_:>Ҷs3:o-ַ QT7˃yI2T2| PYa,mHXry.5/ŵNh3MHaLoXиxC{Șlk-u&zCS/H׮{:k/2hNޗ??(([>-l[xk>TeIL+@yX+ң ʸ#x(Zh'qh $D6>?W;5Fm#SEUZ~Xʞ`ΈJKznDU=u:i>EBI5Q?XqףJwOoWLqhniY3`Ѓ)=@or|̦؝H¹ow&~'vp])4Ke6!+L`hhu˰}PLLڴ<:&<ts&v9吼&c3cW Iz0 sP yDkou ,Id (ú>ЅzTwAaf(P.H4MFPpIOV@y(b2P7 Uj0Ľ1?vY*y~`50 ^}ixP~4M򓔀q;[į)y!6y9do;2u,_ ]ʃ?nlҚYR!,CqkNZVAzދ"R=~yӕSX#Γd`li_ИLo@e|DīGK*JmGF`w,hG 2?ƞ^`dOm\xI{4EBmz0 hZr-sb ESZtvΆlPׂlJGM:Wu^D*Eqe'nR=) q;I'bu OPnu:|ZcZhOPB<ˢ}%ͧb&JM;t ˏ?V $r6z²d6I;$.Fbaif&_|B5F9Oc.)l6?![(M^č)N>~"ln@77Aؕku)qZ\7|+Ieh&4M(pk06δ{ca B - '8|\=C /ﷇ{ Jt݆>!"K`o|rއ Pi*]qizi4sR]]$\1-U7g IQ|XBb9,񺓕k+%hP UKn>,Cv`LKU6zf'b_|[t/J#O]~M縮x:2 @[YqtW[^(ߪD#{q +>~`!yCU'lHbOT䠡g§*,յyjfTi> Lq:-p| 2Ҳa,Pv:@~,8W6 z@{jY _3&6tᖱ71#Kh~mc}܎)#e3uAx[TQ HX݁ (8ba-9n#ĉһ~QM&Dr{֒Uͳ*S|Lq086?WuOr Ms)#'`3\bNJPq%OXV":sG_  X2M"yf;՟P 9nKoK3sI卷?T9 1Cv{Рu wd^ @( )bx;|pWfyK#+Ҹ \= @uyoiNЪ+RTd{Mșg{y P!Hm?|TPzIH==,/qb58s/S6e8Mx?ׅPe;> qd`&zGh~#OcH/ Nan/kڗL$nj(7?N[C `2ŬYx$^|޿Y`c+0\gAT&VT1{*2[mFulq2^'CDvoo&!wJ`dž4[g^ϻr~Dn:8ݰ8x={:MTFW b sG⇅Y9ZkeYSl׍YqasϩΥ7v'7lLm{ GPwreJ%Іo1+zb{` hjM+AZV"nkZs_`iXQnTv6Es-0zFqKN榇x9b0r?HVR%Rb@ czO~㝚e]Xcn׹8L b9]w‘^05ԴHlef"F;FCh' -U^[x]Wc,(k1})1Ǫ[5ߗaVt6>q0x-cCո,\V!IpC!Y\ BQK؁F<ܡȆNP]//3p&9PٕDګ)|}N xh5ECKذsOͦSL^`3ZZN+cOQȚ~h}5de}TT= ޔZ0cKZybEϣ9oa'?h0䆼8|Lnؗ O:nd^B8GI楥+]HF+l񜂪\2E +a#GanIzUA-O`u- y-nT݃;> L2`L~Z%6X' h(^r[ "ێĉ% )3'2UjF V;ָO*lݚ|f&t.7oT1R7c8(3\lsV,Jr;C?S] 0@jtbG;t"{}1-xűGl"=M"̘#y)5bS]˲4jKrVd GItL;JԯEi^!]E5c@i4~AמZaȇld(ywo!+ɠcVOT{92D|kVIjlO.43#nLC ]XoUn2XX_l۝+WsZ&|=A& W /׋e-L[ȼ abng\ ꚞvkIԘȜ!8& =jtIYk û^_\ O*{+6TGw|>SKSUlW QvjjP51ܠg6_N8gSiKjcq}geLŋKlpWb|T> O(|_뎡n{eb/lI o%_T6>0.feż!j1VL 2فpADbjg/8[WoH1IG Gh4F;ҝ~{ c} ڱ85ک:~yUx >8=&aW 7EK:L0_7U]')hǨ&f7n֎UOVx'5~ jֺɭ|iҽ BOMVNθѠn)P'9ަϑ=#Rl IjV{o9E"Ta[{?Ljc 58aZng@{>vj+h^DufĬN1%P% t"fL+:QmȩOX!HAkW :6iC,W*COC-`^:h*N-x霭 ;|A-<2r޿@jT'}'o\يtkW3a##HbkV"$>!r Ul _pcDpY[r<."g$Bx ((&RL~d%dd,jy^X~DKc.H"#o!yN 6fB@FǏlP!r%5%Ɍ[{_u5޿+{_r w3*bZwZ(kqN+|1~EGOA(p@[CNclLN&ѣ|A1K_oSNx^G/TA1Xx#YY$m֖T(罃 WK&F:oKiGg$QV9݀涀7[2ζ⒎l2KlԮL.pFaA^.[K oڙ\侼dILv;VV_ ?J2,.)õш{L7d`Bo!x\2d2ȄV*C)" i/y˞x')ǾHZ3_SΛFN UsPZÅ:ٮ#@`aC(UY]n`Hޞ ą09t  vUov s`H iob{=k*Zڪj $Z:JFhϖ4sp29S+;O'-Y-E C3{A.6MR|^簭ReZ+ (Bfpd`(uH=>lo17A&Wj<0ʬu''saWpu}TgS石 mXlCoBpsj#eciWe8֤#}ًNTX%7+<~V\T3N%sî,FO5#5ܾR+D_>ٶ#sWēDzHCj֏bu=: NQBLDxa@jTO熻^LK_H)t\P .!M;<ۮYO>Ըl߀͖L?gX69̋4o[.zuiVP4rݓ;O:v.#GM~JTLx%X"7^mSt<0!([nkfύD\=`ϜUj|J7&j }a*cr/G&@_P={UaU5aIKΨ$'^_]fI3;xM_!dhC!ǾrfĜchOQ;s6 TyZ]Dr\6ƤM\SiGπ'Va%}[u.a\֭}!]Ŧ~ V0ILde;|¸.+TjG$3Ѧ2367D^U@e3{w*?t_]x#C>@=oM\ObUL1t -Wr4g[l9u`጑V^_W=n$V|fzbt X4eL4vU>_̲lDLqU8Z\Oo ]WakJket1Kcۜ_j>;A%RSֲտU^<"2jb+|6!m$Ґ@֌C(#&!(%rBw`Դ< s4f.̲E"5{%I7h2F=kiwl0nː*%<B$t9TϏ\ȥ}fr0޵͓|K\[e)z4P(OaFf#x"OVNcVܴg(8ETע;M_16ϔ V\pk3'Ҋ&}6DW{ ;3x$>7w*C+X:Mھ #Ѯ}p_LjDj/T;pC;di%^uae@~=hѪbq!d]g*?e2-TT˜8`{few'ݠCh{U0MD#U&hb o9Pq~ޠ r2i‘O# [=VIt^d+aptޒSz2a!(3ka[$6b( B AM֍a^!kK7TI4Fpp:evOn|E=HK|oĿ}I4in0-+sMecQhk:BcyENh飬gw,+~Sm,H䲯FyhЌ9c-;y$XmNJsӸ_|`( TPوa\YgÊg N޺:?on>("!ǚSr+I֞?*q:{~yûH} 3Ӏ.Oz JJe: bHj\6'Oy\Uh@iGOr-"˩ۚZoJ?L5J' 'gQ6Dnpya]0X 8,8|w] %]~I,\ӗ D(w*\AX1`;ӵÍxYev뛽>H pɏs|P'Q9 i (>U6Am2؋YR'F}P4AT۞:ØIlo>sDUH;£wYvfc;Lb^.xEZkH 4g l@xp9;l\)$d|*K* xqEM|4.O+Q<}b/{xil9"v+4e+*X"xޛ)I /l}pE`m͕x Gc8WUY8Mv`.3F:61v^[;'/lX -$j+׶qr`i V!w̺-u% ӢtXmTE5G_5똤wӡny`b :z~<~B OW@c -U&usIRT7u,c;9IrYiX Y 14c? x#45P~{>';C-h % `\#9|=NUu9#5V2+ٶ2AP1\?H%M 'd*⬵'se-=X-! 3 zYt& &xD*ȸ182U[@*DR]JVV/9`T,}A_q]IYBN҅Aqfl=Tol;5 ng^J"co g2桛mY&/"'/\Ġ۷P v3c!5kdqEl Phʜ2> -WsGuF/ A3^tldEZ4jnXϑu 3_DğMNXxE,埮[s²[5\QմG9ͮN%D*0L4f. :z7LVĩN3TGXdH"lQR: +2?kFAKQCwIQJ ZA՗4#@x Vrѻ$Rƍk?'lW%kNR*!=0Od%i-sNբJ6:OQ&|XX\Ei Ko^[3E)TLno]3w!CC|GNSV`Ol)z 1ֈ/\fJF@ (tݪE]C1X?ιp7KV&sUT|S.lɷoV_3Ԇ-!8Go$5!жp V6 3A2 ,-NWPh'eՅ;\0/Q蓨rW >|V"0?j>r)St==$l߾ bR"{rXsB As 3pTV_Z3A}-[_P1 ZY?p,P$e5#y681kxUnCwn ЉdP:hPh;.gqڔ03MZcL8.?g~r=FvΎ₩49(/Mi$TItHPo}:9CUA[$CuRZU@ Wx@WAPNxT5"ڴѻʉQK9E<&yUK g lSnnhQ @,e7z_\~hKd(W,&mPx˿YFW.g:LQ;bU-Y$ⱊn;۟vyE>O$Lu;NqNCrVd߸Oo~;9alcd4'IDq{x/œC木 ~K"xV#yRq=T1[mK/(.Uma awnyn}_6`^/i9Ϥ5~!e"J .gfKX?>!%lT' 6cC4n3\z>|KA{'d{”$x;:'И/`ݫUKs FfFIɗOIKR,}ϥt5ioE b[n oR .:AY΢=Qh!C߅tsk*(8e,r) H&]_[W/bݛ([b'UnU?5DZ@tXa&NڿuyY %΄ U^4\ǔH_ƶCDx}@x[ ڝeŒT/d+T'%! j8C{{8C$Y"\ոb(Ze$f=Cbgr|\K~Hy,TI~4yN24nyLnl+JBb> (ED<&Z%l8m7/z<Rţv۷GX:pTOAVib jH-$c{yF iwX;搒< `[ 5Bٓ}cX1OiQB;ED:v8(6rZմ I7(rC-̜ gi$ZpKwJ!U'G-h0Tձsu@ѴFY#(N,(hwV6 Lst݂5laXP|VGjpSW͝'-Zl9F1sc+Z)Ʉ~c~2vڔ?0Yϟ/_A ^4F޴ S?͵'Ż 1rN,@QOU,UJ÷m9f:X ;M*]ji$.@~;Vt (TD hܒi! y8 8܋hVfQG57$îN;q%b gkWR-$="Ž(mXCTp[A ^ɔ, qo;9VטּO`p\g3<h`@EE:a9*: oT a97oY(q55˞ۘ|Ʊ# &aFe,JhngΞOqF'Dӥ݌HRhҢr&Ud4xVfKQi':x:AA>zD̝ N1Qe'y7ڂ Gt`/ɹ5H>ѣx*"?peFo_Oj'w4^y!=T^jEUQ ?~pƈu.HS'|7mŒJY.TéLbr-B2ܣ,E7ҍ:ua"K+|jFڂ03TDgUrųHf}$6}h45يf4nqjNni3Ll ,XNV2L!xZ.'5u/jv&x<8Bdl[E!2wzxNˎ7%AEvnƒW}M$r. I{[0@ɰ"ZE&@iۃqQsr0]pjuYH9@߫CT/L?\K =q7wy4_\j'2<& ͱ=:Ovl,>qPK ar|QbX?)3S\ ޻Gf΢ot̡tJ37ڗѽX&YeG#&I*HFU°ذZnNL1*!-K5),o1Fo)Q[[ nJ3/Z5V)2M-i9ͼ<2╖1{2pɀEG aq"Aߠ*..2sg&5L\tS'xSgpU}?t1 q ; 36%a1UZQv&,ˆ-Zp!Dȃ0O7r)sۢYѨ#oX0s{شyfYJ0mB81^69LW!PTX"2@D~Ec5Vcj2Œ筇ֻtBzoQh߉o~%T>,űz/" yQ8D+Ql":shY1'ou'1<(g:g)b!>q$1| Vd#~}~{!|pÐrTqKy=믭m=N`]X(|NW=. 5?*P=L @r+͙g<<;QLqsKWvUyY3\= (4A+BUKRpd$`Rd}ݧ ko"9 .ӭGAi '~dgtJ<[KmWI e{x2~;aO\1rt`j1zU*'EGl{ŭeCV[/Iph7_o{ uVLދ0?Q!n| &Eν:KtS؜S!a]ʁ(2S_ɺο5'o[Ձ/L "NcX oZq 3@C $o!d4Ώ[_#a.mΩ9bȺF$ę1 .?Ͳ:ϪRs] X$Z*+9yqAya@5x^|LB lHDaF˰rW ̙~1VIb< )_}zۮ0OFbk#DnR\atH{+ѲW5♩L$JK X>û 2ͤqou(*4ħ7f0bWnaa*df͚)?:CDd8j{Gyʗ)6tԫ7o+ǞU@fGr.TΒ9Tۓ<cBac\܉MbUE*~- {=dwkIQ p7{Q*.Nw[SԜ{׷>ޅ_e|d'EBHw${]isvhjZO# ysM\W{h | ֶܖE.oegJ&FNrGnyZ.;8)KnJGSIrp X1/G)dIp Y%ovqfE"d'>LƧ ֓ۓį9޾)BP8̔1=|'ٻ0ƥ|V_$h9fH#~L],+Q.2b/Z .Љ2J̡x(>ʇ+>Ǿ R)мhYyۜyjVĚG>~n-*qdɺĝ~Md4%y;cTQ+͞.нU׵gLd{>&k y~h'$s$QVZ$=[rFGtBEE"fUmf8kőZ~Nt69pue~~wy\; |k,8<|2Ir=n H6d]>"nvdoy3yx iN2*G-R 䅏?&RF'KǸ $'5!aT+M-{X9WyߤrN`- 3'kS"Ѿc{„B,lPDddR$cʾ.p{6qYoHr,s (oH5-x ܽ  gtlkYIbw$z/X@`qYM=|rm-8tF78a1!V"6n.V c'{pd>+KaG(OI{hB:-Hmߋ3Jn{鑨Vk RyK:pS5Uat%Rt7(VJ.= z!;q*x, Qkx>[ ~d\i$qЋ# LљI^$0,ݦL7?&c j>!w$B\}Twr .`,~d#yDzO]Gj$ L`(f|'++h"ӻܝQU!uq/6fLQmstbWe05imwmgNmAc;ZF?u=]F3EAՃQ= W_Z]e1rf9JeLMMksE76/H-N4PkI~a"}Xur=̷Ϯqժ@n\*x'J0PB/T#kg*ړWr>]&ͪ٫po%r L+m^Z–;S; e^]4|u;Z95.30$!\ّ.*;%I{oCdd *b/kBuUs=ɇQ%%5fzS'Ԑ#M4m#6ސE+߮.H`<셺O1ֻD|bȺd"sC¹"'ґ&1\V2!֝'=$uki%LkZ_xCh7ʩH'ٺmW Tsq䰹9^ o_RTIe-"v8X=xlB6]R.kXE^.'h2] {Nf.I>pi54D+@qP|l>'jRC=WPn&lm.i/2&F5B:w? 5 MsϷ .2.+o8E;1i`=E3+ė ڣ];q^0n<+͔%&G+|N#~}mA4n=T`$_ rH|q_6TW@l)H0b%\;q&xYbD l%ć?@Ul/\F!%_L2ٿ4_/P2`Xwa 5w2Vuo\tEe9R>rA4_ۢ#b8"Ej=mnQ7$&E>a$vTgӮ# ՊiasAAl#xOBBpUA16i|Sv5_Ժ% 9ܚLLC;Y)V/;QM 9,@@PQJQ6r[1(Zt+S%)tBP +xXU栃M FPK0;<]'emlci.#Yе7w\/d֌-:g_V'>y4UTdO{#\ .=Px+Ln Һ$AȻ9LJ{W[1ûB盎k0t;Cܓ.Ʀg/A5jBԾO}9R }9=DzEΧIuNy\Cj['Ktp\S%ڏr2YT|RɄU6EK JR (4=I45Rlde2L\9baEʊi!R0=rqؽ* $uLDe*)n-G6{`n $#@$#]6ۯ> MŽ;S64/Oac 7ҩQʣచvb QV߰jN2e9?NwWš,#,+A GTCx֖͊fYJlG;XLmk MU㉔@uC1/+rsҮ[ӿ0u/S' SdA qeo8)ҀnhuOe1 X|z˻LBH7ZD ͍'iԿB,Nf9xqo!aXg9U|%Es;K:=4Zzs[¢Y$VT(9S2m.{׳Vf mڲ+k.j-E,1xSDSi4'ʜѢ$$.H^tWbBP^ o(;w(i 7(yk[{K섎~tZW̭^2+~ @T:zmq{\8#kmLg8~{W,g >+C= OSDقBfZScB7?raѾul3kf=J>N$gB0w}7$b<y⡶z~Ttߓ!8 g%_SQ??`hF[ 0!M{q'H6=Զiڥ us/N (k{+m$ cwyps ^*W)X{ަJMyzZTsWn,p 6bGiэ;-ϱ6g/i͢xz4uv1B׹~dQ5uS'gRVʋ^ J_BNANvblԛ$Y$9[}Sv;RzFF̰EJI\3]TwT+ ?$~ެ'ݞ},oeFYl9IUJ'@ *dEjD UW?Z/V2 \& \cmа ݞVlUvwT@I2VFȮAr"H䈖W 74MJg`~ة6qycj.7۠␲U-;I5spZEΘV̶l >ѡŒanӺe%1J˕H+Ɔ!Wsq);ډĹ- _F/=,N8IߍEIuoL pMÃ4zRe>թH}1&,tT:֣3|՘+Fٔ['XL6gI EӇ_"$% danm~Rxʡ*ۉm^E,J{T`U೸Z)%N~e'nS]?r+E0l8]hN%+:|LF…Vf56)i׿ncYGo0@6$h2e45U^ZpLwD> y4}TvIkޅB\wLčYJ}uh)k皳22|Ĥ.xw]d;z #YXBg $6)p. +RFUGIIoDb^Gcl` j&6%lZpm!p$MgX(\"OOJK9r*nTk`_\Bz8ÜG;7$C" 22%HGT]1hufQ*W<F%:Oa?/U2fxQ0TqJ12>W8EcX! u{BdWOp0' ΋l*^ MF)nk\[}"gTX!@4uY2(-G3r[pt+ !(J큼oSc<3 (\W$հ'jB^ YM[YtMtmDLzO6%I~=~woO<^{do!weL"<AS7|U%!u4s/%^Qgd N[zm٘g̳UwO=B+ ]= ηL3.8i:iiv4rS_*foG(8r$v{];Fȭh#),!$9QHNj6-Q/Wov MZbakJf΀6LS ?uS ,n4/0Pw> 8>Ç?zd&tş]?ꍎ)ȼ*+} z` ,7m,9Qb=eqUh* c%D7NKwLt'd"FØIH'<]L\P غ!Lo3~-t@PHJ{s̛2AiB^ЌP}T`4^HLg*p,e&!Y-W/08T4QR+PlU3lHZJ7Z&xI=A\V^p2m˳uqd"/ijToY|!YIߑ Ar>,Q>F Y<$\WLlYWd`#LTjc25ZbڅUfLܶ} Kzj~+X*=m??2H55?S<*fI<ݪpp~2YXˌ-8BK:ar7Pd M#!ϯ̂@Ll&j9K_ لwܤ0DQ.'$_зwS|T0Wfq x9{A&#O,X/(@s9DE?c0Qă2ͪ IſL#]Gk@V "Yѣ:l~TZ `QzP ;8'k&_L;ozwzGU"5:5{DۓG8Li9 ܈]@7yB:EAlK| %i̟7*+z="Σ|q :y&pK!"3L@9soxJXamEx{L<"I2͡~^RRL |{gj̴4%\l?J2$kI= TV vȉ \Α{"FT?C%aD1WZ" aSVSԄYxU@˦ PhmH$$D;X@Erօ](¥yv(9"cx\x@#}Z"Ph+1g{6L|:4[kvan/LƵ k#ķ. K/5b ۞ul)B ]{ (_T Ϗ*ڝ[ͫr, *݊9H-8g4m8ɲ_ *r`N,BO>p }O~[rN,"a?P+Y I=״,V)D#= $JQا FiشDfC`TbɎ6{%aq{Z k(_iZKRSɮEަKsD`8ԼNЀfw˔8j*3ُjDu'f]2@r4F\ߌY=yI9dl0+Q qEFnD-rM|}uٶQyIF]n3&yZ4fABHĭ"]ϭbiEk\M5$HXޡq^Y;5E6I3yeChj̞U2`B.- iG1)_o tmҗ6uDXXynuH(i zz'1B̍&]QT0Za`]8$!%WK^QS@ʑ4HgI۳ -$ tY 9?ٙv/U&T|@K}P0Tt_Wl݈`!^W3'=%Ct5 ˭j=p1oǟ;x6z}tSÃ&4py>OMs+z_ӈ#0#u!{ g r0?`U(3MAUj|2SU9PTJ/@.gkB8Gש=9 h,rFeRUz,g2%m:wЂ$Ej>ߚτ<נAh%DIJ!{/ss,@}oȀo6?[jXjJA?#R"M. dBܢ+k1y#Ee msk.N}pLQRrP*YjAÂy-A["w}&ۏEvʤeJzi IR9XW؁Tu*'*\C-zgMq(k4!8v,B! (Pٓqސ=)[Ϧtb^䰑V+govp/ i/?ČX%#1*p >]a<%.d&hs%Q +[_nR*.ptŨny@˟V TTq} 0AЋ:WN]2T~O=-MC׭Ktȴ NU&"{`M?n; -5e6/)sq e򏨣k!"%9`lwER3nO?"YrY9ן S:x3L6kA=3fRnx/*9 @pECVZ|:!< (U&% hԴTܽSx \5lkZa1XP:}1Pm']= hjmsD9f~&Ghҵ딗c9v[s!XAHҔr*ϗϮevw&S^TPӉ",zpr8ypsj;F^NiB#?|TJ/1>* J,-w'C ;A6pJ%P~ٻvEz HFIK kzD%A_<BÙ/Qk$@U"oM?ːH9q$k-ٮH3vh.(ݘc:gtNs#K0rN% \b)0XK'b%$ߋ%w:OG/\W< ?ҺJe6RMXHWHJN87%a$!9r/Jk4l"CڶmG C @<~%U[2SHwDcطI)@7 ?$Q=_l i㴈D_tV & R ̛H5Xdd֩,_b!Ao2o1 ^].0SQ{(@@ꃐ;y[-i\ocOG)H !(m 9eˬlr8{ρBM fp^Y5ozoLnt͉D#tBk7u\aű0'=e<_Mj T[^~&㻫ʹWӮx|Kb[dյ=Sbl3Tqa2 ߓyjN r1G,I6(I_+a/ʮd!ۯ)}̽]IV\!l Ibc:S$aڤp#_aڴmDMR\&ف;bʞ{")$~_] !at œ<ٲT{iime(cFᜦW\*pQ,nCQG;ͺ$n#O&|67I6,|u wW$ H#n p˸!}\l1s+3J4)l_陚h{N,m4=o }*p>kA ]7򗗕P-L-䵵jX~@/$/ui*ZTJD/8WCq! IkKMnәh2%cnʑ?!M`x,x&/Jդ+&$i_YUGR% U3B@M+f ќ#  4lh5:\Ɵ$8:cm2Ȅ;Ǎb|ٖTqߺtܔ3.\PM5ZD hk÷mp#k\*n,eT!tiPy<2 :I:x30kAoU~":]H3#4-#M+ %.e7TMs)lq! gWp1a3lu5`RKmBhRGW\!O]5hJgllɶȫ:$U!5rFdYl9{/@d ^M0$α֘EYָb.;A1bANFɩ(W#ôj ]HBrx3]3 ajJ'%)$Wd~&C/<$ 7{WPɲS `/P G(9qˡ\*+|̽1L39!)P1 }\r@[}Tzw c3#S@D_l–E7Mry&VG V4<džk`.:Γ73 R`Y?wt H&X֠Sd*.Oqa$0@5+V2CC&cB'j4/;O(b!PnmKͱu@Y@(s7מMzFgARy,8cܖ`H;tvۼ`OK73B-Ѻ8U} %?ح]6j' ֭?`ޙϗUb?yW$#nw(FX54%]ށEطənĉ}mT@2w?SgfnZU3e!9xX3v\HX">r6t8]?y:ĩx*}i|q{HPw,J!¬91&.?wZ#F8VSiڦ{ŽFҤrI`2t7FI2ȶkk?t;_][,2NCQ3Uɦa^7?oYCEU)~yCPҵN1b9 Y_RR*: _>hc}zCIZŖaO.pv8kLj 4jec*~$lLM8KWA].0pr]$$G4M+"mXIzh ȦWx|[Gw¬Lټ)gK6g<M v)>ZnBF^T7H7F-hC+ \mxLȨ+LfJ6eei9lA\?M|)wH|֥힗_wF7`!#CRZ@RI8]5_sU5HV%v#69m񵑆r E}\ڞ(< z< w]P^%| V,=i553tan^5wf',r>c/D,3p'oQ6n$큻/ទx$q\)GΞ?)ܛ)v\I.ZQ w O~\jJdL_ \wFi.ed6=N[U![ͣ^Ogj ,P!U/ ?Ǟu&njݼf@ts=.ҴcjIkMf) ^TszpyA%[ptn㘀6v'; bHJbw]و 4_(U--cSjqI2 Zk~{|rSh_LE"ˏtpsE, ]ڃy·)dүu3 0gGd"ʼ&! qaX~?^Pʊފf[x{lu]YP#U9ɒ'߹ *gI]=3]A+p5~L$4>U+m9Xsu׾~/4TN_9ЂEAK35QJz>nҜ0/24C'VDJG Bcݜ cD(\Dh35@g@\bC2 xZ|u\q8Klg9aԓWC|L'_K5(`.BY2nS [n+lS?Fû鱼 tc"Rq3YÃMz\j34.>4qsZȒ)0  `?X94Z*Jo0 rܿ-v~A4G\N2u^zLo\3kW^Rl]#Cc-.׼0B.?i^g9E^PvwDȆbTe~ǯ0#͇FZQIwVo>K̯qEu`o}7HS /~ mQLN+\IˋOt[2$Jz^jo7U`&D-Cvʞ[BE]V_e{xj ZYx'4#pƅEZkt*A@۵-.GJ\ K2X6G; c]FLt O/0wkd^bٵݵN^^AP aVLjB,70C+5bnu5E+ ޅE6`sg6@ʆ#7Gm*_jqf\dL:n0{l$ԕ/.1[u(z4M}sin܆Te9TTAuBkG}(ȣ O ѵ!ghĿ #3%Y^"hx"%[P>շV6b"F_92Il ~ >vOWlʼXuvu @'6/<d˱ v6LYW1JDvAw?6k ~1]/"@z$uV2LNqzCW?Q9ݴ^U.G T3d:\S36{{ um 0"a->hةx[/O>nirG 2cITn!W)ϯ!TނM [Q rm*х>7ޤJѐ*Z'ZC9*NRPch_b~5vwc6D3o bP92Kޕw$6FTmQzG1d .xZ @@C:P =4DVjU md@@}L̘luz9Q-xfͿ^ q{4f>#ϕ9@/oǝ] 欹pF!&ˈ_bW뾞PEZP""hWNO rW2 t3^il\8N㌠GbO4gn1xyP^/G!ϊ)Rfq] ☤}oM( 2'6xdAa7O5@?FVta }.g f@$G<[*>¯A%9 r2\c$!mI"%E{k]\W\E+ \f7z{1h*}iWGGKTZ+goy ̵<V뤌Y>╡0j3rÙYyy_|ECj$95)P?(<ذ=FϹX(jCEKeY6|'5~,l0OrFO6fhl٢ms̘.o9G*qV'QG\U8#tcf /J"O(-[̫!9RzSCM12Oh~eij鰯KT O6M;Lgs=Xܢ~fwvίureG'cM?20Я1wbRd0Sc7L+O_Fx}臃֋0K?>;7ʣ Bd` Pjt٢9dh, G@M9vt$zZ 1dzmJJY!!}5pM%gШ. e>)>" ELh]vѶ\jl-a4ǙSF&aF0ڱ3=R~`3V$ ё)RLe|gEf儏1ϒ^v`)M|3»@-77u<)_]>p&Uhݖ? ɻ?y(sySe) 85zD8/G0t}ޟ NKf-?Qq5sS <, `r#_Pb^+Ay΍=N",:dvw4y8oa( p;1}bٌ-koa#RDV@P״\w)$'2 ',rغm͡*@%h1D#H,)kʂSҹ(Oki055^~|JdnLJs^Z3K_%+'c>sT XۣwO-fui Яt튲1i1r2@F;S^0tƛKa.:$?G\+;W*{~'ZWYbiDVϼ\$` pʰY#{̙CxI|cԹg`VP_{)MI"#'9Zg%ct G s5xl=V9<M=@N+v3 qzRAX~ΰ֎J,֭٫f>p3I*@7mHBR6澥GD5sm3(AMITtv{¹Cp {MC k ϋ$/3M++y xwAU/12 AZ= krg8 ppj⳸M$W*6J< z%^R}Së/ ~y @u";epg4aq+90Jg*"{?`&M(aDIKj9p3zWpQDݔXM\FB*+jyP-Z⧥nmS{I򼲶+ΤJ {H2 3'+1319lOUt$arm^Mҝ|^/-+mĻ>Z H\=f{`fzV|Ssv;/A?*9zxޟf}jx xaF|~)o"cS=sjZb%7h+4SоNqD~т@vpBBNX 4VI9Q/I/if"Ο>>+]<F<*xT,"ܹInxcyyQ Ʀf,;[~ý>[2=oqjs:kꅜ!tj2qߗYUMxn8 a;fko2u13&s&*n[WkERvno|&XTo:P1Qi`qqoyыٿ:0-Wfj>% _NN3n>̍T<ll`Y*]v,A$d𘠌 u 34 ID̺z &ߋQbYL8#j6ibRl"gRb8zCX0Nn:)g7CEi i-활J(5᠓Qu}nl?\cw|Px6IOm5ZCAJ*n֙~A̶r.e`N9 ;S)EkՋwf{Qo:ڷ * gs%:tjWdMs+wL7Qu0A@L4 ~Gd@:ԜI@J9eiXnbh*kjG" _ApC*+w"<[}Q̜'"ȱ?6Ƌ ܇܊v^D|\6Hjnvu$O,҉+5ΒD9>G݈5m\^M6ZP)-d~ c%5ęEIXB-UʦNrxP[D1R;%$`'A+SvlZ<}Z,&z_7ԕwB U#}3]nRFte֖̭z(ۓ%rȋfPM0 t#fR?Yy ܲep\mꗉY"Vvk㣻~aO[Xx cX*ZJ]kVD3GXM/,0O@!gXp2Noau|/ i`tݡkU<釘a^{˶"pĿRfL4ܳ%"G$K+$:bas 82Љ4}.[!h֞?S0u jPCc}mJ8I'bҎVVm7)hJTHdRB9Iu[~0=$4DȾzg5~Jw.\[8v_Yf9*Y߱q hu!o']bb\0ˍB%Cړ>sߝ^ Z!s$7#og'>Ӈ[ TKLoT3 ՛@*!0+dYQ)JiKve_#a~́Ftc|l `4ɐ٢@ZgjK@56B<%+UɫBA!Yb=g/ݓ* Fߴ4@$`M,}܏҉~( 's֡q+Nv [G,]v`Py NT:53-`&VgղOU4xHDD [sSFwׁ];ʆS)`=c%oSjP3~ZѻO]R6K mƊ/"2:2@nJBzyy%S=Xyws?$;PC|#ZL ;?nnWl!3ߢ M\{ЄLT &vT5e$9A c8?jn{ 1\ٻz(\1G#Fa8V~X*ZJQ {H9uw~ۆg]1!mr5ҵf >D㖌:P;Z1r3q NGpE<1)AXo'ơDt-U|K>-KNFsrK1WVJ'*_<)@@zPBV"j<[grʵSE%t@NgMEآTLhmE Y@G;P4jڃ\ЎcA9ZUeR&ҮKV-ϻG%PWr0OZvaT|6R(w֌t1(^(\UzfoHvmgcx{ncP0v9H7<-ѽOŀ\.+ DYS!,h3]7.AԹnI8X.d^fU\U6Aπddum4TX뛖ۣ'EǍ.S⍫[@7u4Ӑس~]36u#ߏ荳\-QgܾZr&2aU>hdjDC 5sٌ5m=.5~6Zo[xy-xX!:3*8zeѨJXHmQ8Ĕ^ʸh֛R"[m .p[@`f/ADnuK/UaR=T3%J^h[d -tF^6,i$0 B + PKoUDO3U B{ڍZ#/p?PWxy@XxBB*mgbcv3$ jZ"[)-,4u d\+]@} .Z_\m3 0 'wSGӰ SlPf#Ş%v6OBZ\\ Y(_9 Yh7 =xI¬E,lϢDmS$CXQolr7t,IVCCLxJձ -W@op Z%J]k+H0Vv욹;$3g w=s@$݃5ĸڑmiFA{5'[a&#r^(IT"RIEn%˅ܯZTA# 5njIWIGU8Y:=+Ɛ4䄲=pcx3[SöU x26{T.԰0m K? !Eр.5P봰 e$z?ӣ_[^ 6t Gvp$t];D=Q'ېA6>fk]XeL oy/-_e`o$؈T9f"F&,N:/R fzʇ;,%{:[A DHŠuhؤYƢQC|Ne`LD"5S?]e9F~ ErUN#Otܧ,\7c̏~x|)̞U!t4BbuiYVVdG뾣Y6$$b6rZ*u:\5CT@'DĬ_%4“4,*!ybLOht C#NuCQ)R#H#6K8@(`jw"c3PÕ~_Ĥ;PSsj1ΰNze_gg4-BTCx) #^HY@9'wdmI`Rx秥)}I#;1xVnfp2jI8V|FE:6&<4CA$Q;^~pOsчgcLH_ܓvʫ,DLkay{0#KCH`^bNpܨ_ɛWsl4qĆ3qG6-C՚}LO'¾Cewbqŏֲ37}5:77m_Sqm/׳<)SkibQXUCcb[ Ј0 3N4b!c> |##R:嫚(Q='6?oM4*]b4#kB3'wUD%ZqGLitzn2SVD/#&aq:"k"ҹNRX{AV`Ԡa;$MEy`{VGLAlA)g"X\ԏC)5%cXKvE)4aI[tLr~: <2OC=;: ?pO- fJE(?mha ,]t^jU(YbaA12OM)y1Wr'Lr*$aY:w{+TO>6J Ar,[)I `cdh)ܒ8Uro>"*R&iS2'f!b|{J,QDb}m_96g2J}2GuPhxRcӴSWeq,MiSnXbk_9c4qzaem:b7?V9 zB"f*pCcR[2ԟMP4l}77+:,1VKoaf_,q3x}f{qJErJ'Gڮq̎ZJߢ˗9ͯGJqTX8m'A970@1x~y1:!D_[SI51&.R) _P3[$穇K@wkX,l8<m|u |Ýz `9EPFE1_a)jPKLځeR @[AR8^| yCw?OʳhT5Yy 9e.Cx_RQ sm9E̶9F,iVRuFuzk inTOlWZ_v[p1~=KKE/s)]Z(W䆊:#p2EYj>frVAiȩ 6SuaM-&zikJLǰ| N$͸ma#tFP1R!oW_F~Wv.m!.¤%36ؠX5$jup"ES@wu&ՑȲn*_;-KPwa e &Z7 f 55=(T$Ӎ?^wˤ=?@I{E(xZlXum7i0BY 5]Ljj(%LS8Xu`aԓNVB~1jH<n Rڈ:JK/;H<uZ69c]Cʦ.,T{fiAn>1UcBV{ $#Tzƿ֌1%YRe>]P +:$5(6v;u9{i\s?m(x!&J-\9FWT̳hG+ɧ~0Z zqE-9|o Irw ^J"j2 *X:]; S ߵ1uj.[>TyWf S>Ġ=(8ojop4w#d_,C_Rv$~^JA2|u!xt4-u <1:&^w9X _7/;=)sdd5ePwW~)bNؑ\Pg8@r(uŸҬ0v/q\ Z[Hҟ4vuxv{K/YW$3^xV">)iV=v^7LyeouNPhSln(Gm7B݉xƻLldp:d'}"<4)vL0RyrH?9S]œM+]p+"hDe_EBE ’;E4Lp_ʡ㨂gr=a]^>"U)&*tvDm4FW t|W5ϳxݗ;cK=UQGL`ΞdזMQi݊?O?]}d[W033ӛ^\5vPMԱAk+c</M3ߑYhOڙK^7GKR{Ym\छD(OKXîI2XeQHgw\T.ԋt5- dJBx<[ vh({Zໄ{+%^zɈ`_vףTJt,"`W +ش,%ws"g*%9oMhlElT.az34pl?Y ͱJv~ Q ^_ tKΧ woԕ EzU/3JRxܚҔ[q|sFG-!$p;W hg@(1ߋK)[&g,C1}?19uN94e&b%`8h[@h0v'LY<俴Ĉ_Uzhcr̠eq)#7Dy.5޷%--א0 Q11HPU&]k%Fx#yOq,jZ;xIሼtoIM-o@r EI=RZXzJ@g`Ͳ"*] A'%; XzOINʼn*ڻf~ Fb䥏9֪J㸃D8Hב^`u4bHp!bM]m[:R |$Ȱ&GL20j8Ufc[ <X~Mxpwt(tzYAH/-Jy[V[uPiltR"Aڬ̯AH|~Ô8։ʭ'Ք38akK%q{Ir1QH[U&?8LG-}O_ "T \GŇzf b"=H] 9>j` LwgUӫ\FZDn-zWsۀl&lqPX,%l*2l)9gFial&GŁO;l,F+]ivJ֋ĜSKES`g0J>UWgA;#n7_ >SpٯP T-jPDɱ,B xxwȉC paM*?\^yPB3 JsZ6^CE"F)`ym  @dn:;c-a5M1ɨfbX0Y&io*6C0?q`w"Ng8تŬum+W!wLǩ/X}6&vHbX: R@˵י)\/b.Ro,bx/GgsLQOx e{`> ,^)=Q<K\0نJ4 mhcMt7*LV` [@^G} wF䶲I_fJ0p]En2&bn%\ dlD*Y{yZcOboT-Ѧe!q"nʭYj.?; Urs/dzs;*H/4@$/A-Rx}]g^;LJ'%8]^5 1m h0 KErΛ) M6.ZT7jt(M "E/Yxh |-|(/¿:4WQ9.&\7?,}-z@u o(}G!=©CL\o!I2e$=?('IU;,N|{YhXLMPԫ>8$ضzi٤`aT!%I9TEq={oL5pz0Af pr C"\*TՁ4ɉ8Peh% p_J,{x9N+F"󻧮]e`ܑ\zf0pM5q_wuM~S>ReГFX (P=S2i8--˵Q p{҇l%X{1.X)d_cʭV~޶+$y-V,EgZ"U,%ȹBwzb9u,V>5`l o/( nPEdť%|ծt`Js]"X]tc~G%S S"мcA*DЌT+ov)?dV,[ yQsSbgFFSGpy̎p<8 DfD0 p]H BቻswHg&]+o?0oc^@1+HVgJX|E $T~Ma$v5>m -C 27;kcFhg5&g+y'+w  +wjHuR H'@h:BC|ht+ԶGݐMNG `&DikrJG6=XB뾪h8Uv/S.U쇾-AU`2gEĦO5Y4=..olx1IJ)0쌁VB0LQ0ؿw{J 578i''b׊lӲͶKO0]`Z]XJ{<1"1VG M#G^̉^üV~sk+_?aHuɟa$|X}Nbw9Q)  cFxJUpȟ45tFwQ{o+]ðwǍx=2ཛf#G h/9uHn@?GV|u=L!RʟRcL}Yq"He3\P! 7SJN&pugژRZ LC%0avz}w20 Xꘂ 2DŵCHS ^B1HuVgN?/u0%$545|W!o %,rqҵS y&tgǯ:7bg!xl]KVi@_ï*(| M[)RL&9TZ oul+l<]'QF ._ytp, 1\vBW3T]XgDh8\0z8 Sse+V*Wɴ Iot5g //6$^J9,#!"bQ,j0͚Ew]SIz\PM8,coa>@s]2M9ϫt{̋l[]ˣc9 `hM{)]sȂe*R0WW9Fn_"?uBd>- t`~xk¦\U1q(l?X>lLIiJ9F2WpTt{MCmmkWmz |/5&GZɠI7erUxS?oO jςOI *<t~?cϾ~ s`v"Ǧ P?bћ:h5'g.6,Jr+ǒHqd~(69Qik{ ̓[;۴dҘQ61 qytH>[yBf'Q&ؿ1bނՐ_E-Dգ+ 'e~=&{&B_J5 :@l*-M60/xC+: r %< .*30$.YSng&&VN7Vdr;[KC w Js'a+͛uԝ]=aȬ*P2m= Lwx!6n@<<_#\a[H={ZپcyHm 3VY`x;槁z?m{]).Fc)sTůA{Rf 3Z.y >"ֳŒYO>ݐ !tؐ`Q>IQ]T'@HѐmBN][> D^#^d&9pU S8|N s%fOY"[&vQ9 5їZEHGV+nj͊'%fAJٍ.qW8/aK,År@&uwTKU hj"ܵGt!4D}{GfYⱌ>쮺[ 6|aJOGoxC;bJ+ZPqAow{6u)Ϯ srU.A JX}\ƪ1jR@Yx_;VڢDWկ?!X.5PuYOi8iKҗU"(+ޤƭ/udvTpy8 a$UzƆFb9gd|$}տ*jٓzhXcuq{d^fƔ+ʒuZjA7`Z㒥yV ;Ή>kS\d<:UX/Ax2mҽ[' y}Doi-7tb ~erp^}DnK/۸N嶊qǸx)i6~e(ŮH;K+D+1֊`S&Ƙ [|K}=.LtXX&Zt`xULa2rY_57骢]6S5MMIxAu(pp<&3Ғ s~f9w"`e*# -MΡ6Ua7OD%@ 1ϟ2siPUJөrYK?FG\],f0F.awB:[YAA.!ukb)#g_I !e9otkw"cŝ6|\0qG A8/컦#?)Kքz*4{,y}UrNļƓ;:$hf% "w׾A=׺d(AʼnDm% 2-}wN)8V8_EI.*/)+cҬ-qQi78@I/͓f,MB ,g[m%q@&!o^Hyl0 fei*^$_G^l5?Iv#"鐥#Qs O1ASN,2?Gqo>ƀوCObh!< PxbŻׂg6mg}BdVvǣ)=Migxv9y/&+hg0sʫ!|t@P!߹5ô$"#)<#@ifab%fmN%ny9hvS^c\(uo&GЂqL[bF f]xxw2BtB7'F5lӟA)[:+TAhLxq9/Ez/u"W6[<3?89t4+3Pmr(Ȓ8h_eߨ-1~ďؑGȺq[ulM_ | u̱Vj5wP;!C! ι\O`QxZS`dhڻƼ1LNg ,DN{5D6s_EmH>lO1Pw_"{ok+t~,` ).슇(U!2Fv&ϩd,Go y}po+[f)wh&LEڨ fI}庑Ц|_o0>mh77c] sÐ)HlW jVe.@qun~$ =Lxi̜aP:8Ĩa yK)AKfQᶥ(rENT!)׷u)ʍY!OI% Ja/nR2>=g @m3\c0 5״bAxVʕAʑ9'HYwGpn,:*-\@oa>!'8H4)L0F찕*{w6䱤˽xp}$oimGL:蕂rU 䥔5ħ%&5 "T?i<=îN]e #A9χs*j*OƉi3SymJqfv:Vul3#of)5JP ĄkWX޻PrqIՀJ~9pI 9 rZخR{L 6KkiOǷ/ήYPx+c#:o%LCޘ#VuG0a_{`H T bC\lSEp%Xݴp&8Bi1;i RS~gFש~xnT:7byza Vy}rG^McL;h^ bT%~3}mMB|@Ū 5KLn+lyv^21Wu yJf p/J!zhjpẤs`0^mnԥGڲ|ilPm3PV.3 & /hoҜb,;l97 M ߺvA 4@"M/#.OEl?j: d5SvҀȋY\w3 Ɓy`A Z/{*xΝ2|u!&[ :iHh~Ӗ7b(譥>ʎ|ڻ_ZU\} 2 )'c'N+lSaC.kÇWGiq<o|MÓcN,C|c I~5)STFѬnTs,S.ǏS>++2lȱݘ9x SGeSuh:5'{E#N/׶t+Ms@q9Z fϊ )J-q/=@U0U/>e$u/$>WبtS?`_< c[ntG{l >Pu~H[<*6> 9u"K"JD%B\y iiՀU^,O{3xw- ZSH<NOvB M FLy=th[]ָjm:aǸ s9oB$ @˜ m%ffd(W-Y,M6y@"s9|rmv1 $tP4|vZ|Tr{A訏|@¥YM[KdU62dvhчTs2 [ƟhI垔':mRr<9F(xF(v[9rFu|&H7D% EBDvlP=N*cr<$Blree`N.,jpQy7`r\1"8Uq+hPSk uhJPx#MDƓP-7gO]§0dL=PcH|z3$D hD=O45Z8 vx8XLroۖ0coy ]snţTY{V5rb*49l΋}F3#z,3 -’m18/ `!?j}dt[?V>hC$A}T*^.UM,?=?:32KʈC@DܯEnFT'bE:4zߎ2$zs׍'y=ơ+UA6Exd…_ <(} ϒu{7Ǘ8h]HWrDf]=*omXK}Y 0P -19oTC'h vc(: lngZqs{;`}jn"A?uLc(g͹ja_+q8xvҼ{!xgx 4?q9ii’.@xU4_ XY A*]B|<}.j׾?9x N:?L)lxƍ讅3s!Z'1vOQwzr k^'7>0biE3-8h E`w;t+aA.Cd@k.gzTYqEv~÷!?W;G6C E>il{׊/u+z@a"Xkb9I4ww[zTdV ⯩_aj!P09^B-9X^1Q(N T\GJAOG>9oUy#tsvrxf-4*~LL.|(溆-Gy(ŷmf Z4.EobHEQ;DL_ 1xSׅ@U.yxocY{y<[.#d(V?!C6c`F՗fK08%7f SϥJ`P>3DoL|) esUA.l P{RwJ 2ksE߰Y ژ'tM2`MFEYs?boSޠ:-֞##I" RT_ ܺB^p֍vܺ\\6 jEؚWAs]MUS<[RP]q>$\U7R&[l*U5/i)lXk_i+e:^* qhX# _NNƉ\\W!WBiC)tܻnB \Z 29 H]>'3scF;ĩlq4v-]+=?S@2C.U]j}r\YhE',?vhЋ}5"GI^jE.0eMvqVT_z 5(MV: d/Sr Bpꮰ]a Q<]rn1Qy u<$Yڜ₎?EX!d<6/9BFv̛9G[~TK@VND[넗T&pWi lO "b~RQ?L翆,x 0άcָc-|EK!w;u[zs_]rkZ-l(>KӃv#?ǚ*&հAtʺaKrkq6r$|Om2t5oP @)F]?nXo^'Gg mC<Ňl3q a&w(ۘ<byK]>E`Rl}qXj/:ݔ G![Q;$Ys´Ъ/⮰䝉q&˚{e'Zn?KLbu{|Z}>,:8R606K/pIZe&v#`,)GWBʕB,]FqTAwyLө/)ASSJbYn7 k\AjPeY5 bWq&ǸVj-[v+IՀrb>I%I9/Ⱦj5 9Ɨ0?xojfqE1S%;F RSGʢ1!Q+ Ӂ)5NY=)F)Bh? 3:W~ ?! ׼{(OR}4SEsB v~k^]M4*^V%'H`L!1B՝ZS5cc1fOni9:J1ɿB'J[S;3z{/G\!vy ~K__ڈ3u3 E/,@c n GT\ pu/azĨf륁QdYF\R99Τ6>')G=_ɓz-'YϤzV2ՎfvD(9|+d>lɞ#믗&"w!&JII;T QgSfus(ZAe()-h-I^׽4{dWb^5o}ڡTZ'>m.9d}ʂFbğoX<^d1jixåfgO8eDo t< Ø\s'7@ѸX$+IkL_}z5MR#<< 漻>?C x4 isVW}NozbYؐiD[($L &Rp3x0,XY#}M] _qrb&gȜ0ۜ%Ҧ$FWxޢjӈ(5oZ EU$NEXԕr@_j xʚDI[smصoYiL[@V0U7ۮлH3Bg}}= w 8q6Co6KhqMLeqpAHO{__Dp o7@/,2ᛯ !|oMDVS|bIJ767im벐#O}Щ.% b.PQ5@XkYoLq_3Ԕ^'| JJ|Rk^wsĽ3ygȠ&@ f) euns,jP}[d4>&%7*6'&&B2"}H}2̩CnrX2LZ ]4g14Ԯ))yte+b_za KYKaP\L~#'B#-$e*=Hw`JUY{ ME:>0X$${Omq.ڽ\&_\t7h1b]>Kś9y "KRCZn}zHm) xtAĿ#F5KcP,*IC[$ \'RmKP+ZNmoĉz,FSۑiLs=('MLDJ5't'i_ߏGh;{:*6h0:ϼ¹ . 6)3] ˙+!tERg˜%bMŦKg\':*}wPBM7I);olLXO?wj0uo2+T:,#0{2Ḧ́P;,ޟu)kyu:6.%ZIv._ݺ&螘IRsvVf;tϴuÈz%̨ҔzvY_~N^2CT(Wb0.Zq{V(X&98R%ӽSi3ꚽ33]pI|;v!?]EG[$kOX{;H iS CO d!˰?GWa{@˟:E08wpt!fY?*2ϔ {sv=0o)~}!Ny):y&YV#S/H6OSBg"G DLY3ۄ~we0}'v7˕ bSp?E D㏗n zP @AmtnX BtdОi=Jvo#ۚMB(2bYQIז9-+@#}C:VK͓Mョ!ɨ1w:I s,OO$mZBK|*N`[M:;r$Җ,)'>{c0LfSS6DReiseyK #6Q)JF4Y,Nl=D^(ge' v(x{kPB!l ۀBBfl;MQYL;zUCzCt 8U1g,aq3Ԫ x@6a!I&;";4RLɩ]:2*=ja(/] ixUWBu_!Dº}د'4pI 5 /9G4_d*N/KNM}?$+?mn2A5̊f .=J?ܤ>S1L( άJ"͐b$Lue{LՁ1 45RT3b -odIs&b.uBY䴅`JbRoo_c*ROyy#g[q}(9Z6>B`j?f?!'pRj1->ȗTz-e4W6׬4Bc0xKsy " OŨɴIP.L$`[;پʽ9t|Dz-[RPWmdA}%IB^tɗJIv4r77 / |MY&E, j?hW}[mq=KU8Fk߇5$|G;(zJOm~o덫t"J8b)];ϣFd'qk}`NA( ڑ{AUQ vOymVY)Qyٳf'"5_uIGӻ5i"v)Y~%]:~cp0a=i -C smnHAyܚQT^YJ`"6x wIx$PNzNI_0Qh X 5eHL}(9_xߋu;<. ̍G~(2ZAS%\YӳJl_ M,~kSv-9D'I0AܺV5VrF#\z sÎ%Rf`TUz8`y8۸ƺ#yx?ɨ@9EMN[Pt_x~L_"JD!VRWU#ZOƱU8:1'tO6e$d 㟌 }3 -P)]Qb!k6#*xqݥ_N{I}%Mf}d ؅.q_ N^bm K#Rչ&n2W5 p@w~`Ѭ%`@C, *\X:{M5),U$͉TM?`L%Da71#'Ra-ųXJ±U4ΊcmHoLdJɧnΟ.Gak*Ͼl|IOYWjG{%=udݼPj&3,;˘=`Zr*u(HsSday_4e 4Ky_r&f`6m84K5VX,`Pl0;Hl*ݻ gtA}p ˀOy"3qST@)+Gb@a NZcU M*-&ZYꉍUAdpnYjzcdyƺ EV1(M}渵$`Kܻ-f}l!G&b>3tis/ /6$(#5۲GfeuΎڢvIVyQH^T,A 1ZÖ5vfw$5S.v>Lfo{961ag^^#IWF%6їBůdhonun7oNǴ+c>x^2/o?}+P02 TxA14ҁzE WugLw?owiişIhLTb^Ez^Nx7|ed! ^FLƧ,_ηi.K!+ceG=xzgJ8%:q4qIvǻML4m3I4͑5$v# 47$Jy[2W SK5^ao"§GB HlڌI) w 1R2x%Ύ/LIpNIA*oc X'$i<.Z}^%8+ם=D.ᖎ5t 2@5 tM$+K("ȜpJ'qқnW|ǖ-3uC.XQ$F5w{*lDf: qsܳ E,Сx\ۛ=` tp&RbxwH5Ok3&+eg=>6$V[#nr,`X^hQ5y9aPA(Ï#lH`Ib-{no Xuc^3CM /:+'"!ΏYJЌ|ɩʨ$Ujl]УfJ&tyS9#1ٯ~e򗀗9n'io1$8'(²oK!aH`l8s/v[/pJ)1 @LD/5({21FسY˿ӯ4ŵO.eG-,|GE]|L<_\z6yQHϊwYY,x̪=Cl[k #ulkxK{vǷ]eo؆ojO;4&̚9Oѫϭ{ނgjl^K3V'"Gl?dLIf9{I󒽟yr^hf^q-{ vl%Y *S"٥mEX'n R:UAS+qyp; Ậrۉ$͒u\T{-787twDEZ~ qRV{UœY]LӶ#>&#J`<D$QHSKpP~Fu*Ò? (+#}M53-Kntb^VIE=7J}qm2$CKBҹвa54 ; LF3o{ELmR8j*ހ2f#)'j8[yP0!.{arr&:)H KrJEw%YEW戆Bd7X{@ %wzplf֠anɬ[>|H!Ogk.0"UYuw,j6~R (,|2c+>RG0`k:_jw*~^ H@B&q~.^Z_mT85+mg:阂8y3QU9N:VZeC(J#_>xv[:=,:׎Uc^wA$7UGwG.J|IIݬS3!~(b ݯCc{c;I1CP>JK/Dτ|w*-V*UGC*W|R'cyk8_-LٙCvdu}V-0Y8j7ة}E +obp+Ӆ_=ޞ|o BdiiKAxQ0sZNdUD;Qh1Q,\u&$ [qeOРl|H?'G5zo`S(iS:" k`R|=tIkxȺ|~Vh$0vq!xUߓ$5l3[nOI ElK-9bB# "ɩV ?0(zi!ORc{'c)Q;@+i$A{ݶI _.<T|qse*O^+-+hx/Ѡih}=apm{-  E-;!HBRΆqZd`R3,RS|Ǧ\w5Sb;tգֈ廱Ψy$ZB˪e"o1 p%<ٳt) TT^\}2bc>DvjS2&/ݳiѭUy/%oç[,QiT@Q0@[3^N$NYذs>kP'r`g"=7 ]c2=)ώi9Giq(jϧ8+S=$[/2Au~Nԙc_Ӭ0 tїUkkYH7rϒ1@G7To3jp!e&n jo㘱lm򊋿onC,lbgZלtV~/ٹmmli v8zLvsJ.AݛNs|* D!dgyE`4Oy@ەu)1yp 2Rtbq1O@6t$j?G['lMT QMy#(Kp;M@zQ1f&$Y?-nnt'`U1'WRsvI mǰje튬U7vI&9k@1)褉OpZWf'֭tAܖZEO-?D`͏77Ea5FI QGFPhQ0};TEDBgU௶Bv} Qίl~*R+;Km攖&SZ<g~_[?_.Y!ةfPO Hq;+;nO$_DhF y:E ycV?2sD3< Dn fl4hLޕ#!C̭z=㨚B0qk+=`vq$+cAgBWB=¸ bVc$+km/P'n~m (cԂн:^5zT`!^Vn$:ߧKJ{g oK<.35xȊ֌; ;riYG} }-:-RE.S{. `9EXÇEA9tBH%|o8 9,żzf z/O,J`=3Q/f.dZZx2QI;IT"ֳm{o!F0tP֖2oN@H R??2(=21jsU\I`$ q%q6W840^u*ت}8a}\!X{UZ/PX)~w?e*DX\#| Y\JNKpNK5p"rs2"Oc1WNE_Goqp۔B*NTۢ Ȏe!U3tvHj-+N}8ՄPKOߞ@i|z`xY^3$xf9v]dp:IYhzQd’wXI1X+q+&.'xsX6mĬWi ?3`dV a0Y6%.=̇," :vΤL=6u1h;"*{Nz݀ڹ3P5n3=E"ëؖĴs_y!d?a#F8 &̇'V?RQlBn0+P3s0SkaxO*LeL3bs`(r_% j!F^4d\ 9ZNNQJ.b0&~n${/cdFTo+/`ǩ?(S.mdPQx]yZ˺r3v0LRԜv2H=;mn7c\jMj͓}e|&7u9U ,?بwy+ǩ Q_\&L;*9Dza^dF(įKFtT!WPW'?ڛرT+.w^'dolQ\T1ϔ jϙNaAc>W|s^tz_æa=65(YK`Iʧ5hrch9BdBwg>qSx[Ƃ5yZ""g!?&yre4.(MSے. /c}Ώ,u֋~i8r8~mx/ôl8RQfkmֱ!fxFI1.+MN=Ck-{v3t=['~90>}e(kS.Ѥ,$5&Ǵ"M*vHnd2&2r\#f9}pe5v4- ''"ߚ!b 5T6_/ ل4rUSc{qBK_w춈SAj&*Nj ~<ܒ{0eC%>12=vV+=>)i2|EyLcS^q]%[$kqbFU,&^lNl;xQn=S *~+.Q B$12%N`4Kf%8.7Ȩͤ5USIR-L WFFHf'ǗŲsͺ+)&$_|/l$r܀^];"A9FAz_DVC4.C"WtLiu™/*C͈0 &0ɏ j>ϦNϫ@b_3weKv%w `2U\[i m}RyLCSU^WqԲB; F =k}ƀiFbSzc]=,r{}ٖ$ט]ֱ틁X@DyH>Zw !\ڛ}`Z@X d=:|nlyX7m:Tm!wg1hyp>ƖK|ZIQhz: r|5K:tF ,4; 1GKhՑԦgHCD^:ȴئ%;5'5Ҳ1> $\΁N-1@(? UjLidJp2pX;Su ܕ nB/f@=ˉg{%EC1}i+'L~? %k%*7d4T9lBHQd|.nIx䕹[}2ge ca'yB~>4p\ʑ#7߰QAfy%'7ڊ:Q!½o2d= ZNCG()AQʁ3 [k 2#K5kcTQPjɀ`{A)"D1~˷ 7ڻm1(ˠ-O7D(v@m7[%/(?>L w!xs2YP\tV ' 8M*b P ?Ot Tt˘4~̜ӫ}~T J-š9}YyWfL2*֦Sa.8ft|w$YwSB|u0mWi۟F".ŲašzaZI u옚ŊQ <fWw1SFƹTtfquH'f8g&7K"S[ONJR*p)9{D]x s,<00%I(6lDUm@TZDd`JԢ8*+io .N|ަIGW 2L7_}bYBW;YbD$aiA-e "& 4qI}]U zi5 /d:Ymȼu&HƾLqshE,ϋbMn%qWGWvPh{xseFcu`)ox0#zF `$0z'=T3G\C!bLYYQums6!;'@&f]+{އ+>8v0K uIL.6 _6ҹ.#DI]9nК:;}|F|~nϚ?jhmިR -ekJj7Y+fXU*}{4>#z`[1Ͼ9Ť߹B86m(f }<8w%>oI'?9BGTɑƵ9em!oΞ^f4gsMWpTF0P' X0T%j:|muw o1*@&.]0[/I6hrZWzrtm| "В>뤽 5\GWAF,L}׼˖%ړMS͛)˾3P^xa&AdJ'O6@?Zܸ03:aqOv#:ڀXn7-Z,k~ ڭuX}R%yxӗfc[Zgn;*mEC4É<4*xG73϶ dHmk_3Fm 5@xqG9qp쵑r}:/U!sSn Kb2_Xݘl?@~d/pH87 +ƔјM\l~ 4# "~$p$vtr 0IjS)5=<ћt[si&+I?PV^6pM|z j( 緋Rk^H(k+"ag ӇLWvC(IT&SM4)I]ahwSPM% 1-m̊za`x2ڌ3UN"gWm} kZV;_+AYKϫLv-# Dw=cuF7cgy茕½nB/˹J!&ߪݶ,.[Aы)|Y91zwZ+./jȒ* ^W]giM)aڇĨ_;^S7D7SH NcrjtqjOA+7H>^Bg RR Y*|6l.7F؊NpG{4"Ҥ<7( eØu2CjwJQ% C2c.gxƪ9}BkݸZą?إօS翬dR^sGnX1R$g'pp)KA AkY=? Z͋/uE ꚝ(vk鬢"U_I@Ro2} 4?Tdm$L[z#L{5 /IոaΫ>łr  t`/qhX~׋߯ F -v:0j. `LĺzF_ Oف}}9K6npDžkǦT_"Х5׊O;h-ԣ"kf!pHY^#\}y5cU9awOmjWwl[*qV)FNDQEZLyL"ЍuaC%wUL ai2znp]}Rz/;E_sYې ]%I{e!LXukf"\i H;U|= 5ce=>Wd%̅jElhQ 5.?дxBSqz_@ *'k T潥=ŴۓEc}Pwq91!4x*B'ISdRcKi<[OmN#E@ Щ 0C|m5͖=HĬ4.%g~Hg Fk`v-ܥX74 /^n[#q 6 f>gVKD"YW+kb/s~1A\ C:8.u(nw.t\ʻѫ5|YU{rvke5qcj.sU<U|6_y"vNTN/tk-,͗ \<6 h/)ZC<͖^Oxv0/x( >w7\*x)"RKU+hX||#+>8ʓ3 _ g5EʊMW{C=F/< nfr@ +*#rj#;.Ҡ(􃼊v}H3䃣07YP\b0y~r"Kqo.T  *Pf~K91c%J($2D\1S& !x? J4s,o&`F]׊Qs>INQϨ?>KB ,q&A9jIDw ߑ?A5zT&L.k :R+R La9Q%ȱ%YfX.Sl ݣuaQ¬)߬KIbbn^E߽jOɡ8єچ̥V2ԥAJؒDי"a!G@֖&5g1}|uA F%Ax I ѫM)艬QpVD,Vi(j+ؓngӨR~*&n^Jv1>߰\j>8w㖄,) GͱVj){'O6]p_JS?i"?X0عX&=[G 4=֟WxzL} ت9նf #^*In'@,t*2 f}=Pc[TK .1,9CʷEx_44Q=!ѶE!.{Z7xǝE:z)܏ppxʐ5چoH|udC@8 Qw|+qSާxzȻ+V"@( CYX2S>4w/6YH4Hq & \I,:5+M@a5Go)}&agb<@l4~WMQoL$b퐾t+|geшwM W[ 4fe1C=0!?OT%5[RLՋ%.C[;^!4h 1W7IfLqlMP js-o >/2$4;aE6 :\Qh"qUF U*8^\9 K'4BO>E"$.k)kA/)UrB3v%f9z"^Cz{' abpLT4D+"c.W\ߝF4^` +֭eBZI/ c>ͺ=f"fXd3'TQGsB\O#=Ky{ -z9J$*ICJ=c c}C~R>wRR jeR:"g.#?mւAu)ٙN]L7C~J?4f &v$88[^׈oJОTl"O@"&j!Յ^7hQ  䧐L/_z,8Fԭt7 $Pfep%' pE+c\a+xe4䟺$#&W* վ(*jl^3 ʚ(IEu]V)%:|Ex4b ,UHD5j^UKʷXGȼ۷5[-Jlg&S#.9}E;' <r)d[FjF",+[—.i/$˚ S;E=_L˰.ƜQ\NvHa|Dmuh)[dji˃ /(sĶE`vv4b9O0Z>zPp9: L15>,uB*qr&SD=?:e3"8RJ@E*a5E ̟ɼ!^cNy/Pg:g@|U"'" WE~GP 17yuLnWBǛA .hEkyiA }ܚb$ Mf:!.I8 8؀g?wSedAax>LS)}֬ $]Zj[ɛ%~X i[]-e%c3&SXl$\N퓨vm4|Giu=Xᝫ]_T~7 29")|h-NHakAQv} 3ą@6}+֯1Gh'΂%+(#v3`$c)Wz#,.n8)/)|o}SQx#k=؄GMnG!HX (]&=bnC0=1| 0JΑ"6H E8ٖ7^9JGbY(᠜Cb\CrQmYҭγD(J)T `PUw >K%z7; )y9e-ӱᚩR Ʋmjp_P] 'iuZel|pʼOҍ5U^X (j:>BOxH:\|, @K%Lҝg=YwyQ_05B2@J*N=9m|͝} xR @kj cȱ  })A}"?>nEIzrbt$Pu/x,1CehH5D%nzTl+,Cs60+4WQYvuWj|H녏~"# },;r`M[`}24'%RF_&baV_yQ1SͪA`=Mwra#؛rAhuxވ fǸQ ipV~R2]/DY鑾9WX? 뮧]AhGce쌱&|!"E٣U/f}g p`W#wX`$@FyW:YtUPw8oAkϬß..ӖӓhDi^ @jw`9ɀ`783ycv8gG:kcI6 2<  Kiig$ $}ŸVL1Ct/L;% p>idM,0{5]_. mPZ!Ae91{I0-UP}%; Cۨk'(i}} *HBDuψo0 cFL>p)icXs'n .H$r@U/J!?Xo_sm촄E]TbG:d1"u>g {z1u5\b$ p}?h.):<|gN@8O$l1p P&2Nv~% Foۓky2Igp;@uiA#.aPw]d#m՟pj-@TVnFWzaVk #&I鴀Ecޤ,Ë.思<[{ &6^( {P$4g#R Ù :'PU|6:c~ #.z+Y@di/6:4@>@Lݍq.*PSTīMp |F!uvTN?{?:Ar^'x*>? c e-<(us/VYK@pak~h`s`>ç]}U$dxwX$?L8go|Rue4Kq T ?p1lxw? o`w} f U #]6.D+L꺩mW7 ꤞ(uXDSaͳ!#/|_ˁ'2H+?<mI"e%|!b辩%OE07ԪY3AdBor`;hZ-S '6-3&r],˜RIP~ 8Z\Hm8khC $ޕE%sUbOm0|@,7\xg(ӰʼnJ@ú-Iu0qK{dJ₟ֽ%E&2,vBcgX;K>ArU_|t6k'@c#NP8`ЎZdSüÞ5Ś-F[=m#V)M*et/AʿϮ-"`KWf mB 3| qr~t]ӁސYC_ x 3 Gr`/ϗo$@QE讯p fr܀ȝ@peM GpW˖ht}_M荤D}vrf Xݍ %ul6=l[s%-:.Z1k?>uq:#v0"ѐa"Ab@ٙ,fְȿKi_ Xј9 wӑg\_:J.nΉ|(btY&" CX[ϿxQ ꗞ$Gy\vNHur$bÚ5uvUa3zzjey2't+c_%lRas6Cc=ޜ۝$x/bDTQGsչ*V/0Q>k @;e"JY'>U\pV:g=c_iŷ.ŶVI9fY<퇛 .! ^X֕^} D#L$QrgF)?[.SĮJf%M&*r3XR'UyWC5rwnWLW^Oy@5?'#&=|>VPİurVB#Cw[T3i*o@CZ正v &sr*ڡFWUatTA4]f]j22Ahp/C[^~9|`p}zQACmy+o/YԵ_̚wM=؏xElZ^-L߷.43$ YS( _u$$Z=ĥO"3k-䳉=Z"|=)_ uܱ2 ?t* zX-P1|V~^q#ARs xa?͉_aY`ܵ`k쓍+K~66b1M I>tb{Q}gחsxcl]a:DQ-dxHgPHR~qg*&O5A‼?dR\N;2G{f.4@be. #N 2pKyJ! QM"pڀ*kB8ю7P $"=i8&J,u}(I-|*\|Un{MGl=qǠYphqBZ.a<REhıı n 6L_O;YR6~sYQ`u6El3oTN^K)uMI ܉˘#!F|*Eg6xD wD?b%#mle9_@mG80"wx,|O,zMqCnch BʹP.>Aavr/-DF *y-"ޑ*>N}G Q\O No8}viT<uX\cjIAC$ᦫkjrϏZ=ȔjY>q9_K ?`!2x'P0ӂHTBU>7ta"˚lk+&.M6~7lԫ]ظmrEXp수pԭ0Ǡ_!={4Tm so Xt ad,ۘIBwjѧ R 6fsX|X*Pa3o_z?;j 2{_T`W1\@[EE+lC1#ǵHꃢ4)nh7=ʹ4Ai\Ѱ=uִȝkFTW~B>%,A'4sdg7)P/},nŮ{l.v*uk9m2Awn`(n%6x{Y\ dIQ/&+$0 \NǴ(~a` VD.*r+-pI FtzD GSB 9 ikKB\p9@cx'TnZmeRz<ށyZ͒r[~.&8H/F/)Gnf*G؃S>p%qiVb$Zl壨,vƆ j/Jl$9md[e+/)S.!ȳ/fCggtBeMŶlCO]޵(g^FN_rP ~3g]N3ܰtk;QbcCUCe(ȪiV͗Ғ+m^oC@ClQph2Aid+iӗ:|fzx\Xb4dS7IP)yf \|~4{ߍ -#3[#51P=ؒ4p$=QQ9#}ֺ`[Wk[I"VcS:=+EOӷ$Og} kydOT[+#mGYx-ְkC'%7\T=5UXgjOx1vM2ŕ =i9m%D5Q( }0Lwdqg̣d^LֆJr[ |QбeU1D ,%\d&l:ZYkK4pW󍹒>7/ Zѻ3Z8 g; k S1uQ4@UlZvRsm+Hmd4-zAmbbe!aHA:\Vs ܶo'q75I=h%*oЦ /o/3ڪ'ENⶢ2;Bpo)Uӧ_6 oz)?&n'\ Vet H_(YjC6& -+X$,W$lxS"w=$6 +Drە\GvcmaE:}\ } O5 '޿iq87CbԈ]޽sؙCTә}* !p2Hn(o6ߢU3 #t< FӷA͞M/KKM0# ;*vh8|n kDQ~5ķh%SڥԺ.-yWG߱鬗2IXl Aكi`$s&A򞾱f=[ç䵯:^,mrQ{&ի,Px OpBoۖ4(M:+|X`e5ϯaѨ2j^ [x EeG6X Tnƀ홓Pa>DM *IAdZɗKѭ{nLĄCPL@U329 4urGKʢD~-p ;Kl"ODM>Y:m"ȆUALR{?w>N~96g %[κi6a.1Z1oha~;o_[Sc,k!p*6UN)A閑a Owհ +O?@M~y; c@[;MF47V( .sȨ0j+r4>t&O(kfxF:4փtTJSpG#={^+x?V˔%\ @*ư )wTb>Ÿ -WL 2L yf茬 vҙK7s&B_R.H-& 1NtoșT4 q9)pc2 7t7"5FEkP/ -֤)xQk )hX:ǖ;?KMJh^(/XF@]M'⒐"(iQܢ+5WV-5!m}YKI6YkV깷>ѽsMߙOKu -PcYKJ69DWq͈c8jKW yFI-R8? d MS6PՇ =O4xc6ƸGAcR-{ 501KQm?ɱs }/biPC2K'Kj7*f!^-~R0k{jt2LXE^uqT5^~T`"sOWo;NA(ol dV_OWe>m© Mzj"ZLfäuER]R6A`d7rQ eP>*6o޹P 8Bq G2~5M=`ʽ&Eފm۝[O]46:t0Y^#ӈQCaCA:kb/;ƌAgSl0A-=V3bγ<||(V4$?}yw ٷ eu}ZWMN}>l/̥0Onx x*<ޔ5T r={o)WqNiV>]ҩ {1XIק;0T(q]=4RQhxnk1Zzap wtH/1g\>Peh“)0P#̈́Ӿ"$=,X/YcB%ʹA`4 u !F%(pSHR b֭hs\SI2ހ$* 7w 5v )^Iʰ;ч/1%Vj"X7k~ W*kk=V".)w!TB{)B)^ANdгE;}KmšI9xcߜDUiEҐn5viۺN.֢@u5AVG۽XJQ6d4^`0E"-POsH O+d]A*c<q@" )xaЩY3D-7ijXSFիQfEĺlbL!8yT>OhkŋU;"bcP^E/Q}w㶑{ ;Us h 3ט]잳jEptv`TH 1DJǂ桳2Ɓ5tD04PNTQ5a(z@}47 los6mҝ=3z +&T*tk/@Mj[y}Yvʗ} HJz /VKox4KN@ ">ݘbyO~m9܃}m+<5cEnofl:l2 j#YIF"x{92T 7ty9q v2=t BĹRzu#) Xt)ycnBe*P@W-ͺE(1=(]]tHLD{ j3rɸjJ=5ub$GCo%kGY<*iశ2&@bCPR1 $%\?]>wm^*@-/-rvG{#CP ڕQ&Y?t&Sl!-3z<0VG0:Y6x롨ŗv5"xb@GRCM)iˉMSc~FٛSXUWoԺp{;'i5΃Zܐ,j#I5CL3& D@bP0jyG9ꑅv`${["6HwHe9Z./eq nJ gBwV1e~&: 뼼 x ោS٤ұh\3̈́3 ]gZ2CA$ؿ >W$g/C94R@,-$?t2]D0D?*VnAv➛.o-[wa[c-|:.3f &?\ݟ9k> O/gx> ־ZJPkb_fy:G3m7V1 O;IGzOFVd ]!j%z' Җ #jp4'H1=x%h4CZ #N $'@+͟}%ds̐9N5_@p;UY$.0<QQ/~A j^PEtIX{UCGj|'n?-(+pZFp{ڡݒ0ʐUF2-:yL9!Mս);`.17~v)ӖsBi,O MRi.7X%TCZbӪ1v~_H?6'c,Cw@4:'y-bı0RW!;-9d{6YWҹ9bEجqQѡS/'U@&Q\a]nLa?TYdR)B4+RU/!RբA 6z`_Cs:ޠ*0®k]kഹwm&m ~neqR٨e1# w+<FA"eHH8(?bI*b~οi%OmŖV B_&k"ŐHi5#9qqI[ϞNj 2fRblSnA@I6+p? 1-JSI||X6OR`1,z':9UJcGz jL 7L( 4z9 WO|'Wu{֓ NXHt9gݙϯj6-*  sAP/9j ֦+#8Hh[! \w-??t\ 63/A.LVজor%J44Dv_+R%".2>T>w?* 'Y,D{r%{W܂FF0m#Z}52ݪ9Ƚ\%}|%kx4L&b"1_|Z1YgA#Hptpg0OsȇwsIҳ`&PLY=t*T+Bw-l{.$UJ@`d)/Ҝ'0O؃G$)|^ nKV9nao:b)qIqʉXA+|tiR#+&^0&j.^,p)RD_NBA[- Acú𨯤yBLhlc"uwMr<xeB2zϔ"tV;ӾֽBX렇;&SH-thj8 =bvPi7g4Yzm!#A] /h |Y^]R aXDwQ ;܁r%~Z70šC%tb]\XJnd^u_ӉJׇӀa~+:GeεHtSlP3da@,G5MidʺX|Ú'gFaFB L}@SdZB/r I< ,~Zi#7q-X@`&*ÐJ%A۷$ /FaNzۅ/ܰgv~' 1#s"gIRl|pF"KF2oW5O_ G_Uxi@s l9Om\ؑ[e `Lc#oxo?Bd|C:]D '2oGhin1oСb::ZwB߱̀|Y<הXPt[H=EWH% ZcO>et~Kb=!jYU% ao)(njq\(KMީdY?K\ pw.Y[h?o=K(a&J{qi(n:v_4>'b [s7X ̤?gWJ #hGA{+bERh<l//~ݍ`N~, U+JFŧpK0UHr1X k<1zq<]dWNraѼXB]'#09fgR*hN8 j?1|,a&a*Xҗuh TI!P-l[a¼'e ,ߛx3SPA$4d+et[PD)iT9yfH<0ogA{I F;N C1sWHՈEwer]icظn|SwJ'OR48-Ӟ+ $"Puo;!a:#֏cӤC~8$:vk(;^\TXqcJ")O֬,H1w2)$c ,w#W.fϿwwlhDo[mQ:k[*Oy.\g9E,?Xg[zP̟xA_Ma,f":rTME @@X2^l% u*S}^! 'bE69m#YS2'm/bI~i ifH?pZ[۶E%Ā߇s=ų,mEc/튒6pdgPr;̭d +E]3h pBcG *z_B .:GR+\ۆ qE2|)5˗)ͪ{}1vV/K^ߎ1ڍe4 bG>^~'\6(dS=a*p̳+PHMB wj}>a\e̬ôctx{Oq0VITTڔnb!]FT=Ӝ $BQEcg ޕvW|a65!r-qQsM3ٕE-#4d-D ~̚5߉ v;pLyw6m 5XS5=EI+tQ_+ih*dr2~LP :[إ gJ&zC5 S!R*^Qm(0Jh1=5?I,=;f3sT9 4$ERC Ntcj Ụ _ɝKc@Uv'GGԶ4!vE2b6)}"g[ĨihĊít=A u*Η\i_vQdgWS[ 2yYl֮MU4 7:UY6[ ulnǶXxX,tժ>eM)!zVȀȚHx5&ކ,+UU;X3rirR]F!; XzյF!f $;iHWo t\4䌒#ҒE5܁]n :X\$$Z@ &):p7ȏٖho=3?o+U+';kWptBˠ)eǹPyRfFKB'Th.ss@F4*PPhMVbB8Y${ *F١B{xߜg8?~ s'LxV.uwf֔2F9*۳f@sC*M/i,y2vHgΘ[`hBXGޒ֐_'h1~[hnu|XfXis{1b5͈g=Ks2_5]Qn_ldj1\jyŅIeV{xK/"wdgVBXб~d&ѝz+F=y bMHn>u\Yo?b;;r~\)X@ a^ ~d=ˍ3[}4q yb2O+KfKw%Vųf#Lf9!_WGa A,+E8C׹lR5r()>/{^`e,%C=6f7q FTRX)aOm|;QA*6欄Ng,w;) uVڴzk :GčۏuA-yiWsg^BĦ jT <cxi 6@8 m;;ь:lL@#%)!#F!Z%^\v0 ~kqS!k;Ӭ;QJf8f.K^{+ >FX"lMz[?x,t*HֽHunI&Ww;koZg@n)4Q^M7,6 U¿\0ddW4y*_v5WQ]qR =䪡FiT)0R+g`i^S *npQ =4돳庇PpꍮfH"h޺wX7W5LLJ\U2(/ x] 7aQMXJ,M&!M-2pևhl ŲL3\bPW#YW/nJ!9ti-"Ǟ Z>G:Yn='n$O@8![LN A m~s~D!^pMӃx0Z215sRHnylx04"BXF= ^ l Hw"$꺃m[%4ZXHfנ悪`5[0ci%P Z) ^.YQ mrrۜ'$}ʪ-KU3&?zb; ]Ќ&ƱtODXeْqQBL B(eHmWH *.lP=֞ZL :( g,o; )3Ȕl%gh+tZy- J4v/2uO`_$h(_!ˈX]l'X(rl`tN,Ar7r R~'>iy . ON$4_^!B Vox@2>=.B//D0Gpjzӕm9j;bzHhwj@l|\_dV,?tHKIb|^/a≞ %}n|>)x[ {M<$ox~x`ܭL5K,H9 /zx-e8sisjHib22k?uO / 3q+Äuݺ*po^Efnw|>5{7<&8'ǻ|V(鲸sYU^^@֧էd@<(?L!kDga` +{-m^7:1e]4pMw9I/@r bB| 5]sbOp|S‘He)t)^g%m=G(֡yljW͈H2Shu$ sZaS;v9+oQxc \Yi#2!8ۖS:h&uPOyJ1f߾CΡvt>7IVc? x&dENd[L}?c|"vC4-)'Gð('T2 䲃 A!a w Y*,$=CsT>O#%prV&HTo]sZ<03τQ5WƧxY؇w V*o3]3hYt`uewl,5Rx_'F56.g:B`b'ӄ.LUG&kByP q]g&LՇ?A#,$gRmjز"PJmG+ᄦx5x;cf /IWFPA[/=#$r#(w>+b2؛b)'f0aQ@.Ԉ4+ 5 _^l[Mq?ӟEۥZ hgE!_YNۮ(NGmO,+kà)YRk{:@U=^SʑNnK/BTUbCm}V4SZ hꢏB@%|ߘ%[P MZ%ṃi8z&_bql^: Z[52ѫ Bit|qZO+$˃^-)>ҳ6_gM?'BOJp8O C"Q\ֹ@v|RDR$-RGob)1Zo g@ ϼɣP̗/wm< <]pLqPROQ : ,f \IJ% B)&Jd+>:٭Q7EJ!pav"KR"N9f'먗hT>AyՇ@уFwlN0b 曠P\0~1{!~1{/])FJ?o&wec 5|SH{A3r n<̡Ez3CQ4y]#韫HyGBoY a$t& 06ꂈ CC׷z3-U|fpq XOYeO1t2ʪd*xiMh#?&ޓ=(9c59X72^g|wNB=m4 eÓ?E>Ar;#F,<&ёsQa2^(sɧ G/C8%Q-`jab\u%l,sNQJhzPA~lr pp ec5AU< FƶK ͹iMK#|5,ĢA~{3NĝQnȇ&>wNLEP_g=-I|PDf&;J 嵒?odq:-՞k\O z\S4L۹4Itd>ϫ 5~ Ƌ-*PZ /Ab=9Ml|-o`kimG VؕՆ}#O*us`hD!WcZMidc4E"s]g:֝ima668t.Wpcf4~wU;UdDW *gaU;![X0N0fT5?ćA3+cPOhh~;9rw SX+ ~ث^Ӯz% 6?WTqklqQWդO[+w+hHy-'d!&g3yUAwi8V\.PK"Hfsv4Fvj 4|d:T{06IqSX??E2Cz4bez8|-]`PVyA#GxƳ-\Cf7[s fT:FRELp']{_㵬]D#!+Jډ)״8]^0>b)J@wze\n|Z=V^E[&pn-RQioq咚?DMKh3,5T(0J̐wTX+R^ yU 2޶Q lcCk1$Hq3DHKhnX ۃPcK[V]VD+ 5/X <=UOՉ5@[=OGR}&Go7]9!%}u5311IKS{?ބ&`ZbA[%q'\bUNcӈ;YR[P{hRҩ KzctC7.N#C= 24b:^laD2𲤚XoAk(ha&td#1h-W螊N>{vY mԄPH %[!`Б34R=I ȍmŅ(bGS>lS`q5)S]b\8ACT/nJndv°yÇmpFbjeKS<dIϊΏHdc>/w_'٬-|G@GNvBALYe;ŒH1 }r[Ng|؂ ^ =/b/7 DzGTp`Ivȗxd%7VeiKQ OyKOڻK'@]I&[6'ɒ(}'._V_-(4}wVڑOlJ1ho r&k=[4)~xܩ]: lr l%U XO,;PWV*E?~ aLWET9qX(+e=fಳ]LYޑuMgnREB Xʍ- է i QAϨe·܇~,|RP Q%K]a%*A#u}92~U IK5Rfط"X0"N:T,Euœ^B-yFj( 9֫$=?r^k;%ŚjhB0²9. \_WaE_̛"FR9َ>Ƈo DSbM0F{T(8'dj5=FIN01q2~KDj@ P%LU &Di0eK+ޜIByRs⫿,4ks}9 cP NQ:4-`ݦ#a}S8cj#AN38}(NwTS \yZ9iVlc{٪Zُ*Y{!?SH:|G#xtS]yۀ,=dtz&jN4>_ê6l;vypYۓvPQOH\dcI3 {N!(ٙ,}!B>dX޹Xxm{?E;i[4ƛvvWNApt- x`,)l},*uunjc}_#:)P ZJj-aa7v{,aiI oe~E,]k*kh.ej?pǥⷖÍGc=HVfEǖ~R&>C:ag8 k޺ .2~tS6M\311#,ThE0C'j 9c>\]PW/jwC"4cB/-¶u}co쎳>O,e@W"JC?*› ҥu)]sb Vj8QqAFTh80.t}}х}{)' UDO ` H*K7|l~rlFTK+>o+h1#)2?Y%׵("h'}k+& ܟ!zFפ4Jn4ꬑ^tHC^m_ZYJ2f3q) > r kյ7aҋn.QG /tK@_CC+xbۍ@twʤdž$tnZoRb fY![~@c}_ύ0HRHKQE/m˒j2zYW~J'5%8c 018+#:Nj[),{} 5ߪN0xE~ ůf Dƒ((cnd#qG| } jyÇ` Ƒ}]w#$xX1dv()ܝ|N-mј l 47{eZCAc:stQ#Cχ쎶v%{7ĎxMi>L<z2ۙ:tz*Ui2 +Qju{9x7HX?YD.,&DΞ :8ؙ6:'(38Q8)P!ekO[g5L"D$ހ0]poYsI+1$4BGi`3ao+bqyƼhet tA.:*;Zj=նNɑbJQ14kk\ 6.qtA0֧P"/I䅹` Orb^Wk 4 `l2cTIlh~2^zWy!ۧ6r)Xg)7sC\ZΉVZI`&i` _opE=gXUqQ+\}P]-PI%捚S' u=]sK@];u +MAPTXKnqbsRrJzVzK^0+-՗NW 0M_"yk0$N !>df=H.kŕ%U|k?C Gu'< 9m%aBOb- 401TFRƪKe+Y<$$Gw6>6ʹB⧕d"D3;$),FE' m01 L,ޫZ{{[%g1gxH@n]tn0v)"Õ1xRK{ػ)S*ɩre엟dSAÂ^XNr\s H%F~(">rVnbB6-$\ͪ!8u⫿i4} 3 K7x/wڪ_h5u=X$$}No(Ͼ0x/}ǧTQixE6V%ЌfE0w5ʧ,)s:k1^M?}a>#$?m[=Y'u~ @Eرl5ֽs$$*Yyna2hsu=^).B/^LH{s|n_'{k( zEP :eXYPnr;-p!;G`vfBIF0ΕEDHT<JE\o޿xܷ2$]m)($tF[Kyؘtg9j}Ͷ*57ULTHb @8h%{yx^3^_Mc3hD6x{P5[\S*q}+Bĵ0g{8"lGz,.n(-ta,/B 0aMm-Ǚ&Ƃ3 Ju;Hp*~V17#>*}`Ӯ[/(9^mą}9&Xc[JOD32e fתD 4y<N̤eALZ7f=Yn_cMp6xxJ!1 X1Qjƹ|.5}Lw~sE>k'o8jI'?qp*IɁ~l ^5"N%`9\'Ձj'U2o$9;z9qݫ({.Bԟŗ*g3)~Y~@<'HTňe:3}ft&ihkkOYހv IK; pup%.<9>bʦ4Eۨ"K[2e$jQ[rH<9IVBw*`}酗/ Em#7g{Ǚ7)3M1c!){KGI6㛒v}؉1  w8;Gj1,ݯ+}qԉH].>*bvS3z^ miz DVKChRBO*".Wfeߦ|bp ٗW י,Εx [ܴ<$:훱qo.K#; .@\-Zm*L]$ ;m^DWSЎʃ}k@`_iQ VD;:Wcq;8rp2J*@Ilf.#P+X~,A?HOd`C E1W%9RbX=wUucv# wWa?-9.%3M(+Ly! Y:Gpo܇v첻 |$Sͬjj&ծ$'$1 B>,0 LE+Y#[isqDYIFRR[8(o>IU}^j@N+:s th4ֲJqѽ/D>!hTm p4MhGImU֮Ys-\(\Xɺ\w3 j+ؙ;@ѝ,w۰o-mߏXE x<\-=^c9WHٰ汥 9{J__=?vO*#$GX_O f0ʆ:eWK?O!~uOiick321wYqnds#F8kSPsp{ZOKX ^!`';TA,'*[nR'+JyC{+)&; =CnE8{(đ^i H2 u#5,NO[G;/;:6c+(tRvF+gи9<D׮R} ;XmzÚAo.) 5͌߳_IR=RYx6= Jf̝tpH"Lq'*zM Z/3V KzI(BU;.?4Og^;Ͻ;Pv Crԕ+`߯yT!ȴԉX( Unt{ȫ1mU7h R Q+K44AK9O9Tc"^Zy}b[7-SF>;@?qQbs|2z vPqϔ)aH} p;_ZJĢ Q Eqn94!>a Iމ C?X=>[ Jb[엇Ogϰ?]eYeYEEx2CCA* i _ gIj㓂y)ꐍﴬeCEK5[,})Wp>R4~5-1skMk+$ϺpHI0gs0wIC<* q80dY!kUQ8y`)k*6yXDn?kE`4]'J٪[t4h?|gPH%#p~Y1%YSAĎe1MY[]nL]eFF-9NU0'L6YΙVQPo`$_B|;A"!zͣn4+P@ bx[&Ehh,*8e宂kF^L @@ ! "V30A7{"$>NUZm>yF˛ !"]9_0heQX zDhyt0GcD=CtX¼x5 C_ii[Ț_4:u*$fS& ޽s|ҝGUӇGn{QFJcx)]=NaNbD?;.+6դ3;C kG1޲\}8nӔ=^m\I[OliƢ?.^]lc-YD䜠whb5hY3}n5O09Zv>dԇ"\4{5_ì:Eyg (ܟS!C,rb_l8L dۗk+/bbG-ڤ2⻮6Eyz;6~=Rhrs# "\v4 E\.n2I.߰4< N1|Fj$Mi e_>{ N?%ݯ"D(:j(."HkRR{h0ޞ@[X%uݘ%xхQn/s)8")xo4zwwLahGkw is1Z{7eg<yaE琚R``_E}_.(ts֔bk~?{9`nEFfJ~@;e{4v~NZ`(GqgZߔip2/XSTws^)3KK/lK{FR쨇%l5{;c9 =&/r%QD1^;RXGZ ثWٳгW'Y3xHPbKp5Hs=z'ٔhèZuyYWŤ:/MjYa cP'ϷlKnrB?lZ(r %5b]۬N(حnA(OBD&Aht&/6 *gDA^:ۮuޢ7Q|0)Thj`&h|ZBrj|LyLUqª(|7IcEL(n*WW-=i^?;,tjXJ;|A]ƠBͿX., ]NVHUhݑ-UХnwtװ&Z ~G? &!ٶ5p tuM\@O7h1|nF'v{IXX5îv7 8QN-#I*:u0ކ껼Y;@woi9#~Bɹy;w0e=O"@F]QzqIy/󇆠efWwm||\1ֶ@F 7v Wm#8|K=3Dcޢ(ܙ-L84ڔ"cb oklE) 0>_}fi9{E S3^!+GN8zS ݲɇW.{ӹ*~`P a|pVK"{u']>Ń"Oy'9W*\3IM`HpEîmU4 (eu[55b7,JMiser\]Q}E_5> 圲C> Qć n]39g]Oy*K*Kc@GZr~py{~o7׏4gC☄Omh Cj_vj\T0{+XwI^ Kk/H+ _gu;FuRt/~'\{9*  D@ ilrDAHz,g3^PZ,Bthl&[ˍT=!gҶdz5i4@ܽOv Q$@&ďn(࠴H"3z!dlT0a 67Kh<,LXe;0sj{E<i<SGK(ymI=Έ|8Q,L>H:Hϙ}7i)w}u?'W~D]G T"*=YQ3ca8Wgt]~Ц;l n*ԽoS΂ŭ)t!Av LEwl|XƳE(UK:Zte5g񱜙D\]dRS/}߹1D![X^pޠ Yu3&=SN=zަa'6.5 OB=iOJ1&\:pݩ9BX2u'r;3JuaN1OK,GT 8o("U2 Oj%jTWG(ZԚHaaQwIDQ,PY wQ|z.‰l(=6,R|/܃XV hlS'hyz4^hNcod6]NWOG yGӳ m9}?}rMXUZ-| +ZJ3,V=?dD{&RjP#O'[=gRw8EcrّaYΫrÓ|ҕΏekϦ8 _` Jo hfJjG*=Ki1PH7,}XLeJzPk{?j1|Zvh;rTGCg~>%DXn9F.T|m=o e˨`@n>T$>[ќn31f8'Ŵj*nGHꌜl*uT.adlv{Tc˓2wY׾ "BpdF^pmz<874W56zc/EY8 Ey!'( dqP(M^X z͆C7[+ S&')+|-l96/׷͇,=|5DŽUlx1# (!v7JI ˊӣmTr@N>vթ,c `cN,ݕvӉk4X<4z%ug|PR+R A9Ͷ]n|Au{0%:,4Us#WQa8@VćG"iu3a}vԍ]8/8E4?!F6_\1/g|ڒUB[;^O=Y@W1o!^d@v* ]A$(T\-$4n;5׮[Շ2P 5n4oI|>d؉kfW~AN2;LOp8=7ځ :{E$/9^'TeM͡<' !^jndMnۙZ.niX0=]!yn HE‘  " e|6j = z,(aak IRnJjLk'٢GF vCCuvK?xmy9,{}dN r,U>/l|+e@bkk˯Uބ.g&Ȳ9 %g)4ME>Ŝt/N~̎;r/E*e==0Md2v9;hyBoʮ ca#mGE']';<=ZK%M.?~Ñ}CFP7V;uRY罈3>SW}{[yP+[?yϴ=E`;@ ~[攒99Jc1IZ F'Q7 E'?tBJ:>e Ή@hRąSu,0ͯMs9BܨҟZKX , У/o$]:܃K j ]lXVŤ4'dJ* !SO=Μ0{}*mg{q>bT۩O5NP3T]}\w"^v:}{hl%7 8T[ %{U+ЇÄ 3JLLxNڬWn%/DXþ׀gOWsT|4AK~x7'tTdh13ThS÷Bj̍/qE8ywƼ8b|sX3_W#\fV9F<(120lPLZ[Fhޖ>DQs>LLK(K3ְVFȒQ"wTnJb> ?.ۘ "nAJ.Q?."C"B8~X2s',MjPِNYDеdjQW7ߴ'ꃰ$%<6ԗuI2mj$S:+$'-=D`FV{m0a^Nǯcs$pbm GkDwAzg-@w0T[H]nx jryi$.x;e`ڳlV f)ef%14{[L%E 峖m2u'@Cld,)[\Pr4Y4]nbw6Y f1= 8"CIwI8$ qiX`b#60vs,_zCɘuq@G:[n ܦ^?X%Ŗ5yLKe u%J8}FJW1UK1;c*ZՑǷ8#W2Ƚ@p=?q]LzwZdMLN|mFP=5 ٨h|zǧ3C[K#G2Zb zoe!oťe")2!Hb8iߔ' ;[½6,_BGLd}?5T G4 Lmn@0%K? 9O){!!S&ōKTK˒- )J$֛௕>Gq)Dj^1!b? gpE#{WohwJIsD0eeDI4׳m_59:Ўh789/4mt-; `oV z@!cx.[sD@Z{ J.F懹rPcGFdϫaRyMRv+gm6ts@,67iKlMᚥԯRmv5ΐXm BL'keC[ZFmOޜFVM5p |sq7ZYi\@ɴ7+w9Z6x-Xn'd#JĻ L4_Ex2R$_kf-!"߫K3\֨l7 `¦Ը%>CkxyTiʍ|%Kx;5cЭ嬗z}98f3mH:@=iDunIHD∻Mk bNB4H%;l8}`/cØ\< p-eBcC̵]x /eՈUahIk}@:X1[Pq*s¨_\PjBA^[=@(q741ș;Fෘ픥3#TO+b6LtC )Hl[Q.0vN=Yue?uY#(4ᚉx,0j.zrI7h/1c *CѦvJ C N>6FYڴ ȍ595S/W~\p?Q^\th_ @`> $V Y3-N9s>aǪvF߫$Tv"d\gSW~b]w3Q;N<+e(Y˫fǙؼekaT egM`bn#*s {ڸOS6N{ n1z(^PCn~"PbSW|gzj$(I}!x#) 8rWO=|˔kNRJ*ÓLZ?*?3O9/<:s/R6FLZ"1qt%,kՅ1t >qK|>s ykVC8?G~l"΃4ׯW|F]BGp֎ t*TW#$)" Yܤ~0tбڑ9:F[*XLk84ժ`ӮpLp>~׾֍H7!Ѫmd %FJ2Ǟv#3v06gc %?ErhwGԊscP[==^kCS5X" h7@A1:td9> 1ː? |AMBRC5}HttX/Ld6,Z?\Lf[<M:XczX':93=Ђ}!sT!N8AE][=1hB.;\ x"m&s5 R4Qvu$c t:~>E!.H v9o؎\Hgb vѴ\Y3~Ftj}֏%1uZN8zY9Ɠ >yYkVWԢ@{puijې? (P֎W +^ЬrxQ=3 Aԃ +x[JI6i')~ˬYXQQ"pfĽd$=/hgI:LMpPy 7)ƺmg\ه>a{K2Fu'e9i*|Exj4''S)]BB$ltW7uو>;Mq\>%,:7xg/ˍ}@hCʲ1mc˘AeNIMסX|>r"i,b0GĄBQX0.ɔS- !!v,dFz8K yk?</ σ_=H9ڧLy¤]m[9Q`\=ϏW|͚)T׭;쉤)J%<،͚pp7"1p臱3Ap5dMg b-!U8h~J"vDkXe+p$kxrĶӗ}>u0~gҗahLQ5Wg1!vt.P|Svfm{fF|VQfք$*30'AAyEUE5Ei;t_|z5B~}RR}v$PTe*.F3M-1C,,aU:B7IH8C0Q]r6db"X:9xA- AD!oLKG#?4AZKj_?J)"&0襌foG|Jm^z6ldaЄ8p;0µF_&HP6+9w?m\"+'N ޚ%E1~_X;ddPt%tc.CUd@uUl}gbwi?.+o[<"p̶4yT1ިaK}vkA|مB믤}YcWk5-!+Qgim1LkJKD%0# ,udP";V/ȴb@)rZ"a&&⓳t5 y8âBT^){b)<1v&zү=ٰ`X) 4,oj4ʦЍyc}&7!,РU{ j+pb[^q'{,.U 1Bѻ p٪SA^mjiG5- F[7YGѯ11ryl1&EJW-z~Y[K0EcQ[8[Bݿ?lQ!/HԈƖa,@Ty2bTF??ncӐԡTE00á|lOڵI/7l%6h:dXgsv֒)Z7טk`: &RGlî osc&R.yR,hs}2W7usy[+/D VƏF:ux{7ʂD"gTxԩIld>WD;qΡ` a᛼NY NBAH6h1pֶ*EJDH6b)UOG`FUuIUy/E%|Lo%06wB-15:'F2e8+._a†rG̙g-W^6讏Ḧ́`߂α?Bot]%3PKf4]U:ɀ3Xg Ye^p>} =|$AÛYqSb#e޷SC<89E$.+ F9rmYysZ2zN^²6ld6iqȰIF4&{ί#o M;zS:HP\a\k4M'-D@}[&g`v,NV)HGTJ ,~x]#ѓDfEgHbzIY) -~Iy0v]*( "_xG= #ۯo:?׬-Drzڭ46 <4GwtT*YV}SěRlB3Ư 'K`@=ޥ7Bs^ə=٘TF5悻XAua:Ydzm!@M"5Iv{:/e .$Gjy`^)]9Ϝ`ٳ ~q*p [}#SGH ]~R Slcry-Cy??=LcxE Ef%:lC8DOyEW~ͩ#jI69A{-ZR5|@@+<$<~4kߍ ڴ)=]\Bv*^,jFwˡf+8yLκ gZT\@bD=o} >᪠A- Tt<݂hI`My~Q&5YYF]ugk"U< ~n!b2C9XQ3skU>m=UsN1±gHUm!p|= .`Khz& HB*z$. Mgg(-Bv@:8]As.A-x.5ʯ3[i^8]0- 5N Hs|9A9 fj=gT^(#8HHށ 10 p[h%'2;:B"cnӟcRiؒp] ]I -Ya$r(dQΟOkC4jɲkוO!:z`(϶i!l!y-TfF *|p< W7F Yû;P0UD1R$1)ژA&iBmPcՌdos'!SQal\~I!!YvtǮjMGܝH}ǘS[z"+hGܻcڶ!lӚyV&|o)@,M47 ݠ+H)̖[5 jz0pЄ-MJ{{a!5XR. H6(.2 g6j" تQܽK-55!C)[oNUY6A R"JN.wA_vv\g){ӉG/BS[i+tB j[,qldXv4 ]A:yӎ4NJW*=f Y 6GC`ΗE 2Mzd`a_E; PQ #"hZĻ).Nr8ͭh)rxhTAN Edwd6/ATMdJ󼇗JiK pe+|Hl;:)C:d`5{#EԿDe^UGzeI vBq_JD;$CԸ󅤲5ܪKΏzC w=-@^s\gpg5+ QUL1T,ZcIdJ l%R)wk_s֠(XK>a-j[diiN,~( Y5-Ѫ@S]X=F=4 WKir%jje7dƻ9DTs'@M`iۍ`=ik$gwCvDB|,+ G , MQ~cҍ y5թ Q:dBQߤűMocQ\_A?x: ټmCYJLw ,L ŝ(~7{x̍R^OW8ZI=z_ ƜsªW?Ρ\[ޫPvT')VOVB{SU<ԧP-#^u8qmIlr"OxW9Z^N}@ vi)GO;?ƩrW\8,UYw@ SaV>07 eKrDZ5sK&#jͿЏ<2!SOIÍBTlY^L~FwYuR=A=(o1eHCy9n04-!zw"tcƩ:h?<]k1~ Gy`RfqXgQa$XwF RB,׶_Tc q1$v* -~aQĄqX[z6\Gi!KGKlW=><ߓ`|46 Ի9cri<>r5_3 h ~5BS#g| gzBT<Ƅ|s;E#5?TS NM]an"`V\}eɗBs{_Z mп}|5LxҞqGxQ Q?1+.b-QRBASr&vmU@k꟪XIqʄQ3UA 5bA6]+S)5\-DZN4dUU ~Q\ fj-eۭ+q߁VdqGA5i& VMuYx((KE2ZIcmÝ[ߧ-1Z(7!C xˊ f+tMXB! ן_v i(Gp<4kn˱qI,q,27TD;cތ'e=nԨUV['Y0-PA:_yw~ u3O>7j6u],D2#q(;KՃwњfsH,xtBK#Sd7gQmMFͶ`ÎDN+I\v6ےO -h̊ȧkv7)woJGgNO.>އ += JacD d?)Vhn$'Py%Q .@Ӿ>ۏK) ^迶zUArt٨'2 hf,Gߎз!Uw[dt'ʧظ~HGhI>OGJ (P/sZRLi;7x,Xj.}4ꌆᣮ08P}sSD 6i4opABK@ʅj#z'$0%U RkհӅ~Labu 0$A,[Ҁ@Nor,%TY^b\ Cy[^Ȧ*`(˸[5?r(%EXpJ@n$wkר$ceXd]WNFmWtBAscGDs\''dB(K=#Q8YJV1dzBIՇ(ڏ.IN`\>PEȍCCP֙J"cC˻mxR B]r8EJhIRU* ̃y|Պʚ}j9KrU9),&MÒ:Aa7-Ah z>;XL^r[myv㖦 ^#w Eˉ5\/[%Y]-3M{QK)^X9_!dJWZ#OS?` \th Q/w믞|`x#oH!4E!j$mf )ז%rRv[뽁4xdĸa;MQMѦV5aUhqSk!C]klK qhoV, GS蒖YgcI 8 Mk Mx"aĒ*wcG^(V!7 H<6P2#scٳҽ!WfҶ̬̅woeC`5ہݑs[SҗOG;wW $$R xh/NyymȏD g"gKc:,c#㟰Hz f3lS2 +G*:s}!қR9ꏁrGOo<6 2&*v'k(Cyع_QQ^+&A h9/*pR zcun&}/"݌RuxO0[pdv8kjS ?$ISQSIڰQtL"j%ODHTThE ( 85R"̛̜(fh/ӆajւi)Yj"CBe^F9gSAl3v8 e+OI^e:1#Զ_CcSO}i̩!a‹u9D[K1KpP01kʵц7w#%0*N ,´ibzpRXe ]'%#fB*;$jJpuϲ=Iz~W̃[?$'|]Y,j8TL͕hVjh*CP :Ҋ7ۈRZV~L@=3/NwD)u', W~uV2s`~Cm[<|/ÍDXϸלuO 2s\gqIٍB# b׃ p>E;!ESC*:U ݬ}~g)@\AhS|Y uW 緺򋊳jewK\ep|0!L7ܱn7 /4Nσ%άZ 'G╖t7`-(̝6ivIjPCfw6)J+gXjؐ!p{{F; ᗻ?R:#sgCyT ?dWF 0/p97w_(CaR}b"D|  х>{$ܬ8깃ΛuDZPʒv&%QOlaTxp-sb5[X>#`42nP[&AcwO5XXw_Vnf˼A.2a4ҺGtG+/$ ՄrT͗#Kutu'A>̎^1 "u%BƪHNP44GK.4`-eT Cy=RO!lfGg?j~e)ޏ$j[uDT-c@&8//)7 [`A4<˖\]ey:cnacp`,rd 4zSTGEC3x|N$ 9݁&OM1]ݺb>@{srb9p Ki E\-!c z&xA=%H+$R ى)/iHd]؂NgM#EkĽwDY$3.uk@ :P'x2rF>D'L_vn(!~DR^a/8Mse%Iu|T3}rgIӿhUЙL Gn?S;fh@tˏz1B}OA)ҬDho+a%~`,E팚IL)@4m|e'*+ K i V \$B; D-2IF8 ${yì%"GWr[ ƅewnJNaE3$ŭO(3['㗌M1}0{Qs;W;ㄹ )n#Oՠs6#}}-~2|V& T\($㏵F]Ͷ>K {PR$!1WBj*QF7/{G0.Ih&vB~÷&.\'.Qdx/mF0+"UyNNdʒι,)z%igwT: ʧ,P0K'+\ k믳:n8i14B6~O}IƆ`kk"nŝ(ov cO[ !0dӘ ޜ~4`M?(#u|<+g$]8%ZW Ukk񔬚x#B?e0^Gz]lg]_ؔO/" .eҪYhʺs?QO owDK19GwX\`CyqO w7'z6M=RG5}})n{X #8oh)ٙO]I" K8(>tg>V 䈼d m[AQ_ Ls`,EiOa(˟ٖ"9"}DyE+RbJѧ|G!@(I!|tjU'f56'DƪeH=<]9ơڿClr.1<`9nkwAsz`S2E m|Z.wMT@hCyJni\RGp1 ae (D _MY1޼S4zs E>OMFŕ_v{qD7U}*I E;e*v!%d!S U}(6wAO4+2E R"@Bֈ>ŋKx`%Hn €r#c,oj&Y8`1V2]?`@y )*@v4S;[: <'=]LW+9xI =Vs:?CXne)7 ATTvjMp ͽcE]g/myUw N{{#ڙAl! %X'Db;Y'z98Xn*V;{9&iҐ K@'[}20˦%XcP< zIu^s|D6aOnJ3Haͮɞ+~e-'6a` ˩ҖhŐ߂(MA2[&UA(=1~Ģ%K׍4Nt'ҟk'N KVռ4SҊD@|MBޏd3Uq ϑ0`{#6˗`Mun,t S"u۾-~bB!]S@Ye-r{:hyCl8[5i@FĸіL˿Sп#/HrCzQ,6hʬ$׉:N*%_OuDsg\^ -O9_z cK煨VrК=lII4pv6ѡ>ͪ y(J(_&K?&jLONnbKڜ@{5/z,6Œik[.Ex_&RyY(rzGW+;Ye)jx*/xe QWR4yAt<Rb[۷#@ݔo {.bp^zTD WA5:SgeorK9 (Y?kDe8K䵝 &NJ14 L+rJZ+me"\aSSNɋ$^Qg~:7'-2p!`l_QlH;+مm'>mH$@u[QcRZuii !fi'= >,e:[y\z~۠k@ U S$3Q *#lȪ9MWdgcjO(1nJE6I^j9ouK$͌8J/5{[%`0±vgU8XbY@"!-oiRw/ s֍gޜ g$Qy#^twY4EQO2iz˖4NA7H5}]w˖,[Kykn?|75i>QdY)us`/&$bMNe1]o\ 13WٴƄ[y܃H*ZbƝlPG ҷrĬ}(S")y[$ !}zLc\)I7U1r2~rr\]Zn2w)R uF}*E[\N̲% /ĤY.BxXDitRH!'nG$eWJ)<hY~ҏ|BRazad9'߿fdhɴHQf K r"Va.NAG}%\!Cvʎ*t9OlssKe X6O{-oY)\I`?Z7v_l1rjjs8@d9f:M㸨8)@٘d A]W=o&v05("5qѹK#0bgVp|Y݌@|B`E0\,n#fqw#% G}7<0`|*j.<8P 2v7:?y1!\dY3̈dž`2+<,ȕtT30d} %_c5 *|SqӜK?\22co$ 8MxZ.Uk:[\C GNqAP;w\rE6umSYk. .a>EnV.}rgm٢$!p}:{"N8gmy'Pbӻ !]W}:?Fx8I"Ri#\%%i]ƊJe O.4ű Fqvtm3Aң|<kSȼz55:]߻j?xt,6nKh]"jБʺߦ,ao~_ + ^xW|'a$p $`sݐ$#j +\ZR\h.  )ȣȼm2m'~" !ldixmM*D)R K3 ɪhz]$], zfnuu 7:d{ޢTS G!`#C3{I.<K~Js6rvJkZy_c4A!S.TZTGd\%¶qo n2AN;Ks#꺰n^~:2diڄ&xA@YaӁ- !hp7f_Փ:GC&/I߰fSpivR&-Ew$* $F6$U;nQE]9+!_%RVv"oIjv?|QGpl9@?~/-5G`Vdh3~NOJ1hKl e9[ twY95sjS\WfP/df_FũǻN+ -7LL VADOa$/RGq)ʏajZ2AE|˃rE'S(d+3a/BY/އN%8Y7Mt@$-CΞ"Ιmq'V{Mk4*:jvbX~BQ;CEd =AM/* W+JSIM*Oj и;8q;?k>URwʦ DhQ>4^03cMq4EDvm'_D'x|MvңroC;tn<%ƒ沌x3B88b1eK@Ѕo SHh}#@Qt䜁֋*i?%ΪA2I {k~NO~~%iyby|ehN C\RKBg8#bX~H{n$-M6ȵ% r&QQ-*sYh)n5FՄ3V0_```7\&.|١)UɽWx)oJUFJ_ʐ:0XS}jE.7x*0B_[\$%ٳmC@oS2!bG9Y̘9 f)'-G Ai{h gE$[|SL>Ugram 7}IOp*m'k4x O?߆sjĉ,3 vV鴪 {rOm&tMdؽx|憱UO帋z ?&NIROn1o jv9{ ORgM[l]u&y"̃khElSmPE[*2?D 3Ks-NcyzxuyAO߄XdNMf퍛yx.jn_ R+o.ILCt$c4إrng^x1f. eVjEl$9P]\>>.<"BmWyT;0M3sdAS`PX[L-lO&OD"{L(L>x'wLqi5P:[Ö;*s0,6w!HB;M0rgmtK5v+m}ycRK >Ȍ `xk[e qz8QO4ș3$in4Z9şWqA7XZ!}5FmdD^A4ŎA)w?U=AO\L,2Lɵ!jѾ5S0b֘&щ13-/=ӥ#̮؍ ^pkc+~riXDS쳊 ,yjFbirz"/1u'b"1yq&%wv0 yMe,BF;L!*QoLr0䕫=_0@rlNRm>e=6AFR N\F oR(HQBS\5wpEo-YP MPH (*3а$-Y}{" ^C/o\Rb$"K80-Iȕ?0}L[= a愫Fe6 gG͚Y[^,y *1gOZ|G-PrCePg]j2c!Dio6W)J*qʡZck=8+ d_mک@"]?6_=\VS`P<~Op }ʎEe:,9 ֐Yqk홺U)h0YH!J $;yyԢ #DS IRGQJږѮ(|v.HVB>TCG}e r$ӈ'e8̹{3dZyDxmp_S;i삌(w JYM#ԇ[[nj`=QI3iIjo4O|&zΝBxHMMƟ>| =yzl #O.Qy4%WjsXPJ̑\q%[(VXٛFRxLWpPuagGBitodW'LI!!gՋ55z9XMtsd><׍̹.EN+'(# I]b̵W@t$gK1, *V wa K]/ :7_?ZNJd W/]̐km\H_g_)ѭq|H%Z{" Dcfܷvc<Dz[wRFBр >3_Fr>Xk^Ӹ%3ikCZr6>E1̈#9`XvJXtIjn7sj[qzU3(44t&Q0,6\3?m@_r@Q5)nFxs C%#,6$"?)1h *ǺN3ł`Li^rBw=BO$[ĈeϙU8'eG=Į?sC$Ʋk1T$ҟN@ua=˿oZOx>'vc R "[ >0{O̒UWԶB92/YFUX"g.%'1 -!*A f}XрUXe7J PeN<QEwX mz`c4DjĬ2_[\NlP)ztưvE}X Pz>Jgg\ 7E'bw~Z6L:2[S,rtaɱ{>eq#[nR@n`A;hg3ϙϳ;!Ȱ,F ܃V}({ԉb()la}GF|ehooqBW>.1GIиcМqE6Q}igH-nncJ۝n 9E7.3=׺ "ΊI l1N L~KH}zD_x*?a(  .IRݾP{%,OPd9S?V.5HeL$ LL(mzO9},6Am$П*nȤ (CP 8Pp"ŊwDI#NyL#5#K$Yb ׯʷؚnc5ZzJ)}k[4c2hH|Y 3gGLKa7IAͧff'$Sl]!nǭ4C^J&ᓾUIasʰ{`AB+`$罙-! &'GZP]1gZNM0ȢZ2ma['>Z.U!Rס>b.K:끍F8 v[yl;R\:TH+/[Pn,П@L[4tvt* >9EEfv!ȣ(jwgp56y&\mA%[DdDJ9V3U-%T1F-ݍ|]:Tw nZfpLĠʢ+!b6idF?vhpT N69{ G:Q# Iށw.ܑ^x*@Sz%8[*L9U ݗ6mZE(>p^rB^^y*[qQuq~O'a7|ţW7[jJOf_ 9Se->c[,7,6ǩ'?sA1nN>854գ bm[Ck9hO}[o> 9vcFlOO;A:D{|91+J}%&[9y{_J2kg &Wak {r*Os bNKEINl;BWVIU p""{EC̃LDj'o ƨཟ kW*KZ=zjsFq>!_ EڨX37i{fΞl"aEIŅ.j7["ȺJ;*[a#%` +nD YK,r]o[l_ń_o-ކ?~Vi;+rמxC-;12QQo(HV;-ex5!A;D5.aj .mJR+ ۲` ;sa 2 g`\V 2!.69*s(q/:Mb?7WU']Ó enz}fy,t:F)Ĩ$W Xbf-@G~=J|{9T jr.ouYsݸYi.+0:}gʽRrk Ǥ! j췞g5# 6}Jug9Xx`~ 's;R@ު ,Q}oܻt*更E%FT̾Θ-z9Yzv)CqXHt;6:N>"5凶+Z 2c ] 3D`xR?Vrd ћD2P8U|ъP6VKFݽqMrbR~KjCwΥ܅BG wV!ͅ&ĵڏecw LG̟yhK1~0^{N!P.>C :VFq&BR9XaG Z' :  &Ÿå+I@h/g 7{ ͜ q@Z,;gxg$7):5q' "y>x"ouʍ}^ ]Vz[`&}'S V4!f[Oz#B­\JR86A%|,c^wv5D_pظN)^42E׉)~B#6F!+#ws+LLjlX"k=1[GDxo$Y`._NbصHwoտ,t  ThLҷ,q[OEm^( K{hiY-\;zqrW#g|iz]vx|\>(IG~#_1xwoybC|C$BrT' D%}rdHiUUsf()Um݅թo׭oCrἍ #Pvmows.2EX׃N֟ t^rK4]h <^!{yz0>瑫(j#f$6qs$-8fPZor9Wa!so %nM]@;9 yƀOUk5.`0`۬U錌N;OSmW\zwY-&YoV!٘nkCwn: r32T { ÝR#GjQ>%B`\JGEQ J/sgr~ b'κP$K=8A% DWF5lOtMiaZ*G98k:ru,X?tT--b,dK?;\@ Y*#{MUzELTVnk QO]xk xٚgH+ ט7 At]JK;dLЋIGFşJϲŴuM&wyilx-9P> 7MT\ $C_fIPE;pMnr\#t\+9чSuӣHo<\ :ds2nK 4~3VFzTPEx !V"nڭ?S]EC嘝w_?ʽutq+v2Na dXW%)2ZZS`g!ZXcU™(<lAg;Շs!ت2syhtQWyԮy T)nY; g+I mfD>{|2\?oIқZ(u`6Lb soCzgqr,$Rh Q6E~ oo7p:SN:VM-_R62Nhʼ8=K%:i ǒ>0tvمMc'xh/t!?-ݕLRi4݄CwHsɁ<dzkQ瞁y1,~Qx{,p+M2!CfRv'}:fbFobCkJFdbW!{!G hx;sߟF^-o qrmxY|jh; z xwL<mH.!GxGhF,5_^&`Kfa]}J(SJAiBF1{5 \B6x碚Qߞre$^rWj,(a?=Gp/x_'$&Ge2gF GgTk8.We:`=xׅP#}'FȀƁdAM/0e{RhbP^+bX'Kr@h\ }ZF sɛ+a S~{ [?H&%l#HٓJ~і@+Qqt!|ix]ʂsF #@U,[ Ԝم{@ɡCn0oy á2%# 8~@/)0{!$s[˝i4FI[7M9㔋.8x`V}#6c4Ѭ[؝F^j^$z-~bRJv@dAr KNkD0SE+ZdZ XtQgG AE>ٛn8aa$1Ԣ{TRGR?8a7)b,A?SE4;yn%єD']D\+'3V~kkLS'MѭA9}av_:@&w,m[b`0U9G:QpMikZtŬ2xdt4䔚2 Q3|zrvYf]isԀ`eh] \<&0ԽWGqD 슊&6FD֩aнN:i+ jRYzzL"[Um0S}0p#ҡj.g~otXXW.X F\oէ;? ^mjg <%9 eMv mE,p)!Fu[y,#WGJ9oR'Z6}qET0E!2 |cRo@ZN;a^cwS_dT,Q."&K3|6/HT{ƐN(пy OJN#/Fԙ&CaTAL<̷*n]849,2dnR}`̾Ԝi>Z{-4eLda\ in}c ()Ծ0ɏ"B[rV6f͵Tޒ䖷IZƽi "GpDOgQY ψ,7~A j~7v6NyS)0[myc:(k3-)$fiWC?$ ~ҩ.)(l¬TJ0Jp&TѿEiKSNEkC}e4i;CChc_jTcJ؞:qB)^?lQFxsD/҈YwD$ Edw@':|JIEBвxLa)tPXr!†6>&x(GHK] ?ɁjY졏*y GJZ$ӀIT _i%nrEAT!g5Sy3hX[?4<ʴ-~D6Howə^<G t%<77}<2am&L-_`mr_1M*^﬜ N~_\ГNU_ǘs\6hvxoU3vd&,[E-~vU y@cE[ {fh`}*g,7ݬH-[. O1i5;O{ a`728pvXX(Mq_&4yr:ݎ &zu!C !eq qm2+vr)wՕR+R 8{bl)s}l <@ `͑ ȷe# ]/oU bkM jכ!-&MVqcy amPt_V.$8أ3L,Ihoe-{0@kCUDg}_<"5fP$nxq\oꘆw8εMʖy\5SX+u*07Wاo mpfC)W,^AR2biV_knQ(Czr"SXY-:{6! I7k.vɿ%;[QbF.΅jVJ(ar_,0 WE'4NP) F [g Y2BDc$6~lLv8J+]LCmg%!}j΀~UngO2::, lb QżYByHȈv Hu8B$9e$1']:*?U1FX (B"ꗫѐFul#2W;t']]f'xKMbPhEp[F2nMVY?EA?c4Rhdҥ:+ywC̺4s=A+߼}p#"5IOrs(fu9PPJjM}wLSWob)yTO&fyvE94zĪrVb_!9am t@ ZD'#0M%os'5n`K]{}F;3+zhf-ڌyPw<@N.j&(}AP]+HuLAbGtz\:loi< |m?&;W>]AT Wt!H֌*[Ok2!)dBJy|[A3jujU@gp{(Ve (|{S f8>r?t7t<}l\s$?׀?c|INk@RGیRgQI`0xPpd] !nhZ/5EE}ZݫaQYњܹ5Du 0x@wѼ< ek# 1ѓ;Y)ֽEtC;hHjgWhpWGN)*ʴy0۝r28Br%AU-*wl4LGcviGLY@}υ {}=˕9.nneh@a#i0 2z,.75>2GB]D].A_3$d|C=}kF>xcvGyFxt粝\>vĜT V/R͉ mA6{Dsg &(06Vv'N%5r# ?*yH0 DloZNgv+p{ bK .~m+Lx:2K)Gs;;mshwH]!:-~@^5Ú}O:K!ÅGj&2JCYA=MYz&q4g |ӹTRVf^l: c]Dޏ8G'8Ri2Lm&zC [ Ç=t6y$~TJP18-~_80Z~}:NO"EdY;yjOÍ䷖A%mڏr3`^(ULun_@L{x Zd" 6_z 6a\oKjh̠m=r FAzPmZ= Na'QϕKw?5!1ѬgRx=_8ZY)Al.`Q]!((-&,C3fhI$L `L:¾B v|^F$E!+XZS?cf~xoQ8_W0!]O8ZaBqOC^ ؕˆ6l47tk_ZKG5InmҊ5}H 4o3|jn2b<]y`Cė>P>bUcFZni90R$CSٶ90]+;ٰ$a(k$v1ݍ,QtI DC5 kJ⒝;c0RqdmRLScfBN2AtYARp.sN5sw: |?ୂ:J|mf䭣UqehKHdQ$jݩxV8:XvG //'(>0MsɈ"Qu>[qB.ŤњG  u6؅(S_S- j71hiqD~/n6r0[:c^PTryь^)4b.g%VMsԏer?1#l9~90bа.yQzeg 4JYV@$vJvqzC!8`x+=3 5^A@3/7Y*V7Ɏf =Hi |`Ќt6t&GGl4#;U>s{(YVv[^þbq=pW*"UpKtf*Z1PTi ]+q tf3D4=AkP [ ˡِ2HG}Ȫ@'03;ǾX[c 4LRTYJugJBeC'n/\SLO7ݏ~<?lo K;n,D_^ՠYKF,\Qm4Ti;d,j*P#c'2;T=Tgҡg}.<h6t.mg5o8bwq$줦<>Dc\YO_Ov'v&!ݸqAky)g^tLIaBV2Ph- 81*h/['ey..FdNXЋ}5tqAaY1u#:q'Y?22 x˕җfbfsƐr ƆDcZHT RFIdMIp*dLʑ:ܓ^ Z3%g ޔc OR~XQV=.5JMm}l9pgMho5rj#ԛS˚ԛŘ̆3Wsu 9p8y=Ż>rm&_+*V[&:O@l6 nw`H*oP`D" c 压MW Qܜ+8:'fFy"? qtb~^ %*K-*"M69 =̹n'MǏrp_ %X^ FKp"@Z tuTJVТN_Oʱ'-VTvwܭDT=g%ZRndW(_wY !UQl/eG0Yi)8Ѥlbݛ@_ x]Ә%ʋ_/&aA:@oE`p]aYeԋZ9sVFL%25J$Hx*;I#szQ} -.sjWj,`9g#IJ`A41?0eE4,/ >3A_L]CJh9/IB]ߌ#+Xs[e˓P*D1 V2`pѥ;O֣z+_]^*O0̒ |f_呀7 qBﷇ`t4oyTbHdVی C lSKi5S^p"e6EF#m{aR g;1\xj Xc}Nsuyڠ)˺Dy[VF:58JnȞcN MVBKJd.[\X ׵=N[ vU 77:9 Vɭ:pM'?nOU++ (I&IAz-Ctހ!@/`KHZ!'T E:كgt3A+ Ucւ#YsqX**ܛk~bXzSY;K=9NDjhkNY(p]"Q M" rzzJl^ ʬԢbL E[Wr(P9XpP^iE[FzrrG,}223xq3'qU[:vCF-Cy [L.A>+c_%^K$~ #s`"/`^1f;cdi};6&onS9"a_X3|`4ͩFI`7Zn 2Wb1k\yft&(%Fk Nul[,'tGfb*[mQ8dJa˖0O2&8E; נMvqU}dc=澚Hh!2_Jrڂa*DL.M4 b-؏8E}=s"HF|zJ^J>MTX,=S =_%Wz1 7>TF:vzkGu9g=ꙶivN3Tb+!MnLh3NU9dNe+yvLRT|DQE OIm[+KʛUψ 1.r&Kxh]^ujg34aѢ?_ocbM/Q{ FRnI6X醁 ) *~Zkc{l+-s$!< 'dŴgeKAwM lhGQ ^)n|@nwZ1\9-rv ~Vj!7J_f ΠqԥWs&}BdE Y>'ކұ&9x#E_{[ 9gysVN2ɢ+͔1mᆱրU_7q09 |Ou1>OBZ-'6wj#1K- ?/&=ɥ6ډ(|Y[Ɵ[QβSqN$NKQdߤ'Ԣ^Pѭo"I#Wg9 d`^MU 03? >.9+yyp4?Ijا V(GAΐ7Klg1f8V̆mM4F+42~#2ٮ5+\X:yӜl8'~_uWd߾tb%"UoC ܂j1@qL%Ҏ.3?w{ S})ł_%1C*?D` e4  : zGӋ4$xij K\jc\?NײfB\ҟJ 0f?L'Rŵbr 8̻XKEps'"" 9)%[Ivfϥ5!ZJ0D2ygʺf*0 VK9ȍPMp,gro8K " +&,`LV6lQ괔a1y$GKZ~oyp^|h(g@;ԛ<pHG#>j瑞ӘOs`eEe!U3 RP\C+z $# knI֭$*d2xZ[IשFfEo2䤚|󀕒԰}2bmuv;SmgSFپ6:!.>y怜FW-l41-v h,D 6#74XipȠ8DKrI$%?kZrx 5R=40L?u@ē1~bȵՍ8m10oz#٫ D@ 3,YwJqKReplL$j 35g9XKg/";PS&DFY42O]B[9kPÁ'K8 &$ +t0|r+@@`5OHwlB?>9B #.N̛d؄I-PtmLwV"_kʥczg eV$I@tCקt-_;+UнJX gKjtSb/6Ab 2m$%S& bqy PI5,^fcZm@j9!a.-&8Ș1yPQa0tM,'݁ %j4/B@"][%tH"x#*33-zҚ8 +~gBU((v=jY!Amdlt[{e+ͩi4R =aΞ>ܼfcBYJY)ԙjwe9iەpzMzZQ!bG JF$cGc(NZS:_V5d328xMW. y޳AgM{v$\X[/zU&E3/ JRƇT;#E?U~ArploA~5͝}b7жMur=v odw։eٗZjI511Dx[g=fM"Dvն>.flR>KZE'l!}B L/oH#wRK(a5KИ˞{f|Fw+ظF=zi7rn6jRjdhHeؔ%ZO/X#6$ :s XDGQ[Qf/o2w7oБp-%ةگA$6C~ԶNa@fo,T8UהBAI;dBn$^:@g*)Ld+fUz h'+deHZy㘨ļvɖcS?L{ B)j ŏYo$r[l7 M12nI Rkeױ,@hLtՈy_¥dT#?؜i B8F5LkOųoZdҴگCLJNj;.? *ਇO9Wvyn)vcHMWd*M8#LfL Mg6,2ٽ >}1s3(>=1^C*WA}AY_,ڼβ(w*=o*[ ./"rΨ}WkٰlҶ~Õ(͟uVω4zԴfCP=;lq=x ܊¦1 i7iאʈl3o5 k~0w.rsmWYBI9"M7rw}O:}iJ"g$1)77--b2WGI-J= 5O3u @xM%^.'YѦ` X.@[e5##n,P^>glt3K,"2 ^Y'SQ<~&^>(͜SɁŵ=M6Kni~jf[n\0l U)Z:-U+뢑d+VsXIYΚN9p9L:eS7Z}2$VŁun 6[ن?kbFg;-] us8/Hmąco^8)?ۅjX*!Ga0˙OkseIFHI΃9Y m{Qr*5ّrIW:ͥUqԅ9 .5yq? Ʃ*#sm`J= 8'ҹ5٦DVheN0;2kcuj~a'vH9XO7$3l!bgDjr;ۚ`-Juwituⱗx-R'#?R2a1f9 B{$@VAKW]1), QarG;#Z#G܀T6m'gDb u@ Q3e^|m,/k2Sa~SZ8xsVcL8<{ L(qS= #oؤ FCH☉ ZڍI6%FGy2 2~Жvd D}^:՗Q`{p5m~C"-.*Ly->5:zEؘ=S;|K:녃GC h?<ҬU@/c] xRް$ݖ>kX+X!>b`[ N uD,=5Cs*yPGO{aXnw7HV%SL4q'< G؝`(,lˆdMn1O3AcvE/lWiHOdY"qc΍+n*TF8tVӢΧaRc3 vL%3HS:8 ld 20R~AUJm5 ͎7d١Ӱ4l1O6t |ÝYDz*>#)N8 uRz6GU#s*GReCBV|g]$uVF]I *h u^w}l鞮>=vvIȡ +cBˉMp\s(Ct(O˫60랠41+mRLFzj^ȮNA}FY.]""5O&ёX-Hdr k| grp0] <[I C ұ"^ފUZ55\ g@OT' Ac2-ӧ_5qYB F?`)^cu *AaQT*L1ЎX-$.O ]P_׻N}Йj#Χ& 1LB'M1c1:"2Fu5NC_Q=%LjW Sd`9LˆZ&)_)RCi BQD Y1{2 \/n4d>v 'jQ{1ž j0weϾ ԿSH-u1CD~ alZY{E<ʠD]ӅFO=5C=mSLG]yNd(G?vxiu5i۠h\jlln$2kf-ly尐][nrZiA S%:"Ln exar~gj` 1ܿTܜ}߁/VZ<̫wBC$TlZݱz8U´'mIJVdc 8d[S?r vfs,C!ijǜ2-3 kdEj[SAg 2K9gvHVj00"Nw)e}Un -cgF.?Kwz֔}ʥIZQdII-fVι~h%Vz :#ɦE>zJK|́*x k|ŋ]3?r BA')Ƅ% X,l_Yw,섪3@iK L$2U9JX $66dP 1rHC0KWbGѺ g}ʵ+z.~$D)F<tV7(ز`@AS89'6_B:(e . > fvm!v_Eb[T' S[J)*m5ꯏNX瓩>!ZM^P԰x= wa0~ I@6dQ@/5L7.imzp*߼&x4>`,,VxZܼѐoT7cDꀸ6̻Aw/J`&y&5z-LWg+_ 7I2ʑJk_}d@gNOPT``Q <~N3I7E7=KӰ ;.oqXFp"$N-٣zjMO7R}#$]'|PKrCl?0 Mۉ&.=Ga8Lc!Ā6 |߿A\pU!SN)k!'J9>PYmݸ/wtT $tvkJ^w*ڏՈU0+;^NJ_JhiHQ pkZ oϧTCS_p~<4--QdùSͪӇMql21c;[e\dH-@~ ?mxhMxBʷõ~c%3Q|z-aoXfCUs8Xv e,e hh}NAH(u^(ɩp#xWф[ꇒJ o꧰1/h*VBтCKpۣLeByH̄OF e)!c"1*ͳP-11ӐYԳ\ל a*hab/)SG5oùը{XDLs0-QRH^Ȍs)OSR;kYu ^99wC#o*\SɠD錇ي uK7~y9n4Z䀾M`MCKu-JTSjV:loU!+Xi_n\]g0W1~nq5B?P+;6Ǽ{tI=X]:c'W7Xf_E8gʰNs-2l==xǗIeēJ/5IMIOٗ|E$L.IQ@rxtQ@' U+qK8ӶЮ 5`?I7Cڍ鷻 Oq '*&2 ZT G:TY}.8!*U,rArOyZut^Dv9cf%e?B&(UtXÎN `%j]H:dCWkq8ɱSGfq5!4UBL?G^g◔aԖx) )/J^CRi Ri("c>'Ycik>ʥ&}\VHAg,*p-yvj']]W7c c@E'i8 {DmO[LM<9BvEf3S<8+:gV"4XdWe)~tfWI>!y<f` !G!ȥ2$ΛS~`}XRG <򟣦lZԚJ.])_JLs!&{T&K 1cghzr&a9~gw,@ CAgZNG&1%sk7:ag%v6%F O{w~=N0Q҃Q4o\4qU1F]ݢU J2R~dMI [W*WE=$=GٳtJz) :Rxts?4brZr f0L'^'P(pmzL+ q>j, d&>C?k8^"-*JCsw&6wvP M_Z*>H FסkvS^G6 Z*2V>3FN]'$2C;ULIŢv@;_jDoӒ]MnZg]B8DE2szh2&CD- 3Z`l([ n?89F6&.A! Zsf :?QЦmhg?!.>_ ΔexqV]߾zP7fpYR3?&К e q`Tup&aS#Y'/ۓ$emjh:nݍo|r\#l0;~y]Ow:KZq-%bȶ@. I<+%Lr̥,3/.( Lvbוw3ڠ:Qnː%qWj>"%UP]s:;#Y+>K? d;JZHe뀥Ǫ*˼!Aᴙ@B@C=×:(~-@hKe1n.b{v%p/E&>BɆJb 5 3ٯᮌ/H_dBm:R|1$ulYin%{Ws 2T GRi{ft%K0NAgG`w^i& @\ l.ME1K՗tͬ%?|dTjL:E|eeܨƪ/ԆAZ9o~u'A+uY8)3gsHU:[rWیv)]UH7R9mH)S fKI,0ߋO"DxKl։[O-ȦL]%-L}WRxaN}2; CKP&rGz([~?lǹb/T7Χ^Y^t֒͞W^s'y9 ]Mm^?I_R'io!sD.AJ-}@+Nɿhn8:NsRV0fhiJOGBކTwEbjxMc7zO`Ek7ң—(Xy&v%wgΦ-Ikm7%OUq`?}* uۄT\tΈ(=f uiXu)hcERZp^{!~f,1}wNݲ'e}Ld=Vp_,} 漹.%)wOE|]+ p߄8Gߟe|_3wY:lLL9lH[1\i6 x)șQV|?Oeg܁tʱ[MMX@[֮R \.OBA+u^gGerf]~+pl =Y_+5ͤZP7Jky)(&CBWT֫evdRee!G4+iNsCYգH(@|F) XbD>FMZ:»' ;c{I$1GS\b^odN{B>(*-mkE<[kr f5*Rw[|O&K:Q Romjh5%/>jy1.k= rV ;B{59(֜0Nn9:H p xHd?mb)5 B2s2567[ }]s=bM_,f<`pPxNŭ[>)X^NLdGQ+Dt.;.2%Dgs%&呩On:qw%4OCl"5+jt'׌uf'Pyx+fT뛨րbk!kS7GλWMF,,]6g qG>Q4uԱ@u%AE,QWMLUEj%/В8)yTrMnSC!g_'xmUK_*:'Ai/`>"Bc lTbq[JMe iWS\Fן`+EC*qT֋[4"Oҏ#̼UV3`G9fDG 20lt5!`KA ?4.{@'>?(Cs0 r"ʹwL_&^ =)f:lV{vrQ܇)W/P*xiOV8K%LIsy6vn^]W;kA4\A@BCtiw""7s6,Q NRS1f BV>n)b9Y^$r瞙`H :{GE-\~vzV aͫ_-sR^77:m/DvǕo#br65| ⾑# T̆r^8<$*v!Si֥Z4 N7M 2h{<$p+]Jg1x.%WC\=CLVzq y0`h& ̮t^PhYuWfzs mt0oزwtc<>tWe{E{ tB3}fbAH˼?9 :K2XKp9pDru/&kS?}8UחMŊ=~S0oj ]=Cg{mq xDzBSZѡ\ =~ll2[!z»W/:PiZ yIp+kG 64($M*{aFȲ紏yFua-ackW;ZfEiBp^ҒgZ#cgfV-ss9BFH,5:MXr!OtN0$S MG'҄Xv" pG$'WZ:` iELAUSNz-k%c%ww aPrq2<'}ExnK|?1eIy.g˫ Vh5e> rWWSTyDʘڃhIE d AW|M1a"MP #4 GB"mO8Դ> X 9U--x8rKOQhj*Sމw;P'2F iV0Rf}`<58YŧKL#j[ }NŞ*uoJ]祇*S6q=yov }<'gI wNe aYz'%<{ ݃)quuDO}{y BR9YڻLq),߀4>hk +Q́8wfk70VHI h) 1²1EVH4*.ӍQL`Vޔfx9ts9hQs]+8S^qf7%V{a7,E.ޒ|AkQl^EԄQ2*y{fPQTNoWr_3dX D$Ղ[.൹R ڥ.ܲ#.odgS'M\ di0[Ԁg"҉@YWܼ0۾Iх/Bz*yN΍HPŲhVƴ1^uk?+lsW2޵HCW?3)V Tv+7 lp>\tT2)A9qXra0r7M/ /&Z)}?/bnA 2A# #1׋xÎJlp ܱxӹ_ҁJ浃ZJؾ!PAd/m;Ż(@V:aY^ꑄj ~2YyZlA@Z)0f&v_GB6t=K&3hцk`*`4"pÿ; PŸ.IB _t|9XBݙgn;WP 0z*Hl_ ZAŸ| q(42{B]QJ>-=6SSZIT6}OP낪JL%$3ٲ_1mq5|4͹YTpOk-GidC^}ьGP4J]a>(qK>۷j{S+k,=*v&I%(q49+nE.5 K^b9jf$&u<+ MkNƔy?Hݲ](m98?CU)G5NPܵ c63}SOA'EZ|Vr=47]5i 2y8j[]ɉ n+A W+¨YZe"&iV~-*;72̊";a5 lph̄|O>jW$V@bXiq5Szg P\s&(s&pSҤA:H ⽜wJ*r@qE -^# 2ŴT-e~=Y#ZSg]tOjf9~UtM,Gq e=o/Y֥Eл7 \9S^xˆX9I8F~3频x tEju(n ҍ-`p%/hR.-IٵdoέsǪV+ͥofbྷ?G㰷]QJe}!*TbJ yONP<U00+XAz̬WpE*ZٲXt5#ml/\x^-,=,=9-z\֙ ۳ ŕx#_U[ wv 0G-^AJK5zX61"ki#VHHe $3uz_)Q,٭̯6BJXl:HJ>6*.U}Sd)UC曪R%Q~3b<`RAr2R?+I#ݡ>J APuu+ Ś055VF,ZG n{/ ;Sޘ&%{% i<̇^QZX*_Ճ3lf}k`p$lgXRvTi%]B%^ڌO:;plSP=jSPy;Y R oD8Z~ƍ[wȟN%F`נIߎb>xl M&"_~h#-֠gZS>uw?ݴ6?K)RKjܺSԥ[:&EG~T1h#Y(6"\^EE'lYA4*ׇ:j|49M;%>jXazF_SDPph_=\w.+t)*ICbY~OgtEm G΄o@ ˊf~>1 t-K}^8}d !㞾?լwRĠ{h82Ƨ\ޭQ?hTH3tͫLxv@Ztx"D;ߚFj8l화l(I\Htvk> 8lLphѹՈ.EMM1&?"hʓ0gV-ګ?. EonvX?7qN<jTecэDPQ#1IWC`ڏ7@"p- (Y;-׎0e3R߇̼A$%*w?\?|Ky AGb8_u{ES"xI/bBp-g͘2i[nIy_aN"t!5< V~ykr`PY14IC ^9ߑ[yrJlаa;j\*q#M u Z= _($dXՖX;E>DA.SI&ȁ;H "qL9~1ـwIYs 65 Jؼ&DgdHGBq]֑rvJ=R}vz-< ˭C!J|gFsy!,l@)vd-Pf!DjW?^cN b`(=[KCYii?Aeٯ(KY\L>9h=7yR֜,={Oi=2z<l<]֢ JWczk.?XЌD/\9i3{,U*Dǫmes޹P4,]KV23 σFQWWIPqG3V&:sv xc@zvqiVͥaT9M  Ǚ{b:FvzУ0O囂a\ Æ^9xjIQC~<.`,}*̠@jE"*Y K1ђ$w|z_L[Yz';evλIKPÁ/2G);lg,=dc==ڭ ߡBy-Y z2Eߵ+[`ݾNWæD6 MЖ qKW^XQp< #9ڇͧ`tHv* ,sD6Edq|7;ZJpe&kLPřsGsoA-`})Ho`g5& !w{,sWRѡzt8:*ӳ /K:^0XH$.=YuJd tLhuU$RIx>jtv{9{:X9o@LLq ϿƐv̈Y=͈X/16$nV%Y>DifjLAXh]JpltS5tj"ƣ4,d4=9R_i7QJ}SSvC{ B! f{z d>x{jʪVb'h"-CďL썃#pa{Z 23s^Y7 tI"!9'Ibx ipi~ŗlpJt'q.vnǗbuGm0Seܴ .mR*(?,,&8t#~]u?hdYU'_ \!, ګ->${Ə;P6錙~hr~\Я|Ȓs:n)͋T(&S?R{!2c7JC0K`WUy2Kon:4mˆImNi@l2 0ehץ5/;6L9?zk0;iSP8m_loj ȗޑDVWϦž1m*|mB6й98M$K蛟@5s1&j 퉮 EiDcWϑފSTMr4R.hy_´ᇺq*~[U{' ZOk pr2WgoJށ)YP: 9sh;[Giҟیl?lĩu[v A|rrX8vosztwf\:0SY/ ٻ+O"0ڎ\8_`xe>Z:iE+E.P0)ψb,<.9l"Jِ- GZD؞,RS"{OWf=?vOymm\gUՀce4ʪS_@>*EἉQ:.@Dw-9]qis9]9{xِtNDN5rf^abw0CKAGAϋNK? zÌU.7? q.eϻ2򃧙ɇ-%,t~/sϩ8"]j$>%FF3ȜL!#"ҷSk9 ,a }u zGf񲉮{MVq]1w Kp4]7j(B/RT/ƹAlOAYD Stb{p4}q˸K鍖r/2t"\c {BayrXD'SjlqR tRA5[O'Mr6>Z 8T^ K0D. EgӮA6o#V@"6%O7VzPEv "L>+k;q-;O 5!ɗGiEY{&̈́ R|(-!ɷye7 "gTia{|iDT͒8@KUZ4+2LrTFKmp  1.&O{,ʟ*9Jւ fL%d;˒P(EG q|(U*gTza:>"#J u>@e..^P78)#t{=7˟<H/U/,?ʰY4_v,l%8"rV`1+~S-oNCX+Z4iwfttepcon ڗvS.@?׾ n/!̔ẼїhWM\a\&)B&F3LP7D-2ɚ6 o]*&CUH=Hi3 x =07D\=.࡞7=W$`eFk8cn1Uva#G]M0.8 Vz2 rwў=407$3aB fR"p~WV.I"(s"oh)1UvE6nM8qCE5~2F+TP4c[X1Q js9F&zg'L"ꭝ% #{0WrWS*ejINZt`W+$-q(Ql$)x3_392DVr9T0NSc2}Q4VPEe[⠿/2*lSdAWZL6xi|4JH f|2y۹ [M(&b ,qN9 .إ^cKp ̩a4#Yfec_O'9 -L)nBv♒5_zf748ߊED|"D:.p;-;֎-W=]aihpkز<%F`3ӫAi;oP/e `xuFC*_]ؔtH>@g"BW/›+4+txҠG<ӹC裉 uY-ʐ$,"j(J3؟uD͋ߤ@Fp !4vb]'aGP4$gǹgDdQhw k]Ro` w(fYw"QZ`]/A7F9Hɮ2gF M[\.KRA$ӅTs V&.1XʗA )RQ8p\Ѿ[D"GLY5,ɲЦ~N/tB Rzi@[Rv`w @z))jo̻ ޅ DPu̢]Qx"ȪqrQ/s>DTP򙲳)^DU,T\:}Ե[)a!TXAZ9g&mS 1\@ZL'!tZd򡸈C dYǻ~߽$p"..ӛؽZGqՅήw5s87e9HUݏ&0yj֊jr;W(/__hhJs.]"MfSތmሢ i=>i`>m^O9 XW#FφWӞkrM&)XEky\Pl {'f,[TVbж$K/_ Mn\9/Q.{o^Y}#ݪo)}{/{cL?𩪱Z6Ȝ[\=vky:[Ewdx ~V P9Ƹ: )/-X0`O RC8$a_5BlW#yiNa=5}_B239Q(s S6[*|"%D۱Et?Inh[Zp2Pnj(F|nn>dj (b"D2xКnC_xtߺKmA:ttnc##$AYK5|9hIO< j$2]$KBE/m"߮C-!} 5Gh:ǻ&Ms%hIqZrG6Vٷ$S' ",_P )ʆ6tT=2qXt>tT+o"ꟋVgJiCietWҖ zS۫ϻINr2wyE<,Gz|9Q Z7l#;:UFB=u>mz$T6Icx)"&^7F=m a^kϞ2Yc#:VNy[K͍!J?_HrH̓Jbb"%U4\I8r 7t`X"_3q!V߀/4tý:įx0Sy l(xѥ+ f6. dV,mW[Q3M0ΞCi1ID,%b&f2-%OV+FÔp2G0X)J/_cZ^(^;"8:γlt fBh?@zn~P1:DY*!e9Oj X8oNMUS!'^Uac_D#,=~lP[ pv2-oh2eøoG 'q' zRn;`bҠ[O[.fIXz'z=͊fȤvmxЂb@-a^)ݖ87M',K^65\ yS! JVG&3xh?%`l˴2[ӧq!oJZ b}i>|x]7%:C}xh%ݱ٢Gw҅(D6! SU廵0Qy+Jn}3 Sq 'ϊҥ̗~!.0Lߖ[u'Ӑ02]OXuIae5MJZ;c [aYjRF.AǡmgD%PK'OB|gKaG]ich9s$&m ߊ=xeIjuDH@~K^ u6k{tE 86_ggjX7MUYhZ#O.CޔY̑n4{?CT|~C! Bfb! e@  EAoz)}:_:Ir+b-e85*P͌pZGdvZd]qZ,S$ocSʩ zUOgΑ=*lMgW ^7?\9 :$RЈ'a(6cE] 8v[N(2izjY/MZqVaGGvjIRxkmWEP4:Dz;x +r82}l;_ H̟ݑb [TP NS^StmTk>KY H5 gXs0ihdU ..Sӎ )8 a>2MŮ'buTpСQ%C#GV37@^%M{Bߑ7P2J ,2x]Q'_#C7cF/kSdYO|Q8cy<^xU3ٯ+đerS4ԫ*Bc^p{+<+SI肎dRz|qfYn9M"gy~V9 bL}s*7K~;'1 3VWSDR$QX*5tkpnܱwsy贻N~aHpYQ*|{䶩DzNWKw>"](jL1ɩF"-^ Fix72E)s04rJQL ^7PZPD_V,Z7T)S7\H8HK.z-7zA#-Om!}YqȺuSg[kB~\;q. \W#szdwM]/ 6`%_0ݑM[WB,^@ZcgÝ%`n+.}%`YjV?=8 NЉ%},A=0V:x`<dGW`5+(\%#~3G/ΧM  hfH}:Ə-veHGiz[q,tluE1n^g-P}x< M&]xI/`wlqCH ΐu$p`g9~W7^_Fy6nmKCXҊ`9T;uV/жgT revwFRE),sFsݭsOB3=ژuI L!1/&&moS@ b; M0 LN"i´c:4 v ֣6Qǃ+ 3j7c]1doGU')dyT Z2\%~WUPJdL0 %dψ~\p iw4ՍJgI/uDo~{Yz 㖏KH#lx9hqE"c! H`Zfu4k=ٽbf! zh YMr.z ӝ{uUjP/юm MzTKn)#( v uUK^y fA;=^ &ł'6.z ʗυ 7SxZЦ)d:JJ@T XN⧹Tk/o@1~[ z([ćG*Qʨ *یt؆4f 2@/~Z:s'H$G[؀jiȱʪPB(,~Νg|].-d#_E,1HU46M+Kx[`9 ̱2uNtG/Tq|'z6CZBWR}Y61Lt?iQGQ;%`-l2g:{-,,GHҴ#21I-6\U,|J6(Pw֬w?_`%U物6IvA-ϚO un9/GCOe%u"qu1hӮ)GeMűJˌ z7\(`B2ZOװldQFұfWk`hH&HFmv٧_"Ռq&ism>7hctU_Fp\Wlɷw:}m{4O eFD1޹Op>@zw٥!LLIt50R_g&6L-Ebpx"l']<K0c|wN!c?Q$ k={#/w<=([52DryYks 7Ok Q:nDg{[N\`@9?8pԛv,cu9ҦGV /?Q=LxKM9$qP`5ρFE%I;Y͏j[άDn FԄC#Eh,A]{VftOp^Fx?m'0?>e%#iGsÙ-?0bEA92GsKx'ENRt|XQ3r:RG,Hps7~Bg[:}<2Y<,h(=ʈ?;6)ܜAB1`gy9CzҴr w[F(<)--4")]#OiF>83PwH6-vf;:Sr_Clf`_ÊNMARtytPJZX>GKn>$VWzW+\Z}<+ _^xG˶i.#ԊV䓰&.PhD]B,g¦Hb3"adW4]?q:-%CPĜKaHz#dqL^LoG<ɐA!؇4l^{e,e%+?tB?Bn<]C/wUѹpD3נKzpnz}4W7r`\yk6">iPIΠRAG\;cBL;ӛ3#]@S]ajHT iG޲Lyx ԑKHvX:J ,Lp D7"|oscb/kFͲ,./Eʎp'!-O{ kM@KKw]PCeALCZZ{ ^0RyӬ!j1ZO*11O| 7'ݒ5ʬcJH3*1J=tEO+ M4UOWm+hH8˞Keѹ2ލzM_Xgڬ .c`t#n∞xVDd(E3G׎քCk-<1Y6d##zj[*?wONI]cX[=I˨0fiQQbnTw4iDQD 7v\A ]HOnū\]rfSu%jyQCI2M룏|'5a "4)/ RtoDS#bͫ>ҵY;2n4CefX NIl(&?>'K# nZ+X*$-=䥈@Xw)4>P+BƸtVʲ죶MC )3dY d6Q`a uL  y3@/u_k4)FTMQ_.Դ 2C&n{'_#*ShEGc>28uD?m}V-rUKun]#_CZAWh nK,R($1+ -Ln ddWos2}+Xc,Onl%m1+ASg N̈́&x$Dֈ7[yEՅB'kKay9G#yunV# X]p]oဤV4aOvSSՠЇ(}+"^Lw1i<ʳo3ⷤᾊ602NstLOy@W''Ewɺ^!N+ixYu0Y|+˜*crx8`258w6%d4"Pc5M֩~UBE k 3 G(>IA`-lm55'. k~>j˘'t1e8nUo6X `Ϩݱ 3RasS)ҤЇ-&g/=ro,8?n+;t/$ E"$jKo卓4G!-;-B3A HM M  F8ЎXit:8  xE5 ~"E>)|O./P?Z'zyzRQ=U2ǂkە +4Vž lK덧+OB_ 0Թ Ro)0u+O0CHAE&YU>I+K6JɾI-}Iǰ1מE9|% +nHDʁ(__E?-EkwqLU@Gi!ǻD 27ecvkN2519Ý·+^/2?l6;GsS^rKA`6JYuTZ;ظwv='dx7W\%:;_T4At.* ]ʻ.xEV<8 ~DZb#jB3qqi0JVq޺CJ'I˜aeA匲!vZ6,l!f*R-\8f 5R&|G7VNl5WgO3"njO>#Y^ OpLCmBF10rxnQo7eBfPxA%1TsԃgS'{%r$ ^9#Z',`^cT!}sn.&\aDOWpXE Vڠ{ЋTmr*e ӳd>_|,. H́Qbc É~j樑ռĆ6_{XńۇrLN_b|G :4}-nwGq8l>:BHzGq,_:;>L@m&}s^3FG!`/浪8.O15ٳG~rd,r&  2NLŸ*ķMר%߮V4g %0COZ1Ax=5GgQ-EV.[KlFg$뀿8NWQ51yO FF_A9ZQ+׹IV>k|m_UpiW ϷBVRC /4 3ߵh}R!zAA>Lg2(M,0K@RRl_~}B6k Ͱ6@zgi~HZUǑO7l93mDp xj_ \L_.< J]:UDryh.BV bL3UXX+:S;!`z,?S ^ ,a/,b9 LdPѠfY qygv_pv_X;i d5>G ~4DfiPY;ϷRqF!1@3c[Uu!djOB?[.t~$욹UFz~8MD 9|H[x8>Z>\UdxF4>-_=GxmhB>/?+?Z=\D~[ugD/P,9!B.u[_m옖.M 'PB}E\2Am=D Ǡ}pfCsmWmf.[6+BqfzV D#ä8ՠ(X=؃h8lw@,C~"n!\͸Uf׻wv8g vZ"'D"m tuS_ - ǹS?HķYѽR.QOMvD7Sczt[AFc?Kh3̟WY`e{W[ȫȏ?mM%Qg?I(A+ =]ݢk=P J5_$?&gj/+9qL 7@\͔[)0s ̥FH}O!}UJVH*2]B4>\,he"xމG* ң; 5[, aG]HxĀ%4/'3oiwvw Fac?.JV6Dpn2WԪnL е,,fvCpm]rަDbKaY&F$/+G[Cb#( \Uˋ@647_O>osP zg 8__S?|K=k1*"ɃA;3+T9,Cg?6vy}b;P Vϑ sɔKȇS <;C)돑S,q8!Xy\kod@B&s7)V@ql1Ֆ0v-zeS;_j_dz.Wγ?40O@C={ne#gD!Ϭ3h3$7C_ ]1ѵB|*ۍ6"ؾZ %0ڰDi69Xcﶛ6>-7 cwd:Zw%A-k.nFq9:+]5iY^vRm۹E,xӆ8gM+(f.ۼU5jĠ 5nj tn Ճ"U ha:{]s͞;Ҭgὡ# ,O^?kvۜO" gQk"F~P f,*BVGo=2&z_]\ akO^rc~z&g+| D@12EXp!8杫TQ 3t IǕ# Y,0]p5K(9" D4N8a',Obqp>3YKnξE`L5X8OX;%|9{,R׵U@ut*k .g<\ y$[c8~\>8D#Bl{źn3yce]7ąa",%y%ҲHՂCNJ1p/-_" .p [/7B+A3UF>e}c*߽EMcKC9y ӥ|a cC_2kuV䍝%d_<@鵒 κY+wϨHHfWJO 6%;zH'MU41_RrO-DiX._0AI[Xp,UCXy3&m`Om f O`t|g*OI|֜ϲ V$3A_@\:Ξ],hǪ g~IC?^xIʹjP'lj'n:F \[V"Qܷ d-+-)\_Z?rg3W|V>\gOgU 1֬S#ul I5j΀ c.fx_z|CL~=./3s񧑝zjNq$}b2?5w\x`ؚUqdѾU:8K3A_TDD=<7pY\;)rV#rb`_TIWLF]a .u4458TtP>3MKu+b28 ‰I.<N7bi/VoCMєR֝'u.d-G oܪd0 2 J:dZPzbXVHvf)P?,YMGu(r۸{1SU;%C XZa!-=vwEݎ\~(@oa)3ـ!ꭻEmJuXNȃu܀(\ImHf#|BjJ fc(:H8u%E{ʬS{$P+km*^;bˈ0\v(&bا们VT% +fo86R_x*E &{ab2JڷoBsY-D:6[mR|3p&dPXxo!Cuu &3 Az.h7yD#)ȓIDعz\CC{=ojiʻ1FN~lsƑyw-wPZ~a:CۢqL-d-fu6swʀ8be>Ac݋)}!3G:`v4qkKR%n\۳5_|Z%k{oWY ET1>K>?bbJqn+cany*i' p3-Ʉ" vhMTLsX9n6QmghH4 UhrU/,O{6l@}ƦVCu;oYM"bAicU.}B3 n?OWйpt}޻)oY o>G9Rxs@fOBbnsfa/lAtY3δ8t#owJ<9P^:Lp;!؂w59`8!Ǧ&еԸL2d,39 T>0]IP^l1 ,2?4QE' <^m/yvԯ9[?Lۧ ybeW#%37AKeu;#Ky# 2=Sqz׏AwvXe뇵2A 8l ҁ|?:@VbCfEQ3":U  0OFs>}78 AobjQ P`ib 8@'2,[{ETnFu't6CͣFn3=F2+awUE %xGzu2ZB8Kyc\)mHx4LxS+,ӕ$aUTUXEэe O!@.5MlM~/@tviFHД AcV{˞naUm?aढ؂BC% KE!ndp#?Nٌ%K8'CY9@ e5LUepqbJl6L,c1P ^&YR$vuj#~)9m "ҵU27MI#5w)80Ehų5ӳ$F$=y\eEq۰RE&;dļ[YtAӘ{໬sSN ` ݕؿ`I}C|ހ&K+!W6Z|4eI3rcީBh~FO vI>I0ɳ{7TIJ4^v5ѿO7.+8f~;ɘ^$%X֭~{Bc-[I(ꩥ {EYLɓHnf?2;W78Nxb=e}bPu!H[̙? 2ێfAonUyʲV0b2~IvJjI^;q1mo$_臩|m@%qy?".3K@%KIm{JUƪKiqQDL/a?+svAe])+n\/jtgtlՊ4fdLhm~~z?)ɉ'P#4֖m= MU CEZKz @º3\*dɁf"Gdp~zcScHMZ0\IЩ~ʎM-]n1QMГ{bXMgb+K)+l(6ax/|5&cB _Wޱ̲  #:oц@4R(#w5iU03ܿixLG]1s.OSҷE2yz&}JpXgX&0&HtX 9J} c{sA0 >D{Pj-oH~Bm[-S]ߋ :EE碤 qo1׫Q+ĸO?nٖ \'7 ܲsdd8炬RPܗ+~Un]_4la# n<آ>( spW;OSAB*.yhL`66RV| i9@R^AT0Ҍ9uĊhŅIo|~Ƈ.\C cFIxip1Àq2t_r9NU\ATp"@j~LEE@ _b##dsʶG5pFNdBēe1[:ٳ7Ax׶]-,O:5BljG&@ Ğ,H\L3WwYCdU=^$GU^ZIsAN݉X_(n6>"ű}fCNԨ&79a47Y54ܩ$C kV WMBGy($gr5BTۡwoam̧޼` =~Tt[}gFBp7`hxP4 ȍΌd=QC(A>w'"RDcmx$&?Дw9`X;M|QB"1{nU8Ezy^M /ߟJ}c{_Psv~ZhƢSHo()V" -nJn&Jb(c^8s9Yv1@$@(|ݐBԯW= *jDG0<7^mP֗P'ZUz1:gLw<8ҦzO#R'$x=L9 `!> ʨCA~PPM;c1Cۀg`*ՙ\*yoz3"wj;d8" #ҋoM+x#nY`οp7}iՐHa;%cǦwBTЗh}4^:oqwuB!Mx.M׷ڇA4}~UM7b^MlpcaޚjYߴq_3;@0^/wh _ĂCAP- > ȋHi(8Wy9߼ ,k 6 /: j-A#EeyqؓXWi!|(o6NLh  qxLnHR[3H@r>ZnQ&/uAdSQ345 b&3¤j=iWŠ㺎nLCxi3:F0tT"Z3Ha $=@@A[Iwޔ,jp(OqIOo{Q_JL:?kh/l"R u'ce΍8$%:⦸BQ ȵ8~ Q6Cc^HM&:Z3y Ɖ8]„}lj=Fx=][ МwtzI!N)1EN0?n!UﶦfVLXVvdiOm'+){4nc ]ۢg) ~iOhd~.퓞;FNTTG f,dWY,s(56m+ƾrLbLu'E[Ur|[X۶.iyOPfW *sW(78gvU)5R ִ{1n>Q! 8CswÈ=1ݷ_vR_يMhaΛIfPμ)x[*-WIy6."=J?qs5/Ը,pޝl,3a0ZC#WFy\:8 2`Xtr8I"{#Cu*^ĝ `^3 qg  rH[*p5˲>6\MPƨbi9L٢ϐLWj9@3_(K#SB"U!C}>ޠƚˡ, DYp,ҵ&(q3WE$I %Q_ <ڨoGio5-2bd<cDXF/ ;oޜ8 p ӽ1$r_TF 4U #(V e/lV!lJ`4ɖ{E=P{{hvw׮*$4VwfQ(D K_; +)YMt(n/MrWA}3wGb s;dEaM#T|J|e/>{a{mS=i˲as>r$1h#)>^o(̔R`2(ʊ#n*u!rEiYG)Mt{5mϴۨA,u E=Bڜ`^i~*߻)DNYˉatVJ&-uԭE +{ O9Z:*I]!İB (f:EH^ܲV`qK7 ~$A 0d-*$jYBчK<=O9诣%Lұ.{eDc֎T'Ai0=t/_nA8?^c5!p^ol$}Zg̣{3.SxpC rhbi6٢=a ͞BXGmRFGd-a.:|1xH3*ΕjE}]Z=bAU9f8#_s[C-e_`Ӫ-;rЇ P|V f Y h`B&bʐǻv4.˜ik=eNt+}~>넹q#bU9>&L:!rKƨ'O ¨cDe?[ tZ5 nyPe NڃՔiGKBywpb#dAegHXyxV zn֢wRKSpcr2ç ~(S 8ދ3d%zͼĂzܜl@WNMh]"a1Unʘ@D2|@c}p a[  7yKAyg7<>(v8 oc.y6n\d*Tb9 dv[Ԝ|>UlV(>Os?@"1ozy˚k[Zo8 Il9pz={gʳE:JfHrȾ5!5S*_.He2wUBlIhxυ[wUW%?7->Q ݂1Fz ܧfOg+C|ힰ_eEUg>zSt"N10m2t0`Y'un0%r' 8d`?cX{3"8WVa-'/ j/LA\RhXG|u NT qͩ3H+ Fj1w\?iWhVT޹+e íE12+M=YQե/>.2üC^05.HE};1B:l\&M#5yRhdH\A }FLѷ<\MeGb[LU Vja?)xj#I@mS-cPWl$yyi-J-K%֚Vt.jG>_ױj׹~GӰ;7'#yahCָH_Bգ3ʌ.N6jNمOcq~6{\n͍]##՟ o0Njnf7S&d85 {\_+I6FvS2/j9`7;fGD03.K%jL+ୱU⣼^hI1Ȫ6T CC:&lץ IdzF=<pj*L-0X:=[_ -Rk]ڢ[O>)F=rRq$,!.ѯm tB'G$ɩ >ZR09|=y&E#hZS!c2biQ}⧜G?uT-}TYfcnP4UGnL쭸7ŰPLNgs9m0&c󺟚{e|6CuP&wzX ~fK/t7} tL>2.hVmK*(d:d߄- jʷbㅑq*L[X*ck7O)${FlJXUٞʶ5}љ@AAY&QH%.2s#Q\q)YxאK4GC7Ϗ~y|,.N=u zI;B,GKȬn[ob{>!x!;@ɱ kp-ͼ0OywLޒbrdCӯJxj}1ߍ96VjEa>,1]ZD(!4mxBM(Xo2)*qV~uP6њ^d}z`{/Œ >01$˓a9d uKAa<85Q8. }0 #)[S·%)bv^so ]Djk0"?#E)T zaNM#-+%PqE\ 7wt/ $]Af|ShlW`zd5|ю©;駵~|WɇjwGz&~6aKcX/(wfA#D IЬNfkf,Uu%tgèr"_eEwq*jH북[ƞ";3QӲP<V"& [])#xMՉ0^;%`lY< wnGoYʏ _{<82"I[B48|vRY4eRQ/}k.}L]!0'D  J%ͅ7+gDd8/@? gxS([L7L-8A5M1x\3)/Ql28,,I +_;IHXR{1c`Dva/Fc1c5Z_b"KC kf{4eQ=O`j~Us;/Y`" H~T}!攀;D1vvq'6,nX96R8AE[pkPɭE]Hs>!ěZe1+a"JX|6aܘ0qj,|dߤ)= Jlm\LT5ha_' > ai4χZIRZ=3-~QcWƃVSZ!"z#Q7*$vf;H̐*d^K 9,D"idomquBatٷμCz|I#V-OWҌ B ik<[j8-1O)5(PxLV<S cyg)+9!^.% Tp$=s&vyXtE}aHbء\t$ss`sxB,ev4u^9!-W%h&)R!+ } ;/Ϋ:$Ldkޖ{3/^3k_~jt oBdw0tWICcetBsJw]A?i4Ot 骩aus~Ve$ĂPFN*BtE3AA.P?WK7=R={r(9&K3;؝K{./T*[t:Sf`6RuLJG'"TYJ`ETf!T6ydF;1@Z=4R5'0{\mYDkР=U:Թc_r贊J?Ci6 J`q |{RkжcZiQg.f/ gJFXź (.3bl?kO䃝dJp1 r+MlҷP3[#neҾ`oD4 >˃{}S:FujƔc'H_9/z} >V91i^e/kG=``TQ*aT8 -⦈'%éi2ctKV|}pqXdU%6F۳#VC)T3~'CNɰ*(qtH+5e1t΀C uw߀ 62"4NLa.j?}(]tyL#]qki8/`K@47ko"sd!CCH})pl44=qsP@*$Ÿ)pq}07L&I&ufB帡@ W;2:Kq,^NI}}6r'e{"OnQClX->0d]RM1iF17SJ,hL*Ҩͮ V?|Mvk[%e$gȮu!):o MYˌn=Us.۸p]F?w͏S8gQ}}Y`x2O=$a8)v,ûQh$," ?V&7q@CST8Њk㱣7U~ޭ3o)6HTz<ʬJjef~SrdkVUAh/ y=r~N2956-)'xZ-H;t2Ge(vnCMD["Zl5}UVE66lMHcnF3R(?e3ֿfVvO@MX\-+*GuqDEW\C3S6 Dzƕgk~C(#9L8m"3a3l*r{-$~e\ 8IWTzR1v~\pF@p"n"޽>}GG\3Ø.Q' lXQXE$E]V/%[@:&{[<٫y;Ȣ@(yh4'JFh 7G+I33kY{Ⱥ==S?$k%koK Hc@uѵC3=jƷD?8;I}U3P;;6l[pPY=SOʾisA@lg @x Z 0VEV ?JvFRa^T\\p'sb~ו*3=~ AZhiS=C]-KDX*[cNLXD }3gk%i7m%'$kIXc_ ,ђ )$FQI]4WDo,w傹礅$?xqyx?r/i nC-|r5 |  M>! c2rFS95 0 YwM@%}aQ=,㮢*D΄?事%h:kXnZ!||A ȸ AVFrٌ4nvhR >NSG?YZS($qO:b@yM4-m~mg0,NV* 2"jƲJLDVjx.!E:5* /NF\.zrmc]'10a8NƠQ 9 R(5do^:Ģq%} Ԙ3y1.^2oBނRt}j #Hߝogn@n W `Y=Dw` ^z QǁExW>$Λe;K!؟1annyV%tl ]"IkW" ;ֲ@NjinneD23쒯iPd_qxcW^ƹ }JoH9uA>zƆaCBIi`oZ5?b3L(QJ7>=ovtB#-f\ Gk͉|%jɤgjILY<UqJPvw2R&0G)+$Cc~֬~2Xn|EU~f>g 3l,(CP>'rgau?^jx!J.nRSpBZH*L9d VkifڇI+EɈt1(H6-.ľwM.'q{pu(N:ǜpEr-=_ՂY|=+}P E?2Vc[IgYg n!+ԂYhmt)}\KޕL+;%owX6;+d%4\gwPgGk'A{ 7_ 6rPX|˾^ z`z{aA}_samsFw4+ԂAG}Y),5V屦t.GLe )OnַEQYAFSf8I;%!T#XS+j@яj-&_2YU,x+,y!=DyH`-.bʔRP[\5 Kڷ|NokG P Y@wM,,c:_0jrM*Weo霼PrW TIV> }ӄX~/dV9lɰnl 'Ğ'㦽wc\FOWALIR ƻ ̷󮆉UF8M'2+E_, 2`zcijގYX6ZpPF'8JMu]1TŷҎ~fQ2>rB2ē6fa ʯCuIA2S1j*umHSD-Ij(Bgٮ[WC5lE12I᥉rb#!n􉿥;ir;y$e)J!TOtiAX𼥲%Vuf8-=UEYNR;™R&\F&?w1o81EƕIן þ^JEu ys q4=և; h h8`="у*[92Ɋ_qH~[ 8Q }V#Ѵ{YZ )LW`&2in~R 3~3cBaabMPw~K(l n*U''"Z_Iu[V0-*u^ˌh`._kP. rdմ e:'l gl+X=0ȵVfߤG,ZN.NcP>aj ߛr,3m㛅MDe},,h.)8/P BI(jd_+2{kP"Ր{2^3A%Vc!z_AvjFKe4!wEuz5_" s?\2C;{D]݅@L?y1m:Lb-V5L YUŴ`=ugz?j/=ĵY?oJax uxiK;PC>bn'yu܄` AQ8>J#ŸeB7Dɐa+TnqҊؤ@DneyN)IB d}읕=;hƊ.@-",{ͣlxZwC}F0V[%;p~R2=a|6xl #Un[ %H 2yiYLіMJ*ȟ0¡:~Nd !HgȊM2RG0ޠ>&\J]F7$B]Yc+Z)̾#}ҼVcuTA*su"~F02l@\9\8vfZSHb[FMľeOi6=VkUwW.YN"ynSP k(885_yR8> sNcPbҔH\ǰ$v \Y;!~q <&Xb*8b1<Դgb_ ȋ)\`ؠ!rz2a.'And]BVbW Ad0)Qv$k;IWahAkM/GiDd1)%tJv7I505f[ad TIPv- Ȁ'Ry䱭JC0_+K|b2N+?u%i<ckd 7Xna p)zMYEz'?XWڨ.6O5L,*O^XUve[> {}_L߁Ut$F9"(ms]!ה]tE^k0C>~m[貰= d dWb0 n[21ECa[z6+:l=sqAmG=ic5tKo3ox+!gr0[!M! F(키E?@(ATUoA,_D?wbm&:ˆG|(ĴAI|'<<[r}+dV4"*7PLīgZ4%ZCQsf}=fV):Zȓ6WN7cvٙԿ;.+ Tkx: C9f%r_Q]ʔ%5PG ]/7>X^,hI,/M5Av,up{Y,('q $mt4m@aTZ)GVdV̈˝ocf8j61Kia4.]Tb-l>#mgi`F)N* [LBq/0{6jWI cmR8̌oχob$zl_Wܲh?M\Eʱ8*w$iIt d.%?'"opYg=y 0X)ǎnk]V["ѻj%'v‚IbQp4/d5l߲P%4 H½Bܬ޶(uJJf ju[Pe Z.ԍ`)lehyyv Oۗӧ<,{Yjed/V*쏤MMLi$bCcåu5|X;ϔ qNV (o瘝b\6"ޝ \ P)J&/b#}Ew .ªB0t->caҜxydj4vfKJK ؜߸YQpn\|uUl 0oQb}O\)2+«%[`E=o uϖ|$W:zф,o,y)iߙnQӄ]Z ;e[x^)|d_Nv3CYPwam)͢F7L7':ɝKmv?n$1VX!g7Yjke[ ɒȮ[欗W߸zYV1dE%tjAٮBQK+4Β1}5{E|GXu`zC;fuBG8y+^wTD}O&X$KnWG3 ^y=D M.x& N-%-yS:&Z]?Š̍ɟ;~߀\]W| U쉷3 giŨ\:;h#}YPz=.se2\mN{ŀ낹S)Ӵ먁joxkz9mtOͤw:V01@Pcg5y.BJvm}bTcz 7E]A)^Ý$?)\B dtˇd%GЋUB.=Qc@H-BK=p ޘ85 Z)ZHw>F,CtTR L*o+dGahlB]̅ j7דNQP KH~(6hs[5iz^%ME? *[M/ <{zHUԷGfpLT^3bF-'h'i+=V71Ci Χu7XuR*C\@ҕ=ͮB@7M3 4"AJwo2@\V&M>}^+=OƨϨݩԫ< 0W ˤwU{g%?#D|/8WZ"RjPk7z|u "H!zQmYkL!*Xy%܇ZG NC"QDS1``g#KMYWh WeϐY;1.|9ܶt-\K/ϗt@}H2'e͠&w!1͈k$m0,t hu@$[ydZ Gr`3{ iG!G$:PlXH?={ fGkQ}e/pɬY {WFr*I,Ij*0`O.%󺘄_m$.DvUi {y/oA[Y*׮۱19g`- 63L_ޭ⡭2ϖ/ܦ%dyȊQ>P4^lsoJ-}dDƒo1=waQaXPS™ u4 od("6B_vF9O(-Qj'^'iSwyHc4c4һL[g> U\`u3d~msE^t?OsM<}r{`R*H tZ1Dy`~+ZZb2KC2!ZB %_`4f-+AgF>;82P`"-1Wr; ߲WmR_(W4L xdْoosW?!^Th9); <Sw(JIgxZHU<O{tgWA7>tʤǜ "/xF5HT*Ľ[g7C][%'HY+,@F vn~2s!;R`;꫁F̈."8?r$U<_ڂuD#Llk!mIyb~Oi-+?*sݤOa"Z|sDϠ% QcpC,-c #tTO+3a%H_r蒻HTqWiu:~K{ d]_Cy]Pϙ ; ªuevN.+Xi3v\\X,w+bXr=n %h{'k%〼UC%@ Z^ 2u3ecϵZP 7u,=O[\i L&ezzтd7+>G@p\69玢ruaalkH(a~ef5 1qN op_J'tB(AV  `-z˕'hyF2k'poҐ A3@6h[ߪwU0OQ&&*&t~s'B sR=1|xјGI5\HZzH9le׉{+)b<zhck'U;46k$Dy#\4MfH{ C噚JY`/f1\ogfkdDȥƛP pQ.#KPT|`r!K$D0~^s+|\6JW_QXGN҂ǼÅP !t1,6vbQזZ`3`P{/~:rV5Jl$lmŵG%%Sncysz;T kqBaTj4YJ=Z"ݷ0WQqo`dolv]zp*Gk~ky#s$ 7حDvBKBp"imQA9?R>mvAtsG@i}%GJ>1U`M=܉ <[JSHУ/{<{9%KZ.xee~.Y$``;n1NwF?Qqrp8:LyD:V,Q4$rF1 kgOV7>:Iйd~:?W tM͏Q!Wv0Q0Z;:yvvC* L6 2D53~>6_j`Q QΘALC~ n iLoѪMblхe3[D"!q̗"y)}uijx7"a>E4[}.Odo$-馬>wlwCw,﹚=Vw8t2r-JHόVcYH v{ g[yi\ïcۉ%y^K->֡F6"x ?\vlNtXlce$)f>l$3GfeT@൛18 e! ;OߊGC ʤ4px <0PqؠE;Abo]VM$NM2q3g^] n%q1{Fob__ whÜlβXLuuAd  Hկgj z d%L%1h>Cq چКrpHo<;Wў}mGP{xYr.'LǫC)Vo8=5G%|4+q^&vd;7ز}})[J%JB |zp~IV?i(?P6TVs/:.炄{IR?ܗ;a[k}Y `(u/ͻ T |bXE'7ፋ˶ ?FЮP#USI,-=]֫cCfR7쎄̽L++aomjDV2Sɰ^~sɄ]CG;3mlontbt@vr!$~S*WT>B2_fL b/'8 lѽL#YCV_7+ݑC{-SƐ:EuA0|DrhGmx3P8@JЍ'eH' rԋ/$KEw5b䶯0\;ފ9#c -Fa^aEG-a*K=:%p%Քa&B/:l&:An۫'󟦡(-&jޖq8 FYbsȲ9Uc#q%>Y#ofd @6">wU&kxղiymd\!/$1dRu o0NTQ[ℶcp5m4kS9>e-} "ifԟ۴MD7۸ҵ/{,BW;r6{B/f]`ƃ4ʿCdA 1hcFM,}Όad4 1¼qB؆:2eTLBHzp.|Z'Okq'tX@Hr.]"Q=tʍN}(1QSIf8   i~[HjWulMDЃĹf^_L,9ᤄxRVv9+)MY L tmd֊M?{ux$=~AX:|#~wO)<Р=?P0)o'd㢭-贃?P#Y㹇Uhb ]3r& ûf^ߒCZ\u[$c >K~rЍRLx5A~x H8 n,;P࿎BE]N]acl҆Ye*~@DbEO3\]:'4OXXP,c h3cqS@IY!Bʄ Ztܦܕ4嫤KĈ40df~O_ָR'(tLg%]s=c#Ͷ"ծEL2i clH"h C"_@գD<쟟?{@M~|fΉRB{46)ںhTc/+x[-+6O2I-o-b4 Qn \S:NrJ!ҔsD7Vߐ_~#~{-^n8'&6[UGŎrR+y{jjZ\%\5Ч 5{^> /!ռ}(lR@i;8K%[q5Zix~&antKuh]~oE]4pO` c yLOiP3MG$'J o7Eó2-8sz-eG,uG%߲;2~]+ZK4"}K}uoK eJSO.-9 v]gi/+ЙPzz]J^FdKΛ0@mAq17t$?sݼːܸO;f@bt Ϥo@"ES8'a00;6HW2({on07&plqfXޕ<{̇HgNrLK<m䆃ŕPVP2-aHĞYe_oga{ D dB_<C uGߪV_6.9StV>`.vTOu ._4Mh6kWw1 3TիnW\Puc!N4v-.m7d|!W(lH3vԛU廄!֙|m!Uq=MO8P9$˰䉯Ii@G,~ /1;)܄ MvN2`"u(jr CS9e2C嘟T&m(}gl/K<w9IѯHu|Zr%1KZ%(Gu8f( ]_f˖jjl1!svH*#'`PI옧"4Ɨ˯.Y1PUiEQ% ̔ꛫwYRrg _K٩bUOܗ/&dFU_Rib#ң,SY`ګ \8xb`!,[wٹt9=* 52EzI Wfo(T}FFV+!DA#elxCĮc#)HՄ;}Lu߹7$"MWi)K|yLGHL;~J\@{ĭXM\'uo_G @.[{[ҮvMJ-?+ԏwF;QSCspYnhSp7 HX74kf-yl20t4oCCu^`d0Mp5=/@]o92pjJFa3Y=1zvwڸѬ!@OzCt"cg/ yo_o)0O,<\2P`¾C@]v A:4TzVq]ڟcOF)(=nOsq#1σ_ҀU&$u_]A6TON+_Wh{(uJ) Aar!hu_+c֎>8?FBʉCtweN,mMV"YUX0_o(a V c\D^x+;IQ$Px7;_}_ߜ"x/nUu(ożB?|t{ "PFRiޅ-œiZ2~(K݃4C@T EuTӺ/jS۞/237qƕ -&BVom;BoOcYХ|&jB3G*2 &g6.Ȑ$ԉf̷P2u;|}zFoഽo4B:f-+:\} D 7{[`C1AY/K rCbY+IR֮b a#~ 9"b>ǵ2"8QU[VGMI:\KCR0{r!DDqMNdrowIȧÉ$Z.>|`PJdw٭62ٲiF z'ׯSP5~XWڹF!gW ݹFA4 {fU(6qtJ+[wQvϚT̉ R0N8pF -*^}t_\ xÍϋSQД@q%i^mr7{m:*K% dsa|pW![驭cʩ`fk%qzy`YN|Qj/W;|Xac#=ۏ,vsY>+s2O-QrE#| DJ,;b"hATyٿ#@_>PLJfHqn2v&%`X^f40U7o#1O76"_R' v.0m"'ϋTlv<鑝T@B'sJUσ8y[P'Ǒ$fj5l#zjkԁ뷱_2ҋxaS.Ie`TKyv7>DzO`Ɇ0S bJf[zqz(SJ6:|^B8K8]DLb&<1*i 6}mC>'$5(lfͶ~:H jgu,2fēb0LvLO,Kàog%C[m0!hIKK?/EɖnYHlpQxnH)i8$~I ƨ%Y G/(zOB .ωb\ъU.[6UˆK)5)W8R\X0dDOxna?U"̂ٿ+ʔ֑܇Di_ފpU[VU|\}RU| )΢d{oBjh :a41M4Ji_Ջ Jp˜!_/3x#XGDf pJS%E ńMnO1'´?5(8Az@urpݛye31kŸrI"*ҌqS4F҈G6ɬ8포S"^<>Ab]bkT@0[A~©V]A"qIg qN>EP&+,H<}Ѵ=fVMmK ^v| &VEL| ]} -&jȂ9)<aU۞xܲ s*=e&zrD̨'q7g/Y>/TiJ[*J:Bx#B=/]S6CHeT1Zi$HKq udO tV5syWJ HN8Z%zs QulE T۷$%œ oƅ+Wgs1u LvW7sT&KldOB zmB~ʩy,&Y<풇 GEo؆|{ָb~xX0%f¢:0hqf!) 3Œx繅F9SPa v0KHt ?jYvPbm꫅rI{ˆeLZ0/ vdh5u)0>\iDiB́W SpX"~xD͍. M3uArD4Nfǚa칳 4)8Bt2w#ZtfIVOC 'safV%B<lh^ so+G=D{>K.Ǚk}:\ij !,{݉xn.2n 3J\YV9Dm ?w_j旂8ۀnyEL1x:{&;"0WPen= Pk> -Ӱ1j -Pugt~ve0;SGX( {/Tؙyj{ԁf5XS/ɠ)U:0%Ӗ:0ou&^xZk?=ţt| /x黆Ӯc3rq(/ތ;8Q.LFŐ/L-g|$]daFag;S¸(y&LDѾLw:GxLd$Bus3 | W@צ\D|ǐbކ D-=hH٬y*OoK0wLmiܬ5HǻT>7!p5]pl`:ɴayp1.~x/83LpΑC}+_?%`aQ%2x,RreB~GMwmG24-2њPO$sZ"bF]'Ǧ;s jNϼ!``7o*i麼Erʄ)J `ƱwؾբNIVI-z573[I4}THglfE6BWOE۶M~m}XWXOSx qWeȔq<9"Oh SR{>'`K%rxnr|c !'` !S]fhԋ,6aSƮCh3pu%f[Lץ2eL&tiI[ t||# 7ԈnO^u)Y-8mr>x8EtJI:'uBm=|h{(v.) ^/dXҤf9/ɡ5S < <^;6VMWdg7o}<}]wWnw wU#SemeW#33K4G'Kv9fYEqw,) Ե0&/k.ْODźP=KBpĊ ǽYqA2]W<܇{YMFLMǽ:Ź;{L@WR3s˽os|ZOMbgo`^ 48܏Br uYrwr*րCX&t%Am3ăk[6 1SrS/{u5mZ\V $%Cjcdz$4]$Oulhv5ۖ-Dn ru{]ejZm__& \ݦk9Lg#v񗁺'vQ`ez,+:bk &A8@\U/Fy[ͻ{zD My:mPr*s4\Bq!b$(Sq œWfiadU3o!9x4w=E_+JJTJ׵څ5;_TX]څά'\l.GwS-N:'HzM7𔼔=o:}4mD,~,qNV)7#7YuqP$V|sq pA>y4h zRJ1~m=Ic)r>Ҏͯڜ$iyK*XGѩF5U,t~k'.A`UK4u"{- \8ˎ,^.f"4b IU3TC"`Tv6itmbt)Xxku 10P 򤑇FMF*M)/ e?%@b :EE׃ .%@t5>ޣU~(* npjnBm(x)!f1W _*ZyM;? /)bkvz'g2WoX|u/1u?qA}ThGL o'JE(Z`Mz$ITMʕfmvjo)eљ9MH+X=ʬTGM.ɐ $[M!ZnH-3Ek&>`f>p_XC<ǎZw[)+. ߿` Yˈ/A>J]s}AIwJm F05 BY}vuT|%* *rp]V(T>K;;ijʒ'?ݬ)0^lü]gEyߙ/8WZonB"Pojwh 3{dP:ۣϕ~v@e1i/@sP@[7πkX+ ĕXgPAVU;_AI*IsQITkP)Ce펨uɘpW~PL<-ƧS9cd{aAR7$<3LͯvWM;Dj Ȼ]O;u) [_xrZ؁s_*h;=72#7 &R#a2Xrily|nGwH_Ӏ( 53b5 n^9\Ճ Y'Ք6(}g8 aO8r2kb=*7u4T%!ǖV ]@'*{rp$3y4*_:63B+n=o\62ǨJ-/ V_>yj먫3` 9oRphkɌ{!^mԜf@o䤫`> 8)PgbEƃ6S4B*×B[ƭ:sj46xD1r:]\|CGMxKwWeTS B _^HDG ',Ii|:y8,@ѭO qR7 eT5ٿJ&\:T~GCxgVbNfwI'|zc8TTV .&;RfN>Ҏv34T"vXͷs Š]Ԗ0o\Ak& h@_iFaeyDG:peFq8/(F$ "h TAf%@kV0}_%'Ðxm.cdH+ n+՞暬5oM '>B'IVs祶57ųpP֣ `S.Dɑ{*7kſE܉%u(Ui%!%R[y>U@p_a!,bl’d20_54P.(ȗ^~v69ONFt{b~8f|Q aˣ@k \}m:i8bO(\yM`lxY4]x4\ )ȃh;Al|Tof|a=$&y  xI0DA1N6#֙icH8T%Ō-iѝ/_}b]hhxVUi;%|h?Au9ն)7w`6id5~&TMM=F0>^R٘sh, od }`̿D !B>'B][CEX4 -< Le:wU[.PŀITw-\pcu5PF2ZKN #UlFVfO3X,o[4 8HJ0yF4+(x8ηY\!p[X/r2 Ĭ&` d]6y`; g6.iK.fo5Q:LCN^`ɍLeJIA+'&lI)403w4 X&9K~|bVWvꭏ}|wodb] - +x#Y>s\J\`ODxӨP1WCXyIΫ\{H\82#Hh f pTۺV[ix&py Sˡ}{8H* _e"fn 7QAw&.b+ {,JGCjE𴻸°Xtپn,m;0b{GƉ])Gzz3|VzV 9S~p٤q OwFLq $!v! SRE&yE:2;B{[[ȦӴOz_Q.6 DQfRS2ffG vsJLjlɇ'~ƚem'M'4/сT.ET "v,Cq`ɏFs >q ]#oPF:w@V(U_nVamYb7sF+R-4Nj0݅ 'hkL]bl |/fNc4/(;ץvYqNB Լј(m:AK78#=ģlCլ]0"ӪXY -&^k:=5_T+#E*6:nw _e$ECVpFG~MZ7+TW"_v]U(!i_^'I'`墨90|*v0QnGEҒl>H{~I$# Ch_mrN$JM3X{>RcpMM1T&f{E*jX4M9_r*LsTyh)ӣ_,,M :qngNx`[3;|vwP&)VA@ I /G3y">UK?3;}Z 5;CT:%p9|[~4R=m ~݆z6Xa>fyuIyxJfNL8 G͍6bo/|[On k䓴xZk*L#iж M[v᭹# K BScbb`1rbJ=r3bQVvnC#?n$zRU1iO4}FZ79'߹{d\DYz QZlpR0SjmmeT$>i _kunzلP>MnNTA~FoHsK*Wz|eDiy&S l@cQD" :q&n3dwitq󹴹C0PC EƦh\l&+}-H$A6V|F-Ö""Ĭ9v Q^1((:VWD-K}\;R֔ܧz3, O%%)tBDЉr&>bIzs9_J9lE3p&ZUH\ײCjuUJ;Q"wyQҒ> K^ɶ7Hþ I~KM7v*pQy%p(3 G Ď Vak0vQnFWNkn1K5 8xYN\}ySv 3M@aʠj3KUqC]cSm}p6D,!. =pvOX'Z-ƅ' Qɳ¸q">x|^ËͲ-k-C:$d!Zb+pq ό٦G"@|tKw5<"sg;[Qgw&>Tr9'e}Kg@Hc29 B(?n( t&QSD-9(g|fy;$ 4[BV_ fgLlR!@h ܖ{xxN;H17l g F̟,aE/#kWf8oq&r!M{8Ah8 h#r?͑z␗͹9]cusago&ж<9YF.Wox']mz_O1]`(HW ZALaȗs(3FRQ ~֢=$4J[} M\PSНDEbu\~!.LɲuX/$fDt0O& >N άT YdGW}4_[rUb˯40I{Zw ;h$ZJi$,%ps\}1dP.#cbhΎ&WSowhj*"H\+nJ׿՜՜颾7@x?e9P9IA_VKHd=4R޸Ĥ 23YsJ||oe7臄wm5.tCw; NȐ z%|ne&eF6ْuLJ3,wFԯ/"RUj՗!i 0lOcFEO6CV 1|P(5pLƫVz8ٰ AHB)e(¦z3]$7 &1\cQK?r> C,$L3fMb>1,03bm&,ۢO35x{SW;Is~B`̔(+;@3ȦW 0Vͼ2c3]6Ѕe)+ +4Ä{+@}mDcr RN7I!r;C@[濠U: Jd:ߪÞp6!@m!㊿\Mj\:JAr6lsq/0dq YR$΋@ w.?LKKLˢj퐑x ߵ;aUdB4l7L147m$7$jWaB& TqFf=z_[xZ]A*a5âM(Yӟks*Ct,Z_ڰ,!nNjcqchHײJVš;|tOZ[Sϫv[e2W#x0 aLxңaePBP[r\X87^#y[(6S<@opBv͆X^1gkOrDz KU"v歖A7sgR9gC9<4"hh4 M !S )e'a`-, %9ӠiK ͏r(*9:_,Iepf'=ڜ!?pѩmz|kgGw 02δg2f#vR&G:gOq%|!VC(b/ tTea@ҝJ- '=bKcQ'﬙;=XonvjX d8 ߁MC؄;\ jc 0ag]d+pW3ث=ٸ l,o*M%n;JdE?a='ldCd}C]qe/@7=F&8 U`J^tA)(]1Ư?T;W-q2[0=F'6Pm{{KM0oCCHoι*adL%m.ކ9jR:`QAcKͨt|άVG 8CKreYa! ,l&[w r8njԻ'#O7!A LoaLهn|sŢ_z ˼phT0yw-80g-h> GBOe:SB@b,UMcSiȞJh$m*5'ԕ}="F:MqԠ5PN"H&qc(1ʫ\%w,n=v&zNp;GϽY;AhZ/Pz#ҍT\7JY-˜iфpؚs^AT%oTVa!HiUSCqgToO[Op?4ܚ; 8k}Ə6Ɠؚc۵VY x'9hnB:BǮwpXB#HiO@ߒͲBoQG-@҄RŘxG7\m*HX6@`v}o4=J $<ψF8ILy#D }މzWe 7J7̢*ѫ-iѽx0#jo×jN ƃ`+ɺ`}o㘫;I) ߎFA/)`vDHqBX/e4ߓ th"o1?hT|5@kf}̬EAI&aڟ#dGWq-" |kPGp0<9B#U ԕ🣷Svod`@b0ҝr>FWR ԠeþRp|E$x[m:C燺9 +Nz$їuȊCS90uz Iy@L0bIVaty.b: r$KX UA8K#I|?_ːK`0@0eJGX~dr G~ĈTVKTEx_A8TAm8[.%fzQ`-` gmі*磳ot%:7 o)RͫTdW`ګ3qC]L%L O~/&?!UW|.zޤ0tiD̝ܸDx ^/ư^!f'8V>pκ/4|!Q-zR'/׮ ckvkݭ1H\,x) 2,p u Z msrSzNyz CZB[5W_=VN—~'gޮFEE Ch8DLHJGkPɶQ̇E'$x-BR}9iԾ!Ej ʎ佦у (,TjkCW˸""/HK:1!dߔ} jυpA.Kv_USik`}C{1Ⱦ?0\g5yؼM0;وvcKIZzQl10Wq %O>*EU ,u%~̼`'A]oB5GO.# n63t|D2V5=BH2rUKI 舡Ɣ7 wf5.?%L3V].G^P;wօ]<8oba HNH8aoi (lj1d #Ÿ6N޹ebShu@ Ar Mټ{Jۺ da.nC`_#rJ{1V%x.Pf#!!0 ^ffOeaTw AK_,a~@pW3(Ӊ ]EI7Ъ$G79"‰8}!MnwDFED퐃 lD̋SЉ@vl&OPm$Jj}/$ݐ܌c0T߸&kpХ -$1 /O+CraKOs~(szP =|,* T %hzJIYļ֮Jw'e^F֬ob5bCQL$>^2E7| 0HL s1JU11u[r~VRZgwv 9Eگm1V"]X缓61F, Q'~`{ͨ󾋛+{󀔶p2]z𖿛Gz"6Ln41znR5pWqAKgz NG!9L\3tTqBd;bR#! 5^@9>(z41kh6ηm/1 #trRH6D-τb?7Ԝ†tE֓h(`ޡ4w~!=lpUy bJ8#~iШx$12*TwS"U`#>ICr[.s䞴]{5.\>I\PĹ6ߐ;#,s@S$\8QԚz{@d-"@boإҧ)ٍHKLNGcuƐvٵq1wsf">!b4/bL?1ʆv3S.Z0kp.ymjշ2z'EVdH!2` ic+J"ez~O(?8]i`柇ճJ|>v޳Ǡn5[Ō}S@iуDt`th721_n o|<̍Q`*)_RM:PhUx%yjj2Em 9!Wl)tx;&8_7P0}3)˼fJ/^L]EDOKk,geC|Ỳ..2 6xmؾP%P'bP^3auJU]챸C`0)o5??T h [hH`6cw_%*66]R0%ZCoݢ*?*~q473A#[a-pAD)D{6m"牢7q7r]fx:c2XxXOڲ^eDiyu0ڮRb @? aOq|R,^loڏ,y;n 56W[^u0qL6W3eV q ̞rĢws%g(հ;g52Xc>?h3䟍b,Gq[ё9vST iEo-^ڻw [iو+Mo*FliI\JL`4N f8r'"ªkTPF5xK?==|&XU$Ǖ{PuA۾ъngu JPzg)m2Ɗ Dk)""t2Xȴ Q-nlrqȷ;Sc^SJv7MSu^mysX%"juc&(7 Bb `:Q g uTBpF1OѶC'-z [`鞮"k^C*.S8C.}4EtReC1 F|/SLie!펍m]E¢tU^a*P D!]J軸gIc/_}Ef_Ma =K ֖*?e%/1MR5g8{Ɐ¨1Κ=x&Ry,! -bdԞzZmDH5[j,\ڏs[Ѥt=-q% BqspqӜT a忱>bE {6Ya0V!M`Cڟʿ4lOiƘ/ww_lٵ:<Ӛ%g; ћuAo^S|ahxfbjgٹSLJ~7eW *e%;)QyZpx@PTxCI(Hp`Mΰ[7WQ._Y=`ҹl߄$NqdKAQ'ִ )'K7pB:(͠Y{W $%[ ]{nBZ7r$q`Y=h8^柌46d$yUFt7PPi$BiEhc[#M34Y7zwy,8;$0{oHhc)&Y<TbꉇZU;[ -?Am8(kRs.vG̵D>7tJi̲ Τl0/C658*Z~ѦV0i0#ΒUbHz-JnCصp/sdȿk 99<8[w5]yɺ\ƿM蒟wyB(B,^ ͖-gGbr*h<*-V[ZQYjp#[~&pt7f(Z깁wxdt!BFiJO|Di}&&je7Zy=&=NMpY7R @ˤWDz=֮K4)! d/hHdeNo חP?/w`: VS=9*r鸜qg6q-FWW#?g.(DݿRJvD2{䶏jQtl9ZPҨ{Xfו <)\fs5jB,3 c3z`鱔, ;gCy՞`Ӛy`61[ 7€ [#V`4 H,L:P;sD0%q(#_޹I2o=i&٣<T4y&Ê}v~R-gN]CG<ݩE! 6S0 !̀ͨϷVqXb"8 OB$meBk='\5 ޽P/?s-}l18 03KOUunb ^y(T6lEL)]omNt,K6`;91l缣(=Q;@dWݖ6:3UG$k jKWSiXȢEzȍ{RW#';|lPUEU*AM&OVF$cUO[n'rUz:~lȩ YX|~ZWLs6A2_&[kLH/in=~䣋 ~`-zTq"LrIH ">+0=k?єMiRi5>[[֟n:폮'eE߈[!3؄@rysE =\ JU,Xz$fi8RXJ07_KT[,ōhX3;Z]JׯYI A6Y:wө f!ۡ`A;Qx-&pvHHXyw~+N*6ZZF{,nEmGѾhRzvB.ZSݩb[^-m,(B|1Ne C/SxyKgS_X~؏ۼd&$ipT/'$Y,2SX ;].t+ 2!Htdtj P ٨0lOT q7`u1}]Nw % ¤A2|bM&*Eo5]`M{^wH$ Om4pkE9b(m輫i$wx_LX&'e;d k?&e݌gDU|S\źMSqU.J4#QL,Xry~9;[ THTkY;(m)w2$|uIm𵡫9"|tD QZy@cЋBV?$h,%mwL Tw щj vp>BVc@}C^VG2G5c*г ĖLG5G֋Y0ߺ%u07~zҲS;R)6,ZOE 5w+9-@C6=SjX f,[PHUvk&[i:@ڟ)N̱C^cWr!=brxUA@u[z9dwyΰnZ3 yUwF$0-Cѓo_3U Kba/%Z>E}@v,=lZQG]px,,ڱCyln땨T'xL KK!fh]S{E>çf%Ӟl!l<ʏEb2 7]yKR"?w $EDD5Ѳ1C53@oGN2gé$3 `,i~}hYG9ROdu+֑nj[?Ue5ʰm/Jv?o7WP[[ň o PЯ l[m$^&{,L:9ɡd{{r5ec;kY'Jxڑ Qˁt3#4N$AWlsK{pΓ.j̛%Qe3R}țc΢\h#&d\b/uB (s*gݾȪ=L3u,1sHm >fa ##moڅ(ʻBwPV,|tқy6R$pE=mdk#늱$h/cS͔.z=+,<:N 97#Ӌgf:C$=ѐ2Rd6)@dEa9K݋xIIͭ$h 09Fg%5:G4gF+vwWX(wz X jW !P&cOMLǺjQ|ѣ0},zC/1>UD,cA5RY@x&Nl_UņakѺFKޝ\@2Y|΀< "6:TXEnw6/=|*x)gsޘcs^ *!:RǻtmMׅ[w.Jΰsl쾎P$ ƸhkV p{h?`&zvsPǗCA49-1!8S=%bS@>P^jL[etnü]+s#+f03+YQq:`@lGބ)OS!;I\n*-WuwJN{2ɗVMsnJE(\b<3{,Do1mX8|%N||Z]k+_0"i=-ogc7)S,nWJso.s{Z\&g8.ѯ0rDeҾupc= _.N/ 3|RG4Wob_w4vX](M݊ >bGDZjEF+t~!W "ln$-6ߏdVf|z֕([){}' "ۍz|d=` .tRˊij81+-я<8 yLNY'3LFvL=R5Q(ia)+{YNɘ9ůoUeKRUg:RgSoMS #̎2m6\ :!/G:`-a.G!.!Φ_ms"hִϞD.X6(&2 fNo!e:Mo+$ҸpziHsPktJ2 Y\|BF^hh[G2 i]Cc;:<>ͤ6b JenIL5uC,s޼v'qoұjE0+Q=[ ^M+SzuqJSAm>6kVU2I6%I6th+єODN A8ɖo†jgz#RͶ"U|i{i^|j7i@}KXf 9AV,.&b(#]rq 7̈ZJ'gjCMyRH@Ӝ.D]ڴ>)gª4$.8 Gbhpa ?0r < $EymL R+* ~ͿmV{[85|vq\d9-)WG9=pH{`!SI" CEȻXQxj8swEgo;"[}Kܻˊk$~J;Z@]ذ`_&n? yW.)S1rkòK1H?c@D,&-ؘ6}BCNP(smI?G wL%}ܤu #"|7`Pbb/]k_FFP5l^<_cONR߅׹z)Vۜsz3q4i~s70]Gp(la.^H|Iq٨ ($2^sBBcΨ&zQZ䞔_1DM񣑋fg+٪-j{/mIj寓Z zK!y5sɢ$SE4CxiS=8PuAކz 콛XTK!o0:УFzB=Tz 0 g@g&јN{F+X_3pr8bRfčH=H/v'\Zv"xVoVZow/4! V*>4ثF knk?u\y I1Ax>CF3!`!Br-p|(5X,KV3p%7<D k88~.o6s$w8"9}}O0BӃ i@&bkyX rOTno (g9/w4hqKR$ޟ%p$0ۣ\+GK>[V(/h fg@{ &cRj%zA}a)FY8*|⏖)r&==hzA⚼(8w$M=Cm*Ә0f)ZO}8g0~)4%wB;x.eSQlE#4jB]x)(h(Iꃖ?di#]G eCb8UlcRh"Y5z ,vo8N͹ A{ϰiWDddzB:u(o!g(xOLys$*m$;M (/@y<ҼiJ)ƒ=7Gb= 9&BGW>&>֊~s :p~JON/Vđ~dfIA|͹SlAU8Vzny]P:d>3T4X&B-KyvɌ.{m po(pY`~ ;v"0(Zĩ"UUvNM8&[`tUn_6,JL <. [IRkQ[GWk. ӽg61^!_t >)r>$c6"צɚ-Ro<`+88Y_(M[dH61ocLRn+)G jR{Ӥ&za/EiVԌæk1t `4DP{q9\axcF3do"Q|;0Yyu`-X =wƦ$D]@-ɾ,5I3|HJ`_ NpYO^FJh;t)ef!8g>r6bf-F{V-E M_R*oe2^#(o/_NYR^ML:r``90GƮ?0]~IShg\,a ]W"?I(ўDajrK Fq'+`1i1;qLK+}4l3Ogi23;o)siС`GM^{҈<{6o!o, n)|]Fw*=($B~ W/VW{ĿhYBk^~^[]wNb>fNAYi%RiEDb)v5KucSFR?rIlG>~|L)6KF$AwiD6NC +kz"9p3ok_@lYT }RGCpjI^*Yj-eC,{n'ė+~1@ $g Ӽt2@͆ɑD#W%뭃3C!Ϡ Vvc,@%:ֽ "B@r WF m*ΈZ1NHvpfe:chE'jA߆rፊŦzzKh2 5ѧx+(yY?s'Kn$SC|?a*EBFv&att %9Ԡg-NfoZ=vUmdkv˨7?/F?-_ qA=M*f7&ONfz)[ q1ޜB74\ B鞓/&Ƽ_$PQyHNco]2Vve/!xV/Vt Q9P3 N;zLJ4k߱P9Ql+ vJ<}FXQ詇gdmKׄ&,KRT\RRbmؽχ g5k ;s<5lh ,^`Pm;faMJt/z9q65B$8/e_A4{[ YW9`hO8w\G,8jZc&c$)αϤUKw'q] >qwJC vom=ˢko\P /wF;(VҚ۸ARu62Σh_/VyˏBlm's@= u?;!y6-q欮xL~ʎXR1woI}z7u3b/@9?G&2v٩L'mDK0(rl%p LAĞyF,Kɠ%)_=RN ]7дG?۪oϒgۍfx꾏&Xk|_Bv҃>Js\YRm#m}N67Qng|Ƴr^zďXӆ*̕5V% cYGC2od5 fq) dhWwV6gcG<n|m"M}4e|l9 ƮkHqW6hw>z"ވ%[֚YmL\>`TP`/Q6F8)V4Zlק^,˘BI9Q J4g=qіړk|rbAc2`Heͷz^ m&2igǾtzdVbcd|$N~u0"!n[Vm d|<%Aڸ{B+J[ )tQOx)*qZ_z9%fۿ0v>3Gw6qr x]S}*!ԓW'z.8M\yӤww]%|:cNȽX9}9Cv =u*zecL#Qc}Co~͡2@XyІsʏ}WRKT`4R}voom*mꞐXd^|xnL u( @͈{,0I,E\ځ%R?(H{#?y:sYxUt4b+ w66_8 Y ^.lPD0v$oKڔ@H5>1FZܛ,n`Ĭ=Q,_G\:=K} A6& #J0Vc45ہN{5u| ($ah1s*o  ;`cW5Buhؗ$DI/Ց36b#X-fG!E햛meT󅟴2md>-"›ŸY0fMebìkiq6(5$aO}?#0OyX`/Fe%ڪoBWt2]1w6\oٝDաJD,!t%7tRj('ee^VUh+`;Yp٩߷|@}i`Nyq}UJ i^UK5w΍.~mV U?BYpQNRhWF+P+tPTxmiĶ`\:mydC0FHD'ZDa&gvΙQ=ppqp Kw7!`M'oxOA6)T@Zǒ#ZtlrX}u.^r1Y{}E5$ 4u23?zβzPȭr Y.LD98&I`Q ;1WX$̋vi_AɖB`C#sj_RA#2^fJHD ː'-| ve^h:~ 4" px՘g\Mng $TQ cw @^,WR&ٍFȄa#*y/#9cRغB`Z^:IF!S35 I~hڍCK5JfJoN oJtˁk̬F8{g=( 0Ƹqd kQ %Y. ̘~̣b@ w&PaM&.aǶicl<*YLQ*w"n4n0s+jREiy#'Fu?_dg8O LӐ&Q׭MKmt nuʦ)00ěH-׭z֗ՒBuZž-%155R3aдp$ K7mQ>]9 Nt(.̧cZƍ]{X?U)E  7ozKii*!{ו[)@ αv/% idF2z-fU ]bԌ6W@{Ͷ-KWOᲬTrgyʭwj!O Ño59~p!;D&!WԦ_2P9 HLx"Yd3\dor=NH b} _ܾ\2B-tZ"bDɒ>y}wn۔Pg77[gu˵#<;JҔ10vzn)&BOյ֌K&no.s%TZ汵* ?߹Iq[`ifkG%d`q=0rbьލP 7󍩻[aUF+"_8CuŒˆ|H" z:/||;Pÿɀ;Kb_?䃕PNJmyLJ>Ux'[ &Ġh]4ucL-g=>H  ^ !{ '}ìE̛2c{xs0Lqir?:攧J b/- b҃."vkwSE~;x/H6&@C"CCp߷S!jwQm.䮐&gfxe&Ϳڨp=I |@$V-Ҵ7Sp4,bZ˿E FP7 ]܇SOZCuhWv*kXRQLG|CI77H VAA P,-5R-t o~^k{F:|p ǟ0{, ='&zoT}N'T?`<*'>34GcKڏMcHF6"_qݴ]liW! )&f~*Ha;4M$c.q&~Bg^HovLyid3i? r:Mg$ m&i2ml"8UV,e=+?8x|I/Z0P# w/RBpp{"E+X  TW;P05^&֧fT |kEBڊkӯIj/Ң+GIqQ9ןg$[Z؜SP^ȐE`-k84ݕ܋&01l-w72=;*VR4X{[ffr 'A)MZ񢾱0gfb'̨;]NG ODKqEǴ-; >7AyGDT!X=u4챹y(?cJV9m{pKzB]A"Пh-AK]5!`~]iK%r7o+Pb+Dk GϠQjnGj@u_N o|ajq_u*:T@AT uؓ ݨ-+F?슸 q{<$[YV;uy.ۗ'J=I["_8BQs#qҀ H)c}PuEAT62he}`T_vU=3b|Ү{h6tc5L6!fL5 $@Л3nV5&[[gA<$4oC 4h2_%X,=QǞI}k嬡p;sjIF?#lc3Z⨱]fFRh݊3uF/dy} {4nT 9kHF, 3܂T pʕ>ݜabrWN"W4OcԜk0 aS_ˋP]o)kP6yvbwoi?h!_2w~X3 `ߪn`ebZ\)B4XpejlլίFY۸= ř(v[ۼ]뛴T =s|_p$1c~ZHwg>z=S.<8Q^$ۗ^QR XӶK,~1Pk))jA6nj_SFƫiBjKlsqJrkw[Tx`!>w\R2ϕn4/VetL&~z=r/ *v*ΊMݢdQXc*3@8̀\ՁA QXM{w\}W9x0?QQƹ1"u*6( 5w$ GlZ@u8c%r<^Ӹ9)dBoT3Z% CXjD]hzG6C@(Qs։ف3HSH9hq*؃ph ҈ Ry;pjPP yT|* dƤu@feN(?2 njJZwU6 Zc$St;X ZLހW 6*~s0Q\׀a{zeo@2'$zj(@;g!#̄,%%}ƹ`N?lī,q;dwAE 'tr[6k!MrW2s5ًh'%c?wUY}V 'ΆR9Y}W\H+gO} @՜fI͌ㅧgգGP֩6 җ.}׼E(%>:{QF]R//Z6pk}Y-@-w%Pf"-;b$qZ#5ս:s?7Dā#{֎D^ֵdp#>m pl0'D?8A::)_S0RpaQl&L6C7z-ل!:_H.Bp?l@/bmL0P۵m6MZY>O;-/jt]3܅W^!X2+KՋa(ar_+7, " IeHrmuAY;\'taQ#V{e?gėl0HnoYm U/"WfC$Q7ۑW9p9+12Nvž'Elzm0''G1ɑ+hoG2dָxl<ũ;WɊ9W4̬̓0zڝf*F 3%ǍcOAt&xoLI!~䶊Txz#0FT'$k҉&!_iX>k V(W#;`\R3\HȠFb❘5wALJ^ЍyHy41/d0ꘑVpx$IDrol]jS{^ck WE󃣙/0qF1Kq{*^~c@ߧtZ%ӕ 񣍧YMR5ӽU_;`xK! E<9XР}sWyp8HN T+?o5 u!jA<QNIA EQ$2&$h@`a-.ܮ߽w dZvF:> Ӷ+ yMXp{&yንUv ۬ PčRs28`]>$݂LܨO ;]:ZKѓ1<֩Rx -ӕ3*%>I5nzWd-ܢ:wQrJp&*r/穱WMs&qH@# 50Q]xb*зÐmH-U {4(i!) nUlAw) Y+QAP-&0Y%OE@/%`@#>;)K,ɟNؓdsUȽ*Jne\rWq(Br0_eu^Ǜ͗w Fd% "o %ϓ\ej|Xs|&w_>Fe/,&"iFMͶm琓E$ΒWP?l|ot'V&U\ (c7]^:2p![Ȉ ! K"Њ!ArI`HTy/ '?u}Ppҳըl(>!JV]ky6rbv͖:8X ׎ZC[NAХKxIKL SK/EJ]TMCTd@ ]E#[^סy `euʧ(:pO]-ZE2)>5×|sd7=x[+I4us5(hj 1!xHw"T9goog2jGAn$ٖQb_(59ZtSb636;]Џl6:qt ]'3 ,zEeGY)%P#&U]?&9C'| -3;h*HixG0!-Sp;^-?2?y Xkӓ<)rwgo#|^ b&Q%f5.10=*~>YR9Y5bDgm?hNbB欍4um1fLBѾ}V?^)Wh5 7=( IM]}݆w} |;GO,<11%W*s5mWeJLqi#d:/9Q+ k]e;:Ia:]zw<=?l; VtXy4G)(\Vr1Wӛ( .+J7gA΋W=ޠ\Kƶы`6*QB(8}'݈Wmjdj8KA/tW5e0tXLTYnW8vVQJY-F&`'e4QWf]l^;CȆV d2nhwJ$phGYgM4vf`ccO\6eT$!TG3_ptDFr+6n,;,&,^䡳!O Ai-֛( <&ߡ&O^)E8V߅H/xJsrOtO\(eTA[n+d*.@Vk#^|*6|( -zKt"in{(RpEA+T6 9%>?l)#XxlT2iVE-,v?ްMtϣi<žV`yǤ`?a[\u鄽 Ü*ڶ@̈́PלZCх{ ̈m*q5.'ELC@ B~Y]TeR8ǚTKqsTu442?APAE|*_P'vCkH.wDV`)$rЁa"{h""yz nR_55s84Nv|'J*Z(pVQ`1C mw8S^7'l>KHX&׶V̱1kv#U犮Pwǜ|+.oa>'~zO8]ԥ ;jtú7vn@ÑgL49ۇB<RB]F#UԒj ~S) m7FP-art!C~:'霭< 9\M6ua Y/F;ܫQI,NQmfM*h D-/vjnV-"F< iЊ~Jֶ2e6C> Dx'~5 Ĺi|*rxQ{/aqU= NvJHDOa!Y>V]&9C毂dFz=BIR 22sb<5_S\/,ъtQk2?{U/>C.q8oKZ{^ ~-57 x ˼o_CT̯|ϰ"oKLUq뺙& Wٳafw/ZNg46 ?OrOWW8t_õ,ܿUU2댙;"mHM8U%67U\8-7392r}W Χ%@+S#lCt6to\*Hhn]\`~HΑSK$ϯo4rud.A_ K_NC.HJGN`q͎ Xd쬟[DGK\=1n̂'DSœ~'` u$O#.§,D ܄jp+%js!H-x( a"LسZJvntHr |J!Ϳ2ǢI \׬34&IrO g(Z{ᲴlU̽:B_wPN{S4-?Qh3%R\`+M[q6>h~ bI=2}-M[ &ɽ ^~pJzKm._2 o!zu!5 4U|ŔXKk'g R5tL-Uc5K@O8"+ĩl*\$fDf2GSU6hXF-` bH89S{/P*[8W*pb;Όϼg3];sM@vWԥ6d:pSUfa Ӷõ<5[ !zR+1=L,?`A`Kc5q $^ W"pNȚ֫ gE*pEZ8>J-r&Ջk Ķclͯ86e!lIr ,+à +65akhO !­o u5w2ZT zq \XtP/j̟t=C,q[7S'p,wyQOZsNi"2碧 O:DλI=6/>Q1Mp*x^!QCHAw'+gT ҳwج!.Ɨ."IJ>DA7 cE U͂o0`3=DkѠ&`*q-lsկ>jʝJ- $gUilB?\w)Ӱ9%#$_e{f $F^ڹxji*x`A7=Q5ͺwi 3j`RuLa) ?5|0e^!]~UjIi~Uq`/͆f(&wd^@ǿ`gB906gٚ$!+6F`CJPQ/L ƈW,m½_"u.w9$^8m+]RW\9^_Bsu]-&_mO n9$ S>`ݼɐG?Q `@v32C:4=aTE#,{QUoWDZDgAa1WScdBCM0'?^KHPvi^B^mtVZ0brYaY@; 7EcTM*žnR6Zu9(&c+i]# -Nľ3# GeTJ~~{)1h2Đ?PFO$hS@u 4[o=ג;Ь]E/ZHl.V%ɡ|+l/`ΫHqsD.|@QM޶Iq51UOeWڐ^:';DJ=9}ٍ]S iP_e6EuU0پ j>H ߙE`I):9+2]0n%W$j ")f+"xD 5TĔm!E\O \Y^yh"p'pD\y3Hu7V9Bm]V sݘ3R9m2{3U(sϋJw+X1o JBI:w˷R6'[[VNtW` nVI!)GJfޗt42sB$ U0_IC° cM [-.SL7{:{gdfJ|ETٛOy&r>[L+|| RGi06<̅To{g,r^ WSt4MR7ȽAX-2NݞplTtDVQ{6Һ~ o$e Rȩ& 7a݌z47bH+Wxzi~!MTR%P*qTZTuH}C=E38 OmvdW_&E.k^$R|U=̎k \3}@|\+֪2hB{%6f#ؼ.R0VC<{(CQM1 ;>0RgW7>04#n.U.z83ev6a *MYL#!D\M7$eݗpX ٱQZ:N.BJv ID4~J2$U>t.oc+aM=С\ g np]mկpkn*c C&Q!N&*fTp de)@)b9DbR" C/}(oy)K[u*/'qU~%H׏vjGURGo aN 箢%veHʏU {l` w5EK &A f؏'@P=NHw[-GFJi2L"}Bdoi&E)HpϮt_1wawv]- 5S<ބ8ZHoREly %" &䫪ɏoQO0eOF;z@T{([z%^z-?NZ9D 4u 8U3I,傾^)jxi2lD&C.דm@()RCLJE`pbٜ.KUIQ h#')ൊGbg! 7Xm)jүKcgrzŲ>ausnE$B֥wg Q0O2F>A)0Ym<3!NTN)qHWj%ndi:!1v;UJl`j{BQ9"XdCeYǽՖanWgH(YE hE[Ơ +_Z6hmyR[ۜZA՞|1*y0>T٘w֌ E``x_W~A_t|;vT5yrF]p sLD5\ xnq&*J)Yd O!]d Bif:#/ހ5Fy| HY»KSp䣪p=BpP[Klsaq֯ϻڌ%9nյy&9?'Pk֌i@¯eyȎ05#z9ڥl 6ߤ^^P5 tOݰ4MӛnP%e 9pNٓW94]6oGp~ }dG*3)>j5 BIͣW5URp|BaE(t ƮFtn# jZJiMz-2V?Εy. er1;B(PJ͠ IE3Pq17˴y[u{k6UϜ-]˳jR3ކ HI8iEOCuVVv8벍pG߿sh$SCrkutCz63j8fZj1I ԳXg$͢Mnsx(15wbW] 0!.z^. 8 |2=>_ǩ" L߸~˞aU3?;Ǝ-,Đ$Z^omɊ΀1ǚvsԗdPUˤFas8`'ŏnzQ#]=v$\6:T/ ChG[˰FKVmVhf⯁e "zg5n8aM't^,, Or:|:YR]04~\\yYŒ@(/rc0A6-O<ZtH8i%TuwRv?2L~-E 52ZџK's=slVճ,{ĭA1lΝ>og>OM%3Us?(+;#{I!n[C~`{RWvQ|3#@5طߤEg3jdz3䘠0.|򨮮p pwC"(ly(Ec w$vpJ9KC#̰VeaQ+ډ%xF N~W~J(qxÀ_(om?Z"25>Is2Gפ!0tI0&Ik&_ ĝ{ch>ZZ.~Tr"RW;5Gtef+k%, qۮߞLT@k *R[b7too}?OS$Lbmg5y/~ ßù&}W^&wS"H}WET\Pvm"W;-&ޙ2(If1Y<̃ONwUQv;O4@!!Q]= <{s8f"9>FG}my&G*i}Ww^v@plq8t˱9 zXnfy尿/\ݡz`9_lz"Le1ᢔVN^},Ztkç_ў@0[p8K?vzѽ)]F:q*oۓ?lft<3lOgt&[Ţ4LYMRדR4OI w }(a2>QG9Xz _HEp?3^NQ$*cjZ.R>̊PȒz&P>-59[Ip;{o#% Pz\b#f}MO*6c:͋xq\2k8}"mj#|6ytҔJ9 'p!:kUaljR*趫r5-bOr^uU4ޛ`<*vpBfT<~TM~)%{GA7D&U?Th@C18YļmϹ,f[- Htdt؄ ʴ,'Bf)Nx#c `9odeF"u5Kr K[Nd0K<'QccyeT"A,(XN U (|HC↭60.~8P7Y0`X4}O%<0ai+a>LoXVXKW3S:B (E^6}Y[c4鈔Mf%3 kt5  59CVa/wj8Wz/O{ khnwRk,Xc߅)o޾yr}0udzz[ES9~e%9h>4lN2o^&9=չ5\vߌ, LWunPaHJZ!Vprqz{3%&lm;$AovƲ) =:Qe x8UmUK^ e@ E}.nmֺ(o uP.?@?Ho%Fu49ot/v{>,SS +\WbTRf >UD<㟽~Yߝ+p~B,Mx3|[/gG"ѡ+RW*Cp"$^f}0(e%N92լblpO7 k8ohd !%O4-c@A2CO}nP``Pռgg wTg *=Kԛ󞐉Fa*^Ә`Zr륰_ ҊM$9))5+M|*M-u1=8ףTf,-x{|d|ٵ[=wxVrX5+qezP PMeT"I*y]JCE1~ q44/=\ |/a% &/R:ѫLIwN!7rP.;;p|9B L4x_ν0nGy0ʢ&ߏvF$TϔPr9̖1-Tkjfms瑎.ʋ1 ƿb7^RZ(NNcTD#?{*xcX9{Z*ਞt^}iM@ќk+Ó1d'Ҝx?#w!ڊ,XI[:˹'l`OY _WuHz$KœPt[hV$%kDV-fS0Wҫ8eg~-$ en zLHx&dȫm]u(vnں6E!gPV-8M;/9@\\9kTArh#A /c펌}˳D3;Є|} KT@Teyqm&g=Z[y5` O;R${l:H#t8h[GoFtZ s]h&H?^vPRM6&ε{oT U<in387";%jހ?b&xg:I%)?'. 070axZHjxĢ~z`{~X }B@?0HA=#u2909~Gr+Ja ym\"\K*ALRY9-k5,[yڶ(C٨I5>껖[WĠ`ɈVK1\ )/<2-\@K_fFm|J J;##r*pC@~Ȑ;mƄǜ› 56e&>l`u7ֿL N{FR+1x2& =(V:MM/Do^&FaF73{ {p |e̚b*=Zv= /%4/q9R#E{3؜63:<֚µm8KT0R0Օ85uTCLDBb: Exv@jcvTη ۡ24AZ[..k/PgWqQɭx/9h>c#p6;֒dW2ҲFs~`jqC!3I:ߙX`R T+@(=[;"a9(Ko} H(S،0%?Kg69 0AUqP~})gA%: !HN;]lHf|L%)e Og٣aEBD)y^j?$_'BZҲly -_ΟHW[ई"n'"<}Gl^zD@ܥAAZ%|!4..0>:jgc+g%au؆u=cXCygp9'i,3>mh+A+j)eGC" tRJ؊n9~z2pSfTE$ :MٹI <+gb p:P1Ġu2Vetiٴ}rw{R3C瞌'Y"ĜZ_ XLi/j8Æ҅D\2LAygݾqyl֎`oIUЇ1S7!vV)}8x$[~Yq88UAٮ,/%ɬ*ghUN&?6!WD8`]XHey/d=xa#SGy7zreH1 x˨_#M 6>75ۚ(qV3a[՚"Om;~C:1EH-̺u7DkJ) |͇2=؎p 6Zw&L7css^i'kL (-&sO>5FğĨ"ݱw}.'۪J/lH|Z0mKf>ػqӳb'cn?n#摼fp{pPWv%d .#?3K2?;硏}y2-xZW˳IG(Tܢg'XE3c)Ȩ¼߹}Bpjj>_ X8Ixl$6j:P$52mM$m( 9n[CD 8Wz[N8`H d[Eܵ0 YN7ΙswBsвUBOBڋu|éN*C\+D{_qc'SbʄUj0% ig)<19*I[L=7yp׃đ?v+~MD1V]:2CX "WN(Go/ZBV*WzǚrP,I,Hᢷ5]G~"c{mZmc4,絈A<^|:xI`4.0CjII񡇆Tdங&p\$p~[8FSHeħ #^{2]dH?,=$aRDwj@{BRHl]{)aŰ kv+D|1dMS lk4y)ceU䤻!i(%`թ(=GKL} ==˖VTa=ܰ70`e[{ 'f*ZXiNgm*\LZѮ6TȭMQ_J@6 ?-7Qy`/I&2:Ѧ̓ٲ%Qo?gc:r88uPnzBr|ԗqdFoMjL>0<gMT[y!cCGtm,tofapf،Spû5ũ!T\Pn, ?-^ggeމ0чh4Υ!;gRʢNUtƏ&sX|HnzDվ9̔$g {VmVAeMB<~<'캝"g:φ t@<Rx/[~X t%&#`w#8KtzimE (H1, C\ b}|Tˊ'^7r_ E\#&TAw%$ȝe46?6J 3#ԟm m?㖀? `kx܉-QN`RĘ'Y+z6,\E_!o2V)G"82(+KyQ䣘-* \ĘHE\ڄ6j:!P}ț vF6r)Fg%Q pcŮ߇؝*nX6s]1K-BꌗX} `"pQ!8 ǎhˆV*OBgy.qɣ`rI4 8Er:耠˺J/!|d=}1?E;2N IV숕חH"ҪɅa1MThxȐR}16c|S}+iYc%I-Իƶd:rNhא'z,KQTjZG[TrHeyA5!`,keSwvf ].GW]Z4D@oBS围Bza tEh~.fX 5z~msqH]z[i"lo">:[OUej`rE&xuR4vsoj0ŖlEJd1 ]|XMGa@UK.x2"LNtCx4$glLzk:(\T+0!6Clf rz0%y~dnhO/SZe޽^uUOLnbo7ڌX7OA/a\Ab7CoZ[٣etWkݠyH` *_77}cґDĤ[YE>kdFgu^劒|Ƙ/.wdk=#/OLc`hrH&,xv$);|3l/6-4LNY.(2Ztd @l~ҟJSYʄ QJE; zz~rriע&PLգ~'I\_:ue)єfHIUgaef51(9kG:$^(`4,VqfW(ި8d_v 6bK.|y )Gj,qACf.0`t$ u0Oto]Izw$o|촧)&4)e\8}Rt@.` 9Ι7@s)W5 e{M4>07Jaw %RF¼;ܝԸwY۩ɱy'4/N N&5YLd RY>LL,>@w?_czmѯ~ySSm_ Y;O_: 0Pp%_wncOQN&DqC_ΛDz"25_4xϛʓiDl#$Sw>"LyY]V(vdku:#YdSVyk,ne,D}WK0lsk ˙*cki`V<7=ů˦+s۱鈗 ]rKk <άv{5Z(rE[5Ih$Do3fp $TX~/GyAXecXY~ E8nLX` [T[䲛 Z/nz `1]ȓ_sC/7jo㵣ZǠ-k{`͖y>jK[wΑ 6[aJ^%e}u(.oq䖏;J:<$Ԙ}dª<ڭl^ 1 /smsTa einԗhMzLAW'eWrޢN̬~qPb25% p^",mPYh?KGZ^5H/C~d]]?%(G]u‡3}G1qFz73doGQN5MV;S>U=w& %L&IK=]sTTĜ5#܋6ϩP*]ƣpӁBe=(f{İQqo4≽*]#$R`+a pEź"y`؋^1Kv}zDШnKb $?M:5Ô33jD:rRqD5CZk:oF@T 6 BX% ׼9(S5"Y 17Wq'JqnM-Md٬YqIQx}ѿۛ]FT$4F3/Ű7i~ @_iMk?"H&JZk{4NjgCuIޏByW.#K|@G $iŝV*t٭e] ?<3i*wJkCG/r(1qwSnTӍ5 ﳷoa3,#Uzu NMƶ ㈐٦CRQBFa/md$v끹u{-**)Z ̒V L|Ž#D p0Ehth 5D>!ƺMm=AG+)4C#r51HXR "{ _{U_'QEO+W5^R@=CybiP,dUW ?$yK&I@b9cKDS&z`X썻xZ79uGWJi2- kN.G@/us-N2PZ mHvέY/*ǯ@o5'_H4;I? NVchHlDWV܎n'2oIgFw#,o][BUp??io޺GOt@{ˤ%r F%?B濝A@'{Qʋ qSHTv{犞{qB'HmAd1h.9d(|J7W坩dAQvi,طX;4i DdB7Y .#ԕx*'Ms$lR: kmAR /KޑPyZgTpݍA^IKkBʝ0P,٣]sd%_>"ɼ5b}6ŊDdW^h HLH^•B':g˫zG3'K)~6SȊqycFh)5UD>r$' Iֱtt^U@7S7sΝ2Le oqT)kC>+d{랴giw Zf-gNo"ɏ{& 0)2??]kQpvs!] }>#Mh4|^sut%h`m!Xr/|U+ֳ8W8Y9]:AG s%hPv%0وQ,L7.my)_ۉ#lםH{?nD.(6$VߛhϐG# مWLM+Rq-@1%5Iq{?FPv?yN|=@ϪD5PnfkAQcuٲWv"=ѐ8ZJM-6`sPpܖ_}Q壎hæ:.KUjg!7#|SJ eVs_]"j92/10ԐQT%6,4B*PAd\3^ܶ#*V+\:>vl`c{e7ð};2n㛵 DAnl$2c#0StvVl MBk vo=b]зAHwE'W%q[I'ɔ#Wp0=7 W>uB08D1*-ʸUpIø$nV5A4`T Vj!=,YQ?L9{{NɲrO(`5g(Lylp* Ɩ)tf"˟`S*T꼢gGD8jor};(9µu_7C~!0q]K3 hX`m/񮪠I.];磟l)׆z:%EEg"څDPMM1%&3+>|UZ1BeurK+ـ)Щ+syTw*݆IJP;C)8O5j~AR)'#2mmdCCk0R!g)9(4@ wkkF'?2_uzV~\^I l& r:@77%7R\=s *.0}<'RJ׬yw?$\+(+8Kg@0_hX "CFC`%^JӬ{ȝL>iUoI/Ň+]q:hY2x,r dH}[S$=_>j()L%pVr*$5ru)[Jތ{$j:As^MKAGo˜[f+P\Sb]ZEz "݂l'USPpў,VA U+ݻT0ؔ4jM7y/%`O{@C@>bD ^e 6x'.݉#C9Ğ4 e) )VqJ*9D6ӀoannK{m 5{y(*!v-qN %M&;-ש8E|9P8 r=~#O2Аxw_n?g/7~Ol- ?o ~Ef#l޾B/wNU 'vF4^D)@"cVRn]ӆU:Q~|>$DyF7dq=\($` _V=h# ݩ<$?.SRgO^f4dWr& p'C15DyfC]1|f!^ OD"aOwn"LncO&ޗuT H 2Yj'5[-pF{`W(ufՎͣ_ŒhZe9v M@ڲgm1*q)D%1Sŝ|/yrC3j#DlfDEDff5=?aLNc*{[wf6T*Ͳ 'aЏt hzY&bRx3lIg8~}* xZLFA- ] C6EbBF0ؘF7]ZAIb *&eB@t.?RNUA2bcܜm[+7qZ5Xlæ \'zRȹHq´@= gdP ԞnR1lX=2[e9>MQ5`ZF<@h s^l}yO@vί !:ʡ;׼=ύ|Pmׁ (ێr'4+|fɑ ~-w*;ocˣ^>d( h=wП7 1n#1dTcLU@qc)Ow?8JxNjt\YM"N q.Ǿ~zk4TȁM6k(sS~i][ xS&5 NB:Mp׳Ƽ'G+6wC1-Լ]ĢC3F}zX|΢ }♚1:xxןo"'-'TCQML2?rLڑ=ăN>eW[o\9F'uҕʹ_ۡ0u'L}K@^KF|stSV0 d4W!.!0B#A KE?O)Tcaa<9+ȶ+"׆+b.PYߩq^@RmouQJ +D`V\ xFݏt^"tE,yUHܧ;8t EJ.8In \: ,,X(&ȇ`P"9D~uѬ;^B8fAiؑOpOWk:-fD}̧W:)p_QӢY}&ܕ/<MnurjUuq_G.)d Ḫ%,UBP}nr4Xc}zrGy#ټi~v-s|qg+AXɨ(V4(rm_u^ u}W gd?6UQݞw8xvF &韈8ۀ >r1U17/dٴŠ[]j<чh`S0sE9naC0C#5ړJJ.?K1>7}5>6aee${C1iP;yX|.os1DTTű{1zևku:2>T>'CCU+鼊^uTlgJ(Mꅪ_, C~_<>UW2Txp-6@ fѶC~%,rDǎf?&o*+ hAf|j:M~[E:OrՉ[) .g-O̮p0S|_};|Hͱ6J 1z noDO*M,ǡ:ʋJp1;qI]B]@/l=0jDHWetOJ9KS?H$WοrF5rŸÌA-y,wF3g;'X-5y&R_1&lmxڋg3}c/0=D%N_XN^Rs)ԓu\Q(iͧr>&9"ټLBqVņ3U={-?bNlYD.kDwjw!ƨ@+r5eD.>Ir/XE~qD¼'<r=D p#l5$V*,O|h]UӞFnbmXLwv8'p*Í :>>} +p*ă+ nS0Ɖx I CsK.j}̇ *L$&+s4<(/f?xCIW*<&0.7)<)2"Om橰 ƼB c6N.v7bØLGZjϓe$8>ڗ:׸q67wlľ X/8ŮAA!=e6{czǥ eg "-56!"~A\P.eg!z;} H$o@rAx@ZQeT,$+?ȮJw,]VdAx҉:+*BGN{~mLN-@E[k~k}g4qO/? WYUP^(a\Gu[f*M-U ^gz(a}x lϧη-ZuUcN~act:&0m] C)״ڑ>9-*)UDPbo* f`>'h/R|z3а0+B89ۗ@XG y,iN~'}5khr;V7'#&-{V^;$7Qm~D\17yvv]á$=&Ub;zȴyL9=̿a>YSBO,i͹wR_#S{MH8I[{=|z#X3$ߊRj?=W>`)2U%i{-l˔U2δ0ўx);Ng~(ѡUp "KQ]̟<g[άF>voJcVZ+P0fƦ"X?x5K-\ģω(0 `2-qխd"FIғΌEj gs L6(M)(j/0X[<#f"sBE|h|bԑPY# nյtKB;Pҫx3ن:|Jo׎3ЀE=N,ְo˸ƟMvd7) ⶏ/Ef~a:~pEB}8G]xH9[C{8MLX*]%&O#A^4Y^n>'ҢTs62vCP4'B$Lʾk}> }ɺJҏf|r!lIz8Ej}FúUnl/ݝpGLM:e \hhzn,.~ςXv-Ď$c`0ULWmZ '{TvEʦB'B"qw鼋N[H7nPy%b19zGki ڐXVc36xyq@w;Ώ`i \ mC3zdH$c.yzqJe!3kIwAmXj* h ot˚pR83$s5Rek5}deMMP#Ö"EM?1<s Z> l?ЍhxӪ2'kiIĿXD`k:fH2! 2.땷GiIe(EcU%;=ۅݲ_y)X׬.7.Ёl&qJ^F"PFU2jHVg$LkI]r#e@8?lRB N0zl7#"l8yDM RqJkuD"(L 2u^TH'Ls nmdo.r{k(0z~]պW~]}CNPhK;Aer\Jr:o`%zC/T<ܮJ}q(߅[` ɚB<흶%F@ )k;/h)p*CSE3 md{)fPADFo!=O2rTSj y/W+ԩ_v(j.ԇAA#ܱU'cP}ZB81IV&shc'ɹ燃 Eqd<(j92~D7LA8Y;4 RLVP.u\hƪ[gTǽ9ӕڞlbZQQLe-Llw"Viy^Uo{Tmg0m1+K*d ̜<>T_8_ru|ȎluqT C7rf-g"zPQ45a!قa4I+{ EAE~#^/.f"u_u!уFW m`?śB03W-9OFR utJD|xċR>]9Ս0ʦ̫QAO6crQ5f&&7*N1V̼zX=Qv%> d Ӵqew li4UDRҞLK</(| w ̿ IFdnߜM;F+ 5zM뇗` kx#@7HU3A M<tA{'GŠF6P{EZ ×u3MabRg8b[{P>&HhsfˡfHլu66?8d~Bk[YKuk d͚#+wXdXRQ1{X}TSCeXq|MRz֢ 7R0>'5g`iDqpEߥO͘Bqif" MJXt ;y{b^Cg.>?P\z kqo04֖͒d9Kd^8c@y!vs2'HG#ϬnK`x3ۂA.kFG;f̿vq;[bɫh 3sʢJr--u;ΟSX9(.щKBoas0&ÿwh>De Й:ɵ*9ɜ97ɿ =8JiM qOB"y(_Ru{y?ir{ vNlM6_~̽uB70+?P] u9L)v* svmb1 SS3Ucxx/ [T^?|5$?bd\G`:4aV>ۊj gVJܰ˄u@.O\NEq$; oy "X7 \_άB?>V`*9Ȋmn. NCD#:u4 [g?P _nt8h VkeQ֞?2]R:"F1ffH(jDm^ 8Ƴh: |3ܭ@8[SU"1IFQ~@6ՅQ$v[=>; }7)q(WCppEXz~AH\t5m8>!:a< ƾ@]M"ᚺl[)3=IF_ HzH(lQ?A;HF.oL>`>_` /?D V]WZp>|b*lYA õo_28E6!˅0t5to5BE]%RIVYR?hcC6-{*dBtHWFp g#[/|2fNi^LjԴޞw7!3Vw#1quv<LJY5]f@oɼ0TMH$o3)2$h57P'+gXaI/Jӭ)h?|N=AyCQ$L/ 'ۭE_L-A%d3Yaȳ&%s>tb=s @().DIԊ,}Ƭ2:H`n:1Ltӧqu6z_ſ*Qo4{ĈikFAA JFdӺhZ_jP].om/Q}qM:{PK.M^7;9j^|MAhv݆A#YIc Є:e .V! lIk|k>قy"r7"20K~ʈ'vA6.tM(CUwu"g*ҥfs?JZ k\ Rl>Z'~6~ ٲhB: 2Mq_jzA&ʥJ%4Ԓ\֙p]R{J+asXI=9M莏a~gy;`LBEk|iΟ9%^|ѯ"}~UuʿXOdu$%Znj^J;6'(qql-M2nPM#6̘B7a0Pn5a'`q~H` rE*4ATBj(m AjtZgS/e<@2u/pwէ;x$J!q@ٳ%ifM خYETmxs.CGز߇ ƌ=J|d J( {sov8:l'zܦSt#TY8%3Y[SAN%3*Y,-3.Vb-V&(rM0? *<{!XE֞u6|v! }UZ흁a}+`0BK+\e a_}LЈ }Wn-d6mbf㕣kr ęaIZ8V+'R1"WY86\,GnkڐerH:w^ԓήT\SDueu!M% Tֲ Tk{K C.sopsAG{X`q7UuKpWIeM*J*EsfR W-Ͱ'k=y2n'9"Iҍ]<-`lgTM3 z`/J#(\!Rۑy/ 1]9/wicvLmQL2BD9yxw9?h }XZ٩U0%W@2wjg%Wِ|ڪXH%+^ Ͻ ui<[#kQ] 4ZCUL»K|2/~jK96ZGxmʨBMɇnAJ-9G)`,, _?r>Ln˟%Oy i 1`qSDPWeh HD庵S{p4?%0 $}UhIB8Xf*[x2X!H0:'x cR4tdJؓ;-v2bP^Ȓe7H F6 cc&`gjk gKb.2o1?ׁ3lI %C_(un+,Jwٌ0>)n4[|9vvJ֏~ᠯC .b:i2$o IMsWȮh9bjK0RT) iR%hO?0rZ"=3Bv qO(Uo9z/{Mwmp, K 3'YQ*S0N 0͹;z~4T+&(XZ3O Aב:!ߺ 8|H[>2Jҥ]M_KzVg4!0~8tG!a{Q)NwOCł &Ӹ ssfؙzEl9k5ާ9͑rrjk$dyqN>h@`1 znn_:W g45!Dcv]3kX+bSC<ctHN +`2s H~Ԑo_W8e3 V>y'/hvsO)(%Qjv_9r*]lDDUaZ߮Vb3UmW9 _5ρ- s +;Z@porQY-[Gc틃qϲj|VUo_1B=Ʋw].r?TXLM( }NH(CxwX9+\C#(U(XV<~3]L2scr(!1XM><7%Lw6= Z>۽~dԄ+ 2ʫUH)̴*P>JH<}A/az)m.^lږ7"*O4j +'/E}+{mR_ w<Ͳ4T>qMz*Jl.] `rgޒ$ ı6Os(kkd"A/ŋR]ӚcjՄ@f]H!Iߪ*]~D؞h. 16ϼ RRAHm^ $eWdZuc?k0hIҐmOj54 ti6䴞P896r*B ~;hY>xD< ̳# P]>*Z ֧@6=_# w%=\+3im4$1>QYu 8tCp`cDWM܁ f]bm2C"_}vd@Jᾅ\ iQ* >w~TnV{ݛH%N;oH":2b(n7?zS|dnE j*U1>aCY 0Uд#68[eQj32P;ݞ&uWLZdOk߄_,N Vh$)JsX~V76uj9Rܲkp 쨁RsxVG9R喤 Bk폪v/ ^:eiJ5 : sq}ء9O1 Յ7\8*oã&жh i U[Z/7pߝ9bN "c~CWK_AdS.ނJMShәk?cB31Uc? O>tq&^e=w pSp'@g^w=b*`1|S2^k~#҅,osfRd?Ǎ$os@2h&fV_sߵlJ5ѷŮ[yKYO? N8$oXC1/L5 %&"͹ziz ,N6P7t 6Nj$DՕ⸍dTo;h._Zc)X8q5N.Kh&|IU=f#% o$t+U=Ia 46e{Bt<?f KXjﺔFF9} +vo!5+MWt4Uڄ'YaBDSG۱ 5&aes|iV͗"V3.ѵ)Oޙk]8?N&9z09%9(NkAV.ʼYTlڷl~7>G"0 Ce8Z=fh{IT{X)9?b;@7_弲jug8R g$yuz:-\l(jľ̑ߟX^(kX"#5ipO`Iyq<u-;{gM 4=M+^h:s1$SdHHwJuG ]d*wqE=fZ$\5|ԑgLFt*qYvjbk4Yw-%]jLcȈ"nH#kFiլR6 :/SvQ9&u~< Tj(j;GM#)~SNO+?^Ĩvɩ1HS49=rЛT6C¶[y/qA߈f/(=="O5'g)چ%sIEH᫱]YJ-4^!g;cP)m\p.b3^#=!ql6 DW !y q޷%3]ǧlDwHODi_k{}0վZ^ޑz(쌱gX<.0Y@VtDe0uIK9\_Iw7c 4J:x:v’xo?VHA-c7!~NIZR-=@(+Φ˅&T܍A`K g +{%{aܗIc^F7Kh~;F.{R/LI2^Sto ~6Dk ۖ+$&XJ^*8^vh`#m36s~=E~#(ߪ ^k,d˹HYrGm4-ڠ/]?)[=hlXO3:=wXLƞ}W=>qz` ju0Gp]/'o*ʑ N^ֺjw<<łGt,g>ؼ{&bpfMT?niڬ]b) .-3$)cS{:2?;8zvkW'E!RϠ/b'?̌c 1\Fi^{Hc^[euY҆n *Dgwf6TWt3 |f2'ZՒX7鶋S kM{;TkGu PTx1 C@S_L7%\R.ډZT.j2d1{ |"`KJD`{ݸGv\>"ʉjL~^bhF- 8y _zlKl] oa/pCw$U신 y8s1 o!hL%8Vڕ\_uxm),Ax"xw.Uvk,KʝfZamCbguv򽈵ex}1q78[;$ LǐRKMG H $fl:fK"(r_03CK˘18%^Gu֍Hi^B?R-\qB쾼XZ!nCrgWB,('} ]QHtdE&e}r1mFϴQE&Q-b)8(qRIDR#`)jhܘMaweoJ!6K Jռu1~$Ff6Fh)- ,+D$UWnB]cSI?'.CTHVHpdϬOrKhl(}|;кxMNl( !2¹,(Z N$pZO;% 2uY9 J\‘ e6Y'fزG(jb;`,2j8v!ץ+ *]q/!LIfʩ<$lݰ_+v{VSI bYYҭ/T-vL{"e )[/Ct.C5VȼDI맔dwsEBƔڝJGBGD\3ch!w7Su 0!awחnL>@_hCSӘ|Er+oxEcUإpBOLZk5?sк%_pH4OlY-HW2WnThyYM.b{8jFǶno)MfGO:wbB%\⹅H@Jby|NN*+)ԳSEBIH6aZf?-xCoP+/N8 AbݸC@-Dzz".Vϵgl#r3LAƁ h{ru!YIuNl@㙉OPt|GRHJQ:}[G(w]*[GQlя/FKa*YBn)0@!Ze_:+sgض`6#?]'](JBDddSJjY')NzMW5´"k6@_+B[(a|x)n^a3NԂ"Xh?WDT%\+#%UAs*?!fZ=5J 2L%,}Z6BL.ލW 4̕py~q4H |.|z5L;^ϝآ@\JOy^?Qur+QÌMyMS\pʾ>N="t Poaf%! HoSCUw;ݮi)9UuH |AgӲz be'C4YC'gjiI5 r#Xd9w3l%;wcYsb/Բ?훒''I(kNbIۖS,T܄TנŢ,/F4oekv,Ӣ'+dvA'GL{"T&~Rpc&=x6.raEeK-Ȉ3)-qם+[sn+ނ>ruj~WJoMT4l8o>Gbј2 !MD꧑rd.+I7*f\ZEWʧe;JW $^lz'@NlFDmbL]e%ENn ]K:<ęvChZӻivWc jmRV8\AF'RN:P@M|US}_([qf&B׹FB7#OPw:G/7g:U&|o%p̣\Z~;K{B# g-Z4[w/E5'|aepIsۏ錥+)Iaa`Mk",YKDV@r " Xm86SAvxuƅeD` 5&t1FSv.L8 Idk-YWt?+|+m@ZHue$k5JO " 4]q#mWKeU镮ژ;xRMځ,je CUl: fI ;Lja1ZC}R-d*Bi2;ohZv; _t྇],e3}9Uraܰ<.)Փx*L ͩw?n˜?DvVda܂ZTi NDЩ.Պd LmY`[AWWix2! ]>]~ߺd~xɞ|h-^?}8O=Όghy1vPg=J!Pܒ\]a=oxDf|. Wp ȥ&A^bkEz2&.zdh~',5Ӏ֟@" r|{F{V5Tx"V}L*2a'm7DmD\A QW=N?ߍWmJ$zC{&F갯k!թ ,}57j6n(vy‰դCݳJ]zk.}eG5ׂ NC5wRvtq&U řhQ,J4:`ABnkg컈t+XeŰ?y<=.BǍR%1(M5O"q  V/D> ?=|BVAÍ܂@8 ,W-ll@ʘm+BuuEEvY az#Ǹ0BQ03Pjt 9lϨY^-jlG@fanc>-43`݇'" v Z!ng %skT@aw{os2 %Tc.*6BeBYP*cL3v51/1SUDac&ޖhƄX+=cɻ xNWL T'2Ӆ q^f; MT@GKyPpq)fsw+x͞b 9SJt\ԚZ`ecrEא|m]F[-ʚA}`^i髢I8?>lxAbTcrUIb>y8qPP2<~͇uF#drյ&8ﱰrUX Nzw_I(E:t"9ކA_5$l* I+!IM߲T2.ԟ es:$QS6X:y݉R!Ju(`E)GrADggN Î(Ef\􊃴(Fcil:_ry bϱI(Yn$ cHz5~~-ǜyY:Ks8bpGryCTv ?5]V]Wh %8~Wħ'd)1ҒC:(|fj,x9 pTR5c[+]{j4{nyIdHd47)Gexfh1B:zbU0XQݐb..uwN-tT}Rty]:oަ.1rƺŷp`SAQK:SK\}&ox 4{Euo®KԳrt7~>0ާ*aLs+I^ixZ%fΈ5\|V_pőv.ySAsb`?&_(*Mca@) EEdm#27;M/`{fB}7&G˔xvtALqn|?1uwD{(g b׽S6v|=u\[K i  Vb ['lPE ]>HQ*|ht<~)q=ݔ++1]^$#Ut7CN3stp[( O*%ЪBe|Vo= /n g 0 ;^!ۮPN~ d.5R2 ݝ0,7 Jәli#ڮ:LflGEn+O!Q'N4\yZi*oPjo)N_3j)7tx?_ؙfӟ M@"L珌v?(Ѹԟb?i - J6ߞK6xl3ff (pYU|qe~~=5]Vv{N̔T-AU 50a1Ys`0b G=NH"\=PˑY;T-0ߢ`rt<`{x-๐3 g}[LjC! tdǕPQw 6 )]M9A>%R|Gڴ&Yi7Z2$DL)ƾ.ȽhW4jL34ӢK׃hZ b(QBV>źYu1+Dh=7f2W¥Y !/[=.`r~| mD~ rEDhӒ\,fX!Eƅ&u>bjJ H2rxŢoT܎[2 ^(M9_6K[%3 5M=iyғNDqN)"#SCNh5*x*)4e`k9`t8/NK>Mz6eB Gsj v6ICհ9y8ġOhpQq?,)}{C\YY}-9AW5˻NJ.VPX)q$$`Z"lGjK/QZᵳ " 4)͹@[{U63~:fH+FnL8^V7;Vh?; &ȠU'Q-TdQxf]NhIf˚0  Pf0,aNwVltYs2Ӱ 0H]C5L`.Rn./bT"dzo+Ŝli5my>hW]UW="Azn ޻]%1@>5z\ 3xx &9p-(9 \obS6/7Z+xUa:8|x SwCku{X8*|Ʊ0Y`Uq!6<M=+@5'lO)]O{|xHi L3P,1†lO "2l΀AdY\B6[%l%H +>th_QJȂAxٴAQI<"|mIok^ :8)V;(F=LwS{Sv`阻SQ374H;VX ކB <0_h@Yik1'ds 2uS+@Ȏ*/-,ffG۸U7䀩nղ/k8b]oX8),]8Yt=U% |53ְ(ӕ볌f́\ɛB08wlr)Xǃ-eb^xNea"?-/ l< ѣ-pTp…] SG{Wt-\7vk 罶YSXR\x1_Y,s-[- P^*dƓ/1zu Yyc7`tH v%!Y·[Wk+ni^(:/"U@ 홻:3mp<&"LCFڢ2o>ZU j깬c.=8(xKGg3sA*Iۇ)5ӹJ \jꝹ怭 %IA f7# _E=l1A$W8eN`JCYT[f[Bq+< ҇7 RYfYy*a pF|U bܯ?,e:AIb4خ7&ʺ*f{]+35vCJ)Wk5g)yw0aݽ.WA>[PI[tr}XYL5_kH'8ViwfO` >'NY2r+ᒃxCYG@dlCpvExy˷HX8?) @ ]-׊\OL,3&50]"R[D!X=~x|Jdҩ7CJ#$ |b&Y4G˦(e(JugaƏ16.չ'p <{ͳ< !qu/ !4u1c@`m^>ƌZ`J8!=yE kt~$5֯b-ssNzQupәy+TZ,Km=8(8.xv[ YjZ烈){כe,xsO`(JA_{*D^'nׄK3]akotfĸ9r,(6h%\3g!c iސq1#"٬<_=hd)|pd+7r-IEgZ;(1aY-D Vf[/PSP#3; 5ZxM'Qaф%ŏlZ"2уyRW(l$5SsFInAX?hy(^2BE !~45'4lJ m҂.2E}s;2-4rib*^"_B< \0bDhu,AMŻr{uZo}OLN rKЍe7bߤ|A;\^f0%R6]C*bdNŪ&O|>gȑw6CrN$8\6VHZ2Kh H'>O 4ߛ̹]Xw” &lxa|"Q> <t dq' $.B0ARCҾ7ڱR6A<<o׭&|&0<2F? Tq[w(>M$N ڍWbLizkT͠Lx<y4g\BRK`{%lԈOX(PV7+M'ܼJe hC7JrF="X,o&p>|X ךA]s݀:79*+\:Zc1J64׾L=+>*sa ԇ1_/Wd{X`[tzζ0jn6vnj5ɨd5uhXyw x.TK-@ꟙt:o(N&8(;,H2I S()V@! a 4J߇LS 5)˼jI5#b|d桱dbzUBu#c}hWW9@ۍxG>Mu%ÇgV#.\jᰩ$bzrӀ:,#du| l0.]=;ڷ$~T 9+x4d+YE)U46^!+`&"d`y" Nfv7>e~gPeG+@@$,lR˛(ȮM;xx$CE"E{vŀl\7qRUxbxx:Gk~d,_f0M}_&Bsbe_֨d_Luҿ5 Q_S2,pg\M{R$ݕ|K86+Oz>>QpE#;T&WJ ? l-K<#izPO+9\M* ._`BbB/1Fg۔Oo=Y"}PfZFN(݅tS&Z|Ӫ?)\N4EdG bD&xyPQ4a`Q|熢 ƈܜ?%3Zha_^ sBH@k)ͻttpo9R>X"myumF)?`7Blx<^9V E\vπ}^HBvԆ5XCEȉȝ=B*_YD\bH˞6%</Vga_P, 9mW.ҍ(UIy>8{sNƂ#Q&9g/C:#;FL]S2~x|^ԭpxzM.5$I#wјpy oVܶZ<Dv6ES_/2X^2?xE}ShBv f7 B谳y&kcp^_p1tu7V~)% KT%WS!C 8#oHұMmx]zPVG_1wue>z ;iZѭ03%WV\?gddhȠPD9@%}F3nl,ܳ@!Yrir61eiJ.r#݅1CV:,@R*Yա{#ȥNLR»Yp1KllaH2ٲKi4exSACHB0+.,"@WLףBǡ,9:Yxz*ȭE(b%xB_ФOw$tdA|x!|ń%G6Jhbv⬽3 " cATG{2L(U%b[.&G"Zxɪ I8vf>hKc!.Oh]VZ!ID 玩a%- .'4Aa#izM=1. C ?ˆ0K׋%od̙Hez-TeJYBe|CbF@Hm2]CM.f|6@oFLJ;`Yaf4,234W IXQ "^NNQdEGLhjo`=*sUOP!Ažo d?);Z7v9ab}w]Q1a¨],p+_qʦ>ㄞPɮs/,-BK6-㕴X%H-"#i 1P+kbNkF@KP,:slF (@ޥtO"'(W(.A&=K7BG)\mW /4@Q͜ɸM zX<,"#$00}vw-gb쀦ߙn|I.^g߷NiLTRw9ׂNV%EvORr83LaMʰS.gٓc0nNK܂"D2Qe]R-_A ~*DB4JW3K?&Jmrynd\XbB$>֖=¦򝯞b< 3 p;m'!cQ)2 ~:( 10XM6ٲ6d~9HֺRL#&͸#ǟ1fDt938ip42j?BW2>k[*|7b18~ e/ , G-z(0!K^V0nGZP:0oUSR`_kCͱ՘- yކ1ރ*HMydAV*վ!j)7~EK$#,ZRxQY-;Ͳb6ʝՃUu|GpjD"\RWNYj'o AU=~iymK n qoy掭_A%IӦCMLJsơ7ؚmF"[1N[f ZoZ}> {\UqkNQ͇buӳܢWP 'wM0iEydmDI` `7a>'5ygW?GcD\3z@Bx@XVj+,(^KLYԅW뉈0 S֬! [3aZ~PcsϜJFHiz?;%ˆ׷uḠ(6:f x;0m ?^u%׃0c \S #]XcT(TC3zۆȵ-nX>ǽ>s}:-w|ݧH 1A}OϘS.Ew"4ہ){g$vxa.xD}̴E4TN)8u- H4е^˔%f ) 45{~Awo8Ǯ9SζS.=PO/Q }FFxg[i፹5 &Ɩc.CF@E L`lecc9jɽizS:gVJK43JEld!S|&tX=KK&Oe艣`Ck39)lF^do hp`Vߋmj%CR6[<4ŧI‚e<pOYc@,!d bqZ:AW+\ ZՒ W2"rnQ'_J+ȱf6?cdV#oxZDmi2p$Ok+qe~Ƿ!B*ݟHYTS *u$!~?!k0Ƕ>ˈ X6U(RC/n6(O{R[+ѿ$Hayɡ:&^{7'EEQGk!CuťF`Cs)@e ~Ad}( -zثY*<;2 t):;oa}a5 ;f|jLӱ i sc\cs9$K"jXKJ̓zeG&W`J Ɵ¹/}1RXD13d6+# o595 AEV `2!RRtev#z>t2*/lۄ%YʔkM^h*DJgzjDL̢Wf [DZdTbIEx>r]d-M 44ʅ3P<19O"y>??q!/j t%^I0$'>TՓv76@UKϽdVɯSW4srDf gk GMhAEKD7:=2ﰮ0h~^2D7J;L\gӗ(U lc,guwAldu%Ⱥ&4䃱s.+x5֖,+ α8n)CY I[zqz:O+ga= dYI_u.8Aq#ԟAD/[UEWĄHO_7S}YXfx@ot'J_m̘7_O((ݫ΁KduM'>6GE!REjYF3Е&ë [ ~\|6kǒٷQԬJ [I^sܦRMxl!}h=}ٿ 93Qo/Rh0C:AU+O'Z='$I@dtiXKnAk}¾Ŋ$?B؅Tp(0.-=OyЪ܃S ?yuXsm!p/6B/2K5 FΠuPdw;_QE^($\]FLBQm} v1!9 u+Ͱ Ouʗ=h`Sh')N0hen>MZ'DS %pfP,6aWw2S|`:7djUJpȘa6Ԭདྷ 'U Mޣ#5Ȱཛ",iG(l(/WxFv>CٛFhPl<ʌD~ifV3h;_IF㕃Jc;2Ѳ҄[Mkok4;D"+Qg>pAYޑ;5)5iG3&7>ߦsAC]Ya M8ډɳ_vP eaxm)wr\$;4n\It1EdSL~p•b!>3Hcggfڛ~&Y"sa}(%عؗW[峓H?Ŧ ?$R>>"j:4t3Zoz~go FnA$O-SY+*tUѭ&SpF͖x-SH`9ħ7ْfjeIع HG`;M*V>&) Њ [7geQzFcTš AbiQV˥uZ:G[Dܑq%qlEDx!ڵ~Qʛ{e˔Aa:pK0$n^U L;aj9:63sd*nj^1!ȡ@<=k$wTKmwQY(}?\8Xdtأ@uv`*øhdW2l=rPеT[ޮ;ʋI^#:v[J 08W;EKf$` kE2f۪20YVʨf cǏb,^ ]Bbq*Xyrs!I H%HInK H_cGߤt8V ='TZ n![W{Jm9aƖΈkg6uꢇXe/ 2rR=vE4|mLM.M}( u_ {ѧRz *VqvbDB)gb`#;?X34KӅZJH+M5s]Q,#r8Y{:>y,"zcc_3'ZUNWaK\ij$jLy ˹P\%'/З]3Oc%sY%)joֆ{%*J6I-|ͽԦ W`0)Xv@M{{Hw+\>%u3ɳwDn揝 3> (7gW!>02\ 7|.#]oF&xN7<D~JeMIn> `SmY{uXTGZBh9mnN]mr?a~&ZWp`rXE"<5Ӣ'\C΄Rx+ Ѷ(/A,=^~L3[[u'rbqYz I ^$[CWFZ/irڼ f Z~|H ŷ %aZXQ$!ϋ U͢: =)zL53 @&[0%6zlRK\yovRxFk l[@nZd1>2&Ɉ}KUJCG|֏\"؆AW#O0G_3(;_tt o/ZO!i BjnBXocDE9s@N2h>b7-@o ڤML~ęY/Q_VQl1WϦAB/[fq&SO֣vCvDWoǴP#u-X-jb5)K"_W/VD ә0NF g! iNxfhO"c}$)MGW~q|e+3ߍIB`6HI~d+7&v˵uVJf=Jq0 8xkZu=p}sOb04Ҹ ?flrMh ͼ잝-:uU&,/jseؗf~y3N-![(-k`i|ls˰TuaIxW݂-·:nn\&sb+iRiR1$JB*{ $` `nZ\OyѪW͙}v4ĵPhWRwh. lE[Z<;ι_ #OjEAu&sX;}3 \2P+zhuuzڐ{3_%.u\1Jtzi1üw!'ϓ4s3ي`NmY@TtϧA_0}5: g {ӎ1:pVr»s ikzgC&?ȇb}3{; tS-9CD #gFܔq l)IC^F\٤C$/kj@S#abW ]M/6{75(`'PZl6}BV AYvK0E'<B -jFh́D}ARvZ$72gH{i`Ml?[=ɩp7kl:534s-PLS][M/"q9n?K7<#@_W}_e<];Qt׌R=Ao)j7 tWMƥdk?M;+6 _]O$I=%c;I"ek00@'̆Q8&R Ȳn^Fcg\; W`9}]t#WIcx]bBw{ɸ"!l'] ?DqOkItvE&Rm>n=Ynn&ONoHRxP!Gs":mڗUT}8[!+աgFE39A [0'0:iEL  DhMNڱ&xV`Tu!Om/7SA,gƗ(<~CI>mkq`VoB6 q.Cb bQu0˚AJ6$JS8T\8傐"hunf Tl١lZsD6jkyf"XCMLnW8:TYX~J;usSO«O^gG%֩ő:v -A" ]78 !* 5JA;m_(_BZՖ iE|½sC L?z K?IhX//AXV&)n7BNqf~:!Jނ VtYE"{3u <ڸ]b[?yxxGA!2>^j"+M/qpD٦ga-In#ֆd2ZI'>*5ݯRw;jA+P,pYp4QZ\.@ 8=ћK\0#KIp+ە(gvd-~kCpĩ?93cՒh^ sE u6:3l(*t/_sNu{L$曰zWpc9=_KlrD1%Λ1DSA aB$,xH,dj>KW$fZNwSV%t4ޚE~81{ZT3} 5GzLJA<(X\р$єNFє+6%O("7mbr=+B&pylۻS47*ڊ(u tW*n~5"67Xł' BAG M̆V(;2< x&q&clAHsraGzȖW=}wE\׈Ҫu؆n! ^6%WGBpHvQRն~Ї xT۩vk(QM% (wk)ƣ@;OI% **C \*0 Tx:P7msϚW.yqU) YbmI%l( ӾD9ȃ( ^QQ'hNk!GHźV J HC.ZYh-wX E1McQ),lq)Y$D%|bj{Q 3O~Ϟ?*cŭ.c%D zR@#2xU^ٰ(hOXN5]<,И;8YlD/!AU%5DCw̺/X~V Jh?8r,,5Etƫ[{XxJ6ꮼux@X&HyC3(gxk9 %} ʷށ_q5Ti:o$S]ҁ.DKȚD5)9̡]m._ES%;CMR7ͽ AO}z4w;'z2UNBXv K% }:L3EH ڈʥ<ܛ|>1(JA6-ن\y~JsrۨX9l_Adgvkmb~l~W(-T)gVY/&-R\O{*㥲Ug"eyu h3sz%ݩviMDc*hqq좾LR `z3坒EJlZ}h&p架tm[^zJZ;Lj\Z{ z ߗ| %^~1ܯ;Ovܣ;*,?**([{^5+:>BCz5R VÕUOo0̆R53U[|D[͖5*} CF5/F*i}d5᮸< 9ξCN@C^{;DX/ilw~ o?fyVc+o"F*#2/l릩&SRaX<`YU:<-O_ԣxفݧΓGs[Usy+G;g̑N@\`Z ~ ]A8a%-ތ{W456&oPvb3U7Hwrp06I1  ɗiMkDxU/:̯Q Z}wliE%nľ3 szב@*xeJ$g5"NFCQ  ̷lWIUUF']Q VuARNRO}? gvbE>A)EWk,]_9^t4m7?S-wy<hwPD-Ky, M>\GW>7Wo7M-͈( wɷ:q2L+o@KUj[Jt cG&ݩoo|53[[x"g>G145b4/PB/vO 3^`9/n|A)^gVm^t!C. ɼaY6g9,ȡ#2hXÿy+ՠNjakBS>ݣ Z X3 #\,]!'~dh:Χ_hKfXҲȺi]2:ϯ&iF VEMzrg0/$%LLWf^[ߑQ}驆%oߵ"- $ns=t51Fcׯm)u8c:^.K@M?@2p)ӜgM{py)Svbx$㈋[ HZhl ('_ ׹9F}%Zl+O$ é6kE5C*Ig{ lxR͘@=ۑjTX&j?xp<4vBx=o54e$nf+Xj&|-q(#*툽3B}IH+uz:M:|8mgAkb%gQbB/x7GfQ!6` e}[|ģitS{ 6ygN|Coj2o1K 8m y{F[2jt )\T8ц̣u^ bR* m{$uL6Xt|VQNw~dPV/h*ggq鵞&HM5XKO#PA՗rPazƶ~c:z)1G1گ>8N۩͵8-dXcuP;HitWio9_%Xn`rL:1,-åy$F]&dӿ7Aj Vofe-syʂ Bu=BGK2jY*&vv@X{>K2t3y\󁀨6Uӊt >}ZE܊9Oﭿz:]5ģ! c/ouJ$1b <$b0*ɚ'd_:% ~&=]P5bNnp˲ӵ aؖ 4ݕM{4sXbreXgD"C(@cP?DV8OِxK=E U英D ZU$ҙdyT;=XU02kv Y̙m )0+M0Cjy z~unԶܟ ka\A&b;5%lʘ=ٺA"okTh#p Bq3FUgz']a8$~CLmoWL˝P^ۏTkS4?/K@=-Q6Jbls]W3?6A 8g{.4$Fnڋp,2жjxzfkm"_v=3n5 9a2#6L`tJdK"þj{ͅhWV)f63)VZȘZ<cܔLغgP1w(]#bM^!JA-ZCSOd/}_y!q{:IF9D,$)-l-[79j|Ġ͗uj~1^毐CH dobX 7lUU՜:"Nf0VIAzrB9Iv~8K]-urǟ{dyeA߭fD `ݺjî++`[p Y)[3e8 U{/$KltRUqDԧB.GIQYvcd+'/(saSԸw}ˍ}ƞ<<\UlnaE~3j .`hI$KIR> i1i "&-ZH?'j$%\箣~ógGuuR}L2y)%Ъo-7CŞpϖp6'#?9 !hrgGMҖҝ3jC94A4>g Q)F[ֱۗf/}yYmy.(ёd 6+ʎL4 Ia|1(Ӗrs{_Qn%ۦk!r!'֡-Z{;oT.F8PgCt V-~a)uC{P%AWc޺* )!W1I" /}Nʎa}#tJgFCʇ]=l yAv7O2]|]}ÓW0G`[V'PKZ{5l,nH٬F^d+NSk+}Kk |LswK <p] ~9U<8=*cS r<UZ W\!5fL31G~GŁf49}scg#C d?>8eҡ;cPMllcB^CP-<6VJ(OZbyupžfBl@e[ϠP}I)=c ]%0dGa@JAr??L8u0R$Vcd6!S>[ ՍͮRupFSŰ3bWGrh_kޜ.hZҦt!+ld(h0X銕,S 6@4mO(("4ᗛQiƖz)ϧ.|4Lqߏ%,H|c6&q=H7=I|6ERU4Bl`kVxfBnKI )Oei[2,! !EɄk8-m/%uYiY5^1 OU^>1陊NSsZx:ϼ2L;@+b AAvm041Ƙ Q;ҺGLxYR0SbP.gSKb֫+{// N,(j:M32K>bt #x-)97r\-䶙k*A,^0m6Xb-w `8H"JϡhX!Y+^84.Qv&ˇrP}S|DO/KftzM"kER[ dDC<.s5! jeiv2Fڢ &H{TEojqM$"݃ }Y[ud2GΙI5ᱍc_H3YDҳϛe[Ggꢝ\%C|sIe4W25v_$I@oW XW`XHʵy@";+NO茱 ƍI8@iI\1 O8s&-5P`nC|@BE & Ltnerja{.=B/.k5i 1I2Rr} Zj{_IYj+2M'_ك:șںV)n G-.'MIg_._V}i8WipjlU0JS:Nk?0z$=!2\mgsV&h"5}e:NolD]źOks.s$MhuqkC0@i#ϠQ; kζ9/yf<.]M`2%t%!UuZP[Tg7.t[\h=H/>F{!X Iuə |DH^#0RPR&â#XŗV, +X2viHl~\|{ԯ8 j:z㫇O2͜Ħ.k#76Yxԓz Uq`PMA" `'?D:qउm_4>fn#X|dOcބ' ;bGpL7MqmppʶAS񭙏nFɣc2ouY2KknVKech{8o nW%{ VC)>;#JF[\|#Ȓj "X3 B1M~BP3YuI`F04^L*Ŧ4 s}B_<'%9qe-o+ dK`ѽ߶v:ӏ4èWȈ26T|ڙ=(v|XhDF E `-Mv'IvF%-NUteEv6EE0< fѦڇ_#-{r2/өޑw9םmAWj#>~U z5۔u4 ETZa, -'o@oZH G9&%\<; [x@syИ0_Mx>k~G41rP~hUEY#~{y`Lk'xC?P3 LbW{`-A\`&//䓯*JnYXzOgn[VGRl-"' wdÕ|DK,peMDYs+ŊQM-y3R9l5U+c0]cfOIWAs/K Tׄ8 3O< NSF3 Խ JOij?D/&-)Huw9!N#|G,9|tlH' Xa_{8QRkQ{)| _ÀGΑ|I`;Ӯ~~BU:#YHޗ(5NP93TBc83[Gt Kx]oꪇ|A1x#[J}=/:AepbDR_)6W%t$ aꃌmjM5a'pP%o^,M(%'mPO|q`@t+S49Ν|҂@ìj.6}Em^cm[j# O&'s',Pk!W] ,L/"kx)8ٮAȺ@ۨc[ùjF=SW[dHVdgY{J~4>iη?onҝ,tĸLVAnwGOD B\C 7)s4<<{`dy6W`Qu撥V `'tV^.[v>YE.$חr""+o|fj+L ԨnUlk8%wl ΍v$Fe5Ol0Gޓ"YSMꗼ `<_ љbkӅ 9 胫-r -q<^\9Ҫ:F0̵k>?5ݮ)H^xYZ pCy 0䂍,Z}13:&[WYb~B.'ی-}gwC>qa'O ʨԩ=ZVݼ1# U9]B[aߜK}cؽMwWڭ1O5h 'Qɻ>/`}CEmoY-߉pTqK9]zc%}(Auo_bZh5NDobW=˲Γ~4Igd#&Z Ov(r 忼y<' w?%KI4? DS^d]%@E*Ng7-8e@R4ν{̼$ &,TTgb% ڽuV/q|M w&i2jG4^o,㜈Mdkyajل*IEу/c`NU')#qwf:fW-J:$*~5;BТL|aegVTXg T!N>\[cG.Q>o߀}|xU/ ,!(9 N 9S 㮚 /c8% уɪh]DL\>*Cѥ,^p>j!5c5'(Q̧O-.(TH&bzfR& @ǧid o+T+[92(^ ?u6=#QkO^/Q묦:`YPl$Ȅ K4s Ɣ֏`@,V;Tw-/qkƓ&ٮPBG o@` (/w/N7uA+_/:j`|̠%ޛ&{x,`OYAi Z=>3O~\}[`0XLX`m0& xyb~G9JI-'\y{|X_(\2O99:p=!IDr}+jP˳ ޤǡ GלW33`7y"\A1ַAzvصJ0|'Sj)/aV~Sev^J38K/I6^ )GͰq$ؽ_bK'Ε(uڰǫ |Z|jGec; ea'V"%g+0M fk 0)-mBR,߼d(BmսlgV;eNe[u-|2[^[^'PCoK|/!bX #=AhD%ϖ֖Z89eGWIn$)@AOUm@)1 Dځ>}ݗ"kFD%oY!x3`wc/GCCG-1tӠ/遐L7Ǯ%c/<jh l%/ V v_˃f9p#NVL㣃a*p]B$z[[AԌVm5vE;{ЉdWG2.S$mvegjƟ'7-{D[ʫHHb6Ѝ„gc.h"%Rom.T}r (;|]ϹL{8n*kT(UX:ƊGpǮOg0l wpt39e@HG+HUnt=_&M8HDQ@ÏzL=!CvPI5@{moT|V~uuNr=~iK" 9dY yWo5m/dpǬc)h)?+CHzt|jO_?OBE!9ژ3a@_524]#⺰Z:Aq'9뙉&, rM}ӄ/K'̐5"5i 2,nƵֈ7\ a;f#J`:;$2h#Pl &ΗIŰ r.3ԏa1% /iM`咟)|P7|}۳͔ hFzԒ+I-*jyDs< }*lHk5L#hFP6ZQ6@]/_,, $N'_m"ftO*9,=lҪ,R8QZMm,]h. SVq5$R^b' 35Kpak7@N0У:qO;]=֬w| ;ObvFnưzP(~@́H284}pY ]~RQL}a4|4Ke^$ّNg} kBn+:9֢f xU<0!wF.) h uNe%;nJɉMU/.s眗EYNiϸc"6,}^򍳤?E/)zGN>7,mNw:$raM\/pinD0"흹~ټeyzHIv^yˆv邬F{;$6 j H4QEsU*=sjX߶?&#4:=6 ?v :tf\a #{™gc)zBLyjxEW\pld;H| OGz^cA78rf&ZO,-Գ Ⱦn)Ō)nzzk |kB wG4-UMN(`7iSlz^ Jpn]dY-$ȔJ!.Ϋbu&XEaMd\%5C"Յ!yIс]n4pVWw`>pHκ^/1ϻ) CDB(lE\=hB;7U?+LTɓn "2 ^m.P)99ْ7qP+T?/2[XNHF s[?p~H8Kr;X)1ڿP N&h*MsS}l:=Ø2 \-X"<c;sa<ͥ ,~߀vNutM)Ċ&vT0C}^^#dG{*5;QB ՟twV+' $kC4?8'2-ISV|~Ga,sQe> &uW3ݝm7`Rn>s ⃧>.d-$)6 ۮw3 b3V4)#%jdrJ׷Z:W[\-%]01MbrO3"YpWdڞpY:"]cԫH`yօ*i"'CP ulmVȼ7~q_rp:CiH{vPGΠd!ӣM_>=ό{J[)auTJkw,6j$.hJ{tmF.Fٲ}I㎧E]I-~ۇ/qG*.vnfhypu?'cz*ђS5pʩםJhbD bk kn1X}]f)} ݡaRv00u wHlЏѢ[3p|VR7IÕh;`N_[5{:_Ԃd[':6 MM+4 8ioCӨ[nD9\WH{~6G/;]s cHD|Oor}@4H@){ +j'/sE4cf[rE8ʯH8 IU +)$hܩ*B&MwKۼ2qgvSs<^xvǻ8e|0"k#D&^Y:STȓ|F3zQw+w]#o5peN55ga- پ^Kz!\nXJ,IԻ u4-]1>^CκR5]{FVo!a6m= ?T*g#[YfP?b ֑o= 0l/I t,n(H`EC7X )R/&4:+ caiRV_w/Ra^"#^!6ٮr44e|O:`R摰.P1*gFm%+.Ǵ| Ə^}=7Υ>Y[5.%3c?ru5xj޻;~ &s̓G!pz 0-,dE`2?{'y>>jfrj{KŴw"~40JR_jn*IJ|I ucP$}2wɶ|{**')@8y>e4o׈^ GU p:EA~hR#cʔ>;F]Ѕ l~9~h'ڌPIqk}EZ5@fP>k*KK*np]i'5 MЯ 3\hЫ_EE G ;2̏?ӶNUѴsTHoIiL$#pmOfw($#"Uzbՙ{Ӛ=^|boY&e ?3;ۈo$1N11a`hSZLG,Iy Q)|)>;A;s$m`W EX[LjϿ3^<_/].d3"Ҩ9\8h d*ِkYKy熇dNi%@ǹs6c5"ѫ§ƩsH.o 6ޝ8H\Mz;@9By@ļ$bH8봤PǒP;Q.yQW3?ƛ,Cm,(>N"G3" :9GҎŅ8qnsa wu&~n_I|UG9ޒbd:#T~8YM%ؙ%AH=Ym3Vfo`ٍePJ` 0P#M( Hlt[`%~#5mI[ua\v4g" t'ϦXS%k?~y ?B35CE@I:"sW;&Fij\w7GpFlEX3+jMq}(Dl/Ϊ..)+<}%oPJE2 lXBAـ"B f<)ƻ uԮ\ !-Ie /` ?T' F'&ڀ8*wO"L`/h6c&k n54A2~ݢ;,R6@ {JѦYSɼ7[ $C[<e!ohMj;|t0u-ЅNPjcC$-n "Ax y@;söia.B&2 FmccEc!ZDwe۱CTx)B]Tk ~΍ ł{7vYZQ !LL }xY7-E})0݉O2<ᘻLуa/pBWHPʉB_.|!1t^A4ֳ?c tjd;@Jt/Po,l6q B3ݣ  s9x(],%<487{CkZ{fqUO@O+qӻ5G] ef ];q@6'$]cc mҞ(4, h$ẀB_M!|!s}P0h;Egʿ]WB[y0PݝZ(.$R{:P+;-ilomMj"l+\nFzFXޞ7-0b]͙ i|HķvGVgS̜2Iv爡aDW$rvիN`ʎQh@-|OeDPjG"Ov0c?p Lw~0H5>9|P^lyWٵ&NHv>>ݲg7,I)Vxxs.$6ƑZ_':KJoV_(GPc+FOA?,NJs00c 6b8[i33Z.;?N+=[Q.YrS]`MPN*ŨX}Dk7)W@i̵ E(۱lkn5 A{="qW_XH\76ED^R TG##k'x,1X+krV@й s%-Ċ 6hPEp-)匴Wwv.E3!V18NejA1OFW|]f"ELLft {wS3pDRSj3;~B>QV8 ųQE72]ԆS֦~LdhA+{c?!$jbX`"mmΖxTOygPbX)'A}fVs2a7EsN 2Gua&D:ݥ O#'gS i_,wt9!n]}jpg^[*asn>UN˔R/[:mUjRP?g4 7D=So/ ,tΏUzt(|egQҡܫAdBwSSRZ쟝G-ݜQ_l+SӑT01nN\?8#g0.+jkR;͛% ?= 5lFs_RJM}Fl'MLbd?3&^R]PG !TQ[+}1$@G8G;:h(e*[ծ TTi걧M lmP$I?`8ihsrA.Y-Uۢ?ZV688~C&׺1s݉1D<\B2=<.|+M\{ ӄG-ȉ`Hӂ75h0 +XUtӎ (1j(XFI]B l] KD S$:7BjyiEZVv%0W4]{@(p0gQ _v10 }/t.'JN4e^Z$3\-5_U%]pg42f.~eX7\\,ұH>|NLEj]9c0o^SNcP$UnzLHt0N);MR6}Rdw/=%DW P?|p/7)F=(~rGIρ.Ē.Dv,%U~"C,YUމΊ<ԣm/IW0j;UHf,9!2 s87v,kGtAzZ(.K-REs zCC譎|Rc蛰.ULCQpt]BM|=uJ}7r]k-)syy-{W[mI%7Ke䧵G+zF\;j'9'w TnmR$4yB >*;|rӋ_FZ~b[̻Ҡ`EKjXwM{D Ӂ!119B%&(OWz:EaX6@֙njGd*^d%1I(@d_$.;WY-rg-"Ć8t{LtiXk=Z:tnjUtM·#"2)h!w7Ha[āaDvE =/(7jRUH?^-n$jzeu)gr bb&9TKpf]R.ڶA\NMuZSwI.dctlZ@Iǹؔk(?eHn\$mQhB7栛8 U ^;\Wc"aCu!; Oޑ)ub35Oݯ<#+Q^A^R!CUĿT%=qe&L@3@vBٳUas@ƾsR=fL`@V7{fS'V麭y eO~)/,JY2rMDK!x](` 4C_{OU&U(RB4szhE9̤ƴTj([YHo4D9cٟ%Vq3̟:_RS*9I ~7=aۤQ@s]Ј/'cgZ9N :b\Sh/Dk2)j} seσT\E{U[%QB-Bӵ{j.C P&'/"|qa8;Ż44"~/_"XϏ X3[qLīoYp5֔^ZbsLtYzUG\(pd8%I-(p" *"-a]oDHKJRK+D I=7{ա2n>OI0Âd觽s'pL4`rz/@1z`!MqZZVw-Weci+ jk]O%e6N(0=dNo6NoR$Ì =R?1${\I_WD405#t@S wUKs_ OxS.b607z>mrݠKg+[3t\fJO8PƝrTr7DBe% ZJEۣ`!oN!~w- ?V겧ueoDH˩-lUoa(mieftjS]qVljvCGzlY |vFmޛXbnr>bu3NMo$r!x,ZTn? dWG.,\ |NqxybTo;힞hO@O __⬎_8nF,4`JhyDyB)f['.gu"} LzK% (Y\/X+2nN-R֙^ٻZ^` :%h SBp_A,N~x:[N7\]ףôib& ӁF7"| ~i!E҄.YAàr2|S0fCĤ<[O5$ag/{}s Ȃ]OrV)2Hkgf5!- Ġn~n8ͫ &\28VafR)N9p-ax06Iz0 7ߔ]V Iw bbnJeK[ Tsd! jBa]Ll)+o.M?YU*!O6CyEsu/֑;D|m1=ܔ'f߶v셹a{vvSN#i=\oTtF'<>HMwZ^<+vn%1L[LR"*]>^O/ή4ko!?3Y9^1WxUbr#HBl˝Mhƫq9A6( Z1kuqi 2*"D嵷Z`Ղ[>.#mO㈯`9Hyۮ zM_iH&`ɖ;ȓv̖U{ІA{d(}ҳ,?~e6FXMe%? s0~ doe Ҡ)c'Oeo\wun%E}?1}/NGv /9YOk^M7R4ޡhyFkEgqβQؓ{xSO5W H\oY:7ʓ$&?{$3B r*R!?A'10ήO+u@,~ʸ CA'i+ʾc/>2oOn1t@ZYn92at&b>2F#Խ׆^klHNcPJ"CYyVh0F38fwn,AsQ8x0ϹTJեKs1dmQ2o|$%aݹUyD ~u`bcaC}]y6u@6r}6sG$JR!O3N?ꥂ&|6ψgU&[N 7p+ic`9݀SQN n58)=b~/x}M`8l ٮ9S< #C9+YwA*5opЮOB5.ObxpkdY9}tc@BI;ɵ WԠa#[C{4XSdKE[SϯBq Kp釺`b#L~X`SKo+SؼCձ%[|+tҳnⱉeep bb W3~s;0)A0 ;l?h豿"_w@0 \93\iga= skk f ;,1!Av6v^ޅX ;~U?Q\ɥ_Ţ-AӒ ᛃ}4Ѧ^sч60sNlp^kykJYqdTnW_ 9W3}mL9MFqa:SL7G vΎ8P#M(&!Lg8mdkrmᬘ?^do(|D6y޸i^ReE|˚;k?US?0`,~_y/Xt~vW2v( Ǟ6u &BjS~++(kP>&Wy'92DUG0ptBK7u~! Ml|h|P[A9-3"=3?sMarqv'5o<2UnZp>>j,J*/~ Q(/3-d+VKAQqa2>D77D#~ײ!=8"J\)g%Z$3KdfP]x74)obJK8 Ԕ>NzZ~N >o.h Z6^H}9UQbuJV T#;܃`&}j4BHkr2:M @wZ߇w\O:IIG֪^q8g1rU^R[f!< )cB)*y6|tV7Ex= mDq+88{ uPsoai]{qO6w H(8nMjZ RM TDb/_k)xN(|Ԅh޺9*SLl"ƷI=a6KZޤຼGG> YR\_ ZEE s,Cx8KX.ʺ/]RRl|Ae8w;msك*ctinD5bs>Q2X6gmÔC%aJh}zímƱNr{+aZ0ː~P /:|1>BdB\jGuX7 O^"eO4F&B/ɇWf; ]:01i-&+ }MKzO¶-0*J0N0SK3sB^ŴUt .l՘,"~\d?b%fX ιI_k=! R5&גd?>pG{Er-xK+ԙ2=v с8O\VfR)#XceS(_ =[5]؈cqMƒ((~^Qhblzw-IxL$]rQVcldq#L$ҙc]Ifwp"H?-:jϏҥXC~(*JZ,mY0~rNTZAգnv(70Z{mO^r.ٮP) a]|ENS2nR,%$yq8AևkJYF> 94`S1~t}#MЩ۟Mߪ!܃ǛpF/%$H < %g p@f '$f˲X@ݳ{3Wx^X_&3rJdޟS|Gs5~_a>AzhV;t?"xYU 7Lq ӴU!B@JSOxCELHaj9nәD{tmlvo4bTNGC ~_ X꼷^o9=sh\>3<} ͿXI tRWҴ:MP|]}a#]^[DQo%^W2C.{OU]+ռHPPT3piTP? duZ^Ɓτtݢ=4=p|Ag hZ.o5c-r!+_a$fAٽ SYˆR]^0.0rȿBxEIk !tC&,TyAN=jcgUM鏅"Hk)A%lJaFHrbMB^'dVkvJ4I_v7(UZX}-,=K6uThYQV+K9m>zŰ\DYPX$D2"ʼn>yDҔFg!.*R7?1d/N-^RU::6l{&^S]+#"}VQomWtJߝ=H  rc`i$姼EJKuSJo˅6%\^7p,6<2m+Jt/Ѧs<& 0Ej ȡ,y;kg ]CpgGSPknCW`eςCg!>g s HC<=ݥg]B&ZnfǢ'F\QK s7 J6fڡg,8J&_gwRWin יu o$SJ>Dң|7\1[}D/Ͱ8=Q)!f(X߳6 G0vNW(ܹM#$WfSlai :vbBQA"U8.+DYF?:pyJ=>PjuPR5pXo3Oh2vQprnf1-<1`rdkIjæ˛kf_;e:S_s q^ڴ:_= R!('xْB{P9Cv}YcG Q. YIG+aWH;-.=~].Ľ14DŽ%[9.eKX쾃_1`b"J"XLGq0Ȋ 1z4eX)~_/9/#pEQHR a~轣9XGEUͳj$SRf*4U㜑h~Kz]Z675ރ}KkSLU9 p%e\6䲤i5W9U2)Q /~[Ѳ5FDUPuX0e8'eRvER#b_\t|c;5slo7ygAn`):ie/q>(TT| c !9( )VMؗFyzjrFٿhVmgjJkd+f%2YB+@44Bab[Ph`!#$)CsWl'={$UP)]#\>hE܊9uVLdf-uOqH :bh`+J{F;U =01\Bm1f:,'2IF!^G K?^4<޸X€7?x mKƕewp2%<"k/ `%r /Ѻϖ؞5+jF^L~njxB}}"z"Z{Ϥ1oS߄yQK'm\SV|3>ǘSOO#gwk/z!R'v|:0q/11(p(Y JsL5~p wÞ{^vW5b#<0CA3+iqxm)e@t>B/2~Fϣ!xhb˺QT*RoS"4-Zc1a-,Mxrq @'Gi,bc̚"`_,/X_1%>g11Bz[:蛝0TjYQGͨY,dSE1[FI?g#"S/•ߏIEw 8Y٥l%̳{PgpvZVu0*@A~'H:׉Tg6WY0sigvy2Xc79>՟8nVIWܬ);9Gmf6Wlu"H`c-u92we`ձd86!, U.HB5%&4gvйFb킓НnG/E%B-0J;[tAQRW}@St!9tD,S7`-#;E:R6i.[/[_F,!<,X2gTt<%ާ}o"ǒۀ1eX͞N]R 7y޷ LcW}l$fɵ梾aئwtQr ;P' <]!l;ǐ Sw9dX",}{Y6sPNG5,ČׯF\n dCcAg*0Y)~f ,%ESE3L%\a}t<&. O[j'`0}ҷEhZDYՊ"^Yf 8'FS$EJ jFWL뎽je$ÔUP7ލ0+aAlM ~M1;tWF^dut~'9U+G5b[Gh"JXقŹr BK;(~u|}ϙ>m+ j3p8g|X}%nFo.^RG3jJ1qu|2h$4rV!4t QPF)74ʼf@"wvɌ齩ͳ&t2 S⚁ܤP+.v4/BjlEN OwVWqpxpgoLppv2nNG|KOB5f $M˨tzwRB2սtL,B5 i 7RZP?NP+vĈQj`.=w$EW.e6'dX-=<6N7 j4vK(f'Uj 蝼{@QμGXʶjf,5d#mtŞw&lKyj+"1mfXެDl<]W=3bz%hw)CZ>AywzŬ(Ô ijcߐ9U+ oۑOIӹ{ O˃եKjMYiz<=w@+=xޱciEs( [ɼz>#%"VJOڃ *M*V9MO" 904.7V:P3LMYd%[$(SQH, ,_$f p#s B7#ގav8ɾ.,q#bՈ2 >jJ>ƌ(ĒAW"TGm5ԢY39T?GM Q x47u2\˷>Oiw}n OؓNy[8L!Q:d`OyRe:ڗ[らhS5 JcާYk8+)!vn\'pEY a'&͏edn]ߚi dL(!WUsP5 ๭9?Mz/fn^|Z@^$_5ˬNPx0oD>D o}Z*ipag;Fi_ 뫋bT?ydk*ҡ3a󎿍yT:W _^r4{IGo8|\+BskK+yrnڗE_ps:3'LxpBh**gyKۨy^EFn lP<蓅 NXǏfOM̍㓭4=5xPZᦠم͋2"3lZ"Vros:Q@tΥFel`C jz A`_ `w3O"権 K4o9Fck ZDAiFs_Ȁ$%mXeLB^zJUހw :S$eإ9TiƹS\wvz9'jHfSE*?ϐjO?[gPAUU[7/Iz ~QFUaW}ea%5kb.υgoc Ш.7]]eRDq SHj!QQ3wR9q[3"oر@[aZΊ}JD -WZ>~mN0=q-ϭm'Leih )"+`G0μwS^=ѧg.K'tsu 6n[;;xD ]-H,IF>AZE:.}Դ Mƞ?{1&p0 A54Ӧ̮>.K{A>";.Mx˃-` ME{Qgri6K7?ɥ W)R]HDaTJF1Ku6ZXy3&-a@P2Ez߽# x~-5pO5_]\sy0ϛPxޏT)2[u-MM_ܰN6;|#`-OBqs(.d}7 5XJuc͕]y&i Ļ7纇tsatO F]kmtd[H ׷4^@z1}>Sb\r/_̊ U*Hi}b#KߔЙ rߵlnnJZCr(|5BAnCfDչS*۷G{תt37rꛒB:-T ZC84j=R=v—$)1ve՛RHŨ#սg]BËܬ-7'%$W(4.Z4úswJζ־a EE :A "W'' V%s#SN=]hђ _b- y)TN ELAGU>Q'{jvVlrm$W7 5fma&v 9Hl":q o8]Z/x 2T<|J Z$G̉q *jZ\J:νey$5zVɞZZ ~Gf*OҀ5] hx'<3 zQCu7ة_}ۡAE" rʆVE4"Yeku( إeք17=soJLkE外  i C9;,\$5Z x32(q%S"H:q*,;CJX_NN :+2{ݑ# K)~+=,5Aڌ?aox,$.]y[xѥ@(׋;cQq~@H`E> v7Xx{rTzVlۘЫ);Pg:.!oBmJc4ɗzhAz4Ke~f1Z)3OfE(EG Eⵓ۪?%D& mzg2 3cgd~\*e;I|Uf1q 'bY*]ɛYxk2.FypF+HCd{;4!@sEl=r\0*b0gS%MwKY;$yw OWe<ΞMbkPR>\$y71A/knh5VƮ.}:?2C^R"2ttX oGlR` FU&)jlD !iȭ*KqBs ۪wl7JaLPyi|PS <qe׈h{^Z&0:B5_(Xx7Xƒ}|Xv]1߲)rˎoEQ]fZ LY+tSv{#R7^l|G:a%C50Bv<'NppZ"N!SQX[DŞA svG1 ϼɃ[Wjؿɢ>uqe?gLNF Sǫ.[$|)k jtg̐vH򋞰7a]{.3tr<\Pz0lp5̈́ 9iZcr͢tƨ[h_ʃ^ɦS|jعs"Ô1BxҒCN$h]`1h >XX ='.tP'1s̞ŭ,xjRLij1⠦ 88oJ)2rٝ-Q.[N  M:;G @E֭2左փ74H 2ǭDodkn{<îڝF'f]f沦7s% b!pUL?,e)[qb:FťÙi$Ѯ 3 =\Y #Kbt4HcC̃|QZ8OL>[9#]YƐZKΒAt⍅/y ) RXoSY:7L.c ȺIL2ymL|>Ն0^bև=dk[?CA b`"k=F ko}#wVUJSZQ =-E.yjkD8P6I'w@s M p7>8,[h/"2_<\Fd  $DDf}ԺT LdjۗnY]1EfXHrim]ʠ`\Y|ۧ{pb=a/=^ >cg Ogn`aT$Q-nr0b~/" ?A. zJUq lSn%cFl.fGMG&ZۤT.Sv<&6ɮ7$UY=,ɅSe_9+TalYV# db ԫpR9ˎG[;y m)OG/H 튿M^!MS+[g/mVK$̹.ؠ!ѐ?NZEV/WLۈ0ebzaBC@Oi6TEspƤ!9=}]bsY*DR1ʻ!)GuxR,79|_FYQrƒK&LH^gJ;RC=s{]ylOŲ.Ӧ:zf[ڤM1jFJAoOA^*e[pݯG+]Evi&dhL ?}!}ZN?i-i%OZѫ)ɉw$k-BQ]]u-<~g9ho*DcX%bX̺g]H"8lRQvLNKT~p{7nZd_-֜A˕4}` \E44fl ޗԴؐri[b/*A}M{Y1EM/ZC#c/SPanA(gI"Ԭ4ݨW@֤KVzqs,:' ImR٨UJN9 @̼l(6o1jչJꈅe魘gϜ+5 2Vɳ$Mgi˭lW';]PFڜ-v5xLK+΋ ^Дy0zG}J;fgve‹8U^%k.k80o}>X !4/N`85 QF;!f%V*;srd׳s^ʥy;ԇ Ɗ%|om, yH *Ilu X y(>6 rs&5e}\8pW1tB'Zr=xQ`I'w%c޳b?/ {WTkt)DxneE&2$`ou뱱H̀ND[Ж-|Zm_8؜9cF | q?Kஃ19vEs~Ma1/lu\w7@3 iE&4걧Y^\R?f5$m VVf'ٽE>1^MB7L@S"&h+Ơ[OLZtT&H2f(2熞B*,Vܸ]탻P9'wdpl H{b)4 U9!%ʬ&9WL䊐RqeAn}J); 52uJO $9΁(wM}"duTwnSj#NDfP>ucnv6cNybd@pj6A[$\LHmJjZƘm jZcdZv-Y)k=.| |{Ŋ 9fAcF֖֞BBޤb%KLgh&ǑʯwDؼćVT5l, &3H$ZHV=hEO#[O+;eX) fXӻ i挺7- Gn^:\S$Zmm3p ȰH lWb&-QdAAP9`Dg`1R#(mu7ݩN*'jyxYU)8Iӭ&zPvY/dA1^ %F~\]n8( < $K z\L/3ƥ|4w)J&P|wf}8VTXАtr TP^/9:{WX{\jUƹ?sw٪N0.W!71!NQ1@_1aRw=W*m^la+Ge9 D K߸!p $ 3%弈XzQJx/hurfQ47SgFj8usީK2o51 GEC>z9N XQm* x>; Z]_(ic}`j#>f %%{k/ur7&owA䀫K]=7v &~TNI-M'uamQ%YU p+Dd+UC/ 2VFg$]AČ[9IАۄx"acp0bvD7-9R<=B° n}}J'עOUɓpۈ]k: tJ@%.01Ud}*(PWysɻl McT9k|16ݙ=24A1y 1"~o+%Oy6@Tr;x?!db:.LK0/A#ï+~+&o W%K!D^}:ˆ=uٲR_ܹDtr g_i>hSǵGLpN nlIsϝү 87"PdousS D?+(Nq9(Z@0lE2x?G,gƪN8%BL ?z1;;t]LCo)z[2d)B'ENPHMEEr".ߴ!"&D-μ%SR/,Cَk\2ThS8Hhoh: uwK>!yt78ep:PLCmUiL8[A 8KYưΚdA.8uPzKɤ ޮN3t°r1Ґ{ZԤXfZzcc/q 5.q]^ÉHMLmT Є׽E9}=?m$GXQliRCW#(nW5jسqW:дߢt%Qf펚QG9ASϪ'& ngqTMBd*~ nKp|Ңm]o\HW}U3ƃ(M/P'WщmfpIݻ^\5Ga?5f'Q )k}p-"pÁ1jm˕aEx1#GK*e% 6 wXuTI\J4Ytq6aHJ~=0CQO3٨臵u)]:a#lR?cOB_ W}ѿ`"LJVCDc{qer3tqΑ[7vݭ .iʽdv?RiR{ cV wWEq>fNݖIRmGK`3q @RR/H+ @[9#`CihK"iFG A]Ӏb_}(Q*~5 cFn G T6y߄5Dpjj{XӒy!`A>pp6ˇeLk5 >Ca2k=ݧOe@c356[7ewXx3wTZg1VLh㝼<0xDK ,RPQӓkqɟ^ʇ͹$ScCǣ"Hic[1@HcƬB^Zٹ.Ͷ_>Zmȱ'qf4{!]6ow[/@U!5{ȝ|HbKe}[!"4ohӘlX #]j8%}Bxݼw/[6?­<2w'B"f'4/G0M _\x9b'4|" XO\Ģp!$U[y&r B(acB<* 7ܞ]K ` zV҆k>88*O(E .~(0BX>\e_R`>'҄;7R#p*AJmdPAOH2zۜC^6|Y1 {k f3LLq !D'k/[t`){e{]`̱ŨLCA6pb{lfܝy֒ IC2+Z=TszyD^m$@^:LT6hH~1 ^]iTݵ0w\`G+ E._Y6?8Ii@qWѳnPAB=㛌#^I\7uCRQ}L낮]RO73oo;!v&Km2 }% 0rS^5VEw ?8>i։mljxdQA)޿R#KœV;(bR30]ABS6)lHXֈIX>[F9 n\2GcQ~yi 8u~,Y6Hֿ54b3*u_Sz) _ʉsօ ´O$TV3qȑv>Kls?jy,r*|5!hsT刺jG`wo#:7tdaa ۥг%T[39Dh6}xUCkE+Ww."OyL a!rI0 G\)Ԏ2j=6":&6 !"l7Xcعf~ȿ5Si4HIfV2.n>0d;g]#e|$m@2ޟ['U_vAۆ ηU{ [t͘QVn_X5#N={V< P+޳&55#Bea<QXZjEOӧE)&"!vXğطPX:UZƢ3wWektezjmI#]jV{9M]*3h.ws6 2ZnȮqU`3f (tΦI&5ߗ%a[/|H_R`zaU w@2’w:f(VBdXخl,;Md+4.3a 6 :!=$\aF[o U0!&O2rںMcoYN?J`ͶQeaFF6>=m2 s8_ҍwI]b#_ŠDU%&"X/=dbO&D DA*ܚt$;a 3Q6OVf[&Ub `h T`^W6?ΨLƺSMUݨ©]vJ]wT3^pX6jB8bnEF܋s!<;.RH;=W tRJRW.7JwŃLɉ(aيe+N lԌFmn[aŨE7qR.5> 9ݣ'oKVg2k?>|fV֛Q PA(ԍ§ݏ0` eٷM/*3X@Ю@l,mt\3I6Q6$>jBQB=_cOuLP?L% 533A}Er{W޾dl26`Y>Na:we{wof.wFJS%Q+AʲB&.U\)^zb{XtnN qqUAz8R}zK ;CWe冘ݣ>@^bNB>:(fJƴSizl nČZY).i81&DB}51.g)3} zEsFŽE$1+SCzq~DShޘmAk%T7i'VByv~|BIKRkR!?fjgn(𗾉n<i *!vkÞ hTmTxq3J0lp2swkmׄߌ_<x:г%)\ Wg{F32KrTRb}ͣ$U<YP=y'ǖO&df#WD7J8ED./AV5t bfaBE ?ֽw(> 6ы9luC `"+R/{m>~ٺ ->'а,@y$p׸n%@hlw}JQ:Vt.%p~% 𷺺6 ^D~ +$,M~ҙc״waĄ\$@A'%e 6#ؓ{Wd|K siCF[S'u(kc 21CߨLue_ůjiJb.XvK]OЯ5:}nˑc_Wa%Q 4$jGzS\&.1&7V ed Eq;.FmC *BqfQcP\dk?2CDm$s cұ[–-x´dH%v;P&@UDjQp?ˁ A;1, rFP'䅜o8͚;8ƣ< xWi1A:!S?׶lAR9WZ`GuפKcT|=,L5dq>?Ep)qWI.FU}S[mDn]ja{$IO;86]~OVUߦA)Zwy% M==T`LǓ4 E>a̐ЯuAugC93v.gz崻X[{䶌q)Jj=YQ dꪴjZΙӉTC(0 q`g{P/bh]>/VsaLvpdTxN;ʎ>J sHJ!6s W_%Wo+"+E pxz*"XL6:T`]9↔(O*YsPMyn]ȇK4b,9Cei| ]G<)B [2͕YV 1u~1 ES 9C Y L^6mLxVIC}/"Q;عCq4D 8AZ 绲\2j@3H DΎ.q{9 /#~VۥF & 9^f>v8^b[Lǃ?z8lm86\u jT";G$&ғUh~p#Ϻq " GԦ{QY~/]|SE]XT(1utD@nʦ; t<@ncm"&SšLͅsekyuQYpd~lψf]3X YndފGb<K)L,;Sާm׉Rc ` :DޚP2"p'Hwd$CH)ċCahw|_VT#ͯRy *SY[Κ:-&ZX-gz; NmVL' JT?9!y*n'@^1st`!p%Z3l,ugh=0SOd0ւ YYGwpgR=8*k{*y& 'r/f$Ui`\tP;V$ѕі3Y`3^|5}c-Ģ,9CR2F159ő4 1 Iڜ׊BƘLB:8j/&8ux8,_I燛3V4wW alϋ;% -e >iSMmn4[-,uImދH6H:/U\.GD}/{;mNGF0 U@bŴ*P nj$9@غ8z!/80L ,W\wy⹚AUgcp}Ŝ2 .H/tfTON)!=u u(#9{kj"g^¤;Us!*7sZ*Ż^tڢ>U9F:~ts8s>O-?>4S)!Oqg!P\e[;f ,t8W%әJ"Hl56fkP& b2' 5jk.gB*47p;v RUrzu5ݐ kRϩ0[,W3^6ɈrD[㎅?EZ4- ]GpUL)3z>)JNYx@YeHm!ֻzq#q\*cXTQ ><̲\^sIvxkG֌7ʥhӷgu>"j:WuӎE%1)6JKv=C3ؖݦJYޣ%#Y4s|%w.}xC-nR0^csrNw9.` ٷ2k hM7\0.R} PYi0H&LXO73zwwIz&.{-Ε}LUCTǧKۚ# +RÓ5UBx[Ǫ]m0ȍL@P(i)bJ2teE2 w+OÌ^.P{ n@@tl)vpH9 :js還'/թZv~+r\S~d{v8HdA' ?v~-]B;Ɠ7^Y@g _/Hxva|̚mρUzQHInSykcx`{7 Dx6~&C!_ekx*Wd%X=l vHdy=oAC⃱hTtNjCI=i)M؉2F:>_ªS *1 _ç<w(l4n4/c c rL2, ,,,ŗˣœjo9.˯;/`/uڭ=Y\Ɍgʙ2 jHe?:Wض!]|F5V {Fb?ur0.D!(LT%rK V $;7 \Y3+GSH H L\R US,.ˇzH5*-A)@nTZMΟ;5?D錛r]Ш AE@"~NcnhCD ?aQʊ;BN=@BnQJyl 8](%ezpzJڈ^RVxٜd G8a &8̶aD5SZ2RD0~LR~+f֒ ϻ`(<R! .7"6w \)Q:O`yMLz|#t1) gu C9OaD٨#tFy%\5HZgiw6IF3qxx>9UNACI)<=V 6enV} %x#Qi:hm "!ejI&%1(l "Ewmf\ q)v,i'Y}Ġc2ѣ/H蝛+9|4:n}BJN# hҶ}ڡ[3pMp!o/``pt!+  O≊EJy7,8lΦ(ՉErvm#  3, S(?SʪSR,֝]/,$+9w: pf8gX^Ed!'mӻ~B,w:f{g锚+p\P&4s,qHt=W^ٔV@c3wu:#g" ,=,ҴX!;p/#=g\2w'm\KP)\}dlcע*7psD$y]C+N1cÿz6UG%Oa+N*]JFMX_LA=Y:"RBO:eqomss$hMEkt>p _"cP+&$x.aoa8vIBkU {B]N{?wEG&BV1I] smFҰ~[/6x6A$]?{sfQːbgsx8K# ԣDw24~HudWs*[y&m.ZKq2淁IuRwesq_r ?/T?rQ_- ߫b‹ֱo\>Uu rp~Hj(IN!֬-E{2-8(88̛ҞՀ.xlWJ&<+r! /*:wflIQ(-FR uepVx L 93SS \-h-r^P\|~M(7bAS'4sFrG,̎iu؎됮7!U1^ ' =*^TFI-)*U\|4/\d^"Qդy7X[nթ2ƕv`✁"Ic8zN' MوP$eM O =K*ҬȨO0͗P \ t[avR׃j,>Ϧ]/[y& 22t(JP mNFQ y 9 ʹ2ѐ2XfLܡ'n.>Y^fS)\|ybc =I7q=x!~`W1Cx^2t}Z9s$YzW>.$1\]o! oi(YT>8_ ]+R=?xHlH96ܮc"6ߒ@ܬРj$`ܔp{7JdwH58LK*/Db . j0d/}5 &kvڈZcnix(C/b|&&?eR(lVvZܧpXް/_#W2,VS SONף(R[b5fna

acbsc`l>SnީCK4>I):N$3kS-SzWSrۆ֬˰?MU2&aWL[*yv4!E-g) d.ӋTKNh5| 4_/#ZĿrE\]pu['FǗE>5 KyZRF6L" K4؞qr5=9ImQHgyUF-x L2yl'bV@ CCG{{2ͽ2wzB}R9t ߩ|ξjjڳj=VLa ^nh5'ć7}-~e5!m!_@N9bw  $3xXD'MVm*zD^spM`?(`5/u6@fxK ,H|l>Oai w!Hi#'ɩa5u[UW N8w!s ۍ Uu&~VVLBR?mN0QNQN*+`طW+:Agai<֑Cvv +8ɍ!QD-a4SV4zH \^Rt?Livy)2%~gXJLE0AE my"kqyTHt0͊$]ZE/'L9>8pCv&C؆2B׹jvЉ:`@'p ="eZj%%)3 IXYUSLVf0,#,ې yLI$Z:DJ⑴oLP5מ`/tW{E>E&U lTHjZ?HTTڒ&Q>,^ٶUzA7pZ*#)qUUeř=>8dTq+,4[qOhHb I6{u$:LHLVbgaxc\kvQCN6yr򫵷4ΈB0Uz(#|~SBS)2JxR9빫%]9s,fbe"({Y q2>[O9ܽ# g5?9 A_eszeb#[}P>Х,/-E"-TQHrݏg0ޟZ%kxc)#Fk^dS÷ȹU6 Upf.OE֖M܂]!z4abǍ#CPt6EaС8{N7=!2ؒ|V903(;0qOVȗH/WTz~1\M%N_ab $Z>< Ou cc /] P/@b_XqX=#ʪ;Aωj^yX Q+4SoJL0~Н`R!Z/eRY%3ݮڐu9,mX㜜)A<҆yyAك冷}5 5^]g+餖jk#R &i)RG]%Ne N9eV / &GK\P["Z.U K\Y!``5BxY q7CX֧YBRyb>-@ߵ/i %5^ 7X\pq^5+LNՔ0F9>[q)g3>/w*,Ipť ) S9_[G-KǫV=0Y e3\vE3BAzZUKs!L-&r70LVuۭ%ٶo*;TT97'I= }BCUC$jR:9X ;]#p xA:{[y.xH:mpQ֖@ _bU>C^xA%KIpSqK d!6"NQ+G`Q@us+i]nLSZtD(xTLY R, oN,N@F7>;TPͦ~鄋FowU[']=EYY8YFN+8=-5x)TuMTmI#s^%Φ؉:Fz š=Gӗ_y &Yd 6Nzq-(hF(š9ިpI27CsCW:2K-5#ƈʃL=[Wйײԇ6Nf37ua qsj wE/7:q)M0y:8ywCM3CG<xEPbϚD`k*N D~zCZ@Y?$q)We)+x'h9 Waqb=?tz҅$cm -x7\ EKd)䚶Rpewh)dyRer},y@4 ! 1N&:R^E,\}r{̘h(gi 1 Gڒ yԤ/KΔ=ٴatc1qz[k (SK3#c׊n)7*ɠ Z+ P@lM:H˰43 -"xK)jޛ1[ܯ&M-3L{ceũӶ;|<9RtDsA +Y|[$ACA^;s\Er&錺ᧉ;ϑi-Vdn2" ]U3jB'zXR&dLqchP!P@_D̉6e~`˛e7jp4iq;x}[iL}A/`2@b戮 bNJ%$x}̾?3&F5`=xd.)`#-Ʀ+ 쌄'Jsp>~$bh+6T5.{Dmuyy}@n !kggZ3=[ kU |1l"z0jF9nOaڛ S ua J.F Gi@\Jl^4H*9[pz}eouyX}!W!*r_N ."阺 xXsgvmItVGMZTE4X\E3s4$*R"kO|=[N-`$&A~jNB7<;|LM.H xNdֻu$nyێv 2)g̟aFHXqd];kC>4OHkwvH8Oa! ;wNܟaO+Cpۆ'W} -d'wB}+3:)p x:?$]V%_3nja.Ym鯁fJh({$&(=LW Z^5_r%!+2_ F#2Qai y agi"cG#nj4IIg[n- tW# XM Iz;[R[Q|hl;q_PҔ2 fXA]XN)fO]V;MZ9_/3(CnќYW"K%XԖ;v"Ř</yZ?j^Tq텢%۶jTMd7o!^;0幵7LJr&{JVB3/'$?(H <]/"psQjR/DGQUfu[1MUw`j{3 eF$ AH3NվߺZS-~'U6[u/NcX6XrU:Z,'b_zg}~% )^"vBDuj Uƀp8ɱw h;s+j_:.U]p15elC`֡6.' H\aE&'_(FVP U;κ9yձ,mpp_JHQo9D:˨ n"0/[cWӲ@ Qt`H:iö!S`z&:PW6J8 n$I sQ勇 Kfzo˯kMrcz52[Y,o?QxO&RXt_-lhqͽ%avNxխH)wRyP*dhJ1H݌r06_u.\<Flf~K b\X:ŏzKS"=0'o5 \uxW$s0jZozcZ`a #]Hp5NZWR:.*2k=s5ˆ M_  1Na-HqP{0dVe(.Cz3X >0(k;4>M7 ;;0 E#g"U OњϿw;TښWƧIV6 0tuό=$"ZIU'V M0z=t93LV ~d- \fcE3h)x‹G iW\Ӱ5'rKGst+!MyHfʌMz\DJ*} H2m)f|'Ӂ=ȅk kQqEުbef^ ].ȫx) QŊ|4{h hKi˒\>>ߗ+8#,tzmqX#dP(9 "A։|c _ ޣL|f0@B|sp`ϊvo/;"]Gc xfVgVc?[:>RS2NTizBڼg{χI+䁄(EC?6w/X0d0ؾjTRՙJ[oi>)%NUX6pϴ/X~\Q,i$OS/J D9yD%Qyn)]ĆS i%&@ )hVc)=W̅Ճt gB1+$~nފtIo.HZgNjYΛs1f87xv)ȜA.Re;<3I9p*S}s fO~wq=m dGsѽ~^W *,ի1]Bheu1y%Ke%v `!^T0Nn㉜mv::ti_!lJTɋ;&ֹіgH ZIEV.<H(?&OuoxYIU c:S,"GHO:BPb7tKxR uMTsbDʳgyxL f^j2"JV怭@8;V8Mi}#mE㧧+k??]HSOlur=[~;em{ fw־ro(o HLѨߓTtYmlt&^E*~cP@DEk5 %Z)5aKG(]%yBxh̑u Z(bcU< yߢ*yOq<5e4=wctZ%?Q,`m'VB}YaM;,.1;WKj<awNeJ%{+c2MWpTaFDTB0یӣzVGΫ3\8~ m V+5A(p̀/xcE Vr -IGEd>y+08 ]`:=xH*Suqg ;cۑY7a w0Sw ozŸkGN!Iv]$7 Jz?r9WbהQ?Cȏ#!zdcqGG2Umu/H_9,4q6J|]Is{a3}W봾UR3i_&X"XAHhqL幰w[h!`"T"# 4Dy:EA&;hjjy<:bQA}_7W䯎y1F3SX;}x셼p$pLaY1|_4?o,ihDr_Wy aj;d6q 6{ՀBA]"b_/eN3.9V,o e-rC-WM\D)Ѭ'jTps<D&u/+Iler -|FJ oMड c0nOd MDnާ}QWA>]*GO3j5R4nE`/Q,(WVM3d(i(D.6zbwI94'(Qe:j'[s8qbVjK8hJkm A@m@WrC*1Uf6eozd\Z]&g7%Zklے)d1f%<-y Xo٭c[򑑚8,Ɠn$GjJz&F2eo\l a\@ K!\xMIh_-TGOԂ[$.2et=(kU?u5 *|KE0nT]dt3RV x¤=$Npql|i8i$!J߄OV +˂0Nܝb_nѤY& QeOgi+2$w zq|"Y9GzGed.!Owl0'S :}Ы[`С',Q\͙Ka`pi~jnsg: C [(ĭtN$~__ vs2k:;7Aɑ׵Y+y&K賗&D9%`  lŅ6i hi,Fm!vlEmv0㿐|9TpD9?$v}lfc&?w0]5'L/Uhr1ѽ}o[45K/G 3jaDJ'eq> cK։gEugʶ ~(ps5X]o;\QFj*܃ZT)Dhs"b}˱jL#Y=ْQ.ОOXnzL*DbDd= %ٮpIB)U=߹ 2j2GrQ{gwgqy@IP_kjʹš\%,ib11M($%u{5gB GȜ :6>KZأn?8ht.*Cd &t$*  SYh(5Rp{JD"Wխ|͍1&5~w%X@=3$Wv~¯,ԾI+5lhw3S {HFCX*/ͱzrzUOX3E?&Ŕx oL ՠ?MԐC?H Ai:4]2W(}kdxz\7H3`{]4m{_*8h#r$)lmbsj]P }(W~O{zHjr^V%ԅ̏ɋ*8%Iu2n8W-0N٪m 6,yJhF r"BF3o}|)l2^n ݀*oɃg[@ Mx ѭI(7]G/!6NoHMt5!2jg}#5]I#X t:C"Z8vzR3:#yw;?)8Ě ǰ QS<zcS] ]vYCAA)"| 9oJY6}t*NTfվni#lJlf`GA4$_@6`[*#Plhz<0]RXN%܄އ6Xp1Z G^mٸ}ml'4xح(hN6ukY`ZDxa?)gfJAlcXkY&Zҋucv fQfh:R @83ľව1o,EmfH1&D4H _[e~0RH&.|-/V>b~#T /xFNqz#,}=I2C`)y:KCˀVfv|} a$ 0p9fqjC/1)7z:vs[-]OȷLYڙص>11AA@gxޅCAX(1&Wz1bCipH5ћai7Ez7Fǣ4N'鱏? 3C{NrZk!QCJ2N?kk)Db5(i-iǀ2FÓ~f4Yaև^߇ 3T׉#|)"# 8>uH,"Ŋ\[J{9rbpUph6c %KSBuƭB]- Mmΐ_4Z2=ӏ G~*@@WH<(Ge 'dƐ _f~=~MЎ:IL~y>0isf M'l<䕽:PvH@m=;χ^WID,v}y^xVr]sVS,R%\!yfAv֩N]qc03Yx JLOSytȒNQS1_4i|qCaaa"&F*ĩwK>Im^[?u\aEt Z`c,ASQ< TLx8k/71Y4ڶec !:2nݕOP࿍w"}Ze3/4iXp:(DE✗VX{8ME|.譸;ZԨzĐ{s lfb,;w>4>%'NL5#Dث"jP'ϧny٣ '껛w:BBeK,R:J>M ׂmY+S?[+PEIfSS^W6׀̦?pᵅY!uKB"$؇*FJDʩ[Gb<+ i2B${` ˜-~QTB:)s{ey-1>6 1A. -5mܦyKV"u!_՜í !_5jUEU3OV4>eϷ+fmTƕn<}~BWN Qr 8 V\/v9$[5 1P٣ jD_YX_X<]>%H8|(^Vp|A7{]zF6lIHǣZzo,hZ COʧi&,i޳W;Vk|7'cR /vYQ[Q+aN #%9F߭+~DӦX)v1hsesXl9pYb>O@x'XnF-C94yFSQ$SQTp]#@V9rn=>QK%umUj YiOA$T%Ij:Z._To7j2Fu٤ZALhy #L[͂U퇤ȗ`Z:]QZ&^f9P)ѫ#.񛲨K @E'Ckǜ·lJzq> Dg0OQ[>-Z.:H?!:.gjK9ZMvO"\oyEKEtmw@ٵ8I?_J%;/Pb_}ǝ# E+d$ ԒI,B[HUT&)4H^Ra]YD1 %({t GH@HAī{Ƚ8:ؚΤb^tFn4.㍶" PLyt/T7CU2PJf3/نvH[Ra^r-6ƸJuifYJs&F yb#iki$@},m)ʓ> fFJ7EDRkqڢe":nY"pCFgzI,g_8JܪVSD+]x.O"󆗔r8"_e~{ŧʥp}٧BzyiIP]:С@p[vD]ܠCF&ORMbϵ Tq,B5\4d2SҭCe"l=Þ=.hll>й{oa/\Uk,fąx}G|9ޞx>cq g>:#$ !X-$cA1\?irʅ@K8;h2LxJх!\&Ҿ[O آu7JB#wQu%3p;u2d' |sD͹JeMf-{w31 qۈk:tYPސ=<$jvsZwV^kYwԾ͇wv,&,dR(}.RLJ~{̦nGÿ=|hʰF_P >]J{Esp}-WQ2Y'3vrvࡆ/zOYœ#մv Xr!L]H7#7.z$J$t$Imc(vUQ Z:vPwl~AyNz펣B7A%`&d& k\ S]j>I_I0Z8[1|5hm͍yAe;{:eڠ>ZMʺIWu<ʈ?ICgҸtrv0/~f)$`-ʺͽ%.ax\"8ʇJx@ꐣz* 'Qҍ)K>P̊z@04w a[I/ߢq8hX2嚵o]@M υ^۹dl tj5 ݭ㈼[6-{2YCqW+fOF C81GwK4 %K3gAqo%hK_V?vP.gCpOVZz})!'Saa^T"j6sUFO7(܏r>˹{(onp}&2|<1:;[W7s;j҄#ΐ#B{xs,vV Z?)o?g"W ]#.}1 !٧6A&.f0s#CB09Zd^^ i[r`BATņ9E7v v`N bvrtɒVUB*(כW G0mv=XoӍ\|׵_;௢^Y Im|r`#*IMM?Ç1eVjʫ~ـ9#ʳe9 R9sHJd| ~J5Ԥx K"'FlИOn= FXv˥Ӟ|M}Fasjs-oJ2g>#>%C\ DD(-EVbd3d2Z*Yq:/CQ9-ۥћMyXց,{h7BI̷%z$gz²#Nt$v !.wm,𞚳9G$fJ3LSlE(,&Hƈފx܉MJ&Eov$~VO1\<-_t h٭G0?lHyc4{(J9w'^>}X΃*EBP_ԟ$_5QH1v-Ⱥv:BgW= %%p7ܔ[cI\O_dG%0-b̹jw4fr)eﷆm4|O74EAV6~OAK9,>wWǪ?V-p^<τgεȼNE)`%yFmdD`bvəIu4 {H،;ui0հW,#Ue}bKE=2,N(w ~ЃsBUH롦p-(m7]Vv@9cZx㼟tU}٩J5 kձOď[nAڰЙyp_xz>Q0|'K6=XyY-9ījCE)D7Fᖂ^ xOGu,^˭!%l>NLSniUPPsiwԫ)r#?.fY0N0S7YROlGUb`,(n؞nUԙGUP^q N Dw BsB Q֚G= NzHIkڻ4 :| t*V;{b]K# ESݐUD!`Nd8/w e/ |)nI%8ς{tր35FU *mih~VK4{I'ɣ<3 psٌS䛡˜~vD9zkۚgl"O^$=zWYa۶?XNw2~BLΜWy=I4(@B3lGV^#5d{jDq,I|D]2eS>Jn_63.ttؐJFQJ6d}T?W|QRz;XޛFsj%>n^d>& B; d}3 lB޺=ʴǴXI$4as33uSW뽍DsINCĵ*>X$N-jp=\՟׾-&gh_Aimz1Xգqb%5 )`sutX{ MPrc rnt]iI¥V] jKnVwЎ\_rw~`N6M,peOs3ƌ@*Գt]tӳZ0pMe(t"_TˣQ]ȀvV-kko= Yœ4O2gi0ÞCVv5 kNR䧐A,u׬~$_0SI6C 3}DaYѾ_6%{`5U3>fx'WvQ%6f B%HplǴ Qe,?~Ln2\Ed +5Fh Mӊc'3:\4saLLNU39b^" L+ɾ*(Fa#J)!dfnm[֖Ѯ%]9(ftX-->QS:lϤ7&S\7~H͕{>w %Μ!t E,z% KP4z-/J &j<)!?n|?O8K/\Hwm.%dn/0REc 6eG"E'{xֹcYr@Yzv a!cx<0*(ā)kXi0RH$A}KнDKoV&JR=q. (~- %LZ}~æ MI&b>dm}(u5X~Hj!|&γ!d" sϊT]'~>o9cV} `*{G$ì`3٬4[KCf?IʫRKK/[/x2xx kS~f>)qRY&a Q?Ac)wݗ?0p~'|z|e\pDžH՛sБFݸ(n!o 4u6r'p`iěGs\"ȸTkW.!Jx7 ;}e%Ł&`&$Sb,rl3y-jOO2"e .vu %OQ}&jmֆ{&5WM v3/,"w+ZI"ulE|NId2Q*&|#aH# ҝH6m 0j=1uZ3wZeY7E҆Q sNDq)zqDԄ47҄y-NFJ< VUoW;| 8M›7ͪ A= fT?Tiw%~Ϡ^0 ?f":] x}!K(t@#T o˜PaRQ]ݎ|4~a&hx\LBfKNb"I(V1۝DD'36sucӃ\&JS~wkP̝TgLD#m*#P(Nķ 6{6ˬ@H@$hQ݆ )[T냊5Ԭ5!2fk<9Ȑofw:נɢFz( $ q-)C#rg+r!]Z<E'[.ZFWniq3,*sV⹍)Z8^I-gZ'-c^ݴɽh/j)##zp 8 b5cVvr"n@26lO4ؾʥs!q l|'46\Okx[r > 6],Y2/`!L90M%S$˾I ܅R%& -6 Đ\Ɣt,7֞" !ϠA 9?|٬8[tF3'ɭ5ƮUf ֔,D9oS+[:hw?XPz5t. f#pLpK,,lst+фxĕ5 ppPDC !ձو7M,S[!q M3^RxiL=Pmw P_JĞ/@bƺo$`} |$p,H1B{{n *ϑ xҭX;QβC3Ny5m<$';*½ꐇϤ#|iYX:J kkLU +23y4 ^Ձ ahx5aIIBHaЄNSbt=zp:d Ph.\7V.6vCr0k[5Nd/ͫ I֢9۪'2s~w \R|^WI9*?Z=Ȯ~ Wa<NT$'2 "`=,'nSڳ@F۹Xe$VQn%ftB-ZCF5~m Yyc_\[a~o\JѶVRL8]>myrS8tb 9H DcB)Z`F.5 {>&uI Bc'9?{W^uFK51 3dVm5D$Uch#r2{`PK tނ>7P+aO.&`TzonQ4Q6Af11mƟЙ3R3퍻hLS9ow_r Y}lz̢A+j<7YUeu(QQSQ]*T7CsCymY Gڴ8 p6ᩔR+KޚD`5H]gGؽXc"H]??; /[i?NwӊMFNdtLhE:FW+R;k[55Sb !Z?5/jUR m&džm=x(.O7cq+v4! vѻP^8i[f!FAz8n[v!q(NI5O[O´Ckd.T}TdtƯL[ ]կ*&ų% Ӵg=U_ӁLJY6]ɉoJNFckkf' V&s1[-cd $0JG} -X)۶f"4[;f?1#瀍WH:XS,nX@&o4 xWu5{w_\mL#}8kw0(~h%l]ndbseM gS>lrxXK(T4^}뢰@^Xɛhhoi!5fSVJDDr uY:ri7 ]Bɏ,"`jx_ 4%Z:3ٲy_Rh>v~P?m5^r\v'Uwq86Xɥ g~|O[5Wb/̲ ʂns+>53q ⁅'`6T}.}=q"S.n4Ƥ4LbC;<{GbI^+;'Si mB[ Dgs3yǾٹsc$L7`TYi3*cmAnHͨh4o-ZS,"^ 9agc!lZ$c_GϴGy4_6/=bU%F'/b wA֚ ܌4]ڤ˟,d1T4~wsG /?e EŖ<]=RĚef"Bns('ςY <>*( mba`oJN~O`2vgF6ĆiCiO:\C7[ بᬓ `&U-;{LF: NPէ4v 2g}VdL-n mnS$1q ,Rz,x-(//%NFSM-kݙ^Dr:<icr7I`xca"p'̆Qr*I3y/Z"bf'묇P2f-y}2CugkUcY a|!B{g^ܪX"qNC*kjatC ԧX\_+FgoTS`>H按$jK|e5CIgBomPk_pϹQ* #nI}d,vof1R- idTl"¶{A/RH[KBi~l,ǥL8 iD)>wem,rS)E|bF<PdK8 m{\bgM* c?MF}SC[d -Ow]B!v㉇ZgN.ZIճ-lqLzLÂA<ψLh͓>pz t8csoxgqVONx6v}4(D1_a\L] e&AFP! &yJWƙP1ȶ!Yl.heL~ߩ*6H$lfNK<T=Ȥp}=zD|)Ym s쇕A"?gpz熴PL庎|[%CEMɘZ((L s3zg!3,c=H=5! L?,S {e,tS;5ߟɑ 8Bj $L ܷMm┉2 }K Nt7 %\;z8~ 7~?]roxP߲Me[8ud|HMh?p{0ۺU:$0mNK9[G0惠 wq*}xq MJnS ) ”J5IǫK%MgO9B̤^ QO>a(FRp*Zl`6ET3;#F ځ?G[45Mhp17Q̾ *pԙ#͋sa$dã{vU*g/ΚNO1D`ywsdΏ`'{KˢC&zEǽZB,0ybE(5ݯlƌ{&#ɛzH9oeƅz hO8_Ut@V4ZwcԹN-v  `x3@&tenQЙOjķ: wP`_I^ú?8GH`vעLkH##Y'& ȭ+68Ck:ul!eb cO}pm#UNc9оRB?:AjjpZ:q\mwb ɵn1^83 FSjXuj(&?jc0M#q&QLႥ p ƻ_(Cxbޮ,.fWX0䆮}) i:=c^q0u(! Bt;y'SE_V_j~ GKwxI?[R Ⱦaү}6@ $wL aԫg0Ӭ;TOaZ5r]J^R Sk<%|6Ur[omR~0(LC䂀?o=U^lTold~8eށ3 mp6и6apj!x?ֻD[WtɆq|坕rmۚY=,bHfNϚ b0Oe_qEAg^Ѷ; ,&;oAO }VZ῿ftc]2%Y˳K}YX|H)r5[3VmkAn`Vӽ H Nxmy\ T_}Oz4g+;6u]: 1l{dK<>&k"@} #8],{gM6?mUz>rrXvy&J8̼pzʂo[:`*ĺJZP1\3ܮq(F= H-V$6찮^E|޾&?~<ŋl۸UCһp(^ؼ FQ©-Alv2쪹Kg¤lo On<㏟fM!gL$jt2nJ]qyv""h0@.kXeAUjD?p̩0vPX'I$ԟ oG$ $\eh Xa>歵#:_X6om[Ѳ,e|qťxtc}Σ$R86m*g-S.WCQ"V7m B{S<=hV ^BpV뀜d!"H#h)(_p%^W? (Xbs!}p%Dnu3A'<2!O`/9RI',5,Ġb- x)}Jg!r`$Q/2 1ACGO9qVIaſގL_*"dz.;k}*J$5'~WR_BaauhAu|wkĀ,9#LBd bxNBF(+]I_&<.K67r"s;VWEAN*ȖX FF.rxd!qƷ*> 38ЯX{2OLaXtE,>5GSYfnz21a1iL|"99_G48߷DK~7؊^%»Y. F `:ʨ(sYb~rZJqe45|W6/A 1Ǭ ]"TwDԣx_;:IMHtl_Z7  0~S:+-ɗU\?;?Zj#tHu5sbMj@+>VV„Tf4 Kۖ-&+skl7eh=Ǖznc5"8:/Ah'[@b?-jрv9z+p0,A}fClփHAP;77?C؜`)Rv_Dا < -{URK8˩5mUY&Px̠_0_=Yjj%|*6IVu93#.ayxw7~*L(Hqj=ԕ_jOu{p0"֮*?;UKrHilWG.uC;MV 7?͞Dԫ=Po / ߎÝRagb!뜑\J?!ie/qi)n{H[l2Yw@rln:oײ2oô nM#"~﷑@oO23ğN>]VF)J.ುfs . TA3: `UpyՃG2b I]X,-ƿ˱_z\&cˑF#f-J5$g@n#duyN{~ nr^ V΀X[.sxb ԨO7l (%F04joc ڭIe=k̵䚘4?=*GӃ3/ yğH}a0>y|I00". 1rE>VR\ʑ>,'_ҚsW˪yɑ>zVq=r/2I^G~Q& 49s0j8?!CҜ獹(. ۶ޕ@Q pIլ@P6m?IG41@i"|J]^Au±5Nq1 Lt%䟐(:؜IIىV}; O~P" fSszdYtn%e9tǑfR209K5xJ*G?"'隉Q saRRHOC/+R-&DxżMvy렻HW쮸.*TV74ceIZ<:6!Ӹ½$gzt'pÁ3qr#@nNW !yuF7|O=H1#(`cyfh;Ę>Bm:$Lλ6LI h4zV7eH:8p4-B&*ޜ"KݤcXU1D /JeNxCC$S8E^"E~Y_ʊj%h jx1 Ͷ!)U@;czpVX…}8MɌ=oHu7QfcڿH#Lm?kA0.bm,C%m׽|[Z2T޼YC83E0Ns|13@8zGW:}Rk|:IE!f7=5M<~qa.:L7#|g Y8Lv&$*ٛ#eP]<pL;wÛz5̏._q`ETsؑѶp_!Xpԇmwm<\09ب6\k:.ywhom14yQmEV,J^ Jg8эtBx{ ^"X8a%Y9K"'("LYF[x&V@<űPX+m?6|Կ }7]M:\gm-, M6  ?uXMij8R}`*bBڂ)/>j gY هx"*εE/[ٕ _$nu \, pa" l: >e\Z7gVF<ߟ{M|ٱu[Tm+;Zx,nHF q{uwS 'o{픨cedwkQ?9-7dMH,'yk؋ӂuF|U ńضӟ%#Ǔ Us-亦6H)YZ݊)_:vnqw>c7e*UY[p_[yȔ %.Cg6C}\F{Qv7IW'!NKlQ-\$ci gS8E2KΓ#> Oy5MGVD5ˊ#J4l,]GΧN砥Þ=gy)7v_"MHcI/L&t$ Del8۫ #?H.^=H&SUY YÒi2VxX fy7a6聛?ޗpS̘T7}Rgz+Ӂ<5uC hk! DƮ5bV6=h 9L%~ƘĠi6#](zk>˪'<ꢢoEܹyhi):$!@eid_X Ԡw!DlV\r+i["]fI!$႞tszvk[׼֨/>7(CV[ZLVܚ%*^暈+;&@ }^qϣL&N 3f&DMo7۷j<qO]IE_I&S@*7SYdQʈslF[?!R΢@n=<5.DtKP;A!"Y dԸJ-P~d:G2s1iFq+VaEz6 Lp>ᕢ.WS p$cLK/܈miiϮ╃NlX6TWSswB) LM埇|F`_ =6}$Tn}83_RaSIU2*'OӠ] UT4bI4mqT(mGHfKV^<:my H_.jhNf~]UWA 5B# #r>ɐءxӠ9egPH1!r/֯FPt@Lj$-mlfP \[ 7A@A΢=g<_׾aʻr_񹯃wM9!XãqF""a( }͍==y8~NDAsvZcv^YPiF뎈 VhH1Mk;Y}Lo;ڈ@֚G|M=۰օP{npoA=Z!yߧEz7? +6V5zVTl(qFJȌ48/(ꪒUi&l:0 EV4iM(< lEbUـz5q6: Dz)! ɓOVd|sy@b9Xr{ikeFK;lFsї]6Ox?Uv]Is+T8±T> K-luɋ+͕ Lm@lŊ^. k<>9ӡj_|Ff@p)!>%"W{ULx5)f;U֤}[ZWo:-"tD +Wx|k9XU4M\w]=z}(B\[LBtޏi3kY_⤔wEd;Q(_ss\ٖGt00˞ Y 2*K#vGNʊe2CF=SǺZB6ZcAd\D{7RR,H>0qLYRw_laƦͨj0O߲fhj^򽥫mnQ  0"䝌N临C0bfzYFT15o*\lGF[-,J_{7rُ#e3n%bYm*Me:K5M# iF>,whn>vMȺMcH $I\زv 1kPem]M 9NTp;6N=O8KVB7& 尿;{[~*ih%T".D*KFcyt4ĸruwo_8 &QD#"@` zYAmIq̇hV*n ı'i<5=[ǥ[^CMo2@y&.HoTC ?Ssȃx({E0䭽{CQ8L pAg؈Qx^-v#Zhz#;%|S_&߱jAecSեL3(q`. j$_|q$/Ú̗$i7ݲcw i*:P\3V\H2CS< gW~/Zl d_*W\ jrx53rԏ8N><Kf |!Td:iʰ|1=;HhU$#5-``{fJ[-?SvBc#Ia+޸>N`p/}  5kr]}~+23Ѵ F-/B`'U!Iș$tUߘxfkjM}SE2ȋw,GVAM%RAؾ eZ]jL+L⠶{C$8qxRHnyXkQ:<ӎ(ΗINWm+a:e7z;lu]R- C͖tFXnwS8X !l)ZY`XV$u{.b7$h|QKPOWԢh =1`cNƱ;bș\Ccd86⼹rw5hx'rzMLMaȜn.IthvRM҂{J2i7;t ;lxmㅖpVZl=\]&畞z7(#\#Ӏ߼ө)R'2 1"aLiwIL.D(xK+/`[I$##_I'FVXm  H䆊A"Q&% Y(5E~9}؟>nӉki֨WJwȽPҾ1 B{]( ]FRh@B[HT-ܲo_6H@{byFbW=c~kֆ#GoTNB͎Hi*0Qr#Iom(hc_L񘒫* *DC?{Eׯ{+1 3،7i+J*Ѓl+ g̩sl4bJfaY*3XYz&/S-PįvZL^{&; T"0fu+l cr? i1 ͼ wt-%1h-WW44 ~ZSU>dS{ xĈ7 $!YnQr3<υ$MO}eU5T2[e0PfY!Glg=?Q(|2$R&qOjT}I'nHO̓SOLڭD(B} [0/hwz7wD/B(s<(KZG%j'jԒh.9a@KZ=i]]yTkm y+ C#em*譙߹e:j.`!\&v0rH ~z,oT.m * Dρ/xnt$LE묔%þp`$ش^>Vlmpr%%ŒHXƞ)n)`7e뤡.M63zC)̚'2t}j[i*THk&ejVxԓR_%^OU)!ߪRU~;Yn+ȲЖrm2qN!])D ȳ Ym HrNv/4ߨLFmc@2ֈRjq+ 9F b #r 6'>(~!>NI!L E[ k;8U' I9^w[}pĹ#&gPIwo_G@AT QWPǾZ1:27#*鼣=;.Ddv˚ךD[aĶ?;EL N4BLedB7wN8Fzn< O0ّu z;tFtXNXQWǶ87bv(;+:?<00L.Ӄwg{3CZcNvJi AĽw;&w locQa; $dԳ$!4_ Bs:ڑgy 3*wn8>#<.4 Bχ-ƭWTSpety#u;_VHݍjʐSkuuB7\56v d P@B83h="1sqrx,.Ghq:#P>`6j: 2_fB9-6kPoI2쌇WjZp]X[SP0ec p[a1v^ۀ|:^lGQ Y+2Nq9vI!8ďߩe5uw˖E.{٩- C(+ 0_'YA>z"jGV}-_W7resWyINS kFpg\"$-d }Ђ;`T4tuNԎa l}i|zf\v]K2McXz@C^كs;Ԥhj[[ T0 02M Yl\=웩~ dE\%bzB?Հ>#|`LE?=T\lmVp8a*8?VL_Yt¢cG :+~G}Qr/Ǯ{v,ף,Bɵէ(TTVWw=&ǵC:Orߤns^Ֆ"}ʘL/H|AOZ|r=l-yd#`FzF\ CjyaOkK||v9Gַj`ګOe{@meX(Rd$&Nr2ǩq-M T~Yh:xɚп[`w)a<ej 2?!i >S t1#Jz4ɘA T)=OdKs S{;TAĤ퇩3W{!K .뭋'T9nN̑aNhSTx>;TUAs ̤Dt" \7Gm y:R]%`N`R -%Aej52G_ho/s2,+_п/cb{` {-A)JRz;_Yp,n=t!+Cԓp~3+b+%? T(РsFԄ+ m<v{6Kr󃮫Y̠8b?1 A3Dx}xlYyDV buy[tFW!Q&gkU1o%uV y2t"m%5A=G?ёsBg ;}헎S]PTi6LX,pX67䷘+n{=?\._MQou}TLe\ق^ yi}աDsC+r-F_]ζ^f ߵ<@($Wa?mR =9qBr[*[N8Npia Mf%h[Ub^4`?X*}6J۪B6?ZaKݤjNCPu);l9I<hNs﷊)޺TQE`G)Nd U#Xʼ$s:t} N*tNOuU+1# MR?$#U/# rKNj(ӣkM܂PV.+N.9+v@eEVS:>qՠ&5nt§ S#CQk8U 2| m\ tSA%ԡ( %Ih_?åOl׈,o 39%]aŠ[u!p)hgkz}7 [:tHL?5pj ƥ/Ej+z}x4R7#ơ E*0a< c0>X9 c0hS%z0fP]biea@RH*^YG( 45G. =u(7 d rwnPNLZudnm ֓+g}=$ctXBቴb9*CoW|%ho>4~U+;M}8rECtge6{V%#,S4Y'4lLS"C$ߗC0Rӑ,XS69 xRl.7V$'9ZnK<=UʗQ>~ZT< 5P$hbmu{TJMNYUyqνh6]R1vv9&-XMIwVPH=>e?lau:`)-րK; V`Ss2Eap7;"^D;}Y7\tbИڊwEiC./q![R7ӆ*S|y>@#ڝç`I- :24Ģ=Wtˆሑ"޵YDbMؼwq^jTJ/>mFQ$tڵ[:^;w霛{PʃW~Bb/D,ZєW&n 3Wak@{ά-!rS00fPiHwiA$ٙ&ٗ6k #6O]%8ʆjcZ1 .l*d.~HnbLnwYܼRyO>&F'Ёm%JFpj}Y`d֕Β=byA$`nvr4X$PS{PANP ڑY)l7} ZClm4sqDIR!55minX [xsP*fЅψqlNuTg .풌 W;Ɛ6El&`BSxGk2l|qG*PKGC K'7竿I}oqksNQj{[+HPbd`PDy4A;͚l) &щA$+}ˈ3G EB@l/3/)Y[AY駃t.~^rQ}cvSIB@r a | c7ᡒ!?o kvShDShh\`RiF`%)1 , {x *>5Rg9Og0 w 0_뎐obd+:GDo$B$i&+am [[ߑUd߲X.}%f&:`Q]: rLa8)c-ƺ7fx- YGg9~:sq73" ϡ{,-?|j쬖0@r-琛ʼn&Mi/(Uf6"4'-%lNj26!`v&^*.GrǛȦ5M04L\蠨7]J|A i,y9 %3N넔"e|IB̉n`C$c(KƐu+߲o~xZ[;JpJ?(2Ԧ)`ŭ6M TгD LW"U*V#'Z򸝽}l|-Gz`Os-n߶]]3zg2zkeN4_3 `{wmoJ\B48DZP}0;Z6ǀdЪ;nE>dS6][1jbXn-_)£}W&'PJe~<Rp8R̔\Y5TL' ;e9m>(7J/>.ןRE)Ůrq=† yHH|f #9z.Um5>X̯%Xh vBu&]@2DO ׃aaEwv1}k&r+DB2¹:Na+K&+mxV 1Օ;.\o;0aA+M l.66(RKc<+ Z uĴ\Fz|yi<^$is#ev(:mLI`f}.-6K)1orjY=d9sżB;gm0ٳtRխ@=k,\R8rs΋Ʊ#'{>st L7X\Hy%>zCb(iS%*#e(ö8c\ KENǼpܕ\(pEWǘ;W!z-:'amb݁Nl l9Z!)1 {@Zʗ-z7r3I߬4tyHn#HzNt#gV7'$V a2l*[;[شHz-`Ӿ]J#If( d?Am&餷qu#}a7q4o4O}֞~SH'c:w4iRHa2c8)JF ݽ# m q Ι=nb '(`΢tPيk͋%0zU˶Z6m48(yw!طGAעnkT _vy [ ӓ9S?qw rPZPWJE~s\Z: O=눏,jt )ȳ9Ϭ%ٻ(z P8&yy& U+ΡfqLTUQ#F7Xz#. tw`T+C>ɘ+64 EFD#5r I]8yY_{pN[r^XAiMލcp[+w:j ]F.Wu{t0cWE%Kɕ*w c U0367 Pi/MC}ĵ#ÍJ[7&>Y_ XY XW妤ҡqyz(6!]In$GfKt}} HoQ }$.Gk>Tҭ^ugZr2kB]5~։" )6*^ J!zƬ :>4è6|X>\p7]ZÀGѶYR%QDzz<@PC{ ^p̊41Vwؓ® >3(H'P_9oc 4ͮKJ #7r= XV2+A[<U)ͼzhSlϓMcx-_2MWI^6/:jzDzgeFszn̲#"οGʽcc+Ls|tf9  Iֆ++Q6J؎{k#Sq&f;uZ5H[ .;jƤqE, װjF2tƤR H gĊP&t*0_'\6dE (͎[P0װV1B! bcEMѺ))8bv7ro+pxLg" "6ͮP/ƙZx~)XmSP=~:qTru |Jj@g֚5Ġ(7yES- `ł9w*mxD;4r>.%H}V8J̋i[*\0ܕ3*ȸDj.[C!=!}Pȿ?o<Sx+- 2V;qL6>?17u1}Cyn<^N‹*.c;b>ƢwrvhlH} 3Ni?M,kDO xv[hŝ/qN1DDCUĒf)a O3íV|U 5 +Ƃ~Sl}j3  ]ljM`1ICQ?%HY뺶"*Lᅥ*궵E.5mo^D'F3$J L zEYfቒp{|u /rYu\69Ĵ!xZ[dn/Ek⪆;̋x6"U qWymτDɓ%xEùbqYR{߾fZ> f:U]ФtD|ٽ +pL*`{jȚ$K7bCE ;}  TVR/:sn-h'\o \6n3{>ܙlSZ$r&:4wn$ׂ(F?Cjgh x.g.Mrp1 L,*5BT4prN7Mj qg07~2W g-zhq_1c%ZL&:̲q˜u+ȤȖ4~r uΐbVQHS4Mn*HBJ7kdOI}?4VyAPъ3D@.\l~qPhFHFGGNA t%?.OfWÊ~! sL_B o8[qɟ\ nMjXǣ] G|opKGemzZ~Y-݀!w-D%/bYm820ސBHڨ{;4֡x'捌"6 KLtJFMԲ0t/3D$ | 4 }lՐ bIGGhOOڀ&j%'[i_\:%~Βt-m$cfU^~ O 7-a?iT[nB&2Cvclbŏlp-[QÑP`xe׷szB7Wj0d R"Yۭ. `>UϰՆ/5B;/2 ie/NgZ1&VInreޜq7$T%N Eds%oeV H4zs|CWr/^лIFA%Y8rr W+ @ù9tWђ}Gx=x4?7wF~ÏbK! W~pD8lB%3__1*XHneي,XZL,!7}Eb7Y܍@H\( G" IZSu`xEpy (3A mFOaD;D m0DSJ,XZDRZ oiQFM^fԾ5 ?πѼ9 )>OZ- K a:k%53 Љd./I`Q_88m )wZKVyڜxn&v/ˆ+tC2!,]SqP~S%>d9{&ZK*QƐ3M˗U0?pɈ¢*[ޥU^O庲2akV'74Q{q :vԈL8+(ha _T.%3 'CX֪"XGT?+(/2\s>I7$) [X>'ʹLo3z3# D5P27V05yaԸ"zچ1Un|zu,ID47@6k'?P1Q?"uЋ^d;0sgzT.R(v.N}4K'Ɋ"jmUBJPӅ%hB@n> kć f,c(^sʶWmNEC^uHJw \!QTw@9ȵ t12T%nv>yhƔ6Yg*'GrفFqK1O²R"a:7j/RI~01{VEd|btw9\ƿQH+d%Yuq"`r"f|nD㟎1J0dEQFHxw6cw1=reFbiՋϢ5ŴJ9Ɉ@{T T=r @SPso+H`AQ;ℐJIs{h 3vP32H A6ag*hc #d}zNbEp:b+(}qp7RG {,#1`I Z2y Nc@)%~fM;(Jگr=x|1aH#/ˮ`dnE\mM9:r8}j`? rFv\8G< "v I#OxIgyVwV523_d-0եT{Ң*)w׽M̡hA]IEY!?utX*Qu?Y`| [|tv2=#Z9XW'=&s,&VCVl]c'D+GLM@Oj" v H̉&ĶtiAzS77w#T Xpp~sB֑Z Jt5j1l ,[1E6vBQ-4Gπ$^f^e^ƑIr\`h":2#쬷jtiygOZcϔ@c}3QMXorhp嵒᪪wK#uk| ]<.ِxO~nvt)onoU ㏋%wPUv,7Z+|m2(p^ ,h}{EQ!繋ӂSysZj!#NrF#MBW,ˡBWf1%< ]7G ydc[`n"+iUa4Nc|!vIA.E6쬐˗p3vKd򭄌PvC|u؝[oXisP[QWM\$^UIvAsߕthQn5qMvo&]^jrӱ&oZ6) 1 iwIja;:Vho} 5@C1nj/QϞF'׺Pl3و0 ҎsԲVcl)0Qwc-JgrN(؆ 8KdWMg £+YANYO IީKrOA\mMX\#) Nryoi_udfɲ4~aLK>y~R y X9+Ǣw=`KӊW+GG=B/J4춹V5XOЁZ,P׵QBC,˙m8o,EO|R1?ni}w^/9D( ە~L%4a od>!~5vkv#7QCf5g)Oj+~7oxZd x"!s(, %VTd(LAQ7k"q$&Ďmpc^jDDOsۦYl8}szWPïY _9RQ!)k|dFӵNx8+Rl(d#%p,Uc!0K/S~PF 0=?fIϩBU ~5lS&}"Pye _crIs>c$>?g< qd P;pf뗑uعc(owZkzy3b/Ku/2-<*ee&U~0Yyz)JO0޽'9A zoXEQ-GoW2HC9 ,Nww-#﬇ Iw+$vP qk2#ov[b3)0Mc|a4Ń/oz#ocx 5f$SYQP9*1^Г55?>GYk̢8ݜ >_G &BD%R/fw%ŷrM`Zί̵8),{*$:Q" &`nC yPM`iV .3ǭ š2.k1m%0eZJ_ +>*Nm£! IXngڣx:{w:30+d`Yo\*c K<04N)7= 2PMb{;Q\23a#Ɔg~t)[M-c6(\:3E32/L%Qt}^ D$$GW@aZ:6]ppT%sm;Hc;{˸$}|/+X":OAtYy#hn><*wo&r1 Tio ɾpѿ{׽cd*P%XPؤ/B!BN/P2H0*fRGn3y7º%ig.K__Ջ,bÏQmK)hýv::򁮩j()e 7Cbn(4ЀK~!FIWY-zHP94XS5nJhl#?+Ws݅:ճCm`X5)sdcfyo}=B3=-uVF<$Izf}=l9M.7jQXX?eͭFHEM0yCh!Zo g#@ Vwij[CbgA-O}cg\RN.V.b3q2&j݋] =AB2((,CAC-;jW>NLT^!3/̡ZX(c1/\(2ڢ;Dߢ(! kK DK,jgٙ_@k( +L*D2 G}^EnNmj,|0zr>vpҮEiISn;Hz@as!*aP_%h)$X?] PtVRP{}@7 |C}&s`+u0NwOmg_b ؍ ZG@jlDcQ=Y eCmE*p lֳ/;J/x1;t{F6iWwjx΄eO>hڻ SG'A10zޒŜ9 z fG&ʼDPz4 9b>qTz *O?PB^S,.LF~Ե!d<!hv&@+[3 鈤Y H|oΊ4ْBQ̇C2_?B9G+E/D 1tYsvZɚ'Gb4wH5 PNhTU;~اM&3.jlp`;Q1Sg5=;}7"#?1Pbs%uj8Y^uVt{M?m8} : ǫM ^0\On_ٲ|rWgŤAvYǃ Tdfd3=ΉIY^.7ͻfP#Ny>s2pe=&W&Dg>RQmb|Ї=dNٔwY5l0O9wHd]DH*jz0;tQ#@m{)83p[V2Ƅ(R;|^ (R?I(NBqBZ:$l]_f u«zϣ]Ķsٽ̊=^(Zi@?MZ@'iVU2-Qǹ 3^"m%%ۍ[ފ"^>+Gfrz;7b#AAL!Bup5ʖ.ep=tLL:?Wb|$8tʆ?wK()ؼCo}LQ2XfxV+ ċ!%#zo5sQ}ʲDKr `N$g9ȳI~+gDἩ$42wψdW^P5isDx![d4HI7]Tqe``,kn"=C3?oa0NR摖7B0n:ؕL#S{\zZ0aFtB@WD:+ι-ⷫs TEdœ O!i4sܖ*{0 oRf,?a|0Ѭ[@'$ R EaaBo;RgH.ON.=wPXZj[4҄U{șI:";'0?(s p"@-hosB+QQ\'nr_A`]'g5f)ݩǁԵM:'֧1K=4:^n>f5W\EN52*P3< 1,5x8 sgqԙ`۟ giН6sIƊ$pK J%1 1ЕG&n/6YNK wwP!~z}A3i67Q۾pNBκYrIF9b6.*UȩNDT@Kc{!ZzInY[nSV_a.4|K.:wxAl_ NrֶxbfFoTh$GEJI~Xc➭g3QYip  56jF7O@+;%nK#yA+ ABo AbޞА\Sˡ@B&3ny!C;H W?_[5;$yi_X 5h3>++".vVL2!@ &٘2_@J34a>/"C/AЛpD0'tװ;{Bw4 Ix9?(jβ̭i'V7Vx_^+9ɖ=/2[xI_n/zCi2[ 9eLG:!i,7R:0; ]^*16 kA%₉$ etnqVe<̨Bw県맕*4*@%AЅx7`l#Ь>& 94,PbOώ[s vk~$(2_֑qqKY8ktTmUS^Њ:gr!mPL%_ۺ-ȸ-a9e*nB @՜#Z>OcѶ>oǴS8HnH8Ͳ,J moJbѓ=UjQ,AtEi "/y C3sH֮X.S.i,$nFDR~JC )_x8'uq ̝lKvz Ld`̓1_O`ˎH9P8^Ґ X*7(%D:&,.epz# 'dFMQޥ4n&^H@ji^L$LgEIDݢG|fKcp%&C%,Ϗ6k,mv> c H[M0Qk(;,ȸ]Ql}'*ǖJeYmlΨU#&XAzkhYI|*hytlѳ)(RI!Ԛ^ ռl:/.pߊq_E UXK~կyEo=w1DbEo3DnSpx#ISU4G9N,|/su ߤ]#ﺔ6l2+sp=&9؅cĈ=]WbK0tWvńA]d2Jm湘gɨ`e|TC֕^J{-9@VB@,*DUxE K 9)2.}:BϠm碮3*np yL4K8: -y?++;:ׇ+o(Sci9f7)D|v2uЇdXIc.x7~l2;o7^uQ4j2'`[{ <%wɭ5iEW jnv- f{yߜm;BF|j |тHJݢ3,<*p^]%.CȐq`@gyj«?x 1ٹMg]?wmFM]k!#cgȅ# ZOM2+XWWA# ;ޠFgwgzZ"2%\4YOc{k|:^2&nmS|)C@Gy<ŘqkO5FiUPEw)qA,n;T\6`^QwS>BzP|FlQY.S~EHJ4gdxs7kܭa8{4+F%ǁX% УGO%z:z =tz9u74ZmI {C#O/8Z8줪ZrQ"<ng&ۗ'@M+zo֤PpȊe*2 nUU5M>Ru$hBbTQ ȋ$;DvB:mRt[%kbk0%3*3LLpd%^^Oʼwm˦R(y2mhKLDK}:ÄhcDGdɸ; / UDӮ^e^'.> Ƥ+F5*0,l{\U&sVE,+7MRl8GK6M1^'лy& tds尴%_۲|2ҥR%IgOrGWDٔ'(l M" 0߱t֔.׉4TQ7݋X 4ZC[+ >xdHI^ttqSLapiI `<,B|9[ {PKH=g²`Ր܃/V:D_.p>h>>l He t?&[ҼІDŽի27λ/ٛfPBD*pfNY # &v842HMu`WV 4Dq=n]-I/x|9mZOajA dro;%]IO7q,B[nF ^*cZ37m\ɯcs!S4x|Pu4 ~?{qҴJ&{^ܑ]濂/e# @Q]kH?fs`scS@S=T/>gYfewRȘD`'Pm]Āe|Y3NEv.KQ'wգu؀@`!(T.@qEl'3So^3i-`WNwā^.!s㺻\^m`'p(z4kE54Cʂ d>1~ejw<\t/ʨʯ{z#W]=!8}j;<5x o=[#U mAC]3 Y:X#tC|}ZtA͜*)F,b5&EX'nFbzE_:D]ΧkiGF<\z:{ԉTB~ztFn&ZOOばYT,զW֑t= ؖ4YciJlvթz}i61^RCG|}Uua"kKIw v^@cX¯}}WxJ 7cDu[ޖy̹'eKWY!V s[8Vh)J4aHt:݄1Ϟ|b*Q53PZJ!Դ frG3lWp 6R4QXl s4AwJ\_{g7lh_">L,0A`Q +OB~<}É#% vw1N@bo~ NR;@̸i U n K?2#sY^U+p91޶({"_4ka?,8TfR,N<@ovFǪ3zKN~ʏk BnXe;l|/v1֛LB-}b .X5_{s.,wXuH氂^'H&AlodPp$8QBz])G |MpI%{Z%]1 ~ v4U']:x˼TMfƢjڭxxi06]4 S:"O$1ּE߲yNRVY$!r ()}kNtI:ږRQܡ:CaF`#ɒ5[MןD_VVDjz`B&\wв̯4Olm֨,js"Q;.Qӽ|6{P^C/+v n@9vITl Xm&œa )oD*7mPC$S _3i]8M*uv5+8{vßiK>XV@Jr'/uG_q?CKNjɾ[mJV4N-KRhUK++YWd0|9$'q'N)'izm2|IІj7b5]4 z o|_lFЖ(4%x~յ]7@O]Ϭ[!%#~j¾4wKVt1z{Q*ڗ-9]A-iաBt̼a#ĕ;+BB i؊șԕSemXКiZ9:v-wr9] ar0OD;t%V*"<(`z2Tq1Enݣ#wS^ P;m5tDDbM  9 0U:_$\D'MPҔ$Nh$~ Tz4ˡWC0f(I:,kj]@C(,n}B>) y%>(MYqri"lf.nP}.DT t%a8/xhUg9iJbȯS>I A`S?~߃@? #xbTP9cG%6ˑWIzci PJ9Tgudɒ!H2^ _{)gYֹk{OgKq@iu*;aB3􂘎&c*Zѷd54YU\ioZ[lQy&DdjI>l_{K@?[{i`RH(ڹwwQZ*yL(<+JҊ2i&~ y6jf8 |}氄jt~`nqibmt*[VYcRN P*Pߦ6*Me=;1a/Ǣ-EA%wzܨ~#vP@T :'oOhUaj䉏c<)LHMtN*XnXg]B1/kדNݰ_ k;L ge'']c (Z4ҴqBh8ؕMm %sgקZa\2‟5 c,+"LE B5xI}>?(O>yLY|PNܴR\aK'&|s /H3hڸ t{¥vX9YǦH`F?p'o9&y]"+T\6:-9oK]+9WT^sVJ+(]A6<:uƺEĞM~%}CV^@l sp@'oL㙵]DT3 isn"@C0 GLaC ̢ېQsZQ!OB4-ke d\ʫ_J+GK~sECP8t/8Fϫ3΅V$PzюiPtIya"wS"+u t?6K9|;-(UVQx>72piTBu6Ћ{sԹcgp'o&l[D H#}%|Kt4[59:7Vk*?Z75m׆rD7qJ?^O5uѬ څ֡E%mC %4'>ԃ}$;(mBثW]ѕRޣV4v/ `, chӊϞJ)* -9iYesoD3bT2L9,w2eɔs}&@vo``Ju wXUyk:#=^M_T,=moꮈF9V+HT9GfC+t';Odj?+MPc`Z(ޞx)MA'cm0B$sh$][NPM"4ˀ_O/oBIx(y41ZT\I{QsF$ s>@`PH ?2UlQ7@58cj`~\w,`}u(BAˁ=28j_9P(;iAKDzPb;I3O8Fmۥ=HO NH>xDXoWYb`6{e!w+EzFxOwJRg֯0JۄswOoz1 4 ;BM~TVs>1m`a\iCPەč[Z[BƷ_xcbu\gW媀*pj9-4]KTY3g@@9#@_s .Aya V0̅o,wd)p bu\ē+;?mJ v`ea/16s$º7Ȝ(jd Eq +<hr bvS 7Zc]japAh)RB<|'rQH>X;%ɍ)<ƒFb645p ߋ-̶IF} k?4,͙MgCt{ijOAKȇ%`(7>jK:S~&"6ڟ( Yun쮍.dC9e5ݨl8Ѧ_(8`SӒA!bC "I}''qVz2縠K\$?T5GlTԜHJś AഞFvD`5ۓ/Nm"21 7wU&m7sj|ZJ=|/@|CF `fՔ=ZͯtYESi8' aa*$jκ:XbɈʑ^gnJ;Jc7|YE!k!lp<gqAGs AH|>Wh,87mn7LNA|@T06~" KS8>uG\*jM0?%+0EzQ:L[Aa+hth-0'חBjl(p6qEnxDq[ J'#Q+ln!0n #@_}Gn< d-P3rs6h|>6*ӊ- }@n{> J i2Q̗k`ZVWMiO]~$mc6D(F 8Oܬ>j, dqw ]|5zD^aT~R 0K#ANV% `jMyG߿2T dSh`1~Ém6@ rG,rxU]"@D2KNExy16rQE"]:gbT֧6 ySe2jm3mQh 7I4'q@ff27n RAu~۶PtҖMa; >z*JA4?a09AAu÷3<|YMXtL9d*H{.Satzy3R ˼G2װab_h0h#gkZjj%z| mm$0L6ho" A*b^S=Dm1(E rB"RmļX2K poki"=NX&MbC ʓ|DXaZdaK-=eaŸE˩-1ft;yD&Gm$v.xXoDgw%?5\G !y跋V H!/.c/ċQ"% ^ ?nEPw(J!)lB0=+Sz7SP}whW~NfH|Jex# yѬuW}jl#2!].hQa"ñOE^dK-ZDiK{ڕC:}ȫ+eI!7RXb{&jf7ZGH$œ і5)q1sc<g"(m(Nt83Ffʛʻ{Rk`o-kFV߼*-yNvcIb&26Q1eIb  P*ȧ䛴zz O~0&lhW#NI*$!_Y  J^ssoϽb\ϯca(m"Ʀ>> j*tLxA51F( ͽ`. Ih a>LF3$!-Z!B1( Zk^Gsl6char: Z@JL *B$$Ifٛ" e/V `lLSʿ7樄jX;C15HT/&˷v%?O/nkl7MjSʝcŊ*):Ge 2qM#݋ra/}G-e}D踵Q,-cvpQ]o)y;qCu~V#,nNG8Rk:!2)Жr}vG#] 6NF-n֋)`A+ .8U5hH%VPzvAҎߐ^)MCZkL `e qUЏCTeLx~Em(VZ/`o8!^I%_tP!¹3XuN.6Nձ˽ a_PJjS.)ok1V T w{ Ox|ᨒmn<Ru}7clo{;seIO ~`২|cEaivY"XHmCvB+gmt3UeENeFݪSxXtf>~'ӻ@_/>a2=oz<"~=``oXQTO-P=/V)^߫l<\H«}EQ%ҖmuV[C : j,2vgRsvehMoy06Ȏh\>uda[/zyE]!BP XN˜M?%PPiA,삼!&3Y=AzatGm>ر"(` yK=Hѧ]! KtJ#,Mg2ݠ͌b00U5 Wǟ6_E.4r_PNw6W:|`ofyfnD8-f-27w]Rw_2Ayի!*6)A'h=֨{{GH3h_,[]ftx7pTW֧˒Odwۛ1eB!ːa)/Tg/˥9h 5KڽՀt#<*CJ|ګC+iځs@ܾOXk=&Nj8 {b~ێ/Njܢwa)Z# l4GFoj!^\,`X/!mvcyY€BȔ>!>Bڰ DzޭLDфGoȆUDЊ\+^R'IgpjGeLa$mL$}4 .egH$)X%5sJk^b㨞 ĥZQiyEGjq4Rf.jsF.e[$Cyt׼Hv/`"]EW4X 6=ʕ͔ROTb[j&۝IVupF6-$V#5dަQ䍅FYsY=nϙK;_p_|n&/ VgAQaV/ˊݻ<BbZ:mrJYI#)lY{$ߋ^aL<ÊBj{vTJ1ן9_ ;}9u22'AY`wa)j8J]/ 7~jGj1 ko 7Gf@9Z<#! b*_A/"bqFdgsM2whҰܻ{[AO';J)UAV@ERn;H Tx[' 72;χއHJG3ܻFCJMiq|$GI^Cԥ}$VU K.UlunkߒvK&[5Zmދܐ9 Vrr4`9! %l>\TM).B;Y5izb۶ Ig5/.n?ȒVζ4|Zo;PQL L m֨IC)%I dy ҺIF)80M~gܜ;?٪wREZTD-702dĶQ>!I'L_}3Xc 55 ͣ&,rpQ\11OwJ=,pۉ@T1~,,~ly,$d,Iڀkx?Dr;$È6d-lq1jϽB{^lNgiaD= Kmecb*$/VF2ŹF v9CX~ç0&egn btg(0dzg[Vn;v#3J [o Y{kL0y+ oS>~=8O)iNC>Pfx߷zX|҄.频M^'qSW?a\ZZܚ`|S9C_ϕ` Ojnյ3,/}z |\\@BzAxkYzcZ)3c䀪p-"P9vԩKV_,{`F||ĈaaQV &cm1.2Ĵg²PXca^ j*dXMZAVc'6W8O䯱Dd_eԖ8+D-v)gzP+TtITqb'o8Z_Ӷ^Re twWj^d,it;0/?r(G;o2[č]+P2ӶwzcDmJ[֗ ]p7:L`Jʰ\&k,$`nRWԌUOb x &wvWsY2eKQe(YN`oiP|~I8% N V'!lԩ%(rH}%1¿ q0j*%:j 0K2d9lPp[\B$WNb=KLle:zjm-)U ЦS~IG |& H=w=F3U+~䝋F")8s"Ӱ E&<ףc Ow:[YhݳYPeG;s]ȉ~:gB<@gCFdiŤ I:r?Ցz[)ZGqǩ"Kx;IG5쉋?HG `84hI=dd, 2sօ 8=ZT/nU߻Ț2bGRǀ9@ɿqJ`8Ë+[0eZ݋m]X3傥2IS# <>RlBvMJ]YnvJÁʱ=2$?$%NDpiB[Tabn܀yliՍ9IƵk:V)`յHB0M&K(堃y(F+.݌? GzQ~._ܵţ ˈ|)BȈGK޵n9n {wKsrMxxmHTkM9O|%:'>kOF;DY>%dD/;d&7 H{ye1oẃ^KŻbb9BrIטHZC-GvZD-a`A1v#rOf ,: :(]Y.Wm\Ў,Ade|ہwN"؅4-ռ 0W/8òqTdP#^ڸV0<,™@Y2PAgPB{f5[ XS〛c<x [^ S?N`.ΌX=#>5S XtscԲXcV ao}%&Ræfdd{05vmI51,H7<>u%eT shH>)i51d!*3n>Ұ)u_Zfib(?Ė Kܱ`GĨR.1Ms-͝X(A W3vA7c=pS)Ǐ2J ,5;ocK$ v8UmRJ^;XlI7p1՞gf%.!Z9I&ը\1,$ "?w}p!KWV$~"%65_Z'h0r}M"?.WPb"Xkg]0:Ba˯:aV1»-#ދ[xe2!nS T:,>?V׏mOO̽J&iraD^Ŗ ݤ$0&[X2܍}u1PSV5- ۈɒE\Ѝ=Zoΐ'R)kU6pb[(8rV`oJ6"3R/հ \#jvA$  Z3^#^iE'ik }*.Im.OE|՘xy8f]+*ـ6<}urt踛Rk)l2eUฐO1RgNWa:JgI(j#DDL$DVo5mv͙/3_] lҶR{7F[V/z{`rmJŧ2S[rޟZPH4gK vс,44=+tr>olg% kXJ%T_Z?Mj x,ld3% w7zc`_M*NAQ0dl.Cki.TFE-rmyK7a;l  s>Yմ*8P]}J,ʧU!SqdbH з)L&4?޺}B1MrFZQdի9 ^z:6'8zșTH nҶ 8$ XtW+(8e ecyI"U;f*^(8 + ێ|^ۭ %A@2eOL'7g >l-J_ F%-@PeHx-ćGƑkB,5 ZbnpPxa# 93 e+ۈ"):F!4N4U(_ :fr94 ;sGeʭS%`:^oBveCryH]51 `V>gkPG$dŔƝN:C ]um5=G_τAKK<=w7  zh%$yJCf)nA3$΅\z+'*>%VsU䌲e3^ x~9u 3D QO e(hDLN\R(V;Tp4-[{PDF!ă1Q0a1TOt|Cw? izŞp-j9^@?R\ ~D:'w=Vx"4Cb!_ C&m+GoZ8LäWһQ5r*/UMFFDq! x0nY? 鬦)uOQHBZvi>:L $\3LjK &Prj3%$QHTbߐw;y1:S`01nKiBꄫɰp6(E$Ԥ0``0V5&`ZdxIKf1u p?gi S hUA8`Iә !:[6bFgHEg$,~HQnp?x T| ,)4 >TNP@HXgy+- Y}$2 ͋Kj#uFɫKԤPr=KO$6Utfb7^(`6*cn0Rgc?8~5 F @^0FTKvH@q=z@chV0Q?r%9[ @YO Sa17ÈeriWj(ۥK6/[ԜR7;:=2V^jbռb%U*Ő=[fD qg>TJ`PឱhRD,0LgS"MLXW| Vؕaڞ4~51?1@ơ`Fs,A=6|QJWZ31T&=__<`6E7=LSǹ2Մ.c/tb}eRlOni2loR҈וYd9{uѩ6.kԝ#`GHœE* \5R/WঋN}a&DAI&ڝB*m:g.(ATLCFLK0${Vv%YcfRsIpp=Ru[d\2F'X7CPifUǞDC ;Q+bU@(ZEpvcp;a˖ؓ\Bt@^t"F9k:%Pe"n喆+t * V eBIz6br;7R F@ěnެ_%,gu#m5B"\*+YV_PJFq:Yn-FJ"4G<D®7]h%hrD*R_o3V=]y[rqhseYhf,/ĩ hؑV]p. J~|΂@(V@AzםjHX$YrDO Pch)̣%JvƯy}` w%#A`fho|q*_$H|-ӾV|3@ijM`bF=2ih ݘsCF '>(f=uft_ē*=r z!< [h 3)ٱ =z0iL^4J[ZP\=I!"ofo2hYȔƏ&v< ϰIqaz{VSl#۾a(vylA.=Ԃ6%m xd#hIBl,5ς|}GFOEULkljAGKyb+kt>X4h{Og,fV<,3?ԗ(ʑyo>*g]A$kn|S o&8I/xnX=?$ǸB86<%!Cn5Jlȏ?b9%:4$z/ɝ_ BQZv#ʔnnA K&J-|7}Bo&sL/o^:7B]XNܝb `O;ȈRH  eܵ{Kw4j{=|3{c2怵!hѠPO$D;k=.2c3Jg=璉$RM$Ю`ק[>X m0[l~s>͋OݚDe JY(|$C˷O Q(JK Eoҥ ;|e~qֹ&ꓧkTaK4RS ~IBMtLۆc#`&*&l"bN;WJ:rl}{T^%q챻~[APq"{ir6GwKo7{mcQ%T5qtm\6w+@n2l1NjM}~<ҳ(G@*}E\*tY=xH:g97@T$T+@:v+EE?;DȦiaY"W9Or$.KU x%lixNObqcMYҌ8b9Z 0!\99Bʷ{r+5\a`K'umgc 佀9 {JavɓR7Le;”Ј'BA+5DB7K-}ՇeDDfO+ ]GGc]a;Aы\:'+eG6t(n#6lW *XhB' hJ]UN _hmQ>1:?_:D#ԉ{;ܻ[Ӓ 7ez%'֑&Ms8Hl#?9 LUr!LMK !ZIUu/v>\_ o+n8R ̋ 3L]Hׁ-kx ,Q_dfg PմLO"꠹:YyG=*rjE`-0j97˅!H`S*22iDfR%Ie96Y}Ja DnfpV g*%]=3,O\0ƒPHY!gi5nrꓙ4PZ Hе[Gt/ܲYԟu@rN=!$tpڝM2] e N3F]Ba ɨ>!p?н?Qc?=JB^ <5a.}Da˕m M`dYh#lF43H O^s1#6$c&?cVF% ևHSg'  HA3XSlC4.~P#c"X3)'`(9˝XFS ""mp >A^<hcU3y3* č+nubcGObbp[\FD kD\ 2Gaכ1:FH6`#~4Cۻ=^ q@w BO:搸aC&M\&E*A*WSxӥ%ؾuB MnZ`\Z^3zIve˨&kvVWnq&XtP!P@|ܑs儗M{޵ ŠCdOmbHȰJEQ8nJ :x;jjʋW]"k,2^ 1`;o_ *WP J1R>zɽq?rU -q@Em |Lk*g76pܣu 4`QwE-[y |^qdr[>ɧSXYˋ$n-[h為@Y 7Hr T C}!U?XWoo5yk{rr ~e=R_܄- ' 3Hy\(NE0kd(6mE)2J'PeuG=XۿRw-dO!MGDڦ|kF*LS@DVָ%.DklnKW(fj}lqQg+Ȉߠesaݩ=&T1Z Ls9`j}j3{qe1 W2iУS@\QVQzuÛ;h$IZ{ޡ?hI^JK&|^93a[Odj& IDdx10*K O讃k!i›&A+PG, XHZ[$=xyDŽ$lH ϔ>3 =ƒ<]ucyeZ-;67SU+5FĐXHp6j`t۔u:ȑ}̛wZXM xj2//.l}ɞT|Ѕf'46Tg9V|nE,_/?p-1 z]Ga<r7^W J5"!Vb^JS/-C Xl88J NZ/)Cm V`o9+%s} /z| ?x粍퇬= xh]iN[nʭcqzC/3^^ |RA[G5}V!;W0h$W(<*zSwRؿT+<,`},5=_TOPѱ_ٗ6j+ݠZ~h~+c]fTe9M6P/߀ϠB$iRHcba)J0^) Xe_>XG5`n LĎ2|=W(ٝ 3ahtiIX{Zbvo9cXG pٚ3GlPM;ft $^-^ XZة*)W^/aO|s7PӀFIGGv8dMqF"R*cUrɓmtYʲBcX57Er-TN[\φEr&EȐ ,|Gv!'ucRLf?( &|-eUIX=$_WU AٜP|\avVXf߆EÂ<!%)(_)=#N-jon:3ؕ˛b̰[Ht@hth_;S+Qє5OԤy;ݧb__w,&[陚6,h>ZI?m8C~l\+Ns1WRycXi+8M-ZҞ$n84>%`xG#P#Y;t\4 /.  AlNUڥ3 ]J<)ްe_2ZIaisS-x; Pbʷ51Օ'^0Yݕ{%: ѻX+1Fѯ )z6*;A=&/cϏв.2HƛP둤-U9 ,:sYҁ‡;\ YGyUD N]>MMV[r dSX .Nup3^Y\f7 $Tyް_87McUCsi^ 6{I7r `ƛV-rBM57:/{_4UrD {JN" ǥ0c6G]vL8ww4mcQNb60Qr2[:78S'BM{ؿ" ?.g\;_rv,C]Jx>Cly>k%t߼)>Wp#9M? R 7Q:7o}k N>6\AX$R;+dOJ+f;LJ&@ Vr/ٟEȾNޕ#XőSm mK Թ<}dJCUܴ -+/p;һ%rR:қ'[`BNùNy%a$yV!6H(eZ|S̰Mܖ:k7,ӵ|y{ɥ|Cw1cj q6~;}_Ɏ>P^g8{9cZ~$NOcD2$-}"N~MY]JvD0^*tӝi|I `srbf_[$HEzHo1'ii23O-Ū BLV1w S}V{QB "jTiPX{GDt4&T~DN8{-p6STޤd%1,/ަrQl_4'*uBR) W8ٙ!:5H+*Cbl{G5ra).h)O0 KօR}a(UZnh)P!o"tx3Eׂ¼SCu-M䈤摑b-QamkUDSBLe0Q]A]ֲy^ySm~4o+ kNA֓=ÙؕkK K,jds^ Se$ f5Pr+] :}Y?aFW)%'"/-%\f}q7WV,gH zq.<%Q3|"5xsP֋y$,Ze8.VW12h-?h\B:+}Ytk]~e G ~7O!ym8&p6ӅXmshlw8a(&O@]$sř0RfU?7I{i3 Bvm,!Lщd `=bBP 9:y A-#7]%Fsg- 4-5xikM$ )eY)ˉ~tiKa h[ pDysv8lc=g={QJH!m7^Aᨯ]Qq"Tfz=) !2=eb'6?K%/3ߢ1 p($*FuD'fлJz8|j$)_$ul-PKolq~&_?%<_ԉ0/%j5UQ IZI5p鮇,#Rw!dֶ>6} a vu.XV/3% < Y- G vq*M+v(N ue+u\#7 j 9wK09TS̀|gXvrp[]{@3 |" PA# FoFMh*۷ّ9 /.v4rvEZ@vhoGTr46P U%9=%q;SIĒ 1:G-*d *6XonG*=|KvЗBAO#VqBt4p\/`շH3KW kТ#jV񵯉H~kA^ax['r$ O ז4:}K^,)]J2yyW#@qWD8F=nO#OG^Ƕ3}rOOO!i{u BꎠMS;yͽ+M=^JOaD,YB ʪ5GgHJh%>'m&9)]8S'E Tu%LZux?n^X?%~҃2V(+0Niw`(&]5r?w4ANu!"mr,T^C>w6'-(fWwfc4* ktW> ϰ"-- 1t gq GI)Ũնʤ|eXMH. [g#tʣtJϗkz'`}Q O=Gx߃)r rԥ.O v{ -Ҩdrcy)Q:hTaW]lk Hp9&O")[BY6 Oɜ ׭ A\y@eZZ:u#\JmYkf]EfÊXܢx,ƊVni@r0)xBu)A\T,4MEGq8)Y*_4 5?`uvLIhXeH{IHɯ{-\Y@!U5aQl*FRqZZX-n%TJúH8 W j !jH 2k׫Q n "aД0(W 8I;Ҿ EA _1E]ԐKV .P͸ܹش7y#\/2y%2!AETkJƁV{}/oմ|rAW{}5V ` u4^PXw2 l(pŎfs6}CUN х^}878=mTp~"P3n72G5}!bݙK̥T7/$*D-3.Y/}eliꭓ^-Ax%_|p#|(Z SF">"&t՟|vlǔt*~-Ҁb^>(C,d"2,}N[DJF?@#2qZR}`.b=8?iJ]DB'&ϠO(-óf ,mH=gOs \M@!訐eyŶr(ȵW gQN zJZx(6X>$fCQ!]cz"T+)*UUk6(Wя,P:& (3:eD0gyɳܿ_{H]ܨ'.UdSӬI- ]%RijJ;Db, eg3OSSo'ڊOc.›%/:ݽyXp㞮ɓ5 !9$]]DW4qQAbke\IۘCҐcQ3+3!š<( iyAuFmbW2cl tu i;fþTDxm[%+"K7%C\I)mVo9b|ʐ9рc 'PbHuxJԆ{>zȕ=dQ9w/1% 1BYE+lVj zD[jFʁf+H2BvZkr9-Kݠofz?JKuADNV`CsXu|=P ֙*:3[lC\&&jc҈rE$ L[hI3uI0gK~>]#:G6,fA5ngz]}VZ!e(3糪Od*9A+a~|$(lw_#C$xnJbMtg̸|MI [/ZȽfM5 =`).[8gtwGSV^2#b@@O0_+LDb魨S\M2Pb>i*jpK^O봫rsHh?SzL>nb) r*Fkj(r F]kTYȐsK"[,EGo3@ʃc^‡kvؚ~p2£+~wWoѩ' ,~;o\Fq(gG"¬npB :;^ ƙ΁K*v@Yi@%S#jV,$ Rn&diWS:-㦫$X~N61ze1x:!}Styˤ W"Zkh6`vЬt }UBX0PH=3 =~Sjoxpy nߚ^j$,u ǽ]!?m-xx꒩\ZhM25.AfKoí_IJaĕ+4, ꉝz*dx3p7u7h@8  !GcȰw"vc%}(@&!/zYY7!qն0bUtrnA}7yEN 84b(>o1ݪjkv51He[wHobd 'T-f J]_pB 2Z ڭuO 43F#<8b9?*iu )xEţ‹QSz$E _ǐ@?2zO,^X0Xg0#"R.h? $>zH?,6dҀа6YH!q 8;;ݪ%A:8"[q/.ڿ66 =h'Y} Xl xmC"C߱OPF9uM(L2 g6|zavg_z*' @&[K/a~\Я֖WZ<И~we{Qo%G^bP.DX(r!Re[Ðb7P!ߠCfׇ_8V(qcQ!qz9ǬلDmK.Ȃ>9pz,vdebi{&,xIp+~U av⩈fиݬt% ǑUL N*I=سiԋT]D"ޠVઘGX"2 cF 4<~Ċqx%:7, „ߛ)gcPrEڲ;W^eexKF is9l&}^e~K$% 0y.V7sݬ.;ݙY- &>%1i1{0Y2epBp9ک`+0 ^<8@n0S.ig`;T2۱p)+u?F_I:q0H^ghH? 棑 _LҞ+z !lK(VHbLXà`]R0V+ Ma&ig; fQpuDBe6.|Wҋ_aݴ8s﹑ f Dzx $x!;HÏ=# *#g\=&Q 5;( -,Z*f+֌/1Ij~Cž!92r^Ac$ ҴoPUPɡۏe*©q 4(yǩu XPժiK%/_<>,U 7[GɀVzol"8} W( LWէarj!.N Ҍ) ] lSU' Jر[I~6m$QOiq^[ kH<ׄojJfϲ 09^bc](<=T.1rK{Zv;B JД]~yC.{Vq=C•[$BE*hv\ˇFi++P3}Utqvٞ_5"]hl_iA%S9 W|KhskQ N6݃ԦL+ C>} +kMXl4uf}|+o+~`^ܪSV"b90 3Ƈɪ*nՇD)rͯS'K`Nb3jy~ʦ$g(dH90]g=/`\D[µhc>h3+I(u0n9A4ě%S{BӀo+r^vHЕTBy˽zH'{x$$|1;gRi,a~`X'YճϼrO&,\jeZ@lNpsx ${DBc/͑n yԑcMBQmyjl"Y+;n \vS5vdes^p܆CG'۩fA ET^qG6;ȑo~7;I}# P1- Gt RĮH,H Uc g] |4bauQ.$7QC5jp<. ԧ.OqHe Kv0 9hC`"E^"^ݬ y,b ®)E[?ڱ2Oa2MեxPUnz62HV[uvΔc#2\niΪ3 r%lU z]^䏿%iݸSl5ģ lXs7\76@g8kTi%g[V'sG Җ.S؝/lR< ɒ0Rџ͵,ݬa9뫭/g\ '{"ًP۵A̭u9mG"cw[`<+X,?>Y-Vf lRb2 F/^fQ3CuSBLf_k嫽Jy,IcbMY{J Z!6dٰ*(Ɠ&znn蒘5čLJ6|+Ǧ[V_21騾j#KKpQl~?uA苣;_z>z BIRmX/WHW[*-G5 +Q;֝k(+eOX#b<Tǯ+sGK(ɌͣÎb&6A*uלBqcP2{| P2R/o2:=절 @vn+zP$tv-1\.2! LK `l-j0Etu6_zk`i\শ[r^֤D'ʁVJg21:I_fE@,>DdlK](.{n4Ԙ/GL^/-CїĮT8r/FϋPoo+h"H/p`:rϛN\fnh:Jޠ6;˳%%P?'yd]-+mq~ #rnvY Z 릑Im=huVg|{k+yRV&ԣĪB<&Rn4_mgqnL>7WF-t.\a'9XB5NQ#Z<<"iw,ZD#v+}-ָܲF ssf@ҳĴ$~ago$zns4䛲0MhkbwF,7k zΤӀʀ `'$N2C{Z|.4s7]^s[4wȰof]|FVV%nA}_xQdŜ5h6k][w>RetdcLjXHľv(*ZQJ h, í?iDGGwVcuRvK+(@p{Wwjb+ݧ Wೠ{zI7BT.")ŷ7,测K67kgR5s1䱭oۢg:?H@t <+OߓVzGbFa_]j`I|9ۡ^,:~oQ4(U7ufvy7UchtQ!;c#' BU~ۏMdclA-U*K;b)1>M /fطO*/fA47kw]6i!'Igy}FZu  A\r @m;Fve"?G ]Q [B¸fgY S\ hdƛX/%UGU*Ƀw\_.ZJvL))ePAMdQWKf=g3Rst"KPx6  3AH dVϊ@DvZWM<.J8sINMޮL ^qnT8_w1]1UC6(<p#0Z ==Mk~ 4wOalʀ*fxS-+ȣʖ58Trt(wʘ~' kGMgr18WV$NuOȝA{)GO^g>|s¿̞FZ#8mC@8qXݢ_:fj܆5yw($|G)p9rZ1^fI*=%U%aOݙj=vkD ҁiwp=7![F_)YE<1$, GA"NEx:w0ť P]7H!YP|Y?<^&y-Kwlk(ȲCoaڈ*֍c2MWlK PΥ'̤Zl($+̺ȡZ~ z1J7J7[9B i_оnDDyn_2#^t~#ݹv 5ǏO|'7Ĉ8m9L:loKJ㢅|'A+r+bxz__69B ˚6=ch\qwsoxX'=S*t.! G")=۝U^0.{I_}>G1zm1Oԗ} d[Vlm!\{=/&q]@0h9)2DlkG0p/dl 0xp.v#lɸ"@Ï;F<|1q?@h8sթ I?doZy~uolrX[>InV_M[w4Qj(¥.:,oιCZ/ІTiA'qe?֪3~8$Ρ6ig Lb+R B&{uEwO%6=ixg4_-ð}t@Fb>eLe4m~,SIiWd!T-Gֆ rqbFtU櫗v.ٮ.KKjg=8Hi,RX= 96od43ʠȊwsLjQpdG(s|{\]2>Jy6M }]W.Ƹ#6K#޺ɞMooъypEsC-F\Ju7vP 8vJZ<݊<̀Zy̤\$Gℋ&=NQ =g sqm9/t";!"+*oBbk&n|8)7~6aY@^IM#>&FeLtowԓ$y#h7E+9MmJ[a +8(wZNbϛ2R@;*yg ZpK,MOSֱ2>Q^c$ du0EoJ7d* +_E<WySri&SڏW0 mO'Lia xn[r7SrɌSdncqFc\{$Zl^U'cp*R#NܯKUPWM/5QeT{H;IsNXe/à%_:۟5d?5$  s3 wj Ʈu{ͽS97lP^'d5c/dtKnqOj\Gg H (P'|;QbNS:  WlWՠ\Y3̺L^ <]-r"‰|Wz6ܴċ/.y*(.T`y@HTہՁ+kW˱tmuW̆|cLj4y-V'^zI0#ɮ8q&;)kQ!O|V sZsYvZpfnW TN,8fB|sS'_1:7q 1ӥIh <&u!`ttRG;6_Kv+ G,M)ke:/JorȈaRcb i }p >b HmN\oE()7~Q!c!J;v98I';WjղZf0h.l>7 nЫd)Ya ӫ?څ6]oAtM4>.Vok nui* mypbf8s8iʜ{a@Vo>N$_]P#VX, '[c m 4a 8dWsg(?n޶gaLgݩ<>UUGJ?2(ڋ?v-vIx\CǒD_H+47azMX2oMN)ϷT>1 5Fn`j%/qg$i"Đد@Rѹ~.s_<1+&-'gxsz3qGm ?d˒lS@FB>ݏVh`Lo,юDeL^@a5D%;2ۖ;W aBo4Y$?BpR+VE2)g<Po~#as—P^soetc9?=DL.'݈$e^0=uc+N|I@2Mxw O| FA~ܦrGI[$z'z<4ו1O2 쀮,ue1J߂FL8=dX~3D&) /?wfǘhG/B AZ>o"=I`F*m2I|9d *ah ZJ~Q.},HS;q^>M ps<8â]ez4_EsQSz[%}8 鹙UB~VNQ`O-E?>jE(JԭxhAd"}P M?d5NeN@<:~n7BMeXgfҗj<RJ9x& נ)&Qi]i8J| J`41qU`zU) JbsAu@ceTM+ŗAG:jFδQ\zzATfe1ޗ"\V:J v>cC?äSqGg>~3᛹*.+_U߫8LCﶣM#N11bVq)Lٹ~јm!T8ԷOk"\a"4@u' _f!TW|H (yʇuKc& %)9P?hzc⏎w1BA-|X=ٕe W١şvɬoޡqRB)Tfjl@ْYqs69~cp!8u 0\iW̵\NxӚ}`$?T^<zt\ىM,4vc9íռt q*Ոv~YVu#Է¯}2mRPS3\܁TV;d&}s-Bp jaF1 =7{,)LEbn?7R/ڈÐO>Q*}06~ROӿJuN˜ȵ?(4.@As̐6HtI(g45 &'s﮲{F?~aV{mށX&Cc>aߡ(GX8聀Z$aTyOR=x~PtIڊBZ+*n$cp~Q %"Wc"\V1;Ck:* .v\KrϘV3N/|_|:6DՃjn۶ᆐxZ" `H'S őiZ2>{氦uS~K]J>.zMzj̇Y e@E".w τ/\ej,x9beY^O +\!c=Iڸ͐Bf\_!\Lv TPe݀L Jnf5]McEKx'˲h=rdArp&\@=/N>LhUecI@3n]C뱲UQothc08UeKϕ;uȿl ~k5A 7&4T7չdb/Aߖg*z IT>SѶn%ZBw>Jݻn;4JDGerM9;hÈMR34OKL=.>]ET9FҵE\ccrmhvrq`d6IfňUw~kO EfקG91ϻ)e%NEcqӦ;*".Q[`ۯ40R"T`NEJ*gxN[!sUg'B(vN,|1x|.츱2`v5+1ÁC@ ,wo:Â`:PPSׅhp75q3h DۦGˮ?$nztWr#(ZtֶͩZ)'3I==BVGM{ȣ Qfx%0x2BmWƃƚAnlZ>R e21U8=$=lġ- =K1ל>V<2sXq \\%ŐOY,-dp%9t9e05-Ri3X F&|%62kE!:vt¡<\W$(@D2GҕHK\BǣnzpfpYkr/Ϝ22sQcHμ68W}"_/ ƇU6H('Ċn30Щފ ]^"؟og =Q1"0=_$@wW[|CsO..2,'bY"CI ي MB$FB9f[s[H#%06 Hi--VϦڙ/͋ u`Бl~C^m.)ģ8pD=8ʟOWpHVʝ$93l am8ii*YuR7j*0HtI|ƄtK^DpLi Eѹ2z5B_Q#z*Ѥ.r2;-ƙ"pB\ 5">BLӆ=b]xbCLO]_9%Q2CZk)h4[t̻u]vi-"χ%)z}bR3J&" #gÆ+(*olbn0IfN"]nN ﳘ6 fmߊl\bd;<4 i^ v-Nv#ek VKB/Uy dC$5֜+ rd@ZU1H2KxgSB E~ kī2 2mls9A! bd7ՓBN%n>ll蠘VKW)0_㨮ҮT>6; B*l9&KaF`l" P@8Ȇ}DҊo اCVOjȋpDP8zesY ;5iKGhY8q?~R'6!r-[FPH8/LDb<*?/!Eedx%f9-&O B\i;>id)m쩋7")ޣOv4bYtG0/粲k9=lZQ+TKrS hIʠ)~wh5*Dq(~uZ^(M%zDs-8$tIZߌ0k =q.bӾzs]Ȏ>(ᝤ/K##Wsozk^`-OUQd>B/p <.Eh-|A#dOp4 y"CC=17ɇksb䌫N 奖|^Ǣ 6~۫\ੲk *v3qcW5t)nwNRS7@ GovΩ%/yQ?7?>]Þd &?HR["JrWBExp{L;312*A\i6U<˛FP %Dg?JH6\z, ׹dJr]}s82 +DǷRR[=?O֬AA/.@y܄Hw PuÓG ]Qd؆gotSH L$8 Ϟxad1ߏUA`* 9:: vK< 1%L¿RK)+Xx(W!=Ng4O 1[ˀ5?cVYdˀ*̯TtkmŌЩ(T?6Jh8Tqz-JyL-m|`G%P|7ȹ!7t'Gu.tyKz):fxCH* .vnVH ngr+?6DGt.A uSטOcWf'źقRQkxG/&<4Uy*o[}`QX=(WJ>UF5"P[*I+ (a7Y}'p PB8*~߂K q>㫓,p%'qL\N"s& 1^_Y@ ê3@bH|_MEݥ FBp}lpRYx) 7LQCޒ o8 k#kh  ABF_:HD̘w->N7㏠-\WB?蝉vUX  !Q#'NHnEK`:좭V^', R24j -qqǸV/h[#poEW5\ P9/o1vWu*J04ڪ?MoEJԧ3f*l5yj˰DssL`Pz dΈU{%9(LR,0Tff|gCօhh~TJ?ٟl8֟`?H@B/uuP7ݞ1]p͡\$WnR*i` jA6d373˖wG`?\[2~YAF@*/Fع]y:\+ E3j Wub78݌a;!f< 5 `# ۤ*&E;/'#+C%^ NBQ(cg-Ub(I s!acTjUKR F~47K1Y۟=!_qwY2ҽ96g"tQu,@LTpTBǦ/2vL3,kӄ{7Ad56| Y%eRDZ ]nؘ=b^\P ` J01@qc-X^vvp=䑷 ĻӢٵ9t:I~t޲nA)yaB4x._˼)p7{(Z2iAx!>}-"1_剷p659ERK%-:amH]Y|wħ (%6q{eGOSc8ly)BXVL3$ =+$f"cq7]-=tgvcˉQYBHo_7s%&^؛?Ze%fi&Yxβ1R)@vU(7C/JC{ݬrjbwUњQ Wb8R[SNc xi ޮJ*sv9E;Ƨlq=Q!jwUY1l# .NLSwZ&pJQZB?\BwD>x\,t @pd*}lxb,!-yH!:0 GR%? VmYCmBay+jY. k 󣟔883%PZXjgvG;IxF }wʂoj4o[TƒaPO[‘$GZe%U8 ta~-o^n/[0K.5G({JzhXܡROAO+ŕZo^iTAlj':;Fm+]VpcDE9/)6ӾvЪN?gb.8ARGs*Fy nfPҽR-&5I ~J5ڢe}:A_;q,TΆuyz%c$m} ﹆$A4)`:!,ͱ*ʩ#.Bl%JLXO~Eʠ|Л]ݴdCjp0($ tB`JbZ&b܊AӦ t^Pfz#-Rr"cDŽug'hvنk<81I ?)R-yq!8Ad[X~M^/B(X`կe0}r;qe^\rP?jϵBw$J8\ &Ņyfw<5k4j6,0,_jlyZ,P~,D)뀛`zZ. zzȏyn}O6> 71xϯZKB 2B'T`~;=?d| $,Ctn׉K^7j/$F:[t s T@* NNحۦ_yCN0u xLq2, q|s^bAAYh$䆷uGbP:?]c~ѹè(S kËK*q~y1(A%|>jcűA~ƜXt8-ASR ^<"T>ql=n8>~.ug| HBqo Y./T|s&DC\'*8 uOOWvM# @zX& -u^9[@(\gL}L`%ŠHyɣDWMl;oj 3:+CnBROyc:)&P[`j {S^ad489QtGH/%h_΢4ZֽKt\sGϪKс@&&E4vȰ[bJU`-)̣"!FAHҴXGunpE~ĪȨ s+uhH9L/M(KD!LQޫ0C:QN#43^n;ÿax9/:2m ˼I+#zM7 UH|7v?ElⲈ z lc 0WY48$J ,Ze? ,x#yKKjn]YIw&B`дAXDa@8;+B{'YmŇr?xϳ.ˇx8K_ ܵΏܦlLb/*&ft܄9:ྸCfi 36cm"DZ9ʜ%D!vu8KM0Ҩ\k'ymU6C[}EslJwa=t~&X$Uf)=||V\3eZ7”T.x&]#)Fz4Sh!lrjKyE}v 6%6p6N潹 ZFj0߈>14Cm/>#QzpEoHs=QZjDJҩSV\c4 v)P!mѯG  Ƨ1iW_yCO?DmO`4쥿@K? T-c5%^>9?-^ZQSzkN 553c<iUcwj7n?vZ6mKo ,'-jm(Bd+ʖėADu}Hϻ&W%JTCw@u !]hUCV5U8΢7C8,J'DQ*Q=,}qP94[y+dzOl/Z=S*CI+q-5 SO88W):oy2L#Czm.%7^^&nvdt#lW5D"kWMRzpK[vxRJ^}T.ÜlA}Eȭ" J,Բ5ѵ6Jw_-nd,)j8 WTyDf3,#~މ\D"q/D&}B)cuNe_ie䪣.pt'`Bb4/^  (s݅+@}jT0 ~5'cwcmV6,,h`!Mtb=cz%xI#u?Ng\(:ᲕjčXe6%}WO(^=~Z=1| Xu" jG0~P`s;Ų~@,TAYb yCkeA2i`v,qЈ/`vLO:s^:ß` O+qaT*T'Czžd!`86n%﵂MjD5WqC&pE0 A5B`lME؁%L$Yȅ, ָq}TѢq)bRB ؏ǃ4XGn/ʽi*Cz_bV,S]#Y1,X6JC!)Ց="Ȱt?M-,l9xz:76~2zs˵hŋgt5 d ?ؽ$#NҠ䣾q]'~ 2b{Fu"Ķwn1(61'd{Thu Ӂ\q, :c{'J~I_.EL lU0}F6>4yR4DG~͸lZy%pgXG?8N4+CqpG& bS(rt!h5L %MۺDuCTH,YCC}@>L_iS0 89Yo^:vk+]r(ܜ| 2L Ȼ7ScC{-g5i>!g[,=7W"Rx?)! ̏u ?R}\&#tx-c$F4=е,eF<{닓7ؤ@\ʎ(dXV?}V>V4 \wf)[RV87OtBMaO~0"e 5Sú ܋0Bfw9e6~!/þwdotlwqjy79UA$^58uZ?rؓ`d}r6Hm~ N%q(̈́eB 4s 1DK)%1}Wb3ɢVL!ZNQ@ȸȉ rBUnSҙ^de>A$5t~;2' 6A ~؝5$Ed]/:h <֋"ed*6S& , 2ۋW1}ჽ, eS-OR;]QeF˟IӟHd^,gePac6`I|KmB!!$>]Z&XI/@WЖcIaz1IP9`QmQO|lwzH,J'(U4Ru~N0pXMT&(QOs6 TO遐.Z^=^jJA[N lهbV1I 8y,cXdZ `%\{bY ]XȊ&[kœb85t2CZlW|O,SY!GùQgڶHeUZȣ Yf@; ^Bb( ,/Ɗf‘a/kؖXC'sj.RrѮa ֔Kt[W74XŧYMm6dW>|G;+JE bJ;ȂH'sk%ni%j/Ys2O<ҋS&O wkU5fSenlںQdJW. [wj~c<fL3$"Gq)dOx<`kz\ [$lFUgYeZHjS3I'l`3%Չt)mayHoq}9c*3 J+59]Xf1vS7W^`? H)fCQkD}*#.[WV7u{}c )e1{9"`C eWxYgJ^u=%9M(snu2(JU |cLoX$**7ԊK!@~7P]j`Q+ r*<Dls}EȰ|`f)}2vZSAQAxi1֜ Pvj<\Oş8+[FBCAD_'0n(YEd“il.^g[7x)yLj6î!5(3G#e#7(b랤4L;Pȏzy=÷dbs}/b~_q.dC>1!C 2Z`iûZWò{k}# keiˁި6WS['KN XʒR8Xrw |X%(Dî^S}VN eBnhքT)Uy?>]OƑ0L,ޠ%#`to~Hlèk;bzrD-&>|{ܾbv2ZTGz]J,="u|zq&pɅ^in/)^f̱&M0E}KD%͠^':(OV@E:hG\3ppr-/W}Is= d2IInI W߹gA233CrH]fizzUU{y@*i;&M_YpђeA9R #iDUQa 5K (_/ukǔ+crU|E<(O>L̅]oN?xvOϬab +/`ik[J y攖G˧rf} t*iJ^p ;4tnQY}$#u<:R(6_<0c1"0[ߴh, Ӝ :Xcy{ݱ 7$l! 4kEKQ\+W0]W&Dɳ/녔0AdӁ3/Yww TXtV d. z9.N4Duٱ& (*MZVu$vU2Wx&-Ȋ<]͆.KeRzDL(L|qΈcM4ZBt`W;@I"!7|Ti`r*GdCmCV( Ca`;=w3(6ެ/56LR^Z[AR9زfzoYsfAfha!QX!A)_f=NL-"jٻ3Dd N)Q<VD`=sqVx2=Iڲ֕q#[m$x䶄?mhRv&1  1T9OYK(%_ԋԩ -Č }ơI;]?d|,?AaMnEZ W0Anaf _]?LUM""O ~l_ 'OTԘEA5V3S5J{^sձ*n-RܰajEQ=u:y+juzsD`IjS7YZA6t*aTonbYwHa^I bT:ZNf. ULK6OSPT{vn,JZG!3W'15̮c0CQ (RV͇jTFV@2 =d2 wHgJt-ݍm1md/|°a JGxؗiD9kךr4=yXm]=M |N>!},*xi! peʆ r(Yma혦UTRSriJ8~dW+Nl3OY 7S1Kl8uUA)-U\}ZHSI8 -ĺOYy;H3EqC$$zP|" Ihn3"62 !+6wf=_D4<^}$(fi%J)H3@ Z):lj[];IndG%GR6o_:Xn-=fKpL 3YnwPIxjTuF}qGDAI9 f/P "UBQ=c+(2R6[9lLו%RHs C÷j#LXIo:H ~|__4䚥B* S=|RtծlUrl&7pཞ#ٖh4N&Dv9}3;xSRM5Ab=< + C*uYg+9)ϛ`zgF .p6lxiW:p  %'tM[)t8G- '/ 6bN1jI 6Re/bƶWoZ#j 6Ey(CouSs,*LF;eF z w d? (M%0mU.4κmuc{`DV3P I˟^/"k%Wh qd$o$~M#a[9=&GBح3Qqgίm7p Л M$1\nۄ%G ~aSsx긝S'k߀Utwquo(JN7KY~cjgTW{ =Rw~T⅞U؄#)P}YE)(!7tI,H0}EQ GFOW[ByP87RU-beKY1{~ )61 i1pvS>UB])/۬wt UE9gyظ:ߋ+l3 rVCI8v/,č쯜+wFaBL%_sQeEힺ 2&6lM6v]FBi뉂yçXL'^7#tsްi ҎMⒻB3UsWgȟ[:AP4D^.Ȑ|S|e/uА8{ً}sqvVzzEε;!;~V5rv\5w%e7I,{o͛W:/A *?zKnQ?_: Yc+VMOOM36@hLFl5M_zhkȚ+S?Ue7IӴoB)1lO%#KG=DwvKЅ.b dW| ,}?%:~iGhDy6yY߯1Hv/9BT/x . G8xkl{=1Ph57;?EIܬǯʘvZͶQgeh >V(s%O"/kv˼ Ħu"Z+<1thW)mԉAo'<]JḒOU=ͼ@Tᑪ($t "=@!W1䦵;n5Г;&5;gN*x?TJɮ٫_:"蘈'u+?ŷX# e?I/Lmh${C8.w~%$=h67BF%z)ق8+oHRu8"d11PM6ylKIǣ:aJUvN<+t-=3;͈ Mt>N"k>ΚR:}osFC֝ na҈O]K;&h21f*+ĝp"4X'0v\i}dPG䦔JpZShBˋCjڦ!BEz0>T36Q!Q}.suy~BK#{GF0o,}Co.c鹯~`L= fڎıȪt1޻BXb:m&;!EK7;|(~fx~sx鰓XelCfKogLZ-̌ 1QEABg8lfXwGr[]20$pϊ^&%n;ZԚߥ?2"#{|}Y2X i\r‰fX0nwx &@斻FiQ(W]'iڔ*Y @ nQ*I*Ce8/C%Ǯ> +@߬KD:qt.= 9c> *asqC'|TECw#ҙ*Υla IKq*XgɃbEK  mzzqOnCQh2s /9'),4G?,T=t"7xm\[J낃We):5q*;5f8fԺ(c}W:Ci:Fi3[rKr RWv!Y_t Y&$)u1 +.d!kJ773R't)8]LW[{_ Ȭ̷›!^NjlfHh8Y;7?{ظraYzt+)TT }Z\2Ҟ}?UxSg/PDC2D懻l|&ܑn%hm쌩%']Q345JZkS{p2?F2!P ;NJ{#wf&PzЃl-vey:1xKq `/ VD¨{;WkwY5XQoud[5!Fb #)АA"R[}sh/ Hț{kj:e~GzR3CVwgۮ(e ɷX$Kz@)|buLĸcGGh73\lv=`dfEw+#^3*Em%l!awd-s|~y7Ŧ| p!D+wX \lr9}ۢ<^$c-rDvfqEL:'ၶ{ˁlxsjz kkeױ~<S$J o)VT 96YoZ Ki2d3]]^e/ئyvP*D$LOye14guW(!nC_j7z̩H6aIiY@m)v5Gѯ6u%:|O(95!I/fa@֖LkVyMeEB!obu1U,.J| vpcv m ̖`qR>T#N4q1L< N[*i;^5g尷 nݲ؊;5$vˉ" \fj)F[{ۯĵ W{{KfD~Qob- G2:N/x w֦% s^~`NXmz{Ѓm񵕂rS7,>om Nͳ:C<;Zq|ʝDYPbIxC3%՝U[gԤΜ@\DZAj#T> Thb^|%ZyyPK鶓M&̊/9Q%XD[Rulֆ3B a0 &qQRGƟZ@ @J*O$[hK'3. tvljk|Js3OMn;.(k-z[:V[UO4bR" YD+TKqjj"E .lN`kU=uoz7\h|Fo򦳔6"%_ E$`ޔ0j4{-@bg{^X*pp>Od1u9ֿ޿,NT2o\Sg/2@6t ש_Fi 3N 옌> =|HkCGH/ҡ%<"J+nɻ".>cT${$JrAM5j|n}]Hzhjt.hOB*.kZL wQU^::?0NO"zW~ټµM1\O3bY2?Mr}G`菉J<}lV,֭Q"YL7A *GuC}C_qp0!ǼKVcW #5XjNE*ѢŦ6;[SYV=ΔkjyAge@%AO lF[*ݰĉţl CiRт~6`Ŭvoge?.v &Ym^Z:b+o[t8h%˂hN^/XhIUP*Y}" `-PƮ7]|!]i:dChY!>D[F!KRNxx8t)jWY)CkT*[{m_~g :~*]wϤU}1hۋqc 6ҳaKѷ-#z(j]S${eס i=Wċ1U\PG dA)7Y=Фrz,M'[aq=Zr ϯ|Ue",p so~|J$Af@S7:)k,1;=}a$Ҭd/thj!Z;o4ݒ{bwIp異[}FM煆צl` \YQ?ߙ2SG2}oL xd a.\/ ۴s\@.j.CWxI$ݲ5c,ec7/e]ꁬq5XT[f% 5CJʛld`,Z/t BdJt5q`?Ǭ,+91D*.oh=ǁ2W#DzM S%R+~@':?~W*E(|_ "S,ͬrRxkCpB`:I!n vU|^-̖Ὺ! ZHK[4װ'Óۙuoa(uبp6̆+ Ӿ\I}Zh^0v"J@4yi%)/uafbҿyLPR%R cy쟉uBլsf)֒igҙJ8:%dtimWUG['rś>`r}L*8雫gph*o0EZzzAJU>ߥѱ(҆W }="y%ċԓ!4b.gށ)8 oLO fqP VUG ;.pRyˁYr[_0{?;El~kgu _7.Py*2+GK5jG/NCA"h;׎z8\Ŭw]l*$5z z&T] qAq^R$aRqj߆2;ڳlOV0 >:5b,(>g 2k oF-G'?I+CFﺑz ^DI:o1V~V?%En1":G1͆H##/e鉜>ӱeiK_C{Cʷۅ>䜑Yc$ɴ|u0^k^899nowAq$ 9.C3 a)/:uNCm-Cݿ20r"5>=g@~׮{zTsC>¨ , Sqփ#^N ^RϺ  #MQ6ΗGɎBy(`Z)t {a'|tZjC Jٽں__KespaOpmMPA]vIn,{88DJIh ;?'*cڥz[/\h bN%y9~HNͪ&<9|ȓ ;ўnNU=(T8#qZ4d`YRsyz [k˨~ SM L~]`i^מw>jX$+hIT_-.sD钹mDk!2MU曊#D %9lVzG7!?%:u#_9ŖƖԐAL34gmf&͆XV<`e.?n˥=y2l!S|iORJu΍gs] 1@va6E|:C4mh5}oC-~֌,$6AvP8l]PHTQWChս{%ΈƞpH,oy6wQҶ?RMz+hkCdaw-.Y(>*d8-7d! Ľ@M [ $qss - M:_ HLF}RRdU]hjteV`&-y Xc73[l0שKx>0ƽ1D3 ,$<(KǞT dtAYʡic%',*W51ނr}T-F>hnl`2%.$1^)-v6`h3Y@m䣻-_qw?2y%6& R9լpr.v_h]kNL5x6,LMl lw2[.yu+qk\ Vw>m+NB/A2E\0g47r ( Ǯjئ={w5GWV+IN);2|ꆘܩ 5d_D3r؁ޒyOۼ *r.iK&(~ &*}~#,p'x?v"wvvOTk5-o3-YEwyؑOO]]/#$L}@@+Vh# L9ݖilzX;"kXN~TI,@Sh3|?BY1#%i-k+abeYmӐ};ʤ"Is<ۋZ4V.!W'=P@(4jeu e0~c(3b8:PNI?430߁kڹ)sr|zܿ> ޼1a,{{w 6(gz Y6, g{ 5^|1ڞ"NQPd^1Q_q@ \Mܞ[*g&)%\,,Wt)syf'j"˂B}%.tU@5e_j9CLۜrvl%+.3'k+ )ܹbLUKEю.3,:GB3 kdlV#v6V\0p1A*ɧ6Q/Y:A14?*}UG-ƣC56wEnA-ؽ=&l{_63L,cX~Ѐ€א:SL9-d A~P *.x%=W6 .;㒼zui!iq1X FtR~zg)nqʕúNzNB_gP X/":w[ #a'#iUQ ڒZtcF~V4 da%h\B7Hi&&͂gwEO-+ՋU4K.2~^_nCkLyT>=if4/Iq`ġ5V5czO#C3~Z7]_A ,h>!S]j;6 ֬o5) #NG:"w# LHJ9'MF,Y!d.6uku&1zCN_?LR80&7o%\cF;qI1;ja"?ZzGݜ2e_Ʌ\164`̄z0DܮNwmmM?iY:5iӢaa#uzE³F*W52X|cDezSg-#B:@N>;">Jch]D9CnCw6{c"BX#WØVxUIke'甇"+ku2WQ \d (F7S{䟜5ޤ1]8ѣc?)rpо5:[RĖ ;|*sl] k5B+e^Kt湁I\X s66qݲ\P"2aqDN'\[5[E 3ah*@RΔ8}chRŷE+gܸ &ޗ'F@]U\ذlV?x_8q0Sv2gL%XO1㙗^k~*Delv I{k[p Û_i bˏbFSPD۾͠V`9N8+[A^]YcrP{U#M/\?&##E *ր#:fztL~.ЄgO!/ɝO.dQ`z\{@ ; VmT"[0./BU Ml}Uu.A9}۞N1iߓq6r#hč2`1~ᵉY_ok_풁W=6[额L[#hjmeƅX?Bad9%䮳wiH[+XA!Fx)^Yñ4PgIŴBeTcC*zQ)rKfΦJF^{ԷOFvҎӆֲgUf8SᵮQÄIgv:i k &+Dcp|d[( հ* Zmh?)YlӀ| GQanlU6G٫_/dKʨhSOH>zR@Pkx1=^MJGPh#iRN)gܾS Dft7UϢ%  7PtMX#i]qGHW|`/#3!%02.%46_\*g4эfY}__F$jSgfWN5ϭ34.UODG`FXt}>·uv}djCѤ nZpл=aS.:pE{#P'\i6d1Ϫ0"==tnЈnZn=(a8Ns2PƓze#rTYE6]``˦TLx* A$=2`| uyxn#x6/0*g f,Ǻ& P2%zU3~#@Ja|=d%AVwax镶Ԯ',X3+(]:TMN^AN>'PhMk,GBPlsR,eLڃϷ c*ϝs^ob@u5 @TF1a>߄=Ӡ<1JOyz1*V)¸5 cJDgh&P~ <@pD-tk=j4[zgJs-~J@VߜHzo<J#D!åɩt;cã!J6g~*jl+Ӫ~0=E"Kd>~G6w:Z]xr곢P1J )E؏٭~4MO5@q0bEYbeR {'dKkڠ/`_@5\ =ÓwvaJ6ό-Wchpg8&(|g:YY-0 opy`vE Jɻ=0[,8NRR̟#SYOpjrq5/|L1FHt[) u㗂D0E~ h|[msfjs]|4,q2L"vp6?ҴocѢo-}g489ra\Zg /þ2:k+0'ѐ( +MoHJO;1jO9+BۄG]Ʋ`m=澎JbJUD90TJ"aT\aQy^7@TTcEmH[i)/60?GB55|* ٭nRNvƥ$n9Ÿc\xf7?(L[%4Mz\_y*$./oY|a}({¬|5 "iyiӤl+jYVRG_{YD !J4j"[)ꃮAVBzYU7Iݳ[&0Lk,";u8ڱg* kܤ[< KmFd*6<||b @}|erq30)pv3~[B1<̹-AEc򻁫pW&- ?` 3i-G/`vs*]qa)ڏENÄ_4BE#XZhi&}%x$[*m)lQ% tj = ){{L*?y['0=%zRyOcmGse#i OOf n-If8b, 2LdtX_M7GVU6&Z_ݑ=` XdyʥS)_SCD?a?^/*rO͗ILvqY;sÝA`.tU w\|@0-'£;UgHZ (E";Ŝa 8-^q1x_86H]]$~~J-`uPV`Asya&83VF W:]P3ғ M'?i^ M 7y>Z(Jbu@ <)8j_`e|/oGN9Y̛n(_HPg|U$ya‚SbIè<@^\X{É.";)*Nbi(J|WKx!ԖGKY! 9ޚku^c2g⬔ͫ 7 |b)A wu@œڣq ~148yG M2Y/:jSQ0ߏSle %L:q,=q8 2k9ti75Y߬PZPf8ShRьig`df7 ]ǹMcG.б !mJ?N^pK+ri3,͡h6j@_VYoJoTjyW)x2DYKR8;O"(B :T3|p\>z.ʋ(4?]%~GnjW(\3SU *׃]AфVuMNDr|mC2 #OO4gN%Y%՜S#g0~u+$".Jí̿tЀ ?i$WrWo(rYL -!s 8d)c3jtd}z#!ĩΒ G=2hXf3^Auʋ3h܆ ]`sb qz2fɂ0?95Ϧ8W,ssGvv4'ܨs`(ߣ EwkyjCDtSL.hm`HBiTtIf6bQ~ *]l;[.Kc .F3ʱJ#.:19=C¿/x3.?}ݓT$'x)*ǝaQJ|٠Ul dF dD2; ں3kyr%-WbD ;TYՕvnB@D8Kz3 s fr`qqlأ?AE^>¨ qIx\jH"'8P]3!4-@ٸ˚GUQ}K# J"2y&oQy4Pލ z^7ʃw`n:x.H_iySorM(.Mn~%nakRsĂt ;RV k:Ɖ෴."ƍ[R܀ZG602pu^DzyajTn QƇ+^ E|ury5I]|е10~KT;!ҹԲFlBOߘ7T'T3w/qU&G2;FY&!P`kU5=5^߀WBR٪~gv0ucFP6">wUq#؀7S]&l8G6EUC`!G3 JC\אH +d0űt}oF0^H+y 1aLKz+b8;o.Wڀvw*e~T~(ztL/`nɧ#E;  4H#)}Ը.Ńpgh ɮ#f Sp ~6 ]7NFIr>g}!Eig=K]wjS_ đk 5 9jFd>K9Fr&Jj":h'QH40s,wFr67eZ =Hx1#u)-r x1˔>SD{a Dwh>+>1n#':m̻הd2Jإh[4)_`SZXׅ&\ֺCL=F0Sl3qT"[΁44RHi{(",f~xH3)Ȉl1 ?\%j=.8\,Xinqʮl&yy*~ ^Wۥ_f*SC!({@O?'8fOIek^)Oؠ=VjfE UttsWT{vKL}W+/#gduhN#kZXUg[wh'nvc|Y@ %wԗ&odbqYh~?k` xMVGt0mBqŰڇ$>E&9n; } ̐vE2]^3\|yR͉;I !s-N#`xʼG\9twB+'NDOM {aS:[ n S?/nNjru XQT5̬H_;+<8gES?Է6z%7Y|HgkL0)!-8‘M76 H (J!뎑K&uGMZ,(Gi;+r{N0ɲ)d8*m+ZC5 !0U0!(eD3to\ɪQ~jKx2hjGˊM"/Xdɚ=EtHܕy HeAS7?}^>c#>eqJUA%7G#Dė(Ǖ`ޙW}c>Ď+Qd8(LYx c>uLԅI6Y)Z5Pi0Ż7o/yBE!~[;\u8bA lus!8nqLolK mZаml>86JIb#X\эvEYDRiz5l!+H6›HIFt# ^ ~$?6K2wȗm}Sȉqz gLSnfL7[ΔL#I(@$ dKzKA 2ar  Z&9?!l 9qc6ێY"LNN$}<)/j`Ρ-*J4gzRݸu{*g s'fu X#LaK+ѐ s;N!ϻ^&+y 1]!rm{DE&b O\_!f=CmT=ѩ|gf4Rv#`B;t0I?6#VJ,rK' 0pܸ Hcwox&H5ox]AI )#0[~CvL5ͪr;oG3/[#[sK5w{Ki6AETumzFSsΨRe{!PM/p5!p_Rc Pmx^i>Qߝ{.uj<Ϩ''x_ۙ*)\ (<dgZ d XL qNKXXh+-*H݂G㴓 }oTnNl?LUc:4x 1? z+b4D3d]rn~)ɶ;AH;;Vd}Ys]<*[jnJy "dϚ#(ꄉ?jv ]0,eNv:;@0v, $~VYŬIӉ䁈Iߐ0Ait<`<2?2[3,u3Nd ֹqhM"0q"'ʭ/ʡmnx2<0 SIƫfEC-yUt\":D5YRvWD| A#skgM~2@R6z PXPD8 lm_mH/H֒x 9 BD {C5atB$2d` q*s[0M OQ}QT֎ߜ/6>€!2:9A5U>$7n䒗+x }Og[iKTe| VujdbL^Omd"6~S& S8)1evF|>&:zsgn*etLy_׳ymfeϺ!W7F0i+dR͒dkbY5y+kΆ9 )ybn:_Sg>_/W3iu#͇F҅/@+ZdE9{5Ajgs,PVrڝA@2ު}tcw\CC;H6&}Xҽ#| FIR_`%ѡF__|e<&$hX:W{(^؆b\R{/FiV8H&#HlDGگ yng8MVA2 w&5Ӫ *eәQqU/܋U莓,azZl}ne|[vESN' /C-s˺XNŢh5w{t;ԟnrR :145İs[//88ZKsN|Z\`]P RMnKe㼠Wę,G`*!(=nA ӬJ$e^:gtxh`%kT P|kr6s|ly] Ne:'>\gcU:t胺J>0r`, G9-6te;+f8t#t2 [e7hCŅtk&`2#j`$izj諳{rN(bťXp{}-SKUtGlB!# ԥwl]ˆ# <9wMr<*f.wPrjslB%Q. Cx3LlTS58nk ]i+nED zЛd*ӿE$ް#̻_|Ĩ1:U3KVX#,!BbSYog1EFsoڌ)B=aD&,;&OEkm7|yT/ki-rA@[C2Қ1O=is*K 5U=#*JyQC9#ݿ͓SquC6'PIa`zr@#־DX&If)Z.רƒ|!w$?tλb%* D$ATƮW%ZWojSeqUrDϚ :1 *4k+dL 8X};PX$ #Cq6S W^w%<17B%u|9ytj2eH6oJcQ:eQٯԧ7g ̔ב чemӛz~'eZ Y~(g\yW .Oվ:@%z|(BxzLZDHRXahj}WlUVo4Nnmcwu Y5-{b3UY9%:~"5l)}3Ѫ;SL@"93qt߷|88^ ma|d~:|AQy2?ZǬR-3EK!s6.$pD7q$ +%ƟcKй9_x8(ݹv+*j;zeOzhIe0vU';jbV?_9op` n|~{v: -hq?x!3Ϡ]uK cWVU͝c]5Rx"6 ŴU~3kƤa:^ ;yC>Ho)x/VJd\!gCɛqsIx6KB@ތ6}^g.lv_sj?:*cVxjnN;G\cpzh w=>~1a]';AWNCuh`,Lz ^Uc+Z1qaN=GQ!rWDåymp;Ax(e mDᓛ՜%5KGfg9io݂x30r#ΠbUq5djjTgt޴־q֌,Lo69.r'eRQjbgF 7-;½vlhf.8@h%X/yQYvhsZ i,Bs%:i K. k',\XT=3i{nDLM[Ǚ'%y=> BFm1czҵx{hs+E}5̶]!|_Cxr0,U~4}pkvLi( n+Ka\t-;>0G%-Xι}Nݰma@obCFI}dqR9RM`B%Pߞ_\^G f~*ZAq!#`]!H}HE+o:7M J<^%RπmWjl珶[1z5O>^F J/#KN:LR|Z]N ^W$bɷ6x,|'Pq=эmm+k;'Ed&ܐ$]e0<rxa:|cHĪ̵ZbS!xPs7yvt m*$:ÑzpN'n8L$طH) ?u*W0rz&pp_R#iް tBe2 F 4h@H?8ͤ1OBԿ^&m>+\jFk}u啢Sӌ+n&0.(#n/YM)UBJ"rQU*\nٺX%ln`=s!@x0-`BlpG8"~ `֟Rݵz e6 <\̨DoUQ֤Ț8Xʬg0]Lj sW'pڎC5Bs'$ךde0l"„2d <^ֿ$B$Vv9Dԣ'N1|JVҥfj`` ,SSSnDg'-  Tx [Lgֵf[NXpJ5 Q2/|`Rq.b=M1/cR(Dck.~q`BN>`DujO_?uͳu\)$ vwRŋL/? mD5Do})WaښҫUY. L)4&em@֟2lx?)"}}=M[#LeV1w6yoY} nF@[!TE_G^b`;v$M75 zNy7} ;L~ī'_S#}0AF,np,'ZYha6N{-XN*{{Ҿrc;K/:ju1(ԎuQbcdf*U/ 4~ŞoG\ $vm夶f8Mo+p"\ Qah>G88a\5,FF ?p޶JWbt0.5KʢۇAefCu]Ԝ1/`c'}\} d*E3i3cFtsr9X5Xy2)ժ7UDV8C91G+ԻMCk`uc&4?:&3%-ZPh lo k1|Hm7*ZNl|wER1;Ʊgb11k]yC?,cms [-~V&hq"rsUӒ{ 2sl3"79㊀>ycR%D,Oy1 \2z{g%q׷)(ʅcEgC=KFQp":w"]3xyo)03iR52BK&)K^Ss8MzFdE% wFأqfK.~6l:\ *`5RH% Ib9<,"]32jXĽRɊ: V7L֏>! <:2RF-3e<^/6.GAţ)Q!XC͚(UtXX埯¡&fZk "Insu8;_3!+kH&@9*c]Q_ha J-' ?.I&bg{v^H0fT}rɺzņL7f%A}$̕ /J|+c ?.fՂh*X'J<5wX{l왞tJUͺ»ˆ.6xLۦ ń͵imΌAE{r$~0?+-oݍZ Ps9:{M9N.x ƾ@;qT4=LZDUfxSBD&ogfwOSE@3ka J@ 1~Ṑ='/jl^ [y5:ʅ)R{кoG?n܋\(L̺p?fOڏDQ<U8.yRa {;-Ce`QxsTj@=KR/xJ"D 25æR>1д1Nww>pǤǪ5s]P;(#C,!!\7;g9.چ-ɬ[T P0E7/1џ$k#ca#3.†VO&^jE&m^-9шE+ JFª‚,(;PtxQP ׈Ӛ0N!/+t!{ P}N]h-bH+ dPEr)J4ȶn]\ӻ='t`a"T1XF=q$ Sd$$ڲ6q /DXUyuץbjeΪڿ ׀:QSơ\'oaFiIbvT;BQ)p.Z aR$2M8B2=zTuT떝8U>Ơ-wb#}.XQm:m%J*Vrw"o'Πi+=D؟V%&ÀiV@7TH|r y p쭴ZVn!}ԧGNoLݷcU qGW|7k6|G@==Lᨑve/&2U=9ީL-Uהca'fZ2Z{V(2,dkq]!\˲LlLktX-2=|Ӿrv9A0|4sM>.c^prv^1ty 6$ܿA<ͺǕW$By ]1Ӯ&5X$~*vqI6#dzzUmosru*BݸR]]0Ue_lIqk[~2w$O+w~}̐0hĞTxUj\xFo`Ĩ\%?0~)Xژ֛e`7Ȭ'5S$]$:7gO x(G]`;` lT1'A qaP 1&o#bߦ^6%hG(A'ɉĢW{Sm %2ӷhZ$nvaoPmh"@eƫ5 ko)dʔrf*%@f?+3Ԁczxcc/CF~gL ص-E"3RS` de(B>@$;U"LV,ۦB( bW$Xvk8Xq[U9ct=Aw>3XSeYmQuL[0u-7T>Mz  1M ӤB{,I[mS1%+:q&`6<=ڵ}s.B^Z)uǮm X!7QG|ϻwg~vF9,Ib\Pи*( q\)N4Co^\fM?054G@fϧ0zCt9CťԞJ*G&AʞqADG,v3@:@NCt"ذ'=ZJ$Il nxãIDs'48pe[9p!S9We|ctIև߱i*R`bx ȘeE뗼#؇85oI ey"E &B^``V~u8nd',P,'J>')K{$E~#3pfӼN:, "EB~pX%Ъ"1-^1+߾u*S& )l}F 6?K>0!|pɝblc9FS<7/4Ky C\ҁ:wsҨ)D`][}:%xhѭz&_2T5 n6q,q;S=$=`"?o ߂ 2v;mz'TV?QU)=uZ4-{{PѡZt1|",em4r ַ e\./ѕHa.0phDFTL}ܚҊzä=- 4*AWJcě:$ճ%jf-oM!eDDcy/M[Ipm3ηE8.Gi*۷PC:1o\_ca?Ѱ njrھZwM==F,0C*FbL@Wl<{1~Qp)Sں"wL=*UѧLml P%LB@`T%mvhz "^2Ev' gIDv҂/ DlwF`p+gr1<_ݦBzǙ;A5d,KSi+:uU*R=s USJؕ}$p̶8˦y6BNM㶟Pr',ݎ9W䉚YҴ{`n@lm)Fq$6Dcd uyo}{8xJ9?v- 7(㆝Ӵ/oɎ5 =֠ u"Ў ǶfC4Hޏ#Bf){Z@ݳYGJbV'.>R퐲~^{b>9ڏđ8?Ɔ ? 0v8%3vcY(*:2O_)wھ7m1|I;Y :̎Tz٢Ұ (R`;RegkVٓ7 \ B;G3:fK_|ШԈ2mxڵ'd>ӑx 9Vg1ϓPVG?XP[bM/YRBFpINiK=68/,^|nsu WurȭΒjq@[|쫓X)Z-3O[lJ{e%Yn_eHTy;}/IL=Ĥէ`D)ۓUy2bEA+UMkI`Qj=BVjšh?(pL9Wi lBD54vxXtqLZ:W>%qFsQwC`=1p?sx è]{cM ŅR'bźb1"Ol}U#Dsks)\zbNȳ;>rak9>vG4].L6x*kn)5;;}5:Zb&[7 }ynp69%U55^77ܧ]URVv 7V*Mrq?C$5$>btFv8&dv^ޙH:IO5K4u y\{բNM܈&oNX|N+3t%P #a#5}%gϰPA5&萣o$BC. 06/VӱGr4[z|+hֽGz!KR8iԨ7rEʗ+~ȦUgq`: XLKQ{GV P?O./m(OAL{-X/]ӗE.4@>D4Ei K$`ǔ̲*.o՞;fI&3`cTUaR.lׯR,D/)\]1@;\IP)rjeJjme{#(lɳOH6>C޵q&!tLO >TV5Ѹ6Α67F ڀj2ݗ?yW.k `oS1vByaj J7*,TM~?Amug?}i͟<c1LTH.̤a T$K["MfV3ܹ~&dNw]ST(a@ ؋bNO,1\Xt:+.Q|7qeÏhA@`7 읇xߣ֪zm ~`*|!L(뻉 #'r*ǧ As:|xl][TŗW)5ٻ(GoO ߹s]EJ-dVTaW)JOS~ۛv32QB4&ƽwPgqahaJ::<,mqNލ+rn9SXL+.jK{T9X0m(QO@rFu˛(=waGSV͑~,rxW^K_z<_ni>jnAv[[HغQ89O OՍ#q3+f|K^^}G@=]f X?pJzmyzm;-}_5AVj9%;RZCǔL$ "pc*pIZCs̼k5w:ktyP-6Bg3NR/B[x3QSTsjDqZ9yяrPn7rכx4Ϯ`l8Y8¯I#`~PcZ A66tK/Gp qEzDr-VL=ˈeDȴlb_rWҠe_N`2Qv/zBEzSHiK.ټ(ȫ>xwؽ7@cҬձEϜc?.fIJ6p`W:p(bEaם1'~vq úژ7Tb9ȩp(uXϭzSymJ[4ZU Uvrco3e"' 72O0yWFB7G;47 yjprtTuʛnusPDjr|΢=;J< S)^zSy^]&D'Qĩa7]@!ro(7ZKWRD+qZ f4c c$΅m΄QUrŪg6}Нx}-]!^;'ǿy"5!"u18,Vl֏AV{K8bAHjK B_1$,;6Ŗr4$# }lmsQ0 ZU"jIGgF?/x:Lq[K&95>+~BN{07cs|g<L,҄=)px(1+kڜBʻt}њֶRNo yy6WJ#Cv68nj/hrgJeՅ@#:pÁ,V|;J.KDl^ #`"*'),R22(iBp>m1}=z'BRFNe%HߢU+ӦTBə;*@@m)e&lF>n"{RM+yBVskޝǹ%૷aY(G %+qQH1$ʴC'Ou^rc -v0hbTp#}#$Vp?<v\-4l:v27 @tտ4k ͫ]e>u+QM¨lW(~6T4,}S waDRhG /ZVܼ%QzG4`NdmgV!-5dcVf $ {XbV >e]PbOKƧr*TLMpȚ}y`prUHwr]|yM Q#Y]( bo"ۏZAeICc$F!GVv X0m8O!5S%=g32ц>*O*Y@dbpŀV<0R{zl7ZAlN :zK;<ۘQ[xįE] mY݉6ZCjw \B w}=gImALJ3 ]*ġ{^@߂::els}%̦> ]ݦ՚BܞWRMi<.&_3dAєd9Oƅ]tB5E "r熦_RQF:2Ydmљ8) {YiW!KpNO*TݶdmmwKSoV<9b)-lP Cb Q;l`5t +˓-ZzkёIX׊j0s_%M]gl} kfF9ʤ˴MSLx`|(KniذDQ8#%Z3|i\u'nbXF E|0DT1}ٻA&2"rqܲZ EH^V|GHP6^aϿ"@Qn7*qюs=B,fOm6ːGp,9wƷW+AVw^Az'לȐ()*pjۯRXSu;-$T*` lmc`DhFk+kKT 6ڬ0ALZn#K6kWe#v''k_v9ŜBj^Vٹ pgj#852w-wunRiwi ?P j(=1_ī/>3O\L>zD|>v̪N2c@f sR-l{i73̍7-_3Ցg%[(` m֥"Ztũ:GVά2f0Mʘ }yް$̗+'\͖ -KMѦdRيw<{o'v\a>6 047D޺ qW\9ǽ zY ~>>zuZXؖ#WaBm7BO~(abfw^>L(gRQ kj"0N)GR=>~jϰk1V L_ev3`RkIɦ~yt@ ǘ.rX9N v޽fvTBadsǀ1l m.IG`ޑw\RsV]cv+Yæ> 5=\A.&2Qg &I/#Jo]]qCBUNPg /= aO.f9e6yvyMhݞ}̊iC3~pUj>MmRcMv@R*cpU ҩM|LJ 3a";Ew;o !(ӟ!H8mQwiX +Q,ځW@:#{$vBr͚ % ]zƳ'FEa)NQ'ͭ`E?SHJL_鶾;ed췲?&]Ȣ-ji?F >qK[J5 sцcI:=Dp 1hp>1).,dC MW=tMX>p솫P [ SJ וHPGԇD%Ů#:WHnpZv1D.p_U7?o\uf&$iiL AH!.Sk4!why?$Y8/h٩Mx9YQ7ݸz qiP;9@LG#Vnb9~f >uxPuZF~f0w-^C5 W܁>дLX++^oIŲHGiWxZ[f}h:SU',mR =I~;6S: ?QPRa 7ģŘ4vn 'tqNHvsYe#0YcF;™WkȦW @6N#ti8  zR>XsH/(.tK GhDjlFX\y U1emmWD&E:Ɲӄ_ǻ^1f^KKT])$R̳яckGd+qo_T&ifٕ'jsls|g| KQ%sq1uQ[vyr3M&k]/`PZ׍J@i^HDԲiπS9tN)3ְhw *TNz|A[\@5i>±$/kOr>d4-k!ߏ?o<@<ٙWyKjK۾͸8ߌ5,aHHr*@v>[ĩy[s`^>vG,r6__λT ˄Qa}~:DcWB}ϻ ^䠆h*ʫ7sB~dHe4PC_Q=Znw`_D"סkCF\dmBkQ/ #(lE_V뵏9W ,bx܉!_AoI |C(˟΅vyBNJ>ivkHJ^j7_"E$%5) A ,F@T Cle'1y TH:-fS,07_[~:$jrV[ α==(jSkoOF aBYhQ&6Z=?T7uWpeet\;s˥('quiޏ0Hy3a+7ִ6ĈOrfp񹒉6zPdȑvRGBDak1 1֎f!&6~QHTzMVbVuVu)KKc _6 tF Uowbw/YkA5 3ˡ̬rҪlPV_@'o}?NpŮƴoQ\SUWd(ڀ{D4>ј g8pX7s,6C3 cbbI}X?r%]>>r r몎q㯽 QȵgMSD Ir@҄TX:uvbc wĂ.r)CYqMHz:1P Pbç{v7DURxpl_0UuZd฾CJd SOFKZ5i &#B2HhotkXjXW6R' E>hؔ.rρ>rGiTTw4,.ig!EJhKBi(6cM֑ 4GKҦi.!rF>^FB3XwLεKoE c) jS[-!P70i5Ua:KPk -TbV\]o O%#-ۼ/0Q zy }TV'X~dVvD4xW^d<^rL)B[[ J',228Q1$ÜGR"A:h KqX@?C J@I.GϑSRި-ԋBE*"1Q3U AYDI?% w>ۿtb A[+aۇ K&?觑@1fsXM$1ܖtW[ ͵ &d"Q1\9SJ 7rzAJFBcVA2>"]BA^ȭ`?c#f3)(H7CEEas\"+ dSǨL[GͶDfKKӾ"7V q"Ph댮̤Z=i K=wV+A3SRyN`) 3:t؏5T6@\0daƷ=Ȁ+-:gOHhW;4.|R>΄)9V.3-xf\@\ga2f]XlߩHOR.rdWsѸvBHG-Wc1%^YNѓN~z;;_ 8%-3Yم,L* ˶D EbotBet)sfM/-~ 1qVL5ccOFx_ن,G DRTpO`E,viDZx u*)=K 怃 ߾ ,R"cQCC0f $Ȭըc3:фߤYc-S= }0PkFW>3=nhR޷oOYXbi'`dK,P|w|d~ #A#\4yϮ/, bU2P;5}c.x ~FѤ>$܆׼IZ45& &:` }2ggr2=F+3,r9чeQ76 ~R BY<>nK5"4^xn'c0kflrEhG 3nvσ(b!9W2+cAJی`![d54 OLm*)~S%%%S]|\}vq+Ԃ=0 і6-kJµǫa7kvwX%,(ezA0I H) ǣw]\$a|RamVQ^.-߶#}9ȁq^Ts@W&eЅOԎvfP]&L<@dS{ĭ|a1%o5.5r鳽n/Up۸%11GA.ũSdÐ!=\:BSYɓ.C aRuO1p.4STν~q4K. q(;.`z?e&Qx?9s&皞I깣1GǢ0`E>Xv~,[Г"th"}VEu )).gB<|)sT$!S:ɹ9g +C$, dI%F?/@6TGL׏K~ cP(>3G,4oPcIO}nowCI<(ط47"/FPs!=/Zr̲, 0&RDDi,W={(t OT_"T9_ |=OX#UAoX] ҋt.27w脌TE>IJr`hwo:&,W$֐ DPkiX:ZFy!2x#rm"M3/ip=t&L|tz8b#/1D]':#W^K qkIQDTҟ& CnL*{($V*%5Pg^͸*N NX[8׵)cGFMD}MhE =a2 y"u1&6 RnF! 8u:i:nO ^<ǝ(q~+J roDfJG"(? _nLH|^f"DË@2^$;d!4.Ƀy^Qr<;c:owL&:Zclp2 !Lj,M$'_RiIR4W'Ƙg&@RSMKЃסWN/E=!;>4Q5 \Z f.NƤr4`G"HƼwh|w^J׌6==Su`xLbVzn~ڨ#5"4 Or~.e"B-eȴ6 aChG٫MlnFD) ᴞkV ;wbK~}¸~f\Κϒ%ӯVNaCAbqJq̴)7Jgٖ26#T?h7hq phUTSMTM$(=Pć0è9>hbʘIfmL+-0(KcEjqc{[]![uZLZ!kv)3 kipź3JUP~:֭IQa:6\.˭+ +4(+`jMU*ypmGۣhXoн(.Mt1-:yx-EGUOZ̬\-=gu]"m#>V`'y֍\3I⓭ ֫_ԧ\0 &)ַ60Hg+noWNt_Jf`,F^fv-)vOq8f*.C`&iXxpV, Qעm5Hur i`vůYumTSM/=U*D,PdF;y5KcJ6_)=hjṖ^@\э5) ,޽0Wxi78 $~# j9NeXőC0:1 I⸻}l5( Ҿ ܐĦJnՓޮjҶxlGH6K6dYMa3ygy8QNۣ8<:(E5"Mm>!yj23)j҂'s*G/O/ҬS:BXOaM>* z P(y5[NZ /+G^F"n ?۞+X??}Pim#0Ddyz+#M柞`l.E}nj ]ݞNn:~p{>I`thOZQK pr&4f×qɵ9W ۾5JR%㦥vrf'1>߂ߠvR9/ IFeA! Qebu: ?@#>OPfzEcӑv@+ #JuA+tehٙf58w2nv6**K(W6 22v]AHhtla饶!g;"{ N{MU!ee ߤ GDbŅim2V4B^0)S>~>G\ऩ!ɂxi7bH ,JBĊPvGA~CJ':YkJ’kTMfeϠb<ߝ\ З"W4zԲW*c$n+JY|s/h~HQM,ȿa56H&܀P_11Vvg[DdshySˆ$XmqfHCׄ윇JP-ŝ'Wl(V_B +l#C{NŲVx<./m?ְ/zp'6hTW̆)7E x^XLvgo܋-5a7,h)S;{ŰhF$k9ȸ߹_1["X`=?:shL-7`^u@}{'M,YFti8{ sjKFK>:-A)pz 3[8O3IWh}fh qXbucqżG8gP̀r-0<36}{VvS ȄG"Icp#D1O,r+bMX;G>'ͳ`z0!p/MiXE;@Y0Q c7JW,/Z؏Zvi7ݱa6o[81T<<8Ȱ6QEyduK&|Y ޳l$5]@"ho?{ɏj2u{)~|$_k+MTTJ 6]ȓ[|QȻϻudM 1hG>`?Eb8C%D"E{9@=m"F~rK°6v"aSi>@\s!`&L/XQV?%&>bߍ ;Q߻k f[蛦hx/egS3u1'%$OJhz>&ߖ d|@O8Jtsn7s~Ya/mĒ<(ӐϺgL0%ĊMA'upZ%$ XEqzjo'w^orBȰ5 6V>r_1d}f -v_[.ݐ7gIƛl7ʷb<{x9=PAs$CT|Ԃ@u~1#ieOHr3)YSNAq4*]ALtnM_1,!Tu"" iQBUЕj΄Tx ^LSG/3S/E9=ea VpTJmM?؝{JU@v24tE/yGE:~:$p)C~*W`o /S͎wPqa;FVi!w5;TơЈ{湱^)Dw78{~8L\ٹoL`6C$\Yfy`&R,oS1XΣT@O!vlPV*UB 6FY FJj3rm7-[y:tЙΐFhuR & /K1uz*hl1o4[ p4s2W:EmzN?{VҁdmK2yePG !Yl3̩Ǒ ^G=}'pNͶ5>Ѩ:@K~G0IqȉkL(36`K8d| TsES;}Pe?53\$5阊8)ܟzz[`\vz?Ncs]$Pvd@ɗLVD2)`/H k^PwM*X'y,a3'{kee@np]/nL~z?2In2:4\R^8q[5zJ nC p`pOҾd:`g-Eߎ-<iӼ]=VP88Ḿ'h FC4kXH+N4~~~rw~N>]o'c@=w]f5Ǖ&`K@Kpt{HZ#@oeRhcD뻇p`Y5Wa05dHj=RZԢ(I>=VhJg>CìGA{ˢ \U9z#ScJG]YNEۙ&L~YUql 2|1 Z#L\x^hM\Iwu-p B"?Fi Uˇv6&=}÷/Ac|4iR%2`a}@沓)>@B  G>&⃶*VCrMgZwCfҨBk6:O(`'sY;V1d}~d`!94^hnM)~,-AE]pu^, K% .Hzo!ۍg},_\q=mes:k#1duf M:rFtiKw庞*>Ô. *8?)㜇E`yQzttt R(I q%/$:+آsiwkhĆb"]^,EW1jVTMtn"ɳ)LY|tdViV7z{-Rڵ h5ޮ aneh9,MOV3FM3=N&f2}H-}8kq"+{=Ty,+U,{,:1՞^\z&{C5ɵ |+MeQ_71XMVܜI (5ԽAATBIΪ.9|I֝.׋Y.ŧ`+]FoB WQQ K Q"] Ck;O|6=0GSf QV.MF AP^33ĖƄ]x$WfuvLŨ5Km+F-gb4q'^!Q5Eة OmG4:;~Yw{}…@J:iLX*hhQ< zXݿY3]ou鳣R{vDY;A8Q>Po=>.Q K2fe4c. HyӰ E7 mt*(fݘ)n%k!Ԧ'HcLWDH)bN+7<)[6M`(l[vSSSY?|[8 4,B#GLxUAO R/І# po`lv* T%EL.r8sԪݷkW?1V ^dd(Ѯ ˪a5Dv^3BuMrwP-}]pQ,ŴQ'Cqe{M (5+HBtY 9cx2AxVA6iONvxHB D/AmXkM6)ԁ6(QdԺ쇁@ooza])>(#i7b돕>yG,>Jų3ՙ\Jc]3:X(0Z'@:n4ctLe[ ^i|E.k)kI=߲l,o=_VP5AfrVC Rzվ[)c|C4OYGF,\UGO?|OɢFms>+I Ǣm^d[dZxR1%63baVي&4[Z JPBj!iVtl~kjAX- C[KaZ"_;o @ 앞֚\Be޷@:Ld@)m1C NHЫ|>d 5{v,՜ eѹzS.R1[eObOQb,3ic >evo &^op8OGzĦXx7K(/ɳLA LtDŸk!Hr_W-^0yhπj}:7-OJ>;?@-޵ oz_\- O 8KT!?jKRpj[ .h˿Ua-rE\P|D $S@>0$O LgAfܹ"]]1~z }B=BZ⏚o3n!.X;;!+cwE$`6L u f'ReX/)EAS1I@Y]?yYmhAd=%o V8bYGsuY Bo!lѰ~_";Þ¿,wS 9N?b+ or2vgmxLƓHɃR)а8GIsN4,N)ȁ?( .:` HSB h[>ջWq "ڠ񶳧חJ#Umvlwz_#mC"`&>Hn`(") (*HT_dE1ׂQ/2OnLSM€ j`G&|K2;bl, `٦t>M .ď,dyvN1"#E9( ^<}-z SNե4=73A -MHٗbVM6ӮDMp9St^5(&F̝F0IfŢYl⽲bs[TԴY %9.dݖ< f %'g1#\(=]lrxKŢ?aק+C@ainhw=XIn&Ъg\&^Kc׊=)Zs9ߋ05aa6 pΠm 9`|6esKlsr-k8mn\xpr4 xܓܓҬ_>mD>637 Q~(*Iu'tt:R8hU7iCuwrE߸%&n/ bf_#ɡ:07FHNK=jC  Ym3 xs(vN ̻èqQ_ECGI`{xi:/izϔ~+_h\kIJҠe*]nɴ.52xU`&&E9u&sNs 'c<@ĢbHWm3G:B_N /J W uVj}6H 3wH]ǿUyOu*e1YiܚTk~J,8 1ؔ zIx[c=zT#S2\USaߎ '@ 0f;c?dM.;3<CzHjyf/wO+%?<5jGYv) ǃ3GLF__*v]i,cKWP=ڣЅQ{U]-ԖZZPYTëw!Z!ʶ/9t0mnQa_pqTIixݢ,6zD/D@j|HOXu%Mk>ePXc2K.1 ح7zFfa!oV?9a[!SC+)U]/1IU;iFZ%3BA{^ҶgKj~h @ ^ =kCyws6 RUKL6LI hY" À*p>w9Gr(%/|Շˁ֑LhEp nknpwpTxzB @^Oht*87Fp/ tH+`N:Å &ԍ(,Eϳ})>Cb$כ= J }p%\@1Xq<*<.h-Қ#ynqW+vzk8x?i3m(L=7_66-n!uyCVauc;֜bBu^m_:+@JjHNoቻ(Vޕ9Lս}\n5TJKX_6 kFŋMtFҕMZl<'fXNT8É+R' JrmǦď_7M̐<}07&rilbжoBxۑU[!"qӚ#N'&>iAF"AaՎ˃:9Gwhg鶋-. Y,H9, fݻ.XƄ \XݢF"\-m;~J q|[t E3ӚeBqL9`V[SsHq5a\ID?z[a&j ;rCPY0$qk "43K7Qn YlvSrNͧ&gӸ]vd.ՠ TN߭~D ;./K0iE,|N91Br7\- $FFEQG1\jo|yӁ[+*M~9 q߯gnGO$|uVFH&"%T2F`U幌EF"_40AaV9tia|_,Wsy&L4@n~,U"_woV&&c|vvB *t l,d$ /t7\Ahk }EsvJ=1k)6'SKB*ZCs>ZG*@N+ZJV낎WUJrطN1B(Gh˔iPrpjOx 8 Ķ l}Nu< pf|IƏecUIYeg Uf) SO  =XSטp[ߊ%.X*n>cX>$ɇ<݃)]XBXW;(~ݧ0djr:p}z:Fՠ˨ N'jXo\y {_LKְZݿF/ 0Y!z Qqo4sseJkAZu:2@1#i%05Ӟ7Qon.fS?7QRᎥs4=T%s/cE;u]71(Bc>N̓ta#I8;BMr{ΤQuTP{_rfSϣ)/R5nb})<xzXg}[I9 q/_7ǼP' f&?z]b}@- D(ӈ$xLn\eW\4a۲0f!c:ϭ`-=gBKG},Ԅ޾'"HO}_F9tñS-@!d -tk яx?0bMcK )Ϊ;QEBP$Aт@r?}?y2} -.54}jdzUXE6zjk6'baM`~<(~jl!oK;E~Vks0XJ&1Yӣ` &ǽ[<+jp81"9y𛐘TqgD~  2Ls{x{B_4"T̻8fm2%8O8=A8F30A V_(B(?y ӱ7,6#E6\[X3 Gbv3npߊae3nW5' G8Upb""+Vln/=&0M!DZjiN>o6yKͱ{g;zVدMiCQ&|/m[6 d-+X2l6 WO4!s8ߌdp_-[v@G%`i gq^|SbL,^ =Wv*_L}hOY XXCSx(`g1)vC;BE2 VpxO]9y@抨lu,ɖy+={5ߙDKυqG2Cp Veaf4QYę,BFW89{m0߂qm[)l;}y2\ E"*&VIUbI\Ad-VS,N^j:> RoۢI;JK~W۲)Q`Cl=ҋǀnZ\$ aL'Y4 K\@¬T(-\k۔lLM&K^ʓӌgͻ0O_-8)Y`aSGC#.9LM5>6K%ui[Uw{%N]#ĵY9Ox3pSfW6үH@꩖cM{H)p'n 'xЦ=tb#)(zz_*z 5{W/ֆSoiWceR9Tk=+׶IN$'VUbj!hP &=8Ν<훝m5ty ZI;V5b:Ivvulr4fxiIl@W[jFic!6P:o Sx1q@Fzf"lqsQ5`xySMd( A9`Dĉw߸H3#@bg)fI" u1|vC߆cSK)AR xѡAE0=*#ISH9p 6 o⚓wr{d!t-,N2iYp8mTLju˽4xFa-P¥<(oBfFM ]21>g͖Aܢ[ۉ''7x -a+@Sj6BO[qCOB9ϽiqV>(k:RqE e̫K1"#zcFrFI_ߙѻƍțPJpy۱gkq#r#ќЂFDpw\y/k5kiC ]\{NSJ5$wU;e H5U/7(œ&z5 JF;q;@1u%MwzEǿu:pc۶=^1wZ!"|S_ Pz烐~ġ?;vrWrcFuƁ뾤]]{{}Wc&B.zl咠™E[8g}NS[;.AՒ'DYn}U7y4bwSfvn ݁KY%sގQ;gMXoE  |'1vl)y.ghBGNvHR'Θ^)ʂ-Zt7B62⼗AihHU/4HdQBR2U !udkj%y:{iXG{=p tek]8,X~]sp)Ȭ]o9LJ `]xl _D3uIܹS㭓 nR+`Y8n~\~<\H+`,F>W ʪ'Vb帻WGă0t9;r/v׶.M+6Rぬ큂[UãFJe x܆1Q=/zW(LD8k y㈅첛xxKldaI`<7zaT5q K2YuH|slN 1g2ck\z6n./lɒ|;~)䎋 RܐA:":CimP5*s^]ŸTA>  [MaROLD#fL 20{t_iv\]M;I)W|?NS`Ϣ좖-׷IЊ_q@F='if< ZnQeYWk}\Q7'5gQ2o;SPxdoJ4@d{J]Vr-!| T ̿5C95hŪ7bq޻m"s#|w s8! dL>foǒI*f호G[BneGBP |H [֤Mf,HW X\0K 0mUq | /B $-Vk.bQÄg8d8H<<6a^/KBxb8JBt&$^ `^c̯pjxsn>&&u!J}.(W ?RI0U~Biv+A (O$)#qCY_WOY# 74#.1>D{N7U#bl6_9zwk:X ڱAI&^cCozijN9jOw;9̚Ż7i8|p$[LL7]v.NL;Z#_sx^|+P!إ{ Q_I%!]У{)Ķ t]3[$`\>uN;^kTP\Qڧ.|̢@dxZJ($jpW=P%T~ k-esqUvD>r)s(W U&c=;|qekDqsp;rR*q^Ld8_F.#FD1F{9f6(\S3,RܗAnsR-{G Z //{"rIoM1^]+{giaat}C\C"'Wsb)&IϠ {*Ӿӓ zl'}ɒg ]$n^J->4Wퟃ SMml8jEyfv$ՊwLPwH&cXR%Yq2JtP9HF`q_m AO 忷>)c݅14t&]{k~&.Tg-qFxmuRe Bb/̞+&(͉_Rҭ="F-J/Ԁ,QLlP CMlSIb0Mu0J}CLd7u&P^cUP80rSR5B]#BAEV])l jCgWKlG;D,0k̶[vZ,&]q1=~Bs\{EX- !H"nςŘKQU``zW-\*539YOl?΀\7Q=~>!rs3_ExgLtt 6eM PRXARqB. jYb$2([ nH?[1e$y/!u-Lrt(&kX }˓zrܞyK,lܑs>yF)`:UsX.+5$ bqsGn㑱k| my3&΋īj2iĊe CCzױ:P>oxyl~tTG4L;R<ي{v<*{f<*٬[Ⱦ%l`mEGC]<5Cně9'"k^PY ns!-㑃դQNi'[~/?tFf%i%39˝C'Wcೖ[hC G1]Ÿ츪5'h8ۙ;fb5٤_&!D88d:_&iIZ xcy*i U-X=ٸ bʗj/{b- E$/F4 |Z~WM'[a1OE&_NwȂ iҍ|@VS˝w4VUNEtِf5Uj9ŸT17;,Ү##F}IrKk:-wQJ$e#9M|tHD0|:`J"³rGvP!QYo9m8) 5W*@)|W SĀ_-z7wyqG%g+bG}hjL]??*Kݝ2EN9lf &jOPҡ).>f|Qp~vϕs?,2뿁W Y<Y-wߏyAÌy^!fǩ^$ш e,B0P.h,I#e2~BO-ʋT)7X%tٔySjpH?{e5@@L{5f‡'=nxR_xA59x#{4u&*ٲA[Ƒ-OP.K˅$w\Qkyn:ddU󡈃q :ɖ6S:wFBs_+zM뙱mZ`3~`_ƾ ivGQ3уPKcٙy R4Ɗ82W?ZDP3r[H5ⓟh_-͡ 5lcp"a6GO>_\'È0Ceɜy}Qv>pTJǪ~ *F>Ұ\?^](pyuYUM70|I?u*+eXS8-=1"uh[6H7xaxEz*w8w2Zh4QX>["`;e6iI#3^i! UXᾏn9hQstQ4pn`KT9 V|Uc"C$7Ăx1 iRFHRxPT!>͘!d4{U)ӀO,q+Ш .iOh]U ot^)xq(Cܾ0z|7#weqχĩrʜ<֌,^.߶<*A'qΡt4(ߟaYlpL޴)L901borEIe/硄SFwK Ҕ Ե2P 0[m"M[A1\m{S%҈SX~~gڳȔ]2sbj0ɚ9.C4i.0Ka9΂+]j^3Y>윽jvIϔ%O'K5oT0lw͂@9 U ix VN`|]un7Q@+CP36;(G A9FɅ8QnBXd |\4Jٸ~~v|#q?iq[ҏP0gV>|0jtc9Q_q?Jr*'q}y2G܃,u}KW=#sن7͋=p#Q;HzJ!>@pT1j$X.+%'5M#[*HjOP)=Г#UctHB><(K |h i;  C>c:FDY%,9`3\b##lɌ'}ad-9GE3E#<tv1A/:8:<"6e4&=Ry'<{8)6YdEyFg8xeшP?DԤi/k_/\\2P \^ՖDzюڑ+:ms#~u4>GJ o_i>/ V?v8iܞ!Ҧ?jt$/D^wϴ0c-FX!^WN}0y"Jʞ_(;iQG Չ:.Y櫩xa6mӏtYiƮ#uX#m"7!7"LBBn6 cW 3=D=WL)#&aqX+qsY%;cp@(?"k LBؽ5R="XTHi~£I? =n(oSmOViY羲gpfj#k;K:*t'm]T;{r1ЕP5#ZጠQCT+ΒL) PkEi`ywrV$-Y/dys4t % xAȷes#h}b[:Mپ ɽ_؁ha~x:/'yaN \#RrbD*.{X1i<mhGuMpN LʩK-~tKi=%|>gv!%ݯR^[>;oW8 TYɹ{]{g?<קq ]'u`;,% 9j]:RY&**"բ*7Ġ}j+.^znс |Fքe$g­ 9X>'WRǘn!ųj6,pkh#y;y R8.e 0 WD7|G?Kp EzcRYd6ҥ.UK !7wSvVm=aoE©>GN ЋG*q1+1-lb9SB9:$3C/τk]c,r QZftֻd"2#Ci#'DK.vuzWrK*2P(R#hzUy 6Gаej*l4ʻ*ɳV?CGgDt$u3_ƣU_yt f@3 ``Ґ pW $=rߖɟ04ǵN eHw`qi*i>`A(ByBV YHe,<6.%jP%sۢ6d(@P5&.lN!ӂ=ZF]W :_̼HP\]%]!q+ɕh{V $V as1ԢyQk5=jE RX,|^|Sw C7Xf/"Ff6YU7: @^)?i%EyґQ.cP$\>G {B}R(.K[HIjvDZ(-YʚVt2+nErjިyHEku q_N/ rjEʐ\W.1)!ZxWO5Dxa-,%W&ˮWqT::.$Jػ;31WIش`yada:'dI#P^~Kµ%7'